summaryrefslogtreecommitdiff
path: root/MLEB
diff options
context:
space:
mode:
authorAlex Legler <alex@a3li.li>2014-12-23 17:49:26 +0100
committerAlex Legler <alex@a3li.li>2014-12-23 17:49:26 +0100
commite352fff59842ca14fbfd81ee1c4a64297bb598c5 (patch)
tree153f268484aa5cc41cacf912bdce8c4847df222d /MLEB
downloadextensions-e352fff59842ca14fbfd81ee1c4a64297bb598c5.tar.gz
extensions-e352fff59842ca14fbfd81ee1c4a64297bb598c5.tar.bz2
extensions-e352fff59842ca14fbfd81ee1c4a64297bb598c5.zip
Add initial set of additional extensions
Diffstat (limited to 'MLEB')
-rw-r--r--MLEB/Babel/Babel.class.php534
-rw-r--r--MLEB/Babel/Babel.i18n.magic.php179
-rw-r--r--MLEB/Babel/Babel.i18n.php35
-rw-r--r--MLEB/Babel/Babel.php84
-rw-r--r--MLEB/Babel/BabelAutoCreate.class.php118
-rw-r--r--MLEB/Babel/BabelLanguageCodes.class.php89
-rw-r--r--MLEB/Babel/BabelStatic.class.php26
-rw-r--r--MLEB/Babel/COPYING347
-rw-r--r--MLEB/Babel/RELEASE-NOTES5
-rw-r--r--MLEB/Babel/codes.cdbbin0 -> 238136 bytes
-rw-r--r--MLEB/Babel/codes.txt7704
-rw-r--r--MLEB/Babel/composer.json27
-rw-r--r--MLEB/Babel/i18n/ace.json28
-rw-r--r--MLEB/Babel/i18n/aeb.json23
-rw-r--r--MLEB/Babel/i18n/af.json33
-rw-r--r--MLEB/Babel/i18n/aln.json28
-rw-r--r--MLEB/Babel/i18n/am.json8
-rw-r--r--MLEB/Babel/i18n/an.json30
-rw-r--r--MLEB/Babel/i18n/ang.json17
-rw-r--r--MLEB/Babel/i18n/anp.json29
-rw-r--r--MLEB/Babel/i18n/ar.json34
-rw-r--r--MLEB/Babel/i18n/arc.json25
-rw-r--r--MLEB/Babel/i18n/arn.json31
-rw-r--r--MLEB/Babel/i18n/aro.json13
-rw-r--r--MLEB/Babel/i18n/ary.json29
-rw-r--r--MLEB/Babel/i18n/arz.json31
-rw-r--r--MLEB/Babel/i18n/as.json34
-rw-r--r--MLEB/Babel/i18n/ast.json31
-rw-r--r--MLEB/Babel/i18n/avk.json31
-rw-r--r--MLEB/Babel/i18n/ay.json28
-rw-r--r--MLEB/Babel/i18n/az.json29
-rw-r--r--MLEB/Babel/i18n/azb.json32
-rw-r--r--MLEB/Babel/i18n/ba.json32
-rw-r--r--MLEB/Babel/i18n/bar.json31
-rw-r--r--MLEB/Babel/i18n/bbc-latn.json9
-rw-r--r--MLEB/Babel/i18n/bcc.json32
-rw-r--r--MLEB/Babel/i18n/bcl.json30
-rw-r--r--MLEB/Babel/i18n/be-tarask.json33
-rw-r--r--MLEB/Babel/i18n/be.json33
-rw-r--r--MLEB/Babel/i18n/bew.json30
-rw-r--r--MLEB/Babel/i18n/bg.json33
-rw-r--r--MLEB/Babel/i18n/bho.json8
-rw-r--r--MLEB/Babel/i18n/bjn.json32
-rw-r--r--MLEB/Babel/i18n/bn.json31
-rw-r--r--MLEB/Babel/i18n/bo.json25
-rw-r--r--MLEB/Babel/i18n/bpy.json30
-rw-r--r--MLEB/Babel/i18n/bqi.json18
-rw-r--r--MLEB/Babel/i18n/br.json31
-rw-r--r--MLEB/Babel/i18n/brh.json14
-rw-r--r--MLEB/Babel/i18n/bs.json31
-rw-r--r--MLEB/Babel/i18n/ca.json33
-rw-r--r--MLEB/Babel/i18n/cdo.json15
-rw-r--r--MLEB/Babel/i18n/ce.json21
-rw-r--r--MLEB/Babel/i18n/ckb.json33
-rw-r--r--MLEB/Babel/i18n/cps.json29
-rw-r--r--MLEB/Babel/i18n/crh-cyrl.json15
-rw-r--r--MLEB/Babel/i18n/crh-latn.json15
-rw-r--r--MLEB/Babel/i18n/crh.json14
-rw-r--r--MLEB/Babel/i18n/cs.json36
-rw-r--r--MLEB/Babel/i18n/csb.json31
-rw-r--r--MLEB/Babel/i18n/cu.json23
-rw-r--r--MLEB/Babel/i18n/cv.json25
-rw-r--r--MLEB/Babel/i18n/cy.json30
-rw-r--r--MLEB/Babel/i18n/da.json36
-rw-r--r--MLEB/Babel/i18n/de.json41
-rw-r--r--MLEB/Babel/i18n/diq.json36
-rw-r--r--MLEB/Babel/i18n/dsb.json30
-rw-r--r--MLEB/Babel/i18n/dtp.json30
-rw-r--r--MLEB/Babel/i18n/egl.json32
-rw-r--r--MLEB/Babel/i18n/el.json33
-rw-r--r--MLEB/Babel/i18n/eml.json32
-rw-r--r--MLEB/Babel/i18n/en-gb.json10
-rw-r--r--MLEB/Babel/i18n/en.json38
-rw-r--r--MLEB/Babel/i18n/eo.json33
-rw-r--r--MLEB/Babel/i18n/es.json36
-rw-r--r--MLEB/Babel/i18n/et.json31
-rw-r--r--MLEB/Babel/i18n/eu.json33
-rw-r--r--MLEB/Babel/i18n/fa.json37
-rw-r--r--MLEB/Babel/i18n/fi.json36
-rw-r--r--MLEB/Babel/i18n/fit.json8
-rw-r--r--MLEB/Babel/i18n/fo.json32
-rw-r--r--MLEB/Babel/i18n/fr.json40
-rw-r--r--MLEB/Babel/i18n/frp.json30
-rw-r--r--MLEB/Babel/i18n/frr.json32
-rw-r--r--MLEB/Babel/i18n/fur.json30
-rw-r--r--MLEB/Babel/i18n/fy.json30
-rw-r--r--MLEB/Babel/i18n/ga.json32
-rw-r--r--MLEB/Babel/i18n/gag.json12
-rw-r--r--MLEB/Babel/i18n/gan.json28
-rw-r--r--MLEB/Babel/i18n/gbz.json9
-rw-r--r--MLEB/Babel/i18n/gd.json36
-rw-r--r--MLEB/Babel/i18n/gl.json30
-rw-r--r--MLEB/Babel/i18n/gom-latn.json27
-rw-r--r--MLEB/Babel/i18n/got.json8
-rw-r--r--MLEB/Babel/i18n/grc.json30
-rw-r--r--MLEB/Babel/i18n/gsw.json31
-rw-r--r--MLEB/Babel/i18n/gu.json33
-rw-r--r--MLEB/Babel/i18n/guc.json23
-rw-r--r--MLEB/Babel/i18n/gv.json28
-rw-r--r--MLEB/Babel/i18n/haw.json31
-rw-r--r--MLEB/Babel/i18n/he.json36
-rw-r--r--MLEB/Babel/i18n/hi.json35
-rw-r--r--MLEB/Babel/i18n/hif-latn.json30
-rw-r--r--MLEB/Babel/i18n/hil.json29
-rw-r--r--MLEB/Babel/i18n/hr.json32
-rw-r--r--MLEB/Babel/i18n/hsb.json30
-rw-r--r--MLEB/Babel/i18n/ht.json25
-rw-r--r--MLEB/Babel/i18n/hu-formal.json22
-rw-r--r--MLEB/Babel/i18n/hu.json33
-rw-r--r--MLEB/Babel/i18n/hy.json30
-rw-r--r--MLEB/Babel/i18n/ia.json32
-rw-r--r--MLEB/Babel/i18n/id.json37
-rw-r--r--MLEB/Babel/i18n/ie.json31
-rw-r--r--MLEB/Babel/i18n/ig.json28
-rw-r--r--MLEB/Babel/i18n/ilo.json31
-rw-r--r--MLEB/Babel/i18n/inh.json8
-rw-r--r--MLEB/Babel/i18n/io.json13
-rw-r--r--MLEB/Babel/i18n/is.json30
-rw-r--r--MLEB/Babel/i18n/it.json38
-rw-r--r--MLEB/Babel/i18n/ja.json39
-rw-r--r--MLEB/Babel/i18n/jam.json28
-rw-r--r--MLEB/Babel/i18n/jbo.json9
-rw-r--r--MLEB/Babel/i18n/jv.json35
-rw-r--r--MLEB/Babel/i18n/ka.json37
-rw-r--r--MLEB/Babel/i18n/kaa.json13
-rw-r--r--MLEB/Babel/i18n/kbd-cyrl.json9
-rw-r--r--MLEB/Babel/i18n/kea.json30
-rw-r--r--MLEB/Babel/i18n/kg.json28
-rw-r--r--MLEB/Babel/i18n/khw.json23
-rw-r--r--MLEB/Babel/i18n/kiu.json31
-rw-r--r--MLEB/Babel/i18n/kk-cyrl.json25
-rw-r--r--MLEB/Babel/i18n/km.json32
-rw-r--r--MLEB/Babel/i18n/kn.json30
-rw-r--r--MLEB/Babel/i18n/ko.json33
-rw-r--r--MLEB/Babel/i18n/krc.json30
-rw-r--r--MLEB/Babel/i18n/ksh.json31
-rw-r--r--MLEB/Babel/i18n/ku-latn.json9
-rw-r--r--MLEB/Babel/i18n/kw.json33
-rw-r--r--MLEB/Babel/i18n/ky.json31
-rw-r--r--MLEB/Babel/i18n/la.json37
-rw-r--r--MLEB/Babel/i18n/lad.json33
-rw-r--r--MLEB/Babel/i18n/lb.json32
-rw-r--r--MLEB/Babel/i18n/lez.json31
-rw-r--r--MLEB/Babel/i18n/lfn.json19
-rw-r--r--MLEB/Babel/i18n/lg.json26
-rw-r--r--MLEB/Babel/i18n/li.json31
-rw-r--r--MLEB/Babel/i18n/lij.json15
-rw-r--r--MLEB/Babel/i18n/liv.json29
-rw-r--r--MLEB/Babel/i18n/lki.json30
-rw-r--r--MLEB/Babel/i18n/lld.json13
-rw-r--r--MLEB/Babel/i18n/lmo.json32
-rw-r--r--MLEB/Babel/i18n/ln.json20
-rw-r--r--MLEB/Babel/i18n/lo.json30
-rw-r--r--MLEB/Babel/i18n/lrc.json32
-rw-r--r--MLEB/Babel/i18n/lt.json35
-rw-r--r--MLEB/Babel/i18n/ltg.json26
-rw-r--r--MLEB/Babel/i18n/lus.json31
-rw-r--r--MLEB/Babel/i18n/luz.json23
-rw-r--r--MLEB/Babel/i18n/lv.json33
-rw-r--r--MLEB/Babel/i18n/lzh.json14
-rw-r--r--MLEB/Babel/i18n/lzz.json28
-rw-r--r--MLEB/Babel/i18n/mai.json31
-rw-r--r--MLEB/Babel/i18n/map-bms.json30
-rw-r--r--MLEB/Babel/i18n/mdf.json25
-rw-r--r--MLEB/Babel/i18n/mg.json30
-rw-r--r--MLEB/Babel/i18n/mhr.json30
-rw-r--r--MLEB/Babel/i18n/mi.json11
-rw-r--r--MLEB/Babel/i18n/min.json33
-rw-r--r--MLEB/Babel/i18n/mk.json34
-rw-r--r--MLEB/Babel/i18n/ml.json32
-rw-r--r--MLEB/Babel/i18n/mn.json30
-rw-r--r--MLEB/Babel/i18n/mnc.json24
-rw-r--r--MLEB/Babel/i18n/mo.json18
-rw-r--r--MLEB/Babel/i18n/mr.json35
-rw-r--r--MLEB/Babel/i18n/ms.json35
-rw-r--r--MLEB/Babel/i18n/mt.json30
-rw-r--r--MLEB/Babel/i18n/mwl.json28
-rw-r--r--MLEB/Babel/i18n/my.json28
-rw-r--r--MLEB/Babel/i18n/myv.json24
-rw-r--r--MLEB/Babel/i18n/nah.json33
-rw-r--r--MLEB/Babel/i18n/nan.json21
-rw-r--r--MLEB/Babel/i18n/nap.json30
-rw-r--r--MLEB/Babel/i18n/nb.json33
-rw-r--r--MLEB/Babel/i18n/nds-nl.json30
-rw-r--r--MLEB/Babel/i18n/nds.json31
-rw-r--r--MLEB/Babel/i18n/ne.json32
-rw-r--r--MLEB/Babel/i18n/new.json29
-rw-r--r--MLEB/Babel/i18n/nl-informal.json8
-rw-r--r--MLEB/Babel/i18n/nl.json36
-rw-r--r--MLEB/Babel/i18n/nn.json35
-rw-r--r--MLEB/Babel/i18n/nov.json12
-rw-r--r--MLEB/Babel/i18n/nrm.json15
-rw-r--r--MLEB/Babel/i18n/nso.json30
-rw-r--r--MLEB/Babel/i18n/nv.json19
-rw-r--r--MLEB/Babel/i18n/oc.json31
-rw-r--r--MLEB/Babel/i18n/or.json33
-rw-r--r--MLEB/Babel/i18n/os.json32
-rw-r--r--MLEB/Babel/i18n/pa.json34
-rw-r--r--MLEB/Babel/i18n/pap.json22
-rw-r--r--MLEB/Babel/i18n/pcd.json31
-rw-r--r--MLEB/Babel/i18n/pdc.json30
-rw-r--r--MLEB/Babel/i18n/pdt.json17
-rw-r--r--MLEB/Babel/i18n/pfl.json31
-rw-r--r--MLEB/Babel/i18n/pl.json32
-rw-r--r--MLEB/Babel/i18n/pms.json31
-rw-r--r--MLEB/Babel/i18n/pnb.json30
-rw-r--r--MLEB/Babel/i18n/pnt.json32
-rw-r--r--MLEB/Babel/i18n/prg.json23
-rw-r--r--MLEB/Babel/i18n/ps.json30
-rw-r--r--MLEB/Babel/i18n/pt-br.json33
-rw-r--r--MLEB/Babel/i18n/pt.json33
-rw-r--r--MLEB/Babel/i18n/qqq.json48
-rw-r--r--MLEB/Babel/i18n/qu.json30
-rw-r--r--MLEB/Babel/i18n/rgn.json29
-rw-r--r--MLEB/Babel/i18n/rm.json31
-rw-r--r--MLEB/Babel/i18n/ro.json33
-rw-r--r--MLEB/Babel/i18n/roa-tara.json31
-rw-r--r--MLEB/Babel/i18n/ru.json39
-rw-r--r--MLEB/Babel/i18n/rue.json31
-rw-r--r--MLEB/Babel/i18n/rw.json28
-rw-r--r--MLEB/Babel/i18n/sa.json31
-rw-r--r--MLEB/Babel/i18n/sah.json30
-rw-r--r--MLEB/Babel/i18n/sat.json14
-rw-r--r--MLEB/Babel/i18n/sc.json33
-rw-r--r--MLEB/Babel/i18n/scn.json33
-rw-r--r--MLEB/Babel/i18n/sco.json16
-rw-r--r--MLEB/Babel/i18n/sd.json10
-rw-r--r--MLEB/Babel/i18n/sdc.json28
-rw-r--r--MLEB/Babel/i18n/se.json13
-rw-r--r--MLEB/Babel/i18n/sg.json30
-rw-r--r--MLEB/Babel/i18n/sgs.json22
-rw-r--r--MLEB/Babel/i18n/sh.json31
-rw-r--r--MLEB/Babel/i18n/shi.json28
-rw-r--r--MLEB/Babel/i18n/si.json35
-rw-r--r--MLEB/Babel/i18n/sk.json33
-rw-r--r--MLEB/Babel/i18n/sl.json31
-rw-r--r--MLEB/Babel/i18n/sli.json29
-rw-r--r--MLEB/Babel/i18n/so.json13
-rw-r--r--MLEB/Babel/i18n/sq.json33
-rw-r--r--MLEB/Babel/i18n/sr-ec.json33
-rw-r--r--MLEB/Babel/i18n/sr-el.json33
-rw-r--r--MLEB/Babel/i18n/srn.json5
-rw-r--r--MLEB/Babel/i18n/stq.json31
-rw-r--r--MLEB/Babel/i18n/su.json31
-rw-r--r--MLEB/Babel/i18n/sv.json39
-rw-r--r--MLEB/Babel/i18n/sw.json30
-rw-r--r--MLEB/Babel/i18n/sxu.json20
-rw-r--r--MLEB/Babel/i18n/szl.json27
-rw-r--r--MLEB/Babel/i18n/ta.json35
-rw-r--r--MLEB/Babel/i18n/tcy.json26
-rw-r--r--MLEB/Babel/i18n/te.json32
-rw-r--r--MLEB/Babel/i18n/tet.json19
-rw-r--r--MLEB/Babel/i18n/tg-cyrl.json15
-rw-r--r--MLEB/Babel/i18n/tg-latn.json14
-rw-r--r--MLEB/Babel/i18n/th.json33
-rw-r--r--MLEB/Babel/i18n/tk.json28
-rw-r--r--MLEB/Babel/i18n/tl.json32
-rw-r--r--MLEB/Babel/i18n/tly.json32
-rw-r--r--MLEB/Babel/i18n/tokipona.json19
-rw-r--r--MLEB/Babel/i18n/tpi.json25
-rw-r--r--MLEB/Babel/i18n/tr.json35
-rw-r--r--MLEB/Babel/i18n/tru.json24
-rw-r--r--MLEB/Babel/i18n/ts.json30
-rw-r--r--MLEB/Babel/i18n/tt-cyrl.json24
-rw-r--r--MLEB/Babel/i18n/tt.json19
-rw-r--r--MLEB/Babel/i18n/ttt.json24
-rw-r--r--MLEB/Babel/i18n/tyv.json31
-rw-r--r--MLEB/Babel/i18n/udm.json10
-rw-r--r--MLEB/Babel/i18n/ug-arab.json31
-rw-r--r--MLEB/Babel/i18n/uk.json39
-rw-r--r--MLEB/Babel/i18n/ur.json34
-rw-r--r--MLEB/Babel/i18n/uz.json32
-rw-r--r--MLEB/Babel/i18n/vec.json31
-rw-r--r--MLEB/Babel/i18n/vep.json30
-rw-r--r--MLEB/Babel/i18n/vi.json31
-rw-r--r--MLEB/Babel/i18n/vls.json17
-rw-r--r--MLEB/Babel/i18n/vmf.json28
-rw-r--r--MLEB/Babel/i18n/vo.json31
-rw-r--r--MLEB/Babel/i18n/vot.json28
-rw-r--r--MLEB/Babel/i18n/vro.json24
-rw-r--r--MLEB/Babel/i18n/wa.json31
-rw-r--r--MLEB/Babel/i18n/war.json31
-rw-r--r--MLEB/Babel/i18n/wo.json25
-rw-r--r--MLEB/Babel/i18n/wuu.json28
-rw-r--r--MLEB/Babel/i18n/xal.json21
-rw-r--r--MLEB/Babel/i18n/xmf.json30
-rw-r--r--MLEB/Babel/i18n/yi.json31
-rw-r--r--MLEB/Babel/i18n/yo.json28
-rw-r--r--MLEB/Babel/i18n/yue.json31
-rw-r--r--MLEB/Babel/i18n/zea.json18
-rw-r--r--MLEB/Babel/i18n/zh-cn.json14
-rw-r--r--MLEB/Babel/i18n/zh-hans.json37
-rw-r--r--MLEB/Babel/i18n/zh-hant.json36
-rw-r--r--MLEB/Babel/i18n/zh-hk.json16
-rw-r--r--MLEB/Babel/i18n/zh-sg.json14
-rw-r--r--MLEB/Babel/i18n/zh-tw.json29
-rw-r--r--MLEB/Babel/i18n/zh.json8
-rw-r--r--MLEB/Babel/i18n/zu.json26
-rw-r--r--MLEB/Babel/names.cdbbin0 -> 285951 bytes
-rw-r--r--MLEB/Babel/resources/ext.babel.css158
-rw-r--r--MLEB/Babel/tab2txt.php33
-rw-r--r--MLEB/Babel/txt2cdb.php47
-rw-r--r--MLEB/CleanChanges/.idea/.name1
-rw-r--r--MLEB/CleanChanges/.idea/CleanChanges.iml9
-rw-r--r--MLEB/CleanChanges/.idea/encodings.xml5
-rw-r--r--MLEB/CleanChanges/.idea/misc.xml5
-rw-r--r--MLEB/CleanChanges/.idea/modules.xml9
-rw-r--r--MLEB/CleanChanges/.idea/scopes/scope_settings.xml5
-rw-r--r--MLEB/CleanChanges/.idea/vcs.xml7
-rw-r--r--MLEB/CleanChanges/.idea/workspace.xml172
-rw-r--r--MLEB/CleanChanges/.jshintrc1
-rw-r--r--MLEB/CleanChanges/CleanChanges.i18n.php35
-rw-r--r--MLEB/CleanChanges/CleanChanges.php54
-rw-r--r--MLEB/CleanChanges/CleanChanges_body.php709
-rw-r--r--MLEB/CleanChanges/Filters.php112
-rw-r--r--MLEB/CleanChanges/RELEASE-NOTES5
-rw-r--r--MLEB/CleanChanges/Resources.php17
-rw-r--r--MLEB/CleanChanges/composer.json11
-rw-r--r--MLEB/CleanChanges/i18n/af.json13
-rw-r--r--MLEB/CleanChanges/i18n/am.json9
-rw-r--r--MLEB/CleanChanges/i18n/an.json8
-rw-r--r--MLEB/CleanChanges/i18n/ar.json14
-rw-r--r--MLEB/CleanChanges/i18n/arc.json12
-rw-r--r--MLEB/CleanChanges/i18n/arz.json14
-rw-r--r--MLEB/CleanChanges/i18n/ast.json14
-rw-r--r--MLEB/CleanChanges/i18n/az.json8
-rw-r--r--MLEB/CleanChanges/i18n/azb.json11
-rw-r--r--MLEB/CleanChanges/i18n/ba.json13
-rw-r--r--MLEB/CleanChanges/i18n/bcl.json13
-rw-r--r--MLEB/CleanChanges/i18n/be-tarask.json14
-rw-r--r--MLEB/CleanChanges/i18n/bg.json14
-rw-r--r--MLEB/CleanChanges/i18n/bn.json14
-rw-r--r--MLEB/CleanChanges/i18n/br.json13
-rw-r--r--MLEB/CleanChanges/i18n/bs.json13
-rw-r--r--MLEB/CleanChanges/i18n/ca.json15
-rw-r--r--MLEB/CleanChanges/i18n/ce.json14
-rw-r--r--MLEB/CleanChanges/i18n/cs.json14
-rw-r--r--MLEB/CleanChanges/i18n/cu.json8
-rw-r--r--MLEB/CleanChanges/i18n/cy.json13
-rw-r--r--MLEB/CleanChanges/i18n/da.json14
-rw-r--r--MLEB/CleanChanges/i18n/de.json14
-rw-r--r--MLEB/CleanChanges/i18n/diq.json11
-rw-r--r--MLEB/CleanChanges/i18n/dsb.json13
-rw-r--r--MLEB/CleanChanges/i18n/ee.json10
-rw-r--r--MLEB/CleanChanges/i18n/el.json16
-rw-r--r--MLEB/CleanChanges/i18n/en.json13
-rw-r--r--MLEB/CleanChanges/i18n/eo.json14
-rw-r--r--MLEB/CleanChanges/i18n/es.json13
-rw-r--r--MLEB/CleanChanges/i18n/et.json14
-rw-r--r--MLEB/CleanChanges/i18n/eu.json14
-rw-r--r--MLEB/CleanChanges/i18n/fa.json17
-rw-r--r--MLEB/CleanChanges/i18n/fi.json14
-rw-r--r--MLEB/CleanChanges/i18n/fr.json17
-rw-r--r--MLEB/CleanChanges/i18n/frp.json12
-rw-r--r--MLEB/CleanChanges/i18n/fy.json14
-rw-r--r--MLEB/CleanChanges/i18n/ga.json10
-rw-r--r--MLEB/CleanChanges/i18n/gl.json14
-rw-r--r--MLEB/CleanChanges/i18n/grc.json14
-rw-r--r--MLEB/CleanChanges/i18n/gsw.json14
-rw-r--r--MLEB/CleanChanges/i18n/gu.json9
-rw-r--r--MLEB/CleanChanges/i18n/gv.json8
-rw-r--r--MLEB/CleanChanges/i18n/ha.json4
-rw-r--r--MLEB/CleanChanges/i18n/haw.json13
-rw-r--r--MLEB/CleanChanges/i18n/he.json15
-rw-r--r--MLEB/CleanChanges/i18n/hi.json12
-rw-r--r--MLEB/CleanChanges/i18n/hr.json13
-rw-r--r--MLEB/CleanChanges/i18n/hsb.json13
-rw-r--r--MLEB/CleanChanges/i18n/hu.json13
-rw-r--r--MLEB/CleanChanges/i18n/ia.json13
-rw-r--r--MLEB/CleanChanges/i18n/id.json14
-rw-r--r--MLEB/CleanChanges/i18n/ig.json13
-rw-r--r--MLEB/CleanChanges/i18n/is.json9
-rw-r--r--MLEB/CleanChanges/i18n/it.json15
-rw-r--r--MLEB/CleanChanges/i18n/ja.json18
-rw-r--r--MLEB/CleanChanges/i18n/jv.json8
-rw-r--r--MLEB/CleanChanges/i18n/ka.json15
-rw-r--r--MLEB/CleanChanges/i18n/kk-cyrl.json11
-rw-r--r--MLEB/CleanChanges/i18n/kl.json8
-rw-r--r--MLEB/CleanChanges/i18n/km.json14
-rw-r--r--MLEB/CleanChanges/i18n/kn.json9
-rw-r--r--MLEB/CleanChanges/i18n/ko.json14
-rw-r--r--MLEB/CleanChanges/i18n/krc.json8
-rw-r--r--MLEB/CleanChanges/i18n/ksh.json13
-rw-r--r--MLEB/CleanChanges/i18n/ku-latn.json12
-rw-r--r--MLEB/CleanChanges/i18n/kw.json9
-rw-r--r--MLEB/CleanChanges/i18n/lb.json13
-rw-r--r--MLEB/CleanChanges/i18n/li.json13
-rw-r--r--MLEB/CleanChanges/i18n/lrc.json8
-rw-r--r--MLEB/CleanChanges/i18n/lt.json11
-rw-r--r--MLEB/CleanChanges/i18n/ltg.json8
-rw-r--r--MLEB/CleanChanges/i18n/lv.json8
-rw-r--r--MLEB/CleanChanges/i18n/lzh.json10
-rw-r--r--MLEB/CleanChanges/i18n/mhr.json8
-rw-r--r--MLEB/CleanChanges/i18n/mk.json13
-rw-r--r--MLEB/CleanChanges/i18n/ml.json14
-rw-r--r--MLEB/CleanChanges/i18n/mn.json9
-rw-r--r--MLEB/CleanChanges/i18n/mr.json15
-rw-r--r--MLEB/CleanChanges/i18n/ms.json14
-rw-r--r--MLEB/CleanChanges/i18n/mt.json14
-rw-r--r--MLEB/CleanChanges/i18n/myv.json9
-rw-r--r--MLEB/CleanChanges/i18n/nah.json14
-rw-r--r--MLEB/CleanChanges/i18n/nb.json13
-rw-r--r--MLEB/CleanChanges/i18n/nds.json10
-rw-r--r--MLEB/CleanChanges/i18n/nl.json13
-rw-r--r--MLEB/CleanChanges/i18n/nn.json14
-rw-r--r--MLEB/CleanChanges/i18n/oc.json13
-rw-r--r--MLEB/CleanChanges/i18n/or.json11
-rw-r--r--MLEB/CleanChanges/i18n/os.json8
-rw-r--r--MLEB/CleanChanges/i18n/pa.json8
-rw-r--r--MLEB/CleanChanges/i18n/pdc.json9
-rw-r--r--MLEB/CleanChanges/i18n/pfl.json9
-rw-r--r--MLEB/CleanChanges/i18n/pl.json18
-rw-r--r--MLEB/CleanChanges/i18n/pms.json13
-rw-r--r--MLEB/CleanChanges/i18n/ps.json13
-rw-r--r--MLEB/CleanChanges/i18n/pt-br.json14
-rw-r--r--MLEB/CleanChanges/i18n/pt.json14
-rw-r--r--MLEB/CleanChanges/i18n/qqq.json19
-rw-r--r--MLEB/CleanChanges/i18n/qu.json9
-rw-r--r--MLEB/CleanChanges/i18n/rif.json10
-rw-r--r--MLEB/CleanChanges/i18n/ro.json14
-rw-r--r--MLEB/CleanChanges/i18n/roa-tara.json13
-rw-r--r--MLEB/CleanChanges/i18n/ru.json15
-rw-r--r--MLEB/CleanChanges/i18n/rue.json12
-rw-r--r--MLEB/CleanChanges/i18n/sah.json13
-rw-r--r--MLEB/CleanChanges/i18n/scn.json8
-rw-r--r--MLEB/CleanChanges/i18n/si.json12
-rw-r--r--MLEB/CleanChanges/i18n/sk.json13
-rw-r--r--MLEB/CleanChanges/i18n/sl.json13
-rw-r--r--MLEB/CleanChanges/i18n/sr-ec.json15
-rw-r--r--MLEB/CleanChanges/i18n/sr-el.json14
-rw-r--r--MLEB/CleanChanges/i18n/stq.json13
-rw-r--r--MLEB/CleanChanges/i18n/su.json14
-rw-r--r--MLEB/CleanChanges/i18n/sv.json15
-rw-r--r--MLEB/CleanChanges/i18n/sw.json9
-rw-r--r--MLEB/CleanChanges/i18n/szl.json8
-rw-r--r--MLEB/CleanChanges/i18n/ta.json13
-rw-r--r--MLEB/CleanChanges/i18n/te.json14
-rw-r--r--MLEB/CleanChanges/i18n/tet.json9
-rw-r--r--MLEB/CleanChanges/i18n/tg-cyrl.json10
-rw-r--r--MLEB/CleanChanges/i18n/tg-latn.json10
-rw-r--r--MLEB/CleanChanges/i18n/th.json8
-rw-r--r--MLEB/CleanChanges/i18n/tk.json9
-rw-r--r--MLEB/CleanChanges/i18n/tl.json13
-rw-r--r--MLEB/CleanChanges/i18n/tr.json14
-rw-r--r--MLEB/CleanChanges/i18n/tru.json8
-rw-r--r--MLEB/CleanChanges/i18n/tt-cyrl.json13
-rw-r--r--MLEB/CleanChanges/i18n/ug-arab.json8
-rw-r--r--MLEB/CleanChanges/i18n/ug-latn.json8
-rw-r--r--MLEB/CleanChanges/i18n/uk.json14
-rw-r--r--MLEB/CleanChanges/i18n/uz.json9
-rw-r--r--MLEB/CleanChanges/i18n/vec.json13
-rw-r--r--MLEB/CleanChanges/i18n/vep.json10
-rw-r--r--MLEB/CleanChanges/i18n/vi.json14
-rw-r--r--MLEB/CleanChanges/i18n/vo.json13
-rw-r--r--MLEB/CleanChanges/i18n/wa.json13
-rw-r--r--MLEB/CleanChanges/i18n/yi.json9
-rw-r--r--MLEB/CleanChanges/i18n/yo.json8
-rw-r--r--MLEB/CleanChanges/i18n/zh-hans.json16
-rw-r--r--MLEB/CleanChanges/i18n/zh-hant.json16
-rw-r--r--MLEB/CleanChanges/images/Arr_.pngbin0 -> 96 bytes
-rw-r--r--MLEB/CleanChanges/images/Arr_d.pngbin0 -> 205 bytes
-rw-r--r--MLEB/CleanChanges/images/Arr_l.pngbin0 -> 205 bytes
-rw-r--r--MLEB/CleanChanges/images/Arr_r.pngbin0 -> 206 bytes
-rw-r--r--MLEB/CleanChanges/images/Arr_u.pngbin0 -> 207 bytes
-rw-r--r--MLEB/CleanChanges/images/showuserlinks.pngbin0 -> 204 bytes
-rw-r--r--MLEB/CleanChanges/resources/cleanchanges.js23
-rw-r--r--MLEB/CleanChanges/resources/cleanchanges.uls.css24
-rw-r--r--MLEB/CleanChanges/resources/cleanchanges.uls.js59
-rw-r--r--MLEB/LocalisationUpdate/Autoload.php31
-rw-r--r--MLEB/LocalisationUpdate/LocalisationUpdate.class.php81
-rw-r--r--MLEB/LocalisationUpdate/LocalisationUpdate.i18n.php35
-rw-r--r--MLEB/LocalisationUpdate/LocalisationUpdate.php55
-rw-r--r--MLEB/LocalisationUpdate/QuickArrayReader.php204
-rw-r--r--MLEB/LocalisationUpdate/README34
-rw-r--r--MLEB/LocalisationUpdate/RELEASE-NOTES5
-rw-r--r--MLEB/LocalisationUpdate/Updater.php194
-rw-r--r--MLEB/LocalisationUpdate/fetcher/Fetcher.php26
-rw-r--r--MLEB/LocalisationUpdate/fetcher/FetcherFactory.php24
-rw-r--r--MLEB/LocalisationUpdate/fetcher/FileSystemFetcher.php35
-rw-r--r--MLEB/LocalisationUpdate/fetcher/GitHubFetcher.php38
-rw-r--r--MLEB/LocalisationUpdate/fetcher/HttpFetcher.php40
-rw-r--r--MLEB/LocalisationUpdate/finder/Finder.php78
-rw-r--r--MLEB/LocalisationUpdate/i18n/af.json8
-rw-r--r--MLEB/LocalisationUpdate/i18n/ar.json8
-rw-r--r--MLEB/LocalisationUpdate/i18n/ast.json8
-rw-r--r--MLEB/LocalisationUpdate/i18n/ba.json8
-rw-r--r--MLEB/LocalisationUpdate/i18n/bar.json8
-rw-r--r--MLEB/LocalisationUpdate/i18n/be-tarask.json9
-rw-r--r--MLEB/LocalisationUpdate/i18n/bg.json8
-rw-r--r--MLEB/LocalisationUpdate/i18n/bn.json8
-rw-r--r--MLEB/LocalisationUpdate/i18n/br.json8
-rw-r--r--MLEB/LocalisationUpdate/i18n/bs.json8
-rw-r--r--MLEB/LocalisationUpdate/i18n/ca.json8
-rw-r--r--MLEB/LocalisationUpdate/i18n/ce.json8
-rw-r--r--MLEB/LocalisationUpdate/i18n/cs.json8
-rw-r--r--MLEB/LocalisationUpdate/i18n/cy.json8
-rw-r--r--MLEB/LocalisationUpdate/i18n/da.json8
-rw-r--r--MLEB/LocalisationUpdate/i18n/de.json9
-rw-r--r--MLEB/LocalisationUpdate/i18n/dsb.json8
-rw-r--r--MLEB/LocalisationUpdate/i18n/el.json8
-rw-r--r--MLEB/LocalisationUpdate/i18n/en.json8
-rw-r--r--MLEB/LocalisationUpdate/i18n/eo.json8
-rw-r--r--MLEB/LocalisationUpdate/i18n/es.json8
-rw-r--r--MLEB/LocalisationUpdate/i18n/et.json8
-rw-r--r--MLEB/LocalisationUpdate/i18n/eu.json8
-rw-r--r--MLEB/LocalisationUpdate/i18n/fa.json8
-rw-r--r--MLEB/LocalisationUpdate/i18n/fi.json9
-rw-r--r--MLEB/LocalisationUpdate/i18n/fr.json8
-rw-r--r--MLEB/LocalisationUpdate/i18n/gl.json8
-rw-r--r--MLEB/LocalisationUpdate/i18n/gsw.json8
-rw-r--r--MLEB/LocalisationUpdate/i18n/he.json8
-rw-r--r--MLEB/LocalisationUpdate/i18n/hil.json8
-rw-r--r--MLEB/LocalisationUpdate/i18n/hr.json8
-rw-r--r--MLEB/LocalisationUpdate/i18n/hsb.json8
-rw-r--r--MLEB/LocalisationUpdate/i18n/hu.json8
-rw-r--r--MLEB/LocalisationUpdate/i18n/ia.json8
-rw-r--r--MLEB/LocalisationUpdate/i18n/id.json8
-rw-r--r--MLEB/LocalisationUpdate/i18n/ilo.json8
-rw-r--r--MLEB/LocalisationUpdate/i18n/it.json8
-rw-r--r--MLEB/LocalisationUpdate/i18n/ja.json9
-rw-r--r--MLEB/LocalisationUpdate/i18n/km.json8
-rw-r--r--MLEB/LocalisationUpdate/i18n/ko.json9
-rw-r--r--MLEB/LocalisationUpdate/i18n/ksh.json8
-rw-r--r--MLEB/LocalisationUpdate/i18n/lb.json9
-rw-r--r--MLEB/LocalisationUpdate/i18n/mk.json8
-rw-r--r--MLEB/LocalisationUpdate/i18n/ml.json8
-rw-r--r--MLEB/LocalisationUpdate/i18n/ms.json8
-rw-r--r--MLEB/LocalisationUpdate/i18n/nb.json8
-rw-r--r--MLEB/LocalisationUpdate/i18n/nl.json8
-rw-r--r--MLEB/LocalisationUpdate/i18n/nn.json8
-rw-r--r--MLEB/LocalisationUpdate/i18n/oc.json8
-rw-r--r--MLEB/LocalisationUpdate/i18n/pl.json8
-rw-r--r--MLEB/LocalisationUpdate/i18n/pms.json8
-rw-r--r--MLEB/LocalisationUpdate/i18n/pt-br.json8
-rw-r--r--MLEB/LocalisationUpdate/i18n/pt.json10
-rw-r--r--MLEB/LocalisationUpdate/i18n/qqq.json10
-rw-r--r--MLEB/LocalisationUpdate/i18n/ro.json8
-rw-r--r--MLEB/LocalisationUpdate/i18n/roa-tara.json8
-rw-r--r--MLEB/LocalisationUpdate/i18n/ru.json8
-rw-r--r--MLEB/LocalisationUpdate/i18n/sk.json8
-rw-r--r--MLEB/LocalisationUpdate/i18n/sr-ec.json8
-rw-r--r--MLEB/LocalisationUpdate/i18n/sr-el.json8
-rw-r--r--MLEB/LocalisationUpdate/i18n/su.json8
-rw-r--r--MLEB/LocalisationUpdate/i18n/sv.json8
-rw-r--r--MLEB/LocalisationUpdate/i18n/ta.json8
-rw-r--r--MLEB/LocalisationUpdate/i18n/te.json8
-rw-r--r--MLEB/LocalisationUpdate/i18n/tl.json8
-rw-r--r--MLEB/LocalisationUpdate/i18n/tr.json8
-rw-r--r--MLEB/LocalisationUpdate/i18n/uk.json8
-rw-r--r--MLEB/LocalisationUpdate/i18n/vep.json8
-rw-r--r--MLEB/LocalisationUpdate/i18n/vi.json8
-rw-r--r--MLEB/LocalisationUpdate/i18n/wa.json8
-rw-r--r--MLEB/LocalisationUpdate/i18n/yi.json8
-rw-r--r--MLEB/LocalisationUpdate/i18n/yue.json8
-rw-r--r--MLEB/LocalisationUpdate/i18n/zh-hans.json8
-rw-r--r--MLEB/LocalisationUpdate/i18n/zh-hant.json10
-rw-r--r--MLEB/LocalisationUpdate/reader/JSONReader.php30
-rw-r--r--MLEB/LocalisationUpdate/reader/PHPReader.php54
-rw-r--r--MLEB/LocalisationUpdate/reader/Reader.php19
-rw-r--r--MLEB/LocalisationUpdate/reader/ReaderFactory.php36
-rw-r--r--MLEB/LocalisationUpdate/tests/phpunit/Makefile12
-rw-r--r--MLEB/LocalisationUpdate/tests/phpunit/UpdaterTest.php80
-rw-r--r--MLEB/LocalisationUpdate/tests/phpunit/finder/FinderTest.php70
-rw-r--r--MLEB/LocalisationUpdate/tests/phpunit/reader/JSONReaderTest.php37
-rw-r--r--MLEB/LocalisationUpdate/tests/phpunit/reader/ReaderFactoryTest.php38
-rw-r--r--MLEB/LocalisationUpdate/update.php75
-rw-r--r--MLEB/Translate/.jshintignore4
-rw-r--r--MLEB/Translate/.jshintrc29
-rw-r--r--MLEB/Translate/.rubocop.yml1
-rw-r--r--MLEB/Translate/.rubocop_todo.yml110
-rw-r--r--MLEB/Translate/Autoload.php326
-rw-r--r--MLEB/Translate/CHANGELOG793
-rw-r--r--MLEB/Translate/COPYING346
-rw-r--r--MLEB/Translate/Doxyfile220
-rw-r--r--MLEB/Translate/Gemfile7
-rw-r--r--MLEB/Translate/Gemfile.lock81
-rw-r--r--MLEB/Translate/MediaWikiMessageChecker.php375
-rw-r--r--MLEB/Translate/Message.php203
-rw-r--r--MLEB/Translate/MessageChecks.php443
-rw-r--r--MLEB/Translate/MessageCollection.php989
-rw-r--r--MLEB/Translate/MessageGroups.php761
-rw-r--r--MLEB/Translate/PageTranslation.i18n.php35
-rw-r--r--MLEB/Translate/README32
-rw-r--r--MLEB/Translate/RELEASE-NOTES12
-rw-r--r--MLEB/Translate/Resources.php547
-rw-r--r--MLEB/Translate/Translate.MyLanguage.alias.php309
-rw-r--r--MLEB/Translate/Translate.alias.php1124
-rw-r--r--MLEB/Translate/Translate.i18n.magic.php15
-rw-r--r--MLEB/Translate/Translate.i18n.php35
-rw-r--r--MLEB/Translate/Translate.php666
-rw-r--r--MLEB/Translate/TranslateEditAddons.php350
-rw-r--r--MLEB/Translate/TranslateGroupDescriptions.i18n.php35
-rw-r--r--MLEB/Translate/TranslateHooks.php653
-rw-r--r--MLEB/Translate/TranslateSandbox.i18n.php35
-rw-r--r--MLEB/Translate/TranslateSearch.i18n.php35
-rw-r--r--MLEB/Translate/TranslateTasks.php427
-rw-r--r--MLEB/Translate/TranslateUtils.php430
-rw-r--r--MLEB/Translate/api/ApiAggregateGroups.php305
-rw-r--r--MLEB/Translate/api/ApiGroupReview.php227
-rw-r--r--MLEB/Translate/api/ApiHardMessages.php193
-rw-r--r--MLEB/Translate/api/ApiQueryLanguageStats.php80
-rw-r--r--MLEB/Translate/api/ApiQueryMessageCollection.php319
-rw-r--r--MLEB/Translate/api/ApiQueryMessageGroupStats.php90
-rw-r--r--MLEB/Translate/api/ApiQueryMessageGroups.php391
-rw-r--r--MLEB/Translate/api/ApiQueryMessageTranslations.php172
-rw-r--r--MLEB/Translate/api/ApiQueryTranslationAids.php136
-rw-r--r--MLEB/Translate/api/ApiStatsQuery.php84
-rw-r--r--MLEB/Translate/api/ApiTTMServer.php115
-rw-r--r--MLEB/Translate/api/ApiTranslateSandbox.php266
-rw-r--r--MLEB/Translate/api/ApiTranslateUser.php86
-rw-r--r--MLEB/Translate/api/ApiTranslationReview.php235
-rw-r--r--MLEB/Translate/api/ApiTranslationStash.php187
-rw-r--r--MLEB/Translate/composer.json49
-rw-r--r--MLEB/Translate/data/plural-gettext.txt129
-rw-r--r--MLEB/Translate/data/xliff-core-1.2-transitional.xsd2261
-rw-r--r--MLEB/Translate/data/xliff-template.xml7
-rw-r--r--MLEB/Translate/ffs/AndroidXmlFFS.php208
-rw-r--r--MLEB/Translate/ffs/AppleFFS.php215
-rw-r--r--MLEB/Translate/ffs/DtdFFS.php113
-rw-r--r--MLEB/Translate/ffs/FFS.php85
-rw-r--r--MLEB/Translate/ffs/FlatPhpFFS.php139
-rw-r--r--MLEB/Translate/ffs/GettextFFS.php667
-rw-r--r--MLEB/Translate/ffs/IniFFS.php114
-rw-r--r--MLEB/Translate/ffs/IntuitionTextdomains.php110
-rw-r--r--MLEB/Translate/ffs/JavaFFS.php253
-rw-r--r--MLEB/Translate/ffs/JavaScriptFFS.php286
-rw-r--r--MLEB/Translate/ffs/JsonFFS.php110
-rw-r--r--MLEB/Translate/ffs/MediaWikiComplexMessages.php779
-rw-r--r--MLEB/Translate/ffs/MediaWikiExtensionFFS.php289
-rw-r--r--MLEB/Translate/ffs/MediaWikiExtensions.php338
-rw-r--r--MLEB/Translate/ffs/RubyYamlFFS.php170
-rw-r--r--MLEB/Translate/ffs/SimpleFFS.php344
-rw-r--r--MLEB/Translate/ffs/XliffFFS.php189
-rw-r--r--MLEB/Translate/ffs/YamlFFS.php250
-rw-r--r--MLEB/Translate/hooks.txt167
-rw-r--r--MLEB/Translate/i18n/api/ca.json23
-rw-r--r--MLEB/Translate/i18n/api/ce.json12
-rw-r--r--MLEB/Translate/i18n/api/de.json10
-rw-r--r--MLEB/Translate/i18n/api/en.json81
-rw-r--r--MLEB/Translate/i18n/api/es.json36
-rw-r--r--MLEB/Translate/i18n/api/fy.json10
-rw-r--r--MLEB/Translate/i18n/api/ia.json15
-rw-r--r--MLEB/Translate/i18n/api/lb.json15
-rw-r--r--MLEB/Translate/i18n/api/mk.json75
-rw-r--r--MLEB/Translate/i18n/api/ms.json8
-rw-r--r--MLEB/Translate/i18n/api/nl.json8
-rw-r--r--MLEB/Translate/i18n/api/pdc.json9
-rw-r--r--MLEB/Translate/i18n/api/pl.json17
-rw-r--r--MLEB/Translate/i18n/api/pt.json14
-rw-r--r--MLEB/Translate/i18n/api/qqq.json83
-rw-r--r--MLEB/Translate/i18n/api/sv.json29
-rw-r--r--MLEB/Translate/i18n/api/uk.json12
-rw-r--r--MLEB/Translate/i18n/api/zh-hans.json37
-rw-r--r--MLEB/Translate/i18n/api/zh-hant.json9
-rw-r--r--MLEB/Translate/i18n/core/ace.json46
-rw-r--r--MLEB/Translate/i18n/core/af.json364
-rw-r--r--MLEB/Translate/i18n/core/aln.json62
-rw-r--r--MLEB/Translate/i18n/core/am.json27
-rw-r--r--MLEB/Translate/i18n/core/an.json42
-rw-r--r--MLEB/Translate/i18n/core/ar.json252
-rw-r--r--MLEB/Translate/i18n/core/arc.json104
-rw-r--r--MLEB/Translate/i18n/core/arn.json13
-rw-r--r--MLEB/Translate/i18n/core/ary.json9
-rw-r--r--MLEB/Translate/i18n/core/arz.json161
-rw-r--r--MLEB/Translate/i18n/core/as.json193
-rw-r--r--MLEB/Translate/i18n/core/ast.json387
-rw-r--r--MLEB/Translate/i18n/core/av.json11
-rw-r--r--MLEB/Translate/i18n/core/az.json214
-rw-r--r--MLEB/Translate/i18n/core/azb.json360
-rw-r--r--MLEB/Translate/i18n/core/ba.json193
-rw-r--r--MLEB/Translate/i18n/core/bar.json36
-rw-r--r--MLEB/Translate/i18n/core/bcc.json10
-rw-r--r--MLEB/Translate/i18n/core/bcl.json18
-rw-r--r--MLEB/Translate/i18n/core/be-tarask.json384
-rw-r--r--MLEB/Translate/i18n/core/be.json136
-rw-r--r--MLEB/Translate/i18n/core/bg.json193
-rw-r--r--MLEB/Translate/i18n/core/bho.json54
-rw-r--r--MLEB/Translate/i18n/core/bn.json254
-rw-r--r--MLEB/Translate/i18n/core/bo.json42
-rw-r--r--MLEB/Translate/i18n/core/bpy.json8
-rw-r--r--MLEB/Translate/i18n/core/br.json371
-rw-r--r--MLEB/Translate/i18n/core/bs.json257
-rw-r--r--MLEB/Translate/i18n/core/bug.json14
-rw-r--r--MLEB/Translate/i18n/core/bxr.json9
-rw-r--r--MLEB/Translate/i18n/core/ca.json386
-rw-r--r--MLEB/Translate/i18n/core/cdo.json8
-rw-r--r--MLEB/Translate/i18n/core/ce.json278
-rw-r--r--MLEB/Translate/i18n/core/ch.json9
-rw-r--r--MLEB/Translate/i18n/core/ckb.json172
-rw-r--r--MLEB/Translate/i18n/core/cs.json387
-rw-r--r--MLEB/Translate/i18n/core/csb.json10
-rw-r--r--MLEB/Translate/i18n/core/cu.json17
-rw-r--r--MLEB/Translate/i18n/core/cy.json253
-rw-r--r--MLEB/Translate/i18n/core/da.json388
-rw-r--r--MLEB/Translate/i18n/core/de-ch.json13
-rw-r--r--MLEB/Translate/i18n/core/de-formal.json31
-rw-r--r--MLEB/Translate/i18n/core/de.json403
-rw-r--r--MLEB/Translate/i18n/core/diq.json152
-rw-r--r--MLEB/Translate/i18n/core/dsb.json384
-rw-r--r--MLEB/Translate/i18n/core/dtp.json12
-rw-r--r--MLEB/Translate/i18n/core/ee.json51
-rw-r--r--MLEB/Translate/i18n/core/el.json391
-rw-r--r--MLEB/Translate/i18n/core/en-gb.json12
-rw-r--r--MLEB/Translate/i18n/core/en.json394
-rw-r--r--MLEB/Translate/i18n/core/eo.json322
-rw-r--r--MLEB/Translate/i18n/core/es.json406
-rw-r--r--MLEB/Translate/i18n/core/et.json361
-rw-r--r--MLEB/Translate/i18n/core/eu.json183
-rw-r--r--MLEB/Translate/i18n/core/ext.json15
-rw-r--r--MLEB/Translate/i18n/core/fa.json397
-rw-r--r--MLEB/Translate/i18n/core/fi.json399
-rw-r--r--MLEB/Translate/i18n/core/fo.json328
-rw-r--r--MLEB/Translate/i18n/core/fr.json422
-rw-r--r--MLEB/Translate/i18n/core/frc.json15
-rw-r--r--MLEB/Translate/i18n/core/frp.json309
-rw-r--r--MLEB/Translate/i18n/core/frr.json8
-rw-r--r--MLEB/Translate/i18n/core/fur.json249
-rw-r--r--MLEB/Translate/i18n/core/fy.json37
-rw-r--r--MLEB/Translate/i18n/core/ga.json28
-rw-r--r--MLEB/Translate/i18n/core/gl.json389
-rw-r--r--MLEB/Translate/i18n/core/gom-latn.json10
-rw-r--r--MLEB/Translate/i18n/core/grc.json56
-rw-r--r--MLEB/Translate/i18n/core/gsw.json285
-rw-r--r--MLEB/Translate/i18n/core/gu.json140
-rw-r--r--MLEB/Translate/i18n/core/gv.json13
-rw-r--r--MLEB/Translate/i18n/core/ha.json4
-rw-r--r--MLEB/Translate/i18n/core/hak.json9
-rw-r--r--MLEB/Translate/i18n/core/haw.json13
-rw-r--r--MLEB/Translate/i18n/core/he.json397
-rw-r--r--MLEB/Translate/i18n/core/hi.json155
-rw-r--r--MLEB/Translate/i18n/core/hil.json8
-rw-r--r--MLEB/Translate/i18n/core/hr.json160
-rw-r--r--MLEB/Translate/i18n/core/hsb.json384
-rw-r--r--MLEB/Translate/i18n/core/ht.json187
-rw-r--r--MLEB/Translate/i18n/core/hu.json375
-rw-r--r--MLEB/Translate/i18n/core/hy.json15
-rw-r--r--MLEB/Translate/i18n/core/ia.json383
-rw-r--r--MLEB/Translate/i18n/core/id.json393
-rw-r--r--MLEB/Translate/i18n/core/ig.json48
-rw-r--r--MLEB/Translate/i18n/core/ilo.json380
-rw-r--r--MLEB/Translate/i18n/core/io.json34
-rw-r--r--MLEB/Translate/i18n/core/is.json198
-rw-r--r--MLEB/Translate/i18n/core/it.json399
-rw-r--r--MLEB/Translate/i18n/core/ja.json402
-rw-r--r--MLEB/Translate/i18n/core/jam.json41
-rw-r--r--MLEB/Translate/i18n/core/jbo.json12
-rw-r--r--MLEB/Translate/i18n/core/jv.json271
-rw-r--r--MLEB/Translate/i18n/core/ka.json225
-rw-r--r--MLEB/Translate/i18n/core/kaa.json53
-rw-r--r--MLEB/Translate/i18n/core/kab.json11
-rw-r--r--MLEB/Translate/i18n/core/kbd-cyrl.json14
-rw-r--r--MLEB/Translate/i18n/core/khw.json8
-rw-r--r--MLEB/Translate/i18n/core/kiu.json8
-rw-r--r--MLEB/Translate/i18n/core/kk-arab.json50
-rw-r--r--MLEB/Translate/i18n/core/kk-cyrl.json84
-rw-r--r--MLEB/Translate/i18n/core/kk-kz.json28
-rw-r--r--MLEB/Translate/i18n/core/kk-latn.json52
-rw-r--r--MLEB/Translate/i18n/core/kl.json11
-rw-r--r--MLEB/Translate/i18n/core/km.json200
-rw-r--r--MLEB/Translate/i18n/core/kn.json116
-rw-r--r--MLEB/Translate/i18n/core/ko.json391
-rw-r--r--MLEB/Translate/i18n/core/krc.json9
-rw-r--r--MLEB/Translate/i18n/core/kri.json9
-rw-r--r--MLEB/Translate/i18n/core/krl.json8
-rw-r--r--MLEB/Translate/i18n/core/ksh.json385
-rw-r--r--MLEB/Translate/i18n/core/ku-latn.json138
-rw-r--r--MLEB/Translate/i18n/core/ky.json65
-rw-r--r--MLEB/Translate/i18n/core/la.json13
-rw-r--r--MLEB/Translate/i18n/core/lb.json385
-rw-r--r--MLEB/Translate/i18n/core/lg.json27
-rw-r--r--MLEB/Translate/i18n/core/li.json18
-rw-r--r--MLEB/Translate/i18n/core/lki.json8
-rw-r--r--MLEB/Translate/i18n/core/lmo.json32
-rw-r--r--MLEB/Translate/i18n/core/ln.json13
-rw-r--r--MLEB/Translate/i18n/core/lo.json9
-rw-r--r--MLEB/Translate/i18n/core/lrc.json76
-rw-r--r--MLEB/Translate/i18n/core/lt.json326
-rw-r--r--MLEB/Translate/i18n/core/ltg.json33
-rw-r--r--MLEB/Translate/i18n/core/lus.json223
-rw-r--r--MLEB/Translate/i18n/core/lv.json196
-rw-r--r--MLEB/Translate/i18n/core/lzh.json178
-rw-r--r--MLEB/Translate/i18n/core/lzz.json12
-rw-r--r--MLEB/Translate/i18n/core/map-bms.json69
-rw-r--r--MLEB/Translate/i18n/core/mg.json11
-rw-r--r--MLEB/Translate/i18n/core/mhr.json11
-rw-r--r--MLEB/Translate/i18n/core/min.json22
-rw-r--r--MLEB/Translate/i18n/core/mk.json393
-rw-r--r--MLEB/Translate/i18n/core/ml.json323
-rw-r--r--MLEB/Translate/i18n/core/mn.json12
-rw-r--r--MLEB/Translate/i18n/core/mo.json42
-rw-r--r--MLEB/Translate/i18n/core/mr.json364
-rw-r--r--MLEB/Translate/i18n/core/ms.json388
-rw-r--r--MLEB/Translate/i18n/core/mt.json196
-rw-r--r--MLEB/Translate/i18n/core/my.json20
-rw-r--r--MLEB/Translate/i18n/core/myv.json68
-rw-r--r--MLEB/Translate/i18n/core/nah.json39
-rw-r--r--MLEB/Translate/i18n/core/nap.json10
-rw-r--r--MLEB/Translate/i18n/core/nb.json388
-rw-r--r--MLEB/Translate/i18n/core/nds-nl.json19
-rw-r--r--MLEB/Translate/i18n/core/nds.json31
-rw-r--r--MLEB/Translate/i18n/core/ne.json105
-rw-r--r--MLEB/Translate/i18n/core/niu.json8
-rw-r--r--MLEB/Translate/i18n/core/nl.json395
-rw-r--r--MLEB/Translate/i18n/core/nn.json364
-rw-r--r--MLEB/Translate/i18n/core/nso.json20
-rw-r--r--MLEB/Translate/i18n/core/oc.json287
-rw-r--r--MLEB/Translate/i18n/core/or.json130
-rw-r--r--MLEB/Translate/i18n/core/os.json16
-rw-r--r--MLEB/Translate/i18n/core/pa.json259
-rw-r--r--MLEB/Translate/i18n/core/pam.json14
-rw-r--r--MLEB/Translate/i18n/core/pdc.json62
-rw-r--r--MLEB/Translate/i18n/core/pfl.json276
-rw-r--r--MLEB/Translate/i18n/core/pl.json408
-rw-r--r--MLEB/Translate/i18n/core/pms.json326
-rw-r--r--MLEB/Translate/i18n/core/pnb.json16
-rw-r--r--MLEB/Translate/i18n/core/ps.json131
-rw-r--r--MLEB/Translate/i18n/core/pt-br.json394
-rw-r--r--MLEB/Translate/i18n/core/pt.json395
-rw-r--r--MLEB/Translate/i18n/core/qqq.json401
-rw-r--r--MLEB/Translate/i18n/core/qu.json319
-rw-r--r--MLEB/Translate/i18n/core/rif.json9
-rw-r--r--MLEB/Translate/i18n/core/rm.json33
-rw-r--r--MLEB/Translate/i18n/core/ro.json379
-rw-r--r--MLEB/Translate/i18n/core/roa-tara.json345
-rw-r--r--MLEB/Translate/i18n/core/rtm.json8
-rw-r--r--MLEB/Translate/i18n/core/ru.json406
-rw-r--r--MLEB/Translate/i18n/core/rue.json207
-rw-r--r--MLEB/Translate/i18n/core/sa.json25
-rw-r--r--MLEB/Translate/i18n/core/sah.json201
-rw-r--r--MLEB/Translate/i18n/core/saz.json9
-rw-r--r--MLEB/Translate/i18n/core/sc.json11
-rw-r--r--MLEB/Translate/i18n/core/scn.json22
-rw-r--r--MLEB/Translate/i18n/core/sco.json333
-rw-r--r--MLEB/Translate/i18n/core/sh.json8
-rw-r--r--MLEB/Translate/i18n/core/si.json297
-rw-r--r--MLEB/Translate/i18n/core/sk.json247
-rw-r--r--MLEB/Translate/i18n/core/sl.json386
-rw-r--r--MLEB/Translate/i18n/core/so.json33
-rw-r--r--MLEB/Translate/i18n/core/sq.json31
-rw-r--r--MLEB/Translate/i18n/core/sr-ec.json383
-rw-r--r--MLEB/Translate/i18n/core/sr-el.json375
-rw-r--r--MLEB/Translate/i18n/core/ss.json10
-rw-r--r--MLEB/Translate/i18n/core/stq.json105
-rw-r--r--MLEB/Translate/i18n/core/su.json75
-rw-r--r--MLEB/Translate/i18n/core/sv.json402
-rw-r--r--MLEB/Translate/i18n/core/sw.json103
-rw-r--r--MLEB/Translate/i18n/core/szl.json10
-rw-r--r--MLEB/Translate/i18n/core/ta.json248
-rw-r--r--MLEB/Translate/i18n/core/tcy.json14
-rw-r--r--MLEB/Translate/i18n/core/te.json256
-rw-r--r--MLEB/Translate/i18n/core/tet.json25
-rw-r--r--MLEB/Translate/i18n/core/tg-cyrl.json46
-rw-r--r--MLEB/Translate/i18n/core/tg-latn.json43
-rw-r--r--MLEB/Translate/i18n/core/th.json142
-rw-r--r--MLEB/Translate/i18n/core/tk.json48
-rw-r--r--MLEB/Translate/i18n/core/tl.json287
-rw-r--r--MLEB/Translate/i18n/core/tly.json17
-rw-r--r--MLEB/Translate/i18n/core/tr.json373
-rw-r--r--MLEB/Translate/i18n/core/tru.json10
-rw-r--r--MLEB/Translate/i18n/core/tt-cyrl.json91
-rw-r--r--MLEB/Translate/i18n/core/tzm.json28
-rw-r--r--MLEB/Translate/i18n/core/ug-arab.json292
-rw-r--r--MLEB/Translate/i18n/core/ug-latn.json11
-rw-r--r--MLEB/Translate/i18n/core/uk.json403
-rw-r--r--MLEB/Translate/i18n/core/ur.json102
-rw-r--r--MLEB/Translate/i18n/core/uz.json241
-rw-r--r--MLEB/Translate/i18n/core/vec.json89
-rw-r--r--MLEB/Translate/i18n/core/vep.json163
-rw-r--r--MLEB/Translate/i18n/core/vi.json389
-rw-r--r--MLEB/Translate/i18n/core/vo.json86
-rw-r--r--MLEB/Translate/i18n/core/wa.json255
-rw-r--r--MLEB/Translate/i18n/core/xal.json26
-rw-r--r--MLEB/Translate/i18n/core/xmf.json8
-rw-r--r--MLEB/Translate/i18n/core/yi.json366
-rw-r--r--MLEB/Translate/i18n/core/yue.json52
-rw-r--r--MLEB/Translate/i18n/core/zh-hans.json412
-rw-r--r--MLEB/Translate/i18n/core/zh-hant.json398
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/af.json24
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/aln.json9
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/ar.json21
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/arc.json8
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/arz.json16
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/ast.json59
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/az.json8
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/azb.json7
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/ba.json13
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/bcc.json8
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/be-tarask.json43
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/bg.json13
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/bn.json8
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/br.json43
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/bs.json42
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/ca.json12
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/ce.json17
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/cs.json63
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/da.json52
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/de.json65
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/diq.json15
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/dsb.json56
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/el.json18
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/en-gb.json9
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/en.json58
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/eo.json21
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/es.json71
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/et.json10
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/fa.json55
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/fi.json33
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/fo.json21
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/fr.json77
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/frp.json29
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/fur.json8
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/gl.json59
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/gsw.json40
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/he.json64
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/hr.json19
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/hsb.json57
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/hu.json30
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/ia.json46
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/id.json40
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/it.json64
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/ja.json62
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/ka.json22
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/kbd-cyrl.json8
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/km.json8
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/kn.json8
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/ko.json60
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/ksh.json57
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/lb.json52
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/lrc.json8
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/lt.json15
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/lv.json8
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/mk.json60
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/ml.json10
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/mr.json27
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/ms.json57
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/mt.json9
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/nb.json55
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/ne.json8
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/nl.json66
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/nn.json14
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/oc.json25
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/pfl.json39
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/pl.json54
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/pms.json48
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/ps.json10
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/pt-br.json49
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/pt.json66
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/qqq.json40
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/qu.json8
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/ro.json41
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/roa-tara.json20
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/ru.json69
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/rue.json18
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/sco.json55
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/si.json17
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/sk.json24
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/sl.json50
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/sq.json8
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/sr-ec.json38
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/sr-el.json36
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/sv.json68
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/ta.json8
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/te.json11
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/th.json14
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/tl.json41
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/tr.json10
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/tt-cyrl.json16
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/uk.json67
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/uz.json9
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/vep.json14
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/vi.json62
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/yi.json19
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/zh-hans.json71
-rw-r--r--MLEB/Translate/i18n/groupdescriptions/zh-hant.json64
-rw-r--r--MLEB/Translate/i18n/pagetranslation/af.json63
-rw-r--r--MLEB/Translate/i18n/pagetranslation/ar.json73
-rw-r--r--MLEB/Translate/i18n/pagetranslation/arc.json9
-rw-r--r--MLEB/Translate/i18n/pagetranslation/arz.json43
-rw-r--r--MLEB/Translate/i18n/pagetranslation/as.json35
-rw-r--r--MLEB/Translate/i18n/pagetranslation/ast.json197
-rw-r--r--MLEB/Translate/i18n/pagetranslation/av.json12
-rw-r--r--MLEB/Translate/i18n/pagetranslation/az.json43
-rw-r--r--MLEB/Translate/i18n/pagetranslation/azb.json140
-rw-r--r--MLEB/Translate/i18n/pagetranslation/ba.json20
-rw-r--r--MLEB/Translate/i18n/pagetranslation/bar.json39
-rw-r--r--MLEB/Translate/i18n/pagetranslation/bcc.json9
-rw-r--r--MLEB/Translate/i18n/pagetranslation/bcl.json89
-rw-r--r--MLEB/Translate/i18n/pagetranslation/be-tarask.json157
-rw-r--r--MLEB/Translate/i18n/pagetranslation/be.json19
-rw-r--r--MLEB/Translate/i18n/pagetranslation/bg.json31
-rw-r--r--MLEB/Translate/i18n/pagetranslation/bm.json11
-rw-r--r--MLEB/Translate/i18n/pagetranslation/bn.json35
-rw-r--r--MLEB/Translate/i18n/pagetranslation/bo.json18
-rw-r--r--MLEB/Translate/i18n/pagetranslation/br.json133
-rw-r--r--MLEB/Translate/i18n/pagetranslation/bs.json97
-rw-r--r--MLEB/Translate/i18n/pagetranslation/bug.json8
-rw-r--r--MLEB/Translate/i18n/pagetranslation/bxr.json8
-rw-r--r--MLEB/Translate/i18n/pagetranslation/ca.json77
-rw-r--r--MLEB/Translate/i18n/pagetranslation/ce.json54
-rw-r--r--MLEB/Translate/i18n/pagetranslation/ckb.json33
-rw-r--r--MLEB/Translate/i18n/pagetranslation/cs.json130
-rw-r--r--MLEB/Translate/i18n/pagetranslation/cu.json8
-rw-r--r--MLEB/Translate/i18n/pagetranslation/cy.json53
-rw-r--r--MLEB/Translate/i18n/pagetranslation/da.json159
-rw-r--r--MLEB/Translate/i18n/pagetranslation/de-formal.json15
-rw-r--r--MLEB/Translate/i18n/pagetranslation/de.json208
-rw-r--r--MLEB/Translate/i18n/pagetranslation/diq.json38
-rw-r--r--MLEB/Translate/i18n/pagetranslation/dsb.json154
-rw-r--r--MLEB/Translate/i18n/pagetranslation/ee.json9
-rw-r--r--MLEB/Translate/i18n/pagetranslation/el.json162
-rw-r--r--MLEB/Translate/i18n/pagetranslation/en-gb.json19
-rw-r--r--MLEB/Translate/i18n/pagetranslation/en.json199
-rw-r--r--MLEB/Translate/i18n/pagetranslation/eo.json103
-rw-r--r--MLEB/Translate/i18n/pagetranslation/es.json211
-rw-r--r--MLEB/Translate/i18n/pagetranslation/et.json146
-rw-r--r--MLEB/Translate/i18n/pagetranslation/eu.json32
-rw-r--r--MLEB/Translate/i18n/pagetranslation/fa.json176
-rw-r--r--MLEB/Translate/i18n/pagetranslation/fi.json195
-rw-r--r--MLEB/Translate/i18n/pagetranslation/fo.json11
-rw-r--r--MLEB/Translate/i18n/pagetranslation/fr.json215
-rw-r--r--MLEB/Translate/i18n/pagetranslation/frp.json115
-rw-r--r--MLEB/Translate/i18n/pagetranslation/fur.json25
-rw-r--r--MLEB/Translate/i18n/pagetranslation/fy.json11
-rw-r--r--MLEB/Translate/i18n/pagetranslation/ga.json11
-rw-r--r--MLEB/Translate/i18n/pagetranslation/gl.json180
-rw-r--r--MLEB/Translate/i18n/pagetranslation/gsw.json139
-rw-r--r--MLEB/Translate/i18n/pagetranslation/gu.json36
-rw-r--r--MLEB/Translate/i18n/pagetranslation/gv.json8
-rw-r--r--MLEB/Translate/i18n/pagetranslation/ha.json4
-rw-r--r--MLEB/Translate/i18n/pagetranslation/he.json202
-rw-r--r--MLEB/Translate/i18n/pagetranslation/hi.json32
-rw-r--r--MLEB/Translate/i18n/pagetranslation/hr.json38
-rw-r--r--MLEB/Translate/i18n/pagetranslation/hsb.json155
-rw-r--r--MLEB/Translate/i18n/pagetranslation/ht.json64
-rw-r--r--MLEB/Translate/i18n/pagetranslation/hu.json110
-rw-r--r--MLEB/Translate/i18n/pagetranslation/ia.json176
-rw-r--r--MLEB/Translate/i18n/pagetranslation/id.json97
-rw-r--r--MLEB/Translate/i18n/pagetranslation/ig.json16
-rw-r--r--MLEB/Translate/i18n/pagetranslation/io.json8
-rw-r--r--MLEB/Translate/i18n/pagetranslation/is.json11
-rw-r--r--MLEB/Translate/i18n/pagetranslation/it.json207
-rw-r--r--MLEB/Translate/i18n/pagetranslation/ja.json187
-rw-r--r--MLEB/Translate/i18n/pagetranslation/jam.json35
-rw-r--r--MLEB/Translate/i18n/pagetranslation/jv.json124
-rw-r--r--MLEB/Translate/i18n/pagetranslation/ka.json48
-rw-r--r--MLEB/Translate/i18n/pagetranslation/kbd-cyrl.json11
-rw-r--r--MLEB/Translate/i18n/pagetranslation/km.json27
-rw-r--r--MLEB/Translate/i18n/pagetranslation/kn.json31
-rw-r--r--MLEB/Translate/i18n/pagetranslation/ko.json163
-rw-r--r--MLEB/Translate/i18n/pagetranslation/ksh.json154
-rw-r--r--MLEB/Translate/i18n/pagetranslation/ku-latn.json32
-rw-r--r--MLEB/Translate/i18n/pagetranslation/ky.json25
-rw-r--r--MLEB/Translate/i18n/pagetranslation/lb.json186
-rw-r--r--MLEB/Translate/i18n/pagetranslation/lg.json9
-rw-r--r--MLEB/Translate/i18n/pagetranslation/lrc.json15
-rw-r--r--MLEB/Translate/i18n/pagetranslation/lt.json68
-rw-r--r--MLEB/Translate/i18n/pagetranslation/ltg.json11
-rw-r--r--MLEB/Translate/i18n/pagetranslation/lv.json47
-rw-r--r--MLEB/Translate/i18n/pagetranslation/lzh.json10
-rw-r--r--MLEB/Translate/i18n/pagetranslation/mg.json8
-rw-r--r--MLEB/Translate/i18n/pagetranslation/min.json9
-rw-r--r--MLEB/Translate/i18n/pagetranslation/mk.json199
-rw-r--r--MLEB/Translate/i18n/pagetranslation/ml.json70
-rw-r--r--MLEB/Translate/i18n/pagetranslation/mn.json11
-rw-r--r--MLEB/Translate/i18n/pagetranslation/mr.json100
-rw-r--r--MLEB/Translate/i18n/pagetranslation/ms.json164
-rw-r--r--MLEB/Translate/i18n/pagetranslation/mt.json20
-rw-r--r--MLEB/Translate/i18n/pagetranslation/myv.json11
-rw-r--r--MLEB/Translate/i18n/pagetranslation/nah.json8
-rw-r--r--MLEB/Translate/i18n/pagetranslation/nap.json9
-rw-r--r--MLEB/Translate/i18n/pagetranslation/nb.json157
-rw-r--r--MLEB/Translate/i18n/pagetranslation/nds-nl.json8
-rw-r--r--MLEB/Translate/i18n/pagetranslation/ne.json12
-rw-r--r--MLEB/Translate/i18n/pagetranslation/nl.json183
-rw-r--r--MLEB/Translate/i18n/pagetranslation/nn.json87
-rw-r--r--MLEB/Translate/i18n/pagetranslation/oc.json59
-rw-r--r--MLEB/Translate/i18n/pagetranslation/or.json20
-rw-r--r--MLEB/Translate/i18n/pagetranslation/pa.json12
-rw-r--r--MLEB/Translate/i18n/pagetranslation/pam.json12
-rw-r--r--MLEB/Translate/i18n/pagetranslation/pdc.json15
-rw-r--r--MLEB/Translate/i18n/pagetranslation/pfl.json135
-rw-r--r--MLEB/Translate/i18n/pagetranslation/pl.json205
-rw-r--r--MLEB/Translate/i18n/pagetranslation/pms.json138
-rw-r--r--MLEB/Translate/i18n/pagetranslation/ps.json44
-rw-r--r--MLEB/Translate/i18n/pagetranslation/pt-br.json162
-rw-r--r--MLEB/Translate/i18n/pagetranslation/pt.json202
-rw-r--r--MLEB/Translate/i18n/pagetranslation/qqq.json199
-rw-r--r--MLEB/Translate/i18n/pagetranslation/rm.json12
-rw-r--r--MLEB/Translate/i18n/pagetranslation/ro.json96
-rw-r--r--MLEB/Translate/i18n/pagetranslation/roa-tara.json78
-rw-r--r--MLEB/Translate/i18n/pagetranslation/ru.json211
-rw-r--r--MLEB/Translate/i18n/pagetranslation/rue.json30
-rw-r--r--MLEB/Translate/i18n/pagetranslation/sa.json8
-rw-r--r--MLEB/Translate/i18n/pagetranslation/sah.json29
-rw-r--r--MLEB/Translate/i18n/pagetranslation/saz.json9
-rw-r--r--MLEB/Translate/i18n/pagetranslation/sc.json9
-rw-r--r--MLEB/Translate/i18n/pagetranslation/scn.json9
-rw-r--r--MLEB/Translate/i18n/pagetranslation/sco.json147
-rw-r--r--MLEB/Translate/i18n/pagetranslation/si.json122
-rw-r--r--MLEB/Translate/i18n/pagetranslation/sk.json49
-rw-r--r--MLEB/Translate/i18n/pagetranslation/sl.json133
-rw-r--r--MLEB/Translate/i18n/pagetranslation/so.json8
-rw-r--r--MLEB/Translate/i18n/pagetranslation/sr-ec.json95
-rw-r--r--MLEB/Translate/i18n/pagetranslation/sr-el.json56
-rw-r--r--MLEB/Translate/i18n/pagetranslation/stq.json8
-rw-r--r--MLEB/Translate/i18n/pagetranslation/su.json18
-rw-r--r--MLEB/Translate/i18n/pagetranslation/sv.json208
-rw-r--r--MLEB/Translate/i18n/pagetranslation/sw.json15
-rw-r--r--MLEB/Translate/i18n/pagetranslation/ta.json94
-rw-r--r--MLEB/Translate/i18n/pagetranslation/te.json59
-rw-r--r--MLEB/Translate/i18n/pagetranslation/th.json46
-rw-r--r--MLEB/Translate/i18n/pagetranslation/tk.json8
-rw-r--r--MLEB/Translate/i18n/pagetranslation/tl.json143
-rw-r--r--MLEB/Translate/i18n/pagetranslation/tr.json74
-rw-r--r--MLEB/Translate/i18n/pagetranslation/tt-cyrl.json12
-rw-r--r--MLEB/Translate/i18n/pagetranslation/tzm.json20
-rw-r--r--MLEB/Translate/i18n/pagetranslation/ug-arab.json76
-rw-r--r--MLEB/Translate/i18n/pagetranslation/uk.json200
-rw-r--r--MLEB/Translate/i18n/pagetranslation/ur.json53
-rw-r--r--MLEB/Translate/i18n/pagetranslation/uz.json13
-rw-r--r--MLEB/Translate/i18n/pagetranslation/vec.json8
-rw-r--r--MLEB/Translate/i18n/pagetranslation/vep.json40
-rw-r--r--MLEB/Translate/i18n/pagetranslation/vi.json199
-rw-r--r--MLEB/Translate/i18n/pagetranslation/vo.json10
-rw-r--r--MLEB/Translate/i18n/pagetranslation/wuu.json4
-rw-r--r--MLEB/Translate/i18n/pagetranslation/yi.json124
-rw-r--r--MLEB/Translate/i18n/pagetranslation/zh-hans.json217
-rw-r--r--MLEB/Translate/i18n/pagetranslation/zh-hant.json201
-rw-r--r--MLEB/Translate/i18n/sandbox/af.json14
-rw-r--r--MLEB/Translate/i18n/sandbox/ast.json50
-rw-r--r--MLEB/Translate/i18n/sandbox/bg.json14
-rw-r--r--MLEB/Translate/i18n/sandbox/bn.json11
-rw-r--r--MLEB/Translate/i18n/sandbox/br.json14
-rw-r--r--MLEB/Translate/i18n/sandbox/ce.json41
-rw-r--r--MLEB/Translate/i18n/sandbox/cs.json13
-rw-r--r--MLEB/Translate/i18n/sandbox/cy.json30
-rw-r--r--MLEB/Translate/i18n/sandbox/de.json51
-rw-r--r--MLEB/Translate/i18n/sandbox/diq.json16
-rw-r--r--MLEB/Translate/i18n/sandbox/dsb.json51
-rw-r--r--MLEB/Translate/i18n/sandbox/en.json53
-rw-r--r--MLEB/Translate/i18n/sandbox/es.json51
-rw-r--r--MLEB/Translate/i18n/sandbox/et.json8
-rw-r--r--MLEB/Translate/i18n/sandbox/fa.json53
-rw-r--r--MLEB/Translate/i18n/sandbox/fi.json37
-rw-r--r--MLEB/Translate/i18n/sandbox/fr.json57
-rw-r--r--MLEB/Translate/i18n/sandbox/gl.json51
-rw-r--r--MLEB/Translate/i18n/sandbox/gu.json32
-rw-r--r--MLEB/Translate/i18n/sandbox/he.json50
-rw-r--r--MLEB/Translate/i18n/sandbox/hsb.json50
-rw-r--r--MLEB/Translate/i18n/sandbox/ia.json50
-rw-r--r--MLEB/Translate/i18n/sandbox/it.json51
-rw-r--r--MLEB/Translate/i18n/sandbox/ja.json46
-rw-r--r--MLEB/Translate/i18n/sandbox/ko.json54
-rw-r--r--MLEB/Translate/i18n/sandbox/ksh.json36
-rw-r--r--MLEB/Translate/i18n/sandbox/lb.json44
-rw-r--r--MLEB/Translate/i18n/sandbox/lrc.json16
-rw-r--r--MLEB/Translate/i18n/sandbox/lv.json12
-rw-r--r--MLEB/Translate/i18n/sandbox/mk.json50
-rw-r--r--MLEB/Translate/i18n/sandbox/mr.json9
-rw-r--r--MLEB/Translate/i18n/sandbox/ms.json50
-rw-r--r--MLEB/Translate/i18n/sandbox/ne.json10
-rw-r--r--MLEB/Translate/i18n/sandbox/nl.json53
-rw-r--r--MLEB/Translate/i18n/sandbox/oc.json11
-rw-r--r--MLEB/Translate/i18n/sandbox/pl.json33
-rw-r--r--MLEB/Translate/i18n/sandbox/ps.json23
-rw-r--r--MLEB/Translate/i18n/sandbox/pt-br.json8
-rw-r--r--MLEB/Translate/i18n/sandbox/pt.json51
-rw-r--r--MLEB/Translate/i18n/sandbox/qqq.json55
-rw-r--r--MLEB/Translate/i18n/sandbox/ro.json10
-rw-r--r--MLEB/Translate/i18n/sandbox/roa-tara.json22
-rw-r--r--MLEB/Translate/i18n/sandbox/ru.json51
-rw-r--r--MLEB/Translate/i18n/sandbox/sco.json48
-rw-r--r--MLEB/Translate/i18n/sandbox/sr-ec.json9
-rw-r--r--MLEB/Translate/i18n/sandbox/sv.json52
-rw-r--r--MLEB/Translate/i18n/sandbox/te.json9
-rw-r--r--MLEB/Translate/i18n/sandbox/tyv.json8
-rw-r--r--MLEB/Translate/i18n/sandbox/uk.json52
-rw-r--r--MLEB/Translate/i18n/sandbox/vi.json50
-rw-r--r--MLEB/Translate/i18n/sandbox/yi.json16
-rw-r--r--MLEB/Translate/i18n/sandbox/zh-hans.json55
-rw-r--r--MLEB/Translate/i18n/sandbox/zh-hant.json53
-rw-r--r--MLEB/Translate/i18n/search/ast.json21
-rw-r--r--MLEB/Translate/i18n/search/az.json17
-rw-r--r--MLEB/Translate/i18n/search/azb.json12
-rw-r--r--MLEB/Translate/i18n/search/be-tarask.json21
-rw-r--r--MLEB/Translate/i18n/search/bg.json15
-rw-r--r--MLEB/Translate/i18n/search/bn.json22
-rw-r--r--MLEB/Translate/i18n/search/br.json12
-rw-r--r--MLEB/Translate/i18n/search/ca.json21
-rw-r--r--MLEB/Translate/i18n/search/ce.json16
-rw-r--r--MLEB/Translate/i18n/search/cs.json22
-rw-r--r--MLEB/Translate/i18n/search/cu.json9
-rw-r--r--MLEB/Translate/i18n/search/da.json21
-rw-r--r--MLEB/Translate/i18n/search/de.json21
-rw-r--r--MLEB/Translate/i18n/search/diq.json22
-rw-r--r--MLEB/Translate/i18n/search/dsb.json21
-rw-r--r--MLEB/Translate/i18n/search/el.json21
-rw-r--r--MLEB/Translate/i18n/search/en.json21
-rw-r--r--MLEB/Translate/i18n/search/es.json22
-rw-r--r--MLEB/Translate/i18n/search/et.json21
-rw-r--r--MLEB/Translate/i18n/search/eu.json10
-rw-r--r--MLEB/Translate/i18n/search/fa.json21
-rw-r--r--MLEB/Translate/i18n/search/fi.json21
-rw-r--r--MLEB/Translate/i18n/search/fo.json21
-rw-r--r--MLEB/Translate/i18n/search/fr.json21
-rw-r--r--MLEB/Translate/i18n/search/fy.json9
-rw-r--r--MLEB/Translate/i18n/search/gl.json21
-rw-r--r--MLEB/Translate/i18n/search/gu.json21
-rw-r--r--MLEB/Translate/i18n/search/he.json21
-rw-r--r--MLEB/Translate/i18n/search/hsb.json21
-rw-r--r--MLEB/Translate/i18n/search/ia.json21
-rw-r--r--MLEB/Translate/i18n/search/ilo.json21
-rw-r--r--MLEB/Translate/i18n/search/it.json21
-rw-r--r--MLEB/Translate/i18n/search/ja.json21
-rw-r--r--MLEB/Translate/i18n/search/ka.json14
-rw-r--r--MLEB/Translate/i18n/search/kn.json12
-rw-r--r--MLEB/Translate/i18n/search/ko.json21
-rw-r--r--MLEB/Translate/i18n/search/krc.json8
-rw-r--r--MLEB/Translate/i18n/search/ksh.json21
-rw-r--r--MLEB/Translate/i18n/search/ku-latn.json15
-rw-r--r--MLEB/Translate/i18n/search/lb.json21
-rw-r--r--MLEB/Translate/i18n/search/lrc.json18
-rw-r--r--MLEB/Translate/i18n/search/lv.json15
-rw-r--r--MLEB/Translate/i18n/search/lzh.json8
-rw-r--r--MLEB/Translate/i18n/search/mk.json21
-rw-r--r--MLEB/Translate/i18n/search/mr.json21
-rw-r--r--MLEB/Translate/i18n/search/ms.json21
-rw-r--r--MLEB/Translate/i18n/search/nl.json21
-rw-r--r--MLEB/Translate/i18n/search/nn.json20
-rw-r--r--MLEB/Translate/i18n/search/oc.json14
-rw-r--r--MLEB/Translate/i18n/search/pl.json22
-rw-r--r--MLEB/Translate/i18n/search/pms.json18
-rw-r--r--MLEB/Translate/i18n/search/pt-br.json8
-rw-r--r--MLEB/Translate/i18n/search/pt.json23
-rw-r--r--MLEB/Translate/i18n/search/qqq.json22
-rw-r--r--MLEB/Translate/i18n/search/qu.json8
-rw-r--r--MLEB/Translate/i18n/search/ro.json21
-rw-r--r--MLEB/Translate/i18n/search/roa-tara.json21
-rw-r--r--MLEB/Translate/i18n/search/ru.json22
-rw-r--r--MLEB/Translate/i18n/search/rue.json8
-rw-r--r--MLEB/Translate/i18n/search/sco.json20
-rw-r--r--MLEB/Translate/i18n/search/sk.json11
-rw-r--r--MLEB/Translate/i18n/search/sr-ec.json22
-rw-r--r--MLEB/Translate/i18n/search/sv.json21
-rw-r--r--MLEB/Translate/i18n/search/tr.json23
-rw-r--r--MLEB/Translate/i18n/search/uk.json22
-rw-r--r--MLEB/Translate/i18n/search/uz.json8
-rw-r--r--MLEB/Translate/i18n/search/vi.json21
-rw-r--r--MLEB/Translate/i18n/search/yi.json21
-rw-r--r--MLEB/Translate/i18n/search/zh-hans.json24
-rw-r--r--MLEB/Translate/i18n/search/zh-hant.json22
-rw-r--r--MLEB/Translate/insertables/Insertable.php45
-rw-r--r--MLEB/Translate/insertables/InsertablesSuggester.php17
-rw-r--r--MLEB/Translate/insertables/MediaWikiInsertablesSuggester.php38
-rw-r--r--MLEB/Translate/insertables/TranslatablePageInsertablesSuggester.php36
-rw-r--r--MLEB/Translate/libs/spyc/COPYING21
-rw-r--r--MLEB/Translate/libs/spyc/spyc.php1148
-rw-r--r--MLEB/Translate/messagegroups/AggregateMessageGroup.php178
-rw-r--r--MLEB/Translate/messagegroups/FileBasedMessageGroup.php149
-rw-r--r--MLEB/Translate/messagegroups/MediaWikiExtensionMessageGroup.php48
-rw-r--r--MLEB/Translate/messagegroups/MessageGroup.php171
-rw-r--r--MLEB/Translate/messagegroups/MessageGroupBase.php420
-rw-r--r--MLEB/Translate/messagegroups/MessageGroupOld.php396
-rw-r--r--MLEB/Translate/messagegroups/RecentAdditionsMessageGroup.php61
-rw-r--r--MLEB/Translate/messagegroups/RecentMessageGroup.php147
-rw-r--r--MLEB/Translate/messagegroups/SandboxMessageGroup.php173
-rw-r--r--MLEB/Translate/messagegroups/WikiMessageGroup.php89
-rw-r--r--MLEB/Translate/messagegroups/WikiPageMessageGroup.php155
-rw-r--r--MLEB/Translate/messagegroups/WorkflowStatesMessageGroup.php77
-rw-r--r--MLEB/Translate/resources/css/ext.translate.css72
-rw-r--r--MLEB/Translate/resources/css/ext.translate.dropdownmenu.css17
-rw-r--r--MLEB/Translate/resources/css/ext.translate.editor.css420
-rw-r--r--MLEB/Translate/resources/css/ext.translate.groupselector.css216
-rw-r--r--MLEB/Translate/resources/css/ext.translate.helplink.css18
-rw-r--r--MLEB/Translate/resources/css/ext.translate.loader.css45
-rw-r--r--MLEB/Translate/resources/css/ext.translate.messagetable.css386
-rw-r--r--MLEB/Translate/resources/css/ext.translate.messagewebimporter.css3
-rw-r--r--MLEB/Translate/resources/css/ext.translate.navitoggle.css64
-rw-r--r--MLEB/Translate/resources/css/ext.translate.pagemode.css117
-rw-r--r--MLEB/Translate/resources/css/ext.translate.proofread.css185
-rw-r--r--MLEB/Translate/resources/css/ext.translate.quickedit.css159
-rw-r--r--MLEB/Translate/resources/css/ext.translate.special.aggregategroups.css40
-rw-r--r--MLEB/Translate/resources/css/ext.translate.special.languagestats.css21
-rw-r--r--MLEB/Translate/resources/css/ext.translate.special.managegroups.css20
-rw-r--r--MLEB/Translate/resources/css/ext.translate.special.managetranslatorsandbox.css278
-rw-r--r--MLEB/Translate/resources/css/ext.translate.special.pagemigration.css65
-rw-r--r--MLEB/Translate/resources/css/ext.translate.special.pagetranslation.css27
-rw-r--r--MLEB/Translate/resources/css/ext.translate.special.searchtranslations.css150
-rw-r--r--MLEB/Translate/resources/css/ext.translate.special.supportedlanguages.css20
-rw-r--r--MLEB/Translate/resources/css/ext.translate.special.translate.css171
-rw-r--r--MLEB/Translate/resources/css/ext.translate.special.translationstash.css99
-rw-r--r--MLEB/Translate/resources/css/ext.translate.statsbar.css41
-rw-r--r--MLEB/Translate/resources/css/ext.translate.tabgroup.css8
-rw-r--r--MLEB/Translate/resources/css/ext.translate.workflowselector.css44
-rw-r--r--MLEB/Translate/resources/images/action-edit.pngbin0 -> 393 bytes
-rw-r--r--MLEB/Translate/resources/images/action-edit.svg36
-rw-r--r--MLEB/Translate/resources/images/add.pngbin0 -> 816 bytes
-rw-r--r--MLEB/Translate/resources/images/check-small.pngbin0 -> 366 bytes
-rw-r--r--MLEB/Translate/resources/images/check-small.svg26
-rw-r--r--MLEB/Translate/resources/images/check-sprite-ltr.pngbin0 -> 5906 bytes
-rw-r--r--MLEB/Translate/resources/images/check-sprite-ltr.svg89
-rw-r--r--MLEB/Translate/resources/images/check-sprite-rtl.pngbin0 -> 6168 bytes
-rw-r--r--MLEB/Translate/resources/images/check-sprite-rtl.svg84
-rw-r--r--MLEB/Translate/resources/images/close.pngbin0 -> 180 bytes
-rw-r--r--MLEB/Translate/resources/images/close.svg40
-rw-r--r--MLEB/Translate/resources/images/contract-ltr.pngbin0 -> 390 bytes
-rw-r--r--MLEB/Translate/resources/images/contract-ltr.svg51
-rw-r--r--MLEB/Translate/resources/images/contract-rtl.pngbin0 -> 390 bytes
-rw-r--r--MLEB/Translate/resources/images/contract-rtl.svg53
-rw-r--r--MLEB/Translate/resources/images/edit-mark.pngbin0 -> 480 bytes
-rw-r--r--MLEB/Translate/resources/images/edit-mark.svg30
-rw-r--r--MLEB/Translate/resources/images/expand-ltr.pngbin0 -> 425 bytes
-rw-r--r--MLEB/Translate/resources/images/expand-ltr.svg51
-rw-r--r--MLEB/Translate/resources/images/expand-rtl.pngbin0 -> 423 bytes
-rw-r--r--MLEB/Translate/resources/images/expand-rtl.svg53
-rw-r--r--MLEB/Translate/resources/images/help.pngbin0 -> 428 bytes
-rw-r--r--MLEB/Translate/resources/images/label-clock.pngbin0 -> 364 bytes
-rw-r--r--MLEB/Translate/resources/images/label-clock.svg28
-rw-r--r--MLEB/Translate/resources/images/label-flag.pngbin0 -> 233 bytes
-rw-r--r--MLEB/Translate/resources/images/label-flag.svg29
-rw-r--r--MLEB/Translate/resources/images/label-page-tick.pngbin0 -> 441 bytes
-rw-r--r--MLEB/Translate/resources/images/label-page-tick.svg40
-rw-r--r--MLEB/Translate/resources/images/label-page.pngbin0 -> 300 bytes
-rw-r--r--MLEB/Translate/resources/images/label-page.svg42
-rw-r--r--MLEB/Translate/resources/images/label-pen.pngbin0 -> 362 bytes
-rw-r--r--MLEB/Translate/resources/images/label-pen.svg29
-rw-r--r--MLEB/Translate/resources/images/label-tick.pngbin0 -> 412 bytes
-rw-r--r--MLEB/Translate/resources/images/label-tick.svg29
-rw-r--r--MLEB/Translate/resources/images/loading.gifbin0 -> 10771 bytes
-rw-r--r--MLEB/Translate/resources/images/loading.svg39
-rw-r--r--MLEB/Translate/resources/images/outdated-ltr.pngbin0 -> 743 bytes
-rw-r--r--MLEB/Translate/resources/images/outdated-ltr.svg32
-rw-r--r--MLEB/Translate/resources/images/outdated-rtl.pngbin0 -> 971 bytes
-rw-r--r--MLEB/Translate/resources/images/outdated-rtl.svg32
-rw-r--r--MLEB/Translate/resources/images/paste.pngbin0 -> 3271 bytes
-rw-r--r--MLEB/Translate/resources/images/paste.svg17
-rw-r--r--MLEB/Translate/resources/images/plus_darkgray.pngbin0 -> 733 bytes
-rw-r--r--MLEB/Translate/resources/images/plus_darkgray.svg1
-rw-r--r--MLEB/Translate/resources/images/prog-1.pngbin0 -> 236 bytes
-rw-r--r--MLEB/Translate/resources/images/prog-2.pngbin0 -> 317 bytes
-rw-r--r--MLEB/Translate/resources/images/prog-3.pngbin0 -> 315 bytes
-rw-r--r--MLEB/Translate/resources/images/prog-4.pngbin0 -> 311 bytes
-rw-r--r--MLEB/Translate/resources/images/prog-5.pngbin0 -> 239 bytes
-rw-r--r--MLEB/Translate/resources/images/project.pngbin0 -> 1016 bytes
-rw-r--r--MLEB/Translate/resources/images/project.svg66
-rw-r--r--MLEB/Translate/resources/images/remove.pngbin0 -> 787 bytes
-rw-r--r--MLEB/Translate/resources/images/search.pngbin0 -> 664 bytes
-rw-r--r--MLEB/Translate/resources/images/search.svg32
-rw-r--r--MLEB/Translate/resources/images/switch.pngbin0 -> 6415 bytes
-rw-r--r--MLEB/Translate/resources/images/switch.svg1
-rw-r--r--MLEB/Translate/resources/images/translate-ltr.pngbin0 -> 586 bytes
-rw-r--r--MLEB/Translate/resources/images/translate-ltr.svg29
-rw-r--r--MLEB/Translate/resources/images/translate-rtl.pngbin0 -> 723 bytes
-rw-r--r--MLEB/Translate/resources/images/translate-rtl.svg29
-rw-r--r--MLEB/Translate/resources/images/trash_darkgray.pngbin0 -> 1037 bytes
-rw-r--r--MLEB/Translate/resources/images/trash_darkgray.svg1
-rw-r--r--MLEB/Translate/resources/images/user-small.pngbin0 -> 304 bytes
-rw-r--r--MLEB/Translate/resources/images/user-small.svg9
-rw-r--r--MLEB/Translate/resources/images/view-list-hi.pngbin0 -> 239 bytes
-rw-r--r--MLEB/Translate/resources/images/view-list-hi.svg50
-rw-r--r--MLEB/Translate/resources/images/view-list.pngbin0 -> 239 bytes
-rw-r--r--MLEB/Translate/resources/images/view-list.svg53
-rw-r--r--MLEB/Translate/resources/images/view-page-hi.pngbin0 -> 271 bytes
-rw-r--r--MLEB/Translate/resources/images/view-page-hi.svg40
-rw-r--r--MLEB/Translate/resources/images/view-page.pngbin0 -> 271 bytes
-rw-r--r--MLEB/Translate/resources/images/view-page.svg47
-rw-r--r--MLEB/Translate/resources/images/view-proofread-hi.pngbin0 -> 336 bytes
-rw-r--r--MLEB/Translate/resources/images/view-proofread-hi.svg36
-rw-r--r--MLEB/Translate/resources/images/view-proofread.pngbin0 -> 415 bytes
-rw-r--r--MLEB/Translate/resources/images/view-proofread.svg36
-rw-r--r--MLEB/Translate/resources/js/ext.translate.base.js184
-rw-r--r--MLEB/Translate/resources/js/ext.translate.dropdownmenu.js12
-rw-r--r--MLEB/Translate/resources/js/ext.translate.editor.helpers.js528
-rw-r--r--MLEB/Translate/resources/js/ext.translate.editor.js1169
-rw-r--r--MLEB/Translate/resources/js/ext.translate.editor.shortcuts.js68
-rw-r--r--MLEB/Translate/resources/js/ext.translate.groupselector.js627
-rw-r--r--MLEB/Translate/resources/js/ext.translate.hooks.js38
-rw-r--r--MLEB/Translate/resources/js/ext.translate.messagetable.js823
-rw-r--r--MLEB/Translate/resources/js/ext.translate.multiselectautocomplete.js87
-rw-r--r--MLEB/Translate/resources/js/ext.translate.navitoggle.js47
-rw-r--r--MLEB/Translate/resources/js/ext.translate.pagemode.js126
-rw-r--r--MLEB/Translate/resources/js/ext.translate.pagetranslation.uls.js21
-rw-r--r--MLEB/Translate/resources/js/ext.translate.parsers.js80
-rw-r--r--MLEB/Translate/resources/js/ext.translate.proofread.js267
-rw-r--r--MLEB/Translate/resources/js/ext.translate.quickedit.js394
-rw-r--r--MLEB/Translate/resources/js/ext.translate.selecttoinput.js27
-rw-r--r--MLEB/Translate/resources/js/ext.translate.special.aggregategroups.js349
-rw-r--r--MLEB/Translate/resources/js/ext.translate.special.importtranslations.js20
-rw-r--r--MLEB/Translate/resources/js/ext.translate.special.languagestats.js156
-rw-r--r--MLEB/Translate/resources/js/ext.translate.special.managetranslatorsandbox.js742
-rw-r--r--MLEB/Translate/resources/js/ext.translate.special.pagemigration.js470
-rw-r--r--MLEB/Translate/resources/js/ext.translate.special.pagepreparation.js320
-rw-r--r--MLEB/Translate/resources/js/ext.translate.special.pagetranslation.js8
-rw-r--r--MLEB/Translate/resources/js/ext.translate.special.searchtranslations.js271
-rw-r--r--MLEB/Translate/resources/js/ext.translate.special.translate.js412
-rw-r--r--MLEB/Translate/resources/js/ext.translate.special.translationstash.js249
-rw-r--r--MLEB/Translate/resources/js/ext.translate.special.translationstats.js36
-rw-r--r--MLEB/Translate/resources/js/ext.translate.statsbar.js186
-rw-r--r--MLEB/Translate/resources/js/ext.translate.storage.js39
-rw-r--r--MLEB/Translate/resources/js/ext.translate.translationstashstorage.js51
-rw-r--r--MLEB/Translate/resources/js/ext.translate.workflowselector.js170
-rw-r--r--MLEB/Translate/resources/js/jquery.ajaxdispatcher.js59
-rw-r--r--MLEB/Translate/resources/js/jquery.autosize.js243
-rw-r--r--MLEB/Translate/resources/js/jquery.textchange.js43
-rw-r--r--MLEB/Translate/resources/js/jquery.ui.position.js498
-rw-r--r--MLEB/Translate/scripts/TranslateStatsOutput.php25
-rw-r--r--MLEB/Translate/scripts/characterEditStats.php131
-rw-r--r--MLEB/Translate/scripts/create-language-models.php231
-rw-r--r--MLEB/Translate/scripts/createCheckIndex.php143
-rw-r--r--MLEB/Translate/scripts/createMessageIndex.php34
-rw-r--r--MLEB/Translate/scripts/export.php300
-rw-r--r--MLEB/Translate/scripts/fallbacks-graph.php83
-rw-r--r--MLEB/Translate/scripts/fuzzy.php249
-rw-r--r--MLEB/Translate/scripts/groupStatistics.php681
-rw-r--r--MLEB/Translate/scripts/languageeditstats.php111
-rw-r--r--MLEB/Translate/scripts/magic-export.php299
-rw-r--r--MLEB/Translate/scripts/migrate-schema2.php71
-rw-r--r--MLEB/Translate/scripts/mwcore-export.php131
-rw-r--r--MLEB/Translate/scripts/plural-comparison.php159
-rw-r--r--MLEB/Translate/scripts/poimport.php322
-rw-r--r--MLEB/Translate/scripts/populateFuzzy.php86
-rw-r--r--MLEB/Translate/scripts/processMessageChanges.php117
-rw-r--r--MLEB/Translate/scripts/refresh-translatable-pages.php51
-rw-r--r--MLEB/Translate/scripts/sync-group.php485
-rw-r--r--MLEB/Translate/scripts/ttmserver-export.php210
-rw-r--r--MLEB/Translate/scripts/yaml-tests.php96
-rw-r--r--MLEB/Translate/specials/SpecialAggregateGroups.php272
-rw-r--r--MLEB/Translate/specials/SpecialImportTranslations.php237
-rw-r--r--MLEB/Translate/specials/SpecialLanguageStats.php532
-rw-r--r--MLEB/Translate/specials/SpecialMagic.php236
-rw-r--r--MLEB/Translate/specials/SpecialManageGroups.php364
-rw-r--r--MLEB/Translate/specials/SpecialManageTranslatorSandbox.php317
-rw-r--r--MLEB/Translate/specials/SpecialMessageGroupStats.php316
-rw-r--r--MLEB/Translate/specials/SpecialMyLanguage.php78
-rw-r--r--MLEB/Translate/specials/SpecialPageMigration.php58
-rw-r--r--MLEB/Translate/specials/SpecialPagePreparation.php53
-rw-r--r--MLEB/Translate/specials/SpecialSearchTranslations.php325
-rw-r--r--MLEB/Translate/specials/SpecialSupportedLanguages.php455
-rw-r--r--MLEB/Translate/specials/SpecialTranslate.php991
-rw-r--r--MLEB/Translate/specials/SpecialTranslationStash.php203
-rw-r--r--MLEB/Translate/specials/SpecialTranslationStats.php1114
-rw-r--r--MLEB/Translate/specials/SpecialTranslations.php309
-rw-r--r--MLEB/Translate/specials/TranslateSpecialPage.php37
-rw-r--r--MLEB/Translate/sql/revtag.sql19
-rw-r--r--MLEB/Translate/sql/translate_groupreviews.sql13
-rw-r--r--MLEB/Translate/sql/translate_groupstats-indexchange.sql1
-rw-r--r--MLEB/Translate/sql/translate_groupstats-proofread.sql2
-rw-r--r--MLEB/Translate/sql/translate_groupstats.sql10
-rw-r--r--MLEB/Translate/sql/translate_messageindex.sql7
-rw-r--r--MLEB/Translate/sql/translate_metadata.sql8
-rw-r--r--MLEB/Translate/sql/translate_reviews.sql13
-rw-r--r--MLEB/Translate/sql/translate_sections-indexchange.sql1
-rw-r--r--MLEB/Translate/sql/translate_sections-indexchange2.sql1
-rw-r--r--MLEB/Translate/sql/translate_sections-trs_order.patch.sql2
-rw-r--r--MLEB/Translate/sql/translate_sections.sql20
-rw-r--r--MLEB/Translate/sql/translate_stash.sql10
-rw-r--r--MLEB/Translate/sql/translate_tm.sql38
-rw-r--r--MLEB/Translate/stash/StashedTranslation.php46
-rw-r--r--MLEB/Translate/stash/TranslationStashStorage.php77
-rw-r--r--MLEB/Translate/stringmangler/StringMangler.php50
-rw-r--r--MLEB/Translate/stringmangler/StringMatcher.php221
-rw-r--r--MLEB/Translate/tag/PageTranslationHooks.php938
-rw-r--r--MLEB/Translate/tag/PageTranslationLogFormatter.php95
-rw-r--r--MLEB/Translate/tag/SpecialPageTranslation.php978
-rw-r--r--MLEB/Translate/tag/SpecialPageTranslationDeletePage.php466
-rw-r--r--MLEB/Translate/tag/SpecialPageTranslationMovePage.php682
-rw-r--r--MLEB/Translate/tag/TPException.php36
-rw-r--r--MLEB/Translate/tag/TPParse.php231
-rw-r--r--MLEB/Translate/tag/TPSection.php102
-rw-r--r--MLEB/Translate/tag/TranslatablePage.php881
-rw-r--r--MLEB/Translate/tag/TranslateDeleteJob.php152
-rw-r--r--MLEB/Translate/tag/TranslateMoveJob.php213
-rw-r--r--MLEB/Translate/tag/TranslateRenderJob.php106
-rw-r--r--MLEB/Translate/tests/browser/README.md1
-rw-r--r--MLEB/Translate/tests/browser/features/manage_translator_sandbox.feature287
-rw-r--r--MLEB/Translate/tests/browser/features/special_translate.feature25
-rw-r--r--MLEB/Translate/tests/browser/features/step_definitions/manage_translator_sandbox_steps.rb214
-rw-r--r--MLEB/Translate/tests/browser/features/step_definitions/special_translate_steps.rb23
-rw-r--r--MLEB/Translate/tests/browser/features/step_definitions/translation_stash_steps.rb68
-rw-r--r--MLEB/Translate/tests/browser/features/support/env.rb1
-rw-r--r--MLEB/Translate/tests/browser/features/support/hooks.rb3
-rw-r--r--MLEB/Translate/tests/browser/features/support/pages/manage_translator_sandbox_page.rb144
-rw-r--r--MLEB/Translate/tests/browser/features/support/pages/stash_page.rb34
-rw-r--r--MLEB/Translate/tests/browser/features/support/pages/translate_page.rb9
-rw-r--r--MLEB/Translate/tests/browser/features/support/pages/user_page.rb13
-rw-r--r--MLEB/Translate/tests/browser/features/translation_stash.feature44
-rw-r--r--MLEB/Translate/tests/generateRandomSandboxData.php112
-rw-r--r--MLEB/Translate/tests/parser/translateParserTests.txt34
-rw-r--r--MLEB/Translate/tests/phpunit/BlackListTest.php92
-rw-r--r--MLEB/Translate/tests/phpunit/HookDocTest.php147
-rw-r--r--MLEB/Translate/tests/phpunit/Makefile12
-rw-r--r--MLEB/Translate/tests/phpunit/MediaWikiExtensionTest.php40
-rw-r--r--MLEB/Translate/tests/phpunit/MediaWikiMessageCheckerTest.php121
-rw-r--r--MLEB/Translate/tests/phpunit/MessageCollectionTest.php88
-rw-r--r--MLEB/Translate/tests/phpunit/MessageGroupBaseTest.php95
-rw-r--r--MLEB/Translate/tests/phpunit/MessageGroupStatesUpdaterJobTest.php218
-rw-r--r--MLEB/Translate/tests/phpunit/MessageGroupsTest.php88
-rw-r--r--MLEB/Translate/tests/phpunit/MessageIndexRebuildJobTest.php53
-rw-r--r--MLEB/Translate/tests/phpunit/MessageIndexTest.php113
-rw-r--r--MLEB/Translate/tests/phpunit/MockFileBasedMessageGroup.php23
-rw-r--r--MLEB/Translate/tests/phpunit/MockMessageCollectionForExport.php41
-rw-r--r--MLEB/Translate/tests/phpunit/MockSuperUser.php24
-rw-r--r--MLEB/Translate/tests/phpunit/MockWikiMessageGroup.php22
-rw-r--r--MLEB/Translate/tests/phpunit/PageTranslationParserTest.php67
-rw-r--r--MLEB/Translate/tests/phpunit/PageTranslationTaggingTest.php126
-rw-r--r--MLEB/Translate/tests/phpunit/ResourcesOrderTest.php29
-rw-r--r--MLEB/Translate/tests/phpunit/SolrTTMServerTest.php179
-rw-r--r--MLEB/Translate/tests/phpunit/SpecialPagesTest.php79
-rw-r--r--MLEB/Translate/tests/phpunit/StringMatcherTest.php101
-rw-r--r--MLEB/Translate/tests/phpunit/TPParseTest.php61
-rw-r--r--MLEB/Translate/tests/phpunit/TTMServerTest.php83
-rw-r--r--MLEB/Translate/tests/phpunit/TranslateHooksTest.php93
-rw-r--r--MLEB/Translate/tests/phpunit/TranslateSandboxTest.php103
-rw-r--r--MLEB/Translate/tests/phpunit/TranslationFuzzyUpdaterTest.php80
-rw-r--r--MLEB/Translate/tests/phpunit/TranslationStashStorageTest.php39
-rw-r--r--MLEB/Translate/tests/phpunit/api/ApiGroupReviewTest.php37
-rw-r--r--MLEB/Translate/tests/phpunit/api/ApiQueryMessageGroupsTest.php162
-rw-r--r--MLEB/Translate/tests/phpunit/api/ApiTokensTest.php51
-rw-r--r--MLEB/Translate/tests/phpunit/api/ApiTranslationReviewTest.php106
-rw-r--r--MLEB/Translate/tests/phpunit/data/AppleFFSTest1.strings30
-rw-r--r--MLEB/Translate/tests/phpunit/data/Example-result.i18n.php55
-rw-r--r--MLEB/Translate/tests/phpunit/data/Example.i18n.php47
-rw-r--r--MLEB/Translate/tests/phpunit/data/IniFFSTest1.ini8
-rw-r--r--MLEB/Translate/tests/phpunit/data/IniFFSTest2.ini6
-rw-r--r--MLEB/Translate/tests/phpunit/data/MediaWikiExtensionTest-conf1.yaml26
-rw-r--r--MLEB/Translate/tests/phpunit/data/MediaWikiExtensionTest-conf2.yaml45
-rw-r--r--MLEB/Translate/tests/phpunit/data/MediaWikiExtensionTest-conf3.yaml26
-rw-r--r--MLEB/Translate/tests/phpunit/data/MediaWikiExtensionTest-conf4.yaml26
-rw-r--r--MLEB/Translate/tests/phpunit/data/MixedSourceLanguageGroups.yaml31
-rw-r--r--MLEB/Translate/tests/phpunit/data/ParentGroups.yaml95
-rw-r--r--MLEB/Translate/tests/phpunit/data/jsontest_fi.json7
-rw-r--r--MLEB/Translate/tests/phpunit/data/mediawiki-extensions.txt17
-rw-r--r--MLEB/Translate/tests/phpunit/data/minimal.xlf19
-rw-r--r--MLEB/Translate/tests/phpunit/data/pythontest.py13
-rw-r--r--MLEB/Translate/tests/phpunit/ffs/AndroidXmlFFSTest.php91
-rw-r--r--MLEB/Translate/tests/phpunit/ffs/AppleFFSTest.php112
-rw-r--r--MLEB/Translate/tests/phpunit/ffs/DtdFFSTest.php54
-rw-r--r--MLEB/Translate/tests/phpunit/ffs/GettextFFSTest.php158
-rw-r--r--MLEB/Translate/tests/phpunit/ffs/IniFFSTest.php66
-rw-r--r--MLEB/Translate/tests/phpunit/ffs/JavaFFSTest.php91
-rw-r--r--MLEB/Translate/tests/phpunit/ffs/JsonFFSTest.php144
-rw-r--r--MLEB/Translate/tests/phpunit/ffs/MediaWikiExtensionFFSTest.php110
-rw-r--r--MLEB/Translate/tests/phpunit/ffs/RubyYamlFFSTest.php125
-rw-r--r--MLEB/Translate/tests/phpunit/ffs/XliffFFSTest.php48
-rw-r--r--MLEB/Translate/tests/phpunit/insertables/MediaWikiInsertablesSuggesterTest.php35
-rw-r--r--MLEB/Translate/tests/phpunit/insertables/TranslatablePageInsertablesSuggesterTest.php38
-rw-r--r--MLEB/Translate/tests/phpunit/messageindexdata.ser1
-rw-r--r--MLEB/Translate/tests/phpunit/pagetranslation/FailDoubleOpen.ptfile3
-rw-r--r--MLEB/Translate/tests/phpunit/pagetranslation/FailEmptySection.ptfile4
-rw-r--r--MLEB/Translate/tests/phpunit/pagetranslation/FailMultipleSectionMarkers.ptfile5
-rw-r--r--MLEB/Translate/tests/phpunit/pagetranslation/FailNotAtomic.ptfile5
-rw-r--r--MLEB/Translate/tests/phpunit/pagetranslation/FailSectionMarkerPlace.ptfile3
-rw-r--r--MLEB/Translate/tests/phpunit/pagetranslation/FailTags.ptfile7
-rw-r--r--MLEB/Translate/tests/phpunit/pagetranslation/FailTags2.ptfile10
-rw-r--r--MLEB/Translate/tests/phpunit/pagetranslation/FailUnclosed.ptfile2
-rw-r--r--MLEB/Translate/tests/phpunit/pagetranslation/HeaderSection.ptfile7
-rw-r--r--MLEB/Translate/tests/phpunit/pagetranslation/HeaderSection.ptsource7
-rw-r--r--MLEB/Translate/tests/phpunit/pagetranslation/HeaderSection.pttarget4
-rw-r--r--MLEB/Translate/tests/phpunit/pagetranslation/Inline.ptfile1
-rw-r--r--MLEB/Translate/tests/phpunit/pagetranslation/Inline.pttarget1
-rw-r--r--MLEB/Translate/tests/phpunit/pagetranslation/LoneHeader.ptfile5
-rw-r--r--MLEB/Translate/tests/phpunit/pagetranslation/LoneHeader.ptsource6
-rw-r--r--MLEB/Translate/tests/phpunit/pagetranslation/Nowiki.ptfile3
-rw-r--r--MLEB/Translate/tests/phpunit/pagetranslation/Nowiki.pttarget3
-rw-r--r--MLEB/Translate/tests/phpunit/pagetranslation/NowikiInside.ptfile4
-rw-r--r--MLEB/Translate/tests/phpunit/pagetranslation/NowikiInside.pttarget3
-rw-r--r--MLEB/Translate/tests/phpunit/pagetranslation/NowikiOnly.ptfile1
-rw-r--r--MLEB/Translate/tests/phpunit/pagetranslation/NowikiOnly.pttest7
-rw-r--r--MLEB/Translate/tests/phpunit/pagetranslation/Simple.ptfile3
-rw-r--r--MLEB/Translate/tests/phpunit/pagetranslation/Simple.ptsource4
-rw-r--r--MLEB/Translate/tests/phpunit/pagetranslation/Simple.pttarget1
-rw-r--r--MLEB/Translate/tests/phpunit/pagetranslation/Simple.pttest3
-rw-r--r--MLEB/Translate/tests/phpunit/pagetranslation/SimpleWithMarker.ptfile4
-rw-r--r--MLEB/Translate/tests/phpunit/pagetranslation/SimpleWithMarker.pttarget1
-rw-r--r--MLEB/Translate/tests/phpunit/pagetranslation/Variables.ptfile6
-rw-r--r--MLEB/Translate/tests/phpunit/pagetranslation/Variables.pttarget4
-rw-r--r--MLEB/Translate/tests/phpunit/pagetranslation/Whitespace.ptfile17
-rw-r--r--MLEB/Translate/tests/phpunit/pagetranslation/Whitespace.pttarget14
-rw-r--r--MLEB/Translate/tests/qunit/ext.translate.parsers.test.js32
-rw-r--r--MLEB/Translate/tests/qunit/ext.translate.special.pagemigration.test.js102
-rw-r--r--MLEB/Translate/translationaids/CurrentTranslationAid.php38
-rw-r--r--MLEB/Translate/translationaids/DocumentationAid.php35
-rw-r--r--MLEB/Translate/translationaids/GettextDocumentationAid.php70
-rw-r--r--MLEB/Translate/translationaids/InOtherLanguagesAid.php81
-rw-r--r--MLEB/Translate/translationaids/InsertablesAid.php56
-rw-r--r--MLEB/Translate/translationaids/MachineTranslationAid.php42
-rw-r--r--MLEB/Translate/translationaids/MessageDefinitionAid.php27
-rw-r--r--MLEB/Translate/translationaids/SupportAid.php39
-rw-r--r--MLEB/Translate/translationaids/TTMServerAid.php57
-rw-r--r--MLEB/Translate/translationaids/TranslationAid.php152
-rw-r--r--MLEB/Translate/translationaids/UnsupportedTranslationAid.php21
-rw-r--r--MLEB/Translate/translationaids/UpdatedDefinitionAid.php86
-rw-r--r--MLEB/Translate/ttmserver/DatabaseTTMServer.php287
-rw-r--r--MLEB/Translate/ttmserver/ElasticSearchTTMServer.php513
-rw-r--r--MLEB/Translate/ttmserver/Exceptions.php4
-rw-r--r--MLEB/Translate/ttmserver/FakeTTMServer.php52
-rw-r--r--MLEB/Translate/ttmserver/Interfaces.php129
-rw-r--r--MLEB/Translate/ttmserver/RemoteTTMServer.php32
-rw-r--r--MLEB/Translate/ttmserver/SolrTTMServer.php440
-rw-r--r--MLEB/Translate/ttmserver/TTMServer.php154
-rw-r--r--MLEB/Translate/ttmserver/TTMServerMessageUpdateJob.php45
-rw-r--r--MLEB/Translate/ttmserver/schema.xml45
-rw-r--r--MLEB/Translate/utils/ExternalMessageSourceStateComparator.php264
-rw-r--r--MLEB/Translate/utils/Font.php139
-rw-r--r--MLEB/Translate/utils/FuzzyBot.php30
-rw-r--r--MLEB/Translate/utils/HTMLJsSelectToInputField.php85
-rw-r--r--MLEB/Translate/utils/JsSelectToInput.php126
-rw-r--r--MLEB/Translate/utils/MemProfile.php63
-rw-r--r--MLEB/Translate/utils/MessageGroupCache.php282
-rw-r--r--MLEB/Translate/utils/MessageGroupStates.php40
-rw-r--r--MLEB/Translate/utils/MessageGroupStatesUpdaterJob.php139
-rw-r--r--MLEB/Translate/utils/MessageGroupStats.php471
-rw-r--r--MLEB/Translate/utils/MessageHandle.php244
-rw-r--r--MLEB/Translate/utils/MessageIndex.php526
-rw-r--r--MLEB/Translate/utils/MessageIndexRebuildJob.php53
-rw-r--r--MLEB/Translate/utils/MessageTable.php418
-rw-r--r--MLEB/Translate/utils/MessageUpdateJob.php91
-rw-r--r--MLEB/Translate/utils/MessageWebImporter.php577
-rw-r--r--MLEB/Translate/utils/RcFilter.php91
-rw-r--r--MLEB/Translate/utils/ResourceLoader.php29
-rw-r--r--MLEB/Translate/utils/RevTag.php102
-rw-r--r--MLEB/Translate/utils/StatsBar.php88
-rw-r--r--MLEB/Translate/utils/StatsTable.php344
-rw-r--r--MLEB/Translate/utils/ToolBox.php41
-rw-r--r--MLEB/Translate/utils/TranslateLogFormatter.php79
-rw-r--r--MLEB/Translate/utils/TranslateMetadata.php110
-rw-r--r--MLEB/Translate/utils/TranslateSandbox.php255
-rw-r--r--MLEB/Translate/utils/TranslateSandboxEmailJob.php38
-rw-r--r--MLEB/Translate/utils/TranslateYaml.php224
-rw-r--r--MLEB/Translate/utils/TranslationEditPage.php307
-rw-r--r--MLEB/Translate/utils/TranslationHelpers.php1473
-rw-r--r--MLEB/Translate/utils/TranslationStats.php61
-rw-r--r--MLEB/Translate/utils/TuxMessageTable.php72
-rw-r--r--MLEB/Translate/utils/UserToggles.php109
-rw-r--r--MLEB/Translate/webservices/ApertiumWebService.php90
-rw-r--r--MLEB/Translate/webservices/MicrosoftWebService.php113
-rw-r--r--MLEB/Translate/webservices/RemoteTTMServerWebService.php80
-rw-r--r--MLEB/Translate/webservices/TranslationWebService.php281
-rw-r--r--MLEB/Translate/webservices/TranslationWebServiceException.php18
-rw-r--r--MLEB/Translate/webservices/YandexWebService.php106
-rw-r--r--MLEB/UniversalLanguageSelector/.jshintignore4
-rw-r--r--MLEB/UniversalLanguageSelector/.jshintrc32
-rw-r--r--MLEB/UniversalLanguageSelector/.rubocop.yml1
-rw-r--r--MLEB/UniversalLanguageSelector/.rubocop_todo.yml125
-rw-r--r--MLEB/UniversalLanguageSelector/CREDITS13
-rw-r--r--MLEB/UniversalLanguageSelector/GPL-LICENSE342
-rw-r--r--MLEB/UniversalLanguageSelector/Gemfile7
-rw-r--r--MLEB/UniversalLanguageSelector/Gemfile.lock81
-rw-r--r--MLEB/UniversalLanguageSelector/MIT-LICENSE22
-rw-r--r--MLEB/UniversalLanguageSelector/README42
-rw-r--r--MLEB/UniversalLanguageSelector/RELEASE-NOTES14
-rw-r--r--MLEB/UniversalLanguageSelector/Resources.php297
-rw-r--r--MLEB/UniversalLanguageSelector/UniversalLanguageSelector.hooks.php406
-rw-r--r--MLEB/UniversalLanguageSelector/UniversalLanguageSelector.i18n.php35
-rw-r--r--MLEB/UniversalLanguageSelector/UniversalLanguageSelector.php222
-rw-r--r--MLEB/UniversalLanguageSelector/api/ApiLanguageSearch.php93
-rw-r--r--MLEB/UniversalLanguageSelector/api/ApiULSLocalization.php94
-rw-r--r--MLEB/UniversalLanguageSelector/composer.json27
-rw-r--r--MLEB/UniversalLanguageSelector/data/LanguageNameIndexer.php58
-rw-r--r--MLEB/UniversalLanguageSelector/data/LanguageNameSearch.php148
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/TODO7
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/AbyssinicaSIL/AbyssinicaSIL-R.eotbin0 -> 220135 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/AbyssinicaSIL/AbyssinicaSIL-R.ttfbin0 -> 602664 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/AbyssinicaSIL/AbyssinicaSIL-R.woffbin0 -> 263192 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/AbyssinicaSIL/font.ini7
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Akkadian/Akkadian.eotbin0 -> 680510 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Akkadian/Akkadian.ttfbin0 -> 1504776 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Akkadian/Akkadian.woffbin0 -> 790752 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Akkadian/font.ini8
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Alef/Alef-Bold.eotbin0 -> 36162 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Alef/Alef-Bold.ttfbin0 -> 92660 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Alef/Alef-Bold.woffbin0 -> 44680 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Alef/Alef-Regular.eotbin0 -> 37311 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Alef/Alef-Regular.ttfbin0 -> 91360 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Alef/Alef-Regular.woffbin0 -> 46000 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Alef/font.ini16
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/AnjaliOldLipi/AnjaliOldLipi.eotbin0 -> 130193 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/AnjaliOldLipi/AnjaliOldLipi.ttfbin0 -> 430056 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/AnjaliOldLipi/AnjaliOldLipi.woffbin0 -> 176756 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/AnjaliOldLipi/font.ini6
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Artaxerxes/Artaxerxes.eotbin0 -> 4428 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Artaxerxes/Artaxerxes.ttfbin0 -> 9576 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Artaxerxes/Artaxerxes.woffbin0 -> 5120 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Artaxerxes/font.ini7
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Autonym/Autonym.eotbin0 -> 47118 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Autonym/Autonym.ttfbin0 -> 85592 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Autonym/Autonym.woffbin0 -> 54516 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Autonym/font.ini6
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/CharisSIL/CharisSIL-R.eotbin0 -> 442882 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/CharisSIL/CharisSIL-R.ttfbin0 -> 1735392 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/CharisSIL/CharisSIL-R.woffbin0 -> 561336 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/CharisSIL/font.ini7
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/ComicNeue/ComicNeue-Bold.eotbin0 -> 19331 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/ComicNeue/ComicNeue-Bold.ttfbin0 -> 32184 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/ComicNeue/ComicNeue-Bold.woffbin0 -> 21296 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/ComicNeue/ComicNeue-Regular-Oblique.eotbin0 -> 21502 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/ComicNeue/ComicNeue-Regular-Oblique.ttfbin0 -> 36392 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/ComicNeue/ComicNeue-Regular-Oblique.woffbin0 -> 23932 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/ComicNeue/ComicNeue-Regular.eotbin0 -> 19966 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/ComicNeue/ComicNeue-Regular.ttfbin0 -> 33100 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/ComicNeue/ComicNeue-Regular.woffbin0 -> 22088 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/ComicNeue/font.ini23
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/DoulosSIL/DoulosSIL-R.eotbin0 -> 471459 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/DoulosSIL/DoulosSIL-R.ttfbin0 -> 1803616 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/DoulosSIL/DoulosSIL-R.woffbin0 -> 599172 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/DoulosSIL/font.ini7
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/EastSyriacAdiabene/SyrCOMAdiabene.eotbin0 -> 35840 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/EastSyriacAdiabene/SyrCOMAdiabene.ttfbin0 -> 95992 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/EastSyriacAdiabene/SyrCOMAdiabene.woffbin0 -> 44212 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/EastSyriacAdiabene/font.ini6
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/EstrangeloEdessa/SyrCOMEdessa.eotbin0 -> 35160 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/EstrangeloEdessa/SyrCOMEdessa.ttfbin0 -> 63156 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/EstrangeloEdessa/SyrCOMEdessa.woffbin0 -> 40476 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/EstrangeloEdessa/font.ini7
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/FreeFontThana/FreeFont-Thaana-Bold.eotbin0 -> 91378 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/FreeFontThana/FreeFont-Thaana-Bold.ttfbin0 -> 191416 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/FreeFontThana/FreeFont-Thaana-Bold.woffbin0 -> 97628 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/FreeFontThana/FreeFont-Thaana.eotbin0 -> 100501 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/FreeFontThana/FreeFont-Thaana.ttfbin0 -> 209272 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/FreeFontThana/FreeFont-Thaana.woffbin0 -> 107304 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/FreeFontThana/font.ini17
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/GentiumPlus/GentiumPlus-I.eotbin0 -> 503859 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/GentiumPlus/GentiumPlus-I.ttfbin0 -> 1722080 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/GentiumPlus/GentiumPlus-I.woffbin0 -> 645256 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/GentiumPlus/GentiumPlus-R.eotbin0 -> 482493 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/GentiumPlus/GentiumPlus-R.ttfbin0 -> 1755052 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/GentiumPlus/GentiumPlus-R.woffbin0 -> 621456 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/GentiumPlus/font.ini16
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Gubbi/Gubbi.eotbin0 -> 41454 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Gubbi/Gubbi.ttfbin0 -> 128132 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Gubbi/Gubbi.woffbin0 -> 55260 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Gubbi/font.ini6
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Hanuman/Hanuman.eotbin0 -> 111034 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Hanuman/Hanuman.ttfbin0 -> 128376 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Hanuman/Hanuman.woffbin0 -> 35048 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Hanuman/Hanumanb.eotbin0 -> 105390 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Hanuman/Hanumanb.ttfbin0 -> 121948 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Hanuman/Hanumanb.woffbin0 -> 33684 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Hanuman/font.ini17
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/HussainiNastaleeq/font.ini7
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/HussainiNastaleeq/hussaini-nastaleeq.eotbin0 -> 135331 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/HussainiNastaleeq/hussaini-nastaleeq.ttfbin0 -> 309660 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/HussainiNastaleeq/hussaini-nastaleeq.woffbin0 -> 154996 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/IranianSans/font.ini17
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/IranianSans/irsans.eotbin0 -> 28344 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/IranianSans/irsans.ttfbin0 -> 61768 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/IranianSans/irsans.woffbin0 -> 31972 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/IranianSans/irsansb.eotbin0 -> 28311 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/IranianSans/irsansb.ttfbin0 -> 61364 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/IranianSans/irsansb.woffbin0 -> 32084 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/IranianSerif/font.ini10
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/IranianSerif/irseri.eotbin0 -> 30200 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/IranianSerif/irseri.ttfbin0 -> 65244 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/IranianSerif/irseri.woffbin0 -> 33880 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Jomolhari/Jomolhari.eotbin0 -> 264587 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Jomolhari/Jomolhari.ttfbin0 -> 2269108 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Jomolhari/Jomolhari.woffbin0 -> 360896 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Jomolhari/font.ini8
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Junicode/Junicode-Bold.eotbin0 -> 73957 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Junicode/Junicode-Bold.ttfbin0 -> 164848 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Junicode/Junicode-Bold.woffbin0 -> 86076 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Junicode/Junicode-BoldItalic.eotbin0 -> 67962 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Junicode/Junicode-BoldItalic.ttfbin0 -> 129280 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Junicode/Junicode-BoldItalic.woffbin0 -> 77216 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Junicode/Junicode-Italic.eotbin0 -> 148718 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Junicode/Junicode-Italic.ttfbin0 -> 381036 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Junicode/Junicode-Italic.woffbin0 -> 185744 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Junicode/Junicode.eotbin0 -> 224517 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Junicode/Junicode.ttfbin0 -> 551436 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Junicode/Junicode.woffbin0 -> 268148 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Junicode/font.ini31
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/KhmerOS/KhmerOS.eotbin0 -> 89468 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/KhmerOS/KhmerOS.ttfbin0 -> 265552 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/KhmerOS/KhmerOS.woffbin0 -> 109208 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/KhmerOS/font.ini6
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/KhmerOSbattambang/KhmerOSbattambang.eotbin0 -> 62477 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/KhmerOSbattambang/KhmerOSbattambang.ttfbin0 -> 207552 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/KhmerOSbattambang/KhmerOSbattambang.woffbin0 -> 78460 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/KhmerOSbattambang/font.ini7
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Lateef/LateefRegOT.eotbin0 -> 89396 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Lateef/LateefRegOT.ttfbin0 -> 246224 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Lateef/LateefRegOT.woffbin0 -> 107932 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Lateef/font.ini10
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LinuxLibertine/LinLibertine_RBIah.eotbin0 -> 181187 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LinuxLibertine/LinLibertine_RBIah.ttfbin0 -> 533532 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LinuxLibertine/LinLibertine_RBIah.woffbin0 -> 233592 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LinuxLibertine/LinLibertine_RBah.eotbin0 -> 250795 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LinuxLibertine/LinLibertine_RBah.ttfbin0 -> 748600 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LinuxLibertine/LinLibertine_RBah.woffbin0 -> 333096 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LinuxLibertine/LinLibertine_RIah.eotbin0 -> 263077 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LinuxLibertine/LinLibertine_RIah.ttfbin0 -> 721340 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LinuxLibertine/LinLibertine_RIah.woffbin0 -> 343852 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LinuxLibertine/LinLibertine_Rah.eotbin0 -> 290281 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LinuxLibertine/LinLibertine_Rah.ttfbin0 -> 806856 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LinuxLibertine/LinLibertine_Rah.woffbin0 -> 379748 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LinuxLibertine/font.ini30
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitAssamese/Lohit-Assamese.eotbin0 -> 58971 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitAssamese/Lohit-Assamese.ttfbin0 -> 139396 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitAssamese/Lohit-Assamese.woffbin0 -> 68640 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitAssamese/font.ini6
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitBengali/Lohit-Bengali.eotbin0 -> 58976 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitBengali/Lohit-Bengali.ttfbin0 -> 139448 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitBengali/Lohit-Bengali.woffbin0 -> 68660 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitBengali/font.ini6
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitDevanagari/Lohit-Devanagari.eotbin0 -> 33747 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitDevanagari/Lohit-Devanagari.ttfbin0 -> 70380 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitDevanagari/Lohit-Devanagari.woffbin0 -> 38188 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitDevanagari/font.ini8
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitGujarati/Lohit-Gujarati.eotbin0 -> 24642 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitGujarati/Lohit-Gujarati.ttfbin0 -> 60572 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitGujarati/Lohit-Gujarati.woffbin0 -> 28636 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitGujarati/font.ini7
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitKannada/Lohit-Kannada.eotbin0 -> 38567 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitKannada/Lohit-Kannada.ttfbin0 -> 197872 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitKannada/Lohit-Kannada.woffbin0 -> 49248 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitKannada/font.ini7
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitMarathi/Lohit-Marathi.eotbin0 -> 32990 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitMarathi/Lohit-Marathi.ttfbin0 -> 68768 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitMarathi/Lohit-Marathi.woffbin0 -> 37284 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitMarathi/font.ini8
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitNepali/Lohit-Nepali.eotbin0 -> 33045 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitNepali/Lohit-Nepali.ttfbin0 -> 68912 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitNepali/Lohit-Nepali.woffbin0 -> 37340 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitNepali/font.ini8
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitOdia/Lohit-Odia.eotbin0 -> 44472 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitOdia/Lohit-Odia.ttfbin0 -> 97912 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitOdia/Lohit-Odia.woffbin0 -> 48916 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitOdia/font.ini7
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitPunjabi/Lohit-Punjabi.eotbin0 -> 11029 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitPunjabi/Lohit-Punjabi.ttfbin0 -> 23912 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitPunjabi/Lohit-Punjabi.woffbin0 -> 12900 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitPunjabi/font.ini7
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitTamil/Lohit-Tamil.eotbin0 -> 22168 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitTamil/Lohit-Tamil.ttfbin0 -> 62248 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitTamil/Lohit-Tamil.woffbin0 -> 26860 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitTamil/font.ini6
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitTamilClassical/Lohit-Tamil-Classical.eotbin0 -> 22983 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitTamilClassical/Lohit-Tamil-Classical.ttfbin0 -> 65608 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitTamilClassical/Lohit-Tamil-Classical.woffbin0 -> 27716 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitTamilClassical/font.ini6
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitTelugu/Lohit-Telugu.eotbin0 -> 49491 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitTelugu/Lohit-Telugu.ttfbin0 -> 170776 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitTelugu/Lohit-Telugu.woffbin0 -> 57760 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitTelugu/font.ini7
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Meera/Meera.eotbin0 -> 126508 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Meera/Meera.ttfbin0 -> 310536 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Meera/Meera.woffbin0 -> 144984 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Meera/font.ini6
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/MiriamCLM/MiriamCLM-Book.eotbin0 -> 8691 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/MiriamCLM/MiriamCLM-Book.ttfbin0 -> 20868 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/MiriamCLM/MiriamCLM-Book.woffbin0 -> 10296 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/MiriamCLM/font.ini6
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Myanmar3/Myanmar3.eotbin0 -> 40843 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Myanmar3/Myanmar3.ttfbin0 -> 98100 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Myanmar3/Myanmar3.woffbin0 -> 45200 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Myanmar3/font.ini6
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/NafeesWeb/NafeesWeb.eotbin0 -> 74723 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/NafeesWeb/NafeesWeb.ttfbin0 -> 273548 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/NafeesWeb/NafeesWeb.woffbin0 -> 87072 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/NafeesWeb/font.ini9
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Nazli/Nazli-bold.eotbin0 -> 28395 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Nazli/Nazli-bold.ttfbin0 -> 68448 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Nazli/Nazli-bold.woffbin0 -> 35700 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Nazli/Nazli.eotbin0 -> 56111 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Nazli/Nazli.ttfbin0 -> 55941 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Nazli/Nazli.woffbin0 -> 29068 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Nazli/font.ini17
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Nokora/LICENSE.txt202
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Nokora/Nokora-Bold.eotbin0 -> 15756 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Nokora/Nokora-Bold.ttfbin0 -> 42344 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Nokora/Nokora-Bold.woffbin0 -> 18448 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Nokora/Nokora-Regular.eotbin0 -> 15983 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Nokora/Nokora-Regular.ttfbin0 -> 50804 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Nokora/Nokora-Regular.woffbin0 -> 18588 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Nokora/font.ini17
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/NuosuSIL/NuosuSIL.eotbin0 -> 112158 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/NuosuSIL/NuosuSIL.ttfbin0 -> 516340 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/NuosuSIL/NuosuSIL.woffbin0 -> 136488 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/NuosuSIL/font.ini10
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/OpenDyslexic/OpenDyslexic-Bold.eotbin0 -> 25654 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/OpenDyslexic/OpenDyslexic-Bold.ttfbin0 -> 142508 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/OpenDyslexic/OpenDyslexic-Bold.woffbin0 -> 33116 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/OpenDyslexic/OpenDyslexic-BoldItalic.eotbin0 -> 45581 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/OpenDyslexic/OpenDyslexic-BoldItalic.ttfbin0 -> 291756 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/OpenDyslexic/OpenDyslexic-BoldItalic.woffbin0 -> 62012 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/OpenDyslexic/OpenDyslexic-Italic.eotbin0 -> 45098 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/OpenDyslexic/OpenDyslexic-Italic.ttfbin0 -> 269124 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/OpenDyslexic/OpenDyslexic-Italic.woffbin0 -> 59932 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/OpenDyslexic/OpenDyslexic-Regular.eotbin0 -> 28234 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/OpenDyslexic/OpenDyslexic-Regular.ttfbin0 -> 138312 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/OpenDyslexic/OpenDyslexic-Regular.woffbin0 -> 34948 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/OpenDyslexic/font.ini32
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/OskiEast/font.ini32
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/OskiEast/oskie.eotbin0 -> 125221 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/OskiEast/oskie.ttfbin0 -> 401712 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/OskiEast/oskie.woffbin0 -> 173400 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/OskiEast/oskiebold.eotbin0 -> 129051 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/OskiEast/oskiebold.ttfbin0 -> 403248 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/OskiEast/oskiebold.woffbin0 -> 173552 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/OskiEast/oskiebolditalic.eotbin0 -> 134770 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/OskiEast/oskiebolditalic.ttfbin0 -> 408216 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/OskiEast/oskiebolditalic.woffbin0 -> 183940 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/OskiEast/oskieitalic.eotbin0 -> 138592 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/OskiEast/oskieitalic.ttfbin0 -> 430136 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/OskiEast/oskieitalic.woffbin0 -> 195796 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Padauk/Padauk-Regular.eotbin0 -> 91986 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Padauk/Padauk-Regular.ttfbin0 -> 337632 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Padauk/Padauk-Regular.woffbin0 -> 116768 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Padauk/font.ini6
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Pagul/Pagul.eotbin0 -> 68618 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Pagul/Pagul.ttfbin0 -> 189568 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Pagul/Pagul.woffbin0 -> 71128 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Pagul/font.ini7
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Pangururan/Pangururan.eotbin0 -> 45668 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Pangururan/Pangururan.ttfbin0 -> 554916 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Pangururan/Pangururan.woffbin0 -> 67716 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Pangururan/font.ini9
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Phetsarath/Phetsarath-Bold.eotbin0 -> 29830 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Phetsarath/Phetsarath-Bold.ttfbin0 -> 156840 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Phetsarath/Phetsarath-Bold.woffbin0 -> 30768 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Phetsarath/Phetsarath-Regular.eotbin0 -> 13554 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Phetsarath/Phetsarath-Regular.ttfbin0 -> 40544 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Phetsarath/Phetsarath-Regular.woffbin0 -> 15476 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Phetsarath/font.ini17
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/README31
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/RailwaySans/RailwaySans.eotbin0 -> 21291 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/RailwaySans/RailwaySans.ttfbin0 -> 45884 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/RailwaySans/RailwaySans.woffbin0 -> 24156 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/RailwaySans/font.ini9
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Saab/Saab.eotbin0 -> 43231 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Saab/Saab.ttfbin0 -> 114092 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Saab/Saab.woffbin0 -> 44648 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Saab/font.ini6
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Scheherazade/Scheherazade-R.eotbin0 -> 152162 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Scheherazade/Scheherazade-R.ttfbin0 -> 482376 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Scheherazade/Scheherazade-R.woffbin0 -> 176856 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Scheherazade/font.ini10
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/SertoUrhoy/SyrCOMUrhoy.eotbin0 -> 46868 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/SertoUrhoy/SyrCOMUrhoy.ttfbin0 -> 104772 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/SertoUrhoy/SyrCOMUrhoy.woffbin0 -> 56908 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/SertoUrhoy/font.ini6
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Shapour/Shapour.eotbin0 -> 3679 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Shapour/Shapour.ttfbin0 -> 6576 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Shapour/Shapour.woffbin0 -> 4144 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Shapour/font.ini7
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/SiyamRupali/SiyamRupali.eotbin0 -> 147367 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/SiyamRupali/SiyamRupali.ttfbin0 -> 401040 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/SiyamRupali/SiyamRupali.woffbin0 -> 169780 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/SiyamRupali/font.ini7
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Suwannaphum/Suwannaphum.eotbin0 -> 23034 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Suwannaphum/Suwannaphum.ttfbin0 -> 81344 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Suwannaphum/Suwannaphum.woffbin0 -> 27092 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Suwannaphum/font.ini10
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/TaameyFrankCLM/TaameyFrankCLM.eotbin0 -> 34032 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/TaameyFrankCLM/TaameyFrankCLM.ttfbin0 -> 104984 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/TaameyFrankCLM/TaameyFrankCLM.woffbin0 -> 36860 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/TaameyFrankCLM/font.ini7
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/TharLon/TharLon.eotbin0 -> 99664 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/TharLon/TharLon.ttfbin0 -> 353228 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/TharLon/TharLon.woffbin0 -> 74072 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/TharLon/font.ini7
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Thendral/ThendralUni.eotbin0 -> 44921 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Thendral/ThendralUni.ttfbin0 -> 100904 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Thendral/ThendralUni.woffbin0 -> 47004 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Thendral/font.ini6
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Thenee/TheneeUni.eotbin0 -> 59340 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Thenee/TheneeUni.ttfbin0 -> 185436 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Thenee/TheneeUni.woffbin0 -> 66968 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Thenee/font.ini6
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/TuladhaJejeg/TuladhaJejeg_gr.eotbin0 -> 238065 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/TuladhaJejeg/TuladhaJejeg_gr.ttfbin0 -> 1186556 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/TuladhaJejeg/TuladhaJejeg_gr.woffbin0 -> 409136 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/TuladhaJejeg/font.ini7
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/UnifrakturMaguntia/UnifrakturMaguntia.eotbin0 -> 46788 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/UnifrakturMaguntia/UnifrakturMaguntia.ttfbin0 -> 112604 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/UnifrakturMaguntia/UnifrakturMaguntia.woffbin0 -> 52936 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/UnifrakturMaguntia/font.ini8
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/amiri/amiri-bold.eotbin0 -> 200158 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/amiri/amiri-bold.ttfbin0 -> 604688 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/amiri/amiri-bold.woffbin0 -> 232032 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/amiri/amiri-boldslanted.eotbin0 -> 210489 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/amiri/amiri-boldslanted.ttfbin0 -> 616596 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/amiri/amiri-boldslanted.woffbin0 -> 244524 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/amiri/amiri-regular.eotbin0 -> 204929 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/amiri/amiri-regular.ttfbin0 -> 610836 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/amiri/amiri-regular.woffbin0 -> 237376 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/amiri/amiri-slanted.eotbin0 -> 216757 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/amiri/amiri-slanted.ttfbin0 -> 631872 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/amiri/amiri-slanted.woffbin0 -> 250648 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/amiri/font.ini32
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/lklug/font.ini11
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/lklug/lklug.eotbin0 -> 66682 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/lklug/lklug.ttfbin0 -> 306452 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/lklug/lklug.woffbin0 -> 99700 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/madan/font.ini6
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/madan/madan.eotbin0 -> 79726 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/madan/madan.ttfbin0 -> 254796 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/madan/madan.woffbin0 -> 106504 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/madan/madan_license.txt16
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/saweri/font.ini7
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/saweri/saweri.eotbin0 -> 2870 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/saweri/saweri.ttfbin0 -> 5552 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/saweri/saweri.woffbin0 -> 3692 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/utkal/font.ini6
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/utkal/utkal.eotbin0 -> 72405 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/utkal/utkal.ttfbin0 -> 169888 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/fonts/utkal/utkal.woffbin0 -> 92056 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/licenses/CC-BY-3.0.txt334
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/licenses/George-Douros.txt8
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/licenses/HussainiNastaleeq.txt50
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/licenses/IranianSans.txt59
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/licenses/OFL.txt97
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/licenses/README30
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/licenses/apache-2.0.txt202
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/licenses/cc0-1.0.txt116
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/licenses/gpl-2.0.txt339
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/licenses/gpl-3.0.txt674
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/licenses/lgpl-2.1.txt502
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/licenses/melthofontsLicense.txt61
-rw-r--r--MLEB/UniversalLanguageSelector/data/fontrepo/scripts/compile.php102
-rw-r--r--MLEB/UniversalLanguageSelector/data/langnames.ser1
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/ace.json51
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/af.json48
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/ang.json33
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/ar.json61
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/arc.json50
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/arq.json9
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/as.json9
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/ast.json59
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/az.json10
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/azb.json38
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/be-tarask.json54
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/bg.json53
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/bho.json48
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/bn.json59
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/br.json49
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/bs.json54
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/ca.json53
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/ce.json59
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/ckb.json52
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/co.json8
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/cs.json59
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/cu.json24
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/cy.json60
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/da.json62
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/de.json60
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/diq.json28
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/dsb.json58
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/el.json54
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/en.json74
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/eo.json58
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/es.json63
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/et.json59
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/eu.json18
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/fa.json63
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/fi.json60
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/fr.json65
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/frp.json37
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/frr.json58
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/fur.json18
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/fy.json18
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/gd.json58
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/gl.json59
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/gom-latn.json8
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/gom.json8
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/gu.json59
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/gv.json13
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/he.json63
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/hi.json61
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/hr.json58
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/hsb.json58
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/hu.json58
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/hy.json52
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/ia.json55
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/id.json56
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/ilo.json68
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/it.json61
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/ja.json59
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/ka.json56
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/kk-cyrl.json56
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/km.json48
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/kn.json43
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/ko.json62
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/krc.json58
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/ksh.json47
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/ku-latn.json12
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/kw.json49
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/ky.json36
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/la.json35
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/lad.json12
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/lb.json58
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/lrc.json38
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/lt.json50
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/lv.json11
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/lzh.json8
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/min.json53
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/mk.json68
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/ml.json62
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/mn.json8
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/mr.json55
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/ms.json55
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/mt.json40
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/nap.json13
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/nb.json58
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/nds-nl.json49
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/nl.json62
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/nn.json54
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/oc.json29
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/or.json48
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/os.json43
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/pa.json50
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/pl.json64
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/pms.json56
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/ps.json50
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/pt-br.json58
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/pt.json63
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/qqq.json76
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/qu.json8
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/ro.json58
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/roa-tara.json54
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/ru.json64
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/rue.json10
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/scn.json49
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/sco.json55
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/si.json40
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/sk.json57
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/sl.json59
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/so.json8
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/sq.json48
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/sr-ec.json59
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/sr-el.json58
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/sv.json70
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/sw.json52
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/ta.json50
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/te.json40
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/tl.json26
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/tr.json61
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/tt-cyrl.json44
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/uk.json63
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/ur.json14
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/uz.json19
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/vec.json55
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/vi.json69
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/vo.json8
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/yi.json53
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/zh-hans.json75
-rw-r--r--MLEB/UniversalLanguageSelector/i18n/zh-hant.json65
-rw-r--r--MLEB/UniversalLanguageSelector/includes/ResourceLoaderULSJsonMessageModule.php63
-rw-r--r--MLEB/UniversalLanguageSelector/includes/ResourceLoaderULSModule.php95
-rw-r--r--MLEB/UniversalLanguageSelector/includes/ULSJsonMessageLoader.php79
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.i18n/jquery.i18n.emitter.js168
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.i18n/jquery.i18n.fallbacks.js186
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.i18n/jquery.i18n.js282
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.i18n/jquery.i18n.language.js471
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.i18n/jquery.i18n.messagestore.js126
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.i18n/jquery.i18n.parser.js309
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.i18n/languages/bs.js22
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.i18n/languages/dsb.js22
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.i18n/languages/fi.js49
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.i18n/languages/ga.js38
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.i18n/languages/he.js31
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.i18n/languages/hsb.js21
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.i18n/languages/hu.js26
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.i18n/languages/hy.js25
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.i18n/languages/la.js54
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.i18n/languages/ml.js98
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.i18n/languages/os.js78
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.i18n/languages/ru.js29
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.i18n/languages/sl.js26
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.i18n/languages/uk.js39
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/css/jquery.ime.css220
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/images/ime-active.pngbin0 -> 319 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/images/ime-active.svg1
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/images/tick.pngbin0 -> 261 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/images/tick.svg1
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/jquery.ime.js2496
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/README.md107
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/am/am-transliteration.js432
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ar/ar-kbd.js115
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/as/as-avro.js168
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/as/as-bornona.js84
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/as/as-inscript.js124
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/as/as-inscript2.js128
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/as/as-phonetic.js112
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/as/as-transliteration.js114
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/bbc/batak-qwerty.js89
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/be/be-kbd.js101
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/be/be-latin.js38
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/be/be-transliteration.js94
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ber/ber-tfng.js54
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/bn/bn-avro.js194
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/bn/bn-inscript.js123
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/bn/bn-inscript2.js128
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/bn/bn-nkb.js133
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/bn/bn-probhat.js102
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/bo/bo-ewts.js284
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/brx/brx-inscript.js112
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/brx/brx-inscript2.js117
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ckb/ckb-transliteration-arkbd.js103
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ckb/ckb-transliteration-fakbd.js104
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ckb/ckb-transliteration-lakbd.js100
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/cv/README.md26
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/cv/cv-cyr-altgr.js120
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/cv/cv-cyr-numbers.js112
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/cv/cv-lat-altgr.js33
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/cyrl/cyrl-palochka.js43
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/da/da-normforms.js49
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/de/de-transliteration.js27
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/doi/doi-inscript2.js119
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/el/el-kbd.js95
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/eo/eo-h-f.js59
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/eo/eo-h.js54
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/eo/eo-plena.js99
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/eo/eo-q.js55
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/eo/eo-transliteration.js45
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/eo/eo-vi.js65
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/eo/eo-x.js53
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/fa/fa-kbd.js167
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/fi/fi-transliteration.js32
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/fo/fo-normforms.js65
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/fonipa/ipa-sil.js240
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/fonipa/ipa-x-sampa.js189
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/gom/gom-inscript2.js119
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/gu/gu-inscript.js113
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/gu/gu-inscript2.js118
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/gu/gu-phonetic.js110
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/gu/gu-transliteration.js156
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/he/he-standard-2012-extonly.js66
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/he/he-standard-2012.js117
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/hi/hi-bolnagri.js108
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/hi/hi-inscript.js122
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/hi/hi-inscript2.js127
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/hi/hi-phonetic.js111
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/hi/hi-transliteration.js198
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/hr/hr-kbd.js60
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/hy/hy-emslegacy.js169
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/hy/hy-ephonetic.js173
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/hy/hy-ephoneticalt.js171
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/hy/hy-typewriter.js168
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/hy/hy-wmslegacy.js169
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/is/is-normforms.js78
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/jv/jv-transliteration.js273
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ka/ka-kbd.js56
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ka/ka-transliteration.js58
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/kk/kk-arabic.js62
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/kk/kk-kbd.js108
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/kn/kn-inscript.js111
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/kn/kn-inscript2.js119
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/kn/kn-kgp.js104
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/kn/kn-transliteration.js154
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ks/ks-inscript.js129
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ks/ks-kbd.js112
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ku/ku-h.js47
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ku/ku-tr.js32
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ky/ky-cyrl-alt.js25
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/lo/lo-kbd.js122
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/lud/lud-transliteration.js29
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/mai/mai-inscript.js22
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/mai/mai-inscript2.js25
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/mh/mh.js43
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ml/ml-inscript.js90
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ml/ml-inscript2.js132
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ml/ml-transliteration.js338
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/mn/mn-cyrl.js118
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/mni/mni-inscript2.js125
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/mr/mr-inscript.js115
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/mr/mr-inscript2.js121
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/mr/mr-phonetic.js110
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/mr/mr-transliteration.js147
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/my/my-xkb.js209
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/nb/nb-normforms.js50
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/nb/nb-tildeforms.js35
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ne/ne-inscript.js113
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ne/ne-inscript2.js116
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ne/ne-rom.js106
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ne/ne-trad.js106
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ne/ne-transliteration.js165
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/or/or-inscript.js106
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/or/or-inscript2.js116
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/or/or-lekhani.js175
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/or/or-phonetic.js110
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/or/or-transliteration.js146
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/pa/pa-inscript.js97
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/pa/pa-inscript2.js111
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/pa/pa-jhelum.js131
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/pa/pa-phonetic.js99
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/pa/pa-transliteration.js119
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ru/ru-jcuken.js96
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ru/ru-kbd.js100
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ru/ru-phonetic.js83
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ru/ru-yawerty.js109
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/sa/sa-iast.js59
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/sa/sa-inscript.js113
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/sa/sa-inscript2.js117
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/sa/sa-transliteration.js165
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/sah/sah-transliteration.js103
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/sat/sat-inscript2.js107
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/sd/sd-inscript2.js124
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/se/se-normforms.js38
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/si/si-singlish.js110
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/si/si-wijesekara.js105
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/sk/sk-kbd.js105
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/sr/sr-kbd.js98
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/sv/sv-normforms.js50
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ta/ta-99.js193
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ta/ta-bamini.js90
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ta/ta-inscript.js103
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ta/ta-inscript2.js107
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ta/ta-transliteration.js120
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/te/te-inscript.js122
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/te/te-inscript2.js126
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/te/te-transliteration.js221
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/th/th-kedmanee.js115
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/th/th-pattachote.js115
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/udm/udm-alt.js40
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ug/ug-kbd.js79
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/uk/uk-kbd.js101
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ur/ur-phonetic.js108
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ur/ur-transliteration.js98
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/uz/uz-kbd.js102
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/vec/vec-GVU.js32
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/css/jquery.uls.compact.css75
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/css/jquery.uls.css260
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/css/jquery.uls.grid.css315
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/css/jquery.uls.lcd.css86
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/css/jquery.uls.mobile.css319
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/af.json21
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/am.json18
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ar.json23
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/as.json20
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ast.json21
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/av.json21
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/az.json22
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/azb.json22
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/bbc-latn.json18
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/bcc.json21
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/be-tarask.json21
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/be.json21
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/bg.json22
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/bn.json24
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/br.json22
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/bs.json22
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/bto.json13
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ca.json23
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ce.json14
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ckb.json21
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/cs.json21
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/cv.json22
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/cy.json21
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/da.json22
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/de-formal.json19
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/de.json23
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/diq.json24
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/dsb.json21
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/el.json22
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/en.json22
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/eo.json22
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/es.json26
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/et.json21
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/eu.json21
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/fa.json22
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/fi.json23
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/fo.json21
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/fr.json22
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/fur.json21
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/fy.json21
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ga.json21
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/gl.json21
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/gn.json21
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/got.json21
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/gsw.json20
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/gu.json24
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/hak.json21
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/haw.json21
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/he.json22
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/hi.json22
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/hrx.json21
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/hsb.json21
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/hu.json22
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/hy.json21
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ia.json21
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/id.json22
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ie.json21
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ilo.json21
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/is.json20
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/it.json22
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ja.json22
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ka.json21
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/kab.json22
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/khw.json14
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/kk-cyrl.json21
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/km.json21
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/kn.json22
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ko.json22
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/krc.json21
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ksh.json21
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ky.json23
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/lb.json21
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/lez.json22
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/lki.json21
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/lrc.json20
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/lt.json22
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/lv.json22
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/map-bms.json21
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/mg.json21
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/min.json21
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/mk.json21
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ml.json22
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/mn.json22
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/mr.json23
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ms.json21
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/mt.json21
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/mzn.json21
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/nap.json21
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/nb.json22
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/nds-nl.json21
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ne.json22
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/nl-informal.json15
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/nl.json21
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/nn.json21
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/nso.json14
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/oc.json21
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/om.json21
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/os.json21
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/pa.json21
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/pl.json23
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/pms.json22
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ps.json21
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/pt-br.json22
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/pt.json22
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/qqq.json23
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ro.json21
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ru.json24
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/rup.json21
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/sc.json21
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/sco.json21
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/si.json22
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/sk.json22
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/sl.json23
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/sr-ec.json22
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/sr-el.json22
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/sv.json22
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/sw.json22
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ta.json24
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/te.json22
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/th.json21
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/tly.json16
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/tr.json23
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/tt-cyrl.json22
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/tzm.json15
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ug-arab.json21
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/uk.json22
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/uz.json24
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/vec.json21
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/vep.json21
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/vi.json22
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/war.json22
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/zh-hans.json23
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/zh-hant.json22
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/images/clear.pngbin0 -> 179 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/images/clear.svg1
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/images/close.pngbin0 -> 180 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/images/close.svg1
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/images/icon-language.pngbin0 -> 802 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/images/icon-language.svg1
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/images/search.pngbin0 -> 664 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/images/search.svg1
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/images/world_map.pngbin0 -> 3447 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/images/world_map.svg1
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/src/jquery.uls.core.js443
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/src/jquery.uls.data.js7
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/src/jquery.uls.data.utils.js465
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/src/jquery.uls.languagefilter.js360
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/src/jquery.uls.lcd.js396
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.uls/src/jquery.uls.regionfilter.js198
-rw-r--r--MLEB/UniversalLanguageSelector/lib/jquery.webfonts.js517
-rw-r--r--MLEB/UniversalLanguageSelector/lib/rangy/rangy-core.js3224
-rw-r--r--MLEB/UniversalLanguageSelector/resources/css/ext.uls-monobook.css3
-rw-r--r--MLEB/UniversalLanguageSelector/resources/css/ext.uls.buttons.css158
-rw-r--r--MLEB/UniversalLanguageSelector/resources/css/ext.uls.compactlinks.css41
-rw-r--r--MLEB/UniversalLanguageSelector/resources/css/ext.uls.css46
-rw-r--r--MLEB/UniversalLanguageSelector/resources/css/ext.uls.displaysettings.css93
-rw-r--r--MLEB/UniversalLanguageSelector/resources/css/ext.uls.inputsettings.css146
-rw-r--r--MLEB/UniversalLanguageSelector/resources/css/ext.uls.interlanguage.css21
-rw-r--r--MLEB/UniversalLanguageSelector/resources/css/ext.uls.languagesettings.css137
-rw-r--r--MLEB/UniversalLanguageSelector/resources/css/ext.uls.nojs.css4
-rw-r--r--MLEB/UniversalLanguageSelector/resources/css/ext.uls.pt.css57
-rw-r--r--MLEB/UniversalLanguageSelector/resources/images/cog-sprite.pngbin0 -> 633 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/resources/images/cog-sprite.svg1
-rw-r--r--MLEB/UniversalLanguageSelector/resources/images/cog.pngbin0 -> 363 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/resources/images/cog.svg1
-rw-r--r--MLEB/UniversalLanguageSelector/resources/images/compact-links-ltr.pngbin0 -> 7424 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/resources/images/compact-links-ltr.svg1
-rw-r--r--MLEB/UniversalLanguageSelector/resources/images/compact-links-rtl.pngbin0 -> 7301 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/resources/images/compact-links-rtl.svg1
-rw-r--r--MLEB/UniversalLanguageSelector/resources/images/display.pngbin0 -> 526 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/resources/images/display.svg1
-rw-r--r--MLEB/UniversalLanguageSelector/resources/images/help.pngbin0 -> 401 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/resources/images/help.svg1
-rw-r--r--MLEB/UniversalLanguageSelector/resources/images/input.pngbin0 -> 562 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/resources/images/input.svg1
-rw-r--r--MLEB/UniversalLanguageSelector/resources/images/remove-input.pngbin0 -> 599 bytes
-rw-r--r--MLEB/UniversalLanguageSelector/resources/images/remove-input.svg1
-rw-r--r--MLEB/UniversalLanguageSelector/resources/js/ext.uls.compactlinks.js346
-rw-r--r--MLEB/UniversalLanguageSelector/resources/js/ext.uls.displaysettings.js717
-rw-r--r--MLEB/UniversalLanguageSelector/resources/js/ext.uls.eventlogger.js247
-rw-r--r--MLEB/UniversalLanguageSelector/resources/js/ext.uls.geoclient.js47
-rw-r--r--MLEB/UniversalLanguageSelector/resources/js/ext.uls.i18n.js63
-rw-r--r--MLEB/UniversalLanguageSelector/resources/js/ext.uls.ime.js321
-rw-r--r--MLEB/UniversalLanguageSelector/resources/js/ext.uls.init.js247
-rw-r--r--MLEB/UniversalLanguageSelector/resources/js/ext.uls.inputsettings.js570
-rw-r--r--MLEB/UniversalLanguageSelector/resources/js/ext.uls.interface.js471
-rw-r--r--MLEB/UniversalLanguageSelector/resources/js/ext.uls.languagesettings.js319
-rw-r--r--MLEB/UniversalLanguageSelector/resources/js/ext.uls.mediawiki.js42
-rw-r--r--MLEB/UniversalLanguageSelector/resources/js/ext.uls.preferences.js173
-rw-r--r--MLEB/UniversalLanguageSelector/resources/js/ext.uls.webfonts.js231
-rw-r--r--MLEB/UniversalLanguageSelector/resources/js/ext.uls.webfonts.mobile.js49
-rw-r--r--MLEB/UniversalLanguageSelector/resources/js/ext.uls.webfonts.repository.js5
-rwxr-xr-xMLEB/UniversalLanguageSelector/scripts/update-jquery-i18n.sh17
-rwxr-xr-xMLEB/UniversalLanguageSelector/scripts/update-jquery-ime.sh20
-rwxr-xr-xMLEB/UniversalLanguageSelector/scripts/update-jquery-uls.sh17
-rwxr-xr-xMLEB/UniversalLanguageSelector/scripts/update-jquery-webfonts.sh17
-rw-r--r--MLEB/UniversalLanguageSelector/tests/autonym.html117
-rw-r--r--MLEB/UniversalLanguageSelector/tests/browser/README.md1
-rw-r--r--MLEB/UniversalLanguageSelector/tests/browser/features/accept_language.feature14
-rw-r--r--MLEB/UniversalLanguageSelector/tests/browser/features/autonym.feature39
-rw-r--r--MLEB/UniversalLanguageSelector/tests/browser/features/font_selection_default_disabled.feature93
-rw-r--r--MLEB/UniversalLanguageSelector/tests/browser/features/font_selection_default_enabled.feature78
-rw-r--r--MLEB/UniversalLanguageSelector/tests/browser/features/ime.feature68
-rw-r--r--MLEB/UniversalLanguageSelector/tests/browser/features/live_preview_of_display_language.feature45
-rw-r--r--MLEB/UniversalLanguageSelector/tests/browser/features/persistent_settings.feature37
-rw-r--r--MLEB/UniversalLanguageSelector/tests/browser/features/settings_panel.feature92
-rw-r--r--MLEB/UniversalLanguageSelector/tests/browser/features/step_definitions/accept_language_steps.rb12
-rw-r--r--MLEB/UniversalLanguageSelector/tests/browser/features/step_definitions/autonym_steps.rb15
-rw-r--r--MLEB/UniversalLanguageSelector/tests/browser/features/step_definitions/cog_sidebar_user_steps.rb106
-rw-r--r--MLEB/UniversalLanguageSelector/tests/browser/features/step_definitions/common_steps.rb39
-rw-r--r--MLEB/UniversalLanguageSelector/tests/browser/features/step_definitions/font_selection_steps.rb47
-rw-r--r--MLEB/UniversalLanguageSelector/tests/browser/features/step_definitions/ime_steps.rb77
-rw-r--r--MLEB/UniversalLanguageSelector/tests/browser/features/step_definitions/live_preview_of_display_language_steps.rb24
-rw-r--r--MLEB/UniversalLanguageSelector/tests/browser/features/step_definitions/panel_steps.rb89
-rw-r--r--MLEB/UniversalLanguageSelector/tests/browser/features/step_definitions/persistent_settings_steps.rb16
-rw-r--r--MLEB/UniversalLanguageSelector/tests/browser/features/step_definitions/textarea_font_steps.rb23
-rw-r--r--MLEB/UniversalLanguageSelector/tests/browser/features/step_definitions/triggers_steps.rb10
-rw-r--r--MLEB/UniversalLanguageSelector/tests/browser/features/support/env.rb1
-rw-r--r--MLEB/UniversalLanguageSelector/tests/browser/features/support/modules/interlanguage_module.rb23
-rw-r--r--MLEB/UniversalLanguageSelector/tests/browser/features/support/modules/language_module.rb22
-rw-r--r--MLEB/UniversalLanguageSelector/tests/browser/features/support/pages/edit_page.rb5
-rw-r--r--MLEB/UniversalLanguageSelector/tests/browser/features/support/pages/ime_page.rb26
-rw-r--r--MLEB/UniversalLanguageSelector/tests/browser/features/support/pages/interlanguage_page.rb12
-rw-r--r--MLEB/UniversalLanguageSelector/tests/browser/features/support/pages/main_page.rb25
-rw-r--r--MLEB/UniversalLanguageSelector/tests/browser/features/support/pages/no_interlanguage_page.rb11
-rw-r--r--MLEB/UniversalLanguageSelector/tests/browser/features/support/pages/panel_page.rb81
-rw-r--r--MLEB/UniversalLanguageSelector/tests/browser/features/support/pages/preferences_page.rb12
-rw-r--r--MLEB/UniversalLanguageSelector/tests/browser/features/textarea_font.feature47
-rw-r--r--MLEB/UniversalLanguageSelector/tests/browser/features/triggers.feature56
-rw-r--r--MLEB/UniversalLanguageSelector/tests/browser/tags.txt16
-rw-r--r--MLEB/UniversalLanguageSelector/tests/phpunit/LanguageSearchTest.php66
-rw-r--r--MLEB/UniversalLanguageSelector/tests/phpunit/Makefile10
-rw-r--r--MLEB/UniversalLanguageSelector/tests/phpunit/ResourceLoaderULSTest.php49
-rw-r--r--MLEB/UniversalLanguageSelector/tests/qunit/ext.uls.tests.js103
-rw-r--r--MLEB/UniversalLanguageSelector/tests/webfonts.html143
-rw-r--r--MLEB/cldr/COPYING339
-rw-r--r--MLEB/cldr/CldrCurrencies.php152
-rw-r--r--MLEB/cldr/CldrCurrency/Symbols.php7851
-rw-r--r--MLEB/cldr/CldrNames.php30
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesAa.php11
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesAf.php965
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesAk.php338
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesAm.php971
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesAr.php1528
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesAs.php26
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesAst.php1276
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesAz.php1295
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesBe.php468
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesBg.php1300
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesBm.php336
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesBn.php1305
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesBo.php252
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesBr.php1070
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesBs.php1412
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesCa.php1489
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesChr.php253
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesCs.php1692
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesCy.php1021
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesDa.php1328
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesDe.php1582
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesDe_ch.php26
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesDsb.php974
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesDz.php529
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesEe.php878
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesEl.php1345
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesEn.php1261
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesEn_gb.php91
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesEo.php519
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesEs.php1335
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesEt.php1288
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesEu.php950
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesFa.php1123
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesFf.php335
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesFi.php1591
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesFo.php453
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesFr.php1529
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesFur.php558
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesFy.php1145
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesGa.php1345
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesGd.php1421
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesGl.php996
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesGsw.php1003
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesGu.php1209
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesGv.php10
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesHa.php404
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesHaw.php81
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesHe.php1406
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesHi.php1216
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesHr.php1557
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesHsb.php975
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesHu.php1337
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesHy.php936
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesIa.php305
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesId.php1458
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesIg.php68
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesIi.php35
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesIs.php1269
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesIt.php1416
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesJa.php1528
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesKa.php1189
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesKab.php339
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesKi.php339
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesKk_cyrl.php908
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesKl.php339
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesKm.php880
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesKn.php1195
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesKo.php1305
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesKs.php958
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesKsh.php692
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesKw.php41
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesKy.php836
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesLb.php1314
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesLg.php340
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesLn.php403
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesLo.php1289
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesLt.php1567
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesLv.php1324
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesMg.php340
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesMk.php1368
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesMl.php1334
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesMn.php936
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesMr.php1195
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesMs.php958
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesMt.php686
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesMy.php758
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesNb.php1496
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesNe.php920
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesNl.php1591
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesNn.php1055
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesNso.php5
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesOm.php121
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesOr.php704
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesOs.php130
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesPa.php991
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesPl.php1534
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesPs.php186
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesPt.php292
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesPt_br.php1357
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesQu.php325
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesRm.php1032
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesRn.php337
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesRo.php1365
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesRu.php1453
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesRw.php114
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesSah.php79
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesSe.php452
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesSg.php336
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesShi.php336
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesShi_latn.php336
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesSi.php927
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesSk.php1435
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesSl.php1411
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesSn.php335
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesSo.php366
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesSq.php801
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesSr_ec.php1377
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesSs.php5
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesSt.php97
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesSv.php1442
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesSw.php1013
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesTa.php1201
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesTe.php1204
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesTg_cyrl.php76
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesTh.php1521
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesTi.php354
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesTn.php83
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesTo.php944
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesTr.php1553
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesTs.php29
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesTzm.php336
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesUg.php1124
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesUk.php1442
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesUr.php964
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesUz.php875
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesVe.php5
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesVi.php1417
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesVo.php23
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesXh.php109
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesYi.php394
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesYo.php394
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesZh_hans.php1413
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesZh_hant.php1522
-rw-r--r--MLEB/cldr/CldrNames/CldrNamesZu.php822
-rw-r--r--MLEB/cldr/CldrSupplemental/Supplemental.php1051
-rw-r--r--MLEB/cldr/CountryNames.body.php87
-rw-r--r--MLEB/cldr/CurrencyNames.body.php87
-rw-r--r--MLEB/cldr/LICENSE37
-rw-r--r--MLEB/cldr/LanguageNames.body.php145
-rw-r--r--MLEB/cldr/LocalNames/LocalNamesBe_tarask.php506
-rw-r--r--MLEB/cldr/LocalNames/LocalNamesEn.php171
-rw-r--r--MLEB/cldr/LocalNames/LocalNamesFa.php387
-rw-r--r--MLEB/cldr/LocalNames/LocalNamesJa.php409
-rw-r--r--MLEB/cldr/LocalNames/LocalNamesKk.php4
-rw-r--r--MLEB/cldr/LocalNames/LocalNamesNds.php508
-rw-r--r--MLEB/cldr/LocalNames/LocalNamesNo.php4
-rw-r--r--MLEB/cldr/LocalNames/LocalNamesSh.php509
-rw-r--r--MLEB/cldr/Makefile30
-rw-r--r--MLEB/cldr/README40
-rw-r--r--MLEB/cldr/RELEASE-NOTES5
-rw-r--r--MLEB/cldr/TimeUnits.body.php184
-rw-r--r--MLEB/cldr/cldr.i18n.php35
-rw-r--r--MLEB/cldr/cldr.php32
-rw-r--r--MLEB/cldr/composer.json11
-rw-r--r--MLEB/cldr/i18n/af.json8
-rw-r--r--MLEB/cldr/i18n/ar.json8
-rw-r--r--MLEB/cldr/i18n/arz.json9
-rw-r--r--MLEB/cldr/i18n/ast.json8
-rw-r--r--MLEB/cldr/i18n/azb.json8
-rw-r--r--MLEB/cldr/i18n/ba.json9
-rw-r--r--MLEB/cldr/i18n/bar.json8
-rw-r--r--MLEB/cldr/i18n/bcc.json8
-rw-r--r--MLEB/cldr/i18n/bcl.json8
-rw-r--r--MLEB/cldr/i18n/be-tarask.json9
-rw-r--r--MLEB/cldr/i18n/bg.json8
-rw-r--r--MLEB/cldr/i18n/bn.json9
-rw-r--r--MLEB/cldr/i18n/br.json8
-rw-r--r--MLEB/cldr/i18n/bs.json8
-rw-r--r--MLEB/cldr/i18n/ca.json9
-rw-r--r--MLEB/cldr/i18n/ce.json8
-rw-r--r--MLEB/cldr/i18n/cs.json10
-rw-r--r--MLEB/cldr/i18n/cy.json8
-rw-r--r--MLEB/cldr/i18n/da.json8
-rw-r--r--MLEB/cldr/i18n/de.json9
-rw-r--r--MLEB/cldr/i18n/dsb.json8
-rw-r--r--MLEB/cldr/i18n/el.json9
-rw-r--r--MLEB/cldr/i18n/en.json6
-rw-r--r--MLEB/cldr/i18n/eo.json9
-rw-r--r--MLEB/cldr/i18n/es.json9
-rw-r--r--MLEB/cldr/i18n/et.json8
-rw-r--r--MLEB/cldr/i18n/eu.json9
-rw-r--r--MLEB/cldr/i18n/fa.json9
-rw-r--r--MLEB/cldr/i18n/fi.json10
-rw-r--r--MLEB/cldr/i18n/fr.json9
-rw-r--r--MLEB/cldr/i18n/frp.json8
-rw-r--r--MLEB/cldr/i18n/fy.json9
-rw-r--r--MLEB/cldr/i18n/gd.json8
-rw-r--r--MLEB/cldr/i18n/gl.json8
-rw-r--r--MLEB/cldr/i18n/grc.json8
-rw-r--r--MLEB/cldr/i18n/gsw.json8
-rw-r--r--MLEB/cldr/i18n/gv.json8
-rw-r--r--MLEB/cldr/i18n/he.json9
-rw-r--r--MLEB/cldr/i18n/hi.json9
-rw-r--r--MLEB/cldr/i18n/hil.json8
-rw-r--r--MLEB/cldr/i18n/hsb.json8
-rw-r--r--MLEB/cldr/i18n/hu.json8
-rw-r--r--MLEB/cldr/i18n/ia.json8
-rw-r--r--MLEB/cldr/i18n/id.json9
-rw-r--r--MLEB/cldr/i18n/ig.json8
-rw-r--r--MLEB/cldr/i18n/ilo.json8
-rw-r--r--MLEB/cldr/i18n/it.json9
-rw-r--r--MLEB/cldr/i18n/ja.json11
-rw-r--r--MLEB/cldr/i18n/jv.json9
-rw-r--r--MLEB/cldr/i18n/kea.json8
-rw-r--r--MLEB/cldr/i18n/km.json9
-rw-r--r--MLEB/cldr/i18n/ko.json8
-rw-r--r--MLEB/cldr/i18n/ksh.json8
-rw-r--r--MLEB/cldr/i18n/lb.json8
-rw-r--r--MLEB/cldr/i18n/lg.json8
-rw-r--r--MLEB/cldr/i18n/li.json8
-rw-r--r--MLEB/cldr/i18n/lt.json8
-rw-r--r--MLEB/cldr/i18n/lv.json9
-rw-r--r--MLEB/cldr/i18n/mg.json8
-rw-r--r--MLEB/cldr/i18n/mk.json9
-rw-r--r--MLEB/cldr/i18n/ml.json9
-rw-r--r--MLEB/cldr/i18n/mr.json10
-rw-r--r--MLEB/cldr/i18n/ms.json9
-rw-r--r--MLEB/cldr/i18n/mt.json8
-rw-r--r--MLEB/cldr/i18n/nb.json8
-rw-r--r--MLEB/cldr/i18n/nds-nl.json8
-rw-r--r--MLEB/cldr/i18n/nds.json8
-rw-r--r--MLEB/cldr/i18n/ne.json10
-rw-r--r--MLEB/cldr/i18n/nl.json9
-rw-r--r--MLEB/cldr/i18n/nn.json9
-rw-r--r--MLEB/cldr/i18n/oc.json9
-rw-r--r--MLEB/cldr/i18n/or.json8
-rw-r--r--MLEB/cldr/i18n/pl.json9
-rw-r--r--MLEB/cldr/i18n/pms.json8
-rw-r--r--MLEB/cldr/i18n/pt-br.json9
-rw-r--r--MLEB/cldr/i18n/pt.json10
-rw-r--r--MLEB/cldr/i18n/qqq.json10
-rw-r--r--MLEB/cldr/i18n/ro.json8
-rw-r--r--MLEB/cldr/i18n/roa-tara.json8
-rw-r--r--MLEB/cldr/i18n/ru.json9
-rw-r--r--MLEB/cldr/i18n/rue.json8
-rw-r--r--MLEB/cldr/i18n/sah.json8
-rw-r--r--MLEB/cldr/i18n/sco.json8
-rw-r--r--MLEB/cldr/i18n/sk.json8
-rw-r--r--MLEB/cldr/i18n/sl.json8
-rw-r--r--MLEB/cldr/i18n/sli.json8
-rw-r--r--MLEB/cldr/i18n/sq.json8
-rw-r--r--MLEB/cldr/i18n/sr-ec.json9
-rw-r--r--MLEB/cldr/i18n/sr-el.json8
-rw-r--r--MLEB/cldr/i18n/stq.json8
-rw-r--r--MLEB/cldr/i18n/su.json8
-rw-r--r--MLEB/cldr/i18n/sv.json11
-rw-r--r--MLEB/cldr/i18n/te.json9
-rw-r--r--MLEB/cldr/i18n/tg-cyrl.json8
-rw-r--r--MLEB/cldr/i18n/tg-latn.json8
-rw-r--r--MLEB/cldr/i18n/tl.json9
-rw-r--r--MLEB/cldr/i18n/tr.json8
-rw-r--r--MLEB/cldr/i18n/ug-arab.json8
-rw-r--r--MLEB/cldr/i18n/ug.json8
-rw-r--r--MLEB/cldr/i18n/uk.json9
-rw-r--r--MLEB/cldr/i18n/vec.json8
-rw-r--r--MLEB/cldr/i18n/vep.json8
-rw-r--r--MLEB/cldr/i18n/vi.json9
-rw-r--r--MLEB/cldr/i18n/vo.json9
-rw-r--r--MLEB/cldr/i18n/yi.json8
-rw-r--r--MLEB/cldr/i18n/yue.json8
-rw-r--r--MLEB/cldr/i18n/zh-hans.json9
-rw-r--r--MLEB/cldr/i18n/zh-hant.json10
-rw-r--r--MLEB/cldr/rebuild.php456
-rw-r--r--MLEB/cldr/tests/TimeUnitsTest.php158
2839 files changed, 328247 insertions, 0 deletions
diff --git a/MLEB/Babel/Babel.class.php b/MLEB/Babel/Babel.class.php
new file mode 100644
index 00000000..0c40e332
--- /dev/null
+++ b/MLEB/Babel/Babel.class.php
@@ -0,0 +1,534 @@
+<?php
+/**
+ * Contains main code.
+ *
+ * @file
+ * @author Robert Leverington
+ * @author Robin Pepermans
+ * @author Niklas Laxström
+ * @author Brian Wolff
+ * @author Purodha Blissenbach
+ * @author Sam Reed
+ * @author Siebrand Mazeland
+ * @license http://www.gnu.org/copyleft/gpl.html GNU General Public License 2.0 or later
+ */
+
+/**
+ * Main class for the Babel extension.
+ */
+class Babel {
+ /**
+ * @var Title
+ */
+ protected static $title;
+
+ /**
+ * Render the Babel tower.
+ *
+ * @param $parser Parser.
+ * @return string: Babel tower.
+ */
+ public static function Render( $parser ) {
+ wfProfileIn( __METHOD__ );
+ global $wgBabelUseUserLanguage;
+ $parameters = func_get_args();
+ array_shift( $parameters );
+ self::$title = $parser->getTitle();
+
+ self::mTemplateLinkBatch( $parameters );
+
+ $parser->getOutput()->addModuleStyles( 'ext.babel' );
+
+ $content = '';
+ $templateParameters = array(); // collects name=value parameters to be passed to wiki templates.
+ $createCategories = !$parser->mOptions->mIsPreview;
+ foreach ( $parameters as $name ) {
+ if ( strpos( $name, '=' ) !== false ) {
+ $templateParameters[] = $name;
+ continue;
+ }
+ $components = self::mParseParameter( $name );
+ $template = wfMessage( 'babel-template', $name )->inContentLanguage()->text();
+ if ( $name === '' ) {
+ continue;
+ } elseif ( $components !== false ) {
+ // Valid parameter syntax (with lowercase language code), babel box
+ $content .= self::mGenerateBox( $components['code'], $components['level'] );
+ $content .= self::mGenerateCategories(
+ $components['code'],
+ $components['level'],
+ $createCategories
+ );
+ } elseif ( self::mPageExists( $template ) ) {
+ // Check for an existing template
+ $templateParameters[0] = $template;
+ $template = implode( '|', $templateParameters );
+ $content .= self::mGenerateNotaBox( $parser->replaceVariables( "{{{$template}}}" ) );
+ } elseif ( self::mValidTitle( $template ) ) {
+ // Non-existing page, so try again as a babel box,
+ // with converting the code to lowercase
+ $components2 = self::mParseParameter( $name, /* code to lowercase */
+ true );
+ if ( $components2 !== false ) {
+ $content .= self::mGenerateBox( $components2['code'], $components2['level'] );
+ $content .= self::mGenerateCategories(
+ $components2['code'],
+ $components2['level'],
+ $createCategories
+ );
+ } else {
+ // Non-existent page and invalid parameter syntax, red link.
+ $content .= self::mGenerateNotaBox( '[[' . $template . ']]' );
+ }
+ } else {
+ // Invalid title, output raw.
+ $content .= self::mGenerateNotaBox( $template );
+ }
+ }
+
+ if ( $wgBabelUseUserLanguage ) {
+ $uiLang = $parser->getOptions()->getUserLangObj();
+ } else {
+ $uiLang = self::$title->getPageLanguage();
+ }
+
+ $top = wfMessage( 'babel', self::$title->getDBkey() )->inLanguage( $uiLang );
+
+ if ( $top->isDisabled() ) {
+ $top = '';
+ } else {
+ $top = $top->text();
+ $url = wfMessage( 'babel-url' )->inContentLanguage();
+ if ( !$url->isDisabled() ) {
+ $top = '[[' . $url->text() . '|' . $top . ']]';
+ }
+ $top = '! class="mw-babel-header" | ' . $top;
+ }
+ $footer = wfMessage( 'babel-footer', self::$title->getDBkey() )->inLanguage( $uiLang );
+
+ $url = wfMessage( 'babel-footer-url' )->inContentLanguage();
+ $showfooter = '';
+ if ( !$footer->isDisabled() && !$url->isDisabled() ) {
+ $showfooter = '! class="mw-babel-footer" | [[' .
+ $url->text() . '|' . $footer->text() . ']]';
+ }
+ $spacing = Babel::mCssAttrib( 'border-spacing', 'babel-box-cellspacing', true );
+ $padding = Babel::mCssAttrib( 'padding', 'babel-box-cellpadding', true );
+
+ if ( $spacing === '' ) {
+ $style = ( $padding === '' ) ? '' : ( 'style="' . $padding . '"' );
+ } else {
+ $style = ( $padding === '' ) ?
+ 'style="' . $spacing . '"' :
+ 'style="' . $padding . ' ' . $spacing . '"';
+ }
+
+ $tower = <<<EOT
+{|$style class="mw-babel-wrapper"
+$top
+|-
+| $content
+|-
+$showfooter
+|}
+EOT;
+ wfProfileOut( __METHOD__ );
+
+ return $tower;
+ }
+
+ /**
+ * Performs a link batch on a series of templates.
+ *
+ * @param $parameters Array: Templates to perform the link batch on.
+ */
+ protected static function mTemplateLinkBatch( $parameters ) {
+ wfProfileIn( __METHOD__ );
+ $titles = array();
+ foreach ( $parameters as $name ) {
+ $title = Title::newFromText( wfMessage( 'babel-template', $name )->inContentLanguage()->text() );
+ if ( is_object( $title ) ) {
+ $titles[] = $title;
+ }
+ }
+
+ $batch = new LinkBatch( $titles );
+ $batch->setCaller( __METHOD__ );
+ $batch->execute();
+ wfProfileOut( __METHOD__ );
+ }
+
+ /**
+ * Identify whether or not a page exists.
+ *
+ * @param $name String: Name of the page to check.
+ * @return Boolean: Indication of whether the page exists.
+ */
+ protected static function mPageExists( $name ) {
+ $titleObj = Title::newFromText( $name );
+
+ return ( is_object( $titleObj ) && $titleObj->exists() );
+ }
+
+ /**
+ * Identify whether or not the passed string would make a valid page name.
+ *
+ * @param $name string: Name of page to check.
+ * @return Boolean: Indication of whether or not the title is valid.
+ */
+ protected static function mValidTitle( $name ) {
+ $titleObj = Title::newFromText( $name );
+
+ return is_object( $titleObj );
+ }
+
+ /**
+ * Parse a parameter, getting a language code and level.
+ *
+ * @param $parameter String: Parameter.
+ * @param $strtolower Boolean: Whether to convert the language code to lowercase
+ * @return Array: { 'code' => xx, 'level' => xx }
+ */
+ protected static function mParseParameter( $parameter, $strtolower = false ) {
+ wfProfileIn( __METHOD__ );
+ global $wgBabelDefaultLevel, $wgBabelCategoryNames;
+ $return = array();
+
+ $babelcode = $strtolower ? strtolower( $parameter ) : $parameter;
+ // Try treating the paramter as a language code (for default level).
+ $code = BabelLanguageCodes::getCode( $babelcode );
+ if ( $code !== false ) {
+ $return['code'] = $code;
+ $return['level'] = $wgBabelDefaultLevel;
+ wfProfileOut( __METHOD__ );
+
+ return $return;
+ }
+ // Try splitting the paramter in to language and level, split on last hyphen.
+ $lastSplit = strrpos( $parameter, '-' );
+ if ( $lastSplit === false ) {
+ wfProfileOut( __METHOD__ );
+
+ return false;
+ }
+ $code = substr( $parameter, 0, $lastSplit );
+ $level = substr( $parameter, $lastSplit + 1 );
+
+ $babelcode = $strtolower ? strtolower( $code ) : $code;
+ // Validate code.
+ $return['code'] = BabelLanguageCodes::getCode( $babelcode );
+ if ( $return['code'] === false ) {
+ wfProfileOut( __METHOD__ );
+
+ return false;
+ }
+ // Validate level.
+ $level = strtoupper( $level );
+ if ( !isset( $wgBabelCategoryNames[$level] ) ) {
+ wfProfileOut( __METHOD__ );
+
+ return false;
+ }
+ $return['level'] = $level;
+ wfProfileOut( __METHOD__ );
+
+ return $return;
+ }
+
+ /**
+ * Generate an inner item which is not a babel box.
+ *
+ * @param $content String: what's inside the box, in wikitext format.
+ * @return String: A single non-babel box, in wikitext format.
+ */
+ protected static function mGenerateNotaBox( $content ) {
+ $dir_head = self::$title->getPageLanguage()->getDir();
+ $notabox = <<<EOT
+<div class="mw-babel-notabox" dir="$dir_head">$content</div>
+EOT;
+
+ return $notabox;
+ }
+
+ /**
+ * Generate a babel box for the given language and level.
+ *
+ * @param $code String: Language code to use.
+ * @param $level String or Integer: Level of ability to use.
+ * @return String: A single babel box, in wikitext format.
+ */
+ protected static function mGenerateBox( $code, $level ) {
+ wfProfileIn( __METHOD__ );
+ $lang = wfBCP47( $code );
+ $portal = wfMessage( 'babel-portal', $code )->inContentLanguage()->plain();
+ if ( $portal !== '' ) {
+ $portal = "[[$portal|$lang]]";
+ } else {
+ $portal = $lang;
+ }
+ $header = "$portal<span class=\"mw-babel-box-level-$level\">-$level</span>";
+
+ $code = strtolower( $code );
+ $name = BabelLanguageCodes::getName( $code );
+ $code = BabelLanguageCodes::getCode( $code );
+ $text = self::mGetText( $name, $code, $level );
+
+ $dir_current = Language::factory( $code )->getDir();
+
+ $spacing = Babel::mCssAttrib( 'border-spacing', 'babel-cellspacing', true );
+ $padding = Babel::mCssAttrib( 'padding', 'babel-cellpadding', true );
+
+ if ( $spacing === '' ) {
+ $style = ( $padding === '' ) ? '' : ( 'style="' . $padding . '"' );
+ } else {
+ $style = ( $padding === '' ) ?
+ 'style="' . $spacing . '"' :
+ 'style="' . $padding . ' ' . $spacing . '"';
+ }
+
+ $dir_head = self::$title->getPageLanguage()->getDir();
+
+ $box = <<<EOT
+<div class="mw-babel-box mw-babel-box-$level" dir="$dir_head">
+{|$style
+! dir="$dir_head" | $header
+| dir="$dir_current" lang="$lang" | $text
+|}
+</div>
+EOT;
+ wfProfileOut( __METHOD__ );
+
+ return $box;
+ }
+
+ /**
+ * Get the text to display in the language box for specific language and
+ * level.
+ *
+ * @param $name string
+ * @param $language String: Language code of language to use.
+ * @param $level String: Level to use.
+ * @return String: Text for display, in wikitext format.
+ */
+ protected static function mGetText( $name, $language, $level ) {
+ wfProfileIn( __METHOD__ );
+ global $wgBabelMainCategory, $wgBabelCategoryNames;
+
+ if ( $wgBabelCategoryNames[$level] === false ) {
+ $categoryLevel = self::$title->getFullText();
+ } else {
+ $categoryLevel = ':Category:' .
+ self::mReplaceCategoryVariables( $wgBabelCategoryNames[$level], $language );
+ }
+
+ if ( $wgBabelMainCategory === false ) {
+ $categoryMain = self::$title->getFullText();
+ } else {
+ $categoryMain = ':Category:' .
+ self::mReplaceCategoryVariables( $wgBabelMainCategory, $language );
+ }
+
+ // Give grep a chance to find the usages:
+ // babel-0-n, babel-1-n, babel-2-n, babel-3-n, babel-4-n, babel-5-n, babel-N-n
+ $text = wfMessage( "babel-$level-n",
+ $categoryLevel, $categoryMain, '', self::$title->getDBkey()
+ )->inLanguage( $language )->text();
+
+ $fallbackLanguage = Language::getFallbackfor( $language );
+ $fallback = wfMessage( "babel-$level-n",
+ $categoryLevel, $categoryMain, '', self::$title->getDBkey()
+ )->inLanguage( $fallbackLanguage ? $fallbackLanguage : $language )->text();
+
+ // Give grep a chance to find the usages:
+ // babel-0, babel-1, babel-2, babel-3, babel-4, babel-5, babel-N
+ if ( $text == $fallback ) {
+ $text = wfMessage( "babel-$level",
+ $categoryLevel, $categoryMain, $name, self::$title->getDBkey()
+ )->inLanguage( $language )->text();
+ }
+
+ wfProfileOut( __METHOD__ );
+
+ return $text;
+ }
+
+ /**
+ * Generate categories for the given language and level.
+ *
+ * @param $code String: Language code to use.
+ * @param $level String or Integer: Level of ability to use.
+ * @param $createCategories Boolean: If true, creates non existing categories;
+ * otherwise, doesn't create them.
+ * @return String: Wikitext to add categories.
+ */
+ protected static function mGenerateCategories( $code, $level, $createCategories = true ) {
+ wfProfileIn( __METHOD__ );
+ global $wgBabelMainCategory, $wgBabelCategoryNames;
+
+ $r = '';
+
+ # Add main category
+ if ( $wgBabelMainCategory !== false ) {
+ $category = self::mReplaceCategoryVariables( $wgBabelMainCategory, $code );
+ $r .= "[[Category:$category|$level]]";
+ if ( $createCategories ) {
+ BabelAutoCreate::create( $category, $code );
+ }
+ }
+
+ # Add level category
+ if ( $wgBabelCategoryNames[$level] !== false ) {
+ $category = self::mReplaceCategoryVariables( $wgBabelCategoryNames[$level], $code );
+ $r .= "[[Category:$category]]";
+ if ( $createCategories ) {
+ BabelAutoCreate::create( $category, $code, $level );
+ }
+ }
+
+ wfProfileOut( __METHOD__ );
+
+ return $r;
+ }
+
+ /**
+ * Replace the placeholder variables from the category names configurtion
+ * array with actual values.
+ *
+ * @param $category String: Category name (containing variables).
+ * @param $code String: Language code of category.
+ * @return String: Category name with variables replaced.
+ */
+ protected static function mReplaceCategoryVariables( $category, $code ) {
+ global $wgLanguageCode;
+ $category = strtr( $category, array(
+ '%code%' => $code,
+ '%wikiname%' => BabelLanguageCodes::getName( $code, $wgLanguageCode ),
+ '%nativename%' => BabelLanguageCodes::getName( $code )
+ ) );
+
+ return $category;
+ }
+
+ /**
+ * Determine a CSS attribute, such as "border-spacing", from a localizeable message.
+ *
+ * @param $name String: name of CSS attribute.
+ * @param $key String: Message key of attribute value.
+ * @param $assumeNumbersArePixels Boolean: if true, treat numbers values as pixels;
+ * otherwise, keep values as is (default: false).
+ * @todo Move this function to a more appropriate place, likely outside the class.
+ * @return Message|string
+ */
+ protected static function mCssAttrib( $name, $key, $assumeNumbersArePixels = false ) {
+ $value = wfMessage( $key )->inContentLanguage();
+ if ( $value->isDisabled() ) {
+ $value = '';
+ } else {
+ $value = htmlentities( $value->text(), ENT_COMPAT, 'UTF-8' );
+ if ( $assumeNumbersArePixels && is_numeric( $value ) && $value !== "0" ) {
+ //Compatibility: previous babel-box-cellpadding and
+ //babel-box-cellspacing entries were in HTML, not CSS
+ //and so used numbers without unity as pixels.
+ $value .= 'px';
+ }
+ $value = ' ' . $name . ': ' . $value . ';';
+ }
+
+ return $value;
+ }
+
+ /**
+ * Determine an HTML attribute, such as "cellspacing" or "title", from a localizeable message.
+ *
+ * @param $name String: name of HTML attribute.
+ * @param $key String: Message key of attribute value.
+ * TODO: move this function to a more appropriate place, likely outside the class.
+ * or consider to deprecate it as it's not used anymore.
+ * @return Message|string
+ */
+ protected static function mHtmlAttrib( $name, $key ) {
+ $value = wfMessage( $key )->inContentLanguage();
+ if ( $value->isDisabled() ) {
+ $value = '';
+ } else {
+ $value = ' ' . $name . '="' . htmlentities( $value->text(), ENT_COMPAT, 'UTF-8' ) .
+ '"'; // must get rid of > and " inside value
+ }
+
+ return $value;
+ }
+
+ /**
+ * Gets the list of languages a user has set up with Babel
+ *
+ * TODO Can be done much smarter, e.g. by saving the languages in the DB and getting them there
+ * TODO There could be an API module that returns the result of this function
+ *
+ * @param User $user
+ * @param string $level minimal level as given in $wgBabelCategoryNames
+ * @return string[] List of language codes
+ *
+ * @since Version 1.9.0
+ */
+ public static function getUserLanguages( User $user, $level = null ) {
+ // Right now the function only returns something if the user is categorized appropriately
+ // (as defined by the $wgBabelMainCategory setting). If categorization is off, this function
+ // will return an empty array.
+ // If Babel would save the languages of the user in a Database table, this workaround using
+ // the categories would not be needed.
+ global $wgBabelMainCategory;
+ // If Babel is not configured as required, return nothing.
+ // Note also that "Set to false to disable main category".
+ if ( $wgBabelMainCategory === false ) {
+ return array();
+ }
+
+ // The string we construct here will be a pony, it will not be a valid category
+ $babelCategoryTitle = Title::makeTitle( NS_CATEGORY, $wgBabelMainCategory );
+ // Quote everything to avoid unexpected matches due to parenthesis form
+ // It is not necessary to quote any additional chars except the special chars for the regex
+ // and perhaps the limiting char, but that should not be respected as anything other than
+ // edge delimiter.
+ $babelCategoryString = preg_quote( $babelCategoryTitle->getPrefixedDBkey(), '/' );
+ // Look for the %code% inside the string and put a group match in the same place
+ // This will only work if the previous works so the string isn't misinterpreted as a regular
+ // expression itself
+ $codeRegex = '/^' . preg_replace( '/%code%/', '(.+?)(-([0-5N]))?', $babelCategoryString ) . '$/';
+
+ $categories = array_keys( $user->getUserPage()->getParentCategories() );
+
+ // We sort on proficiency level
+ $result = array();
+ foreach ( $categories as $category ) {
+ // Only process categories that matches, $match will be created if necessary
+ $res = preg_match( $codeRegex, $category, $match );
+ if ( $res ) {
+ // lowercase the first char, but stay away from the others in case of region codes
+ $code = BabelLanguageCodes::getCode( lcfirst( $match[1] ) );
+ if ( $code !== false ) {
+ $result[$code] = isset( $match[3] ) ? $match[3] : 'N';
+ }
+ }
+ }
+
+ if ( isset( $level ) ) {
+ $level = (string)$level;
+ // filter down the set, note that this uses a text sort!
+ $result = array_filter(
+ $result,
+ function ( $value ) use ( $level ) {
+ return ( strcmp( $value, $level ) >= 0 );
+ }
+ );
+ // sort and retain keys
+ uasort(
+ $result,
+ function ( $a, $b ) {
+ return -strcmp( $a, $b );
+ }
+ );
+ }
+
+ return array_keys( $result );
+ }
+}
diff --git a/MLEB/Babel/Babel.i18n.magic.php b/MLEB/Babel/Babel.i18n.magic.php
new file mode 100644
index 00000000..00b54cd7
--- /dev/null
+++ b/MLEB/Babel/Babel.i18n.magic.php
@@ -0,0 +1,179 @@
+<?php
+/**
+ * Internationalisation file for Babel extension.
+ *
+ * @file
+ * @ingroup Extensions
+ */
+
+$magicWords = array();
+
+/** English (English) */
+$magicWords['en'] = array(
+ 'babel' => array( 0, 'babel' ),
+);
+
+/** Arabic (العربية) */
+$magicWords['ar'] = array(
+ 'babel' => array( 0, 'بابل' ),
+);
+
+/** Aramaic (ܐܪܡܝܐ) */
+$magicWords['arc'] = array(
+ 'babel' => array( 0, 'ܒܒܠ' ),
+);
+
+/** Egyptian Spoken Arabic (مصرى) */
+$magicWords['arz'] = array(
+ 'babel' => array( 0, 'بابل' ),
+);
+
+/** Chechen (нохчийн) */
+$magicWords['ce'] = array(
+ 'babel' => array( 0, 'вавилон' ),
+);
+
+/** Zazaki (Zazaki) */
+$magicWords['diq'] = array(
+ 'babel' => array( 0, 'babil' ),
+);
+
+/** Esperanto (Esperanto) */
+$magicWords['eo'] = array(
+ 'babel' => array( 0, 'babelo' ),
+);
+
+/** Spanish (español) */
+$magicWords['es'] = array(
+ 'babel' => array( 0, 'babel' ),
+);
+
+/** Estonian (eesti) */
+$magicWords['et'] = array(
+ 'babel' => array( 0, 'paabel' ),
+);
+
+/** Persian (فارسی) */
+$magicWords['fa'] = array(
+ 'babel' => array( 0, 'بابل' ),
+);
+
+/** French (français) */
+$magicWords['fr'] = array(
+ 'babel' => array( 0, 'Babel' ),
+);
+
+/** Franco-Provençal (arpetan) */
+$magicWords['frp'] = array(
+ 'babel' => array( 0, 'babél' ),
+);
+
+/** Hawaiian (Hawai`i) */
+$magicWords['haw'] = array(
+ 'babel' => array( 0, 'babela' ),
+);
+
+/** Hebrew (עברית) */
+$magicWords['he'] = array(
+ 'babel' => array( 0, 'בבל' ),
+);
+
+/** Hindi (हिन्दी) */
+$magicWords['hi'] = array(
+ 'babel' => array( 0, 'बेबल' ),
+);
+
+/** Japanese (日本語) */
+$magicWords['ja'] = array(
+ 'babel' => array( 0, 'バベル' ),
+);
+
+/** Georgian (ქართული) */
+$magicWords['ka'] = array(
+ 'babel' => array( 0, 'ბაბილონი' ),
+);
+
+/** Korean (한국어) */
+$magicWords['ko'] = array(
+ 'babel' => array( 0, '바벨' ),
+);
+
+/** Minangkabau (Baso Minangkabau) */
+$magicWords['min'] = array(
+ 'babel' => array( 0, 'bhs' ),
+);
+
+/** Macedonian (македонски) */
+$magicWords['mk'] = array(
+ 'babel' => array( 0, 'вавилон' ),
+);
+
+/** Malayalam (മലയാളം) */
+$magicWords['ml'] = array(
+ 'babel' => array( 0, 'ബാബേൽ' ),
+);
+
+/** Marathi (मराठी) */
+$magicWords['mr'] = array(
+ 'babel' => array( 0, 'बॅबेल' ),
+);
+
+/** Pashto (پښتو) */
+$magicWords['ps'] = array(
+ 'babel' => array( 0, 'بابېل', 'babel' ),
+);
+
+/** Russian (русский) */
+$magicWords['ru'] = array(
+ 'babel' => array( 0, 'вавилон' ),
+);
+
+/** Sinhala (සිංහල) */
+$magicWords['si'] = array(
+ 'babel' => array( 0, 'බාබෙල්', 'babel' ),
+);
+
+/** Slovak (slovenčina) */
+$magicWords['sk'] = array(
+ 'babel' => array( 0, 'babylon' ),
+);
+
+/** Serbian (Cyrillic script) (српски (ћирилица)‎) */
+$magicWords['sr-ec'] = array(
+ 'babel' => array( 0, 'бабел' ),
+);
+
+/** Serbian (Latin script) (srpski (latinica)‎) */
+$magicWords['sr-el'] = array(
+ 'babel' => array( 0, 'babel' ),
+);
+
+/** Turkish (Türkçe) */
+$magicWords['tr'] = array(
+ 'babel' => array( 0, 'babil' ),
+);
+
+/** Tuvinian (тыва дыл) */
+$magicWords['tyv'] = array(
+ 'babel' => array( 0, 'вавилон' ),
+);
+
+/** Ukrainian (українська) */
+$magicWords['uk'] = array(
+ 'babel' => array( 0, 'вавилон', 'вавілон' ),
+);
+
+/** Urdu (اردو) */
+$magicWords['ur'] = array(
+ 'babel' => array( 0, 'بابل' ),
+);
+
+/** Simplified Chinese (中文(简体)‎) */
+$magicWords['zh-hans'] = array(
+ 'babel' => array( 0, '巴别' ),
+);
+
+/** Traditional Chinese (中文(繁體)‎) */
+$magicWords['zh-hant'] = array(
+ 'babel' => array( 0, '巴別' ),
+); \ No newline at end of file
diff --git a/MLEB/Babel/Babel.i18n.php b/MLEB/Babel/Babel.i18n.php
new file mode 100644
index 00000000..ad3c8f37
--- /dev/null
+++ b/MLEB/Babel/Babel.i18n.php
@@ -0,0 +1,35 @@
+<?php
+/**
+ * This is a backwards-compatibility shim, generated by:
+ * https://git.wikimedia.org/blob/mediawiki%2Fcore.git/HEAD/maintenance%2FgenerateJsonI18n.php
+ *
+ * Beginning with MediaWiki 1.23, translation strings are stored in json files,
+ * and the EXTENSION.i18n.php file only exists to provide compatibility with
+ * older releases of MediaWiki. For more information about this migration, see:
+ * https://www.mediawiki.org/wiki/Requests_for_comment/Localisation_format
+ *
+ * This shim maintains compatibility back to MediaWiki 1.17.
+ */
+$messages = array();
+if ( !function_exists( 'wfJsonI18nShim746acc9867bbb334' ) ) {
+ function wfJsonI18nShim746acc9867bbb334( $cache, $code, &$cachedData ) {
+ $codeSequence = array_merge( array( $code ), $cachedData['fallbackSequence'] );
+ foreach ( $codeSequence as $csCode ) {
+ $fileName = dirname( __FILE__ ) . "/i18n/$csCode.json";
+ if ( is_readable( $fileName ) ) {
+ $data = FormatJson::decode( file_get_contents( $fileName ), true );
+ foreach ( array_keys( $data ) as $key ) {
+ if ( $key === '' || $key[0] === '@' ) {
+ unset( $data[$key] );
+ }
+ }
+ $cachedData['messages'] = array_merge( $data, $cachedData['messages'] );
+ }
+
+ $cachedData['deps'][] = new FileDependency( $fileName );
+ }
+ return true;
+ }
+
+ $GLOBALS['wgHooks']['LocalisationCacheRecache'][] = 'wfJsonI18nShim746acc9867bbb334';
+}
diff --git a/MLEB/Babel/Babel.php b/MLEB/Babel/Babel.php
new file mode 100644
index 00000000..6dd1cf85
--- /dev/null
+++ b/MLEB/Babel/Babel.php
@@ -0,0 +1,84 @@
+<?php
+/**
+ * Babel Extension
+ *
+ * Adds a parser function to allow automated generation of a babel userbox
+ * column with the ability to include custom templates.
+ *
+ * @file
+ * @ingroup Extensions
+ *
+ * @link http://www.mediawiki.org/wiki/Extension:Babel
+ *
+ * @author Robert Leverington <robert@rhl.me.uk>
+ * @copyright Copyright © 2008 - 2011 Robert Leverington.
+ * @license http://www.gnu.org/copyleft/gpl.html GNU General Public License 2.0 or later
+ */
+
+if ( !defined( 'MEDIAWIKI' ) ) {
+ die( 'Invalid entry point.' );
+}
+
+$GLOBALS['wgExtensionCredits']['parserhook'][] = array(
+ 'path' => __FILE__,
+ 'name' => 'Babel',
+ 'version' => '[https://www.mediawiki.org/wiki/MLEB MLEB 2014.11]',
+ 'author' => 'Robert Leverington',
+ 'url' => 'https://www.mediawiki.org/wiki/Extension:Babel',
+ 'descriptionmsg' => 'babel-desc',
+);
+
+$GLOBALS['wgHooks']['ParserFirstCallInit'][] = 'BabelStatic::onParserFirstCallInit';
+$GLOBALS['wgHooks']['AbortNewAccount'][] = 'BabelAutoCreate::onAbortNewAccount';
+
+$dir = __DIR__ . '/';
+
+$GLOBALS['wgMessagesDirs']['Babel'] = __DIR__ . '/i18n';
+$GLOBALS['wgExtensionMessagesFiles']['Babel'] = $dir . 'Babel.i18n.php';
+$GLOBALS['wgExtensionMessagesFiles']['BabelMagic'] = $dir . 'Babel.i18n.magic.php';
+
+$GLOBALS['wgAutoloadClasses']['Babel'] = $dir . 'Babel.class.php';
+$GLOBALS['wgAutoloadClasses']['BabelLanguageCodes'] = $dir . 'BabelLanguageCodes.class.php';
+$GLOBALS['wgAutoloadClasses']['BabelStatic'] = $dir . 'BabelStatic.class.php';
+$GLOBALS['wgAutoloadClasses']['BabelAutoCreate'] = $dir . 'BabelAutoCreate.class.php';
+
+$GLOBALS['wgResourceModules']['ext.babel'] = array(
+ 'styles' => 'resources/ext.babel.css',
+ 'localBasePath' => __DIR__,
+ 'remoteExtPath' => 'Babel',
+);
+
+// Configuration setttings.
+// Language names and codes constant database files, the defaults should suffice.
+$GLOBALS['wgBabelLanguageCodesCdb'] = $dir . 'codes.cdb';
+$GLOBALS['wgBabelLanguageNamesCdb'] = $dir . 'names.cdb';
+// Array of possible levels, and their category name - variables: %code% %wikiname% %nativename%
+// Set to false to disable categories for a particular level.
+// Alphabetical levels should be in upper case.
+$GLOBALS['wgBabelCategoryNames'] = array(
+ '0' => '%code%-0',
+ '1' => '%code%-1',
+ '2' => '%code%-2',
+ '3' => '%code%-3',
+ '4' => '%code%-4',
+ '5' => '%code%-5',
+ 'N' => '%code%-N'
+);
+// Category name for the main (non-level) category of each language.
+// Set to false to disable main category.
+$GLOBALS['wgBabelMainCategory'] = '%code%';
+// Default level.
+$GLOBALS['wgBabelDefaultLevel'] = 'N';
+// Use the viewing user's language for babel box header's and footer's
+// May fragment parser cache, but otherwise shouldn't cause problems
+$GLOBALS['wgBabelUseUserLanguage'] = false;
+// A boolean (true or false) indicating whether ISO 639-3 codes should be
+// preferred over ISO 639-1 codes.
+$GLOBALS['wgBabelPreferISO639_3'] = false; // Not yet used.
+
+/* Other settings, to be made in-wiki:
+MediaWiki:Babel-template
+ The name format of template names used in the babel extension.
+MediaWiki:Babel-portal
+ The name format of the portal link for each language.
+*/
diff --git a/MLEB/Babel/BabelAutoCreate.class.php b/MLEB/Babel/BabelAutoCreate.class.php
new file mode 100644
index 00000000..70b116bd
--- /dev/null
+++ b/MLEB/Babel/BabelAutoCreate.class.php
@@ -0,0 +1,118 @@
+<?php
+/**
+ * Code for automatic creation of categories.
+ *
+ * @file
+ * @author Robert Leverington
+ * @author Robin Pepermans
+ * @author Niklas Laxström
+ * @author Brian Wolff
+ * @author Purodha Blissenbach
+ * @author Sam Reed
+ * @author Siebrand Mazeland
+ * @license http://www.gnu.org/copyleft/gpl.html GNU General Public License 2.0 or later
+ */
+
+/**
+ * Class for automatic creation of Babel category pages.
+ */
+class BabelAutoCreate {
+ /**
+ * @var User
+ */
+ protected static $user = false;
+
+ /**
+ * Abort user creation if the username is that of the autocreation username.
+ * @param $user User
+ * @param $errorText
+ * @return bool
+ */
+ public static function onAbortNewAccount( User $user, &$errorText ) {
+ $url = wfMessage( 'babel-url' )->text();
+ $errorText = wfMessage( 'babel-autocreate-abort', $url )->parse();
+ $autoCreateUser = wfMessage( 'babel-autocreate-user' )->inContentLanguage()->plain();
+
+ return $user->getName() !== $autoCreateUser;
+ }
+
+ /**
+ * Create category.
+ *
+ * @param $category String: Name of category to create.
+ * @param $code String: Code of language that the category is for.
+ * @param $level String: Level that the category is for.
+ */
+ public static function create( $category, $code, $level = null ) {
+ wfProfileIn( __METHOD__ );
+ $category = strip_tags( $category );
+ $title = Title::makeTitleSafe( NS_CATEGORY, $category );
+ if ( $title === null || $title->exists() ) {
+ wfProfileOut( __METHOD__ );
+
+ return;
+ }
+ global $wgLanguageCode;
+ $language = BabelLanguageCodes::getName( $code, $wgLanguageCode );
+ $params = array( $language, $code );
+ if ( $level === null ) {
+ $text = wfMessage( 'babel-autocreate-text-main', $params )->inContentLanguage()->text();
+ } else {
+ array_unshift( $params, $level );
+ $text = wfMessage( 'babel-autocreate-text-levels', $params )->inContentLanguage()->text();
+ }
+
+ $user = self::user();
+ # Do not add a message if the username is invalid or if the account that adds it, is blocked
+ if ( !$user || $user->isBlocked() ) {
+ wfProfileOut( __METHOD__ );
+
+ return;
+ }
+
+ if ( !$title->quickUserCan( 'create', $user ) ) {
+ wfProfileOut( __METHOD__ );
+
+ return; # The Babel AutoCreate account is not allowed to create the page
+ }
+
+ /* $article->doEdit will call $wgParser->parse.
+ * Calling Parser::parse recursively is baaaadd... (bug 29245)
+ * @todo FIXME: surely there is a better way?
+ */
+ global $wgParser, $wgParserConf;
+ $oldParser = $wgParser;
+ $parserClass = $wgParserConf['class'];
+ $wgParser = new $parserClass( $wgParserConf );
+
+ $url = wfMessage( 'babel-url' )->inContentLanguage()->plain();
+ $article = new WikiPage( $title );
+ $article->doEdit(
+ $text,
+ wfMessage( 'babel-autocreate-reason', $url )->text(),
+ EDIT_FORCE_BOT,
+ false,
+ $user
+ );
+
+ $wgParser = $oldParser;
+ wfProfileOut( __METHOD__ );
+ }
+
+ /**
+ * Get user object.
+ *
+ * @return User object: User object for autocreate user.
+ */
+ public static function user() {
+ if ( !self::$user ) {
+ $userName = wfMessage( 'babel-autocreate-user' )->inContentLanguage()->plain();
+ self::$user = User::newFromName( $userName );
+ if ( self::$user && !self::$user->isLoggedIn() ) {
+ self::$user->addToDatabase();
+ }
+ }
+
+ return self::$user;
+ }
+}
diff --git a/MLEB/Babel/BabelLanguageCodes.class.php b/MLEB/Babel/BabelLanguageCodes.class.php
new file mode 100644
index 00000000..59ba6752
--- /dev/null
+++ b/MLEB/Babel/BabelLanguageCodes.class.php
@@ -0,0 +1,89 @@
+<?php
+/**
+ * Code for language code and name processing.
+ *
+ * @file
+ * @author Robert Leverington
+ * @license http://www.gnu.org/copyleft/gpl.html GNU General Public License 2.0 or later
+ */
+
+/**
+ * Handle language code and name processing for the Babel extension, it can also
+ * be used by other extension which need such functionality.
+ */
+class BabelLanguageCodes {
+ /**
+ * Takes a language code, and attempt to obtain a better variant of it,
+ * checks the MediaWiki language codes for a match, otherwise checks the
+ * Babel language codes CDB (preferring ISO 639-1 over ISO 639-3).
+ *
+ * @param $code String: Code to try and get a "better" code for.
+ * @return String (language code) or false (invalid language code).
+ */
+ public static function getCode( $code ) {
+ wfProfileIn( __METHOD__ );
+ global $wgBabelLanguageCodesCdb;
+
+ $mediawiki = Language::fetchLanguageName( $code );
+ if ( $mediawiki !== '' ) {
+ wfProfileOut( __METHOD__ );
+
+ return $code;
+ }
+
+ $codes = false;
+ try {
+ $codesCdb = CdbReader::open( $wgBabelLanguageCodesCdb );
+ $codes = $codesCdb->get( $code );
+ } catch ( CdbException $e ) {
+ wfDebug( __METHOD__ . ": CdbException caught, error message was "
+ . $e->getMessage() );
+ }
+ wfProfileOut( __METHOD__ );
+
+ return $codes;
+ }
+
+ /**
+ * Take a code as input, and search a language name for it in
+ * a given language via Language::fetchLanguageNames() or
+ * else via the Babel language names CDB
+ *
+ * @param $code String: Code to get name for.
+ * @param $language String: Code of language to attempt to get name in,
+ * defaults to language of code.
+ * @return String (name of language) or false (invalid language code).
+ */
+ public static function getName( $code, $language = null ) {
+ wfProfileIn( __METHOD__ );
+ global $wgBabelLanguageNamesCdb;
+
+ // Get correct code, even though it should already be correct.
+ $code = self::getCode( $code );
+ if ( $code === false ) {
+ wfProfileOut( __METHOD__ );
+
+ return false;
+ }
+
+ $language = $language === null ? $code : $language;
+ $names = Language::fetchLanguageNames( $language, 'all' );
+ if ( isset( $names[$code] ) ) {
+ wfProfileOut( __METHOD__ );
+
+ return $names[$code];
+ }
+
+ $codes = false;
+ try {
+ $namesCdb = CdbReader::open( $wgBabelLanguageNamesCdb );
+ $codes = $namesCdb->get( $code );
+ } catch ( CdbException $e ) {
+ wfDebug( __METHOD__ . ": CdbException caught, error message was "
+ . $e->getMessage() );
+ }
+ wfProfileOut( __METHOD__ );
+
+ return $codes;
+ }
+}
diff --git a/MLEB/Babel/BabelStatic.class.php b/MLEB/Babel/BabelStatic.class.php
new file mode 100644
index 00000000..5fd0b21d
--- /dev/null
+++ b/MLEB/Babel/BabelStatic.class.php
@@ -0,0 +1,26 @@
+<?php
+/**
+ * Static functions for extension.
+ *
+ * @file
+ * @author Robert Leverington
+ * @license http://www.gnu.org/copyleft/gpl.html GNU General Public License 2.0 or later
+ */
+
+/**
+ * Static functions for Babel extension.
+ */
+class BabelStatic {
+ /**
+ * Registers the parser function hook.
+ *
+ * @param $parser Parser
+ *
+ * @return Boolean: True.
+ */
+ public static function onParserFirstCallInit( $parser ) {
+ $parser->setFunctionHook( 'babel', array( 'Babel', 'Render' ) );
+
+ return true;
+ }
+}
diff --git a/MLEB/Babel/COPYING b/MLEB/Babel/COPYING
new file mode 100644
index 00000000..f1537d13
--- /dev/null
+++ b/MLEB/Babel/COPYING
@@ -0,0 +1,347 @@
+The license text below "----" applies to all files within this distribution, other
+than those that are in a directory which contains files named "LICENSE" or
+"COPYING", or a subdirectory thereof. For those files, the license text contained in
+said file overrides any license information contained in directories of smaller depth.
+Alternative licenses are typically used for software that is provided by external
+parties, and merely packaged with the Semantic MediaWiki release for convenience.
+----
+
+ GNU GENERAL PUBLIC LICENSE
+ Version 2, June 1991
+
+ Copyright (C) 1989, 1991 Free Software Foundation, Inc.,
+ 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
+ Everyone is permitted to copy and distribute verbatim copies
+ of this license document, but changing it is not allowed.
+
+ Preamble
+
+ The licenses for most software are designed to take away your
+freedom to share and change it. By contrast, the GNU General Public
+License is intended to guarantee your freedom to share and change free
+software--to make sure the software is free for all its users. This
+General Public License applies to most of the Free Software
+Foundation's software and to any other program whose authors commit to
+using it. (Some other Free Software Foundation software is covered by
+the GNU Lesser General Public License instead.) You can apply it to
+your programs, too.
+
+ When we speak of free software, we are referring to freedom, not
+price. Our General Public Licenses are designed to make sure that you
+have the freedom to distribute copies of free software (and charge for
+this service if you wish), that you receive source code or can get it
+if you want it, that you can change the software or use pieces of it
+in new free programs; and that you know you can do these things.
+
+ To protect your rights, we need to make restrictions that forbid
+anyone to deny you these rights or to ask you to surrender the rights.
+These restrictions translate to certain responsibilities for you if you
+distribute copies of the software, or if you modify it.
+
+ For example, if you distribute copies of such a program, whether
+gratis or for a fee, you must give the recipients all the rights that
+you have. You must make sure that they, too, receive or can get the
+source code. And you must show them these terms so they know their
+rights.
+
+ We protect your rights with two steps: (1) copyright the software, and
+(2) offer you this license which gives you legal permission to copy,
+distribute and/or modify the software.
+
+ Also, for each author's protection and ours, we want to make certain
+that everyone understands that there is no warranty for this free
+software. If the software is modified by someone else and passed on, we
+want its recipients to know that what they have is not the original, so
+that any problems introduced by others will not reflect on the original
+authors' reputations.
+
+ Finally, any free program is threatened constantly by software
+patents. We wish to avoid the danger that redistributors of a free
+program will individually obtain patent licenses, in effect making the
+program proprietary. To prevent this, we have made it clear that any
+patent must be licensed for everyone's free use or not licensed at all.
+
+ The precise terms and conditions for copying, distribution and
+modification follow.
+
+ GNU GENERAL PUBLIC LICENSE
+ TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
+
+ 0. This License applies to any program or other work which contains
+a notice placed by the copyright holder saying it may be distributed
+under the terms of this General Public License. The "Program", below,
+refers to any such program or work, and a "work based on the Program"
+means either the Program or any derivative work under copyright law:
+that is to say, a work containing the Program or a portion of it,
+either verbatim or with modifications and/or translated into another
+language. (Hereinafter, translation is included without limitation in
+the term "modification".) Each licensee is addressed as "you".
+
+Activities other than copying, distribution and modification are not
+covered by this License; they are outside its scope. The act of
+running the Program is not restricted, and the output from the Program
+is covered only if its contents constitute a work based on the
+Program (independent of having been made by running the Program).
+Whether that is true depends on what the Program does.
+
+ 1. You may copy and distribute verbatim copies of the Program's
+source code as you receive it, in any medium, provided that you
+conspicuously and appropriately publish on each copy an appropriate
+copyright notice and disclaimer of warranty; keep intact all the
+notices that refer to this License and to the absence of any warranty;
+and give any other recipients of the Program a copy of this License
+along with the Program.
+
+You may charge a fee for the physical act of transferring a copy, and
+you may at your option offer warranty protection in exchange for a fee.
+
+ 2. You may modify your copy or copies of the Program or any portion
+of it, thus forming a work based on the Program, and copy and
+distribute such modifications or work under the terms of Section 1
+above, provided that you also meet all of these conditions:
+
+ a) You must cause the modified files to carry prominent notices
+ stating that you changed the files and the date of any change.
+
+ b) You must cause any work that you distribute or publish, that in
+ whole or in part contains or is derived from the Program or any
+ part thereof, to be licensed as a whole at no charge to all third
+ parties under the terms of this License.
+
+ c) If the modified program normally reads commands interactively
+ when run, you must cause it, when started running for such
+ interactive use in the most ordinary way, to print or display an
+ announcement including an appropriate copyright notice and a
+ notice that there is no warranty (or else, saying that you provide
+ a warranty) and that users may redistribute the program under
+ these conditions, and telling the user how to view a copy of this
+ License. (Exception: if the Program itself is interactive but
+ does not normally print such an announcement, your work based on
+ the Program is not required to print an announcement.)
+
+These requirements apply to the modified work as a whole. If
+identifiable sections of that work are not derived from the Program,
+and can be reasonably considered independent and separate works in
+themselves, then this License, and its terms, do not apply to those
+sections when you distribute them as separate works. But when you
+distribute the same sections as part of a whole which is a work based
+on the Program, the distribution of the whole must be on the terms of
+this License, whose permissions for other licensees extend to the
+entire whole, and thus to each and every part regardless of who wrote it.
+
+Thus, it is not the intent of this section to claim rights or contest
+your rights to work written entirely by you; rather, the intent is to
+exercise the right to control the distribution of derivative or
+collective works based on the Program.
+
+In addition, mere aggregation of another work not based on the Program
+with the Program (or with a work based on the Program) on a volume of
+a storage or distribution medium does not bring the other work under
+the scope of this License.
+
+ 3. You may copy and distribute the Program (or a work based on it,
+under Section 2) in object code or executable form under the terms of
+Sections 1 and 2 above provided that you also do one of the following:
+
+ a) Accompany it with the complete corresponding machine-readable
+ source code, which must be distributed under the terms of Sections
+ 1 and 2 above on a medium customarily used for software interchange; or,
+
+ b) Accompany it with a written offer, valid for at least three
+ years, to give any third party, for a charge no more than your
+ cost of physically performing source distribution, a complete
+ machine-readable copy of the corresponding source code, to be
+ distributed under the terms of Sections 1 and 2 above on a medium
+ customarily used for software interchange; or,
+
+ c) Accompany it with the information you received as to the offer
+ to distribute corresponding source code. (This alternative is
+ allowed only for noncommercial distribution and only if you
+ received the program in object code or executable form with such
+ an offer, in accord with Subsection b above.)
+
+The source code for a work means the preferred form of the work for
+making modifications to it. For an executable work, complete source
+code means all the source code for all modules it contains, plus any
+associated interface definition files, plus the scripts used to
+control compilation and installation of the executable. However, as a
+special exception, the source code distributed need not include
+anything that is normally distributed (in either source or binary
+form) with the major components (compiler, kernel, and so on) of the
+operating system on which the executable runs, unless that component
+itself accompanies the executable.
+
+If distribution of executable or object code is made by offering
+access to copy from a designated place, then offering equivalent
+access to copy the source code from the same place counts as
+distribution of the source code, even though third parties are not
+compelled to copy the source along with the object code.
+
+ 4. You may not copy, modify, sublicense, or distribute the Program
+except as expressly provided under this License. Any attempt
+otherwise to copy, modify, sublicense or distribute the Program is
+void, and will automatically terminate your rights under this License.
+However, parties who have received copies, or rights, from you under
+this License will not have their licenses terminated so long as such
+parties remain in full compliance.
+
+ 5. You are not required to accept this License, since you have not
+signed it. However, nothing else grants you permission to modify or
+distribute the Program or its derivative works. These actions are
+prohibited by law if you do not accept this License. Therefore, by
+modifying or distributing the Program (or any work based on the
+Program), you indicate your acceptance of this License to do so, and
+all its terms and conditions for copying, distributing or modifying
+the Program or works based on it.
+
+ 6. Each time you redistribute the Program (or any work based on the
+Program), the recipient automatically receives a license from the
+original licensor to copy, distribute or modify the Program subject to
+these terms and conditions. You may not impose any further
+restrictions on the recipients' exercise of the rights granted herein.
+You are not responsible for enforcing compliance by third parties to
+this License.
+
+ 7. If, as a consequence of a court judgment or allegation of patent
+infringement or for any other reason (not limited to patent issues),
+conditions are imposed on you (whether by court order, agreement or
+otherwise) that contradict the conditions of this License, they do not
+excuse you from the conditions of this License. If you cannot
+distribute so as to satisfy simultaneously your obligations under this
+License and any other pertinent obligations, then as a consequence you
+may not distribute the Program at all. For example, if a patent
+license would not permit royalty-free redistribution of the Program by
+all those who receive copies directly or indirectly through you, then
+the only way you could satisfy both it and this License would be to
+refrain entirely from distribution of the Program.
+
+If any portion of this section is held invalid or unenforceable under
+any particular circumstance, the balance of the section is intended to
+apply and the section as a whole is intended to apply in other
+circumstances.
+
+It is not the purpose of this section to induce you to infringe any
+patents or other property right claims or to contest validity of any
+such claims; this section has the sole purpose of protecting the
+integrity of the free software distribution system, which is
+implemented by public license practices. Many people have made
+generous contributions to the wide range of software distributed
+through that system in reliance on consistent application of that
+system; it is up to the author/donor to decide if he or she is willing
+to distribute software through any other system and a licensee cannot
+impose that choice.
+
+This section is intended to make thoroughly clear what is believed to
+be a consequence of the rest of this License.
+
+ 8. If the distribution and/or use of the Program is restricted in
+certain countries either by patents or by copyrighted interfaces, the
+original copyright holder who places the Program under this License
+may add an explicit geographical distribution limitation excluding
+those countries, so that distribution is permitted only in or among
+countries not thus excluded. In such case, this License incorporates
+the limitation as if written in the body of this License.
+
+ 9. The Free Software Foundation may publish revised and/or new versions
+of the General Public License from time to time. Such new versions will
+be similar in spirit to the present version, but may differ in detail to
+address new problems or concerns.
+
+Each version is given a distinguishing version number. If the Program
+specifies a version number of this License which applies to it and "any
+later version", you have the option of following the terms and conditions
+either of that version or of any later version published by the Free
+Software Foundation. If the Program does not specify a version number of
+this License, you may choose any version ever published by the Free Software
+Foundation.
+
+ 10. If you wish to incorporate parts of the Program into other free
+programs whose distribution conditions are different, write to the author
+to ask for permission. For software which is copyrighted by the Free
+Software Foundation, write to the Free Software Foundation; we sometimes
+make exceptions for this. Our decision will be guided by the two goals
+of preserving the free status of all derivatives of our free software and
+of promoting the sharing and reuse of software generally.
+
+ NO WARRANTY
+
+ 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
+FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN
+OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
+PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
+OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS
+TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE
+PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
+REPAIR OR CORRECTION.
+
+ 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
+WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
+REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
+INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING
+OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED
+TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY
+YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
+PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
+POSSIBILITY OF SUCH DAMAGES.
+
+ END OF TERMS AND CONDITIONS
+
+ How to Apply These Terms to Your New Programs
+
+ If you develop a new program, and you want it to be of the greatest
+possible use to the public, the best way to achieve this is to make it
+free software which everyone can redistribute and change under these terms.
+
+ To do so, attach the following notices to the program. It is safest
+to attach them to the start of each source file to most effectively
+convey the exclusion of warranty; and each file should have at least
+the "copyright" line and a pointer to where the full notice is found.
+
+ <one line to give the program's name and a brief idea of what it does.>
+ Copyright (C) <year> <name of author>
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License along
+ with this program; if not, write to the Free Software Foundation, Inc.,
+ 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+
+Also add information on how to contact you by electronic and paper mail.
+
+If the program is interactive, make it output a short notice like this
+when it starts in an interactive mode:
+
+ Gnomovision version 69, Copyright (C) year name of author
+ Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
+ This is free software, and you are welcome to redistribute it
+ under certain conditions; type `show c' for details.
+
+The hypothetical commands `show w' and `show c' should show the appropriate
+parts of the General Public License. Of course, the commands you use may
+be called something other than `show w' and `show c'; they could even be
+mouse-clicks or menu items--whatever suits your program.
+
+You should also get your employer (if you work as a programmer) or your
+school, if any, to sign a "copyright disclaimer" for the program, if
+necessary. Here is a sample; alter the names:
+
+ Yoyodyne, Inc., hereby disclaims all copyright interest in the program
+ `Gnomovision' (which makes passes at compilers) written by James Hacker.
+
+ <signature of Ty Coon>, 1 April 1989
+ Ty Coon, President of Vice
+
+This General Public License does not permit incorporating your program into
+proprietary programs. If your program is a subroutine library, you may
+consider it more useful to permit linking proprietary applications with the
+library. If this is what you want to do, use the GNU Lesser General
+Public License instead of this License.
diff --git a/MLEB/Babel/RELEASE-NOTES b/MLEB/Babel/RELEASE-NOTES
new file mode 100644
index 00000000..f9921967
--- /dev/null
+++ b/MLEB/Babel/RELEASE-NOTES
@@ -0,0 +1,5 @@
+== Babel 2014.11 ==
+Released at 2014-11-29.
+
+=== Noteworthy changes ===
+* Only localisation updates.
diff --git a/MLEB/Babel/codes.cdb b/MLEB/Babel/codes.cdb
new file mode 100644
index 00000000..bc766b4b
--- /dev/null
+++ b/MLEB/Babel/codes.cdb
Binary files differ
diff --git a/MLEB/Babel/codes.txt b/MLEB/Babel/codes.txt
new file mode 100644
index 00000000..7c6636db
--- /dev/null
+++ b/MLEB/Babel/codes.txt
@@ -0,0 +1,7704 @@
+- aaa "Ghotuo"
+- aab "Alumu-Tesu"
+- aac "Ari"
+- aad "Amal"
+- aae "Arbëreshë Albanian"
+- aaf "Aranadan"
+- aag "Ambrak"
+- aah "Abu' Arapesh"
+- aai "Arifama-Miniafia"
+- aak "Ankave"
+- aal "Afade"
+- aam "Aramanik"
+- aan "Anambé"
+- aao "Algerian Saharan Arabic"
+- aap "Pará Arára"
+- aaq "Eastern Abnaki"
+aa aar "Afar"
+- aas "Aasáx"
+- aat "Arvanitika Albanian"
+- aau "Abau"
+- aaw "Solong"
+- aax "Mandobo Atas"
+- aaz "Amarasi"
+- aba "Abé"
+- abb "Bankon"
+- abc "Ambala Ayta"
+- abd "Manide"
+- abe "Western Abnaki"
+- abf "Abai Sungai"
+- abg "Abaga"
+- abh "Tajiki Arabic"
+- abi "Abidji"
+- abj "Aka-Bea"
+ab abk "Abkhazian"
+- abl "Lampung Nyo"
+- abm "Abanyom"
+- abn "Abua"
+- abo "Abon"
+- abp "Abellen Ayta"
+- abq "Abaza"
+- abr "Abron"
+- abs "Ambonese Malay"
+- abt "Ambulas"
+- abu "Abure"
+- abv "Baharna Arabic"
+- abw "Pal"
+- abx "Inabaknon"
+- aby "Aneme Wake"
+- abz "Abui"
+- aca "Achagua"
+- acb "Áncá"
+- acd "Gikyode"
+- ace "Achinese"
+- acf "Saint Lucian Creole French"
+- ach "Acoli"
+- aci "Aka-Cari"
+- ack "Aka-Kora"
+- acl "Akar-Bale"
+- acm "Mesopotamian Arabic"
+- acn "Achang"
+- acp "Eastern Acipa"
+- acq "Ta'izzi-Adeni Arabic"
+- acr "Achi"
+- acs "Acroá"
+- act "Achterhoeks"
+- acu "Achuar-Shiwiar"
+- acv "Achumawi"
+- acw "Hijazi Arabic"
+- acx "Omani Arabic"
+- acy "Cypriot Arabic"
+- acz "Acheron"
+- ada "Adangme"
+- adb "Adabe"
+- add "Dzodinka"
+- ade "Adele"
+- adf "Dhofari Arabic"
+- adg "Andegerebinha"
+- adh "Adhola"
+- adi "Adi"
+- adj "Adioukrou"
+- adl "Galo"
+- adn "Adang"
+- ado "Abu"
+- adp "Adap"
+- adq "Adangbe"
+- adr "Adonara"
+- ads "Adamorobe Sign Language"
+- adt "Adnyamathanha"
+- adu "Aduge"
+- adw "Amundava"
+- adx "Amdo Tibetan"
+- ady "Adyghe"
+- adz "Adzera"
+- aea "Areba"
+- aeb "Tunisian Arabic"
+- aec "Saidi Arabic"
+- aed "Argentine Sign Language"
+- aee "Northeast Pashayi"
+- aek "Haeke"
+- ael "Ambele"
+- aem "Arem"
+- aen "Armenian Sign Language"
+- aeq "Aer"
+- aer "Eastern Arrernte"
+- aes "Alsea"
+- aeu "Akeu"
+- aew "Ambakich"
+- aey "Amele"
+- aez "Aeka"
+- afb "Gulf Arabic"
+- afd "Andai"
+- afe "Putukwam"
+- afg "Afghan Sign Language"
+- afh "Afrihili"
+- afi "Akrukay"
+- afk "Nanubae"
+- afn "Defaka"
+- afo "Eloyi"
+- afp "Tapei"
+af afr "Afrikaans"
+- afs "Afro-Seminole Creole"
+- aft "Afitti"
+- afu "Awutu"
+- afz "Obokuitai"
+- aga "Aguano"
+- agb "Legbo"
+- agc "Agatu"
+- agd "Agarabi"
+- age "Angal"
+- agf "Arguni"
+- agg "Angor"
+- agh "Ngelima"
+- agi "Agariya"
+- agj "Argobba"
+- agk "Isarog Agta"
+- agl "Fembe"
+- agm "Angaataha"
+- agn "Agutaynen"
+- ago "Tainae"
+- agq "Aghem"
+- agr "Aguaruna"
+- ags "Esimbi"
+- agt "Central Cagayan Agta"
+- agu "Aguacateco"
+- agv "Remontado Dumagat"
+- agw "Kahua"
+- agx "Aghul"
+- agy "Southern Alta"
+- agz "Mt. Iriga Agta"
+- aha "Ahanta"
+- ahb "Axamb"
+- ahg "Qimant"
+- ahh "Aghu"
+- ahi "Tiagbamrin Aizi"
+- ahk "Akha"
+- ahl "Igo"
+- ahm "Mobumrin Aizi"
+- ahn "Àhàn"
+- aho "Ahom"
+- ahp "Aproumu Aizi"
+- ahr "Ahirani"
+- ahs "Ashe"
+- aht "Ahtena"
+- aia "Arosi"
+- aib "Ainu (China)"
+- aic "Ainbai"
+- aid "Alngith"
+- aie "Amara"
+- aif "Agi"
+- aig "Antigua and Barbuda Creole English"
+- aih "Ai-Cham"
+- aii "Assyrian Neo-Aramaic"
+- aij "Lishanid Noshan"
+- aik "Ake"
+- ail "Aimele"
+- aim "Aimol"
+- ain "Ainu (Japan)"
+- aio "Aiton"
+- aip "Burumakok"
+- aiq "Aimaq"
+- air "Airoran"
+- ais "Nataoran Amis"
+- ait "Arikem"
+- aiw "Aari"
+- aix "Aighon"
+- aiy "Ali"
+- aja "Aja (Sudan)"
+- ajg "Aja (Benin)"
+- aji "Ajië"
+- ajp "South Levantine Arabic"
+- ajt "Judeo-Tunisian Arabic"
+- aju "Judeo-Moroccan Arabic"
+- ajw "Ajawa"
+- ajz "Amri Karbi"
+ak aka "Akan"
+- akb "Batak Angkola"
+- akc "Mpur"
+- akd "Ukpet-Ehom"
+- ake "Akawaio"
+- akf "Akpa"
+- akg "Anakalangu"
+- akh "Angal Heneng"
+- aki "Aiome"
+- akj "Aka-Jeru"
+- akk "Akkadian"
+- akl "Aklanon"
+- akm "Aka-Bo"
+- ako "Akurio"
+- akp "Siwu"
+- akq "Ak"
+- akr "Araki"
+- aks "Akaselem"
+- akt "Akolet"
+- aku "Akum"
+- akv "Akhvakh"
+- akw "Akwa"
+- akx "Aka-Kede"
+- aky "Aka-Kol"
+- akz "Alabama"
+- ala "Alago"
+- alc "Qawasqar"
+- ald "Alladian"
+- ale "Aleut"
+- alf "Alege"
+- alh "Alawa"
+- ali "Amaimon"
+- alj "Alangan"
+- alk "Alak"
+- all "Allar"
+- alm "Amblong"
+- aln "Gheg Albanian"
+- alo "Larike-Wakasihu"
+- alp "Alune"
+- alq "Algonquin"
+- alr "Alutor"
+- als "Tosk Albanian"
+- alt "Southern Altai"
+- alu "'Are'are"
+- alw "Alaba-K’abeena"
+- alx "Amol"
+- aly "Alyawarr"
+- alz "Alur"
+- ama "Amanayé"
+- amb "Ambo"
+- amc "Amahuaca"
+- ame "Yanesha'"
+- amf "Hamer-Banna"
+- amg "Amarag"
+am amh "Amharic"
+- ami "Amis"
+- amj "Amdang"
+- amk "Ambai"
+- aml "War-Jaintia"
+- amm "Ama (Papua New Guinea)"
+- amn "Amanab"
+- amo "Amo"
+- amp "Alamblak"
+- amq "Amahai"
+- amr "Amarakaeri"
+- ams "Southern Amami-Oshima"
+- amt "Amto"
+- amu "Guerrero Amuzgo"
+- amv "Ambelau"
+- amw "Western Neo-Aramaic"
+- amx "Anmatyerre"
+- amy "Ami"
+- amz "Atampaya"
+- ana "Andaqui"
+- anb "Andoa"
+- anc "Ngas"
+- and "Ansus"
+- ane "Xârâcùù"
+- anf "Animere"
+- ang "Old English (ca. 450-1100)"
+- anh "Nend"
+- ani "Andi"
+- anj "Anor"
+- ank "Goemai"
+- anl "Anu"
+- anm "Anal"
+- ann "Obolo"
+- ano "Andoque"
+- anp "Angika"
+- anq "Jarawa (India)"
+- anr "Andh"
+- ans "Anserma"
+- ant "Antakarinya"
+- anu "Anuak"
+- anv "Denya"
+- anw "Anaang"
+- anx "Andra-Hus"
+- any "Anyin"
+- anz "Anem"
+- aoa "Angolar"
+- aob "Abom"
+- aoc "Pemon"
+- aod "Andarum"
+- aoe "Angal Enen"
+- aof "Bragat"
+- aog "Angoram"
+- aoh "Arma"
+- aoi "Anindilyakwa"
+- aoj "Mufian"
+- aok "Arhö"
+- aol "Alor"
+- aom "Ömie"
+- aon "Bumbita Arapesh"
+- aor "Aore"
+- aos "Taikat"
+- aot "A'tong"
+- aox "Atorada"
+- aoz "Uab Meto"
+- apb "Sa'a"
+- apc "North Levantine Arabic"
+- apd "Sudanese Arabic"
+- ape "Bukiyip"
+- apf "Pahanan Agta"
+- apg "Ampanang"
+- aph "Athpariya"
+- api "Apiaká"
+- apj "Jicarilla Apache"
+- apk "Kiowa Apache"
+- apl "Lipan Apache"
+- apm "Mescalero-Chiricahua Apache"
+- apn "Apinayé"
+- apo "Apalik"
+- app "Apma"
+- apq "A-Pucikwar"
+- apr "Arop-Lokep"
+- aps "Arop-Sissano"
+- apt "Apatani"
+- apu "Apurinã"
+- apv "Alapmunte"
+- apw "Western Apache"
+- apx "Aputai"
+- apy "Apalaí"
+- apz "Safeyoka"
+- aqc "Archi"
+- aqg "Arigidi"
+- aqm "Atohwaim"
+- aqn "Northern Alta"
+- aqp "Atakapa"
+- aqr "Arhâ"
+- aqz "Akuntsu"
+ar ara "Arabic"
+- arb "Standard Arabic"
+- arc "Official Aramaic (700-300 BCE)"
+- ard "Arabana"
+- are "Western Arrarnta"
+an arg "Aragonese"
+- arh "Arhuaco"
+- ari "Arikara"
+- arj "Arapaso"
+- ark "Arikapú"
+- arl "Arabela"
+- arn "Mapudungun"
+- aro "Araona"
+- arp "Arapaho"
+- arq "Algerian Arabic"
+- arr "Karo (Brazil)"
+- ars "Najdi Arabic"
+- aru "Aruá (Amazonas State)"
+- arv "Arbore"
+- arw "Arawak"
+- arx "Aruá (Rodonia State)"
+- ary "Moroccan Arabic"
+- arz "Egyptian Arabic"
+- asa "Asu (Tanzania)"
+- asb "Assiniboine"
+- asc "Casuarina Coast Asmat"
+- asd "Asas"
+- ase "American Sign Language"
+- asf "Australian Sign Language"
+- asg "Cishingini"
+- ash "Abishira"
+- asi "Buruwai"
+- asj "Nsari"
+- ask "Ashkun"
+- asl "Asilulu"
+as asm "Assamese"
+- asn "Xingú Asuriní"
+- aso "Dano"
+- asp "Algerian Sign Language"
+- asq "Austrian Sign Language"
+- asr "Asuri"
+- ass "Ipulo"
+- ast "Asturian"
+- asu "Tocantins Asurini"
+- asv "Asoa"
+- asw "Australian Aborigines Sign Language"
+- asx "Muratayak"
+- asy "Yaosakor Asmat"
+- asz "As"
+- ata "Pele-Ata"
+- atb "Zaiwa"
+- atc "Atsahuaca"
+- atd "Ata Manobo"
+- ate "Atemble"
+- atg "Ivbie North-Okpela-Arhe"
+- ati "Attié"
+- atj "Atikamekw"
+- atk "Ati"
+- atl "Mt. Iraya Agta"
+- atm "Ata"
+- atn "Ashtiani"
+- ato "Atong"
+- atp "Pudtol Atta"
+- atq "Aralle-Tabulahan"
+- atr "Waimiri-Atroari"
+- ats "Gros Ventre"
+- att "Pamplona Atta"
+- atu "Reel"
+- atv "Northern Altai"
+- atw "Atsugewi"
+- atx "Arutani"
+- aty "Aneityum"
+- atz "Arta"
+- aua "Asumboa"
+- aub "Alugu"
+- auc "Waorani"
+- aud "Anuta"
+- aue "=/Kx'au//'ein"
+- aug "Aguna"
+- auh "Aushi"
+- aui "Anuki"
+- auj "Awjilah"
+- auk "Heyo"
+- aul "Aulua"
+- aum "Asu (Nigeria)"
+- aun "Molmo One"
+- auo "Auyokawa"
+- aup "Makayam"
+- auq "Anus"
+- aur "Aruek"
+- aut "Austral"
+- auu "Auye"
+- auw "Awyi"
+- aux "Aurá"
+- auy "Awiyaana"
+- auz "Uzbeki Arabic"
+av ava "Avaric"
+- avb "Avau"
+- avd "Alviri-Vidari"
+ae ave "Avestan"
+- avi "Avikam"
+- avk "Kotava"
+- avl "Eastern Egyptian Bedawi Arabic"
+- avn "Avatime"
+- avo "Agavotaguerra"
+- avs "Aushiri"
+- avt "Au"
+- avu "Avokaya"
+- avv "Avá-Canoeiro"
+- awa "Awadhi"
+- awb "Awa (Papua New Guinea)"
+- awc "Cicipu"
+- awe "Awetí"
+- awh "Awbono"
+- awi "Aekyom"
+- awk "Awabakal"
+- awm "Arawum"
+- awn "Awngi"
+- awo "Awak"
+- awr "Awera"
+- aws "South Awyu"
+- awt "Araweté"
+- awu "Central Awyu"
+- awv "Jair Awyu"
+- aww "Awun"
+- awx "Awara"
+- awy "Edera Awyu"
+- axb "Abipon"
+- axg "Mato Grosso Arára"
+- axk "Yaka (Central African Republic)"
+- axm "Middle Armenian"
+- axx "Xaragure"
+- aya "Awar"
+- ayb "Ayizo Gbe"
+- ayc "Southern Aymara"
+- ayd "Ayabadhu"
+- aye "Ayere"
+- ayg "Ginyanga"
+- ayh "Hadrami Arabic"
+- ayi "Leyigha"
+- ayk "Akuku"
+- ayl "Libyan Arabic"
+ay aym "Aymara"
+- ayn "Sanaani Arabic"
+- ayo "Ayoreo"
+- ayp "North Mesopotamian Arabic"
+- ayq "Ayi (Papua New Guinea)"
+- ayr "Central Aymara"
+- ays "Sorsogon Ayta"
+- ayt "Magbukun Ayta"
+- ayu "Ayu"
+- ayx "Ayi (China)"
+- ayy "Tayabas Ayta"
+- ayz "Mai Brat"
+- aza "Azha"
+- azb "South Azerbaijani"
+az aze "Azerbaijani"
+- azg "San Pedro Amuzgos Amuzgo"
+- azj "North Azerbaijani"
+- azm "Ipalapa Amuzgo"
+- azo "Awing"
+- azt "Faire Atta"
+- azz "Highland Puebla Nahuatl"
+- baa "Babatana"
+- bab "Bainouk-Gunyuño"
+- bac "Badui"
+- bae "Baré"
+- baf "Nubaca"
+- bag "Tuki"
+- bah "Bahamas Creole English"
+- baj "Barakai"
+ba bak "Bashkir"
+- bal "Baluchi"
+bm bam "Bambara"
+- ban "Balinese"
+- bao "Waimaha"
+- bap "Bantawa"
+- bar "Bavarian"
+- bas "Basa (Cameroon)"
+- bau "Bada (Nigeria)"
+- bav "Vengo"
+- baw "Bambili-Bambui"
+- bax "Bamun"
+- bay "Batuley"
+- baz "Tunen"
+- bba "Baatonum"
+- bbb "Barai"
+- bbc "Batak Toba"
+- bbd "Bau"
+- bbe "Bangba"
+- bbf "Baibai"
+- bbg "Barama"
+- bbh "Bugan"
+- bbi "Barombi"
+- bbj "Ghomálá'"
+- bbk "Babanki"
+- bbl "Bats"
+- bbm "Babango"
+- bbn "Uneapa"
+- bbo "Northern Bobo Madaré"
+- bbp "West Central Banda"
+- bbq "Bamali"
+- bbr "Girawa"
+- bbs "Bakpinka"
+- bbt "Mburku"
+- bbu "Kulung (Nigeria)"
+- bbv "Karnai"
+- bbw "Baba"
+- bbx "Bubia"
+- bby "Befang"
+- bbz "Babalia Creole Arabic"
+- bca "Central Bai"
+- bcb "Bainouk-Samik"
+- bcc "Southern Balochi"
+- bcd "North Babar"
+- bce "Bamenyam"
+- bcf "Bamu"
+- bcg "Baga Binari"
+- bch "Bariai"
+- bci "Baoulé"
+- bcj "Bardi"
+- bck "Bunaba"
+- bcl "Central Bicolano"
+- bcm "Bannoni"
+- bcn "Bali (Nigeria)"
+- bco "Kaluli"
+- bcp "Bali (Democratic Republic of Congo)"
+- bcq "Bench"
+- bcr "Babine"
+- bcs "Kohumono"
+- bct "Bendi"
+- bcu "Awad Bing"
+- bcv "Shoo-Minda-Nye"
+- bcw "Bana"
+- bcy "Bacama"
+- bcz "Bainouk-Gunyaamolo"
+- bda "Bayot"
+- bdb "Basap"
+- bdc "Emberá-Baudó"
+- bdd "Bunama"
+- bde "Bade"
+- bdf "Biage"
+- bdg "Bonggi"
+- bdh "Baka (Sudan)"
+- bdi "Burun"
+- bdj "Bai"
+- bdk "Budukh"
+- bdl "Indonesian Bajau"
+- bdm "Buduma"
+- bdn "Baldemu"
+- bdo "Morom"
+- bdp "Bende"
+- bdq "Bahnar"
+- bdr "West Coast Bajau"
+- bds "Burunge"
+- bdt "Bokoto"
+- bdu "Oroko"
+- bdv "Bodo Parja"
+- bdw "Baham"
+- bdx "Budong-Budong"
+- bdy "Bandjalang"
+- bdz "Badeshi"
+- bea "Beaver"
+- beb "Bebele"
+- bec "Iceve-Maci"
+- bed "Bedoanas"
+- bee "Byangsi"
+- bef "Benabena"
+- beg "Belait"
+- beh "Biali"
+- bei "Bekati'"
+- bej "Beja"
+- bek "Bebeli"
+be bel "Belarusian"
+- bem "Bemba (Zambia)"
+bn ben "Bengali"
+- beo "Beami"
+- bep "Besoa"
+- beq "Beembe"
+- bes "Besme"
+- bet "Guiberoua Béte"
+- beu "Blagar"
+- bev "Daloa Bété"
+- bew "Betawi"
+- bex "Jur Modo"
+- bey "Beli (Papua New Guinea)"
+- bez "Bena (Tanzania)"
+- bfa "Bari"
+- bfb "Pauri Bareli"
+- bfc "Northern Bai"
+- bfd "Bafut"
+- bfe "Betaf"
+- bff "Bofi"
+- bfg "Busang Kayan"
+- bfh "Blafe"
+- bfi "British Sign Language"
+- bfj "Bafanji"
+- bfk "Ban Khor Sign Language"
+- bfl "Banda-Ndélé"
+- bfm "Mmen"
+- bfn "Bunak"
+- bfo "Malba Birifor"
+- bfp "Beba"
+- bfq "Badaga"
+- bfr "Bazigar"
+- bfs "Southern Bai"
+- bft "Balti"
+- bfu "Gahri"
+- bfw "Bondo"
+- bfx "Bantayanon"
+- bfy "Bagheli"
+- bfz "Mahasu Pahari"
+- bga "Gwamhi-Wuri"
+- bgb "Bobongko"
+- bgc "Haryanvi"
+- bgd "Rathwi Bareli"
+- bge "Bauria"
+- bgf "Bangandu"
+- bgg "Bugun"
+- bgi "Giangan"
+- bgj "Bangolan"
+- bgk "Bit"
+- bgl "Bo (Laos)"
+- bgm "Baga Mboteni"
+- bgn "Western Balochi"
+- bgo "Baga Koga"
+- bgp "Eastern Balochi"
+- bgq "Bagri"
+- bgr "Bawm Chin"
+- bgs "Tagabawa"
+- bgt "Bughotu"
+- bgu "Mbongno"
+- bgv "Warkay-Bipim"
+- bgw "Bhatri"
+- bgx "Balkan Gagauz Turkish"
+- bgy "Benggoi"
+- bgz "Banggai"
+- bha "Bharia"
+- bhb "Bhili"
+- bhc "Biga"
+- bhd "Bhadrawahi"
+- bhe "Bhaya"
+- bhf "Odiai"
+- bhg "Binandere"
+- bhh "Bukharic"
+- bhi "Bhilali"
+- bhj "Bahing"
+- bhl "Bimin"
+- bhm "Bathari"
+- bhn "Bohtan Neo-Aramaic"
+- bho "Bhojpuri"
+- bhp "Bima"
+- bhq "Tukang Besi South"
+- bhr "Bara Malagasy"
+- bhs "Buwal"
+- bht "Bhattiyali"
+- bhu "Bhunjia"
+- bhv "Bahau"
+- bhw "Biak"
+- bhx "Bhalay"
+- bhy "Bhele"
+- bhz "Bada (Indonesia)"
+- bia "Badimaya"
+- bib "Bissa"
+- bic "Bikaru"
+- bid "Bidiyo"
+- bie "Bepour"
+- bif "Biafada"
+- big "Biangai"
+- bij "Vaghat-Ya-Bijim-Legeri"
+- bik "Bikol"
+- bil "Bile"
+- bim "Bimoba"
+- bin "Bini"
+- bio "Nai"
+- bip "Bila"
+- biq "Bipi"
+- bir "Bisorio"
+bi bis "Bislama"
+- bit "Berinomo"
+- biu "Biete"
+- biv "Southern Birifor"
+- biw "Kol (Cameroon)"
+- bix "Bijori"
+- biy "Birhor"
+- biz "Baloi"
+- bja "Budza"
+- bjb "Banggarla"
+- bjc "Bariji"
+- bjd "Bandjigali"
+- bje "Biao-Jiao Mien"
+- bjf "Barzani Jewish Neo-Aramaic"
+- bjg "Bidyogo"
+- bjh "Bahinemo"
+- bji "Burji"
+- bjj "Kanauji"
+- bjk "Barok"
+- bjl "Bulu (Papua New Guinea)"
+- bjm "Bajelani"
+- bjn "Banjar"
+- bjo "Mid-Southern Banda"
+- bjq "Southern Betsimisaraka Malagasy"
+- bjr "Binumarien"
+- bjs "Bajan"
+- bjt "Balanta-Ganja"
+- bju "Busuu"
+- bjv "Bedjond"
+- bjw "Bakwé"
+- bjx "Banao Itneg"
+- bjy "Bayali"
+- bjz "Baruga"
+- bka "Kyak"
+- bkc "Baka (Cameroon)"
+- bkd "Binukid"
+- bkf "Beeke"
+- bkg "Buraka"
+- bkh "Bakoko"
+- bki "Baki"
+- bkj "Pande"
+- bkk "Brokskat"
+- bkl "Berik"
+- bkm "Kom (Cameroon)"
+- bkn "Bukitan"
+- bko "Kwa'"
+- bkp "Boko (Democratic Republic of Congo)"
+- bkq "Bakairí"
+- bkr "Bakumpai"
+- bks "Northern Sorsoganon"
+- bkt "Boloki"
+- bku "Buhid"
+- bkv "Bekwarra"
+- bkw "Bekwil"
+- bkx "Baikeno"
+- bky "Bokyi"
+- bkz "Bungku"
+- bla "Siksika"
+- blb "Bilua"
+- blc "Bella Coola"
+- bld "Bolango"
+- ble "Balanta-Kentohe"
+- blf "Buol"
+- blg "Balau"
+- blh "Kuwaa"
+- bli "Bolia"
+- blj "Bolongan"
+- blk "Pa'o Karen"
+- bll "Biloxi"
+- blm "Beli (Sudan)"
+- bln "Southern Catanduanes Bicolano"
+- blo "Anii"
+- blp "Blablanga"
+- blq "Baluan-Pam"
+- blr "Blang"
+- bls "Balaesang"
+- blt "Tai Dam"
+- blv "Bolo"
+- blw "Balangao"
+- blx "Mag-Indi Ayta"
+- bly "Notre"
+- blz "Balantak"
+- bma "Lame"
+- bmb "Bembe"
+- bmc "Biem"
+- bmd "Baga Manduri"
+- bme "Limassa"
+- bmf "Bom"
+- bmg "Bamwe"
+- bmh "Kein"
+- bmi "Bagirmi"
+- bmj "Bote-Majhi"
+- bmk "Ghayavi"
+- bml "Bomboli"
+- bmm "Northern Betsimisaraka Malagasy"
+- bmn "Bina (Papua New Guinea)"
+- bmo "Bambalang"
+- bmp "Bulgebi"
+- bmq "Bomu"
+- bmr "Muinane"
+- bms "Bilma Kanuri"
+- bmt "Biao Mon"
+- bmu "Burum-Mindik"
+- bmv "Bum"
+- bmw "Bomwali"
+- bmx "Baimak"
+- bmy "Bemba (Democratic Republic of Congo)"
+- bmz "Baramu"
+- bna "Bonerate"
+- bnb "Bookan"
+- bnc "Bontok"
+- bnd "Banda (Indonesia)"
+- bne "Bintauna"
+- bnf "Masiwang"
+- bng "Benga"
+- bni "Bangi"
+- bnj "Eastern Tawbuid"
+- bnk "Bierebo"
+- bnl "Boon"
+- bnm "Batanga"
+- bnn "Bunun"
+- bno "Bantoanon"
+- bnp "Bola"
+- bnq "Bantik"
+- bnr "Butmas-Tur"
+- bns "Bundeli"
+- bnu "Bentong"
+- bnv "Bonerif"
+- bnw "Bisis"
+- bnx "Bangubangu"
+- bny "Bintulu"
+- bnz "Beezen"
+- boa "Bora"
+- bob "Aweer"
+bo bod "Tibetan"
+- boe "Mundabli"
+- bof "Bolon"
+- bog "Bamako Sign Language"
+- boh "Boma"
+- boi "Barbareño"
+- boj "Anjam"
+- bok "Bonjo"
+- bol "Bole"
+- bom "Berom"
+- bon "Bine"
+- boo "Tiemacèwè Bozo"
+- bop "Bonkiman"
+- boq "Bogaya"
+- bor "Borôro"
+bs bos "Bosnian"
+- bot "Bongo"
+- bou "Bondei"
+- bov "Tuwuli"
+- bow "Rema"
+- box "Buamu"
+- boy "Bodo (Central African Republic)"
+- boz "Tiéyaxo Bozo"
+- bpa "Dakaka"
+- bpb "Barbacoas"
+- bpd "Banda-Banda"
+- bpg "Bonggo"
+- bph "Botlikh"
+- bpi "Bagupi"
+- bpj "Binji"
+- bpk "Orowe"
+- bpl "Broome Pearling Lugger Pidgin"
+- bpm "Biyom"
+- bpn "Dzao Min"
+- bpo "Anasi"
+- bpp "Kaure"
+- bpq "Banda Malay"
+- bpr "Koronadal Blaan"
+- bps "Sarangani Blaan"
+- bpt "Barrow Point"
+- bpu "Bongu"
+- bpv "Bian Marind"
+- bpw "Bo (Papua New Guinea)"
+- bpx "Palya Bareli"
+- bpy "Bishnupriya"
+- bpz "Bilba"
+- bqa "Tchumbuli"
+- bqb "Bagusa"
+- bqc "Boko (Benin)"
+- bqd "Bung"
+- bqf "Baga Kaloum"
+- bqg "Bago-Kusuntu"
+- bqh "Baima"
+- bqi "Bakhtiari"
+- bqj "Bandial"
+- bqk "Banda-Mbrès"
+- bql "Bilakura"
+- bqm "Wumboko"
+- bqn "Bulgarian Sign Language"
+- bqo "Balo"
+- bqp "Busa"
+- bqq "Biritai"
+- bqr "Burusu"
+- bqs "Bosngun"
+- bqt "Bamukumbit"
+- bqu "Boguru"
+- bqv "Begbere-Ejar"
+- bqw "Buru (Nigeria)"
+- bqx "Baangi"
+- bqy "Bengkala Sign Language"
+- bqz "Bakaka"
+- bra "Braj"
+- brb "Lave"
+- brc "Berbice Creole Dutch"
+- brd "Baraamu"
+br bre "Breton"
+- brf "Bera"
+- brg "Baure"
+- brh "Brahui"
+- bri "Mokpwe"
+- brj "Bieria"
+- brk "Birked"
+- brl "Birwa"
+- brm "Barambu"
+- brn "Boruca"
+- bro "Brokkat"
+- brp "Barapasi"
+- brq "Breri"
+- brr "Birao"
+- brs "Baras"
+- brt "Bitare"
+- bru "Eastern Bru"
+- brv "Western Bru"
+- brw "Bellari"
+- brx "Bodo (India)"
+- bry "Burui"
+- brz "Bilbil"
+- bsa "Abinomn"
+- bsb "Brunei Bisaya"
+- bsc "Bassari"
+- bse "Wushi"
+- bsf "Bauchi"
+- bsg "Bashkardi"
+- bsh "Kati"
+- bsi "Bassossi"
+- bsj "Bangwinji"
+- bsk "Burushaski"
+- bsl "Basa-Gumna"
+- bsm "Busami"
+- bsn "Barasana-Eduria"
+- bso "Buso"
+- bsp "Baga Sitemu"
+- bsq "Bassa"
+- bsr "Bassa-Kontagora"
+- bss "Akoose"
+- bst "Basketo"
+- bsu "Bahonsuai"
+- bsv "Baga Sobané"
+- bsw "Baiso"
+- bsx "Yangkam"
+- bsy "Sabah Bisaya"
+- bta "Bata"
+- btc "Bati (Cameroon)"
+- btd "Batak Dairi"
+- bte "Gamo-Ningi"
+- btf "Birgit"
+- btg "Gagnoa Bété"
+- bth "Biatah Bidayuh"
+- bti "Burate"
+- btj "Bacanese Malay"
+- btl "Bhatola"
+- btm "Batak Mandailing"
+- btn "Ratagnon"
+- bto "Rinconada Bikol"
+- btp "Budibud"
+- btq "Batek"
+- btr "Baetora"
+- bts "Batak Simalungun"
+- btt "Bete-Bendi"
+- btu "Batu"
+- btv "Bateri"
+- btw "Butuanon"
+- btx "Batak Karo"
+- bty "Bobot"
+- btz "Batak Alas-Kluet"
+- bua "Buriat"
+- bub "Bua"
+- buc "Bushi"
+- bud "Ntcham"
+- bue "Beothuk"
+- buf "Bushoong"
+- bug "Buginese"
+- buh "Younuo Bunu"
+- bui "Bongili"
+- buj "Basa-Gurmana"
+- buk "Bugawac"
+bg bul "Bulgarian"
+- bum "Bulu (Cameroon)"
+- bun "Sherbro"
+- buo "Terei"
+- bup "Busoa"
+- buq "Brem"
+- bus "Bokobaru"
+- but "Bungain"
+- buu "Budu"
+- buv "Bun"
+- buw "Bubi"
+- bux "Boghom"
+- buy "Bullom So"
+- buz "Bukwen"
+- bva "Barein"
+- bvb "Bube"
+- bvc "Baelelea"
+- bvd "Baeggu"
+- bve "Berau Malay"
+- bvf "Boor"
+- bvg "Bonkeng"
+- bvh "Bure"
+- bvi "Belanda Viri"
+- bvj "Baan"
+- bvk "Bukat"
+- bvl "Bolivian Sign Language"
+- bvm "Bamunka"
+- bvn "Buna"
+- bvo "Bolgo"
+- bvq "Birri"
+- bvr "Burarra"
+- bvt "Bati (Indonesia)"
+- bvu "Bukit Malay"
+- bvv "Baniva"
+- bvw "Boga"
+- bvx "Dibole"
+- bvy "Baybayanon"
+- bvz "Bauzi"
+- bwa "Bwatoo"
+- bwb "Namosi-Naitasiri-Serua"
+- bwc "Bwile"
+- bwd "Bwaidoka"
+- bwe "Bwe Karen"
+- bwf "Boselewa"
+- bwg "Barwe"
+- bwh "Bishuo"
+- bwi "Baniwa"
+- bwj "Láá Láá Bwamu"
+- bwk "Bauwaki"
+- bwl "Bwela"
+- bwm "Biwat"
+- bwn "Wunai Bunu"
+- bwo "Boro (Ethiopia)"
+- bwp "Mandobo Bawah"
+- bwq "Southern Bobo Madaré"
+- bwr "Bura-Pabir"
+- bws "Bomboma"
+- bwt "Bafaw-Balong"
+- bwu "Buli (Ghana)"
+- bww "Bwa"
+- bwx "Bu-Nao Bunu"
+- bwy "Cwi Bwamu"
+- bwz "Bwisi"
+- bxa "Bauro"
+- bxb "Belanda Bor"
+- bxc "Molengue"
+- bxd "Pela"
+- bxe "Birale"
+- bxf "Bilur"
+- bxg "Bangala"
+- bxh "Buhutu"
+- bxi "Pirlatapa"
+- bxj "Bayungu"
+- bxk "Bukusu"
+- bxl "Jalkunan"
+- bxm "Mongolia Buriat"
+- bxn "Burduna"
+- bxo "Barikanchi"
+- bxp "Bebil"
+- bxq "Beele"
+- bxr "Russia Buriat"
+- bxs "Busam"
+- bxu "China Buriat"
+- bxv "Berakou"
+- bxw "Bankagooma"
+- bxx "Borna (Democratic Republic of Congo)"
+- bxz "Binahari"
+- bya "Batak"
+- byb "Bikya"
+- byc "Ubaghara"
+- byd "Benyadu'"
+- bye "Pouye"
+- byf "Bete"
+- byg "Baygo"
+- byh "Bhujel"
+- byi "Buyu"
+- byj "Bina (Nigeria)"
+- byk "Biao"
+- byl "Bayono"
+- bym "Bidyara"
+- byn "Bilin"
+- byo "Biyo"
+- byp "Bumaji"
+- byq "Basay"
+- byr "Baruya"
+- bys "Burak"
+- byt "Berti"
+- byv "Medumba"
+- byw "Belhariya"
+- byx "Qaqet"
+- byy "Buya"
+- byz "Banaro"
+- bza "Bandi"
+- bzb "Andio"
+- bzd "Bribri"
+- bze "Jenaama Bozo"
+- bzf "Boikin"
+- bzg "Babuza"
+- bzh "Mapos Buang"
+- bzi "Bisu"
+- bzj "Belize Kriol English"
+- bzk "Nicaragua Creole English"
+- bzl "Boano (Sulawesi)"
+- bzm "Bolondo"
+- bzn "Boano (Maluku)"
+- bzo "Bozaba"
+- bzp "Kemberano"
+- bzq "Buli (Indonesia)"
+- bzr "Biri"
+- bzs "Brazilian Sign Language"
+- bzt "Brithenig"
+- bzu "Burmeso"
+- bzv "Bebe"
+- bzw "Basa (Nigeria)"
+- bzx "Hainyaxo Bozo"
+- bzy "Obanliku"
+- bzz "Evant"
+- caa "Chortí"
+- cab "Garifuna"
+- cac "Chuj"
+- cad "Caddo"
+- cae "Lehar"
+- caf "Southern Carrier"
+- cag "Nivaclé"
+- cah "Cahuarano"
+- caj "Chané"
+- cak "Kaqchikel"
+- cal "Carolinian"
+- cam "Cemuhî"
+- can "Chambri"
+- cao "Chácobo"
+- cap "Chipaya"
+- caq "Car Nicobarese"
+- car "Galibi Carib"
+- cas "Tsimané"
+ca cat "Catalan"
+- cav "Cavineña"
+- caw "Callawalla"
+- cax "Chiquitano"
+- cay "Cayuga"
+- caz "Canichana"
+- cbb "Cabiyarí"
+- cbc "Carapana"
+- cbd "Carijona"
+- cbe "Chipiajes"
+- cbg "Chimila"
+- cbh "Cagua"
+- cbi "Chachi"
+- cbj "Ede Cabe"
+- cbk "Chavacano"
+- cbl "Bualkhaw Chin"
+- cbn "Nyahkur"
+- cbo "Izora"
+- cbr "Cashibo-Cacataibo"
+- cbs "Cashinahua"
+- cbt "Chayahuita"
+- cbu "Candoshi-Shapra"
+- cbv "Cacua"
+- cbw "Kinabalian"
+- cby "Carabayo"
+- cca "Cauca"
+- ccc "Chamicuro"
+- ccd "Cafundo Creole"
+- cce "Chopi"
+- ccg "Samba Daka"
+- cch "Atsam"
+- ccj "Kasanga"
+- ccl "Cutchi-Swahili"
+- ccm "Malaccan Creole Malay"
+- cco "Comaltepec Chinantec"
+- ccp "Chakma"
+- ccq "Chaungtha"
+- ccr "Cacaopera"
+- cda "Choni"
+- cde "Chenchu"
+- cdf "Chiru"
+- cdg "Chamari"
+- cdh "Chambeali"
+- cdi "Chodri"
+- cdj "Churahi"
+- cdm "Chepang"
+- cdn "Chaudangsi"
+- cdo "Min Dong Chinese"
+- cdr "Cinda-Regi-Tiyal"
+- cds "Chadian Sign Language"
+- cdy "Chadong"
+- cdz "Koda"
+- cea "Lower Chehalis"
+- ceb "Cebuano"
+- ceg "Chamacoco"
+- cen "Cen"
+cs ces "Czech"
+- cet "Centúúm"
+- cfa "Dijim-Bwilim"
+- cfd "Cara"
+- cfg "Como Karim"
+- cfm "Falam Chin"
+- cga "Changriwa"
+- cgc "Kagayanen"
+- cgg "Chiga"
+- cgk "Chocangacakha"
+ch cha "Chamorro"
+- chb "Chibcha"
+- chc "Catawba"
+- chd "Highland Oaxaca Chontal"
+ce che "Chechen"
+- chf "Tabasco Chontal"
+- chg "Chagatai"
+- chh "Chinook"
+- chj "Ojitlán Chinantec"
+- chk "Chuukese"
+- chl "Cahuilla"
+- chm "Mari (Russia)"
+- chn "Chinook jargon"
+- cho "Choctaw"
+- chp "Chipewyan"
+- chq "Quiotepec Chinantec"
+- chr "Cherokee"
+- cht "Cholón"
+cu chu "Church Slavic"
+cv chv "Chuvash"
+- chw "Chuwabu"
+- chx "Chantyal"
+- chy "Cheyenne"
+- chz "Ozumacín Chinantec"
+- cia "Cia-Cia"
+- cib "Ci Gbe"
+- cic "Chickasaw"
+- cid "Chimariko"
+- cie "Cineni"
+- cih "Chinali"
+- cik "Chitkuli Kinnauri"
+- cim "Cimbrian"
+- cin "Cinta Larga"
+- cip "Chiapanec"
+- cir "Tiri"
+- ciw "Chippewa"
+- ciy "Chaima"
+- cja "Western Cham"
+- cje "Chru"
+- cjh "Upper Chehalis"
+- cji "Chamalal"
+- cjk "Chokwe"
+- cjm "Eastern Cham"
+- cjn "Chenapian"
+- cjo "Ashéninka Pajonal"
+- cjp "Cabécar"
+- cjs "Shor"
+- cjv "Chuave"
+- cjy "Jinyu Chinese"
+- cka "Khumi Awa Chin"
+- ckb "Central Kurdish"
+- ckh "Chak"
+- ckl "Cibak"
+- cko "Anufo"
+- ckq "Kajakse"
+- ckr "Kairak"
+- cks "Tayo"
+- ckt "Chukot"
+- cku "Koasati"
+- ckv "Kavalan"
+- ckx "Caka"
+- cky "Cakfem-Mushere"
+- ckz "Cakchiquel-Quiché Mixed Language"
+- cla "Ron"
+- clc "Chilcotin"
+- cld "Chaldean Neo-Aramaic"
+- cle "Lealao Chinantec"
+- clh "Chilisso"
+- cli "Chakali"
+- clk "Idu-Mishmi"
+- cll "Chala"
+- clm "Clallam"
+- clo "Lowland Oaxaca Chontal"
+- clu "Caluyanun"
+- clw "Chulym"
+- cly "Eastern Highland Chatino"
+- cma "Maa"
+- cme "Cerma"
+- cmg "Classical Mongolian"
+- cmi "Emberá-Chamí"
+- cml "Campalagian"
+- cmm "Michigamea"
+- cmn "Mandarin Chinese"
+- cmo "Central Mnong"
+- cmr "Mro Chin"
+- cms "Messapic"
+- cmt "Camtho"
+- cna "Changthang"
+- cnb "Chinbon Chin"
+- cnc "Côông"
+- cng "Northern Qiang"
+- cnh "Haka Chin"
+- cni "Asháninka"
+- cnk "Khumi Chin"
+- cnl "Lalana Chinantec"
+- cno "Con"
+- cns "Central Asmat"
+- cnt "Tepetotutla Chinantec"
+- cnu "Chenoua"
+- cnw "Ngawn Chin"
+- cnx "Middle Cornish"
+- coa "Cocos Islands Malay"
+- cob "Chicomuceltec"
+- coc "Cocopa"
+- cod "Cocama-Cocamilla"
+- coe "Koreguaje"
+- cof "Colorado"
+- cog "Chong"
+- coh "Chonyi-Dzihana-Kauma"
+- coj "Cochimi"
+- cok "Santa Teresa Cora"
+- col "Columbia-Wenatchi"
+- com "Comanche"
+- con "Cofán"
+- coo "Comox"
+- cop "Coptic"
+- coq "Coquille"
+kw cor "Cornish"
+co cos "Corsican"
+- cot "Caquinte"
+- cou "Wamey"
+- cov "Cao Miao"
+- cow "Cowlitz"
+- cox "Nanti"
+- coy "Coyaima"
+- coz "Chochotec"
+- cpa "Palantla Chinantec"
+- cpb "Ucayali-Yurúa Ashéninka"
+- cpc "Ajyíninka Apurucayali"
+- cpg "Cappadocian Greek"
+- cpi "Chinese Pidgin English"
+- cpn "Cherepon"
+- cps "Capiznon"
+- cpu "Pichis Ashéninka"
+- cpx "Pu-Xian Chinese"
+- cpy "South Ucayali Ashéninka"
+- cqd "Chuanqiandian Cluster Miao"
+- cqu "Chilean Quechua"
+- cra "Chara"
+- crb "Island Carib"
+- crc "Lonwolwol"
+- crd "Coeur d'Alene"
+cr cre "Cree"
+- crf "Caramanta"
+- crg "Michif"
+- crh "Crimean Tatar"
+- cri "Sãotomense"
+- crj "Southern East Cree"
+- crk "Plains Cree"
+- crl "Northern East Cree"
+- crm "Moose Cree"
+- crn "El Nayar Cora"
+- cro "Crow"
+- crq "Iyo'wujwa Chorote"
+- crr "Carolina Algonquian"
+- crs "Seselwa Creole French"
+- crt "Iyojwa'ja Chorote"
+- crv "Chaura"
+- crw "Chrau"
+- crx "Carrier"
+- cry "Cori"
+- crz "Cruzeño"
+- csa "Chiltepec Chinantec"
+- csb "Kashubian"
+- csc "Catalan Sign Language"
+- csd "Chiangmai Sign Language"
+- cse "Czech Sign Language"
+- csf "Cuba Sign Language"
+- csg "Chilean Sign Language"
+- csh "Asho Chin"
+- csi "Coast Miwok"
+- csk "Jola-Kasa"
+- csl "Chinese Sign Language"
+- csm "Central Sierra Miwok"
+- csn "Colombian Sign Language"
+- cso "Sochiapam Chinantec"
+- csq "Croatia Sign Language"
+- csr "Costa Rican Sign Language"
+- css "Southern Ohlone"
+- cst "Northern Ohlone"
+- csw "Swampy Cree"
+- csy "Siyin Chin"
+- csz "Coos"
+- cta "Tataltepec Chatino"
+- ctc "Chetco"
+- ctd "Tedim Chin"
+- cte "Tepinapa Chinantec"
+- ctg "Chittagonian"
+- ctl "Tlacoatzintepec Chinantec"
+- ctm "Chitimacha"
+- ctn "Chhintange"
+- cto "Emberá-Catío"
+- ctp "Western Highland Chatino"
+- cts "Northern Catanduanes Bicolano"
+- ctt "Wayanad Chetti"
+- ctu "Chol"
+- ctz "Zacatepec Chatino"
+- cua "Cua"
+- cub "Cubeo"
+- cuc "Usila Chinantec"
+- cug "Cung"
+- cuh "Chuka"
+- cui "Cuiba"
+- cuj "Mashco Piro"
+- cuk "San Blas Kuna"
+- cul "Culina"
+- cum "Cumeral"
+- cuo "Cumanagoto"
+- cup "Cupeño"
+- cuq "Cun"
+- cur "Chhulung"
+- cut "Teutila Cuicatec"
+- cuu "Tai Ya"
+- cuv "Cuvok"
+- cuw "Chukwa"
+- cux "Tepeuxila Cuicatec"
+- cvg "Chug"
+- cvn "Valle Nacional Chinantec"
+- cwa "Kabwa"
+- cwb "Maindo"
+- cwd "Woods Cree"
+- cwe "Kwere"
+- cwg "Chewong"
+- cwt "Kuwaataay"
+- cya "Nopala Chatino"
+- cyb "Cayubaba"
+cy cym "Welsh"
+- cyo "Cuyonon"
+- czh "Huizhou Chinese"
+- czk "Knaanic"
+- czn "Zenzontepec Chatino"
+- czo "Min Zhong Chinese"
+- czt "Zotung Chin"
+- daa "Dangaléat"
+- dac "Dambi"
+- dad "Marik"
+- dae "Duupa"
+- daf "Dan"
+- dag "Dagbani"
+- dah "Gwahatike"
+- dai "Day"
+- daj "Dar Fur Daju"
+- dak "Dakota"
+- dal "Dahalo"
+- dam "Damakawa"
+da dan "Danish"
+- dao "Daai Chin"
+- dap "Nisi (India)"
+- daq "Dandami Maria"
+- dar "Dargwa"
+- das "Daho-Doo"
+- dau "Dar Sila Daju"
+- dav "Taita"
+- daw "Davawenyo"
+- dax "Dayi"
+- daz "Dao"
+- dba "Bangi Me"
+- dbb "Deno"
+- dbd "Dadiya"
+- dbe "Dabe"
+- dbf "Edopi"
+- dbg "Dogul Dom Dogon"
+- dbi "Doka"
+- dbj "Ida'an"
+- dbl "Dyirbal"
+- dbm "Duguri"
+- dbn "Duriankere"
+- dbo "Dulbu"
+- dbp "Duwai"
+- dbq "Daba"
+- dbr "Dabarre"
+- dbu "Bondum Dom Dogon"
+- dbv "Dungu"
+- dby "Dibiyaso"
+- dcc "Deccan"
+- dcr "Negerhollands"
+- ddd "Dongotono"
+- dde "Doondo"
+- ddg "Fataluku"
+- ddi "West Goodenough"
+- ddj "Jaru"
+- ddn "Dendi (Benin)"
+- ddo "Dido"
+- dds "Donno So Dogon"
+- ddw "Dawera-Daweloor"
+- dec "Dagik"
+- ded "Dedua"
+- dee "Dewoin"
+- def "Dezfuli"
+- deg "Degema"
+- deh "Dehwari"
+- dei "Demisa"
+- dek "Dek"
+- del "Delaware"
+- dem "Dem"
+- den "Slave (Athapascan)"
+- dep "Pidgin Delaware"
+- deq "Dendi (Central African Republic)"
+- der "Deori"
+- des "Desano"
+de deu "German"
+- dev "Domung"
+- dez "Dengese"
+- dga "Southern Dagaare"
+- dgb "Bunoge Dogon"
+- dgc "Casiguran Dumagat Agta"
+- dgd "Dagaari Dioula"
+- dge "Degenan"
+- dgg "Doga"
+- dgh "Dghwede"
+- dgi "Northern Dagara"
+- dgk "Dagba"
+- dgn "Dagoman"
+- dgo "Dogri (individual language)"
+- dgr "Dogrib"
+- dgs "Dogoso"
+- dgu "Degaru"
+- dgx "Doghoro"
+- dgz "Daga"
+- dha "Dhanwar (India)"
+- dhd "Dhundari"
+- dhg "Dhangu"
+- dhi "Dhimal"
+- dhl "Dhalandji"
+- dhm "Zemba"
+- dhn "Dhanki"
+- dho "Dhodia"
+- dhr "Dhargari"
+- dhs "Dhaiso"
+- dhu "Dhurga"
+- dhv "Dehu"
+- dhw "Dhanwar (Nepal)"
+- dia "Dia"
+- dib "South Central Dinka"
+- dic "Lakota Dida"
+- did "Didinga"
+- dif "Dieri"
+- dig "Digo"
+- dih "Kumiai"
+- dii "Dimbong"
+- dij "Dai"
+- dik "Southwestern Dinka"
+- dil "Dilling"
+- dim "Dime"
+- din "Dinka"
+- dio "Dibo"
+- dip "Northeastern Dinka"
+- diq "Dimli (individual language)"
+- dir "Dirim"
+- dis "Dimasa"
+- dit "Dirari"
+- diu "Diriku"
+dv div "Dhivehi"
+- diw "Northwestern Dinka"
+- dix "Dixon Reef"
+- diy "Diuwe"
+- diz "Ding"
+- djb "Djinba"
+- djc "Dar Daju Daju"
+- djd "Djamindjung"
+- dje "Zarma"
+- djf "Djangun"
+- dji "Djinang"
+- djj "Djeebbana"
+- djk "Eastern Maroon Creole"
+- djl "Djiwarli"
+- djm "Jamsay Dogon"
+- djn "Djauan"
+- djo "Jangkang"
+- djr "Djambarrpuyngu"
+- dju "Kapriman"
+- djw "Djawi"
+- dka "Dakpakha"
+- dkk "Dakka"
+- dkl "Kolum So Dogon"
+- dkr "Kuijau"
+- dks "Southeastern Dinka"
+- dkx "Mazagway"
+- dlg "Dolgan"
+- dlm "Dalmatian"
+- dln "Darlong"
+- dma "Duma"
+- dmc "Dimir"
+- dme "Dugwor"
+- dmg "Upper Kinabatangan"
+- dmk "Domaaki"
+- dml "Dameli"
+- dmm "Dama"
+- dmo "Kemezung"
+- dmr "East Damar"
+- dms "Dampelas"
+- dmu "Dubu"
+- dmv "Dumpas"
+- dmx "Dema"
+- dmy "Demta"
+- dna "Upper Grand Valley Dani"
+- dnd "Daonda"
+- dne "Ndendeule"
+- dng "Dungan"
+- dni "Lower Grand Valley Dani"
+- dnk "Dengka"
+- dnn "Dzùùngoo"
+- dnr "Danaru"
+- dnt "Mid Grand Valley Dani"
+- dnu "Danau"
+- dnw "Western Dani"
+- dny "Dení"
+- doa "Dom"
+- dob "Dobu"
+- doc "Northern Dong"
+- doe "Doe"
+- dof "Domu"
+- doh "Dong"
+- doi "Dogri (macrolanguage)"
+- dok "Dondo"
+- dol "Doso"
+- don "Toura (Papua New Guinea)"
+- doo "Dongo"
+- dop "Lukpa"
+- doq "Dominican Sign Language"
+- dor "Dori'o"
+- dos "Dogosé"
+- dot "Dass"
+- dov "Dombe"
+- dow "Doyayo"
+- dox "Bussa"
+- doy "Dompo"
+- doz "Dorze"
+- dpp "Papar"
+- drb "Dair"
+- drd "Darmiya"
+- dre "Dolpo"
+- drg "Rungus"
+- dri "C'lela"
+- drl "Darling"
+- drn "West Damar"
+- dro "Daro-Matu Melanau"
+- drq "Dura"
+- drr "Dororo"
+- drs "Gedeo"
+- drt "Drents"
+- dru "Rukai"
+- dry "Darai"
+- dsb "Lower Sorbian"
+- dse "Dutch Sign Language"
+- dsh "Daasanach"
+- dsi "Disa"
+- dsl "Danish Sign Language"
+- dsn "Dusner"
+- dso "Desiya"
+- dsq "Tadaksahak"
+- dta "Daur"
+- dtb "Labuk-Kinabatangan Kadazan"
+- dti "Ana Tinga Dogon"
+- dtk "Tene Kan Dogon"
+- dtm "Tomo Kan Dogon"
+- dtp "Central Dusun"
+- dtr "Lotud"
+- dts "Toro So Dogon"
+- dtt "Toro Tegu Dogon"
+- dtu "Tebul Ure Dogon"
+- dua "Duala"
+- dub "Dubli"
+- duc "Duna"
+- dud "Hun-Saare"
+- due "Umiray Dumaget Agta"
+- duf "Dumbea"
+- dug "Duruma"
+- duh "Dungra Bhil"
+- dui "Dumun"
+- duj "Dhuwal"
+- duk "Duduela"
+- dul "Alabat Island Agta"
+- dum "Middle Dutch (ca. 1050-1350)"
+- dun "Dusun Deyah"
+- duo "Dupaninan Agta"
+- dup "Duano"
+- duq "Dusun Malang"
+- dur "Dii"
+- dus "Dumi"
+- duu "Drung"
+- duv "Duvle"
+- duw "Dusun Witu"
+- dux "Duungooma"
+- duy "Dicamay Agta"
+- duz "Duli"
+- dva "Duau"
+- dwa "Diri"
+- dwl "Walo Kumbe Dogon"
+- dwr "Dawro"
+- dws "Dutton World Speedwords"
+- dww "Dawawa"
+- dya "Dyan"
+- dyb "Dyaberdyaber"
+- dyd "Dyugun"
+- dyg "Villa Viciosa Agta"
+- dyi "Djimini Senoufo"
+- dym "Yanda Dom Dogon"
+- dyn "Dyangadi"
+- dyo "Jola-Fonyi"
+- dyu "Dyula"
+- dyy "Dyaabugay"
+- dza "Tunzu"
+- dzd "Daza"
+- dzg "Dazaga"
+- dzl "Dzalakha"
+- dzn "Dzando"
+dz dzo "Dzongkha"
+- ebg "Ebughu"
+- ebk "Eastern Bontok"
+- ebo "Teke-Ebo"
+- ebr "Ebrié"
+- ebu "Embu"
+- ecr "Eteocretan"
+- ecs "Ecuadorian Sign Language"
+- ecy "Eteocypriot"
+- eee "E"
+- efa "Efai"
+- efe "Efe"
+- efi "Efik"
+- ega "Ega"
+- egl "Emilian"
+- ego "Eggon"
+- egy "Egyptian (Ancient)"
+- ehu "Ehueun"
+- eip "Eipomek"
+- eit "Eitiep"
+- eiv "Askopan"
+- eja "Ejamat"
+- eka "Ekajuk"
+- eke "Ekit"
+- ekg "Ekari"
+- eki "Eki"
+- ekk "Standard Estonian"
+- ekl "Kol"
+- ekm "Elip"
+- eko "Koti"
+- ekp "Ekpeye"
+- ekr "Yace"
+- eky "Eastern Kayah"
+- ele "Elepi"
+- elh "El Hugeirat"
+- eli "Nding"
+- elk "Elkei"
+el ell "Modern Greek (1453-)"
+- elm "Eleme"
+- elo "El Molo"
+- elp "Elpaputih"
+- elu "Elu"
+- elx "Elamite"
+- ema "Emai-Iuleha-Ora"
+- emb "Embaloh"
+- eme "Emerillon"
+- emg "Eastern Meohang"
+- emi "Mussau-Emira"
+- emk "Eastern Maninkakan"
+- emm "Mamulique"
+- emn "Eman"
+- emo "Emok"
+- emp "Northern Emberá"
+- ems "Pacific Gulf Yupik"
+- emu "Eastern Muria"
+- emw "Emplawas"
+- emx "Erromintxela"
+- emy "Epigraphic Mayan"
+- ena "Apali"
+- enb "Markweeta"
+- enc "En"
+- end "Ende"
+- enf "Forest Enets"
+en eng "English"
+- enh "Tundra Enets"
+- enm "Middle English (1100-1500)"
+- enn "Engenni"
+- eno "Enggano"
+- enq "Enga"
+- enr "Emumu"
+- enu "Enu"
+- env "Enwan (Edu State)"
+- enw "Enwan (Akwa Ibom State)"
+- eot "Beti (Côte d'Ivoire)"
+- epi "Epie"
+eo epo "Esperanto"
+- era "Eravallan"
+- erg "Sie"
+- erh "Eruwa"
+- eri "Ogea"
+- erk "South Efate"
+- ero "Horpa"
+- err "Erre"
+- ers "Ersu"
+- ert "Eritai"
+- erw "Erokwanas"
+- ese "Ese Ejja"
+- esh "Eshtehardi"
+- esi "North Alaskan Inupiatun"
+- esk "Northwest Alaska Inupiatun"
+- esl "Egypt Sign Language"
+- esm "Esuma"
+- esn "Salvadoran Sign Language"
+- eso "Estonian Sign Language"
+- esq "Esselen"
+- ess "Central Siberian Yupik"
+et est "Estonian"
+- esu "Central Yupik"
+- etb "Etebi"
+- etc "Etchemin"
+- eth "Ethiopian Sign Language"
+- etn "Eton (Vanuatu)"
+- eto "Eton (Cameroon)"
+- etr "Edolo"
+- ets "Yekhee"
+- ett "Etruscan"
+- etu "Ejagham"
+- etx "Eten"
+- etz "Semimi"
+eu eus "Basque"
+- eve "Even"
+- evh "Uvbie"
+- evn "Evenki"
+ee ewe "Ewe"
+- ewo "Ewondo"
+- ext "Extremaduran"
+- eya "Eyak"
+- eyo "Keiyo"
+- eze "Uzekwe"
+- faa "Fasu"
+- fab "Fa D'ambu"
+- fad "Wagi"
+- faf "Fagani"
+- fag "Finongan"
+- fah "Baissa Fali"
+- fai "Faiwol"
+- faj "Faita"
+- fak "Fang (Cameroon)"
+- fal "South Fali"
+- fam "Fam"
+- fan "Fang (Equatorial Guinea)"
+fo fao "Faroese"
+- fap "Palor"
+- far "Fataleka"
+fa fas "Persian"
+- fat "Fanti"
+- fau "Fayu"
+- fax "Fala"
+- fay "Southwestern Fars"
+- faz "Northwestern Fars"
+- fbl "West Albay Bikol"
+- fcs "Quebec Sign Language"
+- fer "Feroge"
+- ffi "Foia Foia"
+- ffm "Maasina Fulfulde"
+- fgr "Fongoro"
+- fia "Nobiin"
+- fie "Fyer"
+fj fij "Fijian"
+- fil "Filipino"
+fi fin "Finnish"
+- fip "Fipa"
+- fir "Firan"
+- fit "Tornedalen Finnish"
+- fiw "Fiwaga"
+- fkv "Kven Finnish"
+- fla "Kalispel-Pend d'Oreille"
+- flh "Foau"
+- fli "Fali"
+- fll "North Fali"
+- fln "Flinders Island"
+- flr "Fuliiru"
+- fly "Tsotsitaal"
+- fmp "Fe'fe'"
+- fmu "Far Western Muria"
+- fng "Fanagalo"
+- fni "Fania"
+- fod "Foodo"
+- foi "Foi"
+- fom "Foma"
+- fon "Fon"
+- for "Fore"
+- fos "Siraya"
+- fpe "Fernando Po Creole English"
+- fqs "Fas"
+fr fra "French"
+- frc "Cajun French"
+- frd "Fordata"
+- frk "Frankish"
+- frm "Middle French (ca. 1400-1600)"
+- fro "Old French (842-ca. 1400)"
+- frp "Arpitan"
+- frq "Forak"
+- frr "Northern Frisian"
+- frs "Eastern Frisian"
+- frt "Fortsenal"
+fy fry "Western Frisian"
+- fse "Finnish Sign Language"
+- fsl "French Sign Language"
+- fss "Finland-Swedish Sign Language"
+- fub "Adamawa Fulfulde"
+- fuc "Pulaar"
+- fud "East Futuna"
+- fue "Borgu Fulfulde"
+- fuf "Pular"
+- fuh "Western Niger Fulfulde"
+- fui "Bagirmi Fulfulde"
+- fuj "Ko"
+ff ful "Fulah"
+- fum "Fum"
+- fun "Fulniô"
+- fuq "Central-Eastern Niger Fulfulde"
+- fur "Friulian"
+- fut "Futuna-Aniwa"
+- fuu "Furu"
+- fuv "Nigerian Fulfulde"
+- fuy "Fuyug"
+- fvr "Fur"
+- fwa "Fwâi"
+- fwe "Fwe"
+- gaa "Ga"
+- gab "Gabri"
+- gac "Mixed Great Andamanese"
+- gad "Gaddang"
+- gae "Guarequena"
+- gaf "Gende"
+- gag "Gagauz"
+- gah "Alekano"
+- gai "Borei"
+- gaj "Gadsup"
+- gak "Gamkonora"
+- gal "Galoli"
+- gam "Kandawo"
+- gan "Gan Chinese"
+- gao "Gants"
+- gap "Gal"
+- gaq "Gata'"
+- gar "Galeya"
+- gas "Adiwasi Garasia"
+- gat "Kenati"
+- gau "Mudhili Gadaba"
+- gaw "Nobonob"
+- gax "Borana-Arsi-Guji Oromo"
+- gay "Gayo"
+- gaz "West Central Oromo"
+- gba "Gbaya (Central African Republic)"
+- gbb "Kaytetye"
+- gbc "Garawa"
+- gbd "Karadjeri"
+- gbe "Niksek"
+- gbf "Gaikundi"
+- gbg "Gbanziri"
+- gbh "Defi Gbe"
+- gbi "Galela"
+- gbj "Bodo Gadaba"
+- gbk "Gaddi"
+- gbl "Gamit"
+- gbm "Garhwali"
+- gbn "Mo'da"
+- gbo "Northern Grebo"
+- gbp "Gbaya-Bossangoa"
+- gbq "Gbaya-Bozoum"
+- gbr "Gbagyi"
+- gbs "Gbesi Gbe"
+- gbu "Gagadu"
+- gbv "Gbanu"
+- gbx "Eastern Xwla Gbe"
+- gby "Gbari"
+- gbz "Zoroastrian Dari"
+- gcc "Mali"
+- gcd "Ganggalida"
+- gce "Galice"
+- gcf "Guadeloupean Creole French"
+- gcl "Grenadian Creole English"
+- gcn "Gaina"
+- gcr "Guianese Creole French"
+- gct "Colonia Tovar German"
+- gda "Gade Lohar"
+- gdb "Pottangi Ollar Gadaba"
+- gdc "Gugu Badhun"
+- gdd "Gedaged"
+- gde "Gude"
+- gdf "Guduf-Gava"
+- gdg "Ga'dang"
+- gdh "Gadjerawang"
+- gdi "Gundi"
+- gdj "Gurdjar"
+- gdk "Gadang"
+- gdl "Dirasha"
+- gdm "Laal"
+- gdn "Umanakaina"
+- gdo "Ghodoberi"
+- gdq "Mehri"
+- gdr "Wipi"
+- gdu "Gudu"
+- gdx "Godwari"
+- gea "Geruma"
+- geb "Kire"
+- gec "Gboloo Grebo"
+- ged "Gade"
+- geg "Gengle"
+- geh "Hutterite German"
+- gei "Gebe"
+- gej "Gen"
+- gek "Yiwom"
+- gel "Kag-Fer-Jiir-Koor-Ror-Us-Zuksun"
+- geq "Geme"
+- ges "Geser-Gorom"
+- gew "Gera"
+- gex "Garre"
+- gey "Enya"
+- gez "Geez"
+- gfk "Patpatar"
+- gft "Gafat"
+- gga "Gao"
+- ggb "Gbii"
+- ggd "Gugadj"
+- gge "Guragone"
+- ggg "Gurgula"
+- ggk "Kungarakany"
+- ggl "Ganglau"
+- ggn "Eastern Gurung"
+- ggo "Southern Gondi"
+- ggr "Aghu Tharnggalu"
+- ggt "Gitua"
+- ggu "Gagu"
+- ggw "Gogodala"
+- gha "Ghadamès"
+- ghc "Hiberno-Scottish Gaelic"
+- ghe "Southern Ghale"
+- ghh "Northern Ghale"
+- ghk "Geko Karen"
+- ghl "Ghulfan"
+- ghn "Ghanongga"
+- gho "Ghomara"
+- ghr "Ghera"
+- ghs "Guhu-Samane"
+- ght "Kutang Ghale"
+- gia "Kitja"
+- gib "Gibanawa"
+- gic "Gail"
+- gid "Gidar"
+- gig "Goaria"
+- gil "Gilbertese"
+- gim "Gimi (Eastern Highlands)"
+- gin "Hinukh"
+- gio "Gelao"
+- gip "Gimi (West New Britain)"
+- giq "Green Gelao"
+- gir "Red Gelao"
+- gis "North Giziga"
+- git "Gitxsan"
+- giw "White Gelao"
+- gix "Gilima"
+- giy "Giyug"
+- giz "South Giziga"
+- gji "Geji"
+- gjk "Kachi Koli"
+- gjn "Gonja"
+- gju "Gujari"
+- gka "Guya"
+- gke "Ndai"
+- gkn "Gokana"
+- gkp "Guinea Kpelle"
+gd gla "Scottish Gaelic"
+- glc "Bon Gula"
+- gld "Nanai"
+ga gle "Irish"
+gl glg "Galician"
+- glh "Northwest Pashayi"
+- gli "Guliguli"
+- glj "Gula Iro"
+- glk "Gilaki"
+- glo "Galambu"
+- glr "Glaro-Twabo"
+- glu "Gula (Chad)"
+gv glv "Manx"
+- glw "Glavda"
+- gly "Gule"
+- gma "Gambera"
+- gmb "Gula'alaa"
+- gmd "Mághdì"
+- gmh "Middle High German (ca. 1050-1500)"
+- gml "Middle Low German"
+- gmm "Gbaya-Mbodomo"
+- gmn "Gimnime"
+- gmu "Gumalu"
+- gmv "Gamo"
+- gmx "Magoma"
+- gmy "Mycenaean Greek"
+- gna "Kaansa"
+- gnb "Gangte"
+- gnc "Guanche"
+- gnd "Zulgo-Gemzek"
+- gne "Ganang"
+- gng "Ngangam"
+- gnh "Lere"
+- gni "Gooniyandi"
+- gnk "//Gana"
+- gnl "Gangulu"
+- gnm "Ginuman"
+- gnn "Gumatj"
+- gno "Northern Gondi"
+- gnq "Gana"
+- gnr "Gureng Gureng"
+- gnt "Guntai"
+- gnu "Gnau"
+- gnw "Western Bolivian Guaraní"
+- gnz "Ganzi"
+- goa "Guro"
+- gob "Playero"
+- goc "Gorakor"
+- god "Godié"
+- goe "Gongduk"
+- gof "Gofa"
+- gog "Gogo"
+- goh "Old High German (ca. 750-1050)"
+- goi "Gobasi"
+- goj "Gowlan"
+- gok "Gowli"
+- gol "Gola"
+- gom "Goan Konkani"
+- gon "Gondi"
+- goo "Gone Dau"
+- gop "Yeretuar"
+- goq "Gorap"
+- gor "Gorontalo"
+- gos "Gronings"
+- got "Gothic"
+- gou "Gavar"
+- gow "Gorowa"
+- gox "Gobu"
+- goy "Goundo"
+- goz "Gozarkhani"
+- gpa "Gupa-Abawa"
+- gpn "Taiap"
+- gqa "Ga'anda"
+- gqi "Guiqiong"
+- gqn "Guana (Brazil)"
+- gqr "Gor"
+- gra "Rajput Garasia"
+- grb "Grebo"
+- grc "Ancient Greek (to 1453)"
+- grd "Guruntum-Mbaaru"
+- grg "Madi"
+- grh "Gbiri-Niragu"
+- gri "Ghari"
+- grj "Southern Grebo"
+- grm "Kota Marudu Talantang"
+gn grn "Guarani"
+- gro "Groma"
+- grq "Gorovu"
+- grr "Taznatit"
+- grs "Gresi"
+- grt "Garo"
+- gru "Kistane"
+- grv "Central Grebo"
+- grw "Gweda"
+- grx "Guriaso"
+- gry "Barclayville Grebo"
+- grz "Guramalum"
+- gse "Ghanaian Sign Language"
+- gsg "German Sign Language"
+- gsl "Gusilay"
+- gsm "Guatemalan Sign Language"
+- gsn "Gusan"
+- gso "Southwest Gbaya"
+- gsp "Wasembo"
+- gss "Greek Sign Language"
+- gsw "Swiss German"
+- gta "Guató"
+- gti "Gbati-ri"
+- gua "Shiki"
+- gub "Guajajára"
+- guc "Wayuu"
+- gud "Yocoboué Dida"
+- gue "Gurinji"
+- guf "Gupapuyngu"
+- gug "Paraguayan Guaraní"
+- guh "Guahibo"
+- gui "Eastern Bolivian Guaraní"
+gu guj "Gujarati"
+- guk "Gumuz"
+- gul "Sea Island Creole English"
+- gum "Guambiano"
+- gun "Mbyá Guaraní"
+- guo "Guayabero"
+- gup "Gunwinggu"
+- guq "Aché"
+- gur "Farefare"
+- gus "Guinean Sign Language"
+- gut "Maléku Jaíka"
+- guu "Yanomamö"
+- guv "Gey"
+- guw "Gun"
+- gux "Gourmanchéma"
+- guz "Gusii"
+- gva "Guana (Paraguay)"
+- gvc "Guanano"
+- gve "Duwet"
+- gvf "Golin"
+- gvj "Guajá"
+- gvl "Gulay"
+- gvm "Gurmana"
+- gvn "Kuku-Yalanji"
+- gvo "Gavião Do Jiparaná"
+- gvp "Pará Gavião"
+- gvr "Western Gurung"
+- gvs "Gumawana"
+- gvy "Guyani"
+- gwa "Mbato"
+- gwb "Gwa"
+- gwc "Kalami"
+- gwd "Gawwada"
+- gwe "Gweno"
+- gwf "Gowro"
+- gwg "Moo"
+- gwi "Gwichʼin"
+- gwj "/Gwi"
+- gwn "Gwandara"
+- gwr "Gwere"
+- gwt "Gawar-Bati"
+- gwu "Guwamu"
+- gww "Kwini"
+- gwx "Gua"
+- gxx "Wè Southern"
+- gya "Northwest Gbaya"
+- gyb "Garus"
+- gyd "Kayardild"
+- gye "Gyem"
+- gyf "Gungabula"
+- gyg "Gbayi"
+- gyi "Gyele"
+- gyl "Gayil"
+- gym "Ngäbere"
+- gyn "Guyanese Creole English"
+- gyr "Guarayu"
+- gyy "Gunya"
+- gza "Ganza"
+- gzi "Gazi"
+- gzn "Gane"
+- haa "Han"
+- hab "Hanoi Sign Language"
+- hac "Gurani"
+- had "Hatam"
+- hae "Eastern Oromo"
+- haf "Haiphong Sign Language"
+- hag "Hanga"
+- hah "Hahon"
+- hai "Haida"
+- haj "Hajong"
+- hak "Hakka Chinese"
+- hal "Halang"
+- ham "Hewa"
+- han "Hangaza"
+- hao "Hakö"
+- hap "Hupla"
+- haq "Ha"
+- har "Harari"
+- has "Haisla"
+ht hat "Haitian"
+ha hau "Hausa"
+- hav "Havu"
+- haw "Hawaiian"
+- hax "Southern Haida"
+- hay "Haya"
+- haz "Hazaragi"
+- hba "Hamba"
+- hbb "Huba"
+- hbn "Heiban"
+- hbo "Ancient Hebrew"
+sh hbs "Serbo-Croatian"
+- hbu "Habu"
+- hca "Andaman Creole Hindi"
+- hch "Huichol"
+- hdn "Northern Haida"
+- hds "Honduras Sign Language"
+- hdy "Hadiyya"
+- hea "Northern Qiandong Miao"
+he heb "Hebrew"
+- hed "Herdé"
+- heg "Helong"
+- heh "Hehe"
+- hei "Heiltsuk"
+- hem "Hemba"
+hz her "Herero"
+- hgm "Hai//om"
+- hgw "Haigwai"
+- hhi "Hoia Hoia"
+- hhr "Kerak"
+- hhy "Hoyahoya"
+- hia "Lamang"
+- hib "Hibito"
+- hid "Hidatsa"
+- hif "Fiji Hindi"
+- hig "Kamwe"
+- hih "Pamosu"
+- hii "Hinduri"
+- hij "Hijuk"
+- hik "Seit-Kaitetu"
+- hil "Hiligaynon"
+hi hin "Hindi"
+- hio "Tsoa"
+- hir "Himarimã"
+- hit "Hittite"
+- hiw "Hiw"
+- hix "Hixkaryána"
+- hji "Haji"
+- hka "Kahe"
+- hke "Hunde"
+- hkk "Hunjara-Kaina Ke"
+- hks "Hong Kong Sign Language"
+- hla "Halia"
+- hlb "Halbi"
+- hld "Halang Doan"
+- hle "Hlersu"
+- hlt "Nga La"
+- hlu "Hieroglyphic Luwian"
+- hma "Southern Mashan Hmong"
+- hmb "Humburi Senni Songhay"
+- hmc "Central Huishui Hmong"
+- hmd "Large Flowery Miao"
+- hme "Eastern Huishui Hmong"
+- hmf "Hmong Don"
+- hmg "Southwestern Guiyang Hmong"
+- hmh "Southwestern Huishui Hmong"
+- hmi "Northern Huishui Hmong"
+- hmj "Ge"
+- hmk "Maek"
+- hml "Luopohe Hmong"
+- hmm "Central Mashan Hmong"
+- hmn "Hmong"
+ho hmo "Hiri Motu"
+- hmp "Northern Mashan Hmong"
+- hmq "Eastern Qiandong Miao"
+- hmr "Hmar"
+- hms "Southern Qiandong Miao"
+- hmt "Hamtai"
+- hmu "Hamap"
+- hmv "Hmong Dô"
+- hmw "Western Mashan Hmong"
+- hmy "Southern Guiyang Hmong"
+- hmz "Hmong Shua"
+- hna "Mina (Cameroon)"
+- hnd "Southern Hindko"
+- hne "Chhattisgarhi"
+- hnh "//Ani"
+- hni "Hani"
+- hnj "Hmong Njua"
+- hnn "Hanunoo"
+- hno "Northern Hindko"
+- hns "Caribbean Hindustani"
+- hnu "Hung"
+- hoa "Hoava"
+- hob "Mari (Madang Province)"
+- hoc "Ho"
+- hod "Holma"
+- hoe "Horom"
+- hoh "Hobyót"
+- hoi "Holikachuk"
+- hoj "Hadothi"
+- hol "Holu"
+- hom "Homa"
+- hoo "Holoholo"
+- hop "Hopi"
+- hor "Horo"
+- hos "Ho Chi Minh City Sign Language"
+- hot "Hote"
+- hov "Hovongan"
+- how "Honi"
+- hoy "Holiya"
+- hoz "Hozo"
+- hpo "Hpon"
+- hps "Hawai'i Pidgin Sign Language"
+- hra "Hrangkhol"
+- hre "Hre"
+- hrk "Haruku"
+- hrm "Horned Miao"
+- hro "Haroi"
+- hrr "Horuru"
+- hrt "Hértevin"
+- hru "Hruso"
+hr hrv "Croatian"
+- hrx "Hunsrik"
+- hrz "Harzani"
+- hsb "Upper Sorbian"
+- hsh "Hungarian Sign Language"
+- hsl "Hausa Sign Language"
+- hsn "Xiang Chinese"
+- hss "Harsusi"
+- hti "Hoti"
+- hto "Minica Huitoto"
+- hts "Hadza"
+- htu "Hitu"
+- htx "Middle Hittite"
+- hub "Huambisa"
+- huc "=/Hua"
+- hud "Huaulu"
+- hue "San Francisco Del Mar Huave"
+- huf "Humene"
+- hug "Huachipaeri"
+- huh "Huilliche"
+- hui "Huli"
+- huj "Northern Guiyang Hmong"
+- huk "Hulung"
+- hul "Hula"
+- hum "Hungana"
+hu hun "Hungarian"
+- huo "Hu"
+- hup "Hupa"
+- huq "Tsat"
+- hur "Halkomelem"
+- hus "Huastec"
+- hut "Humla"
+- huu "Murui Huitoto"
+- huv "San Mateo Del Mar Huave"
+- huw "Hukumina"
+- hux "Nüpode Huitoto"
+- huy "Hulaulá"
+- huz "Hunzib"
+- hvc "Haitian Vodoun Culture Language"
+- hve "San Dionisio Del Mar Huave"
+- hvk "Haveke"
+- hvn "Sabu"
+- hvv "Santa María Del Mar Huave"
+- hwa "Wané"
+- hwc "Hawai'i Creole English"
+- hwo "Hwana"
+- hya "Hya"
+hy hye "Armenian"
+- iai "Iaai"
+- ian "Iatmul"
+- iap "Iapama"
+- iar "Purari"
+- iba "Iban"
+- ibb "Ibibio"
+- ibd "Iwaidja"
+- ibe "Akpes"
+- ibg "Ibanag"
+- ibi "Ibilo"
+- ibl "Ibaloi"
+- ibm "Agoi"
+- ibn "Ibino"
+ig ibo "Igbo"
+- ibr "Ibuoro"
+- ibu "Ibu"
+- iby "Ibani"
+- ica "Ede Ica"
+- ich "Etkywan"
+- icl "Icelandic Sign Language"
+- icr "Islander Creole English"
+- ida "Idakho-Isukha-Tiriki"
+- idb "Indo-Portuguese"
+- idc "Idon"
+- idd "Ede Idaca"
+- ide "Idere"
+- idi "Idi"
+io ido "Ido"
+- idr "Indri"
+- ids "Idesa"
+- idt "Idaté"
+- idu "Idoma"
+- ifa "Amganad Ifugao"
+- ifb "Batad Ifugao"
+- ife "Ifè"
+- iff "Ifo"
+- ifk "Tuwali Ifugao"
+- ifm "Teke-Fuumu"
+- ifu "Mayoyao Ifugao"
+- ify "Keley-I Kallahan"
+- igb "Ebira"
+- ige "Igede"
+- igg "Igana"
+- igl "Igala"
+- igm "Kanggape"
+- ign "Ignaciano"
+- igo "Isebe"
+- igs "Interglossa"
+- igw "Igwe"
+- ihb "Iha Based Pidgin"
+- ihi "Ihievbe"
+- ihp "Iha"
+ii iii "Sichuan Yi"
+- ijc "Izon"
+- ije "Biseni"
+- ijj "Ede Ije"
+- ijn "Kalabari"
+- ijs "Southeast Ijo"
+- ike "Eastern Canadian Inuktitut"
+- iki "Iko"
+- ikk "Ika"
+- ikl "Ikulu"
+- iko "Olulumo-Ikom"
+- ikp "Ikpeshi"
+- ikt "Western Canadian Inuktitut"
+iu iku "Inuktitut"
+- ikv "Iku-Gora-Ankwa"
+- ikw "Ikwere"
+- ikx "Ik"
+- ikz "Ikizu"
+- ila "Ile Ape"
+- ilb "Ila"
+ie ile "Interlingue"
+- ilg "Garig-Ilgar"
+- ili "Ili Turki"
+- ilk "Ilongot"
+- ill "Iranun"
+- ilo "Iloko"
+- ils "International Sign"
+- ilu "Ili'uun"
+- ilv "Ilue"
+- ilw "Talur"
+- ima "Mala Malasar"
+- ime "Imeraguen"
+- imi "Anamgura"
+- iml "Miluk"
+- imn "Imonda"
+- imo "Imbongu"
+- imr "Imroing"
+- ims "Marsian"
+- imy "Milyan"
+ia ina "Interlingua (International Auxiliary Language Association)"
+- inb "Inga"
+id ind "Indonesian"
+- ing "Degexit'an"
+- inh "Ingush"
+- inj "Jungle Inga"
+- inl "Indonesian Sign Language"
+- inm "Minaean"
+- inn "Isinai"
+- ino "Inoke-Yate"
+- inp "Iñapari"
+- ins "Indian Sign Language"
+- int "Intha"
+- inz "Ineseño"
+- ior "Inor"
+- iou "Tuma-Irumu"
+- iow "Iowa-Oto"
+- ipi "Ipili"
+ik ipk "Inupiaq"
+- ipo "Ipiko"
+- iqu "Iquito"
+- ire "Iresim"
+- irh "Irarutu"
+- iri "Irigwe"
+- irk "Iraqw"
+- irn "Irántxe"
+- irr "Ir"
+- iru "Irula"
+- irx "Kamberau"
+- iry "Iraya"
+- isa "Isabi"
+- isc "Isconahua"
+- isd "Isnag"
+- ise "Italian Sign Language"
+- isg "Irish Sign Language"
+- ish "Esan"
+- isi "Nkem-Nkum"
+- isk "Ishkashimi"
+is isl "Icelandic"
+- ism "Masimasi"
+- isn "Isanzu"
+- iso "Isoko"
+- isr "Israeli Sign Language"
+- ist "Istriot"
+- isu "Isu (Menchum Division)"
+it ita "Italian"
+- itb "Binongan Itneg"
+- ite "Itene"
+- iti "Inlaod Itneg"
+- itk "Judeo-Italian"
+- itl "Itelmen"
+- itm "Itu Mbon Uzo"
+- ito "Itonama"
+- itr "Iteri"
+- its "Isekiri"
+- itt "Maeng Itneg"
+- itv "Itawit"
+- itw "Ito"
+- itx "Itik"
+- ity "Moyadan Itneg"
+- itz "Itzá"
+- ium "Iu Mien"
+- ivb "Ibatan"
+- ivv "Ivatan"
+- iwk "I-Wak"
+- iwm "Iwam"
+- iwo "Iwur"
+- iws "Sepik Iwam"
+- ixc "Ixcatec"
+- ixl "Ixil"
+- iya "Iyayu"
+- iyo "Mesaka"
+- iyx "Yaka (Congo)"
+- izh "Ingrian"
+- izi "Izi-Ezaa-Ikwo-Mgbo"
+- izr "Izere"
+- jaa "Jamamadí"
+- jab "Hyam"
+- jac "Popti'"
+- jad "Jahanka"
+- jae "Yabem"
+- jaf "Jara"
+- jah "Jah Hut"
+- jaj "Zazao"
+- jak "Jakun"
+- jal "Yalahatan"
+- jam "Jamaican Creole English"
+- jao "Yanyuwa"
+- jaq "Yaqay"
+- jar "Jarawa (Nigeria)"
+- jas "New Caledonian Javanese"
+- jat "Jakati"
+- jau "Yaur"
+jv jav "Javanese"
+- jax "Jambi Malay"
+- jay "Yan-nhangu"
+- jaz "Jawe"
+- jbe "Judeo-Berber"
+- jbj "Arandai"
+- jbn "Nafusi"
+- jbo "Lojban"
+- jbr "Jofotek-Bromnya"
+- jbt "Jabutí"
+- jbu "Jukun Takum"
+- jcs "Jamaican Country Sign Language"
+- jct "Krymchak"
+- jda "Jad"
+- jdg "Jadgali"
+- jdt "Judeo-Tat"
+- jeb "Jebero"
+- jee "Jerung"
+- jeg "Jeng"
+- jeh "Jeh"
+- jei "Yei"
+- jek "Jeri Kuo"
+- jel "Yelmek"
+- jen "Dza"
+- jer "Jere"
+- jet "Manem"
+- jeu "Jonkor Bourmataguil"
+- jgb "Ngbee"
+- jge "Judeo-Georgian"
+- jgo "Ngomba"
+- jhi "Jehai"
+- jhs "Jhankot Sign Language"
+- jia "Jina"
+- jib "Jibu"
+- jic "Tol"
+- jid "Bu"
+- jie "Jilbe"
+- jig "Djingili"
+- jih "Shangzhai"
+- jii "Jiiddu"
+- jil "Jilim"
+- jim "Jimi (Cameroon)"
+- jio "Jiamao"
+- jiq "Guanyinqiao"
+- jit "Jita"
+- jiu "Youle Jinuo"
+- jiv "Shuar"
+- jiy "Buyuan Jinuo"
+- jko "Kubo"
+- jku "Labir"
+- jle "Ngile"
+- jls "Jamaican Sign Language"
+- jma "Dima"
+- jmb "Zumbun"
+- jmc "Machame"
+- jmd "Yamdena"
+- jmi "Jimi (Nigeria)"
+- jml "Jumli"
+- jmn "Makuri Naga"
+- jmr "Kamara"
+- jms "Mashi (Nigeria)"
+- jmx "Western Juxtlahuaca Mixtec"
+- jna "Jangshung"
+- jnd "Jandavra"
+- jng "Yangman"
+- jni "Janji"
+- jnj "Yemsa"
+- jnl "Rawat"
+- jns "Jaunsari"
+- job "Joba"
+- jod "Wojenaka"
+- jor "Jorá"
+- jos "Jordanian Sign Language"
+- jow "Jowulu"
+- jpa "Jewish Palestinian Aramaic"
+ja jpn "Japanese"
+- jpr "Judeo-Persian"
+- jqr "Jaqaru"
+- jra "Jarai"
+- jrb "Judeo-Arabic"
+- jrr "Jiru"
+- jrt "Jorto"
+- jru "Japrería"
+- jsl "Japanese Sign Language"
+- jua "Júma"
+- jub "Wannu"
+- juc "Jurchen"
+- jud "Worodougou"
+- juh "Hõne"
+- juk "Wapan"
+- jul "Jirel"
+- jum "Jumjum"
+- jun "Juang"
+- juo "Jiba"
+- jup "Hupdë"
+- jur "Jurúna"
+- jus "Jumla Sign Language"
+- jut "Jutish"
+- juu "Ju"
+- juw "Wãpha"
+- juy "Juray"
+- jvd "Javindo"
+- jvn "Caribbean Javanese"
+- jwi "Jwira-Pepesa"
+- jya "Jiarong"
+- jye "Judeo-Yemeni Arabic"
+- jyy "Jaya"
+- kaa "Kara-Kalpak"
+- kab "Kabyle"
+- kac "Kachin"
+- kad "Kadara"
+- kae "Ketangalan"
+- kaf "Katso"
+- kag "Kajaman"
+- kah "Kara (Central African Republic)"
+- kai "Karekare"
+- kaj "Jju"
+- kak "Kayapa Kallahan"
+kl kal "Kalaallisut"
+- kam "Kamba (Kenya)"
+kn kan "Kannada"
+- kao "Xaasongaxango"
+- kap "Bezhta"
+- kaq "Capanahua"
+ks kas "Kashmiri"
+ka kat "Georgian"
+kr kau "Kanuri"
+- kav "Katukína"
+- kaw "Kawi"
+- kax "Kao"
+- kay "Kamayurá"
+kk kaz "Kazakh"
+- kba "Kalarko"
+- kbb "Kaxuiâna"
+- kbc "Kadiwéu"
+- kbd "Kabardian"
+- kbe "Kanju"
+- kbf "Kakauhua"
+- kbg "Khamba"
+- kbh "Camsá"
+- kbi "Kaptiau"
+- kbj "Kari"
+- kbk "Grass Koiari"
+- kbl "Kanembu"
+- kbm "Iwal"
+- kbn "Kare (Central African Republic)"
+- kbo "Keliko"
+- kbp "Kabiyè"
+- kbq "Kamano"
+- kbr "Kafa"
+- kbs "Kande"
+- kbt "Abadi"
+- kbu "Kabutra"
+- kbv "Dera (Indonesia)"
+- kbw "Kaiep"
+- kbx "Ap Ma"
+- kby "Manga Kanuri"
+- kbz "Duhwa"
+- kca "Khanty"
+- kcb "Kawacha"
+- kcc "Lubila"
+- kcd "Ngkâlmpw Kanum"
+- kce "Kaivi"
+- kcf "Ukaan"
+- kcg "Tyap"
+- kch "Vono"
+- kci "Kamantan"
+- kcj "Kobiana"
+- kck "Kalanga"
+- kcl "Kela (Papua New Guinea)"
+- kcm "Gula (Central African Republic)"
+- kcn "Nubi"
+- kco "Kinalakna"
+- kcp "Kanga"
+- kcq "Kamo"
+- kcr "Katla"
+- kcs "Koenoem"
+- kct "Kaian"
+- kcu "Kami (Tanzania)"
+- kcv "Kete"
+- kcw "Kabwari"
+- kcx "Kachama-Ganjule"
+- kcy "Korandje"
+- kcz "Konongo"
+- kda "Worimi"
+- kdc "Kutu"
+- kdd "Yankunytjatjara"
+- kde "Makonde"
+- kdf "Mamusi"
+- kdg "Seba"
+- kdh "Tem"
+- kdi "Kumam"
+- kdj "Karamojong"
+- kdk "Numee"
+- kdl "Tsikimba"
+- kdm "Kagoma"
+- kdn "Kunda"
+- kdp "Kaningdon-Nindem"
+- kdq "Koch"
+- kdr "Karaim"
+- kdt "Kuy"
+- kdu "Kadaru"
+- kdv "Kado"
+- kdw "Koneraw"
+- kdx "Kam"
+- kdy "Keder"
+- kdz "Kwaja"
+- kea "Kabuverdianu"
+- keb "Kélé"
+- kec "Keiga"
+- ked "Kerewe"
+- kee "Eastern Keres"
+- kef "Kpessi"
+- keg "Tese"
+- keh "Keak"
+- kei "Kei"
+- kej "Kadar"
+- kek "Kekchí"
+- kel "Kela (Democratic Republic of Congo)"
+- kem "Kemak"
+- ken "Kenyang"
+- keo "Kakwa"
+- kep "Kaikadi"
+- keq "Kamar"
+- ker "Kera"
+- kes "Kugbo"
+- ket "Ket"
+- keu "Akebu"
+- kev "Kanikkaran"
+- kew "West Kewa"
+- kex "Kukna"
+- key "Kupia"
+- kez "Kukele"
+- kfa "Kodava"
+- kfb "Northwestern Kolami"
+- kfc "Konda-Dora"
+- kfd "Korra Koraga"
+- kfe "Kota (India)"
+- kff "Koya"
+- kfg "Kudiya"
+- kfh "Kurichiya"
+- kfi "Kannada Kurumba"
+- kfj "Kemiehua"
+- kfk "Kinnauri"
+- kfl "Kung"
+- kfm "Khunsari"
+- kfn "Kuk"
+- kfo "Koro (Côte d'Ivoire)"
+- kfp "Korwa"
+- kfq "Korku"
+- kfr "Kachchi"
+- kfs "Bilaspuri"
+- kft "Kanjari"
+- kfu "Katkari"
+- kfv "Kurmukar"
+- kfw "Kharam Naga"
+- kfx "Kullu Pahari"
+- kfy "Kumaoni"
+- kfz "Koromfé"
+- kga "Koyaga"
+- kgb "Kawe"
+- kgc "Kasseng"
+- kgd "Kataang"
+- kge "Komering"
+- kgf "Kube"
+- kgg "Kusunda"
+- kgh "Upper Tanudan Kalinga"
+- kgi "Selangor Sign Language"
+- kgj "Gamale Kham"
+- kgk "Kaiwá"
+- kgl "Kunggari"
+- kgm "Karipúna"
+- kgn "Karingani"
+- kgo "Krongo"
+- kgp "Kaingang"
+- kgq "Kamoro"
+- kgr "Abun"
+- kgs "Kumbainggar"
+- kgt "Somyev"
+- kgu "Kobol"
+- kgv "Karas"
+- kgw "Karon Dori"
+- kgx "Kamaru"
+- kgy "Kyerung"
+- kha "Khasi"
+- khb "Lü"
+- khc "Tukang Besi North"
+- khd "Bädi Kanum"
+- khe "Korowai"
+- khf "Khuen"
+- khg "Khams Tibetan"
+- khh "Kehu"
+- khj "Kuturmi"
+- khk "Halh Mongolian"
+- khl "Lusi"
+km khm "Central Khmer"
+- khn "Khandesi"
+- kho "Khotanese"
+- khp "Kapori"
+- khq "Koyra Chiini Songhay"
+- khr "Kharia"
+- khs "Kasua"
+- kht "Khamti"
+- khu "Nkhumbi"
+- khv "Khvarshi"
+- khw "Khowar"
+- khx "Kanu"
+- khy "Kele (Democratic Republic of Congo)"
+- khz "Keapara"
+- kia "Kim"
+- kib "Koalib"
+- kic "Kickapoo"
+- kid "Koshin"
+- kie "Kibet"
+- kif "Eastern Parbate Kham"
+- kig "Kimaama"
+- kih "Kilmeri"
+- kii "Kitsai"
+- kij "Kilivila"
+ki kik "Kikuyu"
+- kil "Kariya"
+- kim "Karagas"
+rw kin "Kinyarwanda"
+- kio "Kiowa"
+- kip "Sheshi Kham"
+- kiq "Kosadle"
+ky kir "Kirghiz"
+- kis "Kis"
+- kit "Agob"
+- kiu "Kirmanjki (individual language)"
+- kiv "Kimbu"
+- kiw "Northeast Kiwai"
+- kix "Khiamniungan Naga"
+- kiy "Kirikiri"
+- kiz "Kisi"
+- kja "Mlap"
+- kjb "Q'anjob'al"
+- kjc "Coastal Konjo"
+- kjd "Southern Kiwai"
+- kje "Kisar"
+- kjf "Khalaj"
+- kjg "Khmu"
+- kjh "Khakas"
+- kji "Zabana"
+- kjj "Khinalugh"
+- kjk "Highland Konjo"
+- kjl "Western Parbate Kham"
+- kjm "Kháng"
+- kjn "Kunjen"
+- kjo "Harijan Kinnauri"
+- kjp "Pwo Eastern Karen"
+- kjq "Western Keres"
+- kjr "Kurudu"
+- kjs "East Kewa"
+- kjt "Phrae Pwo Karen"
+- kju "Kashaya"
+- kjx "Ramopa"
+- kjy "Erave"
+- kjz "Bumthangkha"
+- kka "Kakanda"
+- kkb "Kwerisa"
+- kkc "Odoodee"
+- kkd "Kinuku"
+- kke "Kakabe"
+- kkf "Kalaktang Monpa"
+- kkg "Mabaka Valley Kalinga"
+- kkh "Khün"
+- kki "Kagulu"
+- kkj "Kako"
+- kkk "Kokota"
+- kkl "Kosarek Yale"
+- kkm "Kiong"
+- kkn "Kon Keu"
+- kko "Karko"
+- kkp "Gugubera"
+- kkq "Kaiku"
+- kkr "Kir-Balar"
+- kks "Giiwo"
+- kkt "Koi"
+- kku "Tumi"
+- kkv "Kangean"
+- kkw "Teke-Kukuya"
+- kkx "Kohin"
+- kky "Guguyimidjir"
+- kkz "Kaska"
+- kla "Klamath-Modoc"
+- klb "Kiliwa"
+- klc "Kolbila"
+- kld "Gamilaraay"
+- kle "Kulung (Nepal)"
+- klf "Kendeje"
+- klg "Tagakaulo"
+- klh "Weliki"
+- kli "Kalumpang"
+- klj "Turkic Khalaj"
+- klk "Kono (Nigeria)"
+- kll "Kagan Kalagan"
+- klm "Migum"
+- kln "Kalenjin"
+- klo "Kapya"
+- klp "Kamasa"
+- klq "Rumu"
+- klr "Khaling"
+- kls "Kalasha"
+- klt "Nukna"
+- klu "Klao"
+- klv "Maskelynes"
+- klw "Lindu"
+- klx "Koluwawa"
+- kly "Kalao"
+- klz "Kabola"
+- kma "Konni"
+- kmb "Kimbundu"
+- kmc "Southern Dong"
+- kmd "Majukayang Kalinga"
+- kme "Bakole"
+- kmf "Kare (Papua New Guinea)"
+- kmg "Kâte"
+- kmh "Kalam"
+- kmi "Kami (Nigeria)"
+- kmj "Kumarbhag Paharia"
+- kmk "Limos Kalinga"
+- kml "Lower Tanudan Kalinga"
+- kmm "Kom (India)"
+- kmn "Awtuw"
+- kmo "Kwoma"
+- kmp "Gimme"
+- kmq "Kwama"
+- kmr "Northern Kurdish"
+- kms "Kamasau"
+- kmt "Kemtuik"
+- kmu "Kanite"
+- kmv "Karipúna Creole French"
+- kmw "Komo (Democratic Republic of Congo)"
+- kmx "Waboda"
+- kmy "Koma"
+- kmz "Khorasani Turkish"
+- kna "Dera (Nigeria)"
+- knb "Lubuagan Kalinga"
+- knc "Central Kanuri"
+- knd "Konda"
+- kne "Kankanaey"
+- knf "Mankanya"
+- kng "Koongo"
+- kni "Kanufi"
+- knj "Western Kanjobal"
+- knk "Kuranko"
+- knl "Keninjal"
+- knm "Kanamarí"
+- knn "Konkani (individual language)"
+- kno "Kono (Sierra Leone)"
+- knp "Kwanja"
+- knq "Kintaq"
+- knr "Kaningra"
+- kns "Kensiu"
+- knt "Panoan Katukína"
+- knu "Kono (Guinea)"
+- knv "Tabo"
+- knw "Kung-Ekoka"
+- knx "Kendayan"
+- kny "Kanyok"
+- knz "Kalamsé"
+- koa "Konomala"
+- koc "Kpati"
+- kod "Kodi"
+- koe "Kacipo-Balesi"
+- kof "Kubi"
+- kog "Cogui"
+- koh "Koyo"
+- koi "Komi-Permyak"
+- koj "Sara Dunjo"
+- kok "Konkani (macrolanguage)"
+- kol "Kol (Papua New Guinea)"
+kv kom "Komi"
+kg kon "Kongo"
+- koo "Konzo"
+- kop "Kwato"
+- koq "Kota (Gabon)"
+ko kor "Korean"
+- kos "Kosraean"
+- kot "Lagwan"
+- kou "Koke"
+- kov "Kudu-Camo"
+- kow "Kugama"
+- kox "Coxima"
+- koy "Koyukon"
+- koz "Korak"
+- kpa "Kutto"
+- kpb "Mullu Kurumba"
+- kpc "Curripaco"
+- kpd "Koba"
+- kpe "Kpelle"
+- kpf "Komba"
+- kpg "Kapingamarangi"
+- kph "Kplang"
+- kpi "Kofei"
+- kpj "Karajá"
+- kpk "Kpan"
+- kpl "Kpala"
+- kpm "Koho"
+- kpn "Kepkiriwát"
+- kpo "Ikposo"
+- kpp "Paku Karen"
+- kpq "Korupun-Sela"
+- kpr "Korafe-Yegha"
+- kps "Tehit"
+- kpt "Karata"
+- kpu "Kafoa"
+- kpv "Komi-Zyrian"
+- kpw "Kobon"
+- kpx "Mountain Koiali"
+- kpy "Koryak"
+- kpz "Kupsabiny"
+- kqa "Mum"
+- kqb "Kovai"
+- kqc "Doromu-Koki"
+- kqd "Koy Sanjaq Surat"
+- kqe "Kalagan"
+- kqf "Kakabai"
+- kqg "Khe"
+- kqh "Kisankasa"
+- kqi "Koitabu"
+- kqj "Koromira"
+- kqk "Kotafon Gbe"
+- kql "Kyenele"
+- kqm "Khisa"
+- kqn "Kaonde"
+- kqo "Eastern Krahn"
+- kqp "Kimré"
+- kqq "Krenak"
+- kqr "Kimaragang"
+- kqs "Northern Kissi"
+- kqt "Klias River Kadazan"
+- kqu "Seroa"
+- kqv "Okolod"
+- kqw "Kandas"
+- kqx "Mser"
+- kqy "Koorete"
+- kqz "Korana"
+- kra "Kumhali"
+- krb "Karkin"
+- krc "Karachay-Balkar"
+- krd "Kairui-Midiki"
+- kre "Panará"
+- krf "Koro (Vanuatu)"
+- krh "Kurama"
+- kri "Krio"
+- krj "Kinaray-A"
+- krk "Kerek"
+- krl "Karelian"
+- krm "Krim"
+- krn "Sapo"
+- krp "Korop"
+- krr "Kru'ng 2"
+- krs "Gbaya (Sudan)"
+- krt "Tumari Kanuri"
+- kru "Kurukh"
+- krv "Kavet"
+- krw "Western Krahn"
+- krx "Karon"
+- kry "Kryts"
+- krz "Sota Kanum"
+- ksa "Shuwa-Zamani"
+- ksb "Shambala"
+- ksc "Southern Kalinga"
+- ksd "Kuanua"
+- kse "Kuni"
+- ksf "Bafia"
+- ksg "Kusaghe"
+- ksh "Kölsch"
+- ksi "Krisa"
+- ksj "Uare"
+- ksk "Kansa"
+- ksl "Kumalu"
+- ksm "Kumba"
+- ksn "Kasiguranin"
+- kso "Kofa"
+- ksp "Kaba"
+- ksq "Kwaami"
+- ksr "Borong"
+- kss "Southern Kisi"
+- kst "Winyé"
+- ksu "Khamyang"
+- ksv "Kusu"
+- ksw "S'gaw Karen"
+- ksx "Kedang"
+- ksy "Kharia Thar"
+- ksz "Kodaku"
+- kta "Katua"
+- ktb "Kambaata"
+- ktc "Kholok"
+- ktd "Kokata"
+- kte "Nubri"
+- ktf "Kwami"
+- ktg "Kalkutung"
+- kth "Karanga"
+- kti "North Muyu"
+- ktj "Plapo Krumen"
+- ktk "Kaniet"
+- ktl "Koroshi"
+- ktm "Kurti"
+- ktn "Karitiâna"
+- kto "Kuot"
+- ktp "Kaduo"
+- ktq "Katabaga"
+- ktr "Kota Marudu Tinagas"
+- kts "South Muyu"
+- ktt "Ketum"
+- ktu "Kituba (Democratic Republic of Congo)"
+- ktv "Eastern Katu"
+- ktw "Kato"
+- ktx "Kaxararí"
+- kty "Kango (Bas-Uélé District)"
+- ktz "Ju/'hoan"
+kj kua "Kuanyama"
+- kub "Kutep"
+- kuc "Kwinsu"
+- kud "'Auhelawa"
+- kue "Kuman"
+- kuf "Western Katu"
+- kug "Kupa"
+- kuh "Kushi"
+- kui "Kuikúro-Kalapálo"
+- kuj "Kuria"
+- kuk "Kepo'"
+- kul "Kulere"
+- kum "Kumyk"
+- kun "Kunama"
+- kuo "Kumukio"
+- kup "Kunimaipa"
+- kuq "Karipuna"
+ku kur "Kurdish"
+- kus "Kusaal"
+- kut "Kutenai"
+- kuu "Upper Kuskokwim"
+- kuv "Kur"
+- kuw "Kpagua"
+- kux "Kukatja"
+- kuy "Kuuku-Ya'u"
+- kuz "Kunza"
+- kva "Bagvalal"
+- kvb "Kubu"
+- kvc "Kove"
+- kvd "Kui (Indonesia)"
+- kve "Kalabakan"
+- kvf "Kabalai"
+- kvg "Kuni-Boazi"
+- kvh "Komodo"
+- kvi "Kwang"
+- kvj "Psikye"
+- kvk "Korean Sign Language"
+- kvl "Brek Karen"
+- kvm "Kendem"
+- kvn "Border Kuna"
+- kvo "Dobel"
+- kvp "Kompane"
+- kvq "Geba Karen"
+- kvr "Kerinci"
+- kvs "Kunggara"
+- kvt "Lahta Karen"
+- kvu "Yinbaw Karen"
+- kvv "Kola"
+- kvw "Wersing"
+- kvx "Parkari Koli"
+- kvy "Yintale Karen"
+- kvz "Tsakwambo"
+- kwa "Dâw"
+- kwb "Kwa"
+- kwc "Likwala"
+- kwd "Kwaio"
+- kwe "Kwerba"
+- kwf "Kwara'ae"
+- kwg "Sara Kaba Deme"
+- kwh "Kowiai"
+- kwi "Awa-Cuaiquer"
+- kwj "Kwanga"
+- kwk "Kwakiutl"
+- kwl "Kofyar"
+- kwm "Kwambi"
+- kwn "Kwangali"
+- kwo "Kwomtari"
+- kwp "Kodia"
+- kwq "Kwak"
+- kwr "Kwer"
+- kws "Kwese"
+- kwt "Kwesten"
+- kwu "Kwakum"
+- kwv "Sara Kaba Náà"
+- kww "Kwinti"
+- kwx "Khirwar"
+- kwy "San Salvador Kongo"
+- kwz "Kwadi"
+- kxa "Kairiru"
+- kxb "Krobu"
+- kxc "Konso"
+- kxd "Brunei"
+- kxe "Kakihum"
+- kxf "Manumanaw Karen"
+- kxh "Karo (Ethiopia)"
+- kxi "Keningau Murut"
+- kxj "Kulfa"
+- kxk "Zayein Karen"
+- kxl "Nepali Kurux"
+- kxm "Northern Khmer"
+- kxn "Kanowit-Tanjong Melanau"
+- kxo "Kanoé"
+- kxp "Wadiyara Koli"
+- kxq "Smärky Kanum"
+- kxr "Koro (Papua New Guinea)"
+- kxs "Kangjia"
+- kxt "Koiwat"
+- kxu "Kui (India)"
+- kxv "Kuvi"
+- kxw "Konai"
+- kxx "Likuba"
+- kxy "Kayong"
+- kxz "Kerewo"
+- kya "Kwaya"
+- kyb "Butbut Kalinga"
+- kyc "Kyaka"
+- kyd "Karey"
+- kye "Krache"
+- kyf "Kouya"
+- kyg "Keyagana"
+- kyh "Karok"
+- kyi "Kiput"
+- kyj "Karao"
+- kyk "Kamayo"
+- kyl "Kalapuya"
+- kym "Kpatili"
+- kyn "Northern Binukidnon"
+- kyo "Kelon"
+- kyp "Kang"
+- kyq "Kenga"
+- kyr "Kuruáya"
+- kys "Baram Kayan"
+- kyt "Kayagar"
+- kyu "Western Kayah"
+- kyv "Kayort"
+- kyw "Kudmali"
+- kyx "Rapoisi"
+- kyy "Kambaira"
+- kyz "Kayabí"
+- kza "Western Karaboro"
+- kzb "Kaibobo"
+- kzc "Bondoukou Kulango"
+- kzd "Kadai"
+- kze "Kosena"
+- kzf "Da'a Kaili"
+- kzg "Kikai"
+- kzh "Kenuzi-Dongola"
+- kzi "Kelabit"
+- kzj "Coastal Kadazan"
+- kzk "Kazukuru"
+- kzl "Kayeli"
+- kzm "Kais"
+- kzn "Kokola"
+- kzo "Kaningi"
+- kzp "Kaidipang"
+- kzq "Kaike"
+- kzr "Karang"
+- kzs "Sugut Dusun"
+- kzt "Tambunan Dusun"
+- kzu "Kayupulau"
+- kzv "Komyandaret"
+- kzw "Karirí-Xocó"
+- kzx "Kamarian"
+- kzy "Kango (Tshopo District)"
+- kzz "Kalabra"
+- laa "Southern Subanen"
+- lab "Linear A"
+- lac "Lacandon"
+- lad "Ladino"
+- lae "Pattani"
+- laf "Lafofa"
+- lag "Langi"
+- lah "Lahnda"
+- lai "Lambya"
+- laj "Lango (Uganda)"
+- lak "Laka (Nigeria)"
+- lal "Lalia"
+- lam "Lamba"
+- lan "Laru"
+lo lao "Lao"
+- lap "Laka (Chad)"
+- laq "Qabiao"
+- lar "Larteh"
+- las "Lama (Togo)"
+la lat "Latin"
+- lau "Laba"
+lv lav "Latvian"
+- law "Lauje"
+- lax "Tiwa"
+- lay "Lama (Myanmar)"
+- laz "Aribwatsa"
+- lba "Lui"
+- lbb "Label"
+- lbc "Lakkia"
+- lbe "Lak"
+- lbf "Tinani"
+- lbg "Laopang"
+- lbi "La'bi"
+- lbj "Ladakhi"
+- lbk "Central Bontok"
+- lbl "Libon Bikol"
+- lbm "Lodhi"
+- lbn "Lamet"
+- lbo "Laven"
+- lbq "Wampar"
+- lbr "Northern Lorung"
+- lbs "Libyan Sign Language"
+- lbt "Lachi"
+- lbu "Labu"
+- lbv "Lavatbura-Lamusong"
+- lbw "Tolaki"
+- lbx "Lawangan"
+- lby "Lamu-Lamu"
+- lbz "Lardil"
+- lcc "Legenyem"
+- lcd "Lola"
+- lce "Loncong"
+- lcf "Lubu"
+- lch "Luchazi"
+- lcl "Lisela"
+- lcm "Tungag"
+- lcp "Western Lawa"
+- lcq "Luhu"
+- lcs "Lisabata-Nuniali"
+- ldb "Idun"
+- ldd "Luri"
+- ldg "Lenyima"
+- ldh "Lamja-Dengsa-Tola"
+- ldi "Laari"
+- ldj "Lemoro"
+- ldk "Leelau"
+- ldl "Kaan"
+- ldm "Landoma"
+- ldn "Láadan"
+- ldo "Loo"
+- ldp "Tso"
+- ldq "Lufu"
+- lea "Lega-Shabunda"
+- leb "Lala-Bisa"
+- lec "Leco"
+- led "Lendu"
+- lee "Lyélé"
+- lef "Lelemi"
+- leg "Lengua"
+- leh "Lenje"
+- lei "Lemio"
+- lej "Lengola"
+- lek "Leipon"
+- lel "Lele (Democratic Republic of Congo)"
+- lem "Nomaande"
+- len "Lenca"
+- leo "Leti (Cameroon)"
+- lep "Lepcha"
+- leq "Lembena"
+- ler "Lenkau"
+- les "Lese"
+- let "Lesing-Gelimi"
+- leu "Kara (Papua New Guinea)"
+- lev "Lamma"
+- lew "Ledo Kaili"
+- lex "Luang"
+- ley "Lemolang"
+- lez "Lezghian"
+- lfa "Lefa"
+- lfn "Lingua Franca Nova"
+- lga "Lungga"
+- lgb "Laghu"
+- lgg "Lugbara"
+- lgh "Laghuu"
+- lgi "Lengilu"
+- lgk "Lingarak"
+- lgl "Wala"
+- lgm "Lega-Mwenga"
+- lgn "Opuuo"
+- lgq "Logba"
+- lgr "Lengo"
+- lgt "Pahi"
+- lgu "Longgu"
+- lgz "Ligenza"
+- lha "Laha (Viet Nam)"
+- lhh "Laha (Indonesia)"
+- lhi "Lahu Shi"
+- lhl "Lahul Lohar"
+- lhm "Lhomi"
+- lhn "Lahanan"
+- lhp "Lhokpu"
+- lhs "Mlahsö"
+- lht "Lo-Toga"
+- lhu "Lahu"
+- lia "West-Central Limba"
+- lib "Likum"
+- lic "Hlai"
+- lid "Nyindrou"
+- lie "Likila"
+- lif "Limbu"
+- lig "Ligbi"
+- lih "Lihir"
+- lii "Lingkhim"
+- lij "Ligurian"
+- lik "Lika"
+- lil "Lillooet"
+li lim "Limburgan"
+ln lin "Lingala"
+- lio "Liki"
+- lip "Sekpele"
+- liq "Libido"
+- lir "Liberian English"
+- lis "Lisu"
+lt lit "Lithuanian"
+- liu "Logorik"
+- liv "Liv"
+- liw "Col"
+- lix "Liabuku"
+- liy "Banda-Bambari"
+- liz "Libinza"
+- lje "Rampi"
+- lji "Laiyolo"
+- ljl "Li'o"
+- ljp "Lampung Api"
+- lka "Lakalei"
+- lkb "Kabras"
+- lkc "Kucong"
+- lkd "Lakondê"
+- lke "Kenyi"
+- lkh "Lakha"
+- lki "Laki"
+- lkj "Remun"
+- lkl "Laeko-Libuat"
+- lkn "Lakon"
+- lko "Khayo"
+- lkr "Päri"
+- lks "Kisa"
+- lkt "Lakota"
+- lky "Lokoya"
+- lla "Lala-Roba"
+- llb "Lolo"
+- llc "Lele (Guinea)"
+- lld "Ladin"
+- lle "Lele (Papua New Guinea)"
+- llf "Hermit"
+- llg "Lole"
+- llh "Lamu"
+- lli "Teke-Laali"
+- llk "Lelak"
+- lll "Lilau"
+- llm "Lasalimu"
+- lln "Lele (Chad)"
+- llo "Khlor"
+- llp "North Efate"
+- llq "Lolak"
+- lls "Lithuanian Sign Language"
+- llu "Lau"
+- llx "Lauan"
+- lma "East Limba"
+- lmb "Merei"
+- lmc "Limilngan"
+- lmd "Lumun"
+- lme "Pévé"
+- lmf "South Lembata"
+- lmg "Lamogai"
+- lmh "Lambichhong"
+- lmi "Lombi"
+- lmj "West Lembata"
+- lmk "Lamkang"
+- lml "Hano"
+- lmm "Lamam"
+- lmn "Lambadi"
+- lmo "Lombard"
+- lmp "Limbum"
+- lmq "Lamatuka"
+- lmr "Lamalera"
+- lmu "Lamenu"
+- lmv "Lomaiviti"
+- lmw "Lake Miwok"
+- lmx "Laimbue"
+- lmy "Lamboya"
+- lmz "Lumbee"
+- lna "Langbashe"
+- lnb "Mbalanhu"
+- lnd "Lundayeh"
+- lng "Langobardic"
+- lnh "Lanoh"
+- lni "Daantanai'"
+- lnj "Leningitij"
+- lnl "South Central Banda"
+- lnm "Langam"
+- lnn "Lorediakarkar"
+- lno "Lango (Sudan)"
+- lns "Lamnso'"
+- lnu "Longuda"
+- lnz "Lonzo"
+- loa "Loloda"
+- lob "Lobi"
+- loc "Inonhan"
+- loe "Saluan"
+- lof "Logol"
+- log "Logo"
+- loh "Narim"
+- loi "Loma (Côte d'Ivoire)"
+- loj "Lou"
+- lok "Loko"
+- lol "Mongo"
+- lom "Loma (Liberia)"
+- lon "Malawi Lomwe"
+- loo "Lombo"
+- lop "Lopa"
+- loq "Lobala"
+- lor "Téén"
+- los "Loniu"
+- lot "Otuho"
+- lou "Louisiana Creole French"
+- lov "Lopi"
+- low "Tampias Lobu"
+- lox "Loun"
+- loy "Lowa"
+- loz "Lozi"
+- lpa "Lelepa"
+- lpe "Lepki"
+- lpn "Long Phuri Naga"
+- lpo "Lipo"
+- lpx "Lopit"
+- lra "Rara Bakati'"
+- lrc "Northern Luri"
+- lre "Laurentian"
+- lrg "Laragia"
+- lri "Marachi"
+- lrk "Loarki"
+- lrl "Lari"
+- lrm "Marama"
+- lrn "Lorang"
+- lro "Laro"
+- lrr "Southern Lorung"
+- lrt "Larantuka Malay"
+- lrv "Larevat"
+- lrz "Lemerig"
+- lsa "Lasgerdi"
+- lsd "Lishana Deni"
+- lse "Lusengo"
+- lsg "Lyons Sign Language"
+- lsh "Lish"
+- lsi "Lashi"
+- lsl "Latvian Sign Language"
+- lsm "Saamia"
+- lso "Laos Sign Language"
+- lsp "Panamanian Sign Language"
+- lsr "Aruop"
+- lss "Lasi"
+- lst "Trinidad and Tobago Sign Language"
+- lsy "Mauritian Sign Language"
+- ltc "Late Middle Chinese"
+- ltg "Latgalian"
+- lti "Leti (Indonesia)"
+- ltn "Latundê"
+- lto "Tsotso"
+- lts "Tachoni"
+- ltu "Latu"
+lb ltz "Luxembourgish"
+- lua "Luba-Lulua"
+lu lub "Luba-Katanga"
+- luc "Aringa"
+- lud "Ludian"
+- lue "Luvale"
+- luf "Laua"
+lg lug "Ganda"
+- lui "Luiseno"
+- luj "Luna"
+- luk "Lunanakha"
+- lul "Olu'bo"
+- lum "Luimbi"
+- lun "Lunda"
+- luo "Luo (Kenya and Tanzania)"
+- lup "Lumbu"
+- luq "Lucumi"
+- lur "Laura"
+- lus "Lushai"
+- lut "Lushootseed"
+- luu "Lumba-Yakkha"
+- luv "Luwati"
+- luw "Luo (Cameroon)"
+- luy "Luyia"
+- luz "Southern Luri"
+- lva "Maku'a"
+- lvk "Lavukaleve"
+- lvs "Standard Latvian"
+- lvu "Levuka"
+- lwa "Lwalu"
+- lwe "Lewo Eleng"
+- lwg "Wanga"
+- lwh "White Lachi"
+- lwl "Eastern Lawa"
+- lwm "Laomian"
+- lwo "Luwo"
+- lwt "Lewotobi"
+- lww "Lewo"
+- lya "Layakha"
+- lyg "Lyngngam"
+- lyn "Luyana"
+- lzh "Literary Chinese"
+- lzl "Litzlitz"
+- lzn "Leinong Naga"
+- lzz "Laz"
+- maa "San Jerónimo Tecóatl Mazatec"
+- mab "Yutanduchi Mixtec"
+- mad "Madurese"
+- mae "Bo-Rukul"
+- maf "Mafa"
+- mag "Magahi"
+mh mah "Marshallese"
+- mai "Maithili"
+- maj "Jalapa De Díaz Mazatec"
+- mak "Makasar"
+ml mal "Malayalam"
+- mam "Mam"
+- man "Mandingo"
+- maq "Chiquihuitlán Mazatec"
+mr mar "Marathi"
+- mas "Masai"
+- mat "San Francisco Matlatzinca"
+- mau "Huautla Mazatec"
+- mav "Sateré-Mawé"
+- maw "Mampruli"
+- max "North Moluccan Malay"
+- maz "Central Mazahua"
+- mba "Higaonon"
+- mbb "Western Bukidnon Manobo"
+- mbc "Macushi"
+- mbd "Dibabawon Manobo"
+- mbe "Molale"
+- mbf "Baba Malay"
+- mbh "Mangseng"
+- mbi "Ilianen Manobo"
+- mbj "Nadëb"
+- mbk "Malol"
+- mbl "Maxakalí"
+- mbm "Ombamba"
+- mbn "Macaguán"
+- mbo "Mbo (Cameroon)"
+- mbp "Malayo"
+- mbq "Maisin"
+- mbr "Nukak Makú"
+- mbs "Sarangani Manobo"
+- mbt "Matigsalug Manobo"
+- mbu "Mbula-Bwazza"
+- mbv "Mbulungish"
+- mbw "Maring"
+- mbx "Mari (East Sepik Province)"
+- mby "Memoni"
+- mbz "Amoltepec Mixtec"
+- mca "Maca"
+- mcb "Machiguenga"
+- mcc "Bitur"
+- mcd "Sharanahua"
+- mce "Itundujia Mixtec"
+- mcf "Matsés"
+- mcg "Mapoyo"
+- mch "Maquiritari"
+- mci "Mese"
+- mcj "Mvanip"
+- mck "Mbunda"
+- mcl "Macaguaje"
+- mcm "Malaccan Creole Portuguese"
+- mcn "Masana"
+- mco "Coatlán Mixe"
+- mcp "Makaa"
+- mcq "Ese"
+- mcr "Menya"
+- mcs "Mambai"
+- mct "Mengisa"
+- mcu "Cameroon Mambila"
+- mcv "Minanibai"
+- mcw "Mawa (Chad)"
+- mcx "Mpiemo"
+- mcy "South Watut"
+- mcz "Mawan"
+- mda "Mada (Nigeria)"
+- mdb "Morigi"
+- mdc "Male (Papua New Guinea)"
+- mdd "Mbum"
+- mde "Maba (Chad)"
+- mdf "Moksha"
+- mdg "Massalat"
+- mdh "Maguindanaon"
+- mdi "Mamvu"
+- mdj "Mangbetu"
+- mdk "Mangbutu"
+- mdl "Maltese Sign Language"
+- mdm "Mayogo"
+- mdn "Mbati"
+- mdp "Mbala"
+- mdq "Mbole"
+- mdr "Mandar"
+- mds "Maria (Papua New Guinea)"
+- mdt "Mbere"
+- mdu "Mboko"
+- mdv "Santa Lucía Monteverde Mixtec"
+- mdw "Mbosi"
+- mdx "Dizin"
+- mdy "Male (Ethiopia)"
+- mdz "Suruí Do Pará"
+- mea "Menka"
+- meb "Ikobi-Mena"
+- mec "Mara"
+- med "Melpa"
+- mee "Mengen"
+- mef "Megam"
+- meg "Mea"
+- meh "Southwestern Tlaxiaco Mixtec"
+- mei "Midob"
+- mej "Meyah"
+- mek "Mekeo"
+- mel "Central Melanau"
+- mem "Mangala"
+- men "Mende (Sierra Leone)"
+- meo "Kedah Malay"
+- mep "Miriwung"
+- meq "Merey"
+- mer "Meru"
+- mes "Masmaje"
+- met "Mato"
+- meu "Motu"
+- mev "Mann"
+- mew "Maaka"
+- mey "Hassaniyya"
+- mez "Menominee"
+- mfa "Pattani Malay"
+- mfb "Bangka"
+- mfc "Mba"
+- mfd "Mendankwe-Nkwen"
+- mfe "Morisyen"
+- mff "Naki"
+- mfg "Mixifore"
+- mfh "Matal"
+- mfi "Wandala"
+- mfj "Mefele"
+- mfk "North Mofu"
+- mfl "Putai"
+- mfm "Marghi South"
+- mfn "Cross River Mbembe"
+- mfo "Mbe"
+- mfp "Makassar Malay"
+- mfq "Moba"
+- mfr "Marithiel"
+- mfs "Mexican Sign Language"
+- mft "Mokerang"
+- mfu "Mbwela"
+- mfv "Mandjak"
+- mfw "Mulaha"
+- mfx "Melo"
+- mfy "Mayo"
+- mfz "Mabaan"
+- mga "Middle Irish (900-1200)"
+- mgb "Mararit"
+- mgc "Morokodo"
+- mgd "Moru"
+- mge "Mango"
+- mgf "Maklew"
+- mgg "Mpongmpong"
+- mgh "Makhuwa-Meetto"
+- mgi "Lijili"
+- mgj "Abureni"
+- mgk "Mawes"
+- mgl "Maleu-Kilenge"
+- mgm "Mambae"
+- mgn "Mbangi"
+- mgo "Meta'"
+- mgp "Eastern Magar"
+- mgq "Malila"
+- mgr "Mambwe-Lungu"
+- mgs "Manda (Tanzania)"
+- mgt "Mongol"
+- mgu "Mailu"
+- mgv "Matengo"
+- mgw "Matumbi"
+- mgx "Omati"
+- mgy "Mbunga"
+- mgz "Mbugwe"
+- mha "Manda (India)"
+- mhb "Mahongwe"
+- mhc "Mocho"
+- mhd "Mbugu"
+- mhe "Besisi"
+- mhf "Mamaa"
+- mhg "Margu"
+- mhh "Maskoy Pidgin"
+- mhi "Ma'di"
+- mhj "Mogholi"
+- mhk "Mungaka"
+- mhl "Mauwake"
+- mhm "Makhuwa-Moniga"
+- mhn "Mócheno"
+- mho "Mashi (Zambia)"
+- mhp "Balinese Malay"
+- mhq "Mandan"
+- mhr "Eastern Mari"
+- mhs "Buru (Indonesia)"
+- mht "Mandahuaca"
+- mhu "Digaro-Mishmi"
+- mhw "Mbukushu"
+- mhx "Maru"
+- mhy "Ma'anyan"
+- mhz "Mor (Mor Islands)"
+- mia "Miami"
+- mib "Atatláhuca Mixtec"
+- mic "Mi'kmaq"
+- mid "Mandaic"
+- mie "Ocotepec Mixtec"
+- mif "Mofu-Gudur"
+- mig "San Miguel El Grande Mixtec"
+- mih "Chayuco Mixtec"
+- mii "Chigmecatitlán Mixtec"
+- mij "Abar"
+- mik "Mikasuki"
+- mil "Peñoles Mixtec"
+- mim "Alacatlatzala Mixtec"
+- min "Minangkabau"
+- mio "Pinotepa Nacional Mixtec"
+- mip "Apasco-Apoala Mixtec"
+- miq "Mískito"
+- mir "Isthmus Mixe"
+- mis "Uncoded languages"
+- mit "Southern Puebla Mixtec"
+- miu "Cacaloxtepec Mixtec"
+- miw "Akoye"
+- mix "Mixtepec Mixtec"
+- miy "Ayutla Mixtec"
+- miz "Coatzospan Mixtec"
+- mja "Mahei"
+- mjc "San Juan Colorado Mixtec"
+- mjd "Northwest Maidu"
+- mje "Muskum"
+- mjg "Tu"
+- mjh "Mwera (Nyasa)"
+- mji "Kim Mun"
+- mjj "Mawak"
+- mjk "Matukar"
+- mjl "Mandeali"
+- mjm "Medebur"
+- mjn "Ma (Papua New Guinea)"
+- mjo "Malankuravan"
+- mjp "Malapandaram"
+- mjq "Malaryan"
+- mjr "Malavedan"
+- mjs "Miship"
+- mjt "Sauria Paharia"
+- mju "Manna-Dora"
+- mjv "Mannan"
+- mjw "Karbi"
+- mjx "Mahali"
+- mjy "Mahican"
+- mjz "Majhi"
+- mka "Mbre"
+- mkb "Mal Paharia"
+- mkc "Siliput"
+mk mkd "Macedonian"
+- mke "Mawchi"
+- mkf "Miya"
+- mkg "Mak (China)"
+- mki "Dhatki"
+- mkj "Mokilese"
+- mkk "Byep"
+- mkl "Mokole"
+- mkm "Moklen"
+- mkn "Kupang Malay"
+- mko "Mingang Doso"
+- mkp "Moikodi"
+- mkq "Bay Miwok"
+- mkr "Malas"
+- mks "Silacayoapan Mixtec"
+- mkt "Vamale"
+- mku "Konyanka Maninka"
+- mkv "Mafea"
+- mkw "Kituba (Congo)"
+- mkx "Kinamiging Manobo"
+- mky "East Makian"
+- mkz "Makasae"
+- mla "Malo"
+- mlb "Mbule"
+- mlc "Cao Lan"
+- mld "Malakhel"
+- mle "Manambu"
+- mlf "Mal"
+mg mlg "Malagasy"
+- mlh "Mape"
+- mli "Malimpung"
+- mlj "Miltu"
+- mlk "Ilwana"
+- mll "Malua Bay"
+- mlm "Mulam"
+- mln "Malango"
+- mlo "Mlomp"
+- mlp "Bargam"
+- mlq "Western Maninkakan"
+- mlr "Vame"
+- mls "Masalit"
+mt mlt "Maltese"
+- mlu "To'abaita"
+- mlv "Motlav"
+- mlw "Moloko"
+- mlx "Malfaxal"
+- mlz "Malaynon"
+- mma "Mama"
+- mmb "Momina"
+- mmc "Michoacán Mazahua"
+- mmd "Maonan"
+- mme "Mae"
+- mmf "Mundat"
+- mmg "North Ambrym"
+- mmh "Mehináku"
+- mmi "Musar"
+- mmj "Majhwar"
+- mmk "Mukha-Dora"
+- mml "Man Met"
+- mmm "Maii"
+- mmn "Mamanwa"
+- mmo "Mangga Buang"
+- mmp "Siawi"
+- mmq "Musak"
+- mmr "Western Xiangxi Miao"
+- mmt "Malalamai"
+- mmu "Mmaala"
+- mmv "Miriti"
+- mmw "Emae"
+- mmx "Madak"
+- mmy "Migaama"
+- mmz "Mabaale"
+- mna "Mbula"
+- mnb "Muna"
+- mnc "Manchu"
+- mnd "Mondé"
+- mne "Naba"
+- mnf "Mundani"
+- mng "Eastern Mnong"
+- mnh "Mono (Democratic Republic of Congo)"
+- mni "Manipuri"
+- mnj "Munji"
+- mnk "Mandinka"
+- mnl "Tiale"
+- mnm "Mapena"
+- mnn "Southern Mnong"
+- mnp "Min Bei Chinese"
+- mnq "Minriq"
+- mnr "Mono (USA)"
+- mns "Mansi"
+- mnt "Maykulan"
+- mnu "Mer"
+- mnv "Rennell-Bellona"
+- mnw "Mon"
+- mnx "Manikion"
+- mny "Manyawa"
+- mnz "Moni"
+- moa "Mwan"
+- moc "Mocoví"
+- mod "Mobilian"
+- moe "Montagnais"
+- mog "Mongondow"
+- moh "Mohawk"
+- moi "Mboi"
+- moj "Monzombo"
+- mok "Morori"
+- mom "Mangue"
+mn mon "Mongolian"
+- moo "Monom"
+- mop "Mopán Maya"
+- moq "Mor (Bomberai Peninsula)"
+- mor "Moro"
+- mos "Mossi"
+- mot "Barí"
+- mou "Mogum"
+- mov "Mohave"
+- mow "Moi (Congo)"
+- mox "Molima"
+- moy "Shekkacho"
+- moz "Mukulu"
+- mpa "Mpoto"
+- mpb "Mullukmulluk"
+- mpc "Mangarayi"
+- mpd "Machinere"
+- mpe "Majang"
+- mpg "Marba"
+- mph "Maung"
+- mpi "Mpade"
+- mpj "Martu Wangka"
+- mpk "Mbara (Chad)"
+- mpl "Middle Watut"
+- mpm "Yosondúa Mixtec"
+- mpn "Mindiri"
+- mpo "Miu"
+- mpp "Migabac"
+- mpq "Matís"
+- mpr "Vangunu"
+- mps "Dadibi"
+- mpt "Mian"
+- mpu "Makuráp"
+- mpv "Mungkip"
+- mpw "Mapidian"
+- mpx "Misima-Paneati"
+- mpy "Mapia"
+- mpz "Mpi"
+- mqa "Maba (Indonesia)"
+- mqb "Mbuko"
+- mqc "Mangole"
+- mqe "Matepi"
+- mqf "Momuna"
+- mqg "Kota Bangun Kutai Malay"
+- mqh "Tlazoyaltepec Mixtec"
+- mqi "Mariri"
+- mqj "Mamasa"
+- mqk "Rajah Kabunsuwan Manobo"
+- mql "Mbelime"
+- mqm "South Marquesan"
+- mqn "Moronene"
+- mqo "Modole"
+- mqp "Manipa"
+- mqq "Minokok"
+- mqr "Mander"
+- mqs "West Makian"
+- mqt "Mok"
+- mqu "Mandari"
+- mqv "Mosimo"
+- mqw "Murupi"
+- mqx "Mamuju"
+- mqy "Manggarai"
+- mqz "Malasanga"
+- mra "Mlabri"
+- mrb "Marino"
+- mrc "Maricopa"
+- mrd "Western Magar"
+- mre "Martha's Vineyard Sign Language"
+- mrf "Elseng"
+- mrg "Miri"
+- mrh "Mara Chin"
+mi mri "Maori"
+- mrj "Western Mari"
+- mrk "Hmwaveke"
+- mrl "Mortlockese"
+- mrm "Merlav"
+- mrn "Cheke Holo"
+- mro "Mru"
+- mrp "Morouas"
+- mrq "North Marquesan"
+- mrr "Maria (India)"
+- mrs "Maragus"
+- mrt "Marghi Central"
+- mru "Mono (Cameroon)"
+- mrv "Mangareva"
+- mrw "Maranao"
+- mrx "Maremgi"
+- mry "Mandaya"
+- mrz "Marind"
+ms msa "Malay (macrolanguage)"
+- msb "Masbatenyo"
+- msc "Sankaran Maninka"
+- msd "Yucatec Maya Sign Language"
+- mse "Musey"
+- msf "Mekwei"
+- msg "Moraid"
+- msh "Masikoro Malagasy"
+- msi "Sabah Malay"
+- msj "Ma (Democratic Republic of Congo)"
+- msk "Mansaka"
+- msl "Molof"
+- msm "Agusan Manobo"
+- msn "Vurës"
+- mso "Mombum"
+- msp "Maritsauá"
+- msq "Caac"
+- msr "Mongolian Sign Language"
+- mss "West Masela"
+- msu "Musom"
+- msv "Maslam"
+- msw "Mansoanka"
+- msx "Moresada"
+- msy "Aruamu"
+- msz "Momare"
+- mta "Cotabato Manobo"
+- mtb "Anyin Morofo"
+- mtc "Munit"
+- mtd "Mualang"
+- mte "Mono (Solomon Islands)"
+- mtf "Murik (Papua New Guinea)"
+- mtg "Una"
+- mth "Munggui"
+- mti "Maiwa (Papua New Guinea)"
+- mtj "Moskona"
+- mtk "Mbe'"
+- mtl "Montol"
+- mtm "Mator"
+- mtn "Matagalpa"
+- mto "Totontepec Mixe"
+- mtp "Wichí Lhamtés Nocten"
+- mtq "Muong"
+- mtr "Mewari"
+- mts "Yora"
+- mtt "Mota"
+- mtu "Tututepec Mixtec"
+- mtv "Asaro'o"
+- mtw "Southern Binukidnon"
+- mtx "Tidaá Mixtec"
+- mty "Nabi"
+- mua "Mundang"
+- mub "Mubi"
+- muc "Mbu'"
+- mud "Mednyj Aleut"
+- mue "Media Lengua"
+- mug "Musgu"
+- muh "Mündü"
+- mui "Musi"
+- muj "Mabire"
+- muk "Mugom"
+- mul "Multiple languages"
+- mum "Maiwala"
+- muo "Nyong"
+- mup "Malvi"
+- muq "Eastern Xiangxi Miao"
+- mur "Murle"
+- mus "Creek"
+- mut "Western Muria"
+- muu "Yaaku"
+- muv "Muthuvan"
+- mux "Bo-Ung"
+- muy "Muyang"
+- muz "Mursi"
+- mva "Manam"
+- mvb "Mattole"
+- mvd "Mamboru"
+- mve "Marwari (Pakistan)"
+- mvf "Peripheral Mongolian"
+- mvg "Yucuañe Mixtec"
+- mvh "Mire"
+- mvi "Miyako"
+- mvk "Mekmek"
+- mvl "Mbara (Australia)"
+- mvm "Muya"
+- mvn "Minaveha"
+- mvo "Marovo"
+- mvp "Duri"
+- mvq "Moere"
+- mvr "Marau"
+- mvs "Massep"
+- mvt "Mpotovoro"
+- mvu "Marfa"
+- mvv "Tagal Murut"
+- mvw "Machinga"
+- mvx "Meoswar"
+- mvy "Indus Kohistani"
+- mvz "Mesqan"
+- mwa "Mwatebu"
+- mwb "Juwal"
+- mwc "Are"
+- mwd "Mudbura"
+- mwe "Mwera (Chimwera)"
+- mwf "Murrinh-Patha"
+- mwg "Aiklep"
+- mwh "Mouk-Aria"
+- mwi "Labo"
+- mwj "Maligo"
+- mwk "Kita Maninkakan"
+- mwl "Mirandese"
+- mwm "Sar"
+- mwn "Nyamwanga"
+- mwo "Central Maewo"
+- mwp "Kala Lagaw Ya"
+- mwq "Mün Chin"
+- mwr "Marwari"
+- mws "Mwimbi-Muthambi"
+- mwt "Moken"
+- mwu "Mittu"
+- mwv "Mentawai"
+- mww "Hmong Daw"
+- mwx "Mediak"
+- mwy "Mosiro"
+- mwz "Moingi"
+- mxa "Northwest Oaxaca Mixtec"
+- mxb "Tezoatlán Mixtec"
+- mxc "Manyika"
+- mxd "Modang"
+- mxe "Mele-Fila"
+- mxf "Malgbe"
+- mxg "Mbangala"
+- mxh "Mvuba"
+- mxi "Mozarabic"
+- mxj "Miju-Mishmi"
+- mxk "Monumbo"
+- mxl "Maxi Gbe"
+- mxm "Meramera"
+- mxn "Moi (Indonesia)"
+- mxo "Mbowe"
+- mxp "Tlahuitoltepec Mixe"
+- mxq "Juquila Mixe"
+- mxr "Murik (Malaysia)"
+- mxs "Huitepec Mixtec"
+- mxt "Jamiltepec Mixtec"
+- mxu "Mada (Cameroon)"
+- mxv "Metlatónoc Mixtec"
+- mxw "Namo"
+- mxx "Mahou"
+- mxy "Southeastern Nochixtlán Mixtec"
+- mxz "Central Masela"
+my mya "Burmese"
+- myb "Mbay"
+- myc "Mayeka"
+- myd "Maramba"
+- mye "Myene"
+- myf "Bambassi"
+- myg "Manta"
+- myh "Makah"
+- myi "Mina (India)"
+- myj "Mangayat"
+- myk "Mamara Senoufo"
+- myl "Moma"
+- mym "Me'en"
+- myo "Anfillo"
+- myp "Pirahã"
+- myq "Forest Maninka"
+- myr "Muniche"
+- mys "Mesmes"
+- myu "Mundurukú"
+- myv "Erzya"
+- myw "Muyuw"
+- myx "Masaaba"
+- myy "Macuna"
+- myz "Classical Mandaic"
+- mza "Santa María Zacatepec Mixtec"
+- mzb "Tumzabt"
+- mzc "Madagascar Sign Language"
+- mzd "Malimba"
+- mze "Morawa"
+- mzg "Monastic Sign Language"
+- mzh "Wichí Lhamtés Güisnay"
+- mzi "Ixcatlán Mazatec"
+- mzj "Manya"
+- mzk "Nigeria Mambila"
+- mzl "Mazatlán Mixe"
+- mzm "Mumuye"
+- mzn "Mazanderani"
+- mzo "Matipuhy"
+- mzp "Movima"
+- mzq "Mori Atas"
+- mzr "Marúbo"
+- mzs "Macanese"
+- mzt "Mintil"
+- mzu "Inapang"
+- mzv "Manza"
+- mzw "Deg"
+- mzx "Mawayana"
+- mzy "Mozambican Sign Language"
+- mzz "Maiadomu"
+- naa "Namla"
+- nab "Southern Nambikuára"
+- nac "Narak"
+- nad "Nijadali"
+- nae "Naka'ela"
+- naf "Nabak"
+- nag "Naga Pidgin"
+- naj "Nalu"
+- nak "Nakanai"
+- nal "Nalik"
+- nam "Nangikurrunggurr"
+- nan "Min Nan Chinese"
+- nao "Naaba"
+- nap "Neapolitan"
+- naq "Nama (Namibia)"
+- nar "Iguta"
+- nas "Naasioi"
+- nat "Hungworo"
+na nau "Nauru"
+nv nav "Navajo"
+- naw "Nawuri"
+- nax "Nakwi"
+- nay "Narrinyeri"
+- naz "Coatepec Nahuatl"
+- nba "Nyemba"
+- nbb "Ndoe"
+- nbc "Chang Naga"
+- nbd "Ngbinda"
+- nbe "Konyak Naga"
+- nbf "Naxi"
+- nbg "Nagarchal"
+- nbh "Ngamo"
+- nbi "Mao Naga"
+- nbj "Ngarinman"
+- nbk "Nake"
+nr nbl "South Ndebele"
+- nbm "Ngbaka Ma'bo"
+- nbn "Kuri"
+- nbo "Nkukoli"
+- nbp "Nnam"
+- nbq "Nggem"
+- nbr "Numana-Nunku-Gbantu-Numbu"
+- nbs "Namibian Sign Language"
+- nbt "Na"
+- nbu "Rongmei Naga"
+- nbv "Ngamambo"
+- nbw "Southern Ngbandi"
+- nbx "Ngura"
+- nby "Ningera"
+- nca "Iyo"
+- ncb "Central Nicobarese"
+- ncc "Ponam"
+- ncd "Nachering"
+- nce "Yale"
+- ncf "Notsi"
+- ncg "Nisga'a"
+- nch "Central Huasteca Nahuatl"
+- nci "Classical Nahuatl"
+- ncj "Northern Puebla Nahuatl"
+- nck "Nakara"
+- ncl "Michoacán Nahuatl"
+- ncm "Nambo"
+- ncn "Nauna"
+- nco "Sibe"
+- ncp "Ndaktup"
+- ncr "Ncane"
+- ncs "Nicaraguan Sign Language"
+- nct "Chothe Naga"
+- ncu "Chumburung"
+- ncx "Central Puebla Nahuatl"
+- ncz "Natchez"
+- nda "Ndasa"
+- ndb "Kenswei Nsei"
+- ndc "Ndau"
+- ndd "Nde-Nsele-Nta"
+nd nde "North Ndebele"
+- ndf "Nadruvian"
+- ndg "Ndengereko"
+- ndh "Ndali"
+- ndi "Samba Leko"
+- ndj "Ndamba"
+- ndk "Ndaka"
+- ndl "Ndolo"
+- ndm "Ndam"
+- ndn "Ngundi"
+ng ndo "Ndonga"
+- ndp "Ndo"
+- ndq "Ndombe"
+- ndr "Ndoola"
+- nds "Low German"
+- ndt "Ndunga"
+- ndu "Dugun"
+- ndv "Ndut"
+- ndw "Ndobo"
+- ndx "Nduga"
+- ndy "Lutos"
+- ndz "Ndogo"
+- nea "Eastern Ngad'a"
+- neb "Toura (Côte d'Ivoire)"
+- nec "Nedebang"
+- ned "Nde-Gbite"
+- nee "Kumak"
+- nef "Nefamese"
+- neg "Negidal"
+- neh "Nyenkha"
+- nei "Neo-Hittite"
+- nej "Neko"
+- nek "Neku"
+- nem "Nemi"
+- nen "Nengone"
+- neo "Ná-Meo"
+ne nep "Nepali"
+- neq "North Central Mixe"
+- ner "Yahadian"
+- nes "Bhoti Kinnauri"
+- net "Nete"
+- nev "Nyaheun"
+- new "Newari"
+- nex "Neme"
+- ney "Neyo"
+- nez "Nez Perce"
+- nfa "Dhao"
+- nfd "Ahwai"
+- nfl "Ayiwo"
+- nfr "Nafaanra"
+- nfu "Mfumte"
+- nga "Ngbaka"
+- ngb "Northern Ngbandi"
+- ngc "Ngombe (Democratic Republic of Congo)"
+- ngd "Ngando (Central African Republic)"
+- nge "Ngemba"
+- ngg "Ngbaka Manza"
+- ngh "N/u"
+- ngi "Ngizim"
+- ngj "Ngie"
+- ngk "Ngalkbun"
+- ngl "Lomwe"
+- ngm "Ngatik Men's Creole"
+- ngn "Ngwo"
+- ngo "Ngoni"
+- ngp "Ngulu"
+- ngq "Ngurimi"
+- ngr "Nanggu"
+- ngs "Gvoko"
+- ngt "Ngeq"
+- ngu "Guerrero Nahuatl"
+- ngv "Nagumi"
+- ngw "Ngwaba"
+- ngx "Nggwahyi"
+- ngy "Tibea"
+- ngz "Ngungwel"
+- nha "Nhanda"
+- nhb "Beng"
+- nhc "Tabasco Nahuatl"
+- nhd "Chiripá"
+- nhe "Eastern Huasteca Nahuatl"
+- nhf "Nhuwala"
+- nhg "Tetelcingo Nahuatl"
+- nhh "Nahari"
+- nhi "Zacatlán-Ahuacatlán-Tepetzintla Nahuatl"
+- nhk "Isthmus-Cosoleacaque Nahuatl"
+- nhm "Morelos Nahuatl"
+- nhn "Central Nahuatl"
+- nho "Takuu"
+- nhp "Isthmus-Pajapan Nahuatl"
+- nhq "Huaxcaleca Nahuatl"
+- nhr "Naro"
+- nht "Ometepec Nahuatl"
+- nhu "Noone"
+- nhv "Temascaltepec Nahuatl"
+- nhw "Western Huasteca Nahuatl"
+- nhx "Isthmus-Mecayapan Nahuatl"
+- nhy "Northern Oaxaca Nahuatl"
+- nhz "Santa María La Alta Nahuatl"
+- nia "Nias"
+- nib "Nakama"
+- nid "Ngandi"
+- nie "Niellim"
+- nif "Nek"
+- nig "Ngalakan"
+- nih "Nyiha (Tanzania)"
+- nii "Nii"
+- nij "Ngaju"
+- nik "Southern Nicobarese"
+- nil "Nila"
+- nim "Nilamba"
+- nin "Ninzo"
+- nio "Nganasan"
+- niq "Nandi"
+- nir "Nimboran"
+- nis "Nimi"
+- nit "Southeastern Kolami"
+- niu "Niuean"
+- niv "Gilyak"
+- niw "Nimo"
+- nix "Hema"
+- niy "Ngiti"
+- niz "Ningil"
+- nja "Nzanyi"
+- njb "Nocte Naga"
+- njd "Ndonde Hamba"
+- njh "Lotha Naga"
+- nji "Gudanji"
+- njj "Njen"
+- njl "Njalgulgule"
+- njm "Angami Naga"
+- njn "Liangmai Naga"
+- njo "Ao Naga"
+- njr "Njerep"
+- njs "Nisa"
+- njt "Ndyuka-Trio Pidgin"
+- nju "Ngadjunmaya"
+- njx "Kunyi"
+- njy "Njyem"
+- nka "Nkoya"
+- nkb "Khoibu Naga"
+- nkc "Nkongho"
+- nkd "Koireng"
+- nke "Duke"
+- nkf "Inpui Naga"
+- nkg "Nekgini"
+- nkh "Khezha Naga"
+- nki "Thangal Naga"
+- nkj "Nakai"
+- nkk "Nokuku"
+- nkm "Namat"
+- nkn "Nkangala"
+- nko "Nkonya"
+- nkp "Niuatoputapu"
+- nkq "Nkami"
+- nkr "Nukuoro"
+- nks "North Asmat"
+- nkt "Nyika (Tanzania)"
+- nku "Bouna Kulango"
+- nkv "Nyika (Malawi and Zambia)"
+- nkw "Nkutu"
+- nkx "Nkoroo"
+- nkz "Nkari"
+- nla "Ngombale"
+- nlc "Nalca"
+nl nld "Dutch"
+- nle "East Nyala"
+- nlg "Gela"
+- nli "Grangali"
+- nlj "Nyali"
+- nlk "Ninia Yali"
+- nll "Nihali"
+- nln "Durango Nahuatl"
+- nlo "Ngul"
+- nlr "Ngarla"
+- nlu "Nchumbulu"
+- nlv "Orizaba Nahuatl"
+- nlx "Nahali"
+- nly "Nyamal"
+- nlz "Nalögo"
+- nma "Maram Naga"
+- nmb "Big Nambas"
+- nmc "Ngam"
+- nmd "Ndumu"
+- nme "Mzieme Naga"
+- nmf "Tangkhul Naga"
+- nmg "Kwasio"
+- nmh "Monsang Naga"
+- nmi "Nyam"
+- nmj "Ngombe (Central African Republic)"
+- nmk "Namakura"
+- nml "Ndemli"
+- nmm "Manangba"
+- nmn "!Xóõ"
+- nmo "Moyon Naga"
+- nmp "Nimanbur"
+- nmq "Nambya"
+- nmr "Nimbari"
+- nms "Letemboi"
+- nmt "Namonuito"
+- nmu "Northeast Maidu"
+- nmv "Ngamini"
+- nmw "Nimoa"
+- nmx "Nama (Papua New Guinea)"
+- nmy "Namuyi"
+- nmz "Nawdm"
+- nna "Nyangumarta"
+- nnb "Nande"
+- nnc "Nancere"
+- nnd "West Ambae"
+- nne "Ngandyera"
+- nnf "Ngaing"
+- nng "Maring Naga"
+- nnh "Ngiemboon"
+- nni "North Nuaulu"
+- nnj "Nyangatom"
+- nnk "Nankina"
+- nnl "Northern Rengma Naga"
+- nnm "Namia"
+- nnn "Ngete"
+nn nno "Norwegian Nynorsk"
+- nnp "Wancho Naga"
+- nnq "Ngindo"
+- nnr "Narungga"
+- nns "Ningye"
+- nnt "Nanticoke"
+- nnu "Dwang"
+- nnv "Nugunu (Australia)"
+- nnw "Southern Nuni"
+- nnx "Ngong"
+- nny "Nyangga"
+- nnz "Nda'nda'"
+- noa "Woun Meu"
+nb nob "Norwegian Bokmål"
+- noc "Nuk"
+- nod "Northern Thai"
+- noe "Nimadi"
+- nof "Nomane"
+- nog "Nogai"
+- noh "Nomu"
+- noi "Noiri"
+- noj "Nonuya"
+- nok "Nooksack"
+- nom "Nocamán"
+- non "Old Norse"
+- noo "Nootka"
+- nop "Numanggang"
+- noq "Ngongo"
+no nor "Norwegian"
+- nos "Eastern Nisu"
+- not "Nomatsiguenga"
+- nou "Ewage-Notu"
+- nov "Novial"
+- now "Nyambo"
+- noy "Noy"
+- noz "Nayi"
+- npa "Nar Phu"
+- npb "Nupbikha"
+- nph "Phom Naga"
+- npl "Southeastern Puebla Nahuatl"
+- npn "Mondropolon"
+- npo "Pochuri Naga"
+- nps "Nipsan"
+- npu "Puimei Naga"
+- npy "Napu"
+- nqg "Southern Nago"
+- nqk "Kura Ede Nago"
+- nqm "Ndom"
+- nqn "Nen"
+- nqo "N'Ko"
+- nra "Ngom"
+- nrb "Nara"
+- nrc "Noric"
+- nre "Southern Rengma Naga"
+- nrg "Narango"
+- nri "Chokri Naga"
+- nrl "Ngarluma"
+- nrm "Narom"
+- nrn "Norn"
+- nrp "North Picene"
+- nrr "Norra"
+- nrt "Northern Kalapuya"
+- nrx "Ngurmbur"
+- nrz "Lala"
+- nsa "Sangtam Naga"
+- nsc "Nshi"
+- nsd "Southern Nisu"
+- nse "Nsenga"
+- nsg "Ngasa"
+- nsh "Ngoshie"
+- nsi "Nigerian Sign Language"
+- nsk "Naskapi"
+- nsl "Norwegian Sign Language"
+- nsm "Sumi Naga"
+- nsn "Nehan"
+- nso "Pedi"
+- nsp "Nepalese Sign Language"
+- nsq "Northern Sierra Miwok"
+- nsr "Maritime Sign Language"
+- nss "Nali"
+- nst "Tase Naga"
+- nsu "Sierra Negra Nahuatl"
+- nsv "Southwestern Nisu"
+- nsw "Navut"
+- nsx "Nsongo"
+- nsy "Nasal"
+- nsz "Nisenan"
+- nte "Nathembo"
+- nti "Natioro"
+- ntj "Ngaanyatjarra"
+- ntk "Ikoma-Nata-Isenye"
+- ntm "Nateni"
+- nto "Ntomba"
+- ntp "Northern Tepehuan"
+- ntr "Delo"
+- nts "Natagaimas"
+- ntu "Natügu"
+- ntw "Nottoway"
+- nty "Mantsi"
+- ntz "Natanzi"
+- nua "Yuaga"
+- nuc "Nukuini"
+- nud "Ngala"
+- nue "Ngundu"
+- nuf "Nusu"
+- nug "Nungali"
+- nuh "Ndunda"
+- nui "Ngumbi"
+- nuj "Nyole"
+- nul "Nusa Laut"
+- num "Niuafo'ou"
+- nun "Nung (Myanmar)"
+- nuo "Nguôn"
+- nup "Nupe-Nupe-Tako"
+- nuq "Nukumanu"
+- nur "Nukuria"
+- nus "Nuer"
+- nut "Nung (Viet Nam)"
+- nuu "Ngbundu"
+- nuv "Northern Nuni"
+- nuw "Nguluwan"
+- nux "Mehek"
+- nuy "Nunggubuyu"
+- nuz "Tlamacazapa Nahuatl"
+- nvh "Nasarian"
+- nvm "Namiae"
+- nwa "Nawathinehena"
+- nwb "Nyabwa"
+- nwc "Classical Newari"
+- nwe "Ngwe"
+- nwi "Southwest Tanna"
+- nwm "Nyamusa-Molo"
+- nwr "Nawaru"
+- nwx "Middle Newar"
+- nwy "Nottoway-Meherrin"
+- nxa "Nauete"
+- nxd "Ngando (Democratic Republic of Congo)"
+- nxe "Nage"
+- nxg "Ngad'a"
+- nxi "Nindi"
+- nxl "South Nuaulu"
+- nxm "Numidian"
+- nxn "Ngawun"
+- nxr "Ninggerum"
+- nxu "Narau"
+- nxx "Nafri"
+ny nya "Nyanja"
+- nyb "Nyangbo"
+- nyc "Nyanga-li"
+- nyd "Nyore"
+- nye "Nyengo"
+- nyf "Giryama"
+- nyg "Nyindu"
+- nyh "Nyigina"
+- nyi "Ama (Sudan)"
+- nyj "Nyanga"
+- nyk "Nyaneka"
+- nyl "Nyeu"
+- nym "Nyamwezi"
+- nyn "Nyankole"
+- nyo "Nyoro"
+- nyp "Nyang'i"
+- nyq "Nayini"
+- nyr "Nyiha (Malawi)"
+- nys "Nyunga"
+- nyt "Nyawaygi"
+- nyu "Nyungwe"
+- nyv "Nyulnyul"
+- nyw "Nyaw"
+- nyx "Nganyaywana"
+- nyy "Nyakyusa-Ngonde"
+- nza "Tigon Mbembe"
+- nzb "Njebi"
+- nzi "Nzima"
+- nzk "Nzakara"
+- nzm "Zeme Naga"
+- nzs "New Zealand Sign Language"
+- nzu "Teke-Nzikou"
+- nzy "Nzakambay"
+- nzz "Nanga Dama Dogon"
+- oaa "Orok"
+- oac "Oroch"
+- oar "Old Aramaic (up to 700 BCE)"
+- oav "Old Avar"
+- obi "Obispeño"
+- obk "Southern Bontok"
+- obl "Oblo"
+- obm "Moabite"
+- obo "Obo Manobo"
+- obr "Old Burmese"
+- obt "Old Breton"
+- obu "Obulom"
+- oca "Ocaina"
+- och "Old Chinese"
+oc oci "Occitan (post 1500)"
+- oco "Old Cornish"
+- ocu "Atzingo Matlatzinca"
+- oda "Odut"
+- odk "Od"
+- odt "Old Dutch"
+- odu "Odual"
+- ofo "Ofo"
+- ofs "Old Frisian"
+- ofu "Efutop"
+- ogb "Ogbia"
+- ogc "Ogbah"
+- oge "Old Georgian"
+- ogg "Ogbogolo"
+- ogo "Khana"
+- ogu "Ogbronuagum"
+- oht "Old Hittite"
+- ohu "Old Hungarian"
+- oia "Oirata"
+- oin "Inebu One"
+- ojb "Northwestern Ojibwa"
+- ojc "Central Ojibwa"
+- ojg "Eastern Ojibwa"
+oj oji "Ojibwa"
+- ojp "Old Japanese"
+- ojs "Severn Ojibwa"
+- ojv "Ontong Java"
+- ojw "Western Ojibwa"
+- oka "Okanagan"
+- okb "Okobo"
+- okd "Okodia"
+- oke "Okpe (Southwestern Edo)"
+- okh "Koresh-e Rostam"
+- oki "Okiek"
+- okj "Oko-Juwoi"
+- okk "Kwamtim One"
+- okl "Old Kentish Sign Language"
+- okm "Middle Korean (10th-16th cent.)"
+- okn "Oki-No-Erabu"
+- oko "Old Korean (3rd-9th cent.)"
+- okr "Kirike"
+- oks "Oko-Eni-Osayen"
+- oku "Oku"
+- okv "Orokaiva"
+- okx "Okpe (Northwestern Edo)"
+- ola "Walungge"
+- old "Mochi"
+- ole "Olekha"
+- olm "Oloma"
+- olo "Livvi"
+- olr "Olrat"
+- oma "Omaha-Ponca"
+- omb "East Ambae"
+- omc "Mochica"
+- ome "Omejes"
+- omg "Omagua"
+- omi "Omi"
+- omk "Omok"
+- oml "Ombo"
+- omn "Minoan"
+- omo "Utarmbung"
+- omp "Old Manipuri"
+- omr "Old Marathi"
+- omt "Omotik"
+- omu "Omurano"
+- omw "South Tairora"
+- omx "Old Mon"
+- ona "Ona"
+- onb "Lingao"
+- one "Oneida"
+- ong "Olo"
+- oni "Onin"
+- onj "Onjob"
+- onk "Kabore One"
+- onn "Onobasulu"
+- ono "Onondaga"
+- onp "Sartang"
+- onr "Northern One"
+- ons "Ono"
+- ont "Ontenu"
+- onu "Unua"
+- onw "Old Nubian"
+- onx "Onin Based Pidgin"
+- ood "Tohono O'odham"
+- oog "Ong"
+- oon "Önge"
+- oor "Oorlams"
+- oos "Old Ossetic"
+- opa "Okpamheri"
+- opk "Kopkaka"
+- opm "Oksapmin"
+- opo "Opao"
+- opt "Opata"
+- opy "Ofayé"
+- ora "Oroha"
+- orc "Orma"
+- ore "Orejón"
+- org "Oring"
+- orh "Oroqen"
+or ori "Oriya"
+om orm "Oromo"
+- orn "Orang Kanaq"
+- oro "Orokolo"
+- orr "Oruma"
+- ors "Orang Seletar"
+- ort "Adivasi Oriya"
+- oru "Ormuri"
+- orv "Old Russian"
+- orw "Oro Win"
+- orx "Oro"
+- orz "Ormu"
+- osa "Osage"
+- osc "Oscan"
+- osi "Osing"
+- oso "Ososo"
+- osp "Old Spanish"
+os oss "Ossetian"
+- ost "Osatu"
+- osu "Southern One"
+- osx "Old Saxon"
+- ota "Ottoman Turkish (1500-1928)"
+- otb "Old Tibetan"
+- otd "Ot Danum"
+- ote "Mezquital Otomi"
+- oti "Oti"
+- otk "Old Turkish"
+- otl "Tilapa Otomi"
+- otm "Eastern Highland Otomi"
+- otn "Tenango Otomi"
+- otq "Querétaro Otomi"
+- otr "Otoro"
+- ots "Estado de México Otomi"
+- ott "Temoaya Otomi"
+- otu "Otuke"
+- otw "Ottawa"
+- otx "Texcatepec Otomi"
+- oty "Old Tamil"
+- otz "Ixtenco Otomi"
+- oua "Tagargrent"
+- oub "Glio-Oubi"
+- oue "Ounge"
+- oui "Old Uighur"
+- oum "Ouma"
+- oun "!O!ung"
+- owi "Owiniga"
+- owl "Old Welsh"
+- oyb "Oy"
+- oyd "Oyda"
+- oym "Wayampi"
+- oyy "Oya'oya"
+- ozm "Koonzime"
+- pab "Parecís"
+- pac "Pacoh"
+- pad "Paumarí"
+- pae "Pagibete"
+- paf "Paranawát"
+- pag "Pangasinan"
+- pah "Tenharim"
+- pai "Pe"
+- pak "Parakanã"
+- pal "Pahlavi"
+- pam "Pampanga"
+pa pan "Panjabi"
+- pao "Northern Paiute"
+- pap "Papiamento"
+- paq "Parya"
+- par "Panamint"
+- pas "Papasena"
+- pat "Papitalai"
+- pau "Palauan"
+- pav "Pakaásnovos"
+- paw "Pawnee"
+- pax "Pankararé"
+- pay "Pech"
+- paz "Pankararú"
+- pbb "Páez"
+- pbc "Patamona"
+- pbe "Mezontla Popoloca"
+- pbf "Coyotepec Popoloca"
+- pbg "Paraujano"
+- pbh "E'ñapa Woromaipu"
+- pbi "Parkwa"
+- pbl "Mak (Nigeria)"
+- pbn "Kpasam"
+- pbo "Papel"
+- pbp "Badyara"
+- pbr "Pangwa"
+- pbs "Central Pame"
+- pbt "Southern Pashto"
+- pbu "Northern Pashto"
+- pbv "Pnar"
+- pby "Pyu"
+- pbz "Palu"
+- pca "Santa Inés Ahuatempan Popoloca"
+- pcb "Pear"
+- pcc "Bouyei"
+- pcd "Picard"
+- pce "Ruching Palaung"
+- pcf "Paliyan"
+- pcg "Paniya"
+- pch "Pardhan"
+- pci "Duruwa"
+- pcj "Parenga"
+- pck "Paite Chin"
+- pcl "Pardhi"
+- pcm "Nigerian Pidgin"
+- pcn "Piti"
+- pcp "Pacahuara"
+- pcr "Panang"
+- pcw "Pyapun"
+- pda "Anam"
+- pdc "Pennsylvania German"
+- pdi "Pa Di"
+- pdn "Podena"
+- pdo "Padoe"
+- pdt "Plautdietsch"
+- pdu "Kayan"
+- pea "Peranakan Indonesian"
+- peb "Eastern Pomo"
+- ped "Mala (Papua New Guinea)"
+- pee "Taje"
+- pef "Northeastern Pomo"
+- peg "Pengo"
+- peh "Bonan"
+- pei "Chichimeca-Jonaz"
+- pej "Northern Pomo"
+- pek "Penchal"
+- pel "Pekal"
+- pem "Phende"
+- peo "Old Persian (ca. 600-400 B.C.)"
+- pep "Kunja"
+- peq "Southern Pomo"
+- pes "Iranian Persian"
+- pev "Pémono"
+- pex "Petats"
+- pey "Petjo"
+- pez "Eastern Penan"
+- pfa "Pááfang"
+- pfe "Peere"
+- pfl "Pfaelzisch"
+- pga "Sudanese Creole Arabic"
+- pgg "Pangwali"
+- pgi "Pagi"
+- pgk "Rerep"
+- pgn "Paelignian"
+- pgs "Pangseng"
+- pgu "Pagu"
+- pgy "Pongyong"
+- pha "Pa-Hng"
+- phd "Phudagi"
+- phg "Phuong"
+- phh "Phukha"
+- phk "Phake"
+- phl "Phalura"
+- phm "Phimbi"
+- phn "Phoenician"
+- pho "Phunoi"
+- phq "Phana'"
+- phr "Pahari-Potwari"
+- pht "Phu Thai"
+- phu "Phuan"
+- phv "Pahlavani"
+- phw "Phangduwali"
+- pia "Pima Bajo"
+- pib "Yine"
+- pic "Pinji"
+- pid "Piaroa"
+- pie "Piro"
+- pif "Pingelapese"
+- pig "Pisabo"
+- pih "Pitcairn-Norfolk"
+- pii "Pini"
+- pij "Pijao"
+- pil "Yom"
+- pim "Powhatan"
+- pin "Piame"
+- pio "Piapoco"
+- pip "Pero"
+- pir "Piratapuyo"
+- pis "Pijin"
+- pit "Pitta Pitta"
+- piu "Pintupi-Luritja"
+- piv "Pileni"
+- piw "Pimbwe"
+- pix "Piu"
+- piy "Piya-Kwonci"
+- piz "Pije"
+- pjt "Pitjantjatjara"
+- pka "Ardhamāgadhī Prākrit"
+- pkb "Pokomo"
+- pkc "Paekche"
+- pkg "Pak-Tong"
+- pkh "Pankhu"
+- pkn "Pakanha"
+- pko "Pökoot"
+- pkp "Pukapuka"
+- pkr "Attapady Kurumba"
+- pks "Pakistan Sign Language"
+- pkt "Maleng"
+- pku "Paku"
+- pla "Miani"
+- plb "Polonombauk"
+- plc "Central Palawano"
+- pld "Polari"
+- ple "Palu'e"
+- plg "Pilagá"
+- plh "Paulohi"
+pi pli "Pali"
+- plj "Polci"
+- plk "Kohistani Shina"
+- pll "Shwe Palaung"
+- pln "Palenquero"
+- plo "Oluta Popoluca"
+- plp "Palpa"
+- plq "Palaic"
+- plr "Palaka Senoufo"
+- pls "San Marcos Tlalcoyalco Popoloca"
+- plt "Plateau Malagasy"
+- plu "Palikúr"
+- plv "Southwest Palawano"
+- plw "Brooke's Point Palawano"
+- ply "Bolyu"
+- plz "Paluan"
+- pma "Paama"
+- pmb "Pambia"
+- pmc "Palumata"
+- pme "Pwaamei"
+- pmf "Pamona"
+- pmh "Māhārāṣṭri Prākrit"
+- pmi "Northern Pumi"
+- pmj "Southern Pumi"
+- pmk "Pamlico"
+- pml "Lingua Franca"
+- pmm "Pomo"
+- pmn "Pam"
+- pmo "Pom"
+- pmq "Northern Pame"
+- pmr "Paynamar"
+- pms "Piemontese"
+- pmt "Tuamotuan"
+- pmu "Mirpur Panjabi"
+- pmw "Plains Miwok"
+- pmx "Poumei Naga"
+- pmy "Papuan Malay"
+- pmz "Southern Pame"
+- pna "Punan Bah-Biau"
+- pnb "Western Panjabi"
+- pnc "Pannei"
+- pne "Western Penan"
+- png "Pongu"
+- pnh "Penrhyn"
+- pni "Aoheng"
+- pnm "Punan Batu 1"
+- pnn "Pinai-Hagahai"
+- pno "Panobo"
+- pnp "Pancana"
+- pnq "Pana (Burkina Faso)"
+- pnr "Panim"
+- pns "Ponosakan"
+- pnt "Pontic"
+- pnu "Jiongnai Bunu"
+- pnv "Pinigura"
+- pnw "Panytyima"
+- pnx "Phong-Kniang"
+- pny "Pinyin"
+- pnz "Pana (Central African Republic)"
+- poc "Poqomam"
+- pod "Ponares"
+- poe "San Juan Atzingo Popoloca"
+- pof "Poke"
+- pog "Potiguára"
+- poh "Poqomchi'"
+- poi "Highland Popoluca"
+- pok "Pokangá"
+pl pol "Polish"
+- pom "Southeastern Pomo"
+- pon "Pohnpeian"
+- poo "Central Pomo"
+- pop "Pwapwa"
+- poq "Texistepec Popoluca"
+pt por "Portuguese"
+- pos "Sayula Popoluca"
+- pot "Potawatomi"
+- pov "Upper Guinea Crioulo"
+- pow "San Felipe Otlaltepec Popoloca"
+- pox "Polabian"
+- poy "Pogolo"
+- ppa "Pao"
+- ppe "Papi"
+- ppi "Paipai"
+- ppk "Uma"
+- ppl "Pipil"
+- ppm "Papuma"
+- ppn "Papapana"
+- ppo "Folopa"
+- ppp "Pelende"
+- ppq "Pei"
+- ppr "Piru"
+- pps "San Luís Temalacayuca Popoloca"
+- ppt "Pare"
+- ppu "Papora"
+- pqa "Pa'a"
+- pqm "Malecite-Passamaquoddy"
+- prb "Lua'"
+- prc "Parachi"
+- prd "Parsi-Dari"
+- pre "Principense"
+- prf "Paranan"
+- prg "Prussian"
+- prh "Porohanon"
+- pri "Paicî"
+- prk "Parauk"
+- prl "Peruvian Sign Language"
+- prm "Kibiri"
+- prn "Prasuni"
+- pro "Old Provençal (to 1500)"
+- prp "Parsi"
+- prq "Ashéninka Perené"
+- prr "Puri"
+- prs "Dari"
+- prt "Phai"
+- pru "Puragi"
+- prw "Parawen"
+- prx "Purik"
+- pry "Pray 3"
+- prz "Providencia Sign Language"
+- psa "Asue Awyu"
+- psc "Persian Sign Language"
+- psd "Plains Indian Sign Language"
+- pse "Central Malay"
+- psg "Penang Sign Language"
+- psh "Southwest Pashayi"
+- psi "Southeast Pashayi"
+- psl "Puerto Rican Sign Language"
+- psm "Pauserna"
+- psn "Panasuan"
+- pso "Polish Sign Language"
+- psp "Philippine Sign Language"
+- psq "Pasi"
+- psr "Portuguese Sign Language"
+- pss "Kaulong"
+- pst "Central Pashto"
+- psu "Sauraseni Prākrit"
+- psw "Port Sandwich"
+- psy "Piscataway"
+- pta "Pai Tavytera"
+- pth "Pataxó Hã-Ha-Hãe"
+- pti "Pintiini"
+- ptn "Patani"
+- pto "Zo'é"
+- ptp "Patep"
+- ptr "Piamatsina"
+- ptt "Enrekang"
+- ptu "Bambam"
+- ptv "Port Vato"
+- ptw "Pentlatch"
+- pty "Pathiya"
+- pua "Western Highland Purepecha"
+- pub "Purum"
+- puc "Punan Merap"
+- pud "Punan Aput"
+- pue "Puelche"
+- puf "Punan Merah"
+- pug "Phuie"
+- pui "Puinave"
+- puj "Punan Tubu"
+- puk "Pu Ko"
+- pum "Puma"
+- puo "Puoc"
+- pup "Pulabu"
+- puq "Puquina"
+- pur "Puruborá"
+ps pus "Pushto"
+- put "Putoh"
+- puu "Punu"
+- puw "Puluwatese"
+- pux "Puare"
+- puy "Purisimeño"
+- puz "Purum Naga"
+- pwa "Pawaia"
+- pwb "Panawa"
+- pwg "Gapapaiwa"
+- pwm "Molbog"
+- pwn "Paiwan"
+- pwo "Pwo Western Karen"
+- pwr "Powari"
+- pww "Pwo Northern Karen"
+- pxm "Quetzaltepec Mixe"
+- pye "Pye Krumen"
+- pym "Fyam"
+- pyn "Poyanáwa"
+- pys "Paraguayan Sign Language"
+- pyu "Puyuma"
+- pyx "Pyu (Myanmar)"
+- pyy "Pyen"
+- pzn "Para Naga"
+- qua "Quapaw"
+- qub "Huallaga Huánuco Quechua"
+- quc "K'iche'"
+- qud "Calderón Highland Quichua"
+qu que "Quechua"
+- quf "Lambayeque Quechua"
+- qug "Chimborazo Highland Quichua"
+- quh "South Bolivian Quechua"
+- qui "Quileute"
+- quk "Chachapoyas Quechua"
+- qul "North Bolivian Quechua"
+- qum "Sipacapense"
+- qun "Quinault"
+- qup "Southern Pastaza Quechua"
+- quq "Quinqui"
+- qur "Yanahuanca Pasco Quechua"
+- qus "Santiago del Estero Quichua"
+- quv "Sacapulteco"
+- quw "Tena Lowland Quichua"
+- qux "Yauyos Quechua"
+- quy "Ayacucho Quechua"
+- quz "Cusco Quechua"
+- qva "Ambo-Pasco Quechua"
+- qvc "Cajamarca Quechua"
+- qve "Eastern Apurímac Quechua"
+- qvh "Huamalíes-Dos de Mayo Huánuco Quechua"
+- qvi "Imbabura Highland Quichua"
+- qvj "Loja Highland Quichua"
+- qvl "Cajatambo North Lima Quechua"
+- qvm "Margos-Yarowilca-Lauricocha Quechua"
+- qvn "North Junín Quechua"
+- qvo "Napo Lowland Quechua"
+- qvp "Pacaraos Quechua"
+- qvs "San Martín Quechua"
+- qvw "Huaylla Wanca Quechua"
+- qvy "Queyu"
+- qvz "Northern Pastaza Quichua"
+- qwa "Corongo Ancash Quechua"
+- qwc "Classical Quechua"
+- qwh "Huaylas Ancash Quechua"
+- qwm "Kuman (Russia)"
+- qws "Sihuas Ancash Quechua"
+- qwt "Kwalhioqua-Tlatskanai"
+- qxa "Chiquián Ancash Quechua"
+- qxc "Chincha Quechua"
+- qxh "Panao Huánuco Quechua"
+- qxl "Salasaca Highland Quichua"
+- qxn "Northern Conchucos Ancash Quechua"
+- qxo "Southern Conchucos Ancash Quechua"
+- qxp "Puno Quechua"
+- qxq "Qashqa'i"
+- qxr "Cañar Highland Quichua"
+- qxs "Southern Qiang"
+- qxt "Santa Ana de Tusi Pasco Quechua"
+- qxu "Arequipa-La Unión Quechua"
+- qxw "Jauja Wanca Quechua"
+- qya "Quenya"
+- qyp "Quiripi"
+- raa "Dungmali"
+- rab "Camling"
+- rac "Rasawa"
+- rad "Rade"
+- raf "Western Meohang"
+- rag "Logooli"
+- rah "Rabha"
+- rai "Ramoaaina"
+- raj "Rajasthani"
+- rak "Tulu-Bohuai"
+- ral "Ralte"
+- ram "Canela"
+- ran "Riantana"
+- rao "Rao"
+- rap "Rapanui"
+- raq "Saam"
+- rar "Rarotongan"
+- ras "Tegali"
+- rat "Razajerdi"
+- rau "Raute"
+- rav "Sampang"
+- raw "Rawang"
+- rax "Rang"
+- ray "Rapa"
+- raz "Rahambuu"
+- rbb "Rumai Palaung"
+- rbk "Northern Bontok"
+- rbl "Miraya Bikol"
+- rcf "Réunion Creole French"
+- rdb "Rudbari"
+- rea "Rerau"
+- reb "Rembong"
+- ree "Rejang Kayan"
+- reg "Kara (Tanzania)"
+- rei "Reli"
+- rej "Rejang"
+- rel "Rendille"
+- rem "Remo"
+- ren "Rengao"
+- rer "Rer Bare"
+- res "Reshe"
+- ret "Retta"
+- rey "Reyesano"
+- rga "Roria"
+- rge "Romano-Greek"
+- rgk "Rangkas"
+- rgn "Romagnol"
+- rgr "Resígaro"
+- rgs "Southern Roglai"
+- rgu "Ringgou"
+- rhg "Rohingya"
+- rhp "Yahang"
+- ria "Riang (India)"
+- rie "Rien"
+- rif "Tarifit"
+- ril "Riang (Myanmar)"
+- rim "Nyaturu"
+- rin "Nungu"
+- rir "Ribun"
+- rit "Ritarungo"
+- riu "Riung"
+- rjg "Rajong"
+- rji "Raji"
+- rjs "Rajbanshi"
+- rka "Kraol"
+- rkb "Rikbaktsa"
+- rkh "Rakahanga-Manihiki"
+- rki "Rakhine"
+- rkm "Marka"
+- rkt "Rangpuri"
+- rma "Rama"
+- rmb "Rembarunga"
+- rmc "Carpathian Romani"
+- rmd "Traveller Danish"
+- rme "Angloromani"
+- rmf "Kalo Finnish Romani"
+- rmg "Traveller Norwegian"
+- rmh "Murkim"
+- rmi "Lomavren"
+- rmk "Romkun"
+- rml "Baltic Romani"
+- rmm "Roma"
+- rmn "Balkan Romani"
+- rmo "Sinte Romani"
+- rmp "Rempi"
+- rmq "Caló"
+- rms "Romanian Sign Language"
+- rmt "Domari"
+- rmu "Tavringer Romani"
+- rmv "Romanova"
+- rmw "Welsh Romani"
+- rmx "Romam"
+- rmy "Vlax Romani"
+- rmz "Marma"
+- rna "Runa"
+- rnd "Ruund"
+- rng "Ronga"
+- rnl "Ranglong"
+- rnn "Roon"
+- rnp "Rongpo"
+- rnw "Rungwa"
+- rob "Tae'"
+- roc "Cacgia Roglai"
+- rod "Rogo"
+- roe "Ronji"
+- rof "Rombo"
+- rog "Northern Roglai"
+rm roh "Romansh"
+- rol "Romblomanon"
+- rom "Romany"
+ro ron "Romanian"
+- roo "Rotokas"
+- rop "Kriol"
+- ror "Rongga"
+- rou "Runga"
+- row "Dela-Oenale"
+- rpn "Repanbitip"
+- rpt "Rapting"
+- rri "Ririo"
+- rro "Waima"
+- rsb "Romano-Serbian"
+- rsi "Rennellese Sign Language"
+- rsl "Russian Sign Language"
+- rth "Ratahan"
+- rtm "Rotuman"
+- rtw "Rathawi"
+- rub "Gungu"
+- ruc "Ruuli"
+- rue "Rusyn"
+- ruf "Luguru"
+- rug "Roviana"
+- ruh "Ruga"
+- rui "Rufiji"
+- ruk "Che"
+rn run "Rundi"
+- ruo "Istro Romanian"
+- rup "Macedo-Romanian"
+- ruq "Megleno Romanian"
+ru rus "Russian"
+- rut "Rutul"
+- ruu "Lanas Lobu"
+- ruy "Mala (Nigeria)"
+- ruz "Ruma"
+- rwa "Rawo"
+- rwk "Rwa"
+- rwm "Amba (Uganda)"
+- rwo "Rawa"
+- rwr "Marwari (India)"
+- ryn "Northern Amami-Oshima"
+- rys "Yaeyama"
+- ryu "Central Okinawan"
+- saa "Saba"
+- sab "Buglere"
+- sac "Meskwaki"
+- sad "Sandawe"
+- sae "Sabanê"
+- saf "Safaliba"
+sg sag "Sango"
+- sah "Yakut"
+- saj "Sahu"
+- sak "Sake"
+- sam "Samaritan Aramaic"
+sa san "Sanskrit"
+- sao "Sause"
+- sap "Sanapaná"
+- saq "Samburu"
+- sar "Saraveca"
+- sas "Sasak"
+- sat "Santali"
+- sau "Saleman"
+- sav "Saafi-Saafi"
+- saw "Sawi"
+- sax "Sa"
+- say "Saya"
+- saz "Saurashtra"
+- sba "Ngambay"
+- sbb "Simbo"
+- sbc "Kele (Papua New Guinea)"
+- sbd "Southern Samo"
+- sbe "Saliba"
+- sbf "Shabo"
+- sbg "Seget"
+- sbh "Sori-Harengan"
+- sbi "Seti"
+- sbj "Surbakhal"
+- sbk "Safwa"
+- sbl "Botolan Sambal"
+- sbm "Sagala"
+- sbn "Sindhi Bhil"
+- sbo "Sabüm"
+- sbp "Sangu (Tanzania)"
+- sbq "Sileibi"
+- sbr "Sembakung Murut"
+- sbs "Subiya"
+- sbt "Kimki"
+- sbu "Stod Bhoti"
+- sbv "Sabine"
+- sbw "Simba"
+- sbx "Seberuang"
+- sby "Soli"
+- sbz "Sara Kaba"
+- sca "Sansu"
+- scb "Chut"
+- sce "Dongxiang"
+- scf "San Miguel Creole French"
+- scg "Sanggau"
+- sch "Sakachep"
+- sci "Sri Lankan Creole Malay"
+- sck "Sadri"
+- scl "Shina"
+- scn "Sicilian"
+- sco "Scots"
+- scp "Helambu Sherpa"
+- scq "Sa'och"
+- scs "North Slavey"
+- scu "Shumcho"
+- scv "Sheni"
+- scw "Sha"
+- scx "Sicel"
+- sda "Toraja-Sa'dan"
+- sdb "Shabak"
+- sdc "Sassarese Sardinian"
+- sde "Surubu"
+- sdf "Sarli"
+- sdg "Savi"
+- sdh "Southern Kurdish"
+- sdj "Suundi"
+- sdk "Sos Kundi"
+- sdl "Saudi Arabian Sign Language"
+- sdm "Semandang"
+- sdn "Gallurese Sardinian"
+- sdo "Bukar-Sadung Bidayuh"
+- sdp "Sherdukpen"
+- sdr "Oraon Sadri"
+- sds "Sened"
+- sdt "Shuadit"
+- sdu "Sarudu"
+- sdx "Sibu Melanau"
+- sdz "Sallands"
+- sea "Semai"
+- seb "Shempire Senoufo"
+- sec "Sechelt"
+- sed "Sedang"
+- see "Seneca"
+- sef "Cebaara Senoufo"
+- seg "Segeju"
+- seh "Sena"
+- sei "Seri"
+- sej "Sene"
+- sek "Sekani"
+- sel "Selkup"
+- sen "Nanerigé Sénoufo"
+- seo "Suarmin"
+- sep "Sìcìté Sénoufo"
+- seq "Senara Sénoufo"
+- ser "Serrano"
+- ses "Koyraboro Senni Songhai"
+- set "Sentani"
+- seu "Serui-Laut"
+- sev "Nyarafolo Senoufo"
+- sew "Sewa Bay"
+- sey "Secoya"
+- sez "Senthang Chin"
+- sfb "Langue des signes de Belgique Francophone"
+- sfm "Small Flowery Miao"
+- sfs "South African Sign Language"
+- sfw "Sehwi"
+- sga "Old Irish (to 900)"
+- sgb "Mag-antsi Ayta"
+- sgc "Kipsigis"
+- sgd "Surigaonon"
+- sge "Segai"
+- sgg "Swiss-German Sign Language"
+- sgh "Shughni"
+- sgi "Suga"
+- sgk "Sangkong"
+- sgm "Singa"
+- sgo "Songa"
+- sgp "Singpho"
+- sgr "Sangisari"
+- sgs "Samogitian"
+- sgt "Brokpake"
+- sgu "Salas"
+- sgw "Sebat Bet Gurage"
+- sgx "Sierra Leone Sign Language"
+- sgy "Sanglechi"
+- sgz "Sursurunga"
+- sha "Shall-Zwall"
+- shb "Ninam"
+- shc "Sonde"
+- shd "Kundal Shahi"
+- she "Sheko"
+- shg "Shua"
+- shh "Shoshoni"
+- shi "Tachelhit"
+- shj "Shatt"
+- shk "Shilluk"
+- shl "Shendu"
+- shm "Shahrudi"
+- shn "Shan"
+- sho "Shanga"
+- shp "Shipibo-Conibo"
+- shq "Sala"
+- shr "Shi"
+- shs "Shuswap"
+- sht "Shasta"
+- shu "Chadian Arabic"
+- shv "Shehri"
+- shw "Shwai"
+- shx "She"
+- shy "Tachawit"
+- shz "Syenara Senoufo"
+- sia "Akkala Sami"
+- sib "Sebop"
+- sid "Sidamo"
+- sie "Simaa"
+- sif "Siamou"
+- sig "Paasaal"
+- sih "Zire"
+- sii "Shom Peng"
+- sij "Numbami"
+- sik "Sikiana"
+- sil "Tumulung Sisaala"
+- sim "Mende (Papua New Guinea)"
+si sin "Sinhala"
+- sip "Sikkimese"
+- siq "Sonia"
+- sir "Siri"
+- sis "Siuslaw"
+- siu "Sinagen"
+- siv "Sumariup"
+- siw "Siwai"
+- six "Sumau"
+- siy "Sivandi"
+- siz "Siwi"
+- sja "Epena"
+- sjb "Sajau Basap"
+- sjd "Kildin Sami"
+- sje "Pite Sami"
+- sjg "Assangori"
+- sjk "Kemi Sami"
+- sjl "Sajalong"
+- sjm "Mapun"
+- sjn "Sindarin"
+- sjo "Xibe"
+- sjp "Surjapuri"
+- sjr "Siar-Lak"
+- sjs "Senhaja De Srair"
+- sjt "Ter Sami"
+- sju "Ume Sami"
+- sjw "Shawnee"
+- ska "Skagit"
+- skb "Saek"
+- skc "Sauk"
+- skd "Southern Sierra Miwok"
+- ske "Seke (Vanuatu)"
+- skf "Sakirabiá"
+- skg "Sakalava Malagasy"
+- skh "Sikule"
+- ski "Sika"
+- skj "Seke (Nepal)"
+- skk "Sok"
+- skm "Sakam"
+- skn "Kolibugan Subanon"
+- sko "Seko Tengah"
+- skp "Sekapan"
+- skq "Sininkere"
+- skr "Seraiki"
+- sks "Maia"
+- skt "Sakata"
+- sku "Sakao"
+- skv "Skou"
+- skw "Skepi Creole Dutch"
+- skx "Seko Padang"
+- sky "Sikaiana"
+- skz "Sekar"
+- slc "Sáliba"
+- sld "Sissala"
+- sle "Sholaga"
+- slf "Swiss-Italian Sign Language"
+- slg "Selungai Murut"
+- slh "Southern Puget Sound Salish"
+- sli "Lower Silesian"
+- slj "Salumá"
+sk slk "Slovak"
+- sll "Salt-Yui"
+- slm "Pangutaran Sama"
+- sln "Salinan"
+- slp "Lamaholot"
+- slq "Salchuq"
+- slr "Salar"
+- sls "Singapore Sign Language"
+- slt "Sila"
+- slu "Selaru"
+sl slv "Slovenian"
+- slw "Sialum"
+- slx "Salampasu"
+- sly "Selayar"
+- slz "Ma'ya"
+- sma "Southern Sami"
+- smb "Simbari"
+- smc "Som"
+- smd "Sama"
+se sme "Northern Sami"
+- smf "Auwe"
+- smg "Simbali"
+- smh "Samei"
+- smj "Lule Sami"
+- smk "Bolinao"
+- sml "Central Sama"
+- smm "Musasa"
+- smn "Inari Sami"
+sm smo "Samoan"
+- smp "Samaritan"
+- smq "Samo"
+- smr "Simeulue"
+- sms "Skolt Sami"
+- smt "Simte"
+- smu "Somray"
+- smv "Samvedi"
+- smw "Sumbawa"
+- smx "Samba"
+- smy "Semnani"
+- smz "Simeku"
+sn sna "Shona"
+- snb "Sebuyau"
+- snc "Sinaugoro"
+sd snd "Sindhi"
+- sne "Bau Bidayuh"
+- snf "Noon"
+- sng "Sanga (Democratic Republic of Congo)"
+- snh "Shinabo"
+- sni "Sensi"
+- snj "Riverain Sango"
+- snk "Soninke"
+- snl "Sangil"
+- snm "Southern Ma'di"
+- snn "Siona"
+- sno "Snohomish"
+- snp "Siane"
+- snq "Sangu (Gabon)"
+- snr "Sihan"
+- sns "South West Bay"
+- snu "Senggi"
+- snv "Sa'ban"
+- snw "Selee"
+- snx "Sam"
+- sny "Saniyo-Hiyewe"
+- snz "Sinsauru"
+- soa "Thai Song"
+- sob "Sobei"
+- soc "So (Democratic Republic of Congo)"
+- sod "Songoora"
+- soe "Songomeno"
+- sog "Sogdian"
+- soh "Aka"
+- soi "Sonha"
+- soj "Soi"
+- sok "Sokoro"
+- sol "Solos"
+so som "Somali"
+- soo "Songo"
+- sop "Songe"
+- soq "Kanasi"
+- sor "Somrai"
+- sos "Seeku"
+st sot "Southern Sotho"
+- sou "Southern Thai"
+- sov "Sonsorol"
+- sow "Sowanda"
+- sox "So (Cameroon)"
+- soy "Miyobe"
+- soz "Temi"
+es spa "Spanish"
+- spb "Sepa (Indonesia)"
+- spc "Sapé"
+- spd "Saep"
+- spe "Sepa (Papua New Guinea)"
+- spg "Sian"
+- spi "Saponi"
+- spk "Sengo"
+- spl "Selepet"
+- spm "Sepen"
+- spo "Spokane"
+- spp "Supyire Senoufo"
+- spq "Loreto-Ucayali Spanish"
+- spr "Saparua"
+- sps "Saposa"
+- spt "Spiti Bhoti"
+- spu "Sapuan"
+- spx "South Picene"
+- spy "Sabaot"
+- sqa "Shama-Sambuga"
+- sqh "Shau"
+sq sqi "Albanian"
+- sqm "Suma"
+- sqn "Susquehannock"
+- sqo "Sorkhei"
+- sqq "Sou"
+- sqr "Siculo Arabic"
+- sqs "Sri Lankan Sign Language"
+- sqt "Soqotri"
+- squ "Squamish"
+- sra "Saruga"
+- srb "Sora"
+- src "Logudorese Sardinian"
+sc srd "Sardinian"
+- sre "Sara"
+- srf "Nafi"
+- srg "Sulod"
+- srh "Sarikoli"
+- sri "Siriano"
+- srk "Serudung Murut"
+- srl "Isirawa"
+- srm "Saramaccan"
+- srn "Sranan Tongo"
+- sro "Campidanese Sardinian"
+sr srp "Serbian"
+- srq "Sirionó"
+- srr "Serer"
+- srs "Sarsi"
+- srt "Sauri"
+- sru "Suruí"
+- srv "Southern Sorsoganon"
+- srw "Serua"
+- srx "Sirmauri"
+- sry "Sera"
+- srz "Shahmirzadi"
+- ssb "Southern Sama"
+- ssc "Suba-Simbiti"
+- ssd "Siroi"
+- sse "Balangingi"
+- ssf "Thao"
+- ssg "Seimat"
+- ssh "Shihhi Arabic"
+- ssi "Sansi"
+- ssj "Sausi"
+- ssk "Sunam"
+- ssl "Western Sisaala"
+- ssm "Semnam"
+- ssn "Waata"
+- sso "Sissano"
+- ssp "Spanish Sign Language"
+- ssq "So'a"
+- ssr "Swiss-French Sign Language"
+- sss "Sô"
+- sst "Sinasina"
+- ssu "Susuami"
+- ssv "Shark Bay"
+ss ssw "Swati"
+- ssx "Samberigi"
+- ssy "Saho"
+- ssz "Sengseng"
+- sta "Settla"
+- stb "Northern Subanen"
+- std "Sentinel"
+- ste "Liana-Seti"
+- stf "Seta"
+- stg "Trieng"
+- sth "Shelta"
+- sti "Bulo Stieng"
+- stj "Matya Samo"
+- stk "Arammba"
+- stl "Stellingwerfs"
+- stm "Setaman"
+- stn "Owa"
+- sto "Stoney"
+- stp "Southeastern Tepehuan"
+- stq "Saterfriesisch"
+- str "Straits Salish"
+- sts "Shumashti"
+- stt "Budeh Stieng"
+- stu "Samtao"
+- stv "Silt'e"
+- stw "Satawalese"
+- sua "Sulka"
+- sub "Suku"
+- suc "Western Subanon"
+- sue "Suena"
+- sug "Suganga"
+- sui "Suki"
+- suj "Shubi"
+- suk "Sukuma"
+su sun "Sundanese"
+- suq "Suri"
+- sur "Mwaghavul"
+- sus "Susu"
+- sut "Subtiaba"
+- suv "Sulung"
+- suw "Sumbwa"
+- sux "Sumerian"
+- suy "Suyá"
+- suz "Sunwar"
+- sva "Svan"
+- svb "Ulau-Suain"
+- svc "Vincentian Creole English"
+- sve "Serili"
+- svk "Slovakian Sign Language"
+- svr "Savara"
+- svs "Savosavo"
+- svx "Skalvian"
+sw swa "Swahili (macrolanguage)"
+- swb "Maore Comorian"
+- swc "Congo Swahili"
+sv swe "Swedish"
+- swf "Sere"
+- swg "Swabian"
+- swh "Swahili (individual language)"
+- swi "Sui"
+- swj "Sira"
+- swk "Malawi Sena"
+- swl "Swedish Sign Language"
+- swm "Samosa"
+- swn "Sawknah"
+- swo "Shanenawa"
+- swp "Suau"
+- swq "Sharwa"
+- swr "Saweru"
+- sws "Seluwasan"
+- swt "Sawila"
+- swu "Suwawa"
+- swv "Shekhawati"
+- sww "Sowa"
+- swx "Suruahá"
+- swy "Sarua"
+- sxb "Suba"
+- sxc "Sicanian"
+- sxe "Sighu"
+- sxg "Shixing"
+- sxk "Southern Kalapuya"
+- sxl "Selian"
+- sxm "Samre"
+- sxn "Sangir"
+- sxo "Sorothaptic"
+- sxr "Saaroa"
+- sxs "Sasaru"
+- sxu "Upper Saxon"
+- sxw "Saxwe Gbe"
+- sya "Siang"
+- syb "Central Subanen"
+- syc "Classical Syriac"
+- syi "Seki"
+- syk "Sukur"
+- syl "Sylheti"
+- sym "Maya Samo"
+- syn "Senaya"
+- syo "Suoy"
+- syr "Syriac"
+- sys "Sinyar"
+- syw "Kagate"
+- syy "Al-Sayyid Bedouin Sign Language"
+- sza "Semelai"
+- szb "Ngalum"
+- szc "Semaq Beri"
+- szd "Seru"
+- sze "Seze"
+- szg "Sengele"
+- szl "Silesian"
+- szn "Sula"
+- szp "Suabo"
+- szv "Isu (Fako Division)"
+- szw "Sawai"
+- taa "Lower Tanana"
+- tab "Tabassaran"
+- tac "Lowland Tarahumara"
+- tad "Tause"
+- tae "Tariana"
+- taf "Tapirapé"
+- tag "Tagoi"
+ty tah "Tahitian"
+- taj "Eastern Tamang"
+- tak "Tala"
+- tal "Tal"
+ta tam "Tamil"
+- tan "Tangale"
+- tao "Yami"
+- tap "Taabwa"
+- taq "Tamasheq"
+- tar "Central Tarahumara"
+- tas "Tay Boi"
+tt tat "Tatar"
+- tau "Upper Tanana"
+- tav "Tatuyo"
+- taw "Tai"
+- tax "Tamki"
+- tay "Atayal"
+- taz "Tocho"
+- tba "Aikanã"
+- tbb "Tapeba"
+- tbc "Takia"
+- tbd "Kaki Ae"
+- tbe "Tanimbili"
+- tbf "Mandara"
+- tbg "North Tairora"
+- tbh "Thurawal"
+- tbi "Gaam"
+- tbj "Tiang"
+- tbk "Calamian Tagbanwa"
+- tbl "Tboli"
+- tbm "Tagbu"
+- tbn "Barro Negro Tunebo"
+- tbo "Tawala"
+- tbp "Taworta"
+- tbr "Tumtum"
+- tbs "Tanguat"
+- tbt "Tembo (Kitembo)"
+- tbu "Tubar"
+- tbv "Tobo"
+- tbw "Tagbanwa"
+- tbx "Kapin"
+- tby "Tabaru"
+- tbz "Ditammari"
+- tca "Ticuna"
+- tcb "Tanacross"
+- tcc "Datooga"
+- tcd "Tafi"
+- tce "Southern Tutchone"
+- tcf "Malinaltepec Me'phaa"
+- tcg "Tamagario"
+- tch "Turks And Caicos Creole English"
+- tci "Wára"
+- tck "Tchitchege"
+- tcl "Taman (Myanmar)"
+- tcm "Tanahmerah"
+- tcn "Tichurong"
+- tco "Taungyo"
+- tcp "Tawr Chin"
+- tcq "Kaiy"
+- tcs "Torres Strait Creole"
+- tct "T'en"
+- tcu "Southeastern Tarahumara"
+- tcw "Tecpatlán Totonac"
+- tcx "Toda"
+- tcy "Tulu"
+- tcz "Thado Chin"
+- tda "Tagdal"
+- tdb "Panchpargania"
+- tdc "Emberá-Tadó"
+- tdd "Tai Nüa"
+- tde "Tiranige Diga Dogon"
+- tdf "Talieng"
+- tdg "Western Tamang"
+- tdh "Thulung"
+- tdi "Tomadino"
+- tdj "Tajio"
+- tdk "Tambas"
+- tdl "Sur"
+- tdn "Tondano"
+- tdo "Teme"
+- tdq "Tita"
+- tdr "Todrah"
+- tds "Doutai"
+- tdt "Tetun Dili"
+- tdu "Tempasuk Dusun"
+- tdv "Toro"
+- tdx "Tandroy-Mahafaly Malagasy"
+- tdy "Tadyawan"
+- tea "Temiar"
+- teb "Tetete"
+- tec "Terik"
+- ted "Tepo Krumen"
+- tee "Huehuetla Tepehua"
+- tef "Teressa"
+- teg "Teke-Tege"
+- teh "Tehuelche"
+- tei "Torricelli"
+- tek "Ibali Teke"
+te tel "Telugu"
+- tem "Timne"
+- ten "Tama (Colombia)"
+- teo "Teso"
+- tep "Tepecano"
+- teq "Temein"
+- ter "Tereno"
+- tes "Tengger"
+- tet "Tetum"
+- teu "Soo"
+- tev "Teor"
+- tew "Tewa (USA)"
+- tex "Tennet"
+- tey "Tulishi"
+- tfi "Tofin Gbe"
+- tfn "Tanaina"
+- tfo "Tefaro"
+- tfr "Teribe"
+- tft "Ternate"
+- tga "Sagalla"
+- tgb "Tobilung"
+- tgc "Tigak"
+- tgd "Ciwogai"
+- tge "Eastern Gorkha Tamang"
+- tgf "Chalikha"
+- tgg "Tangga"
+- tgh "Tobagonian Creole English"
+- tgi "Lawunuia"
+tg tgk "Tajik"
+tl tgl "Tagalog"
+- tgn "Tandaganon"
+- tgo "Sudest"
+- tgp "Tangoa"
+- tgq "Tring"
+- tgr "Tareng"
+- tgs "Nume"
+- tgt "Central Tagbanwa"
+- tgu "Tanggu"
+- tgv "Tingui-Boto"
+- tgw "Tagwana Senoufo"
+- tgx "Tagish"
+- tgy "Togoyo"
+th tha "Thai"
+- thc "Tai Hang Tong"
+- thd "Thayore"
+- the "Chitwania Tharu"
+- thf "Thangmi"
+- thh "Northern Tarahumara"
+- thi "Tai Long"
+- thk "Tharaka"
+- thl "Dangaura Tharu"
+- thm "Aheu"
+- thn "Thachanadan"
+- thp "Thompson"
+- thq "Kochila Tharu"
+- thr "Rana Tharu"
+- ths "Thakali"
+- tht "Tahltan"
+- thu "Thuri"
+- thv "Tahaggart Tamahaq"
+- thw "Thudam"
+- thx "The"
+- thy "Tha"
+- thz "Tayart Tamajeq"
+- tia "Tidikelt Tamazight"
+- tic "Tira"
+- tid "Tidong"
+- tie "Tingal"
+- tif "Tifal"
+- tig "Tigre"
+- tih "Timugon Murut"
+- tii "Tiene"
+- tij "Tilung"
+- tik "Tikar"
+- til "Tillamook"
+- tim "Timbe"
+- tin "Tindi"
+- tio "Teop"
+- tip "Trimuris"
+- tiq "Tiéfo"
+ti tir "Tigrinya"
+- tis "Masadiit Itneg"
+- tit "Tinigua"
+- tiu "Adasen"
+- tiv "Tiv"
+- tiw "Tiwi"
+- tix "Southern Tiwa"
+- tiy "Tiruray"
+- tiz "Tai Hongjin"
+- tja "Tajuasohn"
+- tjg "Tunjung"
+- tji "Northern Tujia"
+- tjm "Timucua"
+- tjn "Tonjon"
+- tjo "Temacine Tamazight"
+- tjs "Southern Tujia"
+- tju "Tjurruru"
+- tka "Truká"
+- tkb "Buksa"
+- tkd "Tukudede"
+- tke "Takwane"
+- tkf "Tukumanféd"
+- tkk "Takpa"
+- tkl "Tokelau"
+- tkm "Takelma"
+- tkn "Toku-No-Shima"
+- tkp "Tikopia"
+- tkq "Tee"
+- tkr "Tsakhur"
+- tks "Takestani"
+- tkt "Kathoriya Tharu"
+- tku "Upper Necaxa Totonac"
+- tkw "Teanu"
+- tkx "Tangko"
+- tkz "Takua"
+- tla "Southwestern Tepehuan"
+- tlb "Tobelo"
+- tlc "Yecuatla Totonac"
+- tld "Talaud"
+- tlf "Telefol"
+- tlg "Tofanma"
+- tlh "Klingon"
+- tli "Tlingit"
+- tlj "Talinga-Bwisi"
+- tlk "Taloki"
+- tll "Tetela"
+- tlm "Tolomako"
+- tln "Talondo'"
+- tlo "Talodi"
+- tlp "Filomena Mata-Coahuitlán Totonac"
+- tlq "Tai Loi"
+- tlr "Talise"
+- tls "Tambotalo"
+- tlt "Teluti"
+- tlu "Tulehu"
+- tlv "Taliabu"
+- tlw "South Wemale"
+- tlx "Khehek"
+- tly "Talysh"
+- tma "Tama (Chad)"
+- tmb "Katbol"
+- tmc "Tumak"
+- tmd "Haruai"
+- tme "Tremembé"
+- tmf "Toba-Maskoy"
+- tmg "Ternateño"
+- tmh "Tamashek"
+- tmi "Tutuba"
+- tmj "Samarokena"
+- tmk "Northwestern Tamang"
+- tml "Tamnim Citak"
+- tmm "Tai Thanh"
+- tmn "Taman (Indonesia)"
+- tmo "Temoq"
+- tmp "Tai Mène"
+- tmq "Tumleo"
+- tmr "Jewish Babylonian Aramaic (ca. 200-1200 CE)"
+- tms "Tima"
+- tmt "Tasmate"
+- tmu "Iau"
+- tmv "Tembo (Motembo)"
+- tmw "Temuan"
+- tmy "Tami"
+- tmz "Tamanaku"
+- tna "Tacana"
+- tnb "Western Tunebo"
+- tnc "Tanimuca-Retuarã"
+- tnd "Angosturas Tunebo"
+- tne "Tinoc Kallahan"
+- tng "Tobanga"
+- tnh "Maiani"
+- tni "Tandia"
+- tnk "Kwamera"
+- tnl "Lenakel"
+- tnm "Tabla"
+- tnn "North Tanna"
+- tno "Toromono"
+- tnp "Whitesands"
+- tnq "Taino"
+- tnr "Bedik"
+- tns "Tenis"
+- tnt "Tontemboan"
+- tnu "Tay Khang"
+- tnv "Tangchangya"
+- tnw "Tonsawang"
+- tnx "Tanema"
+- tny "Tongwe"
+- tnz "Tonga (Thailand)"
+- tob "Toba"
+- toc "Coyutla Totonac"
+- tod "Toma"
+- toe "Tomedes"
+- tof "Gizrra"
+- tog "Tonga (Nyasa)"
+- toh "Gitonga"
+- toi "Tonga (Zambia)"
+- toj "Tojolabal"
+- tol "Tolowa"
+- tom "Tombulu"
+to ton "Tonga (Tonga Islands)"
+- too "Xicotepec De Juárez Totonac"
+- top "Papantla Totonac"
+- toq "Toposa"
+- tor "Togbo-Vara Banda"
+- tos "Highland Totonac"
+- tou "Tho"
+- tov "Upper Taromi"
+- tow "Jemez"
+- tox "Tobian"
+- toy "Topoiyo"
+- toz "To"
+- tpa "Taupota"
+- tpc "Azoyú Me'phaa"
+- tpe "Tippera"
+- tpf "Tarpia"
+- tpg "Kula"
+- tpi "Tok Pisin"
+- tpj "Tapieté"
+- tpk "Tupinikin"
+- tpl "Tlacoapa Me'phaa"
+- tpm "Tampulma"
+- tpn "Tupinambá"
+- tpo "Tai Pao"
+- tpp "Pisaflores Tepehua"
+- tpq "Tukpa"
+- tpr "Tuparí"
+- tpt "Tlachichilco Tepehua"
+- tpu "Tampuan"
+- tpv "Tanapag"
+- tpw "Tupí"
+- tpx "Acatepec Me'phaa"
+- tpy "Trumai"
+- tpz "Tinputz"
+- tqb "Tembé"
+- tql "Lehali"
+- tqm "Turumsa"
+- tqn "Tenino"
+- tqo "Toaripi"
+- tqp "Tomoip"
+- tqq "Tunni"
+- tqr "Torona"
+- tqt "Western Totonac"
+- tqu "Touo"
+- tqw "Tonkawa"
+- tra "Tirahi"
+- trb "Terebu"
+- trc "Copala Triqui"
+- trd "Turi"
+- tre "East Tarangan"
+- trf "Trinidadian Creole English"
+- trg "Lishán Didán"
+- trh "Turaka"
+- tri "Trió"
+- trj "Toram"
+- trl "Traveller Scottish"
+- trm "Tregami"
+- trn "Trinitario"
+- tro "Tarao Naga"
+- trp "Kok Borok"
+- trq "San Martín Itunyoso Triqui"
+- trr "Taushiro"
+- trs "Chicahuaxtla Triqui"
+- trt "Tunggare"
+- tru "Turoyo"
+- trv "Taroko"
+- trw "Torwali"
+- trx "Tringgus-Sembaan Bidayuh"
+- try "Turung"
+- trz "Torá"
+- tsa "Tsaangi"
+- tsb "Tsamai"
+- tsc "Tswa"
+- tsd "Tsakonian"
+- tse "Tunisian Sign Language"
+- tsf "Southwestern Tamang"
+- tsg "Tausug"
+- tsh "Tsuvan"
+- tsi "Tsimshian"
+- tsj "Tshangla"
+- tsk "Tseku"
+- tsl "Ts'ün-Lao"
+- tsm "Turkish Sign Language"
+tn tsn "Tswana"
+ts tso "Tsonga"
+- tsp "Northern Toussian"
+- tsq "Thai Sign Language"
+- tsr "Akei"
+- tss "Taiwan Sign Language"
+- tsu "Tsou"
+- tsv "Tsogo"
+- tsw "Tsishingini"
+- tsx "Mubami"
+- tsy "Tebul Sign Language"
+- tsz "Purepecha"
+- tta "Tutelo"
+- ttb "Gaa"
+- ttc "Tektiteko"
+- ttd "Tauade"
+- tte "Bwanabwana"
+- ttf "Tuotomb"
+- ttg "Tutong"
+- tth "Upper Ta'oih"
+- tti "Tobati"
+- ttj "Tooro"
+- ttk "Totoro"
+- ttl "Totela"
+- ttm "Northern Tutchone"
+- ttn "Towei"
+- tto "Lower Ta'oih"
+- ttp "Tombelala"
+- ttq "Tawallammat Tamajaq"
+- ttr "Tera"
+- tts "Northeastern Thai"
+- ttt "Muslim Tat"
+- ttu "Torau"
+- ttv "Titan"
+- ttw "Long Wat"
+- tty "Sikaritai"
+- ttz "Tsum"
+- tua "Wiarumus"
+- tub "Tübatulabal"
+- tuc "Mutu"
+- tud "Tuxá"
+- tue "Tuyuca"
+- tuf "Central Tunebo"
+- tug "Tunia"
+- tuh "Taulil"
+- tui "Tupuri"
+- tuj "Tugutil"
+tk tuk "Turkmen"
+- tul "Tula"
+- tum "Tumbuka"
+- tun "Tunica"
+- tuo "Tucano"
+- tuq "Tedaga"
+tr tur "Turkish"
+- tus "Tuscarora"
+- tuu "Tututni"
+- tuv "Turkana"
+- tux "Tuxináwa"
+- tuy "Tugen"
+- tuz "Turka"
+- tva "Vaghua"
+- tvd "Tsuvadi"
+- tve "Te'un"
+- tvk "Southeast Ambrym"
+- tvl "Tuvalu"
+- tvm "Tela-Masbuar"
+- tvn "Tavoyan"
+- tvo "Tidore"
+- tvs "Taveta"
+- tvt "Tutsa Naga"
+- tvw "Sedoa"
+- tvy "Timor Pidgin"
+- twa "Twana"
+- twb "Western Tawbuid"
+- twc "Teshenawa"
+- twd "Twents"
+- twe "Tewa (Indonesia)"
+- twf "Northern Tiwa"
+- twg "Tereweng"
+- twh "Tai Dón"
+tw twi "Twi"
+- twl "Tawara"
+- twm "Tawang Monpa"
+- twn "Twendi"
+- two "Tswapong"
+- twp "Ere"
+- twq "Tasawaq"
+- twr "Southwestern Tarahumara"
+- twt "Turiwára"
+- twu "Termanu"
+- tww "Tuwari"
+- twx "Tewe"
+- twy "Tawoyan"
+- txa "Tombonuo"
+- txb "Tokharian B"
+- txc "Tsetsaut"
+- txe "Totoli"
+- txg "Tangut"
+- txh "Thracian"
+- txi "Ikpeng"
+- txm "Tomini"
+- txn "West Tarangan"
+- txo "Toto"
+- txq "Tii"
+- txr "Tartessian"
+- txs "Tonsea"
+- txt "Citak"
+- txu "Kayapó"
+- txx "Tatana"
+- txy "Tanosy Malagasy"
+- tya "Tauya"
+- tye "Kyenga"
+- tyh "O'du"
+- tyi "Teke-Tsaayi"
+- tyj "Tai Do"
+- tyl "Thu Lao"
+- tyn "Kombai"
+- typ "Thaypan"
+- tyr "Tai Daeng"
+- tys "Tày Sa Pa"
+- tyt "Tày Tac"
+- tyu "Kua"
+- tyv "Tuvinian"
+- tyx "Teke-Tyee"
+- tyz "Tày"
+- tza "Tanzanian Sign Language"
+- tzh "Tzeltal"
+- tzj "Tz'utujil"
+- tzm "Central Atlas Tamazight"
+- tzn "Tugun"
+- tzo "Tzotzil"
+- tzx "Tabriak"
+- uam "Uamué"
+- uan "Kuan"
+- uar "Tairuma"
+- uba "Ubang"
+- ubi "Ubi"
+- ubl "Buhi'non Bikol"
+- ubr "Ubir"
+- ubu "Umbu-Ungu"
+- uby "Ubykh"
+- uda "Uda"
+- ude "Udihe"
+- udg "Muduga"
+- udi "Udi"
+- udj "Ujir"
+- udl "Wuzlam"
+- udm "Udmurt"
+- udu "Uduk"
+- ues "Kioko"
+- ufi "Ufim"
+- uga "Ugaritic"
+- ugb "Kuku-Ugbanh"
+- uge "Ughele"
+- ugn "Ugandan Sign Language"
+- ugo "Ugong"
+- ugy "Uruguayan Sign Language"
+- uha "Uhami"
+- uhn "Damal"
+ug uig "Uighur"
+- uis "Uisai"
+- uiv "Iyive"
+- uji "Tanjijili"
+- uka "Kaburi"
+- ukg "Ukuriguma"
+- ukh "Ukhwejo"
+- ukl "Ukrainian Sign Language"
+- ukp "Ukpe-Bayobiri"
+- ukq "Ukwa"
+uk ukr "Ukrainian"
+- uks "Urubú-Kaapor Sign Language"
+- uku "Ukue"
+- ukw "Ukwuani-Aboh-Ndoni"
+- ula "Fungwa"
+- ulb "Ulukwumi"
+- ulc "Ulch"
+- ulf "Usku"
+- uli "Ulithian"
+- ulk "Meriam"
+- ull "Ullatan"
+- ulm "Ulumanda'"
+- uln "Unserdeutsch"
+- ulu "Uma' Lung"
+- ulw "Ulwa"
+- uma "Umatilla"
+- umb "Umbundu"
+- umc "Marrucinian"
+- umd "Umbindhamu"
+- umg "Umbuygamu"
+- umi "Ukit"
+- umm "Umon"
+- umn "Makyan Naga"
+- umo "Umotína"
+- ump "Umpila"
+- umr "Umbugarla"
+- ums "Pendau"
+- umu "Munsee"
+- una "North Watut"
+- und "Undetermined"
+- une "Uneme"
+- ung "Ngarinyin"
+- unk "Enawené-Nawé"
+- unm "Unami"
+- unp "Worora"
+- unr "Mundari"
+- unx "Munda"
+- unz "Unde Kaili"
+- uok "Uokha"
+- upi "Umeda"
+- upv "Uripiv-Wala-Rano-Atchin"
+- ura "Urarina"
+- urb "Urubú-Kaapor"
+- urc "Urningangg"
+ur urd "Urdu"
+- ure "Uru"
+- urf "Uradhi"
+- urg "Urigina"
+- urh "Urhobo"
+- uri "Urim"
+- urk "Urak Lawoi'"
+- url "Urali"
+- urm "Urapmin"
+- urn "Uruangnirin"
+- uro "Ura (Papua New Guinea)"
+- urp "Uru-Pa-In"
+- urr "Lehalurup"
+- urt "Urat"
+- uru "Urumi"
+- urv "Uruava"
+- urw "Sop"
+- urx "Urimo"
+- ury "Orya"
+- urz "Uru-Eu-Wau-Wau"
+- usa "Usarufa"
+- ush "Ushojo"
+- usi "Usui"
+- usk "Usaghade"
+- usp "Uspanteco"
+- usu "Uya"
+- uta "Otank"
+- ute "Ute-Southern Paiute"
+- utp "Amba (Solomon Islands)"
+- utr "Etulo"
+- utu "Utu"
+- uum "Urum"
+- uun "Kulon-Pazeh"
+- uur "Ura (Vanuatu)"
+- uuu "U"
+- uve "West Uvean"
+- uvh "Uri"
+- uvl "Lote"
+- uwa "Kuku-Uwanh"
+- uya "Doko-Uyanga"
+uz uzb "Uzbek"
+- uzn "Northern Uzbek"
+- uzs "Southern Uzbek"
+- vaa "Vaagri Booli"
+- vae "Vale"
+- vaf "Vafsi"
+- vag "Vagla"
+- vah "Varhadi-Nagpuri"
+- vai "Vai"
+- vaj "Vasekela Bushman"
+- val "Vehes"
+- vam "Vanimo"
+- van "Valman"
+- vao "Vao"
+- vap "Vaiphei"
+- var "Huarijio"
+- vas "Vasavi"
+- vau "Vanuma"
+- vav "Varli"
+- vay "Wayu"
+- vbb "Southeast Babar"
+- vbk "Southwestern Bontok"
+- vec "Venetian"
+- ved "Veddah"
+- vel "Veluws"
+- vem "Vemgo-Mabas"
+ve ven "Venda"
+- veo "Ventureño"
+- vep "Veps"
+- ver "Mom Jango"
+- vgr "Vaghri"
+- vgt "Vlaamse Gebarentaal"
+- vic "Virgin Islands Creole English"
+- vid "Vidunda"
+vi vie "Vietnamese"
+- vif "Vili"
+- vig "Viemo"
+- vil "Vilela"
+- vin "Vinza"
+- vis "Vishavan"
+- vit "Viti"
+- viv "Iduna"
+- vka "Kariyarra"
+- vki "Ija-Zuba"
+- vkj "Kujarge"
+- vkk "Kaur"
+- vkl "Kulisusu"
+- vkm "Kamakan"
+- vko "Kodeoha"
+- vkp "Korlai Creole Portuguese"
+- vkt "Tenggarong Kutai Malay"
+- vku "Kurrama"
+- vlp "Valpei"
+- vls "Vlaams"
+- vma "Martuyhunira"
+- vmb "Mbabaram"
+- vmc "Juxtlahuaca Mixtec"
+- vmd "Mudu Koraga"
+- vme "East Masela"
+- vmf "Mainfränkisch"
+- vmg "Minigir"
+- vmh "Maraghei"
+- vmi "Miwa"
+- vmj "Ixtayutla Mixtec"
+- vmk "Makhuwa-Shirima"
+- vml "Malgana"
+- vmm "Mitlatongo Mixtec"
+- vmp "Soyaltepec Mazatec"
+- vmq "Soyaltepec Mixtec"
+- vmr "Marenje"
+- vms "Moksela"
+- vmu "Muluridyi"
+- vmv "Valley Maidu"
+- vmw "Makhuwa"
+- vmx "Tamazola Mixtec"
+- vmy "Ayautla Mazatec"
+- vmz "Mazatlán Mazatec"
+- vnk "Vano"
+- vnm "Vinmavis"
+- vnp "Vunapu"
+vo vol "Volapük"
+- vor "Voro"
+- vot "Votic"
+- vra "Vera'a"
+- vro "Võro"
+- vrs "Varisi"
+- vrt "Burmbar"
+- vsi "Moldova Sign Language"
+- vsl "Venezuelan Sign Language"
+- vsv "Valencian Sign Language"
+- vto "Vitou"
+- vum "Vumbu"
+- vun "Vunjo"
+- vut "Vute"
+- vwa "Awa (China)"
+- waa "Walla Walla"
+- wab "Wab"
+- wac "Wasco-Wishram"
+- wad "Wandamen"
+- wae "Walser"
+- waf "Wakoná"
+- wag "Wa'ema"
+- wah "Watubela"
+- wai "Wares"
+- waj "Waffa"
+- wal "Wolaytta"
+- wam "Wampanoag"
+- wan "Wan"
+- wao "Wappo"
+- wap "Wapishana"
+- waq "Wageman"
+- war "Waray (Philippines)"
+- was "Washo"
+- wat "Kaninuwa"
+- wau "Waurá"
+- wav "Waka"
+- waw "Waiwai"
+- wax "Watam"
+- way "Wayana"
+- waz "Wampur"
+- wba "Warao"
+- wbb "Wabo"
+- wbe "Waritai"
+- wbf "Wara"
+- wbh "Wanda"
+- wbi "Vwanji"
+- wbj "Alagwa"
+- wbk "Waigali"
+- wbl "Wakhi"
+- wbm "Wa"
+- wbp "Warlpiri"
+- wbq "Waddar"
+- wbr "Wagdi"
+- wbt "Wanman"
+- wbv "Wajarri"
+- wbw "Woi"
+- wca "Yanomámi"
+- wci "Waci Gbe"
+- wdd "Wandji"
+- wdg "Wadaginam"
+- wdj "Wadjiginy"
+- wdu "Wadjigu"
+- wea "Wewaw"
+- wec "Wè Western"
+- wed "Wedau"
+- weh "Weh"
+- wei "Were"
+- wem "Weme Gbe"
+- weo "North Wemale"
+- wep "Westphalien"
+- wer "Weri"
+- wes "Cameroon Pidgin"
+- wet "Perai"
+- weu "Welaung"
+- wew "Wejewa"
+- wfg "Yafi"
+- wga "Wagaya"
+- wgb "Wagawaga"
+- wgg "Wangganguru"
+- wgi "Wahgi"
+- wgo "Waigeo"
+- wgy "Warrgamay"
+- wha "Manusela"
+- whg "North Wahgi"
+- whk "Wahau Kenyah"
+- whu "Wahau Kayan"
+- wib "Southern Toussian"
+- wic "Wichita"
+- wie "Wik-Epa"
+- wif "Wik-Keyangan"
+- wig "Wik-Ngathana"
+- wih "Wik-Me'anha"
+- wii "Minidien"
+- wij "Wik-Iiyanh"
+- wik "Wikalkan"
+- wil "Wilawila"
+- wim "Wik-Mungkan"
+- win "Ho-Chunk"
+- wir "Wiraféd"
+- wit "Wintu"
+- wiu "Wiru"
+- wiv "Muduapa"
+- wiw "Wirangu"
+- wiy "Wiyot"
+- wja "Waja"
+- wji "Warji"
+- wka "Kw'adza"
+- wkb "Kumbaran"
+- wkd "Wakde"
+- wkl "Kalanadi"
+- wku "Kunduvadi"
+- wkw "Wakawaka"
+- wla "Walio"
+- wlc "Mwali Comorian"
+- wle "Wolane"
+- wlg "Kunbarlang"
+- wli "Waioli"
+- wlk "Wailaki"
+- wll "Wali (Sudan)"
+- wlm "Middle Welsh"
+wa wln "Walloon"
+- wlo "Wolio"
+- wlr "Wailapa"
+- wls "Wallisian"
+- wlu "Wuliwuli"
+- wlv "Wichí Lhamtés Vejoz"
+- wlw "Walak"
+- wlx "Wali (Ghana)"
+- wly "Waling"
+- wma "Mawa (Nigeria)"
+- wmb "Wambaya"
+- wmc "Wamas"
+- wmd "Mamaindé"
+- wme "Wambule"
+- wmh "Waima'a"
+- wmi "Wamin"
+- wmm "Maiwa (Indonesia)"
+- wmn "Waamwang"
+- wmo "Wom (Papua New Guinea)"
+- wms "Wambon"
+- wmt "Walmajarri"
+- wmw "Mwani"
+- wmx "Womo"
+- wnb "Wanambre"
+- wnc "Wantoat"
+- wnd "Wandarang"
+- wne "Waneci"
+- wng "Wanggom"
+- wni "Ndzwani Comorian"
+- wnk "Wanukaka"
+- wnm "Wanggamala"
+- wno "Wano"
+- wnp "Wanap"
+- wnu "Usan"
+- woa "Tyaraity"
+- wob "Wè Northern"
+- woc "Wogeo"
+- wod "Wolani"
+- woe "Woleaian"
+- wof "Gambian Wolof"
+- wog "Wogamusin"
+- woi "Kamang"
+- wok "Longto"
+wo wol "Wolof"
+- wom "Wom (Nigeria)"
+- won "Wongo"
+- woo "Manombai"
+- wor "Woria"
+- wos "Hanga Hundi"
+- wow "Wawonii"
+- woy "Weyto"
+- wpc "Maco"
+- wra "Warapu"
+- wrb "Warluwara"
+- wrd "Warduji"
+- wrg "Warungu"
+- wrh "Wiradhuri"
+- wri "Wariyangga"
+- wrl "Warlmanpa"
+- wrm "Warumungu"
+- wrn "Warnang"
+- wrp "Waropen"
+- wrr "Wardaman"
+- wrs "Waris"
+- wru "Waru"
+- wrv "Waruna"
+- wrw "Gugu Warra"
+- wrx "Wae Rana"
+- wry "Merwari"
+- wrz "Waray (Australia)"
+- wsa "Warembori"
+- wsi "Wusi"
+- wsk "Waskia"
+- wsr "Owenia"
+- wss "Wasa"
+- wsu "Wasu"
+- wsv "Wotapuri-Katarqalai"
+- wtf "Dumpu"
+- wti "Berta"
+- wtk "Watakataui"
+- wtm "Mewati"
+- wtw "Wotu"
+- wua "Wikngenchera"
+- wub "Wunambal"
+- wud "Wudu"
+- wuh "Wutunhua"
+- wul "Silimo"
+- wum "Wumbvu"
+- wun "Bungu"
+- wur "Wurrugu"
+- wut "Wutung"
+- wuu "Wu Chinese"
+- wuv "Wuvulu-Aua"
+- wux "Wulna"
+- wuy "Wauyai"
+- wwa "Waama"
+- wwo "Wetamut"
+- wwr "Warrwa"
+- www "Wawa"
+- wxa "Waxianghua"
+- wya "Wyandot"
+- wyb "Wangaaybuwan-Ngiyambaa"
+- wym "Wymysorys"
+- wyr "Wayoró"
+- wyy "Western Fijian"
+- xaa "Andalusian Arabic"
+- xab "Sambe"
+- xac "Kachari"
+- xad "Adai"
+- xae "Aequian"
+- xag "Aghwan"
+- xai "Kaimbé"
+- xal "Kalmyk"
+- xam "/Xam"
+- xan "Xamtanga"
+- xao "Khao"
+- xap "Apalachee"
+- xaq "Aquitanian"
+- xar "Karami"
+- xas "Kamas"
+- xat "Katawixi"
+- xau "Kauwera"
+- xav "Xavánte"
+- xaw "Kawaiisu"
+- xay "Kayan Mahakam"
+- xba "Kamba (Brazil)"
+- xbb "Lower Burdekin"
+- xbc "Bactrian"
+- xbi "Kombio"
+- xbm "Middle Breton"
+- xbn "Kenaboi"
+- xbo "Bolgarian"
+- xbr "Kambera"
+- xbw "Kambiwá"
+- xbx "Kabixí"
+- xcb "Cumbric"
+- xcc "Camunic"
+- xce "Celtiberian"
+- xcg "Cisalpine Gaulish"
+- xch "Chemakum"
+- xcl "Classical Armenian"
+- xcm "Comecrudo"
+- xcn "Cotoname"
+- xco "Chorasmian"
+- xcr "Carian"
+- xct "Classical Tibetan"
+- xcu "Curonian"
+- xcv "Chuvantsy"
+- xcw "Coahuilteco"
+- xcy "Cayuse"
+- xdc "Dacian"
+- xdm "Edomite"
+- xdy "Malayic Dayak"
+- xeb "Eblan"
+- xed "Hdi"
+- xeg "//Xegwi"
+- xel "Kelo"
+- xem "Kembayan"
+- xep "Epi-Olmec"
+- xer "Xerénte"
+- xes "Kesawai"
+- xet "Xetá"
+- xeu "Keoru-Ahia"
+- xfa "Faliscan"
+- xga "Galatian"
+- xgf "Gabrielino-Fernandeño"
+- xgl "Galindan"
+- xgr "Garza"
+- xha "Harami"
+- xhc "Hunnic"
+- xhd "Hadrami"
+- xhe "Khetrani"
+xh xho "Xhosa"
+- xhr "Hernican"
+- xht "Hattic"
+- xhu "Hurrian"
+- xhv "Khua"
+- xia "Xiandao"
+- xib "Iberian"
+- xii "Xiri"
+- xil "Illyrian"
+- xin "Xinca"
+- xip "Xipináwa"
+- xir "Xiriâna"
+- xiv "Indus Valley Language"
+- xiy "Xipaya"
+- xka "Kalkoti"
+- xkb "Northern Nago"
+- xkc "Kho'ini"
+- xkd "Mendalam Kayan"
+- xke "Kereho"
+- xkf "Khengkha"
+- xkg "Kagoro"
+- xkh "Karahawyana"
+- xki "Kenyan Sign Language"
+- xkj "Kajali"
+- xkk "Kaco'"
+- xkl "Mainstream Kenyah"
+- xkn "Kayan River Kayan"
+- xko "Kiorr"
+- xkp "Kabatei"
+- xkq "Koroni"
+- xkr "Xakriabá"
+- xks "Kumbewaha"
+- xkt "Kantosi"
+- xku "Kaamba"
+- xkv "Kgalagadi"
+- xkw "Kembra"
+- xkx "Karore"
+- xky "Uma' Lasan"
+- xkz "Kurtokha"
+- xla "Kamula"
+- xlb "Loup B"
+- xlc "Lycian"
+- xld "Lydian"
+- xle "Lemnian"
+- xlg "Ligurian (Ancient)"
+- xli "Liburnian"
+- xln "Alanic"
+- xlo "Loup A"
+- xlp "Lepontic"
+- xls "Lusitanian"
+- xlu "Cuneiform Luwian"
+- xly "Elymian"
+- xma "Mushungulu"
+- xmb "Mbonga"
+- xmc "Makhuwa-Marrevone"
+- xmd "Mbedam"
+- xme "Median"
+- xmf "Mingrelian"
+- xmg "Mengaka"
+- xmh "Kuku-Muminh"
+- xmj "Majera"
+- xmk "Ancient Macedonian"
+- xml "Malaysian Sign Language"
+- xmm "Manado Malay"
+- xmn "Manichaean Middle Persian"
+- xmo "Morerebi"
+- xmp "Kuku-Mu'inh"
+- xmq "Kuku-Mangk"
+- xmr "Meroitic"
+- xms "Moroccan Sign Language"
+- xmt "Matbat"
+- xmu "Kamu"
+- xmv "Antankarana Malagasy"
+- xmw "Tsimihety Malagasy"
+- xmx "Maden"
+- xmy "Mayaguduna"
+- xmz "Mori Bawah"
+- xna "Ancient North Arabian"
+- xnb "Kanakanabu"
+- xng "Middle Mongolian"
+- xnh "Kuanhua"
+- xnn "Northern Kankanay"
+- xno "Anglo-Norman"
+- xnr "Kangri"
+- xns "Kanashi"
+- xnt "Narragansett"
+- xoc "O'chi'chi'"
+- xod "Kokoda"
+- xog "Soga"
+- xoi "Kominimung"
+- xok "Xokleng"
+- xom "Komo (Sudan)"
+- xon "Konkomba"
+- xoo "Xukurú"
+- xop "Kopar"
+- xor "Korubo"
+- xow "Kowaki"
+- xpc "Pecheneg"
+- xpe "Liberia Kpelle"
+- xpg "Phrygian"
+- xpi "Pictish"
+- xpk "Kulina Pano"
+- xpm "Pumpokol"
+- xpn "Kapinawá"
+- xpo "Pochutec"
+- xpp "Puyo-Paekche"
+- xpq "Mohegan-Pequot"
+- xpr "Parthian"
+- xps "Pisidian"
+- xpu "Punic"
+- xpy "Puyo"
+- xqa "Karakhanid"
+- xqt "Qatabanian"
+- xra "Krahô"
+- xrb "Eastern Karaboro"
+- xre "Kreye"
+- xri "Krikati-Timbira"
+- xrm "Armazic"
+- xrn "Arin"
+- xrr "Raetic"
+- xrt "Aranama-Tamique"
+- xru "Marriammu"
+- xrw "Karawa"
+- xsa "Sabaean"
+- xsb "Tinà Sambal"
+- xsc "Scythian"
+- xsd "Sidetic"
+- xse "Sempan"
+- xsh "Shamang"
+- xsi "Sio"
+- xsj "Subi"
+- xsl "South Slavey"
+- xsm "Kasem"
+- xsn "Sanga (Nigeria)"
+- xso "Solano"
+- xsp "Silopi"
+- xsq "Makhuwa-Saka"
+- xsr "Sherpa"
+- xss "Assan"
+- xsu "Sanumá"
+- xsv "Sudovian"
+- xsy "Saisiyat"
+- xta "Alcozauca Mixtec"
+- xtb "Chazumba Mixtec"
+- xtc "Katcha-Kadugli-Miri"
+- xtd "Diuxi-Tilantongo Mixtec"
+- xte "Ketengban"
+- xtg "Transalpine Gaulish"
+- xti "Sinicahua Mixtec"
+- xtj "San Juan Teita Mixtec"
+- xtl "Tijaltepec Mixtec"
+- xtm "Magdalena Peñasco Mixtec"
+- xtn "Northern Tlaxiaco Mixtec"
+- xto "Tokharian A"
+- xtp "San Miguel Piedras Mixtec"
+- xtq "Tumshuqese"
+- xtr "Early Tripuri"
+- xts "Sindihui Mixtec"
+- xtt "Tacahua Mixtec"
+- xtu "Cuyamecalco Mixtec"
+- xtw "Tawandê"
+- xty "Yoloxochitl Mixtec"
+- xtz "Tasmanian"
+- xua "Alu Kurumba"
+- xub "Betta Kurumba"
+- xug "Kunigami"
+- xuj "Jennu Kurumba"
+- xum "Umbrian"
+- xuo "Kuo"
+- xup "Upper Umpqua"
+- xur "Urartian"
+- xut "Kuthant"
+- xuu "Kxoe"
+- xve "Venetic"
+- xvi "Kamviri"
+- xvn "Vandalic"
+- xvo "Volscian"
+- xvs "Vestinian"
+- xwa "Kwaza"
+- xwc "Woccon"
+- xwe "Xwela Gbe"
+- xwg "Kwegu"
+- xwl "Western Xwla Gbe"
+- xwo "Written Oirat"
+- xwr "Kwerba Mamberamo"
+- xxb "Boro (Ghana)"
+- xxk "Ke'o"
+- xxr "Koropó"
+- xxt "Tambora"
+- xyl "Yalakalore"
+- xzh "Zhang-Zhung"
+- xzm "Zemgalian"
+- xzp "Ancient Zapotec"
+- yaa "Yaminahua"
+- yab "Yuhup"
+- yac "Pass Valley Yali"
+- yad "Yagua"
+- yae "Pumé"
+- yaf "Yaka (Democratic Republic of Congo)"
+- yag "Yámana"
+- yah "Yazgulyam"
+- yai "Yagnobi"
+- yaj "Banda-Yangere"
+- yak "Yakama"
+- yal "Yalunka"
+- yam "Yamba"
+- yan "Mayangna"
+- yao "Yao"
+- yap "Yapese"
+- yaq "Yaqui"
+- yar "Yabarana"
+- yas "Nugunu (Cameroon)"
+- yat "Yambeta"
+- yau "Yuwana"
+- yav "Yangben"
+- yaw "Yawalapití"
+- yax "Yauma"
+- yay "Agwagwune"
+- yaz "Lokaa"
+- yba "Yala"
+- ybb "Yemba"
+- ybd "Yangbye"
+- ybe "West Yugur"
+- ybh "Yakha"
+- ybi "Yamphu"
+- ybj "Hasha"
+- ybk "Bokha"
+- ybl "Yukuben"
+- ybm "Yaben"
+- ybn "Yabaâna"
+- ybo "Yabong"
+- ybx "Yawiyo"
+- yby "Yaweyuha"
+- ych "Chesu"
+- ycl "Lolopo"
+- ycn "Yucuna"
+- ycp "Chepya"
+- ydd "Eastern Yiddish"
+- yde "Yangum Dey"
+- ydg "Yidgha"
+- ydk "Yoidik"
+- yds "Yiddish Sign Language"
+- yea "Ravula"
+- yec "Yeniche"
+- yee "Yimas"
+- yei "Yeni"
+- yej "Yevanic"
+- yel "Yela"
+- yen "Yendang"
+- yer "Tarok"
+- yes "Yeskwa"
+- yet "Yetfa"
+- yeu "Yerukula"
+- yev "Yapunda"
+- yey "Yeyi"
+- ygl "Yangum Gel"
+- ygm "Yagomi"
+- ygp "Gepo"
+- ygr "Yagaria"
+- ygw "Yagwoia"
+- yha "Baha Buyang"
+- yhd "Judeo-Iraqi Arabic"
+- yhl "Hlepho Phowa"
+- yia "Yinggarda"
+yi yid "Yiddish"
+- yif "Ache"
+- yig "Wusa Nasu"
+- yih "Western Yiddish"
+- yii "Yidiny"
+- yij "Yindjibarndi"
+- yik "Dongshanba Lalo"
+- yil "Yindjilandji"
+- yim "Yimchungru Naga"
+- yin "Yinchia"
+- yip "Pholo"
+- yiq "Miqie"
+- yir "North Awyu"
+- yis "Yis"
+- yit "Eastern Lalu"
+- yiu "Awu"
+- yiv "Northern Nisu"
+- yix "Axi Yi"
+- yiy "Yir Yoront"
+- yiz "Azhe"
+- yka "Yakan"
+- ykg "Northern Yukaghir"
+- yki "Yoke"
+- ykk "Yakaikeke"
+- ykl "Khlula"
+- ykm "Kap"
+- yko "Yasa"
+- ykr "Yekora"
+- ykt "Kathu"
+- yky "Yakoma"
+- yla "Yaul"
+- ylb "Yaleba"
+- yle "Yele"
+- ylg "Yelogu"
+- yli "Angguruk Yali"
+- yll "Yil"
+- ylm "Limi"
+- yln "Langnian Buyang"
+- ylo "Naluo Yi"
+- ylr "Yalarnnga"
+- ylu "Aribwaung"
+- yly "Nyâlayu"
+- yma "Yamphe"
+- ymb "Yambes"
+- ymc "Southern Muji"
+- ymd "Muda"
+- yme "Yameo"
+- ymg "Yamongeri"
+- ymh "Mili"
+- ymi "Moji"
+- ymk "Makwe"
+- yml "Iamalele"
+- ymm "Maay"
+- ymn "Yamna"
+- ymo "Yangum Mon"
+- ymp "Yamap"
+- ymq "Qila Muji"
+- ymr "Malasar"
+- yms "Mysian"
+- ymt "Mator-Taygi-Karagas"
+- ymx "Northern Muji"
+- ymz "Muzi"
+- yna "Aluo"
+- ynd "Yandruwandha"
+- yne "Lang'e"
+- yng "Yango"
+- ynh "Yangho"
+- ynk "Naukan Yupik"
+- ynl "Yangulam"
+- ynn "Yana"
+- yno "Yong"
+- yns "Yansi"
+- ynu "Yahuna"
+- yob "Yoba"
+- yog "Yogad"
+- yoi "Yonaguni"
+- yok "Yokuts"
+- yol "Yola"
+- yom "Yombe"
+- yon "Yonggom"
+yo yor "Yoruba"
+- yos "Yos"
+- yox "Yoron"
+- yoy "Yoy"
+- ypa "Phala"
+- ypb "Labo Phowa"
+- ypg "Phola"
+- yph "Phupha"
+- ypm "Phuma"
+- ypn "Ani Phowa"
+- ypo "Alo Phola"
+- ypp "Phupa"
+- ypz "Phuza"
+- yra "Yerakai"
+- yrb "Yareba"
+- yre "Yaouré"
+- yri "Yarí"
+- yrk "Nenets"
+- yrl "Nhengatu"
+- yrn "Yerong"
+- yrs "Yarsun"
+- yrw "Yarawata"
+- ysc "Yassic"
+- ysd "Samatao"
+- ysl "Yugoslavian Sign Language"
+- ysn "Sani"
+- yso "Nisi (China)"
+- ysp "Southern Lolopo"
+- ysr "Sirenik Yupik"
+- yss "Yessan-Mayo"
+- ysy "Sanie"
+- yta "Talu"
+- ytl "Tanglang"
+- ytp "Thopho"
+- ytw "Yout Wam"
+- yua "Yucateco"
+- yub "Yugambal"
+- yuc "Yuchi"
+- yud "Judeo-Tripolitanian Arabic"
+- yue "Yue Chinese"
+- yuf "Havasupai-Walapai-Yavapai"
+- yug "Yug"
+- yui "Yurutí"
+- yuj "Karkar-Yuri"
+- yuk "Yuki"
+- yul "Yulu"
+- yum "Quechan"
+- yun "Bena (Nigeria)"
+- yup "Yukpa"
+- yuq "Yuqui"
+- yur "Yurok"
+- yut "Yopno"
+- yuu "Yugh"
+- yuw "Yau (Morobe Province)"
+- yux "Southern Yukaghir"
+- yuy "East Yugur"
+- yuz "Yuracare"
+- yva "Yawa"
+- yvt "Yavitero"
+- ywa "Kalou"
+- ywl "Western Lalu"
+- ywn "Yawanawa"
+- ywq "Wuding-Luquan Yi"
+- ywr "Yawuru"
+- ywt "Xishanba Lalo"
+- ywu "Wumeng Nasu"
+- yww "Yawarawarga"
+- yyu "Yau (Sandaun Province)"
+- yyz "Ayizi"
+- yzg "E'ma Buyang"
+- yzk "Zokhuo"
+- zaa "Sierra de Juárez Zapotec"
+- zab "San Juan Guelavía Zapotec"
+- zac "Ocotlán Zapotec"
+- zad "Cajonos Zapotec"
+- zae "Yareni Zapotec"
+- zaf "Ayoquesco Zapotec"
+- zag "Zaghawa"
+- zah "Zangwal"
+- zai "Isthmus Zapotec"
+- zaj "Zaramo"
+- zak "Zanaki"
+- zal "Zauzou"
+- zam "Miahuatlán Zapotec"
+- zao "Ozolotepec Zapotec"
+- zap "Zapotec"
+- zaq "Aloápam Zapotec"
+- zar "Rincón Zapotec"
+- zas "Santo Domingo Albarradas Zapotec"
+- zat "Tabaa Zapotec"
+- zau "Zangskari"
+- zav "Yatzachi Zapotec"
+- zaw "Mitla Zapotec"
+- zax "Xadani Zapotec"
+- zay "Zayse-Zergulla"
+- zaz "Zari"
+- zbc "Central Berawan"
+- zbe "East Berawan"
+- zbl "Blissymbols"
+- zbt "Batui"
+- zbw "West Berawan"
+- zca "Coatecas Altas Zapotec"
+- zch "Central Hongshuihe Zhuang"
+- zdj "Ngazidja Comorian"
+- zea "Zeeuws"
+- zeg "Zenag"
+- zeh "Eastern Hongshuihe Zhuang"
+- zen "Zenaga"
+- zga "Kinga"
+- zgb "Guibei Zhuang"
+- zgm "Minz Zhuang"
+- zgn "Guibian Zhuang"
+- zgr "Magori"
+za zha "Zhuang"
+- zhb "Zhaba"
+- zhd "Dai Zhuang"
+- zhi "Zhire"
+- zhn "Nong Zhuang"
+zh zho "Chinese"
+- zhw "Zhoa"
+- zia "Zia"
+- zib "Zimbabwe Sign Language"
+- zik "Zimakani"
+- zim "Mesme"
+- zin "Zinza"
+- zir "Ziriya"
+- ziw "Zigula"
+- ziz "Zizilivakan"
+- zka "Kaimbulawa"
+- zkb "Koibal"
+- zkg "Koguryo"
+- zkh "Khorezmian"
+- zkk "Karankawa"
+- zko "Kott"
+- zkp "São Paulo Kaingáng"
+- zkr "Zakhring"
+- zkt "Kitan"
+- zku "Kaurna"
+- zkv "Krevinian"
+- zkz "Khazar"
+- zlj "Liujiang Zhuang"
+- zlm "Malay (individual language)"
+- zln "Lianshan Zhuang"
+- zlq "Liuqian Zhuang"
+- zma "Manda (Australia)"
+- zmb "Zimba"
+- zmc "Margany"
+- zmd "Maridan"
+- zme "Mangerr"
+- zmf "Mfinu"
+- zmg "Marti Ke"
+- zmh "Makolkol"
+- zmi "Negeri Sembilan Malay"
+- zmj "Maridjabin"
+- zmk "Mandandanyi"
+- zml "Madngele"
+- zmm "Marimanindji"
+- zmn "Mbangwe"
+- zmo "Molo"
+- zmp "Mpuono"
+- zmq "Mituku"
+- zmr "Maranunggu"
+- zms "Mbesa"
+- zmt "Maringarr"
+- zmu "Muruwari"
+- zmv "Mbariman-Gudhinma"
+- zmw "Mbo (Democratic Republic of Congo)"
+- zmx "Bomitaba"
+- zmy "Mariyedi"
+- zmz "Mbandja"
+- zna "Zan Gula"
+- zne "Zande (individual language)"
+- zng "Mang"
+- znk "Manangkari"
+- zns "Mangas"
+- zoc "Copainalá Zoque"
+- zoh "Chimalapa Zoque"
+- zom "Zou"
+- zoo "Asunción Mixtepec Zapotec"
+- zoq "Tabasco Zoque"
+- zor "Rayón Zoque"
+- zos "Francisco León Zoque"
+- zpa "Lachiguiri Zapotec"
+- zpb "Yautepec Zapotec"
+- zpc "Choapan Zapotec"
+- zpd "Southeastern Ixtlán Zapotec"
+- zpe "Petapa Zapotec"
+- zpf "San Pedro Quiatoni Zapotec"
+- zpg "Guevea De Humboldt Zapotec"
+- zph "Totomachapan Zapotec"
+- zpi "Santa María Quiegolani Zapotec"
+- zpj "Quiavicuzas Zapotec"
+- zpk "Tlacolulita Zapotec"
+- zpl "Lachixío Zapotec"
+- zpm "Mixtepec Zapotec"
+- zpn "Santa Inés Yatzechi Zapotec"
+- zpo "Amatlán Zapotec"
+- zpp "El Alto Zapotec"
+- zpq "Zoogocho Zapotec"
+- zpr "Santiago Xanica Zapotec"
+- zps "Coatlán Zapotec"
+- zpt "San Vicente Coatlán Zapotec"
+- zpu "Yalálag Zapotec"
+- zpv "Chichicapan Zapotec"
+- zpw "Zaniza Zapotec"
+- zpx "San Baltazar Loxicha Zapotec"
+- zpy "Mazaltepec Zapotec"
+- zpz "Texmelucan Zapotec"
+- zqe "Qiubei Zhuang"
+- zra "Kara (Korea)"
+- zrg "Mirgan"
+- zrn "Zerenkel"
+- zro "Záparo"
+- zrp "Zarphatic"
+- zrs "Mairasi"
+- zsa "Sarasira"
+- zsk "Kaskean"
+- zsl "Zambian Sign Language"
+- zsm "Standard Malay"
+- zsr "Southern Rincon Zapotec"
+- zsu "Sukurum"
+- zte "Elotepec Zapotec"
+- ztg "Xanaguía Zapotec"
+- ztl "Lapaguía-Guivini Zapotec"
+- ztm "San Agustín Mixtepec Zapotec"
+- ztn "Santa Catarina Albarradas Zapotec"
+- ztp "Loxicha Zapotec"
+- ztq "Quioquitani-Quierí Zapotec"
+- zts "Tilquiapan Zapotec"
+- ztt "Tejalapan Zapotec"
+- ztu "Güilá Zapotec"
+- ztx "Zaachila Zapotec"
+- zty "Yatee Zapotec"
+- zua "Zeem"
+- zuh "Tokano"
+zu zul "Zulu"
+- zum "Kumzari"
+- zun "Zuni"
+- zuy "Zumaya"
+- zwa "Zay"
+- zxx "No linguistic content"
+- zyb "Yongbei Zhuang"
+- zyg "Yang Zhuang"
+- zyj "Youjiang Zhuang"
+- zyn "Yongnan Zhuang"
+- zyp "Zyphe"
+- zza "Zaza"
+- zzj "Zuojiang Zhuang"
diff --git a/MLEB/Babel/composer.json b/MLEB/Babel/composer.json
new file mode 100644
index 00000000..49e1fb03
--- /dev/null
+++ b/MLEB/Babel/composer.json
@@ -0,0 +1,27 @@
+{
+ "name": "mediawiki/babel",
+ "type": "mediawiki-extension",
+ "description": "Users can easily indicate their language proficiency on their user page",
+ "keywords": [
+ "MediaWiki",
+ "Language"
+ ],
+ "homepage": "https://www.mediawiki.org/wiki/Extension:Babel",
+ "license": "GPL-2.0+",
+ "authors": [
+ {
+ "name": "Robert Leverington",
+ "role": "Original developer"
+ }
+ ],
+ "support": {
+ "issues": "https://bugzilla.wikimedia.org/",
+ "irc": "irc://irc.freenode.net/mediawiki-i18n"
+ },
+ "require": {
+ "composer/installers": ">=1.0.1"
+ },
+ "autoload": {
+ "files": ["Babel.php"]
+ }
+}
diff --git a/MLEB/Babel/i18n/ace.json b/MLEB/Babel/i18n/ace.json
new file mode 100644
index 00000000..abda0d75
--- /dev/null
+++ b/MLEB/Babel/i18n/ace.json
@@ -0,0 +1,28 @@
+{
+ "@metadata": {
+ "authors": [
+ "Iwan Novirion",
+ "Si Gam Acèh"
+ ]
+ },
+ "babel": "Keutrangan ureuëng ngui Babel",
+ "babel-url": "Project:Babel",
+ "babel-footer-url": ":Category:Babel - Ureuëng ngui meunurôt bahsa",
+ "babel-autocreate-user": "Babel AutoCreate",
+ "babel-0": "Ureuëng nyoë [[$1|hana]] muphôm [[$2|$3]] (atawa payah that muphôm).",
+ "babel-1": "Ureuëng nyoë jeuët [[$1|bacut]] [[$2|$3]].",
+ "babel-2": "Ureuëng nyoë muphôm [[$1|le bacut]] [[$2|$3]].",
+ "babel-3": "Ureuëng nyoë [[$1|le muphôm]] [[$2|$3]].",
+ "babel-4": "Ureuëng nyoë [[$1|muphôm]] [[$2|$3]] lagèë ureuëng Acèh aseuli",
+ "babel-5": "Ureuëng nyoë [[$1|utôih]] lam [[$2|$3]].",
+ "babel-N": "Ureuëng nyoë [[$1|geumarit]] lam [[$2|$3]].",
+ "babel-0-n": "Ureuëng nyoë [[$1|hana muphôm]] [[$2|bahsa Acèh]] (atawa muphôm bacut that).",
+ "babel-1-n": "Ureuëng ngui nyoë muphôm [[$1|bacut]] [[$2|bahsa Acèh]].",
+ "babel-2-n": "Ureuëng nyoë muphôm [[$1|le bacut]] [[$2|bahsa Acèh]].",
+ "babel-3-n": "Ureuëng nyoë [[$1|le muphôm]] [[$2|bahsa Acèh]].",
+ "babel-4-n": "Ureuëng nyoë jeuët [[$2|bahsa Acèh]] karap lagèë [[$1|ureuëng Acèh aseuli]]",
+ "babel-5-n": "Ureuëng nyoë [[$1|utôih]] lam [[$2|bahsa Acèh]].",
+ "babel-N-n": "Ureuëng nyoë [[$1|geumarit]] lam [[$2|bahsa Aceh]].",
+ "babel-template": "Template:User $1",
+ "babel-footer": "Ureuëng meunurôt bahsa"
+}
diff --git a/MLEB/Babel/i18n/aeb.json b/MLEB/Babel/i18n/aeb.json
new file mode 100644
index 00000000..40a0d7e6
--- /dev/null
+++ b/MLEB/Babel/i18n/aeb.json
@@ -0,0 +1,23 @@
+{
+ "@metadata": {
+ "authors": [
+ "Csisc",
+ "GeekEmad"
+ ]
+ },
+ "babel": "Linformasyon mtagħ Babel għallutilizateur",
+ "babel-desc": "يضيف دالة المحلل <code>#babel</code> للسماح بالتوليد التلقائي لعامود صندوق بابل مع إمكانية تضمين قوالب أخرى",
+ "babel-url": "Project:بابل",
+ "babel-footer-url": ":Category:بابل - المستخدمون حسب اللغة",
+ "babel-autocreate-abort": "اسم المستخدم الذي حددته مستخدم للإنشاء التلقائي لتصنيفات [[$1|بابل]] ولا يمكن تسجيله.",
+ "babel-autocreate-reason": "إنشاء صفحة تصنيف [[$1|بابل]] تلقائيا.",
+ "babel-autocreate-text-levels": "المستخدمون في هذا التصنيف مستوى مهارتهم $1 للغة $2.",
+ "babel-autocreate-text-main": "المستخدمون في هذا التصنيف لديهم معرفة باللغة $1.",
+ "babel-0": "Lutilizateur hadha [[$1|ma yefhemch]] [[$2|$3]] (wella yefhem àmma bessif)",
+ "babel-1": "Lutilizateur hadha yefhem [[$1|chway]] [[$2|$3]].",
+ "babel-2": "Lutilizateur hadha yefhem [[$1|metwasstʾ]] [[$2|$3]]",
+ "babel-3": "Lutilizateur hadha yefhem [[$1|belbàhi]] [[$2|$3]]",
+ "babel-4": "Lutilizateur hadha yefhem [[$1|barcha]] [[$2|$3]]",
+ "babel-5": "Lutilizateur hadha [[$1|mgħallem]] mtagħ [[$2|$3]]",
+ "babel-N": "Lutilizateur hadha [[$1|loughtou elmaternàl]] hiya [[$2|$3]]"
+}
diff --git a/MLEB/Babel/i18n/af.json b/MLEB/Babel/i18n/af.json
new file mode 100644
index 00000000..d9f37fe5
--- /dev/null
+++ b/MLEB/Babel/i18n/af.json
@@ -0,0 +1,33 @@
+{
+ "@metadata": {
+ "authors": [
+ "Arnobarnard",
+ "Naudefj",
+ "SPQRobin",
+ "Winstonza"
+ ]
+ },
+ "babel": "Babel-gebruikersinligting",
+ "babel-desc": "Voeg die <code>#babel</code>-ontlederfunksie by om outomatiese generasie van 'n babel-gebruikersboks moontlik te maak met die funksionaliteit om doelgemaakte sjablone in te plaas.",
+ "babel-url": "Project:Babel",
+ "babel-footer-url": ":Category:Babel - Gebruikers volgens taal",
+ "babel-autocreate-abort": "Die gebruikersnaam wat u gespesifiseer het word gebruik vir die outomatiese skep van [[$1|Babel]]-kategorieë en kan nie geregistreer word nie.",
+ "babel-autocreate-reason": "[[$1|Babel]]-kategorie word outomaties geskep.",
+ "babel-autocreate-text-levels": "Gebruikers in hierdie kategorie dui aan dat hul vaardigheidsvlak vir die taal $2 $1 is.",
+ "babel-autocreate-text-main": "Gebruikers in hierdie kategorie dui aan dat hulle kennis van die taal $1 het.",
+ "babel-0": "Hierdie gebruiker het [[$1|geen]] kennis van [[$2|$3]] nie (of verstaan dit met groot moeite).",
+ "babel-1": "Hierdie gebruiker het ’n [[$1|basiese]] kennis van [[$2|$3]].",
+ "babel-2": "Hierdie gebruiker het ’n [[$1|middelbare]] kennis van [[$2|$3]].",
+ "babel-3": "Hierdie gebruiker het ’n [[$1|gevorderde]] kennis van [[$2|$3]].",
+ "babel-4": "Hierdie gebruiker het kennis van [[$2|$3]] op [[$1|byna-moedertaalvlak]].",
+ "babel-5": "Hierdie gebruiker het ’n [[$1|professionele]] kennis van [[$2|$3]].",
+ "babel-N": "Hierdie gebruiker het kennis van [[$2|$3]] op [[$1|moedertaalvlak]].",
+ "babel-0-n": "Hierdie gebruiker het [[$1|geen]] kennis van [[$2|Afrikaans]] nie (of verstaan dit met groot moeite).",
+ "babel-1-n": "Hierdie gebruiker het [[$1|basiese]] kennis van [[$2|Afrikaans]].",
+ "babel-2-n": "Hierdie gebruiker het [[$1|middelbare]] kennis van [[$2|Afrikaans]].",
+ "babel-3-n": "Hierdie gebruiker het [[$1|gevorderde]] kennis van [[$2|Afrikaans]].",
+ "babel-4-n": "Hierdie gebruiker het kennis van [[$2|Afrikaans]] op [[$1|byna-moedertaalvlak]].",
+ "babel-5-n": "Hierdie gebruiker het [[$1|professionele]] kennis van [[$2|Afrikaans]].",
+ "babel-N-n": "Hierdie gebruiker het kennis van [[$2|Afrikaans]] op [[$1|moedertaalvlak]].",
+ "babel-footer": "Gebruikers per taal"
+}
diff --git a/MLEB/Babel/i18n/aln.json b/MLEB/Babel/i18n/aln.json
new file mode 100644
index 00000000..b59a5fda
--- /dev/null
+++ b/MLEB/Babel/i18n/aln.json
@@ -0,0 +1,28 @@
+{
+ "@metadata": {
+ "authors": [
+ "Bresta"
+ ]
+ },
+ "babel": "Informatat e përdoruesit në babel",
+ "babel-desc": "Shton funksionin interpretues <code>#babel</code> për m'e lejue gjenerimine kutisë babel të përdoruesit me mundësi të përfshimjes së shabllonave të përshtatun",
+ "babel-url": "Project:Babel",
+ "babel-autocreate-abort": "Emni i përdoruesit që e keni dhânë âsht i përdorun në kategorinë [[$1|Babel]] vetë-krijo dhe nuk mundet me u regjistrue.",
+ "babel-autocreate-reason": "Tue krijue faqen e kategorisë në [[$1|Babel]]",
+ "babel-autocreate-text-levels": "Përdoruesit në këtë kategori bâjnë me dije se kanë njohuni të nivelit $1 të gjuhës $2.",
+ "babel-autocreate-text-main": "Përdoruesit në këtë kategori bâjnë me dije se kanë njohuni të gjuhës $1.",
+ "babel-0": "Ky përdorues [[$1|nuk ka]] njohuni në [[$2|$3]] (apo e kupton me fshtirësi).",
+ "babel-1": "Ky përdorues ka njohuni [[$1|bazike]] në [[$2|$3]].",
+ "babel-2": "Ky përdorues ka njohuni [[$1|mesatare]] në [[$2|$3]].",
+ "babel-3": "Ky përdorues ka njohuni [[$1|të përparueme]] në [[$2|$3]].",
+ "babel-4": "Ky përdorues ka njohuni [[$1|të afërta me folës amtar]] në [[$2|$3]]",
+ "babel-5": "Ky përdorues ka njohuni [[$1|profesionale]] në [[$2|$3]].",
+ "babel-N": "Ky përdorues e kupton [[$2|$3]] si gjuhë [[$1|amtare]].",
+ "babel-0-n": "Ky përdorues [[$1|nuk ka]] njohuni në [[$2|Gegnisht]] (apo e kupton me shumë fshtirësi).",
+ "babel-1-n": "Ky përdorues ka njohuni [[$1|bazike]] në [[$2|Gegnisht]].",
+ "babel-2-n": "Ky përdorues ka njohuni [[$1|mesatare]] në [[$2|Gegnisht]].",
+ "babel-3-n": "Ky përdorues ka njohuni [[$1|të përparueme]] në [[$2|Gegnisht]].",
+ "babel-4-n": "Ky përdorues ka njohuni [[$1|të afërta me nji folës amtar]] në [[$2|Gegnisht]].",
+ "babel-5-n": "Ky përdorues ka njohuni [[$1|profesionale]] në [[$2|Gegnisht]].",
+ "babel-N-n": "Ky përdorues e kupton [[$2|Gegnisht]]en si gjuhë [[$1|amtare]]."
+}
diff --git a/MLEB/Babel/i18n/am.json b/MLEB/Babel/i18n/am.json
new file mode 100644
index 00000000..2ec4a7c2
--- /dev/null
+++ b/MLEB/Babel/i18n/am.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Purodha"
+ ]
+ },
+ "babel-url": "Project:ልሳናት"
+}
diff --git a/MLEB/Babel/i18n/an.json b/MLEB/Babel/i18n/an.json
new file mode 100644
index 00000000..fa6389b9
--- /dev/null
+++ b/MLEB/Babel/i18n/an.json
@@ -0,0 +1,30 @@
+{
+ "@metadata": {
+ "authors": [
+ "Juanpabl"
+ ]
+ },
+ "babel": "Información d'usuario de Babel",
+ "babel-desc": "Adibe a función <code>#babel</code> de parseyo ta premitir a cheneración automatica d'una colunna de caixas d'usuario de babel, con a posibilidat d'encluyir-ie plantillas personalizatas",
+ "babel-url": "Project:Babel",
+ "babel-footer-url": ":Category:Babel - Usuarios por idioma",
+ "babel-autocreate-abort": "O nombre d'usuario especificau ye emplegau ta la creyación automatica de categorías [[$1|Babel]] y no se puede rechistrar.",
+ "babel-autocreate-reason": "Creyando automaticament a pachina de categoría [[$1|Babel]].",
+ "babel-autocreate-text-levels": "Os usuarios d'ista categoría declaran que tienen un ran de dominio $1 de l'idioma $2.",
+ "babel-autocreate-text-main": "Os usuarios en ista categoría declaran que tienen conoixencia de l'idioma $1.",
+ "babel-0": "Iste usuario [[$1|no]] conoixe brenca o [[$2|$3]] (u lo entiende malament).",
+ "babel-1": "Iste usuario conoixe o [[$2|$3]] con un libel [[$1|basico]].",
+ "babel-2": "Iste usuario conoixe o [[$2|$3]] con un libel [[$1|meyo]].",
+ "babel-3": "Iste usuario conoixe o [[$2|$3]] con un libel [[$1|abanzato]].",
+ "babel-4": "Iste conoixe o [[$2|$3]] con un libel [[$1|quasi nativo]].",
+ "babel-5": "Iste usuario conoixe o [[$2|$3]] con un libel [[$1|profesional]].",
+ "babel-N": "Iste usuario conoixe o [[$2|$3]] con o libel d'un fablador [[$1|nativo]].",
+ "babel-0-n": "Iste usuario [[$1|no]] conoixe brenca l'[[$2|aragonés]] (u lo entiende malament)",
+ "babel-1-n": "Iste usuario conoixe l'[[$2|aragonés]] con un libel [[$1|basico]].",
+ "babel-2-n": "Iste usuario conoixe l'[[$2|aragonés]] con un libel [[$1|meyo]].",
+ "babel-3-n": "Iste usuario conoixe l'[[$2|aragonés]] con un libel [[$1|abanzato]].",
+ "babel-4-n": "Iste usuario conoixe l'[[$2|aragonés]] con un libel [[$1|quasi nativo]].",
+ "babel-5-n": "Iste usuario conoixe l'[[$2|aragonés]] con un libel [[$1|profesional]].",
+ "babel-N-n": "Iste usuario conoixe l'[[$2|aragonés]] con o libel d'un fablador [[$1|patrimonial]].",
+ "babel-footer": "Usuarios por idioma"
+}
diff --git a/MLEB/Babel/i18n/ang.json b/MLEB/Babel/i18n/ang.json
new file mode 100644
index 00000000..073c6f22
--- /dev/null
+++ b/MLEB/Babel/i18n/ang.json
@@ -0,0 +1,17 @@
+{
+ "@metadata": {
+ "authors": [
+ "Crazymadlover",
+ "Gott wisst"
+ ]
+ },
+ "babel-0": "Þes brūcend [[$1|ne cann]] sprecan [[$2|$3]] (oððe cann undergietan hit efne swīðe earfoðe).",
+ "babel-1": "Þes brūcend cann forðian mid [[$1|grundlicgendre]] mǣðe [[$2|$3]].",
+ "babel-2": "Þes brūcend cann forðian mid [[$1|middelre]] mǣðe [[$2|$3]].",
+ "babel-3": "Þes brūcend cann forðian mid [[$1|forþweardre]] mǣðe [[$2|$3]].",
+ "babel-N": "Þes brūcend cann [[$2|$3]] [[$1|inlendisclīce]].",
+ "babel-0-n": "Þes brūcere [[$1|ne cann]] sprecan [[$2|Englisce]] (oððe cann undergietan hit efne swīðe earfoðe).",
+ "babel-1-n": "Þes brūcere cann forðian mid [[$1|grundlicgendre]] mǣðe [[$2|Englisces]].",
+ "babel-2-n": "Þes brūcere cann forðian mid [[$1|middelre]] mǣðe [[$2|Englisces]].",
+ "babel-3-n": "Þes brūcere cann forðian mid [[$1|forþweardre]] mǣðe [[$2|Englisces]]."
+}
diff --git a/MLEB/Babel/i18n/anp.json b/MLEB/Babel/i18n/anp.json
new file mode 100644
index 00000000..a8a6d5de
--- /dev/null
+++ b/MLEB/Babel/i18n/anp.json
@@ -0,0 +1,29 @@
+{
+ "@metadata": {
+ "authors": [
+ "Angpradesh"
+ ]
+ },
+ "babel": "बाबेल सदस्य ज़ानकारी",
+ "babel-desc": "एगॊ सदस्य के बाबेल सदस्य-बक्सा अपने आप दै लेली उपयुक्त ऐसनॊ <code>#babel</code> पार्सर क्रिया बढाबै छै. जेकरा मॆ खुद बनैलॊ सदस्यबक्सा भी देलॊ जाबॆ सकॆ छै.",
+ "babel-url": "Project:बाबेल",
+ "babel-footer-url": ":Category:बाबेल - भाषावार सदस्य",
+ "babel-autocreate-abort": "आपनॆ द्वारा इंगित सदस्यनाम [[$1|Babel]] श्रेणी स्व-निर्माण लेली उपयोग मॆ छै आरू निबंधित नै करलॊ जाबॆ सकॆ छै.",
+ "babel-autocreate-reason": "स्वत: निर्मित [[$1|Babel]] श्रेणी पन्ना.",
+ "babel-autocreate-text-levels": "इ श्रेणी केरॊ सदस्य दर्शाबै छै कि हुनकॊ निपुणता स्तर $1 छै $2 लेली.",
+ "babel-autocreate-text-main": "इ श्रेणी केरॊ सदस्य दर्शाबै छै कि हुनका $1 भाषा के ज्ञान छै.",
+ "babel-0": "इ सदस्य कॆ [[$1|नं.]] $1 ज्ञान छै [[$2|$3]] केरॊ (या एकरा बहुत कठिनाई सॆं समझै छै).",
+ "babel-1": "इस सदस्य कॆ [[$2|$3]] केरॊ [[$1|प्राथमिक]] ज्ञान छै.",
+ "babel-2": "इस सदस्य कॆ [[$2|$3]] केरॊ [[$1|मध्यम स्तर]] के ज्ञान छै.",
+ "babel-3": "इस सदस्य कॆ [[$2|$3]] के [[$1|उच्च स्तर]] के ज्ञान छै.",
+ "babel-4": "इस सदस्य कॆ [[$2|$3]] के [[$1|अति-उच्च स्तर]] के ज्ञान छै.",
+ "babel-5": "इस सदस्य कॆ [[$2|$3]] के [[$1|व्यावसायिक स्तर]] के ज्ञान छै.",
+ "babel-N": "इ सदस्य कॆ [[$2|$3]] के [[$1|स्थानिक स्तर]] के ज्ञान छै.",
+ "babel-0-n": "इ सदस्य कॆ [[$2|अंगिका]] के ज्ञान [[$1|नै]] छै (या समझै लेली बहुत प्रयास करै लॆ पड़ै छै.)",
+ "babel-1-n": "इ सदस्य कॆ [[$2|अंगिका]] के [[$1|प्राथमिक]] ज्ञान छै.",
+ "babel-2-n": "इ सदस्य कॆ [[$2|अंगिका]] के [[$1|मध्यम स्तर]] के ज्ञान छै.",
+ "babel-3-n": "इ सदस्य कॆ [[$2|अंगिका]] के [[$1|उच्च स्तर]] के ज्ञान छै.",
+ "babel-4-n": "इस सदस्य कॆ [[$2|अगिका]] के [[$1|अति-उच्च स्तर]] के ज्ञान छै.",
+ "babel-5-n": "इ सदस्य कॆ [[$2|अंगिका]] के [[$1|व्यावसायिक स्तर]] के ज्ञान छै.",
+ "babel-N-n": "इ सदस्य कॆ [[$2|अंगिका]] के [[$1|स्थानिक स्तर]] के ज्ञान छै."
+}
diff --git a/MLEB/Babel/i18n/ar.json b/MLEB/Babel/i18n/ar.json
new file mode 100644
index 00000000..1f6554df
--- /dev/null
+++ b/MLEB/Babel/i18n/ar.json
@@ -0,0 +1,34 @@
+{
+ "@metadata": {
+ "authors": [
+ "Abanima",
+ "Ciphers",
+ "Meno25",
+ "OsamaK"
+ ]
+ },
+ "babel": "معلومات بابل {{GENDER:$1|للمستخدم|للمستخدمة}}",
+ "babel-desc": "يضيف دالة المحلل <code>#babel</code> للسماح بالتوليد التلقائي لعامود صندوق بابل مع إمكانية تضمين قوالب أخرى",
+ "babel-url": "Project:بابل",
+ "babel-footer-url": ":Category:بابل - المستخدمون حسب اللغة",
+ "babel-autocreate-abort": "اسم المستخدم الذي حددته مستخدم للإنشاء التلقائي لتصنيفات [[$1|بابل]] ولا يمكن تسجيله.",
+ "babel-autocreate-reason": "إنشاء صفحة تصنيف [[$1|بابل]] تلقائيا.",
+ "babel-autocreate-text-levels": "المستخدمون في هذا التصنيف مستوى مهارتهم $1 للغة $2.",
+ "babel-autocreate-text-main": "المستخدمون في هذا التصنيف لديهم معرفة باللغة $1.",
+ "babel-autocreate-user": "إنشاء بابل التلقائي",
+ "babel-0": "{{GENDER:{{PAGENAME}}|هذا المستخدم|هذه المستخدمة}} [[$1|ليس]] {{GENDER:{{PAGENAME}}|لديه|لديها}} معرفة ب[[$2|$3]] (أو {{GENDER:{{PAGENAME}}|يفهمها|تفهمها}} بصعوبة بالغة).",
+ "babel-1": "{{GENDER:{{PAGENAME}}|هذا المستخدم لديه|هذه المستخدمة لديها}} معرفة [[$1|أساسية]] ب[[$2|$3]].",
+ "babel-2": "{{GENDER:{{PAGENAME}}|هذا المستخدم لديه|هذه المستخدمة لديها}} معرفة [[$1|متوسطة]] ب[[$2|$3]].",
+ "babel-3": "{{GENDER:{{PAGENAME}}|هذا المستخدم لديه|هذه المستخدمة لديها}} معرفة [[$1|متقدمة]] ب[[$2|$3]].",
+ "babel-4": "{{GENDER:{{PAGENAME}}|هذا المستخدم لديه|هذه المستخدمة لديها}} معرفة [[$1|تقترب من مستوى اللغة الأم]] ب[[$2|$3]].",
+ "babel-5": "{{GENDER:{{PAGENAME}}|هذا المستخدم لديه|هذه المستخدمة لديها}} معرفة [[$1|احترافية]] ب[[$2|$3]].",
+ "babel-N": "{{GENDER:{{PAGENAME}}|هذا المستخدم|هذه المستخدمة}} [[$1|{{GENDER:{{PAGENAME}}|لغته|لغتها}} الأم]] هي [[$2|$3]].",
+ "babel-0-n": "{{GENDER:{{PAGENAME}}|هذا المستخدم|هذه المستخدمة}} [[$1|ليس]] {{GENDER:{{PAGENAME}}|لديه|لديها}} معرفة ب[[$2|العربية]] (أو {{GENDER:{{PAGENAME}}|يفهمها|تفهمها}} بصعوبة بالغة).",
+ "babel-1-n": "{{GENDER:{{PAGENAME}}|هذا المستخدم|هذه المستخدمة}} {{GENDER:{{PAGENAME}}|لديه|لديها}} معرفة [[$1|أساسية]] ب[[$2|العربية]].",
+ "babel-2-n": "{{GENDER:{{PAGENAME}}|هذا المستخدم لديه|هذه المستخدمة لديها}} معرفة [[$1|متوسطة]] ب[[$2|العربية]].",
+ "babel-3-n": "{{GENDER:{{PAGENAME}}|هذا المستخدم لديه|هذه المستخدمة لديها}} معرفة [[$1|متقدمة]] ب[[$2|العربية]].",
+ "babel-4-n": "{{GENDER:{{PAGENAME}}|هذا المستخدم لديه|هذه المستخدمة لديها}} معرفة [[$1|تقترب من مستوى اللغة الأم]] ب[[$2|العربية]].",
+ "babel-5-n": "{{GENDER:{{PAGENAME}}|هذا المستخدم لديه|هذه المستخدمة لديها}} معرفة [[$1|احترافية]] ب[[$2|العربية]].",
+ "babel-N-n": "{{GENDER:{{PAGENAME}}|هذا المستخدم|هذه المستخدمة}} [[$1|{{GENDER:{{PAGENAME}}|لغته|لغتها}} الأم]] هي [[$2|العربية]].",
+ "babel-footer": "المستخدمون حسب اللغة"
+}
diff --git a/MLEB/Babel/i18n/arc.json b/MLEB/Babel/i18n/arc.json
new file mode 100644
index 00000000..fef47aa8
--- /dev/null
+++ b/MLEB/Babel/i18n/arc.json
@@ -0,0 +1,25 @@
+{
+ "@metadata": {
+ "authors": [
+ "Basharh",
+ "GerardM",
+ "Man2fly2002"
+ ]
+ },
+ "babel": "ܝܕ̈ܥܬܐ ܕܡܦܠܚܢܐ ܕܒܒܠ",
+ "babel-url": "Project:ܒܒܠ",
+ "babel-0": "ܗܢܐ ܡܦܠܚܢܐ [[$1|ܠܐ ܝܕܥ]] [[$2|$3]] (ܐܘ ܝܕܥ ܠܗ ܒܥܣܩܘܬܐ)",
+ "babel-1": "ܗܢܐ ܡܦܠܚܢܐ ܐܝܬ ܠܗ ܝܕܥܬܐ [[$1|ܪܫܝܬܐ]] ܒ[[$2|$3]].",
+ "babel-2": "ܗܢܐ ܡܦܠܚܢܐ ܐܝܬ ܠܗ ܝܕܥܬܐ [[$1|ܡܨܥܝܬܐ]] ܒ[[$2|$3]]",
+ "babel-3": "ܗܢܐ ܡܦܠܚܢܐ ܐܝܬ ܠܗ ܝܕܥܬܐ [[$1|ܡܬܩܕܡܢܝܬܐ]] ܒ[[$2|$3]]",
+ "babel-4": "ܗܢܐ ܡܦܠܚܢܐ ܐܝܬ ܠܗ ܝܕܥܬܐ [[$1|ܩܪܝܒܬܐ ܡܢ ܫܘܝܐ ܕܠܫܢܗ ܐܡܗܝܐ]] ܒ[[$2|$3]]",
+ "babel-5": "ܗܢܐ ܡܦܠܚܢܐ ܐܝܬ ܠܗ ܝܕܥܬܐ [[$1|ܚܪܝܦܬܐ]] ܒ[[$2|$3]]",
+ "babel-N": "ܗܢܐ ܡܦܠܚܢܐ ܐܝܬ ܠܗ ܝܕܥܬܐ ܒ[[$2|$3]] [[$1|ܐܝܟ ܠܫܢܗ ܐܡܗܝܐ]]",
+ "babel-0-n": "ܗܢܐ ܡܦܠܚܢܐ [[$1|ܠܐ ܝܕܥ]] [[$2|ܣܘܪܝܝܐ]] (ܐܘ ܝܕܥ ܠܗ ܒܥܣܩܘܬܐ)",
+ "babel-1-n": "ܗܢܐ ܡܦܠܚܢܐ ܐܝܬ ܠܗ ܝܕܥܬܐ [[$1|ܪܫܝܬܐ]] ܒ[[$2|ܣܘܪܝܝܐ]]",
+ "babel-2-n": "ܗܢܐ ܡܦܠܚܢܐ ܐܝܬ ܠܗ ܝܕܥܬܐ [[$1|ܡܨܥܝܬܐ]] ܒ[[$2|ܣܘܪܝܝܐ]]",
+ "babel-3-n": "ܗܢܐ ܡܦܠܚܢܐ ܐܝܬ ܠܗ ܝܕܥܬܐ [[$1|ܡܬܩܕܡܢܝܬܐ]] ܒ[[$2|ܣܘܪܝܝܐ]]",
+ "babel-4-n": "ܗܢܐ ܡܦܠܚܢܐ ܐܝܬ ܠܗ ܝܕܥܬܐ [[$1|ܩܪܝܒܬܐ ܡܢ ܠܫܢܗ ܐܡܗܝܐ]] ܒ[[$2|ܣܘܪܝܝܐ]]",
+ "babel-5-n": "ܗܢܐ ܡܦܠܚܢܐ ܐܝܬ ܠܗ ܝܕܥܬܐ [[$1|ܚܪܝܦܬܐ]] ܒ[[$2|ܣܘܪܝܝܐ]]",
+ "babel-N-n": "ܗܢܐ ܡܦܠܚܢܐ ܐܝܬ ܠܗ ܝܕܥܬܐ [[$1|ܐܝܟ ܠܫܢܗ ܐܡܗܝܐ]] ܒ[[$2|ܣܘܪܝܝܐ]]"
+}
diff --git a/MLEB/Babel/i18n/arn.json b/MLEB/Babel/i18n/arn.json
new file mode 100644
index 00000000..be9f8dd7
--- /dev/null
+++ b/MLEB/Babel/i18n/arn.json
@@ -0,0 +1,31 @@
+{
+ "@metadata": {
+ "authors": [
+ "Kaniw",
+ "Lin linao"
+ ]
+ },
+ "babel": "Babel kvzawfe ñi kimam",
+ "babel-desc": "Yomvmpe ti <code>#babel</code> gvnezuamvn kamañ ñi kisu pepi zewmawam kiñe Babel kvzawfe ñi columna de cuadro pepi nvrvftvkukelu kisu ñi plantilla",
+ "babel-url": "Project: Babel",
+ "babel-footer-url": ":Xokiñ:Babel - Kvzawfe zugun mew",
+ "babel-autocreate-abort": "Tici kvzawfe vy tami zicolvn niegey [[$1|Babel]] xokiñ ñi kisu zewmawam, pepi cijkantvkugelay.",
+ "babel-autocreate-reason": "Kisu zewmaley [[$1|Babel]] xokiñ ñi aztapvl.",
+ "babel-autocreate-text-levels": "Kvzawkvlelu faci xokiñ mu feypi ñi kimniefiñ $1 pvrawe mew ti $2 cezugun mew",
+ "babel-autocreate-text-main": "Kvzawfe faci xokiñ mu feypi ñi kimniefi tici $1 cezugun",
+ "babel-0": "Tüfachi che [[$1|chemnorume]] [[$2|kim$3lay]].",
+ "babel-1": "Tüfachi che [[$1|püchintu]] [[$2|kim$3y]].",
+ "babel-2": "Tüfachi che [[$1|küme]] [[$2|kim$3y]].",
+ "babel-3": "Tüfachi che [[$1|rume]] [[$2|kim$3y]].",
+ "babel-4": "Faci kvzawfe [[$1|epe azvmniefi]] ti [[$2|$3]] mew.",
+ "babel-5": "Faci kvzawfe ta [[$1|gvnezuamniefegey]] ti [[$2|$3]] mew.",
+ "babel-N": "Tüfachi che ñi [[$1|wünen dungun]] ta [[$2|$3]].",
+ "babel-0-n": "Tüfachi che [[$1|chemnorume]] [[$2|kimmapudungulay]].",
+ "babel-1-n": "Tüfachi che [[$1|püchintu]] [[$2|kimmapudunguy]].",
+ "babel-2-n": "Tüfachi che [[$1|küme]] [[$2|kimmapudunguy]].",
+ "babel-3-n": "Tüfachi che [[$1|rume]] [[$2|kimmapudunguy]].",
+ "babel-4-n": "Faci kvzawfe [[$1|epe azvmniefi]] ti [[$2|mapuzugun]].",
+ "babel-5-n": "Faci kvzawfe ta [[$1|gvnezuamniefegey]] [[$2|Mapuzugun]] mew.",
+ "babel-N-n": "Tvfaci ce ñi [[$1|wvnen zugun]] ta [[$2|mapuzugun]].",
+ "babel-footer": "Kvzawfe ñi zugun mew"
+}
diff --git a/MLEB/Babel/i18n/aro.json b/MLEB/Babel/i18n/aro.json
new file mode 100644
index 00000000..9e98051a
--- /dev/null
+++ b/MLEB/Babel/i18n/aro.json
@@ -0,0 +1,13 @@
+{
+ "@metadata": {
+ "authors": [
+ "Ooswesthoesbes"
+ ]
+ },
+ "babel-0": "Ma-e [[$1|tsa-aita mahue eje]] jejeme [[$2|$3]] poi (o pitsatuda taisi mahue).",
+ "babel-1": "Ma-e [[$1|cuatsa-isi]] jejeme [[$2|$3]] poi.",
+ "babel-2": "Ma-e [[$1|tsata pezohue eje]] jejeme [[$2|$3]] poi.",
+ "babel-0-n": "Ma-e [[$1|tsa-aita mahue eje]] jejeme [[$2|araona]] poi (o pitsatuda taisi mahue).",
+ "babel-1-n": "Ma-e [[$1|cuatsa-isi]] jejeme [[$2|araona]] poi.",
+ "babel-2-n": "Ma-e [[$1|tsata pezohue eje]] jejeme [[$2|araona]] poi."
+}
diff --git a/MLEB/Babel/i18n/ary.json b/MLEB/Babel/i18n/ary.json
new file mode 100644
index 00000000..efd2302a
--- /dev/null
+++ b/MLEB/Babel/i18n/ary.json
@@ -0,0 +1,29 @@
+{
+ "@metadata": {
+ "authors": [
+ "Enzoreg",
+ "GerardM"
+ ]
+ },
+ "babel": "Meĝlomaṫ Babil ĝel l-mosṫeĥdim",
+ "babel-desc": "Zid l-fonksyon <code>#babel</code> baċ ṫṣayeb otomaṫikiyan sendoq Babil o ṫeĝmel fih modélaṫ maḫelliyin.",
+ "babel-url": "Project:Babel",
+ "babel-autocreate-abort": "Smiyṫ l-mosṫeĥdim li deĥĥelṫi mosṫeĥdama le l-ĥṫiraĝ l-'otomaṫiki dyal l-katégoryaṫ [[$1|Babil]] o ma imkenlikċ ṫċejlo.",
+ "babel-autocreate-reason": "Ĥṫiraĝ otomaṫiki dyal l-katégori [[$1|Babel]].",
+ "babel-autocreate-text-levels": "L-mosṫeĥdimin li fe had n-noĝ ĝendhom mosṫawa $1 fe had l-loġa : $2.",
+ "babel-autocreate-text-main": "L-mosṫeĥdimin li fe had n-noĝ ĝendhom meĝrifa fe had l-loġa : $1.",
+ "babel-0": "Had l-mosṫeĥdim ma ĝendo [[$1|ḫṫa]] meĝrifa fe l-loġa [[$2|l-Meġribiya]] (ola kayfhemha be soĝoba).",
+ "babel-1": "Had l-mosṫeĥdim ĝendo mosṫawa [[$1|asasi]] fe [[$2|l-Meġribiya]].",
+ "babel-2": "Had l-mosṫeĥdim ĝendo mosṫawa [[$1|meṫweṣṣet]] fe [[$2|l-Meġribiya]].",
+ "babel-3": "Had l-mosṫeĥdim ĝendo mosṫawa [[$1|meṫqeddem]] fe [[$2|l-Meġribiya]].",
+ "babel-4": "Had l-mosṫeĥdim ĝendo mosṫawa [[$1|qrib le loġaṫ l-'om]] fe [[$2|l-Meġribiya]].",
+ "babel-5": "Had l-mosṫeĥdim ĝendo meĝrifa [[$1|ḫṫirafiya]] fe [[$2|l-Meġribiya]].",
+ "babel-N": "Had l-mosṫeĥdim kayfhem l-loġa [[$2|l-Meġribiya]] bḫal [[$1|loġṫo l-'om]].",
+ "babel-0-n": "Had l-mosṫeĥdim ma ĝendo [[$1|ḫṫa]] meĝrifa fe l-loġa [[$2|l-Meġribiya]] (ola kayfhemha be soĝoba).",
+ "babel-1-n": "Had l-mosṫeĥdim ĝendo mosṫawa [[$1|asasi]] fe [[$2|l-Meġribiya]].",
+ "babel-2-n": "Had l-mosṫeĥdim ĝendo mosṫawa [[$1|meṫweṣṣet]] fe [[$2|l-Meġribiya]].",
+ "babel-3-n": "Had l-mosṫeĥdim ĝendo mosṫawa [[$1|meṫqeddem]] fe [[$2|l-Meġribiya]].",
+ "babel-4-n": "Had l-mosṫeĥdim ĝendo mosṫawa [[$1|qrib le loġṫo l-'om]] fe [[$2|l-Meġribiya]].",
+ "babel-5-n": "Had l-mosṫeĥdim ĝendo meĝrifa [[$1|ḫṫirafiya]] dyal [[$2|l-Meġribiya]].",
+ "babel-N-n": "Had l-mosṫeĥdim kayfhem l-loġa [[$2|l-Meġribiya]] bḫal [[$1|loġto l-'om]]."
+}
diff --git a/MLEB/Babel/i18n/arz.json b/MLEB/Babel/i18n/arz.json
new file mode 100644
index 00000000..7bd5cc6c
--- /dev/null
+++ b/MLEB/Babel/i18n/arz.json
@@ -0,0 +1,31 @@
+{
+ "@metadata": {
+ "authors": [
+ "Dudi",
+ "Ghaly",
+ "Meno25"
+ ]
+ },
+ "babel": "معلومات Babel بتاعة اليوزرات",
+ "babel-desc": "زوّد <code>#babel</code> علشان تسمح يإن يتعمل اوتوماتيكى علبة عامود بابل بإمكانية تزويد قوالب مخصوصه",
+ "babel-url": "Project:بابل",
+ "babel-autocreate-abort": "اسم اليوزر اللى حددته مستعمل من [[$1|بابل]] علشان يعمل تصنيفات اوتوماتيكى و ما ينفعش يتسجل.",
+ "babel-autocreate-reason": "بيعمل صفحة تصنيف [[$1|بابل]] اوتوماتيكى.",
+ "babel-autocreate-text-levels": "اليوزرات فى التصنيف ده بيبيّنو ان مستواهم $1 فى اللغه $2.",
+ "babel-autocreate-text-main": "اليوزرات اللى فى التصنيف ده بيبيّنو ان عندهم معرفه باللغه $1.",
+ "babel-0": "اليوزر ده [[$1|ما عندوش]] معرفه بـ[[$2|$3]] (او بيفهمها بصعوبه كبيره).",
+ "babel-1": "اليوزر ده عنده معرفه [[$1|اساسيه]] بـ[[$2|$3]].",
+ "babel-2": "اليوزر ده يقدر [[$1|يتفاهم]] بـ[[$2|$3]].",
+ "babel-3": "اليوزر ده عنده معرفه [[$1|متقدمه]] بـ[[$2|$3]].",
+ "babel-4": "اليوزر ده عنده معرفه [[$1|قريبه من لغته الاصليه]] بال[[$2|$3]].",
+ "babel-5": "اليوزر ده [[$1|حرّيف]] فى الـ[[$2|$3]].",
+ "babel-N": "[[$1|اللغه الاصليه]] بتاعة اليوزر ده [[$2|$3]].",
+ "babel-0-n": "اليوزر ده [[$1|ما عندوش]] معرفه باللغه ال[[$2|مصرى]] (او بيفهمها بصعوبه كبيره).",
+ "babel-1-n": "اليوزر ده عنده معرفه [[$1|اساسيه]] باللغه ال[[$2|مصرى]].",
+ "babel-2-n": "اليوزر ده يقدر [[$1|يتفاهم]] باللغه ال[[$2|مصرى]].",
+ "babel-3-n": "اليوزر ده عنده معرفه [[$1|متقدمه]] باللغه ال[[$2|مصرى]].",
+ "babel-4-n": "اليوزر ده عنده معرفه [[$1|قريبه من لغته الاصليه]] بال[[$2|مصرى]].",
+ "babel-5-n": "اليوزر ده [[$1|حرّيف]] فى اللغه ال[[$2|مصرى]].",
+ "babel-N-n": "[[$1|اللغه الاصليه]] بتاعة اليوزر ده [[$2|مصرى]].",
+ "babel-footer": "اليوزرات حسب اللغة"
+}
diff --git a/MLEB/Babel/i18n/as.json b/MLEB/Babel/i18n/as.json
new file mode 100644
index 00000000..6d68b382
--- /dev/null
+++ b/MLEB/Babel/i18n/as.json
@@ -0,0 +1,34 @@
+{
+ "@metadata": {
+ "authors": [
+ "Biraj",
+ "Bishnu Saikia",
+ "Chaipau",
+ "Gitartha.bordoloi"
+ ]
+ },
+ "babel": "ব্যবহাৰকাৰীৰ বাবেল তথ্য",
+ "babel-desc": "নিজৰ টেম্পলেটত স্বয়ংক্ৰিয় বাবেল ব্যবহাৰকাৰী বক্স যোগ কৰিবলৈ <code>#babel</code> পাৰ্চাৰ ফাংচন যোগ কৰক",
+ "babel-url": "Project:বাবেল",
+ "babel-footer-url": ":শ্ৰেণী:Babel - ভাষা অনুযায়ী ব্যৱহাৰকাৰী",
+ "babel-autocreate-abort": "আপুনি উল্লেখ কৰা ব্যৱহাৰকাৰী নামটো (ইউজাৰনেম) [[$1|Babel]]ৰ স্বয়ংক্ৰিয় শ্ৰেণীকৰণ কৰিবলৈ ব্যৱহাৰ কৰা হৈছে আৰু পঞ্জীভূক্ত কৰিব পৰা নাযায় ।",
+ "babel-autocreate-reason": "স্বয়ংক্ৰিয়ভাৱে [[$1|বাবেল]] শ্ৰেণীৰ পৃষ্ঠা সৃষ্টি কৰা হৈছে।",
+ "babel-autocreate-text-levels": "এই শ্ৰেণীৰ ব্যৱহাৰকাৰীৰ $2 ভাষাৰ $1 পৰ্য্যায়ৰ জ্ঞান থকা সূচায় ।",
+ "babel-autocreate-text-main": "এই শ্ৰেণীত অন্তৰ্ভূক্ত সকলোবোৰ ব্যৱহাৰকাৰীৰে $1 ভাষাৰ জ্ঞান থকা সূচায় ।",
+ "babel-0": "এই ব্যবহাৰকাৰীৰ [[$2|$3]]ৰ ওপৰত কোনো জ্ঞান [[$1|নাই]] (অথবা অশেষ কষ্টৰেহে বুজিব পাৰে)।",
+ "babel-1": "এই ব্যবহাৰকাৰীৰ [[$2|$3]]ৰ ওপৰত [[$1|প্ৰাথমিক]] জ্ঞান আছে ।",
+ "babel-2": "এই ব্যবহাৰকাৰীৰ [[$2|$3]]ৰ ওপৰত [[$1|মাধ্যমিক]] জ্ঞান আছে ।",
+ "babel-3": "এই ব্যবহাৰকাৰীৰ [[$2|$3]]ৰ ওপৰত [[$1|ভাল]] জ্ঞান আছে ।",
+ "babel-4": "এই ব্যবহাৰকাৰীৰ [[$2|$3]]ৰ ওপৰত [[$1|প্ৰায় মাতৃভাষাৰ সমকক্ষ]] জ্ঞান আছে।",
+ "babel-5": "এই ব্যবহাৰকাৰীৰ [[$2|$3]]ৰ ওপৰত [[$1|বৃত্তিধাৰী]] জ্ঞান আছে ।",
+ "babel-N": "এই ব্যবহাৰকাৰীৰ [[$2|$3]]ৰ ওপৰত [[$1|মাতৃভাষাৰ সমকক্ষ]] জ্ঞান আছে।",
+ "babel-0-n": "এই ব্যবহাৰকাৰীৰ [[$2|অসমীয়া]]ৰ ওপৰত কোনো জ্ঞান [[$1|নাই]] (অথবা অশেষ কষ্টৰেহে বুজিব পাৰে)।",
+ "babel-1-n": "এই ব্যবহাৰকাৰীৰ [[$2|অসমীয়া]]ৰ ওপৰত [[$1|প্ৰাথমিক]] জ্ঞান আছে ।",
+ "babel-2-n": "এই ব্যবহাৰকাৰীৰ [[$2|অসমীয়া]]ৰ ওপৰত [[$1|মাধ্যমিক]] জ্ঞান আছে ।",
+ "babel-3-n": "এই ব্যবহাৰকাৰীৰ [[$2|অসমীয়া]]ৰ ওপৰত [[$1|ভাল]] জ্ঞান আছে ।",
+ "babel-4-n": "এই ব্যবহাৰকাৰীৰ [[$2|অসমীয়া]]ৰ ওপৰত [[$1|প্ৰায় মাতৃভাষাৰ সমকক্ষ]] জ্ঞান আছে।",
+ "babel-5-n": "এই ব্যবহাৰকাৰীৰ [[$2|অসমীয়া]]ৰ ওপৰত [[$1|বৃত্তিধাৰী]] জ্ঞান আছে ।",
+ "babel-N-n": "এই ব্যবহাৰকাৰীৰ [[$2|অসমীয়া]]ৰ ওপৰত [[$1|মাতৃভাষাৰ সমকক্ষ]] জ্ঞান আছে।",
+ "babel-template": "Template:সদস্য $1",
+ "babel-footer": "ভাষা অনুযায়ী ব্যৱহাৰকাৰী"
+}
diff --git a/MLEB/Babel/i18n/ast.json b/MLEB/Babel/i18n/ast.json
new file mode 100644
index 00000000..4a4897fd
--- /dev/null
+++ b/MLEB/Babel/i18n/ast.json
@@ -0,0 +1,31 @@
+{
+ "@metadata": {
+ "authors": [
+ "Esbardu",
+ "Xuacu"
+ ]
+ },
+ "babel": "Información babel d'usuariu",
+ "babel-desc": "Añade la función d'análisis sintáuticu <code>#babel</code> pa permitir la xeneración automática d'una columna userbox babel cola capacidá d'incluyir plantíes al gustu d'ún",
+ "babel-url": "Project:Babel",
+ "babel-footer-url": ":Category:Babel - Usuarios por llingua",
+ "babel-autocreate-abort": "L'usuariu que conseñasti s'usa pa la creación automática de la categoría [[$1|Babel]] y nun se pue rexistrar.",
+ "babel-autocreate-reason": "Creando automáticamente la páxina de la categoría [[$1|Babel]].",
+ "babel-autocreate-text-levels": "Los usuarios d'esta categoría indiquen que tienen un nivel de conocimientu $1 de la llingua $2.",
+ "babel-autocreate-text-main": "Los usuarios d'esta categoría indiquen que tienen conocimientos de la llingua $1.",
+ "babel-0": "{{GENDER:$4|Esti usuariu|Esta usuaria}} [[$1|nun]] tien conocimientos de [[$2|$3]] (o entiendelo con gran dificultá).",
+ "babel-1": "{{GENDER:$4|Esti usuariu|Esta usuaria}} tien un conocimientu [[$1|básicu]] de [[$2|$3]].",
+ "babel-2": "{{GENDER:$4|Esti usuariu|Esta usuaria}} tien un conocimientu [[$1|intermediu]] de [[$2|$3]].",
+ "babel-3": "{{GENDER:$4|Esti usuariu|Esta usuaria}} tien un conocimientu [[$1|avanzáu]] de [[$2|$3]].",
+ "babel-4": "{{GENDER:$4|Esti usuariu|Esta usuaria}} tien un conocimientu [[$1|cuasi nativu]] de [[$2|$3]].",
+ "babel-5": "{{GENDER:$4|Esti usuariu|Esta usuaria}} tien un conocimientu [[$1|profesional]] de [[$2|$3]].",
+ "babel-N": "{{GENDER:$4|Esti usuariu|Esta usuaria}} tien un conocimientu [[$1|nativu]] de [[$2|$3]].",
+ "babel-0-n": "{{GENDER:$4|Esti usuariu|Esta usuaria}} [[$1|nun]] tien conocimientos d'[[$2|asturianu]] (o entiendelo con gran dificultá).",
+ "babel-1-n": "{{GENDER:$4|Esti usuariu|Esta usuaria}} tien un conocimientu [[$1|básicu]] d'[[$2|asturianu]].",
+ "babel-2-n": "{{GENDER:$4|Esti usuariu|Esta usuaria}} tien un conocimientu [[$1|intermediu]] d'[[$2|asturianu]].",
+ "babel-3-n": "{{GENDER:$4|Esti usuariu|Esta usuaria}} tien un conocimientu [[$1|avanzáu]] d'[[$2|asturianu]].",
+ "babel-4-n": "{{GENDER:$4|Esti usuariu|Esta usuaria}} tien un conocimientu [[$1|cuasi nativu]] d'[[$2|asturianu]].",
+ "babel-5-n": "{{GENDER:$4|Esti usuariu|Esta usuaria}} tien un conocimientu [[$1|profesional]] d'[[$2|asturianu]].",
+ "babel-N-n": "{{GENDER:$4|Esti usuariu|Esta usuaria}} ye {{GENDER:$4|un|una}} falante [[$1|{{GENDER:$4|nativu|nativa}}]] d'[[$2|asturianu]].",
+ "babel-footer": "Usuarios por llingua"
+}
diff --git a/MLEB/Babel/i18n/avk.json b/MLEB/Babel/i18n/avk.json
new file mode 100644
index 00000000..cc1874d0
--- /dev/null
+++ b/MLEB/Babel/i18n/avk.json
@@ -0,0 +1,31 @@
+{
+ "@metadata": {
+ "authors": [
+ "Sab",
+ "Wikimistusik"
+ ]
+ },
+ "babel": "Babel webesikgiva",
+ "babel-desc": "Batcoba va <code>#babel</code> exulerafli loplekur ta mivaskafa gononasbara va Babel webesikborbriz do rotira va doplekura va ilkateza",
+ "babel-url": "Project:Babel",
+ "babel-footer-url": "Webesik kare ava",
+ "babel-autocreate-abort": "Ruidan webesikyolt joke [[$1|Babel]] mivredurafa loma zo faver nume me zo vertokar.",
+ "babel-autocreate-reason": "Mivaskafa redura va [[$1|Babel]] lomabu.",
+ "babel-autocreate-text-levels": "Webesik ke bata loma bazed da tid $1 ekastinaf icde $2 ava.",
+ "babel-autocreate-text-main": "Webesik ke bata loma bazed da kan $1 ava grugoled.",
+ "babel-0": "Bat webesik kan [[$2|$3]] [[$1|me]] grugoler (oke wavdapon gildar).",
+ "babel-1": "Bat webesik kan [[$2|$3]] [[$1|omekon]] grugoler.",
+ "babel-2": "Bat webesik kan [[$2|$3]] [[$1|mialukekon]] grugoler.",
+ "babel-3": "Bat webesik kan [[$2|$3]] [[$1|ontinekon]] grugoler.",
+ "babel-4": "Bat webesik kan [[$2|$3]] dum [[$1|nasbokavusik]] riwe grugoler.",
+ "babel-5": "Bat webesik kan [[$2|$3]] [[$1|ebekon]] grugoler.",
+ "babel-N": "Bat webesik kan [[$2|$3]] ton [[$1|nasbokavusik]] grugoler.",
+ "babel-0-n": "Bat webesik kan [[$2|Kotava]] [[$1|me]] grugoler (oke wavdapon gildar).",
+ "babel-1-n": "Bat webesik kan [[$2|Kotava]] [[$1|omekon]] grugoler.",
+ "babel-2-n": "Bat webesik kan [[$2|Kotava]] [[$1|mialukekon]] grugoler.",
+ "babel-3-n": "Bat webesik kan [[$2|Kotava]] [[$1|ontinekon]] grugoler.",
+ "babel-4-n": "Bat webesik kan [[$2|Kotava]] ton [[$1|nasbokavusik]] riwe grugoler.",
+ "babel-5-n": "Bat webesik kan [[$2|Kotava]] [[$1|ebekon]] grugoler.",
+ "babel-N-n": "Bat webesik kan [[$2|Kotava]] ton [[$1|nasbokavusik]] grugoler.",
+ "babel-footer": "Webesik kare ava"
+}
diff --git a/MLEB/Babel/i18n/ay.json b/MLEB/Babel/i18n/ay.json
new file mode 100644
index 00000000..6d9c7756
--- /dev/null
+++ b/MLEB/Babel/i18n/ay.json
@@ -0,0 +1,28 @@
+{
+ "@metadata": {
+ "authors": [
+ "Erebedhel"
+ ]
+ },
+ "babel": "Wawil apnaqirxata uñt'ayawi",
+ "babel-desc": "<code>#babel</code> arthapi suk'atat uñakipawi lurt'awix yapxatiwa, mäwawil apnaqirina llatatax uñacht'arawi turkatax apantachi q'aphawimpiwa achurpayachayiti luräni.",
+ "babel-url": "Project:Wawil",
+ "babel-autocreate-abort": "Jumaxa apnaqirina sutima [[$1|Wawil]]-na patawi uñstayarachayawi mirq'ta jani qillqr'ayasiway.",
+ "babel-autocreate-reason": "[[$1|Wawil]]-na patawi uñstawi uñstayarachayaski.",
+ "babel-autocreate-text-levels": "Patawinax apnaqiripacha $1 q'aphawi $2 arutakiwa sistu.",
+ "babel-autocreate-text-main": "Patawinax apnaqiripacha $1 aru yatiniwa sistu.",
+ "babel-0": "Jupax apnaqiri [[$2|$3]]xa [[$1|jani]] yatiniwa (inasa ch'ama yattaniwa).",
+ "babel-1": "Jupax apnaqiri [[$2|$3]]xa [[$1|juk'a]] yatiniwa.",
+ "babel-2": "Jupax apnaqiri [[$2|$3]]xa [[$1|chika]] yatiniwa.",
+ "babel-3": "Jupax apnaqiri [[$2|$3]]xa [[$1|alluxa]] yatiniwa.",
+ "babel-4": "Jupax apnaqiri [[$2|$3]]xa [[$1|niyaki yurawita]] yatiniwa.",
+ "babel-5": "Jupax apnaqiri [[$2|$3]]xa [[$1|yatxatata]] yatiniwa.",
+ "babel-N": "Jupax apnaqiri [[$2|$3]]xa [[$1|yurawita]] yatiniwa.",
+ "babel-0-n": "Jupax apnaqiri [[$2|aymar aru]]xa [[$1|jani]] yatiniwa (inasa ch'ama yattaniwa).",
+ "babel-1-n": "Jupax apnaqiri [[$2|aymar aru]]xa [[$1|juk'a]] yatiniwa.",
+ "babel-2-n": "Jupax apnaqiri [[$2|aymar aru]]xa [[$1|chika]] yatiniwa.",
+ "babel-3-n": "Jupax apnaqiri [[$2|aymar aru]]xa [[$1|alluxa]] yatiniwa.",
+ "babel-4-n": "Jupax apnaqiri [[$2|aymar aru]]xa [[$1|niyaki yurawita]] yatiniwa.",
+ "babel-5-n": "Jupax apnaqiri [[$2|aymar aru]]xa [[$1|yatxatata]] yatiniwa.",
+ "babel-N-n": "Jupax apnaqiri [[$2|aymar aru]]xa [[$1|yurawita]] yatiniwa."
+}
diff --git a/MLEB/Babel/i18n/az.json b/MLEB/Babel/i18n/az.json
new file mode 100644
index 00000000..86fe636b
--- /dev/null
+++ b/MLEB/Babel/i18n/az.json
@@ -0,0 +1,29 @@
+{
+ "@metadata": {
+ "authors": [
+ "PPerviz",
+ "Purodha",
+ "Vago",
+ "Vito Genovese",
+ "Vugar 1981"
+ ]
+ },
+ "babel": "Babil istifadəçi məlumatları",
+ "babel-url": "Project:Babil",
+ "babel-footer-url": ":Kateqoriya:Babil - Dillərinə görə istifadəçilər",
+ "babel-0": "Bu istifadəçi [[$1|heç]] [[$2|$3]] bilmir (ya da çətin anlayır).",
+ "babel-1": "Bu istifadəçi [[$2|$3]] dilini [[$1|zəif]] bilir.",
+ "babel-2": "Bu istifadəçi [[$2|$3]] dilini [[$1|orta səviyyədə]] bilir.",
+ "babel-3": "Bu istifadəçi [[$2|$3]] dilini [[$1|yaxşı]] bilir.",
+ "babel-4": "Bu istifadəçi [[$2|$3]] dilini [[$1|ana dili kimi]] bilir.",
+ "babel-5": "Bu istifadəçi [[$2|$3]] dilini [[$1|ana dili kimi]] bilir.",
+ "babel-N": "[[$2|$3]] dili bu istifadəçinin [[$1|ana dilidir]].",
+ "babel-0-n": "Bu istifadəçi [[$2|Azərbaycan dilini]] [[$1|heç]] bilmir (ya da çətin anlayır).",
+ "babel-1-n": "Bu istifadəçi [[$2|Azərbaycan dilini]] [[$1|zəif]] bilir.",
+ "babel-2-n": "Bu istifadəçi [[$2|Azərbaycan dilini]] [[$1|orta səviyyədə]] bilir.",
+ "babel-3-n": "Bu istifadəçi [[$2|Azərbaycan dilini]] [[$1|yaxşı]] bilir.",
+ "babel-4-n": "Bu istifadəçi [[$2|Azərbaycan dilini]] [[$1|ana dili]] kimi bilir.",
+ "babel-5-n": "Bu istifadəçi [[$2|Azərbaycan dilini]] [[$1|peşəkar səviyyədə]] bilir.",
+ "babel-N-n": "[[$2|Azərbaycan dili]] bu istifadəçinin [[$1|ana dilidir]].",
+ "babel-footer": "Dillərə görə istifadəçilər"
+}
diff --git a/MLEB/Babel/i18n/azb.json b/MLEB/Babel/i18n/azb.json
new file mode 100644
index 00000000..c449c7f7
--- /dev/null
+++ b/MLEB/Babel/i18n/azb.json
@@ -0,0 +1,32 @@
+{
+ "@metadata": {
+ "authors": [
+ "Arjanizary",
+ "E THP",
+ "Mousa"
+ ]
+ },
+ "babel": "بابیل ایستیفاده‌چی بیلگیلری",
+ "babel-desc": "اؤزل شابلونلاری یئرلشدیرمه اؤزل‌لیگی اولان بابیل ایستیفاده‌چی قوتوسو سوتونون اوتوماتیک تؤرَنمه‌سی اوچون <code>#babel</code> آیریشدیران دستورونو آرتیرار",
+ "babel-url": "Project:بابیل",
+ "babel-footer-url": ":بؤلمه:بابیل - دیل‌لره گؤره ایستیفاده‌چیلر",
+ "babel-autocreate-abort": "وئردیگیز ایستیفاده‌چی آدی [[$1|بابیل]] بؤلمه‌نین اوتوماتیک يارادیلماسی اوچون ایشلدیلیب‌دیر و یازدیریلا بیلمز.",
+ "babel-autocreate-reason": "اوتوماتیک [[$1|بابیل]] بؤلمه صحیفه‌سی یارادیلیر.",
+ "babel-autocreate-text-levels": "بو بؤلمه‌ده‌کی ایستیفاده‌چیلر $1 سَوییه‌ده $2 دیلینی بیلدیکلرینی گؤستریرلر.",
+ "babel-autocreate-text-main": "بو بؤلمه‌ده‌کی ایستیفاده‌چیلر $1 دیلینی بیلدیکلرینی گؤستریرلر.",
+ "babel-0": "بو ایستیفاده‌چی [[$1|هئچ]] [[$2|$3]] بیلمیر (یا دا چتین آنلاییر).",
+ "babel-1": "بو ایستیفاده‌چی [[$1|آزاراق]] [[$2|$3]] بیلیر.",
+ "babel-2": "بو ایستیفاده‌چی [[$1|اورتا]] [[$2|$3]] بیلیر.",
+ "babel-3": "بو ایستیفاده‌چی [[$1|یاخشی]] [[$2|$3]] بیلیر.",
+ "babel-4": "بو ایستیفاده‌چی [[$1|آنا دیلی کیمی]] [[$2|$3]] بیلیر.",
+ "babel-5": "بو ایستیفاده‌چی [[$1|چوخ یاخشی]] [[$2|$3]] بیلیر.",
+ "babel-N": "بو ایستیفاده‌چینین [[$1|آنادیلی]] [[$2|$3]]-دیر.",
+ "babel-0-n": "بو ایستیفاده‌چی [[$1|هئچ]] [[$2|تورکجه]] بیلمیر (یا دا چتین آنلاییر).",
+ "babel-1-n": "بو ایستیفاده‌چی [[$1|آزاراق]] [[$2|تورکجه]] بیلیر.",
+ "babel-2-n": "بو ایستیفاده‌چی [[$1|اورتاجا]] [[$2|تورکجه]] بیلیر.",
+ "babel-3-n": "بو ایستیفاده‌چی [[$1|یاخشی]] [[$2|تورکجه]] بیلیر.",
+ "babel-4-n": "بو ایستیفاده‌چی [[$1|آنا دیلی کیمی]] [[$2|تورکجه]] بیلیر.",
+ "babel-5-n": "بو ایستیفاده‌چی [[$1|چوخ یاخشی]] [[$2|تورکجه]] بیلیر.",
+ "babel-N-n": "بو ایستیفاده‌چینین [[$1|آنادیلی]] [[$2|تورکجه]]‌دیر.",
+ "babel-footer": "دیل‌لره گؤره ایستیفاده‌چیلر"
+}
diff --git a/MLEB/Babel/i18n/ba.json b/MLEB/Babel/i18n/ba.json
new file mode 100644
index 00000000..af228ec8
--- /dev/null
+++ b/MLEB/Babel/i18n/ba.json
@@ -0,0 +1,32 @@
+{
+ "@metadata": {
+ "authors": [
+ "Assele",
+ "Gleb Borisov",
+ "Haqmar"
+ ]
+ },
+ "babel": "Ҡулланыусы телдәре (Вавилон)",
+ "babel-desc": "Телдәр тураһында мәғлүмәт менән, икенсе ҡалыптар өҫтәргә мөмкинлек биргән Вавилон бағанаһын булдырыусы <code>#babel</code> уҡыу ҡоралын өҫтәй.",
+ "babel-url": "Project:Вавилон",
+ "babel-footer-url": ":Category:Ҡатнашыусы телдәре",
+ "babel-autocreate-abort": "Һеҙ һайлаған исем [[$1|Вавилон]] категорияларын булдырыу өсөн ҡулланыла һәм теркәлә алмай.",
+ "babel-autocreate-reason": "[[$1|Вавилон]] категорияһы битен булдырыу",
+ "babel-autocreate-text-levels": "Был категориялағы ҡатнашыусылар $2 телен $1 дәрәжәлә белеүен күрһәткән.",
+ "babel-autocreate-text-main": "Был категориялағы ҡатнашыусылар $1 телен белеүен күрһәткән.",
+ "babel-0": "Был ҡулланыусы [[$2|$3]] [[$1|белмәй]] (йәки бик насар аңлай).",
+ "babel-1": "Был ҡатнашыусының [[$2|$3]] белеме [[$1|башланғыс]] дәрәжәлә.",
+ "babel-2": "Был ҡатнашыусының [[$2|$3]] белеме [[$1|урта]] дәрәжәлә.",
+ "babel-3": "Был ҡатнашыусының [[$2|$3]] белеме [[$1|һәйбәт]] дәрәжәлә.",
+ "babel-4": "Был ҡатнашыусының [[$2|$3]] белеме [[$1|бик яҡшы]] дәрәжәлә.",
+ "babel-5": "Был ҡулланыусы өсөн [[$2|$3]] үҙ [[$1|туған теле кеүек]].",
+ "babel-N": "[[$2|$3]] был ҡатнашыусының [[$1|туған теле]].",
+ "babel-0-n": "Был ҡулланыусы [[$2|башҡортса]] [[$1|белмәй]] (йәки бик насар аңлай).",
+ "babel-1-n": "Был ҡатнашыусының [[$2|башҡортса]] белеме [[$1|башланғыс]] дәрәжәлә.",
+ "babel-2-n": "Был ҡатнашыусының [[$2|башҡортса]] белеме [[$1|урта]] дәрәжәлә.",
+ "babel-3-n": "Был ҡатнашыусының [[$2|башҡортса]] белеме [[$1|һәйбәт]] дәрәжәлә.",
+ "babel-4-n": "Был ҡатнашыусының [[$2|башҡортса]] белеме [[$1|бик яҡшы]] дәрәжәлә.",
+ "babel-5-n": "Был ҡулланыусы өсөн [[$2|башкортса]] үҙ [[$1|туған теле кеүек]].",
+ "babel-N-n": "[[$2|Башҡорт теле]] был ҡатнашыусының [[$1|туған теле]].",
+ "babel-footer": "Телдәр буйынса ҡулланыусылар"
+}
diff --git a/MLEB/Babel/i18n/bar.json b/MLEB/Babel/i18n/bar.json
new file mode 100644
index 00000000..80bb7b19
--- /dev/null
+++ b/MLEB/Babel/i18n/bar.json
@@ -0,0 +1,31 @@
+{
+ "@metadata": {
+ "authors": [
+ "Man77",
+ "Mucalexx"
+ ]
+ },
+ "babel": "Babel – Benutzerinformaziónen",
+ "babel-desc": "Ergänzd dé <code>#babel</code>-Parserfunkzión fyr d' automaatische Erstöung voh Babel-Benutzerboxen-Zeun mid da Méglichkeid, daas ma eigerne Vurlong eihbindt",
+ "babel-url": "Project:Babel",
+ "babel-footer-url": ":Category:Babel - Benutzer noch Sprooch",
+ "babel-autocreate-abort": "Da ausgwöde Benutzernåm werd fyr d' automaatische Erstöung voh [[$1|Babel]]-Kategorien braucht. Désswéng kå a néd registrird wern.",
+ "babel-autocreate-reason": "Autómaatisch erstöde [[$1|Babel]]-Kategorie.",
+ "babel-autocreate-text-levels": "Benutzer in derer Kategorie håm Kenntniss in da Stufm $1 in da Sprooch $2.",
+ "babel-autocreate-text-main": "Benutzer in derer Kategorie håm Kenntniss voh da Sprooch $1.",
+ "babel-0": "Der Benutzer do kå koah [[$2|$3]] [[$1|néd]] (óder er vasteed d' Sprooch netter mid gscheide Schwiarigkeiden).",
+ "babel-1": "Der Benutzer kå [[$1|a bisserl]] [[$2|$3]].",
+ "babel-2": "Der Benutzer kå [[$2|$3]] schoh [[$1|relatiav guad]].",
+ "babel-3": "Der Benutzer kå [[$1|wirklé guad]] [[$2|$3]].",
+ "babel-4": "Der Benutzer kå [[$2|$3]] [[$1|fost asó guad, wia wånns seih Muadersprooch waarad]].",
+ "babel-5": "Der Benutzer kå [[$2|$3]] [[$1|wiara Muadersproochler]].",
+ "babel-N": "Dém Benutzer seih [[$1|Muadersprooch]] is [[$2|$3]].",
+ "babel-0-n": "Der Benutzer kå koah [[$2|Boarisch]] [[$1|néd]] (óder er vasteets netter mid gscheide Schwiarigkeiten).",
+ "babel-1-n": "Der Benutzer kå [[$1|a bisserl]] [[$2|Boarisch]].",
+ "babel-2-n": "Der Benutzer kå schoh [[$1|relativ guad]] [[$2|Boarisch]].",
+ "babel-3-n": "Der Benutzer kå schoh [[$1|wirklé guad]] [[$2|Boarisch]].",
+ "babel-4-n": "Der Benutzer kå [[$2|Boarisch]] [[$1|schoh fost asó guad, wia wånns seih Muadersprooch waarad]].",
+ "babel-5-n": "Der Benutzer kå [[$2|Boarisch]] asó guad wiara [[$1|Muadersproochler]].",
+ "babel-N-n": "Dém Benutzer seih [[$1|Muadersprooch]] is [[$2|Boarisch]].",
+ "babel-footer": "Benutzer noch Sprooch"
+}
diff --git a/MLEB/Babel/i18n/bbc-latn.json b/MLEB/Babel/i18n/bbc-latn.json
new file mode 100644
index 00000000..c9bbf042
--- /dev/null
+++ b/MLEB/Babel/i18n/bbc-latn.json
@@ -0,0 +1,9 @@
+{
+ "@metadata": {
+ "authors": [
+ "Stephensuleeman"
+ ]
+ },
+ "babel-0": "Parhaseangon [[$1|ndang] marnampunahon parbinotoan [[$2|$3]] (manang mangantusi alai mansai maol).",
+ "babel-1": "Parhaseangon marnampunahon parbinotoan [[$2|$3]] [[$1|dasor]]"
+}
diff --git a/MLEB/Babel/i18n/bcc.json b/MLEB/Babel/i18n/bcc.json
new file mode 100644
index 00000000..c5fede72
--- /dev/null
+++ b/MLEB/Babel/i18n/bcc.json
@@ -0,0 +1,32 @@
+{
+ "@metadata": {
+ "authors": [
+ "Mostafadaneshvar",
+ "RigiMahnoor",
+ "Baloch Afghanistan"
+ ]
+ },
+ "babel": "اطلاعات کاربری بابل",
+ "babel-desc": "اضافه کنت <code>#babel</code> عملگر وانوک په اجازه داتن په یک ستون جعبه کاربری گون توانایی اضافه کتن وتی تمپلتان",
+ "babel-url": "Project:بابل",
+ "babel-footer-url": ":Category:بابل - کار زوروکان گون زبانان",
+ "babel-autocreate-abort": "نام کاربری که مالوم کتگیت پر وتکارین تیارکتن ردهٔ [[$1|بابل]] کارمرز بیتگ انت و نبیت که ثبت بیت.",
+ "babel-autocreate-reason": "وتکارین اڈکتن ردهٔ تاکء[[$1|بابل]].",
+ "babel-autocreate-text-levels": "ائ ردهء کاربران مان زبان $2 کارزانتی$1 دارنت.",
+ "babel-autocreate-text-main": "ائ ردهء کاربران زانشت چه زبان $1 رء دارنت.",
+ "babel-0": "ای کاربر [[$2|$3]] را در حد [[$1|سرپد نه بیت]] (یاپه سختی سرپد بیت).",
+ "babel-1": "ای کاربر [[$2|$3]] را در حد [[$1|مقدماتی]] سرپد بیت.",
+ "babel-2": "ای کاربر [[$2|$3]] را در حد [[$1|متوسط]] سرپد بیت.",
+ "babel-3": "ای کاربر [[$2|$3]] را در حد [[$1|پیشرفته]] سرپد بیت.",
+ "babel-4": "ای کاربر [[$2|$3]] را در حد [[$1|نزدیک په ماتی زبان]] سرپد بیت.",
+ "babel-5": "ای کاربر [[$2|$3]] را در حد [[$1|حرفه‌ای]] سرپد بیت.",
+ "babel-N": "ای کاربر [[$2|$3]] را در حد [[$1|ماتی زبان]] سرپد بیت.",
+ "babel-0-n": "ای کاربر [[$2|بلوچی مکرانی]] را [[$1|سرپد نه بیت]] (یا په سختی سرپد بیت).",
+ "babel-1-n": "ای کاربر [[$2|بلوچی مکرانی]] را در حد [[$1|مقدماتی]] سرپد بیت.",
+ "babel-2-n": "ای کاربر [[$2|بلوچی مکرانی]] را در حد [[$1|متوسط]] سرپد بیت.",
+ "babel-3-n": "ای کاربر [[$2|بلوچی مکرانی]] را در حد [[$1|پیشرفته]] سرپد بیت.",
+ "babel-4-n": "ای کاربر [[$2|بلوچی مکرانی]] را در حد [[$1|نزدیک په ماتی زبان]] سرپد بیت.",
+ "babel-5-n": "ای کاربر [[$2|بلوچی مکرانی]] را در حد [[$1|حرفه‌ای]] سرپد بیت.",
+ "babel-N-n": "ای کاربر [[$2|بلوچی مکرانی]] را در حد [[$1|ماتی زبان]] سرپد بیت.",
+ "babel-footer": "کاربران مان زبانی اساسء"
+}
diff --git a/MLEB/Babel/i18n/bcl.json b/MLEB/Babel/i18n/bcl.json
new file mode 100644
index 00000000..edfea6f4
--- /dev/null
+++ b/MLEB/Babel/i18n/bcl.json
@@ -0,0 +1,30 @@
+{
+ "@metadata": {
+ "authors": [
+ "Geopoet"
+ ]
+ },
+ "babel": "Babel na impormasyon nin paragamit",
+ "babel-desc": "Nagdudugang nin <code>#babel</code> sa punksyon nin parabangay tanganing itugot an automatikadong henerasyon kan sarong babel na kahon nin paragamit na kolum na magkaigwa nin abilidad sa pagbali kan mga templatong kustombre",
+ "babel-url": "Project:Babel",
+ "babel-footer-url": ":Kategorya:Babel-Mga paragamit uyon sa lengguwahe",
+ "babel-autocreate-abort": "An pangaran nin paragamit na saimong pinagsasambit pinaggagamit para sa [[$1|Babel]] na kategorya nin awtomatikong pagmumukna asin dae puwedeng mairehistro.",
+ "babel-autocreate-reason": "Automatikong maimumukna an [[$1|Babel]] na kategoryang pahina.",
+ "babel-autocreate-text-levels": "An mga paragamit sa kategoryang ini minapasabot na sinda igwal nin kakayanan na yaon sa grado $1 para sa lengguwaheng $2.",
+ "babel-autocreate-text-main": "Mga paragamit sa kategoryang ini minapasabot na sinda igwa nin kaaraman sa lengguwaheng $1.",
+ "babel-0": "Ining paragamit [[$1|mayo]]ng kaaraman sa [[$2|$3]](o nakakasabot kaini na igwang konsiderableng kadepesilan).",
+ "babel-1": "Ining paragamit igwa nin [[$1|pananday]] na kaaraman sa [[$2|$3]].",
+ "babel-2": "Ining paragamit igwa nin [[$1|panundag]] na kaaraman sa [[$2|$3]].",
+ "babel-3": "Ining paragamit igwa nin [[$1|mauswag]] kaaraman sa [[$2|$3]].",
+ "babel-4": "Ining paragamit igwa nin [[$1|pahapyaw na parataram]] nin kaaraman sa [[$2|$3]].",
+ "babel-5": "Ining paragamit igwa nin [[$1|prospeyunal]] na kaaraman sa [[$2|$3]].",
+ "babel-N": "Ining paragamit igwa nin [[$1|banyas]] na pagkakasabot sa [[$2|$3]].",
+ "babel-0-n": "Ining paragamit [[$1|mayo]]ng kaaraman sa [[$2|Ingles]] (o nakakasabot kaini na igwang konsiderableng kadepesilan).",
+ "babel-1-n": "Ining paragamit igwa nin [[$1|pananday]] na kaaraman sa [[$2|Ingles]].",
+ "babel-2-n": "Ining paragamit igwa nin [[$1|panundag]] na kaaraman sa [[$2|Ingles]].",
+ "babel-3-n": "Ining paragamit igwa nin [[$1|mauswag]] na kaaraman sa [[$2|Ingles]].",
+ "babel-4-n": "Ining paragamit igwa nin [[$1|pahapyaw na parataram]] sa kaaraman nin [[$2|Ingles]].",
+ "babel-5-n": "Ining paragamit igwa nin [[$1|propesyunal]] na kaaraman sa [[$2|Ingles]].",
+ "babel-N-n": "Ining paragamit igwa nin [[$1|banyas]] na pagkasabot sa [[$2|Ingles]].",
+ "babel-footer": "Mga paragamit uyon sa lengguwahe"
+}
diff --git a/MLEB/Babel/i18n/be-tarask.json b/MLEB/Babel/i18n/be-tarask.json
new file mode 100644
index 00000000..dcb1badd
--- /dev/null
+++ b/MLEB/Babel/i18n/be-tarask.json
@@ -0,0 +1,33 @@
+{
+ "@metadata": {
+ "authors": [
+ "EugeneZelenko",
+ "Jim-by",
+ "Wizardist",
+ "Zedlik"
+ ]
+ },
+ "babel": "Мовы, якімі валодае {{GENDER:$1|ўдзельнік|ўдзельніца}}",
+ "babel-desc": "Дадае функцыю парсэра <code>#babel</code>, якая дазваляе аўтаматычна ствараць слупок з інфармацыяй пра мовы з магчымасьцю даданьня нестандартных шаблёнаў",
+ "babel-url": "Project:Бабілёнская вежа",
+ "babel-footer-url": ":Category:Бабілёнская вежа — удзельнікі па мовах",
+ "babel-autocreate-abort": "Імя ўдзельніка, якое Вы пазначылі, выкарыстоўваецца для аўтаматычнага стварэньня катэгорыяў [[$1|Бабілёнскай вежы]] і ня можа быць зарэгістравана.",
+ "babel-autocreate-reason": "Аўтаматычнае стварэньне катэгорыі для [[$1|Бабілёнскай вежы]].",
+ "babel-autocreate-text-levels": "Удзельнікі з гэтай катэгорыі пазначылі ўзровень ведаў $1 для мовы $2.",
+ "babel-autocreate-text-main": "Удзельнікі ў гэтай катэгорыі пазначылі веданьне мовы $1.",
+ "babel-0": "{{GENDER:$4|Гэты ўдзельнік|Гэтая ўдзельніца}} [[$1|не разумее]] [[$2|$3]] (ці разумее яе зь цяжкасьцю).",
+ "babel-1": "{{GENDER:$4|Гэты ўдзельнік|Гэтая ўдзельніца}} ведае [[$2|$3]] на [[$1|пачатковым]] узроўні.",
+ "babel-2": "{{GENDER:$4|Гэты ўдзельнік|Гэтая ўдзельніца}} ведае [[$2|$3]] на [[$1|сярэднім]] узроўні.",
+ "babel-3": "{{GENDER:$4|Гэты ўдзельнік|Гэтая ўдзельніца}} [[$1|выдатна]] ведае [[$2|$3]].",
+ "babel-4": "{{GENDER:$4|Гэты ўдзельнік|Гэтая ўдзельніца}} ведае [[$2|$3]] амаль [[$1|як родную]].",
+ "babel-5": "{{GENDER:$4|Гэты ўдзельнік|Гэтая ўдзельніца}} ведае [[$2|$3]] на [[$1|прафэсійным]] узроўні.",
+ "babel-N": "[[$2|$3]] — [[$1|родная мова]] {{GENDER:$4|гэтага ўдзельніка|гэтай ўдзельніцы}}.",
+ "babel-0-n": "{{GENDER:$4|Гэты ўдзельнік|Гэтая ўдзельніца}} [[$1|не разумее]] [[$2|беларускую мову]] (ці разумее яе зь цяжкасьцю).",
+ "babel-1-n": "{{GENDER:$4|Гэты ўдзельнік|Гэтая ўдзельніца}} ведае [[$2|беларускую мову]] на [[$1|пачатковым]] узроўні.",
+ "babel-2-n": "{{GENDER:$4|Гэты ўдзельнік|Гэтая ўдзельніца}} ведае [[$2|беларускую мову]] на [[$1|сярэднім]] узроўні.",
+ "babel-3-n": "{{GENDER:$4|Гэты ўдзельнік|Гэтая ўдзельніца}} [[$1|выдатна]] ведае [[$2|беларускую мову]].",
+ "babel-4-n": "{{GENDER:$4|Гэты ўдзельнік|Гэтая ўдзельніца}} ведае [[$2|беларускую мову]] амаль [[$1|як родную]].",
+ "babel-5-n": "{{GENDER:$4|Гэты ўдзельнік|Гэтая ўдзельніца}} ведае [[$2|беларускую мову]] на [[$1|прафэсійным]] узроўні.",
+ "babel-N-n": "[[$2|Беларуская мова]] — [[$1|родная мова]] {{GENDER:$4|гэтага ўдзельніка|гэтай ўдзельніцы}}.",
+ "babel-footer": "Удзельнікі паводле мовы"
+}
diff --git a/MLEB/Babel/i18n/be.json b/MLEB/Babel/i18n/be.json
new file mode 100644
index 00000000..03df64be
--- /dev/null
+++ b/MLEB/Babel/i18n/be.json
@@ -0,0 +1,33 @@
+{
+ "@metadata": {
+ "authors": [
+ "Yury Tarasievich",
+ "Тест",
+ "Хомелка",
+ "Mikalai Udodau"
+ ]
+ },
+ "babel": "Моўныя звесткі ўдзельніка",
+ "babel-desc": "Дадае парсеру здольнасць разбіраць <code>#babel</code> і аўтаматычна генераваць паласу юзербоксаў і ўлучаць свае шаблоны",
+ "babel-url": "Project:Babel",
+ "babel-footer-url": ":Category:Вавілонская вежа — удзельнікі паводле моў",
+ "babel-autocreate-abort": "Указанае імя ўдзельніка выкарыстоўваецца для аўтаматычнага стварэння катэгорыі [[$1|Вавілонскай вежы]] і не можа быць зарэгістравана.",
+ "babel-autocreate-reason": "Аўтаматычнае стварэнне старонкі для катэгорыі [[$1|Вавілон]].",
+ "babel-autocreate-text-levels": "Удзельнікі ў гэтай катэгорыі паказначылі, што яны маюць навык ўзроўню $1 мовы $2.",
+ "babel-autocreate-text-main": "Карыстальнікі ў гэтай катэгорыі паказваюць, што яны валодаюць ведамі мовы $1.",
+ "babel-0": "[[$1|Не разумею]] або ледзьве разумею [[$2|$3]].",
+ "babel-1": "Разумею [[$2|$3]] [[$1|збольшага]].",
+ "babel-2": "Разумею [[$2|$3]] [[$1|пасярэдне]].",
+ "babel-3": "Разумею [[$2|$3]] [[$1|добра]].",
+ "babel-4": "Разумею [[$2|$3]] [[$1|амаль як родную]].",
+ "babel-5": "Разумею [[$2|$3]] [[$1|прафесійна]].",
+ "babel-N": "Разумею [[$2|$3]] [[$1|як родную]].",
+ "babel-0-n": "[[$1|Не ведаю]] [[$2|беларускай]] мовы (або ледзьве разумею).",
+ "babel-1-n": "Ведаю [[$2|беларускую]] мову [[$1|збольшага]].",
+ "babel-2-n": "Ведаю [[$2|беларускую]] мову [[$1|пасярэдне]].",
+ "babel-3-n": "Ведаю [[$2|беларускую]] мову [[$1|добра]].",
+ "babel-4-n": "Ведаю [[$2|беларускую]] мову [[$1|амаль як родную]].",
+ "babel-5-n": "Ведаю [[$2|беларускую]] мову [[$1|прафесійна]].",
+ "babel-N-n": "[[$2|Беларуская]] — [[$1|родная]] мова ўдзельніка.",
+ "babel-footer": "Удзельнікі паводле моў"
+}
diff --git a/MLEB/Babel/i18n/bew.json b/MLEB/Babel/i18n/bew.json
new file mode 100644
index 00000000..1c0ea4c2
--- /dev/null
+++ b/MLEB/Babel/i18n/bew.json
@@ -0,0 +1,30 @@
+{
+ "@metadata": {
+ "authors": [
+ "Naval Scene"
+ ]
+ },
+ "babel": "Informasi penggune Babel",
+ "babel-desc": "Nambahin fungsi parser <code>#babel</code> untuk nampilin kolom kotak penggune babel secare otomatis, dengan templat nyang bise diobah sesuei keinginan (custom)",
+ "babel-url": "Proyek:Babel",
+ "babel-footer-url": "Kategori:Babel - Penggune menurut bahase",
+ "babel-autocreate-abort": "Name penggune nyang ente pilih udah dipake untuk ngebuat kategori otomatis [[$1|Babel]] dan kagak bise didaptarin",
+ "babel-autocreate-reason": "Secare otomatis nyiptain halaman kategori [[$1|Babel]].",
+ "babel-autocreate-text-levels": "Penggune di kategori eni nganggep die udah punye kemampuan tingkat $1 untuk bahase $2.",
+ "babel-autocreate-text-main": "Penggune di kategori eni nganggep die udah punye pengetahuan bahase $1",
+ "babel-0": "Penggune eni [[$1|kagak]] ngarti [[$2|$3]] (atawe ngarti dikit tapi sulit banget).",
+ "babel-1": "Penggune eni bise nyumbang make [[$2|$3]] tingkat [[$1|dasar]].",
+ "babel-2": "Penggune eni bise nyumbang make [[$2|$3]] tingkat [[$1|menengah]].",
+ "babel-3": "Penggune eni bise nyumbang make [[$2|$3]] tingkat [[$1|mahir]].",
+ "babel-4": "Penggune eni bise nyumbang make [[$2|$3]] [[$1|udah mirip kayak orang Betawi asli]].",
+ "babel-5": "Penggune eni bise nyumbang secare [[$1|profesional]] make [[$2|$3]].",
+ "babel-N": "Penggune eni emang bener-bener [[$1|asli ngomongnye]] [[$2|$3]].",
+ "babel-0-n": "Penggune eni [[$1|kagak]] ngarti [[$2|bahase Betawi]] (atawe ngarti dikit tapi sulit banget).",
+ "babel-1-n": "Penggune eni bise nyumbang make [[$2|bahase Betawi]] tingkat [[$1|dasar]].",
+ "babel-2-n": "Penggune eni bise nyumbang make [[$2|bahase Betawi]] tingkat [[$1|menengah]].",
+ "babel-3-n": "Penggune eni bise nyumbang make [[$2|bahase Betawi]] tingkat [[$1|mahir]].",
+ "babel-4-n": "Penggune eni bise nyumbang make [[$2|bahase Betawi]] [[$1|udah mirip kayak orang Betawi asli]].",
+ "babel-5-n": "Penggune eni bise nyumbang secare [[$1|profesional]] make [[$2|bahase Betawi]].",
+ "babel-N-n": "Penggune eni emang bener-bener [[$1|asli ngomongnye]] [[$2|bahase Betawi]].",
+ "babel-footer": "Penggune nurutin kebisaan bahasenye"
+}
diff --git a/MLEB/Babel/i18n/bg.json b/MLEB/Babel/i18n/bg.json
new file mode 100644
index 00000000..f1ece771
--- /dev/null
+++ b/MLEB/Babel/i18n/bg.json
@@ -0,0 +1,33 @@
+{
+ "@metadata": {
+ "authors": [
+ "DCLXVI",
+ "Spiritia",
+ "Vladimir Penov",
+ "Петър Петров"
+ ]
+ },
+ "babel": "Вавилонски данни за потребителя",
+ "babel-desc": "Прибавяне на парсерна функция <code>#babel</code>, която позволява автоматично създаване на вавилонски потребителски кутийки, а може също да включва и други потребителски шаблони",
+ "babel-url": "Project:Вавилон",
+ "babel-footer-url": ":Category:Вавилон – потребители по език",
+ "babel-autocreate-abort": "Посоченото от вас потребителско име се използва за автоматично създаване на [[$1|вавилонски категории]] и не може да бъде регистрирано.",
+ "babel-autocreate-reason": "Автоматично създаване на [[$1|вавилонска категория]].",
+ "babel-autocreate-text-levels": "Потребителите в тази категория са посочили, че владеят $2 език на $1 ниво.",
+ "babel-autocreate-text-main": "Потребителите в тази категория са посочили, че имат познания по $1 език.",
+ "babel-0": "{{GENDER:$4|Този потребител|Тази потребителка}} [[$1|не владее]] [[$2|$3]] (или го разбира с големи затруднения).",
+ "babel-1": "{{GENDER:$4|Този потребител|Тази потребителка}} има [[$1|основни]] познания по [[$2|$3]].",
+ "babel-2": "{{GENDER:$4|Този потребител|Тази потребителка}} владее [[$2|$3]] на [[$1|средно ниво]].",
+ "babel-3": "{{GENDER:$4|Този потребител|Тази потребителка}} има [[$1|задълбочени]] познания по [[$2|$3]].",
+ "babel-4": "{{GENDER:$4|Този потребител|Тази потребителка}} владее [[$2|$3]] [[$1|почти като роден]].",
+ "babel-5": "{{GENDER:$4|Този потребител|Тази потребителка}} има [[$1|професионални]] познания по [[$2|$3]].",
+ "babel-N": "[[$1|Родният език]] на {{GENDER:$4|този потребител|тази потребителка}} е [[$2|$3]].",
+ "babel-0-n": "{{GENDER:$4|Този потребител|Тази потребителка}} [[$1|не владее]] [[$2|български език]] (или разбира с големи затруднения).",
+ "babel-1-n": "{{GENDER:$4|Този потребител|Тази потребителка}} има [[$1|основни]] познания по [[$2|български език]].",
+ "babel-2-n": "{{GENDER:$4|Този потребител|Тази потребителка}} владее [[$2|български език]] на [[$1|средно ниво]].",
+ "babel-3-n": "{{GENDER:$4|Този потребител|Тази потребителка}} има [[$1|задълбочени]] познания по [[$2|български език]].",
+ "babel-4-n": "{{GENDER:$4|Този потребител|Тази потребителка}} владее [[$2|български език]] на ниво [[$1|почти като роден]].",
+ "babel-5-n": "{{GENDER:$4|Този потребител|Тази потребителка}} има [[$1|професионални]] познания по [[$2|български език]].",
+ "babel-N-n": "За {{GENDER:$4|този потребител|тази потребителка}} [[$2|българският език]] e [[$1|роден]].",
+ "babel-footer": "Потребители по език"
+}
diff --git a/MLEB/Babel/i18n/bho.json b/MLEB/Babel/i18n/bho.json
new file mode 100644
index 00000000..f88ee6e3
--- /dev/null
+++ b/MLEB/Babel/i18n/bho.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Ganesh"
+ ]
+ },
+ "babel": "बैबेल प्रयोगकर्ता जानकारी"
+}
diff --git a/MLEB/Babel/i18n/bjn.json b/MLEB/Babel/i18n/bjn.json
new file mode 100644
index 00000000..da24d3f8
--- /dev/null
+++ b/MLEB/Babel/i18n/bjn.json
@@ -0,0 +1,32 @@
+{
+ "@metadata": {
+ "authors": [
+ "Ezagren",
+ "J Subhi",
+ "Riemogerz"
+ ]
+ },
+ "babel": "Panjalasan Babel pamakai",
+ "babel-desc": "Manambahi pungsi parser <code>#babel</code> gasan mambulihakan paulahan sabuah kutak pamakai utumatis lawan kamampuan gasan mamakai citakan nang dikustomisasiakan",
+ "babel-url": "Pruyik:Babel",
+ "babel-footer-url": "Tumbung:Babel - Pamakai bapadal bahasa",
+ "babel-autocreate-abort": "Ngaran pamakai Pian naya dipakai gasan tumbung utumatis [[$1|Babel]] wan kada kawa didaptarakan.",
+ "babel-autocreate-reason": "Utumatis maulah tumbung tungkaran [[$1|Babel]].",
+ "babel-autocreate-text-levels": "Pamakai dalam tumbung naya artinya sidin baisi kamampuan $1 gasan bahasa $2.",
+ "babel-autocreate-text-main": "Pamakai dalam tumbung naya artinya sidin baisi ilmu gasan bahasa $1.",
+ "babel-0": "Pamakai ngini [[$1|kada]] baisi ilmu gasan [[$2|$3]] (atawa paham haja tagal pina ngalih banar).",
+ "babel-1": "Pamakai ngini baisi ilmu [[$1|pandal]] gasan [[$2|$3]].",
+ "babel-2": "Pamakai ngini baisi ilmu [[$1|manangah]] gasan [[$2|$3]].",
+ "babel-3": "Pamakai ngini baisi ilmu [[$1|mahir]] gasan [[$2|$3]].",
+ "babel-4": "Pamakai ngini baisi ilmu [[$1|parak nangkaya pamandir asli]] gasan [[$2|$3]].",
+ "babel-5": " Pamakai ngini baisi ilmu [[$1|harat]] gasan [[$2|$3]].",
+ "babel-N": "Pamakai ngini [[$1|pamandir asli]] nang paham banar [[$2|$3]].",
+ "babel-0-n": "Pamakai ngini [[$1|kada]] baisi ilmu gasan [[$2|Bahasa Banjar]] (atawa paham haja tagal pina ngalih banar).",
+ "babel-1-n": "Pamakai ngini baisi ilmu [[$1|pandal]] gasan [[$2|Bahasa Banjar]].",
+ "babel-2-n": "Pamakai ngini baisi ilmu [[$1|manangah]] gasan [[$2|Bahasa Banjar]].",
+ "babel-3-n": "Pamakai ngini baisi ilmu [[$1|mahir]] gasan [[$2|Bahasa Banjar]].",
+ "babel-4-n": "Pamakai ngini baisi ilmu [[$1|parak nangkaya pamandir asli]] gasan [[$2|Bahasa Banjar]].",
+ "babel-5-n": "Pamakai ngini baisi ilmu [[$1|harat]] gasan [[$2|Bahasa Banjar]].",
+ "babel-N-n": "Pamakai ngini [[$1|pamandir asli]] nang paham banar [[$2|Bahasa Banjar]].",
+ "babel-footer": "Papamakai bapadal bahasa"
+}
diff --git a/MLEB/Babel/i18n/bn.json b/MLEB/Babel/i18n/bn.json
new file mode 100644
index 00000000..24498e9b
--- /dev/null
+++ b/MLEB/Babel/i18n/bn.json
@@ -0,0 +1,31 @@
+{
+ "@metadata": {
+ "authors": [
+ "Bellayet",
+ "RIPENDIL"
+ ]
+ },
+ "babel": "ব্যবহারকারীর বাবেল তথ্য",
+ "babel-desc": "নিজের করা টেম্পলেটে সয়ংক্রিয় বাবেল ব্যবহারকারী বাক্স কলাম যোগ করতে <code>#babel</code> পার্সার ফাংসন যোগ করুন",
+ "babel-url": "Project:বাবেল",
+ "babel-footer-url": ":Category:Babel - ভাষা অনুযায়ী ব্যবহারকারী",
+ "babel-autocreate-abort": "যে ব্যবহারকারী নামটি আপনি নির্দিষ্ট করেছেন তা [[$1|Babel]] শ্রেনীর স্বয়ংক্রিয়-সৃষ্টিতে ব্যবহৃত হয়েছে এবং নিবন্ধন করা সম্ভব হচ্ছে না।",
+ "babel-autocreate-reason": "স্বয়ংক্রিয়ভাবে [[$1|Babel]] শ্রেনীর পৃষ্ঠাটি তৈরী হচ্ছে।",
+ "babel-autocreate-text-levels": "এই শ্রেনীর ব্যবহারকারীরা নির্দেশ করে $2 ভাষার জন্য তাদের দক্ষতার ধাপ $1 ।",
+ "babel-autocreate-text-main": "এই শ্রেনীর ব্যবহারকারীরা নির্দেশ করে $1 ভাষার উপরে তাদের জ্ঞান রয়েছে।",
+ "babel-0": "এই ব্যবহারকারীর [[$2|$3]] এর উপর কোন ধারনা [[$1|নেই]] (অথবা তা কষ্ট সহকারে বুঝতে পারেন)।",
+ "babel-1": "এ ব্যবহারকারী [[$2|$3]] এর উপর [[$1|সাধারণ]] ধারণা রয়েছে।",
+ "babel-2": "এ ব্যবহারকারীর [[$2|$3]] এর উপরে [[$1|মাধ্যমিক]] জ্ঞান রয়েছে।",
+ "babel-3": "এ ব্যবহারকারীর [[$2|$3]] এর উপরে [[$1|ভাল]] ধারণা রয়েছে।",
+ "babel-4": "এ ব্যবহারকারীর [[$2|$3]] এর উপরে [[$1|প্রায় মাতৃভাষার কাছাকাছি]] ধারণা রয়েছে।",
+ "babel-5": "এ ব্যবহারকারীর [[$2|$3]] এর উপরে [[$1|খুব ভাল]] ধারণা রয়েছে।",
+ "babel-N": "এ ব্যবহারকারীর [[$2|$3]] এর উপরে [[$1|মাতৃভাষার মতন]] ধারণা রয়েছে।",
+ "babel-0-n": "এ ব্যবহারকারীর [[$2|বাংলা ভাষার]] উপরে কোন ধারণা [[$1|নাই]] (অথবা তা খুব কষ্টে বুঝতে পারেন)।",
+ "babel-1-n": "এ ব্যবহারকারীর [[$2|বাংলা ভাষার]] উপরে [[$1|সাধারণ]] ধারণা রয়েছে।",
+ "babel-2-n": "এ ব্যবহারকারীর [[$2|বাংলা ভাষার]] উপরে [[$1|মাধ্যমিক]] ধারণা রয়েছে।",
+ "babel-3-n": "এ ব্যবহারকারীর [[$2|বাংলা ভাষার]] উপরে [[$1|ভাল]] ধারণা রয়েছে।",
+ "babel-4-n": "এ ব্যবহারকারীর [[$2|বাংলা ভাষার]] উপরে [[$1|খুব ভাল]] ধারণা রয়েছে।",
+ "babel-5-n": "এ ব্যবহারকারীর [[$2|বাংলা ভাষার]] উপরে [[$1|প্রায় মাতৃভাষার কাছাকাছি]] ধারণা রয়েছে।",
+ "babel-N-n": "এ ব্যবহারকারীর [[$2|বাংলা ভাষার]] উপরে [[$1|মাতৃভাষার মতন]] ধারণা রয়েছে।",
+ "babel-footer": "ভাষা অনুযায়ী ব্যবহারকারী"
+}
diff --git a/MLEB/Babel/i18n/bo.json b/MLEB/Babel/i18n/bo.json
new file mode 100644
index 00000000..93953691
--- /dev/null
+++ b/MLEB/Babel/i18n/bo.json
@@ -0,0 +1,25 @@
+{
+ "@metadata": {
+ "authors": [
+ "Phurbutsering",
+ "YeshiTuhden"
+ ]
+ },
+ "babel": "པ་པེལ་སྤྱོད་མའི་གནས་ཚུལ་",
+ "babel-url": "Project:པ་པེལ་",
+ "babel-0": "བེད་སྤྱོད་པ་འདི་ལ་[[$2|$3]]སྐོར་གྱི་ཤེས་བྱ་ཡོད་[[$1|མ་རེད་]] (དེ་ཧ་གོ་བར་ཧ་ཅང་དཀའ་ངལ་ཡོད་)",
+ "babel-1": "སྤྱོད་མི་འདི་ལ་ [[$2|$3]]ཡི་ཡོན་ཚད་[[$1|basic]] འདུག།",
+ "babel-2": "སྤྱོད་མི་འདི་ལ་[[$2|$3]]ཡི་[[$1|འབྲིང་རིམ་]]གྱི་ཤེས་བྱ་ཡོད་",
+ "babel-3": "སྤྱོད་མི་འདི་ལ་[[$2|$3]]ཡི་[[$1|མཐོ་རིམ་]]ཤེས་བྱ་ཡོད་",
+ "babel-4": "སྤྱོད་མི་འདི་ལ་[[$2|$3]]ཡི་ཤེས་བྱ་[[$1|ས་སྐྱེས་རྡོ་སྐྱེས་]] ལྟ་བུ་ཡོད་",
+ "babel-5": "སྤྱོད་མི་འདིའི་[[$2|$3]]ཤེས་བྱ་[[$1|ཆེད་ལས་པ་]] ཡོད་",
+ "babel-N": "[[$2|$3]]ནི་སྤྱོད་མི་འདིའི་ [[$1|ཕ་མེས་]]ཀྱི་སྐད་རེད་",
+ "babel-0-n": "སྤྱོད་མི་འདིས་[[$2|བོད་སྐད་]]ཅུང་ཙམ་ལས་[[$1|མི་]]ཤེས་",
+ "babel-1-n": "སྤྱོད་མི་འདི་ལ་[[$2|བོད་སྐད་]]ཀྱི་[[$1|རྨང་གཞིའི་]]ཤེས་བྱ་ཡོད།",
+ "babel-2-n": "སྤྱོད་མི་འདིའི་[[$2|བོད་སྐད་་]]ཆུ་ཚད་[[$1|འབྲིང་རིམ་]]ལ་སླེབས་ཡོད།",
+ "babel-3-n": "སྤྱོད་མི་འདིའི་[[$2|བོད་སྐད་]]ཆུ་ཚད་ [[$1|མཐོ་རིམ་]]ལ་སླེབས་ཡོད་",
+ "babel-4-n": " [[$2|བོད་སྐད་]]ནི་སྤྱོད་མི་འདིའི་ [[$1|ས་སྐྱེས་རྡོ་སྐྱེས་]]སྐད་ཡིག་འདྲ་",
+ "babel-5-n": "སྤྱོད་མི་འདིའི་[[$2|བོད་སྐད་]][[$1|ཆེད་ལས་པའི་]]ཆུ་ཚད་ཡོད།",
+ "babel-N-n": "[[$2|བོད་སྐད་]]ནི་སྤྱོད་མི་འདིའི་ [[$1|ཕ་མེས་]]ཀྱི་སྐད་ཡིག་རེད།",
+ "babel-footer": "སྤྱོད་མིའི་སྐད་ཡིག་"
+}
diff --git a/MLEB/Babel/i18n/bpy.json b/MLEB/Babel/i18n/bpy.json
new file mode 100644
index 00000000..02f49b26
--- /dev/null
+++ b/MLEB/Babel/i18n/bpy.json
@@ -0,0 +1,30 @@
+{
+ "@metadata": {
+ "authors": [
+ "Usingha"
+ ]
+ },
+ "babel": "আতাকুরার বাবেলর বারে",
+ "babel-desc": "নিজর করা টেম্পলেটরমা সয়ংক্রিয় বাবেল আতাকুরার বাক্স কলামগত তিলকরানিত <code>#babel</code> পার্সার ফাংসন তিলকর",
+ "babel-url": "Project:বাবেল",
+ "babel-footer-url": ":Category:Babel - ঠারর মাতুঙে আতাকুরা",
+ "babel-autocreate-abort": "যে আতাকুরার নাঙহান তি রেপকরিসত অহান [[$1|Babel]] থাকরমা আপ্পানে মিহিল বারো নিবন্ধন করানি সম্ভব নাইল।",
+ "babel-autocreate-reason": "আপ্পানে [[$1|Babel]] থাকর পাতাহান হঙিল।",
+ "babel-autocreate-text-levels": "এরে থাকর আতাকুরার হেইনিঙপাহান $2 ঠাররকা তানুর হেইনিঙর থাকহান $1।",
+ "babel-autocreate-text-main": "এরে থাকর আতাকুরারতা $1 ঠারহানর গজে জ্ঞানহান আসে।",
+ "babel-0": "এরে আতাকুরা এগরতা [[$2|$3]] এহার গজে কোন ধারনা [[$1|নেই]] (নাইলে জবর হিনপিয়া হারপার)।",
+ "babel-1": "আতাকুরা এগরতা [[$2|$3]]র গজে [[$1|সাধারণ]] ধারণা আসে।",
+ "babel-2": "আতাকুরা এগরতা [[$2|$3]]র গজে [[$1|মাধ্যমিক]] ধারণা আসে।",
+ "babel-3": "আতাকুরা এগরতা [[$2|$3]]র গজে [[$1|হবা]] ধারণা আসে।",
+ "babel-4": "আতাকুরা এগরতা [[$2|$3]]র গজে [[$1|ইমারঠারহানর অসারে]] ধারণা আসে।",
+ "babel-5": "আতাকুরা এগরতা [[$2|$3]]র গজে [[$1|জবর হবা]] ধারণা আসে।",
+ "babel-N": "আতাকুরা এগরতা [[$2|$3]]র গজে [[$1|ইমারঠারর অসারে]] ধারণা আসে।",
+ "babel-0-n": "এরে আতাকুরা এগরতা [[$2|বিষ্ণুপ্রিয়া মণিপুরী ঠারর]]র গজে কোন ধারনা [[$1|নেই]] (নাইলে জবর হিনপিয়া হারপার)।",
+ "babel-1-n": "আতাকুরা এগরতা [[$2|বিষ্ণুপ্রিয়া মণিপুরী ঠার]]র গজে [[$1|সাধারণ]] ধারণা আসে।",
+ "babel-2-n": "আতাকুরা এগরতা [[$2|বিষ্ণুপ্রিয়া মণিপুরী ঠার]]র গজে [[$1|মাধ্যমিক]] ধারণা আসে।",
+ "babel-3-n": "আতাকুরা এগরতা [[$2|বিষ্ণুপ্রিয়া মণিপুরী ঠার]]র গজে [[$1|হবা]] ধারণা আসে।",
+ "babel-4-n": "আতাকুরা এগরতা [[$2|বিষ্ণুপ্রিয়া মণিপুরী ঠার]]র গজে [[$1|ইমারঠারহানর অসারে]] ধারণা আসে।",
+ "babel-5-n": "আতাকুরা এগরতা [[$2|বিষ্ণুপ্রিয়া মণিপুরী ঠার]]র গজে [[$1|জবর হবা]] ধারণা আসে।",
+ "babel-N-n": "আতাকুরা এগরতা [[$2|বিষ্ণুপ্রিয়া মণিপুরী ঠার]]র গজে [[$1|ইমারঠারর অসারে]] ধারণা আসে।",
+ "babel-footer": "ঠারর মাতুঙে আতাকুরা"
+}
diff --git a/MLEB/Babel/i18n/bqi.json b/MLEB/Babel/i18n/bqi.json
new file mode 100644
index 00000000..120b2ceb
--- /dev/null
+++ b/MLEB/Babel/i18n/bqi.json
@@ -0,0 +1,18 @@
+{
+ "@metadata": {
+ "authors": [
+ "Bonevarluri",
+ "Mogoeilor"
+ ]
+ },
+ "babel-url": "پروجه:بابل",
+ "babel-autocreate-text-levels": "کارورآ ای دسته نشون ادن که کاردونی د سطح $1 سی زون $2 دارن",
+ "babel-1": "ای کاریار [[$1|یتی]] [[$2|$3]] دونه.",
+ "babel-2": "ای کاریار مئن سطح[[$1|منجقایی]] [[$2|$3]] دونه.",
+ "babel-3": "ای کاریار [[$1|غلوه]] [[$2|$3]] دونه.",
+ "babel-4": "ای کاریار [[$1|مئن سطح هو که زون داس بختیاریه]] [[$2|$3]] دونه.",
+ "babel-5": "ای کاریار [[$1|غلوه خوو]] [[$2|$3]] دونه.",
+ "babel-N": " زون دا [[$1|کاریار]] [[$2|$3]] یه.",
+ "babel-0-n": "ای کاریار [[$1|غلوه کم]] [[$2|بختیاری]] دونه (یا اصلا بختیاری هالینس نیبو).",
+ "babel-footer": "کاروآ وا زون"
+}
diff --git a/MLEB/Babel/i18n/br.json b/MLEB/Babel/i18n/br.json
new file mode 100644
index 00000000..72adcf0c
--- /dev/null
+++ b/MLEB/Babel/i18n/br.json
@@ -0,0 +1,31 @@
+{
+ "@metadata": {
+ "authors": [
+ "Fulup",
+ "Y-M D"
+ ]
+ },
+ "babel": "Titouroù Babel war an implijer",
+ "babel-desc": "Ouzhpennañ an arc'hwel parser <code>#babel</code> da c'henel ent emgefre ur voest implijer Babel a c'haller lakaat patromoù personelaet enni",
+ "babel-url": "Project:Babel",
+ "babel-footer-url": ":Rummad:Wikipedourien hervez o yezhoù",
+ "babel-autocreate-abort": "Implijet eo an anv implijer merket ganeoc'h evit sevel ent emgefre rummadoù [[$1|Babel]]; setu, n'haller ket e enrollañ.",
+ "babel-autocreate-reason": "Krouidigezh emgefre ur bajenn eus ar rummad [[$1|Babel]].",
+ "babel-autocreate-text-levels": "Disklêriet o deus implijerien ar rummad-mañ mestroniañ al live $1 evit ar yezh $2.",
+ "babel-autocreate-text-main": "Implijerien ar rummad-mañ a zisklêr kaout anaouedegezh eus ar yezh $1",
+ "babel-0": "Ne oar an impljer-mañ [[$1|tamm]] [[$2|$3]] ebet (pe en deus mil boan o kompren anezhañ).",
+ "babel-1": "Ul live [[$2|brezhoneg]] [[$1|diazez]] zo gant an implijer-mañ.",
+ "babel-2": "Ul live [[$2|brezhoneg]] [[$1|etre]] zo gant an implijer-mañ.",
+ "babel-3": "Ul live [[$2|brezhoneg]] [[$1|a-feson]] zo gant an implijer-mañ.",
+ "babel-4": "An implijer-mañ a gomz [[$2|brezhoneg]] [[$1|evel pa vefe e yezh-vamm]].",
+ "babel-5": "An implijer-mañ en deus ul live [[$2|brezhoneg]] [[$1|a-vicher]].",
+ "babel-N": "An implijer-mañ zo ar [[$2|brezhoneg]] e [[$1|yezh-vamm]].",
+ "babel-0-n": "Ne oar an implijer-mañ [[$1|tamm]] [[$2|Brezhoneg]] ebet (pe en deus mil boan o kompren anezhañ).",
+ "babel-1-n": "Ul live [[$2|brezhoneg]] [[$1|diazez]] zo gant an implijer-mañ.",
+ "babel-2-n": "Ul live [[$2|brezhoneg]] [[$1|etre]] zo gant an implijer-mañ.",
+ "babel-3-n": "Ul live [[$2|brezhoneg]] [[$1|propik]] zo gant an implijer-mañ.",
+ "babel-4-n": "[[$2|Brezhoneg]] a oar an implijer-mañ [[$1|evel pa vefe bet desket gantañ war barlenn e vamm]].",
+ "babel-5-n": "Ul live [[$2|Brezhoneg]] [[$1|a-vicher]] zo gant an implijer-mañ.",
+ "babel-N-n": "[[$1|A-vihanik]] e oar [[$2|brezhoneg]] an implijer-mañ.",
+ "babel-footer": "Implijerien dre yezh"
+}
diff --git a/MLEB/Babel/i18n/brh.json b/MLEB/Babel/i18n/brh.json
new file mode 100644
index 00000000..569d5987
--- /dev/null
+++ b/MLEB/Babel/i18n/brh.json
@@ -0,0 +1,14 @@
+{
+ "@metadata": {
+ "authors": [
+ "Imdadb"
+ ]
+ },
+ "babel": "Babel kárband cáindárí",
+ "babel-0": "Dá kárband e [[$2|$3]] [[$1|asul bafak]] (yá kalaí seaŧ poh marek ta).",
+ "babel-1": "Dá kárband e [[$2|$3]] ná [[$1|bunyádí]] cáindárí are.",
+ "babel-N": "[[$2|$3]] dá kárband ná [[$1|lummaí bolí]] e.",
+ "babel-0-n": "Dá kárband e [[$2|Bráhuí]] [[$1|asul bafak]] (yá kalaí seaŧ poh marek ta).",
+ "babel-1-n": "Dá kárband e [[$2|Bráhuí]] ná [[$1|bunyádí]] cáindárí are.",
+ "babel-N-n": "[[$2|Bráhuí]] dá kárband ná [[$1|lummaí bolí]] e."
+}
diff --git a/MLEB/Babel/i18n/bs.json b/MLEB/Babel/i18n/bs.json
new file mode 100644
index 00000000..b7d58136
--- /dev/null
+++ b/MLEB/Babel/i18n/bs.json
@@ -0,0 +1,31 @@
+{
+ "@metadata": {
+ "authors": [
+ "CERminator",
+ "Palapa"
+ ]
+ },
+ "babel": "Babel korisničke informacije",
+ "babel-desc": "Dodaje <code>#babel</code> parsersku funkciju koja omogućava automatsko pravljenje babel korisničke kutije u stupcu sa mogućnostima uključivanja prilagođenih šablona",
+ "babel-url": "Project:Babel",
+ "babel-footer-url": ":Category:Babel - Korisnici po jeziku",
+ "babel-autocreate-abort": "Korisničko ime koje ste naveli se koristi za automatsko pravljenje [[$1|Babel]] kategorija i ne može biti registrovano.",
+ "babel-autocreate-reason": "Automatski napravljena stranica [[$1|Babel]] kategorije.",
+ "babel-autocreate-text-levels": "Korisnici u ovoj kategoriji su naveli da imaju nivo $1 znanja $2 jezika.",
+ "babel-autocreate-text-main": "Korisnici u ovoj kategoriji su označeni da imaju znanje $1 jezika.",
+ "babel-0": "Ovaj korisnik [[$1|ne]] govori [[$2|$3]] (ili ga razumije sa velikim poteškoćama).",
+ "babel-1": "Ovaj korisnik ima [[$1|osnovno]] poznavanje [[$2|$3]] jezika.",
+ "babel-2": "Ovaj korisnik [[$1|dobro]] poznaje [[$2|$3]].",
+ "babel-3": "Ovaj korisnik [[$1|napredno]] poznaje [[$2|$3]].",
+ "babel-4": "Ovaj korisnik poznaje [[$2|$3]] gotovo na nivou [[$1|maternjeg jezika]]",
+ "babel-5": "Ovaj korisnik ima znanje [[$2|$3]] na [[$1|profesionalnom nivou]].",
+ "babel-N": "Ovaj korisnik govori [[$2|$3]] kao [[$1|maternji jezik]].",
+ "babel-0-n": "Ovaj korisnik [[$1|ne]] govori [[$2|bosanski]] (ili ga razumije sa velikim poteškoćama).",
+ "babel-1-n": "Ovaj korisnik ima [[$1|osnovno]] znanje [[$2|bosanskog jezika]].",
+ "babel-2-n": "Ovaj korisnik ima [[$1|osrednje]] znanje [[$2|bosanskog jezika]].",
+ "babel-3-n": "Ovaj korisnik ima [[$1|napredno]] znanje [[$2|bosanskog jezika]].",
+ "babel-4-n": "Ovaj korisnik ima [[$1|odlično]] znanje [[$2|bosanskog jezika]].",
+ "babel-5-n": "Ovaj korisnik ima [[$1|profesionalno]] znanje [[$2|bosanskog jezika]].",
+ "babel-N-n": "Ovaj korisnik ima znanje [[$2|bosanskog]] na nivou [[$1|maternjeg jezika]].",
+ "babel-footer": "Korisnici po jezicima"
+}
diff --git a/MLEB/Babel/i18n/ca.json b/MLEB/Babel/i18n/ca.json
new file mode 100644
index 00000000..c33b5c84
--- /dev/null
+++ b/MLEB/Babel/i18n/ca.json
@@ -0,0 +1,33 @@
+{
+ "@metadata": {
+ "authors": [
+ "Aleator",
+ "SMP",
+ "Toniher",
+ "Vriullop"
+ ]
+ },
+ "babel": "Informació Babel de {{GENDER:$1|l'usuari|la usuària}}",
+ "babel-desc": "Afegeix la funció d'anàlisi <code>#babel</code> per a permetre la generació automàtica d'una columna babel de quadres d'usuari amb l'habilitat d'incloure plantilles personalitzades.",
+ "babel-url": "Project:Babel",
+ "babel-footer-url": ":Category:Usuaris per idioma",
+ "babel-autocreate-abort": "El nom d'usuari especificat s'utilitza per a la creació automàtica de categories [[$1|Babel]].",
+ "babel-autocreate-reason": "Creant automàticament la categoria de [[$1|Babel]].",
+ "babel-autocreate-text-levels": "Els usuaris d'aquesta categoria indiquen que tenen un nivell $1 per l'idioma $2.",
+ "babel-autocreate-text-main": "Els usuaris d'aquesta categoria indiquen que tenen coneixements de l'idioma $1.",
+ "babel-0": "{{GENDER:$4|Aquest usuari|Aquesta usuària}} [[$1|no té]] cap coneixement de l'idioma [[$2|$3]] (o bé l'entén amb moltes dificultats).",
+ "babel-1": "{{GENDER:$4|Aquest usuari|Aquesta usuària}} té un coneixement [[$1|bàsic]] de l'idioma [[$2|$3]].",
+ "babel-2": "{{GENDER:$4|Aquest usuari|Aquesta usuària}} té un coneixement [[$1|mitjà]] de l'idioma [[$2|$3]].",
+ "babel-3": "{{GENDER:$4|Aquest usuari|Aquesta usuària}} té un coneixement [[$1|avançat]] de l'idioma [[$2|$3]].",
+ "babel-4": "{{GENDER:$4|Aquest usuari|Aquesta usuària}} és parlant de l'idioma [[$2|$3]] amb nivell [[$1|gairebé natiu]].",
+ "babel-5": "{{GENDER:$4|Aquest usuari|Aquesta usuària}} té coneixement [[$1|professional]] de l'idioma [[$2|$3]].",
+ "babel-N": "{{GENDER:$4|Aquest usuari|Aquesta usuària}} utilitza l'idioma [[$2|$3]] com a parlant [[$1|natiu]].",
+ "babel-0-n": "{{GENDER:$4|Aquest usuari|Aquesta usuària}} [[$1|no]] té cap coneixement de [[$2|català]] (o bé l'entén amb moltes dificultats).",
+ "babel-1-n": "{{GENDER:$4|Aquest usuari|Aquesta usuària}} té un coneixement [[$1|bàsic]] de [[$2|català]].",
+ "babel-2-n": "{{GENDER:$4|Aquest usuari|Aquesta usuària}} té un coneixement [[$1|mitjà]] de [[$2|català]].",
+ "babel-3-n": "{{GENDER:$4|Aquest usuari|Aquesta usuària}} té un coneixement [[$1|avançat]] de [[$2|català]].",
+ "babel-4-n": "{{GENDER:$4|Aquest usuari|Aquesta usuària}} té un coneixement [[$1|gairebé natiu]] de [[$2|català]].",
+ "babel-5-n": "{{GENDER:$4|Aquest usuari|Aquesta usuària}} té coneixement [[$1|professional]] de la llengua [[$2|catalana]].",
+ "babel-N-n": "{{GENDER:$4|Aquest usuari és un|Aquesta usuària és una}} parlant [[$1|{{GENDER:$4|natiu|nativa}}]] de [[$2|català]].",
+ "babel-footer": "Usuaris per idioma"
+}
diff --git a/MLEB/Babel/i18n/cdo.json b/MLEB/Babel/i18n/cdo.json
new file mode 100644
index 00000000..2b90f287
--- /dev/null
+++ b/MLEB/Babel/i18n/cdo.json
@@ -0,0 +1,15 @@
+{
+ "@metadata": {
+ "authors": [
+ "唐吉訶德的侍從"
+ ]
+ },
+ "babel-N": "Cī ciáh [[$1|ê̤ṳng-hô]] gì mū-ngṳ̄ sê [[$2|Mìng-dĕ̤ng-ngṳ̄]].<br />茲隻[[$1|用戶]]其母語是[[$2|閩東語]]。",
+ "babel-0-n": "Cī ciáh ê̤ṳng-hô uòng-ciòng [[$1|mâ̤ huôi-é]] [[$2|Mìng-dĕ̤ng-ngṳ̄]].<br />茲隻用戶完全[[$1|𣍐會意]][[$2|閩東語]]。",
+ "babel-1-n": "Cī ciáh ê̤ṳng-hô tĕ̤k-siā [[$2|Mìng-dĕ̤ng-ngṳ̄]] gì nèng-lĭk sê [[$1|chĕ̤-gék]].<br />茲隻用戶讀寫[[$2|閩東語]]其能力是[[$1|初級]]。",
+ "babel-2-n": "Cī ciáh ê̤ṳng-hô tĕ̤k-siā [[$2|Mìng-dĕ̤ng-ngṳ̄]] gì nèng-lĭk [[$1|dṳ̆ng-dēng]].<br />茲隻用戶讀寫[[$2|閩東語]]其能力[[$1|中等]]。",
+ "babel-3-n": "Cī ciáh ê̤ṳng-hô tĕ̤k-siā [[$2|Mìng-dĕ̤ng-ngṳ̄]] gì nèng-lĭk [[$1|gŏ̤-gék]].<br />茲隻用戶讀寫[[$2|閩東語]]其能力[[$1|高級]]。",
+ "babel-4-n": "Cī ciáh ê̤ṳng-hô tĕ̤k-siā [[$2|Mìng-dĕ̤ng-ngṳ̄]] gì nèng-lĭk [[$1|ciék-gê̤ṳng mū-ngṳ̄]].<br />茲隻用戶讀寫[[$2|閩東語]]其能力[[$1|接近母語]]。",
+ "babel-5-n": "Cī ciáh ê̤ṳng-hô tĕ̤k-siā [[$2|Mìng-dĕ̤ng-ngṳ̄]] gì nèng-lĭk [[$1|iā ciŏng-ngiĕk]].<br />茲隻用戶讀寫[[$2|閩東語]]其能力[[$1|野專業]]。",
+ "babel-N-n": "Cī ciáh [[$1|ê̤ṳng-hô]] gì mū-ngṳ̄ sê [[$2|Mìng-dĕ̤ng-ngṳ̄]].<br />茲隻[[$1|用戶]]其母語是[[$2|閩東語]]。"
+}
diff --git a/MLEB/Babel/i18n/ce.json b/MLEB/Babel/i18n/ce.json
new file mode 100644
index 00000000..2281f150
--- /dev/null
+++ b/MLEB/Babel/i18n/ce.json
@@ -0,0 +1,21 @@
+{
+ "@metadata": {
+ "authors": [
+ "Purodha",
+ "Sasan700",
+ "Умар"
+ ]
+ },
+ "babel": "Декъашхошна хууш болу меттанийн хаам",
+ "babel-desc": "ТӀетуху функци <code>#babel</code>, оцу автоматически кхуллу блок декъашхошна хууш болу меттанаш билгалбеш кхин кепаш юкъа тоха йиш йолуш.",
+ "babel-url": "Project:Вавилон",
+ "babel-footer-url": ":Category:{{ns:Project}}:Декъашхой метташца",
+ "babel-0-n": "Хlокху декъашхочуна [[$2|Нохчйин мотт]] [[$1|хууш бац]].",
+ "babel-1-n": "Хlокху декъашхочо [[$1|кlеззиг]] буьйцу хьан [[$2|Нохчийн мотт]].",
+ "babel-2-n": "Хlокху декъашхочо [[$1|къамеляхь]] буьйцу хьан [[$2|Нохчийн мотт]].",
+ "babel-3-n": "Хlокху декъашхочо [[$1|дика]] буьйцу хьан [[$2|Нохчийн мотт]].",
+ "babel-4-n": "Хlокху декъашхочо [[$2|Нохчийн мотт]] ше [[$1|нена]] мотт санна буьйцу.",
+ "babel-5-n": "Хlокху декъашхочо [[$1|чlогlа дика]] буьйцу хьан [[$2|Нохчийн мотт]].",
+ "babel-N-n": "Хlокху декъашхочо [[$1|шейра]] буьйцу шай [[$2|Нохчийн]] мотт.",
+ "babel-footer": "Декъашхой метташца"
+}
diff --git a/MLEB/Babel/i18n/ckb.json b/MLEB/Babel/i18n/ckb.json
new file mode 100644
index 00000000..98ba26f9
--- /dev/null
+++ b/MLEB/Babel/i18n/ckb.json
@@ -0,0 +1,33 @@
+{
+ "@metadata": {
+ "authors": [
+ "Asoxor",
+ "GerardM",
+ "Muhammed taha",
+ "Calak"
+ ]
+ },
+ "babel": "زانیاریی بەکارھێنەریی بابل",
+ "babel-desc": "کرداری شیکەری <code>#babel</code> زیاد دەکات بۆ ڕێگا دان بە خۆکار دروست بوونی ستوونی سندوقی بەکارھێنەری بابل لەگەڵ توانایی بۆ لەخۆ گرتنی داڕێژە دڵخوازەکان",
+ "babel-url": "Project:بابل",
+ "babel-footer-url": ":Category:بابل - بەکارھێنەران بەپێی زمان",
+ "babel-autocreate-abort": "ناوی بەکارھێنەرییەک کە دەستنیشانتکردووە بۆ دروستکردنی خۆکار پۆلی [[$1|بابل]] بەکارھێنراوە و تۆمار ناکرێ.",
+ "babel-autocreate-reason": "دروستکردنی خۆکاری پەڕەی پۆلی [[$1|بابل]].",
+ "babel-autocreate-text-levels": "بەکارھێنەران لەم پۆلەدا توانایییان لە زمانی $2 دا لە ئاستی $1 دایە.",
+ "babel-autocreate-text-main": "بەکارھێنەران لەم پۆلەدا ئاگادارییان لە زمانی $1 دا ھەیە.",
+ "babel-0": "ئەم بەکارھێنەرە [[$2|$3]] [[$1|نازانێ]] (یان زۆر بەدژواری تێدەگات).",
+ "babel-1": "ئەم بەکارھێنەرە زانینێکی [[$1|سەرەتایی]] لە [[$2|$3]]دا ھەیە.",
+ "babel-2": "ئەم بەکارھێنەرە زانینێکی [[$1|ناوەنجی]] لە [[$2|$3]]دا ھەیە.",
+ "babel-3": "ئەم بەکارھێنەرە زانینێکی [[$1|پێشکەوتوو]]ی لە [[$2|$3]]دا ھەیە.",
+ "babel-4": "ئەم بەکارھێنەرە لە ئاستێکی [[$1|نزیک بە زمانی دایکی]] [[$2|$3]] دەزانێت.",
+ "babel-5": "ئەم بەکارھێنەرە لە ئاستێکی [[$1|پیشەیی]]دا [[$2|$3]] دەزانێت.",
+ "babel-N": "ئەم بەکارھێنەرە وەک [[$1|زمانی دایکی]] لە [[$2|$3]] تێدەگات.",
+ "babel-0-n": "ئەم بەکارھێنەرە [[$2|کوردی (ناوەندی)]] [[$1|نازانێ]] (یان زۆر بەدژواری تێدەگات).",
+ "babel-1-n": "ئەم بەکارھێنەرە زانینێکی [[$1|سەرەتایی]] لە [[$2|کوردی (سۆرانی)]]دا ھەیە.",
+ "babel-2-n": "ئەم بەکارھێنەرە زانینێکی [[$1|ناوەنجی]] لە [[$2|کوردی (سۆرانی)]]دا ھەیە.",
+ "babel-3-n": "ئەم بەکارھێنەرە زانینێکی [[$1|پێشکەوتوو]]ی لە [[$2|کوردی (سۆرانی)]]دا ھەیە.",
+ "babel-4-n": "ئەم بەکارھێنەرە لە ئاستێکی [[$1|نزیک بە زمانی دایکی]] [[$2|کوردی (سۆرانی)]] دەزانێت.",
+ "babel-5-n": "ئەم بەکارھێنەرە ئاگادارییەکی [[$1|پیشەیی]]ی لە [[$2|کوردی (سۆرانی)]] ھەیە.",
+ "babel-N-n": "ئەم بەکارھێنەرە وەک [[$1|زمانی دایکی]] لە [[$2|کوردی (سۆرانی)]] تێدەگات.",
+ "babel-footer": "بەکارهێنەران بەپێی زمان"
+}
diff --git a/MLEB/Babel/i18n/cps.json b/MLEB/Babel/i18n/cps.json
new file mode 100644
index 00000000..7e47466d
--- /dev/null
+++ b/MLEB/Babel/i18n/cps.json
@@ -0,0 +1,29 @@
+{
+ "@metadata": {
+ "authors": [
+ "GerardM",
+ "Oxyzen"
+ ]
+ },
+ "babel": "Inpormasyon sa naga usar sang Babel",
+ "babel-desc": "Ginadugang ang <code>#babel</code> paggana parser para mapasugtan ang automated generation sang kahon sang manug-usar sang Babel sa kolum nga may abilidad sa pag-upod sang mga kostumbre nga templeyt",
+ "babel-url": "Project:Babel",
+ "babel-autocreate-abort": "Ang hayo (username) nga imo gina-klaro ginagamit para sa [[$1|Babel]] auto-himo nga kategorya kag indi ni pwede marehistro.",
+ "babel-autocreate-reason": "Automatiko nga ginahimo ang [[$1|Babel]] nga pahina kategorya.",
+ "babel-autocreate-text-levels": "Ang mga naga-usar sa mini nga kategorya nagapakita nga may ara sila kasarang lebel $1 para sa lenggwahe nga $2.",
+ "babel-autocreate-text-main": "Mga user sa mini nga kategorya nagapakita nga may-ara sila ka-alam lebel $1.",
+ "babel-0": "Ang mini nga manug-usar [[$1|wala]] sang ka-alam sang [[$2|$3]] (ukon nabudlayan mini sa pag-intyende).",
+ "babel-1": "Ang mini nga manug-usar may [[$1|gamay]] nga ka-alam sang [[$2|$3]].",
+ "babel-2": "Ang mini nga manug-usar may [[$1|katamtaman]] nga ka-alam sang [[$2|$3]].",
+ "babel-3": "Ang mini nga manug-usar may [[$1|madalum]] nga ka-alam sang [[$2|$3]].",
+ "babel-4": "Ang mini nga manug-usar may [[$1|malapit sa tumandok]] nga ka-alam sang [[$2|$3]].",
+ "babel-5": "Ang mini nga manug-usar may [[$1|propesyunal]] nga ka-alam sang [[$2|$3]].",
+ "babel-N": "Ang mini nga manug-usar may [[$1|tumandok]] nga ka-alam sang [[$2|$3]].",
+ "babel-0-n": "Ang mini nga manug-usar [[$1|wala]] sang ka-alam sang [[$2|Capiceño]] (ukon nabudlayan mini mag-intyende).",
+ "babel-1-n": "Ang mini nga manug-usar may [[$1|gamay]] nga ka-alam sang [[$2|Capiceño]].",
+ "babel-2-n": "Ang mini nga manug-usar may [[$1|katamtaman]] nga ka-alam sang [[$2|Capiceño]].",
+ "babel-3-n": "Ang mini nga manug-usar may [[$1|abanse]] nga ka-alam sang [[$2|Capiceño]].",
+ "babel-4-n": "Ang mini nga manug-usar may [[$1|malapit sa tumandok]] nga ka-alam sang [[$2|Capiceño]].",
+ "babel-5-n": "Ang mini nga manug-usar may [[$1|propesyunal]] nga ka-alam sang [[$2|Capiceño]].",
+ "babel-N-n": "Ang mini nga manug-usar may [[$1|tumandok]] nga ka-alam sang [[$2|Capiceño]]."
+}
diff --git a/MLEB/Babel/i18n/crh-cyrl.json b/MLEB/Babel/i18n/crh-cyrl.json
new file mode 100644
index 00000000..8d4c909a
--- /dev/null
+++ b/MLEB/Babel/i18n/crh-cyrl.json
@@ -0,0 +1,15 @@
+{
+ "@metadata": {
+ "authors": [
+ "Don Alessandro"
+ ]
+ },
+ "babel-0-n": "Бу къуланыджы [[$2|къырымтатар тилини]] я [[$1|ич бильмей]] я да зар-зорнен анълай.",
+ "babel-1-n": "Бу къулланыджы [[$2|къырымтатар тилини]] [[$1|азчыкъ]] биле.",
+ "babel-2-n": "Бу къулланыджы [[$2|къырымтатар тилини]] [[$1|орта севиеде]] биле.",
+ "babel-3-n": "Бу къулланыджы [[$2|къырымтатар тилини]] [[$1|яхшы]] биле.",
+ "babel-4-n": "Бу къулланыджы [[$2|къырымтатар тилини]] [[$1|ана тили киби]] биле.",
+ "babel-5-n": "Бу къулланыджы [[$2|къырымтатар тилини]] [[$1|ихтисасий севиеде]] биле.",
+ "babel-N-n": "Бу къулланыджынынъ [[$1|ана тили]] [[$2|къырымтатар тили]]дир.",
+ "babel-footer": "Тиллерине коре къулланыджылар"
+}
diff --git a/MLEB/Babel/i18n/crh-latn.json b/MLEB/Babel/i18n/crh-latn.json
new file mode 100644
index 00000000..dc70ffaa
--- /dev/null
+++ b/MLEB/Babel/i18n/crh-latn.json
@@ -0,0 +1,15 @@
+{
+ "@metadata": {
+ "authors": [
+ "Don Alessandro"
+ ]
+ },
+ "babel-0-n": "Bu qulanıcı [[$2|qırımtatar tilini]] ya [[$1|iç bilmey]] ya da zar-zornen añlay.",
+ "babel-1-n": "Bu qullanıcı [[$2|qırımtatar tilini]] [[$1|azçıq]] bile.",
+ "babel-2-n": "Bu qullanıcı [[$2|qırımtatar tilini]] [[$1|orta seviyede]] bile.",
+ "babel-3-n": "Bu qullanıcı [[$2|qırımtatar tilini]] [[$1|yahşı]] bile.",
+ "babel-4-n": "Bu qullanıcı [[$2|qırımtatar tilini]] [[$1|ana tili kibi]] bile.",
+ "babel-5-n": "Bu qullanıcı [[$2|qırımtatar tilini]] [[$1|ihtisasiy seviyede]] bile.",
+ "babel-N-n": "Bu qullanıcınıñ [[$1|ana tili]] [[$2|qırımtatar tili]]dir.",
+ "babel-footer": "Tillerine köre qullanıcılar"
+}
diff --git a/MLEB/Babel/i18n/crh.json b/MLEB/Babel/i18n/crh.json
new file mode 100644
index 00000000..e1d67d75
--- /dev/null
+++ b/MLEB/Babel/i18n/crh.json
@@ -0,0 +1,14 @@
+{
+ "@metadata": {
+ "authors": [
+ "Don Alessandro"
+ ]
+ },
+ "babel-0": "Bu qullanıcı [[$2|Qırımtatar tili]]ni [[$1|iç bilmey]].",
+ "babel-1": "Bu qullanıcı [[$2|Qırımtatar tili]]ni [[$1|başlanğıç seviyede]] bile.",
+ "babel-2": "Bu qullanıcı [[$2|Qırımtatar tili]]ni [[$1|orta seviyede]] bile.",
+ "babel-3": "Bu qullanıcı [[$2|Qırımtatar tili]]ni [[$1|yahşı]] bile.",
+ "babel-4": "Bu qullanıcı [[$2|Qırımtatar tili]]ni [[$1|ana tili kibi]] bile.",
+ "babel-5": "Bu qullanıcı [[$2|Qırımtatar tili]]ni [[$1|ihtisasiy seviyede]] bile.",
+ "babel-N": "Bu qullanıcınıñ [[$1|ana tili]] [[$2|Qırımtatar tili]]dir."
+} \ No newline at end of file
diff --git a/MLEB/Babel/i18n/cs.json b/MLEB/Babel/i18n/cs.json
new file mode 100644
index 00000000..505e21ea
--- /dev/null
+++ b/MLEB/Babel/i18n/cs.json
@@ -0,0 +1,36 @@
+{
+ "@metadata": {
+ "authors": [
+ "Danny B.",
+ "Kuvaly",
+ "Li-sung",
+ "Littledogboy",
+ "Matěj Grabovský",
+ "Mormegil",
+ "Mr. Richard Bolla"
+ ]
+ },
+ "babel": "Babel – jazykové znalosti {{GENDER:$1|uživatele|uživatelky|uživatele}}",
+ "babel-desc": "Přidává funkci <code><nowiki>{{#babel:}}</nowiki></code>, umožňující automatickou tvorbu rámečku s informacemi o jazykových schopnostech uživatele s možností používat vlastní šablony.",
+ "babel-url": "Project:Babylon",
+ "babel-footer-url": ":Kategorie:Babylón – Uživatelé podle jazyka",
+ "babel-autocreate-abort": "Vámi uvedené uživatelské jméno se používá pro automatické zakládání kategorií pro [[$1|Babel]] a nelze si ho registrovat.",
+ "babel-autocreate-reason": "Automatické založení stránky kategorie pro [[$1|Babel]]",
+ "babel-autocreate-text-levels": "Uživatelé v této kategorii označili svou úroveň znalostí jazyka $2 jako $1.",
+ "babel-autocreate-text-main": "Uživatelé v této kategorii prohlásili, že mají jisté znalosti jazyka $1.",
+ "babel-0": "{{GENDER:$4|Tento uživatel|Tato uživatelka|Tento uživatel}} [[$1|nerozumí]] [[$2|$3]] (nebo rozumí se značnými problémy).",
+ "babel-1": "Tento uživatel má [[$1|základní]] znalosti [[$2|{{GRAMMAR:2sg|$3}}]].",
+ "babel-2": "Tento uživatel má znalosti [[$2|{{GRAMMAR:2sg|$3}}]] na [[$1|středně pokročilé]] úrovni.",
+ "babel-3": "Tento uživatel má znalosti [[$2|{{GRAMMAR:2sg|$3}}]] na [[$1|pokročilé]] úrovni.",
+ "babel-4": "Tento uživatel má znalosti [[$2|{{GRAMMAR:2sg|$3}}]] srovnatelné s [[$1|rodilým mluvčím]].",
+ "babel-5": "Tento uživatel má znalosti [[$2|{{GRAMMAR:2sg|$3}}]] na [[$1|profesionální]] úrovni.",
+ "babel-N": "Tento uživatel je [[$1|rodilý]] mluvčí [[$2|$3]].",
+ "babel-0-n": "Tento uživatel [[$1|nerozumí]] [[$2|česky]] (nebo rozumí se značnými problémy).",
+ "babel-1-n": "Tento uživatel má [[$1|základní]] znalosti [[$2|češtiny]].",
+ "babel-2-n": "Tento uživatel má [[$1|střední]] znalosti [[$2|češtiny]].",
+ "babel-3-n": "Tento uživatel má [[$1|pokročilé]] znalosti [[$2|češtiny]].",
+ "babel-4-n": "Tento uživatel má znalosti [[$2|češtiny]] [[$1|téměř na úrovni rodilého mluvčího]].",
+ "babel-5-n": "Tento uživatel má [[$1|profesionální]] znalosti [[$2|češtiny]].",
+ "babel-N-n": "Tento uživatel je [[$1|rodilý mluvčí]] [[$2|češtiny]].",
+ "babel-footer": "Uživatelé podle jazyka"
+}
diff --git a/MLEB/Babel/i18n/csb.json b/MLEB/Babel/i18n/csb.json
new file mode 100644
index 00000000..2e71aa83
--- /dev/null
+++ b/MLEB/Babel/i18n/csb.json
@@ -0,0 +1,31 @@
+{
+ "@metadata": {
+ "authors": [
+ "Iketsi",
+ "Kaszeba"
+ ]
+ },
+ "babel": "Wieżô Babel brëkòwnika",
+ "babel-desc": "Dodôwô fùnkcëjã parsera <code>#babel</code> zezwalającą na aùtomatné ùsôdzanié kastczi brëkòwnika z mòżnotą wstôwianiô swòjich szblonów",
+ "babel-url": "Project:Wieżô Babel",
+ "babel-footer-url": ":Kategòrëjô:Jãzëczi brëkòwników",
+ "babel-autocreate-abort": "Wëbróné miono brëkòwnika je brëkòwóné do aùtomatnegò ùsôdzaniô kategòrëji [[$1|wieżë Babel]] ë ni mòże bëc registrowóné.",
+ "babel-autocreate-reason": "Starna aùtomatno ùsôdzony kategòrëji [[$1|wieżë Babel]].",
+ "babel-autocreate-text-levels": "Brëkòwnicë w ti kategòrëji zeswiôdczają znajemòtã jãzëka $2 jakno $1.",
+ "babel-autocreate-text-main": "Brëkòwnicë w ti kategòrëji zeswiôdczają znajemòtã jãzëka $1.",
+ "babel-0": "[[$2|$3 ]] jãzëk [[$1|nie je zrozmiałi]] dlô negò brëkòwnika (abò mô òn z nim stolemné problemë).",
+ "babel-1": "Nen brëkòwnik rozmieje [[$2|$3 jãzëk]] w [[$1|spòdlowim]] gradze.",
+ "babel-2": "Nen brëkòwnik rozmieje [[$2|$3 jãzëk]] w [[$1|strzédnoawansowónym]] gradze.",
+ "babel-3": "Nen brëkòwnik rozmieje [[$2|$3 jãzëk]] w [[$1|awansowónym]] gradze.",
+ "babel-4": "Nen brëkòwnik rozmieje [[$2|$3 jãzëk]] wnetka jakno [[$1|rodną mòwã]].",
+ "babel-5": "Nen brëkòwnik rozmieje [[$2|$3 jãzëk]] na równi z [[$1|rodną mòwą]].",
+ "babel-N": "[[$2|$3 jãzëk]] je [[$1|rodną mòwą]] negò brëkòwnika.",
+ "babel-0-n": "[[$2|Kaszëbsczi]] jãzëk [[$1|nie je zrozmiałi]] dlô negò brëkòwnika (abò mô òn z nim stolemné problemë).",
+ "babel-1-n": "Nen brëkòwnik rozmieje [[$2|kaszëbsczi jãzëk]] w [[$1|spòdlowim]] gradze.",
+ "babel-2-n": "Nen brëkòwnik rozmieje [[$2|kaszëbsczi jãzëk]] w [[$1|strzédnoawansowónym]] gradze.",
+ "babel-3-n": "Nen brëkòwnik rozmieje [[$2|kaszëbsczi jãzëk]] w [[$1|awansowónym]] gradze.",
+ "babel-4-n": "Nen brëkòwnik rozmieje [[$2|kaszëbsczi jãzëk]] wnetka jakno [[$1|rodną mòwã]].",
+ "babel-5-n": "Nen brëkòwnik rozmieje [[$2|kaszëbsczi jãzëk]] na równi z [[$1|rodną mòwą]].",
+ "babel-N-n": "[[$2|Kaszëbsczi jãzëk]] je [[$1|rodną mòwą]] negò brëkòwnika.",
+ "babel-footer": "Jãzëczi brëkòwników"
+}
diff --git a/MLEB/Babel/i18n/cu.json b/MLEB/Babel/i18n/cu.json
new file mode 100644
index 00000000..a1860d50
--- /dev/null
+++ b/MLEB/Babel/i18n/cu.json
@@ -0,0 +1,23 @@
+{
+ "@metadata": {
+ "authors": [
+ "ОйЛ"
+ ]
+ },
+ "babel": "Вавѷлѡнъ : польꙃєватєлꙗ ѩꙁꙑци",
+ "babel-url": "Project:Вавѷлѡнъ",
+ "babel-footer-url": ":Category:{{ns:project}}:Польꙃєватєлъ ѩꙁꙑци",
+ "babel-0": "сь польꙃєватєл҄ь [[$1|нє]] раꙁоумѣѥтъ [[$2|$3]] · или раꙁоумѣѥтъ съ вєликꙑ оусилии",
+ "babel-1": "сь польꙃєватєл҄ь глаголѥтъ [[$2|$3]] [[$1|ꙁълѣ]]",
+ "babel-2": "сь польꙃєватєл҄ь глаголѥтъ [[$2|$3]] [[$1|трьпимо]]",
+ "babel-3": "сь польꙃєватєл҄ь глаголѥтъ [[$2|$3]] [[$1|добрѣ]]",
+ "babel-4": "сь польꙃєватєл҄ь глаголѥтъ [[$2|$3]] [[$1|вєльми добрѣ]]",
+ "babel-N": "сѥмоу польꙃєватєл҄ю [[$2|$3]] ꙗко [[$1|родьнъ]] ѥстъ",
+ "babel-0-n": "сь польꙃєватєл҄ь [[$1|нє]] раꙁоумѣѥтъ [[$2|словѣньскꙑ]] · или раꙁоумѣѥтъ съ вєликꙑ оусилии",
+ "babel-1-n": "сь польꙃєватєл҄ь глаголѥтъ [[$2|словѣньскꙑ]] [[$1|ꙁълѣ]]",
+ "babel-2-n": "сь польꙃєватєл҄ь глаголѥтъ [[$2|словѣньскꙑ]] [[$1|трьпимо]]",
+ "babel-3-n": "сь польꙃєватєл҄ь глаголѥтъ [[$2|словѣньскꙑ]] [[$1|добрѣ]]",
+ "babel-4-n": "сь польꙃєватєл҄ь глаголѥтъ [[$2|словѣньскꙑ]] [[$1|вєльми добрѣ]]",
+ "babel-N-n": "сѥмоу польꙃєватєл҄ю [[$2|словѣньскъ ѩꙁꙑкъ]] ꙗко [[$1|родьнъ]] ѥстъ",
+ "babel-footer": "Польꙃєватєлъ ѩꙁꙑци"
+}
diff --git a/MLEB/Babel/i18n/cv.json b/MLEB/Babel/i18n/cv.json
new file mode 100644
index 00000000..23fb4bd4
--- /dev/null
+++ b/MLEB/Babel/i18n/cv.json
@@ -0,0 +1,25 @@
+{
+ "@metadata": {
+ "authors": [
+ "PCode",
+ "Salam",
+ "Блокнот"
+ ]
+ },
+ "babel": "Чĕлхе пĕлĕвĕ",
+ "babel-url": "Project:Вавилон",
+ "babel-0": "Ку хутшӑнакан [[$2|$3]] [[$1|пĕлмест]] (е ӑна чӗлхене ӑнланма йывӑр).",
+ "babel-1": "Ку хутшăнакан [[$2|чăваш чĕлхине]] [[$1|кăштах]] пĕлет.",
+ "babel-2": "Ку хутшăнакан [[$1|вăтамран илсен]] [[$2|чăваш чĕлхине]] пĕлет.",
+ "babel-3": "Ку хутшӑнакан [[$2|$3]] [[$1|лайӑх]] пӗлет.",
+ "babel-4": "Ку хутшӑнакан [[$2|чӑвашла]] [[$1|тӑван чӗлхене пӗлнӗ пек]] пӗлет.",
+ "babel-5": "Ку хутшăнакан [[$2|чăваш чĕлхине]] питĕ лайăх, [[$1|профессионал шайĕнче]] пĕлет.",
+ "babel-N": "Ку хутшăнаканшăн [[$2|$3]] [[$1|тăван чĕлхе]] шутланать.",
+ "babel-0-n": "Ку хутшӑнакан [[$2|чӑваш чӗлхине]] [[$1|пĕлмест]] (е ӑна чӗлхене ӑнланма йывӑр).",
+ "babel-1-n": "Ку хутшӑнакан [[$2|чӑваш чӗлхине]] [[$1|кӑштах]] пӗлет.",
+ "babel-2-n": "Ку хутшӑнакан [[$2|чӑваш чӗлхине]] вӑтам пӗлет.",
+ "babel-3-n": "Ку хутшӑнакан [[$2|чӑваш чӗлхине]] [[$1|лайӑх]] пӗлет.",
+ "babel-4-n": "Ку хутшӑнакан [[$2|чӑвашла]] [[$1|тӑван чӗлхене пӗлнӗ пек]] пӗлет.",
+ "babel-5-n": "Ку хутшӑнакан [[$2|чӑваш чӗлхине]] [[$1|профессионал шайӗнче]] пӗлет.",
+ "babel-N-n": "Ку хутшăнаканшăн [[$2|чăваш чĕлхи]] [[$1|тăван чĕлхе]] шутланать."
+}
diff --git a/MLEB/Babel/i18n/cy.json b/MLEB/Babel/i18n/cy.json
new file mode 100644
index 00000000..4c996c7f
--- /dev/null
+++ b/MLEB/Babel/i18n/cy.json
@@ -0,0 +1,30 @@
+{
+ "@metadata": {
+ "authors": [
+ "Lloffiwr"
+ ]
+ },
+ "babel": "Gwybodaeth am ieithoedd y defnyddiwr",
+ "babel-desc": "Yn ychwanegu'r ffwythiant dosrannu <code>#babel</code> er mwyn gosod blwch ieithoedd y defnyddiwr yn awtomatig, a chyda'r modd i gynnwys nodiadau pwrpasol",
+ "babel-url": "Project:Babel",
+ "babel-footer-url": ":Categori:Ieithoedd defnyddwyr",
+ "babel-autocreate-abort": "Defnyddir yr enw defnyddiwr y dewisoch ar gyfer creu categori [[$1|Babel]] yn awtomatig, ac ni ellir ei gofrestri.",
+ "babel-autocreate-reason": "Yn creu tudalen gategoreiddio [[$1|Babel]] yn awtomatig.",
+ "babel-autocreate-text-levels": "Mae defnyddwyr yn y categori hwn yn crybwyll bod ganddynt gallu ieithyddol ar lefel $1 mewn $2.",
+ "babel-autocreate-text-main": "Mae defnyddwyr yn y categori hwn yn crybwyll bod rhywfaint o allu $1 ganddynt.",
+ "babel-0": "[[$1|Nid]] yw{{GENDER:$4| hwn| hon|'r defnyddiwr 'ma}} yn medru [[$2|$3]] (neu mae'n cael hi'n anodd iawn ei deall).",
+ "babel-1": "Mae{{GENDER:$4| hwn| hon|'r defnyddiwr 'ma}} yn medru [[$2|$3]] ar lefel [[$1|syml]].",
+ "babel-2": "Mae{{GENDER:$4| hwn| hon|'r defnyddiwr 'ma}} yn medru [[$2|$3]] ar lefel [[$1|ganolradd]].",
+ "babel-3": "Mae{{GENDER:$4| hwn| hon|'r defnyddiwr 'ma}} yn medru [[$2|$3]] ar lefel [[$1|uwchradd]].",
+ "babel-4": "Mae [[$2|$3]] [[$1|rhugl]] gan {{GENDER:$4|hwn|hon|y defnyddiwr 'ma}}.",
+ "babel-5": "Mae{{GENDER:$4| hwn| hon|'r defnyddiwr 'ma}} yn medru [[$2|$3]] ar lefel [[$1|broffesiynol]].",
+ "babel-N": "[[$2|$3]] yw [[$1|mamiaith]] {{GENDER:$4|hwn|hon|y defnyddiwr 'ma}}.",
+ "babel-0-n": "[[$1|Nid]] yw{{GENDER:$4| hwn| hon|'r defnyddiwr 'ma}} yn medru'r [[$2|Gymraeg]] (neu mae'n cael hi'n anodd iawn ei deall).",
+ "babel-1-n": "Mae{{GENDER:$4| hwn| hon|'r defnyddiwr 'ma}} yn medru'r [[$2|Gymraeg]] ar lefel [[$1|syml]].",
+ "babel-2-n": "Mae{{GENDER:$4| hwn| hon|'r defnyddiwr 'ma}} yn medru'r [[$2|Gymraeg]] ar lefel [[$1|ganolradd]].",
+ "babel-3-n": "Mae{{GENDER:$4| hwn| hon|'r defnyddiwr 'ma}} yn medru'r [[$2|Gymraeg]] ar lefel [[$1|uwchradd]].",
+ "babel-4-n": "Mae [[$2|Cymraeg]] [[$1|rhugl]] gan {{GENDER:$4|hwn|hon|y defnyddiwr 'ma}}.",
+ "babel-5-n": "Mae{{GENDER:$4| hwn| hon|'r defnyddiwr 'ma}} yn medru'r [[$2|Gymraeg]] ar lefel [[$1|broffesiynol]].",
+ "babel-N-n": "[[$2|Cymraeg]] yw [[$1|mamiaith]] {{GENDER:$4|hwn|hon|y defnyddiwr 'ma}}.",
+ "babel-footer": "Ieithoedd defnyddwyr"
+}
diff --git a/MLEB/Babel/i18n/da.json b/MLEB/Babel/i18n/da.json
new file mode 100644
index 00000000..17386fcb
--- /dev/null
+++ b/MLEB/Babel/i18n/da.json
@@ -0,0 +1,36 @@
+{
+ "@metadata": {
+ "authors": [
+ "Byrial",
+ "Christian List",
+ "Froztbyte",
+ "Jan Friberg",
+ "Peter Alberti",
+ "Sarrus"
+ ]
+ },
+ "babel": "Babel brugeroplysninger",
+ "babel-desc": "Tilføjer parserfunktionen <code>#babel</code> for at tillade automatisk at generere en babelboks med mulighed for at inkludere tilpassede skabeloner",
+ "babel-url": "Project:Babel",
+ "babel-footer-url": ":Category:Babel - Brugere efter sprog",
+ "babel-autocreate-abort": "Brugernavnet du har angivet benyttes til automatisk oprettelse af [[$1|Babel]]-kategorier og kan ikke registreres.",
+ "babel-autocreate-reason": "Opretter automatisk [[$1|Babel]] kategoriside.",
+ "babel-autocreate-text-levels": "Brugere i denne kategori angiver, at deres kendskab til $2 er på niveau $1",
+ "babel-autocreate-text-main": "Brugere i denne kategori angiver, at de har kendskab til $1.",
+ "babel-0": "Denne bruger har [[$1|ingen]] kendskab til [[$2|$3]] (eller har meget svært ved at forstå det).",
+ "babel-1": "Denne bruger har [[$1|grundlæggende]] kendskab til [[$2|$3]].",
+ "babel-2": "Denne bruger har et [[$1|godt]] kendskab til [[$2|$3]].",
+ "babel-3": "Denne bruger har et [[$1|avanceret]] kendskab til [[$2|$3]].",
+ "babel-4": "Denne bruger kan [[$2|$3]] næsten på [[$1|modersmålsniveau]].",
+ "babel-5": "Denne bruger har [[$1|professionel]] kendskab til [[$2|$3]].",
+ "babel-N": "Denne bruger har [[$2|$3]] som [[$1|modersmål]].",
+ "babel-0-n": "Denne bruger har [[$1|intet]] kendskab til [[$2|dansk]] (eller forstår det kun med stor vanskelighed).",
+ "babel-1-n": "Denne bruger har [[$1|grundlæggende]] kendskab til [[$2|dansk]].",
+ "babel-2-n": "Denne bruger har et [[$1|godt]] kendskab til [[$2|dansk]].",
+ "babel-3-n": "Denne bruger har et [[$1|avanceret]] kendskab til [[$2|dansk]].",
+ "babel-4-n": "Denne bruger kan [[$2|dansk]] næsten på [[$1|modersmålsniveau]].",
+ "babel-5-n": "Denne bruger har [[$1|professionelt]] kendskab til [[$2|dansk]].",
+ "babel-N-n": "Denne bruger har [[$2|dansk]] som [[$1|modersmål]].",
+ "babel-template": "Template:Bruger $1",
+ "babel-footer": "Brugere efter sprog"
+}
diff --git a/MLEB/Babel/i18n/de.json b/MLEB/Babel/i18n/de.json
new file mode 100644
index 00000000..2b729c14
--- /dev/null
+++ b/MLEB/Babel/i18n/de.json
@@ -0,0 +1,41 @@
+{
+ "@metadata": {
+ "authors": [
+ "ChrisiPK",
+ "Forrester",
+ "Iwan Novirion",
+ "Kghbln",
+ "Metalhead64",
+ "Purodha",
+ "Raimond Spekking",
+ "Revolus",
+ "The Evil IP address",
+ "Umherirrender"
+ ]
+ },
+ "babel": "Babel – Benutzerinformationen",
+ "babel-desc": "Ergänzt die Funktion <code>#babel</code> zur automatischen Erstellung von „Babel“-Benutzerboxen und erlaubt, selbstdefinierte Vorlagen einzubinden",
+ "babel-url": "Project:Babel",
+ "babel-footer-url": ":Category:Babel - Benutzer nach Sprache",
+ "babel-autocreate-abort": "Der angegebene Benutzername wird für die automatische Erstellung von [[$1|Babel]]-Kategorien benötigt und kann nicht registriert werden.",
+ "babel-autocreate-reason": "Erstelle automatisch die [[$1|Babel]]-Kategorie.",
+ "babel-autocreate-text-levels": "Benutzer in dieser Kategorie haben Kenntnisse der Stufe $1 in der Sprache $2.",
+ "babel-autocreate-text-main": "Benutzer in dieser Kategorie haben Kenntnisse der Sprache $1.",
+ "babel-autocreate-user": "Babel AutoCreate",
+ "babel-0": "{{GENDER:$4|Dieser Benutzer|Dieser Benutzerin|Dieser Benutzer}} beherrscht [[$2|$3]] [[$1|nicht]] (oder versteht es nur mit beträchtlichen Schwierigkeiten).",
+ "babel-1": "{{GENDER:$4|Dieser Benutzer|Diese Benutzerin|Dieser Benutzer}} beherrscht [[$2|$3]] auf [[$1|grundlegendem]] Niveau.",
+ "babel-2": "{{GENDER:$4|Dieser Benutzer|Diese Benutzerin|Dieser Benutzer}} beherrscht [[$2|$3]] auf [[$1|fortgeschrittenem]] Niveau.",
+ "babel-3": "{{GENDER:$4|Dieser Benutzer|Diese Benutzerin|Dieser Benutzer}} beherrscht [[$2|$3]] auf [[$1|hohem]] Niveau.",
+ "babel-4": "{{GENDER:$4|Dieser Benutzer|Diese Benutzerin|Dieser Benutzer}} beherrscht [[$2|$3]] auf [[$1|muttersprachlichem Niveau]].",
+ "babel-5": "{{GENDER:$4|Dieser Benutzer|Diese Benutzerin|Dieser Benutzer}} beherrscht [[$2|$3]] auf [[$1|professionellem]] Niveau.",
+ "babel-N": "{{GENDER:$4|Dieser Benutzer|Diese Benutzerin|Dieser Benutzer}} spricht [[$2|$3]] als [[$1|Muttersprache]].",
+ "babel-0-n": "{{GENDER:$4|Dieser Benutzer|Diese Benutzerin|Dieser Benutzer}} beherrscht [[$2|Deutsch]] [[$1|nicht]] (oder versteht es nur mit beträchtlichen Schwierigkeiten).",
+ "babel-1-n": "{{GENDER:$4|Dieser Benutzer|Diese Benutzerin|Dieser Benutzer}} beherrscht [[$2|Deutsch]] auf [[$1|grundlegendem]] Niveau.",
+ "babel-2-n": "{{GENDER:$4|Dieser Benutzer|Diese Benutzerin|Dieser Benutzer}} beherrscht [[$2|Deutsch]] auf [[$1|fortgeschrittenem]] Niveau.",
+ "babel-3-n": "{{GENDER:$4|Dieser Benutzer|Diese Benutzerin|Dieser Benutzer}} beherrscht [[$2|Deutsch]] auf [[$1|hohem]] Niveau.",
+ "babel-4-n": "{{GENDER:$4|Dieser Benutzer|Diese Benutzerin|Dieser Benutzer}} beherrscht [[$2|Deutsch]] auf [[$1|muttersprachlichem Niveau]].",
+ "babel-5-n": "{{GENDER:$4|Dieser Benutzer|Diese Benutzerin|Dieser Benutzer}} beherrscht [[$2|Deutsch]] auf [[$1|professionellem]] Niveau.",
+ "babel-N-n": "{{GENDER:$4|Dieser Benutzer|Diese Benutzerin|Dieser Benutzer}} spricht [[$2|Deutsch]] als [[$1|Muttersprache]].",
+ "babel-template": "Template:User $1",
+ "babel-footer": "Benutzer nach Sprache"
+}
diff --git a/MLEB/Babel/i18n/diq.json b/MLEB/Babel/i18n/diq.json
new file mode 100644
index 00000000..439cc14e
--- /dev/null
+++ b/MLEB/Babel/i18n/diq.json
@@ -0,0 +1,36 @@
+{
+ "@metadata": {
+ "authors": [
+ "Erdemaslancan",
+ "Gorizon",
+ "Mirzali",
+ "Neribij",
+ "Marmase"
+ ]
+ },
+ "babel": "Melumatê karberiyê Babili",
+ "babel-desc": "Menıne de otomatik désé karberi vırazşten da şablonan ré, fonksiyona <code>#babil</code>i kena de",
+ "babel-url": "Project:Babil",
+ "babel-footer-url": ":Kategoriye:Babil - Goreyê zıwanan ra karberi",
+ "babel-autocreate-abort": "Nameyê karberio ke şıma areze kerdo, seba otomatik vıraştışê kategoriya [[$1|Babil]]i gureniyeno û nêşeno bıgêriyo.",
+ "babel-autocreate-reason": "Kategoriya [[$1|Babil]]i otomaik vırazéna.",
+ "babel-autocreate-text-levels": "Karberé ke na kategoride yé, $1 sewiye dê zıwané $2 zané.",
+ "babel-autocreate-text-main": "Karberé ke na kategoride yê vané ma zıwané $1 zam.",
+ "babel-autocreate-user": "Babil OtomatikVıraştış",
+ "babel-0": "No/Na karber [[$1|héç]] [[$2|$3]] nézana (yana çetın fahm kena).",
+ "babel-1": "No/Na karber [[$1|zayıf]] sewiya de [[$2|$3]] zana.",
+ "babel-2": "No/Na karber [[$1|werte]] sewiya de [[$2|$3]] zana.",
+ "babel-3": "No/Na karber [[$1|weş]] sewiya de [[$2|$3]] zana.",
+ "babel-4": "Na/Na karber [[$2|$3]] [[$1|Zey zıwan dé ğo]] qısey keno",
+ "babel-5": "No/Na karber [[$1|profesyonel]] sewiya de [[$2|$3]] zano.",
+ "babel-N": "Zıwané [[$1|may u pérdé]] na/né karberi [[$2|$3]] yo.",
+ "babel-0-n": "No/Na karber [[$1|héç]] [[$2|Zazaki]] nézana (yana çetın fahm kena).",
+ "babel-1-n": "No/Na karber [[$1|zayıf]] sewiya de [[$2|Zazaki]] zana.",
+ "babel-2-n": "No/Na karber [[$1|werte]] sewiya de [[$2|Zazaki]] zana.",
+ "babel-3-n": "No/Na karber [[$1|weş]] sewiya de [[$2|Zazaki]] zana.",
+ "babel-4-n": "Na/Na karber [[$1|Zey zıwan dé ğo]] [[$2|Zazaki]] qısey keno",
+ "babel-5-n": "No/Na karber [[$1|profesyonel]] sewiya de [[$2|Zazaki]] zano.",
+ "babel-N-n": "Zıwané [[$1|may u pérdé]] na/né karberi [[$2|Zazaki]] yo.",
+ "babel-template": "Template:User $1",
+ "babel-footer": "Goreyê zıwanan ra karberi"
+}
diff --git a/MLEB/Babel/i18n/dsb.json b/MLEB/Babel/i18n/dsb.json
new file mode 100644
index 00000000..9b2c0f0e
--- /dev/null
+++ b/MLEB/Babel/i18n/dsb.json
@@ -0,0 +1,30 @@
+{
+ "@metadata": {
+ "authors": [
+ "Michawiki"
+ ]
+ },
+ "babel": "Babelowe wužywarske informacije",
+ "babel-desc": "Pśidawa parserowu funkciju <code>#babel</code> za awtomatiske twórjenje słupa babelowych wužywarskich kašćikow, z móžnosću, swójske pśedłogi zapśěgnuś",
+ "babel-url": "Project:Babel",
+ "babel-footer-url": ":Category:Babel - Wužywarje pó rěcy",
+ "babel-autocreate-abort": "Pódane wužywarske mě wužywa se za awtomatiske wutwórjenje [[$1|Babelowych]] kategorijow a njedajo se registrěrowaś.",
+ "babel-autocreate-reason": "Awtomatiske wutwórjenje [[$1|Babeloweje]] kategorije.",
+ "babel-autocreate-text-levels": "Wužywarje w toś tej kategoriji pódawaju, až maju stopjeń znajobnosćow $1 za rěc $2.",
+ "babel-autocreate-text-main": "Wužywarje w toś tej kategoriji pódawaju, až maju znajobnosći rěcy $1.",
+ "babel-0": "Toś ten wužywaŕ [[$1|njama]] znajobnosći [[$2|$3]] (abo rozmějo ju jano z wjelikimi śěźami).",
+ "babel-1": "Toś ten wužywaŕ ma [[$1|zakładne]] znajobnosći [[$2|$3]].",
+ "babel-2": "Toś ten wužywaŕ ma [[$1|pśerězne]] znajobnosći [[$2|$3]].",
+ "babel-3": "Toś ten wužywaŕ ma [[$1|póstupjone]] znajobnosći [[$2|$3]].",
+ "babel-4": "Toś ten wužywaŕ ma znajobnosći [[$2|$3]] na [[$1|maminorěcnem]] niwowje.",
+ "babel-5": "Toś ten wužywaŕ ma [[$1|profesionelne]] znajobnosći [[$2|$3]].",
+ "babel-N": "Toś ten wužywaŕ powĕda [[$2|$3]] ako [[$1|maminu]] rĕc.",
+ "babel-0-n": "Toś ten wužywaŕ njama [[$1|žedne]] znajobnosći [[$2|dolnoserbšćiny]] (abo rozmějo ju jano z bejnymi śěžkosćami).",
+ "babel-1-n": "Toś ten wužywaŕ ma [[$1|zakładne]] znajobnosći [[$2|dolnoserbšćiny]].",
+ "babel-2-n": "Toś ten wužywaŕ ma [[$1|pśerězne]] znajobnosći [[$2|dolnoserbšćiny]].",
+ "babel-3-n": "Toś ten wužywaŕ ma [[$1|póstupjone]] znajobnosći [[$2|dolnoserbšćiny]].",
+ "babel-4-n": "Toś ten wužywaŕ powěda [[$2|dolnoserbšćinu]] kaž [[$1|maminorěcny]].",
+ "babel-5-n": "Toś ten wužywaŕ ma [[$1|profesionelne]] znajobnosći [[$2|dolnoserbšćiny]].",
+ "babel-N-n": "Toś ten wužywaŕ powěda [[$2|dolnoserbšćinu]] ako [[$1|maminu rěc]].",
+ "babel-footer": "Wužywarje pó rěcy"
+}
diff --git a/MLEB/Babel/i18n/dtp.json b/MLEB/Babel/i18n/dtp.json
new file mode 100644
index 00000000..2783ae91
--- /dev/null
+++ b/MLEB/Babel/i18n/dtp.json
@@ -0,0 +1,30 @@
+{
+ "@metadata": {
+ "authors": [
+ "FRANCIS5091",
+ "FRANELYA"
+ ]
+ },
+ "babel": "Kointalangan momoguna Babaol",
+ "babel-desc": "Poruhango <code>#babel</code> parsaor gugunoon popomilo tutumanud mimpopori bogian kutak momomoguno babaol miampai komilaan poposuang kouroson pongitanan.",
+ "babel-url": "Project:Babaol",
+ "babel-footer-url": ":Katogori:Babil - Momomoguno maya woyoboros",
+ "babel-autocreate-abort": "Momomoguno di pinilinu minomoguno do katogori mimpopori-monsoi[[$1|Babil]] om awu milo porijistoron.",
+ "babel-autocreate-reason": "Mimpopori momonsoi katogori bolikon [[$1|Babil]].",
+ "babel-autocreate-text-levels": "Momomoguno id katogori tinandaan do kitingkat toilaan $1 montok woyoboros $2.",
+ "babel-autocreate-text-main": "Momomoguno id katogori tinandaan do kitingkat toilaan do woyoboros $1.",
+ "babel-0": "Momomoguno diti [[$1|ingaa]] toilaan kokomoi [[$2|$3]] (toi karati dilo do tokuti no toomod).",
+ "babel-1": "Momomoguno diti [[$1|karati do tokuri]] diti woyoboros [[$2|$3]].",
+ "babel-2": "Momomoguno diti [[$1|karati tomod]] diti woyoboros [[$2|$3]].",
+ "babel-3": "Momomoguno diti [[$1|ogumu toilaan]] diti woyoboros [[$2|$3]].",
+ "babel-4": "Momomoguno diti [[$1|osomok kaagal di monunutur mamasok]] diti woyoboros [[$2|$3]].",
+ "babel-5": "Momomoguno diti [[$1|akawas toilaan]] diti woyoboros [[$2|$3]].",
+ "babel-N": "Momomoguno diti [[$1|mamasok]] om monunutur [[$2|$3]].",
+ "babel-0-n": "Momomoguno diti [[$1|ingaa]] toila-ilaan kokomoi [[$2|Dusun]] (toi osusa do mangarati dilo).",
+ "babel-1-n": "Momomoguno diti [[$1|karati do tokuri]] diti woyoboros [[$2|Dusun]].",
+ "babel-2-n": "Momomoguno diti [[$1|karati tomod]] diti woyoboros [[$2|Dusun]].",
+ "babel-3-n": "Momomoguno diti [[$1|ogumu toilaan]] diti woyoboros [[$2|Dusun]].",
+ "babel-4-n": "Momomoguno diti [[$1|osomok kaagal di monunutur mamasok]] diti woyoboros [[$2|Dusun]].",
+ "babel-5-n": "Momomoguno diti [[$1|akawas toilaan]] diti woyoboros [[$2|Dusun]].",
+ "babel-N-n": "Momomoguno diti [[$1|mamasok]] om monunutur [[$2|Dusun]]."
+}
diff --git a/MLEB/Babel/i18n/egl.json b/MLEB/Babel/i18n/egl.json
new file mode 100644
index 00000000..5c076857
--- /dev/null
+++ b/MLEB/Babel/i18n/egl.json
@@ -0,0 +1,32 @@
+{
+ "@metadata": {
+ "authors": [
+ "Gloria sah",
+ "Lévi",
+ "Reder"
+ ]
+ },
+ "babel": "Babel",
+ "babel-desc": "Al zûnta la 'parser function' <code>#babel</code> per permèter ed fêr in avtomâtic 'na caşèla utèin 'babèl' cun la pusibilitê ed zuntêregh di mudē personêl fât a piaşèir.",
+ "babel-url": "Project:Babel",
+ "babel-footer-url": ":Categoria:Lèngui d'uteint",
+ "babel-autocreate-abort": "Al nòm més dèinter, l'é druvê per fêr in avtomâtich al categoréi [[$1|Babel]] e an pōl mìa èser registrê.",
+ "babel-autocreate-reason": "A fâgh in avtomâtich la pàgina 'd la categoréia [[$1|Babel]].",
+ "babel-autocreate-text-levels": "J utèint ed cla categoréia ché dîşen che pōlen comunichêr in $2 cun un livèl ed cgnusèinsa $1.",
+ "babel-autocreate-text-main": "J utèint in cla categoréia ché dîşen che pōlen comunichêr in $1",
+ "babel-0": "Cl' utèint ché [[$1|an n'é mia bòun ed comunichêr ]] in [[$2|$3]] (o la 'l capés sōl cun grôsi dificultê)",
+ "babel-1": "Cl'utèint ché al pōl dêr 'na mân cun un livèl [[$1|bâs]] in [[$2|$3]].",
+ "babel-2": "Cl' utèint ché al pōl dêr 'na mân cun un livèl [[$1|bòun]] in [[$2|$3]].",
+ "babel-3": "Cl' utèint ché al pōl dêr 'na mân cun un livèl [[$1|dimòndi bòun]] in [[$2|$3]].",
+ "babel-4": "Cl' utèint ché al pōl dêr 'na mân cun un livèl [[$1|ed quêşi léngva mêdra]] in [[$2|$3]].",
+ "babel-5": "Cl' utèint ché al pōl dêr 'na mân cun un livèl [[$1|profesionêl]] in [[$2|$3]].",
+ "babel-N": "Cl' utèint ché al pōl dêr 'na mân cun un livèl [[$1|léngva mêdra]] in [[$2|$3]].",
+ "babel-0-n": "Cl' utèint ché [[$1|an n'é mia bòun ed comunichêr]] in [[$2|Emiliàn]] (o la 'l capés sōl cun grôsi dificultê)",
+ "babel-1-n": "Cl' utèint ché al pōl dêr 'na mân in [[$2|Emiliàn]] cun un livèl [[$1|bâş]].",
+ "babel-2-n": "Cl' utèint ché al pōl dêr 'na mân in [[$2|Emiliàn]] cun un livèl [[$1|bòun]].",
+ "babel-3-n": "Cl' utèint ché al pōl dêr 'na mân in [[$2|Emiliàn]] cun un livèl [[$1|dimòndi bòun]].",
+ "babel-4-n": "Cl' utèint ché al pōl dêr 'na mân in [[$2|Emiliàn]] cun un livèl [[$1|ed quêşi léngva mêdra]].",
+ "babel-5-n": "Cl' utèint ché al pōl dêr 'na mân in [[$2|Emiliàn]] cun un livèl [[$1|profesionêl]].",
+ "babel-N-n": "Cl' utèint ché al pōl dêr 'na mân in [[$2|Emiliàn]] cun un livèl [[$1|léngva mêdra]].",
+ "babel-footer": "Utèint per léngva"
+}
diff --git a/MLEB/Babel/i18n/el.json b/MLEB/Babel/i18n/el.json
new file mode 100644
index 00000000..14b458b4
--- /dev/null
+++ b/MLEB/Babel/i18n/el.json
@@ -0,0 +1,33 @@
+{
+ "@metadata": {
+ "authors": [
+ "AK",
+ "Consta",
+ "Glavkos",
+ "Omnipaedista"
+ ]
+ },
+ "babel": "Πληροφορίες Βαβέλ Χρήστη",
+ "babel-desc": "Προσθέτει την #babel λεξιαναλυτική λειτουργία η οποία επιτρέπει την αυτόματη παραγωγή στήλης βαβέλ με την δυνατότητα περίληψης προκαθορισμένων προτύπων",
+ "babel-url": "Project:Βαβέλ",
+ "babel-footer-url": "Κατηγορία: Βαβέλ - Χρήστες ανά γλώσσα",
+ "babel-autocreate-abort": "Το όνομα χρήστη που έδωσες χρησιμοποιείται για τη κατηγορία αυτοδημιουργίας [[$1|Βαβέλ]] και δεν μπορεί να κατοχυρωθεί.",
+ "babel-autocreate-reason": "Αυτόματη δημιουργία σελίδας κατηγορίας [[$1|Βαβέλ]].",
+ "babel-autocreate-text-levels": "Οι χρήστες στην κατηγορία αυτή δηλώνουν πως ομιλούν την γλώσσα $2 σε επίπεδο $1",
+ "babel-autocreate-text-main": "Οι χρήστες σε αυτή την κατηγορία δηλώνουν ότι γνωρίζουν τη γλώσσα σε επίπεδο $1.",
+ "babel-0": "Αυτός ο χρήστης [[$1|δεν καταλαβαίνει]] τα [[$2|$3]] (ή με μεγάλη δυσκολία).",
+ "babel-1": "Αυτός ο χρήστης μπορεί να συνεισφέρει σε [[$1|βασικού]] επιπέδου [[$2|$3]].",
+ "babel-2": "Αυτός ο χρήστης μπορεί να συνεισφέρει σε [[$1|μετρίου]] επιπέδου [[$2|$3]].",
+ "babel-3": "Αυτός ο χρήστης μπορεί να συνεισφέρει σε [[$1|προχωρημένου]] επιπέδου [[$2|$3]].",
+ "babel-4": "Αυτός ο χρήστης έχει [[$1|σχεδόν ως μητρική]] του γλώσσα τα [[$2|$3]].",
+ "babel-5": "Αυτός ο χρήστης μπορεί να συνεισφέρει σε [[$1|επαγγελματικού]] επιπέδου [[$2|$3]].",
+ "babel-N": "Αυτός ο χρήστης έχει ως [[$1|μητρική]] του γλώσσα τα [[$2|$3]].",
+ "babel-0-n": "Αυτός ο χρήστης [[$1|δεν καταλαβαίνει]] τα [[$2|Ελληνικά]] (ή με μεγάλη δυσκολία).",
+ "babel-1-n": "Αυτός ο χρήστης μπορεί να συνεισφέρει σε [[$1|βασικού]] επιπέδου [[$2|Ελληνικά]].",
+ "babel-2-n": "Αυτός ο χρήστης μπορεί να συνεισφέρει σε [[$1|μετρίου]] επιπέδου [[$2|Ελληνικά]].",
+ "babel-3-n": "Αυτός ο χρήστης μπορεί να συνεισφέρει σε [[$1|προχωρημένου]] επιπέδου [[$2|Ελληνικά]].",
+ "babel-4-n": "Αυτός ο χρήστης έχει [[$1|σχεδόν ως μητρική]] του γλώσσα τα [[$2|Ελληνικά]].",
+ "babel-5-n": "Αυτός ο χρήστης μπορεί να συνεισφέρει σε [[$1|επαγγελματικού]] επιπέδου [[$2|Ελληνικά]].",
+ "babel-N-n": "Αυτός ο χρήστης έχει ως [[$1|μητρική]] του γλώσσα τα [[$2|Ελληνικά]].",
+ "babel-footer": "Χρήστες ανά γλώσσα"
+}
diff --git a/MLEB/Babel/i18n/eml.json b/MLEB/Babel/i18n/eml.json
new file mode 100644
index 00000000..39876d69
--- /dev/null
+++ b/MLEB/Babel/i18n/eml.json
@@ -0,0 +1,32 @@
+{
+ "@metadata": {
+ "authors": [
+ "Gloria sah",
+ "Lévi",
+ "PiRSquared17"
+ ]
+ },
+ "babel": "Babel",
+ "babel-desc": "Al zûnta la funsiòun 'parser' <code>#babel</code> ch' la permèt la créasiòun automàtica ed 'na caśèla d'utàint Bàbel cun la pòsibilitè ed śountèregh dj modé lochèl",
+ "babel-url": "Project:Babel",
+ "babel-footer-url": ":Categoria:Lèngui d'uteint",
+ "babel-autocreate-abort": "Al nòm utèint ch'é stê més dèinter l'é druvê per fêr in avtomâtich al categoréi [[$1|Babel]] e 'l pōl mia èser registrê.",
+ "babel-autocreate-reason": "A fâgh in avtomâtich la pàgina 'd la categoréia [[$1|Babel]].",
+ "babel-autocreate-text-levels": "J utèint in cla categoréia ché a dîsen che pōlen comunichêr a un livèl $1 per la léngua $2.",
+ "babel-autocreate-text-main": "J utèint int cla categorìa chè a dìşen che pōlen comunichêr a livèl $1.",
+ "babel-0": "Cl'utèint ché [[$1|an n'é mìa in grêd ed comunichêr]] in [[$2|$3]] (o i capés sōl cun grôsa dificultê).",
+ "babel-1": "Cl'utèint ché al pōl dêr 'na mân cun un livèl [[$1|bâs]] in [[$2|$3]].",
+ "babel-2": "Cl'utèint ché al pōl dêr 'na mân cun un [[$1|bòun]] livèl in [[$2|$3]].",
+ "babel-3": "Cl'utèint ché al pōl dêr 'na mân cun un livèl [[$1|dimòndi bòun]] in [[$2|$3]].",
+ "babel-4": "Cl'utèint ché al pōl dêr 'na mân cun un livèl [[$1|quêşi cme léngua mêdra]] in [[$2|$3]].",
+ "babel-5": "Cl'utèint ché al pōl dêr 'na mân cun un livèl [[$1|professionêl]] in [[$2|$3]].",
+ "babel-N": "Cl'utèint ché al pōl dêr 'na mân cun un livèl ed [[$1| léngua mêdra]] in [[$2|$3]].",
+ "babel-0-n": "Cl'utèint ché [[$1|an n'é mìa in grêd ed comunichêr]] in [[$2|Emiliàn e rumagnòl]].",
+ "babel-1-n": "Cl'utèint ché al pōl dêr 'na mân cun un livèl [[$1|bâs]] d' [[$2|Emiliàn e rumagnòl]].",
+ "babel-2-n": "Cl'utèint ché al pōl dêr 'na mân cun un livèl [[$1|bòun]] d' [[$2|Emiliàn e rumagnól]].",
+ "babel-3-n": "Cl'utèint ché al pōl dêr 'na mân cun un livèl [[$1|dimòndi bòun]] d' [[$2|Emiliàn e rumagnòl]].",
+ "babel-4-n": "Cl'utèint ché al pōl dêr 'na mân cun un livèl [[$1|quêşi cme léngua mêdra]] in [[$2|Emiliàn e rumagnól]].",
+ "babel-5-n": "Cl'utèint ché al pōl dêr 'na mân cun un livèl [[$1|professionêl]] in [[$2|Emiliàn e rumagnól]].",
+ "babel-N-n": "Cl'utèint ché al pōl dêr 'na mân cun un livèl ed [[$1| léngua mêdra]] in [[$2|Emiliàn e rumagnól]].",
+ "babel-footer": "Lèngui d'uteint"
+}
diff --git a/MLEB/Babel/i18n/en-gb.json b/MLEB/Babel/i18n/en-gb.json
new file mode 100644
index 00000000..c669083a
--- /dev/null
+++ b/MLEB/Babel/i18n/en-gb.json
@@ -0,0 +1,10 @@
+{
+ "@metadata": {
+ "authors": [
+ "Jdforrester",
+ "Pooja.srivastava"
+ ]
+ },
+ "babel-autocreate-abort": "The username you specified is used for [[$1|Babel]] category auto-creation and cannot be registered.",
+ "babel-autocreate-reason": "Automatically creating [[$1|Babel]] category page."
+}
diff --git a/MLEB/Babel/i18n/en.json b/MLEB/Babel/i18n/en.json
new file mode 100644
index 00000000..7e5a7957
--- /dev/null
+++ b/MLEB/Babel/i18n/en.json
@@ -0,0 +1,38 @@
+{
+ "@metadata": {
+ "authors": [
+ "Siebrand",
+ "Purodha"
+ ]
+ },
+ "babel": "Babel user information",
+ "babel-desc": "Adds the <code>#babel</code> parser function to allow automated generation of a babel userbox column with the ability to include custom templates",
+ "babel-url": "Project:Babel",
+ "babel-footer-url": ":Category:Babel - Users by language",
+ "babel-autocreate-abort": "The username you specified is used for [[$1|Babel]] category auto-creation and cannot be registered.",
+ "babel-autocreate-reason": "Automatically creating [[$1|Babel]] category page.",
+ "babel-autocreate-text-levels": "Users in this category indicate they have skill level $1 for language $2.",
+ "babel-autocreate-text-main": "Users in this category indicate they have knowledge of language $1.",
+ "babel-autocreate-user": "Babel AutoCreate",
+ "babel-0": "This user has [[$1|no]] knowledge of [[$2|$3]] (or understands it with considerable difficulty).",
+ "babel-1": "This user has [[$1|basic]] knowledge of [[$2|$3]].",
+ "babel-2": "This user has [[$1|intermediate]] knowledge of [[$2|$3]].",
+ "babel-3": "This user has [[$1|advanced]] knowledge of [[$2|$3]].",
+ "babel-4": "This user has [[$1|near native speaker]] knowledge of [[$2|$3]].",
+ "babel-5": "This user has [[$1|professional]] knowledge of [[$2|$3]].",
+ "babel-N": "This user has a [[$1|native]] understanding of [[$2|$3]].",
+ "babel-0-n": "This user has [[$1|no]] knowledge of [[$2|English]] (or understands it with considerable difficulty).",
+ "babel-1-n": "This user has [[$1|basic]] knowledge of [[$2|English]].",
+ "babel-2-n": "This user has [[$1|intermediate]] knowledge of [[$2|English]].",
+ "babel-3-n": "This user has [[$1|advanced]] knowledge of [[$2|English]].",
+ "babel-4-n": "This user has [[$1|near native speaker]] knowledge of [[$2|English]].",
+ "babel-5-n": "This user has [[$1|professional]] knowledge of [[$2|English]].",
+ "babel-N-n": "This user has a [[$1|native]] understanding of [[$2|English]].",
+ "babel-box-cellspacing": "0",
+ "babel-box-cellpadding": "0",
+ "babel-cellspacing": "0",
+ "babel-cellpadding": "0",
+ "babel-portal": "",
+ "babel-template": "Template:User $1",
+ "babel-footer": "Users by language"
+} \ No newline at end of file
diff --git a/MLEB/Babel/i18n/eo.json b/MLEB/Babel/i18n/eo.json
new file mode 100644
index 00000000..9fd34c7e
--- /dev/null
+++ b/MLEB/Babel/i18n/eo.json
@@ -0,0 +1,33 @@
+{
+ "@metadata": {
+ "authors": [
+ "KuboF",
+ "Malafaya",
+ "Michawiki",
+ "Yekrats"
+ ]
+ },
+ "babel": "Babela informo pri uzanto",
+ "babel-desc": "Aldonas la <code>#babel</code> sintaksanalizilan funkcion por aŭtomate generi kolumnon de babel-uzantoskatolo kun la ebleco inkluzivi sxablonojn de uzanto.",
+ "babel-url": "Project:Babel",
+ "babel-footer-url": ":Category:Babelo - Uzantoj laŭ lingvoj",
+ "babel-autocreate-abort": "La salutnomo, kiun vi specifis, estas uzata por [[$1|Babel]]-kategoria aŭtomata kreado, kaj ne povas esti registrita.",
+ "babel-autocreate-reason": "Aŭtomate kreante kategorio-paĝo por [[$1|Babel]].",
+ "babel-autocreate-text-levels": "Uzantoj en ĉi tiu kategorio indikas ke ili havas spertnivelo $1 por $2.",
+ "babel-autocreate-text-main": "Uzantoj en ĉi tiu kategorio indikas ke ili havas lingvoscio de $1.",
+ "babel-0": "Ĉi tiu uzanto [[$1|ne komprenas]] la lingvon [[$2|$3]], aŭ tre malfacile komprenas.",
+ "babel-1": "Ĉi tiu uzanto povas komuniki per [[$1|baza]] nivelo de [[$2|$3]].",
+ "babel-2": "Tiu ĉi uzanto havas [[$1|meznivelan]] scion de [[$2|$3]].",
+ "babel-3": "Ĉi tiu uzanto povas komuniki per [[$1|alta aŭ flua]] nivelo de [[$2|$3]].",
+ "babel-4": "Ĉi tiu uzanto parolas kun [[$1|preskaŭ denaska]] scio de [[$2|$3]].",
+ "babel-5": "Ĉi tiu uzanto estas [[$1|profesia]] parolanto de [[$2|$3]].",
+ "babel-N": "Ĉi tiu uzanto estas [[$1|denaska parolanto]] de [[$2|$3]].",
+ "babel-0-n": "Ĉi tiu uzanto [[$1|ne komprenas]] [[$2|Esperanton]], aŭ tre malfacile komprenas.",
+ "babel-1-n": "Ĉi tiu uzanto povas komuniki per [[$1|baza]] nivelo de [[$2|Esperanto]].",
+ "babel-2-n": "Ĉi tiu uzanto havas [[$1|meznivelan]] scion de [[$2|Esperanto]].",
+ "babel-3-n": "Ĉi tiu uzanto povas komuniki per [[$1|alta aŭ flua]] nivelo de [[$2|Esperanto]].",
+ "babel-4-n": "Ĉi tiu uzanto parolas kun [[$1|preskaŭ denaska]] scio de [[$2|Esperanto]].",
+ "babel-5-n": "Ĉi tiu uzanto estas [[$1|profesia]] parolanto de [[$2|Esperanto]].",
+ "babel-N-n": "Ĉi tiu uzanto estas [[$1|denaska parolanto]] de [[$2|Esperanto]].",
+ "babel-footer": "Uzantoj laŭ lingvoj"
+}
diff --git a/MLEB/Babel/i18n/es.json b/MLEB/Babel/i18n/es.json
new file mode 100644
index 00000000..25663ad7
--- /dev/null
+++ b/MLEB/Babel/i18n/es.json
@@ -0,0 +1,36 @@
+{
+ "@metadata": {
+ "authors": [
+ "Bengoa",
+ "Crazymadlover",
+ "Fitoschido",
+ "Fluence",
+ "GerardM",
+ "Sanbec",
+ "Vivaelcelta"
+ ]
+ },
+ "babel": "Información de idiomas de usuario",
+ "babel-desc": "Añade la función del analizador <code>#babel</code> para permitir la generación automática de una caja de usuario (userbox) «babel» con la posibilidad de incluir plantillas personalizadas",
+ "babel-url": "Project:Babel",
+ "babel-footer-url": ":Category:Babel - Usuarios por idioma",
+ "babel-autocreate-abort": "El nombre de usuario especificado es usado para la creación automática de categorías [[$1|Babel]] y no puede registrarse.",
+ "babel-autocreate-reason": "Creando automáticamente la página de categoría [[$1|Babel]].",
+ "babel-autocreate-text-levels": "Los usuarios de esta categoría indican que tienen un nivel de dominio $1 del idioma $2.",
+ "babel-autocreate-text-main": "Los usuarios en esta categoría indican que tienen conocimiento del idioma $1.",
+ "babel-0": "{{GENDER:$4|Este usuario|Esta usuaria}} [[$1|no]] tiene ningún conocimiento del [[$2|$3]] (o lo entiende con mucha dificultad).",
+ "babel-1": "{{GENDER:$4|Este usuario|Esta usuaria}} tiene un conocimiento [[$1|básico]] del [[$2|$3]].",
+ "babel-2": "{{GENDER:$4|Este usuario|Esta usuaria}} tiene un conocimiento [[$1|intermedio]] del [[$2|$3]].",
+ "babel-3": "{{GENDER:$4|Este usuario|Esta usuaria}} tiene un conocimiento [[$1|avanzado]] del [[$2|$3]].",
+ "babel-4": "{{GENDER:$4|Este usuario|Esta usuaria}} tiene un conocimiento [[$1|casi nativo]] del [[$2|$3]].",
+ "babel-5": "{{GENDER:$4|Este usuario|Esta usuaria}} tiene un conocimiento [[$1|profesional]] del [[$2|$3]]",
+ "babel-N": "{{GENDER:$4|Este usuario|Esta usuaria}} tiene una comprensión [[$1|nativa]] del [[$2|$3]].",
+ "babel-0-n": "{{GENDER:$4|Este usuario|Esta usuaria}} [[$1|no]] tiene ningún conocimiento del [[$2|español]] (o lo entiende con mucha dificultad).",
+ "babel-1-n": "{{GENDER:$4|Este usuario|Esta usuaria}} tiene un conocimiento [[$1|básico]] del [[$2|español]].",
+ "babel-2-n": "{{GENDER:$4|Este usuario|Esta usuaria}} tiene un conocimiento [[$1|intermedio]] del [[$2|español]].",
+ "babel-3-n": "{{GENDER:$4|Este usuario|Esta usuaria}} tiene un conocimiento [[$1|avanzado]] del [[$2|español]].",
+ "babel-4-n": "{{GENDER:$4|Este usuario|Esta usuaria}} tiene un conocimiento [[$1|casi nativo]] del [[$2|español]].",
+ "babel-5-n": "{{GENDER:$4|Este usuario|Esta usuaria}} tiene un conocimiento [[$1|profesional]] del [[$2|español]].",
+ "babel-N-n": "{{GENDER:$4|Este usuario|Esta usuaria}} tiene una comprensión [[$1|nativa]] del [[$2|español]].",
+ "babel-footer": "Usuarios por idioma"
+}
diff --git a/MLEB/Babel/i18n/et.json b/MLEB/Babel/i18n/et.json
new file mode 100644
index 00000000..0ef098bf
--- /dev/null
+++ b/MLEB/Babel/i18n/et.json
@@ -0,0 +1,31 @@
+{
+ "@metadata": {
+ "authors": [
+ "Ker",
+ "Pikne"
+ ]
+ },
+ "babel": "Kasutaja keelteoskus",
+ "babel-desc": "Lisab parsimisfunktsiooni <code>#babel</code>, mis võimaldab kasutaja keelteoskuse infokasti lisamist.",
+ "babel-url": "Project:Babel",
+ "babel-footer-url": ":Category:Babel – Kasutajad keelteoskuse järgi",
+ "babel-autocreate-abort": "Kasutajanime, mille sisestasid, kasutatakse [[$1|Babeli]] kategooriate automaatseks genereerimiseks, mistõttu seda ei ole võimalik registreerida.",
+ "babel-autocreate-reason": "[[$1|Babeli]] kategoorialehe automaatne genereerimine.",
+ "babel-autocreate-text-levels": "Kasutajad selles kategoorias on märkinud, et valdavad $2 keelt tasemel $1.",
+ "babel-autocreate-text-main": "Kasutajad selles kategoorias on märkinud, et valdavad $1 keelt.",
+ "babel-0": "[[$2|$3]] — [[$1|oskus väga nõrk või puudub]]",
+ "babel-1": "[[$2|$3]] — [[$1|algtase]]",
+ "babel-2": "[[$2|$3]] — [[$1|keskmine tase]]",
+ "babel-3": "[[$2|$3]] — [[$1|hea tase]]",
+ "babel-4": "[[$2|$3]] — [[$1|emakeele lähedane tase]]",
+ "babel-5": "[[$2|$3]] — [[$1|professionaalne tase]]",
+ "babel-N": "[[$2|$3]] — [[$1|emakeel]]",
+ "babel-0-n": "See kasutaja [[$1|ei valda]] [[$2|eesti keelt]].",
+ "babel-1-n": "See kasutaja valdab [[$2|eesti keelt]] [[$1|algtasemel]].",
+ "babel-2-n": "See kasutaja valdab [[$2|eesti keelt]] [[$1|keskmisel tasemel]].",
+ "babel-3-n": "See kasutaja valdab [[$2|eesti keelt]] [[$1|heal tasemel]].",
+ "babel-4-n": "See kasutaja valdab [[$2|eesti keelt]] [[$1|peaaegu nagu emakeelt]].",
+ "babel-5-n": "See kasutaja valdab [[$2|eesti keelt]] [[$1|professionaalsel tasemel]].",
+ "babel-N-n": "See kasutaja valdab [[$2|eesti keelt]] [[$1|emakeelena]].",
+ "babel-footer": "Kasutajad keelteoskuse järgi"
+}
diff --git a/MLEB/Babel/i18n/eu.json b/MLEB/Babel/i18n/eu.json
new file mode 100644
index 00000000..8c22f8de
--- /dev/null
+++ b/MLEB/Babel/i18n/eu.json
@@ -0,0 +1,33 @@
+{
+ "@metadata": {
+ "authors": [
+ "An13sa",
+ "Kobazulo",
+ "Theklan"
+ ]
+ },
+ "babel": "Lankideen babel informazioa",
+ "babel-desc": "<code>#babel</code> sintaxi-analizatzaile (parser) funtzioa gehitzen du automatikoki sorturiko babel lankide-kutxen zutabea baimeduz eta lankide txantiloiak sartzea baimenduz",
+ "babel-url": "Project:Babel",
+ "babel-footer-url": ":Category:Babel - Erabiltzaileak hizkuntzaren arabear",
+ "babel-autocreate-abort": "Sartu duzun lankide izena [[$1|Babel]] kategorien auto-sorkuntzarako erabiltzen da eta ezin da erregistratu.",
+ "babel-autocreate-reason": "Automatikoki sorturiko [[$1|Babel]] kategoria orrialdea.",
+ "babel-autocreate-text-levels": "Kategoria honetako lankideek $1 maila dutela $2 hizkuntzan adierazten du.",
+ "babel-autocreate-text-main": "Kategoria honetan dauden lankideek $1 hizkuntzaren jakintza dute.",
+ "babel-autocreate-user": "Babel AutoSorrera",
+ "babel-0": "Lankide honek [[$1|ez daki]] [[$2|$3]]z (edo oso zaila da berarentzat ulertzea).",
+ "babel-1": "Lankide honek [[$2|$3]]zko [[$1|oinarrizko ezagutza]] du.",
+ "babel-2": "Lankide honek [[$2|$3]]zko [[$1|ezagutza ertaina]] du.",
+ "babel-3": "Lankide honek [[$2|$3]]zko [[$1|ezagutza aurreratua]] du.",
+ "babel-4": "Lankide honek [[$2|$3]]z [[$1|euskaldun zahar baten antzeko]] maila du.",
+ "babel-5": "Lankide honek [[$2|$3]]zko [[$1|ezagutza profesionala]] du.",
+ "babel-N": "Lankide honek [[$2|$3]] du [[$1|ama hizkuntza]].",
+ "babel-0-n": "Erabiltzaile honek [[$2|euskara]]rik [[$1|ez du ulertzen]] (edo nekez ulertzen du).",
+ "babel-1-n": "Erabiltzaile honek [[$1|oinarrizko mailan]] lagun dezake [[$2|euskara]]z.",
+ "babel-2-n": "Erabiltzaile honek [[$1|maila ertainean]] lagun dezake [[$2|euskara]]z.",
+ "babel-3-n": "Erabiltzaile honek [[$2|euskara]]z [[$1|maila aurreratuan]] lagun dezake.",
+ "babel-4-n": "Erabiltzaile honek [[$1|euskaldun zahar baten antzeko mailan]] lagun dezake [[$2|euskara]]z.",
+ "babel-5-n": "Erabiltzaile honek [[$2|euskara]] [[$1|aditu]] mailan erabiltzen du.",
+ "babel-N-n": "Erabiltzaile hau [[$1|euskaldun zaharra]] da ([[$2|euskara]] du ama hizkuntza).",
+ "babel-footer": "Lankideak hizkuntzaren arabera"
+}
diff --git a/MLEB/Babel/i18n/fa.json b/MLEB/Babel/i18n/fa.json
new file mode 100644
index 00000000..d5391abf
--- /dev/null
+++ b/MLEB/Babel/i18n/fa.json
@@ -0,0 +1,37 @@
+{
+ "@metadata": {
+ "authors": [
+ "BMRG14",
+ "Ebraminio",
+ "Huji",
+ "Ladsgroup",
+ "Mjbmr",
+ "Reza1615",
+ "ZxxZxxZ"
+ ]
+ },
+ "babel": "اطلاعات کاربری بابل",
+ "babel-desc": "دستور تجزیه‌گر <code>#babel</code> را اضافه می‌کند که امکان ایجاد خودکار جعبه‌های کاربری بابل را با قابلیت گنجاندن الگوهای دلخواه فراهم می‌کند",
+ "babel-url": "Project:بابل",
+ "babel-footer-url": ":Category:بابل - کاربران بر اساس زبان",
+ "babel-autocreate-abort": "نام کاربری که مشخص کرده‌اید برای ایجاد خودکار ردهٔ [[$1|بابل]] استفاده شده‌است و نمی‌تواند ثبت شود.",
+ "babel-autocreate-reason": "ایجاد خودکار صفحهٔ ردهٔ [[$1|بابل]].",
+ "babel-autocreate-text-levels": "کاربران این رده در زبان $2 توانایی $1 دارند",
+ "babel-autocreate-text-main": "کاربران این رده دانش زبان $1 را دارند.",
+ "babel-0": "این کاربر [[$2|$3]] را [[$1|نمی‌فهمد]] (یا به‌سختی می‌فهمد).",
+ "babel-1": "این کاربر [[$2|$3]] را در حد [[$1|مقدماتی]] می‌فهمد.",
+ "babel-2": "این کاربر [[$2|$3]] را در حد [[$1|متوسط]] می‌فهمد.",
+ "babel-3": "این کاربر [[$2|$3]] را در حد [[$1|پیشرفته]] می‌فهمد.",
+ "babel-4": "این کاربر [[$2|$3]] را در حد [[$1|نزدیک به زبان مادری]] می‌فهمد.",
+ "babel-5": "این کاربر [[$2|$3]] را در حد [[$1|حرفه‌ای]] می‌فهمد.",
+ "babel-N": "این کاربر [[$2|$3]] را در حد [[$1|زبان مادری]] می‌فهمد.",
+ "babel-0-n": "این کاربر [[$2|فارسی]] را [[$1|نمی‌فهمد]] (یا به‌سختی می‌فهمد).",
+ "babel-1-n": "این کاربر [[$2|فارسی]] را در حد [[$1|مقدماتی]] می‌فهمد.",
+ "babel-2-n": "این کاربر [[$2|فارسی]] را در حد [[$1|متوسط]] می‌فهمد.",
+ "babel-3-n": "این کاربر [[$2|فارسی]] را در حد [[$1|پیشرفته]] می‌فهمد.",
+ "babel-4-n": "این کاربر [[$2|فارسی]] را در حد [[$1|نزدیک به زبان مادری]] می‌فهمد.",
+ "babel-5-n": "این کاربر [[$2|فارسی]] را در حد [[$1|حرفه‌ای]] می‌فهمد.",
+ "babel-N-n": "این کاربر [[$2|فارسی]] را در حد [[$1|زبان مادری]] می‌فهمد.",
+ "babel-template": "Template:User $1",
+ "babel-footer": "کاربران بر پایهٔ زبان"
+}
diff --git a/MLEB/Babel/i18n/fi.json b/MLEB/Babel/i18n/fi.json
new file mode 100644
index 00000000..5873ccdf
--- /dev/null
+++ b/MLEB/Babel/i18n/fi.json
@@ -0,0 +1,36 @@
+{
+ "@metadata": {
+ "authors": [
+ "Crt",
+ "Ilaiho",
+ "Jaakonam",
+ "Linnea",
+ "Nedergard",
+ "Nike",
+ "Pxos"
+ ]
+ },
+ "babel": "Käyttäjän kielitaito",
+ "babel-desc": "Lisää <code>#babel</code>-funktion, jotta käyttäjän kielitaidosta kertova babel-käyttäjälaatikkosarake voidaan luoda automaattisesti ja sisällyttää räätälöityihin mallineisiin.",
+ "babel-url": "Project:Kielitaito",
+ "babel-footer-url": ":Category:Babel - Käyttäjät kielittäin",
+ "babel-autocreate-abort": "Antamasi käyttäjätunnus on varattu [[$1|kielitaitoluokkien]] automaattiseen luomiseen, joten et voi rekisteröidä sitä.",
+ "babel-autocreate-reason": "[[$1|Kielitaidon]] luokkasivun automaattinen luonti.",
+ "babel-autocreate-text-levels": "Käyttäjät tässä luokassa ovat ilmoittaneet osaavansa kieltä $2 tasolla $1.",
+ "babel-autocreate-text-main": "Käyttäjät tässä luokassa ovat ilmoittaneet ymmärtävänsä kieltä $1.",
+ "babel-0": "Tämä käyttäjä osaa [[$1|hyvin vähän tai ei lainkaan]] kieltä [[$2|$3]].",
+ "babel-1": "Tällä käyttäjällä on kielen [[$2|$3]] [[$1|perustaidot]]",
+ "babel-2": "Tämä käyttäjä osaa kieltä [[$2|$3]] [[$1|kohtalaisesti]].",
+ "babel-3": "Tämä käyttäjä osaa kieltä [[$2|$3]] [[$1|erinomaisesti]].",
+ "babel-4": "Tämä käyttäjä osaa kieltä [[$2|$3]] [[$1|lähes äidinkielen tavoin]].",
+ "babel-5": "Tämä käyttäjä osaa käyttää kieltä [[$2|$3]] [[$1|ammattimaisesti]].",
+ "babel-N": "Tämä käyttäjä puhuu kieltä [[$2|$3]] [[$1|äidinkielenään]].",
+ "babel-0-n": "Tämä käyttäjä osaa [[$1|hyvin vähän tai ei lainkaan]] [[$2|suomea]].",
+ "babel-1-n": "Tämä käyttäjä puhuu [[$2|suomea]] [[$1|vähän]].",
+ "babel-2-n": "Tämä käyttäjä osaa [[$2|suomea]] [[$1|kohtalaisesti]].",
+ "babel-3-n": "Tämä käyttäjä osaa [[$2|suomea]] [[$1|erinomaisesti]].",
+ "babel-4-n": "Tämä käyttäjä osaa [[$2|suomea]] [[$1|melkein äidinkielen tavoin]].",
+ "babel-5-n": "Tämä käyttäjä käyttää [[$2|suomea]] [[$1|ammattimaisesti]].",
+ "babel-N-n": "Tämä käyttäjä puhuu [[$2|suomea]] [[$1|äidinkielenään]].",
+ "babel-footer": "Käyttäjät kielittäin"
+}
diff --git a/MLEB/Babel/i18n/fit.json b/MLEB/Babel/i18n/fit.json
new file mode 100644
index 00000000..107ab4b2
--- /dev/null
+++ b/MLEB/Babel/i18n/fit.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Mestos"
+ ]
+ },
+ "babel-footer": "Käyttäjät kielitten mukhaan"
+}
diff --git a/MLEB/Babel/i18n/fo.json b/MLEB/Babel/i18n/fo.json
new file mode 100644
index 00000000..fdc3ed8c
--- /dev/null
+++ b/MLEB/Babel/i18n/fo.json
@@ -0,0 +1,32 @@
+{
+ "@metadata": {
+ "authors": [
+ "Diupwijk",
+ "EileenSanda",
+ "Quackor"
+ ]
+ },
+ "babel": "Babel brúkara upplýsing",
+ "babel-desc": "Leggur afturat <code>#babel</code> parsarafunksjón fyri at loyva sjálvvirkandi upprættan av babel brúkarakassa við møguleika fyri at taka við tilevnaðar fyrimyndir (skapilónir)",
+ "babel-url": "Project:Babel",
+ "babel-footer-url": ":Category:Babel - Brúkari eftir máli",
+ "babel-autocreate-abort": "Brúkaranavnið, sum tú valdi, verður brúkt til [[$1|Babel]] bólkin til sjálv-upprættan og kann ikki skrásetast.",
+ "babel-autocreate-reason": "Sjálvvirkandi skapan av [[$1|Babel]] bólka síða.",
+ "babel-autocreate-text-levels": "Brúkarir í hesum bólki vísa at tey hava vitan á stigi $1 fyri máli $2.",
+ "babel-autocreate-text-main": "Brúkarir í hesum bólki vísa at teir hava vitan um mál $1.",
+ "babel-0": "Hesin brúkarin skilur [[$1|ikki]] [[$2|$3]] (ella skilir tað ikki gott).",
+ "babel-1": "Hesin brúkarin hevur [[$1|grundleggjandi]] kunnleika til [[$2|$3]].",
+ "babel-2": "Hesin brúkarin hevur [[$1|miðal]] kunnleika til [[$2|$3]].",
+ "babel-3": "Hesin brúkarin hevur kunnleika á [[$1|hástigi]] um [[$2|$3]].",
+ "babel-4": "Hesin brúkari hevur [[$1|nærum móðurmáls]] kunnleika til [[$2|$3]].",
+ "babel-5": "Hesin brúkari hevur [[$1|professionellan]] kunnleika til [[$2|$3]].",
+ "babel-N": "Hesin brúkarin hevur [[$2|$3]] sum [[$1|móðurmál]].",
+ "babel-0-n": "Hesin brúkarin hevur [[$1|onga]] vitan um [[$2|føroyskt]] (ella skilur tað eitt sindur við stórum trupulleikum).",
+ "babel-1-n": "Hesin brúkarin hevur [[$1|grundleggjandi]] vitan um [[$2|føroyskt]].",
+ "babel-2-n": "Hesin brúkari hevur [[$1|miðal góðan]] kunnleika til [[$2|føroyskt]].",
+ "babel-3-n": "\nHesin brúkarin hevur kunnleika á [[$1|hástigi]] til [[$2|føroyskt]].",
+ "babel-4-n": "Hesin brúkari hevur [[$1|nærum móðurmáls]] kunnleika til [[$2|føroyskt]].",
+ "babel-5-n": "Hesin brúkari hevur [[$1|professionellan]] kunnleika til [[$2|føroyskt]].",
+ "babel-N-n": "Hesin brúkarin hevur [[$2|føroyskt]] sum [[$1|móðurmál]].",
+ "babel-footer": "Brúkari eftir máli"
+}
diff --git a/MLEB/Babel/i18n/fr.json b/MLEB/Babel/i18n/fr.json
new file mode 100644
index 00000000..4cb072ae
--- /dev/null
+++ b/MLEB/Babel/i18n/fr.json
@@ -0,0 +1,40 @@
+{
+ "@metadata": {
+ "authors": [
+ "Cedric31",
+ "ChrisPtDe",
+ "Crochet.david",
+ "Grondin",
+ "IAlex",
+ "Jens Liebenau",
+ "Louperivois",
+ "UV",
+ "Urhixidur",
+ "Verdy p"
+ ]
+ },
+ "babel": "Informations Babel sur l’utilisateur",
+ "babel-desc": "Ajoute une fonction d’analyseur syntaxique <code>#babel</code> permettant la création automatique d’une boîte utilisateur Babel avec la possibilité d’y inclure des modèles locaux",
+ "babel-url": "Project:Babel",
+ "babel-footer-url": ":Catégorie:Babel - Utilisateurs par langue",
+ "babel-autocreate-abort": "Le nom d’utilisateur que vous avez entré est utilisé pour créer automatiquement les catégories [[$1|Babel]] et ne peut pas être enregistré.",
+ "babel-autocreate-reason": "Création automatique de la catégorie [[$1|Babel]].",
+ "babel-autocreate-text-levels": "Les utilisateurs dans cette catégorie ont indiqué qu’ils ont le niveau $1 pour la langue $2.",
+ "babel-autocreate-text-main": "Les utilisateurs dans cette catégorie ont indiqué qu’ils ont une connaissance en $1.",
+ "babel-0": "Cet utilisateur n’a [[$1|aucune]] connaissance en [[$2|$3]] (ou le comprend avec de grandes difficultés).",
+ "babel-1": "Cet utilisateur peut contribuer avec un niveau [[$1|élémentaire]] en [[$2|$3]].",
+ "babel-2": "Cet utilisateur a une connaissance [[$1|moyenne]] en [[$2|$3]].",
+ "babel-3": "Cet utilisation dispose d’une connaissance [[$1|avancée]] en [[$2|$3]].",
+ "babel-4": "Cet utilisateur a une connaissance proche de la [[$1|langue maternelle]] en [[$2|$3]].",
+ "babel-5": "Ce contributeur a une connaissance [[$1|professionnelle]] en [[$2|$3]].",
+ "babel-N": "Cet utilisateur dispose d’une compréhension comme [[$1|langue maternelle]] en [[$2|$3]].",
+ "babel-0-n": "Cet utilisateur n’a [[$1|aucune]] connaissance en [[$2|français]] (ou le comprend avec de grandes difficultés).",
+ "babel-1-n": "Cet utilisateur dispose de connaissances [[$1|de base]] en [[$2|français]].",
+ "babel-2-n": "Cet utilisateur dispose d’un [[$1|niveau intermédiaire]] de connaissance en [[$2|français]].",
+ "babel-3-n": "Cet utilisateur dispose de connaissances [[$1|avancées]] en [[$2|français]].",
+ "babel-4-n": "Cet utilisateur dispose de connaissances proches de la [[$1|langue maternelle]] en [[$2|français]].",
+ "babel-5-n": "Cet utilisateur dispose d’un niveau de connaissances [[$1|professionnel]] du [[$2|français]].",
+ "babel-N-n": "Cet utilisateur a pour [[$1|langue maternelle]] le [[$2|français]].",
+ "babel-template": "Modèle:User $1",
+ "babel-footer": "Utilisateurs par langue"
+}
diff --git a/MLEB/Babel/i18n/frp.json b/MLEB/Babel/i18n/frp.json
new file mode 100644
index 00000000..f38e8268
--- /dev/null
+++ b/MLEB/Babel/i18n/frp.json
@@ -0,0 +1,30 @@
+{
+ "@metadata": {
+ "authors": [
+ "ChrisPtDe"
+ ]
+ },
+ "babel": "Enformacions Babél sur l’usanciér",
+ "babel-desc": "Apond la fonccion du parsor <code>#babel</code> que pèrmèt la crèacion ôtomatica d’una bouèta usanciér Babél avouéc la possibilitât d’y encllure des modèlos locals.",
+ "babel-url": "Project:Babél",
+ "babel-footer-url": ":Category:Babél - Usanciérs per lengoua",
+ "babel-autocreate-abort": "Lo nom d’usanciér que vos éd buchiê est utilisâ por fâre ôtomaticament les catègories [[$1|Babél]] et pôt pas étre encartâ.",
+ "babel-autocreate-reason": "Crèacion ôtomatica de la catègorie [[$1|Babél]].",
+ "babel-autocreate-text-levels": "Los usanciérs dens ceta catègorie ont endicâ qu’ont lo nivél $1 por la lengoua $2.",
+ "babel-autocreate-text-main": "Los usanciérs dens ceta catègorie ont endicâ qu’ont des cognessences en $1.",
+ "babel-0": "Cet’utilisat{{GENDER:$4|or|rice|or}} at [[$1|gins]] de cognessence en [[$2|$3]] (ou ben lo comprend avouéc de grôsses dificultâts).",
+ "babel-1": "Cet’utilisat{{GENDER:$4|or|rice|or}} at des cognessences [[$1|totes simples]] en [[$2|$3]].",
+ "babel-2": "Cet’utilisat{{GENDER:$4|or|rice|or}} at des cognessences [[$1|moyenes]] en [[$2|$3]].",
+ "babel-3": "Cet’utilisat{{GENDER:$4|or|rice|or}} at des cognessences [[$1|avanciêes]] en [[$2|$3]].",
+ "babel-4": "Cet’utilisat{{GENDER:$4|or|rice|or}} at des cognessences prôches de la [[$1|lengoua matèrnâla]] en [[$2|$3]].",
+ "babel-5": "Cet’utilisat{{GENDER:$4|or|rice|or}} at des cognessences [[$1|profèssionèles]] en [[$2|$3]].",
+ "babel-N": "Cet’utilisat{{GENDER:$4|or|rice|or}} at por [[$1|lengoua matèrnâla]] lo [[$2|$3]].",
+ "babel-0-n": "Cet’utilisat{{GENDER:$4|or|rice|or}} at [[$1|gins]] de cognessence en [[$2|arpetan]] (ou ben lo comprend avouéc de grôsses dificultâts).",
+ "babel-1-n": "Cet’utilisat{{GENDER:$4|or|rice|or}} at des cognessences [[$1|totes simples]] en [[$2|arpetan]].",
+ "babel-2-n": "Cet’utilisat{{GENDER:$4|or|rice|or}} at des cognessences [[$1|moyenes]] en [[$2|arpetan]].",
+ "babel-3-n": "Cet’utilisat{{GENDER:$4|or|rice|or}} at des cognessences [[$1|avanciêes]] en [[$2|arpetan]].",
+ "babel-4-n": "Cet’utilisat{{GENDER:$4|or|rice|or}} at des cognessences prôches de la [[$1|lengoua matèrnâla]] en [[$2|arpetan]].",
+ "babel-5-n": "Cet’utilisat{{GENDER:$4|or|rice|or}} at des cognessences [[$1|profèssionèles]] en [[$2|arpetan]].",
+ "babel-N-n": "Cet’utilisat{{GENDER:$4|or|rice|or}} at por [[$1|lengoua matèrnâla]] l’[[$2|arpetan]].",
+ "babel-footer": "Usanciérs per lengoua"
+}
diff --git a/MLEB/Babel/i18n/frr.json b/MLEB/Babel/i18n/frr.json
new file mode 100644
index 00000000..627f882b
--- /dev/null
+++ b/MLEB/Babel/i18n/frr.json
@@ -0,0 +1,32 @@
+{
+ "@metadata": {
+ "authors": [
+ "Murma174",
+ "Purodha",
+ "Pyt"
+ ]
+ },
+ "babel": "Babel brüker-informatjuun",
+ "babel-desc": "Saat det <code>#babel</code>-funktjuun diartu. Diarmä kön \"Babel\"-brükerfialen maaget, an uk aanj föörlaagen iinbünjen wurd.",
+ "babel-url": "Project:Babel",
+ "babel-footer-url": ":Category:Babel - Brükern efter spriak",
+ "babel-autocreate-abort": "Didiar nööm woort för [[$1|Babel]]-kategoriin brükt an koon ei üs brükernööm nimen wurd.",
+ "babel-autocreate-reason": "Automaatisch mååged [[$1|Babel]]-kategorii.",
+ "babel-autocreate-text-levels": "Brükern uun detdiar kategorii haa weden üüb di peegel $1 faan det spriak $2.",
+ "babel-autocreate-text-main": "Brükern uun detdiar kategorii haa weden faan det spriak $1.",
+ "babel-0": "Dideere brüker reet [[$1|ai]] ouer [[$2|$3]] (unti ferstoont dåt mån ma duuchti swiirihäide).",
+ "babel-1": "Dideere brüker koon [[$1|lait]] [[$2|$3]] snååke en leese.",
+ "babel-2": "Dideere brüker heet [[$1|ordi]] waasen foon [[$2|$3]].",
+ "babel-3": "Dideere brüker reet ham ma [[$2|$3]] aw [[$1|huuge]] schuchte.",
+ "babel-4": "Dideere brüker reet ham ma [[$2|$3]] aw [[$1|mamenspräklike]] schuchte.",
+ "babel-5": "Dideere brüker reet ham ma [[$2|$3]] aw [[$1|profäsjonäle]] schuchte.",
+ "babel-N": "Dideere brüker snååket [[$2|$3]] as [[$1|mamenspräke]].",
+ "babel-0-n": "Dideere brüker reet ham [[$1|ai]] ma [[$2|Nordfriisk]] (unti ferstoont dåt mån ma duuchti swiirihäide).",
+ "babel-1-n": "Dideere brüker koon [[$1|lait]] [[$2|Nordfriisk]] snååke en leese.",
+ "babel-2-n": "Dideere brüker heet [[$1|ordi]] waasen foon [[$2|Nordfriisk]].",
+ "babel-3-n": "Dideere brüker reet ham ma [[$2|Nordfriisk]] aw [[$1|huuge]] schuchte.",
+ "babel-4-n": "Dideere brüker reet ham ma [[$2|Nordfriisk]] aw [[$1|mamenspräklike]] schuchte.",
+ "babel-5-n": "Dideere brüker reet ham ma [[$2|Nordfriisk]] aw [[$1|profäsjonäle]] schuchte.",
+ "babel-N-n": "Dideere brüker snååket [[$2|Nordfriisk]] as [[$1|mamenspräke]].",
+ "babel-footer": "Brükern efter spriak"
+}
diff --git a/MLEB/Babel/i18n/fur.json b/MLEB/Babel/i18n/fur.json
new file mode 100644
index 00000000..ae0cf3d7
--- /dev/null
+++ b/MLEB/Babel/i18n/fur.json
@@ -0,0 +1,30 @@
+{
+ "@metadata": {
+ "authors": [
+ "Klenje"
+ ]
+ },
+ "babel": "Informazions Babel dal utent",
+ "babel-desc": "Zonte la funzion di analisi <code>#babel</code> par permeti la generazion in automatic di une colone box utent babel, cu la pussibitât di includi modei personalizâts",
+ "babel-url": "Project:Babel",
+ "babel-footer-url": ":Category:Utents par lenghe",
+ "babel-autocreate-abort": "Il non utent specificât al è doprât pe creazion automatiche di categoriis [[$1|Babel]] e nol pues jessi regjistrât.",
+ "babel-autocreate-reason": "Creant in automatic la categorie di [[$1|Babel]].",
+ "babel-autocreate-text-levels": "I utents in cheste categorie a disin di vê un nivel $1 pe lenghe $2.",
+ "babel-autocreate-text-main": "I utents in cheste categorie a disin di cognossi la lenghe $1",
+ "babel-0": "Chest utent [[$1|nol cognos]] il [[$2|$3]] (o lu capìs cuntun grum di dificoltât).",
+ "babel-1": "Chest utent al à une cognossince [[$1|elementâr]] de lenghe [[$2|$3]].",
+ "babel-2": "Chest utent al à une cognossince [[$1|mezane]] de lenghe [[$2|$3]].",
+ "babel-3": "Chest utent al à une cognossince [[$1|avanzade]] de lenghe [[$2|$3]].",
+ "babel-4": "Chest utent al à une cognossince [[$1|cuasi di marilenghe]] dal [[$2|$3]].",
+ "babel-5": "Chest utent al à une cognossince [[$1|professionâl]] de lenghe [[$2|$3]].",
+ "babel-N": "Chest utent al cognòs la lenghe [[$2|$3]] come un fevelant [[$1|marilenghe]].",
+ "babel-0-n": "Chest utent [[$1|nol cognos]] il [[$2|furlan]] (o lu capìs cuntun grum di dificoltât).",
+ "babel-1-n": "Chest utent al à une cognossince [[$1|elementâr]] dal [[$2|furlan]].",
+ "babel-2-n": "Chest utent al à une cognossince [[$1|mezane]] dal [[$2|furlan]].",
+ "babel-3-n": "Chest utent al à une cognossince [[$1|avanzade]] dal [[$2|furlan]].",
+ "babel-4-n": "Chest utent al à une cognossince [[$1|cuasi di marilenghe]] dal [[$2|furlan]].",
+ "babel-5-n": "Chest utent al à une cognossince [[$1|professionâl]] dal [[$2|furlan]].",
+ "babel-N-n": "Chest utent al è di [[$1|marilenghe]] [[$2|furlane]].",
+ "babel-footer": "Utents par lenghe"
+}
diff --git a/MLEB/Babel/i18n/fy.json b/MLEB/Babel/i18n/fy.json
new file mode 100644
index 00000000..c85fffb3
--- /dev/null
+++ b/MLEB/Babel/i18n/fy.json
@@ -0,0 +1,30 @@
+{
+ "@metadata": {
+ "authors": [
+ "Crazymadlover",
+ "SK-luuut",
+ "Snakesteuben"
+ ]
+ },
+ "babel": "Babel-meidoggersynformaasje",
+ "babel-desc": "Foeget de <code>#babel</code> automatyske opdielerfunksje ta om it automatysk meitsjen fan in Babel meidoggerskolom ta stean mei de mooglikheid om eigen berjochten ta te foegjen.",
+ "babel-url": "Project:Babel",
+ "babel-autocreate-abort": "De meidoggersnamme dy't jo opjûn hawwe wurdt al brûkt foar it automatysk meitsjen fan [[$1|Babel]]-kategoryen en kin net oanmeld wurden.",
+ "babel-autocreate-reason": "Makket automatysk in [[$1|Babel]]-kategory oan.",
+ "babel-autocreate-text-levels": "Meidoggers yn dizze kategory jouwe oan dat harren taalkennis foar $2 $1 is.",
+ "babel-autocreate-text-main": "Meidoggers yn dizze kategory jouwe oan dat hja kennis fan $1 hawwe.",
+ "babel-0": "Dizze meidogger hat [[$1|gjin]] kennis fan [[$2|$3]] (of ferstiet it allinnich mei in soad tûkelteammen).",
+ "babel-1": "It [[$2|$3]] fan dizze meidogger is [[$1|minimaal]].",
+ "babel-2": "It [[$2|$3]] fan dizze meidogger is [[$1|ridlik]].",
+ "babel-3": "It [[$2|$3]] fan dizze meidogger is [[$1|treflik]].",
+ "babel-4": "It [[$2|$3]] is benei de [[$1|memmetaal]] fan dizze meidogger.",
+ "babel-5": "It [[$2|$3]] fan dizze meidogger is [[$1|professional]].",
+ "babel-N": "It [[$2|$3]] is de [[$1|memmetaal]] fan dizze meidogger.",
+ "babel-0-n": "Dizze meidogger hat [[$1|gjin]] kennis fan it [[$2|Frysk]] (of ferstiet it allinnich mei in soad tûkelteammen).",
+ "babel-1-n": "It [[$2|Frysk]] fan dizze meidogger is [[$1|minimaal]].",
+ "babel-2-n": "It [[$2|Frysk]] fan dizze meidogger is [[$1|ridlik]].",
+ "babel-3-n": "It [[$2|Frysk]] fan dizze meidogger is [[$1|treflik]].",
+ "babel-4-n": "It [[$2|Frysk]] is benei de [[$1|memmetaal]] fan dizze meidogger.",
+ "babel-5-n": "De kennis fan it [[$2|Frysk]] fan dizze meidogger is [[$1|beropsmatich]].",
+ "babel-N-n": "It [[$2|Frysk]] is de [[$1|memmetaal]] fan dizze meidogger."
+}
diff --git a/MLEB/Babel/i18n/ga.json b/MLEB/Babel/i18n/ga.json
new file mode 100644
index 00000000..70427c4d
--- /dev/null
+++ b/MLEB/Babel/i18n/ga.json
@@ -0,0 +1,32 @@
+{
+ "@metadata": {
+ "authors": [
+ "Alison",
+ "GerardM",
+ "Kwekubo",
+ "Moilleadóir",
+ "Tameamseo"
+ ]
+ },
+ "babel": "Eolas d'úsáideoirí maidir le Báibil",
+ "babel-desc": "Cruthaíonn sé seo an fheidhm pharsálaí <code>#babel</code> a chuireann ar chumas an úsáideora colún a ghiniúint go huathoibríoch i mbosca Báibil agus teimpléid saincheaptha a chur ann.",
+ "babel-url": "Project:Báibil",
+ "babel-autocreate-abort": "Ní féidir leat an t-ainm úsáideora a shonraigh tú a chlárú, mar úsáidtear é chun catagóirí [[$1|Báibil]] a uathchruthú.",
+ "babel-autocreate-reason": "Leathanach catagóire [[$1|Báibil]] á uathchruthú.",
+ "babel-autocreate-text-levels": "Cuireann úsáideoirí sa chatagóir seo in iúl go bhfuil an scil-leibhéal $1 acu maidir leis an dteanga seo, $2.",
+ "babel-autocreate-text-main": "Tá $1 ag na húsáideoirí seo.",
+ "babel-0": "[[$1|Níl aon eolas]] ag an úsáideoir seo maidir le [[$2|$3]] (nó is rí-dheacair don úsáideoir seo an theanga sin a thuiscint).",
+ "babel-1": "Tá [[$1|buneolas]] ag an úsáideoir seo maidir le [[$2|$3]].",
+ "babel-2": "Tá eolas [[$1|idirmheánach]] ag an úsáideoir seo maidir le [[$2|$3]].",
+ "babel-3": "Tá [[$1|ardeolas]] ag an úsáideoir seo maidir le [[$2|$3]].",
+ "babel-4": "Tá eolas [[$1|beagnach dúchasach]] ag an úsáideoir seo maidir le [[$2|$3]].",
+ "babel-5": "Tá eolas [[$1|gairmiúil]] ag an úsáideoir seo maidir le [[$2|$3]].",
+ "babel-N": "Tá [[$2|$3]] ag an úsáideoir seo [[$1|ó dhúchas]].",
+ "babel-0-n": "[[$1|Níl aon]] [[$2|Ghaeilge]] ag an úsáideoir seo (nó is deacair leis an úsáideoir seo í a thuiscint).",
+ "babel-1-n": "Tá [[$1|buneolas]] ag an úsáideoir seo maidir le [[$2|Gaeilge]].",
+ "babel-2-n": "Tá eolas [[$1|idirmheánach]] ag an úsáideoir seo maidir le [[$2|Gaeilge]].",
+ "babel-3-n": "Tá [[$2|Gaeilge]] [[$1|mhaith]] ag an úsáideoir seo.",
+ "babel-4-n": "Tá eolas [[$1|beagnach dúchasach]] ag an úsáideoir seo maidir le [[$2|Gaeilge]].",
+ "babel-5-n": "Tá eolas [[$1|gairmiúil]] ag an úsáideoir seo maidir le [[$2|Gaeilge]].",
+ "babel-N-n": "Tá [[$2|Gaeilge]] ag an úsáideoir seo [[$1|ó dhúchas]]."
+}
diff --git a/MLEB/Babel/i18n/gag.json b/MLEB/Babel/i18n/gag.json
new file mode 100644
index 00000000..ada6c283
--- /dev/null
+++ b/MLEB/Babel/i18n/gag.json
@@ -0,0 +1,12 @@
+{
+ "@metadata": {
+ "authors": [
+ "Emperyan"
+ ]
+ },
+ "babel-1": "Bu kullanıcı var nicä [[$1|saadä düzeydä]] lafetsin [[$2|$3]].",
+ "babel-2": "Bu kullanıcı var nicä [[$1|orta düzeydä]] lafetsin [[$2|$3]].",
+ "babel-3": "Bu kullanıcı var nicä [[$1|islää düzeydä]] lafetsin [[$2|$3]].",
+ "babel-4": "Bu kullanıcı var nicä [[$1|sansın ana dili]] lafetsin [[$2|$3]].",
+ "babel-N": "Bu kullanıcının [[$1|ana dili]] [[$2|$3]]."
+}
diff --git a/MLEB/Babel/i18n/gan.json b/MLEB/Babel/i18n/gan.json
new file mode 100644
index 00000000..fb256583
--- /dev/null
+++ b/MLEB/Babel/i18n/gan.json
@@ -0,0 +1,28 @@
+{
+ "@metadata": {
+ "authors": [
+ "Symane"
+ ]
+ },
+ "babel": "巴別用戶資料",
+ "babel-desc": "加隻<code>#babel</code>處理功能去容許自動產生一隻巴別用戶盒欄,同到含到可自定化嗰模板",
+ "babel-url": "Project:巴別",
+ "babel-autocreate-abort": "倷特試要求嗰用戶名已經自動係[[$1|Babel]]嗰分類,咁就登記不正。",
+ "babel-autocreate-reason": "自動建立[[$1|Babel]]分類頁。",
+ "babel-autocreate-text-levels": "箇隻分類嗰用戶都有 $2 語言嗰 $1 水平嗰交流能力。",
+ "babel-autocreate-text-main": "箇隻分類嗰用戶都有 $1 語言嗰知識。",
+ "babel-0": "箇隻用戶[[$1|冇滴子]][[$2|$3]]嗰水平(或者好艱難去聽轉佢)。",
+ "babel-1": "箇隻用戶有[[$1|滴把子]]嗰[[$2|$3]]水平。",
+ "babel-2": "箇隻用戶有[[$1|一般子]]嗰[[$2|$3]]水平。",
+ "babel-3": "箇隻用戶有[[$1|蠻靚]]嗰[[$2|$3]]水平。",
+ "babel-4": "箇隻用戶有[[$1|好喫價]]嗰[[$2|$3]]水平。",
+ "babel-5": "箇隻用戶有[[$1|專業]]嗰[[$2|$3]]能力。",
+ "babel-N": "箇隻用戶曉得[[$2|$3]]嗰[[$1|母語]]。",
+ "babel-0-n": "箇隻用戶[[$1|冇滴子]][[$2|贛語]]嗰水平(或者好艱難去聽轉佢)。",
+ "babel-1-n": "箇隻用戶有[[$1|滴把子]]嗰[[$2|贛語]]水平。",
+ "babel-2-n": "箇隻用戶有[[$1|一般子]]嗰[[$2|贛語]]水平。",
+ "babel-3-n": "箇隻用戶有[[$1|蠻靚]]嗰[[$2|贛語]]水平。",
+ "babel-4-n": "箇隻用戶有[[$1|好喫價]]嗰[[$2|贛語]]水平。",
+ "babel-5-n": "箇隻用戶有[[$1|專業]]嗰[[$2|贛語]]能力。",
+ "babel-N-n": "箇隻用戶曉得[[$2|贛語]]嗰[[$1|母語]]。"
+} \ No newline at end of file
diff --git a/MLEB/Babel/i18n/gbz.json b/MLEB/Babel/i18n/gbz.json
new file mode 100644
index 00000000..9bb529d9
--- /dev/null
+++ b/MLEB/Babel/i18n/gbz.json
@@ -0,0 +1,9 @@
+{
+ "@metadata": {
+ "authors": [
+ "Mjbmr"
+ ]
+ },
+ "babel-1": "Mā ror-ber-e [[$2|$3]] rā [[$1|yānog-e]] pāmā.",
+ "babel-1-n": "Mā ror-ber-e [[$2|Dari-e Mazdeyasnā]] rā [[$1|yānog-e]] pāmā."
+}
diff --git a/MLEB/Babel/i18n/gd.json b/MLEB/Babel/i18n/gd.json
new file mode 100644
index 00000000..2789798a
--- /dev/null
+++ b/MLEB/Babel/i18n/gd.json
@@ -0,0 +1,36 @@
+{
+ "@metadata": {
+ "authors": [
+ "Akerbeltz",
+ "Caoimhin",
+ "Sionnach",
+ "Steafan31",
+ "GunChleoc"
+ ]
+ },
+ "babel": "Fiosrachadh Babel mun chleachdaiche",
+ "babel-desc": "Cuiridh seo am parser function <code>#babel</code> ris an duilleag gus an dèid colbh babel a chruthachadh mun chleachdaiche seo, le comas gus teamplaidean sònraichte a ghabhail a-steach.",
+ "babel-url": "Project:Babel",
+ "babel-footer-url": ":Category:Babel - Cleachdaichean a-rèir cànain",
+ "babel-autocreate-abort": "Tha an t-ainm-cleachdaiche a shònraich thu 'ga chleachdadh airson fèin-chrutheachadh na roinne [[$1|Babel]] agus cha ghabh a chlàrachadh.",
+ "babel-autocreate-reason": "A' cruthachadh duilleag roinne [[$1|Babel]] leis fhèin.",
+ "babel-autocreate-text-levels": "Tha na cleachdaichean san roinn seo ag innse gu bheil comas ìre $1 aca ann an $2.",
+ "babel-autocreate-text-main": "Tha na cleachdaichean san roinn seo ag innse gu bheil iad eòlach air a' chànan a leanas: $1.",
+ "babel-autocreate-user": "Cruthachadh fèin-obrachail Babel",
+ "babel-0": "[[$1|Cha tuig]] an cleachdaiche seo [[$2|$3]] idir (no chan eil {{GENDER:$4|e|i}} 'ga tuigsinn ach air èiginn).",
+ "babel-1": "Tha comas labhairt [[$1|bunaiteach]] sa [[$2|$3|Ghàidhlig]] aig a' chleachdaiche seo.",
+ "babel-2": "Tha comas labhairt [[$1|meadhanach]] aig a' chleachdaiche seo sa [[$2|$3|Ghàidhlig]].",
+ "babel-3": "Tha comas labhairt [[$1|adhartach]] aig a' chleachdaiche seo sa [[$2|$3|Ghàidhlig]].",
+ "babel-4": "Tha comas labhairt [[$1|cha mhòr mar cuideigin air ag bheil i on ghlùn]] aig a' chleachdaiche seo sa [[$2|$3|Ghàidhlig]].",
+ "babel-5": "Tha comas labhairt [[$1|proifeiseanta]] aig a' chleachdaiche seo sa [[$2|$3|Ghàidhlig]].",
+ "babel-N": "Tha [[$2|$3]] [[$1|on ghlùn]] aig a' chleachdaiche seo.",
+ "babel-0-n": "[[$1|Cha tuig]] an cleachdaiche seo [[$2|Gàidhlig]] idir (no chan eil {{GENDER:$4|e|i}} 'ga tuigsinn ach air èiginn).",
+ "babel-1-n": "Tha comas labhairt [[$1|bunaiteach]] sa [[$2|Ghàidhlig]] aig a' chleachdaiche seo.",
+ "babel-2-n": "Tha comas labhairt [[$1|meadhanach]] aig a' chleachdaiche seo sa [[$2|Ghàidhlig]].",
+ "babel-3-n": "Tha comas labhairt [[$1|adhartach]] aig a' chleachdaiche seo sa [[$2|Ghàidhlig]].",
+ "babel-4-n": "Tha comas labhairt [[$1|cha mhòr mar cuideigin air ag bheil i on ghlùn]] aig a' chleachdaiche seo sa [[$2|Ghàidhlig]].",
+ "babel-5-n": "Tha comas labhairt [[$1|proifeiseanta]] aig a' chleachdaiche seo sa [[$2|Ghàidhlig]].",
+ "babel-N-n": "Tha [[$2|Gàidhlig]] [[$1|on ghlùn]] aig a' chleachdaiche seo.",
+ "babel-template": "Template:User $1",
+ "babel-footer": "Cleachdaichean a-rèir cànain"
+}
diff --git a/MLEB/Babel/i18n/gl.json b/MLEB/Babel/i18n/gl.json
new file mode 100644
index 00000000..5eea3cfa
--- /dev/null
+++ b/MLEB/Babel/i18n/gl.json
@@ -0,0 +1,30 @@
+{
+ "@metadata": {
+ "authors": [
+ "Toliño"
+ ]
+ },
+ "babel": "Información Babel {{GENDER:$1|do usuario|da usuaria}}",
+ "babel-desc": "Engade a función analítica <code>#babel</code> para permitir a xeración automática dunha caixa de usuario Babel coa posibilidade de incluír modelos personalizados",
+ "babel-url": "Project:Babel",
+ "babel-footer-url": ":Categoría:Babel - Usuarios por lingua",
+ "babel-autocreate-abort": "O nome de usuario especificado é usado para a creación automática de categorías [[$1|Babel]], polo que non pode ser rexistrado.",
+ "babel-autocreate-reason": "Creación automática da categoría [[$1|Babel]].",
+ "babel-autocreate-text-levels": "Os usuarios que están nesta categoría teñen un nivel $1 de destreza en lingua $2.",
+ "babel-autocreate-text-main": "Os usuarios desta categoría teñen un alto coñecemento da lingua $1.",
+ "babel-0": "{{GENDER:$4|Este usuario|Esta usuaria}} [[$1|non]] ten ningún coñecemento de [[$2|$3]] (ou ten dificultades para entendelo).",
+ "babel-1": "{{GENDER:$4|Este usuario|Esta usuaria}} ten un coñecemento [[$1|básico]] de [[$2|$3]].",
+ "babel-2": "{{GENDER:$4|Este usuario|Esta usuaria}} ten un coñecemento [[$1|intermedio]] de [[$2|$3]].",
+ "babel-3": "{{GENDER:$4|Este usuario|Esta usuaria}} ten un coñecemento [[$1|avanzado]] de [[$2|$3]].",
+ "babel-4": "{{GENDER:$4|Este usuario|Esta usuaria}} ten un coñecemento [[$1|similar ao dun nativo]] de [[$2|$3]].",
+ "babel-5": "{{GENDER:$4|Este usuario|Esta usuaria}} ten un coñecemento [[$1|profesional]] de [[$2|$3]].",
+ "babel-N": "{{GENDER:$4|Este usuario|Esta usuaria}} é {{GENDER:$4|un|unha}} falante [[$1|{{GENDER:$4|nativo|nativa}}]] de [[$2|$3]].",
+ "babel-0-n": "{{GENDER:$4|Este usuario|Esta usuaria}} [[$1|non]] ten ningún coñecemento de [[$2|galego]] (ou ten dificultades para entendelo).",
+ "babel-1-n": "{{GENDER:$4|Este usuario|Esta usuaria}} ten un coñecemento [[$1|básico]] de [[$2|galego]].",
+ "babel-2-n": "{{GENDER:$4|Este usuario|Esta usuaria}} ten un coñecemento [[$1|intermedio]] de [[$2|galego]].",
+ "babel-3-n": "{{GENDER:$4|Este usuario|Esta usuaria}} ten un coñecemento [[$1|avanzado]] de [[$2|galego]].",
+ "babel-4-n": "{{GENDER:$4|Este usuario|Esta usuaria}} ten un coñecemento [[$1|similar ao dun nativo]] de [[$2|galego]].",
+ "babel-5-n": "{{GENDER:$4|Este usuario|Esta usuaria}} ten un coñecemento [[$1|profesional]] de [[$2|galego]].",
+ "babel-N-n": "{{GENDER:$4|Este usuario|Esta usuaria}} é {{GENDER:$4|un|unha}} falante [[$1|{{GENDER:$4|nativo|nativa}}]] de [[$2|galego]].",
+ "babel-footer": "Usuarios por lingua"
+}
diff --git a/MLEB/Babel/i18n/gom-latn.json b/MLEB/Babel/i18n/gom-latn.json
new file mode 100644
index 00000000..acf764c9
--- /dev/null
+++ b/MLEB/Babel/i18n/gom-latn.json
@@ -0,0 +1,27 @@
+{
+ "@metadata": {
+ "authors": [
+ "The Discoverer"
+ ]
+ },
+ "babel": "Babel vapurpi mahiti",
+ "babel-url": "Project:Babel",
+ "babel-footer-url": ":Category:Babel - Bhase pormonnem vapurpi",
+ "babel-autocreate-text-levels": "Hea vorgacheo vapurpeanim khunnaila ki $2 bhasen kushaltaiche $1 pavlar asat",
+ "babel-autocreate-text-main": "Hea vorgacheo vapurpeanim khunnaila ki tenka $1 bhas kollta.",
+ "babel-0": "Hea vangddiak [[$2|$3]] [[$1|kollna]]",
+ "babel-1": "Hea vangddiak [[$1|thodi]] [[$2|$3]] kollta",
+ "babel-2": "Hea vangddeak [[$2|$3]] [[$1|sadhi]] sthorar kollta",
+ "babel-3": "Hea vangddiak [[$2|$3]] [[$1|borem]] bhaxen kollta",
+ "babel-4": "Hea vangddiak [[$2|$3]] [[$1|khup borem]] bhaxen kollta",
+ "babel-5": "Hea vangddeak [[$2|$3]] [[$1|vyavasaik]] sthorar kollta",
+ "babel-N": "[[$2|$3]] hea vangddiachi [[$1|mai-bhas]] zaun asa",
+ "babel-0-n": "Hea vangddiak [[$2|Konknni]] [[$1|kollna]]",
+ "babel-1-n": "Hea vangddiak [[$1|thodi]] [[$2|Konknni]] kollta",
+ "babel-2-n": "Hea vangddeak [[$2|Konknni]] [[$1|sadhi]] sthorar kollta",
+ "babel-3-n": "Hea vangddiak [[$2|Konknni]] [[$1|borem]] bhaxen kollta",
+ "babel-4-n": "Hea vangddiak [[$2|Konknni]] [[$1|khup borem]] bhaxen kollta",
+ "babel-5-n": "Hea vangddeak [[$2|Konknni]] [[$1|vyavasaik]] sthorar kollta",
+ "babel-N-n": "[[$2|Konknni]] hea vangddiachi [[$1|mai-bhas]] zaun asa",
+ "babel-footer": "Bhasepormonem vapurpeanchim nanvam"
+}
diff --git a/MLEB/Babel/i18n/got.json b/MLEB/Babel/i18n/got.json
new file mode 100644
index 00000000..8acbeaa3
--- /dev/null
+++ b/MLEB/Babel/i18n/got.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Purodha"
+ ]
+ },
+ "babel-url": "Project:Babilu"
+} \ No newline at end of file
diff --git a/MLEB/Babel/i18n/grc.json b/MLEB/Babel/i18n/grc.json
new file mode 100644
index 00000000..e3c1fa38
--- /dev/null
+++ b/MLEB/Babel/i18n/grc.json
@@ -0,0 +1,30 @@
+{
+ "@metadata": {
+ "authors": [
+ "Crazymadlover",
+ "LeighvsOptimvsMaximvs",
+ "Omnipaedista"
+ ]
+ },
+ "babel": "Πληροφορίαι \"Βαβὲλ\" Χρωμένου",
+ "babel-desc": "Προσθέτει τὴν <code>#babel</code> λεξιαναλυτικὴν λειτουργίαν ἐπιτρέπουσαν τὴν αὐτόματον δημιουργίαν στήλης κυτίων χρωμένου τινός, ἐχούσης τὴν δυνατότητα περίληψεως συνήθων προτύπων",
+ "babel-url": "Project:Βαβέλ",
+ "babel-autocreate-abort": "Tὸ ὄνομα χρωμένου τὸ καθωρισμένον ὑπἔσοῦ χρήσιμον ἐστὶ ἐν τῇ αὐτομάτῳ ποιήσει κατηγοριῶν [[$1|Βαβὲλ]] ἄρα οὐκ ἔξεστι τούτῳ ἐγγεγραμμένον ἐστίν.",
+ "babel-autocreate-reason": "Ποιεῖν αύτομάτως δέλτον κατηγοριῶν [[$1|Βαβέλ]].",
+ "babel-autocreate-text-levels": "Χρώμενοι ἐν τοιαύτῃ τῇ κατηγορίᾳ δηλοῦσι τὴν ἑαυτῶν κλίμακα ἱκανοτητος $1 διὰ τὴν γλῶσσαν $2.",
+ "babel-autocreate-text-main": "Χρώμενοι ἐν τοιαύτῃ τῇ κατηγορίᾳ δηλοῦσι τὴν ἑαυτῶν γνῶσιν τῆς γλώσσης $1.",
+ "babel-0": "Ὅδε ὁ χρώμενος [[$1|οὐδὲν]] περὶ τῆς [[$2|$3]] γιγνώσκει (ἢ αὐτὴν μόλις καταλαμβάνει).",
+ "babel-1": "Ὅδε ὁ χρώμενος [[$1|στοιχειωδὼς]] τὴν [[$2|$3]] χρῆται.",
+ "babel-2": "Ὅδε ὁ χρώμενος [[$1|μέσως]] τὴν [[$2|$3]] χρῆται.",
+ "babel-3": "Ὅδε ὁ χρώμενος [[$1|ἀνωτέρως]] τὴν [[$2|$3]] χρῆται.",
+ "babel-4": "Ὅδε ὁ χρώμενος [[$1|σχεδὸν ὡς μητρικὴν γλῶσσαν]] τὴν [[$2|$3]] ἔχει.",
+ "babel-5": "Ὅδε ὁ χρώμενος [[$1|ἐπαγγελματικῶς]] τὴν [[$2|$3]] χρῆται.",
+ "babel-N": "Ὅδε ὁ χρώμενος [[$1|ἰθαγενὴς ὁμιλητὴς]] τῆς [[$2|$3]] ἐστίν.",
+ "babel-0-n": "Ὅδε ὁ χρώμενος [[$1|οὐδὲν]] περὶ τῆς [[$2|ἀρχαίας ἑλληνικῆς]] γιγνώσκει (ἢ αὐτὴν μόλις καταλαμβάνει).",
+ "babel-1-n": "Ὅδε ὁ χρώμενος [[$1|στοιχειώδη]] γνῶσιν τῆς [[$2|ἀρχαίας ἑλληνικῆς]] ἔχει.",
+ "babel-2-n": "Ὅδε ὁ χρώμενος [[$1|μέσην]] γνῶσιν τῆς [[$2|ἀρχαίας ἑλληνικῆς]] ἔχει.",
+ "babel-3-n": "Ὅδε ὁ χρώμενος [[$1|ἀνωτέραν]] γνῶσιν τῆς [[$2|ἀρχαίας ἑλληνικῆς]] ἔχει.",
+ "babel-4-n": "Ὅδε ὁ χρώμενος [[$1|σχεδὸν ὡς μητρικὴν γλῶσσαν]] τὴν [[$2|ἀρχαίαν ἑλληνικὴν]] ἔχει.",
+ "babel-5-n": "Ὅδε ὁ χρώμενος [[$1|ἐπαγγελματικὴν]] γνῶσιν τῆς [[$2|ἀρχαίας ἑλληνικῆς]] ἔχει.",
+ "babel-N-n": "Ὅδε ὁ χρώμενος [[$1|αὐτόπρεμνον]] αἴσθησιν τῆς [[$2|ἀρχαίας ἑλληνικῆς]] ἔχει."
+}
diff --git a/MLEB/Babel/i18n/gsw.json b/MLEB/Babel/i18n/gsw.json
new file mode 100644
index 00000000..d5648b7b
--- /dev/null
+++ b/MLEB/Babel/i18n/gsw.json
@@ -0,0 +1,31 @@
+{
+ "@metadata": {
+ "authors": [
+ "Als-Holder",
+ "Strommops"
+ ]
+ },
+ "babel": "Babel-Benutzer-Information",
+ "babel-desc": "Ergänzt d <code>#babel</code>-Parserfunktion fir s automatisch Aalege vu Babel-Benutzerchäschtli-Zyyle mit dr Megligkeit, eigeni Vorlagen yyzbinde",
+ "babel-url": "Project:Babel",
+ "babel-footer-url": ":Category:Babel - Benutzer no Sproch",
+ "babel-autocreate-abort": "Dr uusgwählt Benutzername wird fir s automatisch Aalege vu [[$1|Babel]]-Kategorie bruucht un cha nit regischtriert wäre.",
+ "babel-autocreate-reason": "Automatisch aagleiti [[$1|Babel]]-Kategorie.",
+ "babel-autocreate-text-levels": "Benutzer in däre Kategorii hän s Chänntnis-Level $1 fir d Sproch $2.",
+ "babel-autocreate-text-main": "Benutzer in däre Kategorii hän Chänntnis vu dr Sproch $1.",
+ "babel-0": "Dä Benutzer cha [[$1|kei]] [[$2|$3]] (oder verstoht's numme mit größere Schwyrigkeite).",
+ "babel-1": "Dä Benutzer cha [[$1|e bitz]] [[$2|$3]].",
+ "babel-2": "Dä Benutzer cha [[$2|$3]] uff [[$1|fortgschrittenem]] Niveau.",
+ "babel-3": "Dä Benutzer cha [[$1|sehr güet]] [[$2|$3]].",
+ "babel-4": "Dä Benutzer cha [[$2|$3]] uff em Niveau vo me [[$1|Müetersprochler]].",
+ "babel-5": "Dä Benutzer cha [[$2|$3]] uff [[$1|professionällem]] Niveau.",
+ "babel-N": "Dem Benutzer sini [[$1|Müetersproch]] isch [[$2|$3]].",
+ "babel-0-n": "Dää Benutzer cha [[$1|kei]] [[$2|Alemannisch]] (oder verstoht s nume mit greschte Schwirigkeite).",
+ "babel-1-n": "Dää Benutzer cha [[$1|e bitzeli]] [[$2|Alemannisch]].",
+ "babel-2-n": "Dää Benutzer cha [[$2|Alemannisch]] uf [[$1|fortgschrittenem]] Niveau.",
+ "babel-3-n": "Dää Benutzer cha [[$1|seli guet]] [[$2|Alemannisch]].",
+ "babel-4-n": "Dää Benutzer cha [[$2|Alemannisch]] [[$1|wie ne Muetterspröchler]].",
+ "babel-5-n": "Dää Benutzer cha [[$2|Alemannisch]] uf [[$1|professionällem]] Niveau.",
+ "babel-N-n": "Däm Benutzer syyni [[$1|Muettersproch]] isch [[$2|Alemannisch]].",
+ "babel-footer": "Benutzer no Sproch"
+}
diff --git a/MLEB/Babel/i18n/gu.json b/MLEB/Babel/i18n/gu.json
new file mode 100644
index 00000000..a49dbadc
--- /dev/null
+++ b/MLEB/Babel/i18n/gu.json
@@ -0,0 +1,33 @@
+{
+ "@metadata": {
+ "authors": [
+ "Ashok modhvadia",
+ "Dineshjk",
+ "Dsvyas",
+ "KartikMistry"
+ ]
+ },
+ "babel": "બબેલ સભ્ય માહિતી",
+ "babel-desc": "કસ્ટમ ઢાંચા સહીત, સ્વસંચાલિત બબેલ સભ્યબોકસ કૉલમ બનાવવા માટે <code>#babel</code> પાર્સર વિધેય ઉમેરે છે.",
+ "babel-url": "Project:Babel",
+ "babel-footer-url": ":Category:Babel - ભાષાવાર સભ્યો",
+ "babel-autocreate-abort": "તમે જે સભ્યનામ દર્શાવ્યું છે તે [[$1|બબેલ]] શ્રેણીના સ્વયંભુ પ્રાકટ્ય માટે આરક્ષિત છે અને તે નામ પર નોંધણી શક્ય નથી.",
+ "babel-autocreate-reason": "[[$1|બબેલ]]નું સ્વયંભુ પ્રાકટ્ય થઇ રહ્યું છે.",
+ "babel-autocreate-text-levels": "આ શ્રેણીના સભ્યોને $2 ભાષામાં $1 જેટલી પ્રવીણતા છે.",
+ "babel-autocreate-text-main": "આ શ્રેણીના સભ્યો $1 ભાષા જાણે છે.",
+ "babel-0": "આ સભ્યને [[$2|$3]] ભાષાની [[$1|જરાપણ]] જાણકારી નથી (અથવા મહામુશ્કેલીથી સમજી શકે છે).",
+ "babel-1": "આ સભ્યને [[$2|$3]]ની [[$1|પ્રાથમિક]] જાણકારી છે.",
+ "babel-2": "આ સભ્યને [[$2|$3]]ની [[$1|થોડીક]] જાણકારી છે.",
+ "babel-3": "આ સભ્યને [[$2|$3]]ની [[$1|ખૂબજ સારી]] જાણકારી છે.",
+ "babel-4": "આ [[$2|$3]]ની આ સભ્યને [[$1|માતૃભાષા]] જેટલી જાણકારી છે.",
+ "babel-5": "આ સભ્યને [[$2|$3]] ઉપર [[$1|પ્રભુત્વ]] છે.",
+ "babel-N": "[[$2|$3]] આ સભ્યની [[$1|માતૃભાષા]] છે.",
+ "babel-0-n": "આ સભ્યને [[$2|ગુજરાતી]]ની [[$1|જરાપણ]] જાણકારી નથી (અથવા તે મહામુસીબતે સમજી શકે છે).",
+ "babel-1-n": "આ સભ્યને [[$2|ગુજરાતી]]નું [[$1|પ્રાથમિક કક્ષાનું]] જ્ઞાન છે.",
+ "babel-2-n": "આ સભ્યને [[$2|ગુજરાતી]]નું [[$1|થોડુંક]] જ્ઞાન છે.",
+ "babel-3-n": "આ સભ્યને [[$2|ગુજરાતી]]ની [[$1|ખૂબજ સારી]] જાણકારી છે.",
+ "babel-4-n": "[[$2|ગુજરાતી]]ની આ સભ્યને [[$1|માતૃભાષા]] જેટલી જાણકારી છે.",
+ "babel-5-n": "આ સભ્યને [[$2|ગુજરાતી]] ઉપર [[$1|પ્રભુત્વ]] છે.",
+ "babel-N-n": "[[$2|ગુજરાતી]] આ સભ્યની [[$1|માતૃભાષા]] છે.",
+ "babel-footer": "ભાષાવાર સભ્યો"
+}
diff --git a/MLEB/Babel/i18n/guc.json b/MLEB/Babel/i18n/guc.json
new file mode 100644
index 00000000..db48faea
--- /dev/null
+++ b/MLEB/Babel/i18n/guc.json
@@ -0,0 +1,23 @@
+{
+ "@metadata": {
+ "authors": [
+ "Jewbask",
+ "Maor X"
+ ]
+ },
+ "babel-url": "Project:Babel",
+ "babel-0": "Chii ka'yataayakalü [[$1|nojorulesuu]] naa'püin tü [[$2|$3]].",
+ "babel-1": "Chii ka'yataayakalü [[$1|echonsuu]] naa'püin tü [[$2|$3]].",
+ "babel-2": "Chii ka'yataayakalü [[$1|echonsuu]] naa'püin tü [[$2|$3]].",
+ "babel-3": "Chii ka'yataayakalü [[$1|anaasu]] nüiki [[$2|$3]].",
+ "babel-4": "Chii ka'yataayakalü [[$1|anashatasü]] nüiki [[$2|$3]].",
+ "babel-5": "Chii ka'yataayakalü [[$1|anale’esü]] nüiki [[$2|$3]].",
+ "babel-N": "Tü [[$2|$3]] [[$1|niia]] nüiki chii ka'yataayakalü.",
+ "babel-0-n": "Chii ka'yataayakalü [[$1|nojorulesuu]] naa'püin tü [[$2|wayuunaiki]].",
+ "babel-1-n": "Chii ka'yataayakalü [[$1|echonsuu]] naa'püin tü [[$2|wayuunaiki]].",
+ "babel-2-n": "Chii ka'yataayakalü [[$1|ees naa'püin]] tü [[$2|wayuunaiki]].",
+ "babel-3-n": "Chii ka'yataayakalü [[$1|anaasu]] nüiki [[$2|wayuunaikiru'u]].",
+ "babel-4-n": "Chii ka'yataayakalü [[$1|anashatasü]] nüiki [[$2|wayuunaikiru'u]].",
+ "babel-5-n": "Chii ka'yataayakalü [[$1|anale’esü]] nüiki [[$2|wayuunaikiru'u]].",
+ "babel-N-n": "Tü [[$2|wayuunaiki]] [[$1|niia]] nüiki chii ka'yataayakalü."
+}
diff --git a/MLEB/Babel/i18n/gv.json b/MLEB/Babel/i18n/gv.json
new file mode 100644
index 00000000..1dacdd2e
--- /dev/null
+++ b/MLEB/Babel/i18n/gv.json
@@ -0,0 +1,28 @@
+{
+ "@metadata": {
+ "authors": [
+ "MacTire02",
+ "Shimmin Beg"
+ ]
+ },
+ "babel": "Fys ymmydeyr Babel",
+ "babel-url": "Project:Babel",
+ "babel-autocreate-abort": "Yn ennym ymmydeyr hug shiu stiagh, cha nod shiu goaill eh; ta ymmyd jeant jeh son hene-chrooaght ronnaghyn [[$1|Babel]].",
+ "babel-autocreate-reason": "Croo duillag ronney [[$1|Babel]] dy seyr-obbragh.",
+ "babel-autocreate-text-levels": "Ymmydeyryn ayns y ronneys shoh, t'ad cowraghey dy vel schlei $1 oc er $2.",
+ "babel-autocreate-text-main": "Ymmydeyryn ayns y ronney shoh, t'ad cowraghey dy vel $1 ennagh oc.",
+ "babel-0": "Cha nel [[$2|$3]] [[$1|erbee]] ec yn ymmydeyr shoh (ny s'feer doillee da toiggal ee).",
+ "babel-1": "Ta [[$2|$3]] [[$1|veg]] ec yn ymmydeyr shoh.",
+ "babel-2": "Ta [[$2|$3]] [[$1|veanagh]] ec yn ymmydeyr shoh.",
+ "babel-3": "Ta [[$2|$3]] [[$1|vie]] ec yn ymmydeyr shoh.",
+ "babel-4": "Ta [[$2|$3]] [[$1|feer vie]] ec yn ymmydeyr shoh.",
+ "babel-5": "Ta [[$2|$3]] [[$1|cheirdey]] ec yn ymmydeyr shoh.",
+ "babel-N": "Ta [[$2|$3]] [[$1|ghlen]] ec yn ymmydeyr shoh.",
+ "babel-0-n": "Cha nel [[$2|Gaelg]] [[$1|erbee]] ec yn ymmydeyr shoh (ny s'feer doillee da toiggal ee).",
+ "babel-1-n": "Ta [[$2|Gaelg]] [[$1|veg]] ec yn ymmydeyr shoh.",
+ "babel-2-n": "Ta [[$2|Gaelg]] [[$1|veanagh]] ec yn ymmydeyr shoh.",
+ "babel-3-n": "Ta [[$2|Gaelg]] [[$1|vie]] ec yn ymmydeyr shoh.",
+ "babel-4-n": "Ta [[$2|Gaelg]] [[$1|feer vie]] ec yn ymmydeyr shoh.",
+ "babel-5-n": "Ta [[$2|Gaelg]] [[$1|cheirdey]] ec yn ymmydeyr shoh.",
+ "babel-N-n": "Ta [[$2|Gaelg]] [[$1|ghlen]] ec yn ymmydeyr shoh."
+}
diff --git a/MLEB/Babel/i18n/haw.json b/MLEB/Babel/i18n/haw.json
new file mode 100644
index 00000000..2eb19c4e
--- /dev/null
+++ b/MLEB/Babel/i18n/haw.json
@@ -0,0 +1,31 @@
+{
+ "@metadata": {
+ "authors": [
+ "Kolonahe",
+ "Singularity"
+ ]
+ },
+ "babel": "ʻIke mea ho‘ohana Babel",
+ "babel-desc": "Ho‘ohui i ka <code>#babel</code> hana pāsā e ho‘oku‘u i ka hikahana o ke kolamu pahu mea ho‘ohana Babel, me ka hiki ʻana e hoʻohui i nā anakuhi pilikino",
+ "babel-url": "Project:Babel",
+ "babel-footer-url": ":Mahele:Babel - Mea hoʻohana e ka ʻōlelo",
+ "babel-autocreate-abort": "Ke hoʻohana nei i ka inoa mea hoʻohana no ka māhele hikahana [[$1|Babel]] a hiki ʻole ke kāinoa ʻia.",
+ "babel-autocreate-reason": "Ke hikahana nei i ka ʻaoʻao mahele [[$1|Babel]].",
+ "babel-autocreate-text-levels": "Hōʻike i nā mea hoʻohana i loko o kēia māhele, loaʻa iā lākou i ke kalamania mākau $1 no ka ʻōlelo $2.",
+ "babel-autocreate-text-main": "Hōʻike i nā mea hoʻohana i loko o kēia māhele, loaʻa iā lākou i ka ʻike o ka ʻōlelo $1.",
+ "babel-0": "[[$1|‘A‘ole hiki]] i kēia mea ho‘ohana ke hā‘awi ma ka [[$2|$3]].",
+ "babel-1": "Hiki i kēia mea ho‘ohana ke hā‘awi me [[$1|kahi kūlana ha‘aha‘a]] ma ka [[$2|$3]].",
+ "babel-2": "Hiki i kēia mea ho‘ohana ke hā‘awi me [[$1|kahi kūlana o waena]] ma ka [[$2|$3]].",
+ "babel-3": "Hiki i kēia mea ho‘ohana ke hā‘awi me [[$1|kahi kūlana ki‘eki‘e]] ma ka [[$2|$3]].",
+ "babel-4": "Hiki i kēia mea ho‘ohana ke hā‘awi me [[$1|kahi kūlana kokoke]] i kō ka mānaleo ma ka [[$2|$3]].",
+ "babel-5": "Hiki i kēia mea ho‘ohana ke hā‘awi me [[$1|kahi kūlana ‘oihana]] ma ka [[$2|$3]].",
+ "babel-N": "He [[$1|mānaleo]] kēia kanaka ma ka [[$2|$3]].",
+ "babel-0-n": "[[$1|‘A‘ole hiki]] i kēia mea ho‘ohana ke hā‘awi ma ka [[$2|‘ōlelo Hawai‘i]].",
+ "babel-1-n": "Hiki i kēia mea ho‘ohana ke hā‘awi me [[$1|kahi kūlana ha‘aha‘a]] ma ka [[$2|‘ōlelo Hawai‘i]].",
+ "babel-2-n": "Hiki i kēia mea ho‘ohana ke hā‘awi me [[$1|kahi kūlana o waena]] ma ka [[$2|‘ōlelo Hawai‘i]].",
+ "babel-3-n": "Hiki i kēia mea ho‘ohana ke hā‘awi me [[$1|kahi kūlana ki‘eki‘e]] ma ka [[$2|‘ōlelo Hawai‘i]].",
+ "babel-4-n": "Hiki i kēia mea ho‘ohana ke hā‘awi me [[$1|kahi kūlana kokoke]] i kō ka mānaleo ma ka [[$2|‘ōlelo Hawai‘i]].",
+ "babel-5-n": "Hiki i kēia mea ho‘ohana ke hā‘awi me [[$1|kahi kūlana ‘oihana]] ma ka [[$2|‘ōlelo Hawai‘i]].",
+ "babel-N-n": "He [[$1|mānaleo]] kēia kanaka ma ka [[$2|‘ōlelo Hawai‘i]].",
+ "babel-footer": "Nā mea hoʻohana e kā ʻōlelo"
+}
diff --git a/MLEB/Babel/i18n/he.json b/MLEB/Babel/i18n/he.json
new file mode 100644
index 00000000..1af2d818
--- /dev/null
+++ b/MLEB/Babel/i18n/he.json
@@ -0,0 +1,36 @@
+{
+ "@metadata": {
+ "authors": [
+ "Agbad",
+ "Amire80",
+ "GerardM",
+ "Rotemliss",
+ "YaronSh",
+ "Guycn2"
+ ]
+ },
+ "babel": "מידע על כישורי שפה של המשתמש",
+ "babel-desc": "הוספת הפונקציה <code>#babel</code> כדי לאפשר יצירה אוטומטית של תיבות משתמש לציון כישורי שפה, עם אפשרות להכללת תבניות מותאמות אישית",
+ "babel-url": "Project:כישורי שפה",
+ "babel-footer-url": ":קטגוריה:בבל: משתמשים לפי שפה",
+ "babel-autocreate-abort": "שם המשתמש שציינת משמש ליצירה אוטומטית של קטגוריות [[$1|כישורי שפה]], ולכן לא ניתן לרשום אותו.",
+ "babel-autocreate-reason": "מתבצעת יצירה אוטומטית של דף קטגוריה ל[[$1|כישורי שפה]].",
+ "babel-autocreate-text-levels": "המשתמשים בקטגוריה זו מציינים כי הרמה שלהם ב{{GRAMMAR:תחילית|$2}} היא $1.",
+ "babel-autocreate-text-main": "המשתמשים בקטגוריה זו מציינים כי יש להם ידע ב{{GRAMMAR:תחילית|$1}}.",
+ "babel-autocreate-user": "יצירה אוטומטית של כישורי שפה",
+ "babel-0": "{{GENDER:$4|משתמש זה [[$1|אינו מבין]]|משתמשת זו [[$1|אינה מבינה]]}} [[$2|$3]] (או {{GENDER:$4|מבין|מבינה}} אותה בקשיים ניכרים).",
+ "babel-1": "{{GENDER:$4|משתמש זה יודע|משתמשת זו יודעת}} [[$2|$3]] ברמה [[$1|בסיסית]].",
+ "babel-2": "{{GENDER:$4|משתמש זה יודע|משתמשת זו יודעת}} [[$2|$3]] ברמה [[$1|בינונית]].",
+ "babel-3": "{{GENDER:$4|משתמש זה יודע|משתמשת זו יודעת}} [[$2|$3]] ברמה [[$1|מתקדם]].",
+ "babel-4": "{{GENDER:$4|משתמש זה דובר|משתמשת זו דוברת}} [[$2|$3]] ברמה [[$1|קרובה לשפת אם]].",
+ "babel-5": "{{GENDER:$4|משתמש זה יודע|משתמשת זו יודעת}} [[$2|$3]] ברמה [[$1|מקצועית]].",
+ "babel-N": "{{GENDER:$4|משתמש זה דובר|משתמשת זו דוברת}} [[$2|$3]] כ[[$1|שפת אם]].",
+ "babel-0-n": "{{GENDER:$4|משתמש זה [[$1|אינו מבין]]|משתמשת זו [[$1|אינה מבינה]]}} [[$2|עברית]] (או {{GENDER:$4|מבין|מבינה}} אותה בקשיים ניכרים).",
+ "babel-1-n": "{{GENDER:$4|משתמש זה יודע|משתמשת זו יודעת}} [[$2|עברית]] ברמה [[$1|בסיסית]].",
+ "babel-2-n": "{{GENDER:$4|משתמש זה יודע|משתמשת זו יודעת}} [[$2|עברית]] ברמה [[$1|בינונית]].",
+ "babel-3-n": "{{GENDER:$4|משתמש זה יודע|משתמשת זו יודעת}} [[$2|עברית]] ברמה [[$1|מתקדמת]].",
+ "babel-4-n": "{{GENDER:$4|משתמש זה יודע|משתמשת זו יודעת}} [[$2|עברית]] ברמה [[$1|קרובה לשפת אם]].",
+ "babel-5-n": "{{GENDER:$4|משתמש זה יודע|משתמשת זו יודעת}} [[$2|עברית]] ברמה [[$1|מקצועית]].",
+ "babel-N-n": "{{GENDER:$4|משתמש זה דובר|משתמשת זו דוברת}} [[$2|עברית]] כ[[$1|שפת אם]].",
+ "babel-footer": "משתמשים לפי שפה"
+}
diff --git a/MLEB/Babel/i18n/hi.json b/MLEB/Babel/i18n/hi.json
new file mode 100644
index 00000000..0466c011
--- /dev/null
+++ b/MLEB/Babel/i18n/hi.json
@@ -0,0 +1,35 @@
+{
+ "@metadata": {
+ "authors": [
+ "Bhawani Gautam",
+ "Bhawani Gautam Rhk",
+ "Kaustubh",
+ "Pooja.srivastava",
+ "Siddhartha Ghai"
+ ]
+ },
+ "babel": "बेबल सदस्य जानकारी",
+ "babel-desc": "बेबल सदस्य बक्से के कॉलम को स्वचालित रूप से बनाने के लिए <code>#babel</code> पार्सर फ़ंक्शन जोड़ता है। इसमें विशिष्ट सदस्य बक्से साँचे भी दिये जा सकते हैं।",
+ "babel-url": "Project:बेबल",
+ "babel-footer-url": ":Category:बेबल - भाषा के आधार पर सदस्य",
+ "babel-autocreate-abort": "आपके द्वारा निर्दिष्ट सदस्यनाम [[$1|बेबल]] द्वारा स्वचालित श्रेणी निर्माण के लिए प्रयोग होता है और पंजीकृत नहीं किया जा सकता।",
+ "babel-autocreate-reason": "स्वचालित रूप से बनाया गया [[$1|बेबल]] श्रेणी पृष्ठ।",
+ "babel-autocreate-text-levels": "इस श्रेणी में श्रेणीबद्ध सदस्यों ने यह बताया है कि $2 भाषा में उनका कुशलता स्तर $1 है।",
+ "babel-autocreate-text-main": "इस श्रेणी में श्रेणीबद्ध सदस्यों ने यह बताया है कि उन्हें $1 भाषा का ज्ञान है।",
+ "babel-0": "इस सदस्य को [[$2|$3]] का ज्ञान [[$1|नहीं]] है (अथवा समझने में बहुत परेशानी होती है)।",
+ "babel-1": "इस सदस्य को [[$2|$3]] का [[$1|प्राथमिक]] ज्ञान है।",
+ "babel-2": "इस सदस्य को [[$2|$3]] का [[$1|मध्यम स्तर]] का ज्ञान है।",
+ "babel-3": "इस सदस्य को [[$2|$3]] का [[$1|उच्च स्तर]] का ज्ञान है।",
+ "babel-4": "इस सदस्य को [[$2|$3]] का [[$1|लगभग मातृभाषी स्तर]] का ज्ञान है।",
+ "babel-5": "इस सदस्य को [[$2|$3]] का [[$1|व्यावसायिक स्तर]] का ज्ञान है।",
+ "babel-N": "इस सदस्य को [[$2|$3]] का [[$1|मातृभाषी के सामान]] ज्ञान है।",
+ "babel-0-n": "इस सदस्य को [[$2|हिन्दी]] का ज्ञान [[$1|नहीं]] है (अथवा समझने में बहुत परेशानी होती है)।",
+ "babel-1-n": "इस सदस्य को [[$2|हिन्दी]] का [[$1|प्राथमिक]] ज्ञान है।",
+ "babel-2-n": "इस सदस्य को [[$2|हिन्दी]] का [[$1|मध्यम स्तर]] का ज्ञान है।",
+ "babel-3-n": "इस सदस्य को [[$2|हिन्दी]] का [[$1|उच्च स्तर]] का ज्ञान है।",
+ "babel-4-n": "इस सदस्य को [[$2|हिन्दी]] का [[$1|लगभग मातृभाषी स्तर]] का ज्ञान है।",
+ "babel-5-n": "इस सदस्य को [[$2|हिन्दी]] का [[$1|व्यावसायिक स्तर]] का ज्ञान है।",
+ "babel-N-n": "इस सदस्य को [[$2|हिन्दी]] का [[$1|मातृभाषी के सामान]] ज्ञान है।",
+ "babel-template": "Template:सदस्य $1",
+ "babel-footer": "भाषा अनुसार सदस्य"
+}
diff --git a/MLEB/Babel/i18n/hif-latn.json b/MLEB/Babel/i18n/hif-latn.json
new file mode 100644
index 00000000..a72708bc
--- /dev/null
+++ b/MLEB/Babel/i18n/hif-latn.json
@@ -0,0 +1,30 @@
+{
+ "@metadata": {
+ "authors": [
+ "Girmitya"
+ ]
+ },
+ "babel": "Babel sadasya ke jaankari",
+ "babel-desc": "Ii <code>#babel</code> parser function ke jorre hae jisse babel ke sadasya box ke column apne se ban jaawe hae, aue isse custom template banawa jaae sake hae",
+ "babel-url": "Project:Babel",
+ "babel-footer-url": ":Category:Babel - Bhasa ke aadhar pe sadasya",
+ "babel-autocreate-abort": "Jon sadasya ke naam ke aap diya hae ke [[$1|Babel]] category auto-creation ke khaatir kaam me lawa jaawe hae aur register nai karaa jaae sake hae.",
+ "babel-autocreate-reason": "Apne se [[$1|Babel]] vibhag ke banawa jaae hae",
+ "babel-autocreate-text-levels": "Ii vibhag ke sadasya ke lage $2 bhasa ke khaatir $1 ke baraabar ke jaankari hae.",
+ "babel-autocreate-text-main": "Ii vibhag ke sadasya ii batae hae ki uske lage bhasa $1 ke jaankari hae.",
+ "babel-0": "Ii sadasya ke lage [[$2|$3]] ke [[$1|kuchh nai]] jaankari nai hae (nai to ii bhasa ke bahut muskil se samjhe hae).",
+ "babel-1": "Ii sadasya ke lage [[$2|$3]] ke [[$1|khaali thorraa]] jaankari hae.",
+ "babel-2": "Ii sadasya ke lage [[$2|$3]] ke [[$1|samjhe bhar ke]] jaankari hae.",
+ "babel-3": "Ii sadasya ke lage [[$2|$3]] ke [[$1|achchhaa]] jaankari hae.",
+ "babel-4": "Ii sadasya ke lage [[$2|$3]] ke [[$1|lagbhag bachpan ke bhasa ke rakam ke]] jaankari hae.",
+ "babel-5": "Ii sadasya ke lage [[$2|$3]] ke [[$1|khaas]] jaankari hae.",
+ "babel-N": "Ii sadasya ke lage [[$2|$3]] ke [[$1|bachpan ke bhasa ke rakam ke]] jaankari hae.",
+ "babel-0-n": "Ii sadasya ke lage [[$2|English]] ke [[$1|kuchh nai]] jaankari nai hae (nai to ii bhasa ke bahut muskil se samjhe hae).",
+ "babel-1-n": "Ii sadasya ke lage [[$2|English]] ke [[$1|khaali thorraa]] jaankari hae.",
+ "babel-2-n": "Ii sadasya ke lage [[$2|English]] ke [[$1|samjhe bhar ke]] jaankari hae.",
+ "babel-3-n": "Ii sadasya ke lage [[$2|English]] ke [[$1|achchhaa]] jaankari hae.",
+ "babel-4-n": "Ii sadasya ke lage [[$2|English]] ke [[$1|lagbhag bachpan ke bhasa ke rakam ke]] jaankari hae.",
+ "babel-5-n": "Ii sadasya ke lage [[$2|English]] ke [[$1|khaas]] jaankari hae.",
+ "babel-N-n": "Ii sadasya ke lage [[$2|English]] ke [[$1|bachpan ke bhasa ke rakam ke]] jaankari hae.",
+ "babel-footer": "Bhasa ke aadhaar pe sadasya"
+}
diff --git a/MLEB/Babel/i18n/hil.json b/MLEB/Babel/i18n/hil.json
new file mode 100644
index 00000000..3858b087
--- /dev/null
+++ b/MLEB/Babel/i18n/hil.json
@@ -0,0 +1,29 @@
+{
+ "@metadata": {
+ "authors": [
+ "Kguirnela",
+ "Tagimata"
+ ]
+ },
+ "babel": "Inpormasyon sang Babel naga-usar",
+ "babel-desc": "Gadugang sang <code>#babel</code> parser nga gagana para magamit nga henerasyon automatiko sang babel userbox kolum upod sang abilidad para maintra sa kustom templeyts",
+ "babel-url": "Project:Babel",
+ "babel-autocreate-abort": "Ang usarngalan nga imo gina-klaro ay ginagamit para [[$1|Babel]] auto-himo nga kategorya kag indi ni pwede marehistro.",
+ "babel-autocreate-reason": "Automatiko nga ginahimo [[$1|Babel]] pahina kategorya.",
+ "babel-autocreate-text-levels": "Mga naga-usar sa sini nga kategorya nagapakita nga may-ara sila kasarang lebel $1 para sa lengwahe $2.",
+ "babel-autocreate-text-main": "Mga user sa sini nga kategorya nagapakita nga may-ara sila ka-alam lebel $1.",
+ "babel-0": "Ini nga naga-usar ay may-ara [[$1|wala]] ka-alam sang [[$2|$3]] (o maka-intindi sini nga may daku nga pagkabudlayan).",
+ "babel-1": "Ini nga naga-usar ay may-ara [[$1|simpli]] ka-alam sang [[$2|$3]].",
+ "babel-2": "Ini nga naga-usar ay may-ara [[$1|ensaktohanon]] ka-alam sang [[$2|$3]].",
+ "babel-3": "Ini nga naga-usar ay may-ara [[$1|madalum]] ka-alam sang [[$2|$3]].",
+ "babel-4": "Ini nga naga-usar ay may-ara [[$1|lapit sa gahambal nga nitibo]] ka-alam sang [[$2|$3]].",
+ "babel-5": "Ini nga naga-usar ay may-ara [[$1|propesyonal]] ka-alam sang [[$2|$3]].",
+ "babel-N": "Ini nga naga-usar ay may-ara [[$1|nitibo]] ka-alam sang [[$2|$3]].",
+ "babel-0-n": "Ini nga naga-usar ay may-ara [[$1|wala]] ka-alam sang [[$2|Hiligaynon]] (o maka-intindi sini nga may daku nga pagkabudlayan).",
+ "babel-1-n": "Ini nga naga-usar ay may-ara [[$1|simpli]] ka-alam sang [[$2|Hiligaynon]].",
+ "babel-2-n": "Ini nga naga-usar ay may-ara [[$1|ensaktohanon]] ka-alam sang [[$2|Hiligaynon]].",
+ "babel-3-n": "Ini nga naga-usar ay may-ara [[$1|madalum]] ka-alam sang [[$2|Hiligaynon]].",
+ "babel-4-n": "Ini nga naga-usar ay may-ara [[$1|lapit sa gahambal nga nitibo]] ka-alam sang [[$2|Hiligaynon]].",
+ "babel-5-n": "Ini nga naga-usar ay may-ara [[$1|propesyonal]] ka-alam sang [[$2|Hiligaynon]].",
+ "babel-N-n": "Ini nga naga-usar ay may-ara [[$1|nitibo]] ka-alam sang [[$2|Hiligaynon]]."
+}
diff --git a/MLEB/Babel/i18n/hr.json b/MLEB/Babel/i18n/hr.json
new file mode 100644
index 00000000..2975fd70
--- /dev/null
+++ b/MLEB/Babel/i18n/hr.json
@@ -0,0 +1,32 @@
+{
+ "@metadata": {
+ "authors": [
+ "Ex13",
+ "Herr Mlinka",
+ "Conquistador"
+ ]
+ },
+ "babel": "babilonske suradničke informacije",
+ "babel-desc": "Dodaje parsersku funkciju <code>#babel</code> da omogući automatsko generiranje stupca s babilonskim suradničkim okvirima s mogućnošću uključenja predložaka po želji",
+ "babel-url": "Project:Babilon",
+ "babel-footer-url": ":Kategorija:Babilon – suradnici po jeziku",
+ "babel-autocreate-abort": "Navedeno suradničko ime rabi se za automatsko stvaranje kategorije [[$1|Babilon]] i ne može se registrirati.",
+ "babel-autocreate-reason": "Automatsko stvaranje stranice kategorije [[$1|babel]].",
+ "babel-autocreate-text-levels": "Suradnici u ovoj kategoriji ukazuju da su vješti na razini $1 za jezik $2.",
+ "babel-autocreate-text-main": "Suradnici u ovoj kategoriji ukazuju da imaju znanje jezika $1.",
+ "babel-0": "{{GENDER:$4|Ovaj suradnik|Ova suradnica}} [[$1|ne]] zna [[$2|$3]] (ili ga razumije prilično otežano).",
+ "babel-1": "{{GENDER:$4|Ovaj suradnik|Ova suradnica}} ima [[$1|osnovno]] znanje [[$2|$3]].",
+ "babel-2": "{{GENDER:$4|Ovaj suradnik|Ova suradnica}} ima [[$1|osrednje]] znanje [[$2|$3]].",
+ "babel-3": "{{GENDER:$4|Ovaj suradnik|Ova suradnica}} ima [[$1|napredno]] znanje [[$2|$3]].",
+ "babel-4": "{{GENDER:$4|Ovaj suradnik|Ova suradnica}} poznaje [[$2|$3]] [[$1|gotovo kao izvorni govornik]].",
+ "babel-5": "{{GENDER:$4|Ovaj suradnik|Ova suradnica}} ima [[$1|profesionalno]] znanje [[$2|$3]].",
+ "babel-N": "{{GENDER:$4|Ovaj suradnik|Ova suradnica}} govori [[$2|$3]] kao [[$1|materinskim jezikom]].",
+ "babel-0-n": "{{GENDER:$4|Ovaj suradnik|Ova suradnica}} [[$1|ne]] govori [[$2|hrvatski jezik]] (ili ga razumije prilično otežano).",
+ "babel-1-n": "{{GENDER:$4|Ovaj suradnik|Ova suradnica}} ima [[$1|osnovno]] znanje [[$2|hrvatskog jezika]].",
+ "babel-2-n": "{{GENDER:$4|Ovaj suradnik|Ova suradnica}} ima [[$1|osrednje]] znanje [[$2|hrvatskog jezika]].",
+ "babel-3-n": "{{GENDER:$4|Ovaj suradnik|Ova suradnica}} ima [[$1|napredno]] znanje [[$2|hrvatskog jezika]].",
+ "babel-4-n": "{{GENDER:$4|Ovaj suradnik|Ova suradnica}} poznaje [[$2|hrvatski jezik]] [[$1|gotovo kao izvorni govornik]].",
+ "babel-5-n": "{{GENDER:$4|Ovaj suradnik|Ova suradnica}} posjeduje [[$1|profesionalno]] znanje [[$2|hrvatskog jezika]].",
+ "babel-N-n": "{{GENDER:$4|Ovaj suradnik|Ova suradnica}} govori [[$2|hrvatski]] kao [[$1|materinski jezik]].",
+ "babel-footer": "suradnici po jeziku"
+}
diff --git a/MLEB/Babel/i18n/hsb.json b/MLEB/Babel/i18n/hsb.json
new file mode 100644
index 00000000..f26d792b
--- /dev/null
+++ b/MLEB/Babel/i18n/hsb.json
@@ -0,0 +1,30 @@
+{
+ "@metadata": {
+ "authors": [
+ "Michawiki"
+ ]
+ },
+ "babel": "Babelowe wužiwarske informacije",
+ "babel-desc": "Přidawa parserowu funkciju <code>#babel</code> za awtomatiske wutworjenje špalty z babelowymi wužiwarskimi kašćikami, z móžnosću, swójske předłohi zapřijeć",
+ "babel-url": "Project:Babel",
+ "babel-footer-url": ":Category:Babel - Wužiwarjo po rěči",
+ "babel-autocreate-abort": "Podate wužiwarske mjeno wužiwa so za awtomatiske wutworjenje [[$1|Babelowych]] kategorijow a njeda so registrować.",
+ "babel-autocreate-reason": "Awtomatiske wutworjenje [[$1|Babeloweje]] kategorije.",
+ "babel-autocreate-text-levels": "Wužiwarjo w tutej kategoriji podawaja, zo maja stopjeń znajomosćow $1 za rěč $2.",
+ "babel-autocreate-text-main": "Wužiwarjo w tutej kategoriji podawaja, zo maja znajomosće rěče $1.",
+ "babel-0": "Tutón wužiwar nima [[$1|žane]] znajomosće [[$2|$3]] (abo rozumi ju jenož z wulkimi ćežemi).",
+ "babel-1": "Tutón wužiwar ma [[$1|zakładne]] znajomosće [[$2|$3]].",
+ "babel-2": "Tutón wužiwar ma [[$1|přerězne]] znajomosće [[$2|$3]].",
+ "babel-3": "Tutón wužiwar ma [[$1|pokročene]] znajomosće [[$2|$3]].",
+ "babel-4": "Tutón wužiwar ma znajomosće [[$2|$3]] na [[$1|maćernorěčnym niwowje]].",
+ "babel-5": "Tutón wužiwar ma [[$1|profesionelne]] znajomosće [[$2|$3]].",
+ "babel-N": "[[$1|Maćeršćina]] tutoho wužiwarja je [[$2|$3]].",
+ "babel-0-n": "Tutón wužiwar nima [[$1|žane]] znajomosće [[$2|hornjoserbšćiny]] (abo rozumi ju jenož z wulkimi ćežemi).",
+ "babel-1-n": "Tutón wužiwar ma [[$1|zakładne]] znajomosće [[$2|hornjoserbšćiny]].",
+ "babel-2-n": "Tutón wužiwar ma [[$1|přerězne]] znajomosće [[$2|hornjoserbšćiny]].",
+ "babel-3-n": "Tutón wužiwar ma [[$1|pokročene]] znajomosće [[$2|hornjoserbšćiny]]",
+ "babel-4-n": "Tutón wužiwar [[$2|hornjoserbšćinu]] kaž [[$1|maćernorěčnik]] wobknježi.",
+ "babel-5-n": "Tutón wužiwar ma [[$1|profesionelne]] znajomosće [[$2|hornjoserbšćiny]].",
+ "babel-N-n": "Tutón wužiwar rěči [[$2|hornjoserbšćinu]] jako [[$1|maćeršćinu]].",
+ "babel-footer": "Wužiwarjo po rěči"
+}
diff --git a/MLEB/Babel/i18n/ht.json b/MLEB/Babel/i18n/ht.json
new file mode 100644
index 00000000..37345955
--- /dev/null
+++ b/MLEB/Babel/i18n/ht.json
@@ -0,0 +1,25 @@
+{
+ "@metadata": {
+ "authors": [
+ "Boukman",
+ "Masterches"
+ ]
+ },
+ "babel": "Enfòmasyon sou itilizatè Babel",
+ "babel-desc": "Ap ajoute yon fonksyon pasè <code>#babel</code> ki ap pèmèt kreyasyon otomatik de yon bwat itilizatè Babel ak posibilite mete anndan l modèl definisyon lokal, tankou lang itilizatè a pale.",
+ "babel-url": "Project:Babèl",
+ "babel-0": "Itilizatè sa [[$1|pa genyen]] konesans nan [[$2|$3]] (oubyen li ap konprann ak anpil difikilte).",
+ "babel-1": "Itilizatè sa genyen [[$1|kèk baz]] nan [[$2|$3]].",
+ "babel-2": "Itilizatè sa genyen [[$1|yon nivo entèmedyè]] nan [[$2|$3]].",
+ "babel-3": "Itilizatè sa genyen [[$1|yon nivo avanse]] nan [[$2|$3]].",
+ "babel-4": "Itilizatè sa pale [[$2|$3]] près tankou l te [[$1|lang matènèl l]].",
+ "babel-5": "Itilizatè sa genyen [[$1|nivo pwofesyonèl]] nan [[$2|$3]].",
+ "babel-N": "Itilizatè sa konprann [[$2|$3]] tankou l te [[$1|lang matènèl l]].",
+ "babel-0-n": "Itilizatè sa [[$1|pa konnen anyen]] nan [[$2|Kreyòl ayisyen]] (oubyen li ap konprann li ak anpil anpil difikilte)",
+ "babel-1-n": "Itilizatè sa [[$1|konnen kèk baz]] nan [[$2|Kreyòl ayisyen]].",
+ "babel-2-n": "Itilizatè sa [[$1|genyen yon nivo entèmedyè]] nan [[$2|Kreyòl ayisyen]].",
+ "babel-3-n": "Itilizatè sa [[$1|genyen nivo avanse]] nan [[$2|Kreyòl ayisyen]].",
+ "babel-4-n": "Itilizatè sa pale [[$2|Kreyòl ayisyen]] près tankou li te [[$1|lang matènèl l]].",
+ "babel-5-n": "Itilizatè sa genyen [[$1|nivo pwofesyonèl]] nan [[$2|Kreyòl ayisyen]].",
+ "babel-N-n": "Itilizatè sa pale [[$2|Kreyòl ayisyen]] tankou li te [[$1|lang matènèl l]]."
+}
diff --git a/MLEB/Babel/i18n/hu-formal.json b/MLEB/Babel/i18n/hu-formal.json
new file mode 100644
index 00000000..763cdbd2
--- /dev/null
+++ b/MLEB/Babel/i18n/hu-formal.json
@@ -0,0 +1,22 @@
+{
+ "@metadata": {
+ "authors": [
+ "Tacsipacsi"
+ ]
+ },
+ "babel-autocreate-abort": "Az ön által választott nevet a [[$1|bábelkategóriák]] automatikus létrehozásához használjuk, így nem lehet regisztrálni.",
+ "babel-0": "Ez a szerkesztő [[$1|nem]] beszéli a(z) [[$2|$3]] nyelvet (vagy csak nagy nagyon nehezen érti meg).",
+ "babel-1": "Ez a szerkesztő [[$1|alapszinten]] beszéli a(z) [[$2|$3]] nyelvet.",
+ "babel-2": "Ez a szerkesztő [[$1|középszinten]] beszéli a(z) [[$2|$3]] nyelvet.",
+ "babel-3": "Ez a szerkesztő [[$1|haladó]] szinten beszéli a(z) [[$2|$3]] nyelvet.",
+ "babel-4": "Ez a szerkesztő [[$1|közel anyanyelvi]] szinten beszéli a(z) [[$2|$3]] nyelvet.",
+ "babel-5": "Ez a szerkesztő [[$1|professzionális]] szinten beszéli a(z) [[$2|$3]] nyelvet.",
+ "babel-N": "Ennek a szerkesztőnek [[$2|$3]] az [[$1|anyanyelve]].",
+ "babel-0-n": "Ez a szerkesztő [[$1|nem]] beszéli a [[$2|magyar (magázó)]] nyelvet (vagy csak nagyon nehezen érti meg).",
+ "babel-1-n": "Ez a szerkesztő [[$1|alapszinten]] beszéli a [[$2|magyar (magázó)]] nyelvet.",
+ "babel-2-n": "Ez a szerkesztő [[$1|középszinten]] beszéli a [[$2|magyar (magázó)]] nyelvet.",
+ "babel-3-n": "Ez a szerkesztő [[$1|haladó]] szinten beszéli a [[$2|magyar (magázó)]] nyelvet.",
+ "babel-4-n": "Ez a szerkesztő [[$1|közel anyanyelvi]] szinten beszéli a [[$2|magyar (magázó)]] nyelvet.",
+ "babel-5-n": "Ez a szerkesztő [[$1|professzionális]] szinten beszéli a [[$2|magyar (magázó)]] nyelvet.",
+ "babel-N-n": "Ennek a szerkesztőnek [[$2|magyar (magázó)]] az [[$1|anyanyelve]]."
+}
diff --git a/MLEB/Babel/i18n/hu.json b/MLEB/Babel/i18n/hu.json
new file mode 100644
index 00000000..b525aa65
--- /dev/null
+++ b/MLEB/Babel/i18n/hu.json
@@ -0,0 +1,33 @@
+{
+ "@metadata": {
+ "authors": [
+ "Dani",
+ "Dj",
+ "Glanthor Reviol",
+ "Xbspiro"
+ ]
+ },
+ "babel": "Bábel szerkesztői információk",
+ "babel-desc": "<code>#babel</code> értelmes függvény bábel-információkat tartalmazó oszlop automatikus generálásához, saját sablononok beillesztésének lehetőségével",
+ "babel-url": "Project:Bábel",
+ "babel-footer-url": ":Category:Bábel – Felhasználók nyelvek szerint",
+ "babel-autocreate-abort": "Az általad választott nevet a [[$1|bábelkategóriák]] automatikus létrehozásához használjuk, így nem lehet regisztrálni.",
+ "babel-autocreate-reason": "[[$1|Bábel]]kategória-oldal automatikus létrehozása.",
+ "babel-autocreate-text-levels": "Az ebben a kategóriában szereplő szerkesztők $1 szinten beszélik a(z) $2 nyelvet.",
+ "babel-autocreate-text-main": "Az ebben a kategóriában szereplő szerkesztők valamilyen szinten beszélik a(z) $1 nyelvet.",
+ "babel-0": "Ez a szerkesztő [[$1|nem]] beszéli a(z) [[$2|$3]] nyelvet (vagy csak nagy nagyon nehezen érti meg).",
+ "babel-1": "Ez a szerkesztő [[$1|alapszinten]] beszéli a(z) [[$2|$3]] nyelvet.",
+ "babel-2": "Ez a szerkesztő [[$1|középszinten]] beszéli a(z) [[$2|$3]] nyelvet.",
+ "babel-3": "Ez a szerkesztő [[$1|haladó]] szinten beszéli a(z) [[$2|$3]] nyelvet.",
+ "babel-4": "Ez a szerkesztő [[$1|közel anyanyelvi]] szinten beszéli a(z) [[$2|$3]] nyelvet.",
+ "babel-5": "Ez a szerkesztő [[$1|professzionális]] szinten beszéli a(z) [[$2|$3]] nyelvet.",
+ "babel-N": "Ennek a szerkesztőnek [[$2|$3]] az [[$1|anyanyelve]].",
+ "babel-0-n": "Ez a szerkesztő [[$1|nem]] beszéli a [[$2|magyar]] nyelvet (vagy csak nagyon nehezen érti meg).",
+ "babel-1-n": "Ez a szerkesztő [[$1|alapszinten]] beszéli a [[$2|magyar]] nyelvet.",
+ "babel-2-n": "Ez a szerkesztő [[$1|középszinten]] beszéli a [[$2|magyar]] nyelvet.",
+ "babel-3-n": "Ez a szerkesztő [[$1|haladó]] szinten beszéli a [[$2|magyar]] nyelvet.",
+ "babel-4-n": "Ez a szerkesztő [[$1|közel anyanyelvi]] szinten beszéli a [[$2|magyar]] nyelvet.",
+ "babel-5-n": "Ez a szerkesztő [[$1|professzionális]] szinten beszéli a [[$2|magyar]] nyelvet.",
+ "babel-N-n": "Ennek a szerkesztőnek [[$2|magyar]] az [[$1|anyanyelve]].",
+ "babel-footer": "Szerkesztők nyelvek szerint"
+}
diff --git a/MLEB/Babel/i18n/hy.json b/MLEB/Babel/i18n/hy.json
new file mode 100644
index 00000000..afcfbc25
--- /dev/null
+++ b/MLEB/Babel/i18n/hy.json
@@ -0,0 +1,30 @@
+{
+ "@metadata": {
+ "authors": [
+ "Pandukht",
+ "Teak",
+ "Togaed"
+ ]
+ },
+ "babel": "Մասնակցի լեզուների տվյլաները (Բաբելոն)",
+ "babel-desc": "Ավելացնում է <code>#babel</code> պարսեր ֆունկցիան, որը թույլ է տալիս ավտոմատիկ կերպով ստեղծել մասնակցի լեզուների տվյալներով սյունյակ՝ այլ կաղապարների ընդգրկման հնարավորությամբ",
+ "babel-url": "Project:Բաբելոն",
+ "babel-autocreate-abort": "Նշված մասնակցի անունը օգտագործվում է Բաբելոն կատեգորիաների ավտոմատիկ ստեղծման համար և չի կարող գրանցվել։",
+ "babel-autocreate-reason": "Բաբելոն կատեգորիաների էջերի ավտոմատիկ ստեղծում։",
+ "babel-autocreate-text-levels": "Այս կատեգորիայի մասնակիցները նշել են մակարդակ $1 իմացություն $2 լեզվի համար։",
+ "babel-autocreate-text-main": "Այս կատեգորիայի մասնակիցները նշել են $1 լեզվի իմացություն։",
+ "babel-0": "[[$2|$3]] — [[$1|չի տիրապետում]] (կամ հասկանում է դժվարությամբ)։",
+ "babel-1": "[[$2|$3]] ― [[$1|սկզբնական իմացություն]]",
+ "babel-2": "[[$2|$3]] — [[$1|միջին իմացություն]]",
+ "babel-3": "[[$2|$3]] — [[$1|լավ իմացություն]]",
+ "babel-4": "[[$2|$3]] — [[$1|համարյա մայրենի իմացություն]]",
+ "babel-5": "[[$2|$3]] — [[$1|մասնագետի իմացություն]]",
+ "babel-N": "[[$2|$3]] — [[$1|մայրենի տիրապետում]]",
+ "babel-0-n": "[[$2|Հայերեն]] — [[$1|չի տիրապետում]] (կամ հասկանում է դժվարությամբ)։",
+ "babel-1-n": "[[$2|Հայերեն]] ― [[$1|սկզբնական իմացություն]]",
+ "babel-2-n": "[[$2|Հայերեն]] — [[$1|միջին իմացություն]]",
+ "babel-3-n": "[[$2|Հայերեն]] — [[$1|լավ իմացություն]]",
+ "babel-4-n": "[[$2|Հայերեն]] — [[$1|համարյա մայրենի իմացություն]]",
+ "babel-5-n": "[[$2|Հայերեն]] — [[$1|մասնագետի իմացություն]]",
+ "babel-N-n": "[[$2|Հայերենը]] այս անձի [[$1|մայրենի լեզուն]] է։"
+}
diff --git a/MLEB/Babel/i18n/ia.json b/MLEB/Babel/i18n/ia.json
new file mode 100644
index 00000000..505452ca
--- /dev/null
+++ b/MLEB/Babel/i18n/ia.json
@@ -0,0 +1,32 @@
+{
+ "@metadata": {
+ "authors": [
+ "Malafaya",
+ "McDutchie"
+ ]
+ },
+ "babel": "Informationes Babel del usator",
+ "babel-desc": "Adde le function <code>#babel</code> al analysator syntactic, pro permitter le generation automatic de un columna con un quadro de usator 'Babel' con le capacitate de includer patronos personalisate.",
+ "babel-url": "Project:Babel",
+ "babel-footer-url": ":Category:Babel - Usatores per lingua",
+ "babel-autocreate-abort": "Le nomine de usator que tu ha specificate es usate pro le creation automatic de categorias [[$1|Babel]] e non pote esser registrate.",
+ "babel-autocreate-reason": "Le pagina del categoria [[$1|Babel]] ha essite create automaticamente.",
+ "babel-autocreate-text-levels": "Le usatores in iste categoria declara haber un nivello de cognoscentia $1 del lingua $2.",
+ "babel-autocreate-text-main": "Le usatores in iste categoria declara haber cognoscentia del lingua $1.",
+ "babel-0": "Iste usator ha [[$1|nulle]] cognoscentia de [[$2|$3]] (o lo comprende con difficultates considerabile).",
+ "babel-1": "Iste usator ha cognoscentias [[$1|de base]] de [[$2|$3]].",
+ "babel-2": "Iste usator ha cognoscentias [[$1|medie]] de [[$2|$3]].",
+ "babel-3": "Iste usator ha cognoscentias [[$1|avantiate]] de [[$2|$3]].",
+ "babel-4": "Iste usator ha cognoscentias a nivello [[$1|quasi native]] de [[$2|$3]].",
+ "babel-5": "Iste usator ha cognoscentias [[$1|professional]] de [[$2|$3]].",
+ "babel-N": "Iste usator ha cognoscentias a nivello [[$1|native]] de [[$2|$3]].",
+ "babel-0-n": "Iste usator ha [[$1|nulle]] cognoscentia de [[$2|interlingua]] (o lo comprende con difficultate considerabile).",
+ "babel-1-n": "Iste usator ha cognoscentias [[$1|de base]] de [[$2|interlingua]].",
+ "babel-2-n": "Iste usator ha cognoscentias [[$1|medie]] de [[$2|interlingua]].",
+ "babel-3-n": "Iste usator ha cognoscentias [[$1|avantiate]] de [[$2|interlingua]].",
+ "babel-4-n": "Iste usator ha cognoscentias a nivello [[$1|quasi native]] de [[$2|interlingua]].",
+ "babel-5-n": "Iste usator ha cognoscentias [[$1|professional]] de [[$2|interlingua]].",
+ "babel-N-n": "Iste usator ha cognoscentias a nivello [[$1|native]] de [[$2|interlingua]].",
+ "babel-template": "Template:$1",
+ "babel-footer": "Usatores per lingua"
+}
diff --git a/MLEB/Babel/i18n/id.json b/MLEB/Babel/i18n/id.json
new file mode 100644
index 00000000..5c1b1851
--- /dev/null
+++ b/MLEB/Babel/i18n/id.json
@@ -0,0 +1,37 @@
+{
+ "@metadata": {
+ "authors": [
+ "Aldnonymous",
+ "Bennylin",
+ "IvanLanin",
+ "Iwan Novirion",
+ "Meursault2004",
+ "Rex"
+ ]
+ },
+ "babel": "Informasi pengguna Babel",
+ "babel-desc": "Menambahkan fungsi parser <code>#babel</code> untuk menampilkan kolom kotak pengguna babel secara otomatis dengan kemampuan menggunakan templat yang dikustomisasi",
+ "babel-url": "Project:Babel",
+ "babel-footer-url": ":Category:Babel - Pengguna menurut bahasa",
+ "babel-autocreate-abort": "Nama pengguna yang Anda masukkan digunakan untuk pembuatan otomatis kategori [[$1|Babel]] dan tidak dapat didaftarkan.",
+ "babel-autocreate-reason": "Otomatis membuat halaman kategori [[$1|Babel]].",
+ "babel-autocreate-text-levels": "Pengguna di kategori ini menandakan mereka memiliki kemampuan $1 untuk bahasa $2.",
+ "babel-autocreate-text-main": "Pengguna di kategori ini menandakan mereka memiliki kemampuan berbahasa $1.",
+ "babel-autocreate-user": "Babel AutoCreate",
+ "babel-0": "Pengguna ini [[$1|tidak]] mengerti [[$2|$3]] (atau hanya dengan sangat sulit).",
+ "babel-1": "Pengguna ini mampu bersumbangsih dengan [[$2|$3]] tingkat [[$1|dasar]].",
+ "babel-2": "Pengguna ini mampu bersumbangsih dengan [[$2|$3]] tingkat [[$1|menengah]].",
+ "babel-3": "Pengguna ini mampu bersumbangsih dengan [[$2|$3]] tingkat [[$1|mahir]].",
+ "babel-4": "Pengguna ini mampu bersumbangsih dengan [[$2|$3]] [[$1|mendekati penutur ibu]].",
+ "babel-5": "Pengguna ini memiliki pengetahuan [[$1|profesional]] [[$2|$3]].",
+ "babel-N": "Pengguna ini adalah [[$1|penutur ibu]] [[$2|$3]].",
+ "babel-0-n": "Pengguna ini [[$1|tidak]] mengerti [[$2|bahasa Indonesia]] (atau hanya dengan sangat sulit).",
+ "babel-1-n": "Pengguna ini mampu bersumbangsih dengan [[$2|bahasa Indonesia]] tingkat [[$1|dasar]].",
+ "babel-2-n": "Pengguna ini mampu bersumbangsih dengan [[$2|bahasa Indonesia]] tingkat [[$1|menengah]].",
+ "babel-3-n": "Pengguna ini mampu bersumbangsih dengan [[$2|bahasa Indonesia]] tingkat [[$1|mahir]].",
+ "babel-4-n": "Pengguna ini mampu bersumbangsih dengan [[$2|bahasa Indonesia]] [[$1|mendekati penutur ibu]].",
+ "babel-5-n": "Pengguna ini memiliki pengetahuan [[$1|profesional]] [[$2|bahasa Indonesia]].",
+ "babel-N-n": "Pengguna ini adalah [[$1|penutur ibu]] [[$2|bahasa Indonesia]].",
+ "babel-template": "Template:User $1",
+ "babel-footer": "Pengguna berdasarkan bahasa"
+}
diff --git a/MLEB/Babel/i18n/ie.json b/MLEB/Babel/i18n/ie.json
new file mode 100644
index 00000000..dc36b3ad
--- /dev/null
+++ b/MLEB/Babel/i18n/ie.json
@@ -0,0 +1,31 @@
+{
+ "@metadata": {
+ "authors": [
+ "Makuba",
+ "Renan"
+ ]
+ },
+ "babel": "Babel – Usatoral informationes",
+ "babel-desc": "Addí li syntax-analysator <code>#babel</code> por automatic generation de usatoral buxes de »Babel« con li possibilitá includer self-definit avises.",
+ "babel-url": "Project:Babel",
+ "babel-footer-url": ":Category:Babel - Usatores secun lingue",
+ "babel-autocreate-abort": "Li usatoral nómine, quel tu ha specificat, es usat por li auto-creation de [[$1|Babel]]-categories e ne posse esser registrat.",
+ "babel-autocreate-reason": "Automaticamen creant li págine del [[$1|Babel]]-categories.",
+ "babel-autocreate-text-levels": "Usatores in ti categorie indica, que ili have un nivelle de habilitá $1 por lingue $2.",
+ "babel-autocreate-text-main": "Usatores in ti categorie indica, que ili have conossenties de lingue $1.",
+ "babel-0": "Ti usator have [[$1|nequant]] conossentie de [[$2|$3]] (o comprende it con considerabil desfacilitá).",
+ "babel-1": "Ti usator have un [[$1|basic]] conossentie de [[$2|$3]].",
+ "babel-2": "Ti usator have un [[$1|intermediari]] conossentie de [[$2|$3]].",
+ "babel-3": "Ti usator have un [[$1|avansat]] conossentie de [[$2|$3]].",
+ "babel-4": "Ti usator have un conossentie [[$1|proxim a un parlator indigen]] de [[$2|$3]].",
+ "babel-5": "Ti usator have un [[$1|professional]] conossentie de [[$2|$3]].",
+ "babel-N": "Ti usator have un [[$1|indigen]] comprension de [[$2|$3]].",
+ "babel-0-n": "Ti usator have [[$1|nequant]] conossentie de [[$2|Occidental/Interlingue]] (o comprende it con considerabil desfacilitá).",
+ "babel-1-n": "Ti usator have un [[$1|basic]] conossentie de [[$2|Occidental/Interlingue]].",
+ "babel-2-n": "Ti usator have un [[$1|intermediari]] conossentie de [[$2|Occidental/Interlingue]].",
+ "babel-3-n": "Ti usator have un [[$1|avansat]] conossentie de [[$2|Occidental/Interlingue]].",
+ "babel-4-n": "Ti usator have un conossentie [[$1|proxim a un parlator indigen]] de [[$2|Occidental/Interlingue]].",
+ "babel-5-n": "Ti usator have un [[$1|professional]] conossentie de [[$2|Occidental/Interlingue]].",
+ "babel-N-n": "Ti usator have un [[$1|indigen]] comprension de [[$2|Occidental/Interlingue]].",
+ "babel-footer": "Usatores secun lingue"
+}
diff --git a/MLEB/Babel/i18n/ig.json b/MLEB/Babel/i18n/ig.json
new file mode 100644
index 00000000..2b7f0b52
--- /dev/null
+++ b/MLEB/Babel/i18n/ig.json
@@ -0,0 +1,28 @@
+{
+ "@metadata": {
+ "authors": [
+ "Ukabia"
+ ]
+ },
+ "babel": "Ihe Babul ejiá mari onyeá",
+ "babel-desc": "Nè tí <code>#babel</code> ihe ndotù Í nyé uzor maka okìké nke orúnotu nke ogologo babel nweríkí tinyé ihü nka nke ékèrè eké",
+ "babel-url": "Project:Babul",
+ "babel-autocreate-abort": "Ọ'bànifé Í kpàtàrà dị maka [[$1|Babel]] nké né ké ébéanọr nà onwé yá, na o nwéghíkí bú nkẹ ọ'bànifé.",
+ "babel-autocreate-reason": "Odạlạ né ké [[$1|Babel]] ébé ihü nọr.",
+ "babel-autocreate-text-levels": "Ndi na banife nọr na ébé nke sị há nwèrè ǹkà rúrú $1 màkà asụsụ $2.",
+ "babel-autocreate-text-main": "Ọ'bànifé nor na ébéanọr á sị hé nwèrè ómárí màkà asụsụ $1.",
+ "babel-0": "Onyéá [[$1|enweghị]] ómárí maka [[$2|$3]] (mä o wu ó na gé yá nsogbu dikwa elú ya).",
+ "babel-1": "Onyéá nwere ómárí [[$1|ntakịrị]] maka [[$2|$3]].",
+ "babel-2": "Onyéá nwere ómárí [[$1|ditu mmá]] maka [[$2|$3]].",
+ "babel-3": "Onyéá nwere ómárí [[$1|ukwu]] maka [[$2|$3]].",
+ "babel-4": "Onyéá nwere ómárí di kà [[$1|díàlà]] maka [[$2|$3]].",
+ "babel-5": "Onyéá nwere ómárí di [[$1|mkpà]] maka [[$2|$3]].",
+ "babel-N": "Onyéá nwere ómárí [[$1|díàlà]] maka [[$2|$3]].",
+ "babel-0-n": "Onyéá [[$1|enweghị]] ómárí maka [[$2|Ìgbọ]] (mä o wu ó na gé yá nsogbu dikwa elú ya).",
+ "babel-1-n": "Onyéá nwere ómárí [[$1|ntakịrị]] maka [[$2|Ìgbọ]].",
+ "babel-2-n": "Onyéá nwere ómárí [[$1|ditu mmá]] maka [[$2|Ìgbọ]].",
+ "babel-3-n": "Onyéá nwere ómárí [[$1|ukwu]] maka [[$2|Ìgbọ]].",
+ "babel-4-n": "Onyéá nwere ómárí di kà [[$1|díàlà]] maka [[$2|Ìgbọ]].",
+ "babel-5-n": "Onyéá nwere ómárí di [[$1|mkpà]] maka [[$2|Ìgbọ]].",
+ "babel-N-n": "Onyéá nwere ómárí [[$1|díàlà]] maka [[$2|Ìgbọ]]."
+}
diff --git a/MLEB/Babel/i18n/ilo.json b/MLEB/Babel/i18n/ilo.json
new file mode 100644
index 00000000..0abedf24
--- /dev/null
+++ b/MLEB/Babel/i18n/ilo.json
@@ -0,0 +1,31 @@
+{
+ "@metadata": {
+ "authors": [
+ "Joemaza",
+ "Lam-ang"
+ ]
+ },
+ "babel": "Pakaammo dagiti agar-aramat ti Babel",
+ "babel-desc": "Aginayon ti <code>#babel</code> a \"parser\" a pamay-an tapno agpalubos ti atomatiko a panagpartuat ti babel a kahon ti agar-aramat nga adda ti abilidad nga agiraman kadagiti naiduma a plantilia.",
+ "babel-url": "Project:Babel",
+ "babel-footer-url": ":Category:Babel - Dagiti agar-aramat babaen ti pagsasao",
+ "babel-autocreate-abort": "Ti nagan ti agar-aramat nga intedmo ket ususaren para iti atomatiko a panagpartuat ti [[$1|Babel]] a kategoria ken saan a mabalin a mairehistro.",
+ "babel-autocreate-reason": "Atomatiko nga agar-aramid iti panid ti [[$1|Babel]] a kategoria.",
+ "babel-autocreate-text-levels": "Dagiti agar-aramat iti daytoy a kategoria ket maipatudo nga adda ti kalaingda ti agpang a $1 para iti $2 a pagsasao.",
+ "babel-autocreate-text-main": "Dagiti agararamat iti daytoy a kategoria ket maipatudo nga adda pannnakaammoda ti $1 a pagsasao.",
+ "babel-0": "Daytoy nga agar-aramat ket [[$1|awan]] ti pannakaammona iti [[$2|$3]] (wenno marigatan unay a makaawat) .",
+ "babel-1": "Daytoy nga agar-aramat ket [[$1|nababa]] ti pannakaammona iti [[$2|$3]].",
+ "babel-2": "Daytoy nga agar-aramat ket [[$1|agpakatengnga]] ti pannakaammona iti [[$2|$3]].",
+ "babel-3": "Daytoy nga agar-aramat ket [[$1|nangato]] ti pannakaammona iti [[$2|$3]].",
+ "babel-4": "Daytoy nga agar-aramat ket [[$1|kasla patneng nga agsasao]] ti pannakaammona iti [[$2|$3]].",
+ "babel-5": "Daytoy nga agar-aramat ket [[$1|propesional]] ti pannakaammona iti [[$2|$3]].",
+ "babel-N": "Daytoy nga agar-aramat ket [[$1|patneng]] ti pannakaawatna iti [[$2|$3]].",
+ "babel-0-n": "Daytoy nga agar-aramat ket [[$1|awan]] ti pannakaammona iti [[$2|Ilokano]] (wenno marigatan unay a makaawat) .",
+ "babel-1-n": "Daytoy nga agar-aramat ket [[$1|nababa]] ti pannakaammona iti [[$2|Ilokano]].",
+ "babel-2-n": "Daytoy nga agar-aramat ket [[$1|agpakatengnga]] ti pannakaammona iti [[$2|Ilokano]].",
+ "babel-3-n": "Daytoy nga agar-aramat ket [[$1|nangato]] ti pannakaammona iti [[$2|Ilokano]].",
+ "babel-4-n": "Daytoy nga agar-aramat ket [[$1|kasla patneng nga agsasao]] ti pannakaammona iti [[$2|Ilokano]].",
+ "babel-5-n": "Daytoy nga agar-aramat ket [[$1|propesional]] ti pannakaammona iti [[$2|Ilokano]].",
+ "babel-N-n": "Daytoy nga agar-aramat ket [[$1|patneng]] ti pannakaawatna iti [[$2|Ilokano]].",
+ "babel-footer": "Dagiti agar-aramat babaen ti pagsasao"
+}
diff --git a/MLEB/Babel/i18n/inh.json b/MLEB/Babel/i18n/inh.json
new file mode 100644
index 00000000..fb53a7e2
--- /dev/null
+++ b/MLEB/Babel/i18n/inh.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Sapral Mikail"
+ ]
+ },
+ "babel-footer": "Меттий дакъалаьцархой"
+}
diff --git a/MLEB/Babel/i18n/io.json b/MLEB/Babel/i18n/io.json
new file mode 100644
index 00000000..f1132d1e
--- /dev/null
+++ b/MLEB/Babel/i18n/io.json
@@ -0,0 +1,13 @@
+{
+ "@metadata": {
+ "authors": [
+ "Malafaya"
+ ]
+ },
+ "babel-url": "Project:Babel",
+ "babel-0": "Ca uzanto havas [[$1|nula]] savo pri [[$2|$3]] (o komprenas olu kun kelka desfacileso).",
+ "babel-1": "Ca uzanto havas [[$1|bazala]] savo pri [[$2|$3]].",
+ "babel-2": "Ca uzanto havas [[$1|meza]] savo pri [[$2|$3]].",
+ "babel-3": "Ca uzanto havas [[$1|bona]] savo pri [[$2|$3]].",
+ "babel-5": "Ca uzanto havas [[$1|profesionala]] savo pri [[$2|$3]]."
+}
diff --git a/MLEB/Babel/i18n/is.json b/MLEB/Babel/i18n/is.json
new file mode 100644
index 00000000..c7b20ae0
--- /dev/null
+++ b/MLEB/Babel/i18n/is.json
@@ -0,0 +1,30 @@
+{
+ "@metadata": {
+ "authors": [
+ "Purodha",
+ "Snævar"
+ ]
+ },
+ "babel": "Málkassi",
+ "babel-url": "Project:Málkassi",
+ "babel-footer-url": ":Category:Notendur eftir tungumáli",
+ "babel-autocreate-abort": "Þetta notendanafn er frátekið fyrir sjálfvirka stofnun [[$1|Málkassa]] flokka og getur ekki verið skráð.",
+ "babel-autocreate-reason": "Bý sjálfkrafa til [[$1|Málkassa]] flokk.",
+ "babel-autocreate-text-levels": "Notendur í þessum flokk hafa gefið upp að þeir hafi $1-stigs kunnáttu á $2",
+ "babel-autocreate-text-main": "Notendur í þessum flokk hafa gefið upp að þeir hafi kunnáttu á $1 máli.",
+ "babel-0": "Þessi notandi talar [[$1|ekki]] [[$2|$3]] (á erfitt með að skilja hana eða kýs að tala hana ekki).",
+ "babel-1": "Þessi notandi hefur [[$1|grundvallar]]-kunnáttu á [[$2|$3]] máli.",
+ "babel-2": "Þessi notandi hefur [[$1|miðlungs]]-kunnáttu á [[$2|$3]] máli.",
+ "babel-3": "Þessi notandi hefur [[$1|yfirburðar]]-kunnáttu á [[$2|$3]] máli.",
+ "babel-4": "Þessi notandi talar [[$2|$3]] eins og [[$1|innfæddur]].",
+ "babel-5": "Þessi notandi hefur [[$1|atvinnu]]-færni á [[$2|$3]] máli.",
+ "babel-N": "Þessi notandi hefur [[$2|$3]] að [[$1|móðurmáli]].",
+ "babel-0-n": "Þessi notandi talar [[$1|ekki]] [[$2|íslensku]] (á erfitt með að skilja hana eða kýs að tala hana ekki).",
+ "babel-1-n": "Þessi notandi hefur [[$1|grundvallar]]-kunnáttu á [[$2|íslensku]] máli.",
+ "babel-2-n": "Þessi notandi hefur [[$1|miðlungs]]-kunnáttu á [[$2|íslensku]] máli.",
+ "babel-3-n": "Þessi notandi hefur [[$1|yfirburðar]]-kunnáttu á [[$2|íslensku]] máli.",
+ "babel-4-n": "Þessi notandi talar [[$2|íslensku]] eins og [[$1|innfæddur]].",
+ "babel-5-n": "Þessi notandi hefur [[$1|atvinnu]]-færni á [[$2|íslensku]] máli.",
+ "babel-N-n": "Þessi notandi hefur [[$2|íslensku]] að [[$1|móðurmáli]].",
+ "babel-footer": "Notendur eftir tungumáli"
+}
diff --git a/MLEB/Babel/i18n/it.json b/MLEB/Babel/i18n/it.json
new file mode 100644
index 00000000..22f4a3ca
--- /dev/null
+++ b/MLEB/Babel/i18n/it.json
@@ -0,0 +1,38 @@
+{
+ "@metadata": {
+ "authors": [
+ "Beta16",
+ "Cruccone",
+ "Darth Kule",
+ "FRacco",
+ "McDutchie",
+ "Melos",
+ "Morel",
+ "Nemo bis"
+ ]
+ },
+ "babel": "Babel utente",
+ "babel-desc": "Aggiunge la parser function <code>#babel</code> per permettere la generazione automatica di una colonna box utente babel con la possibilità di includere template personalizzati",
+ "babel-url": "Project:Babel",
+ "babel-footer-url": ":Category:Utenti per lingua",
+ "babel-autocreate-abort": "Il nome utente specificato è usato per la creazione automatica di categorie [[$1|Babel]] e non può essere registrato.",
+ "babel-autocreate-reason": "Creo automaticamente la pagina della categoria [[$1|Babel]].",
+ "babel-autocreate-text-levels": "Gli utenti in questa categoria indicano che riescono a comunicare in $2 con un livello di conoscenza $1.",
+ "babel-autocreate-text-main": "Gli utenti in questa categoria indicano che riescono a comunicare in $1.",
+ "babel-0": "Questo utente [[$1|non è in grado di comunicare]] in [[$2|$3]] (o lo capisce solo con notevole difficoltà).",
+ "babel-1": "Questo utente può contribuire con un livello [[$1|elementare]] in [[$2|$3]].",
+ "babel-2": "Questo utente può contribuire con un livello [[$1|intermedio]] in [[$2|$3]].",
+ "babel-3": "Questo utente può contribuire con un livello [[$1|avanzato]] in [[$2|$3]].",
+ "babel-4": "Questo utente può contribuire con un livello [[$1|quasi madrelingua]] in [[$2|$3]].",
+ "babel-5": "Questo utente può contribuire con un livello [[$1|professionale]] in [[$2|$3]].",
+ "babel-N": "Questo utente può contribuire con un livello [[$1|madrelingua]] in [[$2|$3]].",
+ "babel-0-n": "Questo utente [[$1|non è in grado di comunicare]] in [[$2|italiano]] (o lo capisce solo con notevole difficoltà).",
+ "babel-1-n": "Questo utente può contribuire con un livello [[$1|elementare]] in [[$2|italiano]].",
+ "babel-2-n": "Questo utente può contribuire con un livello [[$1|intermedio]] in [[$2|italiano]].",
+ "babel-3-n": "Questo utente può contribuire con un livello [[$1|avanzato]] in [[$2|italiano]].",
+ "babel-4-n": "Questo utente può contribuire con un livello [[$1|quasi madrelingua]] in [[$2|italiano]].",
+ "babel-5-n": "Questo utente può contribuire con un livello [[$1|professionale]] in [[$2|italiano]].",
+ "babel-N-n": "Questo utente può contribuire con un livello [[$1|madrelingua]] in [[$2|italiano]].",
+ "babel-template": "Template:Utente $1",
+ "babel-footer": "Utenti per lingua"
+}
diff --git a/MLEB/Babel/i18n/ja.json b/MLEB/Babel/i18n/ja.json
new file mode 100644
index 00000000..fda11c23
--- /dev/null
+++ b/MLEB/Babel/i18n/ja.json
@@ -0,0 +1,39 @@
+{
+ "@metadata": {
+ "authors": [
+ "Aotake",
+ "Fryed-peach",
+ "Kwj2772",
+ "Marine-Blue",
+ "Ohgi",
+ "Shirayuki",
+ "Vigorous action",
+ "青子守歌"
+ ]
+ },
+ "babel": "バベル利用者情報",
+ "babel-desc": "カスタム テンプレートを埋め込めるバベル ユーザーボックスを、自動的に生成する関数 <code>#babel</code> を追加する",
+ "babel-url": "Project:バベル",
+ "babel-footer-url": ":カテゴリ:バベル - 言語別の利用者",
+ "babel-autocreate-abort": "指定した利用者名は[[$1|バベル]]用カテゴリの自動作成に使用されているため登録できません。",
+ "babel-autocreate-reason": "[[$1|バベル]]用カテゴリのページを自動作成しています。",
+ "babel-autocreate-text-levels": "このカテゴリに属している利用者は$2についてレベル $1 の能力を有しています。",
+ "babel-autocreate-text-main": "このカテゴリに属している利用者は$1についての自身の能力について表明しています。",
+ "babel-autocreate-user": "バベル自動作成係",
+ "babel-0": "この利用者は[[$2|$3]]が[[$1|分かりません]](または理解するのがかなり困難です)。",
+ "babel-1": "この利用者は[[$1|初級]]の[[$2|$3]]ができます。",
+ "babel-2": "この利用者は[[$1|中級]]の[[$2|$3]]ができます。",
+ "babel-3": "この利用者は[[$1|上級]]の[[$2|$3]]ができます。",
+ "babel-4": "この利用者は[[$1|母語話者に近い]][[$2|$3]]の知識を有しています。",
+ "babel-5": "この利用者は[[$1|専門的な]][[$2|$3]]の知識を有しています。",
+ "babel-N": "この利用者は[[$2|$3]]を[[$1|母語]]としています。",
+ "babel-0-n": "この利用者は[[$2|日本語]]が[[$1|分かりません]] (または理解するのがかなり困難です)。",
+ "babel-1-n": "この利用者は[[$1|初級]]の[[$2|日本語]]ができます。",
+ "babel-2-n": "この利用者は[[$1|中級]]の[[$2|日本語]]ができます。",
+ "babel-3-n": "この利用者は[[$1|上級]]の[[$2|日本語]]ができます。",
+ "babel-4-n": "この利用者は[[$1|母語話者に近い]][[$2|日本語]]の知識を有しています。",
+ "babel-5-n": "この利用者は[[$1|専門的な]][[$2|日本語]]の知識を有しています。",
+ "babel-N-n": "この利用者は[[$2|日本語]]を[[$1|母語]]としています。",
+ "babel-template": "Template:利用者 $1",
+ "babel-footer": "言語別の利用者"
+}
diff --git a/MLEB/Babel/i18n/jam.json b/MLEB/Babel/i18n/jam.json
new file mode 100644
index 00000000..e8167185
--- /dev/null
+++ b/MLEB/Babel/i18n/jam.json
@@ -0,0 +1,28 @@
+{
+ "@metadata": {
+ "authors": [
+ "Yocahuna"
+ ]
+ },
+ "babel": "Biebl yuuza infamieshan",
+ "babel-desc": "Ad di <code>#babel</code> paaza fongshan fi lou aatamietid jinarieshan a biebl yuuzabax kalom wid di abiliti fi inkluud kostom templit",
+ "babel-url": "Project:Biebl",
+ "babel-autocreate-abort": "Di yuuzaniem yu spesifai yuuz fi [[$1|Babel]] kiatigari aato-krieshan ahn kyaahn regista.",
+ "babel-autocreate-reason": "Aatamatikali a kriet [[$1|Babel]] kiatigari piej.",
+ "babel-autocreate-text-levels": "Yuuza ina dis kiatigeri indikiet se dehn ab skil lebl $1 fi langwij $2.",
+ "babel-autocreate-text-main": "Yuuza ina dis kiatigeri indikiet se dehn ab nalij a langwij $1.",
+ "babel-0": "Dis yuuza ab [[$1|no]] nalij a [[$2|$3]] (ar andastani wid kansidarobl difikolti).",
+ "babel-1": "Di yuuza ab [[$1|biesik]] nalij a [[$2|$3]].",
+ "babel-2": "Di yuuza ab [[$1|intamidiet]] nalij a [[$2|$3]].",
+ "babel-3": "Di yuuza ab [[$1|advans]] nalij a [[$2|$3]].",
+ "babel-4": "Di yuuza ab [[$1|nier nietib]] nalij a [[$2|$3]].",
+ "babel-5": "Di yuuza ab [[$1|profeshanal]] nalij a [[$2|$3]].",
+ "babel-N": "Di yuuza ab a [[$1|nietib]] andastanin a [[$2|$3]].",
+ "babel-0-n": "Dis yuuza ab [[$1|no]] nalij a [[$2|Ingglish]] (ar andastani wid kansidarobl difikolti).",
+ "babel-1-n": "Di yuuza ab [[$1|biesik]] nalij a [[$2|Ingglish]].",
+ "babel-2-n": "Di yuuza ab [[$1|intamidiet]] nalij a [[$2|Ingglish]].",
+ "babel-3-n": "Di yuuza ab [[$1|advans]] nalij a [[$2|Ingglish]].",
+ "babel-4-n": "Di yuuza ab [[$1|nier nietib]] nalij a [[$2|Ingglish]].",
+ "babel-5-n": "Di yuuza ab [[$1|profeshanal]] nalij a [[$2|Ingglish]].",
+ "babel-N-n": "Di yuuza ab a [[$1|nietib]] andastanin a [[$2|Ingglish]]."
+}
diff --git a/MLEB/Babel/i18n/jbo.json b/MLEB/Babel/i18n/jbo.json
new file mode 100644
index 00000000..24cf9877
--- /dev/null
+++ b/MLEB/Babel/i18n/jbo.json
@@ -0,0 +1,9 @@
+{
+ "@metadata": {
+ "authors": [
+ "Malafaya"
+ ]
+ },
+ "babel-1": "ti poi prenu cu ka'e cusku je jimpe [[$1|lo sampu]] bau [[$2|la $3]]",
+ "babel-1-n": "ti poi prenu cu ka'e cusku je jimpe [[$1|lo sampu]] bau [[$2|la lojban]]"
+}
diff --git a/MLEB/Babel/i18n/jv.json b/MLEB/Babel/i18n/jv.json
new file mode 100644
index 00000000..d91641ca
--- /dev/null
+++ b/MLEB/Babel/i18n/jv.json
@@ -0,0 +1,35 @@
+{
+ "@metadata": {
+ "authors": [
+ "Iwan Novirion",
+ "Malafaya",
+ "Meursault2004",
+ "NoiX180"
+ ]
+ },
+ "babel": "Informasi Babel Panganggo",
+ "babel-desc": "Nambahaké fungsi parse <code>#babel</code> sing marengaké générasi otomatis kolom kothak panganggo babel mawa kamungkinan nglebokaké cithakan kustomisasi",
+ "babel-url": "Project:Babel",
+ "babel-footer-url": ":Katégori:Babèl - Panganggo miturut basané",
+ "babel-autocreate-abort": "Jeneng panganggo sing Sampéyan lebokaké dianggo kanggo panggawéan otomatis katègori [[$1|Babel]] lan ora bisa didaptaraké.",
+ "babel-autocreate-reason": "Otomatis nggawé kaca katègori [[$1|Babel]].",
+ "babel-autocreate-text-levels": "Panganggo saka katégori iki dianggep nduwèni kawruh basa $2 undhak $1.",
+ "babel-autocreate-text-main": "Panganggo saka katégori iki dianggep nduwèni kawruh basa $1.",
+ "babel-autocreate-user": "Babel AutoCreate",
+ "babel-0": "Panganggo iki [[$1|ora]] duwé kawruh [[$2|$3]] (utawa angèl banget mangertèni).",
+ "babel-1": "Panganggo iki duwé kawruh [[$1|dhasar]] [[$2|$3]].",
+ "babel-2": "Panganggo iki duwé kawruh [[$1|madya]] [[$2|$3]].",
+ "babel-3": "Panganggo iki duwé kawruh [[$1|dhuwur]] [[$2|$3]].",
+ "babel-4": "Panganggo iki duwé kawruh [[$1|sing nyedhaki panutur ibu]] saka [[$2|$3]].",
+ "babel-5": "Panganggo iki duwé kawruh [[$1|profésional]] [[$2|$3]].",
+ "babel-N": "Panganggo iki [[$1|panutur ibu]] [[$2|$3]].",
+ "babel-0-n": "Panganggo iki [[$1|ora]] bisa [[$2|basa Jawa]] (utawa angèl banget mangertèni).",
+ "babel-1-n": "Panganggo iki duwé kawruh [[$1|dhasar]] [[$2|basa Jawa]].",
+ "babel-2-n": "Panganggo iki duwé kawruh [[$1|madya]] [[$2|basa Jawa]].",
+ "babel-3-n": "Panganggo iki duwé kawruh [[$1|dhuwur]] [[$2|basa Jawa]].",
+ "babel-4-n": "Panganggo iki duwé kawruh [[$1|sing nyedhaki panutur ibu]] saka [[$2|basa Jawa]].",
+ "babel-5-n": "Panganggo iki duwé kawruh [[$1|profésional]] [[$2|basa Jawa]].",
+ "babel-N-n": "Panganggo iki [[$1|panutur ibu]] [[$2|basa Jawa]].",
+ "babel-template": "Template:User $1",
+ "babel-footer": "Panganggo miturut basané"
+}
diff --git a/MLEB/Babel/i18n/ka.json b/MLEB/Babel/i18n/ka.json
new file mode 100644
index 00000000..f4a04d6e
--- /dev/null
+++ b/MLEB/Babel/i18n/ka.json
@@ -0,0 +1,37 @@
+{
+ "@metadata": {
+ "authors": [
+ "BRUTE",
+ "David1010",
+ "Fina",
+ "Gela",
+ "Malafaya",
+ "Temuri rajavi"
+ ]
+ },
+ "babel": "ბაბილონი - მომხმარებლის ინფორმაცია",
+ "babel-desc": "დაამატეთ <code>#babel</code> პარსერის ფუნქცია babel userbox ის სვეტის ავტომატიურად შესაქმენლად, რომელსაც ექნება შესაძლებლობა მოიცვას შაბლონები.",
+ "babel-url": "Project:ბაბილონი",
+ "babel-footer-url": ":კატეგორია:მომხმარებლები ენების მიხედვით",
+ "babel-autocreate-abort": "თქვენს მიერ არჩული მომხმარებელი გამოყენებულია [[$1|Babel]] კატეგორიაში ავტომატიურად და მისი შეცვლა შეუძლებელია.",
+ "babel-autocreate-reason": "ავტომატურად იქმნება [[$1|Babel]] კატეგორიის გვერდი",
+ "babel-autocreate-text-levels": "ამ კატეგორიის მომხმარებლები იდენტიფიცირდებიან როგორც $1 დონის მომხმარებლები $2 ენისათვის.",
+ "babel-autocreate-text-main": "ამ კატეგორიის მომხმარებლები იდენტიფიცირდებიან როგორც $1 ენის მცოდნეები.",
+ "babel-autocreate-user": "Babel - ის ავტო კორექცია",
+ "babel-0": "ამ მომხმარებელს [[$1|არ ესმის]] [[$2|$3]].",
+ "babel-1": "ამ მომხმარებელს შეუძლია წვლილი შეიტანოს [[$2|$3 ენის]] ცოდნის [[$1|ელემენტარულ]] დონეზე.",
+ "babel-2": "ამ მომხმარებელს შეუძლია წვლილი შეიტანოს [[$2|$3 ენის]] ცოდნის [[$1|საშუალო]] დონეზე.",
+ "babel-3": "ამ მომხმარებელს შეუძლია წვლილი შეიტანოს [[$2|$3 ენის]] ცოდნის [[$1|მაღალ]] დონეზე.",
+ "babel-4": "ამ მომხმარებელმა [[$2|$3 ენა]] იცის [[$1|თითქმის მშობლიური ენის]] დონეზე.",
+ "babel-5": "ამ მომხმარებელს შეუძლია წვლილი შეიტანოს [[$2|ქართული ენის]] ცოდნის [[$1|პროფესიონალურ]] დონეზე.",
+ "babel-N": "ამ მომხმარებლის [[$1|მშობლიური ენა]] არის [[$2|$3]].",
+ "babel-0-n": "ამ მომხმარებელს [[$1|არ ესმის]] [[$2|ქართული ენა]].",
+ "babel-1-n": "ამ მომხმარებელს შეუძლია წვლილი შეიტანოს [[$2|ქართული ენის]] ცოდნის [[$1|ელემენტარულ]] დონეზე.",
+ "babel-2-n": "ამ მომხმარებელს შეუძლია წვლილი შეიტანოს [[$2|ქართული ენის]] ცოდნის [[$1|საშუალო]] დონეზე.",
+ "babel-3-n": "ამ მომხმარებელს შეუძლია წვლილი შეიტანოს [[$2|ქართული ენის]] ცოდნის [[$1|მაღალ]] დონეზე.",
+ "babel-4-n": "ამ მომხმარებელმა [[$2|ქართული ენა]] იცის [[$1|თითქმის მშობლიური ენის]] დონეზე.",
+ "babel-5-n": "ამ მომხმარებელს შეუძლია წვლილი შეიტანოს [[$2|ქართული ენის]] ცოდნის [[$1|პროფესიონალურ]] დონეზე.",
+ "babel-N-n": "ამ მომხმარებლის [[$1|მშობლიური ენა]] არის [[$2|ქართული]].",
+ "babel-template": "თარგი:მომხმარებელი $1",
+ "babel-footer": "მომხმარებლები ენის მიხედვით"
+}
diff --git a/MLEB/Babel/i18n/kaa.json b/MLEB/Babel/i18n/kaa.json
new file mode 100644
index 00000000..6b775d88
--- /dev/null
+++ b/MLEB/Babel/i18n/kaa.json
@@ -0,0 +1,13 @@
+{
+ "@metadata": {
+ "authors": [
+ "Atabek"
+ ]
+ },
+ "babel": "Babıl paydalanıwshılar mag'lıwmatı",
+ "babel-url": "Project:Babıl",
+ "babel-footer-url": ":Category:Babıl - tiller boyınsha paydalanıwshılar",
+ "babel-4-n": "Bul qollanıwshı ushın [[$2|qaraqalpaq tili]] ana tilge jaqın da'rejede bolıp esaplanadı.",
+ "babel-N-n": "Bul qollanıwshı ushın [[$2|qaraqalpaq tili]] ana til bolıp esaplanadı.",
+ "babel-footer": "Tiller boyınsha paydalanıwshılar"
+}
diff --git a/MLEB/Babel/i18n/kbd-cyrl.json b/MLEB/Babel/i18n/kbd-cyrl.json
new file mode 100644
index 00000000..ef518a93
--- /dev/null
+++ b/MLEB/Babel/i18n/kbd-cyrl.json
@@ -0,0 +1,9 @@
+{
+ "@metadata": {
+ "authors": [
+ "Beco1977"
+ ]
+ },
+ "babel": "Бабыл зигъэлажэрэм ищэхэрэ",
+ "babel-N": "Мыш рилажэрэм зэхрехы [[$1|нэ бзэкӀэ]] мы бзээ [[$2|$3]]."
+}
diff --git a/MLEB/Babel/i18n/kea.json b/MLEB/Babel/i18n/kea.json
new file mode 100644
index 00000000..08172f93
--- /dev/null
+++ b/MLEB/Babel/i18n/kea.json
@@ -0,0 +1,30 @@
+{
+ "@metadata": {
+ "authors": [
+ "Waldir"
+ ]
+ },
+ "babel": "Informason di línguas di utilizador",
+ "babel-desc": "Ta adisiona funsãu di analizador <code>#babel</code>, ki ta permiti kria automatikamenti un kuluna ku kaixas \"babel\", i tambe inklui predefinisons personalizadu",
+ "babel-url": "Project:Babel",
+ "babel-footer-url": ":Katiguria:Babel - Utilizadoris pur língua",
+ "babel-autocreate-abort": "Nomi di utilizador ki bu skodji e uzadu pa kriason automátiku di katigurias [[$1|Babel]], pur isu el ka podi ser rijistadu.",
+ "babel-autocreate-reason": "Ta kria pájina di katiguria [[$1|Babel]] automatikamenti.",
+ "babel-autocreate-text-levels": "Utilizadoris nes katiguria li ta afirma ki es ten un nível di konhesimentu $1 na língua $2.",
+ "babel-autocreate-text-main": "Utilizadoris nes katiguria li ta afirma ki es ten konhesimentu di língua $1.",
+ "babel-0": "Kel utilizador li [[$1|ka ta entende]] [[$2|$3]] (o e' ta entendê-l ku txeu difikuldadi).",
+ "babel-1": "Kel utilizador li ta papia [[$2|$3]] ku un nível [[$1|báziku]].",
+ "babel-2": "Kel utilizador li ta papia [[$2|$3]] ku un nível [[$1|médiu]].",
+ "babel-3": "Kel utilizador li ta papia [[$2|$3]] ku un nível [[$1|avansadu]].",
+ "babel-4": "Kel utilizador li ta papia [[$2|$3]] [[$1|kuazi sima un falanti nativu]].",
+ "babel-5": "Kel utilizador li ta papia [[$2|$3]] ku un nível [[$1|prifisiunal]].",
+ "babel-N": "Kel utilizador li se língua [[$1|maternu]] e [[$2|$3]].",
+ "babel-0-n": "Kel utilizador li [[$1|ka ta entende]] [[$2|kriolu]] (o e' ta entendê-l ku txeu difikuldadi).",
+ "babel-1-n": "Kel utilizador li ta papia [[$2|kriolu]] ku un nível [[$1|báziku]].",
+ "babel-2-n": "Kel utilizador li ta papia [[$2|kriolu]] ku un nível [[$1|médiu]].",
+ "babel-3-n": "Kel utilizador li ta papia [[$2|kriolu]] ku un nível [[$1|avansadu]].",
+ "babel-4-n": "Kel utilizador li ta papia [[$2|kriolu]] [[$1|kuazi sima un falanti nativu]].",
+ "babel-5-n": "Kel utilizador li ta papia [[$2|kriolu]] ku un nível [[$1|prufisiunal]].",
+ "babel-N-n": "Kel utilizador li se língua [[$1|maternu]] e [[$2|kriolu]].",
+ "babel-footer": "Utilizadoris pur língua"
+}
diff --git a/MLEB/Babel/i18n/kg.json b/MLEB/Babel/i18n/kg.json
new file mode 100644
index 00000000..1475eba7
--- /dev/null
+++ b/MLEB/Babel/i18n/kg.json
@@ -0,0 +1,28 @@
+{
+ "@metadata": {
+ "authors": [
+ "Rkupsala"
+ ]
+ },
+ "babel": "Babilone: luzâbu ya bandînga",
+ "babel-url": "Project:Babilone",
+ "babel-footer-url": ":Category:Babilone - Basadi na bandînga",
+ "babel-autocreate-abort": "Nkûmbu ya sadi yina nge me pesa, yawu me bakama samu na [[$1|Babilone]]. Nge lênda sadila yawu ve.",
+ "babel-autocreate-text-levels": "Bântu ya kimvuka yayi bâwu zâbisaka ti bâwu zâba tuba ndînga $2 na nivô ya $1",
+ "babel-autocreate-text-main": "Bântu ya kimvuka yayi bâwu zâbisaka ti bâwu ke zâbaka ndînga $1.",
+ "babel-0": "Mûntu yayi zâba tuba [[$2|$3]] [[$1|ve]] (to yandi ke kuwaka yawu na mpasi)",
+ "babel-1": "Mûntu yayi zaba tuba [[$1|fyoti]] [[$2|$3]].",
+ "babel-2": "Mûntu yayi zâba tuba [[$2|$3]] [[$1|mbote]].",
+ "babel-3": "Mûntu yayi zâba tuba [[$2|$3]] [[$1|mbote mîngi]].",
+ "babel-4": "Mûntu yayi zâba tuba [[$2|$3]] na mutîndu mosi ya mûntu tubaka yawu [[$1|katuka lubutuku]].",
+ "babel-5": "Mûntu yayi zâba tuba [[$2|$3]] na mutîndu ya [[$1|nsêkudi]].",
+ "babel-N": "Mûntu yayi zaba tuba [[$2|$3]] [[$1|katuka lubutuku]].",
+ "babel-0-n": "Mûntu yayi zâba tuba [[$2|kituba Kôngo]] [[$1|ve]] (to yandi ke kuwaka yawu na mpasi)",
+ "babel-1-n": "Mûntu yayi zaba tuba [[$1|fyoti]] [[$2|kituba Kôngo]].",
+ "babel-2-n": "Mûntu yayi zâba tuba [[$2|kituba Kôngo]] [[$1|mbote]].",
+ "babel-3-n": "Mûntu yayi zâba tuba [[$2|kituba Kôngo]] [[$1|mbote mîngi]].",
+ "babel-4-n": "Mûntu yayi zâba tuba [[$2|kituba Kôngo]] na mutîndu ya [[$1|mwana Kôngo]].",
+ "babel-5-n": "Mûntu yayi zâba tuba [[$2|kituba Kôngo]] na mutîndu ya [[$1|nsêkudi]].",
+ "babel-N-n": "Mûntu yayi zaba tuba [[$2|kituba Kôngo]] [[$1|katuka lubutuku]].",
+ "babel-footer": "Basadi na bandînga"
+}
diff --git a/MLEB/Babel/i18n/khw.json b/MLEB/Babel/i18n/khw.json
new file mode 100644
index 00000000..ef041d32
--- /dev/null
+++ b/MLEB/Babel/i18n/khw.json
@@ -0,0 +1,23 @@
+{
+ "@metadata": {
+ "authors": [
+ "Rachitrali"
+ ]
+ },
+ "babel-url": "Project:بابل",
+ "babel-autocreate-text-main": "ھیہ زمرو صارفین ھیہ نشاندہیو کورونیان کہ ھیت $1 زبانو علم لاکھونیان.",
+ "babel-0": "ھیہ صارف [[$2|$3]] کوریکو [[$1|نو]] بویان (یا ھیہ زبانو کافی مشکلو سورا ھوش کویان).",
+ "babel-1": "ھیہ صارف [[$2|$3]] و [[$1|بنیادی]] علم لاکھویان.",
+ "babel-2": "ھیہ صارف [[$2|$3]] و [[$1|متوسط]] علم لاکھویان.",
+ "babel-3": "ھیہ صارف [[$2|$3]] و [[$1|اعلیٰ]] علم لاکھویان.",
+ "babel-4": "ھیہ صارف [[$2|$3]] و [[$1|پیدائشی لودیاکو قریب قریب]] علم لاکھویان.",
+ "babel-5": "ھیہ صارف [[$2|$3]] و [[$1|پیشہ‌ورانہ]] علم لاکھویان.",
+ "babel-N": "ھیہ صارف [[$2|$3]] و [[$1|پیدائشی]] متکلم آسور.",
+ "babel-0-n": "ھیہ صارف [[$2|انگریزی]] کوریکو [[$1|نو]] بویان (یا انگریزی زبانو کافی مشکلو سورا ھوش کویان",
+ "babel-1-n": "ھیہ صارف [[$2|انگریزی]] زبانو [[$1|بنیادی]] علم لاکھویان.",
+ "babel-2-n": "ھیہ صارف [[$2|انگریزی]] زبانو [[$1|متوسط]] علم لاکھویان.",
+ "babel-3-n": "ھیہ صارف [[$2|انگریزی]] زبانو [[$1|اعلیٰ]] علم لاکھویان.",
+ "babel-4-n": "ھیہ صارف [[$2|انگریزی]] زبانو باریا [[$1|پیدائشی متکلم]]و قریب قریب علم لاکھویان.",
+ "babel-5-n": "ھیہ صارف [[$2|انگریزی]] زبانو [[$1|پیشہ ورانہ]] علم لاکھویان.",
+ "babel-N-n": "ھیہ صارف [[$2|انگریزی]] زبانو [[$1|پیدائشی متکلم]] آسور."
+}
diff --git a/MLEB/Babel/i18n/kiu.json b/MLEB/Babel/i18n/kiu.json
new file mode 100644
index 00000000..5263ec0b
--- /dev/null
+++ b/MLEB/Babel/i18n/kiu.json
@@ -0,0 +1,31 @@
+{
+ "@metadata": {
+ "authors": [
+ "Erdemaslancan",
+ "Mirzali"
+ ]
+ },
+ "babel": "Melumatê karberê Babili",
+ "babel-desc": "Xulusa da sablonan dı dêsê babilê karberi otomatik vışatıştı, fonksiyonê <code>#babil</code>i fêno de",
+ "babel-url": "Project:Babil",
+ "babel-footer-url": ":Kategoriye:Babil - Gorê zonu ra karberi",
+ "babel-autocreate-abort": "Karbero kı şıma belı kerdo, kategoriya dı [[$1|Babil]]i dı ca gêno u peyd zi nê gêrêno.",
+ "babel-autocreate-reason": "Kategoriye [[$1|Babil]]i otomatik vırazêno.",
+ "babel-autocreate-text-levels": "Karberê ke na kategorideyê, nê zıwani sewiye dê $1 u $2 derece zanê.",
+ "babel-autocreate-text-main": "Karberê ke na kategorideyê $1 zuwani zanê.",
+ "babel-0": "No karber nê zıwani ya [[$1|hêç]] nêzano ya zi [[$2|$3]] (fahm keno feqet kısey nêzano).",
+ "babel-1": "No karber [[$2|$3]] [[$1|tenekê]] fahm keno.",
+ "babel-2": "No karber [[$1|hewl]] [[$2|$3]] zano .",
+ "babel-3": "No karber [[$1|xeylê]] zanê [[$2|$3]].",
+ "babel-4": "No karber [[$1|Zey zıwan]] dê xo [[$2|$3]] zano.",
+ "babel-5": "No karber [[$1|profesyonel]] sewiye dı [[$2|$3]] zano.",
+ "babel-N": "[[$1|Zıwanè ]] marda nê karberi [[$2|$3]]o.",
+ "babel-0-n": "No karber [[$1|hêç]] [[$2|Zazaki]] nêzano (ya zi fahm keno feqet nêzano qısey bıkero).",
+ "babel-1-n": "No karber [[$1|tenekê]] [[$2|Zazaki]] zano.",
+ "babel-2-n": "[[$2|Zazakiya]] nê karberi [[$1|hewla]].",
+ "babel-3-n": "No karber [[$1|weş]] [[$2|zazaki]] zano.",
+ "babel-4-n": "No karber [[$2|Zazaki]] zey [[$1|zıwan]] dê marda xo zano.",
+ "babel-5-n": "No karber [[$1|profesyonel]] sewiye dı [[$2|Zazaki]] zano.",
+ "babel-N-n": "Zıwanê marda [[$1|nê karberi]] [[$2|Zazaki]]o.",
+ "babel-footer": "Gorê zonu ra karberi"
+}
diff --git a/MLEB/Babel/i18n/kk-cyrl.json b/MLEB/Babel/i18n/kk-cyrl.json
new file mode 100644
index 00000000..036ab4e0
--- /dev/null
+++ b/MLEB/Babel/i18n/kk-cyrl.json
@@ -0,0 +1,25 @@
+{
+ "@metadata": {
+ "authors": [
+ "AlefZet",
+ "GaiJin"
+ ]
+ },
+ "babel": "Бабыл қатысушы ақпараты",
+ "babel-desc": "Бабыл пайдаланушылық жолағын өздіктік жарату үшін <code>#babel</code> деген құрылымдық талдатқыш жетесін үстейді (бапталған үлгілерді де кірістіру мүмкін)",
+ "babel-url": "Project:Бабыл",
+ "babel-0": "Бұл қатысушы [[$2|$3]] [[$1|меңгермейді]] (немесе айтарлықтай қиыншылықпен түсінеді).",
+ "babel-1": "Бұл қатысушы [[$2|$3]] [[$1|бастапқы деңгейде]] меңгереді.",
+ "babel-2": "Бұл қатысушы [[$2|$3]] [[$1|аралық деңгейде]] меңгереді",
+ "babel-3": "Бұл қатысушы [[$2|$3]] [[$1|кәміл деңгейде]] меңгереді.",
+ "babel-4": "Бұл қатысушы [[$2|$3]] [[$1|ана тіліне жақын деңгейде]] меңгереді.",
+ "babel-5": "Бұл қатысушы [[$2|$3]] [[$1|кәсіби деңгейде]] меңгереді.",
+ "babel-N": "[[$2|$3]] бұл қатысушының [[$1|ана тілі]] боп саналады.",
+ "babel-0-n": "Бұл қатысушы [[$2|қазақ тілін]] [[$1|меңгермейді]] (немесе айтарлықтай қиыншылықпен түсінеді).",
+ "babel-1-n": "Бұл қатысушы [[$2|қазақ тілін]] [[$1|бастапқы деңгейде]] меңгереді.",
+ "babel-2-n": "Бұл қатысушы [[$2|қазақ тілін]] [[$1|аралық деңгейде]] меңгереді",
+ "babel-3-n": "Бұл қатысушы [[$2|қазақ тілін]] [[$1|кәміл деңгейде]] меңгереді.",
+ "babel-4-n": "Бұл қатысушы [[$2|қазақ тілін]] [[$1|ана тіліне жақын деңгейде]] меңгереді.",
+ "babel-5-n": "Бұл қатысушы [[$2|қазақ тілін]] [[$1|кәсіби деңгейде]] меңгереді.",
+ "babel-N-n": "[[$2|Қазақ тілі]] бұл қатысушының [[$1|ана тілі]] боп саналады."
+}
diff --git a/MLEB/Babel/i18n/km.json b/MLEB/Babel/i18n/km.json
new file mode 100644
index 00000000..cab79d38
--- /dev/null
+++ b/MLEB/Babel/i18n/km.json
@@ -0,0 +1,32 @@
+{
+ "@metadata": {
+ "authors": [
+ "GerardM",
+ "Purodha",
+ "Thearith",
+ "គីមស៊្រុន",
+ "វ័ណថារិទ្ធ"
+ ]
+ },
+ "babel": "ព័ត៌មាន​អ្នក​ប្រើ​ប្រាស់​ Babel",
+ "babel-url": "Project:បាបេល",
+ "babel-footer-url": ":Category:Babel - អ្នកប្រើប្រាស់តាមភាសា",
+ "babel-autocreate-reason": "កំពុង​បង្កើត​ទំព័រ​ចំណាត់​ថ្នាក់​ក្រុម [[$1|Babel]] ដោយ​ស្វ័យ​ប្រវត្តិ​។​",
+ "babel-autocreate-text-levels": "អ្នកប្រើប្រាស់​ទាំងឡាយណា ដែល​ស្ថិតនៅក្នុង​ចំណាត់ថ្នាក់ក្រុម​នេះ បញ្ជាក់​ថា​ពួកគេ​មាន​ការយល់ដឹង​កម្រិត​ $1 សម្រាប់​ភាសា $2 ។",
+ "babel-autocreate-text-main": "អ្នកប្រើប្រាស់​ទាំងឡាយណា ដែល​ស្ថិតនៅក្នុង​ចំណាត់ថ្នាក់ក្រុម​នេះ បញ្ជាក់​ថា​ពួកគេ​ចេះ​និយាយ​​ភាសា $1 ។",
+ "babel-0": "អ្នកប្រើប្រាស់នេះ[[$1|មិនមាន]]ចំណេះដឹង [[$2|$3]] (ឬយល់បានខ្លះៗទាំងលំបាក)។",
+ "babel-1": "អ្នកប្រើប្រាស់នេះចេះ [[$2|$3]] [[$1|ថ្នាក់មូលដ្ឋាន]]​។",
+ "babel-2": "អ្នកប្រើប្រាស់នេះចេះ [[$2|$3]] [[$1|ថ្នាក់មធ្យម]]។",
+ "babel-3": "អ្នកប្រើប្រាស់នេះចេះ [[$2|$3]] [[$1|ថ្នាក់ខ្ពស់]]​។",
+ "babel-4": "អ្នកប្រើប្រាស់នេះមានចំណេះដឹង [[$2|$3]] [[$1|ប្រហាក់ប្រហែលជនជាតិខ្មែរ]]។",
+ "babel-5": "អ្នកប្រើប្រាស់នេះចេះ [[$2|$3]] [[$1|ថ្នាក់អាជីព]]។",
+ "babel-N": "អ្នកប្រើប្រាស់​នេះ​និយាយ​[[$2|$3]] ជា​[[$1|ភាសាកំណើត]]​។",
+ "babel-0-n": "អ្នកប្រើប្រាស់នេះ[[$1|មិនចេះ]] (ឬយល់បានខ្លះៗទាំងលំបាក) [[$2|ភាសាខ្មែរ]]ទេ។",
+ "babel-1-n": "អ្នកប្រើប្រាស់នេះចេះ [[$2|ភាសាខ្មែរ]] [[$1|ថ្នាក់មូលដ្ឋាន]]។",
+ "babel-2-n": "អ្នកប្រើប្រាស់នេះចេះ [[$2|ភាសាខ្មែរ]] [[$1|ថ្នាក់មធ្យម]]។",
+ "babel-3-n": "អ្នកប្រើប្រាស់នេះចេះ [[$2|ភាសាខ្មែរ]] [[$1|ថ្នាក់ខ្ពស់]]។",
+ "babel-4-n": "អ្នកប្រើប្រាស់នេះមានចំណេះដឹង [[$2|ភាសាខ្មែរ]] [[$1|ប្រហាក់ប្រហែលជនជាតិខ្មែរ]]។",
+ "babel-5-n": "អ្នកប្រើប្រាស់នេះចេះ [[$2|ភាសាខ្មែរ]] [[$1|ថ្នាក់អាជីព]]។",
+ "babel-N-n": "អ្នកប្រើប្រាស់នេះនិយាយ [[$2|ភាសាខ្មែរ]]ជា[[$1|ភាសាកំណើត]]។",
+ "babel-footer": "អ្នកប្រើប្រាស់តាមភាសា"
+}
diff --git a/MLEB/Babel/i18n/kn.json b/MLEB/Babel/i18n/kn.json
new file mode 100644
index 00000000..720e0622
--- /dev/null
+++ b/MLEB/Babel/i18n/kn.json
@@ -0,0 +1,30 @@
+{
+ "@metadata": {
+ "authors": [
+ "NamwikiTL",
+ "Nayvik",
+ "VASANTH S.N."
+ ]
+ },
+ "babel": "ಬೇಬಲ್ ಬಳಕೆದಾರರ ಮಾಹಿತಿ",
+ "babel-desc": "<code>#babel</code> ಪಾರ್ಸರ್ ಫ೦ಕ್ಷನ್ ಅನ್ನು ಸೇರಿಸುತ್ತೆ ಮತ್ತು ಅದು ಕಸ್ಟಮ್ ಬೇಬಲ್ ಟೆ೦ಪ್ಲೇಟ್ ಗಳಿರುವ ಬೇಬಲ್ ಬಳಕೆದಾರರ ಕಾಲ೦ ಅನ್ನು ಸೇರಿಸಲು ಉಪಯುಕ್ತ",
+ "babel-url": "Project:ಬೆಬೆಲ್",
+ "babel-footer-url": ":ವರ್ಗ:ಬೆಬೆಲ್-ಭಾಷೆಗೆ ಅನುಸಾರ ಬಳಕೆದಾರರು",
+ "babel-autocreate-reason": "[[$1|ಬೆಬಲ್]]ವರ್ಗದ ಪುಟವನ್ನು ಸ್ವಯಂಚಾಲಿತವಾಗಿ ಸೃಷ್ಠಿಸಲಾಗುತ್ತಿದೆ",
+ "babel-autocreate-text-levels": "ಈ ವರ್ಗದಲ್ಲಿರುವ ಬಳಕೆದಾರರಿಗೆ $1 ಮಟ್ಟದ ಭಾಷಾ ಜ್ಞಾನ $2ಭಾಷೆಯಲ್ಲಿದೆ ಎಂದು ಸೂಚಿಸುತ್ತಿದ್ದಾರೆ.",
+ "babel-autocreate-text-main": "ಈ ವರ್ಗದಲ್ಲಿರುವ ಬಳಕೆದಾರರಿಗೆ $1ಭಾಷೆಯ ಜ್ಞಾನವಿದೆ ಎಂದು ಸೂಚಿಸುತ್ತಿದ್ದಾರೆ.",
+ "babel-0": "ಈ ಬಳಕೆದಾರರಿಗೆ [[$2|$3]] ಬಗ್ಗೆ [[$1|ಶೂನ್ಯ]] ಜ್ಞಾನವಿದೆ (ಅಥವಾ ಬಹಳ ಕಷ್ಟಪಟ್ಟು ಇದನ್ನು ಅರ್ಥಮಾಡಿಕೊಳ್ಳುತ್ತಾರೆ)",
+ "babel-1": "ಈ ಬಳಕೆದಾರರಿಗೆ [[$2|$3]] ಬಗ್ಗೆ [[$1|ಪ್ರಾಥಮಿಕ]] ಜ್ಞಾನವಿದೆ",
+ "babel-2": "ಈ ಬಳಕೆದಾರರಿಗೆ [[$2|$3]] ಬಗ್ಗೆ [[$1|ಮಧ್ಯಮ ಮಟ್ಟದ]] ಜ್ಞಾನವಿದೆ",
+ "babel-3": "ಈ ಬಳಕೆದಾರರಿಗೆ [[$2|$3]] ಬಗ್ಗೆ [[$1|ಉನ್ನತ ಮಟ್ಟದ]] ಜ್ಞಾನವಿದೆ",
+ "babel-4": "ಈ ಬಳಕೆದಾರರಿಗೆ [[$2|$3]] ಬಗ್ಗೆ [[$1|ಮೂಲಭಾಷಿಕರಿಗೆ ಸಮನಾದ]] ಜ್ಞಾನವಿದೆ",
+ "babel-5": "ಈ ಬಳಕೆದಾರರಿಗೆ [[$2|$3]] ಬಗ್ಗೆ [[$1|ವೃತ್ತಿಪರ]] ಜ್ಞಾನವಿದೆ",
+ "babel-N": "ಈ ಬಳಕೆದಾರರಿಗೆ [[$2|$3]] ಬಗ್ಗೆ [[$1|ಮೂಲಭಾಷಿಕರ]] ಜ್ಞಾನವಿದೆ",
+ "babel-0-n": "ಈ ಬಳಕೆದಾರರಿಗೆ [[$2|ಕನ್ನಡ ಭಾಷೆ]] ಬಗ್ಗೆ [[$1|ಶೂನ್ಯ]] ಜ್ಞಾನವಿದೆ (ಅಥವಾ ಬಹಳ ಕಷ್ಟಪಟ್ಟು ಅರ್ಥ ಮಾಡಿಕೊಳ್ಳುತ್ತಾರೆ)",
+ "babel-1-n": "ಈ ಬಳಕೆದಾರರಿಗೆ [[$2|ಕನ್ನಡ ಭಾಷೆ]] ಬಗ್ಗೆ [[$1|ಪ್ರಾಥಮಿಕ]] ಜ್ಞಾನವಿದೆ",
+ "babel-2-n": "ಈ ಬಳಕೆದಾರರಿಗೆ [[$2|ಕನ್ನಡ ಭಾಷೆ]] ಬಗ್ಗೆ [[$1|ಮಧ್ಯಮ ಮಟ್ಟದ]] ಜ್ಞಾನವಿದೆ",
+ "babel-3-n": "ಈ ಬಳಕೆದಾರರಿಗೆ [[$2|ಕನ್ನಡ ಭಾಷೆ]] ಬಗ್ಗೆ [[$1|ಉನ್ನತ ಮಟ್ಟದ]] ಜ್ಞಾನವಿದೆ",
+ "babel-4-n": "ಈ ಬಳಕೆದಾರರಿಗೆ [[$2|ಕನ್ನಡ ಭಾಷೆ]] ಬಗ್ಗೆ [[$1|ಮೂಲಭಾಷಿಕರಿಗೆ ಸಮನಾದ]] ಜ್ಞಾನವಿದೆ",
+ "babel-5-n": "ಈ ಬಳಕೆದಾರರಿಗೆ [[$2|ಕನ್ನಡ ಭಾಷೆ]] ಬಗ್ಗೆ [[$1|ವೃತ್ತಿಪರ]] ಜ್ಞಾನವಿದೆ",
+ "babel-N-n": "ಈ ಬಳಕೆದಾರರಿಗೆ [[$2|ಕನ್ನಡ ಭಾಷೆ]] ಬಗ್ಗೆ [[$1|ಮೂಲಭಾಷಿಕರ]] ಜ್ಞಾನವಿದೆ"
+}
diff --git a/MLEB/Babel/i18n/ko.json b/MLEB/Babel/i18n/ko.json
new file mode 100644
index 00000000..db66d4ac
--- /dev/null
+++ b/MLEB/Babel/i18n/ko.json
@@ -0,0 +1,33 @@
+{
+ "@metadata": {
+ "authors": [
+ "Gapo",
+ "Kwj2772",
+ "아라"
+ ]
+ },
+ "babel": "사용자 언어 정보",
+ "babel-desc": "사용자 지정 틀을 포함할 수 있는 바벨 유저박스 단을 만들 수 있도록 <code>#babel</code> 파서 함수를 추가합니다",
+ "babel-url": "Project:바벨",
+ "babel-footer-url": ":분류:언어별 사용자",
+ "babel-autocreate-abort": "입력한 계정 이름은 [[$1|바벨]] 분류 자동 만들기를 위해 사용되고 있어서 등록할 수 없습니다.",
+ "babel-autocreate-reason": "[[$1|사용자 언어]] 분류를 자동적으로 만들었습니다.",
+ "babel-autocreate-text-levels": "이 분류 안에 있는 사용자는 $2를 $1단계 수준으로 구사할 수 있다는 것을 나타냅니다.",
+ "babel-autocreate-text-main": "이 분류 안에 있는 사용자는 $1를 구사할 수 있습니다.",
+ "babel-autocreate-user": "바벨 자동 만듦",
+ "babel-0": "이 사용자는 [[$2|$3]]를 [[$1|모르거나]], 이해하는 데 어려움이 있습니다.",
+ "babel-1": "이 사용자는 [[$2|$3]]를 [[$1|조금]] 할 수 있습니다.",
+ "babel-2": "이 사용자는 [[$2|$3]]를 [[$1|어느 정도]] 할 수 있습니다.",
+ "babel-3": "이 사용자는 [[$2|$3]]를 [[$1|유창하게]] 할 수 있습니다.",
+ "babel-4": "이 사용자는 [[$2|$3]]를 [[$1|모국어에 준하는 수준]]으로 할 수 있습니다.",
+ "babel-5": "이 사용자는 [[$2|$3]]를 [[$1|전문가 수준]]으로 할 수 있습니다.",
+ "babel-N": "이 사용자는 [[$2|$3]]가 [[$1|모국어]]입니다.",
+ "babel-0-n": "이 사용자는 [[$2|한국어]]를 [[$1|모르거나]], 이해하는 데 어려움이 있습니다.",
+ "babel-1-n": "이 사용자는 [[$2|한국어]]를 [[$1|조금]] 할 수 있습니다.",
+ "babel-2-n": "이 사용자는 [[$2|한국어]]를 [[$1|어느 정도]] 할 수 있습니다.",
+ "babel-3-n": "이 사용자는 [[$2|한국어]]를 [[$1|유창하게]] 할 수 있습니다.",
+ "babel-4-n": "이 사용자는 [[$2|한국어]]를 [[$1|모국어에 준하는 수준]]으로 할 수 있습니다.",
+ "babel-5-n": "이 사용자는 [[$2|한국어]]를 [[$1|전문가 수준]]으로 할 수 있습니다.",
+ "babel-N-n": "이 사용자는 [[$2|한국어]]가 [[$1|모국어]]입니다.",
+ "babel-footer": "언어별 사용자"
+}
diff --git a/MLEB/Babel/i18n/krc.json b/MLEB/Babel/i18n/krc.json
new file mode 100644
index 00000000..8197c4f1
--- /dev/null
+++ b/MLEB/Babel/i18n/krc.json
@@ -0,0 +1,30 @@
+{
+ "@metadata": {
+ "authors": [
+ "Iltever"
+ ]
+ },
+ "babel": "Къошулуучуну тиллерини юсюнден информация (Вавилон)",
+ "babel-desc": "Башха шаблонланыда къошаргъа болгъан информация бла колонканы автомат къураргъа берген парсерни <code>#babel</code> функциясын къошады.",
+ "babel-url": "Project:Вавилон",
+ "babel-footer-url": ":Category:Википедия:Тиллеге кёре къошулуучула",
+ "babel-autocreate-abort": "Белгиленнген аты къошулгъанны [[$1|Вавилон]] категорияны бетлерин автомат къураргъа хайырланады, регистрация этилинмейди.",
+ "babel-autocreate-reason": "[[$1|Вавилон]] категорияны бетлерин автомат къурау",
+ "babel-autocreate-text-levels": "Бу категориядагъы къошулуучула $2 тилге билгенлерине $1 дараджа белгилегендиле.",
+ "babel-autocreate-text-main": "Бу категориядагъы къошулуучула $1 тилни билгенлерин белгилегендиле.",
+ "babel-0": "[[$2|$3]] — [[$1|билмейди]] (неда аз ангылайды)",
+ "babel-1": "[[$2|$3]] — [[$1|тамал дараджа]]",
+ "babel-2": "[[$2|$3]] — [[$1|орта дараджа]]",
+ "babel-3": "[[$2|$3]] — [[$1|иги дараджа]]",
+ "babel-4": "[[$2|$3]] — [[$1|ана тили кибик]]",
+ "babel-5": "[[$2|$3]] — [[$1|профессионал дараджа]]",
+ "babel-N": "[[$2|$3]] — [[$1|ана тили]]",
+ "babel-0-n": "Бу къошулуучу [[$2|къарачай-малкъар тилни]] [[$1|билмейди]] (неда аз ангылайды).",
+ "babel-1-n": "Бу къошулуучу [[$2|къарачай-малкъар тилни]] [[$1|тамал дараджада]] биледи.",
+ "babel-2-n": "Бу къошулуучу [[$2|къарачай-малкъар тилни]] [[$1|орта дараджада]] биледи.",
+ "babel-3-n": "Бу къошулуучу [[$1|эркин]] биледи [[$2|къарачай-малкъар тилни]].",
+ "babel-4-n": "Бу къошулуучу [[$2|къарачай-малкъар тилни]] [[$1|ана тил кибик]] биледи.",
+ "babel-5-n": "Бу къошулуучу [[$2|къарачай-малкъар тилни]] [[$1|профессионал дараджада]] биледи.",
+ "babel-N-n": "Бу къошулуучуну [[$1|ана тили]] [[$2|къарачай-малкъар тилди]].",
+ "babel-footer": "Тиллеге кёре къошулуучула"
+}
diff --git a/MLEB/Babel/i18n/ksh.json b/MLEB/Babel/i18n/ksh.json
new file mode 100644
index 00000000..4e895ad1
--- /dev/null
+++ b/MLEB/Babel/i18n/ksh.json
@@ -0,0 +1,31 @@
+{
+ "@metadata": {
+ "authors": [
+ "Purodha"
+ ]
+ },
+ "babel": "{{GENDER:$1|Däm $1 sing|Däm $1 sing|Däm Medmaacher $1 sing|Däm $1 sing|Dä Metmaacheren $1 ier}} Shprooche-Weße",
+ "babel-desc": "Brengk de <code>#babel</code>-Paaserfongxjohn, womet me automatesch ene Babel-Medmaacher-Kaste opboue kann, un dobeij och selfßjemaate Schabloone nozze kan.",
+ "babel-url": "Project:Babel",
+ "babel-footer-url": ":Category:Babel - Metmaacher noh Shprooche",
+ "babel-autocreate-abort": "Dä Metmaachername es ald verjovve för [[$1|Babel]]-{{int:categories}} automattesch aanzelääje, dä kanns De nit han.",
+ "babel-autocreate-reason": "En Saachjrupp fum [[$1|Babel]]-Süßteem es automattesch aanjelaat woode.",
+ "babel-autocreate-text-levels": "De Metmaacher un Metmaacherėnne en heh dä Saachjropp han jesaat, se künnte di Schprohch $1 $2.",
+ "babel-autocreate-text-main": "Metmaacher en hee dä Saachjrupp han jesaat, se künnte vum $1 jet.",
+ "babel-autocreate-user": "Babel-Automomatetsch-Aanlääjer",
+ "babel-0": "Heh {{GENDER:$4|dä|dat|dä Medmaacher|dat|di}} hät [[$1|keij]] Aahnong fon [[$2|$3]], odder ferschteijt di Shprooch esu joot wi jaa nit.",
+ "babel-1": "Heh {{GENDER:$4|dä|dat|dä Medmaacher|dat|di}} hät [[$1|Jrondlaare]] fon [[$2|$3]] drop.",
+ "babel-2": "Heh {{GENDER:$4|dä|dat|dä Medmaacher|dat|di}} kann [[$1|meddeljoot]] met [[$2|$3]] ömjonn.",
+ "babel-3": "Heh {{GENDER:$4|dä|dat|dä Medmaacher|dat|di}} kann [[$2|$3]] [[$1|reschtesch joot]].",
+ "babel-4": "För heh {{GENDER:$4|dä|dat|dä Medmaacher|dat|di}} eß [[$2|$3]] [[$1|bahl wi {{GENDER:$4|sing|däm sing|en|en|ier}} Mottershprooch]].",
+ "babel-5": "Heh {{GENDER:$4|dä|dat|dä Medmaacher|dat|di}} bruch [[$2|$3]] [[$1|berohflesh]].",
+ "babel-N": "{{GENDER:$4\n|Heh däm sing [[$1|Mottershprooch]] eß [[$2|$3]]\n|Heh däm sing [[$1|Mottershprooch]] eß [[$2|$3]]\n|För heh dä Medmaacher eß [[$2|$3]] de [[$1|Mottershprooch]]\n|För dat heh eß [[$2|$3]] de [[$1|Mottershprooch]]\n|Heh dä ier [[$1|Mottershprooch]] eß [[$2|$3]]\n}}.",
+ "babel-0-n": "Heh {{GENDER:$4|dä|dat|dä Medmaacher|dat|di}} hät [[$1|keij Aahnong]] fon enne [[$2|ripoaresche Shprooch]], odder fershteijt fum ripoaresch Platt esu joot wi nix.",
+ "babel-1-n": "Heh {{GENDER:$4|dä|dat|dä Medmaacher|dat|di}} hät [[$1|Jrondlaare]] fon ennem [[$2|ripoaresch Platt]] drop.",
+ "babel-2-n": "Heh {{GENDER:$4|dä|dat|dä Medmaacher|dat|di}} kann med_ennem [[$2|ripoaresch Platt]] [[$1|meddeljoot]] ömjonn.",
+ "babel-3-n": "Heh {{GENDER:$4|dä|dat|dä Medmaacher|dat|di}} kann [[$2|en ripoaresch Shprooch]] [[$1|reschtesch joot]].",
+ "babel-4-n": "För heh {{GENDER:$4|dä|dat|dä Medmaacher|dat|di}} es [[$2|e ripoaresch Platt]] [[$1|bahl wi {{GENDER:$4|sing|sing|de|de|ier}} Mottershprooch]].",
+ "babel-5-n": "Heh {{GENDER:$4|dä|dat|dä Medmaacher|dat|di}} brur_en [[$2|ripoaresche Sproor]]_[[$1|em Berohf]].",
+ "babel-N-n": "{{GENDER:$4\n|Heh däm sing [[$1|Motterschprohch]] es_en [[$2|ripoaresche Schprohch]]\n|Heh däm sing [[$1|Motterschprohch]] es_en [[$2|ripoaresche Schprohch]]\n|För heh dä Medmaacher es_en [[$2|ripoaresche Schprohch]] de [[$1|Motterschprohch]]\n|För dat heh es_en [[$2|ripoaresche Schprooch]] de [[$1|Motterschprohch]]\n|Heh dä ier [[$1|Motterschprohch]] es_en [[$2|ripoaresche Schprohch]]\n}}.",
+ "babel-footer": "Metmaacher noh Shprooche"
+}
diff --git a/MLEB/Babel/i18n/ku-latn.json b/MLEB/Babel/i18n/ku-latn.json
new file mode 100644
index 00000000..33180f65
--- /dev/null
+++ b/MLEB/Babel/i18n/ku-latn.json
@@ -0,0 +1,9 @@
+{
+ "@metadata": {
+ "authors": [
+ "George Animal"
+ ]
+ },
+ "babel-template": "Template:$1",
+ "babel-footer": "Bikarhêner li gorî ziman"
+}
diff --git a/MLEB/Babel/i18n/kw.json b/MLEB/Babel/i18n/kw.json
new file mode 100644
index 00000000..e356c193
--- /dev/null
+++ b/MLEB/Babel/i18n/kw.json
@@ -0,0 +1,33 @@
+{
+ "@metadata": {
+ "authors": [
+ "Kernoweger",
+ "Kw-Moon",
+ "Nicky.ker",
+ "Nrowe"
+ ]
+ },
+ "babel": "Derivadow Babel an devnydhyer",
+ "babel-desc": "Keworra an gwythres styryer <code>#babel</code> rag alowa denethyans awtomategys a goloven gist-devnydhyer babel gans an gallos a ynkludya skantlyns personelhes",
+ "babel-url": "Project:Babel",
+ "babel-footer-url": ":Category:Babel - Devnydhyoryon herwydh yeth",
+ "babel-autocreate-abort": "Devnydhys yw an hanow-devnydhyer res genowgh rag awto-gwruthyl skantlyns [[$1|Babel]] ha ny yllir y govskrifa.",
+ "babel-autocreate-reason": "Ow kwruthyl yn awtomatek folen an klass [[$1|Babel]].",
+ "babel-autocreate-text-levels": "Devnydhyoryon y'n klass-ma a dheklar y's teves niver $1 rag $2.",
+ "babel-autocreate-text-main": "Devnydhyoryon y'n klass-ma a dheklar y's teves godhvos a $1.",
+ "babel-0": "[[$1|Ny wor]] an devnydhyer-ma konvedhes [[$2|$3]] (po a'n gor gans kaletter dres ehen).",
+ "babel-1": "An devnydhyer-ma a wor skrifa [[$2|$3]] orth nivel [[$1|sempel]].",
+ "babel-2": "An devnydhyer-ma a wor skrifa [[$2|$3]] orth nivel [[$1|kres]].",
+ "babel-3": "An devnydhyer-ma a wor skrifa [[$2|$3]] orth nivel [[$1|avonsys]].",
+ "babel-4": "An devnydhyer-ma a wor skrifa [[$2|$3]] [[$1|kepar ha mammyeth]].",
+ "babel-5": "An devnydhyer-ma a wor scrifa [[$2|$3]] orth nivel [[$1|galwansek]].",
+ "babel-N": "[[$2|$3]] yw [[$1|mammyeth]] an devnydhyer-ma.",
+ "babel-0-n": "[[$1|Ny wor]] an devnydhyer-ma konvedhes [[$2|Kernewek]].",
+ "babel-1-n": "An devnydhyer-ma a wor skrifa [[$2|Kernewek]] orth nivel [[$1|sempel]].",
+ "babel-2-n": "An devnydhyer-ma a wor skrifa [[$2|Kernewek]] orth nivel [[$1|kres]].",
+ "babel-3-n": "An devnydhyer-ma a wor skrifa [[$2|Kernewek]] orth nivel [[$1|avonsys]].",
+ "babel-4-n": "An devnydhyer-ma a wor skrifa [[$2|Kernewek]] [[$1|kepar ha mammyeth]].",
+ "babel-5-n": "An devnydhyer-ma a wor skrifa [[$2|Kernewek]] orth nivel [[$1|galwansek]].",
+ "babel-N-n": "[[$2|Kernewek]] yw [[$1|mammyeth]] an devnydhyer-ma.",
+ "babel-footer": "Devnydhyoryon herwydh yeth"
+}
diff --git a/MLEB/Babel/i18n/ky.json b/MLEB/Babel/i18n/ky.json
new file mode 100644
index 00000000..3e843f21
--- /dev/null
+++ b/MLEB/Babel/i18n/ky.json
@@ -0,0 +1,31 @@
+{
+ "@metadata": {
+ "authors": [
+ "AidaBishkek",
+ "Chorobek"
+ ]
+ },
+ "babel": "Колдонуучунун билген тилдери тууралуу мааалыматтар (Вавилон)",
+ "babel-desc": "Башка калыптарга кошконго мүмкүн болгон, колдонуучунун Вавилон жадыбалын автоматтык түрдө түзүүчү <code>#babel</code> парсер функциясын кошот.",
+ "babel-url": "Project:Вавилон",
+ "babel-footer-url": ":Category:Вавилон - колдонуучулар тилдери боюнча",
+ "babel-autocreate-abort": "Сиз көрсөткөн колдонуучун аты [[$1|Babel]] категориясын автоматтык түрдө түзүүдө колдонулат жана каттаганга болбойт.",
+ "babel-autocreate-reason": "[[$1|Babel]] категория барагын автоматтык түрдө түзүү.",
+ "babel-autocreate-text-levels": "Бул категориядагы колдонуучулар $1 деңгээлде $2 тилин билгендигин белгилешүүдө.",
+ "babel-autocreate-text-main": "Бул категориядагы колдонуучулар $1 тилин билгендигин белгилешүүдө.",
+ "babel-0": "Бул колдонуучу [[$2|$3]] [[$1|такыр]] билбейт (же бир кыйла кыйынчылык менен түшүнөт).",
+ "babel-1": "Бул колдонуучу [[$2|$3]] [[$1|башталгыч деңгээлде]] билет.",
+ "babel-2": "Бул колдонуучу [[$2|$3]] [[$1|орто деңгээлде]] билет.",
+ "babel-3": "Бул колдонуучу [[$2|$3]] [[$1|жогорку деңгээлде]] билет.",
+ "babel-4": "Бул колдонуучу [[$2|$3]] [[$1|эне тилиндей]] билет.",
+ "babel-5": "Бул колдонуучу [[$2|$3]] [[$1|кесипкөй деңгээлде]] билет.",
+ "babel-N": "Бул колдонуучунун [[$1|эне тили]] - [[$2|$3]]",
+ "babel-0-n": "Бул колдонуучу [[$2|кыргыз тилин]] [[$1|такыр]] билбейт (же бир кыйла кыйынчылык менен түшүнөт).",
+ "babel-1-n": "Бул колдонуучу [[$2|кыргыз тилин]] [[$1|башталгыч деңгээлде]] билет.",
+ "babel-2-n": "Бул колдонуучу [[$2|кыргыз тилин]] [[$1|орто деңгээлде]] билет.",
+ "babel-3-n": "Бул колдонуучу [[$2|кыргыз тилин]] [[$1|жогорку деңгээлде]] билет.",
+ "babel-4-n": "Бул колдонуучу [[$2|кыргыз тилин]] [[$1|эне тилиндей]] билет.",
+ "babel-5-n": "Бул колдонуучу [[$2|кыргыз тилин]] [[$1|кесипкөй деңгээлде]] билет.",
+ "babel-N-n": "Бул колдонуучунун [[$1|эне тили]] - [[$2|кыргыз тили]].",
+ "babel-footer": "Колдонуучулар билген тилдери боюнча"
+}
diff --git a/MLEB/Babel/i18n/la.json b/MLEB/Babel/i18n/la.json
new file mode 100644
index 00000000..003c0507
--- /dev/null
+++ b/MLEB/Babel/i18n/la.json
@@ -0,0 +1,37 @@
+{
+ "@metadata": {
+ "authors": [
+ "John Vandenberg",
+ "Kaganer",
+ "OrbiliusMagister",
+ "Purodha",
+ "SPQRobin",
+ "Tpt",
+ "UV"
+ ]
+ },
+ "babel": "res usoribus sciendae de Babel",
+ "babel-desc": "<code>#babel</code> functio additur ut capsa linguarum scientiam usoris describens se ipsa creetur. Formulae aliae ac linguas describentes includi possunt",
+ "babel-url": "Project:Babel",
+ "babel-footer-url": ":Category:Usores lingua digesti",
+ "babel-autocreate-abort": "Nomen a te electum, quod utilis est ad [[$1|Babel]] categorias creandas, inscribi non potest.",
+ "babel-autocreate-reason": "[[$1|Babel]] Categoriae pagina ipsa mox creabitur. Expecta, quaeso.",
+ "babel-autocreate-text-levels": "Usores in hac categoria inclusi nuntiant sibi gradum $1 utendi linguam $2 esse",
+ "babel-autocreate-text-main": "Usores in hac categoria inclusi nuntiant se contribuere posse cum lingua $1",
+ "babel-autocreate-user": "Babel AutoCreator",
+ "babel-0": "Hic usor [[$1|nullo pacto]] aut aegre [[$2|$3]] contribuere potest.",
+ "babel-1": "Hic usor [[$1|simplici]] [[$2|$3]] contribuere potest.",
+ "babel-2": "Hic usor [[$1|media]] [[$2|$3]] contribuere potest.",
+ "babel-3": "Hic usor [[$1|callidissima]] [[$2|$3]] contribuere potest.",
+ "babel-4": "Hic usor [[$1|tamquam nativus loquens]] [[$2|$3]] contribuere potest",
+ "babel-5": "Hic usor [[$1|magistrali]] [[$2|$3]] contribuere potest.",
+ "babel-N": "Hic usor [[$1|native]] [[$2|$3]] loquitur.",
+ "babel-0-n": "Hic usor [[$1|nullo pacto]] aut aegre [[$2|Latinitate]] contribuere potest.",
+ "babel-1-n": "Hic usor [[$1|simplici]] [[$2|latinitate]] contribuere potest.",
+ "babel-2-n": "Hic usor [[$1|media]] [[$2|Latinitate]] contribuere potest.",
+ "babel-3-n": "Hic usor [[$1|callidissima]] [[$2|Latinitate]] contribuere potest.",
+ "babel-4-n": "Hic usor regulas grammaticas observans [[$1|optima]] [[$2|Latinitate]] scribere (et interdum loqui) scit.",
+ "babel-5-n": "Hic usor [[$1|magistrali]] [[$2|Latinitate]] contribuere potest",
+ "babel-N-n": "Hic usor aut [[$1|vere incredibili]] [[$2|Latinitate]] contribuere potest... aut fortasse mentitur.",
+ "babel-footer": "Usores lingua digesti"
+}
diff --git a/MLEB/Babel/i18n/lad.json b/MLEB/Babel/i18n/lad.json
new file mode 100644
index 00000000..1af952a7
--- /dev/null
+++ b/MLEB/Babel/i18n/lad.json
@@ -0,0 +1,33 @@
+{
+ "@metadata": {
+ "authors": [
+ "Jewbask",
+ "Maor X",
+ "Purodha",
+ "Universal Life"
+ ]
+ },
+ "babel": "Enformasyón de usador de Babel",
+ "babel-desc": "Ajustar la <code>#babel</code> fonksyón analitika para dar lecencia a la generancia otomatika de un columna de caxa de usador babel con la abilidad de tener xabblones propios",
+ "babel-url": "Project:Babel",
+ "babel-footer-url": ":Category:Babel - Usadores por lîngua",
+ "babel-autocreate-abort": "El nombre de usador que escogites se usa para la oto-criación de katēggorías [[$1|Babel]] i no puede ser rejistrado.",
+ "babel-autocreate-reason": "Criando otomatika mente, la hoja de katēggorías [[$1|Babel]].",
+ "babel-autocreate-text-levels": "Usadores en este katēggoría declaran que tienen un nivel de kapachidad $1 de la lingua $2.",
+ "babel-autocreate-text-main": "Usadores en este katēggoría declaran que saben la lingua $1.",
+ "babel-0": "Este usador [[$1|no entiende]] el [[$2|$3]] (o lo entiende con muncha dificultad).",
+ "babel-1": "Este usador tiene un nivel [[$1|elementario]] de [[$2|$3]].",
+ "babel-2": "Este usador tiene un nivel [[$1|medio]] de [[$2|$3]].",
+ "babel-3": "Este usador tiene un nivel [[$1|adelantado]] de [[$2|$3]].",
+ "babel-4": "Este usador tiene un nivel [[$1|kaji-nativo]] de [[$2|$3]].",
+ "babel-5": "Este usador tiene un nivel [[$1|profesyonal]] de [[$2|$3]].",
+ "babel-N": "Este usador es un hablante [[$1|nativo]] de [[$2|$3]].",
+ "babel-0-n": "Este usador [[$1|no entiende]] el [[$2|Judeo-Espanyol]] <small>(o lo entiende con muncha difikultad)</small>.",
+ "babel-1-n": "Este usador tiene un nivel [[$1|elementario]] de [[$2|Judeo-Espanyol]].",
+ "babel-2-n": "Este usador tiene un nivel [[$1|medio]] de [[$2|Judeo-Espanyol]].",
+ "babel-3-n": "Este usador tiene un nivel [[$1|adelantado]] de [[$2|Judeo-Espanyol]].",
+ "babel-4-n": "Este usador tiene un nivel [[$1|kaji-nativo]] de [[$2|Judeo-Espanyol]].",
+ "babel-5-n": "Este usador tiene un nivel [[$1|profesyonal]] de [[$2|Judeo-Espanyol]].",
+ "babel-N-n": "Este usador es un hablante [[$1|nativo]] de [[$2|Judeo-Espanyol]].",
+ "babel-footer": "Usadores según lîngua"
+}
diff --git a/MLEB/Babel/i18n/lb.json b/MLEB/Babel/i18n/lb.json
new file mode 100644
index 00000000..971c590c
--- /dev/null
+++ b/MLEB/Babel/i18n/lb.json
@@ -0,0 +1,32 @@
+{
+ "@metadata": {
+ "authors": [
+ "Les Meloures",
+ "Robby"
+ ]
+ },
+ "babel": "Babel-Benotzer-Informatioun",
+ "babel-desc": "Setzt d'<code>#babel</code> Parserfunktioun derbäi, fir déi automatesch Generatioun vun enger Babel-Benotzerbox Kolonn, mat der Méiglechkeet fir eege Schablounen anzebannen",
+ "babel-url": "Project:Babel",
+ "babel-footer-url": ":Kategorie:Babel - Benotzer no Sprooch",
+ "babel-autocreate-abort": "De Benotzernumm deen Dir uginn hutt, gëtt fir d'automatescht Uleeë vu [[$1|Babel]]-Kategorië benotzt a kann net gespäichert ginn.",
+ "babel-autocreate-reason": "Automatesch eng [[$1|Babel]]-Kategorie-Säit maachen.",
+ "babel-autocreate-text-levels": "Benotzer an dëser Kategorie ginn un datt si an der Sprooch $2 den Niveau $1 hunn.",
+ "babel-autocreate-text-main": "Benotzer an dëser Kategorie ginn un datt si Kenntnesser vun der Sprooch $1 hunn.",
+ "babel-autocreate-user": "Babel automatesch uleeën",
+ "babel-0": "Dëse Benotzer huet [[$1|keng]] Kenntnesser vun [[$2|$3]] (oder versteet et just mat grousse Schwieregkeeten).",
+ "babel-1": "Dëse Benotzer huet [[$1|Grondkenntnesser]] vun [[$2|$3]].",
+ "babel-2": "Dëse Benotzer huet [[$1|erweidert]] Kenntnesser vun [[$2|$3]].",
+ "babel-3": "De Benotzer huet [[$1|ganz gutt]] Kenntnesser vun [[$2|$3]].",
+ "babel-4": "De Bemotzer beherrscht [[$2|$3]] [[$1|bal wéi seng Mammesprooch]].",
+ "babel-5": "De Benotzer huet [[$1|professionnell]] Kenntnesser vun [[$2|$3]].",
+ "babel-N": "Dësem Benotzer seng [[$1|Mammesprooch]] ass [[$2|$3]].",
+ "babel-0-n": "Dëse Benotzer versteet [[$1|kee]] [[$2|Lëtzebuergesch]] (oder versteet et just mat grousse Schwieregkeeten).",
+ "babel-1-n": "Dëse Benotzer huet [[$1|Grondkenntnesser]] vun der [[$2|Lëtzebuergescher Sprooch]].",
+ "babel-2-n": "Dëse Benotzer huet [[$1|erweidert]] Kenntnesser vun der [[$2|Lëtzebuergescher Sprooch]].",
+ "babel-3-n": "Dëse Benotzer huet [[$1|ganz gutt]] [[$2|lëtzebuergesch]] Kenntnesser.",
+ "babel-4-n": "Dëse Benotzer beherrscht [[$2|Lëtzebuergesch]] [[$1|bal wéi seng Mammesprooch]].",
+ "babel-5-n": "Dëse Benotzer huet [[$1|professionnell]] Kenntnesser vum [[$2|Lëtzebuergeschen]].",
+ "babel-N-n": "Dësem Benotzer seng [[$1|Mammesprooch]] ass [[$2|Lëtzebuergesch]].",
+ "babel-footer": "Benotzer pro Sprooch"
+}
diff --git a/MLEB/Babel/i18n/lez.json b/MLEB/Babel/i18n/lez.json
new file mode 100644
index 00000000..61db0405
--- /dev/null
+++ b/MLEB/Babel/i18n/lez.json
@@ -0,0 +1,31 @@
+{
+ "@metadata": {
+ "authors": [
+ "Migraghvi",
+ "Soul Train"
+ ]
+ },
+ "babel": "Уртахдин чlаларикай малумат",
+ "babel-desc": "<code>#babel</code> парсер-функция алава йийзва ва и функция муькуь чешнеяр кутадай мумкинвал галаз чIаларикай малумат квай колонка автоматдаказ туькIуьрун мумкинвал гузва",
+ "babel-url": "Project:Бабил",
+ "babel-footer-url": "Категория:Бабил — чӀалариз килигна уртахар",
+ "babel-autocreate-abort": "Уртахдин къалурай тlвар [[$1|Вавилон]] категория автоматдаказ туькlуьрун патал кардик кутазва ва гьа тlвар регистрация йийз жедач.",
+ "babel-autocreate-reason": "[[$1|Babel]] категориядин ччин автоматдаказ туькlуьрун",
+ "babel-autocreate-text-levels": "И категориядин уртахар $2 чlалан $1-й чирвилин дережа къалурна.",
+ "babel-autocreate-text-main": "И категориядин уртахар $1 чlалан чирвал къалурна.",
+ "babel-0": "И уртахдиз [[$2|$3]] гьич [[$1|чизвач]] (ва я четиндиказ гъавурда гьатзава)",
+ "babel-1": "И уртахдиз [[$2|$3]] чlалан [[$1|сифтегьан]] чирвилер ава.",
+ "babel-2": "И уртахдиз [[$2|$3]] чlалан [[$1|юкьван гьалдин]] чирвилер ава.",
+ "babel-3": "И уртахдиз [[$2|$3]] чlалан [[$1|хъсан]] чирвилер ава.",
+ "babel-4": "И уртахдиз [[$2|$3]] чlал [[$1|хайи чlал хьиз]] чизва.",
+ "babel-5": "И уртахдиз [[$2|$3]] чlалан [[$1|пешекарвилин]] чирвилер ава.",
+ "babel-N": "[[$2|$3]] чlал и уртахдин [[$1|хайи чlал]] я.",
+ "babel-0-n": "И уртахдиз [[$2|Лезги чIал]] гьич [[$1|чизвач]] (ва я четиндиказ гъавурда гьатзава)",
+ "babel-1-n": "И уртахдиз [[$2|Лезги чIалан]] [[$1|сифтегьан]] чирвилер ава.",
+ "babel-2-n": "И уртахдиз [[$2|Лезги чlалан ]] [[$1|юкьван гьалдин]] чирвилер ава.",
+ "babel-3-n": "И уртахдиз [[$2|Лезги чIалан]] [[$1|хъсан]] чирвилер ава.",
+ "babel-4-n": "И уртахдиз [[$2|Лезги чlал]] [[$1|хайи чlал хьиз]] чизва.",
+ "babel-5-n": "И уртахдиз [[$2|Лезги чlалан]] [[$1|пешекарвилин]] чирвилер ава.",
+ "babel-N-n": "[[$2|Лезги чlал]] и уртахдин [[$1|хайи чlал]] я.",
+ "babel-footer": "ЧIалариз килигна уртахар"
+}
diff --git a/MLEB/Babel/i18n/lfn.json b/MLEB/Babel/i18n/lfn.json
new file mode 100644
index 00000000..d8d2c009
--- /dev/null
+++ b/MLEB/Babel/i18n/lfn.json
@@ -0,0 +1,19 @@
+{
+ "@metadata": {
+ "authors": [
+ "Purodha"
+ ]
+ },
+ "babel-url": "Project:Babel",
+ "babel-0": "Esta usor ave [[$1|no capas]] de [[$2|$3]].",
+ "babel-1": "Esta usor es [[$1|poca capas]] de [[$2|$3]].",
+ "babel-2": "Esta usor es [[$1|medial capas]] de [[$2|$3]].",
+ "babel-3": "Esta usor es [[$1|bon capas]] de [[$2|$3]].",
+ "babel-4": "Esta usor es [[$1|la plu perfeta capas]] de [[$2|$3]].",
+ "babel-N": "Esta usor ave [[$2|$3]] se [[$1|lingua propre]].",
+ "babel-1-n": "Esta usor es [[$1|poca capas]] de [[$2|Lingua Franca Nova]].",
+ "babel-2-n": "Esta usor es [[$1|medial capas]] de [[$2|Lingua Franca Nova]].",
+ "babel-3-n": "Esta usor es [[$1|bon capas]] de [[$2|Lingua Franca Nova]].",
+ "babel-4-n": "Esta usor es [[$1|la plu perfeta capas]] de [[$2|Lingua Franca Nova]].",
+ "babel-N-n": "Esta usor ave [[$2|Lingua Franca Nova]] se [[$1|lingua propre]]."
+}
diff --git a/MLEB/Babel/i18n/lg.json b/MLEB/Babel/i18n/lg.json
new file mode 100644
index 00000000..8be06929
--- /dev/null
+++ b/MLEB/Babel/i18n/lg.json
@@ -0,0 +1,26 @@
+{
+ "@metadata": {
+ "authors": [
+ "Kizito"
+ ]
+ },
+ "babel": "Ebya Babbeeri ebya memba ono",
+ "babel-url": "Project:Babbeeri",
+ "babel-autocreate-reason": "Sisitemu ekolawo olupapula olw'ettuluba ery'omu [[$1|Babbeeri]].",
+ "babel-autocreate-text-levels": "Bamemba abali mu ttuluba lino obusobozi bwabwe mu $2 buli ku ddaala erya $1.",
+ "babel-autocreate-text-main": "Bamemba abali mu ttuluba lino bategeezeza nti balina obusobozi mu $1.",
+ "babel-0": "Memba ono [[$1|tamanyi]] [[$2|$3]] (oba alutegeerako kitono nyo).",
+ "babel-1": "Memba ono o[[$2|$3]] alumanyimu [[$1|ebitandikirwako]].",
+ "babel-2": "Memba ono o[[$2|$3]] alumanyimu [[$1|olusaamusamu]].",
+ "babel-3": "Memba ono o[[$2|$3]] alumanyi ku [[$1|ddaala erya waggulu]].",
+ "babel-4": "Memba ono o[[$2|$3]] alumanyi [[$1|kumpi kwenkana ng'omuzaaliranwa]].",
+ "babel-5": "Memba ono o[[$2|$3]] alumanyi [[$1|ku ddaala ery'ekikugu]].",
+ "babel-N": "Memba ono o[[$2|$3]] [[$1|lwe luzaaliranwa]].",
+ "babel-0-n": "Memba ono [[$1|tamanyi]] [[$2|Luganda]] (oba alutegeerako kitono nyo).",
+ "babel-1-n": "Memba ono [[$2|Oluganda]] alumanyimu [[$1|ebitandikirwako]].",
+ "babel-2-n": "Memba ono [[$2|Oluganda]] alumanyimu [[$1|olusaamusamu]].",
+ "babel-3-n": "Memba ono [[$2|Oluganda]] alumanyi ku [[$1|ddaala erya waggulu]].",
+ "babel-4-n": "Memba ono [[$2|Oluganda]] alumanyi [[$1|kumpi kwenkana ng'omuzaaliranwa]].",
+ "babel-5-n": "Memba ono [[$2|Oluganda]] alumanyi [[$1|ku ddaala ery'ekikugu]].",
+ "babel-N-n": "Memba ono [[$2|Oluganda]] [[$1|lwe luzaaliranwa]]."
+}
diff --git a/MLEB/Babel/i18n/li.json b/MLEB/Babel/i18n/li.json
new file mode 100644
index 00000000..f72737fb
--- /dev/null
+++ b/MLEB/Babel/i18n/li.json
@@ -0,0 +1,31 @@
+{
+ "@metadata": {
+ "authors": [
+ "Ooswesthoesbes",
+ "Pahles"
+ ]
+ },
+ "babel": "Babel Gebroekersinfermasie",
+ "babel-desc": "Voog de <code>#babel</code>-parserfónksie toe óm automatische generatie van 'ne babelgebroekersbóks mäögelik te make mit de mäögelikheid óm aangepasde sjablone in te voge",
+ "babel-url": "Project:Babel",
+ "babel-footer-url": ":Category:Babel - Gebroekers nao sjpraok",
+ "babel-autocreate-abort": "De opgegaeve gebroekersnaam weurt gebroek veur 't automatisch aanmake van [[$1|Babel]]-categorieë en kan neet geregistreerd waere.",
+ "babel-autocreate-reason": "Automatisch aanmake [[$1|Babel]]-categoriepagina.",
+ "babel-autocreate-text-levels": "Gebroekers in dees categorie gaeve aan dat hun niveau veur de taal $2 $1 is.",
+ "babel-autocreate-text-main": "Gebroekers in dees categorie gaeve aan dat zie benöl höbbe vaan de taol $1.",
+ "babel-0": "Deze gebroeker haet [[$1|gein]] benöl van 't [[$2|$3]] (of haet groete meujte 't te begriepe)",
+ "babel-1": "Deze gebroeker haet op [[$1|basisniveau]] benöl van 't [[$2|$3]].",
+ "babel-2": "Deze gebroeker haet [[$1|gemiddeld]] benöl van 't [[$2|$3]].",
+ "babel-3": "Deze gebroeker haet [[$1|good]] benöl van 't [[$2|$3]].",
+ "babel-4": "Deze gebroeker haet benöl van 't [[$2|$3]] op [[$1|bekans-mojerspraokniveau]].",
+ "babel-5": "Deze gebroeker haet [[$1|perfesjeneel]] benöl van 't [[$2|$3]].",
+ "babel-N": "Deze gebroeker haet benöl van 't [[$2|$3]] op [[$1|mojerspraokniveau]].",
+ "babel-0-n": "Deze gebroeker haet [[$1|gein]] benöl van 't [[$2|Limburgs]] (of haet groete meujte 't te begriepe).",
+ "babel-1-n": "Deze gebroeker haet op [[$1|basisniveau]] benöl van 't [[$2|Limburgs]].",
+ "babel-2-n": "Deze gebroeker haet [[$1|gemiddeld]] benöl van 't [[$2|Limburgs]].",
+ "babel-3-n": "Deze gebroeker haet [[$1|good]] benöl van 't [[$2|Limburgs]].",
+ "babel-4-n": "Deze gebroeker haet benöl van 't [[$2|Limburgs]] op [[$1|bekans-mojerspraokniveau]].",
+ "babel-5-n": "Deze gebroeker haet [[$1|perfesjeneel]] benöl van 't [[$2|Limburgs]].",
+ "babel-N-n": "Deze gebroeker haet benöl van 't [[$2|Limburgs]] op [[$1|mojerspraokniveau]].",
+ "babel-footer": "Gebroekers per sjpraok"
+}
diff --git a/MLEB/Babel/i18n/lij.json b/MLEB/Babel/i18n/lij.json
new file mode 100644
index 00000000..d57a78e3
--- /dev/null
+++ b/MLEB/Babel/i18n/lij.json
@@ -0,0 +1,15 @@
+{
+ "@metadata": [],
+ "babel-0": "St'utente ô [[$1|no]] capisce o [[$2|$3]] (o capisce con ben-ben de difficultæ).",
+ "babel-1": "St'utente ô l'è'n [[$1|prinçipiante]] de [[$2|$3]].",
+ "babel-2": "St'utenteô l'è a [[$1|mediô]] levellu de [[$2|$3]].",
+ "babel-3": "St'utente ô sa asæ de [[$2|$3]], ô l'è [[$1|avançou]].",
+ "babel-4": "St'utente ô parla [[$2|$3]] quæxi [[$1|comme ûn d'o paize]].",
+ "babel-N": "St'utentel'è [[$1|nustran]] [[$2|$3]].",
+ "babel-0-n": "St'utente ô [[$1|no]] capisce o [[$2|lìggûre]] (o capisce con ben-ben de difficultæ).",
+ "babel-1-n": "St'utente ô l'è'n [[$1|prinçipiante]] de [[$2|lìggûre]].",
+ "babel-2-n": "St'utenteô l'è a [[$1|mediô]] levellu de [[$2|lìggûre]].",
+ "babel-3-n": "St'utente ô sa asæ de [[$2|lìggûre]], ô l'è [[$1|avançou]].",
+ "babel-4-n": "St'utente ô parla [[$2|lìggûre]] quæxi [[$1|comme ûn d'o paize]].",
+ "babel-N-n": "St'utentel'è [[$1|nustran]] [[$2|lìggûre]]."
+}
diff --git a/MLEB/Babel/i18n/liv.json b/MLEB/Babel/i18n/liv.json
new file mode 100644
index 00000000..aa01674a
--- /dev/null
+++ b/MLEB/Babel/i18n/liv.json
@@ -0,0 +1,29 @@
+{
+ "@metadata": {
+ "authors": [
+ "Warbola"
+ ]
+ },
+ "babel": "Kȭlbatijizt kīeld mõistimi",
+ "babel-desc": "Panāb jūrõ <code>#babel</code> funktsij, laz lūodõg automātlistiz Bābõl kȭlbatijiz kast ummist mallõdõks",
+ "babel-url": "Project:Bābõl",
+ "babel-footer-url": ":Category:Bābõl - Kȭlbatijizt kīeld mõistimi",
+ "babel-autocreate-abort": "Kȭlbatijiznimmõ, mis tēg paņtõ sīezõ, kȭlbatõbõd kategōrijõd [[$1|Babel]] automātlizõks lūomizõks. Sīepierāst tēg äb sōţõ siedā kȭlbatõ.",
+ "babel-autocreate-reason": "[[$1|Babel]] kategōrij līed automātli lūomi.",
+ "babel-autocreate-text-levels": "Kȭlbatijizt sīesõ kategōrijs ātõ kītõnd, ku mūoštabõd kīeldõ \"$2\" astāmõks $1.",
+ "babel-autocreate-text-main": "Kȭlbatijizt sīesõ kategōrijs ātõ kītõnd, ku ne mūoštabõd kīeldõ \"$1\".",
+ "babel-0": "Se kȭlbatiji [[$1|äb mūošta]] [[$2|$3]] kīeldõ (agā mūoštab sūŗ vōjaks).",
+ "babel-1": "Se kȭlbatiji mūoštab [[$2|$3]] kīeldõ [[$1|īrgandõks astāmõs]] .",
+ "babel-2": "Se kȭlbatiji mūoštab [[$1|sidāmist astāmõs]] [[$2|$3]].",
+ "babel-3": "Se kȭlbatiji mūoštab [[$2|$3]] kīeldõ [[$1|kuordist astāmõs]].",
+ "babel-4": "Se kȭlbatiji mūoštab [[$2|$3]] kīeldõ [[$1|pigātagā nei ku sindikīeldõ]].",
+ "babel-5": "Se kȭlbatiji mūoštab [[$2|$3]] kīeldõ [[$1|amāt pūolstõ (profesionālist astāmõs)]].",
+ "babel-N": "Sīen kȭlbatijizõn um [[$2|$3]] kēļ [[$1|sindikēļ]].",
+ "babel-0-n": "Se kȭlbatiji [[$1|äb mūošta]] [[$2|līvõ kīeldõ]] (agā mūoštab sūŗ vōjaks).",
+ "babel-1-n": "Se kȭlbatiji mūoštab [[$2|līvõ]] kīeldõ [[$1|īrgandõks]] astāmõs.",
+ "babel-2-n": "Se kȭlbatiji mūoštab [[$2|līvõ]] kīeldõ [[$1|sidāmist]] astāmõs.",
+ "babel-3-n": "Se kȭlbatiji mūoštab [[$2|līvõ kīeldõ]] [[$1|kuordist]] astāmõs.",
+ "babel-4-n": "Se kȭlbatiji mūoštab [[$2|līvõ kīeldõ]] pigātagā [[$1| nei ku sindikīeldõ]].",
+ "babel-5-n": "Se kȭlbatiji mūoštab [[$2|līvõ]] kīeldõ [[$1|profesionālist]] astāmõs.",
+ "babel-N-n": "Sīen kȭlbatijizõn um [[$2|līvõ]] kēļ [[$1|sindikēļ]]."
+}
diff --git a/MLEB/Babel/i18n/lki.json b/MLEB/Babel/i18n/lki.json
new file mode 100644
index 00000000..68a1039d
--- /dev/null
+++ b/MLEB/Babel/i18n/lki.json
@@ -0,0 +1,30 @@
+{
+ "@metadata": {
+ "authors": [
+ "Hosseinblue"
+ ]
+ },
+ "babel": "زانستن دربارۀ بهرۀگر-کاربر بابل",
+ "babel-desc": "دستور تجزیه گر<code>#babel</code> اضافۀ مۀکه گه مآوو یه سرۀ جعبۀل کاربری بابل دؤرس که گه توانایی سازین الگؤۀل تازۀ درئ",
+ "babel-url": "Project:بابل",
+ "babel-footer-url": ":Category: بابل-بهرۀگر یا کاربرۀل ئه رؤی زوون",
+ "babel-autocreate-abort": "نؤم کاربری-بهرۀگرئ گه دیارت کردئۀ ئۀرا دؤرس کردن یه سرۀ رزگ-دسۀ[[$1|بابل]] استفادۀ بیۀ نمآوو نؤم نؤیسی بوو.",
+ "babel-autocreate-reason": "[[$1|babel]] دؤرس کردن یه سرۀ-خؤدکار ولگۀ رِزگی-ردیفی",
+ "babel-autocreate-text-levels": "بهرۀگرۀل-کاربرۀل ئئ رزگۀ-دسۀ ئۀ زوون $2 کارزؤنی سطح $1درن",
+ "babel-autocreate-text-main": "کاربرۀل-بهرۀگرۀل ئئ رزگۀ-دسۀ زوون $1 مزانن",
+ "babel-0": "ئئ کاربرۀ-بهرۀگرۀ[[$2|$3]] [[$1|نمۀزانئ]] یا (سخت حالّیۀ مآووتئ).",
+ "babel-1": "ئئ کاربرۀ-بهرۀگرۀ[[$2|$3]] چنۀ-درحد[[$1|پائۀای]]مۀزانئ",
+ "babel-2": "ئئ کاربرۀ-بهرۀگرۀ[[$2|$3]] چنۀدرحد[[$1|نیمچۀ -متوسط]]مۀزانئ",
+ "babel-3": "ئئ کاربرۀ-بهرۀگرۀ[[$2|$3]] درحد-چنۀ[[$1|ترختی کریا-پیشرفتۀ]]مۀزانئ",
+ "babel-4": "ئئ کاربرۀ-بهرۀگرۀ[[$2|$3]] چنۀ-درحد[[$1|نۀزیک زوون وژمانی-دآئ]]مۀزانئ",
+ "babel-5": "ئئ کاربرۀ-بهرۀگرۀ[[$2|$3]] چنۀ-درحد[[$1|فرۀ خوو]]مۀزانئ",
+ "babel-N": "ئئ کاربرۀ-بهرۀگرۀ[[$2|$3]] چنۀ-درحد[[$1|زوون وژمانی-دآئ]]مۀزانئ",
+ "babel-0-n": "ئئ کاربرۀ-بهرۀگرۀ[[$2|له کی]] [[$1|نمۀزانئ]] یا (سخت حالّیۀ مآووتئ).",
+ "babel-1-n": "ئئ کاربرۀ-بهرۀگرۀ[[$2|له کی]] چنۀ-درحد[[$1|پائۀای]]مۀزانئ",
+ "babel-2-n": "ئئ کاربرۀ-بهرۀگرۀ[[$2|له کی]]چنۀ-درحد[[$1|نیمچۀ -متوسط]]مۀزانئ",
+ "babel-3-n": "ئئ کاربرۀ-بهرۀگرۀ[[$2|له کی]] چنۀ-درحد[[$1|ترختی کریا-پیشرفتۀ]]مۀزانئ",
+ "babel-4-n": "ئئ کاربرۀ-بهرۀگرۀ[[$2|له کی]] چنۀ-درحد[[$1|نۀزیک زوون وژمانی-دآئ]]مۀزانئ",
+ "babel-5-n": "ئئ کاربرۀ-بهرۀگرۀ[[$2|$3]] چنۀ-درحد[[$1|فرۀ خوو]]مۀزانئ",
+ "babel-N-n": "ئئ کاربرۀ-بهرۀگرۀ[[$2|$3]] چنۀ-درحد[[$1|زوون وژمانی-دآئ]]مۀزانئ",
+ "babel-footer": "کاربرۀل-بهرۀگرۀل ئه رؤی زوون"
+}
diff --git a/MLEB/Babel/i18n/lld.json b/MLEB/Babel/i18n/lld.json
new file mode 100644
index 00000000..acb3de29
--- /dev/null
+++ b/MLEB/Babel/i18n/lld.json
@@ -0,0 +1,13 @@
+{
+ "@metadata": [],
+ "babel-1": "Chësc utënt possa contribuì cun n livel [[$1|bas]] de [[$2|$3]].",
+ "babel-2": "Chësc utënt possa contribuì cun n livel [[$1|mesan]] de [[$2|$3]].",
+ "babel-3": "Chësc utënt possa contribuì cun n livel [[$1|aut]] de [[$2|$3]].",
+ "babel-4": "Chësc utënt possa contribuì cun n livel [[$1|daujin ala rujeneda de l'oma]] de [[$2|$3]].",
+ "babel-N": "Chësc utënt possa contribuì cun n livel [[$1|de rujeneda de l'oma]] de [[$2|$3]].",
+ "babel-1-n": "Chësc utënt possa contribuì cun n livel [[$1|bas]] de [[$2|ladin]].",
+ "babel-2-n": "Chësc utënt possa contribuì cun n livel [[$1|mesan]] de [[$2|ladin]].",
+ "babel-3-n": "Chësc utënt possa contribuì cun n livel [[$1|aut]] de [[$2|ladin]].",
+ "babel-4-n": "Chësc utënt possa contribuì cun n livel [[$1|daujin ala rujeneda de l'oma]] de [[$2|ladin]].",
+ "babel-N-n": "Chësc utënt possa contribuì cun n livel [[$1|de rujeneda de l'oma]] de [[$2|ladin]]."
+}
diff --git a/MLEB/Babel/i18n/lmo.json b/MLEB/Babel/i18n/lmo.json
new file mode 100644
index 00000000..ff46ff61
--- /dev/null
+++ b/MLEB/Babel/i18n/lmo.json
@@ -0,0 +1,32 @@
+{
+ "@metadata": {
+ "authors": [
+ "Dakrismeno",
+ "Gloria sah",
+ "Sprüngli"
+ ]
+ },
+ "babel": "Infurmazion Babel del druvat",
+ "babel-desc": "Gionta la 'parser function' <code>#babel</code> per permet la generazion utumatega d'un quader \"druvat Babel\" cun la pussibilità da metegh denter 'l templat persunalizaa",
+ "babel-url": "Project:Babel",
+ "babel-footer-url": ":Catégorja:Babel - Druvat per lingua",
+ "babel-autocreate-abort": "'L suranom che t'hee specificaa a l'è druvaa per l'auto-creazion de categurij [[$1|Babel]] e 'l pör mía vess registraa.",
+ "babel-autocreate-reason": "Creazion utumatega de la pagina de la categurìa [[$1|Babel]].",
+ "babel-autocreate-text-levels": "I druvat in quela categuria chì i mustren d'avegh un nivel de cunuscenza $1 de la lengua $2.",
+ "babel-autocreate-text-main": "I druvat in quela categuria chì i mustren ch'i cugnussen la lengua $1.",
+ "babel-0": "Quel dupradur chì 'l gh'ha [[$1|mía]] de cunuscenza de [[$2|$3]] (o 'l le cumprend cun di gran dificultaa)",
+ "babel-1": "Quel druvat chì 'l gh'ha una cunuscenza [[$1|basilara]] de [[$2|$3]].",
+ "babel-2": "Quel druvat chì 'l gh'ha una cunuscenza [[$1|intermedia]] de [[$2|$3]].",
+ "babel-3": "Quel druvat chì 'l gh'ha una cunuscenza [[$1|avanzada]] de [[$2|$3]].",
+ "babel-4": "Quel druvat chì 'l gh'ha una cunuscenza [[$1|asquas madrelengua]] de [[$2|$3]].",
+ "babel-5": "Chestu dovratt al gh'a una cognossenza [[$1|professionala]] de [[$2|$3]].",
+ "babel-N": "Quel druvat chì l'è un parlant [[$1|madrelengua]] de [[$2|$3]].",
+ "babel-0-n": "Quel dupradur chì 'l cugnuss [[$1|mía]] 'l [[$2|Lumbard]] (o 'l le cumprend cun di gran dificultaa).",
+ "babel-1-n": "Quel druvat chì 'l gh'ha una cunuscenza [[$1|basilar]] del [[$2|Lumbard]].",
+ "babel-2-n": "Quel druvat chì 'l gh'ha una cunuscenza [[$1|intermedia]] del [[$2|Lumbard]].",
+ "babel-3-n": "Quel druvat chì 'l gh'ha una cunuscenza [[$1|avanzada]] del [[$2|Lumbard]].",
+ "babel-4-n": "Quel druvat chì 'l gh'ha una cunuscenza [[$1|asquas maderlengua]] del [[$2|Lumbard]]",
+ "babel-5-n": "Quel druvat chì 'l gh'ha una cunuscenza [[$1|prufessiunal]] del [[$2|Lumbard]].",
+ "babel-N-n": "Quel druvat chì l'è de [[$1|maderlengua]] [[$2|Lumbarda]].",
+ "babel-footer": "Druvat per lingua"
+}
diff --git a/MLEB/Babel/i18n/ln.json b/MLEB/Babel/i18n/ln.json
new file mode 100644
index 00000000..ea75a8d4
--- /dev/null
+++ b/MLEB/Babel/i18n/ln.json
@@ -0,0 +1,20 @@
+{
+ "@metadata": {
+ "authors": [
+ "Moyogo"
+ ]
+ },
+ "babel": "Liyébisi Babel ya moto",
+ "babel-0": "Moto óyo ayébí koloba [[$2|$3]] [[$1|tɛ̂]] (tǒ akokí koyóka na mpási).",
+ "babel-1": "Moto óyo ayébí koloba [[$2|$3]] [[$1|mwâ mokɛ́]].",
+ "babel-2": "Moto óyo ayébí koloba [[$2|$3]] [[$1|mokɛ́]].",
+ "babel-3": "Moto óyo ayébí koloba [[$2|$3]] [[$1|malámu]].",
+ "babel-4": "Moto óyo ayébí koloba [[$2|$3]] [[$1|malámu mpenza]].",
+ "babel-N": "Moto óyo ayébí koloba [[$2|$3]] [[$1|bandá mbótama]].",
+ "babel-0-n": "Moto óyo ayébí koloba [[$2|lingála]] [[$1|tɛ̂]] (tǒ akokí koyóka na mpási).",
+ "babel-1-n": "Moto óyo ayébí koloba [[$2|lingála]] [[$1|mwâ mokɛ́]].",
+ "babel-2-n": "Moto óyo ayébí koloba [[$2|lingála]] [[$1|mokɛ́]].",
+ "babel-3-n": "Moto óyo ayébí koloba [[$2|lingála]] [[$1|malámu]].",
+ "babel-4-n": "Moto óyo ayébí koloba [[$2|lingála]] [[$1|malámu mpenza]].",
+ "babel-N-n": "Moto óyo ayébí koloba [[$2|lingála]] [[$1|bandá mbótama]]."
+}
diff --git a/MLEB/Babel/i18n/lo.json b/MLEB/Babel/i18n/lo.json
new file mode 100644
index 00000000..cb4f8ba1
--- /dev/null
+++ b/MLEB/Babel/i18n/lo.json
@@ -0,0 +1,30 @@
+{
+ "@metadata": {
+ "authors": [
+ "Iberia2011"
+ ]
+ },
+ "babel": "ຂໍ້ມູນຜູ້ໃຊ້ Babel",
+ "babel-desc": "ຕື່ມລະຫັດ <code>#babel</code> parser function ເພື່ອໃຫ້ສາມາດສ້າງ a babel userbox column with the ability to include custom templates ແບບອະໂຕມາຕິກ",
+ "babel-url": "ໂຄງການ: Babel",
+ "babel-footer-url": "ປະເພດ: Babel - ຜູ້ໃຊ້ງານຈາມພາສາ",
+ "babel-autocreate-abort": "The username ທີ່ທ່ານເຈາະຈົງແມ່ນໃຊ້ສຳລັບ [[$1|Babel]] ປະເພດ ສ້າງແບບອັດຕະໂນມັດ -ການສ້າງນີ້ແມ່ນບໍສາມາດລົງທະບຽນໄດ້",
+ "babel-autocreate-reason": "ປະເພດໜ້າ [[$1|Babel]] ສ້າງແບບອັດຕະໂນມັດ",
+ "babel-autocreate-text-levels": "ຜູ້ໍ້ໃຊ້ໃນໝວດນີ້ ສະແດວງ່າ ພວກເຂົາມີທັກສະລະດັບ $1 ສຳລັບພາສາ $2.",
+ "babel-autocreate-text-main": "ຜູ້ໍ້ໃຊ້ໃນໝວດນີ້ ສະແດງວ່າ ພວກເຂົາມີຄວາມຮູ້ຂອງພາສາ $1.",
+ "babel-0": "ຜູ້ໃຊ້ນີ້ມີຄວາມຮູ້ [[$2|$3]] [[$1|ບໍ່]] (ຫລື ຖືວ່າມີຄວາມເຂົ້າໃຈຍາກ)",
+ "babel-1": "ຜູ້ໃຊ້ນີ້ມີ ຄວາມຮູ້ຂອງ [[$2|$3]] [[$1|ພື້ນຖານ]].",
+ "babel-2": "ຜູ້ໃຊ້ນີ້ມີ ຄວາມຮູ້[[$2|$3]] [[$1|ລະດັບກາງ]]",
+ "babel-3": "ຜູ້ໃຊ້ນີ້ມີຄວາມຮູ້[[$2|$3]] [[$1|ລະດັບສູງ]] .",
+ "babel-4": "ຜູ້ໃຊ້ນີ້ມີຄວາມຮູ້ ຂອງ [[$2|$3]] [[$1|ເກືອບເທົ່າພາສາກຳເນີດ]].",
+ "babel-5": "ຜູ້ໃຊ້ນີ້ມີ ຄວາມຮູ້ ຂອງ [[$2|$3]] [[$1|ລະດັບມືອາຊີບ]].",
+ "babel-N": "ຜູ້ຊົມໃຊ້ນີ້ມີ [[$1|ພາສາແມ່]] ເຂົ້າໃຈ [[$2|$3]]",
+ "babel-0-n": "ຜູ້ໃຊ້ນີ້ມີ[[$1|ບໍ່]]ຄວາມຮູ້ຂອງ [[$2|ພາສາອັງກິດ]] (or ອາດພິຈາລະນາວ່າເຂົ້າໃຈຍາກ)",
+ "babel-1-n": "ຜູ້ໃຊ້ນີ້ມີ [[$1|ພື້ນຖານ]] ຄວາມຮູ້ຂອງ [[$2|ອັງກິດ]].",
+ "babel-2-n": "ຜູ້ໃຊ້ນີ້ມີຄວາມຮູ້[[$2|ພາສາອັງກິດ]][[$1|ລະດັບກາງ]] .",
+ "babel-3-n": "ຜູ້ໃຊ້ນີ້ມີຄວາມຮູ້[[$2|ພາສາອັງກິດ]] [[$1|ລະດັບສູງ]].",
+ "babel-4-n": "ຜູ້ໃຊ້ນີ້ມີຄວາມຮູ້[[$2|ພາສາອັງກິດ]] [[$1|ເກືອບເທົ່າພາສາແມ່]] .",
+ "babel-5-n": "ຜູ້ໃຊ້ນີ້ມີຄວາມຮູ້[[$2|ພາສາອັງກິດ]] [[$1|ລະດັບມືອາຊີບ]] .",
+ "babel-N-n": "ຜູ້ຊົມໃຊ້ນີ້ມີເຂົ້າໃຈ ຂອງ [[$2|ພາສາອັງກິດ]] [[$1|ເທົ່າກັບພາສາແມ່]] .",
+ "babel-footer": "ຜູ້ໃຊ້ຕາມພາສາ"
+}
diff --git a/MLEB/Babel/i18n/lrc.json b/MLEB/Babel/i18n/lrc.json
new file mode 100644
index 00000000..9ef288b4
--- /dev/null
+++ b/MLEB/Babel/i18n/lrc.json
@@ -0,0 +1,32 @@
+{
+ "@metadata": {
+ "authors": [
+ "Bonevarluri",
+ "Mogoeilor",
+ "Hosseinblue"
+ ]
+ },
+ "babel": "دونسمنیا کارور بابل",
+ "babel-desc": "<کد>#بابل<کد/> نه وه تابع حیردکننه سی اجازه دئن سی خودکار راس کردن ستین جعوه کاروری وا فعال کردن قالویا مرسوم اضاف بکید",
+ "babel-url": "Project:بابل",
+ "babel-footer-url": ":Category:بابل-کاریاریا وا زون",
+ "babel-autocreate-abort": "نوم کاریاری که شما سی دسه خودساخته[[$1|Babel]] د نظر گرتیته و نبوئه ثوت نام با.",
+ "babel-autocreate-reason": "دسه بلگه [[$1|Babel]]راس کردن د حالت خودانجم",
+ "babel-autocreate-text-levels": "کاریاریا ای دسته نشو می ئن که کاردونی د سطح $1 سی زون $2 دارن",
+ "babel-autocreate-text-main": "کاریاریاای دسه نشو می ئن که زونه $1 بللن",
+ "babel-0": "ای کاریار فئمسنی د حد [[$1|no]] سی [[$2|$3]] داره(یا وه سختی ونه حالینش بوئه)",
+ "babel-1": "ای کاریار دونسمندی د [[$1|basic]]تا [[$2|$3]]داره.",
+ "babel-2": "ای کاریار دونسمنی د [[$1|intermediate]]تا [[$2|$3]] داره.",
+ "babel-3": "ای کاریار دونسمنی د [[$1|advanced]] تا [[$2|$3]]داره.",
+ "babel-4": "ای کاریار [[$1|د حد زون دا]]،[[$2|$3]]نه بلله.",
+ "babel-5": "ای کاریار د حد[[$1|فره خو]]،[[$2|$3]] نه بلله.",
+ "babel-N": "ای کاریار [[$1|native]] د حد زون دا تونه[[$2|$3]] بئفمه .",
+ "babel-0-n": "ای کاریار [[$1|هیچ]] دونسمنی د [[$2|لوری]] ناره (یا وه سختی حالینش بوئه)",
+ "babel-1-n": "ای کاریار [[$1|کم و کوتی]] دونسمنی د [[$2|لوری]] داره.",
+ "babel-2-n": "ای کاریار [[$1|د حد مینجایی]]دونسمنی د [[$2|لوری]]داره.",
+ "babel-3-n": "ای کاریار [[$1|فره]] [[$2|لوری]] دونه.",
+ "babel-4-n": "ای کاریار [[$1|د حد نزیک وه یه زون بلل ]][[$2|لوری]] دونه.",
+ "babel-5-n": "ای کاریار [[$1|د حد فره خوئی]] [[$2|لوری]] حالینش بوئه.",
+ "babel-N-n": "ای کاریار [[$1|زون داش]] [[$2|لوری]] یه.",
+ "babel-footer": "کاریار وا زون"
+}
diff --git a/MLEB/Babel/i18n/lt.json b/MLEB/Babel/i18n/lt.json
new file mode 100644
index 00000000..f2140fbe
--- /dev/null
+++ b/MLEB/Babel/i18n/lt.json
@@ -0,0 +1,35 @@
+{
+ "@metadata": {
+ "authors": [
+ "Eitvys200",
+ "Garas",
+ "Homo",
+ "Hugo.arg",
+ "Matasg",
+ "Vpovilaitis"
+ ]
+ },
+ "babel": "Naudotojo informacijos Babelio bokštas",
+ "babel-desc": "Prideda parserio funkciją <code>#babel</code>, leidžiančią automatiškai sudaryti stulpelį su informacija apie kalbas su gailmybe įtraukti kitus šablonus",
+ "babel-url": "Project:Babelis",
+ "babel-footer-url": ": Kategorija: Babelis - Vartotojai pagal kalbas",
+ "babel-autocreate-abort": "Nurodytas naudotojo vardas naudojamas automatiškam kategorijos „[[$1|Babel]]“ sudarymui, todėl negali būti užregistruotas",
+ "babel-autocreate-reason": "Automatiškas kategorijos „[[$1|Babel]]“ puslapio sukūrimas.",
+ "babel-autocreate-text-levels": "Naudotojai, esantys šioje kategorijoje, yra nurodę kad geba $1 lygiu naudoti $2 kalbą.",
+ "babel-autocreate-text-main": "Naudotojai, esantys šioje kategorijoje, nurodę, kad supranta $1 kalbą.",
+ "babel-0": "Šis naudotojas [[$1|ne]]supranta [[$2|$3]] (arba supranta labai ribotai).",
+ "babel-1": "Šis naudotojas turi [[$2|lietuvių kalbos]] [[$1|pradinio lygio]] žinias.",
+ "babel-2": "Šis naudotojas turi [[$2|lietuvių kalbos]] [[$1|vidutinio lygio]] žinias.",
+ "babel-3": "Šis naudotojas turi [[$2|lietuvių kalbos]] [[$1|aukšto lygio]] žinias.",
+ "babel-4": "Šis vartotojas kalba [[$2|lietuviškai]] beveik taip, lyg ši kalba būtų jo [[$1|gimtoji kalba]]",
+ "babel-5": "Šis naudotojas kalba [[$2|lietuviškai]] [[$1|ypač gerai]].",
+ "babel-N": "Šio naudotojo [[$1|gimtoji kalba]] yra [[$2|lietuvių]].",
+ "babel-0-n": "Šis naudotojas [[$1|negali]] rašyti ir skaityti [[$2|lietuvių]] kalba (arba ją supranta labai sunkiai).",
+ "babel-1-n": "Šis naudotojas gali rašyti ir skaityti [[$1|pradinio]] lygio [[$2|lietuvių]] kalba",
+ "babel-2-n": "Šis naudotojas gali rašyti ir skaityti [[$1|vidutinio]] lygio [[$2|lietuvių]] kalba",
+ "babel-3-n": "Šis naudotojas gali rašyti ir skaityti [[$1|aukšto]] lygio [[$2|lietuvių]] kalba",
+ "babel-4-n": "Šis naudotojas gali rašyti ir skaityti [[$2|lietuvių]] kalba [[$1|beveik kaip gimtąja]]",
+ "babel-5-n": "Šis naudotojas gali rašyti ir skaityti [[$1|profesionalia]] [[$2|lietuvių]] kalba",
+ "babel-N-n": "Šis naudotojas gali rašyti ir skaityti [[$1|gimtąja]] [[$2|lietuvių]] kalba",
+ "babel-footer": "Vartotojai pagal kalbą"
+}
diff --git a/MLEB/Babel/i18n/ltg.json b/MLEB/Babel/i18n/ltg.json
new file mode 100644
index 00000000..6cff5974
--- /dev/null
+++ b/MLEB/Babel/i18n/ltg.json
@@ -0,0 +1,26 @@
+{
+ "@metadata": {
+ "authors": [
+ "Dark Eagle"
+ ]
+ },
+ "babel": "Lītuotuoja informaceja (Bābelis tūrņs)",
+ "babel-url": "Project:Bābele",
+ "babel-autocreate-reason": "Automatiski kategorejis „[[$1|Bābele]]“ puslopys sataiseišona.",
+ "babel-0": "Itys lītuotuojs [[$2|$3]] [[$1|namuok]] (ci saprūt ar lelim gryutumim).",
+ "babel-1": "Itys lītuotuojs [[$2|$3]] muok [[$1|suoku leidzīnī]].",
+ "babel-2": "Itys lītuotuojs [[$2|$3]] muok [[$1|vydyskā leidzīnī]].",
+ "babel-3": "Itys lītuotuojs [[$2|$3]] muok [[$1|gon lobā leidzīnī]].",
+ "babel-4": "Itys lītuotuojs [[$2|$3]] muok [[$1|kūna kai dzymtū volūdu]].",
+ "babel-5": "Itys lītuotuojs [[$2|$3]] muok [[$1|profesionalā leidzīnī]].",
+ "babel-N": "[[$2|$3]] irā ituo lītuotuoja [[$1|dzymtuo volūda]].",
+ "babel-0-n": "Itys lītuotuojs [[$2|latgaļu volūdys]] [[$1|namuok]] (ci saprūt ar lelim gryutumim).",
+ "babel-1-n": "Itys lītuotuojs [[$2|latgaļu volūdu]] muok [[$1|suoku leidzīnī]].",
+ "babel-2-n": "Itys lītuotuojs [[$2|latgaļu volūdu]] muok [[$1|vydyskā leidzīnī]].",
+ "babel-3-n": "Itys lītuotuojs [[$2|latgaļu volūdu]] muok [[$1|gon lobā leidzīnī]].",
+ "babel-4-n": "Itys lītuotuojs [[$2|latgaļu volūdu]] muok [[$1|kūna kai dzymtū volūdu]].",
+ "babel-5-n": "Itys lītuotuojs [[$2|latgaļu volūdu]] muok [[$1|profesionalā leidzīnī]].",
+ "babel-N-n": "[[$2|Latgaļu volūda]] irā ituo lītuotuoja [[$1|dzymtuo volūda]].",
+ "babel-template": "Template:$1",
+ "babel-footer": "Lītuotuoji piec volūdys"
+}
diff --git a/MLEB/Babel/i18n/lus.json b/MLEB/Babel/i18n/lus.json
new file mode 100644
index 00000000..580c2722
--- /dev/null
+++ b/MLEB/Babel/i18n/lus.json
@@ -0,0 +1,31 @@
+{
+ "@metadata": {
+ "authors": [
+ "GerardM",
+ "RMizo"
+ ]
+ },
+ "babel": "Babel hmangtu chanchin",
+ "babel-desc": "<code>#babel</code> chhuifiahtu hian hmangtubawm, siamsa thlansa telh thieh turin a belh",
+ "babel-url": "Project:Babel",
+ "babel-footer-url": ":Category:Babel - Ţawng azira hmangtute thliarna tihlanna",
+ "babel-autocreate-abort": "Hmangtuhming i pêk hi [[$1|Babel]] pawl insiamtirna atana hman a ni a, ziahluh theih a ni lo.",
+ "babel-autocreate-reason": "[[$1|Babel]] pawl phek insiamtir.",
+ "babel-autocreate-text-levels": "He pawla hmangtute hian $2 ṭawng $1 an thiam tih an sawi.",
+ "babel-autocreate-text-main": "He pawla hmangtute hian $1 ṭawng an thiam tih an sawi.",
+ "babel-0": "He hmangtu hian [[$2|$3]] ṭawng hi [[$1|pakhatmah]] a thiam lo tih a sawi (a nih loh pawhin harsa fein a hrethiam chauh)",
+ "babel-1": "He hmangtu hian [[$2|$3]] ṭawng hi [[$1|tlém]] a thiam.",
+ "babel-2": "He hmangtu hian [[$2|$3]] ṭawng hi a thiam ve [[$1|pangngai]].",
+ "babel-3": "He hmangtu hian [[$2|$3]] ṭawng hi a [[$1|thiam näl fe]].",
+ "babel-4": "He hmangtu hian [[$2|$3]] ṭawng hi [[$1|pianpui ṭawng ang deuh thawin]] a thiam.",
+ "babel-5": "He hmangtu hian [[$2|$3]] ţawng hi [[$1|eizawnna tlâk]] a thiam.",
+ "babel-N": "He hmangtu hian [[$2|$3]] ṭawng a [[$1|pianpui]] a ni.",
+ "babel-0-n": "He hmangtu hian [[$2|mizo ṭawng]] [[$1|pakhatmah]] a thiam lo (a ni ber e).",
+ "babel-1-n": "He hmangtu hian [[$2|mizo ṭawng]] [[$1|tlém]] a thiam.",
+ "babel-2-n": "He hmangtu hian [[$2|mizo ṭawng]] a thiam ve [[$1|pangngai]].",
+ "babel-3-n": "He hmangtu hian [[$2|mizo ṭawng]] a [[$1|thiam näl fe]].",
+ "babel-4-n": "He hmangtu hian [[$2|mizo ṭawng]] hi [[$1|pianpui ṭawng ang deuh thawin]] a thiam.",
+ "babel-5-n": "He hmangtu hian [[$2|mizo ṭawng]] hi [[$1|eizawnna tlâk]] a thiam.",
+ "babel-N-n": "He hmangtu hian [[$2|mizo ṭawng]] a [[$1|pianpui]] a ni.",
+ "babel-footer": "Ṭawng hman azirin hmangtute"
+}
diff --git a/MLEB/Babel/i18n/luz.json b/MLEB/Babel/i18n/luz.json
new file mode 100644
index 00000000..03de6324
--- /dev/null
+++ b/MLEB/Babel/i18n/luz.json
@@ -0,0 +1,23 @@
+{
+ "@metadata": {
+ "authors": [
+ "علی ساکی لرستانی",
+ "Mogoeilor"
+ ]
+ },
+ "babel": "دونسمندیل کارور بابل",
+ "babel-0": "ای کارور [[$1|هیچ]] فئمسنی ز [[$2|لری جنووی]] ناره ( یا وه جخت ونه حالینش بوئه )",
+ "babel-1": "ای کارور [[$1|کم و کوتی]] ز [[$2|لری جنووی]] داره",
+ "babel-2": "ای کارور دونسمنی د حد [[$1|واسی]] ز [[$2|لری جنووی]] داره",
+ "babel-3": "ای کارور دونسمنی د حد [[$1|هفره]] ز [[$2|لری جنووی]] داره",
+ "babel-4": "ای کارور [[$1|د حد زوون داس]] [[$2|لری جنووی]] نه بلله",
+ "babel-5": "ای کارور د حد [[$1| فره خوه]] [[$2|لری جنووی]] نه بلله",
+ "babel-N": "ای کارور [[$1|زوون داس]] [[$2|لری جنووی]] هسس",
+ "babel-0-n": "ای کارور [[$1|هیچ]] فئمسنی ز [[$2|لری جنووی]] ناره ( یا وه جخت ونه حالینش بوئه )",
+ "babel-1-n": "ای کارور [[$1|کم و کوتی]] دونسمنی ز [[$2|لری جنووی]] داره",
+ "babel-2-n": "ای کارور دونسمنی د حد [[$1|واسی]] ز [[$2|لری جنووی]] داره",
+ "babel-3-n": "ای کارور دونسمنی د حد [[$1|هفره]] ز [[$2|لری جنووی]] داره",
+ "babel-4-n": "ای کارور [[$1|د حد زوون داس]] [[$2|لری جنووی]] نه بلله",
+ "babel-5-n": "ای کارور د حد [[$1| فره خوه]] [[$2|لری جنووی]] نه بلله",
+ "babel-N-n": "ای کارور [[$1|زوون داس]] [[$2|لری جنووی]] هسس"
+}
diff --git a/MLEB/Babel/i18n/lv.json b/MLEB/Babel/i18n/lv.json
new file mode 100644
index 00000000..c3d27111
--- /dev/null
+++ b/MLEB/Babel/i18n/lv.json
@@ -0,0 +1,33 @@
+{
+ "@metadata": {
+ "authors": [
+ "Dark Eagle",
+ "Gleb Borisov",
+ "Papuass",
+ "Yyy"
+ ]
+ },
+ "babel": "Lietotāja informācija (Bābeles tornis)",
+ "babel-desc": "Pievieno parsera funkciju <code>#babel</code>, automātiskai kolonnu ar valodu informāciju veidošanai, ka arī ar citu veidņu ievietošanas iespēju",
+ "babel-url": "Project:Babel",
+ "babel-footer-url": ":Category:Lietotāju valodas",
+ "babel-autocreate-abort": "Tevis norādītais lietotājvārds tiek lietots [[$1|Babel]] kategoriju automātiskai izveidošanai, tāpēc to nevar piereģistrēt.",
+ "babel-autocreate-reason": "Automātiski izveido [[$1|Babel]] kategorijas lapu.",
+ "babel-autocreate-text-levels": "Lietotāji šajā kategorijā ir norādījuši, ka tie pārzina $2 valodu $1 līmenī.",
+ "babel-autocreate-text-main": "Lietotāji šajā kategorijā ir norādījuši ka tiem ir $1 valodas zināšanas.",
+ "babel-0": "Šis lietotājs [[$2|$3]] valodu [[$1|neprot]]. (vai saprot ar ievērojamām grūtībām).",
+ "babel-1": "Šis lietotājs [[$2|$3]] valodu prot [[$1|pamatlīmenī]].",
+ "babel-2": "Šis lietotājs [[$2|$3]] valodu prot [[$1|vidējā]] līmenī.",
+ "babel-3": "Šis lietotājs [[$2|$3]] valodu prot [[$1|padziļinātā]] līmenī.",
+ "babel-4": "Šis lietotājs [[$2|$3]] valodu pārzina [[$1|gandrīz kā dzimto valodu]].",
+ "babel-5": "Šis lietotājs [[$2|$3]] valodu pārzina [[$1|profesionālā]] līmenī.",
+ "babel-N": "Šim lietotājam [[$2|$3]] valoda ir [[$1|dzimtā valoda]].",
+ "babel-0-n": "Šis lietotājs [[$2|latviešu valodu]] [[$1|neprot]] (vai saprot ar ievērojamām grūtībām).",
+ "babel-1-n": "Šis lietotājs [[$2|latviešu valodu]] prot [[$1|pamatlīmenī]].",
+ "babel-2-n": "Šis lietotājs [[$2|latviešu valodu]] prot [[$1|vidējā]] līmenī.",
+ "babel-3-n": "Šis lietotājs [[$2|latviešu valodu]] prot [[$1|padziļinātā]] līmenī.",
+ "babel-4-n": "Šis lietotājs [[$2|latviešu valodu]] pārzina [[$1|gandrīz kā dzimto valodu]].",
+ "babel-5-n": "Šis lietotājs [[$2|latviešu valodu]] pārzina [[$1|profesionālā]] līmenī.",
+ "babel-N-n": "Šim lietotājam [[$2|latviešu valoda]] ir [[$1|dzimtā valoda]].",
+ "babel-footer": "Lietotāji pēc valodas"
+}
diff --git a/MLEB/Babel/i18n/lzh.json b/MLEB/Babel/i18n/lzh.json
new file mode 100644
index 00000000..2441ecdd
--- /dev/null
+++ b/MLEB/Babel/i18n/lzh.json
@@ -0,0 +1,14 @@
+{
+ "@metadata": {
+ "authors": [
+ "Itsmine"
+ ]
+ },
+ "babel-0-n": "此君[[$1|不通]][[$2|文言]]也。",
+ "babel-1-n": "此君[[$1|粗通]][[$2|文言]]也。",
+ "babel-2-n": "此君[[$1|有志]][[$2|文言]]也。",
+ "babel-3-n": "此君[[$1|工於]][[$2|文言]]也。",
+ "babel-4-n": "此君[[$1|出口成文]],精於[[$2|文言]]之道也。",
+ "babel-5-n": "此君[[$1|下筆如神]],[[$2|文言]]之道,瞭然於心也。",
+ "babel-N-n": "此君三歲能屬文,[[$2|文言]]無異[[$1|母語]]也。"
+}
diff --git a/MLEB/Babel/i18n/lzz.json b/MLEB/Babel/i18n/lzz.json
new file mode 100644
index 00000000..c16d31db
--- /dev/null
+++ b/MLEB/Babel/i18n/lzz.json
@@ -0,0 +1,28 @@
+{
+ "@metadata": {
+ "authors": [
+ "Bombola"
+ ]
+ },
+ "babel": "Babel Maxmareş çkinape",
+ "babel-desc": "Doxmeli şablonepe na uğun Babel maxmareş kut'işi sut'uni otomatikurot ok'idu şeni <code>#babel</code> derleyici fonk'sioni uk'ataps",
+ "babel-url": "Project:Babeli",
+ "babel-autocreate-abort": "Na mo3'iri maxmareşi coxo [[$1|Babel]]-ş k'at'egorii otomatikurot ok'idu şeni ixmarinen.",
+ "babel-autocreate-reason": "Otomatikurot [[$1|Babil]] k'at'egoriş but'k'a ik'iden.",
+ "babel-autocreate-text-levels": "Am k'at'egoris na renan maxmarepe, $1 seviyes, $2 nena miçkinan yado t'ani mo3'irapan.",
+ "babel-autocreate-text-main": "Am k'at'egoris na renan maxmarepe, $1 nena miçkinan yado t'ani mo3'irapan.",
+ "babel-0": "Am maxmares [[$1|çkar]] [[$2|$3]] va uçkin (varna dido zorite oxo3'onaps).",
+ "babel-1": "Am maxmares [[$1|am3ika]] uçkin [[$2|$3]].",
+ "babel-2": "Am maxmares [[$1|normalurot]] uçkin [[$2|$3]].",
+ "babel-3": "Am maxmares [[$1|k'ai]] uçkin [[$2|$3]].",
+ "babel-4": "Am maxmarek [[$1|nananena-muşi steri]] [[$2|$3]] ğarğalaps.",
+ "babel-5": "Am maxmares [[$1|p'rofesyonelurot]] uçkin [[$2|$3]].",
+ "babel-N": "Am maxmareşi [[$1|nananena]]-muşi [[$2|$3]] ren.",
+ "babel-0-n": "Am maxmares [[$1|çkar]] [[$2|Lazuri]] va uçkin (varna dido zorite oxo3'onaps).",
+ "babel-1-n": "Am maxmares [[$1|am3ika]] [[$2|Lazuri]] uçkin.",
+ "babel-2-n": "Am maxmares [[$1|normalurot]] [[$2|Lazuri]] uçkin.",
+ "babel-3-n": "Am maxmares [[$1|k'ai]] [[$2|Lazuri]] uçkin.",
+ "babel-4-n": "Am maxmarek [[$1|nananena-muşi steri]] [[$2|Lazuri]] ğarğalaps.",
+ "babel-5-n": "Am maxmares [[$1|p'rofesyonelurot]] [[$2|Lazuri]] uçkin.",
+ "babel-N-n": "Am maxmareşi [[$1|nananena]]-muşi [[$2|Lazuri]] ren."
+}
diff --git a/MLEB/Babel/i18n/mai.json b/MLEB/Babel/i18n/mai.json
new file mode 100644
index 00000000..ca8a2563
--- /dev/null
+++ b/MLEB/Babel/i18n/mai.json
@@ -0,0 +1,31 @@
+{
+ "@metadata": {
+ "authors": [
+ "Rajesh",
+ "बिप्लब आनन्द"
+ ]
+ },
+ "babel": "बाबेल प्रयोक्ताक जानकारी",
+ "babel-desc": "एकटा सदस्यक बाबेल सदस्यपेटीमे स्वतः देबाक लेल उपयुक्त एहन <code>#babel</code> पार्सर क्रिया बढाबैछ। एकरामें स्वतः बनाएल सदस्यपेटी सेहो देल जाए सकैत अछि।",
+ "babel-url": "Project:Babel",
+ "babel-footer-url": ":Category:बेबल -भाषाक आधार पर प्रयोक्तासभ",
+ "babel-autocreate-abort": "अहाँक द्वारा निर्दिष्ट प्रयोक्तानाम केँ [[$1|Babel]] श्रेणीक स्वतः निर्माणक लेल उपयोग मे आबैछ आओर एकरा पंजीकृत नहि कएल जाए सकैछ।",
+ "babel-autocreate-reason": "स्वतः बनाओल गेल [[$1|Babel]] संवर्गक पन्ना ।",
+ "babel-autocreate-text-levels": "ई संवर्गक प्रयोक्ता बताबएत जे इलोकनिसभकेँ भाषा $2 कलेल कौशलस्तर $1 अछि।",
+ "babel-autocreate-text-main": "ई संवर्गक प्रयोक्ता बताबएत अछि जे हुनका भाषा $1 क' ज्ञान अछि।",
+ "babel-0": "ई प्रयोक्ताक [[$2|$3]] कए कोनो ज्ञान [[$1|नहि]] अछि (अथवा एकरा समझबमे दिक्कत होइछ)।",
+ "babel-1": "ई प्रयोक्ताकेँ [[$2|$3]] क [[$1|प्राथमिक]] ज्ञान अछि।",
+ "babel-2": "ई प्रयोक्ताकेँ [[$2|$3]] कए [[$1|मध्यम स्तर]] क ज्ञान अछि।",
+ "babel-3": "ई प्रयोक्ताकेँ [[$2|$3]] केँ [[$1|उच्च स्तर]] कए ज्ञान अछि।",
+ "babel-4": "ई प्रयोक्ताकेँ [[$2|$3]] क [[$1|अति-उच्च स्तर]] कए ज्ञान अछि।",
+ "babel-5": "ई प्रयोक्ताकेँ [[$2|$3]] क [[$1|व्यावसायिक स्तर]] कए ज्ञान अछि।",
+ "babel-N": "ई प्रयोक्ताकेँ [[$2|$3]] क [[$1|स्थानिक स्तर]] कए ज्ञान अछि।",
+ "babel-0-n": "ई प्रयोक्ताकेँ [[$2|मैथिली]] क' ज्ञान [[$1|नहि]] अछि। (अथवा बूझबाक लेल बेसी प्रयास करै पडैत अछि)।",
+ "babel-1-n": "ई प्रयोक्ताकेँ [[$2|मैथिली]] क [[$1|प्राथमिक]] ज्ञान अछि।",
+ "babel-2-n": "ई प्रयोक्ताकेँ [[$2|मैथिली]] क' [[$1|मध्यम स्तर]] कए ज्ञान अछि।",
+ "babel-3-n": "ई प्रयोक्ताकेँ [[$2|मैथिली]] क' [[$1|उच्च स्तर]] कए ज्ञान अछि।",
+ "babel-4-n": "ई प्रयोक्ताकेँ [[$2|मैथिली]] क' [[$1|अति-उच्च स्तर]] क' ज्ञान अछि।",
+ "babel-5-n": "ई प्रयोक्ताकेँ [[$2|मैथिली]] क' [[$1|व्यावसायिक स्तर]] क' ज्ञान अछि।",
+ "babel-N-n": "ई प्रयोक्ताकेँ [[$2|मैथिली]] क' [[$1|स्थानिक स्तर]] क' ज्ञान अछि।",
+ "babel-footer": "भाषानुसारे प्रयोक्ता"
+}
diff --git a/MLEB/Babel/i18n/map-bms.json b/MLEB/Babel/i18n/map-bms.json
new file mode 100644
index 00000000..1d3f0aea
--- /dev/null
+++ b/MLEB/Babel/i18n/map-bms.json
@@ -0,0 +1,30 @@
+{
+ "@metadata": {
+ "authors": [
+ "StefanusRA"
+ ]
+ },
+ "babel": "Informasi Babel Panganggo",
+ "babel-desc": "Nambahna fungsi parser <code>#babel</code> sing marengaké générasi otomatis kolom kothak panganggo babel mawa kamungkinan nglebokna cithakan kustomisasi",
+ "babel-url": "Project:Babel",
+ "babel-footer-url": ":Kategori:Panganggo miturut basa",
+ "babel-autocreate-abort": "Jeneng panganggo sing Rika lebokna kuwe digunakna nggo nggawe kategori otomatis [[$1|Babel]] lan ora teyeng didaftarna.",
+ "babel-autocreate-reason": "Otomatis nggawe kaca kategori [[$1|Babel]].",
+ "babel-autocreate-text-levels": "Panganggo nang kategori kiye nandakna nek dheweke nduwe kemampuan $1 nggo basa $2.",
+ "babel-autocreate-text-main": "Panganggo nang kategori kiye nandakna nek dheweke nduwe kemampuan basa $1.",
+ "babel-0": "Panganggo kiye [[$1|ora]] duwé kawruh [[$2|$3]] (utawa angèl banget mangertèni).",
+ "babel-1": "Panganggo kiye duwé kawruh [[$1|dhasar]] [[$2|$3]].",
+ "babel-2": "Panganggo kiye duwé kawruh [[$1|madya]] [[$2|$3]].",
+ "babel-3": "Panganggo kiye duwé kawruh [[$1|mahir]] [[$2|$3]].",
+ "babel-4": "Panganggo kiye duwé kawruh [[$1|sing meh padha karo panutur ibu]] sekang [[$2|$3]].",
+ "babel-5": "Panganggo kiye duwé kawruh [[$1|profésional]] [[$2|$3]].",
+ "babel-N": "Panganggo kiye [[$1|panutur ibu]] [[$2|$3]].",
+ "babel-0-n": "Panganggo kiye [[$1|ora]] bisa [[$2|basa Banyumasan]] (utawa angèl banget mangertèni).",
+ "babel-1-n": "Panganggo kiye duwé kawruh [[$1|dhasar]] [[$2|basa Banyumasan]].",
+ "babel-2-n": "Panganggo kiye duwé kawruh [[$1|madya]] [[$2|basa Banyumasan]].",
+ "babel-3-n": "Panganggo kiye duwé kawruh [[$1|mahir]] [[$2|basa Banyumasan]].",
+ "babel-4-n": "Panganggo kiye duwé kawruh [[$1|sing meh padha karo panutur ibu]] sekang [[$2|basa Banyumasan]].",
+ "babel-5-n": "Panganggo kiye duwé kawruh [[$1|profésional]] [[$2|basa Banyumasan]].",
+ "babel-N-n": "Panganggo kiye [[$1|panutur ibu]] [[$2|basa Banyumasan]].",
+ "babel-footer": "Panganggo miturut basa"
+}
diff --git a/MLEB/Babel/i18n/mdf.json b/MLEB/Babel/i18n/mdf.json
new file mode 100644
index 00000000..f08d6b1a
--- /dev/null
+++ b/MLEB/Babel/i18n/mdf.json
@@ -0,0 +1,25 @@
+{
+ "@metadata": {
+ "authors": [
+ "Jarmanj Turtash",
+ "Khazar II"
+ ]
+ },
+ "babel": "Вавилонца тиить кяльхнень содаманц колга информацись",
+ "babel-desc": "Поладсы <code>#babel</code> синтаксонь анализаторть функциесь, конань вельде сувафневи информациень палманць вавилонца тиить кяльхнень содаманц колга ди иля шаблоттне",
+ "babel-url": "Project:Вавилон",
+ "babel-0": "Тя тиись [[$1|аф шарьхкоди ]] [[$2|$3]] (эли шарьхкоди пяк кальдявста).",
+ "babel-1": "Тя тиись [[$1|аф лама шарьхкоди ]] [[$2|$3]].",
+ "babel-2": "Тят тиись [[$1|шарьхкоди ]] [[$2|$3]].",
+ "babel-3": "Тя тиись [[$1|лац содасы]] [[$2|$3]].",
+ "babel-4": "Тя тиись [[$1|кода эсь кяль]] содасы [[$2|$3]].",
+ "babel-5": "Тя тиись [[$1|кода кялень содайсь]] содасы [[$2|$3]].",
+ "babel-N": "Тя тиись [[$1|идькспингстонза ]] содасы [[$2|$3]].",
+ "babel-0-n": "Тя тиись [[$1|аф шарьхкоди ]] [[$2|мокшекс]].",
+ "babel-1-n": "Тя тиись [[$1|аф лама шарьхкоди ]] [[$2|мокшекс]].",
+ "babel-2-n": "Тят тиись машты [[$1| шарьхкодемс ди аф лама корхтамс ]] [[$2|мокшекс]].",
+ "babel-3-n": "Тя тиись машты [[$1|лац корхтамс ди сёрмадомс ]] [[$2|мокшекс]].",
+ "babel-4-n": "Тя тиись машты [[$1|кода эсь кяльса]] корхтамс [[$2|мокшекс]].",
+ "babel-5-n": "Тя тиись машты [[$1|кода кялень содайсь корхтамс ]] [[$2|мокшекс]].",
+ "babel-N-n": "Тя тиись [[$1|идькспингстонза корхтай ]] [[$2|мокшекс]]."
+}
diff --git a/MLEB/Babel/i18n/mg.json b/MLEB/Babel/i18n/mg.json
new file mode 100644
index 00000000..08245377
--- /dev/null
+++ b/MLEB/Babel/i18n/mg.json
@@ -0,0 +1,30 @@
+{
+ "@metadata": {
+ "authors": [
+ "Jagwar"
+ ]
+ },
+ "babel": "Torohaim-pikambana Babel",
+ "babel-desc": "Manampy ny Parser function <code>#babel</code> mampamela ny fanamboarana userbox hoazy. Afaka mampiditra endrika tsy natao tany amin'ny mediawiki ilay izy",
+ "babel-url": "Project:Babel",
+ "babel-footer-url": ":Sokajy:Babel - Mpikambana araka ny tenim-pirenena",
+ "babel-autocreate-abort": "Ilay anaram-pikambana nampidirinao mba hanao sokajy [[$1|Babel]] hoazy tsy afaka tehirizina",
+ "babel-autocreate-reason": "Natao hoazy ilay sokajy [[$1|Babel]].",
+ "babel-autocreate-text-levels": "Niteny ny mpikambana anatin'ity sokajy ity fa $1 hono ny lentany amin'ny fiteny $2.",
+ "babel-autocreate-text-main": "Ny mpikambana anatin'ity sokajy ity niteny fa $1 hono ny fahaizany.",
+ "babel-0": "[[$1|Tsy mahay]] miteny [[$2|$3]] ity mpikambana ity (na sarotra aminy no miteny azy).\n\n== Lohateny anankiray ==",
+ "babel-1": "Ity mpikambana ity dia miteny [[$2|$3]] [[$1|tsotsotra]].",
+ "babel-2": "[[$1|Antonontonony]] ny lenta n'ity mpikambana ity amin'ny teny [[$2|$3]].",
+ "babel-3": "Ity mpikambana ity dia [[$1|havanana]] amin'ny teny [[$2|$3]].",
+ "babel-4": "Ity mpikambana ity dia miteny [[$2|$3]] [[$1|mira-lenta amin'ny tenin-dreniny]].",
+ "babel-5": "Ity mpikambana ity dia miteny [[$2|$3]] [[$1|ara-asa]].",
+ "babel-N": "Ny teny [[$2|$3]] no [[$1|teny nibeazan']]ity mpikambana ity.",
+ "babel-0-n": "Ity mpikambana ity dia [[$1|tsy mahay]] miteny [[$2|malagasy]] (na sarotra aminy no miteny azy).",
+ "babel-1-n": "Ity mpikambana ity dia miteny [[$2|malagasy]] [[$1|tsotsotra]].",
+ "babel-2-n": "Ity mpikambana ity dia miteny [[$2|Malagasy]] [[$1|antonontonony]].",
+ "babel-3-n": "Ity mpikambana ity dia [[$1|havanana]] amin'ny teny [[$2|frantsay]].",
+ "babel-4-n": "Ity mpikambana ity dia miteny [[$2|malagasy]] [[$1|mira-lenta amin'ny tenin-dreniny]].",
+ "babel-5-n": "Ity mpikambana ity dia miteny [[$2|malagasy]] [[$1|ara-asa]]",
+ "babel-N-n": "Ny teny [[$2|malagasy]] no [[$1|tenim-pirenena nahabe]] ity mpikambana ity.",
+ "babel-footer": "Mpikambana araka ny tenim-pirenena"
+}
diff --git a/MLEB/Babel/i18n/mhr.json b/MLEB/Babel/i18n/mhr.json
new file mode 100644
index 00000000..7bde5eab
--- /dev/null
+++ b/MLEB/Babel/i18n/mhr.json
@@ -0,0 +1,30 @@
+{
+ "@metadata": {
+ "authors": [
+ "Azim",
+ "Сай",
+ "Санюн Вадик"
+ ]
+ },
+ "babel": "Пайдаланышын йылмым палымаш (Вавилон)",
+ "babel-desc": "<code>#babel</code> парсерын фунцкцийым ешара. Тудо колонкым пайдаланыше йылмым палымаш дене автоматический ыштымашым пуа. Вес ямдылык-влакым ешараш тоже лиеш.",
+ "babel-url": "Project:Бабилон",
+ "babel-autocreate-abort": "Пайдаланыныш лӱмжо, кудыжым тый возышыч, [[$1|Вавилон]] категорийым авто-ыштымашлан пайдаланен шога. Тиде лӱм дене регистрацийым эрташ ок лий.",
+ "babel-autocreate-reason": "[[$1|Бабилон]] категориян лаштыкым автоматик ыштымаш.",
+ "babel-autocreate-text-levels": "Тиде категорийыште $1-танлан «$2» йылмым палыше-влакым чумырымо.",
+ "babel-autocreate-text-main": "Тиде категорийыште «$1»-танлан йылмым палыше-влакым чумырымо.",
+ "babel-0": "Тиде пайдаланыше [[$2|$3]] [[$1|ок мошто]] (але тудлан йылмым йӧсӧ умылаш).",
+ "babel-1": "Тиде пайдаланышын [[$2|$3]] [[$1|тӱҥалтыш шинчымаш]] уло.",
+ "babel-2": "[[$2|$3]] — [[$1|кокла кӱкшыт]]",
+ "babel-3": "[[$2|$3]] — [[$1|сай шинчымаш]]",
+ "babel-4": "[[$2|$3]] — [[$1|шочмо йылме семын манаш лиеш]]",
+ "babel-5": "[[$2|$3]] — [[$1|профессионал кӱкшыт]]",
+ "babel-N": "Тиде пайдаланышылан [[$2|$3]] — [[$1|шочмо йылме]] улеш.",
+ "babel-0-n": "Тиде пайдаланыше [[$2|марий йылмым]] [[$1|ок пале]].",
+ "babel-1-n": "Тиде пайдаланышын [[$2|марий йылмым]] [[$1|тӱҥалтыш шинчымаш]] уло.",
+ "babel-2-n": "Тиде пайдаланышын [[$2|марий йылмым]] [[$1|кокла кӱкшытан шинчымашыже]] уло.",
+ "babel-3-n": "Тиде пайдаланыше [[$2|марла]] [[$1|куштылгын]] мошта.",
+ "babel-4-n": "Тиде пайдаланыше [[$2|марий йылмым]] [[$1|шке шочмо йылме семын]] пала.",
+ "babel-5-n": "Тиде пайдаланышын [[$2|марий йылмым]] [[$1|профессионал шинчымаш]] уло.",
+ "babel-N-n": "Тиде пайдаланышылан [[$2|марий йылме]] [[$1|шочмо]] улеш."
+}
diff --git a/MLEB/Babel/i18n/mi.json b/MLEB/Babel/i18n/mi.json
new file mode 100644
index 00000000..3dd530d6
--- /dev/null
+++ b/MLEB/Babel/i18n/mi.json
@@ -0,0 +1,11 @@
+{
+ "@metadata": {
+ "authors": [
+ "GerardM"
+ ]
+ },
+ "babel-1-n": "He [[$1|tapepa]] rawa [[$2|te reo Māori]] o tēnei tangata.",
+ "babel-2-n": "Kua taea e tēnei tangata te [[$1|takawaenga ]] mō [[$2|te reo Māori]].",
+ "babel-3-n": "He [[$1|matatau]] tēnei tāngata ki [[$2|te reo Māori]].",
+ "babel-4-n": "Ko tēnei tangata he [[$1|tino matatau]] ki te reo [[$2|Māori]]."
+}
diff --git a/MLEB/Babel/i18n/min.json b/MLEB/Babel/i18n/min.json
new file mode 100644
index 00000000..a7a7257a
--- /dev/null
+++ b/MLEB/Babel/i18n/min.json
@@ -0,0 +1,33 @@
+{
+ "@metadata": {
+ "authors": [
+ "Iwan Novirion",
+ "Naval Scene"
+ ]
+ },
+ "babel": "Informasi bahaso pangguno",
+ "babel-desc": "Menambah fungsi parser <code>#babel</code> untuak manampilan kotak pangguno babel sacaro otomatih jo kamampuan manggunoan templat surang",
+ "babel-url": "Project:Babel",
+ "babel-footer-url": ":Category:Pangguno manuruik bahaso",
+ "babel-autocreate-abort": "Namo pangguno Sanak digunoan untuak mambuek kategori [[$1|Babel]] otomatis dan indak dapek didaftakan.",
+ "babel-autocreate-reason": "Otomatih mambuek laman kategori [[$1|Babel]].",
+ "babel-autocreate-text-levels": "Pangguno di kategori ko manandoan punyo kamampuan $1 untuak bahaso $2.",
+ "babel-autocreate-text-main": "Pangguno di kategori ko punyo kamampuan babahaso $1.",
+ "babel-autocreate-user": "Babel AutoCreate",
+ "babel-0": "Pangguno ko [[$1|indak]] mangarati [[$2|$3]] (atau payah bana mangaratinyo).",
+ "babel-1": "Pangguno ko lai tau [[$1|sangenek]] jo [[$2|$3]].",
+ "babel-2": "Pangguno ko mangarati [[$2|$3]] [[$1|sadang elok]].",
+ "babel-3": "Pangguno ko lai mangarati [[$1|bana]] [[$2|$3]].",
+ "babel-4": "Pangguno ko mangarati [[$2|$3]] saroman [[$1|urang Minang]].",
+ "babel-5": "Pangguno ko [[$1|ahli]] [[$2|$3]].",
+ "babel-N": "Pangguno ko [[$1|mangecek]] jo [[$2|$3]].",
+ "babel-0-n": "Pangguno ko [[$1|indak]] mangarati bahaso [[$2|Minang]] (atau payah bana mangaratinyo).",
+ "babel-1-n": "Pangguno ko lai tau [[$1|sangenek]] jo bahaso [[$2|Minang]].",
+ "babel-2-n": "Pangguno ko mangarati bahaso [[$2|Minang]] [[$1|sadang elok]].",
+ "babel-3-n": "Pangguno ko mangarati [[$1|bana]] bahaso [[$2|Minang]].",
+ "babel-4-n": "Pangguno ko mangarati bahaso [[$2|Minang]] saroman [[$1|urang Minang]].",
+ "babel-5-n": "Pangguno ko [[$1|ahli]] bahaso [[$2|Minang]].",
+ "babel-N-n": "Pangguno ko [[$1|mangecek]] jo bahaso [[$2|Minang]].",
+ "babel-template": "Template:User $1",
+ "babel-footer": "Pangguno badasarkan bahaso"
+}
diff --git a/MLEB/Babel/i18n/mk.json b/MLEB/Babel/i18n/mk.json
new file mode 100644
index 00000000..3554047e
--- /dev/null
+++ b/MLEB/Babel/i18n/mk.json
@@ -0,0 +1,34 @@
+{
+ "@metadata": {
+ "authors": [
+ "Bjankuloski06",
+ "Brest",
+ "INkubusse"
+ ]
+ },
+ "babel": "Кориснички информации за јазици",
+ "babel-desc": "Ја додава расчленувачка функција <code>#babel</code> со што се дозволува автоматизирано создавање на колони со кориснички кутии од типот „Вавилон“, со можноста да се додаваат сопствени шаблони",
+ "babel-url": "Project:Вавилон",
+ "babel-footer-url": ":Category:Вавилон - Корисници по јазик",
+ "babel-autocreate-abort": "Корисничкото име кое го наведовте се користи за автоматско создавање на [[$1|Babel]] категорија и затоа не може да се регистрира.",
+ "babel-autocreate-reason": "Автоматско создавање на [[$1|Вавилон]] категорија.",
+ "babel-autocreate-text-levels": "Корисниците во оваа категорија навеле дека имаат $1 ниво на познавање на $2 јазик.",
+ "babel-autocreate-text-main": "Корисниците во оваа категорија навеле дека имаат познавање на $1 јазик.",
+ "babel-autocreate-user": "Вавилон - Автосоздавање",
+ "babel-0": "Овој корисник [[$1|не]] разбира [[$2|$3]] (или разбира со значајни потешкотии).",
+ "babel-1": "Овој корисник разбира [[$2|$3]] на [[$1|основно]] ниво.",
+ "babel-2": "Овој корисник разбира [[$2|$3]] на [[$1|средно]] ниво.",
+ "babel-3": "Овој корисник разбира [[$2|$3]] на [[$1|напредно]] ниво.",
+ "babel-4": "Овој корисник [[$2|$3от]] го владее речиси како [[$1|мајчин]].",
+ "babel-5": "Овој корисник го владее [[$2|$3от]] на [[$1|професионално]] ниво.",
+ "babel-N": "Овој корисник зборува [[$2|$3]] како [[$1|мајчин јазик]].",
+ "babel-0-n": "Овој корисник [[$1|не]] разбира [[$2|македонски]] (или разбира со значајни потешкотии).",
+ "babel-1-n": "Овој корисник разбира [[$2|македонски]] на [[$1|основно]] ниво.",
+ "babel-2-n": "Овој корисник разбира [[$2|македонски]] на [[$1|средно]] ниво.",
+ "babel-3-n": "Овој корисник разбира [[$2|македонски]] на [[$1|напредно]] ниво.",
+ "babel-4-n": "Овој корисник [[$2|македонскиот]] го владее речиси како [[$1|мајчин]].",
+ "babel-5-n": "Овој корисник го владее [[$2|македонскиот]] на [[$1|професионално]] ниво.",
+ "babel-N-n": "Овој корисник зборува [[$2|македонски]] како [[$1|мајчин јазик]].",
+ "babel-template": "Template:Корисник $1",
+ "babel-footer": "Корисници по јазик"
+}
diff --git a/MLEB/Babel/i18n/ml.json b/MLEB/Babel/i18n/ml.json
new file mode 100644
index 00000000..e5cdde81
--- /dev/null
+++ b/MLEB/Babel/i18n/ml.json
@@ -0,0 +1,32 @@
+{
+ "@metadata": {
+ "authors": [
+ "Praveenp",
+ "Shijualex",
+ "Vssun"
+ ]
+ },
+ "babel": "ഉപയോക്താവിന്റെ ബാബേൽ വിവരണം",
+ "babel-desc": "<code>#babel</code> എന്ന പാഴ്‌സർ ഫങ്ഷൻ ചേർക്കുന്നു. ഇതു ബാബേൽ ഉപയോക്തൃ പെട്ടി യാന്ത്രികമായി സൃഷ്ടിക്കുന്നതിനും ഇച്ഛാനുസരണമുള്ള ഫലകങ്ങൾ ഉൾപ്പെടുത്തുവാനും സഹായകമാകുന്നു.",
+ "babel-url": "Project:ബാബേൽ",
+ "babel-footer-url": ":Category:ബാബേൽ - ഉപയോക്താക്കൾ ഭാഷയനുസരിച്ച്",
+ "babel-autocreate-abort": "താങ്കൾ നൽകിയ ഉപയോക്തൃനാമം [[$1|ബാബേൽ]] വർഗ്ഗത്തിൽ സ്വയം സൃഷ്ടിക്കപ്പെടുന്നതാണ്, അങ്ങനെയൊന്ന് ഉണ്ടാക്കാനാവില്ല.",
+ "babel-autocreate-reason": "സ്വയം [[$1|ബാബേൽ]] വർഗ്ഗ താൾ സൃഷ്ടിക്കുന്നു.",
+ "babel-autocreate-text-levels": "ഈ വർഗ്ഗത്തിലുള്ള ഉപയോക്താക്കൾ അവർക്ക് $2 ഭാഷയിൽ $1 തലത്തിലുള്ള നിപുണത ഉണ്ടെന്ന് കുറിക്കുന്നു.",
+ "babel-autocreate-text-main": "ഈ വർഗ്ഗത്തിലുള്ള ഉപയോക്താക്കൾ അവർക്ക് $1 ഭാഷയിൽ അറിവുണ്ടെന്ന് കുറിക്കുന്നു.",
+ "babel-0": "ഈ ഉപയോക്താവിനു [[$2|$3]] എന്ന ഭാഷ [[$1|ഒട്ടും അറിയില്ല]] (അല്ലെങ്കിൽ വളരെ ബുദ്ധിമുട്ടിയാണ് മനസ്സിലാക്കുന്നത്).",
+ "babel-1": "ഈ ഉപയോക്താവിനു [[$2|$3]] എന്ന ഭാഷയിൽ [[$1|അടിസ്ഥാനജ്ഞാനം]] ഉണ്ട്.",
+ "babel-2": "ഈ ഉപയോക്താവിനു [[$2|$3]] എന്ന ഭാഷയിൽ [[$1|സാമാന്യജ്ഞാനം]] ഉണ്ട്.",
+ "babel-3": "ഈ ഉപയോക്താവിനു [[$2|$3]] എന്ന ഭാഷയിൽ [[$1|ഉന്നതജ്ഞാനം]] ഉണ്ട്.",
+ "babel-4": "ഈ ഉപയോക്താവിനു [[$2|$3]] എന്ന ഭാഷയിൽ [[$1|മാതൃഭാഷയായുള്ളവർക്കു സമാനമായ]] ജ്ഞാനമുണ്ട്.",
+ "babel-5": "ഈ ഉപയോക്താവിനു [[$2|$3]] എന്ന ഭാഷയിൽ [[$1|പണ്ഡിതസമാനമായ]] ജ്ഞാനമുണ്ട്.",
+ "babel-N": "ഈ ഉപയോക്താവിന്റെ [[$1|മാതൃഭാഷ]] [[$2|$3]] ആണ്.",
+ "babel-0-n": "ഈ ഉപയോക്താവിനു [[$2|മലയാളഭാഷയിൽ]] ഒട്ടും അറിവ് [[$1|ഇല്ല]] (അല്ലെങ്കിൽ മലയാളം വളരെ ബുദ്ധിമുട്ടിയാണു മനസ്സിലാക്കുന്നത്).",
+ "babel-1-n": "ഈ ഉപയോക്താവിനു [[$2|മലയാളഭാഷയിൽ]] [[$1|അടിസ്ഥാനജ്ഞാനം]] ഉണ്ട്.",
+ "babel-2-n": "ഈ ഉപയോക്താവിനു [[$2|മലയാളഭാഷയിൽ]] [[$1|സാമാന്യജ്ഞാനം]] ഉണ്ട്.",
+ "babel-3-n": "ഈ ഉപയോക്താവിനു [[$2|മലയാളഭാഷയിൽ]] [[$1|ഉന്നതജ്ഞാനം]] ഉണ്ട്.",
+ "babel-4-n": "ഈ ഉപയോക്താവിനു [[$2|മലയാളഭാഷ]] [[$1|മാതൃഭാഷയുള്ളവർക്കു സമാനമായ]] ജ്ഞാനമുണ്ട്.",
+ "babel-5-n": "ഈ ഉപയോക്താവിനു [[$2|മലയാളഭാഷയിൽ]] [[$1|പണ്ഡിതസമാനമായ]] ജ്ഞാനമുണ്ട്.",
+ "babel-N-n": "ഈ ഉപയോക്താവിന്റെ [[$1|മാതൃഭാഷ]] [[$2|മലയാളമാണ്]].",
+ "babel-footer": "ഉപയോക്താക്കൾ ഭാഷാക്രമത്തിൽ"
+}
diff --git a/MLEB/Babel/i18n/mn.json b/MLEB/Babel/i18n/mn.json
new file mode 100644
index 00000000..15147959
--- /dev/null
+++ b/MLEB/Babel/i18n/mn.json
@@ -0,0 +1,30 @@
+{
+ "@metadata": {
+ "authors": [
+ "Mifos.mn"
+ ]
+ },
+ "babel": "Babel хэрэглэгчийн мэдээлэл",
+ "babel-desc": "Тохируулсан темплэйт оруулах боломж бүхий Babel хэрэглэгчийн хайрцгийн багана автомат үүсгэлтийг боломжтой болгох <code>#babel</code> парсер функц нэмнэ",
+ "babel-url": "Project:Babel",
+ "babel-footer-url": ":Категори:Babel - Хэрэглэгч хэлээр",
+ "babel-autocreate-abort": "Таны сонгосон хэрэглэгч [[$1|Babel]] категорийн авто-үүсгэлтэд зориулсагдсан бөгөөд бүртгэгдэх боломжгүй.",
+ "babel-autocreate-reason": "Автоматаар [[$1|Babel]] категорийн хуудас үүсгэж байна.",
+ "babel-autocreate-text-levels": "Энэ ангиллын хэрэглэгчид $2 хэлийг $1 төвшинд эзэмшсэн гэж мэдүүлсэн.",
+ "babel-autocreate-text-main": "Энэ ангиллын хэрэглэгчид $1 хэлний мэдлэгтэй гэж мэдүүлсэн.",
+ "babel-0": "Энэ хэрэглэгч [[$2|$3]] хэлний [[$1|мэдлэггүй]] байна (эсвэл их хүндрэлтэйгээр ойлгодог).",
+ "babel-1": "Энэ хэрэглэгч [[$2|$3]] хэлний [[$1|үндсэн]] мэдлэгтэй байна.",
+ "babel-2": "Энэ хэрэглэгч [[$2|$3]] хэлний [[$1|дунд шатны]] мэдлэгтэй байна.",
+ "babel-3": "Энэ хэрэглэгч [[$2|$3]] хэлний [[$1|ахисан шатны]] мэдлэгтэй байна.",
+ "babel-4": "Энэ хэрэглэгч [[$2|$3]] хэлийг [[$1|төрөлх мэт]] эзэмшсэн байна.",
+ "babel-5": "Энэ хэрэглэгч [[$2|$3]] хэлийг [[$1|мэргэжлийн төвшинд]] эзэмшсэн байна.",
+ "babel-N": "Энэ хэрэглэгчид [[$2|$3]] хэл нь [[$1|төрөлх]] хэл юм.",
+ "babel-0-n": "Энэ хэрэглэгч [[$2|монгол]] хэлний [[$1|мэдлэггүй]] байна (эсвэл их хүндрэлтэйгээр ойлгодог).",
+ "babel-1-n": "Энэ хэрэглэгч [[$2|монгол]] хэлний [[$1|үндсэн]] мэдлэгтэй байна.",
+ "babel-2-n": "Энэ хэрэглэгч [[$2|монгол]] хэлний [[$1|дунд шатны]] мэдлэгтэй байна.",
+ "babel-3-n": "Энэ хэрэглэгч [[$2|монгол]] хэлний [[$1|ахисан шатны]] мэдлэгтэй байна.",
+ "babel-4-n": "Энэ хэрэглэгч [[$2|монгол]] хэлийг [[$1|төрөлх мэт]] эзэмшсэн байна.",
+ "babel-5-n": "Энэ хэрэглэгч [[$2|монгол]] хэлийг [[$1|мэргэжлийн төвшинд]] эзэмшсэн байна.",
+ "babel-N-n": "Энэ хэрэглэгчид [[$2|монгол]] хэл нь [[$1|төрөлх]] хэл юм.",
+ "babel-footer": "Хэлээрх хэрэглэгчид"
+}
diff --git a/MLEB/Babel/i18n/mnc.json b/MLEB/Babel/i18n/mnc.json
new file mode 100644
index 00000000..17aecbb0
--- /dev/null
+++ b/MLEB/Babel/i18n/mnc.json
@@ -0,0 +1,24 @@
+{
+ "@metadata": {
+ "authors": [
+ "Minggantu",
+ "Šolon"
+ ]
+ },
+ "babel": "Babail baitalasi i mejige",
+ "babel-0": "Ere baitalasi umai [[$2|$3]] be [[$1|ulhime muterakū]](eici ulhire mangga.)",
+ "babel-1": "Ere baitalasi [[$1|fulehe]] [[$2|$3]] i gisureme mutembi.",
+ "babel-2": "Ere baitalasi [[$1|biretengge]] [[$2|$3]] i gisureme mutembi.",
+ "babel-3": "Ere baitalasi [[$1|urehe]] [[$2|$3]] i gisureme mutembi.",
+ "babel-4": "Ere baitalasi [[$1|niyamangga gisun i adalingga]] [[$2|$3]] i gisureme mutembi.",
+ "babel-5": "Ere baitalasi [[$1|cohotoi hethe i jergi]] [[$2|$3]] i gisureme mutembi.",
+ "babel-N": "Ere baitalasi i [[$1|niyamangga gisun]] oci [[$2|$3]].",
+ "babel-0-n": "Ere baitalasi umai [[$2|Manju gisun]] be [[$1|ulhime muterakū]].",
+ "babel-1-n": "Ere baitalasi [[$1|fulehe]] [[$2|Manju gisun]] i gisureme mutembi.",
+ "babel-2-n": "Ere baitalasi [[$1|biretengge]] [[$2|Manju gisun]] i gisureme mutembi.",
+ "babel-3-n": "Ere baitalasi [[$1|urehe]] [[$2|Manju gisun]] i gisureme mutembi.",
+ "babel-4-n": "Ere baitalasi [[$1|niyamangga gisun i adalingga]] [[$2|Manju gisun]] i gisureme mutembi.",
+ "babel-5-n": "Ere baitalasi [[$1|cohotoi hethe i jergi]] [[$2|Manju gisun]] i gisureme mutembi.",
+ "babel-N-n": "Ere baitalasi i [[$1|niyamangga gisun]] oci [[$2|Manju gisun]].",
+ "babel-footer": "Baitalasi i baitalara gisun be baicara"
+}
diff --git a/MLEB/Babel/i18n/mo.json b/MLEB/Babel/i18n/mo.json
new file mode 100644
index 00000000..f7fd8273
--- /dev/null
+++ b/MLEB/Babel/i18n/mo.json
@@ -0,0 +1,18 @@
+{
+ "@metadata": {
+ "authors": [
+ "Node ue"
+ ]
+ },
+ "babel": "Информаций Бабел деспре утилизатор",
+ "babel-desc": "Адаугэ функция де парсаре <code>#babel</code> пентру ӂенераря аутоматэ а колоаней де кутии де утилизатор бабел ку посибилитатя де а инклуде шаблоане персонализате",
+ "babel-url": "Project:Бабел",
+ "babel-autocreate-text-levels": "Утилизаторий дин ачаста категорие аратэ кэ ачестия ау ун нивел де калификаре $1 пентру лимба $2.",
+ "babel-autocreate-text-main": "Утилизаторий дин ачаста категорие аратэ кэ ачестия ау куноштинце де лимба $1.",
+ "babel-0": "Ачест утилизатор [[$1|ну]] аре куноштинце де [[$2|$3]] (сау ынцелеӂе ку маре дификултате).",
+ "babel-1": "Ачест утилизатор куноаште [[$2|$3]] [[$1|де базэ]].",
+ "babel-2": "Ачест утилизатор куноаште [[$2|$3]] [[$1|интермедиарэ]].",
+ "babel-3": "Ачест утилизатор куноаште [[$2|$3]] [[$1|авансатэ]].",
+ "babel-4": "Ачест утилизатор куноаште [[$2|$3]] [[$1|апроапе нативэ]].",
+ "babel-5": "Ачест утилизатор куноаште [[$2|$3]] [[$1|професионалэ]]."
+}
diff --git a/MLEB/Babel/i18n/mr.json b/MLEB/Babel/i18n/mr.json
new file mode 100644
index 00000000..5341073c
--- /dev/null
+++ b/MLEB/Babel/i18n/mr.json
@@ -0,0 +1,35 @@
+{
+ "@metadata": {
+ "authors": [
+ "Evision",
+ "Kaustubh",
+ "Mahitgar",
+ "Pravins",
+ "Rahuldeshmukh101",
+ "V.narsikar"
+ ]
+ },
+ "babel": "बाबेल सदस्य माहिती",
+ "babel-desc": "एखाद्या सदस्याच्या बाबेल सदस्यपेट्या आपोआप देण्यासाठी उपयुक्त अशी <code>#babel</code> पार्सर क्रिया वाढवितो. यामध्ये स्वत: निर्माण केलेले सदस्य साचे सुद्धा देता येतात.",
+ "babel-url": "Project:बाबेल",
+ "babel-footer-url": "Category:भाषेप्रमाणे वापरकर्ते",
+ "babel-autocreate-abort": "आपण सुचविलेले सदस्यनाव [[$1|बाबेल]] या प्रवर्गाच्या स्वयंनिर्मिती साठी वापरले जाते, त्यामुळे त्याची नोंदणी होऊ शकत नाही.",
+ "babel-autocreate-reason": "[[$1|बॅबेल]] प्रवर्ग पानाची स्वयं निर्मिती होते आहे",
+ "babel-autocreate-text-levels": "या वर्गीकरणातील सदस्य $2 भाषेकरिता $1 कौशल्य पातळी असल्याचे दर्शवीतात",
+ "babel-autocreate-text-main": "या वर्गीकरणातील सदस्य $1 भाषेचे ज्ञान असल्याचे दर्शवीतात",
+ "babel-0": "या सदस्याला [[$2|$3]] चे ज्ञान [[$1|नाही]] (किंवा समजण्यासाठी खूप कष्ट पडतात).",
+ "babel-1": "या सदस्याला [[$2|$3]] चे [[$1|प्राथमिक]] ज्ञान आहे.",
+ "babel-2": "या सदस्याला [[$2|$3]] चे [[$1|मध्यम स्तराचे]] ज्ञान आहे.",
+ "babel-3": "या सदस्याला [[$2|$3]] चे [[$1|उच्च स्तराचे]] ज्ञान आहे.",
+ "babel-4": "या सदस्याला [[$2|$3]] चे [[$1|अति उच्च स्तराचे]] ज्ञान आहे.",
+ "babel-5": "या सदस्याला [[$2|$3]] चे [[$1|व्यावसायिक स्तराचे]] ज्ञान आहे.",
+ "babel-N": "या सदस्याला [[$2|$3]] चे [[$1|स्थानिक स्तराचे]] ज्ञान आहे.",
+ "babel-0-n": "या सदस्याला [[$2|मराठी]] चे ज्ञान [[$1|नाही]] (किंवा समजण्यासाठी खूप कष्ट पडतात).",
+ "babel-1-n": "या सदस्याला [[$2|मराठी]] चे [[$1|प्राथमिक]] ज्ञान आहे.",
+ "babel-2-n": "या सदस्याला [[$2|मराठी]] चे [[$1|मध्यम स्तराचे]] ज्ञान आहे.",
+ "babel-3-n": "या सदस्याला [[$2|मराठी]] चे [[$1|उच्च स्तराचे]] ज्ञान आहे.",
+ "babel-4-n": "या सदस्याला [[$2|मराठी]] चे [[$1|अति उच्च स्तराचे]] ज्ञान आहे.",
+ "babel-5-n": "या सदस्याला [[$2|मराठी]] चे [[$1|व्यावसायिक स्तराचे]] ज्ञान आहे.",
+ "babel-N-n": "या सदस्याला [[$2|मराठी]] चे [[$1|स्थानिक स्तराचे]] ज्ञान आहे.",
+ "babel-footer": "भाषेनुसार सदस्य"
+}
diff --git a/MLEB/Babel/i18n/ms.json b/MLEB/Babel/i18n/ms.json
new file mode 100644
index 00000000..4d23f6ea
--- /dev/null
+++ b/MLEB/Babel/i18n/ms.json
@@ -0,0 +1,35 @@
+{
+ "@metadata": {
+ "authors": [
+ "Anakmalaysia",
+ "Aviator",
+ "Iwan Novirion",
+ "Kurniasan"
+ ]
+ },
+ "babel": "Maklumat bahasa pengguna",
+ "babel-desc": "Menambah fungsi penghurai <code>#babel</code> untuk membolehkan penjanaan automatik kotak bahasa pengguna dan tempahan templat",
+ "babel-url": "Project:Babel",
+ "babel-footer-url": ":Category:Babel - Pengguna mengikut bahasa",
+ "babel-autocreate-abort": "Nama pengguna yang anda nyatakan telah ditempah untuk penciptaan automatik kategori [[$1|Bahasa]] dan tidak boleh didaftarkan.",
+ "babel-autocreate-reason": "Mencipta laman kategori [[$1|Bahasa]] secara automatik.",
+ "babel-autocreate-text-levels": "Pengguna yang tergolong dalam kategori ini mengisyaratkan bahawa mereka memiliki kemahiran aras $1 dalam bahasa $2.",
+ "babel-autocreate-text-main": "Pengguna yang tergolong dalam kategori ini mengisyaratkan bahawa mereka memiliki pengetahuan dalam bahasa $1.",
+ "babel-autocreate-user": "Babel AutoCreate",
+ "babel-0": "Pengguna ini [[$1|tidak mampu]] bertutur dalam (atau sukar memahami) [[$2|$3]].",
+ "babel-1": "Pengguna ini memiliki kemahiran [[$1|asas]] dalam [[$2|$3]].",
+ "babel-2": "Pengguna ini memiliki kemahiran [[$1|sederhana]] dalam [[$2|$3]].",
+ "babel-3": "Pengguna ini memiliki kemahiran [[$1|tinggi]] dalam [[$2|$3]].",
+ "babel-4": "Pengguna ini memiliki kemahiran [[$1|hampir sempurna]] dalam [[$2|$3]].",
+ "babel-5": "Pengguna ini memiliki kemahiran [[$1|profesional]] dalam [[$2|$3]].",
+ "babel-N": "Pengguna ini adalah penutur [[$1|asli]] [[$2|$3]].",
+ "babel-0-n": "Pengguna ini [[$1|tidak mampu]] bertutur dalam (atau sukar memahami) [[$2|bahasa Melayu]].",
+ "babel-1-n": "Pengguna ini memiliki kemahiran [[$1|asas]] dalam [[$2|bahasa Melayu]].",
+ "babel-2-n": "Pengguna ini memiliki kemahiran [[$1|sederhana]] dalam [[$2|bahasa Melayu]].",
+ "babel-3-n": "Pengguna ini memiliki kemahiran [[$1|tinggi]] dalam [[$2|bahasa Melayu]].",
+ "babel-4-n": "Pengguna ini memiliki kemahiran [[$1|hampir sempurna]] dalam [[$2|bahasa Melayu]].",
+ "babel-5-n": "Pengguna ini memiliki kemahiran [[$1|profesional]] dalam [[$2|bahasa Melayu]].",
+ "babel-N-n": "Pengguna ini adalah penutur [[$1|asli]] [[$2|bahasa Melayu]].",
+ "babel-template": "Template:Pengguna $1",
+ "babel-footer": "Pengguna mengikut bahasa"
+}
diff --git a/MLEB/Babel/i18n/mt.json b/MLEB/Babel/i18n/mt.json
new file mode 100644
index 00000000..a9f7f794
--- /dev/null
+++ b/MLEB/Babel/i18n/mt.json
@@ -0,0 +1,30 @@
+{
+ "@metadata": {
+ "authors": [
+ "Chrisportelli"
+ ]
+ },
+ "babel": "Informazzjoni tal-utent Babel",
+ "babel-desc": "Iżżid il-funzjoni parser <code>#babel</code> sabiex tippermetti l-ġenerazzjoni awtomatika ta' kolonna ta' kaxxa tal-utent babel bil-possibilità li tinkludi mudelli personalizzati",
+ "babel-url": "Project:Babel",
+ "babel-footer-url": ":Category:Babel - Utenti skont il-lingwa",
+ "babel-autocreate-abort": "L-isem tal-utent li speċifikajt hu wżat għall-ħolqien awtomatiku ta' kategoriji [[$1|Babel]] u ma jistsax jiġi reġistrat.",
+ "babel-autocreate-reason": "Ħolqien awtomatiku tal-paġna tal-kategorija [[$1|Babel]].",
+ "babel-autocreate-text-levels": "Utenti f'din il-kategorija jindikaw li għandhom livell ta' għarfien $1 għal-lingwa $2.",
+ "babel-autocreate-text-main": "Utenti f'din il-kategorija jindikaw li għandhom għarfien tal-lingwa $1.",
+ "babel-0": "Dan l-utent [[$1|m'huwiex kapaċi jikkomunika]] bil-[[$2|$3]] (jew jifhmu b'diffikultà konsiderevoli).",
+ "babel-1": "Dan l-utent jista' jikkontribwixxi b'livell [[$1|bażiku]] tal-[[$2|$3]].",
+ "babel-2": "Dan l-utent jista' jikkontribwixxi b'livell [[$1|intermedju]] tal-[[$2|$3]].",
+ "babel-3": "Dan l-utent jista' jikkontribwixxi b'livell [[$1|avvanzat]] tal-[[$2|$3]].",
+ "babel-4": "Dan l-utent jista' jikkontribwixxi b'livell ta' [[$1|kważi nattiv]] tal-[[$2|$3]].",
+ "babel-5": "Dan l-utent jista' jikkontribwixxi b'livell [[$1|professjonali]] tal-[[$2|$3]].",
+ "babel-N": "Dan l-utent jista' jikkontribwixxi b'livell [[$1|nattiv]] tal-[[$2|$3]].",
+ "babel-0-n": "Dan l-utent [[$1|m'huwiex kapaċi jikkomunika]] bil-[[$2|Malti]] (jew jifhmu b'diffikultà konsiderevoli).",
+ "babel-1-n": "Dan l-utent jista' jikkontribwixxi b'livell [[$1|bażiku]] tal-[[$2|Malti]].",
+ "babel-2-n": "Dan l-utent jista' jikkontribwixxi b'livell [[$1|intermedju]] tal-[[$2|Malti]].",
+ "babel-3-n": "Dan l-utent jista' jikkontribwixxi b'livell [[$1|avvanzat]] tal-[[$2|Malti]].",
+ "babel-4-n": "Dan l-utent jista' jikkontribwixxi b'livell ta' [[$1|kważi nattiv]] tal-[[$2|Malti]].",
+ "babel-5-n": "Dan l-utent jista' jikkontribwixxi b'livell [[$1|professjonali]] tal-[[$2|Malti]].",
+ "babel-N-n": "Dan l-utent jista' jikkontribwixxi b'livell [[$1|nattiv]] tal-[[$2|Malti]].",
+ "babel-footer": "Utenti skont il-lingwa"
+}
diff --git a/MLEB/Babel/i18n/mwl.json b/MLEB/Babel/i18n/mwl.json
new file mode 100644
index 00000000..63630fa5
--- /dev/null
+++ b/MLEB/Babel/i18n/mwl.json
@@ -0,0 +1,28 @@
+{
+ "@metadata": {
+ "authors": [
+ "Cecílio"
+ ]
+ },
+ "babel": "Anformaçon Babel de Outelizador",
+ "babel-desc": "Ajunta la funçon de l analisador parser <code>#babel</code> pa premitir la criaçon outomatica dua coluna de caixas de outelizador babel cula possiblidade de ancluir modelos pessonalizadas",
+ "babel-url": "Project:Babel",
+ "babel-autocreate-abort": "L nome de outelizador que deziste ye ousado pula criaçon outomática de catadories [[$1|Babel]] i, por esso, nun puode ser registrado.",
+ "babel-autocreate-reason": "A criar outomaticamiente la páigina de la catadorie [[$1|Babel]].",
+ "babel-autocreate-text-levels": "Ls outelizadores nesta catadorie dízen que ténen un nible de coincimiento $1 na lhéngua $2.",
+ "babel-autocreate-text-main": "Ls outelizadores nesta catadorie dízen que ténen coincimientos de la lhéngua $1.",
+ "babel-0": "{{GENDER:$4|Este outelizador|Esta outelizadora}} [[$1|nun antende]] [[$2|$3]] (ó antende cun muitas deficuldades).",
+ "babel-1": "{{GENDER:$4|Este outelizador|Esta outelizadora}} puode ajudar cun un nible [[$1|básico]] de [[$2|$3]].",
+ "babel-2": "{{GENDER:$4|Este outelizador|Esta outelizadora}} puode ajudar cun un nible [[$1|médio]] de [[$2|$3]].",
+ "babel-3": "{{GENDER:$4|Este outelizador|Esta outelizadora}} puode ajudar cun un nible [[$1|abançado]] de [[$2|$3]].",
+ "babel-4": "{{GENDER:$4|Este outelizador|Esta outelizadora}} puode ajudar cun un nible [[$1|quaijeque cumo de quien l mamou a la nacença]] de [[$2|$3]].",
+ "babel-5": "{{GENDER:$4|Este outelizador|Esta outelizadora}} puode ajudar cun un nible [[$1|porfissional]] de [[$2|$3]].",
+ "babel-N": "{{GENDER:$4|Este outelizador|Esta outelizadora}} ten cumo lhéngua [[$1|de nacença]] l [[$2|$3]].",
+ "babel-0-n": "{{GENDER:$4|Este outelizador|Esta outelizadora}} [[$1|nun antende]] [[$2|Mirandés]] (ó antende cun algun custo).",
+ "babel-1-n": "{{GENDER:$4|Este outelizador|Esta outelizadora}} puode ajudar cun un nible [[$1|básico]] de [[$2|mirandés]].",
+ "babel-2-n": "{{GENDER:$4|Este outelizador|Esta outelizadora}} puode ajudar cun un nible [[$1|médio]] de [[$2|mirandés]].",
+ "babel-3-n": "{{GENDER:$4|Este outelizador|Esta outelizadora}} puode ajudar cun un nible [[$1|abançado]] de [[$2|mirandés]].",
+ "babel-4-n": "{{GENDER:$4|Este outelizador|Esta outelizadora}} puode ajudar cun un nible [[$1|quaijeque cumo de quien l mamou a la nacença]] de [[$2|mirandés]].",
+ "babel-5-n": "{{GENDER:$4|Este outelizador|Esta outelizadora}} puode ajudar cun un nible [[$1|porfissional]] de [[$2|mirandés]].",
+ "babel-N-n": "{{GENDER:$4|Este outelizador|Esta outelizadora}} ten cumo lhéngua [[$1|de nacença]] l [[$2|mirandés]]."
+}
diff --git a/MLEB/Babel/i18n/my.json b/MLEB/Babel/i18n/my.json
new file mode 100644
index 00000000..f4e28fe0
--- /dev/null
+++ b/MLEB/Babel/i18n/my.json
@@ -0,0 +1,28 @@
+{
+ "@metadata": {
+ "authors": [
+ "Lionslayer"
+ ]
+ },
+ "babel": "အသုံးပြုသူ၏ ဘေဘယ်ပေါ်မှ သတင်းအချက်အလက်",
+ "babel-desc": "စိတ်ကြိုက် တမ်းပလိတ်များ ထည့်သွင်းနိုင်စေသည့် ဘေဘယ် userbox ကော်လံ ကို အလိုအလျောက် ထွက်ပေါ်လာစေရန် <code>#babel</code> parser function ကို ထည့်ရေးပါ။",
+ "babel-url": "Project:ဘေဘယ်",
+ "babel-autocreate-abort": "သင်ဖော်ပြခဲ့သော အသုံးပြုသူ အမည်သည် [[$1|ဘေဘယ်]] အမျိုးအစား အလိုအလျောက်ဖန်တီးခြင်း အတွက် သုံးထားပြီး မှတ်ပုံတင်မရနိုင်ပါ။",
+ "babel-autocreate-reason": "[[$1|ဘေဘယ်]] အမျိုးအစား စာမျက်နှာကို အလိုအလျောက် ဖန်တီးနေသည်။",
+ "babel-autocreate-text-levels": "ဤအမျိုးအစားမှ အသုံးပြုသူများသည် $2 ဘာသာအတွက် ကျွမ်းကျင်မှုအဆင့် $1 ရှိသည်ကို ဆိုလိုသည်။",
+ "babel-autocreate-text-main": "ဤအမျိုးအစားမှ အသုံးပြုသူများသည် $1 ဘာသာကို ကြားဖူးနားဝရှိသည်ကို ဆိုလိုသည်။",
+ "babel-0": "ဤ အသုံးပြုသူသည် [[$2|$3]] တွင် ဗဟုသုတအဆင့် [[$1|မရှိသလောက်]] ရှိသည် (သို့ အခက်အခဲတစ်စုံတရာရှိသော်လည်း နားလည်နိုင်သည်)။",
+ "babel-1": "ဤအသုံးပြုသူသည် [[$2|$3]] အတွက် [[$1|အခြေခံ]] ဗဟုသုတ ရှိသည်။",
+ "babel-2": "ဤအသုံးပြုသည် [[$2|$3]] အတွက် ဗဟုသုတအဆင့် [[$1|အလယ်အလတ်]] ရှိသည်။",
+ "babel-3": "ဤအသုံးပြုသူသည် [[$2|$3]] အတွက် ဗဟုသုတအဆင့် [[$1|အဆင့်မြင့်မြင့်]] ရှိသည်။",
+ "babel-4": "ဤအသုံးပြုသူသည် [[$2|$3]] အတွက် [[$1|ဒေသခံနီးပါး]]ဗဟုသုတ ရှိသည်။",
+ "babel-5": "ဤအသုံးပြုသူသည် [[$2|$3]] အတွက် [[$1|ပရိုအဆင့်]] ဗဟုသုတ ရှိသည်။။",
+ "babel-N": "ဤအသုံးပြုသူသည် [[$2|$3]] အပေါ်တွင် [[$1|ဒေသခံအဆင့်]] ကျွမ်းကျင်စွာ နားလည်သည်။",
+ "babel-0-n": "ဤ အသုံးပြုသူသည် [[$2|မြန်မာဘာသာ]]တွင် ဗဟုသုတအဆင့် [[$1|မရှိသလောက်]] ရှိသည် (သို့ အခက်အခဲတစ်စုံတရာရှိသော်လည်း နားလည်နိုင်သည်)။",
+ "babel-1-n": "ဤအသုံးပြုသူသည် [[$2|မြန်မာဘာသာ]] အတွက် [[$1|အ​ခြေခံအဆင့်]]ဗဟုသုတ ရှိသည်။",
+ "babel-2-n": "ဤအသုံးပြုသူသည် [[$2|မြန်မာဘာသာ]] အတွက် [[$1|အလယ်အလတ်]]ဗဟုသုတ ရှိသည်။",
+ "babel-3-n": "ဤအသုံးပြုသူသည် [[$2|မြန်မာဘာသာ]] အတွက် ဗဟုသုတအဆင့် [[$1|အဆင့်မြင့်မြင့်]] ရှိသည်။",
+ "babel-4-n": "ဤအသုံးပြုသူသည် [[$2|မြန်မာဘာသာ]] အတွက် [[$1|ဒေသခံနီးပါး]]ဗဟုသုတ ရှိသည်။",
+ "babel-5-n": "ဤအသုံးပြုသူသည် [[$2|မြန်မာဘာသာ]] အတွက် [[$1|ပရိုအဆင့်]] ဗဟုသုတ ရှိသည်။",
+ "babel-N-n": "ဤအသုံးပြုသူသည် [[$2|မြန်မာဘာသာ]] အပေါ်တွင် [[$1|ဒေသခံအဆင့်]] ကျွမ်းကျင်စွာ နားလည်သည်။"
+}
diff --git a/MLEB/Babel/i18n/myv.json b/MLEB/Babel/i18n/myv.json
new file mode 100644
index 00000000..5e7bfe0f
--- /dev/null
+++ b/MLEB/Babel/i18n/myv.json
@@ -0,0 +1,24 @@
+{
+ "@metadata": {
+ "authors": [
+ "Botuzhaleny-sodamo"
+ ]
+ },
+ "babel": "Вавилононь тевс нолдыця ломанень келень содамочыде информация",
+ "babel-desc": "Поладсы <code>#babel</code> парсерэнь функциянть, конань вельде совавтови теицянь вавилон уминес келень содамочыде информация ды лия лопа парцунт (шаблонт).",
+ "babel-url": "Project:Вавилон",
+ "babel-0": "Те ломансь [[$1|а чарькоди ]] [[$2|$3]]кс (эли пек стакасто чарькоди сонзэ).",
+ "babel-1": "Те ломансь [[$1|аламошка чарькоди]] [[$2|$3]]кс.",
+ "babel-2": "Те ломансь [[$1|чарькоди ]] [[$2|$3]]-кс.",
+ "babel-3": "Те ломансь [[$1|парсте содасы]] [[$2|$3]]-нь келенть.",
+ "babel-4": "Те ломансь чарькоди [[$2|$3]]-кс [[$1|малав кода тиринь келень кортыця]].",
+ "babel-5": "Те ломансь чарькоди [[$2|$3]]-нть [[$1|кода эйне паро кортыця-професионал]].",
+ "babel-N": "Те ломаненть [[$1|тиринь келезэ ]] [[$2|$3]].",
+ "babel-0-n": "Те ломансь [[$1|а чарькоди ]] [[$2|эрзякс]] (эли пек стакасто чарькоди сонзэ).",
+ "babel-1-n": "Те ломансь [[$1|аламошка чарькоди ]] [[$2|эрзякс]].",
+ "babel-2-n": "Те ломансь [[$1|чарькоди ]] [[$2|Эрзякс]].",
+ "babel-3-n": "Те ломансь [[$1|парсте содасы]] [[$2|эрзя]]-нь келенть.",
+ "babel-4-n": "Те ломансь чарькоди [[$2|эрзя]]-кс [[$1|малав кода тиринь келень кортыця]].",
+ "babel-5-n": "Те ломансь чарькоди [[$2|эрзя]]-кс [[$1|кода эйне паро кортыця-професионал]].",
+ "babel-N-n": "Те ломаненть [[$1|тиринь келезэ ]] [[$2|эрзя]]."
+}
diff --git a/MLEB/Babel/i18n/nah.json b/MLEB/Babel/i18n/nah.json
new file mode 100644
index 00000000..394e5558
--- /dev/null
+++ b/MLEB/Babel/i18n/nah.json
@@ -0,0 +1,33 @@
+{
+ "@metadata": {
+ "authors": [
+ "Fluence",
+ "Purodha",
+ "Ricardo gs",
+ "Teòtlalili"
+ ]
+ },
+ "babel": "Ìteìxmatilòka in motekìuhtiàni ìpan Babel",
+ "babel-desc": "Ìka san ìsèl monèxtìs in ìbabelpal in motekìuhtiàni wan kualli motlàlilìs tènemáchiòuh, mà motlàlili in tlaìxnênewiliskàtekitki <code>#babel</code>",
+ "babel-url": "Project:Babel",
+ "babel-footer-url": ":Category:Babel - Motekìuhtiànimë ìpal ìntlâtòl",
+ "babel-autocreate-abort": "In tekìuhkàtokâtli tlen timonekìltia awel mîkuilòs, motekitìltia ìpampa in mosèlchìhki tlaìxmatkàtlàlilòtl [[$1|Babel]]",
+ "babel-autocreate-reason": "Mosèlchîchìuhtíkä in [[$1|Babel]]tlaìxmatkàtlàlilòmë tlaìxtlapalli",
+ "babel-autocreate-text-levels": "In motekìuhtiànimë ìpan inìn tlaìxmatkàtlàlilòtl kîtowâkë mach $1 kinênewiliâkë in $2",
+ "babel-autocreate-text-main": "In motekìuhtiànimë ìpan inìn tlaìxmatkàtlàlilòtl kîtowâkë mach kìxmatîkë in $1 tlâtòlli",
+ "babel-0": "Inìn motekìuhtiàni [[$1|âmò kinênewilia]] in [[$2|$3]] (nòso molwi kitekiyòmati).",
+ "babel-1": "Inìn motekìuhtiàni [[$1|semi chîtòn]] kìxmati in [[$2|$3]].",
+ "babel-2": "Inìn motekìuhtiàni [[$1|kimàmati]] tlâtòs ìka in [[$2|$3]].",
+ "babel-3": "Inìn motekìuhtiàni [[$1|kualli]] tlâtowa ìka in [[$2|$3]].",
+ "babel-4": "Inìn motekìuhtiàni tlâtowa in [[$2|$3]] kâxa kèn sè [[$1|chànë]].",
+ "babel-5": "Inìn motekìuhtiàni [[$1|nàwaìxmatki]], ìka motekìuhtia in [[$2|nàwatlâtòlli]].",
+ "babel-N": "In [[$2|$3]], [[$1|ìtlàkatkàtlâtòl]] inìn motekìuhtiàni, kiyèknênewilia.",
+ "babel-0-n": "Inìn motekìuhtiàni [[$1|âmò kinênewilia]] in [[$2|nàwatlâtòlli]] (nòso molwi kitekiyòmati).",
+ "babel-1-n": "Inìn motekìuhtiàni [[$1|semi chîtòn]] kìxmati in [[$2|nàwatlâtòlli]].",
+ "babel-2-n": "Inìn motekìuhtiàni [[$1|kimàmati]] tlâtòs ìka in [[$2|nàwatlâtòlli]].",
+ "babel-3-n": "Inìn motekìuhtiàni [[$1|kualli]] tlâtowa ìka in [[$2|nàwatlâtòlli]].",
+ "babel-4-n": "Inìn motekìuhtiàni tlâtowa in [[$2|nàwatl]] kâxa kèn sè [[$1|chànë]].",
+ "babel-5-n": "Inìn motekìuhtiàni [[$1|nàwaìxmatki]], ìka motekìuhtia in [[$2|nàwatlâtòlli]].",
+ "babel-N-n": "In [[$2|nàwatlâtòlli]], [[$1|ìtlàkatkàtlâtòl]] inìn motekìuhtiàni, kiyèknênewilia.",
+ "babel-footer": "Tlatequitiltilīltin īpal īntlahtōl"
+}
diff --git a/MLEB/Babel/i18n/nan.json b/MLEB/Babel/i18n/nan.json
new file mode 100644
index 00000000..e7d3eddf
--- /dev/null
+++ b/MLEB/Babel/i18n/nan.json
@@ -0,0 +1,21 @@
+{
+ "@metadata": {
+ "authors": [
+ "Ianbu",
+ "Kaihsu",
+ "唐吉訶德的侍從"
+ ]
+ },
+ "babel": "Babel iōng-chiá ê chu-liāu",
+ "babel-desc": "Ka <code>#babel</code> hun-se̍k kong-lêng, hō͘ i oē chū-tōng sán-seng iōng-chiá ê kheng kap kā-kī ê pang-bô͘.",
+ "babel-url": "Project:Babel",
+ "babel-footer-url": ":Category:Babel – iōng-chiá ê gú-giân",
+ "babel-autocreate-text-levels": "Chia̍h-ê iōng-chiá thang kóng gú-giân $2, thêng-tō͘ $1 kip.",
+ "babel-0-n": "Chit-ê iōng-chiá [[$1|m̄-bat]] [[$2|Bân-lâm-gú]] (ia̍h-sī liáu-kái ū khùn-lân).",
+ "babel-1-n": "Chit-ê iōng-chiá tha̍k-siá [[$2|Bân-lâm-gú]] ê lêng-le̍k sī [[$1|chho·-kip]].",
+ "babel-2-n": "Chit-ê iōng-chiá tha̍k-siá [[$2|Bân-lâm-gú]] ê lêng-le̍k sī [[$1|tiong-kip]].",
+ "babel-3-n": "Chit-ê iōng-chiá tha̍k-siá [[$2|Bân-lâm-gú]] ê lêng-le̍k sī [[$1|ko-kip]].",
+ "babel-4-n": "Chit-ê iōng-chiá tha̍k-siá [[$2|Bân-lâm-gú]] ē lêng-le̍k sī [[$1|chiap-kīn bó-gú]].",
+ "babel-N-n": "Chit-ê iōng-chiá [[$1|tùi sè-hàn]] tō kóng [[$2|Bân-lâm-gú]].",
+ "babel-footer": "Chiàu iōng-chiá ê gú-gián khòaⁿ"
+}
diff --git a/MLEB/Babel/i18n/nap.json b/MLEB/Babel/i18n/nap.json
new file mode 100644
index 00000000..36ebf871
--- /dev/null
+++ b/MLEB/Babel/i18n/nap.json
@@ -0,0 +1,30 @@
+{
+ "@metadata": {
+ "authors": [
+ "C.R."
+ ]
+ },
+ "babel": "Nfurmaziune babel utente",
+ "babel-desc": "Jògne 'a funzione d'analise <code>#babel</code> pe' ve permettere 'a generazione automatezzata 'e 'na culonna babel cu 'a possibbeletà 'e 'ncludere template personalizzate",
+ "babel-url": "Project:Babel",
+ "babel-footer-url": ":Category:Babel - Utente pe' llengua",
+ "babel-autocreate-abort": "'O nomme utente c'avite specificato è ausato p' 'a categurìa d'auto crijazione 'e [[$1|Babel]] e nun se pùo riggistra.",
+ "babel-autocreate-reason": "Automatecamente crianno 'a paggena 'e categurìa [[$1|Babel]].",
+ "babel-autocreate-text-levels": "L'utente ca stann'a dint'a sta categurìa indicano c'avessero nu buono livello $1 p' 'a lengua $2.",
+ "babel-autocreate-text-main": "L'utente ca stann'a dint'a sta categurìa indicano c'avessero nu buono livello d' 'a lengua $1.",
+ "babel-0": "Chist'utente [[$1|nun]] ave canuscenza 'e [[$2|$3]] (o 'a capisce malamente).",
+ "babel-1": "St'utente ave nu livello [[$1|base]] 'e [[$2|$3]].",
+ "babel-2": "St'utente ave nu livello [[$1|mezo]] 'e [[$2|$3]].",
+ "babel-3": "St'utente ave nu livello [[$1|aveto]] 'e [[$2|$3]].",
+ "babel-4": "St'utente ave nu livello comme fosse quase [[$1|nativo]] 'e [[$2|$3]].",
+ "babel-5": "St'utente ave na canuscenza [[$1|professionale]] 'e [[$2|$3]].",
+ "babel-N": "St'utente è de [[$1|madrelengua]] [[$2|$3]].",
+ "babel-0-n": "St'utente nun ave [[$1|nisciuna]] canoscenza 'e lengua [[$2|napulitana]] (o pure 'a capisce ma facesse troppa fatica).",
+ "babel-1-n": "St'utente ave nu livello [[$1|base]] 'e llengua [[$2|napulitana]].",
+ "babel-2-n": "St'utente ave nu livello [[$1|mezo]] 'e llengua [[$2|napulitana]].",
+ "babel-3-n": "St'utente ave nu livello [[$1|aveto]] 'e llengua [[$2|napulitana]].",
+ "babel-4-n": "St'utente ave nu livello comme fosse quase [[$1|nativo]] 'e [[$2|napulitano]].",
+ "babel-5-n": "St'utente ave na canuscenza [[$1|professionale]] 'e [[$2|napulitano]].",
+ "babel-N-n": "St'utente è de [[$1|madrelèngua]] [[$2|napulitano]].",
+ "babel-footer": "Utente pe' llengua"
+}
diff --git a/MLEB/Babel/i18n/nb.json b/MLEB/Babel/i18n/nb.json
new file mode 100644
index 00000000..3464deae
--- /dev/null
+++ b/MLEB/Babel/i18n/nb.json
@@ -0,0 +1,33 @@
+{
+ "@metadata": {
+ "authors": [
+ "Event",
+ "Laaknor",
+ "Nghtwlkr"
+ ]
+ },
+ "babel": "Babelinformasjon",
+ "babel-desc": "Legger til parserfunksjonen <code>#babel</code> for å automatisk generere en babelboks med mulighet for å inkludere egendefinerte maler",
+ "babel-url": "Project:Babel",
+ "babel-footer-url": ":Category:Babel - Brukere etter språk",
+ "babel-autocreate-abort": "Brukernavnet du valgte er i bruk for automatisk oppretting av [[$1|Babel]]-kategorier og kan derfor ikke registreres.",
+ "babel-autocreate-reason": "Oppretter automatisk en [[$1|Babel]]-kategoriside.",
+ "babel-autocreate-text-levels": "Brukeren i denne kategorien har et språkkunnskapsnivå på $1 for $2.",
+ "babel-autocreate-text-main": "Brukeren i denne kategorien kjenner til $1.",
+ "babel-0": "Denne brukeren har [[$1|lite eller ingen]] kjennskap til [[$2|$3]] (eller har svært vanskelig for å forstå det).",
+ "babel-1": "Denne brukeren kan [[$1|litt]] [[$2|$3]].",
+ "babel-2": "Denne brukeren har [[$1|god]] kjennskap til [[$2|$3]].",
+ "babel-3": "Denne brukeren behersker [[$2|$3]] [[$1|flytende]].",
+ "babel-4": "Denne brukeren snakker [[$2|$3]] på [[$1|morsmålsnivå]].",
+ "babel-5": "Denne brukeren bruker [[$2|$3]] [[$1|profesjonelt]].",
+ "babel-N": "Denne brukeren har [[$2|$3]] som [[$1|morsmål]].",
+ "babel-0-n": "Denne brukeren [[$1|kan ikke]] skrive eller lese [[$2|norsk]] (eller forstår det kun med store vanskeligheter).",
+ "babel-1-n": "Denne brukeren kan [[$1|litt]] [[$2|norsk (bokmål)]].",
+ "babel-2-n": "Denne brukeren har [[$1|god kjennskap]] til [[$2|norsk (bokmål)]].",
+ "babel-3-n": "Denne brukeren behersker [[$2|norsk (bokmål)]] [[$1|flytende]].",
+ "babel-4-n": "Denne brukeren snakker og skriver [[$2|norsk (bokmål)]] på [[$1|morsmålsnivå]].",
+ "babel-5-n": "Denne brukeren bruker [[$2|norsk (bokmål)]] [[$1|profesjonelt]].",
+ "babel-N-n": "Denne brukeren har [[$2|norsk]] som [[$1|morsmål]] og behersker bokmål.",
+ "babel-template": "Template:Bruker $1",
+ "babel-footer": "Brukere etter språk"
+}
diff --git a/MLEB/Babel/i18n/nds-nl.json b/MLEB/Babel/i18n/nds-nl.json
new file mode 100644
index 00000000..6fa7b30a
--- /dev/null
+++ b/MLEB/Babel/i18n/nds-nl.json
@@ -0,0 +1,30 @@
+{
+ "@metadata": {
+ "authors": [
+ "Servien"
+ ]
+ },
+ "babel": "Babel-gebrukersinformasie",
+ "babel-desc": "Voegt de <code>#babel</code>-ontlejerfunksie toe um de automatiese anmaak van de babelgebrukerskolom meugelik te maken mit de meugelikheid um spesiale mallen in te voegen.",
+ "babel-url": "Project:Babel",
+ "babel-footer-url": ":Category:Babel - Gebrukers naor taal",
+ "babel-autocreate-abort": "De gebrukersnaam die'j op-egeven hebben, wörden gebruukt veur t automaties anmaken van [[$1|Babel]]-kategorieën en kan niet eregistreerd wörden.",
+ "babel-autocreate-reason": "Automaties an-emaakten [[$1|Babel]]-kategorie.",
+ "babel-autocreate-text-levels": "De gebrukers in disse kategorie geven an dat hulen nivo van t $2 $1 is.",
+ "babel-autocreate-text-main": "De gebrukers in disse kategorie geven an dat ze kennis hebben van t $1.",
+ "babel-0": "Disse gebruker hef [[$1|gien]] kennis van t [[$2|$3]] (of berip t mit grote meuite).",
+ "babel-1": "Disse gebruker hef op [[$1|baosisnivo]] kennis van t [[$2|$3]].",
+ "babel-2": "Disse gebruker hef n [[$1|gemiddelde]] kennis van t [[$2|$3]].",
+ "babel-3": "Disse gebruker hef n [[$1|goeie kennis]] van t [[$2|$3]].",
+ "babel-4": "Disse gebruker praot [[$2|$3]] [[$1|as of t zien moerstaal is]].",
+ "babel-5": "Disse gebruker hef n [[$1|professionele]] kennis van t [[$2|$3]].",
+ "babel-N": "Disse gebruker hef t [[$2|$3]] as zien [[$1|moerstaal]].",
+ "babel-0-n": "Disse gebruker hef [[$1|gien]] kennis van t [[$2|Nedersaksies]] (of begrip t mit grote meuite).",
+ "babel-1-n": "Disse gebruker hef op [[$1|baosisnivo]] kennis van t [[$2|Nedersaksies]].",
+ "babel-2-n": "Disse gebruker hef n [[$1|gemiddelde]] kennis van t [[$2|Nedersaksies]].",
+ "babel-3-n": "Disse gebruker hef n [[$1|goeie kennis]] van t [[$2|Nedersaksies]].",
+ "babel-4-n": "Disse gebruker praot [[$2|Nedersaksies]] [[$1|as of t zien moerstaal is]].",
+ "babel-5-n": "Disse gebruker hef n [[$1|professionele]] kennis van t [[$2|Nedersaksies]].",
+ "babel-N-n": "Disse gebruker hef t [[$2|Nedersaksies]] as zien [[$1|moerstaal]].",
+ "babel-footer": "Gebrukers per taal"
+}
diff --git a/MLEB/Babel/i18n/nds.json b/MLEB/Babel/i18n/nds.json
new file mode 100644
index 00000000..c9247e5a
--- /dev/null
+++ b/MLEB/Babel/i18n/nds.json
@@ -0,0 +1,31 @@
+{
+ "@metadata": {
+ "authors": [
+ "Joachim Mos",
+ "Slomox"
+ ]
+ },
+ "babel": "Babel-Bruker-Infos",
+ "babel-desc": "Föögt de <code>#babel</code>-Parserfunkschoon för dat automaatsche Opstellen vun Babel-Brukerboxen to. Verlöövt ok dat Inbinnen vun egene Vörlagen.",
+ "babel-url": "Project:Babel",
+ "babel-footer-url": ":Kategorie:Babel - Bruker noh Spraak",
+ "babel-autocreate-abort": "De utwählt Brukernaam warrt för dat automaatsch Opstellen vun [[$1|Babel]]-Kategorien bruukt un kann nich registreert warrn.",
+ "babel-autocreate-reason": "Automaatsch opstellt [[$1|Babel]]-Kategorie.",
+ "babel-autocreate-text-levels": "Brukers in disse Kategorie köönt de Spraak $2 op Niveau $1 snacken.",
+ "babel-autocreate-text-main": "Brukers in disse Kategorie kennt vun de Spraak $1 wat af.",
+ "babel-0": "Disse Bruker versteiht [[$1|nix]] vun [[$2|$3]] (oder versteiht dat blot mit ganz grote Swierigkeiten).",
+ "babel-1": "Disse Bruker versteiht en [[$1|beten]] wat vun [[$2|$3]].",
+ "babel-2": "Disse Bruker versteiht [[$1|good]] wat vun [[$2|$3]].",
+ "babel-3": "Disse Bruker versteiht [[$1|temlich]] wat vun [[$2|$3]].",
+ "babel-4": "Disse Bruker versteiht wat vun [[$2|$3]] as wenn dat sien [[$1|Moderspraak]] weer.",
+ "babel-5": "Disse Bruker versteiht temlich wat vun [[$2|$3]], dat maakt he vun [[$1|Beroop]] ut.",
+ "babel-N": "Disse Bruker hett [[$2|$3]] as [[$1|Moderspraak]].",
+ "babel-0-n": "Disse Bruker versteiht [[$1|nix]] vun [[$2|Plattdüütsch]] (oder versteiht dat blot mit ganz grote Swierigkeiten).",
+ "babel-1-n": "Disse Bruker versteiht en [[$1|beten]] wat vun [[$2|Plattdüütsch]].",
+ "babel-2-n": "Disse Bruker versteiht [[$1|good]] wat vun [[$2|Plattdüütsch]].",
+ "babel-3-n": "Disse Bruker versteiht [[$1|temlich]] wat vun [[$2|Plattdüütsch]].",
+ "babel-4-n": "Disse Bruker versteiht wat vun [[$2|Plattdüütsch]] as wenn dat sien [[$1|Moderspraak]] weer.",
+ "babel-5-n": "Disse Bruker versteiht temlich wat vun [[$2|Plattdüütsch]], dat maakt he vun [[$1|Beroop]] ut.",
+ "babel-N-n": "Disse Bruker hett [[$2|Plattdüütsch]] as [[$1|Moderspraak]].",
+ "babel-footer": "Bruker noh Spraak"
+}
diff --git a/MLEB/Babel/i18n/ne.json b/MLEB/Babel/i18n/ne.json
new file mode 100644
index 00000000..fd26d382
--- /dev/null
+++ b/MLEB/Babel/i18n/ne.json
@@ -0,0 +1,32 @@
+{
+ "@metadata": {
+ "authors": [
+ "Bhawani Gautam",
+ "Bhawani Gautam Rhk",
+ "सरोज कुमार ढकाल"
+ ]
+ },
+ "babel": "Babel प्रयोगकर्ता जानकारी",
+ "babel-desc": "<code>#babel</code> पार्सर क्रिया जोड़छ जसले स्वतः प्रयोगकर्ता बाकस बेबल कलमको निर्माणमा अनुकूलित ढाँचालाई योग्यतापूर्वक संलग्न गर्ने अनुमति दिन्छ।",
+ "babel-url": "Project:ब्याबल",
+ "babel-footer-url": ":श्रेणी:बेबल -प्रयोगकर्ताहरु भाषाको आधारमा",
+ "babel-autocreate-abort": "तपाईंले दिएको प्रयोगकर्ता नाम [[$1|बेबल]] श्रेणी स्वतः निर्माणको निम्ति प्रयोग भएकोछ र यसलाई पञ्जीकरण गर्न सकिंदैन।",
+ "babel-autocreate-reason": "[[$1|ब्याबल]] श्रेणी पृष्ठ स्वत:सृजना गरिँदै।",
+ "babel-autocreate-text-levels": "यस श्रेणीका प्रयोगकर्ताहरुबाट संकेत पाइन्छ कि $2 भाषामा तिनीहरुको कौशल स्तर $1 छ।",
+ "babel-autocreate-text-main": "यस श्रेणीका प्रयोगकर्ताहरुबाट संकेत पाइन्छ कि तिनीहरुमा $1भाषाको ज्ञान छ।",
+ "babel-0": "यो प्रयोगकर्तासँग [[$2|$3]] को कुनै ज्ञान [[$1|छैन]] ( अथवा धेरै कठिनताका साथ बुझ्ने गर्छ )।",
+ "babel-1": "यो प्रयोगकर्तासँग [[$2|$3]]को [[$1|साधारण]] ज्ञान छ ।",
+ "babel-2": "यो प्रयोगकर्तासँग [[$2|$3]] को [[$1|मध्यम स्तर]]को ज्ञान छ।",
+ "babel-3": "यो प्रयोगकर्तासँग [[$2|$3]]को [[$1|उन्नत]] ज्ञान छ।",
+ "babel-4": "यो प्रयोगकर्तासँग [[$2|$3]]को [[$1|करिब मौलिक प्रयोगकर्ता जस्तै]] ज्ञान छ।",
+ "babel-5": "यो प्रयोगकर्तासँग [[$2|$3]]को [[$1|विशेषज्ञताको]] ज्ञान छ ।",
+ "babel-N": "यो प्रयोगकर्तासँग [[$2|$3]]को [[$1|पैदायसी]] ज्ञान छ।",
+ "babel-0-n": "यी प्रयोगकर्तासित [[$2|नेपाली]] भाषाको ज्ञान [[$1|छैन]] (अथवा कठिनता पूर्वक बुझ्दछन्).",
+ "babel-1-n": "यी प्रयोगकर्तासित [[$2|नेपाली]] भाषाको [[$1|साधारण]] ज्ञान छ।",
+ "babel-2-n": "यी प्रयोगकर्तासित [[$2|नेपाली]] भाषाको [[$1|मध्यमस्तर]]को ज्ञान छ।",
+ "babel-3-n": "यी प्रयोगकर्तासित [[$2|नेपाली]] भाषाको [[$1|उन्नत स्तर]]को ज्ञान छ।",
+ "babel-4-n": "यी प्रयोगकर्तासित [[$2|नेपाली]] भाषाको [[$1|पैदायसी निकट]]को ज्ञान छ।",
+ "babel-5-n": "यो प्रयोगकर्तासित [[$2|नेपाली]] भाषामा [[$1|विशेषज्ञता]]को ज्ञान छ ।",
+ "babel-N-n": "यो प्रयोगकर्तासँग [[$2|नेपाली]] [[$1|पैदायसी]] ज्ञान छ ।",
+ "babel-footer": "भाषा अनुसार प्रयोगकर्ताहरु"
+}
diff --git a/MLEB/Babel/i18n/new.json b/MLEB/Babel/i18n/new.json
new file mode 100644
index 00000000..aadc2dbd
--- /dev/null
+++ b/MLEB/Babel/i18n/new.json
@@ -0,0 +1,29 @@
+{
+ "@metadata": {
+ "authors": [
+ "Eukesh"
+ ]
+ },
+ "babel": "ब्याबेल छ्यलामि सूचं",
+ "babel-url": "ज्याझ्वःब्याबेल",
+ "babel-footer-url": ":Category:ब्याबेल - भाषा कथंया छ्यलामि",
+ "babel-autocreate-abort": "छिं बियादिगु छ्यलामि नां [[$1|ब्याबेल]] पुचः अटो-क्रियशनय् छ्यलिगु जुलिं दर्ता यायेमछिं।",
+ "babel-autocreate-reason": "[[$1|ब्याबेल]] पुचः पौ स्वतः दयेकाच्वंगु।",
+ "babel-autocreate-text-levels": "थ्व पुचःया छ्यलामितयेसं $2 भासय् इमिगु दक्षता $1 दु धका धयातःगु दु।",
+ "babel-autocreate-text-main": "थ्व पुचःया छ्यलामितयेसं इमिके $1भाय्‌या ज्ञान दु धका धयातःगु दु।",
+ "babel-0": "थ्व छ्यलामिनाप [[$2|$3]]या ज्ञान [[$1|मदु]] (वा सिक्क म्हो जक्क थु)।",
+ "babel-1": "थ्व छ्यलामिनाप [[$2|$3]]या [[$1|भतिभति]] ज्ञान दु।",
+ "babel-2": "थ्व छ्यलामिनाप [[$2|$3]]या [[$1|मध्यम स्तरया]] ज्ञान दु।",
+ "babel-3": "थ्व छ्यलामिनाप [[$2|$3]]या [[$1|बांलागु]] ज्ञान दु।",
+ "babel-4": "थ्व छ्यलामिनाप [[$2|$3]]या [[$1|मातृभाषी तयेगु थें]] ज्ञान दु।",
+ "babel-5": "थ्व छ्यलामिनाप [[$2|$3]]या [[$1|व्यवसायिक]] ज्ञान दु।",
+ "babel-N": "थ्व छ्यलामिं [[$2|$3]]यात [[$1|मांभाय्]]या रुपय् थु।",
+ "babel-0-n": "थ्व छ्यलामिनाप [[$2|नेपालभाषा]]या ज्ञान [[$1|मदु]] (वा सिक्क म्हो जक्क थु)।",
+ "babel-1-n": "थ्व छ्यलामिनाप [[$2|नेपालभाषा]]या [[$1|बांलागु]] ज्ञान दु।",
+ "babel-2-n": "थ्व छ्यलामिनाप [[$2|नेपालभाषा]]या [[$1|मध्यम स्तरया]] ज्ञान दु।",
+ "babel-3-n": "थ्व छ्यलामिनाप [[$2|नेपालभाषा]]या [[$1|बांलागु]] ज्ञान दु।",
+ "babel-4-n": "थ्व छ्यलामिनाप [[$2|नेपालभाषा]]या [[$1|मातृभाषी तयेगु थें]] ज्ञान दु।",
+ "babel-5-n": "थ्व छ्यलामिनाप [[$2|नेपालभाषा]]या [[$1|व्यवसायिक]] ज्ञान दु।",
+ "babel-N-n": "थ्व छ्यलामिं [[$2|नेपालभाषा]]यात [[$1|मांभाय्]]या रुपय् थु।",
+ "babel-footer": "भाय् कथंया छ्यलामि"
+}
diff --git a/MLEB/Babel/i18n/nl-informal.json b/MLEB/Babel/i18n/nl-informal.json
new file mode 100644
index 00000000..772dd8c8
--- /dev/null
+++ b/MLEB/Babel/i18n/nl-informal.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Siebrand"
+ ]
+ },
+ "babel-autocreate-abort": "De gebruikersnaam die je hebt opgegeven wordt gebruikt voor het automatisch aanmaken van [[$1|Babel]]-categorieën en kan niet geregistreerd worden."
+}
diff --git a/MLEB/Babel/i18n/nl.json b/MLEB/Babel/i18n/nl.json
new file mode 100644
index 00000000..83df32d7
--- /dev/null
+++ b/MLEB/Babel/i18n/nl.json
@@ -0,0 +1,36 @@
+{
+ "@metadata": {
+ "authors": [
+ "Akoopal",
+ "GerardM",
+ "Hamaryns",
+ "MarkAHershberger",
+ "McDutchie",
+ "SPQRobin",
+ "Siebrand"
+ ]
+ },
+ "babel": "Taalvaardigheid",
+ "babel-desc": "Voegt de parserfunctie <code>#babel</code> toe om automatische generatie van een babelgebruikersbox mogelijk te maken met de mogelijkheid om aangepaste sjablonen in te voegen",
+ "babel-url": "Project:Babel",
+ "babel-footer-url": ":Category:Babel - Gebruikers naar taal",
+ "babel-autocreate-abort": "De gebruikersnaam die u hebt opgegeven wordt gebruikt voor het automatisch aanmaken van [[$1|Babel]]-categorieën en kan niet geregistreerd worden.",
+ "babel-autocreate-reason": "Automatisch aangemaakte [[$1|Babel]]-categorie.",
+ "babel-autocreate-text-levels": "Gebruikers in deze categorie geven aan dat hun niveau voor de taal $2 $1 is.",
+ "babel-autocreate-text-main": "Gebruikers in deze categorie geven aan dat zij kennis van de taal $1 hebben.",
+ "babel-0": "Deze gebruiker heeft [[$1|geen]] kennis van het [[$2|$3]] (of heeft moeite om het te begrijpen).",
+ "babel-1": "Deze gebruiker bezit kennis van het [[$2|$3]] op [[$1|elementair niveau]].",
+ "babel-2": "Deze gebruiker beheerst het [[$2|$3]] op [[$1|basisniveau]].",
+ "babel-3": "Deze gebruiker beheerst het [[$2|$3]] [[$1|goed]].",
+ "babel-4": "Deze gebruiker beheerst het [[$2|$3]] op [[$1|bijna-moedertaalniveau]].",
+ "babel-5": "Deze gebruiker heeft een [[$1|professionele]] kennis van het [[$2|$3]].",
+ "babel-N": "Deze gebruiker beheerst het [[$2|$3]] op [[$1|moedertaalniveau]].",
+ "babel-0-n": "Deze gebruiker heeft [[$1|geen]] kennis van het [[$2|Nederlands]] (of begrijpt het met grote moeite).",
+ "babel-1-n": "Deze gebruiker heeft [[$1|elementaire]] kennis van het [[$2|Nederlands]].",
+ "babel-2-n": "Deze gebruiker heeft [[$1|basiskennis]] van het [[$2|Nederlands]].",
+ "babel-3-n": "Deze gebruiker heeft [[$1|gevorderde]] kennis van het [[$2|Nederlands]].",
+ "babel-4-n": "Deze gebruiker beheerst het [[$2|Nederlands]] als ware het zijn [[$1|moedertaal]].",
+ "babel-5-n": "Deze gebruiker heeft [[$1|professionele]] kennis van het [[$2|Nederlands]].",
+ "babel-N-n": "Deze gebruiker heeft het [[$2|Nederlands]] als [[$1|moedertaal]].",
+ "babel-footer": "Gebruikers per taal"
+}
diff --git a/MLEB/Babel/i18n/nn.json b/MLEB/Babel/i18n/nn.json
new file mode 100644
index 00000000..28dfb5b2
--- /dev/null
+++ b/MLEB/Babel/i18n/nn.json
@@ -0,0 +1,35 @@
+{
+ "@metadata": {
+ "authors": [
+ "Eirik",
+ "Finnrind",
+ "Gunnernett",
+ "Harald Khan",
+ "Njardarlogar",
+ "Ranveig"
+ ]
+ },
+ "babel": "Babelinformasjon",
+ "babel-desc": "Legg til parserfunksjonen <code>#babel</code> for å automatisk lage ein babelboks der ein kan bruka sjølvlaga malar",
+ "babel-url": "Project:Babel",
+ "babel-footer-url": ":Kategori:Babel/Brukarar etter språk",
+ "babel-autocreate-abort": "Brukarnamnet du valte er i bruk for automatisk oppretting av [[$1|Babel]]-kategoriar og kan difor ikkje verta registrert.",
+ "babel-autocreate-reason": "Oprettar automatisk ei [[$1|Babel]]-kategori-sida.",
+ "babel-autocreate-text-levels": "Brukarar i denne kategorien har eit språkdugleiksnivå på $1 for $2.",
+ "babel-autocreate-text-main": "Brukarar i denne kategorien kjenner til $1.",
+ "babel-0": "Denne brukaren har [[$1|små eller ingen]] kunnskapar i [[$2|$3]].",
+ "babel-1": "Denne brukaren har [[$1|litt]] kjennskap til [[$2|$3]].",
+ "babel-2": "Denne brukaren kan [[$1|ganske godt]] [[$2|$3]].",
+ "babel-3": "Denne brukaren kan [[$1|svært godt]] [[$2|$3]].",
+ "babel-4": "Denne brukaren kan [[$2|$3]] nesten på [[$1|morsmålnivå]]",
+ "babel-5": "Denne brukaren nyttar [[$2|$3]] [[$1|profesjonelt]].",
+ "babel-N": "Denne brukaren har [[$2|$3]] som [[$1|morsmål]].",
+ "babel-0-n": "Denne brukaren har [[$1|ingen]] kjennskap til [[$2|nynorsk]] (eller forstår det berre så vidt).",
+ "babel-1-n": "Denne brukaren kan [[$1|litt]] [[$2|nynorsk]].",
+ "babel-2-n": "Denne brukaren har [[$1|god kjennskap]] til [[$2|nynorsk]].",
+ "babel-3-n": "Denne brukaren meistrar [[$2|nynorsk]] [[$1|flytande]].",
+ "babel-4-n": "Denne brukaren snakkar og skriv [[$2|nynorsk]] om lag på [[$1|morsmålsnivå]].",
+ "babel-5-n": "Denne brukaren har [[$1|profesjonell]] kjennskap til [[$2|nynorsk]].",
+ "babel-N-n": "Denne brukaren har [[$2|norsk]] som [[$1|morsmål]] og meistrar nynorsk.",
+ "babel-footer": "Brukarar etter språk"
+}
diff --git a/MLEB/Babel/i18n/nov.json b/MLEB/Babel/i18n/nov.json
new file mode 100644
index 00000000..ff46ddf5
--- /dev/null
+++ b/MLEB/Babel/i18n/nov.json
@@ -0,0 +1,12 @@
+{
+ "@metadata": {
+ "authors": [
+ "Malafaya"
+ ]
+ },
+ "babel-0": "Dis usere [[$1|non komprenda]] [[$2|$3]] (o komprenda nur tre pokim).",
+ "babel-1": "Dis usere pove komunika per [[$1|basal]] nivele de [[$2|$3]].",
+ "babel-2": "Dis usere pove komunika per [[$1|medi]] nivele de [[$2|$3]].",
+ "babel-3": "Dis usere pove komunika per [[$1|alti]] nivele de [[$2|$3]].",
+ "babel-4": "Dis usere skripte [[$2|$3]] [[$1|preske kom sen patrial lingue]]."
+}
diff --git a/MLEB/Babel/i18n/nrm.json b/MLEB/Babel/i18n/nrm.json
new file mode 100644
index 00000000..2b44a72f
--- /dev/null
+++ b/MLEB/Babel/i18n/nrm.json
@@ -0,0 +1,15 @@
+{
+ "@metadata": {
+ "authors": [
+ "WikiEoFrEn"
+ ]
+ },
+ "babel": "Retrache des laungages des féchouneus",
+ "babel-url": "Project:Babel",
+ "babel-0": "Ch't'î-chîn ne pâle [[$1|paé]] en [[$2|$3]].",
+ "babel-1": "Chu faichonneu prêche [[$1|eun miot]] en [[$2|$3]].",
+ "babel-N": "La laungue [[$1|native]] du faichonneu est l'[[$2|nourmand]] (ou eun de ses loceis/dgialectes).",
+ "babel-0-n": "Ch't'î-chîn ne pâle [[$1|paé]] en [[$2|$3]].",
+ "babel-N-n": "La laungue [[$1|native]] du faichonneu est l'[[$2|nourmand]] (ou eun de ses loceis/dgialectes).",
+ "babel-footer": "Féchouneux par laungue"
+}
diff --git a/MLEB/Babel/i18n/nso.json b/MLEB/Babel/i18n/nso.json
new file mode 100644
index 00000000..b2de54cc
--- /dev/null
+++ b/MLEB/Babel/i18n/nso.json
@@ -0,0 +1,30 @@
+{
+ "@metadata": {
+ "authors": [
+ "Mohau"
+ ]
+ },
+ "babel": "Sedi ya Moošomiši go Babel",
+ "babel-desc": "Thwanya <code>#babel</code> \"parser function\" go dumelela \"babel userbox\" yeo e dumelalago go hloma \"custom templates\"",
+ "babel-url": "Project:Babel",
+ "babel-footer-url": ":Category:Babel - Bašomiši ka mmolelo",
+ "babel-autocreate-abort": "Leina-šomiši lago kgethwa ke wena le a šomišwa go sehlopha sa [[$1|Babel]] ka gona go ngwadiša ga go kgonagake.",
+ "babel-autocreate-reason": "Ka noši hloma [[$1|Babel]] sa letlakala la sehlopha.",
+ "babel-autocreate-text-levels": "Bašomiši go sehlopha se ba e hlalosa bane tsebo ya seemo sa $1 go leleme la $2.",
+ "babel-autocreate-text-main": "Bašomiši go sehlopha se ba e hlalosa bane tsebo go leleme la $1.",
+ "babel-0": "Mošomiši yo [[$1|ga ena]] tsebo ya [[$2|$3]] (goba o hlaloganya polelo ye ka bothata).",
+ "babel-1": "Mošomiši yo o nale tsebo ye [[$1|nnyennyenyane]] ya [[$2|$3]].",
+ "babel-2": "Mošomiši yo o nale tsebo ya [[$1|bogare]] go [[$2|$3]].",
+ "babel-3": "Mošomiši yo o nale tsebo ya [[$1|go kwagala]] ya [[$2|$3]].",
+ "babel-4": "Mošomiši yo o nale tsebo ya [[$1|go felela]] ya [[$2|$3]].",
+ "babel-5": "Mošomiši yo o nale tsebo ya [[$1|go makgonthe ya sekolo]] ya [[$2|$3]].",
+ "babel-N": "Mošomiši yo o nale tsebo ya [[$1|babuledi kgonthe bja polelo]] ya [[$2|$3]].",
+ "babel-0-n": "Mošomiši yo [[$1|ga ena]] tsebo ya [[$2|Sepedi]] (goba o hlaloganya Sepedi ka bothata).",
+ "babel-1-n": "Mošomiši yo o nale tsebo ye [[$1|nnyennyenyane]] ya [[$2|Sepedi]].",
+ "babel-2-n": "Mošomiši yo o nale tsebo ya [[$1|bogare]] ya [[$2|Sepedi]].",
+ "babel-3-n": "Mošomiši yo o nale tsebo ya [[$1|go kwagala]] ya [[$2|Sepedi]].",
+ "babel-4-n": "Mošomiši yo o nale tsebo ya [[$1|go felela]] ya [[$2|Sepedi]].",
+ "babel-5-n": "Mošomiši yo o nale tsebo ya [[$1|go makgonthe ya sekolo]] ya [[$2|Sepedi]].",
+ "babel-N-n": "Mošomiši yo o nale tsebo ya [[$1|babuledi kgonthe bja polelo]] ya [[$2|Sepedi]].",
+ "babel-footer": "Bašomiši goya ka maleme"
+}
diff --git a/MLEB/Babel/i18n/nv.json b/MLEB/Babel/i18n/nv.json
new file mode 100644
index 00000000..fc3d1342
--- /dev/null
+++ b/MLEB/Babel/i18n/nv.json
@@ -0,0 +1,19 @@
+{
+ "@metadata": {
+ "authors": [
+ "Ankry"
+ ]
+ },
+ "babel-0": "Díí choyoołʼįįhí [[$2|$3]] [[$1|doo]] bił bééhózin [[$1|da]].",
+ "babel-1": "Díí choyoołʼįįhí [[$2|$3]] [[$1|tʼáá áłtsʼíísígo]] bił bééhózin.",
+ "babel-2": "Díí choyoołʼįįhí nizhónígo [[$2|$3]] [[$1|akʼeʼełchí]], áko ndi doo nizhónígo Diné bizaad yáłtiʼ da.",
+ "babel-3": "Díí choyoołʼįįhí [[$2|$3]] [[$1|ayóo nizhónígo]] bił bééhózin.",
+ "babel-4": "Díí choyoołʼįįhí [[$1|tʼáá Diné nahalingo]] [[$2|$3]] yáłtiʼ.",
+ "babel-N": "Díí choyoołʼįįhí éí [[$1|tʼáá bí bizaadjiʼ]] yééʼaniiʼ: [[$2|$3]].",
+ "babel-0-n": "Díí choyoołʼįįhí [[$2|Diné bizaad]] [[$1|doo]] bił bééhózin [[$1|da]].",
+ "babel-1-n": "Díí choyoołʼįįhí [[$2|Diné bizaad]] [[$1|tʼáá áłtsʼíísígo]] bił bééhózin.",
+ "babel-2-n": "Díí choyoołʼįįhí nizhónígo [[$2|Diné bizaad]] [[$1|akʼeʼełchí]], áko ndi doo nizhónígo Diné bizaad yáłtiʼ da.",
+ "babel-3-n": "Díí choyoołʼįįhí [[$2|Diné bizaad]] [[$1|ayóo nizhónígo]] bił bééhózin.",
+ "babel-4-n": "Díí choyoołʼįįhí [[$1|tʼáá Diné nahalingo]] [[$2|Diné bizaad]] yáłtiʼ.",
+ "babel-N-n": "Díí choyoołʼįįhí éí [[$1|tʼáá bí bizaadjiʼ]] yééʼaniiʼ: [[$2|Diné bizaad]]."
+}
diff --git a/MLEB/Babel/i18n/oc.json b/MLEB/Babel/i18n/oc.json
new file mode 100644
index 00000000..0a6d3974
--- /dev/null
+++ b/MLEB/Babel/i18n/oc.json
@@ -0,0 +1,31 @@
+{
+ "@metadata": {
+ "authors": [
+ "Boulaur",
+ "Cedric31"
+ ]
+ },
+ "babel": "Entresenhas sus l’utilizaire de Babel",
+ "babel-desc": "Apond una foncion parser <code>#babel</code> que permet la creacion automatica d'una bóstia d’utilizaire Babèl amb la possibilitat d’i enclure de modèls locals.",
+ "babel-url": "Project:Babel",
+ "babel-footer-url": ":Category:Babel - Utilizaires per lenga",
+ "babel-autocreate-abort": "Lo nom d'utilizaire qu'avètz picat es utilizat per crear automaticament las categorias [[$1|Babel]] e pòt pas èsser enregistrat.",
+ "babel-autocreate-reason": "Creacion automatica de la categoria [[$1|Babel]].",
+ "babel-autocreate-text-levels": "Los utilizaires dins aquesta categoria an indicat qu'an lo nivèl $1 per la lenga $2.",
+ "babel-autocreate-text-main": "Los utilizaires dins aquesta categoria an indicat qu'an una coneissença en $1.",
+ "babel-0": "Aqueste utilizaire a [[$1|pas cap]] de coneissença en [[$2|$3]] (o comprend amb de dificultats grandas).",
+ "babel-1": "Aqueste utilizaire pòt contribuir amb un nivèl [[$1|elementari]] en [[$2|$3]].",
+ "babel-2": "Aqueste utilizaire a una coneissença [[$1|mejana]] en [[$2|$3]].",
+ "babel-3": "Aqueste utilizaire dispausa d’una coneissença [[$1|avançada]] en [[$2|$3]].",
+ "babel-4": "Aqueste utilizaire a una coneissença pròcha de la de [[$1|lenga mairala]] en [[$2|$3]].",
+ "babel-5": "Aqueste utilizaire a una coneissença [[$1|professionala]] en [[$2|$3]].",
+ "babel-N": "Aqueste utilizaire dispausa d’una compreneson coma [[$1|lenga mairala]] en [[$2|$3]].",
+ "babel-0-n": "Aqueste utilizaire a [[$1|pas cap]] de coneissença en [[$2|occitan]] (o lo compren amb de dificultats grandas).",
+ "babel-1-n": "Aqueste utilizaire dispausa de coneissenças [[$1|de basa]] en [[$2|occitan]].",
+ "babel-2-n": "Aqueste utilizaire dispausa d'un [[$1|nivèl intermediari]] de coneissença en [[$2|occitan]].",
+ "babel-3-n": "Aqueste utilizaire dispausa de coneissenças [[$1|avançadas]] en [[$2|occitan]].",
+ "babel-4-n": "Aqueste utilizaire dispausa de coneissenças pròchas de la [[$1|lenga mairala]] en [[$2|occitan]].",
+ "babel-5-n": "Aqueste utilizaire dispausa d'un nivèl de coneissenças [[$1|professional]] en [[$2|occitan]].",
+ "babel-N-n": "Aqueste utilizaire a per [[$1|lenga mairala]] l'[[$2|occitan]].",
+ "babel-footer": "Utilizaires per lengas"
+}
diff --git a/MLEB/Babel/i18n/or.json b/MLEB/Babel/i18n/or.json
new file mode 100644
index 00000000..55afc715
--- /dev/null
+++ b/MLEB/Babel/i18n/or.json
@@ -0,0 +1,33 @@
+{
+ "@metadata": {
+ "authors": [
+ "MKar",
+ "Mormegil",
+ "Odisha1",
+ "Psubhashish"
+ ]
+ },
+ "babel": "ବାବେଲ ଇଉଜର ତଥ୍ୟ",
+ "babel-desc": "ଆପେଆପେ ବାବେଲ ଇଉଜରବକ୍ସ ସ୍ତମ୍ଭ ତିଆରିବା ନିମନ୍ତେ <code>#babel</code> ପାର୍ସର କାମଟି ଯୋଡ଼ିଥାଏ ଯେଉଁଥିରେ ନିଜେ ଛାଞ୍ଚ ସବୁ ତିଆରି କରି ଖଞ୍ଜିବା ସୁବିଧା ଥାଏ",
+ "babel-url": "Project:ବାବେଲ",
+ "babel-footer-url": ":ଶ୍ରେଣୀ:ବାବେଲ - ଭାଷା ଅନୁସାରେ ଇଉଜର",
+ "babel-autocreate-abort": "ଆପଣ ଦେଇଥିବା ଇଉଜର ନାମଟି [[$1|ବାବେଲ]] ଶ୍ରେଣୀ ପାଇଁ ବ୍ୟବହାର କରାଯାଇଛି ଓ ଆଉଥରେ ତିଆରି କରାଯାଇପାରିବ ନାହିଁ ।",
+ "babel-autocreate-reason": "ଆପେଆପେ [[$1|Babel]] ଶ୍ରେଣୀଟିଏ ତିଆରି କରୁଅଛୁଁ ।",
+ "babel-autocreate-text-levels": "ଏହି ଶ୍ରେଣୀରେ ଥିବା ସଭ୍ୟମାନେ $2 ଭାଷାରେ $1 ନିପୁଣ ।",
+ "babel-autocreate-text-main": "ଏହି ଶ୍ରେଣୀରେ ଥିବା ସଭ୍ୟମାନେ $1 ଭାଷା ଜାଣିଛନ୍ତି ବୋଲି ଜଣାଇଅଛନ୍ତି ।",
+ "babel-0": "ଏହି ସଭ୍ୟ [[$2|$3]] ଜାଣନ୍ତି [[$1|ନାହିଁ]] (କି ଅଳ୍ପ ଅଳ୍ପ ବୁଝନ୍ତି ନାହି) ।",
+ "babel-1": "ଏହି ସଭ୍ୟଙ୍କୁ [[$2|$3]] ଭାଷା [[$1|ଅଳ୍ପ]] ଜଣାଅଛି ।",
+ "babel-2": "ଏହି ସଭ୍ୟ [[$2|$3]] ଭାଷା [[$1|ଚଳିବା ଭଳି]] ଜାଣନ୍ତି ।",
+ "babel-3": "ଏହି ସଭ୍ୟ [[$2|$3]] ଭାଷା [[$1|ଭଲ ଭାବରେ]] ଜାଣନ୍ତି ।",
+ "babel-4": "ଏହି ଇଉଜର [[$2|$3]] ଭାଷା ତାହାର [[$1|ମୁଳ ଲୋକଙ୍କ]] ଭଳି ଜାଣନ୍ତି ।",
+ "babel-5": "ଏହି ସଭ୍ୟ [[$2|$3]] ଭାଷା [[$1|ଭଲ ଭାବରେ]] ଜାଣନ୍ତି ।",
+ "babel-N": "ଏହି ବ୍ୟବହାରକାରିଙ୍କ [[$1|ନିଜ ଭାଷା]] ହେଲା [[$2|$3]] ।",
+ "babel-0-n": "ଏହି ସଭ୍ୟ [[$2|ଇଂରାଜି]] ଜମାରୁ [[$1|ବୁଝନ୍ତି ନାହିଁ]] ବା ଟିକେ ଟିକେ ବୁଝିପାରନ୍ତି ।",
+ "babel-1-n": "ଏହି ସଭ୍ୟଙ୍କୁଙ୍କୁ [[$2|ଇଂରାଜୀ]] ଭାଷା [[$1|ଅଳ୍ପ]] ଜଣାଅଛି ।",
+ "babel-2-n": "ଏହି ଇଉଜର [[$2|ଇଂରାଜି]] ଭାଷା [[$1|ଚଳିବା ଭଳି]] ଜାଣନ୍ତି ।",
+ "babel-3-n": "ଏହି ଇଉଜର [[$2|ଇଂରାଜି]] ଭାଷା [[$1|ଭଲକରି]] ଜାଣନ୍ତି ।",
+ "babel-4-n": "ଏହି ଇଉଜର [[$2|ଇଂରାଜି]] ଭାଷା ତାହାର [[$1|ମୁଳ ଲୋକଙ୍କ]] ଭଳି ଜାଣନ୍ତି ।",
+ "babel-5-n": "ଏହି ସଭ୍ୟଙ୍କୁ [[$2|ଇଂରାଜୀ]] ଭାଷା [[$1|ଭଲ ଭାବରେ]] ଜଣାଅଛି ।",
+ "babel-N-n": "ଏହି ବ୍ୟବହାରକାରିଙ୍କ [[$1|ନିଜ]] ଭାଷା ହେଲା [[$2|ଓଡ଼ିଆ]]।",
+ "babel-footer": "ଭାଷା ଅନୁସାରେ ସଭ୍ୟ"
+}
diff --git a/MLEB/Babel/i18n/os.json b/MLEB/Babel/i18n/os.json
new file mode 100644
index 00000000..5a989595
--- /dev/null
+++ b/MLEB/Babel/i18n/os.json
@@ -0,0 +1,32 @@
+{
+ "@metadata": {
+ "authors": [
+ "Amikeco",
+ "Bouron"
+ ]
+ },
+ "babel": "Вавилон, архайæджы тыххæй",
+ "babel-desc": "Æфтауы <code>#babel</code> парсер функци, цæмæй æвзæгты тыххæй къæрт йæхæдæг æвзæра, æндæр шаблонтæ иукæныны фадатимæ.",
+ "babel-url": "Project:Вавилон",
+ "babel-footer-url": ":Category:Вавилон - архайджытæ, æвзæгтæм гæсгæ",
+ "babel-autocreate-abort": "Ды цы фæсномыг бацамыдтай, уый [[$1|Вавилоны]] категорийы хæдарæзтæн у, æмæ йæ нæй гæнæн срегистраци кæнын.",
+ "babel-autocreate-reason": "[[$1|Вавилоны]] категорийы фарсы хæдарæзт.",
+ "babel-autocreate-text-levels": "Ацы категорийы архайджытæ амонынц сæ $2 æвзаг $1-мæ кæй зонынц, уый.",
+ "babel-autocreate-text-main": "Ацы категорийы архайджытæ амонынц $1 æвзаг кæй зонынц, уый.",
+ "babel-0": "Ацы архайæг [[$1|бынтон нæ зоны]] [[$2|$3]] (кæнæ йæ тынг æвзæр æмбары).",
+ "babel-1": "Ацы архайæг [[$1|гыццыл зоны]] [[$2|$3]].",
+ "babel-2": "Ацы архайæг [[$1|дзæбæх]] зоны [[$2|$3]] æвзаг.",
+ "babel-3": "Ацы архайæг [[$1|хорз]] зоны [[$2|$3]] æвзаг.",
+ "babel-4": "Ацы архайæг зоны [[$2|$3]] куыд йæ [[$1|мадæлон æвзаг]].",
+ "babel-5": "Ацы архайæг [[$1|профессионалау]] зоны [[$2|$3]].",
+ "babel-N": "Ацы архайæджы [[$1|мадæлон æвзаг]] у [[$2|$3]].",
+ "babel-0-n": "Ацы архайæг [[$1|бынтон нæ зоны]] [[$2|ирон æвзаг]] (кæнæ йæ тынг æвзæр æмбары).",
+ "babel-1-n": "Ацы архайæг [[$2|иронау]] [[$1|гыццыл зоны]].",
+ "babel-2-n": "Ацы архайæг [[$2|ирон æвзаг]] [[$1|дзæбæх]] зоны.",
+ "babel-3-n": "Ацы архайæг [[$2|ирон æвзаг]] [[$1|хорз]] зоны.",
+ "babel-4-n": "Ацы архайæг зоны [[$2|ирон æвзаг]] куыд йæ [[$1|мадæлон æвзаг]].",
+ "babel-5-n": "Ацы архайæг [[$1|профессионалау]] зоны [[$2|ирон æвзаг]].",
+ "babel-N-n": "Ацы архайæгæн [[$2|ирон æвзаг]] йæ [[$1|мадæлон]] æвзаг у.",
+ "babel-template": "Template:Архайæг $1",
+ "babel-footer": "Архайджытæ, æвзæгтæм гæсгæ"
+}
diff --git a/MLEB/Babel/i18n/pa.json b/MLEB/Babel/i18n/pa.json
new file mode 100644
index 00000000..88279eef
--- /dev/null
+++ b/MLEB/Babel/i18n/pa.json
@@ -0,0 +1,34 @@
+{
+ "@metadata": {
+ "authors": [
+ "Aalam",
+ "Babanwalia",
+ "Raj Singh",
+ "TariButtar",
+ "VibhasKS"
+ ]
+ },
+ "babel": "ਬੈਬਲ ਵਰਤੋਂਕਾਰ ਜਾਣਕਾਰੀ",
+ "babel-desc": "<code>#babel</code> ਪਾਰਸਰ ਫੰਕਸ਼ਨ ਜੋੜਨ ਨਾਲ ਬਬੇਲ ਯੂਜ਼ਰ-ਬਾਕਸ ਕਾਲਮ ਵਿੱਚ ਪਸੰਦੀਦਾ ਟੈਪਲੇਟ ਦੀ ਸਮੱਰਥਾ ਤਿਆਰ ਕਰਨ ਲਈ ਸਹਾਇਕ ਹੈ",
+ "babel-url": "Project:ਬਬੇਲ",
+ "babel-footer-url": ":Category:ਬੈਬਲ - ਬੋਲੀ ਮੁਤਾਬਕ ਵਰਤੋਂਕਾਰ",
+ "babel-autocreate-abort": "ਤੁਹਾਡੇ ਵਲੋਂ ਦਿੱਤਾ ਵਰਤੋਂਕਾਰ-ਨਾਂ [[$1|ਬੈਬਲ]] ਵਰਗ ਦੀ ਸਵੈ-ਉਸਾਰੀ ਲਈ ਵਰਤਿਆ ਜਾਂਦਾ ਹੈ ਅਤੇ ਲੇਖਬੱਧ ਨਹੀਂ ਕੀਤਾ ਜਾ ਸਕਦਾ।",
+ "babel-autocreate-reason": "ਆਟਮੋਟਿਕ ਹੀ [[$1|Babel]] ਕੈਟਾਗਰੀ ਪੇਜ਼ ਬਣਾਓ।",
+ "babel-autocreate-text-levels": "ਇਹ ਵਰਗ ਦੇ ਵਰਤੋਂਕਾਰ ਦਰਸਾਉਂਦੇ ਹਨ ਕਿ ਉਹਨਾਂ ਕੋਲ $2 ਬੋਲੀ ਵਾਸਤੇ $1 ਪੱਧਰ ਦਾ ਤਜਰਬਾ ਹੈ।",
+ "babel-autocreate-text-main": "ਇਸ ਵਰਗ ਦੇ ਵਰਤੋਂਕਾਰ ਦਰਸਾਉਂਦੇ ਹਨ ਕਿ ਉਹਨਾਂ ਕੋਲ $1 ਬੋਲੀ ਦਾ ਗਿਆਨ ਹੈ।",
+ "babel-0": "ਇਸ ਵਰਤੋਂਕਾਰ ਕੋਲ਼ [[$2|$3]] ਦਾ [[$1|ਕੋਈ]] ਗਿਆਨ ਨਹੀਂ ਹੈ (ਜਾਂ ਸਮਝਣ ਲਈ ਬਹੁਤ ਔਖਾ ਹੈ)।",
+ "babel-1": "ਇਹ ਯੂਜ਼ਰ ਕੋਲ [[$2|$3]] ਦਾ [[$1|basic]] ਗਿਆਨ ਹੈ।",
+ "babel-2": "ਇਹ ਯੂਜ਼ਰ ਕੋਲ [[$2|$3]] ਦਾ [[$1|intermediate]] ਗਿਆਨ ਹੈ।",
+ "babel-3": "ਇਸ ਵਰਤੋਂਕਾਰ ਕੋਲ [[$2|$3]] ਦਾ [[$1|ਪੇਸ਼ੇਵਰ]] ਗਿਆਨ ਹੈ।",
+ "babel-4": "ਇਸ ਵਰਤੋਂਕਾਰ ਕੋਲ਼ [[$2|$3]] ਦਾ [[$1|ਲਗਭਗ ਮੂਲ ਬੋਲਣ ਵਾਲ਼ੇ ਜਿੰਨਾ]] ਗਿਆਨ ਹੈ।",
+ "babel-5": "ਇਸ ਵਰਤੋਂਕਾਰ ਕੋਲ਼ [[$2|$3]] ਦਾ [[$1|ਪੇਸ਼ੇਵਰ]] ਗਿਆਨ ਹੈ।",
+ "babel-N": "ਇਹ ਯੂਜ਼ਰ ਨੂੰ [[$2|$3]] ਦੀ [[$1|native]] ਸਮਝ ਹੈ।",
+ "babel-0-n": "ਇਸ ਵਰਤੋਂਕਾਰ ਕੋਲ਼ [[$2|ਪੰਜਾਬੀ]] ਦਾ ਗਿਆਨ [[$1|ਨਹੀਂ]] ਹੈ (ਜਾਂ ਸਮਝਣੀ ਬਹੁਤ ਔਖੀ ਹੈ)।",
+ "babel-1-n": "ਇਸ ਮੈਂਬਰ ਨੂੰ [[$2|ਪੰਜਾਬੀ]] ਦਾ [[$1|ਮੁੱਢਲੀ]] ਸਮਝ ਹੈ।",
+ "babel-2-n": "ਇਸ ਵਰਤੋਂਕਾਰ ਕੋਲ਼ [[$2|ਪੰਜਾਬੀ]] ਦਾ [[$1|ਠੀਕ-ਠਾਕ]] ਗਿਆਨ ਹੈ।",
+ "babel-3-n": "ਇਹ ਯੂਜ਼ਰ ਨੂੰ [[$2|ਪੰਜਾਬੀ]] ਦਾ [[$1|ਮਾਹਿਰ]] ਗਿਆਨ ਹੈ।",
+ "babel-4-n": "ਇਸ ਵਰਤੋਂਕਾਰ ਕੋਲ਼ [[$2|ਪੰਜਾਬੀ]] ਦਾ [[$1|ਲਗਭਗ ਮੂਲ ਬੁਲਾਰਾ]] ਹੋਣ ਦਾ ਗਿਆਨ ਹੈ।",
+ "babel-5-n": "ਇਸ ਵਰਤੋਂਕਾਰ ਕੋਲ਼ [[$2|ਪੰਜਾਬੀ]] ਦਾ [[$1|ਪੇਸ਼ੇਵਰ]] ਗਿਆਨ ਹੈ।",
+ "babel-N-n": "[[$2|ਪੰਜਾਬੀ]] ਇਸ ਮੈਂਬਰ ਦੀ [[$1|ਮਾਂ ਭਾਸ਼ਾ]] ਹੈ।",
+ "babel-footer": "ਬੋਲੀ ਮੁਤਾਬਕ ਵਰਤੋਂਕਾਰ"
+}
diff --git a/MLEB/Babel/i18n/pap.json b/MLEB/Babel/i18n/pap.json
new file mode 100644
index 00000000..dbf800dd
--- /dev/null
+++ b/MLEB/Babel/i18n/pap.json
@@ -0,0 +1,22 @@
+{
+ "@metadata": {
+ "authors": [
+ "Sdm1985"
+ ]
+ },
+ "babel": "Babel; Informashon di Usuario",
+ "babel-desc": "Ta agrega e <code>#babel</code> , ku e funshon di generá un Kaha Babel den e kaha di usuario",
+ "babel-url": "Proyecto: Babel",
+ "babel-0": "E uzadónan aki [[$1|no]] ta komprondé [[$2|$3]].",
+ "babel-1": "E uzadónan aki por papia [[$2|$3]] na un nivel [[$1|básiko]].",
+ "babel-2": "E uzadónan aki por papia [[$2|$3]] na un nivel [[$1|intermedio]].",
+ "babel-3": "E uzadónan aki por kontribuí na [[$2|$3]] na un nivel [[$1|avansá]].",
+ "babel-4": "Pa e uzadónan aki, [[$2|$3]] ta nan di dos idioma.",
+ "babel-N": "E uzadónan aki por papia [[$2|$3]] na un nivel [[$1|nativo]].",
+ "babel-0-n": "E uzadónan aki [[$1|no]] ta komprondé [[$2|Papiamentu]].",
+ "babel-1-n": "E uzadónan aki por papia [[$2|Papiamentu]] na un nivel [[$1|básiko]].",
+ "babel-2-n": "E uzadónan aki por papia [[$2|Papiamentu]] na un nivel [[$1|intermedio]].",
+ "babel-3-n": "E uzadónan aki por kontribuí na [[$2|Papiamentu]] na un nivel [[$1|avansá]].",
+ "babel-4-n": "Pa e uzadónan aki, [[$2|Papiamentu]] ta nan di dos idioma.",
+ "babel-N-n": "E uzadónan aki por papia [[$2|Papiamentu]] na un nivel [[$1|nativo]]."
+}
diff --git a/MLEB/Babel/i18n/pcd.json b/MLEB/Babel/i18n/pcd.json
new file mode 100644
index 00000000..1b1fa56f
--- /dev/null
+++ b/MLEB/Babel/i18n/pcd.json
@@ -0,0 +1,31 @@
+{
+ "@metadata": {
+ "authors": [
+ "Geoleplubo",
+ "GerardM"
+ ]
+ },
+ "babel": "Informachons Babel su echl uzeu",
+ "babel-desc": "Érquértche el foncchon \"analise <code>#babel</code>\" pou avoèr el généracion d'eune colonne \"uzeu-boète babel\" aveuc el pochibilité éd mètte chés modèles pérsonèls",
+ "babel-url": "Project:Babel",
+ "babel-footer-url": ":Catégorie:Uzeus pèr langue",
+ "babel-autocreate-abort": "Ech nom d'uzeu avinché est imploéïé pou el oeto-créachon del catégorie [[$1|Babel]] don i n'put poin éte inrégistré.",
+ "babel-autocreate-reason": "Pache éd créachon oetomatike del catégorie [[$1|Babel]].",
+ "babel-autocreate-text-levels": "Ches uzeus din l'catégorie-lo, is déloufette qu'is ont un nivieu avinché $1 din l'langue $2.",
+ "babel-autocreate-text-main": "Chés uzeus din l'catégorie-lo, is déloufette qu'is bavette din l'langue $1.",
+ "babel-0": "Echl uzeu-lo, i n'bave [[$1|poin]] in [[$2|Picard]] (ou bin i parle un tiot peu in picard)",
+ "babel-1": "Echl uzeu-lo, il o un [[$1|basique]] parlache in [[$2|Picard]].",
+ "babel-2": "Echl uzeu-lo, il o un [[$1|mouéyin]] pérlache in [[$2|Picard]].",
+ "babel-3": "Echl uzeu-lo, il o un parlache [[$1|avanché]] in [[$2|Picard]].",
+ "babel-4": "Pou echl uzeu-lo, ch' [[$1|Picard]] ch'est [[$2|quasimint conme l'langue éd chés pérints]].",
+ "babel-5": "Echl uzeu-lo, il o un parlache [[$1|proféchionèl]] in [[$2|Picard]].",
+ "babel-N": "Pou echl'uzeu-lo, ch' [[$2|Picard]] ch'est l'langue éd ses pérints, il o un [[$1|native]] parlache.",
+ "babel-0-n": "Echl uzeu-lo, i n'bave [[$1|poin]] in [[$2|Picard]] (ou bin i pérle un tiot peu in picard)",
+ "babel-1-n": "Echl uzeu-lo, il o un [[$1|basique]] pérlache in [[$2|picard]].",
+ "babel-2-n": "Echl uzeu-lo, il o un [[$1|mouéyin]] pérlache in [[$2|picard]].",
+ "babel-3-n": "Echl uzeu-lo, il o un parlache [[$1|avanché]] in [[$2|picard]].",
+ "babel-4-n": "Pou echl uzeu-lo, ch' [[$2|Picard]] ch'est [[$1|quasimint conme l'langue éd chés pérints]].",
+ "babel-5-n": "Echl uzeu-lo, il o un parlache [[$1|proféchionnèl]] in [[$2|picard]].",
+ "babel-N-n": "Pou echl'uzeu-lo, ch' [[$2|Picard]] ch'est [[$1|l'langue éd ses pérints]].",
+ "babel-footer": "Uzeus par langue"
+}
diff --git a/MLEB/Babel/i18n/pdc.json b/MLEB/Babel/i18n/pdc.json
new file mode 100644
index 00000000..a820ebfd
--- /dev/null
+++ b/MLEB/Babel/i18n/pdc.json
@@ -0,0 +1,30 @@
+{
+ "@metadata": {
+ "authors": [
+ "Xqt"
+ ]
+ },
+ "babel": "Babel Yuuser Information",
+ "babel-desc": "Ennert die <code>#babel</code>-Parserfunktion fer zum automatische Aalege vun Babel-Yuuserbox-Columns damit eigene Vorlage dezu ze duh meeglich sinn",
+ "babel-url": "Project:Babel",
+ "babel-footer-url": ":Category:Benutzer natt Schprooche",
+ "babel-autocreate-abort": "De Yuuser-Name, wu Du gewaehlt hoscht, werd geyuust fer es automatisch Aalege vun [[$1|Babel]]-Abdeelinge unn kann net regischtriert werre.",
+ "babel-autocreate-reason": "Automatisch aagelegte [[$1|Babel]]-Abdeeling.",
+ "babel-autocreate-text-levels": "Yuuser in derre Abdeeling henn Kenntnis-Level $1 fer die Sprooch $2.",
+ "babel-autocreate-text-main": "Yuuser in derre Abdeeling schwetze $1.",
+ "babel-0": "Daer Yuuser do schwetzt [[$1|ken]] [[$2|$3]].",
+ "babel-1": "Daer Yuuser do schwetzt [[$1|en wennich]] [[$2|$3]].",
+ "babel-2": "Daer Yuuser do schwetzt [[$1|gans guud]] [[$2|$3]].",
+ "babel-3": "Daer Yuuser do schwetzt [[$1|aartlich guud]] [[$2|$3]].",
+ "babel-4": "Daer Yuuser do schwetzt [[$2|$3]], ass en [[$1|Muddersproch]].",
+ "babel-5": "Daer Yuuser do schwetzt [[$2|$3]] uff [[$1|professionellem]] Level.",
+ "babel-N": "Dem Yuuser do sei [[$1|Mudderschprooch]] iss [[$2|$3]].",
+ "babel-0-n": "Daer Yuuser do schwetzt [[$1|ken]] [[$2|Pennsilfaanisch Deitsch]].",
+ "babel-1-n": "Daer Yuuser do schwetzt [[$1|en wennich]] [[$2|Pennsilfaanisch Deitsch]].",
+ "babel-2-n": "Daer Yuuser do schwetzt [[$1|gans guud]] [[$2|Pennsilfaanisch Deitsch]].",
+ "babel-3-n": "Daer Yuuser do schwetzt [[$1|aartlich guud]] [[$2|Pennsilfaanisch Deitsch]].",
+ "babel-4-n": "Daer Yuuser do schwetzt [[$2|Pennsilfaanisch Deitsch]], wie ass [[$1|Muddersproch]].",
+ "babel-5-n": "Daer Yuuser do schwetzt [[$2|Pennsilfaanisch Deitsch]] uff [[$1|professionellem]] Level.",
+ "babel-N-n": "Dem Yuuser do sei [[$1|Mudderschprooch]] iss [[$2|Pennsilfaanisch Deitsch]].",
+ "babel-footer": "Yuuser natt Schprooche"
+}
diff --git a/MLEB/Babel/i18n/pdt.json b/MLEB/Babel/i18n/pdt.json
new file mode 100644
index 00000000..f2462e42
--- /dev/null
+++ b/MLEB/Babel/i18n/pdt.json
@@ -0,0 +1,17 @@
+{
+ "@metadata": {
+ "authors": [
+ "Purodha"
+ ]
+ },
+ "babel-1": "Dis Benutza redt [[$1|en bet]] [[$2|$3]].",
+ "babel-2": "Dis Benutza redt [[$1|nich schlachjt]] [[$2|$3]].",
+ "babel-3": "Dis Benutza redt [[$1|goot]] [[$2|$3]].",
+ "babel-4": "Dis Benutza redt [[$2|$3]] [[$1|meist soo goot aus ne Muttasproak]].",
+ "babel-N": "[[$2|$3]] es fe disem Benutza [[$1|Muttasproak]].",
+ "babel-1-n": "Dis Benutza redt [[$1|en bet]] [[$2|Plautdietsch]].",
+ "babel-2-n": "Dis Benutza redt [[$1|nich schlachjt]] [[$2|Plautdietsch]].",
+ "babel-3-n": "Dis Benutza redt [[$1|goot]] [[$2|Plautdietsch]].",
+ "babel-4-n": "Dis Benutza redt [[$2|Plautdietsch]] [[$1|meist soo goot aus ne Muttasproak]].",
+ "babel-N-n": "[[$2|Plautdietsch]] es fe disem Benutza [[$1|Muttasproak]]."
+}
diff --git a/MLEB/Babel/i18n/pfl.json b/MLEB/Babel/i18n/pfl.json
new file mode 100644
index 00000000..56ba1465
--- /dev/null
+++ b/MLEB/Babel/i18n/pfl.json
@@ -0,0 +1,31 @@
+{
+ "@metadata": {
+ "authors": [
+ "Als-Holder",
+ "Manuae"
+ ]
+ },
+ "babel": "Babel-Bnudza-Ogaab",
+ "babel-desc": "Fieschd die <code>#babel</code>-Parserfunktion fas audomadische Oaleesche vun Babel-B'nudzakäschdel-Zaile dzu, mide Meschlischkaid, aischini Vorlache oizbinne",
+ "babel-url": "Project:Babel",
+ "babel-footer-url": ":Category:Babel - Bnudza noch Schbrooch",
+ "babel-autocreate-abort": "De Bnudzanoame, wu'd g'wehld hoschd, wead fas audomadische Oalesche vun [[$1|Babel]]-Kadegorije gbrauchd un konn ned regischdriad werre.",
+ "babel-autocreate-reason": "Audomadisch oagleschdi [[$1|Babel]]-Kadegorije.",
+ "babel-autocreate-text-levels": "Bnudza inde Kadegorie hawen Fehjischkaide $1 fa die Schbrooch $2.",
+ "babel-autocreate-text-main": "Bnudza in de Kadegorie hawen Wisse vunde Schbrooch $1.",
+ "babel-0": "De Bnudza babbld [[$1|kä]] [[$2|$3]] (oda hod greeßere Schwiarischkaid dmid).",
+ "babel-1": "De Bnudza babbld [[$1|e bissl]] [[$2|$3]].",
+ "babel-2": "De Bnudza babbld [[$1|goans gud]] [[$2|$3]] .",
+ "babel-3": "De Bnudza babbld [[$1|arisch gud]] [[$2|$3]].",
+ "babel-4": "De Bnudza babbld [[$2|$3]], faschd wie sai [[$1|Muddaschbrooch]].",
+ "babel-5": "De Bnudza babbld [[$2|$3]] uffm [[$1|fachlische]] Niwo.",
+ "babel-N": "De Bnudza babbld [[$2|$3]] als soi [[$1|Muddaschbrooch]].",
+ "babel-0-n": "De Bnudza babbld [[$1|kä]] [[$2|Pälzisch]] (oda hod greeßere Schwierischkaide dmid).",
+ "babel-1-n": "De Bnudza babbld [[$1|e bissl]] [[$2|Pälzisch]].",
+ "babel-2-n": "De Bnudza babbld [[$1|goans gud]] [[$2|Pälzisch]] .",
+ "babel-3-n": "De Bnudza babbld [[$1|arisch gud]] [[$2|Pälzisch]].",
+ "babel-4-n": "De Bnudza babbld [[$2|Pälzisch]], faschd wie sai [[$1|Muddaschbrooch]].",
+ "babel-5-n": "De Bnudza babbld [[$2|Pälzisch]] uffm [[$1|fachlische]] Niwo.",
+ "babel-N-n": "De Bnudza babbld [[$2|Pälzisch]] als soi [[$1|Muddaschbrooch]].",
+ "babel-footer": "Bnudza noch Schbrooch"
+}
diff --git a/MLEB/Babel/i18n/pl.json b/MLEB/Babel/i18n/pl.json
new file mode 100644
index 00000000..7752f9f7
--- /dev/null
+++ b/MLEB/Babel/i18n/pl.json
@@ -0,0 +1,32 @@
+{
+ "@metadata": {
+ "authors": [
+ "Karol007",
+ "Sp5uhe",
+ "Ymar"
+ ]
+ },
+ "babel": "Wieża Babel użytkownika",
+ "babel-desc": "Dodaje funkcję parsera <code>#babel</code> ułatwiającą tworzenie ramki informującej o językowych lub innych umiejętnościach użytkownika",
+ "babel-url": "Project:Wieża Babel",
+ "babel-footer-url": ":Category:Babel",
+ "babel-autocreate-abort": "Wybrana nazwa użytkownika jest wykorzystywana do automatycznego tworzenia kategorii [[$1|wieży Babel]] i nie może zostać zarejestrowana.",
+ "babel-autocreate-reason": "Strona automatycznie utworzonej kategorii [[$1|wieży Babel]].",
+ "babel-autocreate-text-levels": "Użytkownicy znajdujący się w tej kategorii deklarują znajomość języka $2 na poziomie $1.",
+ "babel-autocreate-text-main": "Użytkownicy znajdujący się w tej kategorii deklarują znajomość języka $1.",
+ "babel-0": "{{GENDER:$4|Ten użytkownik|Ta użytkowniczka}} [[$1|nie rozumie]] języka [[$2|$3]] (albo ma z nim olbrzymie trudności).",
+ "babel-1": "{{GENDER:$4|Ten użytkownik|Ta użytkowniczka}} posługuje się [[$2|językiem $3]] na poziomie [[$1|podstawowym]].",
+ "babel-2": "{{GENDER:$4|Ten użytkownik|Ta użytkowniczka}} posługuje się [[$2|językiem $3]] na poziomie [[$1|średnio zaawansowanym]].",
+ "babel-3": "{{GENDER:$4|Ten użytkownik|Ta użytkowniczka}} posługuje się [[$2|językiem $3]] na poziomie [[$1|zaawansowanym]].",
+ "babel-4": "{{GENDER:$4|Ten użytkownik|Ta użytkowniczka}} posługuje się [[$2|językiem $3]] prawie tak samo biegle, jak [[$1|językiem ojczystym]].",
+ "babel-5": "{{GENDER:$4|Ten użytkownik|Ta użytkowniczka}} posługuje się [[$2|językiem $3]] na równi z [[$1|językiem ojczystym]].",
+ "babel-N": "[[$2|$3]] jest [[$1|językiem ojczystym]] {{GENDER:$4|tego użytkownika|tej użytkowniczki}}.",
+ "babel-0-n": "{{GENDER:$4|Ten użytkownik|Ta użytkowniczka}} [[$1|nie rozumie]] języka [[$2|polskiego]] (albo ma z nim olbrzymie trudności).",
+ "babel-1-n": "{{GENDER:$4|Ten użytkownik|Ta użytkowniczka}} posługuje się [[$2|językiem polskim]] na poziomie [[$1|podstawowym]].",
+ "babel-2-n": "{{GENDER:$4|Ten użytkownik|Ta użytkowniczka}} posługuje się [[$2|językiem polskim]] na poziomie [[$1|średnio zaawansowanym]].",
+ "babel-3-n": "{{GENDER:$4|Ten użytkownik|Ta użytkowniczka}} posługuje się [[$2|językiem polskim]] na poziomie [[$1|zaawansowanym]].",
+ "babel-4-n": "{{GENDER:$4|Ten użytkownik|Ta użytkowniczka}} posługuje się [[$2|językiem polskim]] prawie tak samo biegle, jak [[$1|językiem ojczystym]].",
+ "babel-5-n": "{{GENDER:$4|Ten użytkownik|Ta użytkowniczka}} posługuje się [[$2|językiem polskim]] na równi z [[$1|językiem ojczystym]].",
+ "babel-N-n": "[[$2|Polski]] jest [[$1|językiem ojczystym]] {{GENDER:$4|tego użytkownika|tej użytkowniczki}}.",
+ "babel-footer": "Użytkownicy według języka"
+}
diff --git a/MLEB/Babel/i18n/pms.json b/MLEB/Babel/i18n/pms.json
new file mode 100644
index 00000000..79f5bac2
--- /dev/null
+++ b/MLEB/Babel/i18n/pms.json
@@ -0,0 +1,31 @@
+{
+ "@metadata": {
+ "authors": [
+ "Dragonòt",
+ "GerardM"
+ ]
+ },
+ "babel": "Anformassion Babel ëd l'utent",
+ "babel-desc": "A gionta la parser function <code>#babel</code> për përmëtte la generassion automàtica ëd na colòna babel userbox con la possibilità d'anserì djë stamp përsonalisà",
+ "babel-url": "Project:Babel",
+ "babel-footer-url": ":Category:Babel - Utent për lenga",
+ "babel-autocreate-abort": "Lë stranòm ch'it l'has spessificà a l'é dovrà për l'auto-creassion ëd categorìe [[$1|Babel]] e a peul nen esse registrà.",
+ "babel-autocreate-reason": "Creassion automàtica dla pàgina dla categorìa [[$1|Babel]].",
+ "babel-autocreate-text-levels": "J'utent an sta categorìa-sì a mosto che a l'han un livel ëd conossensa $1 dla lenga $2.",
+ "babel-autocreate-text-main": "J'utent an sta categorìa-sì a mosto che a conosso la lenga $1.",
+ "babel-0": "St'utent-sì a l'ha [[$1|gnun-e]] conossense dël [[$2|$3]] (o a lo capiss con motobin ëd dificoltà).",
+ "babel-1": "St'utent-sì a l'ha na conossensa [[$1|limità]] dël [[$2|$3]].",
+ "babel-2": "St'utent-sì a l'ha na conossensa [[$1|antërmedia]] dël [[$2|$3]].",
+ "babel-3": "St'utent-sì a la na conossensa [[$1|avansà]] dël [[$2|$3]].",
+ "babel-4": "St'utent-sì a l'ha na conossensa [[$1|scasi nativa]] dël [[$2|$3]].",
+ "babel-5": "St'utent-sì a l'ha na conossensa [[$1|professional]] dël [[$2|$3]].",
+ "babel-N": "St'utent-sì a l'é un parlant [[$1|nativ]] dël [[$2|$3]].",
+ "babel-0-n": "St'utent-sì a l'ha [[$1|gnun-e]] conossense dël [[$2|Piemontèis]] (o a lo capiss con motobin ëd dificoltà).",
+ "babel-1-n": "St'utent-sì a l'ha na conossensa [[$1|limità]] dël [[$2|Piemontèis]].",
+ "babel-2-n": "St'utent-sì a l'ha na conossensa [[$1|antërmedia]] dël [[$2|Piemontèis]].",
+ "babel-3-n": "St'utent-sì a l'ha na conossensa [[$1|avansà]] dël [[$2|Piemontèis]].",
+ "babel-4-n": "St'utent-sì a l'ha na conossensa [[$1|scasi nativa]] dël [[$2|Piemontèis]].",
+ "babel-5-n": "St'utent-sì a l'ha na conossensa [[$1|professional]] dël [[$2|Piemontèis]].",
+ "babel-N-n": "St'utent-sì a l'ha un livel [[$1|nativ]] ëd [[$2|Piemontèis]].",
+ "babel-footer": "Utent për lenga"
+}
diff --git a/MLEB/Babel/i18n/pnb.json b/MLEB/Babel/i18n/pnb.json
new file mode 100644
index 00000000..5a0fbe45
--- /dev/null
+++ b/MLEB/Babel/i18n/pnb.json
@@ -0,0 +1,30 @@
+{
+ "@metadata": {
+ "authors": [
+ "Khalid Mahmood"
+ ]
+ },
+ "babel": "بابل ورتن والے بارے",
+ "babel-desc": "<code>#babel</code>جوڑو پارسر فنکشن بابل ورتن ڈبہ کالم کسٹم ٹمپلیٹ دی اسانی نال",
+ "babel-url": "ویونت: بابل",
+ "babel-footer-url": "گٹھ: بابل - بولی نال ورتن والے",
+ "babel-autocreate-abort": "ورتن ناں جیہڑا تےاں دسیا اے اوہ [[$1|بابل]] گٹھ آپ بنان لئی ورتیا جاندا اے تے رجسٹر نئیں ہوسکدا۔",
+ "babel-autocreate-reason": "اپنے آپ ای [[$1|بابل]] گٹھ صفحہ بنایا جاریا اے۔",
+ "babel-autocreate-text-levels": "اس گٹھ چ مجود ورتن آلے $2 بولی دے بارے چ $1 بوتا جاندے نیں۔",
+ "babel-autocreate-text-main": "اس گٹھ چ مجود ورتن آلے $1 بولی دے بارے چ جاندے نیں۔",
+ "babel-0": "اے ورتن آلا [[$2|$3]] نوں [[$1|نئیں]] جاندا (یا اینوں مشکل نال سمجدا اے)۔",
+ "babel-1": "اے ورتن آلا [[$2|$3]] دے بارے چ [[$1|پدری]] جانکاری رکھدا اے۔",
+ "babel-2": "اے ورتن آلا [[$2|$3]] دے بارے چ [[$1|درمیانی]] جانکاری رکھدا اے۔",
+ "babel-3": "اے ورتن آلا [[$2|$3]] دے بارے چ [[$1|چوکھی]] جانکاری رکھدا اے۔",
+ "babel-4": "اے ورتن آلا [[$2|$3]] دے بارے چ [[$1|چنگی پلی]] جانکاری رکھدا اے۔",
+ "babel-5": "اے ورتن آلا [[$2|$3]] دے بارے چ [[$1|پروفشنل]] جانکاری رکھدا اے۔",
+ "babel-N": "اے ورتن آلا [[$2|$3]] دے بارے چ [[$1|ماں بولی]] جڈی جانکاری رکھدا اے۔",
+ "babel-0-n": "اے ورتن آلا [[$2|انگریزی]] نوں [[$1|نئیں]] جاندا (یا اینوں مشکل نال سمجدا اے)۔",
+ "babel-1-n": "اے ورتن آلا [[$2|انگریزی]] دے بارے چ [[$1|پدری]] جانکاری رکھدا اے۔",
+ "babel-2-n": "اے ورتن آلا [[$2|انگریزی]] دے بارے چ [[$1|درمیانی]] جانکاری رکھدا اے۔",
+ "babel-3-n": "اے ورتن آلا [[$2|انگریزی]] دے بارے چ [[$1|چوکھی]] جانکاری رکھدا اے۔",
+ "babel-4-n": "اے ورتن آلا [[$2|انگریزی]] دے بارے چ [[$1|چنگی پلی]] جانکاری رکھدا اے۔",
+ "babel-5-n": "اے ورتن آلا [[$2|انگریزی]] دے بارے چ [[$1|پروفشنل]] جانکاری رکھدا اے۔",
+ "babel-N-n": "اے ورتن آلا [[$2|انگریزی]] دے بارے چ [[$1|ماں بولی]] جڈی جانکاری رکھدا اے۔",
+ "babel-footer": "بولی سعاب نال ورتن والے"
+}
diff --git a/MLEB/Babel/i18n/pnt.json b/MLEB/Babel/i18n/pnt.json
new file mode 100644
index 00000000..909c8945
--- /dev/null
+++ b/MLEB/Babel/i18n/pnt.json
@@ -0,0 +1,32 @@
+{
+ "@metadata": {
+ "authors": [
+ "Consta",
+ "Crazymadlover",
+ "Omnipaedista",
+ "Sinopeus",
+ "ZaDiak"
+ ]
+ },
+ "babel": "Πληροφορίας Βαβέλ τη χρήστε",
+ "babel-desc": "Προστέτει την <code>#babel</code> λεξιαναλυτικήν λειτουργίαν ας αφήκει την αυτόματην παραγωγήν στήλης βαβέλ με την δυνατότηταν περίληψης παραγγελτών προτυπίων",
+ "babel-url": "Project:Βαβέλ",
+ "babel-autocreate-abort": "Τ' όνεμα χρήστε π' εδώθεν εν όνεμα για την κατηγορίαν αυτόματου δημιουργίας [[$1|Βαβέλ]] και 'κ επορεί να κατοχυρωνέται.",
+ "babel-autocreate-reason": "Αυτόματα εγέντον η σελίδα κατηγορίας [[$1|Βαβέλ]].",
+ "babel-autocreate-text-levels": "Οι χρήστς ση κατηγορίαν ατή λέν' πως μιλούν την γλώσσαν $2 σ' επίπεδον $1.",
+ "babel-autocreate-text-main": "Οι χρήστς ση κατηγορίαν ατή γνωρίζ'ν την γλώσσαν $1.",
+ "babel-0": "Ατός ο χρήστες [[$1|'κ εγροικά]] τα [[$2|$3]] (ή με τρανόν ζορ).",
+ "babel-1": "Ατός ο χρήστες καλατσέβ [[$1|έναν ξάι]] [[$2|$3]].",
+ "babel-2": "Ατός ο χρήστες καλατσέβ [[$1|ολίγα]] [[$2|$3]].",
+ "babel-3": "Ατός ο χρήστες καλατσέβ [[$1|τσιπ καλά]] [[$2|$3]].",
+ "babel-4": "Ατός ο χρήστες καλατσέβ [[$1|σκυρά]] [[$2|$3]].",
+ "babel-5": "Ατός ο χρήστες καλατσέβ [[$1|επαγγελματικά]] [[$2|$3]].",
+ "babel-N": "Ατός ο χρήστες εχ' [[$1|μητρικόν]] λαλίαν τα [[$2|$3]].",
+ "babel-0-n": "Ατός ο χρήστες [[$1|ξάι]] 'κ εγροικά τα [[$2|Ποντιακά]] (ή με τρανόν ζορ).",
+ "babel-1-n": "Ατός ο χρήστες καλατσέβ [[$1|έναν ξάι]] [[$2|Ποντιακά]].",
+ "babel-2-n": "Ατός ο χρήστες καλατσέβ [[$1|ολίγα]] [[$2|Ποντιακά]].",
+ "babel-3-n": "Ατός ο χρήστες καλατσέβ [[$1|τσιπ καλά]] [[$2|Ποντιακά]].",
+ "babel-4-n": "Ατός ο χρήστες καλατσέβ [[$1|σκυρά]] [[$2|Ποντιακά]].",
+ "babel-5-n": "Ατός ο χρήστες καλατσέβ [[$1|επαγγελματικά]] [[$2|Ποντιακά]].",
+ "babel-N-n": "Ατός ο χρήστες εχ' [[$1|μητρικόν]] λαλίαν τα [[$2|Ποντιακά]]."
+}
diff --git a/MLEB/Babel/i18n/prg.json b/MLEB/Babel/i18n/prg.json
new file mode 100644
index 00000000..97118e6f
--- /dev/null
+++ b/MLEB/Babel/i18n/prg.json
@@ -0,0 +1,23 @@
+{
+ "@metadata": {
+ "authors": [
+ "Peteris"
+ ]
+ },
+ "babel": "Babel turmus terpautajas",
+ "babel-url": "Project: Babel",
+ "babel-0": "Šis terpautajs [[$1|ni izpresta]] [[$2|$3]] (anga turri sen stan debīkans prōblamans).",
+ "babel-1": "Šis terpautajs zinna [[$2|$3]] na gruntiskan līgmenin",
+ "babel-2": "Šis terpautajs zinna [[$2|$3]] na [[$1|sirdan]] līgmenin.",
+ "babel-3": "Šis terpautajs zinna [[$2|$3]] na [[$1|ēmpirsin treppusin]] līgmenin.",
+ "babel-4": "Šis terpautajs zinna [[$2|$3]] ēst stawīdiskai, kāigi [[$1|gīmtan]].",
+ "babel-5": "Šis terpautajs zinna [[$2|$3]] stawīdiskai, kāigi [[$1|gimtan]].",
+ "babel-N": "[[$2|$3]] ast [[$1|gimta]] bilā šisse terpautajas.",
+ "babel-0-n": "Šis terpautajs [[$1|ni izpresta]] [[$2|prūsiskan]] (anga turri sen stan debīkans prōblamans).",
+ "babel-1-n": "Šis terpautajs zinna [[$2|prūsiskan]] na gruntiskan līgmenin",
+ "babel-2-n": "Šis terpautajs zinna [[$2|prūsiskan]] na [[$1|sirdan]] līgmenin.",
+ "babel-3-n": "Šis terpautajs zinna [[$2|prūsiskan]] na [[$1|ēmpirsin treppusin]] līgmenin.",
+ "babel-4-n": "Šis terpautajs zinna [[$2|prūsiskan]] ēst stawīdiskai, kāigi [[$1|gīmtan]].",
+ "babel-5-n": "Šis terpautajs zinna [[$2|prūsiskan]] stawīdiskai, kāigi [[$1|gimtan]].",
+ "babel-N-n": "[[$2|Prūsiskan]] ast [[$1|gimta]] bilā šisse terpautajas."
+}
diff --git a/MLEB/Babel/i18n/ps.json b/MLEB/Babel/i18n/ps.json
new file mode 100644
index 00000000..b9f1040a
--- /dev/null
+++ b/MLEB/Babel/i18n/ps.json
@@ -0,0 +1,30 @@
+{
+ "@metadata": {
+ "authors": [
+ "Ahmed-Najib-Biabani-Ibrahimkhel"
+ ]
+ },
+ "babel": "د بابل د کارن مالومات",
+ "babel-desc": "د <code>#babel</code> شننونکې کړنه په دې موخه ده چې په خپلسري توگه د بابل د کارنبکس ستنه رامېنځ ته کړي چېرته چې څوک خپل د خوښې کينډۍ ورټومبلی شي",
+ "babel-url": "Project:بابل",
+ "babel-footer-url": ":Category:بابل - کارنان د ژبې له مخې",
+ "babel-autocreate-abort": "کوم کارن-نوم چې تاسو خوښ کړی هغه د [[$1|بابل]] د خپلسري-جوړښت وېشنيزې کې کارېږي او د ثبتولو وړ نه ده.",
+ "babel-autocreate-reason": "په اتوماتيک ډول د [[$1|بابل]] وېشنيزې مخ جوړوي.",
+ "babel-autocreate-text-levels": "د دې وېشنيزې کارنان دا څرګندوي چې دوي د $1 کچې وړتياوې د $2 ژبې په برخه کې لري.",
+ "babel-autocreate-text-main": "د دې وېشنيزې کارنان دا څرګندوي چې دوي د $1 په ژبه کې پوهاوی لري.",
+ "babel-0": "دا کارن په [[$2|$3]] ژبه [[$1|هېڅ نه]] پوهېږي (او يا هم په ډېرې سختۍ سره ډېر لږ پرې پوهېږي).",
+ "babel-1": "دا کارن تر [[$1|بنسټيزې کچې]] په [[$2|$3]] ژبې پوهېږي.",
+ "babel-2": "دا کارن تر [[$1|منځوۍ کچې]] په [[$2|$3]] ژبې پوهېږي.",
+ "babel-3": "دا کارن تر [[$1|پرمختللې کچې]] په [[$2|$3]] ژبې پوهېږي.",
+ "babel-4": "دا کارن تر [[$1|مورنۍ کچې]] په [[$2|$3]] ژبې پوهېږي.",
+ "babel-5": "دا کارن تر [[$1|کارپوهنيزې کچې]] په [[$2|$3]] ژبې پوهېږي.",
+ "babel-N": "د دې کارن [[$1|مورنۍ]] ژبه [[$2|$3]] ده.",
+ "babel-0-n": "دا کارن په [[$2|پښتو]] ژبه [[$1|هېڅ نه]] پوهېږي (او يا هم په ډېرې سختۍ سره ډېر لږ پرې پوهېږي).",
+ "babel-1-n": "دا کارن تر [[$1|بنسټيزې کچې]] په [[$2|پښتو]] ژبې پوهېږي.",
+ "babel-2-n": "دا کارن تر [[$1|منځوۍ کچې]] په [[$2|پښتو]] ژبې پوهېږي.",
+ "babel-3-n": "دا کارن تر [[$1|پرمختللې کچې]] په [[$2|پښتو]] ژبې پوهېږي.",
+ "babel-4-n": "دا کارن تر [[$1|مورنۍ کچې]] په [[$2|پښتو]] ژبې پوهېږي.",
+ "babel-5-n": "دا کارن تر [[$1|کارپوهنيزې کچې]] په [[$2|پښتو]] ژبې پوهېږي.",
+ "babel-N-n": "د دې کارن [[$1|مورنۍ]] ژبه [[$2|پښتو]] ده.",
+ "babel-footer": "کارنان د ژبې له مخې"
+}
diff --git a/MLEB/Babel/i18n/pt-br.json b/MLEB/Babel/i18n/pt-br.json
new file mode 100644
index 00000000..558e254b
--- /dev/null
+++ b/MLEB/Babel/i18n/pt-br.json
@@ -0,0 +1,33 @@
+{
+ "@metadata": {
+ "authors": [
+ "Brunoy Anastasiya Seryozhenko",
+ "Eduardo.mps",
+ "Giro720",
+ "555"
+ ]
+ },
+ "babel": "Informação Babel de Usuário",
+ "babel-desc": "Adiciona a função do analisador parser <code>#babel</code> para permitir a geração automática de um coluna de caixas de babel de um usuário coma possibilidade de incluir predefinições personalizadas",
+ "babel-url": "Project:Babel",
+ "babel-footer-url": ":Categoria:Babel - Usuários por língua",
+ "babel-autocreate-abort": "O nome de usuário que especificou é usado pela criação automática de categorias [[$1|Babel]] e, por isso, não pode ser registrado.",
+ "babel-autocreate-reason": "Criando automaticamente a página da categoria [[$1|Babel]].",
+ "babel-autocreate-text-levels": "Os usuários nesta categoria indicam que possuem um nível de conhecimento $1 na língua $2.",
+ "babel-autocreate-text-main": "Os usuários nesta categoria indicam que possuem conhecimentos da língua $1.",
+ "babel-0": "Este usuário [[$1|não]] têm conhecimento de [[$2|$3]] (ou compreende com dificuldades consideráveis).",
+ "babel-1": "Este usuário têm um [[$1|básico]] conhecimento de [[$2|$3]].",
+ "babel-2": "Este usuário têm um conhecimento [[$1|intermediário]] de [[$2|$3]].",
+ "babel-3": "Este usuário têm um [[$1|avançado]] conhecimento de [[$2|$3]].",
+ "babel-4": "Este usuário possui um conhecimento [[$1|próximo ao nativo]] de [[$2|$3]].",
+ "babel-5": "Este usuário têm um conhecimento [[$1|profissional]] de [[$2|$3]].",
+ "babel-N": "Este usuário é um [[$1|falante nativo]] de [[$2|$3]].",
+ "babel-0-n": "Este usuário [[$1|não compreende]] [[$2|português]] (ou compreende com dificuldades consideráveis).",
+ "babel-1-n": "{{GENDER:$4|Este usuário|Esta usuária}} pode contribuir com um nível [[$1|básico]] de [[$2|português no dialeto brasileiro]].",
+ "babel-2-n": "{{GENDER:$4|Este usuário|Esta usuária}} pode contribuir com um nível [[$1|médio]] de [[$2|português no dialeto brasileiro]].",
+ "babel-3-n": "{{GENDER:$4|Este usuário|Esta usuária}} pode contribuir com um nível [[$1|avançado]] de [[$2|português no dialeto brasileiro]].",
+ "babel-4-n": "{{GENDER:$4|Este usuário|Esta usuária}} pode contribuir com um nível [[$1|quase nativo]] de [[$2|português no dialeto brasileiro]].",
+ "babel-5-n": "{{GENDER:$4|Este usuário|Esta usuária}} pode contribuir com um nível [[$1|profissional]] de [[$2|português no dialeto brasileiro]].",
+ "babel-N-n": "{{GENDER:$4|Este usuário|Esta usuária}} tem como língua [[$1|materna]] o [[$2|dialeto brasileiro da língua portuguesa]].",
+ "babel-footer": "Usuários por língua"
+}
diff --git a/MLEB/Babel/i18n/pt.json b/MLEB/Babel/i18n/pt.json
new file mode 100644
index 00000000..f7799c3b
--- /dev/null
+++ b/MLEB/Babel/i18n/pt.json
@@ -0,0 +1,33 @@
+{
+ "@metadata": {
+ "authors": [
+ "Hamilton Abreu",
+ "Malafaya",
+ "Waldir",
+ "555"
+ ]
+ },
+ "babel": "Informação Babel de Utilizador",
+ "babel-desc": "Adiciona a função <code>#babel</code> ao analisador sintáctico, para permitir a geração automatizada de uma coluna de caixas babel com a possibilidade de incluir predefinições personalizadas",
+ "babel-url": "Project:Babel",
+ "babel-footer-url": ":Categoria:Babel - Utilizadores por língua",
+ "babel-autocreate-abort": "O nome de utilizador que especificou é usado pela criação automática de categorias [[$1|Babel]] e, por isso, não pode ser registado.",
+ "babel-autocreate-reason": "A criar automaticamente a página da categoria [[$1|Babel]].",
+ "babel-autocreate-text-levels": "Os utilizadores nesta categoria indicam que têm um nível de conhecimento $1 na língua $2.",
+ "babel-autocreate-text-main": "Os utilizadores nesta categoria indicam que têm conhecimentos da língua $1.",
+ "babel-0": "{{GENDER:$4|Este utilizador|Esta utilizadora}} [[$1|não compreende]] [[$2|$3]] (ou compreende com dificuldades consideráveis).",
+ "babel-1": "{{GENDER:$4|Este utilizador|Esta utilizadora}} pode contribuir com um nível [[$1|básico]] de [[$2|$3]].",
+ "babel-2": "{{GENDER:$4|Este utilizador|Esta utilizadora}} pode contribuir com um nível [[$1|médio]] de [[$2|$3]].",
+ "babel-3": "{{GENDER:$4|Este utilizador|Esta utilizadora}} pode contribuir com um nível [[$1|avançado]] de [[$2|$3]].",
+ "babel-4": "{{GENDER:$4|Este utilizador|Esta utilizadora}} pode contribuir com um nível [[$1|quase nativo]] de [[$2|$3]].",
+ "babel-5": "{{GENDER:$4|Este utilizador|Esta utilizadora}} pode contribuir com um nível [[$1|profissional]] de [[$2|$3]].",
+ "babel-N": "{{GENDER:$4|Este utilizador|Esta utilizadora}} tem como língua [[$1|materna]] o [[$2|$3]].",
+ "babel-0-n": "{{GENDER:$4|Este utilizador|Esta utilizadora}} [[$1|não compreende]] [[$2|português]] (ou compreende com dificuldades consideráveis).",
+ "babel-1-n": "{{GENDER:$4|Este utilizador|Esta utilizadora}} pode contribuir com um nível [[$1|básico]] de [[$2|português]].",
+ "babel-2-n": "{{GENDER:$4|Este utilizador|Esta utilizadora}} pode contribuir com um nível [[$1|médio]] de [[$2|português]].",
+ "babel-3-n": "{{GENDER:$4|Este utilizador|Esta utilizadora}} pode contribuir com um nível [[$1|avançado]] de [[$2|português]].",
+ "babel-4-n": "{{GENDER:$4|Este utilizador|Esta utilizadora}} pode contribuir com um nível [[$1|quase nativo]] de [[$2|português]].",
+ "babel-5-n": "{{GENDER:$4|Este utilizador|Esta utilizadora}} pode contribuir com um nível [[$1|profissional]] de [[$2|português]].",
+ "babel-N-n": "{{GENDER:$4|Este utilizador|Esta utilizadora}} tem como língua [[$1|materna]] o [[$2|português]].",
+ "babel-footer": "Utilizadores por língua"
+}
diff --git a/MLEB/Babel/i18n/qqq.json b/MLEB/Babel/i18n/qqq.json
new file mode 100644
index 00000000..e2ddd602
--- /dev/null
+++ b/MLEB/Babel/i18n/qqq.json
@@ -0,0 +1,48 @@
+{
+ "@metadata": {
+ "authors": [
+ "Dereckson",
+ "Lloffiwr",
+ "Od1n",
+ "Purodha",
+ "Raimond Spekking",
+ "Raymond",
+ "RobertL",
+ "SPQRobin",
+ "Shirayuki",
+ "Siebrand",
+ "The Evil IP address",
+ "Umherirrender"
+ ]
+ },
+ "babel": "Header of Babel box. Parameters:\n* $1 - (Optional) the name of the page it is used on, for GENDER support",
+ "babel-desc": "{{desc|name=Babel|url=http://www.mediawiki.org/wiki/Extension:Babel}}",
+ "babel-url": "{{doc-important|Do not translate the namespace \"<code>Project:</code>\".}}\nThe page name at which more information about the babel system can be found.",
+ "babel-footer-url": "Unless this message is empty, this is used as link target in the last entry,\nalso known as the footer, of the outer Babel-box,\nprovided that the installation chooses to have a footer.\nThe corresponding link anchor is the message [[MediaWiki:babel-footer/{{UILANGCODE}}|babel-footer]] {{msg-mw|Babel-footer|notext=}}.\n\nFor installations having a 'Babel users per language' category tree, its root should be entered here.\nWhen translating, you can copy the category name from existing Babel systems in your language, but you can as well use a more generic name and leave it to individual installations, how to deal with it.\n\nThere is no need to alter the name space name <code lang=\"en\">Category</code>.",
+ "babel-autocreate-abort": "Used as error message. Parameters:\n* $1 - the message {{msg-mw|babel-url}}",
+ "babel-autocreate-reason": "Edit summary for an automatically created Babel category page. Parameters:\n* $1 is a page title for information on Babel.",
+ "babel-autocreate-text-levels": "Text describing a category, at the top of the category page.\n\n* $1 is the level (0 to 5, or N).\n* $2 is a language name.\n* $3 is a language code (optional; for customisation).",
+ "babel-autocreate-text-main": "Text describing a category, at the top of the category page.\n\n* $1 is a language name.\n* $2 is a language code (optional; for customisation).",
+ "babel-autocreate-user": "{{optional}}",
+ "babel-0": "{{Babel Message Description|0}}",
+ "babel-1": "{{Babel Message Description|1}}",
+ "babel-2": "{{Babel Message Description|2}}",
+ "babel-3": "{{Babel Message Description|3}}",
+ "babel-4": "{{Babel Message Description|4}}",
+ "babel-5": "{{Babel Message Description|5}}",
+ "babel-N": "{{Babel Message Description|N}}",
+ "babel-0-n": "{{Babel Message Description|0|native=yes}}",
+ "babel-1-n": "{{Babel Message Description|1|native=yes}}",
+ "babel-2-n": "{{Babel Message Description|2|native=yes}}",
+ "babel-3-n": "{{Babel Message Description|3|native=yes}}",
+ "babel-4-n": "{{Babel Message Description|4|native=yes}}",
+ "babel-5-n": "{{Babel Message Description|5|native=yes}}",
+ "babel-N-n": "{{Babel Message Description|N|native=yes}}",
+ "babel-box-cellspacing": "{{notranslate}}\nInserted as the value of the <code>cellspacing</code> attribute in the HTML table of the outer box.",
+ "babel-box-cellpadding": "{{notranslate}}\nInserted as the value of the <code>cellpadding</code> attribute in the HTML table of the outer box.",
+ "babel-cellspacing": "{{notranslate}}\nInserted as the value of the <code>cellspacing</code> attribute in the HTML tables of the inner boxes.",
+ "babel-cellpadding": "{{notranslate}}\nInserted as the value of the <code>cellpadding</code> attribute in the HTML tables of the inner boxes.",
+ "babel-portal": "{{notranslate}}",
+ "babel-template": "{{Optional}}{{doc-important|Do not translate \"Template:\".}}\nThis message contains the template schema for additional templates that can be used in Babel. Parameters:\n* $1 is the parameter value used in the <nowiki>#babel</nowiki> parser tag.",
+ "babel-footer": "This text is used in the last entry (footer) of the outer box. It is a link anchor, if {{msg-mw|babel-footer-url}} is not empty, otherwise, it is only text. No footer is generated, when this text is empty."
+}
diff --git a/MLEB/Babel/i18n/qu.json b/MLEB/Babel/i18n/qu.json
new file mode 100644
index 00000000..5d7d8776
--- /dev/null
+++ b/MLEB/Babel/i18n/qu.json
@@ -0,0 +1,30 @@
+{
+ "@metadata": {
+ "authors": [
+ "AlimanRuna"
+ ]
+ },
+ "babel": "Ruraqmanta willay Babel",
+ "babel-desc": "<code>#babel</code> k'uskina antachatam yapan ruraqpa babel t'asranpi wachu kikinmanta kamariyta saqillanapaq kikinchasqa plantillakunata ch'aqtana atichinapaqpas",
+ "babel-url": "Project:Babel",
+ "babel-footer-url": ":Category:Babel - Ruraqkuna rimayninkama",
+ "babel-autocreate-abort": "Nisqayki ruraqpa sutinqa [[$1|Babel]] nisqapaq kikinmanta katiguriya kamarinapaq llamk'aptinmi manam kamariyta atinkichu.",
+ "babel-autocreate-reason": "Kikinmanta kamarispa [[$1|Babel]] katiguriya p'anqata.",
+ "babel-autocreate-text-levels": "Kay katiguriyapi ruraqkunaqa $2 nisqatam $1 yachaywan rimanku nisqankama.",
+ "babel-autocreate-text-main": "Kay katiguriyapi ruraqkunaqa $1 nisqatam rimanku nisqankama.",
+ "babel-0": "Kay ruraqqa [[$2|$3]]ta [[$1|manam]] rimanchu (icha ancha sasallata hap'iqan).",
+ "babel-1": "Kay ruraqqa [[$2|$3]]ta [[$1|aslla]] yachaywanmi riman.",
+ "babel-2": "Kay ruraqqa [[$2|$3]]ta [[$1|chawpi]] yachaywanmi riman.",
+ "babel-3": "Kay ruraqqa [[$2|$3]]ta [[$1|ñawparikusqa]] yachaywanmi riman.",
+ "babel-4": "Kay ruraqqa [[$2|$3]]ta [[$1|yaqa mama rimaynin hina]] yachaywanmi riman.",
+ "babel-5": "Kay ruraqqa [[$2|$3]]ta [[$1|amawtap]] yachayninwanmi riman.",
+ "babel-N": "Kay ruraqpa [[$1|mama siminqa]] [[$2|$3]]m.",
+ "babel-0-n": "Kay ruraqqa [[$2|Runa Simita]] [[$1|manam]] rimanchu (icha ancha sasallata hap'iqan).",
+ "babel-1-n": "Kay ruraqqa [[$2|Runa Simita]] [[$1|aslla]] yachaywanmi riman.",
+ "babel-2-n": "Kay ruraqqa [[$2|Runa Simita]] [[$1|chawpi]] yachaywanmi riman.",
+ "babel-3-n": "Kay ruraqqa [[$2|Runa Simita]] [[$1|ñawparikusqa]] yachaywanmi riman.",
+ "babel-4-n": "Kay ruraqqa [[$2|Runa Simita]] [[$1|yaqa mama rimaynin hina]] yachaywanmi riman.",
+ "babel-5-n": "Kay ruraqqa [[$2|Runa Simita]] [[$1|amawtap]] yachayninwanmi riman.",
+ "babel-N-n": "Kay ruraqpa [[$1|mama siminqa]] [[$2|Runa Simim]].",
+ "babel-footer": "Ruraqkuna rimayninkama"
+}
diff --git a/MLEB/Babel/i18n/rgn.json b/MLEB/Babel/i18n/rgn.json
new file mode 100644
index 00000000..7d520049
--- /dev/null
+++ b/MLEB/Babel/i18n/rgn.json
@@ -0,0 +1,29 @@
+{
+ "@metadata": {
+ "authors": [
+ "GerardM",
+ "Sentruper"
+ ]
+ },
+ "babel": "Babel d'e' navigador",
+ "babel-desc": "Chèrga so la 'funziòn parser' <code>#babel</code> par fè in mod che tòt i navigadur j épa e su schema Babel, acsè e' po mett dentar dj 'template'.",
+ "babel-url": "Prugèt:Babel",
+ "babel-autocreate-abort": "E' soranòm ch'te mess e' serv par la creaziòn automàtica dal categurej [[$1|Babel]] e anciòn u l' po druvè.",
+ "babel-autocreate-reason": "Creaziòn automàtica dla pàgina dla categurèja [[$1|Babel]].",
+ "babel-autocreate-text-levels": "Al persôn in sta categurèja j à la capacitè $1 d'savé la lèngua $2.",
+ "babel-autocreate-text-main": "Al parsôn in sta categurèja j fà vdè ch'j cnòs la lèngua $1.",
+ "babel-0": "Stû [[$1|u n'capès gnit]] d'[[$2|$3]] (o e' fa un mocc d'fadiga).",
+ "babel-1": "Stû e' [[$1|sa qvelcosa]] 'd [[$2|$3]].",
+ "babel-2": "Stû [[$1|us fa capì]] in [[$2|$3]].",
+ "babel-3": "Stû e' sa [[$1|dimondi]] e' [[$2|$3]].",
+ "babel-4": "Stû e' [[$1|sa dì nicôsa]] in [[$2|$3]].",
+ "babel-5": "Stû l'è un [[$1|profesiunesta]] de' [[$2|$3]].",
+ "babel-N": "Stû l'à tité e' [[$2|$3]] da [[$1|su mé]].",
+ "babel-0-n": "Stû [[$1|u n' capèss gnint]] d'[[$2|Rumagnôl]] (o e' fa un mocc d'fadiga).",
+ "babel-1-n": "Stû e' [[$1|sa cvalcvël]] d'[[$2|Rumagnôl]].",
+ "babel-2-n": "Stû [[$1|u s'fa capì]] in [[$2|Rumagnôl]].",
+ "babel-3-n": "Stû, e' [[$2|Rumagnôl]] [[$1|u l'sa dimondi]].",
+ "babel-4-n": "Stû e' [[$1|sa ignacôsa]] de' [[$2|Rumagnôl]].",
+ "babel-5-n": "Stû l'è un [[$1|prufesiunèstar]] de' [[$2|Rumagnôl]].",
+ "babel-N-n": "Stû l'à [[$2|titê e' Rumagnôl]] da [[$1|su mê]]."
+}
diff --git a/MLEB/Babel/i18n/rm.json b/MLEB/Babel/i18n/rm.json
new file mode 100644
index 00000000..ced76408
--- /dev/null
+++ b/MLEB/Babel/i18n/rm.json
@@ -0,0 +1,31 @@
+{
+ "@metadata": {
+ "authors": [
+ "Gion",
+ "Gion-andri"
+ ]
+ },
+ "babel": "infurmaziuns d'utilisader da Babel",
+ "babel-desc": "Agiunta la funcziun da generar automaticamain ina chascha cun las indicaziuns da babel davart l'utilisader e che pussibilitescha d'includer agens templates.",
+ "babel-url": "Project:Babel",
+ "babel-footer-url": ":Category:Babel - Utilisaders tenor lingua",
+ "babel-autocreate-abort": "Il num d'utilisader tschernì vegn utilisà per la creaziun automatica da categorias da [[$1|Babel]] e na po betg vegnir registrà.",
+ "babel-autocreate-reason": "Categoria da [[$1|Babel]] creada automaticamain.",
+ "babel-autocreate-text-levels": "Ils utilisaders en questa categoria han inditgà il nivel $1 per la lingua $2.",
+ "babel-autocreate-text-main": "Utilisaders en questa categoria han conuschientscha da la lingua $1.",
+ "babel-0": "Quest utilisader ha [[$1|naginas]] conuschientschas da [[$2|$3]] (u chapescha mo cun considerablas difficultads).",
+ "babel-1": "Quest utilisader ha conuschientschas [[$1|fundamentalas]] da [[$2|$3]].",
+ "babel-2": "Quest utilisader ha conuschientschas [[$1|d’in principiant avanzà]] da [[$2|$3]].",
+ "babel-3": "Quest utilisader ha conuschientschas [[$1|avanzadas]] da [[$2|$3]].",
+ "babel-4": "Quest utilisader sa [[$2|$3]] prest sco ina [[$1|persuna da lingua materna]].",
+ "babel-5": "Quest utilisader ha conuschientschas [[$1|professiunalas]] da [[$2|$3]].",
+ "babel-N": "Per quest utilisader è [[$2|$3]] la [[$1|lingua materna]].",
+ "babel-0-n": "Quest utilisader ha [[$1|naginas]] conuschientschas dal [[$2|rumantsch]] (u chapescha mo cun considerablas difficultads).",
+ "babel-1-n": "Quest utilisader ha conuschientschas [[$1|fundamentalas]] dal [[$2|rumantsch]].",
+ "babel-2-n": "Quest utilisader ha conuschientschas dal [[$2|rumantsch]] [[$1|d'in principiant avanzà]].",
+ "babel-3-n": "Quest utilisader ha conuschientschas [[$1|avanzads]] dal [[$2|rumantsch]].",
+ "babel-4-n": "Quest utilisader sa [[$2|rumantsch]] prest sco ina [[$1|persuna da lingua materna]].",
+ "babel-5-n": "Quest utilisader ha conuschientschas [[$1|professiunalas]] dal [[$2|rumantsch]].",
+ "babel-N-n": "Per quest utilisader è [[$2|rumantsch]] la [[$1|lingua materna]].",
+ "babel-footer": "Utilisaders tenor lingua"
+}
diff --git a/MLEB/Babel/i18n/ro.json b/MLEB/Babel/i18n/ro.json
new file mode 100644
index 00000000..162ff474
--- /dev/null
+++ b/MLEB/Babel/i18n/ro.json
@@ -0,0 +1,33 @@
+{
+ "@metadata": {
+ "authors": [
+ "Cin",
+ "Firilacroco",
+ "KlaudiuMihaila",
+ "Minisarm"
+ ]
+ },
+ "babel": "Informații Babel despre utilizator",
+ "babel-desc": "Adaugă funcția de parsare <code>#babel</code> pentru generarea automată a coloanei de cutii de utilizator babel, cu posibilitatea de a include formate personalizate",
+ "babel-url": "Project:Babel",
+ "babel-footer-url": ":Categorie:Babel - Utilizatori după limbă",
+ "babel-autocreate-abort": "Numele de utilizator specificat este folosit pentru crearea automată a categoriilor [[$1|Babel]] și nu poate fi înregistrat.",
+ "babel-autocreate-reason": "Crearea automată a categoriei [[$1|Babel]].",
+ "babel-autocreate-text-levels": "Utilizatorii din această categorie cunosc limba $2 la nivelul $1.",
+ "babel-autocreate-text-main": "Utilizatorii din această categorie cunosc limba $1.",
+ "babel-0": "Acest utilizator [[$1|nu]] are cunoștințe de [[$2|$3]] (sau înțelege cu mare dificultate).",
+ "babel-1": "Acest utilizator poate contribui cu un nivel [[$1|de bază]] de [[$2|$3]].",
+ "babel-2": "Acest utilizator poate contribui cu un nivel [[$1|intermediar]] de [[$2|$3]].",
+ "babel-3": "Acest utilizator poate contribui cu un nivel [[$1|avansat]] de [[$2|$3]].",
+ "babel-4": "Acest utilizator poate contribui cu un nivel [[$1|aproape nativ]] de [[$2|$3]].",
+ "babel-5": "Acest utilizator contribuie folosind un nivel [[$1|profesional]] de [[$2|$3]].",
+ "babel-N": "Acest utilizator este un vorbitor [[$1|nativ]] al [[$2|$3]].",
+ "babel-0-n": "Acest utilizator [[$1|nu]] are cunoștințe de [[$2|română]] (sau înțelege cu mare dificultate).",
+ "babel-1-n": "Acest utilizator poate contribui cu un nivel [[$1|de bază]] de [[$2|română]].",
+ "babel-2-n": "Acest utilizator poate contribui cu un nivel [[$1|intermediar]] de [[$2|română]].",
+ "babel-3-n": "Acest utilizator poate contribui cu un nivel [[$1|avansat]] de [[$2|română]].",
+ "babel-4-n": "Acest utilizator poate contribui cu un nivel [[$1|aproape nativ]] de [[$2|română]].",
+ "babel-5-n": "Acest utilizator contribuie folosind un nivel [[$1|profesional]] de [[$2|română]].",
+ "babel-N-n": "Acest utilizator este un vorbitor [[$1|nativ]] al [[$2|limbii române]].",
+ "babel-footer": "Utilizatori după limbă"
+}
diff --git a/MLEB/Babel/i18n/roa-tara.json b/MLEB/Babel/i18n/roa-tara.json
new file mode 100644
index 00000000..7d7bccfa
--- /dev/null
+++ b/MLEB/Babel/i18n/roa-tara.json
@@ -0,0 +1,31 @@
+{
+ "@metadata": {
+ "authors": [
+ "Joetaras",
+ "Kwj2772"
+ ]
+ },
+ "babel": "Babel 'mbormaziune sus a l'utende",
+ "babel-desc": "Aggiunge 'a funzione de analise <code>#babel</code> pe permettere 'a generazione automatezzate de 'na culonne babel cu 'a possibbeletà de 'ngludere template personalizzare",
+ "babel-url": "Project:Babel",
+ "babel-footer-url": ":Category:Babel - Utinde pe lènghe",
+ "babel-autocreate-abort": "'U nome de l'utende ca tu è specificate jè ausate pa categorije de auto ccrejazione de [[$1|Babel]] e non ge pò essere reggistrate.",
+ "babel-autocreate-reason": "Stoche a ccreje automatecamende 'a pàgene de categorije [[$1|Babel]].",
+ "babel-autocreate-text-levels": "L'utinde jndr'à sta categorije indichescene ca lore onne 'nu levèlle $1 pa lènghe $2.",
+ "babel-autocreate-text-main": "L'utinde jndr'à sta categorije indichescene ca onne 'na canoscenze d'a lènghe $1.",
+ "babel-0": "'Stu crestiáne ste'''[[$1|'nderre a le carvune]]''' cu 'u '''[[$2|$3]]'''.",
+ "babel-1": "'Stu crestiáne pô ajutà' cu 'na canoscènze '''[[$1|tèrra-tèrre]]''' d'u '''[[$2|$3]]'''.",
+ "babel-2": "'Stu crestiáne pô ajutà' cu 'nna canoscènze '''[[$1|'ndermèdie]]''' d'u '''[[$2|$3]]'''.",
+ "babel-3": "'Stu crestiáne pô ajutà' cu 'nna canoscènze '''[[$1|accellènde]]''' d'u '''[[$2|$3]]'''.",
+ "babel-4": "Stu crestiáne quase quase parle 'u '''[[$2|$3]]''' cumme a 'a '''[[$1|lènga madre]]'''.",
+ "babel-5": "Stu crestiáne è proprie 'nu '''[[$1|professore]]''' de '''[[$2|$3]]'''.",
+ "babel-N": "Quìste utende jè de [[$1|madrelènga]] [[$2|$3]].",
+ "babel-0-n": "'Stu crestiáne ste'''[[$1|'nderre a le carvune]]''' cu 'u '''[[$2|tarandine]]''' (o 'u capisce cu nu sacche de difficoltà).",
+ "babel-1-n": "'Stu crestiáne pô ajutà' cu 'na canoscènze '''[[$1|tèrra-tèrre]]''' d'u '''[[$2|tarandine]]'''.",
+ "babel-2-n": "'Stu crestiáne pô ajutà' cu 'nna canoscènze '''[[$1|'ndermèdie]]''' d'u '''[[$2|tarandine]]'''.",
+ "babel-3-n": "'Stu crestiáne pô ajutà' cu 'nna canoscènze '''[[$1|accellènde]]''' d'u '''[[$2|tarandine]]'''.",
+ "babel-4-n": "Stu crestiáne quase quase parle 'u '''[[$2|tarandine]]''' cumme a 'a '''[[$1|lènga madre]]'''.",
+ "babel-5-n": "Stu crestiáne è proprie 'nu '''[[$1|professore]]''' de '''[[$2|tarandine]]'''.",
+ "babel-N-n": "Quìste utende jè de [[$1|madrelènga]] [[$2|tarandine]].",
+ "babel-footer": "Utinde pe lènghe"
+}
diff --git a/MLEB/Babel/i18n/ru.json b/MLEB/Babel/i18n/ru.json
new file mode 100644
index 00000000..af747e88
--- /dev/null
+++ b/MLEB/Babel/i18n/ru.json
@@ -0,0 +1,39 @@
+{
+ "@metadata": {
+ "authors": [
+ "Abanima",
+ "EugeneZelenko",
+ "Express2000",
+ "Ferrer",
+ "Gleb Borisov",
+ "Kaganer",
+ "Ole Yves",
+ "Spiritia",
+ "Александр Сигачёв"
+ ]
+ },
+ "babel": "Сведения о языках участников (Вавилон)",
+ "babel-desc": "Добавляет функцию парсера <code>#babel</code>, позволяющую автоматически создавать блок с информацией о языках, которыми владеет участник, с возможностью подключения и других шаблонов.",
+ "babel-url": "Project:Вавилон",
+ "babel-footer-url": ":Category:{{ns:Project}}:Участники по языкам",
+ "babel-autocreate-abort": "Указанное имя участника используется для автоматического создания категорий [[$1|Вавилон]] и не может быть зарегистрировано.",
+ "babel-autocreate-reason": "Автоматическое создание страницы категории [[$1|Вавилон]].",
+ "babel-autocreate-text-levels": "Участники из этой категории указали уровень знаний $1 для языка «$2».",
+ "babel-autocreate-text-main": "Участники в этой категории указали знание языка «$1».",
+ "babel-0": "[[$2|$3]] — [[$1|не владеет]] (или с трудом понимает)",
+ "babel-1": "[[$2|$3]] — [[$1|начальный уровень]]",
+ "babel-2": "[[$2|$3]] — [[$1|средний уровень]]",
+ "babel-3": "[[$2|$3]] — [[$1|хороший уровень]]",
+ "babel-4": "[[$2|$3]] — [[$1|почти как родной]]",
+ "babel-5": "[[$2|$3]] — [[$1|профессиональный уровень]]",
+ "babel-N": "[[$2|$3]] — [[$1|родной]]",
+ "babel-0-n": "{{GENDER:$4|Этот участник|Эта участница}} [[$1|не владеет]] [[$2|русским языком]] (или понимает его с трудом).",
+ "babel-1-n": "{{GENDER:$4|Этот участник|Эта участница}} владеет [[$2|русским языком]] на [[$1|начальном уровне]].",
+ "babel-2-n": "{{GENDER:$4|Этот участник|Эта участница}} владеет [[$2|русским языком]] на [[$1|среднем уровне]].",
+ "babel-3-n": "{{GENDER:$4|Этот участник|Эта участница}} [[$1|свободно]] владеет [[$2|русским языком]].",
+ "babel-4-n": "{{GENDER:$4|Этот участник|Эта участница}} владеет [[$2|русским языком]] [[$1|почти как родным]].",
+ "babel-5-n": "{{GENDER:$4|Этот участник|Эта участница}} [[$1|профессионально]] владеет [[$2|русским языком]].",
+ "babel-N-n": "Для {{GENDER:$4|этого участника|этой участницы}} [[$2|русский язык]] является [[$1|родным]].",
+ "babel-template": "Template:Участник $1",
+ "babel-footer": "Участники по языкам"
+}
diff --git a/MLEB/Babel/i18n/rue.json b/MLEB/Babel/i18n/rue.json
new file mode 100644
index 00000000..90c4a241
--- /dev/null
+++ b/MLEB/Babel/i18n/rue.json
@@ -0,0 +1,31 @@
+{
+ "@metadata": {
+ "authors": [
+ "Gazeb",
+ "Tkalyn"
+ ]
+ },
+ "babel": "Языковы здатности хоснователя",
+ "babel-desc": "Придавать функцію <code><nowiki>{{#babel:}}</nowiki></code>, котра доволює автоматічну творбу рамків з інформаціями о языковых способностях хоснователя з можностёв хосновати властны шаблоны.",
+ "babel-url": "Project:Бабілон",
+ "babel-footer-url": ":Катеґорія:Вавілон – Хоснователї за языками",
+ "babel-autocreate-abort": "Зазначене імя хоснователя ся хоснує на катеґорію [[$1|Бабілон]] і не може быти реґістроване",
+ "babel-autocreate-reason": "Автоматічне створїня сторінкы катеґорії [[$1|Бабілон]].",
+ "babel-autocreate-text-levels": "Хоснователї у тій катеґорії означіли свою рівень {{GRAMMAR:genitiv|$2}} як $1.",
+ "babel-autocreate-text-main": "Участници в тій катеґорії вказали знаня языка $1.",
+ "babel-0": "{{GENDER:$4|Сесь хосновательl|Сеся хоснователька|Сесь хоснователь}} [[$1|не розуміть]] [[$2|$3]] (або розуміть дуже плано).",
+ "babel-1": "Сесь хоснователь мать [[$1|основны]] знаня [[$2|{{GRAMMAR:2sg|$3}}]].",
+ "babel-2": "Сесь хоснователь знать [[$2|$3]] на [[$1|середнёму]] рівні.",
+ "babel-3": "Сесь хоснователь знать [[$2|$3]] на [[$1|высокому]] рівнї.",
+ "babel-4": "Сесь хоснователь знать [[$2|$3]] майже [[$1|як рідный]].",
+ "babel-5": "Сесь хоснователь [[$1|професійно]] знать [[$2|$3]].",
+ "babel-N": "Про того хоснователя [[$2|$3]] є [[$1|рідным]].",
+ "babel-0-n": "Сесь хосновач [[$1|не говорить]] [[$2|русинськым языком]] (ци тяжко го розуміє).",
+ "babel-1-n": "Сесь хосновач говорить [[$2|по-русинськы]] на [[$1|начальному рôвні]].",
+ "babel-2-n": "Сесь хосновач говорить [[$2|по-русинськы]] на [[$1|середньому рôвні]].",
+ "babel-3-n": "Сесь хосновач говорить [[$2|по-русинськы]] на [[$1|високому рôвні]].",
+ "babel-4-n": "Сесь хосновач говорить [[$2|русинськым языком]] майже ги [[$1|рôдным]].",
+ "babel-5-n": "Сесь хосновач говорить [[$2|по-русинськы]] на [[$1|професіональному рôвні]].",
+ "babel-N-n": "Для сього хосновача [[$2|русинськый язык]] - [[$1|рôдный]].",
+ "babel-footer": "Хоснователї за языком"
+}
diff --git a/MLEB/Babel/i18n/rw.json b/MLEB/Babel/i18n/rw.json
new file mode 100644
index 00000000..378b566a
--- /dev/null
+++ b/MLEB/Babel/i18n/rw.json
@@ -0,0 +1,28 @@
+{
+ "@metadata": {
+ "authors": [
+ "Davykamanzi"
+ ]
+ },
+ "babel": "Informasiyo z'ukoresha za Babel",
+ "babel-footer-url": ":Icyiciro:Babel - Abakoresha hakurikijwe indimi",
+ "babel-autocreate-abort": "Izina ry'ukoresha wahisemo rirakoreshwa guhanga icyiciro cya [[$1|Babel]] byikora rero ntabwo rishobora kwandikishwa.",
+ "babel-autocreate-reason": "Guhanga ipaje y'icyiciro cya [[$1|Babel]] byikora.",
+ "babel-autocreate-text-levels": "Abakoresha muri iki cyiciro bagaragaza ko bagira urwego $1 rw'ubumenyi bw'ururimi $2.",
+ "babel-autocreate-text-main": "Abakoresha muri iki cyiciro bagaragaza ko bagira ubumenyi bw'ururimi $1.",
+ "babel-0": "Uyu ukoresha [[$1|ntabwo agira]] ubumenyi bw'[[$2|$3]] (cyangwa agira ibibazo byinshi kucyumva).",
+ "babel-1": "Uyu ukoresha agira ubumenyi [[$1|bucye]] bw'[[$2|$3]].",
+ "babel-2": "Uyu ukoresha agira ubumenyi [[$1|buringaniye]] bw'[[$2|$3]].",
+ "babel-3": "Uyu ukoresha agira ubumenyi [[$1|bwinshi]] bw'[[$2|$3]], ariko butari nk'ubw'umwenegihugu.",
+ "babel-4": "Uyu ukoresha agira ubumenyi bw'[[$2|$3]], [[$1|hafi nk'ubw'umwenegihugu]].",
+ "babel-5": "Uyu ukoresha agira ubumenyi bw'[[$1|inzobere]] bw'[[$2|$3]].",
+ "babel-N": "Uyu ukoresha yumva kandi akavuga [[$2|$3]] [[$1|nk'umwenegihugu]].",
+ "babel-0-n": "Uyu ukoresha [[$1|ntabwo agira]] ubumenyi bw'[[$2|icyongereza]] (cyangwa agira ibibazo byinshi kucyumva).",
+ "babel-1-n": "Uyu ukoresha agira ubumenyi [[$1|bucye]] bw'[[$2|icyongereza]].",
+ "babel-2-n": "Uyu ukoresha agira ubumenyi [[$1|buringaniye]] bw'[[$2|icyongereza]].",
+ "babel-3-n": "Uyu ukoresha agira ubumenyi [[$1|bwinshi]] bw'[[$2|icyongereza]], ariko butari nk'ubw'umuwenegihugu.",
+ "babel-4-n": "Uyu ukoresha agira ubumenyi bw'[[$2|icyongereza]], [[$1|hafi nk'ubw'umwenegihugu]].",
+ "babel-5-n": "Uyu ukoresha agira ubumenyi bw'[[$1|inzobere]] bw'[[$2|icyongereza]].",
+ "babel-N-n": "Uyu ukoresha agira ubumenyi bw'[[$2|icyongereza]] [[$1|nk'ubw'umwenegihugu]].",
+ "babel-footer": "Abakoresha hakurikijwe indimi"
+}
diff --git a/MLEB/Babel/i18n/sa.json b/MLEB/Babel/i18n/sa.json
new file mode 100644
index 00000000..014cefec
--- /dev/null
+++ b/MLEB/Babel/i18n/sa.json
@@ -0,0 +1,31 @@
+{
+ "@metadata": {
+ "authors": [
+ "Kaustubh",
+ "Shubha"
+ ]
+ },
+ "babel": "'बाबेल'योजकस्य विवरणम्",
+ "babel-desc": "<code>#babel</code> इत्येतत् पार्सर्-क्रियां योजयति येन कस्टं-फलकानि योजयितुं शक्तस्य बाबेल्-उपयोक्तृमञ्जूषापङ्क्तेः स्वयमुत्पादन सहकरोति ।",
+ "babel-url": "Project:बाबेल्",
+ "babel-footer-url": ":Category:बाबेल् - भाषाशः उपयोक्तारः",
+ "babel-autocreate-abort": "निर्दिष्टं योजकनाम [[$1|Babel]] वर्गस्य स्वयं निर्माणाय उपयुक्तम् । अतः पञ्जीकरणं न शक्यते ।",
+ "babel-autocreate-reason": "[[$1|बाबेल्]] इत्येतत् वर्गपृष्ठं स्वयं निर्मीयमाणमस्ति ।",
+ "babel-autocreate-text-levels": "अस्मिन् वर्गे विद्यमानानां योजकानां कौशलं $2 भाषायां $1 स्तरयुतः इत्यर्थः ।",
+ "babel-autocreate-text-main": "अस्मिन् वर्गे विद्यमानाः योजकाः $1 भाषां जानन्ति इत्यर्थः ।",
+ "babel-0": "एष उपयोजक: [[$2|$3]] लिखितुं [[$1|न]] शक्नोति (अतीव प्रयत्नान्ते पढितुं शक्नोति च)।",
+ "babel-1": "एष उपयोजक: [[$1|प्राथमिक]]-[[$2|$3]] लिखितुं शक्नोति।",
+ "babel-2": "एष उपयोजक: [[$1|मध्यम]]-[[$2|$3]] लिखितुं शक्नोति।",
+ "babel-3": "एष उपयोजकः [[$1|उत्तम]]-[[$2|$3]] लिखितुं शक्नोति।",
+ "babel-4": "एष उपयोजक: [[$1|उच्चतम]]-[[$2|$3]] लिखितुं शक्नोति।",
+ "babel-5": "एष उपयोजक: [[$1|अति-उच्चतम]]-[[$2|$3]] लिखितुं शक्नोति।",
+ "babel-N": "एष उपयोजकस्य [[$1|मातृभाषा]] [[$2|$3]] अस्ति।",
+ "babel-0-n": "एष उपयोजक: [[$2|संस्कृते]] लिखितुं [[$1|न]] शक्नोति (अतीव प्रयत्नान्ते पढितुं शक्नोति च)।",
+ "babel-1-n": "एष उपयोजक: [[$1|प्राथमिक]]-[[$2|संस्कृते]] लिखितुं शक्नोति।",
+ "babel-2-n": "एष उपयोजक: [[$1|मध्यम]]-[[$2|संस्कृते]] लिखितुं शक्नोति।",
+ "babel-3-n": "एष उपयोजकः [[$1|उत्तम]]-[[$2|संस्कृते]] लिखितुं शक्नोति।",
+ "babel-4-n": "एष उपयोजक: [[$1|उच्चतम]]-[[$2|संस्कृते]] लिखितुं शक्नोति।",
+ "babel-5-n": "एष उपयोजक: [[$1|अति-उच्चतम]]-[[$2|संस्कृते]] लिखितुं शक्नोति।",
+ "babel-N-n": "एष उपयोजकस्य [[$1|मातृभाषा]] [[$2|संस्कृतम्‌]] अस्ति।",
+ "babel-footer": "भाषाशः उपयोक्तारः"
+}
diff --git a/MLEB/Babel/i18n/sah.json b/MLEB/Babel/i18n/sah.json
new file mode 100644
index 00000000..6a41c596
--- /dev/null
+++ b/MLEB/Babel/i18n/sah.json
@@ -0,0 +1,30 @@
+{
+ "@metadata": {
+ "authors": [
+ "HalanTul"
+ ]
+ },
+ "babel": "Кыттааччы тылы билиитэ (Вавилон)",
+ "babel-desc": "<code>#babel</code> парсер функциятын эбэр, ол атын халыыптары туһанан тыллары билии туһунан колуоҥканы оҥорого туттуллар.",
+ "babel-url": "Project:Вавилон",
+ "babel-footer-url": ":Category:Babel - кыттааччылар тылы билиилэринэн",
+ "babel-autocreate-abort": "Талбыт аатыҥ [[$1|Вавилон]] категорияларын аптамаатынан оҥорорго туттуллар эбит, онон туттуллар кыаҕа суох.",
+ "babel-autocreate-reason": "[[$1|Вавилон]] категориятын аптамаатынан оҥоруу.",
+ "babel-autocreate-text-levels": "Бу категорияҕа киирээччилэр $2 тылы маннык таһымынан билэбит диэбиттэр: $1.",
+ "babel-autocreate-text-main": "Бу категорияҕа киирээччилэр тылы билиилэрин таһыма $1.",
+ "babel-0": "[[$2|$3]] — [[$1|билбэт]] (эбэтэр нэһиилэ өйдүүр)",
+ "babel-1": "[[$2|$3]] — [[$1|кыратык билэр]]",
+ "babel-2": "[[$2|$3]] — [[$1|орто таһым]]",
+ "babel-3": "[[$2|$3]] — [[$1|бэркэ билэр]]",
+ "babel-4": "[[$2|$3]] — [[$1|төрөөбүт тылын курдук билэр]]",
+ "babel-5": "[[$2|$3]] — [[$1|анал үөрэхтээх таһыма]]",
+ "babel-N": "[[$2|$3]] — [[$1|төрөөбүт тыла]]",
+ "babel-0-n": "{{GENDER:$4|Бу эр киһи|Бу дьахтар}} [[$2|саха тылын]] [[$1|билбэт]] (эбэтэр мөлтөхтүк өйдүүр).",
+ "babel-1-n": "{{GENDER:$4|Бу кыттааччы эр киһи|Бу кыттааччы дьахтар}} [[$2|саха тылын]] [[$1|син кыратык]] билэр.",
+ "babel-2-n": "{{GENDER:$4|Бу кыттааччы эр киһи|Бу кыттааччы дьахтар}} [[$2|саха тылын]] [[$1|ортотук]] билэр.",
+ "babel-3-n": "{{GENDER:$4|Бу кыттааччы эр киһи|Бу кыттааччы дьахтар}} [[$2|саха тылын]] [[$1|бэркэ]] билэр.",
+ "babel-4-n": "{{GENDER:$4|Бу кыттааччы эр киһи|Бу кыттааччы дьахтар}} [[$2|саха тылын]] [[$1|төрөөбүт тылын курдук]] билэр.",
+ "babel-5-n": "{{GENDER:$4|Бу кыттааччы эр киһи|Бу кыттааччы дьахтар}} [[$2|саха тылын]] [[$1|тыл үөрэхтээҕин таһымынан]] билэр.",
+ "babel-N-n": "{{GENDER:$4|Бу кыттааччы эр киһиэхэ|Бу кыттааччы дьахтарга}} [[$2|саха тыла]] [[$1|төрөөбүт тыла]] буолар.",
+ "babel-footer": "Кыттааччылар тылларынан"
+}
diff --git a/MLEB/Babel/i18n/sat.json b/MLEB/Babel/i18n/sat.json
new file mode 100644
index 00000000..56906428
--- /dev/null
+++ b/MLEB/Babel/i18n/sat.json
@@ -0,0 +1,14 @@
+{
+ "@metadata": {
+ "authors": [
+ "Salvator"
+ ]
+ },
+ "babel": "Luguburu beboharkoaḱ badae lạgit́",
+ "babel-url": "Project:Luguburu",
+ "babel-footer-url": ":Category:Luguburu - pạrsi beboharko leka",
+ "babel-autocreate-text-levels": "Noa dhara/ketagoriren hoṛkodo kạmidare $1 pạrsi lạgit́ $2.",
+ "babel-autocreate-text-main": "Bujhauḱkana noa dhararen hoṛkodo $1 pạrsiko baḍaegea.",
+ "babel-0": "Nui hoṛdo [[$1|bae]] baḍaekana [[$2|$3]] ( se thoṛagan kosṭo ńõḱté bujhạwa).",
+ "babel-1": "Nuido hoṛdo [[$1|buṭa]] reaḱ [[$2|$3]] baḍae menaḱtaya."
+}
diff --git a/MLEB/Babel/i18n/sc.json b/MLEB/Babel/i18n/sc.json
new file mode 100644
index 00000000..bde2676d
--- /dev/null
+++ b/MLEB/Babel/i18n/sc.json
@@ -0,0 +1,33 @@
+{
+ "@metadata": {
+ "authors": [
+ "Andria",
+ "Gloria sah",
+ "Marzedu",
+ "Taxandru"
+ ]
+ },
+ "babel": "Babel impitadore",
+ "babel-desc": "Aciungit sa funtzioni parser <code>#babel</code> pro permitiri sa generatzioni automatica de una colunna box impitadore babel cun sa possibilidade de insertai templates personalitzaus",
+ "babel-url": "Project:Babel",
+ "babel-footer-url": ":Category:Babel - Impitadores pro limba",
+ "babel-autocreate-abort": "Su nùmene impitadore ispetzificau est impreadu pro sa creatzione automatiga de is categorias [[$1|Babel]] e non podet èssere registradu.",
+ "babel-autocreate-reason": "Crea automatigamente sa pàgina de sa categoria [[$1|Babel]]",
+ "babel-autocreate-text-levels": "Is impitadores in custa categoria indicant de arrenèschere a comunicare in $2 cun unu livellu de connoschèntzia $1.",
+ "babel-autocreate-text-main": "Is impitadores de custa categoria indicant de arrenèschere a comunicare in $1.",
+ "babel-0": "Custu impitadore [[$1|non]] connoschet su [[$2|$3]] (o ddu cumprendet cun aprentu mannu).",
+ "babel-1": "Custu impitadore tenet una connoscéntzia [[$1|bàsica]] de su [[$2|$3]].",
+ "babel-2": "Custu impitadore tenet una connoscéntzia [[$1|mèdia]] de su [[$2|$3]].",
+ "babel-3": "Custu impitadore tenet una connoscéntzia [[$1|avantzada]] de su [[$2|$3]].",
+ "babel-4": "Custu impitadore tenet una connoscéntzia [[$1|cante sa limba mama]] de su [[$2|$3]].",
+ "babel-5": "Custu impitadore tenet una connoscéntzia [[$1|professionale]] de su [[$2|$3]].",
+ "babel-N": "Custu impitadore faeddat su [[$2|$3]] comente [[$1|limba mama]].",
+ "babel-0-n": "Custu impitadore [[$1|non cumprendet]] su '''[[$2|Sardu]]''', o ddu cumprendet cun aprentu mannu.",
+ "babel-1-n": "Custu impitadore podet azudare, ca unu '''[[$1|azicu]]''' de '''[[$2|Sardu]]''' lu connoschet.",
+ "babel-2-n": "Custu impitadore podet azudare, ca connoschet su '''[[$2|Sardu]]''' e lu '''[[$1|cumprendet]]'''.",
+ "babel-3-n": "Custu impitadore potet azudare '''[[$1|meda]]''' pro ite ischit faeddare e iscrìere su '''[[$2|Sardu]]'''.",
+ "babel-4-n": "Custu impitadore faeddat su '''[[$2|Sardu]]''' in modu '''[[$1|perfetu]]'''.",
+ "babel-5-n": "Custu impitadore connoschet su [[$2|Sardu]] a livellu [[$1|profesionale]].",
+ "babel-N-n": "Custu impitadore faeddat su [[$2|Sardu]] comente [[$1|limba mama]].",
+ "babel-footer": "Impitadores pro limba"
+}
diff --git a/MLEB/Babel/i18n/scn.json b/MLEB/Babel/i18n/scn.json
new file mode 100644
index 00000000..005fbdac
--- /dev/null
+++ b/MLEB/Babel/i18n/scn.json
@@ -0,0 +1,33 @@
+{
+ "@metadata": {
+ "authors": [
+ "Gloria sah",
+ "Melos",
+ "Santu"
+ ]
+ },
+ "babel": "Nfurmazzioni di Babel supra a l'utenti",
+ "babel-desc": "Junci la parser function <code>#babel</code> pi fari la ginirazzioni autumàtica di na culonna babel utenti cu la pussibbilitati di nclùdiri template pirsunalizzati",
+ "babel-url": "Project:Babel",
+ "babel-footer-url": ":Category:Babel - Utenti pi lingua",
+ "babel-autocreate-abort": "Lu nomu utenti spicificatu è usatu pâ criazzioni autumàtica di catigurìi [[$1|Babel]] e non pò èssiri riggistratu.",
+ "babel-autocreate-reason": "Criu autumàticamenti la pàggina dâ catigurìa [[$1|Babel]].",
+ "babel-autocreate-text-levels": "L'utenti nti sta catigurìa dìciunu ca d'aviri nu liveddu di canuscenza $1 dâ lingua $2.",
+ "babel-autocreate-text-main": "L'utenti nti sta catigurìa dìciunu ca canùsciunu la lingua $1.",
+ "babel-autocreate-user": "Babel AutoCreate",
+ "babel-0": "St'utenti [[$1|nun canusci]] lu [[$2|$3]], o sulu pò liggìrilu nanticchia.",
+ "babel-1": "St'utenti pò cuntribbuìricci c'un [[$2|$3]] ôn [[$1|liveddu vasciu]].",
+ "babel-2": "St'utenti pò cuntribbuìricci c'un [[$2|$3]] ôn [[$1|liveddu mediu]].",
+ "babel-3": "St'utenti pò cuntribbuìricci c'un [[$2|$3]] ôn [[$1|liveddu avanzatu]].",
+ "babel-4": "St'utenti canusci lu [[$2|$3]] quasi comu la sò [[$1|lingua matri]].",
+ "babel-5": "St'utenti pò cuntribbuìricci c'un [[$2|$3]] ôn liveddu [[$1|prufissionali]].",
+ "babel-N": "St'utenti pò cuntribbuìricci c'un liveddu [[$1|matrilingua]] 'n [[$2|$3]].",
+ "babel-0-n": "St'utenti [[$1|non sapi cumunicari]] 'n [[$2|sicilianu]] (o sulu lu capisci cu assai difficultati).",
+ "babel-1-n": "St'utenti pò cuntribbuìri cu nu liveddu [[$1|nicu]] 'n [[$2|sicilianu]].",
+ "babel-2-n": "St'utenti pò cuntribbuiri cu nu liveddu [[$1|minzanu]] 'n [[$2|sicilianu]].",
+ "babel-3-n": "St'utenti pò cuntribbuiri cu nu liveddu [[$1|àutu]] 'n [[$2|sicilianu]].",
+ "babel-4-n": "St'utenti pò cuntribbuiri cu nu liveddu [[$1|quasi matrilingua]] 'n [[$2|sicilianu]].",
+ "babel-5-n": "St'utenti pò cuntribbuiri cu nu liveddu [[$1|prufussiunali]] 'n [[$2|sicilianu]].",
+ "babel-N-n": "St'utenti pò cuntribbuiri c'un liveddu [[$1|matrilingua]] 'n [[$2|sicilianu]].",
+ "babel-footer": "Utenti pi lingua"
+}
diff --git a/MLEB/Babel/i18n/sco.json b/MLEB/Babel/i18n/sco.json
new file mode 100644
index 00000000..21ba0457
--- /dev/null
+++ b/MLEB/Babel/i18n/sco.json
@@ -0,0 +1,16 @@
+{
+ "@metadata": {
+ "authors": [
+ "Purodha",
+ "John Reid"
+ ]
+ },
+ "babel-1": "This uiser can contreebute wi ae [[$1|laich]] level o [[$2|$3]].",
+ "babel-2": "This uiser can contreebute wi ae [[$1|middlin]] level o [[$2|$3]].",
+ "babel-3": "This uiser can contreebute wi ae [[$1|heich]] level o [[$2|$3]].",
+ "babel-N": "This uiser haes [[$2|$3]] aes ae [[$1|mither tung]].",
+ "babel-1-n": "This uiser can contreebute wi ae [[$1|laich]] level o [[$2|Scots]].",
+ "babel-2-n": "This uiser can contreebute wi ae [[$1|middlin]] level o [[$2|Scots]].",
+ "babel-3-n": "This uiser can contreebute wi ae [[$1|heich]] level o [[$2|Scots]].",
+ "babel-N-n": "This uiser haes [[$2|Scots]] aes ae [[$1|mither tung]]."
+}
diff --git a/MLEB/Babel/i18n/sd.json b/MLEB/Babel/i18n/sd.json
new file mode 100644
index 00000000..8211765d
--- /dev/null
+++ b/MLEB/Babel/i18n/sd.json
@@ -0,0 +1,10 @@
+{
+ "@metadata": {
+ "authors": [
+ "Aursani"
+ ]
+ },
+ "babel-5": "هن يُوزر کي [[$2|$3]] جي [[$1|پيشورانه]] ڄاڻ آهي.",
+ "babel-1-n": "هن يُوزر کي [[$2|انگريزي]]ءَ جي [[$1|بنيادي]] ڄاڻ آهي.",
+ "babel-5-n": "هن يُوزر کي [[$2|انگريزي]]ءَ جي [[$1|پيشورانه]] ڄاڻ آهي."
+}
diff --git a/MLEB/Babel/i18n/sdc.json b/MLEB/Babel/i18n/sdc.json
new file mode 100644
index 00000000..a98a48bb
--- /dev/null
+++ b/MLEB/Babel/i18n/sdc.json
@@ -0,0 +1,28 @@
+{
+ "@metadata": {
+ "authors": [
+ "Jun Misugi"
+ ]
+ },
+ "babel": "Infuimmazioni babel di l'utenti",
+ "babel-url": "Project:Babel",
+ "babel-footer-url": ":Category:Babel - Utenti pa linga",
+ "babel-autocreate-reason": "Crea automatiggamenti la categuria [[$1|Babel]].",
+ "babel-autocreate-text-levels": "Utenti in chistha categuria hani cunnisciènzia di lu libellu $1 i' la linga $2.",
+ "babel-autocreate-text-main": "Utenti in chistha categuria hani cunnisciènzia di la linga $1.",
+ "babel-0": "Chisthu utenti [[$1|nò]] ha cunnisciènzia di [[$2|$3]] (o soru pó cumprindillu cun difficulthai umbè manna).",
+ "babel-1": "Chisthu utenti pó cuntribuì cun un libellu [[$1|símprizi]] di [[$2|$3]].",
+ "babel-2": "Chisthu utenti pó cuntribuì cun un libellu [[$1|mèdiu]] di [[$2|$3]].",
+ "babel-3": "Chisthu utenti pó cuntribuì cun un libellu [[$1|abanzaddu]] di [[$2|$3]].",
+ "babel-4": "Chisthu utenti fabedda [[$2|$3]] [[$1|guasi cumenti una linga madre]].",
+ "babel-5": "Chisthu utenti fabedda [[$2|$3]] cun un libellu [[$1|prufissionari]].",
+ "babel-N": "Chisthu utenti fabedda [[$2|$3]] cumenti [[$1|linga madre]].",
+ "babel-0-n": "Chisthu utenti [[$1|nò]] ha cunnisciènzia di [[$2|sassaresu]] (o soru pó cumprindillu cun difficulthai umbè manna).",
+ "babel-1-n": "Chisthu utenti pó cuntribuì cun un libellu [[$1|símprizi]] di [[$2|sassaresu]].",
+ "babel-2-n": "Chisthu utenti pó cuntribuì cun un libellu [[$1|mèdiu]] di [[$2|sassaresu]].",
+ "babel-3-n": "Chisthu utenti pó cuntribuì cun un libellu [[$1|abanzaddu]] di [[$2|sassaresu]].",
+ "babel-4-n": "Chisthu utenti fabedda [[$2|sassaresu]] [[$1|guasi cumenti una linga madre]].",
+ "babel-5-n": "Chisthu utenti fabedda [[$2|sassaresu]] cun un libellu [[$1|prufissionari]].",
+ "babel-N-n": "Chisthu utenti fabedda [[$2|sassaresu]] cumenti [[$1|linga madre]].",
+ "babel-footer": "Utenti pa linga"
+}
diff --git a/MLEB/Babel/i18n/se.json b/MLEB/Babel/i18n/se.json
new file mode 100644
index 00000000..f791979e
--- /dev/null
+++ b/MLEB/Babel/i18n/se.json
@@ -0,0 +1,13 @@
+{
+ "@metadata": {
+ "authors": [
+ "GerardM"
+ ]
+ },
+ "babel-1-n": "Dát geavaheaddji máhttá [[$1|veaháš]] [[$2|sámegiela]]",
+ "babel-2-n": "Dát geavaheaddji máhttá [[$2|sámegiela]] [[$1|viehka bures]]",
+ "babel-3-n": "Dát geavaheaddji máhttá [[$2|sámegiela]] [[$1|hui bures]]",
+ "babel-4-n": "Dát geavaheaddji máhttá [[$2|sámegiela]] [[$1|dego eatnigiela]]",
+ "babel-5-n": "Dát geavaheaddji máhttá [[$2|sámegiela]] [[$1|ámmátlaš dásis]]",
+ "babel-N-n": " Dát geavaheaddji máhttá [[$2|sámegiela]] [[$1|eatnigiellan]]"
+}
diff --git a/MLEB/Babel/i18n/sg.json b/MLEB/Babel/i18n/sg.json
new file mode 100644
index 00000000..80cbfd96
--- /dev/null
+++ b/MLEB/Babel/i18n/sg.json
@@ -0,0 +1,30 @@
+{
+ "@metadata": {
+ "authors": [
+ "Mdkidiri"
+ ]
+ },
+ "babel": "Sango tî nyîmbâ sô Bäbêle awara",
+ "babel-desc": "Zîa mbênî likua tî kïröngö sêndïäyângâ <code>#babel</code> daä, tîtene aseka bîakü bîakü mbênî kopu tî wasärängö-kua na Bäbêle, sï alîngbi ngâ tî zîa na yâ nî ângôbo tî sêndo.",
+ "babel-url": "Project:Bäbêle",
+ "babel-footer-url": ":Fündä:Bäbêle - Âwasärängö-kua tî ¨yângâködörö ôko ôko",
+ "babel-autocreate-abort": "Ïrï tî mo tî wasimbä sô mo fa sô ayeke gï tî seka na âfündä tî [[$1|Babel]], a yeke sûnga nî tî bata pëpe.",
+ "babel-autocreate-reason": "Sëkängö lêmbëtï tî fündä tî [[$1|Babel]] bîakü bîakü.",
+ "babel-autocreate-text-levels": "Ânyîmbâ tî yâ tî fündä sô afa atene ânï yângâ tî $2 $1.",
+ "babel-autocreate-text-main": "Ânyîmbâ tî yâ tî fündä sô afa atene ânï hînga yângâ tî $1",
+ "babel-0": "Nyîmbâ sô ahînga [[$2|$3]] [[$1|kêtê pëpe]] wala lo mä nî na kötä pâsi mîngi.",
+ "babel-1": "Nyîmbâ sô ahînga [[$2|$3]] [[$1|nzönî kêtê]]",
+ "babel-2": "Nyîmbâ sô ahînga [[$2|$3]] [[$1|nzönî alîngbi na nî]] .",
+ "babel-3": "Nyîmbâ sô ahînga [[$2|$3]] [[$1|taâ nzönî]].",
+ "babel-4": "Nyîmbâ sô ahînga yângâ tî [[$2|$3]] ndurü na [[$1|lkôzo yângâ]]",
+ "babel-5": "Nyîmbâ sô ahînga yângâ tî [[$2|$3]] töngana [[$1|kpëngbä wakua]] nî.",
+ "babel-N": "Nyîmbâ sô ahînga [[$2|$3]] pendere mîngi, tënë tî sô ayeke [[$1|kôzo yângâ]] tî lo.",
+ "babel-0-n": "Nyîmbâ sô ahînga [[$2|sängö]] [[$1|kêtê pëpe]] wala lo mä nî na kötä pâsi mîngi.",
+ "babel-1-n": "Nyîmbâ sô ahînga [[$2|sängö]] [[$1|nzönî kêtê]]",
+ "babel-2-n": "Nyîmbâ sô ahînga [[$2|sängö]] [[$1|nzönî alîngbi na nî]]",
+ "babel-3-n": "Nyîmbâ sô ahînga [[$2|sängö]] [[$1|taâ nzönî]].",
+ "babel-4-n": "Nyîmbâ sô ahînga yângâ tî [[$2|sängö]] ndurü na [[$1|lkôzo yângâ]]",
+ "babel-5-n": "Nyîmbâ sô ahînga yângâ tî [[$2|sängö]] töngana [[$1|kpëngbä wakua]] nî.",
+ "babel-N-n": "Nyîmbâ sô ahînga [[$2|sängö]] pendere mîngi, tënë tî sô ayeke [[$1|kôzo yângâ]] tî lo.",
+ "babel-footer": "Ânyîmbâ tî yângâ ôko ôko"
+}
diff --git a/MLEB/Babel/i18n/sgs.json b/MLEB/Babel/i18n/sgs.json
new file mode 100644
index 00000000..8740465a
--- /dev/null
+++ b/MLEB/Babel/i18n/sgs.json
@@ -0,0 +1,22 @@
+{
+ "@metadata": {
+ "authors": [
+ "Kaganer",
+ "Kusurija"
+ ]
+ },
+ "babel-url": "Project:Babėliuons",
+ "babel-footer-url": "Kateguorėjė:Babėliuons - Nauduotuojē palē kalbas",
+ "babel-0": "[[$2|$3]] — [[$1|nasopront]] (a sopronta nuognē mažā).",
+ "babel-1": "[[$2|$3]] — [[$1|pradėnė līgė]].",
+ "babel-2": "[[$2|$3]] — [[$1|vėdotėnė līgė]].",
+ "babel-3": "[[$2|$3]] — [[$1|aukšta līgė]].",
+ "babel-4": "Tas nauduotuos [[$2|$3]] rokoujės zars tāp, būktās ton ruoda būtom anuo [[$1|gėmtojė]].",
+ "babel-N": "[[$2|$3]] — [[$1|gimta kalba]].",
+ "babel-0-n": "Tas nauduotuos [[$1|nasopront]] [[$2|žemaitiu kalbuos]] (a sopronta nuognē mažā).",
+ "babel-1-n": "Tas nauduotuos gal prisėdietė pri pruojekta [[$1|pradėnė līgė]] [[$2|žemaitiu kalbuo]].",
+ "babel-2-n": "Tas nauduotuos gal prisėdietė pri pruojekta [[$1|vėdotėnė līgė]] [[$2|žemaitiu kalbuo]].",
+ "babel-3-n": "Tas nauduotuos gal prisėdietė pri pruojekta [[$1|aukšta līgė]] [[$2|žemaitiu kalbuo]].",
+ "babel-4-n": "Tas nauduotuos [[$2|žemaitėškā]] rokoujės zars tāp, būktās ton ruoda būtom anuo [[$1|gėmtojė]].",
+ "babel-N-n": "Tuo nauduotuojė [[$1|gimta kalba]] īr [[$2|žemaitiu]]."
+}
diff --git a/MLEB/Babel/i18n/sh.json b/MLEB/Babel/i18n/sh.json
new file mode 100644
index 00000000..9c9aac55
--- /dev/null
+++ b/MLEB/Babel/i18n/sh.json
@@ -0,0 +1,31 @@
+{
+ "@metadata": {
+ "authors": [
+ "OC Ripper",
+ "Kolega2357"
+ ]
+ },
+ "babel": "Babel korisničke informacije\n\nБабел корисничке информације",
+ "babel-desc": "Dodaje <code>#babel</code> parsersku funkciju koja omogućava automatsko pravljenje babel korisničke kutije u stupcu sa mogućnostima uključivanja prilagođenih šablona/predložaka",
+ "babel-url": "Project:Babel",
+ "babel-footer-url": ":Category:Babel - Korisnici po jeziku",
+ "babel-autocreate-abort": "Korisničko ime koje ste naveli se koristi za automatsko pravljenje [[$1|Babel]] kategorija i ne može se registrirati.",
+ "babel-autocreate-reason": "Automatsko stvaranje stranica [[$1|Babel]] kategorija.",
+ "babel-autocreate-text-levels": "Korisnici u ovoj kategoriji su označeni da imaju nivo $1 znanja $2 jezika.",
+ "babel-autocreate-text-main": "Korisnici u ovoj kategoriji su označeni da imaju znanje $1 jezika.",
+ "babel-0": "Ovaj korisnik [[$1|ne]] razum(ij)e [[$2|$3]] srpskohrvatski jezik.\n\nОвај корисник [[$1|не]] разум(иj)е [[$2|$3]] српскохрватски језик.",
+ "babel-1": "Ovaj korisnik posjeduje [[$1|osnovno]] razumijevanje [[$2|$3]] jezika.",
+ "babel-2": "Ovaj korisnik [[$1|srednje]] razumije [[$2|$3]].",
+ "babel-3": "Ovaj korisnik [[$1|napredno]] razumije [[$2|$3]].",
+ "babel-4": "Ovaj korisnik razumije [[$2|$3]] [[$1|gotovo kao maternji]] jezik.",
+ "babel-5": "Ovaj korisnik [[$2|$3]] na [[$1|profesionalnom]] nivou.",
+ "babel-N": "Ovaj korisnik razumije [[$2|$3]] kao [[$1|maternji]] jezik.",
+ "babel-0-n": "Ovaj korisnik [[$1|ne razumije]] [[$2|srpskohrvatski]] (ili ga razumije s velikim poteškoćama).",
+ "babel-1-n": "Ovaj korisnik ima [[$1|osnovno]] poznavanje [[$2|srpskohrvatskog jezika]].",
+ "babel-2-n": "Ovaj korisnik [[$1|srednje]] razumije [[$2|srpskohrvatski jezik]].",
+ "babel-3-n": "Ovaj korisnik ima [[$1|napredno]] poznavanje [[$2|srpskohrvatskog jezika]].",
+ "babel-4-n": "Ovaj korisnik razumije [[$2|srpskohrvatski]] [[$1|gotovo kao maternji jezik]].",
+ "babel-5-n": "Ovaj korisnik govori [[$2|srpskohrvatski jezik]] na [[$1|profesionalnoj]] razini.",
+ "babel-N-n": "Ovaj korisnik razumije [[$2|srpskohrvatski]] kao [[$1|maternji]] jezik.",
+ "babel-footer": "Korisnici po jeziku"
+}
diff --git a/MLEB/Babel/i18n/shi.json b/MLEB/Babel/i18n/shi.json
new file mode 100644
index 00000000..91bfeaaa
--- /dev/null
+++ b/MLEB/Babel/i18n/shi.json
@@ -0,0 +1,28 @@
+{
+ "@metadata": {
+ "authors": [
+ "Dalinanir"
+ ]
+ },
+ "babel": "Inɣmas Babel f umsqdac",
+ "babel-desc": "Zayd awur <code>#babel</code> lli radd immurzm s utumatik yat tanaka (taznbilt) nu umsqdac Babil d mas rad yaf an ig timuḍimin n idɣarn.",
+ "babel-url": "Project:Babel",
+ "babel-autocreate-abort": "Assaɣ n usqdac llin tskcmt ittuyskar bac an ig utumatik tilɣiwin [[$1|Babel]] d ur ikls (iqqiyd)",
+ "babel-autocreate-reason": "Askr utumatik n [[$1|Babel]] talɣa .",
+ "babel-autocreate-text-levels": "Mdn v talɣa yad ar mmaln mas llan ɣ uswir n $1 i tutlayt n $2.",
+ "babel-autocreate-text-main": " Imqdacn ɣ talɣa yad ar mlan masd darsn tusna ɣ tutlayt $1.",
+ "babel-0": "Amdan ad ur dar n tusna ɣ [[$1|walu]] (niɣd dars tamukrist iggutn ɣ tusna n tutlayt ad)[[$2|$3]].",
+ "babel-1": "Amdan ad ittaws s uswir [[$1|idrusn]] s [[$2|$3]].",
+ "babel-2": "Amdan ad dars tusna s uswir [[$2|$3]] ɣ [[$1|anamas]].",
+ "babel-3": "Amdan dar tusna s uswir [[$1|n yittin]] ɣ [[$2|$3]].",
+ "babel-4": "Amdan ad dar tusna n yaẓn i [[$1|tutlayt tamzwarut]] ɣ [[$2|$3]].",
+ "babel-5": "Amdan ad dars tusna [[$1|bahra yattuyn]] ɣ [[$2|$3]].",
+ "babel-N": "Amdan tga [[$2|$3]] [[$1|ils amzwarut]] ns",
+ "babel-0-n": "Amdan ad ur dars [[$1|ḥtta kra]] kra n tusna ɣ [[$2|tamaziɣ tasusit]]",
+ "babel-1-n": "Amsqdac ad dar tusna [[$1|tamzwarut]] ɣ [[$2|Tasussit]].",
+ "babel-2-n": "Amdan ad dars tusna s [[$1|uswir anamas]] ɣ [[$2|Tamaziɣt tasusit]].",
+ "babel-3-n": "Amdan ad dars tusna n [[$1|bahra yattuyn ]] ɣ [[$2|tamaziɣt tasusit]].",
+ "babel-4-n": "Amdan ad dars tusna nn yazn i [[$1|ils ns amzwaru ]] [[$2|tamaziɣt tasusit]].",
+ "babel-5-n": "Amdan ad dars yan uswir iɣatrn n [[$1|uslmad]] s [[$2|ils amaziɣ asusi]]",
+ "babel-N-n": "Amdan tga [[$2|tamaziɣt tasusit]] [[$1|ils amzwaru]] ns"
+}
diff --git a/MLEB/Babel/i18n/si.json b/MLEB/Babel/i18n/si.json
new file mode 100644
index 00000000..9affacf4
--- /dev/null
+++ b/MLEB/Babel/i18n/si.json
@@ -0,0 +1,35 @@
+{
+ "@metadata": {
+ "authors": [
+ "Asiri wiki",
+ "Singhalawap",
+ "තඹරු විජේසේකර",
+ "නන්දිමිතුරු",
+ "පසිඳු කාවින්ද",
+ "බිඟුවා"
+ ]
+ },
+ "babel": "බාබෙල් පරිශීලක තොරතුරු",
+ "babel-desc": "බාබෙල් පරිශීලකකොටු තීරුව සමඟ ව්‍යවහාර සැකිලි අඩංගු කිරීමේ හැකියාව ස්වයංක්‍රීයව ජනනය කිරීමට ඉඩදීම සඳහා <code>#babel</code> ව්‍යාකරණ විග්‍රහ කාර්යය එක් කරන්න",
+ "babel-url": "Project:බාබෙල්",
+ "babel-footer-url": ":ප්‍රවර්ගය:බාබෙල් - භාෂාව අනුව පරිශීලකයින්",
+ "babel-autocreate-abort": "ඔබ විශේෂණය කෙරූ පරිශීලක නාමය [[$1|බාබෙල්]] ප්‍රවර්ග ස්වයං-තැනීම සඳහා භාවිතා කරන අතර ලියාපදිංචි කල නොහැක.",
+ "babel-autocreate-reason": "[[$1|බාබෙල්]] ප්‍රවර්ග පිටුව ස්වයංක්‍රීයව තනමින්.",
+ "babel-autocreate-text-levels": "මෙම ප්‍රවර්ගයෙහි සිටින පරිශීලකයන් $2 භාෂාව සඳහා $1 මට්ටමක් තිබෙන බව පෙන්නුම් කරනු ලබයි.",
+ "babel-autocreate-text-main": "මෙම ප්‍රවර්ගයෙහි සිටින පරිශීලකයන් $1 භාෂාව සඳහා දැනුමක් තිබෙන බව පෙන්නුම් කරනු ලබයි.",
+ "babel-0": "මෙම පරිශීලකයා‍ට [[$2|$3]] පිළිබඳ දැනුමක් [[$1|නැත]].",
+ "babel-1": "මෙම පරිශීලකයා‍ට [[$2|$3]] පිළිබඳ [[$1|මූලික]] දැනුමක් ඇත.",
+ "babel-2": "මෙම පරිශීලකයාහට [[$2|$3]] පිළිබඳ [[$1|අතරමැදි]] දැනුමක් ඇත.",
+ "babel-3": "මෙම පරිශීලකයා‍ට [[$2|$3]] පිළිබඳ [[$1|උසස්]] දැනුමක් ඇත.",
+ "babel-4": "මෙම පරිශීලකයාහට [[$2|$3]] පිළිබඳ [[$1|ස්වදේශීය කථකයෙකුට සමීප]] දැනුමක් ඇත.",
+ "babel-5": "මෙම පරිශීලකයා‍ට [[$2|$3]] පිළිබඳ [[$1| ඉතා උසස්]] දැනුමක් ඇත.",
+ "babel-N": "මෙම පරිශීලකයාට [[$2|$3]] පිළිබඳ [[$1|ස්වදේශීය]] අවබෝධයක් ඇත.",
+ "babel-0-n": "මෙම පරිශීලකයා‍ට [[$2|සිංහල භාෂාව]] පිළිබඳ දැනුමක් [[$1|නැත]] (හෝ ඉතාමත් අපහසුවෙන් එය තේරුම් ගනියි).",
+ "babel-1-n": "මෙම පරිශීලකයා‍ට [[$2|සිංහල භාෂාව]] පිළිබඳ [[$1|මූලික]] දැනුමක් ඇත.",
+ "babel-2-n": "මෙම පරිශීලකයාහට [[$2|සිංහල භාෂාව]] පිළිබඳ [[$1|අතරමැදි]] දැනුමක් ඇත.",
+ "babel-3-n": "මෙම පරිශීලකයා‍ට [[$2|සිංහල භාෂාව]] පිළිබඳ [[$1|උසස්]] දැනුමක් ඇත.",
+ "babel-4-n": "මෙම පරිශීලකයාහට [[$2|සිංහල භාෂාව]] පිළිබඳ [[$1|ස්වදේශීය කථකයෙකුට සමීප]] දැනුමක් ඇත.",
+ "babel-5-n": "මෙම පරිශීලකයා‍ට [[$2|සිංහල භාෂාව]] පිළිබඳ [[$1| වෘත්තිමය]] දැනුමක් ඇත.",
+ "babel-N-n": "මෙම පරිශීලකහට [[$2|සිංහල භාෂාව]] පිළිබඳ [[$1|ස්වභාෂා]] දැනුමක් ඇත.",
+ "babel-footer": "භාෂාව අනුව පරිශීලකයින්"
+}
diff --git a/MLEB/Babel/i18n/sk.json b/MLEB/Babel/i18n/sk.json
new file mode 100644
index 00000000..c0c6e008
--- /dev/null
+++ b/MLEB/Babel/i18n/sk.json
@@ -0,0 +1,33 @@
+{
+ "@metadata": {
+ "authors": [
+ "Helix84",
+ "Meno25",
+ "Rudko",
+ "Sudo77(new)"
+ ]
+ },
+ "babel": "Babylon - informácie o používateľovi",
+ "babel-desc": "Pridáva funkciu syntaktického analyzátora <code>#babel</code>, ktorá umožňuje automatickú tvorbu babylonských šablón používateľov s možnosťou používať prispôsobené šablóny.",
+ "babel-url": "Project:Babylon",
+ "babel-footer-url": ":Kategória:Wikipédia:Redaktori podľa jazyka",
+ "babel-autocreate-abort": "Používateľ, ktorého ste zadali sa používa na automatickú tvorbu kategórií [[$1|Babylonu]] a nie je možné ho zaregistrovať.",
+ "babel-autocreate-reason": "Automaticky sa vytvára stránka kategórie [[$1|Babylon]].",
+ "babel-autocreate-text-levels": "Používatelia v tejto kategórii označili svoju úroveň v jazyku $2 ako $1.",
+ "babel-autocreate-text-main": "Používatelia v tejto kategórii označili, že poznajú jazyk $1.",
+ "babel-0": "Tento používateľ [[$1|nemá]] znalosti [[$2|{{GRAMMAR:genitív|$3}}]] (alebo jej rozumie so značnými problémami).",
+ "babel-1": "Tento používateľ má [[$1|základné]] znalosti [[$2|{{GRAMMAR:genitív|$3}}]].",
+ "babel-2": "Tento používateľ má [[$1|stredné]] znalosti [[$2|{{GRAMMAR:genitív|$3}}]].",
+ "babel-3": "Tento používateľ má [[$1|pokročilé]] znalosti [[$2|{{GRAMMAR:genitív|$3}}]].",
+ "babel-4": "Tento používateľ má znalosti [[$2|{{GRAMMAR:genitív|$3}}]] takmer na úrovni [[$1|rodného jazyka]].",
+ "babel-5": "Tento používateľ má [[$1|profesionálne]] znalosti [[$2|{{GRAMMAR:genitív|$3}}]].",
+ "babel-N": "Tento používateľ má [[$2|{{GRAMMAR:akuzatív|$3}}]] ako [[$1|rodný jazyk]].",
+ "babel-0-n": "Tento redaktor [[$1|nerozumie]] po [[$2|slovensky]] (alebo rozumie so značnými problémami).",
+ "babel-1-n": "Tento redaktor má [[$1|základné]] znalosti [[$2|slovenčiny]].",
+ "babel-2-n": "Tento redaktor má [[$1|stredné]] znalosti [[$2|slovenčiny]].",
+ "babel-3-n": "Tento redaktor má [[$1|pokročilé]] znalosti [[$2|slovenčiny]].",
+ "babel-4-n": "Tento redaktor má znalosti [[$2|slovenčiny]] [[$1|takmer na úrovni materinského jazyka]].",
+ "babel-5-n": "Tento redaktor má [[$1|profesionálne]] znalosti [[$2|slovenčiny]].",
+ "babel-N-n": "Tento redaktor má [[$2|slovenčinu]] ako [[$1|materinský jazyk]].",
+ "babel-footer": "Redaktori podľa jazyka"
+}
diff --git a/MLEB/Babel/i18n/sl.json b/MLEB/Babel/i18n/sl.json
new file mode 100644
index 00000000..58425386
--- /dev/null
+++ b/MLEB/Babel/i18n/sl.json
@@ -0,0 +1,31 @@
+{
+ "@metadata": {
+ "authors": [
+ "Dbc334",
+ "Smihael"
+ ]
+ },
+ "babel": "Uporabnikov Babilon",
+ "babel-desc": "Doda funkcijo <code>#babel</code>, ki omogoča avtomatizirano ustvarjanje babilonskih uporabniških polj z zmožnostjo vključevanja predlog po meri",
+ "babel-url": "Project:Babilon",
+ "babel-footer-url": ":Kategorija:Babel – Uporabniki po jeziku",
+ "babel-autocreate-abort": "Uporabniško ime, ki ste ga določili, se uporablja za samodejno ustvarjanje kategorij [[$1|Babel]] in ga ni mogoče registirati.",
+ "babel-autocreate-reason": "Samodejno ustvarjanje [[$1|babilonske]] kategorije.",
+ "babel-autocreate-text-levels": "Uporabniki navedeni v tej kategoriji imajo naslednjo jezikovno sposobnost $1 $2.",
+ "babel-autocreate-text-main": "Uporabniki navedeni v tej kategoriji imajo znanje jezika »$1«.",
+ "babel-0": "Ta uporabnik [[$1|nima]] znanja [[$2|$3]] (ali pa ima težave z razumevanjem).",
+ "babel-1": "Ta uporabnik ima [[$1|osnovno]] znanje [[$2|$3]].",
+ "babel-2": "Uporabnik [[$1|srednje dobro]] govori [[$2|$3]].",
+ "babel-3": "Uporabnik [[$1|zelo dobro]] govori [[$2|$3]].",
+ "babel-4": "Uporabnik govori [[$2|$3]] [[$1|skoraj enako dobro kakor prvi jezik]].",
+ "babel-5": "Uporabnik govori [[$2|$3]] na [[$1|profesionalni]] ravni.",
+ "babel-N": "Ta uporabnik govori [[$2|{{GRAMMAR:akuzativ|$3}}]] kot [[$1|materni jezik]].",
+ "babel-0-n": "Uporabnik [[$1|ne govori]] [[$2|slovenščine]] oz. ima velike težave pri razumevanju.",
+ "babel-1-n": "Uporabnik pozna '''[[$1|osnove]]''' '''[[$2|slovenskega jezika]].",
+ "babel-2-n": "Uporabnik '''[[$1|srednje dobro]]''' govori '''[[$2|slovenščino]].",
+ "babel-3-n": "Uporabnik '''[[$1|zelo dobro]]''' govori '''[[$2|slovenščino]].",
+ "babel-4-n": "Uporabnik govori '''[[$1|slovensko]]''' skoraj '''[[$2|enako dobro kakor prvi jezik]]'''.",
+ "babel-5-n": "Uporabnik govori [[$2|slovenščino]] na [[$1|profesionalni]] ravni.",
+ "babel-N-n": "Uporabnik govori '''[[$1|slovenščino]]''' kot '''[[$2|materni jezik]]'''.",
+ "babel-footer": "Uporabniki po jeziku"
+}
diff --git a/MLEB/Babel/i18n/sli.json b/MLEB/Babel/i18n/sli.json
new file mode 100644
index 00000000..0478e4cb
--- /dev/null
+++ b/MLEB/Babel/i18n/sli.json
@@ -0,0 +1,29 @@
+{
+ "@metadata": {
+ "authors": [
+ "Jonny84",
+ "Piotron"
+ ]
+ },
+ "babel": "Babel-Benutzer-Information",
+ "babel-desc": "Ergänzt de <code>#babel</code>-Parserfunktion zur automatischen Erstellung vo Babel-Benutzerboxen-Zeilen mit der Möglichkeit, eigene Vorlagen einzubinden",
+ "babel-url": "Project:Babel",
+ "babel-autocreate-abort": "Dar oausgewählte Nutzername werd fier de automatische Arstellung voo [[$1|Babel]]-Kategoria benötigt un kaon nä registriert werda.",
+ "babel-autocreate-reason": "Automatisch arstellte [[$1|Babel]]-Kategorie.",
+ "babel-autocreate-text-levels": "Benutzer ei dieser Kategorie haben den Kenntnis-Level $1 für die Sproache $2.",
+ "babel-autocreate-text-main": "Benutzer ei dieser Kategorie haben Kenntnisse der Sproache $1.",
+ "babel-0": "Dieser Benutzer beherrscht [[$2|$3]] [[$1|nicht]] (oder versteht es nur mit beträchtlichen Schwierigkeiten).",
+ "babel-1": "Dieser Benutzer beherrscht [[$2|$3]] auf [[$1|grundlegendem]] Niveau.",
+ "babel-2": "Dieser Benutzer beherrscht [[$2|$3]] uff [[$1|fortgeschrittenem]] Niveau.",
+ "babel-3": "Dieser Benutzer beherrscht [[$2|$3]] uff [[$1|hohem]] Niveau.",
+ "babel-4": "Dieser Benutzer beherrscht [[$2|$3]] uff [[$1|muttersprachlichem Niveau]].",
+ "babel-5": "Dieser Benutzer beherrscht [[$2|$3]] uff [[$1|professionellem]] Niveau.",
+ "babel-N": "Dieser Benutzer spricht [[$2|$3]] als [[$1|Muttersproache]].",
+ "babel-0-n": "Dieser Benutzer beherrscht [[$2|Schläsch]] [[$1|nä]] (oder versteht es nur mit beträchtlicha Schwierigkeita).",
+ "babel-1-n": "Dieser Benutzer koann a wing [[$2|Schläsch]].",
+ "babel-2-n": "Dieser Benutzer beherrscht [[$2|Schläsch]] uff [[$1|fortgeschrittenem]] Niveau.",
+ "babel-3-n": "Dieser Benutzer beherrscht [[$2|Schläsch]] uff [[$1|hohem]] Niveau.",
+ "babel-4-n": "Dieser Benutzer beherrscht [[$2|Schläsch]] uff [[$1|muttersproachlichem Niveau]].",
+ "babel-5-n": "Dieser Benutzer beherrscht [[$2|Schläsch]] uff [[$1|professionellem]] Niveau.",
+ "babel-N-n": "Dieser Benutzer ies a echte schläsche Lerge un spricht [[$2|Schläsch]] als [[$1|Muttersproache]]."
+}
diff --git a/MLEB/Babel/i18n/so.json b/MLEB/Babel/i18n/so.json
new file mode 100644
index 00000000..70636e87
--- /dev/null
+++ b/MLEB/Babel/i18n/so.json
@@ -0,0 +1,13 @@
+{
+ "@metadata": {
+ "authors": [
+ "GerardM"
+ ]
+ },
+ "babel-0-n": "Isticmaalahan waxba kama yaqaano af [[$2|Soomaaliga]] (ama wuxuu ka yaqaanaa wax aad iyo [[$1|aad u yar]]).",
+ "babel-1-n": "Isticmaalahan wuxuu [[$2|Soomaaliga]] ugu hadlaa si [[$1|aad u yar]].",
+ "babel-2-n": "Isticmaalahan wuxuu [[$2|Soomaaliga]] ugu hadlaa si [[$1|dhaxdhaxaad ah]].",
+ "babel-3-n": "Isticmaalahan wuxuu [[$2|Soomaaliga]] ugu hadlaa si [[$1|aad u fiican]].",
+ "babel-4-n": "Isticmaalahan wuxuu [[$2|Soomaaliga]] ugu hadlaa sida afkiisa [[$1|hooyo]] oo kale.",
+ "babel-N-n": "Isticmaalahan [[$2|Soomaaliga]] waa [[$1|afkiisa hooyo]]."
+}
diff --git a/MLEB/Babel/i18n/sq.json b/MLEB/Babel/i18n/sq.json
new file mode 100644
index 00000000..35e8cc55
--- /dev/null
+++ b/MLEB/Babel/i18n/sq.json
@@ -0,0 +1,33 @@
+{
+ "@metadata": {
+ "authors": [
+ "Dori",
+ "Eagleal",
+ "Olsi",
+ "Vinie007"
+ ]
+ },
+ "babel": "Informacioni Babel i Përdoruesit",
+ "babel-desc": "Shton mundësinë <code>#babel</code> për të lejuar krijimin automatik të kutive babel me mundësinë për të shtuar stampa vetjake.",
+ "babel-url": "Project:Babel",
+ "babel-footer-url": ": Category: Babel - Përdorues sipas gjuhës",
+ "babel-autocreate-abort": "Emrin që ju specifikuar është përdorur për [[$1|Babel]] auto kategori per krijimit dhe nuk mund të regjistruar.",
+ "babel-autocreate-reason": "automatikisht per krijimin e [[$1|Babel]] faqe kategori.",
+ "babel-autocreate-text-levels": "Përdoruesit në këtë kategori tregojnë se ata kanë aftësi të nivelit $1 për gjuhën e $2 .",
+ "babel-autocreate-text-main": "Përdoruesit në këtë kategori tregojnë se ata kanë njohuri të gjuhës $1 .",
+ "babel-0": "Ky përdorues [[$1|nuk ka]] njohuri të [[$2|$3]] (ose e kupton me shumë vështirësi).",
+ "babel-1": "Ky përdorues ka njohuri [[$1|të kufizuar]] të [[$2|$3]].",
+ "babel-2": "Ky përdorues ka njohuri [[$1|thelbësore]] të [[$2|$3]].",
+ "babel-3": "Ky përdorues ka njohuri [[$1|të thellë]] të [[$2|$3]].",
+ "babel-4": "Ky përdorues ka njohuri [[$1|afërsisht amtare]] të [[$2|$3]].",
+ "babel-5": "Ky përdorues ka njohuri [[$1|profesionale]] të [[$2|$3]].",
+ "babel-N": "Ky përdorues ka njohuri [[$1|amtare]] të [[$2|$3]].",
+ "babel-0-n": "Ky përdorues [[$1|nuk ka]] njohuri të [[$2|anglishtes]] (ose e kupton me vështirësi të madhe).",
+ "babel-1-n": "Ky përdorues ka njohuri [[$1|të kufizuar]] të [[$2|gjuhës Shqipe]].",
+ "babel-2-n": "Ky përdorues ka njohuri [[$1|thelbësore]] të [[$2|gjuhës Shqipe]].",
+ "babel-3-n": "Ky përdorues ka njohuri [[$1|të thellë]] të [[$2|gjuhës Shqipe]].",
+ "babel-4-n": "Ky përdorues ka njohuri [[$1|afërsisht amtare]] të [[$2|gjuhës Shqipe]].",
+ "babel-5-n": "Ky përdorues ka njohuri [[$1|profesionale]] të [[$2|gjuhës Shqipe]].",
+ "babel-N-n": "Ky përdorues ka njohuri [[$1|amtare]] të [[$2|gjuhës Shqipe]].",
+ "babel-footer": "Përdorues sipas gjuhës"
+}
diff --git a/MLEB/Babel/i18n/sr-ec.json b/MLEB/Babel/i18n/sr-ec.json
new file mode 100644
index 00000000..04470175
--- /dev/null
+++ b/MLEB/Babel/i18n/sr-ec.json
@@ -0,0 +1,33 @@
+{
+ "@metadata": {
+ "authors": [
+ "Rancher",
+ "Михајло Анђелковић"
+ ]
+ },
+ "babel": "Језичке кутијице",
+ "babel-desc": "Додаје функцију рашчлањивача <code>#babel</code> која омогућава самостално стварање колоне с језичком кутијицом уз могућност додавања прилагођених шаблона",
+ "babel-url": "Project:Вавилон",
+ "babel-footer-url": ":Category:Вавилон – Корисници по језику",
+ "babel-autocreate-abort": "Корисничко име које сте унели користи се за самостално стварање категорије [[$1|Вавилон]] и зато се не може уписати.",
+ "babel-autocreate-reason": "Самостално стварање категорије [[$1|Вавилон]].",
+ "babel-autocreate-text-levels": "Корисници у овој категорији имају знање $1 $2 језика.",
+ "babel-autocreate-text-main": "Корисници у овој категорији имају знање $1 језика.",
+ "babel-autocreate-user": "Вавилон – самостварање",
+ "babel-0": "{{GENDER:$4|Овај корисник|Ова корисница|Овај корисник}} [[$1|не]] зна [[$2|$3]] језик (или га разуме са знатним потешкоћама).",
+ "babel-1": "{{GENDER:$4|Овај корисник|Ова корисница|Овај корисник}} разуме [[$2|$3]] језик на [[$1|основном]] нивоу.",
+ "babel-2": "{{GENDER:$4|Овај корисник|Ова корисница|Овај корисник}} разуме [[$2|$3]] језик на [[$1|средњем]] нивоу.",
+ "babel-3": "{{GENDER:$4|Овај корисник|Ова корисница|Овај корисник}} разуме [[$2|$3]] језик на [[$1|напредном]] нивоу.",
+ "babel-4": "{{GENDER:$4|Овај корисник|Ова корисница|Овај корисник}} [[$1|течно]] говори [[$2|$3]] језик.",
+ "babel-5": "{{GENDER:$4|Овај корисник|Ова корисница|Овај корисник}} зна [[$2|$3]] језик на [[$1|професионалном]] нивоу.",
+ "babel-N": "[[$1|Матерњи језик]] {{GENDER:$4|овог корисника|ове кориснице|овог корисника}} је [[$2|$3]].",
+ "babel-0-n": "{{GENDER:$4|Овај корисник|Ова корисница|Овај корисник}} [[$1|не]] зна [[$2|српски језик]] (или га разуме са знатним потешкоћама).",
+ "babel-1-n": "{{GENDER:$4|Овај корисник|Ова корисница|Овај корисник}} има [[$1|основно]] познавање [[$2|српског језика]].",
+ "babel-2-n": "{{GENDER:$4|Овај корисник|Ова корисница|Овај корисник}} разуме [[$2|српски језик]] на [[$1|средњем]] нивоу.",
+ "babel-3-n": "{{GENDER:$4|Овај корисник|Ова корисница|Овај корисник}} [[$1|доста добро]] познаје [[$2|српски језик]].",
+ "babel-4-n": "{{GENDER:$4|Овај корисник|Ова корисница|Овај корисник}} [[$1|течно]] говори [[$2|српски језик]].",
+ "babel-5-n": "{{GENDER:$4|Овај корисник|Ова корисница|Овај корисник}} зна [[$2|српски језик]] на [[$1|професионалном]] нивоу.",
+ "babel-N-n": "[[$1|Матерњи језик]] {{GENDER:$4|овог корисника|ове кориснице|овог корисника}} је [[$2|српски]].",
+ "babel-template": "Template:Корисник $1",
+ "babel-footer": "Корисници по језику"
+}
diff --git a/MLEB/Babel/i18n/sr-el.json b/MLEB/Babel/i18n/sr-el.json
new file mode 100644
index 00000000..cbac5e6e
--- /dev/null
+++ b/MLEB/Babel/i18n/sr-el.json
@@ -0,0 +1,33 @@
+{
+ "@metadata": {
+ "authors": [
+ "Michaello",
+ "Rancher"
+ ]
+ },
+ "babel": "Jezičke kutijice",
+ "babel-desc": "Dodaje funkciju raščlanjivača <code>#babel</code> koja omogućava samostalno stvaranje kolone s jezičkom kutijicom uz mogućnost dodavanja prilagođenih šablona",
+ "babel-url": "Project:Vavilon",
+ "babel-footer-url": ":Category:Vavilon – Korisnici po jeziku",
+ "babel-autocreate-abort": "Korisničko ime koje ste uneli koristi se za samostalno stvaranje kategorije [[$1|Vavilon]] i zato se ne može upisati.",
+ "babel-autocreate-reason": "Samostalno stvaranje kategorije [[$1|Vavilon]].",
+ "babel-autocreate-text-levels": "Korisnici u ovoj kategoriji imaju znanje $1 $2 jezika.",
+ "babel-autocreate-text-main": "Korisnici u ovoj kategoriji imaju znanje $1 jezika.",
+ "babel-autocreate-user": "Vavilon – samostvaranje",
+ "babel-0": "{{GENDER:$4|Ovaj korisnik|Ova korisnica|Ovaj korisnik}} [[$1|ne]] zna [[$2|$3]] jezik (ili ga razume sa znatnim poteškoćama).",
+ "babel-1": "{{GENDER:$4|Ovaj korisnik|Ova korisnica|Ovaj korisnik}} razume [[$2|$3]] jezik na [[$1|osnovnom]] nivou.",
+ "babel-2": "{{GENDER:$4|Ovaj korisnik|Ova korisnica|Ovaj korisnik}} razume [[$2|$3]] jezik na [[$1|srednjem]] nivou.",
+ "babel-3": "{{GENDER:$4|Ovaj korisnik|Ova korisnica|Ovaj korisnik}} razume [[$2|$3]] jezik na [[$1|naprednom]] nivou.",
+ "babel-4": "{{GENDER:$4|Ovaj korisnik|Ova korisnica|Ovaj korisnik}} [[$1|tečno]] govori [[$2|$3]] jezik.",
+ "babel-5": "{{GENDER:$4|Ovaj korisnik|Ova korisnica|Ovaj korisnik}} zna [[$2|$3]] jezik na [[$1|profesionalnom]] nivou.",
+ "babel-N": "[[$1|Maternji jezik]] {{GENDER:$4|ovog korisnika|ove korisnice|ovog korisnika}} je [[$2|$3]].",
+ "babel-0-n": "{{GENDER:$4|Ovaj korisnik|Ova korisnica|Ovaj korisnik}} [[$1|ne]] zna [[$2|srpski jezik]] (ili ga razume sa znatnim poteškoćama).",
+ "babel-1-n": "{{GENDER:$4|Ovaj korisnik|Ova korisnica|Ovaj korisnik}} ima [[$1|osnovno]] poznavanje [[$2|srpskog jezika]].",
+ "babel-2-n": "{{GENDER:$4|Ovaj korisnik|Ova korisnica|Ovaj korisnik}} razume [[$2|srpski jezik]] na [[$1|srednjem]] nivou.",
+ "babel-3-n": "{{GENDER:$4|Ovaj korisnik|Ova korisnica|Ovaj korisnik}} [[$1|dosta dobro]] poznaje [[$2|srpski jezik]].",
+ "babel-4-n": "{{GENDER:$4|Ovaj korisnik|Ova korisnica|Ovaj korisnik}} [[$1|tečno]] govori [[$2|srpski jezik]].",
+ "babel-5-n": "{{GENDER:$4|Ovaj korisnik|Ova korisnica|Ovaj korisnik}} zna [[$2|srpski jezik]] na [[$1|profesionalnom]] nivou.",
+ "babel-N-n": "[[$1|Maternji jezik]] {{GENDER:$4|ovog korisnika|ove korisnice|ovog korisnika}} je [[$2|srpski]].",
+ "babel-template": "Template:Korisnik $1",
+ "babel-footer": "Korisnici po jeziku"
+}
diff --git a/MLEB/Babel/i18n/srn.json b/MLEB/Babel/i18n/srn.json
new file mode 100644
index 00000000..a271b108
--- /dev/null
+++ b/MLEB/Babel/i18n/srn.json
@@ -0,0 +1,5 @@
+{
+ "@metadata": [],
+ "babel-0": "Disi masyin abi [[$1|no takifustani]] fu a [[$2|$3]] (efu kan a frustan nanga pasar muliki).",
+ "babel-0-n": "Disi masyin abi [[$1|no takifustani]] fu a [[$2|Sranantongo]] (efu kan a frustan nanga pasar muliki)."
+}
diff --git a/MLEB/Babel/i18n/stq.json b/MLEB/Babel/i18n/stq.json
new file mode 100644
index 00000000..00293e91
--- /dev/null
+++ b/MLEB/Babel/i18n/stq.json
@@ -0,0 +1,31 @@
+{
+ "@metadata": {
+ "authors": [
+ "Crazymadlover",
+ "Pyt",
+ "SK-luuut"
+ ]
+ },
+ "babel": "Babel-Benutser-Information",
+ "babel-desc": "Föiget an ju <code>#babel</code>-Parserfunktion foar automatisk Deerstaalen fon Babel-Benutserboxen-Riegen ju Muugelkhaid tou, oaine Foarloagen ientoubienden",
+ "babel-url": "Project:Babel",
+ "babel-footer-url": ":Category:Babel - Benutsere ätter Sproake",
+ "babel-autocreate-abort": "Die uutwäälde Benutsernoome wäd foar dät automatisk Moakjen fon [[$1|Babel]]-Kategorien benöödiged un kon nit registrierd wäide.",
+ "babel-autocreate-reason": "Automatisk moakede [[$1|Babel]]-Kategorie.",
+ "babel-autocreate-text-levels": "Benutsere in disse Kategorie hääbe ju Kunde-Ieuwene $1 foar ju Sproake $2.",
+ "babel-autocreate-text-main": "Benutsere in disse Kategorie hääbe Kunde fon ju Sproake $1.",
+ "babel-0": "Dissen Benutser boalt un ferstoant [[$1|neen]] [[$2|$3]].",
+ "babel-1": "Dissen Benutser [[$1|boalt un ferstoant n Bitje]] [[$2|$3]].",
+ "babel-2": "Dissen Benutser kon [[$1|oarich]] [[$2|$3]] baale.",
+ "babel-3": "Dissen Benutser kon [[$1|goud]] [[$2|$3]] baale.",
+ "babel-4": "Dissen Benutser [[$1|boalt slonk]] [[$2|$3]].",
+ "babel-5": "Dissen Benutser behärsket [[$2|$3]] ap [[$1|professionelle]] Ieuwene.",
+ "babel-N": "Dissen Benutser häd [[$2|$3]] [[$1|as Määmesproake]].",
+ "babel-0-n": "Dissen Benutser behärsket [[$2|Seeltersk]] [[$1|nit]] (of ferstoant et man stuur).",
+ "babel-1-n": "Dissen Benutser behärsket [[$2|Seeltersk]] ap [[$1|gruundlääsende]] Ieuwene.",
+ "babel-2-n": "Dissen Benutser kon [[$1|oarich]] [[$2|Seelters]] baale.",
+ "babel-3-n": "Dissen Benutser kon [[$1|goud]] [[$2|Seeltersk]] baale.",
+ "babel-4-n": "Dissen Benutser boalt [[$1|slonk]] [[$2|Seeltersk]].",
+ "babel-5-n": "Dissen Benutser behärsket [[$2|Seeltersk]] ap [[$1|professionelle]] Ieuwene.",
+ "babel-N-n": "Dissen Benutser boalt [[$2|Seeltersk]] as [[$1|Määmesproake]]."
+}
diff --git a/MLEB/Babel/i18n/su.json b/MLEB/Babel/i18n/su.json
new file mode 100644
index 00000000..b05dbc7a
--- /dev/null
+++ b/MLEB/Babel/i18n/su.json
@@ -0,0 +1,31 @@
+{
+ "@metadata": {
+ "authors": [
+ "Irwangatot",
+ "Kandar"
+ ]
+ },
+ "babel": "Katerangan Babel Pamaké",
+ "babel-desc": "Nambahan fungsi parser <code>#babel</code> pikeun mintonkeun lajur babel kotak pamaké sacara otomatis jeung pangabisa ngagunakeun citakan dinamis",
+ "babel-url": "Project:Babel",
+ "babel-footer-url": ":Katégori:Babel - Kontributor dumadar basana",
+ "babel-autocreate-abort": "Ngaran pamaké anu diasupkeun dipaké pikeun nyieun otomatis kategori [[$1|Babel]] sarta henteu bisa didaftarkeun.",
+ "babel-autocreate-reason": "Otomatis nyieun kaca kategori [[$1|Babel]].",
+ "babel-autocreate-text-levels": "Pamaké di kategori ieu nandakeun maranéhanana ngabogaan pangabisa $1 pikeun basa $2.",
+ "babel-autocreate-text-main": "Pamaké di kategori ieu nandakeun maranéhanana ngabogaan pangabisa basa $1.",
+ "babel-0": "Pamaké ieu [[$1|teu]] ngarti [[$2|$3]] (atawa saeutik-saeutik ngartina).",
+ "babel-1": "Pamaké ieu gaduh kamampuan [[$2|$3]] hambalan [[$1|dasar]].",
+ "babel-2": "Pamaké ieu gaduh kamampuan [[$2|$3]] hambalan [[$1|panengah]].",
+ "babel-3": "Pamaké ieu [[$1|mahér]] [[$2|$3]].",
+ "babel-4": "Pamaké ieu tiasa [[$2|$3]] anu [[$1|sampurna]].",
+ "babel-5": "Pamaké ieu tiasa [[$2|$3]] anu [[$1|mahér tur sampurna]].",
+ "babel-N": "Pamaké ieu [[$1|tulen]] bisa [[$2|$3]].",
+ "babel-0-n": "Pamaké ieu [[$1|teu]] ngarti [[$2|basa Sunda]] (atawa saeutik-saeutik ngartina).",
+ "babel-1-n": "Pamaké ieu gaduh kamampuan [[$2|basa Sunda]] hambalan [[$1|dasar]].",
+ "babel-2-n": "Pamaké ieu gaduh kamampuan [[$2|basa Sunda]] hambalan [[$1|panengah]].",
+ "babel-3-n": "Pamaké ieu [[$1|mahér]] [[$2|basa Sunda]].",
+ "babel-4-n": "Pamaké ieu tiasa [[$2|basa Sunda]] anu [[$1|sampurna]].",
+ "babel-5-n": "Pamaké ieu tiasa [[$2|basa Sunda]] anu [[$1|mahér tur sampurna]].",
+ "babel-N-n": "Pamaké ieu [[$1|tulen]] bisa [[$2|basa Sunda]] .",
+ "babel-footer": "Pamaké dumasar basana"
+}
diff --git a/MLEB/Babel/i18n/sv.json b/MLEB/Babel/i18n/sv.json
new file mode 100644
index 00000000..127cc07f
--- /dev/null
+++ b/MLEB/Babel/i18n/sv.json
@@ -0,0 +1,39 @@
+{
+ "@metadata": {
+ "authors": [
+ "Ainali",
+ "Boivie",
+ "Diupwijk",
+ "Jon Harald Søby",
+ "Lejonel",
+ "Lokal Profil",
+ "M.M.S.",
+ "Najami",
+ "WikiPhoenix"
+ ]
+ },
+ "babel": "Babel-användarinformation",
+ "babel-desc": "Lägger till parserfunktionen <code>#babel</code> för att tillåta att det automatiskt skapas en babelboxkolumn med möjligheten att lägga till anpassade mallar",
+ "babel-url": "Project:Babel",
+ "babel-footer-url": ":Kategori:Babel - Användare efter språk",
+ "babel-autocreate-abort": "Användarnamnet du valde används för automatiskt skapande av [[$1|Babel]]-kategorier och kan därför inte registreras.",
+ "babel-autocreate-reason": "Skapar automatiskt en [[$1|Babel]]-kategorisida.",
+ "babel-autocreate-text-levels": "Användare i den här kategorin visar att de kan språket $2 på en kunskapsnivå av $1.",
+ "babel-autocreate-text-main": "Användare i den här kategorin visar att de har kunskap i språket $1.",
+ "babel-0": "Den här användaren förstår [[$1|inte]] [[$2|$3]] (eller förstår det bara med stor svårighet).",
+ "babel-1": "Den här användaren har [[$1|grundläggande]] kunskaper i [[$2|$3]].",
+ "babel-2": "Den här användaren har [[$1|medelgoda]] kunskaper i [[$2|$3]].",
+ "babel-3": "Den här användaren har [[$1|avancerade]] kunskaper i [[$2|$3]].",
+ "babel-4": "Den här användaren kan [[$2|$3]] [[$1|nästan på modersmålsnivå]].",
+ "babel-5": "Den här användaren har [[$1|professionella]] kunskaper i [[$2|$3]].",
+ "babel-N": "Den här användaren har [[$2|$3]] som [[$1|modersmål]].",
+ "babel-0-n": "Den här användaren har [[$1|inga]] kunskaper i [[$2|svenska]] (eller förstår det bara med en stor svårighet).",
+ "babel-1-n": "Den här användaren har [[$1|grundläggande]] kunskaper i [[$2|svenska]].",
+ "babel-2-n": "Den här användaren har [[$1|medelgoda]] kunskaper i [[$2|svenska]].",
+ "babel-3-n": "Den här användaren har [[$1|avancerade]] kunskaper i [[$2|svenska]].",
+ "babel-4-n": "Den här användaren kan [[$2|svenska]] [[$1|nästan på modersmålsnivå]].",
+ "babel-5-n": "Den här användaren har [[$1|professionella]] kunskaper i [[$2|svenska]].",
+ "babel-N-n": "Den här användaren har [[$2|svenska]] som [[$1|modersmål]].",
+ "babel-template": "Template:Användare $1",
+ "babel-footer": "Användare efter språk"
+}
diff --git a/MLEB/Babel/i18n/sw.json b/MLEB/Babel/i18n/sw.json
new file mode 100644
index 00000000..1c850abe
--- /dev/null
+++ b/MLEB/Babel/i18n/sw.json
@@ -0,0 +1,30 @@
+{
+ "@metadata": {
+ "authors": [
+ "Lloffiwr",
+ "Malangali"
+ ]
+ },
+ "babel": "Maelezo ya Babeli ya mtumiaji",
+ "babel-url": "Project:Babeli",
+ "babel-footer-url": ":Jamii:Wanawikipedia lugha kwa lugha",
+ "babel-autocreate-abort": "Huwezi kusajili jina la mtumiaji ulilotaja kwa sababu linatumika tayari katika shughuli ya kuanzisha jamii za [[$1|Babeli]] kiotomati.",
+ "babel-autocreate-reason": "Ukurasa wa jamii ya [[$1|Babeli]] unaanzishwa moja kwa moja.",
+ "babel-autocreate-text-levels": "Watumiaji katika jamii hii wanaonyesha kwamba wanaongea lugha ya $2 kwa kiwango cha $1.",
+ "babel-autocreate-text-main": "Watumiaji katika jamii hii wanadai kwamba wana ujuzi wa lugha ya $1.",
+ "babel-0": "Mtumiaji huyu [[$1|hajui]] [[$2|$3]] (au anaelewa kidogo sana).",
+ "babel-1": "Mtumiaji huyu ni mwongeaji wa [[$2|$3]] cha kiwango cha [[$1|Msingi]].",
+ "babel-2": "Mtumiaji huyu ni mwongeaji wa [[$2|$3]] cha kiwango cha [[$1|Wastani]].",
+ "babel-3": "Mtumiaji huyu ni mwongeaji wa [[$2|$3]] kiwango [[$1|cha Juu]].",
+ "babel-4": "Mtumiaji huyu ni mwongeaji wa [[$2|$3]] cha kiwango cha [[$1|Juu Kabisa]].",
+ "babel-5": "Mtumiaji huyu ni mwongeaji wa [[$2|$3]] cha kiwango cha [[$1|Utaalamu]].",
+ "babel-N": "Mtumiaji huyu ni mwongeaji wa [[$2|$3]] [[$1|Fasaha]].",
+ "babel-0-n": "Mtumiaji huyu [[$1|hajui]] [[$2|Kiswahili]] (au anaelewa kidogo sana).",
+ "babel-1-n": "Mtumiaji huyu ni mwongeaji wa [[$2|Kiswahili]] cha kiwango cha [[$1|Msingi]].",
+ "babel-2-n": "Mtumiaji huyu ni mwongeaji wa [[$2|Kiswahili]] cha kiwango cha [[$1|Wastani]].",
+ "babel-3-n": "Mtumiaji huyu ni mwongeaji wa [[$2|Kiswahili]] kiwango [[$1|cha Juu]].",
+ "babel-4-n": "Mtumiaji huyu ni mwongeaji wa [[$2|Kiswahili]] cha kiwango cha [[$1|Juu Kabisa]].",
+ "babel-5-n": "Mtumiaji huyu ni mwongeaji wa [[$2|Kiswahili]] cha kiwango cha [[$1|Utaalamu]].",
+ "babel-N-n": "Mtumiaji huyu ni mwongeaji wa [[$2|Kiswahili]] [[$1|Fasaha]].",
+ "babel-footer": "Watumiaji lugha kwa lugha"
+}
diff --git a/MLEB/Babel/i18n/sxu.json b/MLEB/Babel/i18n/sxu.json
new file mode 100644
index 00000000..d4098ffd
--- /dev/null
+++ b/MLEB/Babel/i18n/sxu.json
@@ -0,0 +1,20 @@
+{
+ "@metadata": {
+ "authors": [
+ "Purodha"
+ ]
+ },
+ "babel-url": "Project:Babel",
+ "babel-0": "Dor Benutzor hior sprischt [[$1|gorgeen]] [[$2|$3]].",
+ "babel-1": "Dor Benutzor hior kann krad ma' [[$1|ä ganz kleenes bissl]] [[$2|$3]], 's is abbor eing'sch nisch dor Rede wärt.",
+ "babel-2": "Dor Benutzor hior is eing'sch schonn [[$1|nisch ohne]] im [[$2|$3]] Spräschn.",
+ "babel-3": "Dor Benutzor hior sprischt schonn [[$2|$3]] [[$1|wie's beese Tior]].",
+ "babel-4": "Dor Benutzor hior sprischt so dolle [[$2|$3]] [[$1|als wäror aus'm Land]].",
+ "babel-N": "Dor Benutzor hior is ä rüscht'schor [[$1|Muddorsprachlor]] vom [[$2|$3]]n.",
+ "babel-0-n": "Dor Benutzor hior sprischt [[$1|gorgeen]] [[$2|Sächs'sch]].",
+ "babel-1-n": "Dor Benutzor hior kann krad ma' [[$1|ä ganz kleenes bissl]] [[$2|Sächs'sch]], 's is abbor eing'sch nisch dor Rede wärt.",
+ "babel-2-n": "Dor Benutzor hior is eing'sch schonn [[$1|nisch ohne]] im [[$2|Sächs'sch]] Spräschn.",
+ "babel-3-n": "Dor Benutzor hior sprischt schonn [[$2|Sächs'sch]] [[$1|wie's beese Tior]].",
+ "babel-4-n": "Dor Benutzor hior sprischt so dolle [[$2|Sächs'sch]] [[$1|als wäror aus Sachsn]].",
+ "babel-N-n": "Dor Benutzor hior is ä rüscht'schor [[$1|Muddorsprachlor]] vom [[$2|Sächs'sch]]n."
+}
diff --git a/MLEB/Babel/i18n/szl.json b/MLEB/Babel/i18n/szl.json
new file mode 100644
index 00000000..797deef7
--- /dev/null
+++ b/MLEB/Babel/i18n/szl.json
@@ -0,0 +1,27 @@
+{
+ "@metadata": {
+ "authors": [
+ "Przemub",
+ "Purodha"
+ ]
+ },
+ "babel": "Wjeża Babel używacza",
+ "babel-desc": "Wkludzuje funkcyje <code>#babel</code> kera automatyczńy tworzi wjeży Babel lo używaczy na jejich zajty.",
+ "babel-url": "Project:Babel",
+ "babel-footer-url": "Kategoria:Wikipedysty podug godki",
+ "babel-autocreate-abort": "Mjano używacza kere podałżeś je używane lo Wjeży [[$1|Babel]] a ńy może być zaregistrowane.",
+ "babel-autocreate-reason": "Zajta kategoryji [[$1|Wjeży Babel]]",
+ "babel-autocreate-text-levels": "Używacze kerzi sům w tej kategoryji poradzům godać w godce $2 na poźome $1.",
+ "babel-autocreate-text-main": "Używacze kerzi sům w tej kategoryji poradzům godać w godce $1.",
+ "babel-0": "Tyn użytkowńik [[$1|ńy godo]] w godce [[$2|$3]] (abo mo s ńům wjelge trudnośći).",
+ "babel-1": "Tyn użytkowńik wjy ino [[$1|źdźebko]] godke [[$2|$3]].",
+ "babel-2": "Tyn użytkowńik mo [[$1|strzedńe]] wjadůmośći godki [[$2|$3]].",
+ "babel-3": "Tyn użytkowńik mo [[$1|fest dobre]] wjadůmośći godki [[$2|$3]].",
+ "babel-4": "Tyn użytkowńik wjy godke [[$2|$3]] [[$1|bezmałaś jak uojczysto]].",
+ "babel-0-n": "Tyn użytkowńik [[$1|ńy godo]] we [[$2|ślůnskij godce]] (abo mo s ńům wjelge trudnośći).",
+ "babel-1-n": "Tyn użytkowńik wjy ino [[$1|źdźebko]] [[$2|ślůnsko godka]].",
+ "babel-2-n": "Tyn użytkowńik mo [[$1|strzedńe]] wjadůmośći [[$2|ślůnskij godki]].",
+ "babel-3-n": "Tyn użytkowńik mo [[$1|fest dobre]] wjadůmośći [[$2|ślůnskij godki]].",
+ "babel-4-n": "Tyn użytkowńik wjy [[$2|ślůnsko godka]] [[$1|bezmałaś jak uojczysto]].",
+ "babel-N-n": "[[$2|Ślůnski]] je [[$1|uojczystům godkům]] tygo użytkowńika."
+}
diff --git a/MLEB/Babel/i18n/ta.json b/MLEB/Babel/i18n/ta.json
new file mode 100644
index 00000000..48cd7021
--- /dev/null
+++ b/MLEB/Babel/i18n/ta.json
@@ -0,0 +1,35 @@
+{
+ "@metadata": {
+ "authors": [
+ "Karthi.dr",
+ "Logicwiki",
+ "Shanmugamp7",
+ "SivaneshR",
+ "TRYPPN",
+ "Trengarasu"
+ ]
+ },
+ "babel": "பாபேல் பயனர் தகவல்கள்",
+ "babel-desc": "தனிப்பட்ட வார்ப்புருக்கள் உள்ளடக்கங்களாக தானியக்கமாக பாபேல் பயனர் பெட்டிகளை ஆக்குவதை முடுக்கும் வகையில் <code>#babel</code> இலக்கணப் பாகுபடுத்தி சார்பை இணைக்கிறது.",
+ "babel-url": "Project:பாபேல்",
+ "babel-footer-url": ": வகை: Babel - பயனீட்டாளர்கள் மொழி மூலம்.",
+ "babel-autocreate-abort": "தாங்கள் குறிப்பிட்ட பயனர் பெயர் [[$1|Babel]] பகுப்பில் பயன்படுத்தப்படும் மேலும் தாங்கள் இதைவைத்து பதிவு செய்யமுடியாது.",
+ "babel-autocreate-reason": "தானியக்கமாக [[$1|Babel]] பகுப்பு பக்கம் உருவாக்கபடுகிறது.",
+ "babel-autocreate-text-levels": "இப்பகுப்பில் உள்ள பயனர்கள் $2 மொழியில் $1 அளவுக்கு திறமை படைத்தவர்கள் என்பதனைக் குறிப்பிடுகிறது.",
+ "babel-autocreate-text-main": "இப்பகுப்பில் உள்ள பயனர்கள் $1 மொழியறிவை படைத்தவர்கள் என்பதனைக் குறிப்பிடுகிறது.",
+ "babel-0": "இந்தப் பயனர் [[$2|$3]] மொழியில் [[$1|பயிற்சி இல்லாதவர்]] (அல்லது கடினப்பாடுகளுடன் விளங்கிக் கொள்ளகிறார்).",
+ "babel-1": "இந்தப் பயனர் [[$2|$3]] மொழியில் [[$1|அடிப்படை அறிவைக்]] கொண்டவர்.",
+ "babel-2": "இந்தப் பயனர் [[$2|$3]] மொழியில் [[$1|இடைநிலை அறிவைக்]] கொண்டவர்.",
+ "babel-3": "இந்தப் பயனர் [[$2|$3]] மொழியில் [[$1|மேம்பட்ட அறிவைக்]] கொண்டவர்.",
+ "babel-4": "இந்தப் பயனர் [[$2|$3]] மொழியில் [[$1|தாய்மொழிக்குக் கிட்டிய அறிவைக்]] கொண்டவர்.",
+ "babel-5": "இந்தப் பயனர் [[$2|$3]] மொழியில் [[$1|தொழில் நெறிஞர் தரத்திலான அறிவைக்]] கொண்டவர்.",
+ "babel-N": "இந்தப் பயனர் [[$2|$3]] மொழியில் [[$1|தாய்மொழி அறிவைக்]] கொண்டவர்.",
+ "babel-0-n": "இந்தப் பயனர் [[$2|தமிழில்]] [[$1|பயிற்சி இல்லாதவர்]] (அல்லது கடினப்பாடுகளுடன் விளங்கிக் கொள்ளகிறார்).",
+ "babel-1-n": "இந்தப் பயனர் [[$2|தமிழில்]] [[$1|அடிப்படை அறிவைக்]] கொண்டவர்.",
+ "babel-2-n": "இந்தப் பயனர் [[$2|தமிழில்]] [[$1|இடைநிலை அறிவைக்]] கொண்டவர்.",
+ "babel-3-n": "இந்தப் பயனர் [[$2|தமிழில்]] [[$1|மேம்பட்ட அறிவைக்]] கொண்டவர்.",
+ "babel-4-n": "இந்தப் பயனர் [[$2|தமிழில்]] [[$1|தாய்மொழிக்குக் கிட்டிய அறிவைக்]] கொண்டவர்.",
+ "babel-5-n": "இந்தப் பயனர் [[$2|தமிழில்]] [[$1|தொழில் நெறிஞர் தரத்திலான அறிவைக்]] கொண்டவர்.",
+ "babel-N-n": "இந்தப் பயனர் [[$2|தமிழில்]] [[$1|தாய்மொழி அறிவைக்]] கொண்டவர்.",
+ "babel-footer": "மொழி வாரியாக பயனர்கள்"
+}
diff --git a/MLEB/Babel/i18n/tcy.json b/MLEB/Babel/i18n/tcy.json
new file mode 100644
index 00000000..04e5027e
--- /dev/null
+++ b/MLEB/Babel/i18n/tcy.json
@@ -0,0 +1,26 @@
+{
+ "@metadata": {
+ "authors": [
+ "NamwikiTL",
+ "VASANTH S.N."
+ ]
+ },
+ "babel": "ಬೇಬಲ್ ಬಳಕೆದಾರೆರ್ನ ಮಾಹಿತಿ",
+ "babel-desc": "<code>#babel</code> ಪಾರ್ಸರ್ ಫ೦ಕ್ಷನ್ ನ್ ಸೇರ್ಸಾವು೦ಡು. ಈ ಪಾರ್ಸರ್ ಫ೦ಕ್ಷನ್ ಬೇಬಲ್ ಬಳಕೆದಾರೆರ್ನ ಬಾಕ್ಸ್ ನ್ ಸೃಷ್ಟಿ ಮಲ್ಪು೦ಡು. ನೆನೆ ಬುಕ ಕಸ್ಟಮ್ ಟೆ೦ಪ್ಲಟ್ ಡ್ ಪಾಡೊಲಿ.",
+ "babel-url": "Project:ಬೇಬಲ್",
+ "babel-0": "ಈ ಬಳಕೆದಾರೆರ್ಗ್ [[$2|$3]] ನೆತ ಬಗ್ಗೆ [[$1|ಶೂನ್ಯ]] ಜ್ನಾನ ಉ೦ಡು (ಅತ್ತ೦ಡ ಭಾರಿ ಕಷ್ಟೊಡು ಅರ್ಥ ಮಲ್ತೊನ್ವೆರ್)",
+ "babel-1": "ಈ ಬಳಕೆದಾರೆರ್ಗ್ [[$2|$3]] ನೆತ ಬಗ್ಗೆ [[$1|ಪ್ರಾಥಮಿಕ]] ಜ್ನಾನ ಉ೦ಡು.",
+ "babel-2": "ಈ ಬಳಕೆದಾರೆರ್ಗ್ [[$2|$3]] ನೆತ ಬಗ್ಗೆ [[$1|ಮಧ್ಯಮ ಮಟ್ಟದ]] ಜ್ನಾನ ಉ೦ಡು",
+ "babel-3": "ಈ ಬಳಕೆದಾರೆರ್ಗ್ [[$2|$3]] ನೆತ ಬಗ್ಗೆ [[$1|ಉನ್ನತ ಮಟ್ಟದ]] ಜ್ನಾನ ಉ೦ಡು",
+ "babel-4": "ಈ ಬಳಕೆದಾರೆರ್ಗ್ [[$2|$3]] ನೆತ ಬಗ್ಗೆ [[$1|ಮೂಲಭಾಷಿಕೆರ್ನ ಮಟ್ಟದ]] ಜ್ನಾನ ಉ೦ಡು",
+ "babel-5": "ಈ ಬಳಕೆದಾರೆರ್ಗ್ [[$2|$3]] ನೆತ ಬಗ್ಗೆ [[$1|ವೃತ್ತಿ ನಿರತೆರ್ನ ಲೆಕದ]] ಜ್ನಾನ ಉ೦ಡು",
+ "babel-N": "ಈ ಬಳಕೆದಾರೆರ್ಗ್ [[$2|$3]] ನೆತ ಬಗ್ಗೆ [[$1|ಮೂಲ ಭಾಷಿಕೆರ್ನ]] ಜ್ನಾನ ಉ೦ಡು",
+ "babel-0-n": "ಈ ಬಳಕೆದಾರೆರ್ಗ್ [[$2|ತುಳು]]ತ ಬಗ್ಗೆ [[$1|ಶೂನ್ಯ]] ಜ್ನಾನ ಉ೦ಡು (ಅತ್ತ೦ಡ ಭಾರಿ ಕಷ್ಟೊಡು ಅರ್ಥ ಮಲ್ತೊನ್ವೆರ್)",
+ "babel-1-n": "ಈ ಬಳಕೆದಾರೆರ್ಗ್ [[$2|ತುಳು]]ತ ಬಗ್ಗೆ [[$1|ಪ್ರಾಥಮಿಕ]] ಜ್ನಾನ ಉ೦ಡು",
+ "babel-2-n": "ಈ ಬಳಕೆದಾರೆರ್ಗ್ [[$2|ತುಳು]]ತ ಬಗ್ಗೆ [[$1|ಮಧ್ಯಮ ಮಟ್ಟದ]] ಜ್ನಾನ ಉ೦ಡು",
+ "babel-3-n": "ಈ ಬಳಕೆದಾರೆರ್ಗ್ [[$2|ತುಳು]]ತ ಬಗ್ಗೆ [[$1|ಉನ್ನತ ಮಟ್ಟದ]] ಜ್ನಾನ ಉ೦ಡು",
+ "babel-4-n": "ಈ ಬಳಕೆದಾರೆರ್ಗ್ [[$2|ತುಳು]]ತ ಬಗ್ಗೆ [[$1|ಮೂಲಭಾಷಿಕೆರ್ನ ಮಟ್ಟದ]] ಜ್ನಾನ ಉ೦ಡು",
+ "babel-5-n": "ಈ ಬಳಕೆದಾರೆರ್ಗ್ [[$2|ತುಳು]]ತ ಬಗ್ಗೆ [[$1|ವೃತ್ತಿಪರೆರ್ನ]] ಜ್ನಾನ ಉ೦ಡು",
+ "babel-N-n": "ಈ ಬಳಕೆದಾರೆರ್ಗ್ [[$2|ತುಳು]]ತ ಬಗ್ಗೆ [[$1|ಮೂಲಭಾಷಿಕೆರ್ನ]] ಜ್ನಾನ ಉ೦ಡು",
+ "babel-footer": "ಭಾಷೆದ ಅನುಸಾರ ಬಳಕೆದಾರೆರ್"
+}
diff --git a/MLEB/Babel/i18n/te.json b/MLEB/Babel/i18n/te.json
new file mode 100644
index 00000000..0060c73b
--- /dev/null
+++ b/MLEB/Babel/i18n/te.json
@@ -0,0 +1,32 @@
+{
+ "@metadata": {
+ "authors": [
+ "Kiranmayee",
+ "Mpradeep",
+ "Veeven"
+ ]
+ },
+ "babel": "వాడుకరి బేబెల్ సమాచారం",
+ "babel-desc": "<code>#babel</code> పార్సరు ఫంక్సనుని కలపటం ద్వారా, బేబెల్ వాడుకరి పెట్టెల వరుసలో, ఇతర మూసలను కూడా జతపరచగలిగేటటు సృష్టిస్తుంది",
+ "babel-url": "Project:బేబెల్",
+ "babel-footer-url": ":Category:Babel - భాషల వారీగా వాడుకరులు",
+ "babel-autocreate-abort": "మీరు పేర్కొన్న వాడుకరిపేరుని ఆటోమెటిగ్గా [[$1|బేబెల్]] వర్గాలని సృష్టించడానికి ఉపయోగిస్తారు కనుక ఆ పేరుతో నమోదు చేసుకోలేరు.",
+ "babel-autocreate-reason": "[[$1|బేబెల్]] వర్గ పుటని ఆటోమాటిగ్గా సృష్టిస్తున్నాము.",
+ "babel-autocreate-text-levels": "ఈ వర్గం లోని వాడుకరులు తమకు $2 భాషలో $1 స్థాయి నైపుణ్యం ఉంది అని తెలిపారు.",
+ "babel-autocreate-text-main": "ఈ వర్గం లోని వాడుకరులు తమకు $1 భాష తెలుసునని తెలిపారు.",
+ "babel-0": "ఈ వాడుకరికి [[$2|$3]] భాషపై ఎటువంటి పరిజ్ఞానం [[$1|లేదు]] (లేదా అర్థంచేసుకోవడానికి చాలా కష్టపడతాడు).",
+ "babel-1": "ఈ వాడుకరికి [[$2|$3]] భాషపై [[$1|ప్రాధమిక]] అవగాహన ఉంది.",
+ "babel-2": "ఈ వాడుకరికి [[$2|$3]] భాషపై [[$1|మధ్య స్థాయి]] అవగాహన ఉంది.",
+ "babel-3": "ఈ వాడుకరికి [[$2|$3]] భాషపై [[$1|చాలా మంచి]] అవగాహన ఉంది.",
+ "babel-4": "ఈ వాడుకరికి [[$2|$3]] భాషపై [[$1|మాతృభాషపై ఉన్నంత]] అవగాహన ఉంది.",
+ "babel-5": "ఈ వాడుకరికి [[$2|$3]] భాషపై [[$1|వృత్తి నైపుణ్యం]] ఉంది.",
+ "babel-N": "ఈ వాడుకరి [[$1|మాతృభాష]] [[$2|$3]].",
+ "babel-0-n": "ఈ వాడుకరికి [[$2|తెలుగు]] భాషపై ఎటువంటి పరిజ్ఞానం [[$1|లేదు]] (లేదా అర్థంచేసుకోవడానికి చాలా కష్టపడతారు).",
+ "babel-1-n": "ఈ వాడుకరికి [[$2|తెలుగు]] భాషపై [[$1|ప్రాధమిక]] అవగాహన ఉంది.",
+ "babel-2-n": "ఈ వాడుకరికి [[$2|తెలుగు]] భాషపై [[$1|మధ్య స్థాయి]] అవగాహన ఉంది.",
+ "babel-3-n": "ఈ వాడుకరికి [[$2|తెలుగు]] భాషపై [[$1|చాలా మంచి]] అవగాహన ఉంది.",
+ "babel-4-n": "ఈ వాడుకరికి [[$2|తెలుగు]] భాషపై [[$1|మాతృభాషపై ఉన్నంత]] అవగాహన ఉంది.",
+ "babel-5-n": "ఈ వాడుకరికి [[$2|తెలుగు]] భాషపై [[$1|వృత్తి నైపుణ్యం]] ఉంది.",
+ "babel-N-n": "ఈ వాడుకరి [[$1|మాతృభాష]] [[$2|తెలుగు]].",
+ "babel-footer": "భాషల వారీగా వాడుకరులు"
+}
diff --git a/MLEB/Babel/i18n/tet.json b/MLEB/Babel/i18n/tet.json
new file mode 100644
index 00000000..bac22639
--- /dev/null
+++ b/MLEB/Babel/i18n/tet.json
@@ -0,0 +1,19 @@
+{
+ "@metadata": {
+ "authors": [
+ "MF-Warburg"
+ ]
+ },
+ "babel-0": "Uza-na'in ne'e [[$1|la]] ko'alia [[$2|$3]] nein musan ida la hatene lian [[$2|$3]] (ka komprende uitoan de'it).",
+ "babel-1": "Uza-na'in ne'e bele kontribui ho nivel [[$1|báziku]] iha lian [[$2|$3]].",
+ "babel-2": "Uza-na'in ne'e bele kontribui ho nivel [[$1|maizumenus]] iha lian [[$2|$3]].",
+ "babel-3": "Uza-na'in ne'e bele kontribui ho nivel [[$1|aas]] iha lian [[$2|$3]].",
+ "babel-4": "Uza-na'in ne'e nia nivel [[$1|atu hanesan makdalen nativu]] iha lian [[$2|$3]].",
+ "babel-N": "Uza-na'in ne'e iha [[$2|$3]] nu'udar [[$1|lian inan]].",
+ "babel-0-n": "Uza-na'in ne'e [[$1|la]] ko'alia [[$2|tetun]] nein musan ida la hatene lian [[$2|tetun]] (ka komprende uitoan de'it).",
+ "babel-1-n": "Uza-na'in ne'e bele kontribui ho nivel [[$1|báziku]] iha lian [[$2|tetun]].",
+ "babel-2-n": "Uza-na'in ne'e bele kontribui ho nivel [[$1|maizumenus]] iha lian [[$2|tetun]].",
+ "babel-3-n": "Uza-na'in ne'e bele kontribui ho nivel [[$1|aas]] iha lian [[$2|tetun]].",
+ "babel-4-n": "Uza-na'in ne'e nia nivel [[$1|atu hanesan makdalen nativu]] iha lian [[$2|tetun]].",
+ "babel-N-n": "Uza-na'in ne'e iha [[$2|tetun]] nu'udar [[$1|lian inan]]."
+}
diff --git a/MLEB/Babel/i18n/tg-cyrl.json b/MLEB/Babel/i18n/tg-cyrl.json
new file mode 100644
index 00000000..5fa5be7e
--- /dev/null
+++ b/MLEB/Babel/i18n/tg-cyrl.json
@@ -0,0 +1,15 @@
+{
+ "@metadata": {
+ "authors": [
+ "Ibrahim",
+ "ZxxZxxZ"
+ ]
+ },
+ "babel": "Иттилооти Корбари Бобул",
+ "babel-desc": "Дастури таҷзеҳгарро <code>#babel</code> изофа мекунад, ки имкони эҷоди худкори ҷаъбаҳои коргарии бобул бо қобилияти ғунҷонидани шаблонҳои дихоҳро фароҳам мекунад",
+ "babel-url": "Project:Бобул",
+ "babel-0": "Ин корбар [[$2|$3]]ро [[$1|намефаҳмад]] (ё онро бо душворӣ мефаҳмад).",
+ "babel-1": "Ин корбар [[$2|$3]]ро дар сатҳи [[$1|муқаддамотӣ]] мефаҳмад.",
+ "babel-2": "Ин корбар [[$2|$3]]ро дар сатҳи [[$1|миёна]] мефаҳмад.",
+ "babel-4": "Корбари мазкур ба '''[[$2|тоҷикӣ]]''' дар сатҳи '''[[$1|хуб]]''' монанди қариб забони модариаш медонад."
+}
diff --git a/MLEB/Babel/i18n/tg-latn.json b/MLEB/Babel/i18n/tg-latn.json
new file mode 100644
index 00000000..776dcca0
--- /dev/null
+++ b/MLEB/Babel/i18n/tg-latn.json
@@ -0,0 +1,14 @@
+{
+ "@metadata": {
+ "authors": [
+ "Liangent"
+ ]
+ },
+ "babel": "Ittilooti Korbari Bobul",
+ "babel-desc": "Dasturi taçzehgarro <code>#babel</code> izofa mekunad, ki imkoni eçodi xudkori ça'bahoi korgariji bobul bo qobilijati ƣunçonidani şablonhoi dixohro faroham mekunad",
+ "babel-url": "Project:Bobul",
+ "babel-0": "In korbar [[$2|$3]]ro [[$1|namefahmad]] (jo onro bo duşvorī mefahmad).",
+ "babel-1": "In korbar [[$2|$3]]ro dar sathi [[$1|muqaddamotī]] mefahmad.",
+ "babel-2": "In korbar [[$2|$3]]ro dar sathi [[$1|mijona]] mefahmad.",
+ "babel-4": "Korbari mazkur ba '''[[$2|$3]]''' dar sathi '''[[$1|xub]]''' monandi qarib zaboni modariaş medonad."
+}
diff --git a/MLEB/Babel/i18n/th.json b/MLEB/Babel/i18n/th.json
new file mode 100644
index 00000000..9dc8d7c1
--- /dev/null
+++ b/MLEB/Babel/i18n/th.json
@@ -0,0 +1,33 @@
+{
+ "@metadata": {
+ "authors": [
+ "Akkhaporn",
+ "Horus",
+ "Manop",
+ "Passawuth"
+ ]
+ },
+ "babel": "ข้อมูลภาษาของผู้ใช้",
+ "babel-desc": "ใส่ฟังก์ชัน <code>#babel</code> เพื่อที่จะใส่คอลัมน์กล่องผู้ใช้บาเบลอัตโนมัติ รวมทั้งความสามารถที่จะใส่แม่แบบที่ต้องการได้ด้วย",
+ "babel-url": "Project:บาเบล",
+ "babel-footer-url": ":หมวดหมู่:บาเบล - ผู้ใช้ตามภาษา",
+ "babel-autocreate-abort": "ผู้้้ใช้ที่คุณระบุถูกใช้ในการสร้างหน้าหมวดหมู่[[$1|บาเบล]]อัตโนมัติ และไม่สามารถสมัครได้",
+ "babel-autocreate-reason": "สร้างหน้าหมวดหมู่[[$1|บาเบล]]อัตโนมัติ",
+ "babel-autocreate-text-levels": "ผู้ใช้ในหมวดหมู่นี้ มีทักษะในการใช้ภาษา$2 ในระดับที่ $1",
+ "babel-autocreate-text-main": "ผู้ใช้ในหมวดหมมู่นี้ มีความรู้เกี่ยวกับภาษา$1",
+ "babel-0": "ผู้ใช้คนนี้[[$1|ไม่มี]]ความรู้เกี่ยวกับ[[$2|$3]] (หรือเข้าใจได้ด้วยความยากลำบาก)",
+ "babel-1": "ผู้ใช้คนนี้มีความรู้[[$1|พื้นฐาน]]เกี่ยวกับ[[$2|$3]]",
+ "babel-2": "ผู้ใช้คนนี้มีความรู้[[$1|ระดับกลาง]]เกี่ยวกับ[[$2|$3]]",
+ "babel-3": "ผู้ใช้คนนี้มีความรู้[[$1|ระดับสูง]]เกี่ยวกับ[[$2|$3]]",
+ "babel-4": "ผู้ใช้คนนี้สามารถใช้[[$2|$3]]ได้เหมือน[[$1|ภาษาแม่]]",
+ "babel-5": "ผู้ใช้คนนี้สามารถใช้[[$2|$3]]ได้อย่าง[[$1|เชี่ยวชาญ]]",
+ "babel-N": "ผู้ใช้คนนี้ใช้[[$2|$3]]เป็น[[$1|ภาษาแม่]]",
+ "babel-0-n": "ผู้ใช้คนนี้[[$1|ไม่มี]]ความรู้เกี่ยวกับ[[$2|ภาษาไทย]] (หรือเข้าใจได้ด้วยความยากลำบาก)",
+ "babel-1-n": "ผู้ใช้คนนี้มีความรู้[[$1|พื้นฐาน]]เกี่ยวกับ[[$2|ภาษาไทย]]",
+ "babel-2-n": "ผู้ใช้คนนี้มีความรู้[[$1|ระดับกลาง]]เกี่ยวกับ[[$2|ภาษาไทย]]",
+ "babel-3-n": "ผู้ใช้คนนี้มีความรู้[[$1|ระดับสูง]]เกี่ยวกับ[[$2|ภาษาไทย]]",
+ "babel-4-n": "ผู้ใช้คนนี้สามารถใช้[[$2|ภาษาไทย]]ได้เหมือน[[$1|ภาษาแม่]]",
+ "babel-5-n": "ผู้ใช้คนนี้สามารถใช้[[$2|ภาษาไทย]]ได้อย่าง[[$1|เชี่ยวชาญ]]",
+ "babel-N-n": "ผู้ใช้คนนี้ใช้[[$2|ภาษาไทย]]เป็น[[$1|ภาษาแม่]]",
+ "babel-footer": "ผู้ใช้ตามภาษา"
+}
diff --git a/MLEB/Babel/i18n/tk.json b/MLEB/Babel/i18n/tk.json
new file mode 100644
index 00000000..3b74cf0b
--- /dev/null
+++ b/MLEB/Babel/i18n/tk.json
@@ -0,0 +1,28 @@
+{
+ "@metadata": {
+ "authors": [
+ "Hanberke"
+ ]
+ },
+ "babel": "Babyl ulanyjy maglumaty",
+ "babel-desc": "Ýörite şablonlary öz içine almak häsiýeti bar bolan Babyl ulanyjy gutusy sütüniniň awtomatik usulda döredilmegi üçin <code>#babel</code> parser funksiýasyny goşýar",
+ "babel-url": "Project:Babyl",
+ "babel-autocreate-abort": "Görkezen ulanyjy adyňyz [[$1|Babyl]] kategoriýasynyň awtomatik usulda döredilmeginde ulanylýar we ony alyp bolmaýar.",
+ "babel-autocreate-reason": "Awtomatik usulda [[$1|Babyl]] kategoriýa sahypasy döredilýär.",
+ "babel-autocreate-text-levels": "Bu kategoriýadaky ulanyjylar $1 derejede $2 dilini bilýändiklerini görkezýär.",
+ "babel-autocreate-text-main": "Bu kategoriýadaky ulanyjylar $1 dilini bilýändiklerini görkezýär.",
+ "babel-0": "Bu ulanyjy [[$1|hiç hili]] [[$2|$3]] bilmeýär (ýa-da örän kynlyk bilen düşünýär).",
+ "babel-1": "Bu ulanyjy [[$1|başlangyç derejede]] [[$2|$3]] bilýär.",
+ "babel-2": "Bu ulanyjy [[$1|orta derejede]] [[$2|$3]] bilýär.",
+ "babel-3": "Bu ulanyjy [[$1|ýokary derejede]] [[$2|$3]] bilýär.",
+ "babel-4": "Bu ulanyjy [[$1|öz ene dili ýaly]] [[$2|$3]] bilýär.",
+ "babel-5": "Bu ulanyjy [[$1|professional derejede]] [[$2|$3]] bilýär.",
+ "babel-N": "Bu ulanyjynyň [[$1|öz ene dili]] [[$2|$3]]dir.",
+ "babel-0-n": "Bu ulanyjy [[$1|hiç hili]] [[$2|Türkmençe]] bilmeýär (ýa-da örän kynlyk bilen düşünýär).",
+ "babel-1-n": "Bu ulanyjy [[$1|başlangyç derejede]] [[$2|Türkmençe]] bilýär.",
+ "babel-2-n": "Bu ulanyjy [[$1|orta derejede]] [[$2|Türkmençe]] bilýär.",
+ "babel-3-n": "Bu ulanyjy [[$1|ýokary derejede]] [[$2|Türkmençe]] bilýär.",
+ "babel-4-n": "Bu ulanyjy [[$1|öz ene dili ýaly]] [[$2|Türkmençe]] bilýär.",
+ "babel-5-n": "Bu ulanyjy [[$1|professional derejede]] [[$2|Türkmençe]] bilýär.",
+ "babel-N-n": "Bu ulanyjynyň [[$1|öz ene dili]] [[$2|Türkmençe]]dir."
+}
diff --git a/MLEB/Babel/i18n/tl.json b/MLEB/Babel/i18n/tl.json
new file mode 100644
index 00000000..0a01e8f4
--- /dev/null
+++ b/MLEB/Babel/i18n/tl.json
@@ -0,0 +1,32 @@
+{
+ "@metadata": {
+ "authors": [
+ "AnakngAraw"
+ ]
+ },
+ "babel": "Kabatirang pangtagagamit ng Babel",
+ "babel-desc": "Nagdaragdag ng tungkuling pambanghay (''parser'') na <code>#babel</code> para payagan ang kusang paglitaw ng isang hanay sa kahong pantagagamit ng babel na may kakayahang magsali ng nakahandang mga suleras",
+ "babel-url": "Project:Babel",
+ "babel-footer-url": ":Category:Babel - Mga tagagamit ayon sa wika",
+ "babel-autocreate-abort": "Ang tinukoy mong pangalan ng tagagamit ay ginagamit para sa kusang paglikha ng kauriang pam-[[$1|Babel]] at hindi maitatala.",
+ "babel-autocreate-reason": "Kusang lumilikha ng pahina ng kauriang pam-[[$1|Babel]].",
+ "babel-autocreate-text-levels": "Nagpapakita na may kakayahang pang-antas $1 sa wikang $2 ang mga tagagamit na nasa kauriang ito.",
+ "babel-autocreate-text-main": "Nagpapakitang may kaalaman sa wikang $1 ang mga tagagamit na nasa kauriang ito.",
+ "babel-autocreate-user": "Babel Likhain-ng-Kusa",
+ "babel-0": "[[$1|Walang]] kaalaman sa [[$2|$3]] (o may malaking kahirapan sa pagunawa dito) ang tagagamit na ito.",
+ "babel-1": "May [[$1|payak]] na kaalaman sa [[$2|$3]] ang tagagamit na ito.",
+ "babel-2": "May [[$1|panggitnang]] kaalaman sa [[$2|$3]] ang tagagamit na ito.",
+ "babel-3": "May [[$1|mahigit]] na kaalaman sa [[$2|$3]] ang tagagamit na ito.",
+ "babel-4": "May [[$1|malakatutubong]] kaalaman sa pagsasalita ng [[$2|$3]] ang tagagamit na ito.",
+ "babel-5": "May [[$1|dalubhasang]] kaalaman sa [[$2|$3]] ang tagagamit na ito.",
+ "babel-N": "May [[$1|katutubong]] pang-unawa sa [[$2|$3]] ang tagagamit na ito.",
+ "babel-0-n": "[[$1|Walang]] kaalaman sa [[$2|Tagalog]] (o may kahirapan sa pagunawa dito) ang tagagamit na ito.",
+ "babel-1-n": "May [[$1|payak]] na kaalaman sa [[$2|Tagalog]] ang tagagamit na ito.",
+ "babel-2-n": "May [[$1|panggitnang]] kaalaman sa [[$2|Tagalog]] ang tagagamit na ito.",
+ "babel-3-n": "May [[$1|mahigit]] na kaalaman sa [[$2|Tagalog]] ang tagagamit na ito.",
+ "babel-4-n": "May [[$1|malakatutubong]] kaalaman sa pagsasalita ng [[$2|Tagalog]] ang tagagamit na ito.",
+ "babel-5-n": "May [[$1|dalubhasang]] kaalaman sa [[$2|Tagalog]] ang tagagamit na ito.",
+ "babel-N-n": "May [[$1|katutubong]] pang-unawa sa [[$2|Tagalog]] ang tagagamit na ito.",
+ "babel-template": "Template:Tagagamit $1",
+ "babel-footer": "Mga tagagamit ayon sa wika"
+}
diff --git a/MLEB/Babel/i18n/tly.json b/MLEB/Babel/i18n/tly.json
new file mode 100644
index 00000000..c6d3b2fa
--- /dev/null
+++ b/MLEB/Babel/i18n/tly.json
@@ -0,0 +1,32 @@
+{
+ "@metadata": {
+ "authors": [
+ "JHeydar",
+ "Vugar 1981",
+ "Гусейн"
+ ]
+ },
+ "babel": "Babil iştirokəkə məlumot",
+ "babel-desc": "Ziyod kardeydə analiz kardey funksiyə <code>#babel</code>, haşteydə avtomatik ofəye sun de zıvonon barədə məlumoti iyən de mımkunoti co ğəlibon daxıl karde",
+ "babel-url": "Project:Babil",
+ "babel-footer-url": ":Category:Babil- iştirokəkon zıvononədə",
+ "babel-autocreate-abort": "Nişo doə bıə iştirokəkə nom oko beydə bo [[$1|Babil]] tispiron avtomatik ofəye iyən nıbəzne ğeyd be.",
+ "babel-autocreate-reason": "Səhifə avtomatik ofəye [[$1|Babil]] tispirədə.",
+ "babel-autocreate-text-levels": "İştirokəkon çe ın tispiriku işorә kardəşone zınəyon səviyyə $1 bo zıvoni $2.",
+ "babel-autocreate-text-main": "İştirokəkon bı tispirədə zıvoni zınəy işorə kardəşone $1.",
+ "babel-0": "In iştirokəkə [[$1|zıneydəni]] [[$2|$3]] (yaanki çətin dərəseydə).",
+ "babel-1": "In iştirokəkə [[$1|zəif]] zıneydә [[$2|$3]].",
+ "babel-2": "In iştirokəkə [[$1|miyonə səviyyədə]] zıneydə [[$2|$3]].",
+ "babel-3": "In iştirokəkə [[$1|çok]] zıneydə [[$2|$3]].",
+ "babel-4": "In iştirokəkə bənə [[$1|moə zıvoni]] zıneydə [[$2|$3]].",
+ "babel-5": "In iştirokəkə [[$1|peşəkorə səviyyədə]] zıneydə [[$2|$3]].",
+ "babel-N": "Bo ın iştirokəkə [[$2|Tolışi]] [[$1|moə zıvone]].",
+ "babel-0-n": "In iştirokəkə [[$1|zıneydəni]] [[$2|Tolışi]] (yaanki çətin dərəseydə).",
+ "babel-1-n": "In iştirokəkə [[$1|zəif]] zıneydə [[$2|Tolışi]].",
+ "babel-2-n": "In iştirokəkə [[$1|miyonə səviyyədə]] zıneydə [[$2|Tolışə zıvoni]].",
+ "babel-3-n": "In iştirokəkə [[$1|çok]] zıneydə [[$2|Tolışə zıvoni]].",
+ "babel-4-n": "In iştirokəkə bənə [[$1|moə zıvoni]] зынејдә [[$2|Tolışə zıvoni]].",
+ "babel-5-n": "In iştirokəkə [[$1|peşəkor səviyyədə]] zıneydə [[$2|Tolışə zıvoni]].",
+ "babel-N-n": "Bo ın iştirokəkə [[$2|Tolışə zıvon]] [[$1|moə zıvone]].",
+ "babel-footer": "İştirokəkon zıvononədə"
+}
diff --git a/MLEB/Babel/i18n/tokipona.json b/MLEB/Babel/i18n/tokipona.json
new file mode 100644
index 00000000..4dc9dace
--- /dev/null
+++ b/MLEB/Babel/i18n/tokipona.json
@@ -0,0 +1,19 @@
+{
+ "@metadata": {
+ "authors": [
+ "Purodha"
+ ]
+ },
+ "babel-0": "jan ni li [[$1|toki ala]] e [[$2|$3]].",
+ "babel-1": "jan ni li [[$1|toki lili]] e [[$2|$3]].",
+ "babel-2": "jan ni li [[$1|toki]] e [[$2|$3]].",
+ "babel-3": "jan ni li [[$1|toki pona]] e [[$2|$3]].",
+ "babel-4": "jan ni li [[$1|toki pona mute]] e [[$2|$3]].",
+ "babel-N": "[[$1|tenpo ona ali]] la jan ni li toki e [[$2|$3]].",
+ "babel-0-n": "jan ni li [[$1|toki ala]] e [[$2|toki pona]].",
+ "babel-1-n": "jan ni li [[$1|toki lili]] e [[$2|toki pona]].",
+ "babel-2-n": "jan ni li [[$1|toki]] e [[$2|toki pona]].",
+ "babel-3-n": "jan ni li [[$1|toki pona]] e [[$2|toki pona]].",
+ "babel-4-n": "jan ni li [[$1|toki pona mute]] e [[$2|toki pona]].",
+ "babel-N-n": "[[$1|tenpo ona ali]] la jan ni li toki e [[$2|toki pona]]."
+}
diff --git a/MLEB/Babel/i18n/tpi.json b/MLEB/Babel/i18n/tpi.json
new file mode 100644
index 00000000..16912ca8
--- /dev/null
+++ b/MLEB/Babel/i18n/tpi.json
@@ -0,0 +1,25 @@
+{
+ "@metadata": {
+ "authors": [
+ "Iceflow",
+ "Iketsi"
+ ]
+ },
+ "babel": "Babel save bilong yusa",
+ "babel-url": "Project:Babel",
+ "babel-0": "Dispela yusa i [[$1|no]] save long [[$2|$3]].",
+ "babel-1": "Dispela yusa i save [[$1|liklik tasol]] long [[$2|$3]].",
+ "babel-2": "Dispela yusa i save [[$1|hap hap]] long [[$2|$3]].",
+ "babel-3": "Dispela yusa i save [[$1|gut tru]] long [[$2|$3]].",
+ "babel-4": "Dispela yusa i save long [[$2|$3]] kain olsem [[$1|wanpela lokol]].",
+ "babel-5": "Dispela yusa i save [[$1|nambawan]] long [[$2|$3]].",
+ "babel-N": "[[$2|$3]] i [[$1|as tok]] bilong dispela yusa.",
+ "babel-0-n": "Dispela yusa i [[$1|no save]] long [[$2|Tok Pisin]]",
+ "babel-1-n": "Dispela yusa i save [[$1|liklik tasol]] long [[$2|Tok Pisin]].",
+ "babel-2-n": "Dispela yusa i save [[$1|hap hap]] long [[$2|Tok Pisin]].",
+ "babel-3-n": "Dispela yusa i save [[$1|gut tru]] long [[$2|Tok Pisin]].",
+ "babel-4-n": "Dispela yusa i save long [[$2|Tok Pisin]] [[$1|kain klostu wanpela lokol]].",
+ "babel-5-n": "Dispela yusa i [[$1|man bilong]] save long [[$2|Tok Pisin]].",
+ "babel-N-n": "Dispela yusa i save long [[$2|Tok Pisin]] [[$1|kain olsem wanpela lokol]].",
+ "babel-footer": "Ol yusa long tokples"
+}
diff --git a/MLEB/Babel/i18n/tr.json b/MLEB/Babel/i18n/tr.json
new file mode 100644
index 00000000..8c236a13
--- /dev/null
+++ b/MLEB/Babel/i18n/tr.json
@@ -0,0 +1,35 @@
+{
+ "@metadata": {
+ "authors": [
+ "Bombola",
+ "Joseph",
+ "Karduelis",
+ "Khutuck",
+ "LuCKY"
+ ]
+ },
+ "babel": "Babil kullanıcı bilgileri",
+ "babel-desc": "Özel şablonlar içerme özelliği olan Babil kullanıcı kutusu sütununun otomatik oluşturulması için <code>#babel</code> derleyici fonksiyonunu ekler",
+ "babel-url": "Project:Babil",
+ "babel-footer-url": ":Kategori:Babil - dillere göre kullanıcılar",
+ "babel-autocreate-abort": "Belirttiğiniz kullanıcı adı [[$1|Babil]] kategorisinin otomatik oluşturulması için kullanılıyor ve alınamaz.",
+ "babel-autocreate-reason": "Otomatik olarak [[$1|Babil]] kategori sayfası oluşturuluyor.",
+ "babel-autocreate-text-levels": "Bu kategorideki kullanıcılar $1 seviyede $2 dilini bildiklerini belirtiyor.",
+ "babel-autocreate-text-main": "Bu kategorideki kullanıcılar $1 dilini bildiklerini belirtiyor.",
+ "babel-autocreate-user": "Babil OtomatikOluştur",
+ "babel-0": "Bu kullanıcı [[$1|hiç]] [[$2|$3]] bilmiyor (ya da bir hayli zor anlıyor).",
+ "babel-1": "Bu kullanıcı [[$1|temel düzeyde]] [[$2|$3]] bilir.",
+ "babel-2": "Bu kullanıcı [[$1|orta düzeyde]] [[$2|$3]] bilir.",
+ "babel-3": "Bu kullanıcı [[$1|ileri seviyede]] [[$2|$3]] bilir.",
+ "babel-4": "Bu kullanıcı [[$1|anadili gibi]] [[$2|$3]] konuşabilir.",
+ "babel-5": "Bu kullanıcı [[$1|profesyonel]] [[$2|$3]] bilgisine sahiptir.",
+ "babel-N": "Bu kullanıcının [[$1|anadili]] [[$2|$3]]dir.",
+ "babel-0-n": "Bu kullanıcı [[$1|hiç]] [[$2|Türkçe]] bilmiyor (ya da bir hayli zor anlıyor).",
+ "babel-1-n": "Bu kullanıcı [[$1|temel düzeyde]] [[$2|Türkçe]] bilir.",
+ "babel-2-n": "Bu kullanıcı [[$1|orta düzeyde]] [[$2|Türkçe]] bilir.",
+ "babel-3-n": "Bu kullanıcı [[$1|ileri seviyede]] [[$2|Türkçe]] bilir.",
+ "babel-4-n": "Bu kullanıcı [[$1|anadili gibi]] [[$2|Türkçe]] konuşabilir.",
+ "babel-5-n": "Bu kullanıcı [[$1|profesyonel]] [[$2|Türkçe]] bilgisine sahiptir.",
+ "babel-N-n": "Bu kullanıcının [[$1|anadili]] [[$2|Türkçe]]dir.",
+ "babel-footer": "Dillere göre kullanıcılar"
+}
diff --git a/MLEB/Babel/i18n/tru.json b/MLEB/Babel/i18n/tru.json
new file mode 100644
index 00000000..65b0526d
--- /dev/null
+++ b/MLEB/Babel/i18n/tru.json
@@ -0,0 +1,24 @@
+{
+ "@metadata": {
+ "authors": [
+ "Ariyo"
+ ]
+ },
+ "babel-footer-url": ":Category:Babel - aHadome u aLeşonaṭe",
+ "babel-autocreate-text-main": "aHadome dkitne buSedrano koḍ³i $1.",
+ "babel-0": "{{GENDER:$4|uHadomano|iHadomtaṭe|uHadomano}} {{GENDER:$5|lo koḍa³|lo koḍ³o|lo koḍa³}} [[$2|$3]].",
+ "babel-1": "{{GENDER:$4|uHadomano|iHadomtaṭe|uHadomano}} {{GENDER:$5|koḍa³|koḍ³o|koḍa³}} işmo [[$2|$3]].",
+ "babel-2": "{{GENDER:$4|uHadomano|iHadomtaṭe|uHadomano}} {{GENDER:$5|koḍa³|koḍ³o|koḍa³}} [[$2|$3]] baş.",
+ "babel-3": "{{GENDER:$4|uHadomano|iHadomtaṭe|uHadomano}} {{GENDER:$5|koḍa³|koḍ³o|koḍa³}} [[$2|$3]] ṫawo.",
+ "babel-4": "{{GENDER:$4|uHadomano|iHadomtaṭe|uHadomano}} {{GENDER:$5|koḍa³|koḍ³o|koḍa³}} [[$2|$3]] gişt xed ḥa dyalıf [[$2|$3]] bNa³muṭe.",
+ "babel-5": "{{GENDER:$4|uHadomano|iHadomtaṭe|uHadomano}} {{GENDER:$5|koḍa³|koḍ³o|koḍa³}} [[$2|$3]] bDerğo ğalabe 3eloyo.",
+ "babel-N": "{{GENDER:$4|uHadomano|iHadomtaṭe|uHadomano}} {{GENDER:$5|yalıf|iyalıfo|yalıf}} [[$2|$3]] [[$1|{{GENDER:$6|bNa³muṭe|bNa3muṭa|bNa³muṭe}}]].",
+ "babel-0-n": "\t{{GENDER:$4|uHadomano|iHadomtaṭe|uHadomano}} {{GENDER:$5|lo koḍa³|lo koḍ³o|lo koḍa³}} [[$2|Ṫuroyo]].",
+ "babel-1-n": "{{GENDER:$4|uHadomano|iHadomtaṭe|uHadomano}} {{GENDER:$5|koḍa³|koḍ³o|koḍa³}} işmo [[$2|Ṫuroyo]].",
+ "babel-2-n": "{{GENDER:$4|uHadomano|iHadomtaṭe|uHadomano}} {{GENDER:$5|koḍa³|koḍ³o|koḍa³}} [[$2|Ṫuroyo]] baş.",
+ "babel-3-n": "{{GENDER:$4|uHadomano|iHadomtaṭe|uHadomano}} {{GENDER:$5|koḍa³|koḍ³o|koḍa³}} [[$2|Ṫuroyo]] ṫawo",
+ "babel-4-n": "{{GENDER:$4|uHadomano|iHadomtaṭe|uHadomano}} {{GENDER:$5|koḍa³|koḍ³o|koḍa³}} [[$2|Ṫuroyo]] gişt xed ḥa dyalıf [[$2|Ṫuroyo]] bNa³muṭe.",
+ "babel-5-n": "{{GENDER:$4|uHadomano|iHadomtaṭe|uHadomano}} {{GENDER:$5|koḍa³|koḍ³o|koḍa³}} [[$2|Ṫuroyo]] bDerğo ğalabe 3eloyo.",
+ "babel-N-n": "{{GENDER:$4|uHadomano|iHadomtaṭe|uHadomano}} {{GENDER:$5|yalıf|iyalıfo|yalıf}} [[$2|Ṫuroyo]] [[$1|{{GENDER:$6|bNa³muṭe|bNa3muṭa|bNa³muṭe}}]].",
+ "babel-footer": "aHadome u aLeşonaṭe"
+}
diff --git a/MLEB/Babel/i18n/ts.json b/MLEB/Babel/i18n/ts.json
new file mode 100644
index 00000000..74bc5dff
--- /dev/null
+++ b/MLEB/Babel/i18n/ts.json
@@ -0,0 +1,30 @@
+{
+ "@metadata": {
+ "authors": [
+ "Thuvack"
+ ]
+ },
+ "babel": "Vuxokoxoko bya mutirhisi eka Babele",
+ "babel-desc": "Yi engetela <code>#babel</code> xiangarhi lexi pfumelelaka xipfuneti kutumbuluxa xirhapa eka bokisa ramutirhisi ra Babele lexi kotaka ku nghenisa swivumbiwa-ntirho leswi tolovelekeke",
+ "babel-url": "Project:Babele",
+ "babel-footer-url": ":Category:Babele - Vatirhisi kuya hiririmi",
+ "babel-autocreate-abort": "Vito ra mutirhisi leri u ritsaleke ritirhiseriwa xiyenge [[$1|xa Babele]] lexititumbulukelaka naswona aritsariseki.",
+ "babel-autocreate-reason": "Tluka ra ntlawa [[$1|wa Babel]] ratitumbuluxa.",
+ "babel-autocreate-text-levels": "Vatirhisi eka ntlawa lowu vana vuthsila bya $1 eka ririmi ra xi $2.",
+ "babel-autocreate-text-main": "Vatirhisi eka ntlawa lowu vana vutivi bya ririmi ra xi $1.",
+ "babel-0": "Mutirhisi loyi u [[$1|hava]] vutivi bya ririmi ra xi[[$2|$3]] (Kumbe uritwisisa sitsanana).",
+ "babel-1": "Mutirhisi loyi una vutivi [[$1|byale hansi]] hi ririmi ra xi [[$2|$3]].",
+ "babel-2": "Mutirhisi loyi una vutivi [[$1|byale xikarhi]] hi ririmi ra xi [[$2|$3]].",
+ "babel-3": "Mutirhisi loyi una vutivi [[$1|byale henhla]] hi ririmi ra xi [[$2|$3]].",
+ "babel-4": "Mutirhisi loyi una vutivi [[$1|byo enta]] hi ririmi ra xi [[$2|$3]].",
+ "babel-5": "Mutirhisi loyi una vutivi [[$1|dyondzeriwa]] hi ririmi ra xi [[$2|$3]].",
+ "babel-N": "Mutirhisi loyi una vutivi [[$1|byo mama]] hi ririmi ra xi [[$2|$3]].",
+ "babel-0-n": "Mutirhisi loyi anga [[$1|ri twisisi]] ririmi ra [[$2|Xitsonga]] (kumbe utwisisa switsanana).",
+ "babel-1-n": "Mutirhisi loyi wa [[$1|ri twisisanyana]] ririmi ra [[$2|Xitsonga]].",
+ "babel-2-n": "Mutirhisi loyi wa [[$1|ri twisisa]] ririmi ra [[$2|Xitsonga]].",
+ "babel-3-n": "Mutirhisi loyi wa [[$1|ri twisisa kahle]] ririmi ra [[$2|Xitsonga]].",
+ "babel-4-n": "Mutirhisi loyi wa [[$1|ri twisisa hiku enta]] ririmi ra [[$2|Xitsonga]].",
+ "babel-5-n": "Mutirhisi loyi u lo [[$1|ri dyondzela]] ririmi ra [[$2|Xitsonga]].",
+ "babel-N-n": "Mutirhisi loyi ulo [[$1|ri mama]] ririmi ra [[$2|Xitsonga]].",
+ "babel-footer": "Vatirhisi hikuya hi ririmi"
+}
diff --git a/MLEB/Babel/i18n/tt-cyrl.json b/MLEB/Babel/i18n/tt-cyrl.json
new file mode 100644
index 00000000..8876fd1d
--- /dev/null
+++ b/MLEB/Babel/i18n/tt-cyrl.json
@@ -0,0 +1,24 @@
+{
+ "@metadata": {
+ "authors": [
+ "Ильнар",
+ "Рашат Якупов"
+ ]
+ },
+ "babel": "Катнашучының телләр белү турындагы мәгълумат",
+ "babel-url": "Project:Вавилон",
+ "babel-0": "[[$2|$3]] — [[$1|белми]] (яисә бөтенләй дә аңламый)",
+ "babel-1": "[[$2|$3]] — [[$1|башлангыч]] дәрәҗә.",
+ "babel-2": "[[$2|$3]] — [[$1|уратача]] дәрәҗә.",
+ "babel-3": "[[$2|$3]] — [[$1|яхшы]] белә.",
+ "babel-4": "[[$2|$3]] — [[$1|бик әйбәт]] белә.",
+ "babel-5": "[[$2|$3]] — [[$1|һөнәри дәрәҗәдә]] белә.",
+ "babel-N": "[[$2|$3]] — [[$1|туган теле]]",
+ "babel-0-n": "Бу кулланучы [[$2|татарча]] [[$1|белми]] (яисә бөтенләй дә аңламый).",
+ "babel-1-n": "Бу кулланучы [[$2|татарча]] [[$1|башлангыч дәрәҗәдә]] белә.",
+ "babel-2-n": "Бу кулланучы [[$2|татарча]] [[$1|уртача дәрәҗәдә]] белә.",
+ "babel-3-n": "Бу кулланучы [[$2|татарча]] [[$1|ирекле дәрәҗәдә]] сөйләшә.",
+ "babel-4-n": "Бу кулланучы [[$2|татарча]] [[$1|бик әйбәт]] белә.",
+ "babel-5-n": "Бу кулланучы [[$2|татарча]] [[$1|һөнәри дәрәҗәдә]] белә.",
+ "babel-N-n": "Бу кулланучы өчен [[$2|татар теле]] [[$1|туган тел]]."
+}
diff --git a/MLEB/Babel/i18n/tt.json b/MLEB/Babel/i18n/tt.json
new file mode 100644
index 00000000..dbae801e
--- /dev/null
+++ b/MLEB/Babel/i18n/tt.json
@@ -0,0 +1,19 @@
+{
+ "@metadata": {
+ "authors": [
+ "Ильнар"
+ ]
+ },
+ "babel-autocreate-text-main": "Бу төркемдәге кулланучылар үзләренең $1 белүләрен күрсәтәләр.",
+ "babel-0": "Бу кулланучы [[$1|белми]] яисә [[$2|$3]] бөтенләй дә аңламый.",
+ "babel-1": "Бу кулланучы [[$2|$3]] [[$1|башлангыч]] дәрәҗәдә белә.",
+ "babel-5": "[[$2|$3]] — [[$1|һөнәри дәрәҗәдә]] белә.",
+ "babel-N": "[[$2|$3]] — [[$1|туган теле]]",
+ "babel-0-n": "Бу кулланучы [[$2|татарча]] [[$1|белми]] (яисә бөтенләй дә аңламый).",
+ "babel-1-n": "Бу кулланучы [[$2|татарча]] [[$1|башлангыч дәрәҗәдә]] белә.",
+ "babel-2-n": "Бу кулланучы [[$2|татарча]] [[$1|уртача дәрәҗәдә]] белә.",
+ "babel-3-n": "Бу кулланучы [[$2|татарча]] [[$1|ирекле дәрәҗәдә]] сөйләшә.",
+ "babel-4-n": "Бу кулланучы [[$2|татарча]] [[$1|бик әйбәт]] белә.",
+ "babel-5-n": "Бу кулланучы [[$2|татарча]] [[$1|һөнәри дәрәҗәдә]] белә.",
+ "babel-N-n": "Бу кулланучы өчен [[$2|татар теле]] [[$1|туган тел]]."
+} \ No newline at end of file
diff --git a/MLEB/Babel/i18n/ttt.json b/MLEB/Babel/i18n/ttt.json
new file mode 100644
index 00000000..764600cd
--- /dev/null
+++ b/MLEB/Babel/i18n/ttt.json
@@ -0,0 +1,24 @@
+{
+ "@metadata": {
+ "authors": [
+ "Erdemaslancan"
+ ]
+ },
+ "babel": "Zonoşe babila karwani",
+ "babel-url": "Project:Babil",
+ "babel-0": "Va karwan nê zoni ya [[$1|hêç]] nozone yonne [[$2|$3]] (fehem keron feqet vat nezonon).",
+ "babel-1": "Va karwan [[$2|$3]] [[$1|teynekon]] fehm kenon.",
+ "babel-2": "Va karwan [[$1|hol]] zonon [[$2|$3]].",
+ "babel-3": "Va karwan [[$1|Zehef]] zonon [[$2|$3]].",
+ "babel-4": "Va karwan [[$1|Zey zon]] dê co [[$2|$3]].",
+ "babel-5": "Va karwan [[$1|tor zehf]] sewiyon de [[$2|$3]] zonon.",
+ "babel-N": "[[$1|Zone mordon]] va karwani [[$2|$3]].",
+ "babel-0-n": "Va karwan nê zoni ya [[$1|hêç]] nozone yonne [[$2|$3]] (fehem keron feqet vat nezonon).",
+ "babel-1-n": "Va karwan [[$1|teynekon]] [[$2|Tatiki]] zonon.",
+ "babel-2-n": "[[$2|Tatikiya]] va karwani [[$1|holon]].",
+ "babel-3-n": "Va karwan [[$1|voş]] [[$2|tatiki]] zonon.",
+ "babel-4-n": "Va karwan [[$2|Tatiki]] zey [[$1|zoy zondo morda]] xo zonon.",
+ "babel-5-n": "Va karwan [[$1|tor zehf]] sewiyon de [[$2|Tatiki]] zonon.",
+ "babel-N-n": "[[$1|Zone mordon]] va karwani [[$2|Tatikiyon]].",
+ "babel-footer": "Zon dehon karwan"
+}
diff --git a/MLEB/Babel/i18n/tyv.json b/MLEB/Babel/i18n/tyv.json
new file mode 100644
index 00000000..6a97f3ab
--- /dev/null
+++ b/MLEB/Babel/i18n/tyv.json
@@ -0,0 +1,31 @@
+{
+ "@metadata": {
+ "authors": [
+ "Agilight",
+ "Sborsody"
+ ]
+ },
+ "babel": "Вавилон киржикчиниң дугайында медеглел",
+ "babel-desc": "Өске шаблоннар киирер магалыг дылдар дугайында колонкалар кылыр Парсер функциязын <code>#babel</code> немээри.",
+ "babel-url": "Project:Вавилон",
+ "babel-footer-url": ":Category:Вавилон — дылдар аайы-биле киржикчилер",
+ "babel-autocreate-abort": "Айыткан киржикчиниң ады [[$1|Вавилон]] деп бөлүктерниң авто-чаяарында ажыглатынып турар болгаш ол ат бүрүткеттинмес.",
+ "babel-autocreate-reason": "[[$1|Вавилон]] деп бөлүктүң арынын авто-чаяары.",
+ "babel-autocreate-text-levels": "Бо бөлүктүң киржикчилери $2 дылга билиглериниң бедиин $1 хире деп айтыкан.",
+ "babel-autocreate-text-main": "Бо бөлүктүң киржикчилери дылының билиглериниң бедиин $1 хире деп айтыкан.",
+ "babel-0": "[[$2|$3]] — [[$1|билбес]] (азы багай билир)",
+ "babel-1": "Бо ажыглакчының [[$2|тывалаары]] [[$1|эге]] деңнелдиг",
+ "babel-2": "[[$2|$3]] — [[$1|ортумак деңнелдиг]]",
+ "babel-3": "[[$2|$3]] — [[$1|эки деңнелдиг]]",
+ "babel-4": "[[$2|$3]] — [[$1|төрээн чыдам]]",
+ "babel-5": "[[$2|$3]] — [[$1|мерген деңнелдиг]]",
+ "babel-N": "[[$2|$3]] — [[$1|төрээн]]",
+ "babel-0-n": "Ажыглакчы [[$2|тывалап]] [[$1|билбес]] (азы арай деп билир).",
+ "babel-1-n": "Ажыглакчының [[$2|тывалаары]] [[$1|эге деңнелдиг]].",
+ "babel-2-n": "Киржикчиниң [[$2|тывалаары]] [[$1|ортумак]]",
+ "babel-3-n": "Киржикчи [[$1|хостуг]].[[$2|тывалаар]]",
+ "babel-4-n": "Киржикчиниң [[$2|тывалаары]] [[$1| төрээн чыгам]].",
+ "babel-5-n": "Киржикчи [[$1|профессионал]] [[$2|тывалаар]]",
+ "babel-N-n": "Киржикчиге [[$2|Тыва дыл]] — [[$1|төрээн дыл]].",
+ "babel-footer": "Дылдар аайы-биле киржикчилер"
+}
diff --git a/MLEB/Babel/i18n/udm.json b/MLEB/Babel/i18n/udm.json
new file mode 100644
index 00000000..75e800b2
--- /dev/null
+++ b/MLEB/Babel/i18n/udm.json
@@ -0,0 +1,10 @@
+{
+ "@metadata": {
+ "authors": [
+ "Kaganer",
+ "Purodha"
+ ]
+ },
+ "babel-url": "Project:Вавилон",
+ "babel-footer": "Викиавторъёс кылъёссыя"
+}
diff --git a/MLEB/Babel/i18n/ug-arab.json b/MLEB/Babel/i18n/ug-arab.json
new file mode 100644
index 00000000..ae46a686
--- /dev/null
+++ b/MLEB/Babel/i18n/ug-arab.json
@@ -0,0 +1,31 @@
+{
+ "@metadata": {
+ "authors": [
+ "Sahran",
+ "Tel'et"
+ ]
+ },
+ "babel": "بابىل ئىشلەتكۈچىلەر ئۇچۇرلىرى",
+ "babel-desc": "ئانالىز فۇنكىسىيىسى <code>#babel</code> نى قوشسىڭىز، شەخسىي قېلىپقا ئاپتوماتىك ھالدا بابىل ئىشلەتكۈچىلەر رامكىسىنى شەكىللەندۈرۈپ بېرىدۇ.",
+ "babel-url": "Project:بابىل",
+ "babel-footer-url": ":تۈر:بابىل - ئىشلەتكۈچىلەر تىلى بويىچە",
+ "babel-autocreate-abort": "سىز كىرگۈزگەن ئىشلەتكۈچى نامى [[$1|بابىل]] تۈرىنى ئاپتوماتىك قۇرۇش ئۈچۈن ئىشلىتىلگەن ۋە تىزىملىتالمايسىز.",
+ "babel-autocreate-reason": "[[$1|بابىل]] تۈرىنى ئاپتوماتىك قۇرۇش.",
+ "babel-autocreate-text-levels": "بۇ تۈردىكى ئىشلەتكۈچىلەر $2 تىلىنى $1 سەۋىيىدە بىلىدىغانلىقىنى كۆرسىتىدۇ.",
+ "babel-autocreate-text-main": "بۇ تۈردىكى ئىشلەتكۈچىلەر $1 تىلىنى بىلىدىغانلىقىنى كۆرسىتىدۇ.",
+ "babel-0": "بۇ ئىشلەتكۈچى [[$2|$3]] تىلىنى [[$1|بىلمەيدۇ]] (ياكى بەك تەستە چۈشىنىدۇ).",
+ "babel-1": "بۇ ئىشلەتكۈچى [[$2|$3]] تىلىنى [[$1|باشلانغۇچ]] سەۋىيىدە بىلىدۇ.",
+ "babel-2": "بۇ ئىشلەتكۈچى [[$2|$3]] تىلىنى [[$1|ئوتتۇرىھال]] سەۋىيىدە بىلىدۇ.",
+ "babel-3": "بۇ ئىشلەتكۈچى [[$2|$3]] تىلىنى [[$1|يۇقۇرى]] سەۋىيىدە بىلىدۇ.",
+ "babel-4": "بۇ ئىشلەتكۈچى [[$2|$3]] تىلىنى [[$1|ئانا تىلغا يېقىن]] سەۋىيىدە بىلىدۇ.",
+ "babel-5": "بۇ ئىشلەتكۈچى [[$2|$3]] تىلىنى [[$1|كەسپىي]] سەۋىيىدە بىلىدۇ.",
+ "babel-N": "بۇ ئىشلەتكۈچىنىڭ [[$1|ئانا تىلى]] [[$2|$3]] تىلى.",
+ "babel-0-n": "بۇ ئىشلەتكۈچى [[$2|ئۇيغۇر تىلىنى]] [[$1|بىلمەيدۇ]] (ياكى بەك تەستە چۈشىنىدۇ).",
+ "babel-1-n": "بۇ ئىشلەتكۈچى [[$2|ئۇيغۇر تىلىنى]] [[$1|باشلانغۇچ]] سەۋىيىدە بىلىدۇ.",
+ "babel-2-n": "بۇ ئىشلەتكۈچى [[$2|ئۇيغۇر تىلىنى]] [[$1|ئوتتۇرىھال]] سەۋىيىدە بىلىدۇ.",
+ "babel-3-n": "بۇ ئىشلەتكۈچى [[$2|ئۇيغۇر تىلىنى]] [[$1|يۇقۇرى]] سەۋىيىدە بىلىدۇ.",
+ "babel-4-n": "بۇ ئىشلەتكۈچى [[$2|ئۇيغۇر تىلىنى]] [[$1|ئانا تىلغا يېقىن]] سەۋىيىدە بىلىدۇ.",
+ "babel-5-n": "بۇ ئىشلەتكۈچى [[$2|ئۇيغۇر تىلىنى]] [[$1|كەسپىي]] سەۋىيىدە بىلىدۇ.",
+ "babel-N-n": "بۇ ئىشلەتكۈچىنىڭ [[$1|ئانا تىلى]] [[$2|ئۇيغۇر تىلى]].",
+ "babel-footer": "ئىشلەتكۈچى تىل بويىچە"
+}
diff --git a/MLEB/Babel/i18n/uk.json b/MLEB/Babel/i18n/uk.json
new file mode 100644
index 00000000..f5c14071
--- /dev/null
+++ b/MLEB/Babel/i18n/uk.json
@@ -0,0 +1,39 @@
+{
+ "@metadata": {
+ "authors": [
+ "A1",
+ "AS",
+ "Ahonc",
+ "Andygol",
+ "Base",
+ "Microcell",
+ "Olvin",
+ "Sodmy",
+ "Тест"
+ ]
+ },
+ "babel": "Відомості про мови учасника (Вавилон)",
+ "babel-desc": "Додає функцію парсера <code>#babel</code>, яка дозволяє автоматично створювати стовпець про володіння мовами з можливістю включення інших шаблонів",
+ "babel-url": "Project:Вавилон",
+ "babel-footer-url": ":Category:Користувачі за мовою",
+ "babel-autocreate-abort": "Зазначене ім'я користувача використовується для автоматичного створення категорій [[$1|Babel]] і не може бути зареєстровано.",
+ "babel-autocreate-reason": "Автоматичне створення сторінки категорії [[$1|Вавилон]].",
+ "babel-autocreate-text-levels": "Користувачі із цієї категорії вказали рівень знань $1 для мови $2.",
+ "babel-autocreate-text-main": "Користувачі в цій категорії вказали знання мови $1.",
+ "babel-0": "{{GENDER:$4|Цей користувач|Ця користувачка}} [[$1|не володіє]] [[$2|$3]] (або розуміє її дуже погано).",
+ "babel-1": "{{GENDER:$4|Цей користувач|Ця користувачка}} володіє [[$2|$3]] на [[$1|початковому рівні]].",
+ "babel-2": "{{GENDER:$4|Цей користувач|Ця користувачка}} володіє [[$2|$3]] на [[$1|середньому рівні]].",
+ "babel-3": "{{GENDER:$4|Цей користувач|Ця користувачка}} володіє [[$2|$3]] на [[$1|високому рівні]].",
+ "babel-4": "{{GENDER:$4|Цей користувач|Ця користувачка}} володіє [[$2|$3]] майже [[$1|як рідною]].",
+ "babel-5": "{{GENDER:$4|Цей користувач|Ця користувачка}} [[$1|професійно]] володіє [[$2|$3]].",
+ "babel-N": "Для {{GENDER:$4|цього користувача|цієї користувачки}} [[$2|$3]] є [[$1|рідною]].",
+ "babel-0-n": "{{GENDER:$4|Цей користувач|Ця користувачка}} [[$1|не володіє]] [[$2|українською мовою]] (або розуміє її дуже погано).",
+ "babel-1-n": "{{GENDER:$4|Цей користувач|Ця користувачка}} володіє [[$2|українською мовою]] на [[$1|початковому рівні]].",
+ "babel-2-n": "{{GENDER:$4|Цей користувач|Ця користувачка}} володіє [[$2|українською мовою]] на [[$1|середньому рівні]].",
+ "babel-3-n": "{{GENDER:$4|Цей користувач|Ця користувачка}} володіє [[$2|українською мовою]] на [[$1|високому рівні]].",
+ "babel-4-n": "{{GENDER:$4|Цей користувач|Ця користувачка}} володіє [[$2|українською мовою]] майже [[$1|як рідною]].",
+ "babel-5-n": "{{GENDER:$4|Цей користувач|Ця користувачка}} [[$1|професійно]] володіє [[$2|українською мовою]].",
+ "babel-N-n": "Для {{GENDER:$4|цього користувача|цієї користувачки}} [[$2|українська мова]] є [[$1|рідною]].",
+ "babel-template": "Template:User $1",
+ "babel-footer": "Користувачі за мовою"
+}
diff --git a/MLEB/Babel/i18n/ur.json b/MLEB/Babel/i18n/ur.json
new file mode 100644
index 00000000..f2f9cfd8
--- /dev/null
+++ b/MLEB/Babel/i18n/ur.json
@@ -0,0 +1,34 @@
+{
+ "@metadata": {
+ "authors": [
+ "GerardM",
+ "Istabani",
+ "Noor2020",
+ "محبوب عالم",
+ "Hindustanilanguage",
+ "Stryn"
+ ]
+ },
+ "babel": "بابل معلوماتِ صارف",
+ "babel-url": "منصوبہ: بابل",
+ "babel-footer-url": ":زمرہ:بابل - صارفین بلحاظ زبان",
+ "babel-autocreate-abort": "آپ کا مختص کردہ صارف کا نام خودکار [[$1|بابل]] زمرہ تخلیق کیلئے مستعمل ہے اور یہ درج نہیں کیا جاسکتا.",
+ "babel-autocreate-reason": "[[$1|بابل]] زمرہ‌جاتی صفحہ کی خودکار تخلیق ہورہی ہے.",
+ "babel-autocreate-text-levels": "اِس زمرہ کے صارفین یہ نشاندہی کرتے ہیں کہ $2 زبان کیلئے اُن کی مہارتی سطح $1 ہے.",
+ "babel-autocreate-text-main": "اِس زمرہ کے صارفین یہ نشاندہی کرتے ہیں کہ وہ $1 زبان کا علم رکھتے ہیں.",
+ "babel-0": "یہ صارف [[$2|اردو]] [[$1|نہیں]] جانتا (یا اِسے کافی مشکل سے سمجھتا ہے).",
+ "babel-1": "یہ صارف [[$2|اردو]] کا [[$1|بنیادی]] علم رکھتا ہے.",
+ "babel-2": "یہ صارف [[$2|اردو]] کا [[$1|متوسط]] علم رکھتا ہے.",
+ "babel-3": "یہ صارف [[$2|اردو]] کا [[$1|اعلیٰ]] علم رکھتا ہے.",
+ "babel-4": "یہ صارف [[$2|اردو]] کا [[$1|پیدائشی بولنے والے کے قریب]] علم رکھتا ہے.",
+ "babel-5": "یہ صارف [[$2|اردو]] کا [[$1|پیشہ‌ورانہ]] علم رکھتا ہے.",
+ "babel-N": "یہ صارف [[$2|اردو]] کا [[$1|پیدائشی]] متکلم ہے.",
+ "babel-0-n": "یہ صارف [[$2|اردو]] [[$1|نہیں]] جانتا (یا اِسے کافی مشکل سے سمجھتا ہے).",
+ "babel-1-n": "یہ صارف [[$2|اردو]] کا [[$1|بنیادی]] علم رکھتا ہے.",
+ "babel-2-n": "یہ صارف [[$2|اردو]] کا [[$1|متوسط]] علم رکھتا ہے.",
+ "babel-3-n": "یہ صارف [[$2|اردو]] کا [[$1|اعلیٰ]] علم رکھتا ہے.",
+ "babel-4-n": "یہ صارف [[$2|اردو]] کے بارے میں [[$1|پیدائشی متکلم]] کے قریب قریب دانش رکھتا ہے.",
+ "babel-5-n": "یہ صارف [[$2|اردو]] کا [[$1|پیشہ ورانہ]] دانش رکھتا ہے.",
+ "babel-N-n": "یہ صارف [[$2|اردو]] کا [[$1|پیدائشی متکلم]] ہے.",
+ "babel-footer": "زبان کے اعتبار سے صارف"
+}
diff --git a/MLEB/Babel/i18n/uz.json b/MLEB/Babel/i18n/uz.json
new file mode 100644
index 00000000..3b056894
--- /dev/null
+++ b/MLEB/Babel/i18n/uz.json
@@ -0,0 +1,32 @@
+{
+ "@metadata": {
+ "authors": [
+ "Nataev",
+ "Purodha",
+ "Sociologist"
+ ]
+ },
+ "babel": "Foydalanuvchi bilgan tillar haqida maʼlumot (Bobil)",
+ "babel-desc": "Avtomatik ravishda tillar haqida oʻzgartirsa boʻladigan maʼlumot ustunini yaratadigan <code>#babel</code> parseri funksiyasini qoʻshadi",
+ "babel-url": "Project:Bobil",
+ "babel-footer-url": ":Category:Bobil - Foydalanuvchilar tillar boʻyicha",
+ "babel-autocreate-abort": "Siz koʻrsatgan foydalanuvchi nomi avtomatik ravishda [[$1|Bobil]] turkumlarini yaratish uchun qoʻllaniladi va uni qayd qilsa boʻlmaydi.",
+ "babel-autocreate-reason": "Avtomatik ravishda [[$1|Bolbil]] turkum sahifasini yaratish.",
+ "babel-autocreate-text-levels": "Bu turkumdagi foydalanuvchilar $2 til uchun $1 bilim darajasini koʻrsatishgan.",
+ "babel-autocreate-text-main": "Bu turkumdagi foydalanuvchilar $1 tilni bilishlarini koʻrsatishgan.",
+ "babel-0": "[[$2|$3]] — [[$1|bilmaydi]] (yoki qiyinchilik bilan tushunadi)",
+ "babel-1": "[[$2|$3]] — [[$1|boshlangʻich daraja]]",
+ "babel-2": "[[$2|$3]] — [[$1|oʻrtacha daraja]]",
+ "babel-3": "[[$2|$3]] — [[$1|yaxshi daraja]]",
+ "babel-4": "[[$2|$3]] — [[$1|deyarli ona tili kabi]]",
+ "babel-5": "[[$2|$3]] — [[$1|professional daraja]]",
+ "babel-N": "[[$2|$3]] — [[$1|ona tili]]",
+ "babel-0-n": "Bu foydalanuvchi [[$2|oʻzbek tilini]] [[$1|umuman bilmaydi]].",
+ "babel-1-n": "Bu foydalanuvchi [[$2|oʻzbek tilini]] [[$1|boshlangʻich]] darajada biladi.",
+ "babel-2-n": "Bu foydalanuvchi [[$2|oʻzbek tilini]] [[$1|oʻrtacha darajada]] biladi.",
+ "babel-3-n": "Bu foydalanuvchi [[$2|oʻzbek tilini]] [[$1|mukammal]] biladi.",
+ "babel-4-n": "Bu foydalanuvchi [[$2|oʻzbek tilini]] [[$1|deyarli ona tilidek]] biladi.",
+ "babel-5-n": "Bu foydalanuvchi [[$2|oʻzbek tilini]] [[$1|professional darajada]] biladi.",
+ "babel-N-n": "Bu ishtirokchining [[$1|ona tili]] [[$2|oʻzbek tili]]dir.",
+ "babel-footer": "Foydalanuvchilar tillari boʻyicha"
+}
diff --git a/MLEB/Babel/i18n/vec.json b/MLEB/Babel/i18n/vec.json
new file mode 100644
index 00000000..a7363576
--- /dev/null
+++ b/MLEB/Babel/i18n/vec.json
@@ -0,0 +1,31 @@
+{
+ "@metadata": {
+ "authors": [
+ "Candalua",
+ "Gloria sah"
+ ]
+ },
+ "babel": "Babel utente",
+ "babel-desc": "Zonta la funsion parser <code>#babel</code> par permétar la generazion automatica de un riquadro \"utente Babel\" con la possibilità de inserir template personalizà",
+ "babel-url": "Project:Babel",
+ "babel-footer-url": ":Category:Babel - Utenti par lengua",
+ "babel-autocreate-abort": "El nome utente speçificà el xe doparà par la creassion automàtega de categorie [[$1|Babel]] e no se pol registrarlo.",
+ "babel-autocreate-reason": "Creo automaticamente la pàxena de la categoria [[$1|Babel]].",
+ "babel-autocreate-text-levels": "I utenti in sta categoria i gà indicà de verghe un livèl de conossensa $1 de la lengua $2.",
+ "babel-autocreate-text-main": "I utenti in sta categoria i gà indicà che i conosse la lengua $1.",
+ "babel-0": "Sto utente qua [[$1|no'l parla]] par gnente el [[$2|$3]] (o el lo capisse con gran fadiga).",
+ "babel-1": "Sto utente qua el parla [[$1|na s-cianta]] el [[$2|$3]].",
+ "babel-2": "Sto utente qua el parla [[$1|'bastansa ben]] el [[$2|$3]].",
+ "babel-3": "Sto utente qua el parla el [[$2|$3]] [[$1|ben assè]].",
+ "babel-4": "Sto utente qua el parla el [[$2|$3]] squasi [[$1|come la so lengua mare]].",
+ "babel-5": "Sto utente qua el parla el [[$2|$3]] a [[$1|livèi da professionista]].",
+ "babel-N": "Sto utente qua el parla el [[$2|$3]] [[$1|da co che'l xe nato]].",
+ "babel-0-n": "Sto utente qua [[$1|no'l parla]] par gnente la [[$2|lengua veneta]] (o el la capisse con gran fadiga).",
+ "babel-1-n": "Sto utente qua el parla [[$1|na s-cianta]] la [[$2|lengua veneta]].",
+ "babel-2-n": "Sto utente qua el parla [[$1|'bastansa ben]] la [[$2|lengua veneta]].",
+ "babel-3-n": "Sto utente qua el parla la [[$2|lengua veneta]] [[$1|ben assè]].",
+ "babel-4-n": "Sto utente qua el parla la [[$2|lengua veneta]] squasi [[$1|come la so lengua mare]].",
+ "babel-5-n": "Sto utente qua el parla la [[$2|lengua veneta]] a [[$1|livèi da professionista]].",
+ "babel-N-n": "Sto utente qua el parla la [[$2|lengua veneta]] [[$1|da co che'l xe nato]].",
+ "babel-footer": "Utenti par lengua"
+}
diff --git a/MLEB/Babel/i18n/vep.json b/MLEB/Babel/i18n/vep.json
new file mode 100644
index 00000000..e24321e0
--- /dev/null
+++ b/MLEB/Babel/i18n/vep.json
@@ -0,0 +1,30 @@
+{
+ "@metadata": {
+ "authors": [
+ "Игорь Бродский"
+ ]
+ },
+ "babel": "Andmused ühtnijan keliš",
+ "babel-desc": "Ližadab <code>#babel</code>-parseran funkcii, kudamb laskeb säta avtomatižešti pacaz informacijanke keliš, kudambha sab ližata toižid-ki šablonoid",
+ "babel-url": "Project:Vavilon",
+ "babel-footer-url": ":Category:Babel - Kävutajad keliden mödhe",
+ "babel-autocreate-abort": "Teil kirjutadud ühtnijan nimi kävutadas [[$1|Babel]]-projektan kategorijoiden avtomatižen sädandan täht, i sikš sidä ei sa registriruida.",
+ "babel-autocreate-reason": "[[$1|Babel]]-projektan avtomatine lehtpolen sädand.",
+ "babel-autocreate-text-levels": "Necen kategorijan kävutajad oma ozutadud tedonmär $1 $2-kelen täht.",
+ "babel-autocreate-text-main": "Necen kategorijan kävutajad ozutiba $1-kelen tedmine.",
+ "babel-0": "Nece kävutai [[$1|ei el'genda]] kel't [[$2|$3]] (vai el'gendab lujiden jügedusidenke)",
+ "babel-1": "Nece kävutai tedab kel't [[$2|$3]] [[$1|augotižmäras]]",
+ "babel-2": "Nece kävutai tedab kel't [[$2|$3]] [[$1|keskmäras]].",
+ "babel-3": "Nece kävutai tedab kel't [[$2|$3]] [[$1|hüväs märas]].",
+ "babel-4": "Nece kävutai tedab kel't [[$2|$3]] [[$1|läz mamankelen kävutamišt]].",
+ "babel-5": "Nece kävutai tedab kel't [[$2|$3]] [[$1|professionaližes märas]].",
+ "babel-N": "[[$2|$3]] kel' om kävutajan [[$1|mamankel']]",
+ "babel-0-n": "Nece kävutai [[$1|ei el'genda]] [[$2|vepsän kel't]] (vai el'gendab lujiden jügedusidenke).",
+ "babel-1-n": "Nece kävutai tedab [[$2|vepsän kel't]] [[$1|augotižmäras]].",
+ "babel-2-n": "Nece kävutai tedab [[$2|vepsän kel't]] [[$1|keskmäras]].",
+ "babel-3-n": "Nece kävutai tedab [[$2|vepsän kel't]] [[$1|hüväs märas]].",
+ "babel-4-n": "Nece kävutai tedab [[$2|vepsän kel't]] [[$1|läz mamankelen kävutamišt]].",
+ "babel-5-n": "Nece kävutai tedab [[$2|vepsän kel't]] [[$1|professionaližes märas]].",
+ "babel-N-n": "[[$2|Vepsän kel']] om necen kävutajan [[$1|mamankel']].",
+ "babel-footer": "Kävutajad keliden mödhe"
+}
diff --git a/MLEB/Babel/i18n/vi.json b/MLEB/Babel/i18n/vi.json
new file mode 100644
index 00000000..06730d1d
--- /dev/null
+++ b/MLEB/Babel/i18n/vi.json
@@ -0,0 +1,31 @@
+{
+ "@metadata": {
+ "authors": [
+ "Minh Nguyen",
+ "Vinhtantran"
+ ]
+ },
+ "babel": "Thông tin ngôn ngữ thành viên",
+ "babel-desc": "Thêm hàm cú pháp <code>#babel</code> để cho phép tự động sinh ra một hộp thông tin ngôn ngữ thành viên và có thể thêm vào những bản mẫu tùy chọn",
+ "babel-url": "Project:Ngôn ngữ",
+ "babel-footer-url": ":Category:Babel – Thành viên theo ngôn ngữ",
+ "babel-autocreate-abort": "Bạn không thể mở tài khoản với tên bạn đã yêu cầu vì nó dùng để tự động tạo thể loại [[$1|Babel]].",
+ "babel-autocreate-reason": "Tự động tạo trang thể loại [[$1|Babel]].",
+ "babel-autocreate-text-levels": "Người dùng trong thể loại này cho thấy họ thành thạo ngôn ngữ $2 ở mức $1.",
+ "babel-autocreate-text-main": "Người dùng trong thể loại này cho thấy họ có kiến thức về ngôn ngữ $1.",
+ "babel-0": "Thành viên này [[$1|hoàn toàn không biết]] [[$2|$3]] (hoặc rất khó khăn để hiểu).",
+ "babel-1": "Thành viên này biết [[$2|$3]] ở mức độ [[$1|cơ bản]].",
+ "babel-2": "Thành viên này biết [[$2|$3]] ở mức độ [[$1|khá]].",
+ "babel-3": "Thành viên này biết [[$2|$3]] ở mức độ [[$1|tốt]].",
+ "babel-4": "Thành viên này có thể hiểu [[$2|$3]] gần như [[$1|người bản xứ]].",
+ "babel-5": "Thành viên này biết [[$2|$3]] ở mức độ của một [[$1|chuyên gia]].",
+ "babel-N": "Thành viên này xem [[$2|$3]] là ngôn ngữ [[$1|mẹ đẻ]].",
+ "babel-0-n": "Thành viên này [[$1|hoàn toàn không biết]] [[$2|tiếng Việt]] (hoặc rất khó khăn để hiểu).",
+ "babel-1-n": "Người dùng này biết [[$2|tiếng Việt]] với trình độ [[$1|cơ bản]].",
+ "babel-2-n": "Người dùng này biết [[$2|tiếng Việt]] với trình độ [[$1|khá]].",
+ "babel-3-n": "Người dùng này biết [[$2|tiếng Việt]] với trình độ [[$1|tốt]].",
+ "babel-4-n": "Người dùng này có thể hiểu [[$2|tiếng Việt]] [[$1|gần như người Việt]].",
+ "babel-5-n": "Người dùng này biết [[$2|tiếng Việt]] với trình độ của một [[$1|chuyên gia]].",
+ "babel-N-n": "Thành viên này xem [[$2|tiếng Việt]] là ngôn ngữ [[$1|mẹ đẻ]].",
+ "babel-footer": "Thành viên theo ngôn ngữ"
+}
diff --git a/MLEB/Babel/i18n/vls.json b/MLEB/Babel/i18n/vls.json
new file mode 100644
index 00000000..d2ede6d7
--- /dev/null
+++ b/MLEB/Babel/i18n/vls.json
@@ -0,0 +1,17 @@
+{
+ "@metadata": [],
+ "babel-footer-url": ":Category:Babel - Gebrukers noa toaln",
+ "babel-0": "Deze gebruker kan [[$1|niet te vet]] vele [[$2|$3]] klappn.",
+ "babel-1": "Deze gebruker kan e [[$1|hêel klêen bitje]] e koutnansje voern in 't [[$2|$3]].",
+ "babel-2": "Deze gebruker kan [[$2|$3]] klapp'n van e [[$1|middelmoatig]] niveau.",
+ "babel-3": "'t Niveau van [[$2|$3]] van deze gebruker es [[$1|styf ôge]].",
+ "babel-4": "Dizzn gebruker klapt [[$2|$3]] [[$1|gelik nen echtn]].",
+ "babel-N": "Dien gebruker ier es [[$1|geboorn en gekwêekt]] in 't [[$2|$3]].",
+ "babel-0-n": "Deze gebruker kan [[$1|niet te vet]] vele [[$2|West-Vlams]] klappn.",
+ "babel-1-n": "Deze gebruker kan e [[$1|hêel klêen bitje]] e koutnansje voern in 't [[$2|West-Vlams]].",
+ "babel-2-n": "Deze gebruker kan [[$2|West-Vlams]] klapp'n van e [[$1|middelmoatig]] niveau.",
+ "babel-3-n": "'t Niveau van [[$2|West-Vlams]] van deze gebruker es [[$1|styf ôge]].",
+ "babel-4-n": "Dizzn gebruker klapt [[$2|West-Vlams]] [[$1|gelik nen echtn]].",
+ "babel-N-n": "Dien gebruker ier es [[$1|geboorn en gekwêekt]] in 't [[$2|West-Vlams]].",
+ "babel-footer": "Gebrukers noa toaln"
+}
diff --git a/MLEB/Babel/i18n/vmf.json b/MLEB/Babel/i18n/vmf.json
new file mode 100644
index 00000000..02966787
--- /dev/null
+++ b/MLEB/Babel/i18n/vmf.json
@@ -0,0 +1,28 @@
+{
+ "@metadata": {
+ "authors": [
+ "Silvicola"
+ ]
+ },
+ "babel": "Babel-bajdreechâr-ôôgaawâ",
+ "babel-desc": "Fiichd â <code>#babel</code>-bhaarsâr-fungdsjoon âu, mid därâ mr dan audomaadisch â schbaldâ mid ghäschdlâ aus bearbajdâr-ôôgaawâ bäschdlâ ghôô. Fir diâ ghäschdlâ ghôô mr dâbaj ajchâne foorlaachâ âjsedsâ.",
+ "babel-url": "Project:Babel",
+ "babel-autocreate-abort": "Däär bearbajdârnôômâ, den'd ôôgääwâ hasch, wird fir d'audomaadische erdsajchung fon [[$1|Babel]]-ghadegôriiâ gnumâ, den ghâu mr dan awâr ned regischdriirâ.",
+ "babel-autocreate-reason": "Audomaadische erdsajchung fon'râr [[$1|Babel]]-ghadegôrii.",
+ "babel-autocreate-text-levels": "Bearbajdâr, diâ diâ ghadegorii beôôschbruchâ, sôôchâ damid, dase in dr schbrôôch $2 ôôgääblich dâ ghendnis-schdand $1 hen.",
+ "babel-autocreate-text-main": "D'bearbajdr in därâ ghadegorii beôôschbruchâ, dase $1 ghenâ.",
+ "babel-0": "Dr bearbajdâr ghôô [[$2|$3]] [[$1|gôôr ned]] odr fârschdeds doch nôr gands arch schwäär.",
+ "babel-1": "Dr bearbajdâr ghôô [[$2|$3]] iwârhaabd âmôôl uf'm [[$1|grund-niwoo]].",
+ "babel-2": "Dr bearbajdâr ghôô [[$2|$3]] nôr uf [[$1|midlmääsichâm]] niwoo.",
+ "babel-3": "Dr bearbajdâr ghôô [[$2|$3]] doch scho uf rächd [[$1|hoâm]] niwoo.",
+ "babel-4": "Dr bearbajdâr ghôô [[$2|$3]] wiâ ôônâr, däär [[$1|dâmid ufgwachsâ is]].",
+ "babel-5": "Dr bearbajdâr ghôô [[$2|$3]] wiâ ôônâr, däär [[$1|däächlich dâmid schafd]].",
+ "babel-N": "Dr bearbajdâr ghôô [[$2|$3]], [[$1|wiâ's'm sâj muâdr bajbrôchd had]].",
+ "babel-0-n": "Dr bearbajdâr ghôô [[$2|Fränggisch]] [[$1|gôôr ned]], odr s'feld'm doch rächd schwäär.",
+ "babel-1-n": "Dr bearbajdâr ghôô [[$2|Fränggisch]] [[$1|iwârhaabds ärschd âmôôl aweng]].",
+ "babel-2-n": "Dr bearbajdâr ghôô [[$2|Fränggisch]] uf [[$1|midlmääsichâm]] niwoo.",
+ "babel-3-n": "Dr bearbajdâr ghôô [[$2|Fränggisch]] uf [[$1|hôâm]] niwoo.",
+ "babel-4-n": "Dr bearbajdâr ghôô [[$2|Fränggisch]], wiâ ôônâr, däär [[$1|dâmid ufgwachsâ is]].",
+ "babel-5-n": "Dr bearbajdâr ghôô [[$2|Fränggisch]] wiâ ôônâr, [[$1|däär däächlich dâmid schafd]].",
+ "babel-N-n": "Dr bearbajdâr ghôô [[$2|Fränggisch]], [[$1|wiâ's'm sâj muâdr bajbrôchd had]]."
+}
diff --git a/MLEB/Babel/i18n/vo.json b/MLEB/Babel/i18n/vo.json
new file mode 100644
index 00000000..5e012230
--- /dev/null
+++ b/MLEB/Babel/i18n/vo.json
@@ -0,0 +1,31 @@
+{
+ "@metadata": {
+ "authors": [
+ "Malafaya",
+ "Smeira"
+ ]
+ },
+ "babel": "Gebananüns-Babel",
+ "babel-url": "Project:Babel",
+ "babel-footer-url": ":Category:Babel - Gebans ma pük",
+ "babel-autocreate-abort": "Gebananem fa ol pavilöl pagebon pö jafam itjäfidik [[$1|Babel]]-kladas e no dalon paregistarön.",
+ "babel-autocreate-reason": "[[$1|Babel]]-kladapad pajafon itjäfidiko",
+ "babel-autocreate-text-levels": "Gebans in klad at sagons, das labons nivoda: $1 tefü pük: $2.",
+ "babel-autocreate-text-main": "Gebans in klad at sagons, das sevons püki: $1.",
+ "babel-0": "Geban at [[$1|no suemon]] [[$2|$3]]i (u suemon oni mu fikuliko).",
+ "babel-1": "Geban at kanon kompenön pö spikots me [[$2|$3]] nivoda [[$1|balugik]].",
+ "babel-2": "Geban at kanon kompenön pö spikots me [[$2|$3]] nivoda [[$1|vüik]].",
+ "babel-3": "Geban at kanon kompenön pö spikots me [[$2|$3]] nivoda [[$1|löpik]].",
+ "babel-4": "Geban at kanon gebön [[$2|$3]]i [[$1|ti so gudiko, äsä lomapüki oka]].",
+ "babel-5": "Geban at kanon gebön [[$2|$3]]i [[$1|caliko]].",
+ "babel-N": "Geban at labon [[$2|$3]]i as [[$1|lomapük]] oka.",
+ "babel-0-n": "Geban a [[$1|no suemon]] [[$2|Volapük]]i (u suemon oni mu fikuliko).",
+ "babel-1-n": "Geban at labon sevi [[$1|stabik]] [[$2|Volapük]]a.",
+ "babel-2-n": "Geban at labon sevi [[$1|vüik]] [[$2|Volapük]]a.",
+ "babel-3-n": "Geban at labon sevi [[$1|löpik]] [[$2|Volapük]]a.",
+ "babel-4-n": "Geban at labon sevi [[$1|sümik ad ut lomapükana]] [[$2|Volapük]]a.",
+ "babel-5-n": "Geban at labon sevi [[$1|calik]] [[$2|Volapük]]a.",
+ "babel-N-n": "Geban at labon nivodi [[$1|lomapükik]] [[$2|Volapük]]a.",
+ "babel-template": "Template:Geban $1",
+ "babel-footer": "Gebans ma pük"
+}
diff --git a/MLEB/Babel/i18n/vot.json b/MLEB/Babel/i18n/vot.json
new file mode 100644
index 00000000..88481aa8
--- /dev/null
+++ b/MLEB/Babel/i18n/vot.json
@@ -0,0 +1,28 @@
+{
+ "@metadata": {
+ "authors": [
+ "2Q"
+ ]
+ },
+ "babel": "Tšäüttijää tšeelesnorofka",
+ "babel-desc": "Lissäb <code>#babel</code>-funkttsiaa, kumpa annab tšäüttijää luvaa tšeelisnorofka-škatulkaa lissämä.",
+ "babel-url": "Project:Babel",
+ "babel-autocreate-abort": "Tšäüttijänimi, kumpa õõd antõnnu, on zańimoitõttu [[$1|Babelii]] meelegruppaa avtomattskoi loomizõõ, sissi ed või registriiroitta sitä.",
+ "babel-autocreate-reason": "[[$1|Babelii]] meelegruppatšüľľee avtomattskoi loomin.",
+ "babel-autocreate-text-levels": "Tšäüttijäd kassen gruppaza õmad kuulutõttu, jot nämä tunta $2 tšeelt $1 uroveńńalla.",
+ "babel-autocreate-text-main": "Tšäüttijäd kassen gruppaza õmad kuulutõttu, jot nämä saa arvoa $1 tšeelt.",
+ "babel-0": "Kase tšäüttijä tunnab [[$1|liika vähää vai eb eestiit]] [[$2|$3]] tšeelt.",
+ "babel-1": "Kase tšäüttijä on [[$2|$3]] tšeelee [[$1|õppialkõja]]",
+ "babel-2": "Kase tšäüttijä tunnab [[$2|$3]] tšeelt [[$1|tšehsimeisessi]].",
+ "babel-3": "Kase tšäüttijä tunnab [[$2|$3]] tšeelt [[$1|esimeissi]].",
+ "babel-4": "Kase tšäüttijä tunnab [[$2|$3]] tšeelt [[$1|bezmalo nii ku emätšeeli]].",
+ "babel-5": "Kase tšäüttijä tunnab tarvitta [[$2|$3]] tšeelt [[$1|ammõttimeissi]].",
+ "babel-N": "[[$2|$3]] tšeeli on sene tšäüttijää [[$1|emätšeeli]].",
+ "babel-0-n": "Kase tšäüttijä [[$1|eb tunna]] [[$2|vaďďakossi]].",
+ "babel-1-n": "Kase tšäüttijä pajatab [[$1|vähää]] [[$2|vaďďakossi]].",
+ "babel-2-n": "Kase tšäüttijä tunnab [[$1|tšehsimeisessi]] [[$2|vaďďakossi]].",
+ "babel-3-n": "Kase tšäüttijä tunnab [[$1|esimeissi]] [[$2|vaďďakossi]].",
+ "babel-4-n": "Kase tšäüttijä tunnab [[$2|vaďďakossi]] [[$1|bezmalo nii ku emätšeeli]].",
+ "babel-5-n": "Kase tšäüttijä tunnab tarvitta [[$2|vaďďakossi]] [[$1|ammõttimeissi]].",
+ "babel-N-n": "[[$2|Vaďďa tšeeli]] on sene tšäüttijää [[$1|emätšeeli]]."
+}
diff --git a/MLEB/Babel/i18n/vro.json b/MLEB/Babel/i18n/vro.json
new file mode 100644
index 00000000..4c017386
--- /dev/null
+++ b/MLEB/Babel/i18n/vro.json
@@ -0,0 +1,24 @@
+{
+ "@metadata": {
+ "authors": [
+ "Võrok"
+ ]
+ },
+ "babel": "Pruukja keelemõistminõ (Paabõli perrä)",
+ "babel-desc": "Tege <code>#babel</code>-abinõvvo, miä luu esiq pruukja keelemõistmisõ tabõli, kohe saa pandaq näüdüssit.",
+ "babel-url": "Project:Paabõl",
+ "babel-0": "Taa pruukja mõist [[$1|väega veidüq vai ei sukugi]] [[$2|$3]] kiilt.",
+ "babel-1": "Taa pruukja mõist [[$1|veidükese]] [[$2|$3]] kiilt.",
+ "babel-2": "Taa pruukja mõist [[$1|küländ häste]] [[$2|$3]] kiilt.",
+ "babel-3": "Taa pruukja mõist [[$1|väega häste]] [[$2|$3]] kiilt.",
+ "babel-4": "Taa pruukja mõist [[$2|$3]] kiilt [[$1|pia nigu imäkiilt]].",
+ "babel-5": "Taa pruukja om [[$2|$3]] keele pääle [[$1|vällä opnuq]].",
+ "babel-N": "Taa pruukja [[$1|imäkiil]] om [[$2|$3]] kiil.",
+ "babel-0-n": "Taa pruukja mõist [[$1|väega veidüq vai ei sukugi]] [[$2|võro]] kiilt.",
+ "babel-1-n": "Taa pruukja mõist [[$1|veidükese]] [[$2|võro]] kiilt.",
+ "babel-2-n": "Taa pruukja mõist [[$1|küländ häste]] [[$2|võro]] kiilt.",
+ "babel-3-n": "Taa pruukja mõist [[$1|väega häste]] [[$2|võro]] kiilt.",
+ "babel-4-n": "Taa pruukja mõist [[$2|võro]] kiilt [[$1|pia nigu imäkiilt]].",
+ "babel-5-n": "Taa pruukja om [[$2|võro]] keele pääle [[$1|vällä opnuq]].",
+ "babel-N-n": "Taa pruukja [[$1|imäkiil]] om [[$2|võro]] kiil."
+}
diff --git a/MLEB/Babel/i18n/wa.json b/MLEB/Babel/i18n/wa.json
new file mode 100644
index 00000000..a95dfd1d
--- /dev/null
+++ b/MLEB/Babel/i18n/wa.json
@@ -0,0 +1,31 @@
+{
+ "@metadata": {
+ "authors": [
+ "Lucyin",
+ "Srtxg"
+ ]
+ },
+ "babel": "Racsegnes Babel so l' uzeu",
+ "babel-desc": "Radjoute ene fonccion d' analijhe sintacsike <code>#babel</code> ki permete li fjhaedje otomatike di boesses ''Babel'' po-z indiker les lingaedjes k' èn uzeu cnoxhe; avou l' possibilité di radjouter locålmint des modeles",
+ "babel-url": "Project:Babel",
+ "babel-footer-url": ":Category:Babel - Uzeus pa lingaedje",
+ "babel-autocreate-abort": "Li no d' uzeu ki vos avoz dné est ddja eployî dins l' categoreye [[$1|Babel]] \"oto-askepiaedje\"; dabôrd, i n' såreut esse ritnou.",
+ "babel-autocreate-reason": "Askepiaedje otomatike del categoreye [[$1|Babel]].",
+ "babel-autocreate-text-levels": "Les uzeus d' cisse categoreye ci ont-st ene kinoxhance di livea $1 do lingaedje $2.",
+ "babel-autocreate-text-main": "Les uzeus d' cisse categoreye ci ont-st ene kinoxhance do lingaedje $1.",
+ "babel-0": "{{GENDER:$4|Cist uzeu|Ciste uzeuse}} ci n' a [[$1|nole]] kinoxhance do [[$2|$3]] (oudon-bén, nel comprinde k' a schipe)",
+ "babel-1": "{{GENDER:$4|Cist uzeu ci ni sait l' [[$2|$3]] ki come [[$1|onk ki cmince]]|Ciste uzeuse ci ni sait l' [[$2|$3]] ki come [[$1|ene ki cmince]]}}.",
+ "babel-2": "{{GENDER:$4|Cist uzeu|Ciste uzeuse}} ci kinoxhe [[$1|ene miete]] li [[$2|$3]].",
+ "babel-3": "{{GENDER:$4|Cist uzeu|Ciste uzeuse}} ci sait [[$1|bén]] l' [[$2|$3]].",
+ "babel-4": "{{GENDER:$4|Cist uzeu|Ciste uzeuse}} ci sait [[$1|foirt bén]] l' [[$2|$3]].",
+ "babel-5": "{{GENDER:$4|Cist uzeu|Ciste uzeuse}} ci kinoxhe li [[$2|$3]] [[$1|come ene djin d' mestî]]",
+ "babel-N": "{{GENDER:$4|Cist uzeu est [[$2|$3]]-cåzant [[$1|natif]]|Ciste uzeuse est [[$2|$3]]-cåzante [[$1|native]]}}.",
+ "babel-0-n": "{{GENDER:$4|Cist uzeu|Ciste uzeuse}} cial ni sait [[$1|nén]] l'&nbsp;[[$2|walon]] (oudon-bén nel comprinde k' a poenne).",
+ "babel-1-n": "{{GENDER:$4|Cist uzeu ci ni sait l' [[$2|walon]] ki come [[$1|onk ki cmince]]|Ciste uzeuse ci ni sait l' [[$2|walon]] ki come [[$1|ene ki cmince]]}}.",
+ "babel-2-n": "{{GENDER:$4|Cist uzeu|Ciste uzeuse}} ci kinoxhe [[$1|ene miete]] li [[$2|walon]].",
+ "babel-3-n": "{{GENDER:$4|Cist uzeu|Ciste uzeuse}} ci sait [[$1|bén]] l' [[$2|walon]].",
+ "babel-4-n": "{{GENDER:$4|Cist uzeu|Ciste uzeuse}} ci kinoxhe [[$1|foirt bén]] li [[$2|walon]].",
+ "babel-5-n": "{{GENDER:$4|Cist uzeu|Ciste uzeuse}} ci kinoxhe li [[$2|walon]] [[$1|come ene djin d' mestî]]",
+ "babel-N-n": "{{GENDER:$4|Cist uzeu est on [[$1|cåzant natif]]|Ciste uzeuse est ene [[$1|cåzante native]]}} do [[$2|walon]].",
+ "babel-footer": "Uzeus pa lingaedje"
+}
diff --git a/MLEB/Babel/i18n/war.json b/MLEB/Babel/i18n/war.json
new file mode 100644
index 00000000..e1aca5be
--- /dev/null
+++ b/MLEB/Babel/i18n/war.json
@@ -0,0 +1,31 @@
+{
+ "@metadata": {
+ "authors": [
+ "Harvzsf",
+ "JinJian"
+ ]
+ },
+ "babel": "Babel pangilal-an han gumaramit",
+ "babel-desc": "Nadugang hin <code>#babel</code> katungdangan sintaktiko nga natugot hinn lugaring nga paghatag hin uska rumbay hin babel nga kahon-han-gumaramit nga may-ada akos maglakip hin mga batakan hin tinuyoan nga paghimo",
+ "babel-url": "Project:Babel",
+ "babel-footer-url": ":Category:Babel - Mga gumaramit ha pinulongan",
+ "babel-autocreate-abort": "An ngaran-han-gumaramit nga imo ginpiho in gingagamit ha [[$1|Babel]] kaarangay hit lugaring-nga-paghimo ngan diri marerehistro.",
+ "babel-autocreate-reason": "Lugaring nga naghihimo hin [[$1|Babel]] kaarangay nga pakli.",
+ "babel-autocreate-text-levels": "An mga gumaramit hinin nga kaarangay in nagpapasabot hin ira katupngan $1 nga kabatiran para ha yinaknan nga $2.",
+ "babel-autocreate-text-main": "An mga gumaramit hinin nga kaarangay in nagpapasabot nga maaram han pinulongan nga $1.",
+ "babel-0": "Ini nga gumaramit in [[$1|waray]] sarabutan hin [[$2|$3]] (o nagkukuri pagsabot).",
+ "babel-1": "Ini nga gumaramit in may-ada [[$1|hamabaw]] nga pananabutan han [[$2|$3]].",
+ "babel-2": "Ini nga gumaramit in may-ada [[$1|tunga-tunga]] nga pananabutan han [[$2|$3]].",
+ "babel-3": "Ini nga gumaramit in may-ada [[$1|hilarom]] nga pananabutan han [[$2|$3]].",
+ "babel-4": "Ini nga gumaramit in may-ada [[$1|haros tuminongnong nga manyarakan]] nga pananabutan han [[$2|$3]].",
+ "babel-5": "Ini nga gumaramit in may-ada [[$1|propesyonal]] nga pananabutan han [[$2|$3]].",
+ "babel-N": "Ini nga gumaramit in may-ada [[$1|tuminongnong]] nga pananabutan han [[$2|$3]].",
+ "babel-0-n": "Ini nga gumaramit in [[$1|waray]] sarabutan hin [[$2|Winaray]] (o nagkukuri pagsabot).",
+ "babel-1-n": "Ini nga gumaramit in may-ada [[$1|hamabaw]] nga pananabutan han [[$2|Winaray]].",
+ "babel-2-n": "Ini nga gumaramit in may-ada [[$1|tunga-tunga]] nga pananabutan han [[$2|Winaray]].",
+ "babel-3-n": "Ini nga gumaramit in may-ada [[$1|hilarom]] nga pananabutan han [[$2|Winaray]].",
+ "babel-4-n": "Ini nga gumaramit in may-ada [[$1|haros tuminongnong nga manyarakan]] nga pananabutan han [[$2|Winaray]].",
+ "babel-5-n": "Ini nga gumaramit in may-ada [[$1|propesyonal]] nga pananabutan han [[$2|Winaray]].",
+ "babel-N-n": "Ini nga gumaramit in may-ada [[$1|tuminongnong]] nga pananabutan han [[$2|Winaray]].",
+ "babel-footer": "Mga gumaramit ha yinaknan"
+}
diff --git a/MLEB/Babel/i18n/wo.json b/MLEB/Babel/i18n/wo.json
new file mode 100644
index 00000000..a5b528b7
--- /dev/null
+++ b/MLEB/Babel/i18n/wo.json
@@ -0,0 +1,25 @@
+{
+ "@metadata": {
+ "authors": [
+ "Ibou",
+ "Jafeluv"
+ ]
+ },
+ "babel": "Ay xibaari ci jëfandikukatu babel bi",
+ "babel-url": "Project:Babel",
+ "babel-0": "Bii jëfandikukat [[$1|déggul dara]] ci [[$2|$3]] (walla di na ci sonn laataa mu ciy nand dara)",
+ "babel-1": "Bii jëfandikukat dégg na [[$2|$3]] [[$1|tuuti rekk]].",
+ "babel-2": "Bii jëfandikukat dégg na [[$2|$3]] yu [[$1|diggdoomu]].",
+ "babel-3": "Bii jëfandikukat dégg na [[$2|$3]] bu [[$1|baax]].",
+ "babel-4": "Bii jëfandikukat dégg na [[$2|$3]] yu [[$1|jege ku ci juddu]].",
+ "babel-5": "Bii jëfandikukat dégg na [[$2|$3]] yu [[$1|xereñ]].",
+ "babel-N": "Bii jëfandikukat dégg na [[$2|$3]] ni [[$1|ku ci juddu]].",
+ "babel-0-n": "Bii jëfandikukat déggul [[$1|dara]] ci [[$2|wolof]] (walla di na ci sonn laataa mu ciy nand dara).",
+ "babel-1-n": "Bii jëfandikukat dégg na [[$2|wolof]] [[$1|tuuti rekk]].",
+ "babel-2-n": "Bii jëfandikukat dégg na [[$2|wolof]] yu [[$1|diggdoomu]].",
+ "babel-3-n": "Bii jëfandikukat dégg na [[$2|wolof]] bu [[$1|baax]].",
+ "babel-4-n": "Bii jëfandikukat dégg na [[$2|wolof]] yu [[$1|jege ku ci juddu]].",
+ "babel-5-n": "Bii jëfandikukat dégg na [[$2|wolof]] yu [[$1|xereñ]].",
+ "babel-N-n": "Bii jëfandikukat dégg na [[$2|wolof]] ni [[$1|ku ci juddu]].",
+ "babel-footer": "Waa-wikipedia ci làkk-ak-làkk"
+}
diff --git a/MLEB/Babel/i18n/wuu.json b/MLEB/Babel/i18n/wuu.json
new file mode 100644
index 00000000..7f8ede8d
--- /dev/null
+++ b/MLEB/Babel/i18n/wuu.json
@@ -0,0 +1,28 @@
+{
+ "@metadata": {
+ "authors": [
+ "Wu-chinese.com"
+ ]
+ },
+ "babel": "Babel用户信息",
+ "babel-desc": "加只<code>#babel</code>处理功能,允许自动产生一只babel用户框栏,包含可自定义个模版",
+ "babel-url": "Project:Babel",
+ "babel-autocreate-abort": "箇只用户名弗好注册,因其畀用作[[$1|Babel]]分类个自动创建。",
+ "babel-autocreate-reason": "自动建立[[$1|Babel]]分类页。",
+ "babel-autocreate-text-levels": "垃拉箇只分类里向个用户具有语言$2个$1能力。",
+ "babel-autocreate-text-main": "箇只分类里向个用户能够理解语言$1。",
+ "babel-0": "箇位用户[[$1|呒没]][[$2|$3]]个知识(或者觉着渠交关难懂)。",
+ "babel-1": "箇位用户有[[$1|基本]]个[[$2|$3]]知识。",
+ "babel-2": "箇位用户有[[$1|中等]]个[[$2|$3]]知识。",
+ "babel-3": "箇位用户有[[$1|高等]]个[[$2|$3]]知识。",
+ "babel-4": "箇位用户有[[$1|接近母语人]]个[[$2|$3]]知识。",
+ "babel-5": "箇位用户有[[$1|专业]]个[[$2|$3]]知识。",
+ "babel-N": "箇位用户以[[$2|$3]]为[[$1|母语]]。",
+ "babel-0-n": "箇位用户[[$1|弗懂]][[$2|吴语]](或者觉着渠邪气难)。",
+ "babel-1-n": "箇位用户个[[$2|吴语]]能力达到[[$1|初等水平]]。",
+ "babel-2-n": "箇位用户个[[$2|吴语]]能力达到[[$1|中等水平]]。",
+ "babel-3-n": "箇位用户个[[$2|吴语]]能力达到[[$1|高等水平]]。",
+ "babel-4-n": "箇位用户个[[$2|吴语]]能力达到[[$1|接近母语水平]]。",
+ "babel-5-n": "箇位用户个[[$2|吴语]]能力达到[[$1|专业水平]]。",
+ "babel-N-n": "箇位用户个[[$2|吴语]]能力达到[[$1|母语水平]]。"
+}
diff --git a/MLEB/Babel/i18n/xal.json b/MLEB/Babel/i18n/xal.json
new file mode 100644
index 00000000..ba160d4d
--- /dev/null
+++ b/MLEB/Babel/i18n/xal.json
@@ -0,0 +1,21 @@
+{
+ "@metadata": {
+ "authors": [
+ "Huuchin"
+ ]
+ },
+ "babel": "Бабилон орлцачна өггцн",
+ "babel-0": "Эн орлцач [[$2|$3]] [[$1|медшго]] (аль күнд медтә)",
+ "babel-1": "Эн орлцач [[$2|$3]] [[$1|баһар]] меднә.",
+ "babel-2": "Эн орлцач [[$2|$3]] [[$1|дундар]] меднә.",
+ "babel-3": "Эн орлцач [[$2|$3]] [[$1|сәәнәр]] меднә.",
+ "babel-4": "Эн орлцач [[$2|$3]] [[$1|төрскн шаху бәәдг]] меднә.",
+ "babel-5": "Эн орлцач [[$2|$3]] [[$1|икәр]] меднә.",
+ "babel-N": "Эн орлцач [[$2|$3]] [[$1|төрскн бәәдг]] меднә.",
+ "babel-0-n": "Эн орлцач [[$2|хальмг келн]] [[$1|медшго]] аль күнд медтә.",
+ "babel-1-n": "Эн орлцач [[$2|хальмг келн]] [[$1|баһар]] меднә.",
+ "babel-2-n": "Эн орлцач [[$2|хальмг келн]] [[$1|дунд]] медтә.",
+ "babel-3-n": "Эн орлцач [[$2|хальмг келн]] [[$1|сәәнәр]] меднә.",
+ "babel-4-n": "Эн орлцач [[$2|хальмг келн]] [[$1|төрскн шаху бәәдг]] меднә.",
+ "babel-5-n": "Эн орлцач [[$2|хальмг келн]] [[$1|икәр]] меднә."
+}
diff --git a/MLEB/Babel/i18n/xmf.json b/MLEB/Babel/i18n/xmf.json
new file mode 100644
index 00000000..fcd0a990
--- /dev/null
+++ b/MLEB/Babel/i18n/xmf.json
@@ -0,0 +1,30 @@
+{
+ "@metadata": {
+ "authors": [
+ "Kilavagora",
+ "Machirkholi"
+ ]
+ },
+ "babel": "ინფორმაცია ბაბელიშ მახვარებუშე",
+ "babel-desc": "გითმუძინანს <code>#babel</code> სინტაქსურ ანალიზატორიშ ფუნქციას ბაბელიშ მახვარებუშ ჭკუდიშ ძეკვენიშ ავტომატურ გენერირაფაშ ოღოლამარო, ნამუსით შეალებე იკათუას ინდივიდუალიზირაფილ თანგეფ",
+ "babel-url": "Project:ბაბელ",
+ "babel-footer-url": ":Category:ბაბელ - მახვარებუეფიშ ერკებულ ნინაშ მეჯინათ",
+ "babel-autocreate-abort": "თქვან მუნათხუა მახვარებუშ ჯოხო გჷმორინაფილ რე [[$1|Babel]] კატეგორიაშ ავტომატურ დორცხუაფას დო თეშ გურშენ ათე ჯოხოშ რეგისტრირაფა ვა შილებე.",
+ "babel-autocreate-reason": "ავტომატურო დითმირცხუაფუ [[$1|Babel]] კატეგორიაშ ხასილა",
+ "babel-autocreate-text-levels": "ათე კატეგორიაშ მახვარებუეფქ დაკონკრეტეს, ნამდა $2 ნინა უჩქჷნა $1 დონეშა.",
+ "babel-autocreate-text-main": "ათე კატეგორიაშ მახვარებუეფქ დაკონკრეტეს, ნამდა უჩქჷნა $1 ნინა.",
+ "babel-0": "ათე მახვარებუს [[$1|ვა]] უჩქჷ [[$2|$3]] ნინა (ვარა არჩქილე თე ნინა ნაბტან გლახათ).",
+ "babel-1": "ათე მახვარებუს [[$2|$3]] ნინა უჩქჷ [[$1|დუმაჭყაფუშ]] დონეშა.",
+ "babel-2": "ათე მახვარებუს [[$2|$3]] ნინა უჩქჷ [[$1|ოშქაშე]] დონეშა.",
+ "babel-3": "ათე მახვარებუს [[$2|$3]] ნინა უჩქჷ [[$1|მაღალ]] დონეშა.",
+ "babel-4": "ათე მახვარებუს [[$2|$3]] ნინა უჩქჷ [[$1|დახე ნანაშ ნინაშ]] დონეშა.",
+ "babel-5": "ათე მახვარებუს [[$2|$3]] ნინა უჩქჷ [[$1|პროფესიონალურ]] დონეშა.",
+ "babel-N": "ათე მახვარებუს [[$2|$3]] ნინა არჩქილე [[$1|ნანაშ ნინაშ]] დონეშა.",
+ "babel-0-n": "ათე მახვარებუს [[$1|ვა]] უჩქჷ [[$2|მარგალური]] ნინა (ვარა არჩქილე თე ნინა ნაბტან გლახათ).",
+ "babel-1-n": "ათე მახვარებუს [[$2|მარგალური]] უჩქჷ [[$1|დუმაჭყაფუშ დონეშა]].",
+ "babel-2-n": "ათე მახვარებუს [[$2|მარგალური]] უჩქჷ [[$1|ოშქაშე დონეშა]].",
+ "babel-3-n": "ათე მახვარებუს [[$2|მარგალური]] უჩქჷ [[$1| მაღალ დონეშა]].",
+ "babel-4-n": "ათე მახვარებუს [[$2|მარგალური]] უჩქჷ [[$1| დახე ნანაშ ნინაშ დონეშა]].",
+ "babel-5-n": "ათე მახვარებუს [[$2|მარგალური]] უჩქჷ [[$1| პროფესიონალურ დონეშა]].",
+ "babel-N-n": "ათე მახვარებუს [[$2|მარგალური]] არჩქილე [[$1|ნანაშ ნინაშ]] დონეშა."
+}
diff --git a/MLEB/Babel/i18n/yi.json b/MLEB/Babel/i18n/yi.json
new file mode 100644
index 00000000..ed1e3d58
--- /dev/null
+++ b/MLEB/Babel/i18n/yi.json
@@ -0,0 +1,31 @@
+{
+ "@metadata": {
+ "authors": [
+ "GerardM",
+ "פוילישער"
+ ]
+ },
+ "babel": "באבעל באניצער אינפארמאציע",
+ "babel-desc": "לייגט צו די <code>#babel</code> פארזער פונקציע צו דערלויבן אויטאמאטישע גענערירונג פון א באבעל באניצער-קעסטל זייל, מיט דער מעגלעכקייט איינשליסן אייגענע מוסטערן",
+ "babel-url": "Project:באבעל",
+ "babel-footer-url": "קאטעגאריע:באבעל - באניצער לויט שפראך",
+ "babel-autocreate-abort": "דעם באניצער נאמען וואס איר האט ספעציפירט ווערט באניצט פאר [[$1|באבעל]] קאטעגאריע אויטאמאטיש שאפן און מ'קען אים נישט איינשרייבן.",
+ "babel-autocreate-reason": "שאפֿן אויטאמאטיש [[$1|באבעל]] קאטעגאריע בלאט.",
+ "babel-autocreate-text-levels": "באניצער אין דער קאטעגאריע ווײַזן אָן אז זיי האָבן פֿעיקייט ניוואָ $1 פֿאַר שפראך $2.",
+ "babel-autocreate-text-main": "באַניצער אין דער קאַטעגאריע ווײַזן אָן אז זיי האבן א ידיעה אין דער שפראַך $1.",
+ "babel-0": "דער באניצער האט [[$1|נישט קיין]] ידיעה אין [[$2|$3]] (אדער פארשטייט די שפראך מיט גרויסע שוועריקייט).",
+ "babel-1": "דער באניצער האט א [[$1|גרונטיקע]] ידיעה אין [[$2|$3]].",
+ "babel-2": "דער באניצער האט א [[$1|מיטלע]] ידיעה אין [[$2|$3]].",
+ "babel-3": "דער באניצער האט א [[$1|פֿארגעשריטענע]] ידיעה אין [[$2|$3]].",
+ "babel-4": "דער באניצער האט א בקיאות אין [[$2|$3]] [[$1|כמעט ווי מוטערשפראך]].",
+ "babel-5": "דער באניצער האט א [[$1|פראפֿעסיאנעלע]] ידיעה אין [[$2|$3]].",
+ "babel-N": "דער באניצער רעדט [[$2|$3]] אלס [[$1|מוטערשפראך]].",
+ "babel-0-n": "דער באניצער האט [[$1|נישט קיין]] ידיעה אין [[$2|יידיש]] (אדער פארשטייט די שפראך מיט גרויסער שוועריקייט).",
+ "babel-1-n": "דער באניצער האט א [[$1|גרונטיקע]] ידיעה אין [[$2|יידיש]].",
+ "babel-2-n": "דער באניצער האט א [[$1|מיטלע]] ידיעה אין [[$2|יידיש]].",
+ "babel-3-n": "דער באניצער האט א [[$1|פֿארגעשריטענע]] ידיעה אין [[$2|יידיש]].",
+ "babel-4-n": ".דער באניצער האט א בקיאות אין [[$2|יידיש]] [[$1|כמעט ווי מאמע-לשון]].",
+ "babel-5-n": "דער באניצער האט א [[$1|פראפֿעסיאנעלע]] ידיעה אין [[$2|יידיש]].",
+ "babel-N-n": "דער באניצער רעדט [[$2|יידיש]] אלס [[$1|מאמע-לשון]].",
+ "babel-footer": "באניצער לויט שפראך"
+}
diff --git a/MLEB/Babel/i18n/yo.json b/MLEB/Babel/i18n/yo.json
new file mode 100644
index 00000000..21817e12
--- /dev/null
+++ b/MLEB/Babel/i18n/yo.json
@@ -0,0 +1,28 @@
+{
+ "@metadata": {
+ "authors": [
+ "Demmy"
+ ]
+ },
+ "babel": "Ìfitónilétí oníṣe fún Bábẹ́lì",
+ "babel-url": "Project:Babel",
+ "babel-footer-url": ":Ẹ̀ka:Àwọn oníṣe gẹ́gẹ́ bìi èdè wọn",
+ "babel-autocreate-reason": "Óúndá ojúewé ẹ̀ka [[$1|Babel]] fúnra rẹ̀.",
+ "babel-autocreate-text-levels": "Àwọn oníṣe nínú ẹ̀ka yìí tọ́ka pé àwọn ní òye $1 fún èdè $2.",
+ "babel-autocreate-text-main": "Àwọn oníṣe nínú ẹ̀ka yìí tọ́ka pé àwọn ní òye nínú èdè $1.",
+ "babel-0": "Oníṣe yìí kò ní ìmọ̀ [[$1|rárá]] nínú èdè [[$2|$3]] (tàbí kọ̀ ní òye rẹ̀ dáadáa).",
+ "babel-1": "Oníṣe yìí [[$1|bíntín]] ní ìmọ̀ rẹ̀ nínú èdè [[$2|$3]].",
+ "babel-2": "Oníṣe yìí [[$1|àbọ̀]] ni ìmọ̀ rẹ̀ nínú èdè [[$2|$3]].",
+ "babel-3": "Oníṣe yìí [[$1|dáradára]] ni ìmọ̀ rẹ̀ nínú èdè [[$2|$3]]'''.",
+ "babel-4": "Oníṣe yìí [[$1|bíi pé abínibí]] ni ìmọ̀ rẹ̀ nínú èdè [[$2|$3]]'''.",
+ "babel-5": "Oníṣe yìí mọ èdè [[$2|$3]] dáadáa tó láti fi [[$1|ṣe iṣẹ́]].",
+ "babel-N": "Oníṣe yìí èdè [[$1|abínibí]] rẹ̀ ni [[$2|$3]]'''.",
+ "babel-0-n": "Oníṣe yìí kò ní ìmọ̀ [[$1|rárá]] nínú èdè [[$2|Yorùbá]] (tàbí kò ní òye rẹ̀ dáadáa).",
+ "babel-1-n": "Oníṣe yìí [[$1|bíntín]] ní ìmọ̀ rẹ̀ nínú èdè [[$2|Yorùbá]].",
+ "babel-2-n": "Oníṣe yìí [[$1|àbọ̀]] ni ìmọ̀ rẹ̀ nínú èdè [[$2|Yorùbá]].",
+ "babel-3-n": "Oníṣe yìí [[$1|dáradára]] ni ìmọ̀ rẹ̀ nínú èdè [[$2|Yorùbá]].",
+ "babel-4-n": "Oníṣe yìí [[$1|bíi pé abínibí]] ni ìmọ̀ rẹ̀ nínú èdè [[$2|Yorùbà]].",
+ "babel-5-n": "Oníṣe yìí mọ èdè [[$2|Yorùbá]] dáadáa tó láti fi [[$1|ṣe iṣẹ́]].",
+ "babel-N-n": "Oníṣe yìí èdè [[$1|abínibí]] rẹ̀ ni [[$2|Yorùbá]].",
+ "babel-footer": "Àwọn oníṣe gẹ́gẹ́bí èdè"
+}
diff --git a/MLEB/Babel/i18n/yue.json b/MLEB/Babel/i18n/yue.json
new file mode 100644
index 00000000..dc3e7c1f
--- /dev/null
+++ b/MLEB/Babel/i18n/yue.json
@@ -0,0 +1,31 @@
+{
+ "@metadata": {
+ "authors": [
+ "Deryck Chan",
+ "Shinjiman"
+ ]
+ },
+ "babel": "巴別用戶資料",
+ "babel-desc": "裝<code>#babel</code>功能,整啲巴別用戶盒仔出嚟。可以加埋自訂模落去。",
+ "babel-url": "Project:巴別",
+ "babel-footer-url": ":Category:巴别 - 跟語言分類用戶",
+ "babel-autocreate-abort": "呢個用戶名已經畀[[$1|巴別]]自動分類系統霸咗,註冊唔到。",
+ "babel-autocreate-reason": "自動建立緊[[$1|巴別]]分類頁。",
+ "babel-autocreate-text-levels": "呢個分類入面嘅用戶話佢哋識$2程度嘅$1。",
+ "babel-autocreate-text-main": "呢個分類入面嘅用戶話佢哋識講$1。",
+ "babel-0": "呢位用戶[[$1|完全唔識]](或者唔係好明)[[$2|$3]]。",
+ "babel-1": "呢位用戶有[[$1|基本]]嘅[[$2|$3]]知識。",
+ "babel-2": "呢位用戶有[[$1|中等]]嘅[[$2|$3]]知識。",
+ "babel-3": "呢位用戶有[[$1|高等]]嘅[[$2|$3]]知識。",
+ "babel-4": "呢位用戶有[[$1|接近母語]]程度嘅[[$2|$3]]知識。",
+ "babel-5": "呢位用戶有[[$1|專業]]嘅[[$2|$3]]知識。",
+ "babel-N": "呢位用戶嘅[[$1|母語]]係[[$2|$3]]。",
+ "babel-0-n": "呢位用戶[[$1|完全唔識]](或者唔係好明)[[$2|廣東話]]。",
+ "babel-1-n": "呢位用戶有[[$1|基本]]嘅[[$2|廣東話]]知識。",
+ "babel-2-n": "呢位用戶有[[$1|中等]]嘅[[$2|廣東話]]知識。",
+ "babel-3-n": "呢位用戶有[[$1|高等]]嘅[[$2|廣東話]]知識。",
+ "babel-4-n": "呢位用戶有[[$1|接近母語程度]]嘅[[$2|廣東話]]知識。",
+ "babel-5-n": "呢位用戶有[[$1|專業]]嘅[[$2|廣東話]]知識。",
+ "babel-N-n": "呢位用戶嘅[[$1|母語]]係[[$2|廣東話]]。",
+ "babel-footer": "用戶(跟語言分類)"
+}
diff --git a/MLEB/Babel/i18n/zea.json b/MLEB/Babel/i18n/zea.json
new file mode 100644
index 00000000..99a89b29
--- /dev/null
+++ b/MLEB/Babel/i18n/zea.json
@@ -0,0 +1,18 @@
+{
+ "@metadata": {
+ "authors": [
+ "Ooswesthoesbes"
+ ]
+ },
+ "babel-1": "Deêze gebruker praot en verstaet [[$1|'n bitje]] [[$2|$3]].",
+ "babel-2": "Deêze gebruker praot en verstaet [[$1|aoreg]] [[$2|$3]].",
+ "babel-3": "Deêze gebruker praot [[$1|vloeiend]] [[$2|$3]].",
+ "babel-4": "Deêze gebruker praot [[$2|$3]] [[$1|asof't z'n moerstaele is]].",
+ "babel-N": "Deêze gebruker eit [[$2|$3]] as [[$1|moerstaele]].",
+ "babel-1-n": "Deêze gebruker praot en verstaet [[$1|'n bitje]] [[$2|Zeêuws]].",
+ "babel-2-n": "Deêze gebruker praot en verstaet [[$1|aoreg]] [[$2|Zeêuws]].",
+ "babel-3-n": "Deêze gebruker praot [[$1|vloeiend]] [[$2|Zeêuws]].",
+ "babel-4-n": "Deêze gebruker praot [[$2|Zeêuws]] [[$1|asof't z'n moerstaele is]].",
+ "babel-N-n": "Deêze gebruker eit [[$2|Zeêuws]] as [[$1|moerstaele]].",
+ "babel-footer": "Hebrukers per taele"
+}
diff --git a/MLEB/Babel/i18n/zh-cn.json b/MLEB/Babel/i18n/zh-cn.json
new file mode 100644
index 00000000..eac771a1
--- /dev/null
+++ b/MLEB/Babel/i18n/zh-cn.json
@@ -0,0 +1,14 @@
+{
+ "@metadata": {
+ "authors": [
+ "Shinjiman"
+ ]
+ },
+ "babel-0-n": "这位用户[[$1|无]][[$2|大陆式中文]]的知识(或很难地去明白它)。",
+ "babel-1-n": "这位用户有[[$1|基本]]的[[$2|大陆式中文]]知识。",
+ "babel-2-n": "这位用户有[[$1|中等]]的[[$2|大陆式中文]]知识。",
+ "babel-3-n": "这位用户有[[$1|高等]]的[[$2|大陆式中文]]知识。",
+ "babel-4-n": "这位用户有[[$1|接近母语讲者]]的[[$2|大陆式中文]]知识。",
+ "babel-5-n": "这位用户有[[$1|专业]]的[[$2|大陆式中文]]知识。",
+ "babel-N-n": "这位用户明白以[[$1|母语]]为主的[[$2|大陆式中文]]。"
+} \ No newline at end of file
diff --git a/MLEB/Babel/i18n/zh-hans.json b/MLEB/Babel/i18n/zh-hans.json
new file mode 100644
index 00000000..622540f6
--- /dev/null
+++ b/MLEB/Babel/i18n/zh-hans.json
@@ -0,0 +1,37 @@
+{
+ "@metadata": {
+ "authors": [
+ "Dalt",
+ "Gzdavidwong",
+ "Hydra",
+ "Jimmy xu wrk",
+ "Shinjiman",
+ "Shizhao",
+ "Xiaomingyan",
+ "Yfdyh000"
+ ]
+ },
+ "babel": "用户巴别信息",
+ "babel-desc": "增加一个<code>#babel</code>处理功能以支持自动产生一个巴别用户框栏及包含可自定化的模版",
+ "babel-url": "Project:巴别",
+ "babel-footer-url": ":Category:巴别-用户(按语言)",
+ "babel-autocreate-abort": "您所指定的用户名不能被注册,因其被用作[[$1|巴别]]分类的自动创建。",
+ "babel-autocreate-reason": "自动建立[[$1|巴别]]分类页。",
+ "babel-autocreate-text-levels": "在此分类中的用户具有$2的$1级能力。",
+ "babel-autocreate-text-main": "此分类中的用户能理解$1。",
+ "babel-0": "这位用户[[$1|不懂]]或很难理解[[$2|$3]]。",
+ "babel-1": "这位用户的[[$2|$3]]达到[[$1|初级水平]]。",
+ "babel-2": "这位用户的[[$2|$3]]达到[[$1|中级水平]]。",
+ "babel-3": "这位用户的[[$2|$3]]达到[[$1|高级水平]]。",
+ "babel-4": "这位用户的[[$2|$3]]达到[[$1|接近母语水平]]。",
+ "babel-5": "这位用户的[[$2|$3]]达到[[$1|专业水平]]。",
+ "babel-N": "[[$2|$3]]是这位用户的[[$1|母语]]。",
+ "babel-0-n": "这位用户[[$1|不懂]]或很难理解[[$2|简体中文]]。",
+ "babel-1-n": "这位用户的[[$2|简体中文]]达到[[$1|初级水平]]。",
+ "babel-2-n": "这位用户的[[$2|简体中文]]达到[[$1|中级水平]]。",
+ "babel-3-n": "这位用户的[[$2|简体中文]]达到[[$1|高级]]水平。",
+ "babel-4-n": "这位用户的[[$2|简体中文]]达到[[$1|接近母语水平]]。",
+ "babel-5-n": "这位用户的[[$2|简体中文]]达到[[$1|专业水平]]。",
+ "babel-N-n": "[[$2|简体中文]]是这位用户的[[$1|母语]]。",
+ "babel-footer": "用户(按语言)"
+}
diff --git a/MLEB/Babel/i18n/zh-hant.json b/MLEB/Babel/i18n/zh-hant.json
new file mode 100644
index 00000000..65e64f37
--- /dev/null
+++ b/MLEB/Babel/i18n/zh-hant.json
@@ -0,0 +1,36 @@
+{
+ "@metadata": {
+ "authors": [
+ "Justincheng12345",
+ "Liangent",
+ "Mark85296341",
+ "Shinjiman",
+ "Waihorace",
+ "Wrightbus",
+ "Cwlin0416"
+ ]
+ },
+ "babel": "Babel 使用者資訊",
+ "babel-desc": "提供 <code>#babel</code> 分析函數可自動產生一個能夠使用自訂樣版的使用者語言資訊欄。",
+ "babel-url": "Project:Babel",
+ "babel-footer-url": ":Category:Babel - 使用者 (依語言)",
+ "babel-autocreate-abort": "您所指定的使用者會用於自動建立 [[$1|Babel]] 分類使用,無法被註冊使用。",
+ "babel-autocreate-reason": "自動建立 [[$1|Babel]] 分類頁面。",
+ "babel-autocreate-text-levels": "在此分類中的使用者代表其擁有等級 $1 的 $2 語言能力。",
+ "babel-autocreate-text-main": "在此分類中的使用者代表其了解語言 $1。",
+ "babel-0": "此使用者[[$1|不]]了解或很難理解 [[$2|$3]]。",
+ "babel-1": "這位使用者會[[$1|基本]]水準的 [[$2|$3]]。",
+ "babel-2": "這位使用者會[[$1|中等]]水準的 [[$2|$3]]。",
+ "babel-3": "這位使用者會[[$1|進階]]水準的 [[$2|$3]]。",
+ "babel-4": "這位使用者會[[$1|接近母語]]水準的 [[$2|$3]]。",
+ "babel-5": "這位使用者會[[$1|專業]]水準的 [[$2|$3]]。",
+ "babel-N": "這位使用者會[[$1|母語]]水準的 [[$2|$3]]。",
+ "babel-0-n": "此使用者[[$1|不]]了解或很難理解 [[$2|繁體中文]]。",
+ "babel-1-n": "這位使用者會[[$1|基本]]水準的 [[$2|繁體中文]]。",
+ "babel-2-n": "這位使用者會[[$1|中等]]水準的 [[$2|繁體中文]]。",
+ "babel-3-n": "這位使用者會[[$1|進階]]水準的 [[$2|繁體中文]]。",
+ "babel-4-n": "這位使用者會[[$1|接近母語]]水準的 [[$2|繁體中文]]。",
+ "babel-5-n": "這位使用者會[[$1|專業]]水準的 [[$2|繁體中文]]。",
+ "babel-N-n": "這位使用者會[[$1|母語]]水準的 [[$2|繁體中文]]。",
+ "babel-footer": "使用者 (依語言)"
+}
diff --git a/MLEB/Babel/i18n/zh-hk.json b/MLEB/Babel/i18n/zh-hk.json
new file mode 100644
index 00000000..add8362b
--- /dev/null
+++ b/MLEB/Babel/i18n/zh-hk.json
@@ -0,0 +1,16 @@
+{
+ "@metadata": {
+ "authors": [
+ "Oapbtommy",
+ "Shinjiman"
+ ]
+ },
+ "babel": "巴別用戶資訊",
+ "babel-0-n": "這位用戶[[$1|無]][[$2|港式中文]]的知識(或很難地去明白它)。",
+ "babel-1-n": "這位用戶有[[$1|基本]]的[[$2|港式中文]]知識。",
+ "babel-2-n": "這位用戶有[[$1|中等]]的[[$2|港式中文]]知識。",
+ "babel-3-n": "這位用戶有[[$1|高等]]的[[$2|港式中文]]知識。",
+ "babel-4-n": "這位用戶有[[$1|接近母語講者]]的[[$2|港式中文]]知識。",
+ "babel-5-n": "這位用戶有[[$1|專業]]的[[$2|港式中文]]知識。",
+ "babel-N-n": "這位用戶明白以[[$1|母語]]為主的[[$2|港式中文]]。"
+} \ No newline at end of file
diff --git a/MLEB/Babel/i18n/zh-sg.json b/MLEB/Babel/i18n/zh-sg.json
new file mode 100644
index 00000000..1726ee40
--- /dev/null
+++ b/MLEB/Babel/i18n/zh-sg.json
@@ -0,0 +1,14 @@
+{
+ "@metadata": {
+ "authors": [
+ "Shinjiman"
+ ]
+ },
+ "babel-0-n": "这位用户[[$1|无]][[$2|星式中文]]的知识(或很难地去明白它)。",
+ "babel-1-n": "这位用户有[[$1|基本]]的[[$2|星式中文]]知识。",
+ "babel-2-n": "这位用户有[[$1|中等]]的[[$2|星式中文]]知识。",
+ "babel-3-n": "这位用户有[[$1|高等]]的[[$2|星式中文]]知识。",
+ "babel-4-n": "这位用户有[[$1|接近母语讲者]]的[[$2|星式中文]]知识。",
+ "babel-5-n": "这位用户有[[$1|专业]]的[[$2|星式中文]]知识。",
+ "babel-N-n": "这位用户明白以[[$1|母语]]为主的[[$2|星式中文]]。"
+} \ No newline at end of file
diff --git a/MLEB/Babel/i18n/zh-tw.json b/MLEB/Babel/i18n/zh-tw.json
new file mode 100644
index 00000000..4531fe87
--- /dev/null
+++ b/MLEB/Babel/i18n/zh-tw.json
@@ -0,0 +1,29 @@
+{
+ "@metadata": {
+ "authors": [
+ "Pbdragonwang",
+ "Shinjiman"
+ ]
+ },
+ "babel": "巴別用戶資料",
+ "babel-desc": "添加一個<code>#babel</code>處理功能以自動產生一個包含可自定化模版的巴別用戶框欄",
+ "babel-url": "Project:巴別",
+ "babel-autocreate-abort": "您所指定的用戶名因被用作自動創建的[[$1|巴別]]分類而不能被註冊。",
+ "babel-autocreate-reason": "自動建立[[$1|巴別]]分類頁。",
+ "babel-autocreate-text-levels": "在此分類中的用戶具有語言$2的$1能力。",
+ "babel-autocreate-text-main": "此分類中的用戶能理解語言$1。",
+ "babel-0": "這位用戶[[$1|無]][[$2|$3]]的知識(或很難去理解它)。",
+ "babel-1": "這位用戶有[[$1|基本]]的[[$2|$3]]知識。",
+ "babel-2": "這位用戶有[[$1|中等]]的[[$2|$3]]知識。",
+ "babel-3": "這位用戶有[[$1|高等]]的[[$2|$3]]知識。",
+ "babel-4": "這位用戶有[[$1|接近母語使用者]]的[[$2|$3]]知識。",
+ "babel-5": "這位用戶有[[$1|專業]]的[[$2|$3]]知識。",
+ "babel-N": "[[$2|$3]]是這位用戶的的[[$1|母語]]。",
+ "babel-0-n": "這位用戶[[$1|無]][[$2|台式中文]]的知識(或很難去理解它)。",
+ "babel-1-n": "這位用戶有[[$1|基本]]的[[$2|台式中文]]知識。",
+ "babel-2-n": "這位用戶有[[$1|中等]]的[[$2|台式中文]]知識。",
+ "babel-3-n": "這位用戶有[[$1|高等]]的[[$2|台式中文]]知識。",
+ "babel-4-n": "這位用戶有[[$1|接近母語講者]]的[[$2|台式中文]]知識。",
+ "babel-5-n": "這位用戶有[[$1|專業]]的[[$2|台式中文]]知識。",
+ "babel-N-n": "[[$2|台式中文]]是這位用戶的的[[$1|母語]]。"
+} \ No newline at end of file
diff --git a/MLEB/Babel/i18n/zh.json b/MLEB/Babel/i18n/zh.json
new file mode 100644
index 00000000..56405100
--- /dev/null
+++ b/MLEB/Babel/i18n/zh.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Purodha"
+ ]
+ },
+ "babel-url": "Project:巴別"
+} \ No newline at end of file
diff --git a/MLEB/Babel/i18n/zu.json b/MLEB/Babel/i18n/zu.json
new file mode 100644
index 00000000..ee4c3623
--- /dev/null
+++ b/MLEB/Babel/i18n/zu.json
@@ -0,0 +1,26 @@
+{
+ "@metadata": {
+ "authors": [
+ "MF-Warburg",
+ "Mohau"
+ ]
+ },
+ "babel": "Ulwazi lomsebenzisi we Babel",
+ "babel-url": "Project:Babel",
+ "babel-footer-url": ":Category:Babel -Abasebenzisi ngo limi",
+ "babel-0": "Lomsebenzisi [[$1|akanalo noluncane]] ulwazi lwe[[$2|$3]] (okanye kunzima kakhulu ukusiqondisisa).",
+ "babel-1": "Lomsebenzisi unolwazana [[$1|oluncane]] lwe[[$2|$3]].",
+ "babel-2": "Lomsebenzisi unolwazi [[$1|olungengakanani]] lwesi[[$2|$3]].",
+ "babel-3": "Lomsebenzisi unolwazi [[$1|oluningi]] lwe[[$2|$3]].",
+ "babel-4": "Lomsebenzisi unolwazi [[$1|olucishe lufane nelomuntu ozalwe ekhuluma]] [[$2|$3]].",
+ "babel-5": "Lomsebenzisi unolwazi [[$1|lwesemfundo eliphephile]] lwe[[$2|$3]].",
+ "babel-N": "Lomsebenzisi [[$1|uzalwe]] ekhuluma [[$2|$3]].",
+ "babel-0-n": "Lomsebenzisi [[$1|akanalo noluncane]] ulwazi [[$2|lwesiNgisi]] (okanye kunzima kakhulu ukusiqondisisa).",
+ "babel-1-n": "Lomsebenzisi unolwazana [[$1|oluncane]] [[$2|lwesiZulu]].",
+ "babel-2-n": "Lomsebenzisi unolwazi [[$1|olungengakanani]] [[$2|lwesiZulu]].",
+ "babel-3-n": "Lomsebenzisi unolwazi [[$1|oluningi]] [[$2|lwesiZulu]].",
+ "babel-4-n": "Lomsebenzisi unolwazi [[$1|olucishe lufane nelomuntu ozalwe ekhuluma]] [[$2|lwesiZulu]].",
+ "babel-5-n": "Lomsebenzisi unolwazi [[$1|lwesemfundo eliphephile]] [[$2|lwesiZulu]].",
+ "babel-N-n": "Lomsebenzisi [[$1|uzalwe]] ekhuluma [[$2|lwsiZulu]].",
+ "babel-footer": "Abasebenzisi ngo limi"
+}
diff --git a/MLEB/Babel/names.cdb b/MLEB/Babel/names.cdb
new file mode 100644
index 00000000..cb13b4dc
--- /dev/null
+++ b/MLEB/Babel/names.cdb
Binary files differ
diff --git a/MLEB/Babel/resources/ext.babel.css b/MLEB/Babel/resources/ext.babel.css
new file mode 100644
index 00000000..d3855429
--- /dev/null
+++ b/MLEB/Babel/resources/ext.babel.css
@@ -0,0 +1,158 @@
+/**
+ * Stylesheet for Babel extension.
+ *
+ * You can override the CSS code on the MediaWiki:Common.css page
+ * on your wiki to adjust colours etc.
+ *
+ * @file
+ * @ingroup Extensions
+ */
+
+/* Babel wrapper layout. */
+/* @noflip */table.mw-babel-wrapper {
+ width: 238px;
+ float: right;
+ clear: right;
+ margin: 0;
+ background-color: white;
+ border: 1px solid #99B3FF;
+}
+
+/* @noflip */.mw-content-ltr table.mw-babel-wrapper {
+ float: right;
+ clear: right;
+}
+/* @noflip */.mw-content-rtl table.mw-babel-wrapper {
+ float: left;
+ clear: left;
+}
+
+/* Babel box layout */
+/* @noflip */div.mw-babel-box {
+ float: left;
+ clear: left;
+ margin: 1px;
+}
+
+/* @noflip */.mw-content-ltr table.mw-babel-box {
+ float: left;
+ clear: left;
+}
+
+/* @noflip */.mw-content-rtl table.mw-babel-box {
+ float: right;
+ clear: right;
+}
+
+div.mw-babel-box table {
+ width: 238px;
+}
+
+div.mw-babel-box table th {
+ width: 45px;
+ height: 45px;
+ font-size: 14pt;
+ font-family: monospace;
+}
+
+div.mw-babel-box table td {
+ font-size: 8pt;
+ padding: 4pt;
+ line-height: 1.25em;
+}
+
+/* Babel box colours. */
+div.mw-babel-box-0 {
+ border: 1px solid #FFBBBB;
+}
+
+div.mw-babel-box-1 {
+ border: 1px solid #E0C0E0;
+}
+
+div.mw-babel-box-2 {
+ border: 1px solid #BCB9EF;
+}
+
+div.mw-babel-box-3 {
+ border: 1px solid #99B3FF;
+}
+
+div.mw-babel-box-4 {
+ border: 1px solid #77E0E8;
+}
+
+div.mw-babel-box-5 {
+ border: 1px solid #CCCC00;
+}
+
+div.mw-babel-box-N {
+ border: 1px solid #6EF7A7;
+}
+
+div.mw-babel-box-0 table th {
+ background-color: #FFBBBB;
+}
+
+div.mw-babel-box-1 table th {
+ background-color: #E0C0E0;
+}
+
+div.mw-babel-box-2 table th {
+ background-color: #BCB9EF;
+}
+
+div.mw-babel-box-3 table th {
+ background-color: #99B3FF;
+}
+
+div.mw-babel-box-4 table th {
+ background-color: #77E0E8;
+}
+
+div.mw-babel-box-5 table th {
+ background-color: #CCCC00;
+}
+
+div.mw-babel-box-N table th {
+ background-color: #6EF7A7;
+}
+
+div.mw-babel-box-0 table {
+ background-color: #FFEEEE;
+}
+
+div.mw-babel-box-1 table {
+ background-color: #F3E0F3;
+}
+
+div.mw-babel-box-2 table {
+ background-color: #E9E5F9;
+}
+
+div.mw-babel-box-3 table {
+ background-color: #E0E8FF;
+}
+
+div.mw-babel-box-4 table {
+ background-color: #D0F8FF;
+}
+
+div.mw-babel-box-5 table {
+ background-color: #FFFF99;
+}
+
+div.mw-babel-box-N table {
+ background-color: #C5FCDC;
+}
+
+/* header and footer */
+.mw.babel-box th.mw-babel-header {
+ text-align: center;
+ font-weight: bold;
+}
+
+.mw.babel-box th.mw-babel-footer {
+ text-align: center;
+ font-weight: normal;
+}
diff --git a/MLEB/Babel/tab2txt.php b/MLEB/Babel/tab2txt.php
new file mode 100644
index 00000000..7af8bc0b
--- /dev/null
+++ b/MLEB/Babel/tab2txt.php
@@ -0,0 +1,33 @@
+<?php
+/**
+ * tab2txt: Converts the original tabulated data file of ISO codes to a three
+ * column text file (ISO 639-1, ISO 639-3, Natural Name).
+ *
+ * Usage: <tab file> | php tab2txt.php > codes.txt
+ */
+
+$dir = __DIR__;
+$IP = "$dir/../..";
+if ( file_exists( "$dir/../../CorePath.php" ) ) {
+ include "$dir/../../CorePath.php"; // Allow override
+}
+require_once "$IP/maintenance/commandLine.inc";
+
+$fr = fopen( 'php://stdin', 'r' );
+$fw = fopen( 'php://stdout', 'w' );
+
+// Read and discard header line.
+fgets( $fr );
+
+while ( $line = fgets( $fr ) ) {
+ $line = explode( "\t", $line );
+ $iso1 = trim( $line[3] );
+ if ( $iso1 === '' ) {
+ $iso1 = '-';
+ }
+ $iso3 = trim( $line[0] );
+ $name = $line[6];
+ fwrite( $fw, "$iso1 $iso3 \"$name\"\n" );
+}
+fclose( $fr );
+fclose( $fw );
diff --git a/MLEB/Babel/txt2cdb.php b/MLEB/Babel/txt2cdb.php
new file mode 100644
index 00000000..8eda7ab9
--- /dev/null
+++ b/MLEB/Babel/txt2cdb.php
@@ -0,0 +1,47 @@
+<?php
+/**
+ * txt2cdb: Converts the text file of ISO codes to a constant database.
+ *
+ * Usage: php txt2cdb.php
+ */
+
+$dir = __DIR__;
+$IP = "$dir/../..";
+if ( file_exists( "$dir/../../CorePath.php" ) ) {
+ include "$dir/../../CorePath.php"; // Allow override
+}
+
+require_once "$IP/maintenance/commandLine.inc";
+
+$names = "$dir/names.cdb";
+$codes = "$dir/codes.cdb";
+$fr = fopen( "$dir/codes.txt", 'r' );
+
+try {
+ $names = CdbWriter::open( $names );
+ $codes = CdbWriter::open( $codes );
+
+ while ( $line = fgets( $fr ) ) {
+ // Format is code1 code2 "language name"
+ $line = explode( ' ', $line, 3 );
+ $iso1 = trim( $line[0] );
+ $iso3 = trim( $line[1] );
+ // Strip quotes
+ $name = substr( trim( $line[2] ), 1, -1 );
+ if ( $iso1 !== '-' ) {
+ $codes->set( $iso1, $iso1 );
+ if ( $iso3 !== '-' ) {
+ $codes->set( $iso3, $iso1 );
+ }
+ $names->set( $iso1, $name );
+ $names->set( $iso3, $name );
+ } elseif ( $iso3 !== '-' ) {
+ $codes->set( $iso3, $iso3 );
+ $names->set( $iso3, $name );
+ }
+ }
+} catch ( CdbException $e ) {
+ throw new MWException( $e->getMessage() );
+}
+
+fclose( $fr );
diff --git a/MLEB/CleanChanges/.idea/.name b/MLEB/CleanChanges/.idea/.name
new file mode 100644
index 00000000..9de73e2d
--- /dev/null
+++ b/MLEB/CleanChanges/.idea/.name
@@ -0,0 +1 @@
+CleanChanges \ No newline at end of file
diff --git a/MLEB/CleanChanges/.idea/CleanChanges.iml b/MLEB/CleanChanges/.idea/CleanChanges.iml
new file mode 100644
index 00000000..6b8184f8
--- /dev/null
+++ b/MLEB/CleanChanges/.idea/CleanChanges.iml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<module type="WEB_MODULE" version="4">
+ <component name="NewModuleRootManager">
+ <content url="file://$MODULE_DIR$" />
+ <orderEntry type="inheritedJdk" />
+ <orderEntry type="sourceFolder" forTests="false" />
+ </component>
+</module>
+
diff --git a/MLEB/CleanChanges/.idea/encodings.xml b/MLEB/CleanChanges/.idea/encodings.xml
new file mode 100644
index 00000000..e206d70d
--- /dev/null
+++ b/MLEB/CleanChanges/.idea/encodings.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project version="4">
+ <component name="Encoding" useUTFGuessing="true" native2AsciiForPropertiesFiles="false" />
+</project>
+
diff --git a/MLEB/CleanChanges/.idea/misc.xml b/MLEB/CleanChanges/.idea/misc.xml
new file mode 100644
index 00000000..1162f438
--- /dev/null
+++ b/MLEB/CleanChanges/.idea/misc.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project version="4">
+ <component name="ProjectRootManager" version="2" />
+</project>
+
diff --git a/MLEB/CleanChanges/.idea/modules.xml b/MLEB/CleanChanges/.idea/modules.xml
new file mode 100644
index 00000000..7f086057
--- /dev/null
+++ b/MLEB/CleanChanges/.idea/modules.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project version="4">
+ <component name="ProjectModuleManager">
+ <modules>
+ <module fileurl="file://$PROJECT_DIR$/.idea/CleanChanges.iml" filepath="$PROJECT_DIR$/.idea/CleanChanges.iml" />
+ </modules>
+ </component>
+</project>
+
diff --git a/MLEB/CleanChanges/.idea/scopes/scope_settings.xml b/MLEB/CleanChanges/.idea/scopes/scope_settings.xml
new file mode 100644
index 00000000..922003b8
--- /dev/null
+++ b/MLEB/CleanChanges/.idea/scopes/scope_settings.xml
@@ -0,0 +1,5 @@
+<component name="DependencyValidationManager">
+ <state>
+ <option name="SKIP_IMPORT_STATEMENTS" value="false" />
+ </state>
+</component> \ No newline at end of file
diff --git a/MLEB/CleanChanges/.idea/vcs.xml b/MLEB/CleanChanges/.idea/vcs.xml
new file mode 100644
index 00000000..c80f2198
--- /dev/null
+++ b/MLEB/CleanChanges/.idea/vcs.xml
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project version="4">
+ <component name="VcsDirectoryMappings">
+ <mapping directory="$PROJECT_DIR$" vcs="Git" />
+ </component>
+</project>
+
diff --git a/MLEB/CleanChanges/.idea/workspace.xml b/MLEB/CleanChanges/.idea/workspace.xml
new file mode 100644
index 00000000..bb21c3f6
--- /dev/null
+++ b/MLEB/CleanChanges/.idea/workspace.xml
@@ -0,0 +1,172 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project version="4">
+ <component name="ChangeListManager">
+ <list default="true" id="476fbbcd-ad4f-42c2-9dc7-904fc7d5c9b9" name="Default" comment="" />
+ <ignored path="CleanChanges.iws" />
+ <ignored path=".idea/workspace.xml" />
+ <option name="TRACKING_ENABLED" value="true" />
+ <option name="SHOW_DIALOG" value="false" />
+ <option name="HIGHLIGHT_CONFLICTS" value="true" />
+ <option name="HIGHLIGHT_NON_ACTIVE_CHANGELIST" value="false" />
+ <option name="LAST_RESOLUTION" value="IGNORE" />
+ </component>
+ <component name="ChangesViewManager" flattened_view="true" show_ignored="false" />
+ <component name="CreatePatchCommitExecutor">
+ <option name="PATCH_PATH" value="" />
+ </component>
+ <component name="DaemonCodeAnalyzer">
+ <disable_hints />
+ </component>
+ <component name="ExecutionTargetManager" SELECTED_TARGET="default_target" />
+ <component name="FavoritesManager">
+ <favorites_list name="CleanChanges" />
+ </component>
+ <component name="FileEditorManager">
+ <leaf />
+ </component>
+ <component name="FindManager">
+ <FindUsagesManager>
+ <setting name="OPEN_NEW_TAB" value="false" />
+ </FindUsagesManager>
+ </component>
+ <component name="Git.Settings">
+ <option name="RECENT_GIT_ROOT_PATH" value="$PROJECT_DIR$" />
+ </component>
+ <component name="PhpWorkspaceProjectConfiguration" backward_compatibility_performed="true" />
+ <component name="ProjectFrameBounds">
+ <option name="y" value="14" />
+ <option name="width" value="1278" />
+ <option name="height" value="770" />
+ </component>
+ <component name="ProjectLevelVcsManager" settingsEditedManually="false">
+ <OptionsSetting value="true" id="Add" />
+ <OptionsSetting value="true" id="Remove" />
+ <OptionsSetting value="true" id="Checkout" />
+ <OptionsSetting value="true" id="Update" />
+ <OptionsSetting value="true" id="Status" />
+ <OptionsSetting value="true" id="Edit" />
+ <ConfirmationsSetting value="0" id="Add" />
+ <ConfirmationsSetting value="0" id="Remove" />
+ </component>
+ <component name="ProjectReloadState">
+ <option name="STATE" value="0" />
+ </component>
+ <component name="ProjectView">
+ <navigator currentView="ProjectPane" proportions="" version="1" splitterProportion="0.5">
+ <flattenPackages />
+ <showMembers />
+ <showModules />
+ <showLibraryContents />
+ <hideEmptyPackages />
+ <abbreviatePackageNames />
+ <autoscrollToSource />
+ <autoscrollFromSource />
+ <sortByType />
+ </navigator>
+ <panes>
+ <pane id="Scope" />
+ <pane id="ProjectPane">
+ <subPane>
+ <PATH>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="CleanChanges" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" />
+ </PATH_ELEMENT>
+ </PATH>
+ <PATH>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="CleanChanges" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" />
+ </PATH_ELEMENT>
+ <PATH_ELEMENT>
+ <option name="myItemId" value="CleanChanges" />
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+ </PATH_ELEMENT>
+ </PATH>
+ </subPane>
+ </pane>
+ </panes>
+ </component>
+ <component name="PropertiesComponent">
+ <property name="options.lastSelected" value="web-ide.project.structure" />
+ <property name="options.splitter.main.proportions" value="0.3" />
+ <property name="options.splitter.details.proportions" value="0.2" />
+ <property name="options.searchVisible" value="true" />
+ <property name="WebServerToolWindowFactoryState" value="false" />
+ </component>
+ <component name="RunManager">
+ <configuration default="true" type="PHPUnitRunConfigurationType" factoryName="PHPUnit">
+ <TestRunner />
+ <method />
+ </configuration>
+ <configuration default="true" type="PhpLocalRunConfigurationType" factoryName="PHP Console">
+ <method />
+ </configuration>
+ <configuration default="true" type="JavascriptDebugType" factoryName="JavaScript Debug" singleton="true">
+ <method />
+ </configuration>
+ <configuration default="true" type="PhpUnitRemoteRunConfigurationType" factoryName="PHPUnit on Server">
+ <method />
+ </configuration>
+ <list size="0" />
+ </component>
+ <component name="ShelveChangesManager" show_recycled="false" />
+ <component name="TaskManager">
+ <task active="true" id="Default" summary="Default task">
+ <changelist id="476fbbcd-ad4f-42c2-9dc7-904fc7d5c9b9" name="Default" comment="" />
+ <created>1387983990054</created>
+ <updated>1387983990054</updated>
+ </task>
+ <servers />
+ </component>
+ <component name="ToolWindowManager">
+ <frame x="0" y="14" width="1278" height="770" extended-state="0" />
+ <editor active="false" />
+ <layout>
+ <window_info id="Changes" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="-1" side_tool="false" content_ui="tabs" />
+ <window_info id="Terminal" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="-1" side_tool="false" content_ui="tabs" />
+ <window_info id="TODO" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="6" side_tool="false" content_ui="tabs" />
+ <window_info id="Find" active="true" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="true" weight="0.32892805" sideWeight="0.5" order="1" side_tool="false" content_ui="tabs" />
+ <window_info id="Database" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="-1" side_tool="false" content_ui="tabs" />
+ <window_info id="Structure" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.25" sideWeight="0.5" order="1" side_tool="false" content_ui="tabs" />
+ <window_info id="Project" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="true" weight="0.25" sideWeight="0.5" order="0" side_tool="false" content_ui="combo" />
+ <window_info id="Debug" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.4" sideWeight="0.5" order="3" side_tool="false" content_ui="tabs" />
+ <window_info id="Favorites" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="-1" side_tool="true" content_ui="tabs" />
+ <window_info id="Event Log" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="-1" side_tool="true" content_ui="tabs" />
+ <window_info id="Run" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="2" side_tool="false" content_ui="tabs" />
+ <window_info id="Version Control" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="-1" side_tool="false" content_ui="tabs" />
+ <window_info id="Cvs" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.25" sideWeight="0.5" order="4" side_tool="false" content_ui="tabs" />
+ <window_info id="Message" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="0" side_tool="false" content_ui="tabs" />
+ <window_info id="Ant Build" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.25" sideWeight="0.5" order="1" side_tool="false" content_ui="tabs" />
+ <window_info id="Commander" active="false" anchor="right" auto_hide="false" internal_type="SLIDING" type="SLIDING" visible="false" weight="0.4" sideWeight="0.5" order="0" side_tool="false" content_ui="tabs" />
+ <window_info id="Hierarchy" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.25" sideWeight="0.5" order="2" side_tool="false" content_ui="combo" />
+ <window_info id="Inspection" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.4" sideWeight="0.5" order="5" side_tool="false" content_ui="tabs" />
+ </layout>
+ </component>
+ <component name="Vcs.Log.UiProperties">
+ <option name="RECENTLY_FILTERED_USERS">
+ <collection />
+ </option>
+ </component>
+ <component name="VcsContentAnnotationSettings">
+ <option name="myLimit" value="2678400000" />
+ </component>
+ <component name="VcsManagerConfiguration">
+ <option name="myTodoPanelSettings">
+ <TodoPanelSettings />
+ </option>
+ </component>
+ <component name="XDebuggerManager">
+ <breakpoint-manager />
+ </component>
+ <component name="editorHistoryManager">
+ <entry file="file://$PROJECT_DIR$/CleanChanges_body.php">
+ <provider selected="true" editor-type-id="text-editor">
+ <state line="85" column="23" selection-start="1859" selection-end="1859" vertical-scroll-proportion="0.33333334" vertical-offset="1153" max-vertical-offset="9990">
+ <folding />
+ </state>
+ </provider>
+ </entry>
+ </component>
+</project>
+
diff --git a/MLEB/CleanChanges/.jshintrc b/MLEB/CleanChanges/.jshintrc
new file mode 100644
index 00000000..0967ef42
--- /dev/null
+++ b/MLEB/CleanChanges/.jshintrc
@@ -0,0 +1 @@
+{}
diff --git a/MLEB/CleanChanges/CleanChanges.i18n.php b/MLEB/CleanChanges/CleanChanges.i18n.php
new file mode 100644
index 00000000..17bcda67
--- /dev/null
+++ b/MLEB/CleanChanges/CleanChanges.i18n.php
@@ -0,0 +1,35 @@
+<?php
+/**
+ * This is a backwards-compatibility shim, generated by:
+ * https://git.wikimedia.org/blob/mediawiki%2Fcore.git/HEAD/maintenance%2FgenerateJsonI18n.php
+ *
+ * Beginning with MediaWiki 1.23, translation strings are stored in json files,
+ * and the EXTENSION.i18n.php file only exists to provide compatibility with
+ * older releases of MediaWiki. For more information about this migration, see:
+ * https://www.mediawiki.org/wiki/Requests_for_comment/Localisation_format
+ *
+ * This shim maintains compatibility back to MediaWiki 1.17.
+ */
+$messages = array();
+if ( !function_exists( 'wfJsonI18nShimd87671d4445e53f6' ) ) {
+ function wfJsonI18nShimd87671d4445e53f6( $cache, $code, &$cachedData ) {
+ $codeSequence = array_merge( array( $code ), $cachedData['fallbackSequence'] );
+ foreach ( $codeSequence as $csCode ) {
+ $fileName = dirname( __FILE__ ) . "/i18n/$csCode.json";
+ if ( is_readable( $fileName ) ) {
+ $data = FormatJson::decode( file_get_contents( $fileName ), true );
+ foreach ( array_keys( $data ) as $key ) {
+ if ( $key === '' || $key[0] === '@' ) {
+ unset( $data[$key] );
+ }
+ }
+ $cachedData['messages'] = array_merge( $data, $cachedData['messages'] );
+ }
+
+ $cachedData['deps'][] = new FileDependency( $fileName );
+ }
+ return true;
+ }
+
+ $GLOBALS['wgHooks']['LocalisationCacheRecache'][] = 'wfJsonI18nShimd87671d4445e53f6';
+}
diff --git a/MLEB/CleanChanges/CleanChanges.php b/MLEB/CleanChanges/CleanChanges.php
new file mode 100644
index 00000000..760d596a
--- /dev/null
+++ b/MLEB/CleanChanges/CleanChanges.php
@@ -0,0 +1,54 @@
+<?php
+if ( !defined( 'MEDIAWIKI' ) ) die();
+/**
+ * An extension to show a nice compact changes list and few extra filters for
+ * Special:RecentChanges.php
+ *
+ * @file
+ * @ingroup Extensions
+ *
+ * @author Niklas Laxström
+ * @copyright Copyright © 2008-2012, Niklas Laxström
+ * @license http://www.gnu.org/copyleft/gpl.html GNU General Public License 2.0 or later
+ */
+
+/* Set up messages and includes */
+$dir = __DIR__;
+$wgMessagesDirs['CleanChanges'] = __DIR__ . '/i18n';
+$wgExtensionMessagesFiles['CleanChanges'] = "$dir/CleanChanges.i18n.php";
+$wgAutoloadClasses['NCL'] = "$dir/CleanChanges_body.php";
+
+require_once __DIR__ . '/Resources.php';
+
+/* Hook into code */
+$wgHooks['FetchChangesList'][] = 'NCL::hook';
+$wgHooks['MakeGlobalVariablesScript'][] = 'NCL::addScriptVariables';
+
+/* Extension information */
+$wgExtensionCredits['other'][] = array(
+ 'path' => __FILE__,
+ 'name' => 'Clean Changes',
+ 'version' => '[https://www.mediawiki.org/wiki/MLEB MLEB 2014.11]',
+ 'author' => 'Niklas Laxström',
+ 'descriptionmsg' => 'cleanchanges-desc',
+ 'url' => 'https://www.mediawiki.org/wiki/Extension:CleanChanges',
+);
+
+$wgCCUserFilter = true;
+$wgCCTrailerFilter = false;
+
+$wgExtensionFunctions[] = 'ccSetupFilters';
+$wgAutoloadClasses['CCFilters'] = "$dir/Filters.php";
+
+function ccSetupFilters() {
+ global $wgCCUserFilter, $wgCCTrailerFilter, $wgHooks;
+
+ if ( $wgCCUserFilter ) {
+ $wgHooks['SpecialRecentChangesQuery'][] = 'CCFilters::user';
+ $wgHooks['SpecialRecentChangesPanel'][] = 'CCFilters::userForm';
+ }
+ if ( $wgCCTrailerFilter ) {
+ $wgHooks['SpecialRecentChangesQuery'][] = 'CCFilters::trailer';
+ $wgHooks['SpecialRecentChangesPanel'][] = 'CCFilters::trailerForm';
+ }
+}
diff --git a/MLEB/CleanChanges/CleanChanges_body.php b/MLEB/CleanChanges/CleanChanges_body.php
new file mode 100644
index 00000000..05806614
--- /dev/null
+++ b/MLEB/CleanChanges/CleanChanges_body.php
@@ -0,0 +1,709 @@
+<?php
+
+/**
+ * Generate a list of changes using an Enhanced system (use javascript).
+ */
+class NCL extends EnhancedChangesList {
+ /**
+ * Determines which version of changes list to provide, or none.
+ */
+ public static function hook( User $user, Skin &$skin, &$list ) {
+ $list = null;
+
+ if ( defined( 'ULS_VERSION' ) ) {
+ $skin->getOutput()->addModules( 'ext.cleanchanges.uls' );
+ }
+
+ /* allow override */
+ $request = $skin->getRequest();
+ if ( $request->getBool( 'cleanrc' ) ) {
+ $list = new NCL( $skin );
+ }
+ if ( $request->getBool( 'newrc' ) ) {
+ $list = new EnhancedChangesList( $skin );
+ }
+ if ( $request->getBool( 'oldrc' ) ) {
+ $list = new OldChangesList( $skin );
+ }
+
+ if ( !$list && $user->getOption( 'usenewrc' ) ) {
+ $list = new NCL( $skin );
+ }
+
+ if ( $list instanceof NCL ) {
+ $skin->getOutput()->addModules( 'ext.cleanchanges' );
+ }
+
+ /* If some list was specified, stop processing */
+ return $list === null;
+ }
+
+ protected static $userinfo = array();
+
+ /**
+ * @param $vars array
+ * @return bool
+ */
+ public static function addScriptVariables( &$vars ) {
+ $vars += self::$userinfo;
+ return true;
+ }
+
+ /**
+ * String that comes between page details and the user details. By default
+ * only larger space.
+ */
+ protected $userSeparator = "\xc2\xa0 \xc2\xa0";
+
+ /**
+ * Text direction, true for ltr and false for rtl
+ */
+ protected $direction = true;
+
+ /**
+ * @param IContextSource|Skin $skin
+ */
+ public function __construct( $skin ) {
+ $lang = $this->getLanguage();
+ parent::__construct( $skin );
+ $this->direction = !$lang->isRTL();
+ $this->dir = $lang->getDirMark();
+ }
+
+ /**
+ * @return String
+ */
+ public function beginRecentChangesList() {
+ parent::beginRecentChangesList();
+ $dir = $this->direction ? 'ltr' : 'rtl';
+ return
+ Xml::openElement(
+ 'div',
+ array( 'style' => "direction: $dir" )
+ );
+ }
+
+ /**
+ * @return string
+ */
+ public function endRecentChangesList() {
+ return $this->recentChangesBlock() . '</div>';
+ }
+
+ /**
+ * @param RCCacheEntry $rc
+ * @return int
+ */
+ protected function isLog( RCCacheEntry $rc = null ) {
+ if ( $rc && $rc->getAttribute( 'rc_type' ) == RC_LOG ) {
+ return 2;
+ }
+ return 0;
+ }
+
+ /**
+ * @param RCCacheEntry $rc
+ * @return string
+ */
+ protected function getLogTitle( RCCacheEntry $rc ) {
+ $logtype = $rc->getAttribute( 'rc_log_type' );
+ $logpage = new LogPage( $logtype );
+ $logname = $logpage->getName()->escaped();
+ $titleObj = SpecialPage::getTitleFor( 'Log', $logtype );
+ $link = Linker::link( $titleObj, $logname );
+ return $this->msg( 'parentheses' )->rawParams( $link )->escaped();
+ }
+
+ /**
+ * Format a line for enhanced recentchange (aka with JavaScript and block of lines).
+ * @param RecentChange $baseRC
+ * @param bool $watched
+ * @return string
+ */
+ public function recentChangesLine( &$baseRC, $watched = false ) {
+ # Create a specialised object
+ $rc = RCCacheEntry::newFromParent( $baseRC );
+
+ // Extract most used variables
+ $timestamp = $rc->getAttribute( 'rc_timestamp' );
+ $titleObj = $rc->getTitle();
+ $rc_id = $rc->getAttribute( 'rc_id' );
+
+ $lang = $this->getLanguage();
+ $date = $lang->date( $timestamp, /* adj */ true, /* format */ true );
+ $time = $lang->time( $timestamp, /* adj */ true, /* format */ true );
+
+ # Should patrol-related stuff be shown?
+ $rc->unpatrolled = $this->showAsUnpatrolled( $rc );
+
+ $logEntry = $this->isLog( $rc );
+ if ( $logEntry ) {
+ $clink = $this->getLogTitle( $rc );
+ } elseif ( $rc->unpatrolled && $rc->getAttribute( 'rc_type' ) == RC_NEW ) {
+ # Unpatrolled new page, give rc_id in query
+ $clink = linker::linkKnown(
+ $titleObj,
+ null,
+ array(),
+ array( 'rcid' => $rc_id )
+ );
+ } else {
+ $clink = Linker::linkKnown( $titleObj );
+ }
+
+ $rc->watched = $watched;
+ $rc->link = $this->maybeWatchedLink( $clink, $watched );
+ $rc->timestamp = $time;
+ $rc->numberofWatchingusers = $baseRC->numberofWatchingusers;
+
+ $rc->_reqCurId = array( 'curid' => $rc->getAttribute( 'rc_cur_id' ) );
+ $rc->_reqOldId = array( 'oldid' => $rc->getAttribute( 'rc_this_oldid' ) );
+ $this->makeLinks( $rc );
+
+ // Make user links
+ if ( $this->isDeleted( $rc, Revision::DELETED_USER ) ) {
+ $rc->_user = ' <span class="history-deleted">' . $this->msg( 'rev-deleted-user' )->escaped() . '</span>';
+ $rc->_userInfo = '';
+ self::$userinfo += array();
+ } else {
+ $rc->_user = Linker::userLink(
+ $rc->getAttribute( 'rc_user' ),
+ $rc->getAttribute( 'rc_user_text' )
+ );
+ $stuff = $this->userToolLinks(
+ $rc->getAttribute( 'rc_user' ),
+ $rc->getAttribute( 'rc_user_text' )
+ );
+ // TODO: userToolLinks can return ''
+ self::$userinfo += $stuff[1];
+ $rc->_userInfo = $stuff[0];
+ }
+
+ if ( !$this->isLog( $rc ) ) {
+ $rc->_comment = $this->getComment( $rc );
+ }
+
+ $rc->_watching = $this->numberofWatchingusers( $baseRC->numberofWatchingusers );
+
+ # If it's a new day, add the headline and flush the cache
+ $ret = '';
+ if ( $date !== $this->lastdate ) {
+ # Process current cache
+ $ret = $this->recentChangesBlock();
+ $this->rc_cache = array();
+ $ret .= Xml::element( 'h4', null, $date ) . "\n";
+ $this->lastdate = $date;
+ }
+
+ # Put accumulated information into the cache, for later display
+ # Page moves go on their own line
+ if ( $logEntry ) {
+ $secureName = $this->getLogTitle( $rc );
+ } else {
+ $secureName = $titleObj->getPrefixedDBkey();
+ }
+ $this->rc_cache[$secureName][] = $rc;
+
+ return $ret;
+ }
+
+ /**
+ * @param RCCacheEntry $rc
+ */
+ protected function makeLinks( RCCacheEntry $rc ) {
+ /* These will be overriden with actual links below, if applicable */
+ $rc->_curLink = $this->message['cur'];
+ $rc->_diffLink = $this->message['diff'];
+ $rc->_lastLink = $this->message['last'];
+ $rc->_histLink = $this->message['hist'];
+
+ if ( !$this->isLog( $rc ) ) {
+ # Make cur, diff and last links
+ $querycur = array( 'diff' => 0 ) + $rc->_reqCurId + $rc->_reqOldId;
+ $querydiff = array(
+ 'diff' => $rc->getAttribute( 'rc_this_oldid' ),
+ 'oldid' => $rc->getAttribute( 'rc_last_oldid' ),
+ 'rcid' => $rc->unpatrolled ? $rc->getAttribute( 'rc_id' ) : '',
+ ) + $rc->_reqCurId;
+
+ $rc->_curLink = Linker::linkKnown( $rc->getTitle(),
+ $this->message['cur'], array(), $querycur );
+
+ if ( $rc->getAttribute( 'rc_type' ) != RC_NEW ) {
+ $rc->_diffLink = Linker::linkKnown( $rc->getTitle(),
+ $this->message['diff'], array(), $querydiff );
+ }
+
+ if ( $rc->getAttribute( 'rc_last_oldid' ) != 0 ) {
+ // This is not the first revision
+ $rc->_lastLink = Linker::linkKnown( $rc->getTitle(),
+ $this->message['last'], array(), $querydiff );
+ }
+
+ $rc->_histLink = Linker::link( $rc->getTitle(),
+ $this->message['hist'], array(),
+ $rc->_reqCurId + array( 'action' => 'history' )
+ );
+ }
+ }
+
+ /**
+ * Enhanced RC group
+ * @param RCCacheEntry[] $block
+ * @return string
+ */
+ protected function recentChangesBlockGroup( $block ) {
+ # Collate list of users
+ $isnew = false;
+ $userlinks = array();
+ $overrides = array( 'minor' => false, 'bot' => false );
+ $oldid = 0;
+ foreach ( $block as $rcObj ) {
+ $oldid = $rcObj->mAttribs['rc_last_oldid'];
+ if ( $rcObj->mAttribs['rc_new'] ) {
+ $isnew = $overrides['new'] = true;
+ }
+ $u = $rcObj->_user;
+ if ( !isset( $userlinks[$u] ) ) {
+ $userlinks[$u] = 0;
+ }
+ if ( $rcObj->unpatrolled ) {
+ $overrides['patrol'] = true;
+ }
+
+ $userlinks[$u]++;
+ }
+
+ # Main line, flags and timestamp
+
+ $info = Xml::tags( 'code', null,
+ $this->getFlags( $block[0], $overrides ) . ' ' . $block[0]->timestamp );
+ $rci = 'RCI' . $this->rcCacheIndex;
+ $rcl = 'RCL' . $this->rcCacheIndex;
+ $rcm = 'RCM' . $this->rcCacheIndex;
+ $toggleLink = "javascript:toggleVisibilityE('$rci', '$rcm', '$rcl', 'block')";
+ $tl =
+ Xml::tags( 'span', array( 'id' => $rcm ),
+ Xml::tags( 'a', array( 'href' => $toggleLink ), $this->arrow( $this->direction ? 'r' : 'l' ) ) ) .
+ Xml::tags( 'span', array( 'id' => $rcl, 'style' => 'display: none;' ),
+ Xml::tags( 'a', array( 'href' => $toggleLink ), $this->downArrow() ) );
+
+ $items[] = $tl . $info;
+
+ # Article link
+ $items[] = $block[0]->link;
+
+ $log = $this->isLog( $block[0] );
+ if ( !$log ) {
+ # Changes
+ $n = count( $block );
+ static $nchanges = array();
+ if ( !isset( $nchanges[$n] ) ) {
+ $nchanges[$n] = $this->msg( 'nchanges' )->numParams( $n )->escaped();
+ }
+
+ if ( !$isnew ) {
+ $changes = Linker::linkKnown(
+ $block[0]->getTitle(),
+ $nchanges[$n],
+ array(),
+ array(
+ 'curid' => $block[0]->mAttribs['rc_cur_id'],
+ 'diff' => $block[0]->mAttribs['rc_this_oldid'],
+ 'oldid' => $oldid
+ )
+ );
+ } else {
+ $changes = $nchanges[$n];
+ }
+
+ $size = $this->getCharacterDifference( $block[0], $block[count( $block ) -1] );
+ $items[] = $this->changeInfo( $changes, $block[0]->_histLink, $size );
+ }
+
+ $items[] = $this->userSeparator;
+
+ # Sort the list and convert to text
+ $items[] = $this->makeUserlinks( $userlinks );
+ $items[] = $block[0]->_watching;
+
+ $lines = Xml::tags( 'div', null, implode( " {$this->dir}", $items ) ) . "\n" ;
+
+ # Sub-entries
+ $lines .= Xml::tags( 'div',
+ array( 'id' => $rci, 'style' => 'display: none;' ),
+ $this->subEntries( $block )
+ ) . "\n";
+
+ $this->rcCacheIndex++;
+ return $lines . "\n";
+ }
+
+ /**
+ * Generate HTML for an arrow or placeholder graphic
+ * @param string $dir One of '', 'd', 'l', 'r'
+ * @param string $alt
+ * @param string $title
+ * @return string HTML "<img>" tag
+ */
+ protected function arrow( $dir, $alt = '', $title = '' ) {
+ global $wgExtensionAssetsPath;
+ $encUrl = htmlspecialchars( $wgExtensionAssetsPath . '/CleanChanges/images/Arr_' . $dir . '.png' );
+ $encAlt = htmlspecialchars( $alt );
+ $encTitle = htmlspecialchars( $title );
+
+ return "<img src=\"$encUrl\" width=\"12\" height=\"12\" alt=\"$encAlt\" title=\"$encTitle\" />";
+ }
+
+ /**
+ * Generate HTML for a right- or left-facing arrow,
+ * depending on language direction.
+ * @return string HTML "<img>" tag
+ */
+ protected function sideArrow() {
+ $dir = $this->getLanguage()->isRTL() ? 'l' : 'r';
+
+ return $this->arrow( $dir, '+', $this->msg( 'rc-enhanced-expand' )->text() );
+ }
+
+ /**
+ * Generate HTML for a down-facing arrow
+ * depending on language direction.
+ * @return string HTML "<img>" tag
+ */
+ protected function downArrow() {
+ return $this->arrow( 'd', '-', $this->msg( 'rc-enhanced-hide' )->text() );
+ }
+
+ /**
+ * Generate HTML for a spacer image
+ * @return string HTML "<img>" tag
+ */
+ protected function spacerArrow() {
+ return $this->arrow( '', codepointToUtf8( 0xa0 ) ); // non-breaking space
+ }
+
+ /**
+ * @param RCCacheEntry[] $block
+ * @return string
+ */
+ protected function subEntries( array $block ) {
+ $lines = '';
+ foreach ( $block as $rcObj ) {
+ $items = array();
+ $log = $this->isLog( $rcObj );
+
+ $time = $rcObj->timestamp;
+ if ( !$log ) {
+ $time = Linker::linkKnown(
+ $rcObj->getTitle(),
+ $rcObj->timestamp,
+ array(),
+ $rcObj->_reqOldId + $rcObj->_reqCurId
+ );
+ }
+
+ $info = $this->getFlags( $rcObj ) . ' ' . $time;
+ $items[] = $this->spacerArrow() . Xml::tags( 'code', null, $info );
+
+ if ( !$log ) {
+ $cur = $rcObj->_curLink;
+ $last = $rcObj->_lastLink;
+
+ if ( $block[0] === $rcObj ) {
+ // no point diffing first to first
+ $cur = $this->message['cur'];
+ }
+
+ $items[] = $this->changeInfo( $cur, $last, $this->getCharacterDifference( $rcObj ) );
+ }
+
+ $items[] = $this->userSeparator;
+
+ if ( $this->isLog( $rcObj ) ) {
+ $items[] = $this->insertLogEntry( $rcObj );
+ } else {
+ $items[] = $rcObj->_user;
+ $items[] = $rcObj->_userInfo;
+ $items[] = $rcObj->_comment;
+ }
+
+ $lines .= '<div>' . implode( " {$this->dir}", $items ) . "</div>\n";
+ }
+ return $lines;
+ }
+
+ /**
+ * @param string $diff
+ * @param string $hist
+ * @param mixed $size
+ * @return string
+ */
+ protected function changeInfo( $diff, $hist, $size ) {
+ if ( is_int( $size ) ) {
+ $size = $this->wrapCharacterDifference( $size );
+ // FIXME: i18n: Hard coded parentheses and spaces.
+ return $this->msg( 'cleanchanges-rcinfo-3' )->rawParams( $diff, $hist, $size)->escaped();
+ } else {
+ return $this->msg( 'cleanchanges-rcinfo-2' )->rawParams( $diff, $hist )->escaped();
+ }
+ }
+
+ /**
+ * Enhanced RC ungrouped line.
+ * @param RCCacheEntry $rcObj
+ * @return string a HTML formated line
+ */
+ protected function recentChangesBlockLine( $rcObj ) {
+ # Flag and Timestamp
+ $info = $this->getFlags( $rcObj ) . ' ' . $rcObj->timestamp;
+ $items[] = $this->spacerArrow() . Xml::tags( 'code', null, $info );
+
+ # Article link
+ $items[] = $rcObj->link;
+
+ if ( !$this->isLog( $rcObj ) ) {
+ $items[] = $this->changeInfo( $rcObj->_diffLink, $rcObj->_histLink,
+ $this->getCharacterDifference( $rcObj )
+ );
+ }
+
+ $items[] = $this->userSeparator;
+
+ if ( $this->isLog( $rcObj ) ) {
+ $items[] = $this->insertLogEntry( $rcObj );
+ } else {
+ $items[] = $rcObj->_user;
+ $items[] = $rcObj->_userInfo;
+ $items[] = $rcObj->_comment;
+ $items[] = $rcObj->_watching;
+ }
+
+ return '<div>' . implode( " {$this->dir}", $items ) . "</div>\n";
+ }
+
+ /**
+ * @param RCCacheEntry $rc
+ * @return string
+ */
+ public function getComment( RCCacheEntry $rc ) {
+ $comment = $rc->getAttribute( 'rc_comment' );
+ $action = '';
+ if ( $comment === '' ) {
+ return $action;
+ } elseif ( $this->isDeleted( $rc, LogPage::DELETED_COMMENT ) ) {
+ $priviledged = $this->getUser()->isAllowed( 'deleterevision' );
+ if ( $priviledged ) {
+ return $action . ' <span class="history-deleted">' . Linker::formatComment( $comment ) . '</span>';
+ }
+ return $action . ' <span class="history-deleted">' . $this->msg( 'rev-deleted-comment' )->escaped() . '</span>';
+ }
+ return $action . Linker::commentBlock( $comment, $rc->getTitle() );
+ }
+
+ /**
+ * Enhanced user tool links, with javascript functionality.
+ * @param int $userId user id, 0 for anons
+ * @param string $userText username
+ * @return array|string Either an array of html and array of messages, or ''
+ * [0]: html span and links to user tools
+ * [1]: array of escaped message strings
+ */
+ public function userToolLinks( $userId, $userText ) {
+ global $wgDisableAnonTalk;
+ $talkable = !( $wgDisableAnonTalk && 0 == $userId );
+
+ /*
+ * Assign each different user a running id. This is used to show user tool
+ * links on demand with javascript, to reduce page size when one user has
+ * multiple changes.
+ *
+ * $linkindex is the running id, and $users contain username -> html snippet
+ * for javascript.
+ */
+
+ static $linkindex = 0;
+ $linkindex++;
+
+ static $users = array();
+ $userindex = array_search( $userText, $users, true );
+ if ( $userindex === false ) {
+ $users[] = $userText;
+ $userindex = count( $users ) -1;
+ }
+
+ global $wgExtensionAssetsPath;
+ $image = Xml::element( 'img', array(
+ 'src' => $wgExtensionAssetsPath . '/CleanChanges/images/showuserlinks.png',
+ 'alt' => $this->msg( 'cleanchanges-showuserlinks' )->text(),
+ 'title' => $this->msg( 'cleanchanges-showuserlinks' )->text(),
+ 'width' => '15',
+ 'height' => '11',
+ )
+ );
+
+ $rci = 'RCUI' . $userindex;
+ $rcl = 'RCUL' . $linkindex;
+ $rcm = 'RCUM' . $linkindex;
+ $toggleLink = "javascript:showUserInfo('wgUserInfo$rci', '$rcl' )";
+ $tl = Xml::tags( 'span', array( 'id' => $rcm ),
+ Xml::tags( 'a', array( 'href' => $toggleLink ), $image ) );
+ $tl .= Xml::element( 'span', array( 'id' => $rcl ), ' ' );
+
+ $items = array();
+ if ( $talkable ) {
+ $items[] = Linker::userTalkLink( $userId, $userText );
+ }
+ if ( $userId ) {
+ $targetPage = SpecialPage::getTitleFor( 'Contributions', $userText );
+ $items[] = Linker::linkKnown( $targetPage,
+ $this->msg( 'contribslink' )->escaped() );
+ }
+ if ( $this->getUser()->isAllowed( 'block' ) ) {
+ $items[] = Linker::blockLink( $userId, $userText );
+ }
+ if ( $userId ) {
+ $userrightsPage = new UserrightsPage();
+ if ( $userrightsPage->userCanChangeRights( User::newFromId( $userId ) ) ) {
+ $targetPage = SpecialPage::getTitleFor( 'Userrights', $userText );
+ $items[] = Linker::linkKnown( $targetPage,
+ $this->msg( 'cleanchanges-changerightslink' )->escaped() );
+ }
+ }
+
+ if ( $items ) {
+ $msg = $this->msg( 'parentheses' )
+ ->rawParams( $this->getLanguage()->pipeList( $items ) )
+ ->escaped();
+ $data = array( "wgUserInfo$rci" => $msg );
+
+ return array( $tl, $data );
+ } else {
+ return '';
+ }
+ }
+
+ /**
+ * Makes aggregated list of contributors for a changes group.
+ * Example: [Usera; AnotherUser; ActiveUser ‎(2×); Userabc ‎(6×)]
+ */
+ protected function makeUserlinks( $userlinks ) {
+ /*
+ * User with least changes first, and fallback to alphabetical sorting if
+ * multiple users have same number of changes.
+ */
+ krsort( $userlinks );
+ asort( $userlinks );
+
+ $users = array();
+ foreach ( $userlinks as $userlink => $count ) {
+ $text = $userlink;
+ if ( $count > 1 ) {
+ $lang = $this->getLanguage();
+ $count = $lang->formatNum( $count );
+ $text .= "{$lang->getDirMark()}×$count";
+ }
+ array_push( $users, $text );
+ }
+ $text = implode( '; ', $users );
+ return $this->XMLwrapper( 'changedby', "[$text]", 'span', false );
+ }
+
+ /**
+ * @param RCCacheEntry $rc
+ * @param array $overrides
+ * @return string
+ */
+ protected function getFlags( $rc, array $overrides = null ) {
+ // @todo We assume all characters are of equal width, which they may be not
+ $map = array(
+ # item => field letter-or-something
+ 'new' => array( 'rc_new', self::flag( 'newpage' ) ),
+ 'minor' => array( 'rc_minor', self::flag( 'minor' ) ),
+ 'bot' => array( 'rc_bot', self::flag( 'bot' ) ),
+ );
+
+ static $nothing = "\xc2\xa0";
+
+ $items = array();
+ foreach ( $map as $item => $data ) {
+ list( $field, $flag ) = $data;
+ $bool = isset( $overrides[$item] ) ? $overrides[$item] : $rc->getAttribute( $field );
+ $items[] = $bool ? $flag : $nothing;
+ }
+
+ if ( $this->getUser()->useRCPatrol() ) {
+ if ( isset( $overrides['patrol'] ) ) {
+ $items[] = $overrides['patrol'] ? self::flag( 'unpatrolled' ) : $nothing;
+ } elseif ( $this->showAsUnpatrolled( $rc ) ) {
+ $items[] = self::flag( 'unpatrolled' );
+ } else {
+ $items[] = $nothing;
+ }
+ }
+
+ return implode( '', $items );
+ }
+
+ /**
+ * @param RCCacheEntry $new
+ * @param RCCacheEntry|null $old
+ * @return mixed
+ */
+ protected function getCharacterDifference( $new, $old = null ) {
+ if ( $old === null ) {
+ $old = $new;
+ }
+
+ $newSize = $new->getAttribute( 'rc_new_len' );
+ $oldSize = $old->getAttribute( 'rc_old_len' );
+ if ( $newSize === null || $oldSize === null ) {
+ // @todo Return null instead of string here?
+ return '';
+ }
+
+ return $newSize - $oldSize;
+ }
+
+ /**
+ * @param mixed $szdiff Character difference.
+ * @return string
+ */
+ public function wrapCharacterDifference( $szdiff ) {
+ global $wgRCChangedSizeThreshold;
+ static $cache = array();
+ if ( !isset( $cache[$szdiff] ) ) {
+ // @todo FIXME: Hard coded text (+).
+ $prefix = $szdiff > 0 ? '+' : '';
+ $cache[$szdiff] = $prefix . $this->msg( 'rc-change-size',
+ $this->getLanguage()->formatNum( $szdiff )
+ )->text();
+ }
+
+ $tag = 'span';
+ if ( abs( $szdiff ) > abs( $wgRCChangedSizeThreshold ) ) {
+ $tag = 'strong';
+ }
+
+ if ( $szdiff === 0 ) {
+ return $this->XMLwrapper( 'mw-plusminus-null', $cache[$szdiff], $tag );
+ } elseif ( $szdiff > 0 ) {
+ return $this->XMLwrapper( 'mw-plusminus-pos', $cache[$szdiff], $tag );
+ }
+ return $this->XMLwrapper( 'mw-plusminus-neg', $cache[$szdiff], $tag );
+ }
+
+ /**
+ * @param $class
+ * @param $content
+ * @param string $tag
+ * @param bool $escape
+ * @return string
+ */
+ protected function XMLwrapper( $class, $content, $tag = 'span', $escape = true ) {
+ if ( $escape ) {
+ return Xml::element( $tag, array( 'class' => $class ), $content );
+ }
+ return Xml::tags( $tag, array( 'class' => $class ), $content );
+ }
+}
diff --git a/MLEB/CleanChanges/Filters.php b/MLEB/CleanChanges/Filters.php
new file mode 100644
index 00000000..d6e9939e
--- /dev/null
+++ b/MLEB/CleanChanges/Filters.php
@@ -0,0 +1,112 @@
+<?php
+
+class CCFilters {
+
+ /**
+ * @param array $conds
+ * @param array $tables
+ * @param array $join_conds
+ * @param FormOptions $opts
+ * @return bool
+ */
+ public static function user( &$conds, &$tables, &$join_conds, FormOptions $opts ) {
+ global $wgRequest;
+ $opts->add( 'users', '' );
+ $users = $wgRequest->getVal( 'users' );
+ if ( $users === null ) {
+ return true;
+ }
+
+ $idfilters = array();
+ $userArr = explode( '|', $users );
+ foreach ( $userArr as $u ) {
+ $id = User::idFromName( $u );
+ if ( $id !== null ) {
+ $idfilters[] = $id;
+ }
+ }
+ if ( count( $idfilters ) ) {
+ $dbr = wfGetDB( DB_SLAVE );
+ $conds[] = 'rc_user IN (' . $dbr->makeList( $idfilters ) . ')';
+ $opts->setValue( 'users', $users );
+ }
+
+ return true;
+ }
+
+ /**
+ * @param $items array
+ * @param $opts FormOptions
+ * @return bool
+ */
+ public static function userForm( &$items, FormOptions $opts ) {
+ $opts->consumeValue( 'users' );
+ global $wgRequest;
+
+ $default = $wgRequest->getVal( 'users', '' );
+ $items['users'] = Xml::inputLabelSep( wfMessage( 'cleanchanges-users' )->text(), 'users',
+ 'mw-users', 40, $default );
+ return true;
+ }
+
+ /**
+ * @param array $conds
+ * @param array $tables
+ * @param array $join_conds
+ * @param FormOptions $opts
+ * @return bool
+ */
+ public static function trailer( &$conds, &$tables, &$join_conds, FormOptions $opts ) {
+ global $wgRequest;
+ $opts->add( 'trailer', '' );
+ $trailer = $wgRequest->getVal( 'trailer' );
+ if ( $trailer === null ) return true;
+
+ $dbr = wfGetDB( DB_SLAVE );
+ $conds[] = 'rc_title ' . $dbr->buildLike( $dbr->anyString(), $trailer );
+ $opts->setValue( 'trailer', $trailer );
+
+ return true;
+ }
+
+ /**
+ * @param array $items
+ * @param FormOptions $opts
+ * @return bool
+ */
+ public static function trailerForm( &$items, FormOptions $opts ) {
+ $opts->consumeValue( 'trailer' );
+
+ global $wgRequest;
+ $default = $wgRequest->getVal( 'trailer', '' );
+ /**
+ * @var Language $wgLang
+ */
+ global $wgLang;
+ if ( is_callable( array( 'LanguageNames', 'getNames' ) ) ) {
+ $languages = LanguageNames::getNames( $wgLang->getCode(),
+ LanguageNames::FALLBACK_NORMAL,
+ LanguageNames::LIST_MW
+ );
+ } else {
+ $languages = Language::getLanguageNames( false );
+ }
+ ksort( $languages );
+ $options = Xml::option( wfMessage( 'cleanchanges-language-na' )->text(), '', $default === '' );
+ foreach ( $languages as $code => $name ) {
+ $selected = ( "/$code" === $default );
+ $options .= Xml::option( "$code - $name", "/$code", $selected ) . "\n";
+ }
+ $str =
+ Xml::openElement( 'select', array(
+ 'name' => 'trailer',
+ 'class' => 'mw-language-selector',
+ 'id' => 'sp-rc-language',
+ ) ) .
+ $options .
+ Xml::closeElement( 'select' );
+
+ $items['tailer'] = array( wfMessage( 'cleanchanges-language' )->escaped(), $str );
+ return true;
+ }
+}
diff --git a/MLEB/CleanChanges/RELEASE-NOTES b/MLEB/CleanChanges/RELEASE-NOTES
new file mode 100644
index 00000000..26cdcc46
--- /dev/null
+++ b/MLEB/CleanChanges/RELEASE-NOTES
@@ -0,0 +1,5 @@
+== CleanChanges 2014.11 ==
+Released at 2014-11-29.
+
+=== Noteworthy changes ===
+* Only localisation updates.
diff --git a/MLEB/CleanChanges/Resources.php b/MLEB/CleanChanges/Resources.php
new file mode 100644
index 00000000..2a8b36c5
--- /dev/null
+++ b/MLEB/CleanChanges/Resources.php
@@ -0,0 +1,17 @@
+<?php
+
+global $wgResourceModules;
+
+$resourcePaths = array(
+ 'localBasePath' => __DIR__,
+ 'remoteExtPath' => 'CleanChanges'
+);
+
+$wgResourceModules['ext.cleanchanges'] = array(
+ 'scripts' => 'resources/cleanchanges.js',
+) + $resourcePaths;
+
+$wgResourceModules['ext.cleanchanges.uls'] = array(
+ 'scripts' => 'resources/cleanchanges.uls.js',
+ 'styles' => 'resources/cleanchanges.uls.css',
+) + $resourcePaths;
diff --git a/MLEB/CleanChanges/composer.json b/MLEB/CleanChanges/composer.json
new file mode 100644
index 00000000..beb266f8
--- /dev/null
+++ b/MLEB/CleanChanges/composer.json
@@ -0,0 +1,11 @@
+{
+ "name": "mediawiki/cleanchanges",
+ "type": "mediawiki-extension",
+ "description": "More compact display of recent changes lists",
+ "homepage": "https://www.mediawiki.org/wiki/Extension:CleanChanges",
+ "license": "GPL-2.0+",
+
+ "require": {
+ "composer/installers": "*"
+ }
+}
diff --git a/MLEB/CleanChanges/i18n/af.json b/MLEB/CleanChanges/i18n/af.json
new file mode 100644
index 00000000..5c2c5635
--- /dev/null
+++ b/MLEB/CleanChanges/i18n/af.json
@@ -0,0 +1,13 @@
+{
+ "@metadata": {
+ "authors": [
+ "Naudefj"
+ ]
+ },
+ "cleanchanges-changerightslink": "verander groepe",
+ "cleanchanges-desc": "Meer kompakte weergawe van die [[Special:RecentChanges|lys van onlangse wysigings]]",
+ "cleanchanges-language": "Taal:",
+ "cleanchanges-language-na": "Alle tale",
+ "cleanchanges-users": "Gebruikers (geskei deur \"|\"):",
+ "cleanchanges-showuserlinks": "Wys gebruiker se skakels"
+}
diff --git a/MLEB/CleanChanges/i18n/am.json b/MLEB/CleanChanges/i18n/am.json
new file mode 100644
index 00000000..7c16bfa3
--- /dev/null
+++ b/MLEB/CleanChanges/i18n/am.json
@@ -0,0 +1,9 @@
+{
+ "@metadata": {
+ "authors": [
+ "Codex Sinaiticus"
+ ]
+ },
+ "cleanchanges-language": "ቋንቋ፦",
+ "cleanchanges-language-na": "ሁሉ"
+}
diff --git a/MLEB/CleanChanges/i18n/an.json b/MLEB/CleanChanges/i18n/an.json
new file mode 100644
index 00000000..eb2863dc
--- /dev/null
+++ b/MLEB/CleanChanges/i18n/an.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Juanpabl"
+ ]
+ },
+ "cleanchanges-language-na": "Totz"
+}
diff --git a/MLEB/CleanChanges/i18n/ar.json b/MLEB/CleanChanges/i18n/ar.json
new file mode 100644
index 00000000..ab6e677e
--- /dev/null
+++ b/MLEB/CleanChanges/i18n/ar.json
@@ -0,0 +1,14 @@
+{
+ "@metadata": {
+ "authors": [
+ "Meno25",
+ "OsamaK"
+ ]
+ },
+ "cleanchanges-changerightslink": "تغيير المجموعات",
+ "cleanchanges-desc": "عرض أكثر ضغطا ل [[Special:RecentChanges|قائمة أحدث التغييرات]]",
+ "cleanchanges-language": "اللغة:",
+ "cleanchanges-language-na": "الكل",
+ "cleanchanges-users": "المستخدمون (للفصل: |):",
+ "cleanchanges-showuserlinks": "إظهار وصلات المستخدم"
+}
diff --git a/MLEB/CleanChanges/i18n/arc.json b/MLEB/CleanChanges/i18n/arc.json
new file mode 100644
index 00000000..1ec471cd
--- /dev/null
+++ b/MLEB/CleanChanges/i18n/arc.json
@@ -0,0 +1,12 @@
+{
+ "@metadata": {
+ "authors": [
+ "Basharh",
+ "Michaelovic"
+ ]
+ },
+ "cleanchanges-desc": "[[Special:RecentChanges|ܫܘܚܠܦ̈ܐ ܚܕ̈ܬܐ]]ܚܙܝܬܐ ܙܥܘܪܬܐ ܕ",
+ "cleanchanges-language": "ܠܫܢܐ:",
+ "cleanchanges-language-na": "ܟܠ",
+ "cleanchanges-showuserlinks": "ܚܘܝ ܐܣܘܪ̈ܐ ܕܡܦܠܚܢܐ"
+}
diff --git a/MLEB/CleanChanges/i18n/arz.json b/MLEB/CleanChanges/i18n/arz.json
new file mode 100644
index 00000000..24b5dd31
--- /dev/null
+++ b/MLEB/CleanChanges/i18n/arz.json
@@ -0,0 +1,14 @@
+{
+ "@metadata": {
+ "authors": [
+ "Meno25",
+ "Ouda"
+ ]
+ },
+ "cleanchanges-changerightslink": "تغيير المجموعات",
+ "cleanchanges-desc": "عرض أكثر ضغطا ل [[Special:RecentChanges|قائمة أحدث التغييرات]]",
+ "cleanchanges-language": "اللغة:",
+ "cleanchanges-language-na": "الكل",
+ "cleanchanges-users": "المستخدمون (للفصل: |):",
+ "cleanchanges-showuserlinks": "إظهار وصلات المستخدم"
+}
diff --git a/MLEB/CleanChanges/i18n/ast.json b/MLEB/CleanChanges/i18n/ast.json
new file mode 100644
index 00000000..63ba599b
--- /dev/null
+++ b/MLEB/CleanChanges/i18n/ast.json
@@ -0,0 +1,14 @@
+{
+ "@metadata": {
+ "authors": [
+ "Esbardu",
+ "Xuacu"
+ ]
+ },
+ "cleanchanges-changerightslink": "camudar grupos",
+ "cleanchanges-desc": "Vísualización más compacta de la [[Special:RecentChanges|llista de cambeos recientes]]",
+ "cleanchanges-language": "Llingua:",
+ "cleanchanges-language-na": "Toos",
+ "cleanchanges-users": "Usuarios (Sep: |):",
+ "cleanchanges-showuserlinks": "Amosar enllaces d'usuariu"
+}
diff --git a/MLEB/CleanChanges/i18n/az.json b/MLEB/CleanChanges/i18n/az.json
new file mode 100644
index 00000000..1268368d
--- /dev/null
+++ b/MLEB/CleanChanges/i18n/az.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Cekli829"
+ ]
+ },
+ "cleanchanges-language-na": "Hamısı"
+}
diff --git a/MLEB/CleanChanges/i18n/azb.json b/MLEB/CleanChanges/i18n/azb.json
new file mode 100644
index 00000000..6588f322
--- /dev/null
+++ b/MLEB/CleanChanges/i18n/azb.json
@@ -0,0 +1,11 @@
+{
+ "@metadata": {
+ "authors": [
+ "Ebrahimi-amir",
+ "පසිඳු කාවින්ද"
+ ]
+ },
+ "cleanchanges-language": "دیل:",
+ "cleanchanges-language-na": "بوتون",
+ "cleanchanges-users": "ایستیفاده‌چی‌لر (آییرماق: |):"
+}
diff --git a/MLEB/CleanChanges/i18n/ba.json b/MLEB/CleanChanges/i18n/ba.json
new file mode 100644
index 00000000..7873ba0b
--- /dev/null
+++ b/MLEB/CleanChanges/i18n/ba.json
@@ -0,0 +1,13 @@
+{
+ "@metadata": {
+ "authors": [
+ "Assele"
+ ]
+ },
+ "cleanchanges-changerightslink": "төркөмдәрҙе үҙгәртергә",
+ "cleanchanges-desc": "[[Special:RecentChanges|Һуңғы үҙгәртеүҙәр исемлегенең]] ҡыҫылған күренеше",
+ "cleanchanges-language": "Тел:",
+ "cleanchanges-language-na": "Барыһы ла",
+ "cleanchanges-users": "Ҡатнашыусылар (Бүлгес: |):",
+ "cleanchanges-showuserlinks": "Ҡатнашыусы һылтанмаларын күрһәтергә"
+}
diff --git a/MLEB/CleanChanges/i18n/bcl.json b/MLEB/CleanChanges/i18n/bcl.json
new file mode 100644
index 00000000..23003710
--- /dev/null
+++ b/MLEB/CleanChanges/i18n/bcl.json
@@ -0,0 +1,13 @@
+{
+ "@metadata": {
+ "authors": [
+ "Geopoet"
+ ]
+ },
+ "cleanchanges-changerightslink": "ribayan an mga grupo",
+ "cleanchanges-desc": "Mas masidsidong pagpapahiling kan [[Special:RecentChanges|listahan kan dae pa sana nahahaloy na mga kaliwatan]]",
+ "cleanchanges-language": "Lengguwahe:",
+ "cleanchanges-language-na": "Gabos",
+ "cleanchanges-users": "Mga Paragamit (Pagsuhayon:|):",
+ "cleanchanges-showuserlinks": "Ipahiling an kasugpunan nin paragamit"
+}
diff --git a/MLEB/CleanChanges/i18n/be-tarask.json b/MLEB/CleanChanges/i18n/be-tarask.json
new file mode 100644
index 00000000..734d4103
--- /dev/null
+++ b/MLEB/CleanChanges/i18n/be-tarask.json
@@ -0,0 +1,14 @@
+{
+ "@metadata": {
+ "authors": [
+ "EugeneZelenko",
+ "Jim-by"
+ ]
+ },
+ "cleanchanges-changerightslink": "зьмяніць групы",
+ "cleanchanges-desc": "Болей кампактны паказ [[Special:RecentChanges|сьпісу апошніх зьменаў]]",
+ "cleanchanges-language": "Мова:",
+ "cleanchanges-language-na": "Усе",
+ "cleanchanges-users": "Удзельнікі (разьдзяляльнік: |):",
+ "cleanchanges-showuserlinks": "Паказваць спасылкі ўдзельнікаў"
+}
diff --git a/MLEB/CleanChanges/i18n/bg.json b/MLEB/CleanChanges/i18n/bg.json
new file mode 100644
index 00000000..8ddf65da
--- /dev/null
+++ b/MLEB/CleanChanges/i18n/bg.json
@@ -0,0 +1,14 @@
+{
+ "@metadata": {
+ "authors": [
+ "DCLXVI",
+ "Spiritia"
+ ]
+ },
+ "cleanchanges-changerightslink": "промяна на групите",
+ "cleanchanges-desc": "По-компактно показване на [[Special:RecentChanges|списъка с последните промени]]",
+ "cleanchanges-language": "Език:",
+ "cleanchanges-language-na": "Всички",
+ "cleanchanges-users": "Потребители (Разд: |):",
+ "cleanchanges-showuserlinks": "Показване на потребителските връзки"
+}
diff --git a/MLEB/CleanChanges/i18n/bn.json b/MLEB/CleanChanges/i18n/bn.json
new file mode 100644
index 00000000..c2327e8b
--- /dev/null
+++ b/MLEB/CleanChanges/i18n/bn.json
@@ -0,0 +1,14 @@
+{
+ "@metadata": {
+ "authors": [
+ "Wikitanvir",
+ "Zaheen"
+ ]
+ },
+ "cleanchanges-changerightslink": "দল পরিবর্তন করুন",
+ "cleanchanges-desc": "[[Special:RecentChanges|সাম্প্রতিক পরিবর্তনসমূহের তালিকার]] আরও সংহত প্রদর্শন",
+ "cleanchanges-language": "ভাষা:",
+ "cleanchanges-language-na": "সকল",
+ "cleanchanges-users": "ব্যবহারকারী (পার্থক্যকারী: |):",
+ "cleanchanges-showuserlinks": "ব্যবহারকারী লিংকগুলো দেখাও"
+}
diff --git a/MLEB/CleanChanges/i18n/br.json b/MLEB/CleanChanges/i18n/br.json
new file mode 100644
index 00000000..5dec41e0
--- /dev/null
+++ b/MLEB/CleanChanges/i18n/br.json
@@ -0,0 +1,13 @@
+{
+ "@metadata": {
+ "authors": [
+ "Fulup"
+ ]
+ },
+ "cleanchanges-changerightslink": "kemmañ a ra ar strolladoù",
+ "cleanchanges-desc": "Doare diskouez krennoc'h evit [[Special:RecentChanges|roll ar c'hemmoù diwezhañ]]",
+ "cleanchanges-language": "Yezh :",
+ "cleanchanges-language-na": "An holl",
+ "cleanchanges-users": "Implijerien (Dispart. gant |) :",
+ "cleanchanges-showuserlinks": "Diskwel liammoù an implijer-mañ"
+}
diff --git a/MLEB/CleanChanges/i18n/bs.json b/MLEB/CleanChanges/i18n/bs.json
new file mode 100644
index 00000000..338e99e2
--- /dev/null
+++ b/MLEB/CleanChanges/i18n/bs.json
@@ -0,0 +1,13 @@
+{
+ "@metadata": {
+ "authors": [
+ "CERminator"
+ ]
+ },
+ "cleanchanges-changerightslink": "promijeni grupe",
+ "cleanchanges-desc": "Kompaktniji prikaz [[Special:RecentChanges|spiska nedavnih promjena]]",
+ "cleanchanges-language": "Jezik:",
+ "cleanchanges-language-na": "Sve",
+ "cleanchanges-users": "Korisnici: (Razdv: |):",
+ "cleanchanges-showuserlinks": "Prikaži korisničke linkove"
+}
diff --git a/MLEB/CleanChanges/i18n/ca.json b/MLEB/CleanChanges/i18n/ca.json
new file mode 100644
index 00000000..f2fbae35
--- /dev/null
+++ b/MLEB/CleanChanges/i18n/ca.json
@@ -0,0 +1,15 @@
+{
+ "@metadata": {
+ "authors": [
+ "El libre",
+ "SMP",
+ "Solde"
+ ]
+ },
+ "cleanchanges-changerightslink": "canvia els grups",
+ "cleanchanges-desc": "Versió més compacta de la [[Special:RecentChanges|llista de canvis recents]]",
+ "cleanchanges-language": "Idioma:",
+ "cleanchanges-language-na": "Tot",
+ "cleanchanges-users": "Usuaris (Separador: |):",
+ "cleanchanges-showuserlinks": "Mostra els enllaços de l'usuari/a"
+}
diff --git a/MLEB/CleanChanges/i18n/ce.json b/MLEB/CleanChanges/i18n/ce.json
new file mode 100644
index 00000000..ba3f844b
--- /dev/null
+++ b/MLEB/CleanChanges/i18n/ce.json
@@ -0,0 +1,14 @@
+{
+ "@metadata": {
+ "authors": [
+ "Sasan700",
+ "Умар"
+ ]
+ },
+ "cleanchanges-changerightslink": "хийца тобанаш",
+ "cleanchanges-desc": "Алсамо тIеIовдан гайтар [[Special:RecentChanges|керла нисдарийн могӀам]]",
+ "cleanchanges-language": "Мотт:",
+ "cleanchanges-language-na": "Массо",
+ "cleanchanges-users": "Декъашхой (буькъарг: |):",
+ "cleanchanges-showuserlinks": "Декъашхойн хьажоргаш гойту"
+}
diff --git a/MLEB/CleanChanges/i18n/cs.json b/MLEB/CleanChanges/i18n/cs.json
new file mode 100644
index 00000000..59fae4f8
--- /dev/null
+++ b/MLEB/CleanChanges/i18n/cs.json
@@ -0,0 +1,14 @@
+{
+ "@metadata": {
+ "authors": [
+ "Danny B.",
+ "Matěj Grabovský"
+ ]
+ },
+ "cleanchanges-changerightslink": "změnit skupiny",
+ "cleanchanges-desc": "Kompaktnější zobrazení [[Special:RecentChanges|seznamu posledních změn]]",
+ "cleanchanges-language": "Jazyk:",
+ "cleanchanges-language-na": "Všechny",
+ "cleanchanges-users": "Uživatelé (oddělovač |):",
+ "cleanchanges-showuserlinks": "Ukázat uživatelské odkazy"
+}
diff --git a/MLEB/CleanChanges/i18n/cu.json b/MLEB/CleanChanges/i18n/cu.json
new file mode 100644
index 00000000..223dfcc9
--- /dev/null
+++ b/MLEB/CleanChanges/i18n/cu.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "ОйЛ"
+ ]
+ },
+ "cleanchanges-language": "ѩꙁꙑкъ :"
+}
diff --git a/MLEB/CleanChanges/i18n/cy.json b/MLEB/CleanChanges/i18n/cy.json
new file mode 100644
index 00000000..fc329bb7
--- /dev/null
+++ b/MLEB/CleanChanges/i18n/cy.json
@@ -0,0 +1,13 @@
+{
+ "@metadata": {
+ "authors": [
+ "Lloffiwr"
+ ]
+ },
+ "cleanchanges-changerightslink": "newid grwpiau",
+ "cleanchanges-desc": "Dangos manylion cryno yn unig ar y [[Special:RecentChanges|rhestr newidiadau diweddar]]",
+ "cleanchanges-language": "Iaith:",
+ "cleanchanges-language-na": "Oll",
+ "cleanchanges-users": "Defnyddwyr (Gwah: |):",
+ "cleanchanges-showuserlinks": "Dangos cysylltiadau at ddefnyddwyr"
+}
diff --git a/MLEB/CleanChanges/i18n/da.json b/MLEB/CleanChanges/i18n/da.json
new file mode 100644
index 00000000..102c1154
--- /dev/null
+++ b/MLEB/CleanChanges/i18n/da.json
@@ -0,0 +1,14 @@
+{
+ "@metadata": {
+ "authors": [
+ "Byrial",
+ "Christian List"
+ ]
+ },
+ "cleanchanges-changerightslink": "ændr grupper",
+ "cleanchanges-desc": "Mere kompakt visning af [[Special:RecentChanges|seneste ændringer]]",
+ "cleanchanges-language": "Sprog:",
+ "cleanchanges-language-na": "Alle",
+ "cleanchanges-users": "Brugere (adskil med |):",
+ "cleanchanges-showuserlinks": "Vis brugerhenvisninger"
+}
diff --git a/MLEB/CleanChanges/i18n/de.json b/MLEB/CleanChanges/i18n/de.json
new file mode 100644
index 00000000..016e53d8
--- /dev/null
+++ b/MLEB/CleanChanges/i18n/de.json
@@ -0,0 +1,14 @@
+{
+ "@metadata": {
+ "authors": [
+ "Kghbln",
+ "Raimond Spekking"
+ ]
+ },
+ "cleanchanges-changerightslink": "Gruppen ändern",
+ "cleanchanges-desc": "Ermöglicht eine kompaktere Anzeige der [[Special:RecentChanges|letzten Änderungen]]",
+ "cleanchanges-language": "Sprache:",
+ "cleanchanges-language-na": "Alle",
+ "cleanchanges-users": "Benutzer (Trennzeichen:&nbsp;„|“):",
+ "cleanchanges-showuserlinks": "Zeige Benutzerlinks"
+}
diff --git a/MLEB/CleanChanges/i18n/diq.json b/MLEB/CleanChanges/i18n/diq.json
new file mode 100644
index 00000000..08648f02
--- /dev/null
+++ b/MLEB/CleanChanges/i18n/diq.json
@@ -0,0 +1,11 @@
+{
+ "@metadata": {
+ "authors": [
+ "Erdemaslancan",
+ "Mirzali"
+ ]
+ },
+ "cleanchanges-language": "Zıwan:",
+ "cleanchanges-language-na": "Pêro",
+ "cleanchanges-users": "Karberi (Ciya: |):"
+}
diff --git a/MLEB/CleanChanges/i18n/dsb.json b/MLEB/CleanChanges/i18n/dsb.json
new file mode 100644
index 00000000..3abe40ea
--- /dev/null
+++ b/MLEB/CleanChanges/i18n/dsb.json
@@ -0,0 +1,13 @@
+{
+ "@metadata": {
+ "authors": [
+ "Michawiki"
+ ]
+ },
+ "cleanchanges-changerightslink": "kupki změniś",
+ "cleanchanges-desc": "Kompaktnejše zwobraznjenje [[Special:RecentChanges|lisćiny aktualnych změnow]]",
+ "cleanchanges-language": "Rěc:",
+ "cleanchanges-language-na": "Wšykne",
+ "cleanchanges-users": "Wužywarje (źěleńske znamješko: |);",
+ "cleanchanges-showuserlinks": "Wužywarske wótkaze pokazaś"
+}
diff --git a/MLEB/CleanChanges/i18n/ee.json b/MLEB/CleanChanges/i18n/ee.json
new file mode 100644
index 00000000..e4f515f9
--- /dev/null
+++ b/MLEB/CleanChanges/i18n/ee.json
@@ -0,0 +1,10 @@
+{
+ "@metadata": {
+ "authors": [
+ "Natsubee"
+ ]
+ },
+ "cleanchanges-changerightslink": "ɖɔli hamewo",
+ "cleanchanges-language": "Gbe:",
+ "cleanchanges-language-na": "Wokatã"
+}
diff --git a/MLEB/CleanChanges/i18n/el.json b/MLEB/CleanChanges/i18n/el.json
new file mode 100644
index 00000000..00386d97
--- /dev/null
+++ b/MLEB/CleanChanges/i18n/el.json
@@ -0,0 +1,16 @@
+{
+ "@metadata": {
+ "authors": [
+ "Consta",
+ "Crazymadlover",
+ "Omnipaedista",
+ "Protnet"
+ ]
+ },
+ "cleanchanges-changerightslink": "αλλαγή ομάδων",
+ "cleanchanges-desc": "Πιο συμπαγής προβολή της [[Special:RecentChanges|λίστας προσφάτων αλλαγών]]",
+ "cleanchanges-language": "Γλώσσα:",
+ "cleanchanges-language-na": "Όλες",
+ "cleanchanges-users": "Χρήστες (διαχωρισμένοι με |):",
+ "cleanchanges-showuserlinks": "Προβολή συνδέσμων χρήστη"
+}
diff --git a/MLEB/CleanChanges/i18n/en.json b/MLEB/CleanChanges/i18n/en.json
new file mode 100644
index 00000000..8eab9667
--- /dev/null
+++ b/MLEB/CleanChanges/i18n/en.json
@@ -0,0 +1,13 @@
+{
+ "@metadata": {
+ "authors": []
+ },
+ "cleanchanges-changerightslink": "change groups",
+ "cleanchanges-desc": "More compact display of the [[Special:RecentChanges|recent changes list]]",
+ "cleanchanges-language": "Language:",
+ "cleanchanges-language-na": "All",
+ "cleanchanges-users": "Users (Sep: |):",
+ "cleanchanges-showuserlinks": "Show user links",
+ "cleanchanges-rcinfo-2": "($1; $2)",
+ "cleanchanges-rcinfo-3": "($1; $2; $3)"
+} \ No newline at end of file
diff --git a/MLEB/CleanChanges/i18n/eo.json b/MLEB/CleanChanges/i18n/eo.json
new file mode 100644
index 00000000..ef0ce15d
--- /dev/null
+++ b/MLEB/CleanChanges/i18n/eo.json
@@ -0,0 +1,14 @@
+{
+ "@metadata": {
+ "authors": [
+ "Melancholie",
+ "Yekrats"
+ ]
+ },
+ "cleanchanges-changerightslink": "ŝanĝu grupojn",
+ "cleanchanges-desc": "Pli kompakta versio de la [[Special:RecentChanges|listo de lastaj ŝanĝoj]]",
+ "cleanchanges-language": "Lingvo:",
+ "cleanchanges-language-na": "Ĉiuj",
+ "cleanchanges-users": "Uzantoj (disigilo: |):",
+ "cleanchanges-showuserlinks": "Vidi uzantoj ligiloj"
+}
diff --git a/MLEB/CleanChanges/i18n/es.json b/MLEB/CleanChanges/i18n/es.json
new file mode 100644
index 00000000..5fedd987
--- /dev/null
+++ b/MLEB/CleanChanges/i18n/es.json
@@ -0,0 +1,13 @@
+{
+ "@metadata": {
+ "authors": [
+ "Sanbec"
+ ]
+ },
+ "cleanchanges-changerightslink": "cambiar grupos",
+ "cleanchanges-desc": "Visualización más compacta de la [[Special:RecentChanges|lista de cambios recientes]]",
+ "cleanchanges-language": "Idioma:",
+ "cleanchanges-language-na": "Todos",
+ "cleanchanges-users": "Usuarios (Sep: |):",
+ "cleanchanges-showuserlinks": "Mostrar enlaces de usuario"
+}
diff --git a/MLEB/CleanChanges/i18n/et.json b/MLEB/CleanChanges/i18n/et.json
new file mode 100644
index 00000000..36dc395b
--- /dev/null
+++ b/MLEB/CleanChanges/i18n/et.json
@@ -0,0 +1,14 @@
+{
+ "@metadata": {
+ "authors": [
+ "Avjoska",
+ "Pikne"
+ ]
+ },
+ "cleanchanges-changerightslink": "muuda rühmi",
+ "cleanchanges-desc": "Kompaktsem ülevaade [[Special:RecentChanges|viimastest muudatustest]]",
+ "cleanchanges-language": "Keel:",
+ "cleanchanges-language-na": "Kõik",
+ "cleanchanges-users": "Kasutajad (erald:&nbsp;|):",
+ "cleanchanges-showuserlinks": "Näita kasutajalinke"
+}
diff --git a/MLEB/CleanChanges/i18n/eu.json b/MLEB/CleanChanges/i18n/eu.json
new file mode 100644
index 00000000..6d49c82b
--- /dev/null
+++ b/MLEB/CleanChanges/i18n/eu.json
@@ -0,0 +1,14 @@
+{
+ "@metadata": {
+ "authors": [
+ "An13sa",
+ "Kobazulo"
+ ]
+ },
+ "cleanchanges-changerightslink": "taldeak aldatu",
+ "cleanchanges-desc": "Bistaratze trinkoagoa [[Special:RecentChanges|aldaketa berrien zerrendarako]]",
+ "cleanchanges-language": "Hizkuntza:",
+ "cleanchanges-language-na": "Guztiak",
+ "cleanchanges-users": "Erabiltzaileak (\"|\" ikurrarekin bereizirik)",
+ "cleanchanges-showuserlinks": "Erabiltzaileen estekak erakutsi"
+}
diff --git a/MLEB/CleanChanges/i18n/fa.json b/MLEB/CleanChanges/i18n/fa.json
new file mode 100644
index 00000000..18402c55
--- /dev/null
+++ b/MLEB/CleanChanges/i18n/fa.json
@@ -0,0 +1,17 @@
+{
+ "@metadata": {
+ "authors": [
+ "Ebraminio",
+ "Huji",
+ "Mjbmr"
+ ]
+ },
+ "cleanchanges-changerightslink": "گروه‌های تغییر",
+ "cleanchanges-desc": "نمایش فشرده‌تری از [[Special:RecentChanges|فهرست تغییرات اخیر]]",
+ "cleanchanges-language": "زبان:",
+ "cleanchanges-language-na": "همه",
+ "cleanchanges-users": "کاربران (جدا کردن با: |):",
+ "cleanchanges-showuserlinks": "نمایش پیوندهای کاربر",
+ "cleanchanges-rcinfo-2": "($1؛ $2)",
+ "cleanchanges-rcinfo-3": "($1؛ $2؛ $3)"
+}
diff --git a/MLEB/CleanChanges/i18n/fi.json b/MLEB/CleanChanges/i18n/fi.json
new file mode 100644
index 00000000..d7064c2b
--- /dev/null
+++ b/MLEB/CleanChanges/i18n/fi.json
@@ -0,0 +1,14 @@
+{
+ "@metadata": {
+ "authors": [
+ "Nike",
+ "Vililikku"
+ ]
+ },
+ "cleanchanges-changerightslink": "muokkaa ryhmiä",
+ "cleanchanges-desc": "Tiivistetymmät [[Special:RecentChanges|muutoslistaukset]].",
+ "cleanchanges-language": "Kieli:",
+ "cleanchanges-language-na": "Kaikki",
+ "cleanchanges-users": "Käyttäjät (erotin: |)",
+ "cleanchanges-showuserlinks": "Näytä käyttäjälinkit"
+}
diff --git a/MLEB/CleanChanges/i18n/fr.json b/MLEB/CleanChanges/i18n/fr.json
new file mode 100644
index 00000000..5de13026
--- /dev/null
+++ b/MLEB/CleanChanges/i18n/fr.json
@@ -0,0 +1,17 @@
+{
+ "@metadata": {
+ "authors": [
+ "Grondin",
+ "IAlex",
+ "Verdy p"
+ ]
+ },
+ "cleanchanges-changerightslink": "changer les groupes",
+ "cleanchanges-desc": "Affichage plus compact de la [[Special:RecentChanges|liste des modifications récentes]]",
+ "cleanchanges-language": "Langue :",
+ "cleanchanges-language-na": "Tous",
+ "cleanchanges-users": "Utilisateurs (sép. par |) :",
+ "cleanchanges-showuserlinks": "Afficher les liens de cet utilisateur",
+ "cleanchanges-rcinfo-2": "($1 ; $2)",
+ "cleanchanges-rcinfo-3": "($1 ; $2 ; $3)"
+}
diff --git a/MLEB/CleanChanges/i18n/frp.json b/MLEB/CleanChanges/i18n/frp.json
new file mode 100644
index 00000000..076bc944
--- /dev/null
+++ b/MLEB/CleanChanges/i18n/frp.json
@@ -0,0 +1,12 @@
+{
+ "@metadata": {
+ "authors": [
+ "ChrisPtDe"
+ ]
+ },
+ "cleanchanges-changerightslink": "changiér les tropes",
+ "cleanchanges-language": "Lengoua :",
+ "cleanchanges-language-na": "Tôs",
+ "cleanchanges-users": "Usanciérs (sèp. per |) :",
+ "cleanchanges-showuserlinks": "Fâre vêre los lims a l’usanciér"
+}
diff --git a/MLEB/CleanChanges/i18n/fy.json b/MLEB/CleanChanges/i18n/fy.json
new file mode 100644
index 00000000..5f356597
--- /dev/null
+++ b/MLEB/CleanChanges/i18n/fy.json
@@ -0,0 +1,14 @@
+{
+ "@metadata": {
+ "authors": [
+ "SK-luuut",
+ "Snakesteuben"
+ ]
+ },
+ "cleanchanges-changerightslink": "feroarje groepen",
+ "cleanchanges-desc": "Kompaktere werjefte fan de [[Special:RecentChanges|list mei lêste feroarings]]",
+ "cleanchanges-language": "Taal:",
+ "cleanchanges-language-na": "Alle talen",
+ "cleanchanges-users": "Meidoggers (Skiedingsteken: |):",
+ "cleanchanges-showuserlinks": "Meidoggerskeppelingen sjen litte"
+}
diff --git a/MLEB/CleanChanges/i18n/ga.json b/MLEB/CleanChanges/i18n/ga.json
new file mode 100644
index 00000000..a4905c3f
--- /dev/null
+++ b/MLEB/CleanChanges/i18n/ga.json
@@ -0,0 +1,10 @@
+{
+ "@metadata": {
+ "authors": [
+ "Alison"
+ ]
+ },
+ "cleanchanges-language": "Teanga:",
+ "cleanchanges-language-na": "An t-iomlán",
+ "cleanchanges-users": "Úsáideoirí (Sep: |):"
+}
diff --git a/MLEB/CleanChanges/i18n/gl.json b/MLEB/CleanChanges/i18n/gl.json
new file mode 100644
index 00000000..c26b043e
--- /dev/null
+++ b/MLEB/CleanChanges/i18n/gl.json
@@ -0,0 +1,14 @@
+{
+ "@metadata": {
+ "authors": [
+ "Alma",
+ "Toliño"
+ ]
+ },
+ "cleanchanges-changerightslink": "mudar grupos",
+ "cleanchanges-desc": "Unha mostra máis compacta da [[Special:RecentChanges|lista de cambios recentes]]",
+ "cleanchanges-language": "Lingua:",
+ "cleanchanges-language-na": "Todas",
+ "cleanchanges-users": "Usuarios (separados por |):",
+ "cleanchanges-showuserlinks": "Mostrar as ligazóns de usuario"
+}
diff --git a/MLEB/CleanChanges/i18n/grc.json b/MLEB/CleanChanges/i18n/grc.json
new file mode 100644
index 00000000..3a311044
--- /dev/null
+++ b/MLEB/CleanChanges/i18n/grc.json
@@ -0,0 +1,14 @@
+{
+ "@metadata": {
+ "authors": [
+ "Crazymadlover",
+ "Omnipaedista"
+ ]
+ },
+ "cleanchanges-changerightslink": "ἀλλάττειν ὁμάδας",
+ "cleanchanges-desc": "Ἔτι συμπεπυκνωμένη δεῖξις τῆς [[Special:RecentChanges|καταλογῆς προσφάτων μεταβολῶν]]",
+ "cleanchanges-language": "Γλῶττα:",
+ "cleanchanges-language-na": "Ἅπασαι",
+ "cleanchanges-users": "Χρώμενοι (Διαχ: |):",
+ "cleanchanges-showuserlinks": "Δεικνύναι συνδέσμους χρωμένου"
+}
diff --git a/MLEB/CleanChanges/i18n/gsw.json b/MLEB/CleanChanges/i18n/gsw.json
new file mode 100644
index 00000000..ca1ca5f9
--- /dev/null
+++ b/MLEB/CleanChanges/i18n/gsw.json
@@ -0,0 +1,14 @@
+{
+ "@metadata": {
+ "authors": [
+ "Als-Chlämens",
+ "Als-Holder"
+ ]
+ },
+ "cleanchanges-changerightslink": "Gruppen ändere",
+ "cleanchanges-desc": "Kompakteri Aazeig vu dr [[Special:RecentChanges|letschten Änderige]]",
+ "cleanchanges-language": "Sproch:",
+ "cleanchanges-language-na": "Alli",
+ "cleanchanges-users": "Benutzer (Trännzeiche: |):",
+ "cleanchanges-showuserlinks": "Zeig Benutzer-Links"
+}
diff --git a/MLEB/CleanChanges/i18n/gu.json b/MLEB/CleanChanges/i18n/gu.json
new file mode 100644
index 00000000..ca19ecf1
--- /dev/null
+++ b/MLEB/CleanChanges/i18n/gu.json
@@ -0,0 +1,9 @@
+{
+ "@metadata": {
+ "authors": [
+ "KartikMistry"
+ ]
+ },
+ "cleanchanges-language": "ભાષા:",
+ "cleanchanges-language-na": "બધું"
+}
diff --git a/MLEB/CleanChanges/i18n/gv.json b/MLEB/CleanChanges/i18n/gv.json
new file mode 100644
index 00000000..fd4a50f8
--- /dev/null
+++ b/MLEB/CleanChanges/i18n/gv.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "MacTire02"
+ ]
+ },
+ "cleanchanges-language": "Çhengey:"
+}
diff --git a/MLEB/CleanChanges/i18n/ha.json b/MLEB/CleanChanges/i18n/ha.json
new file mode 100644
index 00000000..44b34d35
--- /dev/null
+++ b/MLEB/CleanChanges/i18n/ha.json
@@ -0,0 +1,4 @@
+{
+ "@metadata": [],
+ "cleanchanges-language-na": "Duka"
+}
diff --git a/MLEB/CleanChanges/i18n/haw.json b/MLEB/CleanChanges/i18n/haw.json
new file mode 100644
index 00000000..3c43f4d5
--- /dev/null
+++ b/MLEB/CleanChanges/i18n/haw.json
@@ -0,0 +1,13 @@
+{
+ "@metadata": {
+ "authors": [
+ "Kalani",
+ "Kolonahe"
+ ]
+ },
+ "cleanchanges-changerightslink": "hoʻololi hui",
+ "cleanchanges-language": "ʻŌlelo:",
+ "cleanchanges-language-na": "Nā mea apau",
+ "cleanchanges-users": "Mea hoʻohana (hoʻokaʻawale ʻia: |):",
+ "cleanchanges-showuserlinks": "Hōʻike i nā loulou mea hoʻohana"
+}
diff --git a/MLEB/CleanChanges/i18n/he.json b/MLEB/CleanChanges/i18n/he.json
new file mode 100644
index 00000000..5cc5fee3
--- /dev/null
+++ b/MLEB/CleanChanges/i18n/he.json
@@ -0,0 +1,15 @@
+{
+ "@metadata": {
+ "authors": [
+ "Agbad",
+ "Rotemliss",
+ "YaronSh"
+ ]
+ },
+ "cleanchanges-changerightslink": "שינוי קבוצות",
+ "cleanchanges-desc": "הצגה מרוכזת יותר של [[Special:RecentChanges|רשימת השינויים האחרונים]]",
+ "cleanchanges-language": "שפה:",
+ "cleanchanges-language-na": "הכול",
+ "cleanchanges-users": "משתמשים (הפרדה: |):",
+ "cleanchanges-showuserlinks": "הצגת קישורי המשתמש"
+}
diff --git a/MLEB/CleanChanges/i18n/hi.json b/MLEB/CleanChanges/i18n/hi.json
new file mode 100644
index 00000000..3ebdb2fc
--- /dev/null
+++ b/MLEB/CleanChanges/i18n/hi.json
@@ -0,0 +1,12 @@
+{
+ "@metadata": {
+ "authors": [
+ "Ansumang",
+ "Kaustubh"
+ ]
+ },
+ "cleanchanges-changerightslink": "ग्रुप बदलें",
+ "cleanchanges-desc": "[[Special:RecentChanges|हाल में हुए बदलाव]] संक्षिप्त रूपमें दर्शायें",
+ "cleanchanges-language": "भाषा:",
+ "cleanchanges-language-na": "सभी"
+}
diff --git a/MLEB/CleanChanges/i18n/hr.json b/MLEB/CleanChanges/i18n/hr.json
new file mode 100644
index 00000000..bf44b03d
--- /dev/null
+++ b/MLEB/CleanChanges/i18n/hr.json
@@ -0,0 +1,13 @@
+{
+ "@metadata": {
+ "authors": [
+ "Ex13"
+ ]
+ },
+ "cleanchanges-changerightslink": "promijeni grupe",
+ "cleanchanges-desc": "Kompaktniji prikaz [[Special:RecentChanges|nedavnih promjena]]",
+ "cleanchanges-language": "Jezik:",
+ "cleanchanges-language-na": "Svi",
+ "cleanchanges-users": "Suradnici (Raz: |):",
+ "cleanchanges-showuserlinks": "Prikaži poveznice suradnika"
+}
diff --git a/MLEB/CleanChanges/i18n/hsb.json b/MLEB/CleanChanges/i18n/hsb.json
new file mode 100644
index 00000000..78095190
--- /dev/null
+++ b/MLEB/CleanChanges/i18n/hsb.json
@@ -0,0 +1,13 @@
+{
+ "@metadata": {
+ "authors": [
+ "Michawiki"
+ ]
+ },
+ "cleanchanges-changerightslink": "skupiny změnić",
+ "cleanchanges-desc": "Kompaktniše zwobraznjenje [[Special:RecentChanges|lisćiny aktualnych změnow]]",
+ "cleanchanges-language": "Rěč:",
+ "cleanchanges-language-na": "Wšě",
+ "cleanchanges-users": "Wužiwarjo (dźělenske znamješko: |):",
+ "cleanchanges-showuserlinks": "Wužiwarske wotkazy pokazać"
+}
diff --git a/MLEB/CleanChanges/i18n/hu.json b/MLEB/CleanChanges/i18n/hu.json
new file mode 100644
index 00000000..6f66408a
--- /dev/null
+++ b/MLEB/CleanChanges/i18n/hu.json
@@ -0,0 +1,13 @@
+{
+ "@metadata": {
+ "authors": [
+ "Dani"
+ ]
+ },
+ "cleanchanges-changerightslink": "csoportok megváltoztatása",
+ "cleanchanges-desc": "A [[Special:RecentChanges|friss változtatások listájának]] tömörebb változata",
+ "cleanchanges-language": "Nyelv:",
+ "cleanchanges-language-na": "összes",
+ "cleanchanges-users": "Szerkesztők (elválasztó: |):",
+ "cleanchanges-showuserlinks": "Szerkesztőlinkek megjelenítése"
+}
diff --git a/MLEB/CleanChanges/i18n/ia.json b/MLEB/CleanChanges/i18n/ia.json
new file mode 100644
index 00000000..f47d4091
--- /dev/null
+++ b/MLEB/CleanChanges/i18n/ia.json
@@ -0,0 +1,13 @@
+{
+ "@metadata": {
+ "authors": [
+ "McDutchie"
+ ]
+ },
+ "cleanchanges-changerightslink": "cambiar gruppos",
+ "cleanchanges-desc": "Presentation plus compacte del [[Special:RecentChanges|lista de modificationes recente]]",
+ "cleanchanges-language": "Lingua:",
+ "cleanchanges-language-na": "Totes",
+ "cleanchanges-users": "Usatores (Sep: |):",
+ "cleanchanges-showuserlinks": "Monstrar ligamines de usator"
+}
diff --git a/MLEB/CleanChanges/i18n/id.json b/MLEB/CleanChanges/i18n/id.json
new file mode 100644
index 00000000..1bd9491e
--- /dev/null
+++ b/MLEB/CleanChanges/i18n/id.json
@@ -0,0 +1,14 @@
+{
+ "@metadata": {
+ "authors": [
+ "Bennylin",
+ "Rex"
+ ]
+ },
+ "cleanchanges-changerightslink": "ubah kelompok",
+ "cleanchanges-desc": "Tampilan lebih padat dari [[Special:RecentChanges|daftar perubahan terbaru]]",
+ "cleanchanges-language": "Bahasa:",
+ "cleanchanges-language-na": "Semua",
+ "cleanchanges-users": "Pengguna (Pemisah: |):",
+ "cleanchanges-showuserlinks": "Tunjukkan pranala pengguna"
+}
diff --git a/MLEB/CleanChanges/i18n/ig.json b/MLEB/CleanChanges/i18n/ig.json
new file mode 100644
index 00000000..28370cf4
--- /dev/null
+++ b/MLEB/CleanChanges/i18n/ig.json
@@ -0,0 +1,13 @@
+{
+ "@metadata": {
+ "authors": [
+ "Ukabia"
+ ]
+ },
+ "cleanchanges-changerightslink": "gbánwe ọtú",
+ "cleanchanges-desc": "Nke ílé gí dí ntà nke [[Special:RecentChanges|ndétu ihe gbanwere na ógè nso]]",
+ "cleanchanges-language": "Ásụ̀sụ̀:",
+ "cleanchanges-language-na": "Haníle",
+ "cleanchanges-users": "Ọ'bànifé (Sep: |):",
+ "cleanchanges-showuserlinks": "Zí jikodo ọ'bànifé"
+}
diff --git a/MLEB/CleanChanges/i18n/is.json b/MLEB/CleanChanges/i18n/is.json
new file mode 100644
index 00000000..5ae28fed
--- /dev/null
+++ b/MLEB/CleanChanges/i18n/is.json
@@ -0,0 +1,9 @@
+{
+ "@metadata": {
+ "authors": [
+ "පසිඳු කාවින්ද"
+ ]
+ },
+ "cleanchanges-language": "Tungumál:",
+ "cleanchanges-language-na": "Allir"
+}
diff --git a/MLEB/CleanChanges/i18n/it.json b/MLEB/CleanChanges/i18n/it.json
new file mode 100644
index 00000000..677d867b
--- /dev/null
+++ b/MLEB/CleanChanges/i18n/it.json
@@ -0,0 +1,15 @@
+{
+ "@metadata": {
+ "authors": [
+ "BrokenArrow",
+ "Darth Kule",
+ "Nemo bis"
+ ]
+ },
+ "cleanchanges-changerightslink": "modifica gruppi",
+ "cleanchanges-desc": "Presentazione più compatta della [[Special:RecentChanges|lista delle ultime modifiche]]",
+ "cleanchanges-language": "Lingua:",
+ "cleanchanges-language-na": "Tutte",
+ "cleanchanges-users": "Utenti (Sep: |):",
+ "cleanchanges-showuserlinks": "Mostra collegamenti utente"
+}
diff --git a/MLEB/CleanChanges/i18n/ja.json b/MLEB/CleanChanges/i18n/ja.json
new file mode 100644
index 00000000..d5e47024
--- /dev/null
+++ b/MLEB/CleanChanges/i18n/ja.json
@@ -0,0 +1,18 @@
+{
+ "@metadata": {
+ "authors": [
+ "Aotake",
+ "Fryed-peach",
+ "JtFuruhata",
+ "Shirayuki"
+ ]
+ },
+ "cleanchanges-changerightslink": "権限を変更",
+ "cleanchanges-desc": "[[Special:RecentChanges|最近の更新一覧]]をよりコンパクトに表示する",
+ "cleanchanges-language": "言語:",
+ "cleanchanges-language-na": "すべて",
+ "cleanchanges-users": "利用者 (| で区切る):",
+ "cleanchanges-showuserlinks": "利用者リンクを表示",
+ "cleanchanges-rcinfo-2": "($1; $2)",
+ "cleanchanges-rcinfo-3": "($1; $2; $3)"
+}
diff --git a/MLEB/CleanChanges/i18n/jv.json b/MLEB/CleanChanges/i18n/jv.json
new file mode 100644
index 00000000..aa98fdf0
--- /dev/null
+++ b/MLEB/CleanChanges/i18n/jv.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Meursault2004"
+ ]
+ },
+ "cleanchanges-changerightslink": "owahana grup"
+}
diff --git a/MLEB/CleanChanges/i18n/ka.json b/MLEB/CleanChanges/i18n/ka.json
new file mode 100644
index 00000000..39e99111
--- /dev/null
+++ b/MLEB/CleanChanges/i18n/ka.json
@@ -0,0 +1,15 @@
+{
+ "@metadata": {
+ "authors": [
+ "David1010",
+ "BRUTE"
+ ]
+ },
+ "cleanchanges-changerightslink": "ჯგუფების ცვლილება",
+ "cleanchanges-desc": "[[Special:RecentChanges|ბოლო ცვლილებების სიის]] უფრო კომპაქტური ჩვენება",
+ "cleanchanges-language": "ენა:",
+ "cleanchanges-language-na": "ყველა",
+ "cleanchanges-users": "მომხმარებლები (გამყოფი: |):",
+ "cleanchanges-rcinfo-2": "($1; $2)",
+ "cleanchanges-rcinfo-3": "($1; $2; $3)"
+}
diff --git a/MLEB/CleanChanges/i18n/kk-cyrl.json b/MLEB/CleanChanges/i18n/kk-cyrl.json
new file mode 100644
index 00000000..a6f98b32
--- /dev/null
+++ b/MLEB/CleanChanges/i18n/kk-cyrl.json
@@ -0,0 +1,11 @@
+{
+ "@metadata": {
+ "authors": [
+ "Arystanbek"
+ ]
+ },
+ "cleanchanges-changerightslink": "Топтарды өзгерту",
+ "cleanchanges-language": "Тіл:",
+ "cleanchanges-language-na": "Барлығы",
+ "cleanchanges-showuserlinks": "Қатысушы сілтемелерін көрсету"
+}
diff --git a/MLEB/CleanChanges/i18n/kl.json b/MLEB/CleanChanges/i18n/kl.json
new file mode 100644
index 00000000..1a7b2253
--- /dev/null
+++ b/MLEB/CleanChanges/i18n/kl.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Qaqqalik"
+ ]
+ },
+ "cleanchanges-language": "Oqaatsit:"
+}
diff --git a/MLEB/CleanChanges/i18n/km.json b/MLEB/CleanChanges/i18n/km.json
new file mode 100644
index 00000000..0955eb4f
--- /dev/null
+++ b/MLEB/CleanChanges/i18n/km.json
@@ -0,0 +1,14 @@
+{
+ "@metadata": {
+ "authors": [
+ "Chhorran",
+ "Lovekhmer",
+ "Thearith"
+ ]
+ },
+ "cleanchanges-changerightslink": "ផ្លាស់ប្តូរក្រុម",
+ "cleanchanges-language": "ភាសា៖",
+ "cleanchanges-language-na": "ទាំងអស់",
+ "cleanchanges-users": "អ្នកប្រើប្រាស់​(ខណ្ឌដោយ |)៖",
+ "cleanchanges-showuserlinks": "បង្ហាញ​តំណ​អ្នកប្រើប្រាស់"
+}
diff --git a/MLEB/CleanChanges/i18n/kn.json b/MLEB/CleanChanges/i18n/kn.json
new file mode 100644
index 00000000..6cd7ab88
--- /dev/null
+++ b/MLEB/CleanChanges/i18n/kn.json
@@ -0,0 +1,9 @@
+{
+ "@metadata": {
+ "authors": [
+ "Nayvik"
+ ]
+ },
+ "cleanchanges-language": "ಭಾಷೆ:",
+ "cleanchanges-language-na": "ಎಲ್ಲಾ"
+}
diff --git a/MLEB/CleanChanges/i18n/ko.json b/MLEB/CleanChanges/i18n/ko.json
new file mode 100644
index 00000000..52213937
--- /dev/null
+++ b/MLEB/CleanChanges/i18n/ko.json
@@ -0,0 +1,14 @@
+{
+ "@metadata": {
+ "authors": [
+ "Kwj2772",
+ "아라"
+ ]
+ },
+ "cleanchanges-changerightslink": "그룹 바꾸기",
+ "cleanchanges-desc": "[[Special:RecentChanges|최근 바뀜 목록]]을 더 조밀하게 보이기",
+ "cleanchanges-language": "언어:",
+ "cleanchanges-language-na": "모두",
+ "cleanchanges-users": "사용자 (구분선: |):",
+ "cleanchanges-showuserlinks": "사용자 링크 보기"
+}
diff --git a/MLEB/CleanChanges/i18n/krc.json b/MLEB/CleanChanges/i18n/krc.json
new file mode 100644
index 00000000..f50ab82b
--- /dev/null
+++ b/MLEB/CleanChanges/i18n/krc.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Iltever"
+ ]
+ },
+ "cleanchanges-language": "Тил:"
+}
diff --git a/MLEB/CleanChanges/i18n/ksh.json b/MLEB/CleanChanges/i18n/ksh.json
new file mode 100644
index 00000000..2d2d2fde
--- /dev/null
+++ b/MLEB/CleanChanges/i18n/ksh.json
@@ -0,0 +1,13 @@
+{
+ "@metadata": {
+ "authors": [
+ "Purodha"
+ ]
+ },
+ "cleanchanges-changerightslink": "Jruppe aanpasse",
+ "cleanchanges-desc": "Määt en köötere [[Special:RecentChanges|Leß met de {{lcfirst:{{int:Recentchanges}}}}]].",
+ "cleanchanges-language": "Schprohch:",
+ "cleanchanges-language-na": "all",
+ "cleanchanges-users": "Metmaacher (donn | dozwesche, wann et zwei udder mieh sen):",
+ "cleanchanges-showuserlinks": "Links op Metmaacher zeije"
+}
diff --git a/MLEB/CleanChanges/i18n/ku-latn.json b/MLEB/CleanChanges/i18n/ku-latn.json
new file mode 100644
index 00000000..c8ef8f16
--- /dev/null
+++ b/MLEB/CleanChanges/i18n/ku-latn.json
@@ -0,0 +1,12 @@
+{
+ "@metadata": {
+ "authors": [
+ "George Animal"
+ ]
+ },
+ "cleanchanges-changerightslink": "koman biguherîne",
+ "cleanchanges-language": "Ziman:",
+ "cleanchanges-language-na": "Hemû",
+ "cleanchanges-users": "Bikarhêner (Sep: |):",
+ "cleanchanges-showuserlinks": "Lînkên bikarhêneran nîşan bide"
+}
diff --git a/MLEB/CleanChanges/i18n/kw.json b/MLEB/CleanChanges/i18n/kw.json
new file mode 100644
index 00000000..416b1057
--- /dev/null
+++ b/MLEB/CleanChanges/i18n/kw.json
@@ -0,0 +1,9 @@
+{
+ "@metadata": {
+ "authors": [
+ "Kw-Moon"
+ ]
+ },
+ "cleanchanges-language": "Yeth:",
+ "cleanchanges-language-na": "Oll"
+}
diff --git a/MLEB/CleanChanges/i18n/lb.json b/MLEB/CleanChanges/i18n/lb.json
new file mode 100644
index 00000000..d9b6f057
--- /dev/null
+++ b/MLEB/CleanChanges/i18n/lb.json
@@ -0,0 +1,13 @@
+{
+ "@metadata": {
+ "authors": [
+ "Robby"
+ ]
+ },
+ "cleanchanges-changerightslink": "ännert d'Gruppen",
+ "cleanchanges-desc": "[[Special:RecentChanges|Lëscht vun de rezenten Ännerunge]] méi kompakt weisen",
+ "cleanchanges-language": "Sprooch:",
+ "cleanchanges-language-na": "All",
+ "cleanchanges-users": "Benotzer (Sep: |):",
+ "cleanchanges-showuserlinks": "D'Linke vun dësem Benotzer weisen"
+}
diff --git a/MLEB/CleanChanges/i18n/li.json b/MLEB/CleanChanges/i18n/li.json
new file mode 100644
index 00000000..2ce38693
--- /dev/null
+++ b/MLEB/CleanChanges/i18n/li.json
@@ -0,0 +1,13 @@
+{
+ "@metadata": {
+ "authors": [
+ "Pahles"
+ ]
+ },
+ "cleanchanges-changerightslink": "gróppe verangere",
+ "cleanchanges-desc": "Mier compacte weergave van de [[Special:RecentChanges|lies mit recènte verangeringe]]",
+ "cleanchanges-language": "Sjpraok:",
+ "cleanchanges-language-na": "Alle sjpraoke",
+ "cleanchanges-users": "Gebroekers (sjeijingsteike \"|\"):",
+ "cleanchanges-showuserlinks": "Gebroekersverwiezinge betrachte"
+}
diff --git a/MLEB/CleanChanges/i18n/lrc.json b/MLEB/CleanChanges/i18n/lrc.json
new file mode 100644
index 00000000..2de434e9
--- /dev/null
+++ b/MLEB/CleanChanges/i18n/lrc.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Bonevarluri"
+ ]
+ },
+ "cleanchanges-language": "زون:"
+}
diff --git a/MLEB/CleanChanges/i18n/lt.json b/MLEB/CleanChanges/i18n/lt.json
new file mode 100644
index 00000000..a8537044
--- /dev/null
+++ b/MLEB/CleanChanges/i18n/lt.json
@@ -0,0 +1,11 @@
+{
+ "@metadata": {
+ "authors": [
+ "Eitvys200"
+ ]
+ },
+ "cleanchanges-changerightslink": "pakeisti grupes",
+ "cleanchanges-language": "Kalba:",
+ "cleanchanges-language-na": "Visi",
+ "cleanchanges-showuserlinks": "Rodyti vartotojo nuorodas"
+}
diff --git a/MLEB/CleanChanges/i18n/ltg.json b/MLEB/CleanChanges/i18n/ltg.json
new file mode 100644
index 00000000..e2baeb1b
--- /dev/null
+++ b/MLEB/CleanChanges/i18n/ltg.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Dark Eagle"
+ ]
+ },
+ "cleanchanges-language-na": "Vysi"
+}
diff --git a/MLEB/CleanChanges/i18n/lv.json b/MLEB/CleanChanges/i18n/lv.json
new file mode 100644
index 00000000..6e991539
--- /dev/null
+++ b/MLEB/CleanChanges/i18n/lv.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Papuass"
+ ]
+ },
+ "cleanchanges-showuserlinks": "Rādīt lietotāja saites"
+}
diff --git a/MLEB/CleanChanges/i18n/lzh.json b/MLEB/CleanChanges/i18n/lzh.json
new file mode 100644
index 00000000..579f3a1e
--- /dev/null
+++ b/MLEB/CleanChanges/i18n/lzh.json
@@ -0,0 +1,10 @@
+{
+ "@metadata": {
+ "authors": [
+ "Jason924tw"
+ ]
+ },
+ "cleanchanges-language": "語:",
+ "cleanchanges-language-na": "全",
+ "cleanchanges-users": "簿 (隔: |):"
+}
diff --git a/MLEB/CleanChanges/i18n/mhr.json b/MLEB/CleanChanges/i18n/mhr.json
new file mode 100644
index 00000000..06bf66b9
--- /dev/null
+++ b/MLEB/CleanChanges/i18n/mhr.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Сай"
+ ]
+ },
+ "cleanchanges-language-na": "Чыла"
+}
diff --git a/MLEB/CleanChanges/i18n/mk.json b/MLEB/CleanChanges/i18n/mk.json
new file mode 100644
index 00000000..248ccb89
--- /dev/null
+++ b/MLEB/CleanChanges/i18n/mk.json
@@ -0,0 +1,13 @@
+{
+ "@metadata": {
+ "authors": [
+ "Brest"
+ ]
+ },
+ "cleanchanges-changerightslink": "промена на групи",
+ "cleanchanges-desc": "Компактен приказ на [[Special:RecentChanges|скорешни промени]]",
+ "cleanchanges-language": "Јазик:",
+ "cleanchanges-language-na": "Сите",
+ "cleanchanges-users": "Корисници (разделник: |):",
+ "cleanchanges-showuserlinks": "Прикажи кориснички врски"
+}
diff --git a/MLEB/CleanChanges/i18n/ml.json b/MLEB/CleanChanges/i18n/ml.json
new file mode 100644
index 00000000..a6fe9201
--- /dev/null
+++ b/MLEB/CleanChanges/i18n/ml.json
@@ -0,0 +1,14 @@
+{
+ "@metadata": {
+ "authors": [
+ "Praveenp",
+ "Shijualex"
+ ]
+ },
+ "cleanchanges-changerightslink": "സംഘങ്ങൾ മാറ്റുക",
+ "cleanchanges-desc": "[[Special:RecentChanges|പുതിയ മാറ്റങ്ങളുടെ പട്ടികയുടെ]] ഒതുക്കമുള്ള പ്രദർശനം",
+ "cleanchanges-language": "ഭാഷ:",
+ "cleanchanges-language-na": "എല്ലാം",
+ "cleanchanges-users": "ഉപയോക്താക്കൾ (പിരിക്കാൻ: |)",
+ "cleanchanges-showuserlinks": "ഉപയോക്തൃ കണ്ണികൾ പ്രദർശിപ്പിക്കുക"
+}
diff --git a/MLEB/CleanChanges/i18n/mn.json b/MLEB/CleanChanges/i18n/mn.json
new file mode 100644
index 00000000..94847d2b
--- /dev/null
+++ b/MLEB/CleanChanges/i18n/mn.json
@@ -0,0 +1,9 @@
+{
+ "@metadata": {
+ "authors": [
+ "Chinneeb"
+ ]
+ },
+ "cleanchanges-language": "Хэл:",
+ "cleanchanges-language-na": "Бүгдийг"
+}
diff --git a/MLEB/CleanChanges/i18n/mr.json b/MLEB/CleanChanges/i18n/mr.json
new file mode 100644
index 00000000..5b0e7813
--- /dev/null
+++ b/MLEB/CleanChanges/i18n/mr.json
@@ -0,0 +1,15 @@
+{
+ "@metadata": {
+ "authors": [
+ "Kaustubh",
+ "Mahitgar",
+ "V.narsikar"
+ ]
+ },
+ "cleanchanges-changerightslink": "गट बदला",
+ "cleanchanges-desc": "[[Special:RecentChanges|अलीकडील बदल यादीचे]] संक्षिप्त रुपात दर्शन",
+ "cleanchanges-language": "भाषा:",
+ "cleanchanges-language-na": "सर्व",
+ "cleanchanges-users": "सदस्य (Sep: |):",
+ "cleanchanges-showuserlinks": "सदस्य दुवे दाखवा"
+}
diff --git a/MLEB/CleanChanges/i18n/ms.json b/MLEB/CleanChanges/i18n/ms.json
new file mode 100644
index 00000000..44179bb6
--- /dev/null
+++ b/MLEB/CleanChanges/i18n/ms.json
@@ -0,0 +1,14 @@
+{
+ "@metadata": {
+ "authors": [
+ "Anakmalaysia",
+ "Emrrans"
+ ]
+ },
+ "cleanchanges-changerightslink": "tukar kumpulan",
+ "cleanchanges-desc": "Pemaparan [[Special:RecentChanges|senarai perubahan terkini]] yang lebih padat",
+ "cleanchanges-language": "Bahasa:",
+ "cleanchanges-language-na": "Semua",
+ "cleanchanges-users": "Pengguna (Sep: |):",
+ "cleanchanges-showuserlinks": "Tunjukkan pautan pengguna"
+}
diff --git a/MLEB/CleanChanges/i18n/mt.json b/MLEB/CleanChanges/i18n/mt.json
new file mode 100644
index 00000000..357cdf25
--- /dev/null
+++ b/MLEB/CleanChanges/i18n/mt.json
@@ -0,0 +1,14 @@
+{
+ "@metadata": {
+ "authors": [
+ "Chrisportelli",
+ "Roderick Mallia"
+ ]
+ },
+ "cleanchanges-changerightslink": "biddel il-gruppi",
+ "cleanchanges-desc": "Preżentazzjoni iktar kompatta tal-[[Special:RecentChanges|lista tat-tibdil riċenti]]",
+ "cleanchanges-language": "Lingwa:",
+ "cleanchanges-language-na": "Kollha",
+ "cleanchanges-users": "Utenti (Sep: |):",
+ "cleanchanges-showuserlinks": "Uri l-ħoloq tal-utent"
+}
diff --git a/MLEB/CleanChanges/i18n/myv.json b/MLEB/CleanChanges/i18n/myv.json
new file mode 100644
index 00000000..3c06c188
--- /dev/null
+++ b/MLEB/CleanChanges/i18n/myv.json
@@ -0,0 +1,9 @@
+{
+ "@metadata": {
+ "authors": [
+ "Botuzhaleny-sodamo"
+ ]
+ },
+ "cleanchanges-language": "Келесь:",
+ "cleanchanges-language-na": "Весе"
+}
diff --git a/MLEB/CleanChanges/i18n/nah.json b/MLEB/CleanChanges/i18n/nah.json
new file mode 100644
index 00000000..f41a49cb
--- /dev/null
+++ b/MLEB/CleanChanges/i18n/nah.json
@@ -0,0 +1,14 @@
+{
+ "@metadata": {
+ "authors": [
+ "Fluence",
+ "Teòtlalili"
+ ]
+ },
+ "cleanchanges-changerightslink": "tlátlasèntlàlìlpátlalòs",
+ "cleanchanges-desc": "Monèxtìs okachi tepitòn in [[Special:RecentChanges|welok tlapátlalli pàmitl]]",
+ "cleanchanges-language": "Tlâtòlli:",
+ "cleanchanges-language-na": "Mochtìn",
+ "cleanchanges-users": "Motekìuhtiànimë (Sep: |):",
+ "cleanchanges-showuserlinks": "Mà monèxti ìnetzòwìlwàn in motekìuhtiàni"
+}
diff --git a/MLEB/CleanChanges/i18n/nb.json b/MLEB/CleanChanges/i18n/nb.json
new file mode 100644
index 00000000..705ae2eb
--- /dev/null
+++ b/MLEB/CleanChanges/i18n/nb.json
@@ -0,0 +1,13 @@
+{
+ "@metadata": {
+ "authors": [
+ "Nghtwlkr"
+ ]
+ },
+ "cleanchanges-changerightslink": "endre grupper",
+ "cleanchanges-desc": "Mer kompakt visning av [[Special:RecentChanges|siste endringer]]",
+ "cleanchanges-language": "Språk:",
+ "cleanchanges-language-na": "Alle",
+ "cleanchanges-users": "Brukere (separer med |):",
+ "cleanchanges-showuserlinks": "Vis brukerlenker"
+}
diff --git a/MLEB/CleanChanges/i18n/nds.json b/MLEB/CleanChanges/i18n/nds.json
new file mode 100644
index 00000000..615eb8f4
--- /dev/null
+++ b/MLEB/CleanChanges/i18n/nds.json
@@ -0,0 +1,10 @@
+{
+ "@metadata": {
+ "authors": [
+ "Joachim Mos"
+ ]
+ },
+ "cleanchanges-language": "Spraak:",
+ "cleanchanges-language-na": "All",
+ "cleanchanges-users": "Brukers (Sep: |):"
+}
diff --git a/MLEB/CleanChanges/i18n/nl.json b/MLEB/CleanChanges/i18n/nl.json
new file mode 100644
index 00000000..b8700bb5
--- /dev/null
+++ b/MLEB/CleanChanges/i18n/nl.json
@@ -0,0 +1,13 @@
+{
+ "@metadata": {
+ "authors": [
+ "Siebrand"
+ ]
+ },
+ "cleanchanges-changerightslink": "groepen wijzigen",
+ "cleanchanges-desc": "Meer compacte weergave van de [[Special:RecentChanges|lijst met recente wijzigingen]]",
+ "cleanchanges-language": "Taal:",
+ "cleanchanges-language-na": "Alle talen",
+ "cleanchanges-users": "Gebruikers (scheidingsteken \"|\"):",
+ "cleanchanges-showuserlinks": "Gebruikerskoppelingen weergeven"
+}
diff --git a/MLEB/CleanChanges/i18n/nn.json b/MLEB/CleanChanges/i18n/nn.json
new file mode 100644
index 00000000..6cf9795b
--- /dev/null
+++ b/MLEB/CleanChanges/i18n/nn.json
@@ -0,0 +1,14 @@
+{
+ "@metadata": {
+ "authors": [
+ "Harald Khan",
+ "Njardarlogar"
+ ]
+ },
+ "cleanchanges-changerightslink": "endra grupper",
+ "cleanchanges-desc": "Meir kompakt vising av [[Special:RecentChanges|siste endringar]]",
+ "cleanchanges-language": "Språk:",
+ "cleanchanges-language-na": "Alle",
+ "cleanchanges-users": "Brukarar (separer med |):",
+ "cleanchanges-showuserlinks": "Vis brukarlenkjer"
+}
diff --git a/MLEB/CleanChanges/i18n/oc.json b/MLEB/CleanChanges/i18n/oc.json
new file mode 100644
index 00000000..e2b0cf8a
--- /dev/null
+++ b/MLEB/CleanChanges/i18n/oc.json
@@ -0,0 +1,13 @@
+{
+ "@metadata": {
+ "authors": [
+ "Cedric31"
+ ]
+ },
+ "cleanchanges-changerightslink": "càmbia los gropes",
+ "cleanchanges-desc": "Afichatge mai compacte de la [[Special:RecentChanges|lista dels darrièrs cambiaments]]",
+ "cleanchanges-language": "Lenga :",
+ "cleanchanges-language-na": "Totes",
+ "cleanchanges-users": "Utilizaires (sep. per |) :",
+ "cleanchanges-showuserlinks": "Afichar los ligams d'aqueste utilizaire"
+}
diff --git a/MLEB/CleanChanges/i18n/or.json b/MLEB/CleanChanges/i18n/or.json
new file mode 100644
index 00000000..8f2e4bc1
--- /dev/null
+++ b/MLEB/CleanChanges/i18n/or.json
@@ -0,0 +1,11 @@
+{
+ "@metadata": {
+ "authors": [
+ "Jnanaranjan Sahu",
+ "Odisha1"
+ ]
+ },
+ "cleanchanges-language": "ଭାଷା:",
+ "cleanchanges-language-na": "ସବୁ",
+ "cleanchanges-showuserlinks": "ବ୍ୟବହାରକାରୀ ଲିଙ୍କ ଦେଖାନ୍ତୁ"
+}
diff --git a/MLEB/CleanChanges/i18n/os.json b/MLEB/CleanChanges/i18n/os.json
new file mode 100644
index 00000000..43fb1e7e
--- /dev/null
+++ b/MLEB/CleanChanges/i18n/os.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Amikeco"
+ ]
+ },
+ "cleanchanges-language": "Æвзаг:"
+}
diff --git a/MLEB/CleanChanges/i18n/pa.json b/MLEB/CleanChanges/i18n/pa.json
new file mode 100644
index 00000000..938a30bf
--- /dev/null
+++ b/MLEB/CleanChanges/i18n/pa.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Gman124"
+ ]
+ },
+ "cleanchanges-language-na": "ਸਭ"
+}
diff --git a/MLEB/CleanChanges/i18n/pdc.json b/MLEB/CleanChanges/i18n/pdc.json
new file mode 100644
index 00000000..900a5ebe
--- /dev/null
+++ b/MLEB/CleanChanges/i18n/pdc.json
@@ -0,0 +1,9 @@
+{
+ "@metadata": {
+ "authors": [
+ "Xqt"
+ ]
+ },
+ "cleanchanges-language": "Schprooch:",
+ "cleanchanges-language-na": "all"
+}
diff --git a/MLEB/CleanChanges/i18n/pfl.json b/MLEB/CleanChanges/i18n/pfl.json
new file mode 100644
index 00000000..c335b312
--- /dev/null
+++ b/MLEB/CleanChanges/i18n/pfl.json
@@ -0,0 +1,9 @@
+{
+ "@metadata": {
+ "authors": [
+ "Manuae"
+ ]
+ },
+ "cleanchanges-language": "Schbrooch:",
+ "cleanchanges-language-na": "alle"
+}
diff --git a/MLEB/CleanChanges/i18n/pl.json b/MLEB/CleanChanges/i18n/pl.json
new file mode 100644
index 00000000..15409248
--- /dev/null
+++ b/MLEB/CleanChanges/i18n/pl.json
@@ -0,0 +1,18 @@
+{
+ "@metadata": {
+ "authors": [
+ "BeginaFelicysym",
+ "Leinad",
+ "Masti",
+ "McMonster",
+ "Sp5uhe",
+ "Wpedzich"
+ ]
+ },
+ "cleanchanges-changerightslink": "zmień grupy",
+ "cleanchanges-desc": "Bardziej zwarta wersja „[[Special:RecentChanges|Ostatnich zmian]]”",
+ "cleanchanges-language": "Język:",
+ "cleanchanges-language-na": "Wszystkie",
+ "cleanchanges-users": "Użytkownicy (rozdziel znakiem „|”):",
+ "cleanchanges-showuserlinks": "Pokaż linki użytkownika"
+}
diff --git a/MLEB/CleanChanges/i18n/pms.json b/MLEB/CleanChanges/i18n/pms.json
new file mode 100644
index 00000000..98f60663
--- /dev/null
+++ b/MLEB/CleanChanges/i18n/pms.json
@@ -0,0 +1,13 @@
+{
+ "@metadata": {
+ "authors": [
+ "Dragonòt"
+ ]
+ },
+ "cleanchanges-changerightslink": "cambia ij grup",
+ "cleanchanges-desc": "Visualisassion pì s-ciassa dla [[Special:RecentChanges|lista dij cambe ressent]]",
+ "cleanchanges-language": "Lenga:",
+ "cleanchanges-language-na": "Tùit",
+ "cleanchanges-users": "Utent (Sep: |):",
+ "cleanchanges-showuserlinks": "Mosta colegament ëd l'utent"
+}
diff --git a/MLEB/CleanChanges/i18n/ps.json b/MLEB/CleanChanges/i18n/ps.json
new file mode 100644
index 00000000..13e06305
--- /dev/null
+++ b/MLEB/CleanChanges/i18n/ps.json
@@ -0,0 +1,13 @@
+{
+ "@metadata": {
+ "authors": [
+ "Ahmed-Najib-Biabani-Ibrahimkhel"
+ ]
+ },
+ "cleanchanges-changerightslink": "ډلې بدلول",
+ "cleanchanges-desc": "د [[Special:RecentChanges|وروستي بدلونونو لړليک]] په ډېره وړوکې بڼه ښکاره کوي.",
+ "cleanchanges-language": "ژبه:",
+ "cleanchanges-language-na": "ټول",
+ "cleanchanges-users": "کارن (بېلول: |):",
+ "cleanchanges-showuserlinks": "د کارن تړنې ښکاره کول"
+}
diff --git a/MLEB/CleanChanges/i18n/pt-br.json b/MLEB/CleanChanges/i18n/pt-br.json
new file mode 100644
index 00000000..525053f9
--- /dev/null
+++ b/MLEB/CleanChanges/i18n/pt-br.json
@@ -0,0 +1,14 @@
+{
+ "@metadata": {
+ "authors": [
+ "Eduardo.mps",
+ "Luckas"
+ ]
+ },
+ "cleanchanges-changerightslink": "alterar grupos",
+ "cleanchanges-desc": "Apresentação mais compacta da [[Special:RecentChanges|lista de mudanças recentes]]",
+ "cleanchanges-language": "Língua:",
+ "cleanchanges-language-na": "Todas",
+ "cleanchanges-users": "Utilizadores (Sep: |):",
+ "cleanchanges-showuserlinks": "Mostrar links de usuário"
+}
diff --git a/MLEB/CleanChanges/i18n/pt.json b/MLEB/CleanChanges/i18n/pt.json
new file mode 100644
index 00000000..0a5b286f
--- /dev/null
+++ b/MLEB/CleanChanges/i18n/pt.json
@@ -0,0 +1,14 @@
+{
+ "@metadata": {
+ "authors": [
+ "Hamilton Abreu",
+ "Malafaya"
+ ]
+ },
+ "cleanchanges-changerightslink": "alterar grupos",
+ "cleanchanges-desc": "Apresentação mais compacta da [[Special:RecentChanges|lista de mudanças recentes]]",
+ "cleanchanges-language": "Língua:",
+ "cleanchanges-language-na": "Todas",
+ "cleanchanges-users": "Utilizadores (Sep: |):",
+ "cleanchanges-showuserlinks": "Mostrar links de utilizador"
+}
diff --git a/MLEB/CleanChanges/i18n/qqq.json b/MLEB/CleanChanges/i18n/qqq.json
new file mode 100644
index 00000000..4eb2d860
--- /dev/null
+++ b/MLEB/CleanChanges/i18n/qqq.json
@@ -0,0 +1,19 @@
+{
+ "@metadata": {
+ "authors": [
+ "Byrial",
+ "Jon Harald Søby",
+ "Meno25",
+ "Purodha",
+ "Shirayuki"
+ ]
+ },
+ "cleanchanges-changerightslink": "Link text for a link in the recent changes page to manage user rights for a user.\nIt is shown after clicking on the \"Show user links\"-picture if you are allowed to manage user rights.",
+ "cleanchanges-desc": "Shown in [[Special:Version]]",
+ "cleanchanges-language": "{{Identical|Language}}",
+ "cleanchanges-language-na": "Used in the trailer selection of [[Special:RecentChanges]] to not filter on any trailer.\n\n{{Identical|All}}",
+ "cleanchanges-users": "Used as label for \"Users\" input box.\n\n\"Sep: |\" stands for \"Separate with |\" or \"|-separated\".",
+ "cleanchanges-showuserlinks": "Used as HTML <code>alt=</code> and <code>title=</code> attribute for HTML <code><nowiki><img></nowiki></code> tag for <code>magnify-clip.png</code>.\n\nThe image is used as link text.\nThe link is an action link to show/hide User Info.",
+ "cleanchanges-rcinfo-2": "{{Optional}}\nUse in enhanced recent changes when CleanChanges is enabled. Parameters:\n* $1 - the number of changes in the overview with {{msg-mw|Nchanges}} used as link text or a diff link with {{msg-mw|Diff}} as link text\n* $2 - a link to the page history. {{msg-mw|Hist}} is used as link text",
+ "cleanchanges-rcinfo-3": "{{Optional}}\nUse in enhanced recent changes when CleanChanges is enabled. Parameters:\n* $1 - the number of changes in the overview with {{msg-mw|Nchanges}} used as link text or a diff link with {{msg-mw|Diff}} as link text\n* $2 - a link to the page history. {{msg-mw|Hist}} is used as link text\n* $3 - the size change from the oldest revision to the latest revision in the overview"
+}
diff --git a/MLEB/CleanChanges/i18n/qu.json b/MLEB/CleanChanges/i18n/qu.json
new file mode 100644
index 00000000..286876dd
--- /dev/null
+++ b/MLEB/CleanChanges/i18n/qu.json
@@ -0,0 +1,9 @@
+{
+ "@metadata": {
+ "authors": [
+ "AlimanRuna"
+ ]
+ },
+ "cleanchanges-language": "Rimay:",
+ "cleanchanges-language-na": "Tukuy"
+}
diff --git a/MLEB/CleanChanges/i18n/rif.json b/MLEB/CleanChanges/i18n/rif.json
new file mode 100644
index 00000000..89d8cf5d
--- /dev/null
+++ b/MLEB/CleanChanges/i18n/rif.json
@@ -0,0 +1,10 @@
+{
+ "@metadata": {
+ "authors": [
+ "Aryaz",
+ "Jose77"
+ ]
+ },
+ "cleanchanges-language": "Tutlayt:",
+ "cleanchanges-language-na": "Marra"
+}
diff --git a/MLEB/CleanChanges/i18n/ro.json b/MLEB/CleanChanges/i18n/ro.json
new file mode 100644
index 00000000..c67e03e0
--- /dev/null
+++ b/MLEB/CleanChanges/i18n/ro.json
@@ -0,0 +1,14 @@
+{
+ "@metadata": {
+ "authors": [
+ "KlaudiuMihaila",
+ "Minisarm",
+ "Stelistcristi"
+ ]
+ },
+ "cleanchanges-changerightslink": "schimbă grupurile",
+ "cleanchanges-language": "Limbă:",
+ "cleanchanges-language-na": "Toate",
+ "cleanchanges-users": "Utilizatori (sep. prin |):",
+ "cleanchanges-showuserlinks": "Arată legăturile utilizatorului"
+}
diff --git a/MLEB/CleanChanges/i18n/roa-tara.json b/MLEB/CleanChanges/i18n/roa-tara.json
new file mode 100644
index 00000000..4f27af0c
--- /dev/null
+++ b/MLEB/CleanChanges/i18n/roa-tara.json
@@ -0,0 +1,13 @@
+{
+ "@metadata": {
+ "authors": [
+ "Joetaras"
+ ]
+ },
+ "cleanchanges-changerightslink": "cange le gruppe",
+ "cleanchanges-desc": "Fa vedè cchiù combatte 'a [[Special:RecentChanges|liste de le cangiaminde recende]]",
+ "cleanchanges-language": "Lènghe:",
+ "cleanchanges-language-na": "Tutte",
+ "cleanchanges-users": "Utinde (Sep: |):",
+ "cleanchanges-showuserlinks": "Fa vedè le collagaminde de l'utende"
+}
diff --git a/MLEB/CleanChanges/i18n/ru.json b/MLEB/CleanChanges/i18n/ru.json
new file mode 100644
index 00000000..91d5515e
--- /dev/null
+++ b/MLEB/CleanChanges/i18n/ru.json
@@ -0,0 +1,15 @@
+{
+ "@metadata": {
+ "authors": [
+ "Ferrer",
+ "Innv",
+ "Александр Сигачёв"
+ ]
+ },
+ "cleanchanges-changerightslink": "изменить группы",
+ "cleanchanges-desc": "Более сжатое представление [[Special:RecentChanges|списка свежих правок]]",
+ "cleanchanges-language": "Язык:",
+ "cleanchanges-language-na": "Все",
+ "cleanchanges-users": "Участники (разделитель: |):",
+ "cleanchanges-showuserlinks": "Показывать ссылки участников"
+}
diff --git a/MLEB/CleanChanges/i18n/rue.json b/MLEB/CleanChanges/i18n/rue.json
new file mode 100644
index 00000000..6e222403
--- /dev/null
+++ b/MLEB/CleanChanges/i18n/rue.json
@@ -0,0 +1,12 @@
+{
+ "@metadata": {
+ "authors": [
+ "Gazeb"
+ ]
+ },
+ "cleanchanges-changerightslink": "змінити ґрупы",
+ "cleanchanges-language": "Язык:",
+ "cleanchanges-language-na": "Вшыткы",
+ "cleanchanges-users": "Хоснователї (Оддїлёвач |):",
+ "cleanchanges-showuserlinks": "Указати одказы хоснователя"
+}
diff --git a/MLEB/CleanChanges/i18n/sah.json b/MLEB/CleanChanges/i18n/sah.json
new file mode 100644
index 00000000..163b6816
--- /dev/null
+++ b/MLEB/CleanChanges/i18n/sah.json
@@ -0,0 +1,13 @@
+{
+ "@metadata": {
+ "authors": [
+ "HalanTul"
+ ]
+ },
+ "cleanchanges-changerightslink": "бөлөхтөрү уларытыы",
+ "cleanchanges-desc": "[[Special:RecentChanges|Кэнники уларытыылары]] арыый дьаһамырдык көрдөрүү",
+ "cleanchanges-language": "Тыла:",
+ "cleanchanges-language-na": "Бары",
+ "cleanchanges-users": "Кыттааччылар (араарыы: |):",
+ "cleanchanges-showuserlinks": "Кыттааччылар сигэлэрин көрдөр"
+}
diff --git a/MLEB/CleanChanges/i18n/scn.json b/MLEB/CleanChanges/i18n/scn.json
new file mode 100644
index 00000000..6e303dfa
--- /dev/null
+++ b/MLEB/CleanChanges/i18n/scn.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Aushulz"
+ ]
+ },
+ "cleanchanges-language-na": "Tutti"
+}
diff --git a/MLEB/CleanChanges/i18n/si.json b/MLEB/CleanChanges/i18n/si.json
new file mode 100644
index 00000000..dc5cb999
--- /dev/null
+++ b/MLEB/CleanChanges/i18n/si.json
@@ -0,0 +1,12 @@
+{
+ "@metadata": {
+ "authors": [
+ "පසිඳු කාවින්ද"
+ ]
+ },
+ "cleanchanges-changerightslink": "කාණ්ඩ වෙනස් කරන්න",
+ "cleanchanges-language": "භාෂාව:",
+ "cleanchanges-language-na": "සියල්ල",
+ "cleanchanges-users": "පරිශීලකයන් (වෙන්: |):",
+ "cleanchanges-showuserlinks": "පරිශීලක සබැඳි පෙන්වන්න"
+}
diff --git a/MLEB/CleanChanges/i18n/sk.json b/MLEB/CleanChanges/i18n/sk.json
new file mode 100644
index 00000000..8cecd2d4
--- /dev/null
+++ b/MLEB/CleanChanges/i18n/sk.json
@@ -0,0 +1,13 @@
+{
+ "@metadata": {
+ "authors": [
+ "Helix84"
+ ]
+ },
+ "cleanchanges-changerightslink": "zmeniť skupiny",
+ "cleanchanges-desc": "Kompaktnejšie zobrazenie [[Special:RecentChanges|zoznamu posledných úprav]]",
+ "cleanchanges-language": "Jazyk:",
+ "cleanchanges-language-na": "Všetky",
+ "cleanchanges-users": "Používatelia (Oddeľ: „|”):",
+ "cleanchanges-showuserlinks": "Zobrazovať používateľské odkazy"
+}
diff --git a/MLEB/CleanChanges/i18n/sl.json b/MLEB/CleanChanges/i18n/sl.json
new file mode 100644
index 00000000..fdbead4c
--- /dev/null
+++ b/MLEB/CleanChanges/i18n/sl.json
@@ -0,0 +1,13 @@
+{
+ "@metadata": {
+ "authors": [
+ "Dbc334"
+ ]
+ },
+ "cleanchanges-changerightslink": "spremeni skupine",
+ "cleanchanges-desc": "Bolj strjen prikaz [[Special:RecentChanges|seznama zadnjih sprememb]]",
+ "cleanchanges-language": "Jezik:",
+ "cleanchanges-language-na": "Vse",
+ "cleanchanges-users": "Uporabniki (ločilo: |):",
+ "cleanchanges-showuserlinks": "Prikaži uporabniške povezave"
+}
diff --git a/MLEB/CleanChanges/i18n/sr-ec.json b/MLEB/CleanChanges/i18n/sr-ec.json
new file mode 100644
index 00000000..1e16dcfc
--- /dev/null
+++ b/MLEB/CleanChanges/i18n/sr-ec.json
@@ -0,0 +1,15 @@
+{
+ "@metadata": {
+ "authors": [
+ "Rancher",
+ "Sasa Stefanovic",
+ "Михајло Анђелковић"
+ ]
+ },
+ "cleanchanges-changerightslink": "промени групе",
+ "cleanchanges-desc": "Компактнији приказ списка [[Special:RecentChanges|скорашњих измена]]",
+ "cleanchanges-language": "Језик:",
+ "cleanchanges-language-na": "Све",
+ "cleanchanges-users": "Корисници (раздв. |):",
+ "cleanchanges-showuserlinks": "Прикажи корисничке везе"
+}
diff --git a/MLEB/CleanChanges/i18n/sr-el.json b/MLEB/CleanChanges/i18n/sr-el.json
new file mode 100644
index 00000000..35fe1730
--- /dev/null
+++ b/MLEB/CleanChanges/i18n/sr-el.json
@@ -0,0 +1,14 @@
+{
+ "@metadata": {
+ "authors": [
+ "Michaello",
+ "Rancher"
+ ]
+ },
+ "cleanchanges-changerightslink": "promeni grupe",
+ "cleanchanges-desc": "Kompaktniji prikaz spiska [[Special:RecentChanges|skorašnjih izmena]]",
+ "cleanchanges-language": "Jezik:",
+ "cleanchanges-language-na": "Sve",
+ "cleanchanges-users": "Korisnici (razdv. |):",
+ "cleanchanges-showuserlinks": "Pokaži korisničke linkove"
+}
diff --git a/MLEB/CleanChanges/i18n/stq.json b/MLEB/CleanChanges/i18n/stq.json
new file mode 100644
index 00000000..7cd0473b
--- /dev/null
+++ b/MLEB/CleanChanges/i18n/stq.json
@@ -0,0 +1,13 @@
+{
+ "@metadata": {
+ "authors": [
+ "Pyt"
+ ]
+ },
+ "cleanchanges-changerightslink": "Benutsergjuchte",
+ "cleanchanges-desc": "Kompaktere Anwiesenge fon do [[Special:RecentChanges|lääste Annerengen]]",
+ "cleanchanges-language": "Sproake:",
+ "cleanchanges-language-na": "aal",
+ "cleanchanges-users": "Benutsere (Tränteeken: |):",
+ "cleanchanges-showuserlinks": "Wies Benutser-Linke"
+}
diff --git a/MLEB/CleanChanges/i18n/su.json b/MLEB/CleanChanges/i18n/su.json
new file mode 100644
index 00000000..2d39b581
--- /dev/null
+++ b/MLEB/CleanChanges/i18n/su.json
@@ -0,0 +1,14 @@
+{
+ "@metadata": {
+ "authors": [
+ "Irwangatot",
+ "Kandar"
+ ]
+ },
+ "cleanchanges-changerightslink": "Ganti grup",
+ "cleanchanges-desc": "Pamidang leuwih basajan ti [[Special:RecentChanges|Nu anyar robah]]",
+ "cleanchanges-language": "Basa:",
+ "cleanchanges-language-na": "Kabéh",
+ "cleanchanges-users": "Pamaké (Pisah: |):",
+ "cleanchanges-showuserlinks": "Témbongkeun tumbu pamaké"
+}
diff --git a/MLEB/CleanChanges/i18n/sv.json b/MLEB/CleanChanges/i18n/sv.json
new file mode 100644
index 00000000..fd2283bd
--- /dev/null
+++ b/MLEB/CleanChanges/i18n/sv.json
@@ -0,0 +1,15 @@
+{
+ "@metadata": {
+ "authors": [
+ "Lejonel",
+ "M.M.S.",
+ "Najami"
+ ]
+ },
+ "cleanchanges-changerightslink": "ändra grupper",
+ "cleanchanges-desc": "Visar [[Special:RecentChanges|senaste ändringarna]] på ett mer kompakt sätt",
+ "cleanchanges-language": "Språk:",
+ "cleanchanges-language-na": "Alla",
+ "cleanchanges-users": "Användare (Separera med: |):",
+ "cleanchanges-showuserlinks": "Visa användarlänkar"
+}
diff --git a/MLEB/CleanChanges/i18n/sw.json b/MLEB/CleanChanges/i18n/sw.json
new file mode 100644
index 00000000..ee7fe41f
--- /dev/null
+++ b/MLEB/CleanChanges/i18n/sw.json
@@ -0,0 +1,9 @@
+{
+ "@metadata": {
+ "authors": [
+ "Stephenwanjau"
+ ]
+ },
+ "cleanchanges-language": "Lugha:",
+ "cleanchanges-language-na": "Wote"
+}
diff --git a/MLEB/CleanChanges/i18n/szl.json b/MLEB/CleanChanges/i18n/szl.json
new file mode 100644
index 00000000..54bee012
--- /dev/null
+++ b/MLEB/CleanChanges/i18n/szl.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Ozi64"
+ ]
+ },
+ "cleanchanges-language-na": "Wšyjske"
+}
diff --git a/MLEB/CleanChanges/i18n/ta.json b/MLEB/CleanChanges/i18n/ta.json
new file mode 100644
index 00000000..d5eecd52
--- /dev/null
+++ b/MLEB/CleanChanges/i18n/ta.json
@@ -0,0 +1,13 @@
+{
+ "@metadata": {
+ "authors": [
+ "TRYPPN"
+ ]
+ },
+ "cleanchanges-changerightslink": "குழுக்களை மாற்று",
+ "cleanchanges-desc": "[[Special:RecentChanges|அண்மைய மாற்றங்களின் பட்டியல்]] மிகச் சுருக்கமாக காட்டப்பட்டுள்ளது",
+ "cleanchanges-language": "மொழி:",
+ "cleanchanges-language-na": "அனைத்தும்",
+ "cleanchanges-users": "பயனர்கள் (Sep: |):",
+ "cleanchanges-showuserlinks": "பயனரின் இணைப்புக்களைக் காட்டவும்"
+}
diff --git a/MLEB/CleanChanges/i18n/te.json b/MLEB/CleanChanges/i18n/te.json
new file mode 100644
index 00000000..a979719e
--- /dev/null
+++ b/MLEB/CleanChanges/i18n/te.json
@@ -0,0 +1,14 @@
+{
+ "@metadata": {
+ "authors": [
+ "Kiranmayee",
+ "Veeven"
+ ]
+ },
+ "cleanchanges-changerightslink": "గుంపులను మార్చండి",
+ "cleanchanges-desc": "[[Special:RecentChanges|ఇటీవలి మార్పుల]]ని సంక్షిప్తముగా చూపుము",
+ "cleanchanges-language": "భాష:",
+ "cleanchanges-language-na": "అన్నీ",
+ "cleanchanges-users": "వాడుకరులు (| తో వేరుపరచి):",
+ "cleanchanges-showuserlinks": "వాడుకరి లింకులను చూపుము"
+}
diff --git a/MLEB/CleanChanges/i18n/tet.json b/MLEB/CleanChanges/i18n/tet.json
new file mode 100644
index 00000000..14841e52
--- /dev/null
+++ b/MLEB/CleanChanges/i18n/tet.json
@@ -0,0 +1,9 @@
+{
+ "@metadata": {
+ "authors": [
+ "MF-Warburg"
+ ]
+ },
+ "cleanchanges-language": "Lian:",
+ "cleanchanges-language-na": "Hotu"
+}
diff --git a/MLEB/CleanChanges/i18n/tg-cyrl.json b/MLEB/CleanChanges/i18n/tg-cyrl.json
new file mode 100644
index 00000000..bdd7de65
--- /dev/null
+++ b/MLEB/CleanChanges/i18n/tg-cyrl.json
@@ -0,0 +1,10 @@
+{
+ "@metadata": {
+ "authors": [
+ "Ibrahim"
+ ]
+ },
+ "cleanchanges-changerightslink": "тағйири гурӯҳҳо",
+ "cleanchanges-language": "Забон:",
+ "cleanchanges-language-na": "Ҳама"
+}
diff --git a/MLEB/CleanChanges/i18n/tg-latn.json b/MLEB/CleanChanges/i18n/tg-latn.json
new file mode 100644
index 00000000..63f68dff
--- /dev/null
+++ b/MLEB/CleanChanges/i18n/tg-latn.json
@@ -0,0 +1,10 @@
+{
+ "@metadata": {
+ "authors": [
+ "Liangent"
+ ]
+ },
+ "cleanchanges-changerightslink": "taƣjiri gurūhho",
+ "cleanchanges-language": "Zabon:",
+ "cleanchanges-language-na": "Hama"
+}
diff --git a/MLEB/CleanChanges/i18n/th.json b/MLEB/CleanChanges/i18n/th.json
new file mode 100644
index 00000000..5b6b64b5
--- /dev/null
+++ b/MLEB/CleanChanges/i18n/th.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Octahedron80"
+ ]
+ },
+ "cleanchanges-language-na": "ทั้งหมด"
+}
diff --git a/MLEB/CleanChanges/i18n/tk.json b/MLEB/CleanChanges/i18n/tk.json
new file mode 100644
index 00000000..7064b427
--- /dev/null
+++ b/MLEB/CleanChanges/i18n/tk.json
@@ -0,0 +1,9 @@
+{
+ "@metadata": {
+ "authors": [
+ "Hanberke"
+ ]
+ },
+ "cleanchanges-language": "Dil:",
+ "cleanchanges-language-na": "Ählisi"
+}
diff --git a/MLEB/CleanChanges/i18n/tl.json b/MLEB/CleanChanges/i18n/tl.json
new file mode 100644
index 00000000..33790634
--- /dev/null
+++ b/MLEB/CleanChanges/i18n/tl.json
@@ -0,0 +1,13 @@
+{
+ "@metadata": {
+ "authors": [
+ "AnakngAraw"
+ ]
+ },
+ "cleanchanges-changerightslink": "baguhin ang mga pangkat",
+ "cleanchanges-desc": "Mas masinsing pagpapalitaw ng [[Special:RecentChanges|talaan ng kamakailang mga pagbabago]]",
+ "cleanchanges-language": "Wika:",
+ "cleanchanges-language-na": "Lahat",
+ "cleanchanges-users": "Mga tagagamit (Panghiwalay: |):",
+ "cleanchanges-showuserlinks": "Ipakita ang mga kawing ng tagagamit"
+}
diff --git a/MLEB/CleanChanges/i18n/tr.json b/MLEB/CleanChanges/i18n/tr.json
new file mode 100644
index 00000000..aeef1572
--- /dev/null
+++ b/MLEB/CleanChanges/i18n/tr.json
@@ -0,0 +1,14 @@
+{
+ "@metadata": {
+ "authors": [
+ "Joseph",
+ "Karduelis"
+ ]
+ },
+ "cleanchanges-changerightslink": "grupları değiştir",
+ "cleanchanges-desc": "[[Special:RecentChanges|Son değişiklikler listesinin]] daha kompakt görünümü",
+ "cleanchanges-language": "Dil:",
+ "cleanchanges-language-na": "Hepsi",
+ "cleanchanges-users": "Kullanıcılar (Ayr: |):",
+ "cleanchanges-showuserlinks": "Kullanıcı bağlantılarını göster"
+}
diff --git a/MLEB/CleanChanges/i18n/tru.json b/MLEB/CleanChanges/i18n/tru.json
new file mode 100644
index 00000000..c58d0e82
--- /dev/null
+++ b/MLEB/CleanChanges/i18n/tru.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Ariyo"
+ ]
+ },
+ "cleanchanges-language": "Leşono:"
+}
diff --git a/MLEB/CleanChanges/i18n/tt-cyrl.json b/MLEB/CleanChanges/i18n/tt-cyrl.json
new file mode 100644
index 00000000..91a659da
--- /dev/null
+++ b/MLEB/CleanChanges/i18n/tt-cyrl.json
@@ -0,0 +1,13 @@
+{
+ "@metadata": {
+ "authors": [
+ "Рашат Якупов"
+ ]
+ },
+ "cleanchanges-changerightslink": "төркемнәрне төзәтергә",
+ "cleanchanges-desc": "[[Special:RecentChanges|Баягы төзәтмәләрнең]] тыгызлау",
+ "cleanchanges-language": "Тел:",
+ "cleanchanges-language-na": "Барысы",
+ "cleanchanges-users": "Катнашучылар (бүлү: |):",
+ "cleanchanges-showuserlinks": "Катнашучылар сылтамаларын күрсәтү"
+}
diff --git a/MLEB/CleanChanges/i18n/ug-arab.json b/MLEB/CleanChanges/i18n/ug-arab.json
new file mode 100644
index 00000000..9acf34ca
--- /dev/null
+++ b/MLEB/CleanChanges/i18n/ug-arab.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Alfredie"
+ ]
+ },
+ "cleanchanges-language": "تىل:"
+}
diff --git a/MLEB/CleanChanges/i18n/ug-latn.json b/MLEB/CleanChanges/i18n/ug-latn.json
new file mode 100644
index 00000000..c543ac2a
--- /dev/null
+++ b/MLEB/CleanChanges/i18n/ug-latn.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Jose77"
+ ]
+ },
+ "cleanchanges-language": "Til:"
+}
diff --git a/MLEB/CleanChanges/i18n/uk.json b/MLEB/CleanChanges/i18n/uk.json
new file mode 100644
index 00000000..6bcc0c1d
--- /dev/null
+++ b/MLEB/CleanChanges/i18n/uk.json
@@ -0,0 +1,14 @@
+{
+ "@metadata": {
+ "authors": [
+ "Ahonc",
+ "Prima klasy4na"
+ ]
+ },
+ "cleanchanges-changerightslink": "змінити групи",
+ "cleanchanges-desc": "Більш стисле відображення [[Special:RecentChanges|списку останніх змін]]",
+ "cleanchanges-language": "Мова:",
+ "cleanchanges-language-na": "Усі",
+ "cleanchanges-users": "Користувачі (розділювач: |):",
+ "cleanchanges-showuserlinks": "Показувати посилання користувачів"
+}
diff --git a/MLEB/CleanChanges/i18n/uz.json b/MLEB/CleanChanges/i18n/uz.json
new file mode 100644
index 00000000..3dc9de7f
--- /dev/null
+++ b/MLEB/CleanChanges/i18n/uz.json
@@ -0,0 +1,9 @@
+{
+ "@metadata": {
+ "authors": [
+ "CoderSI"
+ ]
+ },
+ "cleanchanges-language": "Til:",
+ "cleanchanges-users": "Ishtirokchilar (ajratuvchi: |):"
+}
diff --git a/MLEB/CleanChanges/i18n/vec.json b/MLEB/CleanChanges/i18n/vec.json
new file mode 100644
index 00000000..c5072e64
--- /dev/null
+++ b/MLEB/CleanChanges/i18n/vec.json
@@ -0,0 +1,13 @@
+{
+ "@metadata": {
+ "authors": [
+ "Candalua"
+ ]
+ },
+ "cleanchanges-changerightslink": "canbia grupi",
+ "cleanchanges-desc": "Visualixassion pi conpatta de la [[Special:RecentChanges|lista dei canbiamenti reçenti]]",
+ "cleanchanges-language": "Lengua:",
+ "cleanchanges-language-na": "Tute",
+ "cleanchanges-users": "Utenti (separà da |):",
+ "cleanchanges-showuserlinks": "Mostra colegamenti utente"
+}
diff --git a/MLEB/CleanChanges/i18n/vep.json b/MLEB/CleanChanges/i18n/vep.json
new file mode 100644
index 00000000..85341f3a
--- /dev/null
+++ b/MLEB/CleanChanges/i18n/vep.json
@@ -0,0 +1,10 @@
+{
+ "@metadata": {
+ "authors": [
+ "Игорь Бродский"
+ ]
+ },
+ "cleanchanges-language": "Kel':",
+ "cleanchanges-language-na": "Kaik",
+ "cleanchanges-users": "Kävutajad (erigoitim: |)"
+}
diff --git a/MLEB/CleanChanges/i18n/vi.json b/MLEB/CleanChanges/i18n/vi.json
new file mode 100644
index 00000000..0f6c38e1
--- /dev/null
+++ b/MLEB/CleanChanges/i18n/vi.json
@@ -0,0 +1,14 @@
+{
+ "@metadata": {
+ "authors": [
+ "Minh Nguyen",
+ "Vinhtantran"
+ ]
+ },
+ "cleanchanges-changerightslink": "thay đổi nhóm",
+ "cleanchanges-desc": "Hiển thị [[Special:RecentChanges|danh sách thay đổi gần đây]] ngắn gọn hơn",
+ "cleanchanges-language": "Ngôn ngữ:",
+ "cleanchanges-language-na": "Tất cả",
+ "cleanchanges-users": "Các thành viên (Phân cách: |):",
+ "cleanchanges-showuserlinks": "Hiện liên kết người dùng"
+}
diff --git a/MLEB/CleanChanges/i18n/vo.json b/MLEB/CleanChanges/i18n/vo.json
new file mode 100644
index 00000000..5e319f07
--- /dev/null
+++ b/MLEB/CleanChanges/i18n/vo.json
@@ -0,0 +1,13 @@
+{
+ "@metadata": {
+ "authors": [
+ "Smeira"
+ ]
+ },
+ "cleanchanges-changerightslink": "votükön grupis",
+ "cleanchanges-desc": "Jonön ma fomät brefikum [[Special:RecentChanges|lisedi votükamas nulik]]",
+ "cleanchanges-language": "Pük:",
+ "cleanchanges-language-na": "Valiks",
+ "cleanchanges-users": "Gebans (teilamal: |):",
+ "cleanchanges-showuserlinks": "Jonön gebanayümis"
+}
diff --git a/MLEB/CleanChanges/i18n/wa.json b/MLEB/CleanChanges/i18n/wa.json
new file mode 100644
index 00000000..d5b9a845
--- /dev/null
+++ b/MLEB/CleanChanges/i18n/wa.json
@@ -0,0 +1,13 @@
+{
+ "@metadata": {
+ "authors": [
+ "Srtxg"
+ ]
+ },
+ "cleanchanges-changerightslink": "candjî les groupes",
+ "cleanchanges-desc": "Håynaedje pus rasseré del [[Special:RecentChanges|djivêye des dierins candjmints]]",
+ "cleanchanges-language": "Lingaedje:",
+ "cleanchanges-language-na": "Tos",
+ "cleanchanges-users": "Uzeus (disp. avou |):",
+ "cleanchanges-showuserlinks": "Mostrer les loyéns d' l' uzeus"
+}
diff --git a/MLEB/CleanChanges/i18n/yi.json b/MLEB/CleanChanges/i18n/yi.json
new file mode 100644
index 00000000..2e8adc9f
--- /dev/null
+++ b/MLEB/CleanChanges/i18n/yi.json
@@ -0,0 +1,9 @@
+{
+ "@metadata": {
+ "authors": [
+ "פוילישער"
+ ]
+ },
+ "cleanchanges-language": "שפראך:",
+ "cleanchanges-language-na": "אלע"
+}
diff --git a/MLEB/CleanChanges/i18n/yo.json b/MLEB/CleanChanges/i18n/yo.json
new file mode 100644
index 00000000..7999031e
--- /dev/null
+++ b/MLEB/CleanChanges/i18n/yo.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Demmy"
+ ]
+ },
+ "cleanchanges-language-na": "Gbogbo wọn"
+}
diff --git a/MLEB/CleanChanges/i18n/zh-hans.json b/MLEB/CleanChanges/i18n/zh-hans.json
new file mode 100644
index 00000000..69275d09
--- /dev/null
+++ b/MLEB/CleanChanges/i18n/zh-hans.json
@@ -0,0 +1,16 @@
+{
+ "@metadata": {
+ "authors": [
+ "Chenxiaoqino",
+ "Chenzw",
+ "Liangent",
+ "Xiaomingyan"
+ ]
+ },
+ "cleanchanges-changerightslink": "更改群组",
+ "cleanchanges-desc": "更简洁的显示[[Special:RecentChanges|最近更改清单]]",
+ "cleanchanges-language": "语言:",
+ "cleanchanges-language-na": "所有",
+ "cleanchanges-users": "用户 (Sep: |):",
+ "cleanchanges-showuserlinks": "显示用户链接"
+}
diff --git a/MLEB/CleanChanges/i18n/zh-hant.json b/MLEB/CleanChanges/i18n/zh-hant.json
new file mode 100644
index 00000000..6097c238
--- /dev/null
+++ b/MLEB/CleanChanges/i18n/zh-hant.json
@@ -0,0 +1,16 @@
+{
+ "@metadata": {
+ "authors": [
+ "Alexsh",
+ "Liangent",
+ "Mark85296341",
+ "Cwlin0416"
+ ]
+ },
+ "cleanchanges-changerightslink": "更改群組",
+ "cleanchanges-desc": "更精簡的顯示 [[Special:RecentChanges|最近變更清單]]",
+ "cleanchanges-language": "語言:",
+ "cleanchanges-language-na": "全部",
+ "cleanchanges-users": "使用者 (分隔: |):",
+ "cleanchanges-showuserlinks": "顯示使用者連結"
+}
diff --git a/MLEB/CleanChanges/images/Arr_.png b/MLEB/CleanChanges/images/Arr_.png
new file mode 100644
index 00000000..bc67a4b6
--- /dev/null
+++ b/MLEB/CleanChanges/images/Arr_.png
Binary files differ
diff --git a/MLEB/CleanChanges/images/Arr_d.png b/MLEB/CleanChanges/images/Arr_d.png
new file mode 100644
index 00000000..58a9fc66
--- /dev/null
+++ b/MLEB/CleanChanges/images/Arr_d.png
Binary files differ
diff --git a/MLEB/CleanChanges/images/Arr_l.png b/MLEB/CleanChanges/images/Arr_l.png
new file mode 100644
index 00000000..2246254f
--- /dev/null
+++ b/MLEB/CleanChanges/images/Arr_l.png
Binary files differ
diff --git a/MLEB/CleanChanges/images/Arr_r.png b/MLEB/CleanChanges/images/Arr_r.png
new file mode 100644
index 00000000..467a555a
--- /dev/null
+++ b/MLEB/CleanChanges/images/Arr_r.png
Binary files differ
diff --git a/MLEB/CleanChanges/images/Arr_u.png b/MLEB/CleanChanges/images/Arr_u.png
new file mode 100644
index 00000000..1aa543af
--- /dev/null
+++ b/MLEB/CleanChanges/images/Arr_u.png
Binary files differ
diff --git a/MLEB/CleanChanges/images/showuserlinks.png b/MLEB/CleanChanges/images/showuserlinks.png
new file mode 100644
index 00000000..00a9cee1
--- /dev/null
+++ b/MLEB/CleanChanges/images/showuserlinks.png
Binary files differ
diff --git a/MLEB/CleanChanges/resources/cleanchanges.js b/MLEB/CleanChanges/resources/cleanchanges.js
new file mode 100644
index 00000000..c11ec80b
--- /dev/null
+++ b/MLEB/CleanChanges/resources/cleanchanges.js
@@ -0,0 +1,23 @@
+(function ( mw, $ ) {
+ 'use strict';
+
+ window.toggleVisibilityE = function ( levelId, otherId, linkId, type ) {
+ var thisLevel = document.getElementById( levelId ),
+ otherLevel = document.getElementById( otherId ),
+ linkLevel = document.getElementById( linkId );
+
+ if ( thisLevel.style.display === 'none' ) {
+ thisLevel.style.display = type;
+ otherLevel.style.display = 'none';
+ linkLevel.style.display = 'inline';
+ } else {
+ thisLevel.style.display = 'none';
+ otherLevel.style.display = 'inline';
+ linkLevel.style.display = 'none';
+ }
+ };
+
+ window.showUserInfo = function ( sourceVar, targetId ) {
+ $( '#' + targetId ).html( mw.config.get( sourceVar ) );
+ };
+}( mediaWiki, jQuery ) );
diff --git a/MLEB/CleanChanges/resources/cleanchanges.uls.css b/MLEB/CleanChanges/resources/cleanchanges.uls.css
new file mode 100644
index 00000000..3e902cc4
--- /dev/null
+++ b/MLEB/CleanChanges/resources/cleanchanges.uls.css
@@ -0,0 +1,24 @@
+.ext-cc-language-selector__trigger {
+ color: #0645AD;
+ cursor: pointer;
+}
+
+.ext-cc-language-selector__trigger:after {
+ margin-left: 4px;
+ border-left: 4px solid transparent;
+ border-right: 4px solid transparent;
+ border-top: 4px solid #0645AD;
+ content: "";
+ display: inline-block;
+ vertical-align: middle;
+}
+
+.ext-cc-language-selector__clear {
+ padding-left: 10px;
+ font-weight: bold;
+ cursor: pointer;
+}
+
+.ext-cc-language-selector {
+ padding-right: 50px;
+}
diff --git a/MLEB/CleanChanges/resources/cleanchanges.uls.js b/MLEB/CleanChanges/resources/cleanchanges.uls.js
new file mode 100644
index 00000000..45673416
--- /dev/null
+++ b/MLEB/CleanChanges/resources/cleanchanges.uls.js
@@ -0,0 +1,59 @@
+/**
+ *
+ * @author Niklas Laxström
+ * @license GPL-2.0+
+ */
+( function ( $, mw ) {
+ 'use strict';
+
+ function useULS( $trigger ) {
+ var update, $selected, $clear, $button = $( '<span>' );
+
+ $button
+ .addClass( 'ext-cc-language-selector__trigger' );
+
+ $clear = $( '<span>' )
+ .text( 'X' )
+ .addClass( 'ext-cc-language-selector__clear' );
+
+
+ $trigger.hide().after(
+ $( '<span>' )
+ .addClass( 'ext-cc-language-selector' )
+ .append( $button, $clear )
+ );
+
+ update = function ( value ) {
+ $selected = $trigger.children( ':selected' );
+ if ( value === '' ) {
+ $button.text( $selected.text() );
+ $clear.hide();
+ } else {
+ $button.text( $.uls.data.getAutonym( value ) );
+ $clear.show();
+ }
+ };
+
+ update( $trigger.val().replace( '/', '' ) );
+
+ $clear.on( 'click', function () {
+ $trigger.val( '' );
+ update( '' );
+ $( this ).hide();
+ } );
+
+ $button.uls( {
+ onSelect: function ( language ) {
+ $trigger.val( '/' + language );
+ update( language );
+ },
+ quickList: mw.uls.getFrequentLanguageList
+ } );
+ }
+
+ $( document ).ready( function () {
+ mw.loader.using( 'ext.uls.mediawiki', function () {
+ useULS( $( '#sp-rc-language' ) );
+ } );
+ } );
+}( jQuery, mediaWiki ) );
diff --git a/MLEB/LocalisationUpdate/Autoload.php b/MLEB/LocalisationUpdate/Autoload.php
new file mode 100644
index 00000000..0b3f14dc
--- /dev/null
+++ b/MLEB/LocalisationUpdate/Autoload.php
@@ -0,0 +1,31 @@
+<?php
+/**
+ * @file
+ * @author Niklas Laxström
+ * @license GPL-2.0+
+ */
+
+global $wgAutoloadClasses;
+$dir = __DIR__;
+
+$wgAutoloadClasses += array(
+ 'LocalisationUpdate' => "$dir/LocalisationUpdate.class.php",
+ 'LU_Updater' => "$dir/Updater.php",
+ 'QuickArrayReader' => "$dir/QuickArrayReader.php",
+
+ # fetcher
+ 'LU_Fetcher' => "$dir/fetcher/Fetcher.php",
+ 'LU_FetcherFactory' => "$dir/fetcher/FetcherFactory.php",
+ 'LU_FileSystemFetcher' => "$dir/fetcher/FileSystemFetcher.php",
+ 'LU_GitHubFetcher' => "$dir/fetcher/GitHubFetcher.php",
+ 'LU_HttpFetcher' => "$dir/fetcher/HttpFetcher.php",
+
+ # finder
+ 'LU_Finder' => "$dir/finder/Finder.php",
+
+ # reader
+ 'LU_JSONReader' => "$dir/reader/JSONReader.php",
+ 'LU_PHPReader' => "$dir/reader/PHPReader.php",
+ 'LU_Reader' => "$dir/reader/Reader.php",
+ 'LU_ReaderFactory' => "$dir/reader/ReaderFactory.php",
+);
diff --git a/MLEB/LocalisationUpdate/LocalisationUpdate.class.php b/MLEB/LocalisationUpdate/LocalisationUpdate.class.php
new file mode 100644
index 00000000..349c35f0
--- /dev/null
+++ b/MLEB/LocalisationUpdate/LocalisationUpdate.class.php
@@ -0,0 +1,81 @@
+<?php
+
+/**
+ * Class for localization update hooks and static methods.
+ */
+class LocalisationUpdate {
+ /** @todo Remove this once pre-1.24 versions of MW are no longer supported. */
+ private static $onRecacheFallbackCalled = false;
+
+ /**
+ * Hook: LocalisationCacheRecacheFallback
+ */
+ public static function onRecacheFallback( LocalisationCache $lc, $code, array &$cache ) {
+ self::$onRecacheFallbackCalled = true;
+
+ $dir = LocalisationUpdate::getDirectory();
+ if ( !$dir ) {
+ return true;
+ }
+
+ $fileName = "$dir/" . self::getFilename( $code );
+ if ( is_readable( $fileName ) ) {
+ $data = FormatJson::decode( file_get_contents( $fileName ), true );
+ $cache['messages'] = array_merge( $cache['messages'], $data );
+ }
+
+ return true;
+ }
+
+ /**
+ * Hook: LocalisationCacheRecache
+ */
+ public static function onRecache( LocalisationCache $lc, $code, array &$cache ) {
+ $dir = LocalisationUpdate::getDirectory();
+ if ( !$dir ) {
+ return true;
+ }
+
+ $codeSequence = array_merge( array( $code ), $cache['fallbackSequence'] );
+ foreach ( $codeSequence as $csCode ) {
+ $fileName = "$dir/" . self::getFilename( $csCode );
+ if ( !self::$onRecacheFallbackCalled && is_readable( $fileName ) ) {
+ // We're on an old version of MW that doesn't have the hook
+ // needed to do things correctly. L10n will be broken here in
+ // certain reasonably-common situations (see bug 68781), but
+ // there's nothing we can do about it.
+ $data = FormatJson::decode( file_get_contents( $fileName ), true );
+ $cache['messages'] = array_merge( $cache['messages'], $data );
+ }
+ $cache['deps'][] = new FileDependency( $fileName );
+ }
+
+ return true;
+ }
+
+ /**
+ * Returns a directory where updated translations are stored.
+ *
+ * @return string|false False if not configured.
+ * @since 1.1
+ */
+ public static function getDirectory() {
+ global $wgLocalisationUpdateDirectory, $wgCacheDirectory;
+
+ // ?: can be used once we drop support for MW 1.19
+ return $wgLocalisationUpdateDirectory ?
+ $wgLocalisationUpdateDirectory :
+ $wgCacheDirectory;
+ }
+
+ /**
+ * Returns a filename where updated translations are stored.
+ *
+ * @param string $language Language tag
+ * @return string
+ * @since 1.1
+ */
+ public static function getFilename( $language ) {
+ return "l10nupdate-$language.json";
+ }
+}
diff --git a/MLEB/LocalisationUpdate/LocalisationUpdate.i18n.php b/MLEB/LocalisationUpdate/LocalisationUpdate.i18n.php
new file mode 100644
index 00000000..f715d123
--- /dev/null
+++ b/MLEB/LocalisationUpdate/LocalisationUpdate.i18n.php
@@ -0,0 +1,35 @@
+<?php
+/**
+ * This is a backwards-compatibility shim, generated by:
+ * https://git.wikimedia.org/blob/mediawiki%2Fcore.git/HEAD/maintenance%2FgenerateJsonI18n.php
+ *
+ * Beginning with MediaWiki 1.23, translation strings are stored in json files,
+ * and the EXTENSION.i18n.php file only exists to provide compatibility with
+ * older releases of MediaWiki. For more information about this migration, see:
+ * https://www.mediawiki.org/wiki/Requests_for_comment/Localisation_format
+ *
+ * This shim maintains compatibility back to MediaWiki 1.17.
+ */
+$messages = array();
+if ( !function_exists( 'wfJsonI18nShim2520f8a069e9942f' ) ) {
+ function wfJsonI18nShim2520f8a069e9942f( $cache, $code, &$cachedData ) {
+ $codeSequence = array_merge( array( $code ), $cachedData['fallbackSequence'] );
+ foreach ( $codeSequence as $csCode ) {
+ $fileName = dirname( __FILE__ ) . "/i18n/$csCode.json";
+ if ( is_readable( $fileName ) ) {
+ $data = FormatJson::decode( file_get_contents( $fileName ), true );
+ foreach ( array_keys( $data ) as $key ) {
+ if ( $key === '' || $key[0] === '@' ) {
+ unset( $data[$key] );
+ }
+ }
+ $cachedData['messages'] = array_merge( $data, $cachedData['messages'] );
+ }
+
+ $cachedData['deps'][] = new FileDependency( $fileName );
+ }
+ return true;
+ }
+
+ $GLOBALS['wgHooks']['LocalisationCacheRecache'][] = 'wfJsonI18nShim2520f8a069e9942f';
+}
diff --git a/MLEB/LocalisationUpdate/LocalisationUpdate.php b/MLEB/LocalisationUpdate/LocalisationUpdate.php
new file mode 100644
index 00000000..787e4b71
--- /dev/null
+++ b/MLEB/LocalisationUpdate/LocalisationUpdate.php
@@ -0,0 +1,55 @@
+<?php
+
+/**
+ * Directory to store serialized cache files in. Defaults to $wgCacheDirectory.
+ * It's OK to share this directory among wikis as long as the wiki you run
+ * update.php on has all extensions the other wikis using the same directory
+ * have.
+ * NOTE: If this variable and $wgCacheDirectory are both false, this extension
+ * WILL NOT WORK.
+ */
+$wgLocalisationUpdateDirectory = false;
+
+/**
+ * Default repository source to use.
+ * @since 2014-03
+ */
+$wgLocalisationUpdateRepository = 'github';
+
+/**
+ * Available repository sources.
+ * @since 2014-03
+ */
+$wgLocalisationUpdateRepositories = array();
+$wgLocalisationUpdateRepositories['github'] = array(
+ 'mediawiki' =>
+ 'https://raw.github.com/wikimedia/mediawiki-core/master/%PATH%',
+ 'extension' =>
+ 'https://raw.github.com/wikimedia/mediawiki-extensions-%NAME%/master/%PATH%',
+);
+
+// Example for local filesystem configuration
+#$wgLocalisationUpdateRepositories['local'] = array(
+# 'mediawiki' =>
+# 'file:///resources/projects/mediawiki/master/%PATH%',
+# 'extension' =>
+# 'file:///resources/projects/mediawiki-extensions/extensions/%NAME%/%PATH%',
+#);
+
+$wgExtensionCredits['other'][] = array(
+ 'path' => __FILE__,
+ 'name' => 'LocalisationUpdate',
+ 'author' => array( 'Tom Maaswinkel', 'Niklas Laxström', 'Roan Kattouw' ),
+ 'version' => '[https://www.mediawiki.org/wiki/MLEB MLEB 2014.11]',
+ 'url' => 'https://www.mediawiki.org/wiki/Extension:LocalisationUpdate',
+ 'descriptionmsg' => 'localisationupdate-desc',
+);
+
+$wgHooks['LocalisationCacheRecache'][] = 'LocalisationUpdate::onRecache';
+$wgHooks['LocalisationCacheRecacheFallback'][] = 'LocalisationUpdate::onRecacheFallback';
+
+$dir = __DIR__;
+$wgMessagesDirs['LocalisationUpdate'] = __DIR__ . '/i18n';
+$wgExtensionMessagesFiles['LocalisationUpdate'] = "$dir/LocalisationUpdate.i18n.php";
+
+require "$dir/Autoload.php";
diff --git a/MLEB/LocalisationUpdate/QuickArrayReader.php b/MLEB/LocalisationUpdate/QuickArrayReader.php
new file mode 100644
index 00000000..691f4a6b
--- /dev/null
+++ b/MLEB/LocalisationUpdate/QuickArrayReader.php
@@ -0,0 +1,204 @@
+<?php
+
+/**
+ * Quickie parser class that can happily read the subset of PHP we need
+ * for our localization arrays safely.
+ *
+ * Still an order of magnitude slower than eval().
+ */
+class QuickArrayReader {
+ private $vars = array();
+
+ /**
+ * @param $string string
+ */
+ function __construct( $string ) {
+ $scalarTypes = array(
+ T_LNUMBER => true,
+ T_DNUMBER => true,
+ T_STRING => true,
+ T_CONSTANT_ENCAPSED_STRING => true,
+ );
+ $skipTypes = array(
+ T_WHITESPACE => true,
+ T_COMMENT => true,
+ T_DOC_COMMENT => true,
+ );
+ $tokens = token_get_all( $string );
+ $count = count( $tokens );
+ for ( $i = 0; $i < $count; ) {
+ while ( isset( $skipTypes[$tokens[$i][0]] ) ) {
+ $i++;
+ }
+ switch ( $tokens[$i][0] ) {
+ case T_OPEN_TAG:
+ $i++;
+ continue;
+ case T_VARIABLE:
+ // '$messages' -> 'messages'
+ $varname = trim( substr( $tokens[$i][1], 1 ) );
+ $varindex = null;
+
+ while ( isset( $skipTypes[$tokens[++$i][0]] ) );
+
+ if ( $tokens[$i] === '[' ) {
+ while ( isset( $skipTypes[$tokens[++$i][0]] ) );
+
+ if ( isset( $scalarTypes[$tokens[$i][0]] ) ) {
+ $varindex = $this->parseScalar( $tokens[$i] );
+ } else {
+ throw $this->except( $tokens[$i], 'scalar index' );
+ }
+ while ( isset( $skipTypes[$tokens[++$i][0]] ) );
+
+ if ( $tokens[$i] !== ']' ) {
+ throw $this->except( $tokens[$i], ']' );
+ }
+ while ( isset( $skipTypes[$tokens[++$i][0]] ) );
+ }
+
+ if ( $tokens[$i] !== '=' ) {
+ throw $this->except( $tokens[$i], '=' );
+ }
+ while ( isset( $skipTypes[$tokens[++$i][0]] ) );
+
+ if ( isset( $scalarTypes[$tokens[$i][0]] ) ) {
+ $buildval = $this->parseScalar( $tokens[$i] );
+ } elseif ( $tokens[$i][0] === T_ARRAY ) {
+ while ( isset( $skipTypes[$tokens[++$i][0]] ) );
+ if ( $tokens[$i] !== '(' ) {
+ throw $this->except( $tokens[$i], '(' );
+ }
+ $buildval = array();
+ do {
+ while ( isset( $skipTypes[$tokens[++$i][0]] ) );
+
+ if ( $tokens[$i] === ')' ) {
+ break;
+ }
+ if ( isset( $scalarTypes[$tokens[$i][0]] ) ) {
+ $key = $this->parseScalar( $tokens[$i] );
+ }
+ while ( isset( $skipTypes[$tokens[++$i][0]] ) );
+
+ if ( $tokens[$i][0] !== T_DOUBLE_ARROW ) {
+ throw $this->except( $tokens[$i], '=>' );
+ }
+ while ( isset( $skipTypes[$tokens[++$i][0]] ) );
+
+ if ( isset( $scalarTypes[$tokens[$i][0]] ) ) {
+ $val = $this->parseScalar( $tokens[$i] );
+ }
+ wfSuppressWarnings();
+ $buildval[$key] = $val;
+ wfRestoreWarnings();
+ while ( isset( $skipTypes[$tokens[++$i][0]] ) );
+
+ if ( $tokens[$i] === ',' ) {
+ continue;
+ } elseif ( $tokens[$i] === ')' ) {
+ break;
+ } else {
+ throw $this->except( $tokens[$i], ', or )' );
+ }
+ } while ( true );
+ } else {
+ throw $this->except( $tokens[$i], 'scalar or array' );
+ }
+ if ( is_null( $varindex ) ) {
+ $this->vars[$varname] = $buildval;
+ } else {
+ wfSuppressWarnings();
+ $this->vars[$varname][$varindex] = $buildval;
+ wfRestoreWarnings();
+ }
+ while ( isset( $skipTypes[$tokens[++$i][0]] ) );
+ if ( $tokens[$i] !== ';' ) {
+ throw $this->except( $tokens[$i], ';' );
+ }
+ $i++;
+ break;
+ default:
+ throw $this->except( $tokens[$i], 'open tag, whitespace, or variable.' );
+ }
+ }
+ }
+
+ /**
+ * @param $got string
+ * @param $expected string
+ * @return Exception
+ */
+ private function except( $got, $expected ) {
+ if ( is_array( $got ) ) {
+ $got = token_name( $got[0] ) . " ('" . $got[1] . "')";
+ } else {
+ $got = "'" . $got . "'";
+ }
+
+ return new Exception( "Expected $expected, got $got" );
+ }
+
+ /**
+ * Parse a scalar value in PHP
+ *
+ * @param $token string
+ *
+ * @return mixed Parsed value
+ */
+ function parseScalar( $token ) {
+ if ( is_array( $token ) ) {
+ $str = $token[1];
+ } else {
+ $str = $token;
+ }
+ if ( $str !== '' && $str[0] == '\'' ) {
+ // Single-quoted string
+ // @fixme trim() call is due to mystery bug where whitespace gets
+ // appended to the token; without it we ended up reading in the
+ // extra quote on the end!
+ return strtr( substr( trim( $str ), 1, -1 ),
+ array( '\\\'' => '\'', '\\\\' => '\\' ) );
+ }
+
+ wfSuppressWarnings();
+ if ( $str !== '' && $str[0] == '"' ) {
+ // Double-quoted string
+ // @fixme trim() call is due to mystery bug where whitespace gets
+ // appended to the token; without it we ended up reading in the
+ // extra quote on the end!
+ wfRestoreWarnings();
+ return stripcslashes( substr( trim( $str ), 1, -1 ) );
+ }
+ wfRestoreWarnings();
+
+ if ( substr( $str, 0, 4 ) === 'true' ) {
+ return true;
+ }
+
+ if ( substr( $str, 0, 5 ) === 'false' ) {
+ return false;
+ }
+
+ if ( substr( $str, 0, 4 ) === 'null' ) {
+ return null;
+ }
+
+ // Must be some kind of numeric value, so let PHP's weak typing
+ // be useful for a change
+ return $str;
+ }
+
+ /**
+ * @param $varname string
+ * @return null|string
+ */
+ function getVar( $varname ) {
+ if ( isset( $this->vars[$varname] ) ) {
+ return $this->vars[$varname];
+ } else {
+ return null;
+ }
+ }
+}
+
diff --git a/MLEB/LocalisationUpdate/README b/MLEB/LocalisationUpdate/README
new file mode 100644
index 00000000..3df784b5
--- /dev/null
+++ b/MLEB/LocalisationUpdate/README
@@ -0,0 +1,34 @@
+== Localisation Update ==
+Localisation Update extension can update the MediaWiki messages at any time,
+without needing to upgrade the MediaWiki software.
+
+For more information see:
+ https://www.mediawiki.org/wiki/Extension:LocalisationUpdate
+
+== Installation ==
+1. Add the following to LocalSettings.php of your MediaWiki setup:
+
+ require_once "$IP/extensions/LocalisationUpdate/LocalisationUpdate.php";
+ $wgLocalisationUpdateDirectory = "$IP/cache";
+
+2. Create a cache folder in the installation directory, and be sure the server
+has permissions to write on it.
+
+If localization updates don't seem to come through, you may need to run,
+
+ php maintenance/rebuildLocalisationCache.php --force.
+
+3. Whenever you want to run an update, run,
+
+ php extensions/LocalisationUpdate/update.php
+
+For detailed help, see:
+
+ php extensions/LocalisationUpdate/update.php --help
+
+4. If you are on Unix like system, you should add LocalisationUpdate to
+crontab:
+
+ crontab -e
+ # Add the following line
+ @daily php /path/to/your/wiki/extensions/LocalisationUpdate/update.php --quiet
diff --git a/MLEB/LocalisationUpdate/RELEASE-NOTES b/MLEB/LocalisationUpdate/RELEASE-NOTES
new file mode 100644
index 00000000..b19dec71
--- /dev/null
+++ b/MLEB/LocalisationUpdate/RELEASE-NOTES
@@ -0,0 +1,5 @@
+== LocalisationUpdate 2014.11 ==
+Released at 2014-11-29.
+
+=== Noteworthy changes ===
+* Only localisation updates.
diff --git a/MLEB/LocalisationUpdate/Updater.php b/MLEB/LocalisationUpdate/Updater.php
new file mode 100644
index 00000000..bae492dd
--- /dev/null
+++ b/MLEB/LocalisationUpdate/Updater.php
@@ -0,0 +1,194 @@
+<?php
+/**
+ * @file
+ * @author Niklas Laxström
+ * @license GPL-2.0+
+ */
+
+/**
+ * Executes the localisation update.
+ */
+class LU_Updater {
+ /**
+ * Whether the path is a pattern and thus we need to use appropriate
+ * code for fetching directories.
+ *
+ * @param string $path Url
+ * @return bool
+ */
+ public function isDirectory( $path ) {
+ $filename = basename( $path );
+ return strpos( $filename, '*' ) !== false;
+ }
+
+ /**
+ * Expands repository relative path to full url with the given repository
+ * patterns. Extra variables in $info are used as variables and will be
+ * replaced the pattern.
+ *
+ * @param array $info Component information.
+ * @param array $repos Repository information.
+ * @return string
+ */
+ public function expandRemotePath( $info, $repos ) {
+ $pattern = $repos[$info['repo']];
+ unset( $info['repo'], $info['orig'] );
+
+ // This assumes all other keys are used as variables
+ // in the pattern. For example name -> %NAME%.
+ $keys = array();
+ foreach ( array_keys( $info ) as $key ) {
+ $keys[] = '%' . strtoupper( $key ) . '%';
+ }
+
+ $values = array_values( $info );
+ return str_replace( $keys, $values, $pattern );
+ }
+
+ /**
+ * Parses translations from given list of files.
+ *
+ * @param LU_ReaderFactory $readerFactory Factory to construct parsers.
+ * @param array $files List of files with their contents as array values.
+ * @return array List of translations indexed by language code.
+ */
+ public function readMessages( LU_ReaderFactory $readerFactory, array $files ) {
+ $messages = array();
+
+ foreach ( $files as $filename => $contents ) {
+ $reader = $readerFactory->getReader( $filename );
+ try {
+ $parsed = $reader->parse( $contents );
+ } catch ( Exception $e ) {
+ trigger_error( __METHOD__ . ": Unable to parse messages from $filename", E_USER_WARNING );
+ continue;
+ }
+
+ foreach ( $parsed as $code => $langMessages ) {
+ if ( !isset( $messages[$code] ) ) {
+ $messages[$code] = array();
+ }
+ $messages[$code] = array_merge( $messages[$code], $langMessages );
+ }
+
+ $c = array_sum( array_map( 'count', $parsed ) );
+ // Useful for debugging, maybe create interface to pass this to the script?
+ #echo "$filename with " . get_class( $reader ) . " and $c\n";
+ }
+
+ return $messages;
+ }
+
+ /**
+ * Find new and changed translations in $remote and returns them.
+ *
+ * @param array $origin
+ * @param array $remote
+ * @param array [$blacklist] Array of message keys to ignore, keys as as array keys.
+ * @return array
+ */
+ public function findChangedTranslations( $origin, $remote, $blacklist = array() ) {
+ $changed = array();
+ foreach ( $remote as $key => $value ) {
+ if ( isset( $blacklist[$key] ) ) {
+ continue;
+ }
+
+ if ( !isset( $origin[$key] ) || $value !== $origin[$key] ) {
+ $changed[$key] = $value;
+ }
+ }
+ return $changed;
+ }
+
+ /**
+ * Fetches files from given Url pattern.
+ *
+ * @param LU_FetcherFactory $factory Factory to construct fetchers.
+ * @param string $path Url to the file or pattern of files.
+ * @return array List of Urls with file contents as path.
+ */
+ public function fetchFiles( LU_FetcherFactory $factory, $path ) {
+ $fetcher = $factory->getFetcher( $path );
+
+ if ( $this->isDirectory( $path ) ) {
+ $files = $fetcher->fetchDirectory( $path );
+ } else {
+ $files = array( $path => $fetcher->fetchFile( $path ) );
+ }
+
+ // Remove files which were not found
+ return array_filter( $files );
+ }
+
+ public function execute(
+ LU_Finder $finder,
+ LU_ReaderFactory $readerFactory,
+ LU_FetcherFactory $fetcherFactory,
+ array $repos
+ ) {
+
+ $components = $finder->getComponents();
+
+ $updatedMessages = array();
+
+ foreach ( $components as $key => $info ) {
+ $originFiles = $this->fetchFiles( $fetcherFactory, $info['orig'] );
+ $remoteFiles = $this->fetchFiles( $fetcherFactory, $this->expandRemotePath( $info, $repos ) );
+
+ if ( $remoteFiles === array() ) {
+ // Small optimization: if nothing to compare with, skip
+ continue;
+ }
+
+ $originMessages = $this->readMessages( $readerFactory, $originFiles );
+ $remoteMessages = $this->readMessages( $readerFactory, $remoteFiles );
+
+ if ( !isset( $remoteMessages['en'] ) ) {
+ // Could not find remote messages
+ continue;
+ }
+
+ // If remote translation in English is not present or differs, we do not want
+ // translations for other languages for those messages, as they are either not
+ // used in this version of code or can be incompatible.
+ $forbiddenKeys = $this->findChangedTranslations(
+ $originMessages['en'],
+ $remoteMessages['en']
+ );
+
+ // We never accept updates for English strings
+ unset( $originMessages['en'], $remoteMessages['en'] );
+
+ // message: string in all languages; translation: string in one language.
+ foreach ( $remoteMessages as $language => $remoteTranslations ) {
+ // Check for completely new languages
+ $originTranslations = array();
+ if ( isset( $originMessages[$language] ) ) {
+ $originTranslations = $originMessages[$language];
+ }
+
+ $updatedTranslations = $this->findChangedTranslations(
+ $originTranslations,
+ $remoteTranslations,
+ $forbiddenKeys
+ );
+
+ // Avoid empty arrays
+ if ( $updatedTranslations === array() ) {
+ continue;
+ }
+
+ if ( !isset( $updatedMessages[$language] ) ) {
+ $updatedMessages[$language] = array();
+ }
+
+ // In case of conflicts, which should not exist, this prefers the
+ // first translation seen.
+ $updatedMessages[$language] += $updatedTranslations;
+ }
+ }
+
+ return $updatedMessages;
+ }
+}
diff --git a/MLEB/LocalisationUpdate/fetcher/Fetcher.php b/MLEB/LocalisationUpdate/fetcher/Fetcher.php
new file mode 100644
index 00000000..9c06c105
--- /dev/null
+++ b/MLEB/LocalisationUpdate/fetcher/Fetcher.php
@@ -0,0 +1,26 @@
+<?php
+/**
+ * @file
+ * @author Niklas Laxström
+ * @license GPL-2.0+
+ */
+
+/**
+ * Interface for classes which fetch files over different protocols and ways.
+ */
+interface LU_Fetcher {
+ /**
+ * Fetches a single resource.
+ *
+ * @return bool|string False on failure.
+ */
+ public function fetchFile( $url );
+
+ /**
+ * Fetch a list of resources. This has the benefit of being able to pick up
+ * new languages as they appear if languages are stored in separate files.
+ *
+ * @return array
+ */
+ public function fetchDirectory( $pattern );
+}
diff --git a/MLEB/LocalisationUpdate/fetcher/FetcherFactory.php b/MLEB/LocalisationUpdate/fetcher/FetcherFactory.php
new file mode 100644
index 00000000..4e26dc15
--- /dev/null
+++ b/MLEB/LocalisationUpdate/fetcher/FetcherFactory.php
@@ -0,0 +1,24 @@
+<?php
+/**
+ * @file
+ * @author Niklas Laxström
+ * @license GPL-2.0+
+ */
+
+/**
+ * Constructs fetchers based on the repository urls.
+ */
+class LU_FetcherFactory {
+ public function getFetcher( $path ) {
+
+ if ( strpos( $path, 'https://raw.github.com/' ) === 0 ) {
+ return new LU_GitHubFetcher();
+ } elseif ( strpos( $path, 'http://' ) === 0 ) {
+ return new LU_HttpFetcher();
+ } elseif ( strpos( $path, 'https://' ) === 0 ) {
+ return new LU_HttpFetcher();
+ } else {
+ return new LU_FileSystemFetcher();
+ }
+ }
+}
diff --git a/MLEB/LocalisationUpdate/fetcher/FileSystemFetcher.php b/MLEB/LocalisationUpdate/fetcher/FileSystemFetcher.php
new file mode 100644
index 00000000..a463d6cd
--- /dev/null
+++ b/MLEB/LocalisationUpdate/fetcher/FileSystemFetcher.php
@@ -0,0 +1,35 @@
+<?php
+/**
+ * @file
+ * @author Niklas Laxström
+ * @license GPL-2.0+
+ */
+
+/**
+ * Accesses file system directly.
+ */
+class LU_FileSystemFetcher implements LU_Fetcher {
+ public function fetchFile( $url ) {
+ // Remove the protocol prefix
+ $url = preg_replace( '~^file://~', '', $url );
+
+ if ( !is_readable( $url ) ) {
+ return false;
+ }
+
+ return file_get_contents( $url );
+ }
+
+ public function fetchDirectory( $pattern ) {
+ // Remove the protocol prefix
+ $pattern = preg_replace( '~^file://~', '', $pattern );
+
+ $data = array();
+ foreach ( glob( $pattern ) as $file ) {
+ if ( is_readable( $file ) ) {
+ $data["file://$file"] = file_get_contents( $file );
+ }
+ }
+ return $data;
+ }
+}
diff --git a/MLEB/LocalisationUpdate/fetcher/GitHubFetcher.php b/MLEB/LocalisationUpdate/fetcher/GitHubFetcher.php
new file mode 100644
index 00000000..00c9b6ca
--- /dev/null
+++ b/MLEB/LocalisationUpdate/fetcher/GitHubFetcher.php
@@ -0,0 +1,38 @@
+<?php
+/**
+ * @file
+ * @author Niklas Laxström
+ * @license GPL-2.0+
+ */
+
+/**
+ * This class uses GitHub api to obtain a list of files present in a directory
+ * to avoid fetching files that don't exist.
+ *
+ * @todo Could use file hashes to 1) avoid fetching files with same hash as
+ * the source. 2) avoid fetching files which haven't changed since last check
+ * if we store them.
+ */
+class LU_GitHubFetcher extends LU_HttpFetcher {
+
+ public function fetchDirectory( $pattern ) {
+ $p = '~^https://raw.github\.com/(?P<org>[^/]+)/(?P<repo>[^/]+)/(?P<branch>[^/]+)/(?P<path>.+)/.+$~';
+ preg_match( $p, $pattern, $m );
+
+ $json = Http::get( "https://api.github.com/repos/{$m['org']}/{$m['repo']}/contents/{$m['path']}" );
+ if ( !$json ) {
+ throw new MWException( "Unable to get directory listing for {$m['org']}/{$m['repo']}" );
+ }
+
+ $files = array();
+ $json = FormatJson::decode( $json, true );
+ foreach ( $json as $fileinfo ) {
+ $fileurl = dirname( $pattern ) . '/' . $fileinfo['name'];
+ $file = $this->fetchFile( $fileurl );
+ if ( $file ) {
+ $files[$fileurl] = $file;
+ }
+ }
+ return $files;
+ }
+}
diff --git a/MLEB/LocalisationUpdate/fetcher/HttpFetcher.php b/MLEB/LocalisationUpdate/fetcher/HttpFetcher.php
new file mode 100644
index 00000000..9dfed8db
--- /dev/null
+++ b/MLEB/LocalisationUpdate/fetcher/HttpFetcher.php
@@ -0,0 +1,40 @@
+<?php
+/**
+ * @file
+ * @author Niklas Laxström
+ * @license GPL-2.0+
+ */
+
+/**
+ * Fetches files over HTTP(s).
+ */
+class LU_HttpFetcher implements LU_Fetcher {
+ public function fetchFile( $url ) {
+ return Http::get( $url );
+ }
+
+ /**
+ * This is horribly inefficient. Subclasses have more efficient
+ * implementation of this.
+ */
+ public function fetchDirectory( $pattern ) {
+ $files = array();
+
+ $languages = Language::fetchLanguageNames( null, 'mwfile' );
+
+ foreach( array_keys( $languages ) as $code ) {
+ // Hack for core
+ if ( strpos( $pattern, 'Messages*.php' ) !== false ) {
+ $code = ucfirst( strtr( $code, '-', '_' ) );
+ }
+
+ $url = str_replace( '*', $code, $pattern );
+ $file = $this->fetchFile( $url );
+ if ( $file ) {
+ $files[$url] = $file;
+ }
+ }
+
+ return $files;
+ }
+}
diff --git a/MLEB/LocalisationUpdate/finder/Finder.php b/MLEB/LocalisationUpdate/finder/Finder.php
new file mode 100644
index 00000000..5c598730
--- /dev/null
+++ b/MLEB/LocalisationUpdate/finder/Finder.php
@@ -0,0 +1,78 @@
+<?php
+/**
+ * @file
+ * @author Niklas Laxström
+ * @license GPL-2.0+
+ */
+
+/**
+ * Interface for classes which provide list of components, which should be
+ * included for l10n updates.
+ */
+class LU_Finder {
+ /**
+ * @param array $php See $wgExtensionMessagesFiles
+ * @param array $json See $wgMessagesDirs
+ * @param string $core Absolute path to MediaWiki core
+ */
+ public function __construct( $php, $json, $core ) {
+ $this->php = $php;
+ $this->json = $json;
+ $this->core = $core;
+ }
+
+ /**
+ * @return array
+ */
+ public function getComponents() {
+ $components = array();
+
+ // For older versions of Mediawiki, pull json updates even though its still using php
+ if ( !isset( $this->json['core'] ) ) {
+ $components['core'] = array(
+ 'repo' => 'mediawiki',
+ 'orig' => "file://{$this->core}/languages/messages/Messages*.php",
+ 'path' => 'languages/messages/i18n/*.json',
+ );
+ }
+
+ foreach ( $this->json as $key => $value ) {
+ // Json should take priority if both exist
+ unset( $this->php[$key] );
+
+ foreach ( (array)$value as $subkey => $subvalue ) {
+ // This ignores magic, alias etc. non message files
+ $matches = array();
+ $ok = preg_match( '~/extensions/(?P<name>[^/]+)/(?P<path>.*)$~', $subvalue, $matches );
+ if ( !$ok ) {
+ continue;
+ }
+
+ $components["$key-$subkey"] = array(
+ 'repo' => 'extension',
+ 'name' => $matches['name'],
+ 'orig' => "file://$subvalue/*.json",
+ 'path' => "{$matches['path']}/*.json",
+ );
+ }
+ }
+
+ foreach ( $this->php as $key => $value ) {
+ // This currently skips core i18n files like resources/oojs-ui/i18n
+ $matches = array();
+ $ok = preg_match( '~/extensions/(?P<name>[^/]+)/(?P<path>.*\.i18n\.php)$~', $value, $matches );
+ if ( !$ok ) {
+ continue;
+ }
+
+ $components[$key] = array(
+ 'repo' => 'extension',
+ 'name' => $matches['name'],
+ 'orig' => "file://$value",
+ 'path' => $matches['path'],
+ );
+ }
+
+ return $components;
+ }
+}
diff --git a/MLEB/LocalisationUpdate/i18n/af.json b/MLEB/LocalisationUpdate/i18n/af.json
new file mode 100644
index 00000000..3739dc26
--- /dev/null
+++ b/MLEB/LocalisationUpdate/i18n/af.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Naudefj"
+ ]
+ },
+ "localisationupdate-desc": "Hou die gelokaliseerde boodskappe so op datum as moontlik"
+}
diff --git a/MLEB/LocalisationUpdate/i18n/ar.json b/MLEB/LocalisationUpdate/i18n/ar.json
new file mode 100644
index 00000000..101e54ee
--- /dev/null
+++ b/MLEB/LocalisationUpdate/i18n/ar.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Meno25"
+ ]
+ },
+ "localisationupdate-desc": "يبقي الرسائل المترجمة محدثة كأفضل ما يكون"
+}
diff --git a/MLEB/LocalisationUpdate/i18n/ast.json b/MLEB/LocalisationUpdate/i18n/ast.json
new file mode 100644
index 00000000..13fcd456
--- /dev/null
+++ b/MLEB/LocalisationUpdate/i18n/ast.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Xuacu"
+ ]
+ },
+ "localisationupdate-desc": "Caltién los mensaxes llocalizaos tan anovaos como se pueda"
+}
diff --git a/MLEB/LocalisationUpdate/i18n/ba.json b/MLEB/LocalisationUpdate/i18n/ba.json
new file mode 100644
index 00000000..e96ee2b4
--- /dev/null
+++ b/MLEB/LocalisationUpdate/i18n/ba.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Assele"
+ ]
+ },
+ "localisationupdate-desc": "Локалләштерелгән хәбәрҙәрҙең мөмкин тиклем яңы булыуын тәьмин итә"
+}
diff --git a/MLEB/LocalisationUpdate/i18n/bar.json b/MLEB/LocalisationUpdate/i18n/bar.json
new file mode 100644
index 00000000..0c4c56f7
--- /dev/null
+++ b/MLEB/LocalisationUpdate/i18n/bar.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Man77"
+ ]
+ },
+ "localisationupdate-desc": "Lokalisiade Texte und Nåchrichtn so aktuell håidn wia's gråd gehd"
+}
diff --git a/MLEB/LocalisationUpdate/i18n/be-tarask.json b/MLEB/LocalisationUpdate/i18n/be-tarask.json
new file mode 100644
index 00000000..01f487be
--- /dev/null
+++ b/MLEB/LocalisationUpdate/i18n/be-tarask.json
@@ -0,0 +1,9 @@
+{
+ "@metadata": {
+ "authors": [
+ "EugeneZelenko",
+ "Wizardist"
+ ]
+ },
+ "localisationupdate-desc": "Сочыць за актуальнасьцю лякалізаваных паведамленьняў, наколькі гэта магчыма"
+}
diff --git a/MLEB/LocalisationUpdate/i18n/bg.json b/MLEB/LocalisationUpdate/i18n/bg.json
new file mode 100644
index 00000000..59a6edbd
--- /dev/null
+++ b/MLEB/LocalisationUpdate/i18n/bg.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "DCLXVI"
+ ]
+ },
+ "localisationupdate-desc": "Поддържа локализираните съобщения възможно най-актуални"
+}
diff --git a/MLEB/LocalisationUpdate/i18n/bn.json b/MLEB/LocalisationUpdate/i18n/bn.json
new file mode 100644
index 00000000..6936be62
--- /dev/null
+++ b/MLEB/LocalisationUpdate/i18n/bn.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Bellayet"
+ ]
+ },
+ "localisationupdate-desc": "স্থানীয়করণকৃত বার্তাসমূহ যথাসম্ভব হালনাগাদ রাখে"
+}
diff --git a/MLEB/LocalisationUpdate/i18n/br.json b/MLEB/LocalisationUpdate/i18n/br.json
new file mode 100644
index 00000000..89db4778
--- /dev/null
+++ b/MLEB/LocalisationUpdate/i18n/br.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Fulup"
+ ]
+ },
+ "localisationupdate-desc": "Derc'hel da hizivaat ar c'hemennoù troet ken fonnus ha ma'z eus tu"
+}
diff --git a/MLEB/LocalisationUpdate/i18n/bs.json b/MLEB/LocalisationUpdate/i18n/bs.json
new file mode 100644
index 00000000..339dae1d
--- /dev/null
+++ b/MLEB/LocalisationUpdate/i18n/bs.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "CERminator"
+ ]
+ },
+ "localisationupdate-desc": "Zadržavanje lokaliziranih poruka ažurnim koliko je god moguće"
+}
diff --git a/MLEB/LocalisationUpdate/i18n/ca.json b/MLEB/LocalisationUpdate/i18n/ca.json
new file mode 100644
index 00000000..d37e93a9
--- /dev/null
+++ b/MLEB/LocalisationUpdate/i18n/ca.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Paucabot"
+ ]
+ },
+ "localisationupdate-desc": "Manté els missatges localitzats tan actualitzats com sigui possible"
+}
diff --git a/MLEB/LocalisationUpdate/i18n/ce.json b/MLEB/LocalisationUpdate/i18n/ce.json
new file mode 100644
index 00000000..579d7dbb
--- /dev/null
+++ b/MLEB/LocalisationUpdate/i18n/ce.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Умар"
+ ]
+ },
+ "localisationupdate-desc": "Таро ма хуьйла хаамашан болх бан гӀо до"
+}
diff --git a/MLEB/LocalisationUpdate/i18n/cs.json b/MLEB/LocalisationUpdate/i18n/cs.json
new file mode 100644
index 00000000..d72e9110
--- /dev/null
+++ b/MLEB/LocalisationUpdate/i18n/cs.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Mormegil"
+ ]
+ },
+ "localisationupdate-desc": "Udržuje lokalizovaná hlášení co možná nejaktuálnější"
+}
diff --git a/MLEB/LocalisationUpdate/i18n/cy.json b/MLEB/LocalisationUpdate/i18n/cy.json
new file mode 100644
index 00000000..9ab89a53
--- /dev/null
+++ b/MLEB/LocalisationUpdate/i18n/cy.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Lloffiwr"
+ ]
+ },
+ "localisationupdate-desc": "Yn diweddaru'r cyfieithiadau o negeseuon mor aml â phosib"
+}
diff --git a/MLEB/LocalisationUpdate/i18n/da.json b/MLEB/LocalisationUpdate/i18n/da.json
new file mode 100644
index 00000000..645d0842
--- /dev/null
+++ b/MLEB/LocalisationUpdate/i18n/da.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Peter Alberti"
+ ]
+ },
+ "localisationupdate-desc": "Holder de lokaliserede meddelelser så opdaterede som muligt"
+}
diff --git a/MLEB/LocalisationUpdate/i18n/de.json b/MLEB/LocalisationUpdate/i18n/de.json
new file mode 100644
index 00000000..3f1d3fbc
--- /dev/null
+++ b/MLEB/LocalisationUpdate/i18n/de.json
@@ -0,0 +1,9 @@
+{
+ "@metadata": {
+ "authors": [
+ "Kghbln",
+ "Purodha"
+ ]
+ },
+ "localisationupdate-desc": "Ermöglicht es lokalisierte Texte und Nachrichten so aktuell wie möglich zu halten"
+}
diff --git a/MLEB/LocalisationUpdate/i18n/dsb.json b/MLEB/LocalisationUpdate/i18n/dsb.json
new file mode 100644
index 00000000..11cbf5d9
--- /dev/null
+++ b/MLEB/LocalisationUpdate/i18n/dsb.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Michawiki"
+ ]
+ },
+ "localisationupdate-desc": "Źaržy lokalizěrowane powěźeńki tak aktualne ako móžno"
+}
diff --git a/MLEB/LocalisationUpdate/i18n/el.json b/MLEB/LocalisationUpdate/i18n/el.json
new file mode 100644
index 00000000..7b4db44c
--- /dev/null
+++ b/MLEB/LocalisationUpdate/i18n/el.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Omnipaedista"
+ ]
+ },
+ "localisationupdate-desc": "Διατηρεί τις μεταφράσεις μηνυμάτων όσο πιο ενημερωμένες γίνεται"
+}
diff --git a/MLEB/LocalisationUpdate/i18n/en.json b/MLEB/LocalisationUpdate/i18n/en.json
new file mode 100644
index 00000000..813a9e74
--- /dev/null
+++ b/MLEB/LocalisationUpdate/i18n/en.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Tom Maaswinkel"
+ ]
+ },
+ "localisationupdate-desc": "Keeps the localised messages as up to date as possible"
+} \ No newline at end of file
diff --git a/MLEB/LocalisationUpdate/i18n/eo.json b/MLEB/LocalisationUpdate/i18n/eo.json
new file mode 100644
index 00000000..c1251faa
--- /dev/null
+++ b/MLEB/LocalisationUpdate/i18n/eo.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Yekrats"
+ ]
+ },
+ "localisationupdate-desc": "Ĝisdatigas la asimilitajn mesaĝojn tiom eble"
+}
diff --git a/MLEB/LocalisationUpdate/i18n/es.json b/MLEB/LocalisationUpdate/i18n/es.json
new file mode 100644
index 00000000..2526e852
--- /dev/null
+++ b/MLEB/LocalisationUpdate/i18n/es.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Crazymadlover"
+ ]
+ },
+ "localisationupdate-desc": "Mantiene los mensajes localizados tan actualizados como sea posible"
+}
diff --git a/MLEB/LocalisationUpdate/i18n/et.json b/MLEB/LocalisationUpdate/i18n/et.json
new file mode 100644
index 00000000..9cf22620
--- /dev/null
+++ b/MLEB/LocalisationUpdate/i18n/et.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Pikne"
+ ]
+ },
+ "localisationupdate-desc": "Hoiab lokaliseeritud sõnumid nii ajakohased kui võimalik."
+}
diff --git a/MLEB/LocalisationUpdate/i18n/eu.json b/MLEB/LocalisationUpdate/i18n/eu.json
new file mode 100644
index 00000000..3f55906c
--- /dev/null
+++ b/MLEB/LocalisationUpdate/i18n/eu.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Kobazulo"
+ ]
+ },
+ "localisationupdate-desc": "Itzulitako mezuak ahalik eta eguneratuen mantentzen ditu"
+}
diff --git a/MLEB/LocalisationUpdate/i18n/fa.json b/MLEB/LocalisationUpdate/i18n/fa.json
new file mode 100644
index 00000000..ae1a2a27
--- /dev/null
+++ b/MLEB/LocalisationUpdate/i18n/fa.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "ZxxZxxZ"
+ ]
+ },
+ "localisationupdate-desc": "پیغام‌های محلی‌سازی‌شده را تا جای ممکن به‌روز نگه می‌دارد"
+}
diff --git a/MLEB/LocalisationUpdate/i18n/fi.json b/MLEB/LocalisationUpdate/i18n/fi.json
new file mode 100644
index 00000000..253c2de7
--- /dev/null
+++ b/MLEB/LocalisationUpdate/i18n/fi.json
@@ -0,0 +1,9 @@
+{
+ "@metadata": {
+ "authors": [
+ "Crt",
+ "Nike"
+ ]
+ },
+ "localisationupdate-desc": "Pitää ohjelmiston käännöksen ajantasaisena."
+}
diff --git a/MLEB/LocalisationUpdate/i18n/fr.json b/MLEB/LocalisationUpdate/i18n/fr.json
new file mode 100644
index 00000000..b62e2b6b
--- /dev/null
+++ b/MLEB/LocalisationUpdate/i18n/fr.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Crochet.david"
+ ]
+ },
+ "localisationupdate-desc": "Maintenir la traduction des messages à jour autant que possible"
+}
diff --git a/MLEB/LocalisationUpdate/i18n/gl.json b/MLEB/LocalisationUpdate/i18n/gl.json
new file mode 100644
index 00000000..f80215b3
--- /dev/null
+++ b/MLEB/LocalisationUpdate/i18n/gl.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Toliño"
+ ]
+ },
+ "localisationupdate-desc": "Mantén as mensaxes localizadas tan actualizadas como é posible"
+}
diff --git a/MLEB/LocalisationUpdate/i18n/gsw.json b/MLEB/LocalisationUpdate/i18n/gsw.json
new file mode 100644
index 00000000..9ce091c0
--- /dev/null
+++ b/MLEB/LocalisationUpdate/i18n/gsw.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Als-Holder"
+ ]
+ },
+ "localisationupdate-desc": "Halt d Syschtemnochrichte so aktuälle wie megli"
+}
diff --git a/MLEB/LocalisationUpdate/i18n/he.json b/MLEB/LocalisationUpdate/i18n/he.json
new file mode 100644
index 00000000..9a1b8c64
--- /dev/null
+++ b/MLEB/LocalisationUpdate/i18n/he.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "YaronSh"
+ ]
+ },
+ "localisationupdate-desc": "שמירת ההודעות המתורגמות מעודכנות ככל הניתן"
+}
diff --git a/MLEB/LocalisationUpdate/i18n/hil.json b/MLEB/LocalisationUpdate/i18n/hil.json
new file mode 100644
index 00000000..cff1ac40
--- /dev/null
+++ b/MLEB/LocalisationUpdate/i18n/hil.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Tagimata"
+ ]
+ },
+ "localisationupdate-desc": "Gatugo sang mga mensahe nga lokal para mapahibalo sang madali"
+}
diff --git a/MLEB/LocalisationUpdate/i18n/hr.json b/MLEB/LocalisationUpdate/i18n/hr.json
new file mode 100644
index 00000000..8d196c34
--- /dev/null
+++ b/MLEB/LocalisationUpdate/i18n/hr.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "SpeedyGonsales"
+ ]
+ },
+ "localisationupdate-desc": "Dogradnja za osvježavanje lokalizacije poruka MediaWikija"
+}
diff --git a/MLEB/LocalisationUpdate/i18n/hsb.json b/MLEB/LocalisationUpdate/i18n/hsb.json
new file mode 100644
index 00000000..04adee04
--- /dev/null
+++ b/MLEB/LocalisationUpdate/i18n/hsb.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Michawiki"
+ ]
+ },
+ "localisationupdate-desc": "Dźerži lokalizowane zdźělenki tak aktualne kaž móžno"
+}
diff --git a/MLEB/LocalisationUpdate/i18n/hu.json b/MLEB/LocalisationUpdate/i18n/hu.json
new file mode 100644
index 00000000..f8bd039b
--- /dev/null
+++ b/MLEB/LocalisationUpdate/i18n/hu.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Glanthor Reviol"
+ ]
+ },
+ "localisationupdate-desc": "Frissíti a lefordított üzeneteket"
+}
diff --git a/MLEB/LocalisationUpdate/i18n/ia.json b/MLEB/LocalisationUpdate/i18n/ia.json
new file mode 100644
index 00000000..7ab58ab9
--- /dev/null
+++ b/MLEB/LocalisationUpdate/i18n/ia.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "McDutchie"
+ ]
+ },
+ "localisationupdate-desc": "Mantene le messages localisate tanto actual como possibile"
+}
diff --git a/MLEB/LocalisationUpdate/i18n/id.json b/MLEB/LocalisationUpdate/i18n/id.json
new file mode 100644
index 00000000..6f46173a
--- /dev/null
+++ b/MLEB/LocalisationUpdate/i18n/id.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Bennylin"
+ ]
+ },
+ "localisationupdate-desc": "Mengusahakan agar pesan-pesan yang telah diterjemahkan tetap semutakhir mungkin"
+}
diff --git a/MLEB/LocalisationUpdate/i18n/ilo.json b/MLEB/LocalisationUpdate/i18n/ilo.json
new file mode 100644
index 00000000..56428785
--- /dev/null
+++ b/MLEB/LocalisationUpdate/i18n/ilo.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Lam-ang"
+ ]
+ },
+ "localisationupdate-desc": "Taginayonenna a mapabaro dagiti naipatarus a mensahe"
+}
diff --git a/MLEB/LocalisationUpdate/i18n/it.json b/MLEB/LocalisationUpdate/i18n/it.json
new file mode 100644
index 00000000..b1ee5aa3
--- /dev/null
+++ b/MLEB/LocalisationUpdate/i18n/it.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Darth Kule"
+ ]
+ },
+ "localisationupdate-desc": "Mantiene i messaggi localizzati quanto più aggiornati è possibile"
+}
diff --git a/MLEB/LocalisationUpdate/i18n/ja.json b/MLEB/LocalisationUpdate/i18n/ja.json
new file mode 100644
index 00000000..8eba705e
--- /dev/null
+++ b/MLEB/LocalisationUpdate/i18n/ja.json
@@ -0,0 +1,9 @@
+{
+ "@metadata": {
+ "authors": [
+ "Fryed-peach",
+ "Shirayuki"
+ ]
+ },
+ "localisationupdate-desc": "メッセージの翻訳をできるだけ最新に保つ"
+}
diff --git a/MLEB/LocalisationUpdate/i18n/km.json b/MLEB/LocalisationUpdate/i18n/km.json
new file mode 100644
index 00000000..c3f78d86
--- /dev/null
+++ b/MLEB/LocalisationUpdate/i18n/km.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "វ័ណថារិទ្ធ"
+ ]
+ },
+ "localisationupdate-desc": "រក្សា​សារ​ដែលបាន​ប្រែសម្រួល​ទាំងឡាយ អោយនៅ​ទាន់សម័យ​តាមដែលអាចធ្វើទៅបាន​"
+}
diff --git a/MLEB/LocalisationUpdate/i18n/ko.json b/MLEB/LocalisationUpdate/i18n/ko.json
new file mode 100644
index 00000000..0f906a59
--- /dev/null
+++ b/MLEB/LocalisationUpdate/i18n/ko.json
@@ -0,0 +1,9 @@
+{
+ "@metadata": {
+ "authors": [
+ "Kwj2772",
+ "아라"
+ ]
+ },
+ "localisationupdate-desc": "번역된 메시지를 가능한 한 최신으로 유지합니다"
+}
diff --git a/MLEB/LocalisationUpdate/i18n/ksh.json b/MLEB/LocalisationUpdate/i18n/ksh.json
new file mode 100644
index 00000000..ecb69cd7
--- /dev/null
+++ b/MLEB/LocalisationUpdate/i18n/ksh.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Purodha"
+ ]
+ },
+ "localisationupdate-desc": "Texte un Nohreeschte vum Wiki esu joot wi müjjelich om neueste Shtand halde"
+}
diff --git a/MLEB/LocalisationUpdate/i18n/lb.json b/MLEB/LocalisationUpdate/i18n/lb.json
new file mode 100644
index 00000000..f2eed733
--- /dev/null
+++ b/MLEB/LocalisationUpdate/i18n/lb.json
@@ -0,0 +1,9 @@
+{
+ "@metadata": {
+ "authors": [
+ "Robby",
+ "Soued031"
+ ]
+ },
+ "localisationupdate-desc": "hält déi lokaliséiert Messagen sou aktuell wéi méiglech."
+}
diff --git a/MLEB/LocalisationUpdate/i18n/mk.json b/MLEB/LocalisationUpdate/i18n/mk.json
new file mode 100644
index 00000000..10eb0966
--- /dev/null
+++ b/MLEB/LocalisationUpdate/i18n/mk.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Bjankuloski06"
+ ]
+ },
+ "localisationupdate-desc": "Ги одржува локализираните пораки колку што е можно пообновени и повеќе во тек со настаните"
+}
diff --git a/MLEB/LocalisationUpdate/i18n/ml.json b/MLEB/LocalisationUpdate/i18n/ml.json
new file mode 100644
index 00000000..5e7dfd76
--- /dev/null
+++ b/MLEB/LocalisationUpdate/i18n/ml.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Praveenp"
+ ]
+ },
+ "localisationupdate-desc": "പ്രാദേശികഭാഷയിലാക്കിയ സന്ദേശങ്ങൾ കഴിയുന്നത്ര വേഗം ചേർക്കാൻ ഉപയോഗിക്കുന്നു"
+}
diff --git a/MLEB/LocalisationUpdate/i18n/ms.json b/MLEB/LocalisationUpdate/i18n/ms.json
new file mode 100644
index 00000000..5081ed8e
--- /dev/null
+++ b/MLEB/LocalisationUpdate/i18n/ms.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Anakmalaysia"
+ ]
+ },
+ "localisationupdate-desc": "Memastikan kekemaskinian mesej-mesej yang disetempatkan"
+}
diff --git a/MLEB/LocalisationUpdate/i18n/nb.json b/MLEB/LocalisationUpdate/i18n/nb.json
new file mode 100644
index 00000000..c7978a78
--- /dev/null
+++ b/MLEB/LocalisationUpdate/i18n/nb.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Nghtwlkr"
+ ]
+ },
+ "localisationupdate-desc": "Holder de lokaliserte meldingene så oppdaterte som mulig"
+}
diff --git a/MLEB/LocalisationUpdate/i18n/nl.json b/MLEB/LocalisationUpdate/i18n/nl.json
new file mode 100644
index 00000000..a05698e6
--- /dev/null
+++ b/MLEB/LocalisationUpdate/i18n/nl.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Siebrand"
+ ]
+ },
+ "localisationupdate-desc": "Houdt de gelokaliseerde berichten zo actueel mogelijk"
+}
diff --git a/MLEB/LocalisationUpdate/i18n/nn.json b/MLEB/LocalisationUpdate/i18n/nn.json
new file mode 100644
index 00000000..b9730f27
--- /dev/null
+++ b/MLEB/LocalisationUpdate/i18n/nn.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Gunnernett"
+ ]
+ },
+ "localisationupdate-desc": "Held dei lokaliserte meldingane så oppdaterte som mogleg"
+}
diff --git a/MLEB/LocalisationUpdate/i18n/oc.json b/MLEB/LocalisationUpdate/i18n/oc.json
new file mode 100644
index 00000000..541dd0b9
--- /dev/null
+++ b/MLEB/LocalisationUpdate/i18n/oc.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Cedric31"
+ ]
+ },
+ "localisationupdate-desc": "Manténer la traduccion dels messatges a jorn autant que possible"
+}
diff --git a/MLEB/LocalisationUpdate/i18n/pl.json b/MLEB/LocalisationUpdate/i18n/pl.json
new file mode 100644
index 00000000..2ed878ea
--- /dev/null
+++ b/MLEB/LocalisationUpdate/i18n/pl.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Sp5uhe"
+ ]
+ },
+ "localisationupdate-desc": "Uaktualnia lokalne komunikaty w miarę możliwości na bieżąco"
+}
diff --git a/MLEB/LocalisationUpdate/i18n/pms.json b/MLEB/LocalisationUpdate/i18n/pms.json
new file mode 100644
index 00000000..bebbbd8a
--- /dev/null
+++ b/MLEB/LocalisationUpdate/i18n/pms.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Dragonòt"
+ ]
+ },
+ "localisationupdate-desc": "A manten i messagi localisà ël pì agiornà possìbil"
+}
diff --git a/MLEB/LocalisationUpdate/i18n/pt-br.json b/MLEB/LocalisationUpdate/i18n/pt-br.json
new file mode 100644
index 00000000..2684cfa9
--- /dev/null
+++ b/MLEB/LocalisationUpdate/i18n/pt-br.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Eduardo.mps"
+ ]
+ },
+ "localisationupdate-desc": "Mantém as mensagens localizadas tão atualizadas quanto possível"
+}
diff --git a/MLEB/LocalisationUpdate/i18n/pt.json b/MLEB/LocalisationUpdate/i18n/pt.json
new file mode 100644
index 00000000..07fa8c3d
--- /dev/null
+++ b/MLEB/LocalisationUpdate/i18n/pt.json
@@ -0,0 +1,10 @@
+{
+ "@metadata": {
+ "authors": [
+ "Hamilton Abreu",
+ "Luckas",
+ "Malafaya"
+ ]
+ },
+ "localisationupdate-desc": "Mantém as mensagens localizadas tão atualizadas quanto possível"
+}
diff --git a/MLEB/LocalisationUpdate/i18n/qqq.json b/MLEB/LocalisationUpdate/i18n/qqq.json
new file mode 100644
index 00000000..c6978bbb
--- /dev/null
+++ b/MLEB/LocalisationUpdate/i18n/qqq.json
@@ -0,0 +1,10 @@
+{
+ "@metadata": {
+ "authors": [
+ "Fryed-peach",
+ "Purodha",
+ "Shirayuki"
+ ]
+ },
+ "localisationupdate-desc": "{{desc|name=Localisation Update|url=http://www.mediawiki.org/wiki/Extension:LocalisationUpdate}}"
+}
diff --git a/MLEB/LocalisationUpdate/i18n/ro.json b/MLEB/LocalisationUpdate/i18n/ro.json
new file mode 100644
index 00000000..b609969c
--- /dev/null
+++ b/MLEB/LocalisationUpdate/i18n/ro.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "KlaudiuMihaila"
+ ]
+ },
+ "localisationupdate-desc": "Menține mesajele localizate cât mai actualizate"
+}
diff --git a/MLEB/LocalisationUpdate/i18n/roa-tara.json b/MLEB/LocalisationUpdate/i18n/roa-tara.json
new file mode 100644
index 00000000..47d5c72c
--- /dev/null
+++ b/MLEB/LocalisationUpdate/i18n/roa-tara.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Joetaras"
+ ]
+ },
+ "localisationupdate-desc": "Mandine le messagge localizzate 'u cchiù aggiornate possibbile"
+}
diff --git a/MLEB/LocalisationUpdate/i18n/ru.json b/MLEB/LocalisationUpdate/i18n/ru.json
new file mode 100644
index 00000000..a0e4739e
--- /dev/null
+++ b/MLEB/LocalisationUpdate/i18n/ru.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Александр Сигачёв"
+ ]
+ },
+ "localisationupdate-desc": "Поддерживает актуальность локализованных сообщений, насколько это возможно"
+}
diff --git a/MLEB/LocalisationUpdate/i18n/sk.json b/MLEB/LocalisationUpdate/i18n/sk.json
new file mode 100644
index 00000000..396998ad
--- /dev/null
+++ b/MLEB/LocalisationUpdate/i18n/sk.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Helix84"
+ ]
+ },
+ "localisationupdate-desc": "Udržiava lokalizované správy čo najaktuálnejšie"
+}
diff --git a/MLEB/LocalisationUpdate/i18n/sr-ec.json b/MLEB/LocalisationUpdate/i18n/sr-ec.json
new file mode 100644
index 00000000..dfd900a4
--- /dev/null
+++ b/MLEB/LocalisationUpdate/i18n/sr-ec.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Михајло Анђелковић"
+ ]
+ },
+ "localisationupdate-desc": "Ажурира локализоване поруке колико је то могуће"
+}
diff --git a/MLEB/LocalisationUpdate/i18n/sr-el.json b/MLEB/LocalisationUpdate/i18n/sr-el.json
new file mode 100644
index 00000000..f303273b
--- /dev/null
+++ b/MLEB/LocalisationUpdate/i18n/sr-el.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Liangent"
+ ]
+ },
+ "localisationupdate-desc": "Ažurira lokalizovane poruke koliko je to moguće"
+}
diff --git a/MLEB/LocalisationUpdate/i18n/su.json b/MLEB/LocalisationUpdate/i18n/su.json
new file mode 100644
index 00000000..2c9d2f13
--- /dev/null
+++ b/MLEB/LocalisationUpdate/i18n/su.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Kandar"
+ ]
+ },
+ "localisationupdate-desc": "Ngajaga sangkan talatah-talatah nu geus dialihbasakeun salawasnya mutahir"
+}
diff --git a/MLEB/LocalisationUpdate/i18n/sv.json b/MLEB/LocalisationUpdate/i18n/sv.json
new file mode 100644
index 00000000..a68f4521
--- /dev/null
+++ b/MLEB/LocalisationUpdate/i18n/sv.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Boivie"
+ ]
+ },
+ "localisationupdate-desc": "Håller de lokaliserade meddelandena så uppdaterade som möjligt"
+}
diff --git a/MLEB/LocalisationUpdate/i18n/ta.json b/MLEB/LocalisationUpdate/i18n/ta.json
new file mode 100644
index 00000000..153519e6
--- /dev/null
+++ b/MLEB/LocalisationUpdate/i18n/ta.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "செல்வா"
+ ]
+ },
+ "localisationupdate-desc": "உட்சூழலுக்கான செய்திகளை கூடியமட்டிலும் இன்றையநிலையில் வைக்கப்பட்டுள்ளன"
+}
diff --git a/MLEB/LocalisationUpdate/i18n/te.json b/MLEB/LocalisationUpdate/i18n/te.json
new file mode 100644
index 00000000..4bc8cd36
--- /dev/null
+++ b/MLEB/LocalisationUpdate/i18n/te.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Veeven"
+ ]
+ },
+ "localisationupdate-desc": "స్ధానికీకరించిన సందేశాలను సాధ్యమైనంత తాజాగా ఉంచుతుంది"
+}
diff --git a/MLEB/LocalisationUpdate/i18n/tl.json b/MLEB/LocalisationUpdate/i18n/tl.json
new file mode 100644
index 00000000..e493bc7b
--- /dev/null
+++ b/MLEB/LocalisationUpdate/i18n/tl.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "AnakngAraw"
+ ]
+ },
+ "localisationupdate-desc": "Pinananatili ang mga mensaheng lokalisado bilang pinaka nasasapanahon"
+}
diff --git a/MLEB/LocalisationUpdate/i18n/tr.json b/MLEB/LocalisationUpdate/i18n/tr.json
new file mode 100644
index 00000000..63191719
--- /dev/null
+++ b/MLEB/LocalisationUpdate/i18n/tr.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Joseph"
+ ]
+ },
+ "localisationupdate-desc": "Yerelleştirilen mesajları mümkün olabildiğince güncel tutar"
+}
diff --git a/MLEB/LocalisationUpdate/i18n/uk.json b/MLEB/LocalisationUpdate/i18n/uk.json
new file mode 100644
index 00000000..e2c2446e
--- /dev/null
+++ b/MLEB/LocalisationUpdate/i18n/uk.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Prima klasy4na"
+ ]
+ },
+ "localisationupdate-desc": "Забезпечує оновлення локалізованих повідомлень у міру можливості"
+}
diff --git a/MLEB/LocalisationUpdate/i18n/vep.json b/MLEB/LocalisationUpdate/i18n/vep.json
new file mode 100644
index 00000000..8f3916d5
--- /dev/null
+++ b/MLEB/LocalisationUpdate/i18n/vep.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Игорь Бродский"
+ ]
+ },
+ "localisationupdate-desc": "Pidab lokaliziruidud tedotused veresin, ku voib"
+}
diff --git a/MLEB/LocalisationUpdate/i18n/vi.json b/MLEB/LocalisationUpdate/i18n/vi.json
new file mode 100644
index 00000000..9c0e7091
--- /dev/null
+++ b/MLEB/LocalisationUpdate/i18n/vi.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Vinhtantran"
+ ]
+ },
+ "localisationupdate-desc": "Giữ các thông điệp bản địa hóa được cập nhật nhất có thể"
+}
diff --git a/MLEB/LocalisationUpdate/i18n/wa.json b/MLEB/LocalisationUpdate/i18n/wa.json
new file mode 100644
index 00000000..cba6cba1
--- /dev/null
+++ b/MLEB/LocalisationUpdate/i18n/wa.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Srtxg"
+ ]
+ },
+ "localisationupdate-desc": "Po wårder les ratournaedjes di l' eterface li pus a djoû possibe"
+}
diff --git a/MLEB/LocalisationUpdate/i18n/yi.json b/MLEB/LocalisationUpdate/i18n/yi.json
new file mode 100644
index 00000000..eab1afc4
--- /dev/null
+++ b/MLEB/LocalisationUpdate/i18n/yi.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "פוילישער"
+ ]
+ },
+ "localisationupdate-desc": "האלטן די לאקאליזירטע מעלדונגען אקטועל ווי נאר מעגלעך"
+}
diff --git a/MLEB/LocalisationUpdate/i18n/yue.json b/MLEB/LocalisationUpdate/i18n/yue.json
new file mode 100644
index 00000000..1376dc0e
--- /dev/null
+++ b/MLEB/LocalisationUpdate/i18n/yue.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Tom Maaswinkel"
+ ]
+ },
+ "localisationupdate-desc": "將本地化嘅信息保持最新"
+}
diff --git a/MLEB/LocalisationUpdate/i18n/zh-hans.json b/MLEB/LocalisationUpdate/i18n/zh-hans.json
new file mode 100644
index 00000000..8141f127
--- /dev/null
+++ b/MLEB/LocalisationUpdate/i18n/zh-hans.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Tom Maaswinkel"
+ ]
+ },
+ "localisationupdate-desc": "将本地化的信息保持最新"
+}
diff --git a/MLEB/LocalisationUpdate/i18n/zh-hant.json b/MLEB/LocalisationUpdate/i18n/zh-hant.json
new file mode 100644
index 00000000..511b9790
--- /dev/null
+++ b/MLEB/LocalisationUpdate/i18n/zh-hant.json
@@ -0,0 +1,10 @@
+{
+ "@metadata": {
+ "authors": [
+ "Mark85296341",
+ "Tom Maaswinkel",
+ "LNDDYL"
+ ]
+ },
+ "localisationupdate-desc": "將在地化的資訊盡可能保持最新"
+}
diff --git a/MLEB/LocalisationUpdate/reader/JSONReader.php b/MLEB/LocalisationUpdate/reader/JSONReader.php
new file mode 100644
index 00000000..636168c8
--- /dev/null
+++ b/MLEB/LocalisationUpdate/reader/JSONReader.php
@@ -0,0 +1,30 @@
+<?php
+/**
+ * @file
+ * @author Niklas Laxström
+ * @license GPL-2.0+
+ */
+
+/**
+ * Reads MediaWiki JSON i18n files.
+ */
+class LU_JSONReader implements LU_Reader {
+ /// @var string Language tag
+ protected $code;
+
+ public function __construct( $code = null ) {
+ $this->code = $code;
+ }
+
+ public function parse( $contents ) {
+ $messages = FormatJson::decode( $contents, true );
+ unset( $messages['@metadata'] );
+
+ if ( $this->code ) {
+ return array( $this->code => $messages );
+ }
+
+ // Assuming that the array is keyed by language codes
+ return $messages;
+ }
+}
diff --git a/MLEB/LocalisationUpdate/reader/PHPReader.php b/MLEB/LocalisationUpdate/reader/PHPReader.php
new file mode 100644
index 00000000..986d7b52
--- /dev/null
+++ b/MLEB/LocalisationUpdate/reader/PHPReader.php
@@ -0,0 +1,54 @@
+<?php
+/**
+ * @file
+ * @author Niklas Laxström
+ * @license GPL-2.0+
+ */
+
+/**
+ * Reads MediaWiki PHP i18n files.
+ */
+class LU_PHPReader implements LU_Reader {
+ /// @var string Language tag
+ protected $code;
+
+ public function __construct( $code = null ) {
+ $this->code = $code;
+ }
+
+ public function parse( $contents ) {
+ if ( strpos( $contents, '$messages' ) === false ) {
+ // This happens for some core languages that only have a fallback.
+ return array();
+ }
+
+ $php = $this->cleanupFile( $contents );
+ $reader = new QuickArrayReader( "<?php $php" );
+ $messages = $reader->getVar( 'messages' );
+
+ if ( $this->code ) {
+ return array( $this->code => $messages );
+ }
+
+ // Assuming that the array is keyed by language codes
+ return $messages;
+ }
+
+ /**
+ * Removes all unneeded content from a file and returns it.
+ *
+ * @param string $contents String
+ * @return string PHP code without PHP tags
+ */
+ protected function cleanupFile( $contents ) {
+ // We hate the windows vs linux linebreaks.
+ $contents = preg_replace( '/\r\n?/', "\n", $contents );
+
+ // We only want message arrays.
+ $results = array();
+ preg_match_all( '/\$messages(?:.*\s)*?\);/', $contents, $results );
+
+ // But we want them all in one string.
+ return implode( "\n\n", $results[0] );
+ }
+}
diff --git a/MLEB/LocalisationUpdate/reader/Reader.php b/MLEB/LocalisationUpdate/reader/Reader.php
new file mode 100644
index 00000000..f55a9372
--- /dev/null
+++ b/MLEB/LocalisationUpdate/reader/Reader.php
@@ -0,0 +1,19 @@
+<?php
+/**
+ * @file
+ * @author Niklas Laxström
+ * @license GPL-2.0+
+ */
+
+/**
+ * Interface for file readers.
+ */
+interface LU_Reader {
+ /**
+ * Returns a list of messages indexed by language code. Example
+ * array( 'en' => array( 'key' => 'value' ) );
+ * @param string $contents File contents as a string.
+ * @return array
+ */
+ public function parse( $contents );
+}
diff --git a/MLEB/LocalisationUpdate/reader/ReaderFactory.php b/MLEB/LocalisationUpdate/reader/ReaderFactory.php
new file mode 100644
index 00000000..530ab3f9
--- /dev/null
+++ b/MLEB/LocalisationUpdate/reader/ReaderFactory.php
@@ -0,0 +1,36 @@
+<?php
+/**
+ * @file
+ * @author Niklas Laxström
+ * @license GPL-2.0+
+ */
+
+/**
+ * Constructs readers for files based on the names.
+ */
+class LU_ReaderFactory {
+ /**
+ * Constructs a suitable reader for a given path.
+ * @param string $filename Usually a relative path to the file name.
+ * @return LU_Reader
+ * @throw MWException
+ */
+ public function getReader( $filename ) {
+ if ( preg_match( '/i18n\.php$/', $filename ) ) {
+ return new LU_PHPReader();
+ }
+
+ // Ugly hack for core i18n files
+ if ( preg_match( '/Messages(.*)\.php$/', $filename ) ) {
+ $code = Language::getCodeFromFileName( basename( $filename ), 'Messages' );
+ return new LU_PHPReader( $code );
+ }
+
+ if ( preg_match( '/\.json/', $filename ) ) {
+ $code = basename( $filename, '.json' );
+ return new LU_JSONReader( $code );
+ }
+
+ throw new MWException( "Unknown file format: " . $filename );
+ }
+}
diff --git a/MLEB/LocalisationUpdate/tests/phpunit/Makefile b/MLEB/LocalisationUpdate/tests/phpunit/Makefile
new file mode 100644
index 00000000..e98c12ca
--- /dev/null
+++ b/MLEB/LocalisationUpdate/tests/phpunit/Makefile
@@ -0,0 +1,12 @@
+ifndef MW_INSTALL_PATH
+ MW_INSTALL_PATH=../../../..
+endif
+
+DIRS=reader
+
+default:
+ php ${MW_INSTALL_PATH}/tests/phpunit/phpunit.php .
+
+.PHONY: *Test.php $(DIRS)
+*Test.php $(DIRS):
+ php ${MW_INSTALL_PATH}/tests/phpunit/phpunit.php $@
diff --git a/MLEB/LocalisationUpdate/tests/phpunit/UpdaterTest.php b/MLEB/LocalisationUpdate/tests/phpunit/UpdaterTest.php
new file mode 100644
index 00000000..ce742cba
--- /dev/null
+++ b/MLEB/LocalisationUpdate/tests/phpunit/UpdaterTest.php
@@ -0,0 +1,80 @@
+<?php
+/**
+ * @file
+ * @author Niklas Laxström
+ * @license GPL-2.0+
+ */
+
+class LU_UpdaterTest extends MediaWikiTestCase {
+ public function testIsDirectory() {
+ $updater = new LU_Updater();
+
+ $this->assertTrue(
+ $updater->isDirectory( '/IP/extensions/Translate/i18n/*.json' ),
+ 'Extension json files are a file pattern'
+ );
+
+ $this->assertFalse(
+ $updater->isDirectory( '/IP/extensions/Translate/Translate.i18n.php' ),
+ 'Extension php file is not a pattern'
+ );
+ }
+
+ public function testExpandRemotePath() {
+ $updater = new LU_Updater();
+ $repos = array( 'main' => 'file:///repos/%NAME%/%SOME-VAR%' );
+
+ $info = array(
+ 'repo' => 'main',
+ 'name' => 'product',
+ 'some-var' => 'file',
+ );
+ $this->assertEquals(
+ 'file:///repos/product/file',
+ $updater->expandRemotePath( $info, $repos ),
+ 'Variables are expanded correctly'
+ );
+ }
+
+ public function testReadMessages() {
+ $updater = $updater = new LU_Updater();
+
+ $input = array( 'file' => 'Hello World!' );
+ $output = array( 'en' => array( 'key' => $input['file'] ) );
+
+ $reader = $this->getMock( 'LU_Reader' );
+ $reader
+ ->expects( $this->once() )
+ ->method( 'parse' )
+ ->will( $this->returnValue( $output ) );
+
+ $factory = $this->getMock( 'LU_ReaderFactory' );
+ $factory
+ ->expects( $this->once() )
+ ->method( 'getReader' )
+ ->will( $this->returnValue( $reader ) );
+
+ $observed = $updater->readMessages( $factory, $input );
+ $this->assertEquals( $output, $observed, 'Tries to parse given file' );
+ }
+
+ public function testFindChangedTranslations() {
+ $updater = $updater = new LU_Updater();
+
+ $origin = array(
+ 'A' => '1',
+ 'C' => '3',
+ 'D' => '4',
+ );
+ $remote = array(
+ 'A' => '1', // No change key
+ 'B' => '2', // New key
+ 'C' => '33', // Changed key
+ 'D' => '44', // Blacklisted key
+ );
+ $blacklist = array( 'D' => 0 );
+ $expected = array( 'B' => '2', 'C' => '33' );
+ $observed = $updater->findChangedTranslations( $origin, $remote, $blacklist );
+ $this->assertEquals( $expected, $observed, 'Changed and new keys returned' );
+ }
+}
diff --git a/MLEB/LocalisationUpdate/tests/phpunit/finder/FinderTest.php b/MLEB/LocalisationUpdate/tests/phpunit/finder/FinderTest.php
new file mode 100644
index 00000000..8cc0f7d7
--- /dev/null
+++ b/MLEB/LocalisationUpdate/tests/phpunit/finder/FinderTest.php
@@ -0,0 +1,70 @@
+<?php
+/**
+ * @file
+ * @author Niklas Laxström
+ * @license GPL-2.0+
+ */
+
+class LU_FinderTest extends MediaWikiTestCase {
+ public function testGetComponents() {
+ $finder = new LU_Finder(
+ array(
+ 'TranslateSearch' => '/IP/extensions/Translate/TranslateSearch.i18n.php',
+ 'Babel' => '/IP/extensions/Babel/Babel.i18n.php',
+ ),
+ array(
+ 'Babel' => '/IP/extensions/Babel/i18n',
+ 'Door' => array(
+ 'core' => '/IP/extensions/Door/i18n/core',
+ 'extra' => '/IP/extensions/Door/i18n/extra',
+ ),
+ ),
+ '/IP'
+ );
+ $observed = $finder->getComponents();
+
+ $expected = array(
+ 'repo' => 'mediawiki',
+ 'orig' => "file:///IP/languages/messages/Messages*.php",
+ 'path' => 'languages/messages/Messages*.php',
+ );
+ $this->assertArrayHasKey( 'core', $observed );
+ $this->assertSame( $expected, $observed['core'], 'Core php file' );
+
+ $expected = array(
+ 'repo' => 'extension',
+ 'name' => 'Translate',
+ 'orig' => 'file:///IP/extensions/Translate/TranslateSearch.i18n.php',
+ 'path' => 'TranslateSearch.i18n.php'
+ );
+ $this->assertArrayHasKey( 'TranslateSearch', $observed );
+ $this->assertSame( $expected, $observed['TranslateSearch'], 'PHP only extension' );
+
+ $expected = array(
+ 'repo' => 'extension',
+ 'name' => 'Babel',
+ 'orig' => 'file:///IP/extensions/Babel/i18n/*.json',
+ 'path' => 'i18n/*.json'
+ );
+ $this->assertArrayHasKey( 'Babel-0', $observed );
+ $this->assertSame( $expected, $observed['Babel-0'], 'PHP&JSON extension' );
+
+ $expected = array(
+ 'repo' => 'extension',
+ 'name' => 'Door',
+ 'orig' => 'file:///IP/extensions/Door/i18n/core/*.json',
+ 'path' => 'i18n/core/*.json'
+ );
+ $this->assertArrayHasKey( 'Door-core', $observed );
+ $this->assertSame( $expected, $observed['Door-core'], 'Multidir json extension' );
+
+ $expected = array(
+ 'repo' => 'extension',
+ 'name' => 'Door',
+ 'orig' => 'file:///IP/extensions/Door/i18n/extra/*.json',
+ 'path' => 'i18n/extra/*.json'
+ );
+ $this->assertArrayHasKey( 'Door-extra', $observed );
+ $this->assertSame( $expected, $observed['Door-extra'], 'Multidir json extension' );
+ }
+}
diff --git a/MLEB/LocalisationUpdate/tests/phpunit/reader/JSONReaderTest.php b/MLEB/LocalisationUpdate/tests/phpunit/reader/JSONReaderTest.php
new file mode 100644
index 00000000..4bb53af9
--- /dev/null
+++ b/MLEB/LocalisationUpdate/tests/phpunit/reader/JSONReaderTest.php
@@ -0,0 +1,37 @@
+<?php
+/**
+ * @file
+ * @author Niklas Laxström
+ * @license GPL-2.0+
+ */
+
+class LU_JSONReaderTest extends MediaWikiTestCase {
+ /**
+ * @dataProvider parseProvider
+ */
+ public function testParse( $input, $expected, $comment ) {
+ $reader = new LU_JSONReader( 'xx' );
+ $observed = $reader->parse( $input );
+ $this->assertEquals( $expected, $observed['xx'], $comment );
+ }
+
+ public function parseProvider() {
+ return array(
+ array(
+ '{}',
+ array(),
+ 'empty file',
+ ),
+ array(
+ '{"key":"value"}',
+ array( 'key' => 'value' ),
+ 'file with one string',
+ ),
+ array(
+ '{"@metadata":{"authors":["Nike"]},"key":"value2"}',
+ array( 'key' => 'value2' ),
+ '@metadata is ignored',
+ )
+ );
+ }
+}
diff --git a/MLEB/LocalisationUpdate/tests/phpunit/reader/ReaderFactoryTest.php b/MLEB/LocalisationUpdate/tests/phpunit/reader/ReaderFactoryTest.php
new file mode 100644
index 00000000..ee155b3a
--- /dev/null
+++ b/MLEB/LocalisationUpdate/tests/phpunit/reader/ReaderFactoryTest.php
@@ -0,0 +1,38 @@
+<?php
+/**
+ * @file
+ * @author Niklas Laxström
+ * @license GPL-2.0+
+ */
+
+class LU_ReaderFactoryTest extends MediaWikiTestCase {
+ /**
+ * @dataProvider getReaderProvider
+ */
+ public function testGetReader( $input, $expected, $comment ) {
+ $factory = new LU_ReaderFactory();
+ $reader = $factory->getReader( $input );
+ $observed = get_class( $reader );
+ $this->assertEquals( $expected, $observed, $comment );
+ }
+
+ public function getReaderProvider() {
+ return array(
+ array(
+ 'languages/messages/MessagesFi.php',
+ 'LU_PHPReader',
+ 'core php file',
+ ),
+ array(
+ 'extensions/Translate/Translate.i18n.php',
+ 'LU_PHPReader',
+ 'extension php file',
+ ),
+ array(
+ 'extension/Translate/i18n/core/de.json',
+ 'LU_JSONReader',
+ 'extension json file',
+ ),
+ );
+ }
+}
diff --git a/MLEB/LocalisationUpdate/update.php b/MLEB/LocalisationUpdate/update.php
new file mode 100644
index 00000000..1f66e736
--- /dev/null
+++ b/MLEB/LocalisationUpdate/update.php
@@ -0,0 +1,75 @@
+<?php
+
+$IP = strval( getenv( 'MW_INSTALL_PATH' ) ) !== ''
+ ? getenv( 'MW_INSTALL_PATH' )
+ : realpath( dirname( __FILE__ ) . "/../../" );
+// Can use __DIR__ once we drop support for MW 1.19
+
+require "$IP/maintenance/Maintenance.php";
+
+class LU extends Maintenance {
+ public function __construct() {
+ parent::__construct();
+ $this->mDescription = 'Fetches translation updates to MediaWiki and extensions.';
+ $this->addOption(
+ 'repoid',
+ 'Fetch translations from repositories identified by this',
+ false, /*required*/
+ true /*has arg*/
+ );
+ }
+
+ public function execute() {
+ // Prevent the script from timing out
+ set_time_limit( 0 );
+ ini_set( "max_execution_time", 0 );
+ ini_set( 'memory_limit', -1 );
+
+ global $wgExtensionMessagesFiles, $wgMessagesDirs, $IP;
+ global $wgLocalisationUpdateRepositories;
+ global $wgLocalisationUpdateRepository;
+
+ $dir = LocalisationUpdate::getDirectory();
+ if ( !$dir ) {
+ $this->error( "No cache directory configured", true );
+ return;
+ }
+
+ $finder = new LU_Finder( $wgExtensionMessagesFiles, $wgMessagesDirs, $IP );
+ $readerFactory = new LU_ReaderFactory();
+ $fetcherFactory = new LU_FetcherFactory();
+
+ $repoid = $this->getOption( 'repoid', $wgLocalisationUpdateRepository );
+ if ( !isset( $wgLocalisationUpdateRepositories[$repoid] ) ) {
+ $known = implode( ', ', array_keys( $wgLocalisationUpdateRepositories ) );
+ $this->error( "Unknown repoid $repoid; known: $known", true );
+ return;
+ }
+ $repos = $wgLocalisationUpdateRepositories[$repoid];
+
+ // Do it ;)
+ $updater = new LU_Updater();
+ $updatedMessages = $updater->execute(
+ $finder,
+ $readerFactory,
+ $fetcherFactory,
+ $repos
+ );
+
+ // Store it ;)
+ $count = array_sum( array_map( 'count', $updatedMessages ) );
+ if ( !$count ) {
+ $this->output( "Found no new translations\n" );
+ return;
+ }
+
+ foreach ( $updatedMessages as $language => $messages ) {
+ $filename = "$dir/" . LocalisationUpdate::getFilename( $language );
+ file_put_contents( $filename, FormatJson::encode( $messages, true ) );
+ }
+ $this->output( "Saved $count new translations\n" );
+ }
+}
+
+$maintClass = 'LU';
+require_once RUN_MAINTENANCE_IF_MAIN;
diff --git a/MLEB/Translate/.jshintignore b/MLEB/Translate/.jshintignore
new file mode 100644
index 00000000..23710946
--- /dev/null
+++ b/MLEB/Translate/.jshintignore
@@ -0,0 +1,4 @@
+# upstream libs
+resources/js/jquery.autosize.js
+resources/js/jquery.ui.position.js
+resources/jquery.chosen/
diff --git a/MLEB/Translate/.jshintrc b/MLEB/Translate/.jshintrc
new file mode 100644
index 00000000..d7649a35
--- /dev/null
+++ b/MLEB/Translate/.jshintrc
@@ -0,0 +1,29 @@
+{
+ "camelcase": true,
+ "curly": true,
+ "eqeqeq": true,
+ "immed": true,
+ "latedef": true,
+ "newcap": true,
+ "noarg": true,
+ "noempty": true,
+ "nonew": true,
+ "quotmark": "single",
+ "trailing": true,
+ "undef": true,
+ "unused": true,
+ "onevar": true,
+ "bitwise": true,
+ "forin": false,
+ "regexp": false,
+ "strict": true,
+ "laxbreak": true,
+ "smarttabs": true,
+ "multistr": true,
+ "browser": true,
+ "predef": [
+ "mediaWiki",
+ "jQuery",
+ "QUnit"
+ ]
+}
diff --git a/MLEB/Translate/.rubocop.yml b/MLEB/Translate/.rubocop.yml
new file mode 100644
index 00000000..cc32da4b
--- /dev/null
+++ b/MLEB/Translate/.rubocop.yml
@@ -0,0 +1 @@
+inherit_from: .rubocop_todo.yml
diff --git a/MLEB/Translate/.rubocop_todo.yml b/MLEB/Translate/.rubocop_todo.yml
new file mode 100644
index 00000000..99d902e1
--- /dev/null
+++ b/MLEB/Translate/.rubocop_todo.yml
@@ -0,0 +1,110 @@
+# This configuration was generated by `rubocop --auto-gen-config`
+# on 2014-10-21 16:00:13 +0200 using RuboCop version 0.26.1.
+# The point is for the user to remove these configuration records
+# one by one as the offenses are removed from the code base.
+# Note that changes in the inspected code, or installation of new
+# versions of RuboCop, may require this file to be generated again.
+
+# Offense count: 1
+# Cop supports --auto-correct.
+Lint/UnusedBlockArgument:
+ Enabled: false
+
+# Offense count: 1
+Lint/UselessAssignment:
+ Enabled: false
+
+# Offense count: 3
+Lint/Void:
+ Enabled: false
+
+# Offense count: 1
+# Configuration parameters: CountComments.
+Metrics/ClassLength:
+ Max: 101
+
+# Offense count: 50
+# Configuration parameters: AllowURI, URISchemes.
+Metrics/LineLength:
+ Max: 127
+
+# Offense count: 2
+# Cop supports --auto-correct.
+# Configuration parameters: PreferredMethods.
+Style/CollectionMethods:
+ Enabled: false
+
+# Offense count: 4
+Style/Documentation:
+ Enabled: false
+
+# Offense count: 3
+# Cop supports --auto-correct.
+# Configuration parameters: AllowAdjacentOneLineDefs.
+Style/EmptyLineBetweenDefs:
+ Enabled: false
+
+# Offense count: 1
+# Cop supports --auto-correct.
+Style/EmptyLinesAroundBody:
+ Enabled: false
+
+# Offense count: 24
+# Cop supports --auto-correct.
+# Configuration parameters: EnforcedStyle, SupportedStyles.
+Style/HashSyntax:
+ Enabled: false
+
+# Offense count: 117
+# Cop supports --auto-correct.
+Style/IndentationWidth:
+ Enabled: false
+
+# Offense count: 2
+# Cop supports --auto-correct.
+Style/LeadingCommentSpace:
+ Enabled: false
+
+# Offense count: 1
+# Cop supports --auto-correct.
+Style/Not:
+ Enabled: false
+
+# Offense count: 1
+# Cop supports --auto-correct.
+# Configuration parameters: PreferredDelimiters.
+Style/PercentLiteralDelimiters:
+ Enabled: false
+
+# Offense count: 2
+# Cop supports --auto-correct.
+Style/RedundantSelf:
+ Enabled: false
+
+# Offense count: 14
+# Cop supports --auto-correct.
+# Configuration parameters: EnforcedStyleForEmptyBraces, SupportedStyles.
+Style/SpaceInsideHashLiteralBraces:
+ EnforcedStyle: no_space
+
+# Offense count: 76
+# Cop supports --auto-correct.
+# Configuration parameters: EnforcedStyle, SupportedStyles.
+Style/StringLiterals:
+ Enabled: false
+
+# Offense count: 1
+# Cop supports --auto-correct.
+# Configuration parameters: IgnoredMethods.
+Style/SymbolProc:
+ Enabled: false
+
+# Offense count: 250
+# Cop supports --auto-correct.
+Style/Tab:
+ Enabled: false
+
+# Offense count: 1
+# Cop supports --auto-correct.
+Style/WordArray:
+ MinSize: 5
diff --git a/MLEB/Translate/Autoload.php b/MLEB/Translate/Autoload.php
new file mode 100644
index 00000000..d58f480e
--- /dev/null
+++ b/MLEB/Translate/Autoload.php
@@ -0,0 +1,326 @@
+<?php
+/**
+ * Autoload definitions.
+ *
+ * @file
+ * @author Niklas Laxström
+ * @copyright Copyright © 2008-2014, Niklas Laxström
+ * @license GPL-2.0+
+ */
+
+/** @cond file_level_code */
+$dir = dirname( __FILE__ );
+/** @endcond */
+
+/**
+ * @name "Core Translate classes"
+ * @{
+ */
+$al['FatMessage'] = "$dir/Message.php";
+$al['MediaWikiMessageChecker'] = "$dir/MediaWikiMessageChecker.php";
+$al['MessageChecker'] = "$dir/MessageChecks.php";
+$al['MessageCollection'] = "$dir/MessageCollection.php";
+$al['MessageDefinitions'] = "$dir/MessageCollection.php";
+$al['MessageGroups'] = "$dir/MessageGroups.php";
+$al['TMessage'] = "$dir/Message.php";
+$al['ThinMessage'] = "$dir/Message.php";
+$al['TranslateEditAddons'] = "$dir/TranslateEditAddons.php";
+$al['TranslateHooks'] = "$dir/TranslateHooks.php";
+$al['TranslateTasks'] = "$dir/TranslateTasks.php";
+$al['TranslateUtils'] = "$dir/TranslateUtils.php";
+/**@}*/
+
+/**
+ * @name "Special pages"
+ * There are few more special pages in page translation section.
+ * @{
+ */
+$al['TranslateSpecialPage'] = "$dir/specials/TranslateSpecialPage.php";
+$al['SpecialAggregateGroups'] = "$dir/specials/SpecialAggregateGroups.php";
+$al['SpecialImportTranslations'] = "$dir/specials/SpecialImportTranslations.php";
+$al['SpecialLanguageStats'] = "$dir/specials/SpecialLanguageStats.php";
+$al['SpecialMagic'] = "$dir/specials/SpecialMagic.php";
+$al['SpecialManageGroups'] = "$dir/specials/SpecialManageGroups.php";
+$al['SpecialMessageGroupStats'] = "$dir/specials/SpecialMessageGroupStats.php";
+$al['SpecialMyLanguage'] = "$dir/specials/SpecialMyLanguage.php";
+$al['SpecialPageMigration'] = "$dir/specials/SpecialPageMigration.php";
+$al['SpecialPagePreparation'] = "$dir/specials/SpecialPagePreparation.php";
+$al['SpecialSearchTranslations'] = "$dir/specials/SpecialSearchTranslations.php";
+$al['SpecialSupportedLanguages'] = "$dir/specials/SpecialSupportedLanguages.php";
+$al['SpecialTranslate'] = "$dir/specials/SpecialTranslate.php";
+$al['SpecialManageTranslatorSandbox'] =
+ "$dir/specials/SpecialManageTranslatorSandbox.php";
+$al['SpecialTranslationStats'] = "$dir/specials/SpecialTranslationStats.php";
+$al['SpecialTranslations'] = "$dir/specials/SpecialTranslations.php";
+$al['SpecialTranslationStash'] = "$dir/specials/SpecialTranslationStash.php";
+/**@}*/
+
+/**
+ * @name "Various utilities"
+ * @{
+ */
+$al['CDBMessageIndex'] = "$dir/utils/MessageIndex.php";
+$al['CachedMessageIndex'] = "$dir/utils/MessageIndex.php";
+$al['DatabaseMessageIndex'] = "$dir/utils/MessageIndex.php";
+$al['ExternalMessageSourceStateComparator'] =
+ "$dir/utils/ExternalMessageSourceStateComparator.php";
+$al['FCFontFinder'] = "$dir/utils/Font.php";
+$al['FileCachedMessageIndex'] = "$dir/utils/MessageIndex.php";
+$al['FuzzyBot'] = "$dir/utils/FuzzyBot.php";
+$al['HTMLJsSelectToInputField'] = "$dir/utils/HTMLJsSelectToInputField.php";
+$al['JsSelectToInput'] = "$dir/utils/JsSelectToInput.php";
+$al['MessageGroupCache'] = "$dir/utils/MessageGroupCache.php";
+$al['MessageGroupStates'] = "$dir/utils/MessageGroupStates.php";
+$al['MessageGroupStatesUpdaterJob'] = "$dir/utils/MessageGroupStatesUpdaterJob.php";
+$al['MessageGroupStats'] = "$dir/utils/MessageGroupStats.php";
+$al['MessageHandle'] = "$dir/utils/MessageHandle.php";
+$al['MessageIndex'] = "$dir/utils/MessageIndex.php";
+$al['MessageIndexRebuildJob'] = "$dir/utils/MessageIndexRebuildJob.php";
+$al['MessageTable'] = "$dir/utils/MessageTable.php";
+$al['MessageUpdateJob'] = "$dir/utils/MessageUpdateJob.php";
+$al['MessageWebImporter'] = "$dir/utils/MessageWebImporter.php";
+$al['PHPVariableLoader'] = "$dir/utils/ResourceLoader.php";
+$al['RevTag'] = "$dir/utils/RevTag.php";
+$al['ReviewPerLanguageStats'] = "$dir/specials/SpecialTranslationStats.php";
+$al['SerializedMessageIndex'] = "$dir/utils/MessageIndex.php";
+$al['StatsBar'] = "$dir/utils/StatsBar.php";
+$al['StatsTable'] = "$dir/utils/StatsTable.php";
+$al['TTMServer'] = "$dir/utils/TTMServer.php";
+$al['TranslateLogFormatter'] = "$dir/utils/TranslateLogFormatter.php";
+$al['TranslateMetadata'] = "$dir/utils/TranslateMetadata.php";
+$al['TranslatePerLanguageStats'] = "$dir/specials/SpecialTranslationStats.php";
+$al['TranslatePreferences'] = "$dir/utils/UserToggles.php";
+$al['TranslateRcFilter'] = "$dir/utils/RcFilter.php";
+$al['TranslateRegistrationStats'] = "$dir/specials/SpecialTranslationStats.php";
+$al['TranslateSandbox'] = "$dir/utils/TranslateSandbox.php";
+$al['TranslateSandboxEmailJob'] = "$dir/utils/TranslateSandboxEmailJob.php";
+$al['TranslateStatsOutput'] = "$dir/scripts/TranslateStatsOutput.php";
+$al['TranslateToolbox'] = "$dir/utils/ToolBox.php";
+$al['TranslateYaml'] = "$dir/utils/TranslateYaml.php";
+$al['TranslationEditPage'] = "$dir/utils/TranslationEditPage.php";
+$al['TranslationHelperException'] = "$dir/utils/TranslationHelpers.php";
+$al['TranslationHelpers'] = "$dir/utils/TranslationHelpers.php";
+$al['TranslationStats'] = "$dir/utils/TranslationStats.php";
+$al['TranslationStatsBase'] = "$dir/specials/SpecialTranslationStats.php";
+$al['TranslationStatsInterface'] = "$dir/specials/SpecialTranslationStats.php";
+$al['TuxMessageTable'] = "$dir/utils/TuxMessageTable.php";
+/**@}*/
+
+/**
+ * @name "Classes for predefined non-managed message groups"
+ * @{
+ */
+$al['PremadeMediawikiExtensionGroups'] = "$dir/ffs/MediaWikiExtensions.php";
+$al['PremadeIntuitionTextdomains'] = "$dir/ffs/IntuitionTextdomains.php";
+/**@}*/
+
+/**
+ * @name "Support for MediaWiki non-message features"
+ * @{
+ */
+$al['ComplexMessages'] = "$dir/ffs/MediaWikiComplexMessages.php";
+$al['MagicWordsCM'] = "$dir/ffs/MediaWikiComplexMessages.php";
+$al['NamespaceCM'] = "$dir/ffs/MediaWikiComplexMessages.php";
+$al['SpecialPageAliasesCM'] = "$dir/ffs/MediaWikiComplexMessages.php";
+/**@}*/
+
+/**
+ * @name "Classes for page translation feature"
+ * @ingroup PageTranslation
+ * @{
+ */
+$al['TranslateDeleteJob'] = "$dir/tag/TranslateDeleteJob.php";
+$al['TranslateMoveJob'] = "$dir/tag/TranslateMoveJob.php";
+$al['PageTranslationHooks'] = "$dir/tag/PageTranslationHooks.php";
+$al['PageTranslationLogFormatter'] = "$dir/tag/PageTranslationLogFormatter.php";
+$al['TranslateRenderJob'] = "$dir/tag/TranslateRenderJob.php";
+$al['SpecialPageTranslation'] = "$dir/tag/SpecialPageTranslation.php";
+$al['SpecialPageTranslationDeletePage'] =
+ "$dir/tag/SpecialPageTranslationDeletePage.php";
+$al['SpecialPageTranslationMovePage'] =
+ "$dir/tag/SpecialPageTranslationMovePage.php";
+$al['TPException'] = "$dir/tag/TPException.php";
+$al['TPParse'] = "$dir/tag/TPParse.php";
+$al['TPSection'] = "$dir/tag/TPSection.php";
+$al['TranslatablePage'] = "$dir/tag/TranslatablePage.php";
+/**@}*/
+
+/**
+ * @name "Classes for TTMServer"
+ * @ingroup TTMServer
+ * @{
+ */
+$al['ReadableTTMServer'] = "$dir/ttmserver/Interfaces.php";
+$al['SearchableTTMServer'] = "$dir/ttmserver/Interfaces.php";
+$al['WritableTTMServer'] = "$dir/ttmserver/Interfaces.php";
+
+$al['TTMServerException'] = "$dir/ttmserver/Exceptions.php";
+
+$al['DatabaseTTMServer'] = "$dir/ttmserver/DatabaseTTMServer.php";
+$al['ElasticSearchTTMServer'] = "$dir/ttmserver/ElasticSearchTTMServer.php";
+$al['FakeTTMServer'] = "$dir/ttmserver/FakeTTMServer.php";
+$al['RemoteTTMServer'] = "$dir/ttmserver/RemoteTTMServer.php";
+$al['SolrTTMServer'] = "$dir/ttmserver/SolrTTMServer.php";
+$al['TTMServer'] = "$dir/ttmserver/TTMServer.php";
+$al['TTMServerMessageUpdateJob'] = "$dir/ttmserver/TTMServerMessageUpdateJob.php";
+/**@}*/
+
+/**
+ * @name "Classes for file format support (FFS)"
+ * @{
+ */
+$al['AndroidXmlFFS'] = "$dir/ffs/AndroidXmlFFS.php";
+$al['AppleFFS'] = "$dir/ffs/AppleFFS.php";
+$al['DtdFFS'] = "$dir/ffs/DtdFFS.php";
+$al['FFS'] = "$dir/ffs/FFS.php";
+$al['FlatPhpFFS'] = "$dir/ffs/FlatPhpFFS.php";
+$al['GettextFFS'] = "$dir/ffs/GettextFFS.php";
+$al['GettextPluralException'] = "$dir/ffs/GettextFFS.php";
+$al['IniFFS'] = "$dir/ffs/IniFFS.php";
+$al['JavaFFS'] = "$dir/ffs/JavaFFS.php";
+$al['JavaScriptFFS'] = "$dir/ffs/JavaScriptFFS.php";
+$al['JsonFFS'] = "$dir/ffs/JsonFFS.php";
+$al['MediaWikiExtensionFFS'] = "$dir/ffs/MediaWikiExtensionFFS.php";
+$al['RubyYamlFFS'] = "$dir/ffs/RubyYamlFFS.php";
+$al['ShapadoJsFFS'] = "$dir/ffs/JavaScriptFFS.php";
+$al['SimpleFFS'] = "$dir/ffs/SimpleFFS.php";
+$al['XliffFFS'] = "$dir/ffs/XliffFFS.php";
+$al['YamlFFS'] = "$dir/ffs/YamlFFS.php";
+/**@}*/
+
+/**
+ * @name "API modules"
+ * @{
+ */
+$al['ApiAggregateGroups'] = "$dir/api/ApiAggregateGroups.php";
+$al['ApiGroupReview'] = "$dir/api/ApiGroupReview.php";
+$al['ApiHardMessages'] = "$dir/api/ApiHardMessages.php";
+$al['ApiQueryLanguageStats'] = "$dir/api/ApiQueryLanguageStats.php";
+$al['ApiQueryMessageCollection'] = "$dir/api/ApiQueryMessageCollection.php";
+$al['ApiQueryMessageGroupStats'] = "$dir/api/ApiQueryMessageGroupStats.php";
+$al['ApiQueryMessageGroups'] = "$dir/api/ApiQueryMessageGroups.php";
+$al['ApiQueryMessageTranslations'] = "$dir/api/ApiQueryMessageTranslations.php";
+$al['ApiStatsQuery'] = "$dir/api/ApiStatsQuery.php";
+$al['ApiTTMServer'] = "$dir/api/ApiTTMServer.php";
+$al['ApiTranslateSandbox'] = "$dir/api/ApiTranslateSandbox.php";
+$al['ApiTranslateUser'] = "$dir/api/ApiTranslateUser.php";
+$al['ApiTranslationAids'] = "$dir/api/ApiQueryTranslationAids.php";
+$al['ApiTranslationReview'] = "$dir/api/ApiTranslationReview.php";
+$al['ApiTranslationStash'] = "$dir/api/ApiTranslationStash.php";
+/**@}*/
+
+/**
+ * @name "Task classes"
+ * @{
+ */
+$al['AcceptQueueMessagesTask'] = "$dir/TranslateTasks.php";
+$al['CustomFilteredMessagesTask'] = "$dir/TranslateTasks.php";
+$al['ExportAsPoMessagesTask'] = "$dir/TranslateTasks.php";
+$al['ExportMessagesTask'] = "$dir/TranslateTasks.php";
+$al['ExportToFileMessagesTask'] = "$dir/TranslateTasks.php";
+$al['ReviewAllMessagesTask'] = "$dir/TranslateTasks.php";
+$al['ReviewMessagesTask'] = "$dir/TranslateTasks.php";
+$al['TranslateTask'] = "$dir/TranslateTasks.php";
+$al['ViewMessagesTask'] = "$dir/TranslateTasks.php";
+$al['ViewOptionalTask'] = "$dir/TranslateTasks.php";
+$al['ViewUntranslatedTask'] = "$dir/TranslateTasks.php";
+/**@}*/
+
+/**
+ * @name "Message group classes"
+ * @{
+ */
+$al['AggregateMessageGroup'] = "$dir/messagegroups/AggregateMessageGroup.php";
+$al['FileBasedMessageGroup'] = "$dir/messagegroups/FileBasedMessageGroup.php";
+$al['MediaWikiExtensionMessageGroup'] =
+ "$dir/messagegroups/MediaWikiExtensionMessageGroup.php";
+$al['MessageGroup'] = "$dir/messagegroups/MessageGroup.php";
+$al['MessageGroupBase'] = "$dir/messagegroups/MessageGroupBase.php";
+$al['MessageGroupOld'] = "$dir/messagegroups/MessageGroupOld.php";
+$al['RecentMessageGroup'] = "$dir/messagegroups/RecentMessageGroup.php";
+$al['RecentAdditionsMessageGroup'] =
+ "$dir/messagegroups/RecentAdditionsMessageGroup.php";
+$al['SandboxMessageGroup'] = "$dir/messagegroups/SandboxMessageGroup.php";
+$al['WikiMessageGroup'] = "$dir/messagegroups/WikiMessageGroup.php";
+$al['WikiPageMessageGroup'] = "$dir/messagegroups/WikiPageMessageGroup.php";
+$al['WorkflowStatesMessageGroup'] =
+ "$dir/messagegroups/WorkflowStatesMessageGroup.php";
+/**@}*/
+
+/**
+ * @name "Stash"
+ * @{
+ */
+$al['StashedTranslation'] = "$dir/stash/StashedTranslation.php";
+$al['TranslationStashStorage'] = "$dir/stash/TranslationStashStorage.php";
+/**@}*/
+
+/**
+ * @name "Test classes"
+ * @{
+ */
+$al['MockFileBasedMessageGroup'] =
+ "$dir/tests/phpunit/MockFileBasedMessageGroup.php";
+$al['MockMessageCollectionForExport'] =
+ "$dir/tests/phpunit/MockMessageCollectionForExport.php";
+$al['MockSuperUser'] = "$dir/tests/phpunit/MockSuperUser.php";
+$al['MockWikiMessageGroup'] = "$dir/tests/phpunit/MockWikiMessageGroup.php";
+$al['MediaWikiInsertablesSuggesterTest'] =
+ "$dir/tests/phpunit/insertables/MediaWikiInsertablesSuggesterTest.php";
+
+/**@}*/
+
+/**
+ * @name "Translation aids"
+ * @{
+ */
+$al['CurrentTranslationAid'] = "$dir/translationaids/CurrentTranslationAid.php";
+$al['DocumentationAid'] = "$dir/translationaids/DocumentationAid.php";
+$al['GettextDocumentationAid'] = "$dir/translationaids/GettextDocumentationAid.php";
+$al['InOtherLanguagesAid'] = "$dir/translationaids/InOtherLanguagesAid.php";
+$al['InsertablesAid'] = "$dir/translationaids/InsertablesAid.php";
+$al['MachineTranslationAid'] = "$dir/translationaids/MachineTranslationAid.php";
+$al['MessageDefinitionAid'] = "$dir/translationaids/MessageDefinitionAid.php";
+$al['SupportAid'] = "$dir/translationaids/SupportAid.php";
+$al['TTMServerAid'] = "$dir/translationaids/TTMServerAid.php";
+$al['TranslationAid'] = "$dir/translationaids/TranslationAid.php";
+$al['UnsupportedTranslationAid'] =
+ "$dir/translationaids/UnsupportedTranslationAid.php";
+$al['UpdatedDefinitionAid'] = "$dir/translationaids/UpdatedDefinitionAid.php";
+/**@}*/
+
+/**
+ * @name "Translation web services"
+ * @{
+ */
+$al['ApertiumWebService'] = "$dir/webservices/ApertiumWebService.php";
+$al['MicrosoftWebService'] = "$dir/webservices/MicrosoftWebService.php";
+$al['RemoteTTMServerWebService'] = "$dir/webservices/RemoteTTMServerWebService.php";
+$al['TranslationWebService'] = "$dir/webservices/TranslationWebService.php";
+$al['TranslationWebServiceException'] =
+ "$dir/webservices/TranslationWebServiceException.php";
+$al['YandexWebService'] = "$dir/webservices/YandexWebService.php";
+/**@}*/
+
+/**
+ * @name "Insertables"
+ * @{
+ */
+$al['Insertable'] = "$dir/insertables/Insertable.php";
+$al['InsertablesSuggester'] = "$dir/insertables/InsertablesSuggester.php";
+$al['MediaWikiInsertablesSuggester'] =
+ "$dir/insertables/MediaWikiInsertablesSuggester.php";
+$al['TranslatablePageInsertablesSuggester'] =
+ "$dir/insertables/TranslatablePageInsertablesSuggester.php";
+/**@}*/
+
+/**
+ * @name "StringMangler"
+ * @{
+ */
+$al['StringMangler'] = "$dir/stringmangler/StringMangler.php";
+$al['StringMatcher'] = "$dir/stringmangler/StringMatcher.php";
+/**@}*/
+
+global $wgAutoloadClasses;
+$wgAutoloadClasses = array_merge( $wgAutoloadClasses, $al );
diff --git a/MLEB/Translate/CHANGELOG b/MLEB/Translate/CHANGELOG
new file mode 100644
index 00000000..89665fe8
--- /dev/null
+++ b/MLEB/Translate/CHANGELOG
@@ -0,0 +1,793 @@
+For newer recent changes, please refer the MediaWiki Language Extension Bundle
+release announcements or the git log.
+ https://www.mediawiki.org/wiki/MediaWiki_Language_Extension_Bundle
+
+== Change log ==
+* 2012-11-11
+- Dynamic message groups are now shown in list=messagecollection WebAPI.
+* 2012-11-10
+- Add RecentAdditionsMessageGroup:
+ Like RecentMessageGroup, but instead of proofreading
+ you can translate new message as they come in. Make this
+ view the home page of your browser, for example.
+* 2012-11-09
+- Unbalanced translate tags on translatable pages now fail gracefully again.
+* 2012-11-08
+- MediaWiki 1.19 or later is now required: support for 1.18 was dropped.
+* 2012-11-06
+- Add prop=revision to list=messagecollection WebAPI.
+* 2012-11-05
+- Avoid fatal errors with empty aggregate groups
+* 2012-10-29
+- Add support for Yandex machine translation service.
+* 2012-10-29
+- Sort order of the statistics tables is now included in the URL to make it linkable.
+ Enhances both LanguageStats and MessageGroupStats.
+* 2012-10-24
+- The lists of messages are now rendered faster and with less memory.
+ For a table of 5000 messages in Special:Translate, from 175M to 12M.
+- Better performance also for proofreading and page moves.
+* 2012-10-22
+- Ignored messages are no longer exported.
+ Except for source language or message documentation
+* 2012-10-21
+- Dropdown items on Special:AggregateGroups are now sorted alphabetically.
+* 2012-10-21
+- MediaWiki i18n now with modern support format: MediaWikiExtensionFFS.
+- You should check your config so that the second parameter
+ to the PremadeMediawikiExtensionsGroups constructor is correct.
+- Label and desc of message groups now have $context parameter.
+* 2012-10-18
+- Fixed infinite loop in MediaWikiMessageChecker with unbalanced
+ {{PLURAL}} in translations which gave fatal error on editing.
+* 2012-10-18
+- The page translation languages lists no longer overlaps other elements.
+* 2012-10-18
+- Added framework for key generation algorithms in GettextFFS.
+ Can be invoked in YAML config; backwards compatibility preserved.
+* 2012-10-16
+- Narayam now works in translation editors.
+* 2012-10-10
+- Inline translation editor is now the default.
+* 2012-10-08
+- New JsonFFS and related changes. Useful for jquery.i18n.
+* 2012-10-04
+- Added the concept of events in several places.
+ Useful for future CentralNotice integration.
+* 2012-10-02
+- Page translation is now enabled by default.
+ Still restricted by user group rights, which are not set by default.
+* 2012-09-22
+- Framework for automatic group workflow state changes.
+* 2012-09-21
+- Added collection of stats of proofread messages.
+* 2012-09-20
+- Added checker for too many or redundant plural forms in MediaWiki translations.
+* 2012-09-17
+- New script to create pretty graphs of MediaWiki language fallbacks.
+- Also rewritten plural-comparison.php.
+- Performance fixes to reduce timeouts when translating.
+* 2012-09-07
+- Special:ManageMessageGroups now shows new messages
+ conflicting with existing pages in the wiki as changes.
+* 2012-09-05
+- Completed integration with the new TranslateSvg extension.
+* 2012-08-31
+- Interface usability: for page translation, export tab now
+ shows the wikitext source of the translatable page.
+* 2012-08-19
+- Added support for AndroidXml (Android apps' string.xml).
+* 2012-08-19
+- $wgTranslateRcFilterDefault can be used to show
+ translation changes in the RecentChanges by default.
+* 2012-08-17
+- Fixes to avoid double counting of messages in statistics.
+* 2012-08-07
+- Deleting a translatable page no longer deletes
+ translatable pages which are subpages of it.
+* 2012-08-02
+- Page translation no longer reuses deleted translation unit identifiers.
+* 2012-08-02
+- Special:ManageMessageGroups is now more efficient,
+ able to manage groups with more than 10 000 messages.
+* 2012-08-02
+- GettextFFS now handles messages ending in \ better
+* 2012-07-30
+- Restored compatibility with MediaWiki 1.18.
+* 2012-07-29
+- Dollar signs ($) can now be used in translatable pages without problems.
+* 2012-07-26
+- Introduction of and many improvements to
+ Solr TTMServer (translation memory).
+* 2012-07-09
+- Special:TranslationStats now has a date picker to easily fill
+ starting date field; it replaces the manual input of all the zeros.
+* 2012-07-02
+- Special:MessageGroupStats now doesn't show
+ languages under 2 % of translation by default.
+* 2012-06-27
+- Fixed fatal errors in Special:MessageGroupStats
+* 2012-06-21
+- Fixed recent incompatibility with MW 1.19.
+- Improved hiding of blacklisted groups on Special:LanguageStats.
+* 2012-06-11
+- Allow setting message group state for a group only for specific user right.
+ This redefines $wgTranslateWorkflowStates to hold the rights required for
+ a state transition.
+- Allow black listing and white listing of languages in YAML configuration. YAML
+ files will have new top level section called LANGUAGES. LANGUAGES can have
+ optional subsections whitelist and blacklist, which take an array of language
+ codes. If a subsection is not specified, the white/blacklist value will
+ default to *, meaning all known languages. Whitelist overrides blacklist.
+* 2012-06-04
+- Show the priority languages in Special:Translate.
+* 2012-06-03
+- Option skipgroup added to export.php to filter wildcard groups.
+* 2012-06-02
+- $wgTranslateDisablePreSaveTransform added to make the disabling of PST for
+ message pages configurable, so that mediawiki.org etc. isn't broken.
+* 2012-05-29
+- Implemented and used convertWhiteSpaceToHTML in JavaScript.
+- Dynamic groups are ignored in Special:MessageGroupStats.
+* 2012-05-18
+- Fatal error on Special:AggregateGroups fixed.
+- Sort aggregates and their subgroups on Special:AggregateGroups.
+- Outdated caches were not recreated when file and wiki state matched.
+- Page translation icons are now 264dpi.
+- Unnecessary token check removed from Special:AggregateGroups.
+* 2012-05-14
+- Made link appearance in <languages/> bar saner for edge cases. Links to
+ existing, but untranslated pages are not shown as red anymore.
+- Fixed bug where fields for new aggregate groups on Special:AggregateGroups
+ were sometimes pre-filled.
+- When translation editor is open, a warning is displayed when trying to leave
+ the page.
+- OpenLayersFFS was removed.
+- Administrative pages are now links in tabs.
+* 2012-05-10
+- Fix to prevent page protection from confusing page translation feature.
+* 2012-05-09
+- Decimals on Special:LanguageStats and Special:MessageGroupStats were removed
+ for improved readability.
+* 2012-05-08
+- processMessageChanges was updated to reduce the number of false positives of
+ changed or deleted messages.
+- Deprecated languages are no longer displayed in the language selector on
+ Special:Translate.
+* 2012-05-07
+- FFS.php was split into several files.
+* 2012-05-03
+- $wgTranslateDelayedMessageIndexRebuild was added. If you have lots of message
+ groups, especially file based ones, and the message index rebuilding gets
+ slow, set this to true to delay the rebuilding via JobQueue. This only makes
+ sense if you have configured jobs to be processed outside of requests via cron
+ or similar.
+- API tokens are provided in a saner way now.
+- "ignore" option was added to Special:ManageMessageGroups (regression fixed).
+* 2012-04-30
+- Comparison of fuzzied translations was improved.
+* 2012-04-25
+- Special:ManageMessageGroups was improved so that the update process takes less
+ time. scripts/processMessageChanges.php should be run from the command line.
+ This stages all required changes. After that, the stated changes can be
+ assessed on Special:ManageMessageGroups. Processing takes place using the
+ job queue.
+* 2012-04-16
+- TMessage::setTag renamed to TMessage::addTag.
+* 2012-04-11
+- Option codemaponly added to export.php to so that only code mapped languages
+ can be exported.
+- Script autoexport.php was removed. Use export.php.
+* 2012-04-10
+- New MessageIndex backends: database and cdb.
+- Fixed an out of memory issue with page translation feature on MW 1.18 and
+ older.
+* 2012-04-05
+- JavaFFS was made more robust.
+* 2012-04-03
+- Profiling updates for message index related function calls.
+- Exception on diff pages fixed.
+* 2012-04-02
+- Improved metadata handling when renaming and deleting translatable pages.
+* 2012-03-27
+- Switch "hours" added to export.php.
+- Bug fix for inline editor to remove the "untranslated" class.
+* 2012-03-26
+- Deleting an aggregate group must be confirmed.
+* 2012-03-24
+- list-mwext-i18n-files.php was simplified.
+* 2012-03-22
+- $wgTranslateAddMWExtensionGroups was removed.
+- Messages are loaded using parent::getDefinitions() to allow decoupling
+ MediaWiki message groups from live wiki code.
+* 2012-03-21
+- ext.translate.special.languagestats.js no longer uses onclick.
+- Some issues with overcounting because of aggregate groups were resolved.
+* 2012-03-20
+- ext.translate.special.pagetranslation.js made more reusable: The generic
+ autocompletion funcionality is in ext.translate.multiselectautocomplete.js and
+ ext.translate.special.pagetranslation.js only apply it to
+ Special:PageTranslation.
+* 2012-03-19
+- Group ID prefix for aggregate groups through Special:AggregateGroup was
+ updated from "ag-" to "agg-".
+* 2012-03-16
+- A bug was fixed when renaming a translatable page with priority languages.
+- Plural rules were updates to CLDR 21.0.
+- More validations added to Special:AggregateGroup input.
+* 2012-03-14
+- Adding and removing a group from an aggregate group is now logged.
+* 2012-03-13
+- Removed groupprefix option from export.php and sync-group.php. Use * wildcard
+ with group option.
+- Page translation widget was made more easily reusable.
+- sync-group.php can now find the timestamp for git checkouts.
+- export.php no longer requires definitionFile when using gettext post processing
+ with ppgettext.
+* 2012-03-12
+- Special:LanguageStats group collapsing now supports nested subgroups.
+* 2012-03-11
+- Support for shared TTMServer databases was added.
+- Suggestions from different TTMServers are now grouped.
+- Output of TTMServer api module has changed.
+- TTMServer configs can override the link symbol by adding value for symbol in
+ the config.
+* 2012-03-07
+- $wgTranslateGroupStructure is no longer used. If you are using aggregate
+ message groups, you can remove the old settings and everything still works as
+ expected. If you are not yet using aggregate message groups, you should do
+ that to not confuse users.
+- Gettext file were not shown in translation editor when using recent
+ translations task.
+- New Special page AggregateGroups where translation administrator can group
+ pages into subgroups.
+* 2012-03-06
+- Translation administrator can now suggest languages translatable page should
+ be primarily translated into with a note or preventing other language
+ translations.
+* 2012-03-05
+- Support for using remote TTMServers via API interface added.
+- Support for tmserver was removed. Translate comes with TTMServer enabled by
+ default. To bootstrap it with current translations, run php
+ scripts/ttmserver-export.php.
+- Message documentation was not shown when translating for subgroups nested more
+ than one level deep.
+- Special:TranslationStats can now graph review and reviewer activity.
+* 2012-03-02
+- Encourage/discourage changes of translatable pages are now logged.
+* 2012-03-01
+- Added upper length for translation memory suggestions because of performance
+ concerns.
+* 2012-02-29
+- Configuring wgMainCache is no longer necessary. Translate extension will use
+ any available caching mechanism automatically when needed.
+- Support for Google Translate was removed, as the free service is no more.
+- Special:LanguageStats' default value derived from current interface language
+ now works also for anonymous users (only relevant when using
+ LanguageSelector).
+* 2012-02-24
+- Help link is no longer added twice in Special:SupportedLanguages.
+* 2012-02-21
+- Gettext headers can now be customised with Translate:GettextFFS:headerFields
+ hook. Less headers are modified by default.
+- Message index no longer goes into recursive loop on some cases when creating
+ the index the first time.
+- Improved the position of help links in Monobook skin.
+* 2012-02-19
+- MediaWiki 1.18 or later is now required.
+- Group description of translatable pages can be extended by adding content to
+ [[MediaWiki:Tp-custom-<group id>]].
+* 2012-02-13
+- Updated some deprecated function calls
+- New translation memory called TTMServer comes with the extension and is
+ enabled by default.
+* 2012-02-11
+- Some missing action- messages added.
+* 2012-02-10
+- New tabbed task-based UI on Special:Translate.
+* 2012-02-06
+- API module for message group stats written by Tim Gerundt.
+* 2012-02-01
+- Missing JavaScript dependency added to messagetable.
+- No more logging state changes where the state didn't actually change.
+- Allow syntax like
+ {{Special:MessageGroupStats|group=page-Main/sub|suppresscomplete=1}}.
+* 2012-01-31
+- export.php: switch "grouptrail" renamed to "groupprefix" and switch "groups".
+ was dropped. "group" now takes a comma separated list of groups IDs, too.
+- sync-group.php: switch "groupprefix" added.
+- Double counting of messages when adding message groups and aggregate groups to
+ another aggregate group was partially resolved.
+- Messages for translatable pages for which translation is discouraged, are no
+ longer added to aggregate message groups to avoid mismatches in statistics.
+- Special:MessageGroupStats now works for group IDs with spaces.
+- Updates were made for the translation memory service, to avoid serving
+ incorrect or outdated suggestions.
+* 2012-01-30
+- Statictics issues introduced recently were resolved.
+- "lang" attributes were added to Special:SupportedLanguages.
+- [[Special:Translate/groupname]] links for translatable pages with spaces or
+ colons in them are now possible. For page "Some page" it is:
+ [[Special:Translate/page-Some_page]].
+- The JavaScript translation editor now shows the code browser and gettext
+ comments when translating aggregate message groups.
+- Logging was added group statistics caching to determine if cache purges happen
+ too often.
+* 2012-01-29
+- Update functionality for the translation memory was added.
+* 2012-01-28
+- Code readability improvements were made.
+- A translation memory service was added, including a bootstrap script.
+* 2012-01-22
+- Message groups are no longer forced to implement getBools. getTags is the
+ official way to do this.
+- getDefinitions was added to the MessageGroupInterface.
+- The public $namespaces variable in MessageGroup was removed.
+* 2012-01-20
+- Browser compatibility updates were made in CSS.
+* 2012-01-19
+- Deprecated hook LanguageGetMagic was removed.
+* 2012-01-16
+- Help icons linking to documentation at
+ https://www.mediawiki.org/Help:Extension:Translate or sub pages were added to
+ extension functionality.
+- Backward compatibility with MediaWiki 1.18 was restored.
+* 2012-01-13
+- export.php has a switch "no-fuzzy" that will filter out fuzzy messages for
+ file based message groups.
+- Special:PageTranslation has now better error checking for invalid and
+ duplicate translation unit names.
+- Special pages have now help links.
+- Images were moved to a resources sub folder.
+* 2012-01-11
+- Translate page group id prefix was changed from page| to page-. Some old
+ links need to be updated, some still work.
+* 2012-01-10
+- Translate extension no longer unconditionally suppresses edit intros
+- Fixed compatibility issue with logs on < MW 1.18
+* 2012-01-06
+- Fixes to the sizing of the translation editor dialog
+* 2012-01-05
+- Fixed a fatal error that sometimes occurred when translation page title used
+ GRAMMAR and the page was viewed with English UI.
+* 2012-01-04
+- The summary row in Special:LanguageStats and Special:MessageGroupStats is no
+ longer sorted with rest of the rows.
+- There is now new message group for recent translations intented for reviewing
+ new translations
+- Fixed a bug that prevented changing workflow state of page translation
+ message group
+* 2012-01-02
+- Special:MyLanguage can now be used with language subpage to use that as the
+ default fallback instead of untranslated version
+- The flash of unstylized content effect is reduced
+- FuzzyBot user was not always created, leading to missing log entries
+ for example
+- export.php fixed after it was broken due to recent refactorings
+* 2011-12-26
+- Added {{#translationdialog:title}} for creating a link to the translation
+ dialog
+* 2011-12-25
+- Made the extension work without legacy JavaScript globals
+- PythonSingleFFS now respects codemap
+* 2011-12-23
+- Translatable pages can now be discouraged, meaning that they won't show up in
+ the usually places so that translators don't translate them needlessy.
+* 2011-11-06
+- Rewrote Special:ImportTranslations JavaScript so that it actually works
+- Fixed compatibility with MW 1.17 in JavaScript
+* 2011-11-04
+- The 'no translations' RC filter options was lost when navigating
+- Made MessageCache more robust
+- fuzzy.php can now take optional namespace prefix for each message
+* 2011-10-30
+- The script referenced at 2011-08-26 is now included in the source
+- Fixed compatibility with MW 1.17
+* 2011-10-28
+- New configuration variable $wgTranslatePermissionUrl
+- Message review feature, available to users in translate-proofr group
+- Message collections can now have properties and allow filtering on them
+ This is still work in progress and is likely to get improvements over time
+* 2011-10-14
+- New API module: messagetranslations
+* 2011-10-12
+- Multiple bug fixes and improvements to translatable page moving feature
+* 2011-10-07
+- $wgTranslateNewsletterPreference was introduced (default: false). Setting this
+ to true, will once again add the "Do not send me e-mail newsletters"
+ preference.
+* 2011-10-03
+- MessageIndex can now be stored in object cache (default) or in a file.
+- Fixed an error that sometimes prevented translating messages that had
+ been renamed
+* 2011-10-01
+- Changed index on translate_sections database table
+- Fixed escaping in PythonSingleFFS parser
+- Fixed a bug in getSourceLanguage for certain message group classes
+* 2011-09-29
+- Groups folder was cleaned. See groups/README for more information.
+- Fixed PHP notice when marking page for Translation with MW 1.19
+- Fixed a bug in RubyYamlFFS::unflattenPlural, added unit tests
+* 2011-09-28
+- Special:AdvancedTranslate is not enabled by default anymore
+- Special:TranslationChanges was removed
+- Started taking PHP code out of the groups/ folder anticipating Wikimedia
+ review. Later we will move all content of the groups folder elsewhere to
+ reduce the number of changes of changes to the Translate extension
+ considerably.
+* 2011-09-26
+- Special:SupportedLanguages can now show site specific messages in
+ supportedlanguages-localsummary message
+* 2011-09-23
+- Change log up to date
+* 2011-09-21
+- It is now possible to nest AggregateMessageGroups
+* 2011-09-19
+- New statistics backend considered stable
+- Special:MessageGroupStatistics
+- Translations that were recognized as redirect by MediaWiki no longer cause PHP notices
+- Made groupStatistics.php script more efficient
+* 2011-09-16
+- Languages are now sorted correctly on Special:LanguageStats for groups > 10k messages
+- It is now possible to specify starting point for graphs in Special:TranslationStats
+* 2011-09-15
+- All code is now using the MessageHandle class
+- ArrayMemoryCache removed due to new Statistics backend
+- New database table translate_groupstats
+* 2011-09-14
+- Sql files moved to a subfolder
+* 2011-09-13
+- Magic words exporter is no longer compatible with MediaWiki <=1.15
+* 2011-09-11
+- Log message for translatable page deletion was incorrect
+- Made page translation log compatible with the new logging system
+* 2011-09-06
+- If magic-export.php does not find a header, output a basic header rather than exitting
+* 2011-09-02
+- Fixed table border display issue on chrome for rtl messages
+- Everything converted to use ResoureLoader framework
+- js directory renamed to resources
+- Officially dropped support for MediaWiki 1.16
+* 2011-09-01
+- Message definition changes were not always displayed for fuzzy messages
+- Dropped embedded jQuery ui
+* 2011-08-31
+- Fixed issues with protocol relative urls
+* 2011-08-30
+- Special page TranslationChanges disabled, pending for removal
+- Got rid of MSG constants
+- Introduces TranslateHooks class
+- Removed efTranslateCheckPT() - please make sure you run update.php when needed
+* 2011-08-29
+- Message and rtl related fixes
+* 2011-08-26
+- revtag_type table is now obsolete - run scripts/migrate-schema2.php to update schema
+ the wiki will continue working even if this script is not run immediately
+* 2011-08-22
+- Partial update to CLDR and Gettext plural forms
+* 2011-08-18
+- Made compatible with new fallback method in MW
+* 2011-08-05
+- Translate will use MW page content language feature is available
+* 2011-08-02
+- Do not export TRANSLATE_FUZZY in PythonSingleFFS class
+* 2011-07-23
+- Many rtl related fixes, some only used when MW supports them
+* 2011-07-15
+- Collapsible javascript caused errors with older MWs
+* 2011-07-11
+- Rtl and font related fixes
+- Special:SupportLanguages is now listed on Special:SpecialPages
+- Google suggestions should obey the group source language
+- Update limit selector values. Either people want to show a little by default, or they want to see all of them.
+* 2011-07-10
+- Added some phpunit tests
+* 2011-07-09
+- Rtl fixes
+- Groups can now have source language different from wiki content language
+- action=purge on Special:LanguageStats clears cached stats
+* 2011-07-01
+- Fixed ResourceLoader issue with certain MW versions
+* 2011-06-30
+- Rtl and language tagging fixes
+* 2011-06-26
+- Marking pages for translation the first time works again
+* 2011-06-24
+- Updated bundled spyc library to the latest version
+* 2011-06-22
+- Fixed page translation marking related bug
+* 2011-06-20
+- Improved the UI of Special:ManageMessageGroups somewhat
+* 2011-06-17
+- Page translation now generates hidden markup-less source page versions
+* 2011-06-09
+- Added language cloud to Special:SupportedLanguages
+* 2011-06-08
+- Mark this page for translation link was not always shown
+* 2011-06-07
+- Restored compatibility with MW 1.16
+* 2011-06-05
+- Varios fixes to translatable/translation page deletion
+- Gettext documentation counts against translated messages for message documentation language
+* 2011-06-04
+- Added a special page that allows deleting translatable pages or parts of them.
+- Hack for making Special:MyLanguage links red if target doesn't exists
+* 2011-06-03
+- Handle Chihuahua skin
+* 2011-06-02
+- New hook which tries to do the right thing for subpagelist when viewing translatable pages
+* 2011-04-25
+- Javascript and rtl fixes
+* 2011-04-22
+- With recent MW, the extension now provides form for searching in translations only
+ Can also limit to certain language only
+* 2011-04-18
+- Show the ajax editor also for users without rights, as it contains useful information
+- Fixed compatibility issue with CologneBlue skin
+* 2011-04-16
+- Improve style loading to avoid page flash
+* 2011-04-13
+- Splitted Translate.css into smaller files
+* 2011-04-04
+- Updated gettext plural rule for cy
+- Fixed usability issue with summary field
+- Updated spyc from upstream repo
+- Armenian (hy) needs plural in some cases. MediaWiki already has it, also add to gettext
+- Don't use syck-pecl for dumping, the output is horrible
+- In translation dialog, made input elements grow automatically.
+* 2011-04-03
+- Updated plural data for new CLDR
+* 2011-03-16
+- Added ask question button also in the basic editor (still needs javascript to work :(
+* 2011-03-14
+- Fixed message group caching for single file based message groups.
+- Hooked diff pages to provide more information about the message.
+ Useful for those who follow recent changes feeds in review purposes
+- New class MessageHandle
+* 2011-03-11
+- In Special:ManageMessageGroups - don't expose actions to users who are not allowed to do them
+- Encourage translators to ask for help with a button
+* 2011-03-08
+- Added support for pecl syck, which is magnitudes faster and uses less memory.
+ Like all the other supported yaml implementations, this one has its own bugs that need to be worked around.
+* 2011-03-06
+- Speed and memory improvements to Special:LangugeStats
+* 2011-02-28
+- Special:LanguageStats: Fix IE-bug. Element creation must have valid syntax, does not accept shortcuts
+* 2011-02-01
+- Allow TRANSLATE_FUZZY to be redefined to a nonstandard value in LocalSettings.php
+* 2011-01-24
+- Moved all Special*.php files to specials/ folder. Update autoloader to match
+* 2011-01-22
+- Fixed character escpaing in Python FFS writer.
+* 2011-01-19
+- Improved suport for multi-line messages in OpenLayers FFS
+* 2011-01-17
+- Use the new ArticlePrepareTextForEdit hook to disable pre-save transformation on all message pages except for the message documentation language.
+* 2011-01-15
+- Read authors from python message files.
+* 2011-01-05
+- Use the new jquery.colorUtil to make the brightness 30% higher when cells are hovered on Special:LanguageStats
+
+=== 2010 ===
+
+* 2010-12-31
+- Use new hook to translate message documentation language code
+- Some improvements to Special:Translations: display language name, enable sorting, display count
+* 2010-12-24
+- Last bits of mw-js conventions
+* 2010-12-10
+- Transform translated page titles
+* 2010-11-05
+- Renamed TranslatePage to SpecialTranslate to follow the naming pattern
+- ViewUntranslated task was showing wrong table header
+* 2010-10-24
+- Support for Microsoft Translator
+* 2010-10-06
+- Fixed two bugs in translatable pages parsing which caused non-translatable pages to be considered as tagged
+- Performance improvements and bug fixes to message group cache
+* 2010-10-02
+- Fixed huge text in translation dialog
+* 2010-09-30
+- Fix X-POT-Import-date formatting
+* 2010-09-29
+- Lots of code cleanup related to message groups
+* 2010-09-27
+- Added parameter 'skip' to make it possible to export * but not 'en' and 'qqq' for example.
+* 2010-09-26
+- Allow translation of titles of translatable pages
+- Avoid Fatal when someone tries to export AggregateMessageGroup
+* 2010-09-25
+- First Api Query Module messagecollection
+* 2010-08-23
+- Fixed multiple bugs in Special:TranslationStats
+* 2010-08-20
+- Documentation updated a lot, added doxygen spec file.
+* 2010-06-12
+- Removed $wgGoogleApiKey, $wgTranslateTM and $wgTranslateApertium
+- You need to migrate to $wgTranslateTranslationServices
+- Page translation has been improved a lot
+- translation memory suggestions can now be loaded asynchronously
+* 2010-03-27
+- Improvements to js edit, like save and open next
+* 2010-02-24
+- Dropped $wgTranslateCssLocation. In MW 1.16 and later you can use $wgExtensionAssetsPath
+* 2010-01-24
+- Support for Apertium machine translation service
+- Fixed issue with jQuery and Vector skin
+* 2010-01-22
+- Support for using Google's translation api as a source for tm suggestions
+- Interface element for copying tm suggestion into text area
+* 2010-01-16 Translation memory suggestions are aggregated intelligently to save space
+ There is link back to the original message in tm suggestions
+ tm-export superceded dump-tm
+
+=== Changes in version 12 ===
+- Page translation
+- New fuzzy system, should be faster now
+- Edit are consistently filled when starting translation
+
+=== Changes in version 11 ===
+* 2009-05-09
+- Support added for OpenLayers
+- Page translation feature updated. Not backwards compatible
+* 2009-04-28 Tweaks for new preferences system
+* 2009-04-27 Updated preferences handling; only show when relevant
+* 2009-04-24 Updated preferences handling to work with MediaWiki 1.15a r49790 and up
+* 2009-04-23 Link added to message group in the source message fieldset description
+* 2009-04-15 Added class 'mw-sp-translate-[id]' to all message groups on Special:Translate
+* 2009-04-04:2 Support added for NOCC
+* 2009-04-04:1 PhpVariables Mantis header inconsistency fixed
+* 2009-03-29 Table header on Special:LanguageStats suppressed when all translations are complete
+
+=== Changes in version 10 ===
+* 2009-03-24 Also 2 decimals for fuzzy in Special:LanguageStats
+* 2009-03-23 Localised number formatting in Special:LanguageStats
+* 2009-02-22
+- Intro suppressed
+- message documentation no longer show warnings
+- improved keeping track of the language that is being translated in
+* 2009-02-14 Export header for MantisBT updated
+* 2009-01-18:1 Bug in autoexport fixed. Provides realiable output again
+* 2009-01-17:2 Content translation was disabled
+* 2009-01-17:1 Headers in gettext files no longer multiply
+* 2009-01-15 Support structure for Commonist added
+* 2009-01-11:4 Export time checks for special page aliases and updated FreeCol problematic checks
+* 2009-01-11:3 Skip optionals and ignored messages in previous/next to avoid accidental translations
+* 2009-01-11:2 wgMaxShellMemory increased for sync-group.php to avoid out of memory issues
+* 2009-01-11:1 New options added to and performance improvements for autoexport.php
+* 2008-12-31 XHTML fixes in Special:LanguageStats
+* 2008-12-18 Special:TranslationStats allow passing a language parameter now and uses fontconfig if available
+* 2008-12-16 Miscellaneous problematic checks updated
+* 2008-12-15:2 Export headers for MantisBT updated
+* 2008-12-15:1 task to display untranslation optional messages was added
+* 2008-12-07 bug in export to file in web interface caused empty translations to be exported
+* 2008-11-30:1 added Special:LanguageStats for real-time translation statistics
+* 2008-11-24:2 fallback messages in the edit screen now have an edit link
+* 2008-11-24:1 added Special:Translations to show all translations of a message
+* 2008-09-09:1 add message checks for Mantis
+* 2008-09-07 add support for Mantis
+* 2008-09-05 add languageeditstats.php to provide a top list of edits per language
+* 2008-09-05 add import for groups containing "." like core-1.13
+* 2008-08-08:1 experimental sync-group to import external changes and keep them in sync
+* 2008-08-04:1 add "Other translations" link to Special:Prefexindex in sidebar toolbox
+* 2008-07-29:2 support for variables and purging and fallbacks in page translation
+* 2008-07-29:1 bug fixes and enhanced magic word support for AdvancedTranslate
+* 2008-07-26:2 proper parents for branched messages
+* 2008-07-26:1
+ - improved speed and memory usage
+ - experimental <translate> tag for wikipage translation
+* 2008-07-17:1
+- simple form to generate graphs
+- scale and count parameters for graphs
+* 2008-07-15:2 new check for unaltered namespaces in pagename messages of MediaWiki
+* 2008-07-15:1
+ - improved message checks
+ - can now work for meta groups too
+ - fixed messages not shown in the list anymore, but script still needed to find
+ the broken ones
+* 2008-07-13:2 group filter for graphs
+* 2008-07-13:1 experimental alias-export for extensions
+* 2008-07-08:1 simple edit stats with phplot
+* 2008-07-05:1 fuzzy.php was ignoring the namespace
+* 2008-07-04:2
+ - use an existing hook for quick links
+ - possible fix for Windows
+* 2008-07-04:1 poimport uses correct namespace
+* 2008-07-01:1
+ - Fix gettext message name snippets: filter / and trim after trailing
+ - Load normal comments from gettext files
+ - Quick links for viewing, using a private hook
+* 2008-06-30:3 Check for unknown vars for mediawiki type
+* 2008-06-30:2 Checks for missing and unknown variables for FreeCol
+* 2008-06-30:1 More contrast in the new default page for Special translate
+* 2008-06-29:2 Branched core messages now load translations from trunk files too
+
+=== Changes in version 9 ===
+* Released 2008-06-29
+* (bug 12955) Numbers should be localized in Translate extension
+* Support branches for core messages
+* fuzzy.php got support for --comment and --skiplanguages
+* untranslated is now the default task
+* truncate very long message names in table view
+* show definition closer to edit area
+* show the group of message when editing
+* branched core messages should now export properly
+* $wgTranslateBlacklist added to prevent edits to certain language/group combinations
+* new exporters
+* changed the way of adding MediaWiki extensions
+* support for having messages in namespaces other than NS_MEDIAWIKi
+* try to load qqq from files if not found from the database
+* added $wgTranslateAuthorBlacklist
+* new options to groupStatistics.php: --fuzzy and --skipzero
+* fuzzy respects now $wgTranslateMessageNamespaces
+* freecol not added by default
+* Messages keys can now start with capital letter, but have to be unique after normalising case and spaces
+* poimport will no longer replace translation in database with empty string
+* Support for exporting very basic Xliff files (no import yet)
+* Task for listing problematic messages
+* CreateCheckIndex.php maintenance script for creating a list of problematic messsages
+* Aliases for special pages
+* improvements to Special:Magic and support for translating special page aliases for extensions
+* more generic check framework
+* new front page for Special:Translate
+* desc and descmsg support for mediawiki extension group definitions
+
+=== Changes in version 8 ===
+* Released 2008-02-06
+* export.php for even faster exporting (only core messages supported currently)
+* Message groups can now have description or notes for translations
+* Enhanced edit view with fieldsets and message documentation
+* New variable $wgTranslateDocumentationLanguageCode
+* Fixed Special:Magic form submission and selector bug
+* --skiplanguages option for groupStatistics.php
+* Force keys to lower case in serialised index to avoid misses due to case
+* Changed fuzzy.php to assume location of commandline.inc, so that it can be run from any location
+* Preserve whitespace also in Special:Translate table
+* Run checks on editing view (current translation or submitted translation in preview) and display them to user
+* Fixed a bug where empty text area would be filled with current translation even after first page load
+* Don't fuzzy Documentation language
+* Export task was erronously outputting as plain
+* New variable $wgTranslateCC for adding custom groups
+* WikiMessageGroup class, which is easy to use class for defining a message group for wiki's custom user interface elements
+* Array keys in $wgTranslateEC and $wgTranslateAC are not used for alphabetical sorting only. MessageGroup::$id and MessageGroup::getId() are used for everything else.
+* Export documentation messages as "extracted comments" in po export
+* Import fuzzy messages as fuzzy in po import
+* Experimental support for some extensions in export.php
+* export.php can now export most supported groups
+* autoexport.php helper
+* Content-Disposition header for po export
+* Link to Special:Translate added in Special:Version
+* Possibility to add comments when editing with Special:magic
+
+=== Changes in version 7 ===
+* Released 2007-12-29
+* New HTMLSelector class
+* Cleaned user interface of Special:Translate
+* Special:TranslationChanges remembers hours option
+* Removed for a while unused setting $wgTranslateTryLoad
+* TranslateTasks::getTask returns null for invalid keys instead of throwing en error
+* New member function TranslateTask::plainOutput - Tasks can use it to request plain text output
+* Add css as a separate file instead of adding it to request output and new setting for it: $wgTranslateCssLocation
+* Filled readme for old changes a bit
+* Experimental po import
+* groupStatistics.php for creating statistics for groups
+
+=== Changes in version 6 ===
+* Released 2007-12-21
+* New classes MessageCollection and TMessage
+* Experimental po export
+* MessageGroup::fillBools has changed to getBools and usage changed a little
+* New member function MessageGroup::isMeta
+* Lots of new extensions supported
+
+=== Changes in version 5 ===
+* Released 2007-11-14
+* CreateMessageIndex.php which creates serialised index of message key -> group
+
+=== Changes in version 4 ===
+* New "task-based" interface
+* Paging of messages
+* Separation of translation and interface language
+* New mediawiki extensions available for translation
+* Support for extensions which use splitted i18n files
diff --git a/MLEB/Translate/COPYING b/MLEB/Translate/COPYING
new file mode 100644
index 00000000..e1df7522
--- /dev/null
+++ b/MLEB/Translate/COPYING
@@ -0,0 +1,346 @@
+The license text below "----" applies to all files within this distribution, other
+than those that are in a directory which contains files named "LICENSE" or
+"COPYING", or a subdirectory thereof. For those files, the license text contained in
+said file overrides any license information contained in directories of smaller depth.
+Alternative licenses are typically used for software that is provided by external
+parties, and merely packaged with this software for convenience.
+----
+ GNU GENERAL PUBLIC LICENSE
+ Version 2, June 1991
+
+ Copyright (C) 1989, 1991 Free Software Foundation, Inc.,
+ 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
+ Everyone is permitted to copy and distribute verbatim copies
+ of this license document, but changing it is not allowed.
+
+ Preamble
+
+ The licenses for most software are designed to take away your
+freedom to share and change it. By contrast, the GNU General Public
+License is intended to guarantee your freedom to share and change free
+software--to make sure the software is free for all its users. This
+General Public License applies to most of the Free Software
+Foundation's software and to any other program whose authors commit to
+using it. (Some other Free Software Foundation software is covered by
+the GNU Lesser General Public License instead.) You can apply it to
+your programs, too.
+
+ When we speak of free software, we are referring to freedom, not
+price. Our General Public Licenses are designed to make sure that you
+have the freedom to distribute copies of free software (and charge for
+this service if you wish), that you receive source code or can get it
+if you want it, that you can change the software or use pieces of it
+in new free programs; and that you know you can do these things.
+
+ To protect your rights, we need to make restrictions that forbid
+anyone to deny you these rights or to ask you to surrender the rights.
+These restrictions translate to certain responsibilities for you if you
+distribute copies of the software, or if you modify it.
+
+ For example, if you distribute copies of such a program, whether
+gratis or for a fee, you must give the recipients all the rights that
+you have. You must make sure that they, too, receive or can get the
+source code. And you must show them these terms so they know their
+rights.
+
+ We protect your rights with two steps: (1) copyright the software, and
+(2) offer you this license which gives you legal permission to copy,
+distribute and/or modify the software.
+
+ Also, for each author's protection and ours, we want to make certain
+that everyone understands that there is no warranty for this free
+software. If the software is modified by someone else and passed on, we
+want its recipients to know that what they have is not the original, so
+that any problems introduced by others will not reflect on the original
+authors' reputations.
+
+ Finally, any free program is threatened constantly by software
+patents. We wish to avoid the danger that redistributors of a free
+program will individually obtain patent licenses, in effect making the
+program proprietary. To prevent this, we have made it clear that any
+patent must be licensed for everyone's free use or not licensed at all.
+
+ The precise terms and conditions for copying, distribution and
+modification follow.
+
+ GNU GENERAL PUBLIC LICENSE
+ TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
+
+ 0. This License applies to any program or other work which contains
+a notice placed by the copyright holder saying it may be distributed
+under the terms of this General Public License. The "Program", below,
+refers to any such program or work, and a "work based on the Program"
+means either the Program or any derivative work under copyright law:
+that is to say, a work containing the Program or a portion of it,
+either verbatim or with modifications and/or translated into another
+language. (Hereinafter, translation is included without limitation in
+the term "modification".) Each licensee is addressed as "you".
+
+Activities other than copying, distribution and modification are not
+covered by this License; they are outside its scope. The act of
+running the Program is not restricted, and the output from the Program
+is covered only if its contents constitute a work based on the
+Program (independent of having been made by running the Program).
+Whether that is true depends on what the Program does.
+
+ 1. You may copy and distribute verbatim copies of the Program's
+source code as you receive it, in any medium, provided that you
+conspicuously and appropriately publish on each copy an appropriate
+copyright notice and disclaimer of warranty; keep intact all the
+notices that refer to this License and to the absence of any warranty;
+and give any other recipients of the Program a copy of this License
+along with the Program.
+
+You may charge a fee for the physical act of transferring a copy, and
+you may at your option offer warranty protection in exchange for a fee.
+
+ 2. You may modify your copy or copies of the Program or any portion
+of it, thus forming a work based on the Program, and copy and
+distribute such modifications or work under the terms of Section 1
+above, provided that you also meet all of these conditions:
+
+ a) You must cause the modified files to carry prominent notices
+ stating that you changed the files and the date of any change.
+
+ b) You must cause any work that you distribute or publish, that in
+ whole or in part contains or is derived from the Program or any
+ part thereof, to be licensed as a whole at no charge to all third
+ parties under the terms of this License.
+
+ c) If the modified program normally reads commands interactively
+ when run, you must cause it, when started running for such
+ interactive use in the most ordinary way, to print or display an
+ announcement including an appropriate copyright notice and a
+ notice that there is no warranty (or else, saying that you provide
+ a warranty) and that users may redistribute the program under
+ these conditions, and telling the user how to view a copy of this
+ License. (Exception: if the Program itself is interactive but
+ does not normally print such an announcement, your work based on
+ the Program is not required to print an announcement.)
+
+These requirements apply to the modified work as a whole. If
+identifiable sections of that work are not derived from the Program,
+and can be reasonably considered independent and separate works in
+themselves, then this License, and its terms, do not apply to those
+sections when you distribute them as separate works. But when you
+distribute the same sections as part of a whole which is a work based
+on the Program, the distribution of the whole must be on the terms of
+this License, whose permissions for other licensees extend to the
+entire whole, and thus to each and every part regardless of who wrote it.
+
+Thus, it is not the intent of this section to claim rights or contest
+your rights to work written entirely by you; rather, the intent is to
+exercise the right to control the distribution of derivative or
+collective works based on the Program.
+
+In addition, mere aggregation of another work not based on the Program
+with the Program (or with a work based on the Program) on a volume of
+a storage or distribution medium does not bring the other work under
+the scope of this License.
+
+ 3. You may copy and distribute the Program (or a work based on it,
+under Section 2) in object code or executable form under the terms of
+Sections 1 and 2 above provided that you also do one of the following:
+
+ a) Accompany it with the complete corresponding machine-readable
+ source code, which must be distributed under the terms of Sections
+ 1 and 2 above on a medium customarily used for software interchange; or,
+
+ b) Accompany it with a written offer, valid for at least three
+ years, to give any third party, for a charge no more than your
+ cost of physically performing source distribution, a complete
+ machine-readable copy of the corresponding source code, to be
+ distributed under the terms of Sections 1 and 2 above on a medium
+ customarily used for software interchange; or,
+
+ c) Accompany it with the information you received as to the offer
+ to distribute corresponding source code. (This alternative is
+ allowed only for noncommercial distribution and only if you
+ received the program in object code or executable form with such
+ an offer, in accord with Subsection b above.)
+
+The source code for a work means the preferred form of the work for
+making modifications to it. For an executable work, complete source
+code means all the source code for all modules it contains, plus any
+associated interface definition files, plus the scripts used to
+control compilation and installation of the executable. However, as a
+special exception, the source code distributed need not include
+anything that is normally distributed (in either source or binary
+form) with the major components (compiler, kernel, and so on) of the
+operating system on which the executable runs, unless that component
+itself accompanies the executable.
+
+If distribution of executable or object code is made by offering
+access to copy from a designated place, then offering equivalent
+access to copy the source code from the same place counts as
+distribution of the source code, even though third parties are not
+compelled to copy the source along with the object code.
+
+ 4. You may not copy, modify, sublicense, or distribute the Program
+except as expressly provided under this License. Any attempt
+otherwise to copy, modify, sublicense or distribute the Program is
+void, and will automatically terminate your rights under this License.
+However, parties who have received copies, or rights, from you under
+this License will not have their licenses terminated so long as such
+parties remain in full compliance.
+
+ 5. You are not required to accept this License, since you have not
+signed it. However, nothing else grants you permission to modify or
+distribute the Program or its derivative works. These actions are
+prohibited by law if you do not accept this License. Therefore, by
+modifying or distributing the Program (or any work based on the
+Program), you indicate your acceptance of this License to do so, and
+all its terms and conditions for copying, distributing or modifying
+the Program or works based on it.
+
+ 6. Each time you redistribute the Program (or any work based on the
+Program), the recipient automatically receives a license from the
+original licensor to copy, distribute or modify the Program subject to
+these terms and conditions. You may not impose any further
+restrictions on the recipients' exercise of the rights granted herein.
+You are not responsible for enforcing compliance by third parties to
+this License.
+
+ 7. If, as a consequence of a court judgment or allegation of patent
+infringement or for any other reason (not limited to patent issues),
+conditions are imposed on you (whether by court order, agreement or
+otherwise) that contradict the conditions of this License, they do not
+excuse you from the conditions of this License. If you cannot
+distribute so as to satisfy simultaneously your obligations under this
+License and any other pertinent obligations, then as a consequence you
+may not distribute the Program at all. For example, if a patent
+license would not permit royalty-free redistribution of the Program by
+all those who receive copies directly or indirectly through you, then
+the only way you could satisfy both it and this License would be to
+refrain entirely from distribution of the Program.
+
+If any portion of this section is held invalid or unenforceable under
+any particular circumstance, the balance of the section is intended to
+apply and the section as a whole is intended to apply in other
+circumstances.
+
+It is not the purpose of this section to induce you to infringe any
+patents or other property right claims or to contest validity of any
+such claims; this section has the sole purpose of protecting the
+integrity of the free software distribution system, which is
+implemented by public license practices. Many people have made
+generous contributions to the wide range of software distributed
+through that system in reliance on consistent application of that
+system; it is up to the author/donor to decide if he or she is willing
+to distribute software through any other system and a licensee cannot
+impose that choice.
+
+This section is intended to make thoroughly clear what is believed to
+be a consequence of the rest of this License.
+
+ 8. If the distribution and/or use of the Program is restricted in
+certain countries either by patents or by copyrighted interfaces, the
+original copyright holder who places the Program under this License
+may add an explicit geographical distribution limitation excluding
+those countries, so that distribution is permitted only in or among
+countries not thus excluded. In such case, this License incorporates
+the limitation as if written in the body of this License.
+
+ 9. The Free Software Foundation may publish revised and/or new versions
+of the General Public License from time to time. Such new versions will
+be similar in spirit to the present version, but may differ in detail to
+address new problems or concerns.
+
+Each version is given a distinguishing version number. If the Program
+specifies a version number of this License which applies to it and "any
+later version", you have the option of following the terms and conditions
+either of that version or of any later version published by the Free
+Software Foundation. If the Program does not specify a version number of
+this License, you may choose any version ever published by the Free Software
+Foundation.
+
+ 10. If you wish to incorporate parts of the Program into other free
+programs whose distribution conditions are different, write to the author
+to ask for permission. For software which is copyrighted by the Free
+Software Foundation, write to the Free Software Foundation; we sometimes
+make exceptions for this. Our decision will be guided by the two goals
+of preserving the free status of all derivatives of our free software and
+of promoting the sharing and reuse of software generally.
+
+ NO WARRANTY
+
+ 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
+FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN
+OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
+PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
+OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS
+TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE
+PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
+REPAIR OR CORRECTION.
+
+ 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
+WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
+REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
+INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING
+OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED
+TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY
+YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
+PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
+POSSIBILITY OF SUCH DAMAGES.
+
+ END OF TERMS AND CONDITIONS
+
+ How to Apply These Terms to Your New Programs
+
+ If you develop a new program, and you want it to be of the greatest
+possible use to the public, the best way to achieve this is to make it
+free software which everyone can redistribute and change under these terms.
+
+ To do so, attach the following notices to the program. It is safest
+to attach them to the start of each source file to most effectively
+convey the exclusion of warranty; and each file should have at least
+the "copyright" line and a pointer to where the full notice is found.
+
+ <one line to give the program's name and a brief idea of what it does.>
+ Copyright (C) <year> <name of author>
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License along
+ with this program; if not, write to the Free Software Foundation, Inc.,
+ 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+
+Also add information on how to contact you by electronic and paper mail.
+
+If the program is interactive, make it output a short notice like this
+when it starts in an interactive mode:
+
+ Gnomovision version 69, Copyright (C) year name of author
+ Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
+ This is free software, and you are welcome to redistribute it
+ under certain conditions; type `show c' for details.
+
+The hypothetical commands `show w' and `show c' should show the appropriate
+parts of the General Public License. Of course, the commands you use may
+be called something other than `show w' and `show c'; they could even be
+mouse-clicks or menu items--whatever suits your program.
+
+You should also get your employer (if you work as a programmer) or your
+school, if any, to sign a "copyright disclaimer" for the program, if
+necessary. Here is a sample; alter the names:
+
+ Yoyodyne, Inc., hereby disclaims all copyright interest in the program
+ `Gnomovision' (which makes passes at compilers) written by James Hacker.
+
+ <signature of Ty Coon>, 1 April 1989
+ Ty Coon, President of Vice
+
+This General Public License does not permit incorporating your program into
+proprietary programs. If your program is a subroutine library, you may
+consider it more useful to permit linking proprietary applications with the
+library. If this is what you want to do, use the GNU Lesser General
+Public License instead of this License.
diff --git a/MLEB/Translate/Doxyfile b/MLEB/Translate/Doxyfile
new file mode 100644
index 00000000..099d640a
--- /dev/null
+++ b/MLEB/Translate/Doxyfile
@@ -0,0 +1,220 @@
+# Doxyfile 1.5.6
+
+#---------------------------------------------------------------------------
+# Project related configuration options
+#---------------------------------------------------------------------------
+PROJECT_NAME = "Translate extension"
+#PROJECT_NUMBER = 1
+OUTPUT_DIRECTORY = doc
+CREATE_SUBDIRS = NO
+OUTPUT_LANGUAGE = English
+BRIEF_MEMBER_DESC = YES
+REPEAT_BRIEF = YES
+JAVADOC_AUTOBRIEF = YES
+INHERIT_DOCS = YES
+TAB_SIZE = 4
+DISTRIBUTE_GROUP_DOC = YES
+SUBGROUPING = YES
+#---------------------------------------------------------------------------
+# Build related configuration options
+#---------------------------------------------------------------------------
+EXTRACT_ALL = YES
+EXTRACT_PRIVATE = YES
+EXTRACT_STATIC = YES
+EXTRACT_LOCAL_CLASSES = YES
+EXTRACT_LOCAL_METHODS = NO
+HIDE_UNDOC_MEMBERS = NO
+HIDE_UNDOC_CLASSES = NO
+HIDE_FRIEND_COMPOUNDS = NO
+HIDE_IN_BODY_DOCS = YES
+INTERNAL_DOCS = NO
+CASE_SENSE_NAMES = YES
+HIDE_SCOPE_NAMES = NO
+SHOW_INCLUDE_FILES = YES
+INLINE_INFO = YES
+SORT_MEMBER_DOCS = NO
+SORT_BRIEF_DOCS = NO
+SORT_BY_SCOPE_NAME = NO
+GENERATE_TODOLIST = YES
+GENERATE_TESTLIST = YES
+GENERATE_BUGLIST = YES
+GENERATE_DEPRECATEDLIST= YES
+ENABLED_SECTIONS =
+MAX_INITIALIZER_LINES = 30
+SHOW_USED_FILES = YES
+SHOW_DIRECTORIES = NO
+#---------------------------------------------------------------------------
+# configuration options related to warning and progress messages
+#---------------------------------------------------------------------------
+QUIET = YES
+WARNINGS = YES
+WARN_IF_UNDOCUMENTED = YES
+WARN_IF_DOC_ERROR = YES
+WARN_NO_PARAMDOC = NO
+WARN_FORMAT = "$file:$line: $text"
+WARN_LOGFILE = warn.doxygen
+#---------------------------------------------------------------------------
+# configuration options related to the input files
+#---------------------------------------------------------------------------
+INPUT =
+FILE_PATTERNS = *.php *.inc
+RECURSIVE = YES
+EXCLUDE = spyc
+EXCLUDE_SYMLINKS = YES
+EXCLUDE_PATTERNS = *.i18n.php .svn {{EXCLUDE}}
+EXAMPLE_PATH =
+EXAMPLE_PATTERNS = *
+EXAMPLE_RECURSIVE = NO
+IMAGE_PATH =
+INPUT_FILTER =
+FILTER_PATTERNS =
+FILTER_SOURCE_FILES = NO
+#---------------------------------------------------------------------------
+# configuration options related to source browsing
+#---------------------------------------------------------------------------
+SOURCE_BROWSER = YES
+INLINE_SOURCES = NO
+STRIP_CODE_COMMENTS = YES
+REFERENCED_BY_RELATION = YES
+REFERENCES_RELATION = YES
+USE_HTAGS = NO
+VERBATIM_HEADERS = YES
+#---------------------------------------------------------------------------
+# configuration options related to the alphabetical class index
+#---------------------------------------------------------------------------
+ALPHABETICAL_INDEX = NO
+COLS_IN_ALPHA_INDEX = 5
+IGNORE_PREFIX =
+#---------------------------------------------------------------------------
+# configuration options related to the HTML output
+#---------------------------------------------------------------------------
+GENERATE_HTML = YES
+HTML_OUTPUT = html
+HTML_FILE_EXTENSION = .html
+HTML_HEADER =
+HTML_FOOTER =
+HTML_STYLESHEET =
+HTML_ALIGN_MEMBERS = YES
+GENERATE_HTMLHELP = NO
+CHM_FILE =
+HHC_LOCATION =
+GENERATE_CHI = NO
+BINARY_TOC = NO
+TOC_EXPAND = YES
+DISABLE_INDEX = NO
+ENUM_VALUES_PER_LINE = 4
+GENERATE_TREEVIEW = YES
+TREEVIEW_WIDTH = 250
+#---------------------------------------------------------------------------
+# configuration options related to the LaTeX output
+#---------------------------------------------------------------------------
+GENERATE_LATEX = NO
+LATEX_OUTPUT = latex
+LATEX_CMD_NAME = latex
+MAKEINDEX_CMD_NAME = makeindex
+COMPACT_LATEX = NO
+PAPER_TYPE = a4wide
+EXTRA_PACKAGES =
+LATEX_HEADER =
+PDF_HYPERLINKS = YES
+USE_PDFLATEX = YES
+LATEX_BATCHMODE = NO
+LATEX_HIDE_INDICES = NO
+#---------------------------------------------------------------------------
+# configuration options related to the RTF output
+#---------------------------------------------------------------------------
+GENERATE_RTF = NO
+RTF_OUTPUT = rtf
+COMPACT_RTF = NO
+RTF_HYPERLINKS = NO
+RTF_STYLESHEET_FILE =
+RTF_EXTENSIONS_FILE =
+#---------------------------------------------------------------------------
+# configuration options related to the man page output
+#---------------------------------------------------------------------------
+GENERATE_MAN = NO
+MAN_OUTPUT = man
+MAN_EXTENSION = .3
+MAN_LINKS = NO
+#---------------------------------------------------------------------------
+# configuration options related to the XML output
+#---------------------------------------------------------------------------
+GENERATE_XML = NO
+XML_OUTPUT = xml
+XML_SCHEMA =
+XML_DTD =
+XML_PROGRAMLISTING = YES
+#---------------------------------------------------------------------------
+# configuration options for the AutoGen Definitions output
+#---------------------------------------------------------------------------
+GENERATE_AUTOGEN_DEF = NO
+#---------------------------------------------------------------------------
+# configuration options related to the Perl module output
+#---------------------------------------------------------------------------
+GENERATE_PERLMOD = NO
+PERLMOD_LATEX = NO
+PERLMOD_PRETTY = YES
+PERLMOD_MAKEVAR_PREFIX =
+#---------------------------------------------------------------------------
+# Configuration options related to the preprocessor
+#---------------------------------------------------------------------------
+ENABLE_PREPROCESSING = YES
+MACRO_EXPANSION = NO
+EXPAND_ONLY_PREDEF = NO
+SEARCH_INCLUDES = YES
+INCLUDE_PATH =
+INCLUDE_FILE_PATTERNS =
+PREDEFINED =
+EXPAND_AS_DEFINED =
+SKIP_FUNCTION_MACROS = YES
+#---------------------------------------------------------------------------
+# Configuration::additions related to external references
+#---------------------------------------------------------------------------
+TAGFILES = ../../docs/html/tagfile.xml=http://svn.wikimedia.org/doc
+GENERATE_TAGFILE =
+ALLEXTERNALS = NO
+EXTERNAL_GROUPS = YES
+PERL_PATH = /usr/bin/perl
+#---------------------------------------------------------------------------
+# Configuration options related to the dot tool
+#---------------------------------------------------------------------------
+CLASS_DIAGRAMS = NO
+HIDE_UNDOC_RELATIONS = YES
+HAVE_DOT = NO
+CLASS_GRAPH = YES
+COLLABORATION_GRAPH = YES
+GROUP_GRAPHS = YES
+UML_LOOK = NO
+TEMPLATE_RELATIONS = NO
+INCLUDE_GRAPH = YES
+INCLUDED_BY_GRAPH = YES
+CALL_GRAPH = YES
+GRAPHICAL_HIERARCHY = YES
+DIRECTORY_GRAPH = YES
+DOT_IMAGE_FORMAT = png
+DOT_PATH =
+DOTFILE_DIRS =
+MAX_DOT_GRAPH_DEPTH = 1000
+DOT_TRANSPARENT = NO
+DOT_MULTI_TARGETS = NO
+GENERATE_LEGEND = YES
+DOT_CLEANUP = YES
+#---------------------------------------------------------------------------
+# Configuration::additions related to the search engine
+#---------------------------------------------------------------------------
+SEARCHENGINE = NO
+
+ALIASES = "type{1}= &nbsp; <strong>\1</strong> &nbsp; " \
+ "types{2}= &nbsp; <strong>\1</strong> or <strong>\2</strong> &nbsp; " \
+ "arrayof{2}=\type{Array[\1 => \2]}" \
+ "array=\type{Array}" \
+ "list{1}=\type{List of \1s}" \
+ "null=\type{Null}" \
+ "boolean=\type{Boolean}" \
+ "bool=\type{Boolean}" \
+ "integer=\type{Integer}" \
+ "int=\type{Integer}" \
+ "string=\type{String}" \
+ "mixed=\type{Mixed}" \
+ "copyright=\note" \
+ "license=\note"
diff --git a/MLEB/Translate/Gemfile b/MLEB/Translate/Gemfile
new file mode 100644
index 00000000..5306ecab
--- /dev/null
+++ b/MLEB/Translate/Gemfile
@@ -0,0 +1,7 @@
+#ruby=ruby-2.1.2
+#ruby-gemset=Translate
+
+source "https://rubygems.org"
+
+gem "mediawiki_selenium"
+gem "rubocop", require: false
diff --git a/MLEB/Translate/Gemfile.lock b/MLEB/Translate/Gemfile.lock
new file mode 100644
index 00000000..80a0ef81
--- /dev/null
+++ b/MLEB/Translate/Gemfile.lock
@@ -0,0 +1,81 @@
+GEM
+ remote: https://rubygems.org/
+ specs:
+ ast (2.0.0)
+ astrolabe (1.3.0)
+ parser (>= 2.2.0.pre.3, < 3.0)
+ builder (3.2.2)
+ childprocess (0.5.3)
+ ffi (~> 1.0, >= 1.0.11)
+ cucumber (1.3.15)
+ builder (>= 2.1.2)
+ diff-lcs (>= 1.1.3)
+ gherkin (~> 2.12)
+ multi_json (>= 1.7.5, < 2.0)
+ multi_test (>= 0.1.1)
+ data_magic (0.19)
+ faker (>= 1.1.2)
+ yml_reader (>= 0.3)
+ diff-lcs (1.2.5)
+ faker (1.3.0)
+ i18n (~> 0.5)
+ ffi (1.9.3)
+ gherkin (2.12.2)
+ multi_json (~> 1.3)
+ headless (1.0.2)
+ i18n (0.6.9)
+ json (1.8.1)
+ mediawiki_selenium (0.2.23)
+ cucumber (~> 1.3, >= 1.3.10)
+ headless (~> 1.0, >= 1.0.1)
+ json (~> 1.8, >= 1.8.1)
+ net-http-persistent (~> 2.9, >= 2.9.1)
+ page-object (~> 1.0)
+ rest-client (~> 1.6, >= 1.6.7)
+ rspec-expectations (~> 2.14, >= 2.14.4)
+ syntax (~> 1.2, >= 1.2.0)
+ mime-types (2.3)
+ multi_json (1.10.1)
+ multi_test (0.1.1)
+ net-http-persistent (2.9.4)
+ page-object (1.0)
+ page_navigation (>= 0.9)
+ selenium-webdriver (>= 2.42.0)
+ watir-webdriver (>= 0.6.9)
+ page_navigation (0.9)
+ data_magic (>= 0.14)
+ parser (2.2.0.pre.4)
+ ast (>= 1.1, < 3.0)
+ slop (~> 3.4, >= 3.4.5)
+ powerpack (0.0.9)
+ rainbow (2.0.0)
+ rest-client (1.6.7)
+ mime-types (>= 1.16)
+ rspec-expectations (2.99.0)
+ diff-lcs (>= 1.1.3, < 2.0)
+ rubocop (0.26.1)
+ astrolabe (~> 1.3)
+ parser (>= 2.2.0.pre.4, < 3.0)
+ powerpack (~> 0.0.6)
+ rainbow (>= 1.99.1, < 3.0)
+ ruby-progressbar (~> 1.4)
+ ruby-progressbar (1.6.0)
+ rubyzip (1.1.4)
+ selenium-webdriver (2.42.0)
+ childprocess (>= 0.5.0)
+ multi_json (~> 1.0)
+ rubyzip (~> 1.0)
+ websocket (~> 1.0.4)
+ slop (3.6.0)
+ syntax (1.2.0)
+ watir-webdriver (0.6.9)
+ selenium-webdriver (>= 2.18.0)
+ websocket (1.0.7)
+ yml_reader (0.3)
+
+PLATFORMS
+ ruby
+
+DEPENDENCIES
+ mediawiki_selenium
+ rubocop
diff --git a/MLEB/Translate/MediaWikiMessageChecker.php b/MLEB/Translate/MediaWikiMessageChecker.php
new file mode 100644
index 00000000..8da9d2da
--- /dev/null
+++ b/MLEB/Translate/MediaWikiMessageChecker.php
@@ -0,0 +1,375 @@
+<?php
+/**
+ * Implements MessageChecker for %MediaWiki.
+ *
+ * @file
+ * @author Niklas Laxström
+ * @copyright Copyright © 2008-2010, Niklas Laxström
+ * @license GPL-2.0+
+ */
+
+/**
+ * %MediaWiki specific message checks.
+ *
+ * @ingroup MessageCheckers
+ */
+class MediaWikiMessageChecker extends MessageChecker {
+ /**
+ * Checks if the translation uses all variables $[1-9] that the definition
+ * uses and vice versa.
+ *
+ * @param TMessage[] $messages Iterable list of TMessage objects.
+ * @param string $code Language code of the translations.
+ * @param array $warnings Array where warnings are appended to.
+ */
+ protected function wikiParameterCheck( $messages, $code, &$warnings ) {
+ parent::parameterCheck( $messages, $code, $warnings, '/\$[1-9]/' );
+ }
+
+ /**
+ * Checks if the translation uses links that are discouraged. Valid links are
+ * those that link to Special: or {{ns:special}}: or project pages trough
+ * MediaWiki messages like {{MediaWiki:helppage-url}}:. Also links in the
+ * definition are allowed.
+ *
+ * @param TMessage[] $messages Iterable list of TMessage objects.
+ * @param string $code Language code of the translations.
+ * @param array $warnings Array where warnings are appended to.
+ */
+ protected function wikiLinksCheck( $messages, $code, &$warnings ) {
+ $tc = Title::legalChars() . '#%{}';
+
+ foreach ( $messages as $message ) {
+ $key = $message->key();
+ $definition = $message->definition();
+ $translation = $message->translation();
+
+ $subcheck = 'extra';
+ $matches = $links = array();
+ preg_match_all( "/\[\[([{$tc}]+)(\\|(.+?))?]]/sDu", $translation, $matches );
+ $count = count( $matches[0] );
+ for ( $i = 0; $i < $count; $i++ ) {
+ $backMatch = preg_quote( $matches[1][$i], '/' );
+
+ if ( preg_match( "/\[\[$backMatch/", $definition ) ) {
+ continue;
+ }
+
+ $links[] = "[[{$matches[1][$i]}{$matches[2][$i]}]]";
+ }
+
+ if ( count( $links ) ) {
+ $warnings[$key][] = array(
+ array( 'links', $subcheck, $key, $code ),
+ 'translate-checks-links',
+ array( 'PARAMS', $links ),
+ array( 'COUNT', count( $links ) ),
+ );
+ }
+
+ $subcheck = 'missing';
+ $matches = $links = array();
+ preg_match_all( "/\[\[([{$tc}]+)(\\|(.+?))?]]/sDu", $definition, $matches );
+ $count = count( $matches[0] );
+ for ( $i = 0; $i < $count; $i++ ) {
+ $backMatch = preg_quote( $matches[1][$i], '/' );
+
+ if ( preg_match( "/\[\[$backMatch/", $translation ) ) {
+ continue;
+ }
+
+ $links[] = "[[{$matches[1][$i]}{$matches[2][$i]}]]";
+ }
+
+ if ( count( $links ) ) {
+ $warnings[$key][] = array(
+ array( 'links', $subcheck, $key, $code ),
+ 'translate-checks-links-missing',
+ array( 'PARAMS', $links ),
+ array( 'COUNT', count( $links ) ),
+ );
+ }
+ }
+ }
+
+ /**
+ * Checks if the \<br /> and \<hr /> tags are using the correct syntax.
+ *
+ * @param TMessage[] $messages Iterable list of TMessage objects.
+ * @param string $code Language code of the translations.
+ * @param array $warnings Array where warnings are appended to.
+ */
+ protected function XhtmlCheck( $messages, $code, &$warnings ) {
+ foreach ( $messages as $message ) {
+ $key = $message->key();
+ $translation = $message->translation();
+ if ( strpos( $translation, '<' ) === false ) {
+ continue;
+ }
+
+ $subcheck = 'invalid';
+ $tags = array(
+ '~<hr *(\\\\)?>~suDi' => '<hr />', // Wrong syntax
+ '~<br *(\\\\)?>~suDi' => '<br />',
+ '~<hr/>~suDi' => '<hr />', // Wrong syntax
+ '~<br/>~suDi' => '<br />',
+ '~<(HR|Hr|hR) />~su' => '<hr />', // Case
+ '~<(BR|Br|bR) />~su' => '<br />',
+ );
+
+ $wrongTags = array();
+ foreach ( $tags as $wrong => $correct ) {
+ $matches = array();
+ preg_match_all( $wrong, $translation, $matches, PREG_PATTERN_ORDER );
+ foreach ( $matches[0] as $wrongMatch ) {
+ $wrongTags[$wrongMatch] = "$wrongMatch → $correct";
+ }
+ }
+
+ if ( count( $wrongTags ) ) {
+ $warnings[$key][] = array(
+ array( 'xhtml', $subcheck, $key, $code ),
+ 'translate-checks-xhtml',
+ array( 'PARAMS', $wrongTags ),
+ array( 'COUNT', count( $wrongTags ) ),
+ );
+ }
+ }
+ }
+
+ /**
+ * Checks if the translation doesn't use plural while the definition has one.
+ *
+ * @param TMessage[] $messages Iterable list of TMessage objects.
+ * @param string $code Language code of the translations.
+ * @param array $warnings Array where warnings are appended to.
+ */
+ protected function pluralCheck( $messages, $code, &$warnings ) {
+ foreach ( $messages as $message ) {
+ $key = $message->key();
+ $definition = $message->definition();
+ $translation = $message->translation();
+
+ $subcheck = 'missing';
+ if (
+ stripos( $definition, '{{plural:' ) !== false &&
+ stripos( $translation, '{{plural:' ) === false
+ ) {
+ $warnings[$key][] = array(
+ array( 'plural', $subcheck, $key, $code ),
+ 'translate-checks-plural',
+ );
+ }
+ }
+ }
+
+ /**
+ * Checks if the translation uses too many plural forms
+ * @param TMessage[] $messages
+ * @param string $code
+ * @param array $warnings
+ * @since 2012-09-19
+ */
+ protected function pluralFormsCheck( $messages, $code, &$warnings ) {
+ foreach ( $messages as $message ) {
+ $key = $message->key();
+ $translation = $message->translation();
+
+ // Are there any plural forms for this language in this message?
+ if ( stripos( $translation, '{{plural:' ) === false ) {
+ return;
+ }
+
+ $plurals = self::getPluralForms( $translation );
+ $allowed = self::getPluralFormCount( $code );
+
+ foreach ( $plurals as $forms ) {
+ $forms = self::removeExplicitPluralForms( $forms );
+ $provided = count( $forms );
+
+ if ( $provided > $allowed ) {
+ $warnings[$key][] = array(
+ array( 'plural', 'forms', $key, $code ),
+ 'translate-checks-plural-forms', $provided, $allowed
+ );
+ }
+
+ // Are the last two forms identical?
+ if ( $provided > 1 && $forms[$provided - 1] === $forms[$provided - 2] ) {
+ $warnings[$key][] = array(
+ array( 'plural', 'dupe', $key, $code ),
+ 'translate-checks-plural-dupe'
+ );
+ }
+ }
+ }
+ }
+
+ /**
+ * Returns the number of plural forms %MediaWiki supports
+ * for a language.
+ * @since 2012-09-19
+ * @param string $code Language code
+ * @return int
+ */
+ public static function getPluralFormCount( $code ) {
+ $forms = Language::factory( $code )->getPluralRules();
+
+ // +1 for the 'other' form
+ return count( $forms ) + 1;
+ }
+
+ /**
+ * Ugly home made probably awfully slow looping parser
+ * that parses {{PLURAL}} instances from message and
+ * returns array of invokations having array of forms.
+ * @since 2012-09-19
+ * @param string $translation
+ * @return array[array]
+ */
+ public static function getPluralForms( $translation ) {
+ // Stores the forms from plural invocations
+ $plurals = array();
+
+ $cb = function ( $parser, $frame, $args ) use ( &$plurals ) {
+ $forms = array();
+
+ foreach ( $args as $index => $form ) {
+ // The first arg is the number, we skip it
+ if ( $index !== 0 ) {
+ // Collect the raw text
+ $forms[] = $frame->expand( $form, PPFrame::RECOVER_ORIG );
+ // Expand the text to process embedded plurals
+ $frame->expand( $form );
+ }
+ }
+ $plurals[] = $forms;
+
+ return '';
+ };
+
+ // Setup parser
+ $parser = new Parser();
+ // Load the default magic words etc now.
+ $parser->firstCallInit();
+ // So that they don't overrider our own callback
+ $parser->setFunctionHook( 'plural', $cb, Parser::SFH_NO_HASH | Parser::SFH_OBJECT_ARGS );
+
+ // Setup things needed for preprocess
+ $title = null;
+ $options = new ParserOptions( new User(), Language::factory( 'en' ) );
+
+ $parser->preprocess( $translation, $title, $options );
+
+ return $plurals;
+ }
+
+ /**
+ * Imitiates the core plural form handling by removing
+ * plural forms that start with explicit number.
+ * @since 2012-09-19
+ * @param array $forms
+ * @return array
+ */
+ public static function removeExplicitPluralForms( array $forms ) {
+ // Handle explicit 0= and 1= forms
+ foreach ( $forms as $index => $form ) {
+ if ( preg_match( '/^[0-9]+=/', $form ) ) {
+ unset( $forms[$index] );
+ }
+ }
+
+ return array_values( $forms );
+ }
+
+ /**
+ * Checks for page names that they have an untranslated namespace.
+ *
+ * @param TMessage[] $messages Iterable list of TMessage objects.
+ * @param string $code Language code of the translations.
+ * @param array $warnings Array where warnings are appended to.
+ */
+ protected function pagenameMessagesCheck( $messages, $code, &$warnings ) {
+ foreach ( $messages as $message ) {
+ $key = $message->key();
+ $definition = $message->definition();
+ $translation = $message->translation();
+
+ $subcheck = 'namespace';
+ $namespaces = 'help|project|\{\{ns:project}}|mediawiki';
+ $matches = array();
+ if ( preg_match( "/^($namespaces):[\w\s]+$/ui", $definition, $matches ) ) {
+ if ( !preg_match( "/^{$matches[1]}:.+$/u", $translation ) ) {
+ $warnings[$key][] = array(
+ array( 'pagename', $subcheck, $key, $code ),
+ 'translate-checks-pagename',
+ );
+ }
+ }
+ }
+ }
+
+ /**
+ * Checks for some miscellaneous messages with special syntax.
+ *
+ * @param TMessage[] $messages Iterable list of TMessage objects.
+ * @param string $code Language code of the translations.
+ * @param array $warnings Array where warnings are appended to.
+ */
+ protected function miscMWChecks( $messages, $code, &$warnings ) {
+ $timeList = array( 'protect-expiry-options', 'ipboptions' );
+
+ foreach ( $messages as $message ) {
+ $key = $message->key();
+ $definition = $message->definition();
+ $translation = $message->translation();
+
+ if ( in_array( strtolower( $key ), $timeList, true ) ) {
+ $defArray = explode( ',', $definition );
+ $traArray = explode( ',', $translation );
+
+ $subcheck = 'timelist-count';
+ $defCount = count( $defArray );
+ $traCount = count( $traArray );
+ if ( $defCount !== $traCount ) {
+ $warnings[$key][] = array(
+ array( 'miscmw', $subcheck, $key, $code ),
+ 'translate-checks-format',
+ wfMessage( 'translate-checks-parametersnotequal' )
+ ->numParams( $traCount, $defCount )->text()
+ );
+
+ continue;
+ }
+
+ for ( $i = 0; $i < $defCount; $i++ ) {
+ $defItems = array_map( 'trim', explode( ':', $defArray[$i] ) );
+ $traItems = array_map( 'trim', explode( ':', $traArray[$i] ) );
+
+ $subcheck = 'timelist-format';
+ if ( count( $traItems ) !== 2 ) {
+ $warnings[$key][] = array(
+ array( 'miscmw', $subcheck, $key, $code ),
+ 'translate-checks-format',
+ wfMessage(
+ 'translate-checks-malformed',
+ $traArray[$i]
+ )->text()
+ );
+ continue;
+ }
+
+ $subcheck = 'timelist-format-value';
+ if ( $traItems[1] !== $defItems[1] ) {
+ $warnings[$key][] = array(
+ array( 'miscmw', $subcheck, $key, $code ),
+ 'translate-checks-format',
+ "<samp><nowiki>$traItems[1] !== $defItems[1]</nowiki></samp>", // @todo FIXME: i18n missing.
+ );
+ continue;
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/MLEB/Translate/Message.php b/MLEB/Translate/Message.php
new file mode 100644
index 00000000..3a5b18de
--- /dev/null
+++ b/MLEB/Translate/Message.php
@@ -0,0 +1,203 @@
+<?php
+/**
+ * Classes for message objects TMessage and ThinMessage.
+ *
+ * @file
+ * @author Niklas Laxström
+ * @copyright Copyright © 2008-2010, Niklas Laxström
+ * @license GPL-2.0+
+ */
+
+/**
+ * Interface for message objects used by MessageCollection.
+ */
+abstract class TMessage {
+ /// \string Message display key.
+ protected $key;
+ /// \string Message definition.
+ protected $definition;
+ /// \string Committed in-file translation.
+ protected $infile;
+ /// \list{String} Message tags.
+ protected $tags = array();
+ /// \array Message properties.
+ protected $props = array();
+ /// \list{String} Message reviewers.
+ protected $reviewers = array();
+
+ /**
+ * Creates new message object.
+ *
+ * @param $key string Unique key identifying this message.
+ * @param $definition string The authoritave definition of this message.
+ */
+ public function __construct( $key, $definition ) {
+ $this->key = $key;
+ $this->definition = $definition;
+ }
+
+ /**
+ * Get the message key.
+ * @return string
+ */
+ public function key() {
+ return $this->key;
+ }
+
+ /**
+ * Get the message definition.
+ * @return string
+ */
+ public function definition() {
+ return $this->definition;
+ }
+
+ /**
+ * Get the message translation.
+ * @return string|null
+ */
+ abstract public function translation();
+
+ /**
+ * Set the committed translation.
+ * @param $text \string
+ */
+ public function setInfile( $text ) {
+ $this->infile = $text;
+ }
+
+ /**
+ * Returns the committed translation.
+ * @return string|null
+ */
+ public function infile() {
+ return $this->infile;
+ }
+
+ /**
+ * Add a tag for this message.
+ * @param $tag \string
+ */
+ public function addTag( $tag ) {
+ $this->tags[] = $tag;
+ }
+
+ /**
+ * Check if this message has a given tag.
+ * @param $tag \string
+ * @return \bool
+ */
+ public function hasTag( $tag ) {
+ return in_array( $tag, $this->tags, true );
+ }
+
+ /**
+ * Return all tags for this message;
+ * @return array of strings
+ */
+ public function getTags() {
+ return $this->tags;
+ }
+
+ public function setProperty( $key, $value ) {
+ $this->props[$key] = $value;
+ }
+
+ public function appendProperty( $key, $value ) {
+ if ( !isset( $this->props[$key] ) ) {
+ $this->props[$key] = array();
+ }
+ $this->props[$key][] = $value;
+ }
+
+ public function getProperty( $key ) {
+ return isset( $this->props[$key] ) ? $this->props[$key] : null;
+ }
+
+ /**
+ * Get all the available property names.
+ * @return array
+ * @since 2013-01-17
+ */
+ public function getPropertyNames() {
+ return array_keys( $this->props );
+ }
+}
+
+/**
+ * %Message object which is based on database result row. Hence the name thin.
+ * Needs fields rev_user_text and those that are needed for loading revision
+ * text.
+ */
+class ThinMessage extends TMessage {
+ // This maps properties to fields in the database result row
+ protected static $propertyMap = array(
+ 'last-translator-text' => 'rev_user_text',
+ 'last-translator-id' => 'rev_user',
+ );
+
+ /**
+ * @var stdClass Database Result Row
+ */
+ protected $row;
+
+ /**
+ * Set the database row this message is based on.
+ * @param array $row Database Result Row
+ */
+ public function setRow( $row ) {
+ $this->row = $row;
+ }
+
+ public function translation() {
+ if ( !isset( $this->row ) ) {
+ return $this->infile();
+ }
+
+ return Revision::getRevisionText( $this->row );
+ }
+
+ // Re-implemented
+ public function getProperty( $key ) {
+ if ( !isset( self::$propertyMap[$key] ) ) {
+ return parent::getProperty( $key );
+ }
+
+ $field = self::$propertyMap[$key];
+ if ( !isset( $this->row->$field ) ) {
+ return null;
+ }
+
+ return $this->row->$field;
+ }
+
+ // Re-implemented
+ public function getPropertyNames() {
+ return array_merge( parent::getPropertyNames(), array_keys( self::$propertyMap ) );
+ }
+}
+
+/**
+ * %Message object where you can directly set the translation.
+ * Hence the name fat. Authors are not supported.
+ */
+class FatMessage extends TMessage {
+ /// \string Stored translation.
+ protected $translation;
+
+ /**
+ * Set the current translation of this message.
+ * @param string $text
+ */
+ public function setTranslation( $text ) {
+ $this->translation = $text;
+ }
+
+ public function translation() {
+ if ( $this->translation === null ) {
+ return $this->infile;
+ }
+
+ return $this->translation;
+ }
+}
diff --git a/MLEB/Translate/MessageChecks.php b/MLEB/Translate/MessageChecks.php
new file mode 100644
index 00000000..df6d6046
--- /dev/null
+++ b/MLEB/Translate/MessageChecks.php
@@ -0,0 +1,443 @@
+<?php
+/**
+ * Message checking framework.
+ *
+ * @file
+ * @defgroup MessageCheckers Message Checkers
+ * @author Niklas Laxström
+ * @copyright Copyright © 2008-2013, Niklas Laxström
+ * @license GPL-2.0+
+ */
+
+/**
+ * Message checkers try to find common mistakes so that translators can fix
+ * them quickly. To implement your own checks, extend this class and add a
+ * method of the following type:
+ * @code
+ * protected function myCheck( $messages, $code, &$warnings ) {
+ * foreach ( $messages as $message ) {
+ * $key = $message->key();
+ * $translation = $message->translation();
+ * if ( strpos( $translation, 'smelly' ) !== false ) {
+ * $warnings[$key][] = array(
+ * array( 'badword', 'smelly', $key, $code ),
+ * 'translate-checks-badword', // Needs to be defined in i18n file
+ * array( 'PARAMS', 'smelly' ),
+ * );
+ * }
+ * }
+ * }
+ * @endcode
+ *
+ * Warnings are of format: <pre>
+ * $warnings[$key][] = array(
+ * # check idenfitication
+ * array( 'printf', $subcheck, $key, $code ),
+ * # check warning message
+ * 'translate-checks-parameters-unknown',
+ * # optional special param list, formatted later with Language::commaList()
+ * array( 'PARAMS', $params ),
+ * # optional number of params, formatted later with Language::formatNum()
+ * array( 'COUNT', count( $params ) ),
+ * 'Any other parameters to the message',
+ * </pre>
+ *
+ * @ingroup MessageCheckers
+ */
+class MessageChecker {
+ protected $checks = array();
+ protected $group = null;
+ private static $globalBlacklist = null;
+
+ /**
+ * Constructs a suitable checker for given message group.
+ * @param $group MessageGroup
+ */
+ public function __construct( MessageGroup $group ) {
+ global $wgTranslateCheckBlacklist;
+
+ if ( $wgTranslateCheckBlacklist === false ) {
+ self::$globalBlacklist = array();
+ } elseif ( self::$globalBlacklist === null ) {
+ $file = $wgTranslateCheckBlacklist;
+ $list = PHPVariableLoader::loadVariableFromPHPFile( $file, 'checkBlacklist' );
+ $keys = array( 'group', 'check', 'subcheck', 'code', 'message' );
+
+ foreach ( $list as $key => $pattern ) {
+ foreach ( $keys as $checkKey ) {
+ if ( !isset( $pattern[$checkKey] ) ) {
+ $list[$key][$checkKey] = '#';
+ } elseif ( is_array( $pattern[$checkKey] ) ) {
+ $list[$key][$checkKey] =
+ array_map( array( $this, 'foldValue' ), $pattern[$checkKey] );
+ } else {
+ $list[$key][$checkKey] = $this->foldValue( $pattern[$checkKey] );
+ }
+ }
+ }
+
+ self::$globalBlacklist = $list;
+ }
+
+ $this->group = $group;
+ }
+
+ /**
+ * Normalises check keys.
+ * @param string $value check key
+ * @return string Normalised check key
+ */
+ protected function foldValue( $value ) {
+ return str_replace( ' ', '_', strtolower( $value ) );
+ }
+
+ /**
+ * Set the tests for this checker. Array of callables with descriptive keys.
+ * @param array $checks List of checks (suitable methods in this class)
+ */
+ public function setChecks( $checks ) {
+ foreach ( $checks as $k => $c ) {
+ if ( !is_callable( $c ) ) {
+ unset( $checks[$k] );
+ wfWarn( "Check function for check $k is not callable" );
+ }
+ }
+ $this->checks = $checks;
+ }
+
+ /**
+ * Adds one tests for this checker.
+ * @see setChecks()
+ * @param callable $check
+ */
+ public function addCheck( $check ) {
+ if ( is_callable( $check ) ) {
+ $this->checks[] = $check;
+ }
+ }
+
+ /**
+ * Checks one message, returns array of warnings that can be passed to
+ * OutputPage::addWikiMsg or similar.
+ *
+ * @param TMessage $message
+ * @param string $code Language code
+ * @return array
+ */
+ public function checkMessage( TMessage $message, $code ) {
+ $warningsArray = array();
+ $messages = array( $message );
+
+ foreach ( $this->checks as $check ) {
+ call_user_func_array( $check, array( $messages, $code, &$warningsArray ) );
+ }
+
+ $warningsArray = $this->filterWarnings( $warningsArray );
+ if ( !count( $warningsArray ) ) {
+ return array();
+ }
+
+ $warnings = $warningsArray[$message->key()];
+ $warnings = $this->fixMessageParams( $warnings );
+
+ return $warnings;
+ }
+
+ /**
+ * Checks one message, returns true if any check matches.
+ * @param TMessage $message
+ * @param string $code Language code
+ * @return bool True if there is a problem, false otherwise.
+ */
+ public function checkMessageFast( TMessage $message, $code ) {
+ $warningsArray = array();
+ $messages = array( $message );
+
+ foreach ( $this->checks as $check ) {
+ call_user_func_array( $check, array( $messages, $code, &$warningsArray ) );
+ if ( count( $warningsArray ) ) {
+ return true;
+ }
+ }
+
+ return false;
+ }
+
+ /**
+ * Filters warnings defined in check-blacklist.php.
+ * @param array $warningsArray List of warnings produces by checkMessage().
+ * @return array List of filtered warnings.
+ */
+ protected function filterWarnings( $warningsArray ) {
+ $groupId = $this->group->getId();
+
+ // There is an array of messages...
+ foreach ( $warningsArray as $mkey => $warnings ) {
+ // ... each which has an array of warnings.
+ foreach ( $warnings as $wkey => $warning ) {
+ $check = array_shift( $warning );
+ // Check if the key is blacklisted...
+ foreach ( self::$globalBlacklist as $pattern ) {
+ if ( !$this->match( $pattern['group'], $groupId ) ) {
+ continue;
+ }
+ if ( !$this->match( $pattern['check'], $check[0] ) ) {
+ continue;
+ }
+ if ( !$this->match( $pattern['subcheck'], $check[1] ) ) {
+ continue;
+ }
+ if ( !$this->match( $pattern['message'], $check[2] ) ) {
+ continue;
+ }
+ if ( !$this->match( $pattern['code'], $check[3] ) ) {
+ continue;
+ }
+
+ // If all of the aboce match, filter the check
+ unset( $warningsArray[$mkey][$wkey] );
+ }
+ }
+ }
+
+ return $warningsArray;
+ }
+
+ /**
+ * Matches check information against blacklist pattern.
+ * @param string $pattern
+ * @param string $value The actual value in the warnings produces by the check
+ * @return bool True of the pattern matches the value.
+ */
+ protected function match( $pattern, $value ) {
+ if ( $pattern === '#' ) {
+ return true;
+ } elseif ( is_array( $pattern ) ) {
+ return in_array( strtolower( $value ), $pattern, true );
+ } else {
+ return strtolower( $value ) === $pattern;
+ }
+ }
+
+ /**
+ * Converts the special params to something nice. Currently useless, but
+ * useful if in the future blacklist can work with parameter level too.
+ * @param array $warnings List of warnings
+ * @throws MWException
+ * @return array List of warning messages with parameters.
+ */
+ protected function fixMessageParams( $warnings ) {
+ $lang = RequestContext::getMain()->getLanguage();
+
+ foreach ( $warnings as $wkey => $warning ) {
+ array_shift( $warning );
+ $message = array( array_shift( $warning ) );
+
+ foreach ( $warning as $param ) {
+ if ( !is_array( $param ) ) {
+ $message[] = $param;
+ } else {
+ list( $type, $value ) = $param;
+ if ( $type === 'COUNT' ) {
+ $message[] = $lang->formatNum( $value );
+ } elseif ( $type === 'PARAMS' ) {
+ $message[] = $lang->commaList( $value );
+ } else {
+ throw new MWException( "Unknown type $type" );
+ }
+ }
+ }
+ $warnings[$wkey] = $message;
+ }
+
+ return $warnings;
+ }
+
+ /**
+ * Compares two arrays return items that don't exist in the latter.
+ * @param array $defs
+ * @param array $trans
+ * @return array Items of $defs that are not in $trans.
+ */
+ protected static function compareArrays( $defs, $trans ) {
+ $missing = array();
+
+ foreach ( $defs as $defVar ) {
+ if ( !in_array( $defVar, $trans ) ) {
+ $missing[] = $defVar;
+ }
+ }
+
+ return $missing;
+ }
+
+ /**
+ * Checks for missing and unknown printf formatting characters in
+ * translations.
+ * @param TMessage[] $messages Iterable list of TMessage objects.
+ * @param string $code Language code
+ * @param array $warnings Array where warnings are appended to.
+ */
+ protected function printfCheck( $messages, $code, array &$warnings ) {
+ $this->parameterCheck( $messages, $code, $warnings, '/%(\d+\$)?[sduf]/U' );
+ }
+
+ /**
+ * Checks for missing and unknown Ruby variables (%{var}) in
+ * translations.
+ * @param TMessage[] $messages Iterable list of TMessage objects.
+ * @param string $code Language code
+ * @param array $warnings Array where warnings are appended to.
+ */
+ protected function rubyVariableCheck( $messages, $code, array &$warnings ) {
+ $this->parameterCheck( $messages, $code, $warnings, '/%{[a-zA-Z_]+}/' );
+ }
+
+ /**
+ * Checks for missing and unknown python string interpolation operators in
+ * translations.
+ * @param TMessage[] $messages Iterable list of TMessage objects.
+ * @param string $code Language code
+ * @param array $warnings Array where warnings are appended to.
+ */
+ protected function pythonInterpolationCheck( $messages, $code, array &$warnings ) {
+ $pattern = '/\%\([a-zA-Z0-9]*?\)[diouxXeEfFgGcrs]/U';
+ $this->parameterCheck( $messages, $code, $warnings, $pattern );
+ }
+
+ /**
+ * Checks if the translation has even number of opening and closing
+ * parentheses. {, [ and ( are checked.
+ * @param TMessage[] $messages Iterable list of TMessage objects.
+ * @param string $code Language code
+ * @param array $warnings Array where warnings are appended to.
+ */
+ protected function braceBalanceCheck( $messages, $code, array &$warnings ) {
+ foreach ( $messages as $message ) {
+ $key = $message->key();
+ $translation = $message->translation();
+ $translation = preg_replace( '/[^{}[\]()]/u', '', $translation );
+
+ $subcheck = 'brace';
+ $counts = array(
+ '{' => 0, '}' => 0,
+ '[' => 0, ']' => 0,
+ '(' => 0, ')' => 0,
+ );
+
+ $len = strlen( $translation );
+ for ( $i = 0; $i < $len; $i++ ) {
+ $char = $translation[$i];
+ $counts[$char]++;
+ }
+
+ $balance = array();
+ if ( $counts['['] !== $counts[']'] ) {
+ $balance[] = '[]: ' . ( $counts['['] - $counts[']'] );
+ }
+
+ if ( $counts['{'] !== $counts['}'] ) {
+ $balance[] = '{}: ' . ( $counts['{'] - $counts['}'] );
+ }
+
+ if ( $counts['('] !== $counts[')'] ) {
+ $balance[] = '(): ' . ( $counts['('] - $counts[')'] );
+ }
+
+ if ( count( $balance ) ) {
+ $warnings[$key][] = array(
+ array( 'balance', $subcheck, $key, $code ),
+ 'translate-checks-balance',
+ array( 'PARAMS', $balance ),
+ array( 'COUNT', count( $balance ) ),
+ );
+ }
+ }
+ }
+
+ /**
+ * Checks for missing and unknown printf formatting characters in
+ * translations.
+ * @param TMessage[] $messages Iterable list of TMessage objects.
+ * @param string $code Language code
+ * @param array $warnings Array where warnings are appended to.
+ * @param string $pattern Regular expression for matching variables.
+ */
+ protected function parameterCheck( $messages, $code, array &$warnings, $pattern ) {
+ foreach ( $messages as $message ) {
+ $key = $message->key();
+ $definition = $message->definition();
+ $translation = $message->translation();
+
+ preg_match_all( $pattern, $definition, $defVars );
+ preg_match_all( $pattern, $translation, $transVars );
+
+ // Check for missing variables in the translation
+ $subcheck = 'missing';
+ $params = self::compareArrays( $defVars[0], $transVars[0] );
+
+ if ( count( $params ) ) {
+ $warnings[$key][] = array(
+ array( 'variable', $subcheck, $key, $code ),
+ 'translate-checks-parameters',
+ array( 'PARAMS', $params ),
+ array( 'COUNT', count( $params ) ),
+ );
+ }
+
+ // Check for unknown variables in the translatio
+ $subcheck = 'unknown';
+ $params = self::compareArrays( $transVars[0], $defVars[0] );
+
+ if ( count( $params ) ) {
+ $warnings[$key][] = array(
+ array( 'variable', $subcheck, $key, $code ),
+ 'translate-checks-parameters-unknown',
+ array( 'PARAMS', $params ),
+ array( 'COUNT', count( $params ) ),
+ );
+ }
+ }
+ }
+
+ /**
+ * @param TMessage[] $messages Iterable list of TMessage objects.
+ * @param string $code Language code
+ * @param array $warnings Array where warnings are appended to.
+ */
+ protected function balancedTagsCheck( $messages, $code, array &$warnings ) {
+ foreach ( $messages as $message ) {
+ $key = $message->key();
+ $translation = $message->translation();
+
+ libxml_use_internal_errors( true );
+ libxml_clear_errors();
+ $doc = simplexml_load_string( Xml::tags( 'root', null, $translation ) );
+ if ( $doc ) {
+ continue;
+ }
+
+ $errors = libxml_get_errors();
+ $params = array();
+ foreach ( $errors as $error ) {
+ if ( $error->code !== 76 && $error->code !== 73 ) {
+ continue;
+ }
+ $params[] = "<br />• [{$error->code}] $error->message";
+ }
+
+ if ( !count( $params ) ) {
+ continue;
+ }
+
+ $warnings[$key][] = array(
+ array( 'tags', 'balance', $key, $code ),
+ 'translate-checks-format',
+ array( 'PARAMS', $params ),
+ array( 'COUNT', count( $params ) ),
+ );
+ }
+
+ libxml_clear_errors();
+ }
+}
diff --git a/MLEB/Translate/MessageCollection.php b/MLEB/Translate/MessageCollection.php
new file mode 100644
index 00000000..07572867
--- /dev/null
+++ b/MLEB/Translate/MessageCollection.php
@@ -0,0 +1,989 @@
+<?php
+/**
+ * This file contains classes that implements message collections.
+ *
+ * @file
+ * @author Niklas Laxström
+ * @copyright Copyright © 2007-2011, Niklas Laxström
+ * @license GPL-2.0+
+ */
+
+/**
+ * Core message collection class.
+ *
+ * Message group is collection of messages of one message group in one
+ * language. It handles loading of the messages in one huge batch, and also
+ * stores information that can be used to filter the collection in different
+ * ways.
+ */
+class MessageCollection implements ArrayAccess, Iterator, Countable {
+ /**
+ * @var string Language code.
+ */
+ public $code;
+
+ /**
+ * @var MessageDefinitions
+ * */
+ protected $definitions = null;
+
+ /**
+ * @var array array( %Message key => translation, ... )
+ */
+ protected $infile = array();
+
+ // Keys and messages.
+
+ /**
+ * @var array array( %Message display key => database key, ... )
+ */
+ protected $keys = array();
+
+ /**
+ * @var array array( %Message String => TMessage, ... )
+ */
+ protected $messages = array();
+
+ /**
+ * @var array
+ */
+ protected $reverseMap;
+
+ // Database resources
+
+ /// \type{Database Result Resource} Stored message existence and fuzzy state.
+ protected $dbInfo = null;
+
+ /// \type{Database Result Resource} Stored translations in database.
+ protected $dbData = null;
+
+ /// \type{Database Result Resource} Stored reviews in database.
+ protected $dbReviewData = array();
+
+ /**
+ * Tags, copied to thin messages
+ * tagtype => keys
+ */
+ protected $tags = array();
+
+ /**
+ * Properties, copied to thin messages
+ */
+ protected $properties = array();
+
+ /**
+ * @var string[] Authors.
+ */
+ protected $authors = array();
+
+ /**
+ * Constructors. Use newFromDefinitions() instead.
+ * @param string $code Language code.
+ */
+ public function __construct( $code ) {
+ $this->code = $code;
+ }
+
+ /**
+ * Construct a new message collection from definitions.
+ * @param MessageDefinitions $definitions
+ * @param string $code Language code.
+ * @return MessageCollection
+ */
+ public static function newFromDefinitions( MessageDefinitions $definitions, $code ) {
+ $collection = new self( $code );
+ $collection->definitions = $definitions;
+ $collection->resetForNewLanguage( $code );
+
+ return $collection;
+ }
+
+ /**
+ * Constructs a new empty message collection. Suitable for example for testing.
+ * @param string $code Language code.
+ * @return MessageCollection
+ */
+ public static function newEmpty( $code ) {
+ }
+
+ /**
+ * @return string
+ */
+ public function getLanguage() {
+ return $this->code;
+ }
+
+ // Data setters
+
+ /**
+ * Set translation from file, as opposed to translation which only exists
+ * in the wiki because they are not exported and committed yet.
+ * @param array $messages \arrayof{String,String} Array of translations indexed
+ * by display key.
+ */
+ public function setInfile( array $messages ) {
+ $this->infile = $messages;
+ }
+
+ /**
+ * Set message tags.
+ * @param string $type Tag type, usually ignored or optional.
+ * @param string[] $keys List of display keys.
+ */
+ public function setTags( $type, array $keys ) {
+ $this->tags[$type] = $keys;
+ }
+
+ /**
+ * Returns list of available message keys. This is affected by filtering.
+ * @return array List of database keys indexed by display keys.
+ */
+ public function keys() {
+ return $this->keys;
+ }
+
+ /**
+ * Returns list of titles of messages that are used in this collection after filtering.
+ * @return Title[]
+ * @since 2011-12-28
+ */
+ public function getTitles() {
+ return array_values( $this->keys );
+ }
+
+ /**
+ * Returns list of message keys that are used in this collection after filtering.
+ * @return string[]
+ * @since 2011-12-28
+ */
+ public function getMessageKeys() {
+ return array_keys( $this->keys );
+ }
+
+ /**
+ * Returns stored message tags.
+ * @param string $type Tag type, usually optional or ignored.
+ * @return string[] List of keys with given tag.
+ */
+ public function getTags( $type ) {
+ return isset( $this->tags[$type] ) ? $this->tags[$type] : array();
+ }
+
+ /**
+ * Lists all translators that have contributed to the latest revisions of
+ * each translation. Causes translations to be loaded from the database.
+ * Is not affected by filters.
+ * @return string[] List of usernames.
+ */
+ public function getAuthors() {
+ $this->loadTranslations();
+
+ $authors = array_flip( $this->authors );
+
+ foreach ( $this->messages as $m ) {
+ // Check if there are authors
+ /**
+ * @var TMessage $m
+ */
+ $author = $m->getProperty( 'last-translator-text' );
+
+ if ( $author === null ) {
+ continue;
+ }
+
+ if ( !isset( $authors[$author] ) ) {
+ $authors[$author] = 1;
+ } else {
+ $authors[$author]++;
+ }
+ }
+
+ # arsort( $authors, SORT_NUMERIC );
+ ksort( $authors );
+ $fuzzyBot = FuzzyBot::getName();
+ foreach ( $authors as $author => $edits ) {
+ if ( $author !== $fuzzyBot ) {
+ $filteredAuthors[] = $author;
+ }
+ }
+
+ return isset( $filteredAuthors ) ? $filteredAuthors : array();
+ }
+
+ /**
+ * Add external authors (usually from the file).
+ * @param string[] $authors List of authors.
+ * @param string $mode Either append or set authors.
+ * @throws MWException If invalid $mode given.
+ */
+ public function addCollectionAuthors( $authors, $mode = 'append' ) {
+ switch ( $mode ) {
+ case 'append':
+ $authors = array_merge( $this->authors, $authors );
+ break;
+ case 'set':
+ break;
+ default:
+ throw new MWException( "Invalid mode $mode" );
+ }
+
+ $this->authors = array_unique( $authors );
+ }
+
+ // Data modifiers
+
+ /**
+ * Loads all message data. Must be called before accessing the messages
+ * with ArrayAccess or iteration. Must be called before filtering for
+ * $dbtype to have an effect.
+ * @param int $dbtype One of DB_* constants.
+ */
+ public function loadTranslations( $dbtype = DB_SLAVE ) {
+ $this->loadData( $this->keys, $dbtype );
+ $this->loadInfo( $this->keys, $dbtype );
+ $this->loadReviewInfo( $this->keys, $dbtype );
+ $this->initMessages();
+ }
+
+ /**
+ * Some statistics scripts for example loop the same collection over every
+ * language. This is a shortcut which keeps tags and definitions.
+ * @param string $code
+ */
+ public function resetForNewLanguage( $code ) {
+ $this->code = $code;
+ $this->keys = $this->fixKeys();
+ $this->dbInfo = null;
+ $this->dbData = null;
+ $this->dbReviewData = array();
+ $this->messages = null;
+ $this->infile = array();
+ $this->authors = array();
+
+ unset( $this->tags['fuzzy'] );
+ $this->reverseMap = null;
+ }
+
+ /**
+ * For paging messages. One can count messages before and after slice.
+ * @param string $offset
+ * @param int $limit
+ * @return array Offsets that can be used for paging backwards and forwards
+ * @since String offests and return value since 2013-01-10
+ */
+ public function slice( $offset, $limit ) {
+ $indexes = array_keys( $this->keys );
+
+ if ( $offset === '' ) {
+ $offset = 0;
+ }
+
+ // Handle string offsets
+ if ( !ctype_digit( strval( $offset ) ) ) {
+ $count = 0;
+ foreach ( array_keys( $this->keys ) as $index ) {
+ if ( $index === $offset ) {
+ break;
+ }
+ $count++;
+ }
+ // Now offset is always an integer, suitable for array_slice
+ $offset = $count;
+ }
+
+ // False means that cannot go back or forward
+ $backwardsOffset = $forwardsOffset = false;
+ // Backwards paging uses numerical indexes, see below
+
+ // Can only skip this if no offset has been provided or the
+ // offset is zero. (offset - limit ) > 1 does not work, because
+ // users can end in offest=2, limit=5 and can't see the first
+ // two messages. That's also why it is capped into zero with
+ // max(). And finally make the offsets to be strings even if
+ // they are numbers in this case.
+ if ( $offset > 0 ) {
+ $backwardsOffset = strval( max( 0, $offset - $limit ) );
+ }
+
+ // Forwards paging uses keys. If user opens view Untranslated,
+ // translates some messages and then clicks next, the first
+ // message visible in the page is the first message not shown
+ // in the previous page (unless someone else translated it at
+ // the same time). If we used integer offsets, we would skip
+ // same number of messages that were translated, because they
+ // are no longer in the list. For backwards paging this is not
+ // such a big issue, so it still uses integer offsets, because
+ // we would need to also implement "direction" to have it work
+ // correctly.
+ if ( isset( $indexes[$offset + $limit] ) ) {
+ $forwardsOffset = $indexes[$offset + $limit];
+ }
+
+ $this->keys = array_slice( $this->keys, $offset, $limit, true );
+
+ return array( $backwardsOffset, $forwardsOffset, $offset );
+ }
+
+ /**
+ * Filters messages based on some condition. Some filters cause data to be
+ * loaded from the database. PAGEINFO: existence and fuzzy tags.
+ * TRANSLATIONS: translations for every message. It is recommended to first
+ * filter with messages that do not need those. It is recommended to add
+ * translations from file with addInfile, and it is needed for changed
+ * filter to work.
+ *
+ * @param string $type
+ * - fuzzy: messages with fuzzy tag (PAGEINFO)
+ * - optional: messages marked for optional.
+ * - ignored: messages which are not for translation.
+ * - hastranslation: messages which have translation (be if fuzzy or not)
+ * (PAGEINFO, *INFILE).
+ * - translated: messages which have translation which is not fuzzy
+ * (PAGEINFO, *INFILE).
+ * - changed: translation in database differs from infile.
+ * (INFILE, TRANSLATIONS)
+ * @param bool $condition Whether to return messages which do not satisfy
+ * the given filter condition (true), or only which do (false).
+ * @param mixed $value Value for properties filtering.
+ * @throws MWException If given invalid filter name.
+ */
+ public function filter( $type, $condition = true, $value = null ) {
+ if ( !in_array( $type, self::getAvailableFilters(), true ) ) {
+ throw new MWException( "Unknown filter $type" );
+ }
+ $this->applyFilter( $type, $condition, $value );
+ }
+
+ /**
+ * @return array
+ */
+ public static function getAvailableFilters() {
+ return array(
+ 'fuzzy',
+ 'optional',
+ 'ignored',
+ 'hastranslation',
+ 'changed',
+ 'translated',
+ 'reviewer',
+ 'last-translator',
+ );
+ }
+
+ /**
+ * Really apply a filter. Some filters need multiple conditions.
+ * @param string $filter Filter name.
+ * @param bool $condition Whether to return messages which do not satisfy
+ * @param mixed $value Value for properties filtering.
+ * the given filter condition (true), or only which do (false).
+ * @throws MWException
+ */
+ protected function applyFilter( $filter, $condition, $value ) {
+ $keys = $this->keys;
+ if ( $filter === 'fuzzy' ) {
+ $keys = $this->filterFuzzy( $keys, $condition );
+ } elseif ( $filter === 'hastranslation' ) {
+ $keys = $this->filterHastranslation( $keys, $condition );
+ } elseif ( $filter === 'translated' ) {
+ $fuzzy = $this->filterFuzzy( $keys, false );
+ $hastranslation = $this->filterHastranslation( $keys, false );
+ // Fuzzy messages are not counted as translated messages
+ $translated = $this->filterOnCondition( $hastranslation, $fuzzy );
+ $keys = $this->filterOnCondition( $keys, $translated, $condition );
+ } elseif ( $filter === 'changed' ) {
+ $keys = $this->filterChanged( $keys, $condition );
+ } elseif ( $filter === 'reviewer' ) {
+ $keys = $this->filterReviewer( $keys, $condition, $value );
+ } elseif ( $filter === 'last-translator' ) {
+ $keys = $this->filterLastTranslator( $keys, $condition, $value );
+ } else {
+ // Filter based on tags.
+ if ( !isset( $this->tags[$filter] ) ) {
+ if ( $filter !== 'optional' && $filter !== 'ignored' ) {
+ throw new MWException( "No tagged messages for custom filter $filter" );
+ }
+ $keys = $this->filterOnCondition( $keys, array(), $condition );
+ } else {
+ $taggedKeys = array_flip( $this->tags[$filter] );
+ $keys = $this->filterOnCondition( $keys, $taggedKeys, $condition );
+ }
+ }
+
+ $this->keys = $keys;
+ }
+
+ /**
+ * Filters list of keys with other list of keys according to the condition.
+ * In other words, you have a list of keys, and you have determined list of
+ * keys that have some feature. Now you can either take messages that are
+ * both in the first list and the second list OR are in the first list but
+ * are not in the second list (conditition = true and false respectively).
+ * What makes this more complex is that second list of keys might not be a
+ * subset of the first list of keys.
+ * @param string[] $keys List of keys to filter.
+ * @param string[] $condKeys Second list of keys for filtering.
+ * @param bool $condition True (default) to return keys which are on first
+ * and second list, false to return keys which are on the first but not on
+ * second.
+ * @return string[] Filtered keys.
+ */
+ protected function filterOnCondition( array $keys, array $condKeys, $condition = true ) {
+ if ( $condition === true ) {
+ // Delete $condKeys from $keys
+ foreach ( array_keys( $condKeys ) as $key ) {
+ unset( $keys[$key] );
+ }
+ } else {
+ // Keep the keys which are in $condKeys
+ foreach ( array_keys( $keys ) as $key ) {
+ if ( !isset( $condKeys[$key] ) ) {
+ unset( $keys[$key] );
+ }
+ }
+ }
+
+ return $keys;
+ }
+
+ /**
+ * Filters list of keys according to whether the translation is fuzzy.
+ * @param string[] $keys List of keys to filter.
+ * @param bool $condition True to filter away fuzzy translations, false
+ * to filter non-fuzzy translations.
+ * @return string[] Filtered keys.
+ */
+ protected function filterFuzzy( array $keys, $condition ) {
+ $this->loadInfo( $keys );
+
+ $origKeys = array();
+ if ( $condition === false ) {
+ $origKeys = $keys;
+ }
+
+ foreach ( $this->dbInfo as $row ) {
+ if ( $row->rt_type !== null ) {
+ unset( $keys[$this->rowToKey( $row )] );
+ }
+ }
+
+ if ( $condition === false ) {
+ $keys = array_diff( $origKeys, $keys );
+ }
+
+ return $keys;
+ }
+
+ /**
+ * Filters list of keys according to whether they have a translation.
+ * @param string[] $keys List of keys to filter.
+ * @param bool $condition True to filter away translated, false
+ * to filter untranslated.
+ * @return string[] Filtered keys.
+ */
+ protected function filterHastranslation( array $keys, $condition ) {
+ $this->loadInfo( $keys );
+
+ $origKeys = array();
+ if ( $condition === false ) {
+ $origKeys = $keys;
+ }
+
+ foreach ( $this->dbInfo as $row ) {
+ unset( $keys[$this->rowToKey( $row )] );
+ }
+
+ // Check also if there is something in the file that is not yet in the database
+ foreach ( array_keys( $this->infile ) as $inf ) {
+ unset( $keys[$inf] );
+ }
+
+ // Remove the messages which do not have a translation from the list
+ if ( $condition === false ) {
+ $keys = array_diff( $origKeys, $keys );
+ }
+
+ return $keys;
+ }
+
+ /**
+ * Filters list of keys according to whether the current translation
+ * differs from the commited translation.
+ * @param string[] $keys List of keys to filter.
+ * @param bool $condition True to filter changed translations, false
+ * to filter unchanged translations.
+ * @return string[] Filtered keys.
+ */
+ protected function filterChanged( array $keys, $condition ) {
+ $this->loadData( $keys );
+
+ $origKeys = array();
+ if ( $condition === false ) {
+ $origKeys = $keys;
+ }
+
+ foreach ( $this->dbData as $row ) {
+ $mkey = $this->rowToKey( $row );
+ if ( !isset( $this->infile[$mkey] ) ) {
+ continue;
+ }
+
+ $text = Revision::getRevisionText( $row );
+ if ( $this->infile[$mkey] === $text ) {
+ // Remove unchanged messages from the list
+ unset( $keys[$mkey] );
+ }
+ }
+
+ // Remove the messages which have not changed from the list
+ if ( $condition === false ) {
+ $keys = $this->filterOnCondition( $keys, $origKeys, false );
+ }
+
+ return $keys;
+ }
+
+ /**
+ * Filters list of keys according to whether the user has accepted them.
+ * @param string[] $keys List of keys to filter.
+ * @param bool $condition True to remove translatations $user has accepted,
+ * false to get only translations accepted by $user.
+ * @param int $user Userid
+ * @return string[] Filtered keys.
+ */
+ protected function filterReviewer( array $keys, $condition, $user ) {
+ $this->loadReviewInfo( $keys );
+ $origKeys = $keys;
+
+ /* This removes messages from the list which have certain
+ * reviewer (among others) */
+ $userId = intval( $user );
+ foreach ( $this->dbReviewData as $row ) {
+ if ( $user === null || intval( $row->trr_user ) === $userId ) {
+ unset( $keys[$this->rowToKey( $row )] );
+ }
+ }
+
+ if ( $condition === false ) {
+ $keys = array_diff( $origKeys, $keys );
+ }
+
+ return $keys;
+ }
+
+ /**
+ * @param string[] $keys List of keys to filter.
+ * @param bool $condition True to remove translatations where last translator is $user
+ * false to get only last translations done by others.
+ * @param int $user Userid
+ * @return string[] Filtered keys.
+ */
+ protected function filterLastTranslator( array $keys, $condition, $user ) {
+ $this->loadData( $keys );
+ $origKeys = $keys;
+
+ $user = intval( $user );
+ foreach ( $this->dbData as $row ) {
+ if ( intval( $row->rev_user ) === $user ) {
+ unset( $keys[$this->rowToKey( $row )] );
+ }
+ }
+
+ if ( $condition === false ) {
+ $keys = array_diff( $origKeys, $keys );
+ }
+
+ return $keys;
+ }
+
+ /**
+ * Takes list of keys and converts them into database format.
+ * @return array ( string => string ) Array of keys in database format indexed by display format.
+ */
+ protected function fixKeys() {
+ $newkeys = array();
+ // array( namespace, pagename )
+ $pages = $this->definitions->getPages();
+ $code = $this->code;
+
+ foreach ( $pages as $key => $page ) {
+ list ( $namespace, $pagename ) = $page;
+ $title = Title::makeTitleSafe( $namespace, "$pagename/$code" );
+ if ( !$title ) {
+ wfWarn( "Invalid title $namespace:$pagename/$code" );
+ continue;
+ }
+ $newkeys[$key] = $title;
+ }
+
+ return $newkeys;
+ }
+
+ /**
+ * Loads existence and fuzzy state for given list of keys.
+ * @param string[] $keys List of keys in database format.
+ * @param int $dbtype One of DB_* constants.
+ */
+ protected function loadInfo( array $keys, $dbtype = DB_SLAVE ) {
+ if ( $this->dbInfo !== null ) {
+ return;
+ }
+
+ $this->dbInfo = array();
+
+ if ( !count( $keys ) ) {
+ return;
+ }
+
+ $dbr = wfGetDB( $dbtype );
+ $tables = array( 'page', 'revtag' );
+ $fields = array( 'page_namespace', 'page_title', 'rt_type' );
+ $conds = $this->getTitleConds( $dbr );
+ $joins = array( 'revtag' =>
+ array(
+ 'LEFT JOIN',
+ array( 'page_id=rt_page', 'page_latest=rt_revision', 'rt_type' => RevTag::getType( 'fuzzy' ) )
+ )
+ );
+
+ $this->dbInfo = $dbr->select( $tables, $fields, $conds, __METHOD__, array(), $joins );
+ }
+
+ /**
+ * Loads reviewers for given messages.
+ * @param string[] $keys List of keys in database format.
+ * @param int $dbtype One of DB_* constants.
+ */
+ protected function loadReviewInfo( array $keys, $dbtype = DB_SLAVE ) {
+ if ( $this->dbReviewData !== array() ) {
+ return;
+ }
+
+ $this->dbReviewData = array();
+
+ if ( !count( $keys ) ) {
+ return;
+ }
+
+ $dbr = wfGetDB( $dbtype );
+ $tables = array( 'page', 'translate_reviews' );
+ $fields = array( 'page_namespace', 'page_title', 'trr_user' );
+ $conds = $this->getTitleConds( $dbr );
+ $joins = array( 'translate_reviews' =>
+ array(
+ 'JOIN',
+ array( 'page_id=trr_page', 'page_latest=trr_revision' )
+ )
+ );
+
+ $this->dbReviewData = $dbr->select( $tables, $fields, $conds, __METHOD__, array(), $joins );
+ }
+
+ /**
+ * Loads translation for given list of keys.
+ * @param string[] $keys List of keys in database format.
+ * @param int $dbtype One of DB_* constants.
+ */
+ protected function loadData( array $keys, $dbtype = DB_SLAVE ) {
+ if ( $this->dbData !== null ) {
+ return;
+ }
+
+ $this->dbData = array();
+
+ if ( !count( $keys ) ) {
+ return;
+ }
+
+ $dbr = wfGetDB( $dbtype );
+
+ $tables = array( 'page', 'revision', 'text' );
+ $fields = array(
+ 'page_namespace',
+ 'page_title',
+ 'page_latest',
+ 'rev_user',
+ 'rev_user_text',
+ 'old_flags',
+ 'old_text'
+ );
+ $conds = array(
+ 'page_latest = rev_id',
+ 'old_id = rev_text_id',
+ );
+ $conds[] = $this->getTitleConds( $dbr );
+
+ $res = $dbr->select( $tables, $fields, $conds, __METHOD__ );
+
+ $this->dbData = $res;
+ }
+
+ /**
+ * Of the current set of keys, construct database query conditions.
+ * @since 2011-12-28
+ * @param DatabaseBase $db
+ * @return string
+ */
+ protected function getTitleConds( $db ) {
+ // Array of array( namespace, pagename )
+ $byNamespace = array();
+ foreach ( $this->getTitles() as $title ) {
+ $namespace = $title->getNamespace();
+ $pagename = $title->getDBKey();
+ $byNamespace[$namespace][] = $pagename;
+ }
+
+ $conds = array();
+ foreach ( $byNamespace as $namespaces => $pagenames ) {
+ $cond = array(
+ 'page_namespace' => $namespaces,
+ 'page_title' => $pagenames,
+ );
+
+ $conds[] = $db->makeList( $cond, LIST_AND );
+ }
+
+ return $db->makeList( $conds, LIST_OR );
+ }
+
+ /**
+ * Given two-dimensional map of namespace and pagenames, this uses
+ * database fields page_namespace and page_title as keys and returns
+ * the value for those indexes.
+ * @since 2011-12-23
+ */
+ protected function rowToKey( $row ) {
+ $map = $this->getReverseMap();
+ if ( isset( $map[$row->page_namespace][$row->page_title] ) ) {
+ return $map[$row->page_namespace][$row->page_title];
+ } else {
+ wfWarn( "Got unknown title from the database: {$row->page_namespace}:{$row->page_title}" );
+
+ return null;
+ }
+ }
+
+ /**
+ * Creates a two-dimensional map of namespace and pagenames.
+ * @since 2011-12-23
+ */
+ public function getReverseMap() {
+ if ( isset( $this->reverseMap ) ) {
+ return $this->reverseMap;
+ }
+
+ $map = array();
+ /**
+ * @var Title $title
+ */
+ foreach ( $this->keys as $mkey => $title ) {
+ $map[$title->getNamespace()][$title->getDBKey()] = $mkey;
+ }
+
+ return $this->reverseMap = $map;
+ }
+
+ /**
+ * Constructs all TMessages from the data accumulated so far.
+ * Usually there is no need to call this method directly.
+ */
+ public function initMessages() {
+ if ( $this->messages !== null ) {
+ return;
+ }
+
+ $messages = array();
+ $definitions = $this->definitions->getDefinitions();
+ foreach ( array_keys( $this->keys ) as $mkey ) {
+ $messages[$mkey] = new ThinMessage( $mkey, $definitions[$mkey] );
+ }
+
+ // Copy rows if any.
+ if ( $this->dbData !== null ) {
+ foreach ( $this->dbData as $row ) {
+ $mkey = $this->rowToKey( $row );
+ if ( !isset( $messages[$mkey] ) ) {
+ continue;
+ }
+ $messages[$mkey]->setRow( $row );
+ $messages[$mkey]->setProperty( 'revision', $row->page_latest );
+ }
+ }
+
+ if ( $this->dbInfo !== null ) {
+ $fuzzy = array();
+ foreach ( $this->dbInfo as $row ) {
+ if ( $row->rt_type !== null ) {
+ $fuzzy[] = $this->rowToKey( $row );
+ }
+ }
+
+ $this->setTags( 'fuzzy', $fuzzy );
+ }
+
+ // Copy tags if any.
+ foreach ( $this->tags as $type => $keys ) {
+ foreach ( $keys as $mkey ) {
+ if ( isset( $messages[$mkey] ) ) {
+ $messages[$mkey]->addTag( $type );
+ }
+ }
+ }
+
+ // Copy properties if any.
+ foreach ( $this->properties as $type => $keys ) {
+ foreach ( $keys as $mkey => $value ) {
+ if ( isset( $messages[$mkey] ) ) {
+ $messages[$mkey]->setProperty( $type, $value );
+ }
+ }
+ }
+
+ // Copy infile if any.
+ foreach ( $this->infile as $mkey => $value ) {
+ if ( isset( $messages[$mkey] ) ) {
+ $messages[$mkey]->setInfile( $value );
+ }
+ }
+
+ foreach ( $this->dbReviewData as $row ) {
+ $mkey = $this->rowToKey( $row );
+ if ( !isset( $messages[$mkey] ) ) {
+ continue;
+ }
+ $messages[$mkey]->appendProperty( 'reviewers', $row->trr_user );
+ }
+
+ // Set the status property
+ foreach ( $messages as $obj ) {
+ if ( $obj->hasTag( 'fuzzy' ) ) {
+ $obj->setProperty( 'status', 'fuzzy' );
+ } elseif ( is_array( $obj->getProperty( 'reviewers' ) ) ) {
+ $obj->setProperty( 'status', 'proofread' );
+ } elseif ( $obj->translation() !== null ) {
+ $obj->setProperty( 'status', 'translated' );
+ } else {
+ $obj->setProperty( 'status', 'untranslated' );
+ }
+ }
+
+ $this->messages = $messages;
+ }
+
+ /**
+ * ArrayAccess methods. @{
+ * @param mixed $offset
+ * @return bool
+ */
+ public function offsetExists( $offset ) {
+ return isset( $this->keys[$offset] );
+ }
+
+ /**
+ * @param mixed $offset
+ * @return mixed
+ */
+ public function offsetGet( $offset ) {
+ return $this->messages[$offset];
+ }
+
+ /**
+ * @param mixed $offset
+ * @param $value
+ */
+ public function offsetSet( $offset, $value ) {
+ $this->messages[$offset] = $value;
+ }
+
+ /**
+ * @param mixed $offset
+ */
+ public function offsetUnset( $offset ) {
+ unset( $this->keys[$offset] );
+ }
+
+ /** @} */
+
+ /**
+ * Fail fast if trying to access unknown properties. @{
+ * @param string $name
+ * @throws MWException
+ */
+ public function __get( $name ) {
+ throw new MWException( __METHOD__ . ": Trying to access unknown property $name" );
+ }
+
+ public function __set( $name, $value ) {
+ throw new MWException( __METHOD__ . ": Trying to modify unknown property $name" );
+ }
+
+ /** @} */
+
+ /**
+ * Iterator method. @{
+ */
+ public function rewind() {
+ reset( $this->keys );
+ }
+
+ public function current() {
+ if ( !count( $this->keys ) ) {
+ return false;
+ }
+
+ return $this->messages[key( $this->keys )];
+ }
+
+ public function key() {
+ return key( $this->keys );
+ }
+
+ public function next() {
+ return next( $this->keys );
+ }
+
+ public function valid() {
+ return isset( $this->messages[key( $this->keys )] );
+ }
+
+ public function count() {
+ return count( $this->keys() );
+ }
+ /** @} */
+}
+
+/**
+ * Wrapper for message definitions, just to beauty the code.
+ *
+ * API totally changed in 2011-12-28
+ */
+class MessageDefinitions {
+ protected $namespace;
+ protected $messages;
+
+ public function __construct( array $messages, $namespace = false ) {
+ $this->namespace = $namespace;
+ $this->messages = $messages;
+ }
+
+ public function getDefinitions() {
+ return $this->messages;
+ }
+
+ /**
+ * @return Array of Array( namespace, pagename )
+ */
+ public function getPages() {
+ $namespace = $this->namespace;
+ $pages = array();
+ foreach ( array_keys( $this->messages ) as $key ) {
+ if ( $namespace === false ) {
+ // pages are in format ex. "8:jan"
+ $pages[$key] = explode( ':', $key, 2 );
+ } else {
+ $pages[$key] = array( $namespace, $key );
+ }
+ }
+
+ return $pages;
+ }
+}
diff --git a/MLEB/Translate/MessageGroups.php b/MLEB/Translate/MessageGroups.php
new file mode 100644
index 00000000..4adfd344
--- /dev/null
+++ b/MLEB/Translate/MessageGroups.php
@@ -0,0 +1,761 @@
+<?php
+/**
+ * This file contains a class for working with message groups.
+ *
+ * @file
+ * @author Niklas Laxström
+ * @author Siebrand Mazeland
+ * @copyright Copyright © 2008-2013, Niklas Laxström, Siebrand Mazeland
+ * @license GPL-2.0+
+ */
+
+/**
+ * Factory class for accessing message groups individually by id or
+ * all of them as an list.
+ * @todo Clean up the mixed static/member method interface.
+ */
+class MessageGroups {
+ /**
+ * @var Array Cache for message group priorities
+ */
+ protected static $prioritycache = null;
+
+ protected static $groups = null;
+
+ /// Initialises the list of groups (but not the groups itself if possible).
+ public static function init() {
+ if ( is_array( self::$groups ) ) {
+ return;
+ }
+
+ wfProfileIn( __METHOD__ );
+ self::$groups = array();
+
+ global $wgAutoloadClasses;
+
+ $key = wfMemcKey( 'translate-groups' );
+ $value = DependencyWrapper::getValueFromCache( self::getCache(), $key );
+
+ if ( $value === null ) {
+ wfDebug( __METHOD__ . "-nocache\n" );
+ self::loadGroupDefinitions();
+ } else {
+ wfDebug( __METHOD__ . "-withcache\n" );
+ self::$groups = $value['cc'];
+
+ foreach ( $value['autoload'] as $class => $file ) {
+ $wgAutoloadClasses[$class] = $file;
+ }
+ }
+ wfProfileOut( __METHOD__ );
+ }
+
+ /**
+ * Manually reset group cache.
+ *
+ * Use when automatic dependency tracking fails.
+ */
+ public static function clearCache() {
+ $key = wfMemckey( 'translate-groups' );
+ self::getCache()->delete( $key );
+ self::$groups = null;
+ }
+
+ /**
+ * Returns a cacher object.
+ * @return BagOStuff
+ */
+ protected static function getCache() {
+ return wfGetCache( CACHE_ANYTHING );
+ }
+
+ /**
+ * This constructs the list of all groups from multiple different
+ * sources. When possible, a cache dependency is created to automatically
+ * recreate the cache when configuration changes.
+ * @todo Reduce the ways of which messages can be added. Target is just
+ * to have three ways: Yaml files, translatable pages and with the hook.
+ */
+ protected static function loadGroupDefinitions() {
+ wfProfileIn( __METHOD__ );
+
+ global $wgEnablePageTranslation, $wgTranslateGroupFiles;
+ global $wgTranslateCC, $wgAutoloadClasses, $wgTranslateWorkflowStates;
+
+ $deps = array();
+ $deps[] = new GlobalDependency( 'wgEnablePageTranslation' );
+ $deps[] = new GlobalDependency( 'wgTranslateGroupFiles' );
+ $deps[] = new GlobalDependency( 'wgTranslateCC' );
+ $deps[] = new GlobalDependency( 'wgTranslateWorkflowStates' );
+
+ self::$groups = $wgTranslateCC;
+
+ if ( $wgEnablePageTranslation ) {
+ wfProfileIn( __METHOD__ . '-pt' );
+ $dbr = wfGetDB( DB_MASTER );
+
+ $tables = array( 'page', 'revtag' );
+ $vars = array( 'page_id', 'page_namespace', 'page_title' );
+ $conds = array( 'page_id=rt_page', 'rt_type' => RevTag::getType( 'tp:mark' ) );
+ $options = array( 'GROUP BY' => 'rt_page' );
+ $res = $dbr->select( $tables, $vars, $conds, __METHOD__, $options );
+
+ foreach ( $res as $r ) {
+ $title = Title::newFromRow( $r );
+ $id = TranslatablePage::getMessageGroupIdFromTitle( $title );
+ self::$groups[$id] = new WikiPageMessageGroup( $id, $title );
+ self::$groups[$id]->setLabel( $title->getPrefixedText() );
+ }
+ wfProfileOut( __METHOD__ . '-pt' );
+ }
+
+ if ( $wgTranslateWorkflowStates ) {
+ self::$groups['translate-workflow-states'] = new WorkflowStatesMessageGroup();
+ }
+
+ wfProfileIn( __METHOD__ . '-hook' );
+ $autoload = array();
+ wfRunHooks( 'TranslatePostInitGroups', array( &self::$groups, &$deps, &$autoload ) );
+ wfProfileOut( __METHOD__ . '-hook' );
+
+ wfProfileIn( __METHOD__ . '-yaml' );
+ foreach ( $wgTranslateGroupFiles as $configFile ) {
+ wfDebug( $configFile . "\n" );
+ $deps[] = new FileDependency( realpath( $configFile ) );
+ $fgroups = TranslateYaml::parseGroupFile( $configFile );
+
+ foreach ( $fgroups as $id => $conf ) {
+ if ( !empty( $conf['AUTOLOAD'] ) && is_array( $conf['AUTOLOAD'] ) ) {
+ $dir = dirname( $configFile );
+ foreach ( $conf['AUTOLOAD'] as $class => $file ) {
+ // For this request and for caching.
+ $wgAutoloadClasses[$class] = "$dir/$file";
+ $autoload[$class] = "$dir/$file";
+ }
+ }
+ $group = MessageGroupBase::factory( $conf );
+ self::$groups[$id] = $group;
+ }
+ }
+ wfProfileOut( __METHOD__ . '-yaml' );
+
+ wfProfileIn( __METHOD__ . '-agg' );
+ $aggregateGroups = self::getAggregateGroups();
+ foreach ( $aggregateGroups as $id => $group ) {
+ self::$groups[$id] = $group;
+ }
+ wfProfileOut( __METHOD__ . '-agg' );
+
+ $key = wfMemckey( 'translate-groups' );
+ $value = array(
+ 'cc' => self::$groups,
+ 'autoload' => $autoload,
+ );
+
+ wfProfileIn( __METHOD__ . '-save' );
+ $wrapper = new DependencyWrapper( $value, $deps );
+ $wrapper->storeToCache( self::getCache(), $key, 60 * 60 * 2 );
+ wfProfileOut( __METHOD__ . '-save' );
+
+ wfDebug( __METHOD__ . "-end\n" );
+ wfProfileOut( __METHOD__ );
+ }
+
+ /**
+ * Fetch a message group by id.
+ * @param string $id Message group id.
+ * @return MessageGroup|null if it doesn't exist.
+ */
+ public static function getGroup( $id ) {
+ // BC with page| which is now page-
+ $id = strtr( $id, '|', '-' );
+ /* Translatable pages use spaces, but MW occasionally likes to
+ * normalize spaces to underscores */
+ if ( strpos( $id, 'page-' ) === 0 ) {
+ $id = strtr( $id, '_', ' ' );
+ }
+ self::init();
+
+ if ( isset( self::$groups[$id] ) ) {
+ if ( is_callable( self::$groups[$id] ) ) {
+ return call_user_func( self::$groups[$id], $id );
+ }
+
+ return self::$groups[$id];
+ } elseif ( strval( $id ) !== '' && $id[0] === '!' ) {
+ $dynamic = self::getDynamicGroups();
+ if ( isset( $dynamic[$id] ) ) {
+ return new $dynamic[$id];
+ }
+ }
+
+ return null;
+ }
+
+ /**
+ * @param string $id
+ * @return bool
+ */
+ public static function exists( $id ) {
+ return (bool)self::getGroup( $id );
+ }
+
+
+ /**
+ * Check if a particular aggregate group label exists
+ * @param string $name
+ * @return bool
+ */
+ public static function labelExists( $name ) {
+ $groups = MessageGroups::getAggregateGroups();
+ $labels = array_map( function ( $g ) {
+ return $g->getLabel();
+ }, $groups );
+ return (bool)in_array( $name, $labels, true );
+ }
+
+ /**
+ * Get all enabled message groups.
+ * @return array ( string => MessageGroup )
+ */
+ public static function getAllGroups() {
+ return self::singleton()->getGroups();
+ }
+
+ /**
+ * We want to de-emphasize time sensitive groups like news for 2009.
+ * They can still exist in the system, but should not appear in front
+ * of translators looking to do some useful work.
+ *
+ * @param MessageGroup|string $group Message group ID
+ * @return string Message group priority
+ * @since 2011-12-12
+ */
+ public static function getPriority( $group ) {
+ if ( !isset( self::$prioritycache ) ) {
+ self::$prioritycache = array();
+ // Abusing this table originally intented for other purposes
+ $db = wfGetDB( DB_MASTER );
+ $table = 'translate_groupreviews';
+ $fields = array( 'tgr_group', 'tgr_state' );
+ $conds = array( 'tgr_lang' => '*priority' );
+ $res = $db->select( $table, $fields, $conds, __METHOD__ );
+ foreach ( $res as $row ) {
+ self::$prioritycache[$row->tgr_group] = $row->tgr_state;
+ }
+ }
+
+ if ( $group instanceof MessageGroup ) {
+ $id = $group->getId();
+ } else {
+ $id = $group;
+ }
+
+ return isset( self::$prioritycache[$id] ) ? self::$prioritycache[$id] : '';
+ }
+
+ /**
+ * Sets the message group priority.
+ * @see MessageGroups::getPriority
+ *
+ * @param MessageGroup|string $group Message group
+ * @param string $priority Priority (empty string to unset)
+ * @since 2013-03-01
+ */
+ public static function setPriority( $group, $priority = '' ) {
+ if ( $group instanceof MessageGroup ) {
+ $id = $group->getId();
+ } else {
+ $id = $group;
+ }
+
+ self::$prioritycache[$id] = $priority;
+
+ $dbw = wfGetDB( DB_MASTER );
+ $table = 'translate_groupreviews';
+ $row = array(
+ 'tgr_group' => $id,
+ 'tgr_lang' => '*priority',
+ 'tgr_state' => $priority,
+ );
+
+ if ( $priority === '' ) {
+ unset( $row['tgr_state'] );
+ $dbw->delete( $table, $row, __METHOD__ );
+ } else {
+ $index = array( 'tgr_group', 'tgr_lang' );
+ $dbw->replace( $table, array( $index ), $row, __METHOD__ );
+ }
+ }
+
+ /// @since 2011-12-28
+ public static function isDynamic( MessageGroup $group ) {
+ $id = $group->getId();
+
+ return strval( $id ) !== '' && $id[0] === '!';
+ }
+
+ /**
+ * Returns a list of message groups that share (certain) messages
+ * with this group.
+ * @since 2011-12-25; renamed in 2012-12-10 from getParentGroups.
+ * @param MessageGroup $group
+ * @return string[]
+ */
+ public static function getSharedGroups( MessageGroup $group ) {
+ // Take the first message, get a handle for it and check
+ // if that message belongs to other groups. Those are the
+ // parent aggregate groups. Ideally we loop over all keys,
+ // but this should be enough.
+ $keys = array_keys( $group->getDefinitions() );
+ $title = Title::makeTitle( $group->getNamespace(), $keys[0] );
+ $handle = new MessageHandle( $title );
+ $ids = $handle->getGroupIds();
+ foreach ( $ids as $index => $id ) {
+ if ( $id === $group->getId() ) {
+ unset( $ids[$index] );
+ }
+ }
+
+ return $ids;
+ }
+
+ /**
+ * Returns a list of parent message groups. If message group exists
+ * in multiple places in the tree, multiple lists are returned.
+ * @since 2012-12-10
+ * @param MessageGroup $targetGroup
+ * @return array[]
+ */
+ public static function getParentGroups( MessageGroup $targetGroup ) {
+ $ids = self::getSharedGroups( $targetGroup );
+ if ( $ids === array() ) {
+ return array();
+ }
+
+ $targetId = $targetGroup->getId();
+
+ /* Get the group structure. We will be using this to find which
+ * of our candidates are top-level groups. Prefilter it to only
+ * contain aggregate groups. */
+ $structure = self::getGroupStructure();
+ foreach ( $structure as $index => $group ) {
+ if ( $group instanceof MessageGroup ) {
+ unset( $structure[$index] );
+ } else {
+ $structure[$index] = array_shift( $group );
+ }
+ }
+
+ /* Now that we have all related groups, use them to find all paths
+ * from top-level groups to target group with any number of subgroups
+ * in between. */
+ $paths = array();
+
+ /* This function recursively finds paths to the target group */
+ $pathFinder = function ( &$paths, $group, $targetId, $prefix = '' )
+ use ( &$pathFinder ) {
+ if ( $group instanceof AggregateMessageGroup ) {
+ /**
+ * @var MessageGroup $subgroup
+ */
+ foreach ( $group->getGroups() as $subgroup ) {
+ $subId = $subgroup->getId();
+ if ( $subId === $targetId ) {
+ $paths[] = $prefix;
+ continue;
+ }
+
+ $pathFinder( $paths, $subgroup, $targetId, "$prefix|$subId" );
+ }
+ }
+ };
+
+ // Iterate over the top-level groups only
+ foreach ( $ids as $id ) {
+ // First, find a top level groups
+ $group = self::getGroup( $id );
+
+ // Quick escape for leaf groups
+ if ( !$group instanceof AggregateMessageGroup ) {
+ continue;
+ }
+
+ foreach ( $structure as $rootGroup ) {
+ /**
+ * @var MessageGroup $rootGroup
+ */
+ if ( $rootGroup->getId() === $group->getId() ) {
+ // Yay we found a top-level group
+ $pathFinder( $paths, $rootGroup, $targetId, $id );
+ break; // No we have one or more paths appended into $paths
+ }
+ }
+ }
+
+ // And finally explode the strings
+ foreach ( $paths as $index => $pathString ) {
+ $paths[$index] = explode( '|', $pathString );
+ }
+
+ return $paths;
+ }
+
+ private function __construct() {
+ }
+
+ /**
+ * Constructor function.
+ * @return MessageGroups
+ */
+ public static function singleton() {
+ static $instance;
+ if ( !$instance instanceof self ) {
+ $instance = new self();
+ }
+
+ return $instance;
+ }
+
+ /**
+ * Get all enabled non-dynamic message groups.
+ * @return array
+ */
+ public function getGroups() {
+ self::init();
+ // Expand groups to objects
+ foreach ( self::$groups as $id => $mixed ) {
+ if ( !is_object( $mixed ) ) {
+ self::$groups[$id] = call_user_func( $mixed, $id );
+ }
+ }
+
+ return self::$groups;
+ }
+
+ /**
+ * Get message groups for corresponding message group ids.
+ *
+ * @param string[] $ids Group IDs
+ * @param bool $skipMeta Skip aggregate message groups
+ * @return MessageGroup[]
+ * @since 2012-02-13
+ */
+ public static function getGroupsById( array $ids, $skipMeta = false ) {
+ $groups = array();
+ foreach ( $ids as $id ) {
+ $group = self::getGroup( $id );
+
+ if ( $group !== null ) {
+ if ( $skipMeta && $group->isMeta() ) {
+ continue;
+ } else {
+ $groups[$id] = $group;
+ }
+ } else {
+ wfDebug( __METHOD__ . ": Invalid message group id: $id\n" );
+ }
+ }
+
+ return $groups;
+ }
+
+ /**
+ * If the list of message group ids contains wildcards, this function will match
+ * them against the list of all supported message groups and return matched
+ * message group ids.
+ * @param string[]|string $ids
+ * @return string[]
+ * @since 2012-02-13
+ */
+ public static function expandWildcards( $ids ) {
+ $all = array();
+
+ $matcher = new StringMatcher( '', (array)$ids );
+ foreach ( self::getAllGroups() as $id => $_ ) {
+ if ( $matcher->match( $id ) ) {
+ $all[] = $id;
+ }
+ }
+
+ return $all;
+ }
+
+ /**
+ * Contents on these groups changes on a whim.
+ * @since 2011-12-28
+ */
+ public static function getDynamicGroups() {
+ return array(
+ '!recent' => 'RecentMessageGroup',
+ '!additions' => 'RecentAdditionsMessageGroup',
+ '!sandbox' => 'SandboxMessageGroup',
+ );
+ }
+
+ /**
+ * Get only groups of specific type (class).
+ * @param string $type Class name of wanted type
+ * @return MessageGroupBase[]
+ * @since 2012-04-30
+ */
+ public static function getGroupsByType( $type ) {
+ wfProfileIn( __METHOD__ );
+ $groups = self::getAllGroups();
+ foreach ( $groups as $id => $group ) {
+ if ( !$group instanceof $type ) {
+ unset( $groups[$id] );
+ }
+ }
+ wfProfileOut( __METHOD__ );
+
+ return $groups;
+ }
+
+ /**
+ * Returns a tree of message groups. First group in each subgroup is
+ * the aggregate group. Groups can be nested infinitely, though in practice
+ * other code might not handle more than two (or even one) nesting levels.
+ * One group can exist multiple times in differents parts of the tree.
+ * In other words: [Group1, Group2, [AggGroup, Group3, Group4]]
+ * @throws MWException If cyclic structure is detected.
+ * @return array
+ */
+ public static function getGroupStructure() {
+ $groups = self::getAllGroups();
+ wfProfileIn( __METHOD__ );
+
+ // Determine the top level groups of the tree
+ $tree = $groups;
+ /**
+ * @var MessageGroup $o
+ */
+ foreach ( $groups as $id => $o ) {
+ if ( !$o->exists() ) {
+ unset( $groups[$id], $tree[$id] );
+ continue;
+ }
+
+ if ( $o instanceof AggregateMessageGroup ) {
+ /**
+ * @var AggregateMessageGroup $o
+ */
+ foreach ( $o->getGroups() as $sid => $so ) {
+ unset( $tree[$sid] );
+ }
+ }
+ }
+
+ // Work around php bug: https://bugs.php.net/bug.php?id=50688
+ // Triggered by ApiQueryMessageGroups for example
+ wfSuppressWarnings();
+ usort( $tree, array( __CLASS__, 'groupLabelSort' ) );
+ wfRestoreWarnings();
+
+ /* Now we have two things left in $tree array:
+ * - solitaries: top-level non-aggregate message groups
+ * - top-level aggregate message groups */
+ foreach ( $tree as $index => $group ) {
+ if ( $group instanceof AggregateMessageGroup ) {
+ $tree[$index] = self::subGroups( $group );
+ }
+ }
+
+ /* Essentially we are done now. Cyclic groups can cause part of the
+ * groups not be included at all, because they have all unset each
+ * other in the first loop. So now we check if there are groups left
+ * over. */
+ $used = array();
+ // Hack to allow passing by reference
+ array_walk_recursive( $tree, array( __CLASS__, 'collectGroupIds' ), array( &$used ) );
+ $unused = array_diff( array_keys( $groups ), array_keys( $used ) );
+ if ( count( $unused ) ) {
+ foreach ( $unused as $index => $id ) {
+ if ( !$groups[$id] instanceof AggregateMessageGroup ) {
+ unset( $unused[$index] );
+ }
+ }
+
+ // Only list the aggregate groups, other groups cannot cause cycles
+ $participants = implode( ', ', $unused );
+ throw new MWException( "Found cyclic aggregate message groups: $participants" );
+ }
+
+ wfProfileOut( __METHOD__ );
+
+ return $tree;
+ }
+
+ /// See getGroupStructure, just collects ids into array
+ public static function collectGroupIds( $value, $key, $used ) {
+ $used[0][$value->getId()] = true;
+ }
+
+ /// Sorts groups by label value
+ public static function groupLabelSort( $a, $b ) {
+ $al = $a->getLabel();
+ $bl = $b->getLabel();
+
+ return strcasecmp( $al, $bl );
+ }
+
+ /**
+ * Like getGroupStructure but start from one root which must be an
+ * AggregateMessageGroup.
+ *
+ * @param AggregateMessageGroup $parent
+ * @throws MWException
+ * @return array
+ * @since Public since 2012-11-29
+ */
+ public static function subGroups( AggregateMessageGroup $parent ) {
+ static $recursionGuard = array();
+
+ $pid = $parent->getId();
+ if ( isset( $recursionGuard[$pid] ) ) {
+ $tid = $pid;
+ $path = array( $tid );
+ do {
+ $tid = $recursionGuard[$tid];
+ $path[] = $tid;
+ // Until we have gone full cycle
+ } while ( $tid !== $pid );
+ $path = implode( ' > ', $path );
+ throw new MWException( "Found cyclic aggregate message groups: $path" );
+ }
+
+ // We don't care about the ids.
+ $tree = array_values( $parent->getGroups() );
+ usort( $tree, array( __CLASS__, 'groupLabelSort' ) );
+ // Expand aggregate groups (if any left) after sorting to form a tree
+ foreach ( $tree as $index => $group ) {
+ if ( $group instanceof AggregateMessageGroup ) {
+ $sid = $group->getId();
+ $recursionGuard[$pid] = $sid;
+ $tree[$index] = self::subGroups( $group );
+ unset( $recursionGuard[$pid] );
+ }
+ }
+
+ // Parent group must be first item in the array
+ array_unshift( $tree, $parent );
+
+ return $tree;
+ }
+
+ /**
+ * Checks whether all the message groups have the same source language.
+ * @param array $groups A list of message groups objects.
+ * @return string Language code if the languages are the same, empty string otherwise.
+ * @since 2013.09
+ */
+ public static function haveSingleSourceLanguage( array $groups ) {
+ $seen = '';
+
+ foreach ( $groups as $group ) {
+ $language = $group->getSourceLanguage();
+ if ( $seen === '' ) {
+ $seen = $language;
+ } elseif ( $language !== $seen ) {
+ return '';
+ }
+ }
+
+ return $seen;
+ }
+
+ /**
+ * Get all the aggregate messages groups defined in translate_metadata table.
+ * @return array
+ * @since 2012-05-09 return value changed
+ */
+ protected static function getAggregateGroups() {
+ $dbw = wfGetDB( DB_MASTER );
+ $tables = array( 'translate_metadata' );
+ $fields = array( 'tmd_group', 'tmd_value' );
+ $conds = array( 'tmd_key' => 'subgroups' );
+ $res = $dbw->select( $tables, $fields, $conds, __METHOD__ );
+
+ $groups = array();
+ foreach ( $res as $row ) {
+ $id = $row->tmd_group;
+
+ $conf = array();
+ $conf['BASIC'] = array(
+ 'id' => $id,
+ 'label' => TranslateMetadata::get( $id, 'name' ),
+ 'description' => TranslateMetadata::get( $id, 'description' ),
+ 'meta' => 1,
+ 'class' => 'AggregateMessageGroup',
+ 'namespace' => NS_TRANSLATIONS,
+ );
+ $conf['GROUPS'] = TranslateMetadata::getSubgroups( $id );
+ $group = MessageGroupBase::factory( $conf );
+
+ $groups[$id] = $group;
+ }
+
+ return $groups;
+ }
+
+ /**
+ * Filters out messages that should not be translated under normal
+ * conditions.
+ *
+ * @param MessageHandle $handle Handle for the translation target.
+ * @return boolean
+ * @since 2013.10
+ */
+ public static function isTranslatableMessage( MessageHandle $handle ) {
+ static $cache = array();
+
+ if ( !$handle->isValid() ) {
+ return false;
+ }
+
+ $group = $handle->getGroup();
+ $groupId = $group->getId();
+ $language = $handle->getCode();
+ $cacheKey = "$groupId:$language";
+
+ if ( !isset( $cache[$cacheKey] ) ) {
+ $allowed = true;
+ $discouraged = false;
+
+ $whitelist = $group->getTranslatableLanguages();
+ if ( is_array( $whitelist ) && !isset( $whitelist[$language] ) ) {
+ $allowed = false;
+ }
+
+ if ( self::getPriority( $group ) === 'discouraged' ) {
+ $discouraged = true;
+ } else {
+ $priorityLanguages = TranslateMetadata::get( $groupId, 'prioritylangs' );
+ if ( $priorityLanguages ) {
+ $map = array_flip( explode( ',', $priorityLanguages ) );
+ if ( !isset( $map[$language] ) ) {
+ $discouraged = true;
+ }
+ }
+ }
+
+ $cache[$cacheKey] = array(
+ 'relevant' => $allowed && !$discouraged,
+ 'tags' => array(),
+ );
+
+ $groupTags = $group->getTags();
+ foreach ( array( 'ignored', 'optional' ) as $tag ) {
+ if ( isset( $groupTags[$tag] ) ) {
+ foreach ( $groupTags[$tag] as $key ) {
+ // TODO: ucfirst should not be here
+ $cache[$cacheKey]['tags'][ucfirst( $key )] = true;
+ }
+ }
+ }
+ }
+
+ return $cache[$cacheKey]['relevant'] &&
+ !isset( $cache[$cacheKey]['tags'][ucfirst( $handle->getKey() )] );
+ }
+}
diff --git a/MLEB/Translate/PageTranslation.i18n.php b/MLEB/Translate/PageTranslation.i18n.php
new file mode 100644
index 00000000..2a4719bd
--- /dev/null
+++ b/MLEB/Translate/PageTranslation.i18n.php
@@ -0,0 +1,35 @@
+<?php
+/**
+ * This is a backwards-compatibility shim, generated by:
+ * https://git.wikimedia.org/blob/mediawiki%2Fcore.git/HEAD/maintenance%2FgenerateJsonI18n.php
+ *
+ * Beginning with MediaWiki 1.23, translation strings are stored in json files,
+ * and the EXTENSION.i18n.php file only exists to provide compatibility with
+ * older releases of MediaWiki. For more information about this migration, see:
+ * https://www.mediawiki.org/wiki/Requests_for_comment/Localisation_format
+ *
+ * This shim maintains compatibility back to MediaWiki 1.17.
+ */
+$messages = array();
+if ( !function_exists( 'wfJsonI18nShimc5096afb82829a9f' ) ) {
+ function wfJsonI18nShimc5096afb82829a9f( $cache, $code, &$cachedData ) {
+ $codeSequence = array_merge( array( $code ), $cachedData['fallbackSequence'] );
+ foreach ( $codeSequence as $csCode ) {
+ $fileName = dirname( __FILE__ ) . "/i18n/pagetranslation/$csCode.json";
+ if ( is_readable( $fileName ) ) {
+ $data = FormatJson::decode( file_get_contents( $fileName ), true );
+ foreach ( array_keys( $data ) as $key ) {
+ if ( $key === '' || $key[0] === '@' ) {
+ unset( $data[$key] );
+ }
+ }
+ $cachedData['messages'] = array_merge( $data, $cachedData['messages'] );
+ }
+
+ $cachedData['deps'][] = new FileDependency( $fileName );
+ }
+ return true;
+ }
+
+ $GLOBALS['wgHooks']['LocalisationCacheRecache'][] = 'wfJsonI18nShimc5096afb82829a9f';
+}
diff --git a/MLEB/Translate/README b/MLEB/Translate/README
new file mode 100644
index 00000000..a2cfe111
--- /dev/null
+++ b/MLEB/Translate/README
@@ -0,0 +1,32 @@
+The Translate extension makes MediaWiki a powerful tool to translate every
+kind of text. It's used especially to translate software user interfaces and
+to manage multilingual wikis in a sensible way.
+
+== Copying ==
+See http://www.gnu.org/licenses/gpl2.html
+
+== Installation ==
+For very very quick start add the following to LocalSettings.php:
+
+ require "$IP/extensions/Translate/Translate.php";
+ $wgGroupPermissions['user']['translate'] = true;
+ $wgGroupPermissions['user']['translate-messagereview'] = true;
+ $wgGroupPermissions['sysop']['pagetranslation'] = true;
+
+More documentation is at
+ https://www.mediawiki.org/wiki/Help:Extension:Translate/Installation
+ https://www.mediawiki.org/wiki/Help:Extension:Translate/Configuration
+
+== Contributing ==
+* Translations? Go to https://translatewiki.net and sign up.
+* Code? File format handlers? New message groups? Graphics? Suggestions?
+ Bug reports? Please start a thread at https://translatewiki.net/wiki/Support,
+ report a bug in https://bugzilla.wikimedia.org or join us at #mediawiki-i18n
+ and let us know what you have in mind.
+
+Known bugs and feature requests are collected at:
+ https://translatewiki.net/wiki/Issues_and_features and
+ https://bugzilla.wikimedia.org/buglist.cgi?resolution=---&component=Translate
+
+Documentation for the extension is at:
+ https://www.mediawiki.org/wiki/Help:Extension:Translate
diff --git a/MLEB/Translate/RELEASE-NOTES b/MLEB/Translate/RELEASE-NOTES
new file mode 100644
index 00000000..dc48933d
--- /dev/null
+++ b/MLEB/Translate/RELEASE-NOTES
@@ -0,0 +1,12 @@
+== Translate 2014.11 ==
+Released at 2014-11-29.
+
+=== Noteworthy changes ===
+* Translate WebAPI documentation is now localized. Only works in MediaWiki 1.24
+and newer.
+* Fixed a bug which prevented bootstrapping of shared TTMServer database with
+the ElasticSearch backend.
+* If you are using the '''Solr backend '''for the translation memory or the
+translation search, please let us know. If there are no users for the Solr
+backend, we will deprecate and later remove it in favor of the better
+maintained ElasticSearch backend.
diff --git a/MLEB/Translate/Resources.php b/MLEB/Translate/Resources.php
new file mode 100644
index 00000000..1c5a2938
--- /dev/null
+++ b/MLEB/Translate/Resources.php
@@ -0,0 +1,547 @@
+<?php
+
+/**
+ * JavaScript and CSS resource definitions.
+ *
+ * @file
+ * @license GPL-2.0+
+ */
+
+global $wgResourceModules;
+
+$resourcePaths = array(
+ 'localBasePath' => __DIR__,
+ 'remoteExtPath' => 'Translate'
+);
+
+$wgResourceModules['ext.translate'] = array(
+ 'styles' => 'resources/css/ext.translate.css',
+ 'position' => 'top',
+) + $resourcePaths;
+
+$wgResourceModules['ext.translate.base'] = array(
+ 'scripts' => 'resources/js/ext.translate.base.js',
+ 'dependencies' => array(
+ 'mediawiki.util',
+ 'mediawiki.api',
+ 'ext.translate.hooks'
+ ),
+ 'messages' => array(
+ 'translate-js-support-unsaved-warning',
+ ),
+) + $resourcePaths;
+
+$wgResourceModules['ext.translate.dropdownmenu'] = array(
+ 'styles' => 'resources/css/ext.translate.dropdownmenu.css',
+ 'scripts' => 'resources/js/ext.translate.dropdownmenu.js',
+) + $resourcePaths;
+
+$wgResourceModules['ext.translate.editor'] = array(
+ 'scripts' => array(
+ 'resources/js/ext.translate.editor.js',
+ 'resources/js/ext.translate.editor.helpers.js',
+ 'resources/js/ext.translate.editor.shortcuts.js',
+ 'resources/js/ext.translate.proofread.js',
+ 'resources/js/ext.translate.pagemode.js',
+ ),
+ 'styles' => array(
+ 'resources/css/ext.translate.editor.css',
+ 'resources/css/ext.translate.proofread.css',
+ 'resources/css/ext.translate.pagemode.css',
+ ),
+ 'dependencies' => array(
+ 'ext.translate.base',
+ 'ext.translate.storage',
+ 'ext.translate.hooks',
+ 'ext.translate.dropdownmenu',
+ 'ext.uls.buttons',
+ 'jquery.uls.grid',
+ 'mediawiki.util',
+ 'mediawiki.Uri',
+ 'mediawiki.api',
+ 'mediawiki.api.edit',
+ 'mediawiki.api.parse',
+ 'mediawiki.user',
+ 'mediawiki.jqueryMsg',
+ 'jquery.makeCollapsible',
+ 'jquery.tipsy',
+ 'jquery.textchange',
+ 'jquery.autosize',
+ 'jquery.textSelection',
+ ),
+ 'messages' => array(
+ 'tux-status-translated',
+ 'tux-status-saving',
+ 'tux-status-unsaved',
+ 'tux-editor-placeholder',
+ 'tux-editor-paste-original-button-label',
+ 'tux-editor-discard-changes-button-label',
+ 'tux-editor-save-button-label',
+ 'tux-editor-skip-button-label',
+ 'tux-editor-cancel-button-label',
+ 'tux-editor-confirm-button-label',
+ 'tux-editor-shortcut-info',
+ 'tux-editor-edit-desc',
+ 'tux-editor-add-desc',
+ 'tux-editor-message-desc-more',
+ 'tux-editor-message-desc-less',
+ 'tux-editor-suggestions-title',
+ 'tux-editor-in-other-languages',
+ 'tux-editor-need-more-help',
+ 'tux-editor-ask-help',
+ 'tux-editor-tm-match',
+ 'tux-warnings-more',
+ 'tux-warnings-hide',
+ 'tux-editor-save-failed',
+ 'tux-editor-n-uses',
+ 'tux-editor-doc-editor-placeholder',
+ 'tux-editor-doc-editor-save',
+ 'tux-editor-doc-editor-cancel',
+ 'translate-edit-nopermission',
+ 'translate-edit-askpermission',
+ 'tux-editor-outdated-warning',
+ 'tux-editor-outdated-warning-diff-link',
+ 'tux-proofread-action-tooltip',
+ 'tux-proofread-edit-label',
+ 'tux-proofread-translated-by-self',
+ 'tux-editor-close-tooltip',
+ 'tux-editor-expand-tooltip',
+ 'tux-editor-collapse-tooltip',
+ 'tux-editor-message-tools-history',
+ 'tux-editor-message-tools-delete',
+ 'tux-editor-message-tools-translations',
+ 'tux-editor-loading',
+ 'tux-session-expired',
+ ),
+ 'position' => 'top',
+) + $resourcePaths;
+
+$wgResourceModules['ext.translate.groupselector'] = array(
+ 'styles' => 'resources/css/ext.translate.groupselector.css',
+ 'scripts' => 'resources/js/ext.translate.groupselector.js',
+ 'position' => 'top',
+ 'dependencies' => array(
+ 'ext.translate.base',
+ 'jquery.uls.grid',
+ 'ext.translate.statsbar',
+ 'mediawiki.jqueryMsg',
+ 'ext.translate.loader',
+ 'jquery.ui.position.custom',
+ ),
+ 'messages' => array(
+ 'translate-msggroupselector-projects',
+ 'translate-msggroupselector-search-placeholder',
+ 'translate-msggroupselector-search-all',
+ 'translate-msggroupselector-search-recent',
+ 'translate-msggroupselector-view-subprojects',
+ ),
+) + $resourcePaths;
+
+$wgResourceModules['ext.translate.helplink'] = array(
+ 'styles' => 'resources/css/ext.translate.helplink.css',
+ 'position' => 'top',
+) + $resourcePaths;
+
+$wgResourceModules['ext.translate.hooks'] = array(
+ 'scripts' => 'resources/js/ext.translate.hooks.js',
+ 'position' => 'top',
+) + $resourcePaths;
+
+$wgResourceModules['ext.translate.loader'] = array(
+ 'styles' => 'resources/css/ext.translate.loader.css',
+ 'position' => 'top',
+) + $resourcePaths;
+
+$wgResourceModules['ext.translate.messagetable'] = array(
+ 'scripts' => 'resources/js/ext.translate.messagetable.js',
+ 'styles' => 'resources/css/ext.translate.messagetable.css',
+ 'position' => 'top',
+ 'dependencies' => array(
+ 'ext.translate.base',
+ 'ext.translate.hooks',
+ 'mediawiki.Uri',
+ 'mediawiki.util',
+ 'jquery.appear',
+ 'mediawiki.jqueryMsg',
+ 'ext.translate.parsers',
+ 'ext.translate.loader',
+ 'ext.uls.buttons',
+ 'jquery.textchange',
+ ),
+ 'messages' => array(
+ 'translate-messagereview-progress',
+ 'translate-messagereview-failure',
+ 'translate-messagereview-done',
+ 'api-error-badtoken',
+ 'api-error-emptypage',
+ 'api-error-fuzzymessage',
+ 'api-error-invalidrevision',
+ 'api-error-owntranslation',
+ 'api-error-unknownmessage',
+ 'api-error-unknownerror',
+ 'tpt-unknown-page',
+ 'tux-edit',
+ 'tux-status-fuzzy',
+ 'tux-status-optional',
+ 'tux-status-translated',
+ 'tux-status-proofread',
+ 'translate-edit-title',
+ 'tux-messagetable-more-messages',
+ 'tux-messagetable-loading-messages',
+ 'tux-message-filter-result',
+ 'tux-message-filter-advanced-button',
+ 'tux-empty-list-all',
+ 'tux-empty-list-all-guide',
+ 'tux-empty-list-translated',
+ 'tux-empty-list-translated-guide',
+ 'tux-empty-list-translated-action',
+ 'tux-empty-list-other',
+ 'tux-empty-list-other-guide',
+ 'tux-empty-list-other-action',
+ 'tux-empty-list-other-link',
+ 'tux-empty-no-messages-to-display',
+ 'tux-empty-show-optional-messages',
+ 'tux-message-filter-placeholder',
+ 'translate-language-disabled',
+ 'tux-empty-no-outdated-messages',
+ 'tux-empty-nothing-new-to-proofread',
+ 'tux-empty-you-can-help-providing',
+ 'tux-empty-you-can-review-already-proofread',
+ 'tux-empty-nothing-to-proofread',
+ 'tux-empty-there-are-optional',
+ ),
+) + $resourcePaths;
+
+$wgResourceModules['ext.translate.messagewebimporter'] = array(
+ 'styles' => 'resources/css/ext.translate.messagewebimporter.css',
+ 'position' => 'top',
+) + $resourcePaths;
+
+$wgResourceModules['ext.translate.multiselectautocomplete'] = array(
+ 'scripts' => 'resources/js/ext.translate.multiselectautocomplete.js',
+ 'dependencies' => array(
+ 'jquery.ui.autocomplete',
+ ),
+ 'position' => 'top',
+) + $resourcePaths;
+
+$wgResourceModules['ext.translate.navitoggle'] = array(
+ 'skinScripts' => array(
+ 'vector' => 'resources/js/ext.translate.navitoggle.js',
+ ),
+ 'skinStyles' => array(
+ 'vector' => 'resources/css/ext.translate.navitoggle.css',
+ ),
+) + $resourcePaths;
+
+$wgResourceModules['ext.translate.pagetranslation.uls'] = array(
+ 'scripts' => 'resources/js/ext.translate.pagetranslation.uls.js',
+ 'dependencies' => array(
+ 'ext.uls.mediawiki',
+ 'mediawiki.Uri',
+ 'mediawiki.util',
+ ),
+) + $resourcePaths;
+
+$wgResourceModules['ext.translate.parsers'] = array(
+ 'scripts' => 'resources/js/ext.translate.parsers.js',
+ 'dependencies' => array(
+ 'mediawiki.util',
+ ),
+) + $resourcePaths;
+
+$wgResourceModules['ext.translate.quickedit'] = array(
+ 'scripts' => 'resources/js/ext.translate.quickedit.js',
+ 'styles' => 'resources/css/ext.translate.quickedit.css',
+ 'messages' => array( 'translate-js-nonext', 'translate-js-save-failed' ),
+ 'dependencies' => array(
+ 'jquery.form',
+ 'jquery.ui.dialog',
+ 'jquery.autosize',
+ 'mediawiki.util',
+ ),
+) + $resourcePaths;
+
+$wgResourceModules['ext.translate.selecttoinput'] = array(
+ 'scripts' => 'resources/js/ext.translate.selecttoinput.js',
+) + $resourcePaths;
+
+$wgResourceModules['ext.translate.special.aggregategroups'] = array(
+ 'scripts' => 'resources/js/ext.translate.special.aggregategroups.js',
+ 'styles' => 'resources/css/ext.translate.special.aggregategroups.css',
+ 'position' => 'top',
+ 'dependencies' => array(
+ 'jquery.ui.autocomplete'
+ ),
+ 'messages' => array(
+ 'tpt-aggregategroup-remove-confirm',
+ 'tpt-aggregategroup-edit-name',
+ 'tpt-aggregategroup-edit-description',
+ 'tpt-aggregategroup-update',
+ 'tpt-aggregategroup-update-cancel',
+ 'tpt-invalid-group',
+ 'tpt-aggregategroup-add'
+ ),
+) + $resourcePaths;
+
+$wgResourceModules['ext.translate.special.importtranslations'] = array(
+ 'scripts' => 'resources/js/ext.translate.special.importtranslations.js',
+ 'dependencies' => array(
+ 'jquery.ui.autocomplete',
+ ),
+) + $resourcePaths;
+
+$wgResourceModules['ext.translate.special.languagestats'] = array(
+ 'scripts' => 'resources/js/ext.translate.special.languagestats.js',
+ 'styles' => 'resources/css/ext.translate.special.languagestats.css',
+ 'messages' => array(
+ 'translate-langstats-expandall',
+ 'translate-langstats-collapseall',
+ 'translate-langstats-expand',
+ 'translate-langstats-collapse'
+ ),
+ 'dependencies' => 'jquery.tablesorter',
+) + $resourcePaths;
+
+$wgResourceModules['ext.translate.special.managegroups'] = array(
+ 'styles' => 'resources/css/ext.translate.special.managegroups.css',
+ 'position' => 'top',
+) + $resourcePaths;
+
+$wgResourceModules['ext.translate.special.managetranslatorsandbox'] = array(
+ 'scripts' => 'resources/js/ext.translate.special.managetranslatorsandbox.js',
+ 'styles' => 'resources/css/ext.translate.special.managetranslatorsandbox.css',
+ 'position' => 'top',
+ 'dependencies' => array(
+ 'ext.translate.loader',
+ 'ext.translate.translationstashstorage',
+ 'ext.uls.buttons',
+ 'ext.uls.mediawiki',
+ 'mediawiki.api',
+ 'mediawiki.jqueryMsg',
+ 'mediawiki.language',
+ 'jquery.ui.dialog',
+ ),
+ 'messages' => array(
+ 'tsb-all-languages-button-label',
+ 'tsb-accept-button-label',
+ 'tsb-reject-button-label',
+ 'tsb-selected-count',
+ 'tsb-older-requests',
+ 'tsb-accept-all-button-label',
+ 'tsb-reject-all-button-label',
+ 'tsb-user-posted-a-comment',
+ 'tsb-reminder-link-text',
+ 'tsb-reminder-sending',
+ 'tsb-reminder-sent',
+ 'tsb-reminder-sent-new',
+ 'tsb-reminder-failed',
+ 'tsb-didnt-make-any-translations',
+ 'tsb-translations-source',
+ 'tsb-translations-user',
+ 'tsb-translations-current',
+ 'tsb-request-count',
+ 'tsb-no-requests-from-new-users',
+ ),
+) + $resourcePaths;
+
+$wgResourceModules['ext.translate.special.pagemigration'] = array(
+ 'styles' => 'resources/css/ext.translate.special.pagemigration.css',
+ 'scripts' => 'resources/js/ext.translate.special.pagemigration.js',
+ 'dependencies' => array(
+ 'mediawiki.api.edit',
+ 'mediawiki.ui.button',
+ 'jquery.ajaxdispatcher',
+ ),
+ 'messages' => array(
+ 'pm-page-does-not-exist',
+ 'pm-old-translations-missing',
+ 'pm-extra-units-warning',
+ 'pm-pagename-missing',
+ 'pm-langcode-missing',
+ 'pm-add-icon-hover-text',
+ 'pm-swap-icon-hover-text',
+ 'pm-delete-icon-hover-text',
+ 'pm-pagetitle-invalid',
+ ),
+) + $resourcePaths;
+
+$wgResourceModules['ext.translate.special.pagepreparation'] = array(
+ 'scripts' => 'resources/js/ext.translate.special.pagepreparation.js',
+ 'messages' => array(
+ 'pp-save-message',
+ 'pp-save-button-label',
+ 'pp-prepare-message',
+ 'pp-already-prepared-message',
+ 'pp-pagename-missing'
+ ),
+ 'dependencies' => array(
+ 'mediawiki.ui',
+ 'mediawiki.api',
+ 'mediawiki.api.edit',
+ 'jquery.mwExtension',
+ 'mediawiki.action.history.diff',
+ 'mediawiki.jqueryMsg',
+ ),
+) + $resourcePaths;
+
+$wgResourceModules['ext.translate.special.pagetranslation'] = array(
+ 'scripts' => 'resources/js/ext.translate.special.pagetranslation.js',
+ 'styles' => 'resources/css/ext.translate.special.pagetranslation.css',
+ 'dependencies' => array(
+ 'ext.translate.multiselectautocomplete',
+ 'mediawiki.ui.button',
+ ),
+ 'position' => 'top',
+) + $resourcePaths;
+
+$wgResourceModules['ext.translate.special.searchtranslations'] = array(
+ 'scripts' => 'resources/js/ext.translate.special.searchtranslations.js',
+ 'styles' => 'resources/css/ext.translate.special.searchtranslations.css',
+ 'dependencies' => array(
+ 'ext.translate.editor',
+ 'ext.uls.mediawiki',
+ 'ext.uls.geoclient',
+ 'ext.translate.groupselector',
+ 'mediawiki.Uri',
+ ),
+ 'messages' => array(
+ 'translate-documentation-language',
+ 'translate-search-more-languages-info',
+ 'translate-search-more-groups-info',
+ ),
+ 'position' => 'top',
+) + $resourcePaths;
+
+$wgResourceModules['ext.translate.special.supportedlanguages'] = array(
+ 'styles' => 'resources/css/ext.translate.special.supportedlanguages.css',
+ 'position' => 'top',
+) + $resourcePaths;
+
+$wgResourceModules['ext.translate.special.translate'] = array(
+ 'styles' => 'resources/css/ext.translate.special.translate.css',
+ 'scripts' => 'resources/js/ext.translate.special.translate.js',
+ 'position' => 'top',
+ 'dependencies' => array(
+ 'mediawiki.jqueryMsg',
+ 'mediawiki.Uri',
+ 'mediawiki.api.parse',
+ 'ext.translate.base',
+ 'ext.translate.groupselector',
+ 'ext.translate.messagetable',
+ 'ext.translate.navitoggle',
+ 'ext.translate.workflowselector',
+ 'ext.uls.mediawiki',
+ ),
+ 'messages' => array(
+ 'translate-workflow-set-do',
+ 'translate-workflow-set-doing',
+ 'translate-workflow-set-done',
+ 'translate-workflow-set-error-alreadyset',
+ 'translate-documentation-language',
+ 'translate-workflow-state-',
+ 'tpt-discouraged-language-force-header',
+ 'tpt-discouraged-language-force-content',
+ 'tpt-discouraged-language-header',
+ 'tpt-discouraged-language-content',
+ 'tux-editor-proofreading-hide-own-translations',
+ 'tux-editor-proofreading-show-own-translations',
+ ),
+) + $resourcePaths;
+
+$wgResourceModules['ext.translate.special.translationstash'] = array(
+ 'scripts' => 'resources/js/ext.translate.special.translationstash.js',
+ 'styles' => 'resources/css/ext.translate.special.translationstash.css',
+ 'position' => 'top',
+ 'dependencies' => array(
+ 'ext.translate.editor',
+ 'ext.translate.messagetable',
+ 'ext.translate.translationstashstorage',
+ 'mediawiki.language',
+ 'ext.uls.mediawiki',
+ ),
+ 'messages' => array(
+ 'translate-translationstash-translations',
+ 'translate-translationstash-skip-button-label',
+ 'tsb-limit-reached-title',
+ 'tsb-limit-reached-body',
+ ),
+) + $resourcePaths;
+
+$wgResourceModules['ext.translate.special.translationstats'] = array(
+ 'scripts' => 'resources/js/ext.translate.special.translationstats.js',
+ 'dependencies' => array(
+ 'jquery.ui.datepicker',
+ ),
+) + $resourcePaths;
+
+$wgResourceModules['ext.translate.statsbar'] = array(
+ 'styles' => 'resources/css/ext.translate.statsbar.css',
+ 'scripts' => 'resources/js/ext.translate.statsbar.js',
+ 'messages' => array(
+ 'translate-statsbar-tooltip',
+ 'translate-statsbar-tooltip-with-fuzzy',
+ ),
+ 'position' => 'top',
+) + $resourcePaths;
+
+$wgResourceModules['ext.translate.storage'] = array(
+ 'scripts' => 'resources/js/ext.translate.storage.js',
+) + $resourcePaths;
+
+
+$wgResourceModules['ext.translate.tabgroup'] = array(
+ 'styles' => 'resources/css/ext.translate.tabgroup.css',
+ 'position' => 'top',
+) + $resourcePaths;
+
+$wgResourceModules['ext.translate.translationstashstorage'] = array(
+ 'scripts' => 'resources/js/ext.translate.translationstashstorage.js',
+) + $resourcePaths;
+
+$wgResourceModules['ext.translate.workflowselector'] = array(
+ 'styles' => 'resources/css/ext.translate.workflowselector.css',
+ 'scripts' => 'resources/js/ext.translate.workflowselector.js',
+ 'messages' => array(
+ 'translate-workflow-set-doing',
+ 'translate-workflowstatus',
+ ),
+ 'dependencies' => array(
+ 'ext.translate.dropdownmenu',
+ ),
+) + $resourcePaths;
+
+// Third party module
+$wgResourceModules['jquery.ajaxdispatcher'] = array(
+ 'scripts' => 'resources/js/jquery.ajaxdispatcher.js',
+) + $resourcePaths;
+
+$wgResourceModules['jquery.autosize'] = array(
+ 'scripts' => 'resources/js/jquery.autosize.js',
+) + $resourcePaths;
+
+$wgResourceModules['jquery.textchange'] = array(
+ 'scripts' => 'resources/js/jquery.textchange.js',
+) + $resourcePaths;
+
+// Use different name to not conflict with core.
+// MediaWiki <= 1.23 has 1.8.x, which is too old for us.
+$wgResourceModules['jquery.ui.position.custom'] = array(
+ 'scripts' => 'resources/js/jquery.ui.position.js',
+) + $resourcePaths;
+
+$wgHooks['ResourceLoaderTestModules'][] =
+ // Dependencies must be arrays here
+ function ( array &$modules ) use ( $resourcePaths ) {
+ $modules['qunit']['ext.translate.parsers.test'] = array(
+ 'scripts' => array( 'tests/qunit/ext.translate.parsers.test.js' ),
+ 'dependencies' => array( 'ext.translate.parsers' ),
+ ) + $resourcePaths;
+
+ $modules['qunit']['ext.translate.special.pagemigration.test'] = array(
+ 'scripts' => array( 'tests/qunit/ext.translate.special.pagemigration.test.js' ),
+ 'dependencies' => array( 'ext.translate.special.pagemigration' ),
+ ) + $resourcePaths;
+
+ return true;
+ };
diff --git a/MLEB/Translate/Translate.MyLanguage.alias.php b/MLEB/Translate/Translate.MyLanguage.alias.php
new file mode 100644
index 00000000..71e10765
--- /dev/null
+++ b/MLEB/Translate/Translate.MyLanguage.alias.php
@@ -0,0 +1,309 @@
+<?php
+/**
+ * Aliases for the Special:MyLanguage of Translate extension.
+ * This is a backwards compatibility file that separates the translations
+ * in the extension from the translations of the same page's name
+ * in core MediaWiki. For more information see the following bug:
+ * https://bugzilla.wikimedia.org/show_bug.cgi?id=69461
+ *
+ * @file
+ * @license GPL-2.0+
+ */
+// @codingStandardsIgnoreFile
+
+$specialPageAliases = array();
+
+/** English (English) */
+$specialPageAliases['en'] = array(
+ 'MyLanguage' => array( 'MyLanguage' ),
+);
+
+/** Afrikaans (Afrikaans) */
+$specialPageAliases['af'] = array(
+ 'MyLanguage' => array( 'MyTaal' ),
+);
+
+/** Arabic (العربية) */
+$specialPageAliases['ar'] = array(
+ 'MyLanguage' => array( 'لغتي' ),
+);
+
+/** Aramaic (ܐܪܡܝܐ) */
+$specialPageAliases['arc'] = array(
+ 'MyLanguage' => array( 'ܠܫܢܐ_ܕܝܠܝ' ),
+);
+
+/** Egyptian Spoken Arabic (مصرى) */
+$specialPageAliases['arz'] = array(
+ 'MyLanguage' => array( 'اللغة_بتاعتى' ),
+);
+
+/** Assamese (অসমীয়া) */
+$specialPageAliases['as'] = array(
+ 'MyLanguage' => array( 'মোৰ_ভাষা' ),
+);
+
+/** Banjar (Bahasa Banjar) */
+$specialPageAliases['bjn'] = array(
+ 'MyLanguage' => array( 'Bahasa_ulun' ),
+);
+
+/** Breton (brezhoneg) */
+$specialPageAliases['br'] = array(
+ 'MyLanguage' => array( 'MaYezh' ),
+);
+
+/** буряад (буряад) */
+$specialPageAliases['bxr'] = array(
+ 'MyLanguage' => array( 'Минии_хэлэн' ),
+);
+
+/** Min Dong Chinese (Mìng-dĕ̤ng-ngṳ̄) */
+$specialPageAliases['cdo'] = array(
+ 'MyLanguage' => array( '我其語言' ),
+);
+
+/** Chechen (нохчийн) */
+$specialPageAliases['ce'] = array(
+ 'MyLanguage' => array( 'Сан_мотт' ),
+);
+
+/** German (Deutsch) */
+$specialPageAliases['de'] = array(
+ 'MyLanguage' => array( 'Meine_Sprache' ),
+);
+
+/** Zazaki (Zazaki) */
+$specialPageAliases['diq'] = array(
+ 'MyLanguage' => array( 'ZıwaneMe' ),
+);
+
+/** Greek (Ελληνικά) */
+$specialPageAliases['el'] = array(
+ 'MyLanguage' => array( 'ΗΓλώσσαΜου' ),
+);
+
+/** Esperanto (Esperanto) */
+$specialPageAliases['eo'] = array(
+ 'MyLanguage' => array( 'Mia_lingvo' ),
+);
+
+/** Spanish (español) */
+$specialPageAliases['es'] = array(
+ 'MyLanguage' => array( 'MiIdioma', 'Mi_idioma' ),
+);
+
+/** Persian (فارسی) */
+$specialPageAliases['fa'] = array(
+ 'MyLanguage' => array( 'زبان‌های_من' ),
+);
+
+/** Finnish (suomi) */
+$specialPageAliases['fi'] = array(
+ 'MyLanguage' => array( 'Oma_kieli' ),
+);
+
+/** French (français) */
+$specialPageAliases['fr'] = array(
+ 'MyLanguage' => array( 'MaLangue', 'Ma_langue' ),
+);
+
+/** Swiss German (Alemannisch) */
+$specialPageAliases['gsw'] = array(
+ 'MyLanguage' => array( 'Myyni_Sprooch' ),
+);
+
+/** Hebrew (עברית) */
+$specialPageAliases['he'] = array(
+ 'MyLanguage' => array( 'השפה_שלי' ),
+);
+
+/** Upper Sorbian (hornjoserbsce) */
+$specialPageAliases['hsb'] = array(
+ 'MyLanguage' => array( 'Moja_rěč' ),
+);
+
+/** Haitian (Kreyòl ayisyen) */
+$specialPageAliases['ht'] = array(
+ 'MyLanguage' => array( 'LangMwen' ),
+);
+
+/** Interlingua (interlingua) */
+$specialPageAliases['ia'] = array(
+ 'MyLanguage' => array( 'Mi_lingua' ),
+);
+
+/** Indonesian (Bahasa Indonesia) */
+$specialPageAliases['id'] = array(
+ 'MyLanguage' => array( 'Bahasa_saya' ),
+);
+
+/** Italian (italiano) */
+$specialPageAliases['it'] = array(
+ 'MyLanguage' => array( 'MiaLingua' ),
+);
+
+/** Japanese (日本語) */
+$specialPageAliases['ja'] = array(
+ 'MyLanguage' => array( '自分の言語' ),
+);
+
+/** Georgian (ქართული) */
+$specialPageAliases['ka'] = array(
+ 'MyLanguage' => array( 'ჩემი_ენა' ),
+);
+
+/** Khmer (ភាសាខ្មែរ) */
+$specialPageAliases['km'] = array(
+ 'MyLanguage' => array( 'ភាសារបស់ខ្ញុំ' ),
+);
+
+/** Korean (한국어) */
+$specialPageAliases['ko'] = array(
+ 'MyLanguage' => array( '내언어' ),
+);
+
+/** Karachay-Balkar (къарачай-малкъар) */
+$specialPageAliases['krc'] = array(
+ 'MyLanguage' => array( 'Мени_тилим' ),
+);
+
+/** Kurdish (Latin script) (Kurdî (latînî)‎) */
+$specialPageAliases['ku-latn'] = array(
+ 'MyLanguage' => array( 'Zimanê_Min' ),
+);
+
+/** Cornish (kernowek) */
+$specialPageAliases['kw'] = array(
+ 'MyLanguage' => array( 'OwYeth' ),
+);
+
+/** Luxembourgish (Lëtzebuergesch) */
+$specialPageAliases['lb'] = array(
+ 'MyLanguage' => array( 'Meng_Sprooch' ),
+);
+
+/** Macedonian (македонски) */
+$specialPageAliases['mk'] = array(
+ 'MyLanguage' => array( 'МојЈазик' ),
+);
+
+/** Malayalam (മലയാളം) */
+$specialPageAliases['ml'] = array(
+ 'MyLanguage' => array( 'എന്റെഭാഷ' ),
+);
+
+/** Marathi (मराठी) */
+$specialPageAliases['mr'] = array(
+ 'MyLanguage' => array( 'माझीभाषा' ),
+);
+
+/** Erzya (эрзянь) */
+$specialPageAliases['myv'] = array(
+ 'MyLanguage' => array( 'Келем' ),
+);
+
+/** Norwegian Bokmål (norsk bokmål) */
+$specialPageAliases['nb'] = array(
+ 'MyLanguage' => array( 'Mitt_språk' ),
+);
+
+/** Low Saxon (Netherlands) (Nedersaksies) */
+$specialPageAliases['nds-nl'] = array(
+ 'MyLanguage' => array( 'Mien_taal' ),
+);
+
+/** Dutch (Nederlands) */
+$specialPageAliases['nl'] = array(
+ 'MyLanguage' => array( 'MijnTaal' ),
+);
+
+/** Norwegian Nynorsk (norsk nynorsk) */
+$specialPageAliases['nn'] = array(
+ 'MyLanguage' => array( 'Språket_mitt' ),
+);
+
+/** Punjabi (ਪੰਜਾਬੀ) */
+$specialPageAliases['pa'] = array(
+ 'MyLanguage' => array( 'ਮੇਰੀ_ਭਾਸ਼ਾ', 'ਮੇਰੀ_ਬੋਲੀ' ),
+);
+
+/** Polish (polski) */
+$specialPageAliases['pl'] = array(
+ 'MyLanguage' => array( 'Mój_język' ),
+);
+
+/** Quechua (Runa Simi) */
+$specialPageAliases['qu'] = array(
+ 'MyLanguage' => array( 'Rimayniy' ),
+);
+
+/** Russian (русский) */
+$specialPageAliases['ru'] = array(
+ 'MyLanguage' => array( 'Мой_язык' ),
+);
+
+/** Sicilian (sicilianu) */
+$specialPageAliases['scn'] = array(
+ 'MyLanguage' => array( 'MiaLingua' ),
+);
+
+/** Serbian (Cyrillic script) (српски (ћирилица)‎) */
+$specialPageAliases['sr-ec'] = array(
+ 'MyLanguage' => array( 'Мој_језик' ),
+);
+
+/** Swedish (svenska) */
+$specialPageAliases['sv'] = array(
+ 'MyLanguage' => array( 'Mitt_språk' ),
+);
+
+/** Thai (ไทย) */
+$specialPageAliases['th'] = array(
+ 'MyLanguage' => array( 'ภาษาของฉัน' ),
+);
+
+/** толышә зывон (толышә зывон) */
+$specialPageAliases['tly'] = array(
+ 'MyLanguage' => array( 'Чымы_зывон' ),
+);
+
+/** Turkish (Türkçe) */
+$specialPageAliases['tr'] = array(
+ 'MyLanguage' => array( 'Dilim', 'BenimDilim' ),
+);
+
+/** Tatar (Cyrillic script) (татарча) */
+$specialPageAliases['tt-cyrl'] = array(
+ 'MyLanguage' => array( 'Телем' ),
+);
+
+/** Tuvinian (тыва дыл) */
+$specialPageAliases['tyv'] = array(
+ 'MyLanguage' => array( 'Дылым' ),
+);
+
+/** Ukrainian (українська) */
+$specialPageAliases['uk'] = array(
+ 'MyLanguage' => array( 'Моя_мова' ),
+);
+
+/** Vietnamese (Tiếng Việt) */
+$specialPageAliases['vi'] = array(
+ 'MyLanguage' => array( 'Ngôn_ngữ_tôi' ),
+);
+
+/** Cantonese (粵語) */
+$specialPageAliases['yue'] = array(
+ 'MyLanguage' => array( '我個話' ),
+);
+
+/** Simplified Chinese (中文(简体)‎) */
+$specialPageAliases['zh-hans'] = array(
+ 'MyLanguage' => array( '我的语言' ),
+);
+
+/** Traditional Chinese (中文(繁體)‎) */
+$specialPageAliases['zh-hant'] = array(
+ 'MyLanguage' => array( '我的語言' ),
+);
diff --git a/MLEB/Translate/Translate.alias.php b/MLEB/Translate/Translate.alias.php
new file mode 100644
index 00000000..f6b7b049
--- /dev/null
+++ b/MLEB/Translate/Translate.alias.php
@@ -0,0 +1,1124 @@
+<?php
+/**
+ * Aliases for special pages of Translate extension.
+ *
+ * @file
+ * @license GPL-2.0+
+ */
+// @codingStandardsIgnoreFile
+
+$specialPageAliases = array();
+
+/** English (English) */
+$specialPageAliases['en'] = array(
+ 'AggregateGroups' => array( 'AggregateGroups' ),
+ 'ImportTranslations' => array( 'ImportTranslations' ),
+ 'LanguageStats' => array( 'LanguageStats' ),
+ 'Magic' => array( 'AdvancedTranslate', 'Magic' ),
+ 'ManageMessageGroups' => array( 'ManageMessageGroups' ),
+ 'ManageTranslatorSandbox' => array( 'ManageTranslatorSandbox', 'TranslateSandbox' ),
+ 'MessageGroupStats' => array( 'MessageGroupStats' ),
+ 'PageTranslation' => array( 'PageTranslation' ),
+ 'PageTranslationDeletePage' => array( 'PageTranslationDeletePage' ),
+ 'SearchTranslations' => array( 'SearchTranslations' ),
+ 'SupportedLanguages' => array( 'SupportedLanguages' ),
+ 'Translate' => array( 'Translate' ),
+ 'TranslationStash' => array( 'TranslationStash' ),
+ 'TranslationStats' => array( 'TranslationStats', 'TranslationStatistics' ),
+ 'Translations' => array( 'Translations' ),
+ 'PageMigration' => array( 'PageMigration' ),
+ 'PagePreparation' => array( 'PagePreparation' ),
+);
+
+/** Afrikaans (Afrikaans) */
+$specialPageAliases['af'] = array(
+ 'LanguageStats' => array( 'TaalStatsistieke' ),
+ 'Magic' => array( 'GevorderdeVertaal' ),
+ 'PageTranslation' => array( 'BladsyVertaling' ),
+ 'Translate' => array( 'Vertaal' ),
+ 'TranslationStats' => array( 'VertaalStatistieke' ),
+ 'Translations' => array( 'Vertalings' ),
+);
+
+/** Arabic (العربية) */
+$specialPageAliases['ar'] = array(
+ 'AggregateGroups' => array( 'مجموعات_مجمعة' ),
+ 'ImportTranslations' => array( 'استيراد_الترجمات' ),
+ 'LanguageStats' => array( 'إحصاءات_اللغات' ),
+ 'Magic' => array( 'ترجمة_متقدمة', 'ماجيك' ),
+ 'ManageMessageGroups' => array( 'التحكم_بمجموعات_الرسائل' ),
+ 'ManageTranslatorSandbox' => array( 'التحكم_بملعب_المترجم', 'ملعب_الترجمة' ),
+ 'MessageGroupStats' => array( 'إحصاءات_مجموعات_الرسائل' ),
+ 'PageTranslation' => array( 'ترجمة_صفحة' ),
+ 'PageTranslationDeletePage' => array( 'صفحة_حذف_ترجمة_الصفحة' ),
+ 'SearchTranslations' => array( 'بحث_الترجمات' ),
+ 'SupportedLanguages' => array( 'اللغات_المدعومة' ),
+ 'Translate' => array( 'ترجمة' ),
+ 'TranslationStash' => array( 'ستاش_الترجمة' ),
+ 'TranslationStats' => array( 'إحصاءات_الترجمة' ),
+ 'Translations' => array( 'ترجمات' ),
+ 'PageMigration' => array( 'هجرة_الصفحة' ),
+);
+
+/** Aramaic (ܐܪܡܝܐ) */
+$specialPageAliases['arc'] = array(
+ 'PageTranslation' => array( 'ܬܘܪܓܡܐ_ܕܦܐܬܐ' ),
+ 'SupportedLanguages' => array( 'ܠܫܢ̈ܐ_ܣܡܝܟ̈ܐ' ),
+ 'Translate' => array( 'ܬܪܓܡ' ),
+ 'Translations' => array( 'ܬܘܪ̈ܓܡܐ' ),
+);
+
+/** Egyptian Spoken Arabic (مصرى) */
+$specialPageAliases['arz'] = array(
+ 'AggregateGroups' => array( 'مجموعات_متجمعه' ),
+ 'ImportTranslations' => array( 'استوراد_الترجمات' ),
+ 'LanguageStats' => array( 'احصائيات_اللغات' ),
+ 'Magic' => array( 'ترجمة_متقدمة', 'ماجيك' ),
+ 'ManageMessageGroups' => array( 'التحكم_بمجموعات_الرسايل' ),
+ 'ManageTranslatorSandbox' => array( 'التحكم_بسبوره_المترجم', 'سبوره_الترجمه' ),
+ 'MessageGroupStats' => array( 'احصاءات_مجموعات_الرسايل' ),
+ 'PageTranslation' => array( 'ترجمة_صفحه' ),
+ 'PageTranslationDeletePage' => array( 'صفحه_حذف_ترجمه_الصفحه' ),
+ 'SearchTranslations' => array( 'تدوير_الترجمات' ),
+ 'SupportedLanguages' => array( 'اللغات_المتدعمه' ),
+ 'Translate' => array( 'ترجمه' ),
+ 'TranslationStash' => array( 'ستاش_الترجمه' ),
+ 'TranslationStats' => array( 'احصائيات_الترجمه' ),
+ 'Translations' => array( 'ترجمات' ),
+ 'PageMigration' => array( 'هجره_الصفحه' ),
+);
+
+/** Assamese (অসমীয়া) */
+$specialPageAliases['as'] = array(
+ 'ImportTranslations' => array( 'অনুবাদ_আমদানি_কৰক' ),
+ 'LanguageStats' => array( 'ভাষাৰ_পৰিসংখ্যা' ),
+ 'Magic' => array( 'উন্নত_অনুবাদ', 'যাদু' ),
+ 'MessageGroupStats' => array( 'বাৰ্তাৰ_গোট_পৰিসংখ্যা' ),
+ 'PageTranslation' => array( 'পৃষ্ঠা_অনুবাদ' ),
+ 'SupportedLanguages' => array( 'সমৰ্থিত_ভাষাসমূহ' ),
+ 'Translate' => array( 'অনুবাদ_কৰক' ),
+ 'TranslationStats' => array( 'অনুবাদ_পৰিসংখ্যা' ),
+ 'Translations' => array( 'অনুবাদসমূহ' ),
+);
+
+/** Asturian (asturianu) */
+$specialPageAliases['ast'] = array(
+ 'Translate' => array( 'Traducir' ),
+);
+
+/** Azerbaijani (azərbaycanca) */
+$specialPageAliases['az'] = array(
+ 'PageTranslation' => array( 'SəhifəTərcüməsi' ),
+ 'Translations' => array( 'Tərcümələr' ),
+);
+
+/** South Azerbaijani (تورکجه) */
+$specialPageAliases['azb'] = array(
+ 'PageTranslation' => array( 'صحیفه_چئویرمه‌سی' ),
+ 'Translations' => array( 'چئویرمه‌لر' ),
+);
+
+/** Bashkir (башҡортса) */
+$specialPageAliases['ba'] = array(
+ 'Magic' => array( 'AdvancedTranslate' ),
+ 'Translate' => array( 'Translate' ),
+ 'Translations' => array( 'Translations' ),
+);
+
+/** Southern Balochi (بلوچی مکرانی) */
+$specialPageAliases['bcc'] = array(
+ 'Magic' => array( 'پیشرپتگین ترجمه' ),
+ 'Translate' => array( 'ترجمه' ),
+);
+
+/** Bulgarian (български) */
+$specialPageAliases['bg'] = array(
+ 'Translate' => array( 'Превеждане' ),
+ 'Translations' => array( 'Преводи' ),
+);
+
+/** Banjar (Bahasa Banjar) */
+$specialPageAliases['bjn'] = array(
+ 'ImportTranslations' => array( 'Impor_tarjamahan' ),
+ 'LanguageStats' => array( 'Statistik_bahasa' ),
+ 'Magic' => array( 'Tarjamahakan_lanjut' ),
+ 'PageTranslation' => array( 'Tarjamahan_tungkaran' ),
+ 'Translate' => array( 'Tarjamahakan' ),
+ 'TranslationStats' => array( 'Statistik_tarjamahan' ),
+ 'Translations' => array( 'Tarjamahan' ),
+);
+
+/** Breton (brezhoneg) */
+$specialPageAliases['br'] = array(
+ 'ImportTranslations' => array( 'EnporzhiañTroidigezhioù' ),
+ 'LanguageStats' => array( 'StadegoùYezh' ),
+ 'Magic' => array( 'TreiñAraokaet' ),
+ 'PageTranslation' => array( 'TroidigezhPajenn' ),
+ 'SupportedLanguages' => array( 'Yezhoùskoret' ),
+ 'Translate' => array( 'Treiñ' ),
+ 'TranslationStats' => array( 'StadegoùTreiñ' ),
+ 'Translations' => array( 'Troidigezhioù' ),
+);
+
+/** Bosnian (bosanski) */
+$specialPageAliases['bs'] = array(
+ 'ImportTranslations' => array( 'UvozPrijevoda' ),
+ 'LanguageStats' => array( 'StatistikeJezika' ),
+ 'Magic' => array( 'NaprednoPrevodjenje' ),
+ 'PageTranslation' => array( 'PrijevodStranice' ),
+ 'Translate' => array( 'Prevedi' ),
+ 'TranslationStats' => array( 'StatistikePrevoda' ),
+ 'Translations' => array( 'Prijevodi' ),
+);
+
+/** буряад (буряад) */
+$specialPageAliases['bxr'] = array(
+ 'PageTranslation' => array( 'Хуудаһанай_оршуулга' ),
+ 'SupportedLanguages' => array( 'Дэмжэдэг_хэлэн' ),
+ 'Translate' => array( 'Оршуулха' ),
+ 'Translations' => array( 'Оршуулганууд' ),
+);
+
+/** Min Dong Chinese (Mìng-dĕ̤ng-ngṳ̄) */
+$specialPageAliases['cdo'] = array(
+ 'ImportTranslations' => array( '導底翻譯' ),
+ 'LanguageStats' => array( '語言統計' ),
+ 'Magic' => array( '高級翻譯' ),
+ 'ManageMessageGroups' => array( '管理信息組' ),
+ 'MessageGroupStats' => array( '信息組統計' ),
+ 'PageTranslation' => array( '頁面翻譯' ),
+ 'SupportedLanguages' => array( '支持其語言' ),
+ 'Translate' => array( '翻譯' ),
+ 'TranslationStats' => array( '翻譯統計' ),
+);
+
+/** Chechen (нохчийн) */
+$specialPageAliases['ce'] = array(
+ 'AggregateGroups' => array( 'Агрегированни_тобанаш' ),
+ 'ImportTranslations' => array( 'Гоч_йинарш_импорт_яр' ),
+ 'LanguageStats' => array( 'Меттан_статистика' ),
+ 'Magic' => array( 'Шордина_гочдар' ),
+ 'ManageMessageGroups' => array( 'Хаамийн_тобанийн_урхалла_дар' ),
+ 'MessageGroupStats' => array( 'Хаамийн_тобанийн_статистика' ),
+ 'PageTranslation' => array( 'АгӀонаш_гоч_яр' ),
+ 'PageTranslationDeletePage' => array( 'Гоч_еш_йолу_агӀо_дӀаяккхар' ),
+ 'SearchTranslations' => array( 'Гоч_йинарш_лахар' ),
+ 'SupportedLanguages' => array( 'Ловш_долу_меттанаш' ),
+ 'Translate' => array( 'Гоч_де' ),
+ 'TranslationStats' => array( 'Гочдаран_статистика' ),
+ 'Translations' => array( 'Гоч_дарш' ),
+);
+
+/** Cebuano (Cebuano) */
+$specialPageAliases['ceb'] = array(
+ 'Translate' => array( 'Hubara' ),
+);
+
+/** Czech (čeština) */
+$specialPageAliases['cs'] = array(
+ 'Translate' => array( 'Přeložit' ),
+);
+
+/** Danish (dansk) */
+$specialPageAliases['da'] = array(
+ 'PageTranslation' => array( 'Sideoversættelse' ),
+ 'Translate' => array( 'Oversæt' ),
+);
+
+/** German (Deutsch) */
+$specialPageAliases['de'] = array(
+ 'AggregateGroups' => array( 'Zusammenfassende_Nachrichtengruppen' ),
+ 'ImportTranslations' => array( 'Übersetzungen_importieren' ),
+ 'LanguageStats' => array( 'Sprachstatistiken' ),
+ 'Magic' => array( 'Erweitertes_Übersetzen' ),
+ 'ManageMessageGroups' => array( 'Nachrichtengruppen_verwalten' ),
+ 'ManageTranslatorSandbox' => array( 'Übersetzerspielwiese_verwalten' ),
+ 'MessageGroupStats' => array( 'Nachrichtengruppenstatistiken' ),
+ 'PageTranslation' => array( 'Übersetzung_von_Seiten' ),
+ 'PageTranslationDeletePage' => array( 'Löschseite_für_Übersetzungen' ),
+ 'SearchTranslations' => array( 'Übersetzungen_suchen' ),
+ 'SupportedLanguages' => array( 'Unterstützte_Sprachen' ),
+ 'Translate' => array( 'Übersetzen' ),
+ 'TranslationStash' => array( 'Übersetzungsversteck' ),
+ 'TranslationStats' => array( 'Übersetzungsstatistik' ),
+ 'Translations' => array( 'Übersetzungen' ),
+ 'PageMigration' => array( 'Seitenmigration' ),
+ 'PagePreparation' => array( 'Seitenvorbereitung' ),
+);
+
+/** Zazaki (Zazaki) */
+$specialPageAliases['diq'] = array(
+ 'AggregateGroups' => array( 'GrubéAggregate' ),
+ 'ImportTranslations' => array( 'AçarnayışaZerrefi' ),
+ 'LanguageStats' => array( 'Zıwanİst' ),
+ 'Magic' => array( 'AçarnayışoHerayen' ),
+ 'ManageMessageGroups' => array( 'GrubanéMesacanİdareke' ),
+ 'ManageTranslatorSandbox' => array( 'İdareyaQumdorAçarnayış', 'QumdorAçarnayış' ),
+ 'MessageGroupStats' => array( 'İstatistikéGrubandéMesacan' ),
+ 'PageTranslation' => array( 'PerraAçarnayış' ),
+ 'PageTranslationDeletePage' => array( 'PerraAçarnayışéPerraBesternayış' ),
+ 'SearchTranslations' => array( 'AçarnayışaCıgeyreyış' ),
+ 'SupportedLanguages' => array( 'ZıwanêkeDestegnênê' ),
+ 'Translate' => array( 'Açarnayış' ),
+ 'TranslationStash' => array( 'AçarnayışiNımnanyış' ),
+ 'TranslationStats' => array( 'İstatistikéAçarnayışi' ),
+ 'Translations' => array( 'Açarnoği' ),
+);
+
+/** Lower Sorbian (dolnoserbski) */
+$specialPageAliases['dsb'] = array(
+ 'LanguageStats' => array( 'Rěcne statistiki' ),
+ 'Magic' => array( 'Rozšyrjone pśełožowanje' ),
+ 'Translate' => array( 'Přełožiś' ),
+ 'TranslationStats' => array( 'Statistika pśełožkow' ),
+ 'Translations' => array( 'Pśełožki' ),
+);
+
+/** Divehi (ދިވެހިބަސް) */
+$specialPageAliases['dv'] = array(
+ 'Translate' => array( 'ތަރުޖަމާކުރައްވާ' ),
+ 'Translations' => array( 'ތަރުޖަމާތައް' ),
+);
+
+/** Greek (Ελληνικά) */
+$specialPageAliases['el'] = array(
+ 'AggregateGroups' => array( 'ΣυγκεντρωτικέςΟμάδες' ),
+ 'ImportTranslations' => array( 'ΕισαγωγήΜεταφράσεων' ),
+ 'LanguageStats' => array( 'ΣτατιστικάΓλώσσας' ),
+ 'Magic' => array( 'ΠροχωρημένηΜετάφραση', 'ΜαγικέςΛέξεις' ),
+ 'ManageMessageGroups' => array( 'ΔιαχείρισηΟμάδωνΜηνυμάτων' ),
+ 'ManageTranslatorSandbox' => array( 'ΔιαχείρισηΑμμοδοχείουΜεταφραστή', 'ΑμμοδοχείοΜετάφρασης' ),
+ 'MessageGroupStats' => array( 'ΣτατιστικάΟμάδαςΜηνυμάτων' ),
+ 'PageTranslation' => array( 'ΜετάφρασηΣελίδας' ),
+ 'PageTranslationDeletePage' => array( 'ΔιαγραφήΣελίδαςΜετάφρασηςΣελίδων' ),
+ 'SearchTranslations' => array( 'ΑναζήτησηΜεταφράσεων' ),
+ 'SupportedLanguages' => array( 'ΥποστηριζόμενεςΓλώσσες' ),
+ 'Translate' => array( 'Μετάφραση' ),
+ 'TranslationStats' => array( 'ΣτατιστικάΜετάφρασης' ),
+ 'Translations' => array( 'Μεταφράσεις' ),
+);
+
+/** Esperanto (Esperanto) */
+$specialPageAliases['eo'] = array(
+ 'ImportTranslations' => array( 'Enporti_tradukojn', 'Importi_tradukojn' ),
+ 'LanguageStats' => array( 'Lingvaj_statistikoj' ),
+ 'Magic' => array( 'Altnivela_tradukado' ),
+ 'SearchTranslations' => array( 'Serĉi_tradukojn' ),
+ 'SupportedLanguages' => array( 'Subtenataj_lingvoj' ),
+ 'Translate' => array( 'Traduki' ),
+ 'TranslationStats' => array( 'Statistikol_pri_tradukado' ),
+ 'Translations' => array( 'Tradukoj' ),
+);
+
+/** Spanish (español) */
+$specialPageAliases['es'] = array(
+ 'Magic' => array( 'Traducción_avanzada' ),
+ 'SupportedLanguages' => array( 'IdiomasAdmitidos' ),
+ 'Translate' => array( 'Traducir' ),
+ 'Translations' => array( 'Traducciones' ),
+);
+
+/** Persian (فارسی) */
+$specialPageAliases['fa'] = array(
+ 'AggregateGroups' => array( 'جمع_گروه‌ها' ),
+ 'ImportTranslations' => array( 'درون‌بری_ترجمه‌ها' ),
+ 'LanguageStats' => array( 'آمار_زبان‌ها' ),
+ 'Magic' => array( 'ترجمه_پیشرفته' ),
+ 'ManageMessageGroups' => array( 'مدیریت_گروه‌های_پیغام' ),
+ 'ManageTranslatorSandbox' => array( 'مدیریت_صفحهٔ_تمرین_ترجمه', 'صفحهٔ_تمرین_ترجمه' ),
+ 'MessageGroupStats' => array( 'آمار_گروه_پیغام' ),
+ 'PageTranslation' => array( 'ترجمه_صفحه' ),
+ 'PageTranslationDeletePage' => array( 'صفحه_حذف_ترجمه_صفحه' ),
+ 'SearchTranslations' => array( 'جستجوی_ترجمه‌ها' ),
+ 'SupportedLanguages' => array( 'زبان‌های_پشتیبانی‌شده' ),
+ 'Translate' => array( 'ترجمه' ),
+ 'TranslationStats' => array( 'آمار_ترجمه‌ها' ),
+ 'Translations' => array( 'ترجمه‌ها' ),
+ 'PageMigration' => array( 'مهاجرت_صفحه' ),
+);
+
+/** Finnish (suomi) */
+$specialPageAliases['fi'] = array(
+ 'ImportTranslations' => array( 'Käännösten_tuonti' ),
+ 'LanguageStats' => array( 'Kielitilastot' ),
+ 'Magic' => array( 'Laajennettu_kääntäminen' ),
+ 'ManageMessageGroups' => array( 'Viestiryhmien_hallinta' ),
+ 'PageTranslation' => array( 'Sivujen_kääntäminen' ),
+ 'SupportedLanguages' => array( 'Tuetut_kielet' ),
+ 'Translate' => array( 'Käännä' ),
+ 'TranslationStats' => array( 'Käännöstilastot' ),
+ 'Translations' => array( 'Käännökset' ),
+);
+
+/** French (français) */
+$specialPageAliases['fr'] = array(
+ 'LanguageStats' => array( 'StatistiquesDesLangues', 'Statistiques_des_langues' ),
+ 'Magic' => array( 'Traduction_avancée', 'Traductionavancée', 'Traduction_avancee', 'Traductionavancee' ),
+ 'Translate' => array( 'Traduire' ),
+ 'TranslationStats' => array( 'StatistiquesDesTraductions', 'Statistiques_des_traductions' ),
+ 'Translations' => array( 'Traductions' ),
+);
+
+/** Franco-Provençal (arpetan) */
+$specialPageAliases['frp'] = array(
+ 'LanguageStats' => array( 'Statistiques_de_les_lengoues', 'StatistiquesDeLesLengoues' ),
+ 'Magic' => array( 'Traduccion_avanciê', 'TraduccionAavanciê' ),
+ 'Translate' => array( 'Traduire' ),
+ 'TranslationStats' => array( 'Statistiques_de_traduccion', 'StatistiquesDeTraduccion' ),
+ 'Translations' => array( 'Traduccions' ),
+);
+
+/** Galician (galego) */
+$specialPageAliases['gl'] = array(
+ 'ImportTranslations' => array( 'Importar_traducións' ),
+ 'LanguageStats' => array( 'Estatísticas_da_lingua' ),
+ 'Magic' => array( 'Tradución_avanzada' ),
+ 'PageTranslation' => array( 'Tradución_de_páxinas' ),
+ 'Translate' => array( 'Traducir' ),
+ 'TranslationStats' => array( 'Estatísticas_da_tradución' ),
+ 'Translations' => array( 'Traducións' ),
+);
+
+/** Swiss German (Alemannisch) */
+$specialPageAliases['gsw'] = array(
+ 'ImportTranslations' => array( 'Übersetzige_importiere' ),
+ 'LanguageStats' => array( 'Sprochstatischtik' ),
+ 'Magic' => array( 'Usgwytets_Ibersetze' ),
+ 'ManageMessageGroups' => array( 'Noochrichtegruppe_verwalte' ),
+ 'MessageGroupStats' => array( 'Noochrichtegruppestatistike' ),
+ 'PageTranslation' => array( 'Übersetzig_vo_Syte' ),
+ 'PageTranslationDeletePage' => array( 'Löschsyte_für_Übersetzige' ),
+ 'SupportedLanguages' => array( 'Sprooche_wo_unterstützt_werde' ),
+ 'Translate' => array( 'Ibersetze' ),
+ 'TranslationStats' => array( 'Ibersetzigsstatischtik' ),
+ 'Translations' => array( 'Ibersetzige' ),
+);
+
+/** Hebrew (עברית) */
+$specialPageAliases['he'] = array(
+ 'AggregateGroups' => array( 'קבוצות_משולבות' ),
+ 'ImportTranslations' => array( 'ייבוא_תרגומים' ),
+ 'LanguageStats' => array( 'סטטיסטיקות_שפה' ),
+ 'Magic' => array( 'תרגום_מתקדם' ),
+ 'ManageMessageGroups' => array( 'ניהול_קבוצות_הודעות' ),
+ 'ManageTranslatorSandbox' => array( 'ניהול_ארגז_חול_של_מתרגמים' ),
+ 'MessageGroupStats' => array( 'סטטיסטיקות_של_קבוצות_הודעות' ),
+ 'PageTranslation' => array( 'תרגום_דף' ),
+ 'PageTranslationDeletePage' => array( 'מחיקת_דף_מתורגם' ),
+ 'SearchTranslations' => array( 'חיפוש_תרגומים' ),
+ 'SupportedLanguages' => array( 'שפות_נתמכות' ),
+ 'Translate' => array( 'תרגום' ),
+ 'TranslationStash' => array( 'מחסן_תרגומים' ),
+ 'TranslationStats' => array( 'סטטיסטיקות_תרגום' ),
+ 'Translations' => array( 'תרגומים' ),
+ 'PageMigration' => array( 'המרת_דף' ),
+ 'PagePreparation' => array( 'הכנת_דף' ),
+);
+
+/** Hindi (हिन्दी) */
+$specialPageAliases['hi'] = array(
+ 'Translate' => array( 'अनुवाद' ),
+);
+
+/** Croatian (hrvatski) */
+$specialPageAliases['hr'] = array(
+ 'Translate' => array( 'Prevedi' ),
+);
+
+/** Upper Sorbian (hornjoserbsce) */
+$specialPageAliases['hsb'] = array(
+ 'ImportTranslations' => array( 'Přełožki_importować' ),
+ 'LanguageStats' => array( 'Rěčne_statistiki' ),
+ 'Magic' => array( 'Rozšěrjene_přełožowanje', 'Magiske' ),
+ 'PageTranslation' => array( 'Přełožowanje_stronow' ),
+ 'SearchTranslations' => array( 'Přełožki_pytać' ),
+ 'SupportedLanguages' => array( 'Podpěrane_rěče' ),
+ 'Translate' => array( 'Přełožić' ),
+ 'TranslationStats' => array( 'Statistika_přełožkow' ),
+ 'Translations' => array( 'Přełožki' ),
+);
+
+/** Haitian (Kreyòl ayisyen) */
+$specialPageAliases['ht'] = array(
+ 'ImportTranslations' => array( 'EnpòteTradiksyon' ),
+ 'LanguageStats' => array( 'EstatistikLang' ),
+ 'Magic' => array( 'TradiksyonAvanse', 'Magik' ),
+ 'ManageMessageGroups' => array( 'GereGwoupMesaj' ),
+ 'PageTranslation' => array( 'TradiksyonPaj' ),
+ 'SupportedLanguages' => array( 'LangSipòte' ),
+ 'Translate' => array( 'Tradui' ),
+ 'TranslationStats' => array( 'EstatistikTradiksyon' ),
+ 'Translations' => array( 'TradiksyonYo' ),
+);
+
+/** Hungarian (magyar) */
+$specialPageAliases['hu'] = array(
+ 'LanguageStats' => array( 'Nyelvi_statisztika' ),
+ 'Magic' => array( 'Fejlettebb_fordító' ),
+ 'Translate' => array( 'Fordítás' ),
+ 'TranslationStats' => array( 'Fordítási_statisztika' ),
+ 'Translations' => array( 'Fordítások' ),
+);
+
+/** Interlingua (interlingua) */
+$specialPageAliases['ia'] = array(
+ 'ImportTranslations' => array( 'Importar_traductiones' ),
+ 'LanguageStats' => array( 'Statisticas_de_linguas' ),
+ 'Magic' => array( 'Traduction_avantiate', 'Magia' ),
+ 'ManageMessageGroups' => array( 'Gerer_gruppos_de_messages' ),
+ 'MessageGroupStats' => array( 'Statisticas_de_gruppos_de_messages' ),
+ 'PageTranslation' => array( 'Traduction_de_paginas' ),
+ 'PageTranslationDeletePage' => array( 'Deler_pagina_traducite' ),
+ 'SupportedLanguages' => array( 'Linguas_supportate' ),
+ 'Translate' => array( 'Traducer' ),
+ 'TranslationStats' => array( 'Statisticas_de_traduction' ),
+ 'Translations' => array( 'Traductiones' ),
+);
+
+/** Indonesian (Bahasa Indonesia) */
+$specialPageAliases['id'] = array(
+ 'ImportTranslations' => array( 'Impor_terjemahan', 'ImporTerjemahan' ),
+ 'LanguageStats' => array( 'Statistik_bahasa', 'StatistikBahasa' ),
+ 'Magic' => array( 'Terjemahkan_lanjut', 'TerjemahkanLanjut' ),
+ 'ManageMessageGroups' => array( 'Kelola_pesan_grup', 'KelolaPesanGrup' ),
+ 'MessageGroupStats' => array( 'Statistik_pesan_grup', 'StatistikPesanGrup' ),
+ 'PageTranslation' => array( 'Terjemahan_halaman', 'TerjemahanHalaman' ),
+ 'SearchTranslations' => array( 'Cari_terjemahan', 'CariTerjemahan' ),
+ 'SupportedLanguages' => array( 'Bahasa_yang_didukung', 'BahasaDidukung' ),
+ 'Translate' => array( 'Terjemahkan' ),
+ 'TranslationStats' => array( 'Statistik_terjemahan', 'StatistikTerjemahan' ),
+ 'Translations' => array( 'Terjemahan' ),
+);
+
+/** Icelandic (íslenska) */
+$specialPageAliases['is'] = array(
+ 'Translate' => array( 'Þýða' ),
+);
+
+/** Italian (italiano) */
+$specialPageAliases['it'] = array(
+ 'AggregateGroups' => array( 'GruppiAggregati' ),
+ 'ImportTranslations' => array( 'ImportaTraduzioni' ),
+ 'LanguageStats' => array( 'StatisticheLingua' ),
+ 'Magic' => array( 'TraduciAvanzato' ),
+ 'ManageMessageGroups' => array( 'GestisciGruppiMessaggio' ),
+ 'MessageGroupStats' => array( 'StatisticheGruppiMessaggio' ),
+ 'PageTranslation' => array( 'TraduzionePagina' ),
+ 'SearchTranslations' => array( 'CercaTraduzioni' ),
+ 'SupportedLanguages' => array( 'LingueSupportate' ),
+ 'Translate' => array( 'Traduci' ),
+ 'TranslationStats' => array( 'StatisticheTraduzione' ),
+ 'Translations' => array( 'Traduzioni' ),
+);
+
+/** Japanese (日本語) */
+$specialPageAliases['ja'] = array(
+ 'AggregateGroups' => array( '集約群' ),
+ 'ImportTranslations' => array( '翻訳取り込み', '翻訳インポート' ),
+ 'LanguageStats' => array( '言語統計' ),
+ 'Magic' => array( '高度な翻訳' ),
+ 'ManageMessageGroups' => array( 'メッセージ群の管理' ),
+ 'ManageTranslatorSandbox' => array( '翻訳者サンドボックスの管理' ),
+ 'MessageGroupStats' => array( 'メッセージグループ統計' ),
+ 'PageTranslation' => array( 'ページ翻訳' ),
+ 'PageTranslationDeletePage' => array( 'ページ翻訳削除ページ' ),
+ 'SearchTranslations' => array( '翻訳の検索' ),
+ 'SupportedLanguages' => array( 'サポートしている言語' ),
+ 'Translate' => array( '翻訳' ),
+ 'TranslationStats' => array( '翻訳統計' ),
+ 'Translations' => array( '翻訳結果' ),
+);
+
+/** Georgian (ქართული) */
+$specialPageAliases['ka'] = array(
+ 'LanguageStats' => array( 'ენის_სტატისტიკა' ),
+ 'SupportedLanguages' => array( 'მხარდაჭერილი_ენები' ),
+ 'Translate' => array( 'თარგმნა' ),
+ 'TranslationStats' => array( 'თარგმნის_სტატისტიკა' ),
+ 'Translations' => array( 'თარგმანები' ),
+);
+
+/** Khmer (ភាសាខ្មែរ) */
+$specialPageAliases['km'] = array(
+ 'ImportTranslations' => array( 'ការបកប្រែនាំចូល' ),
+ 'LanguageStats' => array( 'ស្ថិតិភាសា' ),
+ 'Magic' => array( 'បកប្រែថ្នាក់ខ្ពស់' ),
+ 'ManageMessageGroups' => array( 'គ្រប់គ្រងក្រុមសារ' ),
+ 'PageTranslation' => array( 'ការបកប្រែទំព័រ' ),
+ 'SupportedLanguages' => array( 'ភាសាដែលអាចប្រើបាន' ),
+ 'Translate' => array( 'បកប្រែ' ),
+ 'TranslationStats' => array( 'ស្ថិតិការបកប្រែ' ),
+ 'Translations' => array( 'ការបកប្រែ' ),
+);
+
+/** Korean (한국어) */
+$specialPageAliases['ko'] = array(
+ 'AggregateGroups' => array( '집계그룹' ),
+ 'ImportTranslations' => array( '번역가져오기' ),
+ 'LanguageStats' => array( '언어통계' ),
+ 'Magic' => array( '고급번역' ),
+ 'ManageMessageGroups' => array( '메시지그룹관리' ),
+ 'ManageTranslatorSandbox' => array( '번역자연습장관리', '번역연습장' ),
+ 'MessageGroupStats' => array( '메시지그룹통계' ),
+ 'PageTranslation' => array( '문서번역' ),
+ 'PageTranslationDeletePage' => array( '문서번역삭제문서' ),
+ 'SearchTranslations' => array( '번역검색', '번역찾기' ),
+ 'SupportedLanguages' => array( '지원하는언어' ),
+ 'Translate' => array( '번역' ),
+ 'TranslationStash' => array( '비공개번역' ),
+ 'TranslationStats' => array( '번역통계' ),
+ 'Translations' => array( '번역목록' ),
+ 'PageMigration' => array( '문서이주' ),
+);
+
+/** Colognian (Ripoarisch) */
+$specialPageAliases['ksh'] = array(
+ 'LanguageStats' => array( 'Shtatistike_vu_de_Shprooche' ),
+ 'Magic' => array( 'Extras', 'Extras Översäze', 'ExtrasÖversäze' ),
+ 'Translate' => array( 'Övversäze' ),
+ 'TranslationStats' => array( 'Statistik vun fun de Övversäzung', 'Övversäzungszahle', 'Statistik vun fun de Övversäzong', 'Övversäzongszahle' ),
+ 'Translations' => array( 'Övversätzunge' ),
+);
+
+/** Kurdish (Latin script) (Kurdî (latînî)‎) */
+$specialPageAliases['ku-latn'] = array(
+ 'Translate' => array( 'Wergerîne' ),
+ 'Translations' => array( 'Werger' ),
+);
+
+/** Cornish (kernowek) */
+$specialPageAliases['kw'] = array(
+ 'ImportTranslations' => array( 'YmperthiTreylyansow' ),
+ 'LanguageStats' => array( 'StatystygyonYeth' ),
+ 'Magic' => array( 'TreylyaAvonsys' ),
+ 'PageTranslation' => array( 'TreylyansFolennow' ),
+ 'SupportedLanguages' => array( 'YethowSkoodhys' ),
+ 'Translate' => array( 'Treylya' ),
+ 'TranslationStats' => array( 'StatystygronTreylya' ),
+ 'Translations' => array( 'Treylyansow' ),
+);
+
+/** Luxembourgish (Lëtzebuergesch) */
+$specialPageAliases['lb'] = array(
+ 'ImportTranslations' => array( 'Iwwersetzungen_importéieren' ),
+ 'LanguageStats' => array( 'Sproochestatistiken' ),
+ 'Magic' => array( 'Erweidert_Iwwersetzung' ),
+ 'ManageMessageGroups' => array( 'Gruppe_vu_Message_geréieren' ),
+ 'ManageTranslatorSandbox' => array( 'Iwwersetzungssandkëscht_geréieren' ),
+ 'MessageGroupStats' => array( 'Statistike_vun_de_Gruppe_vu_Messagen' ),
+ 'PageTranslation' => array( 'Säiten-Iwwersetzung' ),
+ 'PageTranslationDeletePage' => array( 'Läschsäit_fir_Iwwersetzungen' ),
+ 'SearchTranslations' => array( 'Iwwersetzunge_sichen' ),
+ 'SupportedLanguages' => array( 'Ënnerstetzt_Sproochen' ),
+ 'Translate' => array( 'Iwwersetzen' ),
+ 'TranslationStats' => array( 'Iwwersetzungsstatistiken' ),
+ 'Translations' => array( 'Iwwersetzungen' ),
+);
+
+/** Lombard (lumbaart) */
+$specialPageAliases['lmo'] = array(
+ 'Translate' => array( 'Volta' ),
+ 'Translations' => array( 'Tradüzion' ),
+);
+
+/** Lithuanian (lietuvių) */
+$specialPageAliases['lt'] = array(
+ 'PageTranslation' => array( 'Puslapio vertimas' ),
+ 'Translate' => array( 'Vertimas' ),
+);
+
+/** Literary Chinese (文言) */
+$specialPageAliases['lzh'] = array(
+ 'Translate' => array( '譯' ),
+);
+
+/** Macedonian (македонски) */
+$specialPageAliases['mk'] = array(
+ 'AggregateGroups' => array( 'ЗбирниГрупи' ),
+ 'ImportTranslations' => array( 'УвезиПреводи' ),
+ 'LanguageStats' => array( 'СтатистикиЗаЈазик' ),
+ 'Magic' => array( 'НапредноПреведување' ),
+ 'ManageMessageGroups' => array( 'РаководењеСоГрупиНаПораки' ),
+ 'ManageTranslatorSandbox' => array( 'РаководиПреведувачкиПесочник' ),
+ 'MessageGroupStats' => array( 'СтатистикиЗаГупиПораки' ),
+ 'PageTranslation' => array( 'ПреводНаСтраницата' ),
+ 'PageTranslationDeletePage' => array( 'ПреводНаСтраницаИзбришиСтраница' ),
+ 'SearchTranslations' => array( 'ПребарајПреводи' ),
+ 'SupportedLanguages' => array( 'ПоддржаниЈазици' ),
+ 'Translate' => array( 'Преведување' ),
+ 'TranslationStash' => array( 'ПреведувачкиСклад' ),
+ 'TranslationStats' => array( 'СтатистикиЗаПреведување' ),
+ 'Translations' => array( 'Преводи' ),
+ 'PageMigration' => array( 'СелењеСтраници' ),
+ 'PagePreparation' => array( 'ПодготовнаНаСтраници' ),
+);
+
+/** Malayalam (മലയാളം) */
+$specialPageAliases['ml'] = array(
+ 'ImportTranslations' => array( 'പരിഭാഷാ_ഇറക്കുമതി' ),
+ 'LanguageStats' => array( 'ഭാഷാസ്ഥിതിവിവരം' ),
+ 'Magic' => array( 'വിപുലീകൃതപരിഭാഷ', 'മായാജാലം' ),
+ 'ManageMessageGroups' => array( 'സന്ദേശസംഘങ്ങളുടെകൈകാര്യം' ),
+ 'MessageGroupStats' => array( 'സന്ദേശഗണസ്ഥിതിവിവരം' ),
+ 'PageTranslation' => array( 'താളിന്റെപരിഭാഷ' ),
+ 'SearchTranslations' => array( 'പരിഭാഷകളിൽതിരയുക' ),
+ 'SupportedLanguages' => array( 'പിന്തുണയുള്ളഭാഷകൾ' ),
+ 'Translate' => array( 'പരിഭാഷ' ),
+ 'TranslationStats' => array( 'പരിഭാഷാസ്ഥിതിവിവരം' ),
+ 'Translations' => array( 'പരിഭാഷകൾ' ),
+);
+
+/** Marathi (मराठी) */
+$specialPageAliases['mr'] = array(
+ 'ImportTranslations' => array( 'भाषांतराआयात' ),
+ 'LanguageStats' => array( 'भाषासांख्यिकी' ),
+ 'Magic' => array( 'प्रगतभाषांतर', 'जादुई' ),
+ 'PageTranslation' => array( 'पृष्ठभाषांतर', 'पृष्ठअनुवाद' ),
+ 'SearchTranslations' => array( 'अनुवाद_शोधा' ),
+ 'Translate' => array( 'भाषांतर' ),
+ 'TranslationStats' => array( 'भाषांतरसांख्यिकी' ),
+ 'Translations' => array( 'भाषांतरणे' ),
+);
+
+/** Malay (Bahasa Melayu) */
+$specialPageAliases['ms'] = array(
+ 'Translate' => array( 'Terjemah' ),
+ 'Translations' => array( 'Terjemahan' ),
+);
+
+/** Maltese (Malti) */
+$specialPageAliases['mt'] = array(
+ 'LanguageStats' => array( 'StatistikaLingwa' ),
+ 'Magic' => array( 'TraduzzjoniAvvanzata' ),
+ 'PageTranslation' => array( 'TraduzzjoniPaġna' ),
+ 'Translate' => array( 'Traduzzjoni' ),
+ 'TranslationStats' => array( 'StatistikaTraduzzjoni' ),
+ 'Translations' => array( 'Traduzzjonijiet' ),
+);
+
+/** Mirandese (Mirandés) */
+$specialPageAliases['mwl'] = array(
+ 'Magic' => array( 'Traduçon Abançada' ),
+ 'Translate' => array( 'Traduzir' ),
+ 'TranslationStats' => array( 'Stado de la traduçon' ),
+ 'Translations' => array( 'Traduçones' ),
+);
+
+/** Erzya (эрзянь) */
+$specialPageAliases['myv'] = array(
+ 'Magic' => array( 'ПревейстэЮтавтомс', 'Магия' ),
+ 'Translate' => array( 'Ютавтомс' ),
+ 'TranslationStats' => array( 'ЮтавтомадоСтатистика' ),
+);
+
+/** Nāhuatl (Nāhuatl) */
+$specialPageAliases['nah'] = array(
+ 'Translate' => array( 'Tlahtōlcuepāz', 'Traducir' ),
+);
+
+/** Norwegian Bokmål (norsk bokmål) */
+$specialPageAliases['nb'] = array(
+ 'AggregateGroups' => array( 'Samlingsgrupper' ),
+ 'ImportTranslations' => array( 'Importer_oversettelser' ),
+ 'LanguageStats' => array( 'Språkstatistikk' ),
+ 'Magic' => array( 'Avansert_oversettelse', 'Avansert_oversetting', 'Magi' ),
+ 'ManageMessageGroups' => array( 'Behandle_meldingsgrupper' ),
+ 'MessageGroupStats' => array( 'Meldingsgruppestatistikk' ),
+ 'PageTranslation' => array( 'Sideoversettelse' ),
+ 'SearchTranslations' => array( 'Søk_i_oversettelser' ),
+ 'SupportedLanguages' => array( 'Støttede_språk' ),
+ 'Translate' => array( 'Oversett' ),
+ 'TranslationStats' => array( 'Oversettelsesstatistikk' ),
+ 'Translations' => array( 'Oversettelser' ),
+);
+
+/** Low German (Plattdüütsch) */
+$specialPageAliases['nds'] = array(
+ 'Translate' => array( 'Översetten' ),
+);
+
+/** Low Saxon (Netherlands) (Nedersaksies) */
+$specialPageAliases['nds-nl'] = array(
+ 'AggregateGroups' => array( 'Samen-evoegden_groepen' ),
+ 'ImportTranslations' => array( 'Vertalingen_invoeren' ),
+ 'LanguageStats' => array( 'Taalstaotistieken' ),
+ 'Magic' => array( 'Uutebreid_vertalen' ),
+ 'ManageMessageGroups' => array( 'Berichtengroepen_beheren' ),
+ 'ManageTranslatorSandbox' => array( 'Vertalers_zaandkule_beheren' ),
+ 'PageTranslation' => array( 'Ziedvertaling' ),
+ 'PageTranslationDeletePage' => array( 'Ziedvertaling_zied_vortdoon' ),
+ 'SearchTranslations' => array( 'Vertalingen_zeuken' ),
+ 'SupportedLanguages' => array( 'Ondersteunde_talen' ),
+ 'Translate' => array( 'Vertalen' ),
+ 'TranslationStats' => array( 'Vertaalstaotistieken' ),
+ 'Translations' => array( 'Vertalingen' ),
+);
+
+/** Dutch (Nederlands) */
+$specialPageAliases['nl'] = array(
+ 'AggregateGroups' => array( 'SamengevoegdeGroepen' ),
+ 'ImportTranslations' => array( 'VertalingenImporteren' ),
+ 'LanguageStats' => array( 'Taalstatistieken' ),
+ 'Magic' => array( 'UitgebreidVertalen', 'VertalenUitgebreid' ),
+ 'ManageMessageGroups' => array( 'BerichtengroepenBeheren' ),
+ 'ManageTranslatorSandbox' => array( 'VertalerszandbakBeheren' ),
+ 'MessageGroupStats' => array( 'Berichtengroepstatistieken' ),
+ 'PageTranslation' => array( 'Paginavertaling' ),
+ 'PageTranslationDeletePage' => array( 'PaginavertalingpaginaVerwijderen' ),
+ 'SearchTranslations' => array( 'VertalingenZoeken' ),
+ 'SupportedLanguages' => array( 'OndersteundeTalen' ),
+ 'Translate' => array( 'Vertalen' ),
+ 'TranslationStats' => array( 'Vertaalstatistieken', 'Vertalingsstatistieken' ),
+ 'Translations' => array( 'Vertalingen' ),
+ 'PageMigration' => array( 'PaginaMigreren' ),
+);
+
+/** Norwegian Nynorsk (norsk nynorsk) */
+$specialPageAliases['nn'] = array(
+ 'Magic' => array( 'Avansert_omsetjing' ),
+ 'Translate' => array( 'Set_om' ),
+ 'Translations' => array( 'Omsetjingar' ),
+);
+
+/** Occitan (occitan) */
+$specialPageAliases['oc'] = array(
+ 'Magic' => array( 'Traduccion avançada', 'Traduccionavançada', 'Traduccion avancada', 'Traduccionavancada' ),
+ 'Translate' => array( 'Traduire', 'Tradusir' ),
+ 'Translations' => array( 'Traduccions', 'Reviradas' ),
+);
+
+/** Oriya (ଓଡ଼ିଆ) */
+$specialPageAliases['or'] = array(
+ 'Translate' => array( 'ଅନୁବାଦ' ),
+ 'Translations' => array( 'ଅନୁବାଦସମୂହ' ),
+);
+
+/** Punjabi (ਪੰਜਾਬੀ) */
+$specialPageAliases['pa'] = array(
+ 'Magic' => array( 'ਉੱਚੇ_ਦਰਜੇ_ਦਾ_ਉਲਥਾ', 'ਜਾਦੂ' ),
+ 'PageTranslation' => array( 'ਸਫ਼ੇ_ਦਾ_ਉਲਥਾ', 'ਸਫ਼ੇ_ਦਾ_ਤਰਜਮਾ' ),
+ 'Translate' => array( 'ਉਲਥਾਓ', 'ਤਰਜਮਾ_ਕਰੋ' ),
+);
+
+/** Polish (polski) */
+$specialPageAliases['pl'] = array(
+ 'AggregateGroups' => array( 'Grupy_zbiorcze' ),
+ 'ImportTranslations' => array( 'Import_tłumaczeń' ),
+ 'LanguageStats' => array( 'Statystyka_językowa' ),
+ 'Magic' => array( 'Rozszerzone_tłumaczenie_MediaWiki' ),
+ 'ManageMessageGroups' => array( 'Zarządzanie_grupami_komunikatów' ),
+ 'PageTranslation' => array( 'Tłumaczenie_strony' ),
+ 'SupportedLanguages' => array( 'Wspierane_języki' ),
+ 'Translate' => array( 'Przetłumacz' ),
+ 'TranslationStats' => array( 'Statystyki_tłumaczenia' ),
+ 'Translations' => array( 'Tłumaczenia' ),
+ 'PageMigration' => array( 'Migracja_strony' ),
+ 'PagePreparation' => array( 'Przygotowanie_strony' ),
+);
+
+/** Pashto (پښتو) */
+$specialPageAliases['ps'] = array(
+ 'Magic' => array( 'پرمختللې ژباړه، کوډګريز' ),
+ 'Translate' => array( 'ژباړل' ),
+ 'Translations' => array( 'ژباړې' ),
+);
+
+/** Portuguese (português) */
+$specialPageAliases['pt'] = array(
+ 'ImportTranslations' => array( 'Importar_traduções' ),
+ 'LanguageStats' => array( 'Estatísticas_de_línguas' ),
+ 'Magic' => array( 'Tradução_avançada' ),
+ 'PageTranslation' => array( 'Tradução_de_páginas' ),
+ 'Translate' => array( 'Traduzir' ),
+ 'TranslationStats' => array( 'Estatísticas_de_traduções' ),
+ 'Translations' => array( 'Traduções' ),
+);
+
+/** Brazilian Portuguese (português do Brasil) */
+$specialPageAliases['pt-br'] = array(
+ 'Magic' => array( 'Tradução_avançada' ),
+ 'Translate' => array( 'Traduzir' ),
+ 'TranslationStats' => array( 'Estado_da_tradução', 'Status_da_tradução' ),
+);
+
+/** Quechua (Runa Simi) */
+$specialPageAliases['qu'] = array(
+ 'Magic' => array( 'NawparikusqaTikray' ),
+ 'ManageTranslatorSandbox' => array( 'TikranaPukllana' ),
+ 'Translate' => array( 'Tikray' ),
+);
+
+/** Romanian (română) */
+$specialPageAliases['ro'] = array(
+ 'ImportTranslations' => array( 'Importare_traduceri' ),
+ 'LanguageStats' => array( 'Statistici_limbă' ),
+ 'Magic' => array( 'Traducere_avansată' ),
+ 'PageTranslation' => array( 'Traducere_pagină' ),
+ 'Translate' => array( 'Traducere' ),
+ 'TranslationStats' => array( 'Statistici_traduceri' ),
+ 'Translations' => array( 'Traduceri' ),
+);
+
+/** Russian (русский) */
+$specialPageAliases['ru'] = array(
+ 'AggregateGroups' => array( 'Агрегированные_группы' ),
+ 'ImportTranslations' => array( 'Импорт_переводов' ),
+ 'LanguageStats' => array( 'Статистика_языка' ),
+ 'Magic' => array( 'Расширенный_перевод' ),
+ 'ManageMessageGroups' => array( 'Управление_группами_сообщений' ),
+ 'MessageGroupStats' => array( 'Статистика_группы_сообщений' ),
+ 'PageTranslation' => array( 'Перевод_страниц' ),
+ 'PageTranslationDeletePage' => array( 'Удаление_переводимой_страницы' ),
+ 'SearchTranslations' => array( 'Поиск_переводов' ),
+ 'SupportedLanguages' => array( 'Поддерживаемые_языки' ),
+ 'Translate' => array( 'Перевести' ),
+ 'TranslationStats' => array( 'Статистика_переводов' ),
+ 'Translations' => array( 'Переводы' ),
+);
+
+/** Sanskrit (संस्कृतम्) */
+$specialPageAliases['sa'] = array(
+ 'LanguageStats' => array( 'भाषासांख्यिकी' ),
+ 'Magic' => array( 'प्रगतभाषांतरमाया' ),
+ 'Translate' => array( 'भाषांतर' ),
+ 'TranslationStats' => array( 'भाषांतरसांख्यिकी' ),
+ 'Translations' => array( 'भाषांतरानि' ),
+);
+
+/** Sicilian (sicilianu) */
+$specialPageAliases['scn'] = array(
+ 'AggregateGroups' => array( 'GruppiAggregati' ),
+ 'ImportTranslations' => array( 'ImportaTraduzioni' ),
+ 'LanguageStats' => array( 'StatisticheLingua' ),
+ 'Magic' => array( 'TraduciAvanzato' ),
+ 'ManageMessageGroups' => array( 'GestisciGruppiMessaggio' ),
+ 'MessageGroupStats' => array( 'MessaggioGruppoStat' ),
+ 'PageTranslation' => array( 'TraduzionePagina' ),
+ 'SupportedLanguages' => array( 'LingueSupportate' ),
+ 'Translate' => array( 'Traduci' ),
+ 'TranslationStats' => array( 'StatisticheTraduzione' ),
+ 'Translations' => array( 'Traduzioni' ),
+);
+
+/** Sinhala (සිංහල) */
+$specialPageAliases['si'] = array(
+ 'Translate' => array( 'පරිවර්තනය' ),
+);
+
+/** Slovak (slovenčina) */
+$specialPageAliases['sk'] = array(
+ 'LanguageStats' => array( 'ŠtatistikyJazykov' ),
+ 'Magic' => array( 'RozšírenéPreložiť' ),
+ 'PageTranslation' => array( 'PrekladStránky' ),
+ 'Translate' => array( 'Preložiť' ),
+ 'TranslationStats' => array( 'ŠtatistikyPrekladov' ),
+ 'Translations' => array( 'Preklady' ),
+);
+
+/** Albanian (shqip) */
+$specialPageAliases['sq'] = array(
+ 'Translate' => array( 'Përkthe' ),
+);
+
+/** Serbian (Cyrillic script) (српски (ћирилица)‎) */
+$specialPageAliases['sr-ec'] = array(
+ 'ImportTranslations' => array( 'Увоз_превода' ),
+ 'LanguageStats' => array( 'Статистика_језика' ),
+ 'Magic' => array( 'Напредно_превођење' ),
+ 'ManageMessageGroups' => array( 'Управљање_групама_порука' ),
+ 'PageTranslation' => array( 'Превод_странице' ),
+ 'SupportedLanguages' => array( 'Подржани_језици' ),
+ 'Translate' => array( 'Преведи' ),
+ 'TranslationStats' => array( 'Статистика_превода' ),
+ 'Translations' => array( 'Преводи' ),
+);
+
+/** Sundanese (Basa Sunda) */
+$specialPageAliases['su'] = array(
+ 'LanguageStats' => array( 'StatBasa' ),
+ 'Magic' => array( 'TarjamahTeleb' ),
+ 'Translate' => array( 'Tarjamah' ),
+ 'TranslationStats' => array( 'StatTarjamah' ),
+ 'Translations' => array( 'Tarjamahan' ),
+);
+
+/** Swedish (svenska) */
+$specialPageAliases['sv'] = array(
+ 'ImportTranslations' => array( 'Importera_översättningar' ),
+ 'LanguageStats' => array( 'Språkstatistik' ),
+ 'Magic' => array( 'Avancerad_översättning' ),
+ 'Translate' => array( 'Översätt' ),
+ 'TranslationStats' => array( 'Översättningsstatistik' ),
+ 'Translations' => array( 'Översättningar' ),
+ 'PageMigration' => array( 'Sidmigrering' ),
+);
+
+/** Swahili (Kiswahili) */
+$specialPageAliases['sw'] = array(
+ 'Magic' => array( 'TasfiriyaJuu', 'Uchawi' ),
+ 'Translate' => array( 'Tafsiri' ),
+ 'TranslationStats' => array( 'TakwimuzaTafsiri' ),
+ 'Translations' => array( 'Tafsiri' ),
+);
+
+/** Telugu (తెలుగు) */
+$specialPageAliases['te'] = array(
+ 'ImportTranslations' => array( 'అనువాదాలదిగుమతి' ),
+ 'LanguageStats' => array( 'భాషాలెక్కలు' ),
+ 'PageTranslation' => array( 'పేజిఅనువాదము' ),
+ 'Translate' => array( 'అనువాదం' ),
+ 'TranslationStats' => array( 'అనువాదలెక్కలు' ),
+ 'Translations' => array( 'అనువాదాలు' ),
+);
+
+/** Thai (ไทย) */
+$specialPageAliases['th'] = array(
+ 'LanguageStats' => array( 'สถิติภาษา' ),
+ 'Magic' => array( 'การแปลขั้นสูง' ),
+ 'SupportedLanguages' => array( 'ภาษาที่รองรับ' ),
+ 'Translate' => array( 'แปล' ),
+ 'TranslationStats' => array( 'สถิติการแปล' ),
+ 'Translations' => array( 'การแปล' ),
+);
+
+/** Tagalog (Tagalog) */
+$specialPageAliases['tl'] = array(
+ 'LanguageStats' => array( 'Mga_estadistika_ng_wika' ),
+ 'Magic' => array( 'Mas_masulong_na_pagsasalinwika', 'Salamangka' ),
+ 'Translate' => array( 'Isalinwika' ),
+ 'TranslationStats' => array( 'Mga_estadistika_ng_salinwika' ),
+ 'Translations' => array( 'Mga_salinwika' ),
+);
+
+/** Turkish (Türkçe) */
+$specialPageAliases['tr'] = array(
+ 'AggregateGroups' => array( 'GruplarıBirleştirme' ),
+ 'ImportTranslations' => array( 'ÇevirileriİçeAktar' ),
+ 'LanguageStats' => array( 'Dilİstatistikleri' ),
+ 'Magic' => array( 'GelişmişÇeviri' ),
+ 'ManageMessageGroups' => array( 'MesajGruplarınıYönet', 'İletiGruplarınıYönet' ),
+ 'MessageGroupStats' => array( 'MesajGrubuİstatistikleri', 'İletiGrubuİstatistikleri' ),
+ 'PageTranslation' => array( 'SayfaÇevirisi' ),
+ 'PageTranslationDeletePage' => array( 'SayfaÇevirisiSayfaSilme' ),
+ 'SupportedLanguages' => array( 'DesteklenenDiller' ),
+ 'Translate' => array( 'Çevir', 'Çeviri' ),
+ 'TranslationStats' => array( 'Çeviriİstatistikleri' ),
+ 'Translations' => array( 'Çeviriler' ),
+);
+
+/** Tatar (Cyrillic script) (татарча) */
+$specialPageAliases['tt-cyrl'] = array(
+ 'LanguageStats' => array( 'Телләр_хисабы' ),
+ 'PageTranslation' => array( 'Битне_тәрҗемә_итү' ),
+ 'Translate' => array( 'Тәрҗемә' ),
+ 'TranslationStats' => array( 'Тәрҗемәләр_хисабы' ),
+ 'Translations' => array( 'Тәрҗемәләр' ),
+);
+
+/** Tuvinian (тыва дыл) */
+$specialPageAliases['tyv'] = array(
+ 'PageTranslation' => array( 'Арын_очулгазы' ),
+ 'PageTranslationDeletePage' => array( 'Очулдуругда_арынны_казыыр' ),
+ 'SearchTranslations' => array( 'Очулгалар_дилээр' ),
+ 'SupportedLanguages' => array( 'Дөгүмнээн_дылдар' ),
+ 'Translate' => array( 'Очулдурар' ),
+ 'TranslationStats' => array( 'Очулга_статистиказы' ),
+ 'Translations' => array( 'Очулгалар' ),
+);
+
+/** Ukrainian (українська) */
+$specialPageAliases['uk'] = array(
+ 'AggregateGroups' => array( 'Агреговані_групи' ),
+ 'ImportTranslations' => array( 'Імпорт_перекладів' ),
+ 'LanguageStats' => array( 'Статистика_мови' ),
+ 'Magic' => array( 'Поглиблений_переклад' ),
+ 'ManageMessageGroups' => array( 'Керування_групами_повідомлень' ),
+ 'MessageGroupStats' => array( 'Статистика_групи_повідомлень' ),
+ 'PageTranslation' => array( 'Переклад' ),
+ 'PageTranslationDeletePage' => array( 'Вилучення_перекладабельної_сторінки' ),
+ 'SearchTranslations' => array( 'Пошук_перекладів' ),
+ 'SupportedLanguages' => array( 'Підтримувані_мови' ),
+ 'Translate' => array( 'Перекласти' ),
+ 'TranslationStats' => array( 'Статистика_перекладів' ),
+ 'Translations' => array( 'Переклади' ),
+);
+
+/** Venetian (vèneto) */
+$specialPageAliases['vec'] = array(
+ 'Translate' => array( 'Tradusi' ),
+ 'Translations' => array( 'Tradussioni' ),
+);
+
+/** Vietnamese (Tiếng Việt) */
+$specialPageAliases['vi'] = array(
+ 'ImportTranslations' => array( 'Nhập_bản_dịch' ),
+ 'LanguageStats' => array( 'Thống_kê_ngôn_ngữ' ),
+ 'Magic' => array( 'Dịch_nâng_cao' ),
+ 'ManageMessageGroups' => array( 'Quản_lý_nhóm_thông_điệp', 'Quản_lý_nhóm', 'Quản_lí_nhóm_thông_điệp', 'Quản_lí_nhóm' ),
+ 'ManageTranslatorSandbox' => array( 'Quản_lý_chỗ_thử_biên_dịch', 'Quản_lí_chỗ_thử_biên_dịch' ),
+ 'MessageGroupStats' => array( 'Thống_kê_nhóm_thông_điệp', 'Thống_kê_nhóm' ),
+ 'PageTranslation' => array( 'Dịch_trang', 'Biên_dịch_trang' ),
+ 'SearchTranslations' => array( 'Tìm_kiếm_bản_dịch' ),
+ 'SupportedLanguages' => array( 'Ngôn_ngữ_đuọc_hỗ_trợ' ),
+ 'Translate' => array( 'Dịch', 'Biên_dịch' ),
+ 'TranslationStats' => array( 'Thống_kê_biên_dịch' ),
+ 'Translations' => array( 'Bản_dịch' ),
+ 'PagePreparation' => array( 'Sửa_soạn_trang' ),
+);
+
+/** Wolof (Wolof) */
+$specialPageAliases['wo'] = array(
+ 'Translate' => array( 'Tekki' ),
+);
+
+/** Yiddish (ייִדיש) */
+$specialPageAliases['yi'] = array(
+ 'Translate' => array( 'פֿארטײַטש' ),
+);
+
+/** Cantonese (粵語) */
+$specialPageAliases['yue'] = array(
+ 'Translate' => array( '譯' ),
+);
+
+/** Simplified Chinese (中文(简体)‎) */
+$specialPageAliases['zh-hans'] = array(
+ 'AggregateGroups' => array( '信息组总计' ),
+ 'ImportTranslations' => array( '导入翻译' ),
+ 'LanguageStats' => array( '语言统计' ),
+ 'Magic' => array( '高级翻译' ),
+ 'ManageMessageGroups' => array( '信息组管理' ),
+ 'ManageTranslatorSandbox' => array( '管理译者沙盒' ),
+ 'MessageGroupStats' => array( '信息组状态' ),
+ 'PageTranslation' => array( '页面翻译' ),
+ 'PageTranslationDeletePage' => array( '页面翻译删除页面' ),
+ 'SearchTranslations' => array( '搜索翻译' ),
+ 'SupportedLanguages' => array( '支持的语言' ),
+ 'Translate' => array( '翻译' ),
+ 'TranslationStash' => array( '翻译隐藏' ),
+ 'TranslationStats' => array( '翻译统计' ),
+ 'Translations' => array( '译文' ),
+ 'PageMigration' => array( '页面迁移' ),
+ 'PagePreparation' => array( '页面预备' ),
+);
+
+/** Traditional Chinese (中文(繁體)‎) */
+$specialPageAliases['zh-hant'] = array(
+ 'AggregateGroups' => array( '集合群組' ),
+ 'ImportTranslations' => array( '匯入翻譯' ),
+ 'LanguageStats' => array( '語言統計' ),
+ 'Magic' => array( '進階翻譯' ),
+ 'ManageMessageGroups' => array( '管理訊息群組' ),
+ 'ManageTranslatorSandbox' => array( '管理翻譯人員沙盒' ),
+ 'MessageGroupStats' => array( '訊息群組統計' ),
+ 'PageTranslation' => array( '頁面翻譯' ),
+ 'PageTranslationDeletePage' => array( '頁面翻譯刪除頁面' ),
+ 'SearchTranslations' => array( '搜尋翻譯' ),
+ 'SupportedLanguages' => array( '支援的語言' ),
+ 'Translate' => array( '翻譯' ),
+ 'TranslationStash' => array( '翻譯儲藏庫' ),
+ 'TranslationStats' => array( '翻譯統計' ),
+ 'Translations' => array( '翻譯清單' ),
+ 'PageMigration' => array( '頁面轉移' ),
+ 'PagePreparation' => array( '頁面準備' ),
+); \ No newline at end of file
diff --git a/MLEB/Translate/Translate.i18n.magic.php b/MLEB/Translate/Translate.i18n.magic.php
new file mode 100644
index 00000000..8aaa515f
--- /dev/null
+++ b/MLEB/Translate/Translate.i18n.magic.php
@@ -0,0 +1,15 @@
+<?php
+/**
+ * Internationalisation file for magic words in the Translate extension
+ *
+ * @file
+ * @ingroup Extensions
+ */
+
+$magicWords = array();
+
+/** English (English) */
+$magicWords['en'] = array(
+ 'translation' => array( 0, 'translation' ),
+);
+
diff --git a/MLEB/Translate/Translate.i18n.php b/MLEB/Translate/Translate.i18n.php
new file mode 100644
index 00000000..ac594e1a
--- /dev/null
+++ b/MLEB/Translate/Translate.i18n.php
@@ -0,0 +1,35 @@
+<?php
+/**
+ * This is a backwards-compatibility shim, generated by:
+ * https://git.wikimedia.org/blob/mediawiki%2Fcore.git/HEAD/maintenance%2FgenerateJsonI18n.php
+ *
+ * Beginning with MediaWiki 1.23, translation strings are stored in json files,
+ * and the EXTENSION.i18n.php file only exists to provide compatibility with
+ * older releases of MediaWiki. For more information about this migration, see:
+ * https://www.mediawiki.org/wiki/Requests_for_comment/Localisation_format
+ *
+ * This shim maintains compatibility back to MediaWiki 1.17.
+ */
+$messages = array();
+if ( !function_exists( 'wfJsonI18nShim2a9d547473babbda' ) ) {
+ function wfJsonI18nShim2a9d547473babbda( $cache, $code, &$cachedData ) {
+ $codeSequence = array_merge( array( $code ), $cachedData['fallbackSequence'] );
+ foreach ( $codeSequence as $csCode ) {
+ $fileName = dirname( __FILE__ ) . "/i18n/core/$csCode.json";
+ if ( is_readable( $fileName ) ) {
+ $data = FormatJson::decode( file_get_contents( $fileName ), true );
+ foreach ( array_keys( $data ) as $key ) {
+ if ( $key === '' || $key[0] === '@' ) {
+ unset( $data[$key] );
+ }
+ }
+ $cachedData['messages'] = array_merge( $data, $cachedData['messages'] );
+ }
+
+ $cachedData['deps'][] = new FileDependency( $fileName );
+ }
+ return true;
+ }
+
+ $GLOBALS['wgHooks']['LocalisationCacheRecache'][] = 'wfJsonI18nShim2a9d547473babbda';
+}
diff --git a/MLEB/Translate/Translate.php b/MLEB/Translate/Translate.php
new file mode 100644
index 00000000..a0a94d46
--- /dev/null
+++ b/MLEB/Translate/Translate.php
@@ -0,0 +1,666 @@
+<?php
+if ( !defined( 'MEDIAWIKI' ) ) {
+ die();
+}
+/**
+ * An extension to ease the translation of Mediawiki and other projects.
+ *
+ * @file
+ * @ingroup Extensions
+ *
+ * @author Niklas Laxström
+ * @author Siebrand Mazeland
+ * @copyright Copyright © 2006-2014, Niklas Laxström, Siebrand Mazeland
+ * @license GPL-2.0+
+ */
+
+/**
+ * Version number used in extension credits and in other places where needed.
+ */
+define( 'TRANSLATE_VERSION', '2014-10-31' );
+
+/**
+ * Extension credits properties.
+ */
+$GLOBALS['wgExtensionCredits']['specialpage'][] = array(
+ 'path' => __FILE__,
+ 'name' => 'Translate',
+ 'version' => '[https://www.mediawiki.org/wiki/MLEB MLEB 2014.11]',
+ 'author' => array(
+ 'Niklas Laxström',
+ 'Santhosh Thottingal',
+ 'Siebrand Mazeland'
+ ),
+ 'descriptionmsg' => 'translate-desc',
+ 'url' => 'https://www.mediawiki.org/wiki/Extension:Translate',
+);
+
+/**
+ * @cond file_level_code
+ * Setup class autoloading.
+ */
+$dir = __DIR__;
+require_once "$dir/Autoload.php";
+/** @endcond */
+
+/**
+ * Registering various resources
+ * @cond file_level_code
+ */
+
+$GLOBALS['wgMessagesDirs']['PageTranslation'] = __DIR__ . "/i18n/pagetranslation";
+$GLOBALS['wgMessagesDirs']['Translate'] = __DIR__ . "/i18n/core";
+$GLOBALS['wgMessagesDirs']['TranslateGroupDescriptions'] = __DIR__ . "/i18n/groupdescriptions";
+$GLOBALS['wgMessagesDirs']['TranslateSearch'] = __DIR__ . "/i18n/search";
+$GLOBALS['wgMessagesDirs']['TranslateSandbox'] = __DIR__ . "/i18n/sandbox";
+$GLOBALS['wgMessagesDirs']['TranslateApi'] = __DIR__ . "/i18n/api";
+
+// Register extension messages and other localisation.
+$GLOBALS['wgExtensionMessagesFiles']['Translate'] = "$dir/Translate.i18n.php";
+$GLOBALS['wgExtensionMessagesFiles']['PageTranslation'] = "$dir/PageTranslation.i18n.php";
+$GLOBALS['wgExtensionMessagesFiles']['TranslateGroupDescriptions'] =
+ "$dir/TranslateGroupDescriptions.i18n.php";
+$GLOBALS['wgExtensionMessagesFiles']['TranslateSearch'] = "$dir/TranslateSearch.i18n.php";
+$GLOBALS['wgExtensionMessagesFiles']['TranslateSandbox'] = "$dir/TranslateSandbox.i18n.php";
+$GLOBALS['wgExtensionMessagesFiles']['TranslateAlias'] = "$dir/Translate.alias.php";
+// Backwards compatibility:
+// If Special:MyLanguage is not in core, load translations of its name
+// from the Translate extension's code.
+// See https://bugzilla.wikimedia.org/69461
+if ( !isset( $GLOBALS['wgAutoloadLocalClasses']['SpecialMyLanguage'] ) ) {
+ $GLOBALS['wgExtensionMessagesFiles']['TranslateMyLanguageAlias'] =
+ "$dir/Translate.MyLanguage.alias.php";
+}
+
+$GLOBALS['wgExtensionMessagesFiles']['TranslateMagic'] = "$dir/Translate.i18n.magic.php";
+
+// Register initialization code
+$GLOBALS['wgExtensionFunctions'][] = 'TranslateHooks::setupTranslate';
+$GLOBALS['wgHooks']['CanonicalNamespaces'][] = 'TranslateHooks::setupNamespaces';
+$GLOBALS['wgHooks']['UnitTestsList'][] = 'TranslateHooks::setupUnitTests';
+$GLOBALS['wgHooks']['LoadExtensionSchemaUpdates'][] = 'TranslateHooks::schemaUpdates';
+$GLOBALS['wgHooks']['ParserTestTables'][] = 'TranslateHooks::parserTestTables';
+$GLOBALS['wgHooks']['PageContentLanguage'][] = 'TranslateHooks::onPageContentLanguage';
+
+// Register special pages into MediaWiki
+$GLOBALS['wgSpecialPages']['Translate'] = 'SpecialTranslate';
+$GLOBALS['wgSpecialPages']['Translations'] = 'SpecialTranslations';
+// Disabled by default
+// $GLOBALS['wgSpecialPages']['Magic'] = 'SpecialMagic';
+$GLOBALS['wgSpecialPages']['TranslationStats'] = 'SpecialTranslationStats';
+$GLOBALS['wgSpecialPages']['LanguageStats'] = 'SpecialLanguageStats';
+$GLOBALS['wgSpecialPages']['MessageGroupStats'] = 'SpecialMessageGroupStats';
+$GLOBALS['wgSpecialPages']['ImportTranslations'] = 'SpecialImportTranslations';
+$GLOBALS['wgSpecialPages']['ManageMessageGroups'] = 'SpecialManageGroups';
+$GLOBALS['wgSpecialPages']['SupportedLanguages'] = 'SpecialSupportedLanguages';
+
+// Unlisted special page; does not need $wgSpecialPageGroups.
+$GLOBALS['wgSpecialPages']['MyLanguage'] = 'SpecialMyLanguage';
+$GLOBALS['wgSpecialPages']['AggregateGroups'] = 'SpecialAggregateGroups';
+$GLOBALS['wgSpecialPages']['SearchTranslations'] = 'SpecialSearchTranslations';
+$GLOBALS['wgSpecialPages']['ManageTranslatorSandbox'] = 'SpecialManageTranslatorSandbox';
+$GLOBALS['wgSpecialPages']['TranslationStash'] = 'SpecialTranslationStash';
+
+// API
+$GLOBALS['wgAPIGeneratorModules']['messagecollection'] = 'ApiQueryMessageCollection';
+$GLOBALS['wgAPIListModules']['messagecollection'] = 'ApiQueryMessageCollection';
+$GLOBALS['wgAPIMetaModules']['languagestats'] = 'ApiQueryLanguageStats';
+$GLOBALS['wgAPIMetaModules']['messagegroups'] = 'ApiQueryMessageGroups';
+$GLOBALS['wgAPIMetaModules']['messagegroupstats'] = 'ApiQueryMessageGroupStats';
+$GLOBALS['wgAPIMetaModules']['messagetranslations'] = 'ApiQueryMessageTranslations';
+$GLOBALS['wgAPIModules']['aggregategroups'] = 'ApiAggregateGroups';
+$GLOBALS['wgAPIModules']['groupreview'] = 'ApiGroupReview';
+$GLOBALS['wgAPIModules']['hardmessages'] = 'ApiHardMessages';
+$GLOBALS['wgAPIModules']['translatesandbox'] = 'ApiTranslateSandbox';
+$GLOBALS['wgAPIModules']['translateuser'] = 'ApiTranslateUser';
+$GLOBALS['wgAPIModules']['translationaids'] = 'ApiTranslationAids';
+$GLOBALS['wgAPIModules']['translationreview'] = 'ApiTranslationReview';
+$GLOBALS['wgAPIModules']['translationstash'] = 'ApiTranslationStash';
+$GLOBALS['wgAPIModules']['ttmserver'] = 'ApiTTMServer';
+$GLOBALS['wgHooks']['ApiTokensGetTokenTypes'][] = 'ApiTranslationReview::injectTokenFunction';
+$GLOBALS['wgHooks']['ApiTokensGetTokenTypes'][] = 'ApiGroupReview::injectTokenFunction';
+$GLOBALS['wgHooks']['ApiTokensGetTokenTypes'][] = 'ApiAggregateGroups::injectTokenFunction';
+$GLOBALS['wgHooks']['ApiTokensGetTokenTypes'][] = 'ApiHardMessages::injectTokenFunction';
+$GLOBALS['wgHooks']['ApiTokensGetTokenTypes'][] = 'ApiTranslateSandbox::injectTokenFunction';
+$GLOBALS['wgHooks']['ApiTokensGetTokenTypes'][] = 'ApiTranslationStash::injectTokenFunction';
+
+// Register hooks.
+$GLOBALS['wgHooks']['EditPage::showEditForm:initial'][] = 'TranslateEditAddons::addTools';
+$GLOBALS['wgHooks']['AlternateEdit'][] = 'TranslateEditAddons::intro';
+$GLOBALS['wgHooks']['EditPageBeforeEditButtons'][] = 'TranslateEditAddons::buttonHack';
+$GLOBALS['wgHooks']['LanguageGetTranslatedLanguageNames'][] =
+ 'TranslateHooks::translateMessageDocumentationLanguage';
+$GLOBALS['wgHooks']['TranslateSupportedLanguages'][] =
+ 'TranslateHooks::translateMessageDocumentationLanguage';
+$GLOBALS['wgHooks']['ArticlePrepareTextForEdit'][] = 'TranslateEditAddons::disablePreSaveTransform';
+$GLOBALS['wgHooks']['ParserFirstCallInit'][] = 'TranslateHooks::setupTranslateParserFunction';
+
+// Prevent translations creating bogus categories
+$GLOBALS['wgHooks']['LinksUpdate'][] = 'TranslateHooks::preventCategorization';
+// Fuzzy tags for speed.
+$GLOBALS['wgHooks']['PageContentSaveComplete'][] = 'TranslateEditAddons::onSave';
+
+$GLOBALS['wgHooks']['Translate:newTranslation'][] = 'TranslateEditAddons::updateTransverTag';
+
+$GLOBALS['wgHooks']['SkinTemplateNavigation::SpecialPage'][] = 'SpecialTranslate::tabify';
+$GLOBALS['wgHooks']['SkinTemplateNavigation::SpecialPage'][] = 'SpecialManageGroups::tabify';
+
+// Custom preferences
+$GLOBALS['wgDefaultUserOptions']['translate'] = 0;
+$GLOBALS['wgDefaultUserOptions']['translate-editlangs'] = 'default';
+$GLOBALS['wgDefaultUserOptions']['translate-recent-groups'] = '';
+$GLOBALS['wgHooks']['GetPreferences'][] = 'TranslatePreferences::onGetPreferences';
+$GLOBALS['wgHooks']['GetPreferences'][] = 'TranslatePreferences::translationAssistLanguages';
+
+// Recent changes filters
+$GLOBALS['wgHooks']['SpecialRecentChangesQuery'][] = 'TranslateRcFilter::translationFilter';
+$GLOBALS['wgHooks']['SpecialRecentChangesPanel'][] = 'TranslateRcFilter::translationFilterForm';
+$GLOBALS['wgHooks']['SkinTemplateToolboxEnd'][] = 'TranslateToolbox::toolboxAllTranslations';
+$GLOBALS['wgHooks']['AbortEmailNotification'][] = 'TranslateHooks::onAbortEmailNotificationReview';
+
+// Translation memory related
+$GLOBALS['wgHooks']['ArticleDeleteComplete'][] = 'TTMServer::onDelete';
+$GLOBALS['wgHooks']['TranslateEventMessageMembershipChange'][] = 'TTMServer::onGroupChange';
+
+// Translation display related
+$GLOBALS['wgHooks']['ArticleContentOnDiff'][] = 'TranslateEditAddons::displayOnDiff';
+
+// Search profile
+$GLOBALS['wgHooks']['SpecialSearchProfiles'][] = 'TranslateHooks::searchProfile';
+$GLOBALS['wgHooks']['SpecialSearchProfileForm'][] = 'TranslateHooks::searchProfileForm';
+$GLOBALS['wgHooks']['SpecialSearchSetupEngine'][] = 'TranslateHooks::searchProfileSetupEngine';
+
+$GLOBALS['wgHooks']['LinkBegin'][] = 'TranslateHooks::linkfix';
+
+// Stats table manipulation
+$GLOBALS['wgHooks']['Translate:MessageGroupStats:isIncluded'][] =
+ 'TranslateHooks::hideDiscouragedFromStats';
+$GLOBALS['wgHooks']['Translate:MessageGroupStats:isIncluded'][] =
+ 'TranslateHooks::hideRestrictedFromStats';
+
+$GLOBALS['wgHooks']['MakeGlobalVariablesScript'][] = 'TranslateHooks::addConfig';
+
+// Sandbox
+$GLOBALS['wgDefaultUserOptions']['translate-sandbox'] = '';
+$GLOBALS['wgHooks']['GetPreferences'][] = 'TranslateSandbox::onGetPreferences';
+$GLOBALS['wgHooks']['UserGetRights'][] = 'TranslateSandbox::enforcePermissions';
+$GLOBALS['wgHooks']['ApiCheckCanExecute'][] = 'TranslateSandbox::onApiCheckCanExecute';
+
+// Internal event listeners
+$GLOBALS['wgHooks']['TranslateEventTranslationEdit'][] = 'MessageGroupStats::clear';
+$GLOBALS['wgHooks']['TranslateEventTranslationReview'][] = 'MessageGroupStats::clear';
+$GLOBALS['wgHooks']['TranslateEventTranslationEdit'][] = 'MessageGroupStatesUpdaterJob::onChange';
+$GLOBALS['wgHooks']['TranslateEventTranslationReview'][] = 'MessageGroupStatesUpdaterJob::onChange';
+
+// Other extensions
+$GLOBALS['wgHooks']['AdminLinks'][] = 'TranslateHooks::onAdminLinks';
+$GLOBALS['wgHooks']['MergeAccountFromTo'][] = 'TranslateHooks::onMergeAccountFromTo';
+$GLOBALS['wgHooks']['DeleteAccount'][] = 'TranslateHooks::onDeleteAccount';
+
+// New rights
+$GLOBALS['wgAvailableRights'][] = 'translate';
+$GLOBALS['wgAvailableRights'][] = 'translate-import';
+$GLOBALS['wgAvailableRights'][] = 'translate-manage';
+$GLOBALS['wgAvailableRights'][] = 'translate-messagereview';
+$GLOBALS['wgAvailableRights'][] = 'translate-groupreview';
+$GLOBALS['wgAvailableRights'][] = 'translate-sandboxmanage';
+
+// Logs. More logs are defined in TranslateHooks::setupTranslate
+$GLOBALS['wgLogTypes'][] = 'translationreview';
+$GLOBALS['wgLogActionsHandlers']['translationreview/message'] = 'TranslateLogFormatter';
+$GLOBALS['wgLogActionsHandlers']['translationreview/group'] = 'TranslateLogFormatter';
+
+$GLOBALS['wgLogTypes'][] = 'translatorsandbox';
+$GLOBALS['wgLogActionsHandlers']['translatorsandbox/promoted'] = 'TranslateLogFormatter';
+$GLOBALS['wgLogActionsHandlers']['translatorsandbox/rejected'] = 'TranslateLogFormatter';
+$GLOBALS['wgLogActionsHandlers']['newusers/tsbpromoted'] = 'LogFormatter';
+
+// New jobs
+$GLOBALS['wgJobClasses']['MessageIndexRebuildJob'] = 'MessageIndexRebuildJob';
+$GLOBALS['wgJobClasses']['MessageUpdateJob'] = 'MessageUpdateJob';
+$GLOBALS['wgJobClasses']['MessageGroupStatesUpdaterJob'] = 'MessageGroupStatesUpdaterJob';
+$GLOBALS['wgJobClasses']['TTMServerMessageUpdateJob'] = 'TTMServerMessageUpdateJob';
+$GLOBALS['wgJobClasses']['TranslateSandboxEmailJob'] = 'TranslateSandboxEmailJob';
+
+$GLOBALS['wgParserTestFiles'][] = "$dir/tests/parser/translateParserTests.txt";
+
+require "$dir/Resources.php";
+/** @endcond */
+
+
+# == Configuration variables ==
+
+# === Basic configuration ===
+# <source lang=php>
+/**
+ * Language code for message documentation. Suggested values are qqq or info.
+ * If set to false (default), message documentation feature is disabled.
+ */
+$GLOBALS['wgTranslateDocumentationLanguageCode'] = false;
+
+/**
+ * Name of the bot which will invalidate translations and do maintenance
+ * for page translation feature. Also used for importing messages from external
+ * sources.
+ */
+$GLOBALS['wgTranslateFuzzyBotName'] = 'FuzzyBot';
+
+/**
+ * Add a preference "Do not send me email newsletters" in the email preferences.
+ */
+$GLOBALS['wgTranslateNewsletterPreference'] = false;
+
+/**
+ * Default values for list of languages to show translators as an aid when
+ * translating. Each user can override this setting in their preferences.
+ * Example:
+ * $wgTranslateLanguageFallbacks['fi'] = 'sv';
+ * $wgTranslateLanguageFallbacks['sv'] = array( 'da', 'no', 'nn' );
+ */
+$GLOBALS['wgTranslateLanguageFallbacks'] = array();
+
+/**
+ * Text that will be shown in translations if the translation is outdated.
+ * Must be something that does not conflict with actual content.
+ */
+if ( !defined( 'TRANSLATE_FUZZY' ) ) {
+ define( 'TRANSLATE_FUZZY', '!!FUZZY!!' );
+}
+
+/**
+ * Define various web services that provide translation suggestions.
+ *
+ * Translation memories are documented in our main documentation.
+ * @see https://www.mediawiki.org/wiki/Help:Extension:Translate/Translation_memories
+ *
+ * For Apertium, you should get an API key.
+ * @see http://wiki.apertium.org/wiki/Apertium_web_service
+ *
+ * Yandex translation helper also provides langlimit option to limit total
+ * number of suggestions (set to 0 to get all possible translations)
+ * and langorder array to sort languages. Yandex translate engine is based on
+ * wordnet, generated from search index, so number of indexed websites should be
+ * a good heuristic to define the default language order.
+ *
+ * The machine translation services are provided with the following information:
+ * - server ip address
+ * - versions of MediaWiki and Translate extension
+ * - clients ip address encrypted with $wgProxyKey
+ * - source text to translate
+ * - private API key if provided
+ */
+$GLOBALS['wgTranslateTranslationServices'] = array();
+$GLOBALS['wgTranslateTranslationServices']['TTMServer'] = array(
+ 'database' => false, // Passed to wfGetDB
+ 'cutoff' => 0.75,
+ 'type' => 'ttmserver',
+ 'public' => false,
+);
+$GLOBALS['wgTranslateTranslationServices']['Microsoft'] = array(
+ 'url' => 'http://api.microsofttranslator.com/V2/Http.svc/Translate',
+ 'key' => null,
+ 'timeout' => 3,
+ 'type' => 'microsoft',
+);
+$GLOBALS['wgTranslateTranslationServices']['Apertium'] = array(
+ 'url' => 'http://api.apertium.org/json/translate',
+ 'pairs' => 'http://api.apertium.org/json/listPairs',
+ 'key' => null,
+ 'timeout' => 3,
+ 'type' => 'apertium',
+);
+$GLOBALS['wgTranslateTranslationServices']['Yandex'] = array(
+ 'url' => 'https://translate.yandex.net/api/v1.5/tr.json/translate',
+ 'key' => null,
+ 'pairs' => 'https://translate.yandex.net/api/v1.5/tr.json/getLangs',
+ 'timeout' => 3,
+ 'langorder' => array( 'en', 'ru', 'uk', 'de', 'fr', 'pl', 'it', 'es', 'tr' ),
+ 'langlimit' => 1,
+ 'type' => 'yandex',
+);
+
+/**
+ * List of tasks in Special:Translate. If you are only using page translation
+ * feature, you might want to disable 'optional' task. Example:
+ * unset($wgTranslateTasks['optional']);
+ */
+$GLOBALS['wgTranslateTasks'] = array(
+ 'view' => 'ViewMessagesTask',
+ 'untranslated' => 'ViewUntranslatedTask',
+ 'optional' => 'ViewOptionalTask',
+ 'acceptqueue' => 'AcceptQueueMessagesTask',
+ 'reviewall' => 'ReviewAllMessagesTask',
+ 'export-as-po' => 'ExportasPoMessagesTask',
+ 'export-to-file' => 'ExportToFileMessagesTask',
+ 'custom' => 'CustomFilteredMessagesTask',
+);
+
+/**
+ * Experimental support for Ask help button.
+ * Might change into hook later on.
+ * This is an array with keys page and params.
+ * - page is a title of a local wiki page
+ * - params is an array of key-value pairs of request params
+ * -- param value can contain variable %MESSAGE% which will be replaced with
+ * full page name.
+ * @since 2011-03-11
+ */
+$GLOBALS['wgTranslateSupportUrl'] = false;
+
+/**
+ * When unprivileged users open a translation editor, they will
+ * see a message stating that a special permission is needed for translating
+ * messages. If this variable is defined, there is a button which will
+ * take the user to that page to ask for permission.
+ * The target needs to be reiterated with the second variable to have
+ * the same result with sandbox enabled where users can't enter the sandbox.
+ */
+$GLOBALS['wgTranslatePermissionUrl'] = 'Project:Translator';
+$GLOBALS['wgTranslateSecondaryPermissionUrl'] = 'Project:Translator';
+
+# </source>
+# === Page translation feature ===
+# <source lang=php>
+/**
+ * Enable page translation feature.
+ *
+ * Page translation feature allows structured translation of wiki pages
+ * with simple markup and automatic tracking of changes.
+ *
+ * @defgroup PageTranslation Page Translation
+ * @see https://www.mediawiki.org/wiki/Help:Extension:Translate/Page_translation_administration
+ */
+$GLOBALS['wgEnablePageTranslation'] = true;
+
+/**
+ * Number for the Translations namespace. Change this if it conflicts with
+ * other namespace in your wiki.
+ */
+$GLOBALS['wgPageTranslationNamespace'] = 1198;
+
+/**
+ * If set to true, when a user selects an interface language via ULS (Universal
+ * Language Selector), if the current page is a translatable page or a translation
+ * page then the user is also redirected to the corresponding translation page
+ * in the selected language.
+ *
+ * The language of the translation pages visited afterwards will still depend on the
+ * links followed (it will be the interface language only if the links use the
+ * Special:MyLanguage syntax).
+ * @since 2013-03-10
+ */
+$GLOBALS['wgTranslatePageTranslationULS'] = false;
+
+# </source>
+# === Message group configuration ===
+# <source lang=php>
+
+/**
+ * Two-dimensional array of languages that cannot be translated.
+ * Input can be exact group name, first part before '-' or '*' for all.
+ * Second dimension should be language code mapped to reason for disabling.
+ * Reason is parsed as wikitext.
+ *
+ * Example:
+ * $wgTranslateBlacklist = array(
+ * '*' => array( // All groups
+ * 'en' => 'English is the source language.',
+ * ),
+ * 'core' => array( // Exact group
+ * 'mul' => 'Not a real language.',
+ * ),
+ * 'ext' => array( // Wildcard-like group
+ * 'mul' => 'Not a real language',
+ * ),
+ * );
+ */
+
+$GLOBALS['wgTranslateBlacklist'] = array();
+
+/**
+ * File containing checks that are to be skipped. See
+ * https://gerrit.wikimedia.org/r/gitweb?p=translatewiki.git;a=blob;f=check-blacklist.php;hb=HEAD
+ * for example.
+ *
+ * @since 2012-10-15
+ */
+$GLOBALS['wgTranslateCheckBlacklist'] = false;
+
+/**
+ * Two-dimensional array of rules that blacklists certain authors from appearing
+ * in the exports. This is useful for keeping bots and people doing maintenance
+ * work in translations not to appear besides real translators everywhere.
+ *
+ * Rules are arrays, where first element is type: white or black. Whitelisting
+ * always overrules blacklisting. Second element should be a valid pattern that
+ * can be given a preg_match(). It will be matched against string of format
+ * "group-id;language;author name", without quotes.
+ * As an example by default we have rule that ignores all authors whose name
+ * ends in a bot for all languages and all groups.
+ */
+$GLOBALS['wgTranslateAuthorBlacklist'] = array();
+$GLOBALS['wgTranslateAuthorBlacklist'][] = array( 'black', '/^.*;.*;.*Bot$/Ui' );
+
+/**
+ * List of namespace that contain messages. No talk namespaces.
+ * @see https://www.mediawiki.org/wiki/Help:Extension:Translate/Group_configuration
+ */
+$GLOBALS['wgTranslateMessageNamespaces'] = array();
+
+/**
+ * CC = Custom classes.
+ * Custom classes can register themselves here.
+ * Key is always the group id, while the value is an message group object
+ * or callable function.
+ * @deprecated Use TranslatePostInitGroups hook instead.
+ */
+$GLOBALS['wgTranslateCC'] = array();
+
+/**
+ * Location in the filesystem to which paths are relative in custom groups.
+ */
+$GLOBALS['wgTranslateGroupRoot'] = '/var/www/externals';
+
+/**
+ * The newest and recommended way of adding custom groups is YAML files.
+ * See examples under Translate/groups
+ * Usage example:
+ * $wgTranslateGroupFiles[] = "$IP/extensions/Translate/groups/Shapado/Shapado.yml";
+ */
+$GLOBALS['wgTranslateGroupFiles'] = array();
+
+/**
+ * List of possible message group review workflow states and properties
+ * for each state.
+ * The currently supported properties are:
+ * * color: the color that is used for displaying the state in the tables.
+ * * right: additional right that is needed to set the state.
+ * Users who have the translate-groupreview right can set this in
+ * Special:Translate.
+ * The state is visible in Special:Translate, Special:MessageGroupStats and
+ * Special:LanguageStats.
+ * If the value is false, the workflow states feature is disabled.
+ * State name can be up to 32 characters maximum.
+ * Example:
+ * $wgTranslateWorkflowStates = array(
+ * 'new' => array( 'color' => 'FF0000' ), // red
+ * 'needs_proofreading' => array( 'color' => '0000FF' ), // blue
+ * 'ready' => array( 'color' => 'FFFF00' ), // yellow
+ * 'published' => array(
+ * 'color' => '00FF00', // green
+ * 'right' => 'centralnotice-admin',
+ * ),
+ * );
+ */
+$GLOBALS['wgTranslateWorkflowStates'] = false;
+
+# </source>
+# === System setup related configuration ===
+# <source lang=php>
+/**
+ * Set location of cache files. Defaults to $wgCacheDirectory.
+ */
+$GLOBALS['wgTranslateCacheDirectory'] = false;
+
+/**
+ * Configures how the message index is stored.
+ * The other backends need $wgCacheDirectory to be functional.
+ */
+$GLOBALS['wgTranslateMessageIndex'] = array( 'DatabaseMessageIndex' );
+// $wgTranslateMessageIndex = array( 'SerializedMessageIndex' );
+// $wgTranslateMessageIndex = array( 'CDBMessageIndex' );
+
+/**
+ * If you have lots of message groups, especially file based ones, and the
+ * message index rebuilding gets slow, set this to true to delay the rebuilding
+ * via JobQueue. This only makes sense if you have configured jobs to be
+ * processed outside of requests via cron or similar.
+ * @since 2012-05-03
+ */
+$GLOBALS['wgTranslateDelayedMessageIndexRebuild'] = false;
+
+# </source>
+# ==== PHPlot ====
+# <source lang=php>
+/**
+ * For Special:TranslationStats PHPlot is needed to produce graphs.
+ * Set this the location of phplot.php.
+ */
+$GLOBALS['wgTranslatePHPlot'] = false;
+
+/**
+ * The default font for PHPlot for drawing text. Only used if the automatic
+ * best font selection fails. The automatic best font selector uses language
+ * code to call fc-match program. If you have open_basedir restriction or
+ * safe-mode, using the found font is likely to fail. In this case you need
+ * to change the code to use hard-coded font, or copy fonts to location PHP
+ * can access them, and make sure fc-match returns only those fonts.
+ */
+$GLOBALS['wgTranslatePHPlotFont'] = '/usr/share/fonts/truetype/ttf-dejavu/DejaVuSans.ttf';
+
+# </source>
+# ==== YAML driver ====
+# <source lang=php>
+/**
+ * Currently supported YAML drivers are phpyaml, spyc and syck.
+ *
+ * For phpyaml see http://php.net/manual/en/book.yaml.php.
+ *
+ * For syck we're shelling out to perl. So you need:
+ *
+ * * At least perl 5.8 (find out what you have by running "perl -v")
+ * * Install these modules from CPAN
+ * * YAML::Syck
+ * * PHP::Serialization.
+ * * File::Slurp
+ *
+ * You should be able to do this with:
+ * for module in 'YAML::Syck' 'PHP::Serialization' 'File::Slurp'; do cpanp -i $module; done
+ *
+ * For the shell to work, you also need an en.UTF-8 locale installed on your system.
+ * add a line "en.UTF-8" to your /etc/locale.gen or uncomment an existing one and run locale-gen
+ * if you do not have it already.
+ *
+ * phpyaml is the fastest and based on libyaml so the output should be most
+ * compatible. spyc output format is least compatible. syck is slowest but
+ * almost as good as phpyaml.
+ */
+$GLOBALS['wgTranslateYamlLibrary'] = 'spyc';
+
+# </source>
+# ==== Sandbox ====
+# <source lang=php>
+
+/**
+ * Whether to allow users to sign up via a sandbox. Sandboxed users cannot do
+ * much until approved and thus they can be get rid of easily. Only works with
+ * MediaWiki 1.22 or newer.
+ * @since 2013.04
+ */
+$GLOBALS['wgTranslateUseSandbox'] = false;
+
+/**
+ * To which group the translators are promoted. If left at false, they will just
+ * be removed from sandbox and become normal users.
+ * @since 2013.04
+ */
+$GLOBALS['wgTranslateSandboxPromotedGroup'] = false;
+
+/**
+ * List of page names to always suggest for sandboxed users.
+ * @since 2013.10
+ */
+$GLOBALS['wgTranslateSandboxSuggestions'] = array();
+
+/**
+ * Maximum number of translations a user can make in the sandbox.
+ * @since 2013.10
+ */
+$GLOBALS['wgTranslateSandboxLimit'] = 20;
+
+# </source>
+# === Unsorted ===
+# <source lang=php>
+/**
+ * Pre-save transform for message pages. MediaWiki does this by default
+ * (including for pages in the MediaWiki-namespace). By setting this to
+ * false it allows users to put untransformed syntax such as "~~~~" into
+ * a page without having them be transformed upon save.
+ */
+$GLOBALS['wgTranslateUsePreSaveTransform'] = false;
+
+/**
+ * Default action for the RecentChanges filter, which makes it possible to filter
+ * translations away or show them only.
+ * Possible values: ('noaction', 'only', 'filter', 'site')
+ */
+$GLOBALS['wgTranslateRcFilterDefault'] = 'filter';
+
+/**
+ * Set this to config like $wgTranslateTranslationServices if you want to run
+ * SolrTTMServer tests.
+ * @since 2013-01-04
+ */
+$GLOBALS['wgTranslateTestTTMServer'] = null;
+
+/**
+ * List of user names that are allowed to alter their privileges and do other
+ * things. Used for supporting integration testing.
+ * @since 2013.10
+ */
+$GLOBALS['wgTranslateTestUsers'] = array();
+
+# </source>
+
+/**
+ * Helper function for adding namespace for message groups.
+ *
+ * It defines constants for the namespace (and talk namespace) and sets up
+ * restrictions and some other configuration.
+ * @param $id \int Namespace number
+ * @param $name \string Name of the namespace
+ */
+function wfAddNamespace( $id, $name ) {
+ global $wgExtraNamespaces, $wgContentNamespaces, $wgTranslateMessageNamespaces,
+ $wgNamespaceProtection, $wgNamespacesWithSubpages, $wgNamespacesToBeSearchedDefault;
+
+ $constant = strtoupper( "NS_$name" );
+
+ define( $constant, $id );
+ define( $constant . '_TALK', $id + 1 );
+
+ $wgExtraNamespaces[$id] = $name;
+ $wgExtraNamespaces[$id + 1] = $name . '_talk';
+
+ $wgContentNamespaces[] = $id;
+ $wgTranslateMessageNamespaces[] = $id;
+
+ $wgNamespacesWithSubpages[$id] = true;
+ $wgNamespacesWithSubpages[$id + 1] = true;
+
+ $wgNamespaceProtection[$id] = array( 'translate' );
+
+ $wgNamespacesToBeSearchedDefault[$id] = true;
+}
+
+/** @defgroup TranslateSpecialPage Special pages of Translate extension */
diff --git a/MLEB/Translate/TranslateEditAddons.php b/MLEB/Translate/TranslateEditAddons.php
new file mode 100644
index 00000000..e26a306b
--- /dev/null
+++ b/MLEB/Translate/TranslateEditAddons.php
@@ -0,0 +1,350 @@
+<?php
+/**
+ * Tools for edit page view to aid translators. This implements the so called
+ * old style editing, which extends the normal edit page.
+ *
+ * @file
+ * @author Niklas Laxström
+ * @author Siebrand Mazeland
+ * @license GPL-2.0+
+ */
+
+/**
+ * Various editing enhancements to the edit page interface.
+ * Partly succeeded by the new ajax-enhanced editor but kept for compatibility.
+ * Also has code that is still relevant, like the hooks on save.
+ */
+class TranslateEditAddons {
+ /**
+ * Keep the usual diiba daaba hidden from translators.
+ * Hook: AlternateEdit
+ */
+ public static function intro( EditPage $editpage ) {
+ $handle = new MessageHandle( $editpage->getTitle() );
+ if ( $handle->isValid() ) {
+ $editpage->suppressIntro = true;
+ $group = $handle->getGroup();
+ $languages = $group->getTranslatableLanguages();
+ if ( $handle->getCode() && $languages !== null && !isset( $languages[$handle->getCode()] ) ) {
+ $editpage->getArticle()->getContext()->getOutput()->wrapWikiMsg(
+ "<div class='error'>$1</div>", 'translate-language-disabled'
+ );
+
+ return false;
+ }
+
+ return true;
+ }
+ $msg = wfMessage( 'translate-edit-tag-warning' )->inContentLanguage();
+
+ if ( !$msg->isDisabled() &&
+ TranslatablePage::isSourcePage( $editpage->getTitle() )
+ ) {
+ $editpage->editFormTextTop .= $editpage->getArticle()->getContext()
+ ->getOutput()->parse( $msg->plain() );
+ }
+
+ return true;
+ }
+
+ /**
+ * Adds the translation aids and navigation to the normal edit page.
+ * Hook: EditPage::showEditForm:initial
+ */
+ static function addTools( EditPage $object ) {
+ $handle = new MessageHandle( $object->getTitle() );
+ if ( !$handle->isValid() ) {
+ return true;
+ }
+
+ $object->editFormTextTop .= self::editBoxes( $object );
+
+ return true;
+ }
+
+ /**
+ * Replace the normal save button with one that says if you are editing
+ * message documentation to try to avoid accidents.
+ * Hook: EditPageBeforeEditButtons
+ */
+ static function buttonHack( EditPage $editpage, &$buttons, $tabindex ) {
+ $handle = new MessageHandle( $editpage->getTitle() );
+ if ( !$handle->isValid() ) {
+ return true;
+ }
+
+ $context = $editpage->getArticle()->getContext();
+
+ if ( $handle->isDoc() ) {
+ $langCode = $context->getLanguage()->getCode();
+ $name = TranslateUtils::getLanguageName( $handle->getCode(), $langCode );
+ $accessKey = $context->msg( 'accesskey-save' )->plain();
+ $temp = array(
+ 'id' => 'wpSave',
+ 'name' => 'wpSave',
+ 'type' => 'submit',
+ 'tabindex' => ++$tabindex,
+ 'value' => $context->msg( 'translate-save', $name )->text(),
+ 'accesskey' => $accessKey,
+ 'title' => $context->msg( 'tooltip-save' )->text() . ' [' . $accessKey . ']',
+ );
+ $buttons['save'] = Xml::element( 'input', $temp, '' );
+ }
+
+ global $wgTranslateSupportUrl;
+ if ( !$wgTranslateSupportUrl ) {
+ return true;
+ }
+
+ $supportTitle = Title::newFromText( $wgTranslateSupportUrl['page'] );
+ if ( !$supportTitle ) {
+ return true;
+ }
+
+ $supportParams = $wgTranslateSupportUrl['params'];
+ foreach ( $supportParams as &$value ) {
+ $value = str_replace( '%MESSAGE%', $handle->getTitle()->getPrefixedText(), $value );
+ }
+
+ $temp = array(
+ 'id' => 'wpSupport',
+ 'name' => 'wpSupport',
+ 'type' => 'button',
+ 'tabindex' => ++$tabindex,
+ 'value' => $context->msg( 'translate-js-support' )->text(),
+ 'title' => $context->msg( 'translate-js-support-title' )->text(),
+ 'data-load-url' => $supportTitle->getLocalUrl( $supportParams ),
+ 'onclick' => "window.open( jQuery(this).attr('data-load-url') );",
+ );
+ $buttons['ask'] = Html::element( 'input', $temp, '' );
+
+ return true;
+ }
+
+ /**
+ * @param EditPage $editpage
+ * @return string
+ */
+ private static function editBoxes( EditPage $editpage ) {
+ $context = $editpage->getArticle()->getContext();
+ $request = $context->getRequest();
+
+ $groupId = $request->getText( 'loadgroup', '' );
+ $th = new TranslationHelpers( $editpage->getTitle(), $groupId );
+
+ if ( $editpage->firsttime &&
+ !$request->getCheck( 'oldid' ) &&
+ !$request->getCheck( 'undo' )
+ ) {
+ $editpage->textbox1 = (string)$th->getTranslation();
+ } else {
+ $th->setTranslation( $editpage->textbox1 );
+ }
+
+ TranslationHelpers::addModules( $context->getOutput() );
+
+ return $th->getBoxes();
+ }
+
+ /**
+ * Runs message checks, adds tp:transver tags and updates statistics.
+ * Hook: PageContentSaveComplete
+ */
+ public static function onSave( WikiPage $wikiPage, $user, $content, $summary,
+ $minor, $_, $_, $flags, $revision
+ ) {
+
+ if ( $content instanceof TextContent ) {
+ $text = $content->getNativeData();
+ } else {
+ // Screw it, not interested
+ return true;
+ }
+
+ $title = $wikiPage->getTitle();
+ $handle = new MessageHandle( $title );
+
+ if ( !$handle->isValid() ) {
+ return true;
+ }
+
+ // Update it.
+ if ( $revision === null ) {
+ $rev = $wikiPage->getTitle()->getLatestRevId();
+ } else {
+ $rev = $revision->getID();
+ }
+
+ $fuzzy = self::checkNeedsFuzzy( $handle, $text );
+ self::updateFuzzyTag( $title, $rev, $fuzzy );
+ wfRunHooks( 'TranslateEventTranslationEdit', array( $handle ) );
+
+ if ( $fuzzy === false ) {
+ wfRunHooks( 'Translate:newTranslation', array( $handle, $rev, $text, $user ) );
+ }
+
+ TTMServer::onChange( $handle, $text, $fuzzy );
+
+ return true;
+ }
+
+ /**
+ * @param MessageHandle $handle
+ * @param string $text
+ * @return bool
+ */
+ protected static function checkNeedsFuzzy( MessageHandle $handle, $text ) {
+ // Check for explicit tag.
+ $fuzzy = MessageHandle::hasFuzzyString( $text );
+
+ // Docs are exempt for checks
+ if ( $handle->isDoc() ) {
+ return $fuzzy;
+ }
+
+ // Not all groups have checkers
+ $group = $handle->getGroup();
+ $checker = $group->getChecker();
+ if ( !$checker ) {
+ return $fuzzy;
+ }
+
+ $code = $handle->getCode();
+ $key = $handle->getKey();
+ $en = $group->getMessage( $key, $group->getSourceLanguage() );
+ $message = new FatMessage( $key, $en );
+ // Take the contents from edit field as a translation.
+ $message->setTranslation( $text );
+
+ $checks = $checker->checkMessage( $message, $code );
+ if ( count( $checks ) ) {
+ $fuzzy = true;
+ }
+
+ return $fuzzy;
+ }
+
+ /**
+ * @param Title $title
+ * @param int $revision
+ * @param bool $fuzzy
+ */
+ protected static function updateFuzzyTag( Title $title, $revision, $fuzzy ) {
+ $dbw = wfGetDB( DB_MASTER );
+
+ $conds = array(
+ 'rt_page' => $title->getArticleID(),
+ 'rt_type' => RevTag::getType( 'fuzzy' ),
+ 'rt_revision' => $revision
+ );
+
+ // Replace the existing fuzzy tag, if any
+ if ( $fuzzy !== false ) {
+ $index = array_keys( $conds );
+ $dbw->replace( 'revtag', array( $index ), $conds, __METHOD__ );
+ } else {
+ $dbw->delete( 'revtag', $conds, __METHOD__ );
+ }
+ }
+
+ /**
+ * Adds tag which identifies the revision of source message at that time.
+ * This is used to show diff against current version of source message
+ * when updating a translation.
+ * Hook: Translate:newTranslation
+ * @param MessageHandle $handle
+ * @param int $revision
+ * @param string $text
+ * @param User $user
+ * @return bool
+ */
+ public static function updateTransverTag( MessageHandle $handle, $revision,
+ $text, User $user
+ ) {
+ if ( $user->isAllowed( 'bot' ) ) {
+ return false;
+ }
+
+ $group = $handle->getGroup();
+
+ $title = $handle->getTitle();
+ $name = $handle->getKey() . '/' . $group->getSourceLanguage();
+ $definitionTitle = Title::makeTitleSafe( $title->getNamespace(), $name );
+ if ( !$definitionTitle || !$definitionTitle->exists() ) {
+ return true;
+ }
+
+ $definitionRevision = $definitionTitle->getLatestRevID();
+
+ $dbw = wfGetDB( DB_MASTER );
+
+ $conds = array(
+ 'rt_page' => $title->getArticleID(),
+ 'rt_type' => RevTag::getType( 'tp:transver' ),
+ 'rt_revision' => $revision,
+ 'rt_value' => $definitionRevision,
+ );
+ $index = array( 'rt_type', 'rt_page', 'rt_revision' );
+ $dbw->replace( 'revtag', array( $index ), $conds, __METHOD__ );
+
+ return true;
+ }
+
+ /**
+ * Hook: ArticlePrepareTextForEdit
+ * @param WikiPage $wikiPage
+ * @param ParserOptions $popts
+ * @return bool
+ */
+ public static function disablePreSaveTransform( $wikiPage, ParserOptions $popts ) {
+ global $wgTranslateUsePreSaveTransform;
+
+ if ( !$wgTranslateUsePreSaveTransform ) {
+ $handle = new MessageHandle( $wikiPage->getTitle() );
+ if ( $handle->isMessageNamespace() && !$handle->isDoc() ) {
+ $popts->setPreSaveTransform( false );
+ }
+ }
+
+ return true;
+ }
+
+ /**
+ * Hook: ArticleContentOnDiff
+ */
+ public static function displayOnDiff( DifferenceEngine $de, OutputPage $out ) {
+ $title = $de->getTitle();
+ $handle = new MessageHandle( $title );
+
+ if ( !$handle->isValid() ) {
+ return true;
+ }
+
+ $th = new TranslationHelpers( $title, /*group*/false );
+ $th->setEditMode( false );
+
+ $de->loadNewText();
+ if ( $de->mNewContent instanceof TextContent ) {
+ $th->setTranslation( $de->mNewContent->getNativeData() );
+ } else {
+ // Screw you, not interested.
+ return true;
+ }
+ TranslationHelpers::addModules( $out );
+
+ $boxes = array();
+ $boxes[] = $th->callBox( 'documentation', array( $th, 'getDocumentationBox' ) );
+ $boxes[] = $th->callBox( 'definition', array( $th, 'getDefinitionBox' ) );
+ $boxes[] = $th->callBox( 'translation', array( $th, 'getTranslationDisplayBox' ) );
+
+ $output = implode( "\n", $boxes );
+ $output = Html::rawElement(
+ 'div',
+ array( 'class' => 'mw-sp-translate-edit-fields' ),
+ $output
+ );
+ $out->addHtml( $output );
+
+ return true;
+ }
+}
diff --git a/MLEB/Translate/TranslateGroupDescriptions.i18n.php b/MLEB/Translate/TranslateGroupDescriptions.i18n.php
new file mode 100644
index 00000000..50c43918
--- /dev/null
+++ b/MLEB/Translate/TranslateGroupDescriptions.i18n.php
@@ -0,0 +1,35 @@
+<?php
+/**
+ * This is a backwards-compatibility shim, generated by:
+ * https://git.wikimedia.org/blob/mediawiki%2Fcore.git/HEAD/maintenance%2FgenerateJsonI18n.php
+ *
+ * Beginning with MediaWiki 1.23, translation strings are stored in json files,
+ * and the EXTENSION.i18n.php file only exists to provide compatibility with
+ * older releases of MediaWiki. For more information about this migration, see:
+ * https://www.mediawiki.org/wiki/Requests_for_comment/Localisation_format
+ *
+ * This shim maintains compatibility back to MediaWiki 1.17.
+ */
+$messages = array();
+if ( !function_exists( 'wfJsonI18nShim396ebc2df3c99c1e' ) ) {
+ function wfJsonI18nShim396ebc2df3c99c1e( $cache, $code, &$cachedData ) {
+ $codeSequence = array_merge( array( $code ), $cachedData['fallbackSequence'] );
+ foreach ( $codeSequence as $csCode ) {
+ $fileName = dirname( __FILE__ ) . "/i18n/groupdescriptions/$csCode.json";
+ if ( is_readable( $fileName ) ) {
+ $data = FormatJson::decode( file_get_contents( $fileName ), true );
+ foreach ( array_keys( $data ) as $key ) {
+ if ( $key === '' || $key[0] === '@' ) {
+ unset( $data[$key] );
+ }
+ }
+ $cachedData['messages'] = array_merge( $data, $cachedData['messages'] );
+ }
+
+ $cachedData['deps'][] = new FileDependency( $fileName );
+ }
+ return true;
+ }
+
+ $GLOBALS['wgHooks']['LocalisationCacheRecache'][] = 'wfJsonI18nShim396ebc2df3c99c1e';
+}
diff --git a/MLEB/Translate/TranslateHooks.php b/MLEB/Translate/TranslateHooks.php
new file mode 100644
index 00000000..42d5abed
--- /dev/null
+++ b/MLEB/Translate/TranslateHooks.php
@@ -0,0 +1,653 @@
+<?php
+/**
+ * Contains class with basic non-feature specific hooks.
+ *
+ * @file
+ * @author Niklas Laxström
+ * @copyright Copyright © 2011-2013, Niklas Laxström
+ * @license GPL-2.0+
+ */
+
+/**
+ * Some hooks for Translate extension.
+ */
+class TranslateHooks {
+ /**
+ * Hook: CanonicalNamespaces
+ * @param $list array
+ * @return bool
+ */
+ public static function setupNamespaces( &$list ) {
+ global $wgPageTranslationNamespace, $wgNamespaceRobotPolicies;
+ if ( !defined( 'NS_TRANSLATIONS' ) ) {
+ define( 'NS_TRANSLATIONS', $wgPageTranslationNamespace );
+ define( 'NS_TRANSLATIONS_TALK', $wgPageTranslationNamespace + 1 );
+ }
+ $list[NS_TRANSLATIONS] = 'Translations';
+ $list[NS_TRANSLATIONS_TALK] = 'Translations_talk';
+ $wgNamespaceRobotPolicies[NS_TRANSLATIONS] = 'noindex';
+
+ return true;
+ }
+
+ /**
+ * Initialises the extension.
+ * Does late-initialization that is not possible at file level,
+ * because it depends on user configuration.
+ */
+ public static function setupTranslate() {
+ global $wgTranslatePHPlot, $wgAutoloadClasses, $wgHooks;
+
+ if ( $wgTranslatePHPlot ) {
+ $wgAutoloadClasses['PHPlot'] = $wgTranslatePHPlot;
+ }
+
+ global $wgReservedUsernames, $wgTranslateFuzzyBotName;
+ $wgReservedUsernames[] = $wgTranslateFuzzyBotName;
+
+ // Page translation setup check and init if enabled.
+ global $wgEnablePageTranslation;
+ if ( $wgEnablePageTranslation ) {
+ // Special page and the right to use it
+ global $wgSpecialPages, $wgAvailableRights, $wgSpecialPageGroups;
+ $wgSpecialPages['PageTranslation'] = 'SpecialPageTranslation';
+ $wgSpecialPageGroups['PageTranslation'] = 'pagetools';
+ $wgSpecialPages['PageTranslationDeletePage'] = 'SpecialPageTranslationDeletePage';
+ $wgSpecialPageGroups['PageTranslationDeletePage'] = 'pagetools';
+
+ $wgAvailableRights[] = 'pagetranslation';
+
+ $wgSpecialPages['PageMigration'] = 'SpecialPageMigration';
+ $wgSpecialPageGroups['PageMigration'] = 'wiki';
+ $wgSpecialPages['PagePreparation'] = 'SpecialPagePreparation';
+ $wgSpecialPageGroups['PagePreparation'] = 'wiki';
+
+ global $wgLogActionsHandlers, $wgLogTypes;
+ $wgLogTypes[] = 'pagetranslation';
+ $wgLogActionsHandlers['pagetranslation/mark'] = 'PageTranslationLogFormatter';
+ $wgLogActionsHandlers['pagetranslation/unmark'] = 'PageTranslationLogFormatter';
+ $wgLogActionsHandlers['pagetranslation/moveok'] = 'PageTranslationLogFormatter';
+ $wgLogActionsHandlers['pagetranslation/movenok'] = 'PageTranslationLogFormatter';
+ $wgLogActionsHandlers['pagetranslation/deletelok'] = 'PageTranslationLogFormatter';
+ $wgLogActionsHandlers['pagetranslation/deletefok'] = 'PageTranslationLogFormatter';
+ $wgLogActionsHandlers['pagetranslation/deletelnok'] = 'PageTranslationLogFormatter';
+ $wgLogActionsHandlers['pagetranslation/deletefnok'] = 'PageTranslationLogFormatter';
+ $wgLogActionsHandlers['pagetranslation/encourage'] = 'PageTranslationLogFormatter';
+ $wgLogActionsHandlers['pagetranslation/discourage'] = 'PageTranslationLogFormatter';
+ $wgLogActionsHandlers['pagetranslation/prioritylanguages'] =
+ 'PageTranslationLogFormatter';
+ $wgLogActionsHandlers['pagetranslation/associate'] = 'PageTranslationLogFormatter';
+ $wgLogActionsHandlers['pagetranslation/dissociate'] = 'PageTranslationLogFormatter';
+
+ global $wgJobClasses;
+ $wgJobClasses['TranslateRenderJob'] = 'TranslateRenderJob';
+ $wgJobClasses['RenderJob'] = 'TranslateRenderJob';
+ $wgJobClasses['TranslateMoveJob'] = 'TranslateMoveJob';
+ $wgJobClasses['MoveJob'] = 'TranslateMoveJob';
+ $wgJobClasses['TranslateDeleteJob'] = 'TranslateDeleteJob';
+ $wgJobClasses['DeleteJob'] = 'TranslateDeleteJob';
+
+ // Namespaces
+ global $wgPageTranslationNamespace;
+ global $wgNamespacesWithSubpages, $wgNamespaceProtection;
+ global $wgTranslateMessageNamespaces;
+
+ // Define constants for more readable core
+ if ( !defined( 'NS_TRANSLATIONS' ) ) {
+ define( 'NS_TRANSLATIONS', $wgPageTranslationNamespace );
+ define( 'NS_TRANSLATIONS_TALK', $wgPageTranslationNamespace + 1 );
+ }
+
+ $wgNamespacesWithSubpages[NS_TRANSLATIONS] = true;
+ $wgNamespacesWithSubpages[NS_TRANSLATIONS_TALK] = true;
+
+ // Standard protection and register it for filtering
+ $wgNamespaceProtection[NS_TRANSLATIONS] = array( 'translate' );
+ $wgTranslateMessageNamespaces[] = NS_TRANSLATIONS;
+
+ /// Page translation hooks
+
+ /// @todo Register our css, is there a better place for this?
+ $wgHooks['OutputPageBeforeHTML'][] = 'PageTranslationHooks::injectCss';
+
+ // Add transver tags and update translation target pages
+ $wgHooks['PageContentSaveComplete'][] = 'PageTranslationHooks::onSectionSave';
+
+ // Check syntax for \<translate>
+ $wgHooks['PageContentSave'][] = 'PageTranslationHooks::tpSyntaxCheck';
+ $wgHooks['EditFilterMergedContent'][] =
+ 'PageTranslationHooks::tpSyntaxCheckForEditContent';
+
+ // Add transtag to page props for discovery
+ $wgHooks['PageContentSaveComplete'][] = 'PageTranslationHooks::addTranstag';
+ $wgHooks['RevisionInsertComplete'][] =
+ 'PageTranslationHooks::updateTranstagOnNullRevisions';
+
+ // Register \<languages/>
+ $wgHooks['ParserFirstCallInit'][] = 'TranslateHooks::setupParserHooks';
+
+ // Strip \<translate> tags etc. from source pages when rendering
+ $wgHooks['ParserBeforeStrip'][] = 'PageTranslationHooks::renderTagPage';
+
+ // Set the page content language
+ $wgHooks['PageContentLanguage'][] = 'PageTranslationHooks::onPageContentLanguage';
+
+ // Prevent editing of unknown pages in Translations namespace
+ $wgHooks['getUserPermissionsErrorsExpensive'][] =
+ 'PageTranslationHooks::preventUnknownTranslations';
+ // Prevent editing of translation in restricted languages
+ $wgHooks['getUserPermissionsErrorsExpensive'][] =
+ 'PageTranslationHooks::preventRestrictedTranslations';
+ // Prevent editing of translation pages directly
+ $wgHooks['getUserPermissionsErrorsExpensive'][] =
+ 'PageTranslationHooks::preventDirectEditing';
+
+ // Our custom header for translation pages
+ $wgHooks['ArticleViewHeader'][] = 'PageTranslationHooks::translatablePageHeader';
+
+ // Custom move page that can move all the associated pages too
+ $wgHooks['SpecialPage_initList'][] = 'PageTranslationHooks::replaceMovePage';
+ // Locking during page moves
+ $wgHooks['getUserPermissionsErrorsExpensive'][] =
+ 'PageTranslationHooks::lockedPagesCheck';
+ // Disable action=delete
+ $wgHooks['ArticleConfirmDelete'][] = 'PageTranslationHooks::disableDelete';
+
+ // Replace subpage logic behavior
+ $wgHooks['SkinSubPageSubtitle'][] = 'PageTranslationHooks::replaceSubtitle';
+
+ // Show page source code when export tab is opened
+ $wgHooks['SpecialTranslate::executeTask'][] = 'PageTranslationHooks::sourceExport';
+
+ // Replaced edit tab with translation tab for translation pages
+ $wgHooks['SkinTemplateNavigation'][] = 'PageTranslationHooks::translateTab';
+
+ // Update translated page when translation unit is moved
+ $wgHooks['TitleMoveComplete'][] = 'PageTranslationHooks::onMoveTranslationUnits';
+ }
+ }
+
+ /**
+ * Hook: ParserFirstCallInit
+ * Registers \<languages> tag with the parser.
+ *
+ * @param $parser Parser
+ *
+ * @return bool
+ */
+ public static function setupParserHooks( $parser ) {
+ // For nice language list in-page
+ $parser->setHook( 'languages', array( 'PageTranslationHooks', 'languages' ) );
+
+ return true;
+ }
+
+ /**
+ * Hook: UnitTestsList
+ * @param $files array
+ * @return bool
+ */
+ public static function setupUnitTests( array &$files ) {
+ $dir = __DIR__ . '/tests/phpunit';
+ $directoryIterator = new RecursiveDirectoryIterator( $dir );
+ $fileIterator = new RecursiveIteratorIterator( $directoryIterator );
+
+ /// @var SplFileInfo $fileInfo
+ foreach ( $fileIterator as $fileInfo ) {
+ if ( substr( $fileInfo->getFilename(), -8 ) === 'Test.php' ) {
+ $files[] = $fileInfo->getPathname();
+ }
+ }
+
+ return true;
+ }
+
+ /**
+ * Hook: LoadExtensionSchemaUpdates
+ * @param $updater DatabaseUpdater
+ * @return bool
+ */
+ public static function schemaUpdates( DatabaseUpdater $updater ) {
+ $dir = __DIR__ . '/sql';
+
+ $updater->addExtensionUpdate( array(
+ 'addTable',
+ 'translate_sections',
+ "$dir/translate_sections.sql",
+ true
+ ) );
+ $updater->addExtensionUpdate( array(
+ 'addField',
+ 'translate_sections',
+ 'trs_order',
+ "$dir/translate_sections-trs_order.patch.sql",
+ true
+ ) );
+ $updater->addExtensionUpdate( array(
+ 'addTable',
+ 'revtag', "$dir/revtag.sql",
+ true
+ ) );
+ $updater->addExtensionUpdate( array(
+ 'addTable',
+ 'translate_groupstats',
+ "$dir/translate_groupstats.sql",
+ true
+ ) );
+ $updater->addExtensionUpdate( array(
+ 'addIndex',
+ 'translate_sections',
+ 'trs_page_order',
+ "$dir/translate_sections-indexchange.sql",
+ true
+ ) );
+ $updater->addExtensionUpdate( array(
+ 'dropIndex',
+ 'translate_sections',
+ 'trs_page',
+ "$dir/translate_sections-indexchange2.sql",
+ true
+ ) );
+ $updater->addExtensionUpdate( array(
+ 'addTable',
+ 'translate_reviews',
+ "$dir/translate_reviews.sql",
+ true
+ ) );
+ $updater->addExtensionUpdate( array(
+ 'addTable',
+ 'translate_groupreviews',
+ "$dir/translate_groupreviews.sql",
+ true
+ ) );
+ $updater->addExtensionUpdate( array(
+ 'addTable',
+ 'translate_tms',
+ "$dir/translate_tm.sql",
+ true
+ ) );
+ $updater->addExtensionUpdate( array(
+ 'addTable',
+ 'translate_metadata',
+ "$dir/translate_metadata.sql",
+ true
+ ) );
+ $updater->addExtensionUpdate( array(
+ 'addTable', 'translate_messageindex',
+ "$dir/translate_messageindex.sql",
+ true
+ ) );
+ $updater->addExtensionUpdate( array(
+ 'addIndex',
+ 'translate_groupstats',
+ 'tgs_lang',
+ "$dir/translate_groupstats-indexchange.sql",
+ true
+ ) );
+ $updater->addExtensionUpdate( array(
+ 'addField', 'translate_groupstats',
+ 'tgs_proofread',
+ "$dir/translate_groupstats-proofread.sql",
+ true
+ ) );
+
+ $updater->addExtensionUpdate( array(
+ 'addTable',
+ 'translate_stash',
+ "$dir/translate_stash.sql",
+ true
+ ) );
+
+ return true;
+ }
+
+ /**
+ * Hook: ParserTestTables
+ */
+ public static function parserTestTables( array &$tables ) {
+ $tables[] = 'revtag';
+ $tables[] = 'translate_groupstats';
+ $tables[] = 'translate_messageindex';
+ $tables[] = 'translate_stash';
+
+ return true;
+ }
+
+ /**
+ * Set the correct page content language for translation units.
+ * Hook: PageContentLanguage
+ * @param $title Title
+ * @param $pageLang
+ * @return bool
+ */
+ public static function onPageContentLanguage( Title $title, &$pageLang ) {
+ $handle = new MessageHandle( $title );
+ if ( $handle->isMessageNamespace() ) {
+ $pageLang = $handle->getEffectiveLanguageCode();
+ }
+
+ return true;
+ }
+
+ /**
+ * Hook: LanguageGetTranslatedLanguageNames
+ * Hook: TranslateSupportedLanguages
+ */
+ public static function translateMessageDocumentationLanguage( &$names, $code ) {
+ global $wgTranslateDocumentationLanguageCode;
+ if ( $wgTranslateDocumentationLanguageCode ) {
+ // Special case the native name, assuming it is given as a string
+ if ( $wgTranslateDocumentationLanguageCode === $code ) {
+ $code = 'en';
+ }
+
+ $names[$wgTranslateDocumentationLanguageCode] =
+ wfMessage( 'translate-documentation-language' )->inLanguage( $code )->plain();
+ }
+
+ return true;
+ }
+
+ /**
+ * Hook: SpecialSearchProfiles
+ */
+ public static function searchProfile( array &$profiles ) {
+ global $wgTranslateMessageNamespaces;
+ $insert = array();
+ $insert['translation'] = array(
+ 'message' => 'translate-searchprofile',
+ 'tooltip' => 'translate-searchprofile-tooltip',
+ 'namespaces' => $wgTranslateMessageNamespaces,
+ );
+
+ // Insert translations before 'all'
+ $index = array_search( 'all', array_keys( $profiles ) );
+
+ // Or just at the end if all is not found
+ if ( $index === false ) {
+ wfWarn( '"all" not found in search profiles' );
+ $index = count( $profiles );
+ }
+
+ $profiles = array_merge(
+ array_slice( $profiles, 0, $index ),
+ $insert,
+ array_slice( $profiles, $index )
+ );
+
+ return true;
+ }
+
+ /**
+ * Hook: SpecialSearchProfileForm
+ */
+ public static function searchProfileForm( SpecialSearch $search, &$form,
+ /*string*/$profile, $term, array $opts
+ ) {
+ if ( $profile !== 'translation' ) {
+ return true;
+ }
+
+ if ( !$search->getSearchEngine()->supports( 'title-suffix-filter' ) ) {
+ return false;
+ }
+
+ $hidden = '';
+ foreach ( $opts as $key => $value ) {
+ $hidden .= Html::hidden( $key, $value );
+ }
+
+ $context = $search->getContext();
+ $code = $context->getLanguage()->getCode();
+ $selected = $context->getRequest()->getVal( 'languagefilter' );
+
+ if ( is_callable( array( 'LanguageNames', 'getNames' ) ) ) {
+ $languages = LanguageNames::getNames( $code,
+ LanguageNames::FALLBACK_NORMAL,
+ LanguageNames::LIST_MW
+ );
+ } else {
+ $languages = Language::fetchLanguageNames();
+ }
+
+ ksort( $languages );
+
+ $selector = new XmlSelect( 'languagefilter', 'languagefilter' );
+ $selector->setDefault( $selected );
+ $selector->addOption( wfMessage( 'translate-search-nofilter' )->text(), '-' );
+ foreach ( $languages as $code => $name ) {
+ $selector->addOption( "$code - $name", $code );
+ }
+
+ $selector = $selector->getHTML();
+
+ $label = Xml::label(
+ wfMessage( 'translate-search-languagefilter' )->text(),
+ 'languagefilter'
+ ) . '&#160;';
+ $params = array( 'id' => 'mw-searchoptions' );
+
+ $form = Xml::fieldset( false, false, $params ) .
+ $hidden . $label . $selector .
+ Html::closeElement( 'fieldset' );
+
+ return false;
+ }
+
+ /// Hook: SpecialSearchSetupEngine
+ public static function searchProfileSetupEngine( SpecialSearch $search,
+ /*string*/$profile, SearchEngine $engine
+ ) {
+ if ( $profile !== 'translation' ) {
+ return true;
+ }
+
+ $context = $search->getContext();
+ $selected = $context->getRequest()->getVal( 'languagefilter' );
+ if ( $selected !== '-' && $selected ) {
+ $engine->setFeatureData( 'title-suffix-filter', "/$selected" );
+ $search->setExtraParam( 'languagefilter', $selected );
+ }
+
+ return true;
+ }
+
+ /// Hook: Translate:MessageGroupStats:isIncluded
+ public static function hideDiscouragedFromStats( $id, $code ) {
+ // Return true to keep, false to exclude
+ return MessageGroups::getPriority( $id ) !== 'discouraged';
+ }
+
+ /// Hook: Translate:MessageGroupStats:isIncluded
+ public static function hideRestrictedFromStats( $id, $code ) {
+ $filterLangs = TranslateMetadata::get( $id, 'prioritylangs' );
+ if ( strlen( $filterLangs ) === 0 ) {
+ // No restrictions, keep everything
+ return true;
+ }
+
+ $filter = array_flip( explode( ',', $filterLangs ) );
+
+ // If the language is in the list, return true to not hide it
+ return isset( $filter[$code] );
+ }
+
+ /// Hook LinksUpdate
+ public static function preventCategorization( LinksUpdate $updater ) {
+ $handle = new MessageHandle( $updater->getTitle() );
+ if ( $handle->isMessageNamespace() && !$handle->isDoc() ) {
+ $updater->mCategories = array();
+ }
+
+ return true;
+ }
+
+ /**
+ * Hook: MakeGlobalVariablesScript
+ *
+ * Adds $wgTranslateDocumentationLanguageCode to ResourceLoader configuration
+ * when Special:Translate is shown.
+ */
+ public static function addConfig( &$vars, OutputPage $out ) {
+ $request = $out->getRequest();
+ $title = $out->getTitle();
+ list( $alias, ) = SpecialPageFactory::resolveAlias( $title->getText() );
+
+ if ( SpecialTranslate::isBeta( $request )
+ && $title->isSpecialPage()
+ && ( $alias === 'Translate'
+ || $alias === 'TranslationStash'
+ || $alias === 'SearchTranslations' )
+ ) {
+ global $wgTranslateDocumentationLanguageCode, $wgTranslatePermissionUrl,
+ $wgTranslateUseSandbox;
+ $vars['TranslateRight'] = $out->getUser()->isAllowed( 'translate' );
+ $vars['TranslateMessageReviewRight'] =
+ $out->getUser()->isAllowed( 'translate-messagereview' );
+ $vars['DeleteRight'] = $out->getUser()->isAllowed( 'delete' );
+ $vars['wgTranslateDocumentationLanguageCode'] = $wgTranslateDocumentationLanguageCode;
+ $vars['wgTranslatePermissionUrl'] = $wgTranslatePermissionUrl;
+ $vars['wgTranslateUseSandbox'] = $wgTranslateUseSandbox;
+ }
+
+ return true;
+ }
+
+ /**
+ * Hook: AdminLinks
+ */
+ public static function onAdminLinks( &$tree ) {
+ global $wgTranslateUseSandbox;
+
+ if ( $wgTranslateUseSandbox ) {
+ $sectionLabel = wfMessage( 'adminlinks_users' )->text();
+ $row = $tree->getSection( $sectionLabel )->getRow( 'main' );
+ $row->addItem( ALItem::newFromSpecialPage( 'TranslateSandbox' ) );
+ }
+
+ return true;
+ }
+
+ private static $userMergeTables = array(
+ 'translate_stash' => 'ts_user',
+ 'translate_reviews' => 'trr_user',
+ );
+
+ /**
+ * Handler for E:UserMerge's MergeAccountFromTo hook
+ *
+ * @param User $oldUser
+ * @param User $newUser
+ * @return bool
+ */
+ public static function onMergeAccountFromTo( User &$oldUser, User &$newUser ) {
+ $dbw = wfGetDB( DB_MASTER );
+
+ // Update the non-duplicate rows, we'll just delete
+ // the duplicate ones later
+ foreach ( self::$userMergeTables as $table => $field ) {
+ $dbw->update(
+ $table,
+ array( $field => $newUser->getId() ),
+ array( $field => $oldUser->getId() ),
+ __METHOD__,
+ array( 'IGNORE' )
+ );
+ }
+
+ return true;
+ }
+
+ /**
+ * Handler for E:UserMerge's DeleteAccount hook
+ *
+ * @param User $oldUser
+ * @return bool
+ */
+ public static function onDeleteAccount( User &$oldUser ) {
+ $dbw = wfGetDB( DB_MASTER );
+
+ // Delete any remaining rows that didn't get merged
+ foreach ( self::$userMergeTables as $table => $field ) {
+ $dbw->delete(
+ $table,
+ array( $field => $oldUser->getId() ),
+ __METHOD__
+ );
+ }
+
+ return true;
+ }
+
+ /**
+ * Hook: AbortEmailNotification
+ *
+ * False aborts the email.
+ */
+ public static function onAbortEmailNotificationReview( $editor, $title, $rc = null ) {
+ # In MediaWiki 1.20–23 we don't have the third parameter.
+ if ( $rc === null ) {
+ return true;
+ }
+
+ if ( $rc->mAttribs['rc_log_type'] === 'translationreview' ) {
+ return false;
+ }
+
+ return true;
+ }
+
+ /**
+ * Make Special:MyLanguage links red if the target page doesn't exists.
+ * A bit hacky because the core code is not so flexible.
+ * @param $dummy
+ * @param Title $target
+ * @param string $html
+ * @param array $customAttribs
+ * @param array $query
+ * @param array $options
+ * @param string|null $ret
+ * @return bool
+ */
+ public static function linkfix( $dummy, $target, &$html, &$customAttribs,
+ &$query, &$options, &$ret
+ ) {
+ if ( $target->getNamespace() == NS_SPECIAL ) {
+ list( $name, $subpage ) = SpecialPageFactory::resolveAlias( $target->getDBkey() );
+ if ( $name === 'MyLanguage' ) {
+ $realTarget = Title::newFromText( $subpage );
+ if ( !$realTarget || !$realTarget->exists() ) {
+ $options[] = 'broken';
+ $index = array_search( 'known', $options, true );
+ if ( $index !== false ) {
+ unset( $options[$index] );
+ }
+
+ $index = array_search( 'noclasses', $options, true );
+ if ( $index !== false ) {
+ unset( $options[$index] );
+ }
+ }
+ }
+ }
+
+ return true;
+ }
+
+ public static function setupTranslateParserFunction( &$parser ) {
+ $parser->setFunctionHook( 'translation', 'TranslateHooks::translateRenderParserFunction' );
+
+ return true;
+ }
+
+ public static function translateRenderParserFunction( $parser ) {
+ $pageTitle = $parser->getTitle();
+
+ $handle = new MessageHandle( $pageTitle );
+ $code = $handle->getCode();
+ if ( Language::isKnownLanguageTag( $code ) ) {
+ return '/' . $code;
+ }
+ return '';
+ }
+}
diff --git a/MLEB/Translate/TranslateSandbox.i18n.php b/MLEB/Translate/TranslateSandbox.i18n.php
new file mode 100644
index 00000000..c0a7d0d1
--- /dev/null
+++ b/MLEB/Translate/TranslateSandbox.i18n.php
@@ -0,0 +1,35 @@
+<?php
+/**
+ * This is a backwards-compatibility shim, generated by:
+ * https://git.wikimedia.org/blob/mediawiki%2Fcore.git/HEAD/maintenance%2FgenerateJsonI18n.php
+ *
+ * Beginning with MediaWiki 1.23, translation strings are stored in json files,
+ * and the EXTENSION.i18n.php file only exists to provide compatibility with
+ * older releases of MediaWiki. For more information about this migration, see:
+ * https://www.mediawiki.org/wiki/Requests_for_comment/Localisation_format
+ *
+ * This shim maintains compatibility back to MediaWiki 1.17.
+ */
+$messages = array();
+if ( !function_exists( 'wfJsonI18nShimdf5425e6dc1f5f9b' ) ) {
+ function wfJsonI18nShimdf5425e6dc1f5f9b( $cache, $code, &$cachedData ) {
+ $codeSequence = array_merge( array( $code ), $cachedData['fallbackSequence'] );
+ foreach ( $codeSequence as $csCode ) {
+ $fileName = dirname( __FILE__ ) . "/i18n/sandbox/$csCode.json";
+ if ( is_readable( $fileName ) ) {
+ $data = FormatJson::decode( file_get_contents( $fileName ), true );
+ foreach ( array_keys( $data ) as $key ) {
+ if ( $key === '' || $key[0] === '@' ) {
+ unset( $data[$key] );
+ }
+ }
+ $cachedData['messages'] = array_merge( $data, $cachedData['messages'] );
+ }
+
+ $cachedData['deps'][] = new FileDependency( $fileName );
+ }
+ return true;
+ }
+
+ $GLOBALS['wgHooks']['LocalisationCacheRecache'][] = 'wfJsonI18nShimdf5425e6dc1f5f9b';
+}
diff --git a/MLEB/Translate/TranslateSearch.i18n.php b/MLEB/Translate/TranslateSearch.i18n.php
new file mode 100644
index 00000000..7ad8ea3e
--- /dev/null
+++ b/MLEB/Translate/TranslateSearch.i18n.php
@@ -0,0 +1,35 @@
+<?php
+/**
+ * This is a backwards-compatibility shim, generated by:
+ * https://git.wikimedia.org/blob/mediawiki%2Fcore.git/HEAD/maintenance%2FgenerateJsonI18n.php
+ *
+ * Beginning with MediaWiki 1.23, translation strings are stored in json files,
+ * and the EXTENSION.i18n.php file only exists to provide compatibility with
+ * older releases of MediaWiki. For more information about this migration, see:
+ * https://www.mediawiki.org/wiki/Requests_for_comment/Localisation_format
+ *
+ * This shim maintains compatibility back to MediaWiki 1.17.
+ */
+$messages = array();
+if ( !function_exists( 'wfJsonI18nShimf45fd309dae09aac' ) ) {
+ function wfJsonI18nShimf45fd309dae09aac( $cache, $code, &$cachedData ) {
+ $codeSequence = array_merge( array( $code ), $cachedData['fallbackSequence'] );
+ foreach ( $codeSequence as $csCode ) {
+ $fileName = dirname( __FILE__ ) . "/i18n/search/$csCode.json";
+ if ( is_readable( $fileName ) ) {
+ $data = FormatJson::decode( file_get_contents( $fileName ), true );
+ foreach ( array_keys( $data ) as $key ) {
+ if ( $key === '' || $key[0] === '@' ) {
+ unset( $data[$key] );
+ }
+ }
+ $cachedData['messages'] = array_merge( $data, $cachedData['messages'] );
+ }
+
+ $cachedData['deps'][] = new FileDependency( $fileName );
+ }
+ return true;
+ }
+
+ $GLOBALS['wgHooks']['LocalisationCacheRecache'][] = 'wfJsonI18nShimf45fd309dae09aac';
+}
diff --git a/MLEB/Translate/TranslateTasks.php b/MLEB/Translate/TranslateTasks.php
new file mode 100644
index 00000000..312bf767
--- /dev/null
+++ b/MLEB/Translate/TranslateTasks.php
@@ -0,0 +1,427 @@
+<?php
+/**
+ * Tasks which encapsulate the processing of messages to requested
+ * format for the web interface.
+ *
+ * @file
+ * @author Niklas Laxström
+ * @license GPL-2.0+
+ */
+
+/**
+ * Basic implementation and interface for tasks.
+ * Task is a combination of filters and output format that are applied to
+ * messages of given message group in given language.
+ */
+abstract class TranslateTask {
+ /// @var string Task identifier.
+ protected $id = '__BUG__';
+
+ // We need $id here because staticness prevents subclass overriding.
+ /**
+ * Get label for task.
+ * @param string $id Task id
+ * @return string
+ */
+ public static function labelForTask( $id ) {
+ return wfMessage( 'translate-task-' . $id )->text();
+ }
+
+ /**
+ * Get task identifier.
+ * @return string
+ */
+ public function getId() {
+ return $this->id;
+ }
+
+ /**
+ * Indicates whether the task itself will hand the full output page,
+ * including headers. If false, the resulting html should be embedded
+ * to the page of calling context.
+ * @return bool
+ */
+ public function plainOutput() {
+ return false;
+ }
+
+ /**
+ * @var MessageGroup
+ */
+ protected $group;
+
+ /**
+ * @var MessageCollection
+ */
+ protected $collection;
+
+ /**
+ * @var array
+ */
+ protected $options;
+
+ /**
+ * @var array
+ */
+ protected $nondefaults;
+
+ /**
+ * @var IContextSource
+ */
+ protected $context;
+
+ /**
+ * @var array Offsets stored after the collection has been paged.
+ */
+ protected $offsets;
+
+ /**
+ * Constructor.
+ * @param MessageGroup $group Message group.
+ * @param array $options Options.
+ * @param array $nondefaults List of non-default options for links.
+ * @param IContextSource $context
+ */
+ final public function init( MessageGroup $group, array $options, array $nondefaults,
+ IContextSource $context
+ ) {
+ $this->group = $group;
+ $this->options = $options;
+ $this->nondefaults = $nondefaults;
+ $this->context = $context;
+ }
+
+ /**
+ * Outputs the results.
+ * @return string
+ */
+ abstract protected function output();
+
+ /// Processes messages before paging is done.
+ abstract protected function preinit();
+
+ /// Processes messages after paging is done.
+ abstract protected function postinit();
+
+ /**
+ * Executes the task with given options and outputs the results.
+ * @return string Partial or full html.
+ * @see plainOutput()
+ */
+ final public function execute() {
+ $this->preinit();
+ $this->doPaging();
+ $this->postinit();
+
+ return $this->output();
+ }
+
+ /**
+ * Takes a slice of messages according to limit and offset given
+ * in option at initialisation time. Calls the callback to provide
+ * information how much messages there is.
+ */
+ protected function doPaging() {
+ $total = count( $this->collection );
+ $offsets = $this->collection->slice(
+ $this->options['offset'],
+ $this->options['limit']
+ );
+ $left = count( $this->collection );
+
+ $this->offsets = array(
+ 'backwardsOffset' => $offsets[0],
+ 'forwardsOffset' => $offsets[1],
+ 'start' => $offsets[2],
+ 'count' => $left,
+ 'total' => $total,
+ );
+ }
+
+ /**
+ * Determine whether this user can use this task.
+ * Override this method if the task depends on user rights.
+ * @param User $user
+ * @return string
+ */
+ public function isAllowedFor( User $user ) {
+ return true;
+ }
+}
+
+/**
+ * Provides essentially free-form filtering access via tasks.
+ * This essentially makes all other tasks redundant, and once
+ * TUX is finished and everything is using WebAPI we can get
+ * rid of these.
+ * @since 2012-12-12
+ */
+class CustomFilteredMessagesTask extends TranslateTask {
+ protected $id = 'custom';
+
+ protected function preinit() {
+ }
+
+ protected function postinit() {
+ }
+
+ protected function doPaging() {
+ }
+
+ protected function output() {
+ $table = new TuxMessageTable( $this->context, $this->group, $this->options['language'] );
+
+ return $table->fullTable();
+ }
+}
+
+/**
+ * Lists all non-optional messages with translations if any.
+ */
+class ViewMessagesTask extends TranslateTask {
+ protected $id = 'view';
+
+ protected function preinit() {
+ $code = $this->options['language'];
+ $this->collection = $this->group->initCollection( $code );
+ $this->collection->filter( 'ignored' );
+ $this->collection->filter( 'optional' );
+ }
+
+ protected function postinit() {
+ $this->collection->loadTranslations();
+ }
+
+ protected function output() {
+ $table = MessageTable::newFromContext( $this->context, $this->collection, $this->group );
+
+ return $table->fullTable( $this->offsets, $this->nondefaults );
+ }
+}
+
+/**
+ * Basic task class for review mode.
+ */
+class ReviewMessagesTask extends ViewMessagesTask {
+ protected $id = 'review';
+
+ protected function preinit() {
+ $code = $this->options['language'];
+ $this->collection = $this->group->initCollection( $code );
+ $this->collection->filter( 'ignored' );
+ }
+
+ protected function output() {
+ $table = MessageTable::newFromContext( $this->context, $this->collection, $this->group );
+ $table->setReviewMode();
+
+ return $table->fullTable( $this->offsets, $this->nondefaults );
+ }
+}
+
+/**
+ * Lists untranslated non-optional messages. This is often good default
+ * task when translating.
+ */
+class ViewUntranslatedTask extends ViewMessagesTask {
+ protected $id = 'untranslated';
+
+ protected function preinit() {
+ $code = $this->options['language'];
+ $this->collection = $this->group->initCollection( $code );
+ $this->collection->filter( 'ignored' );
+ $this->collection->filter( 'optional' );
+ $this->collection->filter( 'translated' );
+ }
+}
+
+/**
+ * Lists optional messages.
+ */
+class ViewOptionalTask extends ViewMessagesTask {
+ protected $id = 'optional';
+
+ protected function preinit() {
+ $code = $this->options['language'];
+ $this->collection = $this->group->initCollection( $code );
+ $this->collection->filter( 'ignored' );
+ $this->collection->filter( 'optional', false );
+ }
+}
+
+/**
+ * Lists all translations for reviewing.
+ */
+class ReviewAllMessagesTask extends ReviewMessagesTask {
+ protected $id = 'reviewall';
+
+ protected function preinit() {
+ parent::preinit();
+ $this->collection->filter( 'ignored' );
+ $this->collection->filter( 'hastranslation', false );
+ }
+}
+
+/**
+ * Lists all translations the user can accept.
+ */
+class AcceptQueueMessagesTask extends ReviewMessagesTask {
+ protected $id = 'acceptqueue';
+
+ protected function preinit() {
+ $user = $this->context->getUser();
+ parent::preinit();
+ $this->collection->filter( 'ignored' );
+ $this->collection->filter( 'hastranslation', false );
+ $this->collection->filter( 'fuzzy' );
+ $this->collection->filter( 'reviewer', true, $user->getId() );
+ $this->collection->filter( 'last-translator', true, $user->getId() );
+ }
+
+ public function isAllowedFor( User $user ) {
+ return $user->isAllowed( 'translate-messagereview' );
+ }
+}
+
+/**
+ * Exports messages to their native format with embedded textarea.
+ */
+class ExportMessagesTask extends ViewMessagesTask {
+ protected $id = 'export';
+
+ protected function preinit() {
+ $code = $this->options['language'];
+ $this->collection = $this->group->initCollection( $code );
+ // Don't export ignored, unless it is the source language
+ // or message documentation
+ global $wgTranslateDocumentationLanguageCode;
+ if ( $code !== $wgTranslateDocumentationLanguageCode
+ && $code !== $this->group->getSourceLanguage()
+ ) {
+ $this->collection->filter( 'ignored' );
+ }
+ }
+
+ // No paging should be done.
+ protected function doPaging() {
+ }
+
+ public function output() {
+ return Html::element(
+ 'textarea',
+ array( 'id' => 'wpTextbox1', 'rows' => '50' ),
+ $this->group->getFFS()->writeIntoVariable( $this->collection )
+ );
+ }
+}
+
+/**
+ * Exports messages to their native format as whole page.
+ */
+class ExportToFileMessagesTask extends ExportMessagesTask {
+ protected $id = 'export-to-file';
+
+ public function plainOutput() {
+ return true;
+ }
+
+ public function output() {
+ if ( !$this->group instanceof FileBasedMessageGroup ) {
+ return 'Not supported';
+ }
+
+ $ffs = $this->group->getFFS();
+ $data = $ffs->writeIntoVariable( $this->collection );
+
+ $filename = basename( $this->group->getSourceFilePath( $this->collection->getLanguage() ) );
+ header( "Content-Disposition: attachment; filename=\"$filename\"" );
+
+ return $data;
+ }
+}
+
+/**
+ * Exports messages as special Gettext format that is suitable for off-line
+ * translation with tools that support Gettext. These files can later be
+ * imported back to the wiki.
+ */
+class ExportAsPoMessagesTask extends ExportMessagesTask {
+ protected $id = 'export-as-po';
+
+ public function plainOutput() {
+ return true;
+ }
+
+ public function output() {
+ if ( MessageGroups::isDynamic( $this->group ) ) {
+ return 'Not supported';
+ }
+
+ $ffs = null;
+ if ( $this->group instanceof FileBasedMessageGroup ) {
+ $ffs = $this->group->getFFS();
+ }
+
+ if ( !$ffs instanceof GettextFFS ) {
+ $group = FileBasedMessageGroup::newFromMessageGroup( $this->group );
+ $ffs = new GettextFFS( $group );
+ }
+
+ $ffs->setOfflineMode( 'true' );
+
+ $code = $this->options['language'];
+ $id = $this->group->getID();
+ $filename = "${id}_$code.po";
+ header( "Content-Disposition: attachment; filename=\"$filename\"" );
+
+ return $ffs->writeIntoVariable( $this->collection );
+ }
+}
+
+/**
+ * Collection of functions to get tasks.
+ */
+class TranslateTasks {
+ /**
+ * Return list of available tasks.
+ * @param bool $pageTranslation Whether this group is page translation group.
+ * @todo Make the above parameter a group and check its class?
+ * @return string[] Task identifiers.
+ */
+ public static function getTasks( $pageTranslation = false ) {
+ global $wgTranslateTasks;
+
+ // Tasks not to be available in page translation.
+ $filterTasks = array(
+ 'optional',
+ 'export-to-file',
+ );
+
+ $allTasks = array_keys( $wgTranslateTasks );
+
+ if ( $pageTranslation ) {
+ $allTasks = array_diff( $allTasks, $filterTasks );
+ }
+
+ return $allTasks;
+ }
+
+ /**
+ * Get task by id.
+ * @param string $id Unique task identifier.
+ * @return TranslateTask|null Null if no such task.
+ */
+ public static function getTask( $id ) {
+ global $wgTranslateTasks;
+
+ if ( array_key_exists( $id, $wgTranslateTasks ) ) {
+ if ( is_callable( $wgTranslateTasks[$id] ) ) {
+ return call_user_func( $wgTranslateTasks[$id], $id );
+ }
+
+ return new $wgTranslateTasks[$id];
+ }
+
+ return null;
+ }
+}
diff --git a/MLEB/Translate/TranslateUtils.php b/MLEB/Translate/TranslateUtils.php
new file mode 100644
index 00000000..f2e10c9d
--- /dev/null
+++ b/MLEB/Translate/TranslateUtils.php
@@ -0,0 +1,430 @@
+<?php
+/**
+ * This file contains classes with static helper functions for other classes.
+ *
+ * @file
+ * @author Niklas Laxström
+ * @copyright Copyright © 2007-2013 Niklas Laxström
+ * @license GPL-2.0+
+ */
+
+/**
+ * Essentially random collection of helper functions, similar to GlobalFunctions.php.
+ */
+class TranslateUtils {
+ /**
+ * Does quick normalisation of message name so that in can be looked from the
+ * database.
+ * @param string $message Name of the message
+ * @param string $code Language code in lower case and with dash as delimiter
+ * @param int $ns Namespace constant
+ * @return string The normalised title as a string.
+ */
+ public static function title( $message, $code, $ns = NS_MEDIAWIKI ) {
+ // Cache some amount of titles for speed.
+ static $cache = array();
+ $key = $ns . ':' . $message;
+
+ if ( !isset( $cache[$key] ) ) {
+ $cache[$key] = Title::capitalize( $message, $ns );
+ }
+
+ if ( $code ) {
+ return $cache[$key] . '/' . $code;
+ } else {
+ return $cache[$key];
+ }
+ }
+
+ /**
+ * Splits page name into message key and language code.
+ * @param string $text
+ * @return array ( string, string ) Key and language code.
+ * @todo Handle names without slash.
+ */
+ public static function figureMessage( $text ) {
+ $pos = strrpos( $text, '/' );
+ $code = substr( $text, $pos + 1 );
+ $key = substr( $text, 0, $pos );
+
+ return array( $key, $code );
+ }
+
+ /**
+ * Loads page content *without* side effects.
+ * @param string $key Message key.
+ * @param string $language Language code.
+ * @param int $namespace Namespace number.
+ * @return string|null The contents or null.
+ */
+ public static function getMessageContent( $key, $language, $namespace = NS_MEDIAWIKI ) {
+ $title = self::title( $key, $language, $namespace );
+ $data = self::getContents( array( $title ), $namespace );
+
+ return isset( $data[$title][0] ) ? $data[$title][0] : null;
+ }
+
+ /**
+ * Fetches contents for pagenames in given namespace without side effects.
+ *
+ * @param string|string[] $titles Database page names.
+ * @param int $namespace The number of the namespace.
+ * @return array ( string => array ( string, string ) ) Tuples of page
+ * text and last author indexed by page name.
+ */
+ public static function getContents( $titles, $namespace ) {
+ $dbr = wfGetDB( DB_SLAVE );
+ $rows = $dbr->select( array( 'page', 'revision', 'text' ),
+ array( 'page_title', 'old_text', 'old_flags', 'rev_user_text' ),
+ array(
+ 'page_namespace' => $namespace,
+ 'page_latest=rev_id',
+ 'rev_text_id=old_id',
+ 'page_title' => $titles
+ ),
+ __METHOD__
+ );
+
+ $titles = array();
+ foreach ( $rows as $row ) {
+ $titles[$row->page_title] = array(
+ Revision::getRevisionText( $row ),
+ $row->rev_user_text
+ );
+ }
+ $rows->free();
+
+ return $titles;
+ }
+
+ /**
+ * Fetches recent changes for titles in given namespaces
+ *
+ * @param int $hours Number of hours.
+ * @param bool $bots Should bot edits be included.
+ * @param null|int[] $ns List of namespace IDs.
+ * @param string[] $extraFields List of extra columns to fetch.
+ * @return array List of recent changes.
+ */
+ public static function translationChanges(
+ $hours = 24, $bots = false, $ns = null, $extraFields = array()
+ ) {
+ global $wgTranslateMessageNamespaces;
+
+ $dbr = wfGetDB( DB_SLAVE );
+ $recentchanges = $dbr->tableName( 'recentchanges' );
+ $hours = intval( $hours );
+ $cutoff_unixtime = time() - ( $hours * 3600 );
+ $cutoff = $dbr->timestamp( $cutoff_unixtime );
+
+ $namespaces = $dbr->makeList( $wgTranslateMessageNamespaces );
+ if ( $ns ) {
+ $namespaces = $dbr->makeList( $ns );
+ }
+
+ $fields = array_merge(
+ array( 'rc_title', 'rc_timestamp', 'rc_user_text', 'rc_namespace' ),
+ $extraFields
+ );
+ $fields = implode( ',', $fields );
+ // @todo Raw SQL
+ $sql = "SELECT $fields, substring_index(rc_title, '/', -1) as lang FROM $recentchanges " .
+ "WHERE rc_timestamp >= '{$cutoff}' " .
+ ( $bots ? '' : 'AND rc_bot = 0 ' ) .
+ "AND rc_namespace in ($namespaces) " .
+ "ORDER BY lang ASC, rc_timestamp DESC";
+
+ $res = $dbr->query( $sql, __METHOD__ );
+ $rows = iterator_to_array( $res );
+
+ return $rows;
+ }
+
+ /* Some other helpers for output */
+
+ /**
+ * Returns a localised language name.
+ * @param string $code Language code.
+ * @param string $language Language code of language the the name should be in.
+ * @return string Best-effort localisation of wanted language name.
+ */
+ public static function getLanguageName( $code, $language = 'en' ) {
+ $languages = TranslateUtils::getLanguageNames( $language );
+
+ if ( isset( $languages[$code] ) ) {
+ return $languages[$code];
+ } else {
+ return $code;
+ }
+ }
+
+ /**
+ * Returns a language selector.
+ * @param string $language Language code of the language the names should be localised to.
+ * @param string $selectedId The language code that is selected by default.
+ * @return string
+ */
+ public static function languageSelector( $language, $selectedId ) {
+ $selector = self::getLanguageSelector( $language );
+ $selector->setDefault( $selectedId );
+ $selector->setAttribute( 'id', 'language' );
+ $selector->setAttribute( 'name', 'language' );
+
+ return $selector->getHtml();
+ }
+
+ /**
+ * Standard language selector in Translate extension.
+ * @param string $language Language code of the language the names should be localised to.
+ * @param bool $labelOption
+ * @return XmlSelect
+ */
+ public static function getLanguageSelector( $language, $labelOption = false ) {
+ $languages = self::getLanguageNames( $language );
+ ksort( $languages );
+
+ $selector = new XmlSelect();
+ if ( $labelOption !== false ) {
+ $selector->addOption( $labelOption, '-' );
+ }
+
+ foreach ( $languages as $code => $name ) {
+ $selector->addOption( "$code - $name", $code );
+ }
+
+ return $selector;
+ }
+
+ /**
+ * Get translated language names for the languages generally supported for
+ * translation in the current wiki. Message groups can have further
+ * exclusions.
+ * @param string $code
+ * @return array ( language code => language name )
+ */
+ public static function getLanguageNames( /*string */$code ) {
+ $languageNames = Language::fetchLanguageNames( $code );
+
+ // Remove languages with deprecated codes (bug 35475)
+ global $wgDummyLanguageCodes;
+
+ foreach ( array_keys( $wgDummyLanguageCodes ) as $dummyLanguageCode ) {
+ unset( $languageNames[$dummyLanguageCode] );
+ }
+
+ wfRunHooks( 'TranslateSupportedLanguages', array( &$languageNames, $code ) );
+
+ return $languageNames;
+ }
+
+ /**
+ * Returns the primary group message belongs to.
+ * @param int $namespace
+ * @param string $key
+ * @return string|null Group id or null.
+ */
+ public static function messageKeyToGroup( $namespace, $key ) {
+ $groups = self::messageKeyToGroups( $namespace, $key );
+
+ return count( $groups ) ? $groups[0] : null;
+ }
+
+ /**
+ * Returns the all the groups message belongs to.
+ * @param int $namespace
+ * @param string $key
+ * @return string[] Possibly empty list of group ids.
+ */
+ public static function messageKeyToGroups( $namespace, $key ) {
+ $mi = MessageIndex::singleton()->retrieve();
+ $normkey = self::normaliseKey( $namespace, $key );
+
+ if ( isset( $mi[$normkey] ) ) {
+ return (array)$mi[$normkey];
+ } else {
+ return array();
+ }
+ }
+
+ /**
+ * Converts page name and namespace to message index format.
+ * @param int $namespace
+ * @param string $key
+ * @return string
+ */
+ public static function normaliseKey( $namespace, $key ) {
+ $key = lcfirst( $key );
+
+ return strtr( "$namespace:$key", " ", "_" );
+ }
+
+ /**
+ * Constructs a fieldset with contents.
+ * @param string $legend Raw html.
+ * @param string $contents Raw html.
+ * @param array $attributes Html attributes for the fieldset.
+ * @return string Html.
+ */
+ public static function fieldset( $legend, $contents, $attributes = array() ) {
+ return Xml::openElement( 'fieldset', $attributes ) .
+ Xml::tags( 'legend', null, $legend ) . $contents .
+ Xml::closeElement( 'fieldset' );
+ }
+
+ /**
+ * Escapes the message, and does some mangling to whitespace, so that it is
+ * preserved when outputted as-is to html page. Line feeds are converted to
+ * \<br /> and occurrences of leading and trailing and multiple consecutive
+ * spaces to non-breaking spaces.
+ *
+ * This is also implemented in JavaScript in ext.translate.quickedit.
+ *
+ * @param string $msg Plain text string.
+ * @return string Text string that is ready for outputting.
+ */
+ public static function convertWhiteSpaceToHTML( $msg ) {
+ $msg = htmlspecialchars( $msg );
+ $msg = preg_replace( '/^ /m', '&#160;', $msg );
+ $msg = preg_replace( '/ $/m', '&#160;', $msg );
+ $msg = preg_replace( '/ /', '&#160; ', $msg );
+ $msg = str_replace( "\n", '<br />', $msg );
+
+ return $msg;
+ }
+
+ /**
+ * Construct the web address to given asset.
+ * @param string $path Path to the resource relative to extensions root directory.
+ * @return string Full or partial web path.
+ */
+ public static function assetPath( $path ) {
+ global $wgExtensionAssetsPath;
+
+ return "$wgExtensionAssetsPath/Translate/$path";
+ }
+
+ /**
+ * Gets the path for cache files
+ * @param string $filename
+ * @return string Full path.
+ * @throws MWException If cache directory is not configured.
+ */
+ public static function cacheFile( $filename ) {
+ global $wgTranslateCacheDirectory, $wgCacheDirectory;
+
+ if ( $wgTranslateCacheDirectory !== false ) {
+ $dir = $wgTranslateCacheDirectory;
+ } elseif ( $wgCacheDirectory !== false ) {
+ $dir = $wgCacheDirectory;
+ } else {
+ throw new MWException( "\$wgCacheDirectory must be configured" );
+ }
+
+ return "$dir/$filename";
+ }
+
+ /**
+ * Adds help link with an icon to upper right corner.
+ * @param OutputPage $out
+ * @param string $to
+ * @param bool $overrideBaseUrl
+ * @since 2012-01-12
+ */
+ public static function addSpecialHelpLink( OutputPage $out, $to, $overrideBaseUrl = false ) {
+ $out->addModuleStyles( 'ext.translate.helplink' );
+ $text = wfMessage( 'translate-gethelp' )->escaped();
+
+ if ( $overrideBaseUrl ) {
+ $helpUrl = $to;
+ } else {
+ $helpUrl = "//www.mediawiki.org/wiki/Special:MyLanguage/$to";
+ }
+
+ $link = Html::rawElement(
+ 'a',
+ array(
+ 'href' => $helpUrl,
+ 'target' => '_blank',
+ 'class' => 'mw-translate-helplink',
+ ),
+ $text
+ );
+
+ if ( method_exists( $out, 'addIndicators' ) ) {
+ $out->addIndicators( array( 'translate-help' => $link ) );
+ } else {
+ $wrapper = Html::rawElement( 'div', array( 'class' => 'mw-translate-helplink-wrapper' ), $link );
+ $out->addHtml( $wrapper );
+ }
+ }
+
+ /**
+ * Convenience function to get API query string for retrieving a token.
+ * @param string $token
+ * @return string
+ * @since 2012-05-03
+ */
+ public static function getTokenAction( $token ) {
+ return "action=tokens&type=$token";
+ }
+
+ /**
+ * Returns a random string that can be used as placeholder in strings.
+ * @return string
+ * @since 2012-07-31
+ */
+ public static function getPlaceholder() {
+ static $i = 0;
+
+ return "\x7fUNIQ" . dechex( mt_rand( 0, 0x7fffffff ) ) .
+ dechex( mt_rand( 0, 0x7fffffff ) ) . '-' . $i++;
+ }
+
+ /**
+ * Get URLs for icons if available.
+ * @param MessageGroup $g
+ * @param int $size Length of the edge of a bounding box to fit the icon.
+ * @return null|array
+ * @since 2013-04-01
+ */
+ public static function getIcon( MessageGroup $g, $size ) {
+ $icon = $g->getIcon();
+ if ( substr( $icon, 0, 7 ) !== 'wiki://' ) {
+ return null;
+ }
+
+ $formats = array();
+
+ $filename = substr( $icon, 7 );
+ $file = wfFindFile( $filename );
+ if ( !$file ) {
+ wfWarn( "Unknown message group icon file $icon" );
+
+ return null;
+ }
+
+ if ( $file->isVectorized() ) {
+ $formats['vector'] = $file->getFullUrl();
+ }
+
+ $formats['raster'] = $file->createThumb( $size, $size );
+
+ return $formats;
+ }
+
+ /**
+ * Parses list of language codes to an array.
+ * @param string $codes Comma separated list of language codes. "*" for all.
+ * @return string[] Language codes.
+ */
+ public static function parseLanguageCodes( $codes ) {
+ $langs = array_map( 'trim', explode( ',', $codes ) );
+ if ( $langs[0] === '*' ) {
+ $languages = Language::fetchLanguageNames();
+ ksort( $languages );
+ $langs = array_keys( $languages );
+ }
+
+ return $langs;
+ }
+}
diff --git a/MLEB/Translate/api/ApiAggregateGroups.php b/MLEB/Translate/api/ApiAggregateGroups.php
new file mode 100644
index 00000000..f3c30548
--- /dev/null
+++ b/MLEB/Translate/api/ApiAggregateGroups.php
@@ -0,0 +1,305 @@
+<?php
+/**
+ * API module for managing aggregate message groups
+ * @file
+ * @author Santhosh Thottingal
+ * @author Niklas Laxström
+ * @copyright Copyright © 2012-2013, Santhosh Thottingal
+ * @license GPL-2.0+
+ */
+
+/**
+ * API module for managing aggregate message groups
+ * Only supports aggregate message groups defined inside the wiki.
+ * Aggregate message group defined in YAML configuration cannot be altered.
+ *
+ * @ingroup API TranslateAPI
+ */
+class ApiAggregateGroups extends ApiBase {
+ protected static $right = 'translate-manage';
+ protected static $salt = 'translate-manage';
+
+ public function execute() {
+ if ( !$this->getUser()->isAllowed( self::$right ) ) {
+ $this->dieUsage( 'Permission denied', 'permissiondenied' );
+ }
+
+ $params = $this->extractRequestParams();
+ $action = $params['do'];
+ $output = array();
+ if ( $action === 'associate' || $action === 'dissociate' ) {
+ // Group is mandatory only for these two actions
+ if ( !isset( $params['group'] ) ) {
+ $this->dieUsageMsg( array( 'missingparam', 'group' ) );
+ }
+ if ( !isset( $params['aggregategroup'] ) ) {
+ $this->dieUsageMsg( array( 'missingparam', 'aggregategroup' ) );
+ }
+ $aggregateGroup = $params['aggregategroup'];
+ $subgroups = TranslateMetadata::getSubgroups( $aggregateGroup );
+ if ( count( $subgroups ) === 0 ) {
+ // For newly created groups the subgroups value might be empty,
+ // but check that.
+ if ( TranslateMetadata::get( $aggregateGroup, 'name' ) === false ) {
+ $this->dieUsage( 'Invalid aggregate message group', 'invalidaggregategroup' );
+ }
+ $subgroups = array();
+ }
+
+ $subgroupId = $params['group'];
+ $group = MessageGroups::getGroup( $subgroupId );
+
+ // Add or remove from the list
+ if ( $action === 'associate' ) {
+ if ( !$group instanceof WikiPageMessageGroup ) {
+ $this->dieUsage( 'Group does not exist or invalid', 'invalidgroup' );
+ }
+
+ $subgroups[] = $subgroupId;
+ $subgroups = array_unique( $subgroups );
+ } elseif ( $action === 'dissociate' ) {
+ // Allow removal of non-existing groups
+ $subgroups = array_flip( $subgroups );
+ unset( $subgroups[$subgroupId] );
+ $subgroups = array_flip( $subgroups );
+ }
+
+ TranslateMetadata::setSubgroups( $aggregateGroup, $subgroups );
+
+ $logParams = array(
+ 'aggregategroup' => TranslateMetadata::get( $aggregateGroup, 'name' ),
+ 'aggregategroup-id' => $aggregateGroup,
+ );
+
+ /* Note that to allow removing no longer existing groups from
+ * aggregate message groups, the message group object $group
+ * might not always be available. In this case we need to fake
+ * some title. */
+ $title = $group ?
+ $group->getTitle() :
+ Title::newFromText( "Special:Translate/$subgroupId" );
+
+ $entry = new ManualLogEntry( 'pagetranslation', $action );
+ $entry->setPerformer( $this->getUser() );
+ $entry->setTarget( $title );
+ // @todo
+ // $entry->setComment( $comment );
+ $entry->setParameters( $logParams );
+
+ $logid = $entry->insert();
+ $entry->publish( $logid );
+ } elseif ( $action === 'remove' ) {
+ if ( !isset( $params['aggregategroup'] ) ) {
+ $this->dieUsageMsg( array( 'missingparam', 'aggregategroup' ) );
+ }
+ TranslateMetadata::deleteGroup( $params['aggregategroup'] );
+ // @todo Logging
+
+ } elseif ( $action === 'add' ) {
+ if ( !isset( $params['groupname'] ) ) {
+ $this->dieUsageMsg( array( 'missingparam', 'groupname' ) );
+ }
+ $name = trim( $params['groupname'] );
+ if ( strlen( $name ) === 0 ) {
+ $this->dieUsage( 'Invalid aggregate message group name', 'invalidaggregategroupname' );
+ }
+
+ if ( !isset( $params['groupdescription'] ) ) {
+ $this->dieUsageMsg( array( 'missingparam', 'groupdescription' ) );
+ }
+ $desc = trim( $params['groupdescription'] );
+
+ $aggregateGroupId = self::generateAggregateGroupId( $name );
+
+ // Throw error if group already exists
+ $nameExists = MessageGroups::labelExists( $name );
+ if ( $nameExists ) {
+ $this->dieUsage( 'Message group already exists', 'duplicateaggregategroup' );
+ }
+
+ // ID already exists- Generate a new ID by adding a number to it.
+ $idExists = MessageGroups::getGroup( $aggregateGroupId );
+ if ( $idExists ) {
+ $i = 1;
+ while( $idExists ) {
+ $tempId = $aggregateGroupId . "-" . $i;
+ $idExists = MessageGroups::getGroup( $tempId );
+ $i++;
+ }
+ $aggregateGroupId = $tempId;
+ }
+
+ TranslateMetadata::set( $aggregateGroupId, 'name', $name );
+ TranslateMetadata::set( $aggregateGroupId, 'description', $desc );
+ TranslateMetadata::setSubgroups( $aggregateGroupId, array() );
+
+ // Once new aggregate group added, we need to show all the pages that can be added to that.
+ $output['groups'] = self::getAllPages();
+ $output['aggregategroupId'] = $aggregateGroupId;
+ // @todo Logging
+ } elseif ( $action === 'update' ) {
+ if ( !isset( $params['groupname'] ) ) {
+ $this->dieUsageMsg( array( 'missingparam', 'groupname' ) );
+ }
+ $name = trim( $params['groupname'] );
+ if ( strlen( $name ) === 0 ) {
+ $this->dieUsage( 'Invalid aggregate message group name', 'invalidaggregategroupname' );
+ }
+ $desc = trim( $params['groupdescription'] );
+ $aggregateGroupId = $params['aggregategroup'];
+
+ $oldName = TranslateMetadata::get( $aggregateGroupId, 'name' );
+ $oldDesc = TranslateMetadata::get( $aggregateGroupId, 'description' );
+
+ // Error if the label exists already
+ $exists = MessageGroups::labelExists( $name );
+ if ( $exists && $oldName !== $name ) {
+ $this->dieUsage( 'Message group name already exists', 'duplicateaggregategroup' );
+ }
+
+ if ( $oldName === $name && $oldDesc === $desc ) {
+ $this->dieUsage( 'Invalid update', 'invalidupdate' );
+ }
+ TranslateMetadata::set( $aggregateGroupId, 'name', $name );
+ TranslateMetadata::set( $aggregateGroupId, 'description', $desc );
+ }
+
+ // If we got this far, nothing has failed
+ $output['result'] = 'ok';
+ $this->getResult()->addValue( null, $this->getModuleName(), $output );
+ // Cache needs to be cleared after any changes to groups
+ MessageGroups::clearCache();
+ MessageIndexRebuildJob::newJob()->insert();
+ }
+
+ protected function generateAggregateGroupId( $aggregateGroupName, $prefix = "agg-" ) {
+ // The database field has maximum limit of 200 bytes
+ if ( strlen( $aggregateGroupName ) + strlen( $prefix ) >= 200 ) {
+ return $prefix . substr( sha1( $aggregateGroupName ), 0, 5 );
+ } else {
+ $pattern = '/[\x00-\x1f\x23\x27\x2c\x2e\x3c\x3e\x5b\x5d\x7b\x7c\x7d\x7f\s]+/i';
+ return $prefix . preg_replace( $pattern, '_', $aggregateGroupName );
+ }
+ }
+
+ public function isWriteMode() {
+ return true;
+ }
+
+ public function getTokenSalt() {
+ return self::$salt;
+ }
+
+ public function needsToken() {
+ return 'csrf';
+ }
+
+ // This function maintains backwards compatibility with self::getToken()
+ // below. If salt is removed from self::getToken() and nothing else (e.g.
+ // JS) generates the token directly, this could probably be removed.
+ protected function getWebUITokenSalt( array $params ) {
+ return self::$salt;
+ }
+
+ public function getAllowedParams() {
+ return array(
+ 'do' => array(
+ ApiBase::PARAM_TYPE => array( 'associate', 'dissociate', 'remove', 'add', 'update' ),
+ ApiBase::PARAM_REQUIRED => true,
+ ),
+ 'aggregategroup' => array(
+ ApiBase::PARAM_TYPE => 'string',
+ ),
+ 'group' => array(
+ // Not providing list of values, to allow dissociation of unknown groups
+ ApiBase::PARAM_TYPE => 'string',
+ ),
+ 'groupname' => array(
+ ApiBase::PARAM_TYPE => 'string',
+ ),
+ 'groupdescription' => array(
+ ApiBase::PARAM_TYPE => 'string',
+ ),
+ 'token' => array(
+ ApiBase::PARAM_TYPE => 'string',
+ ApiBase::PARAM_REQUIRED => false,
+ ),
+ );
+ }
+
+ /**
+ * @deprecated since MediaWiki core 1.25
+ */
+ public function getParamDescription() {
+ $action = TranslateUtils::getTokenAction( 'aggregategroups' );
+
+ return array(
+ 'do' => 'What to do with aggregate message group',
+ 'group' => 'Message group id',
+ 'aggregategroup' => 'Aggregate message group id',
+ 'groupname' => 'Aggregate message group name',
+ 'groupdescription' => 'Aggregate message group description',
+ 'token' => "A token previously acquired with $action",
+ );
+ }
+
+ /**
+ * @deprecated since MediaWiki core 1.25
+ */
+ public function getDescription() {
+ return 'Manage aggregate message groups. You can add and remove aggregate message' .
+ 'groups and associate or dissociate message groups from them (one at a time).';
+ }
+
+ /**
+ * @deprecated since MediaWiki core 1.25
+ */
+ public function getExamples() {
+ return array(
+ "api.php?action=aggregategroups&do=associate&group=groupId&aggregategroup=aggregateGroupId",
+ );
+ }
+
+ /**
+ * @see ApiBase::getExamplesMessages()
+ */
+ protected function getExamplesMessages() {
+ return array(
+ 'action=aggregategroups&do=associate&group=groupId&aggregategroup=aggregateGroupId'
+ => 'apihelp-aggregategroups-example-1',
+ );
+ }
+
+ public static function getAllPages() {
+ $groups = MessageGroups::getAllGroups();
+ $pages = array();
+ foreach ( $groups as $group ) {
+ if ( $group instanceof WikiPageMessageGroup ) {
+ $pages[$group->getId()] = $group->getTitle()->getPrefixedText();
+ }
+ }
+
+ return $pages;
+ }
+
+ // These two functions implement pre-1.24 token fetching via the
+ // ApiTokensGetTokenTypes hook, kept for backwards compatibility.
+ public static function getToken() {
+ $user = RequestContext::getMain()->getUser();
+ if ( !$user->isAllowed( self::$right ) ) {
+ return false;
+ }
+
+ return $user->getEditToken( self::$salt );
+ }
+
+ public static function injectTokenFunction( &$list ) {
+ $list['aggregategroups'] = array( __CLASS__, 'getToken' );
+
+ return true; // Hooks must return bool
+ }
+
+ public static function getRight() {
+ return self::$right;
+ }
+}
diff --git a/MLEB/Translate/api/ApiGroupReview.php b/MLEB/Translate/api/ApiGroupReview.php
new file mode 100644
index 00000000..7fa3cf1e
--- /dev/null
+++ b/MLEB/Translate/api/ApiGroupReview.php
@@ -0,0 +1,227 @@
+<?php
+/**
+ * API module for switching workflow states for message groups
+ * @file
+ * @author Niklas Laxström
+ * @copyright Copyright © 2011, Niklas Laxström
+ * @license GPL-2.0+
+ */
+
+/**
+ * API module for switching workflow states for message groups
+ *
+ * @ingroup API TranslateAPI
+ */
+class ApiGroupReview extends ApiBase {
+ protected static $right = 'translate-groupreview';
+ protected static $salt = 'translate-groupreview';
+
+ public function execute() {
+ $user = $this->getUser();
+ $requestParams = $this->extractRequestParams();
+
+ $group = MessageGroups::getGroup( $requestParams['group'] );
+ $code = $requestParams['language'];
+
+ if ( !$group || MessageGroups::isDynamic( $group ) ) {
+ $this->dieUsageMsg( array( 'missingparam', 'group' ) );
+ }
+ $stateConfig = $group->getMessageGroupStates()->getStates();
+ if ( !$stateConfig ) {
+ $this->dieUsage( 'Message group review not in use', 'disabled' );
+ }
+
+ if ( !$user->isAllowed( self::$right ) ) {
+ $this->dieUsage( 'Permission denied', 'permissiondenied' );
+ }
+
+ if ( $user->isBlocked() ) {
+ $this->dieUsage( 'You have been blocked', 'blocked' );
+ }
+
+ $requestParams = $this->extractRequestParams();
+
+ $languages = Language::fetchLanguageNames();
+ if ( !isset( $languages[$code] ) ) {
+ $this->dieUsageMsg( array( 'missingparam', 'language' ) );
+ }
+
+ $targetState = $requestParams['state'];
+ if ( !isset( $stateConfig[$targetState] ) ) {
+ $this->dieUsage( 'The requested state is invalid', 'invalidstate' );
+ }
+
+ if ( is_array( $stateConfig[$targetState] )
+ && isset( $stateConfig[$targetState]['right'] )
+ && !$user->isAllowed( $stateConfig[$targetState]['right'] )
+ ) {
+ $this->dieUsage( 'Permission denied', 'permissiondenied' );
+ }
+
+ self::changeState( $group, $code, $targetState, $user );
+
+ $output = array( 'review' => array(
+ 'group' => $group->getId(),
+ 'language' => $code,
+ 'state' => $targetState,
+ ) );
+
+ $this->getResult()->addValue( null, $this->getModuleName(), $output );
+ }
+
+ public static function getState( MessageGroup $group, $code ) {
+ $dbw = wfGetDB( DB_MASTER );
+ $table = 'translate_groupreviews';
+
+ $field = 'tgr_state';
+ $conds = array(
+ 'tgr_group' => $group->getId(),
+ 'tgr_lang' => $code
+ );
+
+ return $dbw->selectField( $table, $field, $conds, __METHOD__ );
+ }
+
+ public static function changeState( MessageGroup $group, $code, $newState, User $user ) {
+ $currentState = self::getState( $group, $code );
+ if ( $currentState === $newState ) {
+ return false;
+ }
+
+ $table = 'translate_groupreviews';
+ $index = array( 'tgr_group', 'tgr_language' );
+ $row = array(
+ 'tgr_group' => $group->getId(),
+ 'tgr_lang' => $code,
+ 'tgr_state' => $newState,
+ );
+
+ $dbw = wfGetDB( DB_MASTER );
+ $dbw->replace( $table, array( $index ), $row, __METHOD__ );
+
+ $entry = new ManualLogEntry( 'translationreview', 'group' );
+ $entry->setPerformer( $user );
+ $entry->setTarget( SpecialPage::getTitleFor( 'Translate', $group->getId() ) );
+ // @todo
+ // $entry->setComment( $comment );
+ $entry->setParameters( array(
+ '4::language' => $code,
+ '5::group-label' => $group->getLabel(),
+ '6::old-state' => $currentState,
+ '7::new-state' => $newState,
+ ) );
+
+ $logid = $entry->insert();
+ $entry->publish( $logid );
+
+ wfRunHooks( 'TranslateEventMessageGroupStateChange',
+ array( $group, $code, $currentState, $newState ) );
+
+ return true;
+ }
+
+ public function isWriteMode() {
+ return true;
+ }
+
+ public function needsToken() {
+ return 'csrf';
+ }
+
+ // This function exists for backwards compatibility with MediaWiki before
+ // 1.24
+ public function getTokenSalt() {
+ return self::$salt;
+ }
+
+ // This function maintains backwards compatibility with self::getToken()
+ // below. If salt is removed from self::getToken() and nothing else (e.g.
+ // JS) generates the token directly, this could probably be removed.
+ protected function getWebUITokenSalt( array $params ) {
+ return self::$salt;
+ }
+
+ public function getAllowedParams() {
+ return array(
+ 'group' => array(
+ ApiBase::PARAM_TYPE => 'string',
+ ApiBase::PARAM_REQUIRED => true,
+ ),
+ 'language' => array(
+ ApiBase::PARAM_TYPE => 'string',
+ ApiBase::PARAM_DFLT => 'en',
+ ),
+ 'state' => array(
+ ApiBase::PARAM_TYPE => 'string',
+ ApiBase::PARAM_REQUIRED => true,
+ ),
+ 'token' => array(
+ ApiBase::PARAM_TYPE => 'string',
+ ApiBase::PARAM_REQUIRED => true,
+ ),
+ );
+ }
+
+ /**
+ * @deprecated since MediaWiki core 1.25
+ */
+ public function getParamDescription() {
+ $action = TranslateUtils::getTokenAction( 'groupreview' );
+
+ return array(
+ 'group' => 'Message group',
+ 'language' => 'Language code',
+ 'state' => 'The new state for the group',
+ 'token' => "A token previously acquired with $action",
+ );
+ }
+
+ /**
+ * @deprecated since MediaWiki core 1.25
+ */
+ public function getDescription() {
+ return 'Set message group workflow states';
+ }
+
+ /**
+ * @deprecated since MediaWiki core 1.25
+ */
+ public function getExamples() {
+ $group = 'page-Example';
+
+ return array(
+ "api.php?action=groupreview&group=$group&language=de&state=ready&token=foo",
+ );
+ }
+
+ /**
+ * @see ApiBase::getExamplesMessages()
+ */
+ protected function getExamplesMessages() {
+ return array(
+ 'action=groupreview&group=page-Example&language=de&state=ready&token=foo'
+ => 'apihelp-groupreview-example-1',
+ );
+ }
+
+ // These two functions implement pre-1.24 token fetching via the
+ // ApiTokensGetTokenTypes hook, kept for backwards compatibility.
+ public static function getToken() {
+ $user = RequestContext::getMain()->getUser();
+ if ( !$user->isAllowed( self::$right ) ) {
+ return false;
+ }
+
+ return $user->getEditToken( self::$salt );
+ }
+
+ public static function injectTokenFunction( &$list ) {
+ $list['groupreview'] = array( __CLASS__, 'getToken' );
+
+ return true; // Hooks must return bool
+ }
+
+ public static function getRight() {
+ return self::$right;
+ }
+}
diff --git a/MLEB/Translate/api/ApiHardMessages.php b/MLEB/Translate/api/ApiHardMessages.php
new file mode 100644
index 00000000..f37279ca
--- /dev/null
+++ b/MLEB/Translate/api/ApiHardMessages.php
@@ -0,0 +1,193 @@
+<?php
+/**
+ * API module for marking translations hard
+ * @file
+ * @author Santhosh Thottingal
+ * @copyright Copyright © 2012-2013, Santhosh Thottingal
+ * @license GPL-2.0+
+ */
+
+/**
+ * API module for marking translations hard
+ * Records the skip count for the message.
+ * Assumption: the more the translators skip a message, the more hard it is to translate.
+ *
+ * @since 2012-12-20
+ * @ingroup API TranslateAPI
+ */
+class ApiHardMessages extends ApiBase {
+ protected static $right = 'translate';
+
+ public function execute() {
+ if ( !$this->getUser()->isAllowed( self::$right ) ) {
+ $this->dieUsage( 'Permission denied', 'permissiondenied' );
+ }
+
+ $params = $this->extractRequestParams();
+ $title = Title::newFromText( $params['title'] );
+
+ if ( !$title ) {
+ $this->dieUsage( 'Invalid title', 'invalidtitle' );
+ }
+
+ $handle = new MessageHandle( $title );
+ if ( !$handle->isValid() ) {
+ $this->dieUsage( 'Invalid title', 'invalidtitle' );
+ }
+
+ $baseTitle = Title::makeTitle( $title->getNamespace(),
+ $handle->getKey() . '/' . $handle->getGroup()->getSourceLanguage() );
+ $revision = Revision::newFromTitle( $baseTitle );
+
+ if ( !$revision ) {
+ // This can fail. See https://bugzilla.wikimedia.org/show_bug.cgi?id=43286
+ $this->dieUsage( 'Invalid revision', 'invalidrevision' );
+ }
+
+ $count = self::getHardCount( $revision ) + 1;
+ self::doMarkHard( $revision, $count );
+
+ $output = array(
+ 'title' => $baseTitle->getPrefixedText(),
+ 'pageid' => $revision->getPage(),
+ 'revision' => $revision->getId(),
+ 'count' => $count
+ );
+
+ $this->getResult()->addValue( null, $this->getModuleName(), $output );
+ }
+
+ /**
+ * Mark the message skip count
+ * @param Revision $revision
+ * @param int $count
+ */
+ public static function doMarkHard( Revision $revision, $count ) {
+ $dbw = wfGetDB( DB_MASTER );
+ $table = 'revtag';
+
+ if ( $count === 1 ) {
+ $row = array(
+ 'rt_type' => 'hard',
+ 'rt_page' => $revision->getPage(),
+ 'rt_revision' => $revision->getId(),
+ 'rt_value' => $count
+ );
+ $options = array( 'IGNORE' );
+ $dbw->insert( $table, $row, __METHOD__, $options );
+ } else {
+ $dbw->update( $table,
+ array(
+ 'rt_value' => $count
+ ),
+ array(
+ 'rt_type' => 'hard',
+ 'rt_page' => $revision->getPage(),
+ ),
+ __METHOD__
+ );
+ }
+ }
+
+ /**
+ * Get the number of times the message was skipped
+ * @param Revision $revision
+ *
+ * @return int How many times the message was skipped
+ */
+ public static function getHardCount( Revision $revision ) {
+ $dbr = wfGetDB( DB_SLAVE );
+ $res = $dbr->selectField(
+ 'revtag',
+ 'rt_value',
+ array( 'rt_type = "hard"',
+ 'rt_page = ' . $revision->getPage(),
+ ),
+ __METHOD__
+ );
+
+ $count = intval( $res );
+
+ return $count;
+ }
+
+ public function isWriteMode() {
+ return true;
+ }
+
+ public function needsToken() {
+ return 'csrf';
+ }
+
+ public function getAllowedParams() {
+ return array(
+ 'title' => array(
+ ApiBase::PARAM_TYPE => 'string',
+ ApiBase::PARAM_REQUIRED => true,
+ ),
+ 'token' => array(
+ ApiBase::PARAM_TYPE => 'string',
+ ApiBase::PARAM_REQUIRED => true,
+ ),
+ );
+ }
+
+ /**
+ * @deprecated since MediaWiki core 1.25
+ */
+ public function getParamDescription() {
+ $action = TranslateUtils::getTokenAction( 'hardmessages' );
+
+ return array(
+ 'title' => 'The title of the message to mark hard',
+ 'token' => "A token previously acquired with $action",
+ );
+ }
+
+ /**
+ * @deprecated since MediaWiki core 1.25
+ */
+ public function getDescription() {
+ return 'Mark translations hard';
+ }
+
+ /**
+ * @deprecated since MediaWiki core 1.25
+ */
+ public function getExamples() {
+ return array(
+ 'api.php?action=hardmessages&title=SampleTitle&token=foo',
+ );
+ }
+
+ /**
+ * @see ApiBase::getExamplesMessages()
+ */
+ protected function getExamplesMessages() {
+ return array(
+ 'action=hardmessages&title=SampleTitle&token=foo'
+ => 'apihelp-hardmessages-example-1',
+ );
+ }
+
+ // These two functions implement pre-1.24 token fetching via the
+ // ApiTokensGetTokenTypes hook, kept for backwards compatibility.
+ public static function getToken() {
+ $user = RequestContext::getMain()->getUser();
+ if ( !$user->isAllowed( self::$right ) ) {
+ return false;
+ }
+
+ return $user->getEditToken();
+ }
+
+ public static function injectTokenFunction( &$list ) {
+ $list['hardmessage'] = array( __CLASS__, 'getToken' );
+
+ return true;
+ }
+
+ public static function getRight() {
+ return self::$right;
+ }
+}
diff --git a/MLEB/Translate/api/ApiQueryLanguageStats.php b/MLEB/Translate/api/ApiQueryLanguageStats.php
new file mode 100644
index 00000000..220b281f
--- /dev/null
+++ b/MLEB/Translate/api/ApiQueryLanguageStats.php
@@ -0,0 +1,80 @@
+<?php
+/**
+ * Api module for language group stats.
+ *
+ * @file
+ * @copyright Copyright © 2012-2013, Niklas Laxström
+ * @license GPL-2.0+
+ */
+
+/**
+ * Api module for querying language stats.
+ *
+ * @ingroup API TranslateAPI
+ * @since 2012-11-30
+ */
+class ApiQueryLanguageStats extends ApiStatsQuery {
+ public function __construct( $query, $moduleName ) {
+ parent::__construct( $query, $moduleName, 'ls' );
+ }
+
+ protected function getData() {
+ $params = $this->extractRequestParams();
+
+ return MessageGroupStats::forLanguage( $params['language'] );
+ }
+
+ protected function makeItem( $item, $stats ) {
+ $data = parent::makeItem( $item, $stats );
+ $data['group'] = $item;
+
+ return $data;
+ }
+
+ public function getAllowedParams() {
+ $params = parent::getAllowedParams();
+ $params['language'] = array(
+ ApiBase::PARAM_TYPE => 'string',
+ ApiBase::PARAM_REQUIRED => true,
+ );
+
+ return $params;
+ }
+
+ /**
+ * @deprecated since MediaWiki core 1.25
+ */
+ public function getParamDescription() {
+ $desc = parent::getParamDescription();
+ $desc['language'] = 'Language code';
+
+ return $desc;
+ }
+
+ /**
+ * @deprecated since MediaWiki core 1.25
+ */
+ public function getDescription() {
+ return 'Query language stats';
+ }
+
+ /**
+ * @deprecated since MediaWiki core 1.25
+ */
+ protected function getExamples() {
+ return array(
+ "api.php?action=query&meta=languagestats&lslanguage=fi List of translation " .
+ "completion statistics for language fi",
+ );
+ }
+
+ /**
+ * @see ApiBase::getExamplesMessages()
+ */
+ protected function getExamplesMessages() {
+ return array(
+ 'action=query&meta=languagestats&lslanguage=fi'
+ => 'apihelp-query+languagestats-example-1',
+ );
+ }
+}
diff --git a/MLEB/Translate/api/ApiQueryMessageCollection.php b/MLEB/Translate/api/ApiQueryMessageCollection.php
new file mode 100644
index 00000000..d8c2315e
--- /dev/null
+++ b/MLEB/Translate/api/ApiQueryMessageCollection.php
@@ -0,0 +1,319 @@
+<?php
+/**
+ * Api module for querying MessageCollection.
+ *
+ * @file
+ * @author Niklas Laxström
+ * @copyright Copyright © 2010-2013, Niklas Laxström
+ * @license GPL-2.0+
+ */
+
+/**
+ * Api module for querying MessageCollection.
+ *
+ * @ingroup API TranslateAPI
+ */
+class ApiQueryMessageCollection extends ApiQueryGeneratorBase {
+
+ public function __construct( $query, $moduleName ) {
+ parent::__construct( $query, $moduleName, 'mc' );
+ }
+
+ public function execute() {
+ $this->run();
+ }
+
+ public function getCacheMode( $params ) {
+ return 'public';
+ }
+
+ public function executeGenerator( $resultPageSet ) {
+ $this->run( $resultPageSet );
+ }
+
+ /**
+ * @param $resultPageSet ApiPageSet
+ */
+ private function run( $resultPageSet = null ) {
+ $params = $this->extractRequestParams();
+
+ $group = MessageGroups::getGroup( $params['group'] );
+ if ( !$group ) {
+ $this->dieUsageMsg( array( 'missingparam', 'mcgroup' ) );
+ }
+
+ if ( MessageGroups::isDynamic( $group ) ) {
+ /**
+ * @var RecentMessageGroup $group
+ */
+ $group->setLanguage( $params['language'] );
+ }
+
+ $result = $this->getResult();
+
+ $languages = $group->getTranslatableLanguages();
+
+ if ( $languages !== null && !isset( $languages[$params['language']] ) ) {
+ $this->dieUsage(
+ 'Translation to this language is disabled',
+ 'translate-language-disabled'
+ );
+ }
+
+ $messages = $group->initCollection( $params['language'] );
+
+ foreach ( $params['filter'] as $filter ) {
+ $value = null;
+ if ( strpos( $filter, ':' ) !== false ) {
+ list( $filter, $value ) = explode( ':', $filter, 2 );
+ }
+ /* The filtering params here are swapped wrt MessageCollection.
+ * There (fuzzy) means do not show fuzzy, which is the same as !fuzzy
+ * here and fuzzy here means (fuzzy, false) there. */
+ try {
+ if ( $filter[0] === '!' ) {
+ $messages->filter( substr( $filter, 1 ), true, $value );
+ } else {
+ $messages->filter( $filter, false, $value );
+ }
+ } catch ( MWException $e) {
+ $this->dieUsage( $e->getMessage(), 'invalidfilter');
+ }
+ }
+
+ $resultSize = count( $messages );
+ $offsets = $messages->slice( $params['offset'], $params['limit'] );
+ $batchSize = count( $messages );
+ list( /*$backwardsOffset*/, $forwardsOffset, $startOffset ) = $offsets;
+
+ $result->addValue(
+ array( 'query', 'metadata' ),
+ 'state',
+ self::getWorkflowState( $group->getId(), $params['language'] )
+ );
+
+ $result->addValue( array( 'query', 'metadata' ), 'resultsize', $resultSize );
+ $result->addValue(
+ array( 'query', 'metadata' ),
+ 'remaining',
+ $resultSize - $startOffset - $batchSize
+ );
+
+ $messages->loadTranslations();
+
+ $pages = array();
+
+ if ( $forwardsOffset !== false ) {
+ $this->setContinueEnumParameter( 'offset', $forwardsOffset );
+ }
+
+ $props = array_flip( $params['prop'] );
+
+ /** @var Title $title */
+ foreach ( $messages->keys() as $mkey => $title ) {
+ if ( is_null( $resultPageSet ) ) {
+ $data = $this->extractMessageData( $result, $props, $messages[$mkey] );
+ $data['title'] = $title->getPrefixedText();
+
+ $result->addValue( array( 'query', $this->getModuleName() ), null, $data );
+ } else {
+ $pages[] = $title;
+ }
+ }
+
+ if ( is_null( $resultPageSet ) ) {
+ $result->setIndexedTagName_internal(
+ array( 'query', $this->getModuleName() ),
+ 'message'
+ );
+ } else {
+ $resultPageSet->populateFromTitles( $pages );
+ }
+ }
+
+ /**
+ * @param $result ApiResult
+ * @param $props array
+ * @param $message ThinMessage
+ * @return array
+ */
+ public function extractMessageData( $result, $props, $message ) {
+ $data['key'] = $message->key();
+
+ if ( isset( $props['definition'] ) ) {
+ $data['definition'] = $message->definition();
+ }
+ if ( isset( $props['translation'] ) ) {
+ // Remove !!FUZZY!! from translation if present.
+ $translation = $message->translation();
+ if ( $translation !== null ) {
+ $translation = str_replace( TRANSLATE_FUZZY, '', $translation );
+ }
+ $data['translation'] = $translation;
+ }
+ if ( isset( $props['tags'] ) ) {
+ $data['tags'] = $message->getTags();
+ $result->setIndexedTagName( $data['tags'], 'tag' );
+ }
+ // BC
+ if ( isset( $props['revision'] ) ) {
+ $data['revision'] = $message->getProperty( 'revision' );
+ }
+ if ( isset( $props['properties'] ) ) {
+ foreach ( $message->getPropertyNames() as $prop ) {
+ $data['properties'][$prop] = $message->getProperty( $prop );
+ $result->setIndexedTagName_recursive( $data['properties'], 'val' );
+ }
+ }
+
+ return $data;
+ }
+
+ /**
+ * Get the current workflow state for the message group for the given language
+ *
+ * @param string $groupId Group id.
+ * @param string $language Language tag.
+ * @return string|bool State id or false.
+ */
+ protected static function getWorkflowState( $groupId, $language ) {
+ $dbr = wfGetDB( DB_SLAVE );
+
+ return $dbr->selectField(
+ 'translate_groupreviews',
+ 'tgr_state',
+ array(
+ 'tgr_group' => $groupId,
+ 'tgr_lang' => $language
+ ),
+ __METHOD__
+ );
+ }
+
+ public function getAllowedParams() {
+ /** @todo Once support for MediaWiki < 1.25 is dropped, just
+ * use ApiBase::PARAM_HELP_MSG directly
+ */
+ $helpmsg = defined( 'ApiBase::PARAM_HELP_MSG' ) ? ApiBase::PARAM_HELP_MSG : '';
+ return array(
+ 'group' => array(
+ ApiBase::PARAM_TYPE => 'string',
+ ApiBase::PARAM_REQUIRED => true,
+ ),
+ 'language' => array(
+ ApiBase::PARAM_TYPE => 'string',
+ ApiBase::PARAM_DFLT => 'en',
+ ),
+ 'limit' => array(
+ ApiBase::PARAM_DFLT => 500,
+ ApiBase::PARAM_TYPE => 'limit',
+ ApiBase::PARAM_MIN => 1,
+ ApiBase::PARAM_MAX => ApiBase::LIMIT_BIG2,
+ ApiBase::PARAM_MAX2 => ApiBase::LIMIT_BIG2,
+ ),
+ 'offset' => array(
+ ApiBase::PARAM_DFLT => '',
+ ApiBase::PARAM_TYPE => 'string',
+ $helpmsg => 'api-help-param-continue',
+ ),
+ 'filter' => array(
+ ApiBase::PARAM_TYPE => 'string',
+ ApiBase::PARAM_DFLT => '!optional|!ignored',
+ ApiBase::PARAM_ISMULTI => true,
+ ),
+ 'prop' => array(
+ ApiBase::PARAM_TYPE => array(
+ 'definition',
+ 'translation',
+ 'tags',
+ 'revision',
+ 'properties'
+ ),
+ ApiBase::PARAM_DFLT => 'definition|translation',
+ ApiBase::PARAM_ISMULTI => true,
+ $helpmsg => array( 'apihelp-query+messagecollection-param-prop', '!!FUZZY!!' ),
+ ),
+ );
+ }
+
+ /**
+ * @deprecated since MediaWiki core 1.25
+ */
+ public function getParamDescription() {
+ return array(
+ 'group' => 'Message group',
+ 'language' => 'Language code',
+ 'offset' => 'Integer or key offset for start',
+ 'limit' => 'How many messages to show (after filtering)',
+ 'prop' => array(
+ 'Which properties to get',
+ 'definition - message definition',
+ 'translation - current translation (without !!FUZZY!! string if any, ' .
+ 'use the tags to check for outdated or broken translations)',
+ 'tags - message tags, like optional, ignored and fuzzy',
+ 'properties - message properties, like status, revision, ' .
+ 'last-translator. Can vary between messages.',
+ 'revision - deprecated! use properties!',
+ ),
+ 'filter' => array(
+ 'Message collection filters. Use ! to negate condition. For example ' .
+ '!fuzzy means list only all non-fuzzy messages. Filters are ' .
+ 'applied in the order given.',
+ 'fuzzy - messages with fuzzy tag',
+ 'optional - messages which should be translated only if ' .
+ 'changes are necessary',
+ 'ignored - messages which are never translated',
+ 'hastranslation - messages which have a translation regardless if it ' .
+ 'is fuzzy or not',
+ 'translated - messages which have a translation which is not fuzzy',
+ 'changed - messages which has been translated or changed since ' .
+ 'last export',
+ 'reviewer:# - messages where given userid # is among reviewers',
+ 'last-translator:# - messages where given userid # is the last translator',
+ ),
+ );
+ }
+
+ /**
+ * @deprecated since MediaWiki core 1.25
+ */
+ public function getDescription() {
+ return 'Query MessageCollection about translations';
+ }
+
+ /**
+ * @deprecated since MediaWiki core 1.25
+ */
+ protected function getExamples() {
+ $group = 'page-Example';
+
+ return array(
+ 'api.php?action=query&meta=siteinfo&siprop=languages List of supported languages',
+ "api.php?action=query&list=messagecollection&mcgroup=$group " .
+ "List of non-optional message definitions for group $group",
+ "api.php?action=query&list=messagecollection&mcgroup=$group&mclanguage=fi&" .
+ "mcprop=definition|translation|tags&mcfilter=optional " .
+ "List of optional messages in Finnish with tags for group $group",
+ "api.php?action=query&generator=messagecollection&gmcgroup=$group" .
+ "&gmclanguage=nl&prop=revisions " .
+ "More information about latest translation revisions for group $group",
+ );
+ }
+
+ /**
+ * @see ApiBase::getExamplesMessages()
+ */
+ protected function getExamplesMessages() {
+ return array(
+ 'action=query&meta=siteinfo&siprop=languages'
+ => 'apihelp-query+messagecollection-example-1',
+ 'action=query&list=messagecollection&mcgroup=page-Example'
+ => 'apihelp-query+messagecollection-example-2',
+ 'action=query&list=messagecollection&mcgroup=page-Example&mclanguage=fi&' .
+ 'mcprop=definition|translation|tags&mcfilter=optional'
+ => 'apihelp-query+messagecollection-example-3',
+ 'action=query&generator=messagecollection&gmcgroup=page-Example&gmclanguage=nl&prop=revisions'
+ => 'apihelp-query+messagecollection-example-4',
+ );
+ }
+}
diff --git a/MLEB/Translate/api/ApiQueryMessageGroupStats.php b/MLEB/Translate/api/ApiQueryMessageGroupStats.php
new file mode 100644
index 00000000..a1059fcb
--- /dev/null
+++ b/MLEB/Translate/api/ApiQueryMessageGroupStats.php
@@ -0,0 +1,90 @@
+<?php
+/**
+ * Api module for querying message group stats.
+ *
+ * @file
+ * @author Tim Gerundt
+ * @copyright Copyright © 2012-2013, Tim Gerundt
+ * @copyright Copyright © 2012-2013, Niklas Laxström
+ * @license GPL-2.0+
+ */
+
+/**
+ * Api module for querying message group stats.
+ *
+ * @ingroup API TranslateAPI
+ */
+class ApiQueryMessageGroupStats extends ApiStatsQuery {
+ public function __construct( $query, $moduleName ) {
+ parent::__construct( $query, $moduleName, 'mgs' );
+ }
+
+ protected function getData() {
+ $params = $this->extractRequestParams();
+ $group = MessageGroups::getGroup( $params['group'] );
+ if ( !$group ) {
+ $this->dieUsageMsg( array( 'missingparam', 'mcgroup' ) );
+ } elseif ( MessageGroups::isDynamic( $group ) ) {
+ $this->dieUsage( 'Dynamic message groups are not supported here', 'invalidparam' );
+ }
+
+ return MessageGroupStats::forGroup( $group->getId() );
+ }
+
+ protected function makeItem( $item, $stats ) {
+ $data = parent::makeItem( $item, $stats );
+ $data['code'] = $item; // For BC
+ $data['language'] = $item;
+
+ return $data;
+ }
+
+ public function getAllowedParams() {
+ $params = parent::getAllowedParams();
+ $params['group'] = array(
+ ApiBase::PARAM_TYPE => 'string',
+ ApiBase::PARAM_REQUIRED => true,
+ );
+
+ return $params;
+ }
+
+ /**
+ * @deprecated since MediaWiki core 1.25
+ */
+ public function getParamDescription() {
+ $desc = parent::getParamDescription();
+ $desc['group'] = 'Message group id';
+
+ return $desc;
+ }
+
+ /**
+ * @deprecated since MediaWiki core 1.25
+ */
+ public function getDescription() {
+ return 'Query message group stats';
+ }
+
+ /**
+ * @deprecated since MediaWiki core 1.25
+ */
+ protected function getExamples() {
+ $group = 'page-Example';
+
+ return array(
+ "api.php?action=query&meta=messagegroupstats&mgsgroup=$group List of " .
+ "translation completion statistics for group $group",
+ );
+ }
+
+ /**
+ * @see ApiBase::getExamplesMessages()
+ */
+ protected function getExamplesMessages() {
+ return array(
+ 'action=query&meta=messagegroupstats&mgsgroup=page-Example'
+ => 'apihelp-query+messagegroupstats-example-1',
+ );
+ }
+}
diff --git a/MLEB/Translate/api/ApiQueryMessageGroups.php b/MLEB/Translate/api/ApiQueryMessageGroups.php
new file mode 100644
index 00000000..09fd6119
--- /dev/null
+++ b/MLEB/Translate/api/ApiQueryMessageGroups.php
@@ -0,0 +1,391 @@
+<?php
+/**
+ * Api module for querying MessageGroups.
+ *
+ * @file
+ * @author Niklas Laxström
+ * @author Harry Burt
+ * @copyright Copyright © 2010-2013, Niklas Laxström
+ * @copyright Copyright © 2012-2013, Harry Burt
+ * @license GPL-2.0+
+ */
+
+/**
+ * Api module for querying MessageGroups.
+ *
+ * @ingroup API TranslateAPI
+ */
+class ApiQueryMessageGroups extends ApiQueryBase {
+
+ public function __construct( $query, $moduleName ) {
+ parent::__construct( $query, $moduleName, 'mg' );
+ }
+
+ public function execute() {
+ $params = $this->extractRequestParams();
+ $filter = $params['filter'];
+
+ $groups = array();
+
+ // Parameter root as all for all pages subgroups
+ if ( $params['root'] === 'all' ) {
+ $allGroups = MessageGroups::getAllGroups();
+ foreach ( $allGroups as $group ) {
+ if ( $group instanceof WikiPageMessageGroup ) {
+ $groups[] = $group;
+ }
+ }
+ } elseif ( $params['format'] === 'flat' ) {
+ if ( $params['root'] !== '' ) {
+ $group = MessageGroups::getGroup( $params['root'] );
+ if ( $group ) {
+ $groups[$params['root']] = $group;
+ }
+ } else {
+ $groups = MessageGroups::getAllGroups();
+ foreach ( MessageGroups::getDynamicGroups() as $id => $unused ) {
+ $groups[$id] = MessageGroups::getGroup( $id );
+ }
+ }
+
+ // Not sorted by default, so do it now
+ // Work around php bug: https://bugs.php.net/bug.php?id=50688
+ wfSuppressWarnings();
+ usort( $groups, array( 'MessageGroups', 'groupLabelSort' ) );
+ wfRestoreWarnings();
+ } elseif ( $params['root'] !== '' ) {
+ // format=tree from now on, as it is the only other valid option
+ $group = MessageGroups::getGroup( $params['root'] );
+ if ( $group instanceof AggregateMessageGroup ) {
+ $groups = MessageGroups::subGroups( $group );
+ // The parent group is the first, ignore it
+ array_shift( $groups );
+ }
+ } else {
+ $groups = MessageGroups::getGroupStructure();
+ foreach ( MessageGroups::getDynamicGroups() as $id => $unused ) {
+ $groups[$id] = MessageGroups::getGroup( $id );
+ }
+ }
+
+ // Do not list the sandbox group. The code that knows it
+ // exists can access it directly.
+ if ( isset( $groups['!sandbox'] ) ) {
+ unset( $groups['!sandbox'] );
+ }
+
+ $props = array_flip( $params['prop'] );
+
+ $result = $this->getResult();
+ $matcher = new StringMatcher( '', $filter );
+ /**
+ * @var MessageGroup $mixed
+ */
+ foreach ( $groups as $mixed ) {
+ if ( $filter !== array() && !$matcher->match( $mixed->getId() ) ) {
+ continue;
+ }
+
+ $a = $this->formatGroup( $mixed, $props );
+
+ $result->setIndexedTagName( $a, 'group' );
+
+ // @todo Add a continue?
+ $fit = $result->addValue( array( 'query', $this->getModuleName() ), null, $a );
+ if ( !$fit ) {
+ $this->setWarning( 'Could not fit all groups in the resultset.' );
+ // Even if we're not going to give a continue, no point carrying on
+ // if the result is full
+ break;
+ }
+ }
+
+ $result->setIndexedTagName_internal( array( 'query', $this->getModuleName() ), 'group' );
+ }
+
+ /**
+ * @param array|MessageGroup $mixed
+ * @param array $props List of props as the array keys
+ * @param int $depth
+ * @return array
+ */
+ protected function formatGroup( $mixed, $props, $depth = 0 ) {
+ $params = $this->extractRequestParams();
+
+ // Default
+ $g = $mixed;
+ $subgroups = array();
+
+ // Format = tree and has subgroups
+ if ( is_array( $mixed ) ) {
+ $g = array_shift( $mixed );
+ $subgroups = $mixed;
+ }
+
+ wfProfileIn( __METHOD__ . '-' . get_class( $g ) );
+
+ $a = array();
+
+ $groupId = $g->getId();
+
+ wfProfileIn( __METHOD__ . '-basic' );
+ if ( isset( $props['id'] ) ) {
+ $a['id'] = $groupId;
+ }
+
+ if ( isset( $props['label'] ) ) {
+ $a['label'] = $g->getLabel();
+ }
+
+ if ( isset( $props['description'] ) ) {
+ $a['description'] = $g->getDescription();
+ }
+
+ if ( isset( $props['class'] ) ) {
+ $a['class'] = get_class( $g );
+ }
+
+ if ( isset( $props['namespace'] ) ) {
+ $a['namespace'] = $g->getNamespace();
+ }
+ wfProfileOut( __METHOD__ . '-basic' );
+
+ wfProfileIn( __METHOD__ . '-exists' );
+ if ( isset( $props['exists'] ) ) {
+ $a['exists'] = $g->exists();
+ }
+ wfProfileOut( __METHOD__ . '-exists' );
+
+ wfProfileIn( __METHOD__ . '-icon' );
+ if ( isset( $props['icon'] ) ) {
+ $formats = TranslateUtils::getIcon( $g, $params['iconsize'] );
+ if ( $formats ) {
+ $a['icon'] = $formats;
+ }
+ }
+ wfProfileOut( __METHOD__ . '-icon' );
+
+ wfProfileIn( __METHOD__ . '-priority' );
+ if ( isset( $props['priority'] ) ) {
+ $priority = MessageGroups::getPriority( $g );
+ $a['priority'] = $priority ?: 'default';
+ }
+
+ if ( isset( $props['prioritylangs'] ) ) {
+ $prioritylangs = TranslateMetadata::get( $groupId, 'prioritylangs' );
+ $a['prioritylangs'] = $prioritylangs ? explode( ',', $prioritylangs ) : false;
+ }
+
+ if ( isset( $props['priorityforce'] ) ) {
+ $a['priorityforce'] = ( TranslateMetadata::get( $groupId, 'priorityforce' ) === 'on' );
+ }
+ wfProfileOut( __METHOD__ . '-priority' );
+
+ wfProfileIn( __METHOD__ . '-workflowstates' );
+ if ( isset( $props['workflowstates'] ) ) {
+ $a['workflowstates'] = $this->getWorkflowStates( $g );
+ }
+ wfProfileOut( __METHOD__ . '-workflowstates' );
+
+ wfRunHooks(
+ 'TranslateProcessAPIMessageGroupsProperties',
+ array( &$a, $props, $params, $g )
+ );
+
+ wfProfileOut( __METHOD__ . '-' . get_class( $g ) );
+
+ // Depth only applies to tree format
+ if ( $depth >= $params['depth'] && $params['format'] === 'tree' ) {
+ $a['groupcount'] = count( $subgroups );
+
+ // Prevent going further down in the three
+ return $a;
+ }
+
+ // Always empty array for flat format, only sometimes for tree format
+ if ( $subgroups !== array() ) {
+ foreach ( $subgroups as $sg ) {
+ $a['groups'][] = $this->formatGroup( $sg, $props );
+ }
+ $result = $this->getResult();
+ $result->setIndexedTagName( $a['groups'], 'group' );
+ }
+
+ return $a;
+ }
+
+ /**
+ * Get the workflow states applicable to the given message group
+ *
+ * @param MessageGroup $group
+ * @return boolean|array Associative array with states as key and localized state
+ * labels as values
+ */
+ protected function getWorkflowStates( MessageGroup $group ) {
+ if ( MessageGroups::isDynamic( $group ) ) {
+ return false;
+ }
+
+ $stateConfig = $group->getMessageGroupStates()->getStates();
+
+ if ( !is_array( $stateConfig ) || $stateConfig === array() ) {
+ return false;
+ }
+
+ $user = $this->getUser();
+
+ foreach ( $stateConfig as $state => $config ) {
+ if ( is_array( $config ) ) {
+ // Check if user is allowed to change states generally
+ $allowed = $user->isAllowed( 'translate-groupreview' );
+ // Check further restrictions
+ if ( $allowed && isset( $config['right'] ) ) {
+ $allowed = $user->isAllowed( $config['right'] );
+ }
+
+ $stateConfig[$state]['_canchange'] = $allowed;
+ $stateConfig[$state]['_name'] =
+ $this->msg( "translate-workflow-state-$state" )->text();
+ }
+ }
+
+ return $stateConfig;
+ }
+
+ public function getAllowedParams() {
+ $allowedParams = array(
+ 'depth' => array(
+ ApiBase::PARAM_TYPE => 'integer',
+ ApiBase::PARAM_DFLT => '100',
+ ),
+ 'filter' => array(
+ ApiBase::PARAM_TYPE => 'string',
+ ApiBase::PARAM_DFLT => '',
+ ApiBase::PARAM_ISMULTI => true,
+ ),
+ 'format' => array(
+ ApiBase::PARAM_TYPE => array( 'flat', 'tree' ),
+ ApiBase::PARAM_DFLT => 'flat',
+ ),
+ 'iconsize' => array(
+ ApiBase::PARAM_TYPE => 'integer',
+ ApiBase::PARAM_DFLT => 64,
+ ),
+ 'prop' => array(
+ ApiBase::PARAM_TYPE => array_keys( self::getPropertyList() ),
+ ApiBase::PARAM_DFLT => 'id|label|description|class|exists',
+ ApiBase::PARAM_ISMULTI => true,
+ ),
+ 'root' => array(
+ ApiBase::PARAM_TYPE => 'string',
+ ApiBase::PARAM_DFLT => '',
+ ),
+ );
+ wfRunHooks( 'TranslateGetAPIMessageGroupsParameterList', array( &$allowedParams ) );
+
+ return $allowedParams;
+ }
+
+ /**
+ * @deprecated since MediaWiki core 1.25
+ */
+ public function getParamDescription() {
+ $depth = <<<TEXT
+When using the tree format, limit the depth to this many levels. Value 0 means
+that no subgroups are shown. If the limit is reached, a prop groupcount is
+added and it states the number of direct children.
+TEXT;
+ $root = <<<TEXT
+When using the tree format, instead of starting from top level start from the
+given message group, which must be an aggregate message group. When using flat
+format only the specified group is returned.
+TEXT;
+ $filter = <<<TEXT
+Only return messages with IDs that match one or more of the input(s) given
+(case-insensitive, separated by pipes, * wildcard).
+TEXT;
+
+ $propIntro = array( 'What translation-related information to get:' );
+
+ $paramDescs = array(
+ 'depth' => $depth,
+ 'format' => 'In a tree format message groups can exist multiple places in the tree.',
+ 'iconsize' => 'Preferred size of rasterised group icon',
+ 'root' => $root,
+ 'filter' => $filter,
+ 'prop' => array_merge( $propIntro, self::getPropertyList() ),
+ );
+
+ $p = $this->getModulePrefix(); // Can be useful for documentation
+ wfRunHooks( 'TranslateGetAPIMessageGroupsParameterDescs', array( &$paramDescs, $p ) );
+
+ $indent = "\n" . str_repeat( ' ', 24 );
+ $wrapWidth = 104 - 24;
+ foreach ( $paramDescs as &$val ) {
+ if ( is_string( $val ) ) {
+ $val = wordwrap( str_replace( "\n", ' ', $val ), $wrapWidth, $indent );
+ }
+ }
+
+ return $paramDescs;
+ }
+
+ /**
+ * Returns array of key value pairs of properties and their descriptions
+ *
+ * @return array
+ */
+ protected static function getPropertyList() {
+ $properties = array(
+ 'id' => ' id - Include id of the group',
+ 'label' => ' label - Include label of the group',
+ 'description' => ' description - Include description of the group',
+ 'class' => ' class - Include class name of the group',
+ 'namespace' =>
+ ' namespace - Include namespace of the group. Not all groups belong ' .
+ 'to a single namespace.',
+ 'exists' =>
+ ' exists - Include self-calculated existence property of the group',
+ 'icon' => ' icon - Include urls to icon of the group',
+ 'priority' => ' priority - Include priority status like discouraged',
+ 'prioritylangs' =>
+ ' prioritylangs - Include preferred languages. If not set, this returns false',
+ 'priorityforce' =>
+ ' priorityforce - Include priority status - is the priority languages ' .
+ 'setting forced',
+ 'workflowstates' =>
+ ' workflowstates - Include the workflow states for the message group',
+ );
+
+ wfRunHooks( 'TranslateGetAPIMessageGroupsPropertyDescs', array( &$properties ) );
+
+ return $properties;
+ }
+
+ /**
+ * @deprecated since MediaWiki core 1.25
+ */
+ public function getDescription() {
+ return 'Return information about message groups. Note that uselang parameter ' .
+ 'affects the output of language dependent parts.';
+ }
+
+ /**
+ * @deprecated since MediaWiki core 1.25
+ */
+ protected function getExamples() {
+ return array(
+ 'api.php?action=query&meta=messagegroups',
+ );
+ }
+
+ /**
+ * @see ApiBase::getExamplesMessages()
+ */
+ protected function getExamplesMessages() {
+ return array(
+ 'action=query&meta=messagegroups'
+ => 'apihelp-query+messagegroups-example-1',
+ );
+ }
+}
diff --git a/MLEB/Translate/api/ApiQueryMessageTranslations.php b/MLEB/Translate/api/ApiQueryMessageTranslations.php
new file mode 100644
index 00000000..48f4e4d1
--- /dev/null
+++ b/MLEB/Translate/api/ApiQueryMessageTranslations.php
@@ -0,0 +1,172 @@
+<?php
+/**
+ * Api module for querying message translations.
+ *
+ * @file
+ * @author Niklas Laxström
+ * @copyright Copyright © 2011-2013, Niklas Laxström
+ * @license GPL-2.0+
+ */
+
+/**
+ * Api module for querying message translations.
+ *
+ * @ingroup API TranslateAPI
+ */
+class ApiQueryMessageTranslations extends ApiQueryBase {
+
+ public function __construct( $query, $moduleName ) {
+ parent::__construct( $query, $moduleName, 'mt' );
+ }
+
+ public function getCacheMode( $params ) {
+ return 'public';
+ }
+
+ /**
+ * Returns all translations of a given message.
+ * @param MessageHandle $handle Language code is ignored.
+ * @return array[]
+ * @since 2012-12-18
+ */
+ public static function getTranslations( MessageHandle $handle ) {
+ $namespace = $handle->getTitle()->getNamespace();
+ $base = $handle->getKey();
+
+ $dbr = wfGetDB( DB_SLAVE );
+
+ $res = $dbr->select( 'page',
+ array( 'page_namespace', 'page_title' ),
+ array(
+ 'page_namespace' => $namespace,
+ 'page_title ' . $dbr->buildLike( "$base/", $dbr->anyString() ),
+ ),
+ __METHOD__,
+ array(
+ 'ORDER BY' => 'page_title',
+ 'USE INDEX' => 'name_title',
+ )
+ );
+
+ $titles = array();
+ foreach ( $res as $row ) {
+ $titles[] = $row->page_title;
+ }
+
+ if ( $titles === array() ) {
+ return array();
+ }
+
+ $pageInfo = TranslateUtils::getContents( $titles, $namespace );
+
+ return $pageInfo;
+ }
+
+ public function execute() {
+ $params = $this->extractRequestParams();
+
+ $title = Title::newFromText( $params['title'] );
+ if ( !$title ) {
+ $this->dieUsage( 'Invalid title', 'invalidtitle' );
+ }
+
+ $handle = new MessageHandle( $title );
+ if ( !$handle->isValid() ) {
+ $this->dieUsage(
+ 'Title does not correspond to a translatable message',
+ 'nomessagefortitle'
+ );
+ }
+
+ $namespace = $title->getNamespace();
+ $pageInfo = self::getTranslations( $handle );
+
+ $result = $this->getResult();
+ $count = 0;
+
+ foreach ( $pageInfo as $key => $info ) {
+ if ( ++$count <= $params['offset'] ) {
+ continue;
+ }
+
+ $tTitle = Title::makeTitle( $namespace, $key );
+ $tHandle = new MessageHandle( $tTitle );
+
+ $data = array(
+ 'title' => $tTitle->getPrefixedText(),
+ 'language' => $tHandle->getCode(),
+ 'lasttranslator' => $info[1],
+ );
+
+ $fuzzy = MessageHandle::hasFuzzyString( $info[0] ) || $tHandle->isFuzzy();
+
+ if ( $fuzzy ) {
+ $data['fuzzy'] = 'fuzzy';
+ }
+
+ $translation = str_replace( TRANSLATE_FUZZY, '', $info[0] );
+ $result->setContent( $data, $translation );
+
+ $fit = $result->addValue( array( 'query', $this->getModuleName() ), null, $data );
+ if ( !$fit ) {
+ $this->setContinueEnumParameter( 'offset', $count );
+ break;
+ }
+ }
+
+ $result->setIndexedTagName_internal( array( 'query', $this->getModuleName() ), 'message' );
+ }
+
+ public function getAllowedParams() {
+ return array(
+ 'title' => array(
+ ApiBase::PARAM_TYPE => 'string',
+ ApiBase::PARAM_REQUIRED => true,
+ ),
+ 'offset' => array(
+ ApiBase::PARAM_DFLT => 0,
+ ApiBase::PARAM_TYPE => 'integer',
+ /** @todo Once support for MediaWiki < 1.25 is dropped, just
+ * use ApiBase::PARAM_HELP_MSG directly
+ */
+ constant( 'ApiBase::PARAM_HELP_MSG' ) ?: '' => 'api-help-param-continue',
+ ),
+ );
+ }
+
+ /**
+ * @deprecated since MediaWiki core 1.25
+ */
+ public function getParamDescription() {
+ return array(
+ 'title' => 'Full title of a known message',
+ );
+ }
+
+ /**
+ * @deprecated since MediaWiki core 1.25
+ */
+ public function getDescription() {
+ return 'Query all translations for a single message';
+ }
+
+ /**
+ * @deprecated since MediaWiki core 1.25
+ */
+ protected function getExamples() {
+ return array(
+ "api.php?action=query&meta=messagetranslations&mttitle=MediaWiki:January " .
+ "List of translations in the wiki for MediaWiki:January",
+ );
+ }
+
+ /**
+ * @see ApiBase::getExamplesMessages()
+ */
+ protected function getExamplesMessages() {
+ return array(
+ 'action=query&meta=messagetranslations&mttitle=MediaWiki:January'
+ => 'apihelp-query+messagetranslations-example-1',
+ );
+ }
+}
diff --git a/MLEB/Translate/api/ApiQueryTranslationAids.php b/MLEB/Translate/api/ApiQueryTranslationAids.php
new file mode 100644
index 00000000..c44fcc0a
--- /dev/null
+++ b/MLEB/Translate/api/ApiQueryTranslationAids.php
@@ -0,0 +1,136 @@
+<?php
+/**
+ * Api module for querying message aids.
+ *
+ * @file
+ * @author Niklas Laxström
+ * @copyright Copyright © 2012-2013, Niklas Laxström
+ * @license GPL-2.0+
+ */
+
+/**
+ * Api module for querying message aids.
+ *
+ * @ingroup API TranslateAPI
+ */
+class ApiTranslationAids extends ApiBase {
+ public function execute() {
+ $params = $this->extractRequestParams();
+
+ $title = Title::newFromText( $params['title'] );
+ if ( !$title ) {
+ $this->dieUsage( 'Invalid title', 'invalidtitle' );
+ }
+
+ $handle = new MessageHandle( $title );
+ if ( !$handle->isValid() ) {
+ $this->dieUsage(
+ 'Title does not correspond to a translatable message',
+ 'nomessagefortitle'
+ );
+ }
+
+ if ( strval( $params['group'] ) !== '' ) {
+ $group = MessageGroups::getGroup( $params['group'] );
+ } else {
+ $group = $handle->getGroup();
+ }
+
+ if ( !$group ) {
+ $this->dieUsage( 'Invalid group', 'invalidgroup' );
+ }
+
+ $data = array();
+ $times = array();
+
+ $props = $params['prop'];
+
+ $types = $group->getTranslationAids();
+ $result = $this->getResult();
+ foreach ( $props as $type ) {
+ // Do not proceed if translation aid is not supported for this message group
+ if ( !isset( $types[$type] ) ) {
+ continue;
+ }
+
+ $start = microtime( true );
+ $class = $types[$type];
+ $obj = new $class( $group, $handle, $this );
+
+ try {
+ $aid = $obj->getData();
+ } catch ( TranslationHelperException $e ) {
+ $aid = array( 'error' => $e->getMessage() );
+ }
+
+ if ( isset( $aid['**'] ) ) {
+ $result->setIndexedTagName( $aid, $aid['**'] );
+ unset( $aid['**'] );
+ }
+
+ $data[$type] = $aid;
+ $times[$type] = round( microtime( true ) - $start, 3 );
+ }
+
+ $result->addValue( null, 'helpers', $data );
+ $result->addValue( null, 'times', $times );
+ }
+
+ public function getAllowedParams() {
+ $props = array_keys( TranslationAid::getTypes() );
+ wfRunHooks( 'TranslateTranslationAids', array( &$props ) );
+
+ return array(
+ 'title' => array(
+ ApiBase::PARAM_TYPE => 'string',
+ ApiBase::PARAM_REQUIRED => true,
+ ),
+ 'group' => array(
+ ApiBase::PARAM_TYPE => 'string',
+ ),
+ 'prop' => array(
+ ApiBase::PARAM_DFLT => implode( '|', $props ),
+ ApiBase::PARAM_TYPE => $props,
+ ApiBase::PARAM_ISMULTI => true,
+ ),
+ );
+ }
+
+ /**
+ * @deprecated since MediaWiki core 1.25
+ */
+ public function getParamDescription() {
+ return array(
+ 'title' => 'Full title of a known message',
+ 'group' => 'Message group the message belongs to. If empty then ' .
+ 'primary group is used.',
+ 'prop' => 'Which translation helpers to include.',
+ );
+ }
+
+ /**
+ * @deprecated since MediaWiki core 1.25
+ */
+ public function getDescription() {
+ return 'Query all translations aids';
+ }
+
+ /**
+ * @deprecated since MediaWiki core 1.25
+ */
+ protected function getExamples() {
+ return array(
+ "api.php?action=translationaids&title=MediaWiki:January/fi",
+ );
+ }
+
+ /**
+ * @see ApiBase::getExamplesMessages()
+ */
+ protected function getExamplesMessages() {
+ return array(
+ 'action=translationaids&title=MediaWiki:January/fi'
+ => 'apihelp-translationaids-example-1',
+ );
+ }
+}
diff --git a/MLEB/Translate/api/ApiStatsQuery.php b/MLEB/Translate/api/ApiStatsQuery.php
new file mode 100644
index 00000000..63712d83
--- /dev/null
+++ b/MLEB/Translate/api/ApiStatsQuery.php
@@ -0,0 +1,84 @@
+<?php
+/**
+ * A base module for querying message group related stats.
+ *
+ * @file
+ * @copyright Copyright © 2012-2013, Niklas Laxström
+ * @license GPL-2.0+
+ */
+
+/**
+ * A base module for querying message group related stats.
+ *
+ * @ingroup API TranslateAPI
+ * @since 2012-11-30
+ */
+abstract class ApiStatsQuery extends ApiQueryBase {
+ public function getCacheMode( $params ) {
+ return 'public';
+ }
+
+ public function execute() {
+ $params = $this->extractRequestParams();
+ MessageGroupStats::setTimeLimit( $params['timelimit'] );
+
+ $cache = $this->getData();
+ $result = $this->getResult();
+
+ foreach ( $cache as $item => $stats ) {
+ if ( $item < $params['offset'] ) {
+ continue;
+ }
+
+ if ( $stats[MessageGroupStats::TOTAL] === null ) {
+ $this->setContinueEnumParameter( 'offset', $item );
+ break;
+ }
+
+ $data = $this->makeItem( $item, $stats );
+ $result->addValue( array( 'query', $this->getModuleName() ), null, $data );
+ }
+
+ $result->setIndexedTagName_internal( array( 'query', $this->getModuleName() ), 'stats' );
+ }
+
+ protected function makeItem( $item, $stats ) {
+ return array(
+ 'total' => $stats[MessageGroupStats::TOTAL],
+ 'translated' => $stats[MessageGroupStats::TRANSLATED],
+ 'fuzzy' => $stats[MessageGroupStats::FUZZY],
+ 'proofread' => $stats[MessageGroupStats::PROOFREAD],
+ );
+ }
+
+ public function getAllowedParams() {
+ return array(
+ 'offset' => array(
+ ApiBase::PARAM_DFLT => 0,
+ ApiBase::PARAM_TYPE => 'string',
+ /** @todo Once support for MediaWiki < 1.25 is dropped, just
+ * use ApiBase::PARAM_HELP_MSG directly
+ */
+ constant( 'ApiBase::PARAM_HELP_MSG' ) ?: '' => 'api-help-param-continue',
+ ),
+ 'timelimit' => array(
+ ApiBase::PARAM_DFLT => 8,
+ ApiBase::PARAM_TYPE => 'integer',
+ ApiBase::PARAM_MAX => 10,
+ ApiBase::PARAM_MIN => 0,
+ ),
+ );
+ }
+
+ /**
+ * @deprecated since MediaWiki core 1.25
+ */
+ public function getParamDescription() {
+ return array(
+ 'offset' => 'If not all stats are calculated, you will get a query-continue ' .
+ 'parameter for offset you can use to get more.',
+ 'timelimit' => 'Maximum time to spend calculating missing statistics. If ' .
+ 'zero, only the cached results from the beginning are returned.',
+ );
+ }
+}
diff --git a/MLEB/Translate/api/ApiTTMServer.php b/MLEB/Translate/api/ApiTTMServer.php
new file mode 100644
index 00000000..1889f745
--- /dev/null
+++ b/MLEB/Translate/api/ApiTTMServer.php
@@ -0,0 +1,115 @@
+<?php
+/**
+ * API module for TTMServer
+ *
+ * @file
+ * @author Niklas Laxström
+ * @copyright Copyright © 2012-2013, Niklas Laxström
+ * @license GPL-2.0+
+ */
+
+/**
+ * API module for TTMServer
+ *
+ * @ingroup API TranslateAPI TTMServer
+ * @since 2012-01-26
+ */
+class ApiTTMServer extends ApiBase {
+
+ public function execute() {
+ global $wgTranslateTranslationServices;
+ $params = $this->extractRequestParams();
+
+ $config = $wgTranslateTranslationServices[$params['service']];
+ $server = TTMServer::factory( $config );
+
+ $suggestions = $server->query(
+ $params['sourcelanguage'],
+ $params['targetlanguage'],
+ $params['text']
+ );
+
+ $result = $this->getResult();
+ foreach ( $suggestions as $sug ) {
+ $sug['location'] = $server->expandLocation( $sug );
+ unset( $sug['wiki'] );
+ $result->addValue( $this->getModuleName(), null, $sug );
+ }
+
+ $result->setIndexedTagName_internal( $this->getModuleName(), 'suggestion' );
+ }
+
+ protected function getAvailableTranslationServices() {
+ global $wgTranslateTranslationServices;
+
+ $good = array();
+ foreach ( $wgTranslateTranslationServices as $id => $config ) {
+ if ( isset( $config['public'] ) && $config['public'] === true ) {
+ $good[] = $id;
+ }
+ }
+
+ return $good;
+ }
+
+ public function getAllowedParams() {
+ $available = $this->getAvailableTranslationServices();
+
+ return array(
+ 'service' => array(
+ ApiBase::PARAM_TYPE => $available,
+ ApiBase::PARAM_DFLT => 'TTMServer',
+ ),
+ 'sourcelanguage' => array(
+ ApiBase::PARAM_TYPE => 'string',
+ ApiBase::PARAM_REQUIRED => true,
+ ),
+ 'targetlanguage' => array(
+ ApiBase::PARAM_TYPE => 'string',
+ ApiBase::PARAM_REQUIRED => true,
+ ),
+ 'text' => array(
+ ApiBase::PARAM_TYPE => 'string',
+ ApiBase::PARAM_REQUIRED => true,
+ ),
+ );
+ }
+
+ /**
+ * @deprecated since MediaWiki core 1.25
+ */
+ public function getParamDescription() {
+ return array(
+ 'service' => 'Which of the available translation services to use.',
+ 'sourcelanguage' => 'A language code of the source text',
+ 'targetlanguage' => 'A language code of the suggestion',
+ 'text' => 'The text to find suggestions for',
+ );
+ }
+
+ /**
+ * @deprecated since MediaWiki core 1.25
+ */
+ public function getDescription() {
+ return 'Query suggestions from translation memories';
+ }
+
+ /**
+ * @deprecated since MediaWiki core 1.25
+ */
+ public function getExamples() {
+ return array(
+ 'api.php?action=ttmserver&sourcelanguage=en&targetlanguage=fi&text=Help',
+ );
+ }
+
+ /**
+ * @see ApiBase::getExamplesMessages()
+ */
+ protected function getExamplesMessages() {
+ return array(
+ 'action=ttmserver&sourcelanguage=en&targetlanguage=fi&text=Help'
+ => 'apihelp-ttmserver-example-1',
+ );
+ }
+}
diff --git a/MLEB/Translate/api/ApiTranslateSandbox.php b/MLEB/Translate/api/ApiTranslateSandbox.php
new file mode 100644
index 00000000..8c1f6533
--- /dev/null
+++ b/MLEB/Translate/api/ApiTranslateSandbox.php
@@ -0,0 +1,266 @@
+<?php
+/**
+ * WebAPI for the sandbox feature of Translate.
+ *
+ * @file
+ * @author Niklas Laxström
+ * @license GPL-2.0+
+ */
+
+/**
+ * WebAPI for the sandbox feature of Translate.
+ * @ingroup API TranslateAPI
+ */
+class ApiTranslateSandbox extends ApiBase {
+ public function execute() {
+ global $wgTranslateUseSandbox;
+ if ( !$wgTranslateUseSandbox ) {
+ $this->dieUsage( 'Sandbox feature is not in use', 'sandboxdisabled' );
+ }
+
+ $params = $this->extractRequestParams();
+ switch ( $params['do'] ) {
+ case 'create':
+ $this->doCreate();
+ break;
+ case 'delete':
+ $this->doDelete();
+ break;
+ case 'promote':
+ $this->doPromote();
+ break;
+ case 'remind':
+ $this->doRemind();
+ break;
+ }
+ }
+
+ protected function doCreate() {
+ $params = $this->extractRequestParams();
+
+ // Do validations
+ foreach ( explode( '|', 'username|password|email' ) as $field ) {
+ if ( !isset( $params[$field] ) ) {
+ $this->dieUsage( "Missing parameter $field", 'missingparam' );
+ }
+ }
+
+ $username = $params['username'];
+ if ( User::getCanonicalName( $username, 'creatable' ) === false ) {
+ $this->dieUsage( "User name is not acceptable", 'invalidusername' );
+ }
+
+ $user = User::newFromName( $username );
+ if ( $user->getID() !== 0 ) {
+ $this->dieUsage( "User name is in use", 'nonfreeusername' );
+ }
+
+ $password = $params['password'];
+ if ( !$user->isValidPassword( $password ) ) {
+ $this->dieUsage( "Password is not acceptable", 'invalidpassword' );
+ }
+
+ $email = $params['email'];
+ if ( !Sanitizer::validateEmail( $email ) ) {
+ $this->dieUsage( "Email is not acceptable", 'invalidemail' );
+ }
+
+ $user = TranslateSandbox::addUser( $username, $email, $password );
+ $output = array( 'user' => array(
+ 'name' => $user->getName(),
+ 'id' => $user->getId(),
+ ) );
+
+ $user->setOption( 'language', $this->getContext()->getLanguage()->getCode() );
+ $user->saveSettings();
+
+ $this->getResult()->addValue( null, $this->getModuleName(), $output );
+ }
+
+ protected function doDelete() {
+ if ( !$this->getUser()->isAllowed( 'translate-sandboxmanage' ) ) {
+ $this->dieUsage( 'Access denied', 'missingperms' );
+ }
+
+ $params = $this->extractRequestParams();
+
+ foreach ( $params['userid'] as $user ) {
+ $user = User::newFromId( $user );
+ $userpage = $user->getUserPage();
+
+ TranslateSandbox::sendEmail( $this->getUser(), $user, 'rejection' );
+
+ try {
+ TranslateSandbox::deleteUser( $user );
+ } catch ( MWException $e ) {
+ $this->dieUsage( $e->getMessage(), 'invalidparam' );
+ }
+
+ $logEntry = new ManualLogEntry( 'translatorsandbox', 'rejected' );
+ $logEntry->setPerformer( $this->getUser() );
+ $logEntry->setTarget( $userpage );
+ $logid = $logEntry->insert();
+ $logEntry->publish( $logid );
+ }
+ }
+
+ protected function doPromote() {
+ if ( !$this->getUser()->isAllowed( 'translate-sandboxmanage' ) ) {
+ $this->dieUsage( 'Access denied', 'missingperms' );
+ }
+
+ $params = $this->extractRequestParams();
+
+ foreach ( $params['userid'] as $user ) {
+ $user = User::newFromId( $user );
+
+ try {
+ TranslateSandbox::promoteUser( $user );
+ } catch ( MWException $e ) {
+ $this->dieUsage( $e->getMessage(), 'invalidparam' );
+ }
+
+ TranslateSandbox::sendEmail( $this->getUser(), $user, 'promotion' );
+
+ $logEntry = new ManualLogEntry( 'translatorsandbox', 'promoted' );
+ $logEntry->setPerformer( $this->getUser() );
+ $logEntry->setTarget( $user->getUserPage() );
+ $logEntry->setParameters( array(
+ '4::userid' => $user->getId(),
+ ) );
+ $logid = $logEntry->insert();
+ $logEntry->publish( $logid );
+
+ $user->addNewUserLogEntry( 'tsbpromoted' );
+ $this->createUserPage( $user );
+ wfRunHooks( 'AddNewAccount', array( $user, false ) );
+ }
+ }
+
+ protected function doRemind() {
+ $params = $this->extractRequestParams();
+
+ foreach ( $params['userid'] as $user ) {
+ $user = User::newFromId( $user );
+
+ try {
+ TranslateSandbox::sendEmail( $this->getUser(), $user, 'reminder' );
+ } catch ( MWException $e ) {
+ $this->dieUsage( $e->getMessage(), 'invalidparam' );
+ }
+ }
+ }
+
+ /**
+ * Create a user page for a user with a babel template based on the signup
+ * preferences.
+ *
+ * @param User $user
+ * @return Status|bool False when a user page already existed, or the Status
+ * of the user page creation from WikiPage::doEditContent().
+ */
+ protected function createUserPage( User $user ) {
+ $userpage = $user->getUserPage();
+
+ if( $userpage->exists() ) {
+ return false;
+ }
+
+ $languagePrefs = FormatJson::decode( $user->getOption( 'translate-sandbox' ) );
+ $languages = implode( '|', $languagePrefs->languages );
+ $babeltext = "{{#babel:$languages}}";
+ $summary = $this->msg( 'tsb-create-user-page' )->inContentLanguage()->text();
+
+ $page = WikiPage::factory( $userpage );
+ $content = ContentHandler::makeContent( $babeltext, $userpage );
+
+ $editResult = $page->doEditContent( $content, $summary, EDIT_NEW, false, $user );
+
+ return $editResult;
+ }
+
+ public function mustBePosted() {
+ return true;
+ }
+
+ public function isWriteMode() {
+ return true;
+ }
+
+ public function needsToken() {
+ return 'csrf';
+ }
+
+ // This function exists for backwards compatibility with MediaWiki before
+ // 1.24
+ public function getTokenSalt() {
+ return 'sandbox';
+ }
+
+ // This function maintains backwards compatibility with self::getToken()
+ // below. If salt is removed from self::getToken() and nothing else (e.g.
+ // JS) generates the token directly, this could probably be removed.
+ protected function getWebUITokenSalt( array $params ) {
+ return 'sandbox';
+ }
+
+ // This function implements pre-1.24 token fetching via the
+ // ApiTokensGetTokenTypes hook, kept for backwards compatibility.
+ public static function getToken() {
+ // Who designed this?!?!?!
+ $user = RequestContext::getMain()->getUser();
+ return $user->getEditToken( 'sandbox' );
+ }
+
+ public function getAllowedParams() {
+ return array(
+ 'do' => array(
+ ApiBase::PARAM_TYPE => array( 'create', 'delete', 'promote', 'remind' ),
+ ApiBase::PARAM_REQUIRED => true,
+ ),
+ 'userid' => array(
+ ApiBase::PARAM_TYPE => 'integer',
+ ApiBase::PARAM_DFLT => 0,
+ ApiBase::PARAM_ISMULTI => true,
+ ),
+ 'token' => array(
+ ApiBase::PARAM_TYPE => 'string',
+ ApiBase::PARAM_REQUIRED => true,
+ ),
+ 'username' => array( ApiBase::PARAM_TYPE => 'string' ),
+ 'password' => array( ApiBase::PARAM_TYPE => 'string' ),
+ 'email' => array( ApiBase::PARAM_TYPE => 'string' ),
+ );
+ }
+
+ /**
+ * @deprecated since MediaWiki core 1.25
+ */
+ public function getParamDescription() {
+ $action = TranslateUtils::getTokenAction( 'translatesandbox' );
+
+ return array(
+ 'do' => 'What to do',
+ 'userid' => 'User ids of the users being managed. Use 0 for creations.',
+ 'token' => "A token previously acquired with $action",
+ 'username' => 'Username when creating user',
+ 'password' => 'Password when creating user',
+ 'email' => 'Email when creating user',
+ );
+ }
+
+ /**
+ * @deprecated since MediaWiki core 1.25
+ */
+ public function getDescription() {
+ return 'Signup and manage sandboxed users';
+ }
+
+ // This function implements pre-1.24 token fetching via the
+ // ApiTokensGetTokenTypes hook, kept for backwards compatibility.
+ public static function injectTokenFunction( &$list ) {
+ $list['translatesandbox'] = array( __CLASS__, 'getToken' );
+
+ return true;
+ }
+}
diff --git a/MLEB/Translate/api/ApiTranslateUser.php b/MLEB/Translate/api/ApiTranslateUser.php
new file mode 100644
index 00000000..95ab3322
--- /dev/null
+++ b/MLEB/Translate/api/ApiTranslateUser.php
@@ -0,0 +1,86 @@
+<?php
+/**
+ * API module.
+ * @file
+ * @author Niklas Laxström
+ * @copyright Copyright © 2012-2013, Niklas Laxström
+ * @license GPL-2.0+
+ */
+
+/**
+ * API module for collecting and accessing translation related
+ * information about the user.
+ *
+ * @ingroup API TranslateAPI
+ * @since 2012-11-30
+ */
+class ApiTranslateUser extends ApiBase {
+ public function execute() {
+ $output = array();
+
+ $user = $this->getUser();
+ $groups = $user->getOption( 'translate-recent-groups', '' );
+ $output['recentgroups'] = array();
+ if ( strval( $groups ) !== '' ) {
+ $output['recentgroups'] = explode( '|', $groups );
+ $this->getResult()->setIndexedTagName( $output['recentgroups'], 'group' );
+ }
+ $this->getResult()->addValue( null, $this->getModuleName(), $output );
+ }
+
+ /**
+ * @deprecated since MediaWiki core 1.25
+ */
+ public function getDescription() {
+ return 'Translation related information about the user. Experimental.';
+ }
+
+ /**
+ * @deprecated since MediaWiki core 1.25
+ */
+ public function getExamples() {
+ return array(
+ 'api.php?action=translateuser',
+ );
+ }
+
+ /**
+ * @see ApiBase::getExamplesMessages()
+ */
+ protected function getExamplesMessages() {
+ return array(
+ 'action=translateuser'
+ => 'apihelp-translateuser-example-1',
+ );
+ }
+
+ /**
+ * Keeps track of recently used message groups per user.
+ */
+ public static function trackGroup( MessageGroup $group, User $user ) {
+ if ( $user->isAnon() ) {
+ return true;
+ }
+
+ $groups = $user->getOption( 'translate-recent-groups', '' );
+
+ if ( $groups === '' ) {
+ $groups = array();
+ } else {
+ $groups = explode( '|', $groups );
+ }
+
+ if ( isset( $groups[0] ) && $groups[0] === $group->getId() ) {
+ return true;
+ }
+
+ array_unshift( $groups, $group->getId() );
+ $groups = array_unique( $groups );
+ $groups = array_slice( $groups, 0, 5 );
+
+ $user->setOption( 'translate-recent-groups', implode( '|', $groups ) );
+ $user->saveSettings();
+
+ return true;
+ }
+}
diff --git a/MLEB/Translate/api/ApiTranslationReview.php b/MLEB/Translate/api/ApiTranslationReview.php
new file mode 100644
index 00000000..53e4af1b
--- /dev/null
+++ b/MLEB/Translate/api/ApiTranslationReview.php
@@ -0,0 +1,235 @@
+<?php
+/**
+ * API module for marking translations as reviewed
+ * @file
+ * @author Niklas Laxström
+ * @copyright Copyright © 2011-2013, Niklas Laxström
+ * @license GPL-2.0+
+ */
+
+/**
+ * API module for marking translations as reviewed
+ *
+ * @ingroup API TranslateAPI
+ */
+class ApiTranslationReview extends ApiBase {
+ protected static $right = 'translate-messagereview';
+ protected static $salt = 'translate-messagereview';
+
+ public function execute() {
+ if ( !$this->getUser()->isAllowed( self::$right ) ) {
+ $this->dieUsage( 'Permission denied', 'permissiondenied' );
+ }
+
+ $params = $this->extractRequestParams();
+
+ $revision = Revision::newFromId( $params['revision'] );
+ if ( !$revision ) {
+ $this->dieUsage( 'Invalid revision', 'invalidrevision' );
+ }
+
+ $error = self::getReviewBlockers( $this->getUser(), $revision );
+ switch ( $error ) {
+ case '':
+ // Everything is okay
+ break;
+ case 'permissiondenied':
+ $this->dieUsage( 'Permission denied', $error );
+ break; // Unreachable, but throws off code analyzer.
+ case 'blocked':
+ $this->dieUsage( 'You have been blocked', $error );
+ break; // Unreachable, but throws off code analyzer.
+ case 'unknownmessage':
+ $this->dieUsage( 'Unknown message', $error );
+ break; // Unreachable, but throws off code analyzer.
+ case 'owntranslation':
+ $this->dieUsage( 'Cannot review own translations', $error );
+ break; // Unreachable, but throws off code analyzer.
+ case 'fuzzymessage':
+ $this->dieUsage( 'Cannot review fuzzy translations', $error );
+ break; // Unreachable, but throws off code analyzer.
+ default:
+ $this->dieUsage( 'Unknown error', $error );
+ }
+
+ $ok = self::doReview( $this->getUser(), $revision );
+ if ( !$ok ) {
+ $this->setWarning( 'Already marked as reviewed by you' );
+ }
+
+ $output = array( 'review' => array(
+ 'title' => $revision->getTitle()->getPrefixedText(),
+ 'pageid' => $revision->getPage(),
+ 'revision' => $revision->getId()
+ ) );
+
+ $this->getResult()->addValue( null, $this->getModuleName(), $output );
+ }
+
+ /**
+ * Executes the real stuff. No checks done!
+ * @param User $user
+ * @param Revision $revision
+ * @param null|string $comment
+ * @return Bool, whether the action was recorded.
+ */
+ public static function doReview( User $user, Revision $revision, $comment = null ) {
+ $dbw = wfGetDB( DB_MASTER );
+ $table = 'translate_reviews';
+ $row = array(
+ 'trr_user' => $user->getId(),
+ 'trr_page' => $revision->getPage(),
+ 'trr_revision' => $revision->getId(),
+ );
+ $options = array( 'IGNORE' );
+ $dbw->insert( $table, $row, __METHOD__, $options );
+
+ if ( !$dbw->affectedRows() ) {
+ return false;
+ }
+
+ $title = $revision->getTitle();
+
+ $entry = new ManualLogEntry( 'translationreview', 'message' );
+ $entry->setPerformer( $user );
+ $entry->setTarget( $title );
+ $entry->setComment( $comment );
+ $entry->setParameters( array(
+ '4::revision' => $revision->getId(),
+ ) );
+
+ $logid = $entry->insert();
+ $entry->publish( $logid );
+
+ $handle = new MessageHandle( $title );
+ wfRunHooks( 'TranslateEventTranslationReview', array( $handle ) );
+
+ return true;
+ }
+
+ /**
+ * Validates review action by checking permissions and other things.
+ * @param User $user
+ * @param Revision $revision
+ * @return string Error key or empty string if review is allowed.
+ * @since 2012-09-24
+ */
+ public static function getReviewBlockers( User $user, Revision $revision ) {
+ if ( !$user->isAllowed( self::$right ) ) {
+ return 'permissiondenied';
+ }
+
+ if ( $user->isBlocked() ) {
+ return 'blocked';
+ }
+
+ $title = $revision->getTitle();
+ $handle = new MessageHandle( $title );
+ if ( !$handle->isValid() ) {
+ return 'unknownmessage';
+ }
+
+ if ( $revision->getUser() == $user->getId() ) {
+ return 'owntranslation';
+ }
+
+ if ( $handle->isFuzzy() ) {
+ return 'fuzzymessage';
+ }
+
+ return '';
+ }
+
+ public function isWriteMode() {
+ return true;
+ }
+
+ public function needsToken() {
+ return 'csrf';
+ }
+
+ // This function exists for backwards compatibility with MediaWiki before
+ // 1.24
+ public function getTokenSalt() {
+ return self::$salt;
+ }
+
+ // This function maintains backwards compatibility with self::getToken()
+ // below. If salt is removed from self::getToken() and nothing else (e.g.
+ // JS) generates the token directly, this could probably be removed.
+ protected function getWebUITokenSalt( array $params ) {
+ return self::$salt;
+ }
+
+ public function getAllowedParams() {
+ return array(
+ 'revision' => array(
+ ApiBase::PARAM_TYPE => 'integer',
+ ApiBase::PARAM_REQUIRED => true,
+ ),
+ 'token' => array(
+ ApiBase::PARAM_TYPE => 'string',
+ ApiBase::PARAM_REQUIRED => true,
+ ),
+ );
+ }
+
+ /**
+ * @deprecated since MediaWiki core 1.25
+ */
+ public function getParamDescription() {
+ $action = TranslateUtils::getTokenAction( 'translationreview' );
+
+ return array(
+ 'revision' => 'The revision number to review',
+ 'token' => "A token previously acquired with $action",
+ );
+ }
+
+ /**
+ * @deprecated since MediaWiki core 1.25
+ */
+ public function getDescription() {
+ return 'Mark translations reviewed';
+ }
+
+ /**
+ * @deprecated since MediaWiki core 1.25
+ */
+ public function getExamples() {
+ return array(
+ 'api.php?action=translationreview&revision=1&token=foo',
+ );
+ }
+
+ /**
+ * @see ApiBase::getExamplesMessages()
+ */
+ protected function getExamplesMessages() {
+ return array(
+ 'action=translationreview&revision=1&token=foo'
+ => 'apihelp-translationreview-example-1',
+ );
+ }
+
+ // These two functions implement pre-1.24 token fetching via the
+ // ApiTokensGetTokenTypes hook, kept for backwards compatibility.
+ public static function getToken() {
+ $user = RequestContext::getMain()->getUser();
+ if ( !$user->isAllowed( self::$right ) ) {
+ return false;
+ }
+
+ return $user->getEditToken( self::$salt );
+ }
+
+ public static function injectTokenFunction( &$list ) {
+ $list['translationreview'] = array( __CLASS__, 'getToken' );
+
+ return true; // Hooks must return bool
+ }
+
+ public static function getRight() {
+ return self::$right;
+ }
+}
diff --git a/MLEB/Translate/api/ApiTranslationStash.php b/MLEB/Translate/api/ApiTranslationStash.php
new file mode 100644
index 00000000..def126bb
--- /dev/null
+++ b/MLEB/Translate/api/ApiTranslationStash.php
@@ -0,0 +1,187 @@
+<?php
+/**
+ * WebAPI module for stashing translations.
+ *
+ * @file
+ * @author Niklas Laxström
+ * @license GPL-2.0+
+ */
+
+/**
+ * WebAPI module for storing translations for users who are in a sandbox.
+ * Access is controlled by hooks in TranslateSandbox class.
+ * @since 2013.06
+ */
+class ApiTranslationStash extends ApiBase {
+ public function execute() {
+ $params = $this->extractRequestParams();
+
+ // The user we are operating on, not necessarly the user making the request
+ $user = $this->getUser();
+
+ if ( isset( $params['username'] ) ){
+ if ( $this->getUser()->isAllowed( 'translate-sandboxmanage' ) ) {
+ $user = User::newFromName( $params['username'] );
+ if ( !$user ) {
+ $this->dieUsageMsg( array( 'invalidparam', 'username' ) );
+ }
+ } else {
+ $this->dieUsageMsg( array( 'invalidparam', 'username' ) );
+ }
+ }
+
+ $stash = new TranslationStashStorage( wfGetDB( DB_MASTER ) );
+ $action = $params['subaction'];
+
+ if ( $action === 'add' ) {
+ if ( !isset( $params['title'] ) ) {
+ $this->dieUsageMsg( array( 'missingparam', 'title' ) );
+ }
+ if ( !isset( $params['translation'] ) ) {
+ $this->dieUsageMsg( array( 'missingparam', 'translation' ) );
+ }
+
+ // @todo: Return value of Title::newFromText not checked
+ $translation = new StashedTranslation(
+ $user,
+ Title::newFromText( $params['title'] ),
+ $params['translation'],
+ FormatJson::decode( $params['metadata'], true )
+ );
+ $stash->addTranslation( $translation );
+ }
+
+ if ( $action === 'query' ) {
+ $output['translations'] = array();
+
+ $translations = $stash->getTranslations( $user );
+ foreach( $translations as $translation ) {
+ $output['translations'][] = $this->formatTranslation( $translation );
+ }
+ }
+
+ // If we got this far, nothing has failed
+ $output['result'] = 'ok';
+ $this->getResult()->addValue( null, $this->getModuleName(), $output );
+ }
+
+ protected function formatTranslation( StashedTranslation $translation ) {
+ $title = $translation->getTitle();
+ $handle = new MessageHandle( $title );
+
+ // Prepare for the worst
+ $definition = '';
+ $comparison = '';
+ if ( $handle->isValid() ) {
+ $groupId = MessageIndex::getPrimaryGroupId( $handle );
+ $group = MessageGroups::getGroup( $groupId );
+
+ $key = $handle->getKey();
+
+ $definition = $group->getMessage( $key, $group->getSourceLanguage() );
+ $comparison = $group->getMessage( $key, $handle->getCode() );
+ }
+
+ return array(
+ 'title' => $title->getPrefixedText(),
+ 'definition' => $definition,
+ 'translation' => $translation->getValue(),
+ 'comparison' => $comparison,
+ 'metadata' => $translation->getMetadata(),
+ );
+ }
+
+
+ public function isWriteMode() {
+ return true;
+ }
+
+ public function getTokenSalt() {
+ return 'translationstash';
+ }
+
+ public static function getToken() {
+ $user = RequestContext::getMain()->getUser();
+
+ return $user->getEditToken( 'translationstash' );
+ }
+
+ public static function injectTokenFunction( &$list ) {
+ $list['translationstash'] = array( __CLASS__, 'getToken' );
+
+ return true;
+ }
+
+ public function getAllowedParams() {
+ return array(
+ 'subaction' => array(
+ ApiBase::PARAM_TYPE => array( 'add', 'query' ),
+ ApiBase::PARAM_REQUIRED => true,
+ ),
+ 'title' => array(
+ ApiBase::PARAM_TYPE => 'string',
+ ),
+ 'translation' => array(
+ ApiBase::PARAM_TYPE => 'string',
+ ),
+ 'metadata' => array(
+ ApiBase::PARAM_TYPE => 'string',
+ ApiBase::PARAM_DFLT => null,
+ ),
+ 'token' => array(
+ ApiBase::PARAM_TYPE => 'string',
+ ApiBase::PARAM_REQUIRED => true,
+ ),
+ 'username' => array(
+ ApiBase::PARAM_TYPE => 'string',
+ ),
+ );
+ }
+
+ /**
+ * @deprecated since MediaWiki core 1.25
+ */
+ public function getParamDescription() {
+ $action = TranslateUtils::getTokenAction( 'translationstash' );
+
+ return array(
+ 'subaction' => 'Action',
+ 'title' => 'Title of the translation unit page',
+ 'translation' => 'Translation made by the user',
+ 'metadata' => 'Json object',
+ 'token' => "A token previously acquired with $action",
+ 'username' => 'Optionally the user whose stash to get. '
+ . 'Only privileged users can do this',
+ );
+ }
+
+ /**
+ * @deprecated since MediaWiki core 1.25
+ */
+ public function getDescription() {
+ return 'Add translations to stash';
+ }
+
+ /**
+ * @deprecated since MediaWiki core 1.25
+ */
+ public function getExamples() {
+ return array(
+ "api.php?action=translationstash&subaction=add&title=MediaWiki:Jan/fi&" .
+ "translation=tammikuu&metadata={}",
+ "api.php?action=translationstash&subaction=query",
+ );
+ }
+
+ /**
+ * @see ApiBase::getExamplesMessages()
+ */
+ protected function getExamplesMessages() {
+ return array(
+ 'action=translationstash&subaction=add&title=MediaWiki:Jan/fi&translation=tammikuu&metadata={}'
+ => 'apihelp-translationstash-example-1',
+ 'action=translationstash&subaction=query'
+ => 'apihelp-translationstash-example-2',
+ );
+ }
+}
diff --git a/MLEB/Translate/composer.json b/MLEB/Translate/composer.json
new file mode 100644
index 00000000..282d9dd1
--- /dev/null
+++ b/MLEB/Translate/composer.json
@@ -0,0 +1,49 @@
+{
+ "name": "mediawiki/translate",
+ "type": "mediawiki-extension",
+ "description": "The only standard solution to translate any kind of text with an avant-garde web interface within MediaWiki, including your documentation and software",
+ "keywords": [
+ "MediaWiki",
+ "Translation",
+ "l10n",
+ "i18n",
+ "g11n",
+ "m17n",
+ "localization",
+ "internationalization",
+ "translatewiki.net"
+ ],
+ "homepage": "https://www.mediawiki.org/wiki/Extension:Translate",
+ "license": "GPL-2.0+",
+ "authors": [
+ {
+ "name": "Niklas Laxström",
+ "email": "niklas.laxstrom@gmail.com",
+ "role": "Lead nitpicker"
+ },
+ {
+ "name": "Siebrand Mazeland",
+ "email": "s.mazeland@xs4all.nl",
+ "role": "Developer"
+ }
+ ],
+ "support": {
+ "issues": "https://bugzilla.wikimedia.org/",
+ "irc": "irc://irc.freenode.net/mediawiki-i18n",
+ "forum": "https://www.mediawiki.org/wiki/Extension_talk:Translate",
+ "wiki": "https://www.mediawiki.org/wiki/Extension:Translate"
+ },
+ "require": {
+ "php": ">=5.3.0",
+ "composer/installers": ">=1.0.1",
+ "mediawiki/universal-language-selector": "*"
+ },
+ "suggest": {
+ "mediawiki/babel": "Users can easily indicate their language proficiency on their user page",
+ "mediawiki/translation-notifications": "Manage communication with translators",
+ "mustangostang/spyc": "More recent version of the bundled spyc library"
+ },
+ "autoload": {
+ "files": ["Translate.php"]
+ }
+}
diff --git a/MLEB/Translate/data/plural-gettext.txt b/MLEB/Translate/data/plural-gettext.txt
new file mode 100644
index 00000000..f0561dc1
--- /dev/null
+++ b/MLEB/Translate/data/plural-gettext.txt
@@ -0,0 +1,129 @@
+ach nplurals=2; plural=(n > 1);
+af nplurals=2; plural=(n != 1);
+ak nplurals=2; plural=(n > 1);
+am nplurals=2; plural=(n > 1);
+ar nplurals=6; plural=(n == 0) ? 0 : ( (n == 1) ? 1 : ( (n == 2) ? 2 : ( (n%100 >= 3 && n%100 <= 10) ? 3 : ( (n%100 >= 11 && n%100 <= 99) ? 4 : 5 ) ) ) );
+arn nplurals=2; plural=(n > 1);
+ast nplurals=2; plural=(n != 1);
+ay nplurals=1; plural=0;
+az nplurals=2; plural=(n != 1);
+be nplurals=3; plural=(n%10 == 1 && n%100 != 11) ? 0 : ( (n%10 >= 2 && n%10 <= 4 && (n%100 < 10 || n%100 >= 20)) ? 1 : 2 );
+bg nplurals=2; plural=(n != 1);
+bn nplurals=2; plural=(n != 1);
+bo nplurals=1; plural=0;
+br nplurals=2; plural=(n > 1);
+bs nplurals=3; plural=(n%10 == 1 && n%100 != 11) ? 0 : ( (n%10 >= 2 && n%10 <= 4 && (n%100 < 10 || n%100 >= 20)) ? 1 : 2 );
+ca nplurals=2; plural=(n != 1);
+cgg nplurals=1; plural=0;
+cs nplurals=3; plural=(n == 1) ? 0 : ( (n >= 2 && n <= 4) ? 1 : 2 );
+csb nplurals=3; plural=(n == 1) ? 0 : ( (n%10 >= 2 && n%10 <= 4 && (n%100 < 10 || n%100 >= 20)) ? 1 : 2 );
+cy nplurals=6; plural=(n == 0) ? 0 : ( (n == 1) ? 1 : ( (n == 2) ? 2 : ( (n == 3) ? 3 : ( (n == 6) ? 4 : 5 ) ) ) );
+da nplurals=2; plural=(n != 1);
+de nplurals=2; plural=(n != 1);
+dz nplurals=1; plural=0;
+el nplurals=2; plural=(n != 1);
+en nplurals=2; plural=(n != 1);
+en-gb nplurals=2; plural=(n != 1);
+eo nplurals=2; plural=(n != 1);
+es nplurals=2; plural=(n != 1);
+et nplurals=2; plural=(n != 1);
+eu nplurals=2; plural=(n != 1);
+fa nplurals=1; plural=0;
+fi nplurals=2; plural=(n != 1);
+fil nplurals=2; plural=(n > 1);
+fo nplurals=2; plural=(n != 1);
+fr nplurals=2; plural=(n > 1);
+fur nplurals=2; plural=(n != 1);
+fy nplurals=2; plural=(n != 1);
+ga nplurals=5; plural=(n == 1) ? 0 : ( (n == 2) ? 1 : ( (n < 7) ? 2 : ( (n < 11) ? 3 : 4 ) ) );
+gd nplurals=4; plural=(n == 1 || n == 11) ? 0 : (n == 2 || n == 12) ? 1 : (n > 2 && n < 20) ? 2 : 3;
+gl nplurals=2; plural=(n != 1);
+gu nplurals=2; plural=(n != 1);
+gun nplurals=2; plural=(n > 1);
+ha nplurals=2; plural=(n != 1);
+he nplurals=2; plural=(n != 1);
+hi nplurals=2; plural=(n != 1);
+hr nplurals=3; plural=(n%10 == 1 && n%100 != 11) ? 0 : ( (n%10 >= 2 && n%10 <= 4 && (n%100 < 10 || n%100 >= 20)) ? 1 : 2 );
+hu nplurals=2; plural=(n != 1);
+hy nplurals=2; plural=(n != 1);
+ia nplurals=2; plural=(n != 1);
+id nplurals=1; plural=0;
+is nplurals=2; plural=(n != 1);
+it nplurals=2; plural=(n != 1);
+ja nplurals=1; plural=0;
+jbo nplurals=1; plural=0;
+jv nplurals=2; plural=(n != 0);
+ka nplurals=1; plural=0;
+kk nplurals=1; plural=0;
+km nplurals=1; plural=0;
+kn nplurals=2; plural=(n != 1);
+ko nplurals=1; plural=0;
+ku nplurals=2; plural=(n != 1);
+kw nplurals=4; plural=(n == 1) ? 0 : ( (n == 2) ? 1 : ( (n == 3) ? 2 : 3 ) );
+ky nplurals=1; plural=0;
+lb nplurals=2; plural=(n != 1);
+ln nplurals=2; plural=(n > 1);
+lo nplurals=1; plural=0;
+lt nplurals=3; plural=(n%10 == 1 && n%100 != 11) ? 0 : ( (n%10 >= 2 && (n%100 < 10 || n%100 >= 20)) ? 1 : 2 );
+lv nplurals=3; plural=(n%10 == 1 && n%100 != 11) ? 0 : ( (n != 0) ? 1 : 2 );
+mai nplurals=2; plural=(n != 1);
+mfe nplurals=2; plural=(n > 1);
+mg nplurals=2; plural=(n > 1);
+mi nplurals=2; plural=(n > 1);
+mk nplurals=2; plural=(n == 1 || n%10 == 1) ? 0 : 1;
+ml nplurals=2; plural=(n != 1);
+mn nplurals=2; plural=(n != 1);
+mnk nplurals=3; plural=(n == 0) ? 0 : n == 1 ? 1 : 2;
+mr nplurals=2; plural=(n != 1);
+ms nplurals=1; plural=0;
+mt nplurals=4; plural=(n == 1) ? 0 : ( (n == 0 || (n%100 > 1 && n%100 < 11)) ? 1 : ( (n%100 > 10 && n%100 < 20) ? 2 : 3 ) );
+nah nplurals=2; plural=(n != 1);
+nap nplurals=2; plural=(n != 1);
+nb nplurals=2; plural=(n != 1);
+ne nplurals=2; plural=(n != 1);
+nl nplurals=2; plural=(n != 1);
+nn nplurals=2; plural=(n != 1);
+no nplurals=2; plural=(n != 1);
+nso nplurals=2; plural=(n > 1);
+oc nplurals=2; plural=(n > 1);
+or nplurals=2; plural=(n != 1);
+pa nplurals=2; plural=(n != 1);
+pap nplurals=2; plural=(n != 1);
+pl nplurals=3; plural=(n == 1) ? 0 : ( (n%10 >= 2 && n%10 <= 4 && (n%100 < 10 || n%100 >= 20)) ? 1 : 2 );
+pms nplurals=2; plural=(n != 1);
+ps nplurals=2; plural=(n != 1);
+pt nplurals=2; plural=(n != 1);
+pt-br nplurals=2; plural=(n > 1);
+rm nplurals=2; plural=(n != 1);
+ro nplurals=3; plural=(n == 1) ? 0 : ( (n == 0 || (n%100 > 0 && n%100 < 20)) ? 1 : 2 );
+ru nplurals=3; plural=(n%10 == 1 && n%100 != 11) ? 0 : ( (n%10 >= 2 && n%10 <= 4 && (n%100 < 10 || n%100 >= 20)) ? 1 : 2 );
+sco nplurals=2; plural=(n != 1);
+si nplurals=2; plural=(n != 1);
+sk nplurals=3; plural=(n == 1) ? 0 : ( (n >= 2 && n <= 4) ? 1 : 2 );
+sl nplurals=4; plural=(n%100 == 1) ? 0 : ( (n%100 == 2) ? 1 : ( (n%100 == 3 || n%100 == 4) ? 2 : 3 ) );
+so nplurals=2; plural=(n != 1);
+sq nplurals=2; plural=(n != 1);
+sr nplurals=3; plural=(n%10 == 1 && n%100 != 11) ? 0 : ( (n%10 >= 2 && n%10 <= 4 && (n%100 < 10 || n%100 >= 20)) ? 1 : 2 );
+su nplurals=1; plural=0;
+sv nplurals=2; plural=(n != 1);
+sw nplurals=2; plural=(n != 1);
+ta nplurals=2; plural=(n != 1);
+te nplurals=2; plural=(n != 1);
+tg nplurals=2; plural=(n != 1);
+th nplurals=1; plural=0;
+ti nplurals=2; plural=(n > 1);
+tk nplurals=2; plural=(n != 1);
+tr nplurals=1; plural=0;
+tt nplurals=1; plural=0;
+ug nplurals=1; plural=0;
+uk nplurals=3; plural=(n%10 == 1 && n%100 != 11) ? 0 : ( (n%10 >= 2 && n%10 <= 4 && (n%100 < 10 || n%100 >= 20)) ? 1 : 2 );
+ur nplurals=2; plural=(n != 1);
+uz nplurals=1; plural=0;
+vi nplurals=1; plural=0;
+wa nplurals=2; plural=(n > 1);
+wo nplurals=1; plural=0;
+yo nplurals=2; plural=(n != 1);
+zh nplurals=1; plural=0;
+zh-hans nplurals=1; plural=0;
+zh-hant nplurals=1; plural=0;
+zh-tw nplurals=1; plural=0;
diff --git a/MLEB/Translate/data/xliff-core-1.2-transitional.xsd b/MLEB/Translate/data/xliff-core-1.2-transitional.xsd
new file mode 100644
index 00000000..850cfb87
--- /dev/null
+++ b/MLEB/Translate/data/xliff-core-1.2-transitional.xsd
@@ -0,0 +1,2261 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+
+May-19-2004:
+- Changed the <choice> for ElemType_header, moving minOccurs="0" maxOccurs="unbounded" from its elements
+to <choice> itself.
+- Added <choice> for ElemType_trans-unit to allow "any order" for <context-group>, <count-group>, <prop-group>, <note>, and
+<alt-trans>.
+
+Oct-2005
+- updated version info to 1.2
+- equiv-trans attribute to <trans-unit> element
+- merged-trans attribute for <group> element
+- Add the <seg-source> element as optional in the <trans-unit> and <alt-trans> content models, at the same level as <source>
+- Create a new value "seg" for the mtype attribute of the <mrk> element
+- Add mid as an optional attribute for the <alt-trans> element
+
+Nov-14-2005
+- Changed name attribute for <context-group> from required to optional
+- Added extension point at <xliff>
+
+Jan-9-2006
+- Added alttranstype type attribute to <alt-trans>, and values
+
+Jan-10-2006
+- Corrected error with overwritten purposeValueList
+- Corrected name="AttrType_Version", attribute should have been "name"
+
+-->
+<xsd:schema xmlns:xlf="urn:oasis:names:tc:xliff:document:1.2" xmlns:xsd="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" targetNamespace="urn:oasis:names:tc:xliff:document:1.2" xml:lang="en">
+ <!-- Import for xml:lang and xml:space -->
+ <xsd:import namespace="http://www.w3.org/XML/1998/namespace" schemaLocation="http://www.w3.org/2001/xml.xsd"/>
+ <!-- Attributes Lists -->
+ <xsd:simpleType name="XTend">
+ <xsd:restriction base="xsd:string">
+ <xsd:pattern value="x-[^\s]+"/>
+ </xsd:restriction>
+ </xsd:simpleType>
+ <xsd:simpleType name="context-typeValueList">
+ <xsd:annotation>
+ <xsd:documentation>Values for the attribute 'context-type'.</xsd:documentation>
+ </xsd:annotation>
+ <xsd:restriction base="xsd:string">
+ <xsd:enumeration value="database">
+ <xsd:annotation>
+ <xsd:documentation>Indicates a database content.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="element">
+ <xsd:annotation>
+ <xsd:documentation>Indicates the content of an element within an XML document.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="elementtitle">
+ <xsd:annotation>
+ <xsd:documentation>Indicates the name of an element within an XML document.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="linenumber">
+ <xsd:annotation>
+ <xsd:documentation>Indicates the line number from the sourcefile (see context-type="sourcefile") where the &lt;source&gt; is found.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="numparams">
+ <xsd:annotation>
+ <xsd:documentation>Indicates a the number of parameters contained within the &lt;source&gt;.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="paramnotes">
+ <xsd:annotation>
+ <xsd:documentation>Indicates notes pertaining to the parameters in the &lt;source&gt;.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="record">
+ <xsd:annotation>
+ <xsd:documentation>Indicates the content of a record within a database.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="recordtitle">
+ <xsd:annotation>
+ <xsd:documentation>Indicates the name of a record within a database.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="sourcefile">
+ <xsd:annotation>
+ <xsd:documentation>Indicates the original source file in the case that multiple files are merged to form the original file from which the XLIFF file is created. This differs from the original &lt;file&gt; attribute in that this sourcefile is one of many that make up that file.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ </xsd:restriction>
+ </xsd:simpleType>
+ <xsd:simpleType name="count-typeValueList">
+ <xsd:annotation>
+ <xsd:documentation>Values for the attribute 'count-type'.</xsd:documentation>
+ </xsd:annotation>
+ <xsd:restriction base="xsd:NMTOKEN">
+ <xsd:enumeration value="num-usages">
+ <xsd:annotation>
+ <xsd:documentation>Indicates the count units are items that are used X times in a certain context; example: this is a reusable text unit which is used 42 times in other texts.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="repetition">
+ <xsd:annotation>
+ <xsd:documentation>Indicates the count units are translation units existing already in the same document.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="total">
+ <xsd:annotation>
+ <xsd:documentation>Indicates a total count.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ </xsd:restriction>
+ </xsd:simpleType>
+ <xsd:simpleType name="InlineDelimitersValueList">
+ <xsd:annotation>
+ <xsd:documentation>Values for the attribute 'ctype' when used other elements than &lt;ph&gt; or &lt;x&gt;.</xsd:documentation>
+ </xsd:annotation>
+ <xsd:restriction base="xsd:NMTOKEN">
+ <xsd:enumeration value="bold">
+ <xsd:annotation>
+ <xsd:documentation>Indicates a run of bolded text.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="italic">
+ <xsd:annotation>
+ <xsd:documentation>Indicates a run of text in italics.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="underlined">
+ <xsd:annotation>
+ <xsd:documentation>Indicates a run of underlined text.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="link">
+ <xsd:annotation>
+ <xsd:documentation>Indicates a run of hyper-text.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ </xsd:restriction>
+ </xsd:simpleType>
+ <xsd:simpleType name="InlinePlaceholdersValueList">
+ <xsd:annotation>
+ <xsd:documentation>Values for the attribute 'ctype' when used with &lt;ph&gt; or &lt;x&gt;.</xsd:documentation>
+ </xsd:annotation>
+ <xsd:restriction base="xsd:NMTOKEN">
+ <xsd:enumeration value="image">
+ <xsd:annotation>
+ <xsd:documentation>Indicates a inline image.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="pb">
+ <xsd:annotation>
+ <xsd:documentation>Indicates a page break.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="lb">
+ <xsd:annotation>
+ <xsd:documentation>Indicates a line break.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ </xsd:restriction>
+ </xsd:simpleType>
+ <xsd:simpleType name="mime-typeValueList">
+ <xsd:restriction base="xsd:string">
+ <xsd:pattern value="(text|multipart|message|application|image|audio|video|model)(/.+)*"/>
+ </xsd:restriction>
+ </xsd:simpleType>
+ <xsd:simpleType name="datatypeValueList">
+ <xsd:annotation>
+ <xsd:documentation>Values for the attribute 'datatype'.</xsd:documentation>
+ </xsd:annotation>
+ <xsd:restriction base="xsd:NMTOKEN">
+ <xsd:enumeration value="asp">
+ <xsd:annotation>
+ <xsd:documentation>Indicates Active Server Page data.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="c">
+ <xsd:annotation>
+ <xsd:documentation>Indicates C source file data.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="cdf">
+ <xsd:annotation>
+ <xsd:documentation>Indicates Channel Definition Format (CDF) data.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="cfm">
+ <xsd:annotation>
+ <xsd:documentation>Indicates ColdFusion data.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="cpp">
+ <xsd:annotation>
+ <xsd:documentation>Indicates C++ source file data.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="csharp">
+ <xsd:annotation>
+ <xsd:documentation>Indicates C-Sharp data.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="cstring">
+ <xsd:annotation>
+ <xsd:documentation>Indicates strings from C, ASM, and driver files data.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="csv">
+ <xsd:annotation>
+ <xsd:documentation>Indicates comma-separated values data.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="database">
+ <xsd:annotation>
+ <xsd:documentation>Indicates database data.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="documentfooter">
+ <xsd:annotation>
+ <xsd:documentation>Indicates portions of document that follows data and contains metadata.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="documentheader">
+ <xsd:annotation>
+ <xsd:documentation>Indicates portions of document that precedes data and contains metadata.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="filedialog">
+ <xsd:annotation>
+ <xsd:documentation>Indicates data from standard UI file operations dialogs (e.g., Open, Save, Save As, Export, Import).</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="form">
+ <xsd:annotation>
+ <xsd:documentation>Indicates standard user input screen data.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="html">
+ <xsd:annotation>
+ <xsd:documentation>Indicates HyperText Markup Language (HTML) data - document instance.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="htmlbody">
+ <xsd:annotation>
+ <xsd:documentation>Indicates content within an HTML document’s &lt;body&gt; element.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="ini">
+ <xsd:annotation>
+ <xsd:documentation>Indicates Windows INI file data.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="interleaf">
+ <xsd:annotation>
+ <xsd:documentation>Indicates Interleaf data.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="javaclass">
+ <xsd:annotation>
+ <xsd:documentation>Indicates Java source file data (extension '.java').</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="javapropertyresourcebundle">
+ <xsd:annotation>
+ <xsd:documentation>Indicates Java property resource bundle data.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="javalistresourcebundle">
+ <xsd:annotation>
+ <xsd:documentation>Indicates Java list resource bundle data.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="javascript">
+ <xsd:annotation>
+ <xsd:documentation>Indicates JavaScript source file data.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="jscript">
+ <xsd:annotation>
+ <xsd:documentation>Indicates JScript source file data.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="layout">
+ <xsd:annotation>
+ <xsd:documentation>Indicates information relating to formatting.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="lisp">
+ <xsd:annotation>
+ <xsd:documentation>Indicates LISP source file data.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="margin">
+ <xsd:annotation>
+ <xsd:documentation>Indicates information relating to margin formats.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="menufile">
+ <xsd:annotation>
+ <xsd:documentation>Indicates a file containing menu.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="messagefile">
+ <xsd:annotation>
+ <xsd:documentation>Indicates numerically identified string table.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="mif">
+ <xsd:annotation>
+ <xsd:documentation>Indicates Maker Interchange Format (MIF) data.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="mimetype">
+ <xsd:annotation>
+ <xsd:documentation>Indicates that the datatype attribute value is a MIME Type value and is defined in the mime-type attribute.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="mo">
+ <xsd:annotation>
+ <xsd:documentation>Indicates GNU Machine Object data.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="msglib">
+ <xsd:annotation>
+ <xsd:documentation>Indicates Message Librarian strings created by Novell's Message Librarian Tool.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="pagefooter">
+ <xsd:annotation>
+ <xsd:documentation>Indicates information to be displayed at the bottom of each page of a document.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="pageheader">
+ <xsd:annotation>
+ <xsd:documentation>Indicates information to be displayed at the top of each page of a document.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="parameters">
+ <xsd:annotation>
+ <xsd:documentation>Indicates a list of property values (e.g., settings within INI files or preferences dialog).</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="pascal">
+ <xsd:annotation>
+ <xsd:documentation>Indicates Pascal source file data.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="php">
+ <xsd:annotation>
+ <xsd:documentation>Indicates Hypertext Preprocessor data.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="plaintext">
+ <xsd:annotation>
+ <xsd:documentation>Indicates plain text file (no formatting other than, possibly, wrapping).</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="po">
+ <xsd:annotation>
+ <xsd:documentation>Indicates GNU Portable Object file.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="report">
+ <xsd:annotation>
+ <xsd:documentation>Indicates dynamically generated user defined document. e.g. Oracle Report, Crystal Report, etc.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="resources">
+ <xsd:annotation>
+ <xsd:documentation>Indicates Windows .NET binary resources.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="resx">
+ <xsd:annotation>
+ <xsd:documentation>Indicates Windows .NET Resources.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="rtf">
+ <xsd:annotation>
+ <xsd:documentation>Indicates Rich Text Format (RTF) data.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="sgml">
+ <xsd:annotation>
+ <xsd:documentation>Indicates Standard Generalized Markup Language (SGML) data - document instance.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="sgmldtd">
+ <xsd:annotation>
+ <xsd:documentation>Indicates Standard Generalized Markup Language (SGML) data - Document Type Definition (DTD).</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="svg">
+ <xsd:annotation>
+ <xsd:documentation>Indicates Scalable Vector Graphic (SVG) data.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="vbscript">
+ <xsd:annotation>
+ <xsd:documentation>Indicates VisualBasic Script source file.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="warning">
+ <xsd:annotation>
+ <xsd:documentation>Indicates warning message.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="winres">
+ <xsd:annotation>
+ <xsd:documentation>Indicates Windows (Win32) resources (i.e. resources extracted from an RC script, a message file, or a compiled file).</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="xhtml">
+ <xsd:annotation>
+ <xsd:documentation>Indicates Extensible HyperText Markup Language (XHTML) data - document instance.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="xml">
+ <xsd:annotation>
+ <xsd:documentation>Indicates Extensible Markup Language (XML) data - document instance.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="xmldtd">
+ <xsd:annotation>
+ <xsd:documentation>Indicates Extensible Markup Language (XML) data - Document Type Definition (DTD).</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="xsl">
+ <xsd:annotation>
+ <xsd:documentation>Indicates Extensible Stylesheet Language (XSL) data.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="xul">
+ <xsd:annotation>
+ <xsd:documentation>Indicates XUL elements.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ </xsd:restriction>
+ </xsd:simpleType>
+ <xsd:simpleType name="mtypeValueList">
+ <xsd:annotation>
+ <xsd:documentation>Values for the attribute 'mtype'.</xsd:documentation>
+ </xsd:annotation>
+ <xsd:restriction base="xsd:NMTOKEN">
+ <xsd:enumeration value="abbrev">
+ <xsd:annotation>
+ <xsd:documentation>Indicates the marked text is an abbreviation.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="abbreviated-form">
+ <xsd:annotation>
+ <xsd:documentation>ISO-12620 2.1.8: A term resulting from the omission of any part of the full term while designating the same concept.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="abbreviation">
+ <xsd:annotation>
+ <xsd:documentation>ISO-12620 2.1.8.1: An abbreviated form of a simple term resulting from the omission of some of its letters (e.g. 'adj.' for 'adjective').</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="acronym">
+ <xsd:annotation>
+ <xsd:documentation>ISO-12620 2.1.8.4: An abbreviated form of a term made up of letters from the full form of a multiword term strung together into a sequence pronounced only syllabically (e.g. 'radar' for 'radio detecting and ranging').</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="appellation">
+ <xsd:annotation>
+ <xsd:documentation>ISO-12620: A proper-name term, such as the name of an agency or other proper entity.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="collocation">
+ <xsd:annotation>
+ <xsd:documentation>ISO-12620 2.1.18.1: A recurrent word combination characterized by cohesion in that the components of the collocation must co-occur within an utterance or series of utterances, even though they do not necessarily have to maintain immediate proximity to one another.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="common-name">
+ <xsd:annotation>
+ <xsd:documentation>ISO-12620 2.1.5: A synonym for an international scientific term that is used in general discourse in a given language.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="datetime">
+ <xsd:annotation>
+ <xsd:documentation>Indicates the marked text is a date and/or time.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="equation">
+ <xsd:annotation>
+ <xsd:documentation>ISO-12620 2.1.15: An expression used to represent a concept based on a statement that two mathematical expressions are, for instance, equal as identified by the equal sign (=), or assigned to one another by a similar sign.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="expanded-form">
+ <xsd:annotation>
+ <xsd:documentation>ISO-12620 2.1.7: The complete representation of a term for which there is an abbreviated form.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="formula">
+ <xsd:annotation>
+ <xsd:documentation>ISO-12620 2.1.14: Figures, symbols or the like used to express a concept briefly, such as a mathematical or chemical formula.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="head-term">
+ <xsd:annotation>
+ <xsd:documentation>ISO-12620 2.1.1: The concept designation that has been chosen to head a terminological record.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="initialism">
+ <xsd:annotation>
+ <xsd:documentation>ISO-12620 2.1.8.3: An abbreviated form of a term consisting of some of the initial letters of the words making up a multiword term or the term elements making up a compound term when these letters are pronounced individually (e.g. 'BSE' for 'bovine spongiform encephalopathy').</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="international-scientific-term">
+ <xsd:annotation>
+ <xsd:documentation>ISO-12620 2.1.4: A term that is part of an international scientific nomenclature as adopted by an appropriate scientific body.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="internationalism">
+ <xsd:annotation>
+ <xsd:documentation>ISO-12620 2.1.6: A term that has the same or nearly identical orthographic or phonemic form in many languages.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="logical-expression">
+ <xsd:annotation>
+ <xsd:documentation>ISO-12620 2.1.16: An expression used to represent a concept based on mathematical or logical relations, such as statements of inequality, set relationships, Boolean operations, and the like.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="materials-management-unit">
+ <xsd:annotation>
+ <xsd:documentation>ISO-12620 2.1.17: A unit to track object.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="name">
+ <xsd:annotation>
+ <xsd:documentation>Indicates the marked text is a name.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="near-synonym">
+ <xsd:annotation>
+ <xsd:documentation>ISO-12620 2.1.3: A term that represents the same or a very similar concept as another term in the same language, but for which interchangeability is limited to some contexts and inapplicable in others.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="part-number">
+ <xsd:annotation>
+ <xsd:documentation>ISO-12620 2.1.17.2: A unique alphanumeric designation assigned to an object in a manufacturing system.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="phrase">
+ <xsd:annotation>
+ <xsd:documentation>Indicates the marked text is a phrase.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="phraseological-unit">
+ <xsd:annotation>
+ <xsd:documentation>ISO-12620 2.1.18: Any group of two or more words that form a unit, the meaning of which frequently cannot be deduced based on the combined sense of the words making up the phrase.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="protected">
+ <xsd:annotation>
+ <xsd:documentation>Indicates the marked text should not be translated.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="romanized-form">
+ <xsd:annotation>
+ <xsd:documentation>ISO-12620 2.1.12: A form of a term resulting from an operation whereby non-Latin writing systems are converted to the Latin alphabet.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="seg">
+ <xsd:annotation>
+ <xsd:documentation>Indicates that the marked text represents a segment.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="set-phrase">
+ <xsd:annotation>
+ <xsd:documentation>ISO-12620 2.1.18.2: A fixed, lexicalized phrase.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="short-form">
+ <xsd:annotation>
+ <xsd:documentation>ISO-12620 2.1.8.2: A variant of a multiword term that includes fewer words than the full form of the term (e.g. 'Group of Twenty-four' for 'Intergovernmental Group of Twenty-four on International Monetary Affairs').</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="sku">
+ <xsd:annotation>
+ <xsd:documentation>ISO-12620 2.1.17.1: Stock keeping unit, an inventory item identified by a unique alphanumeric designation assigned to an object in an inventory control system.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="standard-text">
+ <xsd:annotation>
+ <xsd:documentation>ISO-12620 2.1.19: A fixed chunk of recurring text.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="symbol">
+ <xsd:annotation>
+ <xsd:documentation>ISO-12620 2.1.13: A designation of a concept by letters, numerals, pictograms or any combination thereof.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="synonym">
+ <xsd:annotation>
+ <xsd:documentation>ISO-12620 2.1.2: Any term that represents the same or a very similar concept as the main entry term in a term entry.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="synonymous-phrase">
+ <xsd:annotation>
+ <xsd:documentation>ISO-12620 2.1.18.3: Phraseological unit in a language that expresses the same semantic content as another phrase in that same language.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="term">
+ <xsd:annotation>
+ <xsd:documentation>Indicates the marked text is a term.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="transcribed-form">
+ <xsd:annotation>
+ <xsd:documentation>ISO-12620 2.1.11: A form of a term resulting from an operation whereby the characters of one writing system are represented by characters from another writing system, taking into account the pronunciation of the characters converted.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="transliterated-form">
+ <xsd:annotation>
+ <xsd:documentation>ISO-12620 2.1.10: A form of a term resulting from an operation whereby the characters of an alphabetic writing system are represented by characters from another alphabetic writing system.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="truncated-term">
+ <xsd:annotation>
+ <xsd:documentation>ISO-12620 2.1.8.5: An abbreviated form of a term resulting from the omission of one or more term elements or syllables (e.g. 'flu' for 'influenza').</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="variant">
+ <xsd:annotation>
+ <xsd:documentation>ISO-12620 2.1.9: One of the alternate forms of a term.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ </xsd:restriction>
+ </xsd:simpleType>
+ <xsd:simpleType name="restypeValueList">
+ <xsd:annotation>
+ <xsd:documentation>Values for the attribute 'restype'.</xsd:documentation>
+ </xsd:annotation>
+ <xsd:restriction base="xsd:NMTOKEN">
+ <xsd:enumeration value="auto3state">
+ <xsd:annotation>
+ <xsd:documentation>Indicates a Windows RC AUTO3STATE control.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="autocheckbox">
+ <xsd:annotation>
+ <xsd:documentation>Indicates a Windows RC AUTOCHECKBOX control.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="autoradiobutton">
+ <xsd:annotation>
+ <xsd:documentation>Indicates a Windows RC AUTORADIOBUTTON control.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="bedit">
+ <xsd:annotation>
+ <xsd:documentation>Indicates a Windows RC BEDIT control.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="bitmap">
+ <xsd:annotation>
+ <xsd:documentation>Indicates a bitmap, for example a BITMAP resource in Windows.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="button">
+ <xsd:annotation>
+ <xsd:documentation>Indicates a button object, for example a BUTTON control Windows.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="caption">
+ <xsd:annotation>
+ <xsd:documentation>Indicates a caption, such as the caption of a dialog box.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="cell">
+ <xsd:annotation>
+ <xsd:documentation>Indicates the cell in a table, for example the content of the &lt;td&gt; element in HTML.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="checkbox">
+ <xsd:annotation>
+ <xsd:documentation>Indicates check box object, for example a CHECKBOX control in Windows.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="checkboxmenuitem">
+ <xsd:annotation>
+ <xsd:documentation>Indicates a menu item with an associated checkbox.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="checkedlistbox">
+ <xsd:annotation>
+ <xsd:documentation>Indicates a list box, but with a check-box for each item.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="colorchooser">
+ <xsd:annotation>
+ <xsd:documentation>Indicates a color selection dialog.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="combobox">
+ <xsd:annotation>
+ <xsd:documentation>Indicates a combination of edit box and listbox object, for example a COMBOBOX control in Windows.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="comboboxexitem">
+ <xsd:annotation>
+ <xsd:documentation>Indicates an initialization entry of an extended combobox DLGINIT resource block. (code 0x1234).</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="comboboxitem">
+ <xsd:annotation>
+ <xsd:documentation>Indicates an initialization entry of a combobox DLGINIT resource block (code 0x0403).</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="component">
+ <xsd:annotation>
+ <xsd:documentation>Indicates a UI base class element that cannot be represented by any other element.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="contextmenu">
+ <xsd:annotation>
+ <xsd:documentation>Indicates a context menu.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="ctext">
+ <xsd:annotation>
+ <xsd:documentation>Indicates a Windows RC CTEXT control.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="cursor">
+ <xsd:annotation>
+ <xsd:documentation>Indicates a cursor, for example a CURSOR resource in Windows.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="datetimepicker">
+ <xsd:annotation>
+ <xsd:documentation>Indicates a date/time picker.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="defpushbutton">
+ <xsd:annotation>
+ <xsd:documentation>Indicates a Windows RC DEFPUSHBUTTON control.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="dialog">
+ <xsd:annotation>
+ <xsd:documentation>Indicates a dialog box.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="dlginit">
+ <xsd:annotation>
+ <xsd:documentation>Indicates a Windows RC DLGINIT resource block.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="edit">
+ <xsd:annotation>
+ <xsd:documentation>Indicates an edit box object, for example an EDIT control in Windows.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="file">
+ <xsd:annotation>
+ <xsd:documentation>Indicates a filename.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="filechooser">
+ <xsd:annotation>
+ <xsd:documentation>Indicates a file dialog.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="fn">
+ <xsd:annotation>
+ <xsd:documentation>Indicates a footnote.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="font">
+ <xsd:annotation>
+ <xsd:documentation>Indicates a font name.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="footer">
+ <xsd:annotation>
+ <xsd:documentation>Indicates a footer.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="frame">
+ <xsd:annotation>
+ <xsd:documentation>Indicates a frame object.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="grid">
+ <xsd:annotation>
+ <xsd:documentation>Indicates a XUL grid element.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="groupbox">
+ <xsd:annotation>
+ <xsd:documentation>Indicates a groupbox object, for example a GROUPBOX control in Windows.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="header">
+ <xsd:annotation>
+ <xsd:documentation>Indicates a header item.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="heading">
+ <xsd:annotation>
+ <xsd:documentation>Indicates a heading, such has the content of &lt;h1&gt;, &lt;h2&gt;, etc. in HTML.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="hedit">
+ <xsd:annotation>
+ <xsd:documentation>Indicates a Windows RC HEDIT control.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="hscrollbar">
+ <xsd:annotation>
+ <xsd:documentation>Indicates a horizontal scrollbar.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="icon">
+ <xsd:annotation>
+ <xsd:documentation>Indicates an icon, for example an ICON resource in Windows.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="iedit">
+ <xsd:annotation>
+ <xsd:documentation>Indicates a Windows RC IEDIT control.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="keywords">
+ <xsd:annotation>
+ <xsd:documentation>Indicates keyword list, such as the content of the Keywords meta-data in HTML, or a K footnote in WinHelp RTF.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="label">
+ <xsd:annotation>
+ <xsd:documentation>Indicates a label object.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="linklabel">
+ <xsd:annotation>
+ <xsd:documentation>Indicates a label that is also a HTML link (not necessarily a URL).</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="list">
+ <xsd:annotation>
+ <xsd:documentation>Indicates a list (a group of list-items, for example an &lt;ol&gt; or &lt;ul&gt; element in HTML).</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="listbox">
+ <xsd:annotation>
+ <xsd:documentation>Indicates a listbox object, for example an LISTBOX control in Windows.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="listitem">
+ <xsd:annotation>
+ <xsd:documentation>Indicates an list item (an entry in a list).</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="ltext">
+ <xsd:annotation>
+ <xsd:documentation>Indicates a Windows RC LTEXT control.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="menu">
+ <xsd:annotation>
+ <xsd:documentation>Indicates a menu (a group of menu-items).</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="menubar">
+ <xsd:annotation>
+ <xsd:documentation>Indicates a toolbar containing one or more tope level menus.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="menuitem">
+ <xsd:annotation>
+ <xsd:documentation>Indicates a menu item (an entry in a menu).</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="menuseparator">
+ <xsd:annotation>
+ <xsd:documentation>Indicates a XUL menuseparator element.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="message">
+ <xsd:annotation>
+ <xsd:documentation>Indicates a message, for example an entry in a MESSAGETABLE resource in Windows.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="monthcalendar">
+ <xsd:annotation>
+ <xsd:documentation>Indicates a calendar control.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="numericupdown">
+ <xsd:annotation>
+ <xsd:documentation>Indicates an edit box beside a spin control.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="panel">
+ <xsd:annotation>
+ <xsd:documentation>Indicates a catch all for rectangular areas.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="popupmenu">
+ <xsd:annotation>
+ <xsd:documentation>Indicates a standalone menu not necessarily associated with a menubar.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="pushbox">
+ <xsd:annotation>
+ <xsd:documentation>Indicates a pushbox object, for example a PUSHBOX control in Windows.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="pushbutton">
+ <xsd:annotation>
+ <xsd:documentation>Indicates a Windows RC PUSHBUTTON control.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="radio">
+ <xsd:annotation>
+ <xsd:documentation>Indicates a radio button object.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="radiobuttonmenuitem">
+ <xsd:annotation>
+ <xsd:documentation>Indicates a menuitem with associated radio button.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="rcdata">
+ <xsd:annotation>
+ <xsd:documentation>Indicates raw data resources for an application.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="row">
+ <xsd:annotation>
+ <xsd:documentation>Indicates a row in a table.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="rtext">
+ <xsd:annotation>
+ <xsd:documentation>Indicates a Windows RC RTEXT control.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="scrollpane">
+ <xsd:annotation>
+ <xsd:documentation>Indicates a user navigable container used to show a portion of a document.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="separator">
+ <xsd:annotation>
+ <xsd:documentation>Indicates a generic divider object (e.g. menu group separator).</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="shortcut">
+ <xsd:annotation>
+ <xsd:documentation>Windows accelerators, shortcuts in resource or property files.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="spinner">
+ <xsd:annotation>
+ <xsd:documentation>Indicates a UI control to indicate process activity but not progress.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="splitter">
+ <xsd:annotation>
+ <xsd:documentation>Indicates a splitter bar.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="state3">
+ <xsd:annotation>
+ <xsd:documentation>Indicates a Windows RC STATE3 control.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="statusbar">
+ <xsd:annotation>
+ <xsd:documentation>Indicates a window for providing feedback to the users, like 'read-only', etc.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="string">
+ <xsd:annotation>
+ <xsd:documentation>Indicates a string, for example an entry in a STRINGTABLE resource in Windows.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="tabcontrol">
+ <xsd:annotation>
+ <xsd:documentation>Indicates a layers of controls with a tab to select layers.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="table">
+ <xsd:annotation>
+ <xsd:documentation>Indicates a display and edits regular two-dimensional tables of cells.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="textbox">
+ <xsd:annotation>
+ <xsd:documentation>Indicates a XUL textbox element.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="togglebutton">
+ <xsd:annotation>
+ <xsd:documentation>Indicates a UI button that can be toggled to on or off state.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="toolbar">
+ <xsd:annotation>
+ <xsd:documentation>Indicates an array of controls, usually buttons.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="tooltip">
+ <xsd:annotation>
+ <xsd:documentation>Indicates a pop up tool tip text.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="trackbar">
+ <xsd:annotation>
+ <xsd:documentation>Indicates a bar with a pointer indicating a position within a certain range.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="tree">
+ <xsd:annotation>
+ <xsd:documentation>Indicates a control that displays a set of hierarchical data.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="uri">
+ <xsd:annotation>
+ <xsd:documentation>Indicates a URI (URN or URL).</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="userbutton">
+ <xsd:annotation>
+ <xsd:documentation>Indicates a Windows RC USERBUTTON control.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="usercontrol">
+ <xsd:annotation>
+ <xsd:documentation>Indicates a user-defined control like CONTROL control in Windows.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="var">
+ <xsd:annotation>
+ <xsd:documentation>Indicates the text of a variable.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="versioninfo">
+ <xsd:annotation>
+ <xsd:documentation>Indicates version information about a resource like VERSIONINFO in Windows.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="vscrollbar">
+ <xsd:annotation>
+ <xsd:documentation>Indicates a vertical scrollbar.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="window">
+ <xsd:annotation>
+ <xsd:documentation>Indicates a graphical window.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ </xsd:restriction>
+ </xsd:simpleType>
+ <xsd:simpleType name="size-unitValueList">
+ <xsd:annotation>
+ <xsd:documentation>Values for the attribute 'size-unit'.</xsd:documentation>
+ </xsd:annotation>
+ <xsd:restriction base="xsd:NMTOKEN">
+ <xsd:enumeration value="byte">
+ <xsd:annotation>
+ <xsd:documentation>Indicates a size in 8-bit bytes.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="char">
+ <xsd:annotation>
+ <xsd:documentation>Indicates a size in Unicode characters.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="col">
+ <xsd:annotation>
+ <xsd:documentation>Indicates a size in columns. Used for HTML text area.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="cm">
+ <xsd:annotation>
+ <xsd:documentation>Indicates a size in centimeters.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="dlgunit">
+ <xsd:annotation>
+ <xsd:documentation>Indicates a size in dialog units, as defined in Windows resources.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="em">
+ <xsd:annotation>
+ <xsd:documentation>Indicates a size in 'font-size' units (as defined in CSS).</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="ex">
+ <xsd:annotation>
+ <xsd:documentation>Indicates a size in 'x-height' units (as defined in CSS).</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="glyph">
+ <xsd:annotation>
+ <xsd:documentation>Indicates a size in glyphs. A glyph is considered to be one or more combined Unicode characters that represent a single displayable text character. Sometimes referred to as a 'grapheme cluster'</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="in">
+ <xsd:annotation>
+ <xsd:documentation>Indicates a size in inches.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="mm">
+ <xsd:annotation>
+ <xsd:documentation>Indicates a size in millimeters.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="percent">
+ <xsd:annotation>
+ <xsd:documentation>Indicates a size in percentage.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="pixel">
+ <xsd:annotation>
+ <xsd:documentation>Indicates a size in pixels.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="point">
+ <xsd:annotation>
+ <xsd:documentation>Indicates a size in point.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="row">
+ <xsd:annotation>
+ <xsd:documentation>Indicates a size in rows. Used for HTML text area.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ </xsd:restriction>
+ </xsd:simpleType>
+ <xsd:simpleType name="stateValueList">
+ <xsd:annotation>
+ <xsd:documentation>Values for the attribute 'state'.</xsd:documentation>
+ </xsd:annotation>
+ <xsd:restriction base="xsd:NMTOKEN">
+ <xsd:enumeration value="final">
+ <xsd:annotation>
+ <xsd:documentation>Indicates the terminating state.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="needs-adaptation">
+ <xsd:annotation>
+ <xsd:documentation>Indicates only non-textual information needs adaptation.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="needs-l10n">
+ <xsd:annotation>
+ <xsd:documentation>Indicates both text and non-textual information needs adaptation.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="needs-review-adaptation">
+ <xsd:annotation>
+ <xsd:documentation>Indicates only non-textual information needs review.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="needs-review-l10n">
+ <xsd:annotation>
+ <xsd:documentation>Indicates both text and non-textual information needs review.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="needs-review-translation">
+ <xsd:annotation>
+ <xsd:documentation>Indicates that only the text of the item needs to be reviewed.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="needs-translation">
+ <xsd:annotation>
+ <xsd:documentation>Indicates that the item needs to be translated.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="new">
+ <xsd:annotation>
+ <xsd:documentation>Indicates that the item is new. For example, translation units that were not in a previous version of the document.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="signed-off">
+ <xsd:annotation>
+ <xsd:documentation>Indicates that changes are reviewed and approved.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="translated">
+ <xsd:annotation>
+ <xsd:documentation>Indicates that the item has been translated.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ </xsd:restriction>
+ </xsd:simpleType>
+ <xsd:simpleType name="state-qualifierValueList">
+ <xsd:annotation>
+ <xsd:documentation>Values for the attribute 'state-qualifier'.</xsd:documentation>
+ </xsd:annotation>
+ <xsd:restriction base="xsd:NMTOKEN">
+ <xsd:enumeration value="exact-match">
+ <xsd:annotation>
+ <xsd:documentation>Indicates an exact match. An exact match occurs when a source text of a segment is exactly the same as the source text of a segment that was translated previously.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="fuzzy-match">
+ <xsd:annotation>
+ <xsd:documentation>Indicates a fuzzy match. A fuzzy match occurs when a source text of a segment is very similar to the source text of a segment that was translated previously (e.g. when the difference is casing, a few changed words, white-space discripancy, etc.).</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="id-match">
+ <xsd:annotation>
+ <xsd:documentation>Indicates a match based on matching IDs (in addition to matching text).</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="leveraged-glossary">
+ <xsd:annotation>
+ <xsd:documentation>Indicates a translation derived from a glossary.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="leveraged-inherited">
+ <xsd:annotation>
+ <xsd:documentation>Indicates a translation derived from existing translation.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="leveraged-mt">
+ <xsd:annotation>
+ <xsd:documentation>Indicates a translation derived from machine translation.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="leveraged-repository">
+ <xsd:annotation>
+ <xsd:documentation>Indicates a translation derived from a translation repository.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="leveraged-tm">
+ <xsd:annotation>
+ <xsd:documentation>Indicates a translation derived from a translation memory.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="mt-suggestion">
+ <xsd:annotation>
+ <xsd:documentation>Indicates the translation is suggested by machine translation.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="rejected-grammar">
+ <xsd:annotation>
+ <xsd:documentation>Indicates that the item has been rejected because of incorrect grammar.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="rejected-inaccurate">
+ <xsd:annotation>
+ <xsd:documentation>Indicates that the item has been rejected because it is incorrect.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="rejected-length">
+ <xsd:annotation>
+ <xsd:documentation>Indicates that the item has been rejected because it is too long or too short.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="rejected-spelling">
+ <xsd:annotation>
+ <xsd:documentation>Indicates that the item has been rejected because of incorrect spelling.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="tm-suggestion">
+ <xsd:annotation>
+ <xsd:documentation>Indicates the translation is suggested by translation memory.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ </xsd:restriction>
+ </xsd:simpleType>
+ <xsd:simpleType name="unitValueList">
+ <xsd:annotation>
+ <xsd:documentation>Values for the attribute 'unit'.</xsd:documentation>
+ </xsd:annotation>
+ <xsd:restriction base="xsd:NMTOKEN">
+ <xsd:enumeration value="word">
+ <xsd:annotation>
+ <xsd:documentation>Refers to words.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="page">
+ <xsd:annotation>
+ <xsd:documentation>Refers to pages.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="trans-unit">
+ <xsd:annotation>
+ <xsd:documentation>Refers to &lt;trans-unit&gt; elements.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="bin-unit">
+ <xsd:annotation>
+ <xsd:documentation>Refers to &lt;bin-unit&gt; elements.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="glyph">
+ <xsd:annotation>
+ <xsd:documentation>Refers to glyphs.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="item">
+ <xsd:annotation>
+ <xsd:documentation>Refers to &lt;trans-unit&gt; and/or &lt;bin-unit&gt; elements.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="instance">
+ <xsd:annotation>
+ <xsd:documentation>Refers to the occurrences of instances defined by the count-type value.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="character">
+ <xsd:annotation>
+ <xsd:documentation>Refers to characters.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="line">
+ <xsd:annotation>
+ <xsd:documentation>Refers to lines.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="sentence">
+ <xsd:annotation>
+ <xsd:documentation>Refers to sentences.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="paragraph">
+ <xsd:annotation>
+ <xsd:documentation>Refers to paragraphs.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="segment">
+ <xsd:annotation>
+ <xsd:documentation>Refers to segments.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="placeable">
+ <xsd:annotation>
+ <xsd:documentation>Refers to placeables (inline elements).</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ </xsd:restriction>
+ </xsd:simpleType>
+ <xsd:simpleType name="priorityValueList">
+ <xsd:annotation>
+ <xsd:documentation>Values for the attribute 'priority'.</xsd:documentation>
+ </xsd:annotation>
+ <xsd:restriction base="xsd:positiveInteger">
+ <xsd:enumeration value="1">
+ <xsd:annotation>
+ <xsd:documentation>Highest priority.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="2">
+ <xsd:annotation>
+ <xsd:documentation>High priority.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="3">
+ <xsd:annotation>
+ <xsd:documentation>High priority, but not as important as 2.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="4">
+ <xsd:annotation>
+ <xsd:documentation>High priority, but not as important as 3.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="5">
+ <xsd:annotation>
+ <xsd:documentation>Medium priority, but more important than 6.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="6">
+ <xsd:annotation>
+ <xsd:documentation>Medium priority, but less important than 5.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="7">
+ <xsd:annotation>
+ <xsd:documentation>Low priority, but more important than 8.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="8">
+ <xsd:annotation>
+ <xsd:documentation>Low priority, but more important than 9.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="9">
+ <xsd:annotation>
+ <xsd:documentation>Low priority.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="10">
+ <xsd:annotation>
+ <xsd:documentation>Lowest priority.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ </xsd:restriction>
+ </xsd:simpleType>
+ <xsd:simpleType name="reformatValueYesNo">
+ <xsd:restriction base="xsd:string">
+ <xsd:enumeration value="yes">
+ <xsd:annotation>
+ <xsd:documentation>This value indicates that all properties can be reformatted. This value must be used alone.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="no">
+ <xsd:annotation>
+ <xsd:documentation>This value indicates that no properties should be reformatted. This value must be used alone.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ </xsd:restriction>
+ </xsd:simpleType>
+ <xsd:simpleType name="reformatValueList">
+ <xsd:list>
+ <xsd:simpleType>
+ <xsd:union memberTypes="xlf:XTend">
+ <xsd:simpleType>
+ <xsd:restriction base="xsd:string">
+ <xsd:enumeration value="coord">
+ <xsd:annotation>
+ <xsd:documentation>This value indicates that all information in the coord attribute can be modified.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="coord-x">
+ <xsd:annotation>
+ <xsd:documentation>This value indicates that the x information in the coord attribute can be modified.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="coord-y">
+ <xsd:annotation>
+ <xsd:documentation>This value indicates that the y information in the coord attribute can be modified.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="coord-cx">
+ <xsd:annotation>
+ <xsd:documentation>This value indicates that the cx information in the coord attribute can be modified.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="coord-cy">
+ <xsd:annotation>
+ <xsd:documentation>This value indicates that the cy information in the coord attribute can be modified.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="font">
+ <xsd:annotation>
+ <xsd:documentation>This value indicates that all the information in the font attribute can be modified.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="font-name">
+ <xsd:annotation>
+ <xsd:documentation>This value indicates that the name information in the font attribute can be modified.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="font-size">
+ <xsd:annotation>
+ <xsd:documentation>This value indicates that the size information in the font attribute can be modified.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="font-weight">
+ <xsd:annotation>
+ <xsd:documentation>This value indicates that the weight information in the font attribute can be modified.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="css-style">
+ <xsd:annotation>
+ <xsd:documentation>This value indicates that the information in the css-style attribute can be modified.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="style">
+ <xsd:annotation>
+ <xsd:documentation>This value indicates that the information in the style attribute can be modified.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="ex-style">
+ <xsd:annotation>
+ <xsd:documentation>This value indicates that the information in the exstyle attribute can be modified.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ </xsd:restriction>
+ </xsd:simpleType>
+ </xsd:union>
+ </xsd:simpleType>
+ </xsd:list>
+ </xsd:simpleType>
+ <xsd:simpleType name="purposeValueList">
+ <xsd:restriction base="xsd:string">
+ <xsd:enumeration value="information">
+ <xsd:annotation>
+ <xsd:documentation>Indicates that the context is informational in nature, specifying for example, how a term should be translated. Thus, should be displayed to anyone editing the XLIFF document.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="location">
+ <xsd:annotation>
+ <xsd:documentation>Indicates that the context-group is used to specify where the term was found in the translatable source. Thus, it is not displayed.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="match">
+ <xsd:annotation>
+ <xsd:documentation>Indicates that the context information should be used during translation memory lookups. Thus, it is not displayed.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ </xsd:restriction>
+ </xsd:simpleType>
+ <xsd:simpleType name="alttranstypeValueList">
+ <xsd:restriction base="xsd:string">
+ <xsd:enumeration value="proposal">
+ <xsd:annotation>
+ <xsd:documentation>Represents a translation proposal from a translation memory or other resource.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="previous-version">
+ <xsd:annotation>
+ <xsd:documentation>Represents a previous version of the target element.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="rejected">
+ <xsd:annotation>
+ <xsd:documentation>Represents a rejected version of the target element.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="reference">
+ <xsd:annotation>
+ <xsd:documentation>Represents a translation to be used for reference purposes only, for example from a related product or a different language.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ <xsd:enumeration value="accepted">
+ <xsd:annotation>
+ <xsd:documentation>Represents a proposed translation that was used for the translation of the trans-unit, possibly modified.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:enumeration>
+ </xsd:restriction>
+ </xsd:simpleType>
+ <!-- Other Types -->
+ <xsd:complexType name="ElemType_ExternalReference">
+ <xsd:choice>
+ <xsd:element ref="xlf:internal-file"/>
+ <xsd:element ref="xlf:external-file"/>
+ </xsd:choice>
+ </xsd:complexType>
+ <xsd:simpleType name="AttrType_purpose">
+ <xsd:list>
+ <xsd:simpleType>
+ <xsd:union memberTypes="xlf:purposeValueList xlf:XTend"/>
+ </xsd:simpleType>
+ </xsd:list>
+ </xsd:simpleType>
+ <xsd:simpleType name="AttrType_datatype">
+ <xsd:union memberTypes="xlf:datatypeValueList xlf:XTend"/>
+ </xsd:simpleType>
+ <xsd:simpleType name="AttrType_restype">
+ <xsd:union memberTypes="xlf:restypeValueList xlf:XTend"/>
+ </xsd:simpleType>
+ <xsd:simpleType name="AttrType_alttranstype">
+ <xsd:union memberTypes="xlf:alttranstypeValueList xlf:XTend"/>
+ </xsd:simpleType>
+ <xsd:simpleType name="AttrType_context-type">
+ <xsd:union memberTypes="xlf:context-typeValueList xlf:XTend"/>
+ </xsd:simpleType>
+ <xsd:simpleType name="AttrType_state">
+ <xsd:union memberTypes="xlf:stateValueList xlf:XTend"/>
+ </xsd:simpleType>
+ <xsd:simpleType name="AttrType_state-qualifier">
+ <xsd:union memberTypes="xlf:state-qualifierValueList xlf:XTend"/>
+ </xsd:simpleType>
+ <xsd:simpleType name="AttrType_count-type">
+ <xsd:union memberTypes="xlf:restypeValueList xlf:count-typeValueList xlf:datatypeValueList xlf:stateValueList xlf:state-qualifierValueList xlf:XTend"/>
+ </xsd:simpleType>
+ <xsd:simpleType name="AttrType_InlineDelimiters">
+ <xsd:union memberTypes="xlf:InlineDelimitersValueList xlf:XTend"/>
+ </xsd:simpleType>
+ <xsd:simpleType name="AttrType_InlinePlaceholders">
+ <xsd:union memberTypes="xlf:InlinePlaceholdersValueList xlf:XTend"/>
+ </xsd:simpleType>
+ <xsd:simpleType name="AttrType_size-unit">
+ <xsd:union memberTypes="xlf:size-unitValueList xlf:XTend"/>
+ </xsd:simpleType>
+ <xsd:simpleType name="AttrType_mtype">
+ <xsd:union memberTypes="xlf:mtypeValueList xlf:XTend"/>
+ </xsd:simpleType>
+ <xsd:simpleType name="AttrType_unit">
+ <xsd:union memberTypes="xlf:unitValueList xlf:XTend"/>
+ </xsd:simpleType>
+ <xsd:simpleType name="AttrType_priority">
+ <xsd:union memberTypes="xlf:priorityValueList"/>
+ </xsd:simpleType>
+ <xsd:simpleType name="AttrType_reformat">
+ <xsd:union memberTypes="xlf:reformatValueYesNo xlf:reformatValueList"/>
+ </xsd:simpleType>
+ <xsd:simpleType name="AttrType_YesNo">
+ <xsd:restriction base="xsd:NMTOKEN">
+ <xsd:enumeration value="yes"/>
+ <xsd:enumeration value="no"/>
+ </xsd:restriction>
+ </xsd:simpleType>
+ <xsd:simpleType name="AttrType_Position">
+ <xsd:restriction base="xsd:NMTOKEN">
+ <xsd:enumeration value="open"/>
+ <xsd:enumeration value="close"/>
+ </xsd:restriction>
+ </xsd:simpleType>
+ <xsd:simpleType name="AttrType_assoc">
+ <xsd:restriction base="xsd:NMTOKEN">
+ <xsd:enumeration value="preceding"/>
+ <xsd:enumeration value="following"/>
+ <xsd:enumeration value="both"/>
+ </xsd:restriction>
+ </xsd:simpleType>
+ <xsd:simpleType name="AttrType_annotates">
+ <xsd:restriction base="xsd:NMTOKEN">
+ <xsd:enumeration value="source"/>
+ <xsd:enumeration value="target"/>
+ <xsd:enumeration value="general"/>
+ </xsd:restriction>
+ </xsd:simpleType>
+ <xsd:simpleType name="AttrType_Coordinates">
+ <xsd:annotation>
+ <xsd:documentation>Values for the attribute 'coord'.</xsd:documentation>
+ </xsd:annotation>
+ <xsd:restriction base="xsd:string">
+ <xsd:pattern value="(-?\d+|#);(-?\d+|#);(-?\d+|#);(-?\d+|#)"/>
+ </xsd:restriction>
+ </xsd:simpleType>
+ <xsd:simpleType name="AttrType_Version">
+ <xsd:annotation>
+ <xsd:documentation>Version values: 1.0 and 1.1 are allowed for backward compatibility.</xsd:documentation>
+ </xsd:annotation>
+ <xsd:restriction base="xsd:string">
+ <xsd:enumeration value="1.2"/>
+ <xsd:enumeration value="1.1"/>
+ <xsd:enumeration value="1.0"/>
+ </xsd:restriction>
+ </xsd:simpleType>
+ <!-- Groups -->
+ <xsd:group name="ElemGroup_TextContent">
+ <xsd:choice>
+ <xsd:element ref="xlf:g"/>
+ <xsd:element ref="xlf:bpt"/>
+ <xsd:element ref="xlf:ept"/>
+ <xsd:element ref="xlf:ph"/>
+ <xsd:element ref="xlf:it"/>
+ <xsd:element ref="xlf:mrk"/>
+ <xsd:element ref="xlf:x"/>
+ <xsd:element ref="xlf:bx"/>
+ <xsd:element ref="xlf:ex"/>
+ </xsd:choice>
+ </xsd:group>
+ <xsd:attributeGroup name="AttrGroup_TextContent">
+ <xsd:attribute name="id" type="xsd:string" use="required"/>
+ <xsd:attribute name="ts" type="xsd:string" use="optional"/>
+ <xsd:attribute name="xid" type="xsd:string" use="optional"/>
+ <xsd:attribute name="equiv-text" type="xsd:string" use="optional"/>
+ <xsd:anyAttribute namespace="##any" processContents="skip"/>
+ </xsd:attributeGroup>
+ <!-- XLIFF Structure -->
+ <xsd:element name="xliff">
+ <xsd:complexType>
+ <xsd:sequence maxOccurs="unbounded">
+ <xsd:any maxOccurs="unbounded" minOccurs="0" namespace="##other" processContents="skip"/>
+ <xsd:element ref="xlf:file"/>
+ </xsd:sequence>
+ <xsd:attribute name="version" type="xlf:AttrType_Version" use="required"/>
+ <xsd:attribute ref="xml:lang" use="optional"/>
+ <xsd:anyAttribute namespace="##any" processContents="skip"/>
+ </xsd:complexType>
+ </xsd:element>
+ <xsd:element name="file">
+ <xsd:complexType>
+ <xsd:sequence>
+ <xsd:element minOccurs="0" ref="xlf:header"/>
+ <xsd:element ref="xlf:body"/>
+ </xsd:sequence>
+ <xsd:attribute name="original" type="xsd:string" use="required"/>
+ <xsd:attribute name="source-language" type="xsd:language" use="required"/>
+ <xsd:attribute name="datatype" type="xlf:AttrType_datatype" use="required"/>
+ <xsd:attribute name="tool-id" type="xsd:string" use="optional"/>
+ <xsd:attribute default="manual" name="tool" type="xsd:string" use="optional"/>
+ <xsd:attribute name="date" type="xsd:dateTime" use="optional"/>
+ <xsd:attribute ref="xml:space" use="optional"/>
+ <xsd:attribute name="ts" type="xsd:string" use="optional"/>
+ <xsd:attribute name="category" type="xsd:string" use="optional"/>
+ <xsd:attribute name="target-language" type="xsd:language" use="optional"/>
+ <xsd:attribute name="product-name" type="xsd:string" use="optional"/>
+ <xsd:attribute name="product-version" type="xsd:string" use="optional"/>
+ <xsd:attribute name="build-num" type="xsd:string" use="optional"/>
+ <xsd:anyAttribute namespace="##any" processContents="skip"/>
+ </xsd:complexType>
+ <xsd:unique name="U_group_id">
+ <xsd:selector xpath=".//xlf:group"/>
+ <xsd:field xpath="@id"/>
+ </xsd:unique>
+ <xsd:key name="K_unit_id">
+ <xsd:selector xpath=".//xlf:trans-unit|.//xlf:bin-unit"/>
+ <xsd:field xpath="@id"/>
+ </xsd:key>
+ <xsd:keyref name="KR_unit_id" refer="xlf:K_unit_id">
+ <xsd:selector xpath=".//bpt|.//ept|.//it|.//ph|.//g|.//x|.//bx|.//ex|.//sub"/>
+ <xsd:field xpath="@xid"/>
+ </xsd:keyref>
+ <xsd:key name="K_tool-id">
+ <xsd:selector xpath="xlf:header/xlf:tool"/>
+ <xsd:field xpath="@tool-id"/>
+ </xsd:key>
+ <xsd:keyref name="KR_file_tool-id" refer="xlf:K_tool-id">
+ <xsd:selector xpath="."/>
+ <xsd:field xpath="@tool-id"/>
+ </xsd:keyref>
+ <xsd:keyref name="KR_phase_tool-id" refer="xlf:K_tool-id">
+ <xsd:selector xpath="xlf:header/xlf:phase-group/xlf:phase"/>
+ <xsd:field xpath="@tool-id"/>
+ </xsd:keyref>
+ <xsd:keyref name="KR_alt-trans_tool-id" refer="xlf:K_tool-id">
+ <xsd:selector xpath=".//xlf:trans-unit/xlf:alt-trans"/>
+ <xsd:field xpath="@tool-id"/>
+ </xsd:keyref>
+ <xsd:key name="K_count-group_name">
+ <xsd:selector xpath=".//xlf:count-group"/>
+ <xsd:field xpath="@name"/>
+ </xsd:key>
+ <xsd:unique name="U_context-group_name">
+ <xsd:selector xpath=".//xlf:context-group"/>
+ <xsd:field xpath="@name"/>
+ </xsd:unique>
+ <xsd:key name="K_phase-name">
+ <xsd:selector xpath="xlf:header/xlf:phase-group/xlf:phase"/>
+ <xsd:field xpath="@phase-name"/>
+ </xsd:key>
+ <xsd:keyref name="KR_phase-name" refer="xlf:K_phase-name">
+ <xsd:selector xpath=".//xlf:count|.//xlf:trans-unit|.//xlf:target|.//bin-unit|.//bin-target"/>
+ <xsd:field xpath="@phase-name"/>
+ </xsd:keyref>
+ <xsd:unique name="U_uid">
+ <xsd:selector xpath=".//xlf:external-file"/>
+ <xsd:field xpath="@uid"/>
+ </xsd:unique>
+ </xsd:element>
+ <xsd:element name="header">
+ <xsd:complexType>
+ <xsd:sequence>
+ <xsd:element minOccurs="0" name="skl" type="xlf:ElemType_ExternalReference"/>
+ <xsd:element minOccurs="0" ref="xlf:phase-group"/>
+ <xsd:choice maxOccurs="unbounded" minOccurs="0">
+ <xsd:element name="glossary" type="xlf:ElemType_ExternalReference"/>
+ <xsd:element name="reference" type="xlf:ElemType_ExternalReference"/>
+ <xsd:element ref="xlf:count-group"/>
+ <xsd:element ref="xlf:prop-group"/>
+ <xsd:element ref="xlf:note"/>
+ <xsd:element ref="xlf:tool"/>
+ </xsd:choice>
+ <xsd:any maxOccurs="unbounded" minOccurs="0" namespace="##other" processContents="skip"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ </xsd:element>
+ <xsd:element name="internal-file">
+ <xsd:complexType>
+ <xsd:simpleContent>
+ <xsd:extension base="xsd:string">
+ <xsd:attribute name="form" type="xsd:string"/>
+ <xsd:attribute name="crc" type="xsd:NMTOKEN"/>
+ </xsd:extension>
+ </xsd:simpleContent>
+ </xsd:complexType>
+ </xsd:element>
+ <xsd:element name="external-file">
+ <xsd:complexType>
+ <xsd:attribute name="href" type="xsd:string" use="required"/>
+ <xsd:attribute name="crc" type="xsd:NMTOKEN"/>
+ <xsd:attribute name="uid" type="xsd:NMTOKEN"/>
+ </xsd:complexType>
+ </xsd:element>
+ <xsd:element name="note">
+ <xsd:complexType>
+ <xsd:simpleContent>
+ <xsd:extension base="xsd:string">
+ <xsd:attribute ref="xml:lang" use="optional"/>
+ <xsd:attribute default="1" name="priority" type="xlf:AttrType_priority" use="optional"/>
+ <xsd:attribute name="from" type="xsd:string" use="optional"/>
+ <xsd:attribute default="general" name="annotates" type="xlf:AttrType_annotates" use="optional"/>
+ </xsd:extension>
+ </xsd:simpleContent>
+ </xsd:complexType>
+ </xsd:element>
+ <xsd:element name="phase-group">
+ <xsd:complexType>
+ <xsd:sequence maxOccurs="unbounded">
+ <xsd:element ref="xlf:phase"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ </xsd:element>
+ <xsd:element name="phase">
+ <xsd:complexType>
+ <xsd:sequence maxOccurs="unbounded" minOccurs="0">
+ <xsd:element ref="xlf:note"/>
+ </xsd:sequence>
+ <xsd:attribute name="phase-name" type="xsd:string" use="required"/>
+ <xsd:attribute name="process-name" type="xsd:string" use="required"/>
+ <xsd:attribute name="company-name" type="xsd:string" use="optional"/>
+ <xsd:attribute name="tool-id" type="xsd:string" use="optional"/>
+ <xsd:attribute name="tool" type="xsd:string" use="optional"/>
+ <xsd:attribute name="date" type="xsd:dateTime" use="optional"/>
+ <xsd:attribute name="job-id" type="xsd:string" use="optional"/>
+ <xsd:attribute name="contact-name" type="xsd:string" use="optional"/>
+ <xsd:attribute name="contact-email" type="xsd:string" use="optional"/>
+ <xsd:attribute name="contact-phone" type="xsd:string" use="optional"/>
+ </xsd:complexType>
+ </xsd:element>
+ <xsd:element name="count-group">
+ <xsd:complexType>
+ <xsd:sequence maxOccurs="unbounded" minOccurs="0">
+ <xsd:element ref="xlf:count"/>
+ </xsd:sequence>
+ <xsd:attribute name="name" type="xsd:string" use="required"/>
+ </xsd:complexType>
+ </xsd:element>
+ <xsd:element name="count">
+ <xsd:complexType>
+ <xsd:simpleContent>
+ <xsd:extension base="xsd:string">
+ <xsd:attribute name="count-type" type="xlf:AttrType_count-type" use="optional"/>
+ <xsd:attribute name="phase-name" type="xsd:string" use="optional"/>
+ <xsd:attribute default="word" name="unit" type="xlf:AttrType_unit" use="optional"/>
+ </xsd:extension>
+ </xsd:simpleContent>
+ </xsd:complexType>
+ </xsd:element>
+ <xsd:element name="context-group">
+ <xsd:complexType>
+ <xsd:sequence maxOccurs="unbounded">
+ <xsd:element ref="xlf:context"/>
+ </xsd:sequence>
+ <xsd:attribute name="name" type="xsd:string" use="optional"/>
+ <xsd:attribute name="crc" type="xsd:NMTOKEN" use="optional"/>
+ <xsd:attribute name="purpose" type="xlf:AttrType_purpose" use="optional"/>
+ </xsd:complexType>
+ </xsd:element>
+ <xsd:element name="context">
+ <xsd:complexType>
+ <xsd:simpleContent>
+ <xsd:extension base="xsd:string">
+ <xsd:attribute name="context-type" type="xlf:AttrType_context-type" use="required"/>
+ <xsd:attribute default="no" name="match-mandatory" type="xlf:AttrType_YesNo" use="optional"/>
+ <xsd:attribute name="crc" type="xsd:NMTOKEN" use="optional"/>
+ </xsd:extension>
+ </xsd:simpleContent>
+ </xsd:complexType>
+ </xsd:element>
+ <xsd:element name="prop-group">
+ <xsd:complexType>
+ <xsd:sequence maxOccurs="unbounded">
+ <xsd:element ref="xlf:prop"/>
+ </xsd:sequence>
+ <xsd:attribute name="name" type="xsd:string" use="optional"/>
+ </xsd:complexType>
+ </xsd:element>
+ <xsd:element name="prop">
+ <xsd:complexType>
+ <xsd:simpleContent>
+ <xsd:extension base="xsd:string">
+ <xsd:attribute name="prop-type" type="xsd:string" use="required"/>
+ <xsd:attribute ref="xml:lang" use="optional"/>
+ </xsd:extension>
+ </xsd:simpleContent>
+ </xsd:complexType>
+ </xsd:element>
+ <xsd:element name="tool">
+ <xsd:complexType mixed="true">
+ <xsd:sequence>
+ <xsd:any namespace="##any" processContents="skip" minOccurs="0" maxOccurs="unbounded"/>
+ </xsd:sequence>
+ <xsd:attribute name="tool-id" type="xsd:string" use="required"/>
+ <xsd:attribute name="tool-name" type="xsd:string" use="required"/>
+ <xsd:attribute name="tool-version" type="xsd:string" use="optional"/>
+ <xsd:attribute name="tool-company" type="xsd:string" use="optional"/>
+ <xsd:anyAttribute namespace="##any" processContents="skip"/>
+ </xsd:complexType>
+ </xsd:element>
+ <xsd:element name="body">
+ <xsd:complexType>
+ <xsd:choice maxOccurs="unbounded" minOccurs="0">
+ <xsd:element maxOccurs="unbounded" minOccurs="0" ref="xlf:group"/>
+ <xsd:element maxOccurs="unbounded" minOccurs="0" ref="xlf:trans-unit"/>
+ <xsd:element maxOccurs="unbounded" minOccurs="0" ref="xlf:bin-unit"/>
+ </xsd:choice>
+ </xsd:complexType>
+ </xsd:element>
+ <xsd:element name="group">
+ <xsd:complexType>
+ <xsd:sequence>
+ <xsd:sequence>
+ <xsd:element maxOccurs="unbounded" minOccurs="0" ref="xlf:context-group"/>
+ <xsd:element maxOccurs="unbounded" minOccurs="0" ref="xlf:count-group"/>
+ <xsd:element maxOccurs="unbounded" minOccurs="0" ref="xlf:prop-group"/>
+ <xsd:element maxOccurs="unbounded" minOccurs="0" ref="xlf:note"/>
+ <xsd:any maxOccurs="unbounded" minOccurs="0" namespace="##other" processContents="skip"/>
+ </xsd:sequence>
+ <xsd:choice maxOccurs="unbounded">
+ <xsd:element maxOccurs="unbounded" minOccurs="0" ref="xlf:group"/>
+ <xsd:element maxOccurs="unbounded" minOccurs="0" ref="xlf:trans-unit"/>
+ <xsd:element maxOccurs="unbounded" minOccurs="0" ref="xlf:bin-unit"/>
+ </xsd:choice>
+ </xsd:sequence>
+ <xsd:attribute name="id" type="xsd:string" use="optional"/>
+ <xsd:attribute name="datatype" type="xlf:AttrType_datatype" use="optional"/>
+ <xsd:attribute default="default" ref="xml:space" use="optional"/>
+ <xsd:attribute name="ts" type="xsd:string" use="optional"/>
+ <xsd:attribute name="restype" type="xlf:AttrType_restype" use="optional"/>
+ <xsd:attribute name="resname" type="xsd:string" use="optional"/>
+ <xsd:attribute name="extradata" type="xsd:string" use="optional"/>
+ <xsd:attribute name="extype" type="xsd:string" use="optional"/>
+ <xsd:attribute name="help-id" type="xsd:NMTOKEN" use="optional"/>
+ <xsd:attribute name="menu" type="xsd:string" use="optional"/>
+ <xsd:attribute name="menu-option" type="xsd:string" use="optional"/>
+ <xsd:attribute name="menu-name" type="xsd:string" use="optional"/>
+ <xsd:attribute name="coord" type="xlf:AttrType_Coordinates" use="optional"/>
+ <xsd:attribute name="font" type="xsd:string" use="optional"/>
+ <xsd:attribute name="css-style" type="xsd:string" use="optional"/>
+ <xsd:attribute name="style" type="xsd:NMTOKEN" use="optional"/>
+ <xsd:attribute name="exstyle" type="xsd:NMTOKEN" use="optional"/>
+ <xsd:attribute default="yes" name="translate" type="xlf:AttrType_YesNo" use="optional"/>
+ <xsd:attribute default="yes" name="reformat" type="xlf:AttrType_reformat" use="optional"/>
+ <xsd:attribute default="pixel" name="size-unit" type="xlf:AttrType_size-unit" use="optional"/>
+ <xsd:attribute name="maxwidth" type="xsd:NMTOKEN" use="optional"/>
+ <xsd:attribute name="minwidth" type="xsd:NMTOKEN" use="optional"/>
+ <xsd:attribute name="maxheight" type="xsd:NMTOKEN" use="optional"/>
+ <xsd:attribute name="minheight" type="xsd:NMTOKEN" use="optional"/>
+ <xsd:attribute name="maxbytes" type="xsd:NMTOKEN" use="optional"/>
+ <xsd:attribute name="minbytes" type="xsd:NMTOKEN" use="optional"/>
+ <xsd:attribute name="charclass" type="xsd:string" use="optional"/>
+ <xsd:attribute default="no" name="merged-trans" type="xlf:AttrType_YesNo" use="optional"/>
+ <xsd:anyAttribute namespace="##any" processContents="skip"/>
+ </xsd:complexType>
+ </xsd:element>
+ <xsd:element name="trans-unit">
+ <xsd:complexType>
+ <xsd:sequence>
+ <xsd:element ref="xlf:source"/>
+ <xsd:element minOccurs="0" ref="xlf:seg-source"/>
+ <xsd:element minOccurs="0" ref="xlf:target"/>
+ <xsd:choice maxOccurs="unbounded" minOccurs="0">
+ <xsd:element ref="xlf:context-group"/>
+ <xsd:element ref="xlf:count-group"/>
+ <xsd:element ref="xlf:prop-group"/>
+ <xsd:element ref="xlf:note"/>
+ <xsd:element ref="xlf:alt-trans"/>
+ </xsd:choice>
+ <xsd:any maxOccurs="unbounded" minOccurs="0" namespace="##other" processContents="skip"/>
+ </xsd:sequence>
+ <xsd:attribute name="id" type="xsd:string" use="required"/>
+ <xsd:attribute name="approved" type="xlf:AttrType_YesNo" use="optional"/>
+ <xsd:attribute default="yes" name="translate" type="xlf:AttrType_YesNo" use="optional"/>
+ <xsd:attribute default="yes" name="reformat" type="xlf:AttrType_reformat" use="optional"/>
+ <xsd:attribute default="default" ref="xml:space" use="optional"/>
+ <xsd:attribute name="datatype" type="xlf:AttrType_datatype" use="optional"/>
+ <xsd:attribute name="ts" type="xsd:string" use="optional"/>
+ <xsd:attribute name="phase-name" type="xsd:string" use="optional"/>
+ <xsd:attribute name="restype" type="xlf:AttrType_restype" use="optional"/>
+ <xsd:attribute name="resname" type="xsd:string" use="optional"/>
+ <xsd:attribute name="extradata" type="xsd:string" use="optional"/>
+ <xsd:attribute name="extype" type="xsd:string" use="optional"/>
+ <xsd:attribute name="help-id" type="xsd:NMTOKEN" use="optional"/>
+ <xsd:attribute name="menu" type="xsd:string" use="optional"/>
+ <xsd:attribute name="menu-option" type="xsd:string" use="optional"/>
+ <xsd:attribute name="menu-name" type="xsd:string" use="optional"/>
+ <xsd:attribute name="coord" type="xlf:AttrType_Coordinates" use="optional"/>
+ <xsd:attribute name="font" type="xsd:string" use="optional"/>
+ <xsd:attribute name="css-style" type="xsd:string" use="optional"/>
+ <xsd:attribute name="style" type="xsd:NMTOKEN" use="optional"/>
+ <xsd:attribute name="exstyle" type="xsd:NMTOKEN" use="optional"/>
+ <xsd:attribute default="pixel" name="size-unit" type="xlf:AttrType_size-unit" use="optional"/>
+ <xsd:attribute name="maxwidth" type="xsd:NMTOKEN" use="optional"/>
+ <xsd:attribute name="minwidth" type="xsd:NMTOKEN" use="optional"/>
+ <xsd:attribute name="maxheight" type="xsd:NMTOKEN" use="optional"/>
+ <xsd:attribute name="minheight" type="xsd:NMTOKEN" use="optional"/>
+ <xsd:attribute name="maxbytes" type="xsd:NMTOKEN" use="optional"/>
+ <xsd:attribute name="minbytes" type="xsd:NMTOKEN" use="optional"/>
+ <xsd:attribute name="charclass" type="xsd:string" use="optional"/>
+ <xsd:attribute default="yes" name="merged-trans" type="xlf:AttrType_YesNo" use="optional"/>
+ <xsd:anyAttribute namespace="##any" processContents="skip"/>
+ </xsd:complexType>
+ <xsd:unique name="U_tu_segsrc_mid">
+ <xsd:selector xpath="./xlf:seg-source/xlf:mrk"/>
+ <xsd:field xpath="@mid"/>
+ </xsd:unique>
+ <xsd:keyref name="KR_tu_segsrc_mid" refer="xlf:U_tu_segsrc_mid">
+ <xsd:selector xpath="./xlf:target/xlf:mrk|./xlf:alt-trans"/>
+ <xsd:field xpath="@mid"/>
+ </xsd:keyref>
+ </xsd:element>
+ <xsd:element name="source">
+ <xsd:complexType mixed="true">
+ <xsd:group maxOccurs="unbounded" minOccurs="0" ref="xlf:ElemGroup_TextContent"/>
+ <xsd:attribute ref="xml:lang" use="optional"/>
+ <xsd:attribute name="ts" type="xsd:string" use="optional"/>
+ <xsd:anyAttribute namespace="##any" processContents="skip"/>
+ </xsd:complexType>
+ <xsd:unique name="U_source_bpt_rid">
+ <xsd:selector xpath=".//xlf:bpt"/>
+ <xsd:field xpath="@rid"/>
+ </xsd:unique>
+ <xsd:keyref name="KR_source_ept_rid" refer="xlf:U_source_bpt_rid">
+ <xsd:selector xpath=".//xlf:ept"/>
+ <xsd:field xpath="@rid"/>
+ </xsd:keyref>
+ <xsd:unique name="U_source_bx_rid">
+ <xsd:selector xpath=".//xlf:bx"/>
+ <xsd:field xpath="@rid"/>
+ </xsd:unique>
+ <xsd:keyref name="KR_source_ex_rid" refer="xlf:U_source_bx_rid">
+ <xsd:selector xpath=".//xlf:ex"/>
+ <xsd:field xpath="@rid"/>
+ </xsd:keyref>
+ </xsd:element>
+ <xsd:element name="seg-source">
+ <xsd:complexType mixed="true">
+ <xsd:group maxOccurs="unbounded" minOccurs="0" ref="xlf:ElemGroup_TextContent"/>
+ <xsd:attribute ref="xml:lang" use="optional"/>
+ <xsd:attribute name="ts" type="xsd:string" use="optional"/>
+ <xsd:anyAttribute namespace="##any" processContents="skip"/>
+ </xsd:complexType>
+ <xsd:unique name="U_segsrc_bpt_rid">
+ <xsd:selector xpath=".//xlf:bpt"/>
+ <xsd:field xpath="@rid"/>
+ </xsd:unique>
+ <xsd:keyref name="KR_segsrc_ept_rid" refer="xlf:U_segsrc_bpt_rid">
+ <xsd:selector xpath=".//xlf:ept"/>
+ <xsd:field xpath="@rid"/>
+ </xsd:keyref>
+ <xsd:unique name="U_segsrc_bx_rid">
+ <xsd:selector xpath=".//xlf:bx"/>
+ <xsd:field xpath="@rid"/>
+ </xsd:unique>
+ <xsd:keyref name="KR_segsrc_ex_rid" refer="xlf:U_segsrc_bx_rid">
+ <xsd:selector xpath=".//xlf:ex"/>
+ <xsd:field xpath="@rid"/>
+ </xsd:keyref>
+ </xsd:element>
+ <xsd:element name="target">
+ <xsd:complexType mixed="true">
+ <xsd:group maxOccurs="unbounded" minOccurs="0" ref="xlf:ElemGroup_TextContent"/>
+ <xsd:attribute name="state" type="xlf:AttrType_state" use="optional"/>
+ <xsd:attribute name="state-qualifier" type="xlf:AttrType_state-qualifier" use="optional"/>
+ <xsd:attribute name="phase-name" type="xsd:NMTOKEN" use="optional"/>
+ <xsd:attribute ref="xml:lang" use="optional"/>
+ <xsd:attribute name="ts" type="xsd:string" use="optional"/>
+ <xsd:attribute name="restype" type="xlf:AttrType_restype" use="optional"/>
+ <xsd:attribute name="resname" type="xsd:string" use="optional"/>
+ <xsd:attribute name="coord" type="xlf:AttrType_Coordinates" use="optional"/>
+ <xsd:attribute name="font" type="xsd:string" use="optional"/>
+ <xsd:attribute name="css-style" type="xsd:string" use="optional"/>
+ <xsd:attribute name="style" type="xsd:NMTOKEN" use="optional"/>
+ <xsd:attribute name="exstyle" type="xsd:NMTOKEN" use="optional"/>
+ <xsd:attribute default="yes" name="equiv-trans" type="xlf:AttrType_YesNo" use="optional"/>
+ <xsd:anyAttribute namespace="##any" processContents="skip"/>
+ </xsd:complexType>
+ <xsd:unique name="U_target_bpt_rid">
+ <xsd:selector xpath=".//xlf:bpt"/>
+ <xsd:field xpath="@rid"/>
+ </xsd:unique>
+ <xsd:keyref name="KR_target_ept_rid" refer="xlf:U_target_bpt_rid">
+ <xsd:selector xpath=".//xlf:ept"/>
+ <xsd:field xpath="@rid"/>
+ </xsd:keyref>
+ <xsd:unique name="U_target_bx_rid">
+ <xsd:selector xpath=".//xlf:bx"/>
+ <xsd:field xpath="@rid"/>
+ </xsd:unique>
+ <xsd:keyref name="KR_target_ex_rid" refer="xlf:U_target_bx_rid">
+ <xsd:selector xpath=".//xlf:ex"/>
+ <xsd:field xpath="@rid"/>
+ </xsd:keyref>
+ </xsd:element>
+ <xsd:element name="alt-trans">
+ <xsd:complexType>
+ <xsd:sequence>
+ <xsd:element minOccurs="0" ref="xlf:source"/>
+ <xsd:element minOccurs="0" ref="xlf:seg-source"/>
+ <xsd:element maxOccurs="unbounded" ref="xlf:target"/>
+ <xsd:element maxOccurs="unbounded" minOccurs="0" ref="xlf:context-group"/>
+ <xsd:element maxOccurs="unbounded" minOccurs="0" ref="xlf:prop-group"/>
+ <xsd:element maxOccurs="unbounded" minOccurs="0" ref="xlf:note"/>
+ <xsd:any maxOccurs="unbounded" minOccurs="0" namespace="##other" processContents="skip"/>
+ </xsd:sequence>
+ <xsd:attribute name="match-quality" type="xsd:string" use="optional"/>
+ <xsd:attribute name="tool-id" type="xsd:string" use="optional"/>
+ <xsd:attribute name="tool" type="xsd:string" use="optional"/>
+ <xsd:attribute name="crc" type="xsd:NMTOKEN" use="optional"/>
+ <xsd:attribute ref="xml:lang" use="optional"/>
+ <xsd:attribute name="origin" type="xsd:string" use="optional"/>
+ <xsd:attribute name="datatype" type="xlf:AttrType_datatype" use="optional"/>
+ <xsd:attribute default="default" ref="xml:space" use="optional"/>
+ <xsd:attribute name="ts" type="xsd:string" use="optional"/>
+ <xsd:attribute name="restype" type="xlf:AttrType_restype" use="optional"/>
+ <xsd:attribute name="resname" type="xsd:string" use="optional"/>
+ <xsd:attribute name="extradata" type="xsd:string" use="optional"/>
+ <xsd:attribute name="extype" type="xsd:string" use="optional"/>
+ <xsd:attribute name="help-id" type="xsd:NMTOKEN" use="optional"/>
+ <xsd:attribute name="menu" type="xsd:string" use="optional"/>
+ <xsd:attribute name="menu-option" type="xsd:string" use="optional"/>
+ <xsd:attribute name="menu-name" type="xsd:string" use="optional"/>
+ <xsd:attribute name="mid" type="xsd:NMTOKEN" use="optional"/>
+ <xsd:attribute name="coord" type="xlf:AttrType_Coordinates" use="optional"/>
+ <xsd:attribute name="font" type="xsd:string" use="optional"/>
+ <xsd:attribute name="css-style" type="xsd:string" use="optional"/>
+ <xsd:attribute name="style" type="xsd:NMTOKEN" use="optional"/>
+ <xsd:attribute name="exstyle" type="xsd:NMTOKEN" use="optional"/>
+ <xsd:attribute name="phase-name" type="xsd:NMTOKEN" use="optional"/>
+ <xsd:attribute default="proposal" name="alttranstype" type="xlf:AttrType_alttranstype" use="optional"/>
+ <xsd:anyAttribute namespace="##any" processContents="skip"/>
+ </xsd:complexType>
+ <xsd:unique name="U_at_segsrc_mid">
+ <xsd:selector xpath="./xlf:seg-source/xlf:mrk"/>
+ <xsd:field xpath="@mid"/>
+ </xsd:unique>
+ <xsd:keyref name="KR_at_segsrc_mid" refer="xlf:U_at_segsrc_mid">
+ <xsd:selector xpath="./xlf:target/xlf:mrk"/>
+ <xsd:field xpath="@mid"/>
+ </xsd:keyref>
+ </xsd:element>
+ <xsd:element name="bin-unit">
+ <xsd:complexType>
+ <xsd:sequence>
+ <xsd:element ref="xlf:bin-source"/>
+ <xsd:element minOccurs="0" ref="xlf:bin-target"/>
+ <xsd:choice maxOccurs="unbounded" minOccurs="0">
+ <xsd:element ref="xlf:context-group"/>
+ <xsd:element ref="xlf:count-group"/>
+ <xsd:element ref="xlf:prop-group"/>
+ <xsd:element ref="xlf:note"/>
+ <xsd:element ref="xlf:trans-unit"/>
+ </xsd:choice>
+ <xsd:any maxOccurs="unbounded" minOccurs="0" namespace="##other" processContents="skip"/>
+ </xsd:sequence>
+ <xsd:attribute name="id" type="xsd:string" use="required"/>
+ <xsd:attribute name="mime-type" type="xlf:mime-typeValueList" use="required"/>
+ <xsd:attribute name="approved" type="xlf:AttrType_YesNo" use="optional"/>
+ <xsd:attribute default="yes" name="translate" type="xlf:AttrType_YesNo" use="optional"/>
+ <xsd:attribute default="yes" name="reformat" type="xlf:AttrType_reformat" use="optional"/>
+ <xsd:attribute name="ts" type="xsd:string" use="optional"/>
+ <xsd:attribute name="restype" type="xlf:AttrType_restype" use="optional"/>
+ <xsd:attribute name="resname" type="xsd:string" use="optional"/>
+ <xsd:attribute name="phase-name" type="xsd:string" use="optional"/>
+ <xsd:anyAttribute namespace="##any" processContents="skip"/>
+ </xsd:complexType>
+ </xsd:element>
+ <xsd:element name="bin-source">
+ <xsd:complexType>
+ <xsd:choice>
+ <xsd:element ref="xlf:internal-file"/>
+ <xsd:element ref="xlf:external-file"/>
+ </xsd:choice>
+ <xsd:attribute name="ts" type="xsd:string" use="optional"/>
+ <xsd:anyAttribute namespace="##any" processContents="skip"/>
+ </xsd:complexType>
+ </xsd:element>
+ <xsd:element name="bin-target">
+ <xsd:complexType>
+ <xsd:choice>
+ <xsd:element ref="xlf:internal-file"/>
+ <xsd:element ref="xlf:external-file"/>
+ </xsd:choice>
+ <xsd:attribute name="mime-type" type="xlf:mime-typeValueList" use="optional"/>
+ <xsd:attribute name="ts" type="xsd:string" use="optional"/>
+ <xsd:attribute name="state" type="xlf:AttrType_state" use="optional"/>
+ <xsd:attribute name="state-qualifier" type="xlf:AttrType_state-qualifier" use="optional"/>
+ <xsd:attribute name="phase-name" type="xsd:NMTOKEN" use="optional"/>
+ <xsd:attribute name="restype" type="xlf:AttrType_restype" use="optional"/>
+ <xsd:attribute name="resname" type="xsd:string" use="optional"/>
+ <xsd:anyAttribute namespace="##any" processContents="skip"/>
+ </xsd:complexType>
+ </xsd:element>
+ <!-- Element for inline codes -->
+ <xsd:element name="g">
+ <xsd:complexType mixed="true">
+ <xsd:group maxOccurs="unbounded" minOccurs="0" ref="xlf:ElemGroup_TextContent"/>
+ <xsd:attribute name="ctype" type="xlf:AttrType_InlineDelimiters" use="optional"/>
+ <xsd:attribute default="yes" name="clone" type="xlf:AttrType_YesNo" use="optional"/>
+ <xsd:attributeGroup ref="xlf:AttrGroup_TextContent"/>
+ </xsd:complexType>
+ </xsd:element>
+ <xsd:element name="x">
+ <xsd:complexType>
+ <xsd:attribute name="ctype" type="xlf:AttrType_InlinePlaceholders" use="optional"/>
+ <xsd:attribute default="yes" name="clone" type="xlf:AttrType_YesNo" use="optional"/>
+ <xsd:attributeGroup ref="xlf:AttrGroup_TextContent"/>
+ </xsd:complexType>
+ </xsd:element>
+ <xsd:element name="bx">
+ <xsd:complexType>
+ <xsd:attribute name="rid" type="xsd:NMTOKEN" use="optional"/>
+ <xsd:attribute name="ctype" type="xlf:AttrType_InlineDelimiters" use="optional"/>
+ <xsd:attribute default="yes" name="clone" type="xlf:AttrType_YesNo" use="optional"/>
+ <xsd:attributeGroup ref="xlf:AttrGroup_TextContent"/>
+ </xsd:complexType>
+ </xsd:element>
+ <xsd:element name="ex">
+ <xsd:complexType>
+ <xsd:attribute name="rid" type="xsd:NMTOKEN" use="optional"/>
+ <xsd:attributeGroup ref="xlf:AttrGroup_TextContent"/>
+ </xsd:complexType>
+ </xsd:element>
+ <xsd:element name="ph">
+ <xsd:complexType mixed="true">
+ <xsd:sequence maxOccurs="unbounded" minOccurs="0">
+ <xsd:element ref="xlf:sub"/>
+ </xsd:sequence>
+ <xsd:attribute name="ctype" type="xlf:AttrType_InlinePlaceholders" use="optional"/>
+ <xsd:attribute name="crc" type="xsd:string" use="optional"/>
+ <xsd:attribute name="assoc" type="xlf:AttrType_assoc" use="optional"/>
+ <xsd:attributeGroup ref="xlf:AttrGroup_TextContent"/>
+ </xsd:complexType>
+ </xsd:element>
+ <xsd:element name="bpt">
+ <xsd:complexType mixed="true">
+ <xsd:sequence maxOccurs="unbounded" minOccurs="0">
+ <xsd:element ref="xlf:sub"/>
+ </xsd:sequence>
+ <xsd:attribute name="rid" type="xsd:NMTOKEN" use="optional"/>
+ <xsd:attribute name="ctype" type="xlf:AttrType_InlineDelimiters" use="optional"/>
+ <xsd:attribute name="crc" type="xsd:string" use="optional"/>
+ <xsd:attributeGroup ref="xlf:AttrGroup_TextContent"/>
+ </xsd:complexType>
+ </xsd:element>
+ <xsd:element name="ept">
+ <xsd:complexType mixed="true">
+ <xsd:sequence maxOccurs="unbounded" minOccurs="0">
+ <xsd:element ref="xlf:sub"/>
+ </xsd:sequence>
+ <xsd:attribute name="rid" type="xsd:NMTOKEN" use="optional"/>
+ <xsd:attribute name="crc" type="xsd:string" use="optional"/>
+ <xsd:attributeGroup ref="xlf:AttrGroup_TextContent"/>
+ </xsd:complexType>
+ </xsd:element>
+ <xsd:element name="it">
+ <xsd:complexType mixed="true">
+ <xsd:sequence maxOccurs="unbounded" minOccurs="0">
+ <xsd:element ref="xlf:sub"/>
+ </xsd:sequence>
+ <xsd:attribute name="pos" type="xlf:AttrType_Position" use="required"/>
+ <xsd:attribute name="rid" type="xsd:NMTOKEN" use="optional"/>
+ <xsd:attribute name="ctype" type="xlf:AttrType_InlineDelimiters" use="optional"/>
+ <xsd:attribute name="crc" type="xsd:string" use="optional"/>
+ <xsd:attributeGroup ref="xlf:AttrGroup_TextContent"/>
+ </xsd:complexType>
+ </xsd:element>
+ <xsd:element name="sub">
+ <xsd:complexType mixed="true">
+ <xsd:group maxOccurs="unbounded" minOccurs="0" ref="xlf:ElemGroup_TextContent"/>
+ <xsd:attribute name="datatype" type="xlf:AttrType_datatype" use="optional"/>
+ <xsd:attribute name="ctype" type="xlf:AttrType_InlineDelimiters" use="optional"/>
+ <xsd:attribute name="xid" type="xsd:string" use="optional"/>
+ </xsd:complexType>
+ </xsd:element>
+ <xsd:element name="mrk">
+ <xsd:complexType mixed="true">
+ <xsd:group maxOccurs="unbounded" minOccurs="0" ref="xlf:ElemGroup_TextContent"/>
+ <xsd:attribute name="mtype" type="xlf:AttrType_mtype" use="required"/>
+ <xsd:attribute name="mid" type="xsd:NMTOKEN" use="optional"/>
+ <xsd:attribute name="comment" type="xsd:string" use="optional"/>
+ <xsd:attribute name="ts" type="xsd:string" use="optional"/>
+ <xsd:anyAttribute namespace="##any" processContents="skip"/>
+ </xsd:complexType>
+ </xsd:element>
+</xsd:schema>
diff --git a/MLEB/Translate/data/xliff-template.xml b/MLEB/Translate/data/xliff-template.xml
new file mode 100644
index 00000000..ddbd89cd
--- /dev/null
+++ b/MLEB/Translate/data/xliff-template.xml
@@ -0,0 +1,7 @@
+<?xml version="1.0"?>
+<xliff xmlns="urn:oasis:names:tc:xliff:document:1.2" version="1.2">
+ <file source-language="en" datatype="plaintext" original="unknown">
+ <body>
+ </body>
+ </file>
+</xliff>
diff --git a/MLEB/Translate/ffs/AndroidXmlFFS.php b/MLEB/Translate/ffs/AndroidXmlFFS.php
new file mode 100644
index 00000000..4c931f83
--- /dev/null
+++ b/MLEB/Translate/ffs/AndroidXmlFFS.php
@@ -0,0 +1,208 @@
+<?php
+/**
+ * Support for XML translation format used by Android.
+ *
+ * @file
+ * @author Niklas Laxström
+ * @license GPL-2.0+
+ */
+
+/**
+ * Support for XML translation format used by Android.
+ * @since 2012-08-19
+ * @ingroup FFS
+ */
+class AndroidXmlFFS extends SimpleFFS {
+ protected static $pluralWords = array(
+ 'zero' => 1,
+ 'one' => 1,
+ 'two' => 1,
+ 'few' => 1,
+ 'many' => 1,
+ 'other' => 1,
+ );
+
+ public function supportsFuzzy() {
+ return 'yes';
+ }
+
+ public function getFileExtensions() {
+ return array( '.xml' );
+ }
+
+ /**
+ * @param string $data
+ * @return array Parsed data.
+ */
+ public function readFromVariable( $data ) {
+ $reader = new SimpleXMLElement( $data );
+
+ $messages = array();
+ $mangler = $this->group->getMangler();
+
+ /** @var SimpleXMLElement $element */
+ foreach ( $reader as $element ) {
+ $key = (string)$element['name'];
+
+ if ( $element->getName() === 'string' ) {
+ $value = $this->readElementContents( $element );
+ } elseif ( $element->getName() === 'plurals' ) {
+ $forms = array();
+ foreach ( $element as $item ) {
+ $forms[(string)$item['quantity']] = $this->readElementContents( $item );
+ }
+ $value = $this->flattenPlural( $forms );
+ } else {
+ wfDebug( __METHOD__ . ': Unknown XML element name.' );
+ continue;
+ }
+
+ if ( isset( $element['fuzzy'] ) && (string)$element['fuzzy'] === 'true' ) {
+ $value = TRANSLATE_FUZZY . $value;
+ }
+
+ $messages[$key] = $value;
+ }
+
+ return array(
+ 'AUTHORS' => array(), // @todo
+ 'MESSAGES' => $mangler->mangle( $messages ),
+ );
+ }
+
+ protected function readElementContents( $element ) {
+ return stripcslashes( (string)$element );
+ }
+
+ protected function formatElementContents( $contents ) {
+ // Kudos to the brilliant person who invented this braindead file format
+ return addcslashes( $contents, '"\'' );
+ }
+
+ protected function writeReal( MessageCollection $collection ) {
+ $template = <<<XML
+<?xml version="1.0" encoding="utf-8"?>
+<resources></resources>
+XML;
+
+ $writer = new SimpleXMLElement( $template );
+ $mangler = $this->group->getMangler();
+
+ $collection->filter( 'hastranslation', false );
+ if ( count( $collection ) === 0 ) {
+ return '';
+ }
+
+ /**
+ * @var $m TMessage
+ */
+ foreach ( $collection as $key => $m ) {
+ $key = $mangler->unmangle( $key );
+
+ $value = $m->translation();
+ $value = str_replace( TRANSLATE_FUZZY, '', $value );
+
+ // Handle plurals
+ if ( strpos( $value, '{{PLURAL' ) === false ) {
+ $element = $writer->addChild( 'string', $this->formatElementContents( $value ) );
+ } else {
+ $element = $writer->addChild( 'plurals' );
+ $forms = $this->unflattenPlural( $value );
+ foreach ( $forms as $quantity => $content ) {
+ $item = $element->addChild( 'item', $this->formatElementContents( $content ) );
+ $item->addAttribute( 'quantity', $quantity );
+ }
+ }
+
+ $element->addAttribute( 'name', $key );
+ // This is non-standard
+ if ( $m->hasTag( 'fuzzy' ) ) {
+ $element->addAttribute( 'fuzzy', 'true' );
+ }
+ }
+
+ // Make the output pretty with DOMDocument
+ $dom = new DOMDocument( '1.0' );
+ $dom->formatOutput = true;
+ $dom->loadXML( $writer->asXML() );
+
+ return $dom->saveXML();
+ }
+
+ /**
+ * Flattens array of plurals into string.
+ *
+ * @param array $forms array
+ * @return string
+ */
+ protected function flattenPlural( array $forms ) {
+ $pls = '{{PLURAL';
+ foreach ( $forms as $key => $value ) {
+ $pls .= "|$key=$value";
+ }
+
+ $pls .= "}}";
+ return $pls;
+ }
+
+ /**
+ * Converts the flattened plural into messages
+ *
+ * @param string $message
+ * @return array
+ */
+ protected function unflattenPlural( $message ) {
+ $regex = '~\{\{PLURAL\|(.*?)}}~s';
+ $matches = array();
+ $match = array();
+
+ while ( preg_match( $regex, $message, $match ) ) {
+ $uniqkey = TranslateUtils::getPlaceholder();
+ $matches[$uniqkey] = $match;
+ $message = preg_replace( $regex, $uniqkey, $message, 1 );
+ }
+
+ // No plurals, should not happen.
+ if ( !count( $matches ) ) {
+ return array();
+ }
+
+ // The final array of alternative plurals forms.
+ $alts = array();
+
+ /*
+ * Then loop trough each plural block and replacing the placeholders
+ * to construct the alternatives. Produces invalid output if there is
+ * multiple plural bocks which don't have the same set of keys.
+ */
+ $pluralChoice = implode( '|', array_keys( self::$pluralWords ) );
+ $regex = "~($pluralChoice)\s*=\s*(.+)~s";
+ foreach ( $matches as $ph => $plu ) {
+ $forms = explode( '|', $plu[1] );
+
+ foreach ( $forms as $form ) {
+ if ( $form === '' ) {
+ continue;
+ }
+
+ $match = array();
+ if ( !preg_match( $regex, $form, $match ) ) {
+ // No quantity key was provided
+ continue;
+ }
+
+ $formWord = $match[1];
+ $value = $match[2];
+ if ( !isset( $alts[$formWord] ) ) {
+ $alts[$formWord] = $message;
+ }
+
+ $string = $alts[$formWord];
+
+ $alts[$formWord] = str_replace( $ph, $value, $string );
+ }
+ }
+
+ return $alts;
+ }
+}
diff --git a/MLEB/Translate/ffs/AppleFFS.php b/MLEB/Translate/ffs/AppleFFS.php
new file mode 100644
index 00000000..3926151b
--- /dev/null
+++ b/MLEB/Translate/ffs/AppleFFS.php
@@ -0,0 +1,215 @@
+<?php
+
+/**
+ * AppleFFS class implements support for Apple .strings files.
+ * This class reads and writes only UTF-8 files.
+ *
+ * This class has not yet been battle-tested, so beware.
+ *
+ * @author Brion Vibber <bvibber@wikimedia.org>
+ *
+ * @ingroup FFS
+ * @since 2014.02
+ */
+class AppleFFS extends SimpleFFS {
+ public function supportsFuzzy() {
+ return 'write';
+ }
+
+ public function getFileExtensions() {
+ return array( '.strings' );
+ }
+
+ // READ
+
+ /**
+ * @param array $data
+ * @return array Parsed data.
+ * @throws MWException
+ */
+ public function readFromVariable( $data ) {
+ $lines = explode( "\n", $data );
+ $authors = $messages = array();
+ $linecontinuation = false;
+
+ $value = '';
+ foreach ( $lines as $line ) {
+ if ( $linecontinuation ) {
+ $linecontinuation = false;
+ $valuecont = $line;
+ $value .= $valuecont;
+ } else {
+ if ( $line === '' ) {
+ continue;
+ }
+
+ if ( substr( $line, 0, 2 ) === '//' ) {
+ // Single-line comment
+ $match = array();
+ $ok = preg_match( '~//\s*Author:\s*(.*)~', $line, $match );
+ if ( $ok ) {
+ $authors[] = $match[1];
+ }
+ continue;
+ }
+
+ if ( substr( $line, 0, 2 ) === '/*' ) {
+ if ( strpos( $line, '*/', 2 ) === false ) {
+ $linecontinuation = true;
+ }
+ continue;
+ }
+
+ list( $key, $value ) = self::readRow( $line );
+ $messages[$key] = $value;
+ }
+ }
+
+ $messages = $this->group->getMangler()->mangle( $messages );
+
+ return array(
+ 'AUTHORS' => $authors,
+ 'MESSAGES' => $messages,
+ );
+ }
+
+ /**
+ * Parses non-empty strings file row to key and value.
+ * @param string $line
+ * @throws MWException
+ * @return array( string $key, string $val )
+ */
+ public static function readRow( $line ) {
+ $match = array();
+ if ( preg_match( '/^"((?:\\\"|[^"])*)"\s*=\s*"((?:\\\"|[^"])*)"\s*;\s*$/', $line, $match ) ) {
+ $key = self::unescapeString( $match[1] );
+ $value = self::unescapeString( $match[2] );
+ if ( $key === '' ) {
+ throw new MWException( "Empty key in line $line" );
+ }
+ return array( $key, $value );
+ } else {
+ throw new MWException( "Unrecognized line format: $line" );
+ }
+ }
+
+ // Write
+
+ /**
+ * @param MessageCollection $collection
+ * @return string
+ */
+ protected function writeReal( MessageCollection $collection ) {
+ $header = $this->doHeader( $collection );
+ $header .= $this->doAuthors( $collection );
+ $header .= "\n";
+
+ $output = '';
+ $mangler = $this->group->getMangler();
+
+ /**
+ * @var TMessage $m
+ */
+ foreach ( $collection as $key => $m ) {
+ $value = $m->translation();
+ $value = str_replace( TRANSLATE_FUZZY, '', $value );
+
+ if ( $value === '' ) {
+ continue;
+ }
+
+ // Just to give an overview of translation quality.
+ if ( $m->hasTag( 'fuzzy' ) ) {
+ $output .= "// Fuzzy\n";
+ }
+
+ $key = $mangler->unmangle( $key );
+ $output .= self::writeRow( $key, $value );
+ }
+
+ if ( $output ) {
+ $data = $header . $output;
+ } else {
+ $data = $header;
+ }
+
+ return $data;
+ }
+
+ /**
+ * Writes well-formed properties file row with key and value.
+ * @param string $key
+ * @param string $value
+ * @return string
+ */
+ public static function writeRow( $key, $value ) {
+ return self::quoteString( $key ) . ' = ' . self::quoteString( $value ) . ';' . "\n";
+ }
+
+ /**
+ * Quote and escape Obj-C-style strings for .strings format
+ */
+ protected static function quoteString( $str ) {
+ return '"' . self::escapeString( $str ) . '"';
+ }
+
+ /**
+ * Escape Obj-C-style strings; use backslash-escapes etc.
+ *
+ * @param string $str
+ * @return string
+ */
+ protected static function escapeString( $str ) {
+ $str = addcslashes( $str, '\\"' );
+ $str = str_replace( "\n", '\\n', $str );
+ return $str;
+ }
+
+ /**
+ * Unescape Obj-C-style strings; can include backslash-escapes
+ *
+ * @todo support \UXXXX
+ *
+ * @param string $str
+ * @return string
+ */
+ protected static function unescapeString( $str ) {
+ return stripcslashes( $str );
+ }
+
+ /**
+ * @param MessageCollection $collection
+ * @return string
+ */
+ protected function doHeader( MessageCollection $collection ) {
+ if ( isset( $this->extra['header'] ) ) {
+ $output = $this->extra['header'];
+ } else {
+ global $wgSitename;
+
+ $code = $collection->code;
+ $name = TranslateUtils::getLanguageName( $code );
+ $native = TranslateUtils::getLanguageName( $code, $code );
+ $output = "// Messages for $name ($native)\n";
+ $output .= "// Exported from $wgSitename\n";
+ }
+
+ return $output;
+ }
+
+ /**
+ * @param MessageCollection $collection
+ * @return string
+ */
+ protected function doAuthors( MessageCollection $collection ) {
+ $output = '';
+ $authors = $collection->getAuthors();
+ $authors = $this->filterAuthors( $authors, $collection->code );
+
+ foreach ( $authors as $author ) {
+ $output .= "// Author: $author\n";
+ }
+
+ return $output;
+ }
+}
diff --git a/MLEB/Translate/ffs/DtdFFS.php b/MLEB/Translate/ffs/DtdFFS.php
new file mode 100644
index 00000000..cab36efd
--- /dev/null
+++ b/MLEB/Translate/ffs/DtdFFS.php
@@ -0,0 +1,113 @@
+<?php
+/**
+ * Implements FFS for DTD file format.
+ *
+ * @file
+ * @author Guillaume Duhamel
+ * @author Niklas Laxström
+ * @author Siebrand Mazeland
+ * @copyright Copyright © 2009-2010, Guillaume Duhamel, Niklas Laxström, Siebrand Mazeland
+ * @license GPL-2.0+
+ */
+
+/**
+ * File format support for DTD.
+ *
+ * @ingroup FFS
+ */
+class DtdFFS extends SimpleFFS {
+ public function getFileExtensions() {
+ return array( '.dtd' );
+ }
+
+ /**
+ * @param $data string
+ * @return array Parsed data.
+ */
+ public function readFromVariable( $data ) {
+ preg_match_all( ',# Author: ([^\n]+)\n,', $data, $matches );
+ $authors = array();
+
+ $count = count( $matches[1] );
+ for ( $i = 0; $i < $count; $i++ ) {
+ $authors[] = $matches[1][$i];
+ }
+
+ preg_match_all( ',<!ENTITY[ ]+([^ ]+)\s+"([^"]+)"[^>]*>,', $data, $matches );
+
+ $keys = $matches[1];
+ $values = $matches[2];
+
+ $messages = array();
+
+ $count = count( $matches[1] );
+ for ( $i = 0; $i < $count; $i++ ) {
+ $messages[$keys[$i]] = str_replace(
+ array( '&quot;', '&#34;', '&#39;' ),
+ array( '"', '"', "'" ),
+ $values[$i] );
+ }
+
+ $messages = $this->group->getMangler()->mangle( $messages );
+
+ return array(
+ 'AUTHORS' => $authors,
+ 'MESSAGES' => $messages,
+ );
+ }
+
+ protected function writeReal( MessageCollection $collection ) {
+ $collection->loadTranslations();
+
+ $header = "<!--\n";
+ $header .= $this->doHeader( $collection );
+ $header .= $this->doAuthors( $collection );
+ $header .= "-->\n";
+
+ $output = '';
+ $mangler = $this->group->getMangler();
+
+ /**
+ * @var TMessage $m
+ */
+ foreach ( $collection as $key => $m ) {
+ $key = $mangler->unmangle( $key );
+ $trans = $m->translation();
+ $trans = str_replace( TRANSLATE_FUZZY, '', $trans );
+
+ if ( $trans === '' ) {
+ continue;
+ }
+
+ $trans = str_replace( '"', '&quot;', $trans );
+ $output .= "<!ENTITY $key \"$trans\">\n";
+ }
+
+ return $output ? $header . $output : false;
+ }
+
+ protected function doHeader( MessageCollection $collection ) {
+ global $wgSitename;
+
+ $code = $collection->code;
+ $name = TranslateUtils::getLanguageName( $code );
+ $native = TranslateUtils::getLanguageName( $code, $code );
+
+ $output = "# Messages for $name ($native)\n";
+ $output .= "# Exported from $wgSitename\n\n";
+
+ return $output;
+ }
+
+ protected function doAuthors( MessageCollection $collection ) {
+ $output = '';
+ $authors = $collection->getAuthors();
+ $authors = $this->filterAuthors( $authors, $collection->code );
+
+ foreach ( $authors as $author ) {
+ $output .= "# Author: $author\n";
+ }
+
+ return $output;
+ }
+}
diff --git a/MLEB/Translate/ffs/FFS.php b/MLEB/Translate/ffs/FFS.php
new file mode 100644
index 00000000..3c425e9e
--- /dev/null
+++ b/MLEB/Translate/ffs/FFS.php
@@ -0,0 +1,85 @@
+<?php
+/**
+ * File format support classes.
+ *
+ * These classes handle parsing and generating various different
+ * file formats where translation messages are stored.
+ *
+ * @file
+ * @defgroup FFS File format support
+ * @author Niklas Laxström
+ * @copyright Copyright © 2008-2013, Niklas Laxström
+ * @license GPL-2.0+
+ */
+
+/**
+ * Interface for file system support classes.
+ * @ingroup FFS
+ */
+interface FFS {
+ public function __construct( FileBasedMessageGroup $group );
+
+ /**
+ * Set the file's location in the system
+ * @param string $target Filesystem path for exported files.
+ */
+ public function setWritePath( $target );
+
+ /**
+ * Get the file's location in the system
+ * @return string
+ */
+ public function getWritePath();
+
+ /**
+ * Will parse messages, authors, and any custom data from the file
+ * and return it in associative array with keys like \c AUTHORS and
+ * \c MESSAGES.
+ * @param string $code Language code.
+ * @return array|bool Parsed data or false on failure.
+ */
+ public function read( $code );
+
+ /**
+ * Same as read(), but takes the data as a parameter. The caller
+ * is supposed to know in what language the translations are.
+ * @param string $data Formatted messages.
+ * @return array Parsed data.
+ */
+ public function readFromVariable( $data );
+
+ /**
+ * Writes to the location provided with setWritePath and group specific
+ * directory structure. Exports translations included in the given
+ * collection with any special handling needed.
+ * @param $collection MessageCollection
+ */
+ public function write( MessageCollection $collection );
+
+ /**
+ * Quick shortcut for getting the plain exported data.
+ * Same as write(), but returns the output instead of writing it into
+ * a file.
+ * @param MessageCollection $collection
+ * @return string
+ */
+ public function writeIntoVariable( MessageCollection $collection );
+
+ /**
+ * Query the capabilities of this FFS. Allowed values are:
+ * - yes
+ * - write (ignored on read)
+ * - no (stripped on write)
+ * @return string
+ * @since 2013-03-05
+ */
+ public function supportsFuzzy();
+
+ /**
+ * Return the commonly used file extensions for these formats.
+ * Include the dot.
+ * @return string[]
+ * @since 2013-04
+ */
+ public function getFileExtensions();
+}
diff --git a/MLEB/Translate/ffs/FlatPhpFFS.php b/MLEB/Translate/ffs/FlatPhpFFS.php
new file mode 100644
index 00000000..55a49e7e
--- /dev/null
+++ b/MLEB/Translate/ffs/FlatPhpFFS.php
@@ -0,0 +1,139 @@
+<?php
+/**
+ * PHP variables file format handler.
+ *
+ * @file
+ * @author Niklas Laxström
+ * @author Siebrand Mazeland
+ * @copyright Copyright © 2008-2010, Niklas Laxström, Siebrand Mazeland
+ * @license GPL-2.0+
+ */
+
+/**
+ * Implements file format support for PHP files which consist of multiple
+ * variable assignments.
+ */
+class FlatPhpFFS extends SimpleFFS {
+ public function getFileExtensions() {
+ return array( '.php' );
+ }
+
+ //
+ // READ
+ //
+
+ /**
+ * @param string $data
+ * @return array Parsed data.
+ */
+ public function readFromVariable( $data ) {
+ # Authors first
+ $matches = array();
+ preg_match_all( '/^ \* @author\s+(.+)$/m', $data, $matches );
+ $authors = $matches[1];
+
+ # Then messages
+ $matches = array();
+ $regex = '/^\$(.*?)\s*=\s*[\'"](.*?)[\'"];.*?$/mus';
+ preg_match_all( $regex, $data, $matches, PREG_SET_ORDER );
+ $messages = array();
+
+ foreach ( $matches as $_ ) {
+ $legal = Title::legalChars();
+ $key = preg_replace_callback( "/([^$legal]|\\\\)/u",
+ function( $m ) {
+ return '\x' . dechex( ord( $m[0] ) );
+ },
+ $_[1]
+ );
+ $value = str_replace( array( "\'", "\\\\" ), array( "'", "\\" ), $_[2] );
+ $messages[$key] = $value;
+ }
+
+ $messages = $this->group->getMangler()->mangle( $messages );
+
+ return array(
+ 'AUTHORS' => $authors,
+ 'MESSAGES' => $messages,
+ );
+ }
+
+ //
+ // WRITE
+ //
+ protected function writeReal( MessageCollection $collection ) {
+ if ( isset( $this->extra['header'] ) ) {
+ $output = $this->extra['header'];
+ } else {
+ $output = "<?php\n";
+ }
+
+ $output .= $this->doHeader( $collection );
+
+ $mangler = $this->group->getMangler();
+
+ /**
+ * @var TMessage $item
+ */
+ foreach ( $collection as $item ) {
+ $key = $mangler->unmangle( $item->key() );
+ $key = stripcslashes( $key );
+
+ $value = $item->translation();
+ if ( $value === null ) {
+ continue;
+ }
+
+ $value = str_replace( TRANSLATE_FUZZY, '', $value );
+ $value = addcslashes( $value, "'" );
+
+ $output .= "\$$key = '$value';\n";
+ }
+
+ return $output;
+ }
+
+ protected function doHeader( MessageCollection $collection ) {
+ global $wgSitename, $wgTranslateDocumentationLanguageCode;
+
+ $code = $collection->code;
+ $name = TranslateUtils::getLanguageName( $code );
+ $native = TranslateUtils::getLanguageName( $code, $code );
+
+ if ( $wgTranslateDocumentationLanguageCode ) {
+ $docu = "\n * See the $wgTranslateDocumentationLanguageCode 'language' for " .
+ "message documentation incl. usage of parameters";
+ } else {
+ $docu = '';
+ }
+
+ $authors = $this->doAuthors( $collection );
+
+ $output = <<<PHP
+/** $name ($native)
+ * $docu
+ * To improve a translation please visit http://$wgSitename
+ *
+ * @ingroup Language
+ * @file
+ *
+$authors */
+
+
+PHP;
+
+ return $output;
+ }
+
+ protected function doAuthors( MessageCollection $collection ) {
+ $output = '';
+ $authors = $collection->getAuthors();
+ $authors = $this->filterAuthors( $authors, $collection->code );
+
+ foreach ( $authors as $author ) {
+ $output .= " * @author $author\n";
+ }
+
+ return $output;
+ }
+}
diff --git a/MLEB/Translate/ffs/GettextFFS.php b/MLEB/Translate/ffs/GettextFFS.php
new file mode 100644
index 00000000..50c0a9ab
--- /dev/null
+++ b/MLEB/Translate/ffs/GettextFFS.php
@@ -0,0 +1,667 @@
+<?php
+/**
+ * Gettext file format handler for both old and new style message groups.
+ *
+ * @author Niklas Laxström
+ * @author Siebrand Mazeland
+ * @copyright Copyright © 2008-2010, Niklas Laxström, Siebrand Mazeland
+ * @license GPL-2.0+
+ * @file
+ */
+
+/**
+ * Identifies Gettext plural exceptions.
+ */
+class GettextPluralException extends MwException {
+}
+
+/**
+ * New-style FFS class that implements support for gettext file format.
+ * @ingroup FFS
+ */
+class GettextFFS extends SimpleFFS {
+ public function supportsFuzzy() {
+ return 'yes';
+ }
+
+ public function getFileExtensions() {
+ return array( '.pot', '.po' );
+ }
+
+ protected $offlineMode = false;
+
+ /**
+ * @param $value bool
+ */
+ public function setOfflineMode( $value ) {
+ $this->offlineMode = $value;
+ }
+
+ /**
+ * @param string $data
+ * @return array
+ */
+ public function readFromVariable( $data ) {
+ # Authors first
+ $matches = array();
+ preg_match_all( '/^#\s*Author:\s*(.*)$/m', $data, $matches );
+ $authors = $matches[1];
+
+ # Then messages and everything else
+ $parsedData = $this->parseGettext( $data );
+ $parsedData['AUTHORS'] = $authors;
+
+ foreach ( $parsedData['MESSAGES'] as $key => $value ) {
+ if ( $value === '' ) {
+ unset( $parsedData['MESSAGES'][$key] );
+ }
+ }
+
+ return $parsedData;
+ }
+
+ public function parseGettext( $data ) {
+ $mangler = $this->group->getMangler();
+ $useCtxtAsKey = isset( $this->extra['CtxtAsKey'] ) && $this->extra['CtxtAsKey'];
+ $keyAlgorithm = 'legacy';
+ if ( isset( $this->extra['keyAlgorithm'] ) ) {
+ $keyAlgorithm = $this->extra['keyAlgorithm'];
+ }
+
+ return self::parseGettextData( $data, $useCtxtAsKey, $mangler, $keyAlgorithm );
+ }
+
+ /**
+ * Parses gettext file as string into internal representation.
+ * @param string $data
+ * @param bool $useCtxtAsKey Whether to create message keys from the context
+ * or use msgctxt (non-standard po-files)
+ * @param StringMangler $mangler
+ * @param string $keyAlgorithm Key generation algorithm, see generateKeyFromItem
+ * @throws MWException
+ * @return array
+ */
+ public static function parseGettextData( $data, $useCtxtAsKey, $mangler, $keyAlgorithm ) {
+ $potmode = false;
+
+ // Normalise newlines, to make processing easier
+ $data = str_replace( "\r\n", "\n", $data );
+
+ /* Delimit the file into sections, which are separated by two newlines.
+ * We are permissive and accept more than two. This parsing method isn't
+ * efficient wrt memory, but was easy to implement */
+ $sections = preg_split( '/\n{2,}/', $data );
+
+ /* First one isn't an actual message. We'll handle it specially below */
+ $headerSection = array_shift( $sections );
+ /* Since this is the header section, we are only interested in the tags
+ * and msgid is empty. Somewhere we should extract the header comments
+ * too */
+ $match = self::expectKeyword( 'msgstr', $headerSection );
+ if ( $match !== null ) {
+ $headerBlock = self::formatForWiki( $match, 'trim' );
+ $headers = self::parseHeaderTags( $headerBlock );
+
+ // Check for pot-mode by checking if the header is fuzzy
+ $flags = self::parseFlags( $headerSection );
+ if ( in_array( 'fuzzy', $flags, true ) ) {
+ $potmode = true;
+ }
+ } else {
+ throw new MWException( "Gettext file header was not found:\n\n$data" );
+ }
+
+ $template = array();
+ $messages = array();
+
+ // Extract some metadata from headers for easier use
+ $metadata = array();
+ if ( isset( $headers['X-Language-Code'] ) ) {
+ $metadata['code'] = $headers['X-Language-Code'];
+ }
+
+ if ( isset( $headers['X-Message-Group'] ) ) {
+ $metadata['group'] = $headers['X-Message-Group'];
+ }
+
+ /* At this stage we are only interested how many plurals forms we should
+ * be expecting when parsing the rest of this file. */
+ $pluralCount = false;
+ if ( isset( $headers['Plural-Forms'] ) ) {
+ if ( preg_match( '/nplurals=([0-9]+).*;/', $headers['Plural-Forms'], $matches ) ) {
+ $pluralCount = $metadata['plural'] = $matches[1];
+ }
+ }
+
+ // Then parse the messages
+ foreach ( $sections as $section ) {
+
+ $item = self::parseGettextSection( $section, $pluralCount, $metadata );
+ if ( $item === false ) {
+ continue;
+ }
+
+ if ( $useCtxtAsKey ) {
+ if ( !isset( $item['ctxt'] ) ) {
+ error_log( "ctxt missing for: $section" );
+ continue;
+ }
+ $key = $item['ctxt'];
+ } else {
+ $key = self::generateKeyFromItem( $item, $keyAlgorithm );
+ }
+
+ $key = $mangler->mangle( $key );
+ $messages[$key] = $potmode ? $item['id'] : $item['str'];
+ $template[$key] = $item;
+ }
+
+ return array(
+ 'MESSAGES' => $messages,
+ 'TEMPLATE' => $template,
+ 'METADATA' => $metadata,
+ 'HEADERS' => $headers
+ );
+ }
+
+ public static function parseGettextSection( $section, $pluralCount, &$metadata ) {
+
+ if ( trim( $section ) === '' ) {
+ return false;
+ }
+
+ /* These inactive sections are of no interest to us. Multiline mode
+ * is needed because there may be flags or other annoying stuff
+ * before the commented out sections.
+ */
+ if ( preg_match( '/^#~/m', $section ) ) {
+ return false;
+ }
+
+ $item = array(
+ 'ctxt' => false,
+ 'id' => '',
+ 'str' => '',
+ 'flags' => array(),
+ 'comments' => array(),
+ );
+
+ $match = self::expectKeyword( 'msgid', $section );
+ if ( $match !== null ) {
+ $item['id'] = self::formatForWiki( $match );
+ } else {
+ throw new MWException( "Unable to parse msgid:\n\n$section" );
+ }
+
+ $match = self::expectKeyword( 'msgctxt', $section );
+ if ( $match !== null ) {
+ $item['ctxt'] = self::formatForWiki( $match );
+ }
+
+ $pluralMessage = false;
+ $match = self::expectKeyword( 'msgid_plural', $section );
+ if ( $match !== null ) {
+ $pluralMessage = true;
+ $plural = self::formatForWiki( $match );
+ $item['id'] = "{{PLURAL:GETTEXT|{$item['id']}|$plural}}";
+ }
+
+ if ( $pluralMessage ) {
+ $pluralMessageText = self::processGettextPluralMessage( $pluralCount, $section );
+
+ // Keep the translation empty if no form has translation
+ if ( $pluralMessageText !== '' ) {
+ $item['str'] = $pluralMessageText;
+ }
+ } else {
+ $match = self::expectKeyword( 'msgstr', $section );
+ if ( $match !== null ) {
+ $item['str'] = self::formatForWiki( $match );
+ } else {
+ throw new MWException( "Unable to parse msgstr:\n\n$section" );
+ }
+ }
+
+ // Parse flags
+ $flags = self::parseFlags( $section );
+ foreach ( $flags as $key => $flag ) {
+ if ( $flag === 'fuzzy' ) {
+ $item['str'] = TRANSLATE_FUZZY . $item['str'];
+ unset( $flags[$key] );
+ }
+ }
+ $item['flags'] = $flags;
+
+ // Rest of the comments
+ $matches = array();
+ if ( preg_match_all( '/^#(.?) (.*)$/m', $section, $matches, PREG_SET_ORDER ) ) {
+ foreach ( $matches as $match ) {
+ if ( $match[1] !== ',' && strpos( $match[1], '[Wiki]' ) !== 0 ) {
+ $item['comments'][$match[1]][] = $match[2];
+ }
+ }
+ }
+
+ return $item;
+ }
+
+ public static function processGettextPluralMessage( $pluralCount, $section ) {
+ $actualForms = array();
+
+ for ( $i = 0; $i < $pluralCount; $i++ ) {
+ $match = self::expectKeyword( "msgstr\\[$i\\]", $section );
+
+ if ( $match !== null ) {
+ $actualForms[] = self::formatForWiki( $match );
+ } else {
+ $actualForms[] = '';
+ error_log( "Plural $i not found, expecting total of $pluralCount for $section" );
+ }
+ }
+
+ if ( array_sum( array_map( 'strlen', $actualForms ) ) > 0 ) {
+ return '{{PLURAL:GETTEXT|' . implode( '|', $actualForms ) . '}}';
+ } else {
+ return '';
+ }
+ }
+
+ public static function parseFlags( $section ) {
+ $matches = array();
+ if ( preg_match( '/^#,(.*)$/mu', $section, $matches ) ) {
+ return array_map( 'trim', explode( ',', $matches[1] ) );
+ } else {
+ return array();
+ }
+ }
+
+ public static function expectKeyword( $name, $section ) {
+ /* Catches the multiline textblock that comes after keywords msgid,
+ * msgstr, msgid_plural, msgctxt.
+ */
+ $poformat = '".*"\n?(^".*"$\n?)*';
+
+ $matches = array();
+ if ( preg_match( "/^$name\s($poformat)/mx", $section, $matches ) ) {
+ return $matches[1];
+ } else {
+ return null;
+ }
+ }
+
+ /**
+ * Generates unique key for each message. Changing this WILL BREAK ALL
+ * existing pages!
+ * @param array $item As returned by parseGettextSection
+ * @param string $algorithm Algorithm used to generate message keys: simple or legacy
+ * @return string
+ */
+ public static function generateKeyFromItem( array $item, $algorithm = 'legacy' ) {
+ $lang = Language::factory( 'en' );
+
+ if ( $item['ctxt'] === '' ) {
+ /* Messages with msgctxt as empty string should be different
+ * from messages without any msgctxt. To avoid BC break make
+ * the empty ctxt a special case */
+ $hash = sha1( $item['id'] . 'MSGEMPTYCTXT' );
+ } else {
+ $hash = sha1( $item['ctxt'] . $item['id'] );
+ }
+
+ if ( $algorithm === 'simple' ) {
+ $hash = substr( $hash, 0, 6 );
+ $snippet = $lang->truncate( $item['id'], 30, '' );
+ $snippet = str_replace( ' ', '_', trim( $snippet ) );
+ } else { // legacy
+ global $wgLegalTitleChars;
+ $snippet = $item['id'];
+ $snippet = preg_replace( "/[^$wgLegalTitleChars]/", ' ', $snippet );
+ $snippet = preg_replace( "/[:&%\/_]/", ' ', $snippet );
+ $snippet = preg_replace( "/ {2,}/", ' ', $snippet );
+ $snippet = $lang->truncate( $snippet, 30, '' );
+ $snippet = str_replace( ' ', '_', trim( $snippet ) );
+ }
+
+ return "$hash-$snippet";
+ }
+
+ /**
+ * This parses the Gettext text block format. Since trailing whitespace is
+ * not allowed in MediaWiki pages, the default action is to append
+ * \-character at the end of the message. You can also choose to ignore it
+ * and use the trim action instead.
+ * @param $data
+ * @param $whitespace string
+ * @throws MWException
+ * @return string
+ */
+ public static function formatForWiki( $data, $whitespace = 'mark' ) {
+ $quotePattern = '/(^"|"$\n?)/m';
+ $data = preg_replace( $quotePattern, '', $data );
+ $data = stripcslashes( $data );
+
+ if ( preg_match( '/\s$/', $data ) ) {
+ if ( $whitespace === 'mark' ) {
+ $data .= '\\';
+ } elseif ( $whitespace === 'trim' ) {
+ $data = rtrim( $data );
+ } else {
+ // @todo Only triggered if there is trailing whitespace
+ throw new MWException( 'Unknown action for whitespace' );
+ }
+ }
+
+ return $data;
+ }
+
+ public static function parseHeaderTags( $headers ) {
+ $tags = array();
+ foreach ( explode( "\n", $headers ) as $line ) {
+ if ( strpos( $line, ':' ) === false ) {
+ error_log( __METHOD__ . ": $line" );
+ }
+ list( $key, $value ) = explode( ':', $line, 2 );
+ $tags[trim( $key )] = trim( $value );
+ }
+
+ return $tags;
+ }
+
+ protected function writeReal( MessageCollection $collection ) {
+ $pot = $this->read( 'en' );
+ $template = $this->read( $collection->code );
+ $pluralCount = false;
+ $output = $this->doGettextHeader( $collection, $template, $pluralCount );
+
+ /** @var TMessage $m */
+ foreach ( $collection as $key => $m ) {
+ $transTemplate = isset( $template['TEMPLATE'][$key] ) ?
+ $template['TEMPLATE'][$key] : array();
+ $potTemplate = isset( $pot['TEMPLATE'][$key] ) ?
+ $pot['TEMPLATE'][$key] : array();
+
+ $output .= $this->formatMessageBlock( $key, $m, $transTemplate, $potTemplate, $pluralCount );
+ }
+
+ return $output;
+ }
+
+ protected function doGettextHeader( MessageCollection $collection, $template, &$pluralCount ) {
+ global $wgSitename;
+
+ $code = $collection->code;
+ $name = TranslateUtils::getLanguageName( $code );
+ $native = TranslateUtils::getLanguageName( $code, $code );
+ $authors = $this->doAuthors( $collection );
+ if ( isset( $this->extra['header'] ) ) {
+ $extra = "# --\n" . $this->extra['header'];
+ } else {
+ $extra = '';
+ }
+
+ $output = <<<PHP
+# Translation of {$this->group->getLabel()} to $name ($native)
+# Exported from $wgSitename
+#
+$authors$extra
+PHP;
+
+ // Make sure there is no empty line before msgid
+ $output = trim( $output ) . "\n";
+
+ $specs = isset( $template['HEADERS'] ) ? $template['HEADERS'] : array();
+
+ $timestamp = wfTimestampNow();
+ $specs['PO-Revision-Date'] = self::formatTime( $timestamp );
+ if ( $this->offlineMode ) {
+ $specs['POT-Creation-Date'] = self::formatTime( $timestamp );
+ } elseif ( $this->group instanceof MessageGroupBase ) {
+ $specs['X-POT-Import-Date'] = self::formatTime( wfTimestamp( TS_MW, $this->getPotTime() ) );
+ }
+ $specs['Content-Type'] = 'text/plain; charset=UTF-8';
+ $specs['Content-Transfer-Encoding'] = '8bit';
+ $specs['Language'] = wfBCP47( $this->group->mapCode( $code ) );
+ wfRunHooks( 'Translate:GettextFFS:headerFields', array( &$specs, $this->group, $code ) );
+ $specs['X-Generator'] = $this->getGenerator();
+
+ if ( $this->offlineMode ) {
+ $specs['X-Language-Code'] = $code;
+ $specs['X-Message-Group'] = $this->group->getId();
+ }
+
+ $plural = self::getPluralRule( $code );
+ if ( $plural ) {
+ $specs['Plural-Forms'] = $plural;
+ } elseif ( !isset( $specs['Plural-Forms'] ) ) {
+ $specs['Plural-Forms'] = 'nplurals=2; plural=(n != 1);';
+ }
+
+ $match = array();
+ preg_match( '/nplurals=(\d+);/', $specs['Plural-Forms'], $match );
+ $pluralCount = $match[1];
+
+ $output .= 'msgid ""' . "\n";
+ $output .= 'msgstr ""' . "\n";
+ $output .= '""' . "\n";
+
+ foreach ( $specs as $k => $v ) {
+ $output .= self::escape( "$k: $v\n" ) . "\n";
+ }
+
+ $output .= "\n";
+
+ return $output;
+ }
+
+ protected function doAuthors( MessageCollection $collection ) {
+ $output = '';
+ $authors = $collection->getAuthors();
+ $authors = $this->filterAuthors( $authors, $collection->code );
+
+ foreach ( $authors as $author ) {
+ $output .= "# Author: $author\n";
+ }
+
+ return $output;
+ }
+
+ /**
+ * @param string $key
+ * @param TMessage $m
+ * @param array $trans
+ * @param array $pot
+ * @param int $pluralCount
+ * @return string
+ */
+ protected function formatMessageBlock( $key, $m, $trans, $pot, $pluralCount ) {
+ $header = $this->formatDocumentation( $key );
+ $content = '';
+
+ $comments = self::chainGetter( 'comments', $pot, $trans, array() );
+ foreach ( $comments as $type => $typecomments ) {
+ foreach ( $typecomments as $comment ) {
+ $header .= "#$type $comment\n";
+ }
+ }
+
+ $flags = self::chainGetter( 'flags', $pot, $trans, array() );
+ $flags = array_merge( $m->getTags(), $flags );
+
+ if ( $this->offlineMode ) {
+ $content .= 'msgctxt ' . self::escape( $key ) . "\n";
+ } else {
+ $ctxt = self::chainGetter( 'ctxt', $pot, $trans, false );
+ if ( $ctxt !== false ) {
+ $content .= 'msgctxt ' . self::escape( $ctxt ) . "\n";
+ }
+ }
+
+ $msgid = $m->definition();
+ $msgstr = $m->translation();
+ if ( strpos( $msgstr, TRANSLATE_FUZZY ) !== false ) {
+ $msgstr = str_replace( TRANSLATE_FUZZY, '', $msgstr );
+ // Might by fuzzy infile
+ $flags[] = 'fuzzy';
+ }
+
+ if ( preg_match( '/{{PLURAL:GETTEXT/i', $msgid ) ) {
+ $forms = $this->splitPlural( $msgid, 2 );
+ $content .= 'msgid ' . $this->escape( $forms[0] ) . "\n";
+ $content .= 'msgid_plural ' . $this->escape( $forms[1] ) . "\n";
+
+ try {
+ $forms = $this->splitPlural( $msgstr, $pluralCount );
+ foreach ( $forms as $index => $form ) {
+ $content .= "msgstr[$index] " . $this->escape( $form ) . "\n";
+ }
+ } catch ( GettextPluralException $e ) {
+ $flags[] = 'invalid-plural';
+ for ( $i = 0; $i < $pluralCount; $i++ ) {
+ $content .= "msgstr[$i] \"\"\n";
+ }
+ }
+ } else {
+ $content .= 'msgid ' . self::escape( $msgid ) . "\n";
+ $content .= 'msgstr ' . self::escape( $msgstr ) . "\n";
+ }
+
+ if ( $flags ) {
+ sort( $flags );
+ $header .= "#, " . implode( ', ', array_unique( $flags ) ) . "\n";
+ }
+
+ $output = $header ? $header : "#\n";
+ $output .= $content . "\n";
+
+ return $output;
+ }
+
+ /**
+ * @param string $key
+ * @param array $a
+ * @param array $b
+ * @param mixed $default
+ * @return mixed
+ */
+ protected static function chainGetter( $key, $a, $b, $default ) {
+ if ( isset( $a[$key] ) ) {
+ return $a[$key];
+ } elseif ( isset( $b[$key] ) ) {
+ return $b[$key];
+ } else {
+ return $default;
+ }
+ }
+
+ protected static function formatTime( $time ) {
+ $lang = Language::factory( 'en' );
+
+ return $lang->sprintfDate( 'xnY-xnm-xnd xnH:xni:xns+0000', $time );
+ }
+
+ protected function getPotTime() {
+ $defs = new MessageGroupCache( $this->group );
+
+ return $defs->exists() ? $defs->getTimestamp() : wfTimestampNow();
+ }
+
+ protected function getGenerator() {
+ return 'MediaWiki ' . SpecialVersion::getVersion() .
+ "; Translate " . TRANSLATE_VERSION;
+ }
+
+ protected function formatDocumentation( $key ) {
+ global $wgTranslateDocumentationLanguageCode;
+
+ if ( !$this->offlineMode ) {
+ return '';
+ }
+
+ $code = $wgTranslateDocumentationLanguageCode;
+ if ( !$code ) {
+ return '';
+ }
+
+ $documentation = TranslateUtils::getMessageContent( $key, $code, $this->group->getNamespace() );
+ if ( !is_string( $documentation ) ) {
+ return '';
+ }
+
+ $lines = explode( "\n", $documentation );
+ $out = '';
+ foreach ( $lines as $line ) {
+ $out .= "#. [Wiki] $line\n";
+ }
+
+ return $out;
+ }
+
+ protected static function escape( $line ) {
+ // There may be \ as a last character, for keeping trailing whitespace
+ $line = preg_replace( '/(\s)\\\\$/', '\1', $line );
+ $line = addcslashes( $line, '\\"' );
+ $line = str_replace( "\n", '\n', $line );
+ $line = '"' . $line . '"';
+
+ return $line;
+ }
+
+ /**
+ * Returns plural rule for Gettext.
+ * @param $code \string Language code.
+ * @return \string
+ */
+ public static function getPluralRule( $code ) {
+ $rulefile = __DIR__ . '/../data/plural-gettext.txt';
+ $rules = file_get_contents( $rulefile );
+ foreach ( explode( "\n", $rules ) as $line ) {
+ if ( trim( $line ) === '' ) {
+ continue;
+ }
+ list( $rulecode, $rule ) = explode( "\t", $line );
+ if ( $rulecode === $code ) {
+ return $rule;
+ }
+ }
+
+ return '';
+ }
+
+ protected function splitPlural( $text, $forms ) {
+ if ( $forms === 1 ) {
+ return $text;
+ }
+
+ $placeholder = TranslateUtils::getPlaceholder();
+ # |/| is commonly used in KDE to support inflections
+ $text = str_replace( '|/|', $placeholder, $text );
+
+ $plurals = array();
+ $match = preg_match_all( '/{{PLURAL:GETTEXT\|(.*)}}/iUs', $text, $plurals );
+ if ( !$match ) {
+ throw new GettextPluralException( "Failed to find plural in: $text" );
+ }
+
+ $splitPlurals = array();
+ for ( $i = 0; $i < $forms; $i++ ) {
+ # Start with the hole string
+ $pluralForm = $text;
+ # Loop over *each* {{PLURAL}} instance and replace
+ # it with the plural form belonging to this index
+ foreach ( $plurals[0] as $index => $definition ) {
+ $parsedFormsArray = explode( '|', $plurals[1][$index] );
+ if ( !isset( $parsedFormsArray[$i] ) ) {
+ error_log( "Too few plural forms in: $text" );
+ $pluralForm = '';
+ } else {
+ $pluralForm = str_replace( $pluralForm, $definition, $parsedFormsArray[$i] );
+ }
+ }
+
+ $pluralForm = str_replace( $placeholder, '|/|', $pluralForm );
+ $splitPlurals[$i] = $pluralForm;
+ }
+
+ return $splitPlurals;
+ }
+}
diff --git a/MLEB/Translate/ffs/IniFFS.php b/MLEB/Translate/ffs/IniFFS.php
new file mode 100644
index 00000000..355c8ac7
--- /dev/null
+++ b/MLEB/Translate/ffs/IniFFS.php
@@ -0,0 +1,114 @@
+<?php
+/**
+ * Support for ini message file format.
+ *
+ * @file
+ * @author Niklas Laxström
+ * @copyright Copyright © 2012-2013, Niklas Laxström
+ * @license GPL-2.0+
+ */
+
+/**
+ * IniFFS currently parses and generates flat ini files with language
+ * code as header key.
+ *
+ * @ingroup FFS
+ * @since 2012-11-19
+ */
+class IniFFS extends SimpleFFS {
+ public static function isValid( $data ) {
+ $conf = array( 'BASIC' => array( 'class' => 'FileBasedMessageGroup', 'namespace' => 8 ) );
+ /**
+ * @var FileBasedMessageGroup $group
+ */
+ $group = MessageGroupBase::factory( $conf );
+
+ wfSuppressWarnings();
+ $ffs = new IniFFS( $group );
+ $parsed = $ffs->readFromVariable( $data );
+ wfRestoreWarnings();
+
+ return !!count( $parsed['MESSAGES'] );
+ }
+
+ public function supportsFuzzy() {
+ return 'write';
+ }
+
+ public function getFileExtensions() {
+ return array( '.ini' );
+ }
+
+ /**
+ * @param string $data
+ * @return array Parsed data.
+ */
+ public function readFromVariable( $data ) {
+ $authors = array();
+ preg_match_all( '/^; Author: (.*)$/m', $data, $matches, PREG_SET_ORDER );
+ foreach ( $matches as $match ) {
+ $authors[] = $match[1];
+ }
+
+ // Remove comments
+ $data = preg_replace( '/^\s*;.*$/m', '', $data );
+ // Make sure values are quoted, PHP barks on stuff like ?{}|&~![()^
+ $data = preg_replace( '/(^.+?=\s*)([^\'"].+)$/m', '\1"\2"', $data );
+
+ $messages = parse_ini_string( $data );
+ if ( is_array( $messages ) ) {
+ $messages = $this->group->getMangler()->mangle( $messages );
+ } else {
+ $messages = null;
+ }
+
+ return array(
+ 'MESSAGES' => $messages,
+ 'AUTHORS' => $authors,
+ );
+ }
+
+ protected function writeReal( MessageCollection $collection ) {
+ $output = '';
+ $mangler = $this->group->getMangler();
+
+ /**
+ * @var $m ThinMessage
+ */
+ foreach ( $collection as $key => $m ) {
+ $value = $m->translation();
+ if ( $value === null ) {
+ continue;
+ }
+
+ $comment = '';
+
+ if ( $m->hasTag( 'fuzzy' ) ) {
+ $value = str_replace( TRANSLATE_FUZZY, '', $value );
+ $comment = "; Fuzzy\n";
+ }
+
+ $key = $mangler->unmangle( $key );
+ $output .= "$comment$key = $value\n";
+ }
+
+ // Do not create empty files
+ if ( $output === '' ) {
+ return '';
+ }
+
+ global $wgSitename;
+ // Accumulator
+ $header = "; Exported from $wgSitename\n";
+
+ $authors = $collection->getAuthors();
+ $authors = $this->filterAuthors( $authors, $collection->getLanguage() );
+ foreach ( $authors as $author ) {
+ $header .= "; Author: $author\n";
+ }
+
+ $header .= '[' . $collection->getLanguage() . "]\n";
+
+ return $header . $output;
+ }
+}
diff --git a/MLEB/Translate/ffs/IntuitionTextdomains.php b/MLEB/Translate/ffs/IntuitionTextdomains.php
new file mode 100644
index 00000000..12ab21b6
--- /dev/null
+++ b/MLEB/Translate/ffs/IntuitionTextdomains.php
@@ -0,0 +1,110 @@
+<?php
+/**
+ * Class for Intuition for Translatewiki.net
+ *
+ * @file
+ * @author Niklas Laxström
+ * @author Krinkle
+ * @copyright Copyright © 2008-2013, Niklas Laxström
+ * @copyright Copyright © 2011, Krinkle
+ * @license GPL-2.0+
+ */
+
+/**
+ * Support for tools using Intuition at the Toolserver and Wikimedia Labs.
+ */
+class PremadeIntuitionTextdomains extends PremadeMediawikiExtensionGroups {
+ protected $useConfigure = false;
+ protected $groups;
+ protected $idPrefix = 'tsint-';
+ protected $namespace = NS_INTUITION;
+
+ protected function processGroups( $groups ) {
+ $fixedGroups = array();
+ foreach ( $groups as $g ) {
+ if ( !is_array( $g ) ) {
+ $g = array( $g );
+ }
+
+ $name = $g['name'];
+ $sanitizedName = preg_replace( '/\s+/', '', strtolower( $name ) );
+
+ if ( isset( $g['id'] ) ) {
+ $id = $g['id'];
+ } else {
+ $id = $this->idPrefix . $sanitizedName;
+ }
+
+ if ( isset( $g['file'] ) ) {
+ $file = $g['file'];
+ } else {
+ // Intuition text-domains are case-insensitive and internally
+ // converts to lowercase names starting with a capital letter.
+ // eg. "MyTool" -> "Mytool.i18n.php"
+ // No subdirectories!
+ $file = ucfirst( $sanitizedName ) . '.i18n.php';
+ }
+
+ if ( isset( $g['descmsg'] ) ) {
+ $descmsg = $g['descmsg'];
+ } else {
+ $descmsg = "$id-desc";
+ }
+
+ if ( isset( $g['url'] ) ) {
+ $url = $g['url'];
+ } else {
+ $url = false;
+ }
+
+ $newgroup = array(
+ 'name' => 'Intuition - ' . $name,
+ 'file' => $file,
+ 'descmsg' => $descmsg,
+ 'url' => $url,
+ );
+
+ // Prefix is required, if not customized use the sanitized name
+ if ( !isset( $g['prefix'] ) ) {
+ $g['prefix'] = "$sanitizedName-";
+ }
+
+ // All messages are prefixed with their groupname
+ $g['mangle'] = array( '*' );
+
+ // Prevent E_NOTICE undefined index.
+ // PremadeMediawikiExtensionGroups::factory should probably check this better instead
+ if ( !isset( $g['ignored'] ) ) {
+ $g['ignored'] = array();
+ }
+
+ if ( !isset( $g['optional'] ) ) {
+ $g['optional'] = array();
+ }
+
+ $g['format'] = 'php';
+
+ $copyvars = array(
+ 'aliasfile',
+ 'desc',
+ 'format',
+ 'ignored',
+ 'magicfile',
+ 'mangle',
+ 'optional',
+ 'prefix',
+ 'var',
+ );
+
+ foreach ( $copyvars as $var ) {
+ if ( isset( $g[$var] ) ) {
+ $newgroup[$var] = $g[$var];
+ }
+ }
+
+ $fixedGroups[$id] = $newgroup;
+ }
+
+ return $fixedGroups;
+ }
+}
diff --git a/MLEB/Translate/ffs/JavaFFS.php b/MLEB/Translate/ffs/JavaFFS.php
new file mode 100644
index 00000000..66badcd7
--- /dev/null
+++ b/MLEB/Translate/ffs/JavaFFS.php
@@ -0,0 +1,253 @@
+<?php
+
+/**
+ * JavaFFS class implements support for Java properties files.
+ * This class reads and writes only utf-8 files. Java projects
+ * need to run native2ascii on them before using them.
+ *
+ * This class adds a new item into FILES section of group configuration:
+ * \c keySeparator which defaults to '='.
+ * @ingroup FFS
+ */
+class JavaFFS extends SimpleFFS {
+ public function supportsFuzzy() {
+ return 'write';
+ }
+
+ public function getFileExtensions() {
+ return array( '.properties' );
+ }
+
+ protected $keySeparator = '=';
+
+ /**
+ * @param $group FileBasedMessageGroup
+ */
+ public function __construct( FileBasedMessageGroup $group ) {
+ parent::__construct( $group );
+
+ if ( isset( $this->extra['keySeparator'] ) ) {
+ $this->keySeparator = $this->extra['keySeparator'];
+ }
+ }
+
+ // READ
+
+ /**
+ * @param $data array
+ * @return array Parsed data.
+ * @throws MWException
+ */
+ public function readFromVariable( $data ) {
+ $data = self::fixNewLines( $data );
+ $lines = array_map( 'ltrim', explode( "\n", $data ) );
+ $authors = $messages = array();
+ $linecontinuation = false;
+
+ $key = '';
+ $value = '';
+ foreach ( $lines as $line ) {
+ if ( $linecontinuation ) {
+ $linecontinuation = false;
+ $valuecont = $line;
+ $valuecont = str_replace( '\n', "\n", $valuecont );
+ $value .= $valuecont;
+ } else {
+ if ( $line === '' ) {
+ continue;
+ }
+
+ if ( $line[0] === '#' || $line[0] === '!' ) {
+ $match = array();
+ $ok = preg_match( '/#\s*Author:\s*(.*)/', $line, $match );
+
+ if ( $ok ) {
+ $authors[] = $match[1];
+ }
+
+ continue;
+ }
+
+ if ( strpos( $line, $this->keySeparator ) === false ) {
+ throw new MWException( "Line without separator '{$this->keySeparator}': $line." );
+ }
+
+ list( $key, $value ) = self::readRow( $line, $this->keySeparator );
+ if ( $key === '' ) {
+ throw new MWException( "Empty key in line $line." );
+ }
+ }
+
+ // @todo This doesn't handle the pathological case of even number of trailing \
+ if ( strlen( $value ) && $value[strlen( $value ) - 1] === "\\" ) {
+ $value = substr( $value, 0, strlen( $value ) - 1 );
+ $linecontinuation = true;
+ } else {
+ $messages[$key] = ltrim( $value );
+ }
+ }
+
+ $messages = $this->group->getMangler()->mangle( $messages );
+
+ return array(
+ 'AUTHORS' => $authors,
+ 'MESSAGES' => $messages,
+ );
+ }
+
+ // Write
+
+ /**
+ * @param $collection MessageCollection
+ * @return string
+ */
+ protected function writeReal( MessageCollection $collection ) {
+ $header = $this->doHeader( $collection );
+ $header .= $this->doAuthors( $collection );
+ $header .= "\n";
+
+ $output = '';
+ $mangler = $this->group->getMangler();
+
+ /**
+ * @var TMessage $m
+ */
+ foreach ( $collection as $key => $m ) {
+ $value = $m->translation();
+ $value = str_replace( TRANSLATE_FUZZY, '', $value );
+
+ if ( $value === '' ) {
+ continue;
+ }
+
+ // Just to give an overview of translation quality.
+ if ( $m->hasTag( 'fuzzy' ) ) {
+ $output .= "# Fuzzy\n";
+ }
+
+ $key = $mangler->unmangle( $key );
+ $output .= self::writeRow( $key, $this->keySeparator, $value );
+ }
+
+ if ( $output ) {
+ return $header . $output;
+ }
+
+ return '';
+ }
+
+ /**
+ * Writes well-formed properties file row with key and value.
+ * @param string $key
+ * @param string $sep
+ * @param string $value
+ * @return string
+ * @since 2012-03-28
+ */
+ public static function writeRow( $key, $sep, $value ) {
+ /* Keys containing the separator need escaping. Also escape comment
+ * characters, though strictly they would only need escaping when
+ * they are the first character. Plus the escape character itself. */
+ $key = addcslashes( $key, "#!$sep\\" );
+ // Make sure we do not slip newlines trough... it would be fatal.
+ $value = str_replace( "\n", '\\n', $value );
+
+ return "$key$sep$value\n";
+ }
+
+ /**
+ * Parses non-empty properties file row to key and value.
+ * @param string $line
+ * @param string $sep
+ * @return string
+ * @since 2012-03-28
+ */
+ public static function readRow( $line, $sep ) {
+ if ( strpos( $line, '\\' ) === false ) {
+ /* Nothing appears to be escaped in this line.
+ * Just read the key and the value. */
+ list( $key, $value ) = explode( $sep, $line, 2 );
+ } else {
+ /* There might be escaped separators in the key.
+ * Using slower method to find the separator. */
+
+ /* Make the key default to empty instead of value, because
+ * empty key causes error on callers, while empty value
+ * wouldn't. */
+ $key = '';
+ $value = $line;
+
+ /* Find the first unescaped separator. Example:
+ * First line is the string being read, second line is the
+ * value of $escaped after having read the above character.
+ *
+ * ki\ts\\s\=a = koira
+ * 0010010010000
+ * ^ Not separator because $escaped was true
+ * ^ Split the string into key and value here
+ */
+
+ $len = strlen( $line );
+ $escaped = false;
+ for ( $i = 0; $i < $len; $i++ ) {
+ $char = $line[$i];
+ if ( $char === '\\' ) {
+ $escaped = !$escaped;
+ } elseif ( $escaped ) {
+ $escaped = false;
+ } elseif ( $char === $sep ) {
+ $key = substr( $line, 0, $i );
+ // Excluding the separator character from the value
+ $value = substr( $line, $i + 1 );
+ break;
+ }
+ }
+ }
+
+ /* We usually don't want to expand things like \t in values since
+ * translators cannot easily input those. But in keys we do.
+ * \n is exception we do handle in values. */
+ $key = trim( $key );
+ $key = stripcslashes( $key );
+ $value = ltrim( $value );
+ $value = str_replace( '\n', "\n", $value );
+
+ return array( $key, $value );
+ }
+
+ /**
+ * @param $collection MessageCollection
+ * @return string
+ */
+ protected function doHeader( MessageCollection $collection ) {
+ if ( isset( $this->extra['header'] ) ) {
+ $output = $this->extra['header'];
+ } else {
+ global $wgSitename;
+
+ $code = $collection->code;
+ $name = TranslateUtils::getLanguageName( $code );
+ $native = TranslateUtils::getLanguageName( $code, $code );
+ $output = "# Messages for $name ($native)\n";
+ $output .= "# Exported from $wgSitename\n";
+ }
+
+ return $output;
+ }
+
+ /**
+ * @param $collection MessageCollection
+ * @return string
+ */
+ protected function doAuthors( MessageCollection $collection ) {
+ $output = '';
+ $authors = $collection->getAuthors();
+ $authors = $this->filterAuthors( $authors, $collection->code );
+
+ foreach ( $authors as $author ) {
+ $output .= "# Author: $author\n";
+ }
+
+ return $output;
+ }
+}
diff --git a/MLEB/Translate/ffs/JavaScriptFFS.php b/MLEB/Translate/ffs/JavaScriptFFS.php
new file mode 100644
index 00000000..ecbec780
--- /dev/null
+++ b/MLEB/Translate/ffs/JavaScriptFFS.php
@@ -0,0 +1,286 @@
+<?php
+
+/**
+ * Generic file format support for JavaScript formatted files.
+ * @ingroup FFS
+ */
+abstract class JavaScriptFFS extends SimpleFFS {
+ public function getFileExtensions() {
+ return array( '.js' );
+ }
+
+ /**
+ * Message keys format.
+ *
+ * @param $key string
+ *
+ * @return string
+ */
+ abstract protected function transformKey( $key );
+
+ /**
+ * Header of message file.
+ *
+ * @param $code string
+ * @param $authors array
+ */
+ abstract protected function header( $code, $authors );
+
+ /**
+ * Footer of message file.
+ */
+ abstract protected function footer();
+
+ /**
+ * @param $data array
+ * @return array Parsed data.
+ */
+ public function readFromVariable( $data ) {
+ /* Parse authors list */
+ $authors = preg_replace( "#/\* Translators\:\n(.*?)\n \*/(.*)#s", '$1', $data );
+ if ( $authors === $data ) {
+ $authors = array();
+ } else {
+ $authors = explode( "\n", $authors );
+ $count = count( $authors );
+ for ( $i = 0; $i < $count; $i++ ) {
+ // Each line should look like " * - Translatorname"
+ $authors[$i] = substr( $authors[$i], 6 );
+ }
+ }
+
+ /* Pre-processing of messages */
+
+ /**
+ * Find the start and end of the data section (enclosed in curly braces).
+ */
+ $dataStart = strpos( $data, '{' );
+ $dataEnd = strrpos( $data, '}' );
+
+ /**
+ * Strip everything outside of the data section.
+ */
+ $data = substr( $data, $dataStart + 1, $dataEnd - $dataStart - 1 );
+
+ /**
+ * Strip comments.
+ */
+ $data = preg_replace( '#^(\s*?)//(.*?)$#m', '', $data );
+
+ /**
+ * Replace message endings with double quotes.
+ */
+ $data = preg_replace( "#\'\,\n#", "\",\n", $data );
+
+ /**
+ * Strip excess whitespace.
+ */
+ $data = trim( $data );
+
+ /**
+ * Per-key message processing.
+ */
+
+ /**
+ * Break in to segments.
+ */
+ $data = explode( "\",\n", $data );
+
+ $messages = array();
+ foreach ( $data as $segment ) {
+ /**
+ * Add back trailing quote, removed by explosion.
+ */
+ $segment .= '"';
+
+ /**
+ * Concatenate separated strings.
+ */
+ $segment = str_replace( '"+', '" +', $segment );
+ $segment = explode( '" +', $segment );
+ $count = count( $segment );
+ for ( $i = 0; $i < $count; $i++ ) {
+ $segment[$i] = ltrim( ltrim( $segment[$i] ), '"' );
+ }
+ $segment = implode( $segment );
+
+ /**
+ * Remove line breaks between message keys and messages.
+ */
+ $segment = preg_replace( "#\:(\s+)[\\\"\']#", ': "', $segment );
+
+ /**
+ * Break in to key and message.
+ */
+ $segments = explode( ': "', $segment );
+
+ /**
+ * Strip excess whitespace from key and value, then quotation marks.
+ */
+ $key = trim( trim( $segments[0] ), "'\"" );
+ $value = trim( trim( $segments[1] ), "'\"" );
+
+ /**
+ * Unescape any JavaScript string syntax and append to message array.
+ */
+ $messages[$key] = self::unescapeJsString( $value );
+ }
+
+ $messages = $this->group->getMangler()->mangle( $messages );
+
+ return array(
+ 'AUTHORS' => $authors,
+ 'MESSAGES' => $messages
+ );
+ }
+
+ /**
+ * @param $collection MessageCollection
+ * @return string
+ */
+ public function writeReal( MessageCollection $collection ) {
+ $header = $this->header( $collection->code, $collection->getAuthors() );
+
+ $mangler = $this->group->getMangler();
+
+ /**
+ * Get and write messages.
+ */
+ $body = '';
+ /**
+ * @var TMessage $message
+ */
+ foreach ( $collection as $message ) {
+ if ( strlen( $message->translation() ) === 0 ) {
+ continue;
+ }
+
+ $key = $mangler->unmangle( $message->key() );
+ $key = $this->transformKey( self::escapeJsString( $key ) );
+
+ $translation = self::escapeJsString( $message->translation() );
+
+ $body .= "\t{$key}: \"{$translation}\",\n";
+ }
+
+ if ( strlen( $body ) === 0 ) {
+ return false;
+ }
+
+ /**
+ * Strip last comma, re-add trailing newlines.
+ */
+ $body = substr( $body, 0, -2 );
+ $body .= "\n";
+
+ return $header . $body . $this->footer();
+ }
+
+ /**
+ * @param $authors array
+ * @return string
+ */
+ protected function authorsList( $authors ) {
+ if ( count( $authors ) === 0 ) {
+ return '';
+ }
+
+ $authorsList = '';
+ foreach ( $authors as $author ) {
+ $authorsList .= " * - $author\n";
+ }
+
+ // Remove trailing newline, and return.
+ return substr( " * Translators:\n$authorsList", 0, -1 );
+ }
+
+ // See ECMA 262 section 7.8.4 for string literal format
+ private static $pairs = array(
+ "\\" => "\\\\",
+ "\"" => "\\\"",
+ "'" => "\\'",
+ "\n" => "\\n",
+ "\r" => "\\r",
+
+ // To avoid closing the element or CDATA section.
+ "<" => "\\x3c",
+ ">" => "\\x3e",
+
+ // To avoid any complaints about bad entity refs.
+ "&" => "\\x26",
+
+ /*
+ * Work around https://bugzilla.mozilla.org/show_bug.cgi?id=274152
+ * Encode certain Unicode formatting chars so affected
+ * versions of Gecko do not misinterpret our strings;
+ * this is a common problem with Farsi text.
+ */
+ "\xe2\x80\x8c" => "\\u200c", // ZERO WIDTH NON-JOINER
+ "\xe2\x80\x8d" => "\\u200d", // ZERO WIDTH JOINER
+ );
+
+ /**
+ * @param $string string
+ * @return string
+ */
+ protected static function escapeJsString( $string ) {
+ return strtr( $string, self::$pairs );
+ }
+
+ /**
+ * @param $string string
+ * @return string
+ */
+ protected static function unescapeJsString( $string ) {
+ return strtr( $string, array_flip( self::$pairs ) );
+ }
+}
+
+/**
+ * File format support for Shapado, which uses JavaScript based format.
+ * @ingroup FFS
+ */
+class ShapadoJsFFS extends JavaScriptFFS {
+
+ /**
+ * @param $key string
+ *
+ * @return string
+ */
+ protected function transformKey( $key ) {
+ return $key;
+ }
+
+ /**
+ * @param $code string
+ * @param $authors array
+ * @return string
+ */
+ protected function header( $code, $authors ) {
+ global $wgSitename;
+
+ $name = TranslateUtils::getLanguageName( $code );
+ $native = TranslateUtils::getLanguageName( $code, $code );
+ $authorsList = $this->authorsList( $authors );
+
+ /** @cond doxygen_bug */
+ return <<<EOT
+/** Messages for $name ($native)
+ * Exported from $wgSitename
+ *
+{$authorsList}
+ */
+
+var I18n = {
+
+EOT;
+ /** @endcond */
+ }
+
+ /**
+ * @return string
+ */
+ protected function footer() {
+ return "};\n\n";
+ }
+}
diff --git a/MLEB/Translate/ffs/JsonFFS.php b/MLEB/Translate/ffs/JsonFFS.php
new file mode 100644
index 00000000..7534582d
--- /dev/null
+++ b/MLEB/Translate/ffs/JsonFFS.php
@@ -0,0 +1,110 @@
+<?php
+/**
+ * Support for JSON message file format.
+ *
+ * @file
+ * @author Niklas Laxström
+ * @copyright Copyright © 2012-2013, Niklas Laxström
+ * @license GPL-2.0+
+ */
+
+/**
+ * JsonFFS implements a message format where messages are encoded
+ * as key-value pairs in JSON objects. The format is extended to
+ * support author information under the special @metadata key.
+ *
+ * @ingroup FFS
+ * @since 2012-09-21
+ */
+class JsonFFS extends SimpleFFS {
+ /**
+ * @param $data
+ * @return bool
+ */
+ public static function isValid( $data ) {
+ return is_array( FormatJSON::decode( $data, /*as array*/true ) );
+ }
+
+ public function getFileExtensions() {
+ return array( '.json' );
+ }
+
+ /**
+ * @param array $data
+ * @return array Parsed data.
+ */
+ public function readFromVariable( $data ) {
+ $messages = (array) FormatJSON::decode( $data, /*as array*/true );
+ $authors = array();
+ $metadata = array();
+
+ if ( isset( $messages['@metadata']['authors'] ) ) {
+ $authors = (array)$messages['@metadata']['authors'];
+ unset( $messages['@metadata']['authors'] );
+ }
+
+ if ( isset( $messages['@metadata'] ) ) {
+ $metadata = $messages['@metadata'];
+ }
+
+ unset( $messages['@metadata'] );
+
+ $messages = $this->group->getMangler()->mangle( $messages );
+
+ return array(
+ 'MESSAGES' => $messages,
+ 'AUTHORS' => $authors,
+ 'METADATA' => $metadata,
+ );
+ }
+
+ /**
+ * @param MessageCollection $collection
+ * @return string
+ */
+ protected function writeReal( MessageCollection $collection ) {
+ $messages = array();
+ $template = $this->read( $collection->getLanguage() );
+
+ if ( isset( $template['METADATA'] ) ) {
+ $messages['@metadata'] = $template['METADATA'];
+ }
+
+ $authors = $collection->getAuthors();
+ $authors = $this->filterAuthors( $authors, $collection->code );
+
+ if ( isset( $template['AUTHORS'] ) ) {
+ $authors = array_unique( array_merge( $template['AUTHORS'], $authors ) );
+ }
+
+ if ( $authors !== array() ) {
+ $messages['@metadata']['authors'] = array_values( $authors );
+ }
+
+ $mangler = $this->group->getMangler();
+
+ /**
+ * @var $m ThinMessage
+ */
+ foreach ( $collection as $key => $m ) {
+ $value = $m->translation();
+ if ( $value === null ) {
+ continue;
+ }
+
+ if ( $m->hasTag( 'fuzzy' ) ) {
+ $value = str_replace( TRANSLATE_FUZZY, '', $value );
+ }
+
+ $key = $mangler->unmangle( $key );
+ $messages[$key] = $value;
+ }
+
+ // Do not create empty files
+ if ( !count( $messages ) ) {
+ return '';
+ }
+
+ return FormatJSON::encode( $messages, "\t", FormatJson::ALL_OK ) . "\n";
+ }
+}
diff --git a/MLEB/Translate/ffs/MediaWikiComplexMessages.php b/MLEB/Translate/ffs/MediaWikiComplexMessages.php
new file mode 100644
index 00000000..3ea1d1d5
--- /dev/null
+++ b/MLEB/Translate/ffs/MediaWikiComplexMessages.php
@@ -0,0 +1,779 @@
+<?php
+/**
+ * Classes for complex messages (%MediaWiki special page aliases, namespace names, magic words).
+ *
+ * @file
+ * @author Niklas Laxström
+ * @copyright Copyright © 2008-2010, Niklas Laxström
+ * @license GPL-2.0+
+ */
+
+/**
+ * Base class which implements handling and translation interface of
+ * non-message %MediaWiki items.
+ * @todo Needs documentation.
+ */
+abstract class ComplexMessages {
+ const LANG_MASTER = 0;
+ const LANG_CHAIN = 1;
+ const LANG_CURRENT = 2;
+ const PLACEHOLDER = 'languagecodeplaceholder';
+
+ protected $language = null;
+ protected $targetDir = null;
+ protected $id = '__BUG__';
+ protected $variable = '__BUG__';
+ protected $data = array();
+ protected $elementsInArray = true;
+ protected $databaseMsg = '__BUG__';
+ protected $chainable = false;
+ protected $firstMagic = false;
+ protected $constants = array();
+
+ protected $tableAttributes = array(
+ 'class' => 'wikitable',
+ 'border' => '2',
+ 'cellpadding' => '4',
+ 'cellspacing' => '0',
+ 'style' => 'background-color: #F9F9F9; border: 1px #AAAAAA solid; border-collapse: collapse;',
+ );
+
+ public function __construct( $langCode ) {
+ $this->language = $langCode;
+
+ $language = Language::factory( $langCode );
+ $this->targetDir = $language->getDir();
+ }
+
+ public function getTitle() {
+ // Give grep a chance to find the usages:
+ // translate-magic-special, translate-magic-words, translate-magic-namespace
+ return wfMessage( 'translate-magic-' . $this->id )->text();
+ }
+
+ #
+ # Data retrieval
+ #
+ protected $init = false;
+
+ public function getGroups() {
+ if ( !$this->init ) {
+ $saved = $this->getSavedData();
+ foreach ( $this->data as &$group ) {
+ $this->getData( $group, $saved );
+ }
+ $this->init = true;
+ }
+
+ return $this->data;
+ }
+
+ public function cleanData( $defs, $current ) {
+ foreach ( $current as $item => $values ) {
+ if ( !$this->elementsInArray ) {
+ break;
+ }
+
+ if ( !isset( $defs[$item] ) ) {
+ unset( $current[$item] );
+ continue;
+ }
+
+ foreach ( $values as $index => $value )
+ if ( in_array( $value, $defs[$item], true ) ) {
+ unset( $current[$item][$index] );
+ }
+ }
+
+ return $current;
+ }
+
+ public function mergeMagic( $defs, $current ) {
+ foreach ( $current as $item => &$values ) {
+ $newchain = $defs[$item];
+ array_splice( $newchain, 1, 0, $values );
+ $values = $newchain;
+ }
+
+ return $current;
+ }
+
+ public function getData( &$group, $savedData ) {
+ $defs = $this->readVariable( $group, 'en' );
+ $code = $this->language;
+
+ $current = $savedData + $this->readVariable( $group, $code );
+
+ // Clean up duplicates to definitions from saved data
+ $current = $this->cleanData( $defs, $current );
+
+ $chain = $current;
+ if ( $this->chainable ) {
+ foreach ( Language::getFallbacksFor( $code ) as $code ) {
+ $fbdata = $this->readVariable( $group, $code );
+ if ( $this->firstMagic ) {
+ $fbdata = $this->cleanData( $defs, $fbdata );
+ }
+
+ $chain = array_merge_recursive( $chain, $fbdata );
+ }
+ }
+
+ if ( $this->firstMagic ) {
+ $chain = $this->mergeMagic( $defs, $chain );
+ }
+
+ $data = $group['data'] = array( $defs, $chain, $current );
+
+ return $data;
+ }
+
+ /**
+ * Gets data from request. Needs to be run before the form is displayed and
+ * validation. Not needed for export, which uses request directly.
+ * @param $request WebRequest
+ */
+ public function loadFromRequest( WebRequest $request ) {
+ $saved = $this->parse( $this->formatForSave( $request ) );
+ foreach ( $this->data as &$group ) {
+ $this->getData( $group, $saved );
+ }
+ }
+
+ /**
+ * Gets saved data from Mediawiki namespace
+ * @return Array
+ */
+ protected function getSavedData() {
+ $data = TranslateUtils::getMessageContent( $this->databaseMsg, $this->language );
+
+ if ( !$data ) {
+ return array();
+ } else {
+ return $this->parse( $data );
+ }
+ }
+
+ protected function parse( $data ) {
+ $lines = array_map( 'trim', explode( "\n", $data ) );
+ $array = array();
+ foreach ( $lines as $line ) {
+ if ( $line === '' || $line[0] === '#' || $line[0] === '<' ) {
+ continue;
+ }
+
+ if ( strpos( $line, '=' ) === false ) {
+ continue;
+ }
+
+ list( $name, $values ) = array_map( 'trim', explode( '=', $line, 2 ) );
+ if ( $name === '' || $values === '' ) {
+ continue;
+ }
+
+ $data = array_map( 'trim', explode( ',', $values ) );
+ $array[$name] = $data;
+ }
+
+ return $array;
+ }
+
+ /**
+ * Return an array of keys that can be used to iterate over all keys
+ * @param $group
+ * @return Array of keys for data
+ */
+ protected function getIterator( $group ) {
+ $groups = $this->getGroups();
+
+ return array_keys( $groups[$group]['data'][self::LANG_MASTER] );
+ }
+
+ protected function val( $group, $type, $key ) {
+ $array = $this->getGroups();
+ wfSuppressWarnings();
+ $subarray = $array[$group]['data'][$type][$key];
+ wfRestoreWarnings();
+ if ( $this->elementsInArray ) {
+ if ( !$subarray || !count( $subarray ) ) {
+ return array();
+ }
+ } else {
+ if ( !$subarray ) {
+ return array();
+ }
+ }
+
+ if ( !is_array( $subarray ) ) {
+ $subarray = array( $subarray );
+ }
+
+ return $subarray;
+ }
+
+ /**
+ * @param $group
+ * @param $code
+ * @return array
+ */
+ protected function readVariable( $group, $code ) {
+ $file = $group['file'];
+ if ( !$group['code'] ) {
+ $file = str_ireplace( self::PLACEHOLDER, str_replace( '-', '_', ucfirst( $code ) ), $file );
+ }
+
+ ${$group['var']} = array(); # Initialize
+ if ( file_exists( $file ) ) {
+ require $file; # Include
+ }
+
+ if ( $group['code'] ) {
+ wfSuppressWarnings();
+ $data = (array) ${$group['var']} [$code];
+ wfRestoreWarnings();
+ } else {
+ $data = ${$group['var']};
+ }
+
+ return self::arrayMapRecursive( 'strval', $data );
+ }
+
+ public static function arrayMapRecursive( $callback, $data ) {
+ foreach ( $data as $index => $values ) {
+ if ( is_array( $values ) ) {
+ $data[$index] = self::arrayMapRecursive( $callback, $values );
+ } else {
+ $data[$index] = call_user_func( $callback, $values );
+ }
+ }
+
+ return $data;
+ }
+
+ #
+ # /Data retrieval
+ #
+
+ #
+ # Output
+ #
+ public function header( $title ) {
+ $colspan = array( 'colspan' => 3 );
+ $header = Xml::element( 'th', $colspan, $this->getTitle() . ' - ' . $title );
+ $subheading[] = '<th>' . wfMessage( 'translate-magic-cm-original' )->escaped() . '</th>';
+ $subheading[] = '<th>' . wfMessage( 'translate-magic-cm-current' )->escaped() . '</th>';
+ $subheading[] = '<th>' . wfMessage( 'translate-magic-cm-to-be' )->escaped() . '</th>';
+
+ return '<tr>' . $header . '</tr>' .
+ '<tr>' . implode( "\n", $subheading ) . '</tr>';
+ }
+
+ public function output() {
+ $colspan = array( 'colspan' => 3 );
+
+ $s = Xml::openElement( 'table', $this->tableAttributes );
+
+ foreach ( array_keys( $this->data ) as $group ) {
+ $s .= $this->header( $this->data[$group]['label'] );
+
+ foreach ( $this->getIterator( $group ) as $key ) {
+ $rowContents = '';
+
+ $value = $this->val( $group, self::LANG_MASTER, $key );
+ if ( $this->firstMagic ) {
+ array_shift( $value );
+ }
+
+ $value = array_map( 'htmlspecialchars', $value );
+ // Force ltr direction. The source is pretty much guaranteed to be English-based.
+ $rowContents .= '<td dir="ltr">' . $this->formatElement( $value ) . '</td>';
+
+ $value = $this->val( $group, self::LANG_CHAIN, $key );
+ if ( $this->firstMagic ) {
+ array_shift( $value );
+ }
+
+ // Apply bidi-isolation to each value.
+ // The values can both RTL and LTR and mixing them in a comma list
+ // can mix things up.
+ foreach ( $value as &$currentTranslation ) {
+ $currentTranslation = Xml::element( 'bdi', null, $currentTranslation );
+ }
+ $value = $this->highlight( $key, $value );
+ $rowContents .= '<td>' . $this->formatElement( $value ) . '</td>';
+
+ $value = $this->val( $group, self::LANG_CURRENT, $key );
+ $rowContents .= '<td>';
+ $rowContents .= $this->editElement( $key, $this->formatElement( $value ) );
+ $rowContents .= '</td>';
+
+ $s .= Xml::tags( 'tr', array( 'id' => "mw-sp-magic-$key" ), $rowContents );
+ }
+ }
+
+ $context = RequestContext::getMain();
+
+ if ( $context->getUser()->isAllowed( 'translate' ) ) {
+ $s .= '<tr>' . Xml::tags( 'td', $colspan, $this->getButtons() ) . '<tr>';
+ }
+
+ $s .= Xml::closeElement( 'table' );
+
+ return Xml::tags(
+ 'form',
+ array(
+ 'method' => 'post',
+ 'action' => $context->getRequest()->getRequestURL()
+ ),
+ $s
+ );
+ }
+
+ public function getButtons() {
+ return Xml::inputLabel(
+ wfMessage( 'translate-magic-cm-comment' )->text(),
+ 'comment',
+ 'sp-translate-magic-comment'
+ ) .
+ Xml::submitButton(
+ wfMessage( 'translate-magic-cm-save' )->text(),
+ array( 'name' => 'savetodb' )
+ );
+ }
+
+ public function formatElement( $element ) {
+ if ( !count( $element ) ) {
+ return '';
+ }
+
+ if ( is_array( $element ) ) {
+ $element = array_map( 'trim', $element );
+ $element = implode( ', ', $element );
+ }
+
+ return trim( $element );
+ }
+
+ function getKeyForEdit( $key ) {
+ return Sanitizer::escapeId( 'sp-translate-magic-cm-' . $this->id . $key );
+ }
+
+ public function editElement( $key, $contents ) {
+ return Xml::input( $this->getKeyForEdit( $key ), 40, $contents, array(
+ 'lang' => $this->language,
+ 'dir' => $this->targetDir,
+ ) );
+ }
+
+ #
+ # /Output
+ #
+
+ #
+ # Save to database
+ #
+
+ function getKeyForSave() {
+ return $this->databaseMsg . '/' . $this->language;
+ }
+
+ /**
+ * @param WebRequest $request
+ * @return string
+ */
+ function formatForSave( WebRequest $request ) {
+ $text = '';
+
+ // Do not replace spaces by underscores for magic words. See bug 46613
+ $replaceSpace = $request->getVal( 'module' ) !== 'magic';
+
+ foreach ( array_keys( $this->data ) as $group ) {
+ foreach ( $this->getIterator( $group ) as $key ) {
+ $data = $request->getText( $this->getKeyForEdit( $key ) );
+ // Make a nice array out of the submit with trimmed values.
+ $data = array_map( 'trim', explode( ',', $data ) );
+
+ if ( $replaceSpace ) {
+ // Normalise: Replace spaces with underscores.
+ $data = str_replace( ' ', '_', $data );
+ }
+
+ // Create final format.
+ $data = implode( ', ', $data );
+ if ( $data !== '' ) {
+ $text .= "$key = $data\n";
+ }
+ }
+ }
+
+ return $text;
+ }
+
+ /**
+ * @param WebRequest $request
+ * @throws MWException
+ */
+ public function save( $request ) {
+ $title = Title::newFromText( 'MediaWiki:' . $this->getKeyForSave() );
+ $page = WikiPage::factory( $title );
+
+ $data = "# DO NOT EDIT THIS PAGE DIRECTLY! Use [[Special:AdvancedTranslate]].\n<pre>\n" .
+ $this->formatForSave( $request ) . "\n</pre>";
+
+ $comment = $request->getText(
+ 'comment',
+ wfMessage( 'translate-magic-cm-updatedusing' )->inContentLanguage()->text()
+ );
+
+ $content = ContentHandler::makeContent( $data, $title );
+ $status = $page->doEditContent( $content, $comment );
+
+ if ( $status === false || ( is_object( $status ) && !$status->isOK() ) ) {
+ throw new MWException( wfMessage( 'translate-magic-cm-savefailed' )->text() );
+ }
+
+ /* Reset outdated array */
+ $this->init = false;
+ }
+
+ #
+ # !Save to database
+ #
+
+ #
+ # Export
+ #
+ public function validate( &$errors = array(), $filter = false ) {
+ $used = array();
+ foreach ( array_keys( $this->data ) as $group ) {
+ if ( $filter !== false && !in_array( $group, (array)$filter, true ) ) {
+ continue;
+ }
+
+ $this->validateEach( $errors, $group, $used );
+ }
+ }
+
+ protected function validateEach( &$errors = array(), $group, &$used ) {
+ foreach ( $this->getIterator( $group ) as $key ) {
+ $values = $this->val( $group, self::LANG_CURRENT, $key );
+ $link = Xml::element( 'a', array( 'href' => "#mw-sp-magic-$key" ), $key );
+
+ if ( count( $values ) !== count( array_filter( $values ) ) ) {
+ $errors[] = "There is empty value in $link.";
+ }
+
+ foreach ( $values as $v ) {
+ if ( isset( $used[$v] ) ) {
+ $otherkey = $used[$v];
+ $first = Xml::element(
+ 'a',
+ array( 'href' => "#mw-sp-magic-$otherkey" ),
+ $otherkey
+ );
+ $errors[] = "Translation <strong>$v</strong> is used more than once " .
+ "for $first and $link.";
+ } else {
+ $used[$v] = $key;
+ }
+ }
+ }
+ }
+
+ public function export( $filter = false ) {
+ $text = '';
+ $errors = array();
+ $this->validate( $errors, $filter );
+ foreach ( $errors as $_ ) $text .= "#!!# $_\n";
+
+ foreach ( $this->getGroups() as $group => $data ) {
+ if ( $filter !== false && !in_array( $group, (array)$filter, true ) ) {
+ continue;
+ }
+
+ $text .= $this->exportEach( $group, $data );
+ }
+
+ return $text;
+ }
+
+ protected function exportEach( $group, $data ) {
+ $var = $data['var'];
+ $items = $data['data'];
+
+ $extra = $data['code'] ? "['{$this->language}']" : '';
+
+ $out = '';
+
+ $indexKeys = array();
+ foreach ( array_keys( $items[self::LANG_MASTER] ) as $key ) {
+ $indexKeys[$key] = isset( $this->constants[$key] ) ?
+ $this->constants[$key] :
+ "'$key'";
+ }
+
+ $padTo = max( array_map( 'strlen', $indexKeys ) ) + 3;
+
+ foreach ( $this->getIterator( $group ) as $key ) {
+ $temp = "\t{$indexKeys[$key]}";
+
+ while ( strlen( $temp ) <= $padTo ) {
+ $temp .= ' ';
+ }
+
+ $from = self::LANG_CURRENT;
+ // Abuse of the firstMagic property, should use something proper
+ if ( $this->firstMagic ) {
+ $from = self::LANG_CHAIN;
+ }
+
+ // Check for translations
+ $val = $this->val( $group, self::LANG_CURRENT, $key );
+ if ( !$val || !count( $val ) ) {
+ continue;
+ }
+
+ // Then get the data we really want
+ $val = $this->val( $group, $from, $key );
+
+ // Remove duplicated entries, causes problems with magic words
+ // Just to be sure, it should not be possible to save invalid data anymore
+ $val = array_unique( $val /* @todo SORT_REGULAR */ );
+
+ // So do empty elements...
+ foreach ( $val as $k => $v ) {
+ if ( $v === '' ) {
+ unset( $val[$k] );
+ }
+ }
+
+ // Another check
+ if ( !count( $val ) ) {
+ continue;
+ }
+
+ $normalized = array_map( array( $this, 'normalize' ), $val );
+ if ( $this->elementsInArray ) {
+ $temp .= "=> array( " . implode( ', ', $normalized ) . " ),";
+ } else {
+ $temp .= "=> " . implode( ', ', $normalized ) . ",";
+ }
+ $out .= $temp . "\n";
+ }
+
+ if ( $out !== '' ) {
+ $text = "# {$data['label']} \n";
+ $text .= "\$$var$extra = array(\n" . $out . ");\n\n";
+
+ return $text;
+ } else {
+ return '';
+ }
+ }
+
+ /**
+ * Returns string with quotes that should be valid php
+ * @param $data string
+ * @throws MWException
+ * @return string
+ */
+ protected function normalize( $data ) {
+ # Escape quotes
+ if ( !is_string( $data ) ) {
+ throw new MWException();
+ }
+ $data = preg_replace( "/(?<!\\\\)'/", "\'", trim( $data ) );
+
+ return "'$data'";
+ }
+
+ #
+ # /Export
+ #
+ public function highlight( $key, $values ) {
+ return $values;
+ }
+}
+
+/**
+ * Adds support for translating special page aliases via Special:AdvancedTranslate.
+ * @todo Needs documentation.
+ */
+class SpecialPageAliasesCM extends ComplexMessages {
+ protected $id = SpecialMagic::MODULE_SPECIAL;
+ protected $databaseMsg = 'sp-translate-data-SpecialPageAliases';
+ protected $chainable = true;
+
+ public function __construct( $code ) {
+ parent::__construct( $code );
+ $this->data['core'] = array(
+ 'label' => 'MediaWiki Core',
+ 'var' => 'specialPageAliases',
+ 'file' => Language::getMessagesFileName( self::PLACEHOLDER ),
+ 'code' => false,
+ );
+
+ $groups = MessageGroups::singleton()->getGroups();
+ foreach ( $groups as $g ) {
+ if ( !$g instanceof MediaWikiExtensionMessageGroup ) {
+ continue;
+ }
+ $conf = $g->getConfiguration();
+ if ( !isset( $conf['FILES']['aliasFileSource'] ) ) {
+ continue;
+ }
+ $file = $g->replaceVariables( $conf['FILES']['aliasFileSource'], 'en' );
+ if ( file_exists( $file ) ) {
+ $this->data[$g->getId()] = array(
+ 'label' => $g->getLabel(),
+ 'var' => 'specialPageAliases',
+ 'file' => $file,
+ 'code' => $code,
+ );
+ }
+ }
+ }
+
+ public function highlight( $key, $values ) {
+ if ( count( $values ) ) {
+ if ( !isset( $values[0] ) ) {
+ throw new MWException( "Something missing from values: " .
+ print_r( $values, true ) );
+ }
+
+ $values[0] = "<strong>$values[0]</strong>";
+ }
+
+ return $values;
+ }
+
+ protected function validateEach( &$errors = array(), $group, &$used ) {
+ parent::validateEach( $errors, $group, $used );
+ foreach ( $this->getIterator( $group ) as $key ) {
+ $values = $this->val( $group, self::LANG_CURRENT, $key );
+
+ foreach ( $values as $_ ) {
+ wfSuppressWarnings();
+ $title = SpecialPage::getTitleFor( $_ );
+ wfRestoreWarnings();
+ $link = Xml::element( 'a', array( 'href' => "#mw-sp-magic-$key" ), $key );
+ if ( $title === null ) {
+ if ( $_ !== '' ) {
+ // Empty values checked elsewhere
+ $errors[] = "Translation <strong>$_</strong> is invalid title in $link.";
+ }
+ } else {
+ $text = $title->getText();
+ $dbkey = $title->getDBkey();
+ if ( $text !== $_ && $dbkey !== $_ ) {
+ $errors[] = "Translation <strong>$_</strong> for $link is not in " .
+ "normalised form, which is <strong>$text</strong>";
+ }
+ }
+ }
+ }
+ }
+}
+
+/**
+ * Adds support for translating magic words via Special:AdvancedTranslate.
+ * @todo Needs documentation.
+ */
+class MagicWordsCM extends ComplexMessages {
+ protected $id = SpecialMagic::MODULE_MAGIC;
+ protected $firstMagic = true;
+ protected $chainable = true;
+ protected $databaseMsg = 'sp-translate-data-MagicWords';
+
+ public function __construct( $code ) {
+ parent::__construct( $code );
+ $this->data['core'] = array(
+ 'label' => 'MediaWiki Core',
+ 'var' => 'magicWords',
+ 'file' => Language::getMessagesFileName( self::PLACEHOLDER ),
+ 'code' => false,
+ );
+
+ $groups = MessageGroups::singleton()->getGroups();
+ foreach ( $groups as $g ) {
+ if ( !$g instanceof MediaWikiExtensionMessageGroup ) {
+ continue;
+ }
+ $conf = $g->getConfiguration();
+ if ( !isset( $conf['FILES']['magicFileSource'] ) ) {
+ continue;
+ }
+ $file = $g->replaceVariables( $conf['FILES']['magicFileSource'], 'en' );
+ if ( file_exists( $file ) ) {
+ $this->data[$g->getId()] = array(
+ 'label' => $g->getLabel(),
+ 'var' => 'magicWords',
+ 'file' => $file,
+ 'code' => $code,
+ );
+ }
+ }
+ }
+
+ public function highlight( $key, $values ) {
+ if ( count( $values ) && $key === 'redirect' ) {
+ $values[0] = "<strong>$values[0]</strong>";
+ }
+
+ return $values;
+ }
+}
+
+/**
+ * Adds support for translating namespace names via Special:AdvancedTranslate.
+ * @todo Needs documentation.
+ */
+class NamespaceCM extends ComplexMessages {
+ protected $id = SpecialMagic::MODULE_NAMESPACE;
+ protected $elementsInArray = false;
+ protected $databaseMsg = 'sp-translate-data-Namespaces';
+
+ public function __construct( $code ) {
+ parent::__construct( $code );
+ $this->data['core'] = array(
+ 'label' => 'MediaWiki Core',
+ 'var' => 'namespaceNames',
+ 'file' => Language::getMessagesFileName( self::PLACEHOLDER ),
+ 'code' => false,
+ );
+ }
+
+ protected $constants = array(
+ -2 => 'NS_MEDIA',
+ -1 => 'NS_SPECIAL',
+ 0 => 'NS_MAIN',
+ 1 => 'NS_TALK',
+ 2 => 'NS_USER',
+ 3 => 'NS_USER_TALK',
+ 4 => 'NS_PROJECT',
+ 5 => 'NS_PROJECT_TALK',
+ 6 => 'NS_FILE',
+ 7 => 'NS_FILE_TALK',
+ 8 => 'NS_MEDIAWIKI',
+ 9 => 'NS_MEDIAWIKI_TALK',
+ 10 => 'NS_TEMPLATE',
+ 11 => 'NS_TEMPLATE_TALK',
+ 12 => 'NS_HELP',
+ 13 => 'NS_HELP_TALK',
+ 14 => 'NS_CATEGORY',
+ 15 => 'NS_CATEGORY_TALK',
+ );
+
+ protected function validateEach( &$errors = array(), $group, &$used ) {
+ parent::validateEach( $errors, $group, $used );
+ foreach ( $this->getIterator( $group ) as $key ) {
+ $values = $this->val( $group, self::LANG_CURRENT, $key );
+
+ if ( count( $values ) > 1 ) {
+ $link = Xml::element( 'a', array( 'href' => "#mw-sp-magic-$key" ), $key );
+ $errors[] = "Namespace $link can have only one translation. Replace the " .
+ "translation with a new one, and notify staff about the change.";
+ }
+ }
+ }
+}
diff --git a/MLEB/Translate/ffs/MediaWikiExtensionFFS.php b/MLEB/Translate/ffs/MediaWikiExtensionFFS.php
new file mode 100644
index 00000000..2df5b56a
--- /dev/null
+++ b/MLEB/Translate/ffs/MediaWikiExtensionFFS.php
@@ -0,0 +1,289 @@
+<?php
+/**
+ * Support for the ugly file format that is used by MediaWiki extensions.
+ *
+ * @file
+ * @author Niklas Laxström
+ * @copyright Copyright © 2012-2013, Niklas Laxström
+ * @license GPL-2.0+
+ */
+
+/**
+ * Manipulates ExtensionName.i18n.php style files.
+ *
+ * @ingroup FFS
+ * @since 2012-10-20
+ */
+class MediaWikiExtensionFFS extends SimpleFFS {
+ public function supportsFuzzy() {
+ return 'write';
+ }
+
+ public function getFileExtensions() {
+ return array( '.i18n.php' );
+ }
+
+ /**
+ * To avoid parsing full files again and again when reading or exporting
+ * multiple languages, keep cache of the sections of the latest active file.
+ * @var array
+ */
+ protected static $cache = array();
+
+ /**
+ * @param string $data Full file contents
+ * @param string $filename Full path to file for debugging
+ * @return string[] Sections indexed by language code, or 0 for header section
+ * @throws MWException
+ */
+ protected function splitSections( $data, $filename = 'unknown' ) {
+ $data = SimpleFFS::fixNewLines( $data );
+
+ $splitter = '$messages = array();';
+
+ $pos = strpos( $data, $splitter );
+ if ( $pos === false ) {
+ throw new MWException( "MWEFFS1: File $filename: splitter not found" );
+ }
+
+ $offset = $pos + strlen( $splitter );
+ $header = substr( $data, 0, $offset );
+
+ $pattern = '(?: /\*\* .*? \*/ \n )? (?: \\$.*? \n\);(?:\n\n|\s+\z) )';
+ $regexp = "~$pattern~xsu";
+ $matches = array();
+ preg_match_all( $regexp, $data, $matches, PREG_SET_ORDER, $offset );
+
+ $sections = array();
+ $sections[] = $header;
+
+ foreach ( $matches as $data ) {
+ $pattern = "\\\$messages\['([a-z-]+)'\]";
+ $regexp = "~$pattern~su";
+ $matches = array();
+ if ( !preg_match( $regexp, $data[0], $matches ) ) {
+ throw new MWException( "MWEFFS2: File $filename: malformed section: {$data[0]}" );
+ }
+ $code = $matches[1];
+ // Normalize number of newlines after each section
+ $sections[$code] = rtrim( $data[0] );
+ }
+
+ return $sections;
+ }
+
+ /**
+ * @param string $code Language code.
+ * @return array|bool
+ */
+ public function read( $code ) {
+ $filename = $this->group->getSourceFilePath( $code );
+ if ( !file_exists( $filename ) ) {
+ return false;
+ }
+
+ if ( isset( self::$cache[$filename]['parsed'][$code] ) ) {
+ return self::$cache[$filename]['parsed'][$code];
+ }
+
+ if ( !isset( self::$cache[$filename] ) ) {
+ // Clear the cache if the filename changes to reduce memory use
+ self::$cache = array();
+
+ $contents = file_get_contents( $filename );
+ self::$cache[$filename]['sections'] =
+ $this->splitSections( $contents, $filename );
+ }
+
+ // Shorten
+ $cache = &self::$cache[$filename];
+
+ $value = false;
+ if ( isset( $cache['sections'][$code] ) ) {
+ $value = $this->readFromVariable( $cache['sections'][$code] );
+ }
+
+ $cache['parsed'][$code] = $value;
+
+ return $value;
+ }
+
+ /**
+ * @param string $data
+ * @return array Parsed data.
+ * @throws MWException
+ */
+ public function readFromVariable( $data ) {
+ $messages = array();
+ eval( $data );
+
+ $c = count( $messages );
+ if ( $c !== 1 ) {
+ throw new MWException( "MWEFFS3: Expected 1, got $c: $data" );
+ }
+
+ $messages = array_shift( $messages );
+ $mangler = $this->group->getMangler();
+ $messages = $mangler->mangle( $messages );
+
+ return array(
+ 'MESSAGES' => $messages,
+ );
+ }
+
+ // Handled in writeReal
+ protected function tryReadSource( $filename, MessageCollection $collection ) {
+ return;
+ }
+
+ /**
+ * @param MessageCollection $collection
+ * @return string
+ */
+ protected function writeReal( MessageCollection $collection ) {
+ $mangler = $this->group->getMangler();
+ $code = $collection->getLanguage();
+
+ $block = $this->generateMessageBlock( $collection, $mangler );
+ if ( $block === false ) {
+ return '';
+ }
+
+ // Ugly code, relies on side effects
+ // Avoid parsing stuff with fake language code
+ // Premature optimization
+ $this->read( 'mul' );
+ $filename = $this->group->getSourceFilePath( $code );
+ $cache = &self::$cache[$filename];
+
+ // Generating authors
+ if ( isset( $cache['sections'][$code] ) ) {
+ // More premature optimization
+ $fromFile = self::parseAuthorsFromString( $cache['sections'][$code] );
+ $collection->addCollectionAuthors( $fromFile );
+ }
+
+ $authors = $collection->getAuthors();
+ $authors = $this->filterAuthors( $authors, $code );
+
+ $authorList = '';
+ foreach ( $authors as $author ) {
+ $authorList .= "\n * @author $author";
+ }
+
+ // And putting all together
+ $name = TranslateUtils::getLanguageName( $code );
+ $native = TranslateUtils::getLanguageName( $code, $code );
+
+ $section = <<<PHP
+/** $name ($native)$authorList
+ */
+\$messages['$code'] = array($block);
+PHP;
+
+ // Store the written part, so that when next language is called,
+ // the new version will be used (instead of the old parsed version
+ $cache['sections'][$code] = $section;
+
+ // Make a copy we can alter
+ $sections = $cache['sections'];
+ $priority = array();
+
+ global $wgTranslateDocumentationLanguageCode;
+ $codes = array(
+ 0, // File header
+ $this->group->getSourceLanguage(),
+ $wgTranslateDocumentationLanguageCode,
+ );
+ foreach ( $codes as $pcode ) {
+ if ( isset( $sections[$pcode] ) ) {
+ $priority[] = $sections[$pcode];
+ unset( $sections[$pcode] );
+ }
+ }
+
+ ksort( $sections );
+
+ return implode( "\n\n", $priority ) . "\n\n" . implode( "\n\n", $sections ) . "\n";
+ }
+
+ protected function generateMessageBlock( MessageCollection $collection, StringMatcher $mangler ) {
+ $block = '';
+ /**
+ * @var TMessage $m
+ */
+ foreach ( $collection as $key => $m ) {
+ $value = $m->translation();
+ if ( $value === null ) {
+ continue;
+ }
+
+ $key = $mangler->unmangle( $key );
+ $value = str_replace( TRANSLATE_FUZZY, '', $value );
+ $fuzzy = $m->hasTag( 'fuzzy' ) ? ' # Fuzzy' : '';
+
+ $key = self::quote( $key );
+ $value = self::quote( $value );
+ $block .= "\t$key => $value,$fuzzy\n";
+ }
+
+ // Do not create empty sections
+ if ( $block === '' ) {
+ return false;
+ }
+
+ return "\n$block";
+ }
+
+ /**
+ * Scans for \@author tags in the string.
+ * @param string $string String containing the comments of a section
+ * @return string[] List of authors
+ */
+ protected static function parseAuthorsFromString( $string ) {
+ preg_match_all( '/@author (.*)/', $string, $m );
+
+ return $m[1];
+ }
+
+ /**
+ * Tries to find optimal way to quote a string by choosing
+ * either double quotes or single quotes depending on how
+ * many escapes are needed.
+ * @param string $value The string to quote.
+ * @return string String suitable for inclusion in PHP code
+ */
+ protected static function quote( $value ) {
+ # Check for the appropriate apostrophe and add the value
+ # Quote \ here, because it needs always escaping
+ $value = addcslashes( $value, '\\' );
+
+ # For readability
+ $single = "'";
+ $double = '"';
+ $quote = $single; // Default
+
+ # It is safe to use '-quoting, unless there is '-quote in the text
+ if ( strpos( $value, $single ) !== false ) {
+ # In case there are no variables that need to be escaped, just use "-quote
+ if ( strpos( $value, $double ) === false && !preg_match( '/\$[^0-9]/', $value ) ) {
+ $quote = $double;
+ } else {
+ # Something needs quoting, so pick the quote which causes less quoting
+ $doubleEsc = substr_count( $value, $double ) + substr_count( $value, '$' );
+ $singleEsc = substr_count( $value, $single );
+
+ if ( $doubleEsc < $singleEsc ) {
+ $quote = $double;
+ $extra = '$';
+ } else {
+ $extra = '';
+ }
+
+ $value = addcslashes( $value, $quote . $extra );
+ }
+ }
+
+ return $quote . $value . $quote;
+ }
+}
diff --git a/MLEB/Translate/ffs/MediaWikiExtensions.php b/MLEB/Translate/ffs/MediaWikiExtensions.php
new file mode 100644
index 00000000..231a730f
--- /dev/null
+++ b/MLEB/Translate/ffs/MediaWikiExtensions.php
@@ -0,0 +1,338 @@
+<?php
+/**
+ * Classes for %MediaWiki extension translation.
+ *
+ * @file
+ * @author Niklas Laxström
+ * @copyright Copyright © 2008-2013, Niklas Laxström
+ * @license GPL-2.0+
+ */
+
+/**
+ * Class which handles special definition format for %MediaWiki extensions.
+ */
+class PremadeMediawikiExtensionGroups {
+ protected $useConfigure = true;
+ protected $idPrefix = 'ext-';
+ protected $namespace = NS_MEDIAWIKI;
+
+ /**
+ * @var string
+ * @see __construct
+ */
+ protected $path;
+
+ /**
+ * @var string
+ * @see __construct
+ */
+ protected $definitionFile;
+
+ /**
+ * @param string $def Absolute path to the definition file. See
+ * tests/data/mediawiki-extensions.txt for example.
+ * @param string $path General prefix to the file locations without
+ * the extension specific part. Should start with %GROUPROOT%/ or
+ * otherwise export path will be wrong. The export path is
+ * constructed by replacing %GROUPROOT%/ with target directory.
+ */
+ public function __construct( $def, $path ) {
+ $this->definitionFile = $def;
+ $this->path = $path;
+ }
+
+ /**
+ * Whether to use the Configure extension to load extension home pages.
+ * @since 2012-03-22
+ */
+ public function setUseConfigure( $value ) {
+ $this->useConfigure = $value;
+ }
+
+ /**
+ * How to prefix message group ids.
+ * @since 2012-03-22
+ */
+ public function setGroupPrefix( $value ) {
+ $this->idPrefix = $value;
+ }
+
+ /**
+ * What namespace holds the messages.
+ * @since 2012-03-22
+ */
+ public function setNamespace( $value ) {
+ $this->namespace = $value;
+ }
+
+ /// Makes an group id from extension name
+ static function foldId( $name ) {
+ return preg_replace( '/\s+/', '', strtolower( $name ) );
+ }
+
+ /// Hook: TranslatePostInitGroups
+ public function register( array &$list, array &$deps ) {
+ $groups = $this->parseFile();
+ $groups = $this->processGroups( $groups );
+ foreach ( $groups as $id => $g ) {
+ $list[$id] = $this->createMessageGroup( $id, $g );
+ }
+
+ $deps[] = new FileDependency( $this->definitionFile );
+
+ return true;
+ }
+
+ /**
+ * Creates MediaWikiExtensionMessageGroup objects from parsed data.
+ * @param string $id unique group id already prefixed
+ * @param array $info array of group info
+ * @return MediaWikiExtensionMessageGroup
+ */
+ protected function createMessageGroup( $id, $info ) {
+ $conf = array();
+ $conf['BASIC']['class'] = 'MediaWikiExtensionMessageGroup';
+ $conf['BASIC']['id'] = $id;
+ $conf['BASIC']['namespace'] = $this->namespace;
+ $conf['BASIC']['label'] = $info['name'];
+
+ if ( isset( $info['desc'] ) ) {
+ $conf['BASIC']['description'] = $info['desc'];
+ } else {
+ $conf['BASIC']['descriptionmsg'] = $info['descmsg'];
+ $conf['BASIC']['extensionurl'] = $info['url'];
+ }
+
+ if ( $info['format'] === 'json' ) {
+ $conf['FILES']['class'] = 'JsonFFS';
+ } else {
+ $conf['FILES']['class'] = 'MediaWikiExtensionFFS';
+ }
+
+ $conf['FILES']['sourcePattern'] = $this->path . '/' . $info['file'];
+
+ // @todo Find a better way
+ if ( isset( $info['aliasfile'] ) ) {
+ $conf['FILES']['aliasFileSource'] = $this->path . '/' . $info['aliasfile'];
+ $conf['FILES']['aliasFile'] = $info['aliasfile'];
+ }
+ if ( isset( $info['magicfile'] ) ) {
+ $conf['FILES']['magicFileSource'] = $this->path . '/' . $info['magicfile'];
+ $conf['FILES']['magicFile'] = $info['magicfile'];
+ }
+
+ if ( isset( $info['prefix'] ) ) {
+ $conf['MANGLER']['class'] = 'StringMatcher';
+ $conf['MANGLER']['prefix'] = $info['prefix'];
+ $conf['MANGLER']['patterns'] = $info['mangle'];
+
+ $mangler = new StringMatcher( $info['prefix'], $info['mangle'] );
+ if ( isset( $info['ignored'] ) ) {
+ $info['ignored'] = $mangler->mangle( $info['ignored'] );
+ }
+ if ( isset( $info['optional'] ) ) {
+ $info['optional'] = $mangler->mangle( $info['optional'] );
+ }
+ }
+
+ $conf['CHECKER']['class'] = 'MediaWikiMessageChecker';
+ $conf['CHECKER']['checks'] = array(
+ 'pluralCheck',
+ 'pluralFormsCheck',
+ 'wikiParameterCheck',
+ 'wikiLinksCheck',
+ 'XhtmlCheck',
+ 'braceBalanceCheck',
+ 'pagenameMessagesCheck',
+ 'miscMWChecks',
+ );
+
+ $conf['INSERTABLES']['class'] = 'MediaWikiInsertablesSuggester';
+
+ if ( isset( $info['optional'] ) ) {
+ $conf['TAGS']['optional'] = $info['optional'];
+ }
+ if ( isset( $info['ignored'] ) ) {
+ $conf['TAGS']['ignored'] = $info['ignored'];
+ }
+
+ return MessageGroupBase::factory( $conf );
+ }
+
+ protected function parseFile() {
+ $defines = file_get_contents( $this->definitionFile );
+ $linefeed = '(\r\n|\n)';
+ $sections = array_map(
+ 'trim',
+ preg_split( "/$linefeed{2,}/", $defines, -1, PREG_SPLIT_NO_EMPTY )
+ );
+ $groups = array();
+
+ foreach ( $sections as $section ) {
+ $lines = array_map( 'trim', preg_split( "/$linefeed/", $section ) );
+ $newgroup = array();
+
+ foreach ( $lines as $line ) {
+ if ( $line === '' || $line[0] === '#' ) {
+ continue;
+ }
+
+ if ( strpos( $line, '=' ) === false ) {
+ if ( empty( $newgroup['name'] ) ) {
+ $newgroup['name'] = $line;
+ } else {
+ throw new MWException( "Trying to define name twice: " . $line );
+ }
+ } else {
+ list( $key, $value ) = array_map( 'trim', explode( '=', $line, 2 ) );
+ switch ( $key ) {
+ case 'aliasfile':
+ case 'desc':
+ case 'descmsg':
+ case 'file':
+ case 'format':
+ case 'id':
+ case 'magicfile':
+ case 'var':
+ $newgroup[$key] = $value;
+ break;
+ case 'optional':
+ case 'ignored':
+ $values = array_map( 'trim', explode( ',', $value ) );
+ if ( !isset( $newgroup[$key] ) ) {
+ $newgroup[$key] = array();
+ }
+ $newgroup[$key] = array_merge( $newgroup[$key], $values );
+ break;
+ case 'prefix':
+ list( $prefix, $messages ) = array_map(
+ 'trim',
+ explode( '|', $value, 2 )
+ );
+ if ( isset( $newgroup['prefix'] ) && $newgroup['prefix'] !== $prefix ) {
+ throw new MWException(
+ "Only one prefix supported: {$newgroup['prefix']} !== $prefix"
+ );
+ }
+ $newgroup['prefix'] = $prefix;
+
+ if ( !isset( $newgroup['mangle'] ) ) {
+ $newgroup['mangle'] = array();
+ }
+
+ $messages = array_map( 'trim', explode( ',', $messages ) );
+ $newgroup['mangle'] = array_merge( $newgroup['mangle'], $messages );
+ break;
+ default:
+ throw new MWException( "Unknown key:" . $key );
+ }
+ }
+ }
+
+ if ( count( $newgroup ) ) {
+ if ( empty( $newgroup['name'] ) ) {
+ throw new MWException( "Name missing\n" . print_r( $newgroup, true ) );
+ }
+ $groups[] = $newgroup;
+ }
+ }
+
+ return $groups;
+ }
+
+ protected function processGroups( $groups ) {
+ $configureData = $this->loadConfigureExtensionData();
+ $fixedGroups = array();
+ foreach ( $groups as $g ) {
+ if ( !is_array( $g ) ) {
+ $g = array( $g );
+ }
+
+ $name = $g['name'];
+
+ if ( isset( $g['id'] ) ) {
+ $id = $g['id'];
+ } else {
+ $id = $this->idPrefix . preg_replace( '/\s+/', '', strtolower( $name ) );
+ }
+
+ // Default message file format is currently php
+ if ( !isset( $g['format'] ) ) {
+ $g['format'] = 'json';
+ }
+
+ if ( !isset( $g['file'] ) ) {
+ if ( $g['format'] === 'json' ) {
+ $file = preg_replace( '/\s+/', '', "$name/i18n/%CODE%.json" );
+ } else {
+ $file = preg_replace( '/\s+/', '', "$name/$name.i18n.php" );
+ }
+ } else {
+ $file = $g['file'];
+ }
+
+ if ( isset( $g['descmsg'] ) ) {
+ $descmsg = $g['descmsg'];
+ } else {
+ $descmsg = str_replace( $this->idPrefix, '', $id ) . '-desc';
+ }
+
+ $configureId = self::foldId( $name );
+ if ( isset( $configureData[$configureId]['url'] ) ) {
+ $url = $configureData[$configureId]['url'];
+ } else {
+ $url = false;
+ }
+
+ $newgroup = array(
+ 'name' => $name,
+ 'file' => $file,
+ 'descmsg' => $descmsg,
+ 'url' => $url,
+ );
+
+ $copyvars = array(
+ 'aliasfile',
+ 'desc',
+ 'format',
+ 'ignored',
+ 'magicfile',
+ 'mangle',
+ 'optional',
+ 'prefix',
+ 'var',
+ );
+
+ foreach ( $copyvars as $var ) {
+ if ( isset( $g[$var] ) ) {
+ $newgroup[$var] = $g[$var];
+ }
+ }
+
+ $fixedGroups[$id] = $newgroup;
+ }
+
+ return $fixedGroups;
+ }
+
+ protected function loadConfigureExtensionData() {
+ if ( !$this->useConfigure ) {
+ return array();
+ }
+
+ global $wgAutoloadClasses;
+
+ $postfix = 'Configure/load_txt_def/TxtDef.php';
+ if ( !file_exists( "{$this->path}/$postfix" ) ) {
+ return array();
+ }
+
+ $wgAutoloadClasses['TxtDef'] = "{$this->path}/$postfix";
+ $tmp = TxtDef::loadFromFile( "{$this->path}/Configure/settings/Settings-ext.txt" );
+
+ return array_combine(
+ array_map( array( __CLASS__, 'foldId' ), array_keys( $tmp ) ),
+ array_values( $tmp )
+ );
+ }
+}
diff --git a/MLEB/Translate/ffs/RubyYamlFFS.php b/MLEB/Translate/ffs/RubyYamlFFS.php
new file mode 100644
index 00000000..f0c978db
--- /dev/null
+++ b/MLEB/Translate/ffs/RubyYamlFFS.php
@@ -0,0 +1,170 @@
+<?php
+
+/**
+ * Extends YamlFFS with Ruby (on Rails) style plural support. Supports subkeys
+ * zero, one, many, few, other and two for each message using plural with
+ * {{count}} variable.
+ * @ingroup FFS
+ */
+class RubyYamlFFS extends YamlFFS {
+ protected static $pluralWords = array(
+ 'zero' => 1,
+ 'one' => 1,
+ 'many' => 1,
+ 'few' => 1,
+ 'other' => 1,
+ 'two' => 1
+ );
+
+ public function getFileExtensions() {
+ return array( '.yml', '.yaml' );
+ }
+
+ /**
+ * Flattens ruby plural arrays into special plural syntax.
+ *
+ * @param array $messages Array of keys and values
+ *
+ * @throws MWException
+ * @return bool|string
+ */
+ public function flattenPlural( $messages ) {
+
+ $pluralKeys = false;
+ $nonPluralKeys = false;
+ foreach ( $messages as $key => $value ) {
+ if ( is_array( $value ) ) {
+ # Plurals can only happen in the lowest level of the structure
+ return false;
+ }
+
+ # Check if we find any reserved plural keyword
+ if ( isset( self::$pluralWords[$key] ) ) {
+ $pluralKeys = true;
+ } else {
+ $nonPluralKeys = true;
+ }
+ }
+
+ # No plural keys at all, we can skip
+ if ( !$pluralKeys ) {
+ return false;
+ }
+
+ # Mixed plural keys with other keys, should not happen
+ if ( $nonPluralKeys ) {
+ $keys = implode( ', ', array_keys( $messages ) );
+ throw new MWException( "Reserved plural keywords mixed with other keys: $keys." );
+ }
+
+ $pls = '{{PLURAL';
+ foreach ( $messages as $key => $value ) {
+ if ( $key === 'other' ) {
+ continue;
+ }
+
+ $pls .= "|$key=$value";
+ }
+
+ // Put the "other" alternative last, without other= prefix.
+ $other = isset( $messages['other'] ) ? '|' . $messages['other'] : '';
+ $pls .= "$other}}";
+
+ return $pls;
+ }
+
+ /**
+ * Converts the special plural syntax to array or ruby style plurals
+ *
+ * @param string $key Message key prefix
+ * @param string $message The plural string
+ *
+ * @return bool|array
+ */
+ public function unflattenPlural( $key, $message ) {
+ // Quick escape.
+ if ( strpos( $message, '{{PLURAL' ) === false ) {
+ return array( $key => $message );
+ }
+
+ /*
+ * Replace all variables with placeholders. Possible source of bugs
+ * if other characters that given below are used.
+ */
+ $regex = '~\{[a-zA-Z_-]+}~';
+ $placeholders = array();
+ $match = array();
+
+ while ( preg_match( $regex, $message, $match ) ) {
+ $uniqkey = TranslateUtils::getPlaceholder();
+ $placeholders[$uniqkey] = $match[0];
+ $search = preg_quote( $match[0], '~' );
+ $message = preg_replace( "~$search~", $uniqkey, $message );
+ }
+
+ // Then replace (possible multiple) plural instances into placeholders.
+ $regex = '~\{\{PLURAL\|(.*?)}}~s';
+ $matches = array();
+ $match = array();
+
+ while ( preg_match( $regex, $message, $match ) ) {
+ $uniqkey = TranslateUtils::getPlaceholder();
+ $matches[$uniqkey] = $match;
+ $message = preg_replace( $regex, $uniqkey, $message, 1 );
+ }
+
+ // No plurals, should not happen.
+ if ( !count( $matches ) ) {
+ return false;
+ }
+
+ // The final array of alternative plurals forms.
+ $alts = array();
+
+ /*
+ * Then loop trough each plural block and replacing the placeholders
+ * to construct the alternatives. Produces invalid output if there is
+ * multiple plural bocks which don't have the same set of keys.
+ */
+ $pluralChoice = implode( '|', array_keys( self::$pluralWords ) );
+ $regex = "~($pluralChoice)\s*=\s*(.+)~s";
+ foreach ( $matches as $ph => $plu ) {
+ $forms = explode( '|', $plu[1] );
+
+ foreach ( $forms as $form ) {
+ if ( $form === '' ) {
+ continue;
+ }
+
+ $match = array();
+ if ( preg_match( $regex, $form, $match ) ) {
+ $formWord = "$key.{$match[1]}";
+ $value = $match[2];
+ } else {
+ $formWord = "$key.other";
+ $value = $form;
+ }
+
+ if ( !isset( $alts[$formWord] ) ) {
+ $alts[$formWord] = $message;
+ }
+
+ $string = $alts[$formWord];
+ $alts[$formWord] = str_replace( $ph, $value, $string );
+ }
+ }
+
+ // Replace other variables.
+ foreach ( $alts as &$value ) {
+ $value = str_replace( array_keys( $placeholders ), array_values( $placeholders ), $value );
+ }
+
+ if ( !isset( $alts["$key.other"] ) ) {
+ wfWarn( "Other not set for key $key" );
+
+ return false;
+ }
+
+ return $alts;
+ }
+}
diff --git a/MLEB/Translate/ffs/SimpleFFS.php b/MLEB/Translate/ffs/SimpleFFS.php
new file mode 100644
index 00000000..7c939c26
--- /dev/null
+++ b/MLEB/Translate/ffs/SimpleFFS.php
@@ -0,0 +1,344 @@
+<?php
+/**
+ * File format support classes.
+ *
+ * @file
+ * @author Niklas Laxström
+ */
+
+/**
+ * A very basic FFS module that implements some basic functionality and
+ * a simple binary based file format.
+ * Other FFS classes can extend SimpleFFS and override suitable methods.
+ * @ingroup FFS
+ */
+class SimpleFFS implements FFS {
+ public function supportsFuzzy() {
+ return 'no';
+ }
+
+ public function getFileExtensions() {
+ return array();
+ }
+
+ /**
+ * @var FileBasedMessageGroup
+ */
+ protected $group;
+
+ protected $writePath;
+
+ /**
+ * Stores the FILES section of the YAML configuration,
+ * which can be accessed for extra FFS class specific options.
+ */
+ protected $extra;
+
+ const RECORD_SEPARATOR = "\0";
+ const PART_SEPARATOR = "\0\0\0\0";
+
+ public function __construct( FileBasedMessageGroup $group ) {
+ $this->setGroup( $group );
+ $conf = $group->getConfiguration();
+ $this->extra = $conf['FILES'];
+ }
+
+ /**
+ * @param FileBasedMessageGroup $group
+ */
+ public function setGroup( FileBasedMessageGroup $group ) {
+ $this->group = $group;
+ }
+
+ /**
+ * @return FileBasedMessageGroup
+ */
+ public function getGroup() {
+ return $this->group;
+ }
+
+ /**
+ * @param string $writePath
+ */
+ public function setWritePath( $writePath ) {
+ $this->writePath = $writePath;
+ }
+
+ /**
+ * @return string
+ */
+ public function getWritePath() {
+ return $this->writePath;
+ }
+
+ /**
+ * Returns true if the file for this message group in a given language
+ * exists. If no $code is given, the groups source language is assumed.
+ * NB: Some formats store all languages in the same file, and then this
+ * function will return true even if there are no translations to that
+ * language.
+ *
+ * @param string|bool $code
+ * @return bool
+ */
+ public function exists( $code = false ) {
+ if ( $code === false ) {
+ $code = $this->group->getSourceLanguage();
+ }
+
+ $filename = $this->group->getSourceFilePath( $code );
+ if ( $filename === null ) {
+ return false;
+ }
+
+ return file_exists( $filename );
+ }
+
+ /**
+ * Reads messages from the file in a given language and returns an array
+ * of AUTHORS, MESSAGES and possibly other properties.
+ *
+ * @param string $code Language code.
+ * @return array|bool False if the file does not exist
+ * @throws MWException if the file appears to exist, but cannot be read
+ */
+ public function read( $code ) {
+ if ( !$this->exists( $code ) ) {
+ return false;
+ }
+
+ $filename = $this->group->getSourceFilePath( $code );
+ $input = file_get_contents( $filename );
+ if ( $input === false ) {
+ throw new MWException( "Unable to read file $filename." );
+ }
+
+ return $this->readFromVariable( $input );
+ }
+
+ /**
+ * Parse the message data given as a string in the SimpleFFS format
+ * and return it as an array of AUTHORS and MESSAGES.
+ *
+ * @param string $data
+ * @return array Parsed data.
+ * @throws MWException
+ */
+ public function readFromVariable( $data ) {
+ $parts = explode( self::PART_SEPARATOR, $data );
+
+ if ( count( $parts ) !== 2 ) {
+ throw new MWException( 'Wrong number of parts.' );
+ }
+
+ list( $authorsPart, $messagesPart ) = $parts;
+ $authors = explode( self::RECORD_SEPARATOR, $authorsPart );
+ $messages = array();
+
+ foreach ( explode( self::RECORD_SEPARATOR, $messagesPart ) as $line ) {
+ if ( $line === '' ) {
+ continue;
+ }
+
+ $lineParts = explode( '=', $line, 2 );
+
+ if ( count( $lineParts ) !== 2 ) {
+ throw new MWException( "Wrong number of parts in line $line." );
+ }
+
+ list( $key, $message ) = $lineParts;
+ $key = trim( $key );
+ $messages[$key] = $message;
+ }
+
+ $messages = $this->group->getMangler()->mangle( $messages );
+
+ return array(
+ 'AUTHORS' => $authors,
+ 'MESSAGES' => $messages,
+ );
+ }
+
+ /**
+ * Write the collection to file.
+ *
+ * @param MessageCollection $collection
+ * @throws MWException
+ */
+ public function write( MessageCollection $collection ) {
+ $writePath = $this->writePath;
+
+ if ( $writePath === null ) {
+ throw new MWException( 'Write path is not set.' );
+ }
+
+ if ( !file_exists( $writePath ) ) {
+ throw new MWException( "Write path '$writePath' does not exist." );
+ }
+
+ if ( !is_writable( $writePath ) ) {
+ throw new MWException( "Write path '$writePath' is not writable." );
+ }
+
+ $targetFile = $writePath . '/' . $this->group->getTargetFilename( $collection->code );
+
+ if ( file_exists( $targetFile ) ) {
+ $this->tryReadSource( $targetFile, $collection );
+ } else {
+ $sourceFile = $this->group->getSourceFilePath( $collection->code );
+ $this->tryReadSource( $sourceFile, $collection );
+ }
+
+ $output = $this->writeReal( $collection );
+ if ( $output ) {
+ wfMkdirParents( dirname( $targetFile ), null, __METHOD__ );
+ file_put_contents( $targetFile, $output );
+ }
+ }
+
+ /**
+ * Read a collection and return it as a SimpleFFS formatted string.
+ *
+ * @param MessageCollection $collection
+ * @return string
+ */
+ public function writeIntoVariable( MessageCollection $collection ) {
+ $sourceFile = $this->group->getSourceFilePath( $collection->code );
+ $this->tryReadSource( $sourceFile, $collection );
+
+ return $this->writeReal( $collection );
+ }
+
+ /**
+ * @param MessageCollection $collection
+ * @return string
+ */
+ protected function writeReal( MessageCollection $collection ) {
+ $output = '';
+
+ $authors = $collection->getAuthors();
+ $authors = $this->filterAuthors( $authors, $collection->code );
+
+ $output .= implode( self::RECORD_SEPARATOR, $authors );
+ $output .= self::PART_SEPARATOR;
+
+ $mangler = $this->group->getMangler();
+
+ /** @var TMessage $m */
+ foreach ( $collection as $key => $m ) {
+ $key = $mangler->unmangle( $key );
+ $trans = $m->translation();
+ $output .= "$key=$trans" . self::RECORD_SEPARATOR;
+ }
+
+ return $output;
+ }
+
+ /**
+ * This tries to pick up external authors in the source files so that they
+ * are not lost if those authors are not among those who have translated in
+ * the wiki.
+ *
+ * @todo Get rid of this
+ * @param string $filename
+ * @param MessageCollection $collection
+ */
+ protected function tryReadSource( $filename, MessageCollection $collection ) {
+ if ( get_class( $this->group->getFFS() ) !== get_class( $this ) ) {
+ return;
+ }
+
+ $sourceText = $this->tryReadFile( $filename );
+
+ // No need to do anything in SimpleFFS if it's false,
+ // it only reads author data from it.
+ if ( $sourceText !== false ) {
+ $sourceData = $this->readFromVariable( $sourceText );
+
+ if ( isset( $sourceData['AUTHORS'] ) ) {
+ $collection->addCollectionAuthors( $sourceData['AUTHORS'] );
+ }
+ }
+ }
+
+ /**
+ * Read the contents of $filename and return it as a string.
+ * Return false if the file doesn't exist.
+ * Throw an exception if the file isn't readable
+ * or if the reading fails strangely.
+ *
+ * @param string $filename
+ * @return bool|string
+ * @throws MWException
+ */
+ protected function tryReadFile( $filename ) {
+ if ( !$filename ) {
+ return false;
+ }
+
+ if ( !file_exists( $filename ) ) {
+ return false;
+ }
+
+ if ( !is_readable( $filename ) ) {
+ throw new MWException( "File $filename is not readable." );
+ }
+
+ $data = file_get_contents( $filename );
+ if ( $data === false ) {
+ throw new MWException( "Unable to read file $filename." );
+ }
+
+ return $data;
+ }
+
+ /**
+ * Remove blacklisted authors.
+ *
+ * @param array $authors
+ * @param string $code
+ * @return array
+ */
+ protected function filterAuthors( array $authors, $code ) {
+ global $wgTranslateAuthorBlacklist;
+ $groupId = $this->group->getId();
+
+ foreach ( $authors as $i => $v ) {
+ $hash = "$groupId;$code;$v";
+
+ $blacklisted = false;
+ foreach ( $wgTranslateAuthorBlacklist as $rule ) {
+ list( $type, $regex ) = $rule;
+
+ if ( preg_match( $regex, $hash ) ) {
+ if ( $type === 'white' ) {
+ $blacklisted = false;
+ break;
+ } else {
+ $blacklisted = true;
+ }
+ }
+ }
+
+ if ( $blacklisted ) {
+ unset( $authors[$i] );
+ }
+ }
+
+ return $authors;
+ }
+
+ /**
+ * Replaces all Windows and Mac line endings with Unix line endings.
+ * This is needed in some file types.
+ *
+ * @param string $data
+ * @return string
+ */
+ public static function fixNewLines( $data ) {
+ $data = str_replace( "\r\n", "\n", $data );
+ $data = str_replace( "\r", "\n", $data );
+
+ return $data;
+ }
+}
diff --git a/MLEB/Translate/ffs/XliffFFS.php b/MLEB/Translate/ffs/XliffFFS.php
new file mode 100644
index 00000000..e84aaa7f
--- /dev/null
+++ b/MLEB/Translate/ffs/XliffFFS.php
@@ -0,0 +1,189 @@
+<?php
+/**
+ * Partial support for the Xliff translation format.
+ *
+ * @file
+ * @author Niklas Laxström
+ * @license GPL-2.0+
+ */
+
+/**
+ * Partial support for the Xliff translation format.
+ * @since 2013-04
+ * @ingroup FFS
+ */
+class XliffFFS extends SimpleFFS {
+ public static function isValid( $data ) {
+ $doc = new DomDocument( '1.0' );
+ $doc->loadXML( $data );
+
+ $errors = libxml_get_errors();
+ if ( $errors ) {
+ return false;
+ }
+
+ if ( strpos( $data, 'version="1.2">' ) !== false ) {
+ $schema = __DIR__ . '/../data/xliff-core-1.2-transitional.xsd';
+ if ( !$doc->schemaValidate( $schema ) ) {
+ return false;
+ }
+ }
+
+ return true;
+ }
+
+ public function getFileExtensions() {
+ return array( '.xlf', '.xliff', '.xml' );
+ }
+
+ /**
+ * @param string $data
+ * @param string $element
+ * @return array Parsed data.
+ */
+ public function readFromVariable( $data, $element = 'target' ) {
+ $messages = array();
+ $mangler = $this->group->getMangler();
+
+ $reader = new SimpleXMLElement( $data );
+ $reader->registerXPathNamespace(
+ 'xliff',
+ 'urn:oasis:names:tc:xliff:document:1.2'
+ );
+
+ $items = array_merge(
+ $reader->xpath( '//trans-unit' ),
+ $reader->xpath( '//xliff:trans-unit' )
+ );
+
+ foreach ( $items as $item ) {
+ /** @var SimpleXMLElement $source */
+ $source = $item->$element;
+
+ if ( !$source ) {
+ continue;
+ }
+
+ $key = (string)$item['id'];
+
+ /* In case there are tags inside the element, preserve
+ * them. */
+ $dom = new DOMDocument( '1.0' );
+ $dom->loadXML( $source->asXml() );
+ $value = self::getInnerXml( $dom->documentElement );
+
+ /* This might not be 100% according to the spec, but
+ * for now if there is explicit approved=no, mark it
+ * as fuzzy, but don't do that if the attribute is not
+ * set */
+ if ( (string)$source['state'] === 'needs-l10n' ) {
+ $value = TRANSLATE_FUZZY . $value;
+ }
+
+ // Strip CDATA if present
+ $value = preg_replace( '/<!\[CDATA\[(.*?)\]\]>/s', '\1', $value );
+
+ $messages[$key] = $value;
+ }
+
+ return array(
+ 'MESSAGES' => $mangler->mangle( $messages ),
+ );
+ }
+
+ /**
+ * @param string $code Language code.
+ * @return array|bool
+ * @throws MWException
+ */
+ public function read( $code ) {
+ if ( !$this->exists( $code ) ) {
+ return false;
+ }
+
+ $filename = $this->group->getSourceFilePath( $code );
+ $input = file_get_contents( $filename );
+ if ( $input === false ) {
+ throw new MWException( "Unable to read file $filename." );
+ }
+
+ $element = $code === $this->group->getSourceLanguage() ? 'source' : 'target';
+
+ return $this->readFromVariable( $input, $element );
+ }
+
+ /**
+ * Gets the html inside en element without the element itself.
+ */
+ public static function getInnerXml( DomElement $node ) {
+ $text = '';
+ foreach ( $node->childNodes as $child ) {
+ $text .= $child->ownerDocument->saveXML( $child );
+ }
+
+ return $text;
+ }
+
+ protected function writeReal( MessageCollection $collection ) {
+ $mangler = $this->group->getMangler();
+
+ $template = new DomDocument( '1.0' );
+ $template->preserveWhiteSpace = false;
+ $template->formatOutput = true;
+
+ // Try to use the definition file as template
+ $sourceLanguage = $this->group->getSourceLanguage();
+ $sourceFile = $this->group->getSourceFilePath( $sourceLanguage );
+ if ( file_exists( $sourceFile ) ) {
+ $template->load( $sourceFile );
+ } else {
+ // Else use standard template
+ $template->load( __DIR__ . '/../data/xliff-template.xml' );
+ }
+
+ $list = $template->getElementsByTagName( 'body' )->item( 0 );
+ $list->nodeValue = null;
+
+ /** @var TMessage $m */
+ foreach ( $collection as $key => $m ) {
+ $key = $mangler->unmangle( $key );
+
+ $value = $m->translation();
+ $value = str_replace( TRANSLATE_FUZZY, '', $value );
+
+ // @todo Support placeholder tags etc.
+ $source = $template->createDocumentFragment();
+ $source->appendXML( htmlspecialchars( $m->definition() ) );
+
+ $target = $template->createDocumentFragment();
+ $target->appendXML( htmlspecialchars( $value ) );
+
+ $sourceElement = $template->createElement( 'source' );
+ $sourceElement->appendChild( $source );
+
+ $targetElement = $template->createElement( 'target' );
+ $targetElement->appendChild( $target );
+ if ( $m->getProperty( 'status' ) === 'fuzzy' ) {
+ $targetElement->setAttribute( 'state', 'needs-l10n' );
+ }
+ if ( $m->getProperty( 'status' ) === 'proofread' ) {
+ $targetElement->setAttribute( 'state', 'signed-off' );
+ }
+
+ $transUnit = $template->createElement( 'trans-unit' );
+ $transUnit->setAttribute( 'id', $key );
+ $transUnit->appendChild( $sourceElement );
+ $transUnit->appendChild( $targetElement );
+
+ $list->appendChild( $transUnit );
+ }
+
+ $template->encoding = 'UTF-8';
+
+ return $template->saveXML();
+ }
+
+ public function supportsFuzzy() {
+ return 'yes';
+ }
+}
diff --git a/MLEB/Translate/ffs/YamlFFS.php b/MLEB/Translate/ffs/YamlFFS.php
new file mode 100644
index 00000000..26320e2a
--- /dev/null
+++ b/MLEB/Translate/ffs/YamlFFS.php
@@ -0,0 +1,250 @@
+<?php
+
+/**
+ * Implements support for message storage in YAML format.
+ *
+ * This class adds new key into FILES section: \c codeAsRoot.
+ * If it is set to true, all messages will under language code.
+ * @ingroup FFS
+ */
+class YamlFFS extends SimpleFFS {
+ public function getFileExtensions() {
+ return array( '.yaml', '.yml' );
+ }
+
+ /**
+ * @param $data
+ * @return array Parsed data.
+ */
+ public function readFromVariable( $data ) {
+ // Authors first.
+ $matches = array();
+ preg_match_all( '/^#\s*Author:\s*(.*)$/m', $data, $matches );
+ $authors = $matches[1];
+
+ // Then messages.
+ $messages = TranslateYaml::loadString( $data );
+
+ // Some groups have messages under language code
+ if ( isset( $this->extra['codeAsRoot'] ) ) {
+ $messages = array_shift( $messages );
+ }
+
+ $messages = $this->flatten( $messages );
+ $messages = $this->group->getMangler()->mangle( $messages );
+ foreach ( $messages as &$value ) {
+ $value = rtrim( $value, "\n" );
+ }
+
+ return array(
+ 'AUTHORS' => $authors,
+ 'MESSAGES' => $messages,
+ );
+ }
+
+ /**
+ * @param $collection MessageCollection
+ * @return string
+ */
+ protected function writeReal( MessageCollection $collection ) {
+ $output = $this->doHeader( $collection );
+ $output .= $this->doAuthors( $collection );
+
+ $mangler = $this->group->getMangler();
+
+ $messages = array();
+ /**
+ * @var $m TMessage
+ */
+ foreach ( $collection as $key => $m ) {
+ $key = $mangler->unmangle( $key );
+ $value = $m->translation();
+ $value = str_replace( TRANSLATE_FUZZY, '', $value );
+
+ if ( $value === '' ) {
+ continue;
+ }
+
+ $messages[$key] = $value;
+ }
+
+ if ( !count( $messages ) ) {
+ return false;
+ }
+
+ $messages = $this->unflatten( $messages );
+
+ // Some groups have messages under language code.
+ if ( isset( $this->extra['codeAsRoot'] ) ) {
+ $code = $this->group->mapCode( $collection->code );
+ $messages = array( $code => $messages );
+ }
+
+ $output .= TranslateYaml::dump( $messages );
+
+ return $output;
+ }
+
+ /**
+ * @param $collection MessageCollection
+ * @return string
+ */
+ protected function doHeader( MessageCollection $collection ) {
+ global $wgSitename;
+ global $wgTranslateYamlLibrary;
+
+ $code = $collection->code;
+ $name = TranslateUtils::getLanguageName( $code );
+ $native = TranslateUtils::getLanguageName( $code, $code );
+ $output = "# Messages for $name ($native)\n";
+ $output .= "# Exported from $wgSitename\n";
+
+ if ( isset( $wgTranslateYamlLibrary ) ) {
+ $output .= "# Export driver: $wgTranslateYamlLibrary\n";
+ }
+
+ return $output;
+ }
+
+ /**
+ * @param $collection MessageCollection
+ * @return string
+ */
+ protected function doAuthors( MessageCollection $collection ) {
+ $output = '';
+ $authors = $collection->getAuthors();
+ $authors = $this->filterAuthors( $authors, $collection->code );
+
+ foreach ( $authors as $author ) {
+ $output .= "# Author: $author\n";
+ }
+
+ return $output;
+ }
+
+ /**
+ * Flattens multidimensional array by using the path to the value as key
+ * with each individual key separated by a dot.
+ *
+ * @param $messages array
+ *
+ * @return array
+ */
+ protected function flatten( $messages ) {
+ $flat = true;
+
+ foreach ( $messages as $v ) {
+ if ( !is_array( $v ) ) {
+ continue;
+ }
+
+ $flat = false;
+ break;
+ }
+
+ if ( $flat ) {
+ return $messages;
+ }
+
+ $array = array();
+ foreach ( $messages as $key => $value ) {
+ if ( !is_array( $value ) ) {
+ $array[$key] = $value;
+ } else {
+ $plural = $this->flattenPlural( $value );
+ if ( $plural ) {
+ $array[$key] = $plural;
+ } else {
+ $newArray = array();
+ foreach ( $value as $newKey => $newValue ) {
+ $newArray["$key.$newKey"] = $newValue;
+ }
+ $array += $this->flatten( $newArray );
+ }
+ }
+
+ /**
+ * Can as well keep only one copy around.
+ */
+ unset( $messages[$key] );
+ }
+
+ return $array;
+ }
+
+ /**
+ * Performs the reverse operation of flatten. Each dot in the key starts a
+ * new subarray in the final array.
+ *
+ * @param $messages array
+ *
+ * @return array
+ */
+ protected function unflatten( $messages ) {
+ $array = array();
+ foreach ( $messages as $key => $value ) {
+ $plurals = $this->unflattenPlural( $key, $value );
+
+ if ( $plurals === false ) {
+ continue;
+ }
+
+ foreach ( $plurals as $keyPlural => $valuePlural ) {
+ $path = explode( '.', $keyPlural );
+ if ( count( $path ) == 1 ) {
+ $array[$keyPlural] = $valuePlural;
+ continue;
+ }
+
+ $pointer = &$array;
+ do {
+ /**
+ * Extract the level and make sure it exists.
+ */
+ $level = array_shift( $path );
+ if ( !isset( $pointer[$level] ) ) {
+ $pointer[$level] = array();
+ }
+
+ /**
+ * Update the pointer to the new reference.
+ */
+ $tmpPointer = &$pointer[$level];
+ unset( $pointer );
+ $pointer = &$tmpPointer;
+ unset( $tmpPointer );
+
+ /**
+ * If next level is the last, add it into the array.
+ */
+ if ( count( $path ) === 1 ) {
+ $lastKey = array_shift( $path );
+ $pointer[$lastKey] = $valuePlural;
+ }
+ } while ( count( $path ) );
+ }
+ }
+
+ return $array;
+ }
+
+ /**
+ * @param $value
+ * @return bool
+ */
+ public function flattenPlural( $value ) {
+ return false;
+ }
+
+ /**
+ * Override this. Return false to skip processing this value. Otherwise
+ *
+ * @param $key string
+ * @param $value string
+ *
+ * @return array with keys and values.
+ */
+ public function unflattenPlural( $key, $value ) {
+ return array( $key => $value );
+ }
+}
diff --git a/MLEB/Translate/hooks.txt b/MLEB/Translate/hooks.txt
new file mode 100644
index 00000000..45b2f94a
--- /dev/null
+++ b/MLEB/Translate/hooks.txt
@@ -0,0 +1,167 @@
+This document describes how event hooks work in the Translate extension;
+how to add hooks for an event; and how to run hooks for an event.
+
+For a more comprehensive guide to hooks, navigate to your root MediaWiki
+directory, and then find /docs/hooks.txt.
+
+== Rationale ==
+
+Hooks allow us to decouple optionally-run code from code that is run for
+everyone. It allows MediaWiki hackers, third-party developers and local
+administrators to define code that will be run at certain points in the mainline
+code, and to modify the data run by that mainline code. Hooks can keep mainline
+code simple, and make it easier to write extensions. Hooks are a principled
+alternative to local patches.
+
+== Writing hooks ==
+
+=== PHP hooks ===
+For a guide to PHP hooks, navigate to your root MediaWiki
+directory, and then find docs/hooks.txt.
+
+=== JavaScript hooks ===
+JavaScript hooks for the Translate extension are a little different. To use
+them, declare a dependency on ext.translate.hooks:
+
+ $wgResourceModules['...'] = array(
+ 'scripts' => '...js',
+ 'dependencies' => array( 'ext.translate.hooks' ),
+ );
+
+And then in that module use:
+ mw.translateHooks.add( name, hookFunction );
+
+where name is a string, but hookFunction is not (unlike in the case of PHP hooks)
+but rather a function reference. Return values from JavaScript hooks are ignored.
+
+== Events and parameters ==
+
+This is a list of known events and parameters; please add to it if you're going
+to add events to the Translate extension.
+
+<!--
+Post processing step to format in wiki
+^;([^ ]+): >>> ;<nowiki>\1</nowiki>:
+-->
+
+=== PHP events ===
+
+;SpecialTranslate::executeTask: You can output the default task output
+ RequestContext $context: For adding output, accessing current interface language etc.
+ TranslateTask $task = null: Current task if any
+ MessageGroup $group
+ array $options: Active options
+
+;Translate:MessageGroupStats:isIncluded: Controls whether message group is shown for a given language in language or message group statistics. Mostly used internally by Translate to hide discouraged groups and groups restricted to certain languages.
+ string $groupId: Message group id
+ string $code: Language code
+
+;TranslateBeforeAddModules: Provides an opportunity to load extra modules
+ array &$modules: List of resource loader module names
+
+;TranslateEventMessageMembershipChange: When group gets new messages or loses messages
+ MessageHandle $handle
+ array $old Previous groups
+ array $new Current groups
+
+;TranslateEventMessageGroupStateChange: Event triggered when a message group workflow state is changed in a language
+ MessageGroup $group: Message group instance
+ string $code: Language code
+ string $oldState
+ string $newState
+
+;TranslateEventTranslationEdit: Event triggered when a translation is created or changed
+ MessageHandle $handle
+
+;TranslateEventTranslationReview: Event triggered when a translation is proofread
+ MessageHandle $handle
+
+;TranslateFormatMessageBeforeTable: Provides an opportunity to manipulate the display of translation strings (messages) in the main table
+ string &$message: The message that will be displayed
+ TMessage $m: Object representing the source object, useful for $m->original() and $m->translation()
+ MessageGroup $group: The source message group
+ string $targetLanguage: The language for which translations are being shown
+ array &$extraAttribs: An array of attributes that will be added to the table row
+
+;TranslateGetBoxes: Provides an opportunity to add or remove "boxes" (translation helpers) from the translation interface
+ MessageGroup $group: The message group being worked on
+ MessageHandle $handle: An object representing the translation page (e.g. 'MediaWiki:Example/qqq')
+ array &$boxes: An associative array to be appended to (format: 'name' => 'some HTML string')
+
+;TranslateGetAPIMessageGroupsParameterDescs: Provides an opportunity to document any parameters added with 'TranslateGetAPIMessageGroupsParameterList'.
+ array &$paramDescs: An associative array of parameters, name => description.
+ string $p: The prefix for action=query&meta=messagegroups (currently mg, but could change), useful for documentation
+
+;TranslateGetAPIMessageGroupsParameterList: Allows extra parameters to be added to the action=query&meta=messagegroups module
+ array &$params: An associative array of possible parameters (name => details; see ApiQueryMessageGroups.php for correct spacing)
+
+;TranslateGetAPIMessageGroupsPropertyDescs: Allows extra properties to be added to captured by action=query&meta=messagegroups&mgprop=foo|bar|bat module
+ array &$properties: An associative array of properties, name => description.
+
+;TranslateGetExtraInputs: Provides an opportunity to add extra form inputs to to the default translation editor
+ string &$translation: The translation as it stands
+ string &$extraInputs: The extra input space, ready for HTML to be appended
+
+;TranslateGetSpecialTranslateOptions: Provides an opportunity for overriding task values
+ array &$defaults: Associative array of default values
+ array &$nondefaults: Associative array of nondefault (override) values
+
+;Translate:GettextFFS:headerFields: Allows to customize headers of exported Gettext files per group. Certain X-headers nor Plural-Forms cannot be customized.
+ array &$headers: List of prefilled headers. You can remove, change or add new headers.
+ MessageGroup $group: Message group instance
+ string $code: Language code
+
+;TranslateMessageGroupPathVariables: Allows to manipulate the list of variables for message group path patterns.
+ MessageGroup $group
+ array &$variables: Variable name => replacement
+
+;TranslateMessageTableInit: When creating new MessageTable
+ MessageTable &$table: Default implementation that can be accessed or even replaced
+ IContextSource $context:
+ MessageCollection $collection
+ MessageGroup $group
+
+;Translate:newTranslation: Event triggered when non-fuzzy translation has been made
+ MessageHandle $handle
+ int $revisionId
+ string $text: Content of the new translation
+ User $user: User who created or changed the translation
+
+;TranslatePostInitGroups: Hook to register new message groups to Translate. Manual cache clear may be needed to have this hook executed.
+ array &$groups: Map of message group id to message group instance
+ array &$deps: List of dependencies as supported by DependecyWrapper class from MediaWiki
+ array &$autoload: List of autoloaded classes. Key is the name of the class and value is filename.
+
+;TranslatePrefillTranslation: Provides an opportunity for a new translation to start not from as a carte blanche (the default) but from some prefilled string
+ string &$translation: The translation string as it stands
+ MessageHandle $handle: The current MessageHandle object
+
+;TranslateProcessAPIMessageGroupsProperties: Allows exrra property requests to be acted upon, and the new new properties returned
+ array &$a: Associative array of the properties of $group that will be returned
+ array $props: Associative array ($name => true) of properties the user has specifically requested
+ array $params: Parameter input by the user (unprefixed name => value)
+ MessageGroup $g: The group in question
+
+;TranslateSupportedLanguages: Allows removing languages from language selectors. For adding $wgExtraLanguage names is recommended.
+ array &$list: List of languages indexed by language code
+ string $language: Language code of the language of which language names are in
+
+;TranslateTranslationAids: Make new translation aids available to any message group (which must choose an implementation in its getTranslationAids() method).
+ array &$types: List of translation aid identifiers, numerically indexed
+
+;AddNewAccount: Replica of the core hook, see https://www.mediawiki.org/wiki/Manual:Hooks/AddNewAccount
+
+=== JavaScript events ===
+
+;afterSubmit: Provides an opportunity to modify a Translate translation form immediately after it is submitted
+ jQuery form: The form that has just been submitted
+
+;beforeSubmit: Provides an opportunity to modify a Translate translation form immediately before it is submitted
+ jQuery form: The form being submitted
+
+;formatMessageBeforeTable: Provides an opportunity to manipulate the display of translation strings (messages) in the main table
+ object message: The message object, with a range of useful (and manipulable) properties
+
+;showTranslationHelpers: Provides an opportunity to handle custom translation helpers
+ object result.helpers: JSON subset focusing on the helpers returned e.g. result.helpers.definition
+ jQuery translateEditor.$editor: The current translation-editing form
diff --git a/MLEB/Translate/i18n/api/ca.json b/MLEB/Translate/i18n/api/ca.json
new file mode 100644
index 00000000..790ef4a9
--- /dev/null
+++ b/MLEB/Translate/i18n/api/ca.json
@@ -0,0 +1,23 @@
+{
+ "@metadata": {
+ "authors": [
+ "Alvaro Vidal-Abarca"
+ ]
+ },
+ "apihelp-aggregategroups-example-1": "Associar un grup",
+ "apihelp-groupreview-param-language": "Codi d'idioma.",
+ "apihelp-query+languagestats-param-language": "Codi d'idioma.",
+ "apihelp-query+messagecollection-param-group": "Grup de missatges.",
+ "apihelp-query+messagecollection-param-language": "Codi d'idioma.",
+ "apihelp-query+messagecollection-param-limit": "Quantitat de missatges a mostrar (després de filtrar).",
+ "apihelp-query+messagecollection-example-1": "Llista d'idiomes suportats",
+ "apihelp-query+messagetranslations-description": "Consulta totes les traduccions per a un sol missatge.",
+ "apihelp-query+messagetranslations-param-title": "El títol complet d'un missatge conegut.",
+ "apihelp-translatesandbox-param-do": "Què fer.",
+ "apihelp-translatesandbox-param-username": "Nom d'usuari a l'hora de crear l'usuari.",
+ "apihelp-translationaids-description": "Consulta totes les ajudes de traducció.",
+ "apihelp-translationstash-param-metadata": "Objecte JSON.",
+ "apihelp-ttmserver-param-targetlanguage": "Un codi d'idioma de la proposta.",
+ "apihelp-ttmserver-param-text": "El text per trobar suggeriments.",
+ "apihelp-ttmserver-example-1": "Obtenir suggeriments per a la traducció de \"Ajuda\" de l'anglès al finès"
+}
diff --git a/MLEB/Translate/i18n/api/ce.json b/MLEB/Translate/i18n/api/ce.json
new file mode 100644
index 00000000..191abcac
--- /dev/null
+++ b/MLEB/Translate/i18n/api/ce.json
@@ -0,0 +1,12 @@
+{
+ "@metadata": {
+ "authors": [
+ "Умар"
+ ]
+ },
+ "apihelp-groupreview-param-language": "Меттан код.",
+ "apihelp-query+languagestats-param-language": "Меттан код.",
+ "apihelp-query+messagecollection-param-group": "Хаамийн тоба.",
+ "apihelp-query+messagecollection-param-language": "Меттан код.",
+ "apihelp-translationstash-param-subaction": "Дийраш."
+}
diff --git a/MLEB/Translate/i18n/api/de.json b/MLEB/Translate/i18n/api/de.json
new file mode 100644
index 00000000..50ddfeb8
--- /dev/null
+++ b/MLEB/Translate/i18n/api/de.json
@@ -0,0 +1,10 @@
+{
+ "@metadata": {
+ "authors": [
+ "Metalhead64"
+ ]
+ },
+ "apihelp-query+messagetranslations-example-1": "Liste der Übersetzungen im Wiki für MediaWiki:January",
+ "apihelp-translationaids-example-1": "Hilfen für [[MediaWiki:January/fi]] anzeigen",
+ "apihelp-translationstash-example-1": "Fügt eine Übersetzung zum Übersetzungsspeicher für [[MediaWiki:Jan/fi]] hinzu"
+}
diff --git a/MLEB/Translate/i18n/api/en.json b/MLEB/Translate/i18n/api/en.json
new file mode 100644
index 00000000..8c18b516
--- /dev/null
+++ b/MLEB/Translate/i18n/api/en.json
@@ -0,0 +1,81 @@
+{
+ "@metadata": {
+ "authors": [
+ ]
+ },
+ "apihelp-aggregategroups-description": "Manage aggregate message groups.\n\nYou can add and remove aggregate messagegroups and associate or dissociate message groups from them (one at a time).",
+ "apihelp-aggregategroups-param-do": "What to do with aggregate message group.",
+ "apihelp-aggregategroups-param-aggregategroup": "Aggregate message group ID.",
+ "apihelp-aggregategroups-param-group": "Message group ID.",
+ "apihelp-aggregategroups-param-groupname": "Aggregate message group name.",
+ "apihelp-aggregategroups-param-groupdescription": "Aggregate message group description.",
+ "apihelp-aggregategroups-example-1": "Associate a group",
+ "apihelp-groupreview-description": "Set message group workflow states.",
+ "apihelp-groupreview-param-group": "Message group.",
+ "apihelp-groupreview-param-language": "Language code.",
+ "apihelp-groupreview-param-state": "The new state for the group.",
+ "apihelp-groupreview-example-1": "Mark group \"group-Example\" as ready for German",
+ "apihelp-hardmessages-description": "Mark translations hard.",
+ "apihelp-hardmessages-param-title": "The title of the message to mark hard.",
+ "apihelp-hardmessages-example-1": "Mark \"SampleTitle\" as hard",
+ "apihelp-query+languagestats-description": "Query language stats.",
+ "apihelp-query+languagestats-param-timelimit": "Maximum time to spend calculating missing statistics. If zero, only the cached results from the beginning are returned.",
+ "apihelp-query+languagestats-param-language": "Language code.",
+ "apihelp-query+languagestats-example-1": "List of translation completion statistics for Finnish",
+ "apihelp-query+messagecollection-description": "Query MessageCollection about translations.",
+ "apihelp-query+messagecollection-param-group": "Message group.",
+ "apihelp-query+messagecollection-param-language": "Language code.",
+ "apihelp-query+messagecollection-param-limit": "How many messages to show (after filtering).",
+ "apihelp-query+messagecollection-param-offset": "Integer or key offset for start.",
+ "apihelp-query+messagecollection-param-filter": "Message collection filters. Use ! to negate condition. For example !fuzzy means list only all non-fuzzy messages. Filters are applied in the order given.\n;fuzzy:Messages with fuzzy tag.\n;optional:Messages which should be translated only if changes are necessary.\n;ignored:Messages which are never translated.\n;hastranslation:Messages which have a translation regardless if it is fuzzy or not.\n;translated:Messages which have a translation which is not fuzzy.\n;changed:Messages which has been translated or changed since last export.\n;reviewer&#58;#:Messages where given user ID # is among reviewers.\n;last-translator&#58;#:Messages where given user ID # is the last translator.",
+ "apihelp-query+messagecollection-param-prop": "Which properties to get:\n;definition:Message definition.\n;translation:Current translation (without $1 string if any, use the tags to check for outdated or broken translations).\n;tags:Message tags, like optional, ignored and fuzzy.\n;properties:Message properties, like status, revision, last-translator. Can vary between messages.\n;revision:<span class=\"deprecated\">Deprecated!</span> Use $2prop=properties.",
+ "apihelp-query+messagecollection-example-1": "List of supported languages",
+ "apihelp-query+messagecollection-example-2": "List of non-optional message definitions for group page-Example",
+ "apihelp-query+messagecollection-example-3": "List of optional messages in Finnish with tags for group page-Example",
+ "apihelp-query+messagecollection-example-4": "More information about latest translation revisions for group page-Example",
+ "apihelp-query+messagegroups-description": "Return information about message groups.\n\nNote that the uselang parameter affects the output of language dependent parts.",
+ "apihelp-query+messagegroups-param-depth": "When using the tree format, limit the depth to this many levels. Value 0 means that no subgroups are shown. If the limit is reached, a prop groupcount is added and it states the number of direct children.",
+ "apihelp-query+messagegroups-param-filter": "Only return messages with IDs that match one or more of the inputs given (case-insensitive, separated by pipes, * wildcard).",
+ "apihelp-query+messagegroups-param-format": "In a tree format message groups can exist multiple places in the tree.",
+ "apihelp-query+messagegroups-param-iconsize": "Preferred size of rasterised group icon.",
+ "apihelp-query+messagegroups-param-prop": "What translation-related information to get:\n;id:Include ID of the group.\n;label:Include label of the group.\n;description:Include description of the group.\n;class:Include class name of the group.\n;namespace:Include namespace of the group. Not all groups belong to a single namespace.\n;exists:Include self-calculated existence property of the group.\n;icon:Include URLs to icon of the group.\n;priority:Include priority status like discouraged.\n;prioritylangs:Include preferred languages. If not set, this returns false.\n;priorityforce:Include priority status - is the priority languages setting forced.\n;workflowstates:Include the workflow states for the message group.",
+ "apihelp-query+messagegroups-param-root": "When using the tree format, instead of starting from top level start from the given message group, which must be an aggregate message group. When using flat format only the specified group is returned.",
+ "apihelp-query+messagegroups-example-1": "Show message groups",
+ "apihelp-query+messagegroupstats-description": "Query message group stats.",
+ "apihelp-query+messagegroupstats-param-timelimit": "Maximum time to spend calculating missing statistics. If zero, only the cached results from the beginning are returned.",
+ "apihelp-query+messagegroupstats-param-group": "Message group ID.",
+ "apihelp-query+messagegroupstats-example-1": "List of translation completion statistics for group page-Example",
+ "apihelp-query+messagetranslations-description": "Query all translations for a single message.",
+ "apihelp-query+messagetranslations-param-title": "Full title of a known message.",
+ "apihelp-query+messagetranslations-example-1": "List of translations in the wiki for MediaWiki:January",
+ "apihelp-translatesandbox-description": "Signup and manage sandboxed users.",
+ "apihelp-translatesandbox-param-do": "What to do.",
+ "apihelp-translatesandbox-param-userid": "User IDs of the users being managed. Use 0 for creations.",
+ "apihelp-translatesandbox-param-username": "Username when creating user.",
+ "apihelp-translatesandbox-param-password": "Password when creating user.",
+ "apihelp-translatesandbox-param-email": "Email when creating user.",
+ "apihelp-translateuser-description": "Translation related information about the user.",
+ "apihelp-translateuser-example-1": "Show information about the user",
+ "apihelp-translationaids-description": "Query all translations aids.",
+ "apihelp-translationaids-param-title": "Full title of a known message.",
+ "apihelp-translationaids-param-group": "Message group the message belongs to. If empty then primary group is used.",
+ "apihelp-translationaids-param-prop": "Which translation helpers to include.",
+ "apihelp-translationaids-example-1": "Show aids for [[MediaWiki:January/fi]]",
+ "apihelp-translationreview-description": "Mark translations reviewed.",
+ "apihelp-translationreview-param-revision": "The revision number to review.",
+ "apihelp-translationreview-example-1": "Review revision 1",
+ "apihelp-translationstash-description": "Add translations to stash.",
+ "apihelp-translationstash-param-subaction": "Action.",
+ "apihelp-translationstash-param-title": "Title of the translation unit page.",
+ "apihelp-translationstash-param-translation": "Translation made by the user.",
+ "apihelp-translationstash-param-metadata": "JSON object.",
+ "apihelp-translationstash-param-username": "Optionally the user whose stash to get. Only privileged users can do this.",
+ "apihelp-translationstash-example-1": "Add a translation to the stash for [[MediaWiki:Jan/fi]]",
+ "apihelp-translationstash-example-2": "Query the stash",
+ "apihelp-ttmserver-description": "Query suggestions from translation memories.",
+ "apihelp-ttmserver-param-service": "Which of the available translation services to use.",
+ "apihelp-ttmserver-param-sourcelanguage": "A language code of the source text.",
+ "apihelp-ttmserver-param-targetlanguage": "A language code of the suggestion.",
+ "apihelp-ttmserver-param-text": "The text to find suggestions for.",
+ "apihelp-ttmserver-example-1": "Get suggestions for translating \"Help\" from English to Finnish"
+}
diff --git a/MLEB/Translate/i18n/api/es.json b/MLEB/Translate/i18n/api/es.json
new file mode 100644
index 00000000..fee25d3e
--- /dev/null
+++ b/MLEB/Translate/i18n/api/es.json
@@ -0,0 +1,36 @@
+{
+ "@metadata": {
+ "authors": [
+ "Macofe",
+ "Fitoschido"
+ ]
+ },
+ "apihelp-aggregategroups-param-do": "Qué hacer con el grupo de mensajes agregados.",
+ "apihelp-aggregategroups-param-aggregategroup": "Identificador del grupo de mensajes agregado.",
+ "apihelp-aggregategroups-param-group": "Identificador del grupo de mensajes.",
+ "apihelp-aggregategroups-example-1": "Asociar un grupo",
+ "apihelp-groupreview-param-language": "Código de idioma.",
+ "apihelp-query+languagestats-description": "Consultar estadísticas de idioma.",
+ "apihelp-query+languagestats-param-language": "Código de idioma.",
+ "apihelp-query+languagestats-example-1": "Lista de estadísticas de traducciones completadas en finés.",
+ "apihelp-query+messagecollection-param-group": "Grupo de mensajes.",
+ "apihelp-query+messagecollection-param-language": "Código de idioma.",
+ "apihelp-query+messagecollection-param-limit": "El número de mensajes que mostrar (después de filtrar).",
+ "apihelp-query+messagecollection-example-1": "Lista de idiomas admitidos",
+ "apihelp-query+messagegroups-description": "Devolver información sobre grupos de mensajes.\n\nNota que el parámetro \"uselang\" afecta la salida de las partes dependientes del idioma.",
+ "apihelp-query+messagegroupstats-description": "Consultar estadísticas del grupo de mensajes.",
+ "apihelp-query+messagetranslations-description": "Consultar todas las traducciones para un único mensaje.",
+ "apihelp-translatesandbox-description": "Registrar y gestionar usuarios aislados (en \"sandbox\").",
+ "apihelp-translatesandbox-param-do": "Lo que hacer",
+ "apihelp-translatesandbox-param-username": "Nombre de usuario al crear el usuario.",
+ "apihelp-translateuser-description": "Información relacionada a traducción acerca del usuario.",
+ "apihelp-translationaids-description": "Consultar todas las asistencias de traducciones.",
+ "apihelp-translationreview-description": "Marcar traducciones como revisadas.",
+ "apihelp-translationreview-param-revision": "El número de revisión que revisar.",
+ "apihelp-translationreview-example-1": "Revisar revisión 1",
+ "apihelp-translationstash-param-subaction": "Acción",
+ "apihelp-translationstash-param-metadata": "Objeto JSON.",
+ "apihelp-ttmserver-param-targetlanguage": "Un código de idioma de la sugerencia.",
+ "apihelp-ttmserver-param-text": "El texto para el cual buscar sugerencias.",
+ "apihelp-ttmserver-example-1": "Obtener sugerencias para traducir \"Help\" del inglés al finés"
+}
diff --git a/MLEB/Translate/i18n/api/fy.json b/MLEB/Translate/i18n/api/fy.json
new file mode 100644
index 00000000..54cc7110
--- /dev/null
+++ b/MLEB/Translate/i18n/api/fy.json
@@ -0,0 +1,10 @@
+{
+ "@metadata": {
+ "authors": [
+ "Robin0van0der0vliet"
+ ]
+ },
+ "apihelp-groupreview-param-language": "Taalkoade.",
+ "apihelp-query+languagestats-param-language": "Taalkoade.",
+ "apihelp-query+messagecollection-param-language": "Taalkoade."
+}
diff --git a/MLEB/Translate/i18n/api/ia.json b/MLEB/Translate/i18n/api/ia.json
new file mode 100644
index 00000000..cf673db6
--- /dev/null
+++ b/MLEB/Translate/i18n/api/ia.json
@@ -0,0 +1,15 @@
+{
+ "@metadata": {
+ "authors": [
+ "McDutchie"
+ ]
+ },
+ "apihelp-query+messagecollection-param-limit": "Numero de messages a monstrar (post filtration).",
+ "apihelp-query+messagecollection-example-3": "Lista de messages optional in finnese con etiquettas pro le pagina del gruppo - Exemplo",
+ "apihelp-query+messagegroups-param-iconsize": "Dimension preferite del icone de gruppo rasterisate.",
+ "apihelp-translatesandbox-param-username": "Nomine de usator al momento de creation del usator.",
+ "apihelp-translationaids-description": "Consultar tote le adjutas de traduction.",
+ "apihelp-translationstash-param-metadata": "Objecto JSON.",
+ "apihelp-ttmserver-param-targetlanguage": "Un codice de lingua del suggestion.",
+ "apihelp-ttmserver-param-text": "Le texto pro le qual cercar suggestiones."
+}
diff --git a/MLEB/Translate/i18n/api/lb.json b/MLEB/Translate/i18n/api/lb.json
new file mode 100644
index 00000000..1ec03e2c
--- /dev/null
+++ b/MLEB/Translate/i18n/api/lb.json
@@ -0,0 +1,15 @@
+{
+ "@metadata": {
+ "authors": [
+ "Robby"
+ ]
+ },
+ "apihelp-groupreview-param-language": "Sproochcode.",
+ "apihelp-query+languagestats-param-language": "Sproochcode.",
+ "apihelp-query+messagecollection-param-language": "Sproochcode.",
+ "apihelp-query+messagecollection-example-1": "Lëscht vun den ënnerstëtzte Sproochen",
+ "apihelp-translatesandbox-param-do": "Wat maachen.",
+ "apihelp-translationreview-param-revision": "D'Nummer vun der Versioun fir nozekucken.",
+ "apihelp-translationreview-example-1": "Versioun 1 nokucken",
+ "apihelp-translationstash-param-subaction": "Aktioun."
+}
diff --git a/MLEB/Translate/i18n/api/mk.json b/MLEB/Translate/i18n/api/mk.json
new file mode 100644
index 00000000..bf9c9c42
--- /dev/null
+++ b/MLEB/Translate/i18n/api/mk.json
@@ -0,0 +1,75 @@
+{
+ "@metadata": {
+ "authors": [
+ "Bjankuloski06"
+ ]
+ },
+ "apihelp-aggregategroups-description": "Раководење со насобрани групи пораки.\n\nМожете да додавате или отстранувате насобрани групи пораки и да ги придружување во или отстранувате од збировите (една по една).",
+ "apihelp-aggregategroups-param-do": "Што да се прави во насобрана група пораки.",
+ "apihelp-aggregategroups-param-aggregategroup": "Назнака на насобраната група пораки.",
+ "apihelp-aggregategroups-param-group": "Назнака на групата пораки.",
+ "apihelp-aggregategroups-param-groupname": "Назив на насобраната групата пораки.",
+ "apihelp-aggregategroups-param-groupdescription": "Опис на насобраната група пораки.",
+ "apihelp-aggregategroups-example-1": "Придружи група.",
+ "apihelp-groupreview-description": "Задај состојби на разработеност на групата пораки.",
+ "apihelp-groupreview-param-group": "Група пораки.",
+ "apihelp-groupreview-param-language": "Јазичен код.",
+ "apihelp-groupreview-param-state": "Новата состојба на групата.",
+ "apihelp-groupreview-example-1": "Означи ја групата „група-Пример“ како готова за германски",
+ "apihelp-hardmessages-description": "Означување на преводи како тешки.",
+ "apihelp-hardmessages-param-title": "Наслов на пораката што сакате да ја означите како тешка.",
+ "apihelp-hardmessages-example-1": "Означи ја „SampleTitle“ како тешка",
+ "apihelp-query+languagestats-description": "Статистики за јазикот на барањето.",
+ "apihelp-query+languagestats-param-timelimit": "Максимално време што треба да се потроши за пресметување на отустните статистики. Ако е нула, ќе се дадат само меѓускладираните резултати од почетокот.",
+ "apihelp-query+languagestats-param-language": "Јазичен код.",
+ "apihelp-query+languagestats-example-1": "Список на статистики за потполноста на преводите на фински",
+ "apihelp-query+messagecollection-description": "Побарај преводи од Збирка пораки",
+ "apihelp-query+messagecollection-param-group": "Група пораки.",
+ "apihelp-query+messagecollection-param-language": "Јазичен код.",
+ "apihelp-query+messagecollection-param-limit": "Колку страници да се прикажат (по филтрирањето).",
+ "apihelp-query+messagecollection-param-offset": "Цел број или отстапување со клуч за почетокот.",
+ "apihelp-query+messagecollection-example-1": "Список на поддржани јазици",
+ "apihelp-query+messagecollection-example-2": "Список на определби на задолжителните пораки за групата „страница-Пример“",
+ "apihelp-query+messagecollection-example-4": "Повеќе информации за најновите преработки на преводот за групата страница-Пример",
+ "apihelp-query+messagegroups-description": "Дај информации за групите пораки.\n\nИмајте на ум дека параметарот „uselang“ влијае врз јазично-зависните делови.",
+ "apihelp-query+messagegroups-param-format": "Во форматот „дрво“, групите пораки можат да постојат на повеќе места во дрвото.",
+ "apihelp-query+messagegroups-param-iconsize": "Претпочитана големина на растеризираната икона на групата.",
+ "apihelp-query+messagegroups-example-1": "Прикажи групи пораки",
+ "apihelp-query+messagegroupstats-description": "Побарај статистики за група пораки.",
+ "apihelp-query+messagegroupstats-param-timelimit": "Максимално време што треба да се потроши за пресметување на отустните статистики. Ако е нула, ќе се дадат само меѓускладираните резултати од почетокот.",
+ "apihelp-query+messagegroupstats-param-group": "Назнака на групата пораки.",
+ "apihelp-query+messagegroupstats-example-1": "Список на статистики за потполност на преводите за групата страница-Пример",
+ "apihelp-query+messagetranslations-description": "Побарај ги сите преводи на една порака.",
+ "apihelp-query+messagetranslations-param-title": "Целосен наслов на позната порака.",
+ "apihelp-query+messagetranslations-example-1": "Список на преводи во викито за MediaWiki:January",
+ "apihelp-translatesandbox-description": "Регистрација и управување со корисници во песочникот.",
+ "apihelp-translatesandbox-param-do": "Што да се прави.",
+ "apihelp-translatesandbox-param-userid": "Кориснички назнаки на корисниците што се раководени. Користете 0 за создавања.",
+ "apihelp-translatesandbox-param-username": "Корисничко име при создавање на корисникот.",
+ "apihelp-translatesandbox-param-password": "Лозинка при создавање на корисникот.",
+ "apihelp-translatesandbox-param-email": "Е-пошта при создавање на корисникот.",
+ "apihelp-translateuser-description": "Преведувачки информации за корисникот.",
+ "apihelp-translateuser-example-1": "Прикажи информации за корисникот",
+ "apihelp-translationaids-description": "Барај по сите преводни помагала.",
+ "apihelp-translationaids-param-title": "Целосен наслов на позната порака.",
+ "apihelp-translationaids-param-group": "На која група припаѓа пораката. Ако е празно, тогаш се користи главнатагрупа.",
+ "apihelp-translationaids-param-prop": "Кои преводни помагала да се вклучат.",
+ "apihelp-translationaids-example-1": "Прикажи помагала за [[MediaWiki:January/fi]]",
+ "apihelp-translationreview-description": "Означи ги преводите како проверени.",
+ "apihelp-translationreview-param-revision": "Број на преработката за проверување.",
+ "apihelp-translationreview-example-1": "Оцени преработка 1",
+ "apihelp-translationstash-description": "Додај преводи во складот.",
+ "apihelp-translationstash-param-subaction": "Дејство.",
+ "apihelp-translationstash-param-title": "Наслов на страницата на преводната единица.",
+ "apihelp-translationstash-param-translation": "Превод направен од корисникот.",
+ "apihelp-translationstash-param-metadata": "JSON-објект.",
+ "apihelp-translationstash-param-username": "Или пак, корисникот чиј склад треба да се даде. Ова можат да го прават само привилегирани корисници.",
+ "apihelp-translationstash-example-1": "Додај превод во складот за [[MediaWiki:Jan/fi]]",
+ "apihelp-translationstash-example-2": "Побарај во складот",
+ "apihelp-ttmserver-description": "Побарај предлози од преводните помнила.",
+ "apihelp-ttmserver-param-service": "Која од расположивите преводни служби да се користи.",
+ "apihelp-ttmserver-param-sourcelanguage": "Јазичен код на изворниот текст.",
+ "apihelp-ttmserver-param-targetlanguage": "Јазичен код на предлогот.",
+ "apihelp-ttmserver-param-text": "За кој текст да се најдат предлози.",
+ "apihelp-ttmserver-example-1": "Дај предлози за преведување на „Help“ од англиски на фински"
+}
diff --git a/MLEB/Translate/i18n/api/ms.json b/MLEB/Translate/i18n/api/ms.json
new file mode 100644
index 00000000..038190df
--- /dev/null
+++ b/MLEB/Translate/i18n/api/ms.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Anakmalaysia"
+ ]
+ },
+ "apihelp-query+languagestats-param-language": "Kod bahasa."
+}
diff --git a/MLEB/Translate/i18n/api/nl.json b/MLEB/Translate/i18n/api/nl.json
new file mode 100644
index 00000000..49d29011
--- /dev/null
+++ b/MLEB/Translate/i18n/api/nl.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Sjoerddebruin"
+ ]
+ },
+ "apihelp-translationstash-param-metadata": "JSON-object"
+}
diff --git a/MLEB/Translate/i18n/api/pdc.json b/MLEB/Translate/i18n/api/pdc.json
new file mode 100644
index 00000000..8802cc37
--- /dev/null
+++ b/MLEB/Translate/i18n/api/pdc.json
@@ -0,0 +1,9 @@
+{
+ "@metadata": {
+ "authors": [
+ "Xqt"
+ ]
+ },
+ "apihelp-groupreview-param-language": "Schprooche-Code",
+ "apihelp-query+languagestats-param-language": "Schprooche-Code."
+}
diff --git a/MLEB/Translate/i18n/api/pl.json b/MLEB/Translate/i18n/api/pl.json
new file mode 100644
index 00000000..410e7cf9
--- /dev/null
+++ b/MLEB/Translate/i18n/api/pl.json
@@ -0,0 +1,17 @@
+{
+ "@metadata": {
+ "authors": [
+ "Chrumps"
+ ]
+ },
+ "apihelp-groupreview-param-group": "Grupa komunikatów.",
+ "apihelp-groupreview-param-language": "Kod języka.",
+ "apihelp-query+languagestats-param-language": "Kod języka.",
+ "apihelp-query+messagecollection-param-language": "Kod języka.",
+ "apihelp-query+messagecollection-example-1": "Lista obsługiwanych języków",
+ "apihelp-query+messagegroups-param-iconsize": "Preferowany rozmiar zrasteryzowanej grupy ikon.",
+ "apihelp-query+messagegroups-example-1": "Pokaż grupy komunikatów",
+ "apihelp-translateuser-example-1": "Pokaż informacje o użytkowniku",
+ "apihelp-translationstash-param-translation": "Tłumaczenia wykonane przez użytkownika.",
+ "apihelp-translationstash-param-metadata": "Obiekt JSON."
+}
diff --git a/MLEB/Translate/i18n/api/pt.json b/MLEB/Translate/i18n/api/pt.json
new file mode 100644
index 00000000..a0f0795c
--- /dev/null
+++ b/MLEB/Translate/i18n/api/pt.json
@@ -0,0 +1,14 @@
+{
+ "@metadata": {
+ "authors": [
+ "Vitorvicentevalente"
+ ]
+ },
+ "apihelp-groupreview-param-language": "Código de idioma.",
+ "apihelp-query+languagestats-param-language": "Código de idioma.",
+ "apihelp-query+messagecollection-param-language": "Código de idioma.",
+ "apihelp-query+messagecollection-example-1": "Lista de idiomas suportados.",
+ "apihelp-translationstash-param-subaction": "Ação.",
+ "apihelp-translationstash-param-metadata": "Objeto JSON.",
+ "apihelp-ttmserver-param-targetlanguage": "Um código de idioma da sugestão."
+}
diff --git a/MLEB/Translate/i18n/api/qqq.json b/MLEB/Translate/i18n/api/qqq.json
new file mode 100644
index 00000000..99d3ad4f
--- /dev/null
+++ b/MLEB/Translate/i18n/api/qqq.json
@@ -0,0 +1,83 @@
+{
+ "@metadata": {
+ "authors": [
+ "Robby",
+ "Liuxinyu970226"
+ ]
+ },
+ "apihelp-aggregategroups-description": "{{doc-apihelp-description|aggregategroups}}",
+ "apihelp-aggregategroups-param-do": "{{doc-apihelp-param|aggregategroups|do}}",
+ "apihelp-aggregategroups-param-aggregategroup": "{{doc-apihelp-param|aggregategroups|aggregategroup}}",
+ "apihelp-aggregategroups-param-group": "{{doc-apihelp-param|aggregategroups|group}}",
+ "apihelp-aggregategroups-param-groupname": "{{doc-apihelp-param|aggregategroups|groupname}}",
+ "apihelp-aggregategroups-param-groupdescription": "{{doc-apihelp-param|aggregategroups|groupdescription}}",
+ "apihelp-aggregategroups-example-1": "{{doc-apihelp-example|aggregategroups}}",
+ "apihelp-groupreview-description": "{{doc-apihelp-description|groupreview}}",
+ "apihelp-groupreview-param-group": "{{doc-apihelp-param|groupreview|group}}",
+ "apihelp-groupreview-param-language": "{{doc-apihelp-param|groupreview|language}}\n{{Identical|Language code}}",
+ "apihelp-groupreview-param-state": "{{doc-apihelp-param|groupreview|state}}",
+ "apihelp-groupreview-example-1": "{{doc-apihelp-example|groupreview}}",
+ "apihelp-hardmessages-description": "{{doc-apihelp-description|hardmessages}}",
+ "apihelp-hardmessages-param-title": "{{doc-apihelp-param|hardmessages|title}}",
+ "apihelp-hardmessages-example-1": "{{doc-apihelp-example|hardmessages}}",
+ "apihelp-query+languagestats-description": "{{doc-apihelp-description|query+languagestats}}",
+ "apihelp-query+languagestats-param-timelimit": "{{doc-apihelp-param|query+languagestats|timelimit}}",
+ "apihelp-query+languagestats-param-language": "{{doc-apihelp-param|query+languagestats|language}}\n{{Identical|Language code}}",
+ "apihelp-query+languagestats-example-1": "{{doc-apihelp-example|query+languagestats}}",
+ "apihelp-query+messagecollection-description": "{{doc-apihelp-description|query+messagecollection}}",
+ "apihelp-query+messagecollection-param-group": "{{doc-apihelp-param|query+messagecollection|group}}",
+ "apihelp-query+messagecollection-param-language": "{{doc-apihelp-param|query+messagecollection|language}}\n{{Identical|Language code}}",
+ "apihelp-query+messagecollection-param-limit": "{{doc-apihelp-param|query+messagecollection|limit}}",
+ "apihelp-query+messagecollection-param-offset": "{{doc-apihelp-param|query+messagecollection|offset}}",
+ "apihelp-query+messagecollection-param-filter": "{{doc-apihelp-param|query+messagecollection|filter}}",
+ "apihelp-query+messagecollection-param-prop": "{{doc-apihelp-param|query+messagecollection|prop}}",
+ "apihelp-query+messagecollection-example-1": "{{doc-apihelp-example|query+messagecollection}}",
+ "apihelp-query+messagecollection-example-2": "{{doc-apihelp-example|query+messagecollection}}",
+ "apihelp-query+messagecollection-example-3": "{{doc-apihelp-example|query+messagecollection}}",
+ "apihelp-query+messagecollection-example-4": "{{doc-apihelp-example|query+messagecollection}}",
+ "apihelp-query+messagegroups-description": "{{doc-apihelp-description|query+messagegroups}}",
+ "apihelp-query+messagegroups-param-depth": "{{doc-apihelp-param|query+messagegroups|depth}}",
+ "apihelp-query+messagegroups-param-filter": "{{doc-apihelp-param|query+messagegroups|filter}}",
+ "apihelp-query+messagegroups-param-format": "{{doc-apihelp-param|query+messagegroups|format}}",
+ "apihelp-query+messagegroups-param-iconsize": "{{doc-apihelp-param|query+messagegroups|iconsize}}",
+ "apihelp-query+messagegroups-param-prop": "{{doc-apihelp-param|query+messagegroups|prop}}",
+ "apihelp-query+messagegroups-param-root": "{{doc-apihelp-param|query+messagegroups|root}}",
+ "apihelp-query+messagegroups-example-1": "{{doc-apihelp-example|query+messagegroups}}",
+ "apihelp-query+messagegroupstats-description": "{{doc-apihelp-description|query+messagegroupstats}}",
+ "apihelp-query+messagegroupstats-param-timelimit": "{{doc-apihelp-param|query+messagegroupstats|timelimit}}",
+ "apihelp-query+messagegroupstats-param-group": "{{doc-apihelp-param|query+messagegroupstats|group}}",
+ "apihelp-query+messagegroupstats-example-1": "{{doc-apihelp-example|query+messagegroupstats}}",
+ "apihelp-query+messagetranslations-description": "{{doc-apihelp-description|query+messagetranslations}}",
+ "apihelp-query+messagetranslations-param-title": "{{doc-apihelp-param|query+messagetranslations|title}}",
+ "apihelp-query+messagetranslations-example-1": "{{doc-apihelp-example|query+messagetranslations}}",
+ "apihelp-translatesandbox-description": "{{doc-apihelp-description|translatesandbox}}",
+ "apihelp-translatesandbox-param-do": "{{doc-apihelp-param|translatesandbox|do}}",
+ "apihelp-translatesandbox-param-userid": "{{doc-apihelp-param|translatesandbox|userid}}",
+ "apihelp-translatesandbox-param-username": "{{doc-apihelp-param|translatesandbox|username}}",
+ "apihelp-translatesandbox-param-password": "{{doc-apihelp-param|translatesandbox|password}}",
+ "apihelp-translatesandbox-param-email": "{{doc-apihelp-param|translatesandbox|email}}",
+ "apihelp-translateuser-description": "{{doc-apihelp-description|translateuser}}",
+ "apihelp-translateuser-example-1": "{{doc-apihelp-example|translateuser}}",
+ "apihelp-translationaids-description": "{{doc-apihelp-description|translationaids}}",
+ "apihelp-translationaids-param-title": "{{doc-apihelp-param|translationaids|title}}",
+ "apihelp-translationaids-param-group": "{{doc-apihelp-param|translationaids|group}}",
+ "apihelp-translationaids-param-prop": "{{doc-apihelp-param|translationaids|prop}}",
+ "apihelp-translationaids-example-1": "{{doc-apihelp-example|translationaids}}",
+ "apihelp-translationreview-description": "{{doc-apihelp-description|translationreview}}",
+ "apihelp-translationreview-param-revision": "{{doc-apihelp-param|translationreview|revision}}",
+ "apihelp-translationreview-example-1": "{{doc-apihelp-example|translationreview}}",
+ "apihelp-translationstash-description": "{{doc-apihelp-description|translationstash}}",
+ "apihelp-translationstash-param-subaction": "{{doc-apihelp-param|translationstash|subaction}}\n{{Identical|Action}}",
+ "apihelp-translationstash-param-title": "{{doc-apihelp-param|translationstash|title}}",
+ "apihelp-translationstash-param-translation": "{{doc-apihelp-param|translationstash|translation}}",
+ "apihelp-translationstash-param-metadata": "{{doc-apihelp-param|translationstash|metadata}}",
+ "apihelp-translationstash-param-username": "{{doc-apihelp-param|translationstash|username}}",
+ "apihelp-translationstash-example-1": "{{doc-apihelp-example|translationstash}}",
+ "apihelp-translationstash-example-2": "{{doc-apihelp-example|translationstash}}",
+ "apihelp-ttmserver-description": "{{doc-apihelp-description|ttmserver}}",
+ "apihelp-ttmserver-param-service": "{{doc-apihelp-param|ttmserver|service}}",
+ "apihelp-ttmserver-param-sourcelanguage": "{{doc-apihelp-param|ttmserver|sourcelanguage}}",
+ "apihelp-ttmserver-param-targetlanguage": "{{doc-apihelp-param|ttmserver|targetlanguage}}",
+ "apihelp-ttmserver-param-text": "{{doc-apihelp-param|ttmserver|text}}",
+ "apihelp-ttmserver-example-1": "{{doc-apihelp-example|ttmserver}}"
+}
diff --git a/MLEB/Translate/i18n/api/sv.json b/MLEB/Translate/i18n/api/sv.json
new file mode 100644
index 00000000..f3a7fca3
--- /dev/null
+++ b/MLEB/Translate/i18n/api/sv.json
@@ -0,0 +1,29 @@
+{
+ "@metadata": {
+ "authors": [
+ "Lokal Profil",
+ "WikiPhoenix"
+ ]
+ },
+ "apihelp-aggregategroups-param-group": "Meddelandegrupp-ID.",
+ "apihelp-aggregategroups-example-1": "Associera en grupp",
+ "apihelp-groupreview-param-group": "Meddelandegrupp.",
+ "apihelp-groupreview-param-language": "Språkkod.",
+ "apihelp-groupreview-example-1": "Markera gruppen \"group-Example\" som redo för tyska",
+ "apihelp-hardmessages-description": "Markera översättningar som svåra.",
+ "apihelp-hardmessages-param-title": "Titel på det meddelande som ska markeras som svårt.",
+ "apihelp-hardmessages-example-1": "Markera \"SampleTitle\" som svår",
+ "apihelp-query+languagestats-param-language": "Språkkod.",
+ "apihelp-query+messagecollection-param-group": "Meddelandegrupp.",
+ "apihelp-query+messagecollection-param-language": "Språkkod.",
+ "apihelp-query+messagecollection-example-1": "Lista över språk som stöds",
+ "apihelp-query+messagegroups-example-1": "Visa meddelandegrupper",
+ "apihelp-query+messagegroupstats-param-group": "Meddelandegrupp-ID.",
+ "apihelp-translatesandbox-param-username": "Användarnamn när du skapar en användare.",
+ "apihelp-translatesandbox-param-password": "Lösenord när du skapar en användare.",
+ "apihelp-translatesandbox-param-email": "E-post när du skapar en användare.",
+ "apihelp-translateuser-example-1": "Visa information om användaren",
+ "apihelp-translationstash-param-metadata": "JSON-objekt.",
+ "apihelp-ttmserver-param-sourcelanguage": "En språkkod för källtexten.",
+ "apihelp-ttmserver-param-targetlanguage": "En språkkod för förslaget."
+}
diff --git a/MLEB/Translate/i18n/api/uk.json b/MLEB/Translate/i18n/api/uk.json
new file mode 100644
index 00000000..c58e6db2
--- /dev/null
+++ b/MLEB/Translate/i18n/api/uk.json
@@ -0,0 +1,12 @@
+{
+ "@metadata": {
+ "authors": [
+ "Ypryima"
+ ]
+ },
+ "apihelp-groupreview-param-language": "Мовний код.",
+ "apihelp-query+messagecollection-param-limit": "Скільки повідомлень показувати (після фільтрації)",
+ "apihelp-translatesandbox-param-username": "Ім'я користувача при створенні користувача.",
+ "apihelp-translationreview-example-1": "Перевірка версій",
+ "apihelp-translationstash-param-metadata": "JSON об'єкт"
+}
diff --git a/MLEB/Translate/i18n/api/zh-hans.json b/MLEB/Translate/i18n/api/zh-hans.json
new file mode 100644
index 00000000..1e1e8782
--- /dev/null
+++ b/MLEB/Translate/i18n/api/zh-hans.json
@@ -0,0 +1,37 @@
+{
+ "@metadata": {
+ "authors": [
+ "Liuxinyu970226"
+ ]
+ },
+ "apihelp-aggregategroups-param-group": "信息组ID。",
+ "apihelp-aggregategroups-example-1": "定义一个群组",
+ "apihelp-groupreview-param-group": "信息组。",
+ "apihelp-groupreview-param-language": "语言代码。",
+ "apihelp-hardmessages-description": "将翻译标记为困难。",
+ "apihelp-hardmessages-example-1": "将“SampleTitle”标记为困难",
+ "apihelp-query+languagestats-description": "查询语言状态。",
+ "apihelp-query+languagestats-param-language": "语言代码。",
+ "apihelp-query+messagecollection-param-group": "信息组。",
+ "apihelp-query+messagecollection-param-language": "语言代码。",
+ "apihelp-query+messagecollection-param-limit": "显示的消息数量(过滤后)。",
+ "apihelp-query+messagecollection-example-1": "支持的语言列表",
+ "apihelp-query+messagecollection-example-3": "芬兰语中的可选消息列表,带有用于page-Example组的标签",
+ "apihelp-query+messagegroups-param-iconsize": "栅格化群组图标的首选大小。",
+ "apihelp-query+messagegroups-example-1": "显示信息组",
+ "apihelp-query+messagegroupstats-param-group": "信息组ID。",
+ "apihelp-translatesandbox-param-do": "要干什么。",
+ "apihelp-translatesandbox-param-username": "创建用户时的用户名。",
+ "apihelp-translatesandbox-param-password": "创建用户时的密码。",
+ "apihelp-translatesandbox-param-email": "创建用户时发送电子邮件。",
+ "apihelp-translationaids-description": "查询所有翻译帮助。",
+ "apihelp-translationaids-example-1": "显示[[MediaWiki:January/fi]]的建议",
+ "apihelp-translationreview-example-1": "复核修订版本1",
+ "apihelp-translationstash-param-subaction": "操作。",
+ "apihelp-translationstash-param-translation": "由用户做出的翻译。",
+ "apihelp-translationstash-param-metadata": "JSON对象。",
+ "apihelp-translationstash-example-2": "查询藏匿",
+ "apihelp-ttmserver-param-sourcelanguage": "原始文本的语言代码。",
+ "apihelp-ttmserver-param-targetlanguage": "建议的语言代码。",
+ "apihelp-ttmserver-param-text": "用于寻找建议的文本。"
+}
diff --git a/MLEB/Translate/i18n/api/zh-hant.json b/MLEB/Translate/i18n/api/zh-hant.json
new file mode 100644
index 00000000..3afa6f24
--- /dev/null
+++ b/MLEB/Translate/i18n/api/zh-hant.json
@@ -0,0 +1,9 @@
+{
+ "@metadata": {
+ "authors": [
+ "Liuxinyu970226"
+ ]
+ },
+ "apihelp-groupreview-param-language": "語言代碼。",
+ "apihelp-query+messagecollection-param-language": "語言代碼。"
+}
diff --git a/MLEB/Translate/i18n/core/ace.json b/MLEB/Translate/i18n/core/ace.json
new file mode 100644
index 00000000..9d2262f0
--- /dev/null
+++ b/MLEB/Translate/i18n/core/ace.json
@@ -0,0 +1,46 @@
+{
+ "@metadata": {
+ "authors": [
+ "Rachmat.Wahidi",
+ "Ayie7791"
+ ]
+ },
+ "translate": "Teujeumah",
+ "translate-desc": "[[Special:Translate|Laman kusuih]] keu neuteujeumah MediaWiki ngön nyang la'én",
+ "translate-taskui-view": "Peudeuh ban dum peusan",
+ "translate-taskui-untranslated": "Peudeuh peusan nyang gohlom meuteujeumah",
+ "translate-taskui-reviewall": "Kalön ban dum teujeumah",
+ "translate-taction-translate": "Teujeumah",
+ "translate-taction-proofread": "Kalön",
+ "translate-taction-lstats": "Keunira bahsa",
+ "translate-taction-mstats": "Keunira kawan peusan",
+ "translate-taction-disabled": "Buet nyoe geupeumaté ban wiki nyoe.",
+ "translate-page-no-such-language": "Bahsa nyang neupiléh hana sah.",
+ "translate-page-no-such-group": "Kawan nyang neupiléh hana sah.",
+ "translate-page-disabled": "Teujeumah kawan peusan nyoe u bahsa nyoe ka geupeumaté. Dalèh:\n\n<em>$1</em>",
+ "translate-language-disabled": "Teujeumah u bahsa nyoe ka geupeumaté.",
+ "translate-page-settings-legend": "Atô",
+ "translate-page-group": "Kawan",
+ "translate-page-language": "Bahsa",
+ "translate-page-limit": "Ceuë",
+ "translate-page-limit-option": "$1 {{PLURAL:$1|peusan|peusan}} saboh laman",
+ "translate-submit": "Cok",
+ "translate-page-navigation-legend": "Keumudoë",
+ "translate-page-showing": "Peleumah bandum peusan nibak $1 u $2 nibak $3.",
+ "translate-page-showing-all": "Peuleumah $1 {{PLURAL:$1|peusan|peusan}}.",
+ "translate-page-showing-none": "Hana peusan nyang jeuet tapeudeuh.",
+ "translate-next": "Laman u keue",
+ "translate-prev": "Laman u likôt",
+ "translate-page-description-legend": "Hareutoe bhah kawan nyoe",
+ "translate-page-edit": "andam",
+ "translate-ext-url": "<hr />Alamat wèb: $1",
+ "translate-optional": "(teunamah)",
+ "translate-ignored": "(hana peuhiröe)",
+ "translate-edit-title": "Andam \"$1\"",
+ "translate-edit-definition": "Hareutoe peusan",
+ "translate-edit-translation": "Teujeumah",
+ "translate-edit-contribute": "beuneuri",
+ "translate-edit-information": "Hareutoe bhah peusan ($1)",
+ "translate-edit-in-other-languages": "Peusan bak bahsa la'én",
+ "translate-edit-committed": "Teujeumah lam peukakah leumiek jinoe"
+}
diff --git a/MLEB/Translate/i18n/core/af.json b/MLEB/Translate/i18n/core/af.json
new file mode 100644
index 00000000..3967723b
--- /dev/null
+++ b/MLEB/Translate/i18n/core/af.json
@@ -0,0 +1,364 @@
+{
+ "@metadata": {
+ "authors": [
+ "Ansumang",
+ "Arnobarnard",
+ "Byeboer",
+ "Naudefj",
+ "SPQRobin",
+ "පසිඳු කාවින්ද"
+ ]
+ },
+ "translate": "Vertaal",
+ "translate-desc": "[[Special:Translate|Spesiale bladsy]] vir vertaal van MediaWiki en meer",
+ "translate-taskui-view": "Wys alle boodskappe",
+ "translate-taskui-untranslated": "Wys onvertaalde boodskappe",
+ "translate-taskui-optional": "Wys opsionele boodskappe.",
+ "translate-taskui-acceptqueue": "Slegs boodskappe wat ek kan aanvaar",
+ "translate-taskui-reviewall": "Kontroleer alle vertalings",
+ "translate-taction-translate": "Vertaal",
+ "translate-taction-proofread": "Proeflees",
+ "translate-taction-lstats": "Taalstatistieke",
+ "translate-taction-mstats": "Boodskapgroep-statistieke",
+ "translate-taction-export": "Eksporteer",
+ "translate-taction-disabled": "Die aksie is afgeskakel op hierdie wiki.",
+ "translate-page-no-such-language": "Gespesifiseerde taal is ongeldig.",
+ "translate-page-no-such-group": "Die gespesifiseerde groep bestaan nie.",
+ "translate-page-disabled": "Vertalings in die taal vir hierdie groep is gedeaktiveer. Rede:\n\n<em>$1</em>",
+ "translate-language-disabled": "Vertaling van die taal is gedeaktiveer.",
+ "translate-page-settings-legend": "Instellings",
+ "translate-page-group": "Groep",
+ "translate-page-language": "Taal",
+ "translate-page-limit": "Limiet",
+ "translate-page-limit-option": "$1 {{PLURAL:$1|boodskap|boodskappe}} per bladsy",
+ "translate-submit": "Gaan haal",
+ "translate-page-navigation-legend": "Navigasie",
+ "translate-page-showing": "Wys boodskappe van $1 tot $2 uit $3.",
+ "translate-page-showing-all": "Wys $1 {{PLURAL:$1|boodskap|boodskappe}}.",
+ "translate-page-showing-none": "Geen boodskappe om te wys nie.",
+ "translate-next": "Volgende bladsy",
+ "translate-prev": "Vorige bladsy",
+ "translate-page-description-legend": "Inligting oor hierdie groep",
+ "translate-page-description-hasoptional-open": "Wys opsionele boodskappe.",
+ "translate-page-edit": "wysig",
+ "translate-ext-url": "<hr />Webwerf: $1",
+ "translate-optional": "(opsioneel)",
+ "translate-ignored": "(geïgnoreer)",
+ "translate-edit-title": "Wysig \"$1\"",
+ "translate-edit-definition": "Boodskap se definisie",
+ "translate-edit-translation": "Vertaling",
+ "translate-edit-contribute": "wysig",
+ "translate-edit-no-information": "''Die boodskap het geen dokumentasie nie.''\n''As u weet waar die boodskap gebruik word, kan u ander gebruikers help deur dokumentasie by te voeg.''",
+ "translate-edit-information": "Inligting oor boodskap ($1)",
+ "translate-edit-in-other-languages": "Boodskap in ander tale",
+ "translate-edit-committed": "Huidige vertaling in sagteware",
+ "translate-edit-warnings": "Waarskuwings oor onvoltooide vertalings",
+ "translate-edit-tmsugs": "Voorstelle uit die vertaalgeheue",
+ "translate-edit-tmmatch-source": "Bronteks vir vertaling: $1",
+ "translate-edit-tmmatch": "$1% ooreenkoms",
+ "translate-use-suggestion": "Vervang die huidige vertaling met hierdie voorstel.",
+ "translate-edit-nopermission": "U moet toestemming verkry alvorens u boodskappe kan vertaal.",
+ "translate-edit-askpermission": "Vra vir toestemming",
+ "translate-magic-pagename": "Uitgebreide MediaWiki-vertaling",
+ "translate-magic-module": "Module:",
+ "translate-magic-submit": "Gaan haal",
+ "translate-magic-cm-export": "Eksporteer",
+ "translate-magic-nothing-to-export": "Daar is niks om te eksporteer nie.",
+ "translate-magic-cm-to-be": "Toekomstig",
+ "translate-magic-cm-current": "Huidig",
+ "translate-magic-cm-original": "Oorspronklik",
+ "translate-magic-cm-comment": "Samevatting:",
+ "translate-magic-cm-save": "Stoor",
+ "translate-magic-cm-updatedusing": "Opgedateer deur [[Special:AdvancedTranslate|{{int:Translate-magic-pagename}}]] te gebruik",
+ "translate-magic-cm-savefailed": "Stoor het gefaal",
+ "translate-magic-special": "Alternatiewe spesiale bladsye",
+ "translate-magic-words": "Magiese woorde",
+ "translate-magic-namespace": "Naamruimtename",
+ "translate-magic-notsaved": "U wysigings is nie gestoor nie!",
+ "translate-magic-errors": "Los die volgende {{PLURAL:$1|fout|foute}} in die vertaling op:",
+ "translate-magic-saved": "U wysigings was suksesvol gestoor.",
+ "translate-checks-parameters": "Die volgende {{PLURAL:$2|parameter word|parameters word}} nie gebruik nie:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-parameters-unknown": "Die volgende {{PLURAL:$2|parameter|parameters}} is onbekend:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-balance": "Daar is 'n onewe {{PLURAL:$2|aantal hakkies|aantal hakkies}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links": "Die volgende {{PLURAL:$2|verwysing is|verwysings is}} problematies:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links-missing": "Die volgende {{PLURAL:$2|verwysing is weg|$2 verwysings is weg}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-xhtml": "Vervang die volgende {{PLURAL:$2|etiket|etikette}} met die regtes:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-plural": "Die definisie bevat <nowiki>{{PLURAL:}}</nowiki>, maar die vertaling nie.",
+ "translate-checks-pagename": "Naamspasie het verander van die definisie",
+ "translate-checks-format": "Hierdie vertaling wyk af van die bronboodskap of het 'n ongeldige sintaks: $1",
+ "translate-checks-escape": "Die volgende \"escapes\" is waarskynlik per ongeluk toegepas: <strong>$1</strong>",
+ "translate-checks-malformed": "<nowiki>$1</nowiki> het 'n ongeldige indeling.",
+ "translate-checks-fudforum-syntax": "Gebruik <nowiki>$1</nowiki> i.p.v. <nowiki>$2</nowiki> vir hierdie projek.",
+ "translate-pref-nonewsletter": "Moenie aan my nuusbriewe per e-pos stuur nie",
+ "translate-pref-editassistlang": "Hulptale:",
+ "prefs-translate": "Vertalings opsies",
+ "translate-pref-editassistlang-help": "Komma-geskeide lys van taalkodes.\nVertaling van 'n boodskap in hierdie tale word vertoon wanneer u vertaal.\nDie versteklys van tale hang van u taal af.",
+ "translate-pref-editassistlang-bad": "Ongeldige taalkode in die lys:\n<nowiki>$1</nowiki>.",
+ "right-translate": "Wysig via die vertaalkoppelvlak",
+ "right-translate-manage": "Bestuur boodskapgroepe",
+ "action-translate-manage": "bestuur boodskapgroepe",
+ "right-translate-import": "Vertalings van buite die stelsel importeer",
+ "action-translate-import": "Vertalings van buite die stelsel importeer",
+ "right-translate-messagereview": "Review vertalings",
+ "right-translate-groupreview": "Verander workflow toestand van die boodskap groepe",
+ "translate-rc-translation-filter": "Filter vertalings:",
+ "translate-rc-translation-filter-no": "Doen niks nie",
+ "translate-rc-translation-filter-only": "Wys slegs vertalings",
+ "translate-rc-translation-filter-filter": "Filter vertalings uit",
+ "translate-rc-translation-filter-site": "Slegs veranderinge aan werfboodskappe",
+ "translationstats": "Vertaalstatistieke",
+ "translate-stats-edits": "Wysigings",
+ "translate-stats-users": "Vertalers",
+ "translate-stats-registrations": "Registrasies",
+ "translate-stats-reviews": "Beoordelings",
+ "translate-stats-reviewers": "Beoordelaars",
+ "translate-statsf-intro": "U kan eenvoudige statistiek vanaf hierdie vorm genereer.\nAlle waardes het hoër en laer limiete.",
+ "translate-statsf-options": "Grafiekopsies",
+ "translate-statsf-width": "Breedte in pixels:",
+ "translate-statsf-height": "Hoogte in pixels:",
+ "translate-statsf-days": "Periode in dae:",
+ "translate-statsf-start": "Begindatum:",
+ "translate-statsf-scale": "Granulariteit:",
+ "translate-statsf-scale-months": "Maande",
+ "translate-statsf-scale-weeks": "Weke",
+ "translate-statsf-scale-days": "Dae",
+ "translate-statsf-scale-hours": "Ure",
+ "translate-statsf-count": "Eenheid:",
+ "translate-statsf-count-edits": "Aantal wysigings",
+ "translate-statsf-count-users": "Aktiewe vertalers",
+ "translate-statsf-count-registrations": "Nuwe gebruikers",
+ "translate-statsf-count-reviews": "Gekontroleerde vertalings",
+ "translate-statsf-count-reviewers": "Beoordelaars",
+ "translate-statsf-language": "Kommageskeide lys van taalkodes:",
+ "translate-statsf-group": "Kommageskeide lys van groepkodes:",
+ "translate-statsf-submit": "Voorskou",
+ "translate-tag-category": "Vertaalbare bladsye",
+ "translate-tag-page-desc": "Vertaling van die wikibladsy [[$2|$1]].",
+ "translate-sidebar-alltrans": "In ander tale",
+ "translations": "Alle vertalings",
+ "translations-summary": "Voer die naam van 'n boodskap in om alle beskikbare vertalings daarvan te sien.",
+ "translate-translations-no-message": "\"$1\" is nie 'n vertaalbare boodskap nie",
+ "translate-translations-none": "Daar is geen vertalings vir \"$1\"",
+ "translate-translations-count": "Daar is {{PLURAL:$1|een vertaling|$1 vertalings}}.",
+ "translate-translations-fieldset-title": "Boodskap",
+ "translate-translations-messagename": "Naam:",
+ "translate-translations-project": "Projek:",
+ "translate-translations-including-no-param": "Verskaf asseblief 'n geldige boodskapnaam as subbladsy-parameter",
+ "translate-translations-history-short": "g",
+ "languagestats": "Taalstatistieke",
+ "languagestats-summary": "Op hierdie bladsy word vertaalstatistieke vir alle boodskapgroepe van 'n taal weergegee.",
+ "languagestats-stats-for": "Vertaalstatistieke vir $1 ($2).",
+ "languagestats-recenttranslations": "onlangse vertalings",
+ "translate-langstats-incomplete": "Sommige van die statistieke van hierdie bladsy is onvolledig. Reload meer statistieke te kry.",
+ "translate-langstats-expand": "wys",
+ "translate-langstats-collapse": "versteek",
+ "translate-langstats-expandall": "wys alles",
+ "translate-langstats-collapseall": "versteek alles",
+ "translate-language-code": "Taalkode",
+ "translate-language-code-field-name": "Taalkode:",
+ "translate-suppress-complete": "Verberg volledig vertaalde boodskapgroepe",
+ "translate-ls-noempty": "Onderdruk heeltemal onvertaalde boodskap groepe",
+ "translate-language": "Taal",
+ "translate-total": "Boodskappe",
+ "translate-untranslated": "Onvertaal",
+ "translate-percentage-complete": "Vertaal",
+ "translate-percentage-fuzzy": "Verouderd",
+ "translate-languagestats-overall": "Alle boodskap groepe saam",
+ "translate-ls-submit": "Wys statistieke",
+ "translate-ls-column-group": "Boodskapgroep",
+ "translate-mgs-pagename": "Boodskap groep statistieke",
+ "translate-mgs-fieldset": "Wys voorkeure",
+ "translate-mgs-group": "Boodskapgroep:",
+ "translate-mgs-nocomplete": "Versteek volledig vertaalde tale",
+ "translate-mgs-noempty": "Versteek tale sonder enige vertalings",
+ "translate-mgs-submit": "Wys statistieke",
+ "translate-mgs-column-language": "Taal",
+ "translate-mgs-totals": "Alle tale saam",
+ "translate-mgs-invalid-group": "De opgegewe groep \"$1\" bestaan nie.",
+ "translate-mgs-nothing": "Niks om te wys vir die versoek statistieke nie.",
+ "supportedlanguages": "Ondersteunde tale",
+ "supportedlanguages-colorlegend": "Sleutel vir die kleure: laaste vertaling $1 dae gelede.",
+ "supportedlanguages-translators": "{{PLURAL:$2|Vertaler|Vertalers}}: $1",
+ "supportedlanguages-recenttranslations": "onlangse vertalings",
+ "supportedlanguages-count": "$1 {{PLURAL:$1|taal|tale}} in totaal.",
+ "supportedlanguages-activity": "$1: $2 {{PLURAL:$2|wysiging|wysigings}} - laaste wysiging {{PLURAL:$3|gister|$1 dae}} gelede",
+ "translate-save": "Stoor ($1)",
+ "translate-jssti-add": "Voeg by lys",
+ "managemessagegroups": "Beheer boodskapgroepe",
+ "translate-smg-notallowed": "U mag nie hierdie handeling uitvoer nie.",
+ "translate-smg-nochanges": "Daar is geen wysigings om te verwerk nie.",
+ "translate-smg-submit": "Dien wysigings vir verwerking in",
+ "translate-smg-left": "Inhoud in wiki",
+ "translate-smg-right": "Inkomende wysigings",
+ "translate-manage-import-diff": "Boodskap $1 | Handeling: $2",
+ "translate-manage-import-new": "Nuwe boodskap $1",
+ "translate-manage-import-deleted": "Verwyderde boodskap $1",
+ "translate-manage-action-import": "Importeer",
+ "translate-manage-action-conflict": "Importeer en merk as \"fuzzy\"",
+ "translate-manage-action-ignore": "Ignoreer",
+ "translate-manage-action-fuzzy": "Importeer en merk vertalings as \"fuzzy\"",
+ "translate-manage-nochanges": "Daar is geen veranderinge in die boodskapdefinisies vir hierdie groep nie.",
+ "translate-manage-nochanges-other": "Daar was geen wysigings vir die taal nie. Gebruik die onderstaande skakel om terug te keer na die groep se detail besonderhede.",
+ "translate-manage-inconsistent": "'n Teenstrydigheid is in die versoek bespeur.\nKontroleer die veranderinge en probeer weer.\nBesonderhede: $1.",
+ "translate-manage-toolong": "Die maksimum verwerkingstyd van $1 {{PLURAL:$1|sekonde|sekondes}} is oorskry.\nDien die opdrag asseblief weer in.",
+ "translate-manage-import-summary": "Besig met die importering van 'n nuwe weergawe vanuit 'n eksterne bron",
+ "translate-manage-conflict-summary": "Besig met die importering van 'n nuwe weergawe vanuit 'n eksterne bron.\nKontroleer die wysiging.",
+ "translate-manage-fuzzy-summary": "Die boodskap se definisie is gewysig",
+ "translate-manage-submit": "Voer uit",
+ "translate-manage-import-ok": "Nuwe weergawe van die bladsy $1 is gelaai.",
+ "translate-manage-import-done": "Klaar!",
+ "importtranslations": "Importeer vertalings",
+ "translate-import-from-local": "Lokale lêer oplaai:",
+ "translate-import-load": "Laai lêer",
+ "translate-import-err-dl-failed": "Kon nie die lêer gaan haal nie: $1",
+ "translate-import-err-ul-failed": "Die oplaai van die lêer was onsuksesvol",
+ "translate-import-err-invalid-title": "Die gespesifiseerde lêernaam <nowiki>$1</nowiki> is ongeldig.",
+ "translate-import-err-no-such-file": "Die lêer <nowiki>$1</nowiki> bestaan nie of is nie na die bediener opgelaai nie.",
+ "translate-import-err-stale-group": "Die boodskapgroep waaraan die lêer behoort bestaan ​​nie.",
+ "translate-import-err-no-headers": "Die lêer bevat nie goed gevormde gettext soos deur die \"Translate\"-uitbreiding vereis word nie.\nDit is nie moontlik om die groep en taal uit die lêer te bepaal nie.",
+ "translate-import-err-warnings": "Die lêer is nie goed gevorm nie.\nMaak seker dat u teksverwerker nie \"msgctxt\"-velde verwyder nie.\nBesonderhede: $1",
+ "translate-js-summary": "Samevatting:",
+ "translate-js-save": "Stoor",
+ "translate-js-next": "Stoor en open die volgende",
+ "translate-js-nonext": "Dit was die laaste boodskap op hierdie bladsy.",
+ "translate-js-skip": "Slaan oor en volgende",
+ "translate-js-save-failed": "Stoor het misluk. Rapporteer asb. hierdie fout.",
+ "translate-js-history": "Vertaalgeskiedenis",
+ "translate-js-support": "Vra 'n vraag",
+ "translate-js-support-title": "Vra vir hulp as daar nie genoeg inligting is om hierdie boodskap korrek te vertaal nie.",
+ "translate-js-support-unsaved-warning": "U het ongestoorde vertalings.",
+ "translate-gs-pos": "Pos.",
+ "translate-gs-code": "Kode",
+ "translate-gs-continent": "Kontinent",
+ "translate-gs-speakers": "Sprekers",
+ "translate-gs-score": "Punte",
+ "translate-gs-multiple": "Meerdere",
+ "translate-gs-count": "Aantal",
+ "translate-gs-total": "Totaal",
+ "translate-gs-avgscore": "Gem. punte",
+ "translate-documentation-language": "Boodskapbeskrywing",
+ "translate-searchprofile": "Vertalings",
+ "translate-searchprofile-tooltip": "Soek in alle vertalings",
+ "translate-search-languagefilter": "Filter deur taal:",
+ "translate-search-nofilter": "Geen filter",
+ "translate-messagereview-submit": "Aanvaar",
+ "translate-messagereview-progress": "Besig om te aanvaar...",
+ "translate-messagereview-failure": "Besig om te aanvaar... Gefaal: $1",
+ "translate-messagereview-done": "Aanvaar",
+ "translate-messagereview-reviews": "Aanvaar deur {{PLURAL:$1|'n gebruiker|$1 gebruikers}}",
+ "translate-messagereview-reviewswithyou": "Aanvaar deur {{PLURAL:$1|u|$1 gebruikers, insluitende uself}}",
+ "api-error-invalidrevision": "Die vertaling is nie gevind nie.",
+ "api-error-unknownmessage": "Die boodskap is nie gevind nie.",
+ "api-error-fuzzymessage": "Die vertaling is gemerk 'n fuzzy",
+ "api-error-owntranslation": "Jy kan nie jou eie vertalings aanvaar",
+ "translate-messagereview-no-fuzzy": "Fuzzy vertalings kan nie aanvaar word nie.",
+ "translate-messagereview-no-own": "Jy kan nie jou eie vertalings aanvaar.",
+ "translate-messagereview-doit": "Aanvaar hierdie vertaling as 'n korrekte vertaling.",
+ "log-name-translationreview": "Vertaling review log",
+ "log-description-translationreview": "Logboek met alle kontroles van vertalings en boodskapgroepe.",
+ "logentry-translationreview-message": "$1 {{GENDER:$2|het}} die vertaling $3 aanvaar",
+ "logentry-translationreview-group": "$1 {{GENDER:$2|het}} die status van vertalings in die \"$4\" van $3 gewysig van \"$6\" na \"$7\"",
+ "group-translate-sandboxed": "Aspirant vertalers",
+ "group-translate-sandboxed-member": "{{GENDER:$1|aspirant vertaler}}",
+ "translate-workflow-state-": "(nie gesetel)",
+ "translate-workflowstatus": "Status: $1",
+ "translate-workflow-set-do": "Stel",
+ "translate-workflow-set-doing": "Besig om te stel...",
+ "translate-workflow-set-done": "Gestel!",
+ "translate-workflow-set-error-alreadyset": "De opgegewe status is identies aan die huidige status.",
+ "translate-stats-workflow": "Status",
+ "translate-dynagroup-recent-label": "onlangse vertalings",
+ "translate-dynagroup-additions-label": "Onlangse toevoegings",
+ "translate-dynagroup-additions-desc": "Hierdie boodskapgroep wys nuwe en gewysigde boodskappe:",
+ "translate-dynagroup-by": "Vertalings gemaak deur {{GENDER:$1|$1}}",
+ "translate-dynagroup-byc": "Vertalings gemaak deur {{GENDER:$1|$1}} ($2)",
+ "translate-dynagroup-last": "Laaste wysiging deur {{GENDER:$1|$1}}",
+ "translate-dynagroup-lastc": "Laaste wysiging deur {{GENDER:$1|$1}} ($2)",
+ "translate-gethelp": "Hulp",
+ "translate-msggroupselector-projects": "Boodskapgroep",
+ "translate-msggroupselector-search-placeholder": "Soek groepe",
+ "translate-msggroupselector-search-all": "Alle",
+ "translate-msggroupselector-search-recent": "Onlangs",
+ "translate-msggroupselector-view-subprojects": "$1 {{PLURAL:$1|subgroep|subgroepe}}",
+ "tux-languageselector": "Vertaal na",
+ "tux-tab-all": "Alle",
+ "tux-tab-untranslated": "Onvertaald",
+ "tux-tab-outdated": "Verouderd",
+ "tux-tab-translated": "Vertaal",
+ "tux-tab-unproofread": "Ongekontroleerd",
+ "tux-edit": "Wysig",
+ "tux-status-optional": "Opsioneel",
+ "tux-status-fuzzy": "Verouderd",
+ "tux-status-proofread": "Gekontroleerd",
+ "tux-status-translated": "Vertaal",
+ "tux-status-saving": "Stoor...",
+ "tux-status-unsaved": "Ongestoor",
+ "tux-editor-placeholder": "U vertaling",
+ "tux-editor-paste-original-button-label": "Bronteks invoeg",
+ "tux-editor-discard-changes-button-label": "Kanselleer veranderings",
+ "tux-editor-save-button-label": "Stoor vertaling",
+ "tux-editor-skip-button-label": "Slaan oor na volgende",
+ "tux-editor-cancel-button-label": "Kanselleer",
+ "tux-editor-confirm-button-label": "Bevestig vertaling",
+ "tux-editor-shortcut-info": "Druk \"$1\" om te stoor of \"$2\" om na die volgende boodskap te gaan",
+ "tux-editor-edit-desc": "Wysig beskrywing",
+ "tux-editor-add-desc": "Voeg beskrywing by",
+ "tux-editor-suggestions-title": "Voorstelle",
+ "tux-editor-in-other-languages": "In ander tale",
+ "tux-editor-need-more-help": "Meer hulp nodig?",
+ "tux-editor-ask-help": "Vra vir meer inligting",
+ "tux-editor-tm-match": "$1% ooreenkoms",
+ "tux-warnings-more": "{{PLURAL:$1|$1 meer}}",
+ "tux-warnings-hide": "versteek",
+ "tux-editor-save-failed": "Die stoor van die vertaling het gefaal: $1",
+ "tux-editor-n-uses": "{{PLURAL:$1|Een|$1}} keer gebruik",
+ "tux-editor-message-desc-more": "Wys meer",
+ "tux-editor-message-desc-less": "Wys minder",
+ "tux-editor-clear-translated": "Versteek vertalings",
+ "tux-editor-proofreading-mode": "Proeflees",
+ "tux-editor-translate-mode": "Lys",
+ "tux-editor-proofreading-hide-own-translations": "Versteek u vertalings",
+ "tux-editor-proofreading-show-own-translations": "Wys u vertalings",
+ "tux-proofread-action-tooltip": "Aanvaar vertaling",
+ "tux-proofread-edit-label": "Wysig",
+ "tux-editor-page-mode": "Bladsy",
+ "tux-editor-outdated-warning": "Die vertaling moet moontlik bygewerk word.",
+ "tux-editor-outdated-warning-diff-link": "Wys verskille",
+ "tux-editor-doc-editor-placeholder": "Boodskapbeskrywing",
+ "tux-editor-doc-editor-save": "Stoor dokumentatsie",
+ "tux-editor-doc-editor-cancel": "Kanselleer",
+ "tux-messagetable-more-messages": "Nog {{PLURAL:$1|een boodskap|$1 boodskappe}}",
+ "tux-messagetable-loading-messages": "Besig met laai van {{PLURAL:$1|boodskap|boodskappe}}...",
+ "tux-message-filter-placeholder": "Filter lys",
+ "tux-message-filter-result": "{{PLURAL:$1|Een resultaat|$1 resultate}} gevind vir \"$2\"",
+ "tux-message-filter-advanced-button": "Uitgebreide soektog",
+ "tux-message-filter-optional-messages-label": "Opsionele boodskappe",
+ "tux-proofread-translated-by-self": "Deur u vertaal",
+ "tux-empty-list-all": "Die boodskapgroep is leeg",
+ "tux-empty-list-all-guide": "Kies 'n ander boodskapgroep om te vertaal",
+ "tux-translate-page-no-such-group": "'''Die opgegewe groep bestaan nie.''' Kies 'n ander boodskapgroep.",
+ "tux-empty-list-translated": "Geen vertaalde boodskappe nie",
+ "tux-empty-list-translated-guide": "U kan help vertaal",
+ "tux-empty-list-translated-action": "Vertaal",
+ "tux-empty-no-messages-to-display": "Daar is geen boodskappe om te wys nie.",
+ "tux-empty-there-are-optional": "Daar is opsionele boodskappe wat nie gelys is nie",
+ "tux-empty-show-optional-messages": "Wys opsionele boodskappe",
+ "tux-empty-no-outdated-messages": "Geen verouderde boodskappe nie",
+ "tux-empty-nothing-to-proofread": "Daar is niks om te proeflees nie",
+ "tux-empty-you-can-help-providing": "U kan met die vertaling help",
+ "tux-empty-nothing-new-to-proofread": "Daar is niks nuuts om te proeflees nie",
+ "tux-empty-you-can-review-already-proofread": "U kan die vertalings wat ander gebruikers geproeflees het kontroleer.",
+ "tux-empty-list-other": "Niks om te vertaal nie",
+ "tux-empty-list-other-action": "Proeflees vertalings",
+ "tux-empty-list-other-link": "Wys alle boodskappe",
+ "tux-editor-close-tooltip": "Sluit",
+ "tux-editor-expand-tooltip": "Vou oop",
+ "tux-editor-collapse-tooltip": "Vou toe",
+ "tux-editor-message-tools-history": "Geskiedenis",
+ "tux-editor-message-tools-translations": "Alle vertalings",
+ "tux-editor-loading": "Besig om te laai...",
+ "translate-search-more-languages-info": "Nog $1 {{PLURAL:$1|taal|tale}}",
+ "translate-statsbar-tooltip": "$1% vertaal, $2% geproeflees",
+ "translate-statsbar-tooltip-with-fuzzy": "$1% vertaal, $2% geproeflees, $3% verouderd",
+ "translate-search-more-groups-info": "nog $1 groep{{PLURAL:$1||e}}"
+}
diff --git a/MLEB/Translate/i18n/core/aln.json b/MLEB/Translate/i18n/core/aln.json
new file mode 100644
index 00000000..1ec63243
--- /dev/null
+++ b/MLEB/Translate/i18n/core/aln.json
@@ -0,0 +1,62 @@
+{
+ "@metadata": {
+ "authors": [
+ "Mdupont"
+ ]
+ },
+ "translate-page-no-such-language": "Gjuha e specifikuara ishte i pavlefshëm.",
+ "translate-page-no-such-group": "Grupi specifikuara ishte i pavlefshëm.",
+ "translate-page-disabled": "Përkthime të kësaj gjuhe në këtë grup kanë qenë të paaftë. Reason:<em>$1</em>",
+ "translate-page-settings-legend": "Paneli i punëve",
+ "translate-page-group": "Grup",
+ "translate-page-language": "Gjuhë",
+ "translate-page-limit": "Limit",
+ "translate-page-limit-option": "$1 {{PLURAL:$1|mesazh|mesazhe}} për faqe",
+ "translate-submit": "Lëshoj",
+ "translate-page-navigation-legend": "Navigation",
+ "translate-page-showing": "Duke treguar mesazhe nga $1 tek $2 prej $3.",
+ "translate-page-showing-all": "Showing $1 {{PLURAL:$1|mesazh|mesazhe}}.",
+ "translate-page-showing-none": "Nuk ka mesazhe për të treguar.",
+ "translate-next": "Faqja tjeter",
+ "translate-prev": "Faqja e mëparshme",
+ "translate-page-description-legend": "Informata për grupin e",
+ "translate-page-edit": "redaktoj",
+ "translate-ext-url": "<hr /> Website: $1",
+ "translate-optional": "(Optional)",
+ "translate-ignored": "(Injorohen)",
+ "translate-edit-definition": "përkufizim Mesazh",
+ "translate-edit-contribute": "kontribuoj",
+ "translate-edit-no-information": "''Ky mesazh nuk ka asnjë dokumentacion. Nëse ju e dini se ku apo se si ky mesazh është përdorur, ju mund të ndihmoni përkthyes të tjerë duke dokumentacionin në këtë mesazh.''",
+ "translate-edit-information": "Informacion rreth mesazh \"$2\" ($1)",
+ "translate-edit-in-other-languages": "Mesazhi \"$1\" në gjuhë të tjera",
+ "translate-edit-committed": "përkthimin e tanishme në softuer",
+ "translate-edit-warnings": "Paralajmërimet për përkthime të plota",
+ "translate-edit-tmsugs": "Sugjerime nga memorie përkthimi",
+ "translate-edit-tmmatch": "ndeshje $1%",
+ "translate-manage-import-diff": "Mesazhi $1 | Veprimi: $2",
+ "translate-manage-import-new": "mesazh i ri $1",
+ "translate-manage-import-deleted": "Deleted mesazh $1",
+ "translate-manage-action-import": "Import",
+ "translate-manage-action-conflict": "Import dhe fuzzy",
+ "translate-manage-action-ignore": "Shpërfill",
+ "translate-manage-action-fuzzy": "Import dhe fuzzy përkthime",
+ "translate-manage-nochanges": "Nuk ka ndryshime në përkufizimet mesazh për këtë grup.",
+ "translate-manage-nochanges-other": "Nuk ka pasur ndryshime për këtë gjuhë. Përdorni lidhjen më poshtë për të parë detajet e kthimit të grupit.",
+ "translate-manage-inconsistent": "mospërputhje zbuluar në kërkesë. Ju lutem kontrolloni për ndryshime dhe të provoni përsëri. Details: $1.",
+ "translate-manage-toolong": "Përpunimit kohë maksimale prej $1 {{PLURAL:$1|sekonda|dytë}} tejkalohen. Ju lutemi të rikthejë formën për të vazhduar të përpunimit.",
+ "translate-manage-import-summary": "Importimi i një version të ri nga burimet e jashtme",
+ "translate-manage-conflict-summary": "Importimi i një version të ri nga burimi i jashtëm. Ju lutem kontrolloni.",
+ "translate-manage-fuzzy-summary": "Përkufizimi ka ndryshuar",
+ "translate-manage-submit": "Kryej",
+ "translate-manage-intro-other": "Më poshtë është lista e ndryshimeve të përkthimit në gjuhën e $1. Ju lutemi të shqyrtuar ndryshimet dhe të zgjidhni një veprim që ju doni të bëni për çdo përkthim. Nëse ju vendosni të injorojë ndryshime, ata do të kapërcehet në eksportin e ardhshme.",
+ "translate-manage-import-ok": "version i importuar i ri i faqes $1.",
+ "translate-manage-import-done": "Të gjitha të bërë!",
+ "importtranslations": "Përkthime Import",
+ "translate-import-from-local": "upload lokale file:",
+ "translate-import-load": "Ngarko foto",
+ "translate-import-err-dl-failed": "Në pamundësi për të shkoj të marr file: $1",
+ "translate-import-err-ul-failed": "File upload nuk ishte i suksesshëm",
+ "translate-import-err-invalid-title": "Me kusht që emri i file <nowiki> $1 </nowiki> ishte e pavlefshme.",
+ "translate-import-err-no-such-file": "Skedar <nowiki> $1 </nowiki> nuk ekziston ose nuk ka qenë i ngarkuar në nivel lokal.",
+ "translate-import-err-no-headers": "File nuk është formuar edhe një fotografi gettext në extension format Translate: Në pamundësi për të përcaktuar grupin e gjuhës nga headers file."
+}
diff --git a/MLEB/Translate/i18n/core/am.json b/MLEB/Translate/i18n/core/am.json
new file mode 100644
index 00000000..af070a58
--- /dev/null
+++ b/MLEB/Translate/i18n/core/am.json
@@ -0,0 +1,27 @@
+{
+ "@metadata": {
+ "authors": [
+ "Codex Sinaiticus",
+ "Elfalem"
+ ]
+ },
+ "translate": "ማስተርጐሚያ",
+ "translate-page-settings-legend": "ምርጫዎች",
+ "translate-page-group": "ስብስባ",
+ "translate-page-language": "ቋንቋ",
+ "translate-page-limit": "ውሳኔ",
+ "translate-page-limit-option": "$1 {{PLURAL:$1|መልዕክት|መልዕክት}} በየገጹ",
+ "translate-submit": "ይታይ",
+ "translate-page-showing-all": "$1 {{PLURAL:$1|መልዕክት ይታያል|መልዕክቶች ይታያሉ}}።",
+ "translate-next": "የሚቀጥለው ገጽ",
+ "translate-page-edit": "አርም",
+ "translate-edit-definition": "የመልዕክቱ ትርጉም",
+ "translate-edit-contribute": "ለመሣተፍ",
+ "translate-edit-no-information": "''ይኸው መልእክት ምንም መረጃ የለውም።\nመልዕክቱ በየት ወይም እንዴት እንደሚጠቀም ዕውቀት ካለዎ፣ መረጃ በመጨምር ሌሎች አስተርጓሚዎች ሊረዱ ይችላሉ።''",
+ "translate-edit-information": "መረጃ ስለዚሁ መልእክት ($1)",
+ "translate-edit-in-other-languages": "መልዕክቱ በሌሎች ልሳናት",
+ "translate-magic-cm-current": "ያሁኑኑ",
+ "translate-magic-cm-comment": "ማጠቃለያ፦",
+ "translate-sidebar-alltrans": "ይኸው መልዕክት በሌሎች ልሳናት",
+ "translate-language": "ቋንቋ"
+}
diff --git a/MLEB/Translate/i18n/core/an.json b/MLEB/Translate/i18n/core/an.json
new file mode 100644
index 00000000..f348e1d7
--- /dev/null
+++ b/MLEB/Translate/i18n/core/an.json
@@ -0,0 +1,42 @@
+{
+ "@metadata": {
+ "authors": [
+ "Juanpabl"
+ ]
+ },
+ "translate": "Traducir",
+ "translate-page-no-such-language": "O codigo de idioma furnito no ye valido",
+ "translate-page-no-such-group": "A colla de mensaches especificata no ye correuta.",
+ "translate-page-settings-legend": "Achustes",
+ "translate-page-group": "Colla",
+ "translate-page-language": "Luenga",
+ "translate-page-limit": "Limite",
+ "translate-page-limit-option": "$1 {{PLURAL:$1|mensache|mensaches}} por pachina",
+ "translate-submit": "Ir a escar-los",
+ "translate-page-navigation-legend": "Navego",
+ "translate-page-showing": "Amostrando os mensaches $1 a $2 d'un total de $3.",
+ "translate-page-showing-all": "Amostrando $1 {{PLURAL:$1|mensache|mensaches}}.",
+ "translate-page-showing-none": "No bi ha garra mensache ta amostrar.",
+ "translate-next": "Pachina siguient",
+ "translate-prev": "Pachina anterior",
+ "translate-page-description-legend": "Información sobre a colla de mensaches",
+ "translate-page-edit": "editar",
+ "translate-optional": "(opcional)",
+ "translate-ignored": "(no considerato)",
+ "translate-magic-pagename": "Traducción ixamplata de MediaWiki",
+ "translate-magic-help": "Puet traducir os \"alias\" d'as pachinas especials, as parolas machicas, y os espacios de nombres.\n\nAs pachinas especials y as parolas machicas pueden tener multiples traduccions. As traducción s'han de deseparar por una coma (,).\nOs espacios de nombres no pueden tener soque una traducción.\n\nIn as traduccions d'espacios de nombres <code>$1 talk</code> ye especial. <code>$1</code> ye escambiata por o nombre d'o sitio (por exemplo <code>{{ns:project_talk}}</code>). Si no ye posible en a suya luenga formar una esprisión correcta sin cambiar o nombre d'o sitio, contacte con un programador.\n\nHa de fer parte d'a colla de traductors ta poder alzar os cambeos. Ístos no quedan rechistratos dica que no se puncha en o botón \"Alzar pachina\" que ye en o cobaixo d'a pachina.",
+ "translate-magic-submit": "Ir a escar",
+ "translate-magic-cm-export": "Exportar",
+ "translate-magic-cm-to-be": "Esdeviene",
+ "translate-magic-cm-current": "Actual",
+ "translate-magic-cm-original": "Orichinal",
+ "translate-magic-cm-comment": "Comentario:",
+ "translate-magic-cm-save": "Alzar",
+ "translate-magic-cm-updatedusing": "Esviellato usando [[Special:AdvancedTranslate|{{int:Translate-magic-pagename}}]]",
+ "translate-magic-cm-savefailed": "No se podió alzar a pachina",
+ "translate-magic-special": "Alias de pachinas especials",
+ "translate-magic-words": "Parolas machicas",
+ "translate-magic-namespace": "Espacios de nombres",
+ "translate-translations-fieldset-title": "Mensache",
+ "translate-save": "Alzar($1)"
+}
diff --git a/MLEB/Translate/i18n/core/ar.json b/MLEB/Translate/i18n/core/ar.json
new file mode 100644
index 00000000..ae225cde
--- /dev/null
+++ b/MLEB/Translate/i18n/core/ar.json
@@ -0,0 +1,252 @@
+{
+ "@metadata": {
+ "authors": [
+ "Abanima",
+ "Alnokta",
+ "Basharh",
+ "Meno25",
+ "Mido",
+ "OsamaK",
+ "Ouda",
+ "ترجمان05",
+ "روخو",
+ "زكريا",
+ "لطرش أحمد الهاشمي",
+ "لطرش احمد الهاشمي",
+ "Gagnabil"
+ ]
+ },
+ "translate": "ترجمة",
+ "translate-desc": "[[Special:Translate|صفحة خاصة]] لترجمة الميدياويكي وما بعده",
+ "translate-taskui-view": "أظهر كل الرسائل",
+ "translate-taskui-untranslated": "أظهر الرسائل غير المترجمة",
+ "translate-taskui-optional": "أظهر الرسائل الاختيارية",
+ "translate-taskui-reviewall": "مراجعة كل الترجمات",
+ "translate-taction-translate": "ترجم",
+ "translate-taction-proofread": "دقّق",
+ "translate-taction-lstats": "إحصاءات اللغة",
+ "translate-taction-mstats": "إحصاءات مجموعة الرسائل",
+ "translate-taction-export": "صدّر",
+ "translate-page-no-such-language": "لم تكن اللغة المحددة صحيحة.",
+ "translate-page-no-such-group": "المجموعة المحددة غير صحيحة.",
+ "translate-page-disabled": "الترجمات إلى هذه اللغة في هذه المجموعة تم تعطيلها. السبب:\n\n<em>$1</em>",
+ "translate-page-settings-legend": "الإعدادات",
+ "translate-page-group": "المجموعة",
+ "translate-page-language": "اللغة",
+ "translate-page-limit": "الحد",
+ "translate-page-limit-option": "{{PLURAL:$1||رسالة واحدة|رسالتان|$1 رسالات|$1 رسالة}} للصفحة",
+ "translate-submit": "اجلب",
+ "translate-page-navigation-legend": "الإبحار",
+ "translate-page-showing": "عرض الرسائل من $1 إلى $2 ل $3.",
+ "translate-page-showing-all": "عرض {{PLURAL:$1||رسالة واحدة|رسالتين|$1 رسائل|$1 رسالة}}.",
+ "translate-page-showing-none": "لا رسائل للعرض.",
+ "translate-next": "الصفحة التالية",
+ "translate-prev": "الصفحة السابقة",
+ "translate-page-description-legend": "معلومات حول المجموعة",
+ "translate-page-description-hasoptional": "مجموعة الرسائل هذه تحتوي على رسائل اختيارية.\n\nتترجم الرسائل الاختيارية عندما تكون لغتك بحاجة الى متطلبات خاصة\n\nمثل عدم استخدام مسافات أو ترجمة اسماء فريدة. $1",
+ "translate-page-description-hasoptional-open": "إظهار الرسائل الاختيارية.",
+ "translate-page-edit": "عدل",
+ "translate-ext-url": "<hr />موقع الوب: $1",
+ "translate-optional": "(اختياري)",
+ "translate-ignored": "(متجاهل)",
+ "translate-edit-title": "عدل \"$1\"",
+ "translate-edit-definition": "تعريف الرسالة",
+ "translate-edit-translation": "الترجمة",
+ "translate-edit-contribute": "ساهم",
+ "translate-edit-no-information": "''ليس لهذه الرسالة توثيق.\nإذا كنت تعرف أين أو كيف يتم استخدام هذه الرسالة، فيمكنك مساعدة المترجمين الآخرين بإضافة توثيق إلى هذه الرسالة.''",
+ "translate-edit-information": "معلومات عن الرسالة ($1)",
+ "translate-edit-in-other-languages": "الرسالة بلغات أخرى",
+ "translate-edit-committed": "الترجمة الحالية في البرنامج",
+ "translate-edit-warnings": "التحذيرات حول الترجمات غير المكتملة",
+ "translate-edit-tmsugs": "مقترحات من ذاكرة الترجمة",
+ "translate-edit-tmmatch": "$1% مطابقة",
+ "translate-use-suggestion": "استبدال الترجمة الحالية بهذا الاقتراح.",
+ "translate-magic-pagename": "ترجمة ميدياويكي الممتدة",
+ "translate-magic-help": "يمكنك ترجمة أسماء الصفحات الخاصة، والكلمات السحرية، وأسماء النطاقات.\n\nأسماء الصفحات الخاصة والكلمات السحرية يمكن أن يكون لها ترجمات متعددة.\nالترجمات تفصل بواسطة فاصلة (,).\nأسماء النطاقات يمكن أن يكون لها ترجمة واحدة فقط.\n\nفي ترجمات النطاقات <code>$1 talk</code> خاص. <code>$1</code> يتم استبدالها باسم الموقع (على سبيل المثال <code>{{ns:project_talk}}</code>).\nلو أنه من غير الممكن في لغتك صياغة تعبير صحيح بدون تغيير اسم الموقع، من فضلك اتصل بمطور.\n\nتحتاج إلى أن تكون في مجموعة المترجمين لحفظ التغييرات.\nالتغييرات لن يتم حفظها حتى تضغط زر الحفظ بالأسفل.",
+ "translate-magic-module": "مكونة:",
+ "translate-magic-submit": "اجلب",
+ "translate-magic-cm-export": "صدّر",
+ "translate-magic-nothing-to-export": "لا يوجد شيء يمكن تصديره.",
+ "translate-magic-cm-to-be": "لتصبح",
+ "translate-magic-cm-current": "حالي",
+ "translate-magic-cm-original": "الأصلي",
+ "translate-magic-cm-comment": "تعليق:",
+ "translate-magic-cm-save": "احفظ",
+ "translate-magic-cm-updatedusing": "حدث باستخدام [[Special:AdvancedTranslate|{{int:Translate-magic-pagename}}]]",
+ "translate-magic-cm-savefailed": "الحفظ فشل",
+ "translate-magic-special": "أسماء الصفحات الخاصة",
+ "translate-magic-words": "كلمات سحرية",
+ "translate-magic-namespace": "أسماء النطاقات",
+ "translate-magic-notsaved": "تعديلك لم يُحفظ!",
+ "translate-magic-errors": "من فضلك أصلح {{PLURAL:$1||الخطأ|الخطأين|الأخطاء}} التالية في الترجمات:",
+ "translate-magic-saved": "حُفظت تعديلاتك بنجاح.",
+ "translate-checks-parameters": "{{PLURAL:$2||المحدد التالي غير مستخدم|المحددان التاليان غير مستخدمان|المحددات التالية غير مستخدمة}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-parameters-unknown": "{{PLURAL:$2||المحدد التالي غير معروف|المحددان التاليان غير معروفان|المحددات التالية غير معروفة}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-balance": "يوجد عدد غير زوجي من {{PLURAL:$2|الأقواس}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links": "{{PLURAL:$2||الوصلة التالية|الوصلتان التاليتان|ال$2 وصلات التالية|ال$2 وصلة التالية}} بها مشاكل:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links-missing": "{{PLURAL:$2||الوصلة التالية مفقودة|الوصلتان التاليتان مفقودتان|ال$2 وصلات التالية مفقودة|ال$2 وصلة التالية مفقودة}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-xhtml": "من فضلك استبدل {{PLURAL:$2||الوسم التالي|الوسمين التاليين|الوسوم التالية}} بالوسوم الصحيحة:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-plural": "التعريف يستخدم <nowiki>{{PLURAL:}}</nowiki> لكن الترجمة لا.",
+ "translate-checks-pagename": "النطاق تغير من التعريف",
+ "translate-checks-format": "هذه الترجمة لا تتبع التعريف أو لديها صياغة خاطئة: $1",
+ "translate-checks-escape": "عمليات الهروب التالية ربما تكون حدثت بالصدفة: <strong>$1</strong>",
+ "translate-checks-fudforum-syntax": "استخدم <nowiki>$1</nowiki> بدلًا من <nowiki>$2</nowiki> في هذا المشروع.",
+ "translate-pref-nonewsletter": "لا ترسل إليّ إخطارات بريدية بالبريد الإلكتروني",
+ "translate-pref-editassistlang": "لغات المساعد:",
+ "prefs-translate": "خيارات الترجمة",
+ "translate-pref-editassistlang-help": "قائمة برموز اللغات مفصولة بفواصل.\nتُعرض ترجمة الرسالة بهذه اللغات عندما تترجم.\nقائمة اللغات المبدئية تعتمد على لغتك.",
+ "translate-pref-editassistlang-bad": "رمز لغة غير صالح في القائمة:\n<nowiki>$1</nowiki>.",
+ "right-translate": "التعديل باستخدام واجهة الترجمة",
+ "right-translate-manage": "إدارة مجموعات الترجمة",
+ "right-translate-import": "استيراد الترجمات من الخارج",
+ "right-translate-messagereview": "مراجعة الترجمات",
+ "translate-rc-translation-filter": "رشّح الترجمات:",
+ "translate-rc-translation-filter-no": "لا تفعل شيئا",
+ "translate-rc-translation-filter-only": "اعرض الترجمات فقط",
+ "translate-rc-translation-filter-filter": "أزل الترجمات",
+ "translate-rc-translation-filter-site": "التغييرات لرسائل الموقع فقط",
+ "translationstats": "إحصاءات الترجمة",
+ "translate-stats-edits": "التعديلات",
+ "translate-stats-users": "المترجمون",
+ "translate-stats-registrations": "التسجيلات",
+ "translate-statsf-intro": "يمكنك توليد إحصاءات بسيطة بهذه الاستمارة. كل القيم لها حدود عليا وسفلى.",
+ "translate-statsf-options": "خيارات الرسم",
+ "translate-statsf-width": "العرض بالبكسل:",
+ "translate-statsf-height": "الارتفاع بالبكسل:",
+ "translate-statsf-days": "فترة زمنية باليوم:",
+ "translate-statsf-start": "تاريخ البداية:",
+ "translate-statsf-scale": "التدريج:",
+ "translate-statsf-scale-months": "أشهر",
+ "translate-statsf-scale-weeks": "أسابيع",
+ "translate-statsf-scale-days": "أيام",
+ "translate-statsf-scale-hours": "ساعات",
+ "translate-statsf-count": "قياس:",
+ "translate-statsf-count-edits": "عدد التعديلات",
+ "translate-statsf-count-users": "المترجمون النشطون",
+ "translate-statsf-count-registrations": "مستخدمون جدد",
+ "translate-statsf-language": "قائمة بأكواد اللغات مفصولة بفاصلة:",
+ "translate-statsf-group": "قائمة بأكواد المجموعات مفصولة بفاصلة:",
+ "translate-statsf-submit": "عرض مسبق",
+ "translate-tag-category": "صفحات قابلة للترجمة",
+ "translate-tag-page-desc": "ترجمة صفحة الويكي [[$2|$1]].",
+ "translate-sidebar-alltrans": "بلغات أخرى",
+ "translations": "كل الترجمات",
+ "translations-summary": "أدخل اسم رسالة أسفله لعرض كل الترجمات المتوفرة.",
+ "translate-translations-no-message": "\"$1\" ليست رسالة قابلة للترجمة",
+ "translate-translations-none": "لا يوجد ترجمات ل\"$1\"",
+ "translate-translations-count": "عثر {{PLURAL:$1|one translation|$1 translations}}.",
+ "translate-translations-fieldset-title": "الرسالة",
+ "translate-translations-messagename": "الاسم:",
+ "translate-translations-project": "المشروع:",
+ "translate-translations-including-no-param": "من فضلك حدد مفتاح رسالة صحيح في معامل الصفحة الفرعية",
+ "translate-translations-history-short": "ت",
+ "languagestats": "إحصاءات اللغة",
+ "languagestats-summary": "هذه الصفحة تعرض إحصاءات الترجمة لكل مجموعات الرسائل للغة.",
+ "languagestats-stats-for": "إحصاءات الترجمة للغة $1 ($2).",
+ "languagestats-recenttranslations": "ترجمات حديثة",
+ "translate-langstats-incomplete": "بعض الإحصاءات الموجودة على هذه الصفحة غير مكتملة. يرجى إعادة تحميل الصفحة للحصول على مزيد من الإحصاءات.",
+ "translate-langstats-expand": "وسع",
+ "translate-langstats-collapse": "اطو",
+ "translate-langstats-expandall": "وسّع الكل",
+ "translate-langstats-collapseall": "اطوِ الكل",
+ "translate-language-code": "رمز اللغة",
+ "translate-language-code-field-name": "رمز اللغة:",
+ "translate-suppress-complete": "تخطَ مجموعات الرسائل المترجمة كليا",
+ "translate-ls-noempty": "تخطَ مجموعات الرسائل الغير مترجمة كليا",
+ "translate-language": "اللغة",
+ "translate-total": "الرسائل",
+ "translate-untranslated": "غير المترجمة",
+ "translate-percentage-complete": "المكتمل",
+ "translate-percentage-fuzzy": "غير المحدث",
+ "translate-languagestats-overall": "جميع مجموعات الرسالة معا",
+ "translate-ls-submit": "أظهر الإحصاءات",
+ "translate-ls-column-group": "رسالة المجموعة",
+ "translate-mgs-fieldset": "عرض التفضيلات",
+ "translate-mgs-group": "رسالة المجموعة:",
+ "translate-mgs-nocomplete": "لا تعرض اللغات التي أنجزت ترجمتها",
+ "translate-mgs-noempty": "لا تعرض اللغات التي لم تنجز ترجمتها",
+ "translate-mgs-submit": "أظهر الإحصاءات",
+ "translate-mgs-column-language": "اللغة",
+ "translate-mgs-totals": "كل اللغات معا",
+ "translate-mgs-invalid-group": "المجموعة المحددة $1 موجود على.",
+ "translate-mgs-nothing": "لا شيء لاظهار الاحصاءات المطلوبة.",
+ "supportedlanguages": "اللغات المدعومة",
+ "supportedlanguages-recenttranslations": "الترجمات الأخيرة",
+ "translate-save": "احفظ ($1)",
+ "translate-jssti-add": "أضف إلى القائمة",
+ "translate-manage-import-diff": "الرسالة $1 | الإجراءات: $2",
+ "translate-manage-import-new": "رسالة جديدة $1",
+ "translate-manage-import-deleted": "رسالة محذوفة $1",
+ "translate-manage-action-import": "استورد",
+ "translate-manage-action-conflict": "استورد وضبّب",
+ "translate-manage-action-ignore": "تجاهل",
+ "translate-manage-action-fuzzy": "استورد وضبّب الترجمات",
+ "translate-manage-nochanges": "لا توجد أي تغييرات في تعاريف رسائل هذه المجموعة.",
+ "translate-manage-nochanges-other": "لا توجد أي تغييرات على هذه اللغة.\nاستخدام الوصلة أدناه للرجوع إلى عرض تفاصيل المجموعة.",
+ "translate-manage-inconsistent": "كشف عدم توافق في الطلب.\nمن فضلك تحقق من التغييرات وحاول مجددا.\nالتفاصيل: $1.",
+ "translate-manage-toolong": "زمن المعالجة الأقصى ل$1 {{PLURAL:$1|second|seconds}} تم تجاوزه.\nمن فضلك أعد تنفيذ التموذج لإكمال المعالجة.",
+ "translate-manage-import-summary": "استيراد نسخة جديدة من مصدر خارجي",
+ "translate-manage-conflict-summary": "استيراد نسخة جديدة من مصدر خارجي.\nمن فضلك تحقق.",
+ "translate-manage-fuzzy-summary": "التعريف تغير",
+ "translate-manage-submit": "نفّذ",
+ "translate-manage-intro-other": "بالأسفل قائمة بتغييرات الترجمة في لغة $1.\nمن فضلك راجع التغييرات واختر فعلا تريد فعله لكل ترجمة.\nلو اخترت تجاهل التغييرات، ستتم الكتابة عليها عند التصدير التالي.",
+ "translate-manage-import-ok": "استوردت نسخة جديدة من الصفحة $1.",
+ "translate-manage-import-done": "استيراد كامل!",
+ "importtranslations": "استورد ترجمات",
+ "translate-import-from-local": "رفع ملف محلي:",
+ "translate-import-load": "حمّل الملف",
+ "translate-import-err-dl-failed": "تعذّر جلب الملف:\n$1",
+ "translate-import-err-ul-failed": "لم ينجح رفع الملف",
+ "translate-import-err-invalid-title": "اسم الملف المعطى <nowiki>$1</nowiki> غير صالح.",
+ "translate-import-err-no-such-file": "الملف <nowiki>$1</nowiki> غير موجود أو لم يرفع محليًا.",
+ "translate-import-err-stale-group": "مجموعة الرسائل المنتمية إلى هذا الملف غير موجود.",
+ "translate-import-err-no-headers": "الملف ليس ملف Gettext صحيح بصيغة امتداد الترجمة:\nغير قادر على تحديد المجموعة واللغة من مقدمة الملف.",
+ "translate-import-err-warnings": "الملف ليس مكونا بشكل صحيح.\nتأكد من أن محررك لا يزيل حقول msgctxt .\nالتفاصيل: $1",
+ "translate-js-summary": "ملخص:",
+ "translate-js-save": "احفظ",
+ "translate-js-next": "احفظ وافتح التالية",
+ "translate-js-nonext": "كانت هذه آخر رسالة على هذه الصفحة.",
+ "translate-js-skip": "تخطَ إلى التالية",
+ "translate-js-save-failed": "فشل الحفظ. من فضلك بلّغ عن هذا الخطأ.",
+ "translate-js-history": "تاريخ الترجمة",
+ "translate-js-support": "اطرح سؤالا",
+ "translate-js-support-title": "اطلب المساعدة إذا لم تكن لديك معلومات كافية لترجمة هذه الرسالة بشكل صحيح.",
+ "translate-gs-pos": "الترتيب",
+ "translate-gs-code": "الرمز",
+ "translate-gs-continent": "القارة",
+ "translate-gs-speakers": "الناطقون",
+ "translate-gs-score": "الدرجة",
+ "translate-gs-multiple": "عديدة",
+ "translate-gs-count": "العدد",
+ "translate-gs-total": "المجموع",
+ "translate-gs-avgscore": "معدل الدرجات",
+ "translate-documentation-language": "رسالة التوثيق",
+ "translate-searchprofile": "ترجمات",
+ "translate-searchprofile-tooltip": "البحث عن كل الترجمات",
+ "translate-search-languagefilter": "فلترة حسب اللغة",
+ "translate-search-nofilter": "لا فلترة",
+ "translate-messagereview-submit": "قبول",
+ "translate-messagereview-progress": "الموافقة...",
+ "translate-messagereview-failure": "جاري الموافقة... فشل: $1",
+ "translate-messagereview-done": "مقبول",
+ "translate-messagereview-reviews": "قبلها {{PLURAL:$1|مستخدم واحد|$1 مستخدمين}}",
+ "translate-messagereview-reviewswithyou": "قبلها {{PLURAL:$1|مستخدم واحد|$1 مستخدمين}} بمن فيهم أنت",
+ "api-error-invalidrevision": "لم يتم العثور على الترجمة",
+ "api-error-unknownmessage": "لم يتم العثور على الرسالة",
+ "api-error-fuzzymessage": "علمت الترجمة كغامضة",
+ "api-error-owntranslation": "لا يمكنك قبول الترجمات الخاصة بك",
+ "translate-messagereview-no-fuzzy": "الترجمات الغامضة لا يمكن قبولها.",
+ "translate-messagereview-no-own": "لا يجوز لك قبول ترجماتك الشخصية.",
+ "translate-messagereview-doit": "قبول هذه الترجمة بوصفها ترجمة صحيحة.",
+ "log-name-translationreview": "سجل مراجعة الترجمة",
+ "log-description-translationreview": "سجل كل مراجعات الترجمة ورسائل المجموعات.",
+ "logentry-translationreview-message": "$1 {{GENDER:$2|قبلت}} الترجمة $3",
+ "translate-workflow-state-": "(إلغاء المحدد)",
+ "translate-workflowstatus": "الحالة: $1",
+ "translate-workflow-set-do": "وضع",
+ "translate-workflow-set-doing": "إعداد...",
+ "translate-workflow-set-done": "وضع!",
+ "translate-stats-workflow": "الحالة",
+ "translate-gethelp": "مساعدة",
+ "translate-ulsdep-title": "خطأ في الضبط"
+}
diff --git a/MLEB/Translate/i18n/core/arc.json b/MLEB/Translate/i18n/core/arc.json
new file mode 100644
index 00000000..7ad7e646
--- /dev/null
+++ b/MLEB/Translate/i18n/core/arc.json
@@ -0,0 +1,104 @@
+{
+ "@metadata": {
+ "authors": [
+ "Basharh"
+ ]
+ },
+ "translate": "ܬܪܓܡ",
+ "translate-desc": "[[Special:Translate|ܦܐܬܐ ܕܝܠܢܝܬܐ]] ܠܬܘܪܓܡܐ ܕܡܝܕܝܐܘܝܩܝ ܘܒܬܪ ܗܟܢ",
+ "translate-taskui-view": "ܚܘܝ ܟܠ ܐܓܪ̈ܬܐ",
+ "translate-taskui-untranslated": "ܚܘܝ ܐܓܪ̈ܬܐ ܠܐ ܬܘܪ̈ܓܡܐ",
+ "translate-taskui-optional": "ܚܘܝ ܐܓܪ̈ܬܐ ܓܒܝܬ̈ܐ",
+ "translate-taction-translate": "ܬܪܓܡ",
+ "translate-taction-proofread": "ܬܢܝ",
+ "translate-taction-lstats": "ܚܒܝܫܘܬ ܡܢܝܢܐ ܕܠܫܢܐ",
+ "translate-taction-mstats": "ܚܒܝܫܘܬ ܡܢܝܢܐ ܕܟܢܘܫܬܐ ܕܐܓܪ̈ܬܐ",
+ "translate-taction-export": "ܐܦܩ",
+ "translate-page-settings-legend": "ܛܘܝܒ̈ܐ",
+ "translate-page-group": "ܟܢܘܫܬܐ",
+ "translate-page-language": "ܠܫܢܐ",
+ "translate-page-limit": "ܦܣܝܩܐ",
+ "translate-page-limit-option": "$1 {{PLURAL:$1|ܐܓܪܬܐ|ܐܓܪ̈ܬܐ}} ܠܟܠ ܦܐܬܐ",
+ "translate-submit": "ܐܫܟܚ",
+ "translate-page-navigation-legend": "ܐܠܦܪܘܬܐ",
+ "translate-page-showing": "ܚܘܘܝܐ ܕܐܓܪ̈ܬܐ ܡܢ $1 ܥܕܡܐ ܠ $2 ܡܢ $3.",
+ "translate-page-showing-all": "ܚܘܘܝܐ ܕ $1 {{PLURAL:$1|ܐܓܪܬܐ|ܐܓܪ̈ܬܐ}}.",
+ "translate-page-showing-none": "ܠܝܬ ܐܓܪ̈ܬܐ ܠܚܘܘܝܐ.",
+ "translate-next": "ܦܐܬܐ ܕܒܬܪ",
+ "translate-prev": "ܦܐܬܐ ܕܩܕܡ",
+ "translate-page-description-legend": "ܝܕ̈ܥܬܐ ܥܠ ܟܢܘܫܬܐ",
+ "translate-page-edit": "ܫܚܠܦ",
+ "translate-optional": "(ܨܒܝܢܝܐ)",
+ "translate-edit-title": "ܫܚܠܦ \"$1\"",
+ "translate-edit-definition": "ܬܘܚܡܐ ܕܐܓܪܬܐ",
+ "translate-edit-translation": "ܬܘܪܓܡܐ",
+ "translate-edit-contribute": "ܫܘܬܦ",
+ "translate-edit-information": "ܝܕ̈ܥܬܐ ܥܠ ܦܐܬܐ ($1)",
+ "translate-edit-in-other-languages": "ܐܓܪܬܐ ܒܠܫܢ̈ܐ ܐܚܪ̈ܢܐ",
+ "translate-edit-warnings": "ܙܘܗܪ̈ܐ ܥܠ ܬܘܪ̈ܓܡܐ ܠܐ ܓܡܝܪ̈ܐ",
+ "translate-edit-tmsugs": "ܡܚܫܚܬ̈ܐ ܡܢ ܥܘܗܕܢܐ ܕܬܘܪܓܡܐ",
+ "translate-edit-tmmatch": "$1% ܠܚܡܐ",
+ "translate-edit-askpermission": "ܫܩܘܠ ܦܣܣܐ",
+ "translate-magic-pagename": "ܬܘܪܓܡܐ ܕܡܝܕܝܐܘܝܩܝ ܡܬܝܚܬܐ",
+ "translate-magic-submit": "ܒܨܝܐ",
+ "translate-magic-cm-export": "ܐܦܩ",
+ "translate-magic-nothing-to-export": "ܠܝܬ ܡܕܡ ܠܡܦܩܢܘܬܐ.",
+ "translate-magic-cm-to-be": "ܬܗܘܐ",
+ "translate-magic-cm-current": "ܗܫܝܐ",
+ "translate-magic-cm-original": "ܫܪܫܝܐ",
+ "translate-magic-cm-save": "ܠܒܘܟ",
+ "translate-magic-special": "ܫܡܗ̈ܐ ܕܦܐܬܬ̈ܐ ܕ̈ܝܠܢܝܬܐ",
+ "translate-magic-words": "ܡܠ̈ܐ ܚܪ̈ܫܬܐ",
+ "translate-magic-namespace": "ܫܡܗ̈ܐ ܕܚܩܠܬ̈ܐ",
+ "prefs-translate": "ܓܒܝܬ̈ܐ ܕܬܘܪܓܡܐ",
+ "translate-rc-translation-filter-only": "ܚܘܝ ܬܘܪ̈ܓܡܐ ܒܠܚܘܕ",
+ "translationstats": "ܚܒܝܫܘܬ ܡܢܝܢܐ ܕܬܘܪܓܡܐ",
+ "translate-stats-edits": "ܫܘܚܠܦ̈ܐ",
+ "translate-stats-users": "ܬܪ̈ܓܡܢܐ",
+ "translate-statsf-scale-days": "ܝܘܡܬ̈ܐ",
+ "translate-statsf-scale-hours": "ܫܥܬ̈ܐ",
+ "translate-statsf-count-edits": "ܡܢܝܢܐ ܕܫܘܚܠܦ̈ܐ",
+ "translate-statsf-count-users": "ܬܪ̈ܓܡܢܐ ܙܪ̄ܝܙܐ",
+ "translate-statsf-submit": "ܚܝܪܐ ܩܕܡܝܐ",
+ "translate-sidebar-alltrans": "ܒܠܫܢ̈ܐ ܐܚܪ̈ܢܐ",
+ "translations": "ܟܠ ܬܪ̈ܓܡܝܬܐ",
+ "translate-translations-fieldset-title": "ܐܓܪܬܐ",
+ "translate-translations-messagename": "ܫܡܐ",
+ "translate-translations-project": "ܬܪܡܝܬܐ:",
+ "translate-translations-history-short": "ܬ",
+ "languagestats": "ܚܒܝܫܘܬ ܡܢܝܢܐ ܕܠܫܢܐ",
+ "languagestats-summary": "ܦܐܬܐ ܗܕܐ ܬܓܠܚ ܚܒܝܫܘܬ ܡܢܝܢܐ ܕܬܘܪܓܡܐ ܠܟܢܘܫܬܐ ܕܟܠ ܐܓܪ̈ܬܐ ܕܠܫܢܐ.",
+ "languagestats-stats-for": "ܚܒܝܫܘܬ ܡܢܝܢܐ ܕܠܫܢܐ $1 ($2).",
+ "languagestats-recenttranslations": "ܬܘܪ̈ܓܡܐ ܚܕ̈ܬܐ",
+ "translate-langstats-expand": "ܐܪܘܚ",
+ "translate-langstats-collapse": "ܩܡܘܛ",
+ "translate-langstats-expandall": "ܐܪܘܚ ܟܠ",
+ "translate-langstats-collapseall": "ܩܡܘܛ ܟܠ",
+ "translate-language-code": "ܪܡܙܐ ܕܠܫܢܐ",
+ "translate-language-code-field-name": "ܪܡܙܐ ܕܠܫܢܐ:",
+ "translate-language": "ܠܫܢܐ",
+ "translate-total": "ܐܓܪ̈ܬܐ",
+ "translate-untranslated": "ܠܐ ܬܘܪ̈ܓܡܐ",
+ "translate-percentage-complete": "ܓܡܝܪܐ",
+ "translate-percentage-fuzzy": "ܠܐ ܚܘܕܬܐ",
+ "translate-ls-submit": "ܚܘܝ ܚܒܝܫܘܬ ܡܢܝܢܐ",
+ "translate-ls-column-group": "ܟܢܘܫܬܐ ܕܐܓܪ̈ܬܐ",
+ "translate-mgs-pagename": "ܚܒܝܫܘܬ ܡܢܝܢܐ ܕܟܢܘܫܬܐ ܕܐܓܪ̈ܬܐ",
+ "supportedlanguages": "ܠܫܢ̈ܐ ܣܡܝܟ̈ܐ",
+ "translate-save": "ܠܒܘܟ ($1)",
+ "translate-jssti-add": "ܐܘܣܦ ܠܡܟܬܒܘܬܐ",
+ "managemessagegroups": "ܕܒܘܪܝܐ ܕܟܢܘܫܬܐ ܕܐܓܪ̈ܬܐ",
+ "translate-manage-import-new": "ܐܓܪܬܐ ܚܕܬܐ $1",
+ "translate-manage-import-deleted": "ܐܓܪܬܐ ܫܝܦܬܐ $1",
+ "translate-js-summary": "ܦܣܝܩܬ̈ܐ:",
+ "translate-js-save": "ܠܒܘܟ",
+ "translate-js-next": "ܠܒܘܟ ܘܦܬܘܚ ܕܒܬܪܗ",
+ "translate-js-nonext": "ܗܕܐ ܐܝܬܝܗܝ ܗܘܐ ܐܓܪܬܐ ܐܚܪܝܬܐ ܒܦܐܬܐ ܗܕܐ.",
+ "translate-js-skip": "ܫܘܪ ܠܒܬܪܗ",
+ "translate-js-history": "ܬܫܥܝܬܐ ܕܬܘܪܓܡܐ",
+ "translate-js-support": "ܫܐܠ ܫܘܐܠܐ",
+ "translate-js-support-unsaved-warning": "ܐܝܬ ܠܟ ܬܘܪ̈ܓܡܐ ܠܐ ܠܒܝܟ̈ܐ.",
+ "translate-documentation-language": "ܐܓܪܬܐ ܕܐܫܛܪܘܬܐ",
+ "translate-searchprofile": "ܬܘܪ̈ܓܡܐ",
+ "tux-warnings-hide": "ܛܫܝ"
+}
diff --git a/MLEB/Translate/i18n/core/arn.json b/MLEB/Translate/i18n/core/arn.json
new file mode 100644
index 00000000..ac25f692
--- /dev/null
+++ b/MLEB/Translate/i18n/core/arn.json
@@ -0,0 +1,13 @@
+{
+ "@metadata": {
+ "authors": [
+ "Poquil"
+ ]
+ },
+ "translate-page-showing": "adkintun mensajes del $1 al $2 de $3",
+ "translate-page-showing-all": "adkintun $1 {{PLURAL:$1|message|messages}}.",
+ "translate-edit-contribute": "ñma",
+ "translate-magic-cm-original": "kuse",
+ "translate-magic-cm-save": "elkünun",
+ "translate-magic-cm-savefailed": "elkünun weda"
+}
diff --git a/MLEB/Translate/i18n/core/ary.json b/MLEB/Translate/i18n/core/ary.json
new file mode 100644
index 00000000..94b1f0c3
--- /dev/null
+++ b/MLEB/Translate/i18n/core/ary.json
@@ -0,0 +1,9 @@
+{
+ "@metadata": {
+ "authors": [
+ "Enzoreg"
+ ]
+ },
+ "translate-manage-import-new": "Méṣaj jdid $1",
+ "translate-manage-import-deleted": "Méṣaj memḫi $1"
+}
diff --git a/MLEB/Translate/i18n/core/arz.json b/MLEB/Translate/i18n/core/arz.json
new file mode 100644
index 00000000..4cc84a5e
--- /dev/null
+++ b/MLEB/Translate/i18n/core/arz.json
@@ -0,0 +1,161 @@
+{
+ "@metadata": {
+ "authors": [
+ "Ghaly",
+ "Meno25",
+ "Ouda",
+ "Ramsis II"
+ ]
+ },
+ "translate": "ترجمة",
+ "translate-desc": "[[Special:Translate|صفحه خاصة]] لترجمه الميدياويكى وما بعده",
+ "translate-page-no-such-language": "لم تكن اللغه المحدده صحيحه.",
+ "translate-page-no-such-group": "المجموعه المحدده غير صحيحه.",
+ "translate-page-disabled": "الترجمات إلى هذه اللغه فى هذه المجموعه تم تعطيلها. السبب:\n\n<em>$1</em>",
+ "translate-page-settings-legend": "الإعدادات",
+ "translate-page-group": "المجموعة",
+ "translate-page-language": "اللغة",
+ "translate-page-limit": "الحد",
+ "translate-page-limit-option": "{{PLURAL:$1||رساله واحدة|رسالتان|$1 رسالات|$1 رسالة}} للصفحة",
+ "translate-submit": "اجلب",
+ "translate-page-navigation-legend": "الإبحار",
+ "translate-page-showing": "عرض الرسائل من $1 إلى $2 ل $3.",
+ "translate-page-showing-all": "عرض {{PLURAL:$1||رساله واحدة|رسالتين|$1 رسائل|$1 رسالة}}.",
+ "translate-page-showing-none": "لا رسائل للعرض.",
+ "translate-next": "الصفحه التالية",
+ "translate-prev": "الصفحه السابقة",
+ "translate-page-description-legend": "معلومات حول المجموعة",
+ "translate-page-edit": "عدل",
+ "translate-ext-url": "<hr />موقع الوب: $1",
+ "translate-optional": "(اختياري)",
+ "translate-ignored": "(متجاهل)",
+ "translate-edit-definition": "تعريف الرسالة",
+ "translate-edit-contribute": "ساهم",
+ "translate-edit-no-information": "''ليس لهذه الرساله توثيق.\nإذا كنت تعرف أين أو كيف يتم استخدام هذه الرساله، فيمكنك مساعده المترجمين الآخرين بإضافه توثيق إلى هذه الرساله.''",
+ "translate-edit-information": "معلومات حول الرساله \"$2\" ($1)",
+ "translate-edit-in-other-languages": "الرساله \"$1\" بلغات أخرى",
+ "translate-edit-committed": "الترجمه الحاليه فى البرنامج",
+ "translate-edit-warnings": "التحذيرات حول الترجمات غير المكتملة",
+ "translate-edit-tmsugs": "مقترحات من ذاكره الترجمة",
+ "translate-edit-tmmatch": "$1% مطابقة",
+ "translate-magic-pagename": "ترجمه ميدياويكى الممتدة",
+ "translate-magic-help": "يمكنك ترجمه أسماء الصفحات الخاصه، والكلمات السحريه، وأسماء النطاقات.\n\nأسماء الصفحات الخاصه والكلمات السحريه يمكن أن يكون لها ترجمات متعدده.\nالترجمات تفصل بواسطه فاصله (,).\nأسماء النطاقات يمكن أن يكون لها ترجمه واحده فقط.\n\nفى ترجمات النطاقات <code>$1 talk</code> خاص. <code>$1</code> يتم استبدالها باسم الموقع (على سبيل المثال <code>{{ns:project_talk}}</code>).\nلو أنه من غير الممكن فى لغتك صياغه تعبير صحيح بدون تغيير اسم الموقع، من فضلك اتصل بمطور.\n\nتحتاج إلى أن تكون فى مجموعه المترجمين لحفظ التغييرات.\nالتغييرات لن يتم حفظها حتى تضغط زر الحفظ بالأسفل.",
+ "translate-magic-module": "النوع:",
+ "translate-magic-submit": "اجلب",
+ "translate-magic-cm-export": "صدّر",
+ "translate-magic-nothing-to-export": "لا يوجد شيء يمكن تصديره.",
+ "translate-magic-cm-to-be": "لتصبح",
+ "translate-magic-cm-current": "الحالي",
+ "translate-magic-cm-original": "الأصلي",
+ "translate-magic-cm-comment": "تعليق:",
+ "translate-magic-cm-save": "احفظ",
+ "translate-magic-cm-updatedusing": "حدث باستخدام [[Special:AdvancedTranslate|{{int:Translate-magic-pagename}}]]",
+ "translate-magic-cm-savefailed": "الحفظ فشل",
+ "translate-magic-special": "أسماء الصفحات الخاصة",
+ "translate-magic-words": "كلمات سحرية",
+ "translate-magic-namespace": "أسماء النطاقات",
+ "translate-magic-notsaved": "تعديلك لم يُحفظ!",
+ "translate-magic-errors": "من فضلك أصلح {{PLURAL:$1||الخطأ|الخطأين|الأخطاء}} التاليه فى الترجمات:",
+ "translate-magic-saved": "حُفظت تعديلاتك بنجاح.",
+ "translate-checks-parameters": "{{PLURAL:$2||المحدد التالى غير مستخدم|المحددان التاليان غير مستخدمان|المحددات التاليه غير مستخدمة}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-parameters-unknown": "{{PLURAL:$2||المحدد التالى غير معروف|المحددان التاليان غير معروفان|المحددات التاليه غير معروفة}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-balance": "يوجد عدد غير زوجى من {{PLURAL:$2|الأقواس}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links": "{{PLURAL:$2||الوصله التالية|الوصلتان التاليتان|ال$2 وصلات التالية|ال$2 وصله التالية}} بها مشاكل:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links-missing": "{{PLURAL:$2||الوصله التاليه مفقودة|الوصلتان التاليتان مفقودتان|ال$2 وصلات التاليه مفقودة|ال$2 وصله التاليه مفقودة}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-xhtml": "من فضلك استبدل {{PLURAL:$2||الوسم التالي|الوسمين التاليين|الوسوم التالية}} بالوسوم الصحيحة:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-plural": "التعريف يستخدم <nowiki>{{PLURAL:}}</nowiki> لكن الترجمه لا.",
+ "translate-checks-pagename": "النطاق تغير من التعريف",
+ "translate-checks-format": "هذه الترجمه لا تتبع التعريف أو لديها صياغه خاطئة: $1",
+ "translate-checks-escape": "عمليات الهروب التاليه ربما تكون حدثت بالصدفة: <strong>$1</strong>",
+ "translate-checks-fudforum-syntax": "استخدم <nowiki>$1</nowiki> بدلًا من <nowiki>$2</nowiki> فى هذا المشروع.",
+ "translate-pref-nonewsletter": "لا ترسل لى إخطارات بريديه بالبريد الإلكتروني",
+ "translate-pref-editassistlang": "لغات المساعد:",
+ "prefs-translate": "خيارات الترجمة",
+ "translate-pref-editassistlang-help": "قائمه برموز اللغات مفصوله بفواصل.\nتُعرض ترجمه الرساله بهذه اللغات عندما تترجم.\nقائمه اللغات المبدئيه تعتمد على لغتك.",
+ "translate-pref-editassistlang-bad": "رمز لغه غير صالح فى القائمة:\n<nowiki>$1</nowiki>.",
+ "right-translate": "التعديل باستخدام واجهه الترجمة",
+ "right-translate-manage": "إداره مجموعات الترجمة",
+ "right-translate-import": "استيراد الترجمات من الخارج",
+ "translate-rc-translation-filter": "رشّح الترجمات:",
+ "translate-rc-translation-filter-no": "لا تفعل شيئا",
+ "translate-rc-translation-filter-only": "اعرض الترجمات فقط",
+ "translate-rc-translation-filter-filter": "أزل الترجمات",
+ "translate-rc-translation-filter-site": "التغييرات لرسائل الموقع فقط",
+ "translationstats": "إحصاءات الترجمة",
+ "translate-stats-edits": "تعديلات",
+ "translate-stats-users": "المترجمون",
+ "translate-statsf-intro": "يمكنك توليد إحصاءات بسيطه بهذه الاستماره. كل القيم لها حدود عليا وسفلى.",
+ "translate-statsf-options": "خيارات الرسم",
+ "translate-statsf-width": "العرض بالبكسل:",
+ "translate-statsf-height": "الارتفاع بالبكسل:",
+ "translate-statsf-days": "فتره زمنيه باليوم:",
+ "translate-statsf-start": "فتره زمنيه باليوم:",
+ "translate-statsf-scale": "التدريج:",
+ "translate-statsf-scale-days": "أيام",
+ "translate-statsf-scale-hours": "ساعات",
+ "translate-statsf-count": "قياس:",
+ "translate-statsf-count-edits": "عدد التعديلات",
+ "translate-statsf-count-users": "المترجمون النشطون",
+ "translate-statsf-language": "قائمه بأكواد اللغات مفصوله بفاصلة:",
+ "translate-statsf-group": "قائمه بأكواد المجموعات مفصوله بفاصلة:",
+ "translate-statsf-submit": "عاين",
+ "translate-tag-category": "صفحات قابله للترجمة",
+ "translate-tag-page-desc": "ترجمه صفحه الويكى [[$2|$1]].",
+ "translate-sidebar-alltrans": "بلغات أخرى",
+ "translations": "كل الترجمات",
+ "translations-summary": "أدخل اسم رساله أسفله لعرض كل الترجمات المتوفره.",
+ "translate-translations-no-message": "\"$1\" ليست رساله قابله للترجمة",
+ "translate-translations-none": "لا يوجد ترجمات ل\"$1\"",
+ "translate-translations-fieldset-title": "الرسالة",
+ "translate-translations-messagename": "الاسم:",
+ "translate-translations-project": "المشروع:",
+ "translate-translations-including-no-param": "من فضلك حدد مفتاح رساله صحيح فى معامل الصفحه الفرعية",
+ "languagestats": "إحصاءات اللغة",
+ "languagestats-summary": "هذه الصفحه تعرض إحصاءات الترجمه لكل مجموعات الرسائل للغه.",
+ "translate-language-code": "رمز اللغة",
+ "translate-language-code-field-name": "رمز اللغة:",
+ "translate-suppress-complete": "تخطَ مجموعات الرسائل المترجمه كليا",
+ "translate-language": "اللغة:",
+ "translate-total": "الرسائل",
+ "translate-untranslated": "غير المترجمة",
+ "translate-percentage-complete": "المكتمل",
+ "translate-percentage-fuzzy": "غير المحدث",
+ "translate-save": "احفظ ($1)",
+ "translate-jssti-add": "أضف إلى القائمة",
+ "translate-manage-import-diff": "الرساله $1 | الإجراءات: $2",
+ "translate-manage-import-new": "رساله جديده $1",
+ "translate-manage-import-deleted": "رساله محذوفه $1",
+ "translate-manage-action-import": "استورد",
+ "translate-manage-action-conflict": "استورد وضبّب",
+ "translate-manage-action-ignore": "تجاهل",
+ "translate-manage-action-fuzzy": "استورد وضبّب الترجمات",
+ "translate-manage-nochanges": "لا توجد أى تغييرات فى تعاريف رسائل هذه المجموعه.",
+ "translate-manage-nochanges-other": "لا توجد أى تغييرات على هذه اللغه.\nاستخدام الوصله أدناه للرجوع إلى عرض تفاصيل المجموعه.",
+ "translate-manage-inconsistent": "كشف عدم توافق فى الطلب.\nمن فضلك تحقق من التغييرات وحاول مجددا.\nالتفاصيل: $1.",
+ "translate-manage-toolong": "زمن المعالجه الأقصى ل$1 {{PLURAL:$1|second|seconds}} تم تجاوزه.\nمن فضلك أعد تنفيذ التموذج لإكمال المعالجه.",
+ "translate-manage-import-summary": "استيراد نسخه جديده من مصدر خارجي",
+ "translate-manage-conflict-summary": "استيراد نسخه جديده من مصدر خارجى.\nمن فضلك تحقق.",
+ "translate-manage-fuzzy-summary": "التعريف تغير",
+ "translate-manage-submit": "نفّذ",
+ "translate-manage-intro-other": "بالأسفل قائمه بتغييرات الترجمه فى لغه $1.\nمن فضلك راجع التغييرات واختر فعلا تريد فعله لكل ترجمه.\nلو اخترت تجاهل التغييرات، ستتم الكتابه عليها عند التصدير التالى.",
+ "translate-manage-import-ok": "استوردت نسخه جديده من الصفحه $1.",
+ "translate-manage-import-done": "انتهى الكل!",
+ "importtranslations": "استورد ترجمات",
+ "translate-import-from-local": "رفع ملف محلي:",
+ "translate-import-load": "حمّل الملف",
+ "translate-import-err-dl-failed": "تعذّر جلب الملف:\n$1",
+ "translate-import-err-ul-failed": "لم ينجح رفع الملف",
+ "translate-import-err-invalid-title": "اسم الملف المعطى <nowiki>$1</nowiki> غير صالح.",
+ "translate-import-err-no-such-file": "الملف <nowiki>$1</nowiki> غير موجود أو لم يرفع محليًا.",
+ "translate-import-err-no-headers": "الملف ليس ملف Gettext صحيح بصيغه امتداد الترجمة:\nغير قادر على تحديد المجموعه واللغه من مقدمه الملف.",
+ "translate-import-err-warnings": "الملف ليس مكونا بشكل صحيح.\nتأكد من أن محررك لا يزيل حقول msgctxt .\nالتفاصيل: $1",
+ "translate-gs-pos": "الترتيب",
+ "translate-gs-code": "الرمز",
+ "translate-gs-continent": "القارة",
+ "translate-gs-speakers": "الناطقون",
+ "translate-gs-score": "الدرجة",
+ "translate-gs-multiple": "عديدة",
+ "translate-gs-count": "العدد",
+ "translate-gs-total": "المجموع",
+ "translate-gs-avgscore": "معدل الدرجات"
+}
diff --git a/MLEB/Translate/i18n/core/as.json b/MLEB/Translate/i18n/core/as.json
new file mode 100644
index 00000000..5c2bbcfd
--- /dev/null
+++ b/MLEB/Translate/i18n/core/as.json
@@ -0,0 +1,193 @@
+{
+ "@metadata": {
+ "authors": [
+ "Bishnu Saikia",
+ "Chaipau",
+ "Gahori",
+ "Gitartha.bordoloi",
+ "Jaminianurag",
+ "Nilamdyuti",
+ "Xqt"
+ ]
+ },
+ "translate": "অনুবাদ কৰক",
+ "translate-desc": "মিডিয়াৱিকি আৰু অন্য ভাঙনিৰ কাৰণে [[Special:Translate|বিশেষ পৃষ্ঠা]]",
+ "translate-taskui-view": "সকলো বাৰ্তা দেখুৱাওক",
+ "translate-taskui-untranslated": "ভাঙনি নোহোৱা বাৰ্তাসমূহ দেখুৱাওক",
+ "translate-taskui-optional": "বৈকল্পিক বাৰ্তাসমূহ দেখুৱাওক",
+ "translate-taskui-acceptqueue": "কেৱল ম‍ই পুনৰীক্ষণ হোৱা বুলি চিহ্নিত কৰিব পৰা কৰা বাৰ্তাসমূহ",
+ "translate-taskui-reviewall": "ভাঙনিসমূহ পুনৰীক্ষণ কৰক",
+ "translate-taction-translate": "অনুবাদ কৰক",
+ "translate-taction-proofread": "পুনৰীক্ষণ",
+ "translate-taction-lstats": "ভাষাৰ পৰিসংখ্যা",
+ "translate-taction-mstats": "বাৰ্তা গোটৰ পৰিসংখ্যা",
+ "translate-taction-export": "ৰপ্তানি কৰক",
+ "translate-taction-disabled": "এই ৱিকিত এই কাৰ্য নিষ্ক্ৰিয় কৰা হৈছে।",
+ "translate-page-no-such-language": "উ্ল্লেখিত ভাষা পোৱা নগ’ল",
+ "translate-page-no-such-group": "উল্লেখিত গোটটো অবৈধ।",
+ "translate-language-disabled": "এই ভাষালৈ ভাঙনি কাৰ্য অৱৰোধ কৰা হৈছে।",
+ "translate-page-settings-legend": "চেটিং",
+ "translate-page-group": "গোট",
+ "translate-page-language": "ভাষা",
+ "translate-page-limit": "সীমা",
+ "translate-page-limit-option": "প্ৰতি পৃষ্ঠাত $1টা {{PLURAL:$1|বাৰ্তা}}",
+ "translate-submit": "দেখুৱাওক",
+ "translate-page-navigation-legend": "দিকদৰ্শন",
+ "translate-page-showing": "$3টা বাৰ্তাৰ ভিতৰত $1-ৰ পৰা $2-লৈ দেখুৱাওক",
+ "translate-page-showing-all": "$1টা {{PLURAL:$1|বাৰ্তা|বাৰ্তা}} দেখুউৱা হৈছে",
+ "translate-page-showing-none": "দেখুৱাবলৈ একো বাৰ্তা নাই",
+ "translate-next": "পৰৱৰ্তী পৃষ্ঠা",
+ "translate-prev": "পূৰ্বৱৰ্তী পৃষ্ঠা",
+ "translate-page-description-legend": "এই গোটটোৰ বিষয়ে সবিশেষ",
+ "translate-page-description-hasoptional-open": "বৈকল্পিক বাৰ্তাসমূহ দেখুৱাওক",
+ "translate-page-edit": "সম্পাদনা",
+ "translate-ext-url": "<hr />ৱেবছাইট: $1",
+ "translate-optional": "(বিকল্পিত)",
+ "translate-ignored": "(উপেক্ষিত)",
+ "translate-edit-title": "\"$1\" সম্পাদন কৰক",
+ "translate-edit-definition": "বাৰ্তাৰ সংজ্ঞা",
+ "translate-edit-translation": "ভাঙনি",
+ "translate-edit-contribute": "বৰঙণি",
+ "translate-edit-information": "বাৰ্তাটোৰৰ বিষয়ে সবিশেষ ($1)",
+ "translate-edit-in-other-languages": "আন ভাষাত বাৰ্তা",
+ "translate-edit-committed": "ছফ্টৱেৰৰ বৰ্তমানৰ ভাঙনি",
+ "translate-edit-warnings": "অসমাপ্ত ভাঙনিৰ বিষয়ে সতৰ্ক বানী",
+ "translate-edit-tmmatch-source": "অনুবাদৰ উত্স পাঠ্য: $1",
+ "translate-edit-tmmatch": "$1% ৰজিতা খাইছে",
+ "translate-use-suggestion": "বৰ্তমানৰ ভাঙনিটো এই পৰামৰ্শৰ সৈতে প্ৰতিষ্ঠাপন কৰক",
+ "translate-edit-nopermission": "ভাঙনি কৰিবৰ বাবে আপুনি ভাঙনি অনুমতি লোৱাটো বাঞ্চনীয়।",
+ "translate-edit-askpermission": "অনুমতি লওক",
+ "translate-magic-pagename": "বিস্তাৰিত মিডিয়াৱিকি ভাঙনি",
+ "translate-magic-module": "ম'ডিউল:",
+ "translate-magic-submit": "দেখুৱাওক",
+ "translate-magic-cm-export": "ৰপ্তানি কৰক",
+ "translate-magic-nothing-to-export": "ইয়াত ৰপ্তানি কৰিবৰ বাবে একোৱেই নাই",
+ "translate-magic-cm-to-be": "হোৱা উচিত",
+ "translate-magic-cm-current": "সাম্প্ৰতিক",
+ "translate-magic-cm-original": "মৌলিক",
+ "translate-magic-cm-comment": "মন্তব্য",
+ "translate-magic-cm-save": "সংৰক্ষণ কৰক",
+ "translate-magic-cm-updatedusing": "[[Special:AdvancedTranslate|{{int:Translate-magic-pagename}}]] ব্যৱহাৰৰ যোগে আপডেট কৰক",
+ "translate-magic-cm-savefailed": "সংৰক্ষণ বিফল হ'ল",
+ "translate-magic-special": "বিশেষ পৃষ্ঠাৰ অন্য নামসমূহ",
+ "translate-magic-words": "যাদুকৰী শব্দবোৰ",
+ "translate-magic-namespace": "নামস্থান নামবোৰ",
+ "translate-magic-notsaved": "আপোনাৰ সম্পাদনা সংৰক্ষিত নহ'ল!",
+ "translate-magic-errors": "অনুগ্ৰহ কৰি এই ভাঙনিৰ {{PLURAL:$1|ত্ৰুটি|ত্ৰুটিসমূহ}} আতৰাওক:",
+ "translate-magic-saved": "আপুনি কৰা সালসলনি সফলতাৰে সম্পন্ন হ’ল",
+ "translate-pref-editassistlang": "সহযোগী ভাষাসমূহ:",
+ "prefs-translate": "ভাঙনি বিকল্পসমূহ",
+ "right-translate-manage": "বাৰ্তা গোট ব্যৱস্থাপনা",
+ "action-translate-manage": "বাৰ্তা গোট ব্যৱস্থাপনা",
+ "right-translate-messagereview": "ভাঙনিসমূহ পুনৰীক্ষণ কৰক",
+ "translate-rc-translation-filter": "ভাঙনিবোৰ ছেকক",
+ "translate-rc-translation-filter-no": "একো নকৰিব",
+ "translate-rc-translation-filter-only": "কেৱল ভাঙনিসমূহ দেখোৱাওঁক",
+ "translate-rc-translation-filter-filter": "ভাঙনিবোৰ ছেকক",
+ "translationstats": "ভাঙনি পৰিসংখ্যা",
+ "translate-stats-edits": "সম্পাদনাসমূহ",
+ "translate-stats-users": "অনুবাদকসকল",
+ "translate-stats-registrations": "পঞ্জীয়নসমূহ",
+ "translate-stats-reviews": "নিৰীক্ষকসকল",
+ "translate-stats-reviewers": "নিৰীক্ষকসকল",
+ "translate-statsf-start": "আৰম্ভৰ তাৰিখ:",
+ "translate-statsf-scale-months": "মাহ",
+ "translate-statsf-scale-weeks": "সপ্তাহ",
+ "translate-statsf-scale-days": "দিন",
+ "translate-statsf-scale-hours": "ঘন্টা",
+ "translate-statsf-count": "পৰিমাণ:",
+ "translate-statsf-count-edits": "সম্পাদনাসমূহৰ সংখ্যা",
+ "translate-statsf-count-users": "সক্ৰিয় অনুবাদকসকল",
+ "translate-statsf-count-registrations": "নতুন সদস্যসকল",
+ "translate-statsf-count-reviews": "ভাঙনি পুনৰীক্ষণ",
+ "translate-statsf-count-reviewers": "নিৰীক্ষকসকল",
+ "translate-statsf-submit": "খচৰা চাওক",
+ "translate-tag-category": "ভাঙনি-উপযুক্ত পৃষ্ঠা",
+ "translate-tag-page-desc": "[[$2|$1]] ৱিকি পৃষ্ঠাৰ ভাঙনি।",
+ "translate-sidebar-alltrans": "আন ভাষাত",
+ "translations": "সকলোবোৰ ভাঙনি",
+ "translate-translations-none": "\"$1\"ৰ বাবে কোনো ভাঙনি কৰিব লগা কাম নাই",
+ "translate-translations-count": "{{PLURAL:$1|এটা ভাঙনি|$1 ভাঙনি}} পোৱা গৈছে",
+ "translate-translations-fieldset-title": "বাৰ্তা",
+ "translate-translations-messagename": "নাম:",
+ "translate-translations-project": "প্ৰকল্প:",
+ "translate-translations-history-short": "ই",
+ "languagestats": "ভাষাৰ পৰিসংখ্যা",
+ "languagestats-stats-for": "$1 ($2)’ৰ বাবে ভাঙনি পৰিসংখ্যা",
+ "languagestats-recenttranslations": "শেহতীয়া ভাঙনিসমূহ",
+ "translate-langstats-expand": "বহলাওক",
+ "translate-langstats-collapse": "সংকোচ কৰক",
+ "translate-langstats-expandall": "সকলো বহলাওক",
+ "translate-langstats-collapseall": "সকলো সংকোচ কৰক",
+ "translate-language-code": "ভাষা কোড",
+ "translate-language-code-field-name": "ভাষা কোড:",
+ "translate-language": "ভাষা",
+ "translate-total": "বাৰ্তাসমূহ",
+ "translate-untranslated": "ভাঙনি নোহোৱা",
+ "translate-percentage-complete": "সম্পন্ন",
+ "translate-percentage-fuzzy": "আওপুৰণি",
+ "translate-languagestats-overall": "সকলো বাৰ্তা গোট একেলগে দেখুৱাওক",
+ "translate-ls-submit": "পৰিসংখ্যা দেখুৱাওক",
+ "translate-ls-column-group": "বাৰ্তা গোট",
+ "translate-mgs-pagename": "বাৰ্তা গোটৰ পৰিসংখ্যা",
+ "translate-mgs-fieldset": "পছন্দসমূহ প্ৰদৰ্শন কৰক",
+ "translate-mgs-group": "বাৰ্তা গোট:",
+ "translate-mgs-nocomplete": "যিবোৰ ভাষাৰ ভাঙনি শেষ হৈছে সেইবোৰ দেখুৱাব নালাগে",
+ "translate-mgs-noempty": "যিবোৰ ভাষাৰ ভাঙনি শেষ হৈছে সেইবোৰ দেখুৱাব নালাগে",
+ "translate-mgs-submit": "পৰিসংখ্যা দেখুৱাওক",
+ "translate-mgs-column-language": "ভাষাসমূহ",
+ "translate-mgs-totals": "একেলগে সকলোবোৰ ভাষা",
+ "translate-mgs-invalid-group": "উল্লেখ কৰা গোট $1 ৰ অস্বিত্ব নাই।",
+ "supportedlanguages": "সমৰ্থন থকা ভাষাসমূহ",
+ "supportedlanguages-translators": "{{PLURAL:$2|অনুবাদক|অনুবাদকসকল}}: $1",
+ "supportedlanguages-recenttranslations": "শেহতীয়া ভাঙনিসমূহ",
+ "supportedlanguages-count": "$1 মুঠ {{PLURAL:$1|ভাষা}}",
+ "supportedlanguages-activity": "$1: $2 {{PLURAL:$2|সম্পাদন}} - শেষ সম্পাদন $3 {{PLURAL:$3|দিন}} আগতে",
+ "translate-save": "সাঁচি থওক ($1)",
+ "translate-jssti-add": "তালিকাত যোগ দিয়ক",
+ "managemessagegroups": "বাৰ্তা গোটৰ ব্যৱস্থাপনা",
+ "translate-smg-notallowed": "আপোনাক এই কাৰ্য কৰিবলৈ অনুমতি দিয়া নাই",
+ "translate-manage-import-diff": "বাৰ্তা $1 | কাৰ্য : $2",
+ "translate-manage-import-new": "নতুন বাৰ্তা $1",
+ "translate-manage-import-deleted": "বিলোপ কৰা বাৰ্তাসমূহ $1",
+ "translate-manage-action-import": "আমদানি",
+ "translate-manage-action-ignore": "আওকান কৰক",
+ "importtranslations": "ভাঙনিসমূহ আমদানী কৰক",
+ "translate-import-from-local": "স্থানীয় ফাইল আপল’ড:",
+ "translate-import-load": "ফাইল ল’ড কৰক",
+ "translate-import-err-dl-failed": "ফাইল অৰ্জন কৰা নহ'ল:\n$1",
+ "translate-js-summary": "সাৰাংশ:",
+ "translate-js-save": "সাঁচি থওক",
+ "translate-js-next": "সাঁচক আৰু পৰৱৰ্তী বাৰ্তা খোলক",
+ "translate-js-nonext": "এই পৃষ্ঠাটোৰ এইটোৱেই অন্তিম বাৰ্তা ।",
+ "translate-js-skip": "বাতিল কৰি পৱৱৰ্তী বাৰ্তালৈ যাওক",
+ "translate-js-save-failed": "সংৰক্ষণ বিফল হৈছে। অনুগ্ৰহ কৰি এই ত্ৰুটিৰ বিষয়ে জনাওক।",
+ "translate-js-history": "ভাঙনিৰ খতিয়ান",
+ "translate-js-support": "প্ৰশ্ন সোধক",
+ "translate-gs-code": "কোড",
+ "translate-gs-continent": "উপমহাদেশ",
+ "translate-gs-speakers": "বক্তা",
+ "translate-gs-score": "নম্বৰ",
+ "translate-gs-count": "গণনা",
+ "translate-gs-total": "মুঠ",
+ "translate-gs-avgscore": "গড় নম্বৰ",
+ "translate-documentation-language": "বাৰ্তা নথিকৰণ",
+ "translate-searchprofile": "ভাঙনিসমূহ",
+ "translate-messagereview-submit": "স্বীকাৰ",
+ "translate-messagereview-progress": "গ্ৰহণ কৰি আছে . . .",
+ "translate-messagereview-done": "স্বীকাৰ কৰা হ’ল",
+ "api-error-invalidrevision": "ভাঙনি পোৱা নগ’ল",
+ "api-error-unknownmessage": "বাৰ্তাটো পোৱা নগ’ল",
+ "api-error-owntranslation": "আপুনি নিজেই আপোনাৰ অনুবাদসমূহ স্বীকৃতি দিব নোৱাৰে",
+ "translate-messagereview-doit": "এই ভাঙনিটো শুদ্ধ ভাঙনিৰূপে স্বীকৃতি দিয়্ক",
+ "log-name-translationreview": "ভাঙনি পুনৰীক্ষণ অভিলেখ",
+ "translate-workflowstatus": "স্থিতি: $1",
+ "translate-workflow-set-doing": "পছন্দসমূহ . . .",
+ "translate-stats-workflow": "স্থিতি",
+ "translate-dynagroup-recent-label": "শেহতীয়া ভাঙনিসমূহ",
+ "translate-dynagroup-by": "ভাঙনিকৰ্তা {{GENDER:$1|$1}}",
+ "translate-dynagroup-byc": "ভাঙনিকৰ্তা {{GENDER:$1|$1}}",
+ "translate-dynagroup-last": "শেহতীয়া সালসলনিকৰ্তা {{GENDER:$1|$1}}",
+ "translate-dynagroup-lastc": "শেহতীয়া সালসলনিকৰ্তা {{GENDER:$1|$1}} ($2)",
+ "translate-gethelp": "সহায়"
+}
diff --git a/MLEB/Translate/i18n/core/ast.json b/MLEB/Translate/i18n/core/ast.json
new file mode 100644
index 00000000..b69ac97f
--- /dev/null
+++ b/MLEB/Translate/i18n/core/ast.json
@@ -0,0 +1,387 @@
+{
+ "@metadata": {
+ "authors": [
+ "Amire80",
+ "Esbardu",
+ "Xuacu",
+ "Fitoschido"
+ ]
+ },
+ "translate": "Traducir",
+ "translate-desc": "[[Special:Translate|Páxina especial]] pa traducir MediaWiki y más",
+ "translate-taskui-view": "Ver tolos mensaxes",
+ "translate-taskui-untranslated": "Ver los mensaxes ensin traducir",
+ "translate-taskui-optional": "Ver los mensaxes opcionales",
+ "translate-taskui-acceptqueue": "Sólo los mensaxes que yo pueda marcar como revisaos",
+ "translate-taskui-reviewall": "Revisar toles traducciones",
+ "translate-taskui-export-to-file": "Esportar en formatu nativu",
+ "translate-taskui-export-as-po": "Esportar pa traducir ensin conexón",
+ "translate-taction-translate": "Traducir",
+ "translate-taction-proofread": "Revisar",
+ "translate-taction-lstats": "Estadístiques de llingua",
+ "translate-taction-mstats": "Estadístiques del grupu de mensaxes",
+ "translate-taction-export": "Esportar",
+ "translate-taction-disabled": "Esta aición ta desactivada nesta wiki.",
+ "translate-page-no-such-language": "La llingua especificada nun foi válida.",
+ "translate-page-no-such-group": "El grupu especificáu nun foi válidu.",
+ "translate-page-disabled": "Desactivaronse les traducciones a esta llingua nesti grupu. Motivu:\n\n<em>$1</em>",
+ "translate-language-disabled": "La traducción a esta llingua ta desactivada.",
+ "translate-page-settings-legend": "Configuración",
+ "translate-page-group": "Grupu",
+ "translate-page-language": "Llingua",
+ "translate-page-limit": "Llímite",
+ "translate-page-limit-option": "$1 {{PLURAL:$1|mensaxe|mensaxes}} por páxina",
+ "translate-submit": "Amosar",
+ "translate-page-navigation-legend": "Navegación",
+ "translate-page-showing": "Amosando mensaxes del $1 al $2 de $3.",
+ "translate-page-showing-all": "Amosando $1 {{PLURAL:$1|mensaxe|mensaxes}}.",
+ "translate-page-showing-none": "Nun hai mensaxes qu'amosar.",
+ "translate-next": "Páxina siguiente",
+ "translate-prev": "Páxina anterior",
+ "translate-page-description-legend": "Información del grupu",
+ "translate-page-description-hasoptional": "Esti grupu de mensaxes contién mensaxes opcionales.\nLos mensaxes opcionales sólo deberíen traducise cuando la llingua tenga necesidaes especiales,\ncomo nun usar espacios o pa treslliterar nomes propios. $1",
+ "translate-page-description-hasoptional-open": "Amosar los mensaxes opcionales.",
+ "translate-page-edit": "editar",
+ "translate-ext-url": "<hr />Sitiu web: $1",
+ "translate-optional": "(opcional)",
+ "translate-ignored": "(inoráu)",
+ "translate-edit-title": "Editar \"$1\"",
+ "translate-edit-definition": "Definición del mensaxe",
+ "translate-edit-translation": "Traducción",
+ "translate-edit-contribute": "contribuyir",
+ "translate-edit-no-information": "<em>Esti mensaxe nun tien documentación. Si sabe ú o cómo s'usa esti mensaxe, pue ayudar a otros traductores amestando documentación a esti mensaxe.</em>",
+ "translate-edit-information": "Información tocante a esti mensaxe ($1)",
+ "translate-edit-in-other-languages": "Mensaxe n'otres llingües",
+ "translate-edit-committed": "Traducción actual nel software",
+ "translate-edit-warnings": "Avisos sobre traducciones incompletes",
+ "translate-edit-tmsugs": "Suxerencies de la memoria de traducción",
+ "translate-edit-tmmatch-source": "Testu orixinal de la traducción: $1",
+ "translate-edit-tmmatch": "$1 % de coincidencia",
+ "translate-use-suggestion": "Sustituir la traducción actual por esta suxerencia.",
+ "translate-edit-nopermission": "Necesita permisu de traducción pa traducir mensaxes.",
+ "translate-edit-askpermission": "Pidir permisu",
+ "translate-magic-pagename": "Traducción estendida de MediaWiki",
+ "translate-magic-help": "Pues traducir los nomatos de les páxines especiales, les pallabres máxiques y los nomes de los espacios de nome.\n\nLos nomatos de les páxines especiales y les pallabres máxiques puen tener múltiples traducciones.\nLes traducciones se separten con una coma (,).\nLos espacios de nome namái puen tener una traducción.\n\nTraducir l'espaciu de nomes d'alderique del proyeutu <code>$1 talk</code> pue ser abegoso. <code>$1</code> se sustituye pol nome del sitiu (por exemplu <code>{{ns:project_talk}}</code>).\nSi na to llingua nun ye posible formar una espresión válida ensin camudar el nome del sitiu, por favor informa d'ello en [[Support]].\n\nNecesites tar nel grupu de traductores pa guardar los cambios.\nLos cambios nun se graben fasta que calques nel botón guardar d'abaxo.",
+ "translate-magic-module": "Módulu:",
+ "translate-magic-submit": "Amosar",
+ "translate-magic-cm-export": "Esportar",
+ "translate-magic-nothing-to-export": "Nun hai res qu'esportar",
+ "translate-magic-cm-to-be": "Propuesta",
+ "translate-magic-cm-current": "Actual",
+ "translate-magic-cm-original": "Orixinal",
+ "translate-magic-cm-comment": "Comentariu:",
+ "translate-magic-cm-save": "Guardar",
+ "translate-magic-cm-updatedusing": "Actualizao usando [[Special:AdvancedTranslate|{{int:Translate-magic-pagename}}]]",
+ "translate-magic-cm-savefailed": "Falló'l guardáu",
+ "translate-magic-special": "Nomes de páxines especiales",
+ "translate-magic-words": "Pallabres máxiques",
+ "translate-magic-namespace": "Nomes d'espacios de nome",
+ "translate-magic-notsaved": "¡La edición nun se guardó!",
+ "translate-magic-errors": "Por favor, igua{{PLURAL:$1|'l fallu| los fallos}} darréu nes traducciones:",
+ "translate-magic-saved": "Los cambeos guardaronse correutamente.",
+ "translate-checks-parameters": "{{PLURAL:$2|El siguiente parámetru nun s'usa|Los siguientes parámetros nun s'usen}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-parameters-unknown": "{{PLURAL:$2|El siguiente parámetru ye desconocíu|Los siguientes parámetros son desconocíos}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-balance": "Hai un númberu impar de {{PLURAL:$2|paréntesis|paréntesis}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links": "{{PLURAL:$2|El siguiente enllaz ye problemáticu|Los siguientes enllaces son problemáticos}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links-missing": "{{PLURAL:$2|Falta l'enllaz|Falten los $2 enllaces}} darréu:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-xhtml": "Por favor sustitúi {{PLURAL:$2|la siguiente etiqueta cola correuta|les siguientes etiquetes coles correutes}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-plural": "La definición usa <nowiki>{{PLURAL:}}</nowiki> pero la traducción non.",
+ "translate-checks-plural-forms": "<nowiki>{{PLURAL:}}</nowiki> se {{PLURAL:$1|dio una forma|dieron $1 formes}}, pero namái {{PLURAL:$2|tien sofitu una forma|tienen sofitu $2 formes}} (sacante les formes 0= y 1=).",
+ "translate-checks-plural-dupe": "<nowiki>{{PLURAL:}}</nowiki> tien formes duplicaes al final. <nowiki>{{PLURAL:$1|llunes|llunes}}</nowiki> tien d'escribise asina: <nowiki>{{PLURAL:$1|llunes}}</nowiki>.",
+ "translate-checks-pagename": "Espaciu de nomes camudáu dende la definición",
+ "translate-checks-format": "Esta traducción nun sigue la definición o tien una sintaxis non válida: $1",
+ "translate-checks-escape": "Les secuencies d'escape darréu pueden ser accidentales: <strong>$1</strong>",
+ "translate-checks-parametersnotequal": "El númberu de parámetros ye {{PLURAL:$1|$1}}; tendría de ser {{PLURAL:$2|$2}}.",
+ "translate-checks-malformed": "<nowiki>$1</nowiki> tien un formatu incorreutu.",
+ "translate-checks-fudforum-syntax": "Usa <nowiki>$1</nowiki> en llugar de <nowiki>$2</nowiki> nesti proyeutu.",
+ "translate-pref-nonewsletter": "Nun unviame boletinos per corréu electrónicu",
+ "translate-pref-editassistlang": "Llingües d'ayuda:",
+ "prefs-translate": "Opciones de traducción",
+ "translate-pref-editassistlang-help": "Llista de códigos de llingua separaos por comes.\nCuando traduces s'amuesen les traducciones d'un mensaxe nestes llingües.\nLa llista predeterminada de llingües depende de la to llingua.",
+ "translate-pref-editassistlang-bad": "Códigu de llingua inválidu na llista:\n<nowiki>$1</nowiki>.",
+ "right-translate": "Editar usando la interfaz de traducción",
+ "right-translate-manage": "Xestionar los grupos de mensaxes",
+ "action-translate-manage": "xestionar los grupos de mensaxes",
+ "right-translate-import": "Importar les traducciones ensin conexón",
+ "action-translate-import": "Importar les traducciones ensin conexón",
+ "right-translate-messagereview": "Revisar les traducciones",
+ "right-translate-groupreview": "Camudar l'estáu d'organización del trabayu de los grupos de mensaxes",
+ "translate-rc-translation-filter": "Filtrar traducciones:",
+ "translate-rc-translation-filter-no": "Nun facer nada",
+ "translate-rc-translation-filter-only": "Amosar traducciones namái",
+ "translate-rc-translation-filter-filter": "Filtrar traducciones",
+ "translate-rc-translation-filter-site": "Cambeos de los mensaxes del sitiu namái",
+ "translationstats": "Estadístiques de traducción",
+ "translate-stats-edits": "Ediciones",
+ "translate-stats-users": "Traductores",
+ "translate-stats-registrations": "Rexistros",
+ "translate-stats-reviews": "Revisiones",
+ "translate-stats-reviewers": "Revisores",
+ "translate-statsf-intro": "Pues xenerar estadístiques cencielles con esti formulariu. Tolos valores tienen llímites superiores y inferiores.",
+ "translate-statsf-options": "Opciones del gráficu",
+ "translate-statsf-width": "Anchura en píxeles:",
+ "translate-statsf-height": "Altura en píxeles:",
+ "translate-statsf-days": "Data de comienzu:",
+ "translate-statsf-start": "Data de comienzu:",
+ "translate-statsf-scale": "Granularidá:",
+ "translate-statsf-scale-months": "Meses",
+ "translate-statsf-scale-weeks": "Selmanes",
+ "translate-statsf-scale-days": "Díes",
+ "translate-statsf-scale-hours": "Hores",
+ "translate-statsf-count": "Midida:",
+ "translate-statsf-count-edits": "Númberu d'ediciones",
+ "translate-statsf-count-users": "Traductores activos",
+ "translate-statsf-count-registrations": "Nuevos usuarios",
+ "translate-statsf-count-reviews": "Revisiones de les traducciones",
+ "translate-statsf-count-reviewers": "Revisores",
+ "translate-statsf-language": "Llista de códigos de llingua separtaos por comes:",
+ "translate-statsf-group": "Llista de códigos de grupu separtaos por comes:",
+ "translate-statsf-submit": "Vista previa",
+ "translate-tag-category": "Páxines traducibles",
+ "translate-tag-page-desc": "Traducción de la páxina wiki [[$2|$1]] dende'l $3 ($4).",
+ "translate-sidebar-alltrans": "Otres llingües",
+ "translations": "Toles traducciones",
+ "translations-summary": "Escribi abaxo'l nome d'un mensaxe pa ver toles traducciones disponibles.",
+ "translate-translations-no-message": "\"$1\" nun ye un mensaxe traducible",
+ "translate-translations-none": "Nun hai traducciones pa \"$1\"",
+ "translate-translations-count": "{{PLURAL:$1|S'alcontró una traducción|S'alcontraron $1 traducciones}}.",
+ "translate-translations-fieldset-title": "Mensaxe",
+ "translate-translations-messagename": "Nome:",
+ "translate-translations-project": "Proyeutu:",
+ "translate-translations-including-no-param": "Por favor, conseña una clave de mensaxe válida nel parámetru de subpáxina",
+ "translate-translations-history-short": "h",
+ "languagestats": "Estadístiques de llingua",
+ "languagestats-summary": "Esta páxina amuesa les estadístiques de traducción de tolos grupos de mensaxes d'una llingua.",
+ "messagegroupstats-summary": "Esta páxina amuesa les estadístiques del grupu de mensaxes.",
+ "languagestats-stats-for": "Estadístiques de traducción pal $1 ($2).",
+ "languagestats-recenttranslations": "traducciones recientes",
+ "translate-langstats-incomplete": "Dalgunes estadístiques d'esta páxina tan incompletes. Recargala pa ver más estadístiques.",
+ "translate-langstats-expand": "espander",
+ "translate-langstats-collapse": "anubrir",
+ "translate-langstats-expandall": "espander too",
+ "translate-langstats-collapseall": "anubrir too",
+ "translate-language-code": "Códigu de llingua",
+ "translate-language-code-field-name": "Códigu de llingua:",
+ "translate-suppress-complete": "Anubrir los grupos de mensaxes completamente traducíos",
+ "translate-ls-noempty": "Anubrir los grupos de mensaxes completamente ensin traducir",
+ "translate-language": "Llingua",
+ "translate-total": "Mensaxes",
+ "translate-untranslated": "Ensin traducir",
+ "translate-percentage-complete": "Completu",
+ "translate-percentage-fuzzy": "Anticuaos",
+ "translate-languagestats-overall": "Tolos grupos de mensaxes xuntos",
+ "translate-ls-submit": "Amosar estadístiques",
+ "translate-ls-column-group": "Grupu de mensaxes",
+ "translate-mgs-pagename": "Estadístiques del grupu de mensaxes",
+ "translate-mgs-fieldset": "Preferencies de vista",
+ "translate-mgs-group": "Grupu de mensaxes:",
+ "translate-mgs-nocomplete": "Nun amosar les llingües cola traducción completa",
+ "translate-mgs-noempty": "Nun amosar les llingües que nun tengan traducción dala",
+ "translate-mgs-submit": "Amosar estadístiques",
+ "translate-mgs-column-language": "Llingua",
+ "translate-mgs-totals": "Toles llingües xuntes",
+ "translate-mgs-invalid-group": "El grupu $1 especificáu nun esiste.",
+ "translate-mgs-nothing": "Nada qu'amosar pa les estadístiques que se pidieron.",
+ "supportedlanguages": "Llingües sofitaes",
+ "supportedlanguages-summary": "Esta páxina amuesa la llista de toles llingües que sofita {{SITENAME}}, xunto colos nomes de los traductores que trabayen nelles.\nCuantes más traducciones tenga feches un traductor, más grande apaecerá'l so nome.\nEl color del solliniáu indica'l tiempu que fai dende qu'un traductor tuvo activu equí.",
+ "supportedlanguages-colorlegend": "Lleenda del color: Cabera traducción hai $1 díes.",
+ "supportedlanguages-translators": "{{PLURAL:$2|{{GENDER:$3|Traductor|Traductora}}|Traductores}}: $1",
+ "supportedlanguages-recenttranslations": "traducciones recientes",
+ "supportedlanguages-count": "$1 {{PLURAL:$1|llingua|llingües}} en total.",
+ "supportedlanguages-activity": "$1: $2 {{PLURAL:$2|edición|ediciones}}; cabera edición hai $3 {{PLURAL:$3|día|díes}}",
+ "translate-save": "Guardar ($1)",
+ "translate-jssti-add": "Amestar a la llista",
+ "managemessagegroups": "Xestión de grupos de mensaxes",
+ "translate-smg-notallowed": "Nun tienes permisu pa executar esta aición.",
+ "translate-smg-nochanges": "Nun hai cambios que procesar.",
+ "translate-smg-submit": "Unviar cambios pa procesamientu",
+ "translate-smg-submitted": "S'anovaron les definiciones de los mensaxes. Los cambios tan procesandose'n segundu planu.",
+ "translate-smg-more": "Habrá más cambios a procesar dempués d'unviar estos.",
+ "translate-smg-left": "Conteníu del mensaxe nel wiki",
+ "translate-smg-right": "Cambios entrantes",
+ "translate-manage-import-diff": "Mensaxe $1 | Aiciones: $2",
+ "translate-manage-import-new": "Mensaxe nuevu $1",
+ "translate-manage-import-deleted": "Mensaxe desaniciáu $1",
+ "translate-manage-action-import": "Importar",
+ "translate-manage-action-conflict": "Importar y marcar pa revisar",
+ "translate-manage-action-ignore": "Inorar",
+ "translate-manage-action-fuzzy": "Importar y marcar les traducciones pa revisar",
+ "translate-manage-nochanges": "Nun hai cambeos nes definiciones de los mensaxes d'esti grupu.",
+ "translate-manage-nochanges-other": "Nun hebo cambios nesta llingua.\nUsa l'enllaz d'abaxo pa volver a la vista de detalles del grupu.",
+ "translate-manage-inconsistent": "Se detectó una inconsistencia na solicitú.\nPor favor revisa los cambios y vuelve a probar.\nDetalles: $1.",
+ "translate-manage-toolong": "Pasose'l tiempu máximu de procesamentu de $1 {{PLURAL:$1|segundu|segundos}}.\nVuelvi a unviar el formulariu pa continuar procesandolu.",
+ "translate-manage-import-summary": "Importando una versión nueva d'una fonte esterna",
+ "translate-manage-conflict-summary": "Importando una versión nueva d'una fonte esterna.\nPor favor, compruebala.",
+ "translate-manage-fuzzy-summary": "La definición del mensaxe camudó",
+ "translate-manage-submit": "Executar",
+ "translate-manage-intro-other": "Debaxo ta la llista de cambios nes traducciones de la llingua $1.\nPor favor, revise los cambios y escueya l'aición que quier facer pa cada anovamientu.\nSi escueye inorar los cambios, esta aición ye sólo temporal.",
+ "translate-manage-import-ok": "Importada: $1",
+ "translate-manage-import-done": "¡Importación completada!",
+ "importtranslations": "Importar traducciones",
+ "translate-import-from-local": "Xubir un ficheru llocal:",
+ "translate-import-load": "Xubir ficheru",
+ "translate-import-err-dl-failed": "Nun se pudo obtener el ficheru:\n$1",
+ "translate-import-err-ul-failed": "La xuba del ficheru nun tuvo éxitu",
+ "translate-import-err-invalid-title": "El nome de ficheru proporcionáu \"<nowiki>$1</nowiki>\" nun ye válidu.",
+ "translate-import-err-no-such-file": "El ficheru \"<nowiki>$1</nowiki>\" nun esiste o nun se xubió de mou llocal.",
+ "translate-import-err-stale-group": "El grupu de mensaxes al que pertenez esti ficheru nun esiste.",
+ "translate-import-err-no-headers": "El ficheru nun ye un ficheru Gettext bien formáu nel formatu d'estensión Translate:\nNun se puen determinar el grupu y la llingua a partir de les testeres del ficheru.",
+ "translate-import-err-warnings": "El ficheru nun ta bien formáu.\nAsegúrate de que'l to editor nun desanicia los campos msgctxt.\nDetalles: $1",
+ "translate-js-summary": "Resume:",
+ "translate-js-save": "Guardar",
+ "translate-js-next": "Guardar y abrir el siguiente",
+ "translate-js-nonext": "Esti yera'l caberu mensaxe d'esta páxina.",
+ "translate-js-skip": "Saltar al siguiente",
+ "translate-js-save-failed": "Falló'l guardáu. Por favor, informa d'esti fallu.",
+ "translate-js-history": "Historial de traducciones",
+ "translate-js-support": "Facer una entruga",
+ "translate-js-support-title": "Pidir ayuda si nun hai información bastante pa traducir esti mensaxe correutamente.",
+ "translate-js-support-unsaved-warning": "Tienes traducciones ensin guardar.",
+ "translate-gs-pos": "Pos.",
+ "translate-gs-code": "Códigu",
+ "translate-gs-continent": "Continente",
+ "translate-gs-speakers": "Falantes",
+ "translate-gs-score": "Pesu",
+ "translate-gs-multiple": "Múltiple",
+ "translate-gs-count": "Recuentu",
+ "translate-gs-total": "Total",
+ "translate-gs-avgscore": "Pesu mediu",
+ "translate-documentation-language": "Documentación del mensaxe",
+ "translate-searchprofile": "Traducciones",
+ "translate-searchprofile-tooltip": "Guetar en toles traducciones",
+ "translate-search-languagefilter": "Peñerar por llingua:",
+ "translate-search-nofilter": "Ensin peñera",
+ "translate-messagereview-submit": "Marcar como revisao",
+ "translate-messagereview-progress": "Marcando como revisao...",
+ "translate-messagereview-failure": "Error al marcar como revisao: $1",
+ "translate-messagereview-done": "Revisao",
+ "translate-messagereview-reviews": "Revisao por {{PLURAL:$1|un usuariu|$1 usuarios}}",
+ "translate-messagereview-reviewswithyou": "Revisao por {{PLURAL:$1|vusté|$1 usuarios, incluíu vusté}}",
+ "api-error-invalidrevision": "Nun s'alcontró la traducción",
+ "api-error-unknownmessage": "Nun s'alcontró'l mensaxe",
+ "api-error-fuzzymessage": "La traducción ta marcada como aproximada",
+ "api-error-owntranslation": "Nun pue marcar les traducciones propies como revisaes.",
+ "translate-messagereview-no-fuzzy": "Les traducciones aproximaes nun puen marcase como revisaes.",
+ "translate-messagereview-no-own": "Nun pue marcar les traducciones propies como revisaes.",
+ "translate-messagereview-doit": "Marcar esta traducción como revisada.",
+ "log-name-translationreview": "Rexistru de revisión de la traducción",
+ "log-description-translationreview": "Rexistru de toles revisiones de les traducciones y grupos de mensaxes.",
+ "logentry-translationreview-message": "$1 {{GENDER:$2|revisó}} la traducción $3",
+ "logentry-translationreview-group": "$1 {{GENDER:$2|camudó}} l'estáu de les traducciones al $4 del grupu de mensaxes $3 de $6 a $7",
+ "group-translate-sandboxed": "Traductores ensin aprobar",
+ "group-translate-sandboxed-member": "{{GENDER:$1|traductor|traductora}} ensin aprobar",
+ "right-translate-sandboxmanage": "Alministrar los usuarios de la zona de pruebes",
+ "action-translate-sandboxmanage": "alministrar los usuarios de la zona de pruebes",
+ "right-translate-sandboxaction": "Executar aiciones de la llista blanca pa los usuarios de la zona de pruebes",
+ "action-translate-sandboxaction": "executar aiciones de la llista blanca pa los usuarios de la zona de pruebes",
+ "translate-workflow-state-": "(desactiváu)",
+ "translate-workflowstatus": "Estáu: $1",
+ "translate-workflow-set-do": "Activar",
+ "translate-workflow-set-doing": "Activando...",
+ "translate-workflow-set-done": "¡Activáu!",
+ "translate-workflow-set-error-alreadyset": "L'estáu solicitáu ye idénticu al estáu actual.",
+ "translate-workflow-autocreated-summary": "Creación automática de la páxina pal estáu \"$1\" del fluxu de trabayu",
+ "translate-stats-workflow": "Estáu",
+ "translate-workflowgroup-label": "Estaos del fluxu de trabayu",
+ "translate-workflowgroup-desc": "Esti grupu de mensaxes amuesa los estaos del fluxu de trabayu de traducción.\nLos estaos se definen na variable de configuración $wgTranslateWorkflowStates.",
+ "translate-dynagroup-recent-label": "Traducciones recientes",
+ "translate-dynagroup-recent-desc": "Esti grupu de mensaxes amuesa toles traducciones más nueves nesta llingua.\nYe enforma afayadizo pa les xeres de revisión.",
+ "translate-dynagroup-additions-label": "Novedaes",
+ "translate-dynagroup-additions-desc": "Esti grupu de mensaxes amuesa los mensaxes nuevos y camudaos.",
+ "translate-dynagroup-by": "Traducción fecha por {{GENDER:$1|$1}}",
+ "translate-dynagroup-byc": "Traducción fecha por {{GENDER:$1|$1}} ($2)",
+ "translate-dynagroup-last": "Caberu cambiu fechu por {{GENDER:$1|$1}}",
+ "translate-dynagroup-lastc": "Caberu cambiu fechu por {{GENDER:$1|$1}} ($2)",
+ "translate-gethelp": "Ayuda",
+ "translate-msggroupselector-projects": "Grupu de mensaxes",
+ "translate-msggroupselector-search-placeholder": "Guetar nos grupos",
+ "translate-msggroupselector-search-all": "Toos",
+ "translate-msggroupselector-search-recent": "De recién",
+ "translate-msggroupselector-view-subprojects": "$1 {{PLURAL:$1|subgrupu|subgrupos}}",
+ "tux-languageselector": "Traducir al",
+ "tux-tab-all": "Toos",
+ "tux-tab-untranslated": "Ensin traducir",
+ "tux-tab-outdated": "Anticuaos",
+ "tux-tab-translated": "Traducíos",
+ "tux-tab-unproofread": "Ensin revisar",
+ "tux-edit": "Editar",
+ "tux-status-optional": "Opcional",
+ "tux-status-fuzzy": "Anticuada",
+ "tux-status-proofread": "Revisao",
+ "tux-status-translated": "Traducíu",
+ "tux-status-saving": "Guardando...",
+ "tux-status-unsaved": "Ensin guardar",
+ "tux-editor-placeholder": "La to traducción",
+ "tux-editor-paste-original-button-label": "Apegar el testu fonte",
+ "tux-editor-discard-changes-button-label": "Descartar los cambeos",
+ "tux-editor-save-button-label": "Guardar la traducción",
+ "tux-editor-skip-button-label": "Saltar a la siguiente",
+ "tux-editor-cancel-button-label": "Encaboxar",
+ "tux-editor-confirm-button-label": "Confirmar la traducción",
+ "tux-editor-shortcut-info": "Calque \"$1\" pa guardar, \"$2\" pa saltar al siguiente mensaxe o $3 pa otros atayos.",
+ "tux-editor-edit-desc": "Editar la documentación",
+ "tux-editor-add-desc": "Amestar la documentación",
+ "tux-editor-suggestions-title": "Suxerencies",
+ "tux-editor-in-other-languages": "N'otres llingües",
+ "tux-editor-need-more-help": "¿Necesites más ayuda?",
+ "tux-editor-ask-help": "Pidir más información",
+ "tux-editor-tm-match": "$1% de coincidencia",
+ "tux-warnings-more": "{{PLURAL:$1|$1 más}}",
+ "tux-warnings-hide": "anubrir",
+ "tux-editor-save-failed": "Falló guardar la traducción: $1",
+ "tux-editor-n-uses": "usada $1 {{PLURAL:$1|vez|veces}}",
+ "tux-editor-message-desc-more": "Ver más",
+ "tux-editor-message-desc-less": "Ver menos",
+ "tux-editor-clear-translated": "Anubrir traducíos",
+ "tux-editor-proofreading-mode": "Revisar",
+ "tux-editor-translate-mode": "Llista",
+ "tux-editor-proofreading-hide-own-translations": "Anubrir les tos traducciones",
+ "tux-editor-proofreading-show-own-translations": "Amosar les tos traducciones",
+ "tux-proofread-action-tooltip": "Marcar como revisao",
+ "tux-proofread-edit-label": "Editar",
+ "tux-editor-page-mode": "Páxina",
+ "tux-editor-outdated-warning": "Esta traducción pue necesitar un anovamientu.",
+ "tux-editor-outdated-warning-diff-link": "Amosar les diferencies",
+ "tux-editor-doc-editor-placeholder": "Documentación del mensaxe",
+ "tux-editor-doc-editor-save": "Guardar documentación",
+ "tux-editor-doc-editor-cancel": "Encaboxar",
+ "tux-messagetable-more-messages": "$1 {{PLURAL:$1|mensaxe|mensaxes}} más",
+ "tux-messagetable-loading-messages": "Cargando $1 {{PLURAL:$1|mensaxe|mensaxes}}...",
+ "tux-message-filter-placeholder": "Peñerar llista",
+ "tux-message-filter-result": "{{PLURAL:$1|Alcontrose un resultáu|Alcontraronse $1 resultaos}} pa \"$2\"",
+ "tux-message-filter-advanced-button": "Gueta avanzada",
+ "tux-message-filter-optional-messages-label": "Mensaxes opcionales",
+ "tux-proofread-translated-by-self": "Traducío por ti",
+ "tux-empty-list-all": "Esti grupu de mensaxes ta baleru",
+ "tux-empty-list-all-guide": "Seleicione un grupu de mensaxes diferente pa traducir",
+ "tux-translate-page-no-such-group": "<strong>El grupu indicáu nun esiste.</strong> Seleicione un grupu de mensaxes distintu.",
+ "tux-empty-list-translated": "Nun hai mensaxes traducíos",
+ "tux-empty-list-translated-guide": "Pue ayudar cola traducción",
+ "tux-empty-list-translated-action": "Traducir",
+ "tux-empty-no-messages-to-display": "Nun hai dengún mensaxe qu'amosar.",
+ "tux-empty-there-are-optional": "Hai mensaxes opcionales que nun s'amuesen na llista",
+ "tux-empty-show-optional-messages": "Ver los mensaxes opcionales",
+ "tux-empty-no-outdated-messages": "Nun hai mensaxes anticuaos",
+ "tux-empty-nothing-to-proofread": "Nun hai nada pa revisar",
+ "tux-empty-you-can-help-providing": "Pue ayudar amestando traducciones nueves",
+ "tux-empty-nothing-new-to-proofread": "Nun hai nada nuevo pa revisar",
+ "tux-empty-you-can-review-already-proofread": "Pue revisar les traducciones que yá revisaron otres persones.",
+ "tux-empty-list-other": "Nun hai ren que traducir",
+ "tux-empty-list-other-guide": "Pue ayudar a revisar les traducciones esistentes",
+ "tux-empty-list-other-action": "Revisar les traducciones",
+ "tux-empty-list-other-link": "Ver tolos mensaxes",
+ "tux-editor-close-tooltip": "Zarrar",
+ "tux-editor-expand-tooltip": "Espander",
+ "tux-editor-collapse-tooltip": "Plegar",
+ "tux-editor-message-tools-history": "Historial",
+ "tux-editor-message-tools-delete": "Desaniciar",
+ "tux-editor-message-tools-translations": "Toles traducciones",
+ "tux-editor-loading": "Cargando...",
+ "translate-search-more-languages-info": "$1 {{PLURAL:$1|llingua|llingües}} más",
+ "translate-statsbar-tooltip": "$1% traducíos, $2% revisaos",
+ "translate-statsbar-tooltip-with-fuzzy": "$1% traducíos, $2% revisaos, $3% anticuaos",
+ "translate-search-more-groups-info": "$1 {{PLURAL:$1|grupu|grupos}} más",
+ "translate-ulsdep-title": "Error de configuración",
+ "translate-ulsdep-body": "La estensión Translate depende de la [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:UniversalLanguageSelector estensión Universal Language Selector].",
+ "tux-session-expired": "La sesión zarróse yá. Anicia sesión nuna llingüeta aparte. Alternativamente, copia les traducciones ensin guardar, anicia sesión y vuelvi a esta páxina."
+}
diff --git a/MLEB/Translate/i18n/core/av.json b/MLEB/Translate/i18n/core/av.json
new file mode 100644
index 00000000..be7b4922
--- /dev/null
+++ b/MLEB/Translate/i18n/core/av.json
@@ -0,0 +1,11 @@
+{
+ "@metadata": {
+ "authors": [
+ "Gazimagomedov"
+ ]
+ },
+ "translate-total": "Кагътал",
+ "translate-untranslated": "Таржама гьабичӀел",
+ "translate-mgs-group": "Кагътазул дандбакӀари:",
+ "translate-msggroupselector-projects": "Кагътазул сияхӀ"
+}
diff --git a/MLEB/Translate/i18n/core/az.json b/MLEB/Translate/i18n/core/az.json
new file mode 100644
index 00000000..894412c3
--- /dev/null
+++ b/MLEB/Translate/i18n/core/az.json
@@ -0,0 +1,214 @@
+{
+ "@metadata": {
+ "authors": [
+ "Cekli829",
+ "Irada",
+ "Khan27",
+ "Wertuose"
+ ]
+ },
+ "translate": "Tərcümə et",
+ "translate-desc": "MediaViki və əlavələrini tərcümə etmək üçün [[Special:Translate|Xüsusi səhifə]]",
+ "translate-taskui-view": "Bütün mesajları göstər",
+ "translate-taskui-untranslated": "Tərcümə olunmayanları göstər",
+ "translate-taskui-optional": "İstənilən mesajları göstər",
+ "translate-taskui-acceptqueue": "Mən təkcə mesajları qəbul edə bilərəm",
+ "translate-taskui-reviewall": "Bütün tərcümələri gözdən keçir",
+ "translate-taskui-export-to-file": "Yerli formatda ixrac et",
+ "translate-taction-translate": "Tərcümə et",
+ "translate-taction-proofread": "Düzənləmə",
+ "translate-taction-lstats": "Dil statistikaları",
+ "translate-taction-mstats": "Mesaj qrupu statistikaları",
+ "translate-taction-export": "Köçür",
+ "translate-taction-disabled": "Bu hərəkət bu vikidə istifadə oluna bilməz.",
+ "translate-page-no-such-language": "Göstərilən dil etibarsızdır.",
+ "translate-page-no-such-group": "Göstərilən qrup etibarsızdır.",
+ "translate-page-disabled": "Qrupdakı bu dilə tərcümələr etibarsızdır.\nSəbəb:\n\n<em>$1</em>",
+ "translate-language-disabled": "Bu dilə tərcümə etibarsızdır.",
+ "translate-page-settings-legend": "Tənzimləmələr",
+ "translate-page-group": "Qrup",
+ "translate-page-language": "Dil",
+ "translate-page-limit": "Limit",
+ "translate-page-limit-option": "$1 {{PLURAL:$1|xəbər|xəbəri}} səhifədə göstər",
+ "translate-submit": "Seç",
+ "translate-page-navigation-legend": "Naviqasiya",
+ "translate-page-showing": "$3 mesajdan $1 ilə $2 arasında olanlar göstərilir.",
+ "translate-page-showing-all": "$1 sayda {{PLURAL:$1|mesaj|mesaj}} göstərilir.",
+ "translate-page-showing-none": "Göstəriləcək mesaj yoxdur.",
+ "translate-next": "Növbəti səhifə",
+ "translate-prev": "Əvvəlki səhifə",
+ "translate-page-description-legend": "Qrup haqqında məlumat",
+ "translate-page-description-hasoptional-open": "İstənilən mesajları göstər.",
+ "translate-page-edit": "redaktə et",
+ "translate-ext-url": "<hr />Veb səhifəsi: $1",
+ "translate-optional": "(istəyə bağlı)",
+ "translate-ignored": "(sayılmayan)",
+ "translate-edit-title": "Redaktə et \"$1\"",
+ "translate-edit-definition": "Mesaj təsviri",
+ "translate-edit-translation": "Tərcümə",
+ "translate-edit-contribute": "töhfə ver",
+ "translate-edit-no-information": "''Bu mesajın təsviri yoxdur.''\n''Əgər bu mesajı harada və necə istifadə etməyi bilirsinizsə, onda bu mesaj üçün bir anlayış əlavə edərək digər tərcüməçilərə kömək ola bilərsiniz.''",
+ "translate-edit-information": "Mesaj haqqında məlumat(lar) ($1)",
+ "translate-edit-in-other-languages": "Digər dillərdəki mesajı",
+ "translate-edit-warnings": "Yarımçıq tərcümələr haqqında xəbərdarlıqlar",
+ "translate-edit-tmsugs": "Tərcümə yaddaşı və tərcümə maşınından təkliflər",
+ "translate-edit-tmmatch-source": "Tərcümə mənbəsi mətni: $1",
+ "translate-edit-tmmatch": "$1% oxşar",
+ "translate-use-suggestion": "Cari tərcüməni bu təkliflə dəyişdir.",
+ "translate-edit-nopermission": "Sizə mesajları tərcümə etmək üçün icazə lazımdır.",
+ "translate-edit-askpermission": "İcazə istə",
+ "translate-magic-pagename": "Genişlənmiş MediaViki tərcüməsi",
+ "translate-magic-module": "Modul:",
+ "translate-magic-cm-export": "Köçür",
+ "translate-magic-cm-current": "Hazırki",
+ "translate-magic-cm-original": "Orijinal",
+ "translate-magic-cm-comment": "Şərh:",
+ "translate-magic-cm-save": "Qeyd et",
+ "translate-magic-cm-savefailed": "Saxlamaq mümkün olmadı",
+ "translate-magic-special": "Özlə səhifə ləqəbləri",
+ "translate-magic-words": "Sehirli sözlər",
+ "translate-magic-namespace": "Ad sahəsi adları",
+ "translate-magic-notsaved": "Redaktəniz saxlanılmadı!",
+ "translate-magic-saved": "Dəyişiklikləriniz müvəffəqiyyətlə qeyd olundu.",
+ "translate-checks-parameters": "İzlənilən {{PLURAL:$2|parametr}} istifadə olunmur:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-pagename": "Anlayışdakı ad sahəsi dəyişdirilib",
+ "translate-pref-nonewsletter": "Mənə e-poçt xəbər bülleteni göndərmə",
+ "translate-pref-editassistlang": "Köməkçi dillər:",
+ "prefs-translate": "Tərcümə seçimləri",
+ "translate-pref-editassistlang-bad": "Siyahıdakı etibarsız dil kodu:\n<nowiki>$1</nowiki>.",
+ "right-translate": "Tərcümə interfeysindən istifadə edərək redaktə et",
+ "right-translate-manage": "Mesaj qruplarını idarə et",
+ "action-translate-manage": "mesaj qruplarını idarə et",
+ "right-translate-import": "Xətdə olmayan tərcümələri içəri köçür",
+ "action-translate-import": "xətdə olmayan tərcümələri içəri köçür",
+ "right-translate-messagereview": "Tərcümələri gözdən keçir",
+ "right-translate-groupreview": "Mesaj qruplarının iş axını vəziyyətini dəyişdir",
+ "translate-rc-translation-filter": "Tərcümələri filtirlə:",
+ "translate-rc-translation-filter-no": "Heç bir şey etmə",
+ "translate-rc-translation-filter-only": "Təkcə tərcümələri göstər",
+ "translate-rc-translation-filter-site": "Təkcə sayt mesajlarını dəyişdir",
+ "translationstats": "Tərcümə statistikaları",
+ "translate-stats-edits": "Redaktələr",
+ "translate-stats-users": "Tərcüməçilər",
+ "translate-stats-registrations": "Qeydiyyatlar",
+ "translate-stats-reviews": "Yoxlamalar",
+ "translate-stats-reviewers": "İncələyənlər",
+ "translate-statsf-options": "Qrafik seçimləri",
+ "translate-statsf-width": "Eni piksel olaraq:",
+ "translate-statsf-height": "Hündürlük piksel olaraq:",
+ "translate-statsf-days": "Gün olaraq müddət:",
+ "translate-statsf-start": "Başlanğıc tarixi:",
+ "translate-statsf-scale": "Məlumat:",
+ "translate-statsf-scale-months": "Aylar",
+ "translate-statsf-scale-weeks": "Həftələr",
+ "translate-statsf-scale-days": "Günlər",
+ "translate-statsf-scale-hours": "Saatlar",
+ "translate-statsf-count": "Ölçmək:",
+ "translate-statsf-count-edits": "Redaktələrin sayı",
+ "translate-statsf-count-users": "Aktiv tərcüməçilər",
+ "translate-statsf-count-registrations": "Yeni istifadəçilər",
+ "translate-statsf-count-reviews": "Tərcümə qiymətləndirmələri",
+ "translate-statsf-count-reviewers": "İncələyənlər",
+ "translate-statsf-language": "Dil kodlarının vergül ilə ayrılmış siyahısı:",
+ "translate-statsf-group": "Qrup kodlarının vergül ilə ayrılmış siyahısı:",
+ "translate-statsf-submit": "Ön izləmə",
+ "translate-tag-category": "Tərcümə oluna bilən səhifələr",
+ "translate-tag-page-desc": "[[$2|$1]] viki-səhifəsinin $3 ($4) dilindən tərcüməsi.",
+ "translate-sidebar-alltrans": "Başqa dillərdə",
+ "translations": "Bütün tərcümələr",
+ "translate-translations-no-message": "\"$1\" tərcümə oluna bilməyən mesajdır",
+ "translate-translations-none": "\"$1\" üçün tərcümə yoxdur.",
+ "translate-translations-count": "{{PLURAL:$1|Bir tərcümə|$1 tərcümə}} tapıldı.",
+ "translate-translations-fieldset-title": "Mesaj",
+ "translate-translations-messagename": "Ad:",
+ "translate-translations-project": "Layihə:",
+ "translate-translations-history-short": "t",
+ "languagestats": "Dil statistikaları",
+ "languagestats-recenttranslations": "son tərcümələr",
+ "translate-langstats-expand": "genişləndir",
+ "translate-langstats-collapse": "gizlə",
+ "translate-langstats-expandall": "hamısını genişləndir",
+ "translate-langstats-collapseall": "hamısını gizlət",
+ "translate-language-code": "Dil kodu",
+ "translate-language-code-field-name": "Dil kodu:",
+ "translate-suppress-complete": "Tərcümə olunmuş mesaj qruplarını gətir",
+ "translate-ls-noempty": "Tərcümə olunmamış mesaj qruplarını gətir",
+ "translate-language": "Dil",
+ "translate-total": "Mesajlar",
+ "translate-untranslated": "Tərcümə olunmamış",
+ "translate-percentage-complete": "Tamamlanma",
+ "translate-percentage-fuzzy": "Köhnə tarixli",
+ "translate-languagestats-overall": "Bütün mesaj qrupları ilə birlikdə",
+ "translate-ls-submit": "Statistikaları göstər",
+ "translate-ls-column-group": "Mesaj qrupu",
+ "translate-mgs-pagename": "Mesaj qrupu statistikaları",
+ "translate-mgs-fieldset": "İstinadlar ekranı",
+ "translate-mgs-group": "Mesaj qrupu:",
+ "translate-mgs-nocomplete": "Tərcümələri tamamlanmış dilləri göstərmə",
+ "translate-mgs-noempty": "Hər hansı bir tərcüməsi olmayan dilləri göstərmə",
+ "translate-mgs-submit": "Statistikaları göstər",
+ "translate-mgs-column-language": "Dil",
+ "translate-mgs-totals": "Bütün dillərlə birlikdə",
+ "supportedlanguages": "Dəstəklənən dillər",
+ "supportedlanguages-colorlegend": "Rəng üçün açıqlama: Son tərcümə $1 gün əvvəl.",
+ "supportedlanguages-translators": "{{PLURAL:$2|{{GENDER:$3|tərcüməçi}}|tərcüməçi}}: $1",
+ "supportedlanguages-recenttranslations": "son tərcümələr",
+ "supportedlanguages-count": "Ümumi olaraq $1 {{PLURAL:$1|dil}}.",
+ "supportedlanguages-activity": "$1: $2 {{PLURAL:$2|redaktə}} - son redaktə $3 {{PLURAL:$3|gün}} əvvəl",
+ "translate-save": "Saxla ($1)",
+ "translate-jssti-add": "Siyahıya əlavə et",
+ "managemessagegroups": "Mesaj qrupu idarəsi",
+ "translate-smg-notallowed": "Bu əməliyyatı yerinə yetirmək üçün icazəniz yoxdur.",
+ "translate-smg-nochanges": "Emal etmək üçün dəyişiklik yoxdur.",
+ "translate-smg-submit": "Emal etmək üçün dəyişiklikləri göndərin",
+ "translate-smg-submitted": "Mesaj anlayışları yeniləndi. Dəyişikliklər arxa planda emal olunur.",
+ "translate-smg-left": "Vikidə mesaj məzmunu",
+ "translate-smg-right": "Gələn dəyişikliklər",
+ "translate-manage-import-diff": "Mesaj $1 | Hərəkət: $2",
+ "translate-manage-import-new": "Yeni mesaj $1",
+ "translate-manage-import-deleted": "Silinmiş mesaj $1",
+ "translate-manage-action-ignore": "İqnor et",
+ "translate-js-summary": "Açıqlama:",
+ "translate-js-save": "Saxla",
+ "translate-js-next": "Saxla və sonrakını aç",
+ "translate-js-nonext": "Bu səhifədəki son mesaj idi.",
+ "translate-js-skip": "Sonrakına keç",
+ "translate-js-save-failed": "Saxlama uğursuz oldu. Lütfən bu xətanı bildirin.",
+ "translate-js-history": "Tərcümə tarixi",
+ "translate-js-support": "Sual ver",
+ "translate-gs-code": "Kod",
+ "translate-gs-score": "Hesab",
+ "translate-gs-multiple": "Çoxlu",
+ "translate-gs-count": "Sayı",
+ "translate-gs-total": "Ümumi",
+ "translate-documentation-language": "Mesaj sənədləşməsi",
+ "translate-searchprofile": "Tərcümələr",
+ "translate-searchprofile-tooltip": "Bütün tərcümələrdən axtar",
+ "translate-messagereview-submit": "Təsdiqlə",
+ "translate-messagereview-progress": "Qəbul edilir...",
+ "translate-messagereview-done": "Qəbul olundu",
+ "translate-gethelp": "Kömək",
+ "translate-msggroupselector-projects": "Mesaj qrupu",
+ "translate-msggroupselector-search-placeholder": "Qrupları axtar",
+ "translate-msggroupselector-search-all": "Hamısı",
+ "translate-msggroupselector-search-recent": "Son",
+ "translate-msggroupselector-view-subprojects": "$1 {{PLURAL:$1|altqrup|altqrup}}",
+ "tux-languageselector": "Tərcümə",
+ "tux-tab-all": "Hamısı",
+ "tux-tab-untranslated": "Tərcümə olunmamış",
+ "tux-tab-outdated": "Köhnə tarixli",
+ "tux-tab-translated": "Tərcümə edilmiş",
+ "tux-edit": "Redaktə et",
+ "tux-status-optional": "İstəyə bağlı",
+ "tux-status-fuzzy": "Köhnə tarixli",
+ "tux-status-proofread": "Düzənləmə",
+ "tux-status-translated": "Tərcümə edilmiş",
+ "tux-status-saving": "Saxlanılır...",
+ "tux-status-unsaved": "Saxlanılmayıb",
+ "tux-editor-placeholder": "Sənin tərcümələrin",
+ "tux-editor-paste-original-button-label": "Mənbə mətn yapışdır",
+ "tux-editor-save-button-label": "Tərcüməni saxla",
+ "tux-editor-skip-button-label": "Sonrakına keç",
+ "tux-editor-confirm-button-label": "Tərcüməni təsdiq edin",
+ "tux-editor-shortcut-info": "Yaddaşda saxlamaq üçün \"$1\", növbəti mesaja keçmək üçün \"$2\", digər qısayolları açmaq üçün \"$3\" düyməsini basın."
+}
diff --git a/MLEB/Translate/i18n/core/azb.json b/MLEB/Translate/i18n/core/azb.json
new file mode 100644
index 00000000..ecd77471
--- /dev/null
+++ b/MLEB/Translate/i18n/core/azb.json
@@ -0,0 +1,360 @@
+{
+ "@metadata": {
+ "authors": [
+ "Calak",
+ "E THP",
+ "Ebrahimi-amir",
+ "Mousa",
+ "Reza1615"
+ ]
+ },
+ "translate": "ترجومه ائت",
+ "translate-desc": "مئدیاویکی و سونرانی چئویرمک اوچون [[Special:Translate|اؤزل صحیفه]]",
+ "translate-taskui-view": "بوتون مئساژلاری گؤستر",
+ "translate-taskui-untranslated": "چئویریلمه‌میش مئساژلاری گؤستر",
+ "translate-taskui-optional": "ایستگه باغلی مئساژلاری گؤستر",
+ "translate-taskui-acceptqueue": "یالنیز من قبول ائده بیلن مئساژلاری",
+ "translate-taskui-reviewall": "بوتون چئویریلری گؤزدن گئچیت",
+ "translate-taskui-export-to-file": "دوغما فورمت‌ده چیخارت",
+ "translate-taskui-export-as-po": "آفلاین چئویرمک اوچون چیخارت",
+ "translate-taction-translate": "چئویرمک",
+ "translate-taction-proofread": "یئنی‌دن باخیش",
+ "translate-taction-lstats": "دیل آماری",
+ "translate-taction-mstats": "مئساژ قروپ آماری",
+ "translate-taction-export": "ائشیگه آپارماق",
+ "translate-taction-disabled": "بو ویکی‌ده بو ایش باغلانیب‌دیر.",
+ "translate-page-no-such-language": "بللندیریلمیش دیل گئچرسیزدیر.",
+ "translate-page-no-such-group": "بللندیریلمیش قروپ گئچرسیزدیر.",
+ "translate-page-disabled": "بو دیل‌ده بو گروپون چئویرمه‌سی باغلانیب‌دیر.\nدلیل:\n\n<em>$1</em>",
+ "translate-language-disabled": "بو دیله چئویرمک باغلانیب‌دیر.",
+ "translate-page-settings-legend": "تنظیملر",
+ "translate-page-group": "قروپ",
+ "translate-page-language": "دیل",
+ "translate-page-limit": "سینیر",
+ "translate-page-limit-option": "صحیفه‌ده {{PLURAL:$1|بیر|$1}} مئساژ",
+ "translate-submit": "گتیر",
+ "translate-page-navigation-legend": "دولانماق",
+ "translate-page-showing": "$3 مئساژ ایچینده $1-دن $2-ه گؤستریلیر.",
+ "translate-page-showing-all": "{{PLURAL:$1|بیر|$1}} مئساژ گؤستریلیر.",
+ "translate-page-showing-none": "گؤسترمک اوچون بیر مئساژ یوخدور.",
+ "translate-next": "سونراکی صحیفه",
+ "translate-prev": "قاباقکی صحیفه",
+ "translate-page-description-legend": "بو قروپ اوچون بیلگیلر",
+ "translate-page-description-hasoptional": "بو مئساژ گروپوندا، ایستگه باغلی مئساژلار واردیر.\nایستگه باغلی مئساژلار یالنیز دیلین خاص شرطلری اولاندا چئویرمه‌لی‌دیرلر، مثلاً اگر دیل‌ده سؤزجوک آراسی بوشلوق یوخدور، یا بعضی آدلار گرک چئویریله. $1",
+ "translate-page-description-hasoptional-open": "ایستگه باغلی مئساژلاری گؤستر.",
+ "translate-page-edit": "دَییشدیر",
+ "translate-ext-url": "<hr />سایت: $1",
+ "translate-optional": "(ایستگه باغلی)",
+ "translate-ignored": "(یوخ ساییلمیش)",
+ "translate-edit-title": "«$1»-ی دَییشدیر",
+ "translate-edit-definition": "مئساژ تانیتیمی",
+ "translate-edit-translation": "چئویرمک",
+ "translate-edit-contribute": "چالیشماق",
+ "translate-edit-no-information": "''بو مئساژ اوچون سندلندیرمه یوخدور.''\n''اگر سیز بیلیرسیز بو مئساژ نئجه ایشلنیب‌دیر، بو مئساژی سندلندیرمک‌له، آیری ترجومه‌چیلره یاردیم ائده بیلرسیز.''",
+ "translate-edit-information": "مئساژ اوچون بیلگیلر ($1)",
+ "translate-edit-in-other-languages": "مئساژ آیری دیل‌لرده",
+ "translate-edit-committed": "یازیلیم‌دا ایندیکی ترجومه",
+ "translate-edit-warnings": "قورتاریلمامیش چئویرمه‌لره گؤره ایخطار",
+ "translate-edit-tmsugs": "چئویرمک حافیظه‌سی و اوتوماتیک چئویرمه‌دن اؤنرلر",
+ "translate-edit-tmmatch-source": "چئویرمک قایناق یازی‌سی: $1",
+ "translate-edit-tmmatch": "$1٪ تطبیق",
+ "translate-use-suggestion": "ایندیکی چئویرمه‌نی بو اؤنره دَییشدیر.",
+ "translate-edit-nopermission": "سیز مئساژلاری چئویرمک اوچون ایجازه‌یه احتیاجیز واردیر.",
+ "translate-edit-askpermission": "ایجازه ایسته‌یین",
+ "translate-magic-pagename": "اوزادیلمیش مئدیاویکی چئویرمه‌سی",
+ "translate-magic-help": "سیز اؤزل صحیفه آیری آدلاری، سحرلی سؤزجوکلر و آدفضاسی آدلارینی چئویره بیلرسینیز.\n\nاؤزل صحیفه آدلاری و سحرلی سؤزجوکلرین نئچه چئویرمه‌لری اولا بیلر.\nچئویرمه‌لر بیر کاما (,) ایله آیریلیبلار.\n\nپروژه دانیشیق آدفضاسینی <code>$1 دانیشیق</code> چئویرمک بیر آز چتین اولا بیلر.\n<code>$1</code> گرک پروژه سایت آدی‌له دَییشیله (میثال اوچون <code>{{ns:project_talk}}</code>).\nاگر سیزین دیلینیزده، سایتین آدین چئویرمه‌مکله بیر دوزگون عیبارت یارادماق اولمور، [[Support|دستک]]-ده بیزه خبر وئرین.\n\nدَییشیکلیکلری قئید ائتماغا، ترجومه‌چی اولماغینیز لازیم‌دیر.\nآشاغیدا قئید ائتمک دویمه‌سینی وورمایانا کیمی، دَییشیکلیکلر قئید اولمایاجاقلار.",
+ "translate-magic-module": "ماژول:",
+ "translate-magic-submit": "گتیر",
+ "translate-magic-cm-export": "ائشیگه آپارماق",
+ "translate-magic-nothing-to-export": "ائشیگه آپارماق اوچون بیر شئی یوخدور.",
+ "translate-magic-cm-to-be": "گله‌جک",
+ "translate-magic-cm-current": "ایندیکی",
+ "translate-magic-cm-original": "ایلکین",
+ "translate-magic-cm-comment": "آچیخلا:",
+ "translate-magic-cm-save": "قئید ائت",
+ "translate-magic-cm-updatedusing": "[[Special:AdvancedTranslate|{{int:Translate-magic-pagename}}]] ایله گونجل‌لنمیش",
+ "translate-magic-cm-savefailed": "قئید اولونانمادی",
+ "translate-magic-special": "اؤزل صحیفه تاخما آدلاری",
+ "translate-magic-words": "سحرلی سؤزجوکلر",
+ "translate-magic-namespace": "آدفضا آدلاری",
+ "translate-magic-notsaved": "سیزین دَییشیکلیگینیز قئید اولونمادی!",
+ "translate-magic-errors": "لوطفاً آشاغیداکی چئویرمک {{PLURAL:$1|خطاسینی|خطالارنیی}} دوزلدین:",
+ "translate-magic-saved": "سیزین دَییشیکلیکلرینیز اوغورلا قئید اولوندو.",
+ "translate-checks-parameters": "بو {{PLURAL:$2|پارامِتر ایشلدیلمه‌ییب‌دیر|پارامِترلر ایشلدیلمه‌ییب‌دیلر}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-parameters-unknown": "بو {{PLURAL:$2|پارامِتر تانینماییب‌دیر|پارامِترلر تانینماییب‌دیلار}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-balance": "{{PLURAL:$2|پارانتز|پارانتزلر}} سایی جوت دئییل:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links": "بو {{PLURAL:$2|باغلانتی ایشکال‌لی‌دیر|باغلانتیلار ایشکال‌لی‌دیلار}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links-missing": "بو {{PLURAL:$2|باغلانتی یوخدور|باغلانتیلار یوخدولار}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-xhtml": "لوطفاً بو {{PLURAL:$2|اِتیکِتی دوز اِتیکِت|اِتیکِتلری دوز اِتیکِتلر}} ایله دَییشدیرین:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-plural": "قایناق‌دا <nowiki>{{PLURAL:}}</nowiki> ایشلنیب‌دیر، اما چئویرمه‌ده یوخ.",
+ "translate-checks-plural-forms": "<nowiki>{{PLURAL:}}</nowiki> اوچون {{PLURAL:$1|بیر|$1}} فورم وئریلیب‌دیر اما {{PLURAL:$2|یالنیز بیر|$2}} فورم دستکلنیر (0= و 1= فورملارینی چیخاراق).",
+ "translate-checks-plural-dupe": "<nowiki>{{PLURAL:}}</nowiki> سونوندا عینی فورملار وئریلیب‌دیر. <nowiki>{{PLURAL:$1|قویون|قویون}}</nowiki> گرک <nowiki>{{PLURAL:$1|قویون}}</nowiki> کیمی یازیلا.",
+ "translate-checks-pagename": "آدفضاسی قایناق‌لا فرقلی‌دیر",
+ "translate-checks-format": "بو چئویرمه قایناق کیمی دئییل یادا یانلیش سینتکسی واردیر: $1",
+ "translate-checks-escape": "بو قاچیشلار تصادوفی اولا بیلرلر: <strong>$1</strong>",
+ "translate-checks-parametersnotequal": "پارامِتر سایی {{PLURAL:$1|$1}}-دیر؛ گرک {{PLURAL:$2|$2}} اولا.",
+ "translate-checks-malformed": "<nowiki>$1</nowiki> پیس فورم‌دادیر.",
+ "translate-checks-fudforum-syntax": "بو پروژه‌ده <nowiki>$2</nowiki> یئرینه <nowiki>$1</nowiki>-ی ایشلدین.",
+ "translate-pref-nonewsletter": "منه ایمیل خبرنامه‌لری گؤندرمه",
+ "translate-pref-editassistlang": "یاردیمچی دیل‌لر:",
+ "prefs-translate": "چئویرمک سئچمه‌لری",
+ "translate-pref-editassistlang-help": "کاما ایله آیریلمیش دیل کودلاری.\nسیز چئویرنده، بو دیل‌ده مئساژلارین چئویرمه‌لری گؤستریلر.\nدیل‌لری ایلک لیستی، سیزین دیل‌لرینیزه باغلی‌دیر.",
+ "translate-pref-editassistlang-bad": "لیست‌ده گئچرسیز دیل کودو واردیر:\n<nowiki>$1</nowiki>.",
+ "right-translate": "چئویرمک آرا-اوزو ایله دَییشدیر",
+ "right-translate-manage": "مئساژ گروپلارینی ایداره ائت",
+ "action-translate-manage": "مئساژ گروپلارینی ایداره ائت",
+ "right-translate-import": "آفلاین چئویرمه‌لری گیردیر",
+ "action-translate-import": "آفلاین چئویرمه‌لری گیردیر",
+ "right-translate-messagereview": "چئویرمه‌لری گؤزدن گئچیت",
+ "right-translate-groupreview": "مئساژ گروپلارینین ایش-آخیم وضعیتینی دَییشدیر",
+ "translate-rc-translation-filter": "چئویرمه‌لری فیلترله:",
+ "translate-rc-translation-filter-no": "هئچ ایش گؤرمه",
+ "translate-rc-translation-filter-only": "یالنیز چئویرمه‌لری گؤستر",
+ "translate-rc-translation-filter-filter": "چئویرمه‌لری گؤسترمه",
+ "translate-rc-translation-filter-site": "یالنیز سایت مئساژلارینا اولان دَییشیکلیکلری گؤستر",
+ "translationstats": "چئویرمک آماری",
+ "translate-stats-edits": "دَییشدیرمه‌لر",
+ "translate-stats-users": "ترجومه‌چیلر",
+ "translate-stats-registrations": "آد یازدیرمالار",
+ "translate-stats-reviews": "گؤزدن گئچیتمه‌لر",
+ "translate-stats-reviewers": "گؤزدن گئچیردنلر",
+ "translate-statsf-intro": "بو فورم ایله ساده آمارلار یارادا بیلرسینیز.\nبوتون دَیَرلرین یوخاری و آشاغی سینیرلاری واردیر.",
+ "translate-statsf-options": "گراف سئچمه‌لری",
+ "translate-statsf-width": "پیکسِل‌ده انی:",
+ "translate-statsf-height": "پیکسِل‌ده بویو:",
+ "translate-statsf-days": "گون‌ده واختی:",
+ "translate-statsf-start": "باشلاما تاریخی:",
+ "translate-statsf-scale": "ظرافتی:",
+ "translate-statsf-scale-months": "آیلار",
+ "translate-statsf-scale-weeks": "هفته‌لر",
+ "translate-statsf-scale-days": "گونلر",
+ "translate-statsf-scale-hours": "ساعاتلار",
+ "translate-statsf-count": "اؤلچو:",
+ "translate-statsf-count-edits": "دَییشیکلیکلر سایی",
+ "translate-statsf-count-users": "فعال چئویرنلر",
+ "translate-statsf-count-registrations": "یئنی ایستیفاده‌چیلر",
+ "translate-statsf-count-reviews": "چئویرمک گؤزدن گئچیتمه‌لری",
+ "translate-statsf-count-reviewers": "گؤزدن گئچیردنلر",
+ "translate-statsf-language": "کاما ایله آیریلمیش دیل کودلار لیستی:",
+ "translate-statsf-group": "کاما ایله آیریلمیش قروپ کودلاری لیستی:",
+ "translate-statsf-submit": "اؤن‌گؤستریش",
+ "translate-tag-category": "چئویریله بیلن صحیفه‌لر",
+ "translate-tag-page-desc": "[[$2|$1]] ویکی صحیفه‌سی چئویرمه‌سی.",
+ "translate-sidebar-alltrans": "آیری دیل‌لرده",
+ "translations": "بوتون چئویرمه‌لر",
+ "translations-summary": "آشاغیدا بوتون ال‌ده اولان چئویرمه‌لری گؤسترمک اوچون مئساژ آدینی وئرین.",
+ "translate-translations-no-message": "«$1» بیر چئویریله بیلن مئساژ دئییل",
+ "translate-translations-none": "«$1» اوچون چئویرمه یوخدور",
+ "translate-translations-count": "{{PLURAL:$1|بیر|$1}} چئویرمه تاپیلدی.",
+ "translate-translations-fieldset-title": "مئساژ",
+ "translate-translations-messagename": "آد:",
+ "translate-translations-project": "پروژه:",
+ "translate-translations-including-no-param": "لوطفاً آلت‌صحیفه پارامِترینده بیر گئچرلی مئساژ آچاری بیلیندیرین.",
+ "translate-translations-history-short": "گ",
+ "languagestats": "دیل آماری",
+ "languagestats-summary": "بو صحیفه بیر دیلده اولان بوتون مئساژ گروپلاری اوچون چئویرمه آمارینی گؤسترر.",
+ "languagestats-stats-for": "$1 اوچون چئویرمه آماری ($2).",
+ "languagestats-recenttranslations": "سون چئویرمه‌لر",
+ "translate-langstats-incomplete": "بو صحیفه‌ده بعضی آمارلار باشا چاتمامیش‌دیلار. لوطفاً چوخ آمار اله گتیرمک اوچون یئنی‌دن یوکله‌یین.",
+ "translate-langstats-expand": "گئنیشلندیر",
+ "translate-langstats-collapse": "گیزلت",
+ "translate-langstats-expandall": "هامیسینی گئنیشلت",
+ "translate-langstats-collapseall": "هامیسینی گیزلت",
+ "translate-language-code": "دیلین کودو",
+ "translate-language-code-field-name": "دیلین کودو:",
+ "translate-suppress-complete": "بوتونلوکله چئویریلمیش مئساژ گروپلارینی گیزلت",
+ "translate-ls-noempty": "بوتونلوکله چئویریلمه‌میش مئساژ گروپلارینی گیزلت",
+ "translate-language": "دیل",
+ "translate-total": "مئساژلار",
+ "translate-untranslated": "چئویریلمه‌میش",
+ "translate-percentage-complete": "ایره‌لیلیش",
+ "translate-percentage-fuzzy": "تاریخی گئچمیش",
+ "translate-languagestats-overall": "بوتون مئساژ گروپلاری بیرلیکده",
+ "translate-ls-submit": "آماری گؤستر",
+ "translate-ls-column-group": "مئساژ گروپو",
+ "translate-mgs-pagename": "مئساژ قروپ آماری",
+ "translate-mgs-fieldset": "گؤسترمک سئچمه‌لری",
+ "translate-mgs-group": "مئساژ گروپو:",
+ "translate-mgs-nocomplete": "چئویرمه‌لری قورتاریلمیش دیل‌لری گؤسترمه",
+ "translate-mgs-noempty": "هئچ چئویرمه‌سی اولمایان دیل‌لری گؤسترمه",
+ "translate-mgs-submit": "آماری گؤستر",
+ "translate-mgs-column-language": "دیل",
+ "translate-mgs-totals": "بوتون دیل‌لر بیرلیک‌ده",
+ "translate-mgs-invalid-group": "بیلیندیریلمیش $1 گروپو یوخدور.",
+ "translate-mgs-nothing": "ایسته‌نیلمیش آمار اوچون گؤسترمه‌لی بیر شئی یوخدور.",
+ "supportedlanguages": "دستکلنن دیل‌لر",
+ "supportedlanguages-summary": "بو صحیفه {{SITENAME}}-ده دستکلنن بوتون دیل‌لرین لیستینی،\nهر دیل‌ده چالیشان چئویرن‌لرله بیرلیک‌ده گؤستریر.\nنه قدر بیر چئویرن چوخ چالیشماسی اولسا، اونون آدی یئکه‌رک گؤرسنیر.\nآلت‌خطی‌نین رنگی، چئویرنین نه قدر یاخین زامان‌دا بوردا چالیشقان اولماغینی گؤستریر.",
+ "supportedlanguages-colorlegend": "رنگ اوچون توضیح: سون چئویرمک $1 گون قاباق.",
+ "supportedlanguages-translators": "{{PLURAL:$2|بیر|$2}} چئویرن: $1",
+ "supportedlanguages-recenttranslations": "سون چئویرمه‌لر",
+ "supportedlanguages-count": "توپلام‌دا {{PLURAL:$1|بیر|$1}} دیل.",
+ "supportedlanguages-activity": "$1: {{PLURAL:$2|بیر|$2}} دَییشکلیک - سون دَییشیکلیک {{PLURAL:$3|بیر|$3}} گون قاباق",
+ "translate-save": "قئید ائت ($1)",
+ "translate-jssti-add": "لیسته آرتیر",
+ "managemessagegroups": "مئساژ قروپ ایداره‌سی",
+ "translate-smg-notallowed": "سیز بو ایشی گؤرمگه ایجازه‌نیز یوخدور.",
+ "translate-smg-nochanges": "ایشله‌مک اوچون بیر دَییشیکلیک یوخدور.",
+ "translate-smg-submit": "دَییشیکلیکلری ایشله‌مگه گؤندر",
+ "translate-smg-submitted": "مئساژ قایناقلاری گؤونجل‌لنیب‌دیلر. دَییشیکلیکلر آرخادا بررسی اولونورلار.",
+ "translate-smg-left": "ویکی‌ده مئساژ محتویاتی",
+ "translate-smg-right": "قاباغا گلن دَییشیکلیکلر",
+ "translate-manage-import-diff": "مئساژ $1 | ایش: $2",
+ "translate-manage-import-new": "یئنی مئساژ: $1",
+ "translate-manage-import-deleted": "سیلینمیش مئساژ $1",
+ "translate-manage-action-import": "ایچری گتیر",
+ "translate-manage-action-conflict": "ایچری گتیر و موبهم نیشانلا",
+ "translate-manage-action-ignore": "یوخ سای",
+ "translate-manage-action-fuzzy": "چئویرمه‌لری ایچری گتیر و موبهم نیشانلا",
+ "translate-manage-nochanges": "بو قروپ اوچون قایناق مئساژلاردا بیر دَییشیکلیک یوخدور.",
+ "translate-manage-nochanges-other": "بو دیل اوچون بیر دَییشیکلیک یوخدور.\nآشاغیداکی باغلانتی‌نی قروپ بیلگیلری گؤرونتوسونه قاییتماغا ایشلده بیلرسینیز.",
+ "translate-manage-inconsistent": "ایستک‌ده توتارسیزلیق تاپیلدی.\nلوطفاً دَییشیکلیکلری یوخلایین و یئنی‌دن چالیشین.\nبیلگیلر: $1.",
+ "translate-manage-toolong": "{{PLURAL:$1|بیر|$1}} ثانیه ان چون ایشلتمه سینیری آشدی.\nلوطفاً ایشلتماغین قالانی‌نی گئتمک اوچون فورمو یئنی‌دن گؤندرین.",
+ "translate-manage-import-summary": "ائشیک قایناق‌دان بیر یئنی نوسخه ایچری گتیریلیر",
+ "translate-manage-conflict-summary": "ائشیک قایناق‌دان بیر یئنی نوسخه ایچری گتیریلیر.\nلوطفاً یوخلایین.",
+ "translate-manage-fuzzy-summary": "قایناق مئساژ دَییشدیریلیب‌دیر",
+ "importtranslations": "چئویرمه‌لری ایچری گتیر",
+ "translate-import-from-local": "یئرلی فایل یوکله:",
+ "translate-import-load": "یئرلی فایل",
+ "translate-import-err-dl-failed": "فایل گتیریلنمه‌دی:\n$1",
+ "translate-import-err-ul-failed": "فایل اوغورلا یوکله‌نیلدی",
+ "translate-import-err-invalid-title": "وئریلمیش فایل آدی <nowiki>$1</nowiki> گئچرسیز ایدی.",
+ "translate-import-err-no-such-file": "<nowiki>$1</nowiki> فایلی یوخدور یادا یئرلی یوکلنیلمه‌ییب‌دیر.",
+ "translate-import-err-stale-group": "بو فایل اونا عاید اولان مئساژ گروپو یوخدور.",
+ "translate-import-err-no-headers": "فایلین ترجومه اوزانتی فورمتینده دوزگون Gettext فورمو یوخدور.\nفایل باشلیقلاریندان دیل و مئساژ گروپونو بیلمک اولمور.",
+ "translate-import-err-warnings": "فایلین دوزگون فورمو یوخدور.\nآرخایین اولون سیزین دَییشدیرَنیز msgctxt‌ فیلدلرینی سیلمیر.\nبیلگیلر: $1",
+ "translate-js-summary": "آچیقلاما:",
+ "translate-js-save": "قئید ائت",
+ "translate-js-next": "قئید ائت و سونراکینی آچ",
+ "translate-js-nonext": "بو صحیفه‌ده سون مئساژ ایدی.",
+ "translate-js-skip": "سونراکینا آتلان",
+ "translate-js-save-failed": "قئید ائدیلنمه‌دی. لوطفاً بو خطانی بیلدیرین.",
+ "translate-js-history": "چئویرمک گئچمیشی",
+ "translate-js-support": "سورغو سوروش",
+ "translate-js-support-title": "بو مئساژی دوزگون چئویرمک اوچون کیفایت قدر بیلگی اولماسا، یاردیم ایسته‌یین.",
+ "translate-js-support-unsaved-warning": "سیزین قئید ائدیلمه‌میش چئویرمه‌لرینیز واردیر.",
+ "translate-gs-pos": "یئر",
+ "translate-gs-code": "کود",
+ "translate-gs-continent": "قاره",
+ "translate-gs-speakers": "دانیشانلار",
+ "translate-gs-score": "امتیاز",
+ "translate-gs-multiple": "چوخلو",
+ "translate-gs-count": "سایی",
+ "translate-gs-total": "توپلام",
+ "translate-gs-avgscore": "اورتا امتیاز",
+ "translate-documentation-language": "مئساژ سندلندیرمه‌سی",
+ "translate-searchprofile": "چئویرمه‌لر",
+ "translate-searchprofile-tooltip": "بوتون چئویرمه‌لردن آختار",
+ "translate-search-languagefilter": "دیل ایله فیلترله:",
+ "translate-search-nofilter": "فیلتر یوخ",
+ "translate-messagereview-submit": "قبول ائت",
+ "translate-messagereview-progress": "قبول ائدیلیر...",
+ "translate-messagereview-failure": "قبول ائدیلیر... اوغورسوز اولدو: $1",
+ "translate-messagereview-done": "قبول ائدیلدی",
+ "translate-messagereview-reviews": "{{PLURAL:$1|بیر|$1}} ایستیفاده‌چی ایله قبول ائدیلیب‌دیر",
+ "translate-messagereview-reviewswithyou": "{{PLURAL:$1|سیز|$1 ایستیفاده‌چی، ایچینده سیز}} ایله قبول ائدیلیب‌دیر",
+ "api-error-invalidrevision": "چئویرمه تاپیلانمادی",
+ "api-error-unknownmessage": "مئساژ تاپیلانمادی",
+ "api-error-fuzzymessage": "چئویرمه موبهم نیشانلانیب‌دیر",
+ "api-error-owntranslation": "سیز اؤز چئویرمه‌لرینیزی قبول ائده بیلنمزسینیز",
+ "translate-messagereview-no-fuzzy": "موبهم چئویرمه‌لر قبول اولونانمازلار.",
+ "translate-messagereview-no-own": "سیز اؤز چئویرمه‌لرینیزی قبول ائده بیلنمزسینیز.",
+ "translate-messagereview-doit": "بو چئویرمه‌نی بیر دوزگون چئویرمه اولاراق قبول ائت.",
+ "log-name-translationreview": "چئویرمه گؤزدن گئچیتمک قئیدلری",
+ "log-description-translationreview": "بوتون چئویرمه‌لر و مئساژ گروپلاری گؤزدن گئچیتمک قئیدلری.",
+ "logentry-translationreview-message": "$1، $3 چئویرمه‌سینی {{GENDER:$2|قبول ائتدی}}",
+ "logentry-translationreview-group": "$1، $3-ین $4 ترجومه‌لرینین وضعیتی‌نی $6-دن $7-ه {{GENDER:$2|دَییشدیردی}}",
+ "translate-workflow-state-": "(وئریلمه‌میش)",
+ "translate-workflowstatus": "وضعیت: $1",
+ "translate-workflow-set-do": "تنظیم‌له",
+ "translate-workflow-set-doing": "تنظیم‌لنیر...",
+ "translate-workflow-set-done": "تنظیملندی!",
+ "translate-workflow-set-error-alreadyset": "ایسته‌نیلمیش وضعیت، ایندیکی وضعیت ایله بیردیر.",
+ "translate-workflow-autocreated-summary": "$1 وضعیتی ایش-آخیمی اوچون اوتوماتیک صحیفه یاراتما",
+ "translate-stats-workflow": "وضعیت",
+ "translate-workflowgroup-label": "ایش-آخیمی وضعیتلری",
+ "translate-workflowgroup-desc": "بو مئساژ گروپو، چئویرمه ایش-آخیمی وضعیتلرینی گؤستریر.\nوضعیتلر، $wgTranslateWorkflowStates تنظیملر دَیَرینده تانینیبلار.",
+ "translate-dynagroup-recent-label": "سون چئویرمه‌لر",
+ "translate-dynagroup-recent-desc": "بو مئساژ قروپو، بو دیلین بوتون سون چئویرمه‌لرینی گؤستریر.\nتصحیح ائتمه ایشلرینه ایشه گلن‌دیر.",
+ "translate-dynagroup-additions-label": "سون آرتیرمالار",
+ "translate-dynagroup-additions-desc": "بو مئساژ گروپو، یئنی و دَییشدیریلمیش مئساژلاری گؤستریر.",
+ "translate-dynagroup-by": "{{GENDER:$1|$1}} ایله چئویریلیب‌دیر",
+ "translate-dynagroup-byc": "{{GENDER:$1|$1}} ایله چئویریلیب‌دیر ($2)",
+ "translate-dynagroup-last": "سون دفعه {{GENDER:$1|$1}} ایله دَییشدیریلیب‌دیر",
+ "translate-dynagroup-lastc": "سون دفعه {{GENDER:$1|$1}} ایله دَییشدیریلیب‌دیر ($2)",
+ "translate-gethelp": "یاردیم",
+ "translate-msggroupselector-projects": "مئساژ قروپو",
+ "translate-msggroupselector-search-placeholder": "گروپلاری آختار",
+ "translate-msggroupselector-search-all": "هامیسی",
+ "translate-msggroupselector-search-recent": "سون",
+ "translate-msggroupselector-view-subprojects": "{{PLURAL:$1|بیر|$1}} آلت‌گروپ",
+ "tux-languageselector": "بونا چئویرمک",
+ "tux-tab-all": "هامیسی",
+ "tux-tab-untranslated": "چئویریلمه‌میش",
+ "tux-tab-outdated": "تاریخی گئچمیش",
+ "tux-tab-translated": "چئویریلمیش",
+ "tux-tab-unproofread": "تصحیح ائدیلمه‌میش",
+ "tux-edit": "دَییشدیر",
+ "tux-status-optional": "ایستگه باغلی",
+ "tux-status-fuzzy": "تاریخی گئچمیش",
+ "tux-status-proofread": "یئنی‌دن باخیش",
+ "tux-status-translated": "چئویریلمیش",
+ "tux-status-saving": "قئید ائدیلیر...",
+ "tux-status-unsaved": "قئید ائدیلمه‌میش",
+ "tux-editor-placeholder": "سیزین چئویرمه‌نیز",
+ "tux-editor-paste-original-button-label": "قایناق یازی‌نی یاپیشدیرین",
+ "tux-editor-discard-changes-button-label": "دَییشدیرمه‌لری رد ائت",
+ "tux-editor-save-button-label": "چئویرمه‌نی قئید ائت",
+ "tux-editor-skip-button-label": "سونراکینا آتلان",
+ "tux-editor-confirm-button-label": "چئویرمه‌نی دوغرولا",
+ "tux-editor-shortcut-info": "قئید ائتمک اوچون «$1»-ی و سونراکینا آتلانماق اوچون «$2»-ی وورون.",
+ "tux-editor-edit-desc": "آچیقلامانی دَییشدیر",
+ "tux-editor-add-desc": "آچیقلاما آرتیر",
+ "tux-editor-suggestions-title": "اؤنریلر",
+ "tux-editor-in-other-languages": "آیری دیل‌لرده",
+ "tux-editor-need-more-help": "آرتیق یاردیم گرکلی‌دیر؟",
+ "tux-editor-ask-help": "داها بیلگی ایسته",
+ "tux-editor-tm-match": "$1٪ تطبیق",
+ "tux-warnings-more": "{{PLURAL:$1|$1 داها}}",
+ "tux-warnings-hide": "گیزلت",
+ "tux-editor-save-failed": "چئویرمه‌نی قئید ائتمک اولمادی: $1",
+ "tux-editor-n-uses": "$1 {{PLURAL:$1|دفعه}} ایشلدیلیب",
+ "tux-editor-message-desc-more": "آرتیق گؤر",
+ "tux-editor-message-desc-less": "آز گؤر",
+ "tux-editor-clear-translated": "چئویریلمیشی گیزلت",
+ "tux-editor-proofreading-mode": "تصحیح ائت",
+ "tux-editor-translate-mode": "لیست",
+ "tux-editor-proofreading-hide-own-translations": "اؤز چئویرمه‌لرینیزی گیزلت",
+ "tux-editor-proofreading-show-own-translations": "اؤز چئویرمه‌لرینیزی گؤستر",
+ "tux-proofread-action-tooltip": "چئویرمه‌نی قبول ائت",
+ "tux-proofread-edit-label": "دَییشدیر",
+ "tux-editor-page-mode": "صحیفه",
+ "tux-editor-outdated-warning": "بو چئویرمه‌نی گونجل‌له‌مک گرکلی اولا بیلر.",
+ "tux-editor-outdated-warning-diff-link": "فرقلری گؤستر",
+ "tux-editor-doc-editor-placeholder": "مئساژ سندلندیرمه‌سی",
+ "tux-editor-doc-editor-save": "سندلندیرمه‌نی قئید ائت",
+ "tux-editor-doc-editor-cancel": "لغو ائت",
+ "tux-messagetable-more-messages": "$1 داها {{PLURAL:$1|مئساژ}}",
+ "tux-messagetable-loading-messages": "{{PLURAL:$1|مئساژ|مئساژلار}} یوکله‌نیلیر...",
+ "tux-message-filter-placeholder": "لیستی فیلترله",
+ "tux-message-filter-result": "«$2» اوچون $1 {{PLURAL:$1|نتیجه}} تاپیلدی",
+ "tux-message-filter-advanced-button": "گلیشمیش آختاریش",
+ "tux-message-filter-optional-messages-label": "ایستگه باغلی مئساژلار",
+ "tux-proofread-translated-by-self": "سیز ایله چئویریلمیش",
+ "tux-empty-list-all": "بو مئساژ قروپو بوش‌دور",
+ "tux-empty-list-all-guide": "بیر آیری مئساژ قروپو چئویرمک اوچون سئچین",
+ "tux-translate-page-no-such-group": "'''بلیرتلنمیش مئساژ قروپو یوخدور.''' لوطفاً آیریسین سئچین.",
+ "tux-empty-list-translated": "هئچ چئویریلمیش مئساژ یوخدور",
+ "tux-empty-list-translated-guide": "سیز چئویرمگه یاردیم ائده بیلرسینیز",
+ "tux-empty-list-translated-action": "چئویر",
+ "tux-empty-list-other": "چئویرمگه بیر شئی یوخدور",
+ "tux-empty-list-other-guide": "سیز قاباقجادان چئویرلمیشلری تصحیح ائتمگه یاردیم ائده بیلرسینیز",
+ "tux-empty-list-other-action": "چئویرمه‌لری تصحیح ائت",
+ "tux-empty-list-other-link": "بوتون مئساژلاری گؤستر",
+ "tux-editor-close-tooltip": "باغلا",
+ "tux-editor-expand-tooltip": "گئنیشلندیر",
+ "tux-editor-collapse-tooltip": "ییغیشلاندیر",
+ "tux-editor-loading": "یوکلنیر...",
+ "translate-search-more-languages-info": "$1 داها {{PLURAL:$1|دیل}}",
+ "translate-statsbar-tooltip": "$1٪ چئویریلیب، $2٪ تصحیح ائدیلیب",
+ "translate-statsbar-tooltip-with-fuzzy": "$1٪ چئویریلیب، $2٪ تصحیح ائدیلیب، $3٪ کؤهنه‌لنیب"
+}
diff --git a/MLEB/Translate/i18n/core/ba.json b/MLEB/Translate/i18n/core/ba.json
new file mode 100644
index 00000000..1888a913
--- /dev/null
+++ b/MLEB/Translate/i18n/core/ba.json
@@ -0,0 +1,193 @@
+{
+ "@metadata": {
+ "authors": [
+ "Assele",
+ "Haqmar",
+ "Roustammr",
+ "Рустам Нурыев"
+ ]
+ },
+ "translate": "Тәржемә",
+ "translate-desc": "MediaWiki һәм башка программалар тәржемә итеү өсөн [[Special:Translate|Махсус бит]]",
+ "translate-page-no-such-language": "Тел коды дөрөҫ түгел.",
+ "translate-page-no-such-group": "Төркөм дөрөҫ күрһәтелмәгән.",
+ "translate-page-disabled": "Һайланған төркөмдә был телгә тәржемә итеү мөмкин түгел. Сәбәбе:\n<em>$1</em>",
+ "translate-page-settings-legend": "Шарттар",
+ "translate-page-group": "Төркөм",
+ "translate-page-language": "Тел",
+ "translate-page-limit": "Сикләү",
+ "translate-page-limit-option": "Бер биткә $1 {{PLURAL:$1|яҙма}}",
+ "translate-submit": "Сығарырға",
+ "translate-page-navigation-legend": "Төп йүнәлештәр",
+ "translate-page-showing": "$3 яҙманан $1 - $2 эсендәгеһе сығарылған.",
+ "translate-page-showing-all": "$1 {{PLURAL:$1|яҙма}} сығарылған.",
+ "translate-page-showing-none": "Яҙмалар юҡ.",
+ "translate-next": "Киләһе бит",
+ "translate-prev": "Алдағы бит",
+ "translate-page-description-legend": "Төркөм тураһында мәғлүмәт",
+ "translate-page-edit": "үҙгәртергә",
+ "translate-ext-url": "<hr />Сайт: $1",
+ "translate-optional": "(мөһим түгел)",
+ "translate-ignored": "(иғтибарға алынмай)",
+ "translate-edit-title": "Мөхәрирләү \"$1\"",
+ "translate-edit-definition": "Яҙманың билдәләмәһе",
+ "translate-edit-translation": "Тәржемә",
+ "translate-edit-contribute": "үҙгәртергә",
+ "translate-edit-no-information": "''Был яҙманың тасуирламаһы юҡ. Әгәр һеҙ был яҙманың ҡайҙа һәм нисек ҡулланылғанын белһәгеҙ, был яҙмаға тасуирлама өҫтәп, бүтән тәржемәселәргә ярҙам итә алаһығыҙ.''",
+ "translate-edit-information": "Яҙма тураһында мәғлүмәт ($1)",
+ "translate-edit-in-other-languages": "Ошо яҙма башҡа телдәрҙә",
+ "translate-edit-committed": "Программала хәҙерге тәржемәһе",
+ "translate-edit-warnings": "Тулы булмаған тәржемәләр тураһында иҫкәртеү",
+ "translate-edit-tmsugs": "Тәржемәләр хәтеренән тәҡдимдәр",
+ "translate-edit-tmmatch": "$1% тап килеү",
+ "translate-use-suggestion": "Был тәҡдимде тәржемә өлкәһенә ҡуйырға. Был бөтә хәҙерге эстәлекте алыштырасаҡ.",
+ "translate-magic-pagename": "MediaWiki тәрәнәйтелгән тәржемәһе",
+ "translate-magic-module": "Модуль:",
+ "translate-magic-submit": "Сығарырға",
+ "translate-magic-cm-export": "Сығарырға",
+ "translate-magic-nothing-to-export": "Сығарыр өсөн бер нимә лә юҡ.",
+ "translate-magic-cm-to-be": "Булырға тейеш",
+ "translate-magic-cm-current": "Хәҙерге",
+ "translate-magic-cm-original": "Алдағы",
+ "translate-magic-cm-comment": "Иҫкәрмә:",
+ "translate-magic-cm-save": "Һаҡларға",
+ "translate-magic-cm-updatedusing": "[[Special:AdvancedTranslate|{{int:Translate-magic-pagename}}]] ярҙамында яңыртылған",
+ "translate-magic-cm-savefailed": "Һаҡлап булманы",
+ "translate-magic-special": "Махсус биттәрҙең псевдонимдары",
+ "translate-magic-namespace": "Исемдәр арауығы",
+ "translate-magic-notsaved": "Һеҙҙең үҙгәртеүҙәрегеҙ һаҡланманы!",
+ "translate-magic-errors": "Түбәндәге {{PLURAL:$1|1=хатаны|хаталарҙы}} төҙәтегеҙ, зинһар:",
+ "translate-magic-saved": "Һеҙҙең үҙгәртеүҙәрегеҙ уңышлы һаҡланды.",
+ "translate-checks-parameters": "Түбәндәге {{PLURAL:$2|1=параметр|параметрҙар}} ҡулланылмай:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-parameters-unknown": "Түбәндәге {{PLURAL:$2|1=параметр|параметрҙар}} билдәһеҙ:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-balance": "Уң һәм һул {{PLURAL:$2|1=йәйә|йәйә}} һаны парлы түгел:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links": "Түбәндәге {{PLURAL:$2|1=һылтанма|$2 һылтанмалар}} ҡыйынлыҡтар тыуҙыра.\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links-missing": "Түбәндәге {{PLURAL:$2|1=һылтанма|$2 һылтанмалар}} кәрәк:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-xhtml": "Түбәндәге {{PLURAL:$2|1=тэгты|тэгтарҙы}} төҙәтегеҙ, зинһар:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-plural": "Сығанаҡ <nowiki>{{PLURAL:}}</nowiki> ҡуллана, ә тәржемә ҡулланмай.",
+ "translate-checks-pagename": "Исемдәр арауығының билдәләмәһе үҙгәргән",
+ "translate-checks-format": "Был тәржемә билдәләмәһе менән тап килмәй йәки синтаксик хаталары бар: $1",
+ "translate-checks-fudforum-syntax": "Был проектта <nowiki>$2</nowiki> урынына <nowiki>$1</nowiki> ҡулланырға.",
+ "translate-pref-nonewsletter": "Минең электрон почтаға яңылыҡтар ебәрмәҫкә",
+ "translate-pref-editassistlang": "Ярҙамсы телдәр:",
+ "prefs-translate": "Тәржемә көйләүҙәре",
+ "translate-pref-editassistlang-help": "Ошо телдәргә тәржемәләр яҙмаларҙы үҙгәрткән ваҡытта күрһәтеләсәк.\nҒәҙәттәге исемлек һеҙ һайлаған телгә бәйле.",
+ "translate-pref-editassistlang-bad": "Исемлектәге тел коды дөрөҫ түгел:\n<nowiki>$1</nowiki>.",
+ "right-translate": "Тәржемә интерфейсы ярҙамында үҙгәртеү",
+ "right-translate-manage": "Тәржемә төркөмдәрен мөхәррирләү",
+ "right-translate-import": "Offline тәржемәләрҙе индереү",
+ "translate-rc-translation-filter": "Тәржемәләрҙе һайлап алырға:",
+ "translate-rc-translation-filter-no": "Барыһы ла",
+ "translate-rc-translation-filter-only": "Тәржемәләр генә",
+ "translate-rc-translation-filter-filter": "Тәржемәләрҙән башҡалар",
+ "translate-rc-translation-filter-site": "Cайттың система яҙмалары ғына",
+ "translationstats": "Тәржемәләр статисикаһы",
+ "translate-stats-edits": "Үҙгәртеүҙәр",
+ "translate-stats-users": "Тәржемәселәр",
+ "translate-stats-registrations": "Теркәүҙәр",
+ "translate-statsf-intro": "Был формала ябай статистика рәсеме ҡарарға мөмкин.\nСтатистика сиктәрен бөтә параметрҙар буйынса билдәләргә була.",
+ "translate-statsf-options": "Рәсемде көйләү",
+ "translate-statsf-width": "Киңлек (пикселдарҙа)",
+ "translate-statsf-height": "Бейеклек (пикселдарҙа)",
+ "translate-statsf-days": "Ваҡыт арауығы (көндәрҙә)",
+ "translate-statsf-start": "Ваҡыт арауығы (көндәрҙә)",
+ "translate-statsf-scale": "Ентеклелек дәрәжәһе",
+ "translate-statsf-scale-months": "Айҙар",
+ "translate-statsf-scale-weeks": "Аҙналар",
+ "translate-statsf-scale-days": "Көндәр",
+ "translate-statsf-scale-hours": "Сәғәттәр",
+ "translate-statsf-count": "Үлсәм",
+ "translate-statsf-count-edits": "Үҙгәртеүҙәр һаны",
+ "translate-statsf-count-users": "Әүҙем тәржемәселәр һаны",
+ "translate-statsf-count-registrations": "Яңы ҡатнашыусылар",
+ "translate-statsf-language": "Тел кодтары өтөр аша:",
+ "translate-statsf-group": "Төркөм кодтары өтөр аша:",
+ "translate-statsf-submit": "Ҡарап сығырға",
+ "translate-tag-category": "Тәржемә ителә торған биттәр",
+ "translate-tag-page-desc": "[[$2|$1]] вики-битенең тәржемәһе",
+ "translate-sidebar-alltrans": "Башҡа телдәрҙә",
+ "translations": "Бөтә тәржемәләр",
+ "translations-summary": "Бөтә мөмкин булған телдәрҙә тәржемәләр сығарыр өсөн, яҙманың исемен керетегеҙ.",
+ "translate-translations-no-message": "\"$1\" - тәржемә ителә торған яҙма түгел",
+ "translate-translations-none": "\"$1\" өсөн тәржемәләр юҡ",
+ "translate-translations-count": "{{PLURAL:$1|1=Бер тәржемә|$1 тәржемә}} табылды.",
+ "translate-translations-fieldset-title": "Яҙма",
+ "translate-translations-messagename": "Исем",
+ "translate-translations-project": "Проект:",
+ "translate-translations-including-no-param": "Зинһар, эске биттең параметры рәүешендә яҙманың асҡысын күрһәтегеҙ",
+ "translate-translations-history-short": "т",
+ "languagestats": "Тел статистикаһы",
+ "languagestats-summary": "Был биттә бөтә төркөмдәр өсөн һайланған телдә тәржемәләр статистикаһы күрһәтелгән.",
+ "languagestats-stats-for": "$1 теле өсөн тәржемәләр статистикаһы ($2).",
+ "languagestats-recenttranslations": "яңыраҡ эшләнгән тәржемәләр",
+ "translate-langstats-expand": "асырға",
+ "translate-langstats-collapse": "төрөргә",
+ "translate-langstats-expandall": "барыһын да асырға",
+ "translate-langstats-collapseall": "барыһын да төрөргә",
+ "translate-language-code": "Тел коды",
+ "translate-language-code-field-name": "Тел коды:",
+ "translate-suppress-complete": "Тулыһынса тәржемә ителгән төркөмдәрҙе күрһәтмәҫкә",
+ "translate-language": "Тел",
+ "translate-total": "Яҙмалар",
+ "translate-untranslated": "Тәржемә ителмәгәндәр",
+ "translate-percentage-complete": "Тәржемә ителгәндәр",
+ "translate-percentage-fuzzy": "Иҫкергән",
+ "supportedlanguages": "Ҡулланылған телдәр",
+ "supportedlanguages-summary": "Был биттә {{SITENAME}} проектында ҡулланылған телдәр һәм был телдәр өҫтөндә эшләүсе тәржемәселәр исемлеге килтерелгән.\nӘгәр ниндәйҙер тел тураһында тулыраҡ мәғлүмәт алырға теләһәгеҙ, шул телдең порталы һылтанмаһына баҫығыҙ.\nБерәй тәржемәсе исеменә баҫһағыҙ, шул тәржемәсенең битенә эләгерһегеҙ.\n\nӘгәр ниндәй ҙә булһа тел исемлектә килтерелмәгән икән, һеҙ ошо телгә локалләштереүҙе \"[[Translating:Process|Яңы тел]]\" битендә башлай алаһығыҙ.\n\nӘгәр һеҙ ниндәй ҙә булһа телгә тәржемә итәһегеҙ һәм һеҙҙең исемегеҙ тәржемәселәр исемлегендә юҡ икән, зинһар, исемегеҙҙе был телдең [[:Category:Languages|порталында]] тәржемәселәр исемлегенә өҫтәгеҙ.\nҺеҙҙең көйләүҙәрегеҙҙәге тел порталына һылтанманы менюла табырға була.",
+ "supportedlanguages-translators": "{{PLURAL:$2|1=Тәржемәсе|Тәржемәселәр}}: $1",
+ "supportedlanguages-recenttranslations": "яңыраҡ эшләнгән тәржемәләр",
+ "translate-save": "Һаҡларға ($1)",
+ "translate-jssti-add": "Исемлеккә өҫтәргә",
+ "managemessagegroups": "Яҙмалар төркөмдәре менән идара итеү",
+ "translate-manage-import-diff": "$1 яҙмаһы: $2",
+ "translate-manage-import-new": "Яңы яҙма: $1",
+ "translate-manage-import-deleted": "Юйылған яҙма: $1",
+ "translate-manage-action-import": "Тейәргә",
+ "translate-manage-action-conflict": "Индереү һәм хаталар",
+ "translate-manage-action-ignore": "Иғтибарһыҙ ҡалдырырға",
+ "translate-manage-action-fuzzy": "Индереү һәм хаталы тәржемәләр",
+ "translate-manage-nochanges": "Был төркөм өсөн яҙма билдәмәләрендә бер үҙгәреш тә юҡ.",
+ "translate-manage-nochanges-other": "Был телдә бер ниндәй ҙә үҙгәрештәр юҡ.\nТөркөм тураһында мәғләмәт битенә ҡайтыу өсөн түбәндәге һылтанмаға баҫығыҙ.",
+ "translate-manage-inconsistent": "Һорауҙа тап килмәүҙәр бар.\nЗинһар үҙгәрештәрҙе тикшерегеҙ һәм ҡабатлап ҡарағыҙ.\nЕнтеклерәк: $1.",
+ "translate-manage-toolong": "$1 һорауында мөмкин булған үтәү ваҡыты — {{PLURAL:$1|1=секунд|секунд}} үтте.\nДауам итеү өсөн, форма мәғлүмәтен ҡабаттан ебәрегеҙ, зинһар.",
+ "translate-manage-import-summary": "Тышҡы сығанаҡтан яңы өлгө индереү",
+ "translate-manage-conflict-summary": "Тышҡы сығанаҡтан яңы өлгө индереү.\nЗинһар, тикшерегеҙ.",
+ "translate-manage-fuzzy-summary": "Билдәләмә үҙгәрҙе",
+ "translate-manage-submit": "Үтәргә",
+ "translate-manage-intro-other": "Түбәндә — $1 теленә тәржемә үҙгәрештәре исемлеге.\nҺәр тәржемә өсөн үҙгәрештәрҙе тикшерегеҙ һәм был тәржемә менән ни эшләргә теләгәнегеҙҙе һайлағыҙ, зинһар.\nӘгәр һеҙ үҙгәрештәрҙе иғтибарһыҙ ҡалдырһағыҙ, улар икенсе сығарыуға күсереләсәк.",
+ "translate-manage-import-ok": "$1 битенең яңы өлгөһө индерелгән.",
+ "translate-manage-import-done": "Барыһы ла үтәлде!",
+ "importtranslations": "Тәржемәләрҙе индереү",
+ "translate-import-from-local": "Урындағы файлды индерергә:",
+ "translate-import-load": "Файлды индерергә:",
+ "translate-import-err-dl-failed": "Файлды индереү мөмкин түгел:\n$1",
+ "translate-import-err-ul-failed": "Файлды индереп булманы",
+ "translate-import-err-invalid-title": "Күрһәтелгән файл исеме <nowiki>$1</nowiki> дөрөҫ түгел.",
+ "translate-import-err-no-such-file": "Файл <nowiki>$1</nowiki> юҡ йәки урында индерелмәгән.",
+ "translate-import-err-stale-group": "Был файлға ҡараған яҙмалар төркөмө юҡ.",
+ "translate-import-err-no-headers": "Файл —Translate киңәйеүе форматында дөрөҫ Gettext-файл түгел:\nФайлдың башлыҡтарынан төркөмдө һәм телде билдәләп булмай.",
+ "translate-import-err-warnings": "Файл дөрөҫ төҙөлмәгән.\nҺеҙҙең мөхәррирләүсегеҙ msgctxt юлдарын юймай икәнен тикшерегеҙ.\nТулыраҡ: $1",
+ "translate-js-next": "Һаҡларға һәм сираттағыны асырға",
+ "translate-js-nonext": "Был яҙма әлеге биттә аҙаҡҡыһы булды.",
+ "translate-js-skip": "Сираттағыға күсергә",
+ "translate-js-save-failed": "Яҙҙырып ҡуйыу үтәлмәне. Был хата тураһында хәбәр итегеҙ, зинһар.",
+ "translate-js-history": "Тәржемә тарихы",
+ "translate-js-support": "Һорау бирергә",
+ "translate-js-support-title": "Был яҙманы дөрөҫ тәржемә итер өсөн мәғлүмәт етмәһә, ярҙам һорап мөрәжәғәт итегеҙ.",
+ "translate-gs-pos": "Урын",
+ "translate-gs-code": "Код",
+ "translate-gs-continent": "Донъя өлөшө",
+ "translate-gs-speakers": "Һөйләшеүселәр",
+ "translate-gs-score": "Билдә",
+ "translate-gs-multiple": "Бер нисә",
+ "translate-gs-count": "Һан",
+ "translate-gs-total": "Барыһы",
+ "translate-gs-avgscore": "Уртаса билдә",
+ "translate-documentation-language": "Яҙмалар документтары",
+ "translate-searchprofile": "Тәржемәләр",
+ "translate-search-languagefilter": "Тел буйынса фильтр:",
+ "translate-search-nofilter": "Фильтрһыҙ",
+ "translate-messagereview-submit": "Ҡабул итергә",
+ "translate-messagereview-progress": "Ҡабул итеү...",
+ "translate-messagereview-done": "Ҡабул ителде"
+}
diff --git a/MLEB/Translate/i18n/core/bar.json b/MLEB/Translate/i18n/core/bar.json
new file mode 100644
index 00000000..1dc68279
--- /dev/null
+++ b/MLEB/Translate/i18n/core/bar.json
@@ -0,0 +1,36 @@
+{
+ "@metadata": {
+ "authors": [
+ "Bua333",
+ "Mucalexx",
+ "Joe Watzmo"
+ ]
+ },
+ "translate": "Ibasetzn",
+ "translate-desc": "Dagänzd a [[Special:Translate|Speziaalseiten]] zan Ywersétzen vah d' MediaWiki-Systémnoochrichtner und dénen eanerre weidern Auhwendunger.",
+ "translate-taction-translate": "Ibasetzn",
+ "translate-taction-proofread": "Korrekdualesen",
+ "translate-taction-lstats": "Statistikn zua Sproch",
+ "translate-taction-mstats": "Statistikn zua Nochrichtngruppm",
+ "translate-taction-export": "Exportian",
+ "translate-taction-disabled": "De Aktion is in em Wiki deaktiviad.",
+ "translate-page-language": "Sprooch",
+ "translate-page-limit": "Limit",
+ "translate-submit": "Hoin",
+ "translate-edit-information": "Informazión zur da Systémnoochricht ($1)",
+ "translate-edit-in-other-languages": "Systémnoochricht auf åndre Sproochen",
+ "translate-magic-cm-updatedusing": "Aktualisird durch [[Special:AdvancedTranslate|{{int:Translate-magic-pagename}}]]",
+ "translationstats": "Staatistiken zua d' Ywersétzungen",
+ "translate-sidebar-alltrans": "Auf åndre Sproochen",
+ "translations": "Olle Ywersetzungen",
+ "languagestats": "Staatistiken zur Sprooch",
+ "translate-langstats-expandall": "olle auskloppm",
+ "translate-language": "Sprooch",
+ "supportedlanguages-recenttranslations": "Aktuelle Ywersétzungen",
+ "translate-js-history": "Ywersétzungsgschicht",
+ "translate-js-support": "A Frog stön",
+ "translate-searchprofile": "Ywersétzungen",
+ "translate-searchprofile-tooltip": "Suach in olle Ywersétzungen",
+ "tux-editor-expand-tooltip": "Auskloppn",
+ "tux-editor-collapse-tooltip": "eikloppn"
+}
diff --git a/MLEB/Translate/i18n/core/bcc.json b/MLEB/Translate/i18n/core/bcc.json
new file mode 100644
index 00000000..e7216927
--- /dev/null
+++ b/MLEB/Translate/i18n/core/bcc.json
@@ -0,0 +1,10 @@
+{
+ "@metadata": {
+ "authors": [
+ "Mostafadaneshvar"
+ ]
+ },
+ "translate-checks-parameters": "ای پارامتران استفاده نه بیتگن: <strong>$1</strong>",
+ "translate-checks-links": "جهلگی لینکانء مشکل اش هست: <strong>$1</strong>",
+ "translate-checks-xhtml": "لطفا ای جهلگی برچسپانء گون درستین ان جاه په جاه کنیت: <strong>$1</strong>"
+}
diff --git a/MLEB/Translate/i18n/core/bcl.json b/MLEB/Translate/i18n/core/bcl.json
new file mode 100644
index 00000000..ff717087
--- /dev/null
+++ b/MLEB/Translate/i18n/core/bcl.json
@@ -0,0 +1,18 @@
+{
+ "@metadata": {
+ "authors": [
+ "Filipinayzd"
+ ]
+ },
+ "translate": "Sangliân",
+ "translate-submit": "Kûanón",
+ "translate-next": "Sunod na páhina",
+ "translate-prev": "Nakaaging páhina",
+ "translate-optional": "(opsyonal)",
+ "translate-magic-submit": "Kûanón",
+ "translate-magic-cm-export": "Ipadara",
+ "translate-magic-cm-current": "Presente",
+ "translate-magic-cm-original": "Orihinal",
+ "translate-magic-cm-save": "Itagama",
+ "translate-magic-cm-savefailed": "Bigô an pagtagama"
+}
diff --git a/MLEB/Translate/i18n/core/be-tarask.json b/MLEB/Translate/i18n/core/be-tarask.json
new file mode 100644
index 00000000..56a4a82a
--- /dev/null
+++ b/MLEB/Translate/i18n/core/be-tarask.json
@@ -0,0 +1,384 @@
+{
+ "@metadata": {
+ "authors": [
+ "EugeneZelenko",
+ "Jim-by",
+ "Red Winged Duck",
+ "Renessaince",
+ "Wizardist",
+ "Zedlik",
+ "Shirayuki"
+ ]
+ },
+ "translate": "Пераклад",
+ "translate-desc": "[[Special:Translate|Спэцыяльная старонка]] для перакладу MediaWiki і іншых праграмаў",
+ "translate-taskui-view": "Паказаць усе паведамленьні",
+ "translate-taskui-untranslated": "Паказаць неперакладзеныя паведамленьні",
+ "translate-taskui-optional": "Паказаць неабавязковыя паведамленьні.",
+ "translate-taskui-acceptqueue": "Толькі паведамленьні для вычыткі",
+ "translate-taskui-reviewall": "Праверыць усе пераклады",
+ "translate-taskui-export-to-file": "Экспартаваць у родным фармаце",
+ "translate-taskui-export-as-po": "Экспартаваць для оф-лайнавага перакладу",
+ "translate-taction-translate": "Пераклад",
+ "translate-taction-proofread": "Вычытка",
+ "translate-taction-lstats": "Статыстыка па мове",
+ "translate-taction-mstats": "Статыстыка груп паведамленьняў",
+ "translate-taction-export": "Экспарт",
+ "translate-taction-disabled": "Гэтае дзеяньне выключанае ў гэтай вікі.",
+ "translate-page-no-such-language": "Пададзеная няслушная мова.",
+ "translate-page-no-such-group": "Пададзеная няслушная група.",
+ "translate-page-disabled": "Пераклады на гэту мову ў гэтай групе былі адключаны. Прычына:\n\n<em>$1</em>",
+ "translate-language-disabled": "Пераклад на гэтую мову адключаны.",
+ "translate-page-settings-legend": "Парамэтры",
+ "translate-page-group": "Група",
+ "translate-page-language": "Мова",
+ "translate-page-limit": "Ліміт",
+ "translate-page-limit-option": "$1 {{PLURAL:$1|паведамленьне|паведамленьні|паведамленьняў}} на старонцы",
+ "translate-submit": "Паказаць",
+ "translate-page-navigation-legend": "Навігацыя",
+ "translate-page-showing": "Паказаныя паведамленьні з $1 да $2 з $3.",
+ "translate-page-showing-all": "{{PLURAL:$1|Паказанае $1 паведамленьне|Паказаныя $1 паведамленьні|Паказаныя $1 паведамленьняў}}.",
+ "translate-page-showing-none": "Няма паведамленьняў для паказу.",
+ "translate-next": "Наступная старонка",
+ "translate-prev": "Папярэдняя старонка",
+ "translate-page-description-legend": "Інфармацыя пра групу",
+ "translate-page-description-hasoptional": "Гэтая група паведамленьняў утрымлівае неабавязковыя паведамленьні.\nНеабавязковыя паведамленьні мусяць перакладацца толькі ў тым выпадку, калі Вашая мова мае асаблівыя патрабаваньні, кшталту напісаньня без прагалаў, ці трансьлітарацыі ўласных імёнаў ці назваў. $1",
+ "translate-page-description-hasoptional-open": "Паказаць неабавязковыя паведамленьні.",
+ "translate-page-edit": "рэдагаваць",
+ "translate-ext-url": "<hr />Сайт: $1",
+ "translate-optional": "(неабавязковае)",
+ "translate-ignored": "(ігнараванае)",
+ "translate-edit-title": "Рэдагаваньне «$1»",
+ "translate-edit-definition": "Тэкст паведамленьня",
+ "translate-edit-translation": "Пераклад",
+ "translate-edit-contribute": "рэдагаваць",
+ "translate-edit-no-information": "''Гэтае паведамленьне ня мае дакумэнтацыі.\nКалі Вы ведаеце, дзе ці як выкарыстоўваецца гэтае паведамленьне, то Вы можаце дапамагчы іншым перакладчыкам, дадаўшы дакумэнтацыю да гэтага паведамленьня.''",
+ "translate-edit-information": "Інфармацыя пра паведамленьне ($1)",
+ "translate-edit-in-other-languages": "Паведамленьне на іншых мовах",
+ "translate-edit-committed": "Цяперашні пераклад у праграме",
+ "translate-edit-warnings": "Папярэджаньне аб няпоўных перакладах",
+ "translate-edit-tmsugs": "Прапановы з памяці перакладу",
+ "translate-edit-tmmatch-source": "Тэкст крыніцы перакладу: $1",
+ "translate-edit-tmmatch": "$1% супадзеньне",
+ "translate-use-suggestion": "Замяніць цяперашні пераклад на гэтую прапанову.",
+ "translate-edit-nopermission": "Для перакладу паведамленьняў неабходны дазвол.",
+ "translate-edit-askpermission": "Запытаць дазвол",
+ "translate-magic-pagename": "Пашыраны пераклад MediaWiki",
+ "translate-magic-help": "Вы можаце перакладаць псэўданімы спэцыяльных старонак, магічныя словы і прасторы назваў.\n\nПсэўданімы спэцыяльных старонак і магічныя словы могуць мець некалькі перакладаў, якія разьдзяляюцца коскай (,).\nПрасторы назваў могуць мець толькі адзін пераклад.\n\nУ перакладах прастораў назваў радок <code>абмеркаваньне $1</code> мае спэцыяльнае значэньне. <code>$1</code> будзе замененае на назву сайта (напрыклад, <code>{{ns:project_talk}}</code>).\nКалі для Вашай мовы немагчыма стварыць адпаведны выраз бязь зьмены назвы сайта, калі ласка, [[Support|зьвяжыцеся з распрацоўшчыкамі]].\n\nВам неабходна ўваходзіць у групу перакладчыкаў, каб захаваць зьмены.\nЗьмены ня будуць захаваныя, пакуль Вы не націсьніце кнопку ўнізе.",
+ "translate-magic-module": "Модуль:",
+ "translate-magic-submit": "Паказаць",
+ "translate-magic-cm-export": "Экспартаваць",
+ "translate-magic-nothing-to-export": "Няма нічога на экспарт.",
+ "translate-magic-cm-to-be": "Павінна быць",
+ "translate-magic-cm-current": "Цяперашняе",
+ "translate-magic-cm-original": "Арыгінальнае",
+ "translate-magic-cm-comment": "Камэнтар:",
+ "translate-magic-cm-save": "Захаваць",
+ "translate-magic-cm-updatedusing": "Абноўлена з дапамогай [[Special:AdvancedTranslate|{{int:Translate-magic-pagename}}]]",
+ "translate-magic-cm-savefailed": "Памылка запісу",
+ "translate-magic-special": "Псэўданімы спэцыяльных старонак",
+ "translate-magic-words": "Магічныя словы",
+ "translate-magic-namespace": "Прасторы назваў",
+ "translate-magic-notsaved": "Ваша рэдагаваньне не было захавана!",
+ "translate-magic-errors": "Калі ласка, выпраўце {{PLURAL:$1|1=наступную памылку|наступныя памылкі}} у перакладах:",
+ "translate-magic-saved": "Вашыя зьмены былі пасьпяхова захаваны.",
+ "translate-checks-parameters": "{{PLURAL:$2|1=Наступны парамэтар не выкарыстоўваецца|Наступныя парамэтры не выкарыстоўваюцца}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-parameters-unknown": "{{PLURAL:$2|1=Невядомы парамэтар|Невядомыя парамэтры}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-balance": "Няпарная колькасьць {{PLURAL:$2|дужкі|дужак|дужак}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links": "{{PLURAL:$2|1=Праблематычная спасылка|Праблематычныя спасылкі}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links-missing": "{{PLURAL:$2|Адсутнічае наступная $2 спасылка|Адсутнічаюць наступныя $2 спасылкі|Адсутнічаюць наступныя $2 спасылак}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-xhtml": "Калі ласка, выпраўце {{PLURAL:$2|1=наступны тэг|наступныя тэгі}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-plural": "Крынічны тэкст выкарыстоўвае <nowiki>{{PLURAL:}}</nowiki>, а пераклад — не.",
+ "translate-checks-plural-forms": "<nowiki>{{PLURAL:}}</nowiki> быў выкарыстаны {{PLURAL:$1|1=з адной формай|з $1 формамі}}, але {{PLURAL:$2|1=падтрымліваецца толькі адна форма|падтрымліваюцца $2 формаў}} (за выняткам формаў 0= і 1=).",
+ "translate-checks-plural-dupe": "<nowiki>{{PLURAL:}}</nowiki> мае аднолькавыя формы на канцы. <nowiki>{{PLURAL:$1|мэтро|мэтро}}</nowiki> мусіць быць замененае на <nowiki>{{PLURAL:$1|мэтро}}</nowiki>.",
+ "translate-checks-pagename": "Прастора назваў зьменена ў крынічным тэксьце",
+ "translate-checks-format": "Гэты пераклад няслушна перакладае крынічны тэкст альбо ўтрымлівае сынтаксычныя памылкі: $1",
+ "translate-checks-escape": "Наступнае выдзяленьне можа быць выпадковым: <strong>$1</strong>",
+ "translate-checks-parametersnotequal": "Колькасьць парамэтраў — {{PLURAL:$1|$1}}, а мусіць быць — $2.",
+ "translate-checks-malformed": "<nowiki>$1</nowiki> няслушны.",
+ "translate-checks-fudforum-syntax": "Выкарыстоўваць <nowiki>$1</nowiki> замест <nowiki>$2</nowiki> у гэтым праекце.",
+ "translate-pref-nonewsletter": "Не дасылаць мне інфармацыйныя лісты па электроннай пошце",
+ "translate-pref-editassistlang": "Дапаможныя мовы:",
+ "prefs-translate": "Налады перакладу",
+ "translate-pref-editassistlang-help": "Падзелены коскамі сьпіс кодаў моў.\nПераклады паведамленьняў на гэтыя мовы паказваюцца ў працэсе перакладаньня.\nСьпіс перадвызначаных моў залежыць ад Вашай мовы.",
+ "translate-pref-editassistlang-bad": "Няслушны код мовы ў сьпісе:\n<nowiki>$1</nowiki>.",
+ "right-translate": "Рэдагаваньне з выкарыстаньнем інтэрфэйсу перакладу",
+ "right-translate-manage": "кіраваньне групамі перакладаў",
+ "action-translate-manage": "кіраваньне групамі перакладаў",
+ "right-translate-import": "імпартаваньне вонкавых перакладаў",
+ "action-translate-import": "імпартаваньне выкананых у оф-лайне перакладаў",
+ "right-translate-messagereview": "рэцэнзаваньне перакладаў",
+ "right-translate-groupreview": "зьмена стану апрацоўкі групаў паведамленьняў",
+ "translate-rc-translation-filter": "Фільтраваць пераклады:",
+ "translate-rc-translation-filter-no": "Не",
+ "translate-rc-translation-filter-only": "Паказваць толькі пераклады",
+ "translate-rc-translation-filter-filter": "Схаваць пераклады",
+ "translate-rc-translation-filter-site": "Толькі сыстэмныя паведамленьні",
+ "translationstats": "Статыстыка перакладаў",
+ "translate-stats-edits": "Рэдагаваньні",
+ "translate-stats-users": "Перакладчыкі",
+ "translate-stats-registrations": "Рэгістрацыі",
+ "translate-stats-reviews": "Вычыткі",
+ "translate-stats-reviewers": "Правяраючыя",
+ "translate-statsf-intro": "Гэта форма дапаможа Вам стварыць просты графік. Для ўсіх значэньняў можна задаць ніжнюю і верхнюю мяжу.",
+ "translate-statsf-options": "Парамэтры графіка",
+ "translate-statsf-width": "Шырыня ў піксэлях:",
+ "translate-statsf-height": "Вышыня ў піксэлях:",
+ "translate-statsf-days": "Пэрыяд часу ў днях:",
+ "translate-statsf-start": "Дата пачатку:",
+ "translate-statsf-scale": "Ступень структураваньня зьменаў:",
+ "translate-statsf-scale-months": "Месяцы",
+ "translate-statsf-scale-weeks": "Тыдні",
+ "translate-statsf-scale-days": "Дні",
+ "translate-statsf-scale-hours": "Гадзіны",
+ "translate-statsf-count": "Адзінка вымярэньня:",
+ "translate-statsf-count-edits": "Колькасьць рэдагаваньняў",
+ "translate-statsf-count-users": "Актыўныя перакладчыкі",
+ "translate-statsf-count-registrations": "Новыя ўдзельнікі",
+ "translate-statsf-count-reviews": "Вычыткі перакладаў",
+ "translate-statsf-count-reviewers": "Правяраючыя",
+ "translate-statsf-language": "Сьпіс кодаў моваў, падзеленых коскамі:",
+ "translate-statsf-group": "Сьпіс групаў кодаў, падзелены коскамі:",
+ "translate-statsf-submit": "Папярэдні прагляд",
+ "translate-tag-category": "Старонкі на пераклад",
+ "translate-tag-page-desc": "Пераклад вікі-старонкі [[$2|$1]].",
+ "translate-sidebar-alltrans": "На іншых мовах",
+ "translations": "Усе пераклады",
+ "translations-summary": "Увядзіце ўнізе назву паведамленьня, каб паглядзець усе даступныя пераклады.",
+ "translate-translations-no-message": "Паведамленьне «$1» нельга перакласьці",
+ "translate-translations-none": "Няма перакладаў для «$1»",
+ "translate-translations-count": "{{PLURAL:$1|Знойдзены $1 пераклад|Знойдзеныя $1 пераклады|Знойдзеныя $1 перакладаў}}.",
+ "translate-translations-fieldset-title": "Паведамленьне",
+ "translate-translations-messagename": "Назва:",
+ "translate-translations-project": "Праект:",
+ "translate-translations-including-no-param": "Калі ласка, пазначце слушны ключ паведамленьня ў парамэтры падстаронкі",
+ "translate-translations-history-short": "г",
+ "languagestats": "Моўная статыстыка",
+ "languagestats-summary": "Гэта старонка паказвае статыстыку перакладаў для ўсіх групаў паведамленьняў для мовы.",
+ "languagestats-stats-for": "Статыстыка перакладаў для $1 ($2).",
+ "languagestats-recenttranslations": "апошнія пераклады",
+ "translate-langstats-incomplete": "Некаторыя статыстычныя зьвесткі на старонцы няпоўныя. Для атрыманьня апошніх зьвестак трэба абнавіць старонку.",
+ "translate-langstats-expand": "разгарнуць",
+ "translate-langstats-collapse": "згарнуць",
+ "translate-langstats-expandall": "разгарнуць усе",
+ "translate-langstats-collapseall": "згарнуць усе",
+ "translate-language-code": "Код мовы",
+ "translate-language-code-field-name": "Код мовы:",
+ "translate-suppress-complete": "Схаваць цалкам перакладзеныя групы паведамленьняў",
+ "translate-ls-noempty": "Схаваць зусім не перакладзеныя групы паведамленьняў",
+ "translate-language": "Мова",
+ "translate-total": "Паведамленьні",
+ "translate-untranslated": "Неперакладзеныя",
+ "translate-percentage-complete": "Перакладзеныя",
+ "translate-percentage-fuzzy": "Састарэлыя",
+ "translate-languagestats-overall": "Усе паведамленьні групаў разам",
+ "translate-ls-submit": "Паказаць статыстыку",
+ "translate-ls-column-group": "Група паведамленьняў",
+ "translate-mgs-pagename": "Статыстыка груп паведамленьняў",
+ "translate-mgs-fieldset": "Налады паказу",
+ "translate-mgs-group": "Група паведамленьняў:",
+ "translate-mgs-nocomplete": "Не паказваць мовы, пераклад на якія цалкам скончаны",
+ "translate-mgs-noempty": "Не паказваць мовы, для якіх няма ніякіх перакладаў",
+ "translate-mgs-submit": "Паказаць статыстыку",
+ "translate-mgs-column-language": "Мова",
+ "translate-mgs-totals": "Усе мовы разам",
+ "translate-mgs-invalid-group": "Пазначаная група «$1» не існуе.",
+ "translate-mgs-nothing": "Па вашым запыце статыстыка адсутнічае.",
+ "supportedlanguages": "Мовы перакладу",
+ "supportedlanguages-summary": "На гэтай старонцы пададзены сьпіс усіх моваў, якія падтрымлівае {{SITENAME}},\nразам з імёнамі перакладчыкаў, якія перакладаюць на гэтыя мовы.\nТым большым выглядае імя перакладчыка, чым больш перакладаў ён зрабіў.\nКолер падкрэсьленьня сьведчыць, як даўно перакладчык быў актыўны.",
+ "supportedlanguages-colorlegend": "Значэньне колеру: апошні пераклад выкананы $1 дзень/дні/дзён таму.",
+ "supportedlanguages-translators": "{{PLURAL:$2|1=Перакладчык|Перакладчыкі}}: $1",
+ "supportedlanguages-recenttranslations": "апошнія пераклады",
+ "supportedlanguages-count": "$1 {{PLURAL:$1|мова|мовы|моваў}} агулам.",
+ "supportedlanguages-activity": "$1: $2 {{PLURAL:$2|праўка|праўкі|правак}}, апошняя — $3 {{PLURAL:$3|дзень|дні|дзён}} таму",
+ "translate-save": "Захаваць ($1)",
+ "translate-jssti-add": "Дадаць у сьпіс",
+ "managemessagegroups": "Кіраваньне групамі паведамленьняў",
+ "translate-smg-notallowed": "Вам не дазволена выканаць гэтае дзеяньне.",
+ "translate-smg-nochanges": "Няма зьменаў для апрацоўкі.",
+ "translate-smg-submit": "Даслаць зьмены для апрацоўкі",
+ "translate-smg-submitted": "Апісаньні паведамленьняў былі абноўленыя. Зьмены зараз апрацоўваюцца ў тле.",
+ "translate-smg-left": "Зьмест паведамленьня ў вікі",
+ "translate-smg-right": "Уваходныя зьмены",
+ "translate-manage-import-diff": "Паведамленьне $1 | Дзеяньні: $2",
+ "translate-manage-import-new": "Новае паведамленьне $1",
+ "translate-manage-import-deleted": "Выдаленае паведамленьне $1",
+ "translate-manage-action-import": "Імпарт",
+ "translate-manage-action-conflict": "Імпарт і недакладнасьць",
+ "translate-manage-action-ignore": "Ігнараваньне",
+ "translate-manage-action-fuzzy": "Імпарт і недакладныя пераклады",
+ "translate-manage-nochanges": "Няма ніякіх зьменаў у вызначэньнях паведамленьняў для гэтай групы.",
+ "translate-manage-nochanges-other": "Няма ніякіх зьменаў для гэтай мовы.\nВыкарыстоўвайце спасылкай ніжэй для вяртаньня да прагляду падрабязнасьцяў групы.",
+ "translate-manage-inconsistent": "Выяўлена несупадзеньне ў запыце.\nКалі ласка, праверце зьмены і паспрабуйце зноў. Падрабязнасьці: $1.",
+ "translate-manage-toolong": "Перавышаны максымальны час апрацоўкі у $1 {{PLURAL:$1|сэкунду|сэкунды|сэкундаў}}.\nКалі ласка, адпраўце форму ізноў для працягу апрацоўкі.",
+ "translate-manage-import-summary": "Імпартаваньне новай вэрсіі з вонкавай крыніцы",
+ "translate-manage-conflict-summary": "Імпартаваньне новай вэрсіі з вонкавай крыніцы. Калі ласка, праверце яе.",
+ "translate-manage-fuzzy-summary": "Азначэньне паведамленьня зьмененае",
+ "translate-manage-submit": "Выканаць",
+ "translate-manage-intro-other": "Ніжэй пададзены сьпіс зьменаў у перакладах для мовы $1.\nКалі ласка, праглядзіце зьмены і выберыце пажаданае дзеяньне для кожнага абнаўленьня.\nКалі вы праігнаруеце зьмены, гэта будзе мець толькі часовы эфэкт.",
+ "translate-manage-import-ok": "Імпартаваная новая вэрсія старонкі $1.",
+ "translate-manage-import-done": "Усё выканана!",
+ "importtranslations": "Імпарт перакладаў",
+ "translate-import-from-local": "Загрузіць лякальны файл:",
+ "translate-import-load": "Загрузіць файл",
+ "translate-import-err-dl-failed": "Немагчыма загрузіць файл:\n$1",
+ "translate-import-err-ul-failed": "Загрузка файла не атрымалася",
+ "translate-import-err-invalid-title": "Пададзеная назва файла <nowiki>$1</nowiki> — няслушная.",
+ "translate-import-err-no-such-file": "Файл <nowiki>$1</nowiki> не існуе альбо не загружаны лякальна.",
+ "translate-import-err-stale-group": "Група паведамленьняў, да якой належыць гэты файл, не існуе.",
+ "translate-import-err-no-headers": "Файл не зьяўляецца слушным файлам Gettext у фармаце пашырэньня Translate:\nНемагчыма вызначыць групу і мову з загалоўку файла.",
+ "translate-import-err-warnings": "Няслушны файл.\nУпэўніцеся што Ваш рэдактар не выдаляе палі msgctxt.\nПадрабязнасьці: $1",
+ "translate-js-summary": "Апісаньне:",
+ "translate-js-save": "Захаваць",
+ "translate-js-next": "Захаваць і адкрыць наступнае",
+ "translate-js-nonext": "Гэта было апошняе паведамленьне на гэтай старонцы.",
+ "translate-js-skip": "Адкрыць наступнае",
+ "translate-js-save-failed": "Немагчыма захаваць. Калі ласка, паведаміце пра гэтую памылку.",
+ "translate-js-history": "Гісторыя перакладу",
+ "translate-js-support": "Задаць пытаньне",
+ "translate-js-support-title": "Можаце задаць пытаньне, калі Вам бракуе інфармацыі пра кантэкст паведамленьня.",
+ "translate-js-support-unsaved-warning": "Вы маеце незахаваныя пераклады.",
+ "translate-gs-pos": "Пазыцыя",
+ "translate-gs-code": "Код",
+ "translate-gs-continent": "Кантынэнт",
+ "translate-gs-speakers": "Носьбітаў",
+ "translate-gs-score": "Адзнака",
+ "translate-gs-multiple": "Некалькі",
+ "translate-gs-count": "Колькасьць",
+ "translate-gs-total": "Усяго",
+ "translate-gs-avgscore": "Сярэдняя адзнака",
+ "translate-documentation-language": "дакумэнтацыя паведамленьня",
+ "translate-searchprofile": "Пераклады",
+ "translate-searchprofile-tooltip": "Шукаць па ўсіх перакладах",
+ "translate-search-languagefilter": "Мова паведамленьняў:",
+ "translate-search-nofilter": "любая",
+ "translate-messagereview-submit": "Ухваліць",
+ "translate-messagereview-progress": "Ухваляем...",
+ "translate-messagereview-failure": "Немагчыма ўхваліць: $1",
+ "translate-messagereview-done": "Ухваленае",
+ "translate-messagereview-reviews": "Ухваленае $1 {{PLURAL:$1|1=удзельнікам|удзельнікамі}}",
+ "translate-messagereview-reviewswithyou": "Ухваленае {{PLURAL:$1|1=вамі|$1 удзельнікамі, разам з вамі}}",
+ "api-error-invalidrevision": "Пераклад ня знойдзены",
+ "api-error-unknownmessage": "Паведамленьне ня знойдзена",
+ "api-error-fuzzymessage": "Пераклад пазначаны як недакладны",
+ "api-error-owntranslation": "Вы ня можаце ўхваліць уласныя пераклады",
+ "translate-messagereview-no-fuzzy": "Няпэўныя пераклады (FUZZY) ня могуць быць ухваленыя.",
+ "translate-messagereview-no-own": "Вы ня можаце ўхваліць уласныя пераклады.",
+ "translate-messagereview-doit": "Ухваліць гэты пераклад.",
+ "log-name-translationreview": "Журнал рэцэнзіяў перакладаў",
+ "log-description-translationreview": "Журнал усіх рэцэнзіяў перакладаў і групаў паведамленьняў.",
+ "logentry-translationreview-message": "$1 {{GENDER:$2|ухваліў|ухваліла}} пераклад $3",
+ "logentry-translationreview-group": "$1 {{GENDER:$2|зьмяніў|зьмяніла}} стан перакладу $3 з $6 на $7 для мовы $4",
+ "group-translate-sandboxed": "Незацьверджаныя перакладчыкі",
+ "group-translate-sandboxed-member": "{{GENDER:$1|незацьверджаны перакладчык|непацьверджаная перакладчыца}}",
+ "right-translate-sandboxmanage": "кіраваць удзельнікамі ў пясочніцы",
+ "action-translate-sandboxmanage": "кіраваць удзельнікамі ў пясочніцы",
+ "right-translate-sandboxaction": "ажыцьцяўляць ухваленыя дзеяньні адносна ўдзельнікаў у пясочніцы",
+ "action-translate-sandboxaction": "ажыцьцяўляць ухваленыя дзеяньні адносна ўдзельнікаў у пясочніцы",
+ "translate-workflow-state-": "(не зададзена)",
+ "translate-workflowstatus": "Статус: $1",
+ "translate-workflow-set-do": "Усталяваць",
+ "translate-workflow-set-doing": "Адпраўка…",
+ "translate-workflow-set-done": "Усталявана!",
+ "translate-workflow-set-error-alreadyset": "Запытаны стан ідэнтычны цяперашняму.",
+ "translate-workflow-autocreated-summary": "Аўтаматычнае стварэньне старонкі стану перакладу «$1»",
+ "translate-stats-workflow": "Статус",
+ "translate-workflowgroup-label": "Станы перакладаў",
+ "translate-workflowgroup-desc": "Гэтая група паведамленьняў зьмяшчае пераклады станаў перакладаў.\nСтаны вызначаныя ў зьменнай канфігурацыі $wgTranslateWorkflowStates.",
+ "translate-dynagroup-recent-label": "Апошнія пераклады",
+ "translate-dynagroup-recent-desc": "Гэтая група паведамленьняў зьмяшчае ўсе апошнія пераклады на гэтую мову.\nКарысьней усяго для вычыткі.",
+ "translate-dynagroup-additions-label": "Апошнія дапаўненьні",
+ "translate-dynagroup-additions-desc": "Гэтая група зьмяшчае новыя і зьмененыя паведамленьні.",
+ "translate-dynagroup-by": "Пераклад выкананы {{GENDER:$1|ўдзельнікам|ўдзельніцай}} $1",
+ "translate-dynagroup-byc": "Пераклад выкананы {{GENDER:$1|ўдзельнікам|ўдзельніцай}} $1 ($2)",
+ "translate-dynagroup-last": "Апошняе зьмяненьне выкананае {{GENDER:$1|ўдзельнікам|ўдзельніцай}} $1",
+ "translate-dynagroup-lastc": "Апошняе зьмяненьне выкананае {{GENDER:$1|ўдзельнікам|ўдзельніцай}} $1 ( $2 )",
+ "translate-gethelp": "Дапамога",
+ "translate-msggroupselector-projects": "Група паведамленьняў",
+ "translate-msggroupselector-search-placeholder": "Шукаць групы",
+ "translate-msggroupselector-search-all": "Усе",
+ "translate-msggroupselector-search-recent": "Апошнія",
+ "translate-msggroupselector-view-subprojects": "$1 {{PLURAL:$1|падгрупа|падгрупы|падгрупаў}}",
+ "tux-languageselector": "Пераклад на мову",
+ "tux-tab-all": "Усе",
+ "tux-tab-untranslated": "Неперакладзеныя",
+ "tux-tab-outdated": "Састарэлыя",
+ "tux-tab-translated": "Перакладзеныя",
+ "tux-tab-unproofread": "Ня ўхваленае",
+ "tux-edit": "Рэдагаваць",
+ "tux-status-optional": "Неабавязковае",
+ "tux-status-fuzzy": "Састарэлае",
+ "tux-status-proofread": "Ухваленае",
+ "tux-status-translated": "Перакладзенае",
+ "tux-status-saving": "Захаваньне...",
+ "tux-status-unsaved": "Не захавана",
+ "tux-editor-placeholder": "Ваш пераклад",
+ "tux-editor-paste-original-button-label": "Уставіць зыходны тэкст",
+ "tux-editor-discard-changes-button-label": "Скасаваць зьмены",
+ "tux-editor-save-button-label": "Захаваць пераклад",
+ "tux-editor-skip-button-label": "Да наступнага",
+ "tux-editor-cancel-button-label": "Скасаваць",
+ "tux-editor-confirm-button-label": "Зацьвердзіць пераклад",
+ "tux-editor-shortcut-info": "Націсьніце $1, каб захаваць, або $2, каб прапусьціць і перайсьці да наступнага паведамленьня",
+ "tux-editor-edit-desc": "Зьмяніць дакумэнтацыю",
+ "tux-editor-add-desc": "Дадаць дакумэнтацыю",
+ "tux-editor-suggestions-title": "Прапановы",
+ "tux-editor-in-other-languages": "На іншых мовах",
+ "tux-editor-need-more-help": "Патрэбная дапамога?",
+ "tux-editor-ask-help": "Спытайце ў нас",
+ "tux-editor-tm-match": "$1% супадзеньне",
+ "tux-warnings-more": "{{PLURAL:$1|Яшчэ $1}}",
+ "tux-warnings-hide": "схаваць",
+ "tux-editor-save-failed": "Не ўдалося захаваць пераклад: $1",
+ "tux-editor-n-uses": "выкарыстаны $1 {{PLURAL:$1|раз|разы|разоў}}",
+ "tux-editor-message-desc-more": "Болей",
+ "tux-editor-message-desc-less": "Меней",
+ "tux-editor-clear-translated": "Схаваць перакладзеныя",
+ "tux-editor-proofreading-mode": "Вычытка",
+ "tux-editor-translate-mode": "Сьпіс",
+ "tux-editor-proofreading-hide-own-translations": "Схаваць вашыя пераклады",
+ "tux-editor-proofreading-show-own-translations": "Паказаць вашыя пераклады",
+ "tux-proofread-action-tooltip": "Ухваліць",
+ "tux-proofread-edit-label": "Рэдагаваць",
+ "tux-editor-page-mode": "Старонка",
+ "tux-editor-outdated-warning": "Гэтаму перакладу, магчыма, патрабуецца абнаўленьне.",
+ "tux-editor-outdated-warning-diff-link": "Паказаць розьніцу",
+ "tux-editor-doc-editor-placeholder": "Дакумэнтацыя паведамленьня",
+ "tux-editor-doc-editor-save": "Захаваць дакумэнтацыю",
+ "tux-editor-doc-editor-cancel": "Скасаваць",
+ "tux-messagetable-more-messages": "Яшчэ $1 {{PLURAL:$1|паведамленьне|паведамленьні|паведамленьняў}}",
+ "tux-messagetable-loading-messages": "Загрузка {{PLURAL:$1|1=паведамленьня|паведамленьняў}}...",
+ "tux-message-filter-placeholder": "Адфільтраваць сьпіс",
+ "tux-message-filter-result": "$1 {{PLURAL:$1|вынік|вынікі|вынікаў}} на запыт «$2»",
+ "tux-message-filter-advanced-button": "Пашыраны пошук",
+ "tux-message-filter-optional-messages-label": "Неабавязковыя паведамленьні",
+ "tux-proofread-translated-by-self": "Перакладзена вамі",
+ "tux-empty-list-all": "Гэтая група паведамленьняў пустая",
+ "tux-empty-list-all-guide": "Выберыце для перакладу іншую групу паведамленьняў",
+ "tux-translate-page-no-such-group": "'''Запытаная група не існуе.''' Выберыце іншую групу паведамленьняў.",
+ "tux-empty-list-translated": "Няма перакладзеных паведамленьняў",
+ "tux-empty-list-translated-guide": "Вы можаце дапамагчы зь перакладам",
+ "tux-empty-list-translated-action": "Перакласьці",
+ "tux-empty-no-messages-to-display": "Няма паведамленьняў да адлюстраваньня.",
+ "tux-empty-there-are-optional": "Маюцца неабавязковыя паведамленьні, не паказаныя ў сьпісе",
+ "tux-empty-show-optional-messages": "Паказаць неабавязковыя паведамленьні",
+ "tux-empty-no-outdated-messages": "Састарэлых паведамленьняў няма",
+ "tux-empty-nothing-to-proofread": "Няма што вычытваць",
+ "tux-empty-you-can-help-providing": "Вы можаце дапамагчы новымі перакладамі",
+ "tux-empty-nothing-new-to-proofread": "Няма што новага вычытваць",
+ "tux-empty-you-can-review-already-proofread": "Вы можаце правяраць пераклады, ужо ўхваленыя іншымі.",
+ "tux-empty-list-other": "Няма што перакладаць",
+ "tux-empty-list-other-guide": "Вы можаце дапамагчы вычыткай зробленых перакладаў",
+ "tux-empty-list-other-action": "Вычытаць пераклады",
+ "tux-empty-list-other-link": "Паказаць усе паведамленьні",
+ "tux-editor-close-tooltip": "Закрыць",
+ "tux-editor-expand-tooltip": "Разгарнуць",
+ "tux-editor-collapse-tooltip": "Згарнуць",
+ "tux-editor-message-tools-history": "Гісторыя",
+ "tux-editor-message-tools-translations": "Усе пераклады",
+ "tux-editor-loading": "Загрузка...",
+ "translate-search-more-languages-info": "Яшчэ на $1 {{PLURAL:$1|1=мове|мовах}}",
+ "translate-statsbar-tooltip": "$1% перакладзена, $2% вычытана",
+ "translate-statsbar-tooltip-with-fuzzy": "$1% перакладзена, $2% вычытана, $3% састарэла",
+ "translate-search-more-groups-info": "Яшчэ $1 {{PLURAL:$1|група|групы|груп}}"
+}
diff --git a/MLEB/Translate/i18n/core/be.json b/MLEB/Translate/i18n/core/be.json
new file mode 100644
index 00000000..0ce94ee9
--- /dev/null
+++ b/MLEB/Translate/i18n/core/be.json
@@ -0,0 +1,136 @@
+{
+ "@metadata": {
+ "authors": [
+ "Nemo bis",
+ "Чаховіч Уладзіслаў",
+ "Дзяніс Тутэйшы",
+ "Mikalai Udodau"
+ ]
+ },
+ "translate": "Пераклад",
+ "translate-desc": "[[Special:Translate|Адмысловая старонка]] для перакладу MediaWiki і іншых праграм",
+ "translate-taskui-view": "Паказаць усе паведамленні",
+ "translate-taskui-untranslated": "Паказаць неперакладзеныя паведамленні",
+ "translate-taskui-optional": "Паказаць дадатковыя паведамленні",
+ "translate-taskui-acceptqueue": "Толькі паведамленні, якія патрабуюць майго ўхвалення",
+ "translate-taskui-reviewall": "Праверыць усе пераклады",
+ "translate-taskui-export-to-file": "Экспарт у родным фармаце",
+ "translate-taskui-export-as-po": "Экспарт для афлайнавага перакладу",
+ "translate-taction-translate": "Пераклад",
+ "translate-taction-proofread": "Вычытка",
+ "translate-taction-lstats": "Статыстыка мовы",
+ "translate-taction-mstats": "Статыстыкі групы паведамленняў",
+ "translate-taction-export": "Экспарт",
+ "translate-taction-disabled": "Гэта дзеянне адключана ў гэтай вікі.",
+ "translate-page-no-such-language": "Перададзены няслушны код мовы",
+ "translate-page-no-such-group": "Няслушна ўказана група.",
+ "translate-page-disabled": "У гэтым раздзеле пераклады на даную мову адключаны. Прычына:\n\n<em>$1</em>",
+ "translate-language-disabled": "Магчымасць перакладу на гэту мову адключана.",
+ "translate-page-settings-legend": "Параметры",
+ "translate-page-group": "Група",
+ "translate-page-language": "Мова",
+ "translate-page-limit": "Абмежаванне",
+ "translate-page-limit-option": "$1 {{PLURAL:$1|паведамленне|паведамленні|паведамленняў}} на старонку",
+ "translate-submit": "Вывесці",
+ "translate-page-navigation-legend": "Навігацыя",
+ "translate-page-showing": "Паказаны паведамленні з $1 па $2 (з $3).",
+ "translate-page-showing-all": "Паказана $1 {{PLURAL:$1|паведамленне|паведамленні|паведамленняў}}.",
+ "translate-page-showing-none": "Няма паведамленняў для паказу.",
+ "translate-next": "Наступная старонка",
+ "translate-prev": "Папярэдняя старонка",
+ "translate-page-description-legend": "Інфармацыя пра групу",
+ "translate-page-description-hasoptional": "У гэтай групе ўтрымліваюцца дадатковыя паведамленні.\nДадатковыя паведамленні перакладаюцца толькі ў тых выпадках, калі ваша мова прад'яўляе нейкія дадатковыя патрабаванні, — напрыклад, калі дзесьці не павінны выкарыстоўвацца прабелы, ці пры транслітарацыі уласных імёнаў. $1",
+ "translate-page-description-hasoptional-open": "Паказваць дадатковыя паведамленні.",
+ "translate-page-edit": "правіць",
+ "translate-ext-url": "<hr />Сайт: $1",
+ "translate-optional": "(неабавязковае)",
+ "translate-ignored": "(ігнаруемае)",
+ "translate-edit-title": "Правіць «$1»",
+ "translate-edit-definition": "Фармулёўка паведамлення",
+ "translate-edit-translation": "Пераклад",
+ "translate-edit-contribute": "правіць",
+ "translate-edit-no-information": "''Гэта паведамленне не мае апісанні. Калі вы ведаеце, дзе ці як гэта паведамленне выкарыстоўваецца, то можаце дапамагчы іншым перакладчыкам, дадаўшы да яго апісанне.''",
+ "translate-edit-information": "Інфармацыя пра паведамленне ($1)",
+ "translate-edit-in-other-languages": "Паведамленне на іншых мовах",
+ "translate-edit-committed": "Бягучы пераклад у праграме",
+ "translate-edit-warnings": "Папярэджанні пра няпоўныя пераклады",
+ "translate-edit-tmsugs": "Прапановы з памяці перакладаў",
+ "translate-edit-tmmatch-source": "Тэкст зыходнага паведамлення для перакладу: $1",
+ "translate-edit-tmmatch": "$1% адпаведнасць",
+ "translate-use-suggestion": "Замяніць бягучы тэкст перакладу на гэту падказку.",
+ "translate-edit-nopermission": "Для перакладу паведамленняў вам трэба атрымаць дазвол.",
+ "translate-edit-askpermission": "Запытаць дазвол",
+ "translate-magic-pagename": "Паглыблены пераклад MediaWiki",
+ "translate-magic-help": "Вы можаце перакладаць псеўданімы службовых старонак, «чароўныя словы» і назвы прастор імёнаў.\n\nСлужбовыя старонкі і «чароўныя словы» могуць мець некалькі перакладаў.\nПераклады падзяляюцца коскай (,).\nНазвы прастор імёнаў могуць мець толькі адзін варыянт перакладу.\n\nПераклад назваў прастор імёнаў, якія змяшчаюць старонкі абмеркаванняў («<code>$1 talk</code>»), можа апынуцца складаней, з прычыны таго, што «<code>$1</code>» тут будзе заменена на імя сайта (напрыклад, «<code>{{ns:project_talk}}</code>»).\nКалі падобная граматычная канструкцыя для вашай мовы некарэктная без змены імя сайта, паведаміце нам пра гэта на старонцы [[Support]].\n\nКаб захаваць змены, вы павінны ўваходзіць у групу перакладчыкаў.\nЗмены не будуць захаваны, пакуль вы не націснеце кнопку ніжэй.",
+ "translate-magic-module": "Модуль:",
+ "translate-magic-submit": "Вывесці",
+ "translate-magic-cm-export": "Выгрузіць",
+ "translate-magic-nothing-to-export": "Няма чаго экспартаваць.",
+ "translate-magic-cm-to-be": "Павінна быць",
+ "translate-magic-cm-current": "Бягучае",
+ "translate-magic-cm-original": "Арыгінал",
+ "translate-magic-cm-comment": "Заўвага:",
+ "translate-magic-cm-save": "Запісаць",
+ "translate-magic-cm-savefailed": "Не атрымалася запісаць",
+ "translate-magic-special": "Псеўданімы адмысловых старонак",
+ "translate-magic-words": "Магічныя словы",
+ "translate-magic-namespace": "Прасторы імёнаў",
+ "translate-magic-notsaved": "Ваша праўка не запісана!",
+ "translate-magic-errors": "Калі ласка, выправіце {{PLURAL:$1|наступную памылку|наступныя памылкі}} ў перакладзе:",
+ "translate-magic-saved": "Зробленыя праўкі паспяхова запісаны.",
+ "translate-checks-parameters": "{{PLURAL:$2|Наступны параметр не выкарыстоўваецца|Наступныя параметры не выкарыстоўваюцца}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-parameters-unknown": "{{PLURAL:$2|Невядомы параметр|Невядомыя параметры}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-balance": "Няпарная колькасць {{PLURAL:$2|дужак}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links": "{{PLURAL:$2|Наступная спасылка выклікае праблемы|Наступныя спасылкі выклікаюць праблемы}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links-missing": "{{PLURAL:$2|Адсутнічае $2 спасылка|Адсутнічаюць $2 спасылкі|Адсутнічаюць $2 спасылак}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-xhtml": "Калі ласка, выправіце {{PLURAL:$2|наступны тэг|наступныя тэгі}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-plural": "Арыгінал выкарыстоўвае <nowiki>{{PLURAL:}}</nowiki>, а пераклад — не.",
+ "translate-checks-plural-forms": "Выразу <nowiki>{{PLURAL:}}</nowiki> {{PLURAL:$1|была дадзена адна форма|былі дадзены $1 формы|былі дадзены $1 формаў}}, але {{PLURAL:$2|падтрымліваецца толькі адна форма|падтрымліваюцца $2 формы|падтрымліваюцца $2 формаў}} (акрамя формаў 0= і 1=).",
+ "translate-checks-plural-dupe": "У канцы выразу <nowiki>{{PLURAL:}}</nowiki> дзве аднолькавых формы. Замест <nowiki>{{PLURAL:$1|паліто|паліто}}</nowiki> лепш напісаць <nowiki>{{PLURAL:$1|паліто}}</nowiki>.",
+ "translate-checks-pagename": "Змянілася вызначэнне прасторы імёнаў",
+ "translate-checks-format": "Гэты пераклад не адпавядае вызначэнню ці ўтрымлівае сінтаксічную памылку: $1",
+ "translate-checks-parametersnotequal": "Колькасць параметраў — $1, а {{PLURAL:$2|павінен|павінна}} быць — $2.",
+ "translate-checks-malformed": "<nowiki>$1</nowiki> некарэктны.",
+ "translate-checks-fudforum-syntax": "Выкарыстоўваць у гэтым праекце <nowiki>$1</nowiki> замест <nowiki>$2</nowiki>.",
+ "translate-pref-nonewsletter": "Не адпраўляць мне інфармацыйны бюлетэнь па электроннай пошце",
+ "translate-pref-editassistlang": "Дапаможныя мовы:",
+ "prefs-translate": "Настройкі перакладу",
+ "translate-pref-editassistlang-help": "Падзелены коскамі спіс кодаў моў.\nПераклады на гэтыя мовы будуць указаны пры праўцы паведамленняў.\nСпіс па змоўчанні залежыць ад вашай мовы.",
+ "translate-pref-editassistlang-bad": "Няслушны моўны код у спісе:\n<nowiki>$1</nowiki>.",
+ "right-translate": "праўка з выкарыстаннем інтэрфейсу перакладу",
+ "right-translate-manage": "кіраванне групамі паведамленняў",
+ "action-translate-manage": "кіраванне групамі паведамленняў",
+ "right-translate-import": "імпартаванне перакладаў, зробленых у афлайне",
+ "action-translate-import": "імпарт перакладаў, зробленых у афлайне",
+ "right-translate-messagereview": "дадгляд перакладаў",
+ "right-translate-groupreview": "змяняць стан апрацоўкі груп паведамленняў",
+ "translate-rc-translation-filter": "Фільтраваць пераклады:",
+ "translate-rc-translation-filter-no": "Без абмежаванняў",
+ "translate-rc-translation-filter-only": "Паказаць толькі пераклады",
+ "translate-rc-translation-filter-filter": "Схаваць пераклады",
+ "translate-rc-translation-filter-site": "Толькі сістэмныя паведамленні сайта",
+ "translationstats": "Статыстыка перакладаў",
+ "translate-stats-edits": "Правак",
+ "translate-stats-users": "Перакладчыкі",
+ "translate-stats-registrations": "Рэгістрацыі",
+ "translate-stats-reviews": "Праверкі",
+ "translate-stats-reviewers": "Рэцэнзенты",
+ "translate-statsf-intro": "Гэта форма дапаможа вам стварыць зручны графік. Для ўсіх значэнняў можна задаць верхнюю і ніжнюю мяжу.",
+ "translate-statsf-options": "Настройкі графіка",
+ "translate-statsf-width": "Шырыня ў пікселах:",
+ "translate-statsf-height": "Вышыня ў пікселах:",
+ "translate-statsf-days": "Перыяд часу ў днях:",
+ "translate-statsf-start": "Дата пачатку:",
+ "translate-statsf-scale": "Ступень дэталізацыі:",
+ "translate-statsf-scale-months": "Месяцы",
+ "translate-statsf-scale-weeks": "Тыдні",
+ "translate-statsf-scale-days": "Дні",
+ "translate-statsf-scale-hours": "Гадзіны",
+ "translate-statsf-count": "Мера:",
+ "translate-statsf-count-edits": "Колькасць правак",
+ "translate-statsf-count-users": "Дзеючых перакладчыкаў",
+ "translate-statsf-count-registrations": "Новыя ўдзельнікі",
+ "translate-statsf-count-reviews": "Рэцэнзенты перакладу",
+ "translate-statsf-count-reviewers": "Рэцэнзенты",
+ "translate-js-support": "Задаць пытанне"
+}
diff --git a/MLEB/Translate/i18n/core/bg.json b/MLEB/Translate/i18n/core/bg.json
new file mode 100644
index 00000000..64174d44
--- /dev/null
+++ b/MLEB/Translate/i18n/core/bg.json
@@ -0,0 +1,193 @@
+{
+ "@metadata": {
+ "authors": [
+ "DCLXVI",
+ "පසිඳු කාවින්ද",
+ "StanProg",
+ "Vodnokon4e"
+ ]
+ },
+ "translate": "Превеждане",
+ "translate-desc": "[[Special:Translate|Специална страница]] за превеждане на MediaWiki и др.",
+ "translate-taskui-view": "Показване на всички съобщения",
+ "translate-taskui-untranslated": "Показване на непреведените съобщения",
+ "translate-taskui-optional": "Показване на допълнителните съобщения",
+ "translate-taction-translate": "Превеждане",
+ "translate-taction-lstats": "Езикови статистики",
+ "translate-taction-export": "Изнасяне",
+ "translate-taction-disabled": "Това действие е изключено в това уики.",
+ "translate-page-no-such-language": "Избраният език е невалиден.",
+ "translate-page-no-such-group": "Избраната група е невалидна",
+ "translate-page-disabled": "Преводите на този език в тази група са изключени. Причина:\n\n<em>$1</em>",
+ "translate-language-disabled": "Преводът на този език е изключен.",
+ "translate-page-settings-legend": "Настройки",
+ "translate-page-group": "Група:",
+ "translate-page-language": "Език:",
+ "translate-page-limit": "Показване на:",
+ "translate-page-limit-option": "$1 {{PLURAL:$1|съобщение|съобщения}} на страница",
+ "translate-submit": "Извличане",
+ "translate-page-navigation-legend": "Навигация",
+ "translate-page-showing": "Показани са съобщения от $1 до $2 от общо $3.",
+ "translate-page-showing-all": "{{PLURAL:$1|Показано е 1 съобщение|Показани са $1 съобщения}}.",
+ "translate-page-showing-none": "Няма съобщения, които да бъдат показани.",
+ "translate-next": "Следваща страница",
+ "translate-prev": "Предишна страница",
+ "translate-page-description-legend": "Информация за групата",
+ "translate-page-description-hasoptional-open": "Показване на допълнителни съобщения.",
+ "translate-page-edit": "редактиране",
+ "translate-ext-url": "<hr />Уебсайт: $1",
+ "translate-optional": "(незадължително)",
+ "translate-ignored": "(пренебрегнато)",
+ "translate-edit-title": "Редактиране на „$1“",
+ "translate-edit-definition": "Оригинално съобщение",
+ "translate-edit-translation": "Превод",
+ "translate-edit-contribute": "добавяне на документация",
+ "translate-edit-no-information": "<em>За това съобщение няма документация.\nАко знаете къде и как се използва, можете да помогнете на останалите преводачи като добавите документация за това съобщение.</em>",
+ "translate-edit-information": "Информация за съобщението ($1)",
+ "translate-edit-in-other-languages": "Съобщението на други езици",
+ "translate-edit-committed": "Текущ превод в софтуера",
+ "translate-edit-warnings": "Забележки за непълни преводи",
+ "translate-edit-tmmatch": "$1% съвпадение",
+ "translate-use-suggestion": "Заместване на текущия превод с предложението.",
+ "translate-edit-nopermission": "За превеждане на съобщения са необходими права на преводач.",
+ "translate-edit-askpermission": "Получаване на позволение",
+ "translate-magic-pagename": "Разширено превеждане на МедияУики",
+ "translate-magic-module": "Модул:",
+ "translate-magic-submit": "Извличане",
+ "translate-magic-cm-export": "Изнасяне",
+ "translate-magic-nothing-to-export": "Няма нищо за изнасяне.",
+ "translate-magic-cm-to-be": "Желано",
+ "translate-magic-cm-current": "Текущо",
+ "translate-magic-cm-original": "Оригинално",
+ "translate-magic-cm-comment": "Коментар:",
+ "translate-magic-cm-save": "Съхранение",
+ "translate-magic-cm-updatedusing": "Обновено чрез [[Special:AdvancedTranslate|{{int:Translate-magic-pagename}}]]",
+ "translate-magic-cm-savefailed": "Съхраняването беше неуспешно",
+ "translate-magic-special": "Имена на специални страници",
+ "translate-magic-words": "Вълшебни думички",
+ "translate-magic-namespace": "Имена на именни пространства",
+ "translate-magic-notsaved": "Редакцията не беше съхранена!",
+ "translate-magic-errors": "Необходимо е да {{PLURAL:$1|се отстрани следната грешка|се отстранят следните грешки}} в преводите:",
+ "translate-magic-saved": "Промените бяха съхранени успешно.",
+ "translate-checks-parameters": "{{PLURAL:$2|Следният параметър не се използва|Следните параметри не се използват}}: <strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-parameters-unknown": "{{PLURAL:$2|Следният параметър е непознат|Следните параметри са непознати}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-balance": "Съобщението съдържа необичаен брой {{PLURAL:$2|скоби|скоби}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links": "{{PLURAL:$2|Следната препратка е проблемна|Следните $2 препратки са проблемни}}: <strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links-missing": "{{PLURAL:$2|Липсва следата препратка|Липсват следнте $2 препратки}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-xhtml": "Необходимо е заместване на {{PLURAL:$2|посочения етикет с правилен|посочените етикети с правилни}}: <strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-plural": "Оригиналното съобщение използва <nowiki>{{PLURAL:}}</nowiki>, а преводът — не.",
+ "translate-pref-nonewsletter": "Без получаване на бюлетин по е-поща",
+ "right-translate": "Редактиране чрез интерфейса за превод",
+ "translate-rc-translation-filter": "Филтриране на преводите:",
+ "translate-rc-translation-filter-no": "Без действие",
+ "translate-rc-translation-filter-only": "Само на преводите",
+ "translate-rc-translation-filter-filter": "Филтриране на преводите",
+ "translate-rc-translation-filter-site": "Промени само в съобщенията за сайта",
+ "translationstats": "Статистики за преводите",
+ "translate-stats-edits": "Редакции",
+ "translate-stats-users": "Преводачи",
+ "translate-stats-registrations": "Регистрации",
+ "translate-statsf-intro": "Формулярът по-долу слуижи за създаване на статистика. Всички възможности имат минимални и максимални стойности.",
+ "translate-statsf-options": "Графични настройки",
+ "translate-statsf-width": "Ширина в пиксели:",
+ "translate-statsf-height": "Височина в пиксели:",
+ "translate-statsf-days": "Времеви период в дни:",
+ "translate-statsf-start": "Времеви период в дни:",
+ "translate-statsf-scale-months": "Месеци",
+ "translate-statsf-scale-weeks": "Седмици",
+ "translate-statsf-scale-days": "Дни",
+ "translate-statsf-scale-hours": "Часове",
+ "translate-statsf-count-edits": "Брой редакции",
+ "translate-statsf-count-users": "Активни преводачи",
+ "translate-statsf-count-registrations": "Нови потребители",
+ "translate-statsf-language": "Списък с езикови кодове, разделени със запетаи:",
+ "translate-statsf-group": "Списък с групови кодове, разделени със запетаи:",
+ "translate-statsf-submit": "Преглед",
+ "translate-tag-page-desc": "Превод на страницата [[$2|$1]].",
+ "translate-sidebar-alltrans": "На други езици",
+ "translations": "Всички преводи",
+ "translate-translations-no-message": "\"Съобщение \"$1\" не е достъпно за превод",
+ "translate-translations-none": "Не съществуват преводи за „$1“",
+ "translate-translations-count": "{{PLURAL:$1|Открит е $1 превод|Открити са $1 превода}}.",
+ "translate-translations-fieldset-title": "Съобщение",
+ "translate-translations-messagename": "Име:",
+ "translate-translations-project": "Проект:",
+ "translate-translations-history-short": "и",
+ "languagestats": "Езикови статистики",
+ "languagestats-summary": "Тази страница показва статистиките за преводите на всички групи съобщения за езика.",
+ "messagegroupstats-summary": "Тази страница показва статистиките за преводите на съобщенията по групи.",
+ "languagestats-stats-for": "Статистики за преводите на $1 ($2).",
+ "languagestats-recenttranslations": "последни преводи",
+ "translate-langstats-incomplete": "Някои от статистиките на тази страница са непълни. Моля, презаредете страницата за получаване на по-подробни данни.",
+ "translate-langstats-expand": "Разгръщане",
+ "translate-langstats-collapse": "Свиване",
+ "translate-langstats-expandall": "разгръщане на всички",
+ "translate-langstats-collapseall": "свиване на всички",
+ "translate-language-code": "Езиков код",
+ "translate-language-code-field-name": "Езиков код:",
+ "translate-suppress-complete": "Скриване на изцяло преведените групи съобщения",
+ "translate-ls-noempty": "Скриване на изцяло непреведените групи съобщения",
+ "translate-language": "Език",
+ "translate-total": "Съобщения",
+ "translate-untranslated": "Непреведени",
+ "translate-percentage-complete": "Завършени",
+ "translate-percentage-fuzzy": "Остарели",
+ "translate-languagestats-overall": "Съобщения за всички групи",
+ "translate-ls-submit": "Показване на статистики",
+ "translate-ls-column-group": "Група съобщения",
+ "translate-mgs-group": "Група съобщения:",
+ "translate-mgs-nocomplete": "Не показвай езици с напълно завършен превод",
+ "translate-mgs-noempty": "Не показвай езици, които нямат започнат превод",
+ "translate-mgs-submit": "Показване на статистики",
+ "translate-mgs-column-language": "Език",
+ "translate-mgs-totals": "Всички езици заедно",
+ "supportedlanguages": "Поддържани езици",
+ "supportedlanguages-translators": "{{PLURAL:$2|Преводач|Преводачи}}: $1",
+ "supportedlanguages-recenttranslations": "последни преводи",
+ "supportedlanguages-count": "$1 {{PLURAL:$1|език|езици}} общо.",
+ "translate-save": "Съхраняване ($1)",
+ "translate-jssti-add": "Добавяне към списъка",
+ "translate-manage-action-import": "Внасяне",
+ "translate-manage-action-ignore": "Пренебрегване",
+ "translate-manage-submit": "Изпълняване",
+ "translate-manage-import-done": "Всичко е готово!",
+ "importtranslations": "Внасяне на преводи",
+ "translate-import-load": "Зареждане на файла",
+ "translate-import-err-ul-failed": "Качването на файла не беше успешно",
+ "translate-import-err-no-such-file": "Файлът <nowiki>$1</nowiki> не съществува или не е бил качен локално.",
+ "translate-js-summary": "Резюме:",
+ "translate-js-save": "Съхраняване",
+ "translate-js-next": "Съхраняване и отваряне на следващото",
+ "translate-js-nonext": "Това беше последното съобщение на тази страница.",
+ "translate-js-support": "Задаване на въпрос",
+ "translate-js-support-unsaved-warning": "Имате несъхранени преводи.",
+ "translate-gs-code": "Код",
+ "translate-gs-total": "Общо",
+ "translate-searchprofile": "Преводи",
+ "logentry-translationreview-group": "$1 {{GENDER:$2|промени}} състоянието на преводите на $3 на $4 език от „$6“ на „$7“",
+ "translate-stats-workflow": "Статут",
+ "translate-dynagroup-recent-label": "Последни преводи",
+ "translate-gethelp": "Помощ",
+ "translate-msggroupselector-search-all": "Всички",
+ "tux-languageselector": "Превеждане на",
+ "tux-tab-all": "Всички",
+ "tux-edit": "Редактиране",
+ "tux-status-optional": "Незадължително",
+ "tux-status-translated": "Преведено",
+ "tux-status-saving": "Съхраняване...",
+ "tux-editor-save-button-label": "Съхраняване на превода",
+ "tux-editor-cancel-button-label": "Отказване",
+ "tux-editor-suggestions-title": "Предложения",
+ "tux-editor-in-other-languages": "На други езици",
+ "tux-editor-need-more-help": "Нуждаете се от допълнителна помощ?",
+ "tux-warnings-hide": "скриване",
+ "tux-proofread-edit-label": "Редактиране",
+ "tux-editor-doc-editor-cancel": "Отказване",
+ "tux-message-filter-advanced-button": "Разширено търсене",
+ "tux-empty-list-translated-action": "Превеждане",
+ "tux-empty-list-other-link": "Показване не всички съобщения",
+ "tux-editor-close-tooltip": "Затваряне",
+ "tux-editor-message-tools-history": "История",
+ "tux-editor-message-tools-translations": "Всички преводи",
+ "tux-editor-loading": "Зареждане..."
+}
diff --git a/MLEB/Translate/i18n/core/bho.json b/MLEB/Translate/i18n/core/bho.json
new file mode 100644
index 00000000..8d0b7b28
--- /dev/null
+++ b/MLEB/Translate/i18n/core/bho.json
@@ -0,0 +1,54 @@
+{
+ "@metadata": {
+ "authors": [
+ "Anshumangupta21",
+ "Nepaboy"
+ ]
+ },
+ "translate": "अनुवादन करीं",
+ "translate-desc": "[[Special:Translate| विशेष पन्ना]] मीडीयाविकि के अनुवादन खातिर",
+ "translate-taskui-view": "सभी सन्देश दिखाईं",
+ "translate-taskui-untranslated": "अअनुवादित सन्देश दिखाईं",
+ "translate-taskui-optional": "वैकल्पिक सन्देश दिखाईं",
+ "translate-taskui-acceptqueue": "संदेश, जे केवल हम स्वीकार कर सकीं",
+ "translate-taskui-reviewall": "सभी अनुवाद के समीक्षा करीं",
+ "translate-taskui-export-to-file": "मूल स्वरूप में निर्यात करीं",
+ "translate-taskui-export-as-po": "ऑफ़लाइन अनुवाद के खातिर निर्यात करीं",
+ "translate-taction-translate": "अनुवाद करीं",
+ "translate-taction-proofread": "सुधार करीं",
+ "translate-taction-lstats": "ई भाषा के आंकड़ा",
+ "translate-taction-mstats": "ई संदेश समूह के आंकड़ा",
+ "translate-taction-export": "निर्यात",
+ "translate-taction-disabled": "ई विकि पर ई कार्य के असमर्थ करल बा",
+ "translate-page-no-such-language": "विस्तृत भाषा अमान्य बा",
+ "translate-page-no-such-group": "विस्तृत समूह अमान्य बा",
+ "translate-page-disabled": "ई भाषा के ई समूह में अनुवाद बंद करल बा। कारण: \"$1\"",
+ "translate-language-disabled": "ई भाषा में अनुवाद बंद करल बा।",
+ "translate-page-settings-legend": "सेटिंग्स",
+ "translate-page-group": "समूह",
+ "translate-page-language": "भाषा",
+ "translate-page-limit": "सीमा",
+ "translate-page-limit-option": "$1 {{PLURAL:$1|संदेश|संदेश}} प्रती पन्ना",
+ "translate-submit": "ढूंढीं",
+ "translate-page-navigation-legend": "परिभ्रमण",
+ "translate-page-showing": "Showing messages from $1 to $2 of $3.",
+ "translate-page-showing-none": "दिखावे खातिर कउनो सन्देश नईखे बा",
+ "translate-next": "अगला पन्ना",
+ "translate-prev": "पिछलका पन्ना",
+ "translate-page-description-legend": "ई समूह के बारे मे जानकारी",
+ "translate-page-edit": "सम्पादन करीं",
+ "translate-edit-definition": "संदेश परिभाषा",
+ "translate-edit-translation": "अनुवाद",
+ "translate-edit-contribute": "योगदान करीं",
+ "translate-edit-in-other-languages": "अन्य भाषा मे संदेश",
+ "translate-edit-tmmatch": "$1% मिलान",
+ "translate-use-suggestion": "ई सुझाव के संग ई अनुवाद के बदलीं",
+ "translate-edit-askpermission": "अनुमती खातिर अनुरोध करीं",
+ "translate-magic-module": "माड्यूल:",
+ "translate-magic-submit": "निकालीं",
+ "translate-magic-cm-export": "निर्यात",
+ "translate-magic-nothing-to-export": "निर्यात करै खातिर किछु नइखे बा।",
+ "translate-magic-cm-current": "वर्तमान",
+ "translate-magic-cm-original": "मूल",
+ "tux-editor-message-tools-delete": "मिटाईं"
+}
diff --git a/MLEB/Translate/i18n/core/bn.json b/MLEB/Translate/i18n/core/bn.json
new file mode 100644
index 00000000..bd3f63fe
--- /dev/null
+++ b/MLEB/Translate/i18n/core/bn.json
@@ -0,0 +1,254 @@
+{
+ "@metadata": {
+ "authors": [
+ "Aftab1995",
+ "Anubhab91",
+ "Bellayet",
+ "Gahori",
+ "Leemon2010",
+ "Zaheen",
+ "Tauhid16"
+ ]
+ },
+ "translate": "অনুবাদ",
+ "translate-taskui-view": "সব বার্তা দেখাও",
+ "translate-taskui-untranslated": "অনুবাদ হয়নি এমন বার্তা দেখাও",
+ "translate-taskui-optional": "ঐচ্ছিক বার্তা দেখাও",
+ "translate-taskui-reviewall": "সমস্ত অনুবাদ পর্যালোচনা করুন",
+ "translate-taskui-export-to-file": "স্থানীয় ফরম্যাটে আমদানী করুন।",
+ "translate-taskui-export-as-po": "অফলাইন অনুবাদের জন্য আমদানী করুন",
+ "translate-taction-translate": "অনুবাদ",
+ "translate-taction-proofread": "পর্যালোচিত",
+ "translate-taction-lstats": "ভাষার পরিসংখ্যান",
+ "translate-taction-mstats": "বার্তা দলের পরিসংখ্যান",
+ "translate-taction-export": "রপ্তানি",
+ "translate-taction-disabled": "এই উইকিতে এই কাজ নিস্ক্রিয় রয়েছে।",
+ "translate-page-no-such-language": "নির্দিস্টকৃত ভাষাটি অবৈধ ছিল।",
+ "translate-page-no-such-group": "নির্দিস্টকৃত সংঘটি অবৈধ ছিল।",
+ "translate-page-settings-legend": "সেটিং",
+ "translate-page-group": "দল",
+ "translate-page-language": "ভাষা",
+ "translate-page-limit": "সীমা",
+ "translate-page-limit-option": "পাতা প্রতি $1টি {{PLURAL:$1|বার্তা}}",
+ "translate-submit": "বের করো",
+ "translate-page-navigation-legend": "পরিভ্রমণ",
+ "translate-page-showing": "$3 বার্তার মধ্যে $1 থেকে $2 বার্তা দেখাও",
+ "translate-page-showing-all": "$1টি {{PLURAL:$1|বার্তা}} দেখাচ্ছে।",
+ "translate-page-showing-none": "প্রদর্শনের জন্য কোন বার্তা নাই।",
+ "translate-next": "পরবর্তী পাতা",
+ "translate-prev": "পূর্ববর্তী পাতা",
+ "translate-page-description-legend": "দলের তথ্য",
+ "translate-page-description-hasoptional-open": "ঐচ্ছিক বার্তা দেখাও।",
+ "translate-page-edit": "সম্পাদনা",
+ "translate-ext-url": "<hr />ওয়েবসাইট: $1",
+ "translate-optional": "(ঐচ্ছিক)",
+ "translate-ignored": "(উপেক্ষিত)",
+ "translate-edit-title": "সম্পাদনা \"$1\"",
+ "translate-edit-definition": "বার্তা সংজ্ঞা",
+ "translate-edit-translation": "অনুবাদ",
+ "translate-edit-contribute": "অবদান",
+ "translate-edit-information": "বার্তা সম্পর্কে তথ্য ($1)",
+ "translate-edit-in-other-languages": "অন্যান্য ভাষায় বার্তা",
+ "translate-edit-committed": "সফটওয়্যারে বর্তমান অনুবাদ",
+ "translate-edit-warnings": "অসম্পূর্ণ অনুবাদের ওপর সতর্কবার্তা",
+ "translate-edit-tmmatch": "{{formatnum:$1}}% মিল রয়েছে",
+ "translate-edit-askpermission": "অনুমতি পান",
+ "translate-magic-module": "মডিউল:",
+ "translate-magic-submit": "বের করো",
+ "translate-magic-cm-export": "রপ্তানি",
+ "translate-magic-nothing-to-export": "এখানে রপ্তানি করার মত কিছু নেই।",
+ "translate-magic-cm-current": "বর্তমান",
+ "translate-magic-cm-original": "মূল",
+ "translate-magic-cm-comment": "মন্তব্য:",
+ "translate-magic-cm-save": "সংরক্ষণ",
+ "translate-magic-cm-updatedusing": "[[Special:AdvancedTranslate|{{int:Translate-magic-pagename}}]] ব্যবহার করে হালনাগাদ",
+ "translate-magic-cm-savefailed": "সংরক্ষণ ব্যর্থ",
+ "translate-magic-words": "ম্যাজিক শব্দগুলি",
+ "translate-magic-namespace": "নেমস্পেসের নাম",
+ "translate-magic-notsaved": "আপনার সম্পাদনা সংরক্ষিত হয়নি!",
+ "translate-magic-saved": "আপনার পরিবর্তনসমূহ সফলভাবে সংরক্ষিত হয়েছে।",
+ "translate-pref-nonewsletter": "আমাকে ইমেইল নিউজলেটার প্রেরণ করবেন না",
+ "translate-pref-editassistlang": "সহযোগী ভাষা:",
+ "prefs-translate": "অনুবাদ অপশন",
+ "right-translate-manage": "বার্তা দল ব্যবস্থাপনা",
+ "action-translate-manage": "বার্তা দল ব্যবস্থাপনা",
+ "right-translate-import": "অফলাইন অনুবাদ আমদানি",
+ "action-translate-import": "অফলাইন অনুবাদসমূহ আমদানি করুন",
+ "right-translate-messagereview": "অনুবাদ পর্যালোচনা",
+ "translate-rc-translation-filter": "অনুবাদ পরিশোধক:",
+ "translate-rc-translation-filter-no": "কিছু করা হবে না",
+ "translate-rc-translation-filter-only": "শুধুমাত্র অনুবাদগুলো দেখাও",
+ "translationstats": "অনুবাদ পরিসংখ্যান",
+ "translate-stats-edits": "সম্পাদনাসমূহ",
+ "translate-stats-users": "অনুবাদক",
+ "translate-stats-registrations": "নিবন্ধন",
+ "translate-stats-reviews": "পর্যালোচিত",
+ "translate-stats-reviewers": "নিরীক্ষকগণ",
+ "translate-statsf-options": "গ্রাফ অপশন",
+ "translate-statsf-start": "সুরুর তারিখ:",
+ "translate-statsf-scale-months": "মাস",
+ "translate-statsf-scale-weeks": "সপ্তাহ",
+ "translate-statsf-scale-days": "দিন",
+ "translate-statsf-scale-hours": "ঘণ্টা",
+ "translate-statsf-count-edits": "সম্পাদনা সংখ্যা",
+ "translate-statsf-count-users": "সক্রিয় অনুবাদক",
+ "translate-statsf-count-registrations": "নতুন ব্যবহারকারী",
+ "translate-statsf-count-reviews": "অনুবাদ নিরীক্ষকগণ",
+ "translate-statsf-count-reviewers": "নিরীক্ষকগণ",
+ "translate-statsf-submit": "প্রাকদর্শন",
+ "translate-tag-category": "অনুবাদযোগ্য পাতা",
+ "translate-tag-page-desc": "$3 ($4) থেকে উইকি পাতা [[$2|$1]]-এর অনুবাদ।",
+ "translate-sidebar-alltrans": "অন্যান্য ভাষায়",
+ "translations": "সমস্ত অনুবাদ",
+ "translate-translations-fieldset-title": "বার্তা",
+ "translate-translations-messagename": "নাম:",
+ "translate-translations-project": "প্রকল্প:",
+ "translate-translations-history-short": "ই",
+ "languagestats": "ভাষার পরিসংখ্যান",
+ "languagestats-stats-for": "$1 অনুবাদ পরিসংখ্যান ($2)।",
+ "languagestats-recenttranslations": "সাম্প্রতিক অনুবাদ",
+ "translate-langstats-expand": "প্রসারণ",
+ "translate-langstats-collapse": "সংকোচন",
+ "translate-langstats-expandall": "সকল প্রসারণ",
+ "translate-langstats-collapseall": "সকল সংকোচন",
+ "translate-language-code": "ভাষার কোড",
+ "translate-language-code-field-name": "ভাষার কোড:",
+ "translate-language": "ভাষা",
+ "translate-total": "বার্তা",
+ "translate-untranslated": "অনুবাদ হয়নি",
+ "translate-percentage-complete": "সম্পন্ন",
+ "translate-percentage-fuzzy": "পুরাতন",
+ "translate-ls-submit": "পরিসংখ্যান দেখাও",
+ "translate-ls-column-group": "বার্তা দল",
+ "translate-mgs-pagename": "বার্তা দলের পরিসংখ্যান",
+ "translate-mgs-fieldset": "প্রদর্শন পছন্দসমূহ",
+ "translate-mgs-group": "বার্তা দল:",
+ "translate-mgs-submit": "পরিসংখ্যান দেখাও",
+ "translate-mgs-column-language": "ভাষা",
+ "translate-mgs-totals": "সকল ভাষায় একসাথে",
+ "supportedlanguages": "সমর্থিত ভাষাসমূহ",
+ "supportedlanguages-translators": "{{PLURAL:$2|{{GENDER:$3|অনুবাদক}}|অনুবাদকগণ}}: $1",
+ "supportedlanguages-recenttranslations": "সাম্প্রতিক অনুবাদ",
+ "supportedlanguages-count": "সর্বমোট $1টি {{PLURAL:$1|ভাষায়}}।",
+ "supportedlanguages-activity": "$1: $2 {{PLURAL:$2|টি সম্পাদনা}} - সর্বশেষ সম্পাদনা $3 {{PLURAL:$3|দিন}} আগে",
+ "translate-save": "সংরক্ষণ ($1)",
+ "translate-jssti-add": "তালিকায় যোগ করো",
+ "managemessagegroups": "বার্তা দল ব্যবস্থাপনা",
+ "translate-smg-notallowed": "আপনাকে এই কর্ম সঞ্চালনের অনুমতি দেওয়া হয়নি।",
+ "translate-manage-import-new": "নতুন বার্তা $1",
+ "translate-manage-import-deleted": "অপসারিত বার্তা $1",
+ "translate-manage-action-import": "আমদানি",
+ "translate-manage-action-ignore": "উপেক্ষা",
+ "translate-manage-import-done": "আমদানি সম্পন্ন!",
+ "importtranslations": "অনুবাদসমূহ আমদানি করুন",
+ "translate-import-from-local": "স্থানীয় পাতা আপলোড:",
+ "translate-import-load": "ফাইল লোড কর",
+ "translate-import-err-ul-failed": "ফাইল আপলোড সফল হয়নি",
+ "translate-js-summary": "সারাংশ:",
+ "translate-js-save": "সংরক্ষণ",
+ "translate-js-next": "সংরক্ষণ এবং পরবর্তী",
+ "translate-js-skip": "বাতিল ও পরবর্তী",
+ "translate-js-history": "অনুবাদ ইতিহাস",
+ "translate-js-support": "প্রশ্ন জিজ্ঞাসা করুন",
+ "translate-gs-pos": "নং",
+ "translate-gs-code": "কোড",
+ "translate-gs-continent": "উপমহাদেশ",
+ "translate-gs-speakers": "বক্তা",
+ "translate-gs-score": "স্কোর",
+ "translate-gs-multiple": "একাধিক",
+ "translate-gs-count": "গণনা",
+ "translate-gs-total": "সর্বমোট",
+ "translate-gs-avgscore": "গড় স্কোর",
+ "translate-searchprofile": "অনুবাদসমূহ",
+ "translate-searchprofile-tooltip": "সকল অনুবাদে অনুসন্ধান",
+ "translate-search-languagefilter": "ভাষা অনুযায়ী ফিল্টার:",
+ "translate-messagereview-submit": "পর্যালোচিত হিসেবে চিহ্নিত করুন",
+ "translate-messagereview-progress": "পর্যালোচিত হিসেবে চিহ্নিত করা হচ্ছে...",
+ "translate-messagereview-failure": "পর্যালোচিত হিসেবে চিহ্নিত করা ব্যর্থ হয়েছে: $1",
+ "translate-messagereview-done": "পর্যালোচিত",
+ "api-error-invalidrevision": "অনুবাদ খুঁজে পাওয়া যায়নি",
+ "api-error-unknownmessage": "বার্তা খুঁজে পাওয়া যায়নি",
+ "translate-messagereview-no-own": "আপনি আপনার নিজের অনুবাদ পর্যালোচিত হিসাবে চিহ্নিত করতে পারবেন না।",
+ "translate-messagereview-doit": "এই অনুবাদটি নিরীক্ষিত হিসবে টীকা দিন।",
+ "log-name-translationreview": "অনুবাদ নিরীক্ষণ লগ",
+ "translate-workflow-set-doing": "সেটিং...",
+ "translate-stats-workflow": "অবস্থা",
+ "translate-dynagroup-recent-label": "সাম্প্রতিক অনুবাদ",
+ "translate-dynagroup-additions-label": "সাম্প্রতিক সংযোজনসমূহ",
+ "translate-gethelp": "সাহায্য",
+ "translate-msggroupselector-projects": "বার্তা দল",
+ "translate-msggroupselector-search-placeholder": "দল অনুসন্ধান",
+ "translate-msggroupselector-search-all": "সমস্ত",
+ "translate-msggroupselector-search-recent": "সাম্প্রতিক",
+ "translate-msggroupselector-view-subprojects": "$1টি {{PLURAL:$1|উপদল}}",
+ "tux-languageselector": "যে ভাষায় অনুবাদ করা হচ্ছে:",
+ "tux-tab-all": "সকল",
+ "tux-tab-untranslated": "অনুবাদ হয়নি",
+ "tux-tab-outdated": "পুরাতন",
+ "tux-tab-translated": "অনূদিত",
+ "tux-tab-unproofread": "পর্যালোচিত হয়নি",
+ "tux-edit": "সম্পাদনা",
+ "tux-status-optional": "ঐচ্ছিক",
+ "tux-status-fuzzy": "বর্তমানে অপ্রচলিত",
+ "tux-status-proofread": "পর্যালোচিত",
+ "tux-status-translated": "অনূদিত",
+ "tux-status-saving": "সংরক্ষণ করা হচ্ছে ...",
+ "tux-status-unsaved": "সংরক্ষণ করা হয়নি",
+ "tux-editor-placeholder": "আপনার অনুবাদ",
+ "tux-editor-paste-original-button-label": "মূল লেখা যোগ করো",
+ "tux-editor-discard-changes-button-label": "পরিবর্তন বাতিল",
+ "tux-editor-save-button-label": "অনুবাদ সংরক্ষণ",
+ "tux-editor-skip-button-label": "বাতিল ও পরবর্তী",
+ "tux-editor-cancel-button-label": "বাতিল",
+ "tux-editor-confirm-button-label": "অনুবাদ নিশ্চিত করো",
+ "tux-editor-edit-desc": "নথি সম্পাদনা",
+ "tux-editor-add-desc": "নথি যোগ",
+ "tux-editor-suggestions-title": "পরামর্শসমূহ",
+ "tux-editor-in-other-languages": "অন্যান্য ভাষায়",
+ "tux-editor-need-more-help": "আরও সাহায্যের প্রয়োজন?",
+ "tux-editor-tm-match": "{{formatnum:$1}}% মিল রয়েছে",
+ "tux-warnings-more": "{{PLURAL:$1|আরও $1}}",
+ "tux-warnings-hide": "আড়ালে রাখো",
+ "tux-editor-message-desc-more": "আরও দেখাও",
+ "tux-editor-message-desc-less": "কম দেখাও",
+ "tux-editor-clear-translated": "অনূদিত আড়াল করো",
+ "tux-editor-proofreading-mode": "পর্যালোচিত",
+ "tux-editor-translate-mode": "তালিকা",
+ "tux-editor-proofreading-hide-own-translations": "আপনার অনুবাদসমূহ আড়াল করুন",
+ "tux-editor-proofreading-show-own-translations": "আপনার অনুবাদসমূহ প্রদর্শন করুন",
+ "tux-proofread-action-tooltip": "পর্যালোচিত হিসেবে চিহ্নিত করুন",
+ "tux-proofread-edit-label": "সম্পাদনা",
+ "tux-editor-page-mode": "পাতা",
+ "tux-editor-outdated-warning-diff-link": "পার্থক্য দেখাও",
+ "tux-editor-doc-editor-cancel": "বাতিল",
+ "tux-messagetable-more-messages": "আরও {{formatnum:$1}}টি {{PLURAL:$1|বার্তা}}",
+ "tux-messagetable-loading-messages": "{{PLURAL:$1|বার্তা}} লোড হচ্ছে...",
+ "tux-message-filter-placeholder": "ফিল্টার তালিকা:",
+ "tux-message-filter-result": "\"$2\" এর জন্য $1টি {{PLURAL:$1|ফলাফল}} পাওয়া গেছে",
+ "tux-message-filter-advanced-button": "উন্নত অনুসন্ধান",
+ "tux-message-filter-optional-messages-label": "ঐচ্ছিক বার্তাগুলি",
+ "tux-proofread-translated-by-self": "আপনার দ্বারা অনূদিত",
+ "tux-empty-list-translated": "কোনো অনূদিত বার্তা নেই",
+ "tux-empty-list-translated-guide": "আপনি অনুবাদে সাহায্য করতে পারেন",
+ "tux-empty-list-translated-action": "অনুবাদ",
+ "tux-empty-no-messages-to-display": "প্রদর্শন করার বার্তা নেই।",
+ "tux-empty-show-optional-messages": "ঐচ্ছিক বার্তাগুলি দেখাও",
+ "tux-empty-no-outdated-messages": "কোন পুরাতন বার্তা নেই",
+ "tux-empty-nothing-to-proofread": "পর্যালোচনা করার কিছু নেই",
+ "tux-empty-nothing-new-to-proofread": "পর্যালোচনা করার নতুন কিছু নেই",
+ "tux-empty-list-other": "অনুবাদ করার মতো কিছু নেই",
+ "tux-empty-list-other-guide": "আপনি বিদ্যমান অনুবাদ পর্যালোচনা করে সাহায্য করতে পারেন",
+ "tux-empty-list-other-action": "অনুবাদ পর্যালোচনা",
+ "tux-empty-list-other-link": "সব বার্তা দেখাও",
+ "tux-editor-close-tooltip": "বন্ধ",
+ "tux-editor-expand-tooltip": "প্রসারণ",
+ "tux-editor-collapse-tooltip": "সংকোচন",
+ "tux-editor-message-tools-history": "ইতিহাস",
+ "tux-editor-message-tools-delete": "অপসারণ",
+ "tux-editor-message-tools-translations": "সমস্ত অনুবাদসমূহ",
+ "tux-editor-loading": "লোডিং...",
+ "translate-search-more-languages-info": "আরও $1টি {{PLURAL:$1|ভাষা}}",
+ "translate-statsbar-tooltip": "{{formatnum:$1}}% অনূদিত, {{formatnum:$2}}% পর্যালোচিত",
+ "translate-statsbar-tooltip-with-fuzzy": "{{formatnum:$1}}% অনূদিত, {{formatnum:$2}}% পর্যালোচিত, {{formatnum:$3}}% মেয়াদোত্তীর্ণ",
+ "translate-search-more-groups-info": "আরও $1টি {{PLURAL:$1|দল}}"
+}
diff --git a/MLEB/Translate/i18n/core/bo.json b/MLEB/Translate/i18n/core/bo.json
new file mode 100644
index 00000000..070f5f58
--- /dev/null
+++ b/MLEB/Translate/i18n/core/bo.json
@@ -0,0 +1,42 @@
+{
+ "@metadata": {
+ "authors": [
+ "Freeyak",
+ "Phurbutsering"
+ ]
+ },
+ "translate": "ཡིག་སྒྱུར།",
+ "translate-taskui-view": "ཆ་འཕྲིན་ཧྲིལ་པོ་སྟོན།",
+ "translate-taskui-untranslated": "ཡིག་བསྒྱུར་མ་བྱས་པའི་བརྡ་འཕྲིན་སྟོན།",
+ "translate-taskui-optional": "འདམ་ཀའི་བརྡ་འཕྲིན་སྟོན།",
+ "translate-page-disabled": "སྡེ་ཁག་འདིའི་ནང་དུ་སྐད་རིགས་འདིའི་ཡིག་སྒྱུར་ནུས་མེད་ཆགས་འདུག \nརྒྱུ་མཚན་ནི། <em>$1</em>",
+ "translate-page-settings-legend": "སྒྲིག་བཀོད།",
+ "translate-page-group": "སྡེ་ཁག",
+ "translate-page-language": "སྐད་རིགས།",
+ "translate-page-limit": "གྲངས་ཚད།",
+ "translate-page-limit-option": "ངོས་རེར་{{PLURAL:$1|ཚིག་|ཚིག་}} $1 རེ།",
+ "translate-submit": "མངགས།",
+ "translate-page-navigation-legend": "ཕྱོགས་འཁྲིད།",
+ "translate-page-showing": "ཚིག་ $3 ལས་ $1 ནས $2 བར་བསྟན་ཡོད།",
+ "translate-page-showing-all": "{{PLURAL:$1|བརྡ་འཕྲིན་|བརྡ་འཕྲིན་}} $1 བསྟན་ཡོད།",
+ "translate-page-showing-none": "བསྟན་བྱའི་ཚིག་མི་འདུག",
+ "translate-next": "ཤོག་ངོས་རྗེས་མ།",
+ "translate-prev": "ཤོག་ངོས་གོང་མ།",
+ "translate-page-description-legend": "སྡེ་ཁག་ཆ་འཕྲིན།",
+ "translate-page-edit": "རྩོམ་སྒྲིག",
+ "translate-ext-url": "<hr />དྲ་ཚིགས། $1",
+ "translate-optional": "(འདེམས་ཚན་ཅན།)",
+ "translate-ignored": "(སྣང་མེད་བྱས་པ།)",
+ "translate-edit-title": "\"$1\"ལ་རྩོམ་སྒྲིག་བྱེད་པ།",
+ "translate-magic-cm-current": "ད་ཡོད།",
+ "translate-magic-cm-original": "མ་ཕྱི།",
+ "translate-magic-cm-save": "ཉར་ཚགས།",
+ "translate-magic-cm-savefailed": "ཉར་ཚགས་ཕམ་ཉེས་བྱུང་བ།",
+ "translate-rc-translation-filter-no": "ཅི་ཡང་མི་བྱེད།",
+ "translate-statsf-scale-months": "ཟླ་བ།",
+ "translate-statsf-scale-weeks": "བདུན་ཕྲག",
+ "translate-statsf-scale-days": "ཉི་མ།",
+ "translate-statsf-scale-hours": "དུས་ཚོད།",
+ "translate-translations-fieldset-title": "བརྡ་འཕྲིན།",
+ "translate-translations-messagename": "མིང་།"
+}
diff --git a/MLEB/Translate/i18n/core/bpy.json b/MLEB/Translate/i18n/core/bpy.json
new file mode 100644
index 00000000..9198040c
--- /dev/null
+++ b/MLEB/Translate/i18n/core/bpy.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Usingha"
+ ]
+ },
+ "translate": "অনুবাদ করিক"
+}
diff --git a/MLEB/Translate/i18n/core/br.json b/MLEB/Translate/i18n/core/br.json
new file mode 100644
index 00000000..dc3a87cb
--- /dev/null
+++ b/MLEB/Translate/i18n/core/br.json
@@ -0,0 +1,371 @@
+{
+ "@metadata": {
+ "authors": [
+ "Fohanno",
+ "Fulup",
+ "Gwendal",
+ "Y-M D"
+ ]
+ },
+ "translate": "Treiñ",
+ "translate-desc": "[[Special:Translate|Pajenn dibar]] evit treiñ MediaWiki ha pelloc'h",
+ "translate-taskui-view": "Diskouez an holl gemennadennoù",
+ "translate-taskui-untranslated": "Diskouez ar c'hemennadennoù da dreiñ",
+ "translate-taskui-optional": "Diskouez ar c'hemennadennoù diret",
+ "translate-taskui-acceptqueue": "Kemennadennoù a c'hallan degemer hepken",
+ "translate-taskui-reviewall": "Adwelet an holl droidigezhioù",
+ "translate-taskui-export-to-file": "Ezporzhiañ er furmad orin",
+ "translate-taskui-export-as-po": "Ezporzhiañ evit treiñ ezlinenn",
+ "translate-taction-translate": "Treiñ",
+ "translate-taction-proofread": "Adwelet",
+ "translate-taction-lstats": "Stadegoù yezh",
+ "translate-taction-mstats": "Stadegoù ar strollad kemennadennoù",
+ "translate-taction-export": "Ezporzhiañ",
+ "translate-taction-disabled": "Diweredekaat eo an oberiadenn-mañ war ar wiki-mañ.",
+ "translate-page-no-such-language": "Merket ez eus bet ur c'hod yezh direizh",
+ "translate-page-no-such-group": "Merket ez eus bet ur strollad direizh.",
+ "translate-page-disabled": "Harpet eo bet an troidigezhioù er yezh-mañ evit ar strollad-mañ.\nAbeg :\n\n<em>$1</em>",
+ "translate-language-disabled": "Diweredekaet eo an treiñ evit ar yezh-mañ.",
+ "translate-page-settings-legend": "Arventennoù",
+ "translate-page-group": "Strollad",
+ "translate-page-language": "Yezh",
+ "translate-page-limit": "Bevenn",
+ "translate-page-limit-option": "$1 {{PLURAL:$1|gemennadenn|kemennadenn}} dre bajenn",
+ "translate-submit": "Klask",
+ "translate-page-navigation-legend": "Merdeiñ",
+ "translate-page-showing": "O tiskouez kemennadennoù adal $1 betek $2 diwar $3.",
+ "translate-page-showing-all": "War wel $1 {{PLURAL:$1|gemennadenn|kemennadenn}}",
+ "translate-page-showing-none": "Netra da ziskouez.",
+ "translate-next": "Pajenn da-heul",
+ "translate-prev": "Pajenn gent",
+ "translate-page-description-legend": "Titouroù diwar-benn ar strollad",
+ "translate-page-description-hasoptional": "Kemennadennoù diret zo er strollad kemennadennoù-mañ.\nNe zle ar c'hemennadennoù diret bezañ troet nemet pa vez ezhommoù dibar gant ho yezh evel pa vez arabat ober gant esaouennoù pe evit treuzlizherennañ anvioù divoutin. $1",
+ "translate-page-description-hasoptional-open": "Diskouez ar c'hemennadennoù diret.",
+ "translate-page-edit": "kemmañ",
+ "translate-ext-url": "<hr />Lec'hienn Web : $1",
+ "translate-optional": "(diret)",
+ "translate-ignored": "(laosket a-gostez)",
+ "translate-edit-title": "Kemmañ \"$1\"",
+ "translate-edit-definition": "Termenadur ar gemennadenn",
+ "translate-edit-translation": "Troidigezh",
+ "translate-edit-contribute": "kemer perzh",
+ "translate-edit-no-information": "''N'eus tamm titour ebet diwar-benn ar gemennadenn-mañ. Ma ouzit pelec'h pe benaos emañ da vezañ implijet e c'hallit harpañ troourien all en ur ouzhpennañ titouroù diwar he fenn.''",
+ "translate-edit-information": "Titouroù diwar-benn ar gemennadenn ($1)",
+ "translate-edit-in-other-languages": "An hevelep kemennadenn e yezhoù all",
+ "translate-edit-committed": "Troidigezh er meziant evit poent",
+ "translate-edit-warnings": "Kemennoù diwall diwar-benn an troidigezhioù diglok",
+ "translate-edit-tmsugs": "Kinnig a-berzh ar memor treiñ",
+ "translate-edit-tmmatch-source": "Testenn orin da dreiñ : $1",
+ "translate-edit-tmmatch": "$1% kenglotañ",
+ "translate-use-suggestion": "Erlec'hiañ an droidigezh a-vremañ gant ar c'hinnig-mañ.",
+ "translate-edit-nopermission": "Ret eo deoc'h bezañ aotreet a-raok gallout treiñ kemennadennoù.",
+ "translate-edit-askpermission": "Kaout an aotre",
+ "translate-magic-pagename": "Troidigezh MediaWiki astennet",
+ "translate-magic-help": "Gallout a rit treiñ aliasoù ar pajennoù dibar, ar gerioù burzhudus hag anvioù an esaouennoù anv.\n\nAliasoù ar pajennoù dibar hag ar gerioù burzhudus a c'hall kaout meur a droidigezh.\nDispartiet eo an troidigezhioù dre skejoù (,).\nN'hall anvioù an esaouennoù anv kaout nemet un droidigezh.\n\nTreiñ esaouennoù anv ar raktres <code>$1 talk</code> a c'hall bezañ luziet.\nErlec'hiet eo <code>$1</code> gant anv al lec'hienn (da skouer <code>{{ns:project_talk}}</code>).\nMa n'haller ket sevel lavarennoù reizh en ho yezh hep kemmañ anv al lec'hienn, kit e darempred gant un diorroer [[Support]].\n\nRet eo deoc'h bezañ ezel eus ar strollad troerien evit gallout enrollañ ar c'hemmoù.\nNe vo ket enrollet ar c'hemmoù e-keit ha ne vo ket bet pouezet war ar bouton enrollañ dindan.",
+ "translate-magic-module": "Modulenn :",
+ "translate-magic-submit": "Klask",
+ "translate-magic-cm-export": "Ezporzhiañ",
+ "translate-magic-nothing-to-export": "N'eus ket netra da ezporzhiañ.",
+ "translate-magic-cm-to-be": "A zeu da vezañ",
+ "translate-magic-cm-current": "Bremañ",
+ "translate-magic-cm-original": "Orin",
+ "translate-magic-cm-comment": "Notenn :",
+ "translate-magic-cm-save": "Enrollañ",
+ "translate-magic-cm-updatedusing": "Hizivaet en ur implijout [[Special:AdvancedTranslate|{{int:Translate-magic-pagename}}]]",
+ "translate-magic-cm-savefailed": "C'hwitet enrollañ",
+ "translate-magic-special": "Aliasoù ar pajennoù dibar",
+ "translate-magic-words": "Gerioù burzhudus",
+ "translate-magic-namespace": "Anv an esaouennoù anv",
+ "translate-magic-notsaved": "N'eo ket bet enrollet ar c'hemmoù degaset ganeoc'h !",
+ "translate-magic-errors": "Reizhit ar {{PLURAL:$1|fazi|fazi}} da-heul en troidigezhioù :",
+ "translate-magic-saved": "Enrollet-mat eo bet ho kemmoù.",
+ "translate-checks-parameters": "Ne vez ket graet gant an {{PLURAL:$2|arventenn|arventennoù}} da-heul : <strong>$1</strong>",
+ "translate-checks-parameters-unknown": "Dianav eo an {{PLURAL:$2|arventenn|arventennoù}} da-heul :\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-balance": "Ampar eo an niver a {{PLURAL:$2|grommelloù|grommelloù}} : <strong>$1</strong>",
+ "translate-checks-links": "Kudennek eo al {{PLURAL:$2|liamm|liammoù}} da-heul : <strong>$1</strong>",
+ "translate-checks-links-missing": "Mankout a ra {{PLURAL:$2|al liamm|an $2 liamm}} da-heul :\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-xhtml": "Erlec'hiit ar {{PLURAL:$2|valizenn|balizennoù}} da-heul gant ar re a zegouezh mar plij : <strong>$1</strong>",
+ "translate-checks-plural": "Ober a ra an termenadur gant <nowiki>{{PLURAL:}}</nowiki> padal an droidigezh ne ra ket.",
+ "translate-checks-pagename": "Anv esaouenn kemmet adalek an termenadur",
+ "translate-checks-format": "Ne glot ket an droidigezh-mañ gant an termenadur pe faziek eo an ereadurezh anezhi : $1",
+ "translate-checks-escape": "Dre fazi e c'hall bezañ an diflipadennoù da-heul : <strong>$1</strong>",
+ "translate-checks-parametersnotequal": "{{PLURAL:$1|$1}} eo an niver a arventennoù pa zlefe bezañ {{PLURAL:$2|$2}}.",
+ "translate-checks-malformed": "Stummet fall eo <nowiki>$1</nowiki>.",
+ "translate-checks-fudforum-syntax": "Ober gant <nowiki>$1</nowiki> e-lec'h <nowiki>$2</nowiki> er raktres-mañ.",
+ "translate-pref-nonewsletter": "Arabat kas din kelc'hlizheroù dre bostel",
+ "translate-pref-editassistlang": "Yezhoù skoazell :",
+ "prefs-translate": "Dibarzhioù treiñ",
+ "translate-pref-editassistlang-help": "Roll kodoù yezh dispartiet dre ur skej.\nDiskwelet eo an droidigezh er yezhoù-se pa vezit o treiñ ur gemennadenn.\nCheñch a ra roll dre ziouer ar yezhoù-se diouzh ar yezh a rit ganti.",
+ "translate-pref-editassistlang-bad": "Kod yezh direizh el listenn :\n<nowiki>$1</nowiki>.",
+ "right-translate": "Kemmañ en ur ober gant an etrefas treiñ",
+ "right-translate-manage": "Merañ ar strolladoù kemennadennoù",
+ "action-translate-manage": "Merañ ar strolladoù kemennadennoù",
+ "right-translate-import": "Enporzhiañ an troidigezhioù ezlinenn",
+ "action-translate-import": "Enporzhiañ troidigezhioù ezlinenn",
+ "right-translate-messagereview": "Adwelet an troidigezhioù",
+ "right-translate-groupreview": "Kemmañ stad lusk labour ar strolladoù kemennadennoù",
+ "translate-rc-translation-filter": "Silañ an troidigezhioù :",
+ "translate-rc-translation-filter-no": "Na ober seurt ebet",
+ "translate-rc-translation-filter-only": "Diskouez an troidigezhioù hepken",
+ "translate-rc-translation-filter-filter": "Lakaat an troidigezhioù er-maez",
+ "translate-rc-translation-filter-site": "Kemmoù da gemennoù al lec'hienn hepken",
+ "translationstats": "Stadegoù treiñ",
+ "translate-stats-edits": "Kemmoù",
+ "translate-stats-users": "Troerien",
+ "translate-stats-registrations": "Enskrivadurioù",
+ "translate-stats-reviews": "Adweladennoù",
+ "translate-stats-reviewers": "Reizherien",
+ "translate-statsf-intro": "Stadegoù eeun a c'hallit krouiñ gant ar furmskrid-mañ.\nBevennoù izel hag uhel zo d'an holl dalvoudoù.",
+ "translate-statsf-options": "Dibarzhioù ar grafik",
+ "translate-statsf-width": "Ledander e piksel :",
+ "translate-statsf-height": "Uhelder e piksel",
+ "translate-statsf-days": "Deiziad kregiñ :",
+ "translate-statsf-start": "Deiziad kregiñ:",
+ "translate-statsf-scale": "Greunerezh :",
+ "translate-statsf-scale-months": "Mizioù",
+ "translate-statsf-scale-weeks": "Sizhunvezhioù",
+ "translate-statsf-scale-days": "Deizioù",
+ "translate-statsf-scale-hours": "Eurioù",
+ "translate-statsf-count": "Muzul :",
+ "translate-statsf-count-edits": "Niver a gemmoù",
+ "translate-statsf-count-users": "Troerien oberiant",
+ "translate-statsf-count-registrations": "Implijerien nevez",
+ "translate-statsf-count-reviews": "Adweladennoù troidigezhioù",
+ "translate-statsf-count-reviewers": "Reizherien",
+ "translate-statsf-language": "Roll kodoù yezh, dispartiet gant skejoù :",
+ "translate-statsf-group": "Roll kodoù strolladoù, dispartiet gant skejoù :",
+ "translate-statsf-submit": "Rakwelet",
+ "translate-tag-category": "Pajennoù da dreiñ",
+ "translate-tag-page-desc": "Troidigezh ar bajenn wiki [[$2|$1]].",
+ "translate-sidebar-alltrans": "E yezhoù all",
+ "translations": "An holl droidigezhioù",
+ "translations-summary": "Merkit anv ur c'hemenn bennak amañ evit gwelet an holl droidigezhioù hegerz.",
+ "translate-translations-no-message": "N'haller ket treiñ \"$1\"",
+ "translate-translations-none": "N'eus troidigezh ebet evit \"$1\"",
+ "translate-translations-count": "Bez' ez eus {{PLURAL:$1|un droidigezh|$1 troidigezh}}.",
+ "translate-translations-fieldset-title": "Kemenn",
+ "translate-translations-messagename": "Anv :",
+ "translate-translations-project": "Raktres :",
+ "translate-translations-including-no-param": "Merkit un alc'hwez kemenn reizh en arventenn ''ispajenn''",
+ "translate-translations-history-short": "h",
+ "languagestats": "Stadegoù yezh",
+ "languagestats-summary": "Diskouez a ra ar bajenn-mañ ar stadegoù treiñ evit an holl strolladoù kemennadennoù en ur yezh bennak.",
+ "languagestats-stats-for": "Stadegoù an droidigezh evit $1 ($2).",
+ "languagestats-recenttranslations": "troidigezhioù diwezhañ",
+ "translate-langstats-incomplete": "Diglok eo darn eus stadegoù ar bajenn-mañ. Ret eo hec'h adkargañ evit kaout stadegoù all.",
+ "translate-langstats-expand": "dispakañ",
+ "translate-langstats-collapse": "Pakañ",
+ "translate-langstats-expandall": "Dispakañ pep tra",
+ "translate-langstats-collapseall": "Pakañ pep tra",
+ "translate-language-code": "Kod yezh",
+ "translate-language-code-field-name": "Kod yezh :",
+ "translate-suppress-complete": "Arabat diskouez ar strolladoù kemennadennoù zo bet troet penn-da-benn.",
+ "translate-ls-noempty": "Diverkañ penn-da-benn ar strolladoù kemennadennoù n'int ket bet troet",
+ "translate-language": "Yezh",
+ "translate-total": "Kemennadennoù",
+ "translate-untranslated": "Didro",
+ "translate-percentage-complete": "Echu",
+ "translate-percentage-fuzzy": "Dispredet",
+ "translate-languagestats-overall": "An holl strolladoù kemennadennoù war un dro",
+ "translate-ls-submit": "Diskouez ar stadegoù",
+ "translate-ls-column-group": "Strollad kemennadennoù",
+ "translate-mgs-pagename": "Stadegoù ar strollad kemennadennoù",
+ "translate-mgs-fieldset": "Diskwel ar penndibaboù",
+ "translate-mgs-group": "Strollad kemennadennoù :",
+ "translate-mgs-nocomplete": "Arabat diskouez ar yezhoù eo klok an troidigezhioù evito",
+ "translate-mgs-noempty": "Arabat diskouez ar yezhoù n'eus ket a droidigezhioù evito",
+ "translate-mgs-submit": "Diskouez ar stadegoù",
+ "translate-mgs-column-language": "Yezh",
+ "translate-mgs-totals": "An holl yezhoù war ar memes tro",
+ "translate-mgs-invalid-group": "N'eus ket eus ar strollad $1 merket.",
+ "translate-mgs-nothing": "N'eus netra ebet da ziskouez o klotañ gant ar stadegoù goulennet.",
+ "supportedlanguages": "Yezhoù skoret",
+ "supportedlanguages-summary": "Diskouez a ra ar bajenn-mañ roll ar yezhoù skoret gant {{SITENAME}} a-gevret gant roll an droerien a labour warno.\nSeul vrasoc'h anv ar troer, seul vui a droidigezhioù zo bet kaset da benn gantañ.\nLiv an islinennañ a verk pegen nevez zo eo bet oberiant an droerien amañ.",
+ "supportedlanguages-colorlegend": "Alc'hwez evit al liv : Troidigezh ziwezhañ, $1 devezh zo.",
+ "supportedlanguages-translators": "{{PLURAL:$2|Troer|Troerien}} : $1",
+ "supportedlanguages-recenttranslations": "troidigezhioù ziwezhañ",
+ "supportedlanguages-count": "$1 {{PLURAL:$1|yezh|yezh}} en holl.",
+ "supportedlanguages-activity": "$1 : $2 {{PLURAL:$2|c'hemm|kemm}} - kemm diwezhañ $3 {{PLURAL:$3|devezh|devezh}} zo",
+ "translate-save": "Enrollañ ($1)",
+ "translate-jssti-add": "Ouzhpennañ d'ar roll",
+ "managemessagegroups": "Merañ ar strollad kemennadennoù",
+ "translate-smg-notallowed": "N'oc'h ket aotreet da gas an oberiadenn-mañ da benn.",
+ "translate-smg-nochanges": "N'eus netra da gemmañ.",
+ "translate-smg-submit": "Kas ar c'hemmoù ma vo pledet ganto",
+ "translate-smg-submitted": "Hizivaet eo bet termenadurioù an troidigezhioù. Plediñ a reer gant ar c'hemmoù en drekleur.",
+ "translate-manage-import-diff": "Kemennadenn $1 | Oberoù : $2",
+ "translate-manage-import-new": "Kemennadenn nevez $1",
+ "translate-manage-import-deleted": "Kemennadennoù diverket $1",
+ "translate-manage-action-import": "Enporzhiañ",
+ "translate-manage-action-conflict": "Enporzhiañ ha merkañ evel strafuilhet",
+ "translate-manage-action-ignore": "Lezel a-gostez",
+ "translate-manage-action-fuzzy": "Enporzhiañ an troidigezhioù hag o merkañ evel strafuilhet.",
+ "translate-manage-nochanges": "N'eus bet kemm ebet e termenadurioù kemennadennoù ar strollad-mañ",
+ "translate-manage-nochanges-other": "N'eus bet kemm ebet gant ar yezh-mañ.\nGrit gant al liamm a-is da zistreiñ d'ar gwel dre ar munud evit ar strollad",
+ "translate-manage-inconsistent": "Merzet ez eus bet un disdalc'h er reked.\nGwiriit ha kemmoù zo bet ha klaskit en-dro.\nMunudoù : $1.",
+ "translate-manage-toolong": "Aet eur dreist d'an termen pellañ a $1 {{PLURAL:$1|eilenn|eilenn}}.\nAdkasit ar furmskrid evit kenderc'hel gant an tretiñ.",
+ "translate-manage-import-summary": "Enporzhiañ ur stumm nevez adalek ur vammenn ziavaez.",
+ "translate-manage-conflict-summary": "Enporzhiañ ur stumm nevez adalek ur vammenn ziavaez.\nGwiriit mar plij.",
+ "translate-manage-fuzzy-summary": "Cheñchet eo termenadur ar gemennadenn",
+ "translate-manage-submit": "Erounit",
+ "translate-manage-intro-other": "A-is emañ roll ar c'hemmoù treiñ e $1.\nGwiriit anezho ha dibabit ar pezh a fell deoc'h ober evit pep troidigezh.\nMa tibabit chom hep kemer ar c'hemmoù e kont e vint riñset-lip kentañ tro ma vo un ezporzhiadenn nevez.",
+ "translate-manage-import-ok": "Enporzhiet ez eus bet ur stumm nevez eus ar bajenn $1",
+ "translate-manage-import-done": "Enporzhiañ aet betek penn !",
+ "importtranslations": "Enporzhiañ an troidigezhioù",
+ "translate-import-from-local": "Enporzhiañ ur restr lec'hel :",
+ "translate-import-load": "Kargañ ar restr",
+ "translate-import-err-dl-failed": "Dibosupl kerc'hat ar restr :\n$1",
+ "translate-import-err-ul-failed": "C'hwitet eo bet enporzhiañ ar restr",
+ "translate-import-err-invalid-title": "Direizh e oa anv ar restr spisaet <nowiki>$1</nowiki>.",
+ "translate-import-err-no-such-file": "N'eus ket eus ar restr <nowiki>$1</nowiki> pe neuze n'eo ket bet enporzhiet ent lec'hel.",
+ "translate-import-err-stale-group": "Ar restr-mañ zo en ur strollad kemennadennoù n'eus ket anezhañ.",
+ "translate-import-err-no-headers": "N'eo ket ar restr ur restr ''Gettext'' stummet mat er furmad gortozet gant an astenn ''Translate'' :\nDibosupl eo didermeniñ ar strollad hag ar yezh adalek talbennoù ar restr.",
+ "translate-import-err-warnings": "Ne oa ket stummet mat ar restr-mañ.\nBezit sur ne lam ket ho skridaozer ar maeziennoù msgctxt kuit.\nMunudoù : $1",
+ "translate-js-summary": "Diverrañ :",
+ "translate-js-save": "Enrollañ",
+ "translate-js-next": "Enrollañ ha digeriñ an hini da-heul",
+ "translate-js-nonext": "Ar gemenadenn ziwezhañ er bajenn-mañ e oa.",
+ "translate-js-skip": "Mont d'an hini da-heul",
+ "translate-js-save-failed": "Ur gudenn zo bet gant an enrollañ. Sachit hon evezh war ar gudenn-mañ.",
+ "translate-js-history": "Istor an droidigezh",
+ "translate-js-support": "Sevel ur goulenn",
+ "translate-js-support-title": "Goulennit un tamm skoazell ma vank titouroù evit treiñ ar gemennadenn-mañ evel m'eo dleet.",
+ "translate-js-support-unsaved-warning": "Chom a ra troidigezhioù n'int ket bet enrollet ganeoc'h.",
+ "translate-gs-pos": "Lec'h.",
+ "translate-gs-code": "Kod",
+ "translate-gs-continent": "Kevandir",
+ "translate-gs-speakers": "Yezherien",
+ "translate-gs-score": "Skor",
+ "translate-gs-multiple": "Lies",
+ "translate-gs-count": "Kont",
+ "translate-gs-total": "Hollad",
+ "translate-gs-avgscore": "Skor keitat",
+ "translate-documentation-language": "Titouroù a-zivout ar gemennadenn",
+ "translate-searchprofile": "Troidigezhioù",
+ "translate-searchprofile-tooltip": "Klask en holl droidigezhioù",
+ "translate-search-languagefilter": "Sil dre yezh :",
+ "translate-search-nofilter": "Tamm sil ebet",
+ "translate-messagereview-submit": "Merkañ evel adwelet",
+ "translate-messagereview-progress": "O verkañ evel adwelet...",
+ "translate-messagereview-failure": "Oc'h aprouiñ... c'hwitet: $1",
+ "translate-messagereview-done": "Adwelet",
+ "translate-messagereview-reviews": "Asantet gant {{PLURAL:$1|un implijer|$1 implijer}}",
+ "translate-messagereview-reviewswithyou": "Asantet gant {{PLURAL:$1|un implijer|$1 implijer}} o kontañ ac'hanoc'h ivez",
+ "api-error-invalidrevision": "N'eo ket bet kavet an droidigezh",
+ "api-error-unknownmessage": "N'eo ket bet kavet ar gemennadenn",
+ "api-error-fuzzymessage": "Merket eo ar gemennadenn evel strafuilhet",
+ "api-error-owntranslation": "N'hallit ket asantiñ d'an troidigezhioù graet ganeoc'h.",
+ "translate-messagereview-no-fuzzy": "N'haller ket asantiñ d'an troidigezhioù strafuilhet",
+ "translate-messagereview-no-own": "N'hallit ket asantiñ d'ho troidigezhioù graet ganeoc'h.",
+ "translate-messagereview-doit": "Degemer an droidigezh-mañ evel un droidigezh reizh.",
+ "log-name-translationreview": "Marilh adlenn an troidigezhioù",
+ "log-description-translationreview": "Marilh holl adlennadennoù an troidigezhioù hag ar strolladoù kemennadennoù.",
+ "logentry-translationreview-message": "$1 {{GENDER:$2|en|he}} deus adwelet troidigezh $3",
+ "group-translate-sandboxed": "Troerien nann-aprouet",
+ "group-translate-sandboxed-member": "{{GENDER:$1|troer nann-aprouet|troerez nann-aprouet}}",
+ "translate-workflow-state-": "(diweredekaet)",
+ "translate-workflowstatus": "Statud: $1",
+ "translate-workflow-set-do": "Gweredekaet",
+ "translate-workflow-set-doing": "O weredekaat...",
+ "translate-workflow-set-done": "Gweredekaet !",
+ "translate-workflow-set-error-alreadyset": "Heñvel eo ar stad goulennet ouzh an hini zo bremañ.",
+ "translate-workflow-autocreated-summary": "Krouidigezh emgefre ar bajenn evit stad al lusk labour $1",
+ "translate-stats-workflow": "Statud",
+ "translate-workflowgroup-label": "Stad an argerzh labour",
+ "translate-workflowgroup-desc": "Diskouez a ra ar strollad kemennadennoù-mañ stad lusk labour an troidigezhioù.\nTermenet eo ar stadoù en argemenn gefluniañ $wgTranslateWorkflowStates.",
+ "translate-dynagroup-recent-label": "Troidigezhioù diwezhañ",
+ "translate-dynagroup-recent-desc": "Diskouez a ra ar strollad kemennadennoù-mañ an holl droidigezhioù diwezhañ evit ar yezh-se.\nTalvoudus evit adlenn ha reizhañ.",
+ "translate-dynagroup-additions-label": "Ouzhpennadennoù diwezhañ",
+ "translate-dynagroup-additions-desc": "Diskouez a ra ar strollad kemennadennoù-mañ ar c'hemennadennoù nevez pe ar re bet kemmet.",
+ "translate-dynagroup-by": "Troidigezh graet gant {{GENDER:$1|$1}}",
+ "translate-dynagroup-byc": "Troidigezh graet gant {{GENDER:$1|$1}} ($2)",
+ "translate-dynagroup-last": "Kemm diwezhañ graet gant {{GENDER:$1|$1}}",
+ "translate-dynagroup-lastc": "Kemm diwezhañ graet gant {{GENDER:$1|$1}} ($2)",
+ "translate-gethelp": "Skoazell",
+ "translate-msggroupselector-projects": "Strollad kemennadennoù",
+ "translate-msggroupselector-search-placeholder": "Klask strolladoù",
+ "translate-msggroupselector-search-all": "An holl",
+ "translate-msggroupselector-search-recent": "Nevez",
+ "translate-msggroupselector-view-subprojects": "$1 {{PLURAL:$1|isstrollad}}",
+ "tux-languageselector": "Treiñ e",
+ "tux-tab-all": "An holl",
+ "tux-tab-untranslated": "Didro",
+ "tux-tab-outdated": "Dispredet",
+ "tux-tab-translated": "Troet",
+ "tux-tab-unproofread": "Anwiriet",
+ "tux-edit": "Kemmañ",
+ "tux-status-optional": "Diret",
+ "tux-status-fuzzy": "Dispredet",
+ "tux-status-proofread": "Adwelet",
+ "tux-status-translated": "Troet",
+ "tux-status-saving": "Oc'h enrollañ...",
+ "tux-status-unsaved": "Hep enrollañ",
+ "tux-editor-placeholder": "Ho troidigezh",
+ "tux-editor-paste-original-button-label": "Pegañ an destenn orin",
+ "tux-editor-discard-changes-button-label": "Dilezel ar c'hemmoù",
+ "tux-editor-save-button-label": "Enrollañ an droidigezh",
+ "tux-editor-skip-button-label": "Mont d'an hini war-lerc'h",
+ "tux-editor-cancel-button-label": "Nullañ",
+ "tux-editor-confirm-button-label": "Kadarnaat an droidigezh",
+ "tux-editor-shortcut-info": "Pouezañ war \"$1\" evit enrollañ pe war \"$2\" evit mont d'ar gemennadenn war-lerc'h",
+ "tux-editor-edit-desc": "Kemmañ an deskrivadur",
+ "tux-editor-add-desc": "Ouzhpennañ un deskrivadur",
+ "tux-editor-suggestions-title": "Kinnigoù",
+ "tux-editor-in-other-languages": "E yezhoù all",
+ "tux-editor-need-more-help": "Ezhomm sikour ?",
+ "tux-editor-ask-help": "Goulenn resisadurioù",
+ "tux-editor-tm-match": "$1% kenglotañ",
+ "tux-warnings-more": "{{PLURAL:$1|$1 ouzhpenn}}",
+ "tux-warnings-hide": "kuzhat",
+ "tux-editor-save-failed": "C'hwitet eo bet an enrollañ : $1",
+ "tux-editor-n-uses": "implijet $1 {{PLURAL:$1|wezh|gwezh}}",
+ "tux-editor-message-desc-more": "Gwelet muioc'h",
+ "tux-editor-message-desc-less": "Gwelet nebeutoc'h",
+ "tux-editor-clear-translated": "Kuzhat ar re bet troet",
+ "tux-editor-proofreading-mode": "Adwelet",
+ "tux-editor-translate-mode": "Roll",
+ "tux-editor-proofreading-hide-own-translations": "Kuzhat ho troidigezhioù",
+ "tux-editor-proofreading-show-own-translations": "Diskouez ho troidigezhioù",
+ "tux-proofread-action-tooltip": "Degemer an droidigezh",
+ "tux-proofread-edit-label": "Kemmañ",
+ "tux-editor-page-mode": "Pajenn",
+ "tux-editor-outdated-warning": "Marteze eo dav nevesaat an droidigezh-mañ.",
+ "tux-editor-outdated-warning-diff-link": "Diskouez ar c'hemmoù",
+ "tux-editor-doc-editor-placeholder": "Titouroù a-zivout ar gemennadenn",
+ "tux-editor-doc-editor-save": "Enrollañ an teulioù skoazell",
+ "tux-editor-doc-editor-cancel": "Nullañ",
+ "tux-messagetable-more-messages": "$1 {{PLURAL:$1|gemennadenn|kemennadenn}} ouzhpenn",
+ "tux-messagetable-loading-messages": "O kargañ ar {{PLURAL:$1|gemennadenn|c'hemennadennoù}}...",
+ "tux-message-filter-placeholder": "Roll silañ",
+ "tux-message-filter-result": "Kavet $1 {{PLURAL:$1|disoc'h|disoc'h}} evit \"$2\"",
+ "tux-message-filter-advanced-button": "Klask araokaet",
+ "tux-message-filter-optional-messages-label": "Kemennadennoù diret",
+ "tux-proofread-translated-by-self": "Troet ganeoc'h",
+ "tux-empty-list-all": "Goullo eo ar strollad kemennadennoù-mañ",
+ "tux-empty-list-all-guide": "Dibab ur strollad kemennadennoù all da dreiñ",
+ "tux-translate-page-no-such-group": "'''N'eus ket eus ar strollad merket.''' Dibab ur strollad kemennadennoù all.",
+ "tux-empty-list-translated": "Kemennadenn ebet bet troet",
+ "tux-empty-list-translated-guide": "Hor skoazellañ gant an treiñ a c'hallit ober",
+ "tux-empty-list-translated-action": "Treiñ",
+ "tux-empty-no-messages-to-display": "Kemennadenn ebet da ziskwel.",
+ "tux-empty-show-optional-messages": "Diskouez ar c'hemennadennoù diret",
+ "tux-empty-no-outdated-messages": "N'eus kemennadenn dispredet ebet",
+ "tux-empty-nothing-to-proofread": "Netra da adwelet",
+ "tux-empty-you-can-help-providing": "Gellout a rit sikour o kinnig troidigezhioù nevez",
+ "tux-empty-nothing-new-to-proofread": "Netra nevez da adwelet",
+ "tux-empty-list-other": "Netra da dreiñ",
+ "tux-empty-list-other-guide": "Gallout a rit skoazellañ en ur reizhañ an troidigezhioù bet kaset da benn c'hoazh",
+ "tux-empty-list-other-action": "Adwelet an troidigezhioù",
+ "tux-empty-list-other-link": "Diskouez an holl gemennadennoù",
+ "tux-editor-close-tooltip": "Serriñ",
+ "tux-editor-expand-tooltip": "Dispakañ",
+ "tux-editor-collapse-tooltip": "Pakañ",
+ "tux-editor-message-tools-history": "Istor",
+ "tux-editor-message-tools-translations": "An holl droidigezhioù",
+ "tux-editor-loading": "O kargañ...",
+ "translate-search-more-languages-info": "$1 {{PLURAL:$1|yezh}} ouzhpenn",
+ "translate-statsbar-tooltip": "$1% troet, $2% adwelet",
+ "translate-statsbar-tooltip-with-fuzzy": "$1% troet, $2% adwelet, $3% dispredet",
+ "translate-search-more-groups-info": "$1 {{PLURAL:$1|strollad}} ouzhpenn",
+ "translate-ulsdep-title": "Fazi kefluniadur"
+}
diff --git a/MLEB/Translate/i18n/core/bs.json b/MLEB/Translate/i18n/core/bs.json
new file mode 100644
index 00000000..f8c40dc3
--- /dev/null
+++ b/MLEB/Translate/i18n/core/bs.json
@@ -0,0 +1,257 @@
+{
+ "@metadata": {
+ "authors": [
+ "CERminator",
+ "DzWiki",
+ "Edinwiki",
+ "KWiki"
+ ]
+ },
+ "translate": "Prijevod",
+ "translate-desc": "[[Special:Translate|Posebna stranica]] za prevođenje MediaWiki i još mnogo više",
+ "translate-taskui-view": "Pokaži sve poruke",
+ "translate-taskui-untranslated": "Pokaži neprevedene poruke",
+ "translate-taction-proofread": "Provjeri",
+ "translate-taction-lstats": "Statistike jezika",
+ "translate-page-no-such-language": "Navedeni jezik ne postoji.",
+ "translate-page-no-such-group": "Navedena grupa ne postoji.",
+ "translate-page-disabled": "Prijevodi na ovaj jezik u ovoj grupi su onemogućeni. Razlog:\n\n<em>$1</em>",
+ "translate-page-settings-legend": "Postavke",
+ "translate-page-group": "Grupa",
+ "translate-page-language": "Jezik",
+ "translate-page-limit": "Ograničenja",
+ "translate-page-limit-option": "$1 {{PLURAL:$1|poruka|poruke|poruka}} po stranici",
+ "translate-submit": "Pronađi",
+ "translate-page-navigation-legend": "Navigacija",
+ "translate-page-showing": "Prikazane su poruke od $1 do $2 iz $3.",
+ "translate-page-showing-all": "Prikaz $1 {{PLURAL:$1|poruke|poruke|poruka}}.",
+ "translate-page-showing-none": "Nema poruka za prikaz.",
+ "translate-next": "slijedeća stranica",
+ "translate-prev": "Prethodna stranica",
+ "translate-page-description-legend": "Informacije o ovoj grupi",
+ "translate-page-edit": "uredi",
+ "translate-ext-url": "<hr />Web stranica: $1",
+ "translate-optional": "(opcionalno)",
+ "translate-ignored": "(zanemareno)",
+ "translate-edit-title": "Uređivanje \"$1\"",
+ "translate-edit-definition": "Definicija poruke",
+ "translate-edit-translation": "Prijevod",
+ "translate-edit-contribute": "doprinesi",
+ "translate-edit-no-information": "''Ova poruka nema pripadajuće dokumentacije. Ako znate gdje ili kako se ova poruka koristi, možete pomoći drugim prevodiocima tako što ćete dodati dokumentaciju za ovu poruku.''",
+ "translate-edit-information": "Informacije o poruci ($1)",
+ "translate-edit-in-other-languages": "Poruka na ostalim jezicima",
+ "translate-edit-committed": "Trenutni prijevodi softvera",
+ "translate-edit-warnings": "Upozorenja o nepotpunim prijevodima",
+ "translate-edit-tmsugs": "Prijedlozi iz prevodilačke memorije",
+ "translate-edit-tmmatch": "$1% slaganja",
+ "translate-use-suggestion": "Zamijenite trenutni prijevod ovim prijedlogom.",
+ "translate-edit-nopermission": "Treba vam dozvola da prevodite poruke.",
+ "translate-edit-askpermission": "Zatraži dozvolu",
+ "translate-magic-pagename": "Prošireni MediaWiki prijevod",
+ "translate-magic-help": "Možete prevoditi skraćenice posebnih stranica, magične riječi i imena imenskih prostora.\n\nSkraćenice posebnih stranica i magične riječi mogu imati višestruke prijevode.\nPrijevodi su odvojeni zarezom (,).\nImenski prostori mogu imati samo jedan prijevod.\n\nU prijevodima imenskih prostora <code>$1 razgovor</code> je poseban. <code>$1</code> je zamijenjeno sa imenom sajta (naprimjer <code>{{ns:project_talk}}</code>).\nAko nije moguće na Vašem jeziku da se obrazuje valjan izraz bez promjene imena sajta, molimo da kontaktirate razvojnog programera.\n\nMorate pripadati grupi prevodioca da bi spremili promjene.\nPromjene nisu spremljene sve dok ne kliknete dugme spremi koje se nalazi ispod.",
+ "translate-magic-module": "Modul:",
+ "translate-magic-submit": "Pronađi",
+ "translate-magic-cm-export": "Izvoz",
+ "translate-magic-nothing-to-export": "Nema ništa za izvoz.",
+ "translate-magic-cm-to-be": "Treba biti",
+ "translate-magic-cm-current": "Trenutno",
+ "translate-magic-cm-original": "Originalno",
+ "translate-magic-cm-comment": "Komentar:",
+ "translate-magic-cm-save": "Sačuvaj",
+ "translate-magic-cm-updatedusing": "Ažurirano putem [[Special:AdvancedTranslate|{{int:Translate-magic-pagename}}]]",
+ "translate-magic-cm-savefailed": "Spremanje nije uspjelo",
+ "translate-magic-special": "Skraćenice posebnih stranica",
+ "translate-magic-words": "Magične riječi",
+ "translate-magic-namespace": "Nazivi imenskih prostora",
+ "translate-magic-notsaved": "Vaše uređivanje nije spremljeno!",
+ "translate-magic-errors": "Molimo ispravite {{PLURAL:$1|slijedeću grešku|slijedeće greške}} u prevodima:",
+ "translate-magic-saved": "Vaše promjene su uspješno sačuvane.",
+ "translate-checks-parameters": "Slijedeći {{PLURAL:$2|parametar nije iskorišten|parametri nisu iskorišteni}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-parameters-unknown": "Slijedeći {{PLURAL:$2|parametar je nepoznat|parametri su nepoznati}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-balance": "Postoji nejednak broj vrsta {{PLURAL:$2|zagrade|zagrada}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links": "{{PLURAL:$2|Slijedeći link je problematičan|Slijedeća $2 linka su problematični|Slijedećih $2 linkova je problematično}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links-missing": "{{PLURAL:$2|Slijedeći link|Slijedeća $2 linka|Slijedeći $2 linkova}} nedostaje:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-xhtml": "Molimo Vas da zamijenite {{PLURAL:$2|slijedeću oznaku|slijedeće oznake}} sa ispravnim:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-plural": "Definicija poruke koristi <nowiki>{{PLURAL:}}</nowiki> ali ga nema u prijevodu.",
+ "translate-checks-pagename": "Imenski prostor je promijenjen u odnosu na definiciju",
+ "translate-checks-format": "Ovaj prijevod nije usklađen sa definicijom ili nema validnu sintaksu: $1",
+ "translate-checks-escape": "Slijedeće escape-sekvence mogle bi biti slučajne: <strong>$1</strong>",
+ "translate-checks-fudforum-syntax": "Koristite nowiki>$1</nowiki>umjesto <nowiki>$2</nowiki> u ovom projektu.",
+ "translate-pref-nonewsletter": "Ne šalji mi pismo o vijestima putem e-maila",
+ "translate-pref-editassistlang": "Pomoćni jezici:",
+ "prefs-translate": "Opcije prevođenja",
+ "translate-pref-editassistlang-help": "Spisak kodova jezika razdvojenih zarezom.\nPrijevod neke poruke na ovim jezicima prikazuje se dok prevodite.\nPretpostavljeni spisak jezika zavisi od Vašeg jezika.",
+ "translate-pref-editassistlang-bad": "Nevaljan kod jezika u spisku:\n<nowiki>$1</nowiki>.",
+ "right-translate": "Uređivanje korištenjem prevodilačkog interfejsa",
+ "right-translate-manage": "Upravljanje grupama poruka",
+ "right-translate-import": "Uvoz vanmrežnih prijevoda",
+ "translate-rc-translation-filter": "Izdvoji prevode:",
+ "translate-rc-translation-filter-no": "Ne čini ništa",
+ "translate-rc-translation-filter-only": "Prikaži samo prijevode",
+ "translate-rc-translation-filter-filter": "Ne prikazuj prijevode",
+ "translate-rc-translation-filter-site": "Promjene samo na porukama sajta",
+ "translationstats": "Statistike prijevoda",
+ "translate-stats-edits": "uređivanja",
+ "translate-stats-users": "Prevodioci",
+ "translate-stats-registrations": "Registracije",
+ "translate-statsf-intro": "Možete generisati jednostavnu statistiku uz pomoć ovog obrasca. Sve vrijednosti imaju gornja i donja ograničenja.",
+ "translate-statsf-options": "Postavke grafikona",
+ "translate-statsf-width": "Širina u pikselima:",
+ "translate-statsf-height": "Visina u pikselima:",
+ "translate-statsf-days": "Vremenski period u danima:",
+ "translate-statsf-start": "Početni datum:",
+ "translate-statsf-scale": "Granularnost:",
+ "translate-statsf-scale-months": "Mjeseci",
+ "translate-statsf-scale-weeks": "Sedmice",
+ "translate-statsf-scale-days": "dani",
+ "translate-statsf-scale-hours": "sati",
+ "translate-statsf-count": "Mjerenje:",
+ "translate-statsf-count-edits": "Broj izmjena",
+ "translate-statsf-count-users": "Aktivni prevodioci",
+ "translate-statsf-count-registrations": "Novi korisnici",
+ "translate-statsf-language": "Spisak jezičnih kodova razdvojenih zarezom:",
+ "translate-statsf-group": "Spisak kodova grupa razdvojenih zarezima:",
+ "translate-statsf-submit": "Pregled",
+ "translate-tag-category": "Stranice koje se mogu prevesti",
+ "translate-tag-page-desc": "Prijevod wiki stranice [[$2|$1]].",
+ "translate-sidebar-alltrans": "Na drugim jezicima",
+ "translations": "Svi prijevodi",
+ "translations-summary": "Unesite naziv poruke ispod da bi prikazali sve dostupne prijevode.",
+ "translate-translations-no-message": "\"$1\" je poruka koja se ne može prevoditi",
+ "translate-translations-none": "Ne postoje prijevodi za \"$1\"",
+ "translate-translations-count": "{{PLURAL:$1|Pronađen jedan prijevod|Pronađeno $1 prijevoda}}.",
+ "translate-translations-fieldset-title": "Poruka",
+ "translate-translations-messagename": "Naziv:",
+ "translate-translations-project": "Projekt:",
+ "translate-translations-including-no-param": "Molimo odredite validni ključ poruke u parametru podstranice",
+ "translate-translations-history-short": "h",
+ "languagestats": "Statistike jezika",
+ "languagestats-summary": "Ova stranica prikazuje statistike prijevoda za sve grupe poruka na određenom jeziku.",
+ "languagestats-stats-for": "Statistike prevoda za $1 ($2).",
+ "languagestats-recenttranslations": "nedavni prijevodi",
+ "translate-langstats-expand": "proširi",
+ "translate-langstats-collapse": "sakrij",
+ "translate-langstats-expandall": "raširi sve",
+ "translate-langstats-collapseall": "sakrij sve",
+ "translate-language-code": "Kod jezika",
+ "translate-language-code-field-name": "Kod jezika:",
+ "translate-suppress-complete": "Sakrij potpuno prevedene grupe poruka",
+ "translate-language": "Jezik",
+ "translate-total": "Poruke",
+ "translate-untranslated": "Neprevedeno",
+ "translate-percentage-complete": "Završeno",
+ "translate-percentage-fuzzy": "Zastarijelo",
+ "translate-languagestats-overall": "Sve grupe poruka zajedno",
+ "translate-mgs-column-language": "Jezik",
+ "supportedlanguages": "Podržani jezici",
+ "supportedlanguages-summary": "Ova stranica prikazuje spisak svih jezika podržanih na {{SITENAME}}, zajedno sa imenima prevodioca koji rade na tom jeziku.\nAko želite više podataka o pojedinom jeziku, možete kliknuti na link portala tog jezika.\nKlikom na ime prevodioca će vas odvesti na korisničku stranicu tog prevodioca.\n\nAko jezik nije naveden, možete potražiti kako možete početi lokalizacijski projekat za taj jezik putem stranice \"[[Translating:Process|Novi Jezik]]\".\n\nAko prevodite na određeni jezik, a vaše ime nije prikazano, molimo dodajte vaše ime na spisak prevodioca na [[:Category:Languages|portal]] za taj jezik.\nPogledajte traku menija za link na portal za jezik koji ste naveli u svojim postavkama.",
+ "supportedlanguages-translators": "{{PLURAL:$2|Prevodioc|Prevodioci}}: $1",
+ "supportedlanguages-recenttranslations": "nedavni prijevodi",
+ "supportedlanguages-count": "$1 {{PLURAL:$1|jezik|jezika}} ukupno.",
+ "supportedlanguages-activity": "$1: $2 {{PLURAL:$2|izmjena|izmjene}} - posljednja izmjena prije $3 {{PLURAL:$3|dan|dana}}",
+ "translate-save": "Spremi ($1)",
+ "translate-jssti-add": "Dodaj na spisak",
+ "managemessagegroups": "Upravljanje grupama poruka",
+ "translate-manage-import-diff": "Poruka $1 | Akcije: $2",
+ "translate-manage-import-new": "Nova poruka $1",
+ "translate-manage-import-deleted": "Obrisana poruka $1",
+ "translate-manage-action-import": "Uvezi",
+ "translate-manage-action-conflict": "Uvezi i označi za provjeru",
+ "translate-manage-action-ignore": "Zanemeri",
+ "translate-manage-action-fuzzy": "Uvezi prijevode i označi ih za provjeru",
+ "translate-manage-nochanges": "Nema promjena u definicijama poruka u ovoj grupi.",
+ "translate-manage-nochanges-other": "Nema promjena za ovaj jezik.\nUpotrijebite link ispod za povratak na pregled detalja grupe.",
+ "translate-manage-inconsistent": "Otkrivene nedoslijednosti u zahtjevu.\nMolimo provjerite promjene i pokušajte opet.\nDetalji: $1.",
+ "translate-manage-toolong": "Isteklo je maksimalno vrijeme za obradu od $1 {{PLURAL:$1|sekunde|sekunde|sekundi}}.\nMolimo ponovo pošaljite obrazac za nastavak obrade.",
+ "translate-manage-import-summary": "Uvozim novu verziju iz vanjskog izvora",
+ "translate-manage-conflict-summary": "Uvozi se nova verzija iz vanjskog izvora. Molimo provjerite.",
+ "translate-manage-fuzzy-summary": "Definicija je izmijenjena",
+ "translate-manage-submit": "Izvrši",
+ "translate-manage-intro-other": "Ispod je spisak izmjena na prevodima na $1 jeziku.\nMolimo provjerite izmjene i izaberite akciju koju želite da uradite za svaki prevod.\nAko odaberete da zanemarite izmjene, one će biti prepisane pri slijedećem izvozu.",
+ "translate-manage-import-ok": "Uvezena nova verzija stranice $1.",
+ "translate-manage-import-done": "Sve završeno!",
+ "importtranslations": "Uvoz prijevoda",
+ "translate-import-from-local": "Postavljanje lokalne datoteke:",
+ "translate-import-load": "Učitaj datoteku",
+ "translate-import-err-dl-failed": "Nije moguće uvesti datoteku:\n$1",
+ "translate-import-err-ul-failed": "Postavljanje datoteke nije uspjelo",
+ "translate-import-err-invalid-title": "Navedeno ime datoteke <nowiki>$1</nowiki> je bilo nevaljano.",
+ "translate-import-err-no-such-file": "Datoteka <nowiki>$1</nowiki> ne postoji ili nije postavljena lokalno.",
+ "translate-import-err-stale-group": "Grupa poruka kojoj ova datoteka pripada ne postoji.",
+ "translate-import-err-no-headers": "Datoteka nije dobro formiran Gettext datoteka u formatu proširenja Translate:\nNe mogu da odredim grupu i jezik iz zaglavlja datoteke.",
+ "translate-import-err-warnings": "Datoteka nije dobro formirana.\nProvjerite da li je Vaš uređivač uklonio msgctxt polja.\nDetalji: $1",
+ "translate-js-summary": "Sažetak:",
+ "translate-js-save": "Sačuvaj",
+ "translate-js-next": "Spremi i idi na slijedeću",
+ "translate-js-nonext": "Ovo je bila posljednja poruka na ovoj stranici.",
+ "translate-js-skip": "Preskoči na slijedeću",
+ "translate-js-save-failed": "Spremanje nije uspjelo. Molimo prijavite ovu grešku.",
+ "translate-js-history": "Historija prevoda",
+ "translate-js-support": "Postavi pitanje",
+ "translate-js-support-title": "Traži pomoć ako nema dovoljno informacija za pravilan prevod ove poruke.",
+ "translate-gs-pos": "Mj.",
+ "translate-gs-code": "Kôd",
+ "translate-gs-continent": "Kontinent",
+ "translate-gs-speakers": "Govornici",
+ "translate-gs-score": "Rezultat",
+ "translate-gs-multiple": "Više",
+ "translate-gs-count": "Broj",
+ "translate-gs-total": "Ukupno",
+ "translate-gs-avgscore": "Prosj. rezultat",
+ "translate-documentation-language": "Dokumentacija poruke",
+ "translate-searchprofile": "Prijevodi",
+ "translate-searchprofile-tooltip": "Traženje iz svih prevoda",
+ "translate-search-languagefilter": "Filtriranje po jeziku:",
+ "translate-search-nofilter": "Bez filtriranja",
+ "translate-messagereview-submit": "Označi provjereno",
+ "translate-messagereview-done": "Provjereno",
+ "translate-stats-workflow": "Stanje",
+ "translate-gethelp": "Pomoć",
+ "translate-msggroupselector-projects": "Grupa poruka",
+ "translate-msggroupselector-search-all": "Sve",
+ "translate-msggroupselector-search-recent": "Nedavne",
+ "tux-languageselector": "Prijevod na",
+ "tux-tab-all": "Sve",
+ "tux-tab-untranslated": "Neprevedeno",
+ "tux-tab-outdated": "Zastarjelo",
+ "tux-tab-translated": "Prevedeno",
+ "tux-tab-unproofread": "Nepotvrđeno",
+ "tux-edit": "Uredi",
+ "tux-status-optional": "Opcionalno",
+ "tux-status-fuzzy": "Zastarjelo",
+ "tux-status-proofread": "Provjereno",
+ "tux-status-translated": "Prevedeno",
+ "tux-status-unsaved": "Nesačuvano",
+ "tux-editor-placeholder": "Vaš prijevod",
+ "tux-editor-save-button-label": "Sačuvaj prijevod",
+ "tux-editor-skip-button-label": "Preskoči na slijedeću",
+ "tux-editor-cancel-button-label": "Odustani",
+ "tux-editor-confirm-button-label": "Potvrdi prijevod",
+ "tux-editor-edit-desc": "Uredi dokumentaciju",
+ "tux-editor-add-desc": "Dodaj dokumentaciju",
+ "tux-editor-suggestions-title": "Prijedlozi",
+ "tux-editor-in-other-languages": "Na drugim jezicima",
+ "tux-warnings-hide": "sakrij",
+ "tux-editor-n-uses": "korišćeno $1 {{PLURAL:$1|put|puta}}",
+ "tux-editor-message-desc-more": "Prikaži još",
+ "tux-editor-message-desc-less": "Prikaži manje",
+ "tux-editor-proofreading-mode": "Provjeri",
+ "tux-editor-translate-mode": "Spisak",
+ "tux-proofread-action-tooltip": "Označi kao provjereno",
+ "tux-proofread-edit-label": "Uredi",
+ "tux-editor-page-mode": "Stranica",
+ "tux-editor-outdated-warning-diff-link": "Pokaži razlike",
+ "tux-editor-doc-editor-placeholder": "Dokumentacija poruke",
+ "tux-editor-doc-editor-save": "Sačuvaj dokumentaciju",
+ "tux-editor-doc-editor-cancel": "Otkaži",
+ "tux-message-filter-advanced-button": "Napredna pretraga",
+ "tux-empty-nothing-new-to-proofread": "Ništa novo za provjeru",
+ "tux-editor-close-tooltip": "Zatvori",
+ "tux-editor-expand-tooltip": "Proširi",
+ "tux-editor-collapse-tooltip": "Sklopi",
+ "tux-editor-message-tools-history": "Historija",
+ "tux-editor-message-tools-translations": "Svi prijevodi",
+ "tux-editor-loading": "Učitavanje...",
+ "translate-statsbar-tooltip": "$1% prevedeno, $2% pregledano",
+ "translate-statsbar-tooltip-with-fuzzy": "‎$1% prevedeno, $2% pregledano, $3% zastareno"
+}
diff --git a/MLEB/Translate/i18n/core/bug.json b/MLEB/Translate/i18n/core/bug.json
new file mode 100644
index 00000000..c4c025ab
--- /dev/null
+++ b/MLEB/Translate/i18n/core/bug.json
@@ -0,0 +1,14 @@
+{
+ "@metadata": {
+ "authors": [
+ "Kurniasan"
+ ]
+ },
+ "translate": "Tare'juma",
+ "translate-submit": "Ala",
+ "translate-page-edit": "padeccéŋ",
+ "translate-edit-no-information": "''Iyyedé méséjeë degaga dokuméntasina. Rékko idi isseŋi kotégaï na pakogaï ripaké, weddiŋi idi maŋinriŋ patare'juma laiŋë menambahkan dokumentasina.''",
+ "translate-edit-information": "Informasina iyyéde leppa ($1)",
+ "translate-magic-cm-save": "Taro",
+ "translate-statsf-submit": "Pribiu"
+}
diff --git a/MLEB/Translate/i18n/core/bxr.json b/MLEB/Translate/i18n/core/bxr.json
new file mode 100644
index 00000000..f6877ca4
--- /dev/null
+++ b/MLEB/Translate/i18n/core/bxr.json
@@ -0,0 +1,9 @@
+{
+ "@metadata": {
+ "authors": [
+ "ОйЛ"
+ ]
+ },
+ "translate-page-language": "Хэлэн",
+ "translate-language": "Хэлэн"
+}
diff --git a/MLEB/Translate/i18n/core/ca.json b/MLEB/Translate/i18n/core/ca.json
new file mode 100644
index 00000000..74d7334a
--- /dev/null
+++ b/MLEB/Translate/i18n/core/ca.json
@@ -0,0 +1,386 @@
+{
+ "@metadata": {
+ "authors": [
+ "Aleator",
+ "Fitoschido",
+ "Jordi Roqué",
+ "Paucabot",
+ "Pginer",
+ "QuimGil",
+ "SMP",
+ "Sanbec",
+ "Ssola",
+ "Toniher",
+ "Vriullop",
+ "XVEC",
+ "පසිඳු කාවින්ද"
+ ]
+ },
+ "translate": "Tradueix",
+ "translate-desc": "[[Special:Translate|Pàgina especial]] per a traduir el MediaWiki i altres coses",
+ "translate-taskui-view": "Mostra tots els missatges",
+ "translate-taskui-untranslated": "Mostra missatges per traduir",
+ "translate-taskui-optional": "Mostra missatges opcionals",
+ "translate-taskui-acceptqueue": "Només els missatges que pugui marcar com a revisats",
+ "translate-taskui-reviewall": "Revisa totes les traduccions",
+ "translate-taskui-export-to-file": "Exporta a format natiu",
+ "translate-taskui-export-as-po": "Exporta-ho per traduir-ho fora de línia",
+ "translate-taction-translate": "Tradueix",
+ "translate-taction-proofread": "Revisa",
+ "translate-taction-lstats": "Estadístiques de l'idioma",
+ "translate-taction-mstats": "Estadístiques del grup de missatges",
+ "translate-taction-export": "Exporta",
+ "translate-taction-disabled": "Aquesta acció està desactivada a aquest wiki.",
+ "translate-page-no-such-language": "L'idioma especificat no és vàlid.",
+ "translate-page-no-such-group": "El grup especificat no és vàlid.",
+ "translate-page-disabled": "Les traduccions a aquest idioma en aquest grup han estat suspeses. Motiu:\n\n<em>$1</em>",
+ "translate-language-disabled": "La traducció a aquest idioma està desactivada.",
+ "translate-page-settings-legend": "Preferències",
+ "translate-page-group": "Grup",
+ "translate-page-language": "Idioma",
+ "translate-page-limit": "Límit",
+ "translate-page-limit-option": "$1 {{PLURAL:$1|missatge|missatges}} per pàgina",
+ "translate-submit": "Mostra",
+ "translate-page-navigation-legend": "Navegació",
+ "translate-page-showing": "S'estan mostrant missatges del $1 al $2 de $3.",
+ "translate-page-showing-all": "S'estan mostrant $1 {{PLURAL:$1|missatge|missatges}}.",
+ "translate-page-showing-none": "No hi ha missatges a mostrar.",
+ "translate-next": "Pàgina següent",
+ "translate-prev": "Pàgina anterior",
+ "translate-page-description-legend": "Informació del grup",
+ "translate-page-description-hasoptional": "Aquest grup de missatges conté missatges adicionals.\nEls missatges opcionals només s'han de traduir quan el vostre idioma tingui requeriments especials\ncom ara no fer servir espais o transliterant noms propis. $1",
+ "translate-page-description-hasoptional-open": "Mostra els missatges opcionals.",
+ "translate-page-edit": "modifica",
+ "translate-ext-url": "<hr />Lloc web: $1",
+ "translate-optional": "(opcional)",
+ "translate-ignored": "(ignorat)",
+ "translate-edit-title": "Edita «$1»",
+ "translate-edit-definition": "Definició del missatge",
+ "translate-edit-translation": "Traducció",
+ "translate-edit-contribute": "contribuïu-hi",
+ "translate-edit-no-information": "''Aquest missatge no té documentació. Si sabeu on o com és usat aquest missatge podeu ajudar la resta de traductors afegint-hi la documentació.''",
+ "translate-edit-information": "Informació sobre el missatge ($1)",
+ "translate-edit-in-other-languages": "El missatge en altres idiomes",
+ "translate-edit-committed": "Traducció utilitzada actualment pel programa",
+ "translate-edit-warnings": "Avisos de traducció incompleta",
+ "translate-edit-tmsugs": "Suggeriments de la memòria de traducció",
+ "translate-edit-tmmatch-source": "Text original de la traducció: $1",
+ "translate-edit-tmmatch": "coincidència del $1%",
+ "translate-use-suggestion": "Substitueixi la traducció actual amb aquest suggeriment.",
+ "translate-edit-nopermission": "Necessiteu permís per traduir missatges.",
+ "translate-edit-askpermission": "Demana permís",
+ "translate-magic-pagename": "Traducció ampliada del MediaWiki",
+ "translate-magic-help": "Aquí podeu traduir els àlies de les pàgines especials, les paraules màgiques i els títols dels diferents espais de noms (''namespaces'').\n\nEls àlies de les pàgines especials i les paraules màgiques poden tenir múltiples traduccions. Separeu-les per una coma (,). Els espais de noms només poden tenir una traducció.\n\nDins les traduccions dels espais de noms, la <code>$1 talk</code> és especial. <code>$1</code> es substitueix pel nom del projecte (per exemple <code>{{ns:project_talk}}</code>). Si no és possible fer-ho així en el vostre idioma sense canviar la forma gramatical del nom del projecte, siusplau contacteu amb nosaltres: [[Support]].\n\nHeu de tenir permisos de traductor per a desar els canvis, que no es guardaran fins que no cliqueu el botó corresponent.",
+ "translate-magic-module": "Mòdul:",
+ "translate-magic-submit": "Mostra",
+ "translate-magic-cm-export": "Exporta",
+ "translate-magic-nothing-to-export": "No hi ha res per exportar.",
+ "translate-magic-cm-to-be": "Serà",
+ "translate-magic-cm-current": "Actual",
+ "translate-magic-cm-original": "Original",
+ "translate-magic-cm-comment": "Comentari:",
+ "translate-magic-cm-save": "Desa",
+ "translate-magic-cm-updatedusing": "Actualitzat amb [[Special:AdvancedTranslate|{{int:Translate-magic-pagename}}]]",
+ "translate-magic-cm-savefailed": "Error al desar",
+ "translate-magic-special": "Noms de les pàgines especials",
+ "translate-magic-words": "Paraules màgiques",
+ "translate-magic-namespace": "Noms dels espais de noms",
+ "translate-magic-notsaved": "No s'ha desat la modificació!",
+ "translate-magic-errors": "Al que arregleu {{PLURAL:$1|el següent error|els següents errors}} a les traduccions:",
+ "translate-magic-saved": "Els vostres canvis s'han desat amb èxit.",
+ "translate-checks-parameters": "{{PLURAL:$2|El paràmetre següent no s'està|Els paràmetres següents no s'estan}} usant:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-parameters-unknown": "{{PLURAL:$2|El paràmetre següent és desconegut|Els paràmetres següent són desconeguts}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-balance": "Hi ha un nombre senar de {{PLURAL:$2|parèntesis, claus i/o claudàtors|parèntesis, claus i/o claudàtors}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links": "{{PLURAL:$2|L'enllaç següent és problemàtic|Els enllaços següents són problemàtics}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links-missing": "No hi ha {{PLURAL:$2|l'enllaç següent|els següents $2 enllaços}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-xhtml": "{{PLURAL:$2|Reemplaceu l'etiqueta següent per la correcta|Reemplaceu les etiquetes següents per les correctes}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-plural": "La definició utilitza <nowiki>{{PLURAL:}}</nowiki> i en canvi la traducció no.",
+ "translate-checks-plural-forms": "<nowiki>{{PLURAL:}}</nowiki> es va donar {{PLURAL:$1|una forma|$1 formes}} però {{PLURAL:$2|només una forma és|$2 formes són}} compatible/s (excloent les formes 0= i 1=)",
+ "translate-checks-pagename": "S'ha canviat l'espai de noms (''namespace'') de la definició",
+ "translate-checks-format": "Aquesta traducció no segueix la definició o té una sintaxi invàlida: $1",
+ "translate-checks-escape": "Les següents seqüències d'escapament poden ser accidentals: <strong>$1</strong>",
+ "translate-checks-parametersnotequal": "El compte de paràmetres és {{PLURAL:$1|$1}}; hauria de ser{{PLURAL:$2|$2}}.",
+ "translate-checks-malformed": "<nowiki>$1</nowiki> té un format incorrecte.",
+ "translate-checks-fudforum-syntax": "Feu servir <nowiki>$1</nowiki> en comptes de <nowiki>$2</nowiki> en aquest projecte.",
+ "translate-pref-nonewsletter": "No m’enviïs per correu electrònic el recull de notícies",
+ "translate-pref-editassistlang": "Idiomes d'ajuda:",
+ "prefs-translate": "Opcions de traducció",
+ "translate-pref-editassistlang-help": "Llista separada per comes dels codis dels idiomes que vulgueu utilitzar. Quan traduïu un missatge podreu veure les seves traduccions a aquests idiomes. La llista d'idiomes per defecte depèn del vostre idioma.",
+ "translate-pref-editassistlang-bad": "Codi d'idioma incorrecte a la llista:\n<nowiki>$1</nowiki>.",
+ "right-translate": "Editar fent servir la interfície de traducció",
+ "right-translate-manage": "Gestiona els grups de missatge",
+ "action-translate-manage": "Gestiona els grups de missatges",
+ "right-translate-import": "Importar traduccions fora de línia",
+ "action-translate-import": "importa les traduccions fetes fora de línia",
+ "right-translate-messagereview": "Revisa les traduccions",
+ "right-translate-groupreview": "Canvia l'estat del flux de treball dels grups de missatges",
+ "translate-rc-translation-filter": "Filtra traduccions:",
+ "translate-rc-translation-filter-no": "No facis res",
+ "translate-rc-translation-filter-only": "Mostra només traduccions",
+ "translate-rc-translation-filter-filter": "No mostris traduccions",
+ "translate-rc-translation-filter-site": "Només canvis als missatges d'aquest lloc",
+ "translationstats": "Estadístiques de traducció",
+ "translate-stats-edits": "Edicions",
+ "translate-stats-users": "Traductors",
+ "translate-stats-registrations": "Registres",
+ "translate-stats-reviews": "Revisions",
+ "translate-stats-reviewers": "Revisors",
+ "translate-statsf-intro": "Podeu generar estadístiques simples amb aquest formulari. Tots els valors tenen límit superior i inferior.",
+ "translate-statsf-options": "Opcions del gràfic",
+ "translate-statsf-width": "Amplada en píxels:",
+ "translate-statsf-height": "Alçada en píxels:",
+ "translate-statsf-days": "Data d'inici:",
+ "translate-statsf-start": "Data d'inici:",
+ "translate-statsf-scale": "Granulació:",
+ "translate-statsf-scale-months": "Mesos",
+ "translate-statsf-scale-weeks": "Setmanes",
+ "translate-statsf-scale-days": "Dies",
+ "translate-statsf-scale-hours": "Hores",
+ "translate-statsf-count": "Mesura:",
+ "translate-statsf-count-edits": "Nombre d'edicions",
+ "translate-statsf-count-users": "Traductors actius",
+ "translate-statsf-count-registrations": "Usuaris nous",
+ "translate-statsf-count-reviews": "Revisions de traducció",
+ "translate-statsf-count-reviewers": "Revisors",
+ "translate-statsf-language": "Codis d'idiomes separats per comes:",
+ "translate-statsf-group": "Codis de grups separats per comes:",
+ "translate-statsf-submit": "Previsualització",
+ "translate-tag-category": "Pàgines traduïbles",
+ "translate-tag-page-desc": "Traducció de la pàgina wiki [[$2|$1]].",
+ "translate-sidebar-alltrans": "En altres idiomes",
+ "translations": "Totes les traduccions",
+ "translations-summary": "Entreu a continuació un nom de missatge per a mostrar-ne totes les traduccions disponibles.",
+ "translate-translations-no-message": "«$1» no és un missatge a traduir.",
+ "translate-translations-none": "No hi ha traduccions per a «$1»",
+ "translate-translations-count": "{{PLURAL:$1|S'ha trobat una traducció|S'han trobat $1 traduccions}}.",
+ "translate-translations-fieldset-title": "Missatge",
+ "translate-translations-messagename": "Nom:",
+ "translate-translations-project": "Projecte:",
+ "translate-translations-including-no-param": "Especifiqueu una clau de missatge vàlida en el paràmetre de subpàgina",
+ "translate-translations-history-short": "h",
+ "languagestats": "Estadístiques de l'idioma",
+ "languagestats-summary": "Aquesta pàgina mostra les estadístiques de traducció per a tots els grups de missatges de cada idioma.",
+ "languagestats-stats-for": "Estadístiques de traducció per a l'idioma $1 ($2)",
+ "languagestats-recenttranslations": "traduccions recents",
+ "translate-langstats-incomplete": "Algunes de les estadístiques d'aquesta pàgina són incompletes. Recarregueu-la per a obtenir-ne més.",
+ "translate-langstats-expand": "amplia",
+ "translate-langstats-collapse": "tanca",
+ "translate-langstats-expandall": "amplia'ls tots",
+ "translate-langstats-collapseall": "amaga'ls tots",
+ "translate-language-code": "Codi de l'idioma",
+ "translate-language-code-field-name": "Codi d'idioma:",
+ "translate-suppress-complete": "Oculta els missatges de grups completament traduïts",
+ "translate-ls-noempty": "Oculta els missatges de grups totalment sense traduir",
+ "translate-language": "Idioma",
+ "translate-total": "Missatges",
+ "translate-untranslated": "Sense traduir",
+ "translate-percentage-complete": "Completesa",
+ "translate-percentage-fuzzy": "Desfasats",
+ "translate-languagestats-overall": "Tots els grups de missatges junts",
+ "translate-ls-submit": "Mostra les estadístiques",
+ "translate-ls-column-group": "Grup de missatges",
+ "translate-mgs-pagename": "Estadístiques del grup de missatges",
+ "translate-mgs-fieldset": "Mostra les preferències",
+ "translate-mgs-group": "Grup de missatges:",
+ "translate-mgs-nocomplete": "No mostris els idiomes amb una traducció completa",
+ "translate-mgs-noempty": "No mostris els idiomes que no tenen cap traducció",
+ "translate-mgs-submit": "Mostra les estadístiques",
+ "translate-mgs-column-language": "Idioma",
+ "translate-mgs-totals": "Tots els idiomes junts",
+ "translate-mgs-invalid-group": "El grup $1 especificat no existeix.",
+ "translate-mgs-nothing": "Res a mostrar per l'estadística soŀlicitada.",
+ "supportedlanguages": "Idiomes compatibles",
+ "supportedlanguages-summary": "Aquesta pàgina mostra una llista de tots els idiomes que es poden utilitzar a {{SITENAME}} juntament amb els noms dels traductors que treballen en cadascun d'ells.\nEl nom del traductor apareix més gran com més traduccions hagi contribuït a fer.\nEl color del subratllat indica si el traductor ha estat actiu recentment.",
+ "supportedlanguages-colorlegend": "Llegenda per al color: La darrera traducció va ser fa $1 dies.",
+ "supportedlanguages-translators": "{{PLURAL:$2|Traductor|Traductors}}: $1",
+ "supportedlanguages-recenttranslations": "traduccions recents",
+ "supportedlanguages-count": "$1 {{PLURAL:$1|idioma|idiomes}} en total.",
+ "supportedlanguages-activity": "$1: $2 {{PLURAL:$2|modificació|modificacions}}, la darrera va ser fa $3 {{PLURAL:$3|dia|dies}}",
+ "translate-save": "Desa ($1)",
+ "translate-jssti-add": "Afegeix a la llista",
+ "managemessagegroups": "Gestió del grup de missatges",
+ "translate-smg-notallowed": "No teniu permís per dur a terme aquesta acció.",
+ "translate-smg-nochanges": "No hi han canvis a processar.",
+ "translate-smg-submit": "Penja els canvis per al seu processament",
+ "translate-smg-submitted": "Les definicions dels missatges s'han actualitzat. Els canvis estàn sent processats al rerefons.",
+ "translate-smg-left": "Contingut del missatge al wiki",
+ "translate-smg-right": "Canvis entrants",
+ "translate-manage-import-diff": "Missatge $1 | Accions: $2",
+ "translate-manage-import-new": "Nou missatge $1",
+ "translate-manage-import-deleted": "Missatge eliminat $1",
+ "translate-manage-action-import": "Importa",
+ "translate-manage-action-conflict": "Importar i marcar per revisar",
+ "translate-manage-action-ignore": "Ignora",
+ "translate-manage-action-fuzzy": "Importa i marca per revisar les traduccions",
+ "translate-manage-nochanges": "No hi ha canvis en les definicions dels missatges per a aquest grup.",
+ "translate-manage-nochanges-other": "No hi han canvis en aquest idioma.\n\nUtilitzeu l'enllaç de sota per tornar als detalls del grup.",
+ "translate-manage-inconsistent": "Detectada una inconsistència en la \nsol· licitud.\nSiusplau comproveu els canvis i proveu-ho una altra vegada.\nDetalls: $1 .",
+ "translate-manage-toolong": "El temps màxim de processament de $1 s'ha excedit {{PLURAL:$1|segon|segons}} \nSiusplau reintroduiu el formulari per continuar el processament.",
+ "translate-manage-import-summary": "Important una nova versió des d'una font externa",
+ "translate-manage-conflict-summary": "Important una nova versió des d'una font externa.\nSiusplau, comproveu-ho.",
+ "translate-manage-fuzzy-summary": "La definició del missatge ha canviat",
+ "translate-manage-submit": "Executa",
+ "translate-manage-import-done": "Fet!",
+ "importtranslations": "Importa traduccions",
+ "translate-import-from-local": "Càrrega de fitxer local:",
+ "translate-import-load": "Carrega fitxer",
+ "translate-import-err-dl-failed": "No s'ha pogut obtenir el fitxer:\n$1",
+ "translate-import-err-ul-failed": "La càrrega del fitxer no s'ha completat",
+ "translate-import-err-invalid-title": "El nom del fitxer <nowiki>$1</nowiki> no és vàlid.",
+ "translate-import-err-no-such-file": "El fitxer <nowiki>$1</nowiki>no existeix o no s'ha carregat localment.",
+ "translate-import-err-stale-group": "El grup de missatges al qual aquest fitxer pertany no existeix.",
+ "translate-import-err-no-headers": "El fitxer no és un arxiu Gettext ben formatejat en el format de l'extensió de traducció:\n\nImpossible determinar el grup de missatges i l'idioma des dels encapçalaments.",
+ "translate-import-err-warnings": "El fitxer no està correctament formatejat.\nAssegureu-vos que el vostre editor no elimini els camps msgctxt.\nDetalls: $1",
+ "translate-js-summary": "Resum:",
+ "translate-js-save": "Desa",
+ "translate-js-next": "Desa i passa al següent",
+ "translate-js-nonext": "Aquest era el darrer missatge d'aquesta pàgina.",
+ "translate-js-skip": "Salta al següent",
+ "translate-js-save-failed": "S’ha produït un error en desar. Informeu d’aquest error.",
+ "translate-js-history": "Historial de traducció",
+ "translate-js-support": "Feu una pregunta",
+ "translate-js-support-title": "Demaneu ajuda si trobeu que no hi ha prou informació per a traduir correctament aquest missatge.",
+ "translate-js-support-unsaved-warning": "Teniu traduccions no guardades.",
+ "translate-gs-pos": "Pos.",
+ "translate-gs-code": "Codi",
+ "translate-gs-continent": "Continent",
+ "translate-gs-speakers": "Parlants",
+ "translate-gs-score": "Puntuació",
+ "translate-gs-multiple": "Diversos",
+ "translate-gs-count": "Recompte",
+ "translate-gs-total": "Total",
+ "translate-gs-avgscore": "Puntuació mitjana",
+ "translate-documentation-language": "Documentació del missatge",
+ "translate-searchprofile": "Traduccions",
+ "translate-searchprofile-tooltip": "Cerca a totes les traduccions",
+ "translate-search-languagefilter": "Filtra per idioma:",
+ "translate-search-nofilter": "Sense filtrat",
+ "translate-messagereview-submit": "Marca-ho com a revisat",
+ "translate-messagereview-progress": "Marcant-ho com a revisat...",
+ "translate-messagereview-failure": "Error en marcar-ho com a revisat: $1",
+ "translate-messagereview-done": "Revisat",
+ "translate-messagereview-reviews": "Revisat per {{PLURAL:$1|un usuari|$1 usuaris}}",
+ "translate-messagereview-reviewswithyou": "Revisat per {{PLURAL:$1|tu|$1 usuaris, tu inclòs}}",
+ "api-error-invalidrevision": "No s'ha trobat la traducció",
+ "api-error-unknownmessage": "No s'ha trobat el missatge",
+ "api-error-fuzzymessage": "La traducció està marcada com a imprecisa",
+ "api-error-owntranslation": "No podeu marcar com a revisades les vostres pròpies traduccions",
+ "translate-messagereview-no-fuzzy": "Les traduccions imprecises no es poden marcar com a revisades.",
+ "translate-messagereview-no-own": "No podeu marcar com a revisades les vostres pròpies traduccions.",
+ "translate-messagereview-doit": "Marca aquesta traducció com a revisada.",
+ "log-name-translationreview": "Historial de revisió de la traducció",
+ "log-description-translationreview": "Historial de totes les revisions a les traduccions i als grups de missatges.",
+ "logentry-translationreview-message": "$1 {{GENDER:$2|ha acceptat}} la traducció $3",
+ "logentry-translationreview-group": "$1 {{GENDER:$2|ha canviat}} l'estat de $4 traduccions de $3 des de $6 fins a $7",
+ "group-translate-sandboxed": "Traduccions no aprovades",
+ "group-translate-sandboxed-member": "{{GENDER:$1|no ha aprovat una traducció}}",
+ "right-translate-sandboxmanage": "Administrar els usuaris en mode sandbox",
+ "action-translate-sandboxmanage": "administrar els usuaris en mode sandbox",
+ "right-translate-sandboxaction": "Executa les accions específiques per els usuaris amb mode sandbox.",
+ "action-translate-sandboxaction": "executa les accions específiques per els usuaris amb mode sandbox.",
+ "translate-workflow-state-": "(no especificat)",
+ "translate-workflowstatus": "Estat: $1",
+ "translate-workflow-set-do": "Especificar",
+ "translate-workflow-set-doing": "Especificant...",
+ "translate-workflow-set-done": "Especificat!",
+ "translate-workflow-set-error-alreadyset": "L'estat que demaneu és idèntic al estat actual.",
+ "translate-workflow-autocreated-summary": "Creació automàtica d'una pàgina per l'estat del flux de treball $1",
+ "translate-stats-workflow": "Estat",
+ "translate-workflowgroup-label": "Estats dels fluxs de treball",
+ "translate-dynagroup-recent-label": "Traduccions recents",
+ "translate-dynagroup-recent-desc": "Aquest grup de missatges mostra totes les traduccions recents a aquest idioma.\nEl més útil per a les tasques de revisió.",
+ "translate-dynagroup-additions-label": "Adicions recents",
+ "translate-dynagroup-additions-desc": "Aquest grup de missatges mostra els missatges nous i els que han estat canviats",
+ "translate-dynagroup-by": "Traduït per {{GENDER:$1|$1}}",
+ "translate-dynagroup-byc": "Traducció feta per {{GENDER:$1|$1}} ($2)",
+ "translate-dynagroup-last": "Últim canvi fet per {{GENDER:$1|$1}}",
+ "translate-dynagroup-lastc": "Últim canvi per {{GENDER:$1|$1}} ($2)",
+ "translate-gethelp": "Ajuda",
+ "translate-msggroupselector-projects": "Grup de missatges",
+ "translate-msggroupselector-search-placeholder": "Cerca als grups",
+ "translate-msggroupselector-search-all": "Tots",
+ "translate-msggroupselector-search-recent": "Recents",
+ "translate-msggroupselector-view-subprojects": "$1 {{PLURAL:$1|subgrup|subgrups}}",
+ "tux-languageselector": "Tradueix a",
+ "tux-tab-all": "Tots",
+ "tux-tab-untranslated": "Sense traduir",
+ "tux-tab-outdated": "Desfasat",
+ "tux-tab-translated": "Traduït",
+ "tux-tab-unproofread": "no revisat",
+ "tux-edit": "Edita",
+ "tux-status-optional": "Opcional",
+ "tux-status-fuzzy": "Desfasat",
+ "tux-status-proofread": "Revisat",
+ "tux-status-translated": "Traduït",
+ "tux-status-saving": "S’està desant…",
+ "tux-status-unsaved": "No desat",
+ "tux-editor-placeholder": "La vostra traducció",
+ "tux-editor-paste-original-button-label": "Enganxa el text original",
+ "tux-editor-discard-changes-button-label": "Descarta els canvis",
+ "tux-editor-save-button-label": "Desa la traducció",
+ "tux-editor-skip-button-label": "Vés al següent",
+ "tux-editor-cancel-button-label": "Cancel·la",
+ "tux-editor-confirm-button-label": "Confirma la traducció",
+ "tux-editor-shortcut-info": "Premeu «$1» per desar, «$2» per anar al següent missatge o bé «$3» per més dreceres.",
+ "tux-editor-edit-desc": "Edita la documentació",
+ "tux-editor-add-desc": "Afegiu documentació",
+ "tux-editor-suggestions-title": "Suggeriments",
+ "tux-editor-in-other-languages": "En altres idiomes",
+ "tux-editor-need-more-help": "Necessiteu més ajuda?",
+ "tux-editor-ask-help": "Demaneu més informació",
+ "tux-editor-tm-match": "coincidència del $1%",
+ "tux-warnings-more": "{{PLURAL:$1|$1 més}}",
+ "tux-warnings-hide": "amaga",
+ "tux-editor-save-failed": "Error en desar la traducció : $1",
+ "tux-editor-n-uses": "utilitzat $1 {{PLURAL:$1|vegada|vegades}}",
+ "tux-editor-message-desc-more": "Mostra'n més",
+ "tux-editor-message-desc-less": "Mostra'n menys",
+ "tux-editor-clear-translated": "Amaga els traduïts",
+ "tux-editor-proofreading-mode": "Revisió",
+ "tux-editor-translate-mode": "Llista",
+ "tux-editor-proofreading-hide-own-translations": "Amaga les meves traduccions",
+ "tux-editor-proofreading-show-own-translations": "Mostrar les meves traduccions",
+ "tux-proofread-action-tooltip": "Marca-ho com a revisat",
+ "tux-proofread-edit-label": "Edita-ho",
+ "tux-editor-page-mode": "Pàgina",
+ "tux-editor-outdated-warning": "Aquesta traducció potser necessita ser actualitzada.",
+ "tux-editor-outdated-warning-diff-link": "Mostra les diferències",
+ "tux-editor-doc-editor-placeholder": "Documetació del missatge",
+ "tux-editor-doc-editor-save": "Guarda la documentació",
+ "tux-editor-doc-editor-cancel": "Cancel·la",
+ "tux-messagetable-more-messages": "$1 {{PLURAL:$1|missatge|missatges}} més",
+ "tux-messagetable-loading-messages": "{{PLURAL:$1|S’està carregant el missatge|S’estan carregant els missatges}}…",
+ "tux-message-filter-placeholder": "Filtra la llista",
+ "tux-message-filter-result": "Hem trobat $1 {{PLURAL:$1|resultat|resultats}} per «$2»",
+ "tux-message-filter-advanced-button": "Cerca avançada",
+ "tux-message-filter-optional-messages-label": "Missatges opcionals",
+ "tux-proofread-translated-by-self": "Traduït per tu",
+ "tux-empty-list-all": "Aquest grup de missatges és buit",
+ "tux-empty-list-all-guide": "Seleccioneu un grup de missatges diferent per traduir",
+ "tux-translate-page-no-such-group": "\"El grup indicat no existeix\". Seleccioneu un grup de missatges diferent.",
+ "tux-empty-list-translated": "Missatges no traduïts",
+ "tux-empty-list-translated-guide": "Podeu ajudar a traduir",
+ "tux-empty-list-translated-action": "Tradueix",
+ "tux-empty-no-messages-to-display": "No hi ha missatges a mostrar.",
+ "tux-empty-there-are-optional": "Hi ha missatges opcionals que no es mostren a la llista",
+ "tux-empty-show-optional-messages": "Mostra els missatges opcionals",
+ "tux-empty-no-outdated-messages": "No hi han missatges desfasats",
+ "tux-empty-nothing-to-proofread": "Res a revisar",
+ "tux-empty-you-can-help-providing": "Podeu ajudar enviant noves traduccions",
+ "tux-empty-nothing-new-to-proofread": "Res nou a revisar",
+ "tux-empty-you-can-review-already-proofread": "Podeu revisar les traduccions revisades per altres.",
+ "tux-empty-list-other": "Res a traduir",
+ "tux-empty-list-other-guide": "Podeu ajudar revisant traduccions existents",
+ "tux-empty-list-other-action": "Revisa les traduccions",
+ "tux-empty-list-other-link": "Mostra tots els missatges",
+ "tux-editor-close-tooltip": "Tanca",
+ "tux-editor-expand-tooltip": "Amplia",
+ "tux-editor-collapse-tooltip": "Tanca",
+ "tux-editor-message-tools-history": "Historial",
+ "tux-editor-message-tools-translations": "Totes les traduccions",
+ "tux-editor-loading": "S'està carregant…",
+ "translate-search-more-languages-info": "$1 {{PLURAL:$1|idioma|idiomes}} més",
+ "translate-statsbar-tooltip": "$1% traduït, $2% revisat",
+ "translate-statsbar-tooltip-with-fuzzy": "$1% traduït, $2 % revisat, $3% desfasat",
+ "translate-search-more-groups-info": "$1 {{PLURAL:$1|grup|grups}} més"
+}
diff --git a/MLEB/Translate/i18n/core/cdo.json b/MLEB/Translate/i18n/core/cdo.json
new file mode 100644
index 00000000..68553864
--- /dev/null
+++ b/MLEB/Translate/i18n/core/cdo.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "唐吉訶德的侍從"
+ ]
+ },
+ "translate-pref-editassistlang-help": "使逗號來分隔語言代碼。敆汝翻譯其辰候,會同時顯示茲幾隻語言其訊息。 預設會使汝其語言。"
+}
diff --git a/MLEB/Translate/i18n/core/ce.json b/MLEB/Translate/i18n/core/ce.json
new file mode 100644
index 00000000..2916b859
--- /dev/null
+++ b/MLEB/Translate/i18n/core/ce.json
@@ -0,0 +1,278 @@
+{
+ "@metadata": {
+ "authors": [
+ "Sasan700",
+ "Умар"
+ ]
+ },
+ "translate": "Гоч",
+ "translate-desc": "[[Special:Translate|Белхан агӀо]] MediaWiki гочян а кхин программийн а",
+ "translate-taskui-view": "Гайта берриге хаамаш",
+ "translate-taskui-untranslated": "Гочбанза хаамаш гайта",
+ "translate-taskui-optional": "Кхин тӀе хаамаш гайта",
+ "translate-taskui-acceptqueue": "Со хьажаре хьоьжуш болу хаамаш бен",
+ "translate-taskui-reviewall": "Массо гочдиначарга хьажар",
+ "translate-taskui-export-to-file": "Шин форматехь экспорт",
+ "translate-taskui-export-as-po": "Оффлайн гочдаран экспорт",
+ "translate-taction-translate": "Гоч",
+ "translate-taction-proofread": "Хьажар",
+ "translate-taction-lstats": "Меттан статистика",
+ "translate-taction-mstats": "Тобанийн хаамийн статистика",
+ "translate-taction-disabled": "ХӀара дешдерг хӀокху вики чохь дӀадайана ду.",
+ "translate-page-no-such-language": "Меттан код нийса яц",
+ "translate-page-no-such-group": "Тоба нийса билгалйина яц.",
+ "translate-page-disabled": "ХӀокху декъан чохь хӀокху меттан гочдарш дӀадайана ду. Бахьна:\n\n<em>$1</em>",
+ "translate-language-disabled": "ХӀокху матте гоч ян йиш дӀаяйина.",
+ "translate-page-settings-legend": "Параметраш",
+ "translate-page-group": "Тоба",
+ "translate-page-language": "Мотт",
+ "translate-page-limit": "Доза тохар",
+ "translate-page-limit-option": "$1 {{PLURAL:$1|хаам}} агӀона",
+ "translate-submit": "Арайаккха",
+ "translate-page-navigation-legend": "Навигаци",
+ "translate-page-showing": "Гайтина хаамаш $1 тӀера $2 кхаччалц ($3 чура).",
+ "translate-page-showing-all": "Ара баьккхина $1 {{PLURAL:$1|хаам}}.",
+ "translate-page-showing-none": "Гайта хаамаш бац.",
+ "translate-next": "тӀаьхьа йогӀу агӀо",
+ "translate-prev": "← хьалхара агӀо",
+ "translate-page-description-legend": "Тобанах хаам",
+ "translate-page-description-hasoptional-open": "Кхин тӀе хаамаш гайта.",
+ "translate-page-edit": "Нисъе",
+ "translate-optional": "(тӀехь дац)",
+ "translate-ignored": "(игнорирян)",
+ "translate-edit-title": "Хийца «$1»",
+ "translate-edit-definition": "Хаам кепе балор",
+ "translate-edit-translation": "Гоч",
+ "translate-edit-contribute": "нисъе",
+ "translate-edit-information": "Хаамах лаьцна ($1)",
+ "translate-edit-in-other-languages": "Хаам кхечу меттанашкахь",
+ "translate-edit-committed": "Программан карара гоч",
+ "translate-edit-warnings": "ДӀахаийтар кхочуш гоч йин ца хилар",
+ "translate-edit-tmsugs": "ДогӀуш хила там болу гочдар кховдор",
+ "translate-edit-tmmatch": "$1% цхьаьнадогӀуш",
+ "translate-edit-askpermission": "Бакъо яккха",
+ "translate-magic-pagename": "Къоргера MediaWiki гочяр",
+ "translate-magic-submit": "Арайаккха",
+ "translate-magic-cm-export": "Вахьайахка",
+ "translate-magic-nothing-to-export": "ХӀума цаоьшу экспорт ян.",
+ "translate-magic-cm-to-be": "Хийла еза",
+ "translate-magic-cm-current": "ХӀинцлера",
+ "translate-magic-cm-original": "ДӀайолалун",
+ "translate-magic-cm-comment": "Билгалдаккхар:",
+ "translate-magic-cm-save": "Ӏалашдан",
+ "translate-magic-cm-savefailed": "Ӏалаш ян цаелира",
+ "translate-magic-special": "Белхан агӀонийн псевдонимаш",
+ "translate-magic-words": "Бозбуунчаллин дешнаш",
+ "translate-magic-namespace": "ЦӀерийн ана",
+ "translate-magic-notsaved": "Хьан нисдар дӏайазъдина дац!",
+ "translate-magic-saved": "Хийцамаш кхиамца Ӏалашбина.",
+ "translate-checks-parameters": "{{PLURAL:$2|1=Параметр лелош яц|Параметраш лелош яц}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-parameters-unknown": "{{PLURAL:$2|1=Евзаш йоцу параметр|Евзаш йоцу параметраш}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-balance": "Елла а дӀакъовла а {{PLURAL:$2|къовларш}} нийса яц:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links-missing": "{{PLURAL:$2|$2 хьажораг яц|$2 хьажоргаш яц}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-plural": "Оригинал чохь лелош ю <nowiki>{{PLURAL:}}</nowiki>, кхузахь — яц.",
+ "translate-checks-plural-dupe": "МогӀан юьхьигехь <nowiki>{{PLURAL:}}</nowiki> цхьатера шиъ дош ду, <nowiki>{{PLURAL:$1|пальто|пальто}} меттан</nowiki> <nowiki>{{PLURAL:$1|пальто}} яздича дика ду</nowiki>.",
+ "action-translate-manage": "хаамийн тобанийн урхалладар",
+ "translate-rc-translation-filter": "Литта гочдарш:",
+ "translate-rc-translation-filter-no": "Доза доцуш",
+ "translate-rc-translation-filter-only": "Гочдарш бен ма гайта",
+ "translate-rc-translation-filter-filter": "Къайладаха гочдарш",
+ "translate-rc-translation-filter-site": "Сайтан системан хаамаш бен",
+ "translationstats": "Гочдаршан статистика",
+ "translate-stats-edits": "Нисдарш",
+ "translate-stats-users": "Гочдархой",
+ "translate-stats-registrations": "ДӀаязбалар",
+ "translate-stats-reviews": "Хьажар",
+ "translate-stats-reviewers": "Хьажар",
+ "translate-statsf-options": "Графика нисяр",
+ "translate-statsf-width": "Пикселшках шоралла:",
+ "translate-statsf-height": "Локхалла пикселшкахь:",
+ "translate-statsf-days": "Хан деношкахь:",
+ "translate-statsf-start": "ДӀадолалун терахь:",
+ "translate-statsf-scale-months": "Беттанаш",
+ "translate-statsf-scale-weeks": "КӀиранаш",
+ "translate-statsf-scale-days": "Денош",
+ "translate-statsf-scale-hours": "Сахьташ",
+ "translate-statsf-count": "Дустар",
+ "translate-statsf-count-edits": "Нисдарийн дукхалла",
+ "translate-statsf-count-users": "Болх беш болу гочдархой",
+ "translate-statsf-count-registrations": "Керла декъашхой",
+ "translate-statsf-count-reviews": "Гочдаре хьажар",
+ "translate-statsf-count-reviewers": "Хьажархой",
+ "translate-statsf-submit": "Хьалха хьажар",
+ "translate-tag-category": "Гоч еш йолу агӀонаш",
+ "translate-tag-page-desc": "Вики-агӀонаш гочяр [[$2|$1]].",
+ "translate-sidebar-alltrans": "Кхечу меттанашкахь",
+ "translations": "Массо а гочдарш",
+ "translations-summary": "Лело луш долу гочдарш гучудаха язъе хааман цӀе.",
+ "translate-translations-no-message": "«$1» гочбан луш хаам бац",
+ "translate-translations-none": "Гочдарш дац «$1»",
+ "translate-translations-count": "{{PLURAL:$1|1=Карина $1 гочдар|Карина $1 гочдарш}}.",
+ "translate-translations-fieldset-title": "Хаам",
+ "translate-translations-messagename": "ЦӀе:",
+ "translate-translations-project": "Проект:",
+ "languagestats": "Меттан статистика",
+ "languagestats-summary": "ХӀокху агӀонехь ю гочдаран статистика хӀокху меттан массо групашан чура хаамашан.",
+ "messagegroupstats-summary": "ХӀокху агӀонгахь гойту хаамийн тобанийн статистика.",
+ "languagestats-stats-for": "Нохчийн меттан гочдаран статистика ($2).",
+ "languagestats-recenttranslations": "дукха хан йоццуш гоч динарш",
+ "translate-langstats-incomplete": "ХӀокху агӀонехь цхьа йолу статистикин хаамаш ерриге гайтина яц. Ерриге хилийта карлаяккха агӀо.",
+ "translate-langstats-expand": "схьаелла",
+ "translate-langstats-collapse": "къайлаяккха",
+ "translate-langstats-expandall": "схьаелла ерриге",
+ "translate-langstats-collapseall": "къайлаяха массо",
+ "translate-language-code": "Метта код",
+ "translate-language-code-field-name": "Метта код:",
+ "translate-suppress-complete": "Ма гайта юьззина гочдина йолу хаамашан группанаш",
+ "translate-ls-noempty": "Ма гайта юьззина гоч дийна доцу хаамашан группанаш",
+ "translate-language": "Мотт",
+ "translate-total": "Хаам",
+ "translate-untranslated": "Гоч янцарш",
+ "translate-percentage-complete": "Кхочушдина",
+ "translate-percentage-fuzzy": "Шира елла",
+ "translate-languagestats-overall": "Массо тобанийн чура хаамаш",
+ "translate-ls-submit": "Гайта статистика",
+ "translate-ls-column-group": "Хаамийн тоба",
+ "translate-mgs-pagename": "Тобанийн хаамийн статистика",
+ "translate-mgs-fieldset": "Гайта гӀирс нисбарш",
+ "translate-mgs-group": "Хаамийн тоба:",
+ "translate-mgs-nocomplete": "Гочдина даьлла меттанаш ма гайта",
+ "translate-mgs-noempty": "Гочдар хӀинца а долина доцу меттанаш ма гайта",
+ "translate-mgs-submit": "Гайта статистика",
+ "translate-mgs-column-language": "Мотт",
+ "translate-mgs-totals": "Берриге меттанаш",
+ "translate-mgs-nothing": "Гучубаха хаамаш бац.",
+ "supportedlanguages": "Ловш долу меттанаш",
+ "supportedlanguages-translators": "{{PLURAL:$2|{{GENDER:$3|Гочдархо}}|Гочдархой}}: $1",
+ "supportedlanguages-recenttranslations": "дукха хан йоццуш гоч динарш",
+ "supportedlanguages-count": "Бериг $1 {{PLURAL:$1|мотт|меттанаш|меттанаш}}",
+ "supportedlanguages-activity": "$1: $2 {{PLURAL:$2|1=нисдар|нисдарш}} — тӀаьхьарлера нисдар $3 {{PLURAL:$3|де}} хьалха",
+ "translate-save": "Ӏалашдан ($1)",
+ "translate-jssti-add": "ТӀетоха могӀан чу",
+ "managemessagegroups": "Хаамийн тобанийн урхалладар",
+ "translate-smg-nochanges": "Кечбан хийцамаш бац.",
+ "translate-manage-import-new": "Керла хаам $1",
+ "translate-manage-action-import": "Импорт ян",
+ "translate-manage-action-ignore": "Игнор ян",
+ "translate-manage-submit": "Кхочушдé",
+ "translate-manage-import-ok": "Импортйина: $1",
+ "translate-manage-import-done": "Импортйина йаьлла!",
+ "importtranslations": "Гочдарийн импорт",
+ "translate-import-from-local": "Чуяккха локальни файл:",
+ "translate-import-load": "Файл чуяккхар",
+ "translate-import-err-dl-failed": "Цатарло чуяккха файл:\n$1",
+ "translate-import-err-ul-failed": "Цатарло чуяккха файл",
+ "translate-import-err-invalid-title": "Билгалйина файлан цӀе <nowiki>$1</nowiki> нийса яц.",
+ "translate-import-err-no-such-file": "Файл <nowiki>$1</nowiki> яц я локальни чуяккхина яц.",
+ "translate-js-summary": "Цунах лаьцна:",
+ "translate-js-save": "Ӏалашъян",
+ "translate-js-next": "Ӏалашйин алла важа",
+ "translate-js-history": "Гочан истори",
+ "translate-js-support": "Хаттар далар",
+ "translate-js-support-unsaved-warning": "Ӏалашданза гочдарш ду.",
+ "translate-gs-code": "Код",
+ "translate-gs-score": "Мах хадор",
+ "translate-gs-multiple": "Маситта",
+ "translate-gs-total": "Ерриг",
+ "translate-searchprofile": "Гочдинарш",
+ "translate-messagereview-done": "Теллина",
+ "translate-messagereview-reviews": "Теллина {{PLURAL:$1|$1 декъашхочо|$1 декъашхоша|1=кхечу декъашхочо}}",
+ "translate-messagereview-reviewswithyou": "Теллина {{PLURAL:$1|$1 декъашхочо, ахьа цхьан|$1 декъашхоша, ахьа цхьан}}",
+ "api-error-invalidrevision": "Гочйинарг карлаяьккхина яц",
+ "api-error-unknownmessage": "Хаам цакарий",
+ "logentry-translationreview-group": "$1 {{GENDER:$2|хийцина}} «$3» агӀона гочдаран хьал $4 мотт «$6» → «$7»",
+ "group-translate-sandboxed": "ЧӀагӀбина гочдархой",
+ "translate-dynagroup-recent-label": "Дукха хан йоццуш гоч динарш",
+ "translate-dynagroup-recent-desc": "ХӀокху тобан чохь гучу йолу дукха хан йоцуш гоч йина хӀокху меттан хаамаш.\n\nХӀара дӀахӀоттам пайдане бу хьажа.",
+ "translate-dynagroup-additions-label": "Дукху хан йоцуш тӀетоьхнарш",
+ "translate-dynagroup-additions-desc": "ХӀокху тобан чохь ю керла а хийцам бина а хаамаш.",
+ "translate-gethelp": "ГӀо",
+ "translate-msggroupselector-projects": "Хаамийн тоба",
+ "translate-msggroupselector-search-placeholder": "Тобанаш лахар",
+ "translate-msggroupselector-search-all": "Массо",
+ "translate-msggroupselector-search-recent": "Дукху хан йоцуш",
+ "translate-msggroupselector-view-subprojects": "{{PLURAL:$1|1=Цхьаъ бухара тоба|$1 бухара тобанаш}}",
+ "tux-languageselector": "Гочдар оцу",
+ "tux-tab-all": "Массо",
+ "tux-tab-untranslated": "Гоч янцарш",
+ "tux-tab-outdated": "Шира елларш",
+ "tux-tab-translated": "Гоч йинарш",
+ "tux-tab-unproofread": "Хьажанза ерш",
+ "tux-edit": "Нисдар",
+ "tux-status-optional": "ТӀехь дац",
+ "tux-status-fuzzy": "Шира елла",
+ "tux-status-proofread": "Хьажар",
+ "tux-status-translated": "Гоч йина",
+ "tux-status-saving": "Ӏалаш еш ю...",
+ "tux-status-unsaved": "Ӏалаш цайина",
+ "tux-editor-paste-original-button-label": "Дилла дӀадолалун йоза",
+ "tux-editor-discard-changes-button-label": "Цаоьшу хийцамаш",
+ "tux-editor-save-button-label": "Ӏалаш де гоч динарг",
+ "tux-editor-skip-button-label": "ТӀехьа догӀург",
+ "tux-editor-cancel-button-label": "Цаоьшу",
+ "tux-editor-confirm-button-label": "Бакъде гочдар",
+ "tux-editor-shortcut-info": "ТӀетаӀе «$1» Ӏалашъян я «$2» таӀа яй дехьагӀо.",
+ "tux-editor-edit-desc": "Хийца документаци",
+ "tux-editor-add-desc": "ТӀетоха документаци",
+ "tux-editor-suggestions-title": "ДӀаалар",
+ "tux-editor-in-other-languages": "Кхечу маттахь дерш",
+ "tux-editor-need-more-help": "ГӀо оьшу?",
+ "tux-editor-ask-help": "Деха кхин тӀедиллинарг",
+ "tux-editor-tm-match": "$1% цхьаьнадогӀуш",
+ "tux-warnings-more": "{{PLURAL:$1|кхин $1}}",
+ "tux-warnings-hide": "къайлаяккха",
+ "tux-editor-save-failed": "Ӏалашъян цаделира: $1",
+ "tux-editor-n-uses": "{{PLURAL:$1|лелина}} $1",
+ "tux-editor-message-desc-more": "Гайта мадарра",
+ "tux-editor-message-desc-less": "Гайта компактни",
+ "tux-editor-clear-translated": "Къайлаяха гоч йинарш",
+ "tux-editor-proofreading-mode": "Хьажар",
+ "tux-editor-translate-mode": "МогӀа",
+ "tux-editor-proofreading-hide-own-translations": "Къайлаяха хьой гоч йинарш",
+ "tux-editor-proofreading-show-own-translations": "Гайта хьой гоч йинарш",
+ "tux-proofread-action-tooltip": "Теллина сана билгалъе",
+ "tux-proofread-edit-label": "Хийцам бе",
+ "tux-editor-page-mode": "АгӀо",
+ "tux-editor-outdated-warning": "ХӀара гочдар карладаккха дезаш хила мега.",
+ "tux-editor-outdated-warning-diff-link": "Схьагайта башхалла",
+ "tux-editor-doc-editor-placeholder": "хаамийн документаци",
+ "tux-editor-doc-editor-save": "Ӏалашъе документаци",
+ "tux-editor-doc-editor-cancel": "Цаоьшу",
+ "tux-messagetable-more-messages": "Кхин $1 {{PLURAL:$1|хаам|хаамаш}}",
+ "tux-messagetable-loading-messages": "{{PLURAL:$1|1=Гучу бокхуш бу хаам|Гучу бохуш бу хаамаш}}...",
+ "tux-message-filter-placeholder": "Литта могӀа",
+ "tux-message-filter-result": "Дахарца «$2» {{PLURAL:$1|карина}} $1 {{PLURAL:$1|хилам}}",
+ "tux-message-filter-advanced-button": "Шуьйра лахар",
+ "tux-message-filter-optional-messages-label": "Кхин тӀе хаамаш",
+ "tux-proofread-translated-by-self": "Ахьа гочйина",
+ "tux-empty-list-all": "ХӀара хаамийн тоба есса ю",
+ "tux-empty-list-all-guide": "Гочян харжа кхин хаамийн тоба",
+ "tux-translate-page-no-such-group": "<strong>Билгалйина тоба яц.</strong> Харжа кхин хаамийн тоба.",
+ "tux-empty-list-translated": "Гочбина хаамаш бац",
+ "tux-empty-list-translated-guide": "Хьуна гочйина гӀода лур ду",
+ "tux-empty-list-translated-action": "Гочйе",
+ "tux-empty-no-messages-to-display": "Гайта хаамаш бац.",
+ "tux-empty-there-are-optional": "МогӀам чохь гуш боцу кхин тӀе хаамаш бу",
+ "tux-empty-show-optional-messages": "Кхин тӀе хаамаш гайта",
+ "tux-empty-no-outdated-messages": "Шира белла хаамаш бац",
+ "tux-empty-nothing-to-proofread": "ХӀума яц хьажа езаш",
+ "tux-empty-you-can-help-providing": "Хьан йиш ю гӀо дан хаамаш гоч бина",
+ "tux-empty-nothing-new-to-proofread": "Керла хӀума яц хьажа езаш",
+ "tux-empty-you-can-review-already-proofread": "Хьан йиш ю цхьам гоч йинарш юху хьажа",
+ "tux-empty-list-other": "ХӀума дац гочдан",
+ "tux-empty-list-other-guide": "Хьан йиш ю долуш долу гочдаршка хьажа",
+ "tux-empty-list-other-action": "Гочдиначарга хьажар",
+ "tux-empty-list-other-link": "Гайта берриге хаамаш",
+ "tux-editor-close-tooltip": "ДӀачӀагӀа",
+ "tux-editor-expand-tooltip": "Схьаяста",
+ "tux-editor-collapse-tooltip": "Къайлаяккха",
+ "tux-editor-message-tools-history": "Истори",
+ "tux-editor-message-tools-delete": "ДӀаяккха",
+ "tux-editor-message-tools-translations": "Массо а гочдарш",
+ "tux-editor-loading": "Чуйолуш…",
+ "translate-search-more-languages-info": "кхин $1 {{PLURAL:$1|мотт|меттанаш}}",
+ "translate-statsbar-tooltip": "$1% гочйинарш, $2% хьаьжнаш",
+ "translate-statsbar-tooltip-with-fuzzy": "$1% гочйинарш, $2% хьаьжнаш, $3% шираеларш",
+ "translate-search-more-groups-info": "кхин $1 {{PLURAL:$1|тоба}}",
+ "translate-ulsdep-title": "Конфигурацин гӀалат"
+}
diff --git a/MLEB/Translate/i18n/core/ch.json b/MLEB/Translate/i18n/core/ch.json
new file mode 100644
index 00000000..5265eaed
--- /dev/null
+++ b/MLEB/Translate/i18n/core/ch.json
@@ -0,0 +1,9 @@
+{
+ "@metadata": {
+ "authors": [
+ "Gadao01",
+ "Jatrobat"
+ ]
+ },
+ "translate-page-navigation-legend": "Nabegasion"
+}
diff --git a/MLEB/Translate/i18n/core/ckb.json b/MLEB/Translate/i18n/core/ckb.json
new file mode 100644
index 00000000..ce34465b
--- /dev/null
+++ b/MLEB/Translate/i18n/core/ckb.json
@@ -0,0 +1,172 @@
+{
+ "@metadata": {
+ "authors": [
+ "Asoxor",
+ "Calak",
+ "Marmzok",
+ "Muhammed taha",
+ "رزگار"
+ ]
+ },
+ "translate": "وەرگێڕە",
+ "translate-desc": "[[Special:Translate|پەڕەی تایبەت]] بۆ وەرگێڕانی میدیاویکی و ئەولاتر",
+ "translate-taskui-view": "گشت پەیامەکان نیشان بدە",
+ "translate-taskui-untranslated": "پەیامە وەرنەگێردراوەکان نیشانبدە",
+ "translate-taskui-optional": "پەیامە دڵخوازانەکان نیشان بدە",
+ "translate-taction-translate": "وەرگێڕە",
+ "translate-taction-proofread": "پێداچوونەوە",
+ "translate-taction-lstats": "ئامارەکانی زمان",
+ "translate-taction-mstats": "ئامارەکانی گرووپی پەیام",
+ "translate-taction-export": "ھەناردەی بکە",
+ "translate-page-settings-legend": "ڕێکخستنەکان",
+ "translate-page-group": "گرووپ",
+ "translate-page-language": "زمان",
+ "translate-page-limit": "سنوور",
+ "translate-page-limit-option": "$1 {{PLURAL:$1|پەیام|پەیام}} لەھەر پەڕەیکدا",
+ "translate-submit": "",
+ "translate-page-navigation-legend": "ڕێدۆزی",
+ "translate-page-showing": "نیشاندانی پەیامەکانی $1 تا $2 لە کۆی $3.",
+ "translate-page-showing-all": "نیشاندانی $1 {{PLURAL:$1|پەیام|پەیام}}.",
+ "translate-page-showing-none": "ھیچ پەیامێک بۆ نیشاندان نییە",
+ "translate-next": "پەڕەی دواتر",
+ "translate-prev": "پەڕەی پێشوو",
+ "translate-page-description-legend": "زانیاری سەبارەت بە گرووپەکە",
+ "translate-page-description-hasoptional-open": "پەیامە دڵخوازانەکان نیشان بدە.",
+ "translate-page-edit": "دەستکاریی بکە",
+ "translate-ext-url": "<hr />ماڵپەڕ: $1",
+ "translate-optional": "(دڵخوازانه‌)",
+ "translate-edit-title": "«$1» دەستکاری بکە",
+ "translate-edit-definition": "پێناسەی پەیام",
+ "translate-edit-translation": "وەرگێڕان",
+ "translate-edit-contribute": "بەشداری بکە",
+ "translate-edit-information": "زانیاری سەبارت بە پەیام ($1)",
+ "translate-edit-in-other-languages": "پەیام لە زمانەکانی تردا",
+ "translate-edit-warnings": "ئاگادارییەکان سەبارەت بە وەرگێڕانی ناتەواو",
+ "translate-edit-tmmatch": "$1% یەکسانی",
+ "translate-magic-module": "مۆدیوول:",
+ "translate-magic-submit": "بەدەستی بهێنە",
+ "translate-magic-cm-export": "هەناردن",
+ "translate-magic-nothing-to-export": "هیچ شتێک نیە بۆ هەناردن.",
+ "translate-magic-cm-current": "هەنووکە",
+ "translate-magic-cm-original": "بنەڕەتی",
+ "translate-magic-cm-comment": "بۆچوون:",
+ "translate-magic-cm-save": "پاشەکەوت",
+ "translate-magic-cm-savefailed": "پاشەکەوت‌کردن سەرکەوتوو نەبوو",
+ "translate-magic-words": "وشە سیحراوییەکان",
+ "translate-magic-notsaved": "دەستکارییەکەت پاشەکەوت نەکرا!",
+ "translate-magic-errors": "تکایە ئەم {{PLURAL:$1|ھەڵە|ھەڵانە}}ی خوارەوە چاک بکەوە لە وەرگێڕاندا :",
+ "translate-magic-saved": "گۆڕانکاریەکانت بە سەرکەوتووی پاشەکەوت کرا.",
+ "translate-checks-parameters": "ئەم {{PLURAL:$2|پارامەترە بەکارنەھێنراوە|پارامەترانە بەکارنەھێنراون}} :\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-parameters-unknown": "ئەم {{PLURAL:$2|پارامەترە نەناسراوە|پارامەترانە نەناسراون}} :\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-pref-nonewsletter": "ئی‌مێڵی هەواڵ‌نامە بۆ من مەنێرە",
+ "prefs-translate": "هەڵبژاردەکانی وەرگێڕان",
+ "right-translate": "دەستکاری بە کەڵك وەرگرتن لە ڕووکاری وەرگێڕان",
+ "translate-rc-translation-filter": "پاڵاوتنی وەرگێڕاوەکان:",
+ "translate-rc-translation-filter-no": "ھیچ مەکە",
+ "translate-rc-translation-filter-only": "ھەر وەرگێڕاوەکان نیشان بدە",
+ "translationstats": "ئاماری وەرگێڕان",
+ "translate-stats-edits": "دەستکاریەکان",
+ "translate-stats-users": "وەرگێڕەکان",
+ "translate-stats-registrations": "ناونووسکردنەکان",
+ "translate-stats-reviews": "پیاچوونەوەکان",
+ "translate-stats-reviewers": "پیاچوونەوەکارەکان",
+ "translate-statsf-start": "ڕێکەوتی دەستپێکردن:",
+ "translate-statsf-scale-months": "مانگ",
+ "translate-statsf-scale-weeks": "ھەفتە",
+ "translate-statsf-scale-days": "ڕۆژ",
+ "translate-statsf-scale-hours": "کاتژمێر",
+ "translate-statsf-count": "پێوانە:",
+ "translate-statsf-count-edits": "ژمارەی دەستکارییەکان",
+ "translate-statsf-count-users": "وەرگێڕە چالاکەکان",
+ "translate-statsf-count-registrations": "بەکارھێنەرە نوێکان",
+ "translate-statsf-count-reviews": "پیاچوونەوەکانی وەرگێڕان",
+ "translate-statsf-count-reviewers": "پیاچوونەوەکارەکان",
+ "translate-statsf-submit": "پێشبینین",
+ "translate-tag-category": "ئەو لاپەڕانەی توانای وەرگێڕانیان هەیە",
+ "translate-sidebar-alltrans": "لە زمانەکانی دیکەدا",
+ "translations": "هەموو وەرگێرانەکان",
+ "translate-translations-fieldset-title": "پەیام",
+ "translate-translations-messagename": "ناو:",
+ "translate-translations-project": "پرۆژە:",
+ "translate-translations-history-short": "م",
+ "languagestats": "ئامارەکانی زمان",
+ "translate-langstats-expand": "بڵاویبکەوە",
+ "translate-langstats-collapse": "کۆیبکەوە",
+ "translate-langstats-expandall": "هەمووی بڵاوبکەوە",
+ "translate-langstats-collapseall": "هەمووی کۆبکەوە",
+ "translate-language-code": "کۆدی زمان",
+ "translate-language-code-field-name": "کۆدی زمان:",
+ "translate-language": "زمان",
+ "translate-total": "پەیامەکان",
+ "translate-untranslated": "وەرنەگێڕاو",
+ "translate-percentage-complete": "تەواوکراو",
+ "translate-ls-submit": "ئامارەکان پیشانبدە",
+ "translate-ls-column-group": "پەیامی گرووپ",
+ "translate-mgs-pagename": "ئامارەکانی گرووپی پەیام",
+ "translate-mgs-group": "پەیامی گرووپ:",
+ "translate-mgs-submit": "ئامارەکان پیشانبدە",
+ "translate-mgs-column-language": "زمان",
+ "translate-mgs-totals": "گشت زمانەکان بەیەکەوە",
+ "supportedlanguages": "زمانە پشتگیریکراوەکان",
+ "supportedlanguages-translators": "{{PLURAL:$2|وەرگێڕ|وەرگێڕەکان}}: $1",
+ "supportedlanguages-recenttranslations": "دوایین وەرگێڕانەکان",
+ "supportedlanguages-count": "$1 {{PLURAL:$1|زمان|زمانەکان}} بەگشتی.",
+ "supportedlanguages-activity": "$1: $2 {{PLURAL:$2|دەستکاری}} - دوایین دەستکاری $3 {{PLURAL:$3|ڕۆژ}} لەمە پێش",
+ "translate-save": "پاشەکەوتی بکە ($1)",
+ "translate-jssti-add": "زیادکردن بۆ سەر لیست",
+ "translate-manage-import-diff": "پەیام $1 | کردارەکان: $2",
+ "translate-manage-import-new": "پەیامی نوێ $1",
+ "translate-manage-action-import": "هاوردن",
+ "translate-js-summary": "پوختە:",
+ "translate-js-save": "پاشەکەوتی بکە",
+ "translate-js-next": "پاشەکەتی بکە و دواتر بکەوە",
+ "translate-js-skip": "باز ببە بۆ دواتر",
+ "translate-js-history": "مێژووی وەرگێڕان",
+ "translate-js-support": "پرسیار بکە",
+ "translate-gs-code": "کۆد",
+ "translate-gs-speakers": "قسەکەرەکان",
+ "translate-gs-total": "سەرجەم",
+ "translate-searchprofile": "وەرگێڕانەکان",
+ "translate-workflowstatus": "ڕەوش: $1",
+ "translate-workflow-set-do": "ڕێک بخە",
+ "translate-workflow-set-doing": "ڕێکخستن...",
+ "translate-workflow-set-done": "ڕێکخرا!",
+ "translate-stats-workflow": "ڕەوش",
+ "translate-gethelp": "یارمەتی",
+ "translate-msggroupselector-projects": "پەیامی گرووپ",
+ "translate-msggroupselector-search-all": "ھەموو",
+ "translate-msggroupselector-view-subprojects": "$1 {{PLURAL:$1|ژێرگرووپ|ژێرگرووپەکان}}",
+ "tux-tab-all": "ھەموو",
+ "tux-tab-untranslated": "وەرنەگێڕاو",
+ "tux-tab-translated": "وەرگێڕدرا",
+ "tux-edit": "دەستکاری",
+ "tux-status-translated": "وەرگێڕدرا",
+ "tux-status-saving": "دەپارێزرێت...",
+ "tux-editor-paste-original-button-label": "دەقی بنەڕەتی دابنێ",
+ "tux-editor-save-button-label": "وەرگێڕان بپارێزە",
+ "tux-editor-skip-button-label": "باز ببە بۆ دواتر",
+ "tux-editor-cancel-button-label": "ھەڵیوەشێنەوە",
+ "tux-editor-suggestions-title": "پێشنیارەکان",
+ "tux-editor-in-other-languages": "بە زمانەکانی تر",
+ "tux-warnings-more": "{{PLURAL:$1|$1 زیاتر}}",
+ "tux-warnings-hide": "بیشارەوە",
+ "tux-editor-message-desc-more": "زیاتر ببینە",
+ "tux-editor-message-desc-less": "کەمتر ببینە",
+ "tux-editor-proofreading-mode": "پێداچوونەوە",
+ "tux-editor-translate-mode": "پێرست",
+ "tux-proofread-edit-label": "دەستکاری",
+ "tux-editor-page-mode": "پەڕە",
+ "tux-editor-doc-editor-cancel": "ھەڵیوەشێنەوە",
+ "tux-messagetable-loading-messages": "بارکردنی {{PLURAL:$1|پەیام|پەیامەکان}}...",
+ "tux-message-filter-result": "$1 {{PLURAL:$1|ئاکام}} دۆزرایەوە بۆ «$2»",
+ "tux-message-filter-advanced-button": "گەڕانی پێشکەوتوو",
+ "tux-empty-list-translated": "پەیامە وەرنەگێڕدراوەکان",
+ "tux-empty-list-other-link": "گشت پەیامەکان نیشان بدە",
+ "tux-editor-close-tooltip": "دایخە",
+ "tux-editor-expand-tooltip": "بڵاویبکەوە",
+ "tux-editor-collapse-tooltip": "کۆیبکەوە",
+ "tux-editor-message-tools-history": "مێژوو",
+ "tux-editor-message-tools-translations": "هەموو وەرگێرانەکان",
+ "tux-editor-loading": "باركردن‌ ...",
+ "translate-statsbar-tooltip": "$1% وەرگێڕدراوە, $2% پێداجوونەوەی بۆ کراوە"
+}
diff --git a/MLEB/Translate/i18n/core/cs.json b/MLEB/Translate/i18n/core/cs.json
new file mode 100644
index 00000000..92b26e87
--- /dev/null
+++ b/MLEB/Translate/i18n/core/cs.json
@@ -0,0 +1,387 @@
+{
+ "@metadata": {
+ "authors": [
+ "Chmee2",
+ "Danny B.",
+ "Li-sung",
+ "Littledogboy",
+ "Matěj Grabovský",
+ "Mormegil",
+ "Vks",
+ "Matěj Suchánek",
+ "Utar"
+ ]
+ },
+ "translate": "Překládání",
+ "translate-desc": "[[Special:Translate|Speciální stránka]] zjednodušující překládání systémových hlášení MediaWiki",
+ "translate-taskui-view": "Zobrazit všechny zprávy",
+ "translate-taskui-untranslated": "Zobrazit nepřeložené zprávy",
+ "translate-taskui-optional": "Zobrazit volitelné zprávy",
+ "translate-taskui-acceptqueue": "Jen zprávy, které mohu označit za zkontrolované",
+ "translate-taskui-reviewall": "Hodnotit všechny překlady",
+ "translate-taskui-export-to-file": "Exportovat v nativním formátu",
+ "translate-taskui-export-as-po": "Exportovat pro off-line překlad",
+ "translate-taction-translate": "Překlad",
+ "translate-taction-proofread": "Zkontrolovat",
+ "translate-taction-lstats": "Jazykové statistiky",
+ "translate-taction-mstats": "Statistika skupin zpráv",
+ "translate-taction-export": "Export",
+ "translate-taction-disabled": "Tato akce je na této wiki zakázána.",
+ "translate-page-no-such-language": "Zadaný jazyk není platný.",
+ "translate-page-no-such-group": "Zadaná skupina byla neplatná.",
+ "translate-page-disabled": "Překlady do tohoto jazyka byly v této skupině zakázány. Zdůvodnění:\n\n<em>$1</em>",
+ "translate-language-disabled": "Překlad do tohoto jazyka je zakázán.",
+ "translate-page-settings-legend": "Nastavení",
+ "translate-page-group": "skupina",
+ "translate-page-language": "Jazyk",
+ "translate-page-limit": "s&nbsp;omezením",
+ "translate-page-limit-option": "$1 {{PLURAL:$1|zpráva|zprávy|zpráv}} na stránce",
+ "translate-submit": "Ukázat",
+ "translate-page-navigation-legend": "Navigace",
+ "translate-page-showing": "Zobrazeny zprávy $1 až $2 z $3.",
+ "translate-page-showing-all": "{{PLURAL:$1|Zobrazena $1 zpráva|Zobrazeny $1 zprávy|Zobrazeno $1 zpráv}}.",
+ "translate-page-showing-none": "Požadavku neodpovídají žádné zprávy.",
+ "translate-next": "Další stránka",
+ "translate-prev": "Předchozí stránka",
+ "translate-page-description-legend": "Informace o skupině",
+ "translate-page-description-hasoptional": "Tato skupina zpráv obsahuje volitelné zprávy.\nVolitelné zprávy se mají překládat, pouze pokud má váš jazyk zvláštní potřeby\njako nepoužívání mezer nebo transkripce vlastních jmen. $1",
+ "translate-page-description-hasoptional-open": "Zobrazit volitelné zprávy.",
+ "translate-page-edit": "editovat",
+ "translate-ext-url": "<hr />Webová stránka: $1",
+ "translate-optional": "(volitelné)",
+ "translate-ignored": "(ignorované)",
+ "translate-edit-title": "Editovat „$1“",
+ "translate-edit-definition": "Zdroj zprávy",
+ "translate-edit-translation": "Překlad",
+ "translate-edit-contribute": "přispět",
+ "translate-edit-no-information": "<em>K této zprávě není dokumentace. Pokud víte, kde nebo jak se zpráva používá, můžete pomoci dalším překladatelům tím, že přidáte dokumentaci k této zprávě.</em>",
+ "translate-edit-information": "Informace o zprávě ($1)",
+ "translate-edit-in-other-languages": "Zpráva v jiných jazycích",
+ "translate-edit-committed": "Současný překlad v úložišti",
+ "translate-edit-warnings": "Upozornění na neúplný překlad",
+ "translate-edit-tmsugs": "Návrhy z překladové paměti",
+ "translate-edit-tmmatch-source": "Zdrojový text překladu: $1",
+ "translate-edit-tmmatch": "$1% shoda",
+ "translate-use-suggestion": "Nahradit stávající překlad tímto návrhem.",
+ "translate-edit-nopermission": "K překládání zpráv potřebujete překladatelská práva.",
+ "translate-edit-askpermission": "Získat oprávnění",
+ "translate-magic-pagename": "Rozšířená možnost překladu MediaWiki",
+ "translate-magic-help": "Můžete překládat aliasy speciálních stránek, kouzelná slova a názvy jmenných prostorů.\n\nAliasy speciálních stránek a kouzelná slova mohou mít více překladů.\nPřeklady se oddělují čárkou (,).\nNázvy jmenných prostorů mohou mít jen jeden překlad.\n\nV překladech jmenných prostorů se <code>$1 talk</code> chová zvláštně.\n<code>$1</code> se nahradí názvem projektu (např. <code>{{ns:project_talk}}</code>).\nPokud není ve vašem jazyce možné vytvořit smysluplný výraz bez změny názvu projektu, dejte nám vědět na stránce [[Support]].\n\nAbyste mohli ukládat změny, musíte být překladatel.\nZměny se neuloží, dokud nekliknete na tlačítko „Uložit změny“ dole.",
+ "translate-magic-module": "Modul:",
+ "translate-magic-submit": "Zobrazit",
+ "translate-magic-cm-export": "Exportovat",
+ "translate-magic-nothing-to-export": "Není co exportovat.",
+ "translate-magic-cm-to-be": "nové",
+ "translate-magic-cm-current": "současné",
+ "translate-magic-cm-original": "původní",
+ "translate-magic-cm-comment": "Komentář:",
+ "translate-magic-cm-save": "Uložit",
+ "translate-magic-cm-updatedusing": "Aktualizovat pomocí [[Special:AdvancedTranslate|{{int:Translate-magic-pagename}}]]",
+ "translate-magic-cm-savefailed": "Uložení se nepovedlo",
+ "translate-magic-special": "Alternativní jména speciálních stránek",
+ "translate-magic-words": "Kouzelná slůvka",
+ "translate-magic-namespace": "Názvy jmenných prostorů",
+ "translate-magic-notsaved": "Vaše editace nebyla uložena!",
+ "translate-magic-errors": "Opravte následující {{PLURAL:$1|chybu|chyby}} v překladech:",
+ "translate-magic-saved": "Vaše změny byly úspěšně uloženy.",
+ "translate-checks-parameters": "Následující {{PLURAL:$2|parametr není použit|parametry nejsou použity}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-parameters-unknown": "Následující {{PLURAL:$2|parametr není definován|parametry nejsou definovány}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-balance": "Následující {{PLURAL:$2|typ závorek není správně spárován|typy závorek nejsou správně spárovány}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links": "Následující {{PLURAL:$2|odkaz je problematický|odkazy jsou problematické}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links-missing": "{{PLURAL:$2|Následující odkaz|Následující $2 odkazy|Následujících $2 odkazů}} chybí:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-xhtml": "Opravte následující {{PLURAL:$2|značku|značky}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-plural": "Zdroj používá <nowiki>{{PLURAL:}}</nowiki>, ale překlad nikoliv.",
+ "translate-checks-plural-forms": "Do <nowiki>{{PLURAL:}}</nowiki> {{PLURAL:$1|byla vložena 1 varianta|byly vloženy $1 varianty|bylo vloženo $1 variant}}, ale {{PLURAL:$2|je podporována pouze jedna|jsou podporovány pouze $2|je podporováno pouze $2}} (kromě variant 0= a 1=).",
+ "translate-checks-plural-dupe": "Na konci <nowiki>{{PLURAL:}}</nowiki> jsou uvedeny duplicitní varianty. Místo <nowiki>{{PLURAL:$1|náměstí|náměstí|náměstí}}</nowiki> má být zadáno jen <nowiki>{{PLURAL:$1|náměstí}}</nowiki>.",
+ "translate-checks-pagename": "Oproti definici se změnil jmenný prostor",
+ "translate-checks-format": "Tento překlad neodpovídá definici nebo má neplatnou syntaxi: $1",
+ "translate-checks-escape": "Následující escape sekvence možná nebyly zamýšleny: <strong>$1</strong>",
+ "translate-checks-parametersnotequal": "Počet parametrů je {{PLURAL:$1|$1}}; měl by být {{PLURAL:$2|$2}}.",
+ "translate-checks-malformed": "<nowiki>$1</nowiki> má nesprávný formát.",
+ "translate-checks-fudforum-syntax": "V tomto projektu musíte namísto <nowiki>$2</nowiki> používat <nowiki>$1</nowiki>.",
+ "translate-pref-nonewsletter": "Neposílat mi novinky emailem",
+ "translate-pref-editassistlang": "Pomocné jazyky:",
+ "prefs-translate": "Nastavení pro překládání",
+ "translate-pref-editassistlang-help": "Seznam kódů jazyků oddělených čárkami.\nPřeklady zvolené zprávy do těchto jazyků jsou zobrazeny při překládání.\nImplicitní seznam (''default'') závisí na vašem jazyce.",
+ "translate-pref-editassistlang-bad": "Seznam obsahuje neplatný kód jazyka:\n<nowiki>$1</nowiki>",
+ "right-translate": "Editace překladu pomocí rozhraní ''Přeložit''",
+ "right-translate-manage": "Správa skupin zpráv",
+ "action-translate-manage": "spravovat skupiny zpráv",
+ "right-translate-import": "Importování offline překladů",
+ "action-translate-import": "importovat offline překlady",
+ "right-translate-messagereview": "Hodnocení překladů",
+ "right-translate-groupreview": "Změna stavu zpracování skupin zpráv",
+ "translate-rc-translation-filter": "Filtr překladů:",
+ "translate-rc-translation-filter-no": "Nijak nefiltrovat",
+ "translate-rc-translation-filter-only": "Zobrazit jen překlady",
+ "translate-rc-translation-filter-filter": "Nezobrazovat překlady",
+ "translate-rc-translation-filter-site": "Pouze změny zdejších místních hlášení",
+ "translationstats": "Statistika překladů",
+ "translate-stats-edits": "Úpravy",
+ "translate-stats-users": "Překladatelé",
+ "translate-stats-registrations": "Registrace",
+ "translate-stats-reviews": "Hodnocení",
+ "translate-stats-reviewers": "Hodnotitelé",
+ "translate-statsf-intro": "Pomocí tohoto formuláře můžete tvořit jednoduché statistiky. Všechny hodnoty mají horní a spodní hranici.",
+ "translate-statsf-options": "Možnosti grafu",
+ "translate-statsf-width": "Šířka v pixelech:",
+ "translate-statsf-height": "Výška v pixelech:",
+ "translate-statsf-days": "Počáteční datum:",
+ "translate-statsf-start": "Počáteční datum:",
+ "translate-statsf-scale": "Měřítko:",
+ "translate-statsf-scale-months": "Měsíce",
+ "translate-statsf-scale-weeks": "Týdny",
+ "translate-statsf-scale-days": "Dny",
+ "translate-statsf-scale-hours": "Hodiny",
+ "translate-statsf-count": "Rozsah:",
+ "translate-statsf-count-edits": "Počet editací",
+ "translate-statsf-count-users": "Aktivní překladatelé",
+ "translate-statsf-count-registrations": "Noví uživatelé",
+ "translate-statsf-count-reviews": "Hodnocení překladů",
+ "translate-statsf-count-reviewers": "Hodnotitelé",
+ "translate-statsf-language": "Čárkami oddělený seznam kódu jazyků:",
+ "translate-statsf-group": "Čárkami oddělený seznam kódů skupin:",
+ "translate-statsf-submit": "Náhled",
+ "translate-tag-category": "Přeložitelné stránky",
+ "translate-tag-page-desc": "Překlad wiki stránky [[$2|$1]] z jazyka $3 ($4).",
+ "translate-sidebar-alltrans": "V jiných jazycích",
+ "translations": "Všechny překlady",
+ "translations-summary": "Všechny dostupné překlady zobrazíte po zadání názvu zprávy.",
+ "translate-translations-no-message": "Nelze překládat zprávu „$1“",
+ "translate-translations-none": "Neexistují žádné překlady zprávy „$1“",
+ "translate-translations-count": "{{PLURAL:$1|Nalezen jeden překlad|Nalezeny $1 překlady|Nalezeno $1 překladů}}.",
+ "translate-translations-fieldset-title": "Zpráva",
+ "translate-translations-messagename": "Název:",
+ "translate-translations-project": "Projekt:",
+ "translate-translations-including-no-param": "V parametru musíte určit platný název zprávy",
+ "translate-translations-history-short": "h",
+ "languagestats": "Jazykové statistiky",
+ "languagestats-summary": "Tato stránka zobrazuje statistiku překladů všech skupin zpráv v daném jazyce.",
+ "messagegroupstats-summary": "Tato zpráva zobrazuje statistiky skupin zpráv.",
+ "languagestats-stats-for": "Statistiky překladů pro jazyk $1 ($2).",
+ "languagestats-recenttranslations": "nedávné překlady",
+ "translate-langstats-incomplete": "Některé statistiky na této stránce jsou neúplné. Více údajů získáte obnovením stránky.",
+ "translate-langstats-expand": "rozbalit",
+ "translate-langstats-collapse": "sbalit",
+ "translate-langstats-expandall": "rozbalit vše",
+ "translate-langstats-collapseall": "sbalit vše",
+ "translate-language-code": "Kód jazyka",
+ "translate-language-code-field-name": "Kód jazyka:",
+ "translate-suppress-complete": "Skrýt úplně přeložené skupiny zpráv",
+ "translate-ls-noempty": "Skrýt úplně nepřeložené skupiny zpráv",
+ "translate-language": "Jazyk",
+ "translate-total": "Zprávy",
+ "translate-untranslated": "Nepřeložené",
+ "translate-percentage-complete": "Dokončené",
+ "translate-percentage-fuzzy": "Zastaralé",
+ "translate-languagestats-overall": "Všechny skupiny zpráv dohromady",
+ "translate-ls-submit": "Zobrazit statistiky",
+ "translate-ls-column-group": "Skupina zpráv",
+ "translate-mgs-pagename": "Statistiky skupin zpráv",
+ "translate-mgs-fieldset": "Volby zobrazení",
+ "translate-mgs-group": "Skupina zpráv:",
+ "translate-mgs-nocomplete": "Nezobrazovat jazyky s úplným překladem",
+ "translate-mgs-noempty": "Nezobrazovat jazyky neobsahující žádný překlad",
+ "translate-mgs-submit": "Zobrazit statistiky",
+ "translate-mgs-column-language": "Jazyk",
+ "translate-mgs-totals": "Všechny jazyky dohromady",
+ "translate-mgs-invalid-group": "Zadaná skupina $1 neexistuje.",
+ "translate-mgs-nothing": "U požadovaných statistik není co zobrazit.",
+ "supportedlanguages": "Podporované jazyky",
+ "supportedlanguages-summary": "Na této stránce se nachází seznam všech jazyků podporovaných na {{grammar:6sg|{{SITENAME}}}}\nspolu se jmény překladatelů, kteří na jazyku pracují.\nČím více editací překladatel poskytnul, tím větší se jeho jméno zobrazuje.\nBarva podtržení znázorňuje, jak nedávno zde byl překladatel aktivní.",
+ "supportedlanguages-colorlegend": "Legenda k barvám: Poslední překlad před $1 dny.",
+ "supportedlanguages-portallink": "[$1] $2 – $3",
+ "supportedlanguages-translators": "{{PLURAL:$2|{{GENDER:$3|Překladatel|Překladatelka}}|Překladatelé}}: $1",
+ "supportedlanguages-recenttranslations": "nedávné překlady",
+ "supportedlanguages-count": "Celkem $1 {{PLURAL:$1|jazyk|jazyky|jazyků}}.",
+ "supportedlanguages-activity": "$1: $2 editace – poslední editace před $3 {{PLURAL:$3|dnem|dny}}",
+ "translate-save": "Uložit ($1)",
+ "translate-jssti-add": "Přidat do seznamu",
+ "managemessagegroups": "Správa skupin zpráv",
+ "translate-smg-notallowed": "Nemáte právo provést tuto akci.",
+ "translate-smg-nochanges": "Neexistují žádné změny ke zpracování.",
+ "translate-smg-submit": "Odeslat změny ke zpracování",
+ "translate-smg-submitted": "Definice zpráv byly aktualizovány. Změny se zpracovávají na pozadí.",
+ "translate-smg-more": "Po odeslání těchto změn budou ještě další změny ke zpracování.",
+ "translate-smg-left": "Obsah zprávy ve wiki",
+ "translate-smg-right": "Příchozí změny",
+ "translate-manage-import-diff": "Zpráva $1 | Akce: $2",
+ "translate-manage-import-new": "Nová zpráva $1",
+ "translate-manage-import-deleted": "Odstraněná zpráva $1",
+ "translate-manage-action-import": "Importovat",
+ "translate-manage-action-conflict": "Naimportovat a označit jako „fuzzy“",
+ "translate-manage-action-ignore": "Ignorovat",
+ "translate-manage-action-fuzzy": "Importovat a označit překlady jako neúplné",
+ "translate-manage-nochanges": "V definici zpráv této skupiny nenastaly žádné změny.",
+ "translate-manage-nochanges-other": "Nebyly provedeny žádné změny pro tento jazyk.\nPomocí dole uvedeného odkazu se vrátíte na zobrazení Podrobnosti o skupině.",
+ "translate-manage-inconsistent": "Zjištěny nekonzistence v požadavku.\nProsím, zkontrolujte změny a zkuste to znovu.\nPodrobnosti: $1.",
+ "translate-manage-toolong": "Překročen maximální čas zpracování $1 {{PLURAL:$1|sekunda|sekundy|sekund}}.\nPro pokračování odešlete formulář ještě jednou.",
+ "translate-manage-import-summary": "Importuje se nová verze z vnějšího zdroje",
+ "translate-manage-conflict-summary": "Importuje se nová verze z vnějšího zdroje.\nProsím, zkontrolujte ji.",
+ "translate-manage-fuzzy-summary": "Definice zprávy se změnila",
+ "translate-manage-submit": "Provést",
+ "translate-manage-intro-other": "Níže je zobrazen seznam změn v překladech do jazyka $1.\nZkontrolujte změny a vyberte si, co se má pro každou aktualizaci provést.\nPokud se rozhodnete změny ignorovat, je tato akce pouze dočasná.",
+ "translate-manage-import-ok": "Naimportováno: $1",
+ "translate-manage-import-done": "Import dokončen!",
+ "importtranslations": "Import překladů",
+ "translate-import-from-local": "Načtení lokálního souboru:",
+ "translate-import-load": "Načíst soubor",
+ "translate-import-err-dl-failed": "Nepodařilo se načíst soubor:\n$1",
+ "translate-import-err-ul-failed": "Načtení souboru se nezdařilo.",
+ "translate-import-err-invalid-title": "Zadané jméno souboru <nowiki>$1</nowiki> není platné.",
+ "translate-import-err-no-such-file": "Soubor <nowiki>$1</nowiki> neexistuje nebo nebyl načten lokálně.",
+ "translate-import-err-stale-group": "Skupina zpráv, do které tento soubor patří, neexistuje.",
+ "translate-import-err-no-headers": "Soubor není platným souborem ve formátu Gettext pro rozšíření Translate:\nZ hlaviček souboru se nepodařilo skupinu zpráv a jazyk.",
+ "translate-import-err-warnings": "Soubor nemá platný formát.\nUjistěte se, že váš editor neodstraňuje pole msgctxt.\nPodrobnosti: $1",
+ "translate-js-summary": "Shrnutí:",
+ "translate-js-save": "Uložit",
+ "translate-js-next": "Uložit a otevřít další",
+ "translate-js-nonext": "Toto byla poslední zpráva na této stránce.",
+ "translate-js-skip": "Přeskočit na další",
+ "translate-js-save-failed": "Uložení se nezdařilo. Nahlaste prosím tuto chybu.",
+ "translate-js-history": "Historie překladů",
+ "translate-js-support": "Položit dotaz",
+ "translate-js-support-title": "Požádat o pomoc, pokud není k dispozici dostatek informací pro správný překlad této zprávy.",
+ "translate-js-support-unsaved-warning": "Máte neuložené překlady.",
+ "translate-gs-pos": "Poř.",
+ "translate-gs-code": "Kód",
+ "translate-gs-continent": "Světadíl",
+ "translate-gs-speakers": "Mluvčích",
+ "translate-gs-score": "Skóre",
+ "translate-gs-multiple": "Vícero",
+ "translate-gs-count": "Počet",
+ "translate-gs-total": "Celkem",
+ "translate-gs-avgscore": "Prům. skóre",
+ "translate-documentation-language": "dokumentace k hlášením",
+ "translate-searchprofile": "Překlady",
+ "translate-searchprofile-tooltip": "Hledat ve všech překladech",
+ "translate-search-languagefilter": "Filtr podle jazyka:",
+ "translate-search-nofilter": "Nefiltrovat",
+ "translate-messagereview-submit": "Označit za zkontrolované",
+ "translate-messagereview-progress": "Označuje se za zkontrolované…",
+ "translate-messagereview-failure": "Nepodařilo se označit za zkontrolované: $1",
+ "translate-messagereview-done": "Zkontrolováno",
+ "translate-messagereview-reviews": "Zkontrolováno {{PLURAL:$1|1 uživatelem|$1 uživateli}}",
+ "translate-messagereview-reviewswithyou": "Zkontrolováno {{PLURAL:$1|vámi|$1 uživateli včetně vás}}",
+ "api-error-invalidrevision": "Překlad nebyl nalezen",
+ "api-error-unknownmessage": "Hlášení nebylo nalezeno",
+ "api-error-fuzzymessage": "Překlad je označen jako „fuzzy“",
+ "api-error-owntranslation": "Vlastní překlady nemůžete označovat za zkontrolované.",
+ "translate-messagereview-no-fuzzy": "„Fuzzy“ překlady nelze označit za zkontrolované.",
+ "translate-messagereview-no-own": "Vlastní překlady nemůžete označovat za zkontrolované.",
+ "translate-messagereview-doit": "Označit tento překlad jako zkontrolovaný.",
+ "log-name-translationreview": "Kniha hodnocení překladů",
+ "log-description-translationreview": "Protokol všech hodnocení překladů a skupin zpráv.",
+ "logentry-translationreview-message": "$1 {{GENDER:$2|zkontroloval|zkontrolovala}} překlad $3",
+ "logentry-translationreview-group": "$1 {{GENDER:$2|změnil|změnila}} stav překladů stránky $3 do jazyka $4 z $6 na $7",
+ "group-translate-sandboxed": "Neschválení překladatelé",
+ "group-translate-sandboxed-member": "{{GENDER:$1|neschválený překladatel|neschválená překladatelka}}",
+ "translate-workflow-state-": "(nenastaven)",
+ "translate-workflowstatus": "Stav: $1",
+ "translate-workflow-set-do": "Nastavit",
+ "translate-workflow-set-doing": "Nastavuje se…",
+ "translate-workflow-set-done": "Nastaveno!",
+ "translate-workflow-set-error-alreadyset": "Požadovaný stav je roven aktuálnímu.",
+ "translate-stats-workflow": "Stav",
+ "translate-workflowgroup-label": "Stavy zpracování",
+ "translate-workflowgroup-desc": "Tato skupina zpráv obsahuje stavy zpracování překladů.\nStavy jsou definovány v konfigurační proměnné $wgTranslateWorkflowStates.",
+ "translate-dynagroup-recent-label": "Nedávné překlady",
+ "translate-dynagroup-recent-desc": "Tato skupina zpráv zobrazuje všechny nedávné překlady do tohoto jazyka.\nUžitečné hlavně pro korektury.",
+ "translate-dynagroup-additions-label": "Nedávné přírůstky",
+ "translate-dynagroup-additions-desc": "Tato skupina zpráv zobrazuje nové a změněné zprávy.",
+ "translate-dynagroup-by": "Překlad od {{GENDER:$1|uživatele|uživatelky|}} $1",
+ "translate-dynagroup-byc": "Překlad od {{GENDER:$1|uživatele|uživatelky|}} $1 ($2)",
+ "translate-dynagroup-last": "Poslední změna od {{GENDER:$1|uživatele|uživatelky|}} $1",
+ "translate-dynagroup-lastc": "Poslední změna od {{GENDER:$1|uživatele|uživatelky|}} $1 ($2)",
+ "translate-gethelp": "Nápověda",
+ "translate-msggroupselector-projects": "Skupina zpráv",
+ "translate-msggroupselector-search-placeholder": "Hledání skupiny",
+ "translate-msggroupselector-search-all": "Všechno",
+ "translate-msggroupselector-search-recent": "Nedávné",
+ "translate-msggroupselector-view-subprojects": "$1 {{PLURAL:$1|podskupina|podskupiny|podskupin}}",
+ "tux-languageselector": "Překlad do jazyka",
+ "tux-tab-all": "Všechno",
+ "tux-tab-untranslated": "Nepřeložené",
+ "tux-tab-outdated": "Zastaralé",
+ "tux-tab-translated": "Přeložené",
+ "tux-tab-unproofread": "Nezkontrolované",
+ "tux-edit": "Editovat",
+ "tux-status-optional": "Volitelná",
+ "tux-status-fuzzy": "Zastaralý",
+ "tux-status-proofread": "Zkontrolovaná",
+ "tux-status-translated": "Přeložená",
+ "tux-status-saving": "Ukládá se…",
+ "tux-status-unsaved": "Neuloženo",
+ "tux-editor-placeholder": "Váš překlad",
+ "tux-editor-paste-original-button-label": "Vložit zdrojový text",
+ "tux-editor-discard-changes-button-label": "Zahodit změny",
+ "tux-editor-save-button-label": "Uložit překlad",
+ "tux-editor-skip-button-label": "Přeskočit na další",
+ "tux-editor-cancel-button-label": "Storno",
+ "tux-editor-confirm-button-label": "Potvrdit překlad",
+ "tux-editor-shortcut-info": "Stiskněte „$1“ pro uložení, „$2“ pro přeskočení na další zprávu nebo „$3“ pro další zkratky.",
+ "tux-editor-edit-desc": "Upravit dokumentaci",
+ "tux-editor-add-desc": "Přidat dokumentaci",
+ "tux-editor-suggestions-title": "Návrhy",
+ "tux-editor-in-other-languages": "V jiných jazycích",
+ "tux-editor-need-more-help": "Potřebujete další pomoc?",
+ "tux-editor-ask-help": "Požádejte o více informací",
+ "tux-editor-tm-match": "$1% shoda",
+ "tux-warnings-more": "{{PLURAL:$1|$1 další|$1 další|$1 dalších}}",
+ "tux-warnings-hide": "skrýt",
+ "tux-editor-save-failed": "Ukládání překladu se nezdařilo: $1",
+ "tux-editor-n-uses": "použito {{PLURAL:$1|jednou|$1krát}}",
+ "tux-editor-message-desc-more": "Zobrazit více",
+ "tux-editor-message-desc-less": "Zobrazit méně",
+ "tux-editor-clear-translated": "Skrýt přeložené",
+ "tux-editor-proofreading-mode": "Korektury",
+ "tux-editor-translate-mode": "Seznam",
+ "tux-editor-proofreading-hide-own-translations": "Skrýt moje překlady",
+ "tux-editor-proofreading-show-own-translations": "Zobrazit moje překlady",
+ "tux-proofread-action-tooltip": "Označit jako zkontrolované",
+ "tux-proofread-edit-label": "Editovat",
+ "tux-editor-page-mode": "Stránka",
+ "tux-editor-outdated-warning": "Tento překlad možná potřebuje aktualizaci.",
+ "tux-editor-outdated-warning-diff-link": "Zobrazit rozdíly",
+ "tux-editor-doc-editor-placeholder": "Dokumentace ke zprávě",
+ "tux-editor-doc-editor-save": "Uložit dokumentaci",
+ "tux-editor-doc-editor-cancel": "Storno",
+ "tux-messagetable-more-messages": "Ještě $1 {{PLURAL:$1|zpráva|zprávy|zpráv}}",
+ "tux-messagetable-loading-messages": "{{PLURAL:$1|Načítá se hlášení|Načítají se hlášení}}…",
+ "tux-message-filter-placeholder": "Filtrovat seznam",
+ "tux-message-filter-result": "Pro „$2“ {{PLURAL:$1|nalezen 1 výsledek|nalezeny $1 výsledky|nalezeno $1 výsledků}}",
+ "tux-message-filter-advanced-button": "Rozšířené vyhledávání",
+ "tux-message-filter-optional-messages-label": "Volitelné zprávy",
+ "tux-proofread-translated-by-self": "Váš překlad",
+ "tux-empty-list-all": "Tato skupina zpráv je prázdná",
+ "tux-empty-list-all-guide": "Vyberte si k překladu jinou skupinu zpráv",
+ "tux-translate-page-no-such-group": "<strong>Uvedená skupina zpráv neexistuje.</strong> Zvolte jinou skupinu zpráv.",
+ "tux-empty-list-translated": "Žádné přeložené zprávy",
+ "tux-empty-list-translated-guide": "Můžete pomoci s překládáním",
+ "tux-empty-list-translated-action": "Překládat",
+ "tux-empty-no-messages-to-display": "Neexistují zprávy, které by se daly zobrazit.",
+ "tux-empty-there-are-optional": "V seznamu se nezobrazují volitelné zprávy",
+ "tux-empty-show-optional-messages": "Zobrazit volitelné zprávy",
+ "tux-empty-no-outdated-messages": "Žádné zastaralé překlady",
+ "tux-empty-nothing-to-proofread": "Není co kontrolovat",
+ "tux-empty-you-can-help-providing": "Můžete pomoci novými překlady.",
+ "tux-empty-nothing-new-to-proofread": "Nic nového ke kontrole",
+ "tux-empty-you-can-review-already-proofread": "Můžete zkontrolovat překlady, které již zkontrolovali jiní.",
+ "tux-empty-list-other": "Není co překládat",
+ "tux-empty-list-other-guide": "Můžete pomoci zkontrolovat existující překlady.",
+ "tux-empty-list-other-action": "Zkontrolovat překlady",
+ "tux-empty-list-other-link": "Zobrazit všechny zprávy",
+ "tux-editor-close-tooltip": "Zavřít",
+ "tux-editor-expand-tooltip": "Roztáhnout",
+ "tux-editor-collapse-tooltip": "Sbalit",
+ "tux-editor-message-tools-history": "Historie",
+ "tux-editor-message-tools-delete": "Smazat",
+ "tux-editor-message-tools-translations": "Všechny překlady",
+ "tux-editor-loading": "Načítá se…",
+ "translate-search-more-languages-info": "$1 {{PLURAL:$1|další jazyk|další jazyky|dalších jazyků}}",
+ "translate-statsbar-tooltip": "$1 % přeloženo, $2 % zkontrolováno",
+ "translate-statsbar-tooltip-with-fuzzy": "$1 % přeloženo, $2 % zkontrolováno, $3 % zastaralých",
+ "translate-search-more-groups-info": "$1 {{PLURAL:$1|další skupina|další skupiny|dalších skupin}}",
+ "translate-ulsdep-title": "Chyba konfigurace",
+ "translate-ulsdep-body": "Rozšíření Translate závisí na [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:UniversalLanguageSelector rozšíření Universal Language Selector]."
+}
diff --git a/MLEB/Translate/i18n/core/csb.json b/MLEB/Translate/i18n/core/csb.json
new file mode 100644
index 00000000..74a32c48
--- /dev/null
+++ b/MLEB/Translate/i18n/core/csb.json
@@ -0,0 +1,10 @@
+{
+ "@metadata": {
+ "authors": [
+ "Kaszeba"
+ ]
+ },
+ "translate": "Dolmôczë",
+ "translate-edit-in-other-languages": "Wiadło \"$1\" w jinych jãzëkach",
+ "translate-sidebar-alltrans": "W jinych jãzëkach"
+}
diff --git a/MLEB/Translate/i18n/core/cu.json b/MLEB/Translate/i18n/core/cu.json
new file mode 100644
index 00000000..242c3d38
--- /dev/null
+++ b/MLEB/Translate/i18n/core/cu.json
@@ -0,0 +1,17 @@
+{
+ "@metadata": {
+ "authors": [
+ "ОйЛ"
+ ]
+ },
+ "translate-page-language": "ѩꙁꙑкъ",
+ "translate-page-edit": "исправи",
+ "translate-edit-title": "исправлѥниѥ ⁖ $1 ⁖",
+ "translate-stats-edits": "мѣнꙑ",
+ "translate-translations-messagename": "имѧ :",
+ "translate-language": "ѩꙁꙑкъ",
+ "translate-mgs-column-language": "ѩꙁꙑкъ",
+ "tux-proofread-edit-label": "исправлѥниѥ",
+ "tux-editor-close-tooltip": "ꙁакрꙑи",
+ "tux-editor-message-tools-history": "їсторїꙗ"
+}
diff --git a/MLEB/Translate/i18n/core/cy.json b/MLEB/Translate/i18n/core/cy.json
new file mode 100644
index 00000000..d2636ec7
--- /dev/null
+++ b/MLEB/Translate/i18n/core/cy.json
@@ -0,0 +1,253 @@
+{
+ "@metadata": {
+ "authors": [
+ "Cymrodor",
+ "Lloffiwr",
+ "Robin Owain"
+ ]
+ },
+ "translate": "Cyfieithu",
+ "translate-desc": "[[Special:Translate|Tudalen arbennig]] at ddiben cyfieithu MediaWiki a mwy",
+ "translate-taskui-view": "Dangos pob neges",
+ "translate-taskui-untranslated": "Dangos negeseuon sydd heb eu cyfieithu eto",
+ "translate-taskui-optional": "Dangos negeseuon opsiynol",
+ "translate-taskui-acceptqueue": "Dim ond y negeseuon y gallaf nodi iddynt gael eu hadolygu",
+ "translate-taskui-reviewall": "Adolygu pob cyfieithiad",
+ "translate-taskui-export-to-file": "Allforio yn ei fformat cynhenid",
+ "translate-taskui-export-as-po": "Allforio i'w cyfieithu all-lein",
+ "translate-taction-translate": "Cyfieithu",
+ "translate-taction-proofread": "Adolygu",
+ "translate-taction-lstats": "Ystadegau rhyw iaith",
+ "translate-taction-mstats": "Ystadegau rhyw grŵp negeseuon",
+ "translate-taction-export": "Allforio",
+ "translate-taction-disabled": "Ni ellir gwneud y weithred hon ar y wici hwn.",
+ "translate-page-no-such-language": "Mae'r iaith honno'n annilys.",
+ "translate-page-no-such-group": "Mae'r grŵp hwnnw'n annilys.",
+ "translate-page-disabled": "Analluogwyd cyfieithu i'r iaith honno yn y grŵp hwn.\nRheswm:\n\n<em>$1</em>",
+ "translate-language-disabled": "Analluogwyd cyfieithu i'r iaith hon.",
+ "translate-page-settings-legend": "Gosodiadau",
+ "translate-page-group": "Grŵp",
+ "translate-page-language": "Iaith",
+ "translate-page-limit": "Terfyn",
+ "translate-page-limit-option": "$1 {{PLURAL:$1|neges}} i'r dudalen",
+ "translate-submit": "Cyrcher",
+ "translate-page-navigation-legend": "Llywio",
+ "translate-page-showing": "Yn dangos y negeseuon rhif $1 hyd $2 ymhlith cyfanswm o $3.",
+ "translate-page-showing-all": "Yn dangos $1 {{PLURAL:$1|neges}}.",
+ "translate-page-showing-none": "Dim negeseuon i'w dangos.",
+ "translate-next": "I'r dudalen nesaf",
+ "translate-prev": "I'r dudalen gynt",
+ "translate-page-description-legend": "Gwybodaeth am y grŵp",
+ "translate-page-description-hasoptional": "Mae'r grŵp hwn yn cynnwys negeseuon opsiynol.\nDoes dim ond angen eu cyfieithu pan fod orgraff eich iaith yn gofyn am eu cyfieithu, e.e. os oes rhaid osgoi defnyddio bylchau neu wrth drawslythrennu enwau priod. $1",
+ "translate-page-description-hasoptional-open": "Dangos negeseuon opsiynol.",
+ "translate-page-edit": "golygu",
+ "translate-ext-url": "<hr />Gwefan: $1",
+ "translate-optional": "(dewisol)",
+ "translate-ignored": "(anwybyddwyd)",
+ "translate-edit-title": "Golygu \"$1\"",
+ "translate-edit-definition": "Y neges wreiddiol",
+ "translate-edit-translation": "Cyfieithiad",
+ "translate-edit-contribute": "cofnodi eglurhad",
+ "translate-edit-no-information": "<em>Nid oes unrhyw wybodaeth wedi ei chofnodi am y neges hon eto.\nOs ydych yn gwybod ymhle neu ym mha fodd y defnyddir y neges hon, gallwch hwyluso gwaith y cyfieithwyr drwy gofnodi eglurhad arni.</em>",
+ "translate-edit-information": "Gwybodaeth am y neges ($1)",
+ "translate-edit-in-other-languages": "Y neges mewn ieithoedd eraill",
+ "translate-edit-committed": "Y cyfieithiad cyfredol yn y meddalwedd",
+ "translate-edit-warnings": "Rhybudd am gyfieithiad anghyflawn",
+ "translate-edit-tmsugs": "Cynigion gan gronfeydd cof cyfieithu a thrwy chyfieithu awtomatig",
+ "translate-edit-tmmatch-source": "Y testun gwreiddiol i'w gyfieithu: $1",
+ "translate-edit-tmmatch": "yn cyd-fynd $1%",
+ "translate-use-suggestion": "Bydd y cynnig hwn yn disodli'r cyfieithiad cyfredol.",
+ "translate-edit-nopermission": "Mae angen galluoedd cyfieithu arnoch i gyfieithu negeseuon.",
+ "translate-edit-askpermission": "Cael caniatâd",
+ "translate-magic-pagename": "Cyfieithu MediaWiki Estynedig",
+ "translate-magic-help": "Mae modd cyfieithu arallenwau ar dudalennau arbennig, geiriau hud ac enwau parthau.\n\nMae modd cael mwy nag un cyfieithiad ar arallenw tudalen arbennig neu ar air hud.\nGwahenir cyfieithiadau gan goma (,).\nDim ond un cyfieithiad gall enw parth ei gael.\n\nGall cyfieithu enw parthau sgwrs y prosiect, <code>sgwrs $1</code>, fod yn waith cymhleth. Mae <code>$1</code> yn cael ei ddisodli gan enw'r wefan (er enghraifft <code>{{ns:project_talk}}</code>).\nOs nad yw'n bosibl cyfieithu hwn yn ramadegol gywir heb dreiglo enw'r wefan neu ei newid mewn rhyw fodd, rhowch wybod ar [[Support]].\n\nMae angen i chi fod yn gyfieithydd er mwyn gallu rhoi newidiadau ar gadw.\nNi fydd y newidiadau yn cael eu rhoi ar gadw nes i chi bwyso'r botwm 'Cadwer' isod.",
+ "translate-magic-module": "Uned:",
+ "translate-magic-submit": "Cyrcher",
+ "translate-magic-cm-export": "Allforier",
+ "translate-magic-nothing-to-export": "Nid oes dim i'w allforio.",
+ "translate-magic-cm-to-be": "Darpar",
+ "translate-magic-cm-current": "Cyfredol",
+ "translate-magic-cm-original": "Gwreiddiol",
+ "translate-magic-cm-comment": "Sylw:",
+ "translate-magic-cm-save": "Cadw",
+ "translate-magic-cm-updatedusing": "Wedi ei ddiweddaru gan ddefnyddio [[Special:AdvancedTranslate|{{int:Translate-magic-pagename}}]]",
+ "translate-magic-cm-savefailed": "Methodd yr ymgais i gadw",
+ "translate-magic-special": "Arallenwau ar dudalennau arbennig",
+ "translate-magic-words": "Geiriau hud",
+ "translate-magic-namespace": "Enwau'r parthau",
+ "translate-magic-notsaved": "Ni roddwyd eich golygiad ar gadw!",
+ "translate-magic-errors": "Byddwch gystal â chywiro' r {{PLURAL:$1|gwall|gwall|gwallau}} cyfieithu canlynol:",
+ "translate-magic-saved": "Rhoddwyd eich newidiadau ar gadw.",
+ "translate-checks-parameters": "Ni ddefnyddir y {{PLURAL:$2|paramedr|paramedr|paramedrau}} canlynol:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-parameters-unknown": "Nid yw'r {{PLURAL:$2|paramedr|paramedr|paramedrau}} canlynol yn hysbys:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-balance": "Mae nifer y {{PLURAL:$2|cromfachau}} yn odrif, fel a ganlyn:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links": "Ymddengys bod nam ar y {{PLURAL:$2|cyswllt|cyswllt|$2 gyswllt|$2 cyswllt|£2 chyswllt|$2 cyswllt}} canlynol:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links-missing": "Mae'r {{PLURAL:$2|cyswllt|cyswllt|$2 gyswllt|$2 cyswllt|£2 chyswllt|$2 cyswllt}} canlynol yn eisiau:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-xhtml": "Rhowch {{PLURAL:$2|tag|tag|tagiau}} cywir yn lle'r rhai canlynol:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-plural": "Mae'r gwreiddiol yn defnyddio <nowiki>{{PLURAL:}}</nowiki> ond nid y cyfieithiad.",
+ "translate-checks-pagename": "Mae'r parth yn y cyfieithiad yn wahanol i'r parth yn y neges wreiddiol",
+ "translate-checks-format": "Nid yw'r cyfieithiad yn gydnaws â'r gwreiddiol, ynteu mae cystrawen annilys ynddo: $1",
+ "translate-pref-nonewsletter": "Peidier ag anfon cylchlythyron e-bost ataf",
+ "translate-pref-editassistlang": "Ieithoedd cynorthwyol:",
+ "prefs-translate": "Dewisiadau cyfieithu",
+ "translate-pref-editassistlang-help": "Rhestr coma-wahanedig o godau iaith.\nWrth gyfieithu neges, bydd cyfieithiadau ohono yn yr ieithoedd hyn i'w gweld.\nBydd y rhestr diofyn o ieithoedd yn dibynnu ar eich iaith chi.",
+ "right-translate": "Golygu gan ddefnyddio'r rhyngwyneb cyfieithu",
+ "right-translate-manage": "Rheoli grwpiau negeseuon",
+ "action-translate-manage": "rheoli grwpiau negeseuon",
+ "right-translate-import": "Mewnforio cyfieithiadau all-lein",
+ "action-translate-import": "mewnforio cyfieithiadau all-lein",
+ "right-translate-messagereview": "Adolygu cyfieithiadau",
+ "right-translate-groupreview": "Newid statws llif gwaith y grwpiau negeseuon",
+ "translate-rc-translation-filter": "Hidlo'r canlyniadau:",
+ "translate-rc-translation-filter-no": "Dim hidl",
+ "translate-rc-translation-filter-only": "Dangos cyfieithiadau'n unig",
+ "translate-rc-translation-filter-filter": "Peidio dangos cyfieithiadau",
+ "translate-rc-translation-filter-site": "Dangos newidiadau i negeseuon y wefan yn unig",
+ "translationstats": "Ystadegau cyfieithu",
+ "translate-stats-edits": "Golygiadau",
+ "translate-stats-users": "Cyfieithwyr",
+ "translate-stats-registrations": "Defnyddwyr newydd",
+ "translate-stats-reviews": "Adolygiadau",
+ "translate-stats-reviewers": "Adolygwyr",
+ "translate-statsf-intro": "Gallwch gynhyrchu ystadegau syml gyda'r ffurflen hon.\nMae gan pob gwerth derfyn uchaf ac isaf.",
+ "translate-statsf-options": "Dewisiadau'r graff",
+ "translate-statsf-width": "Lled mewn picselau:",
+ "translate-statsf-height": "Uchder mewn picselau:",
+ "translate-statsf-days": "Cyfnod mewn diwrnodau:",
+ "translate-statsf-start": "Dyddiad dechrau:",
+ "translate-statsf-scale": "Gronynnedd:",
+ "translate-statsf-scale-months": "Misoedd",
+ "translate-statsf-scale-weeks": "Wythnosau",
+ "translate-statsf-scale-days": "Diwrnodau",
+ "translate-statsf-scale-hours": "Oriau",
+ "translate-statsf-count": "Mesur:",
+ "translate-statsf-count-edits": "Nifer y golygiadau",
+ "translate-statsf-count-users": "Cyfieithwyr gweithgar",
+ "translate-statsf-count-registrations": "Defnyddwyr newydd",
+ "translate-statsf-count-reviews": "Adolygiadau o gyfieithiadau",
+ "translate-statsf-count-reviewers": "Adolygwyr",
+ "translate-statsf-language": "Rhestr coma-wahanedig o godau iaith:",
+ "translate-statsf-group": "Rhestr coma-wahanedig o godau grŵp:",
+ "translate-statsf-submit": "Rhagolwg",
+ "translate-tag-category": "Tudalennau y gellir eu cyfieithu",
+ "translate-tag-page-desc": "Cyfieithiad y dudalen wici [[$2|$1]].",
+ "translate-sidebar-alltrans": "Ieithoedd eraill",
+ "translations": "Yr holl gyfieithiadau",
+ "translations-summary": "Gosodwch enw neges isod, er mwyn gweld yr holl gyfieithiadau ohoni sydd ar gael.",
+ "translate-translations-no-message": "Nid yw \"$1\" yn neges y gellir ei chyfieithu",
+ "translate-translations-none": "Nid oes unrhyw gyfieithiadau o \"$1\" ar gael",
+ "translate-translations-count": "Cafwyd hyd i {{PLURAL:$1||un cyfieithiad|$1 gyfieithiad|$1 chyfieithiad|$1 chyfieithiad|$1 cyfieithiad}}.",
+ "translate-translations-fieldset-title": "Neges",
+ "translate-translations-messagename": "Enw:",
+ "translate-translations-project": "Prosiect:",
+ "translate-translations-history-short": "h",
+ "languagestats": "Ystadegau ieithyddol",
+ "languagestats-summary": "Mae'r dudalen hon yn dangos ystadegau cyfieithu yr holl grwpiau negeseuon ar gyfer rhyw iaith.",
+ "languagestats-stats-for": "Ystadegau cyfieithu ar gyfer $1 ($2).",
+ "languagestats-recenttranslations": "cyfieithiadau diweddar",
+ "translate-langstats-expand": "ehanger",
+ "translate-langstats-collapse": "crebacher",
+ "translate-langstats-expandall": "ehangu'r cwbl",
+ "translate-langstats-collapseall": "crebachu'r cwbl",
+ "translate-language-code": "Côd iaith",
+ "translate-language-code-field-name": "Côd iaith:",
+ "translate-suppress-complete": "Hepgor dangos y grwpiau o negeseuon sydd wedi eu llwyr gyfieithu",
+ "translate-ls-noempty": "Hepgor dangos y grwpiau o negeseuon sydd heb eu cyfieithu o gwbl",
+ "translate-language": "Iaith",
+ "translate-total": "Negeseuon",
+ "translate-untranslated": "Heb eu cyfieithu",
+ "translate-percentage-complete": "Parod",
+ "translate-percentage-fuzzy": "Ag angen diweddaru",
+ "translate-languagestats-overall": "Yr holl grwpiau negeseuon gyda'i gilydd",
+ "translate-ls-submit": "Dangoser yr ystadegau",
+ "translate-ls-column-group": "Grŵp negeseuon",
+ "translate-mgs-pagename": "Ystadegau am grŵp negeseuon",
+ "translate-mgs-fieldset": "Dewisiadau arddangos",
+ "translate-mgs-group": "Grŵp negeseuon:",
+ "translate-mgs-nocomplete": "Peidio dangos ieithoedd sydd wedi eu cyfieithu'n llwyr",
+ "translate-mgs-noempty": "Peidio dangos ieithoedd nad ydynt wedi eu cyfieithu o gwbl",
+ "translate-mgs-submit": "Dangoser yr ystadegau",
+ "translate-mgs-column-language": "Iaith",
+ "translate-mgs-totals": "Yr holl ieithoedd gyda'i gilydd",
+ "supportedlanguages": "Ieithoedd a gynhelir",
+ "supportedlanguages-summary": "Mae'r dudalen hon yn dangos rhestr yr holl ieithoedd a gynhelir gan {{SITENAME}}, ynghyd ag enwau'r cyfieithwyr sy'n gweithio ar yr iaith honno.\nYmddengys enw cyfieithydd yn fwy o faint, po fwyaf yw nifer ei gyfieithiadau.\nMae lliw y llinell o dan yr enw yn dangos pa mor ddiweddar y bu'n gweithio yma.",
+ "supportedlanguages-colorlegend": "Yr allwedd i'r lliwiau: Mae $1 diwrnod neu fwy ers y cyfieithiad diwethaf.",
+ "supportedlanguages-translators": "{{PLURAL:$2|Cyfieithydd|Cyfieithwyr}}: $1",
+ "supportedlanguages-recenttranslations": "chyfieithiadau diweddar",
+ "supportedlanguages-count": "Cynhelir $1 {{PLURAL:$1|iaith}} i gyd.",
+ "translate-save": "Cadw ($1)",
+ "translate-jssti-add": "Ychwanegu at y rhestr",
+ "translate-manage-action-import": "Mewnforio",
+ "translate-manage-action-ignore": "Anwybyddu",
+ "translate-manage-action-fuzzy": "Mewnforio a gosod marc fuzzy",
+ "importtranslations": "Mewnforio cyfieithiadau",
+ "translate-import-from-local": "Ffeil lleol i'w llwytho:",
+ "translate-import-load": "Llwyther y ffeil",
+ "translate-import-err-dl-failed": "Heb allu nôl y ffeil:\n$1",
+ "translate-import-err-ul-failed": "Ni lwyddodd llwytho'r ffeil",
+ "translate-js-summary": "Crynodeb:",
+ "translate-js-save": "Cadw",
+ "translate-js-next": "Cadwer ac agorer y nesaf",
+ "translate-js-nonext": "Dyma'r neges olaf ar y dudalen hon.",
+ "translate-js-skip": "Neidio i'r nesaf",
+ "translate-js-history": "Hynt y cyfieithu",
+ "translate-js-support": "Ceisio cymorth",
+ "translate-js-support-unsaved-warning": "Mae gennych gyfieithiadau heb eu cadw",
+ "translate-gs-pos": "Safle",
+ "translate-gs-code": "Cod",
+ "translate-gs-continent": "Cyfandir",
+ "translate-gs-speakers": "Siaradwyr",
+ "translate-gs-score": "Sgôr",
+ "translate-gs-multiple": "Mwy nag un",
+ "translate-gs-count": "Nifer",
+ "translate-gs-total": "Cyfanswm",
+ "translate-gs-avgscore": "Sgôr ar gyf.",
+ "translate-documentation-language": "Nodiadau ar y neges",
+ "translate-searchprofile": "Cyfieithiadau",
+ "translate-searchprofile-tooltip": "Chwilio ymhlith yr holl gyfieithiadau",
+ "translate-search-languagefilter": "Hidlo yn ôl iaith:",
+ "translate-search-nofilter": "Dim hidlo",
+ "translate-messagereview-submit": "Nodi iddi gael ei hadolygu",
+ "translate-messagereview-progress": "Wrthi'n nodi...",
+ "translate-messagereview-done": "Adolygwyd",
+ "translate-messagereview-reviews": "Adolygwyd gan {{PLURAL:$1|neb|$1 defnyddiwr|$1 ddefnyddiwr|$1 defnyddiwr}}",
+ "api-error-invalidrevision": "Ni chafwyd hyd i'r cyfieithiad",
+ "api-error-unknownmessage": "Ni chafwyd hyd i'r neges",
+ "api-error-fuzzymessage": "Dynodwyd y cyfieithiad gyda fuzzy",
+ "log-name-translationreview": "Lòg adolygu cyfieithiadau",
+ "translate-workflow-state-": "(heb ei osod)",
+ "translate-workflowstatus": "Cyflwr: $1",
+ "translate-workflow-set-do": "Gosoder",
+ "translate-workflow-set-doing": "Wrthi'n gosod...",
+ "translate-workflow-set-done": "Gosodwyd!",
+ "translate-workflow-set-error-alreadyset": "Mae'r cyflwr gofynedig yn union debyg i'r cyflwr presennol.",
+ "translate-stats-workflow": "Cyflwr",
+ "translate-workflowgroup-label": "Cyflyrau'r llif gwaith",
+ "translate-dynagroup-recent-label": "Cyfieithiadau diweddar",
+ "translate-gethelp": "Cymorth",
+ "translate-msggroupselector-search-all": "Oll",
+ "translate-msggroupselector-search-recent": "Diweddar",
+ "tux-tab-all": "Oll",
+ "tux-tab-untranslated": "Heb eu cyfieithu",
+ "tux-tab-outdated": "Ag angen diweddaru",
+ "tux-tab-translated": "Cyfieithwyd",
+ "tux-tab-unproofread": "Heb eu hadolygu",
+ "tux-edit": "Golygu",
+ "tux-status-optional": "Dewisol",
+ "tux-status-fuzzy": "Ag angen diweddaru",
+ "tux-status-proofread": "Adolygwyd",
+ "tux-status-translated": "Cyfieithwyd",
+ "tux-status-saving": "Wrthi'n cadw...",
+ "tux-status-unsaved": "Heb ei gadw",
+ "tux-editor-placeholder": "Eich cyfieithiad",
+ "tux-editor-paste-original-button-label": "Gluder y testun gwreiddiol",
+ "tux-editor-discard-changes-button-label": "Rhoi'r newidiadau heibio",
+ "tux-editor-save-button-label": "Cadwer y cyfieithiad",
+ "tux-editor-skip-button-label": "Neidio i'r nesaf",
+ "tux-editor-cancel-button-label": "Canslo",
+ "tux-editor-confirm-button-label": "Cadarnheuer y cyfieithiad",
+ "tux-editor-edit-desc": "Golygu'r nodiadau",
+ "tux-editor-suggestions-title": "Awgrymiadau",
+ "tux-editor-in-other-languages": "Mewn ieithoedd eraill",
+ "tux-editor-need-more-help": "Oes angen mwy o gymorth?"
+}
diff --git a/MLEB/Translate/i18n/core/da.json b/MLEB/Translate/i18n/core/da.json
new file mode 100644
index 00000000..11c61112
--- /dev/null
+++ b/MLEB/Translate/i18n/core/da.json
@@ -0,0 +1,388 @@
+{
+ "@metadata": {
+ "authors": [
+ "Byrial",
+ "Christian List",
+ "Emilkris33",
+ "Hylle",
+ "Jon Harald Søby",
+ "Kaare",
+ "MGA73",
+ "Nghtwlkr",
+ "Peter Alberti",
+ "Sarrus"
+ ]
+ },
+ "translate": "Oversæt",
+ "translate-desc": "[[Special:Translate|Specialside]] til oversættelse af MediaWiki og andet",
+ "translate-taskui-view": "Vis alle beskeder",
+ "translate-taskui-untranslated": "Vis uoversatte beskeder",
+ "translate-taskui-optional": "Vis valgfrie beskeder",
+ "translate-taskui-acceptqueue": "Kun beskeder som jeg kan korrekturlæse",
+ "translate-taskui-reviewall": "Lav korrekturlæsning af alle oversættelser",
+ "translate-taskui-export-to-file": "Eksportér i oprindeligt format",
+ "translate-taskui-export-as-po": "Eksportér til offline oversættelse",
+ "translate-taction-translate": "Oversæt",
+ "translate-taction-proofread": "Læs korrektur",
+ "translate-taction-lstats": "Sprogstatistik",
+ "translate-taction-mstats": "Statistik for beskedgruppe",
+ "translate-taction-export": "Eksportér",
+ "translate-taction-disabled": "Denne handling er deaktiveret på denne wiki.",
+ "translate-page-no-such-language": "Det angivne sprog er ugyldigt.",
+ "translate-page-no-such-group": "Den angivne gruppe er ugyldig.",
+ "translate-page-disabled": "Oversættelser til dette sprog i denne gruppe er slået fra.\nÅrsag:\n\n<em>$1</em>",
+ "translate-language-disabled": "Oversættelse til dette sprog er slået fra.",
+ "translate-page-settings-legend": "Indstillinger",
+ "translate-page-group": "Gruppe",
+ "translate-page-language": "Sprog",
+ "translate-page-limit": "Antal",
+ "translate-page-limit-option": "$1 {{PLURAL:$1|besked|beskeder}} per side",
+ "translate-submit": "Hent",
+ "translate-page-navigation-legend": "Navigation",
+ "translate-page-showing": "Viser besked nr. $1 til $2 af i alt $3.",
+ "translate-page-showing-all": "Viser $1 {{PLURAL:$1|besked|beskeder}}.",
+ "translate-page-showing-none": "Ingen beskeder at vise.",
+ "translate-next": "Næste side",
+ "translate-prev": "Forrige side",
+ "translate-page-description-legend": "Information om gruppen",
+ "translate-page-description-hasoptional": "Denne beskedgruppe indeholder valgfrie beskeder.\nValgfrie beskeder bør kun oversættes, hvis dit sprog har særlige krav som for eksempel ikke at bruge mellemrum eller at transskribere egennavne. $1",
+ "translate-page-description-hasoptional-open": "Vis valgfrie beskeder.",
+ "translate-page-edit": "redigér",
+ "translate-ext-url": "<hr />Webside: $1",
+ "translate-optional": "(valgfri)",
+ "translate-ignored": "(ignoreres)",
+ "translate-edit-title": "Rediger \"$1\"",
+ "translate-edit-definition": "Beskeden som skal oversættes",
+ "translate-edit-translation": "Oversættelse",
+ "translate-edit-contribute": "bidrag",
+ "translate-edit-no-information": "<em>Denne besked har ingen dokumentation.\nHvis du ved hvor eller hvordan denne besked bruges, kan du hjælpe andre oversættere ved at tilføje dokumentation til beskeden.</em>",
+ "translate-edit-information": "Information om beskeden ($1)",
+ "translate-edit-in-other-languages": "Beskeden på andre sprog",
+ "translate-edit-committed": "Nuværende oversættelse i programmet",
+ "translate-edit-warnings": "Advarsler om ufuldstændige oversættelser",
+ "translate-edit-tmsugs": "Forslag fra oversættelseshukommelsen",
+ "translate-edit-tmmatch-source": "Kildetekst til oversættelse: $1",
+ "translate-edit-tmmatch": "$1 % overensstemmelse",
+ "translate-use-suggestion": "Erstat den nuværende oversættelse med dette forslag.",
+ "translate-edit-nopermission": "Du skal have oversættelsesrettigheder for at kunne oversætte besekeder.",
+ "translate-edit-askpermission": "Få tilladelse",
+ "translate-magic-pagename": "Udvidet MediaWiki-oversættelse",
+ "translate-magic-help": "Du kan oversætte specialsiders aliaser, magiske ord og navnerumsnavne.\n\nSpecialsiders aliaser og magiske ord kan have flere oversættelser.\nOversættelserne adskilles med komma (,).\nNavnerum kan kun have én oversættelse.\n\nOversættelse af projektdiskussionsnavnerummet <code>$1 talk</code> kan være kompliceret.\n<code>$1</code> erstattes af projektets webstedsnavn (eksempelvis <code>{{ns:project_talk}}</code>).\nHvis det ikke er muligt på dit sprog, at danne en meningsgivende sætning uden at ændre webstedsnavnet, så giv os besked på [[Support]].\n\nDu skal være oversætter for at kunne gemme ændringer.\nÆndringerne gemmes ikke før du klikker på gem-knappen herunder.",
+ "translate-magic-module": "Modul:",
+ "translate-magic-submit": "Hent",
+ "translate-magic-cm-export": "Eksportér",
+ "translate-magic-nothing-to-export": "Der er intet at eksportere.",
+ "translate-magic-cm-to-be": "Skal være",
+ "translate-magic-cm-current": "Nuværende",
+ "translate-magic-cm-original": "Original",
+ "translate-magic-cm-comment": "Kommentar:",
+ "translate-magic-cm-save": "Gem",
+ "translate-magic-cm-updatedusing": "Opdateret med [[Special:AdvancedTranslate|{{int:Translate-magic-pagename}}]]",
+ "translate-magic-cm-savefailed": "Gemning mislykkedes",
+ "translate-magic-special": "Specialside-aliaser",
+ "translate-magic-words": "Magiske ord",
+ "translate-magic-namespace": "Navnerumsnavne",
+ "translate-magic-notsaved": "Din redigering er ikke gemt!",
+ "translate-magic-errors": "Ret venligst følgende {{PLURAL:$1|fejl|fejl}} i oversættelserne:",
+ "translate-magic-saved": "Dine ændringer er gemt.",
+ "translate-checks-parameters": "Følgende {{PLURAL:$2|parameter|parametre}} bruges ikke:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-parameters-unknown": "Følgende {{PLURAL:$2|parameter er ukendt|parametre er ukendte}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-balance": "Der er et ulige antal {{PLURAL:$2|parenteser|parenteser}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links": "Følgende {{PLURAL:$2|henvisning er problematisk|$2 henvisninger er problematiske}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links-missing": "Følgende {{PLURAL:$2|henvisning|$2 henvisninger}} mangler:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-xhtml": "Erstat venligst følgende {{PLURAL:$2|tag|$2 tags}} med de korrekte:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-plural": "Originalen bruger <nowiki>{{PLURAL:}}</nowiki>, men oversættelsen gør det ikke.",
+ "translate-checks-plural-forms": "<nowiki>{{PLURAL:}}</nowiki> fik {{PLURAL:$1|en form|$1 forme}}, men {{PLURAL:$2|kun en form|$2 forme}} er understøttet (fraregnet 0=- og 1=-forme).",
+ "translate-checks-plural-dupe": "<nowiki>{{PLURAL:}}</nowiki> har en gentaget form til sidst. <nowiki>{{PLURAL:$1|får|får}}</nowiki> bør skrives som <nowiki>{{PLURAL:$1|får}}</nowiki>.",
+ "translate-checks-pagename": "Navnerum er anderledes end i originalen",
+ "translate-checks-format": "Denne oversættelse følger ikke originalen eller har ugyldig syntaks: $1",
+ "translate-checks-escape": "Følgende undvigesekvenser kan være fejltagelser: <strong>$1</strong>",
+ "translate-checks-parametersnotequal": "Antallet af parametre er {{PLURAL:$1|$1}}; det burde være {{PLURAL:$2|$2}}.",
+ "translate-checks-malformed": "<nowiki>$1</nowiki> er fejlbehæftet.",
+ "translate-checks-fudforum-syntax": "Brug <nowiki>$1</nowiki> i stedet for <nowiki>$2</nowiki> i dette projekt.",
+ "translate-pref-nonewsletter": "Send ikke e-mail-nyhedsbreve til mig",
+ "translate-pref-editassistlang": "Hjælpesprog:",
+ "prefs-translate": "Oversættelsesindstillinger",
+ "translate-pref-editassistlang-help": "Kommasepareret liste med sprogkoder.\nOversættelsen af en besked til disse sprog vises når du oversætter.\nStandardlisten afhænger af dit sprog.",
+ "translate-pref-editassistlang-bad": "Ugyldig sprogkode i listen:\n<nowiki>$1</nowiki>.",
+ "right-translate": "Redigere med oversættelsesgrænsefladen",
+ "right-translate-manage": "Administrere beskedgrupper",
+ "action-translate-manage": "administrere beskedgrupper",
+ "right-translate-import": "Importere offline oversættelser",
+ "action-translate-import": "importere offline oversættelser",
+ "right-translate-messagereview": "Læs korrektur",
+ "right-translate-groupreview": "Ændring af workflowstatus på meddelelsesgrupper",
+ "translate-rc-translation-filter": "Filtrér oversættelser:",
+ "translate-rc-translation-filter-no": "Gør ingenting",
+ "translate-rc-translation-filter-only": "Vis kun oversættelser",
+ "translate-rc-translation-filter-filter": "Vis ikke oversættelser",
+ "translate-rc-translation-filter-site": "Vis kun systembeskeder uden sprogkode",
+ "translationstats": "Oversættelsesstatistik",
+ "translate-stats-edits": "Redigeringer",
+ "translate-stats-users": "Oversættere",
+ "translate-stats-registrations": "Registreringer",
+ "translate-stats-reviews": "Korrekturlæsninger",
+ "translate-stats-reviewers": "Korrekturlæsere",
+ "translate-statsf-intro": "Du kan generere enkle statistikker med denne formular.\nAlle værdier har øvre og nedre grænser.",
+ "translate-statsf-options": "Grafindstillinger",
+ "translate-statsf-width": "Bredde i pixels:",
+ "translate-statsf-height": "Højde i pixels:",
+ "translate-statsf-days": "Tidsperiode i dage:",
+ "translate-statsf-start": "Startdato:",
+ "translate-statsf-scale": "Tidsopløsning:",
+ "translate-statsf-scale-months": "Måneder",
+ "translate-statsf-scale-weeks": "Uger",
+ "translate-statsf-scale-days": "Dage",
+ "translate-statsf-scale-hours": "Timer",
+ "translate-statsf-count": "Måling:",
+ "translate-statsf-count-edits": "Antal redigeringer",
+ "translate-statsf-count-users": "Aktive oversættere",
+ "translate-statsf-count-registrations": "Nye brugere",
+ "translate-statsf-count-reviews": "Oversættelseskorrekturlæsninger",
+ "translate-statsf-count-reviewers": "Korrekturlæsere",
+ "translate-statsf-language": "Kommasepareret liste med sprogkoder:",
+ "translate-statsf-group": "Kommasepareret liste med gruppekoder:",
+ "translate-statsf-submit": "Forhåndsvisning",
+ "translate-tag-category": "Sider som kan oversættes",
+ "translate-tag-page-desc": "Oversættelse af wikisiden [[$2|$1]].",
+ "translate-sidebar-alltrans": "På andre sprog",
+ "translations": "Alle oversættelser",
+ "translations-summary": "Skriv navnet på en besked nedenfor for at vise alle tilgængelige oversættelser.",
+ "translate-translations-no-message": "\"$1\" er ikke en besked som kan oversættes.",
+ "translate-translations-none": "Der er ingen oversættelser af \"$1\"",
+ "translate-translations-count": "Fandt {{PLURAL:$1|en oversættelse|$1 oversættelser}}.",
+ "translate-translations-fieldset-title": "Besked",
+ "translate-translations-messagename": "Navn:",
+ "translate-translations-project": "Projekt:",
+ "translate-translations-including-no-param": "Angiv venligst en gyldig beskednøgle i undersiderparameteren",
+ "translate-translations-history-short": "h",
+ "languagestats": "Sprogstatistik",
+ "languagestats-summary": "Denne side viser oversættelsesstatistik for alle beskedgrupper for et sprog.",
+ "languagestats-stats-for": "Oversættelsesstatistik for $1 ($2).",
+ "languagestats-recenttranslations": "seneste oversættelser",
+ "translate-langstats-incomplete": "Nogle af statistikkerne på denne side er ufuldstændige. Genindlæs siden for at få yderligere statistik.",
+ "translate-langstats-expand": "fold ud",
+ "translate-langstats-collapse": "fold sammen",
+ "translate-langstats-expandall": "fold alle ud",
+ "translate-langstats-collapseall": "fold alle sammen",
+ "translate-language-code": "Sprogkode",
+ "translate-language-code-field-name": "Sprogkode:",
+ "translate-suppress-complete": "Vis ikke beskedgrupper som er fuldt oversatte",
+ "translate-ls-noempty": "Vis ikke beskedgrupper, som er helt uoversatte",
+ "translate-language": "Sprog",
+ "translate-total": "Beskeder",
+ "translate-untranslated": "Uoversatte",
+ "translate-percentage-complete": "Færdiggørelse",
+ "translate-percentage-fuzzy": "Forældede",
+ "translate-languagestats-overall": "Alle beskedgrupper lagt sammen",
+ "translate-ls-submit": "Vis statistik",
+ "translate-ls-column-group": "Beskedgruppe",
+ "translate-mgs-pagename": "Statistik for beskedgruppe",
+ "translate-mgs-fieldset": "Visningsindstillinger",
+ "translate-mgs-group": "Beskedgruppe:",
+ "translate-mgs-nocomplete": "Vis ikke sprog, som har en komplet oversættelse",
+ "translate-mgs-noempty": "Vis ikke sprog, som ikke har nogen oversættelser",
+ "translate-mgs-submit": "Vis statistik",
+ "translate-mgs-column-language": "Sprog",
+ "translate-mgs-totals": "Alle sprog sammenlagt",
+ "translate-mgs-invalid-group": "Den angivne gruppe, $1, findes ikke.",
+ "translate-mgs-nothing": "Der er intet at vise for den ønskede statistik.",
+ "supportedlanguages": "Understøttede sprog",
+ "supportedlanguages-summary": "Denne side viser en liste over alle de sprog, der understøttes af {{SITENAME}},\nsammen med navnene på de oversættere, der arbejder på dette sprog.\n\nJo flere redigeringer, en oversætter har bidraget med, jo større skrift bruges til navnet.\nUnderstregningsfarven angiver, hvor nyligt en oversætter har været aktiv.",
+ "supportedlanguages-colorlegend": "Forklaring til farven: seneste oversættelse var for $1 dage siden.",
+ "supportedlanguages-translators": "{{PLURAL:$2|Oversætter|Oversættere}}: $1",
+ "supportedlanguages-recenttranslations": "seneste oversættelser",
+ "supportedlanguages-count": "$1 {{PLURAL:$1|sprog|sprog}} i alt.",
+ "supportedlanguages-activity": "$1: $2 {{PLURAL:$2|redigering|redigeringer}} - seneste redigering var for $3 {{PLURAL:$3|dag|dage}} siden",
+ "translate-save": "Gem ($1)",
+ "translate-jssti-add": "Tilføj til listen",
+ "managemessagegroups": "Håndtering af beskedgrupper",
+ "translate-smg-notallowed": "Du har ikke tilladelse til at udføre denne handling.",
+ "translate-smg-nochanges": "Der er ingen ændringer at behandle.",
+ "translate-smg-submit": "Indsend ændringer til behandling",
+ "translate-smg-submitted": "Meddelelsesdefinitioner er opdateret. Ændringer bliver behandlet i baggrunden.",
+ "translate-smg-more": "Der vil være flere ændringer at behandle efter indsendelse af disse ændringer.",
+ "translate-smg-left": "Meddelelsesindhold i wiki",
+ "translate-smg-right": "Indkommende ændringer",
+ "translate-manage-import-diff": "Besked $1 | Handlinger: $2",
+ "translate-manage-import-new": "Ny meddelelse $1",
+ "translate-manage-import-deleted": "Slettet meddelelse $1",
+ "translate-manage-action-import": "Importér",
+ "translate-manage-action-conflict": "Importér og markér som forældet",
+ "translate-manage-action-ignore": "Ignorér",
+ "translate-manage-action-fuzzy": "Importer og markér som forældet",
+ "translate-manage-nochanges": "Der er ingen ændringer i meddelelsesdefinitionerne for denne gruppe.",
+ "translate-manage-nochanges-other": "Der var ingen ændringer til dette sprog.\nBrug linket nedenfor til at vende tilbage til visning af gruppedetaljer.",
+ "translate-manage-inconsistent": "Opdagede en inkonsistens i anmodningen.\nTjek venligst for ændringer og prøv igen.\nDetaljer: $1.",
+ "translate-manage-toolong": "Den maksimale udførelsestid på $1 {{PLURAL:$1|sekund|sekunder}} er overskredet.\nSend venligst formularen igen for at fortsætte behandlingen.",
+ "translate-manage-import-summary": "Importerer en ny version fra ekstern kilde",
+ "translate-manage-conflict-summary": "Importerer en ny version fra en ekstern kilde.\nTjek venligst.",
+ "translate-manage-fuzzy-summary": "Definitionen af beskeden er blevet ændret",
+ "translate-manage-submit": "Udfør",
+ "translate-manage-intro-other": "Nedenfor er listen over ændringer af oversættelser for sproget $1.\nGennemgå venligst ændringerne og vælg en handling du ønsker at foretage for hver ændring.\nHvis du vælger at ignorere ændringer, er denne handling kun midlertidig.",
+ "translate-manage-import-ok": "Importeret: $1",
+ "translate-manage-import-done": "Import færdig!",
+ "importtranslations": "Importér oversættelser",
+ "translate-import-from-local": "Upload af lokal fil:",
+ "translate-import-load": "Indlæs fil",
+ "translate-import-err-dl-failed": "Kunne ikke hente filen:\n$1",
+ "translate-import-err-ul-failed": "Fil upload lykkedes ikke",
+ "translate-import-err-invalid-title": "Det angivne filnavn <nowiki>$1</nowiki> var ugyldig.",
+ "translate-import-err-no-such-file": "Fil <nowiki>$1</nowiki> eksisterer ikke eller er ikke blevet uploadet lokalt.",
+ "translate-import-err-stale-group": "Beskedgruppen, som denne fil tilhører, findes ikke.",
+ "translate-import-err-no-headers": "Filen er ikke en velformateret Gettext-fil i Oversæt-udvidelsens format:\nKan ikke bestemme gruppe og sprog fra fil-headere.",
+ "translate-import-err-warnings": "Filen er ikke velformateret.\nSørg for, at din editor ikke fjerner msgctxt-felter.\nDetaljer: $1",
+ "translate-js-summary": "Beskrivelse:",
+ "translate-js-save": "Gem",
+ "translate-js-next": "Gem og åben næste",
+ "translate-js-nonext": "Dette var den sidste besked på denne side.",
+ "translate-js-skip": "Gå til næste",
+ "translate-js-save-failed": "Lagring mislykkedes. Rapporter venligst denne fejl.",
+ "translate-js-history": "Oversættelseshistorik",
+ "translate-js-support": "Stil spørgsmål",
+ "translate-js-support-title": "Spørg om hjælp, hvis der ikke er nok information til at oversætte denne besked korrekt.",
+ "translate-js-support-unsaved-warning": "Du har ikke-gemte oversættelser.",
+ "translate-gs-pos": "Pos.",
+ "translate-gs-code": "Kode",
+ "translate-gs-continent": "Kontinent",
+ "translate-gs-speakers": "Talere",
+ "translate-gs-score": "Point",
+ "translate-gs-multiple": "Flere",
+ "translate-gs-count": "Antal",
+ "translate-gs-total": "I alt",
+ "translate-gs-avgscore": "Gennemsnitlig point",
+ "translate-documentation-language": "Beskeddokumentation",
+ "translate-searchprofile": "Oversættelser",
+ "translate-searchprofile-tooltip": "Søg i alle oversættelser",
+ "translate-search-languagefilter": "Filtrer efter sprog:",
+ "translate-search-nofilter": "Ingen filtrering",
+ "translate-messagereview-submit": "Markér som korrekturlæst",
+ "translate-messagereview-progress": "Markerer som korrekturlæst ...",
+ "translate-messagereview-failure": "Markering som korrekturlæst mislykkedes: $1",
+ "translate-messagereview-done": "Korrekturlæst",
+ "translate-messagereview-reviews": "Korrekturlæst af {{PLURAL:$1|én bruger|$1 brugere}}",
+ "translate-messagereview-reviewswithyou": "Korrekturlæst af {{PLURAL:$1|dig|$1 brugere inklusive dig}}",
+ "api-error-invalidrevision": "Oversættelsen blev ikke fundet",
+ "api-error-unknownmessage": "Beskeden blev ikke fundet",
+ "api-error-fuzzymessage": "Oversættelse er markeret som forældet",
+ "api-error-owntranslation": "Du kan ikke korrekturlæse dine egne oversættelser",
+ "translate-messagereview-no-fuzzy": "Forældede meddelelser kan ikke markeres som korrekturlæste.",
+ "translate-messagereview-no-own": "Du kan ikke korrekturlæse dine egne oversættelser.",
+ "translate-messagereview-doit": "Markér denne oversættelse som korrekturlæst.",
+ "log-name-translationreview": "Log for oversættelseskorrektur",
+ "log-description-translationreview": "Log over alle korrekturlæsninger af oversættelser og meddelelsesgrupper.",
+ "logentry-translationreview-message": "$1 {{GENDER:$2|korrekturlæste}} oversættelsen $3",
+ "logentry-translationreview-group": "$1 {{GENDER:$2|ændrede}} status for oversættelser til $4 af $3 fra $6 til $7",
+ "group-translate-sandboxed": "Ikke-godkendte oversættere",
+ "group-translate-sandboxed-member": "{{GENDER:$1|ikke-godkendt oversætter}}",
+ "right-translate-sandboxmanage": "Administrere brugere i sandkassen",
+ "action-translate-sandboxmanage": "administrere brugere i sandkassen",
+ "right-translate-sandboxaction": "Udføre handlinger der er tilladt for brugere i sandkassen",
+ "action-translate-sandboxaction": "udføre handlinger der er tilladt for brugere i sandkassen",
+ "translate-workflow-state-": "(ikke sat)",
+ "translate-workflowstatus": "Status: $1",
+ "translate-workflow-set-do": "Sæt",
+ "translate-workflow-set-doing": "Sætter ...",
+ "translate-workflow-set-done": "Sat!",
+ "translate-workflow-set-error-alreadyset": "Den ønskede status er identisk med den aktuelle status.",
+ "translate-workflow-autocreated-summary": "Automatisk oprettelse af side til workflowstatus $1",
+ "translate-stats-workflow": "Status",
+ "translate-workflowgroup-label": "Workflowstatusser",
+ "translate-workflowgroup-desc": "Denne meddelelsesgruppe viser workflowstatus for oversættelser.\nStatusserne er defineret i opsætningsvariablen $wgTranslateWorkflowStates.",
+ "translate-dynagroup-recent-label": "Seneste oversættelser",
+ "translate-dynagroup-recent-desc": "Denne meddelelsesgruppe viser alle nylige oversættelser til dette sprog.\nDet er mest nyttigt til korrekturlæsningsopgaver.",
+ "translate-dynagroup-additions-label": "De seneste tilføjelser",
+ "translate-dynagroup-additions-desc": "Denne meddelelsesgruppe viser nye og ændrede meddelelser.",
+ "translate-dynagroup-by": "Oversat af {{GENDER:$1|$1}}",
+ "translate-dynagroup-byc": "Oversat af {{GENDER:$1|$1}} ($2)",
+ "translate-dynagroup-last": "Sidste ændring af {{GENDER:$1|$1}}",
+ "translate-dynagroup-lastc": "Sidste ændring af {{GENDER:$1|$1}} ($2)",
+ "translate-gethelp": "Hjælp",
+ "translate-msggroupselector-projects": "Beskedgruppe",
+ "translate-msggroupselector-search-placeholder": "Søg efter grupper",
+ "translate-msggroupselector-search-all": "Alle",
+ "translate-msggroupselector-search-recent": "Seneste",
+ "translate-msggroupselector-view-subprojects": "$1 {{PLURAL:$1|undergruppe|undergrupper}}",
+ "tux-languageselector": "Oversæt til",
+ "tux-tab-all": "Alle",
+ "tux-tab-untranslated": "Uoversatte",
+ "tux-tab-outdated": "Forældede",
+ "tux-tab-translated": "Oversatte",
+ "tux-tab-unproofread": "Ikke korrekturlæste",
+ "tux-edit": "Redigér",
+ "tux-status-optional": "Valgfri",
+ "tux-status-fuzzy": "Forældet",
+ "tux-status-proofread": "Korrekturlæst",
+ "tux-status-translated": "Oversat",
+ "tux-status-saving": "Gemmer ...",
+ "tux-status-unsaved": "Ikke gemt",
+ "tux-editor-placeholder": "Din oversættelse",
+ "tux-editor-paste-original-button-label": "Indsæt kildeteksten",
+ "tux-editor-discard-changes-button-label": "Fjern alle ændringer",
+ "tux-editor-save-button-label": "Gem oversættelse",
+ "tux-editor-skip-button-label": "Spring til næste",
+ "tux-editor-cancel-button-label": "Annullér",
+ "tux-editor-confirm-button-label": "Bekræft oversættelse",
+ "tux-editor-shortcut-info": "Tryk på \"$1\" for at gemme, eller \"$2\" for at springe til næste meddelelse",
+ "tux-editor-edit-desc": "Redigér dokumentation",
+ "tux-editor-add-desc": "Tilføj dokumentation",
+ "tux-editor-suggestions-title": "Forslag",
+ "tux-editor-in-other-languages": "På andre sprog",
+ "tux-editor-need-more-help": "Brug for mere hjælp?",
+ "tux-editor-ask-help": "Anmod om yderligere oplysninger",
+ "tux-editor-tm-match": "$1% overensstemmelse",
+ "tux-warnings-more": "{{PLURAL:$1|$1 flere}}",
+ "tux-warnings-hide": "skjul",
+ "tux-editor-save-failed": "Kunne ikke gemme oversættelsen:$1",
+ "tux-editor-n-uses": "brugt $1 {{PLURAL:$1|gang|gange}}",
+ "tux-editor-message-desc-more": "Se mere",
+ "tux-editor-message-desc-less": "Vis færre",
+ "tux-editor-clear-translated": "Skjul oversatte",
+ "tux-editor-proofreading-mode": "Læs korrektur",
+ "tux-editor-translate-mode": "Liste",
+ "tux-editor-proofreading-hide-own-translations": "Skjul dine oversættelser",
+ "tux-editor-proofreading-show-own-translations": "Vis dine oversættelser",
+ "tux-proofread-action-tooltip": "Markér som korrekturlæst",
+ "tux-proofread-edit-label": "Redigér",
+ "tux-editor-page-mode": "Side",
+ "tux-editor-outdated-warning": "Denne oversættelse trænger måske til opdatering.",
+ "tux-editor-outdated-warning-diff-link": "Vis forskelle",
+ "tux-editor-doc-editor-placeholder": "Dokumentation for besked",
+ "tux-editor-doc-editor-save": "Gem dokumentation",
+ "tux-editor-doc-editor-cancel": "Annullér",
+ "tux-messagetable-more-messages": "$1 {{PLURAL:$1|mere besked|flere beskeder}}",
+ "tux-messagetable-loading-messages": "Indlæser {{PLURAL:$1|besked|beskeder}} ...",
+ "tux-message-filter-placeholder": "Filtrér liste",
+ "tux-message-filter-result": "Fandt $1 {{PLURAL:$1|resultat|resultater}} for \"$2\"",
+ "tux-message-filter-advanced-button": "Avanceret søgning",
+ "tux-message-filter-optional-messages-label": "Valgfrie beskeder",
+ "tux-proofread-translated-by-self": "Oversat af dig",
+ "tux-empty-list-all": "Denne beskedgruppe er tom",
+ "tux-empty-list-all-guide": "Vælg en anden beskedgruppe at oversætte",
+ "tux-translate-page-no-such-group": "<strong>Den angivne gruppe findes ikke.</strong> Vælg en anden beskedgruppe.",
+ "tux-empty-list-translated": "Ingen oversatte beskeder",
+ "tux-empty-list-translated-guide": "Du kan hjælpe med at oversætte",
+ "tux-empty-list-translated-action": "Oversæt",
+ "tux-empty-no-messages-to-display": "Der er ingen beskeder at vise.",
+ "tux-empty-there-are-optional": "Der er valgfrie beskeder som ikke er vist i listen",
+ "tux-empty-show-optional-messages": "Vis valgfrie beskeder",
+ "tux-empty-no-outdated-messages": "Der er ingen forældede beskeder",
+ "tux-empty-nothing-to-proofread": "Der er ikke noget at korrekturlæse",
+ "tux-empty-you-can-help-providing": "Du kan hjælpe med at lave nye oversættelser",
+ "tux-empty-nothing-new-to-proofread": "Der er intet nyt at korrekturlæse",
+ "tux-empty-you-can-review-already-proofread": "Du kan korrekturlæse oversættelser som allerede er korrekturlæst af andre.",
+ "tux-empty-list-other": "Intet at oversætte",
+ "tux-empty-list-other-guide": "Du kan hjælpe med at korrekturlæse eksisterende oversættelser",
+ "tux-empty-list-other-action": "Læs korrektur på oversættelser",
+ "tux-empty-list-other-link": "Vis alle beskeder",
+ "tux-editor-close-tooltip": "Luk",
+ "tux-editor-expand-tooltip": "Fold ud",
+ "tux-editor-collapse-tooltip": "Slå sammen",
+ "tux-editor-message-tools-history": "Historik",
+ "tux-editor-message-tools-translations": "Alle oversættelser",
+ "tux-editor-loading": "Indlæser ...",
+ "translate-search-more-languages-info": "$1 {{PLURAL:$1|mere sprog|flere sprog}}",
+ "translate-statsbar-tooltip": "$1% oversatte, $2% korrekturlæste",
+ "translate-statsbar-tooltip-with-fuzzy": "$1% oversatte, $2% korrekturlæste, $3% forældede",
+ "translate-search-more-groups-info": "$1 {{PLURAL:$1|mere gruppe|flere grupper}}"
+}
diff --git a/MLEB/Translate/i18n/core/de-ch.json b/MLEB/Translate/i18n/core/de-ch.json
new file mode 100644
index 00000000..f0fd53c3
--- /dev/null
+++ b/MLEB/Translate/i18n/core/de-ch.json
@@ -0,0 +1,13 @@
+{
+ "@metadata": {
+ "authors": [
+ "Filzstift",
+ "Geitost",
+ "MichaelFrey",
+ "The Evil IP address"
+ ]
+ },
+ "translate-page-description-hasoptional": "Diese Nachrichtengruppe enthält optionale Nachrichten.\nOptionale Nachrichten sollten nur dann übersetzt werden, sofern es in deiner Sprache Bedarf für sie gibt,\nwie beispielsweise die Nichtverwendung von Leerschlägen oder die Transkription von Eigennamen. $1",
+ "translate-edit-no-information": "<em>Zu dieser Nachricht ist keine Dokumentation vorhanden.\nSofern du weisst, wo und in welchem Zusammenhang sie genutzt wird, kannst du anderen Übersetzern bei ihrer Arbeit helfen, indem du eine Dokumentation hinzufügst.</em>",
+ "translate-messagereview-reviewswithyou": "Überprüft von {{PLURAL:$1|dir selbst|$1 Benutzern, einschliesslich dir selbst}}"
+}
diff --git a/MLEB/Translate/i18n/core/de-formal.json b/MLEB/Translate/i18n/core/de-formal.json
new file mode 100644
index 00000000..f99292dc
--- /dev/null
+++ b/MLEB/Translate/i18n/core/de-formal.json
@@ -0,0 +1,31 @@
+{
+ "@metadata": {
+ "authors": [
+ "Geitost",
+ "Imre",
+ "Kghbln",
+ "MichaelFrey",
+ "Umherirrender"
+ ]
+ },
+ "translate-page-description-hasoptional": "Diese Nachrichtengruppe enthält optionale Nachrichten.\nOptionale Nachrichten sollten nur dann übersetzt werden, sofern es in Ihrer Sprache Bedarf für sie gibt,\nwie beispielsweise die Nichtverwendung von Leerzeichen oder die Transkription von Eigennamen. $1",
+ "translate-edit-no-information": "''Zu dieser Nachricht ist keine Dokumentation vorhanden.''\nSofern Sie wissen, wo und in welchem Zusammenhang sie genutzt wird, können Sie anderen Übersetzern bei ihrer Arbeit helfen, indem Sie eine Dokumentation hinzufügen.",
+ "translate-use-suggestion": "Ersetzen Sie die aktuelle Übersetzung mit diesem Vorschlag.",
+ "translate-edit-nopermission": "Sie benötigen die Berechtigung, Systemnachrichten übersetzen zu können.",
+ "translate-magic-help": "Sie können hier Aliase für Spezialseiten, magische Wörter und Namensraumnamen übersetzen.\n\nSpezialseiten und magische Wörter können mehrere Übersetzungen haben, sie werden jeweils durch ein Komma (,) getrennt. Namensraumnamen dürfen nur je eine Übersetzung haben.\n\nIn der Übersetzung eines Namensraumnamens hat <code>$1 talk</code> eine spezielle Bedeutung. <code>$1</code> wird durch den Projektnamen ersetzt (zum Beispiel <code>{{ns:project_talk}}</code>).\nWenn es in Ihrer Sprache nicht möglich ist, eine grammatikalisch korrekte Form davon zu bilden ohne den Projektnamen zu verändern, kontaktieren Sie bitte einen Softwareentwickler.\n\nSie müssen in der Übersetzer-Gruppe sein, um Änderungen zu speichern.\nÄnderungen werden erst beim Klick auf den Speichern-Button gespeichert.",
+ "translate-magic-errors": "Bitte beheben Sie {{PLURAL:$1|nachfolgenden|nachfolgende}} Fehler in der Übersetzung:",
+ "translate-checks-xhtml": "Bitte ersetzen Sie {{PLURAL:$2|den folgenden Tag|die folgenden Tags}} durch die korrekten: <strong>$1</strong>",
+ "translate-checks-fudforum-syntax": "Bitte benutzen Sie <nowiki>$1</nowiki> anstatt <nowiki>$2</nowiki> in diesem Projekt.",
+ "translate-statsf-intro": "Sie können einfache Statistiken mit diesem Formular erstellen. Alle Werte haben untere und oberere Limits.",
+ "translations-summary": "Geben Sie einen Nachrichtennamen ein, um alle verfügbaren Übersetzungen anzuzeigen.",
+ "translate-translations-including-no-param": "Bitte geben Sie einen gültigen Nachrichtennamen als Unterseitenparameter an",
+ "translate-langstats-incomplete": "Einige der Statistiken auf dieser Seite sind unvollständig. Laden Sie sie erneut, um weitere Statistiken zu erhalten.",
+ "translate-manage-nochanges-other": "Es gibt keine Änderungen für diese Sprache.\nVerwenden Sie den Verweis unten, um zur Gruppendetailübersicht zurück zu gehen.",
+ "translate-manage-inconsistent": "Es wurden Inkonsistenzen in der Anfrage festgestellt.\nBitte überprüfen Sie Ihre Änderungen und versuchen Sie es erneut.\nDetails: $1",
+ "translate-manage-toolong": "Die maximale Verarbeitungszeit von $1 {{PLURAL:$1|Sekunde|Sekunden}} ist abgelaufen.\nBitte schicken Sie das Formular noch einmal ab, um die Verarbeitung fortzusetzen.",
+ "translate-manage-intro-other": "Hier ist eine Liste von Übersetzungsänderungen der Sprache $1.\nBitte kontrollieren Sie die Änderungen und wählen Sie je eine Aktion, die Sie auf die Übersetzungen anwenden möchten.\nWenn Sie sich entscheiden, Änderungen zu ignorieren, werden sie mit dem nächsten Export überschrieben.",
+ "translate-import-err-warnings": "Die Datei entspricht nicht dem erwarteten Format.\nStellen Sie sicher, dass der Editor keine <code>msgctxt</code>-Felder entfernt.\nDetails: $1",
+ "translate-messagereview-reviewswithyou": "Akzeptiert von {{PLURAL:$1|Ihnen selbst|$1 Benutzern, einschließlich Ihnen selbst}}",
+ "api-error-owntranslation": "Sie können Ihre eigenen Übersetzungen nicht akzeptieren.",
+ "translate-messagereview-no-own": "Sie können Ihre eigenen Übersetzungen nicht akzeptieren."
+}
diff --git a/MLEB/Translate/i18n/core/de.json b/MLEB/Translate/i18n/core/de.json
new file mode 100644
index 00000000..6fa231b6
--- /dev/null
+++ b/MLEB/Translate/i18n/core/de.json
@@ -0,0 +1,403 @@
+{
+ "@metadata": {
+ "authors": [
+ "Als-Holder",
+ "Geitost",
+ "Giftpflanze",
+ "Imre",
+ "Inkowik",
+ "Kghbln",
+ "Lukas9950",
+ "Lyzzy",
+ "MF-Warburg",
+ "Metalhead64",
+ "MichaelFrey",
+ "Pill",
+ "Purodha",
+ "Raimond Spekking",
+ "SVG",
+ "Sebastian Wallroth",
+ "Shirayuki",
+ "Tbleher",
+ "The Evil IP address",
+ "Umherirrender"
+ ]
+ },
+ "translate": "Übersetzen",
+ "translate-desc": "Ergänzt eine [[Special:Translate|Spezialseite]] zum Übersetzen von MediaWiki und weiterem",
+ "translate-taskui-view": "Alle Nachrichten anzeigen",
+ "translate-taskui-untranslated": "Alle nicht übersetzten Nachrichten anzeigen",
+ "translate-taskui-optional": "Alle optionalen Nachrichten anzeigen",
+ "translate-taskui-acceptqueue": "Nur Nachrichten anzeigen, die ich als überprüft markieren kann.",
+ "translate-taskui-reviewall": "Alle Übersetzungen überprüfen",
+ "translate-taskui-export-to-file": "Im systemeigenen Format exportieren",
+ "translate-taskui-export-as-po": "Für die Offline-Übersetzung exportieren",
+ "translate-taction-translate": "Übersetzen",
+ "translate-taction-proofread": "Überprüfen",
+ "translate-taction-lstats": "Statistiken zur Sprache",
+ "translate-taction-mstats": "Statistiken zur Nachrichtengruppe",
+ "translate-taction-export": "Exportieren",
+ "translate-taction-disabled": "Diese Aktion ist in diesem Wiki deaktiviert.",
+ "translate-page-no-such-language": "Die angegebene Sprache ist ungültig.",
+ "translate-page-no-such-group": "Die angegebene Gruppe ist ungültig.",
+ "translate-page-disabled": "Übersetzungen in diese Sprache wurden für diese Gruppe deaktiviert.\nGrund:\n\n<em>$1</em>",
+ "translate-language-disabled": "Übersetzungen in diese Sprachen sind nicht möglich.",
+ "translate-page-settings-legend": "Einstellungen",
+ "translate-page-group": "Gruppe",
+ "translate-page-language": "Sprache",
+ "translate-page-limit": "Limit",
+ "translate-page-limit-option": "{{PLURAL:$1|Eine Nachricht|$1 Nachrichten}} pro Seite",
+ "translate-submit": "Hole",
+ "translate-page-navigation-legend": "Navigation",
+ "translate-page-showing": "Systemnachrichten $1 bis $2 von insgesamt $3",
+ "translate-page-showing-all": "{{PLURAL:$1|Eine Systemnachricht|$1 Systemnachrichten}}",
+ "translate-page-showing-none": "Es sind keine Nachrichten zur Anzeige vorhanden.",
+ "translate-next": "nächste Seite",
+ "translate-prev": "vorherige Seite",
+ "translate-page-description-legend": "Informationen über diese Gruppe",
+ "translate-page-description-hasoptional": "Diese Nachrichtengruppe enthält optionale Nachrichten.\nOptionale Nachrichten sollten nur dann übersetzt werden, sofern es in deiner Sprache Bedarf für sie gibt,\nwie beispielsweise die Nichtverwendung von Leerzeichen oder die Transkription von Eigennamen. $1",
+ "translate-page-description-hasoptional-open": "Optionale Nachrichten anzeigen.",
+ "translate-page-edit": "bearbeiten",
+ "translate-ext-url": "<hr />Website: $1",
+ "translate-optional": "(optional)",
+ "translate-ignored": "(ignoriert)",
+ "translate-edit-title": "„$1“ bearbeiten",
+ "translate-edit-definition": "Nachricht im Original",
+ "translate-edit-translation": "Übersetzung",
+ "translate-edit-contribute": "bearbeiten",
+ "translate-edit-no-information": "<em>Zu dieser Nachricht ist keine Dokumentation vorhanden.\nSofern du weißt, wo und in welchem Zusammenhang sie genutzt wird, kannst du anderen Übersetzern bei ihrer Arbeit helfen, indem du eine Dokumentation hinzufügst.</em>",
+ "translate-edit-information": "Information zur Nachricht ($1)",
+ "translate-edit-in-other-languages": "Nachricht in anderen Sprachen",
+ "translate-edit-committed": "Aktuelle Übersetzung",
+ "translate-edit-warnings": "Warnungen zu unvollständigen Übersetzungen",
+ "translate-edit-tmsugs": "Vorschläge aus dem Übersetzungsspeicher",
+ "translate-edit-tmmatch-source": "Übersetzungsquelltext: $1",
+ "translate-edit-tmmatch": "$1 % Übereinstimmung",
+ "translate-use-suggestion": "Ersetze die aktuelle Übersetzung mit diesem Vorschlag.",
+ "translate-edit-nopermission": "Du benötigst Übersetzerrechte, um Nachrichten übersetzen zu können.",
+ "translate-edit-askpermission": "Berechtigung erhalten",
+ "translate-magic-pagename": "Übersetzen (extra)",
+ "translate-magic-help": "Du kannst hier Aliase für Spezialseiten, magische Wörter und Namensraumnamen übersetzen.\n\nSpezialseiten und magische Wörter können mehrere Übersetzungen haben,\nsie werden jeweils durch ein Komma (,) getrennt.\nNamensräume dürfen nur je eine Übersetzung haben.\n\nDas Übersetzen des Projektdiskussionsseitennamensraums <code>$1 talk</code> kann kompliziert werden.\n<code>$1</code> wird durch den Projektnamen ersetzt (zum Beispiel <code>{{ns:project_talk}}</code>).\nSofern es in deiner Sprache nicht möglich ist eine grammatikalisch korrekte Form zu bilden, ohne den Projektnamen zu verändern, lasse es uns bitte auf [[Support]] wissen.\n\nDu musst Übersetzer sein, um Änderungen speichern zu können.\nÄnderungen werden erst beim Klick auf den Button „Speichern“ gespeichert.",
+ "translate-magic-module": "Modul:",
+ "translate-magic-submit": "Hole",
+ "translate-magic-cm-export": "Export",
+ "translate-magic-nothing-to-export": "Es ist nichts zum Exportieren vorhanden.",
+ "translate-magic-cm-to-be": "Sollte sein",
+ "translate-magic-cm-current": "Aktuell",
+ "translate-magic-cm-original": "Original",
+ "translate-magic-cm-comment": "Kommentar:",
+ "translate-magic-cm-save": "Speichern",
+ "translate-magic-cm-updatedusing": "Aktualisiert über [[Special:AdvancedTranslate|{{int:Translate-magic-pagename}}]]",
+ "translate-magic-cm-savefailed": "Speichern fehlgeschlagen",
+ "translate-magic-special": "Aliase von Spezialseiten",
+ "translate-magic-words": "Magische Wörter",
+ "translate-magic-namespace": "Namen von Namensräumen",
+ "translate-magic-notsaved": "Die Änderungen wurden nicht gespeichert.",
+ "translate-magic-errors": "Bitte behebe {{PLURAL:$1|nachfolgenden|nachfolgende}} Fehler in der Übersetzung:",
+ "translate-magic-saved": "Die Änderungen wurden erfolgreich gespeichert.",
+ "translate-checks-parameters": "{{PLURAL:$2|Der folgende Parameter wird|Die folgenden Parameter werden}} nicht benutzt:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-parameters-unknown": "{{PLURAL:$2|Der folgende Parameter ist|Die folgenden Parameter sind}} unbekannt:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-balance": "Die {{PLURAL:$2|folgende Klammersetzung ist|folgenden Klammersetzungen sind}} nicht ausgeglichen:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links": "{{PLURAL:$2|Der folgende Link ist|Die folgenden $2 Links sind}} problematisch:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links-missing": "{{PLURAL:$2|Der folgende Link fehlt|Die folgenden $2 Links fehlen}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-xhtml": "Bitte ersetze {{PLURAL:$2|den folgenden Tag|die folgenden Tags}} durch die korrekten:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-plural": "Die Übersetzungsvorlage verwendet <nowiki>{{PLURAL:}}</nowiki>, die Übersetzung aber nicht.",
+ "translate-checks-plural-forms": "Zu <nowiki>{{PLURAL:}}</nowiki>{{PLURAL:$1|wurde eine Ausprägung|wurden $1 Ausprägungen}} angegeben. Es {{PLURAL:$2|wird allerdings nur eine Ausprägung|werden allerdings nur $2 Ausprägungen}} unterstützt (auschließlich 0= und 1= forms).",
+ "translate-checks-plural-dupe": "Zu <nowiki>{{PLURAL:}}</nowiki> wurden zwei gleiche Ausprägungen angegeben. Bspw. sollte aber <nowiki>{{PLURAL:$1|Milch|Milch}}</nowiki> als <nowiki>{{PLURAL:$1|Milch}}</nowiki> angegeben werden.",
+ "translate-checks-pagename": "Der Namensraum weicht von dem in der Übersetzungsvorlage ab.",
+ "translate-checks-format": "Diese Übersetzung entspricht nicht der Übersetzungsvorlage oder enthält eine ungültige Syntax: $1",
+ "translate-checks-escape": "Die folgenden Escape-Sequenzen könnten versehentlich vorhanden sein: <strong>$1</strong>",
+ "translate-checks-parametersnotequal": "Die Parameteranzahl ist {{PLURAL:$1|$1}}, sollte aber {{PLURAL:$2|$2}} sein.",
+ "translate-checks-malformed": "<nowiki>$1</nowiki> ist formal ungültig.",
+ "translate-checks-fudforum-syntax": "Bitte benutze in diesem Projekt <nowiki>$1</nowiki> anstatt <nowiki>$2</nowiki>.",
+ "translate-pref-nonewsletter": "Sende mir keinen E-Mail-Newsletter zu",
+ "translate-pref-editassistlang": "Unterstützungssprachen:",
+ "prefs-translate": "Übersetzungsoptionen",
+ "translate-pref-editassistlang-help": "Mit Kommas getrennte Liste von Sprachcodes.\nDie Übersetzungen der Nachrichten in den gewählten Sprachen werden beim Übersetzen angezeigt.\nDie Standardliste ist abhängig von der Sprache der Benutzeroberfläche.",
+ "translate-pref-editassistlang-bad": "In der Liste ist ein ungültiger Sprachcode enthalten:\n<nowiki>$1</nowiki>.",
+ "right-translate": "Bearbeitungen mithilfe der Übersetzungsoberfläche tätigen",
+ "right-translate-manage": "Nachrichtengruppen verwalten",
+ "action-translate-manage": "Nachrichtengruppen zu verwalten",
+ "right-translate-import": "Offlineübersetzungen importieren",
+ "action-translate-import": "Offlineübersetzungen zu importieren",
+ "right-translate-messagereview": "Übersetzungen überprüfen",
+ "right-translate-groupreview": "Arbeitsablaufstatus von Nachrichtengruppen ändern",
+ "translate-rc-translation-filter": "Übersetzungen filtern:",
+ "translate-rc-translation-filter-no": "nichts",
+ "translate-rc-translation-filter-only": "Zeige nur Übersetzungen",
+ "translate-rc-translation-filter-filter": "Übersetzungen filtern",
+ "translate-rc-translation-filter-site": "Nur Änderungen an den Nachrichten des Wikis",
+ "translationstats": "Übersetzungsstatistik",
+ "translate-stats-edits": "Bearbeitungen",
+ "translate-stats-users": "Übersetzer",
+ "translate-stats-registrations": "Registrierungen",
+ "translate-stats-reviews": "Übersetzungsprüfungen",
+ "translate-stats-reviewers": "Übersetzungsprüfer",
+ "translate-statsf-intro": "Du kannst mit diesem Formular einfache Statistiken erstellen.\nAlle Werte haben obere und untere Begrenzungen.",
+ "translate-statsf-options": "Diagrammoptionen",
+ "translate-statsf-width": "Breite in Pixel:",
+ "translate-statsf-height": "Höhe in Pixel:",
+ "translate-statsf-days": "Zeitraum in Tagen:",
+ "translate-statsf-start": "Anfangsdatum:",
+ "translate-statsf-scale": "Granularität:",
+ "translate-statsf-scale-months": "Monate",
+ "translate-statsf-scale-weeks": "Wochen",
+ "translate-statsf-scale-days": "Tage",
+ "translate-statsf-scale-hours": "Stunden",
+ "translate-statsf-count": "Maßstab:",
+ "translate-statsf-count-edits": "Anzahl Bearbeitungen",
+ "translate-statsf-count-users": "Aktive Übersetzer",
+ "translate-statsf-count-registrations": "Neue Benutzer",
+ "translate-statsf-count-reviews": "Übersetzungsprüfungen",
+ "translate-statsf-count-reviewers": "Übersetzungsprüfer",
+ "translate-statsf-language": "Komma-getrennte Liste der Sprachcodes:",
+ "translate-statsf-group": "Komma-getrennte Liste der Gruppencodes:",
+ "translate-statsf-submit": "Vorschau",
+ "translate-tag-category": "Übersetzbare Seiten",
+ "translate-tag-page-desc": "Übersetzung der Wikiseite [[$2|$1]] von $3 ($4).",
+ "translate-sidebar-alltrans": "In anderen Sprachen",
+ "translations": "Alle Übersetzungen",
+ "translations-summary": "Gib einen Nachrichtennamen ein, um alle verfügbaren Übersetzungen anzuzeigen.",
+ "translate-translations-no-message": "„$1“ ist keine übersetzbare Nachricht",
+ "translate-translations-none": "Keine Übersetzungen für „$1“ verfügbar",
+ "translate-translations-count": "Es {{PLURAL:$1|wurde eine Übersetzung|wurden $1 Übersetzungen}} gefunden.",
+ "translate-translations-fieldset-title": "Nachricht",
+ "translate-translations-messagename": "Name:",
+ "translate-translations-project": "Projekt:",
+ "translate-translations-including-no-param": "Bitte gib einen gültigen Nachrichtennamen als Unterseitenparameter an",
+ "translate-translations-history-short": "V",
+ "languagestats": "Statistiken zur Sprache",
+ "languagestats-summary": "Diese Seite zeigt Statistiken zu Übersetzungen für alle Nachrichtengruppen einer Sprache.",
+ "messagegroupstats-summary": "Diese Seite zeigt Statistiken zu Nachrichtengruppen.",
+ "languagestats-stats-for": "Übersetzungsstatistik für die Sprache $1 ($2).",
+ "languagestats-recenttranslations": "Aktuelle Übersetzungen",
+ "translate-langstats-incomplete": "Einige der Statistiken auf dieser Seite sind unvollständig. Lade sie erneut, um weitere Statistiken zu erhalten.",
+ "translate-langstats-expand": "ausklappen",
+ "translate-langstats-collapse": "einklappen",
+ "translate-langstats-expandall": "alle ausklappen",
+ "translate-langstats-collapseall": "alle einklappen",
+ "translate-language-code": "Sprachcode",
+ "translate-language-code-field-name": "Sprachcode:",
+ "translate-suppress-complete": "Vollständig übersetzte Nachrichtengruppen unterdrücken",
+ "translate-ls-noempty": "Vollständig unübersetzte Nachrichtengruppen unterdrücken",
+ "translate-language": "Sprache",
+ "translate-total": "Nachrichten (insgesamt)",
+ "translate-untranslated": "Nachrichten (übersetzbar)",
+ "translate-percentage-complete": "Vollständig",
+ "translate-percentage-fuzzy": "Veraltet",
+ "translate-languagestats-overall": "Alle Gruppen zusammen",
+ "translate-ls-submit": "Statistiken anzeigen",
+ "translate-ls-column-group": "Systemnachrichtengruppe",
+ "translate-mgs-pagename": "Statistiken zur Nachrichtengruppe",
+ "translate-mgs-fieldset": "Einstellungen anzeigen",
+ "translate-mgs-group": "Gruppe:",
+ "translate-mgs-nocomplete": "Nicht die Sprachen anzeigen, zu denen die Übersetzungen fertiggestellt wurden",
+ "translate-mgs-noempty": "Nicht die Sprachen anzeigen, zu denen noch keine Übersetzungen fertiggestellt wurden",
+ "translate-mgs-submit": "Statistiken anzeigen",
+ "translate-mgs-column-language": "Sprache",
+ "translate-mgs-totals": "Alle Sprachen zusammen",
+ "translate-mgs-invalid-group": "Die angegebene Nachrichtengruppe $1 ist nicht vorhanden.",
+ "translate-mgs-nothing": "Zu den angeforderten Statistiken gibt es keine anzuzeigenden Daten.",
+ "supportedlanguages": "Unterstützte Sprachen",
+ "supportedlanguages-summary": "Diese Seite zeigt eine Liste aller auf {{SITENAME}} unterstützen Sprachen, zusammen mit den Namen der Übersetzer, die an der jeweiligen Sprache mitgearbeitet haben.\nJe intensiver ein Übersetzer mitgearbeitet hat, desto größer wird sein Benutzername angezeigt.\nDie zur Unterstreichung des Benutzernamens genutzte Farbe zeigt an, wann der Übersetzer zuletzt aktiv mitgearbeitet hat.",
+ "supportedlanguages-colorlegend": "Legende zu den Farben: Letzte Übersetzung vor $1 Tagen.",
+ "supportedlanguages-translators": "{{PLURAL:$2|{{GENDER:$3|Übersetzer|Übersetzerin}}|Übersetzer}}: $1",
+ "supportedlanguages-recenttranslations": "Aktuelle Übersetzungen",
+ "supportedlanguages-count": "Insgesamt $1 {{PLURAL:$1|Sprache|Sprachen}}.",
+ "supportedlanguages-activity": "$1: $2 {{PLURAL:$2|Bearbeitung|Bearbeitungen}} - letzte Bearbeitung vor $3 {{PLURAL:$3|Tag|Tagen}}",
+ "translate-save": "Speichern ($1)",
+ "translate-jssti-add": "Zur Liste hinzufügen",
+ "managemessagegroups": "Nachrichtengruppenverwaltung",
+ "translate-smg-notallowed": "Du bist nicht berechtigt, diese Aktion durchzuführen.",
+ "translate-smg-nochanges": "Es gibt keine zu verarbeitenden Änderungen.",
+ "translate-smg-submit": "Änderungen zum Verarbeiten übertragen",
+ "translate-smg-submitted": "Nachrichtendefinitionen wurden aktualisiert. Änderungen werden im Hintergrund verarbeitet.",
+ "translate-smg-more": "Nach dem Speichern dieser Änderungen müssen weitere Änderungen verarbeitet werden.",
+ "translate-smg-left": "Nachrichteninhalt im Wiki",
+ "translate-smg-right": "Eingegangene Änderungen",
+ "translate-manage-import-diff": "Nachricht $1 | Aktionen: $2",
+ "translate-manage-import-new": "Neue Nachricht $1",
+ "translate-manage-import-deleted": "Gelöschte Nachricht $1",
+ "translate-manage-action-import": "Importieren",
+ "translate-manage-action-conflict": "Importieren und als „zu kontrollieren“ markieren",
+ "translate-manage-action-ignore": "Ignorieren",
+ "translate-manage-action-fuzzy": "Importiere und markiere Übersetzung als „zu kontrollieren“",
+ "translate-manage-nochanges": "Es gibt keine Änderungen an Definitionen zu Nachrichten dieser Gruppe.",
+ "translate-manage-nochanges-other": "Es gibt keine Änderungen für diese Sprache.\nVerwende den Verweis unten, um zur Gruppendetailübersicht zurück zu gehen.",
+ "translate-manage-inconsistent": "Es wurden Inkonsistenzen in der Anfrage festgestellt.\nBitte überprüfe deine Änderungen und versuche es erneut.\nDetails: $1",
+ "translate-manage-toolong": "Die maximale Verarbeitungszeit von $1 {{PLURAL:$1|Sekunde|Sekunden}} ist abgelaufen.\nBitte schicke das Formular noch einmal ab, um die Verarbeitung fortzusetzen.",
+ "translate-manage-import-summary": "Neue Version von externer Quelle importiert",
+ "translate-manage-conflict-summary": "Neue Version von externer Quelle importiert.\nBitte überprüfen.",
+ "translate-manage-fuzzy-summary": "Die Nachrichtendefinition hat sich geändert",
+ "translate-manage-submit": "Ausführen",
+ "translate-manage-intro-other": "Hier ist eine Liste von Übersetzungsänderungen der Sprache $1.\nBitte kontrolliere die Änderungen und wähle je eine Aktion, die du auf die Aktualisierungen anwenden möchtest.\nWenn du dich entscheidest, Änderungen zu ignorieren, ist diese Aktion nur vorübergehend.",
+ "translate-manage-import-ok": "Importiert: $1",
+ "translate-manage-import-done": "Import abgeschlossen!",
+ "importtranslations": "Übersetzungen importieren",
+ "translate-import-from-local": "Lokale Datei hochladen:",
+ "translate-import-load": "Datei laden",
+ "translate-import-err-dl-failed": "Datei kann nicht abgerufen werden:\n$1",
+ "translate-import-err-ul-failed": "Das Hochladen der Datei war nicht erfolgreich",
+ "translate-import-err-invalid-title": "Der angegebene Dateiname <nowiki>$1</nowiki> war ungültig.",
+ "translate-import-err-no-such-file": "Die Datei <nowiki>$1</nowiki> existiert nicht oder wurde nicht lokal hochgeladen.",
+ "translate-import-err-stale-group": "Die Nachrichtengruppe, der diese Datei zugeordnet wurde, ist nicht vorhanden.",
+ "translate-import-err-no-headers": "Die Datei ist keine Datei im Gettext-Format der Erweiterung „Translate“:\nDie Gruppen und Sprache konnte nicht aus dem Dateikopf ermittelt werden.",
+ "translate-import-err-warnings": "Die Datei entspricht nicht dem erwarteten Format.\nStelle sicher, dass der Editor keine <code>msgctxt</code>-Felder entfernt.\nDetails: $1",
+ "translate-js-summary": "Zusammenfassung:",
+ "translate-js-save": "Speichern",
+ "translate-js-next": "Speichern und nächste öffnen",
+ "translate-js-nonext": "Dies war die letzte Nachricht auf dieser Seite.",
+ "translate-js-skip": "Weiter zur nächsten",
+ "translate-js-save-failed": "Speichern ist fehlgeschlagen. Bitte melde diesen Fehler.",
+ "translate-js-history": "Übersetzungsgeschichte",
+ "translate-js-support": "Frage stellen",
+ "translate-js-support-title": "Frage nach Hilfe, sofern nicht ausreichend Informationen vorhanden sind, diese Nachricht richtig zu übersetzen.",
+ "translate-js-support-unsaved-warning": "Es sind nicht gespeicherte Übersetzungen vorhanden.",
+ "translate-gs-pos": "Pos.",
+ "translate-gs-code": "Code",
+ "translate-gs-continent": "Kontinent",
+ "translate-gs-speakers": "Sprecher",
+ "translate-gs-score": "Ergebnis",
+ "translate-gs-multiple": "Mehrere",
+ "translate-gs-count": "Anzahl",
+ "translate-gs-total": "Insgesamt",
+ "translate-gs-avgscore": "Durchschnittliches Ergebnis",
+ "translate-documentation-language": "Nachrichtendokumentation",
+ "translate-searchprofile": "Übersetzungen",
+ "translate-searchprofile-tooltip": "Suche in allen Übersetzungen",
+ "translate-search-languagefilter": "Nach Sprache filtern:",
+ "translate-search-nofilter": "Alle Sprachen",
+ "translate-messagereview-submit": "Als überprüft markieren",
+ "translate-messagereview-progress": "Markiere als überprüft …",
+ "translate-messagereview-failure": "Als überprüft markieren gescheitert: $1",
+ "translate-messagereview-done": "Überprüft",
+ "translate-messagereview-reviews": "Überprüft von {{PLURAL:$1|einem Benutzer|$1 Benutzern}}",
+ "translate-messagereview-reviewswithyou": "Überprüft von {{PLURAL:$1|dir selbst|$1 Benutzern, einschließlich dir selbst}}",
+ "api-error-invalidrevision": "Die Übersetzung wurde nicht gefunden",
+ "api-error-unknownmessage": "Die Nachricht wurde nicht gefunden.",
+ "api-error-fuzzymessage": "Die Übersetzung ist als veraltet markiert",
+ "api-error-owntranslation": "Du kannst deine eigenen Übersetzungen nicht als überprüft markieren.",
+ "translate-messagereview-no-fuzzy": "Veraltete Übersetzungen können nicht als überprüft markiert werden.",
+ "translate-messagereview-no-own": "Du kannst deine eigenen Übersetzungen nicht als überprüft markieren.",
+ "translate-messagereview-doit": "Diese Übersetzung als überprüft markieren.",
+ "log-name-translationreview": "Übersetzungsprüfungs-Logbuch",
+ "log-description-translationreview": "Logbuch aller Übersetzungsprüfungen an Übersetzungen und Nachrichtengruppen.",
+ "logentry-translationreview-message": "$1 {{GENDER:$2|überprüfte}} die Übersetzung $3",
+ "logentry-translationreview-group": "$1 {{GENDER:$2|änderte}} den Status der Übersetzungen in der Sprache „$4“ der Seite „$3“ von „$6“ in „$7“",
+ "group-translate-sandboxed": "Unbestätigte Übersetzer",
+ "group-translate-sandboxed-member": "{{GENDER:$1|Unbestätigter Übersetzer|Unbestätigte Übersetzerin}}",
+ "right-translate-sandboxmanage": "Spielwiesenbenutzer verwalten",
+ "action-translate-sandboxmanage": "Spielwiesenbenutzer zu verwalten",
+ "right-translate-sandboxaction": "Aktionen ausführen, die für Spielwiesenbenutzer auf der „weißen Liste“ stehen",
+ "action-translate-sandboxaction": "Aktionen auszuführen, die für Spielwiesenbenutzer auf der „weißen Liste“ stehen",
+ "translate-workflow-state-": "(nicht gesetzt)",
+ "translate-workflowstatus": "Status: $1",
+ "translate-workflow-set-do": "Einstellen",
+ "translate-workflow-set-doing": "Wird eingestellt …",
+ "translate-workflow-set-done": "Eingestellt",
+ "translate-workflow-set-error-alreadyset": "Der angeforderte Status ist identisch mit dem aktuellen Status.",
+ "translate-workflow-autocreated-summary": "Automatische Erstellung der Seite für Arbeitsablaufstatus $1",
+ "translate-stats-workflow": "Status",
+ "translate-workflowgroup-label": "Arbeitsablaufstatus",
+ "translate-workflowgroup-desc": "Diese Nachrichtengruppe zeigt die Status zum Arbeitsablauf beim Übersetzungen.\nDie Status werden mit der Konfigurationsvariablen <code lang=\"en\">$wgTranslateWorkflowStates</code> definiert.",
+ "translate-dynagroup-recent-label": "Aktuelle Übersetzungen",
+ "translate-dynagroup-recent-desc": "Diese Nachrichtengruppe zeigt alle aktuellen Übersetzungen in diese Sprache an.\nAm nützlichsten ist sie für die Aufgaben des Überprüfens.",
+ "translate-dynagroup-additions-label": "Aktuelle Ergänzungen",
+ "translate-dynagroup-additions-desc": "Diese Nachrichtengruppe zeigt neue und geänderte Nachrichten an.",
+ "translate-dynagroup-by": "Übersetzung von {{GENDER:$1|$1}}",
+ "translate-dynagroup-byc": "Übersetzung von {{GENDER:$1|$1}} ($2)",
+ "translate-dynagroup-last": "Letzte Änderung von {{GENDER:$1|$1}}",
+ "translate-dynagroup-lastc": "Letzte Änderung von {{GENDER:$1|$1}} ($2)",
+ "translate-gethelp": "Hilfe",
+ "translate-msggroupselector-projects": "Nachrichtengruppe",
+ "translate-msggroupselector-search-placeholder": "Gruppen durchsuchen",
+ "translate-msggroupselector-search-all": "Alle",
+ "translate-msggroupselector-search-recent": "Aktuell",
+ "translate-msggroupselector-view-subprojects": "{{PLURAL:$1|Eine Untergruppe|$1 Untergruppen}}",
+ "tux-languageselector": "Übersetzen auf",
+ "tux-tab-all": "Alle",
+ "tux-tab-untranslated": "Nicht übersetzt",
+ "tux-tab-outdated": "Veraltet",
+ "tux-tab-translated": "Übersetzt",
+ "tux-tab-unproofread": "Ungeprüfte",
+ "tux-edit": "Bearbeiten",
+ "tux-status-optional": "Optional",
+ "tux-status-fuzzy": "Veraltet",
+ "tux-status-proofread": "Überprüft",
+ "tux-status-translated": "Übersetzt",
+ "tux-status-saving": "Speichere …",
+ "tux-status-unsaved": "Nicht gespeichert",
+ "tux-editor-placeholder": "Deine Übersetzung",
+ "tux-editor-paste-original-button-label": "Quelltext einfügen",
+ "tux-editor-discard-changes-button-label": "Änderungen verwerfen",
+ "tux-editor-save-button-label": "Übersetzung speichern",
+ "tux-editor-skip-button-label": "Zur nächsten",
+ "tux-editor-cancel-button-label": "Abbrechen",
+ "tux-editor-confirm-button-label": "Übersetzung bestätigen",
+ "tux-editor-shortcut-info": "Drücke „$1“ zum Speichern, „$2“, um zur nächsten Nachricht zu gelangen oder „$3“ für andere Tastaturkürzel.",
+ "tux-editor-edit-desc": "Dokumentation bearbeiten",
+ "tux-editor-add-desc": "Dokumentation hinzufügen",
+ "tux-editor-suggestions-title": "Vorschläge",
+ "tux-editor-in-other-languages": "In anderen Sprachen",
+ "tux-editor-need-more-help": "Wird weitere Hilfe benötigt?",
+ "tux-editor-ask-help": "Nach zusätzlichen Informationen fragen ...",
+ "tux-editor-tm-match": "$1 % Übereinstimmung",
+ "tux-warnings-more": "{{PLURAL:$1|Eine weitere|$1 weitere}}",
+ "tux-warnings-hide": "verstecken",
+ "tux-editor-save-failed": "Das Speichern der Übersetzung ist fehlgeschlagen: $1",
+ "tux-editor-n-uses": "{{PLURAL:$1|Einmal|$1-mal}} verwendet",
+ "tux-editor-message-desc-more": "Mehr ansehen",
+ "tux-editor-message-desc-less": "Weniger ansehen",
+ "tux-editor-clear-translated": "Übersetzte verstecken",
+ "tux-editor-proofreading-mode": "Überprüfen",
+ "tux-editor-translate-mode": "Liste",
+ "tux-editor-proofreading-hide-own-translations": "Deine Übersetzungen verstecken",
+ "tux-editor-proofreading-show-own-translations": "Deine Übersetzungen anzeigen",
+ "tux-proofread-action-tooltip": "Als überprüft markieren",
+ "tux-proofread-edit-label": "Bearbeiten",
+ "tux-editor-page-mode": "Seite",
+ "tux-editor-outdated-warning": "Diese Übersetzung muss eventuell aktualisiert werden.",
+ "tux-editor-outdated-warning-diff-link": "Unterschiede zeigen",
+ "tux-editor-doc-editor-placeholder": "Nachrichtendokumentation",
+ "tux-editor-doc-editor-save": "Dokumentation speichern",
+ "tux-editor-doc-editor-cancel": "Abbrechen",
+ "tux-messagetable-more-messages": "{{PLURAL:$1|Eine weitere Nachricht|$1 weitere Nachrichten}}",
+ "tux-messagetable-loading-messages": "Lade {{PLURAL:$1|Nachricht|Nachrichten}} …",
+ "tux-message-filter-placeholder": "Liste filtern",
+ "tux-message-filter-result": "{{PLURAL:$1|Ein Ergebnis|$1 Ergebnisse}} für „$2“ gefunden",
+ "tux-message-filter-advanced-button": "Erweiterte Suche",
+ "tux-message-filter-optional-messages-label": "Optionale Nachrichten",
+ "tux-proofread-translated-by-self": "Übersetzt von dir",
+ "tux-empty-list-all": "Diese Nachrichtengruppe ist leer",
+ "tux-empty-list-all-guide": "Wähle eine andere Nachrichtengruppe zum Übersetzen aus",
+ "tux-translate-page-no-such-group": "<strong>Die angegebene Gruppe ist nicht vorhanden.</strong> Bitte wähle eine andere Nachrichtengruppe aus.",
+ "tux-empty-list-translated": "Keine übersetzten Nachrichten",
+ "tux-empty-list-translated-guide": "Du kannst beim Übersetzen helfen",
+ "tux-empty-list-translated-action": "Übersetzen",
+ "tux-empty-no-messages-to-display": "Es sind keine Nachrichten zum Anzeigen vorhanden.",
+ "tux-empty-there-are-optional": "Es sind optionale Nachrichten vorhanden, die nicht in der Liste aufgeführt werden.",
+ "tux-empty-show-optional-messages": "Optionale Nachrichten anzeigen",
+ "tux-empty-no-outdated-messages": "Keine veralteten Nachrichten vorhanden",
+ "tux-empty-nothing-to-proofread": "Es sind keine Nachrichten zum Überprüfen vorhanden",
+ "tux-empty-you-can-help-providing": "Du kannst helfen, neue Übersetzungen zu erstellen.",
+ "tux-empty-nothing-new-to-proofread": "Es sind keine neuen Nachrichten zum Überprüfen vorhanden",
+ "tux-empty-you-can-review-already-proofread": "Du kannst Übersetzungen überprüfen, die bereits von anderen Benutzern überprüft wurden.",
+ "tux-empty-list-other": "Es ist nichts zum Übersetzen vorhanden",
+ "tux-empty-list-other-guide": "Du kannst beim Überprüfen vorhandener Übersetzungen helfen",
+ "tux-empty-list-other-action": "Übersetzungen überprüfen",
+ "tux-empty-list-other-link": "Alle Nachrichten anzeigen",
+ "tux-editor-close-tooltip": "Schließen",
+ "tux-editor-expand-tooltip": "Ausklappen",
+ "tux-editor-collapse-tooltip": "Einklappen",
+ "tux-editor-message-tools-history": "Versionsgeschichte",
+ "tux-editor-message-tools-delete": "Löschen",
+ "tux-editor-message-tools-translations": "Alle Übersetzungen",
+ "tux-editor-loading": "Lade …",
+ "translate-search-more-languages-info": "{{PLURAL:$1|Eine weitere Sprache|$1 weitere Sprachen}}",
+ "translate-statsbar-tooltip": "$1% übersetzt, $2% überprüft",
+ "translate-statsbar-tooltip-with-fuzzy": "$1% übersetzt, $2% überprüft, $3% veraltet",
+ "translate-search-more-groups-info": "{{PLURAL:$1|Eine weitere Gruppe|$1 weitere Gruppen}}",
+ "translate-ulsdep-title": "Konfigurationsfehler",
+ "translate-ulsdep-body": "Die Übersetzungserweiterung hängt von der [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:UniversalLanguageSelector Erweiterung für die universelle Sprachauswahl] ab.",
+ "tux-session-expired": "Du bist nicht mehr angemeldet. Bitte melde dich auf einer getrennten Registerkarte an. Alternativ kannst du eine Kopie deiner ungespeicherten Übersetzungen machen, dich anmelden und dann zu dieser Seite zurückkehren."
+}
diff --git a/MLEB/Translate/i18n/core/diq.json b/MLEB/Translate/i18n/core/diq.json
new file mode 100644
index 00000000..1a51eaa9
--- /dev/null
+++ b/MLEB/Translate/i18n/core/diq.json
@@ -0,0 +1,152 @@
+{
+ "@metadata": {
+ "authors": [
+ "Erdemaslancan",
+ "Gorizon",
+ "Marmase",
+ "Mirzali"
+ ]
+ },
+ "translate": "Açarnayış",
+ "translate-desc": "MediaWiki u vêşi açarnayışan rê [[Special:Translate|Pela xısusi]]",
+ "translate-taskui-view": "Mesacan pêro bımocne",
+ "translate-taskui-untranslated": "Mesacanê nêaçarniyayeyan bımocne",
+ "translate-taskui-optional": "Mesacanê waşteyan bımocne",
+ "translate-taskui-acceptqueue": "Tenya mesacê ke ez şenan qebul kerê",
+ "translate-taskui-reviewall": "Açarnayışan pêro çım ra raviyarne",
+ "translate-taction-translate": "Açarnayış",
+ "translate-taction-proofread": "Çımraraviyarnayış",
+ "translate-taction-lstats": "İstatistikê zıwani",
+ "translate-taction-mstats": "İstatistikê gruba mesacan",
+ "translate-taction-export": "Teber de",
+ "translate-page-settings-legend": "Sazi",
+ "translate-page-group": "Grube",
+ "translate-page-language": "Zıwan",
+ "translate-page-limit": "Limit",
+ "translate-page-limit-option": "$1 {{PLURAL:$1|mesac|mesac}} biya",
+ "translate-submit": "Biya",
+ "translate-page-navigation-legend": "Pusula",
+ "translate-page-showing": "$3 mesacan ra [$1 ra $2] mocniyenê",
+ "translate-page-showing-all": "$1 {{PLURAL:$1|mesac|mesaci}} asenê.",
+ "translate-page-showing-none": "Mesaco ke bımocneyo çınyo.",
+ "translate-page-paging-links": "[ $1 ] [ $2 ]",
+ "translate-next": "Pela peyêne",
+ "translate-prev": "Pela verêne",
+ "translate-page-description-legend": "Heqa grube de melumat",
+ "translate-page-description-hasoptional-open": "Mesacanê waşteyan bımocne.",
+ "translate-page-edit": "bıvurne",
+ "translate-ext-url": "<hr />Web sitay cı: $1",
+ "translate-optional": "(opsiyonel)",
+ "translate-ignored": "(Nê hesıbneyine)",
+ "translate-edit-title": "\"$1\"i bıvurne",
+ "translate-edit-definition": "Şınasiya mesaci",
+ "translate-edit-translation": "Çarnayışi",
+ "translate-edit-contribute": "iştıraq ke",
+ "translate-edit-no-information": "<em>''Wesiqaya nê mesaci çışniya.''\n''Şıma ke zanê koti ya zi no mesac gureniyeno, şıma şenê açarnoğanê binan rê qandê wesiqa ilawekerdış be nê mesaci ra peşti cı dê.''</em>",
+ "translate-edit-information": "Heqa mesacê ($1) de melumat",
+ "translate-edit-in-other-languages": "Zıwanan dê binan de mesaci",
+ "translate-edit-tmsugs": "Virê çarnayışi u çarnayışê makina ra weşenayışi",
+ "translate-edit-tmmatch": "Zey $1%",
+ "translate-magic-pagename": "Açarnayışê MedyaVikiyo herayen",
+ "translate-magic-module": "Modul:",
+ "translate-magic-submit": "Biya",
+ "translate-magic-cm-export": "Teber de",
+ "translate-magic-cm-to-be": "Bıke",
+ "translate-magic-cm-current": "Newe resnayış",
+ "translate-magic-cm-original": "Oricinal",
+ "translate-magic-cm-comment": "Vatış:",
+ "translate-magic-cm-save": "Qeyd ke",
+ "translate-magic-cm-savefailed": "Starê nêkewt",
+ "translate-magic-special": "Leqebê pela xısusiye",
+ "translate-magic-words": "Çekuyê nuşteyıni",
+ "translate-magic-namespace": "Nameyê heruna nameyan",
+ "translate-pref-editassistlang": "Zıwanê peşti:",
+ "translate-rc-translation-filter": "Açarnayışê parzûni:",
+ "translate-rc-translation-filter-no": "Qırşê mekı",
+ "translationstats": "Açarnayışe İstatıstıkan",
+ "translate-stats-edits": "Vurnayışi",
+ "translate-stats-users": "Açarnayoği",
+ "translate-statsf-start": "Demê destpêkerdışi:",
+ "translate-statsf-scale-months": "Aşmi",
+ "translate-statsf-scale-weeks": "Heftey",
+ "translate-statsf-scale-days": "Roci",
+ "translate-statsf-scale-hours": "Seati",
+ "translate-statsf-count-registrations": "Kerbero newe",
+ "translate-statsf-count-reviews": "Açarnayışi ercınayış",
+ "translate-statsf-submit": "Verqayt",
+ "translate-tag-page-desc": "Açarnayışê pela da [[$2|$1]] wiki",
+ "translate-sidebar-alltrans": "Zıwanê bini",
+ "translations": "Çarnayışi pêro",
+ "translate-translations-fieldset-title": "Mesac",
+ "translate-translations-messagename": "Name:",
+ "translate-translations-project": "Proce:",
+ "translate-translations-history-short": "s",
+ "languagestats": "İstatistikê zıwani",
+ "languagestats-summary": "Na pelay qan de istatistik dê gruban de mesaca zıwan açarnayışa mocnena.",
+ "languagestats-stats-for": "Qan dê $1 istatistikê açarnayışi ($2).",
+ "languagestats-recenttranslations": "Çarnayışe bahdoni",
+ "translate-langstats-incomplete": "Tay istatistiki ena pela dı nêratneyay. İstatistikan mocnayışi rê pela newe kerê.",
+ "translate-langstats-expand": "Hera ke",
+ "translate-langstats-collapse": "Kılm ke",
+ "translate-langstats-expandall": "pêrıne hera ke",
+ "translate-langstats-collapseall": "Pêron Kılm ke",
+ "translate-language-code": "Kodê zıwani",
+ "translate-language-code-field-name": "Kodê zıwani:",
+ "translate-suppress-complete": "Grubanê mesacanê ke pêro açarniyayê bınımne",
+ "translate-ls-noempty": "Grubanê mesacanê ke pêro nêaçarniyayê bınımne",
+ "translate-language": "Zıwan",
+ "translate-total": "Mesaci",
+ "translate-untranslated": "Nêaçarniyaye",
+ "translate-percentage-complete": "Temambiyayış",
+ "translate-percentage-fuzzy": "Bi kehen",
+ "translate-languagestats-overall": "Grubanê mesacan ra pêro piya",
+ "translate-ls-submit": "İstatistikan bımocne",
+ "translate-ls-column-group": "Gruba mesacan",
+ "translate-mgs-pagename": "İstatistikê gruba mesacan",
+ "translate-mgs-fieldset": "Asengeyê tercihan",
+ "translate-mgs-group": "Gruba mesacan",
+ "translate-mgs-submit": "İstatistikan bımocne",
+ "translate-mgs-column-language": "Zıwan",
+ "supportedlanguages": "Zıwanê ke qebulyayê",
+ "supportedlanguages-translators": "{{PLURAL:$2|Açerner|Açerneri}}: $1",
+ "supportedlanguages-recenttranslations": "Çarnayışe bahdoni",
+ "supportedlanguages-activity": "$1: pêro piya $2 {{PLURAL:$2|vurnayış|vurnayışi}} - vurnayışo peyên $3 {{PLURAL:$3|roce|roci}} aver keriya",
+ "translate-save": "($1) qeyd ke",
+ "translate-jssti-add": "Listiy miyan fi",
+ "managemessagegroups": "İdareyê gruba mesacan",
+ "translate-manage-import-new": "$1 ra yew mesaco newe",
+ "translate-manage-import-deleted": "Mesaco besternaye: $1",
+ "translate-manage-action-import": "Azare de",
+ "translate-manage-action-ignore": "Pey gos bıqe",
+ "translate-import-load": "Dosya barkerê",
+ "translate-js-summary": "Xulasa:",
+ "translate-js-save": "Qeyd ke",
+ "translate-js-support": "Çiyê pers bıke",
+ "translate-gs-pos": "Ca",
+ "translate-gs-code": "Kod",
+ "translate-gs-speakers": "Qısekari",
+ "translate-gs-score": "Skor",
+ "translate-gs-multiple": "Zafının",
+ "translate-gs-count": "Tene",
+ "translate-gs-total": "Pêro piya",
+ "translate-search-nofilter": "Bê filtre",
+ "translate-messagereview-submit": "Qebul bıkê",
+ "translate-messagereview-progress": "Oyo qebul beno",
+ "translate-messagereview-done": "Qebuliya",
+ "translate-workflowstatus": "Weziyet: $1",
+ "translate-workflow-set-do": "Saz",
+ "translate-workflow-set-doing": "Sazêno...",
+ "translate-workflow-set-done": "Saz kê!",
+ "translate-stats-workflow": "Weziyet",
+ "translate-dynagroup-recent-label": "Çarnayışe bahdoni",
+ "translate-gethelp": "Peşti",
+ "translate-msggroupselector-search-all": "Pêro",
+ "tux-tab-all": "Pêro",
+ "tux-tab-translated": "Açariyayo",
+ "tux-status-translated": "Açariyayo",
+ "tux-editor-clear-translated": "Açarnayeyan bınımne",
+ "tux-editor-proofreading-mode": "Çımraraviyarnayış",
+ "tux-editor-proofreading-hide-own-translations": "Çarnayışanê xo nişan bınımne",
+ "tux-editor-proofreading-show-own-translations": "Çarnayışanê xo nişan bıde",
+ "tux-editor-page-mode": "Pele"
+}
diff --git a/MLEB/Translate/i18n/core/dsb.json b/MLEB/Translate/i18n/core/dsb.json
new file mode 100644
index 00000000..143f2929
--- /dev/null
+++ b/MLEB/Translate/i18n/core/dsb.json
@@ -0,0 +1,384 @@
+{
+ "@metadata": {
+ "authors": [
+ "Dundak",
+ "Michawiki",
+ "Shirayuki",
+ "Derbeth"
+ ]
+ },
+ "translate": "Pśełožyś",
+ "translate-desc": "[[Special:Translate|Specialny bok]] za pśełožowanje MediaWiki a druge",
+ "translate-taskui-view": "Wšykne powěźeńki pokazaś",
+ "translate-taskui-untranslated": "Njepśełožone powěźeńki pokazaś",
+ "translate-taskui-optional": "Opcionalne powěźeńki pokazaś",
+ "translate-taskui-acceptqueue": "Jano powěźeńki, kótarež mógu ako pśeglědane markěrowaś",
+ "translate-taskui-reviewall": "Wšykne pśełožki pśeglědaś",
+ "translate-taskui-export-to-file": "Do systemowego formata eksportěrowaś",
+ "translate-taskui-export-as-po": "Za pśełožowanje offline eksportěrowaś",
+ "translate-taction-translate": "Pśełožyś",
+ "translate-taction-proofread": "Pśeglědaś",
+ "translate-taction-lstats": "Rěcna statistika",
+ "translate-taction-mstats": "Statistika zdźěleńskich kupkow",
+ "translate-taction-export": "Eksportěrowaś",
+ "translate-taction-disabled": "Toś ta akcija jo se na toś tom wikiju znjemóžniła.",
+ "translate-page-no-such-language": "Pódana rěc jo njepłaśiwa była.",
+ "translate-page-no-such-group": "Pódana kupka jo njepłaśiwa była.",
+ "translate-page-disabled": "Pśełožki w toś tej rěcy w toś tej kupce su se znjemóžnili. Pśicyna:\n\n<em>$1</em>",
+ "translate-language-disabled": "Pśełožowanje do toś teje rěcy jo znjemóžnjone.",
+ "translate-page-settings-legend": "Nastajenja",
+ "translate-page-group": "Kupka",
+ "translate-page-language": "Rěc",
+ "translate-page-limit": "Licba powěsćow",
+ "translate-page-limit-option": "$1 {{PLURAL:$1|powěsć|powěsći|powěsći|powěsćow}} na bok",
+ "translate-submit": "Pokazaś",
+ "translate-page-navigation-legend": "Nawigacija",
+ "translate-page-showing": "Pokazuju se powěsći wót $1 až $2 z $3.",
+ "translate-page-showing-all": "{{PLURAL:$1|Pokazujo|Pokazujotej|Pokazuju|Pokazujo}} se $1 {{PLURAL:$1|powěsć|powěsći|powěsći|powěsćow}}.",
+ "translate-page-showing-none": "Njedaju powěsći.",
+ "translate-next": "Pśiducy bok",
+ "translate-prev": "Slědny bok",
+ "translate-page-description-legend": "Informacije wó kupce",
+ "translate-page-description-hasoptional": "Toś ta zdźěleńska kupka wopśimujo opcionalne powěźeńki.\nOpcionalne powěźeńki by měli se jano pśełožowaś, jolic twója rěc ma wósebnu pótrjebu za nje,\nkaž na pśikład njewužywanje proznych znamuškow abo transliteraciju swójskich mjenjow. $1",
+ "translate-page-description-hasoptional-open": "Opcionalne powěźeńki pokazaś.",
+ "translate-page-edit": "wobźěłaś",
+ "translate-ext-url": "<hr />Websedło: $1",
+ "translate-optional": "(opcionalny)",
+ "translate-ignored": "(ignorěrowany)",
+ "translate-edit-title": "„$1“ wobźěłaś",
+ "translate-edit-definition": "Definicija powěsći",
+ "translate-edit-translation": "Pśełožk",
+ "translate-edit-contribute": "pśinosowaś",
+ "translate-edit-no-information": "<em>Toś ta powěsć njama dokumentaciju. Jolic wěš, źož abo kak toś ta powěsć se wužywa, móžoš drugim pśełožowarjam pomagaś, z tym až dokumentaciju k toś tej powěsći pśidawaš.</em>",
+ "translate-edit-information": "Informacije wó powěsći ($1)",
+ "translate-edit-in-other-languages": "Powěsć w drugich rěcach",
+ "translate-edit-committed": "Aktualny pśełožk w software",
+ "translate-edit-warnings": "Warnowanja wó njedopołnych pśełožkach",
+ "translate-edit-tmsugs": "Naraźenja z pśełožowańskego spomnjeśa",
+ "translate-edit-tmmatch-source": "Žrědłowy tekst pśełožka: $1",
+ "translate-edit-tmmatch": "$1 % makanja",
+ "translate-use-suggestion": "Aktualny pśełožk pśez toś to naraźenje wuměniś",
+ "translate-edit-nopermission": "Trjebaš pśełožowańske pšawa, aby mógał powěźeńki pśełožowaś.",
+ "translate-edit-askpermission": "Pšawo dostaś",
+ "translate-magic-pagename": "Rozšyrjony pśełožk MediaWiki",
+ "translate-magic-help": "Móžoš aliasy specialnych bokow, magiske słowa a mjenja mjenjowych rumow pśełožyś.\n\nAliasy specialnych bokow a magiske słowa mógu měś někotare pśełožki. Pśełožki wótźěluju se pśez komu (,). Mjenjowe rumy mógu jano jaden pśełožk měś.\n\nPśełožowanje mjenjowego ruma projektoweje diskusije <code>$1 talk</code> móžo komplicěrowane byś. <code>$1</code> se pśez mjenjom sedła wuměnja (na pśikład <code>{{ns:project_talk}}</code>). Jolic w twójej rěcy njejo móžno, płaśiwy wuraz tworiś, mimo až dejš mě sedła změniš, daj nam to na boku [[Support|Pódpěra]] k wěsći.\n\nMusyš pśełožowaŕ byś, aby mogł změny cyniś.\nZměny se njeskładuju, až njekliknjoš na tłocašk \"Składowaś\" dołojce.",
+ "translate-magic-module": "Modul:",
+ "translate-magic-submit": "Pokazaś",
+ "translate-magic-cm-export": "Eksportěrowaś",
+ "translate-magic-nothing-to-export": "Njedajo nic eksportěrowaś.",
+ "translate-magic-cm-to-be": "Ma byś",
+ "translate-magic-cm-current": "aktualne",
+ "translate-magic-cm-original": "Original",
+ "translate-magic-cm-comment": "Komentar",
+ "translate-magic-cm-save": "Składowaś",
+ "translate-magic-cm-updatedusing": "Z pomocu [[Special:AdvancedTranslate|{{int:Translate-magic-pagename}}]] zaktualizěrowany",
+ "translate-magic-cm-savefailed": "Składowanje njejo se raźiło",
+ "translate-magic-special": "Aliasy specialnych bokow",
+ "translate-magic-words": "Magiske słowa",
+ "translate-magic-namespace": "Mjenja mjenjowych rumow",
+ "translate-magic-notsaved": "Twója změna njejo se składła!",
+ "translate-magic-errors": "Pšosym skorigěruj {{PLURAL:$1|slědujucu zmólku|slědujucej zmólce|slědujuce zmólki|slědujuce zmólki}} w pśełožkach:",
+ "translate-magic-saved": "Twóje změny su se wuspěšnje składli.",
+ "translate-checks-parameters": "{{PLURAL:$2|Slědujucy parameter|Slědujucej parametra|Slědujuce parametry|Slědujucych parametrow}} se {{PLURAL:$2|njewužywa|njewužywatej|njewužywaju|njwužywa}}: <strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-parameters-unknown": "{{PLURAL:$2|Slědujucy parameter jo njeznaty|Slědujucej parametra stej njeznatej|Slědujuce parametry su njeznate|Slědujucych parametrow jo njeznate}}: <strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-balance": "Jo njerowna licba {{PLURAL:$2|spinka|spinkow}}: <strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links": "{{PLURAL:$2|Slědujucy wótkaz jo problematiski|Slědujucej wótkaza stej problematiskej|Slědujuce wótkaze su problematiske|Slědujucych wótkazow jo problematiske}}: <strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links-missing": "{{PLURAL:$2|Slědujucy wótkaz felujo|Slědujucej $2 wótkaza felujotej|Slědujuce $2 wótkaze feluju|Slědujucych $2 wótkazow felujo}}: <strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-xhtml": "Wuměń pšosym {{PLURAL:$2|Slědujucy tag|slědujucej taga|slědujuce tagi|slědujuce tagi}} pśez {{PLURAL:$2|korektny|korektnej|korektne|korektne}}: <strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-plural": "Definicija <nowiki>{{PLURAL:}}</nowiki> wužywa, pśełožk pak nic.",
+ "translate-checks-plural-forms": "Za <nowiki>{{PLURAL:}}</nowiki> {{PLURAL:$1|jo se jadna forma pódała|stej se $1 formje pódałej|su se $1 formy pódali|jo se $1 formow pódało}}, ale {{PLURAL:$2|pódpěra se jano jadna forma|pódpěratej se $2 formje|pódpěraju se $2 formy|pódpěra se $2 formow}} (bźez formow 0= a 1=).",
+ "translate-checks-plural-dupe": "<nowiki>{{PLURAL:}}</nowiki> ma dwě jadnuckej formje na kóńcu. <nowiki>{{PLURAL:$1|mloko|mloko}}</nowiki> měł se ako <nowiki>{{PLURAL:$1|mloko}}</nowiki> pisaś.",
+ "translate-checks-pagename": "Mjenjowy rum pśez definiciju změnjony",
+ "translate-checks-format": "Toś ten pśełožk njeslědujo definiciji abo ma njepłaśiwu syntaksu: $1",
+ "translate-checks-escape": "Slědujuce eskapowe sekwence mógu pśipadne byś: <strong>$1</strong>",
+ "translate-checks-parametersnotequal": "Licba parametrow jo {{PLURAL:$1|$1}}; to měł {{PLURAL:$2|$2}} byś.",
+ "translate-checks-malformed": "<nowiki>$1</nowiki> ma njepłaśiwu formu.",
+ "translate-checks-fudforum-syntax": "<nowiki>$1</nowiki> město <nowiki>$2</nowiki> w toś tom projekśe wužywaś.",
+ "translate-pref-nonewsletter": "Njesćelśo mě emailowy list nowosćow",
+ "translate-pref-editassistlang": "Pomocne rěcy:",
+ "prefs-translate": "Pśełožowańske opcije",
+ "translate-pref-editassistlang-help": "Lisćina rěcnych kodow z komu ako źěleńske znamuško.\nPśełožowanje powěźeńki w toś tych rěcach se pokazuju, gaž pśełožujoš.\nStandardna lisćina rěcow wótwisujo wót swójeje rěcy.",
+ "translate-pref-editassistlang-bad": "Njepłaśiwy rěcny kod w lisćinje:\n<nowiki>$1</nowiki>.",
+ "right-translate": "Z pomocu pśełožowańskego pówjercha wobźěłaś",
+ "right-translate-manage": "Zdźěleńske kupki zastojaś",
+ "action-translate-manage": "zdźěleńske kupki zastojaś",
+ "right-translate-import": "Pśełožki offline importěrowaś",
+ "action-translate-import": "offline wugbane pśełožki importěrowaś",
+ "right-translate-messagereview": "Pśełožki pśeglědaś",
+ "right-translate-groupreview": "Źěłowy status zdźěleńskich kupkow změniś",
+ "translate-rc-translation-filter": "Pśełožki filtrowaś:",
+ "translate-rc-translation-filter-no": "Njecyń nic",
+ "translate-rc-translation-filter-only": "Jano pśełožki pokazaś",
+ "translate-rc-translation-filter-filter": "Pśełožki wufiltrowaś",
+ "translate-rc-translation-filter-site": "Jano změny sedłowych powěsćow",
+ "translationstats": "Statistika pśełožkow",
+ "translate-stats-edits": "Změny",
+ "translate-stats-users": "Pśełožowarje",
+ "translate-stats-registrations": "Registrěrowanja",
+ "translate-stats-reviews": "Pśeglědanja",
+ "translate-stats-reviewers": "Pséglědowarje",
+ "translate-statsf-intro": "Z toś tym formularom móžoš napóraś jadnoru statistiku. Wše gódnoty maju górjejcny a dołojcny limit.",
+ "translate-statsf-options": "Opcije grafa",
+ "translate-statsf-width": "Šyrokosć w pikselach:",
+ "translate-statsf-height": "Wusokosć w pikselach:",
+ "translate-statsf-days": "Cas w dnjach:",
+ "translate-statsf-start": "Zachopny datum:",
+ "translate-statsf-scale": "Granularita:",
+ "translate-statsf-scale-months": "Mjasece",
+ "translate-statsf-scale-weeks": "Tyźenje",
+ "translate-statsf-scale-days": "Dny",
+ "translate-statsf-scale-hours": "Goźiny",
+ "translate-statsf-count": "Měra:",
+ "translate-statsf-count-edits": "Licba změnow",
+ "translate-statsf-count-users": "Aktiwne pśełožowarje",
+ "translate-statsf-count-registrations": "Nowe wužywarje",
+ "translate-statsf-count-reviews": "Pśeglědanja pśełožkow",
+ "translate-statsf-count-reviewers": "Pséglědowarje",
+ "translate-statsf-language": "Lisćina rěcnych kodow wótźělonych pśez komu:",
+ "translate-statsf-group": "Lisćina kupkowych kodow wótźělonych pśez komu:",
+ "translate-statsf-submit": "Pśeglěd",
+ "translate-tag-category": "Pśełožujobne boki",
+ "translate-tag-page-desc": "Pśełožk wikijowego boka [[$2|$1]].",
+ "translate-sidebar-alltrans": "W drugich rěcach",
+ "translations": "Wšykne pśełožki",
+ "translations-summary": "Zapódaj dołojce zdźěleńske mě, aby wšykne k dispozciji stojece pśełožki pokazał.",
+ "translate-translations-no-message": "\"$1\" njejo zdźělenje, kótarež dajo se pśełožowaś.",
+ "translate-translations-none": "Njejsu pśełožki za \"$1\"",
+ "translate-translations-count": "{{PLURAL:$1|jaden pśełožk namakany|$1 pśełožka namkanej|$1 pśełožki namakane|$1 pśełožkow namakanych}}",
+ "translate-translations-fieldset-title": "Powěźeńka",
+ "translate-translations-messagename": "Mě:",
+ "translate-translations-project": "Projekt:",
+ "translate-translations-including-no-param": "Pódaj pšosym płaśiwy kluc powěźenki w parametrje pódboka",
+ "translate-translations-history-short": "W",
+ "languagestats": "Rěcna statistika",
+ "languagestats-summary": "Toś ten bok pokazujo pśełožkowu statistiku za wšykne zdźěleńske kupki za rěc.",
+ "languagestats-stats-for": "Pśełožowańska statistika za $1 ($2).",
+ "languagestats-recenttranslations": "nowše pśełožki",
+ "translate-langstats-incomplete": "Někotare statistiki na toś tom boku su njedopołne. Pšosym zacytaj je hyšći raz, aby dalšne statistiki dostał.",
+ "translate-langstats-expand": "pokazaś",
+ "translate-langstats-collapse": "schowaś",
+ "translate-langstats-expandall": "wšykne pokazaś",
+ "translate-langstats-collapseall": "wšykne schowaś",
+ "translate-language-code": "Rěcny kod",
+ "translate-language-code-field-name": "Rěcny kod:",
+ "translate-suppress-complete": "Dopołnje pśełožone zdźěleńske kupki pódtłocyś",
+ "translate-ls-noempty": "Dopołnje njepśełožone zdźěleńske kupki pódtłocyś",
+ "translate-language": "Rěc:",
+ "translate-total": "Zdźělenja",
+ "translate-untranslated": "Njepśełožony",
+ "translate-percentage-complete": "Dopołnjenje",
+ "translate-percentage-fuzzy": "Zestarjony",
+ "translate-languagestats-overall": "Wšykne zdźěleńske kupki dogromady",
+ "translate-ls-submit": "Statistiku pokazaś",
+ "translate-ls-column-group": "Zdźěleńska kupka",
+ "translate-mgs-pagename": "Statistika zdźěleńskich kupkow",
+ "translate-mgs-fieldset": "Nastajenja pokazaś",
+ "translate-mgs-group": "Zdźěleńska kupka:",
+ "translate-mgs-nocomplete": "Rěcy z dokóńconymi pśełožkami njezwobrazniś",
+ "translate-mgs-noempty": "Rěcy njepokazaś, kótarež njamaju pśełožki",
+ "translate-mgs-submit": "Statistiku pokazaś",
+ "translate-mgs-column-language": "Rěc",
+ "translate-mgs-totals": "Wšykne rěcy dogromady",
+ "translate-mgs-invalid-group": "Pódana kupka $1 njeeksistěrujo.",
+ "translate-mgs-nothing": "Za pominanu statistiku daty njejsu.",
+ "supportedlanguages": "Pódpěrane rěcy",
+ "supportedlanguages-summary": "Toś ten bok pokazujo lisćinu wšych rěcow, kótarež pódpěraju se pśez {{GRAMMAR:akuzatiw|{{SITENAME}}}}, gromaźe z mjenjami pśełožowarjow, kótarež pśełožuju do teje rěcy.\nMě pśełožowarja pokazujo se šym wětšo śim wěcej změnow pśełožowaŕ jo dodał.\nBarwa pódsmužkowanja pśełožowarskego mjenja pokazujo, kak aktiwny pśełožowaŕ jo njedawno był.",
+ "supportedlanguages-colorlegend": "Legenda za barwu: Slědny pśełožk pśed $1 dnjami.",
+ "supportedlanguages-translators": "{{PLURAL:$2|Pśełožowaŕ|Pśełožowarja|Pśełožowarje|Pśełožowarjow}}: $1",
+ "supportedlanguages-recenttranslations": "nejnowše pśełožki",
+ "supportedlanguages-count": "$1 {{PLURAL:$1|rěc|rěcy|rěcy|rěcow}} dogromady.",
+ "supportedlanguages-activity": "$1: $2 {{PLURAL:$2|změna|změnje|změny|změnow}} - slědna změna pśed $3 {{PLURAL:$3|dnjom|dnjoma|dnjami|dnjami}}",
+ "translate-save": "Składowaś ($1)",
+ "translate-jssti-add": "Lisćinje pśidaś",
+ "managemessagegroups": "Zastojanje kupkow powěźeńkow",
+ "translate-smg-notallowed": "Njesmějoš toś tu akciju wuwjasć.",
+ "translate-smg-nochanges": "Njejsu žedne změny za pśeźěłanje.",
+ "translate-smg-submit": "Změny na pśeźěłowanje pósłaś",
+ "translate-smg-submitted": "Definicije powěźeńkow su se zaktualizěrowali. Změny pśeźěłuju se w slězynje.",
+ "translate-smg-more": "Pó składowanju toś tych změnow muse se dalšne změny pśeźěłaś.",
+ "translate-smg-left": "Powěsćowe wopśimjeśe we wikiju",
+ "translate-smg-right": "Dochadajuce změny",
+ "translate-manage-import-diff": "Powěźeńka $1 | akcije: $2",
+ "translate-manage-import-new": "Nowa powěźeńka $1",
+ "translate-manage-import-deleted": "Wulašowana powěźeńka $1",
+ "translate-manage-action-import": "Importěrowaś",
+ "translate-manage-action-conflict": "Importěrowaś a ako \"fuzzy\" markěrowaś",
+ "translate-manage-action-ignore": "Ignorěrowaś",
+ "translate-manage-action-fuzzy": "Pśełožki importěrowaś a ako \"fuzzy\" markěrowaś",
+ "translate-manage-nochanges": "Njejsu změny w definicijach powěźeńkow za toś tu kupku.",
+ "translate-manage-nochanges-other": "Njejsu žedne změny za toś tu rěc byli.\nWužyj slědujucy wótkaz, aby se k naglědoju kupkowych drobnostkow wrośił.",
+ "translate-manage-inconsistent": "Nadejźona inkonsistenca w napšašowanju.\nPšosym pśeglědaj za změny a wopytaj hyšći raz.\nDrobnostki: $1",
+ "translate-manage-toolong": "Maksimalny pśeźěłowański cas $1 {{PLURAL:$1|sekundy|sekundowu|sekundow|sekundow}} jo pśebyty.\nPšosym wótpósćel formular znowego, aby z pśeźěłanim pókšacował.",
+ "translate-manage-import-summary": "Nowa wersija importěrujo se z eksternego žrědła",
+ "translate-manage-conflict-summary": "Nowa wersija importěrujo se z eksternego žrědła.\nPšosym pśeglědaś.",
+ "translate-manage-fuzzy-summary": "Definicija powěźeńki jo se změniła",
+ "translate-manage-submit": "Wuwjasć",
+ "translate-manage-intro-other": "Dołojce jo lisćina pśełožkowych změnow w rěcy $1.\nPšosym pśeglědaj změny a wubjeŕ akciju, kótaruž coš za kuždy pśełožk cyniś.\nJolic ignorěrujoš změny, jo toś ta akcija jano nachylna.",
+ "translate-manage-import-ok": "Importěrowany: $1",
+ "translate-manage-import-done": "Import dokóńcony!",
+ "importtranslations": "Pśełožki importěrowaś",
+ "translate-import-from-local": "Nagraśe lokalneje dataje:",
+ "translate-import-load": "Dataju zacytaś",
+ "translate-import-err-dl-failed": "Njemóžno dataju wótwołaś:\n$1",
+ "translate-import-err-ul-failed": "Nagraśe dataje njejo wuspěšne było",
+ "translate-import-err-invalid-title": "Pódane datajowe mě <nowiki>$1</nowiki> jo njepłaśiwe było.",
+ "translate-import-err-no-such-file": "Dataja <nowiki>$1</nowiki> njeeksistěrujo abo jnejo se lokalnje nagrała.",
+ "translate-import-err-stale-group": "Kupka powěźeńkow, ku kótarejž toś ta dataja słuša, njeeksistěrujo.",
+ "translate-import-err-no-headers": "Dataja mjejp derje wuformowana dataja gettext we formaśe pśełožowańskego formata:\nNjemóžno kupku a rěc z datajowych głowow zwěsćiś.",
+ "translate-import-err-warnings": "Dataja njejo derje wuformowana.\nZawěsć, až twój editor njewótpórujo póla msgctxt.\nDrobnostki: $1",
+ "translate-js-summary": "Zespominanje:",
+ "translate-js-save": "Składowaś",
+ "translate-js-next": "Pśiducu powěźeńku składowaś a wocyniś",
+ "translate-js-nonext": "To jo było slědna powěźeńka na tos tom boku.",
+ "translate-js-skip": "K pśiducej powěźeńce skócyś",
+ "translate-js-save-failed": "Składowanje njejo se raźiło. Pšosym daj toś tu zmólku k wěsći.",
+ "translate-js-history": "Pśełožowańska historija",
+ "translate-js-support": "Pšašaś se",
+ "translate-js-support-title": "Pšos wó pomoc, jolic njejo dosć informacijow, aby se toś ta powěźeńka pšawje pśełožyła.",
+ "translate-js-support-unsaved-warning": "Maš njeskłaźone pśełožki.",
+ "translate-gs-pos": "Poz.",
+ "translate-gs-code": "Kod",
+ "translate-gs-continent": "Kontinent",
+ "translate-gs-speakers": "Powědarje",
+ "translate-gs-score": "Pogódnośenje",
+ "translate-gs-multiple": "Někotare",
+ "translate-gs-count": "Licba",
+ "translate-gs-total": "Dogromady",
+ "translate-gs-avgscore": "Pśerězne pogódnośenje",
+ "translate-documentation-language": "Pokazki za pśełožowanje",
+ "translate-searchprofile": "Pśełožki",
+ "translate-searchprofile-tooltip": "We wšych pśełožkach pytaś",
+ "translate-search-languagefilter": "Pó rěcy filtrowaś:",
+ "translate-search-nofilter": "Žedne filtrowanje",
+ "translate-messagereview-submit": "Ako pśeglědany markěrowaś",
+ "translate-messagereview-progress": "Markěrujo se ako pśeglědany...",
+ "translate-messagereview-failure": "Markěrowanje ako pśeglědany njejo se raźiło: $1",
+ "translate-messagereview-done": "Pśeglědany",
+ "translate-messagereview-reviews": "Wót {{PLURAL:$1|jadnogo wužywarja|$1 wužywarjowu|$1 wužywarjow}} pśeglědany",
+ "translate-messagereview-reviewswithyou": "Wót {{PLURAL:$1|tebje|$1 wužywarjowu inkluziwnje tebje|$1 wužywarjow inkluziwnje tebje}} pśeglědany",
+ "api-error-invalidrevision": "Pśełožk njejo se namakał",
+ "api-error-unknownmessage": "Powěźeńka njejo se namakała",
+ "api-error-fuzzymessage": "Pśełožk jo ako zestarjony markěrowany",
+ "api-error-owntranslation": "Njamóžoš swójske pśełožki ako pśeglědane markěrowaś",
+ "translate-messagereview-no-fuzzy": "Zestarjone pśełožki njedaju se ako pśeglědane markěrowaś.",
+ "translate-messagereview-no-own": "Njamóžoš swójske pśełožki ako pśeglědane markěrowaś.",
+ "translate-messagereview-doit": "Toś ten pśełožk ako pśeglědany markěrowaś",
+ "log-name-translationreview": "Protokol pśełožkowych kontrolow",
+ "log-description-translationreview": "Protokol wšych kontrolow k pśełožkam a zdźěleńskim kupkam.",
+ "logentry-translationreview-message": "$1 jo pśełožk $3 ako pśeglědany {{GENDER:$2|markěrował|markěrowała}}",
+ "logentry-translationreview-group": "$1 jo status pśełožkow w rěcy $4 boka $3 wót $6 do $7 {{GENDER:$2|změnił|změniła}}",
+ "group-translate-sandboxed": "Njewobkšuśone pśełožowarje",
+ "group-translate-sandboxed-member": "{{GENDER:$1|njewobkšuśony pśełožowaŕ|njewobkśuśona pśełožowarka}}",
+ "right-translate-sandboxmanage": "Wužywarje grajkanišća zastojaś",
+ "action-translate-sandboxmanage": "wužywarje grajkanišća zastojaś",
+ "right-translate-sandboxaction": "Akcije wuwjasć, kótarež su na \"běłej lisćinje\" wužywarjow grajkanišća",
+ "action-translate-sandboxaction": "Akcije wuwjasć, kótarež su na \"běłej lisćinje\" wužywarje grajkanišća",
+ "translate-workflow-state-": "(njenastajony)",
+ "translate-workflowstatus": "Status: $1",
+ "translate-workflow-set-do": "Nastajiś",
+ "translate-workflow-set-doing": "Nastaja se...",
+ "translate-workflow-set-done": "Nastajony!",
+ "translate-workflow-set-error-alreadyset": "Pominany status jo identiski z aktualnym statusom.",
+ "translate-workflow-autocreated-summary": "Awtomatiske napóranje boka za źěłowótběgowy status $1",
+ "translate-stats-workflow": "Status",
+ "translate-workflowgroup-label": "Źěłowótběgowe statuse",
+ "translate-workflowgroup-desc": "Toś ta zdźěleńska kupka pokazujo pśełožowańske źěłowótběgowe statuse.\nStatuse definěruju se w konfiguraciskej wariabli $wgTranslateWorkflowStates.",
+ "translate-dynagroup-recent-label": "Nejnowše pśełožki",
+ "translate-dynagroup-recent-desc": "Toś ta zdźěleńska kupka pokazujo wšykne aktualne pśełožki do toś teje rěcy.\nJo nejwužytnjej za pśeglědowańske nadawki.",
+ "translate-dynagroup-additions-label": "Aktualne dodanki",
+ "translate-dynagroup-additions-desc": "Toś ta powěsćowa kupka pokazujo nowe a změnjone pówěźeńki.",
+ "translate-dynagroup-by": "Pśełožk wót {{GENDER:$1|$1}}",
+ "translate-dynagroup-byc": "Pśełožk wót {{GENDER:$1|$1}} ($2)",
+ "translate-dynagroup-last": "Nejnowša změna wót {{GENDER:$1|$1}}",
+ "translate-dynagroup-lastc": "Nejnowša změna wót {{GENDER:$1|$1}} ($2)",
+ "translate-gethelp": "Pomoc",
+ "translate-msggroupselector-projects": "Zdźěleńska kupka",
+ "translate-msggroupselector-search-placeholder": "Kupki pśepytaś",
+ "translate-msggroupselector-search-all": "Wšykne",
+ "translate-msggroupselector-search-recent": "Nejnowše",
+ "translate-msggroupselector-view-subprojects": "$1 {{PLURAL:$1|pódkupka|pódkupce|pódkupki|pódkupkow}}",
+ "tux-languageselector": "Pśełoźiś do",
+ "tux-tab-all": "Wšykne",
+ "tux-tab-untranslated": "Njepśełožony",
+ "tux-tab-outdated": "Zestarjony",
+ "tux-tab-translated": "Pśełožony",
+ "tux-tab-unproofread": "Njepśeglědany",
+ "tux-edit": "Wobźěłaś",
+ "tux-status-optional": "Opcionalny",
+ "tux-status-fuzzy": "Zestarjony",
+ "tux-status-proofread": "Pśeglědany",
+ "tux-status-translated": "Pśełožony",
+ "tux-status-saving": "Składujo se...",
+ "tux-status-unsaved": "Njeskładowany",
+ "tux-editor-placeholder": "Twój pśełožk",
+ "tux-editor-paste-original-button-label": "Žrědłowy tekst zasajźiś",
+ "tux-editor-discard-changes-button-label": "Změny zachyśiś",
+ "tux-editor-save-button-label": "Pśełožk składowaś",
+ "tux-editor-skip-button-label": "K pśiducemu",
+ "tux-editor-cancel-button-label": "Pśetergnuś",
+ "tux-editor-confirm-button-label": "Pśełožk wobkšuśiś",
+ "tux-editor-shortcut-info": "Tłoc \"$1\", aby składował abo \"$2\", aby se k pśiducemu powěźeńce dostał abo \"$3\" za druge skrotconki.",
+ "tux-editor-edit-desc": "Dokumentaciju wobźěłaś",
+ "tux-editor-add-desc": "Dokumentaciju pśidaś",
+ "tux-editor-suggestions-title": "Naraźenja",
+ "tux-editor-in-other-languages": "W drugich rěcach",
+ "tux-editor-need-more-help": "Trjebaš wěcej pomocy?",
+ "tux-editor-ask-help": "Wó dalšne informacije pšosyś",
+ "tux-editor-tm-match": "$1 % makanja",
+ "tux-warnings-more": "{{PLURAL:$1|$1 dalšne|$1dalšnej|$1dalšne|$1 dalšnych}}",
+ "tux-warnings-hide": "schowaś",
+ "tux-editor-save-failed": "Pśełožk njedajo se składowaś: $1",
+ "tux-editor-n-uses": "{{PLURAL:$1|$1 raz|dwójcy|$1 raze|$1 razow}} wužyty",
+ "tux-editor-message-desc-more": "Wěcej se woglědaś",
+ "tux-editor-message-desc-less": "Mjenjej se woglědaś",
+ "tux-editor-clear-translated": "Pśełožki schowaś",
+ "tux-editor-proofreading-mode": "Pśeglědaś",
+ "tux-editor-translate-mode": "Lisćina",
+ "tux-editor-proofreading-hide-own-translations": "Twóje pśełožki schowaś",
+ "tux-editor-proofreading-show-own-translations": "Twóje pśełožki pokazaś",
+ "tux-proofread-action-tooltip": "Ako pśeglědany markěrowaś",
+ "tux-proofread-edit-label": "Wobźěłaś",
+ "tux-editor-page-mode": "Bok",
+ "tux-editor-outdated-warning": "Toś ten pśełožk musy se snaź aktualizěrowaś.",
+ "tux-editor-outdated-warning-diff-link": "Rozdźěle pokazaś",
+ "tux-editor-doc-editor-placeholder": "Dokumentacija powěźeńki",
+ "tux-editor-doc-editor-save": "Dokumentaciju składowaś",
+ "tux-editor-doc-editor-cancel": "Pśetergnuś",
+ "tux-messagetable-more-messages": "$1 {{PLURAL:$1|dalšna powěźeńka|dalšnej powěźeńce|dalšne powěźeńki|dalšnych powěźeńkow}}",
+ "tux-messagetable-loading-messages": "{{PLURAL:$1|Zacytujo se|Zacytujotej se|Zacytuju se|Zacytujo se}} $1 {{PLURAL:$1|powěźeńka|powěźeńce|powěźeńki|powěźeńkow}}.",
+ "tux-message-filter-placeholder": "Lisćinu filtrowaś",
+ "tux-message-filter-result": "$1 {{PLURAL:$1|wuslědk|wuslědka|wuslědki|wuslědkow}} za \"$2\" {{PLURAL:$1|namakany|namakanej|namakane}}",
+ "tux-message-filter-advanced-button": "Rozšyrjone pytanje",
+ "tux-message-filter-optional-messages-label": "Opcionalne powěźeńki",
+ "tux-proofread-translated-by-self": "Wót tebje pśełožony",
+ "tux-empty-list-all": "Toś ta zdźěleńska kupka jo prozna",
+ "tux-empty-list-all-guide": "Wubjeŕ drugu zdźěleńsku kupku za pśełožowanje",
+ "tux-translate-page-no-such-group": "<strong>Pódana skupina njeeksistěrujo.</strong> Wubjeŕ drugu zdźěleńsku kupku.",
+ "tux-empty-list-translated": "Žedne pśełožone powěźeńki",
+ "tux-empty-list-translated-guide": "Móžoš pomagaś pśełožowaś",
+ "tux-empty-list-translated-action": "Pśełožyś",
+ "tux-empty-no-messages-to-display": "Žedne powěsći za zwobraznjenje",
+ "tux-empty-there-are-optional": "Su opcionalne powěźeńki, kótarež njepokazuju se w lisćinje",
+ "tux-empty-show-optional-messages": "Opcionalne powěźeńki pokazaś",
+ "tux-empty-no-outdated-messages": "Žedne zestarjone powěźeńki",
+ "tux-empty-nothing-to-proofread": "Njejsu powěźeńki za pśeglědanje",
+ "tux-empty-you-can-help-providing": "Móžoš pomagaś, nowe pśełožki pśinosowaś",
+ "tux-empty-nothing-new-to-proofread": "Njejo nic nowe za pśeglědanje",
+ "tux-empty-you-can-review-already-proofread": "Móžoš pśełožki pśeglědaś, kótarež su južo druge pśeglědali.",
+ "tux-empty-list-other": "Njejo nic za pśełožowanje",
+ "tux-empty-list-other-guide": "Móžoš pomagaś, eksistěrujuce pśełožki pśeglědaś",
+ "tux-empty-list-other-action": "Pśełožki pśeglědaś",
+ "tux-empty-list-other-link": "Wšykne powěźeńki pokazaś",
+ "tux-editor-close-tooltip": "Zacyniś",
+ "tux-editor-expand-tooltip": "Pokazaś",
+ "tux-editor-collapse-tooltip": "Schowaś",
+ "tux-editor-message-tools-history": "Historija",
+ "tux-editor-message-tools-translations": "Wšykne pśełožki",
+ "tux-editor-loading": "Zacytujo se ...",
+ "translate-search-more-languages-info": "$1 {{PLURAL:$1|dalšna rěc|dalšnej rěcy|dalšne rěcy|dalšnych rěcow}}",
+ "translate-statsbar-tooltip": "$1 % pśełožone, $2 % pśeglědane",
+ "translate-statsbar-tooltip-with-fuzzy": "$1 % pśełožone, $2 % pśeglědane, $3 % zestarjone",
+ "translate-search-more-groups-info": "$1 {{PLURAL:$1|dalšna kupka|dalšnej kupce|dalšne kupki|dalšnych kupkow}}",
+ "translate-ulsdep-title": "Konfiguraciska zmólka",
+ "translate-ulsdep-body": "Pśełožowańske rozšyrjenje wótwisujo wót [https://www.mediawiki.org/wiki/Extension:UniversalLanguageSelector rozšyrjenja Universal Language Selector]."
+}
diff --git a/MLEB/Translate/i18n/core/dtp.json b/MLEB/Translate/i18n/core/dtp.json
new file mode 100644
index 00000000..d67bf42a
--- /dev/null
+++ b/MLEB/Translate/i18n/core/dtp.json
@@ -0,0 +1,12 @@
+{
+ "@metadata": {
+ "authors": [
+ "FRANCIS5091"
+ ]
+ },
+ "translate-page-navigation-legend": "Popotunud",
+ "translate-next": "Bolikon sumuhut",
+ "translate-page-edit": "idito",
+ "translate-magic-cm-current": "Timpu diti",
+ "translate-magic-cm-comment": "Kanu:"
+}
diff --git a/MLEB/Translate/i18n/core/ee.json b/MLEB/Translate/i18n/core/ee.json
new file mode 100644
index 00000000..442b56a3
--- /dev/null
+++ b/MLEB/Translate/i18n/core/ee.json
@@ -0,0 +1,51 @@
+{
+ "@metadata": {
+ "authors": [
+ "Natsubee"
+ ]
+ },
+ "translate": "Ɖe egɔme",
+ "translate-desc": "[[Special:Translate|Axa tɔxe]] na MediaWiki kple nububuwo meɖeɖe",
+ "translate-page-group": "Hame",
+ "translate-page-language": "Gbe",
+ "translate-submit": "Kɔe ve",
+ "translate-page-navigation-legend": "Mɔtabiala",
+ "translate-page-showing": "Wole duwo tso $1 vaseɖe $2 le $3 dome fiam.",
+ "translate-next": "Axa yometɔ",
+ "translate-prev": "Axa si do ŋgɔ",
+ "translate-page-edit": " trɔ asi le eŋu",
+ "translate-edit-title": "Trɔ asi le \"$1\" ŋu",
+ "translate-edit-in-other-languages": "Du le gbe bubuwo me",
+ "translate-edit-tmmatch": "$1% sɔsɔme",
+ "translate-magic-cm-save": "Dzrae ɖo",
+ "translate-magic-cm-savefailed": "Wometeŋu dzrae ɖo o",
+ "translate-magic-notsaved": "Wometeŋu le nusiwo wòtrɔ la ɖe anyi o",
+ "translate-magic-saved": "Wodzra wò tɔtrɔwo ɖo dedie.",
+ "translate-rc-translation-filter-no": "Megawɔ trɔtrɔ aɖeke o",
+ "translate-rc-translation-filter-only": "Fia gɔmeɖeɖewo ko",
+ "translate-rc-translation-filter-filter": "Ɖe gɔmeɖeɖewo le eme",
+ "translationstats": "Gɔmeɖeɖewo ƒe xexlẽme",
+ "translate-stats-edits": "Tɔtrɔwo",
+ "translate-stats-users": "Nyagɔmeɖelawo",
+ "translate-statsf-scale-days": "Ŋkekewo",
+ "translate-statsf-scale-hours": "Gaƒoƒowo",
+ "translate-statsf-count-edits": "Tɔtrɔwo ƒe xexlẽme",
+ "translate-statsf-submit": "Kpɔe do ŋgɔ",
+ "translate-sidebar-alltrans": "Le gbe bubuwo me",
+ "translate-translations-fieldset-title": "Du",
+ "translate-translations-messagename": "Ŋkɔ:",
+ "languagestats-summary": "Axa sia fia numeɖeɖewo ƒe xexlẽme na du hamewo katã le gbe ɖeka me.",
+ "languagestats-stats-for": "Gɔmeɖeɖewo ƒe xexlẽme na $1 ($2).",
+ "languagestats-recenttranslations": "gɔmeɖeɖe yeyewo",
+ "translate-language-code-field-name": "Gbe ƒe dzesi:",
+ "translate-suppress-complete": "Ɣla du hame siwo gɔme woɖe xoxo",
+ "translate-language": "Gbe",
+ "translate-total": "Duwo",
+ "translate-percentage-fuzzy": "Enu vayi",
+ "supportedlanguages-recenttranslations": "gɔmeɖeɖe yeyewo",
+ "translate-save": "Dzra ($1) ɖo",
+ "translate-manage-import-new": "Du yeye $1",
+ "translate-manage-fuzzy-summary": "Gɔmeɖeɖea trɔ",
+ "translate-manage-submit": "Wɔe",
+ "translate-manage-import-done": "Wo wɔ wokatã vɔ!"
+}
diff --git a/MLEB/Translate/i18n/core/el.json b/MLEB/Translate/i18n/core/el.json
new file mode 100644
index 00000000..9b03ac47
--- /dev/null
+++ b/MLEB/Translate/i18n/core/el.json
@@ -0,0 +1,391 @@
+{
+ "@metadata": {
+ "authors": [
+ "AK",
+ "Amire80",
+ "Consta",
+ "Crazymadlover",
+ "Dead3y3",
+ "Flyax",
+ "Geraki",
+ "Glavkos",
+ "Lou",
+ "Omnipaedista",
+ "Protnet",
+ "ZaDiak",
+ "Περίεργος"
+ ]
+ },
+ "translate": "Μεταφράστε",
+ "translate-desc": "[[Special:Translate|Ειδική σελίδα]] για τη μετάφραση του MediaWiki και άλλων",
+ "translate-taskui-view": "Προβολή όλων των μηνυμάτων",
+ "translate-taskui-untranslated": "Εμφάνιση αμετάφραστων μηνυμάτων",
+ "translate-taskui-optional": "Εμφάνιση προαιρετικών μηνυμάτων",
+ "translate-taskui-acceptqueue": "Μόνο μηνύματα που μπορώ να μαρκάρω ως θεωρημένα",
+ "translate-taskui-reviewall": "Θεώρηση όλων των μεταφράσεων",
+ "translate-taskui-export-to-file": "Εξαγωγή στην εγγενή μορφή",
+ "translate-taskui-export-as-po": "Εξαγωγή για μετάφραση εκτός σύνδεσης",
+ "translate-taction-translate": "Μετάφραση",
+ "translate-taction-proofread": "Θεώρηση",
+ "translate-taction-lstats": "Στατιστικά γλώσσας",
+ "translate-taction-mstats": "Στατιστικά ομάδας μηνυμάτων",
+ "translate-taction-export": "Εξαγωγή",
+ "translate-taction-disabled": "Αυτή η ενέργεια είναι απενεργοποιημένη σε αυτό wiki.",
+ "translate-page-no-such-language": "Η καθορισμένη γλώσσα δεν ήταν έγκυρη.",
+ "translate-page-no-such-group": "Η καθορισμένη ομάδα δεν ήταν έγκυρη.",
+ "translate-page-disabled": "Οι μεταφράσεις προς αυτήν τη γλώσσα έχουν απενεργοποιηθεί σε αυτήν την ομάδα. \nΑιτία: \n\n<em>$1</em>",
+ "translate-language-disabled": "Η μετάφραση στη γλώσσα αυτή είναι απενεργοποιημένη.",
+ "translate-page-settings-legend": "Ρυθμίσεις",
+ "translate-page-group": "Ομάδα",
+ "translate-page-language": "Γλώσσα",
+ "translate-page-limit": "Όριο",
+ "translate-page-limit-option": "$1 {{PLURAL:$1|μήνυμα|μηνύματα}} ανά σελίδα",
+ "translate-submit": "Προσκόμιση",
+ "translate-page-navigation-legend": "Πλοήγηση",
+ "translate-page-showing": "Εμφάνιση μηνυμάτων από $1 έως $2 σε σύνολο $3.",
+ "translate-page-showing-all": "Εμφάνιση $1 {{PLURAL:$1|μηνύματος|μηνυμάτων}}.",
+ "translate-page-showing-none": "Δεν υπάρχουν μηνύματα για εμφάνιση.",
+ "translate-page-paging-links": "[ $1 ] [ $2 ]",
+ "translate-next": "Επόμενη σελίδα",
+ "translate-prev": "Προηγούμενη σελίδα",
+ "translate-page-description-legend": "Πληροφορίες σχετικά με την ομάδα",
+ "translate-page-description-hasoptional": "Αυτή η ομάδα μηνυμάτων περιέχει προαιρετικά μηνύματα.\nΤα προαιρετικά μηνύματα θα πρέπει να μεταφράζονται μόνο όταν η γλώσσα σας έχει ειδικές απαιτήσεις όπως τη μη χρήση κενών ή τη μεταγλώττιση κύριων ονομάτων. $1",
+ "translate-page-description-hasoptional-open": "Εμφάνιση προαιρετικών μηνυμάτων.",
+ "translate-page-edit": "επεξεργασία",
+ "translate-ext-url": "<hr />Ιστοχώρος: $1",
+ "translate-optional": "(προαιρετικά)",
+ "translate-ignored": "(αγνοημένα)",
+ "translate-edit-title": "Επεξεργασία «$1»",
+ "translate-edit-definition": "Ορισμός μηνύματος",
+ "translate-edit-translation": "Μετάφραση",
+ "translate-edit-contribute": "συμβάλλετε",
+ "translate-edit-no-information": "''Αυτό το μήνυμα δεν έχει τεκμηρίωση. Αν γνωρίζετε πού ή πώς χρησιμοποιείται αυτό το μήνυμα, μπορείτε να βοηθήσετε άλλους μεταφραστές προσθέτοντας τεκμηρίωση σε αυτό.''",
+ "translate-edit-information": "Πληροφορίες σχετικά με το μήνυμα ($1)",
+ "translate-edit-in-other-languages": "Μήνυμα σε άλλες γλώσσες",
+ "translate-edit-committed": "Τρέχουσα μετάφραση στο λογισμικό",
+ "translate-edit-warnings": "Προειδοποιήσεις για ημιτελείς μεταφράσεις",
+ "translate-edit-tmsugs": "Προτάσεις από μνήμες μετάφρασης και μηχανική μετάφραση",
+ "translate-edit-tmmatch-source": "Πηγαίο κείμενο μετάφρασης: $1",
+ "translate-edit-tmmatch": "$1% αντιστοίχιση",
+ "translate-use-suggestion": "Αντικατάσταση τρέχουσας μετάφρασης με την πρόταση αυτή.",
+ "translate-edit-nopermission": "Χρειάζεστε άδεια για να μεταφράσετε τα μηνύματα.",
+ "translate-edit-askpermission": "Αίτημα για άδεια",
+ "translate-magic-pagename": "Μετάφραση εκτεταμένου MediaWiki",
+ "translate-magic-help": "Μπορείτε να μεταφράσετε ψευδώνυμα ειδικών σελίδων, μαγικές λέξεις και ονοματοχώρους.\n\nΤα ψευδώνυμα ειδικών σελίδων και οι μαγικές λέξεις μπορούν να έχουν πολλαπλές μεταφράσεις.\nΟι μεταφράσεις χωρίζονται με κόμμα (,).\nΟι ονοματοχώροι μπορούν να έχουν μόνο μία μετάφραση.\n\nΟι μεταφράσεις σελίδων συζήτησης του ονοματοχώρου του εγχειρήματος <code>$1 talk</code> μπορεί να είναι περίπλοκες. Η μεταβλητή <code>$1</code> αντικαθίσταται με το όνομα του ιστοτόπου (για παράδειγμα <code>{{ns:project_talk}}</code>).\n\nΑν δεν είναι δυνατόν στη γλώσσα σας να σχηματίσετε έγκυρη έκφραση χωρίς να αλλάξετε το όνομα του ιστοτόπου, παρακαλούμε επικοινωνήστε μαζί μας στην [[Support|Υποστήριξη]].\n\nΠρέπει να είστε στην ομάδα των μεταφραστών για να αποθηκεύσετε τις αλλαγές.\nΟι αλλαγές δεν αποθηκεύονται μέχρι να κάνετε κλικ στο κουμπί αποθήκευσης παρακάτω.",
+ "translate-magic-module": "Λειτουργική μονάδα:",
+ "translate-magic-submit": "Προσκόμισε",
+ "translate-magic-cm-export": "Εξαγωγή",
+ "translate-magic-nothing-to-export": "Δεν υπάρχει τίποτα για εξαγωγή.",
+ "translate-magic-cm-to-be": "Να γίνει",
+ "translate-magic-cm-current": "Τρέχον",
+ "translate-magic-cm-original": "Πρωτότυπο",
+ "translate-magic-cm-comment": "Σχόλιο:",
+ "translate-magic-cm-save": "Αποθήκευση",
+ "translate-magic-cm-updatedusing": "Ενημερώθηκε χρησιμοποιώντας τη σελίδα [[Special:AdvancedTranslate|{{int:Translate-magic-pagename}}]]",
+ "translate-magic-cm-savefailed": "Η αποθήκευση απέτυχε",
+ "translate-magic-special": "Ψευδώνυμα ειδικών σελίδων",
+ "translate-magic-words": "Μαγικές λέξεις",
+ "translate-magic-namespace": "Ονομασίες ονοματοχώρων",
+ "translate-magic-notsaved": "Η αλλαγή σας δεν αποθηκεύθηκε!",
+ "translate-magic-errors": "Παρακαλώ διορθώστε {{PLURAL:$1|το ακόλουθο σφάλμα|τα ακόλουθα σφάλματα}} στις μεταφράσεις:",
+ "translate-magic-saved": "Οι αλλαγές σας αποθηκεύτηκαν επιτυχώς.",
+ "translate-checks-parameters": "{{PLURAL:$2|Η ακόλουθη παράμετρος δεν χρησιμοποιείται|Οι ακόλουθες παράμετροι δεν χρησιμοποιούνται}}: <strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-parameters-unknown": "{{PLURAL:$2|Η ακόλουθη παράμετρος|Οι ακόλουθες παράμετροι}} είναι {{PLURAL:$2|άγνωστη|άγνωστες}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-balance": "Υπάρχει ακανόνιστη ποσότητα {{PLURAL:$2|παρενθέσεων|παρενθέσεων}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links": "{{PLURAL:$2|Ο ακόλουθος σύνδεσμος|Οι ακόλουθοι $2 σύνδεσμοι}} είναι {{PLURAL:$2|προβληματικός|προβληματικοί}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links-missing": "{{PLURAL:$2|Ο ακόλουθος σύνδεσμος απουσιάζει|Οι ακόλουθοι $2 σύνδεσμοι απουσιάζει}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-xhtml": "Παρακαλώ αντικαταστήστε {{PLURAL:$2|την ακόλουθη ετικέτα|τις ακόλουθες ετικέτες}} με {{PLURAL:$2|τη σωστή|τις σωστές}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-plural": "Ο ορισμός χρησιμοποιεί τη συνάρτηση <nowiki>{{PLURAL:}}</nowiki> αλλά η μετάφραση όχι.",
+ "translate-checks-plural-forms": "Στη συνάρτηση <nowiki>{{PLURAL:}}</nowiki> {{PLURAL:$1|δόθηκε μια μορφή|δόθηκαν $1 μορφές}} αλλά {{PLURAL:$2|αλλά μόνο μια μορφή υποστηρίζεται|υποστηρίζονται $2 μορφές}} (εξαιρώντας τις μορφές 0= και 1=).",
+ "translate-checks-plural-dupe": "Η συνάρτηση <nowiki>{{PLURAL:}}</nowiki> έχει διπλές μορφές στο τέλος. Το <nowiki>{{PLURAL:$1|sheep|sheep}}</nowiki> πρέπει να γράφεται ως <nowiki>{{PLURAL:$1|sheep}}</nowiki>.",
+ "translate-checks-pagename": "Ο ονοματοχώρος άλλαξε σε σχέση με τον ορισμό",
+ "translate-checks-format": "Αυτή η μετάφραση δεν ακολουθεί τον ορισμό ή έχει μη έγκυρη σύνταξη: $1",
+ "translate-checks-escape": "Οι ακόλουθοι χαρακτήρες διαφυγής μπορεί να συμπτωματικοί: <strong>$1</strong>",
+ "translate-checks-parametersnotequal": "Το πλήθος των παραμέτρων είναι {{PLURAL:$1|$1}} ενώ θα έπρεπε να είναι {{PLURAL:$2|$2}}.",
+ "translate-checks-malformed": "Το <nowiki>$1</nowiki> έχει λανθασμένη μορφή.",
+ "translate-checks-fudforum-syntax": "Χρήση του <nowiki>$1</nowiki> αντί του <nowiki>$2</nowiki> σε αυτό το εγχείρημα.",
+ "translate-pref-nonewsletter": "Μην μου στέλνετε e-mail newsletters",
+ "translate-pref-editassistlang": "Βοηθητικές γλώσσες:",
+ "prefs-translate": "Επιλογές μετάφρασης",
+ "translate-pref-editassistlang-help": "Κατάλογος κωδικών γλωσσών χωρισμένων με κόμματα.\nΗ μετάφραση ενός μηνύματος σε αυτές τις γλώσσες εμφανίζεται μόνο κατά τη διενέργεια μιας μετάφρασης.\nΗ προεπιλεγμένη λίστα των γλωσσών εξαρτάται από τη γλώσσα σου.",
+ "translate-pref-editassistlang-bad": "Μη έγκυρος κωδικός γλώσσας στον κατάλογο:\n<nowiki>$1</nowiki>.",
+ "right-translate": "Επεξεργασία χρησιμοποιώντας την διεπαφή μετάφρασης",
+ "right-translate-manage": "Διαχείριση ομάδων μηνυμάτων",
+ "action-translate-manage": "διαχειριστείτε ομάδες μηνυμάτων",
+ "right-translate-import": "Εισαγωγή μεταφράσεων που έγιναν εκτός σύνδεσης",
+ "action-translate-import": "εισαγωγή μεταφράσεων που έγιναν εκτός σύνδεσης",
+ "right-translate-messagereview": "Θεώρηση μεταφράσεων",
+ "right-translate-groupreview": "Αλλαγή κατάστασης ροής εργασίας των ομάδων μηνυμάτων",
+ "translate-rc-translation-filter": "Φιλτράρισμα μεταφράσεων:",
+ "translate-rc-translation-filter-no": "Να μη γίνει τίποτα",
+ "translate-rc-translation-filter-only": "Εμφάνιση μόνο των μεταφράσεων",
+ "translate-rc-translation-filter-filter": "Απόκρυψη μεταφράσεων",
+ "translate-rc-translation-filter-site": "Εμφάνιση μόνο των αλλαγών στα μηνύματα ιστοτόπου",
+ "translationstats": "Στατιστικά μετάφρασης",
+ "translate-stats-edits": "Επεξεργασίες",
+ "translate-stats-users": "Μεταφραστές",
+ "translate-stats-registrations": "Εγγραφές",
+ "translate-stats-reviews": "Θεωρήσεις",
+ "translate-stats-reviewers": "Θεωρητές",
+ "translate-statsf-intro": "Μπορείτε να δημιουργήσετε απλά στατιστικά με αυτή τη φόρμα. Όλες οι τιμές έχουν άνω και κάτω όρια.",
+ "translate-statsf-options": "Επιλογές γραφήματος",
+ "translate-statsf-width": "Πλάτος σε πίξελ:",
+ "translate-statsf-height": "Ύψος σε πίξελ:",
+ "translate-statsf-days": "Χρονική περίοδος σε ημέρες:",
+ "translate-statsf-start": "Ημερομηνία έναρξης:",
+ "translate-statsf-scale": "Υποδιαίρεση:",
+ "translate-statsf-scale-months": "Μήνες",
+ "translate-statsf-scale-weeks": "Εβδομάδες",
+ "translate-statsf-scale-days": "Ημέρες",
+ "translate-statsf-scale-hours": "Ώρες",
+ "translate-statsf-count": "Μετρούμενο μέγεθος:",
+ "translate-statsf-count-edits": "Αριθμός επεξεργασιών",
+ "translate-statsf-count-users": "Ενεργοί μεταφραστές",
+ "translate-statsf-count-registrations": "Νέοι χρήστες",
+ "translate-statsf-count-reviews": "Θεωρήσεις μετάφρασης",
+ "translate-statsf-count-reviewers": "Θεωρητές",
+ "translate-statsf-language": "Λίστα κωδικών γλωσσών χωρισμένη με κόμματα:",
+ "translate-statsf-group": "Λίστα κωδικών ομάδων χωρισμένη με κόμματα:",
+ "translate-statsf-submit": "Προεπισκόπηση",
+ "translate-tag-category": "Σελίδες προς μετάφραση",
+ "translate-tag-page-desc": "Μετάφραση της σελίδας wiki [[$2|$1]].",
+ "translate-sidebar-alltrans": "Σε άλλες γλώσσες",
+ "translations": "Όλες οι μεταφράσεις",
+ "translations-summary": "Εισαγάγετε ένα όνομα μηνύματος παρακάτω για εμφανιστούν όλες οι διαθέσιμες μεταφράσεις.",
+ "translate-translations-no-message": "Το «$1» δεν είναι μήνυμα προς μετάφραση",
+ "translate-translations-none": "Δεν υπάρχουν μεταφράσεις για το «$1»",
+ "translate-translations-count": "{{PLURAL:$1|Βρέθηκε μια μετάφραση|Βρέθηκαν $1 μεταφράσεις}}.",
+ "translate-translations-fieldset-title": "Μήνυμα",
+ "translate-translations-messagename": "Όνομα:",
+ "translate-translations-project": "Εγχείρημα:",
+ "translate-translations-including-no-param": "Καθορίστε ένα έγκυρο όνομα μηνύματος στην παράμετρο υποσελίδας",
+ "translate-translations-history-short": "ι",
+ "languagestats": "Στατιστικά γλώσσας",
+ "languagestats-summary": "Αυτή η σελίδα δείχνει τα στατιστικά μεταφράσεων για όλες τις ομάδες μηνυμάτων για μία γλώσσα.",
+ "languagestats-stats-for": "Στατιστικά μετάφρασης για $1 ($2).",
+ "languagestats-recenttranslations": "πρόσφατες μεταφράσεις",
+ "translate-langstats-incomplete": "Μερικά από τα στατιστικά σε αυτήν τη σελίδα δεν είναι πλήρη. Παρακαλούμε επαναφορτώστε για να πάρετε περισσότερα στατιστικά.",
+ "translate-langstats-expand": "ανάπτυξη",
+ "translate-langstats-collapse": "σύμπτυξη",
+ "translate-langstats-expandall": "ανάπτυξη όλων",
+ "translate-langstats-collapseall": "σύμπτυξη όλων",
+ "translate-language-code": "Κωδικός γλώσσας",
+ "translate-language-code-field-name": "Κωδικός γλώσσας:",
+ "translate-suppress-complete": "Απόκρυψη πλήρως μεταφρασμένων ομάδων μηνυμάτων",
+ "translate-ls-noempty": "Απόκρυψη πλήρως αμετάφραστων ομάδων μηνυμάτων",
+ "translate-language": "Γλώσσα",
+ "translate-total": "Μηνύματα",
+ "translate-untranslated": "Αμετάφραστα",
+ "translate-percentage-complete": "Ολοκλήρωση",
+ "translate-percentage-fuzzy": "Παρωχημένα",
+ "translate-languagestats-overall": "Όλες οι ομάδες μηνυμάτων μαζί",
+ "translate-ls-submit": "Εμφάνιση στατιστικών",
+ "translate-ls-column-group": "Ομάδα μηνυμάτων",
+ "translate-mgs-pagename": "Στατιστικά ομάδας μηνυμάτων",
+ "translate-mgs-fieldset": "Εμφάνιση προτιμήσεων",
+ "translate-mgs-group": "Ομάδα μηνυμάτων:",
+ "translate-mgs-nocomplete": "Να μην εμφανιστούν οι γλώσσες για τις οποίες έχει ολοκληρωθεί η μετάφραση",
+ "translate-mgs-noempty": "Να μην εμφανιστούν οι γλώσσες για τις οποίες δεν έχει γίνει καμιά μετάφραση",
+ "translate-mgs-submit": "Εμφάνιση στατιστικών",
+ "translate-mgs-column-language": "Γλώσσα",
+ "translate-mgs-totals": "Όλες οι γλώσσες μαζί",
+ "translate-mgs-invalid-group": "Η καθορισμένη ομάδα $1 δεν υπάρχει.",
+ "translate-mgs-nothing": "Τίποτε προς εμφάνιση για τις στατιστικές που ζητήθηκαν.",
+ "supportedlanguages": "Υποστηριζόμενες γλώσσες",
+ "supportedlanguages-summary": "Αυτή η σελίδα εμφανίζει μια λίστα με όλες τις γλώσσες που υποστηρίζονται από τον ιστοχώρο {{SITENAME}},\nμαζί με τα ονόματα των μεταφραστών που δουλεύουν πάνω σε κάθε γλώσσα.\nΌσο πιο πολλές επεξεργασίες έχει συνεισφέρει ένας μεταφραστής, τόσο πιο μεγάλο εμφανίζεται το όνομά του.\nΤο χρώμα υπογράμμισης υποδεικνύει το πόσο πρόσφατα δραστηριοποιήθηκε ο κάθε μεταφραστής.",
+ "supportedlanguages-colorlegend": "Υπόμνημα για το χρώμα: Τελευταία μετάφραση $1 ημέρες πριν.",
+ "supportedlanguages-translators": "{{PLURAL:$2|Μεταφραστής|Μεταφραστές}}: $1",
+ "supportedlanguages-recenttranslations": "πρόσφατες μεταφράσεις",
+ "supportedlanguages-count": "$1 {{PLURAL:$1|γλώσσα|γλώσσες}} συνολικά.",
+ "supportedlanguages-activity": "$1: $2 {{PLURAL:$2|επεξεργασία|επεξεργασίες}} - τελευταία επεξεργασία $3 {{PLURAL:$3|day|days}} πριν",
+ "translate-save": "Αποθήκευση ($1)",
+ "translate-jssti-add": "Προσθήκη στην λίστα",
+ "managemessagegroups": "Διαχείριση ομάδας μηνυμάτων",
+ "translate-smg-notallowed": "Δεν σας επιτρέπεται να εκτελέσετε αυτήν την ενέργεια.",
+ "translate-smg-nochanges": "Δεν υπάρχουν αλλαγές προς επεξεργασία.",
+ "translate-smg-submit": "Υποβολή αλλαγών για επεξεργασία",
+ "translate-smg-submitted": "Οι ορισμοί μηνυμάτων έχουν ενημερωθεί. Οι αλλαγές είναι υπό διεργασία στο παρασκήνιο.",
+ "translate-smg-left": "Περιεχόμενο μηνύματος στο wiki",
+ "translate-smg-right": "Εισερχόμενες αλλαγές",
+ "translate-manage-import-diff": "Μήνυμα $1 | Ενέργειες: $2",
+ "translate-manage-import-new": "Νέο μήνυμα $1",
+ "translate-manage-import-deleted": "Διαγεγραμμένο μήνυμα $1",
+ "translate-manage-action-import": "Εισαγωγή",
+ "translate-manage-action-conflict": "Εισαγωγή και ασαφοποίηση",
+ "translate-manage-action-ignore": "Αγνόηση",
+ "translate-manage-action-fuzzy": "Εισαγωγή και ασαφοποίηση μεταφράσεων",
+ "translate-manage-nochanges": "Δεν υπάρχουν αλλαγές στους ορισμούς μηνυμάτων για αυτήν την ομάδα.",
+ "translate-manage-nochanges-other": "Δεν υπήρξαν μεταβολές για αυτήν τη γλώσσα.\nΧρησιμοποιήστε τον παρακάτω σύνδεσμο για να επιστρέψετε σε προβολή λεπτομερειών ομάδας.",
+ "translate-manage-inconsistent": "Εντοπίστηκε ασυνέπεια στο αίτημα.\nΠαρακαλούμε ελέγξτε για αλλαγές και προσπαθήστε ξανά.\nΛεπτομέρειες: $1.",
+ "translate-manage-toolong": "Έγινε υπέρβαση του μέγιστου χρόνου διεργασίας που είναι $1 {{PLURAL:$1|δευτερόλεπτο|δευτερόλεπτα}}.\nΠαρακαλούμε υποβάλετε ξανά την φόρμα για να συνεχιστεί η διεργασία.",
+ "translate-manage-import-summary": "Γίνεται εισαγωγή νέας έκδοσης από εξωτερική πηγή.",
+ "translate-manage-conflict-summary": "Γίνεται εισαγωγή νέας έκδοσης από εξωτερική πηγή. Παρακαλούμε να ελεγχθεί.",
+ "translate-manage-fuzzy-summary": "Ο ορισμός του μηνύματος έχει αλλάξει",
+ "translate-manage-submit": "Εκτέλεση",
+ "translate-manage-intro-other": "Παρακάτω βρίσκεται η λίστα με τις αλλαγές στη μετάφραση στη γλώσσα $1.\nΠαρακαλούμε θεωρήστε τις αλλαγές και επιλέξτε ποια ενέργεια θέλετε να γίνει για κάθε ενημέρωση.\nΕάν επιλέξετε αγνόηση των αλλαγών, η συγκεκριμένη ενέργεια είναι απλώς προσωρινή.",
+ "translate-manage-import-ok": "Εισήχθηκε νέα έκδοση της σελίδας $1.",
+ "translate-manage-import-done": "Όλα έχουν γίνει!",
+ "importtranslations": "Εισαγωγή μεταφράσεων",
+ "translate-import-from-local": "Ανέβασμα τοπικού αρχείου:",
+ "translate-import-load": "Ανέβασμα αρχείου",
+ "translate-import-err-dl-failed": "Αδυναμία λήψης του αρχείου: $1",
+ "translate-import-err-ul-failed": "Το ανέβασμα του αρχείου δεν ήταν επιτυχές",
+ "translate-import-err-invalid-title": "Το όνομα του αρχείου <nowiki>$1</nowiki> δεν ήταν έγκυρο.",
+ "translate-import-err-no-such-file": "Το αρχείο <nowiki>$1</nowiki> δεν υπάρχει ή δεν έχει φορτωθεί τοπικά.",
+ "translate-import-err-stale-group": "Η ομάδα μηνυμάτων στην οποία ανήκει αυτό το αρχείο δεν υπάρχει.",
+ "translate-import-err-no-headers": "Το αρχείο δεν είναι ένα σωστά σχηματισμένο αρχείο τύπου Gettext στη μορφή που αναγνωρίζει η επέκταση Translate:\nΑδύνατος ο προσδιορισμός ομάδας μηνυμάτων και γλώσσας από την κεφαλίδα του αρχείου.",
+ "translate-import-err-warnings": "Το αρχείο δεν είναι σωστά σχηματισμένο.\nΒεβαιωθείτε ότι το πρόγραμμα επεξεργασίας σας δεν αφαιρεί τα πεδία msgctxt.\nΛεπτομέρειες: $1",
+ "translate-js-summary": "Σύνοψη:",
+ "translate-js-save": "Αποθήκευση",
+ "translate-js-next": "Αποθήκευση και άνοιγμα του επόμενου",
+ "translate-js-nonext": "Αυτό ήταν το τελευταίο μήνυμα σε αυτήν τη σελίδα.",
+ "translate-js-skip": "Μετάβαση στο επόμενο",
+ "translate-js-save-failed": "Η αποθήκευση απέτυχε. Παρακαλούμε αναφέρετε αυτό το σφάλμα.",
+ "translate-js-history": "Ιστορικό μετάφρασης",
+ "translate-js-support": "Κάντε ερώτηση",
+ "translate-js-support-title": "Ζητήστε βοήθεια εάν δεν υπάρχουν αρκετές πληροφορίες για να μεταφράστει σωστά αυτό το μήνυμα.",
+ "translate-js-support-unsaved-warning": "Έχετε μη αποθηκευμένες μεταφράσεις.",
+ "translate-gs-pos": "Θέση",
+ "translate-gs-code": "Κωδικός",
+ "translate-gs-continent": "Ήπειρος",
+ "translate-gs-speakers": "Ομιλητές",
+ "translate-gs-score": "Σκορ",
+ "translate-gs-multiple": "Πολλαπλές",
+ "translate-gs-count": "Καταμέτρηση",
+ "translate-gs-total": "Σύνολο",
+ "translate-gs-avgscore": "Μέσο σκορ",
+ "translate-documentation-language": "Τεκμηρίωση μηνύματος",
+ "translate-searchprofile": "Μεταφράσεις",
+ "translate-searchprofile-tooltip": "Αναζήτηση από όλες τις μεταφράσεις",
+ "translate-search-languagefilter": "Φιλτράρισμα με βάση τη γλώσσα:",
+ "translate-search-nofilter": "Χωρίς φιλτράρισμα",
+ "translate-messagereview-submit": "Σήμανση ως θεωρημένο",
+ "translate-messagereview-progress": "Γίνεται σήμανση ως θεωρημένο...",
+ "translate-messagereview-failure": "Η σήμανση ως θεωρημένο απέτυχε: $1",
+ "translate-messagereview-done": "Θεωρημένο",
+ "translate-messagereview-reviews": "Θεωρήθηκε από {{PLURAL:$1|ένα χρήστη|$1 χρήστες}}",
+ "translate-messagereview-reviewswithyou": "Θεωρήθηκε από {{PLURAL:$1|σας|$1 χρήστες συμπεριλαμβανομένων κι σας}}",
+ "api-error-invalidrevision": "Δεν βρέθηκε η μετάφραση",
+ "api-error-unknownmessage": "Δεν βρέθηκε το μήνυμα",
+ "api-error-fuzzymessage": "Η μετάφραση σημάνθηκε ως ασαφής",
+ "api-error-owntranslation": "Δεν είναι δυνατό να θεωρήσετε τις δικές σας μεταφράσεις",
+ "translate-messagereview-no-fuzzy": "Ασαφείς μεταφράσεις δεν μπορούν να θεωρηθούν.",
+ "translate-messagereview-no-own": "Δεν μπορείτε να θεωρήσετε τις δικές σας μεταφράσεις.",
+ "translate-messagereview-doit": "Σήμανση αυτής της μετάφρασης ως θεωρημένης.",
+ "log-name-translationreview": "Αρχείο καταγραφής θεωρήσεων μεταφράσεων",
+ "log-description-translationreview": "Αρχείο καταγραφής όλων των θεωρήσεων σε μεταφράσεις και ομάδες μηνυμάτων.",
+ "logentry-translationreview-message": "{{GENDER:$2|Ο|Η}} $1 θεώρησε τη μετάφραση $3",
+ "logentry-translationreview-group": "{{GENDER:$2|Ο|Η}} $1 άλλαξε την κατάσταση των μεταφράσεων στα $4 του $3 από $6 σε $7",
+ "group-translate-sandboxed": "Μη εγκεκριμένοι μεταφραστές",
+ "group-translate-sandboxed-member": "μη {{GENDER:$1|εγκεκριμένος μεταφραστής|εγκεκριμένη μεταφράστρια}}",
+ "right-translate-sandboxmanage": "Διαχείριση χρηστών αμμοδοχείου",
+ "action-translate-sandboxmanage": "διαχειριστείτε χρήστες αμμοδοχείου",
+ "right-translate-sandboxaction": "Εκτέλεση ενεργειών λευκής λίστας για χρήστες αμμοδοχείου",
+ "action-translate-sandboxaction": "εκτελέσετε ενέργειες λευκής λίστας για χρήστες αμμοδοχείου",
+ "translate-workflow-state-": "(δεν έχει οριστεί)",
+ "translate-workflowstatus": "Κατάσταση: $1",
+ "translate-workflow-set-do": "Ορισμός",
+ "translate-workflow-set-doing": "Γίνεται ορισμός...",
+ "translate-workflow-set-done": "Ορίστηκε!",
+ "translate-workflow-set-error-alreadyset": "Η αιτηθήσα κατάσταση είναι ταυτόσημη με την τρέχουσα κατάσταση.",
+ "translate-workflow-autocreated-summary": "Αυτόματη δημιουργία σελίδας για την κατάσταση ροής εργασίας $1",
+ "translate-stats-workflow": "Κατάσταση",
+ "translate-workflowgroup-label": "Καταστάσεις ροής εργασίας",
+ "translate-workflowgroup-desc": "Αυτή η ομάδα μηνυμάτων δείχνει τις καταστάσεις ροής εργασίας της μετάφρασης.\nΟι καταστάσεις ορίζονται στη μεταβλητή ρύθμισης $wgTranslateWorkflowStates.",
+ "translate-dynagroup-recent-label": "Πρόσφατες μεταφράσεις",
+ "translate-dynagroup-recent-desc": "Αυτή η ομάδα μηνυμάτων δείχνει όλες τις πρόσφατες μεταφράσεις σε αυτήν τη γλώσσα.\nΠάρα πολύ χρήσιμο για εργασίες θεώρησης.",
+ "translate-dynagroup-additions-label": "Πρόσφατες προσθήκες",
+ "translate-dynagroup-additions-desc": "Αυτή η ομάδα μηνυμάτων εμφανίζει νέα και αλλαγμένα μηνύματα.",
+ "translate-dynagroup-by": "Η μετάφραση έγινε από {{GENDER:$1|τον|την}} $1",
+ "translate-dynagroup-byc": "Η μετάφραση έγινε από {{GENDER:$1|τον|την}} $1 ($2)",
+ "translate-dynagroup-last": "Τελευταία αλλαγή από {{GENDER:$1|τον|την}} $1",
+ "translate-dynagroup-lastc": "Τελευταία αλλαγή από {{GENDER:$1|τον|την}} $1 ($2)",
+ "translate-gethelp": "Βοήθεια",
+ "translate-msggroupselector-projects": "Ομάδα μηνυμάτων",
+ "translate-msggroupselector-search-placeholder": "Αναζήτηση ομάδων",
+ "translate-msggroupselector-search-all": "Όλα",
+ "translate-msggroupselector-search-recent": "Πρόσφατα",
+ "translate-msggroupselector-view-subprojects": "$1 {{PLURAL:$1|υποομάδα|υποομάδες}}",
+ "tux-languageselector": "Μετάφραση σε",
+ "tux-tab-all": "Όλα",
+ "tux-tab-untranslated": "Αμετάφραστα",
+ "tux-tab-outdated": "Παρωχημένα",
+ "tux-tab-translated": "Μεταφρασμένα",
+ "tux-tab-unproofread": "Αθεώρητα",
+ "tux-edit": "Επεξεργασία",
+ "tux-status-optional": "Προαιρετικά",
+ "tux-status-fuzzy": "Παρωχημένα",
+ "tux-status-proofread": "Θεωρημένο",
+ "tux-status-translated": "Μεταφρασμένο",
+ "tux-status-saving": "Αποθήκευση...",
+ "tux-status-unsaved": "Μη αποθηκευμένα",
+ "tux-editor-placeholder": "Η μετάφρασή σας",
+ "tux-editor-paste-original-button-label": "Επικόλληση πηγαίου κειμένου",
+ "tux-editor-discard-changes-button-label": "Απόρριψη των αλλαγών",
+ "tux-editor-save-button-label": "Αποθήκευση μετάφρασης",
+ "tux-editor-skip-button-label": "Προχωρήστε στο επόμενο",
+ "tux-editor-cancel-button-label": "Ακύρωση",
+ "tux-editor-confirm-button-label": "Επιβεβαίωση μετάφρασης",
+ "tux-editor-shortcut-info": "Πατήστε «$1» για αποθήκευση ή «$2» για μετάβαση στο επόμενο μήνυμα",
+ "tux-editor-edit-desc": "Επεξεργασία τεκμηρίωσης",
+ "tux-editor-add-desc": "Προσθήκη τεκμηρίωσης",
+ "tux-editor-suggestions-title": "Προτάσεις",
+ "tux-editor-in-other-languages": "Σε άλλες γλώσσες",
+ "tux-editor-need-more-help": "Χρειάζεστε περισσότερη βοήθεια;",
+ "tux-editor-ask-help": "Ζητήστε περισσότερες πληροφορίες",
+ "tux-editor-tm-match": "$1% αντιστοίχιση",
+ "tux-warnings-more": "{{PLURAL:$1|περισσότερες $1}}",
+ "tux-warnings-hide": "απόκρυψη",
+ "tux-editor-save-failed": "Η αποθήκευση της μετάφρασης απέτυχε: $1",
+ "tux-editor-n-uses": "χρησιμοποιήθηκε $1 {{PLURAL:$1|φορά|φορές}}",
+ "tux-editor-message-desc-more": "Δείτε περισσότερα",
+ "tux-editor-message-desc-less": "Δείτε λιγότερα",
+ "tux-editor-clear-translated": "Απόκρυψη μεταφρασμένων",
+ "tux-editor-proofreading-mode": "Θεώρηση",
+ "tux-editor-translate-mode": "Λίστα",
+ "tux-editor-proofreading-hide-own-translations": "Απόκρυψη των μεταφράσεών σας",
+ "tux-editor-proofreading-show-own-translations": "Εμφάνιση των μεταφράσεών σας",
+ "tux-proofread-action-tooltip": "Σήμανση ως θεωρημένο",
+ "tux-proofread-edit-label": "Επεξεργασία",
+ "tux-editor-page-mode": "Σελίδα",
+ "tux-editor-outdated-warning": "Αυτή η μετάφραση μπορεί να χρειάζεται ενημέρωση.",
+ "tux-editor-outdated-warning-diff-link": "Εμφάνιση διαφορών",
+ "tux-editor-doc-editor-placeholder": "Τεκμηρίωση μηνύματος",
+ "tux-editor-doc-editor-save": "Αποθήκευση τεκμηρίωσης",
+ "tux-editor-doc-editor-cancel": "Ακύρωση",
+ "tux-messagetable-more-messages": "$1 ακόμη {{PLURAL:$1|μήνυμα|μηνύματα}}",
+ "tux-messagetable-loading-messages": "Γίνεται φόρτωση {{PLURAL:$1|μηνύματος|μηνυμάτων}}...",
+ "tux-message-filter-placeholder": "Φιλτράρισμα καταλόγου",
+ "tux-message-filter-result": "{{PLURAL:$1|Βρέθηκε $1 αποτέλεσμα|Βρέθηκαν $1 αποτελέσματα}} για «$2»",
+ "tux-message-filter-advanced-button": "Σύνθετη αναζήτηση",
+ "tux-message-filter-optional-messages-label": "Προαιρετική μηνύματα",
+ "tux-proofread-translated-by-self": "Μεταφρασμένο από εσάς",
+ "tux-empty-list-all": "Αυτή η ομάδα μηνυμάτων είναι κενή",
+ "tux-empty-list-all-guide": "Επιλέξτε μια διαφορετική ομάδα μηνυμάτων για μετάφραση",
+ "tux-translate-page-no-such-group": "'''Η αναφερόμενη ομάδα δεν υπάρχει.''' Επιλέξτε μια διαφορετική ομάδα μηνυμάτων.",
+ "tux-empty-list-translated": "Δεν υπάρχουν μεταφρασμένα μηνύματα",
+ "tux-empty-list-translated-guide": "Μπορείτε να βοηθήσετε στη μετάφραση",
+ "tux-empty-list-translated-action": "Μετάφραση",
+ "tux-empty-no-messages-to-display": "Δεν υπάρχουν μηνύματα προς εμφάνιση.",
+ "tux-empty-there-are-optional": "Υπάρχουν προαιρετικά μηνύματα που δεν εμφανίζονται στη λίστα",
+ "tux-empty-show-optional-messages": "Εμφάνιση προαιρετικών μηνυμάτων",
+ "tux-empty-no-outdated-messages": "Δεν υπάρχουν παρωχημένα μηνύματα",
+ "tux-empty-nothing-to-proofread": "Τίποτα προς θεώρηση",
+ "tux-empty-you-can-help-providing": "Μπορείτε να βοηθήσετε παρέχοντας νέες μεταφράσεις",
+ "tux-empty-nothing-new-to-proofread": "Τίποτα νέο προς θεώρηση",
+ "tux-empty-you-can-review-already-proofread": "Μπορείτε να θεωρήσετε μεταφράσεις που έχουν ήδη θεωρηθεί από άλλους.",
+ "tux-empty-list-other": "Δεν υπάρχει τίποτα για μετάφραση.",
+ "tux-empty-list-other-guide": "Μπορείτε να βοηθήσετε στη θεώρηση των υπαρχουσών μεταφράσεων",
+ "tux-empty-list-other-action": "Θεώρηση μεταφράσεων",
+ "tux-empty-list-other-link": "Εμφάνιση όλων των μηνυμάτων",
+ "tux-editor-close-tooltip": "Κλείσιμο",
+ "tux-editor-expand-tooltip": "Ανάπτυξη",
+ "tux-editor-collapse-tooltip": "Σύμπτυξη",
+ "tux-editor-message-tools-history": "Ιστορικό",
+ "tux-editor-message-tools-translations": "Όλες οι μεταφράσεις",
+ "tux-editor-loading": "Γίνεται φόρτωση...",
+ "translate-search-more-languages-info": "$1 ακόμη {{PLURAL:$1|γλώσσα|γλώσσες}}",
+ "translate-statsbar-tooltip": "$1% μεταφρασμένα, $2% θεωρημένα",
+ "translate-statsbar-tooltip-with-fuzzy": "$1% μεταφρασμένα, $2% θεωρημένα, $3 παρωχημένα",
+ "translate-search-more-groups-info": "$1 ακόμα {{PLURAL:$1|ομάδα|ομάδες}}"
+}
diff --git a/MLEB/Translate/i18n/core/en-gb.json b/MLEB/Translate/i18n/core/en-gb.json
new file mode 100644
index 00000000..67cb1d5e
--- /dev/null
+++ b/MLEB/Translate/i18n/core/en-gb.json
@@ -0,0 +1,12 @@
+{
+ "@metadata": {
+ "authors": [
+ "Lloffiwr",
+ "Shirayuki",
+ "Thehelpfulone"
+ ]
+ },
+ "supportedlanguages-summary": "This page shows a list of all languages supported by {{SITENAME}},\ntogether with the names of the translators working on that language.\nA translator's name appears larger, the more edits the translator has contributed.\nThe colour of an underline indicates how recently a translator has been active here.",
+ "supportedlanguages-colorlegend": "Legend for the colour: Last translation $1 days ago.",
+ "tux-empty-list-translated": "No translated messages"
+}
diff --git a/MLEB/Translate/i18n/core/en.json b/MLEB/Translate/i18n/core/en.json
new file mode 100644
index 00000000..1ae1b60f
--- /dev/null
+++ b/MLEB/Translate/i18n/core/en.json
@@ -0,0 +1,394 @@
+{
+ "@metadata": {
+ "authors": [
+ "Nike",
+ "Siebrand",
+ "Amire80",
+ "Santhosh.thottingal"
+ ]
+ },
+ "translate": "Translate",
+ "translate-desc": "[[Special:Translate|Special page]] for translating MediaWiki and beyond",
+ "translate-taskui-view": "Show all messages",
+ "translate-taskui-untranslated": "Show untranslated messages",
+ "translate-taskui-optional": "Show optional messages",
+ "translate-taskui-acceptqueue": "Only messages I can mark as reviewed",
+ "translate-taskui-reviewall": "Review all translations",
+ "translate-taskui-export-to-file": "Export in native format",
+ "translate-taskui-export-as-po": "Export for off-line translation",
+ "translate-taction-translate": "Translate",
+ "translate-taction-proofread": "Review",
+ "translate-taction-lstats": "Language statistics",
+ "translate-taction-mstats": "Message group statistics",
+ "translate-taction-export": "Export",
+ "translate-taction-disabled": "This action is disabled on this wiki.",
+ "translate-page-no-such-language": "Specified language was invalid.",
+ "translate-page-no-such-group": "Specified group was invalid.",
+ "translate-page-disabled": "Translations to this language in this group have been disabled.\nReason:\n\n<em>$1</em>",
+ "translate-language-disabled": "Translation to this language is disabled.",
+ "translate-page-settings-legend": "Settings",
+ "translate-page-group": "Group",
+ "translate-page-language": "Language",
+ "translate-page-limit": "Limit",
+ "translate-page-limit-option": "$1 {{PLURAL:$1|message|messages}} per page",
+ "translate-submit": "Fetch",
+ "translate-page-navigation-legend": "Navigation",
+ "translate-page-showing": "Showing messages from $1 to $2 of $3.",
+ "translate-page-showing-all": "Showing $1 {{PLURAL:$1|message|messages}}.",
+ "translate-page-showing-none": "No messages to show.",
+ "translate-page-paging-links": "[ $1 ] [ $2 ]",
+ "translate-next": "Next page",
+ "translate-prev": "Previous page",
+ "translate-page-description-legend": "Information about the group",
+ "translate-page-description-hasoptional": "This message group contains optional messages.\nOptional messages should only be translated when your language has special requirements\nlike not using spaces or transliterating proper names. $1",
+ "translate-page-description-hasoptional-open": "Show optional messages.",
+ "translate-page-edit": "edit",
+ "translate-ext-url": "<hr />Website: $1",
+ "translate-optional": "(optional)",
+ "translate-ignored": "(ignored)",
+ "translate-edit-title": "Edit \"$1\"",
+ "translate-edit-definition": "Message definition",
+ "translate-edit-translation": "Translation",
+ "translate-edit-contribute": "contribute",
+ "translate-edit-no-information": "<em>This message has no documentation.\nIf you know where or how this message is used, you can help other translators by adding documentation to this message.</em>",
+ "translate-edit-information": "Information about message ($1)",
+ "translate-edit-in-other-languages": "Message in other languages",
+ "translate-edit-committed": "Current translation in software",
+ "translate-edit-warnings": "Warnings about incomplete translations",
+ "translate-edit-tmsugs": "Suggestions from translation memories and machine translation",
+ "translate-edit-tmmatch-source": "Translation source text: $1",
+ "translate-edit-tmmatch": "$1% match",
+ "translate-use-suggestion": "Replace current translation with this suggestion.",
+ "translate-edit-nopermission": "You need translation rights to translate messages.",
+ "translate-edit-askpermission": "Get permission",
+ "translate-edit-tag-warning": "",
+ "translate-magic-pagename": "Extended MediaWiki translation",
+ "translate-magic-help": "You can translate special pages aliases, magic words and namespace names.\n\nSpecial page aliases and magic words can have multiple translations.\nTranslations are separated by a comma (,).\nNamespaces can have only one translation.\n\nTranslating the project talk namespace <code>$1 talk</code> may be complicated.\n<code>$1</code> is replaced with the project sitename (for example <code>{{ns:project_talk}}</code>).\nIf it is not possible in your language to form a valid expression without changing the sitename, please let us know on [[Support]].\n\nYou need to be a translator to save changes.\nChanges are not saved until you click the save button below.",
+ "translate-magic-module": "Module:",
+ "translate-magic-submit": "Fetch",
+ "translate-magic-cm-export": "Export",
+ "translate-magic-nothing-to-export": "There is nothing to export.",
+ "translate-magic-cm-to-be": "To-be",
+ "translate-magic-cm-current": "Current",
+ "translate-magic-cm-original": "Original",
+ "translate-magic-cm-comment": "Comment:",
+ "translate-magic-cm-save": "Save",
+ "translate-magic-cm-updatedusing": "Updated using [[Special:AdvancedTranslate|{{int:Translate-magic-pagename}}]]",
+ "translate-magic-cm-savefailed": "Save failed",
+ "translate-magic-special": "Special page aliases",
+ "translate-magic-words": "Magic words",
+ "translate-magic-namespace": "Namespace names",
+ "translate-magic-notsaved": "Your edit was not saved!",
+ "translate-magic-errors": "Please fix following {{PLURAL:$1|error|errors}} in translations:",
+ "translate-magic-saved": "Your changes were saved successfully.",
+ "translate-checks-parameters": "Following {{PLURAL:$2|parameter is|parameters are}} not used:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-parameters-unknown": "Following {{PLURAL:$2|parameter is|parameters are}} unknown:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-balance": "There is an uneven amount of {{PLURAL:$2|parenthesis|parentheses}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links": "Following {{PLURAL:$2|link is|$2 links are}} problematic:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links-missing": "Following {{PLURAL:$2|link is|$2 links are}} missing:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-xhtml": "Please replace the following {{PLURAL:$2|tag|tags}} with correct ones:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-plural": "Definition uses <nowiki>{{PLURAL:}}</nowiki> but translation does not.",
+ "translate-checks-plural-forms": "<nowiki>{{PLURAL:}}</nowiki> was given {{PLURAL:$1|one form|$1 forms}} but {{PLURAL:$2|only one form is|$2 forms are}} supported (excluding 0= and 1= forms).",
+ "translate-checks-plural-dupe": "<nowiki>{{PLURAL:}}</nowiki> has duplicate forms at the end. <nowiki>{{PLURAL:$1|sheep|sheep}}</nowiki> should be written as <nowiki>{{PLURAL:$1|sheep}}</nowiki>.",
+ "translate-checks-pagename": "Namespace changed from the definition",
+ "translate-checks-format": "This translation does not follow the definition or has invalid syntax: $1",
+ "translate-checks-escape": "The following escapes may be accidental: <strong>$1</strong>",
+ "translate-checks-parametersnotequal": "Parameter count is {{PLURAL:$1|$1}}; should be {{PLURAL:$2|$2}}.",
+ "translate-checks-malformed": "<nowiki>$1</nowiki> is malformed.",
+ "translate-checks-fudforum-syntax": "Use <nowiki>$1</nowiki> instead of <nowiki>$2</nowiki> in this project.",
+ "translate-pref-nonewsletter": "Do not send me email newsletters",
+ "translate-pref-editassistlang": "Assistant languages:",
+ "prefs-translate": "Translation options",
+ "translate-pref-editassistlang-help": "Comma separated list of language codes.\nTranslation of a message in these languages are shown when you are translating.\nThe default list of languages depends on your language.",
+ "translate-pref-editassistlang-bad": "Invalid language code in the list:\n<nowiki>$1</nowiki>.",
+ "right-translate": "Edit using the translate interface",
+ "right-translate-manage": "Manage message groups",
+ "action-translate-manage": "manage message groups",
+ "right-translate-import": "Import offline translations",
+ "action-translate-import": "import offline translations",
+ "right-translate-messagereview": "Review translations",
+ "right-translate-groupreview": "Change workflow state of message groups",
+ "translate-rc-translation-filter": "Filter translations:",
+ "translate-rc-translation-filter-no": "Do nothing",
+ "translate-rc-translation-filter-only": "Show translations only",
+ "translate-rc-translation-filter-filter": "Filter out translations",
+ "translate-rc-translation-filter-site": "Changes to site messages only",
+ "translationstats": "Translation statistics",
+ "translate-stats-edits": "Edits",
+ "translate-stats-users": "Translators",
+ "translate-stats-registrations": "Registrations",
+ "translate-stats-reviews": "Reviews",
+ "translate-stats-reviewers": "Reviewers",
+ "translate-statsf-intro": "You can generate simple statistics with this form.\nAll values have upper and lower limits.",
+ "translate-statsf-options": "Graph options",
+ "translate-statsf-width": "Width in pixels:",
+ "translate-statsf-height": "Height in pixels:",
+ "translate-statsf-days": "Time period in days:",
+ "translate-statsf-start": "Starting date:",
+ "translate-statsf-scale": "Granularity:",
+ "translate-statsf-scale-months": "Months",
+ "translate-statsf-scale-weeks": "Weeks",
+ "translate-statsf-scale-days": "Days",
+ "translate-statsf-scale-hours": "Hours",
+ "translate-statsf-count": "Measure:",
+ "translate-statsf-count-edits": "Number of edits",
+ "translate-statsf-count-users": "Active translators",
+ "translate-statsf-count-registrations": "New users",
+ "translate-statsf-count-reviews": "Translation reviews",
+ "translate-statsf-count-reviewers": "Reviewers",
+ "translate-statsf-language": "Comma-separated list of language codes:",
+ "translate-statsf-group": "Comma-separated list of group codes:",
+ "translate-statsf-submit": "Preview",
+ "translate-tag-category": "Translatable pages",
+ "translate-tag-page-desc": "Translation of the wiki page [[$2|$1]] from $3 ($4).",
+ "translate-sidebar-alltrans": "In other languages",
+ "translations": "All translations",
+ "translations-summary": "Enter a message name below to show all available translations.",
+ "translate-translations-no-message": "\"$1\" is not a translatable message",
+ "translate-translations-none": "There are no translations for \"$1\"",
+ "translate-translations-count": "Found {{PLURAL:$1|one translation|$1 translations}}.",
+ "translate-translations-fieldset-title": "Message",
+ "translate-translations-messagename": "Name:",
+ "translate-translations-project": "Project:",
+ "translate-translations-including-no-param": "Please specify a valid message key in the subpage parameter",
+ "translate-translations-history-short": "h",
+ "languagestats": "Language statistics",
+ "languagestats-summary": "This page shows translation statistics for all message groups for a language.",
+ "messagegroupstats-summary": "This page shows message group statistics.",
+ "languagestats-stats-for": "Translation statistics for $1 ($2).",
+ "languagestats-recenttranslations": "recent translations",
+ "translate-langstats-incomplete": "Some of the statistics on this page are incomplete. Please reload to get more statistics.",
+ "translate-langstats-expand": "expand",
+ "translate-langstats-collapse": "collapse",
+ "translate-langstats-expandall": "expand all",
+ "translate-langstats-collapseall": "collapse all",
+ "translate-language-code": "Language code",
+ "translate-language-code-field-name": "Language code:",
+ "translate-suppress-complete": "Suppress completely translated message groups",
+ "translate-ls-noempty": "Suppress completely untranslated message groups",
+ "translate-language": "Language",
+ "translate-total": "Messages",
+ "translate-untranslated": "Untranslated",
+ "translate-percentage-complete": "Completion",
+ "translate-percentage-fuzzy": "Outdated",
+ "translate-languagestats-overall": "All message groups together",
+ "translate-ls-submit": "Show statistics",
+ "translate-ls-column-group": "Message group",
+ "translate-mgs-pagename": "Message group statistics",
+ "translate-mgs-fieldset": "Display preferences",
+ "translate-mgs-group": "Message group:",
+ "translate-mgs-nocomplete": "Do not display languages which have completed translation",
+ "translate-mgs-noempty": "Do not display languages which do not have any translations",
+ "translate-mgs-submit": "Show statistics",
+ "translate-mgs-column-language": "Language",
+ "translate-mgs-totals": "All languages together",
+ "translate-mgs-invalid-group": "The specified group $1 does not exist.",
+ "translate-mgs-nothing": "Nothing to show for requested statistics.",
+ "supportedlanguages": "Supported languages",
+ "supportedlanguages-summary": "This page shows a list of all languages supported by {{SITENAME}},\ntogether with the names of the translators working on that language.\nA translator's name appears larger, the more edits the translator has contributed.\nThe color of an underline indicates how recently a translator has been active here.",
+ "supportedlanguages-colorlegend": "Legend for the color: Last translation $1 days ago.",
+ "supportedlanguages-localsummary": "",
+ "supportedlanguages-portallink": "[$1] $2 - $3",
+ "supportedlanguages-portallink-nocldr": "[$1] $2",
+ "supportedlanguages-translators": "{{PLURAL:$2|{{GENDER:$3|Translator}}|Translators}}: $1",
+ "supportedlanguages-recenttranslations": "recent translations",
+ "supportedlanguages-count": "$1 {{PLURAL:$1|language|languages}} in total.",
+ "supportedlanguages-activity": "$1: $2 {{PLURAL:$2|edit|edits}} - last edit $3 {{PLURAL:$3|day|days}} ago",
+ "translate-save": "Save ($1)",
+ "translate-jssti-add": "Add to list",
+ "managemessagegroups": "Message group management",
+ "translate-smg-notallowed": "You are not allowed to execute this action.",
+ "translate-smg-nochanges": "There are no changes to process.",
+ "translate-smg-submit": "Submit changes for processing",
+ "translate-smg-submitted": "Message definitions have been updated. Changes are being processed in the background.",
+ "translate-smg-more": "There will be more changes to process after submitting these changes.",
+ "translate-smg-left": "Message content in wiki",
+ "translate-smg-right": "Incoming changes",
+ "translate-manage-import-diff": "Message $1 | Actions: $2",
+ "translate-manage-import-new": "New message $1",
+ "translate-manage-import-deleted": "Deleted message $1",
+ "translate-manage-action-import": "Import",
+ "translate-manage-action-conflict": "Import and fuzzy",
+ "translate-manage-action-ignore": "Ignore",
+ "translate-manage-action-fuzzy": "Import and fuzzy translations",
+ "translate-manage-nochanges": "There are no changes in message definitions for this group.",
+ "translate-manage-nochanges-other": "There were no changes for this language.\nUse the link below to return to the group details view.",
+ "translate-manage-inconsistent": "Detected inconsistency in the request.\nPlease check for changes and try again.\nDetails: $1.",
+ "translate-manage-toolong": "The maximum processing time of $1 {{PLURAL:$1|second|seconds}} exceeded.\nPlease resubmit the form to continue processing.",
+ "translate-manage-import-summary": "Importing a new version from external source",
+ "translate-manage-conflict-summary": "Importing a new version from external source.\nPlease check.",
+ "translate-manage-fuzzy-summary": "The message definition has changed",
+ "translate-manage-submit": "Execute",
+ "translate-manage-intro-other": "Below is list of translation changes in the language $1.\nPlease review the changes and choose an action you want to take for each update.\nIf you choose to ignore changes, this action is only temporary.",
+ "translate-manage-import-ok": "Imported: $1",
+ "translate-manage-import-done": "Import complete!",
+ "importtranslations": "Import translations",
+ "translate-import-from-local": "Local file upload:",
+ "translate-import-load": "Load file",
+ "translate-import-err-dl-failed": "Unable to fetch the file:\n$1",
+ "translate-import-err-ul-failed": "File upload was not successful",
+ "translate-import-err-invalid-title": "Provided file name <nowiki>$1</nowiki> was invalid.",
+ "translate-import-err-no-such-file": "File <nowiki>$1</nowiki> does not exist or has not been uploaded locally.",
+ "translate-import-err-stale-group": "The message group this file belongs to does not exist.",
+ "translate-import-err-no-headers": "File is not a well formed Gettext file in Translate extension format:\nUnable to determine message group and language from file headers.",
+ "translate-import-err-warnings": "The file is not well formed.\nMake sure your editor does not remove msgctxt fields.\nDetails: $1",
+ "translate-js-summary": "Summary:",
+ "translate-js-save": "Save",
+ "translate-js-next": "Save and open next",
+ "translate-js-nonext": "This was the last message on this page.",
+ "translate-js-skip": "Skip to next",
+ "translate-js-save-failed": "Saving failed. Please report this error.",
+ "translate-js-history": "Translation history",
+ "translate-js-support": "Ask question",
+ "translate-js-support-title": "Ask for help if there is not enough information to translate this message correctly.",
+ "translate-js-support-unsaved-warning": "You have unsaved translations.",
+ "translate-gs-pos": "Pos.",
+ "translate-gs-code": "Code",
+ "translate-gs-continent": "Continent",
+ "translate-gs-speakers": "Speakers",
+ "translate-gs-score": "Score",
+ "translate-gs-multiple": "Multiple",
+ "translate-gs-count": "Count",
+ "translate-gs-total": "Total",
+ "translate-gs-avgscore": "Avg. score",
+ "translate-documentation-language": "Message documentation",
+ "translate-searchprofile": "Translations",
+ "translate-searchprofile-tooltip": "Search from all translations",
+ "translate-search-languagefilter": "Filter by language:",
+ "translate-search-nofilter": "No filtering",
+ "translate-messagereview-submit": "Mark reviewed",
+ "translate-messagereview-progress": "Marking as reviewed...",
+ "translate-messagereview-failure": "Marking as reviewed failed: $1",
+ "translate-messagereview-done": "Reviewed",
+ "translate-messagereview-reviews": "Reviewed by {{PLURAL:$1|one user|$1 users}}",
+ "translate-messagereview-reviewswithyou": "Reviewed by {{PLURAL:$1|you|$1 users including you}}",
+ "api-error-invalidrevision": "Translation was not found",
+ "api-error-unknownmessage": "Message was not found",
+ "api-error-fuzzymessage": "Translation is marked as fuzzy",
+ "api-error-owntranslation": "You cannot mark your own translations as reviewed",
+ "translate-messagereview-no-fuzzy": "Fuzzy translations cannot be marked as reviewed.",
+ "translate-messagereview-no-own": "You cannot mark your own translations as reviewed.",
+ "translate-messagereview-doit": "Mark this translation as reviewed.",
+ "group-translate-proofr.css": "/* CSS placed here will affect translation reviewers only */",
+ "group-translate-proofr.js": "/* JS placed here will affect translation reviewer only */",
+ "log-name-translationreview": "Translation review log",
+ "log-description-translationreview": "Log of all reviews to translations and message groups.",
+ "logentry-translationreview-message": "$1 {{GENDER:$2|reviewed}} translation $3",
+ "logentry-translationreview-group": "$1 {{GENDER:$2|changed}} the state of $4 translations of $3 from $6 to $7",
+ "group-translate-sandboxed": "Unapproved translators",
+ "group-translate-sandboxed-member": "{{GENDER:$1|unapproved translator}}",
+ "right-translate-sandboxmanage": "Manage sandboxed users",
+ "action-translate-sandboxmanage": "manage sandboxed users",
+ "right-translate-sandboxaction": "Execute actions whitelisted for sandboxed users",
+ "action-translate-sandboxaction": "execute actions whitelisted for sandboxed users",
+ "translate-workflow-state-": "(unset)",
+ "translate-workflowstatus": "State: $1",
+ "translate-workflow-set-do": "Set",
+ "translate-workflow-set-doing": "Setting...",
+ "translate-workflow-set-done": "Set!",
+ "translate-workflow-set-error-alreadyset": "The requested state is identical to the current state.",
+ "translate-workflow-autocreated-summary": "Automatic creation of page for workflow state $1",
+ "translate-stats-workflow": "State",
+ "translate-workflowgroup-label": "Workflow states",
+ "translate-workflowgroup-desc": "This message group shows the translation workflow states.\nThe states are defined in the configuration variable $wgTranslateWorkflowStates.",
+ "translate-dynagroup-recent-label": "Recent translations",
+ "translate-dynagroup-recent-desc": "This message group shows all recent translations into this language.\nMost useful for the review tasks.",
+ "translate-dynagroup-additions-label": "Recent additions",
+ "translate-dynagroup-additions-desc": "This message group shows new and changed messages.",
+ "translate-dynagroup-by": "Translation made by {{GENDER:$1|$1}}",
+ "translate-dynagroup-byc": "Translation made by {{GENDER:$1|$1}} ($2)",
+ "translate-dynagroup-last": "Latest change by {{GENDER:$1|$1}}",
+ "translate-dynagroup-lastc": "Latest change by {{GENDER:$1|$1}} ($2)",
+ "translate-gethelp": "Help",
+ "translate-msggroupselector-projects": "Message group",
+ "translate-msggroupselector-search-placeholder": "Search groups",
+ "translate-msggroupselector-search-all": "All",
+ "translate-msggroupselector-search-recent": "Recent",
+ "translate-msggroupselector-view-subprojects": "$1 {{PLURAL:$1|subgroup|subgroups}}",
+ "tux-languageselector": "Translate to",
+ "tux-tab-all": "All",
+ "tux-tab-untranslated": "Untranslated",
+ "tux-tab-outdated": "Outdated",
+ "tux-tab-translated": "Translated",
+ "tux-tab-unproofread": "Unreviewed",
+ "tux-edit": "Edit",
+ "tux-status-optional": "Optional",
+ "tux-status-fuzzy": "Outdated",
+ "tux-status-proofread": "Reviewed",
+ "tux-status-translated": "Translated",
+ "tux-status-saving": "Saving...",
+ "tux-status-unsaved": "Unsaved",
+ "tux-editor-placeholder": "Your translation",
+ "tux-editor-paste-original-button-label": "Paste source text",
+ "tux-editor-discard-changes-button-label": "Discard changes",
+ "tux-editor-save-button-label": "Save translation",
+ "tux-editor-skip-button-label": "Skip to next",
+ "tux-editor-cancel-button-label": "Cancel",
+ "tux-editor-confirm-button-label": "Confirm translation",
+ "tux-editor-shortcut-info": "Press \"$1\" to save or \"$2\" to skip to next message or \"$3\" for other shortcuts.",
+ "tux-editor-edit-desc": "Edit documentation",
+ "tux-editor-add-desc": "Add documentation",
+ "tux-editor-suggestions-title": "Suggestions",
+ "tux-editor-in-other-languages": "In other languages",
+ "tux-editor-need-more-help": "Need more help?",
+ "tux-editor-ask-help": "Ask for more information",
+ "tux-editor-tm-match": "$1% match",
+ "tux-warnings-more": "{{PLURAL:$1|$1 more}}",
+ "tux-warnings-hide": "hide",
+ "tux-editor-save-failed": "Saving the translation failed: $1",
+ "tux-editor-n-uses": "used $1 {{PLURAL:$1|time|times}}",
+ "tux-editor-message-desc-more": "View more",
+ "tux-editor-message-desc-less": "View less",
+ "tux-editor-clear-translated": "Hide translated",
+ "tux-editor-proofreading-mode": "Review",
+ "tux-editor-translate-mode": "List",
+ "tux-editor-proofreading-hide-own-translations": "Hide your translations",
+ "tux-editor-proofreading-show-own-translations": "Show your translations",
+ "tux-proofread-action-tooltip": "Mark as reviewed",
+ "tux-proofread-edit-label": "Edit",
+ "tux-editor-page-mode": "Page",
+ "tux-editor-outdated-warning": "This translation may need to be updated.",
+ "tux-editor-outdated-warning-diff-link": "Show differences",
+ "tux-editor-doc-editor-placeholder": "Message documentation",
+ "tux-editor-doc-editor-save": "Save documentation",
+ "tux-editor-doc-editor-cancel": "Cancel",
+ "tux-messagetable-more-messages": "$1 more {{PLURAL:$1|message|messages}}",
+ "tux-messagetable-loading-messages": "Loading {{PLURAL:$1|message|messages}}...",
+ "tux-message-filter-placeholder": "Filter list",
+ "tux-message-filter-result": "Found $1 {{PLURAL:$1|result|results}} for \"$2\"",
+ "tux-message-filter-advanced-button": "Advanced search",
+ "tux-message-filter-optional-messages-label": "Optional messages",
+ "tux-proofread-translated-by-self": "Translated by you",
+ "tux-empty-list-all": "This message group is empty",
+ "tux-empty-list-all-guide": "Select a different message group to translate",
+ "tux-translate-page-no-such-group": "<strong>The indicated group does not exist.</strong> Select a different message group.",
+ "tux-empty-list-translated": "No translated messages",
+ "tux-empty-list-translated-guide": "You can help translating",
+ "tux-empty-list-translated-action": "Translate",
+ "tux-empty-no-messages-to-display": "No messages to display.",
+ "tux-empty-there-are-optional": "There are optional messages not shown in the list",
+ "tux-empty-show-optional-messages": "Show optional messages",
+ "tux-empty-no-outdated-messages": "No outdated messages",
+ "tux-empty-nothing-to-proofread": "Nothing to review",
+ "tux-empty-you-can-help-providing": "You can help providing new translations",
+ "tux-empty-nothing-new-to-proofread": "Nothing new to review",
+ "tux-empty-you-can-review-already-proofread": "You can review translations already reviewed by others.",
+ "tux-empty-list-other": "Nothing to translate",
+ "tux-empty-list-other-guide": "You can help review existing translations",
+ "tux-empty-list-other-action": "Review translations",
+ "tux-empty-list-other-link": "Show all messages",
+ "tux-editor-close-tooltip": "Close",
+ "tux-editor-expand-tooltip": "Expand",
+ "tux-editor-collapse-tooltip": "Collapse",
+ "tux-editor-message-tools-history": "History",
+ "tux-editor-message-tools-delete": "Delete",
+ "tux-editor-message-tools-translations": "All translations",
+ "tux-editor-loading": "Loading...",
+ "translate-search-more-languages-info": "$1 more {{PLURAL:$1|language|languages}}",
+ "translate-statsbar-tooltip": "$1% translated, $2% reviewed",
+ "translate-statsbar-tooltip-with-fuzzy": "$1% translated, $2% reviewed, $3% outdated",
+ "translate-search-more-groups-info": "$1 more {{PLURAL:$1|group|groups}}",
+ "translate-ulsdep-title": "Configuration error",
+ "translate-ulsdep-body": "Translate extension depends on the [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:UniversalLanguageSelector Universal Language Selector extension].",
+ "tux-session-expired": "You are no longer logged in. Please log in in a separate tab. Alternatively, make a copy of unsaved translations, log in and return to this page."
+}
diff --git a/MLEB/Translate/i18n/core/eo.json b/MLEB/Translate/i18n/core/eo.json
new file mode 100644
index 00000000..ed55e041
--- /dev/null
+++ b/MLEB/Translate/i18n/core/eo.json
@@ -0,0 +1,322 @@
+{
+ "@metadata": {
+ "authors": [
+ "AVRS",
+ "Amire80",
+ "Anakmalaysia",
+ "ArnoLagrange",
+ "Blahma",
+ "Melancholie",
+ "Michawiki",
+ "Mihxil",
+ "Tlustulimu",
+ "Yekrats"
+ ]
+ },
+ "translate": "Tradukado",
+ "translate-desc": "[[Special:Translate|Speciala paĝo]] por traduki MediaWiki kaj alia",
+ "translate-taskui-view": "Montru ĉiujn mesaĝojn",
+ "translate-taskui-untranslated": "Montru netradukitajn mesaĝojn",
+ "translate-taskui-optional": "Montru opciajn mesaĝojn",
+ "translate-taskui-acceptqueue": "Nur mesaĝojn kiujn mi povas aprobi",
+ "translate-taskui-reviewall": "Revizii ĉiujn tradukojn",
+ "translate-taskui-export-to-file": "Eksportu en fonta formato",
+ "translate-taskui-export-as-po": "Eksportu por eksterkonekta traduko",
+ "translate-taction-translate": "Traduki",
+ "translate-taction-proofread": "Provlego",
+ "translate-taction-lstats": "Lingvaj statistikoj",
+ "translate-taction-mstats": "Statistikoj por mesaĝgrupo",
+ "translate-taction-export": "Eksporti",
+ "translate-taction-disabled": "Ĉi tiu ago estas malaktivigita sur ĉi tiu vikio.",
+ "translate-page-no-such-language": "Specifita lingvo estas malvalida.",
+ "translate-page-no-such-group": "Specifita grupo estas malvalida.",
+ "translate-page-disabled": "Tradukoj al ĉi tiu lingvo en ĉi tiu grupo estis malebligita. Kialo:\n\n<em>$1</em>",
+ "translate-language-disabled": "Tradukado en tiun ĉi lingvon estas malŝaltita.",
+ "translate-page-settings-legend": "Preferoj",
+ "translate-page-group": "Grupo",
+ "translate-page-language": "Lingvo",
+ "translate-page-limit": "Nombro de mesaĝoj",
+ "translate-page-limit-option": "po $1 {{PLURAL:$1|mesaĝo|mesaĝoj}} en paĝo",
+ "translate-submit": "Mendi",
+ "translate-page-navigation-legend": "Navigado",
+ "translate-page-showing": "Estas montrataj mesaĝoj $1 ĝis $2 el $3.",
+ "translate-page-showing-all": "Estas montrataj $1 {{PLURAL:$1|mesaĝo|mesaĝoj}}.",
+ "translate-page-showing-none": "Ne estas mesaĝoj por montri.",
+ "translate-next": "Sekva paĝo",
+ "translate-prev": "Antaŭa paĝo",
+ "translate-page-description-legend": "Informoj pri la grupo",
+ "translate-page-description-hasoptional": "Ĉi tiu mesaĝgrupo entenas opciajn mesaĝojn.\nOpciaj mesaĝoj estu tradukitaj al via lingvo se via lingvo postulas ĝin\nkiel ne uzi spacojn aŭ transliterado de personaj nomoj. $1",
+ "translate-page-description-hasoptional-open": "Montru opciajn mesaĝojn.",
+ "translate-page-edit": "redakti",
+ "translate-ext-url": "<hr />Retejo: $1",
+ "translate-optional": "(nedeviga)",
+ "translate-ignored": "(ignorata)",
+ "translate-edit-title": "Redakti \"$1\"",
+ "translate-edit-definition": "Mesaĝa difino",
+ "translate-edit-translation": "Tradukado",
+ "translate-edit-contribute": "kontribui",
+ "translate-edit-no-information": "''Ĉi tiu mesago ne havas dokumentaron. Se vi scias, kie aŭ kiel ĉi tiu mesaĝo estas uzata, vi povas helpi al aliaj tradukantoj aldonante la dokumentaron al ĉi tiu mesaĝo.''",
+ "translate-edit-information": "Informo pri la mesaĝo ($1)",
+ "translate-edit-in-other-languages": "Mesaĝo en aliaj lingvoj",
+ "translate-edit-committed": "Aktuala traduko en programaro",
+ "translate-edit-warnings": "Avertoj pri nekompletaj tradukoj",
+ "translate-edit-tmsugs": "Sugestoj de tradukada memoro",
+ "translate-edit-tmmatch-source": "Tradukfontateksto: $1",
+ "translate-edit-tmmatch": "$1% kongrueco",
+ "translate-use-suggestion": "Anstataŭigi nunan tradukon per ĉi tiu sugesto.",
+ "translate-edit-nopermission": "Vi devas havi permeson por traduki mesaĝojn.",
+ "translate-edit-askpermission": "Peti permeson",
+ "translate-magic-pagename": "Etendita traduko de MediaWiki",
+ "translate-magic-help": "Vi povas traduki specialajn kromnomojn de paĝoj, magiajn vortojn, kaj nomojn de nomspacoj.\n\nSpecialaj kromnomoj de paĝoj kaj magiaj vortoj povas havi plurajn tradukojn.\nTradukoj estas apartigitaj de komo (,).\nNomoj de nomspacoj nur povas havi unu tradukon.\n\nTradukado de la reteja diskuta nomspaco <code>diskuto pri $1</code> povas esti malfacila.\n<code>$1</code> estas anstataŭigita per la nomo de la retejo (ekz. <code>{{ns:project_talk}})</code>).\nSe ne eblas per via lingvo formi validan esprimon sen ŝanĝi la nomon de la retejo, bonvolu kontakti nian [[Support|programiston]].\n\nVi devas esti en la grupo de tradukantoj por konservi ŝanĝojn.\nŜanĝoj ne estos konservataj ĝis vi alklakis la suban konservobutonon.",
+ "translate-magic-module": "Modjulo:",
+ "translate-magic-submit": "Montri",
+ "translate-magic-cm-export": "Eksporti",
+ "translate-magic-nothing-to-export": "Estas nenio por eksporti.",
+ "translate-magic-cm-to-be": "Esti",
+ "translate-magic-cm-current": "Nuntempe",
+ "translate-magic-cm-original": "Originalo",
+ "translate-magic-cm-comment": "Komento:",
+ "translate-magic-cm-save": "Konservi",
+ "translate-magic-cm-updatedusing": "Ĝisdatigita pere de [[Special:AdvancedTranslate|{{int:Translate-magic-pagename}}]]",
+ "translate-magic-cm-savefailed": "Konservado malsukcesis",
+ "translate-magic-special": "Kromnomoj de specialaj paĝoj",
+ "translate-magic-words": "Magiaj vortoj",
+ "translate-magic-namespace": "Nomoj de nomspacoj",
+ "translate-magic-notsaved": "Via redakto ne estis konservita!",
+ "translate-magic-errors": "Bonvolu ripari {{PLURAL:$1|jenan eraron|jenajn erarojn}} en tradukoj:",
+ "translate-magic-saved": "Viaj ŝanĝoj estis sukcese konservita.",
+ "translate-checks-parameters": "{{PLURAL:$2|Jenaj parametroj ne estas uzataj|Jena parametro ne estas uzata}}: <strong>$1</strong>",
+ "translate-checks-parameters-unknown": "Jenaj {{PLURAL:$2|parametro|parametroj}} estas nekonataj:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-balance": "Estas nepara nombro de {{PLURAL:$2|krampo|krampoj}}: <strong>$1</strong>",
+ "translate-checks-links": "{{PLURAL:$2|Jenaj ligiloj estas problemaj|Jena ligilo estas problema}}: <strong>$1</strong>",
+ "translate-checks-links-missing": "Mankas {{PLURAL:$2|jena ligilo|jenaj ligiloj}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-xhtml": "Bonvolu anstataŭigi {{PLURAL:$2|jena etikedo|jenajn etikedojn}} per la korektaj:\n<strong>$1</strong>",
+ "translate-checks-plural": "Difino uzas <nowiki>{{PLURAL:}}</nowiki>, sed traduko ne.",
+ "translate-checks-plural-forms": "<nowiki>{{PLURAL:}}</nowiki> ricevis {{PLURAL:$1|unu formon|$1 formojn}}, sed {{PLURAL:$2|nur unu formo|$2 formoj}} estas subtenataj (aldone al la formoj 0= kaj 1=).",
+ "translate-checks-plural-dupe": "<nowiki>{{PLURAL:}}</nowiki> havas ripetitajn formojn ĉe la fino. Anstataŭ <nowiki>{{PLURAL:$1|okulvitroj|okulvitroj}}</nowiki> estu skribita nur <nowiki>{{PLURAL:$1|okulvitroj}}</nowiki>.",
+ "translate-checks-pagename": "Nomspaco ŝanĝita de difino",
+ "translate-checks-format": "Ĉi tiu traduko ne sekvas la difinon aŭ havas malvalidan sintaksaĵon: $1",
+ "translate-checks-escape": "La sekvantaj markiloj <!--escapes-->povas esti akcidentaj : <strong>$1</strong>",
+ "translate-checks-parametersnotequal": "Parametronombro estas {{PLURAL:$1|$1}}; devus esti {{PLURAL:$2|$2}}.",
+ "translate-checks-malformed": "<nowiki>$1</nowiki> estas malĝusta..",
+ "translate-checks-fudforum-syntax": "Uzu <nowiki>$1</nowiki> anstataŭ <nowiki>$2</nowiki> en ĉi tiu projekto.",
+ "translate-pref-nonewsletter": "Ne sendi al mi retpoŝtajn gazetojn",
+ "translate-pref-editassistlang": "Helpaj lingvoj:",
+ "prefs-translate": "Tradukaj agordoj",
+ "translate-pref-editassistlang-help": "Listo da lingvokodoj disigitaj de komoj.\nTraduko de mesaĝo en ĉi tiuj lingvoj estas montritaj kiam vi estas tradukanta.\nLa defaŭlta lingvolisto dependas de via lingvo.",
+ "translate-pref-editassistlang-bad": "Malvalida lingva kodo en la listo:\n<nowiki>$1</nowiki>.",
+ "right-translate": "Redakti per la traduka interfaco",
+ "right-translate-manage": "Administri grupojn de mesaĝoj",
+ "action-translate-manage": "Administri grupojn de mesaĝoj",
+ "right-translate-import": "Importi ekster-retajn tradukojn.",
+ "action-translate-import": "Importi ekster-konektajn tradukojn.",
+ "right-translate-messagereview": "Ekzameni tradukojn",
+ "right-translate-groupreview": "Ŝanĝi laborflustaton de mesaĝgrupoj",
+ "translate-rc-translation-filter": "Filtri tradukojn:",
+ "translate-rc-translation-filter-no": "Fari nenion",
+ "translate-rc-translation-filter-only": "Montri nur tradukojn",
+ "translate-rc-translation-filter-filter": "Forfiltri tradukojn",
+ "translate-rc-translation-filter-site": "Ŝanĝoj nur al mesaĝoj de la retejo",
+ "translationstats": "Statistiko pri tradukado",
+ "translate-stats-edits": "Redaktoj",
+ "translate-stats-users": "Tradukantoj",
+ "translate-stats-registrations": "Registraĵoj",
+ "translate-stats-reviews": "Provlegoj",
+ "translate-stats-reviewers": "Provlegantoj",
+ "translate-statsf-intro": "Vi povas generi simplajn statistikojn kun ĉi tiu paĝo. Ĉiuj valoroj estas limigitaj suben kaj supren.",
+ "translate-statsf-options": "Grafeaj opcioj",
+ "translate-statsf-width": "Larĝo en rastrumeroj:",
+ "translate-statsf-height": "Alto en rastrumeroj:",
+ "translate-statsf-days": "Komencodato:",
+ "translate-statsf-start": "Dato de komenco:",
+ "translate-statsf-scale": "Detaleco:",
+ "translate-statsf-scale-months": "Monatoj",
+ "translate-statsf-scale-weeks": "Semajnoj",
+ "translate-statsf-scale-days": "Tagoj",
+ "translate-statsf-scale-hours": "Horoj",
+ "translate-statsf-count": "Mezuro:",
+ "translate-statsf-count-edits": "Nombro de redaktoj",
+ "translate-statsf-count-users": "Aktivaj tradukantoj",
+ "translate-statsf-count-registrations": "Novaj uzantoj",
+ "translate-statsf-count-reviews": "Tradukprovlegoj",
+ "translate-statsf-count-reviewers": "Provlegantoj",
+ "translate-statsf-language": "Kome apartigita listo de lingvaj kodoj:",
+ "translate-statsf-group": "Kome apartigita listo de grupaj kodoj:",
+ "translate-statsf-submit": "Antaŭvido",
+ "translate-tag-category": "Tradukeblaj paĝoj",
+ "translate-tag-page-desc": "Traduko de la vikia paĝo [[$2|$1]].",
+ "translate-sidebar-alltrans": "En aliaj lingvoj",
+ "translations": "Ĉiuj tradukoj",
+ "translations-summary": "Enigu mesaĝan nomon suben por montri ĉiujn haveblajn tradukojn.",
+ "translate-translations-no-message": "\"$1\" ne estas tradukebla mesaĝo",
+ "translate-translations-none": "Estas neniuj tradukoj por \"$1\"",
+ "translate-translations-count": "{{PLURAL:$1|Trovita unu traduko|Trovitaj $1 tradukoj}}.",
+ "translate-translations-fieldset-title": "Mesaĝo",
+ "translate-translations-messagename": "Nomo:",
+ "translate-translations-project": "Projekto:",
+ "translate-translations-including-no-param": "Bonvolu specifi validan mesaĝan ŝlosilon en la subpaĝa parametro",
+ "translate-translations-history-short": "h",
+ "languagestats": "Lingvaj statistikoj",
+ "languagestats-summary": "Ĉi tiu paĝo montras la statistikojn de tradukado por ĉiuj grupoj de mesaĝoj po iu lingvo.",
+ "languagestats-stats-for": "Tradukstatistikoj por $1 ($2)",
+ "languagestats-recenttranslations": "lastaj tradukoj",
+ "translate-langstats-incomplete": "Kelkaj el la statistikoj sur ĉi tiu paĝo estas nekompletaj. Bonvolu refreŝigi por ricevi pli da statistikoj.",
+ "translate-langstats-expand": "montri",
+ "translate-langstats-collapse": "kaŝi",
+ "translate-langstats-expandall": "montri ĉiujn",
+ "translate-langstats-collapseall": "kaŝi ĉiujn",
+ "translate-language-code": "Lingva kodo",
+ "translate-language-code-field-name": "Lingva kodo:",
+ "translate-suppress-complete": "Forigu komplete tradukitajn mesaĝgrupojn",
+ "translate-ls-noempty": "Forigu komplete netradukitajn mesaĝgrupojn",
+ "translate-language": "Lingvo",
+ "translate-total": "Mesaĝoj",
+ "translate-untranslated": "Netradukita",
+ "translate-percentage-complete": "Kompletigo",
+ "translate-percentage-fuzzy": "Malfreŝaj",
+ "translate-languagestats-overall": "Ĉiuj mesaĝgrupoj kune",
+ "translate-ls-submit": "Montri statistikojn",
+ "translate-ls-column-group": "Mesaĝgrupo",
+ "translate-mgs-pagename": "Statistikoj por mesaĝgrupo",
+ "translate-mgs-fieldset": "Montru preferojn",
+ "translate-mgs-group": "Mesaĝgrupo:",
+ "translate-mgs-nocomplete": "Ne montru lingvojn kiuj havas kompletan tradukon",
+ "translate-mgs-noempty": "Ne montru lingvojn kiuj havas neniun tradukon",
+ "translate-mgs-submit": "Montru statistikojn",
+ "translate-mgs-column-language": "Lingvo",
+ "translate-mgs-totals": "Ĉiuj lingvoj kune",
+ "translate-mgs-invalid-group": "La menciita grupo $1 ne ekzistas",
+ "translate-mgs-nothing": "Nenio estas montrebla por la petitaj statistikoj",
+ "supportedlanguages": "Eltenitaj lingvoj",
+ "supportedlanguages-summary": "Ĉi tiu paĝo montras liston de ĉiuj lingvoj eltenitaj de {{SITENAME}},\nkune kun la nomoj de tradukistoj laborantaj pri tiu lihngvo.\nJu pli multe kontribuis iu tradukisto, des pli granda aperas ties nomo.\nLa koloro de substreko indikas kiom da tempo pasis de kiam tradukisto esti laste aktiva ĉi tie.",
+ "supportedlanguages-colorlegend": "Kolorpriskribo: lasta traduko antaŭ $1 tagoj.",
+ "supportedlanguages-translators": "{{PLURAL:$2|Tradukisto|Tradukistoj}}: $1",
+ "supportedlanguages-recenttranslations": "Lastatempaj tradukoj",
+ "supportedlanguages-count": "Sume $1 {{PLURAL:$1|lingvo|lingvoj}}.",
+ "supportedlanguages-activity": "$1: $2 {{PLURAL:$2|redakto|redaktoj}} - lasta redakto antaŭ $3 {{PLURAL:$3|tago|tagoj}}",
+ "translate-save": "Konservi ($1)",
+ "translate-jssti-add": "Aldoni al listo",
+ "managemessagegroups": "Administrado de mesaĝgrupoj",
+ "translate-smg-notallowed": "Vi ne rajtas plenumi ĉi tiun agon.",
+ "translate-smg-nochanges": "Ne estas farendaj ŝanĝoj.",
+ "translate-smg-submit": "Proponi farendajn ŝanĝojn",
+ "translate-smg-submitted": "La difino de la mesaĝoj estis ĝisdatigitaj. Ŝanĝoj estas traktataj fontaske.",
+ "translate-smg-left": "Enhavo de la mesaĝo en la vikio",
+ "translate-smg-right": "Alvenantaj ŝanĝoj",
+ "translate-manage-import-diff": "Mesaĝo $1 | Agoj: $2",
+ "translate-manage-import-new": "Nova mesaĝo $1",
+ "translate-manage-import-deleted": "Forigita mesaĝo $1",
+ "translate-manage-action-import": "Importi",
+ "translate-manage-action-conflict": "Importi kaj marki kiel malpreciza",
+ "translate-manage-action-ignore": "Ignori",
+ "translate-manage-action-fuzzy": "Importi tradukojn kaj marki kiel neprecizajn",
+ "translate-manage-nochanges": "Ne estas ŝanĝoj en la difino de la mesaĝoj por ĉi tiu grupo.",
+ "translate-manage-nochanges-other": "Ne estas ŝanĝoj por ĉi tiu lingvo.\nUzu la suban ligilon por reiri al la detala vido de la grupo.",
+ "translate-manage-inconsistent": "Malkoheraĵo estas trovita en ĉi tiu peto.\nBonvolu kontroli ŝanĝojn kaj provu denove.\nDetaloj : $1.",
+ "translate-manage-toolong": "La maksimuma procesdaŭro ($1 {{PLURAL:$1|sekundo|sekundoj}}) pasis.\nBonvolu resendi la formularon por plu procesigi.",
+ "translate-manage-import-summary": "Importado de nova versio el ekstera fonto",
+ "translate-manage-conflict-summary": "Importado de nova versio el ekstera fonto\nBonvolu kontroli.",
+ "translate-manage-fuzzy-summary": "La difino de la mesaĝo estis ŝanĝita",
+ "translate-manage-submit": "Ekfunkcii",
+ "translate-manage-intro-other": "Sube estas listo de mesaĝŝanĝoj en la lingvo $1.\nBonvolu revizii la ŝanĝojn kaj elektu kion vi volas fari kun ĉiu traduko.\nSe vi decidas ignori ŝanĝojn, ili estos anstataŭigitaj je venonta eksporto.",
+ "translate-manage-import-ok": "Importita nova versio de paĝo $1.",
+ "translate-manage-import-done": "Finite!",
+ "importtranslations": "Importi tradukojn",
+ "translate-import-from-local": "Loka dosiero alŝuti:",
+ "translate-import-load": "Ŝarĝi dosieron",
+ "translate-import-err-dl-failed": "Ne eblas akiri la dosieron:\n$1",
+ "translate-import-err-ul-failed": "Dosiero alŝuto ne estis sukcesa",
+ "translate-import-err-invalid-title": "La provizita dosiernomo <nowiki>$1</nowiki> estas malvalida",
+ "translate-import-err-no-such-file": "La dosiero <nowiki>$1</nowiki> ne ekzistas aŭ ne estis ŝargita ĉi-loke.",
+ "translate-import-err-stale-group": "La mesaĝgrupo al kiu apartenas ĉi tiu dosiero ne ekzistas.",
+ "translate-import-err-no-headers": "La dosiero estas ne bone formita Gettext-dosiero en la formato de la Traduk-etendaĵo:\nneeblas decidi grupon kaj lingvon el dosierkapo.",
+ "translate-import-err-warnings": "La dosiero ne estas bone formita.\nBonvolu kontroli ke via redaktilo ne forigas msgctxt-kampojn.\nDetaloj: $1",
+ "translate-js-summary": "Resumo:",
+ "translate-js-save": "Konservi",
+ "translate-js-next": "Konservi kaj malfermi la sekvan",
+ "translate-js-nonext": "Tio estis la lasta mesaĝo en ĉi tiu paĝo.",
+ "translate-js-skip": "Salti al la sekva",
+ "translate-js-save-failed": "Konservado malsukcesis. Bonvolu raporti pri ĉi tiu eraro.",
+ "translate-js-history": "Traduka historio",
+ "translate-js-support": "Fari demandon",
+ "translate-js-support-title": "Petu helpon se ne estas sufiĉe da informoj por ĝuste traduki ĉi tiun mesaĝon.",
+ "translate-js-support-unsaved-warning": "Ekzistas nekonservitaj tradukoj.",
+ "translate-gs-pos": "Poz.",
+ "translate-gs-code": "Kodo",
+ "translate-gs-continent": "Kontinento",
+ "translate-gs-speakers": "Parolantoj",
+ "translate-gs-score": "Poentaro",
+ "translate-gs-multiple": "Oblo",
+ "translate-gs-count": "Nombro",
+ "translate-gs-total": "Sumo",
+ "translate-gs-avgscore": "Avĝ poentaro",
+ "translate-documentation-language": "Mesaĝa dokumentado",
+ "translate-searchprofile": "Tradukoj",
+ "translate-searchprofile-tooltip": "Serĉi el ĉiuj tradukoj",
+ "translate-search-languagefilter": "Filtrilo laŭ lingvoj:",
+ "translate-search-nofilter": "Neniu filtrado",
+ "translate-messagereview-submit": "Akcepti",
+ "translate-messagereview-progress": "Akceptado...",
+ "translate-messagereview-failure": "Akceptado... malsukcesis: $1",
+ "translate-messagereview-done": "Akceptita",
+ "translate-messagereview-reviews": "Akceptita de {{PLURAL:$1|unu uzanto|$1 uzantoj}}",
+ "translate-messagereview-reviewswithyou": "Akceptita de {{PLURAL:$1|vi|$1 uzantoj inkluzive de vi}}",
+ "api-error-invalidrevision": "La traduko ne estis trovita",
+ "api-error-unknownmessage": "La traduko ne estis trovita",
+ "api-error-fuzzymessage": "La traduko estis markita kiel malneta",
+ "api-error-owntranslation": "Vi ne povas akcepti vian proprajn tradukojn.",
+ "translate-messagereview-no-fuzzy": "Malnetaj tradukoj ne povas esti akceptitaj.",
+ "translate-messagereview-no-own": "Vi ne povas aprobi vian proprajn tradukojn.",
+ "translate-messagereview-doit": "Akcepti ĉi tiun tradukon kiel ĝusta.",
+ "log-name-translationreview": "Protokolo de tradukprovlego",
+ "log-description-translationreview": "Protokolo de ĉiuj tradukprovlegoj kaj de mesaĝgrupoj.",
+ "logentry-translationreview-message": "$1 {{GENDER:$2|akceptis}} tradukon $3",
+ "translate-workflow-state-": "(malŝalta)",
+ "translate-workflowstatus": "Statuso = $1",
+ "translate-workflow-set-do": "Aktivigi",
+ "translate-workflow-set-doing": "Aktivado...",
+ "translate-workflow-set-done": "Aktiva!",
+ "translate-workflow-set-error-alreadyset": "La petata stato estas sama kiel la nuna.",
+ "translate-workflow-autocreated-summary": "Aŭtomata kreado de paĝo por laborflustatuso $1",
+ "translate-stats-workflow": "Statuso",
+ "translate-workflowgroup-label": "Laborflustatusoj",
+ "translate-workflowgroup-desc": "Ĉi tiu mesaĝgrupo montras la laborflustatusojn.\nLa statusoj estas difinitaj en la konfigurvariablo $wgTranslateWorkflowStates.",
+ "translate-dynagroup-recent-label": "Lastatempaj tradukoj",
+ "translate-dynagroup-recent-desc": "Ĉi tiu mesaĝgrupo montras ĉiuj novajn tradukojn en ĉi tiun lingvon.\nPlej utila por provlegaj taskoj.",
+ "translate-dynagroup-additions-label": "Lastaj aldonoj",
+ "translate-dynagroup-additions-desc": "Tiu ĉi mesaĝgrupo montras novajn kaj ŝanĝitajn mesaĝojn.",
+ "translate-dynagroup-by": "Traduko faris de {{GENDER:$1|$1}}",
+ "translate-dynagroup-byc": "Traduko faris de {{GENDER:$1|$1}} ($2)",
+ "translate-dynagroup-last": "Lasta ŝanĝo de {{GENDER:$1|$1}}",
+ "translate-dynagroup-lastc": "Lasta ŝanĝo de {{GENDER:$1|$1}} ($2)",
+ "translate-gethelp": "Helpo",
+ "translate-msggroupselector-projects": "Mesaĝgrupo",
+ "translate-msggroupselector-search-placeholder": "Serĉi grupojn",
+ "translate-msggroupselector-search-all": "Ĉiuj",
+ "translate-msggroupselector-search-recent": "Lastaj",
+ "translate-msggroupselector-view-subprojects": "$1 {{PLURAL:$1|subgrupo|subgrupoj}}",
+ "tux-languageselector": "Traduki al",
+ "tux-tab-all": "Ĉiuj",
+ "tux-tab-untranslated": "Netradukitaj",
+ "tux-tab-outdated": "Malfreŝaj",
+ "tux-tab-translated": "Tradukitaj",
+ "tux-edit": "Redakti",
+ "tux-status-optional": "Nedeviga",
+ "tux-status-fuzzy": "Malfreŝaj",
+ "tux-status-proofread": "Provlegita",
+ "tux-status-translated": "Tradukita",
+ "tux-status-unsaved": "Nekonservita",
+ "tux-editor-placeholder": "Via traduko",
+ "tux-editor-save-button-label": "Konservi tradukon",
+ "tux-editor-skip-button-label": "Salti al la sekva",
+ "tux-editor-shortcut-info": "Premu \"$1\" por konservi aŭ \"$2\" por salti al la sekva mesaĝo",
+ "tux-editor-edit-desc": "Redakti priskribon",
+ "tux-editor-suggestions-title": "Sugestoj",
+ "tux-editor-in-other-languages": "En aliaj lingvoj",
+ "tux-editor-need-more-help": "Ĉu vi bezonas plian helpon?",
+ "tux-editor-ask-help": "Peti pliajn informojn",
+ "tux-editor-tm-match": "$1%-a kongruo",
+ "tux-warnings-more": "{{PLURAL:$1|$1 pli}}",
+ "tux-warnings-hide": "kaŝi",
+ "tux-editor-save-failed": "Ne sukcesis konservi la tradukon: $1"
+}
diff --git a/MLEB/Translate/i18n/core/es.json b/MLEB/Translate/i18n/core/es.json
new file mode 100644
index 00000000..cf4007f2
--- /dev/null
+++ b/MLEB/Translate/i18n/core/es.json
@@ -0,0 +1,406 @@
+{
+ "@metadata": {
+ "authors": [
+ "-jem-",
+ "Antur",
+ "Armando-Martin",
+ "Crazymadlover",
+ "Dalton2",
+ "Dferg",
+ "Fitoschido",
+ "Hereñu",
+ "Imre",
+ "Invadinado",
+ "Kobazulo",
+ "Lin linao",
+ "Locos epraix",
+ "MarcoAurelio",
+ "Ovruni",
+ "Pertile",
+ "Sanbec",
+ "Tempestas",
+ "Translationista",
+ "Vivaelcelta",
+ "Ciencia Al Poder",
+ "Wifidel",
+ "Macofe"
+ ]
+ },
+ "translate": "Traducir",
+ "translate-desc": "[[Special:Translate|Página especial]] para traducir el software MediaWiki y otras extensiones",
+ "translate-taskui-view": "Mostrar todos los mensajes",
+ "translate-taskui-untranslated": "Mostrar mensajes sin traducir",
+ "translate-taskui-optional": "Mostrar mensajes opcionales",
+ "translate-taskui-acceptqueue": "Sólo los mensajes que pueda marcar como revisados",
+ "translate-taskui-reviewall": "Revisar todas las traducciones",
+ "translate-taskui-export-to-file": "Exportar en formato nativo",
+ "translate-taskui-export-as-po": "Exportar para traducción sin conexión",
+ "translate-taction-translate": "Traducir",
+ "translate-taction-proofread": "Revisar",
+ "translate-taction-lstats": "Estadísticas del idioma",
+ "translate-taction-mstats": "Estadísticas del grupo de mensajes",
+ "translate-taction-export": "Exportar",
+ "translate-taction-disabled": "Esta acción está desactivada en este wiki.",
+ "translate-page-no-such-language": "No se especificó un idioma válido.",
+ "translate-page-no-such-group": "El grupo especificado no es válido.",
+ "translate-page-disabled": "Se han desactivado las traducciones a este idioma en este grupo.\nMotivo:\n\n<em>$1</em>",
+ "translate-language-disabled": "Se desactivó la traducción a este idioma.",
+ "translate-page-settings-legend": "Preferencias",
+ "translate-page-group": "Grupo",
+ "translate-page-language": "Idioma",
+ "translate-page-limit": "Límite",
+ "translate-page-limit-option": "$1 {{PLURAL:$1|mensaje|mensajes}} por página",
+ "translate-submit": "Obtener",
+ "translate-page-navigation-legend": "Navegación",
+ "translate-page-showing": "Mostrando mensajes del $1 al $2 de $3.",
+ "translate-page-showing-all": "Mostrando $1 {{PLURAL:$1|mensaje|mensajes}}.",
+ "translate-page-showing-none": "No hay mensajes para mostrar.",
+ "translate-next": "Página siguiente",
+ "translate-prev": "Página anterior",
+ "translate-page-description-legend": "Información acerca del grupo",
+ "translate-page-description-hasoptional": "Este grupo de mensajes contiene mensajes opcionales.\nLos mensajes opcionales deberían traducirse solo si tu idioma tiene características especiales como no usar espacios o transliterar nombres propios. $1",
+ "translate-page-description-hasoptional-open": "Mostrar mensajes opcionales.",
+ "translate-page-edit": "editar",
+ "translate-ext-url": "<hr />Sitio web: $1",
+ "translate-optional": "(opcional)",
+ "translate-ignored": "(ignorado)",
+ "translate-edit-title": "Editar «$1»",
+ "translate-edit-definition": "Mensaje original",
+ "translate-edit-translation": "Traducción",
+ "translate-edit-contribute": "contribuir",
+ "translate-edit-no-information": "<em>Este mensaje no tiene documentación.\nSi sabes dónde o cómo se usa este mensaje, puedes ayudar a los otros traductores añadiendo documentación a este mensaje.</em>",
+ "translate-edit-information": "Información acerca del mensaje ($1)",
+ "translate-edit-in-other-languages": "Mensaje en otros idiomas",
+ "translate-edit-committed": "Traducción actual en el software",
+ "translate-edit-warnings": "Advertencias acerca de traducciones incompletas",
+ "translate-edit-tmsugs": "Sugerencias de la memoria de traducciones y la traducción automática",
+ "translate-edit-tmmatch-source": "Texto fuente para la traducción: $1",
+ "translate-edit-tmmatch": "$1 % de coincidencia",
+ "translate-use-suggestion": "Reemplazar la traducción actual con esta sugerencia.",
+ "translate-edit-nopermission": "Necesitas permisos de traducción para traducir mensajes.",
+ "translate-edit-askpermission": "Obtener permiso",
+ "translate-magic-pagename": "Traducción extendida de MediaWiki",
+ "translate-magic-help": "Puedes traducir los nombres de las páginas especiales, de las palabras mágicas y de los espacios de nombres.\n\nLos nombres de las páginas especiales y las palabras mágicas pueden tener varias traducciones.\nLas traducciones se separan por comas (,).\nLos espacios de nombres solo pueden tener una traducción.\n\nTraducir el espacio de nombres de discusión de proyecto <code>$1 talk</code> puede ser complicado.\n<code>$1</code> se reemplaza por el nombre del sitio del proyecto (por ejemplo <code>{{ns:project_talk}}</code>).\nSi en tu idioma no es posible formar una expresión válida sin cambiar el nombre del sitio, contáctanos en la [[Support|página de ayuda]].\n\nPara guardar los cambios debes pertenecer al grupo de traductores.\nLos cambios no se graban hasta que no pulses el botón Guardar que aparece abajo.",
+ "translate-magic-module": "Módulo:",
+ "translate-magic-submit": "Obtener",
+ "translate-magic-cm-export": "Exportar",
+ "translate-magic-nothing-to-export": "No hay nada para exportar.",
+ "translate-magic-cm-to-be": "Será",
+ "translate-magic-cm-current": "Actual",
+ "translate-magic-cm-original": "Original",
+ "translate-magic-cm-comment": "Comentario:",
+ "translate-magic-cm-save": "Guardar",
+ "translate-magic-cm-updatedusing": "Actualizado usando [[Special:AdvancedTranslate|{{int:Translate-magic-pagename}}]]",
+ "translate-magic-cm-savefailed": "Error al guardar",
+ "translate-magic-special": "Nombres de páginas especiales",
+ "translate-magic-words": "Palabras mágicas",
+ "translate-magic-namespace": "Nombres de los espacios de nombres",
+ "translate-magic-notsaved": "No se guardó tu edición.",
+ "translate-magic-errors": "Por favor corrige {{PLURAL:$1|el siguiente error|los siguientes errores}} en la traducción:",
+ "translate-magic-saved": "Los cambios se guardaron correctamente.",
+ "translate-checks-parameters": "{{PLURAL:$2|El siguiente parámetro no se está|Los siguientes parámetros no se están}} usando:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-parameters-unknown": "{{PLURAL:$2|El siguiente parámetro es desconocido|Los siguientes parámetros son desconocidos}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-balance": "Hay algún signo de agrupación de {{PLURAL:$2|la siguiente clase|las siguientes clases}} sin emparejar:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links": "{{PLURAL:$2|El siguiente enlace es problemático|Los siguientes $2 enlaces son problemáticos}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links-missing": "{{PLURAL:$2|Falta el siguiente enlace|Faltan los siguientes $2 enlaces}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-xhtml": "Por favor, sustituye {{PLURAL:$2|la siguiente etiqueta|las siguientes etiquetas}} por las correctas:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-plural": "El mensaje original usa <nowiki>{{PLURAL:}}</nowiki> pero no así la traducción.",
+ "translate-checks-plural-forms": "<nowiki>{{PLURAL:}}</nowiki>recibió {{PLURAL:$1|una forma|$1 formas}} pero únicamente {{PLURAL:$2|está soportada una forma|están soportadas $2 formas}} (excluyendo las formas 0= y 1=).",
+ "translate-checks-plural-dupe": "<nowiki>{{PLURAL:}}</nowiki> tiene formas duplicadas al final. <nowiki>{{PLURAL:$1|lunes|lunes}}</nowiki> debería escribirse así: <nowiki>{{PLURAL:$1|lunes}}</nowiki>.",
+ "translate-checks-pagename": "El espacio de nombres difiere del original",
+ "translate-checks-format": "Esta traducción no sigue al original o tiene sintaxis inválida: $1",
+ "translate-checks-escape": "Los siguientes escapes pueden ser accidentales: <strong>$1</strong>",
+ "translate-checks-parametersnotequal": "El número de parámetros es {{PLURAL:$1|$1}}; debería ser {{PLURAL:$2|$2}}.",
+ "translate-checks-malformed": "<nowiki>$1</nowiki> es incorrecto.",
+ "translate-checks-fudforum-syntax": "Usar <nowiki>$1</nowiki> en lugar de <nowiki>$2</nowiki> en este proyecto.",
+ "translate-pref-nonewsletter": "No quiero recibir correos de noticias",
+ "translate-pref-editassistlang": "Idiomas auxiliares:",
+ "prefs-translate": "Opciones de traducción",
+ "translate-pref-editassistlang-help": "Lista separada por comas de códigos de idioma.\nLa traducción de un mensaje en estos idiomas se muestra cuando tu traduces.\nLa lista de idiomas por defecto depende de tu idioma.",
+ "translate-pref-editassistlang-bad": "Código de idioma inválido en la lista:\n<nowiki>$1</nowiki>.",
+ "right-translate": "Editar con la interfaz de traducción",
+ "right-translate-manage": "Administrar grupos de mensajes",
+ "action-translate-manage": "administrar grupos de mensaje",
+ "right-translate-import": "Importar traducciones sin conexión",
+ "action-translate-import": "importar traducciones sin conexión",
+ "right-translate-messagereview": "Revisar traducciones",
+ "right-translate-groupreview": "Modificar el estado del flujo de trabajo de los grupos de mensajes",
+ "translate-rc-translation-filter": "Filtrar traducciones:",
+ "translate-rc-translation-filter-no": "No hacer nada",
+ "translate-rc-translation-filter-only": "Mostrar solo traducciones",
+ "translate-rc-translation-filter-filter": "No mostrar traducciones",
+ "translate-rc-translation-filter-site": "Solo cambios en mensajes del sitio",
+ "translationstats": "Estadísticas de traducción",
+ "translate-stats-edits": "Ediciones",
+ "translate-stats-users": "Traductores",
+ "translate-stats-registrations": "Registros",
+ "translate-stats-reviews": "Revisiones",
+ "translate-stats-reviewers": "Revisores",
+ "translate-statsf-intro": "Puedes generar estadísticas simples con este formulario.\nTodos los valores tienen límites superiores e inferiores.",
+ "translate-statsf-options": "Opciones gráficas",
+ "translate-statsf-width": "Anchura en píxeles:",
+ "translate-statsf-height": "Altura en píxeles:",
+ "translate-statsf-days": "Periodo en días:",
+ "translate-statsf-start": "Fecha de inicio:",
+ "translate-statsf-scale": "Granularidad:",
+ "translate-statsf-scale-months": "Meses",
+ "translate-statsf-scale-weeks": "Semanas",
+ "translate-statsf-scale-days": "Días",
+ "translate-statsf-scale-hours": "Horas",
+ "translate-statsf-count": "Medida:",
+ "translate-statsf-count-edits": "Número de ediciones",
+ "translate-statsf-count-users": "Traductores activos",
+ "translate-statsf-count-registrations": "Nuevos usuarios",
+ "translate-statsf-count-reviews": "Revisiones de traducción",
+ "translate-statsf-count-reviewers": "Revisores",
+ "translate-statsf-language": "Lista de códigos de idioma separados por comas:",
+ "translate-statsf-group": "Lista de códigos de grupo separados por comas:",
+ "translate-statsf-submit": "Vista previa",
+ "translate-tag-category": "Páginas traducibles",
+ "translate-tag-page-desc": "Traducción de la página wiki [[$2|$1]] del $3 ($4).",
+ "translate-sidebar-alltrans": "En otros idiomas",
+ "translations": "Todas las traducciones",
+ "translations-summary": "Introduce un nombre de mensaje para ver todas las traducciones disponibles.",
+ "translate-translations-no-message": "«$1» no es un mensaje traducible",
+ "translate-translations-none": "No hay traducciones para «$1»",
+ "translate-translations-count": "Se {{PLURAL:$1|ha|han}} encontrado {{PLURAL:$1|una traducción|$1 traducciones}}.",
+ "translate-translations-fieldset-title": "Mensaje",
+ "translate-translations-messagename": "Nombre:",
+ "translate-translations-project": "Proyecto:",
+ "translate-translations-including-no-param": "Por favor especifique un mensaje clave válido en el parámetro de subpágina",
+ "translate-translations-history-short": "h",
+ "languagestats": "Estadísticas por idioma",
+ "languagestats-summary": "Esta página muestra estadísticas de traducción para todos los grupos de mensajes para un idioma.",
+ "messagegroupstats-summary": "Esta página muestra las estadísticas de grupo mensaje.",
+ "languagestats-stats-for": "Estadísticas de las traducciones en $1 ($2).",
+ "languagestats-recenttranslations": "traducciones recientes",
+ "translate-langstats-incomplete": "Algunas de las estadísticas de esta página están incompletas. Actualiza la página para obtener más estadísticas.",
+ "translate-langstats-expand": "expandir",
+ "translate-langstats-collapse": "contraer",
+ "translate-langstats-expandall": "expandir todo",
+ "translate-langstats-collapseall": "contraer todo",
+ "translate-language-code": "Código de idioma",
+ "translate-language-code-field-name": "Código de idioma:",
+ "translate-suppress-complete": "Eliminar los grupos de mensajes completamente traducidos",
+ "translate-ls-noempty": "Eliminar los grupos de mensajes sin traducción iniciada",
+ "translate-language": "Idioma",
+ "translate-total": "Mensajes",
+ "translate-untranslated": "Sin traducir",
+ "translate-percentage-complete": "Completados",
+ "translate-percentage-fuzzy": "Desactualizados",
+ "translate-languagestats-overall": "Todos los grupos de mensajes juntos",
+ "translate-ls-submit": "Mostrar estadísticas",
+ "translate-ls-column-group": "Grupo de mensajes",
+ "translate-mgs-pagename": "Estadísticas del grupo de mensajes",
+ "translate-mgs-fieldset": "Preferencias de visualización",
+ "translate-mgs-group": "Grupo de mensajes:",
+ "translate-mgs-nocomplete": "No mostrar los idiomas cuya traducción esté completa",
+ "translate-mgs-noempty": "No mostrar los idiomas que no tienen ninguna traducción",
+ "translate-mgs-submit": "Mostrar estadísticas",
+ "translate-mgs-column-language": "Idioma",
+ "translate-mgs-totals": "Todos los idiomas juntos",
+ "translate-mgs-invalid-group": "El grupo especificado $1 no existe.",
+ "translate-mgs-nothing": "No hay nada que mostrar de las estadísticas solicitadas.",
+ "supportedlanguages": "Idiomas admitidos",
+ "supportedlanguages-summary": "Esta página muestra una lista de todos los idiomas admitidos por {{SITENAME}},\njunto con los nombres de los traductores que trabajan en ese idioma.\nCuanto más haya traducido un traductor, más grande aparecerá su nombre.\nEl color del subrayado indica cuán activo es un traductor aquí.",
+ "supportedlanguages-colorlegend": "Leyenda del color: Última traducción hecha hace $1 días.",
+ "supportedlanguages-translators": "{{PLURAL:$2|{{GENDER:$3|Traductor|Traductora}}|Traductores}}: $1",
+ "supportedlanguages-recenttranslations": "traducciones recientes",
+ "supportedlanguages-count": "$1 {{PLURAL:$1|idioma|idiomas}} en total.",
+ "supportedlanguages-activity": "$1: $2 {{PLURAL:$2|edición|ediciones}}, última edición hace $3 {{PLURAL:$3|día|días}}",
+ "translate-save": "Guardar ($1)",
+ "translate-jssti-add": "Añadir a la lista",
+ "managemessagegroups": "Gestión de grupos de mensajes",
+ "translate-smg-notallowed": "No estás autorizado a ejecutar esta acción.",
+ "translate-smg-nochanges": "No hay cambios que procesar.",
+ "translate-smg-submit": "Enviar cambios para procesamiento",
+ "translate-smg-submitted": "Los mensajes originales han sido actualizados. Los cambios están siendo procesados en segundo plano.",
+ "translate-smg-more": "Habrá más cambios que procesar tras enviar estos cambios.",
+ "translate-smg-left": "Contenido del mensaje en el wiki",
+ "translate-smg-right": "Cambios entrantes",
+ "translate-manage-import-diff": "Mensaje $1 | Acciones: $2",
+ "translate-manage-import-new": "Nuevo mensaje $1",
+ "translate-manage-import-deleted": "Mensaje $1 borrado",
+ "translate-manage-action-import": "Importar",
+ "translate-manage-action-conflict": "Importar y marcar traducciones para su revisión",
+ "translate-manage-action-ignore": "Ignorar",
+ "translate-manage-action-fuzzy": "Importar y combinar traducciones",
+ "translate-manage-nochanges": "No hay cambios en los mensajes originales para este grupo.",
+ "translate-manage-nochanges-other": "No hubo cambios para este idioma.\nUse el enlace siguiente para volver a la vista de grupo.",
+ "translate-manage-inconsistent": "Se detectaron inconsistencias en la solicitud.\nPor favor revise y pruebe nuevamente.\nDetalles: $1.",
+ "translate-manage-toolong": "Se excedió el tiempo máximo de procesamiento de $1 {{PLURAL:$1|segundo|segundos}}.\nPor favor reenvía el formulario para continuar procesando.",
+ "translate-manage-import-summary": "Importando nueva versión desde fuente externa",
+ "translate-manage-conflict-summary": "Importando nueva versión desde fuente externa.\nPor favor verifique.",
+ "translate-manage-fuzzy-summary": "El mensaje original ha cambiado",
+ "translate-manage-submit": "Ejecutar",
+ "translate-manage-intro-other": "A continuación está la lista de modificaciones de traducción en el idioma $1.\nPor favor revíselas y elija la acción apropiada para cada una.\nSi prefiere ignorar los cambios, esta acción es sólo temporal.",
+ "translate-manage-import-ok": "Importada: $1",
+ "translate-manage-import-done": "¡Importación completa!",
+ "importtranslations": "Importar traducciones",
+ "translate-import-from-local": "Importación de archivo local:",
+ "translate-import-load": "Subir archivo",
+ "translate-import-err-dl-failed": "Imposible obtener el archivo:\n$1",
+ "translate-import-err-ul-failed": "La carga del archivo no fue exitosa.",
+ "translate-import-err-invalid-title": "El nombre del archivo <nowiki>$1</nowiki> es inválido.",
+ "translate-import-err-no-such-file": "El archivo <nowiki>$1</nowiki> no existe o no ha sido subido localmente.",
+ "translate-import-err-stale-group": "El grupo de mensajes al que pertenece este archivo no existe.",
+ "translate-import-err-no-headers": "El archivo no es un archivo Gettext bien formado en formato de extensión Translate:\nNo se puede determinar el grupo y el idioma a partir de los encabezados de archivo.",
+ "translate-import-err-warnings": "El archivo no está bien constituído.\nAsegúrese de que su editor no quita los campos msgctxt.\nDetalles: $1",
+ "translate-js-summary": "Resumen:",
+ "translate-js-save": "Guardar",
+ "translate-js-next": "Guardar y abrir el siguiente",
+ "translate-js-nonext": "Este fue el último mensaje en esta página.",
+ "translate-js-skip": "Ir al siguiente",
+ "translate-js-save-failed": "No se pudo guardar. Informa de este error.",
+ "translate-js-history": "Historial de traducción",
+ "translate-js-support": "Pregunta",
+ "translate-js-support-title": "Pide ayuda si no hay suficiente información para traducir este mensaje correctamente.",
+ "translate-js-support-unsaved-warning": "Tienes traducciones sin guardar.",
+ "translate-gs-pos": "Pos.",
+ "translate-gs-code": "Código",
+ "translate-gs-continent": "Continente",
+ "translate-gs-speakers": "Hablantes",
+ "translate-gs-score": "Puntuación",
+ "translate-gs-multiple": "Múltiple",
+ "translate-gs-count": "Cantidad",
+ "translate-gs-total": "Total",
+ "translate-gs-avgscore": "Puntuación media",
+ "translate-documentation-language": "Documentación de mensaje",
+ "translate-searchprofile": "Traducciones",
+ "translate-searchprofile-tooltip": "Buscar en todas las traducciones",
+ "translate-search-languagefilter": "Filtrar por idioma:",
+ "translate-search-nofilter": "Sin filtro",
+ "translate-messagereview-submit": "Marcar como revisado",
+ "translate-messagereview-progress": "Marcando como revisado...",
+ "translate-messagereview-failure": "Error al marcar como revisado: $1",
+ "translate-messagereview-done": "Revisado",
+ "translate-messagereview-reviews": "Revisado por {{PLURAL:$1|un usuario|$1 usuarios}}",
+ "translate-messagereview-reviewswithyou": "Revisado por {{PLURAL:$1|ti|$1 usuarios incluyéndote a ti}}",
+ "api-error-invalidrevision": "No se encontró la traducción",
+ "api-error-unknownmessage": "No se encontró el mensaje",
+ "api-error-fuzzymessage": "La traducción está marcada como desactualizada",
+ "api-error-owntranslation": "No puedes marcar tus propias traducciones como revisadas",
+ "translate-messagereview-no-fuzzy": "No se pueden marcar como revisadas las traducciones desactualizadas",
+ "translate-messagereview-no-own": "No puedes marcar tus propias traducciones como revisadas.",
+ "translate-messagereview-doit": "Marcar esta traducción como revisada.",
+ "log-name-translationreview": "Registro de revisión de las traducciones",
+ "log-description-translationreview": "Registro de todas las revisiones de las traducciones y de los grupos de mensajes.",
+ "logentry-translationreview-message": "$1 {{GENDER:$2|revisó}} la traducción $3",
+ "logentry-translationreview-group": "$1 {{GENDER:$2|cambió}} el estado de las traducciones en $4 de $3, que pasó de $6 a $7",
+ "group-translate-sandboxed": "Traductores sin aprobar",
+ "group-translate-sandboxed-member": "{{GENDER:$1|traductor|traductora}} sin aprobar",
+ "right-translate-sandboxmanage": "Gestionar usuarios de la zona de probas",
+ "action-translate-sandboxmanage": "gestionar usuarios de la zona de pruebas",
+ "right-translate-sandboxaction": "Ejecutar acciones permitidas para los usuarios de la zona de pruebas",
+ "action-translate-sandboxaction": "ejecutar acciones permitidas a los usuarios de la zona de pruebas",
+ "translate-workflow-state-": "(no definido)",
+ "translate-workflowstatus": "Estado: $1",
+ "translate-workflow-set-do": "Activar",
+ "translate-workflow-set-doing": "Activando...",
+ "translate-workflow-set-done": "¡Hecho!",
+ "translate-workflow-set-error-alreadyset": "El estado requerido es idéntico a la situación actual.",
+ "translate-workflow-autocreated-summary": "Creación automática de la página por el estado del flujo de trabajo $1",
+ "translate-stats-workflow": "Estado",
+ "translate-workflowgroup-label": "Estados del flujo de trabajo",
+ "translate-workflowgroup-desc": "Este grupo de mensajes muestra los estados del flujo de trabajo de traducción.\nLos estados están definidos en la variable de configuración $wgTranslateWorkflowStates.",
+ "translate-dynagroup-recent-label": "Traducciones recientes",
+ "translate-dynagroup-recent-desc": "Este grupo de mensajes muestra todas las traducciones recientes en este idioma.\nEs especialmente útil para tareas de revisión.",
+ "translate-dynagroup-additions-label": "Adiciones recientes",
+ "translate-dynagroup-additions-desc": "Este grupo de mensajes muestra mensajes nuevos y cambiados.",
+ "translate-dynagroup-by": "Traducción hecha por {{GENDER:$1|$1}}",
+ "translate-dynagroup-byc": "Traducción hecha por {{GENDER:$1|$1}} ($2)",
+ "translate-dynagroup-last": "Último cambio por {{GENDER:$1|$1}}",
+ "translate-dynagroup-lastc": "Último cambio por {{GENDER:$1|$1}} ($2)",
+ "translate-gethelp": "Ayuda",
+ "translate-msggroupselector-projects": "Grupo de mensajes",
+ "translate-msggroupselector-search-placeholder": "Buscar grupos",
+ "translate-msggroupselector-search-all": "Todos",
+ "translate-msggroupselector-search-recent": "Recientes",
+ "translate-msggroupselector-view-subprojects": "$1 {{PLURAL:$1|subgrupo|subgrupos}}",
+ "tux-languageselector": "Traducir al",
+ "tux-tab-all": "Todos",
+ "tux-tab-untranslated": "Sin traducir",
+ "tux-tab-outdated": "Desactualizados",
+ "tux-tab-translated": "Traducidos",
+ "tux-tab-unproofread": "Sin revisar",
+ "tux-edit": "Editar",
+ "tux-status-optional": "Opcional",
+ "tux-status-fuzzy": "Desactualizada",
+ "tux-status-proofread": "Revisada",
+ "tux-status-translated": "Traducido",
+ "tux-status-saving": "Guardando...",
+ "tux-status-unsaved": "Sin guardar",
+ "tux-editor-placeholder": "Tu traducción",
+ "tux-editor-paste-original-button-label": "Pegar texto de origen",
+ "tux-editor-discard-changes-button-label": "Descartar los cambios",
+ "tux-editor-save-button-label": "Guardar la traducción",
+ "tux-editor-skip-button-label": "Ir al siguiente",
+ "tux-editor-cancel-button-label": "Cancelar",
+ "tux-editor-confirm-button-label": "Confirmar la traducción",
+ "tux-editor-shortcut-info": "Pulsa «$1» para guardar, «$2» para ir al siguiente mensaje o «$3» para más atajos.",
+ "tux-editor-edit-desc": "Editar la documentación",
+ "tux-editor-add-desc": "Añadir documentación",
+ "tux-editor-suggestions-title": "Sugerencias",
+ "tux-editor-in-other-languages": "En otros idiomas",
+ "tux-editor-need-more-help": "¿Necesitas más ayuda?",
+ "tux-editor-ask-help": "Pide más información",
+ "tux-editor-tm-match": "$1 % de coincidencia",
+ "tux-warnings-more": "{{PLURAL:$1|$1 más}}",
+ "tux-warnings-hide": "ocultar",
+ "tux-editor-save-failed": "No se pudo guardar la traducción: $1",
+ "tux-editor-n-uses": "usado $1 {{PLURAL:$1|vez|veces}}",
+ "tux-editor-message-desc-more": "Ver más",
+ "tux-editor-message-desc-less": "Ver menos",
+ "tux-editor-clear-translated": "Ocultar traducidos",
+ "tux-editor-proofreading-mode": "Revisar",
+ "tux-editor-translate-mode": "Lista",
+ "tux-editor-proofreading-hide-own-translations": "Ocultar tus traducciones",
+ "tux-editor-proofreading-show-own-translations": "Mostrar tus traducciones",
+ "tux-proofread-action-tooltip": "Marcar como revisada",
+ "tux-proofread-edit-label": "Editar",
+ "tux-editor-page-mode": "Página",
+ "tux-editor-outdated-warning": "Puede que se necesite actualizar esta traducción.",
+ "tux-editor-outdated-warning-diff-link": "Mostrar diferencias",
+ "tux-editor-doc-editor-placeholder": "Documentación de mensaje",
+ "tux-editor-doc-editor-save": "Guardar la documentación",
+ "tux-editor-doc-editor-cancel": "Cancelar",
+ "tux-messagetable-more-messages": "$1 {{PLURAL:$1|mensaje|mensajes}} más",
+ "tux-messagetable-loading-messages": "Cargando {{PLURAL:$1|mensaje|mensajes}}...",
+ "tux-message-filter-placeholder": "Filtrar lista",
+ "tux-message-filter-result": "Se encontraron $1 {{PLURAL:$1|resultado|resultados}} para \"$2\"",
+ "tux-message-filter-advanced-button": "Búsqueda avanzada",
+ "tux-message-filter-optional-messages-label": "Mensajes opcionales",
+ "tux-proofread-translated-by-self": "Traducido por ti",
+ "tux-empty-list-all": "Este grupo de mensajes está vacío",
+ "tux-empty-list-all-guide": "Selecciona otro grupo de mensajes que traducir",
+ "tux-translate-page-no-such-group": "<strong>El grupo indicado no existe.</strong> Selecciona otro grupo de mensajes.",
+ "tux-empty-list-translated": "No hay mensajes traducidos",
+ "tux-empty-list-translated-guide": "Puedes ayudar a traducir",
+ "tux-empty-list-translated-action": "Traducir",
+ "tux-empty-no-messages-to-display": "No hay mensajes que mostrar.",
+ "tux-empty-there-are-optional": "Hay mensajes opcionales que no se muestran en la lista",
+ "tux-empty-show-optional-messages": "Mostrar mensajes opcionales",
+ "tux-empty-no-outdated-messages": "No hay mensajes desactualizados",
+ "tux-empty-nothing-to-proofread": "Nada para revisar",
+ "tux-empty-you-can-help-providing": "Puedes ayudar al proporcionar traducciones nuevas",
+ "tux-empty-nothing-new-to-proofread": "Nada nuevo para revisar",
+ "tux-empty-you-can-review-already-proofread": "Puedes revisar las traducciones ya revisadas por otros.",
+ "tux-empty-list-other": "No hay nada que traducir",
+ "tux-empty-list-other-guide": "Puedes ayudar en la revisión de las traducciones existentes",
+ "tux-empty-list-other-action": "Revisar traducciones",
+ "tux-empty-list-other-link": "Mostrar todos los mensajes",
+ "tux-editor-close-tooltip": "Cerrar",
+ "tux-editor-expand-tooltip": "Expandir",
+ "tux-editor-collapse-tooltip": "Contraer",
+ "tux-editor-message-tools-history": "Historial",
+ "tux-editor-message-tools-delete": "Eliminar",
+ "tux-editor-message-tools-translations": "Todas las traducciones",
+ "tux-editor-loading": "Cargando...",
+ "translate-search-more-languages-info": "$1 {{PLURAL:$1|idioma|idiomas}} más",
+ "translate-statsbar-tooltip": "$1 % traducido, $2 % revisado",
+ "translate-statsbar-tooltip-with-fuzzy": "$1 % traducido, $2 % revisado, $3 % desactualizado",
+ "translate-search-more-groups-info": "$1 {{PLURAL:$1|grupo|grupos}} más",
+ "translate-ulsdep-title": "Error de configuración",
+ "translate-ulsdep-body": "La extensión Translate depende de la [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:UniversalLanguageSelector extensión Universal Language Selector].",
+ "tux-session-expired": "Tu sesión se ha cerrado. Inicia sesión en una pestaña aparte. Alternativamente, haz una copia de las traducciones sin guardar, inicia sesión y regresa a esta página."
+}
diff --git a/MLEB/Translate/i18n/core/et.json b/MLEB/Translate/i18n/core/et.json
new file mode 100644
index 00000000..818ed73d
--- /dev/null
+++ b/MLEB/Translate/i18n/core/et.json
@@ -0,0 +1,361 @@
+{
+ "@metadata": {
+ "authors": [
+ "Avjoska",
+ "Hendrik",
+ "Ker",
+ "Pikne"
+ ]
+ },
+ "translate": "Tõlkimine",
+ "translate-desc": "[[Special:Translate|Vahend]] MediaWiki ja muude sõnumite tõlkimiseks",
+ "translate-taskui-view": "Näita kõiki sõnumeid",
+ "translate-taskui-untranslated": "Näita tõlkimata sõnumeid",
+ "translate-taskui-optional": "Näita valikulisi sõnumeid",
+ "translate-taskui-acceptqueue": "Ainult sõnumid, mida saan märkida ülevaadatuks",
+ "translate-taskui-reviewall": "Kõigi sõnumite ülevaatus",
+ "translate-taction-translate": "Tõlkimine",
+ "translate-taction-proofread": "Ülevaatus",
+ "translate-taction-lstats": "Keele arvandmed",
+ "translate-taction-mstats": "Sõnumirühma arvandmed",
+ "translate-taction-export": "Eksportimine",
+ "translate-taction-disabled": "See toiming on selles vikis keelatud.",
+ "translate-page-no-such-language": "Keelevalik oli kõlbmatu.",
+ "translate-page-no-such-group": "Rühm ei sobi.",
+ "translate-page-disabled": "Selle rühma sõnumite tõlkimine selles keeles on keelatud.\nPõhjus:\n\n<em>$1</em>",
+ "translate-language-disabled": "Sellesse keelde tõlkimine on keelatud.",
+ "translate-page-settings-legend": "Seadistused",
+ "translate-page-group": "Rühm",
+ "translate-page-language": "Keel",
+ "translate-page-limit": "Limiit",
+ "translate-page-limit-option": "$1 {{PLURAL:$1|sõnum|sõnumit}} lehel",
+ "translate-submit": "Päring",
+ "translate-page-navigation-legend": "Navigeerimine",
+ "translate-page-showing": "Näitan sõnumeid $1 kuni $2, sõnumite koguarv on $3.",
+ "translate-page-showing-all": "Näidatakse $1 {{PLURAL:$1|sõnumit|sõnumit}}.",
+ "translate-page-showing-none": "Ei ole ühtki sõnumit, mida näidata.",
+ "translate-next": "Järgmine lehekülg",
+ "translate-prev": "Eelmine lehekülg",
+ "translate-page-description-legend": "Selle sõnumirühma teave",
+ "translate-page-description-hasoptional": "See sõnumirühm sisaldab valikulisi sõnumeid.\nValikulisi sõnumeid tuleks tõlkida vaid juhul, kui sinu keeles on erinõudeid\nnagu tühikute mittekasutamine või pärisnimede translitereerimine. $1",
+ "translate-page-description-hasoptional-open": "Näita valikulisi sõnumeid.",
+ "translate-page-edit": "muuda",
+ "translate-ext-url": "<hr />Võrgukoht: $1",
+ "translate-optional": "(valikuline)",
+ "translate-ignored": "(eiratud)",
+ "translate-edit-title": "Redigeeri sõnumit \"$1\"",
+ "translate-edit-definition": "Sõnumi kuju",
+ "translate-edit-translation": "Tõlge",
+ "translate-edit-contribute": "täienda",
+ "translate-edit-no-information": "<em>Sellel sõnumil pole dokumentatsiooni.\nKui tead, kus seda sõnumit kasutatakse, saad dokumentatsiooni lisamisega teisi tõlkijaid aidata.</em>",
+ "translate-edit-information": "Selle sõnumi teave ($1)",
+ "translate-edit-in-other-languages": "Sõnum teistes keeltes",
+ "translate-edit-committed": "Kehtiv tõlge tarkvaras",
+ "translate-edit-warnings": "Hoiatused puuduliku tõlke kohta",
+ "translate-edit-tmsugs": "Pakkumused tõlgete andmebaasist",
+ "translate-edit-tmmatch-source": "Tõlke alliktekst: $1",
+ "translate-edit-tmmatch": "Vastavus: $1%",
+ "translate-use-suggestion": "Asenda praegune tõlge selle pakkumusega.",
+ "translate-edit-nopermission": "Sõnumite tõlkimiseks on vaja tõlkeõigust.",
+ "translate-edit-askpermission": "Hangi luba",
+ "translate-magic-pagename": "Laiendatud MediaWiki tõlkimine",
+ "translate-magic-module": "Moodul:",
+ "translate-magic-submit": "Hangi",
+ "translate-magic-cm-export": "Ekspordi",
+ "translate-magic-nothing-to-export": "Pole midagi eksportida.",
+ "translate-magic-cm-to-be": "Tulevane",
+ "translate-magic-cm-current": "Praegune",
+ "translate-magic-cm-original": "Algne",
+ "translate-magic-cm-comment": "Kommentaar:",
+ "translate-magic-cm-save": "Salvesta",
+ "translate-magic-cm-updatedusing": "Uuendatud lehekülje \"[[Special:AdvancedTranslate|{{int:Translate-magic-pagename}}]]\" kaudu",
+ "translate-magic-cm-savefailed": "Salvestamine ebaõnnestus",
+ "translate-magic-special": "Erileheküljenimed",
+ "translate-magic-words": "Võlusõnad",
+ "translate-magic-namespace": "Nimeruuminimed",
+ "translate-magic-notsaved": "Sinu muudatust ei salvestatud!",
+ "translate-magic-errors": "Palun eemalda tõlgetest {{PLURAL:$1|järgmine tõrge|järgmised tõrked}}:",
+ "translate-magic-saved": "Muudatused on edukalt salvestatud.",
+ "translate-checks-parameters": "{{PLURAL:$2|Järgmine parameeter|Järgmised parameetrid}} on kasutamata:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-parameters-unknown": "{{PLURAL:$2|Järgmine parameeter on tundmatu|Järgmised parameetrid on tundmatud}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-balance": "{{PLURAL:$2|Sulge}} on paaritu arv:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links": "{{PLURAL:$2|Järgmine link on probleemne|Järgmised $2 linki on probleemsed}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links-missing": "{{PLURAL:$2|Järgmine link puudub|Järgmised $2 linki puuduvad}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-xhtml": "Palun asenda {{PLURAL:$2|järgmine silt|järgmised sildid}} korrektsetega:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-plural": "Määratluses on <nowiki>{{PLURAL:}}</nowiki>, aga tõlkes pole.",
+ "translate-checks-pagename": "Määratluses esinev nimeruum muudetud",
+ "translate-checks-format": "Tõlge ei lähtu määratlusest või selle süntaks on vigane: $1",
+ "translate-checks-parametersnotequal": "Parameetrite arv on {{PLURAL:$1|$1}}; peaks aga olema {{PLURAL:$2|$2}}.",
+ "translate-checks-malformed": "<nowiki>$1</nowiki> on väärdunud.",
+ "translate-pref-nonewsletter": "Ära saada saada mulle sõnumilehti",
+ "translate-pref-editassistlang": "Tugikeeled:",
+ "prefs-translate": "Tõlkesätted",
+ "translate-pref-editassistlang-help": "Komaga eraldatud keelte loetelu.\nTõlkimisel kuvatakse sõnumi tõlge nendes keeltes.\nVaikeloetelu sõltub kasutaja keelest.",
+ "translate-pref-editassistlang-bad": "Vigane keelekood nimekirjas:\n<nowiki>$1</nowiki>.",
+ "right-translate": "Kasutada tõlkeliidest",
+ "right-translate-manage": "Hallata sõnumirühmi",
+ "action-translate-manage": "sõnumirühmi hallata",
+ "right-translate-import": "Importida ühenduseta tehtud tõlkeid",
+ "action-translate-import": "importida ühenduseta tehtud tõlkeid",
+ "right-translate-messagereview": "Tõlkeid üle vaadata",
+ "right-translate-groupreview": "Muuta sõnumirühmade tõlketöö seisundit",
+ "translate-rc-translation-filter": "Filtreeri tõlkeid:",
+ "translate-rc-translation-filter-no": "Ära filtri",
+ "translate-rc-translation-filter-only": "Näita ainult tõlkeid",
+ "translate-rc-translation-filter-filter": "Ära tõlkeid näita",
+ "translate-rc-translation-filter-site": "Ainult süsteemisõnumite muudatused",
+ "translationstats": "Tõlkimise statistika",
+ "translate-stats-edits": "Muudatusi",
+ "translate-stats-users": "Tõlkijad",
+ "translate-stats-registrations": "Registreerimisi",
+ "translate-stats-reviews": "Ülevaatamisi",
+ "translate-stats-reviewers": "Ülevaatajaid",
+ "translate-statsf-intro": "Selle vormiga saab koostada lihtsaid arvandmestikke.\nIgal väärtusel on ülem- ja alampiir.",
+ "translate-statsf-options": "Graafiku suvandid",
+ "translate-statsf-width": "Laius pikslites:",
+ "translate-statsf-height": "Kõrgus pikslites:",
+ "translate-statsf-days": "Ajavahemik päevades:",
+ "translate-statsf-start": "Alguskuupäev:",
+ "translate-statsf-scale": "Jaotised:",
+ "translate-statsf-scale-months": "Kuud",
+ "translate-statsf-scale-weeks": "Nädalad",
+ "translate-statsf-scale-days": "Päevad",
+ "translate-statsf-scale-hours": "Tunnid",
+ "translate-statsf-count": "Mõõdetav:",
+ "translate-statsf-count-edits": "Redaktsioonide arv",
+ "translate-statsf-count-users": "Aktiivsete tõlkijate arv",
+ "translate-statsf-count-registrations": "Uute kasutajate arv",
+ "translate-statsf-count-reviews": "Ülevaadatud tõlgete arv",
+ "translate-statsf-count-reviewers": "Ülevaatajate arv",
+ "translate-statsf-language": "Komaga eraldatud keelekoodide loend:",
+ "translate-statsf-group": "Komaga eraldatud rühmakoodide loend:",
+ "translate-statsf-submit": "Eelvaade",
+ "translate-tag-category": "Tõlgitavad leheküljed",
+ "translate-tag-page-desc": "Vikilehekülje [[$2|$1]] tõlkimine $3 keelest ($4).",
+ "translate-sidebar-alltrans": "Tõlge teistes keeltes",
+ "translations": "Kõik tõlked",
+ "translations-summary": "Sisesta allapoole sõnumi nimi, et näha kõiki olemasolevaid tõlkeid.",
+ "translate-translations-no-message": "\"$1\" ei ole tõlgitav sõnum",
+ "translate-translations-none": "Sõnumi \"$1\" tõlked puuduvad.",
+ "translate-translations-count": "Leiti {{PLURAL:$1|üks tõlge|$1 tõlget}}.",
+ "translate-translations-fieldset-title": "Sõnum",
+ "translate-translations-messagename": "Nimi:",
+ "translate-translations-project": "Projekt:",
+ "translate-translations-including-no-param": "Palun määra alamlehekülje parameetriga sobiv sõnumivõti.",
+ "translate-translations-history-short": "a",
+ "languagestats": "Keele arvandmed",
+ "languagestats-summary": "Sel lehel esitatakse tõlkimise statistika kõigi sõnumirühmade jaoks antud keeles.",
+ "languagestats-stats-for": "Tõlgete arvandmed $1 keele jaoks ($2).",
+ "languagestats-recenttranslations": "viimased tõlked",
+ "translate-langstats-incomplete": "Osa arvandmetest sellel leheküljel on ebatäielikud. Palun laadi lehekülg uuesti, et veel arvandmeid hankida.",
+ "translate-langstats-expand": "näita",
+ "translate-langstats-collapse": "peida",
+ "translate-langstats-expandall": "näita kõiki",
+ "translate-langstats-collapseall": "peida kõik",
+ "translate-language-code": "Keelekood",
+ "translate-language-code-field-name": "Keelekood:",
+ "translate-suppress-complete": "Peida täielikult tõlgitud sõnumirühmad",
+ "translate-ls-noempty": "Peida täielikult tõlkimata sõnumirühmad",
+ "translate-language": "Keel",
+ "translate-total": "Sõnumeid",
+ "translate-untranslated": "Tõlkimata",
+ "translate-percentage-complete": "Tõlgitud",
+ "translate-percentage-fuzzy": "Iganenud",
+ "translate-languagestats-overall": "Kõik sõnumirühmad kokku",
+ "translate-ls-submit": "Näita arvandmeid",
+ "translate-ls-column-group": "Sõnumirühm",
+ "translate-mgs-pagename": "Sõnumirühma arvandmed",
+ "translate-mgs-fieldset": "Kuvasätted",
+ "translate-mgs-group": "Sõnumirühm:",
+ "translate-mgs-nocomplete": "Ära näita keeli, mille tõlge on valmis",
+ "translate-mgs-noempty": "Ära näita keeli, millel pole ühtegi tõlget",
+ "translate-mgs-submit": "Näita arvandmeid",
+ "translate-mgs-column-language": "Keel",
+ "translate-mgs-totals": "Kõik keeled kokku",
+ "translate-mgs-invalid-group": "Määratud rühma $1 pole.",
+ "translate-mgs-nothing": "Soovitud näitajate kohta pole midagi näidata.",
+ "supportedlanguages": "Toetatud keeled",
+ "supportedlanguages-summary": "Siin leheküljel on toodud kõik keeled, mida {{SITENAME}} toetab\nja neis keeltes kaastööd tegevate tõlkijate nimed.\nMida suurem on tõlkija nimi, seda rohkem muudatusi on ta teinud.\nAllkriipsu värvus näitab, kui hiljuti on tõlkija siin kaastööd teinud.",
+ "supportedlanguages-colorlegend": "Värvuslegend: Viimane tõlge $1 päeva tagasi.",
+ "supportedlanguages-portallink": "[$1] $2 – $3",
+ "supportedlanguages-translators": "{{PLURAL:$2|{{GENDER:$3|Tõlkija}}|Tõlkijad}}: $1",
+ "supportedlanguages-recenttranslations": "viimased tõlked",
+ "supportedlanguages-count": "Kokku {{PLURAL:$1|üks keel|$1 keelt}}.",
+ "supportedlanguages-activity": "$1: {{PLURAL:$2|Üks muudatus|$2 muudatust}} – viimane muudatus {{PLURAL:$3|eile|$3 päeva tagasi}}",
+ "translate-save": "Salvesta ($1)",
+ "translate-jssti-add": "Lisa loetellu",
+ "managemessagegroups": "Sõnumirühmade haldamine",
+ "translate-smg-notallowed": "Sul pole lubatud seda toimingut sooritada.",
+ "translate-smg-nochanges": "Puuduvad muudatused, mida käidelda.",
+ "translate-smg-submit": "Esita muudatused käitlemiseks",
+ "translate-smg-submitted": "Sõnumimääratlused on uuendatud. Taustprotsess käitleb parasjagu muudatusi.",
+ "translate-smg-left": "Sõnumi sisu vikis",
+ "translate-manage-import-diff": "Sõnum $1 | Toimingud: $2",
+ "translate-manage-import-new": "Uus sõnum $1",
+ "translate-manage-import-deleted": "Kustutatud sõnum $1",
+ "translate-manage-action-import": "Impordi",
+ "translate-manage-action-conflict": "Impordi ja märgi ülevaatuseks",
+ "translate-manage-action-ignore": "Eira",
+ "translate-manage-action-fuzzy": "Impordi ja märgi tõlked ülevaatuseks",
+ "translate-manage-nochanges": "Selles rühmas pole ühegi tõlke määratlust muudetud.",
+ "translate-manage-nochanges-other": "Selle keelega seotud muudatused puuduvad.\nKasuta allolevat linki rühma üksikasjade vaatesse naasmiseks.",
+ "translate-manage-inconsistent": "Palves tuvastati vastuolu.\nPalun kontrolli muudatusi ja proovi uuesti.\nÜksikasjad: $1.",
+ "translate-manage-toolong": "Töötlusaja ülempiir $1 {{PLURAL:$1|sekund|sekundit}} on ületatud.\nPalun esita vorm uuesti, et töötlemist jätkata.",
+ "translate-manage-import-summary": "Uue versiooni importimine välisallikast.",
+ "translate-manage-conflict-summary": "Uue versiooni importimine välisallikast.\nPalun kontrolli.",
+ "translate-manage-fuzzy-summary": "Sõnumi määratlus on muutunud.",
+ "translate-manage-submit": "Täida",
+ "translate-manage-intro-other": "Allpool on $1 keele tõlkemuudatuste loetelu.\nPalun vaata muudatused üle ja vali iga sõnumi jaoks sobiv toiming.\nKui eirad muudatusi, on see toiming vaid ajutine.",
+ "translate-manage-import-ok": "Imporditud: $1",
+ "translate-manage-import-done": "Imporditud!",
+ "importtranslations": "Tõlgete importimine",
+ "translate-import-from-local": "Kohaliku faili üleslaadimine:",
+ "translate-import-load": "Laadi fail",
+ "translate-import-err-ul-failed": "Faili üleslaadimine ebaõnnestus",
+ "translate-import-err-invalid-title": "Toodud failinimi <nowiki>$1</nowiki> oli vigane.",
+ "translate-import-err-no-such-file": "Faili <nowiki>$1</nowiki> pole või see on üles laaditud kohalikku vikisse.",
+ "translate-import-err-stale-group": "Sõnumirühma, kuhu see fail kuulub, pole.",
+ "translate-js-summary": "Resümee:",
+ "translate-js-save": "Salvesta",
+ "translate-js-next": "Salvesta ja ava järgmine",
+ "translate-js-nonext": "See oli selle lehekülje viimane sõnum.",
+ "translate-js-skip": "Jäta vahele",
+ "translate-js-save-failed": "Salvestamine ebaõnnestus. Palun teata sellest tõrkest.",
+ "translate-js-history": "Tõlkimisajalugu",
+ "translate-js-support": "Esita küsimus",
+ "translate-js-support-title": "Esita küsimus, kui teave selle sõnumi kohta on õigesti tõlkimiseks puudulik.",
+ "translate-js-support-unsaved-warning": "Osa su tõlkeid on salvestamata.",
+ "translate-gs-pos": "Koht",
+ "translate-gs-code": "Kood",
+ "translate-gs-continent": "Ilmaosa",
+ "translate-gs-speakers": "Kõnelejaid",
+ "translate-gs-score": "Punkte",
+ "translate-gs-multiple": "Mitu",
+ "translate-gs-count": "Arv",
+ "translate-gs-total": "Kokku",
+ "translate-gs-avgscore": "Punkte keskmiselt",
+ "translate-documentation-language": "Sõnumi dokumentatsioon",
+ "translate-searchprofile": "Tõlked",
+ "translate-searchprofile-tooltip": "Otsi kõigist tõlgetest",
+ "translate-search-languagefilter": "Keelefilter:",
+ "translate-search-nofilter": "Filtrita",
+ "translate-messagereview-submit": "Märgi ülevaadatuks",
+ "translate-messagereview-progress": "Ülevaadatuks märkmine...",
+ "translate-messagereview-failure": "Ülevaadatuks märkimine ebaõnnestus: $1",
+ "translate-messagereview-done": "Ülevaadatud",
+ "translate-messagereview-reviews": "Üle vaadanud {{PLURAL:$1|üks kasutaja|$1 kasutajat}}",
+ "translate-messagereview-reviewswithyou": "{{PLURAL:$1|Sinu|$1 kasutaja ja sealhulgas sinu}} üle vaadatud",
+ "api-error-invalidrevision": "Tõlget ei leitud",
+ "api-error-unknownmessage": "Sõnumit ei leitud",
+ "api-error-fuzzymessage": "Tõlge on märgitud ülevaatuseks",
+ "api-error-owntranslation": "Enda tõlkeid ei saa ülevaadatuks märkida.",
+ "translate-messagereview-no-fuzzy": "Iganenud tõlkeid ei saa ülevaadatuks märkida.",
+ "translate-messagereview-no-own": "Enda tõlkeid ei saa märkida ülevaadatuks.",
+ "translate-messagereview-doit": "Märgi see tõlge ülevaadatuks",
+ "log-name-translationreview": "Tõlgete ülevaatuslogi",
+ "log-description-translationreview": "Kõigi tõlgete ja sõnumirühmade ülevaatuslogi.",
+ "logentry-translationreview-message": "$1 {{GENDER:$2|märkis ülevaadatuks}} tõlke $3",
+ "logentry-translationreview-group": "$1 {{GENDER:$2|muutis}} lehekülje \"$3\" $4 tõlgete oleku: $6 → $7",
+ "translate-workflow-state-": "(määramata)",
+ "translate-workflowstatus": "Olek: $1",
+ "translate-workflow-set-do": "Määra",
+ "translate-workflow-set-doing": "Määramine...",
+ "translate-workflow-set-done": "Määratud!",
+ "translate-workflow-set-error-alreadyset": "Soovitud olek kattub senise olekuga.",
+ "translate-stats-workflow": "Olek",
+ "translate-dynagroup-recent-label": "Viimased tõlked",
+ "translate-dynagroup-recent-desc": "Selles rühmas on kõik viimati sellesse keelde tõlgitud sõnumid.\nSobib ennekõike tõlgete ülevaatuseks.",
+ "translate-dynagroup-additions-label": "Viimased lisandused",
+ "translate-dynagroup-additions-desc": "Selles sõnumirühmas on uued ja muudetud sõnumid.",
+ "translate-dynagroup-by": "Kasutaja {{GENDER:$1|$1}} tõlge",
+ "translate-dynagroup-byc": "Kasutaja {{GENDER:$1|$1}} tõlge ($2)",
+ "translate-dynagroup-last": "Viimase muudatuse tegi {{GENDER:$1|$1}}",
+ "translate-dynagroup-lastc": "Viimase muudatuse tegi {{GENDER:$1|$1}} ($2)",
+ "translate-gethelp": "Abi",
+ "translate-msggroupselector-projects": "Sõnumirühm",
+ "translate-msggroupselector-search-placeholder": "Otsi rühmi",
+ "translate-msggroupselector-search-all": "Kõik",
+ "translate-msggroupselector-search-recent": "Viimased",
+ "translate-msggroupselector-view-subprojects": "$1 {{PLURAL:$1|alamrühm|alamrühma}}",
+ "tux-languageselector": "Keel",
+ "tux-tab-all": "Kõik",
+ "tux-tab-untranslated": "Tõlkimata",
+ "tux-tab-outdated": "Iganenud",
+ "tux-tab-translated": "Tõlgitud",
+ "tux-tab-unproofread": "Ülevaatamata",
+ "tux-edit": "Redigeeri",
+ "tux-status-optional": "Valikuline",
+ "tux-status-fuzzy": "Iganenud",
+ "tux-status-proofread": "Ülevaadatud",
+ "tux-status-translated": "Tõlgitud",
+ "tux-status-saving": "Salvestamine...",
+ "tux-status-unsaved": "Salvestamata",
+ "tux-editor-placeholder": "Sinu tõlge",
+ "tux-editor-paste-original-button-label": "Kleebi lähtetekst",
+ "tux-editor-discard-changes-button-label": "Hülga muudatused",
+ "tux-editor-save-button-label": "Salvesta tõlge",
+ "tux-editor-skip-button-label": "Jäta vahele ja mine järgmise juurde",
+ "tux-editor-cancel-button-label": "Loobu",
+ "tux-editor-confirm-button-label": "Kinnita tõlge",
+ "tux-editor-shortcut-info": "Vajuta \"$1\", et salvestada, või \"$2\", et see sõnum vahele jätta ja minna järgmise juurde, või \"$3\" teiste kiirklahvide jaoks.",
+ "tux-editor-edit-desc": "Redigeeri dokumentatsiooni",
+ "tux-editor-add-desc": "Lisa dokumentatsioon",
+ "tux-editor-suggestions-title": "Pakkumused",
+ "tux-editor-in-other-languages": "Teistes keeltes",
+ "tux-editor-need-more-help": "Kas vajad veel abi?",
+ "tux-editor-ask-help": "Küsi lisateavet",
+ "tux-editor-tm-match": "Vastavus $1%",
+ "tux-warnings-more": "{{PLURAL:$1|$1 veel}}",
+ "tux-warnings-hide": "peida",
+ "tux-editor-save-failed": "Tõlke salvestamine ebaõnnestus: $1",
+ "tux-editor-n-uses": "kasutatud {{PLURAL:$1|ühe korra|$1 korda}}",
+ "tux-editor-message-desc-more": "Vaata veel",
+ "tux-editor-message-desc-less": "Vaata vähem",
+ "tux-editor-clear-translated": "Peida tõlgitud",
+ "tux-editor-proofreading-mode": "Vaata üle",
+ "tux-editor-translate-mode": "Loend",
+ "tux-editor-proofreading-hide-own-translations": "Peida oma tõlked",
+ "tux-editor-proofreading-show-own-translations": "Näita oma tõlkeid",
+ "tux-proofread-action-tooltip": "Märgi ülevaadatuks",
+ "tux-proofread-edit-label": "Redigeeri",
+ "tux-editor-page-mode": "Lehekülg",
+ "tux-editor-outdated-warning": "Võimalik, et see tõlge vajab uuendamist.",
+ "tux-editor-outdated-warning-diff-link": "Näita erinevusi",
+ "tux-editor-doc-editor-placeholder": "Sõnumi dokumentatsioon",
+ "tux-editor-doc-editor-save": "Salvesta dokumentatsioon",
+ "tux-editor-doc-editor-cancel": "Loobu",
+ "tux-messagetable-more-messages": "Veel {{PLURAL:$1|üks sõnum|$1 sõnumit}}",
+ "tux-messagetable-loading-messages": "{{PLURAL:$1|Sõnumi|Sõnumite}} laadimine...",
+ "tux-message-filter-placeholder": "Filtreeri loend",
+ "tux-message-filter-result": "Päringule \"$2\" leitud {{PLURAL:$1|üks vaste|$1 vastet}}",
+ "tux-message-filter-advanced-button": "Täpsem otsing",
+ "tux-message-filter-optional-messages-label": "Valikulised sõnumid",
+ "tux-proofread-translated-by-self": "Sinu tõlgitud",
+ "tux-empty-list-all": "See sõnumirühm on tühi",
+ "tux-empty-list-all-guide": "Vali tõlkimiseks muu sõnumirühm.",
+ "tux-translate-page-no-such-group": "<strong>Sellist sõnumirühma pole.</strong> Vali erinev sõnumirühm.",
+ "tux-empty-list-translated": "Tõlgitud sõnumid puuduvad",
+ "tux-empty-list-translated-guide": "Saad tõlkimisel aidata",
+ "tux-empty-list-translated-action": "Tõlgi",
+ "tux-empty-no-messages-to-display": "Ühtegi sõnumit pole kuvada.",
+ "tux-empty-show-optional-messages": "Näita valikulisi sõnumeid",
+ "tux-empty-no-outdated-messages": "Iganenud sõnumid puuduvad",
+ "tux-empty-nothing-to-proofread": "Midagi pole üle vaadata",
+ "tux-empty-you-can-help-providing": "Saad aidata uusi tõlkeid koostada.",
+ "tux-empty-nothing-new-to-proofread": "Midagi uut pole üle vaadata",
+ "tux-empty-you-can-review-already-proofread": "Saad üle vaadata tõlkeid, mida teised on juba üle vaadanud.",
+ "tux-empty-list-other": "Midagi pole tõlkida",
+ "tux-empty-list-other-guide": "Saad aidata olemasolevaid tõlkeid üle vaadata.",
+ "tux-empty-list-other-action": "Vaata tõlked üle",
+ "tux-empty-list-other-link": "Näita kõiki sõnumeid",
+ "tux-editor-close-tooltip": "Sule",
+ "tux-editor-expand-tooltip": "Laiem vaade",
+ "tux-editor-collapse-tooltip": "Kitsam vaade",
+ "tux-editor-message-tools-history": "Ajalugu",
+ "tux-editor-message-tools-translations": "Kõik tõlked",
+ "tux-editor-loading": "Laadimine...",
+ "translate-search-more-languages-info": "Veel $1 {{PLURAL:$1|keel|keelt}}",
+ "translate-statsbar-tooltip": "$1% tõlgitud, $2% ülevaadatud",
+ "translate-statsbar-tooltip-with-fuzzy": "$1% tõlgitud, $2% ülevaadatud, $3% iganenud",
+ "translate-search-more-groups-info": "Veel $1 {{PLURAL:$1|rühm|rühma}}"
+}
diff --git a/MLEB/Translate/i18n/core/eu.json b/MLEB/Translate/i18n/core/eu.json
new file mode 100644
index 00000000..8398a3e6
--- /dev/null
+++ b/MLEB/Translate/i18n/core/eu.json
@@ -0,0 +1,183 @@
+{
+ "@metadata": {
+ "authors": [
+ "An13sa",
+ "Kobazulo",
+ "Theklan",
+ "Xabier Armendaritz"
+ ]
+ },
+ "translate": "Itzuli",
+ "translate-desc": "[[Special:Translate|Orrialde berezia]] MediaWiki eta bestelakoak itzultzeko",
+ "translate-taskui-view": "Mezu guztiak erakutsi",
+ "translate-taskui-untranslated": "Itzuli gabeko mezuak erakutsi",
+ "translate-taskui-optional": "Hautazko mezuak erakutsi",
+ "translate-taskui-acceptqueue": "Onar ditzakedan mezuak bakarrik",
+ "translate-taskui-reviewall": "Itzulpen guztiak berrikusi",
+ "translate-taction-translate": "Itzuli",
+ "translate-taction-proofread": "Zuzenketak",
+ "translate-taction-lstats": "Hizkuntza estatistikak",
+ "translate-taction-mstats": "Mezu-taldeko estatistikak",
+ "translate-taction-export": "Esportatu",
+ "translate-page-no-such-language": "Zehaztutako hizkuntza baliogabea da.",
+ "translate-page-no-such-group": "Zehaztutako taldea baligabea da.",
+ "translate-page-disabled": "Ezin da talde honetako hizkuntzako honetarako itzulpenik egin.\nArrazoia:\n\n<em>$1</em>",
+ "translate-page-settings-legend": "Hobespenak",
+ "translate-page-group": "Taldea",
+ "translate-page-language": "Hizkuntza",
+ "translate-page-limit": "Muga",
+ "translate-page-limit-option": "$1 {{PLURAL:$1|mezu|mezu}} orriko",
+ "translate-submit": "Bilatu",
+ "translate-page-navigation-legend": "Nabigazioa",
+ "translate-page-showing": "$1-tik $2-rako mezuak ikusgai $3-tik.",
+ "translate-page-showing-all": "{{PLURAL:$1|Mezu $1|$1 mezu}} erakusten.",
+ "translate-page-showing-none": "Ez dago mezurik erakusteko.",
+ "translate-next": "Hurrengo orria",
+ "translate-prev": "Aurreko orria",
+ "translate-page-description-legend": "Taldeari buruzko informazioa",
+ "translate-page-description-hasoptional": "Mezu-talde honek hautazko mezuak ditu.\nHautazko mezuak zure hizkuntzaren berezitasunak direla-eta, espazioak ez daudenean edo izen berezien itzulpenerako bakarrik itzuli. $1",
+ "translate-page-description-hasoptional-open": "Erakutsi hautazko mezuak.",
+ "translate-page-edit": "aldatu",
+ "translate-ext-url": "<hr />Webgunea: $1",
+ "translate-optional": "(hautazkoa)",
+ "translate-ignored": "(ignoratua)",
+ "translate-edit-title": "\"$1\" aldatu",
+ "translate-edit-definition": "Mezuaren definizioa",
+ "translate-edit-translation": "Itzulpena",
+ "translate-edit-contribute": "lagundu",
+ "translate-edit-no-information": "''Mezu honek ez du dokumentaziorik.''\n''Mezu hau non erabiltzen den badakizu, beste itzultzaileei lagundu dezakezu mezu honen dokumentazioa gehituz.''",
+ "translate-edit-information": "Mezuari buruzko informazioa ($1)",
+ "translate-edit-in-other-languages": "Mezua beste hizkuntzetan",
+ "translate-edit-warnings": "Bukatu gabeko itzulpenei buruzko oharrak",
+ "translate-edit-tmmatch": "$1% bilaketa",
+ "translate-edit-askpermission": "Baimena eskatu",
+ "translate-magic-pagename": "MediaWiki itzulpen zabaldua",
+ "translate-magic-module": "Modulu:",
+ "translate-magic-submit": "Bilatu",
+ "translate-magic-cm-export": "Espotatu",
+ "translate-magic-nothing-to-export": "Ez dago esportatzeko ezer.",
+ "translate-magic-cm-to-be": "Izateko",
+ "translate-magic-cm-current": "Oraingoa",
+ "translate-magic-cm-original": "Jatorrizkoa",
+ "translate-magic-cm-comment": "Iruzkina:",
+ "translate-magic-cm-save": "Gorde",
+ "translate-magic-cm-updatedusing": "Eguneratu [[Special:AdvancedTranslate|{{int:Translate-magic-pagename}}]] erabiliz.",
+ "translate-magic-cm-savefailed": "Gordetzeak huts egin du",
+ "translate-magic-words": "Hitz magikoak",
+ "translate-magic-namespace": "Izen-tarteen izenak",
+ "translate-magic-notsaved": "Zure edizioa ez da gorde!",
+ "translate-magic-errors": "Mesedez zuzendu ondorengo {{PLURAL:$1|akatsa|akatsak}} itzulpenetan:",
+ "translate-magic-saved": "Zure aldaketak ongi gorde dira.",
+ "translate-checks-fudforum-syntax": "Proiektu honetan erabili <nowiki>$1</nowiki>, <nowiki>$2</nowiki>-ren ordez.",
+ "translate-pref-nonewsletter": "Ez iezadazu posta elektronikoaren bidezko berripaperik bidal",
+ "translate-pref-editassistlang": "Hizkuntza laguntzaileak:",
+ "prefs-translate": "Itzulpen aukerak",
+ "right-translate": "Aldatu itzulpen interfazea erabiliz",
+ "right-translate-import": "Inportatu sarez kanpoko itzulpenak",
+ "right-translate-messagereview": "Itzulpenak berrikusi",
+ "translate-rc-translation-filter": "Itzulpenak iragazi:",
+ "translate-rc-translation-filter-no": "Ezer ez egin",
+ "translate-rc-translation-filter-only": "Itzulpenak bakarrik erakutsi",
+ "translate-rc-translation-filter-filter": "Itzulpenak iragazi",
+ "translationstats": "Itzulpenaren estatistikak",
+ "translate-stats-edits": "Aldaketak",
+ "translate-stats-users": "Itzultzaileak",
+ "translate-stats-registrations": "Izena-emateak",
+ "translate-stats-reviews": "Berrikuspenak",
+ "translate-stats-reviewers": "Berrikusleak",
+ "translate-statsf-options": "Aukera grafikoak",
+ "translate-statsf-width": "Zabalera pixeletan:",
+ "translate-statsf-height": "Altuera pixeletan:",
+ "translate-statsf-days": "Denbora-tartea egunetan:",
+ "translate-statsf-start": "Hasiera data:",
+ "translate-statsf-scale": "Pikortasuna:",
+ "translate-statsf-scale-months": "Hilabete",
+ "translate-statsf-scale-weeks": "Asteak",
+ "translate-statsf-scale-days": "Egunak",
+ "translate-statsf-scale-hours": "Orduak",
+ "translate-statsf-count": "Neurria:",
+ "translate-statsf-count-edits": "Aldaketa kopurua",
+ "translate-statsf-count-users": "Lanean ari diren itzultzaileak",
+ "translate-statsf-count-registrations": "Lankide berriak",
+ "translate-statsf-count-reviewers": "Berrikusleak",
+ "translate-statsf-submit": "Aurreikuspena",
+ "translate-tag-category": "Orri itzulgarriak",
+ "translate-sidebar-alltrans": "Erdaretan",
+ "translations": "Itzulpen guztiak",
+ "translate-translations-no-message": "\"$1\" itzulezina den mezua da. (ezin da euskaratu)",
+ "translate-translations-none": "\"$1\"-ek ez du itzulpenik",
+ "translate-translations-fieldset-title": "Mezua",
+ "translate-translations-messagename": "Izena:",
+ "translate-translations-project": "Proiektua:",
+ "translate-translations-history-short": "h",
+ "languagestats": "Hizkuntza estatistikak",
+ "languagestats-summary": "Orri honetan hizkuntza bateko mezu-talde guztien itzulpen estatistikak ageri dira.",
+ "languagestats-stats-for": "$1-entzako itzulpen estatistikak($2).",
+ "languagestats-recenttranslations": "azken itzulpenak",
+ "translate-langstats-expand": "zabaldu",
+ "translate-langstats-collapse": "itxi",
+ "translate-langstats-expandall": "denak zabaldu",
+ "translate-langstats-collapseall": "denak itxi",
+ "translate-language-code": "Hizkuntza kodea",
+ "translate-language-code-field-name": "Hizkuntza kodea:",
+ "translate-suppress-complete": "Guztiz itzulitako mezu-taldeak bistatik kendu",
+ "translate-language": "Hizkuntza",
+ "translate-total": "Mezuak",
+ "translate-untranslated": "Itzuli gabe",
+ "translate-percentage-complete": "Bukatuak",
+ "translate-percentage-fuzzy": "Zaharkituak",
+ "translate-ls-submit": "Estatistikak erakutsi",
+ "translate-ls-column-group": "Mezu-taldea",
+ "translate-mgs-pagename": "Mezu-taldeko estatistikak",
+ "translate-mgs-fieldset": "Hobespenak erakutsi",
+ "translate-mgs-group": "Mezu-taldea:",
+ "translate-mgs-submit": "Estatistikak erakutsi",
+ "translate-mgs-column-language": "Hizkuntza",
+ "translate-mgs-totals": "Hizkuntza guztiak batera",
+ "supportedlanguages": "Laguntza duten hizkuntzak",
+ "supportedlanguages-translators": "{{PLURAL:$2|Itzultzailea|Itzultzaileak}}: $1",
+ "supportedlanguages-recenttranslations": "azken itzulpenak",
+ "translate-save": "Gorde ($1)",
+ "translate-jssti-add": "Zerrendara gehitu",
+ "translate-manage-import-diff": "Mezua $1 | Ekintzak: $2",
+ "translate-manage-import-new": "Mezu berria $1",
+ "translate-manage-import-deleted": "Mezu ezabatua $1",
+ "translate-manage-action-import": "Inportatu",
+ "translate-manage-action-conflict": "Inportatu eta fuzzy",
+ "translate-manage-action-ignore": "Ezikusi",
+ "translate-manage-action-fuzzy": "Inportatu eta fuzzy itzulpenak",
+ "translate-manage-submit": "Exekutatu",
+ "translate-manage-import-done": "Dena eginda!",
+ "importtranslations": "Itzulpenak inportatu",
+ "translate-import-load": "Fitxategia kargatu",
+ "translate-js-summary": "Laburpena:",
+ "translate-js-save": "Gorde",
+ "translate-js-next": "Gorde eta hurrengoa ireki",
+ "translate-js-nonext": "Mezu hau orrialde honetako azkena da.",
+ "translate-js-skip": "Hurrengora salto egin",
+ "translate-js-save-failed": "Gordetzeak huts egin du. Mesedez errorea jakinarazi.",
+ "translate-js-history": "Itzulpenen historia",
+ "translate-js-support": "Galdera egin",
+ "translate-gs-pos": "Pos.",
+ "translate-gs-code": "Kodea",
+ "translate-gs-continent": "Kontinentea",
+ "translate-gs-speakers": "Hiztunak",
+ "translate-gs-score": "Puntuaketa",
+ "translate-gs-multiple": "Anitza",
+ "translate-gs-count": "Zenbaketa",
+ "translate-gs-total": "Guztira",
+ "translate-gs-avgscore": "Batazbesteko puntuazioa",
+ "translate-documentation-language": "Mezuaren dokumentazioa",
+ "translate-searchprofile": "Itzulpenak",
+ "translate-searchprofile-tooltip": "Itzulpen guztietan bilatu",
+ "translate-search-languagefilter": "Iragazi hizkuntzaren arabera:",
+ "translate-messagereview-submit": "Onartu",
+ "translate-messagereview-progress": "Onartzen...",
+ "translate-messagereview-done": "Onartu",
+ "translate-workflowstatus": "Egoera: $1",
+ "translate-workflow-set-done": "Gorde botoia sakatu behin itzulpen egin eta gero",
+ "translate-stats-workflow": "Egoera",
+ "translate-dynagroup-recent-label": "Azken itzulpenak",
+ "translate-gethelp": "Laguntza",
+ "tux-editor-doc-editor-cancel": "Utzi"
+}
diff --git a/MLEB/Translate/i18n/core/ext.json b/MLEB/Translate/i18n/core/ext.json
new file mode 100644
index 00000000..ab0e07b1
--- /dev/null
+++ b/MLEB/Translate/i18n/core/ext.json
@@ -0,0 +1,15 @@
+{
+ "@metadata": {
+ "authors": [
+ "Better"
+ ]
+ },
+ "translate": "Traucil",
+ "translate-next": "Siguienti páhina",
+ "translate-prev": "Páhina anteriol",
+ "translate-optional": "(ocional)",
+ "translate-ignored": "(inorau)",
+ "translate-magic-cm-export": "Esporteal",
+ "translate-magic-cm-save": "Emburacal",
+ "translate-magic-words": "Parabras máhicas"
+}
diff --git a/MLEB/Translate/i18n/core/fa.json b/MLEB/Translate/i18n/core/fa.json
new file mode 100644
index 00000000..612bdbce
--- /dev/null
+++ b/MLEB/Translate/i18n/core/fa.json
@@ -0,0 +1,397 @@
+{
+ "@metadata": {
+ "authors": [
+ "Dalba",
+ "E THP",
+ "Ebraminio",
+ "Huji",
+ "Mjbmr",
+ "Omidh",
+ "Reza1615",
+ "Rtemis",
+ "Tofighi",
+ "Wayiran",
+ "ZxxZxxZ",
+ "جواد",
+ "درفش کاویانی",
+ "Armin1392",
+ "Alirezaaa"
+ ]
+ },
+ "translate": "ترجمه",
+ "translate-desc": "[[Special:Translate|صفحهٔ ویژه‌ای]] برای ترجمهٔ مدیاویکی و فراتر از آن",
+ "translate-taskui-view": "نمایش تمام پیغام‌ها",
+ "translate-taskui-untranslated": "نمایش پیغام‌های ترجمه‌نشده",
+ "translate-taskui-optional": "نمایش پیغام‌های اختیاری",
+ "translate-taskui-acceptqueue": "تنها پیغام‌هایی که می‌توانم به عنوان بازبینی‌شده نشانه‌گذاری کنم",
+ "translate-taskui-reviewall": "بررسی تمام ترجمه‌ها",
+ "translate-taskui-export-to-file": "برون‌بری در قالب بومی",
+ "translate-taskui-export-as-po": "برون‌بری برای ترجمهٔ برون‌خط",
+ "translate-taction-translate": "ترجمه",
+ "translate-taction-proofread": "بازبینی ترجمه‌ها",
+ "translate-taction-lstats": "آمار زبان",
+ "translate-taction-mstats": "آمار گروه‌های پیغام",
+ "translate-taction-export": "برون‌بری",
+ "translate-taction-disabled": "این عمل در این ویکی غیرفعال شده‌است.",
+ "translate-page-no-such-language": "زبان مورد نظر نامجاز است.",
+ "translate-page-no-such-group": "گروه مورد نظر نامجاز است.",
+ "translate-page-disabled": "ترجمه این زبان در این گروه غیر فعال است.\nدلیل:\n\n<em>$1</em>",
+ "translate-language-disabled": "ترجمه به این زبان غیرفعال شده‌است.",
+ "translate-page-settings-legend": "تنظیمات",
+ "translate-page-group": "گروه",
+ "translate-page-language": "زبان",
+ "translate-page-limit": "تعداد",
+ "translate-page-limit-option": "$1 {{PLURAL:$1|پیغام|پیغام}} در هر صفحه",
+ "translate-submit": "بیاور",
+ "translate-page-navigation-legend": "گشتن",
+ "translate-page-showing": "نمایش پیغام‌های $1 تا $2 از $3.",
+ "translate-page-showing-all": "نمایش $1 {{PLURAL:$1|پیغام|پیغام}}.",
+ "translate-page-showing-none": "پیغامی برای نمایش وجود ندارد.",
+ "translate-next": "صفحهٔ بعدی",
+ "translate-prev": "صفحهٔ قبلی",
+ "translate-page-description-legend": "اطلاعات در مورد گروه",
+ "translate-page-description-hasoptional": "این گروه پیغام‌ها شامل پیغام‌های اختیاری است.\nپیغام‌های اختیاری باید تنها زمانی ترجمه شوند که زبان شما شرایط ویژه‌ای نظیر استفاده نکردن از فاصله یا نویسه‌گردانی اسامی خاص داشته باشد. $1",
+ "translate-page-description-hasoptional-open": "نمایش پیغام‌های اختیاری.",
+ "translate-page-edit": "ویرایش",
+ "translate-ext-url": "<hr />وبگاه: $1",
+ "translate-optional": "(اختیاری)",
+ "translate-ignored": "(نادیده گرفته شده)",
+ "translate-edit-title": "ویرایش «$1»",
+ "translate-edit-definition": "تعریف پیغام",
+ "translate-edit-translation": "ترجمه",
+ "translate-edit-contribute": "مشارکت",
+ "translate-edit-no-information": "<em>این پیغام دارای توضیحات نیست.\n''اگر می‌دانید که این پیغام چگونه یا در کجا استفاده می‌شود، می‌توانید با اضافه کردن توضیحات به دیگر ترجمه‌کنندگان کمک کنید.</em>",
+ "translate-edit-information": "اطلاعات در مورد این پیغام ($1)",
+ "translate-edit-in-other-languages": "همین پیغام در دیگر زبان‌ها",
+ "translate-edit-committed": "ترجمهٔ فعلی در نرم‌افزار",
+ "translate-edit-warnings": "هشدار در مورد ترجمه‌های ناکامل",
+ "translate-edit-tmsugs": "پیشنهادها از حافظهٔ ترجمه و ترجمهٔ ماشینی",
+ "translate-edit-tmmatch-source": "متن منبع ترجمه: $1",
+ "translate-edit-tmmatch": "$1٪ مطابقت",
+ "translate-use-suggestion": "ترجمه فعلی را با این پیشنهاد جایگزین کن.",
+ "translate-edit-nopermission": "برای ترجمه پیغام‌ها نیازمند اجازهٔ ترجمه هستید.",
+ "translate-edit-askpermission": "گرفتن دسترسی",
+ "translate-magic-pagename": "ترجمهٔ گسترش‌یافتهٔ مدیاویکی",
+ "translate-magic-help": "شما می‌توانید نام مستعار صفحه‌های ویژه، واژه‌های جادویی، و نام فضاهای نام را ترجمه کنید.\n\nنام مستعار صفحه‌های ویژه می‌تواند بیش از یک ترجمه داشته باشد.\nترجمه‌ها را با استفاده از کامای انگلیسی (,) از هم جدا کنید.\nفضاهای نام تنها می‌توانند یک ترجمه داشته باشند.\n\nترجمهٔ نام فضاهای نام <code>$1 talk</code> می‌تواند پیچیده باشد. <code>$1</code> با نام وبگاه جایگزین می‌شود (مانند <code>{{ns:project_talk}}</code>). اگر در زبان شما امکان ایجاد چنین عبارتی بدون تغییر دادن نام وبگاه وجود ندارد، لطفاً از طریق [[Support]] به ما اطلاع دهید.\n\nبرای ذخیره کردن تغییرها باید عضو گروه ترجمه‌کنندگان باشید.\nتغییرات زمانی ذخیره می‌شوند که دکمهٔ ذخیره را در پایین صفحه فشار دهید.",
+ "translate-magic-module": "پودمان:",
+ "translate-magic-submit": "بیاور",
+ "translate-magic-cm-export": "برون‌بری",
+ "translate-magic-nothing-to-export": "چیزی برای برون‌بری وجود ندارد.",
+ "translate-magic-cm-to-be": "آینده",
+ "translate-magic-cm-current": "کنونی",
+ "translate-magic-cm-original": "اصلی",
+ "translate-magic-cm-comment": "توضیح:",
+ "translate-magic-cm-save": "ذخیره",
+ "translate-magic-cm-updatedusing": "به روز شده توسط [[Special:AdvancedTranslate|{{int:Translate-magic-pagename}}]]",
+ "translate-magic-cm-savefailed": "شکست در ذخیره کردن اطلاعات",
+ "translate-magic-special": "نام مستعار صفحه‌های ویژه",
+ "translate-magic-words": "واژه‌های جادویی",
+ "translate-magic-namespace": "اسم فضاهای نام",
+ "translate-magic-notsaved": "ویرایش‌تان ذخیره نشد!",
+ "translate-magic-errors": "لطفاً {{PLURAL:$1|خطای|خطاهای}} زیر را در ترجمهٔ خود اصلاح کنید:",
+ "translate-magic-saved": "تغییرات شما با موفقیت ذخیره شد.",
+ "translate-checks-parameters": "این {{PLURAL:$2|پارامتر استفاده نشده‌است|پارامترها استفاده نشده‌اند}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-parameters-unknown": "{{PLURAL:$2|پارامتر|پارامترهای}} زیر {{PLURAL:$2|ناشناخته است|ناشناخته‌اند}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-balance": "تعداد {{PLURAL:$2|پرانتزها|پرانتزها}} زوج نیست:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links": "{{PLURAL:$2|پیوندهایی که در ادامه می‌آیند مشکل‌ساز هستند|پیوندی که در ادامه می‌آید مشکل ساز است}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links-missing": "{{PLURAL:$2|پیوند|پیوندهای}} زیر پیدا {{PLURAL:$2|نشد|نشدند}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-xhtml": "لطفاً این {{PLURAL:$2|برچسب|برچسب‌ها}} را با موارد درست جایگزین کنید:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-plural": "تعریف از <nowiki>{{PLURAL:}}</nowiki> استفاده می‌کند اما ترجمه از آن استفاده نمی‌کند.",
+ "translate-checks-plural-forms": "{{PLURAL:$1|یک فرم|$1 فرم}} به <nowiki>{{PLURAL:}}</nowiki> داده شده اما {{PLURAL:$2|تنها یک فرم|$2 forms are}} پشتیبانی می‌شود (به جز فرم‌های 0= و 1=).",
+ "translate-checks-plural-dupe": "<nowiki>{{PLURAL:}}</nowiki> دارای فرم‌های تکراری در انتهایش است. <nowiki>{{PLURAL:$1|گوسفند|گوسفند}}</nowiki> باید به صورت <nowiki>{{PLURAL:$1|گوسفند}}</nowiki> نوشته شود.",
+ "translate-checks-pagename": "فضای نام با آن چه در تعریف پیغام آمده تفاوت دارد",
+ "translate-checks-format": "این ترجمه از تعریف پیغام تبعیت نمی‌کند یا دارای ساختار نامعتبر است: $1",
+ "translate-checks-escape": "گریزهای زیر ممکن است اتفاقی باشند:<strong>$1</strong>",
+ "translate-checks-parametersnotequal": "شمار پارامترها {{PLURAL:$1|$1}} تاست؛ بایست {{PLURAL:$2|$2}} تا باشد.",
+ "translate-checks-malformed": "<nowiki>$1</nowiki> بدشکل است.",
+ "translate-checks-fudforum-syntax": "در این پروژه از <nowiki>$1</nowiki> به جای <nowiki>$2</nowiki> استفاده کنید.",
+ "translate-pref-nonewsletter": "برای من خبرنامهٔ الکترونیکی ارسال نشود",
+ "translate-pref-editassistlang": "زبان‌های دستیار:",
+ "prefs-translate": "گزینه‌های ترجمه",
+ "translate-pref-editassistlang-help": "فهرست کدهای زبان جدا شده با کاما.\nترجمه‌های پیغام‌های این زبان‌ها در زمانی که شما ترجمه می‌کنید نمایش داده می‌شوند.\nفهرست پیش‌فرض زبان‌ها بستگی به این دارد که زبان شما چیست.",
+ "translate-pref-editassistlang-bad": "کد زبان نامعتبر در فهرست:\n<nowiki>$1</nowiki>.",
+ "right-translate": "ویرایش با استفاده از رابط ترجمه",
+ "right-translate-manage": "مدیریت گروه‌های پیغام",
+ "action-translate-manage": "مدیریت گروه‌های پیغام",
+ "right-translate-import": "درون‌ریزی ترجمه‌های برون‌خط",
+ "action-translate-import": "درون‌ریزی ترجمه‌های برون‌خط",
+ "right-translate-messagereview": "بازبینی ترجمه‌ها",
+ "right-translate-groupreview": "بازبینی ترجمه‌ها",
+ "translate-rc-translation-filter": "پالایش ترجمه‌ها:",
+ "translate-rc-translation-filter-no": "کاری نکن",
+ "translate-rc-translation-filter-only": "تنها ترجمه‌ها را نمایش بده",
+ "translate-rc-translation-filter-filter": "ترجمه‌ها را نمایش نده",
+ "translate-rc-translation-filter-site": "تنها تغییرات پیغام‌های وبگاه",
+ "translationstats": "آمار ترجمه",
+ "translate-stats-edits": "ویرایش‌ها",
+ "translate-stats-users": "مترجمان",
+ "translate-stats-registrations": "ثبت نام",
+ "translate-stats-reviews": "بازبینی‌ها",
+ "translate-stats-reviewers": "بازبینی‌کنندگان",
+ "translate-statsf-intro": "شما می‌توانید توسط این فرم آمارهای ساده ایجاد کنید.\nتمام مقادیر دارای حد بالا و پایین هستند.",
+ "translate-statsf-options": "گزینه های نمودار",
+ "translate-statsf-width": "پهنا به پیکسل:",
+ "translate-statsf-height": "بلندی به پیکسل:",
+ "translate-statsf-days": "مدت زمان به روز:",
+ "translate-statsf-start": "تاریخ شروع:",
+ "translate-statsf-scale": "ظرافت:",
+ "translate-statsf-scale-months": "ماه",
+ "translate-statsf-scale-weeks": "هفته",
+ "translate-statsf-scale-days": "روز",
+ "translate-statsf-scale-hours": "ساعت",
+ "translate-statsf-count": "معیار:",
+ "translate-statsf-count-edits": "شمار ویرایش‌ها",
+ "translate-statsf-count-users": "مترجمان فعال",
+ "translate-statsf-count-registrations": "کاربران تازه",
+ "translate-statsf-count-reviews": "بازبینی‌های ترجمه",
+ "translate-statsf-count-reviewers": "بازبینی‌کنندگان",
+ "translate-statsf-language": "فهرست کدهای زبان جدا شده با کاما:",
+ "translate-statsf-group": "فهرست کدهای گروه جدا شده با کاما:",
+ "translate-statsf-submit": "پیش‌نمایش",
+ "translate-tag-category": "صفحه‌های قابل ترجمه",
+ "translate-tag-page-desc": "ترجمهٔ صفحهٔ [[$2|$1]] ویکی.",
+ "translate-sidebar-alltrans": "در زبان‌های دیگر",
+ "translations": "همهٔ ترجمه‌ها",
+ "translations-summary": "نام یک پیغام را در زیر وارد کنید تا تمام ترجمه‌های موجود را ببینید.",
+ "translate-translations-no-message": "«$1» یک پیغام قابل ترجمه نیست",
+ "translate-translations-none": "ترجمه‌ای برای «$1» موجود نیست",
+ "translate-translations-count": " {{PLURAL:$1|یک ترجمه|$1 ترجمه}} پیدا شد.",
+ "translate-translations-fieldset-title": "پیام",
+ "translate-translations-messagename": "نام:",
+ "translate-translations-project": "پروژه:",
+ "translate-translations-including-no-param": "لطفاً یک کلید پیغام معتبر را برای پارامتر زیرصفحه وارد کنید",
+ "translate-translations-history-short": "ت",
+ "languagestats": "آمار زبان",
+ "languagestats-summary": "این صفحه آمار ترجمه برای همهٔ گروه‌های پیغام را برای یک زبان نمایش می‌دهد.",
+ "languagestats-stats-for": "آمار ترجمه برای $1 ($2).",
+ "languagestats-recenttranslations": "ترجمه‌های اخیر",
+ "translate-langstats-incomplete": "قسمتی از آمار این صفحه ناکامل است. لطفاً صفحه را از نو بارگذاری کنید تا آماری بیشتری دریافت کنید.",
+ "translate-langstats-expand": "گسترش",
+ "translate-langstats-collapse": "نهفتن",
+ "translate-langstats-expandall": "گسترش همه",
+ "translate-langstats-collapseall": "نهفتن همه",
+ "translate-language-code": "کد زبان",
+ "translate-language-code-field-name": "کد زبان:",
+ "translate-suppress-complete": "فرونشانی گروه‌های پیغامی که تماماً ترجمه شده‌اند",
+ "translate-ls-noempty": "فرونشانی گروه‌های پیغامی که هیچ ترجمه نشده‌اند",
+ "translate-language": "زبان",
+ "translate-total": "پیغام‌ها",
+ "translate-untranslated": "ترجمه‌نشده",
+ "translate-percentage-complete": "پیشرفت",
+ "translate-percentage-fuzzy": "تاریخ‌گذشته",
+ "translate-languagestats-overall": "همه گروه‌های پیغام با هم",
+ "translate-ls-submit": "نمایش آمار",
+ "translate-ls-column-group": "گروه پیغام‌ها",
+ "translate-mgs-pagename": "آمار گروه‌های پیغام",
+ "translate-mgs-fieldset": "تنظیمات نمایش",
+ "translate-mgs-group": "گروه پیغام‌ها:",
+ "translate-mgs-nocomplete": "زبان‌هایی که ترجمه را به پایان رسانده‌اند نمایش نده",
+ "translate-mgs-noempty": "زبان‌هایی که هیچ ترجمه‌ای ندارند نمایش نده",
+ "translate-mgs-submit": "نمایش آمار",
+ "translate-mgs-column-language": "زبان",
+ "translate-mgs-totals": "همهٔ زبان‌ها با هم",
+ "translate-mgs-invalid-group": "گروه مشخص‌شدهٔ $1 وجود ندارد.",
+ "translate-mgs-nothing": "دربارهٔ آمار درخواست‌شده چیزی برای نمایش وجود ندارد.",
+ "supportedlanguages": "زبان‌های پشتیبانی‌شده",
+ "supportedlanguages-summary": "این صفحه فهرستی از تمام زبان‌های پشتیبانی‌شده توسط {{SITENAME}} را به همراه نام مترجمان در حال کار در آن زبان نمایش میدهد.\nهرچه یک مترجم با ویرایش‌های بیشتری مشارکت کرده باشد، نامش بزرگتر دیده می‌شود.\nرنگ زیرخط نشان‌دهندهٔ تازگی فعالیت مترجم در اینجا است.",
+ "supportedlanguages-colorlegend": "توضیح برای رنگ: آخرین ترجمه در $1 روز پیش.",
+ "supportedlanguages-translators": "{{PLURAL:$2|مترجم|مترجمان}}: $1",
+ "supportedlanguages-recenttranslations": "ترجمه‌های اخیر",
+ "supportedlanguages-count": "در مجموع $1 {{PLURAL:$1|زبان|زبان}}.",
+ "supportedlanguages-activity": "$1: $2 {{PLURAL:$2|ویرایش|ویرایش}} - آخرین ویرایش $3 {{PLURAL:$3|روز|روز}} قبل",
+ "translate-save": "ذخیره ($1)",
+ "translate-jssti-add": "افزودن به فهرست",
+ "managemessagegroups": "مدیریت گروه‌های پیغام",
+ "translate-smg-notallowed": "شما مجاز به انجام این عمل نیستید.",
+ "translate-smg-nochanges": "هیچ تغییری برای پردازش وجود ندارد.",
+ "translate-smg-submit": "ارسال تغییرات برای پردازش",
+ "translate-smg-submitted": "تعریف پیغام به روز شده است. تغییرات در پشت صحنه در حال پردازش هستند.",
+ "translate-smg-more": "تغییراتی یبشتر در فرآیند پس از ارسال این تغییرات خواهد بود.",
+ "translate-smg-left": "محتوای پیغام در ویکی",
+ "translate-smg-right": "تغییرات ورودی",
+ "translate-manage-import-diff": "پیغام $1 | اقدام: $2",
+ "translate-manage-import-new": "پیام تازه $1",
+ "translate-manage-import-deleted": "پیغام حذف‌شده $1",
+ "translate-manage-action-import": "درون‌ریزی",
+ "translate-manage-action-conflict": "درون‌ریزی با برچسب ابهام",
+ "translate-manage-action-ignore": "نادیده گرفتن",
+ "translate-manage-action-fuzzy": "درون‌ریزی ترجمه‌ها با برچسب ابهام",
+ "translate-manage-nochanges": "هیچ تغییری در تعریف پیغام‌های این گروه وجود ندارد.",
+ "translate-manage-nochanges-other": "هیچ تغییراتی برای این زبان وجود نداشت.\nاز پیوند زیر برای بازگشت به نمایش جزئیات گروه‌ها استفاده کنید.",
+ "translate-manage-inconsistent": "در درخواست شما تناقضی شناسایی شد.\nلطفاً آن را از جهت تغییرات بررسی کنید و دوباره تلاش کنید.\nجزئیات: $1.",
+ "translate-manage-toolong": "بیشینهٔ زمان پردازش که $1 {{PLURAL:$1|ثانیه}} است سپری شد.\nلطفاً فرم را دوباره ارسال کنید تا پردازش ادامه پیدا کند.",
+ "translate-manage-import-summary": "درون‌ریزی یک نسخهٔ جدید از منبع خارجی",
+ "translate-manage-conflict-summary": "درون‌ریزی یک نسخهٔ جدید از منبع خارجی.\nلطفاً بررسی کنید.",
+ "translate-manage-fuzzy-summary": "تعریف پیغام تغییر کرده‌است",
+ "translate-manage-submit": "اجرا",
+ "translate-manage-intro-other": "پایین فهرستی تغییرات ترجمه در زبان $1 است.\nلطفاً این تغییرات را بازبینی کرده و عملی که می‌خواهد برای هر به‌روزرسانی انجام دهید را انتخاب کنید.\nاگر شما می‌خواهید تغییرات را نادیده بگیرید، این عمل موقت خواهد بود.",
+ "translate-manage-import-ok": "واردشده: $1",
+ "translate-manage-import-done": "وارد کردن تکمیل شد!",
+ "importtranslations": "درون‌ریزی ترجمه‌ها",
+ "translate-import-from-local": "بارگذاری پرونده محلی:",
+ "translate-import-load": "دریافت پرونده",
+ "translate-import-err-dl-failed": "ناتوان از دریافت پرونده:\n$1",
+ "translate-import-err-ul-failed": "بارگذاری پرونده موفق نبود.",
+ "translate-import-err-invalid-title": "نام پروندهٔ داده شده <nowiki>$1</nowiki> نامعتبر است.",
+ "translate-import-err-no-such-file": "پرونده <nowiki>$1</nowiki> وجود ندارد یا به طور محلی بارگذاری نشده است.",
+ "translate-import-err-stale-group": "گروه پیغامی که این پرونده به آن تعلق دارد وجود ندارد.",
+ "translate-import-err-no-headers": "پرونده دارای قالب مناسب Gettext برای افزونهٔ ترجمه نیست:\nشناسایی گروه پیغام و زبان از سرایندهای پرونده ممکن نبود.",
+ "translate-import-err-warnings": "پرونده دارای قالب مناسب نیست.\nاطمینان حاصل کنید که ویرایشگر شما بخش‌های msgctxt را پاک نکرده‌است.\nجزئیات: $1",
+ "translate-js-summary": "خلاصه:",
+ "translate-js-save": "ذخیره",
+ "translate-js-next": "ذخیره و بازکردن بعدی",
+ "translate-js-nonext": "این آخرین پیغام این صفحه بود.",
+ "translate-js-skip": "پرش به بعدی",
+ "translate-js-save-failed": "ذخیره نشد. لطفاً این خطا گزارش کنید.",
+ "translate-js-history": "تاریخچهٔ ترجمه",
+ "translate-js-support": "پرسش سؤال",
+ "translate-js-support-title": "اگر اطلاعات کافی برای ترجمهٔ درست این پیغام موجود نیست، سوال بپرسید.",
+ "translate-js-support-unsaved-warning": "شما ترجمه‌های ذخیره‌نشده دارید.",
+ "translate-gs-pos": "موقعیت",
+ "translate-gs-code": "کد",
+ "translate-gs-continent": "قاره",
+ "translate-gs-speakers": "سخنرانان",
+ "translate-gs-score": "امتیاز",
+ "translate-gs-multiple": "چندگانه",
+ "translate-gs-count": "شمارش",
+ "translate-gs-total": "مجموع",
+ "translate-gs-avgscore": "میانگین نمره",
+ "translate-documentation-language": "مستندات پیام",
+ "translate-searchprofile": "ترجمه‌ها",
+ "translate-searchprofile-tooltip": "جستجو از تمامی ترجمه‌ها",
+ "translate-search-languagefilter": "پالایش بر اساس زبان:",
+ "translate-search-nofilter": "بدون پالایش",
+ "translate-messagereview-submit": "نشانه‌گذاری به‌عنوان بازبینی‌شده",
+ "translate-messagereview-progress": "در حال نشانه‌گذاری به‌عنوان بازبینی‌شده...",
+ "translate-messagereview-failure": "نشانه‌گذاری به‌عنوان بازبینی‌شده نافرجام ماند: $1",
+ "translate-messagereview-done": "بازبینی‌شده",
+ "translate-messagereview-reviews": "بازبینی‌شده بدست {{PLURAL:$1|یک کاربر|$1 کاربر}}",
+ "translate-messagereview-reviewswithyou": "بازبینی به دست {{PLURAL:$1|یک کاربر|$1 کاربر از جمله شما}}",
+ "api-error-invalidrevision": "ترجمه یافت نشد",
+ "api-error-unknownmessage": "پیغام یافت نشد",
+ "api-error-fuzzymessage": "ترجمه برچسب ابهام دارد",
+ "api-error-owntranslation": "شما نمی‌توانید ترجمه‌های خودتان را به عنوان بازبینی‌شده نشانه‌گذاری کنید",
+ "translate-messagereview-no-fuzzy": "ترجمه‌های فازی را نمی‌توان به عنوان بازبینی‌شده نشانه‌گذاری کرد.",
+ "translate-messagereview-no-own": "شما نمی‌توانید ترجمه‌های خودتان را به عنوان بازبینی‌شده نشانه‌گذاری کنید.",
+ "translate-messagereview-doit": "این ترجمه را به عنوان بازبینی‌شده نشانه‌گذاری کنید.",
+ "log-name-translationreview": "سیاهه بازبینی ترجمه",
+ "log-description-translationreview": "سیاههٔ تمام بازبینی‌های ترجمه و گروه‌های پیغام",
+ "logentry-translationreview-message": "$1 ترجمهٔ $3 را {{GENDER:$2|بازبینی کرد}}",
+ "logentry-translationreview-group": "$1 وضعیت $4 ترجمه در $3 را از $6 به $7 {{GENDER:$2|تغییر داد}}",
+ "group-translate-sandboxed": "مترجمان تأییدنشده",
+ "group-translate-sandboxed-member": "{{GENDER:$1|مترجم تأییدنشده}}",
+ "right-translate-sandboxmanage": "مدیریت صفحهٔ تمرین کاربران",
+ "action-translate-sandboxmanage": "مدیریت صفحهٔ تمرین کاربران",
+ "right-translate-sandboxaction": "اجرای اعمال فهرست سفید شده برای کاربران آزمایشی",
+ "action-translate-sandboxaction": "اجرای اعمال فهرست سفید شده برای کاربران آزمایشی",
+ "translate-workflow-state-": "(تنظیم‌نشده)",
+ "translate-workflowstatus": "وضعیت: $1",
+ "translate-workflow-set-do": "تنظیم کن",
+ "translate-workflow-set-doing": "در حال تنظیم کردن ...",
+ "translate-workflow-set-done": "تنظیم شد!",
+ "translate-workflow-set-error-alreadyset": "وضعیت درخواست شده با وضعیت فعلی یکسان است.",
+ "translate-workflow-autocreated-summary": "ایجاد خودکار صفحه برای وضعیت گردش کار $1",
+ "translate-stats-workflow": "وضعیت",
+ "translate-workflowgroup-label": "وضعیت گردش کار",
+ "translate-workflowgroup-desc": "این گروه پیغام‌ها وضعیت گردش کار ترجمه را نشان می‌دهد.\nوضعیت‌ها در متغیر پیکربندی ‎$wgTranslateWorkflowStates تعریف شده‌اند.",
+ "translate-dynagroup-recent-label": "ترجمه‌های اخیر",
+ "translate-dynagroup-recent-desc": "این گروه از پیام‌ها تمام ترجمه‌های اخیر در این زبان را نمایش می‌دهد.\nاین فهرست به‌ویژه برای کارهای بازبینی کاربرد دارد.",
+ "translate-dynagroup-additions-label": "اخیراً اضافه‌شده",
+ "translate-dynagroup-additions-desc": "این گروه پیامی، پیام‌های تازه و تغییریافته را نمایش می‌دهد.",
+ "translate-dynagroup-by": "ترجمه‌شده توسط {{GENDER:$1|$1}}",
+ "translate-dynagroup-byc": "ترجمه‌شده توسط {{GENDER:$1|$1}} ($2)",
+ "translate-dynagroup-last": "آخرین تغییر توسط {{GENDER:$1|$1}}",
+ "translate-dynagroup-lastc": "آخرین تغییر توسط {{GENDER:$1|$1}} ($2)",
+ "translate-gethelp": "راهنما",
+ "translate-msggroupselector-projects": "گروه پیام",
+ "translate-msggroupselector-search-placeholder": "گروه‌های جستجو",
+ "translate-msggroupselector-search-all": "همه",
+ "translate-msggroupselector-search-recent": "اخیر",
+ "translate-msggroupselector-view-subprojects": "$1 {{PLURAL:$1|زیرگروه|زیرگروه}}",
+ "tux-languageselector": "ترجمه به",
+ "tux-tab-all": "همه",
+ "tux-tab-untranslated": "ترجمه‌نشده",
+ "tux-tab-outdated": "تاریخ‌گذشته",
+ "tux-tab-translated": "ترجمه‌شده",
+ "tux-tab-unproofread": "بازبینی‌نشده",
+ "tux-edit": "ویرایش",
+ "tux-status-optional": "اختیاری",
+ "tux-status-fuzzy": "تاریخ‌گذشته",
+ "tux-status-proofread": "بازبینی‌شده",
+ "tux-status-translated": "ترجمه‌شده",
+ "tux-status-saving": "در حال ذخیره‌سازی...",
+ "tux-status-unsaved": "ذخیره‌نشده",
+ "tux-editor-placeholder": "ترجمهٔ شما",
+ "tux-editor-paste-original-button-label": "چسباندن متن مبدأ",
+ "tux-editor-discard-changes-button-label": "دور ریختن تغییرات",
+ "tux-editor-save-button-label": "ذخیره‌سازی ترجمه",
+ "tux-editor-skip-button-label": "پرش به بعدی",
+ "tux-editor-cancel-button-label": "لغو",
+ "tux-editor-confirm-button-label": "تأیید ترجمه",
+ "tux-editor-shortcut-info": "برای ذخیره‌ «$1» یا برای پرش به پیام بعدی «$2» یا برای دیگر میانبرها $3 را فشار دهید.",
+ "tux-editor-edit-desc": "ذخیره مستندات",
+ "tux-editor-add-desc": "افزودن مستندات",
+ "tux-editor-suggestions-title": "پیشنهادها",
+ "tux-editor-in-other-languages": "به زبان‌های دیگر",
+ "tux-editor-need-more-help": "راهنمایی بیشتر نیاز دارید؟",
+ "tux-editor-ask-help": "درخواست برای اطلاعات بیشتر",
+ "tux-editor-tm-match": "$1% مطابقت",
+ "tux-warnings-more": "{{PLURAL:$1|$1 مورد دیگر}}",
+ "tux-warnings-hide": "نهفتن",
+ "tux-editor-save-failed": "ذخیره‌سازی ترجمه نافرجام ماند:$1",
+ "tux-editor-n-uses": "$1 بار استفاده شده",
+ "tux-editor-message-desc-more": "مشاهدهٔ بیشتر",
+ "tux-editor-message-desc-less": "مشاهدهٔ کمتر",
+ "tux-editor-clear-translated": "نهفتن ترجمه‌شده‌ها",
+ "tux-editor-proofreading-mode": "بازبینی",
+ "tux-editor-translate-mode": "فهرست",
+ "tux-editor-proofreading-hide-own-translations": "عدم نمایش ترجمه شما",
+ "tux-editor-proofreading-show-own-translations": "نمایش ترجمه شما",
+ "tux-proofread-action-tooltip": "نشانه‌گذاری به‌عنوان ترجمه‌شده",
+ "tux-proofread-edit-label": "ویرایش",
+ "tux-editor-page-mode": "صفحه",
+ "tux-editor-outdated-warning": "این ترجمه ممکن است نیازمند به‌روزرسانی باشد.",
+ "tux-editor-outdated-warning-diff-link": "نمایش تفاوت‌ها",
+ "tux-editor-doc-editor-placeholder": "مستندات پیام",
+ "tux-editor-doc-editor-save": "ذخیره مستندات",
+ "tux-editor-doc-editor-cancel": "انصراف",
+ "tux-messagetable-more-messages": "$1 {{PLURAL:$1|پیام}} بیشتر",
+ "tux-messagetable-loading-messages": "نمایش $1 {{PLURAL:$1|پیام|پیام}}.",
+ "tux-message-filter-placeholder": "پالایش فهرست",
+ "tux-message-filter-result": "$1 {{PLURAL:$1|نتیجه|نتیجه}} برای «$2» یافته شد.",
+ "tux-message-filter-advanced-button": "جستجوی پیشرفته",
+ "tux-message-filter-optional-messages-label": "پیام‌های اختیاری",
+ "tux-proofread-translated-by-self": "ترجمه‌شده توسط شما",
+ "tux-empty-list-all": "این گروه پیام خالی است",
+ "tux-empty-list-all-guide": "یک گروه پیام متفاوت برای ترجمه انتخاب کنید",
+ "tux-translate-page-no-such-group": "<strong>گروه نشان داده‌شده وجود ندارد.</strong> گروه پیامی دیگری را انتخاب کنید.",
+ "tux-empty-list-translated": "بدون پیام ترجمه‌شده",
+ "tux-empty-list-translated-guide": "شما می‌توانید در ترجمه کمک کنید",
+ "tux-empty-list-translated-action": "ترجمه",
+ "tux-empty-no-messages-to-display": "پیامی برای نمایش نیست",
+ "tux-empty-there-are-optional": "پیام‌های اختیاری‌ای هسند که در فهرست نمایش داده نشده‌اند",
+ "tux-empty-show-optional-messages": "نمایش پیام‌های اختیاری",
+ "tux-empty-no-outdated-messages": "پیام تاریخ‌گذشته‌ای نیست",
+ "tux-empty-nothing-to-proofread": "چیزی برای بازبینی وجود ندارد",
+ "tux-empty-you-can-help-providing": "شما می‌توانید با ارائهٔ ترجمه‌های تازه کمک کنید",
+ "tux-empty-nothing-new-to-proofread": "چیز تازه‌ای برای بازبینی وجود ندارد",
+ "tux-empty-you-can-review-already-proofread": "می‌توانید ترجمه‌های از پیش بازبینی‌شده توسط دیگران را بازبینی کنید",
+ "tux-empty-list-other": "چیزی برای ترجمه وجود ندارد",
+ "tux-empty-list-other-guide": "می‎توانید در بازبینی ترجمه‎های موجود کمک کنید",
+ "tux-empty-list-other-action": "بازبینی ترجمه‌ها",
+ "tux-empty-list-other-link": "نمایش تمام پیغام‌ها",
+ "tux-editor-close-tooltip": "بستن",
+ "tux-editor-expand-tooltip": "گسترش",
+ "tux-editor-collapse-tooltip": "نهفتن",
+ "tux-editor-message-tools-history": "تاریخچه",
+ "tux-editor-message-tools-delete": "حذف",
+ "tux-editor-message-tools-translations": "همهٔ ترجمه‌ها",
+ "tux-editor-loading": "در حال بارگیری...",
+ "translate-search-more-languages-info": "$1 {{PLURAL:$1|زبان}} بیشتر",
+ "translate-statsbar-tooltip": "$1% ترجمه‌شده، $2% بازبینی‌شده",
+ "translate-statsbar-tooltip-with-fuzzy": "$1% ترجمه‌شده، $2% بازبینی‌شده، $3% تاریخ‌گذشته",
+ "translate-search-more-groups-info": "$1 {{PLURAL:$1|گروه|گروه}} دیگر",
+ "translate-ulsdep-title": "تنظیم خطا",
+ "translate-ulsdep-body": "ترجمهٔ افزونه به [https://www.mediawiki.org/wiki/Extension:UniversalLanguageSelector افزونهٔ انتخاب زبان جهانی] بستگی دارد.",
+ "tux-session-expired": "شما دیگر داخل نیستید. خواهشمند است در یک سربرگ جدا وارد شوید. راه دیگر، یک نسخه از ترجمه‌های ذخیره‌نشده تهیه کنید، وارد شوید و به این صفحه بازگردید."
+}
diff --git a/MLEB/Translate/i18n/core/fi.json b/MLEB/Translate/i18n/core/fi.json
new file mode 100644
index 00000000..86d7eea5
--- /dev/null
+++ b/MLEB/Translate/i18n/core/fi.json
@@ -0,0 +1,399 @@
+{
+ "@metadata": {
+ "authors": [
+ "Beluga",
+ "Centerlink",
+ "Cimon Avaro",
+ "Crt",
+ "Mobe",
+ "Nedergard",
+ "Nike",
+ "Olli",
+ "Silvonen",
+ "Str4nd",
+ "Stryn",
+ "Usp",
+ "VezonThunder",
+ "Vililikku",
+ "ZeiP",
+ "Pxos"
+ ]
+ },
+ "translate": "Käännä",
+ "translate-desc": "[[Special:Translate|Toimintosivu]], jolla voi kääntää MediaWikiä ja muutakin.",
+ "translate-taskui-view": "Näytä kaikki viestit",
+ "translate-taskui-untranslated": "Näytä kääntämättömät viestit",
+ "translate-taskui-optional": "Näytä valinnaiset viestit",
+ "translate-taskui-acceptqueue": "Vain viestit, jotka voin merkitä tarkastetuksi",
+ "translate-taskui-reviewall": "Kaikkien käännösten tarkistus",
+ "translate-taskui-export-to-file": "Vie perusmuodossa",
+ "translate-taskui-export-as-po": "Vie off-line kääntämiseen soveltuvassa muodossa",
+ "translate-taction-translate": "Käännä",
+ "translate-taction-proofread": "Oikolue",
+ "translate-taction-lstats": "Kielitilastot",
+ "translate-taction-mstats": "Viestiryhmätilastot",
+ "translate-taction-export": "Vie",
+ "translate-taction-disabled": "Tämä toiminto ei ole käytössä tässä wikissä.",
+ "translate-page-no-such-language": "Tuntematon kieli.",
+ "translate-page-no-such-group": "Tuntematon ryhmä.",
+ "translate-page-disabled": "Käännökset tälle kielelle tässä ryhmässä on estetty.\nSyy:\n\n<em>$1</em>",
+ "translate-language-disabled": "Kääntäminen tälle kielelle ei ole mahdollista.",
+ "translate-page-settings-legend": "Asetukset",
+ "translate-page-group": "Ryhmä",
+ "translate-page-language": "Kieli",
+ "translate-page-limit": "Rajoitus",
+ "translate-page-limit-option": "$1 {{PLURAL:$1|viesti|viestiä}} sivulla",
+ "translate-submit": "Hae",
+ "translate-page-navigation-legend": "Selaus",
+ "translate-page-showing": "Viestit $1–$2; yhteensä $3.",
+ "translate-page-showing-all": "Näytetään $1 {{PLURAL:$1|viesti|viestiä}}.",
+ "translate-page-showing-none": "Ei näytettäviä viestejä.",
+ "translate-next": "Seuraava sivu",
+ "translate-prev": "Edellinen sivu",
+ "translate-page-description-legend": "Tietoja ryhmästä",
+ "translate-page-description-hasoptional": "Tässä viestiryhmässä on valinnaisia viestejä.\nValinnaiset viestit on käännettävä vain kielille, joilla on erikoisvaatimuksia kuten välilyöntien puuttuminen tai erisnimien translitterointi. $1",
+ "translate-page-description-hasoptional-open": "Näytä valinnaiset viestit.",
+ "translate-page-edit": "muokkaa",
+ "translate-ext-url": "<hr />Verkkosivu: $1",
+ "translate-optional": "(valinnainen)",
+ "translate-ignored": "(ei-käännettävä)",
+ "translate-edit-title": "Muokkaa sivua $1",
+ "translate-edit-definition": "Viestin määritelmä",
+ "translate-edit-translation": "Käännös",
+ "translate-edit-contribute": "auta dokumentoinnissa",
+ "translate-edit-no-information": "<em>Tätä viestiä ei ole dokumentoitu.\nJos tiedät missä tai miten tätä viestiä käytetään, voit auttaa muita kääntäjiä lisäämällä kommentteja tähän viestiin.</em>",
+ "translate-edit-information": "Tietoja viestistä ($1)",
+ "translate-edit-in-other-languages": "Viesti muilla kielillä",
+ "translate-edit-committed": "Nykyinen ohjelmiston käyttämä käännös",
+ "translate-edit-warnings": "Varoitukset virheellisestä käännöksestä",
+ "translate-edit-tmsugs": "Ehdotukset käännösmuistista",
+ "translate-edit-tmmatch-source": "Käännöksen lähdeteksti: $1",
+ "translate-edit-tmmatch": "Vastaavuus $1%",
+ "translate-use-suggestion": "Korvaa nykyinen käännös tällä ehdotuksella.",
+ "translate-edit-nopermission": "Viestien kääntämiseen tarvitaan käännösoikeudet.",
+ "translate-edit-askpermission": "Hanki lupa",
+ "translate-magic-pagename": "Laajennettu MediaWikin kääntäminen",
+ "translate-magic-help": "Voit kääntää toimintosivujen vaihtoehtoisia nimiä, taikasanoja ja nimiavaruuksien nimiä.\n\nToimintosivujen vaihtoehtoisilla nimillä ja taikasanoilla voi olla useita käännöksiä.\nKäännökset erotetaan pilkulla (,).\nNimiavaruuksilla voi olla vain yksi käännös.\n\nNimiavaruuksien käännöksissä <code>$1 talk</code> on erikoistapaus. <code>$1</code> korvataan sivuston nimellä (esimerkiksi <code>{{ns:project_talk}}</code>).\nJos kielessäsi on mahdotonta muotoilla oikeaa käännöstä ilman sivuston nimen taivuttamista, kerro siitä sivulla [[Support]].\n\nSinun tulee olla kääntäjä, jotta voit tallentaa muutokset.\nMuutoksia ei tallenneta, ennen kuin painat Tallenna-painiketta.",
+ "translate-magic-module": "Moduuli:",
+ "translate-magic-submit": "Hae",
+ "translate-magic-cm-export": "Vie",
+ "translate-magic-nothing-to-export": "Ei mitään vietävää.",
+ "translate-magic-cm-to-be": "Tuleva",
+ "translate-magic-cm-current": "Nykyinen",
+ "translate-magic-cm-original": "Alkuperäinen",
+ "translate-magic-cm-comment": "Yhteenveto",
+ "translate-magic-cm-save": "Tallenna",
+ "translate-magic-cm-updatedusing": "Päivitetty [[Special:AdvancedTranslate|{{int:Translate-magic-pagename}}]] -sivun kautta",
+ "translate-magic-cm-savefailed": "Tallennus epäonnistui",
+ "translate-magic-special": "Toimintosivujen nimet",
+ "translate-magic-words": "Taikasanat",
+ "translate-magic-namespace": "Nimiavaruuksien nimet",
+ "translate-magic-notsaved": "Muokkaustasi ei tallennettu.",
+ "translate-magic-errors": "Korjaa {{PLURAL:$1|seuraava virhe|seuraavat virheet}} käännöksissä:",
+ "translate-magic-saved": "Muutoksesi tallennettiin onnistuneesti.",
+ "translate-checks-parameters": "{{PLURAL:$2|Seuraavaa parametria|Seuraavia parametreja}} ei käytetä:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-parameters-unknown": "{{PLURAL:$2|Seuraava parametri on tuntematon|Seuraavat parametrit ovat tuntemattomia}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-balance": "Pariton määrä {{PLURAL:$2|sulkeita}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links": "{{PLURAL:$2|Seuraava linkki on ongelmallinen|Seuraavat linkit ovat ongelmallisia}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links-missing": "{{PLURAL:$2|Tätä linkkiä|$2 Näitä linkkejä}} ei ole käytetty käännöksessä:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-xhtml": "Korvaa {{PLURAL:$2|seuraava tägti oikealla|seuraavat tägi oikeilla}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-plural": "Määritelmä käyttää <nowiki>{{PLURAL:}}</nowiki>-koodia, mutta käännös ei.",
+ "translate-checks-plural-forms": "<nowiki>{{PLURAL:}}</nowiki>-komennolle annettiin {{PLURAL:$1|yksi muoto|$1 muotoa}}, mutta {{PLURAL:$2|vain yhtä muotoa|$2 muotoa}} tuetaan (ei sisällä muotoja 0= ja 1=).",
+ "translate-checks-plural-dupe": "<nowiki>{{PLURAL:}}</nowiki>-komennon lopussa on samoja muotoja. <nowiki>{{PLURAL:$1|lampaani|lampaani}}</nowiki> tulisi kirjoittaa <nowiki>{{PLURAL:$1|lampaani}}</nowiki>.",
+ "translate-checks-pagename": "Nimiavaruus ei ole sama kuin viestin määritelmässä",
+ "translate-checks-format": "Tämä käännös ei noudata alkuperäistä tekstiä tai sillä on virheellinen syntaksi: $1",
+ "translate-checks-escape": "Seuraavat escape-merkkijonot saattavat olla tahattomia: <strong>$1</strong>",
+ "translate-checks-parametersnotequal": "Käännöksessä pitäisi olla {{PLURAL:$2|yksi muuttuja|$2 muuttujaa}}, mutta vain {{PLURAL:$1|yksi muuttuja|$1 muuttujaa}} löydettiin.",
+ "translate-checks-malformed": "<nowiki>$1</nowiki> ei ole hyvinmuotoiltu.",
+ "translate-checks-fudforum-syntax": "Käytä merkinnän <nowiki>$1</nowiki> sijasta merkintää <nowiki>$2</nowiki> tässä hankkeessa.",
+ "translate-pref-nonewsletter": "Älä lähetä uutiskirjeitä",
+ "translate-pref-editassistlang": "Apukielet",
+ "prefs-translate": "Käännösasetukset",
+ "translate-pref-editassistlang-help": "Pilkuin eroteltu lista kielikoodeista.\nViestin käännökset näillä kielillä näkyvät kääntäessäsi.\nAsetuksen oletusarvoiset kielet riippuvat kielestä, jolle olet kääntämässä.",
+ "translate-pref-editassistlang-bad": "Listassa on kelpaamaton kielikoodi:\n<nowiki>$1</nowiki>.",
+ "right-translate": "Kääntää käännöstyökalulla",
+ "right-translate-manage": "Hallinnoida viestiryhmiä",
+ "action-translate-manage": "hallita viestiryhmiä",
+ "right-translate-import": "Tuoda muilla työkaluilla tehtyjä käännöksiä",
+ "action-translate-import": "tuoda offline-käännöksiä",
+ "right-translate-messagereview": "Hyväksyä käännöksiä",
+ "right-translate-groupreview": "Muuttaa viestiryhmien tilaa",
+ "translate-rc-translation-filter": "Käännösten suodatus",
+ "translate-rc-translation-filter-no": "älä suodata",
+ "translate-rc-translation-filter-only": "näytä vain käännökset",
+ "translate-rc-translation-filter-filter": "piilota käännökset",
+ "translate-rc-translation-filter-site": "vain muutokset sivuston viesteihin",
+ "translationstats": "Käännöstilastot",
+ "translate-stats-edits": "Muokkauksia",
+ "translate-stats-users": "Kääntäjiä",
+ "translate-stats-registrations": "Rekisteröintejä",
+ "translate-stats-reviews": "Oikolukuja",
+ "translate-stats-reviewers": "Oikolukijoita",
+ "translate-statsf-intro": "Voit luoda yksinkertaisia tilastoja tällä lomakkeella. Kaikilla arvoilla on ylä- ja alarajat.",
+ "translate-statsf-options": "Kuvaajan asetukset",
+ "translate-statsf-width": "Leveys pikseleinä",
+ "translate-statsf-height": "Korkeus pikseleinä",
+ "translate-statsf-days": "Aikaväli päivissä",
+ "translate-statsf-start": "Aloituspäivämäärä",
+ "translate-statsf-scale": "Mittaustarkkuus",
+ "translate-statsf-scale-months": "kuukausia",
+ "translate-statsf-scale-weeks": "viikkoja",
+ "translate-statsf-scale-days": "päiviä",
+ "translate-statsf-scale-hours": "tunteja",
+ "translate-statsf-count": "Mittaussuure",
+ "translate-statsf-count-edits": "muokkaukset",
+ "translate-statsf-count-users": "aktiiviset kääntäjät",
+ "translate-statsf-count-registrations": "uudet käyttäjät",
+ "translate-statsf-count-reviews": "käännösten hyväksymisiä",
+ "translate-statsf-count-reviewers": "oikolukijoita",
+ "translate-statsf-language": "Pilkuin erotettu lista kielikoodeista",
+ "translate-statsf-group": "Pilkuin erotettu lista ryhmäkoodeista",
+ "translate-statsf-submit": "Esikatselu",
+ "translate-tag-category": "Käännettävät sivut",
+ "translate-tag-page-desc": "Wikisivun [[$2|$1]] käännös kielestä $3 ($4).",
+ "translate-sidebar-alltrans": "Muilla kielillä",
+ "translations": "Kaikki käännökset",
+ "translations-summary": "Kirjoita alle sen viestin nimi, jonka kaikki käännökset haluat nähdä.",
+ "translate-translations-no-message": "”$1” ei ole käännettävä viesti",
+ "translate-translations-none": "Viestillä ”$1” ei ole käännöksiä",
+ "translate-translations-count": "Yhteensä {{PLURAL:$1|yksi käännös|$1 käännöstä}}.",
+ "translate-translations-fieldset-title": "Viesti",
+ "translate-translations-messagename": "Nimi",
+ "translate-translations-project": "Hanke",
+ "translate-translations-including-no-param": "Lisää viesti alasivuparametriksi.",
+ "translate-translations-history-short": "h",
+ "languagestats": "Kielitilastot",
+ "languagestats-summary": "Tämä sivu näyttää valitun kielen käännöstilastot kaikille viestiryhmille.",
+ "messagegroupstats-summary": "Tällä sivulla on tilastoja viestiryhmistä.",
+ "languagestats-stats-for": "Käännöstilastot kielelle $1 ($2).",
+ "languagestats-recenttranslations": "tuoreet käännökset",
+ "translate-langstats-incomplete": "Jotkut tämän sivun tilastot ovat vaillinaisia. Saat lisää tilastoja lataamalla sivun uudelleen.",
+ "translate-langstats-expand": "laajenna",
+ "translate-langstats-collapse": "tiivistä",
+ "translate-langstats-expandall": "laajenna kaikki",
+ "translate-langstats-collapseall": "tiivistä kaikki",
+ "translate-language-code": "Kielikoodi",
+ "translate-language-code-field-name": "Kielikoodi",
+ "translate-suppress-complete": "Piilota kokonaan käännetyt viestiryhmät",
+ "translate-ls-noempty": "Piilota kokonaan kääntämättömät viestiryhmät",
+ "translate-language": "Kieli",
+ "translate-total": "Viestejä",
+ "translate-untranslated": "Kääntämättömiä",
+ "translate-percentage-complete": "Käännösten kattavuus",
+ "translate-percentage-fuzzy": "Vanhentuneita",
+ "translate-languagestats-overall": "Kaikki viestiryhmät yhdessä",
+ "translate-ls-submit": "Näytä tilastot",
+ "translate-ls-column-group": "Viestiryhmä",
+ "translate-mgs-pagename": "Viestiryhmätilastot",
+ "translate-mgs-fieldset": "Näyttöasetukset",
+ "translate-mgs-group": "Viestiryhmä",
+ "translate-mgs-nocomplete": "Älä näytä kieliä, joiden käännös on valmis",
+ "translate-mgs-noempty": "Älä näytä kieliä, joiden käännöstä ei ole aloitettu",
+ "translate-mgs-submit": "Näytä tilastot",
+ "translate-mgs-column-language": "Kieli",
+ "translate-mgs-totals": "Kaikki kielet yhdessä",
+ "translate-mgs-invalid-group": "Määritettyä ryhmää $1 ei ole.",
+ "translate-mgs-nothing": "Pyydetyille tilastoille ei löydy tuloksia.",
+ "supportedlanguages": "Tuetut kielet",
+ "supportedlanguages-summary": "Tällä sivulla luetellaan kaikki kielet, joita {{SITENAME}} tukee, sekä kaikki näillä kielillä työskentelevät kääntäjät.\nKääntäjän nimi on sitä suurempi, mitä enemmän hän on tehnyt käännöksiä.\nAlleviivauksen väri kertoo, milloin kääntäjä on viimeksi kääntänyt täällä.",
+ "supportedlanguages-colorlegend": "Värin selitys: Viimeinen käännös $1 päivää sitten.",
+ "supportedlanguages-translators": "{{PLURAL:$2|{{GENDER:$3|Kääntäjä}}|Kääntäjät}}: $1",
+ "supportedlanguages-recenttranslations": "tuoreet käännökset",
+ "supportedlanguages-count": "$1 {{PLURAL:$1|kieli|kieltä}} yhteensä.",
+ "supportedlanguages-activity": "$1: $2 {{PLURAL:$2|muokkaus|muokkausta}} - viimeinen muokkaus $3 {{PLURAL:$3|päivä|päivää}} sitten",
+ "translate-save": "Tallenna ($1)",
+ "translate-jssti-add": "Lisää listaan",
+ "managemessagegroups": "Viestiryhmien hallinta",
+ "translate-smg-notallowed": "Sinulla ei ole oikeuksia suorittaa tätä toimintoa.",
+ "translate-smg-nochanges": "Ei muutoksia käsiteltäväksi.",
+ "translate-smg-submit": "Lähetä muutokset käsiteltäviksi",
+ "translate-smg-submitted": "Viestien määritelmät on päivitetty. Muutoksia käsitellään taustalla.",
+ "translate-smg-more": "Näiden muutosten tallentamisen jälkeen on myös muita käsiteltäviä muutoksia.",
+ "translate-smg-left": "Viestin nykyinen sisältö",
+ "translate-smg-right": "Tulevat muutokset",
+ "translate-manage-import-diff": "Viesti $1 | Toiminnot: $2",
+ "translate-manage-import-new": "Uusi viesti $1",
+ "translate-manage-import-deleted": "Poistettu viesti $1",
+ "translate-manage-action-import": "Tuo",
+ "translate-manage-action-conflict": "Tuo ja merkitse käännökset tarkistettavaksi",
+ "translate-manage-action-ignore": "Ohita",
+ "translate-manage-action-fuzzy": "Tuo ja merkitse käännökset tarkistettavaksi",
+ "translate-manage-nochanges": "Tämän ryhmän viestien määritelmiin ei ole mitään muutoksia.",
+ "translate-manage-nochanges-other": "Tähän kieleen ei ollut muutoksia.\nPalaa ryhmän yksityiskohtanäkymään alla olevalla linkillä.",
+ "translate-manage-inconsistent": "Pyynnön tiedot ovat epäjohdonmukaisia.\nTarkista muutokset ja yritä uudelleen.\nYksityiskohdat: $1.",
+ "translate-manage-toolong": "$1 {{PLURAL:$1|sekunnin}} enimmäiskäsittelyaika ylittyi.\nJatka käsittelyä lähettämällä lomake uudelleen.",
+ "translate-manage-import-summary": "Tuodaan uusi versio ulkoisesta lähteestä",
+ "translate-manage-conflict-summary": "Tuodaan uusi versio ulkoisesta lähteestä.\nTarkistathan.",
+ "translate-manage-fuzzy-summary": "Viestin määritelmä on muuttunut",
+ "translate-manage-submit": "Suorita",
+ "translate-manage-intro-other": "Alla on luettelo kielen $1 käännösmuutoksista.\nTarkista muutokset ja valitse toiminto, jonka haluat tehdä jokaiselle käännökselle.\nJos valitset muutosten ohittamisen, toimintoa ei tallenneta.",
+ "translate-manage-import-ok": "Tuotu: $1",
+ "translate-manage-import-done": "Tuonti valmis.",
+ "importtranslations": "Käännösten tuonti",
+ "translate-import-from-local": "Paikallinen tiedosto",
+ "translate-import-load": "Tallenna tiedosto",
+ "translate-import-err-dl-failed": "Tiedoston noutaminen epäonnistui:\n$1",
+ "translate-import-err-ul-failed": "Tiedoston lähettäminen epäonnistui",
+ "translate-import-err-invalid-title": "Annettu tiedostonnimi <nowiki>$1</nowiki> on virheellinen.",
+ "translate-import-err-no-such-file": "Tiedostoa <nowiki>$1</nowiki> ei ole tai sitä ei ole tallennettu paikallisesti.",
+ "translate-import-err-stale-group": "Tämä tiedosto kuuluu viestiryhmään, jota ei ole olemassa.",
+ "translate-import-err-no-headers": "Tiedosto ei ole kelvollisesti muotoiltu Gettext-tiedosto Translate-laajennoksen käyttämässä muodossa:\nViestiryhmä- ja kielitietoja ei löytynyt tiedoston otsakkeesta.",
+ "translate-import-err-warnings": "Tiedostossa on ongelmia.\nVarmista, ettei käyttämäsi muokkausohjelma poista msgctxt-kenttiä.\nTiedot: $1",
+ "translate-js-summary": "Yhteenveto",
+ "translate-js-save": "Tallenna",
+ "translate-js-next": "Tallenna ja avaa seuraava",
+ "translate-js-nonext": "Tämä oli tämän sivun viimeinen viesti.",
+ "translate-js-skip": "Hyppää seuraavaan",
+ "translate-js-save-failed": "Tallentaminen epäonnistui. Ilmoita tästä virheestä.",
+ "translate-js-history": "Käännöshistoria",
+ "translate-js-support": "Kysy kysymys",
+ "translate-js-support-title": "Pyydä apua, jos olemassa olevien tietojen avulla viestiä ei voi kääntää oikein.",
+ "translate-js-support-unsaved-warning": "Kaikkia käännöksiä ei ole tallennettu.",
+ "translate-gs-pos": "Sij.",
+ "translate-gs-code": "Koodi",
+ "translate-gs-continent": "Maanosa",
+ "translate-gs-speakers": "Puhujat",
+ "translate-gs-score": "Pisteet",
+ "translate-gs-multiple": "Useita",
+ "translate-gs-count": "Määrä",
+ "translate-gs-total": "Yhteensä",
+ "translate-gs-avgscore": "Keskim. pisteet",
+ "translate-documentation-language": "käännösohjeet",
+ "translate-searchprofile": "Käännökset",
+ "translate-searchprofile-tooltip": "Hae kaikista käännöksistä",
+ "translate-search-languagefilter": "Vain kielellä",
+ "translate-search-nofilter": "Ei suodatusta",
+ "translate-messagereview-submit": "Merkitse tarkastetuksi",
+ "translate-messagereview-progress": "Merkitään tarkastetuksi…",
+ "translate-messagereview-failure": "Tarkastetuksi merkitseminen epäonnistui: $1",
+ "translate-messagereview-done": "Tarkastettu",
+ "translate-messagereview-reviews": "{{PLURAL:$1|Yhden|$1}} käyttäjän tarkastama",
+ "translate-messagereview-reviewswithyou": "{{PLURAL:$1|Sinun tarkastama|$1 käyttäjän tarkastama sinut mukaan lukien}}",
+ "api-error-invalidrevision": "Käännöstä ei löytynyt",
+ "api-error-unknownmessage": "Viestiä ei löytynyt",
+ "api-error-fuzzymessage": "Käännös on merkitty sumeaksi",
+ "api-error-owntranslation": "Et voi hyväksyä omia käännöksiäsi",
+ "translate-messagereview-no-fuzzy": "Sumeita käännöksiä ei voi hyväksyä.",
+ "translate-messagereview-no-own": "Et voi merkitä omia käännöksiäsi tarkastetuksi.",
+ "translate-messagereview-doit": "Merkitse tämä käännös tarkastetuksi.",
+ "log-name-translationreview": "Arvioitujen käännösten loki",
+ "log-description-translationreview": "Kaikkien käännösten ja viestiryhmien arviointiloki.",
+ "logentry-translationreview-message": "$1 {{GENDER:$2|tarkasti}} käännöksen $3",
+ "logentry-translationreview-group": "$1 {{GENDER:$2|muutti}} kohteen $3 kielen $4 käännöksen tilan tilasta $6 tilaan $7",
+ "group-translate-sandboxed": "Hyväksymättömät kääntäjät",
+ "group-translate-sandboxed-member": "{{GENDER:$1|hyväksymätön kääntäjä}}",
+ "right-translate-sandboxmanage": "Hyväksyä ja hylätä hyväksymättömiä kääntäjiä",
+ "action-translate-sandboxmanage": "hyväksiä tai hylätä hyväksymättömiä käyttäjiä",
+ "right-translate-sandboxaction": "Suorittaa toimintoja, jotka on sallittu hyväksymättömille kääntäjille",
+ "action-translate-sandboxaction": "suorittaa toimintoja, jotka on sallittu hyväksymättömille kääntäjille",
+ "translate-workflow-state-": "(ei asetettu)",
+ "translate-workflowstatus": "Tila: $1",
+ "translate-workflow-set-do": "Aseta",
+ "translate-workflow-set-doing": "Asetetaan...",
+ "translate-workflow-set-done": "Asetettu",
+ "translate-workflow-set-error-alreadyset": "Uusi tila on sama kuin nykyinen tila.",
+ "translate-workflow-autocreated-summary": "Sivun automaattinen luonti viestiryhmätilan $1 käännökselle",
+ "translate-stats-workflow": "Tila",
+ "translate-workflowgroup-label": "Viestiryhmätila",
+ "translate-workflowgroup-desc": "Tämä viestiryhmä sisältää viestiryhmätilojen käännökset.\nTilat määritellään asetusmuuttujalla $wgTranslationWorkflowStates.",
+ "translate-dynagroup-recent-label": "Tuoreet käännökset",
+ "translate-dynagroup-recent-desc": "Tämä viestiryhmä näyttää kaikki tuoreet käännökset.\nSoveltuu hyvin käännösten tarkastamiseen.",
+ "translate-dynagroup-additions-label": "Tuoreet lisäykset",
+ "translate-dynagroup-additions-desc": "Tämä viestiryhmä näyttää uudet ja muuttuneet viestit.",
+ "translate-dynagroup-by": "Käännöksen teki {{GENDER:$1|$1}}",
+ "translate-dynagroup-byc": "Käännöksen teki {{GENDER:$1|$1}} ($2)",
+ "translate-dynagroup-last": "Viimeisimmän muutoksen teki {{GENDER:$1|$1}}",
+ "translate-dynagroup-lastc": "Viimeisimmän muutoksen teki {{GENDER:$1|$1}} ($2)",
+ "translate-gethelp": "Ohje",
+ "translate-msggroupselector-projects": "Viestiryhmä",
+ "translate-msggroupselector-search-placeholder": "Hae ryhmiä",
+ "translate-msggroupselector-search-all": "Kaikki",
+ "translate-msggroupselector-search-recent": "Äskettäiset",
+ "translate-msggroupselector-view-subprojects": "$1 {{PLURAL:$1|alaryhmä|alaryhmää}}",
+ "tux-languageselector": "Kieli",
+ "tux-tab-all": "Kaikki",
+ "tux-tab-untranslated": "Kääntämättömät",
+ "tux-tab-outdated": "Vanhentuneet",
+ "tux-tab-translated": "Käännetyt",
+ "tux-tab-unproofread": "Tarkistamattomat",
+ "tux-edit": "Muokkaa",
+ "tux-status-optional": "Valinnainen",
+ "tux-status-fuzzy": "Vanhentunut",
+ "tux-status-proofread": "Tarkistettu",
+ "tux-status-translated": "Käännetty",
+ "tux-status-saving": "Tallennetaan...",
+ "tux-status-unsaved": "Tallentamaton",
+ "tux-editor-placeholder": "Käännös",
+ "tux-editor-paste-original-button-label": "Liitä lähdeteksti",
+ "tux-editor-discard-changes-button-label": "Hylkää muutokset",
+ "tux-editor-save-button-label": "Tallenna käännös",
+ "tux-editor-skip-button-label": "Hyppää seuraavaan",
+ "tux-editor-cancel-button-label": "Peru",
+ "tux-editor-confirm-button-label": "Hyväksy käännös",
+ "tux-editor-shortcut-info": "$1 tallentaa, $2 siirty seuraavaan ja $3 näyttää muut näppäinyhdistelmät.",
+ "tux-editor-edit-desc": "Muokkaa ohjeistusta",
+ "tux-editor-add-desc": "Lisää ohjeistus",
+ "tux-editor-suggestions-title": "Ehdotukset",
+ "tux-editor-in-other-languages": "Muilla kielillä",
+ "tux-editor-need-more-help": "Tarvitsetko lisäapua?",
+ "tux-editor-ask-help": "Pyydä lisätietoja",
+ "tux-editor-tm-match": "Vastaavuus $1%",
+ "tux-warnings-more": "{{PLURAL:$1|$1 muuta}}",
+ "tux-warnings-hide": "piilota",
+ "tux-editor-save-failed": "Käännöksen tallentaminen epäonnistui: $1",
+ "tux-editor-n-uses": "$1 {{PLURAL:$1|käyttökerta|käyttökertaa}}",
+ "tux-editor-message-desc-more": "Näytä lisää",
+ "tux-editor-message-desc-less": "Näytä vähemmän",
+ "tux-editor-clear-translated": "Piilota käännetyt",
+ "tux-editor-proofreading-mode": "Tarkistus",
+ "tux-editor-translate-mode": "Luettelo",
+ "tux-editor-proofreading-hide-own-translations": "Piilota omat käännökset",
+ "tux-editor-proofreading-show-own-translations": "Näytä omat käännökset",
+ "tux-proofread-action-tooltip": "Merkitse tarkastetuksi",
+ "tux-proofread-edit-label": "Muokkaa",
+ "tux-editor-page-mode": "Sivu",
+ "tux-editor-outdated-warning": "Tämä viesti saattaa tarvita päivittämistä.",
+ "tux-editor-outdated-warning-diff-link": "Näytä muutokset",
+ "tux-editor-doc-editor-placeholder": "Ohjeistus",
+ "tux-editor-doc-editor-save": "Tallenna ohjeistus",
+ "tux-editor-doc-editor-cancel": "Peru",
+ "tux-messagetable-more-messages": "$1 {{PLURAL:$1|viesti|viestiä}} lisää",
+ "tux-messagetable-loading-messages": "Ladataan {{PLURAL:$1|viestiä|viestejä}}...",
+ "tux-message-filter-placeholder": "Hae listasta",
+ "tux-message-filter-result": "{{PLURAL:$1|Yksi hakutulos|$1 hakutulosta}} haulle $2",
+ "tux-message-filter-advanced-button": "Laajennettu haku",
+ "tux-message-filter-optional-messages-label": "Valinnaiset viestit",
+ "tux-proofread-translated-by-self": "Sinun kääntämäsi",
+ "tux-empty-list-all": "Tämä viestiryhmä on tyhjä",
+ "tux-empty-list-all-guide": "Valitse toinen viestiryhmä käännettäväksi",
+ "tux-translate-page-no-such-group": "<strong>Ryhmää ei löydy.</strong> Valitse toinen viestiryhmä.",
+ "tux-empty-list-translated": "Ei käännettyjä viestejä",
+ "tux-empty-list-translated-guide": "Voit auttaa kääntämällä",
+ "tux-empty-list-translated-action": "Käännä",
+ "tux-empty-no-messages-to-display": "Ei näytettäviä viestejä.",
+ "tux-empty-there-are-optional": "Saatavilla on valinnaisia viestejä, joita ei näytetä.",
+ "tux-empty-show-optional-messages": "Näytä valinnaiset viestit",
+ "tux-empty-no-outdated-messages": "Ei päivittämistä vaativia viestejä",
+ "tux-empty-nothing-to-proofread": "Ei tarkistettavaa.",
+ "tux-empty-you-can-help-providing": "Voit auttaa tekemällä uusia käännöksiä.",
+ "tux-empty-nothing-new-to-proofread": "Ei uutta tarkistettavaa.",
+ "tux-empty-you-can-review-already-proofread": "Voit tarkistaa muiden jo tarkistamia käännöksiä.",
+ "tux-empty-list-other": "Ei käännettävää",
+ "tux-empty-list-other-guide": "Voit auttaa tarkistamalla käännöksiä",
+ "tux-empty-list-other-action": "Tarkista käännöksiä",
+ "tux-empty-list-other-link": "Näytä kaikki viestit",
+ "tux-editor-close-tooltip": "Sulje",
+ "tux-editor-expand-tooltip": "Suurenna",
+ "tux-editor-collapse-tooltip": "Pienennä",
+ "tux-editor-message-tools-history": "Historia",
+ "tux-editor-message-tools-delete": "Poista",
+ "tux-editor-message-tools-translations": "Kaikki käännökset",
+ "tux-editor-loading": "Ladataan...",
+ "translate-search-more-languages-info": "$1 {{PLURAL:$1|kieli|kieltä}} lisää",
+ "translate-statsbar-tooltip": "$1 % käännetty, $2 % tarkistettu",
+ "translate-statsbar-tooltip-with-fuzzy": "$1 % käännetty, $2 % tarkistettu, $3 % vanhentunut",
+ "translate-search-more-groups-info": "$1 {{PLURAL:$1|muu ryhmä|muuta ryhmää}}",
+ "translate-ulsdep-title": "Asennusvirhe",
+ "translate-ulsdep-body": "Translate-laajennos vaati [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:UniversalLanguageSelector Universal Language Selector -laajennoksen].",
+ "tux-session-expired": "Et ole enää kirjautunut sisään. Kirjaudu sisään toisessä välilehdessä. Vaihtoehtoisesti voit kopioida tallentamattomat käännökset, kirjautua sisään ja palata tälle sivulle."
+}
diff --git a/MLEB/Translate/i18n/core/fo.json b/MLEB/Translate/i18n/core/fo.json
new file mode 100644
index 00000000..e364ec0a
--- /dev/null
+++ b/MLEB/Translate/i18n/core/fo.json
@@ -0,0 +1,328 @@
+{
+ "@metadata": {
+ "authors": [
+ "EileenSanda"
+ ]
+ },
+ "translate": "Týð",
+ "translate-desc": "[[Special:Translate|Serstøk síða]] til týðing av MediaWiki og øðrum",
+ "translate-taskui-view": "Vís øll boð",
+ "translate-taskui-untranslated": "Vís ótýdd boð",
+ "translate-taskui-optional": "Vís valfrí boð",
+ "translate-taskui-acceptqueue": "Bert boð ið eg kann rættlesa",
+ "translate-taskui-reviewall": "Rættles allar týðingar",
+ "translate-taskui-export-as-po": "Útflyt til offline týðing",
+ "translate-taction-translate": "Týð",
+ "translate-taction-proofread": "Les rættlestur",
+ "translate-taction-lstats": "Málslig hagtøl",
+ "translate-taction-mstats": "Hagtøl fyri boðbólk",
+ "translate-taction-export": "Útflyt",
+ "translate-taction-disabled": "Henda handling er ikki virkin á hesi wiki.",
+ "translate-page-no-such-language": "Nevnda málið er ógyldugt.",
+ "translate-page-no-such-group": "Nevndi bólkur var ikki í gildi.",
+ "translate-page-disabled": "Tað ber ikki til at gera týðingar til hetta málið í hesum bólki.\nOrsøk:\n\n<em>$1</em>",
+ "translate-language-disabled": "Týðing til hetta málið er sligið frá.",
+ "translate-page-settings-legend": "Innstillingar",
+ "translate-page-group": "Bólkur",
+ "translate-page-language": "Mál",
+ "translate-page-limit": "Mark",
+ "translate-page-limit-option": "$1 {{PLURAL:$1|boð}} per síðu",
+ "translate-submit": "Heinta",
+ "translate-page-navigation-legend": "Stýring",
+ "translate-page-showing": "Vísir boð frá $1 til $2 av tilsamans $3.",
+ "translate-page-showing-all": "Vísir $1 {{PLURAL:$1|boð}}.",
+ "translate-page-showing-none": "Ongi boð at vísa.",
+ "translate-next": "Næsta síða",
+ "translate-prev": "Fyrra síða",
+ "translate-page-description-legend": "Kunning um bólkin",
+ "translate-page-description-hasoptional": "Hesin biðbólkur inniheldur valfrí boð.\nValfrí boð eiga bert at verða týdd, um títt mál setur serlig krøv sum til dømis ikki at brúka millumrúm ella um sernøvn vera umskrivaði. $1",
+ "translate-page-description-hasoptional-open": "Vís valfrí boð.",
+ "translate-page-edit": "rætta",
+ "translate-ext-url": "<hr />Heimasíða: $1",
+ "translate-optional": "(valfrítt)",
+ "translate-ignored": "(síggj burtur frá)",
+ "translate-edit-title": "Rætta \"$1\"",
+ "translate-edit-translation": "Týðing",
+ "translate-edit-contribute": "verð við",
+ "translate-edit-no-information": "''Hesi boðini hava onga dokumentasjón.''\n''Um tú veitst hvar ella hvussu hesi boðini verða nýtt, so kanst tú hjálpa øðrum týðarum við at viðleggja dokumentasjón til hesi boðini.''",
+ "translate-edit-information": "Kunning um boð ($1)",
+ "translate-edit-in-other-languages": "Boðini á øðrum málum",
+ "translate-edit-committed": "Verandi týðing í ritbúnaðinum",
+ "translate-edit-warnings": "Ávaring um ófullfíggjaðar týðingar",
+ "translate-edit-tmsugs": "Uppskot frá týðingarminninum og sjálvvirkandi týðingum (maskintýðingum)",
+ "translate-edit-tmmatch-source": "Keldutekstur til týðingar: $1",
+ "translate-edit-tmmatch": "$1% samsvar",
+ "translate-use-suggestion": "Skift út verandi týðing við hetta uppskotið.",
+ "translate-edit-nopermission": "Tú skalt hava loyvi til at týða boð.",
+ "translate-edit-askpermission": "Bið um loyvi",
+ "translate-magic-pagename": "Víðkað MediaWiki týðing",
+ "translate-magic-module": "Modul:",
+ "translate-magic-submit": "Heinta",
+ "translate-magic-cm-export": "Útflyt",
+ "translate-magic-nothing-to-export": "Tað er onki at útflyta.",
+ "translate-magic-cm-to-be": "Skal-vera",
+ "translate-magic-cm-current": "Verandi",
+ "translate-magic-cm-original": "Upprunaligt",
+ "translate-magic-cm-comment": "Viðmerking:",
+ "translate-magic-cm-save": "Goym",
+ "translate-magic-cm-updatedusing": "Dagført við at nýta [[Special:AdvancedTranslate|{{int:Translate-magic-pagename}}]]",
+ "translate-magic-cm-savefailed": "Tað miseydnaðist at goyma",
+ "translate-magic-words": "Magisk orð",
+ "translate-magic-namespace": "Navnarúms nøvn",
+ "translate-magic-notsaved": "Tín rætting varð ikki goymd!",
+ "translate-magic-errors": "Vinarliga rætta fylgjandi {{PLURAL:$1|villu|villur}} í týðingunum:",
+ "translate-magic-saved": "Tínar broytingar vóru goymdar.",
+ "translate-checks-parameters": "Fylgjandi {{PLURAL:$2|parametur er|parametur eru}} ikki brúkt:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-parameters-unknown": "Fylgjandi {{PLURAL:$2|parametur er|parametur eru}} ókend:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-balance": "Tað er ólíka mongd av {{PLURAL:$2|klombru|klombrum}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links": "Fylgjandi {{PLURAL:$2|leinkja er problematisk|$2 leinkjur eru problematiskar}} :\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links-missing": "Fylgjandi {{PLURAL:$2|leinkja manglar|$2 leinkjur mangla}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-xhtml": "Vinarliga útskift fylgjandi {{PLURAL:$2|lyklaorð}} við tey røttu:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-plural": "Upprunateksturin nýtir <nowiki>{{PLURAL:}}</nowiki> meðan týðingin ikki ger tað.",
+ "translate-checks-plural-forms": "<nowiki>{{PLURAL:}}</nowiki> fingu {{PLURAL:$1|ein form|$1 formar}} men {{PLURAL:$2|bert ein formur verður|$2 formar verða}} stuðlaðir (0= og 1= formar ikki íroknaðir).",
+ "translate-checks-plural-dupe": "<nowiki>{{PLURAL:}}</nowiki> hevur dupultan form í endanum. <nowiki>{{PLURAL:$1|mál|mál}}</nowiki> eigur at skrivast sum <nowiki>{{PLURAL:$1|mál}}</nowiki>.",
+ "translate-checks-pagename": "Navnarúmið er annarleiðis enn tað upprunaliga",
+ "translate-checks-format": "Henda týðing fylgir ikki tí upprunaliga ella hevur ógyldugan syntaks: $1",
+ "translate-checks-parametersnotequal": "Tal av parametrum er {{PLURAL:$1|$1}}; eigur at vera {{PLURAL:$2|$2}}.",
+ "translate-checks-malformed": "<nowiki>$1</nowiki> er skeivt skrivað.",
+ "translate-checks-fudforum-syntax": "Nýt <nowiki>$1</nowiki> ístaðin fyri <nowiki>$2</nowiki> í hesi verkætlanini.",
+ "translate-pref-nonewsletter": "Ikki senda mær týðindabrøv við telduposti",
+ "translate-pref-editassistlang": "Stuðlandi mál:",
+ "prefs-translate": "Møguleikar fyri týðing",
+ "translate-pref-editassistlang-help": "Listi við málkotum atskilt við komma.\nTýðing av einum boði í hesum málum vera víst, meðan tú týðir.\nStandardlistin yvir mál avhengur av tínum máli.",
+ "translate-pref-editassistlang-bad": "Ógyldug málkota í listanum:\n<nowiki>$1</nowiki>.",
+ "right-translate": "Rætta við at nýta týðingarmarkamótið",
+ "right-translate-manage": "Stýr boðbólkum",
+ "action-translate-manage": "stýr boðbólkum",
+ "right-translate-import": "Innflyt offline týðingar",
+ "action-translate-import": "innflyt offline týðingar",
+ "right-translate-messagereview": "Rættles týðingar",
+ "translate-rc-translation-filter": "Filtrera týðingar:",
+ "translate-rc-translation-filter-no": "Ger onki",
+ "translate-rc-translation-filter-only": "Vís bert týðingar",
+ "translate-rc-translation-filter-filter": "Vís ikki týðingar",
+ "translationstats": "Týðingarhagtøl",
+ "translate-stats-edits": "Rættingar",
+ "translate-stats-users": "Týðarar",
+ "translate-stats-registrations": "Skrásetingar",
+ "translate-stats-reviews": "Rættlesingar",
+ "translate-stats-reviewers": "Rættlesarar",
+ "translate-statsf-intro": "Tú kanst gera einføld hagtøl við hesum formularinum.\nØll virði hava ovaru og niðaru mørk.",
+ "translate-statsf-width": "Breidd í pixels:",
+ "translate-statsf-height": "Hædd í pixels:",
+ "translate-statsf-days": "Tíðarskeið í døgum:",
+ "translate-statsf-start": "Byrjunardagur:",
+ "translate-statsf-scale": "Tíðarupploysn:",
+ "translate-statsf-scale-months": "Mánaðir",
+ "translate-statsf-scale-weeks": "Vikur",
+ "translate-statsf-scale-days": "Dagar",
+ "translate-statsf-scale-hours": "Tímar",
+ "translate-statsf-count": "Máting:",
+ "translate-statsf-count-edits": "Tal av rættingum",
+ "translate-statsf-count-users": "Virknir týðarar",
+ "translate-statsf-count-registrations": "Nýggir brúkarar",
+ "translate-statsf-count-reviewers": "Rættlesarar",
+ "translate-statsf-language": "Komma-atskildur listi yvir málsligar kotur:",
+ "translate-statsf-group": "Komma-sundurskildur listi yvir bólkakotur:",
+ "translate-statsf-submit": "Forskoðan",
+ "translate-tag-category": "Síður ið kunnu týðast",
+ "translate-tag-page-desc": "Týðing av wiki síðuni [[$2|$1]].",
+ "translate-sidebar-alltrans": "Á øðrum málum",
+ "translations": "Allar týðingar",
+ "translations-summary": "Skriva navnið á einum boðum niðanfyri fyri at vísa allar týðingar ið eru tøkar.",
+ "translate-translations-no-message": "\"$1\" er ikki eitt boð ið kann týðast",
+ "translate-translations-none": "Tað eru ongar týðingar av \"$1\"",
+ "translate-translations-count": "Fann {{PLURAL:$1|eina týðing|$1 týðingar}}.",
+ "translate-translations-fieldset-title": "Boð",
+ "translate-translations-messagename": "Navn:",
+ "translate-translations-project": "Verkætlan:",
+ "translate-translations-history-short": "s",
+ "languagestats": "Málslig hagtøl",
+ "languagestats-summary": "Henda síðan vísir týðingarhagtøl fyri allir boðbólkar fyri eitt mál.",
+ "languagestats-stats-for": "Týðingarhagtøl fyri $1 ($2).",
+ "languagestats-recenttranslations": "seinastu týðingar",
+ "translate-langstats-incomplete": "Nøkur hagtøl á hesi síðu eru ófullfíggjaði. Vinarliga uppfríska síðuna fyri at fáa fleiri hagtøl.",
+ "translate-langstats-expand": "víðka",
+ "translate-langstats-collapse": "falda saman",
+ "translate-langstats-expandall": "vís alt",
+ "translate-langstats-collapseall": "legg alt saman",
+ "translate-language-code": "Málkota",
+ "translate-language-code-field-name": "Málkota:",
+ "translate-suppress-complete": "Vís ikki boðbólkar sum eru fullkomiliga týddir",
+ "translate-ls-noempty": "Vís ikki boðbólkar sum als ikki eru týddir",
+ "translate-language": "Mál",
+ "translate-total": "Boð",
+ "translate-untranslated": "Ikki týtt",
+ "translate-percentage-complete": "Fullført",
+ "translate-percentage-fuzzy": "Foroldað",
+ "translate-languagestats-overall": "Allir boðbólkar tilsamans",
+ "translate-ls-submit": "Vís hagtøl",
+ "translate-ls-column-group": "Boðbólkur",
+ "translate-mgs-pagename": "Hagtøl fyri boðbólk",
+ "translate-mgs-fieldset": "Innstillingar fyri vísingar",
+ "translate-mgs-group": "Boðbólkur:",
+ "translate-mgs-nocomplete": "Vís ikki mál sum hava fullført týðingarnar",
+ "translate-mgs-noempty": "Vís ikki mál ið als ongar týðingar hava",
+ "translate-mgs-submit": "Vís hagtøl",
+ "translate-mgs-column-language": "Mál",
+ "translate-mgs-totals": "Øll mál tilsamans",
+ "translate-mgs-invalid-group": "Nevndi bólkurin $1 er ikki til.",
+ "translate-mgs-nothing": "Onki at vísa fyri umbidnu hagtøl.",
+ "supportedlanguages": "Stuðlaði mál",
+ "supportedlanguages-summary": "Henda síðan vísir ein lista yvir øll mál ið verða stuðlaði av {{SITENAME}},\nsaman við nøvnunum á týðarum, sum arbeiða við tí málinum.\nNavnið á einum týðara sær størri út, jú fleiri rættingar týðarin hevur gjørt.\nLiturin á linjunum undir nøvnunum vísir hvussu nýliga ein týðari hevur verið aktivur her.",
+ "supportedlanguages-colorlegend": "Frágreiðing um litin: Seinasta týðing var fyri $1 døgum síðan.",
+ "supportedlanguages-translators": "{{PLURAL:$2|Týðari|Týðarar}}: $1",
+ "supportedlanguages-recenttranslations": "seinastu týðingar",
+ "supportedlanguages-count": "$1 {{PLURAL:$1|mál}} tilsamans.",
+ "supportedlanguages-activity": "$1: $2 {{PLURAL:$2|rætting|rættingar}} - seinasta rætting var fyri $3 {{PLURAL:$3|dagur|dagar}} síðan",
+ "translate-save": "Goym ($1)",
+ "translate-jssti-add": "Legg til listan",
+ "managemessagegroups": "Stýring av boðbólkum",
+ "translate-smg-notallowed": "Tú hevur ikki loyvi til at útføra hesa handling.",
+ "translate-smg-nochanges": "Tað eru ongar broytingar at arbeiða við.",
+ "translate-smg-submit": "Send broytingarnar inn til viðgerðar",
+ "translate-smg-left": "Boðsinnihald í wiki",
+ "translate-smg-right": "Innkomnar broytingar",
+ "translate-manage-import-diff": "Boð $1 | Handlingar: $2",
+ "translate-manage-import-new": "Nýggj boð $1",
+ "translate-manage-import-deleted": "Slettað boð $1",
+ "translate-manage-action-import": "Innflyt",
+ "translate-manage-action-conflict": "Innflyt og merk sum avoldað",
+ "translate-manage-action-ignore": "Síggj burtur frá",
+ "translate-manage-action-fuzzy": "Innflyt og markera sum týðingar sum avoldaðar",
+ "translate-manage-submit": "Gjøgnumfør",
+ "importtranslations": "Innflyt týðingar",
+ "translate-import-err-dl-failed": "Tað var ógjørligt at heinta fíluna:\n$1",
+ "translate-import-err-invalid-title": "Fílunavnið <nowiki>$1</nowiki> var ógyldugt.",
+ "translate-import-err-no-such-file": "Fílan <nowiki>$1</nowiki> er ikki til ella er ikki løgd út lokalt.",
+ "translate-import-err-stale-group": "Boðbólkurin sum henda fílan hoyrir til er ikki til.",
+ "translate-js-summary": "Samandráttur:",
+ "translate-js-save": "Goym",
+ "translate-js-next": "Goym og lat upp næsta",
+ "translate-js-nonext": "Hetta var seinasta boðið á hesi síðu.",
+ "translate-js-skip": "Loyp um og far til næsta",
+ "translate-js-save-failed": "Tað miseydnaðist at goyma. Vinarliga melda henda feilin.",
+ "translate-js-history": "Týðingarsøgan",
+ "translate-js-support": "Spyr ein spurning",
+ "translate-js-support-title": "Bið um hjálp um tað ikki er nokk av kunning til at týða hesi boðini rætt.",
+ "translate-js-support-unsaved-warning": "Tú hevur ikki-goymdar týðingar.",
+ "translate-gs-code": "Kota",
+ "translate-gs-continent": "Kontinent",
+ "translate-gs-speakers": "Talandi",
+ "translate-gs-score": "Stig",
+ "translate-gs-multiple": "Fleiri",
+ "translate-gs-count": "Tal",
+ "translate-gs-total": "Tilsamans",
+ "translate-gs-avgscore": "Stig í meðal",
+ "translate-documentation-language": "Vegleiðing til týðing",
+ "translate-searchprofile": "Týðingar",
+ "translate-searchprofile-tooltip": "Leita í øllum týðingum",
+ "translate-search-languagefilter": "Filtrera eftir máli:",
+ "translate-search-nofilter": "Ongin filtrering",
+ "translate-messagereview-submit": "Merk sum rættlisið",
+ "translate-messagereview-progress": "Markerar sum rættlisið...",
+ "translate-messagereview-failure": "Tað miseydnaðist at merkja sum rættlisið: $1",
+ "translate-messagereview-done": "Rættlisið",
+ "translate-messagereview-reviews": "Rættlisið av {{PLURAL:$1|einum brúkara|$1 brúkarum}}",
+ "translate-messagereview-reviewswithyou": "Rættlisið av {{PLURAL:$1|tær|$1 brúkarum harímillum tú}}",
+ "api-error-invalidrevision": "Týðing varð ikki funnin",
+ "api-error-unknownmessage": "Boðið varð ikki funnið",
+ "api-error-fuzzymessage": "Týðing er merkt sum avoldað",
+ "api-error-owntranslation": "Tú kanst ikki merkja tínar egnu týðingar sum rættlisnar",
+ "translate-messagereview-no-fuzzy": "Avoldaðar týðingar kunnu ikki merkjast sum rættlisnar.",
+ "translate-messagereview-no-own": "Tú kanst ikki merkja tínar egnu týðingar sum rættlisnar.",
+ "translate-messagereview-doit": "Merk hesa týðing sum rættlisnað.",
+ "log-name-translationreview": "Loggur fyri týðingarrættlestur",
+ "logentry-translationreview-message": "$1 {{GENDER:$2|rættlæs}} týðingina $3",
+ "logentry-translationreview-group": "$1 {{GENDER:$2|broytti}} status fyri $4 týðingar hjá $3 frá $6 til $7",
+ "group-translate-sandboxed": "Ikki-góðkendir týðarar",
+ "group-translate-sandboxed-member": "{{GENDER:$1|ikki-góðkendur týðari}}",
+ "translate-dynagroup-recent-label": "Seinastu týðingar",
+ "translate-dynagroup-recent-desc": "Hesin boðbólkur vísir allar tær seinastu týðingarnar til hetta málið. Mest týðandi hjá teimum sum arbeiða við rættlestri.",
+ "translate-dynagroup-additions-desc": "Hesin boðbólkur vísir nýggj og broytt boð.",
+ "translate-dynagroup-by": "Týtt hevur {{GENDER:$1|$1}}",
+ "translate-dynagroup-byc": "Týtt hevur {{GENDER:$1|$1}} ($2)",
+ "translate-dynagroup-last": "Seinasta broyting av {{GENDER:$1|$1}}",
+ "translate-gethelp": "Hjálp",
+ "translate-msggroupselector-projects": "Boðbólkur",
+ "translate-msggroupselector-search-placeholder": "Leita eftir bólkum",
+ "translate-msggroupselector-search-all": "Alt",
+ "translate-msggroupselector-search-recent": "Seinastu",
+ "translate-msggroupselector-view-subprojects": "$1 {{PLURAL:$1|undirbólkur|undirbólkar}}",
+ "tux-languageselector": "Ger týðingar til",
+ "tux-tab-all": "Alt",
+ "tux-tab-untranslated": "Ikki týtt",
+ "tux-tab-outdated": "Avoldað",
+ "tux-tab-translated": "Týtt",
+ "tux-tab-unproofread": "Ikki rættlisið",
+ "tux-edit": "Rætta",
+ "tux-status-optional": "Valfrítt",
+ "tux-status-fuzzy": "Avoldað",
+ "tux-status-proofread": "Rættlisið",
+ "tux-status-translated": "Týtt",
+ "tux-status-saving": "Goymir...",
+ "tux-status-unsaved": "Ikki goymt",
+ "tux-editor-placeholder": "Tín týðing",
+ "tux-editor-paste-original-button-label": "Innset keldutekstin",
+ "tux-editor-discard-changes-button-label": "Tak burtur broytingar",
+ "tux-editor-save-button-label": "Goym týðingar",
+ "tux-editor-skip-button-label": "Loyp til næsta",
+ "tux-editor-cancel-button-label": "Angra",
+ "tux-editor-confirm-button-label": "Vátta týðing",
+ "tux-editor-shortcut-info": "Trýst á \"$1\" fyri at goyma ella \"$2\" fyri at loypa til næstu boð",
+ "tux-editor-edit-desc": "Rætta dokumentasjón",
+ "tux-editor-add-desc": "Innset dokumentasjón",
+ "tux-editor-suggestions-title": "Uppskot",
+ "tux-editor-in-other-languages": "Á øðrum málum",
+ "tux-editor-need-more-help": "Tørvar tær meira hjálp?",
+ "tux-editor-ask-help": "Bið um meira kunning",
+ "tux-editor-tm-match": "$1% samanfall",
+ "tux-warnings-more": "{{PLURAL:$1|$1 meira}}",
+ "tux-warnings-hide": "fjal",
+ "tux-editor-n-uses": "brúkt $1 {{PLURAL:$1|ferð|ferðir}}",
+ "tux-editor-message-desc-more": "Vís meira",
+ "tux-editor-message-desc-less": "Vís minni",
+ "tux-editor-clear-translated": "Fjal tað sum er týtt",
+ "tux-editor-translate-mode": "Listi",
+ "tux-editor-proofreading-hide-own-translations": "Fjal tínar týðingar",
+ "tux-editor-proofreading-show-own-translations": "Vís tínar týðingar",
+ "tux-proofread-action-tooltip": "Merk sum rættlisið",
+ "tux-proofread-edit-label": "Rætta",
+ "tux-editor-page-mode": "Síða",
+ "tux-editor-outdated-warning": "Henda týðing hevur møguliga tørv á dagføring.",
+ "tux-editor-outdated-warning-diff-link": "Vís munir",
+ "tux-editor-doc-editor-cancel": "Angra",
+ "tux-messagetable-more-messages": "$1 {{PLURAL:$1|boð}} afturat",
+ "tux-messagetable-loading-messages": "Innlesur {{PLURAL:$1|boð}}...",
+ "tux-message-filter-result": "Fann $1 {{PLURAL:$1|úrslit}} fyri \"$2\"",
+ "tux-message-filter-optional-messages-label": "Valfrí boð",
+ "tux-proofread-translated-by-self": "Týtt av tær",
+ "tux-empty-list-all": "Hesin boðbólkur er tómur",
+ "tux-empty-list-all-guide": "Vel ein annan boðbólk at týða",
+ "tux-translate-page-no-such-group": "'''Nevndi bólkur er ikki til.''' Vel ein annan boðbólk.",
+ "tux-empty-list-translated": "Ongi týdd boð",
+ "tux-empty-list-translated-guide": "Tú kanst hjálpa við at týða",
+ "tux-empty-list-translated-action": "Týð",
+ "tux-empty-no-messages-to-display": "Ongi boð at vísa.",
+ "tux-empty-there-are-optional": "Tað eru valfrí boð sum ikki eru víst á listanum",
+ "tux-empty-show-optional-messages": "Vís valfrí boð",
+ "tux-empty-no-outdated-messages": "Ongi avoldaði boð",
+ "tux-empty-nothing-to-proofread": "Onki at rættlesa",
+ "tux-empty-you-can-help-providing": "Tú kanst hjálpa við at gera nýggjar týðingar",
+ "tux-empty-nothing-new-to-proofread": "Onki nýtt at rættlesa",
+ "tux-empty-you-can-review-already-proofread": "Tú kanst rættlesa týðingar sum longu er rættlisnar av øðrum.",
+ "tux-empty-list-other": "Onki at týða",
+ "tux-empty-list-other-guide": "Tú kanst hjálpa við at rættlesa verandi týðingar",
+ "tux-empty-list-other-action": "Rættles týðingar",
+ "tux-empty-list-other-link": "Vís øll boð",
+ "tux-editor-close-tooltip": "Lat aftur",
+ "tux-editor-expand-tooltip": "Víðka",
+ "tux-editor-collapse-tooltip": "Falda saman",
+ "tux-editor-message-tools-history": "Søga",
+ "tux-editor-message-tools-translations": "Allar týðingar",
+ "tux-editor-loading": "Innlesur...",
+ "translate-search-more-languages-info": "$1 {{PLURAL:$1|mál}} afturat",
+ "translate-statsbar-tooltip": "$1% týtt, $2% rættlisið",
+ "translate-statsbar-tooltip-with-fuzzy": "$1% týtt, $2% rættlisið, $3% avoldað",
+ "translate-search-more-groups-info": "$1 {{PLURAL:$1|bólkur|bólkar}} afturat"
+}
diff --git a/MLEB/Translate/i18n/core/fr.json b/MLEB/Translate/i18n/core/fr.json
new file mode 100644
index 00000000..1f4950ba
--- /dev/null
+++ b/MLEB/Translate/i18n/core/fr.json
@@ -0,0 +1,422 @@
+{
+ "@metadata": {
+ "authors": [
+ "Automatik",
+ "Boniface",
+ "Brunoperel",
+ "ChrisPtDe",
+ "Cquoi",
+ "Crochet.david",
+ "Dereckson",
+ "Gomoko",
+ "Grondin",
+ "Guillom",
+ "Hello71",
+ "IAlex",
+ "Jean-Frédéric",
+ "Litlok",
+ "Louperivois",
+ "Ltrlg",
+ "McDutchie",
+ "Metroitendo",
+ "Peter17",
+ "PieRRoMaN",
+ "Seb35",
+ "Sherbrooke",
+ "Shirayuki",
+ "Sumone10154",
+ "Tititou36",
+ "Urhixidur",
+ "Verdy p",
+ "Wyz",
+ "Yumeki",
+ "Zcqsc06",
+ "Zetud",
+ "Linedwell",
+ "Orikrin1998",
+ "Dr Brains"
+ ]
+ },
+ "translate": "Traduire",
+ "translate-desc": "[[Special:Translate|Page spéciale]] pour traduire MediaWiki et au-delà",
+ "translate-taskui-view": "Afficher tous les messages",
+ "translate-taskui-untranslated": "Afficher les messages non traduits",
+ "translate-taskui-optional": "Afficher les messages facultatifs",
+ "translate-taskui-acceptqueue": "Uniquement les messages que je peux marquer comme relus",
+ "translate-taskui-reviewall": "Revoir toutes les traductions",
+ "translate-taskui-export-to-file": "Exporter au format natif",
+ "translate-taskui-export-as-po": "Exporter pour une traduction hors-ligne",
+ "translate-taction-translate": "Traduire",
+ "translate-taction-proofread": "Relecture",
+ "translate-taction-lstats": "Statistiques de langue",
+ "translate-taction-mstats": "Statistiques de groupe de messages",
+ "translate-taction-export": "Exporter",
+ "translate-taction-disabled": "Cette action est désactivée sur ce wiki.",
+ "translate-page-no-such-language": "Le code langue indiqué est incorrect.",
+ "translate-page-no-such-group": "Le groupe spécifié est incorrect.",
+ "translate-page-disabled": "Les traductions dans cette langue ont été désactivées pour ce groupe.\nMotif :\n\n<em>$1</em>",
+ "translate-language-disabled": "La traduction dans cette langue est désactivée.",
+ "translate-page-settings-legend": "Configuration",
+ "translate-page-group": "Groupe",
+ "translate-page-language": "Langue",
+ "translate-page-limit": "Limite",
+ "translate-page-limit-option": "$1 message{{PLURAL:$1||s}} par page",
+ "translate-submit": "Lister",
+ "translate-page-navigation-legend": "Navigation",
+ "translate-page-showing": "Visualisation des messages de $1 à $2 sur $3.",
+ "translate-page-showing-all": "Visualisation de $1 message{{PLURAL:$1||s}}",
+ "translate-page-showing-none": "Aucun message à visualiser.",
+ "translate-page-paging-links": "<nowiki>[</nowiki>$1<nowiki>]</nowiki> <nowiki>[</nowiki>$2<nowiki>]</nowiki>",
+ "translate-next": "Page suivante",
+ "translate-prev": "Page précédente",
+ "translate-page-description-legend": "Informations à propos du groupe",
+ "translate-page-description-hasoptional": "Ce groupe de messages contient les messages facultatifs.\nLes messages facultatifs ne devraient être traduits que quand votre langue a des exigences particulières comme ne pas utiliser d’espaces ou transformer des noms propres. $1",
+ "translate-page-description-hasoptional-open": "Afficher les messages facultatifs.",
+ "translate-page-edit": "modifier",
+ "translate-ext-url": "<hr />Site web : $1",
+ "translate-optional": "(facultatif)",
+ "translate-ignored": "(ignoré)",
+ "translate-edit-title": "Modifier « $1 »",
+ "translate-edit-definition": "Définition du message",
+ "translate-edit-translation": "Traduction",
+ "translate-edit-contribute": "contribuer",
+ "translate-edit-no-information": "<em>Ce message n’est pas documenté.\nSi vous savez où ou comment il est utilisé, vous pouvez aider les autres traducteurs en créant la documentation de ce message.</em>",
+ "translate-edit-information": "Informations concernant le message ($1)",
+ "translate-edit-in-other-languages": "Message dans d’autres langues",
+ "translate-edit-committed": "Traduction actuelle dans le logiciel",
+ "translate-edit-warnings": "Avertissements sur les traductions incomplètes",
+ "translate-edit-tmsugs": "Suggestions de la mémoire de traduction",
+ "translate-edit-tmmatch-source": "Texte source de la traduction : $1",
+ "translate-edit-tmmatch": "$1 % de correspondance",
+ "translate-use-suggestion": "Remplacer la traduction actuelle par cette suggestion.",
+ "translate-edit-nopermission": "Vous devez obtenir les droits de traduction pour traduire des messages.",
+ "translate-edit-askpermission": "Obtenir la permission",
+ "translate-magic-pagename": "Traduction étendue de MediaWiki",
+ "translate-magic-help": "Vous pouvez traduire les alias de pages spéciales, les mots magiques et les noms des espaces de noms.\n\nLes alias de pages spéciales et les mots magiques peuvent avoir plusieurs traductions.\nLes traductions sont séparées par une virgule (,).\nLes espaces de noms ne peuvent avoir qu’une seule traduction.\n\nTraduire l’espace de noms de discussion du projet <code>$1 talk</code> peut être compliqué.\n<code>$1</code> est remplacé par le nom du site (par exemple <code>{{ns:project_talk}}</code>).\nS’il n’est pas possible d’obtenir une expression valide dans votre langue sans changer le nom du site, veuillez nous contacter sur [[Support]].\n\nVous devez appartenir au groupe des traducteurs pour enregistrer toute modification.\nLes modifications ne sont pas enregistrées tant que vous n’avez pas cliqué sur le bouton « sauvegarder » en bas.",
+ "translate-magic-module": "Module :",
+ "translate-magic-submit": "Lister",
+ "translate-magic-cm-export": "Exporter",
+ "translate-magic-nothing-to-export": "Il n’y a rien à exporter.",
+ "translate-magic-cm-to-be": "Devient",
+ "translate-magic-cm-current": "Actuel",
+ "translate-magic-cm-original": "Original",
+ "translate-magic-cm-comment": "Commentaire :",
+ "translate-magic-cm-save": "Publier",
+ "translate-magic-cm-updatedusing": "Mis à jour via [[Special:AdvancedTranslate|{{int:Translate-magic-pagename}}]]",
+ "translate-magic-cm-savefailed": "La publication a échoué.",
+ "translate-magic-special": "Alias des pages spéciales",
+ "translate-magic-words": "Mots magiques",
+ "translate-magic-namespace": "Noms des espaces de noms",
+ "translate-magic-notsaved": "Votre modification n’a pas été sauvegardée !",
+ "translate-magic-errors": "Corrigez {{PLURAL:$1|l’erreur suivante|les erreurs suivantes}} dans les traductions :",
+ "translate-magic-saved": "Votre modification a été enregistrée avec succès.",
+ "translate-checks-parameters": "{{PLURAL:$2|Le paramètre suivant n’est pas utilisé|Les paramètres suivants ne sont pas utilisés}} :\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-parameters-unknown": "{{PLURAL:$2|Le paramètre suivant est inconnu|Les paramètres suivants sont inconnus}} :\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-balance": "Il y a un nombre impair de parenthèse{{PLURAL:$2||s}} :\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links": "{{PLURAL:$2|Le lien suivant pose|Les $2 liens suivants posent}} problème :\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links-missing": "{{PLURAL:$2|Le lien suivant est manquant|Les $2 liens suivants sont manquants}} :\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-xhtml": "Veuillez corriger {{PLURAL:$2|la balise suivante|les balises suivantes}} :\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-plural": "La définition utilise <nowiki>{{PLURAL:}}</nowiki> mais pas sa traduction.",
+ "translate-checks-plural-forms": "<nowiki>{{PLURAL:}}</nowiki> a reçu {{PLURAL:$1|une forme|$1 formes}} mais {{PLURAL:$2|une seule est supportée|seules $2 sont supportées}} (hors les formes 0= et 1=).",
+ "translate-checks-plural-dupe": "<nowiki>{{PLURAL:}}</nowiki> a des formes dupliquées au final. <nowiki>{{PLURAL:$1|sheep|sheep}}</nowiki> devrait être écrit ainsi: <nowiki>{{PLURAL:$1|sheep}}</nowiki>.",
+ "translate-checks-pagename": "Espace de noms modifié depuis la définition",
+ "translate-checks-format": "Cette traduction ne suit pas la définition ou a une syntaxe incorrecte : $1",
+ "translate-checks-escape": "Les échappements suivants peuvent être accidentels : <strong>$1</strong>",
+ "translate-checks-parametersnotequal": "Le nombre de paramètres est {{PLURAL:$1|$1}} ; ce devrait être {{PLURAL:$2|$2}}.",
+ "translate-checks-malformed": "<nowiki>$1</nowiki> est incorrect.",
+ "translate-checks-fudforum-syntax": "Utiliser <nowiki>$1</nowiki> au lieu de <nowiki>$2</nowiki> dans ce projet.",
+ "translate-pref-nonewsletter": "Ne pas m’envoyer les courriels d’informations",
+ "translate-pref-editassistlang": "Langues d’assistance :",
+ "prefs-translate": "Options de traduction",
+ "translate-pref-editassistlang-help": "Liste de codes de langues séparés par une virgule.\nLa traduction d’un message dans ces langues est affiché quand vous êtes en train de le traduire.\nLa liste par défaut des langues varie en fonction de votre langue.",
+ "translate-pref-editassistlang-bad": "Code langue invalide dans la liste :\n<nowiki>$1</nowiki>.",
+ "right-translate": "Modifier avec l’interface de traduction",
+ "right-translate-manage": "Gérer les groupes de message",
+ "action-translate-manage": "gérer les groupes de messages",
+ "right-translate-import": "Importer les traductions hors ligne",
+ "action-translate-import": "importer les traductions hors-ligne",
+ "right-translate-messagereview": "Examiner les traductions",
+ "right-translate-groupreview": "Modifier l'état de flux de travail des groupes de message",
+ "translate-rc-translation-filter": "Filtrer les traductions :",
+ "translate-rc-translation-filter-no": "Ne rien faire",
+ "translate-rc-translation-filter-only": "Afficher uniquement les traductions",
+ "translate-rc-translation-filter-filter": "Exclure les traductions",
+ "translate-rc-translation-filter-site": "Uniquement les modifications de messages du site",
+ "translationstats": "Statistiques de traduction",
+ "translate-stats-edits": "Modifications",
+ "translate-stats-users": "Traducteurs",
+ "translate-stats-registrations": "Inscriptions",
+ "translate-stats-reviews": "Relectures",
+ "translate-stats-reviewers": "Relecteurs",
+ "translate-statsf-intro": "Vous pouvez générer des statistiques simples via ce formulaire.\nToutes les valeurs ont des limites supérieure et inférieure.",
+ "translate-statsf-options": "Options du graphique",
+ "translate-statsf-width": "Largeur en pixels :",
+ "translate-statsf-height": "Hauteur en pixels",
+ "translate-statsf-days": "Date de début:",
+ "translate-statsf-start": "Date de début:",
+ "translate-statsf-scale": "Granularité :",
+ "translate-statsf-scale-months": "Mois",
+ "translate-statsf-scale-weeks": "Semaines",
+ "translate-statsf-scale-days": "Jours",
+ "translate-statsf-scale-hours": "Heures",
+ "translate-statsf-count": "Mesure :",
+ "translate-statsf-count-edits": "Nombre de modifications",
+ "translate-statsf-count-users": "Traducteurs actifs",
+ "translate-statsf-count-registrations": "Nouveaux utilisateurs",
+ "translate-statsf-count-reviews": "Relectures de traduction",
+ "translate-statsf-count-reviewers": "Relecteurs",
+ "translate-statsf-language": "Liste de codes de langues séparés par des virgules :",
+ "translate-statsf-group": "Liste de codes de groupes séparés par des virgules :",
+ "translate-statsf-submit": "Prévisualiser",
+ "translate-tag-category": "Pages traduisibles",
+ "translate-tag-page-desc": "Traduction de la page wiki [[$2|$1]] depuis $3 ($4).",
+ "translate-sidebar-alltrans": "Dans les autres langues",
+ "translations": "Toutes les traductions",
+ "translations-summary": "Entrez un nom de message ci-dessous pour visualiser toutes les traductions disponibles.",
+ "translate-translations-no-message": "« $1 » n’est pas un message traduisible",
+ "translate-translations-none": "Il n’y a pas de traduction pour « $1 »",
+ "translate-translations-count": "Il existe {{PLURAL:$1|une traduction|$1 traductions}}.",
+ "translate-translations-fieldset-title": "Message",
+ "translate-translations-messagename": "Nom :",
+ "translate-translations-project": "Projet :",
+ "translate-translations-including-no-param": "Veuillez spécifier une clé de message correcte dans le paramètre ''subpage''",
+ "translate-translations-history-short": "h",
+ "languagestats": "Statistiques des langues",
+ "languagestats-summary": "Cette page affiche les statistiques de traduction de tous les groupes de messages dans une langue donnée.",
+ "messagegroupstats-summary": "Cette page affiche les statistiques de groupe de messages.",
+ "languagestats-stats-for": "Statistiques de traduction pour $1 ($2).",
+ "languagestats-recenttranslations": "traductions récentes",
+ "translate-langstats-incomplete": "Certaines statistiques sur cette page sont incomplètes. Merci de la recharger pour en obtenir davantage.",
+ "translate-langstats-expand": "Développer",
+ "translate-langstats-collapse": "Replier",
+ "translate-langstats-expandall": "Tout développer",
+ "translate-langstats-collapseall": "Tout replier",
+ "translate-language-code": "Code de langue",
+ "translate-language-code-field-name": "Code de langue :",
+ "translate-suppress-complete": "Ne pas afficher les groupes de messages entièrement traduits",
+ "translate-ls-noempty": "Supprimer complètement les groupes de message non traduits",
+ "translate-language": "Langue",
+ "translate-total": "Messages",
+ "translate-untranslated": "Non traduits",
+ "translate-percentage-complete": "Achèvement",
+ "translate-percentage-fuzzy": "Désuets",
+ "translate-languagestats-overall": "Tous les groupes de messages ensemble",
+ "translate-ls-submit": "Afficher les statistiques",
+ "translate-ls-column-group": "Groupe de messages",
+ "translate-mgs-pagename": "Statistiques du groupe de messages",
+ "translate-mgs-fieldset": "Afficher les préférences",
+ "translate-mgs-group": "Groupe de messages:",
+ "translate-mgs-nocomplete": "Ne pas afficher les langues qui ont terminé leur traduction",
+ "translate-mgs-noempty": "Ne pas afficher les langues qui n’ont aucune traduction",
+ "translate-mgs-submit": "Afficher les statistiques",
+ "translate-mgs-column-language": "Langue",
+ "translate-mgs-totals": "Toutes les langues ensemble",
+ "translate-mgs-invalid-group": "Le groupe spécifié $1 n’existe pas.",
+ "translate-mgs-nothing": "Rien à afficher pour les statistiques demandées.",
+ "supportedlanguages": "Langues prises en charge",
+ "supportedlanguages-summary": "Cette page affiche une liste de toutes les langues prises en charge par {{SITENAME}}, avec les noms des traducteurs qui travaillent dans cette langue.\nLe nom d'un traducteur apparaît en plus gros en fonction du nombre de modifications auxquelles il a contribué.\nLa couleur du soulignement indique si le traducteur a été actif ici récemment.",
+ "supportedlanguages-colorlegend": "Légende pour la couleur: Dernière traduction il y a $1 jours.",
+ "supportedlanguages-portallink": "[$1] $2 — $3",
+ "supportedlanguages-portallink-nocldr": "<nowiki>[</nowiki>$1<nowiki>]</nowiki> $2",
+ "supportedlanguages-translators": "{{PLURAL:$2|{{GENDER:$3|Traducteur|Traductrice}}|Traducteurs}} : $1",
+ "supportedlanguages-recenttranslations": "traductions récentes",
+ "supportedlanguages-count": "$1 {{PLURAL:$1|langue|langues}} au total.",
+ "supportedlanguages-activity": "$1 : $2 modification{{PLURAL:$2||s}} - Dernière modification il y a $3 jour{{PLURAL:$3||s}}",
+ "translate-save": "Publier ($1)",
+ "translate-jssti-add": "Ajouter à la liste",
+ "managemessagegroups": "Gestion du groupe des messages",
+ "translate-smg-notallowed": "Vous n’êtes pas autorisé à effectuer cette action.",
+ "translate-smg-nochanges": "Il n’y a aucune modification à traiter.",
+ "translate-smg-submit": "Soumettre les modifications pour traitement",
+ "translate-smg-submitted": "Les définitions de message ont été mises à jour. Les modifications sont traitées en arrière-plan.",
+ "translate-smg-more": "Il y aura d’autres modifications à effectuer après avoir envoyé ces modifications.",
+ "translate-smg-left": "Contenu du message dans le wiki",
+ "translate-smg-right": "Modifications en cours de transfert",
+ "translate-manage-import-diff": "Message $1 | Actions : $2",
+ "translate-manage-import-new": "Nouveau message $1",
+ "translate-manage-import-deleted": "Message supprimé $1",
+ "translate-manage-action-import": "Importation",
+ "translate-manage-action-conflict": "Importer et marquer comme flou",
+ "translate-manage-action-ignore": "Ignorer",
+ "translate-manage-action-fuzzy": "Importer et marquer les traductions comme floues",
+ "translate-manage-nochanges": "Il n’y a pas de modification dans les définitions des messages de ce groupe.",
+ "translate-manage-nochanges-other": "Il n’y a eu aucune modification pour cette langue.\nUtilisez le lien ci-dessous pour revenir à la vue de détail du groupe.",
+ "translate-manage-inconsistent": "Une inconsistance a été détectée dans la requête.\nVérifiez s’il y a eu des modifications et ressayez. Détails : $1.",
+ "translate-manage-toolong": "La durée maximale du temps de traitement de $1 seconde{{PLURAL:$1||s}} a été dépassé.\nRenvoyez le formulaire pour continuer le traitement.",
+ "translate-manage-import-summary": "Importation d’une nouvelle version depuis une source externe.",
+ "translate-manage-conflict-summary": "Importation d’une nouvelle version depuis une source externe. Vérifiez s’il vous plaît.",
+ "translate-manage-fuzzy-summary": "La définition du message a été modifiée",
+ "translate-manage-submit": "Exécuter",
+ "translate-manage-intro-other": "Ci-dessous figure une liste des modifications dans la langue $1.\nRelisez les modifications et choisissez une action à effectuer pour chacune.\nSi vous décidez d’ignorer les modifications, cette action ne sera que temporaire.",
+ "translate-manage-import-ok": "Importé : $1",
+ "translate-manage-import-done": "Import terminé !",
+ "importtranslations": "Importer les traductions",
+ "translate-import-from-local": "Importer un fichier local :",
+ "translate-import-load": "Charger le fichier",
+ "translate-import-err-dl-failed": "Impossible d’accéder au fichier :\n$1",
+ "translate-import-err-ul-failed": "Le téléversement du fichier n’a pas été réussi",
+ "translate-import-err-invalid-title": "Le nom du fichier fourni <nowiki>$1</nowiki> est invalide.",
+ "translate-import-err-no-such-file": "Le fichier <nowiki>$1</nowiki> n’existe pas ou n’a pas été importé localement.",
+ "translate-import-err-stale-group": "Le groupe de messages auquel ce fichier appartient n’existe pas.",
+ "translate-import-err-no-headers": "Le fichier n’est pas un fichier ''Gettext'' bien formé dans le format attendu par l’extension ''Translate'' :\nil est impossible de déterminer le groupe et la langue depuis les entêtes du fichier.",
+ "translate-import-err-warnings": "Le fichier n’est pas bien formé.\nAssurez-vous que votre outil de traduction ne supprime pas les champs « msgctxt ».\nDétails : $1",
+ "translate-js-summary": "Résumé :",
+ "translate-js-save": "Enregistrer",
+ "translate-js-next": "Enregistrer et ouvrir le suivant",
+ "translate-js-nonext": "C’était le dernier message de cette page.",
+ "translate-js-skip": "Aller au suivant",
+ "translate-js-save-failed": "L’enregistrement a échoué. Veuillez signaler cette erreur.",
+ "translate-js-history": "Historique de traduction",
+ "translate-js-support": "Poser une question",
+ "translate-js-support-title": "Demandez de l’aide s’il n’y a pas suffisamment d’informations pour traduire ce message correctement.",
+ "translate-js-support-unsaved-warning": "Vous avez des traductions non enregistrées.",
+ "translate-gs-pos": "Pos.",
+ "translate-gs-code": "Code",
+ "translate-gs-continent": "Continent",
+ "translate-gs-speakers": "Locuteurs",
+ "translate-gs-score": "Pointage",
+ "translate-gs-multiple": "Multiple",
+ "translate-gs-count": "Compte",
+ "translate-gs-total": "Total",
+ "translate-gs-avgscore": "Pointage moyen",
+ "translate-documentation-language": "Documentation du message",
+ "translate-searchprofile": "Traductions",
+ "translate-searchprofile-tooltip": "Rechercher dans toutes les traductions",
+ "translate-search-languagefilter": "Filtrer par langue :",
+ "translate-search-nofilter": "Aucun filtrage",
+ "translate-messagereview-submit": "Marquer comme relu",
+ "translate-messagereview-progress": "En cours de marquage comme relu…",
+ "translate-messagereview-failure": "Échec du marquage comme relu : $1",
+ "translate-messagereview-done": "Relu",
+ "translate-messagereview-reviews": "Relu par {{PLURAL:$1| un utilisateur| $1 utilisateurs}}",
+ "translate-messagereview-reviewswithyou": "Relu par {{PLURAL:$1|vous|$1 utilisateurs, vous y compris}}",
+ "api-error-invalidrevision": "La traduction n'a pas été trouvée",
+ "api-error-unknownmessage": "Le message n'a pas été trouvé",
+ "api-error-fuzzymessage": "La traduction est marquée comme « floue »",
+ "api-error-owntranslation": "Vous ne pouvez pas marquer vos propres traductions comme relues",
+ "translate-messagereview-no-fuzzy": "Les traductions douteuses ne peuvent pas être marquées comme relues.",
+ "translate-messagereview-no-own": "Vous ne pouvez pas marquer vos propres traductions comme relues.",
+ "translate-messagereview-doit": "Marquer cette traduction comme relue.",
+ "group-translate-proofr.css": "/* Le CSS placé ici n’affectera que les relecteurs de traduction */",
+ "group-translate-proofr.js": "/* Le Javascript placé ici n’affectera que les relecteurs de traduction */",
+ "log-name-translationreview": "Journal de relecture des traductions",
+ "log-description-translationreview": "Journal de toutes les relectures des traductions et des groupes de message.",
+ "logentry-translationreview-message": "$1 {{GENDER:$2|a relu}} la traduction $3",
+ "logentry-translationreview-group": "$1 {{GENDER:$2|a modifié}} l’état des traductions $4 de $3 de $6 à $7",
+ "group-translate-sandboxed": "Traducteurs non approuvés",
+ "group-translate-sandboxed-member": "{{GENDER:$1|traducteur non approuvé|traductrice non approuvée}}",
+ "right-translate-sandboxmanage": "Gérer les utilisateurs limités au bac à sable",
+ "action-translate-sandboxmanage": "gérer les utilisateurs limités au bac à sable",
+ "right-translate-sandboxaction": "Exécuter des actions sur liste blanche pour les utilisateurs non-enregistrés",
+ "action-translate-sandboxaction": "exécuter des actions sur liste blanche pour les utilisateurs non-enregistrés",
+ "translate-workflow-state-": "(désactivé)",
+ "translate-workflowstatus": "Statut : $1",
+ "translate-workflow-set-do": "Activé",
+ "translate-workflow-set-doing": "Activation...",
+ "translate-workflow-set-done": "Activé !",
+ "translate-workflow-set-error-alreadyset": "L’état demandé est identique à l’état courant.",
+ "translate-workflow-autocreated-summary": "Création automatique de la page pour l’état du processus de travail $1",
+ "translate-stats-workflow": "Statut",
+ "translate-workflowgroup-label": "États du processus de travail",
+ "translate-workflowgroup-desc": "Ce groupe de messages montre les états du processus de travail de traduction.\nLes états sont définis dans la variable de configuration $wgTranslateWorkflowStates.",
+ "translate-dynagroup-recent-label": "Traductions récentes",
+ "translate-dynagroup-recent-desc": "Ce groupe de messages montre toutes les traductions récentes faites dans cette langue.\nIl est surtout utilisé pour les tâches de relecture.",
+ "translate-dynagroup-additions-label": "Ajouts récents",
+ "translate-dynagroup-additions-desc": "Ce groupe de messages affiche les messages nouveaux et modifiés.",
+ "translate-dynagroup-by": "Traduction faite par {{GENDER:$1|$1}}",
+ "translate-dynagroup-byc": "Traduction faite par {{GENDER:$1|$1}} ($2)",
+ "translate-dynagroup-last": "Dernière modification par {{GENDER:$1|$1}}",
+ "translate-dynagroup-lastc": "Dernière modification par {{GENDER:$1|$1}} ($2)",
+ "translate-gethelp": "Aide",
+ "translate-msggroupselector-projects": "Groupe de messages",
+ "translate-msggroupselector-search-placeholder": "Rechercher des groupes",
+ "translate-msggroupselector-search-all": "Tous",
+ "translate-msggroupselector-search-recent": "Récent",
+ "translate-msggroupselector-view-subprojects": "$1 {{PLURAL:$1|sous-projet|sous-projets}}",
+ "tux-languageselector": "Traduire en",
+ "tux-tab-all": "Tous",
+ "tux-tab-untranslated": "Non traduit",
+ "tux-tab-outdated": "Obsolète",
+ "tux-tab-translated": "Traduit",
+ "tux-tab-unproofread": "Non relu",
+ "tux-edit": "Modifier",
+ "tux-status-optional": "Facultatif",
+ "tux-status-fuzzy": "Obsolète",
+ "tux-status-proofread": "Corrigé",
+ "tux-status-translated": "Traduit",
+ "tux-status-saving": "Enregistrement en cours…",
+ "tux-status-unsaved": "Non enregistrée",
+ "tux-editor-placeholder": "Votre traduction",
+ "tux-editor-paste-original-button-label": "Coller le texte source",
+ "tux-editor-discard-changes-button-label": "Annuler les modifications",
+ "tux-editor-save-button-label": "Enregistrer la traduction",
+ "tux-editor-skip-button-label": "Aller au suivant",
+ "tux-editor-cancel-button-label": "Annuler",
+ "tux-editor-confirm-button-label": "Confirmer la traduction",
+ "tux-editor-shortcut-info": "Appuyez sur « $1 » pour enregistrer ou « $2 » pour passer au message suivant ou « $3 » pour d’autres raccourcis.",
+ "tux-editor-edit-desc": "Modifier la documentation",
+ "tux-editor-add-desc": "Ajouter une documentation",
+ "tux-editor-suggestions-title": "Suggestions",
+ "tux-editor-in-other-languages": "En d’autres langues",
+ "tux-editor-need-more-help": "Besoin d’aide ?",
+ "tux-editor-ask-help": "Demander plus d’information",
+ "tux-editor-tm-match": "$1% correspond",
+ "tux-warnings-more": "{{PLURAL:$1|$1 de plus}}",
+ "tux-warnings-hide": "masquer",
+ "tux-editor-save-failed": "Échec de l’enregistrement de la traduction : $1",
+ "tux-editor-n-uses": "utilisé $1 {{PLURAL:$1|fois}}",
+ "tux-editor-message-desc-more": "Voir davantage",
+ "tux-editor-message-desc-less": "Afficher moins",
+ "tux-editor-clear-translated": "Masquer la traduction",
+ "tux-editor-proofreading-mode": "Relecture",
+ "tux-editor-translate-mode": "Liste",
+ "tux-editor-proofreading-hide-own-translations": "Masquer vos traductions",
+ "tux-editor-proofreading-show-own-translations": "Afficher vos traductions",
+ "tux-proofread-action-tooltip": "Marquer comme relu",
+ "tux-proofread-edit-label": "Modifier",
+ "tux-editor-page-mode": "Page",
+ "tux-editor-outdated-warning": "Cette traduction peut nécessiter une mise à jour.",
+ "tux-editor-outdated-warning-diff-link": "Afficher les différences",
+ "tux-editor-doc-editor-placeholder": "Documentation du message",
+ "tux-editor-doc-editor-save": "Enregistrer la documentation",
+ "tux-editor-doc-editor-cancel": "Annuler",
+ "tux-messagetable-more-messages": "$1 {{PLURAL:$1|message|messages}} de plus",
+ "tux-messagetable-loading-messages": "Chargement {{PLURAL:$1|du message|des messages}}…",
+ "tux-message-filter-placeholder": "Liste de filtres",
+ "tux-message-filter-result": "$1 {{PLURAL:$1|résultat trouvé|résultats trouvés}} pour « $2 »",
+ "tux-message-filter-advanced-button": "Recherche avancée",
+ "tux-message-filter-optional-messages-label": "Messages facultatifs",
+ "tux-proofread-translated-by-self": "Traduit par vous",
+ "tux-empty-list-all": "Ce groupe de messages est vide",
+ "tux-empty-list-all-guide": "Sélectionner un groupe de message différent à traduire",
+ "tux-translate-page-no-such-group": "<strong>Le groupe indiqué n’existe pas.</strong> Sélectionnez un autre groupe de messages.",
+ "tux-empty-list-translated": "Aucun message traduit",
+ "tux-empty-list-translated-guide": "Vous pouvez aider à traduire",
+ "tux-empty-list-translated-action": "Traduire",
+ "tux-empty-no-messages-to-display": "Aucun message à afficher.",
+ "tux-empty-there-are-optional": "Il y a des messages facultatifs n’apparaissant pas dans la liste",
+ "tux-empty-show-optional-messages": "Afficher les messages facultatifs",
+ "tux-empty-no-outdated-messages": "Pas de messages obsolètes",
+ "tux-empty-nothing-to-proofread": "Rien à relire",
+ "tux-empty-you-can-help-providing": "Vous pouvez aider en apportant de nouvelles traductions",
+ "tux-empty-nothing-new-to-proofread": "Rien de nouveau à relire",
+ "tux-empty-you-can-review-already-proofread": "Vous pouvez relire les traductions déjà relues par d’autres.",
+ "tux-empty-list-other": "Rien à traduire",
+ "tux-empty-list-other-guide": "Vous pouvez aider à relire les traductions existantes",
+ "tux-empty-list-other-action": "Relire les traductions",
+ "tux-empty-list-other-link": "Afficher tous les messages",
+ "tux-editor-close-tooltip": "Fermer",
+ "tux-editor-expand-tooltip": "Développer",
+ "tux-editor-collapse-tooltip": "Replier",
+ "tux-editor-message-tools-history": "Historique",
+ "tux-editor-message-tools-delete": "Supprimer",
+ "tux-editor-message-tools-translations": "Toutes les traductions",
+ "tux-editor-loading": "Chargement en cours…",
+ "translate-search-more-languages-info": "$1 {{PLURAL:$1|langue supplémentaire|langues supplémentaires}}",
+ "translate-statsbar-tooltip": "$1% traduit, $2% relu",
+ "translate-statsbar-tooltip-with-fuzzy": "$1% traduit, $2% relu, $3% obsolète",
+ "translate-search-more-groups-info": "$1 groupe{{PLURAL:$1||s}} de plus",
+ "translate-ulsdep-title": "Erreur de configuration",
+ "translate-ulsdep-body": "L’extension de traduction dépend de l’[https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:UniversalLanguageSelector Universal extension Sélecteur de langue].",
+ "tux-session-expired": "Vous n’êtes plus connecté. Veuillez vous connecter dans un autre onglet. Sinon, faites une copie des traductions non enregistrées, connectez-vous et revenez sur cette page."
+}
diff --git a/MLEB/Translate/i18n/core/frc.json b/MLEB/Translate/i18n/core/frc.json
new file mode 100644
index 00000000..02ab71a5
--- /dev/null
+++ b/MLEB/Translate/i18n/core/frc.json
@@ -0,0 +1,15 @@
+{
+ "@metadata": {
+ "authors": [
+ "Cedric31",
+ "RoyAlcatraz"
+ ]
+ },
+ "translate": "Tradusir",
+ "translate-submit": "Charcher",
+ "translate-next": "Page suivante",
+ "translate-prev": "Page avant",
+ "translate-optional": "(de choix)",
+ "translate-ignored": "(ignoré)",
+ "translate-language": "Langue:"
+}
diff --git a/MLEB/Translate/i18n/core/frp.json b/MLEB/Translate/i18n/core/frp.json
new file mode 100644
index 00000000..111129c0
--- /dev/null
+++ b/MLEB/Translate/i18n/core/frp.json
@@ -0,0 +1,309 @@
+{
+ "@metadata": {
+ "authors": [
+ "Cedric31",
+ "ChrisPtDe"
+ ]
+ },
+ "translate": "Traduire",
+ "translate-desc": "[[Special:Translate|Pâge spèciâla]] por traduire MediaWiki et en-delé",
+ "translate-taskui-view": "Fâre vêre tôs los mèssâjos",
+ "translate-taskui-untranslated": "Fâre vêre los mèssâjos pas traduits",
+ "translate-taskui-optional": "Fâre vêre los mèssâjos u chouèx",
+ "translate-taskui-acceptqueue": "Solament los mèssâjos que pouè accèptar",
+ "translate-taskui-reviewall": "Revêre totes les traduccions",
+ "translate-taskui-export-to-file": "Èxportar u format natif",
+ "translate-taskui-export-as-po": "Èxportar por na traduccion en defôr de legne",
+ "translate-taction-translate": "Traduire",
+ "translate-taction-proofread": "Corregiér",
+ "translate-taction-lstats": "Statistiques de lengoua",
+ "translate-taction-mstats": "Statistiques de groupo de mèssâjos",
+ "translate-taction-export": "Èxportar",
+ "translate-taction-disabled": "Cel’accion est dèsactivâye sur ceti vouiqui.",
+ "translate-page-no-such-language": "Lo code lengoua spècifiâ est fôx.",
+ "translate-page-no-such-group": "Lo groupo spècifiâ est fôx.",
+ "translate-page-disabled": "Les traduccions dens cela lengoua sont étâyes dèsactivâyes por ceti groupo.\nRêson :\n\n<em>$1</em>",
+ "translate-language-disabled": "La traduccion dens cela lengoua est dèsactivâye.",
+ "translate-page-settings-legend": "Configuracion",
+ "translate-page-group": "Groupo",
+ "translate-page-language": "Lengoua",
+ "translate-page-limit": "Limita",
+ "translate-page-limit-option": "$1 mèssâjo{{PLURAL:$1||s}} per pâge",
+ "translate-submit": "Listar",
+ "translate-page-navigation-legend": "Navigacion",
+ "translate-page-showing": "Visualisacion des mèssâjos de $1 a $2 sur $3.",
+ "translate-page-showing-all": "Visualisacion de $1 mèssâjo{{PLURAL:$1||s}}.",
+ "translate-page-showing-none": "Gins de mèssâjo a fâre vêre.",
+ "translate-next": "Pâge aprés",
+ "translate-prev": "Pâge devant",
+ "translate-page-description-legend": "Enformacions sur lo groupo",
+ "translate-page-description-hasoptional": "Ceti groupo de mèssâjos contint los mèssâjos u chouèx.\nLos mèssâjos u chouèx devriant étre traduits ren que quand voutra lengoua at des ègzigences spèciâles\ncoment pas empleyér d’èspâços ou ben la translitèracion des noms prôpros. $1",
+ "translate-page-description-hasoptional-open": "Fâre vêre los mèssâjos u chouèx.",
+ "translate-page-edit": "changiér",
+ "translate-ext-url": "<hr />Seto vouèbe : $1",
+ "translate-optional": "(u chouèx)",
+ "translate-ignored": "(ignorâ)",
+ "translate-edit-title": "Changiér « $1 »",
+ "translate-edit-definition": "Dèfinicion du mèssâjo",
+ "translate-edit-translation": "Traduccion",
+ "translate-edit-contribute": "édiér",
+ "translate-edit-no-information": "''Ceti mèssâjo est pas documentâ.''\n''Se vos sâde yô ou ben coment il est empleyê, vos pouede édiér los ôtros traductors en fassent la documentacion de ceti mèssâjo.''",
+ "translate-edit-information": "Enformacions sur lo mèssâjo ($1)",
+ "translate-edit-in-other-languages": "Mèssâjo dens d’ôtres lengoues",
+ "translate-edit-committed": "Traduccion d’ora dedens la programeria",
+ "translate-edit-warnings": "Avèrtissements sur les traduccions encomplètes",
+ "translate-edit-tmsugs": "Idês de mèmouères de traduccion et de la traduccion ôtomatica",
+ "translate-edit-tmmatch-source": "Tèxto sôrsa de la traduccion : $1",
+ "translate-edit-tmmatch": "$1 % de corrèspondance",
+ "translate-use-suggestion": "Remplaciér la traduccion d’ora per cet’idê.",
+ "translate-edit-nopermission": "Vos dête avêr la pèrmission de traduire los mèssâjos.",
+ "translate-edit-askpermission": "Demandar la pèrmission",
+ "translate-magic-pagename": "Traduccion ètendua de MediaWiki",
+ "translate-magic-help": "Vos pouede traduire los aliâs de les pâges spèciâles, los mots magicos et los noms des èspâços de noms.\n\nLos aliâs de les pâges spèciâles et los mots magicos pôvont avêr un mouél de traduccions.\nLes traduccions sont sèparâyes per na virgula (,).\nLos èspâços de noms pôvont avêr ren que yona traduccion.\n\nTraduire l’èspâço de noms de discussion du projèt <code>$1 talk</code> pôt étre mâlésiê.\n<code>$1</code> est remplaciê per lo nom du seto (per ègzemplo <code>{{ns:project_talk}}</code>).\nS’o est pas possiblo d’obtegnir n’èxprèssion valida dens voutra lengoua sen changiér lo nom du seto, vos volyéd veriér vers l’[[Support|assistance]].\n\nVos dête étre un traductor por encartar los changements.\nLos changements sont pas encartâs tant que vos éd pas clicâ sur lo boton « Encartar » d’avâl.",
+ "translate-magic-module": "Modulo :",
+ "translate-magic-submit": "Listar",
+ "translate-magic-cm-export": "Èxportar",
+ "translate-magic-nothing-to-export": "Y at ren a èxportar.",
+ "translate-magic-cm-to-be": "Vint",
+ "translate-magic-cm-current": "Ora",
+ "translate-magic-cm-original": "Originâl",
+ "translate-magic-cm-comment": "Comentèro :",
+ "translate-magic-cm-save": "Encartar",
+ "translate-magic-cm-updatedusing": "Betâ a jorn avouéc [[Special:AdvancedTranslate|{{int:Translate-magic-pagename}}]]",
+ "translate-magic-cm-savefailed": "L’encartâjo at pas reussi.",
+ "translate-magic-special": "Aliâs de les pâges spèciâles",
+ "translate-magic-words": "Mots magicos",
+ "translate-magic-namespace": "Noms des èspâços de noms",
+ "translate-magic-notsaved": "Voutron changement est pas étâ encartâ !",
+ "translate-magic-errors": "Volyéd corregiér {{PLURAL:$1|ceta fôta|cetes fôtes}} dedens les traduccions :",
+ "translate-magic-saved": "Voutron changement est étâ encartâ avouéc reusséta.",
+ "translate-checks-parameters": "{{PLURAL:$2|Ceti paramètro est pas empleyê|Cetos paramètros sont pas empleyês}} :\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-parameters-unknown": "{{PLURAL:$2|Ceti paramètro est encognu|Cetos paramètros sont encognus}} :\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-balance": "Y at un nombro mâl-par de parentès{{PLURAL:$2|a|es}} :\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links": "{{PLURAL:$2|Ceti lim est|Cetos $2 lims sont}} pas de sûr :\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links-missing": "{{PLURAL:$2|Ceti lim est manquent|Cetos $2 lims sont manquents}} :\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-xhtml": "Volyéd corregiér {{PLURAL:$2|ceta balisa|cetes balises}} :\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-plural": "La dèfinicion empleye <nowiki>{{PLURAL:}}</nowiki> mas pas la sina traduccion.",
+ "translate-checks-pagename": "Èspâço de noms changiê dês la dèfinicion",
+ "translate-checks-format": "Ceta traduccion siut pas la dèfinicion ou ben el at na sintaxa fôssa : $1",
+ "translate-checks-escape": "Cetos èchapaments pôvont étre emprèvus : <strong>$1</strong>",
+ "translate-checks-parametersnotequal": "Lo nombro de paramètros est {{PLURAL:$1|$1}} ; cen devrêt étre {{PLURAL:$2|$2}}.",
+ "translate-checks-malformed": "<nowiki>$1</nowiki> est fôx.",
+ "translate-checks-fudforum-syntax": "Empleyéd <nowiki>$1</nowiki> nan pas <nowiki>$2</nowiki> dens ceti projèt.",
+ "translate-pref-nonewsletter": "Pas mè mandar les lètres de novèles per mèssageria èlèctronica",
+ "translate-pref-editassistlang": "Lengoues d’assistance :",
+ "prefs-translate": "Chouèx de traduccion",
+ "translate-pref-editassistlang-help": "Lista de codes lengoues sèparâs per na virgula.\nLa traduccion d’un mèssâjo dens cetes lengoues est montrâye quand vos éte aprés lo traduire.\nLa lista de les lengoues per dèfôt dèpend de voutra lengoua.",
+ "translate-pref-editassistlang-bad": "Code lengoua envalido dedens la lista :\n<nowiki>$1</nowiki>.",
+ "right-translate": "Changiér avouéc l’entèrface de traduccion",
+ "right-translate-manage": "Administrar los groupos de mèssâjos",
+ "action-translate-manage": "administrar los groupos de mèssâjos",
+ "right-translate-import": "Importar les traduccions en defôr de legne",
+ "action-translate-import": "importar les traduccions en defôr de legne",
+ "right-translate-messagereview": "Revêre les traduccions",
+ "right-translate-groupreview": "Changiér l’ètat du flux d’ôvra des groupos de mèssâjos",
+ "translate-rc-translation-filter": "Filtrar les traduccions :",
+ "translate-rc-translation-filter-no": "Pas ren fâre",
+ "translate-rc-translation-filter-only": "Fâre vêre ren que les traduccions",
+ "translate-rc-translation-filter-filter": "Èxcllure les traduccions",
+ "translate-rc-translation-filter-site": "Solament los changements de mèssâjos du seto",
+ "translationstats": "Statistiques de traduccion",
+ "translate-stats-edits": "Changements",
+ "translate-stats-users": "Traductors",
+ "translate-stats-registrations": "Encartâjos",
+ "translate-stats-reviews": "Rèvisions",
+ "translate-stats-reviewers": "Rèvisors",
+ "translate-statsf-intro": "Vos pouede fâre des statistiques simples avouéc ceti formulèro.\nTotes les valors ont des limites d’amont et desot.",
+ "translate-statsf-options": "Chouèx du diagramo",
+ "translate-statsf-width": "Largior en pixèls :",
+ "translate-statsf-height": "Hôtior en pixèls :",
+ "translate-statsf-days": "Temps en jorns :",
+ "translate-statsf-start": "Dâta de comencement :",
+ "translate-statsf-scale": "Granularitât :",
+ "translate-statsf-scale-months": "Mês",
+ "translate-statsf-scale-weeks": "Semanes",
+ "translate-statsf-scale-days": "Jorns",
+ "translate-statsf-scale-hours": "Hores",
+ "translate-statsf-count": "Mesera :",
+ "translate-statsf-count-edits": "Nombro de changements",
+ "translate-statsf-count-users": "Traductors actifs",
+ "translate-statsf-count-registrations": "Novéls utilisators",
+ "translate-statsf-count-reviews": "Rèvisions de traduccion",
+ "translate-statsf-count-reviewers": "Rèvisors",
+ "translate-statsf-language": "Lista de codes lengoues sèparâs per des virgules :",
+ "translate-statsf-group": "Lista de codes de groupos sèparâs per des virgules :",
+ "translate-statsf-submit": "Prèvisualisar",
+ "translate-tag-category": "Pâges traduisibles",
+ "translate-tag-page-desc": "Traduccion de la pâge vouiqui [[$2|$1]].",
+ "translate-sidebar-alltrans": "Dens les ôtres lengoues",
+ "translations": "Totes les traduccions",
+ "translations-summary": "Buchiéd un nom de mèssâjo ce-desot por fâre vêre totes les traduccions disponibles.",
+ "translate-translations-no-message": "« $1 » est pas un mèssâjo traduisiblo",
+ "translate-translations-none": "Y at gins de traduccion por « $1 »",
+ "translate-translations-count": "Ègziste {{PLURAL:$1|yona traduccion|$1 traduccions}}.",
+ "translate-translations-fieldset-title": "Mèssâjo",
+ "translate-translations-messagename": "Nom :",
+ "translate-translations-project": "Projèt :",
+ "translate-translations-including-no-param": "Volyéd spècifiar na cllâf de mèssâjo valida dedens lo paramètro ''sot-pâge''",
+ "translate-translations-history-short": "h",
+ "languagestats": "Statistiques de les lengoues",
+ "languagestats-summary": "Ceta pâge fât vêre les statistiques de traduccion de tôs los groupos de mèssâjos dens na lengoua balyêye.",
+ "languagestats-stats-for": "Statistiques de traduccion por $1 ($2).",
+ "languagestats-recenttranslations": "novèles traduccions",
+ "translate-langstats-incomplete": "Y at des statistiques sur ceta pâge que sont encomplètes. La volyéd rechargiér por nen obtegnir més.",
+ "translate-langstats-expand": "dèpleyér",
+ "translate-langstats-collapse": "repleyér",
+ "translate-langstats-expandall": "dèpleyér tot",
+ "translate-langstats-collapseall": "repleyér tot",
+ "translate-language-code": "Code lengoua",
+ "translate-language-code-field-name": "Code lengoua :",
+ "translate-suppress-complete": "Pas fâre vêre los groupos de mèssâjos tot traduits",
+ "translate-ls-noempty": "Pas fâre vêre los groupos de mèssâjos pas tot traduits",
+ "translate-language": "Lengoua",
+ "translate-total": "Mèssâjos",
+ "translate-untranslated": "Pas traduits",
+ "translate-percentage-complete": "Avance",
+ "translate-percentage-fuzzy": "Dèpassâs",
+ "translate-languagestats-overall": "Tôs los groupos de mèssâjos ensemblo",
+ "translate-ls-submit": "Fâre vêre les statistiques",
+ "translate-ls-column-group": "Groupo de mèssâjos",
+ "translate-mgs-pagename": "Statistiques du groupo de mèssâjos",
+ "translate-mgs-fieldset": "Fâre vêre les prèferences",
+ "translate-mgs-group": "Groupo de mèssâjos :",
+ "translate-mgs-nocomplete": "Pas fâre vêre les lengoues qu’ont chavonâ lor traduccion",
+ "translate-mgs-noempty": "Pas fâre vêre les lengoues qu’ont gins de traduccion",
+ "translate-mgs-submit": "Fâre vêre les statistiques",
+ "translate-mgs-column-language": "Lengoua",
+ "translate-mgs-totals": "Totes les lengoues ensemblo",
+ "translate-mgs-invalid-group": "Lo groupo spècifiâ $1 ègziste pas.",
+ "translate-mgs-nothing": "Ren a fâre vêre por les statistiques demandâyes.",
+ "supportedlanguages": "Lengoues recognues",
+ "supportedlanguages-summary": "Ceta pâge montre na lista de totes les lengoues recognues per {{SITENAME}},\navouéc los noms des traductors que travalyont dens cela lengoua.\nLo nom d’un traductor aparêt en ples grôs d’aprés lo nombro de changements qu’il at contribuâ.\nLa color du solegnement endique se lo traductor est étâ actif ique dês pou.",
+ "supportedlanguages-colorlegend": "Lègenda por la color : dèrriére traduccion cen fât $1 jorns.",
+ "supportedlanguages-translators": "Traductor{{PLURAL:$2||s}} : $1",
+ "supportedlanguages-recenttranslations": "novèles traduccions",
+ "supportedlanguages-count": "En tot $1 lengou{{PLURAL:$1|a|es}}.",
+ "supportedlanguages-activity": "$1 : $2 changement{{PLURAL:$2||s}} - dèrriér changement cen fât $3 jorn{{PLURAL:$3||s}}",
+ "translate-save": "Sôvar ($1)",
+ "translate-jssti-add": "Apondre a la lista",
+ "managemessagegroups": "Administracion du groupo des mèssâjos",
+ "translate-smg-notallowed": "Vos éte pas ôtorisâ a fâre cel’accion.",
+ "translate-smg-nochanges": "Y at gins de changement a trètar.",
+ "translate-smg-submit": "Sometre los changements por trètament",
+ "translate-smg-submitted": "Les dèfinicions des mèssâjos sont étâyes betâyes a jorn. Los changements sont trètâs en fond.",
+ "translate-smg-left": "Contegnu du mèssâjo dedens lo vouiqui",
+ "translate-smg-right": "Changements en cors de transfèrt",
+ "translate-manage-import-diff": "Mèssâjo $1 | Accions : $2",
+ "translate-manage-import-new": "Mèssâjo novél $1",
+ "translate-manage-import-deleted": "Mèssâjo suprimâ $1",
+ "translate-manage-action-import": "Importar",
+ "translate-manage-action-conflict": "Importar et marcar coment troblo",
+ "translate-manage-action-ignore": "Ignorar",
+ "translate-manage-action-fuzzy": "Importar et marcar les traduccions coment trobles",
+ "translate-manage-nochanges": "Y at gins de changement dedens les dèfinicions des mèssâjos de ceti groupo.",
+ "translate-manage-nochanges-other": "Y at avu gins de changement por ceta lengoua.\nEmpleyéd lo lim ce-desot por tornar a la vua de dètaly du groupo.",
+ "translate-manage-inconsistent": "N’enconsistence est étâye dècelâye dedens la requéta.\nVolyéd controlar s’y at avu des changements et pués tornar èprovar.\nDètalys : $1.",
+ "translate-manage-toolong": "Lo temps maximon de trètament de $1 second{{PLURAL:$1|a|es}} est étâ dèpassâ.\nVolyéd remandar lo formulèro por continuar lo trètament.",
+ "translate-manage-import-summary": "Importacion d’una novèla vèrsion dês na sôrsa de defôr",
+ "translate-manage-conflict-summary": "Importacion d’una novèla vèrsion dês na sôrsa de defôr.\nControlâd se vos plét.",
+ "translate-manage-fuzzy-summary": "La dèfinicion du mèssâjo at changiêye",
+ "translate-manage-submit": "Ègzécutar",
+ "translate-manage-import-ok": "Una novèla vèrsion de la pâge $1 at étâ importâ.",
+ "translate-manage-import-done": "Tot at étâ fêt !",
+ "importtranslations": "Importar les traduccions",
+ "translate-import-from-local": "Importar un fichiér local :",
+ "translate-import-load": "Chargiér lo fichiér",
+ "translate-import-err-dl-failed": "Empossiblo d’arrevar u fichiér :\n$1",
+ "translate-import-err-ul-failed": "Lo tèlèchargement du fichiér at pas reussi",
+ "translate-import-err-invalid-title": "Lo nom du fichiér balyê <nowiki>$1</nowiki> est envalido.",
+ "translate-import-err-no-such-file": "Lo fichiér <nowiki>$1</nowiki> ègziste pas ou ben il est pas étâ importâ localament.",
+ "translate-import-err-stale-group": "Lo groupo de mèssâjos uquint cél fichiér apartint ègziste pas.",
+ "translate-import-err-no-headers": "Lo fichiér est pas un fichiér ''gettext'' bien formâ dens lo format atendu per l’èxtension ''Translate'' :\no est empossiblo de dètèrmenar lo groupo et la lengoua dês los en-tétes du fichiér.",
+ "translate-import-err-warnings": "Lo fichiér est pas bien formâ.\nAssurâd-vos que voutron changior enléve pas los champs « msgctxt ».\nDètalys : $1",
+ "translate-js-summary": "Rèsumâ :",
+ "translate-js-save": "Encartar",
+ "translate-js-next": "Encartar et pués uvrir celi d’aprés",
+ "translate-js-nonext": "O ére lo dèrriér mèssâjo de ceta pâge.",
+ "translate-js-skip": "Alar a celi d’aprés",
+ "translate-js-save-failed": "L’encartâjo at pas reussi. Volyéd raportar ceta fôta.",
+ "translate-js-history": "Historico de traduccion",
+ "translate-js-support": "Posar na quèstion",
+ "translate-js-support-title": "Demandâd d’éde s’y at pas prod d’enformacions por traduire cél mèssâjo coment fôt.",
+ "translate-js-support-unsaved-warning": "Vos avéd des traduccions pas encartâyes.",
+ "translate-gs-pos": "Pos.",
+ "translate-gs-code": "Code",
+ "translate-gs-continent": "Continent",
+ "translate-gs-speakers": "Parlants",
+ "translate-gs-score": "Mârca",
+ "translate-gs-multiple": "Un mouél",
+ "translate-gs-count": "Compto",
+ "translate-gs-total": "Soma",
+ "translate-gs-avgscore": "Mârca moyena",
+ "translate-documentation-language": "Documentacion du mèssâjo",
+ "translate-searchprofile": "Traduccions",
+ "translate-searchprofile-tooltip": "Rechèrchiér dens totes les traduccions",
+ "translate-search-languagefilter": "Filtrar per lengoua :",
+ "translate-search-nofilter": "Gins de filtracion",
+ "translate-messagereview-submit": "Accèptar",
+ "translate-messagereview-progress": "En cors d’accèptacion...",
+ "translate-messagereview-failure": "Accèptacion... pas reussia : $1",
+ "translate-messagereview-done": "Accèptâ",
+ "translate-messagereview-reviews": "Accèptâ per {{PLURAL:$1|yon utilisator|$1 utilisators}}",
+ "translate-messagereview-reviewswithyou": "Accèptâ per {{PLURAL:$1|vos|$1 utilisators, vos avouéc}}",
+ "api-error-invalidrevision": "la traduccion est pas étâye trovâye",
+ "api-error-unknownmessage": "lo mèssâjo est pas étâ trovâ",
+ "api-error-fuzzymessage": "la traduccion est marcâye coment trobla",
+ "api-error-owntranslation": "vos pouede pas accèptar voutres prôpres traduccions",
+ "translate-messagereview-no-fuzzy": "Les traduccions trobles pôvont pas étre accèptâyes.",
+ "translate-messagereview-no-own": "Vos pouede pas accèptar voutres prôpres traduccions.",
+ "translate-messagereview-doit": "Accèptar ceta traduccion coment na traduccion justa.",
+ "log-name-translationreview": "Jornal de les rèvisions de traduccion",
+ "log-description-translationreview": "Jornal de totes les rèvisions de les traduccions et des groupos de mèssâjos.",
+ "logentry-translationreview-message": "$1 at {{GENDER:$2|accèptâ}} la traduccion $3",
+ "translate-workflow-state-": "(dèsactivâ)",
+ "translate-workflowstatus": "Statut : $1",
+ "translate-workflow-set-do": "Activar",
+ "translate-workflow-set-doing": "En cors d’activacion...",
+ "translate-workflow-set-done": "Activâ !",
+ "translate-workflow-set-error-alreadyset": "L’ètat demandâ est pariér a l’ètat d’ora.",
+ "translate-workflow-autocreated-summary": "Crèacion ôtomatica de la pâge por l’ètat du flux d’ôvra $1",
+ "translate-stats-workflow": "Statut",
+ "translate-workflowgroup-label": "Ètats du flux d’ôvra",
+ "translate-workflowgroup-desc": "Ceti groupo de mèssâjos fât vêre los ètats du flux d’ôvra de traduccion.\nLos ètats sont dèfenis dedens la variâbla de configuracion $wgTranslateWorkflowStates.",
+ "translate-dynagroup-recent-label": "Novèles traduccions",
+ "translate-dynagroup-recent-desc": "Ceti groupo de mèssâjos fât vêre totes les novèles traduccions fêtes dens cela lengoua.\nIl est surtot empleyê por los travâlys de relèctura.",
+ "translate-dynagroup-additions-label": "Aponses novèles",
+ "translate-dynagroup-by": "Traduccion fêta per {{GENDER:$1|$1}}",
+ "translate-dynagroup-byc": "Traduccion fêta per {{GENDER:$1|$1}} ($2)",
+ "translate-dynagroup-last": "Dèrriér changement per {{GENDER:$1|$1}}",
+ "translate-dynagroup-lastc": "Dèrriér changement per {{GENDER:$1|$1}} ($2)",
+ "translate-gethelp": "Éde",
+ "translate-msggroupselector-projects": "Groupo de mèssâjos",
+ "translate-msggroupselector-search-placeholder": "Rechèrchiér des groupos",
+ "translate-msggroupselector-search-all": "Tôs",
+ "translate-msggroupselector-search-recent": "Novéls",
+ "translate-msggroupselector-view-subprojects": "$1 {{PLURAL:$1|sot-groupo|sot-groupos}}",
+ "tux-languageselector": "Lengoua",
+ "tux-tab-all": "Tôs",
+ "tux-tab-untranslated": "Pas traduits",
+ "tux-tab-outdated": "Dèpassâs",
+ "tux-tab-translated": "Traduits",
+ "tux-edit": "Changiér",
+ "tux-status-optional": "U chouèx",
+ "tux-status-fuzzy": "Dèpassâye",
+ "tux-status-proofread": "Corregiêye",
+ "tux-status-translated": "Traduit",
+ "tux-status-unsaved": "Pas encartâye",
+ "tux-editor-placeholder": "Voutra traduccion",
+ "tux-editor-save-button-label": "Encartar la traduccion",
+ "tux-editor-skip-button-label": "Alar a celi d’aprés",
+ "tux-editor-edit-desc": "Changiér la dèscripcion",
+ "tux-editor-suggestions-title": "Idês",
+ "tux-editor-in-other-languages": "Dens les ôtres lengoues",
+ "tux-editor-need-more-help": "Fôta de més d’éde ?",
+ "tux-editor-ask-help": "Demandar més d’enformacions",
+ "tux-editor-tm-match": "$1 % de corrèspondance",
+ "tux-warnings-more": "{{PLURAL:$1|$1 de ples}}",
+ "tux-warnings-hide": "cachiér",
+ "tux-editor-save-failed": "Falyita de l’encartâjo de la traduccion : $1"
+}
diff --git a/MLEB/Translate/i18n/core/frr.json b/MLEB/Translate/i18n/core/frr.json
new file mode 100644
index 00000000..992f776a
--- /dev/null
+++ b/MLEB/Translate/i18n/core/frr.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Murma174"
+ ]
+ },
+ "translate-js-support": "Fraag stel"
+}
diff --git a/MLEB/Translate/i18n/core/fur.json b/MLEB/Translate/i18n/core/fur.json
new file mode 100644
index 00000000..eff4421e
--- /dev/null
+++ b/MLEB/Translate/i18n/core/fur.json
@@ -0,0 +1,249 @@
+{
+ "@metadata": {
+ "authors": [
+ "Klenje"
+ ]
+ },
+ "translate": "Traduzion",
+ "translate-desc": "[[Special:Translate|Pagjine speciâl]] par tradusi MediaWiki e altris robis",
+ "translate-taskui-view": "Mostre ducj i messaçs",
+ "translate-taskui-untranslated": "Mostre i messaçs no tradusûts",
+ "translate-taskui-optional": "Mostre i messaçs opzionâi",
+ "translate-taskui-reviewall": "Riviôt dutis lis traduzions",
+ "translate-taskui-export-to-file": "Espuarte tal formât natîf",
+ "translate-taction-translate": "Tradûs",
+ "translate-taction-proofread": "Revision",
+ "translate-taction-lstats": "Statistichis de lenghe",
+ "translate-taction-mstats": "Statistichis dal grup di messaçs",
+ "translate-taction-export": "Espuarte",
+ "translate-page-settings-legend": "Impuestazions",
+ "translate-page-group": "Grup",
+ "translate-page-language": "Lenghe",
+ "translate-page-limit": "Limit",
+ "translate-page-limit-option": "$1 {{PLURAL:$1|messaç|messaçs}} par pagjine",
+ "translate-submit": "Recupere",
+ "translate-page-navigation-legend": "Navigazion",
+ "translate-page-showing": "Daûr a mostrâ i messaçs di $1 a $2 su $3.",
+ "translate-page-showing-all": "Daûr a mostrâ $1 {{PLURAL:$1|messaç|messaçs}}.",
+ "translate-page-showing-none": "Nissun messaç di mostrâ.",
+ "translate-next": "Prossime pagjine",
+ "translate-prev": "Pagjine precedente",
+ "translate-page-description-legend": "Informazions sul grup",
+ "translate-page-description-hasoptional-open": "Mostre i messaçs opzionâi.",
+ "translate-page-edit": "cambie",
+ "translate-ext-url": "<hr />Sît web: $1",
+ "translate-optional": "(opzionâl)",
+ "translate-ignored": "(ignorât)",
+ "translate-edit-title": "Cambie \"$1\"",
+ "translate-edit-definition": "Definizion dal messaç",
+ "translate-edit-translation": "Traduzion",
+ "translate-edit-contribute": "contribuìs",
+ "translate-edit-no-information": "''Chest messaç nol à documentazion.''\n''Se tu sâs dulà o cemût chest messaç al è doprât, tu puedis judâ altris tradutôrs zontant alc come documentazion a chest messaç.''",
+ "translate-edit-information": "Informazions sul messaç ($1)",
+ "translate-edit-in-other-languages": "Il messaç in altris lenghis",
+ "translate-edit-warnings": "Avîs su lis traduzions no completis",
+ "translate-edit-tmsugs": "Sugjeriments de memorie di traduzion",
+ "translate-edit-tmmatch": "corispuint al $1%",
+ "translate-edit-nopermission": "Ti coventin i dirits di traduzion par tradusi i messaçs.",
+ "translate-edit-askpermission": "Cjapiti il permès",
+ "translate-magic-module": "Modul:",
+ "translate-magic-submit": "Recupere",
+ "translate-magic-cm-export": "Espuarte",
+ "translate-magic-nothing-to-export": "Nuie di espuartâ.",
+ "translate-magic-cm-current": "Atuâl",
+ "translate-magic-cm-original": "Origjinâl",
+ "translate-magic-cm-comment": "Coment:",
+ "translate-magic-cm-save": "Salve",
+ "translate-magic-cm-savefailed": "Salvament falît",
+ "translate-magic-namespace": "Nons dai spazis dai nons",
+ "translate-magic-notsaved": "Il to cambiament nol è stât salvât!",
+ "translate-magic-errors": "Par plasê comede {{PLURAL:$1|l'erôr|i erôrs}} ca sot tes traduzions:",
+ "translate-magic-saved": "Cambiaments salvâts.",
+ "translate-checks-parameters": "{{PLURAL:$2|Il parametri ca sot nol è doprât|I parametris ca sot no son doprâts}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-parameters-unknown": "{{PLURAL:$2|Il parametri ca sot nol è cognossût|I parametris ca sot no son cognossûts}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-parametersnotequal": "Il numar di parametris al è {{PLURAL:$1|$1}}; al varès di jessi {{PLURAL:$2|$2}}.",
+ "translate-pref-editassistlang": "Assistent lenghis:",
+ "prefs-translate": "Opzions pe traduzion",
+ "translate-pref-editassistlang-bad": "Codis de lenghe no valit inte liste:\n<nowiki>$1</nowiki>.",
+ "right-translate-messagereview": "Reviôt lis traduzions",
+ "translate-rc-translation-filter": "Filtre traduzions:",
+ "translate-rc-translation-filter-no": "No stâ fâ nuie",
+ "translate-rc-translation-filter-only": "Mostre dome lis traduzions",
+ "translate-rc-translation-filter-filter": "No stâ mostrâ lis traduzions",
+ "translationstats": "Statistichis de traduzion",
+ "translate-stats-edits": "Cambiaments",
+ "translate-stats-users": "Tradutôrs",
+ "translate-stats-registrations": "Regjistrazions",
+ "translate-stats-reviews": "Revisions",
+ "translate-stats-reviewers": "Revisôrs",
+ "translate-statsf-scale-months": "Mês",
+ "translate-statsf-scale-weeks": "Setemanis",
+ "translate-statsf-scale-days": "Zornadis",
+ "translate-statsf-scale-hours": "Oris",
+ "translate-statsf-count-edits": "Numar di cambiaments",
+ "translate-statsf-count-users": "Tradutôrs atîfs",
+ "translate-statsf-count-registrations": "Gnûfs utents",
+ "translate-statsf-count-reviews": "Revisions des traduzions",
+ "translate-statsf-count-reviewers": "Revisôrs",
+ "translate-statsf-submit": "Anteprime",
+ "translate-tag-category": "Pagjinis che si puedin tradusi",
+ "translate-tag-page-desc": "Traduzion de pagjine wiki [[$2|$1]].",
+ "translate-sidebar-alltrans": "In altris lenghis",
+ "translations": "Dutis lis traduzions",
+ "translate-translations-count": "{{PLURAL:$1|Cjatade une traduzion|Cjatadis $1 traduzions}}.",
+ "translate-translations-fieldset-title": "Messaç",
+ "translate-translations-messagename": "Non:",
+ "translate-translations-project": "Progjet:",
+ "languagestats": "Statistichis de lenghe",
+ "languagestats-summary": "Cheste pagjine e mostre lis statistichis di traduzion intune lenghe par ducj i grups di messaçs.",
+ "languagestats-stats-for": "Statistichis di traduzion par $1 ($2).",
+ "languagestats-recenttranslations": "traduzions recentis",
+ "translate-langstats-expand": "slargje",
+ "translate-langstats-collapse": "strenç",
+ "translate-langstats-expandall": "slargje dut",
+ "translate-langstats-collapseall": "strenç dut",
+ "translate-language-code": "Codiç de lenghe",
+ "translate-language-code-field-name": "Codiç de lenghe:",
+ "translate-suppress-complete": "Plate i grups di messaçs tradusûts fûr par fûr",
+ "translate-language": "Lenghe",
+ "translate-total": "Messaçs",
+ "translate-untranslated": "No tradusûts",
+ "translate-percentage-complete": "Completament",
+ "translate-percentage-fuzzy": "Di inzornâ",
+ "translate-languagestats-overall": "Ducj i grups di messaçs insieme",
+ "translate-ls-submit": "Mostre statistichis",
+ "translate-ls-column-group": "Grup di messaçs",
+ "translate-mgs-pagename": "Statistichis dal grup di messaçs",
+ "translate-mgs-fieldset": "Mostre lis preferencis",
+ "translate-mgs-group": "Grup di messaçs:",
+ "translate-mgs-submit": "Mostre statistichis",
+ "translate-mgs-column-language": "Lenghe",
+ "translate-mgs-totals": "Dutis lis lenghis insieme",
+ "supportedlanguages": "Lenghis supuartadis",
+ "supportedlanguages-colorlegend": "Leiende pal colôr: Ultime traduzion $1 zornadis indaûr.",
+ "supportedlanguages-translators": "{{PLURAL:$2|Tradutôr|Tradutôrs}}: $1",
+ "supportedlanguages-recenttranslations": "traduzions recentis",
+ "supportedlanguages-count": "$1 {{PLURAL:$1|lenghe|lenghis}} in dut.",
+ "supportedlanguages-activity": "$1: $2 {{PLURAL:$2|cambiament|cambiaments}} - ultin cambiament $3 {{PLURAL:$3|zornade|zornadis}} indaûr",
+ "translate-save": "Salve ($1)",
+ "translate-jssti-add": "Zonte ae liste",
+ "translate-manage-import-diff": "Messaç $1 | Azions: $2",
+ "translate-manage-import-new": "Gnûf messaç $1",
+ "translate-manage-action-import": "Impuarte",
+ "translate-manage-action-ignore": "Ignore",
+ "importtranslations": "Impuarte traduzions",
+ "translate-import-load": "Cjame file",
+ "translate-js-summary": "Somari:",
+ "translate-js-save": "Salve",
+ "translate-js-next": "Salve e passe al prossim",
+ "translate-js-nonext": "Chest al jere l'ultin messaç su cheste pagjine.",
+ "translate-js-skip": "Passe al prossim",
+ "translate-js-history": "Storic de traduzion",
+ "translate-js-support": "Fâs une domande",
+ "translate-js-support-unsaved-warning": "Tu âs traduzions no salvadis.",
+ "translate-gs-code": "Codiç",
+ "translate-gs-continent": "Continent",
+ "translate-gs-speakers": "Fevelants",
+ "translate-gs-score": "Punteç",
+ "translate-gs-count": "Numar di lenghis",
+ "translate-gs-total": "Totâl",
+ "translate-documentation-language": "Documentazion dal messaç",
+ "translate-searchprofile": "Traduzions",
+ "translate-searchprofile-tooltip": "Cîr jenfri dutis lis traduzions",
+ "translate-search-languagefilter": "Filtre par lenghe:",
+ "translate-search-nofilter": "Nissun filtri",
+ "translate-messagereview-submit": "Acete",
+ "translate-messagereview-progress": "Daûr a acetâ...",
+ "translate-messagereview-done": "Acetât",
+ "log-name-translationreview": "Regjistri des revisions des traduzions",
+ "translate-workflowstatus": "Stât: $1",
+ "translate-stats-workflow": "Stât",
+ "translate-dynagroup-recent-label": "Traduzions recentis",
+ "translate-dynagroup-additions-label": "Gnovis zontis",
+ "translate-dynagroup-additions-desc": "Chest grup di messaçs al mostre i messaçs gnûfs e cambiâts.",
+ "translate-dynagroup-by": "Traduzion fate di {{GENDER:$1|$1}}",
+ "translate-dynagroup-byc": "Traduzion fate di {{GENDER:$1|$1}}($2)",
+ "translate-dynagroup-last": "Ultin cambiament di {{GENDER:$1|$1}}",
+ "translate-dynagroup-lastc": "Ultin cambiament di {{GENDER:$1|$1}} ($2)",
+ "translate-gethelp": "Jutori",
+ "translate-msggroupselector-projects": "Grup di messaçs",
+ "translate-msggroupselector-search-placeholder": "Cîr tai grups",
+ "translate-msggroupselector-search-all": "Ducj",
+ "translate-msggroupselector-search-recent": "Recents",
+ "translate-msggroupselector-view-subprojects": "$1 {{PLURAL:$1|sotgrup|sotgrups}}",
+ "tux-languageselector": "Tradûs par",
+ "tux-tab-all": "Ducj",
+ "tux-tab-untranslated": "No tradusûts",
+ "tux-tab-outdated": "Di inzornâ",
+ "tux-tab-translated": "Tradusûts",
+ "tux-tab-unproofread": "Di riviodi",
+ "tux-edit": "Cambie",
+ "tux-status-optional": "Opzionâl",
+ "tux-status-fuzzy": "Di inzornâ",
+ "tux-status-proofread": "Reviodude",
+ "tux-status-translated": "Tradusût",
+ "tux-status-saving": "Daûr a salvâ...",
+ "tux-status-unsaved": "No ancjemò salvade",
+ "tux-editor-placeholder": "La tô traduzion",
+ "tux-editor-paste-original-button-label": "Copie il test origjinâl",
+ "tux-editor-discard-changes-button-label": "Anule i cambiaments",
+ "tux-editor-save-button-label": "Salve la traduzion",
+ "tux-editor-skip-button-label": "Passe al prossim",
+ "tux-editor-cancel-button-label": "Scancele",
+ "tux-editor-confirm-button-label": "Conferme la traduzion",
+ "tux-editor-shortcut-info": "Frache \"$1\" par salvâ o \"$2\" par passâ al prossim messaç",
+ "tux-editor-edit-desc": "Cambie la documentazion",
+ "tux-editor-add-desc": "Zonte une documentazion",
+ "tux-editor-suggestions-title": "Sugjeriments",
+ "tux-editor-in-other-languages": "In altris lenghis",
+ "tux-editor-need-more-help": "Ti covential un jutori?",
+ "tux-editor-ask-help": "Domande altris informazions",
+ "tux-editor-tm-match": "corispuint al $1%",
+ "tux-warnings-more": "$1 {{PLURAL:$1|altri|altris}}",
+ "tux-warnings-hide": "plate",
+ "tux-editor-save-failed": "Erôr salvant la traduzion: $1",
+ "tux-editor-n-uses": "doprât $1 {{PLURAL:$1|volte|voltis}}",
+ "tux-editor-message-desc-more": "Viôt di plui",
+ "tux-editor-message-desc-less": "Viôt di mancul",
+ "tux-editor-clear-translated": "Plate tradusûts",
+ "tux-editor-proofreading-mode": "Reviôt",
+ "tux-editor-translate-mode": "Liste",
+ "tux-editor-proofreading-hide-own-translations": "Plate lis tôs traduzions",
+ "tux-editor-proofreading-show-own-translations": "Mostre lis tôs traduzions",
+ "tux-proofread-action-tooltip": "Acete la traduzion",
+ "tux-proofread-edit-label": "Cambie",
+ "tux-editor-page-mode": "Pagjine",
+ "tux-editor-outdated-warning": "Cheste traduzion e podarès vê bisugne di jessi inzornade.",
+ "tux-editor-outdated-warning-diff-link": "Mostre lis difarencis",
+ "tux-editor-doc-editor-placeholder": "Documentazion dal messaç",
+ "tux-editor-doc-editor-save": "Salve la documentazion",
+ "tux-editor-doc-editor-cancel": "Scancele",
+ "tux-messagetable-more-messages": "$1 {{PLURAL:$1|altri messaç|altris messaçs}}",
+ "tux-messagetable-loading-messages": "Daûr a cjamâ $1 {{PLURAL:$1|messaç|messaçs}}...",
+ "tux-message-filter-placeholder": "Filtre la liste",
+ "tux-message-filter-result": "{{PLURAL:$1|Cjatât $1 risultât|Cjatâts $1 risultâts}} par \"$2\"",
+ "tux-message-filter-advanced-button": "Ricercje avanzade",
+ "tux-message-filter-optional-messages-label": "Messaçs opzionâi",
+ "tux-proofread-translated-by-self": "Tradusût di te",
+ "tux-empty-list-all": "Chest grup di messaçs al è vueit",
+ "tux-empty-list-translated": "Nissun messaç tradusût",
+ "tux-empty-list-translated-guide": "Tu puedis judâ a tradusi",
+ "tux-empty-list-translated-action": "Tradûs",
+ "tux-empty-no-messages-to-display": "Nissun messaç di mostrâ.",
+ "tux-empty-show-optional-messages": "Mostre i messaçs opzionâi",
+ "tux-empty-no-outdated-messages": "Nissun messaç di inzornâ",
+ "tux-empty-nothing-to-proofread": "Nuie di reviodi",
+ "tux-empty-list-other": "Nuie di tradusi",
+ "tux-empty-list-other-action": "Reviôt traduzions",
+ "tux-empty-list-other-link": "Mostre ducj i messaçs",
+ "tux-editor-close-tooltip": "Siere",
+ "tux-editor-expand-tooltip": "Slargje",
+ "tux-editor-collapse-tooltip": "Strenç",
+ "tux-editor-message-tools-history": "Storic",
+ "tux-editor-message-tools-translations": "Dutis lis traduzions",
+ "tux-editor-loading": "Daûr a cjamâ…",
+ "translate-search-more-languages-info": "$1 {{PLURAL:$1|altre lenghe|altris lenghis}}",
+ "translate-statsbar-tooltip": "$1% tradusût, $2% reviodût",
+ "translate-statsbar-tooltip-with-fuzzy": "$1% tradusût, $2% reviodût, $3% di inzornâ",
+ "translate-search-more-groups-info": "$1 {{PLURAL:$1|altri grup|altris grups}}"
+}
diff --git a/MLEB/Translate/i18n/core/fy.json b/MLEB/Translate/i18n/core/fy.json
new file mode 100644
index 00000000..bbab4f28
--- /dev/null
+++ b/MLEB/Translate/i18n/core/fy.json
@@ -0,0 +1,37 @@
+{
+ "@metadata": {
+ "authors": [
+ "Kening Aldgilles",
+ "Snakesteuben",
+ "Robin0van0der0vliet"
+ ]
+ },
+ "translate-page-settings-legend": "Ynstellings",
+ "translate-page-group": "Groep",
+ "translate-page-language": "Taal",
+ "translate-page-navigation-legend": "Navigaasje",
+ "translate-next": "Folgjende side",
+ "translate-page-edit": "bewurkje",
+ "translate-edit-title": "Bewurk \"$1\"",
+ "translate-edit-translation": "Oersetting",
+ "translate-magic-cm-export": "Eksportearje",
+ "translate-magic-cm-comment": "Oanmerking:",
+ "translate-magic-cm-save": "Fêstlizze",
+ "translate-statsf-scale-months": "Moannen",
+ "translate-statsf-scale-weeks": "Wiken",
+ "translate-statsf-scale-days": "Dagen",
+ "translate-statsf-scale-hours": "Oeren",
+ "translate-translations-messagename": "Namme:",
+ "translate-translations-project": "Projekt:",
+ "translate-language": "Taal",
+ "translate-mgs-column-language": "Taal",
+ "translate-searchprofile": "Oersettings",
+ "translate-gethelp": "Help",
+ "tux-edit": "Bewurkje",
+ "tux-editor-cancel-button-label": "Annulearje",
+ "tux-warnings-more": "{{PLURAL:$1|$1 mear}}",
+ "tux-proofread-edit-label": "Bewurkje",
+ "tux-editor-page-mode": "Side",
+ "tux-editor-doc-editor-cancel": "Annulearje",
+ "tux-editor-message-tools-history": "Skiednis"
+}
diff --git a/MLEB/Translate/i18n/core/ga.json b/MLEB/Translate/i18n/core/ga.json
new file mode 100644
index 00000000..91140c30
--- /dev/null
+++ b/MLEB/Translate/i18n/core/ga.json
@@ -0,0 +1,28 @@
+{
+ "@metadata": {
+ "authors": [
+ "Alison",
+ "Moilleadóir",
+ "පසිඳු කාවින්ද"
+ ]
+ },
+ "translate-page-settings-legend": "Sainroghanna",
+ "translate-page-group": "Ghrúpa",
+ "translate-page-language": "Teanga",
+ "translate-submit": "Faigh",
+ "translate-page-navigation-legend": "Nascleanúint",
+ "translate-edit-in-other-languages": "Teachtaireacht \"$1\" i dteangacha eile",
+ "translate-magic-cm-export": "Easportáil",
+ "translate-magic-cm-current": "reatha",
+ "translate-magic-cm-comment": "Nótaí tráchta:",
+ "translate-magic-cm-save": "Sábháil",
+ "translate-statsf-scale-days": "Lae",
+ "translate-statsf-scale-hours": "Uaire",
+ "translate-statsf-submit": "Réamhamharc",
+ "translate-translations-fieldset-title": "Teachtaireacht",
+ "translate-translations-messagename": "Ainm:",
+ "translate-language": "Teanga",
+ "translate-js-summary": "Achoimre:",
+ "translate-js-save": "Sábháil",
+ "translate-gethelp": "Cuidiú"
+}
diff --git a/MLEB/Translate/i18n/core/gl.json b/MLEB/Translate/i18n/core/gl.json
new file mode 100644
index 00000000..3748f670
--- /dev/null
+++ b/MLEB/Translate/i18n/core/gl.json
@@ -0,0 +1,389 @@
+{
+ "@metadata": {
+ "authors": [
+ "Alma",
+ "Gallaecio",
+ "Toliño",
+ "Xosé",
+ "Fitoschido"
+ ]
+ },
+ "translate": "Traducir",
+ "translate-desc": "[[Special:Translate|Páxina especial]] para traducir MediaWiki e outras extensións",
+ "translate-taskui-view": "Mostrar todas as mensaxes",
+ "translate-taskui-untranslated": "Mostrar as mensaxes sen traducir",
+ "translate-taskui-optional": "Mostrar as mensaxes opcionais",
+ "translate-taskui-acceptqueue": "Só as mensaxes que poida marcar como revisadas",
+ "translate-taskui-reviewall": "Revisar todas as traducións",
+ "translate-taskui-export-to-file": "Exportar en formato nativo",
+ "translate-taskui-export-as-po": "Exportar para traducir sen conexión",
+ "translate-taction-translate": "Traducir",
+ "translate-taction-proofread": "Revisar",
+ "translate-taction-lstats": "Estatísticas da lingua",
+ "translate-taction-mstats": "Estatísticas dos grupos de mensaxes",
+ "translate-taction-export": "Exportar",
+ "translate-taction-disabled": "A acción está desactivada neste wiki.",
+ "translate-page-no-such-language": "O código de lingua especificado non é válido.",
+ "translate-page-no-such-group": "O grupo especificado non é válido.",
+ "translate-page-disabled": "As traducións a esta lingua neste grupo están desactivadas.\nMotivo:\n\n<em>$1</em>",
+ "translate-language-disabled": "As traducións nesta lingua están desactivadas.",
+ "translate-page-settings-legend": "Configuracións",
+ "translate-page-group": "Grupo",
+ "translate-page-language": "Lingua",
+ "translate-page-limit": "Límite",
+ "translate-page-limit-option": "$1 {{PLURAL:$1|mensaxe|mensaxes}} por páxina",
+ "translate-submit": "Mostrar",
+ "translate-page-navigation-legend": "Navegación",
+ "translate-page-showing": "Mostrando as mensaxes da $1 á $2, dun total de $3.",
+ "translate-page-showing-all": "Mostrando {{PLURAL:$1|unha mensaxe|$1 mensaxes}}.",
+ "translate-page-showing-none": "Non hai ningunha mensaxe que mostrar.",
+ "translate-next": "Páxina seguinte",
+ "translate-prev": "Páxina anterior",
+ "translate-page-description-legend": "Información acerca do grupo",
+ "translate-page-description-hasoptional": "Este grupo de mensaxes contén mensaxes opcionais.\nAs mensaxes opcionais só se deberían traducir cando a lingua teña necesidades especiais,\ncomo non empregar espazos ou para a transliteración de nomes propios. $1",
+ "translate-page-description-hasoptional-open": "Mostrar as mensaxes opcionais.",
+ "translate-page-edit": "editar",
+ "translate-ext-url": "<hr />Páxina web: $1",
+ "translate-optional": "(opcional)",
+ "translate-ignored": "(ignorado)",
+ "translate-edit-title": "Editar \"$1\"",
+ "translate-edit-definition": "Definición da mensaxe",
+ "translate-edit-translation": "Tradución",
+ "translate-edit-contribute": "contribuír",
+ "translate-edit-no-information": "<em>Esta mensaxe non ten documentación.\nSe sabe onde ou como se usa esta mensaxe, pode axudar aos outros tradutores engadíndolle datos.</em>",
+ "translate-edit-information": "Información acerca da mensaxe ($1)",
+ "translate-edit-in-other-languages": "Mensaxe noutras linguas",
+ "translate-edit-committed": "Tradución actual no software",
+ "translate-edit-warnings": "Avisos acerca de traducións incompletas",
+ "translate-edit-tmsugs": "Suxestións da memoria de tradución",
+ "translate-edit-tmmatch-source": "Texto fonte da tradución: $1",
+ "translate-edit-tmmatch": "$1% de coincidencia",
+ "translate-use-suggestion": "Substituír a tradución actual por esta suxestión.",
+ "translate-edit-nopermission": "Necesita ter os dereitos de tradución para traducir mensaxes.",
+ "translate-edit-askpermission": "Obter os permisos",
+ "translate-magic-pagename": "Tradución estendida de MediaWiki",
+ "translate-magic-help": "Pode traducir os pseudónimos das páxinas especiais, as palabras máxicas e mais os nomes dos espazos de nomes.\n\nOs pseudónimos das páxinas especiais e as palabras máxicas poden ter numerosas traducións.\nAs traducións sepáranse mediante unha coma (\",\").\nOs nomes dos espazos de nomes só poden ter unha tradución.\n\nA tradución do espazo de nomes de conversa do proxecto, <code>$1 talk</code>, pode ser complicado.\n<code>$1</code> substitúese polo nome do sitio (por exemplo, <code>{{ns:project_talk}}</code>).\nSe na súa lingua non resulta posible formar unha expresión válida sen mudar o nome do sitio, fáganolo saber na [[Support|páxina de axuda]].\n\nTen que estar no grupo dos tradutores para gardar os cambios.\nOs cambios non se gardan ata que prema no botón \"Gardar\" que hai ao final.",
+ "translate-magic-module": "Módulo:",
+ "translate-magic-submit": "Mostrar",
+ "translate-magic-cm-export": "Exportar",
+ "translate-magic-nothing-to-export": "Non hai nada que exportar.",
+ "translate-magic-cm-to-be": "Será",
+ "translate-magic-cm-current": "Actual",
+ "translate-magic-cm-original": "Orixinal",
+ "translate-magic-cm-comment": "Comentario:",
+ "translate-magic-cm-save": "Gardar",
+ "translate-magic-cm-updatedusing": "Actualizado mediante [[Special:AdvancedTranslate|{{int:Translate-magic-pagename}}]]",
+ "translate-magic-cm-savefailed": "Erro ao gardar",
+ "translate-magic-special": "Pseudónimos das páxinas especiais",
+ "translate-magic-words": "Palabras máxicas",
+ "translate-magic-namespace": "Nomes dos espazos de nomes",
+ "translate-magic-notsaved": "A súa edición non foi gardada!",
+ "translate-magic-errors": "Por favor, corrixa {{PLURAL:$1|o seguinte erro|os seguintes erros}} nas traducións:",
+ "translate-magic-saved": "As súas modificacións gardáronse correctamente.",
+ "translate-checks-parameters": "{{PLURAL:$2|Non se emprega o seguinte parámetro|Non se empregan os seguintes parámetros}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-parameters-unknown": "{{PLURAL:$2|Descoñécese o seguinte parámetro|Descoñécense os seguintes parámetros}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-balance": "Hai unha cantidade irregular de {{PLURAL:$2|parénteses|parénteses}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links": "{{PLURAL:$2|A seguinte ligazón é problemática|As seguintes ligazóns son problemáticas}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links-missing": "{{PLURAL:$2|Falta a seguinte ligazón|Faltan as seguintes $2 ligazóns}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-xhtml": "Por favor, substitúa {{PLURAL:$2|a seguinte etiqueta pola correcta|as seguintes etiquetas polas correctas}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-plural": "A definición usa <nowiki>{{PLURAL:}}</nowiki>, pero a tradución non.",
+ "translate-checks-plural-forms": "<nowiki>{{PLURAL:}}</nowiki> recibiu {{PLURAL:$1|unha forma|$1 formas}} de plural, pero unicamente {{PLURAL:$2|está soportada unha forma|están soportadas $2 formas}} (excluíndo as formas 0= e 1=).",
+ "translate-checks-plural-dupe": "<nowiki>{{PLURAL:}}</nowiki> ten formas de plural duplicadas ao final. <nowiki>{{PLURAL:$1|lapis|lapis}}</nowiki> debe escribirse así: <nowiki>{{PLURAL:$1|lapis}}</nowiki>.",
+ "translate-checks-pagename": "O espazo de nomes é diferente con respecto ao presente na definición",
+ "translate-checks-format": "Esta tradución non segue a definición ou ten unha sintaxe inválida: $1",
+ "translate-checks-escape": "As seguintes secuencias de escape poden ser accidentais: <strong>$1</strong>",
+ "translate-checks-parametersnotequal": "O número de parámetros é {{PLURAL:$1|$1}}, cando {{PLURAL:$2|debe ser $2|deben ser $2}}.",
+ "translate-checks-malformed": "\"<nowiki>$1</nowiki>\" ten un formato incorrecto.",
+ "translate-checks-fudforum-syntax": "Use <nowiki>$1</nowiki> no canto de <nowiki>$2</nowiki> neste proxecto.",
+ "translate-pref-nonewsletter": "Non me enviedes boletíns ao meu correo electrónico",
+ "translate-pref-editassistlang": "Linguas axudantes:",
+ "prefs-translate": "Opcións de tradución",
+ "translate-pref-editassistlang-help": "Lista de códigos de linguas separados por comas.\nMóstranse as traducións dunha mensaxe nestas linguas cando a traduce.\nA lista de linguas por defecto depende da súa.",
+ "translate-pref-editassistlang-bad": "Código de lingua inválido:\n<nowiki>$1</nowiki>.",
+ "right-translate": "Editar usando a interface de tradución",
+ "right-translate-manage": "Xestionar os grupos de mensaxes",
+ "action-translate-manage": "xestionar os grupos de mensaxes",
+ "right-translate-import": "Importar as traducións sen conexión",
+ "action-translate-import": "importar as traducións sen conexión",
+ "right-translate-messagereview": "Revisar as traducións",
+ "right-translate-groupreview": "Cambiar o estado do fluxo de traballo dos grupos de mensaxes",
+ "translate-rc-translation-filter": "Filtrar as traducións:",
+ "translate-rc-translation-filter-no": "Non facer nada",
+ "translate-rc-translation-filter-only": "Mostrar só as traducións",
+ "translate-rc-translation-filter-filter": "Mostrar o que non sexan traducións",
+ "translate-rc-translation-filter-site": "Mostrar só os cambios nas mensaxes do sitio",
+ "translationstats": "Estatísticas das traducións",
+ "translate-stats-edits": "Edicións",
+ "translate-stats-users": "Tradutores",
+ "translate-stats-registrations": "Rexistros",
+ "translate-stats-reviews": "Revisións",
+ "translate-stats-reviewers": "Revisores",
+ "translate-statsf-intro": "Pode xerar estatísticas de forma sinxela con este formulario. Todos os valores teñen límites máximos e mínimos.",
+ "translate-statsf-options": "Opcións da gráfica",
+ "translate-statsf-width": "Largo en píxeles:",
+ "translate-statsf-height": "Altura en píxeles:",
+ "translate-statsf-days": "Período de tempo en días:",
+ "translate-statsf-start": "Data de inicio:",
+ "translate-statsf-scale": "Escala:",
+ "translate-statsf-scale-months": "Meses",
+ "translate-statsf-scale-weeks": "Semanas",
+ "translate-statsf-scale-days": "Días",
+ "translate-statsf-scale-hours": "Horas",
+ "translate-statsf-count": "Medida:",
+ "translate-statsf-count-edits": "Número de edicións",
+ "translate-statsf-count-users": "Tradutores activos",
+ "translate-statsf-count-registrations": "Novos usuarios",
+ "translate-statsf-count-reviews": "Revisións das traducións",
+ "translate-statsf-count-reviewers": "Revisores",
+ "translate-statsf-language": "Lista de códigos de lingua (separados por comas):",
+ "translate-statsf-group": "Lista de códigos de grupos de mensaxes (separados por comas):",
+ "translate-statsf-submit": "Vista previa",
+ "translate-tag-category": "Páxinas que se poden traducir",
+ "translate-tag-page-desc": "Tradución da páxina wiki \"[[$2|$1]]\".",
+ "translate-sidebar-alltrans": "Noutras linguas",
+ "translations": "Todas as traducións",
+ "translations-summary": "Escriba o nome dunha mensaxe para ver todas as traducións dispoñibles.",
+ "translate-translations-no-message": "\"$1\" non é unha mensaxe que se poida traducir",
+ "translate-translations-none": "Non hai traducións da mensaxe \"$1\"",
+ "translate-translations-count": "{{PLURAL:$1|Existe unha tradución|Existen $1 traducións}}.",
+ "translate-translations-fieldset-title": "Mensaxe",
+ "translate-translations-messagename": "Nome:",
+ "translate-translations-project": "Proxecto:",
+ "translate-translations-including-no-param": "Por favor, especifique unha clave de mensaxe válida no parámetro da subpáxina",
+ "translate-translations-history-short": "h",
+ "languagestats": "Estatísticas da lingua",
+ "languagestats-summary": "Esta páxina mostra as estatísticas de tradución dos grupos de mensaxes dunha lingua.",
+ "messagegroupstats-summary": "Esta páxina mostra as estatísticas dos grupos de mensaxes.",
+ "languagestats-stats-for": "Estatísticas das traducións en $1 ($2).",
+ "languagestats-recenttranslations": "traducións recentes",
+ "translate-langstats-incomplete": "Algunhas das estatísticas desta páxina están incompletas. Recargue a páxina para ollar máis estatísticas.",
+ "translate-langstats-expand": "expandir",
+ "translate-langstats-collapse": "contraer",
+ "translate-langstats-expandall": "expandir todo",
+ "translate-langstats-collapseall": "contraer todo",
+ "translate-language-code": "Código da lingua",
+ "translate-language-code-field-name": "Código da lingua:",
+ "translate-suppress-complete": "Omitir os grupos de mensaxes completamente traducidos",
+ "translate-ls-noempty": "Omitir os grupos de mensaxes sen tradución iniciada",
+ "translate-language": "Lingua",
+ "translate-total": "Mensaxes",
+ "translate-untranslated": "Sen traducir",
+ "translate-percentage-complete": "Completadas",
+ "translate-percentage-fuzzy": "Anticuadas",
+ "translate-languagestats-overall": "Todos os grupos de mensaxes xuntos",
+ "translate-ls-submit": "Mostrar as estatísticas",
+ "translate-ls-column-group": "Grupo de mensaxes",
+ "translate-mgs-pagename": "Estatísticas dos grupos de mensaxes",
+ "translate-mgs-fieldset": "Mostrar as preferencias",
+ "translate-mgs-group": "Grupo de mensaxes:",
+ "translate-mgs-nocomplete": "Non mostrar as linguas que teñen a tradución completa",
+ "translate-mgs-noempty": "Non mostrar as linguas que non teñen ningunha tradución",
+ "translate-mgs-submit": "Mostrar as estatísticas",
+ "translate-mgs-column-language": "Lingua",
+ "translate-mgs-totals": "Todas as linguas xuntas",
+ "translate-mgs-invalid-group": "O grupo especificado, \"$1\", non existe.",
+ "translate-mgs-nothing": "Non hai nada que mostrar para as estatísticas solicitadas.",
+ "supportedlanguages": "Linguas soportadas",
+ "supportedlanguages-summary": "Esta páxina mostra unha lista de todas as linguas soportadas por {{SITENAME}},\nasí como os nomes dos tradutores que traballan nelas.\nCantas máis contribucións fixese un usuario, máis grande aparecerá o seu nome.\nA cor do suliñado indica como de activo estivo o tradutor recentemente.",
+ "supportedlanguages-colorlegend": "Lenda das cores: Última tradución hai $1 días.",
+ "supportedlanguages-translators": "{{PLURAL:$2|Tradutor|Tradutores}}: $1",
+ "supportedlanguages-recenttranslations": "traducións recentes",
+ "supportedlanguages-count": "$1 {{PLURAL:$1|lingua|linguas}} en total.",
+ "supportedlanguages-activity": "$1: $2 {{PLURAL:$2|edición|edicións}}; última edición hai $3 {{PLURAL:$3|día|días}}",
+ "translate-save": "Gardar ($1)",
+ "translate-jssti-add": "Engadir á lista",
+ "managemessagegroups": "Xestión dos grupos de mensaxes",
+ "translate-smg-notallowed": "Non lle está permitido efectuar esa acción.",
+ "translate-smg-nochanges": "Non hai cambio ningún que procesar.",
+ "translate-smg-submit": "Enviar os cambios para procesalos",
+ "translate-smg-submitted": "Actualizáronse as definicións das mensaxes. Os cambios estanse procesando en segundo plano.",
+ "translate-smg-more": "Haberá máis modificacións que procesar despois de enviar estes cambios.",
+ "translate-smg-left": "Contido da mensaxe no wiki",
+ "translate-smg-right": "Cambios entrantes",
+ "translate-manage-import-diff": "Mensaxe $1 | Accións: $2",
+ "translate-manage-import-new": "Nova mensaxe $1",
+ "translate-manage-import-deleted": "Mensaxe borrada $1",
+ "translate-manage-action-import": "Importar",
+ "translate-manage-action-conflict": "Importar e incluír a marca fuzzy",
+ "translate-manage-action-ignore": "Ignorar",
+ "translate-manage-action-fuzzy": "Importar e incluír a marca fuzzy nas traducións",
+ "translate-manage-nochanges": "Non hai cambios nas definicións das mensaxes neste grupo.",
+ "translate-manage-nochanges-other": "Non houbo cambios nesta lingua.\nUse a ligazón de embaixo para volver á vista dos detalles do grupo.",
+ "translate-manage-inconsistent": "Detectouse unha inconsistencia na solicitude.\nPor favor, comprobe os cambios e inténteo de novo. Detalles: $1.",
+ "translate-manage-toolong": "Excedeuse do máximo tempo de procesamento de $1 {{PLURAL:$1|segundo|segundos}}.\nPor favor, reenvíe o formulario para continuar procesando.",
+ "translate-manage-import-summary": "Importando unha nova versión desde unha fonte externa",
+ "translate-manage-conflict-summary": "Importando unha nova versión desde unha fonte externa. Por favor, compróbea.",
+ "translate-manage-fuzzy-summary": "A definición da mensaxe cambiou",
+ "translate-manage-submit": "Executar",
+ "translate-manage-intro-other": "A continuación está a lista de cambios nas traducións en $1.\nPor favor, revise os cambios e escolla a acción que quere facer para cada actualización.\nSe opta por ignorar as modificacións, esta acción é unicamente temporal.",
+ "translate-manage-import-ok": "Importada: $1",
+ "translate-manage-import-done": "Completouse a importación!",
+ "importtranslations": "Importar as traducións",
+ "translate-import-from-local": "Carga dun ficheiro local:",
+ "translate-import-load": "Cargar o ficheiro",
+ "translate-import-err-dl-failed": "Non se pode acceder ao ficheiro:\n$1",
+ "translate-import-err-ul-failed": "Fallou a carga do ficheiro",
+ "translate-import-err-invalid-title": "O nome de ficheiro proporcionado \"<nowiki>$1</nowiki>\" é inválido.",
+ "translate-import-err-no-such-file": "O ficheiro \"<nowiki>$1</nowiki>\" non existe ou non foi cargado localmente.",
+ "translate-import-err-stale-group": "O grupo de mensaxes ao que pertence este ficheiro non existe.",
+ "translate-import-err-no-headers": "O ficheiro non é un ficheiro Gettext ben formado co formato da extensión Translate:\nnon se poden determinar o grupo e a lingua a partir das cabeceiras do ficheiro.",
+ "translate-import-err-warnings": "O ficheiro non está ben formado.\nAsegúrese de que o seu editor non elimina campos msgctxt.\nDetalles: $1",
+ "translate-js-summary": "Resumo:",
+ "translate-js-save": "Gardar",
+ "translate-js-next": "Gardar e abrir a seguinte",
+ "translate-js-nonext": "Esta é a última mensaxe da páxina.",
+ "translate-js-skip": "Pasar á seguinte",
+ "translate-js-save-failed": "Fallou o proceso de gardado. Por favor, informe sobre este erro.",
+ "translate-js-history": "Historial de tradución",
+ "translate-js-support": "Facer unha pregunta",
+ "translate-js-support-title": "Pida axuda se non dispón de información suficiente para traducir a mensaxe correctamente.",
+ "translate-js-support-unsaved-warning": "Ten algunha tradución sen gardar.",
+ "translate-gs-pos": "Pos.",
+ "translate-gs-code": "Código",
+ "translate-gs-continent": "Continente",
+ "translate-gs-speakers": "Falantes",
+ "translate-gs-score": "Puntuación",
+ "translate-gs-multiple": "Múltiples",
+ "translate-gs-count": "Conta",
+ "translate-gs-total": "Total",
+ "translate-gs-avgscore": "Puntuación media",
+ "translate-documentation-language": "documentación das mensaxes",
+ "translate-searchprofile": "Traducións",
+ "translate-searchprofile-tooltip": "Procurar en todas as traducións",
+ "translate-search-languagefilter": "Filtrar por lingua:",
+ "translate-search-nofilter": "Non filtrar",
+ "translate-messagereview-submit": "Marcar como revisada",
+ "translate-messagereview-progress": "Marcando como revisada...",
+ "translate-messagereview-failure": "Erro ao marcar como revisada: $1",
+ "translate-messagereview-done": "Revisada",
+ "translate-messagereview-reviews": "Revisada por {{PLURAL:$1|un usuario|$1 usuarios}}",
+ "translate-messagereview-reviewswithyou": "Revisada por {{PLURAL:$1|vostede|$1 usuarios, incluído vostede}}",
+ "api-error-invalidrevision": "Non se atopou a tradución",
+ "api-error-unknownmessage": "Non se atopou a mensaxe",
+ "api-error-fuzzymessage": "A tradución está marcada con FUZZY",
+ "api-error-owntranslation": "Non se poden marcar como revisadas as traducións feitas por un mesmo",
+ "translate-messagereview-no-fuzzy": "Non se poden marcar como revisadas as traducións anticuadas.",
+ "translate-messagereview-no-own": "Non se poden marcar como revisadas as traducións feitas por un mesmo.",
+ "translate-messagereview-doit": "Marcar esta tradución como revisada.",
+ "group-translate-proofr.css": "/* O CSS que se coloque aquí afectará soamente aos revisores das traducións */",
+ "group-translate-proofr.js": "/* O JS que se coloque aquí afectará soamente aos revisores das traducións */",
+ "log-name-translationreview": "Rexistro de revisión das traducións",
+ "log-description-translationreview": "Rexistro de todas as revisións das traducións e dos grupos de mensaxes.",
+ "logentry-translationreview-message": "$1 {{GENDER:$2|revisou}} a tradución \"$3\"",
+ "logentry-translationreview-group": "$1 {{GENDER:$2|modificou}} o estado das traducións en $4 de \"$3\", que pasou de ser \"$6\" a ser \"$7\"",
+ "group-translate-sandboxed": "Tradutores sen aprobar",
+ "group-translate-sandboxed-member": "{{GENDER:$1|tradutor|tradutora}} sen aprobar",
+ "right-translate-sandboxmanage": "Administrar os usuarios da zona de probas",
+ "action-translate-sandboxmanage": "administrar os usuarios da zona de probas",
+ "right-translate-sandboxaction": "Executar accións da lista branca para os usuarios da zona de probas",
+ "action-translate-sandboxaction": "executar accións da lista branca para os usuarios da zona de probas",
+ "translate-workflow-state-": "(desactivado)",
+ "translate-workflowstatus": "Estado: $1",
+ "translate-workflow-set-do": "Activar",
+ "translate-workflow-set-doing": "Activando...",
+ "translate-workflow-set-done": "Activado!",
+ "translate-workflow-set-error-alreadyset": "O estado solicitado é idéntico ao estado actual.",
+ "translate-workflow-autocreated-summary": "Creación automática da páxina para o estado \"$1\" do fluxo de traballo",
+ "translate-stats-workflow": "Estado",
+ "translate-workflowgroup-label": "Estados do fluxo de traballo",
+ "translate-workflowgroup-desc": "Este grupo de mensaxes mostra todas as traducións dos estados do fluxo de traballo.\nOs estados están definidos na variable de configuración $wgTranslateWorkflowStates.",
+ "translate-dynagroup-recent-label": "Traducións recentes",
+ "translate-dynagroup-recent-desc": "Este grupo de mensaxes mostra todas as traducións recentes feitas nesta lingua.\nÉ moi útil para as tarefas de revisión.",
+ "translate-dynagroup-additions-label": "Adicións recentes",
+ "translate-dynagroup-additions-desc": "Este grupo de mensaxes mostra as mensaxes novas e modificadas.",
+ "translate-dynagroup-by": "Tradución feita por {{GENDER:$1|$1}}",
+ "translate-dynagroup-byc": "Tradución feita por {{GENDER:$1|$1}} ($2)",
+ "translate-dynagroup-last": "Última modificación feita por {{GENDER:$1|$1}}",
+ "translate-dynagroup-lastc": "Última modificación feita por {{GENDER:$1|$1}} ($2)",
+ "translate-gethelp": "Axuda",
+ "translate-msggroupselector-projects": "Grupo de mensaxes",
+ "translate-msggroupselector-search-placeholder": "Procurar nos grupos",
+ "translate-msggroupselector-search-all": "Todos",
+ "translate-msggroupselector-search-recent": "Recentes",
+ "translate-msggroupselector-view-subprojects": "$1 {{PLURAL:$1|subgrupo|subgrupos}}",
+ "tux-languageselector": "Traducir ao",
+ "tux-tab-all": "Todas",
+ "tux-tab-untranslated": "Sen traducir",
+ "tux-tab-outdated": "Anticuadas",
+ "tux-tab-translated": "Traducidas",
+ "tux-tab-unproofread": "Sen revisar",
+ "tux-edit": "Editar",
+ "tux-status-optional": "Opcional",
+ "tux-status-fuzzy": "Anticuada",
+ "tux-status-proofread": "Revisada",
+ "tux-status-translated": "Traducida",
+ "tux-status-saving": "Gardando...",
+ "tux-status-unsaved": "Sen gardar",
+ "tux-editor-placeholder": "A súa tradución",
+ "tux-editor-paste-original-button-label": "Pegar o texto fonte",
+ "tux-editor-discard-changes-button-label": "Descartar as modificacións",
+ "tux-editor-save-button-label": "Gardar a tradución",
+ "tux-editor-skip-button-label": "Pasar á seguinte",
+ "tux-editor-cancel-button-label": "Cancelar",
+ "tux-editor-confirm-button-label": "Confirmar a tradución",
+ "tux-editor-shortcut-info": "Prema en \"$1\" para gardar, en \"$2\" para pasar á seguinte mensaxe ou en \"$3\" para ver outros atallos.",
+ "tux-editor-edit-desc": "Editar a documentación",
+ "tux-editor-add-desc": "Engadir a documentación",
+ "tux-editor-suggestions-title": "Suxestións",
+ "tux-editor-in-other-languages": "Noutras linguas",
+ "tux-editor-need-more-help": "Necesita máis axuda?",
+ "tux-editor-ask-help": "Pida máis información",
+ "tux-editor-tm-match": "$1% de coincidencia",
+ "tux-warnings-more": "{{PLURAL:$1|$1 máis}}",
+ "tux-warnings-hide": "agochar",
+ "tux-editor-save-failed": "Houbo un erro ao gardar a tradución: $1",
+ "tux-editor-n-uses": "utilizada $1 {{PLURAL:$1|vez|veces}}",
+ "tux-editor-message-desc-more": "Ollar máis",
+ "tux-editor-message-desc-less": "Ollar menos",
+ "tux-editor-clear-translated": "Agochar as traducidas",
+ "tux-editor-proofreading-mode": "Revisar",
+ "tux-editor-translate-mode": "Lista",
+ "tux-editor-proofreading-hide-own-translations": "Agochar as súas traducións",
+ "tux-editor-proofreading-show-own-translations": "Mostrar as súas traducións",
+ "tux-proofread-action-tooltip": "Marcar como revisada",
+ "tux-proofread-edit-label": "Editar",
+ "tux-editor-page-mode": "Páxina",
+ "tux-editor-outdated-warning": "Esta tradución pode necesitar unha actualización.",
+ "tux-editor-outdated-warning-diff-link": "Mostrar as diferenzas",
+ "tux-editor-doc-editor-placeholder": "Documentación da mensaxe",
+ "tux-editor-doc-editor-save": "Gardar a documentación",
+ "tux-editor-doc-editor-cancel": "Cancelar",
+ "tux-messagetable-more-messages": "$1 {{PLURAL:$1|mensaxe|mensaxes}} máis",
+ "tux-messagetable-loading-messages": "Cargando {{PLURAL:$1|a mensaxe|as mensaxes}}...",
+ "tux-message-filter-placeholder": "Filtrar a lista",
+ "tux-message-filter-result": "{{PLURAL:$1|Atopouse $1 resultado|Atopáronse $1 resultados}} para \"$2\"",
+ "tux-message-filter-advanced-button": "Procurar",
+ "tux-message-filter-optional-messages-label": "Mensaxes opcionais",
+ "tux-proofread-translated-by-self": "Traducida por vostede",
+ "tux-empty-list-all": "Este grupo de mensaxes está baleiro",
+ "tux-empty-list-all-guide": "Seleccione un grupo de mensaxes diferente",
+ "tux-translate-page-no-such-group": "<strong>O grupo indicado non existe.</strong> Seleccione un grupo de mensaxes diferente.",
+ "tux-empty-list-translated": "Non hai mensaxes traducidas",
+ "tux-empty-list-translated-guide": "Pode axudar na tradución",
+ "tux-empty-list-translated-action": "Traducir",
+ "tux-empty-no-messages-to-display": "Non hai ningunha mensaxe que mostrar.",
+ "tux-empty-there-are-optional": "Hai mensaxes opcionais non mostradas na lista",
+ "tux-empty-show-optional-messages": "Mostrar as mensaxes opcionais",
+ "tux-empty-no-outdated-messages": "Non hai mensaxes anticuadas",
+ "tux-empty-nothing-to-proofread": "Non hai nada que revisar",
+ "tux-empty-you-can-help-providing": "Pode axudar achegando traducións novas",
+ "tux-empty-nothing-new-to-proofread": "Non hai nada novo que revisar",
+ "tux-empty-you-can-review-already-proofread": "Pode revisar as traducións revisadas por outras persoas.",
+ "tux-empty-list-other": "Non hai nada que traducir",
+ "tux-empty-list-other-guide": "Pode axudar na revisión das traducións existentes",
+ "tux-empty-list-other-action": "Revisar as traducións",
+ "tux-empty-list-other-link": "Mostrar todas as mensaxes",
+ "tux-editor-close-tooltip": "Pechar",
+ "tux-editor-expand-tooltip": "Expandir",
+ "tux-editor-collapse-tooltip": "Contraer",
+ "tux-editor-message-tools-history": "Historial",
+ "tux-editor-message-tools-delete": "Borrar",
+ "tux-editor-message-tools-translations": "Todas as traducións",
+ "tux-editor-loading": "Cargando...",
+ "translate-search-more-languages-info": "$1 {{PLURAL:$1|lingua|linguas}} máis",
+ "translate-statsbar-tooltip": "$1% traducidas, $2% revisadas",
+ "translate-statsbar-tooltip-with-fuzzy": "$1% traducidas, $2% revisadas, $3% desfasadas",
+ "translate-search-more-groups-info": "$1 {{PLURAL:$1|grupo|grupos}} máis",
+ "translate-ulsdep-title": "Erro de configuración",
+ "translate-ulsdep-body": "A extensión de tradución depende da [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:UniversalLanguageSelector extensión do selector universal de linguas]."
+}
diff --git a/MLEB/Translate/i18n/core/gom-latn.json b/MLEB/Translate/i18n/core/gom-latn.json
new file mode 100644
index 00000000..783755e2
--- /dev/null
+++ b/MLEB/Translate/i18n/core/gom-latn.json
@@ -0,0 +1,10 @@
+{
+ "@metadata": {
+ "authors": [
+ "The Discoverer"
+ ]
+ },
+ "translate-page-language": "Bhas",
+ "translate-language": "Bhas",
+ "translate-mgs-column-language": "Bhas"
+}
diff --git a/MLEB/Translate/i18n/core/grc.json b/MLEB/Translate/i18n/core/grc.json
new file mode 100644
index 00000000..f58fae47
--- /dev/null
+++ b/MLEB/Translate/i18n/core/grc.json
@@ -0,0 +1,56 @@
+{
+ "@metadata": {
+ "authors": [
+ "Crazymadlover",
+ "LeighvsOptimvsMaximvs",
+ "Omnipaedista"
+ ]
+ },
+ "translate": "Μεταγλωττίζειν",
+ "translate-page-settings-legend": "Ῥυθμίσεις",
+ "translate-page-group": "Ὁμάς",
+ "translate-page-language": "Γλῶττα",
+ "translate-page-limit": "Ὅριον",
+ "translate-submit": "Φόρτισις",
+ "translate-page-navigation-legend": "Πλοήγησις",
+ "translate-next": "ἡ δέλτος ἡ ἑπομένη",
+ "translate-prev": "ἡ δέλτος ἡ προτέρα",
+ "translate-page-edit": "μεταγράφειν",
+ "translate-optional": "(προαιρετικόν)",
+ "translate-ignored": "(ἠγνοημένη)",
+ "translate-edit-contribute": "συμβάλλειν",
+ "translate-edit-in-other-languages": "Τὸ μήνυμα \"$1\" ἀλλογλωσσιστί",
+ "translate-magic-module": "Ἄρθρον:",
+ "translate-magic-submit": "Φόρτισις",
+ "translate-magic-cm-export": "ἐξάγειν",
+ "translate-magic-cm-to-be": "Μέλλουσα",
+ "translate-magic-cm-current": "Τρέχουσα",
+ "translate-magic-cm-original": "Αὐθεντικόν",
+ "translate-magic-cm-comment": "Σχόλιον:",
+ "translate-magic-cm-save": "Γράφειν",
+ "translate-rc-translation-filter-no": "Ἀπραξία",
+ "translate-stats-edits": "Μεταγραφαί",
+ "translate-stats-users": "Μεταγλωττισταί",
+ "translate-statsf-width": "Πλάτος ἐν εἰκονοστοιχείοις:",
+ "translate-statsf-height": "Ὕψος ἐν εἰκονοστοιχείοις:",
+ "translate-statsf-scale": "Κοκκιότης:",
+ "translate-statsf-scale-days": "Ἡμέραι",
+ "translate-statsf-scale-hours": "Ὧραι",
+ "translate-statsf-count": "Μέτρησις:",
+ "translate-statsf-submit": "Προθεωρεῖν",
+ "translate-sidebar-alltrans": "Ἀλλογλωσσιστί",
+ "translations": "Ἅπασαι αἱ μεταγλωττίσεις",
+ "translate-translations-fieldset-title": "Μήνυμα",
+ "translate-translations-messagename": "Ὄνομα:",
+ "translate-translations-project": "Ἐγχείρημα:",
+ "languagestats": "Στατιστικὰ γλώττης",
+ "translate-language-code": "Κῶδιξ γλώττης",
+ "translate-language-code-field-name": "Κῶδιξ γλώττης:",
+ "translate-language": "Γλῶττα",
+ "translate-total": "Μηνύματα",
+ "translate-untranslated": "Ἀμετάφραστον",
+ "translate-percentage-complete": "Πλήρωσις",
+ "translate-percentage-fuzzy": "Ἀπηρχαιωμένη",
+ "translate-mgs-column-language": "Γλῶττα",
+ "translate-save": "Γράφειν ($1)"
+}
diff --git a/MLEB/Translate/i18n/core/gsw.json b/MLEB/Translate/i18n/core/gsw.json
new file mode 100644
index 00000000..c1593862
--- /dev/null
+++ b/MLEB/Translate/i18n/core/gsw.json
@@ -0,0 +1,285 @@
+{
+ "@metadata": {
+ "authors": [
+ "Als-Chlämens",
+ "Als-Holder",
+ "J. 'mach' wust",
+ "Shirayuki"
+ ]
+ },
+ "translate": "Ibersetze",
+ "translate-desc": "[[Special:Translate|Spezialsyte]] fir d Ibersetzig vu MediaWiki-Syschtemnochrichte",
+ "translate-taskui-view": "Alli Nochrichte aazeige",
+ "translate-taskui-untranslated": "Alli nit ibersetzte Mäldige aazeige",
+ "translate-taskui-optional": "Alli optionale Mäldige aazeige",
+ "translate-taskui-acceptqueue": "Nume Mäldige aazeige, wu ich cha akzeptiere",
+ "translate-taskui-reviewall": "Alli Ibersetzige iberpriefe",
+ "translate-taskui-export-to-file": "Im syschtemeigene Format exportiere",
+ "translate-taskui-export-as-po": "Fir d Offline-Ibersetzig exportiere",
+ "translate-taction-translate": "Ibersetze",
+ "translate-taction-proofread": "Korrekturläse",
+ "translate-taction-lstats": "Sprochstatischtike",
+ "translate-taction-mstats": "Statischtike zu de Mäldigsgruppe",
+ "translate-taction-export": "Exportiere",
+ "translate-taction-disabled": "Die Aktion isch in däm Wiki deaktiviert.",
+ "translate-page-no-such-language": "D Syte, wu Du aagee hesch, isch nit giltig.",
+ "translate-page-no-such-group": "D Gruppe, wu Du aagee hesch, isch nit giltig.",
+ "translate-page-disabled": "Ibersetzige in däre Sproch in däre Gruppe sin deaktiviert wore. Grund:\n\n<em>$1</em>",
+ "translate-language-disabled": "Ibersetzige in die Sproche sin nit megli.",
+ "translate-page-settings-legend": "Yystellige",
+ "translate-page-group": "Gruppe",
+ "translate-page-language": "Sproch",
+ "translate-page-limit": "Gränz",
+ "translate-page-limit-option": "$1 {{PLURAL:$1|Syschtemnochricht|Syschtemnochrichte}} pro Syte",
+ "translate-submit": "Hol",
+ "translate-page-navigation-legend": "Navigation",
+ "translate-page-showing": "Syschtemnochrichte $1 bis $2 vu insgsamt $3",
+ "translate-page-showing-all": "$1 {{PLURAL:$1|Syschtemnochricht|Syschtemnochrichte}}",
+ "translate-page-showing-none": "Kei Syschtemnochrichte wu aazeigt chenne wäre.",
+ "translate-next": "negschti Syte",
+ "translate-prev": "vorderi Syte",
+ "translate-page-description-legend": "Informatione iber die Gruppe",
+ "translate-page-description-hasoptional": "Die Mäldigsgruppe enthält optionali Mäldige.\nOptionali Mäldige sötte numme übersetzt werde, wänn's in dynrer Sprooch en Bedarf defür het, wie z.B. dass kei Läärzeiche bruucht werde oder s richtigi transliteriere vo Eigenäme. $1",
+ "translate-page-description-hasoptional-open": "Optionali Mäldige aazeige.",
+ "translate-page-edit": "bearbeite",
+ "translate-ext-url": "<hr />Website: $1",
+ "translate-optional": "(optional)",
+ "translate-ignored": "(ignoriert)",
+ "translate-edit-title": "„$1“ bearbeite",
+ "translate-edit-definition": "Syschtemnochricht im Original",
+ "translate-edit-translation": "Ibersetzig",
+ "translate-edit-contribute": "bearbeite",
+ "translate-edit-no-information": "''Die Syschtemnochricht het no kei Dokumentation. Wänn Du weisch, wu un in welem Zämmehang si bruucht wird, no chasch andere Ibersetzer hälfe, wänn Du ne Dokumentation zuefiegsch.''",
+ "translate-edit-information": "Information iber d Syschtemnochricht ($1)",
+ "translate-edit-in-other-languages": "Syschtemnochricht in andere Sproche",
+ "translate-edit-committed": "Aktuälli Ibersetzig",
+ "translate-edit-warnings": "Warnig iber uuvollständigi Ibersetzige",
+ "translate-edit-tmsugs": "Vorschleg vum Ibersetzigsspycher",
+ "translate-edit-tmmatch-source": "Ibersetzigsquälltext: $1",
+ "translate-edit-tmmatch": "$1% Ibereinstimmig",
+ "translate-use-suggestion": "Di aktuäll Ibersetzig mit däm Vorschlag ersetze:",
+ "translate-edit-nopermission": "Du bruchsch d Rächt zum Nochrichte ibersetze z chenne.",
+ "translate-edit-askpermission": "E Aatrag uf d Rächt stelle",
+ "translate-magic-pagename": "Erwytereti MediaWiki-Ibersetzig",
+ "translate-magic-help": "Du chasch doo Alias fir Spezialsyte, magischi Werter un Namensruumnäme ibersetze.\n\nSpezialsyten un magischi Werter chenne mehreri Ibersetzige haa, si wäre jewyyls dur e Komma (,) trännt. Namensruumnäme derfe nume je ei Ibersetzig haa.\n\nIn dr Ibersetzig vun eme Namensruumnamen het <code>$1 talk</code> e spezielli Bedytig. <code>$1</code> wird dur dr Projäktname ersetzt (zum Byspil <code>{{ns:project_talk}}</code>).\nWänn s in Dyynere Sproch nit megli isch, e grammatikalisch korrekti Form dervu z bilde ohni dr Projäktname z verändere, no loss es uns bitte uf [[Support]] wisse.\n\nDu muesch in dr Ibersetzer-Gruppe syy go Änderige z spychere.\nÄnderige wäre zerscht bim Klick uf dr Spychere-Chnopf gspycheret.",
+ "translate-magic-module": "Modul:",
+ "translate-magic-submit": "Hol",
+ "translate-magic-cm-export": "Export",
+ "translate-magic-nothing-to-export": "S het nyt, wu sott exportiert wäre.",
+ "translate-magic-cm-to-be": "Sott syy",
+ "translate-magic-cm-current": "Aktuäll",
+ "translate-magic-cm-original": "Original",
+ "translate-magic-cm-comment": "Kommentar:",
+ "translate-magic-cm-save": "Spychere",
+ "translate-magic-cm-updatedusing": "Aktualisiert dur [[Special:AdvancedTranslate|{{int:Translate-magic-pagename}}]]",
+ "translate-magic-cm-savefailed": "Spychere fählgschlaa",
+ "translate-magic-special": "Spezialsyte-Alias",
+ "translate-magic-words": "Magischi Werter",
+ "translate-magic-namespace": "Namensruum-Näme",
+ "translate-magic-notsaved": "Dyy Bearbeitig het nit chenne gspycheret wäre!",
+ "translate-magic-errors": "Bitte verbessere {{PLURAL:$1|dää Fähler|die Fähler}} in dr Ibersetzige:",
+ "translate-magic-saved": "Dyyni Änderige sin erfolgryych gspycheret wore.",
+ "translate-checks-parameters": "{{PLURAL:$2|Dää Parameter wird|Die Parameter wäre}} nit bruucht: <strong>$1</strong>",
+ "translate-checks-parameters-unknown": "{{PLURAL:$2|Dää Parameter isch|Die Parameter sin}} nit bekannt: <strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-balance": "Die {{PLURAL:$2|Chlammeresetzig isch|Chlammersetzige sin}} nit uusgliche: <strong>$1</strong>",
+ "translate-checks-links": "{{PLURAL:$2|De Link isch|Die Links sin}} problematisch: <strong>$1</strong>",
+ "translate-checks-links-missing": "{{PLURAL:$2|De Link wird|Die $2 Links wäre}} vermisst:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-xhtml": "Bitte ersetz {{PLURAL:$2|dää Tag|die Tag}} dur di korrekte: <strong>$1</strong>",
+ "translate-checks-plural": "S Original bruucht <nowiki>{{PLURAL:}}</nowiki>, d Ibersetzig aber nit.",
+ "translate-checks-plural-forms": "Zue <nowiki>{{PLURAL:}}</nowiki>{{PLURAL:$1|isch ei Form|sin $1 Forme}} aagee wore. S {{PLURAL:$2|wird aber nume ei Form|wäre aber nume $2 Forme}} unterstitzt (uuschließli 0= un 1=).",
+ "translate-checks-plural-dupe": "Zue <nowiki>{{PLURAL:}}</nowiki> sin zwoo glychi Forme aagee wore. Bspw. sott aber <nowiki>{{PLURAL:$1|Milch|Milch}}</nowiki> as <nowiki>{{PLURAL:$1|Milch}}</nowiki> aagee wäre.",
+ "translate-checks-pagename": "Namensruum gänderet dur d Definition",
+ "translate-checks-format": "Die Ibersetzig entspricht nit dr Definition oder het e uugiltigi Syntax: $1",
+ "translate-checks-escape": "Die Escape-Sequenze chenne us Versäh vorhande syy: <strong>$1</strong>",
+ "translate-checks-parametersnotequal": "D Parameteraazahl isch {{PLURAL:$1|$1}}, sott aber {{PLURAL:$2|$2}} syy.",
+ "translate-checks-malformed": "<nowiki>$1</nowiki> isch formal nit giltig.",
+ "translate-checks-fudforum-syntax": "Bitte bruch <nowiki>$1</nowiki> statt <nowiki>$2</nowiki> in däm Projäkt.",
+ "translate-pref-nonewsletter": "Schick mir kei E-Mail-Newsletter zue",
+ "translate-pref-editassistlang": "Hilfssproche:",
+ "prefs-translate": "Ibersetzigoptione",
+ "translate-pref-editassistlang-help": "Dur Komma trännti Lischt vu Sprochcodes.\nIbersetzige vun ere Nochricht in däne Sproche wäre aazeigt, wänn du am Ibersetze bisch.\nD Standardlischt vu Sproche hangt vu Dyyre Sproch ab.",
+ "translate-pref-editassistlang-bad": "Nit giltige Sprochcode in dr Lischt:\n<nowiki>$1</nowiki>.",
+ "right-translate": "S Ibersetze-Interfaces bruuche",
+ "right-translate-manage": "Nochrichtegruppe verwalte",
+ "action-translate-manage": "Nochrichtegruppe z verwalte",
+ "right-translate-import": "Offline-Ibersetzige importiere",
+ "action-translate-import": "Offline-Ibersetzige z importiere",
+ "right-translate-messagereview": "Übersetzige überpriefe",
+ "right-translate-groupreview": "Arbetsablaufstatus vu Nochrichtegruppe ändere",
+ "translate-rc-translation-filter": "Ibersetzige filtere:",
+ "translate-rc-translation-filter-no": "nyt",
+ "translate-rc-translation-filter-only": "Zeig nume Ibersetzige",
+ "translate-rc-translation-filter-filter": "Ibersetzige filtere",
+ "translate-rc-translation-filter-site": "Nume Änderige an Syschtemnochrichte vu dr Site",
+ "translationstats": "Ibersetzigsstatischtike",
+ "translate-stats-edits": "Bearbeitige",
+ "translate-stats-users": "Ibersetzer",
+ "translate-stats-registrations": "Regischtrierige",
+ "translate-stats-reviews": "Priefige",
+ "translate-stats-reviewers": "Priefer",
+ "translate-statsf-intro": "Du chasch eifachi Statischtike mit däm Formular aalege. Alli Wärt hän unteri un oberi Gränze.",
+ "translate-statsf-options": "Zeichnigsoptione",
+ "translate-statsf-width": "Breiti in Pixel:",
+ "translate-statsf-height": "Hechi in Pixel:",
+ "translate-statsf-days": "Start-Datum:",
+ "translate-statsf-start": "Start-Datum:",
+ "translate-statsf-scale": "Granularität:",
+ "translate-statsf-scale-months": "Monet",
+ "translate-statsf-scale-weeks": "Wuche",
+ "translate-statsf-scale-days": "Täg",
+ "translate-statsf-scale-hours": "Stunde",
+ "translate-statsf-count": "Maßstab:",
+ "translate-statsf-count-edits": "Aazahl Bearbeitige",
+ "translate-statsf-count-users": "Aktivi Ibersetzer",
+ "translate-statsf-count-registrations": "Neji Benutzer",
+ "translate-statsf-count-reviews": "Übersetzigspriefer",
+ "translate-statsf-count-reviewers": "Priefer",
+ "translate-statsf-language": "Komma-trännti Lischt vu dr Sprochcode:",
+ "translate-statsf-group": "Komma-trännti Lischt vu dr Gruppecode:",
+ "translate-statsf-submit": "Vorschou",
+ "translate-tag-category": "Ibersetzbari Syte",
+ "translate-tag-page-desc": "Ibersetzig vu dr Wikisyte [[$2|$1]].",
+ "translate-sidebar-alltrans": "In andere Sproche",
+ "translations": "Alli Ibersetzige",
+ "translations-summary": "Gib e Nochrichtename yy go alli verfiegbare Ibersetzige aazeige.",
+ "translate-translations-no-message": "„$1“ isch kei ibersetzbari Nochricht",
+ "translate-translations-none": "Kei Ibersetzige fir „$1“ verfiegbar",
+ "translate-translations-count": "S {{PLURAL:$1|isch e Ibersetzig|sin $1 Ibersetzige}} gfunde wore.",
+ "translate-translations-fieldset-title": "Nochricht",
+ "translate-translations-messagename": "Name:",
+ "translate-translations-project": "Projäkt:",
+ "translate-translations-including-no-param": "Bitte gib e giltige Nochrichteschlissel as Untersyteparameter aa",
+ "translate-translations-history-short": "V",
+ "languagestats": "Sprochstatischtike",
+ "languagestats-summary": "Die Syte zeigt Ibersetzigsstatischtike fir alli Nochrichtegruppe vun ere Sproch.",
+ "languagestats-stats-for": "Ibersetzigsstatischtike fir $1 ($2).",
+ "languagestats-recenttranslations": "Aktuälli Ibersetzige",
+ "translate-langstats-incomplete": "E Deil vo de Statistike uff dere Syte sin nit vollständig. Due d Syte no emool lade, zume wyteri Statistike z erhalte.",
+ "translate-langstats-expand": "ufklappe",
+ "translate-langstats-collapse": "zueklappe",
+ "translate-langstats-expandall": "alli ufklappe",
+ "translate-langstats-collapseall": "alli zueklappe",
+ "translate-language-code": "Sprochcode",
+ "translate-language-code-field-name": "Sprochcode:",
+ "translate-suppress-complete": "Unterdruck komplett ibersetzti Nochrichtegruppe",
+ "translate-ls-noempty": "Mäldigsgruppe ussblände, wo no gar nüüt übersetzt isch",
+ "translate-language": "Sproch",
+ "translate-total": "Syschtemnochrichte",
+ "translate-untranslated": "Nit ibersetzt",
+ "translate-percentage-complete": "Vollständigkeit",
+ "translate-percentage-fuzzy": "Veraltet",
+ "translate-languagestats-overall": "Alli Systenmäldigsgruppe zämme",
+ "translate-ls-submit": "Statischtike aazeige",
+ "translate-ls-column-group": "Mäldigsgrupp",
+ "translate-mgs-pagename": "Statischtike zu de Mäldigsgruppe",
+ "translate-mgs-fieldset": "Yystellige aazeige",
+ "translate-mgs-group": "Mäldigsgrupp:",
+ "translate-mgs-nocomplete": "Sprooche nit aazeige, wo scho vollständig übersetzt sin",
+ "translate-mgs-noempty": "Sprooche ussblände, wo no gar nüüt übersetzt isch",
+ "translate-mgs-submit": "Statischtike aazeige",
+ "translate-mgs-column-language": "Sprooch",
+ "translate-mgs-totals": "Alli Sprooche zämme",
+ "translate-mgs-invalid-group": "D Mäldigsgruppe $1, wo du aagee hesch, isch nit vorhande.",
+ "translate-mgs-nothing": "Zue de Statistike, wo du aagfordret hesch, git's kei Date zum Aazeige.",
+ "supportedlanguages": "Unterstitzti Sproche",
+ "supportedlanguages-summary": "Die Syte zeigt e Lischte vu allne unterstitze Sproche uf {{SITENAME}}, zämme mit dr Näme vu dr Ibersetzer, wu an däne Sproche mitgschafft hän.\nMeh Informatione zuen ere Sproch git s bim Klick uf dr Portallink.\nDe Name vo eme Ibersetzer wird grösser dargstellt, je mee Bearbeitige de Ibersetzer gmacht het.\nD Farb, wo de Name mit unterstriche isch, zeigt aa, wänn de Ibersetzer zum letschte Mool aktiv mitgschafft het.",
+ "supportedlanguages-colorlegend": "Farblegene: Letschti Übersetzig vor $1 Dääg.",
+ "supportedlanguages-translators": "{{PLURAL:$2|Ibersetzer|Ibersetzer}}: $1",
+ "supportedlanguages-recenttranslations": "Aktuälli Ibersetzige",
+ "supportedlanguages-count": "Insgsamt $1 {{PLURAL:$1|Sprooch|Sprooche}}.",
+ "supportedlanguages-activity": "$1: $2 {{PLURAL:$2|Bearbeitig|Bearbeitige}} - letschti Bearbeitig vor $3 {{PLURAL:$3|Daag|Dääg}}",
+ "translate-save": "Spychere ($1)",
+ "translate-jssti-add": "Zue dr Lischt zuefiege",
+ "managemessagegroups": "Nochrichtegruppeverwaltig",
+ "translate-smg-notallowed": "Du derfsch die Aktion nit uusfiere",
+ "translate-smg-nochanges": "Es git kei Änderige, wu sotte verschafft wäre.",
+ "translate-smg-submit": "Änderige zum Verschaffe ibertrage",
+ "translate-smg-submitted": "Nochrichtedefinitione sin aktualisiert wore. Änderige wären im Hintergrund verschafft.",
+ "translate-smg-left": "Nochrichteninhalt im Wiki",
+ "translate-smg-right": "Änderige, wu yygehn",
+ "translate-manage-import-diff": "Nochricht $1 | Aktione: $2",
+ "translate-manage-import-new": "Neji Nochricht $1",
+ "translate-manage-import-deleted": "Gleschti Nochricht $1",
+ "translate-manage-action-import": "Importiere",
+ "translate-manage-action-conflict": "Importiere un mit „FUZZY“ markiere",
+ "translate-manage-action-ignore": "Ignoriere",
+ "translate-manage-action-fuzzy": "Importiere un Ibersetzige mit „FUZZY“ markiere",
+ "translate-manage-nochanges": "S het kei Änderige in dr Nochrichtedefinitione vu däre Gruppe.",
+ "translate-manage-nochanges-other": "S het kei Änderige in däre Sproch.\nDruck uf dr Link unte go zue dr Gruppedetailaasicht zruckgoh.",
+ "translate-manage-inconsistent": "Inskonsischtänz in dr Aafrog entdeckt.\nBitte iberprief d Änderige un versuech s nonemol. Detail: $1.",
+ "translate-manage-toolong": "Di maximal Arbetsablauf-Zyt vu $1 Sekunde isch iberschritte wore.\nBitte schick s Format nonemol ab go mit em Arbetsablauf wytermache.",
+ "translate-manage-import-summary": "Am Importiere vun ere neje Version us ere extärne Quälle",
+ "translate-manage-conflict-summary": "Am Importiere vun ere neje Version us ere extärne Quälle. Bitte iberpriefe.",
+ "translate-manage-fuzzy-summary": "D Nochrichtedefinition het sich gänderet",
+ "translate-manage-submit": "Uusfiere",
+ "translate-manage-intro-other": "Unte het s Lischt vu Ibersetzigsänderige in dr Sproch $1.\nBitte prief d Änderige un wehl e Aktion uus, wu Du witt uusfiere fir jedi Ibersetzig.\nWänn Du Änderige witt ignoriere, wäre si bim negschte Export ußer Chraft gsetzt.",
+ "translate-manage-import-ok": "Het e neji Version vu dr Syte $1 importiert.",
+ "translate-manage-import-done": "Alles gmacht!",
+ "importtranslations": "Ibersetzige importiere",
+ "translate-import-from-local": "Datei lokal uffelade:",
+ "translate-import-load": "Datei lade",
+ "translate-import-err-dl-failed": "Datei cha nit abgruefe wäre:\n$1",
+ "translate-import-err-ul-failed": "S Uffelade vu dr Datei isch nit erfolgryych gsi",
+ "translate-import-err-invalid-title": "Dr Dateiname <nowiki>$1</nowiki>, wu Du aagee hesch, isch nit giltig gsi.",
+ "translate-import-err-no-such-file": "D Datei <nowiki>$1</nowiki> git s nit oder isch nit lokal uffeglade wore.",
+ "translate-import-err-stale-group": "D Nochrichtegruppe, wu die Datei zuegordnet woren isch, git s nit.",
+ "translate-import-err-no-headers": "D Datei isch kei Datei im Gettext-Format vu dr Erwyterig „Translate“:\nD Gruppen un Sproche hän nit us em Dateichopf chenne ermittlet wäre.",
+ "translate-import-err-warnings": "D Datei entspricht nit em erwartete Format.\nStell sicher, ass dr Editor kei <code>msgctxt</code>-Fälder usenimmt.\nDetail: $1",
+ "translate-js-summary": "Zämmefassig:",
+ "translate-js-save": "Spychere",
+ "translate-js-next": "Spychere un di negscht ufmache",
+ "translate-js-nonext": "Des isch di letscht Nochricht uf däre Syte gsi.",
+ "translate-js-skip": "Ibergumpe zue dr negschte",
+ "translate-js-save-failed": "S Spychere isch fählgschlaa. Bitte due dää Fähler mälde.",
+ "translate-js-history": "Ibersetzigsgschicht",
+ "translate-js-support": "Frog stelle",
+ "translate-js-support-title": "Frog no Hilf, wänn s nit gnue Informatione git go die Nochricht richtig ibersetze.",
+ "translate-js-support-unsaved-warning": "S het nit gspychereti Ibersetzige.",
+ "translate-gs-pos": "Pos.",
+ "translate-gs-code": "Code",
+ "translate-gs-continent": "Kontinänt",
+ "translate-gs-speakers": "Sprächer",
+ "translate-gs-score": "Punktzahl",
+ "translate-gs-multiple": "Mehfach",
+ "translate-gs-count": "Zellig",
+ "translate-gs-total": "Insgsamt",
+ "translate-gs-avgscore": "Durschn. Punktzahl",
+ "translate-documentation-language": "Systemnochrichtedokumentation",
+ "translate-searchprofile": "Ibersetzige",
+ "translate-searchprofile-tooltip": "In allene Übersetzige sueche",
+ "translate-search-languagefilter": "Nooch Sprooche filtre:",
+ "translate-search-nofilter": "Nit nooch Sprooche filtre",
+ "translate-messagereview-submit": "Aanee",
+ "translate-messagereview-progress": "Akzeptier …",
+ "translate-messagereview-failure": "Akzeptierig...fehlgschlo: $1",
+ "translate-messagereview-done": "Akzeptiert",
+ "translate-messagereview-reviews": "Akzeptiert vo {{PLURAL:$1|eme Benutzer|$1 Benutzer}}",
+ "translate-messagereview-reviewswithyou": "Akzeptiert vu {{PLURAL:$1|eim Benutzer|$1 Benutzer, Du sälber mitzellt}}",
+ "api-error-invalidrevision": "D Übersetzig het nit chönne gfunde werde",
+ "api-error-unknownmessage": "D Noochricht het nit chönne gfunde werde",
+ "api-error-fuzzymessage": "Die Übersetzig isch als veraltet markiert",
+ "api-error-owntranslation": "Du chasch dyni eigni Übersetzige nit akzeptiere.",
+ "translate-messagereview-no-fuzzy": "Veralteti Übersetzige chönne nit akzeptiert werde.",
+ "translate-messagereview-no-own": "Du chasch dyni eigni Übersetzige nit akzeptiere.",
+ "translate-messagereview-doit": "Die Übersetzig als richtig akzeptiere.",
+ "log-name-translationreview": "Übersetzigspriefer-Logbuech",
+ "log-description-translationreview": "Logbuech vo allene Übersetzigspriefige vo Übersetzige un Noochrichtegruppe.",
+ "logentry-translationreview-message": "$1 het d Übersetzig $3{{GENDER:$2|überprieft}}",
+ "translate-workflow-state-": "(nit gsetzt)",
+ "translate-workflowstatus": "Status: $1",
+ "translate-workflow-set-do": "Yystelle",
+ "translate-workflow-set-doing": "Am Yystelle ...",
+ "translate-workflow-set-done": "Yygstellt",
+ "translate-workflow-set-error-alreadyset": "Dr aagforderet Status isch identisch mit em aktuälle Status.",
+ "translate-workflow-autocreated-summary": "Automatisch Aalege vu dr Syte fir Arbetsablaufstatus $1",
+ "translate-stats-workflow": "Status",
+ "translate-workflowgroup-label": "Arbetsablaufstatus",
+ "translate-workflowgroup-desc": "Die Nochrichtegruppe zeigt d Status zum Arbetsablauf bi Ibersetzige.\nD Status wäre mit dr Konfigurationsvariable <code lang=\"en\">$wgTranslateWorkflowStates</code> definiert.",
+ "translate-dynagroup-recent-label": "Aktuälli Ibersetzige",
+ "translate-dynagroup-recent-desc": "Die Nochrichtegruppe zeigt alli aktuälle Ibersetzige in däre Sproch aa.\nAm nitzligschte isch si fir s Korrekturläse.",
+ "translate-dynagroup-by": "Ibersetzig {{GENDER:$1|vum|vu dr|vu}} $1",
+ "translate-dynagroup-byc": "Ibersetzig {{GENDER:$1|vum|vu dr|vu}} $1 ($2)",
+ "translate-dynagroup-last": "Letschti Änderig {{GENDER:$1|vum|vu dr|vu}} $1",
+ "translate-dynagroup-lastc": "Letschti Änderig {{GENDER:$1|vum|vu dr|vu}} $1 ($2)",
+ "translate-gethelp": "Hilf"
+}
diff --git a/MLEB/Translate/i18n/core/gu.json b/MLEB/Translate/i18n/core/gu.json
new file mode 100644
index 00000000..f541dd8f
--- /dev/null
+++ b/MLEB/Translate/i18n/core/gu.json
@@ -0,0 +1,140 @@
+{
+ "@metadata": {
+ "authors": [
+ "Ashok modhvadia",
+ "Dsvyas",
+ "KartikMistry"
+ ]
+ },
+ "translate": "ભાષાંતર",
+ "translate-desc": "મીડિયાવિકિ અને આગળ ભાષાંતરણ માટે [[Special:Translate|ખાસ પાનું]]",
+ "translate-taskui-view": "બધાં સંદેશાઓ બતાવો",
+ "translate-taskui-untranslated": "અભાષાંતરિત સંદેશાઓ બતાવો",
+ "translate-taskui-optional": "વૈકલ્પિક સંદેશાઓ બતાવો",
+ "translate-taskui-reviewall": "બધાં ભાષાંતરની ચકાસણી કરો",
+ "translate-taction-translate": "ભાષાંતર કરો",
+ "translate-taction-proofread": "પરીક્ષણ",
+ "translate-taction-lstats": "ભાષા અંકવિવરણ",
+ "translate-taction-mstats": "સંદેશા સમૂહ અંકવિવરણ",
+ "translate-taction-export": "નિકાસ",
+ "translate-page-no-such-language": "નિર્દેશિત ભાષા અમાન્ય છે.",
+ "translate-page-no-such-group": "નિર્દેશિત સમુહ અમાન્ય છે.",
+ "translate-page-disabled": "આ સમુહમાં આ ભાષાનો અનુવાદ નિષ્ક્રિય કરી દેવાયો છે.\n\nકારણ:\n\n<em>$1</em>",
+ "translate-page-settings-legend": "ગોઠવણીઓ",
+ "translate-page-group": "જૂથ",
+ "translate-page-language": "ભાષા",
+ "translate-page-limit": "અવધિ",
+ "translate-page-limit-option": "$1 {{PLURAL:$1|સંદેશા|સંદેશાઓ}} પ્રતિ પાના",
+ "translate-submit": "મેળવો",
+ "translate-page-navigation-legend": "સંચાલન",
+ "translate-page-showing": "$3 પૈકીના $1થી $2 સંદેશાઓ બતાવ્યા છે.",
+ "translate-page-showing-all": "રજૂઆત $1 {{PLURAL:$1|સંદેશ|સંદેશાઓ}}",
+ "translate-page-showing-none": "બતાવવા માટે કોઇ સંદેશાઓ નથી.",
+ "translate-next": "પછીનું પાનું",
+ "translate-prev": "પહેલાંનું પાનું",
+ "translate-page-description-legend": "જૂથ વિશે માહિતી",
+ "translate-page-edit": "સંપાદન",
+ "translate-ext-url": "<hr />વેબસાઇટ: $1",
+ "translate-optional": "વૈકલ્પિક",
+ "translate-ignored": "ઉપેક્ષીત",
+ "translate-edit-title": "\"$1\" સંપાદન કરો",
+ "translate-edit-definition": "સંદેશ વ્યાખ્યા",
+ "translate-edit-translation": "ભાષાંતર",
+ "translate-edit-contribute": "યોગદાન",
+ "translate-edit-no-information": "''આ સંદેશામાં ઉપયોગીતાપ્રમાણ નથી.\n\nજો તમે જાણતા હો કે ક્યાં અને કેવી રીતે આ સંદેશો વપરાયો છે, તો તમે આ સંદેશામાં ઉપયોગીતાપ્રમાણ ઉમેરી અને અન્ય ભાષાંતરકારોને મદદ કરી શકો છો.''",
+ "translate-edit-information": "સંદેશા વિશે માહિતી ($1)",
+ "translate-edit-in-other-languages": "અન્ય ભાષાઓમાં સંદેશો",
+ "translate-edit-committed": "સોફ્ટવેરમાં વર્તમાન ભાષાંતર",
+ "translate-edit-warnings": "અધુરા ભાષાંતરો વિશે ચેતવણી",
+ "translate-edit-tmsugs": "ભાષાંતર સ્મૃતિમાંથી સુચનો",
+ "translate-edit-askpermission": "પરવાનગી મેળવો",
+ "translate-magic-pagename": "વિસ્તારિત મિડિયાવિકિ ભાષાંતર",
+ "translate-magic-module": "નમૂનો:",
+ "translate-magic-submit": "મેળવો",
+ "translate-magic-cm-export": "નિકાસ",
+ "translate-magic-nothing-to-export": "નિકાસ કરવા માટે કશું નથી.",
+ "translate-magic-cm-current": "વર્તમાન",
+ "translate-magic-cm-original": "મૂળ",
+ "translate-magic-cm-comment": "ટિપ્પણી:",
+ "translate-magic-cm-save": "સાચવો",
+ "translate-magic-cm-savefailed": "સાચવો નિષ્ફળ",
+ "translate-magic-special": "ખાસ પાનાં ઉપનામ",
+ "translate-magic-words": "જાદુઇ શબ્દો",
+ "translate-magic-namespace": "નામાવકાશ નામો",
+ "translate-magic-notsaved": "આપનું સંપાદન સચવાયું નથી!",
+ "translate-magic-errors": "કૃપા કરી અહીં આપેલ {{PLURAL:$1|ક્ષતિ|ક્ષતિઓ}}ને ભાષાંતરમાં સુધારો:",
+ "translate-magic-saved": "આપના ફેરફારો સફળતાપૂર્વક સચવાયા હતા.",
+ "translate-checks-parameters": "અહીં આપેલ {{PLURAL:$2|પરિમાણ|પરિમાણો}}નો ઉપયોગ કરાયો નથી:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-parameters-unknown": "અહીં આપેલ {{PLURAL:$2|પરિમાણ|પરિમાણો}} અજાણ્યા છે:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-balance": "ત્યાં અસમાન સંખ્યાનાં {{PLURAL:$2|કૌંસ|કૌંસ}} છે:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links": "આપેલ {{PLURAL:$2|કડી|$2 કડીઓ}} સંદિગ્ધ છે:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links-missing": "આપેલ {{PLURAL:$2|કડી|$2 કડીઓ}} ગાયબ છે:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-xhtml": "કૃપા કરી આપેલ {{PLURAL:$2|ટૈગ|ટૈગ્સ}}ને સાચી શાથે બદલો:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-plural": "વ્યાખ્યા વપરાઇ <nowiki>{{PLURAL:}}</nowiki> પરંતુ ભાષાંતર નહીં.",
+ "translate-checks-format": "આ ભાષાંતર વ્યાખ્યાનું પાલન કરતું નથી કે અવૈધ વાક્યવિન્યાસ $1 ધરાવે છે:",
+ "translate-pref-nonewsletter": "મને ઇ-મેઇલ પત્રિકા મોકલશો નહીં",
+ "translate-pref-editassistlang": "સહાયક ભાષાઓ:",
+ "prefs-translate": "ભાષાંતર વિકલ્પો",
+ "translate-pref-editassistlang-help": "અલ્પવિરામો વડે વિભાજીત ભાષાસંકેતોની યાદી.\n\nજ્યારે તમે ભાષાંતર કરતા હશો ત્યારે આ ભાષાઓમાં ભાષાંતરીત સંદેશાઓ જોવા મળશે.\n\nભાષાઓની ડિફોલ્ટ યાદી તમારી ભાષા પર આધારીત છે.",
+ "translate-pref-editassistlang-bad": "યાદી <nowiki>$1</nowiki> માં અમાન્ય ભાષાસંકેત.",
+ "translate-rc-translation-filter": "ભાષાંતરોને ચાળો:",
+ "translate-rc-translation-filter-no": "કશું નથી",
+ "translate-rc-translation-filter-only": "ફક્ત ભાષાંતરો બતાવો",
+ "translate-rc-translation-filter-site": "ફક્ત સાઇટ સંદેશાઓમાં પરિવર્તનો",
+ "translationstats": "ભાષાંતર અંક વિવરણ",
+ "translate-stats-edits": "સંપાદનો",
+ "translate-stats-users": "ભાષાંતરકર્તાઓ",
+ "translate-statsf-intro": "તમે આ ફોર્મ વડે સરળ અંકગણતરીઓ કરી શકો છો.\n\nબધાજ મુલ્યોને ઉપલી અને નિચલી સીમાઓ છે.",
+ "translate-statsf-options": "આલેખ વિકલ્પો",
+ "translate-statsf-width": "પહોળાઇ પિક્સેલ્સમાં:",
+ "translate-statsf-height": "ઉંચાઇ પિક્સેલ્સમાં:",
+ "translate-statsf-days": "સમયગાળો દિવસોમાં:",
+ "translate-statsf-start": "આરંભ તારીખ:",
+ "translate-statsf-scale": "કણિકતા:",
+ "translate-statsf-scale-months": "મહિનાઓ",
+ "translate-statsf-scale-weeks": "અઠવાડિયાંઓ",
+ "translate-statsf-scale-days": "દિવસો",
+ "translate-statsf-scale-hours": "કલાકો",
+ "translate-statsf-count": "માપ:",
+ "translate-statsf-count-edits": "સંપાદનોની સંખ્યા",
+ "translate-statsf-count-users": "સક્રિય ભાષાંતરકારો",
+ "translate-statsf-count-registrations": "નવો સભ્ય",
+ "translate-statsf-count-reviews": "ભાષાંતર ચકાસણી",
+ "translate-statsf-language": "અલ્પવિરામ વિભાજીત ભાષાસંહિતાઓની યાદી:",
+ "translate-statsf-group": "અલ્પવિરામ વિભાજીત સમુદાય સંહિતાઓની યાદી:",
+ "translate-statsf-submit": "પૂર્વદર્શન",
+ "translate-tag-category": "ભાષાંતરયોગ્ય પાનાંઓ",
+ "translate-tag-page-desc": "વિકિ પાનાં [[$2|$1]]નું ભાષાંતર.",
+ "translate-sidebar-alltrans": "બીજી ભાષાઓમાં",
+ "translations": "બધાં ભાષાંતરો",
+ "translate-translations-fieldset-title": "સંદેશ",
+ "translate-translations-messagename": "નામ:",
+ "translate-translations-project": "યોજના",
+ "languagestats": "ભાષાનું અંક વિવરણ",
+ "translate-language-code": "ભાષાસંહિતા",
+ "translate-language-code-field-name": "ભાષાસંહિતા:",
+ "translate-language": "ભાષા",
+ "translate-total": "સંદેશાઓ",
+ "translate-untranslated": "અભાષાંતરીત",
+ "translate-percentage-complete": "સમાપ્તિ",
+ "translate-percentage-fuzzy": "કાલગ્રસ્ત",
+ "translate-mgs-column-language": "ભાષા",
+ "supportedlanguages": "આધારિત ભાષાઓ",
+ "supportedlanguages-recenttranslations": "તાજેતરનાં ભાષાંતરો",
+ "translate-save": "સાચવો ($1)",
+ "translate-jssti-add": "સૂચિમાં ઉમેરો",
+ "translate-manage-action-ignore": "અવગણો",
+ "importtranslations": "ભાષાંતરો આયાત કરો",
+ "translate-import-from-local": "સ્થાનિક ફાઇલ અપલોડ કરો:",
+ "translate-import-load": "ફાઇલ લાવો",
+ "translate-js-save": "સાચવો",
+ "translate-js-support": "પ્રશ્ન પૂછો",
+ "translate-gs-total": "કુલ",
+ "translate-messagereview-done": "પરીક્ષણ થયેલું",
+ "translate-gethelp": "મદદ",
+ "tux-tab-unproofread": "પરીક્ષણરહિત",
+ "tux-status-proofread": "પરીક્ષણ થયેલું",
+ "tux-editor-proofreading-mode": "પરીક્ષણ",
+ "tux-editor-page-mode": "પાનું",
+ "tux-empty-nothing-new-to-proofread": "પરીક્ષણ માટે નવું કંઈ નથી"
+}
diff --git a/MLEB/Translate/i18n/core/gv.json b/MLEB/Translate/i18n/core/gv.json
new file mode 100644
index 00000000..391db643
--- /dev/null
+++ b/MLEB/Translate/i18n/core/gv.json
@@ -0,0 +1,13 @@
+{
+ "@metadata": {
+ "authors": [
+ "MacTire02",
+ "Shimmin Beg"
+ ]
+ },
+ "translate": "Dy hyndaa",
+ "translate-page-group": "Possan",
+ "translate-page-language": "Çhengey",
+ "translate-page-limit": "Jeoraght",
+ "translate-edit-in-other-languages": "Çhaghteraght ayns çhengaghyn elley"
+}
diff --git a/MLEB/Translate/i18n/core/ha.json b/MLEB/Translate/i18n/core/ha.json
new file mode 100644
index 00000000..c9271df2
--- /dev/null
+++ b/MLEB/Translate/i18n/core/ha.json
@@ -0,0 +1,4 @@
+{
+ "@metadata": [],
+ "translate-magic-cm-comment": "Bahasi:"
+}
diff --git a/MLEB/Translate/i18n/core/hak.json b/MLEB/Translate/i18n/core/hak.json
new file mode 100644
index 00000000..2820439e
--- /dev/null
+++ b/MLEB/Translate/i18n/core/hak.json
@@ -0,0 +1,9 @@
+{
+ "@metadata": {
+ "authors": [
+ "Hakka",
+ "Jetlag"
+ ]
+ },
+ "translate-page-edit": "編寫"
+}
diff --git a/MLEB/Translate/i18n/core/haw.json b/MLEB/Translate/i18n/core/haw.json
new file mode 100644
index 00000000..39996d6f
--- /dev/null
+++ b/MLEB/Translate/i18n/core/haw.json
@@ -0,0 +1,13 @@
+{
+ "@metadata": {
+ "authors": [
+ "Kalani",
+ "Singularity"
+ ]
+ },
+ "translate": "Unuhi",
+ "translate-page-language": "ʻŌlelo",
+ "translate-page-navigation-legend": "Ka hoʻokele ʻana",
+ "translate-page-edit": "e hoʻololi",
+ "translate-language": "ʻŌlelo"
+}
diff --git a/MLEB/Translate/i18n/core/he.json b/MLEB/Translate/i18n/core/he.json
new file mode 100644
index 00000000..bea9afbe
--- /dev/null
+++ b/MLEB/Translate/i18n/core/he.json
@@ -0,0 +1,397 @@
+{
+ "@metadata": {
+ "authors": [
+ "Agbad",
+ "Amire80",
+ "Guycn1",
+ "Guycn2",
+ "Ofrahod",
+ "Rotemliss",
+ "Shirayuki",
+ "YaronSh",
+ "חיים",
+ "ערן",
+ "פוילישער",
+ "Inkbug"
+ ]
+ },
+ "translate": "תרגום",
+ "translate-desc": "[[Special:Translate|דף מיוחד]] לתרגום מדיה־ויקי ומעבר לכך",
+ "translate-taskui-view": "הצגת כל ההודעות",
+ "translate-taskui-untranslated": "הצגת הודעות שאינן מתורגמות",
+ "translate-taskui-optional": "הצגת הודעות אופציונליות",
+ "translate-taskui-acceptqueue": "רק הודעות שאני יכול לסקור",
+ "translate-taskui-reviewall": "לסקור את כל ההודעות",
+ "translate-taskui-export-to-file": "לייצא בתסדיר ילידי",
+ "translate-taskui-export-as-po": "לייצא לתרגום בלתי־מקוון",
+ "translate-taction-translate": "תרגום",
+ "translate-taction-proofread": "סקירה",
+ "translate-taction-lstats": "סטטיסטיקות שפה",
+ "translate-taction-mstats": "סטטיסטיקות על קבוצות הודעות",
+ "translate-taction-export": "ייצוא",
+ "translate-taction-disabled": "הפעולה הזאת אינה מופעלת בוויקי הזה",
+ "translate-page-no-such-language": "השפה שצוינה שגויה.",
+ "translate-page-no-such-group": "הקבוצה שצוינה שגויה.",
+ "translate-page-disabled": "התרגומים לשפה זו בקבוצה זו בוטלו מהסיבה הבאה:\n\n'<em>$1</em>'",
+ "translate-language-disabled": "תרגום לשפה הזאת כבוי.",
+ "translate-page-settings-legend": "הגדרות",
+ "translate-page-group": "קבוצה",
+ "translate-page-language": "שפה",
+ "translate-page-limit": "הגבלה",
+ "translate-page-limit-option": "עד {{PLURAL:$1|הודעה אחת|$1 הודעות}} בדף",
+ "translate-submit": "הצגה",
+ "translate-page-navigation-legend": "ניווט",
+ "translate-page-showing": "מוצגות הודעות מ־$1 עד $2 מתוך $3.",
+ "translate-page-showing-all": "{{PLURAL:$1|מוצגת הודעה אחת|מוצגות $1 הודעות}}.",
+ "translate-page-showing-none": "אין הודעות להצגה.",
+ "translate-next": "לדף הבא",
+ "translate-prev": "לדף הקודם",
+ "translate-page-description-legend": "מידע על הקבוצה",
+ "translate-page-description-hasoptional": "קבוצת ההודעות הזאת מכילה הודעות אופציונליות.\nיש לתרגם הודעות אופציונליות רק אם לשפתכם יש דרישות מיוחדות\nכגון אי־שימוש ברווחים או תעתיק ייחודי של שמות פרטיים. $1",
+ "translate-page-description-hasoptional-open": "הצגת הודעות אופציונליות.",
+ "translate-page-edit": "עריכה",
+ "translate-ext-url": "<hr />אתר אינטרנט: $1",
+ "translate-optional": "(אופציונלי)",
+ "translate-ignored": "(לא לתרגום)",
+ "translate-edit-title": "עריכת \"$1\"",
+ "translate-edit-definition": "הגדרת ההודעה",
+ "translate-edit-translation": "תרגום",
+ "translate-edit-contribute": "לתרום תיעוד",
+ "translate-edit-no-information": "<em>להודעה זו אין תיעוד.\nאם ידוע לך היכן או כיצד משתמשים בהודעה הזאת, באפשרותך לעזור למתרגמים אחרים באמצעות הוספת תיעוד להודעה זו.</em>",
+ "translate-edit-information": "מידע על ההודעה ($1)",
+ "translate-edit-in-other-languages": "ההודעה בשפות אחרות",
+ "translate-edit-committed": "התרגום הנוכחי בתוכנה",
+ "translate-edit-warnings": "אזהרות על תרגומים חלקיים",
+ "translate-edit-tmsugs": "הצעות מזיכרון התרגום",
+ "translate-edit-tmmatch-source": "טקסט המקור של התרגום: $1",
+ "translate-edit-tmmatch": "רמת התאמה: $1%",
+ "translate-use-suggestion": "החלפת התרגום הנוכחי בהצעה הזאת.",
+ "translate-edit-nopermission": "נדרשות הרשאות כדי לתרגם הודעות.",
+ "translate-edit-askpermission": "לקבל הרשאה",
+ "translate-magic-pagename": "תרגום מורחב של מדיה־ויקי",
+ "translate-magic-help": "באפשרותכם לתרגם כינויים לדפים מיוחדים, מילות קסם ושמות מרחבי שם.\n\nלשמות דפים מיוחדים ולמילות קסם יכולים להיות כמה תרגומים.\nיש להפריד את התרגומים באמצעות פסיק (,).\nלמרחבי שם יכול להיות תרגום אחד בלבד.\n\nתרגום מרחב השם של שיחת פרויקט <code dir=\"ltr\">$1 talk</code> עשוי להיות מסובך.\nהמחרוזת <code>$1</code> מוחלפת בשם האתר, למשל (<code>{{ns:project_talk}}</code>).\nאם בשפה שלכם קשה ליצור ביטוי תקין בצורה הזאת, נא להודיע לנו על כך בדף [[Support]].\n\nעליכם להיות בקבוצת מתרגמים כדי לשמור שינויים.\nהשינויים לא יישמרו עד שתלחצו על כפתור השמירה שלהלן.",
+ "translate-magic-module": "מידע לתרגום:",
+ "translate-magic-submit": "הצגה",
+ "translate-magic-cm-export": "יצוא",
+ "translate-magic-nothing-to-export": "אין מה לייצא.",
+ "translate-magic-cm-to-be": "עתידיים",
+ "translate-magic-cm-current": "נוכחיים",
+ "translate-magic-cm-original": "מקוריים",
+ "translate-magic-cm-comment": "סיבה:",
+ "translate-magic-cm-save": "שמירה",
+ "translate-magic-cm-updatedusing": "עודכן באמצעות [[Special:AdvancedTranslate|{{int:Translate-magic-pagename}}]]",
+ "translate-magic-cm-savefailed": "השמירה נכשלה",
+ "translate-magic-special": "כינויי דפים מיוחדים",
+ "translate-magic-words": "מילות קסם",
+ "translate-magic-namespace": "שמות מרחבי שם",
+ "translate-magic-notsaved": "עריכתכם לא נשמרה!",
+ "translate-magic-errors": "נא לתקן את {{PLURAL:$1|השגיאה הבאה|$1 השגיאות הבאות}} בתרגום:",
+ "translate-magic-saved": "השינויים שלך נשמרו בהצלחה.",
+ "translate-checks-parameters": "{{PLURAL:$2|הפרמטר הבא אינו|הפרמטרים הבאים אינם}} בשימוש:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-parameters-unknown": "{{PLURAL:$2|הפרמטר הבא אינו ידוע|הפרמטרים הבאים אינם ידועים}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-balance": "מספר {{PLURAL:$2|הסוגריים|הסוגריים}} אינו מאוזן:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links": "{{PLURAL:$2|הקישור הבא בעייתי|$2 הקישורים הבאים בעייתיים}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links-missing": "{{PLURAL:$2|הקישור הבא חסר|$2 הקישורים הבאים חסרים}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-xhtml": "נא החליפו את {{PLURAL:$2|התג הבא בתג הנכון|התגים הבאים בתגים הנכונים}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-plural": "ההגדרה משתמשת ב־<nowiki>{{PLURAL:}}</nowiki>, אך התרגום אינו משתמש בו.",
+ "translate-checks-plural-forms": "בביטוי <nowiki>{{PLURAL:}}</nowiki> {{PLURAL:$1|נכתבה צורה אחת|נכתבו $1 צורות}}, אבל {{PLURAL:$2|נתמכת רק צורה אחת|נתמכות $2 צורות}} (לא כולל צורות 0= וצורות 1=).",
+ "translate-checks-plural-dupe": "בביטוי <nowiki>{{PLURAL:}}</nowiki> יש צורות שחוזרות על עצמן בסוף. במקום <nowiki>{{PLURAL:$1|קילומטר|קילומטר}}</nowiki> מומלץ לכתוב <nowiki>{{PLURAL:$1|קילומטר}}</nowiki>.",
+ "translate-checks-pagename": "מרחבי שם ששונו מהגדרתם",
+ "translate-checks-format": "תרגום זה אינו תואם להגדרות או שהוא בעל תחביר שגוי: $1",
+ "translate-checks-escape": "ייתכן שהחילופים הבאים נוצרו בשגגה: <strong>$1</strong>",
+ "translate-checks-parametersnotequal": "{{PLURAL:$1|נמצא פרמטר אחד|נמצאו $1 פרמטרים}}; {{PLURAL:אמורים להיות $2|אמור להיות אחד}}.",
+ "translate-checks-malformed": "<nowiki>$1</nowiki> אינו תקין.",
+ "translate-checks-fudforum-syntax": "השתמשו ב־<nowiki>$1</nowiki> ולא ב־<nowiki>$2</nowiki> בפרויקט הזה.",
+ "translate-pref-nonewsletter": "אל תשלחו אליי חדשות תקופתיות בדואר אלקטרוני",
+ "translate-pref-editassistlang": "שפות מסייעות:",
+ "prefs-translate": "אפשרויות תרגום",
+ "translate-pref-editassistlang-help": "רשימה מופרדת בפסיקים של קודי שפות.\nתרגום של ההודעה לשפות אלו יופיע בעת תרגום.\nרשימת שפות התחלתית תלויה בשפה שאתם דוברים.",
+ "translate-pref-editassistlang-bad": "קוד שפה שגוי ברשימה:\n<nowiki>$1</nowiki>.",
+ "right-translate": "עריכה באמצעות ממשק התרגום",
+ "right-translate-manage": "ניהול קבוצות הודעה",
+ "action-translate-manage": "לנהל קבוצות הודעות",
+ "right-translate-import": "ייבוא תרגומים לא מקוונים",
+ "action-translate-import": "לייבא תרגומים הלתי־מקוונים",
+ "right-translate-messagereview": "סקירת תרגומים",
+ "right-translate-groupreview": "שינוי מצב סקירת תרגום של קבוצות הודעות",
+ "translate-rc-translation-filter": "סינון תרגומים:",
+ "translate-rc-translation-filter-no": "ללא סינון",
+ "translate-rc-translation-filter-only": "להציג תרגומים בלבד",
+ "translate-rc-translation-filter-filter": "לא להציג תרגומים",
+ "translate-rc-translation-filter-site": "שינויים בהודעות האתר בלבד",
+ "translationstats": "סטטיסטיקות תרגום",
+ "translate-stats-edits": "תוכירע",
+ "translate-stats-users": "םימגרתמ",
+ "translate-stats-registrations": "רישומים",
+ "translate-stats-reviews": "סקירות",
+ "translate-stats-reviewers": "סוקרים",
+ "translate-statsf-intro": "באמצעות טופס זה תוכלו ליצור סטטיסטיקות פשוטות. לכל הערכים יש ערך מקסימלי וערך מינימלי.",
+ "translate-statsf-options": "אפשרויות גרף",
+ "translate-statsf-width": "רוחב בפיקסלים:",
+ "translate-statsf-height": "אורך בפיקסלים:",
+ "translate-statsf-days": "תאריך תחילה:",
+ "translate-statsf-start": "תאריך תחילה:",
+ "translate-statsf-scale": "יחידת זמן:",
+ "translate-statsf-scale-months": "חודשים",
+ "translate-statsf-scale-weeks": "שבועות",
+ "translate-statsf-scale-days": "ימים",
+ "translate-statsf-scale-hours": "שעות",
+ "translate-statsf-count": "לפי:",
+ "translate-statsf-count-edits": "מספר עריכות",
+ "translate-statsf-count-users": "מתרגמים פעילים",
+ "translate-statsf-count-registrations": "משתמשים חדשים",
+ "translate-statsf-count-reviews": "סקירות תרגום",
+ "translate-statsf-count-reviewers": "סוקרים",
+ "translate-statsf-language": "רשימת קודי שפה (מופרדים בפסיק):",
+ "translate-statsf-group": "רשימת קודי קבוצות (מופרדים בפסיק):",
+ "translate-statsf-submit": "תצוגה מקדימה",
+ "translate-tag-category": "דפים שאפשר לתרגם",
+ "translate-tag-page-desc": "תרגום של דף הוויקי [[$2|$1]] מ־$3 ($4).",
+ "translate-sidebar-alltrans": "בשפות אחרות",
+ "translations": "כל התרגומים",
+ "translations-summary": "הקלידו את שם ההודעה להלן כדי להציג את כל התרגומים הזמינים.",
+ "translate-translations-no-message": "\"$1\" אינה הודעה הניתנת לתרגום",
+ "translate-translations-none": "לא קיימים תרגומים עבור \"$1\"",
+ "translate-translations-count": "{{PLURAL:$1|נמצא תרגום אחד|נמצאו $1 תרגומים}}.",
+ "translate-translations-fieldset-title": "הודעה",
+ "translate-translations-messagename": "שם:",
+ "translate-translations-project": "מיזם:",
+ "translate-translations-including-no-param": "אנא ציינו שם הודעה תקין בפרמטר של דף המשנה",
+ "translate-translations-history-short": "ג״ק",
+ "languagestats": "סטטיסטיקת השפה",
+ "languagestats-summary": "דף זה מציג את סטטיסטיקת התרגומים עבור כל קבוצות ההודעות של שפה.",
+ "messagegroupstats-summary": "הדף הזה מציג סטטיסטיקות של קבוצות הודעות.",
+ "languagestats-stats-for": "סטטיסטיקות תרגום עבור $1 ($2).",
+ "languagestats-recenttranslations": "תרגומים אחרונים",
+ "translate-langstats-incomplete": "חלק מהסטטיסטיקות בדף הזה אינן מלאות. יש לרענן כדי לקבל עוד סטטיסטיקות.",
+ "translate-langstats-expand": "להרחיב",
+ "translate-langstats-collapse": "לצמצם",
+ "translate-langstats-expandall": "להרחיב הכול",
+ "translate-langstats-collapseall": "לצמצם הכול",
+ "translate-language-code": "קוד השפה",
+ "translate-language-code-field-name": "קוד השפה:",
+ "translate-suppress-complete": "להשמיט קבוצות הודעות שתורגמו במלואן",
+ "translate-ls-noempty": "להשמיט קבוצות הודעות שאינן מתורגמות כלל",
+ "translate-language": "שפה",
+ "translate-total": "הודעות",
+ "translate-untranslated": "לא מתורגמות",
+ "translate-percentage-complete": "התקדמות",
+ "translate-percentage-fuzzy": "לא מעודכנות",
+ "translate-languagestats-overall": "כל הקבוצות ההודעות יחד",
+ "translate-ls-submit": "הצגת סטטיסטיקות",
+ "translate-ls-column-group": "קבוצת הודעות",
+ "translate-mgs-pagename": "סטטיסטיקת קבוצת הודעות",
+ "translate-mgs-fieldset": "הצגת העדפות",
+ "translate-mgs-group": "קבוצת הודעות:",
+ "translate-mgs-nocomplete": "לא להציג שפות עם תרגום מלא",
+ "translate-mgs-noempty": "לא להציג שפות ללא שום תרגום",
+ "translate-mgs-submit": "הצגת סטטיסטיקות",
+ "translate-mgs-column-language": "שפה",
+ "translate-mgs-totals": "כל השפות ביחד",
+ "translate-mgs-invalid-group": "הקבוצה $1 אינה קיימת.",
+ "translate-mgs-nothing": "אין מה להראות עבור הסטטיסטיקות המבוקשות.",
+ "supportedlanguages": "שפות נתמכות",
+ "supportedlanguages-summary": "הדף הזה מציג רשימה של כל השפות שהאתר {{SITENAME}} תומך בהן,\nעם שמות של מתרגמים שעובדים על אותן השפות.\nגודל שם המתרגם יחסי למספר העריכות שלו.\nצבע הקו התחתי מראה כמה זמן המתרגם פעיל כאן.",
+ "supportedlanguages-colorlegend": "מקרא לצבעים: תרגום אחרון לפני $1 ימים",
+ "supportedlanguages-translators": "{{PLURAL:$2|{{GENDER:$3|מתרגם|מתרגמת}}|מתרגמים}}: $1",
+ "supportedlanguages-recenttranslations": "תרגומים אחרונים",
+ "supportedlanguages-count": "{{PLURAL:$1|שפה אחת|$1 שפות}} בסך הכול.",
+ "supportedlanguages-activity": "$1: {{PLURAL:$2|עריכה אחת|$2 עריכות}} - עריכה אחרונה לפני {{PLURAL:$3|יום אחד|$3 ימים}}",
+ "translate-save": "שמירה ($1)",
+ "translate-jssti-add": "הוספה לרשימה",
+ "managemessagegroups": "ניהול קבוצות הודעות",
+ "translate-smg-notallowed": "אין לך הרשאה לבצע פעולה זו.",
+ "translate-smg-nochanges": "אין עוד שינויים שצריך לעבד.",
+ "translate-smg-submit": "שליחת שינויים לעיבוד",
+ "translate-smg-submitted": "הגדרות ההודעות עודכנו. השינויים מעובדים ברקע.",
+ "translate-smg-more": "יהיו שינויים נוספים שיהיה צורך לעבד אחרי שליחת השינויים האלה.",
+ "translate-smg-left": "תוכן ההודעה בוויקי",
+ "translate-smg-right": "שינויים קרובים",
+ "translate-manage-import-diff": "הודעה $1 | פעולות: $2",
+ "translate-manage-import-new": "הודעה חדשה $1",
+ "translate-manage-import-deleted": "הודעה שנמחקה $1",
+ "translate-manage-action-import": "יבוא",
+ "translate-manage-action-conflict": "לייבא ולטשטש",
+ "translate-manage-action-ignore": "התעלמות",
+ "translate-manage-action-fuzzy": "לייבא ולטשטש תרגומים",
+ "translate-manage-nochanges": "אין שינויים להגדרות ההודעות עבור קבוצה זו.",
+ "translate-manage-nochanges-other": "אין שינויים עבור השפה הזאת.\nהשתמשו בקישור למטה כדי לחוזר לתצוגת פרטי קבוצה.",
+ "translate-manage-inconsistent": "התגלתה חוסר עקביות בבקשה.\nנא לבדוק את השינויים ולנסות שוב.\nפרטים: $1",
+ "translate-manage-toolong": "זמן העיבוד המרבי של {{PLURAL:$1|שנייה אחת|$1 שניות}} תם.\nנא לשלוח מחדש את הטופס כדי להמשיך בעיבודו.",
+ "translate-manage-import-summary": "יבוא גרסה חדשה ממקור חיצוני",
+ "translate-manage-conflict-summary": "מייבא גרסה חדשה ממקור חיצוני.\nנא לבדוק.",
+ "translate-manage-fuzzy-summary": "הגדרת ההודעה שונתה",
+ "translate-manage-submit": "הפעלה",
+ "translate-manage-intro-other": "להלן רשימה של שינויי תרגום ב$1.\nנא לסקור את השינויים ולבחור את הפעולה שברצונך לעשות עבור כל תרגום.\nהתעלמות מהשינויים תגרום לכך שהם יידרסו בייצוא הבא.",
+ "translate-manage-import-ok": "יובא: $1",
+ "translate-manage-import-done": "היבוא בוצע!",
+ "importtranslations": "יבוא תרגומים",
+ "translate-import-from-local": "העלאת קובץ מקומי:",
+ "translate-import-load": "טעינת קובץ",
+ "translate-import-err-dl-failed": "לא ניתן לאחזר את הקובץ:\n$1",
+ "translate-import-err-ul-failed": "העלאת הקובץ לא הצליחה",
+ "translate-import-err-invalid-title": "שם הקובץ שצוין, <nowiki>$1</nowiki>, אינו תקין.",
+ "translate-import-err-no-such-file": "הקובץ <nowiki>$1</nowiki> אינו קיים או שהוא לא הועלה באופן מקומי.",
+ "translate-import-err-stale-group": "קבוצת ההודעות שהקובץ הזה שייך אליה אינה קיימת.",
+ "translate-import-err-no-headers": "הקובץ זה אינו קובץ Gettext תקין בתסדיר שתואם להרחבת התרגום:\nלא ניתן לקבוע אץ הקבוצה ואת השפה מכותרות הקובץ.",
+ "translate-import-err-warnings": "הקובץ אינו תקין.\nאנא ודאו כי העורך שלכם אינו מסיר את שדות ה־msgctxt.\nפרטים: $1",
+ "translate-js-summary": "תקציר:",
+ "translate-js-save": "שמירה",
+ "translate-js-next": "לשמור ולפתוח את ההודעה הבאה",
+ "translate-js-nonext": "זו הייתה ההודעה האחרונה בדף זה.",
+ "translate-js-skip": "מעבר להודעה הבאה",
+ "translate-js-save-failed": "השמירה נכשלה. נא לדווח את השגיאה הזאת.",
+ "translate-js-history": "היסטוריית התרגום",
+ "translate-js-support": "לשאול שאלה",
+ "translate-js-support-title": "לבקש עזרה אם אין מספיק מידע לתרגום נכון של ההודעה הזאת.",
+ "translate-js-support-unsaved-warning": "יש לכם תרגומים לא שמורים.",
+ "translate-gs-pos": "מקום",
+ "translate-gs-code": "קוד",
+ "translate-gs-continent": "יבשת",
+ "translate-gs-speakers": "דוברים",
+ "translate-gs-score": "ניקוד",
+ "translate-gs-multiple": "יותר מאחת",
+ "translate-gs-count": "סך הכול",
+ "translate-gs-total": "סה\"כ",
+ "translate-gs-avgscore": "ניקוד ממוצע",
+ "translate-documentation-language": "תיעוד הודעות",
+ "translate-searchprofile": "תרגומים",
+ "translate-searchprofile-tooltip": "חיפוש בכל התרגומים",
+ "translate-search-languagefilter": "סינון לפי שפה:",
+ "translate-search-nofilter": "ללא סינון",
+ "translate-messagereview-submit": "לסמן שההודעה נסקרה",
+ "translate-messagereview-progress": "מתבצע סימון שההודעה נסקרה...",
+ "translate-messagereview-failure": "סימון שההודעה נסקרה נכשל: $1",
+ "translate-messagereview-done": "נסקרה",
+ "translate-messagereview-reviews": "נסקרה על־ידי {{PLURAL:$1|משתמש אחד|$1 משתמשים}}",
+ "translate-messagereview-reviewswithyou": "{{PLURAL:$1|סקרת את ההודעה הזאת|ההודעה אושרה על־ידי $1 משתמשים, כולל אותך}}",
+ "api-error-invalidrevision": "התרגום לא נמצא",
+ "api-error-unknownmessage": "ההודעה לא נמצאה",
+ "api-error-fuzzymessage": "ההודעה מסומנת כמטושטשת",
+ "api-error-owntranslation": "לא ניתן לסקור תרגום של עצמך",
+ "translate-messagereview-no-fuzzy": "לא ניתן לסקור תרגומים בלתי־מעודכנים.",
+ "translate-messagereview-no-own": "לא ניתן לסקור תרגומים של עצמך.",
+ "translate-messagereview-doit": "לסמן שהתרגום הזה נסקר.",
+ "group-translate-proofr.css": "/* הסגנונות הנכתבים כאן ישפיעו על סוקרי תרגומים בלבד */",
+ "group-translate-proofr.js": "/* כל סקריפט JavaScript שנכתב כאן ירוץ עבור סוקרי תרגומים בלבד */",
+ "log-name-translationreview": "יומן סקירת תרגומים",
+ "log-description-translationreview": "יומן של כל הסקירות של תרגומים ושל קבוצות תרגומים.",
+ "logentry-translationreview-message": "$1 {{GENDER:$2|סקר|סקרה}} את התרגום $3",
+ "logentry-translationreview-group": "$1 {{GENDER:$2|שינה|שינתה}} את המצב של התרגומים של $3 ל{{GRAMMAR:תחילית|$4}} מ$6 ל$7",
+ "group-translate-sandboxed": "מתרגמים לא מאושרים",
+ "group-translate-sandboxed-member": "{{GENDER:$1|מתרגם לא מאושר|מתרגמת לא מאושרת}}",
+ "right-translate-sandboxmanage": "ניהול משתמשים בארגז חול",
+ "action-translate-sandboxmanage": "לנהל משתמשים בארגז חול",
+ "right-translate-sandboxaction": "ביצוע פעולות שמאושרות למשתמשים בארגז חול",
+ "action-translate-sandboxaction": "לבצע פעולות שמאושרות למשתמשים בארגז חול",
+ "translate-workflow-state-": "(לא מוגדר)",
+ "translate-workflowstatus": "מצב: $1",
+ "translate-workflow-set-do": "הגדרה",
+ "translate-workflow-set-doing": "מתבצעת הגדרה...",
+ "translate-workflow-set-done": "הוגדר!",
+ "translate-workflow-set-error-alreadyset": "המצב החדש שביקשת להגדיר כבר מוגדר כעת.",
+ "translate-workflow-autocreated-summary": "יצירה אוטומטית של דף עם מצב התרגום $1",
+ "translate-stats-workflow": "מצב",
+ "translate-workflowgroup-label": "מצבי תרגום",
+ "translate-workflowgroup-desc": "קבוצת ההודעות הזאת מציגה את המצבים האפשריים של תרגום הודעות.\nהמצבים מוגדרים במשתנה ‎$wgTranslateWorkflowStates.",
+ "translate-dynagroup-recent-label": "תרגומים אחרונים",
+ "translate-dynagroup-recent-desc": "קבוצת ההודעות הזאת מציגה את כל התרגומים האחרונים לשפה הזאת.\nזה שימושי בעיקר לסקירה.",
+ "translate-dynagroup-additions-label": "תוספות אחרונות",
+ "translate-dynagroup-additions-desc": "קבוצת ההודעות הזאת מציגה הודעות חדשות והודעות ששונו.",
+ "translate-dynagroup-by": "{{GENDER:$1|תרגם|תרגמה}}",
+ "translate-dynagroup-byc": "{{GENDER:$1|תרגם|תרגמה}} ($2)",
+ "translate-dynagroup-last": "שונה לאחרונה על־ידי {{GENDER:$1|$1}}",
+ "translate-dynagroup-lastc": "שונה לאחרונה על־ידי {{GENDER:$1|$1}} ($2)",
+ "translate-gethelp": "עזרה",
+ "translate-msggroupselector-projects": "קבוצות הודעות",
+ "translate-msggroupselector-search-placeholder": "חיפוש קבוצה",
+ "translate-msggroupselector-search-all": "הכול",
+ "translate-msggroupselector-search-recent": "אחרונות",
+ "translate-msggroupselector-view-subprojects": "הצגת {{PLURAL:$1|תת־מיזם אחד|$1 תת־מיזמים}}",
+ "tux-languageselector": "שפה היעד לתרגום",
+ "tux-tab-all": "הכול",
+ "tux-tab-untranslated": "לא מתורגמות",
+ "tux-tab-outdated": "לא עדכניות",
+ "tux-tab-translated": "מתורגמות",
+ "tux-tab-unproofread": "שלא נסקרו",
+ "tux-edit": "עריכה",
+ "tux-status-optional": "אופציונלית",
+ "tux-status-fuzzy": "לא מעודכנת",
+ "tux-status-proofread": "נסקרה",
+ "tux-status-translated": "מתורגמת",
+ "tux-status-saving": "מתבצעת שמירה...",
+ "tux-status-unsaved": "לא שמורה",
+ "tux-editor-placeholder": "התרגום שלך",
+ "tux-editor-paste-original-button-label": "הדבקת טקסט המקור",
+ "tux-editor-discard-changes-button-label": "ביטול שינויים",
+ "tux-editor-save-button-label": "שמירת תרגום",
+ "tux-editor-skip-button-label": "מעבר להודעה הבאה",
+ "tux-editor-cancel-button-label": "ביטול",
+ "tux-editor-confirm-button-label": "אישור תרגום",
+ "tux-editor-shortcut-info": "\"$1\" לשמירה, \"$2\" למעבר להודעה הבאה, \"$3\" להצגת קיצורים אחרים.",
+ "tux-editor-edit-desc": "עריכת תיעוד",
+ "tux-editor-add-desc": "הוספת תיעוד",
+ "tux-editor-suggestions-title": "הצעות",
+ "tux-editor-in-other-languages": "בשפות אחרות",
+ "tux-editor-need-more-help": "דרושה עוד עזרה?",
+ "tux-editor-ask-help": "בקשת מידע נוסף",
+ "tux-editor-tm-match": "התאמה של $1%",
+ "tux-warnings-more": "{{PLURAL:$1|עוד $1}}",
+ "tux-warnings-hide": "להסתיר",
+ "tux-editor-save-failed": "שמירת התרגום נכשלה: $1",
+ "tux-editor-n-uses": "שימש {{PLURAL:$1|פעם אחת|פעמיים|$1 פעמים}}",
+ "tux-editor-message-desc-more": "להציג עוד",
+ "tux-editor-message-desc-less": "להציג פחות",
+ "tux-editor-clear-translated": "הסתרת הודעות מתורגמות",
+ "tux-editor-proofreading-mode": "סקירה",
+ "tux-editor-translate-mode": "רשימה",
+ "tux-editor-proofreading-hide-own-translations": "הסתרת התרגומים שלך",
+ "tux-editor-proofreading-show-own-translations": "הצגת התרגומים שלך",
+ "tux-proofread-action-tooltip": "לסמן שההודעה נסקרה",
+ "tux-proofread-edit-label": "עריכה",
+ "tux-editor-page-mode": "דף",
+ "tux-editor-outdated-warning": "ייתכן שצריך לעדכן את התרגום הזה.",
+ "tux-editor-outdated-warning-diff-link": "הצגת שינויים",
+ "tux-editor-doc-editor-placeholder": "תיעוד הודעה",
+ "tux-editor-doc-editor-save": "שמירת התיעוד",
+ "tux-editor-doc-editor-cancel": "ביטול",
+ "tux-messagetable-more-messages": "עוד {{PLURAL:$1|הודעה אחת|$1 הודעות}}",
+ "tux-messagetable-loading-messages": "טעינת {{PLURAL:$1|הודעה|הודעות}}...",
+ "tux-message-filter-placeholder": "סינון הרשימה",
+ "tux-message-filter-result": "{{PLURAL:$1|נמצאה תוצאה אחת|נמצאו $1 תוצאות}} עבור \"$2\"",
+ "tux-message-filter-advanced-button": "חיפוש מתקדם",
+ "tux-message-filter-optional-messages-label": "הודעות אופציונליות",
+ "tux-proofread-translated-by-self": "זה תרגום שלך",
+ "tux-empty-list-all": "קבוצת ההודעות הזאת ריקה",
+ "tux-empty-list-all-guide": "נא לבחור קבוצת הודעות אחרת לתרגום",
+ "tux-translate-page-no-such-group": "<strong>הקבוצה המבוקשת אינה קיימת.</strong> נא לבחור קבוצת הודעות אחרת.",
+ "tux-empty-list-translated": "אין הודעות מתורגמות",
+ "tux-empty-list-translated-guide": "ביכולתך לעזור לתרגם",
+ "tux-empty-list-translated-action": "תרגום",
+ "tux-empty-no-messages-to-display": "אין הודעות להצגה.",
+ "tux-empty-there-are-optional": "יש הודעות אופציונליות שאינן מוצגות ברשימה",
+ "tux-empty-show-optional-messages": "הצגת הודעות אופציונליות",
+ "tux-empty-no-outdated-messages": "אין הודעות שדורשות עדכון",
+ "tux-empty-nothing-to-proofread": "אין מה לסקור",
+ "tux-empty-you-can-help-providing": "באפשרותך לעזור בכתיבת תרגומים חדשים",
+ "tux-empty-nothing-new-to-proofread": "אין שום דבר חדש לסקור",
+ "tux-empty-you-can-review-already-proofread": "אפשר לסקור תרגומים שאחרים כבר סקרו.",
+ "tux-empty-list-other": "אין מה לתרגם",
+ "tux-empty-list-other-guide": "אפשר לעזור לסקור את התרגומים הקיימים",
+ "tux-empty-list-other-action": "סקירת תרגומים",
+ "tux-empty-list-other-link": "הצגת כל ההודעות",
+ "tux-editor-close-tooltip": "סגירה",
+ "tux-editor-expand-tooltip": "הרחבה",
+ "tux-editor-collapse-tooltip": "צמצום",
+ "tux-editor-message-tools-history": "היסטוריה",
+ "tux-editor-message-tools-delete": "מחיקה",
+ "tux-editor-message-tools-translations": "כל התרגומים",
+ "tux-editor-loading": "טעינה...",
+ "translate-search-more-languages-info": "עוד {{PLURAL:$1|שפה אחת|$1 שפות}}",
+ "translate-statsbar-tooltip": "$1% תורגם, $2% נסקר",
+ "translate-statsbar-tooltip-with-fuzzy": "$1% תורגם, $2% נסקר, $3% דורש סקירה",
+ "translate-search-more-groups-info": "עוד {{PLURAL:$1|קבוצה אחת|$1 קבוצות}}",
+ "translate-ulsdep-title": "שגיאת הגדרות",
+ "translate-ulsdep-body": "ההרחבה Translate משתמשת ב[https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:UniversalLanguageSelector הרחבה Universal Language Selector].",
+ "tux-session-expired": "אינך נמצא בחשבון עוד. נא להיכנס בלשונית אחרת. לחלופין, יש להעתיק תרגומים שלא נשמרו, להיכנס ולחזור לדף הזה."
+}
diff --git a/MLEB/Translate/i18n/core/hi.json b/MLEB/Translate/i18n/core/hi.json
new file mode 100644
index 00000000..f8695514
--- /dev/null
+++ b/MLEB/Translate/i18n/core/hi.json
@@ -0,0 +1,155 @@
+{
+ "@metadata": {
+ "authors": [
+ "Amire80",
+ "Ansumang",
+ "Ashishbhatnagar72",
+ "Karthi.dr",
+ "Kaustubh",
+ "Knightsofdawn",
+ "Siddhartha Ghai"
+ ]
+ },
+ "translate": "अनुवाद",
+ "translate-taskui-view": "सभी सन्देश दिखाए",
+ "translate-taskui-untranslated": "सारे अनअनुवादित सन्देश दिखाए",
+ "translate-page-disabled": "इस भा्षा के इस समूह में अनुवाद बंद हैं. कारण:\n<em>$1</em>",
+ "translate-page-settings-legend": "सेटिंग्स",
+ "translate-page-group": "समूह",
+ "translate-page-language": "भाषा",
+ "translate-page-limit": "सीमा",
+ "translate-submit": "ढूंढे",
+ "translate-page-navigation-legend": "नैविगेशन",
+ "translate-page-showing": "$3 में से $1 से $2 तक संदेश दर्शित हैं.",
+ "translate-page-showing-none": "दिखने के लिए कोई संदेश नहीं ।",
+ "translate-next": "अगला पृष्ठ",
+ "translate-prev": "पिछला पृष्ठ",
+ "translate-page-description-legend": "दल के बारे में जानकारी",
+ "translate-page-description-hasoptional-open": "वैकल्पिक संदेश दिखाएँ ।",
+ "translate-page-edit": "सम्पादन",
+ "translate-ext-url": "<hr />वेबसाइट: $1",
+ "translate-optional": "(वैकल्पिक)",
+ "translate-edit-title": "सम्पादन \"$1\"",
+ "translate-edit-definition": "संदेश व्याख्या",
+ "translate-edit-translation": "अनुवाद",
+ "translate-edit-contribute": "योगदान",
+ "translate-edit-information": "संदेश ($1) के बारे में जानकारी",
+ "translate-edit-in-other-languages": "संदेश अन्य भाषा में",
+ "translate-edit-tmmatch": "$1% मैच",
+ "translate-edit-askpermission": "अनुमति के लिए अनुरोध",
+ "translate-magic-pagename": "एक्स्टेंडेड मीडियाविकि अनुवाद",
+ "translate-magic-module": "मोड्यूल:",
+ "translate-magic-submit": "ढूंढे",
+ "translate-magic-cm-export": "निर्यात",
+ "translate-magic-cm-current": "वर्तमान",
+ "translate-magic-cm-original": "मूल",
+ "translate-magic-cm-comment": "टिप्पणी:",
+ "translate-magic-cm-save": "संजोयें",
+ "translate-magic-words": "जादूई शब्द",
+ "translate-pref-editassistlang": "सहायक भाषा:",
+ "prefs-translate": "अनुवाद विकल्प",
+ "right-translate-messagereview": "अनुवाद समीक्षा",
+ "translate-rc-translation-filter": "अनुवाद फ़िल्टर करें:",
+ "translate-rc-translation-filter-no": "कुछ न करें",
+ "translate-rc-translation-filter-only": "केवल अनुवाद दिखाएँ",
+ "translationstats": "अनुवाद के आँकड़े",
+ "translate-stats-edits": "सम्पादन",
+ "translate-stats-users": "अनुवादक",
+ "translate-stats-registrations": "पंजीकरण",
+ "translate-statsf-options": "ग्राफ बिकल्प",
+ "translate-statsf-width": "चौड़ाई पिक्सेल में:",
+ "translate-statsf-height": "ऊंचाई पिक्सेल में:",
+ "translate-statsf-days": "समय अबाधि दिन में:",
+ "translate-statsf-start": "आरंभ तारीख:",
+ "translate-statsf-scale": "कणिकामयता (Granularity)",
+ "translate-statsf-scale-months": "महीने",
+ "translate-statsf-scale-weeks": "सप्ताह (हफ्ते)",
+ "translate-statsf-scale-days": "दिन (दिवस)",
+ "translate-statsf-scale-hours": "घंटे",
+ "translate-statsf-count": "माप",
+ "translate-statsf-count-edits": "संपादनोंकी संख्या",
+ "translate-statsf-count-users": "सक्रिय अनुबादक",
+ "translate-statsf-count-registrations": "नया सदस्य",
+ "translate-statsf-submit": "पूर्वावलोकन",
+ "translate-sidebar-alltrans": "अन्य भाषा में",
+ "translations": "सभी अनुवाद",
+ "translate-translations-fieldset-title": "संदेश",
+ "translate-translations-messagename": "नाम:",
+ "translate-translations-project": "प्रकल्प:",
+ "languagestats": "भाषा आकलन",
+ "languagestats-recenttranslations": "हाल ही में हुए अनुवाद",
+ "translate-language-code": "भाषा कोड",
+ "translate-language-code-field-name": "भाषा कोड:",
+ "translate-language": "भाषा",
+ "translate-total": "संदेश",
+ "translate-untranslated": "बिना अनुवाद",
+ "translate-percentage-complete": "समापन",
+ "translate-percentage-fuzzy": "कालग्रस्त (पुराना)",
+ "translate-languagestats-overall": "सभी संदेश-समूह एक साथ",
+ "translate-ls-submit": "आँकड़े दिखाएं",
+ "translate-ls-column-group": "संदेश-समूह",
+ "translate-mgs-pagename": "संदेश-समूह आँकड़े",
+ "translate-mgs-fieldset": "प्राथमिकताएँ प्रदर्शित करें",
+ "translate-mgs-group": "संदेश-समूह",
+ "translate-mgs-nocomplete": "जिन भाषाओँ का अनुवाद पूर्ण हो चुका है उन्हें न दिखाएं",
+ "translate-mgs-noempty": "जिन भाषाओँ का अनुवाद नहीं है उन्हें न दिखाएं",
+ "translate-mgs-submit": "आँकड़े दिखाएं",
+ "translate-mgs-column-language": "भाषा",
+ "translate-mgs-totals": "सभी भाषाओं एक साथ",
+ "translate-mgs-invalid-group": "विनिर्दिष्ट समूह $1 अस्तित्व में नहीं है।",
+ "translate-mgs-nothing": "अनुरोध किए गए आँकड़े दिखाने के लिए कुछ नहीं है ।",
+ "supportedlanguages": "समर्थित भाषाएँ",
+ "supportedlanguages-translators": "{{PLURAL:$2|अनुबादक|अनुबादक}}: $1",
+ "supportedlanguages-recenttranslations": "हाल में हुए अनुवाद",
+ "supportedlanguages-count": "$1 {{PLURAL:$1|भाषा|भाषाएँ}} कुल ।",
+ "supportedlanguages-activity": "$1: $2 {{PLURAL:$2|सम्पादन|सम्पादन}} - शेष सम्पादन $3 {{PLURAL:$3|दिन|दिन}} पेहले",
+ "translate-save": "सहेजें ($1)",
+ "translate-jssti-add": "सूची में जोड़ें",
+ "translate-manage-import-diff": "संदेश $1 | क्रियाएँ: $2",
+ "translate-manage-import-new": "नये सन्देश $1",
+ "translate-manage-action-import": "आयात",
+ "translate-manage-action-conflict": "आयात और फजी",
+ "translate-manage-action-ignore": "उपेक्षा",
+ "importtranslations": "अनुवाद आयात करें",
+ "translate-import-from-local": "स्थानीय फ़ाइल अपलोड:",
+ "translate-import-load": "लोड़ फ़ाइल",
+ "translate-import-err-ul-failed": "फ़ाइल अपलोड सफल नहीं रहा",
+ "translate-js-summary": "सारांश:",
+ "translate-js-next": "सहेजें और अगले सन्देश-कुंजी खोलें",
+ "translate-js-nonext": "ये अंतिम संदेश था इस पृष्ठ पे ।",
+ "translate-js-skip": "त्यागें और अगली सन्देश-कुंजी खोलें",
+ "translate-js-save-failed": "सहेजने में विफल। कृपया इस त्रुटि की रिपोर्ट करें।",
+ "translate-js-history": "अनुवाद इतिहास",
+ "translate-js-support": "सवाल पूछें",
+ "translate-js-support-title": "कृपया मदद मांगें अगर इस सन्देश के अनुवाद में कोई जानकारी की कमी हो तो",
+ "translate-gs-code": "कोड",
+ "translate-gs-continent": "महाद्वीप",
+ "translate-gs-speakers": "वक्ता",
+ "translate-gs-score": "अंक",
+ "translate-gs-multiple": "एकाधिक",
+ "translate-gs-count": "गणना",
+ "translate-gs-total": "कुल",
+ "translate-documentation-language": "सन्देश दस्तावेज़ीकरण",
+ "translate-searchprofile": "विशेष: खोज",
+ "translate-searchprofile-tooltip": "सभी अनुवादों से खोज",
+ "translate-search-languagefilter": "निस्पंदन (छानना) - भाषा के आधार पर",
+ "translate-search-nofilter": "निःनिस्पंदन (बिना छननी)",
+ "translate-messagereview-submit": "स्वीकारें",
+ "translate-messagereview-progress": "स्वीकार रहे हैं...",
+ "translate-messagereview-failure": "स्वीकार रहे हैं... विफल हुई : $1",
+ "translate-messagereview-done": "स्वीकृत हुआ",
+ "translate-messagereview-reviews": "{{PLURAL:$1|१ उपयोगकर्ता|$1 उपयोगकर्ताओं}} के द्वारा स्वीकारा गया",
+ "translate-messagereview-reviewswithyou": "आप को मिला कर {{PLURAL:$1|१ उपयोगकर्ता|$1 उपयोगकर्ताओं}} के द्वारा स्वीकारा गया",
+ "api-error-invalidrevision": "अनुवाद नहीं मिला",
+ "api-error-unknownmessage": "सन्देश नहीं मिला",
+ "api-error-fuzzymessage": "अनुवाद FUZZY अँकित हुआ है",
+ "api-error-owntranslation": "आप अपने खुद के अनुवाद को स्वीकार नहीं कर सकते",
+ "translate-messagereview-no-fuzzy": " FUZZY अनुवाद स्वीकृत नहीं हो सकता",
+ "translate-messagereview-no-own": "आप अपने खुद के अनुवाद को स्वीकार नहीं कर सकते",
+ "log-name-translationreview": "अनुवाद समीक्षा लॉग",
+ "translate-workflowstatus": "स्थिति: $1",
+ "translate-workflow-set-do": "स्थापित",
+ "translate-workflow-set-done": "स्थापित!",
+ "translate-stats-workflow": "स्थिति",
+ "translate-dynagroup-recent-label": "हाल ही में हुए अनुवाद"
+}
diff --git a/MLEB/Translate/i18n/core/hil.json b/MLEB/Translate/i18n/core/hil.json
new file mode 100644
index 00000000..d5385f98
--- /dev/null
+++ b/MLEB/Translate/i18n/core/hil.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Jose77"
+ ]
+ },
+ "translate-page-navigation-legend": "Nabigayson"
+}
diff --git a/MLEB/Translate/i18n/core/hr.json b/MLEB/Translate/i18n/core/hr.json
new file mode 100644
index 00000000..ffe6664b
--- /dev/null
+++ b/MLEB/Translate/i18n/core/hr.json
@@ -0,0 +1,160 @@
+{
+ "@metadata": {
+ "authors": [
+ "Dalibor Bosits",
+ "Dnik",
+ "Ex13",
+ "MaGa",
+ "Roberta F.",
+ "SpeedyGonsales",
+ "Tivek"
+ ]
+ },
+ "translate": "Prijevodi sistemskih poruka",
+ "translate-desc": "[[Special:Translate|Posebna stranica]] za prevođenje MediaWiki i izvan",
+ "translate-page-no-such-language": "Unešen jezik je neispravan",
+ "translate-page-no-such-group": "Navedena grupa je neispravna.",
+ "translate-page-disabled": "Prijevodi na ovaj jezik u ovoj grupi su onemogućeni. Razlog:\n\n<em>$1</em>",
+ "translate-page-settings-legend": "Postavke",
+ "translate-page-group": "Skupina",
+ "translate-page-language": "Jezik",
+ "translate-page-limit": "Prikaži najviše",
+ "translate-page-limit-option": "$1 {{PLURAL:$1|poruka|poruke|poruka}} po stranici",
+ "translate-submit": "Nađi",
+ "translate-page-navigation-legend": "Navigacija",
+ "translate-page-showing": "Prikazane poruke od $1 do $2 od ukupno $3.",
+ "translate-page-showing-all": "Prikazano: $1 {{PLURAL:$1|poruka|poruke|poruka}}.",
+ "translate-page-showing-none": "Nema traženih poruka.",
+ "translate-next": "Sljedeća stranica",
+ "translate-prev": "Prethodna stranica",
+ "translate-page-description-legend": "Podaci o grupi",
+ "translate-page-edit": "uredi",
+ "translate-ext-url": "<hr />Web stranica: $1",
+ "translate-optional": "(opcionalno)",
+ "translate-ignored": "(zanemareno)",
+ "translate-edit-title": "Uredi \"$1\"",
+ "translate-edit-definition": "Definicija poruke",
+ "translate-edit-translation": "Prijevod",
+ "translate-edit-contribute": "dodaj",
+ "translate-edit-no-information": "''Ova poruka nema dokumentacije. Ako znate gdje ili kako se koristi poruka, možete pomoći drugim prevoditeljima dodavajući dokumentaciju ovoj poruci.''",
+ "translate-edit-information": "Informacije o poruci ($1)",
+ "translate-edit-in-other-languages": "Poruka na ostalim jezicima",
+ "translate-edit-committed": "Trenutačni prijevod u softveru",
+ "translate-edit-warnings": "Upozorenja o nepotpunim prijevodima",
+ "translate-edit-tmsugs": "Prijedlozi iz spremnika prijevoda",
+ "translate-edit-tmmatch": "$1% podudarnosti",
+ "translate-magic-pagename": "Prošireni MediaWiki prijevod",
+ "translate-magic-module": "Modul:",
+ "translate-magic-submit": "Dohvati",
+ "translate-magic-cm-export": "Izvezi",
+ "translate-magic-nothing-to-export": "Nema ništa za izvoz.",
+ "translate-magic-cm-to-be": "Budući",
+ "translate-magic-cm-current": "Trenutni",
+ "translate-magic-cm-original": "Izvornik",
+ "translate-magic-cm-comment": "Komentar:",
+ "translate-magic-cm-save": "Spremi",
+ "translate-magic-cm-updatedusing": "Osvježeno uporabom [[Special:AdvancedTranslate|{{int:Translate-magic-pagename}}]] stranice",
+ "translate-magic-cm-savefailed": "Snimanje nije uspjelo",
+ "translate-magic-special": "Alijasi posebnih stranica",
+ "translate-magic-words": "Magične riječi (stringovi)",
+ "translate-magic-namespace": "Imena imenskih prostora",
+ "translate-magic-notsaved": "Vaše uređivanje nije spremljeno!",
+ "translate-magic-errors": "Ispravite {{PLURAL:$1|sljedeću grešku|sljedeće greške}} u prijevodima:",
+ "translate-magic-saved": "Vaše izmjene su uspješno spremljene.",
+ "translate-checks-parameters": "Sljedeći {{PLURAL:$2|parametar se ne koristi|parametri se ne koriste}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-balance": "Nejednak broj {{PLURAL:$2|zagrada|zagrada}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links": "{{PLURAL:$2|Sljedeća poveznica je problematična|$2 sljedećih poveznica su problematične}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-plural": "Definicija koristi <nowiki>{{PLURAL:}}</nowiki>, ali prijevod ne.",
+ "translate-pref-nonewsletter": "Ne šalji mi e-poštom obavijesti translatewiki.net projekta",
+ "translate-pref-editassistlang": "Pomoćni jezici:",
+ "prefs-translate": "Mogućnosti prijevoda",
+ "translate-pref-editassistlang-help": "Popis jezičnih kodova odjeljen zarezima.\nPrijevod poruke na tim jezicima bit će prikazani dok prevodite.\nZadani popis jezika ovisi o vašem jeziku.",
+ "right-translate": "Uređivanje koristeći sučelje za prevođenje",
+ "right-translate-manage": "Upravljanje grupama prijevoda",
+ "right-translate-import": "Uvoz izvanmrežnih prijevoda",
+ "translate-rc-translation-filter": "Filtriraj prijevode:",
+ "translate-rc-translation-filter-no": "Ne filtriraj ništa",
+ "translate-rc-translation-filter-only": "Prikaži samo prijevode",
+ "translate-rc-translation-filter-filter": "Izbaci prijevode",
+ "translate-rc-translation-filter-site": "Samo uređivanja poruka projekta",
+ "translationstats": "Statistike prevođenja",
+ "translate-stats-edits": "Uređivanja",
+ "translate-stats-users": "Prevoditelji",
+ "translate-stats-registrations": "Prijave",
+ "translate-statsf-intro": "Možete generirati jednostavne statistike s ovim obrascem.\nSve vrijednosti imaju gornju i donju granicu.",
+ "translate-statsf-options": "Opcije grafa",
+ "translate-statsf-width": "Širina u pikselima:",
+ "translate-statsf-height": "Visina u pikselima:",
+ "translate-statsf-days": "Vremensko razdoblje u danima:",
+ "translate-statsf-start": "Vremensko razdoblje u danima:",
+ "translate-statsf-scale": "Zrnatost:",
+ "translate-statsf-scale-months": "Mjeseci",
+ "translate-statsf-scale-weeks": "Tjedana",
+ "translate-statsf-scale-days": "Dani",
+ "translate-statsf-scale-hours": "Sati",
+ "translate-statsf-count": "Mjera:",
+ "translate-statsf-count-edits": "Broj uređivanja",
+ "translate-statsf-count-users": "Aktivni prevoditelji",
+ "translate-statsf-count-registrations": "Novi suradnici",
+ "translate-statsf-language": "Zarezom odvojen popis jezičnih kodova:",
+ "translate-statsf-group": "Zarezom odvojen popis skupine kodova:",
+ "translate-statsf-submit": "Prikaži",
+ "translate-tag-category": "Stranice koje je moguće lokalizirati",
+ "translate-tag-page-desc": "Prijevod wiki stranice [[$2|$1]].",
+ "translate-sidebar-alltrans": "Na drugim jezicima",
+ "translations": "Svi prijevodi",
+ "translate-translations-no-message": "\"$1\" nije poruka koja se prevodi",
+ "translate-translations-none": "Ne postoje prijevodi za \"$1\"",
+ "translate-translations-fieldset-title": "Poruka",
+ "translate-translations-messagename": "Ime:",
+ "translate-translations-project": "Projekt:",
+ "translate-translations-including-no-param": "Molim navedite ispravan ključ poruke kao parametar podstranice",
+ "translate-translations-history-short": "h",
+ "languagestats": "Statistika jezika",
+ "languagestats-summary": "Ova stranica prikazuje statistiku prijevoda za sve grupe poruka za jezik.",
+ "languagestats-stats-for": "Statistika prijevoda za $1 ($2).",
+ "languagestats-recenttranslations": "nedavni prijevodi",
+ "translate-language-code": "Jezični kôd",
+ "translate-language-code-field-name": "Jezični kôd:",
+ "translate-suppress-complete": "Izostavi potpuno prevedene grupe poruka",
+ "translate-language": "Jezik",
+ "translate-total": "Poruke",
+ "translate-untranslated": "Neprevedeno",
+ "translate-percentage-complete": "Dovršeno",
+ "translate-percentage-fuzzy": "Zastarjelo",
+ "supportedlanguages-recenttranslations": "nedavni prijevodi",
+ "translate-save": "Sačuvaj ($1)",
+ "translate-jssti-add": "Dodaj na popis",
+ "translate-manage-import-new": "Nova poruka $1",
+ "translate-manage-import-deleted": "Obrisana poruka $1",
+ "translate-manage-action-import": "Uvezi",
+ "translate-manage-action-conflict": "Uvezi i označi kao ''fuzzy''",
+ "translate-manage-action-ignore": "Ignoriraj",
+ "translate-manage-action-fuzzy": "Uvoz i ''fuzzy'' prijevodi",
+ "translate-manage-import-summary": "Uvoz nove inačice iz vanjskog izvora",
+ "translate-manage-conflict-summary": "Uvoz nove inačice iz vanjskog izvora.\nMolimo provjerite.",
+ "translate-manage-fuzzy-summary": "Definicija se promijenila",
+ "translate-manage-submit": "Izvrši",
+ "translate-manage-import-done": "Obavljeno je sve!",
+ "importtranslations": "Uvezi prijevode",
+ "translate-import-from-local": "Snimanje lokalne datoteke:",
+ "translate-import-load": "Učitaj datoteku",
+ "translate-js-next": "Spremi i otvori sljedeću",
+ "translate-js-nonext": "Bila je to posljednja poruka na ovoj stranici.",
+ "translate-js-skip": "Prijeđi na sljedeću poruku",
+ "translate-js-save-failed": "Spremanje nije uspjelo. Molimo prijavite ovu pogrešku.",
+ "translate-js-history": "Povijest prijevoda",
+ "translate-js-support": "Postavi pitanje",
+ "translate-js-support-title": "Zatražite pomoć ako nemate dovoljno informacija za ispravan prijevod ove poruke.",
+ "translate-js-support-unsaved-warning": "Imate nesačuvanih izmjena.",
+ "translate-gs-code": "Kod",
+ "translate-gs-continent": "Kontinent",
+ "translate-gs-speakers": "Govornici",
+ "translate-gs-score": "Rezultat",
+ "translate-gs-multiple": "Višestruki",
+ "translate-gs-count": "Broj",
+ "translate-gs-total": "Ukupno",
+ "translate-gs-avgscore": "Prosječno",
+ "translate-documentation-language": "Dokumentacija poruke",
+ "translate-search-more-languages-info": "{{PLURAL:$1|Još jedan jezik|Još $1 druga jezika|Još $1 drugih jezika}}"
+}
diff --git a/MLEB/Translate/i18n/core/hsb.json b/MLEB/Translate/i18n/core/hsb.json
new file mode 100644
index 00000000..05c2bf98
--- /dev/null
+++ b/MLEB/Translate/i18n/core/hsb.json
@@ -0,0 +1,384 @@
+{
+ "@metadata": {
+ "authors": [
+ "Dundak",
+ "Michawiki",
+ "Shirayuki"
+ ]
+ },
+ "translate": "Přełožić",
+ "translate-desc": "[[Special:Translate|Specialna strona]] za přełožowanje MediaWiki a druheho",
+ "translate-taskui-view": "Wšě zdźělenki pokazać",
+ "translate-taskui-untranslated": "Njepřełožene zdźělenki pokazać",
+ "translate-taskui-optional": "Opcionalne zdźělenki pokazać",
+ "translate-taskui-acceptqueue": "Jenož zdźělenki, kotrež móžu jako přepruwowane markěrować",
+ "translate-taskui-reviewall": "Wšě přełožki přepruwować",
+ "translate-taskui-export-to-file": "Do systemoweho formata eksportować",
+ "translate-taskui-export-as-po": "Za přełožowanje offline eksportować",
+ "translate-taction-translate": "Přełožić",
+ "translate-taction-proofread": "Přepruwować",
+ "translate-taction-lstats": "Rěčna statistika",
+ "translate-taction-mstats": "Statistika zdźělenskeje skupiny",
+ "translate-taction-export": "Eksportować",
+ "translate-taction-disabled": "Tuta akcija je so na tutym wikiju znjemóžniła.",
+ "translate-page-no-such-language": "Njepłaćiwy rěčny kod podaty",
+ "translate-page-no-such-group": "Podata skupina bě njepłaćiwa.",
+ "translate-page-disabled": "Přełožki do tuteje rěče w tutej skupinje buchu znjemóžnjene. Přičina:\n\n<em>$1</em>",
+ "translate-language-disabled": "Přełožowanje do tuteje rěče je znjemóžnjene.",
+ "translate-page-settings-legend": "Nastajenja",
+ "translate-page-group": "Skupina",
+ "translate-page-language": "Rěč",
+ "translate-page-limit": "Ličba zdźělenkow",
+ "translate-page-limit-option": "$1 {{PLURAL:$1|zdźělenka|zdźělence|zdźělenki|zdźělenkow}} na stronu",
+ "translate-submit": "Pokazać",
+ "translate-page-navigation-legend": "Nawigacija",
+ "translate-page-showing": "Zdźělenki wot $1 do $2 z $3 pokazać.",
+ "translate-page-showing-all": "{{PLURAL:$1|Pokazuje so|Pokazujetej so|Pokazuja so|Pokazuje so}} $1 {{PLURAL:$1|zdźělenka|zdźělence|zdźělenki|zdźělenkow}}.",
+ "translate-page-showing-none": "Njejsu zdźělenki, kotrež hodźa so pokazać.",
+ "translate-next": "Přichodna strona",
+ "translate-prev": "Předchadna strona",
+ "translate-page-description-legend": "Informacije wo skupinje",
+ "translate-page-description-hasoptional": "Tuta zdźělenska skupina wobsahuje opcionalne zdźělenki.\nOpcionalne zdźělenki měli so jenož přełožować, jeli twoja rěč ma wosebitu potrjebu za nje,\nkaž na přikład njewužiwanje mjezerow abo transliteraciju swójskich mjenow. $1",
+ "translate-page-description-hasoptional-open": "Opcionalne zdźělenki pokazać.",
+ "translate-page-edit": "wobdźěłać",
+ "translate-ext-url": "<hr />Websydło: $1",
+ "translate-optional": "(opcionalny)",
+ "translate-ignored": "(ignorowany)",
+ "translate-edit-title": "\"$1\" wobdźěłać",
+ "translate-edit-definition": "Definicija zdźělenki",
+ "translate-edit-translation": "Přełožk",
+ "translate-edit-contribute": "přinošować",
+ "translate-edit-no-information": "<em>Tuta zdźělenka dokumentaciju nima, Jeli wěš, hdźež abo kak so tuta zdźělenka wužiwa, móžeš druhim přełožowarjam pomhać přidawajo dokumentaciju k tutej zdźělence.</em>'",
+ "translate-edit-information": "Informacije wo zdźělence ($1)",
+ "translate-edit-in-other-languages": "Zdźělenka w druhich rěčach",
+ "translate-edit-committed": "Aktualny přełožk w softwarje",
+ "translate-edit-warnings": "Warnowanja wo njedospołnych přełožkach",
+ "translate-edit-tmsugs": "Namjety z přełožowanskeho pomjatka",
+ "translate-edit-tmmatch-source": "Žórłowy tekst přełožka: $1",
+ "translate-edit-tmmatch": "$1 % wotpowědowanja",
+ "translate-use-suggestion": "Aktualny přełožk přez tutón namjet wuměnić",
+ "translate-edit-nopermission": "Trjebaš přełožowanske prawa, zo by móhł zdźělenki přełožować.",
+ "translate-edit-askpermission": "Prawo dóstać",
+ "translate-magic-pagename": "Rozšěrjeny přełožk MediaWiki",
+ "translate-magic-help": "Móžěs aliasy specialnych stronow, magiske słowa a mjena mjenowych rumow přełožić.\n\nAliasy specialnych stronow a magiske słowow móža wjacore přełožki měć.\nPřełožki so přež komu (,) wotdźěleja.\nMjenowe rumy móža jenož jedyn přełožk měć.\n\nPřełožowanje mjenoweho ruma projektoweje diskusije <code>$1 talk</code> móže kompliowane być. <code>$1</code> so přez mjeno sydła wuměnuje (na přikład <code>{{ns:project_talk}}</code>). Jeli w twojej rěči njeje móžno, płaćiwy wuraz tworić, bjeztoho zo by so mjeno strony změniło, zdźěl nam to prošu na stronje [[Support|Podpěra]].\n\nDyrbiš přełožowar być, zo by změny składował.\nZměny so njeskładuja, doniž na tłóčatko ''Stronu składować'' njekliknješ.",
+ "translate-magic-module": "Modul:",
+ "translate-magic-submit": "Pokazać",
+ "translate-magic-cm-export": "Eksportować",
+ "translate-magic-nothing-to-export": "Njejo ničo eksportować.",
+ "translate-magic-cm-to-be": "Ma być:",
+ "translate-magic-cm-current": "Tuchwilu",
+ "translate-magic-cm-original": "Originalny",
+ "translate-magic-cm-comment": "Komentar:",
+ "translate-magic-cm-save": "Składować",
+ "translate-magic-cm-updatedusing": "Z [[Special:AdvancedTranslate|{{int:Translate-magic-pagename}}]] zaktualizowany",
+ "translate-magic-cm-savefailed": "Składowanje njeporadźiło",
+ "translate-magic-special": "Aliasy specialnych stronow",
+ "translate-magic-words": "Magiske słowa",
+ "translate-magic-namespace": "Mjena mjenowych rumow",
+ "translate-magic-notsaved": "Twoja změna njeje so składowała!",
+ "translate-magic-errors": "Prošu skoriguj {{PLURAL:$1|slědowacy zmylk|slědowacej zmylkaj|slědowace zmylki|slědowace zmylki}} w přełožkach:",
+ "translate-magic-saved": "Twoje změny su so wuspěšnje składowali.",
+ "translate-checks-parameters": "{{PLURAL:$2|Slědowacy parameter|Slědowacej parametraj|Slědowace parametry|Slědowacych parametrow}} so {{PLURAL:$2|njewužiwa|njewužiwatej|njewužiwaja|njewužiwa}}: <strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-parameters-unknown": "{{PLURAL:$2|Slědowacy parameter je njeznaty|Slědowacej parametraj stej njeznatej|Slědowace parametry su njeznate|Slědowacych parametrow je njeznate}}: <strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-balance": "Je njeruna ličba {{PLURAL:$2|spinka|spinkow|spinkow|spinkow}}: <strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links": "{{PLURAL:$2|Slědowacy wotkaz je problematiski|Slědowacej wotkazaj stej problematiskej|Slědowace wotkazy wotkazy su problematiske|Slědowacych wotkazow je problematiske}}: <strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links-missing": "{{PLURAL:$2|Slědowacy wotkaz pobrachuje|Slědowacej $2 wotkazaj pobrachujetej|Slědowace $2 wotkazy pobrachuja|Slědowacych $2 wotkazow pobrachuje}}: <strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-xhtml": "Narunaj prošu {{PLURAL:$2|slědowacu tafličku|slědowacej tafličce|slědowace taflički|slědowacych tafličkow}} přez {{PLURAL:$2|korektnu|korektnej|korektne|korektne}}: <strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-plural": "Definicija wužiwa <nowiki>{{PLURAL:}}</nowiki>, přełožk pak nic.",
+ "translate-checks-plural-forms": "Za <nowiki>{{PLURAL:}}</nowiki> {{PLURAL:$1|je so jedna forma podała|stej so $1 formje podałoj|su so $1 formy podali|je so $1 formow podało}}, ale {{PLURAL:$2|podpěruje so jenož jedna forma|podpěrujetej so $2 formje|podpěruja so $2 formy|podpěruje so $2 formow}} (bjez formow 0= a 1=).",
+ "translate-checks-plural-dupe": "<nowiki>{{PLURAL:}}</nowiki> ma dwě jeničkej formje na kóncu. <nowiki>{{PLURAL:$1|mloko|mloko}}</nowiki> měł so jako <nowiki>{{PLURAL:$1|mloko}}</nowiki> pisać.",
+ "translate-checks-pagename": "Mjenowy rum z definicije změnjeny",
+ "translate-checks-format": "Tutón přełožk njeslěduje definiciji abo ma njepłaćiwu syntaksu: $1",
+ "translate-checks-escape": "Slědowace eskapowe sekwency móža připadne być: <strong>$1</strong>",
+ "translate-checks-parametersnotequal": "Ličba parametrow je {{PLURAL:$1|$1}}; to měł {{PLURAL:$2|$2}} być.",
+ "translate-checks-malformed": "<nowiki>$1</nowiki> ma njepłaćiwu formu.",
+ "translate-checks-fudforum-syntax": "<nowiki>$1</nowiki> město <nowiki>$2</nowiki> w tutym projekće wužiwać.",
+ "translate-pref-nonewsletter": "Njepósćel mi žane e-mejlowe dopisy nowinkow",
+ "translate-pref-editassistlang": "Pomocne rěče:",
+ "prefs-translate": "Přełožowanske opcije",
+ "translate-pref-editassistlang-help": "Lisćina rěčnych kodow z komu jako dźělatko.\nPřełožk powěsće w tutych rěčach pokazuja so, hdyž přełožuješ.\nStandardna lisćina rěčow wotwisuje wot twojeje rěče.",
+ "translate-pref-editassistlang-bad": "Njepłaćiwy rěčny kod w lisćinje:\n<nowiki>$1</nowiki>",
+ "right-translate": "Z pomocu powjercha přełožowanja wobdźěłać",
+ "right-translate-manage": "Zdźělenske skupiny zrjadować",
+ "action-translate-manage": "zdźělenske skupiny zrjadować",
+ "right-translate-import": "Offline přewjedźene přełožki importować",
+ "action-translate-import": "offline přewjedźene přełožki importować",
+ "right-translate-messagereview": "Přełožki přepruwować",
+ "right-translate-groupreview": "Dźěłowy status zdźělenskich skupinow změnić",
+ "translate-rc-translation-filter": "Přełožki filtrować:",
+ "translate-rc-translation-filter-no": "Ničo nječinić",
+ "translate-rc-translation-filter-only": "Jenož přełožki pokazać",
+ "translate-rc-translation-filter-filter": "Přełožki wufiltrować",
+ "translate-rc-translation-filter-site": "Jenož změny sydłowych zdźělenkow",
+ "translationstats": "Statistiki přełožkow",
+ "translate-stats-edits": "Změny",
+ "translate-stats-users": "Přełožowarjo",
+ "translate-stats-registrations": "Registrowanja",
+ "translate-stats-reviews": "Přepruwowanja",
+ "translate-stats-reviewers": "Přepruwowarjo",
+ "translate-statsf-intro": "Móžeš z tutym formularom jednoru statistiku wutworić. Wšě hódnoty maja horni a delni limit.",
+ "translate-statsf-options": "Grafiske opcije",
+ "translate-statsf-width": "Šěrokosć w pikselach:",
+ "translate-statsf-height": "Wysokosć w pikselach:",
+ "translate-statsf-days": "Doba w dnjach:",
+ "translate-statsf-start": "Spočatny datum:",
+ "translate-statsf-scale": "Granularita:",
+ "translate-statsf-scale-months": "Měsacy",
+ "translate-statsf-scale-weeks": "Njedźele",
+ "translate-statsf-scale-days": "Dny",
+ "translate-statsf-scale-hours": "Hodźiny",
+ "translate-statsf-count": "Měra:",
+ "translate-statsf-count-edits": "Ličba změnow",
+ "translate-statsf-count-users": "Aktiwni přełožowarjo",
+ "translate-statsf-count-registrations": "Nowi wužiwarjo",
+ "translate-statsf-count-reviews": "Přepruwowanja přełožkow",
+ "translate-statsf-count-reviewers": "Přepruwowarjo",
+ "translate-statsf-language": "Lisćina přez komu wotdźělenych rěčnych kodow:",
+ "translate-statsf-group": "Lisćina přez komu wotdźělenych skupinowych kodow:",
+ "translate-statsf-submit": "Přehlad",
+ "translate-tag-category": "Přełožujomne strony",
+ "translate-tag-page-desc": "Přełožk wikijoweje strony [[$2|$1]].",
+ "translate-sidebar-alltrans": "W druhich rěčach",
+ "translations": "Wšě přełožki",
+ "translations-summary": "Zapodaj deleka zdźělenske mjeno, zo by wšě k dispoziciji stejce přełožki pokazał.",
+ "translate-translations-no-message": "\"$1\" přełožujomna zdźělenka njeje",
+ "translate-translations-none": "Přełožki za \"$1\" njejsu",
+ "translate-translations-count": "{{PLURAL:$1|jedyn přełožk namakany|$1 přełožkaj namkanej|$1 přełožki namakane|$1 přełožkow namakanych}}",
+ "translate-translations-fieldset-title": "Zdźělenka",
+ "translate-translations-messagename": "Mjeno:",
+ "translate-translations-project": "Projekt:",
+ "translate-translations-including-no-param": "Prošu podaj płaćiwy zdźělenski kluč w parametrje podstrona",
+ "translate-translations-history-short": "s",
+ "languagestats": "Rěčna statistika",
+ "languagestats-summary": "Strona pokazuje přełožowansku statistiku za wšě zdźělenske skupiny za rěč.",
+ "messagegroupstats-summary": "Tuta strona pokazuje statistiku wo skupinach powěsćow.",
+ "languagestats-stats-for": "Přełožowanska statistika za $1 ($2).",
+ "languagestats-recenttranslations": "nowše přełožki",
+ "translate-langstats-incomplete": "Někotre statistiki na tutej stronje su njedospołne. Prošu začitaj ju znowa, zo by dalše statistiki dóstał.",
+ "translate-langstats-expand": "pokazać",
+ "translate-langstats-collapse": "schować",
+ "translate-langstats-expandall": "wšě pokazać",
+ "translate-langstats-collapseall": "wšě schować",
+ "translate-language-code": "Rěčny kod",
+ "translate-language-code-field-name": "Rěčny kod:",
+ "translate-suppress-complete": "Dospołnje přełožene zdźělenske skupiny potłóčić",
+ "translate-ls-noempty": "Dospołnje njepřełožene zdźělenske skupiny potłóčić",
+ "translate-language": "Rěč:",
+ "translate-total": "Zdźělenki",
+ "translate-untranslated": "Njepřełoženy",
+ "translate-percentage-complete": "Dospołny",
+ "translate-percentage-fuzzy": "Zestarjeny",
+ "translate-languagestats-overall": "Wšě zdźělenske skupiny dohromady",
+ "translate-ls-submit": "Statistiki pokazać",
+ "translate-ls-column-group": "Zdźělenska skupina",
+ "translate-mgs-pagename": "Statistika zdźělenskeje skupiny",
+ "translate-mgs-fieldset": "Nastajenja pokazać",
+ "translate-mgs-group": "Zdźělenska skupina:",
+ "translate-mgs-nocomplete": "Rěče z dokónčenymi přełožkami njezwobraznić",
+ "translate-mgs-noempty": "Rěče, kotrež přełožki nimaja, njepokazać",
+ "translate-mgs-submit": "Statistiki pokazać",
+ "translate-mgs-column-language": "Rěč",
+ "translate-mgs-totals": "Wšě rěče dohromady",
+ "translate-mgs-invalid-group": "Podata skupina $1 njeeksistuje.",
+ "translate-mgs-nothing": "Za požadanu statistiku daty njejsu.",
+ "supportedlanguages": "Podpěrowane rěče",
+ "supportedlanguages-summary": "Tuta strona pokazuje lisćinu wšěch rěčow, kotrež so přez {{GRAMMAR:akuzatiw|{{SITENAME}}}} podpěruja, hromadźe z mjenami přełožowarjow, kotřiž do teje rěče přełožuja.\nMjeno přełožowarja jewi so čim wjetšo ćim wjace změnow přełožowar je dodał.\nBarba podšmórnjenja přełožowarskeho mjena pokazuje, kak aktiwny přełožowar je njedawno był.",
+ "supportedlanguages-colorlegend": "Legenda za barbu: Posledni přełožk před $1 dnjemi.",
+ "supportedlanguages-translators": "{{PLURAL:$2|Přełožowar|Přełožowarjej|Přełožowarjo|Přełožowarjo}}: $1",
+ "supportedlanguages-recenttranslations": "najnowše přełožki",
+ "supportedlanguages-count": "$1 {{PLURAL:$1|rěč|rěči|rěče|rěčow}} w cyłku.",
+ "supportedlanguages-activity": "$1: $2 {{PLURAL:$2|změna|změnje|změny|změnow}} - poslednja změna před $3 {{PLURAL:$3|dnjom|dnjomaj|dnjemi|dnjemi}}",
+ "translate-save": "Składować ($1)",
+ "translate-jssti-add": "Lisćinje přidać",
+ "managemessagegroups": "Zrjadowanje zdźělenskich skupinow",
+ "translate-smg-notallowed": "Njesměš tutu akciju wuwjesć.",
+ "translate-smg-nochanges": "Njejsu žane změny za předźěłanje.",
+ "translate-smg-submit": "Změny na předźěłowanje pósłać",
+ "translate-smg-submitted": "Definicije zdźělenkow su so zaktualizowali. Změny so w pozadku předźěłuja.",
+ "translate-smg-more": "Po składowanju tutych změnow dyrbja so dalše změny předźěłać.",
+ "translate-smg-left": "Powěsćowy wobsah we wikiju",
+ "translate-smg-right": "Dochadźace změny",
+ "translate-manage-import-diff": "Zdźělenka $1 | akcije: $2",
+ "translate-manage-import-new": "Nowa zdźělenka $1",
+ "translate-manage-import-deleted": "Wušmórnjena zdźělenka $1",
+ "translate-manage-action-import": "Importować",
+ "translate-manage-action-conflict": "Importować a fuzzy",
+ "translate-manage-action-ignore": "Ignorować",
+ "translate-manage-action-fuzzy": "Přełožki importować a jako fuzzy markěrować",
+ "translate-manage-nochanges": "Njejsu žane změny w definicijach zdźělenkow za tutu skupinu.",
+ "translate-manage-nochanges-other": "Njeběchu žane změny za tutu rěč.\nWužij slědowacy wotkaz, zo by so k přehlad skupisnkich podrobnosćow wróćił.",
+ "translate-manage-inconsistent": "W naprašowanju buchu inkonsistency zwěsćene.\nProšu pruwuj za změnami a spytaj hišće raz.\nPodrobnosće: $1",
+ "translate-manage-toolong": "Maksimalny předźěłowanski čas $1 {{PLURAL:$1|sekundy|sekundow|sekundow|sekundow}} je překročeny.\nProšu wotpósćel formular hišće raz, zo by z předźěłowanjom pokročował.",
+ "translate-manage-import-summary": "Nowa wersija so eksterneho žórła importuje",
+ "translate-manage-conflict-summary": "Nowa wersija so z eksterneho žórła importuje.\nProšu přepruwować.",
+ "translate-manage-fuzzy-summary": "Definicija zdźělenki je so změniła",
+ "translate-manage-submit": "Wuwjesć",
+ "translate-manage-intro-other": "Slěduje lisćina přełožowanskich změnow w rěči $1.\nProšu přepruwuj změny a wubjer akciju, kotruž chceš za kóždy přełožk wuwjesć.\nJeli změny ignoruješ, je tuta akcija jenož nachwilna.",
+ "translate-manage-import-ok": "Importowany: $1",
+ "translate-manage-import-done": "Import dokónčeny!",
+ "importtranslations": "Přełožki importować",
+ "translate-import-from-local": "Lokalne nahraće dataje:",
+ "translate-import-load": "Dataju začitać",
+ "translate-import-err-dl-failed": "Dataja njeda so wotwołać:\n$1",
+ "translate-import-err-ul-failed": "Nahraće dataje wuspěšne njebě",
+ "translate-import-err-invalid-title": "Podate datajowe mjeno <nowiki>$1</nowiki> bě njepłaćiwe.",
+ "translate-import-err-no-such-file": "Dataja <nowiki>$1</nowiki> njeeksistuje abo njeje so lokalnje nahrała.",
+ "translate-import-err-stale-group": "Skupina powěsćow, ke kotrejž tuta dataja słuša, njeeksistuje.",
+ "translate-import-err-no-headers": "Dataja derje sformowana dataja Gettext we formaće rozšěrjenje \"Translate\" njeje:\nNjeje móžno skupinu a rěč z hłowy dataje zwěsćić.",
+ "translate-import-err-warnings": "Dataja derje sformowana njeje.\nZawěsć, zo twój editor pola <code>msgctxt</code> njewotstronja.\nPodrobnosće: $1",
+ "translate-js-summary": "Zjeće:",
+ "translate-js-save": "Składować",
+ "translate-js-next": "Přichodnu powěsć składować a wočinić",
+ "translate-js-nonext": "To bě poslednja zdźělenka na tutej stronje.",
+ "translate-js-skip": "K přichodnej powěsći skočić",
+ "translate-js-save-failed": "Składowanje je so njeporadźiło. Prošu zdźěl tutón zmylk.",
+ "translate-js-history": "Přełožowanska historija",
+ "translate-js-support": "Prašeć so",
+ "translate-js-support-title": "Poproš wo pomoc, jeli dosć informacijow njeje, zo by so tuta powěsć prawje přełožiła.",
+ "translate-js-support-unsaved-warning": "Maš njeskładowane přełožki.",
+ "translate-gs-pos": "Poz.",
+ "translate-gs-code": "Kod",
+ "translate-gs-continent": "Kontinent",
+ "translate-gs-speakers": "Rěčnicy",
+ "translate-gs-score": "Pohódnoćenje",
+ "translate-gs-multiple": "Wjacore",
+ "translate-gs-count": "Ličba",
+ "translate-gs-total": "Dohromady",
+ "translate-gs-avgscore": "Přerězne pohódnoćenje",
+ "translate-documentation-language": "Pokazki za přełožowanje",
+ "translate-searchprofile": "Přełožki",
+ "translate-searchprofile-tooltip": "We wšěch přełožkach pytać",
+ "translate-search-languagefilter": "Po rěči filtrować:",
+ "translate-search-nofilter": "Žane filtrowanje",
+ "translate-messagereview-submit": "Jako přepruwowany markěrować",
+ "translate-messagereview-progress": "Markěruje so jako přepruwowany...",
+ "translate-messagereview-failure": "Markěrowanje jako přepruwowany je so njeporadźiło: $1",
+ "translate-messagereview-done": "Přepruwowany",
+ "translate-messagereview-reviews": "Wot {{PLURAL:$1|jednoho wužiwarja|$1 wužiwarjow}} přepruwowany",
+ "translate-messagereview-reviewswithyou": "Wot {{PLURAL:$1|tebje|$1 wužiwarjow inkluziwnje tebje}} přepruwowany",
+ "api-error-invalidrevision": "Přełožk njeje so namakał",
+ "api-error-unknownmessage": "Zdźělenka njeje so namakała",
+ "api-error-fuzzymessage": "Přełožk je jako zestarjeny markěrowany",
+ "api-error-owntranslation": "Njemóžeš swójske přełožki jako přepruwowane markěrować.",
+ "translate-messagereview-no-fuzzy": "Zestarjene přełožki njehodźa so jako přepruwowane markěrować.",
+ "translate-messagereview-no-own": "Njemóžeš swójske přełožki jako přepruwowane markěrować.",
+ "translate-messagereview-doit": "Tutón přełožk jako přepruwowany markěrować.",
+ "log-name-translationreview": "Protokol přepruwowanjow přełožkow",
+ "log-description-translationreview": "Protokol wšěch přepruwowanjow k přełožkam a zdźělenskim skupinam.",
+ "logentry-translationreview-message": "$1 je přełožk $3 {{GENDER:$2|přepruwował|přepruwowała}}",
+ "logentry-translationreview-group": "$1 je status přełožkow w rěči $4 strony $3 wot $6 do $7 {{GENDER:$2|změnił|změniła}}",
+ "group-translate-sandboxed": "Njewobkrućeni přełožowarjo",
+ "group-translate-sandboxed-member": "{{GENDER:$1|njewobkrućeny přełožowar|njewobkrućena přełožowarka}}",
+ "right-translate-sandboxmanage": "Wužiwarjow hrajkanišća zrjadować",
+ "action-translate-sandboxmanage": "wužiwarjow hrajkanišća zrjadować",
+ "right-translate-sandboxaction": "Akcije wuwjesć, kotrež su na \"běłej lisćinje\" wužiwarjow hrajkanišća",
+ "action-translate-sandboxaction": "Akcije wuwjesć, kotrež su na \"běłej lisćinje\" wužiwarjow hrajkanišća",
+ "translate-workflow-state-": "(njenastajeny)",
+ "translate-workflowstatus": "Status: $1",
+ "translate-workflow-set-do": "Nastajić",
+ "translate-workflow-set-doing": "Nastaja so...",
+ "translate-workflow-set-done": "Nastajeny!",
+ "translate-workflow-set-error-alreadyset": "Požadany status je identiski z aktualnym statusom.",
+ "translate-workflow-autocreated-summary": "Awtomatiske wutworjenje strony za dźěłowotběžny status $1",
+ "translate-stats-workflow": "Status",
+ "translate-workflowgroup-label": "Dźěłowotběžne statusy",
+ "translate-workflowgroup-desc": "Tuta zdźělenska skupina pokazuje přełožowanske dźěłowotběžne statusy.\nStatusy definuja so w konfiguraciskej wariabli $wgTranslateWorkflowStates.",
+ "translate-dynagroup-recent-label": "Najnowše přełožki",
+ "translate-dynagroup-recent-desc": "Tuta zdźělenska skupina pokazuje wšě aktualne přełožki do tuteje rěče.\nJe najwužitniša za přepruwowanske nadawki.",
+ "translate-dynagroup-additions-label": "Aktualne přidawki",
+ "translate-dynagroup-additions-desc": "Tuta zdźělenska skupina pokazuje nowe a změnjene zdźělenki.",
+ "translate-dynagroup-by": "Přełožk wot {{GENDER:$1|$1}}",
+ "translate-dynagroup-byc": "Přełožk wot {{GENDER:$1|$1}} ($2)",
+ "translate-dynagroup-last": "Najnowša změna wot {{GENDER:$1|$1}}",
+ "translate-dynagroup-lastc": "Najnowša změna wot {{GENDER:$1|$1}} ($2)",
+ "translate-gethelp": "Pomoc",
+ "translate-msggroupselector-projects": "Zdźělenska skupina",
+ "translate-msggroupselector-search-placeholder": "Skupiny přepytać",
+ "translate-msggroupselector-search-all": "Wšě",
+ "translate-msggroupselector-search-recent": "Najnowše",
+ "translate-msggroupselector-view-subprojects": "$1 {{PLURAL:$1|podskupina|podskupinje|podskupiny|podskupinow}}",
+ "tux-languageselector": "Přełožić do",
+ "tux-tab-all": "Wšě",
+ "tux-tab-untranslated": "Njepřełoženy",
+ "tux-tab-outdated": "Zestarjeny",
+ "tux-tab-translated": "Přełoženy",
+ "tux-tab-unproofread": "Njepřepruwowany",
+ "tux-edit": "Wobdźěłać",
+ "tux-status-optional": "Opcionalny",
+ "tux-status-fuzzy": "Zestarjeny",
+ "tux-status-proofread": "Přepruwowany",
+ "tux-status-translated": "Přełoženy",
+ "tux-status-saving": "Składuje so...",
+ "tux-status-unsaved": "Njeskładowany",
+ "tux-editor-placeholder": "Twój přełožk",
+ "tux-editor-paste-original-button-label": "Žórłowy tekst zasadźić",
+ "tux-editor-discard-changes-button-label": "Změny zaćisnyć",
+ "tux-editor-save-button-label": "Přełožk składować",
+ "tux-editor-skip-button-label": "K přichodnemu",
+ "tux-editor-cancel-button-label": "Přetorhnyć",
+ "tux-editor-confirm-button-label": "Přełožk wobkrućić",
+ "tux-editor-shortcut-info": "Tłóč \"$1\", zo by składował abo \"$2\", zo by k přichodnej zdźělence dóšoł abo \"$3\" za druhe skrótšenki.",
+ "tux-editor-edit-desc": "Dokumentaciju wobdźěłać",
+ "tux-editor-add-desc": "Dokumentaciju přidać",
+ "tux-editor-suggestions-title": "Namjety",
+ "tux-editor-in-other-languages": "W druhich rěčach",
+ "tux-editor-need-more-help": "Trjebaš wjace pomocy?",
+ "tux-editor-ask-help": "Wo dalše informacije prosyć",
+ "tux-editor-tm-match": "$1 % wotpowědowanja",
+ "tux-warnings-more": "{{PLURAL:$1|$1 dalše|$1dalšej|$1dalše|$1 dalšich}}",
+ "tux-warnings-hide": "schować",
+ "tux-editor-save-failed": "Přełožk njeda so składować: $1",
+ "tux-editor-n-uses": "{{PLURAL:$1|$1 raz|dwójce|$1 razy|$1 razow}} wužity",
+ "tux-editor-message-desc-more": "Wjace sej wobhladać",
+ "tux-editor-message-desc-less": "Mjenje sej wobhladać",
+ "tux-editor-clear-translated": "Přełožki schować",
+ "tux-editor-proofreading-mode": "Přepruwować",
+ "tux-editor-translate-mode": "Lisćina",
+ "tux-editor-proofreading-hide-own-translations": "Twoje přełožki schować",
+ "tux-editor-proofreading-show-own-translations": "Twoje přełožki pokazać",
+ "tux-proofread-action-tooltip": "Jako přepruwowany markěrować",
+ "tux-proofread-edit-label": "Wobdźěłać",
+ "tux-editor-page-mode": "Strona",
+ "tux-editor-outdated-warning": "Tutón přełožk dyrbi so snano aktualizować.",
+ "tux-editor-outdated-warning-diff-link": "Rozdźěle pokazać",
+ "tux-editor-doc-editor-placeholder": "Dokumentacija zdźělenki",
+ "tux-editor-doc-editor-save": "Dokumentaciju składować",
+ "tux-editor-doc-editor-cancel": "Přetorhnyć",
+ "tux-messagetable-more-messages": "$1 {{PLURAL:$1|dalša zdźělenka|dalšej zdźělence|dalše zdźělenki|dalšich zdźělenkow}}",
+ "tux-messagetable-loading-messages": "{{PLURAL:$1|Začituje so|Začitujetej so|Začituja so|Začituje so}} $1 {{PLURAL:$1|zdźělenka|zdźělence|zdźělenki|zdźělenkow}}.",
+ "tux-message-filter-placeholder": "Lisćinu filtrować",
+ "tux-message-filter-result": "$1 {{PLURAL:$1|wuslědk|wuslědkaj|wuslědki|wuslědkow}} za \"$2\" {{PLURAL:$1|namakany|namakanej|namakane|namakanych}}",
+ "tux-message-filter-advanced-button": "Rozšěrjene pytanje",
+ "tux-message-filter-optional-messages-label": "Opcionalne zdźělenki",
+ "tux-proofread-translated-by-self": "Wot tebje přełoženy",
+ "tux-empty-list-all": "Tuta zdźělenska skupina je prózdna",
+ "tux-empty-list-all-guide": "Wubjer druhu zdźělenku za přełožowanje",
+ "tux-translate-page-no-such-group": "<strong>Podata skupina njeeksistuje.</strong> Wubjer druhu zdźělensku skupinu.",
+ "tux-empty-list-translated": "Žane přełožene zdźělenki",
+ "tux-empty-list-translated-guide": "Móžeš pomhać přełožować",
+ "tux-empty-list-translated-action": "Přełožić",
+ "tux-empty-no-messages-to-display": "Žane powěsće za zwobraznjenje",
+ "tux-empty-there-are-optional": "Su opcionalne zdźělenki, kotrež so w lisćinje njepokazuja",
+ "tux-empty-show-optional-messages": "Opcionalne zdźělenki pokazać",
+ "tux-empty-no-outdated-messages": "Žane zestarjene powěsće",
+ "tux-empty-nothing-to-proofread": "Za přepruwowanje powěsće njejsu",
+ "tux-empty-you-can-help-providing": "Móžeš pomhać, nowe přełožki přinošować",
+ "tux-empty-nothing-new-to-proofread": "Njeje ničo nowe za přepruwowanje",
+ "tux-empty-you-can-review-already-proofread": "Móžeč přełožki přepruwować, kotrež su hižo druzy přepruwowali.",
+ "tux-empty-list-other": "Njeje ničo za přełožowanje",
+ "tux-empty-list-other-guide": "Móžeš pomhać, eksistowace přełožki přepruwować",
+ "tux-empty-list-other-action": "Přełožki přepruwować",
+ "tux-empty-list-other-link": "Wšě zdźělenki pokazać",
+ "tux-editor-close-tooltip": "Začinić",
+ "tux-editor-expand-tooltip": "Pokazać",
+ "tux-editor-collapse-tooltip": "Schować",
+ "tux-editor-message-tools-history": "Historija",
+ "tux-editor-message-tools-translations": "Wšě přełožki",
+ "tux-editor-loading": "Začituje so ...",
+ "translate-search-more-languages-info": "$1 {{PLURAL:$1|dalša rěč|dalšej rěči|dalše rěče|dalšich rěčow}}",
+ "translate-statsbar-tooltip": "$1 % přełoženy, $2 % přepruwowany",
+ "translate-statsbar-tooltip-with-fuzzy": "$1 % přełoženy, $2 % přepruwowany, $3 % zestarjeny",
+ "translate-search-more-groups-info": "$1 {{PLURAL:$1|dalša skupina|dalšej skupinje|dalše skupiny|dalšich skupinow}}",
+ "translate-ulsdep-title": "Konfiguraciski zmylk",
+ "translate-ulsdep-body": "Přełožowanske rozšěrjenje wotwisuje wot [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:UniversalLanguageSelector rozšěrjenja Universal Language Selector]."
+}
diff --git a/MLEB/Translate/i18n/core/ht.json b/MLEB/Translate/i18n/core/ht.json
new file mode 100644
index 00000000..e5c45e9e
--- /dev/null
+++ b/MLEB/Translate/i18n/core/ht.json
@@ -0,0 +1,187 @@
+{
+ "@metadata": {
+ "authors": [
+ "Boukman",
+ "Jvm",
+ "Kaganer",
+ "Masterches",
+ "Sociologist"
+ ]
+ },
+ "translate": "Tradui",
+ "translate-desc": "[[Special:Translate|Paj espesyal]] pou tradui MediaWiki e plis ankò.",
+ "translate-page-no-such-language": "Lang ki endike a pa bon.",
+ "translate-page-no-such-group": "Gwoup ki endike a pa bon",
+ "translate-page-disabled": "Tradiksyon nan lang sa a te deaktive pou gwoup sa.\nRezon:\n\n<em>$1</em>",
+ "translate-page-settings-legend": "Konfigirasyon, preferans",
+ "translate-page-group": "Gwoup",
+ "translate-page-language": "Lang",
+ "translate-page-limit": "Limit",
+ "translate-page-limit-option": "$1 {{PLURAL:$1|mesaj|mesaj}} nan chak paj",
+ "translate-submit": "Ale, fouye",
+ "translate-page-navigation-legend": "Navigasyon",
+ "translate-page-showing": "Montre mesaj $1 jiska $2 nan tout $3 yo.",
+ "translate-page-showing-all": "Montre $1 {{PLURAL:$1|mesaj|mesaj}}.",
+ "translate-page-showing-none": "Pa genyen pyès mesaj pou montre.",
+ "translate-next": "Paj swivan",
+ "translate-prev": "Paj presedan",
+ "translate-page-description-legend": "Enfòmasyon sou gwoup la",
+ "translate-page-edit": "modifye",
+ "translate-ext-url": "<hr /> Sit wèb: $1",
+ "translate-optional": "(opsyon)",
+ "translate-ignored": "(inyore)",
+ "translate-edit-title": "Modifye \"$1\"",
+ "translate-edit-definition": "Definisyon pou mesaj sa",
+ "translate-edit-contribute": "kontribiye",
+ "translate-edit-no-information": "''Mesaj sa pa dokimante.\nSi w konnen ki kote mesaj sa itilize, ou kapab ede lòt tradiktè lè ou ajoute dokimantasyon pou mesaj sa.''",
+ "translate-edit-information": "Enfòmasyon sou mesaj \"$2\" ($1)",
+ "translate-edit-in-other-languages": "Mesaj nan lòt lang yo",
+ "translate-edit-committed": "Tradiksyon kouran nan logisyèl",
+ "translate-edit-warnings": "Avètisman sou tradiksyon ki pa konplete yo",
+ "translate-edit-tmsugs": "Sijesyon ki soti nan memwa tradiksyon",
+ "translate-edit-tmmatch": "$1% korespondans",
+ "translate-use-suggestion": "Mete sijesyon sa a nan zòn tradiksyon a. L ap ranplase tout kontni aktyèl.",
+ "translate-magic-pagename": "Tradiksyon MediaWiki pwolonje",
+ "translate-magic-help": "Ou kapab tradui alias paj espesyal yo, mo majik ak non espas non yo.\n\nAlias pou paj espesyal yo ak mo majik yo ka gen plizyè tradiksyon.\nTradiksyon yo separe pa yon vigil (,).\nEspas non yo ka genyen yon sèl tradiksyon sèlman.\n\nNan tradiksyon espas non yo <code>$1 talk</code> espesyal. <code>$1</code> ranplase pa non sitwèb (pa ekzanp <code>{{ns:project_talk}}</code>).\nSi li pa posib nan lang ou pou fòme ekspresyon valid san ou pa chanje nonsitwèb, souple kontakte yon devlopè.\n\nFòk ou fè pati group tradiktè yo pou ou kapab sove chanjman yo.\nChanjman yo pa sove jouk ou klike sou bouton sove anba.",
+ "translate-magic-module": "Modil:",
+ "translate-magic-submit": "Mande",
+ "translate-magic-cm-export": "Expòte",
+ "translate-magic-nothing-to-export": "Pa gen anyen pou ekspòte.",
+ "translate-magic-cm-to-be": "Ap vin'",
+ "translate-magic-cm-current": "Aktyèl",
+ "translate-magic-cm-original": "Orijinal",
+ "translate-magic-cm-comment": "Kòmantè:",
+ "translate-magic-cm-save": "Anrejistre",
+ "translate-magic-cm-updatedusing": "Mete a jou pa [[Special:AdvancedTranslate|{{int:Translate-magic-pagename}}]]",
+ "translate-magic-cm-savefailed": "Anrejistreman pa t reyisi",
+ "translate-magic-special": "Alias paj espesyal yo",
+ "translate-magic-words": "Mo majik yo",
+ "translate-magic-namespace": "Non espas non yo",
+ "translate-magic-notsaved": "Modifikasyon ou pa t anrejistre!",
+ "translate-magic-errors": "Tanpri, korije {{PLURAL:$1|erè sa|erè sa yo}} nan tradiksyon:",
+ "translate-magic-saved": "Modifikasyon ou yo te byen anrejistre.",
+ "translate-checks-parameters": "Paramèt {{PLURAL:$2|swivan|swivan yo}} pa itilize:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-parameters-unknown": "Nou pa konnen paramèt {{PLURAL:$2|swivan|swivan yo}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-balance": "Genyen yon kantite {{PLURAL:$2|parantèz|parantèz}} ki enpè:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links": "{{PLURAL:$2|Lyen swivan an|$2 lyen swivan yo}} gen pwoblèm:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links-missing": "{{PLURAL:$2|Lyen swivan an|$2 lyen swivan yo}} manke:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-xhtml": "Tanpri, ranplase {{PLURAL:$2|etikèt swivan|etikèt swivan yo}} avèk sa ki kòrèk yo:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-plural": "Definisyon itilize <nowiki>{{PLURAL:}}</nowiki> men pa tradiksyon.",
+ "translate-checks-pagename": "Espas non chanje apati definisyon an",
+ "translate-checks-format": "Tradiksyon sa a pa swiv definisyon a oubyen gen yon sentaks ki pa bon: $1",
+ "translate-checks-escape": "Echapman sa yo kapab rive pa aksidan: <strong>$1</strong>",
+ "translate-checks-fudforum-syntax": "Pito ou sèvi ak <nowiki>$1</nowiki> pase <nowiki>$2</nowiki> nan pwojè sa a.",
+ "translate-pref-nonewsletter": "Pa voye imèl nouvèl yo ban mwen",
+ "translate-pref-editassistlang": "Lang pou sipòte:",
+ "prefs-translate": "Opsyon pou tradiksyon",
+ "translate-pref-editassistlang-help": "Lis kòd lang yo ki separe pa vigil.\nTradiksyon pou yon mesaj nan lang sa yo parèt lè w ap tradui.\nLis lang pa defo depann de lang ou an.",
+ "translate-pref-editassistlang-bad": "Kòd pou lang ki pa bon nan lis:\n<nowiki>$1</nowiki>.",
+ "right-translate": "Itilize fenèt tradiksyon pou fè modifikasyon yo",
+ "right-translate-manage": "Jere gwoup tradiksyon yo",
+ "right-translate-import": "Chaje tradiksyon ki te fèt andeyò.",
+ "translate-rc-translation-filter": "Filtre tradiksyon yo:",
+ "translate-rc-translation-filter-no": "Pa fè anyen",
+ "translate-rc-translation-filter-only": "Montre tradiksyon yo sèlman",
+ "translate-rc-translation-filter-filter": "Pa montre tradiksyon yo",
+ "translate-rc-translation-filter-site": "Chanjman yo nan mesaj pou sit sa sèlman",
+ "translationstats": "Estatistik tradiksyon yo",
+ "translate-stats-edits": "Modifikasyon yo",
+ "translate-stats-users": "Tradiktè yo",
+ "translate-stats-registrations": "Enskripsyon yo",
+ "translate-statsf-intro": "Ou kapab fè estatistik ki senp ak fomilè sa.\nTout valè yo gen limit anwo ak anba.",
+ "translate-statsf-options": "Opsyon yo pou grafik",
+ "translate-statsf-width": "Lajè (an piksèl):",
+ "translate-statsf-height": "Wotè (an piksèl):",
+ "translate-statsf-days": "Peryòd tan an jou:",
+ "translate-statsf-start": "Peryòd tan an jou:",
+ "translate-statsf-scale": "Gwosè mòso yo:",
+ "translate-statsf-scale-months": "Mwa",
+ "translate-statsf-scale-weeks": "Semèn",
+ "translate-statsf-scale-days": "Jou",
+ "translate-statsf-scale-hours": "Èdtan",
+ "translate-statsf-count": "Mezi:",
+ "translate-statsf-count-edits": "Kantite modifikasyon yo",
+ "translate-statsf-count-users": "Tradiktè ki aktif yo",
+ "translate-statsf-count-registrations": "Nouvo itilizatè yo",
+ "translate-statsf-language": "Lis kòd pou lang yo ki separe pa yon vigil:",
+ "translate-statsf-group": "Lis kòd pou gwoup yo ki separe pa yon vigil:",
+ "translate-statsf-submit": "Kout je",
+ "translate-tag-category": "Paj ki kapab tradui",
+ "translate-tag-page-desc": "Tradiksyon pou paj [[$2|$1]].",
+ "translate-sidebar-alltrans": "Nan lòt lang yo",
+ "translations": "Tout tradiksyon yo",
+ "translations-summary": "Ekri yon non mesaj anba pou wè tout tradiksyon ki disponib yo.",
+ "translate-translations-no-message": "\"$1\" pa yon mesaj ou kapab tradui",
+ "translate-translations-none": "Pa gen tradiksyon pou \"$1\"",
+ "translate-translations-count": "Nou jwenn {{PLURAL:$1|yon tradiksyon|$1 tradiksyon}}",
+ "translate-translations-fieldset-title": "Mesaj",
+ "translate-translations-messagename": "Non:",
+ "translate-translations-project": "Pwojè:",
+ "translate-translations-including-no-param": "Tanpri, bay yon kle pou mesaj ki bon nan paramèt sou-paj la",
+ "translate-translations-history-short": "i",
+ "languagestats": "Estatistik lang yo",
+ "languagestats-summary": "Paj sa a montre estatistik tradiksyon yo pou tout gwoup mesaj ki fè pati yon lang.",
+ "languagestats-stats-for": "Estatistik tradiksyon yo pou $1 ($2).",
+ "languagestats-recenttranslations": "Dènye tradiksyon yo",
+ "translate-langstats-expand": "etann",
+ "translate-langstats-collapse": "redui",
+ "translate-langstats-expandall": "etann tout",
+ "translate-langstats-collapseall": "redui tout",
+ "translate-language-code": "Kòd lang",
+ "translate-language-code-field-name": "Kòd lang:",
+ "translate-suppress-complete": "Pa montre gwoup mesaj yo ki fin tradui nèt",
+ "translate-language": "Lang",
+ "translate-total": "Mesaj",
+ "translate-untranslated": "Pa tradui",
+ "translate-percentage-complete": "Konplete",
+ "translate-percentage-fuzzy": "Ansyen",
+ "supportedlanguages": "Lang ki sipòte yo",
+ "supportedlanguages-summary": "Paj sa a montre yon lis tout lang ki sipòte pa {{SITENAME}}, ansanm ak non tradiktè yo ki ap travay nan lang sa yo.\nSi nou ta renmen konn pi plis sou yon lang, klike sou lyen pou paj prensipal lang sa a.\nSi ou klike sou non yon tradiktè, w ap jwenn paj itilizatè li.\n\nSi yon lang pa parèt nan lis, ou kapab gade \"[[Translating:Process|nouvèl lang]]\" pou ou konnen ki jan ou fè pou komanse yon pwojè lokalizasyon pou li.\n\nSi ou tradui vè yon lang epi non ou pa nan lis tradiktè pou lang sa, tanpri ajoute l nan [[:Category:Languages|paj prensipal]].\nGade meni a pou jwenn lyen pou paj prensipal lang ou prefere a.",
+ "supportedlanguages-translators": "{{PLURAL:$2|Tradiktè|Tradiktè yo}}: $1",
+ "supportedlanguages-recenttranslations": "dènye tradiksyon yo",
+ "translate-save": "Anrejistre ($1)",
+ "translate-jssti-add": "Ajoute nan lis",
+ "managemessagegroups": "Jesyon gwoup mesaj",
+ "translate-manage-import-diff": "Mesaj: $1 | Aksyon yo: $2",
+ "translate-manage-import-new": "Nouvo mesaj $1",
+ "translate-manage-import-deleted": "Mesaj efase $1",
+ "translate-manage-action-import": "Enpòte",
+ "translate-manage-action-conflict": "Enpòte epi make kòm flou",
+ "translate-manage-action-ignore": "Pa okipe",
+ "translate-manage-action-fuzzy": "Enpòte epi make tradiksyon yo kòm flou",
+ "translate-manage-nochanges": "Pa gen chanjman nan definisyon mesaj yo pou gwoup sa a.",
+ "translate-manage-nochanges-other": "Pa t gen okenn chanjman pou lang sa a.\nSèvi ak lyen ki anba pou tounen wè detay yo.",
+ "translate-manage-inconsistent": "Detekte enkonsistans nan demann lan.\nTanpri gade si gen chanjman epi eseye ankò.\nDetay: $1.",
+ "translate-manage-toolong": "Tan $1 {{PLURAL:$1|segonn|segonn}} maksimòm pou tretman an depase.\nTanpri, soumèt fòmilè ankò pou kontinye tretman.",
+ "translate-manage-import-summary": "Enpòtasyon yon nouvo vèsyon depi yon sous andeyò",
+ "translate-manage-conflict-summary": "Enpòtasyon yon nouvo vèsyon depi yon sous andeyò.\nTanpri verifye.",
+ "translate-manage-fuzzy-summary": "Definisyon an te chanje",
+ "translate-manage-submit": "Ekzekite",
+ "translate-manage-intro-other": "Anba w ap jwenn yon lis chanjman nan tradiksyon pou lang $1.\nTanpri, revize chanjman yo epi chwazi kisa ou vle fè pou chak tradiksyon.\nSi ou deside pou inyore chanjman yo, y ap kraze nan pwochen ekspòtasyon.",
+ "translate-manage-import-ok": "Yon nouvo vèsyon pou paj $1 te enpòte.",
+ "translate-manage-import-done": "Fini!",
+ "importtranslations": "Enpòte tradiksyon yo",
+ "translate-import-from-local": "Chaje yon fichye local:",
+ "translate-import-load": "Chaje fichye a",
+ "translate-import-err-dl-failed": "Pa kapab jwenn fichye:\n$1",
+ "translate-import-err-ul-failed": "Fichye pa t reyisi chaje",
+ "translate-import-err-invalid-title": "Non fichye <nowiki>$1</nowiki> pa bon.",
+ "translate-import-err-no-such-file": "Fichye <nowiki>$1</nowiki> pa egziste oubyen pa t chaje localman.",
+ "translate-import-err-no-headers": "Fichye sa pa byen fòme nan fòma Gettext pou ekstansyon tradiksyon:\nPa kapab detèmine gwoup ak lang depi tèt fichye.",
+ "translate-import-err-warnings": "Fichye sa pa byen fòme.\nAsire w editè ou itilize a pa retire mòso msgctxt yo.\nDetay: $1",
+ "translate-js-next": "Anrejistre epi ouvri swivan.",
+ "translate-js-nonext": "Sa se te dènye mesaj nan paj sa a.",
+ "translate-js-skip": "Sote ale nan swivan",
+ "translate-js-save-failed": "Anrejistreman pa t reyisi. Tanpri siyale erè sa a.",
+ "translate-js-history": "Istorik tradiksyon",
+ "translate-gs-pos": "Pos.",
+ "translate-gs-code": "Kòd",
+ "translate-gs-continent": "Kontinan",
+ "translate-gs-speakers": "Moun ki pale",
+ "translate-gs-score": "Nòt",
+ "translate-gs-multiple": "Plizyè",
+ "translate-gs-count": "Nonm",
+ "translate-gs-total": "Total",
+ "translate-gs-avgscore": "Mwayèn nòt",
+ "translate-documentation-language": "Dokimantasyon pou mesaj"
+}
diff --git a/MLEB/Translate/i18n/core/hu.json b/MLEB/Translate/i18n/core/hu.json
new file mode 100644
index 00000000..ae4b95d7
--- /dev/null
+++ b/MLEB/Translate/i18n/core/hu.json
@@ -0,0 +1,375 @@
+{
+ "@metadata": {
+ "authors": [
+ "Bináris",
+ "BáthoryPéter",
+ "Dani",
+ "Dj",
+ "Glanthor Reviol",
+ "Misibacsi",
+ "Tacsipacsi",
+ "Tgr",
+ "Wilander",
+ "Csega"
+ ]
+ },
+ "translate": "Fordítás",
+ "translate-desc": "[[Special:Translate|Speciális lap]] a MediaWiki és más projektek fordítására",
+ "translate-taskui-view": "Összes üzenet megjelenítése",
+ "translate-taskui-untranslated": "Lefordítatlan üzenetek megjelenítése",
+ "translate-taskui-optional": "Opcionális üzenetek megjelenítése.",
+ "translate-taskui-acceptqueue": "Csak az általam ellenőrzöttnek jelölt üzenetek",
+ "translate-taskui-reviewall": "Valamennyi fordítás ellenőrzése",
+ "translate-taskui-export-to-file": "Exportálás natív formátumban",
+ "translate-taskui-export-as-po": "Exportálás offline fordításhoz",
+ "translate-taction-translate": "Fordítás",
+ "translate-taction-proofread": "Ellenőriz",
+ "translate-taction-lstats": "Nyelvi statisztika",
+ "translate-taction-mstats": "Üzenetcsoport statisztika",
+ "translate-taction-export": "Exportálás",
+ "translate-taction-disabled": "Ez a művelet le van tiltva ebben a wikiben.",
+ "translate-page-no-such-language": "A megadott nyelv érvénytelen",
+ "translate-page-no-such-group": "A megadott csoport érvénytelen",
+ "translate-page-disabled": "Ez a csoport nem fordítható erre a nyelvre. A tiltás oka:\n\n<em>$1</em>",
+ "translate-language-disabled": "Erre a nyelvre a fordítás le van tiltva.",
+ "translate-page-settings-legend": "Beállítások",
+ "translate-page-group": "Csoport",
+ "translate-page-language": "Nyelv",
+ "translate-page-limit": "Megjelenítendő elemek",
+ "translate-page-limit-option": "$1 üzenet/oldal",
+ "translate-submit": "Megjelenítés",
+ "translate-page-navigation-legend": "Navigáció",
+ "translate-page-showing": "Üzenetek: $1–$2 (összesen $3)",
+ "translate-page-showing-all": "$1 üzenet megjelenítve",
+ "translate-page-showing-none": "Nincs a keresési feltételeknek megfelelő üzenet",
+ "translate-next": "következő",
+ "translate-prev": "előző",
+ "translate-page-description-legend": "Információk a csoportról",
+ "translate-page-description-hasoptional": "Ez az üzenetcsoport opcionális üzeneteket tartalmaz.\nAz opcionális üzeneteket csak akkor kell lefordítani, ha a nyelvnek speciális követelménye van, mint például a szóközök, vagy a tulajdonnevek átírása. $1",
+ "translate-page-description-hasoptional-open": "Opcionális üzenetek megjelenítése.",
+ "translate-page-edit": "szerkesztés",
+ "translate-ext-url": "<hr />Weboldal: $1",
+ "translate-optional": "(nem kötelező)",
+ "translate-ignored": "(figyelmen kívül hagyva)",
+ "translate-edit-title": "„$1” szerkesztése",
+ "translate-edit-definition": "Alapértelmezett érték",
+ "translate-edit-translation": "Fordítás",
+ "translate-edit-contribute": "szerkesztés",
+ "translate-edit-no-information": "''Ehhez az üzenethez még nincs leírás. Ha tudod, hogy hol vagy hogyan jelenik meg, segítheted a többi fordítót az üzenet dokumentálásával.''",
+ "translate-edit-information": "Információk az üzenetről ($1)",
+ "translate-edit-in-other-languages": "Az üzenet más nyelveken",
+ "translate-edit-committed": "Jelenlegi fordítás",
+ "translate-edit-warnings": "Hiányosságok a fordításban",
+ "translate-edit-tmsugs": "Javaslatok a fordítómemóriából",
+ "translate-edit-tmmatch-source": "Fordítási forrás szöveg: $1",
+ "translate-edit-tmmatch": "$1%-os egyezés",
+ "translate-use-suggestion": "A javasolt szöveg átmásolása a fordítási mezőbe, lecserélve annak aktuális tartalmát!",
+ "translate-edit-nopermission": "Az üzenetek fordításához fordítói jogok szükségesek.",
+ "translate-edit-askpermission": "Engedélyszerzés",
+ "translate-magic-pagename": "Kibővített MediaWiki-fordítás",
+ "translate-magic-help": "Lefordíthatod a speciális lapok álneveit, a varázsszavakat és a névterek neveit.\n\nA speciális lapoknak és a varázsszavaknak több fordítása is lehet.\nA fordításokat vesszővel (,) kell elválasztani.\nA névtereknek csak egyetlen fordítása lehet.\n\nA projektvita-névtér fordításánál a <code>$1 talk</code> speciális, a <code>$1</code> az oldal nevére lesz lecserélve (pl. <code>{{ns:project_talk}}</code>).\nHa a te nyelveden nem lehet az oldal nevének változtatása nélkül értelmes kifejezést összehozni, értesítsd a fejlesztőket a [[Support]] lapon.\n\nA változtatások mentését csak az tudja elvégezni, aki tagja a fordítók csoportjának.\nA változtatások nem mentődnek, míg alul a mentés gombra nem kattintasz.",
+ "translate-magic-module": "Modul:",
+ "translate-magic-submit": "Lekérés",
+ "translate-magic-cm-export": "Exportálás",
+ "translate-magic-nothing-to-export": "Nincs mit exportálni.",
+ "translate-magic-cm-to-be": "Leendő",
+ "translate-magic-cm-current": "Jelenlegi",
+ "translate-magic-cm-original": "Eredeti",
+ "translate-magic-cm-comment": "Megjegyzés:",
+ "translate-magic-cm-save": "Mentés",
+ "translate-magic-cm-updatedusing": "Frissítve a [[Special:AdvancedTranslate|{{int:Translate-magic-pagename}}]] használatával",
+ "translate-magic-cm-savefailed": "Mentés sikertelen",
+ "translate-magic-special": "Speciális lapok álnevei",
+ "translate-magic-words": "Varázsszavak",
+ "translate-magic-namespace": "Névterek nevei",
+ "translate-magic-notsaved": "A szerkesztésed nem lett elmentve!",
+ "translate-magic-errors": "Javítsd ki a következő {{PLURAL:$1|hibát|hibákat}} a fordításokban:",
+ "translate-magic-saved": "A módosításaid el lettek mentve.",
+ "translate-checks-parameters": "A következő {{PLURAL:$2|paraméter nincs|paraméterek nincsenek}} használva:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-parameters-unknown": "A következő {{PLURAL:$2|paraméter ismeretlen|paraméterek ismeretlenek}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-balance": "Nem egyenlő számban vannak használva a nyitó és záró {{PLURAL:$2|zárójelek|zárójelek}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links": "A következő {{PLURAL:$2|link problémás|linkek problémásak}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links-missing": "A következő {{PLURAL:$2|hivatkozás hiányzik|hivatkozások hiányoznak}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-xhtml": "A következő {{PLURAL:$2|elemet|elemeket}} cseréld le a megfelelőekre:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-plural": "Az alapértelmezett változatban van <nowiki>{{PLURAL:}}</nowiki> forma, míg a fordításban nincs (magyar nyelv esetén ez nem feltétlenül probléma!).",
+ "translate-checks-pagename": "A névtér nem egyezik meg a definícióval",
+ "translate-checks-format": "A fordítás nem felel meg a definíciónak, vagy érvénytelen a szintaxisa: $1",
+ "translate-checks-escape": "A következő escape-ek valószínűleg véletlenül történtek: <strong>$1</strong>",
+ "translate-checks-parametersnotequal": "A paraméterek száma a szükséges {{PLURAL:$1|$1}} helyett {{PLURAL:$2|$2}}.",
+ "translate-checks-malformed": "<nowiki>$1</nowiki> hibás formátumú.",
+ "translate-checks-fudforum-syntax": "Használj <nowiki>$1</nowiki> formát <nowiki>$2</nowiki> helyett ebben a projektben.",
+ "translate-pref-nonewsletter": "Ne küldjenek hírlevelet",
+ "translate-pref-editassistlang": "Segédnyelvek:",
+ "prefs-translate": "Fordítási beállítások",
+ "translate-pref-editassistlang-help": "Nyelvkódok vesszővel elválasztott listája.\nAz üzenetek fordításai ezeken a nyelveken jelennek meg, amikor fordítasz.\nA nyelvek alapértelmezett listája a nyelvedtől függ.",
+ "translate-pref-editassistlang-bad": "Érvénytelen nyelvkód a listában:\n<nowiki>$1</nowiki>.",
+ "right-translate": "szerkesztés a fordítói felületen keresztül",
+ "right-translate-manage": "Üzenetcsoportok kezelése",
+ "action-translate-manage": "üzenetcsoportok kezelése",
+ "right-translate-import": "kapcsolat nélküli fordítások importálása",
+ "action-translate-import": "offline fordítások importálása",
+ "right-translate-messagereview": "Fordítások ellenőrzése",
+ "right-translate-groupreview": "Üzenetcsoportok állapotának megváltoztatása",
+ "translate-rc-translation-filter": "Fordítások szűrése:",
+ "translate-rc-translation-filter-no": "Ne csináljon semmit",
+ "translate-rc-translation-filter-only": "Csak a fordítások mutatása",
+ "translate-rc-translation-filter-filter": "Fordítások kihagyása",
+ "translate-rc-translation-filter-site": "Az oldal üzeneteinek változása",
+ "translationstats": "Fordítási statisztika",
+ "translate-stats-edits": "Szerkesztések",
+ "translate-stats-users": "Fordítók",
+ "translate-stats-registrations": "Regisztrációk",
+ "translate-stats-reviews": "Ellenőrzések",
+ "translate-stats-reviewers": "Lektorok",
+ "translate-statsf-intro": "A lenti űrlap segítségével egy egyszerű statisztikát generáltathatsz. Minden értéknek van alsó és felső határa.",
+ "translate-statsf-options": "Grafikon beállításai",
+ "translate-statsf-width": "Szélesség pixelekben:",
+ "translate-statsf-height": "Magasság pixelekben:",
+ "translate-statsf-days": "Időtartam napokban:",
+ "translate-statsf-start": "Kezdődátum:",
+ "translate-statsf-scale": "Időköz:",
+ "translate-statsf-scale-months": "Hónapok",
+ "translate-statsf-scale-weeks": "Hetek",
+ "translate-statsf-scale-days": "naponként",
+ "translate-statsf-scale-hours": "óránként",
+ "translate-statsf-count": "Értékek:",
+ "translate-statsf-count-edits": "Szerkesztések száma",
+ "translate-statsf-count-users": "Aktív fordítók",
+ "translate-statsf-count-registrations": "Új felhasználók",
+ "translate-statsf-count-reviews": "Fordítás ellenőrzések",
+ "translate-statsf-count-reviewers": "Lektorok",
+ "translate-statsf-language": "Nyelvkódok, vesszővel elválasztva:",
+ "translate-statsf-group": "Csoportkódok, vesszővel elválasztva:",
+ "translate-statsf-submit": "Előnézet",
+ "translate-tag-category": "Lefordítható lapok",
+ "translate-tag-page-desc": "A(z) [[$2|$1]] lap fordítása",
+ "translate-sidebar-alltrans": "Más nyelveken",
+ "translations": "Minden fordítás",
+ "translations-summary": "Add meg az üzenet nevét az összes elérhető fordítás listázásához.",
+ "translate-translations-no-message": "„$1” egy nem lefordítható üzenet",
+ "translate-translations-none": "A(z) „$1” üzenetnek nincsenek fordításai",
+ "translate-translations-count": "{{PLURAL:$1|Egy fordítás|$1 fordítás}} található.",
+ "translate-translations-fieldset-title": "Üzenet",
+ "translate-translations-messagename": "Név:",
+ "translate-translations-project": "Projekt:",
+ "translate-translations-including-no-param": "Adj meg egy érvényes üzenetazonosítót, allapként.",
+ "translate-translations-history-short": "t",
+ "languagestats": "Nyelvi statisztika",
+ "languagestats-summary": "Ezen a lapon az egy nyelvhez tartozó összes üzenetcsoport fordítási statisztikái láthatóak.",
+ "messagegroupstats-summary": "Ezen a lapon az egyes üzenetcsoportok statisztikái láthatóak.",
+ "languagestats-stats-for": "Nyelvi statisztika a(z) $1 nyelvhez ($2).",
+ "languagestats-recenttranslations": "friss fordítások",
+ "translate-langstats-incomplete": "Ezen a lapon néhány statisztika nem teljes. Kérlek töltsd be újra az oldalt további statisztikákért.",
+ "translate-langstats-expand": "kinyit",
+ "translate-langstats-collapse": "becsuk",
+ "translate-langstats-expandall": "összes kinyitása",
+ "translate-langstats-collapseall": "összes becsukása",
+ "translate-language-code": "Nyelvkód",
+ "translate-language-code-field-name": "Nyelvkód:",
+ "translate-suppress-complete": "Teljesen lefordított üzenetcsoportok elrejtése",
+ "translate-ls-noempty": "Teljesen lefordítatlan üzenetcsoportok elrejtése",
+ "translate-language": "Nyelv",
+ "translate-total": "Üzenetek",
+ "translate-untranslated": "Lefordítatlan",
+ "translate-percentage-complete": "Készültségi fok",
+ "translate-percentage-fuzzy": "Elavult",
+ "translate-languagestats-overall": "Valamennyi üzenetcsoport együtt",
+ "translate-ls-submit": "Statisztika megjelenítése",
+ "translate-ls-column-group": "Üzenetcsoport",
+ "translate-mgs-pagename": "Üzenetcsoport statisztika",
+ "translate-mgs-fieldset": "Megjelenítési beállítások",
+ "translate-mgs-group": "Üzenetcsoport:",
+ "translate-mgs-nocomplete": "Ne jelenjenek meg a teljesen lefordított nyelvek",
+ "translate-mgs-noempty": "Ne jelenjenek meg azok a nyelvek, amelyeknek nincs egyetlen fordítása sem",
+ "translate-mgs-submit": "Statisztika megjelenítése",
+ "translate-mgs-column-language": "Nyelv",
+ "translate-mgs-totals": "Minden nyelv együtt",
+ "translate-mgs-invalid-group": "A megadott $1 csoport nem létezik.",
+ "translate-mgs-nothing": "Nincs megjeleníthető statisztika.",
+ "supportedlanguages": "Támogatott nyelvek",
+ "supportedlanguages-summary": "Ezen a lapon megtalálható a {{SITENAME}} által támogatott összes nyelv, a nyelven dolgozó fordítók neveivel együtt.\n\nEgy fordító minél többet fordított, a neve annál nagyobb betűkkel jelenik meg. Az aláhúzás színe jelzi, hogy az adott fordító legutóbb mikor volt aktív.",
+ "supportedlanguages-colorlegend": "A színek jelentése: a legutóbbi fordítást $1 napja végezte.",
+ "supportedlanguages-translators": "{{PLURAL:$2|Fordító|Fordítók}}: $1",
+ "supportedlanguages-recenttranslations": "friss fordítások",
+ "supportedlanguages-count": "Összesen {{PLURAL:$1|egy|$1}} nyelv.",
+ "supportedlanguages-activity": "$1: {{PLURAL:$2|egy|$2}} szerkesztés, a legutóbb {{PLURAL:$3|egy|$3}} napja szerkesztett",
+ "translate-save": "Mentés ($1)",
+ "translate-jssti-add": "Hozzáadás a listához",
+ "managemessagegroups": "Üzenetcsoportok karbantartása",
+ "translate-smg-notallowed": "Ezt a tevékenységet nem hajthatod végre.",
+ "translate-smg-nochanges": "Nincsenek feldolgozandó változtatások.",
+ "translate-smg-submit": "Változtatások elküldése feldolgozásra",
+ "translate-smg-submitted": "Az üzenet definíciók frissítése megtörtént. A változások a háttérben kerülnek feldolgozásra.",
+ "translate-smg-left": "Üzenet tartalom wikiben",
+ "translate-smg-right": "Bejövő változtatások",
+ "translate-manage-import-diff": "Üzenet: $1 | Műveletek: $2",
+ "translate-manage-import-new": "Új üzenet: $1",
+ "translate-manage-import-deleted": "Törölt üzenet: $1",
+ "translate-manage-action-import": "Importálás",
+ "translate-manage-action-conflict": "Importálás és fuzzy-nak jelölés",
+ "translate-manage-action-ignore": "Figyelmen kívül hagyás",
+ "translate-manage-action-fuzzy": "Fordítások importálása és fuzzy-nak jelölése",
+ "translate-manage-nochanges": "Ebben a csoportban nem történt módosítás az üzenetek definíciójában.",
+ "translate-manage-nochanges-other": "Ennél a nyelvnél nem történtek változtatások.\nHasználd az alábbi linket a csoport adatlapjához történő visszalépéshez.",
+ "translate-manage-inconsistent": "A kérésben inkonzisztenciát észleltem.\nEllenőrizd a változtatásokat, majd próbáld újra.\nRészletek: $1.",
+ "translate-manage-toolong": "A maximális feldolgozási idő ({{PLURAL:$1|egy|$1}} másodperc) túl lett lépve.\nKüldd el újra az űrlapot a feldolgozás folytatásához.",
+ "translate-manage-import-summary": "Új változat importálása külső forrásból",
+ "translate-manage-conflict-summary": "Új változat importálása külső forrásból.\nEllenőrizd.",
+ "translate-manage-fuzzy-summary": "Az üzenet definíciója megváltozott",
+ "translate-manage-submit": "Végrehajtás",
+ "translate-manage-intro-other": "Alább látható a(z) $1 nyelv fordításaiban történt változtatások listája.\nEllenőrizd a változtatásokat, és válaszd ki azt a műveletet, amit alkalmazni szeretnél minden egyes fordításra.\nHa figyelmen kívül hagyod a változtatásokat, felül lesznek bírálva a következő exportáláskor.",
+ "translate-manage-import-ok": "Importálva: $1",
+ "translate-manage-import-done": "Importálás kész!",
+ "importtranslations": "Fordítások importálása",
+ "translate-import-from-local": "Helyi fájlfeltöltés:",
+ "translate-import-load": "Fájl betöltése",
+ "translate-import-err-dl-failed": "Nem sikerült olvasni a fájlt:\n$1",
+ "translate-import-err-ul-failed": "A fájlfeltöltés sikertelen volt",
+ "translate-import-err-invalid-title": "A megadott fájlnév (<nowiki>$1</nowiki>) érvénytelen.",
+ "translate-import-err-no-such-file": "A(z) <nowiki>$1</nowiki> fájl nem létezik vagy nem helyben lett feltöltve.",
+ "translate-import-err-stale-group": "A fájlhoz tartozó üzenetcsoport nem létezik.",
+ "translate-import-err-no-headers": "A fájl nem egy jól formázott Gettext-fájl a Translate-kiterjesztés formátumával:\nnem sikerült meghatározni a csoportot és a nyelvet a fájl fejlécéből.",
+ "translate-import-err-warnings": "A fájl nem megfelelően formázott.\nEllenőrizd, hogy a szerkesztőd nem távolította-e el az msgctxt-mezőket.\nRészletek: $1",
+ "translate-js-summary": "Összefoglaló:",
+ "translate-js-save": "Mentés",
+ "translate-js-next": "Mentés és a következő megnyitása",
+ "translate-js-nonext": "Ez volt az utolsó üzenet ezen a lapon.",
+ "translate-js-skip": "Ugrás a következőre",
+ "translate-js-save-failed": "A mentés nem sikerült. Kérlek jelezd a hibát.",
+ "translate-js-history": "Fordítási előzmények",
+ "translate-js-support": "Kérdés feltevése",
+ "translate-js-support-title": "Itt kérhetsz segítséged, ha nincs elegendő információd egy üzenet megfelelő lefordításához.",
+ "translate-js-support-unsaved-warning": "Mentetlen fordításaid vannak.",
+ "translate-gs-pos": "Hely",
+ "translate-gs-code": "Kód",
+ "translate-gs-continent": "Kontinens",
+ "translate-gs-speakers": "Beszélők",
+ "translate-gs-score": "Eredmény",
+ "translate-gs-multiple": "Több",
+ "translate-gs-count": "Számláló",
+ "translate-gs-total": "Összesen",
+ "translate-gs-avgscore": "Átlagos eredmény",
+ "translate-documentation-language": "Üzenetdokumentáció",
+ "translate-searchprofile": "Fordítások",
+ "translate-searchprofile-tooltip": "Keresés az összes fordítás között",
+ "translate-search-languagefilter": "Szűrés nyelv szerint",
+ "translate-search-nofilter": "Nincs szűrés",
+ "translate-messagereview-submit": "Ellenőrzöttnek jelölés",
+ "translate-messagereview-progress": "Ellenőrzöttnek jelölés...",
+ "translate-messagereview-failure": "Ellenőrzöttnek jelölés sikertelen: $1",
+ "translate-messagereview-done": "Ellenőrizve",
+ "translate-messagereview-reviews": "{{PLURAL:$1|Egy|$1}} felhasználó ellenőrizte",
+ "translate-messagereview-reviewswithyou": "{{PLURAL:$1|Csak te ellenőrizted|$1 felhasználó ellenőrizte, veled együtt}}",
+ "api-error-invalidrevision": "nem található a fordítás",
+ "api-error-unknownmessage": "nem található az üzenet",
+ "api-error-fuzzymessage": "a fordítás fuzzy",
+ "api-error-owntranslation": "nem jelölheted ellenőrzöttnek a saját fordításaidat",
+ "translate-messagereview-no-fuzzy": "FUZZY fordításokat nem lehet ellenőrzöttnek jelölni.",
+ "translate-messagereview-no-own": "Saját fordításodat nem tudod ellenőrzöttnek jelölni.",
+ "translate-messagereview-doit": "A fordítás megjelölése ellenőrzöttként.",
+ "log-name-translationreview": "Fordítás-ellenőrzési napló",
+ "log-description-translationreview": "Valamennyi fordítás és üzenetcsoport ellenőrzésének a naplója.",
+ "logentry-translationreview-message": "$1 {{GENDER:$2|ellenőrizte}} a fordítást: $3",
+ "translate-workflow-state-": "(nem beállított)",
+ "translate-workflowstatus": "Állapot: $1",
+ "translate-workflow-set-do": "Beállít",
+ "translate-workflow-set-doing": "Beállítás…",
+ "translate-workflow-set-done": "Beállítva!",
+ "translate-workflow-set-error-alreadyset": "A kért állapot megegyezik a jelenlegi állapottal.",
+ "translate-workflow-autocreated-summary": "Automatikus lap létrehozás $1 munkafolyamat állapothoz.",
+ "translate-stats-workflow": "Állapot",
+ "translate-workflowgroup-label": "Munkafolyamat állapotok",
+ "translate-dynagroup-recent-label": "Friss fordítások",
+ "translate-dynagroup-additions-label": "Legutóbb hozzáadva",
+ "translate-dynagroup-by": "{{GENDER:$1|$1}} fordítása",
+ "translate-dynagroup-byc": "{{GENDER:$1|$1}} fordítása ($2)",
+ "translate-gethelp": "Súgó",
+ "translate-msggroupselector-projects": "Üzenetcsoport",
+ "translate-msggroupselector-search-all": "Mind",
+ "translate-msggroupselector-search-recent": "Legutóbbi",
+ "translate-msggroupselector-view-subprojects": "$1 alcsoport",
+ "tux-languageselector": "Fordítás erre:",
+ "tux-tab-all": "Összes",
+ "tux-tab-untranslated": "Lefordítatlan",
+ "tux-tab-outdated": "Elavult",
+ "tux-tab-translated": "Lefordítva",
+ "tux-tab-unproofread": "Nincs átnézve",
+ "tux-edit": "Szerkesztés",
+ "tux-status-optional": "Opcionális",
+ "tux-status-fuzzy": "Elavult",
+ "tux-status-proofread": "Ellenőrizve",
+ "tux-status-translated": "Lefordítva",
+ "tux-status-saving": "Mentés...",
+ "tux-status-unsaved": "Nincs mentve",
+ "tux-editor-placeholder": "A te fordításod",
+ "tux-editor-paste-original-button-label": "Forrásszöveg beillesztése",
+ "tux-editor-discard-changes-button-label": "Változtatások elvetése",
+ "tux-editor-save-button-label": "Fordítás elmentése",
+ "tux-editor-skip-button-label": "Továbblépés a következőre",
+ "tux-editor-cancel-button-label": "Mégse",
+ "tux-editor-confirm-button-label": "Fordítás megerősítése",
+ "tux-editor-shortcut-info": "Nyomd meg a „$1” billentyűkombinációt a mentéshez, a „$2”-t a továbblépéshez vagy az „$3”-ot további gyorsbillentyűk megjelenítéséhez.",
+ "tux-editor-edit-desc": "Dokumentáció szerkesztése",
+ "tux-editor-add-desc": "Dokumentáció hozzáadása",
+ "tux-editor-suggestions-title": "Javaslatok",
+ "tux-editor-in-other-languages": "Más nyelveken",
+ "tux-editor-need-more-help": "További segítségre van szükséged?",
+ "tux-editor-tm-match": "$1%-os egyezés",
+ "tux-warnings-more": "$1 további",
+ "tux-warnings-hide": "elrejtés",
+ "tux-editor-save-failed": "A fordítás elmentése sikertelen: $1",
+ "tux-editor-n-uses": "$1 használat",
+ "tux-editor-message-desc-more": "Több",
+ "tux-editor-message-desc-less": "Kevesebb",
+ "tux-editor-clear-translated": "Lefordítottak elrejtése",
+ "tux-editor-proofreading-mode": "Átnézés",
+ "tux-editor-translate-mode": "Lista",
+ "tux-editor-proofreading-hide-own-translations": "Saját fordítások elrejtése",
+ "tux-editor-proofreading-show-own-translations": "Saját fordítások megjelenítése",
+ "tux-proofread-action-tooltip": "Megjelölés átnézettként",
+ "tux-proofread-edit-label": "Szerkesztés",
+ "tux-editor-page-mode": "Lap",
+ "tux-editor-outdated-warning": "A fordítást lehet, hogy frissíteni kell.",
+ "tux-editor-outdated-warning-diff-link": "Változtatások megjelenítése",
+ "tux-editor-doc-editor-placeholder": "Üzenetdokumentáció",
+ "tux-editor-doc-editor-save": "Dokumentáció mentése",
+ "tux-editor-doc-editor-cancel": "Mégse",
+ "tux-messagetable-more-messages": "$1 további üzenet",
+ "tux-messagetable-loading-messages": "{{PLURAL:$1|Üzenet|Üzenetek}} betöltése…",
+ "tux-message-filter-placeholder": "Lista szűrése",
+ "tux-message-filter-result": "$1 találat van a(z) „$2” kifejezésre",
+ "tux-message-filter-advanced-button": "Speciális keresés",
+ "tux-message-filter-optional-messages-label": "Opcionális üzenetek",
+ "tux-proofread-translated-by-self": "Te fordítottad",
+ "tux-empty-list-all": "Ez az üzenetcsoport üres",
+ "tux-empty-list-all-guide": "Válassz egy másik üzenetcsoportot a fordításhoz",
+ "tux-translate-page-no-such-group": "<strong>A megadott üzenetcsoport nem létezik.</strong> Válassz egy másik üzenetcsoportot.",
+ "tux-empty-list-translated": "Nincs lefordított üzenet",
+ "tux-empty-list-translated-guide": "Segíthetsz a fordításban",
+ "tux-empty-list-translated-action": "Fordítás",
+ "tux-empty-no-messages-to-display": "Nincs megjeleníthető üzenet.",
+ "tux-empty-there-are-optional": "Vannak opcionális üzenetek, amik nem jelennek meg a listában",
+ "tux-empty-show-optional-messages": "Opcionális üzenetek megjelenítése",
+ "tux-empty-no-outdated-messages": "Nincs elavult üzenet",
+ "tux-empty-nothing-to-proofread": "Nincs átnézendő üzenet",
+ "tux-empty-you-can-help-providing": "Segíthetsz új fordításokkal",
+ "tux-empty-nothing-new-to-proofread": "Nincs új átnézendő üzenet",
+ "tux-empty-you-can-review-already-proofread": "Átnézhetsz mások által már átnézett üzeneteket.",
+ "tux-empty-list-other": "Nincs lefordítandó üzenet",
+ "tux-empty-list-other-guide": "Segíthetsz fordítások átnézésével",
+ "tux-empty-list-other-action": "Fordítások átnézése",
+ "tux-empty-list-other-link": "Összes üzenet megjelenítése",
+ "tux-editor-close-tooltip": "Bezárás",
+ "tux-editor-expand-tooltip": "Szélesebb felület",
+ "tux-editor-collapse-tooltip": "Összecsukás",
+ "tux-editor-message-tools-history": "Laptörténet",
+ "tux-editor-message-tools-delete": "Törlés",
+ "tux-editor-message-tools-translations": "Összes fordítás",
+ "tux-editor-loading": "Betöltés…",
+ "translate-search-more-languages-info": "$1 további nyelv",
+ "translate-statsbar-tooltip": "$1% lefordítva, $2% átnézve",
+ "translate-statsbar-tooltip-with-fuzzy": "$1% lefordítva, $2% átnézve, $3% elavult",
+ "translate-search-more-groups-info": "$1 további csoport",
+ "translate-ulsdep-title": "Konfigurációs hiba",
+ "translate-ulsdep-body": "A fordítás kiterjesztés a [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:UniversalLanguageSelector Universal Language Selector kiterjesztésen] alapszik."
+}
diff --git a/MLEB/Translate/i18n/core/hy.json b/MLEB/Translate/i18n/core/hy.json
new file mode 100644
index 00000000..fdf7f278
--- /dev/null
+++ b/MLEB/Translate/i18n/core/hy.json
@@ -0,0 +1,15 @@
+{
+ "@metadata": {
+ "authors": [
+ "Chaojoker",
+ "Vadgt"
+ ]
+ },
+ "translate": "Թագմանություն",
+ "translate-taction-translate": "Թագմանություն",
+ "translate-taction-proofread": "Սրբագրել",
+ "translate-edit-translation": "Թագմանություն",
+ "translate-magic-module": "Մոդուլ:",
+ "translate-sidebar-alltrans": "Այլ լեզուներով",
+ "translate-manage-import-new": "Նոր Հաղորդագրություն $1"
+}
diff --git a/MLEB/Translate/i18n/core/ia.json b/MLEB/Translate/i18n/core/ia.json
new file mode 100644
index 00000000..0d770b39
--- /dev/null
+++ b/MLEB/Translate/i18n/core/ia.json
@@ -0,0 +1,383 @@
+{
+ "@metadata": {
+ "authors": [
+ "McDutchie"
+ ]
+ },
+ "translate": "Traducer",
+ "translate-desc": "[[Special:Translate|Pagina special]] pro traducer MediaWiki e ultra",
+ "translate-taskui-view": "Monstrar tote le messages",
+ "translate-taskui-untranslated": "Monstrar messages non traducite",
+ "translate-taskui-optional": "Monstrar messages optional",
+ "translate-taskui-acceptqueue": "Solmente messages que io pote marcar como revidite",
+ "translate-taskui-reviewall": "Revider tote le traductiones",
+ "translate-taskui-export-to-file": "Exportar in formato native",
+ "translate-taskui-export-as-po": "Exportar pro traduction foras de linea",
+ "translate-taction-translate": "Traducer",
+ "translate-taction-proofread": "Revider",
+ "translate-taction-lstats": "Statisticas per lingua",
+ "translate-taction-mstats": "Statisticas per gruppo de messages",
+ "translate-taction-export": "Exportar",
+ "translate-taction-disabled": "Iste action es disactivate in iste wiki.",
+ "translate-page-no-such-language": "Le lingua specificate es invalide.",
+ "translate-page-no-such-group": "Le gruppo specificate es invalide.",
+ "translate-page-disabled": "Le traductiones in iste lingua in iste gruppo ha essite disactivate. Motivo:\n\n<em>$1</em>",
+ "translate-language-disabled": "Le traduction in iste lingua es disactivate.",
+ "translate-page-settings-legend": "Optiones",
+ "translate-page-group": "Gruppo",
+ "translate-page-language": "Lingua",
+ "translate-page-limit": "Limite",
+ "translate-page-limit-option": "$1 {{PLURAL:$1|message|messages}} per pagina",
+ "translate-submit": "Obtener",
+ "translate-page-navigation-legend": "Navigation",
+ "translate-page-showing": "Presentation del messages $1 a $2 ex $3.",
+ "translate-page-showing-all": "Presentation de $1 {{PLURAL:$1|message|messages}}.",
+ "translate-page-showing-none": "Nulle message a presentar.",
+ "translate-next": "Pagina sequente",
+ "translate-prev": "Pagina precedente",
+ "translate-page-description-legend": "Information super le gruppo",
+ "translate-page-description-hasoptional": "Iste gruppo de messages contine messages optional.\nLe messages optional debe solmente esser traducite si le lingua ha special exigentias,\ncomo non usar spatios o le translitteration de nomines proprie. $1",
+ "translate-page-description-hasoptional-open": "Monstrar messages optional.",
+ "translate-page-edit": "modificar",
+ "translate-ext-url": "<hr />Sito web: $1",
+ "translate-optional": "(optional)",
+ "translate-ignored": "(ignorate)",
+ "translate-edit-title": "Modificar \"$1\"",
+ "translate-edit-definition": "Definition del message",
+ "translate-edit-translation": "Traduction",
+ "translate-edit-contribute": "contribuer",
+ "translate-edit-no-information": "<em>Iste message non ha documentation.\nSi tu sape ubi o como iste message es usate, tu pote adjutar le altere traductores per adder documentation a iste message.</em>",
+ "translate-edit-information": "Information super le message ($1)",
+ "translate-edit-in-other-languages": "Iste message in altere linguas",
+ "translate-edit-committed": "Traduction actual in software",
+ "translate-edit-warnings": "Advertimentos super traductiones incomplete",
+ "translate-edit-tmsugs": "Suggestiones ab le memoria de traductiones",
+ "translate-edit-tmmatch-source": "Texto fonte pro traduction: $1",
+ "translate-edit-tmmatch": "$1% de correspondentia",
+ "translate-use-suggestion": "Reimplaciar le traduction actual per iste suggestion.",
+ "translate-edit-nopermission": "Tu debe obtener derectos de traduction pro poter traducer messages.",
+ "translate-edit-askpermission": "Obtener autorisation",
+ "translate-magic-pagename": "Traduction extendite de MediaWiki",
+ "translate-magic-help": "Tu pote traducer le aliases de paginas special, le parolas magic e le nomines de spatios de nomines.\n\nLe aliases de paginas special e le parolas magic pote haber plure traductiones.\nLe traductiones es separate per un comma (,).\nLe spatios de nomines pote haber solmente un traduction.\n\nLe traduction del spatio de nomines pro le discussion del projecto, <code>$1 talk</code>, pote esser complexe. Le codice <code>$1</code> es reimplaciate per le nomine del sito (per exemplo <code>{{ns:project_talk}}</code>).\nSi non es possibile in tu lingua formar un expression valide sin cambiar le nomine del sito, per favor contacta nos in [[Support]].\n\nTu debe esser traductor pro poter salveguardar le modificationes.\nLe modificationes non es salveguardate usque tu clicca super le button Salveguardar hic infra.",
+ "translate-magic-module": "Modulo:",
+ "translate-magic-submit": "Obtener",
+ "translate-magic-cm-export": "Exportar",
+ "translate-magic-nothing-to-export": "Il ha nihil a exportar.",
+ "translate-magic-cm-to-be": "Futur",
+ "translate-magic-cm-current": "Actual",
+ "translate-magic-cm-original": "Original",
+ "translate-magic-cm-comment": "Commento:",
+ "translate-magic-cm-save": "Salveguardar",
+ "translate-magic-cm-updatedusing": "Actualisate con [[Special:AdvancedTranslate|{{int:Translate-magic-pagename}}]]",
+ "translate-magic-cm-savefailed": "Non poteva salveguardar",
+ "translate-magic-special": "Aliases de paginas special",
+ "translate-magic-words": "Parolas magic",
+ "translate-magic-namespace": "Nomines de spatios de nomines",
+ "translate-magic-notsaved": "Tu modification non ha essite salveguardate!",
+ "translate-magic-errors": "Corrige per favor le sequente {{PLURAL:$1|error|errores}} in le traductiones:",
+ "translate-magic-saved": "Le modificationes ha essite salveguardate con successo.",
+ "translate-checks-parameters": "Le sequente {{PLURAL:$2|parametro|parametros}} non es usate:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-parameters-unknown": "Le sequente {{PLURAL:$2|parametro|parametros}} es incognite:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-balance": "Il ha un numero impar de {{PLURAL:$2|parentheses|parentheses}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links": "Le sequente {{PLURAL:$2|ligamine|ligamines}} es problematic:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links-missing": "Le sequente {{PLURAL:$2|ligamine|$2 ligamines}} es mancante:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-xhtml": "Per favor corrige le sequente {{PLURAL:$2|etiquetta|etiquettas}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-plural": "Le definition usa <nowiki>{{PLURAL:}}</nowiki> sed non le traduction.",
+ "translate-checks-plural-forms": "Pro <nowiki>{{PLURAL:}}</nowiki> es specificate {{PLURAL:$1|un forma|$1 formas}} ma solmente {{PLURAL:$2|un forma|$2 formas}} es supportate (excludente le formas 0= e 1=).",
+ "translate-checks-plural-dupe": "<nowiki>{{PLURAL:}}</nowiki> ha formas duplicate al fin. Per exemplo, <nowiki>{{PLURAL:$1|cosalia|cosalia}}</nowiki> debe esser scribite como <nowiki>{{PLURAL:$1|cosalia}}</nowiki>.",
+ "translate-checks-pagename": "Spatio de nomines cambiate ab le definition",
+ "translate-checks-format": "Iste traduction non seque le definition o ha un syntaxe invalide: $1",
+ "translate-checks-escape": "Le sequente escappamentos pote esser accidental: <strong>$1</strong>",
+ "translate-checks-parametersnotequal": "Le numero de parametros es {{PLURAL:$1|$1}}; debe esser {{PLURAL:$2|$2}}.",
+ "translate-checks-malformed": "<nowiki>$1</nowiki> es mal formate.",
+ "translate-checks-fudforum-syntax": "Usar <nowiki>$1</nowiki> in loco de <nowiki>$2</nowiki> in iste projecto.",
+ "translate-pref-nonewsletter": "Non inviar me bulletines in e-mail",
+ "translate-pref-editassistlang": "Linguas assistente:",
+ "prefs-translate": "Optiones de traduction",
+ "translate-pref-editassistlang-help": "Lista de codices de linguas separate per commas.\nLe traductiones de un message in iste linguas es monstrate quando tu traduce.\nLe lista predefinite de linguas depende de tu lingua.",
+ "translate-pref-editassistlang-bad": "Codice de lingua invalide in le lista:\n<nowiki>$1</nowiki>.",
+ "right-translate": "Modificar con le interfacie de traduction",
+ "right-translate-manage": "Gerer gruppos de messages",
+ "action-translate-manage": "gerer gruppos de messages",
+ "right-translate-import": "Importar traductiones foras de linea",
+ "action-translate-import": "importar traductiones foras de linea",
+ "right-translate-messagereview": "Revider traductiones",
+ "right-translate-groupreview": "Cambiar le stato del fluxo de travalio del gruppos de messages",
+ "translate-rc-translation-filter": "Filtrar traductiones:",
+ "translate-rc-translation-filter-no": "Facer nihil",
+ "translate-rc-translation-filter-only": "Monstrar solmente traductiones",
+ "translate-rc-translation-filter-filter": "Non monstrar traductiones",
+ "translate-rc-translation-filter-site": "Solmente modificationes in messages del sito",
+ "translationstats": "Statisticas de traduction",
+ "translate-stats-edits": "Modificationes",
+ "translate-stats-users": "Traductores",
+ "translate-stats-registrations": "Registrationes",
+ "translate-stats-reviews": "Revisiones",
+ "translate-stats-reviewers": "Revisores",
+ "translate-statsf-intro": "Tu pote generar statisticas simple con iste formulario. Tote le valores ha limites maxime e minime.",
+ "translate-statsf-options": "Optiones de graphico",
+ "translate-statsf-width": "Latitude in pixeles:",
+ "translate-statsf-height": "Altitude in pixeles:",
+ "translate-statsf-days": "Periodo in dies:",
+ "translate-statsf-start": "Data de initio:",
+ "translate-statsf-scale": "Granularitate:",
+ "translate-statsf-scale-months": "Menses",
+ "translate-statsf-scale-weeks": "Septimanas",
+ "translate-statsf-scale-days": "Dies",
+ "translate-statsf-scale-hours": "Horas",
+ "translate-statsf-count": "Mesura:",
+ "translate-statsf-count-edits": "Numero de modificationes",
+ "translate-statsf-count-users": "Traductores active",
+ "translate-statsf-count-registrations": "Nove usatores",
+ "translate-statsf-count-reviews": "Revisiones de traductiones",
+ "translate-statsf-count-reviewers": "Revisores",
+ "translate-statsf-language": "Lista de codices de lingua separate per commas:",
+ "translate-statsf-group": "Lista de codices de gruppo separate per commas:",
+ "translate-statsf-submit": "Previsualisar",
+ "translate-tag-category": "Paginas traducibile",
+ "translate-tag-page-desc": "Traduction del pagina wiki [[$2|$1]].",
+ "translate-sidebar-alltrans": "In altere linguas",
+ "translations": "Tote le traductiones",
+ "translations-summary": "Entra le nomine de un message infra pro monstrar tote le traductiones disponibile.",
+ "translate-translations-no-message": "\"$1\" non es un message traducibile",
+ "translate-translations-none": "Non existe alcun traduction pro \"$1\"",
+ "translate-translations-count": "{{PLURAL:$1|Un traduction|$1 traductiones}} trovate.",
+ "translate-translations-fieldset-title": "Message",
+ "translate-translations-messagename": "Nomine:",
+ "translate-translations-project": "Projecto:",
+ "translate-translations-including-no-param": "Per favor specifica un clave de message valide in le parametro subpagina",
+ "translate-translations-history-short": "h",
+ "languagestats": "Statisticas per lingua",
+ "languagestats-summary": "Iste pagina monstra le statisticas de traduction pro tote le gruppos de messages pro un lingua.",
+ "messagegroupstats-summary": "Iste pagina monstra statisticas pro le gruppos de messages.",
+ "languagestats-stats-for": "Statisticas de traduction pro $1 ($2).",
+ "languagestats-recenttranslations": "traductiones recente",
+ "translate-langstats-incomplete": "Alcunes del statisticas in iste pagina es incomplete. Per favor recarga pro obtener plus statisticas.",
+ "translate-langstats-expand": "displicar",
+ "translate-langstats-collapse": "plicar",
+ "translate-langstats-expandall": "displicar totes",
+ "translate-langstats-collapseall": "plicar totes",
+ "translate-language-code": "Codice de lingua",
+ "translate-language-code-field-name": "Codice de lingua:",
+ "translate-suppress-complete": "Celar le gruppos de messages completemente traducite",
+ "translate-ls-noempty": "Supprimer gruppos de messages completemente sin traduction",
+ "translate-language": "Lingua",
+ "translate-total": "Messages",
+ "translate-untranslated": "Non traducite",
+ "translate-percentage-complete": "Completion",
+ "translate-percentage-fuzzy": "Obsolete",
+ "translate-languagestats-overall": "Tote le gruppos de messages insimul",
+ "translate-ls-submit": "Monstrar statisticas",
+ "translate-ls-column-group": "Gruppo de messages",
+ "translate-mgs-pagename": "Statisticas de gruppo de messages",
+ "translate-mgs-fieldset": "Preferentias de presentation",
+ "translate-mgs-group": "Gruppo de messages:",
+ "translate-mgs-nocomplete": "Non monstrar linguas con traduction complete",
+ "translate-mgs-noempty": "Non monstrar linguas sin traductiones",
+ "translate-mgs-submit": "Monstrar statisticas",
+ "translate-mgs-column-language": "Lingua",
+ "translate-mgs-totals": "Tote le linguas insimul",
+ "translate-mgs-invalid-group": "Le gruppo specificate, \"$1\", non existe.",
+ "translate-mgs-nothing": "Nihil a monstrar pro le statisticas requestate.",
+ "supportedlanguages": "Linguas supportate",
+ "supportedlanguages-summary": "Iste pagina presenta un lista de tote le linguas supportate per {{SITENAME}}, con le nomines del traductores laborante a iste lingua.\nLe nomine de un traductor appare tanto plus grande, quanto plus modificationes le traductor ha contribuite.\nLe color de un tracto de sublineamento indica quante tempore ha passate post le ultime activitate de un traductor.",
+ "supportedlanguages-colorlegend": "Legenda pro le colores: Ultime traduction $1 dies retro.",
+ "supportedlanguages-translators": "{{PLURAL:$2|Traductor|Traductores}}: $1",
+ "supportedlanguages-recenttranslations": "traductiones recente",
+ "supportedlanguages-count": "$1 {{PLURAL:$1|lingua|linguas}} in total.",
+ "supportedlanguages-activity": "$1: $2 {{PLURAL:$2|modification|modificationes}} - ultime modification $3 {{PLURAL:$3|die|dies}} retro",
+ "translate-save": "Salveguardar ($1)",
+ "translate-jssti-add": "Adder al lista",
+ "managemessagegroups": "Gestion de gruppos de messages",
+ "translate-smg-notallowed": "Tu non ha le permission de exequer iste action.",
+ "translate-smg-nochanges": "Il non ha cambiamentos a processar.",
+ "translate-smg-submit": "Submitter cambiamentos pro processamento",
+ "translate-smg-submitted": "Le definitiones de messages ha essite actualisate. Le cambiamentos es processate in secunde plano.",
+ "translate-smg-more": "Il haberea altere cambiamentos a processar post submitter iste cambiamentos.",
+ "translate-smg-left": "Contento del message in le wiki",
+ "translate-smg-right": "Cambiamentos entrante",
+ "translate-manage-import-diff": "Message $1 | Actiones: $2",
+ "translate-manage-import-new": "Nove message $1",
+ "translate-manage-import-deleted": "Message $1 delite",
+ "translate-manage-action-import": "Importar",
+ "translate-manage-action-conflict": "Importar e marcar como \"fuzzy\"",
+ "translate-manage-action-ignore": "Ignorar",
+ "translate-manage-action-fuzzy": "Importar e marcar traductiones como \"fuzzy\"",
+ "translate-manage-nochanges": "Il non ha modificationes in le definitiones del messages pro iste gruppo.",
+ "translate-manage-nochanges-other": "Il non habeva modificationes pro iste lingua.\nUsa le ligamine infra pro retornar al vista detaliate del gruppo.",
+ "translate-manage-inconsistent": "Detegeva inconsistentia in le requesta.\nVerifica per favor si il ha modificationes e reproba.\nDetalios: $1.",
+ "translate-manage-toolong": "Le durata maximal de processamento de $1 {{PLURAL:$1|secunda|secundas}} ha essite excedite.\nResubmitte per favor le formulario pro continuar le processamento.",
+ "translate-manage-import-summary": "Un nove version es importate ex un fonte externe",
+ "translate-manage-conflict-summary": "Un nove version es importate ex un fonte externe.\nPer favor verifica.",
+ "translate-manage-fuzzy-summary": "Le definition del message ha cambiate",
+ "translate-manage-submit": "Executar",
+ "translate-manage-intro-other": "Ci infra es un lista de modificationes de traductiones in lingua $1.\nPer favor, revide le modificationes e selige un action a prender pro cata actualisation.\nSi tu opta pro ignorar le modificationes, iste action es solmente temporari.",
+ "translate-manage-import-ok": "Importate: $1",
+ "translate-manage-import-done": "Importation complete!",
+ "importtranslations": "Importar traductiones",
+ "translate-import-from-local": "Incargar un file local:",
+ "translate-import-load": "Cargar file",
+ "translate-import-err-dl-failed": "Impossibile obtener le file:\n$1",
+ "translate-import-err-ul-failed": "Le cargamento del file non ha succedite",
+ "translate-import-err-invalid-title": "Le nomine de file <nowiki>$1</nowiki> es invalide.",
+ "translate-import-err-no-such-file": "Le file <nowiki>$1</nowiki> non existe o non ha essite incargate localmente.",
+ "translate-import-err-stale-group": "Le gruppo de messages al qual iste file pertine non existe.",
+ "translate-import-err-no-headers": "Le file non es un file Gettext ben formate in le formato del extension Translate:\nNon pote determinar le gruppo e lingua ex le capites del file.",
+ "translate-import-err-warnings": "Le file non es ben formate.\nAssecura te que tu editor non remove le campos msgctxt.\nDetalios: $1",
+ "translate-js-summary": "Summario:",
+ "translate-js-save": "Salveguardar",
+ "translate-js-next": "Salveguardar e aperir le sequente",
+ "translate-js-nonext": "Isto esseva le ultime message in iste pagina.",
+ "translate-js-skip": "Saltar al sequente",
+ "translate-js-save-failed": "Salveguarda fallite. Per favor reporta iste error.",
+ "translate-js-history": "Historia del traduction",
+ "translate-js-support": "Poner question",
+ "translate-js-support-title": "Demandar adjuta si il non ha sufficiente informationes pro traducer iste message correctemente.",
+ "translate-js-support-unsaved-warning": "Tu ha traductiones non salveguardate.",
+ "translate-gs-pos": "Pos.",
+ "translate-gs-code": "Codice",
+ "translate-gs-continent": "Continente",
+ "translate-gs-speakers": "Parlantes",
+ "translate-gs-score": "Score",
+ "translate-gs-multiple": "Multiple",
+ "translate-gs-count": "Conto",
+ "translate-gs-total": "Total",
+ "translate-gs-avgscore": "Score medie",
+ "translate-documentation-language": "documentation de messages",
+ "translate-searchprofile": "Traductiones",
+ "translate-searchprofile-tooltip": "Cercar in tote le traductiones",
+ "translate-search-languagefilter": "Filtrar per lingua:",
+ "translate-search-nofilter": "Non filtrar",
+ "translate-messagereview-submit": "Marcar como revidite",
+ "translate-messagereview-progress": "Marca como revidite…",
+ "translate-messagereview-failure": "Error al marcar como revidite: $1",
+ "translate-messagereview-done": "Revidite",
+ "translate-messagereview-reviews": "Revidite per {{PLURAL:$1|un usator|$1 usatores}}",
+ "translate-messagereview-reviewswithyou": "Revidite per {{PLURAL:$1|un usator|$1 usatores}} includente te",
+ "api-error-invalidrevision": "Traduction non trovate",
+ "api-error-unknownmessage": "Message non trovate",
+ "api-error-fuzzymessage": "Le traduction es marcate como obsolete",
+ "api-error-owntranslation": "Tu non pote marcar tu proprie traductiones como revidite.",
+ "translate-messagereview-no-fuzzy": "Le traductiones obsolete (\"fuzzy\") non pote esser marcate como revidite.",
+ "translate-messagereview-no-own": "Tu non pote marcar tu proprie traductiones como revidite.",
+ "translate-messagereview-doit": "Marcar iste traduction como revidite.",
+ "log-name-translationreview": "Registro de revision de traductiones",
+ "log-description-translationreview": "Registro de tote le revisiones de traductiones e gruppos de messages.",
+ "logentry-translationreview-message": "$1 {{GENDER:$2|revideva}} le traduction $3",
+ "logentry-translationreview-group": "$1 {{GENDER:$2|cambiava}} le stato de $4 traductiones de $3 de $6 a $7",
+ "group-translate-sandboxed": "Traductores non approbate",
+ "group-translate-sandboxed-member": "{{GENDER:$1|traductor non approbate}}",
+ "right-translate-sandboxmanage": "Gerer usatores in cassa de sablo",
+ "action-translate-sandboxmanage": "gerer usatores in cassa de sablo",
+ "right-translate-sandboxaction": "Exequer actiones autorisate pro usatores in cassa de sablo",
+ "action-translate-sandboxaction": "exequer actiones autorisate pro usatores in cassa de sablo",
+ "translate-workflow-state-": "(non definite)",
+ "translate-workflowstatus": "Stato: $1",
+ "translate-workflow-set-do": "Activar",
+ "translate-workflow-set-doing": "Activation...",
+ "translate-workflow-set-done": "Activate!",
+ "translate-workflow-set-error-alreadyset": "Le stato requestate es identic al stato actual.",
+ "translate-workflow-autocreated-summary": "Creation automatic de pagina pro le stato de fluxo de labor $1",
+ "translate-stats-workflow": "Stato",
+ "translate-workflowgroup-label": "Statos de fluxo de labor",
+ "translate-workflowgroup-desc": "Iste gruppo de messages monstra le statos de fluxo de labor de traduction.\nLe statos es definite in le variabile de configuration $wgTranslateWorkflowStates.",
+ "translate-dynagroup-recent-label": "Traductiones recente",
+ "translate-dynagroup-recent-desc": "Iste gruppo de messages monstra tote le traductiones recente in iste lingua.\nEs utile principalmente pro le revision de traductiones.",
+ "translate-dynagroup-additions-label": "Additiones recente",
+ "translate-dynagroup-additions-desc": "Iste gruppo de messages monstra le messages nove e cambiate.",
+ "translate-dynagroup-by": "Traduction facite per {{GENDER:$1|$1}}",
+ "translate-dynagroup-byc": "Traduction facite per {{GENDER:$1|$1}} ($2)",
+ "translate-dynagroup-last": "Ultime modification per {{GENDER:$1|$1}}",
+ "translate-dynagroup-lastc": "Ultime modification per {{GENDER:$1|$1}} ($2)",
+ "translate-gethelp": "Adjuta",
+ "translate-msggroupselector-projects": "Gruppo de messages",
+ "translate-msggroupselector-search-placeholder": "Cercar gruppos",
+ "translate-msggroupselector-search-all": "Totes",
+ "translate-msggroupselector-search-recent": "Recentes",
+ "translate-msggroupselector-view-subprojects": "$1 {{PLURAL:$1|subgruppo|subgruppos}}",
+ "tux-languageselector": "Traducer in",
+ "tux-tab-all": "Toto",
+ "tux-tab-untranslated": "Non traducite",
+ "tux-tab-outdated": "Obsolete",
+ "tux-tab-translated": "Traducite",
+ "tux-tab-unproofread": "Non revidite",
+ "tux-edit": "Modificar",
+ "tux-status-optional": "Optional",
+ "tux-status-fuzzy": "Obsolete",
+ "tux-status-proofread": "Revidite",
+ "tux-status-translated": "Traducite",
+ "tux-status-saving": "Salveguarda…",
+ "tux-status-unsaved": "Non salveguardate",
+ "tux-editor-placeholder": "Tu traduction",
+ "tux-editor-paste-original-button-label": "Collar texto original",
+ "tux-editor-discard-changes-button-label": "Abandonar modificationes",
+ "tux-editor-save-button-label": "Salveguardar traduction",
+ "tux-editor-skip-button-label": "Saltar al sequente",
+ "tux-editor-cancel-button-label": "Cancellar",
+ "tux-editor-confirm-button-label": "Confirmar traduction",
+ "tux-editor-shortcut-info": "Preme \"$1\" pro salveguardar o \"$2\" pro saltar al sequente message o \"$3\" pro altere claves accelerator.",
+ "tux-editor-edit-desc": "Modificar documentation",
+ "tux-editor-add-desc": "Adder documentation",
+ "tux-editor-suggestions-title": "Suggestiones",
+ "tux-editor-in-other-languages": "In altere linguas",
+ "tux-editor-need-more-help": "Require adjuta?",
+ "tux-editor-ask-help": "Demandar plus information",
+ "tux-editor-tm-match": "$1% corresponde",
+ "tux-warnings-more": "$1 {{PLURAL:$1|altere|alteres}}",
+ "tux-warnings-hide": "celar",
+ "tux-editor-save-failed": "Error durante le salveguarda del traduction: $1",
+ "tux-editor-n-uses": "usate $1 {{PLURAL:$1|vice|vices}}",
+ "tux-editor-message-desc-more": "Vider plus",
+ "tux-editor-message-desc-less": "Vider minus",
+ "tux-editor-clear-translated": "Celar messages traducite",
+ "tux-editor-proofreading-mode": "Revider",
+ "tux-editor-translate-mode": "Lista",
+ "tux-editor-proofreading-hide-own-translations": "Celar traductiones tue",
+ "tux-editor-proofreading-show-own-translations": "Monstrar traductiones tue",
+ "tux-proofread-action-tooltip": "Marcar como revidite",
+ "tux-proofread-edit-label": "Modificar",
+ "tux-editor-page-mode": "Pagina",
+ "tux-editor-outdated-warning": "Iste traduction debe possibilemente esser actualisate.",
+ "tux-editor-outdated-warning-diff-link": "Monstrar differentias",
+ "tux-editor-doc-editor-placeholder": "Documentation del message",
+ "tux-editor-doc-editor-save": "Salveguardar documentation",
+ "tux-editor-doc-editor-cancel": "Cancellar",
+ "tux-messagetable-more-messages": "$1 altere {{PLURAL:$1|message|messages}}",
+ "tux-messagetable-loading-messages": "Carga $1 {{PLURAL:$1|message|messages}}...",
+ "tux-message-filter-placeholder": "Lista de filtros",
+ "tux-message-filter-result": "$1 {{PLURAL:$1|resultato|resultatos}} trovate pro \"$2\"",
+ "tux-message-filter-advanced-button": "Recerca avantiate",
+ "tux-message-filter-optional-messages-label": "Messages optional",
+ "tux-proofread-translated-by-self": "Traducite per te",
+ "tux-empty-list-all": "Iste gruppo de messages es vacue",
+ "tux-empty-list-all-guide": "Selige un altere gruppo de messages a traducer",
+ "tux-translate-page-no-such-group": "<strong>Le gruppo indicate non existe.</strong> Selige un altere gruppo de messages.",
+ "tux-empty-list-translated": "Nulle message traducite",
+ "tux-empty-list-translated-guide": "Tu pote adjutar a traducer",
+ "tux-empty-list-translated-action": "Traducer",
+ "tux-empty-no-messages-to-display": "Nulle message a monstrar.",
+ "tux-empty-there-are-optional": "Il ha messages optional non monstrate in le lista",
+ "tux-empty-show-optional-messages": "Monstrar messages optional",
+ "tux-empty-no-outdated-messages": "Nulle message obsolete",
+ "tux-empty-nothing-to-proofread": "Nihil a revider",
+ "tux-empty-you-can-help-providing": "Tu pote adjutar a fornir nove traductiones",
+ "tux-empty-nothing-new-to-proofread": "Nihil de nove a revider",
+ "tux-empty-you-can-review-already-proofread": "Tu pote revider traductiones jam revidite per alteres.",
+ "tux-empty-list-other": "Nihil a traducer",
+ "tux-empty-list-other-guide": "Tu pote adjutar a revider traductiones existente",
+ "tux-empty-list-other-action": "Revider traductiones",
+ "tux-empty-list-other-link": "Monstrar tote le messages",
+ "tux-editor-close-tooltip": "Clauder",
+ "tux-editor-expand-tooltip": "Displicar",
+ "tux-editor-collapse-tooltip": "Plicar",
+ "tux-editor-message-tools-history": "Historia",
+ "tux-editor-message-tools-delete": "Deler",
+ "tux-editor-message-tools-translations": "Tote le traductiones",
+ "tux-editor-loading": "Cargamento…",
+ "translate-search-more-languages-info": "$1 altere {{PLURAL:$1|lingua|linguas}}",
+ "translate-statsbar-tooltip": "$1% traducite, $2% revidite",
+ "translate-statsbar-tooltip-with-fuzzy": "$1% traducite, $2% revidite, $3% obsolete",
+ "translate-search-more-groups-info": "$1 altere {{PLURAL:$1|gruppo|gruppos}}",
+ "translate-ulsdep-title": "Error de configuration",
+ "translate-ulsdep-body": "Le extension Translate depende del [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:UniversalLanguageSelector extension Universal Language Selector]."
+}
diff --git a/MLEB/Translate/i18n/core/id.json b/MLEB/Translate/i18n/core/id.json
new file mode 100644
index 00000000..a3153756
--- /dev/null
+++ b/MLEB/Translate/i18n/core/id.json
@@ -0,0 +1,393 @@
+{
+ "@metadata": {
+ "authors": [
+ "Anakmalaysia",
+ "Bennylin",
+ "Farras",
+ "Ilham151096",
+ "Irwangatot",
+ "IvanLanin",
+ "Iwan Novirion",
+ "Kenrick95",
+ "Meursault2004",
+ "Naval Scene",
+ "Rex",
+ "William Surya Permana",
+ "පසිඳු කාවින්ද"
+ ]
+ },
+ "translate": "Terjemahkan",
+ "translate-desc": "[[Special:Translate|Halaman istimewa]] untuk menerjemahkan MediaWiki dan lain-lain",
+ "translate-taskui-view": "Tampilkan semua pesan",
+ "translate-taskui-untranslated": "Tampilkan pesan yang belum diterjemahkan",
+ "translate-taskui-optional": "Tampilkan pesan opsional",
+ "translate-taskui-acceptqueue": "Hanya pesan yang dapat saya tandai sebagai telah ditinjau",
+ "translate-taskui-reviewall": "Tinjau semua terjemahan",
+ "translate-taskui-export-to-file": "Ekspor dalam format asli",
+ "translate-taskui-export-as-po": "Ekspor untuk terjemahan luring",
+ "translate-taction-translate": "Terjemahkan",
+ "translate-taction-proofread": "Tinjau",
+ "translate-taction-lstats": "Statistik bahasa",
+ "translate-taction-mstats": "Statistik kelompok pesan",
+ "translate-taction-export": "Ekspor",
+ "translate-taction-disabled": "Tindakan ini dinonaktifkan di wiki ini.",
+ "translate-page-no-such-language": "Bahasa yang dipilih tidak sah.",
+ "translate-page-no-such-group": "Kelompok yang dipilih tidak sah.",
+ "translate-page-disabled": "Penerjemahan kelompok pesan ini ke bahasa ini telah dinonaktifkan.\nAlasan:\n\n<em>$1</em>",
+ "translate-language-disabled": "Penerjemahan ke bahasa ini telah dinonaktifkan.",
+ "translate-page-settings-legend": "Pengaturan",
+ "translate-page-group": "Kelompok",
+ "translate-page-language": "Bahasa",
+ "translate-page-limit": "Batasan",
+ "translate-page-limit-option": "$1 {{PLURAL:$1|pesan|pesan}} per halaman",
+ "translate-submit": "Ambil",
+ "translate-page-navigation-legend": "Navigasi",
+ "translate-page-showing": "Menampilkan pesan $1 hingga $2 dari $3.",
+ "translate-page-showing-all": "Menampilkan $1 {{PLURAL:$1|pesan|pesan}}.",
+ "translate-page-showing-none": "Tak ada pesan yang dapat ditampilkan.",
+ "translate-page-paging-links": "[ $1 ] [ $2 ]",
+ "translate-next": "Halaman selanjutnya",
+ "translate-prev": "Halaman sebelumnya",
+ "translate-page-description-legend": "Informasi mengenai kelompok",
+ "translate-page-description-hasoptional": "Kelompok pesan ini memuat pesan opsional.\nPesan opsional seharusnya hanya boleh diterjemahkan jika bahasa Anda memiliki keperluan khusus\nseperti tidak memakai spasi atau mengalihaksarakan nama umum. $1",
+ "translate-page-description-hasoptional-open": "Tampilkan pesan opsional.",
+ "translate-page-edit": "sunting",
+ "translate-ext-url": "<hr />Situs web: $1",
+ "translate-optional": "(opsional)",
+ "translate-ignored": "(diabaikan)",
+ "translate-edit-title": "Sunting \"$1\"",
+ "translate-edit-definition": "Definisi pesan",
+ "translate-edit-translation": "Terjemahan",
+ "translate-edit-contribute": "berkontribusi",
+ "translate-edit-no-information": "''Pesan ini tidak memiliki dokumentasi.''\n''Jika Anda tahu di mana dan bagaimana pesan ini digunakan, Anda dapat membantu penerjemah lain dengan menambahkan dokumentasi untuk pesan ini.''",
+ "translate-edit-information": "Informasi pesan ($1)",
+ "translate-edit-in-other-languages": "Pesan dalam bahasa lain",
+ "translate-edit-committed": "Terjemahan dalam perangkat lunak saat ini",
+ "translate-edit-warnings": "Peringatan mengenai terjemahan yang tak lengkap",
+ "translate-edit-tmsugs": "Saran dari memori terjemahan dan terjemahan mesin",
+ "translate-edit-tmmatch-source": "Teks sumber terjemahan: $1",
+ "translate-edit-tmmatch": "$1% sesuai",
+ "translate-use-suggestion": "Ganti terjemahan saat ini dengan saran ini.",
+ "translate-edit-nopermission": "Anda memerlukan izin untuk menerjemahkan pesan.",
+ "translate-edit-askpermission": "Minta izin",
+ "translate-magic-pagename": "Terjemahan MediaWiki yang Diperluas",
+ "translate-magic-help": "Anda dapat menerjemahkan alias untuk halaman istimewa, kata magis, dan ruang nama.\n\nAlias untuk halaman istimewa dan kata magis dapat memiliki beberapa terjemahan.\nSetiap terjemahan dipisahkan dengan tanda koma (,).\nRuang nama hanya boleh memiliki satu terjemahan.\n\nMenerjemahkan ruang nama pembicaraan proyek <code>pembicaraan $1</code> mungkin cukup rumit.\n<code>$1</code> akan digantikan dengan nama situs proyek (misalnya <code>{{ns:project_talk}}</code>).\nJika bahasa Anda tidak memungkinkan untuk membentuk suatu frase yang sah tanpa mengganti nama situs, silakan beri tahu kami di [[Support|halaman Dukungan]].\n\nAnda harus menjadi penerjemah untuk menyimpan perubahan.\nPerubahan tidak akan disimpan hingga Anda mengeklik tombol simpan di bawah.",
+ "translate-magic-module": "Modul:",
+ "translate-magic-submit": "Ambil",
+ "translate-magic-cm-export": "Ekspor",
+ "translate-magic-nothing-to-export": "Tidak ada yang dapat diekspor.",
+ "translate-magic-cm-to-be": "Ubah menjadi",
+ "translate-magic-cm-current": "Saat ini",
+ "translate-magic-cm-original": "Asli",
+ "translate-magic-cm-comment": "Komentar:",
+ "translate-magic-cm-save": "Simpan",
+ "translate-magic-cm-updatedusing": "Diperbaharui menggunakan [[Special:AdvancedTranslate|{{int:Translate-magic-pagename}}]]",
+ "translate-magic-cm-savefailed": "Penyimpanan gagal",
+ "translate-magic-special": "Alias halaman istimewa",
+ "translate-magic-words": "Kata magis",
+ "translate-magic-namespace": "Nama ruang nama",
+ "translate-magic-notsaved": "Suntingan Anda tidak tersimpan!",
+ "translate-magic-errors": "Mohon perbaiki {{PLURAL:$1|kesalahan|kesalahan}} berikut pada terjemahan:",
+ "translate-magic-saved": "Perubahan Anda berhasil tersimpan",
+ "translate-checks-parameters": "{{PLURAL:$2|Parameter|Parameter}} berikut ini tidak digunakan:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-parameters-unknown": "{{PLURAL:$2|Parameter|Parameter}} berikut ini tidak dikenali:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-balance": "Terdapat {{PLURAL:$2|tanda kurung|tanda kurung}} dengan jumlah yang tidak sama:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links": "{{PLURAL:$2|Pranala|Pranala}} berikut ini bermasalah:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links-missing": "{{PLURAL:$2|Pranala|Pranala}} berikut ini hilang:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-xhtml": "Harap ganti {{PLURAL:$2|tag|tag}} berikut ini dengan tag yang tepat:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-plural": "Definisi menggunakan <nowiki>{{PLURAL:}}</nowiki> namun terjemahannya tidak menggunakannya.",
+ "translate-checks-plural-forms": "<nowiki>{{PLURAL:}}</nowiki> menghasilkan {{PLURAL:$1|sebuah wujud|$1 buah wujud}} namun {{PLURAL:$2|hanya ada sebuah wujud yang|$2 buah wujud lainnya juga}} didukung (kecuali wujud 0= dan 1=).",
+ "translate-checks-plural-dupe": "<nowiki>{{PLURAL:}}</nowiki> memiliki wujud yang sama di akhir. <nowiki>{{PLURAL:$1|orang|orang}}</nowiki> seharusnya ditulis menjadi <nowiki>{{PLURAL:$1|orang}}</nowiki>.",
+ "translate-checks-pagename": "Ruang nama berubah dari definisinya",
+ "translate-checks-format": "Terjemahan ini tidak mengikuti definisi atau memiliki sintaks yang tidak sah: $1",
+ "translate-checks-escape": "''Escape'' berikut mungkin tidak disengaja: <strong>$1</strong>",
+ "translate-checks-parametersnotequal": "Terdapat {{PLURAL:$1|$1}} parameter; seharusnya ada {{PLURAL:$2|$2}}.",
+ "translate-checks-malformed": "<nowiki>$1</nowiki> cacat.",
+ "translate-checks-fudforum-syntax": "Gunakan <nowiki>$1</nowiki> bukan <nowiki>$2</nowiki> pada proyek ini.",
+ "translate-pref-nonewsletter": "Jangan kirimi saya surel berita",
+ "translate-pref-editassistlang": "Bahasa penunjang:",
+ "prefs-translate": "Opsi terjemahan",
+ "translate-pref-editassistlang-help": "Daftar kode bahasa dipisahkan koma.\nTerjemahan pesan dalam bahasa ini ditampilkan saat Anda menerjemahkan.\nDaftar bahasa baku tergantung pada bahasa Anda.",
+ "translate-pref-editassistlang-bad": "Kode bahasa tidak sah pada daftar:\n<nowiki>$1</nowiki>.",
+ "right-translate": "Menyunting menggunakan antarmuka penerjemahan",
+ "right-translate-manage": "Mengelola kelompok pesan",
+ "action-translate-manage": "mengelola kelompok pesan",
+ "right-translate-import": "Mengimpor terjemahan luring",
+ "action-translate-import": "mengimpor terjemahan luring",
+ "right-translate-messagereview": "Meninjau terjemahan",
+ "right-translate-groupreview": "Mengubah keadaan alur kerja kelompok pesan",
+ "translate-rc-translation-filter": "Saring terjemahan:",
+ "translate-rc-translation-filter-no": "Jangan lakukan apa pun",
+ "translate-rc-translation-filter-only": "Tampilkan hanya terjemahan",
+ "translate-rc-translation-filter-filter": "Tampilkan selain terjemahan",
+ "translate-rc-translation-filter-site": "Hanya perubahan ke pesan situs",
+ "translationstats": "Statistik penerjemahan",
+ "translate-stats-edits": "Sunting",
+ "translate-stats-users": "Penerjemah",
+ "translate-stats-registrations": "Pendaftaran",
+ "translate-stats-reviews": "Tinjauan",
+ "translate-stats-reviewers": "Peninjau",
+ "translate-statsf-intro": "Anda dapat menciptakan statistik sederhana menggunakan formulir ini. Semua nilai memiliki batas atas dan bawah.",
+ "translate-statsf-options": "Opsi grafik",
+ "translate-statsf-width": "Lebar dalam piksel:",
+ "translate-statsf-height": "Tinggi dalam piksel:",
+ "translate-statsf-days": "Periode waktu dalam hari:",
+ "translate-statsf-start": "Tanggal mulai:",
+ "translate-statsf-scale": "Granularitas:",
+ "translate-statsf-scale-months": "Bulan",
+ "translate-statsf-scale-weeks": "Pekan",
+ "translate-statsf-scale-days": "Hari",
+ "translate-statsf-scale-hours": "Jam",
+ "translate-statsf-count": "Ukuran:",
+ "translate-statsf-count-edits": "Jumlah suntingan",
+ "translate-statsf-count-users": "Penerjemah aktif",
+ "translate-statsf-count-registrations": "Pengguna baru",
+ "translate-statsf-count-reviews": "Tinjauan terjemahan",
+ "translate-statsf-count-reviewers": "Peninjau",
+ "translate-statsf-language": "Daftar kode bahasa dipisahkan koma:",
+ "translate-statsf-group": "Daftar kode kelompok dipisahkan koma.",
+ "translate-statsf-submit": "Pratayang",
+ "translate-tag-category": "Halaman yang dapat diterjemahkan",
+ "translate-tag-page-desc": "Terjemahan atas halaman wiki [[$2|$1]].",
+ "translate-sidebar-alltrans": "Dalam bahasa lain",
+ "translations": "Semua terjemahan",
+ "translations-summary": "Masukkan sebuah nama pesan di bawah ini untuk menampilkan semua terjemahan yang tersedia.",
+ "translate-translations-no-message": "\"$1\" bukan pesan yang dapat diterjemahkan",
+ "translate-translations-none": "Tidak ada terjemahan untuk \"$1\"",
+ "translate-translations-count": "Ditemukan {{PLURAL:$1|satu terjemahan|$1 terjemahan}}.",
+ "translate-translations-fieldset-title": "Pesan",
+ "translate-translations-messagename": "Nama:",
+ "translate-translations-project": "Proyek:",
+ "translate-translations-including-no-param": "Harap gunakan kunci pesan yang sah dalam parameter subhalaman",
+ "translate-translations-history-short": "r",
+ "languagestats": "Statistik bahasa",
+ "languagestats-summary": "Halaman ini menampilkan statistik terjemahan untuk semua kelompok pesan dalam suatu bahasa tertentu.",
+ "languagestats-stats-for": "Statistik terjemahan untuk $1 ($2).",
+ "languagestats-recenttranslations": "terjemahan terkini",
+ "translate-langstats-incomplete": "Beberapa statistik pada halaman ini belum lengkap. Silakan muat ulang untuk mendapatkan lebih banyak statistik.",
+ "translate-langstats-expand": "luaskan",
+ "translate-langstats-collapse": "ciutkan",
+ "translate-langstats-expandall": "luaskan semua",
+ "translate-langstats-collapseall": "ciutkan semua",
+ "translate-language-code": "Kode bahasa",
+ "translate-language-code-field-name": "Kode bahasa:",
+ "translate-suppress-complete": "Sembunyikan grup yang telah diterjemahkan sepenuhnya",
+ "translate-ls-noempty": "Sembunyikan grup yang belum diterjemahkan sepenuhnya",
+ "translate-language": "Bahasa",
+ "translate-total": "Pesan",
+ "translate-untranslated": "Belum diterjemahkan",
+ "translate-percentage-complete": "Selesai",
+ "translate-percentage-fuzzy": "Usang",
+ "translate-languagestats-overall": "Semua kelompok pesan sekaligus",
+ "translate-ls-submit": "Tampilkan statistik",
+ "translate-ls-column-group": "Kelompok pesan",
+ "translate-mgs-pagename": "Statistik kelompok pesan",
+ "translate-mgs-fieldset": "Tampilkan preferensi",
+ "translate-mgs-group": "Kelompok pesan:",
+ "translate-mgs-nocomplete": "Jangan tampilkan bahasa yang memiliki terjemahan lengkap",
+ "translate-mgs-noempty": "Jangan tampilkan bahasa yang tidak memiliki terjemahan",
+ "translate-mgs-submit": "Tampilkan statistik",
+ "translate-mgs-column-language": "Bahasa",
+ "translate-mgs-totals": "Semua bahasa sekaligus",
+ "translate-mgs-invalid-group": "Kelompok $1 yang dimaksud tidak ditemukan.",
+ "translate-mgs-nothing": "Tidak ada statistik yang dapat ditampilkan.",
+ "supportedlanguages": "Bahasa yang didukung",
+ "supportedlanguages-summary": "Halaman ini menampilkan daftar semua bahasa yang didukung oleh {{SITENAME}}, beserta nama penerjemah yang bekerja pada bahasa tersebut. Nama penerjemah nampak lebih besar jika telah mereka telah menyumbangkan banyak suntingan. Warna garis bawah menandakan seberapa sering penerjemah tersebut aktif di sini.",
+ "supportedlanguages-colorlegend": "Legenda warna: Terjemahan terakhir $1 hari yang lalu.",
+ "supportedlanguages-portallink": "[$1] $2 - $3",
+ "supportedlanguages-portallink-nocldr": "[$1] $2",
+ "supportedlanguages-translators": "{{PLURAL:$2|Penerjemah|Penerjemah}}: $1",
+ "supportedlanguages-recenttranslations": "terjemahan terkini",
+ "supportedlanguages-count": "Total: $1 {{PLURAL:$1|bahasa|bahasa}}.",
+ "supportedlanguages-activity": "$1: $2 {{PLURAL:$2|suntingan|suntingan}} - suntingan terakhir $3 {{PLURAL:$3|hari|hari}} yang lalu",
+ "translate-save": "Simpan ($1)",
+ "translate-jssti-add": "Tambah ke daftar",
+ "managemessagegroups": "Pengelolaan kelompok pesan",
+ "translate-smg-notallowed": "Anda tidak diperbolehkan untuk melakukan tindakan ini.",
+ "translate-smg-nochanges": "Tidak ada perubahan yang dapat diproses.",
+ "translate-smg-submit": "Kirim perubahan untuk diproses",
+ "translate-smg-submitted": "Definisi pesan telah diperbarui. Perubahan sedang diproses di latar.",
+ "translate-smg-left": "Konten pesan di wiki",
+ "translate-smg-right": "Peubahan baru",
+ "translate-manage-import-diff": "Pesan $1 | Tindakan: $2",
+ "translate-manage-import-new": "Pesan baru $1",
+ "translate-manage-import-deleted": "Pesan terhapus $1",
+ "translate-manage-action-import": "Impor",
+ "translate-manage-action-conflict": "Impor dan takjelas",
+ "translate-manage-action-ignore": "Abaikan",
+ "translate-manage-action-fuzzy": "Terjemahan impor dan takjelas",
+ "translate-manage-nochanges": "Tidak ada perubahan pada definisi pesan untuk kelompok ini.",
+ "translate-manage-nochanges-other": "Tidak ada perubahan pada bahasa ini.\nGunakan pranala berikut untuk kembali ke tampilan rincian kelompok.",
+ "translate-manage-inconsistent": "Ketidakkonsistenan terdeteksi pada permintaan.\nPeriksa ulang perubahan yang dilakukan dan cobalah lagi.\nDetail: $1.",
+ "translate-manage-toolong": "Waktu proses maksimum {{PLURAL:$1||}}$1 detik telah terlampaui.\nMohon kirimkan kembali formulir untuk melanjutkan proses.",
+ "translate-manage-import-summary": "Impor versi baru dari sumber luar",
+ "translate-manage-conflict-summary": "Mengimpor versi baru dari sumber luar.\nSilakan diperiksa.",
+ "translate-manage-fuzzy-summary": "Definisi pesan telah berubah",
+ "translate-manage-submit": "Jalankan",
+ "translate-manage-intro-other": "Di bawah ini adalah daftar perubahan terjemahan dalam bahasa $1.\nSilakan tinjau perubahan-perubahan ini dan pilihlah tindakan yang ingin Anda lakukan untuk setiap perubahan.\nJika Anda memilih untuk tidak menghiraukan perubahan, tindakan ini hanya bersifat sementara.",
+ "translate-manage-import-ok": "Impor versi baru dari halaman $1.",
+ "translate-manage-import-done": "Semua selesai!",
+ "importtranslations": "Impor terjemahan",
+ "translate-import-from-local": "Unggah berkas lokal:",
+ "translate-import-load": "Muatkan berkas",
+ "translate-import-err-dl-failed": "Tidak dapat mengambil berkas:\n$1",
+ "translate-import-err-ul-failed": "Pemuatan berkas tidak berhasil",
+ "translate-import-err-invalid-title": "Nama berkas <nowiki>$1</nowiki> yang diberikan tidak sah.",
+ "translate-import-err-no-such-file": "Berkas <nowiki>$1</nowiki> tidak ada atau belum di unggah kelokal.",
+ "translate-import-err-stale-group": "Kelompok pesan berkas ini tidak ditemukan.",
+ "translate-import-err-no-headers": "Berkas bukan merupakan berkas Gettext dalam format pengaya Translate yang diciptakan dengan benar:\nTidak dapat menentukan grup dan bahasa dari kepala berkas.",
+ "translate-import-err-warnings": "Berkas ini tidak diciptakan dengan benar.\nPastikan penyunting Anda tidak membuang ''field'' msgctxt.\nDetail: $1",
+ "translate-js-summary": "Ringkasan:",
+ "translate-js-save": "Simpan",
+ "translate-js-next": "Simpan dan buka selanjutnya",
+ "translate-js-nonext": "Ini adalah pesan terakhir di halaman ini.",
+ "translate-js-skip": "Lewati ke selanjutnya",
+ "translate-js-save-failed": "Gagal menyimpan. Silakan laporkan kesalahan ini.",
+ "translate-js-history": "Terjemahan terdahulu",
+ "translate-js-support": "Ajukan pertanyaan",
+ "translate-js-support-title": "Mintalah bantuan jika informasi yang ada tidak cukup untuk menerjemahkan pesan ini dengan benar.",
+ "translate-js-support-unsaved-warning": "Anda memiliki terjemahan yang belum disimpan.",
+ "translate-gs-pos": "Tingkat.",
+ "translate-gs-code": "Kode",
+ "translate-gs-continent": "Benua",
+ "translate-gs-speakers": "Penutur",
+ "translate-gs-score": "Nilai",
+ "translate-gs-multiple": "Beragam",
+ "translate-gs-count": "Jumlah",
+ "translate-gs-total": "Total",
+ "translate-gs-avgscore": "Nilai rata-rata",
+ "translate-documentation-language": "Dokumentasi pesan",
+ "translate-searchprofile": "Terjemahan",
+ "translate-searchprofile-tooltip": "Cari dari semua terjemahan",
+ "translate-search-languagefilter": "Saring menurut bahasa:",
+ "translate-search-nofilter": "Tanpa penyaringan",
+ "translate-messagereview-submit": "Tandai sudah ditinjau",
+ "translate-messagereview-progress": "Menandai sudah ditinjau...",
+ "translate-messagereview-failure": "Gagal menandai sudah tertinjau: $1",
+ "translate-messagereview-done": "Tertinjau",
+ "translate-messagereview-reviews": "Ditinjau oleh {{PLURAL:$1|seorang pengguna|$1 pengguna}}",
+ "translate-messagereview-reviewswithyou": "Ditinjau oleh {{PLURAL:$1|Anda|$1 pengguna termasuk Anda}}",
+ "api-error-invalidrevision": "Terjemahan tidak ditemukan",
+ "api-error-unknownmessage": "Pesan tidak ditemukan",
+ "api-error-fuzzymessage": "Terjemahan ditandai sebagai takjelas",
+ "api-error-owntranslation": "Anda tidak dapat menandai terjemahan Anda sendiri tertinjau",
+ "translate-messagereview-no-fuzzy": "Terjemahan takjelas tidak dapat ditandai sebagai telah ditinjau.",
+ "translate-messagereview-no-own": "Anda tidak dapat menandai terjemahan Anda sendiri sebagai telah ditinjau.",
+ "translate-messagereview-doit": "Tandai terjemahan ini sebagai telah ditinjau.",
+ "group-translate-proofr.css": "/* CSS placed here will affect translation reviewers only */",
+ "group-translate-proofr.js": "/* JS placed here will affect translation reviewer only */",
+ "log-name-translationreview": "Catatan peninjauan terjemahan",
+ "log-description-translationreview": "Catatan semua tinjauan terhadap terjemahan dan kelompok pesan.",
+ "logentry-translationreview-message": "$1 {{GENDER:$2|telah meninjau}} terjemahan $3",
+ "logentry-translationreview-group": "$1 {{GENDER:$2|mengubah}} status terjemahan $4 untuk $3 dari $6 menjadi $7",
+ "group-translate-sandboxed": "Penerjemah yang belum disetujui",
+ "group-translate-sandboxed-member": "{{GENDER:$1|penerjemah yang belum disetujui}}",
+ "right-translate-sandboxmanage": "Mengelola pengguna dalam bak pasir",
+ "action-translate-sandboxmanage": "mengelola pengguna dalam bak pasir",
+ "right-translate-sandboxaction": "Menjalankan tindakan yang masuk daftar putih untuk pengguna dalam bak pasir",
+ "action-translate-sandboxaction": "menjalankan tindakan yang masuk daftar putih untuk pengguna dalam bak pasir",
+ "translate-workflow-state-": "(tidak ditetapkan)",
+ "translate-workflowstatus": "Status: $1",
+ "translate-workflow-set-do": "Tetapkan",
+ "translate-workflow-set-doing": "Sedang menetapkan...",
+ "translate-workflow-set-done": "Ditetapkan!",
+ "translate-workflow-set-error-alreadyset": "Status yang diminta sama dengan status saat ini.",
+ "translate-workflow-autocreated-summary": "Pembuatan halaman otomatis untuk status alur kerja $1",
+ "translate-stats-workflow": "Status",
+ "translate-workflowgroup-label": "Status alur kerja",
+ "translate-dynagroup-recent-label": "Terjemahan terkini",
+ "translate-dynagroup-additions-label": "Penambahan terkini",
+ "translate-dynagroup-additions-desc": "Kelompok pesan ini menampilkan pesan yang baru dan yang telah berubah.",
+ "translate-dynagroup-by": "Terjemahan dibuat oleh {{GENDER:$1|$1}}",
+ "translate-dynagroup-byc": "Terjemahan dibuat oleh {{GENDER:$1|$1}} ($2)",
+ "translate-dynagroup-last": "Perubahan terakhir oleh {{GENDER:$1|$1}}",
+ "translate-dynagroup-lastc": "Perubahan terakhir oleh {{GENDER:$1|$1}} ($2)",
+ "translate-gethelp": "Bantuan",
+ "translate-msggroupselector-projects": "Kelompok pesan",
+ "translate-msggroupselector-search-placeholder": "Cari kelompok",
+ "translate-msggroupselector-search-all": "Semua",
+ "translate-msggroupselector-search-recent": "Terkini",
+ "translate-msggroupselector-view-subprojects": "$1 {{PLURAL:$1|sub-kelompok|sub-kelompok}}",
+ "tux-languageselector": "Terjemahkan ke",
+ "tux-tab-all": "Semua",
+ "tux-tab-untranslated": "Belum diterjemahkan",
+ "tux-tab-outdated": "Usang",
+ "tux-tab-translated": "Telah diterjemahkan",
+ "tux-tab-unproofread": "Belum ditinjau",
+ "tux-edit": "Sunting",
+ "tux-status-optional": "Opsional",
+ "tux-status-fuzzy": "Usang",
+ "tux-status-proofread": "Telah ditinjau",
+ "tux-status-translated": "Telah diterjemahkan",
+ "tux-status-saving": "Sedang menyimpan...",
+ "tux-status-unsaved": "Belum disimpan",
+ "tux-editor-placeholder": "Terjemahan Anda",
+ "tux-editor-paste-original-button-label": "Tempel teks sumber",
+ "tux-editor-discard-changes-button-label": "Buang perubahan",
+ "tux-editor-save-button-label": "Simpan terjemahan",
+ "tux-editor-skip-button-label": "Lewati",
+ "tux-editor-cancel-button-label": "Batal",
+ "tux-editor-confirm-button-label": "Konfirmasikan terjemahan",
+ "tux-editor-shortcut-info": "Tekan \"$1\" untuk menyimpan atau \"$2\" untuk lanjut ke pesan selanjutnya",
+ "tux-editor-edit-desc": "Sunting dokumentasi",
+ "tux-editor-add-desc": "Tambah dokumentasi",
+ "tux-editor-suggestions-title": "Saran",
+ "tux-editor-in-other-languages": "Dalam bahasa lain",
+ "tux-editor-need-more-help": "Butuh bantuan?",
+ "tux-editor-ask-help": "Silakan tanya",
+ "tux-editor-tm-match": "$1% sesuai",
+ "tux-warnings-more": "{{PLURAL:$1|$1 lagi}}",
+ "tux-warnings-hide": "sembunyikan",
+ "tux-editor-save-failed": "Penyimpanan terjemahan gagal: $1",
+ "tux-editor-n-uses": "digunakan $1 {{PLURAL:$1|kali|kali}}",
+ "tux-editor-message-desc-more": "Tampilkan selengkapnya",
+ "tux-editor-message-desc-less": "Tampilkan seperlunya",
+ "tux-editor-clear-translated": "Sembunyikan yang telah diterjemahkan",
+ "tux-editor-proofreading-mode": "Tinjauan",
+ "tux-editor-translate-mode": "Daftar",
+ "tux-editor-proofreading-hide-own-translations": "Sembunyikan terjemahan Anda",
+ "tux-editor-proofreading-show-own-translations": "Tampilkan terjemahan Anda",
+ "tux-proofread-action-tooltip": "Tandai sebagai telah ditinjau",
+ "tux-proofread-edit-label": "Sunting",
+ "tux-editor-page-mode": "Halaman",
+ "tux-editor-outdated-warning": "Terjemahan ini mungkin perlu dimutakhirkan.",
+ "tux-editor-outdated-warning-diff-link": "Tampilkan perbedaan",
+ "tux-editor-doc-editor-placeholder": "Dokumentasi pesan",
+ "tux-editor-doc-editor-save": "Sunting dokumentasi",
+ "tux-editor-doc-editor-cancel": "Batal",
+ "tux-messagetable-more-messages": "$1 {{PLURAL:$1|pesan|pesan}} lainnya",
+ "tux-messagetable-loading-messages": "Memuat {{PLURAL:$1|pesan|pesan}}...",
+ "tux-message-filter-placeholder": "Saring daftar",
+ "tux-message-filter-result": "Ditemukan $1 buah {{PLURAL:$1|hasil|hasil}} untuk \"$2\"",
+ "tux-message-filter-advanced-button": "Penelusuran tingkat lanjut",
+ "tux-message-filter-optional-messages-label": "Pesan opsional",
+ "tux-proofread-translated-by-self": "Diterjemahkan oleh Anda",
+ "tux-empty-list-all": "Kelompok pesan ini kosong",
+ "tux-empty-list-all-guide": "Pilih kelompok pesan lainnya untuk diterjemahkan",
+ "tux-translate-page-no-such-group": "'''Kelompok yang diminta tidak tersedia.''' Pilihlah kelompok pesan yang lain.",
+ "tux-empty-list-translated": "Tidak ada pesan yang telah diterjemahkan",
+ "tux-empty-list-translated-guide": "Anda dapat membantu menerjemahkan",
+ "tux-empty-list-translated-action": "Terjemahkan",
+ "tux-empty-no-messages-to-display": "Tidak ada pesan yang dapat ditampilkan.",
+ "tux-empty-there-are-optional": "Terdapat pesan opsional yang tidak ditampilkan di dalam daftar",
+ "tux-empty-show-optional-messages": "Tampilkan pesan opsional",
+ "tux-empty-no-outdated-messages": "Tidak ada pesan usang",
+ "tux-empty-nothing-to-proofread": "Tidak ada yang perlu ditinjau",
+ "tux-empty-you-can-help-providing": "Anda dapat membantu menyediakan terjemahan baru",
+ "tux-empty-nothing-new-to-proofread": "Tidak ada pesan baru yang perlu ditinjau",
+ "tux-empty-you-can-review-already-proofread": "Anda dapat meninjau terjemahan yang sudah ditinjau oleh orang lain.",
+ "tux-empty-list-other": "Tidak ada yang perlu diterjemahkan",
+ "tux-empty-list-other-guide": "Anda dapat membantu meninjau terjemahan yang telah ada",
+ "tux-empty-list-other-action": "Tinjau terjemahan",
+ "tux-empty-list-other-link": "Tampilkan semua pesan",
+ "tux-editor-close-tooltip": "Tutup",
+ "tux-editor-expand-tooltip": "Bentangkan",
+ "tux-editor-collapse-tooltip": "Ciutkan",
+ "tux-editor-message-tools-history": "Riwayat",
+ "tux-editor-message-tools-translations": "Semua terjemahan",
+ "tux-editor-loading": "Sedang memuat...",
+ "translate-search-more-languages-info": "$1 {{PLURAL:$1|bahasa|bahasa}} lainnya",
+ "translate-statsbar-tooltip": "$1% telah diterjemahkan, $2% telah ditinjau",
+ "translate-statsbar-tooltip-with-fuzzy": "$1% telah diterjemahkan, $2% telah ditinjau, $3% usang",
+ "translate-search-more-groups-info": "$1 {{PLURAL:$1|kelompok|kelompok}} lainnya"
+}
diff --git a/MLEB/Translate/i18n/core/ig.json b/MLEB/Translate/i18n/core/ig.json
new file mode 100644
index 00000000..e4969f4c
--- /dev/null
+++ b/MLEB/Translate/i18n/core/ig.json
@@ -0,0 +1,48 @@
+{
+ "@metadata": {
+ "authors": [
+ "Ukabia"
+ ]
+ },
+ "translate": "Tụ̀wári ásụ̀sụ̀",
+ "translate-page-settings-legend": "Otu ihe dị",
+ "translate-page-group": "Ọtú",
+ "translate-page-language": "Ásụ̀sụ̀",
+ "translate-page-limit": "Érúrú",
+ "translate-submit": "Ga wèré",
+ "translate-page-navigation-legend": "Otú Uzọr",
+ "translate-page-showing-none": "Ozi adighi I zi.",
+ "translate-next": "Ihü sò",
+ "translate-page-edit": "mèzi",
+ "translate-optional": "(ichóró)",
+ "translate-ignored": "(atùfùghịrị)",
+ "translate-edit-definition": "Mkpurụ ómárí ozi",
+ "translate-magic-cm-to-be": "I-bu",
+ "translate-magic-cm-save": "Domá",
+ "translate-rc-translation-filter-no": "Emela ihe obulà",
+ "translate-stats-edits": "Mmezi",
+ "translate-stats-users": "Ndi na kuwari asụsụ na asụsụ nke ozor",
+ "translate-statsf-width": "Íbụ ime ogụgụ pixel:",
+ "translate-statsf-height": "Ógólógó ime ogụgụ pixel:",
+ "translate-statsf-scale-days": "Ubochi",
+ "translate-statsf-scale-hours": "Àmànì",
+ "translate-statsf-count": "Güo ógólógó:",
+ "translate-statsf-count-edits": "Ogụgụ orü",
+ "translate-statsf-count-users": "Ndi na su asụsụ di ngwamme",
+ "translate-sidebar-alltrans": "Na asụsụ ozor",
+ "translate-translations-fieldset-title": "Ozi",
+ "translate-translations-messagename": "Áhà:",
+ "translate-translations-project": "Nzu:",
+ "translate-language": "Ásụ̀sụ̀",
+ "translate-percentage-complete": "Mmechá",
+ "translate-save": "Domá ($1)",
+ "translate-jssti-add": "Tinyé na ndetu",
+ "translate-manage-import-new": "Ozi ohúrù $1",
+ "translate-manage-import-deleted": "Ozi bakashịrị $1",
+ "translate-manage-import-done": "Omechá!",
+ "translate-gs-code": "Edemede i zonari",
+ "translate-gs-continent": "Obodo ukwu",
+ "translate-gs-speakers": "Ndi na su",
+ "translate-gs-multiple": "Onuogụgụ kachara otụ",
+ "translate-gs-total": "Òlé níle"
+}
diff --git a/MLEB/Translate/i18n/core/ilo.json b/MLEB/Translate/i18n/core/ilo.json
new file mode 100644
index 00000000..8d0861b3
--- /dev/null
+++ b/MLEB/Translate/i18n/core/ilo.json
@@ -0,0 +1,380 @@
+{
+ "@metadata": {
+ "authors": [
+ "Joemaza",
+ "Lam-ang",
+ "Saluyot"
+ ]
+ },
+ "translate": "Ipatarus",
+ "translate-desc": "[[Special:Translate|Espesial a panid]] para iti panagipatarus ti MediaWiki ken iti labes",
+ "translate-taskui-view": "Ipakita amin dagiti mensahe",
+ "translate-taskui-untranslated": "Ipakita dagiti saan pay a naipatarus a mensahe",
+ "translate-taskui-optional": "Ipakita dagiti pagpilian a mensahe",
+ "translate-taskui-acceptqueue": "Dagiti laeng mensahe a mamarkaak a kas narepaso",
+ "translate-taskui-reviewall": "Irepaso amin dagiti patarus",
+ "translate-taskui-export-to-file": "Iparuar iti patneng a pormat",
+ "translate-taskui-export-as-po": "Iruar para iti off-line a panangipatarus",
+ "translate-taction-translate": "Ipatarus",
+ "translate-taction-proofread": "Irepaso",
+ "translate-taction-lstats": "Estadistika ti pagsasao",
+ "translate-taction-mstats": "Estadistika ti grupo ti mensahe",
+ "translate-taction-export": "Iluas",
+ "translate-taction-disabled": "Nabaldado daytoy nga aramid ti daytoy a wiki.",
+ "translate-page-no-such-language": "Awan pateg ti naituding a pagsasao.",
+ "translate-page-no-such-group": "Awan pateg ti naituding a grupo.",
+ "translate-page-disabled": "Dagiti panagipatarus iti daytoy a pagsasao iti daytoy a grupo ket nabaldado.\nRason:\n\n<em>$1</em>",
+ "translate-language-disabled": "Nabaldado ti panagipatarus ti daytoy a pagsasao.",
+ "translate-page-settings-legend": "Dagiti pakayasentaran",
+ "translate-page-group": "Grupo",
+ "translate-page-language": "Pagsasao",
+ "translate-page-limit": "Patingga",
+ "translate-page-limit-option": "$1 {{PLURAL:$1|a mensahe|kadagiti mensahe}} tunggal maysa a panid",
+ "translate-submit": "Alaen",
+ "translate-page-navigation-legend": "Panagdaliasat",
+ "translate-page-showing": "Agipakpakita kadagiti mensahe manipud ti $1 aginggana ti $2 iti $3.",
+ "translate-page-showing-all": "Agipakpakita ti $1 {{PLURAL:$1|a mensahe|a mensahe}}.",
+ "translate-page-showing-none": "Awan dagiti maiparang a mensahe.",
+ "translate-next": "Sumaruno a panid",
+ "translate-prev": "Napalabas a panid",
+ "translate-page-description-legend": "Pakaammo a maipanggep ti grupo",
+ "translate-page-description-hasoptional": "Daytoy a grupo ti mensahe ket aglaon kadagiti pagpilian a mensahe.\nDagiti pagpilian a mensahe ket maipatarus laeng kuma no ti pagsasaom ket ket addaan ti naipangruna a kammasapulan\nkasla ti saan a panag-usar kadagiti pagbaetan wenno transliterasion iti maitutop a nagnagan. $1",
+ "translate-page-description-hasoptional-open": "Ipakita dagiti pagpilian a mensahe.",
+ "translate-page-edit": "urnosen",
+ "translate-optional": "(pagpilian)",
+ "translate-ignored": "(binay-an)",
+ "translate-edit-title": "Urnosen ti \"$1\"",
+ "translate-edit-definition": "Panangipalawag ti mensahe",
+ "translate-edit-translation": "Panagitarus",
+ "translate-edit-contribute": "agparawad",
+ "translate-edit-no-information": "<em>Daytoy a mensahe ket awan ti dokumentasionna.\nNo ammom ti ayan wenno kasano ti pannaka-usar daytoy a mensahe, matulongam dagiti sabali nga agipatpatarus babaen ti panagnayon ti dokumentasion daytoy a mensahe.</em>",
+ "translate-edit-information": "Pakaammo a maipanggep ti mensahe ($1)",
+ "translate-edit-in-other-languages": "Mensahe kadagiti sabali a pagsasao",
+ "translate-edit-committed": "Agdama a panakaipatarus iti software",
+ "translate-edit-warnings": "Dagiti ballaag a maipanggep kadagiti saan a kompleto a patarus",
+ "translate-edit-tmsugs": "Dagiti singasing manipud ti laglagip ti panagitarus ken panagitarus ti makina",
+ "translate-edit-tmmatch-source": "Testo a taudan ti panagitarus: $1",
+ "translate-edit-tmmatch": "$1% a kapada",
+ "translate-use-suggestion": "Sukatan ti agdama panakaipatarus iti daytoy a singasing.",
+ "translate-edit-nopermission": "Masapolmo ti karbengan ti panagipatarus tapno makaipatarus kadagiti mensahe.",
+ "translate-edit-askpermission": "Mangala ti pammalubos",
+ "translate-magic-pagename": "Naipaatiddog a panagipatarus ti MediaWiki",
+ "translate-magic-help": "Mabalinmo nga ipatarus dagiti parbo a nagan dagiti espesial a panid, salamangka a balbalikas ken nagnagan ti espasio.\n\nDagiti parbo a nagan ti espesial a panid ken salamangka a pampanid ket mabalinda nga adaan kadagiti adu a pannakaipatarus.\nDagiti patarus ket naisinsina babaen ti koma (,).\nDagiti nagan ti espasio ket mabalin laeng ti maysa a patarus.\n\nMabalin a narigat ti papangipatarus ti nagan ti espasio ti <code>$1 talk</code> a tungtungan ti gandat.\nTi <code>$1</code> ket sukatan ti nagan ti sitio ti gandat (kas pagarigan <code>{{ns:project_talk}}</code>).\nNo ti pagsasaom ket saan a mabalin ti mangporma ti umiso a panagiyebkas nga awan ti panangibaliw ti nagan ti sitio, pangngaasi a pakaammuandakami idiay [[Support|Suporta]].\n\nNasken nga agipatpataruska tapno maidulin dagiti binaliwan.\nDagiti binaliwan ket saan a maidulin aginggana no pindutem ti buton ti iduin dita baba.",
+ "translate-magic-module": "Modulo:",
+ "translate-magic-submit": "Alaen",
+ "translate-magic-cm-export": "Iluas",
+ "translate-magic-nothing-to-export": "Awan ti mailuas.",
+ "translate-magic-cm-to-be": "Ti kuma",
+ "translate-magic-cm-current": "Agdama",
+ "translate-magic-cm-original": "Kasisigud",
+ "translate-magic-cm-comment": "Komentario:",
+ "translate-magic-cm-save": "Idulin",
+ "translate-magic-cm-updatedusing": "Pabaruen nga agusar ti [[Special:AdvancedTranslate|{{int:Translate-magic-pagename}}]]",
+ "translate-magic-cm-savefailed": "Napaay ti panagidulin",
+ "translate-magic-special": "Parbo a nagnagan ti espesial a panid",
+ "translate-magic-words": "Salamangka a balbalikas",
+ "translate-magic-namespace": "Nagan ti lugar a nagnagan",
+ "translate-magic-notsaved": "Ti inurnosmo ket saan a naidulin!",
+ "translate-magic-errors": "Pangaasi a simpaen {{PLURAL:$1|ti sumaganad a kamali|dagiti sumaganad a kamali}} a naipatarus:",
+ "translate-magic-saved": "Balligi a naidulin dagiti sinuksukatam.",
+ "translate-checks-parameters": "{{PLURAL:$2|Ti sumaganad a parametro|Dagiti sumaganad a parametro}} ket saan a nausar:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-parameters-unknown": "{{PLURAL:$2|Ti sumaganad a parametro|Dagiti sumaganad a parametro}} ket di ammo:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-balance": "Adda saan nga agtumbas a bilang {{PLURAL:$2|ti parentesis|dagiti parentesis}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links": "{{PLURAL:$2|Ti sumaganad a silpo|Dagiti sumaganad a $2 a silpo}} ket problematiko:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links-missing": "{{PLURAL:$2|Ti sumaganad a silpo|Dagiti sumaganad a $2 silpo}} ket awan:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-xhtml": "Pangngaasi a sukatan {{PLURAL:$2|ti etiketa|dagiti etiketa}} kadagiti husto:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-plural": "Ti panangipalawag ket agus-usar ti <nowiki>{{PLURAL:}}</nowiki> ngem ti panangipatarus ket saan.",
+ "translate-checks-plural-forms": "Ti <nowiki>{{PLURAL:}}</nowiki> ket naikkan {{PLURAL:$1|ti maysa a porma|kadagiti $1 a porma}} ngem {{PLURAL:$2|maysa laeng a porma|$2 a porporma}} ti masuportaran (malaksid ti 0= ken 1= a porporma).",
+ "translate-checks-plural-dupe": "Ti <nowiki>{{PLURAL:}}</nowiki> ket addaan ti duplikado a porporma iti gibus. Ti <nowiki>{{PLURAL:$1|karnero|karnero}}</nowiki> ket maisurat kuma a kas <nowiki>{{PLURAL:$1|karnero}}</nowiki>.",
+ "translate-checks-pagename": "Ti nagan ti espasio ket nagbaliw manipud ti panangipalawag",
+ "translate-checks-format": "Daytoy a patarus ket saanna a suroten ti panangipalawag wenno addaan ti imbalido a gramatika:$1",
+ "translate-checks-escape": "Dagiti sumaganad a pangitalaw ket mabalin nga aksidental: <strong>$1</strong>",
+ "translate-checks-parametersnotequal": "Ti bilang ti parametro ket {{PLURAL:$1|$1}}; nasken kuma a {{PLURAL:$2|$2}}.",
+ "translate-checks-malformed": "Ti <nowiki>$1</nowiki> ket nadadael.",
+ "translate-checks-fudforum-syntax": "Usaren ti <nowiki>$1</nowiki> imbes nga ti <nowiki>$2</nowiki> iti daytoy a gandat.",
+ "translate-pref-nonewsletter": "Saannak a patulodan iti esurat ti damdamag",
+ "translate-pref-editassistlang": "Dagiti katakunaynay a pagsasao:",
+ "prefs-translate": "Dagiti pagpilian ti panagipatarus",
+ "translate-pref-editassistlang-help": "Listaan dagiti kodigo ti pagsasao nga insinsina ti koma.\nTi patarus ti mensahe kadagitoy a pagsasao ket maipakita no agipatpataruska.\nTi kasisigud a listan dagiti pagsasao ket depende iti pagsasaom.",
+ "translate-pref-editassistlang-bad": "Imbalido a kodigo ti pagsasao iti listaan:\n<nowiki>$1</nowiki>.",
+ "right-translate": "Agurnos nga agusar ti interface ti panagipatarus",
+ "right-translate-manage": "Agtaripato kadagiti grupo ti mensahe",
+ "action-translate-manage": "agtaripato kadagiti grupo ti mensahe",
+ "right-translate-import": "Agala kadagiti offline a patarus",
+ "action-translate-import": "agala kadagiti offline a patarus",
+ "right-translate-messagereview": "Agrepaso kadagiti patarus",
+ "right-translate-groupreview": "Baliwan ti kasasaad ti ayus ti obra dagiti grupo ti mensahe",
+ "translate-rc-translation-filter": "Sagaten dagiti patarus:",
+ "translate-rc-translation-filter-no": "Saanka nga ogobra",
+ "translate-rc-translation-filter-only": "Ipakita laeng dagiti patarus",
+ "translate-rc-translation-filter-filter": "Isagat dagiti patarus",
+ "translate-rc-translation-filter-site": "Baliwan laeng kadagiti mensahe ti sitio",
+ "translationstats": "Estadistika ti patarus",
+ "translate-stats-edits": "Ur-urnos",
+ "translate-stats-users": "Agipatpatarus",
+ "translate-stats-registrations": "Dagiti rehistrasion",
+ "translate-stats-reviews": "Dagiti repaso",
+ "translate-stats-reviewers": "Dagiti agreprepaso",
+ "translate-statsf-intro": "Amin dagiti pateg ket addaan kadagiti akin-ngato ken akin-baba a patingga.",
+ "translate-statsf-options": "Dagti pagpilian ti inkuri-kur-it",
+ "translate-statsf-width": "Kaakaba kadagiti piksel:",
+ "translate-statsf-height": "Katayag kadagiti piksel:",
+ "translate-statsf-days": "Paset ti panawen kadagiti aldaw:",
+ "translate-statsf-start": "Rugi a petsa:",
+ "translate-statsf-scale": "Granularidad:",
+ "translate-statsf-scale-months": "Bulbulan",
+ "translate-statsf-scale-weeks": "Lawlawas",
+ "translate-statsf-scale-days": "Al-aldaw",
+ "translate-statsf-scale-hours": "Or-oras",
+ "translate-statsf-count": "Rukod:",
+ "translate-statsf-count-edits": "Bilang dagiti inurnos:",
+ "translate-statsf-count-users": "Dagiti aktibo nga agipatpatarus",
+ "translate-statsf-count-registrations": "Dagiti baro nga agar-aramat",
+ "translate-statsf-count-reviews": "Dagiti repaso ti panagipatarus",
+ "translate-statsf-count-reviewers": "Dagiti agreprepaso",
+ "translate-statsf-language": "Listaan dagiti kodigo ti pagsasao nga insinsina ti koma:",
+ "translate-statsf-group": "Listaan ti grupo dagiti kodigo nga insinsina ti koma:",
+ "translate-statsf-submit": "Ipadas",
+ "translate-tag-category": "Maipatarus a pampanid",
+ "translate-tag-page-desc": "Patarus ti panid ti wiki ti [[$2|$1]].",
+ "translate-sidebar-alltrans": "Iti sabali a sasao",
+ "translations": "Amin a patarus",
+ "translations-summary": "Ikabil ti nagan ti mensahe dita baba tapno maipakita amin dagiti magun-od a patarus.",
+ "translate-translations-no-message": "Ti \"$1\" ket saan a maipatarus a mensahe",
+ "translate-translations-none": "Awan dagiti patarus para iti \"$1\"",
+ "translate-translations-count": "Nakabiruk {{PLURAL:$1|ti maysa a patarus|kadagiti $1 a patarus}}.",
+ "translate-translations-fieldset-title": "Mensahe",
+ "translate-translations-messagename": "Nagan:",
+ "translate-translations-project": "Gandat:",
+ "translate-translations-including-no-param": "Pangngaasi a mangibaga ti husto a tekla ti mensahe iti parametro ti subpanid",
+ "translate-translations-history-short": "p",
+ "languagestats": "Estadistika ti pagsasao",
+ "languagestats-summary": "Daytoy a panid ket mangipakita ti estadistika ti patarus para kadagiti amin a grupo para iti pagsasao.",
+ "languagestats-stats-for": "Estadistika ti patarus para iti $1 ($2).",
+ "languagestats-recenttranslations": "dagiti kinaudi a patarus",
+ "translate-langstats-incomplete": "Adda met dagiti estadistika iti daytoy a panid ket saan a kompleto. Pangngaasi nga ikarga manen tapno makaala kadagiti adu pay nga estadistika.",
+ "translate-langstats-expand": "palawaen",
+ "translate-langstats-collapse": "rebbaen",
+ "translate-langstats-expandall": "palawaen amin",
+ "translate-langstats-collapseall": "rebbaen amin",
+ "translate-language-code": "Kodigo ti pagsasao",
+ "translate-language-code-field-name": "Kodigo ti pagsasao:",
+ "translate-suppress-complete": "Pasardengen amin dagiti grupo ti mensahe a kompleto a naipatarus",
+ "translate-ls-noempty": "Pasardengen amin dagiti grupo ti mensahe a saan kompleto a naipatarus",
+ "translate-language": "Pagsasao",
+ "translate-total": "Dagiti mensahe",
+ "translate-untranslated": "Di naipatarus",
+ "translate-percentage-complete": "Pannakalpas",
+ "translate-percentage-fuzzy": "Baak",
+ "translate-languagestats-overall": "Itipon amin a grupo ti mensahe",
+ "translate-ls-submit": "Ipakita ti estadistika",
+ "translate-ls-column-group": "Grupo ti mensahe",
+ "translate-mgs-pagename": "Estadistika ti grupo ti mensahe",
+ "translate-mgs-fieldset": "Ipakita dagiti kakaykayatan",
+ "translate-mgs-group": "Grupo ti mensahe:",
+ "translate-mgs-nocomplete": "Saan nga iparang dagiti pagsasao nga addaan ti kompleto a patarus",
+ "translate-mgs-noempty": "Saan nga iparang dagiti pagsasao nga awan dagiti aniaman a patarus",
+ "translate-mgs-submit": "Ipakita ti estadistika",
+ "translate-mgs-column-language": "Pagsasao",
+ "translate-mgs-totals": "Pagtiponen amin dagiti pagsasao",
+ "translate-mgs-invalid-group": "Ti nainaganan a grupo ti $1 ket awan.",
+ "translate-mgs-nothing": "Awan ti maipakita para iti nakiddaw nga estadistika.",
+ "supportedlanguages": "Dagiti nasuportaran a pagsasao",
+ "supportedlanguages-summary": "Daytoy a panid ket mangipakita ti listaan kadagiti amin a pagsasao a sinuportaran babaen ti {{SITENAME}},\na kakuyogna dagiti nagan dagiti agipatpatarus nga agob-obra iti dayta apagsasao.\nTi nagan ti agipatpatarus ket dakdakkel a maiparang, no ad-adu ti inur-nos nga inparawad ti agar-aramat.\nTi maris ti ugis iti baba ket mangibaga no kaano ti kinaaktibo ti agipatpatarus ditoy.",
+ "supportedlanguages-colorlegend": "Leyenda para iti maris: Ti naudi a patarus ket $1 ti napalabas.",
+ "supportedlanguages-translators": "{{PLURAL:$2|Agipatpatarus|Dagiti agipatpatarus}}: $1",
+ "supportedlanguages-recenttranslations": "dagiti kinaudi a patarus",
+ "supportedlanguages-count": "$1 a dagup {{PLURAL:$1|ti pagsasao|dagiti pagsasao}}.",
+ "supportedlanguages-activity": "$1: $2 nga {{PLURAL:$2|inurnos|inur-urnos}} - kinaudi nga inurnos ket $3 nga {{PLURAL:$3|aldaw|al-aldaw}} ti napalabas",
+ "translate-save": "Idulin ($1)",
+ "translate-jssti-add": "Inayon iti listaan",
+ "managemessagegroups": "Panagtaripato ti grupo ti mensahe",
+ "translate-smg-notallowed": "Saanmo a mabalin nga aramiden daytoy a tignay.",
+ "translate-smg-nochanges": "Awan ti maproseso kadagiti binaliwan.",
+ "translate-smg-submit": "Ited dagiti binaliwan tapno maproseso",
+ "translate-smg-submitted": "Napabaro dagiti panagipalawag ti mensahe. Dagiti panagbaliw ket agdama a maproproseo iti likudan.",
+ "translate-smg-more": "Addanto pay dagiti adu a maproseo a binaliwan kalpasan ti panagited kadagitoy a binaliwan.",
+ "translate-smg-left": "Linaon a mesahe iti wiki",
+ "translate-smg-right": "Dagiti um-umay a panagbalbaliw",
+ "translate-manage-import-diff": "Mensahe $1 | Tigtignay: $2",
+ "translate-manage-import-new": "Baro a mensahe $1",
+ "translate-manage-import-deleted": "Naikkat a mensahe $1",
+ "translate-manage-action-import": "Agala",
+ "translate-manage-action-conflict": "Agala ket di nalawag",
+ "translate-manage-action-ignore": "Saan nga ikaskaso",
+ "translate-manage-action-fuzzy": "Dagiti patarus a naala ken di nalawag",
+ "translate-manage-nochanges": "Awan dagiti binalbaliwan kadagiti panagipalpalawag ti mensahe para iti daytoy a grupo.",
+ "translate-manage-nochanges-other": "Awan dagiti binalbaliwan para iti daytoy a pagsasao.\nUsaren ti silpo dita baba tapno agsubli idiay naisalaysay a panagkita ti grupo.",
+ "translate-manage-inconsistent": "Nakaduktal ti bangking iti kiddaw.\nPangaasi nga agkita kadagiti panagbalbaliw ket padasen manen.\nDagiti salaysay: $1.",
+ "translate-manage-toolong": "Ti kaaduan a panagproseso nga oras iti $1 a {{PLURAL:$1|segundo|segsegundo}} ket nalabsan.\nPangngaasi nga ited manen ti porma tapno maituloy ti panagproseso.",
+ "translate-manage-import-summary": "Agal-ala ti baro a bersion manipud ti akin-ruar a taudan",
+ "translate-manage-conflict-summary": "Agal-ala ti baro a bersion manipud ti akin-ruar a taudan.\nPangngaasi a kitaen.",
+ "translate-manage-fuzzy-summary": "Nagbaliw ti panangipalawag ti mensahe",
+ "translate-manage-submit": "Aramiden",
+ "translate-manage-intro-other": "Dita baba ket listaan dagiti panagbaliw ti patarus iti pagsasao ti $1.\nPangngaasi nga irepaso dagiti binaliwan ken agpili ti tignay a kayatmo nga aramiden para iti tunggal maysa pabaro.\nNo piliem a saan nga ikaskaso dagiti ibinaliwan, temporario laeng daytoy a tignay.",
+ "translate-manage-import-ok": "Nagala: $1",
+ "translate-manage-import-done": "Kompleton ti panagala!",
+ "importtranslations": "Agala kadagiti patarus",
+ "translate-import-from-local": "Lokal a panagikarga ti papeles:",
+ "translate-import-load": "Ikarga ti papeles",
+ "translate-import-err-dl-failed": "Di nakaala iti papeles:\n$1",
+ "translate-import-err-ul-failed": "Napaay ti panangikarga ti papeles",
+ "translate-import-err-invalid-title": "Ti naited a nagan ti papele iti <nowiki>$1</nowiki> ket imbalido.",
+ "translate-import-err-no-such-file": "Awan ti papeles ti<nowiki>$1</nowiki> wenno saan pay a lokal a naikarga.",
+ "translate-import-err-stale-group": "Awan ti grupo ti mensahe nga agtagikua iti daytoy a papeles.",
+ "translate-import-err-no-headers": "Ti papeles ket saan a nasayaat a naporma a papeles iti Gettext iti pormat a pagpaatiddog ti Translate:\nDi naikeddeng ti grupo ti mensahe ken pagsasao manipud kadagiti paulo ti papeles.",
+ "translate-import-err-warnings": "Saan a nasayaat a naporma daytoy a papeles.\nSiguraduem a ti editormo ket saan nga agikkat kadagiti pagikabilan ti msgctxt.\nDagiti salaysay: $1",
+ "translate-js-summary": "Pakabuklan:",
+ "translate-js-save": "Idulin",
+ "translate-js-next": "Idulin ken lukatan ti sumaruno",
+ "translate-js-nonext": "Daytoy ti naudi a mensahe iti daytoy a panid",
+ "translate-js-skip": "Mapan iti sumaruno",
+ "translate-js-save-failed": "Napaay ti panagidulin. Pangngaasi nga ireporta daytoy a biddut.",
+ "translate-js-history": "Pakasaritaan ti patarus",
+ "translate-js-support": "Agdamag ti saludsod",
+ "translate-js-support-title": "Agdamag ti tulong no awan ti makaanay a pakaamo tapno husto ti pannakaipatarus daytoy a mensahe.",
+ "translate-js-support-unsaved-warning": "Adaanka kadagiti saan a naidulin a patarus.",
+ "translate-gs-pos": "Pues.",
+ "translate-gs-code": "Kodigo",
+ "translate-gs-continent": "Kontinente",
+ "translate-gs-speakers": "Dagiti agbitbitla",
+ "translate-gs-score": "Iskor",
+ "translate-gs-multiple": "Kaadu",
+ "translate-gs-count": "Bilang",
+ "translate-gs-total": "Dagup",
+ "translate-gs-avgscore": "Natimbeng nga iskor",
+ "translate-documentation-language": "Dokumentasion ti mensahe",
+ "translate-searchprofile": "Dagiti patarus",
+ "translate-searchprofile-tooltip": "Agbiruk manipud kadagiti amin a patarus",
+ "translate-search-languagefilter": "Sagaten babaen ti pagsasao:",
+ "translate-search-nofilter": "Awan panagsagat",
+ "translate-messagereview-submit": "Markaan a narepaso",
+ "translate-messagereview-progress": "Agmarmarka a kas narepaso...",
+ "translate-messagereview-failure": "Napaay ti panagmarka a kas narepaso: $1",
+ "translate-messagereview-done": "Narepaso",
+ "translate-messagereview-reviews": "Rinepaso babaen {{PLURAL:$1|ti maysa nga agar-aramat|dagiti $1 nga agar-aramat}}",
+ "translate-messagereview-reviewswithyou": "{{PLURAL:$1|Rinepasom|Rinepaso dagiti $1 nga agr-aramat ken nairamanka}}",
+ "api-error-invalidrevision": "Saan a nabirukan ti patarus",
+ "api-error-unknownmessage": "Saan a nabirukan ti mensahe",
+ "api-error-fuzzymessage": "Ti patarus ket namarkaan a kas saan a nalawag",
+ "api-error-owntranslation": "Saanmo a mamarkaan dagiti bukodmo a patarus a kas narepaso",
+ "translate-messagereview-no-fuzzy": "Dagit saan a nalawag a panagipatarus ket saan a mabalin a mamarkaan a kas narepaso.",
+ "translate-messagereview-no-own": "Saanmo a mamarkaan dagiti bukodmo a patarus a kas narepaso.",
+ "translate-messagereview-doit": "Markaam daytoy a patarus a kas narepaso.",
+ "log-name-translationreview": "Listaan ti panagrepaso ti patarus",
+ "log-description-translationreview": "Ilista amin dagiti panagrepaso kadagiti patarus ken dagiti grupo ti mensahe.",
+ "logentry-translationreview-message": "Ni $1 ket {{GENDER:$2|nagrepaso}} ti patarus ti $3",
+ "logentry-translationreview-group": "Ni $1 ket {{GENDER:$2|binaliwanna}} ti kasasaad dagiti $4 a patarus ti $3 manipud ti $6 iti $7",
+ "group-translate-sandboxed": "Dagiti di naaprobaran nga agipatpatarus",
+ "group-translate-sandboxed-member": "{{GENDER:$1|di naaprobaran nga agipatpatarus}}",
+ "right-translate-sandboxmanage": "Taripatuen dagiti naipadpadas nga agar-aramat",
+ "action-translate-sandboxmanage": "taripatuen dagiti naipadpadas nga agar-aramat",
+ "right-translate-sandboxaction": "Aramiden dagiti tignay a maipalubos kadagiti naipadpadas nga agar-aramat",
+ "action-translate-sandboxaction": "aramiden dagiti tignay a maipalubos kadagiti naipadpadas nga agar-aramat",
+ "translate-workflow-state-": "(waswasen)",
+ "translate-workflowstatus": "Kasasaad: $1",
+ "translate-workflow-set-do": "Isaad",
+ "translate-workflow-set-doing": "Isadsaad...",
+ "translate-workflow-set-done": "Naisaaden!",
+ "translate-workflow-set-error-alreadyset": "Ti kiniddaw a kasasaad ket kapada ti agdama a kasasaad.",
+ "translate-workflow-autocreated-summary": "Automatiko a pannakapartuat ti panid para iti kasasaad ti ayus ti obra ti $1",
+ "translate-stats-workflow": "Kasasaad",
+ "translate-workflowgroup-label": "Dagiti kasasaad ti ayus ti obra",
+ "translate-workflowgroup-desc": "Daytoy a grupo ti mensahe ket mangipakpakita kadagiti kasasaad ti ayus ti obra.\nDagiti kasasaad ket naipalawag iti pannakaaramid ti karuay ti $wgTranslateWorkflowStates.",
+ "translate-dynagroup-recent-label": "Dagiti kinaudi a patarus",
+ "translate-dynagroup-recent-desc": "Daytoy a grupo ti mensahe ket mangipakpakita kadagiti amin a kinaudi a patarus iti daytoy a pagsasao.\nKaserbian daytoy para iti obra ti panagrepaso.",
+ "translate-dynagroup-additions-label": "Dagiti kinaudi a nainayon",
+ "translate-dynagroup-additions-desc": "Daytoy a grupo ti mensahe ket mangipakpakita kadagiti baro ken nabaliwan a mensahe.",
+ "translate-dynagroup-by": "Patarus nga inaramid babaen ni {{GENDER:$1|$1}}",
+ "translate-dynagroup-byc": "Patarus nga inaramid babaen ni {{GENDER:$1|$1}} ($2)",
+ "translate-dynagroup-last": "Kinaudi a panagbaliw babaen ni {{GENDER:$1|$1}}",
+ "translate-dynagroup-lastc": "Kinaudi a panagbaliw babaen ni {{GENDER:$1|$1}} ($2)",
+ "translate-gethelp": "Tulong",
+ "translate-msggroupselector-projects": "Grupo ti mensahe",
+ "translate-msggroupselector-search-placeholder": "Biruken dagiti grupo",
+ "translate-msggroupselector-search-all": "Amin",
+ "translate-msggroupselector-search-recent": "Kinaudi",
+ "translate-msggroupselector-view-subprojects": "$1 {{PLURAL:$1|a subgrupo|kadagiti subgrupo}}",
+ "tux-languageselector": "Ipatarus iti",
+ "tux-tab-all": "Amin",
+ "tux-tab-untranslated": "Di naipatarus",
+ "tux-tab-outdated": "Baak",
+ "tux-tab-translated": "Naipatarus",
+ "tux-tab-unproofread": "Di narepaso",
+ "tux-edit": "Urnosen",
+ "tux-status-optional": "Pagpilian",
+ "tux-status-fuzzy": "Baak",
+ "tux-status-proofread": "Narepaso",
+ "tux-status-translated": "Naipatarus",
+ "tux-status-saving": "Agiduldulin...",
+ "tux-status-unsaved": "Di naidulin",
+ "tux-editor-placeholder": "Ti patarusmo",
+ "tux-editor-paste-original-button-label": "Ipegket ti testo ti taudan",
+ "tux-editor-discard-changes-button-label": "Iwagsak dagiti binaliwan",
+ "tux-editor-save-button-label": "Idulin ti patarus",
+ "tux-editor-skip-button-label": "Mapan iti sumaruno",
+ "tux-editor-cancel-button-label": "Ukasen",
+ "tux-editor-confirm-button-label": "Pasingkedan ti patarus",
+ "tux-editor-shortcut-info": "Pinduten ti \"$1\" tapno maidulin wenno \"$2\" tapno mapan ti sumaruno a mensahe wenno \"$3\" para kadagiti sabali pay nga apat.",
+ "tux-editor-edit-desc": "Urnosen ti dokumentasion",
+ "tux-editor-add-desc": "Agnayon ti dokumentasion",
+ "tux-editor-suggestions-title": "Dagiti singasing",
+ "tux-editor-in-other-languages": "Iti sabali a sasao",
+ "tux-editor-need-more-help": "Makasapul pay ti adu a tulong?",
+ "tux-editor-ask-help": "Agdamag pay ti adu a pakaammo",
+ "tux-editor-tm-match": "$1% a kapada",
+ "tux-warnings-more": "{{PLURAL:$1|$1 pay}}",
+ "tux-warnings-hide": "ilemmeng",
+ "tux-editor-save-failed": "Napay ti panagidulin ti patarus: $1",
+ "tux-editor-n-uses": "inus-usar ti $1 {{PLURAL:$1|a beses|a besbeses}}",
+ "tux-editor-message-desc-more": "Agkita pay ti adu",
+ "tux-editor-message-desc-less": "Agkita ti basbassit",
+ "tux-editor-clear-translated": "Ilemmeng ti naipatarus",
+ "tux-editor-proofreading-mode": "Irepaso",
+ "tux-editor-translate-mode": "Listaan",
+ "tux-editor-proofreading-hide-own-translations": "Ilemmeng dagiti patarusmo",
+ "tux-editor-proofreading-show-own-translations": "Ipakita dagiti patarusmo",
+ "tux-proofread-action-tooltip": "Markaan a kas narepaso",
+ "tux-proofread-edit-label": "Urnosen",
+ "tux-editor-page-mode": "Panid",
+ "tux-editor-outdated-warning": "Daytoy a patarus ket mabalin a nasken a mapabaro.",
+ "tux-editor-outdated-warning-diff-link": "Ipakita dagiti paggiddiatan",
+ "tux-editor-doc-editor-placeholder": "Dokumentasion ti mensahe",
+ "tux-editor-doc-editor-save": "Idulin ti dokumentasion",
+ "tux-editor-doc-editor-cancel": "Ukasen",
+ "tux-messagetable-more-messages": "$1 pay a {{PLURAL:$1|mensahe|menmensahe}}",
+ "tux-messagetable-loading-messages": "Agkarkarga {{PLURAL:$1|ti mensahe|kadagiti mensahe}}...",
+ "tux-message-filter-placeholder": "Sagaten ti listaan",
+ "tux-message-filter-result": "Nakabiruk ti $1 {{PLURAL:$1|a resulta|kadagiti resulta}} para iti \"$2\"",
+ "tux-message-filter-advanced-button": "Napasayat a panagbiruk",
+ "tux-message-filter-optional-messages-label": "Dagiti pagpilian a mensahe",
+ "tux-proofread-translated-by-self": "Inpatarusmo",
+ "tux-empty-list-all": "Daytoy a grupo ti mensahe ket awan linaon",
+ "tux-empty-list-all-guide": "Agpili ti sabali nga ipatarus a grupo ti mensahe",
+ "tux-translate-page-no-such-group": "<strong>Awan ti naibaga a grupo ti mensahe.</strong> Agpili ti sabali a grupo ti mensahe.",
+ "tux-empty-list-translated": "Awan dagiti naipatarus a mensahe",
+ "tux-empty-list-translated-guide": "Makatulongka nga agipatarus",
+ "tux-empty-list-translated-action": "Ipatarus",
+ "tux-empty-no-messages-to-display": "Awan ti maiparang a mensahe.",
+ "tux-empty-there-are-optional": "Awan dagiti pagpilian a mensahe a saan a naipakita iti listaan",
+ "tux-empty-show-optional-messages": "Ipakita dagiti pagpilian a mensahe",
+ "tux-empty-no-outdated-messages": "Awan dagiti baak a mensahe",
+ "tux-empty-nothing-to-proofread": "Awan ti marepaso",
+ "tux-empty-you-can-help-providing": "Makatulongka a mangited kadagiti baro a patarus",
+ "tux-empty-nothing-new-to-proofread": "Awan ti baro a marepaso",
+ "tux-empty-you-can-review-already-proofread": "Mabalinmo ti agrepaso kadagiti patarus a rinepaso babaen dagiti sabali.",
+ "tux-empty-list-other": "Awan ti maipatarus",
+ "tux-empty-list-other-guide": "Makatulongka nga agrepaso kadagiti addan a naipatarus",
+ "tux-empty-list-other-action": "Agrepaso kadagiti patarus",
+ "tux-empty-list-other-link": "Ipakita amin dagiti mensahe",
+ "tux-editor-close-tooltip": "Irekep",
+ "tux-editor-expand-tooltip": "Palawaen",
+ "tux-editor-collapse-tooltip": "Rebbaen",
+ "tux-editor-message-tools-history": "Pakasaritaan",
+ "tux-editor-message-tools-translations": "Amin a patarus",
+ "tux-editor-loading": "Agkarkarga...",
+ "translate-search-more-languages-info": "$1 pay {{PLURAL:$1|a pagsasao|kadagiti pagsasao}}",
+ "translate-statsbar-tooltip": "$1% ti naipatarus, $2% ti narepaso",
+ "translate-statsbar-tooltip-with-fuzzy": "$1% ti naipatarus, $2% ti narepaso, $3% ti baak",
+ "translate-search-more-groups-info": "$1 pay a {{PLURAL:$1|grupo|grupgrupo}}"
+}
diff --git a/MLEB/Translate/i18n/core/io.json b/MLEB/Translate/i18n/core/io.json
new file mode 100644
index 00000000..b5fa3ba2
--- /dev/null
+++ b/MLEB/Translate/i18n/core/io.json
@@ -0,0 +1,34 @@
+{
+ "@metadata": {
+ "authors": [
+ "Malafaya",
+ "Wyvernoid"
+ ]
+ },
+ "translate": "Traduko",
+ "translate-page-group": "Grupo",
+ "translate-page-language": "Linguo",
+ "translate-page-limit": "Limito",
+ "translate-next": "Sequanta pagino",
+ "translate-prev": "Antea pagino",
+ "translate-page-edit": "redaktar",
+ "translate-edit-contribute": "kontributez",
+ "translate-edit-information": "Informo pri mesajo \"$2\" ($1)",
+ "translate-edit-in-other-languages": "Mesajo \"$1\" en altra lingui",
+ "translate-magic-cm-current": "Aktuala",
+ "translate-magic-cm-comment": "Komento:",
+ "translate-magic-cm-save": "Registragar",
+ "translate-magic-namespace": "Nomi di la nomari",
+ "translate-rc-translation-filter-only": "Montrez nur tradukuri",
+ "translate-stats-edits": "Editi",
+ "translate-stats-users": "Tradukisti",
+ "translate-statsf-scale-days": "Dii",
+ "translate-statsf-scale-hours": "Hori",
+ "translate-statsf-submit": "Previdar",
+ "translate-sidebar-alltrans": "En altra lingui",
+ "translations": "Omna tradukuri",
+ "translate-translations-messagename": "Nomo:",
+ "translate-language": "Linguo",
+ "translate-total": "Mesaji",
+ "translate-save": "Registragar ($1)"
+}
diff --git a/MLEB/Translate/i18n/core/is.json b/MLEB/Translate/i18n/core/is.json
new file mode 100644
index 00000000..fbd516db
--- /dev/null
+++ b/MLEB/Translate/i18n/core/is.json
@@ -0,0 +1,198 @@
+{
+ "@metadata": {
+ "authors": [
+ "Bjarki S",
+ "Jóna Þórunn",
+ "S.Örvarr.S",
+ "Snævar",
+ "Spacebirdy"
+ ]
+ },
+ "translate": "Þýða",
+ "translate-desc": "[[Special:Translate|Kerfissíða]] til að þýða MediaWiki og önnur verkefni",
+ "translate-taskui-view": "Sýna öll skilaboð",
+ "translate-taskui-untranslated": "Sýna óþýdd skilaboð",
+ "translate-taskui-optional": "Sýna valfrjáls skilaboð",
+ "translate-taskui-acceptqueue": "Aðeins skilaboð sem ég get merkt sem yfirfarin",
+ "translate-taskui-reviewall": "Yfirfara allar þýðingar",
+ "translate-taction-translate": "Þýða",
+ "translate-taction-proofread": "Yfirferð",
+ "translate-page-no-such-language": "Tungumálið sem þú tilgreindir var ógilt",
+ "translate-page-no-such-group": "Hópurinn sem þú tilgreindir var ógildur.",
+ "translate-page-disabled": "Þýðingar á þessu tungumáli hafa verið óvirkjaðar.\nÁstæða:\n\n<em>$1</em>",
+ "translate-page-settings-legend": "Stillingar",
+ "translate-page-group": "Hópur",
+ "translate-page-language": "Tungumál",
+ "translate-page-limit": "Takmark",
+ "translate-page-limit-option": "$1 {{PLURAL:$1|melding|meldingar}} á hverri síðu",
+ "translate-submit": "Sækja",
+ "translate-page-navigation-legend": "Flakk",
+ "translate-page-showing": "Sýni meldingar frá $1 til $2 af $3.",
+ "translate-page-showing-all": "Sýni $1 {{PLURAL:$1|melding|meldingar}}.",
+ "translate-page-showing-none": "Engar meldingar til að sýna.",
+ "translate-next": "Næsta síða",
+ "translate-prev": "Fyrri síða",
+ "translate-page-description-legend": "Upplýsingar um hópinn",
+ "translate-page-description-hasoptional-open": "Sýna valfrjáls skilaboð",
+ "translate-page-edit": "breyta",
+ "translate-ext-url": "<hr />Vefsíða: $1",
+ "translate-optional": "(valfrjálst)",
+ "translate-ignored": "(hunsað)",
+ "translate-edit-title": "Breyta \"$1\"",
+ "translate-edit-definition": "Útskýring á meldingu",
+ "translate-edit-translation": "Þýðing",
+ "translate-edit-contribute": "breyta",
+ "translate-edit-no-information": "<em>Þessi melding hefur enga skjölun.\nEf þú veist hvar eða hvernig meldingin er notuð getur þú hjálpað öðrum þýðendum með því að bæta skjölun við hana.</em>",
+ "translate-edit-information": "Upplýsingar um þessa meldingu ($1)",
+ "translate-edit-in-other-languages": "Meldingin á öðrum tungumálum",
+ "translate-edit-committed": "Núverandi þýðing í hugbúnaðinum",
+ "translate-edit-warnings": "Viðvaranir vegna ókláraðra þýðinga",
+ "translate-edit-tmsugs": "Uppástungur frá þýðingarminni og þýðingarvélum",
+ "translate-edit-tmmatch": "$1% samsvörun",
+ "translate-use-suggestion": "Skipta núverandi þýðingu út fyrir þessa uppástungu.",
+ "translate-edit-nopermission": "Þú þarft þýðenda réttindi til að þýða skilaboð.",
+ "translate-edit-askpermission": "Fá réttindi",
+ "translate-magic-submit": "Sækja",
+ "translate-magic-cm-export": "Flytja",
+ "translate-magic-cm-to-be": "Verðandi",
+ "translate-magic-cm-current": "Núverandi",
+ "translate-magic-cm-original": "Upprunalega",
+ "translate-magic-cm-comment": "Athugasemd:",
+ "translate-magic-cm-save": "Vista",
+ "translate-magic-cm-savefailed": "Vistun mistókst",
+ "translate-magic-special": "Aukanefni kerfissíðna",
+ "translate-magic-namespace": "Heiti nafnrýma",
+ "translate-magic-notsaved": "Vistun breytingarinnar þinnar mistókst!",
+ "translate-magic-errors": "Vinsamlegast lagaðu eftirfarandi {{PLURAL:$1|villu|villur}} í þýðingunni:",
+ "translate-checks-parameters": "Eftirfarandi {{PLURAL:$2|færibreyta er ekki notuð|færibreytur eru ekki notaðar}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-parameters-unknown": "Eftirfarandi {{PLURAL:$2|færibreyta er óþekkt|færibreytur eru óþekktar}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-balance": "Ójafn fjöldi {{PLURAL:$2|sviga}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links": "Eftirfarandi {{PLURAL:$2|tengill er vafasamur|$2 tenglar eru vafasamir}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links-missing": "Eftirfarandi {{PLURAL:$2|tengil|$2 tengla}} vantar:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-xhtml": "Vinsamlegast skiptu út eftirfarandi {{PLURAL:$2|tagi|tögum}} fyrir þau réttu:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-plural": "Skilgreiningin notar <nowiki>{{PLURAL:}}</nowiki> en ekki þýðingin.",
+ "translate-checks-parametersnotequal": "Fjöldi stika er {{PLURAL:$1|$1}}, en ætti að vera {{PLURAL:$2|$2}}.",
+ "translate-pref-nonewsletter": "Ekki senda mér rafrænt fréttabréf",
+ "translate-pref-editassistlang": "Aðstoðar tungumál:",
+ "translate-pref-editassistlang-help": "Listi yfir tungumálakóða, aðskildir með kommu.\nSkilaboðin eru sýnd á þessum tungumálum þegar þú þýðir skilaboð.\nSjálfvirkur listi tungumála fer eftir tungumáli þínu.",
+ "translate-pref-editassistlang-bad": "Ógildur tungumálakóði í listanum:\n<nowiki>$1</nowiki>.",
+ "right-translate-messagereview": "Yfirfara þýðingar",
+ "translate-rc-translation-filter": "Sía þýðingar:",
+ "translate-rc-translation-filter-no": "Engin síun",
+ "translate-rc-translation-filter-only": "Sýna þýðingar eingöngu",
+ "translate-rc-translation-filter-filter": "Sía út þýðingar",
+ "translate-rc-translation-filter-site": "Breytingar á skilaboðum eingöngu",
+ "translate-stats-edits": "Breytingar",
+ "translate-stats-users": "Þýðendur",
+ "translate-stats-reviewers": "Ritstjórar",
+ "translate-statsf-intro": "Þú getur búið til einfalt línurit með þessu eyðublaði.\nÖll gildi hafa efri og neðri gildi.",
+ "translate-statsf-options": "Stillingar línuritsins",
+ "translate-statsf-width": "Breidd í dílum:",
+ "translate-statsf-height": "Hæð í dílum:",
+ "translate-statsf-start": "Upphafsdagur:",
+ "translate-statsf-scale-months": "Mánuðir",
+ "translate-statsf-scale-weeks": "Vikur",
+ "translate-statsf-scale-days": "Dagar",
+ "translate-statsf-scale-hours": "Klukkutímar",
+ "translate-statsf-count-edits": "Fjöldi breytinga",
+ "translate-statsf-count-users": "Virkir þýðendur",
+ "translate-statsf-count-registrations": "Nýjir notendur",
+ "translate-statsf-language": "Listi yfir tungumálakóða, aðskildir með kommu:",
+ "translate-statsf-submit": "Forskoða",
+ "translate-tag-page-desc": "Þýðing á wiki síðunni [[$2|$1]] frá $3 ($4).",
+ "translate-sidebar-alltrans": "Á öðrum tungumálum",
+ "translations": "Allar þýðingar",
+ "translations-summary": "Sláðu inn nafn skilaboða hér fyrir neðan til að sýna allar aðgengilegar þýðingar.",
+ "translate-translations-no-message": "Skilaboðin \"$1\" eru ekki þýðanleg",
+ "translate-translations-none": "Engar þýðingar til fyrir \"$1\"",
+ "translate-translations-count": "Fann $1 {{PLURAL:$1|þýðingu|þýðingar}}.",
+ "translate-translations-fieldset-title": "Melding",
+ "translate-translations-messagename": "Nafn:",
+ "translate-translations-project": "Verkefni:",
+ "languagestats-summary": "Þessi síða sýnir tölfræði þýðinga í öllum hópum fyrir tungumálið.",
+ "languagestats-stats-for": "Þýðingar tölfræði fyrir $1 ($2).",
+ "languagestats-recenttranslations": "nýlegar þýðingar",
+ "translate-langstats-incomplete": "Sumar talnana í tölfræðinni eru ónákvæmar. Vinsamlegast endurhladdu síðuna til að fá nákvæmari tölur.",
+ "translate-langstats-expand": "sýna",
+ "translate-langstats-collapse": "fela",
+ "translate-langstats-expandall": "sýna alla",
+ "translate-langstats-collapseall": "fela alla",
+ "translate-language-code": "Tungumálakóði",
+ "translate-language-code-field-name": "Tungumálakóði:",
+ "translate-suppress-complete": "Fela fullþýdda skilaboða hópa",
+ "translate-ls-noempty": "Fela óþýdda skilaboða hópa",
+ "translate-language": "Tungumál",
+ "translate-total": "Meldingar",
+ "translate-untranslated": "Óþýddar",
+ "translate-percentage-complete": "Lokið",
+ "translate-percentage-fuzzy": "Úrelt",
+ "translate-ls-column-group": "Skilaboða hópur",
+ "translate-mgs-submit": "Sýna tölfræði",
+ "translate-mgs-column-language": "Tungumál",
+ "supportedlanguages": "Studd tungumál",
+ "supportedlanguages-summary": "Þessi síða sýnir lista yfir öll studd tungumál á {{SITENAME}},\násamt nöfnum þýðenda á því tungumáli.\nStærð þýðenda er í hlutfalli við breytingarfjölda hans.\nUndirstrikið undir nafninu gefur til kynna hversu langt sé síðan að þýðandinn hefur verið virkur.",
+ "supportedlanguages-colorlegend": "Litaskali: Síðasta þýðing fyrir $1 dögum síðan.",
+ "supportedlanguages-translators": "{{PLURAL:$2|Þýðandi|Þýðendur}}: $1",
+ "supportedlanguages-recenttranslations": "nýlegar þýðingar",
+ "supportedlanguages-count": "$1 {{PLURAL:$1|tungumál}} alls.",
+ "supportedlanguages-activity": "$1: $2 {{PLURAL:$2|breyting|breytingar}} - síðasta breyting {{PLURAL:$3|í gær|fyrir $3 dögum}} síðan",
+ "translate-save": "Vista ($1)",
+ "translate-jssti-add": "Bæta við listann",
+ "translate-js-summary": "Ágrip:",
+ "translate-js-save": "Vista",
+ "translate-js-next": "Vista og opna næstu",
+ "translate-js-nonext": "Þetta voru síðustu skilaboðin á síðunni",
+ "translate-js-skip": "Sleppa og fara yfir á næsta.",
+ "translate-js-save-failed": "Vistun mistókst. Vinsamlegast tilkynntu villuna.",
+ "translate-js-history": "Breytingaskrá þýðingar",
+ "translate-js-support": "Spyrja spurningar",
+ "translate-js-support-unsaved-warning": "Þú hefur óvistaðar þýðingar.",
+ "translate-messagereview-submit": "Merkja sem yfirfarna",
+ "translate-messagereview-progress": "Merki sem yfirfarna...",
+ "translate-messagereview-failure": "Samþykking mistókst: $1",
+ "translate-messagereview-done": "Samþykkt",
+ "translate-workflow-state-": "(ekki sett)",
+ "translate-workflowstatus": "Staða: $1",
+ "translate-workflow-set-do": "Setja",
+ "translate-workflow-set-doing": "Set...",
+ "translate-stats-workflow": "Staða",
+ "translate-dynagroup-recent-label": "Nýlegar þýðingar",
+ "translate-dynagroup-last": "Síðasta breyting eftir {{GENDER:$1|$1}}",
+ "translate-dynagroup-lastc": "Síðasta breyting eftir {{GENDER:$1|$1}} ($2)",
+ "translate-gethelp": "Hjálp",
+ "translate-msggroupselector-projects": "Skilaboða hópur",
+ "translate-msggroupselector-search-all": "Allt",
+ "translate-msggroupselector-search-recent": "Nýlegt",
+ "tux-languageselector": "Þýða á",
+ "tux-tab-all": "Allar",
+ "tux-tab-untranslated": "Óþýtt",
+ "tux-tab-outdated": "Úrelt",
+ "tux-tab-translated": "Þýtt",
+ "tux-tab-unproofread": "Óyfirfarin",
+ "tux-edit": "Breyta",
+ "tux-status-optional": "Valfrjáls",
+ "tux-status-fuzzy": "Úreld",
+ "tux-status-proofread": "Yfirfarin",
+ "tux-status-translated": "Þýdd",
+ "tux-status-saving": "Vista...",
+ "tux-status-unsaved": "Óvistuð",
+ "tux-editor-placeholder": "Þín þýðing",
+ "tux-editor-paste-original-button-label": "Líma upprunalegan texta",
+ "tux-editor-discard-changes-button-label": "Hunsa breytingar",
+ "tux-editor-save-button-label": "Vista þýðingu",
+ "tux-editor-skip-button-label": "Sleppa og yfir á næstu",
+ "tux-editor-confirm-button-label": "Staðfesta þýðingu",
+ "tux-editor-shortcut-info": "Ýttu á „$1” til að vista, „$2” til að sleppa yfir á næstu eða „$3” fyrir aðrar flýtileiðir.",
+ "tux-editor-edit-desc": "Breyta lýsingu",
+ "tux-editor-add-desc": "Bæta við lýsingu",
+ "tux-editor-suggestions-title": "Uppástungur",
+ "tux-editor-in-other-languages": "Á öðrum tungumálum",
+ "tux-editor-need-more-help": "Þarftu meiri hjálp?",
+ "tux-editor-ask-help": "Spurja um frekari upplýsingar",
+ "tux-editor-message-desc-less": "Skoða minna",
+ "tux-editor-proofreading-mode": "Villulesa",
+ "tux-editor-translate-mode": "Listi",
+ "tux-editor-proofreading-hide-own-translations": "Fela þínar þýðingar",
+ "tux-editor-proofreading-show-own-translations": "Sýna þýnar þýðingar",
+ "tux-proofread-edit-label": "Breyta"
+}
diff --git a/MLEB/Translate/i18n/core/it.json b/MLEB/Translate/i18n/core/it.json
new file mode 100644
index 00000000..53d3f89a
--- /dev/null
+++ b/MLEB/Translate/i18n/core/it.json
@@ -0,0 +1,399 @@
+{
+ "@metadata": {
+ "authors": [
+ "Amire80",
+ "Aushulz",
+ "Beta16",
+ "BrokenArrow",
+ "Civvì",
+ "Darth Kule",
+ "F. Cosoleto",
+ "Gianfranco",
+ "Klutzy",
+ "McDutchie",
+ "Melos",
+ "Nemo bis",
+ "Pietrodn",
+ "Shirayuki",
+ "VittGam",
+ "Vituzzu"
+ ]
+ },
+ "translate": "Traduzione",
+ "translate-desc": "[[Special:Translate|Pagina speciale]] per tradurre MediaWiki e non solo",
+ "translate-taskui-view": "Mostra tutti i messaggi",
+ "translate-taskui-untranslated": "Mostra solo i messaggi non tradotti",
+ "translate-taskui-optional": "Mostra i messaggi opzionali",
+ "translate-taskui-acceptqueue": "Solo i messaggi che posso revisionare",
+ "translate-taskui-reviewall": "Revisiona tutte le traduzioni",
+ "translate-taskui-export-to-file": "Esporta nel formato nativo",
+ "translate-taskui-export-as-po": "Esporta per la traduzione off-line",
+ "translate-taction-translate": "Traduci",
+ "translate-taction-proofread": "Revisiona",
+ "translate-taction-lstats": "Statistiche della lingua",
+ "translate-taction-mstats": "Statistiche del gruppo di messaggi",
+ "translate-taction-export": "Esporta",
+ "translate-taction-disabled": "Questa azione è disabilitata su questo wiki.",
+ "translate-page-no-such-language": "La lingua specificata non è valida.",
+ "translate-page-no-such-group": "Il gruppo specificato non è valido.",
+ "translate-page-disabled": "Le traduzioni in questa lingua per questo gruppo sono state disabilitate. Motivo:\n\n<em>$1</em>",
+ "translate-language-disabled": "Le traduzioni verso questa lingua sono disabilitate.",
+ "translate-page-settings-legend": "Impostazioni",
+ "translate-page-group": "Gruppo",
+ "translate-page-language": "Lingua",
+ "translate-page-limit": "Limite",
+ "translate-page-limit-option": "$1 {{PLURAL:$1|messaggio|messaggi}} per pagina",
+ "translate-submit": "Riporta",
+ "translate-page-navigation-legend": "Navigazione",
+ "translate-page-showing": "Mostrati i messaggi da $1 a $2 di $3.",
+ "translate-page-showing-all": "{{PLURAL:$1|Mostrato un messaggio|Mostrati $1 messaggi}}.",
+ "translate-page-showing-none": "Nessun messaggio da mostrare.",
+ "translate-next": "Pagina successiva",
+ "translate-prev": "Pagina precedente",
+ "translate-page-description-legend": "Informazioni sul gruppo",
+ "translate-page-description-hasoptional": "Questo gruppo di messaggi contiene dei messaggi opzionali.\nI messaggi opzionali dovrebbero essere tradotti solo quando la lingua ha dei requisiti speciali come il mancato utilizzo degli spazi o la traslitterazione dei nomi propri. $1",
+ "translate-page-description-hasoptional-open": "Mostra i messaggi opzionali.",
+ "translate-page-edit": "modifica",
+ "translate-ext-url": "<hr />Sito web: $1",
+ "translate-optional": "(opzionale)",
+ "translate-ignored": "(ignorato)",
+ "translate-edit-title": "Modifica \"$1\"",
+ "translate-edit-definition": "Definizione del messaggio",
+ "translate-edit-translation": "Traduzione",
+ "translate-edit-contribute": "contribuisci",
+ "translate-edit-no-information": "<em>Questo messaggio non ha documentazione.\nSe sai dove o come è usato questo messaggio, puoi aiutare gli altri traduttori aggiungendo la documentazione a questo messaggio.</em>",
+ "translate-edit-information": "Informazioni sul messaggio ($1)",
+ "translate-edit-in-other-languages": "Messaggio in altre lingue",
+ "translate-edit-committed": "Traduzione attuale nel software",
+ "translate-edit-warnings": "Avvisi sulle traduzioni incomplete",
+ "translate-edit-tmsugs": "Suggerimenti dalla memoria delle traduzioni",
+ "translate-edit-tmmatch-source": "Testo di origine per la traduzione: $1",
+ "translate-edit-tmmatch": "$1&nbsp;% di corrispondenza",
+ "translate-use-suggestion": "Sostituisci la traduzione presente con questo suggerimento.",
+ "translate-edit-nopermission": "Hai bisogno dei diritti di traduzione per tradurre i messaggi.",
+ "translate-edit-askpermission": "Ottieni autorizzazione",
+ "translate-magic-pagename": "Traduzione estesa di MediaWiki",
+ "translate-magic-help": "Puoi tradurre gli alias delle pagine speciali, le parole magiche e i nomi dei namespace.\n\nGli alias delle pagine speciali e le parole magiche possono avere più traduzioni.\nLe traduzioni sono separate da una virgola (,).\nI namespace possono avere solo una traduzione.\n\nTradurre il namespace di discussione delle pagine di progetto <code>$1 talk</code> può essere complicato. <code>$1</code> viene sostituito con il nome del sito (per esempio <code>{{ns:project_talk}}</code>).\nSe non è possibile formare un'espressione valida nella tua lingua senza cambiare il nome del sito, per favore contatta il [[Support]].\n\nDevi essere un traduttore per salvare le modifiche.\nLe modifiche non vengono salvate finché non clicchi sul pulsante \"Salva\" sotto.",
+ "translate-magic-module": "Modulo:",
+ "translate-magic-submit": "Riporta",
+ "translate-magic-cm-export": "Esporta",
+ "translate-magic-nothing-to-export": "Non c'è nulla da esportare.",
+ "translate-magic-cm-to-be": "Nuovo",
+ "translate-magic-cm-current": "Attuale",
+ "translate-magic-cm-original": "Originale",
+ "translate-magic-cm-comment": "Commento:",
+ "translate-magic-cm-save": "Salva",
+ "translate-magic-cm-updatedusing": "Aggiornato usando [[Special:AdvancedTranslate|{{int:Translate-magic-pagename}}]]",
+ "translate-magic-cm-savefailed": "Salvataggio fallito",
+ "translate-magic-special": "Alias delle pagine speciali",
+ "translate-magic-words": "Parole magiche",
+ "translate-magic-namespace": "Nomi dei namespace",
+ "translate-magic-notsaved": "La modifica non è stata salvata!",
+ "translate-magic-errors": "Correggere {{PLURAL:$1|il seguente errore|i seguenti errori}} nelle traduzioni:",
+ "translate-magic-saved": "Le modifiche sono state salvate con successo.",
+ "translate-checks-parameters": "{{PLURAL:$2|Il seguente parametro non è stato usato|I seguenti parametri non sono stati usati}}: <strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-parameters-unknown": "{{PLURAL:$2|Il seguente parametro è sconosciuto|I seguenti parametri sono sconosciuti}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-balance": "C'è un numero di {{PLURAL:$2|parentesi|parentesi}} dispari: <strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links": "{{PLURAL:$2|Il seguente collegamento è problematico|I seguenti $2 collegamenti sono problematici}}: <strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links-missing": "{{PLURAL:$2|Il seguente collegamento è mancante|I seguenti $2 collegamenti sono mancanti}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-xhtml": "Sostituire {{PLURAL:$2|il marcatore seguente|i marcatori seguenti}} con quelli corretti: <strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-plural": "La definizione usa <nowiki>{{PLURAL:}}</nowiki> ma la traduzione no.",
+ "translate-checks-plural-forms": "<nowiki>{{PLURAL:}}</nowiki> è stato usato con {{PLURAL:$1|una forma|$1 forme}}, ma {{PLURAL:$2|è accettata solo una forma|sono accettate $2 forme}} (a parte le forme 0= e 1=).",
+ "translate-checks-plural-dupe": "<nowiki>{{PLURAL:}}</nowiki> contiene una forma duplicata. <nowiki>{{PLURAL:$1|città|città}}</nowiki> dovrebbe essere scritto come <nowiki>{{PLURAL:$1|città}}</nowiki>.",
+ "translate-checks-pagename": "Namespace cambiato rispetto alla definizione",
+ "translate-checks-format": "Questa traduzione non segue la definizione o ha una sintassi non valida: $1",
+ "translate-checks-escape": "I seguenti cambi di codice potrebbero essere accidentali: <strong>$1</strong>",
+ "translate-checks-parametersnotequal": "Il numero dei parametri è {{PLURAL:$1|$1}}; dovrebbe essere {{PLURAL:$2|$2}}.",
+ "translate-checks-malformed": "<nowiki>$1</nowiki> non è corretto.",
+ "translate-checks-fudforum-syntax": "In questo progetto usare <nowiki>$1</nowiki> invece di <nowiki>$2</nowiki>.",
+ "translate-pref-nonewsletter": "Non mandarmi la newsletter per e-mail",
+ "translate-pref-editassistlang": "Lingue di confronto:",
+ "prefs-translate": "Opzioni di traduzione",
+ "translate-pref-editassistlang-help": "Codici delle lingue separati da virgola.\nLe traduzioni di un messaggio in queste lingue sono mostrate durante la traduzione.\nL'elenco predefinito (default) delle lingue dipende dalla propria lingua.",
+ "translate-pref-editassistlang-bad": "Codice lingua non valido nell'elenco:\n<nowiki>$1</nowiki>.",
+ "right-translate": "Modifica usando l'interfaccia di traduzione",
+ "right-translate-manage": "Gestisce gruppi di messaggi",
+ "action-translate-manage": "gestire i gruppi di messaggi",
+ "right-translate-import": "Importa traduzioni non in linea",
+ "action-translate-import": "importare le traduzioni non in linea",
+ "right-translate-messagereview": "Revisiona traduzioni",
+ "right-translate-groupreview": "Cambia lo stato del processo di traduzione dei gruppi di messaggi",
+ "translate-rc-translation-filter": "Filtra le traduzioni:",
+ "translate-rc-translation-filter-no": "Non fare niente",
+ "translate-rc-translation-filter-only": "Mostra solo le traduzioni",
+ "translate-rc-translation-filter-filter": "Elimina le traduzioni",
+ "translate-rc-translation-filter-site": "Solo i cambiamenti ai messaggi del sito",
+ "translationstats": "Statistiche di traduzione",
+ "translate-stats-edits": "Modifiche",
+ "translate-stats-users": "Traduttori",
+ "translate-stats-registrations": "Registrazioni",
+ "translate-stats-reviews": "Versioni",
+ "translate-stats-reviewers": "Revisori",
+ "translate-statsf-intro": "È possibile generare semplici statistiche con questo modulo. Tutti i valori hanno limiti massimi e minimi.",
+ "translate-statsf-options": "Opzioni del grafico",
+ "translate-statsf-width": "Larghezza in pixel:",
+ "translate-statsf-height": "Altezza in pixel:",
+ "translate-statsf-days": "Periodo di tempo in giorni:",
+ "translate-statsf-start": "Data di inizio:",
+ "translate-statsf-scale": "Un punto ogni:",
+ "translate-statsf-scale-months": "Mese",
+ "translate-statsf-scale-weeks": "Settimana",
+ "translate-statsf-scale-days": "Giorno",
+ "translate-statsf-scale-hours": "Ora",
+ "translate-statsf-count": "Misura:",
+ "translate-statsf-count-edits": "Numero di modifiche",
+ "translate-statsf-count-users": "Traduttori attivi",
+ "translate-statsf-count-registrations": "Nuovi utenti",
+ "translate-statsf-count-reviews": "Revisioni di traduzioni",
+ "translate-statsf-count-reviewers": "Revisori",
+ "translate-statsf-language": "Elenco dei codici delle lingue separati da virgola:",
+ "translate-statsf-group": "Elenco dei codici dei gruppi separati da virgola:",
+ "translate-statsf-submit": "Anteprima",
+ "translate-tag-category": "Pagine traducibili",
+ "translate-tag-page-desc": "Traduzione della pagina wiki [[$2|$1]] da $3 ($4).",
+ "translate-sidebar-alltrans": "In altre lingue",
+ "translations": "Tutte le traduzioni",
+ "translations-summary": "Inserire di seguito il nome di un messaggio per mostrare tutte le traduzioni presenti.",
+ "translate-translations-no-message": "\"$1\" non è un messaggio traducibile",
+ "translate-translations-none": "Non sono presenti traduzioni per \"$1\"",
+ "translate-translations-count": "{{PLURAL:$1|Trovata una traduzione|Trovate $1 traduzioni}}.",
+ "translate-translations-fieldset-title": "Messaggio",
+ "translate-translations-messagename": "Nome:",
+ "translate-translations-project": "Progetto:",
+ "translate-translations-including-no-param": "Specificare una chiave di messaggio valida nella sottopagina-parametro",
+ "translate-translations-history-short": "h",
+ "languagestats": "Statistiche della lingua",
+ "languagestats-summary": "Questa pagina mostra le statistiche delle traduzioni per tutti i gruppi di messaggi di una lingua.",
+ "messagegroupstats-summary": "Questa pagina mostra le statistiche per i gruppi di messaggi.",
+ "languagestats-stats-for": "Statistiche delle traduzioni per $1 ($2).",
+ "languagestats-recenttranslations": "traduzioni recenti",
+ "translate-langstats-incomplete": "Alcune statistiche di questa pagina sono incomplete, ricaricare la pagina per averne di più complete.",
+ "translate-langstats-expand": "espandi",
+ "translate-langstats-collapse": "comprimi",
+ "translate-langstats-expandall": "espandi tutto",
+ "translate-langstats-collapseall": "comprimi tutto",
+ "translate-language-code": "Codice lingua",
+ "translate-language-code-field-name": "Codice lingua:",
+ "translate-suppress-complete": "Nascondi i gruppi di messaggi completamente tradotti",
+ "translate-ls-noempty": "Nascondi i gruppi di messaggi non tradotti affatto",
+ "translate-language": "Lingua",
+ "translate-total": "Messaggi",
+ "translate-untranslated": "Non tradotti",
+ "translate-percentage-complete": "Completati",
+ "translate-percentage-fuzzy": "Da aggiornare",
+ "translate-languagestats-overall": "Tutti i gruppi di messaggi insieme",
+ "translate-ls-submit": "Mostra statistiche",
+ "translate-ls-column-group": "Gruppo di messaggi",
+ "translate-mgs-pagename": "Statistiche del gruppo di messaggi",
+ "translate-mgs-fieldset": "Mostra preferenze",
+ "translate-mgs-group": "Gruppo di messaggi:",
+ "translate-mgs-nocomplete": "Non visualizzare lingue che hanno la traduzione completata",
+ "translate-mgs-noempty": "Non visualizzare lingue che non hanno traduzioni",
+ "translate-mgs-submit": "Mostra statistiche",
+ "translate-mgs-column-language": "Lingua",
+ "translate-mgs-totals": "Tutte le lingue insieme",
+ "translate-mgs-invalid-group": "Il gruppo indicato $1 non esiste.",
+ "translate-mgs-nothing": "Nulla da mostrare per le statistiche richieste.",
+ "supportedlanguages": "Lingue mantenute",
+ "supportedlanguages-summary": "Questa pagina mostra un elenco di tutte le lingue mantenute da {{SITENAME}}, insieme ai nomi dei traduttori che hanno lavorato su quella lingua. Il nome di un traduttore appare di dimensioni maggiori in proporzione al numero di modifiche che ha apportato, mentre il colore della sottolineatura indica quanto tempo è passato dalla sua ultima attività.",
+ "supportedlanguages-colorlegend": "Legenda dei colori: ultima traduzione $1 giorni fa.",
+ "supportedlanguages-translators": "{{PLURAL:$2|{{GENDER:$3|Traduttore|Traduttrice}}|Traduttori}}: $1",
+ "supportedlanguages-recenttranslations": "traduzioni recenti",
+ "supportedlanguages-count": "$1 {{PLURAL:$1|lingua|lingue}} in totale.",
+ "supportedlanguages-activity": "$1: $2 {{PLURAL:$2|modifica|modifiche}} - ultima modifica $3 {{PLURAL:$3|giorno|giorni}} fa",
+ "translate-save": "Salva ($1)",
+ "translate-jssti-add": "Aggiungi all'elenco",
+ "managemessagegroups": "Gestione del gruppo di messaggi",
+ "translate-smg-notallowed": "Non sei autorizzato a eseguire questa azione.",
+ "translate-smg-nochanges": "Non ci sono modifiche da elaborare.",
+ "translate-smg-submit": "Invia le modifiche per l'elaborazione",
+ "translate-smg-submitted": "Le definizioni dei messaggi sono state aggiornate. Le modifiche saranno elaborate in background.",
+ "translate-smg-more": "Ci saranno ulteriori cambiamenti da trattare dopo l'invio di queste modifiche.",
+ "translate-smg-left": "Contenuto del messaggio nel wiki",
+ "translate-smg-right": "Modifiche in arrivo",
+ "translate-manage-import-diff": "Messaggio $1 | Azioni: $2",
+ "translate-manage-import-new": "Nuovo messaggio $1",
+ "translate-manage-import-deleted": "Cancellato messaggio $1",
+ "translate-manage-action-import": "Importa",
+ "translate-manage-action-conflict": "Importa e richiedi aggiornamento",
+ "translate-manage-action-ignore": "Ignora",
+ "translate-manage-action-fuzzy": "Importa e richiedi aggiornamento",
+ "translate-manage-nochanges": "Non ci sono cambiamenti nelle definizioni dei messaggi per questo gruppo.",
+ "translate-manage-nochanges-other": "Non c'era alcuna novità per questa lingua.\nUsa il collegamento sottostante per rivedere i dettagli del gruppo.",
+ "translate-manage-inconsistent": "È stata rilevata un'incoerenza nella richiesta.\nCerca i cambiamenti e riprova.\nDettagli: $1",
+ "translate-manage-toolong": "Il tempo massimo di elaborazione di $1 {{PLURAL:$1|secondo|secondi}} si è esaurito.\nInviare nuovamente il modulo per proseguire nell'elaborazione.",
+ "translate-manage-import-summary": "Importazione di una nuova versione da una fonte esterna",
+ "translate-manage-conflict-summary": "Importazione di una nuova versione da una fonte esterna.\nDa controllare.",
+ "translate-manage-fuzzy-summary": "La definizione del messaggio è cambiata",
+ "translate-manage-submit": "Esegui",
+ "translate-manage-intro-other": "Di seguito sono elencati i cambiamenti alle traduzioni nella lingua $1.\nControlla le modifiche e scegli l'azione da eseguire per ciascun messaggio.\nSe scegli di ignorare i cambiamenti, questa azione sarà solo temporanea.",
+ "translate-manage-import-ok": "Importato: $1",
+ "translate-manage-import-done": "Importazione completa!",
+ "importtranslations": "Importa traduzioni",
+ "translate-import-from-local": "Carica file locale:",
+ "translate-import-load": "Carica file",
+ "translate-import-err-dl-failed": "Impossibile recuperare il file:\n$1",
+ "translate-import-err-ul-failed": "Il caricamento del file non è riuscito",
+ "translate-import-err-invalid-title": "Il nome del file <nowiki>$1</nowiki> non è valido.",
+ "translate-import-err-no-such-file": "Il file <nowiki>$1</nowiki> non esiste o non è stato caricato a livello locale.",
+ "translate-import-err-stale-group": "Il gruppo di messaggi a cui appartiene questo file non esiste.",
+ "translate-import-err-no-headers": "Il file non è un file Gettext correttamente formattato per l'estensione Translate:\nImpossibile determinare il gruppo di messaggi e la lingua dalle intestazioni del file.",
+ "translate-import-err-warnings": "Il file non è ben formattato, assicurarsi che il proprio editor non rimuova i campi msgctxt.\nDettagli: $1",
+ "translate-js-summary": "Oggetto:",
+ "translate-js-save": "Salva",
+ "translate-js-next": "Salva e passa al successivo",
+ "translate-js-nonext": "Questo era l'ultimo messaggio in questa pagina.",
+ "translate-js-skip": "Passa al successivo",
+ "translate-js-save-failed": "Salvataggio non riuscito. Si prega di segnalare l'errore.",
+ "translate-js-history": "Cronologia traduzione",
+ "translate-js-support": "Fai una domanda",
+ "translate-js-support-title": "Richiesta d'assistenza nel caso non si trovino sufficienti informazioni per tradurre questo messaggio.",
+ "translate-js-support-unsaved-warning": "Ci sono traduzioni non salvate.",
+ "translate-gs-pos": "Pos.",
+ "translate-gs-code": "Codice",
+ "translate-gs-continent": "Continente",
+ "translate-gs-speakers": "Diffusione",
+ "translate-gs-score": "Punteggio",
+ "translate-gs-multiple": "Più di uno",
+ "translate-gs-count": "Numero di lingue",
+ "translate-gs-total": "Totale",
+ "translate-gs-avgscore": "Punteggio medio",
+ "translate-documentation-language": "Documentazione del messaggio",
+ "translate-searchprofile": "Traduzioni",
+ "translate-searchprofile-tooltip": "Cerca in tutte le traduzioni",
+ "translate-search-languagefilter": "Filtro per lingua",
+ "translate-search-nofilter": "Nessun filtraggio",
+ "translate-messagereview-submit": "Contrassegna come revisionata",
+ "translate-messagereview-progress": "Marcando come revisionata...",
+ "translate-messagereview-failure": "Marcatura come revisionata non riuscita: $1",
+ "translate-messagereview-done": "Revisionata",
+ "translate-messagereview-reviews": "Revisionata da {{PLURAL:$1|un utente|$1 utenti}}",
+ "translate-messagereview-reviewswithyou": "Revisionata da {{PLURAL:$1|te|$1 utenti, te compreso}}",
+ "api-error-invalidrevision": "Traduzione non trovata",
+ "api-error-unknownmessage": "Messaggio non trovato",
+ "api-error-fuzzymessage": "La traduzione è segnata come da aggiornare",
+ "api-error-owntranslation": "Non è possibile segnare le proprie traduzioni come revisionate",
+ "translate-messagereview-no-fuzzy": "Le traduzioni da aggiornare non possono essere segnate come revisionate.",
+ "translate-messagereview-no-own": "Non è possibile segnare le proprie traduzioni come revisionate.",
+ "translate-messagereview-doit": "Accetta questa traduzione come revisionata.",
+ "log-name-translationreview": "Revisioni delle traduzioni",
+ "log-description-translationreview": "Registro di tutte le revisioni delle traduzioni e dei gruppi di messaggi.",
+ "logentry-translationreview-message": "$1 {{GENDER:$2|ha revisionato}} la traduzione di $3",
+ "logentry-translationreview-group": "$1 {{GENDER:$2|ha cambiato}} lo stato delle traduzioni in $4 di $3 da $6 a $7",
+ "group-translate-sandboxed": "Traduttori non approvati",
+ "group-translate-sandboxed-member": "{{GENDER:$1|traduttore non approvato|traduttrice non approvata|traduttore/trice non approvato/a}}",
+ "right-translate-sandboxmanage": "Gestisce gli utenti in modalità sandbox",
+ "action-translate-sandboxmanage": "gestire gli utenti in modalità sandbox",
+ "right-translate-sandboxaction": "Esegue azioni autorizzate per gli utenti in modalità sandbox",
+ "action-translate-sandboxaction": "eseguire azioni autorizzate per gli utenti in modalità sandbox",
+ "translate-workflow-state-": "(disattivato)",
+ "translate-workflowstatus": "Stato: $1",
+ "translate-workflow-set-do": "Modifica",
+ "translate-workflow-set-doing": "Modifica in corso",
+ "translate-workflow-set-done": "Modificato!",
+ "translate-workflow-set-error-alreadyset": "Lo stato richiesto è identico allo stato corrente.",
+ "translate-workflow-autocreated-summary": "Creazione automatica della pagina per lo stato del flusso di lavoro $1",
+ "translate-stats-workflow": "Stato",
+ "translate-workflowgroup-label": "Stati del flusso di lavoro",
+ "translate-workflowgroup-desc": "Questo gruppo messaggi mostra gli stati del flusso di lavoro per le traduzioni.\nGli stati sono definiti nella variabile di configurazione $wgTranslateWorkflowStates.",
+ "translate-dynagroup-recent-label": "Traduzioni recenti",
+ "translate-dynagroup-recent-desc": "Questo gruppo messaggi mostra tutte le ultime traduzioni in questa lingua.\nUtile per l'attività di revisione.",
+ "translate-dynagroup-additions-label": "Aggiunte recenti",
+ "translate-dynagroup-additions-desc": "Questo gruppo messaggi mostra i messaggi nuovi o modificati.",
+ "translate-dynagroup-by": "Traduzione di {{GENDER:$1|$1}}",
+ "translate-dynagroup-byc": "Traduzione di {{GENDER:$1|$1}} ($2)",
+ "translate-dynagroup-last": "Ultima modifica di {{GENDER:$1|$1}}",
+ "translate-dynagroup-lastc": "Ultima modifica di {{GENDER:$1|$1}} ($2)",
+ "translate-gethelp": "Aiuto",
+ "translate-msggroupselector-projects": "Gruppo di messaggi",
+ "translate-msggroupselector-search-placeholder": "Ricerca gruppi",
+ "translate-msggroupselector-search-all": "Tutti",
+ "translate-msggroupselector-search-recent": "Recenti",
+ "translate-msggroupselector-view-subprojects": "$1 {{PLURAL:$1|sotto-gruppo|sotto-gruppi}}",
+ "tux-languageselector": "Traduci in",
+ "tux-tab-all": "Tutti",
+ "tux-tab-untranslated": "Non tradotti",
+ "tux-tab-outdated": "Da aggiornare",
+ "tux-tab-translated": "Tradotti",
+ "tux-tab-unproofread": "Da revisionare",
+ "tux-edit": "Modifica",
+ "tux-status-optional": "Opzionale",
+ "tux-status-fuzzy": "Da aggiornare",
+ "tux-status-proofread": "Revisionata",
+ "tux-status-translated": "Tradotto",
+ "tux-status-saving": "Salvataggio...",
+ "tux-status-unsaved": "Non salvate",
+ "tux-editor-placeholder": "La tua traduzione",
+ "tux-editor-paste-original-button-label": "Incolla il testo sorgente",
+ "tux-editor-discard-changes-button-label": "Annulla modifiche",
+ "tux-editor-save-button-label": "Salva traduzione",
+ "tux-editor-skip-button-label": "Passa al successivo",
+ "tux-editor-cancel-button-label": "Annulla",
+ "tux-editor-confirm-button-label": "Conferma traduzione",
+ "tux-editor-shortcut-info": "Premi \"$1\" per salvare, \"$2\" per passare al messaggio successivo o \"$3\" per altre scorciatoie.",
+ "tux-editor-edit-desc": "Modifica documentazione",
+ "tux-editor-add-desc": "Aggiungi documentazione",
+ "tux-editor-suggestions-title": "Suggerimenti",
+ "tux-editor-in-other-languages": "In altre lingue",
+ "tux-editor-need-more-help": "Hai bisogno di aiuto?",
+ "tux-editor-ask-help": "Chiedi per maggiori informazioni",
+ "tux-editor-tm-match": "$1&nbsp;% di corrispondenza",
+ "tux-warnings-more": "$1 {{PLURAL:$1|altro|altri}}",
+ "tux-warnings-hide": "nascondi",
+ "tux-editor-save-failed": "Errore durante il salvataggio della traduzione: $1",
+ "tux-editor-n-uses": "usato $1 {{PLURAL:$1|volta|volte}}",
+ "tux-editor-message-desc-more": "Mostra altri",
+ "tux-editor-message-desc-less": "Mostra meno",
+ "tux-editor-clear-translated": "Nascondi tradotti",
+ "tux-editor-proofreading-mode": "Revisiona",
+ "tux-editor-translate-mode": "Elenca",
+ "tux-editor-proofreading-hide-own-translations": "Nascondi le tue traduzioni",
+ "tux-editor-proofreading-show-own-translations": "Mostra le tue traduzioni",
+ "tux-proofread-action-tooltip": "Contrassegna come revisionata",
+ "tux-proofread-edit-label": "Modifica",
+ "tux-editor-page-mode": "Pagina",
+ "tux-editor-outdated-warning": "Questa traduzione deve essere aggiornata.",
+ "tux-editor-outdated-warning-diff-link": "Mostra le differenze",
+ "tux-editor-doc-editor-placeholder": "Documentazione del messaggio",
+ "tux-editor-doc-editor-save": "Salva la documentazione",
+ "tux-editor-doc-editor-cancel": "Annulla",
+ "tux-messagetable-more-messages": "$1 {{PLURAL:$1|altro messaggio|altri messaggi}}",
+ "tux-messagetable-loading-messages": "Carico {{PLURAL:$1|messaggio|messaggi}}...",
+ "tux-message-filter-placeholder": "Filtra la lista",
+ "tux-message-filter-result": "{{PLURAL:$1|Trovato|Trovati}} $1 {{PLURAL:$1|risultato|risultati}} per \"$2\"",
+ "tux-message-filter-advanced-button": "Ricerca avanzata",
+ "tux-message-filter-optional-messages-label": "Messaggi opzionali",
+ "tux-proofread-translated-by-self": "Tradotto da te",
+ "tux-empty-list-all": "Questo gruppo di messaggio è vuoto",
+ "tux-empty-list-all-guide": "Selezionare un gruppo di messaggi diverso da tradurre",
+ "tux-translate-page-no-such-group": "<strong>Il gruppo indicato non esiste.</strong> Seleziona un gruppo messaggi differente.",
+ "tux-empty-list-translated": "Nessun messaggio tradotto",
+ "tux-empty-list-translated-guide": "Puoi aiutare a tradurre",
+ "tux-empty-list-translated-action": "Traduci",
+ "tux-empty-no-messages-to-display": "Nessun messaggio da visualizzare.",
+ "tux-empty-there-are-optional": "Ci sono messaggi opzionali non mostrati nell'elenco",
+ "tux-empty-show-optional-messages": "Mostra i messaggi opzionali",
+ "tux-empty-no-outdated-messages": "Nessun messaggio da aggiornare",
+ "tux-empty-nothing-to-proofread": "Non c'è nulla da revisionare",
+ "tux-empty-you-can-help-providing": "Puoi aiutare fornendo nuove traduzioni",
+ "tux-empty-nothing-new-to-proofread": "Niente di nuovo da revisionare",
+ "tux-empty-you-can-review-already-proofread": "È possibile rivedere le traduzioni già revisionate da altri.",
+ "tux-empty-list-other": "Niente da tradurre",
+ "tux-empty-list-other-guide": "Puoi aiutare a rivedere le traduzioni esistenti",
+ "tux-empty-list-other-action": "Revisiona traduzioni",
+ "tux-empty-list-other-link": "Mostra tutti i messaggi",
+ "tux-editor-close-tooltip": "Chiudi",
+ "tux-editor-expand-tooltip": "Espandi",
+ "tux-editor-collapse-tooltip": "Comprimi",
+ "tux-editor-message-tools-history": "Cronologia",
+ "tux-editor-message-tools-delete": "Cancella",
+ "tux-editor-message-tools-translations": "Tutte le traduzioni",
+ "tux-editor-loading": "Caricamento in corso...",
+ "translate-search-more-languages-info": "$1 {{PLURAL:$1|altra lingua|altre lingue}}",
+ "translate-statsbar-tooltip": "$1% tradotti, $2% revisionati",
+ "translate-statsbar-tooltip-with-fuzzy": "$1% tradotti, $2% revisionati, $3% da aggiornare",
+ "translate-search-more-groups-info": "$1 {{PLURAL:$1|altro gruppo|altri gruppi}}",
+ "translate-ulsdep-title": "Errore di configurazione",
+ "translate-ulsdep-body": "L'estensione Translate dipende dall'[https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:UniversalLanguageSelector estensione Universal Language Selector].",
+ "tux-session-expired": "Non hai effettuato l'accesso. Accedi in una scheda separata; o in alternativa copia la traduzione non salvata, accedi, e ritorna in questa pagina."
+}
diff --git a/MLEB/Translate/i18n/core/ja.json b/MLEB/Translate/i18n/core/ja.json
new file mode 100644
index 00000000..77197ebe
--- /dev/null
+++ b/MLEB/Translate/i18n/core/ja.json
@@ -0,0 +1,402 @@
+{
+ "@metadata": {
+ "authors": [
+ "Akaniji",
+ "Aotake",
+ "Fryed-peach",
+ "Hosiryuhosi",
+ "JtFuruhata",
+ "Klutzy",
+ "Marine-Blue",
+ "Naohiro19",
+ "Ohgi",
+ "Schu",
+ "Shirayuki",
+ "Whym",
+ "青子守歌",
+ "아라",
+ "Rxy"
+ ]
+ },
+ "translate": "翻訳",
+ "translate-desc": "MediaWiki やその他のものを翻訳するための[[Special:Translate|特別ページ]]",
+ "translate-taskui-view": "全メッセージを表示",
+ "translate-taskui-untranslated": "未翻訳メッセージを表示",
+ "translate-taskui-optional": "省略可能なメッセージを表示",
+ "translate-taskui-acceptqueue": "自分が査読できるメッセージのみ",
+ "translate-taskui-reviewall": "すべての翻訳を査読",
+ "translate-taskui-export-to-file": "ネイティブ形式で書き出し",
+ "translate-taskui-export-as-po": "オフライン翻訳のために書き出し",
+ "translate-taction-translate": "翻訳",
+ "translate-taction-proofread": "査読",
+ "translate-taction-lstats": "言語別翻訳状況",
+ "translate-taction-mstats": "メッセージ群別の翻訳状況",
+ "translate-taction-export": "書き出し",
+ "translate-taction-disabled": "このウィキではこの操作は無効になっています。",
+ "translate-page-no-such-language": "言語の指定が正しくありません。",
+ "translate-page-no-such-group": "群の指定が正しくありません。",
+ "translate-page-disabled": "この群では、この言語への翻訳は停止されています。\n理由:\n\n<em>$1</em>",
+ "translate-language-disabled": "この言語への翻訳は無効になっています。",
+ "translate-page-settings-legend": "設定",
+ "translate-page-group": "群",
+ "translate-page-language": "言語",
+ "translate-page-limit": "表示数",
+ "translate-page-limit-option": "ページごとに$1{{PLURAL:$1|個のメッセージ}}",
+ "translate-submit": "取得",
+ "translate-page-navigation-legend": "ナビゲーション",
+ "translate-page-showing": "$3 件のメッセージのうち、$1 件目から $2 件目までを表示しています。",
+ "translate-page-showing-all": "$1 {{PLURAL:$1|件のメッセージ}}を表示しています。",
+ "translate-page-showing-none": "表示するメッセージがありません。",
+ "translate-page-paging-links": "[ $1 ] [ $2 ]",
+ "translate-next": "次のページ",
+ "translate-prev": "前のページ",
+ "translate-page-description-legend": "この群についての情報",
+ "translate-page-description-hasoptional": "このメッセージ群には省略可能なメッセージがあります。\n省略可能なメッセージは、その言語で特別な必要性 (空白の除去、固有名詞の翻字など) がある場合のみ翻訳してください。$1",
+ "translate-page-description-hasoptional-open": "省略可能なメッセージを表示する。",
+ "translate-page-edit": "編集",
+ "translate-ext-url": "<hr />ウェブサイト: $1",
+ "translate-optional": "(省略可能)",
+ "translate-ignored": "(翻訳無視)",
+ "translate-edit-title": "「$1」を編集",
+ "translate-edit-definition": "メッセージ定義",
+ "translate-edit-translation": "翻訳",
+ "translate-edit-contribute": "編集",
+ "translate-edit-no-information": "<em>このメッセージについての説明文はありません。\nこのメッセージがどこでどのように使用されているか知っている場合は、説明文を投稿して他の翻訳者を助けてください。</em>",
+ "translate-edit-information": "メッセージについての情報 ($1)",
+ "translate-edit-in-other-languages": "他言語でのメッセージ",
+ "translate-edit-committed": "現在ソフトウェア上で採用されている翻訳メッセージ",
+ "translate-edit-warnings": "不完全な翻訳に対する警告",
+ "translate-edit-tmsugs": "翻訳メモリーや機械翻訳による提案",
+ "translate-edit-tmmatch-source": "翻訳元の文章: $1",
+ "translate-edit-tmmatch": "$1%の一致",
+ "translate-use-suggestion": "この現在の翻訳を、この翻訳提案に置き換えます。",
+ "translate-edit-nopermission": "メッセージを翻訳する権限が必要です。",
+ "translate-edit-askpermission": "権限を取得",
+ "translate-magic-pagename": "拡張MediaWiki翻訳",
+ "translate-magic-help": "特別ページへのエイリアス、マジックワード、名前空間名を翻訳できます。\n\n特別ページへのエイリアスとマジックワードには複数の翻訳を当てられます。\n複数の翻訳がある場合はカンマ (,) で区切ってください。\n名前空間名には 1 つの翻訳のみを当てられます。\n\nプロジェクトのトーク名前空間 <code>$1 talk</code> の翻訳は複雑かもしれません。\n<code>$1</code> はプロジェクトのサイト名に置換されます (例: <code>{{ns:project_talk}}</code>)。\nあなたの言語において、サイト名の変更なしでは正しく表現できない場合は、[[Support]] にお問い合わせください。\n\nあなたが翻訳者であれば、変更を保存できます。\n下の保存ボタンをクリックするまで、変更内容は保存されません。",
+ "translate-magic-module": "モジュール:",
+ "translate-magic-submit": "取得",
+ "translate-magic-cm-export": "書き出し",
+ "translate-magic-nothing-to-export": "書き出せるものはありません。",
+ "translate-magic-cm-to-be": "変更後",
+ "translate-magic-cm-current": "現在",
+ "translate-magic-cm-original": "元の内容",
+ "translate-magic-cm-comment": "編集内容の要約:",
+ "translate-magic-cm-save": "保存",
+ "translate-magic-cm-updatedusing": "[[Special:AdvancedTranslate|{{int:Translate-magic-pagename}}]]による更新に成功しました",
+ "translate-magic-cm-savefailed": "保存に失敗しました",
+ "translate-magic-special": "特別ページの別名",
+ "translate-magic-words": "マジックワード",
+ "translate-magic-namespace": "名前空間名",
+ "translate-magic-notsaved": "編集は保存されませんでした!",
+ "translate-magic-errors": "翻訳内の以下の{{PLURAL:$1|エラー}}を修正してください:",
+ "translate-magic-saved": "変更を保存しました。",
+ "translate-checks-parameters": "以下の{{PLURAL:$2|パラメーター}}が使用されていません:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-parameters-unknown": "以下の{{PLURAL:$2|パラメーター}}が未定義です:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-balance": "{{PLURAL:$2|括弧}}の個数が一致していません:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links": "以下の{{PLURAL:$2|リンク|​&#32;$2 個のリンク}}に問題点があります:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links-missing": "以下の{{PLURAL:$2|リンク|​&#32;$2 個のリンク}}がありません:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-xhtml": "以下の{{PLURAL:$2|タグ}}を正しいものに書き換えてください:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-plural": "定義に<nowiki>{{PLURAL:}}</nowiki>がありますが、翻訳にはありません。",
+ "translate-checks-plural-forms": "<nowiki>{{PLURAL:}}</nowiki> で {{PLURAL:$1|$1 形式}}を指定しましたが、{{PLURAL:$2|1 形式のみ|$2 形式}}に対応しています (0= 形式および 1= 形式を除く)。",
+ "translate-checks-plural-dupe": "<nowiki>{{PLURAL:}}</nowiki> での指定が重複しています。<nowiki>{{PLURAL:$1|sheep|sheep}}</nowiki> であれば <nowiki>{{PLURAL:$1|sheep}}</nowiki> と書いてください。",
+ "translate-checks-pagename": "名前空間が変更されており、定義と異なっています",
+ "translate-checks-format": "この翻訳は定義に沿っていない、または無効な構文を使用しています: $1",
+ "translate-checks-escape": "以下のエスケープは偶発的なものかもしれません: <strong>$1</strong>",
+ "translate-checks-parametersnotequal": "引数の数が{{PLURAL:$1|$1}}個ですが、{{PLURAL:$2|$2}}個である必要があります。",
+ "translate-checks-malformed": "<nowiki>$1</nowiki> の形式に誤りがあります。",
+ "translate-checks-fudforum-syntax": "このプロジェクトでは<nowiki>$2</nowiki>の代わりに<nowiki>$1</nowiki>を使用します。",
+ "translate-pref-nonewsletter": "メールのニュースレターを受け取らない",
+ "translate-pref-editassistlang": "補助言語:",
+ "prefs-translate": "翻訳設定",
+ "translate-pref-editassistlang-help": "言語コードをカンマ区切りで列挙します。\n翻訳中に、これらの言語での翻訳が表示されます。\n既定の言語一覧は、自身の言語により変化します。",
+ "translate-pref-editassistlang-bad": "無効な言語コードを含んでいます:\n<nowiki>$1</nowiki>",
+ "right-translate": "翻訳用インターフェイスを使用して編集",
+ "right-translate-manage": "メッセージ群を管理",
+ "action-translate-manage": "メッセージ群の管理",
+ "right-translate-import": "オフラインでの翻訳を取り込み",
+ "action-translate-import": "オフラインでの翻訳の取り込み",
+ "right-translate-messagereview": "翻訳を査読",
+ "right-translate-groupreview": "メッセージ群のワークフローの状態を変更",
+ "translate-rc-translation-filter": "翻訳を絞り込み:",
+ "translate-rc-translation-filter-no": "絞り込まない",
+ "translate-rc-translation-filter-only": "翻訳のみ表示",
+ "translate-rc-translation-filter-filter": "翻訳を除外",
+ "translate-rc-translation-filter-site": "サイトのメッセージの変更のみ",
+ "translationstats": "翻訳の統計",
+ "translate-stats-edits": "編集",
+ "translate-stats-users": "翻訳者",
+ "translate-stats-registrations": "登録",
+ "translate-stats-reviews": "査読",
+ "translate-stats-reviewers": "査読者",
+ "translate-statsf-intro": "このフォームで簡単な統計を生成できます。すべての数値には上限と下限があります。",
+ "translate-statsf-options": "グラフのオプション",
+ "translate-statsf-width": "幅 (ピクセル単位):",
+ "translate-statsf-height": "高さ (ピクセル単位):",
+ "translate-statsf-days": "日数:",
+ "translate-statsf-start": "開始日時:",
+ "translate-statsf-scale": "粒度:",
+ "translate-statsf-scale-months": "月",
+ "translate-statsf-scale-weeks": "週",
+ "translate-statsf-scale-days": "日",
+ "translate-statsf-scale-hours": "時間",
+ "translate-statsf-count": "尺度:",
+ "translate-statsf-count-edits": "編集回数",
+ "translate-statsf-count-users": "活動中の翻訳者",
+ "translate-statsf-count-registrations": "新しい利用者",
+ "translate-statsf-count-reviews": "翻訳査読回数",
+ "translate-statsf-count-reviewers": "査読者",
+ "translate-statsf-language": "言語コードを列挙 (カンマ区切り):",
+ "translate-statsf-group": "メッセージ群コードを列挙 (カンマ区切り):",
+ "translate-statsf-submit": "プレビュー",
+ "translate-tag-category": "翻訳可能なページ",
+ "translate-tag-page-desc": "ウィキページ [[$2|$1]] に対する $3 ($4) からの翻訳です。",
+ "translate-sidebar-alltrans": "他言語での翻訳",
+ "translations": "全翻訳結果",
+ "translations-summary": "既存のすべての翻訳を表示するには下欄にメッセージ名を入力してください。",
+ "translate-translations-no-message": "「$1」は翻訳対象メッセージではありません",
+ "translate-translations-none": "「$1」には翻訳がありません",
+ "translate-translations-count": "{{PLURAL:$1|$1 件の翻訳}}が見つかりました。",
+ "translate-translations-fieldset-title": "メッセージ",
+ "translate-translations-messagename": "名前:",
+ "translate-translations-project": "プロジェクト:",
+ "translate-translations-including-no-param": "下位ページ引数に有効なメッセージキーを指定してください",
+ "translate-translations-history-short": "履歴",
+ "languagestats": "言語別翻訳状況",
+ "languagestats-summary": "このページでは指定した言語におけるメッセージの翻訳状況をメッセージ群ごとに表示しています。",
+ "messagegroupstats-summary": "このページでは、メッセージ群の統計を表示します。",
+ "languagestats-stats-for": "$1 ($2) の翻訳統計です。",
+ "languagestats-recenttranslations": "最近の翻訳",
+ "translate-langstats-incomplete": "このページの統計情報の一部は不完全です。より多くの統計情報を取得するために再読み込みしてください。",
+ "translate-langstats-expand": "展開",
+ "translate-langstats-collapse": "折り畳む",
+ "translate-langstats-expandall": "すべて展開",
+ "translate-langstats-collapseall": "すべて折り畳む",
+ "translate-language-code": "言語コード",
+ "translate-language-code-field-name": "言語コード:",
+ "translate-suppress-complete": "翻訳が完了したメッセージ群を表示しない",
+ "translate-ls-noempty": "全く翻訳されていないメッセージ群を表示しない",
+ "translate-language": "言語",
+ "translate-total": "メッセージ数",
+ "translate-untranslated": "未翻訳",
+ "translate-percentage-complete": "完了",
+ "translate-percentage-fuzzy": "要修正",
+ "translate-languagestats-overall": "合計",
+ "translate-ls-submit": "統計を表示",
+ "translate-ls-column-group": "メッセージ群",
+ "translate-mgs-pagename": "メッセージ群別の翻訳状況",
+ "translate-mgs-fieldset": "表示設定",
+ "translate-mgs-group": "メッセージ群:",
+ "translate-mgs-nocomplete": "翻訳が完了した言語を表示しない",
+ "translate-mgs-noempty": "翻訳が1つもない言語を表示しない",
+ "translate-mgs-submit": "統計を表示",
+ "translate-mgs-column-language": "言語",
+ "translate-mgs-totals": "すべての言語",
+ "translate-mgs-invalid-group": "指定された群$1は存在しません。",
+ "translate-mgs-nothing": "要求された統計には表示するものがありません。",
+ "supportedlanguages": "サポートしている言語",
+ "supportedlanguages-summary": "このページには、{{SITENAME}}が対応している全言語の一覧と、\nその言語で活動している翻訳者の名前を表示しています。\n翻訳者の名前は翻訳編集の数が多いほど大きく表示されます。\n下線の色はその翻訳者の最近の活動度を表しています。",
+ "supportedlanguages-colorlegend": "色の凡例: 最後の翻訳が $1 日前",
+ "supportedlanguages-portallink": "[$1] $2 - $3",
+ "supportedlanguages-portallink-nocldr": "[$1] $2",
+ "supportedlanguages-translators": "{{PLURAL:$2|{{GENDER:$3|翻訳者}}|翻訳者}}: $1",
+ "supportedlanguages-recenttranslations": "最近の翻訳",
+ "supportedlanguages-count": "合計 $1 {{PLURAL:$1|言語}}",
+ "supportedlanguages-activity": "$1: $2 {{PLURAL:$2|回の編集}}・$3 {{PLURAL:$3|日}}前に最終編集",
+ "translate-save": "保存 ($1)",
+ "translate-jssti-add": "追加",
+ "managemessagegroups": "メッセージ群の管理",
+ "translate-smg-notallowed": "この操作を行うことは許可されていません。",
+ "translate-smg-nochanges": "処理する変更はありません。",
+ "translate-smg-submit": "処理するために変更を送信",
+ "translate-smg-submitted": "メッセージの定義が更新されました。変更をバックグラウンドで処理しています。",
+ "translate-smg-more": "これらの変更を送信した後にさらに処理するべき変更があります。",
+ "translate-smg-left": "ウィキ内のメッセージ本文",
+ "translate-smg-right": "新着の差分",
+ "translate-manage-import-diff": "メッセージ $1 | 操作: $2",
+ "translate-manage-import-new": "新しいメッセージ $1",
+ "translate-manage-import-deleted": "削除されたメッセージ $1",
+ "translate-manage-action-import": "取り込む",
+ "translate-manage-action-conflict": "取り込んで要修正にする",
+ "translate-manage-action-ignore": "無視",
+ "translate-manage-action-fuzzy": "翻訳を取り込んで要修正の印を付ける",
+ "translate-manage-nochanges": "この群のメッセージの定義には変更はありません。",
+ "translate-manage-nochanges-other": "この言語が対応すべき変更はありませんでした。\n下のリンクをクリックするとメッセージ群の詳細画面に戻ります。",
+ "translate-manage-inconsistent": "リクエスト内で矛盾を検出しました。\n変更点を確認してから、再度試してください。\n詳細: $1",
+ "translate-manage-toolong": "処理時間の最大値である$1秒を超過しました。処理を続行するにはフォームを再投稿してください。",
+ "translate-manage-import-summary": "外部ソースから新しい版を取り込み",
+ "translate-manage-conflict-summary": "外部ソースから新しい版を取り込み中。\n確認してください。",
+ "translate-manage-fuzzy-summary": "メッセージの定義が変更されました",
+ "translate-manage-submit": "実行",
+ "translate-manage-intro-other": "以下は言語 $1 での翻訳の変更の一覧です。\nそれぞれの更新について、変更を精査して、行いたい操作を選択してください。\n変更を無視することを選択した場合、この操作は一時的なものに留まります。",
+ "translate-manage-import-ok": "取り込みました: $1",
+ "translate-manage-import-done": "取り込みました。",
+ "importtranslations": "翻訳の取り込み",
+ "translate-import-from-local": "ローカルファイルをアップロード:",
+ "translate-import-load": "ファイル読み込み",
+ "translate-import-err-dl-failed": "ファイルを取得できません:\n$1",
+ "translate-import-err-ul-failed": "ファイルのアップロードに失敗しました",
+ "translate-import-err-invalid-title": "入力したファイル名 <nowiki>$1</nowiki> は無効です。",
+ "translate-import-err-no-such-file": "ファイル <nowiki>$1</nowiki> は存在しないか、ローカルにアップロードされていません。",
+ "translate-import-err-stale-group": "このファイルが所属するメッセージ群は存在しません。",
+ "translate-import-err-no-headers": "ファイルが Translate 拡張機能の形式に正しく適応した gettext ファイルではありません。\nファイル ヘッダーからメッセージ群と言語を決定できませんでした。",
+ "translate-import-err-warnings": "このファイルは形式が正しくありません。\nあなたが使用したエディターが msgctxt フィールドを除去していないか確認してください。\n詳細: $1",
+ "translate-js-summary": "要約:",
+ "translate-js-save": "保存",
+ "translate-js-next": "保存して次を開く",
+ "translate-js-nonext": "このページの最後のメッセージに達しました。",
+ "translate-js-skip": "次へスキップ",
+ "translate-js-save-failed": "保存に失敗しました。このエラーを報告してください。",
+ "translate-js-history": "翻訳履歴",
+ "translate-js-support": "サポートに質問",
+ "translate-js-support-title": "このメッセージを正しく翻訳するための情報が足りない場合は助けを求めてください。",
+ "translate-js-support-unsaved-warning": "保存していない翻訳があります。",
+ "translate-gs-pos": "順位",
+ "translate-gs-code": "コード",
+ "translate-gs-continent": "大陸",
+ "translate-gs-speakers": "話者数",
+ "translate-gs-score": "点数",
+ "translate-gs-multiple": "複数",
+ "translate-gs-count": "件数",
+ "translate-gs-total": "合計",
+ "translate-gs-avgscore": "平均点",
+ "translate-documentation-language": "メッセージについての説明文",
+ "translate-searchprofile": "訳文",
+ "translate-searchprofile-tooltip": "すべての翻訳から検索",
+ "translate-search-languagefilter": "言語で絞り込み:",
+ "translate-search-nofilter": "すべて表示",
+ "translate-messagereview-submit": "査読済にする",
+ "translate-messagereview-progress": "査読済にしています...",
+ "translate-messagereview-failure": "査読済にできませんでした: $1",
+ "translate-messagereview-done": "査読済",
+ "translate-messagereview-reviews": "{{PLURAL:$1|$1人の利用者}}が査読済",
+ "translate-messagereview-reviewswithyou": "{{PLURAL:$1|あなた|あなたを含む$1人の利用者}}が査読済",
+ "api-error-invalidrevision": "翻訳が見つかりませんでした",
+ "api-error-unknownmessage": "メッセージが見つかりませんでした",
+ "api-error-fuzzymessage": "翻訳に要修正の印が付いています",
+ "api-error-owntranslation": "自分の翻訳は査読済にできません",
+ "translate-messagereview-no-fuzzy": "要修正の印が付いている翻訳は査読済にできません。",
+ "translate-messagereview-no-own": "自分の翻訳は査読済にできません。",
+ "translate-messagereview-doit": "この翻訳に査読済の印を付けます。",
+ "group-translate-proofr.css": "/* ここに記述したCSSは翻訳査読者のみに影響します */",
+ "group-translate-proofr.js": "/* ここに記述したJSは翻訳査読者のみに影響します */",
+ "log-name-translationreview": "翻訳査読記録",
+ "log-description-translationreview": "翻訳とメッセージ群に対するすべての査読の記録",
+ "logentry-translationreview-message": "$1 が $3 の翻訳を{{GENDER:$2|査読}}",
+ "logentry-translationreview-group": "$1 が $3 の $4 の翻訳の状態を $6 から $7 に{{GENDER:$2|変更}}",
+ "group-translate-sandboxed": "未承認の翻訳者",
+ "group-translate-sandboxed-member": "{{GENDER:$1|未承認の翻訳者}}",
+ "right-translate-sandboxmanage": "サンドボックス利用者を管理",
+ "action-translate-sandboxmanage": "サンドボックス利用者の管理",
+ "right-translate-sandboxaction": "サンドボックス利用者に許可された操作を実行",
+ "action-translate-sandboxaction": "サンドボックス利用者に許可された操作の実行",
+ "translate-workflow-state-": "(解除)",
+ "translate-workflowstatus": "進捗状況: $1",
+ "translate-workflow-set-do": "設定",
+ "translate-workflow-set-doing": "設定中...",
+ "translate-workflow-set-done": "設定完了!",
+ "translate-workflow-set-error-alreadyset": "要求された進捗状況は、現在の進捗状況と同じです。",
+ "translate-workflow-autocreated-summary": "作業進捗状況$1のページの自動作成",
+ "translate-stats-workflow": "進捗状況",
+ "translate-workflowgroup-label": "作業進捗状況",
+ "translate-workflowgroup-desc": "このメッセージ群では翻訳作業の進捗状況を示します。\n進捗状況は、設定変数 $wgTranslateWorkflowStates で定義されています。",
+ "translate-dynagroup-recent-label": "最近の翻訳",
+ "translate-dynagroup-recent-desc": "このメッセージ群ではこの言語への最近の翻訳をすべて表示します。\n査読作業に便利です。",
+ "translate-dynagroup-additions-label": "最近の追加",
+ "translate-dynagroup-additions-desc": "このメッセージ群では新たに追加または変更されたメッセージを表示します。",
+ "translate-dynagroup-by": "{{GENDER:$1|$1}}による翻訳",
+ "translate-dynagroup-byc": "{{GENDER:$1|$1}}による翻訳 ($2)",
+ "translate-dynagroup-last": "{{GENDER:$1|$1}}による最終更新",
+ "translate-dynagroup-lastc": "{{GENDER:$1|$1}}による最終更新 ($2)",
+ "translate-gethelp": "ヘルプ",
+ "translate-msggroupselector-projects": "メッセージ群",
+ "translate-msggroupselector-search-placeholder": "検索するメッセージ群",
+ "translate-msggroupselector-search-all": "すべて",
+ "translate-msggroupselector-search-recent": "最近のもの",
+ "translate-msggroupselector-view-subprojects": "$1 {{PLURAL:$1|件の下位群}}を閲覧",
+ "tux-languageselector": "翻訳先",
+ "tux-tab-all": "すべて",
+ "tux-tab-untranslated": "未翻訳",
+ "tux-tab-outdated": "要修正",
+ "tux-tab-translated": "翻訳済",
+ "tux-tab-unproofread": "未査読",
+ "tux-edit": "編集",
+ "tux-status-optional": "省略可能",
+ "tux-status-fuzzy": "要修正",
+ "tux-status-proofread": "査読済",
+ "tux-status-translated": "翻訳済",
+ "tux-status-saving": "保存中...",
+ "tux-status-unsaved": "未保存",
+ "tux-editor-placeholder": "あなたの翻訳を入力",
+ "tux-editor-paste-original-button-label": "原文を貼り付け",
+ "tux-editor-discard-changes-button-label": "変更内容を破棄",
+ "tux-editor-save-button-label": "翻訳を保存",
+ "tux-editor-skip-button-label": "次へスキップ",
+ "tux-editor-cancel-button-label": "キャンセル",
+ "tux-editor-confirm-button-label": "翻訳を確認",
+ "tux-editor-shortcut-info": "保存するには「$1」を、次のメッセージへスキップするには「$2」を、他のショートカットキーについては「$3」を押してください",
+ "tux-editor-edit-desc": "説明文を編集",
+ "tux-editor-add-desc": "説明文を追加",
+ "tux-editor-suggestions-title": "提案",
+ "tux-editor-in-other-languages": "他言語での翻訳",
+ "tux-editor-need-more-help": "助けが必要ですか?",
+ "tux-editor-ask-help": "詳細について質問する",
+ "tux-editor-tm-match": "$1%の一致",
+ "tux-warnings-more": "{{PLURAL:$1|他 $1 件}}",
+ "tux-warnings-hide": "非表示",
+ "tux-editor-save-failed": "翻訳の保存に失敗しました: $1",
+ "tux-editor-n-uses": "$1 {{PLURAL:$1|回}}使用",
+ "tux-editor-message-desc-more": "続きを表示",
+ "tux-editor-message-desc-less": "折り畳む",
+ "tux-editor-clear-translated": "翻訳を非表示",
+ "tux-editor-proofreading-mode": "査読",
+ "tux-editor-translate-mode": "一覧",
+ "tux-editor-proofreading-hide-own-translations": "自分の翻訳を非表示",
+ "tux-editor-proofreading-show-own-translations": "自分の翻訳を表示",
+ "tux-proofread-action-tooltip": "査読済の印を付ける",
+ "tux-proofread-edit-label": "編集",
+ "tux-editor-page-mode": "ページ",
+ "tux-editor-outdated-warning": "この翻訳は修正が必要かもしれません。",
+ "tux-editor-outdated-warning-diff-link": "差分を表示",
+ "tux-editor-doc-editor-placeholder": "メッセージについての説明文",
+ "tux-editor-doc-editor-save": "説明文を保存",
+ "tux-editor-doc-editor-cancel": "キャンセル",
+ "tux-messagetable-more-messages": "他 $1 {{PLURAL:$1|件のメッセージ}}",
+ "tux-messagetable-loading-messages": "{{PLURAL:$1|メッセージ}}を読み込み中...",
+ "tux-message-filter-placeholder": "絞り込み条件を入力",
+ "tux-message-filter-result": "「$2」の検索結果 $1 {{PLURAL:$1|件}}",
+ "tux-message-filter-advanced-button": "高度な検索",
+ "tux-message-filter-optional-messages-label": "省略可能なメッセージ",
+ "tux-proofread-translated-by-self": "あなたが翻訳",
+ "tux-empty-list-all": "このメッセージ群は空です",
+ "tux-empty-list-all-guide": "翻訳する別のメッセージ群を選択してください",
+ "tux-translate-page-no-such-group": "<strong>指定したメッセージ群は存在しません。</strong>別のメッセージ群を選択してください。",
+ "tux-empty-list-translated": "翻訳済みメッセージはありません",
+ "tux-empty-list-translated-guide": "翻訳で貢献することもできます",
+ "tux-empty-list-translated-action": "翻訳",
+ "tux-empty-no-messages-to-display": "表示できるメッセージがありません。",
+ "tux-empty-there-are-optional": "省略可能なメッセージがありますが、一覧に表示されていません",
+ "tux-empty-show-optional-messages": "省略可能なメッセージを表示",
+ "tux-empty-no-outdated-messages": "要修正のメッセージはありません",
+ "tux-empty-nothing-to-proofread": "査読できるものはありません",
+ "tux-empty-you-can-help-providing": "新たに翻訳して貢献することもできます",
+ "tux-empty-nothing-new-to-proofread": "新たに査読できるものはありません",
+ "tux-empty-you-can-review-already-proofread": "他の利用者が既に査読した翻訳も、あなたは査読できます。",
+ "tux-empty-list-other": "翻訳できるものはありません",
+ "tux-empty-list-other-guide": "既存の翻訳の査読で貢献することもできます",
+ "tux-empty-list-other-action": "翻訳を査読",
+ "tux-empty-list-other-link": "全メッセージを表示",
+ "tux-editor-close-tooltip": "閉じる",
+ "tux-editor-expand-tooltip": "展開する",
+ "tux-editor-collapse-tooltip": "折り畳む",
+ "tux-editor-message-tools-history": "履歴",
+ "tux-editor-message-tools-delete": "削除",
+ "tux-editor-message-tools-translations": "全言語の翻訳",
+ "tux-editor-loading": "読み込み中...",
+ "translate-search-more-languages-info": "他 $1 {{PLURAL:$1|言語}}",
+ "translate-statsbar-tooltip": "$1% 翻訳済み、$2% 査読済",
+ "translate-statsbar-tooltip-with-fuzzy": "$1% 翻訳済み、$2% 査読済、$3% 要修正",
+ "translate-search-more-groups-info": "他 $1 {{PLURAL:$1|メッセージ群}}",
+ "translate-ulsdep-body": "Translate 拡張機能は [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:UniversalLanguageSelector Universal Language Selector 拡張機能]を必要とします。",
+ "tux-session-expired": "ログインしていない状態になっています。別のタブでログインしてください。できない場合は、未保存の翻訳をコピーしておいて、ログインしてこのページに戻ってきてください。"
+}
diff --git a/MLEB/Translate/i18n/core/jam.json b/MLEB/Translate/i18n/core/jam.json
new file mode 100644
index 00000000..21785608
--- /dev/null
+++ b/MLEB/Translate/i18n/core/jam.json
@@ -0,0 +1,41 @@
+{
+ "@metadata": {
+ "authors": [
+ "Yocahuna"
+ ]
+ },
+ "translate": "Chransliet",
+ "translate-desc": "[[Special:Translate|Special page]] fi chransliet MediaWiki ahn biyan",
+ "translate-page-no-such-language": "Spesifai langwij ehn invalid.",
+ "translate-page-no-such-group": "Spesifai gruup ehn invalid.",
+ "translate-page-disabled": "Chranslieshan tu dis langwij ina dis gruup disiebl.\nRiizn:\n\n<em>$1</em>",
+ "translate-page-settings-legend": "Setndem",
+ "translate-page-group": "Gruup",
+ "translate-page-language": "Langwij",
+ "translate-page-limit": "Limit",
+ "translate-page-limit-option": "$1 {{PLURAL:$1|mechiz|mechiz}} a piej",
+ "translate-submit": "Fech",
+ "translate-page-navigation-legend": "Navigieshan",
+ "translate-page-showing": "Mechiz frahn $1 tu $2 a $3 a shuo.",
+ "translate-page-showing-all": "A shuo $1 {{PLURAL:$1|mechiz|mechiz}}.",
+ "translate-page-showing-none": "No mechiz fi shuo.",
+ "translate-next": "Nex piej",
+ "translate-prev": "Priivos piej",
+ "translate-page-description-legend": "Infamieshan bout di gruup",
+ "translate-page-edit": "edit",
+ "translate-ext-url": "<hr />Websait: $1",
+ "translate-optional": "(apshanal)",
+ "translate-ignored": "(ignuor)",
+ "translate-edit-title": "Edit \"$1\"",
+ "translate-edit-definition": "Mechiz definishan",
+ "translate-edit-contribute": "kanchribiut",
+ "translate-edit-no-information": "''Dis mechiz naa no dakiumentieshan.\nEf yu nuo we ar ou dis mechiz yuuz, yu kiahn elp ada chranslieta bai ad dakiumentieshan tu dis mechiz.''",
+ "translate-edit-information": "Infamieshan bout mechiz \"$2\" ($1)",
+ "translate-edit-in-other-languages": "Mechiz \"$1\" in ada langwij",
+ "translate-edit-committed": "Korant chranslieshan ina saafwier",
+ "translate-edit-warnings": "Waanin bout inkompliit chranslieshan",
+ "translate-edit-tmsugs": "Sojeshan frahn chranslieshan memari",
+ "translate-edit-tmmatch": "$1% mach",
+ "translate-use-suggestion": "Insoert dis sojeshan ina di chranslieshan ieria. Dis riplies aal korant kantent.",
+ "translate-magic-pagename": "Extendid MediaWiki chranslieshan"
+}
diff --git a/MLEB/Translate/i18n/core/jbo.json b/MLEB/Translate/i18n/core/jbo.json
new file mode 100644
index 00000000..04f373ae
--- /dev/null
+++ b/MLEB/Translate/i18n/core/jbo.json
@@ -0,0 +1,12 @@
+{
+ "@metadata": {
+ "authors": [
+ "Gleki"
+ ]
+ },
+ "translate-edit-in-other-languages": "lo notci poi se bangu lo drata",
+ "translate-rc-translation-filter": "pagrygau lo xe fanva",
+ "translate-sidebar-alltrans": "bau lo drata",
+ "translate-language": "lo bangu",
+ "translate-js-support": "ko retsku"
+}
diff --git a/MLEB/Translate/i18n/core/jv.json b/MLEB/Translate/i18n/core/jv.json
new file mode 100644
index 00000000..b236f8c1
--- /dev/null
+++ b/MLEB/Translate/i18n/core/jv.json
@@ -0,0 +1,271 @@
+{
+ "@metadata": {
+ "authors": [
+ "Kaganer",
+ "Meursault2004",
+ "NoiX180",
+ "Pras",
+ "Bennylin"
+ ]
+ },
+ "translate": "Pertalna/Terjemahna",
+ "translate-desc": "[[Special:Translate|Kaca astaméwa]] kanggo mertal MediaWiki lan liyané",
+ "translate-taskui-view": "Tuduhaké kabèh layang",
+ "translate-taskui-untranslated": "Tuduhaké layang sing durung diterjemahaké",
+ "translate-taskui-optional": "Tuduhaké layang pilihan",
+ "translate-taskui-acceptqueue": "Namung layang sing tak tampa",
+ "translate-taskui-reviewall": "Ulas kabèh terjemahan",
+ "translate-taskui-export-to-file": "Èkspor nèng format basa asli",
+ "translate-taskui-export-as-po": "Èkspor kanggo terjemahan offline",
+ "translate-taction-translate": "Terjemahaké",
+ "translate-taction-proofread": "Korèksi",
+ "translate-taction-lstats": "Statistik basa",
+ "translate-taction-mstats": "Statistik klompok layang",
+ "translate-taction-export": "Èkspor",
+ "translate-taction-disabled": "Laku iki dipatèni nèng wiki iki.",
+ "translate-page-no-such-language": "Basa sing dipilih ora absah.",
+ "translate-page-no-such-group": "Grup sing dipilih ora absah.",
+ "translate-page-disabled": "Penerjemahan jroning basa iki wis dinon-aktifaké. Alesan:\n\n<em>$1</em>",
+ "translate-language-disabled": "Terjemahan kanggo basa iki dipatèni.",
+ "translate-page-settings-legend": "Pangaturan",
+ "translate-page-group": "Kelompok",
+ "translate-page-language": "Basa",
+ "translate-page-limit": "Limit (wates)",
+ "translate-page-limit-option": "$1 {{PLURAL:$1|pesen|pesen}} per kaca",
+ "translate-submit": "Jupuk",
+ "translate-page-navigation-legend": "Navigasi",
+ "translate-page-showing": "Nuduhaké pesen $1 nganti $2 saka $3.",
+ "translate-page-showing-all": "Nuduhaké $1 {{PLURAL:$1|pesen|pesen}}.",
+ "translate-page-showing-none": "Ora ana pesen sing bisa dituduhaké.",
+ "translate-next": "Kaca sabanjuré",
+ "translate-prev": "Kaca sadurungé",
+ "translate-page-description-legend": "Informasi ngenani grup utawa kelompok",
+ "translate-page-description-hasoptional": "Klompok layang iki kaisi layang pilihan.\nLayang pilihan namung bisa diterjemahaké nalika basa Sampéyan nduwèni kabutuhan kusus\nkaya ora nganggo spasi utawa ngalihaksarakaké jeneng dhiri. $1",
+ "translate-page-description-hasoptional-open": "Tuduhaké layang pilihan.",
+ "translate-page-edit": "sunting",
+ "translate-ext-url": "<hr />Situs wèb: $1",
+ "translate-optional": "(opsional)",
+ "translate-ignored": "(dilirwakaké)",
+ "translate-edit-title": "Sunting \"$1\"",
+ "translate-edit-definition": "Définisi pesen",
+ "translate-edit-translation": "Terjamahan",
+ "translate-edit-contribute": "awèh kontribusi",
+ "translate-edit-no-information": "''Pesen iki ora nduwé dokumèntasi. Menawa panjenengan ngerti kepriyé pesen iki dienggo, mangga panjenengan bisa nulungi para panerjemah liyané mawa nambahaké dokumentasi ing pesen iki.''",
+ "translate-edit-information": "Informasi bab layang ($1)",
+ "translate-edit-in-other-languages": "Pesen ing basa liya",
+ "translate-edit-committed": "Pertalan saiki ing perangkat lunak",
+ "translate-edit-warnings": "Pèngetan perkara pertalan sing ora pepak",
+ "translate-edit-tmsugs": "Saran saka mèmori terjemahan lan terjemahan mesin",
+ "translate-edit-tmmatch-source": "Tèks sumber terjemahan: $1",
+ "translate-edit-tmmatch": "$1% cocok",
+ "translate-use-suggestion": "Ganti terjemahan saiki nganggo sing disaranaké iki.",
+ "translate-edit-nopermission": "Sampéyan butuh idin kanggo nerjemahaké layang.",
+ "translate-edit-askpermission": "Njaluk idin",
+ "translate-magic-pagename": "Pangambanan pertalan MediaWiki",
+ "translate-magic-help": "Panjenengan bisa nerjemahaké alias kanggo kaca istiméwa, tembung magis, lan jeneng bilik-jeneng.\n\nAlias kanggo kaca istiméwa lan tembung magis bisa nduwèni luwih saka siji terjemahan.\nSiji lan sijiné kudu dipisahaké nganggo tandha koma (,).\nBilik jeneng mung bisa duwé siji terjemahan.\n\nJroning nerjemahaké bilik-jeneng <code>$1 talk</code> kuwi istiméwa. <code>$1</code> digantèkaké nganggo jeneng situs (conto <code>{{ns:project_talk}}</code>).\nYèn basa panjenengan ora mungkinaké gawé èksprèsi sing sah tanpa ngganti jeneng situs, mangga hubungi salah siji pangembang.\n\nPanjenengan perlu dadi anggota klompok penerjemah kanggo nyimpen owah-owahan.\nOwah-owahan ora bakal disimpen nganti panjenengan ngeklik tombol simpen ing ngisor.",
+ "translate-magic-module": "Modul:",
+ "translate-magic-submit": "Jupuk",
+ "translate-magic-cm-export": "Èkspor",
+ "translate-magic-nothing-to-export": "Ora ana sing kudu dièkspor.",
+ "translate-magic-cm-to-be": "Dadi",
+ "translate-magic-cm-current": "Saiki",
+ "translate-magic-cm-original": "Asli",
+ "translate-magic-cm-comment": "Komentar:",
+ "translate-magic-cm-save": "Simpen",
+ "translate-magic-cm-updatedusing": "Dimutakiraké nganggo [[Special:AdvancedTranslate|{{int:Translate-magic-pagename}}]]",
+ "translate-magic-cm-savefailed": "Gagal disimpen",
+ "translate-magic-special": "Sesinglon kaca astamiwa",
+ "translate-magic-words": "Tembung-tembung magis",
+ "translate-magic-namespace": "Jeneng bilik nama",
+ "translate-magic-notsaved": "Suntingan Sampéyan wis disimpen!",
+ "translate-magic-errors": "Mangga tuntasaké {{PLURAL:$1|kasalahan|}} nèng terjemahan iki:",
+ "translate-magic-saved": "Owah-owahan Sampéyan suksès disimpen.",
+ "translate-checks-parameters": "{{PLURAL:$2|parameter|parameter-parameter}} iki ora dianggo:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-parameters-unknown": "{{PLURAL:$2|Parameter|Parameter-parameter}} iki ora dikenal:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-balance": "Cacahing {{PLURAL:$2|pangapit|pangapit-pangapit}} ora seimbang:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links": "{{PLURAL:$2|Pranala|Pranala-pranala}} iki nduwèni masalah:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links-missing": "{{PLURAL:$2|Pranala|Pranala-pranala}} iki ilang:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-xhtml": "Mangga ganti {{PLURAL:$2|tag|tag-tag}} iki nganggo tag sing cocog:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-plural": "Dhéfinisi migunakaké <nowiki>{{PLURAL:}}</nowiki> nanging terjemahané ora.",
+ "translate-checks-pagename": "Bilik jeneng owah saka dhéfinisiné",
+ "translate-checks-format": "Terjemahan iki ora manut definisiné utawa nduwèni sintaks sing ora sah: $1",
+ "translate-checks-parametersnotequal": "Itungan paramèter {{PLURAL:$1|$1}}; kuduné {{PLURAL:$2|$2}}.",
+ "translate-checks-fudforum-syntax": "Anggo <nowiki>$1</nowiki> tinimbang <nowiki>$2</nowiki> nèng proyèk iki.",
+ "translate-pref-nonewsletter": "Aja ngirimi aku jurnal warta e-mail",
+ "translate-pref-editassistlang": "Basa panyengkuyung:",
+ "prefs-translate": "Pilihan terjemahan",
+ "translate-pref-editassistlang-help": "Daptar kodhé basa dipisahaké mawa koma.\nTerjemahan layang nèng basa iki dituduhaké nalika Sampéyan nerjemehaké.\nDaptar basa gawan gumantung saka basa Sampéyan.",
+ "translate-pref-editassistlang-bad": "Kodhé basa ora sah nèng daptar:\n<nowiki>$1</nowiki>.",
+ "right-translate": "Nyunting nganggo antarmuka pertalan",
+ "right-translate-manage": "Tata klompok layang",
+ "action-translate-manage": "tata klompok layang",
+ "right-translate-import": "Impor terjemahan offline",
+ "action-translate-import": "impor terjemahan offline",
+ "right-translate-messagereview": "Ulas terjemahan",
+ "translate-rc-translation-filter": "Filter terjemahan:",
+ "translate-rc-translation-filter-no": "Ora difilter",
+ "translate-rc-translation-filter-only": "Tampilaké mung terjemahan waé",
+ "translate-rc-translation-filter-filter": "Tampilaké saliyané terjemahan",
+ "translate-rc-translation-filter-site": "Mung owah-owahan ing pesen situs waé",
+ "translationstats": "Statistik penerjemahan",
+ "translate-stats-edits": "Suntingan",
+ "translate-stats-users": "Penerjemah",
+ "translate-stats-registrations": "Pandaptaran",
+ "translate-stats-reviews": "Ulasan",
+ "translate-stats-reviewers": "Pangulas",
+ "translate-statsf-intro": "Pajenengan bisa nggawé statistik prasaja migunakaké formulir iki. Kabèh angka nduwèni wates ndhuwur lan ngisor.",
+ "translate-statsf-options": "Opsi grafik",
+ "translate-statsf-width": "Jembar jroning piksel:",
+ "translate-statsf-height": "Dhuwur jroning piksel:",
+ "translate-statsf-days": "Période wektu jroning dina:",
+ "translate-statsf-start": "Tanggal miwiti:",
+ "translate-statsf-scale": "Granularitas:",
+ "translate-statsf-scale-months": "Sasi",
+ "translate-statsf-scale-weeks": "Minggu",
+ "translate-statsf-scale-days": "Dina",
+ "translate-statsf-scale-hours": "Jam",
+ "translate-statsf-count": "Ukuran:",
+ "translate-statsf-count-edits": "Cacahing suntingan",
+ "translate-statsf-count-users": "Penerjemah aktif",
+ "translate-statsf-count-registrations": "Panganggo anyar",
+ "translate-statsf-count-reviews": "Ulasan terjemahan",
+ "translate-statsf-count-reviewers": "Pangulas",
+ "translate-statsf-language": "Dhaptar kodhe basa diwatesi nganggo koma:",
+ "translate-statsf-group": "Dhaptar kodhe klompok sing diwatesi nganggo koma:",
+ "translate-statsf-submit": "Pratayang",
+ "translate-tag-category": "Kaca sing bisa diterjemahaké",
+ "translate-tag-page-desc": "Terjemahan saka kaca wiki [[$2|$1]].",
+ "translate-sidebar-alltrans": "Jroning basa liya",
+ "translations": "Kabèh terjemahan",
+ "translations-summary": "Lebokaké jeneng layang nèng ngisor iki kanggo nuduhaké kabè terjemahan sumadhiya.",
+ "translate-translations-no-message": "\"$1\" dudu layang sing bisa diterjemahaké",
+ "translate-translations-none": "Ora ana terjemahan kanggo \"$1\"",
+ "translate-translations-count": "Nemokaké {{PLURAL:$1|sak terjemahan|$1 terjemahan}}.",
+ "translate-translations-fieldset-title": "Layang",
+ "translate-translations-messagename": "Jeneng:",
+ "translate-translations-project": "Proyèk:",
+ "translate-translations-including-no-param": "Temtokaké kunci sing sah nèng paramètèr subkaca",
+ "translate-translations-history-short": "r",
+ "languagestats": "Statistik basa",
+ "languagestats-summary": "Kaca iki nuduhaké statistik terjemahan saka kabèh klompok layang kanggo sak basa.",
+ "languagestats-stats-for": "Statistik terjemahan kanggo $1 ($2).",
+ "languagestats-recenttranslations": "terjemahan paling anyar",
+ "translate-langstats-incomplete": "Sebagèyan statistik nèng kaca iki ora jangkep. Mangga ngemot manèh kanggo ngèntukaké luwih akèh statistik.",
+ "translate-langstats-expand": "ambakna",
+ "translate-langstats-collapse": "ciyutna",
+ "translate-langstats-expandall": "ambakaké kabèh",
+ "translate-langstats-collapseall": "ciyutaké kabèh",
+ "translate-language-code": "Kodhé basa",
+ "translate-language-code-field-name": "Kodhé basa:",
+ "translate-suppress-complete": "Brèdèl babar blas klompok layang sing wis diterjemahaké",
+ "translate-ls-noempty": "Brèdèl babar blas klompok layang sing durung diterjemahaké",
+ "translate-language": "Basa",
+ "translate-total": "Layang",
+ "translate-untranslated": "Durung diterjemahaké",
+ "translate-percentage-complete": "Parampungan",
+ "translate-percentage-fuzzy": "Lawas",
+ "translate-languagestats-overall": "Kabèh klompok layang bebarengan",
+ "translate-ls-submit": "Tuduhaké statistik",
+ "translate-ls-column-group": "Klompok layang",
+ "translate-mgs-pagename": "Statistik klompok layang",
+ "translate-mgs-fieldset": "Tampilaké préferensi",
+ "translate-mgs-group": "Klompok layang:",
+ "translate-mgs-nocomplete": "Aja tampulaké basa sing wis diterjemahaké",
+ "translate-mgs-noempty": "Aja tampilaké basa sing durung diterjemahaké",
+ "translate-mgs-submit": "Tuduhaké statistik",
+ "translate-mgs-column-language": "Basa",
+ "translate-mgs-totals": "Kabèh basa dadi siji",
+ "translate-mgs-invalid-group": "Klompok $1 sing dimaksud ora ana.",
+ "translate-mgs-nothing": "Ora ana sing bisa ditampilaké kanggo statistik sing dimaksud.",
+ "supportedlanguages": "Basa sing nyengkuyung",
+ "supportedlanguages-colorlegend": "Legenda kanggo werna: Terjemahan pungkasan $1 dina kapungkur.",
+ "supportedlanguages-translators": "{{PLURAL:$2|Pnerjemah|Penerjemah}}: $1",
+ "supportedlanguages-recenttranslations": "terjemahan paling anyar",
+ "supportedlanguages-count": "$1 {{PLURAL:$1|basa|basa}} kabèhé.",
+ "supportedlanguages-activity": "$1: $2 {{PLURAL:$2|suntingan|suntingan}} - disunting pungkasan $3 {{PLURAL:$3|dina|dina}} kapungkur",
+ "translate-save": "Simpen ($1)",
+ "translate-jssti-add": "Tambah nèng daptar",
+ "managemessagegroups": "Panatan klompok layang",
+ "translate-smg-notallowed": "Sampéyan ora dililakaké nglakokaé iki.",
+ "translate-smg-nochanges": "Ora ana sing owah saka prosès iki.",
+ "translate-smg-submit": "Kirim owahan kanggo diprosès",
+ "translate-smg-submitted": "Definisi layang wis dianyari. Owah-owahan lagi diprosès nèng latar mburi.",
+ "translate-smg-left": "Kontèn layang nèng wiki",
+ "translate-smg-right": "Owahan sing bakal teka",
+ "translate-manage-import-diff": "Layang $1 | Laku: $2",
+ "translate-manage-import-new": "Layang anyar $1",
+ "translate-manage-import-deleted": "Layang dibusak $1",
+ "translate-manage-action-import": "Impor",
+ "translate-manage-action-conflict": "Impor lan tandhai ora cetha",
+ "translate-manage-action-ignore": "Bènaké",
+ "translate-manage-action-fuzzy": "Impor lan tandhai terjemahan ora cetha",
+ "translate-manage-nochanges": "Ora ana owah-owahan nèng definisi layang kanggo klompok iki.",
+ "translate-manage-nochanges-other": "Ora ana owah-owahan kanggo basa iki,\nAnggo pranala nèng ngisor kanggo mbalikaké tampilan rincian klompok.",
+ "translate-manage-import-summary": "Ngimpor vèrsi anyar saka sumber njaba",
+ "translate-manage-conflict-summary": "Ngimpor vèrsi anyar saka sumber njaba.\nMangga ditiliki.",
+ "translate-manage-fuzzy-summary": "Definisi layang diowah",
+ "importtranslations": "Impor terjemahan",
+ "translate-import-from-local": "Pangunggahan berkas lokal:",
+ "translate-import-load": "Unggah berkas",
+ "translate-import-err-dl-failed": "Ora bisa njupuk berkas:\n$1",
+ "translate-import-err-ul-failed": "Pangunggahan berkas ora suksès",
+ "translate-import-err-invalid-title": "Jeneng berkas <nowiki>$1</nowiki> ora sah.",
+ "translate-import-err-no-such-file": "Berkas <nowiki>$1</nowiki> ora ana utawa durung diunggah nèng lokal.",
+ "translate-import-err-stale-group": "Klompok layangé berkas iki ora ana.",
+ "translate-import-err-no-headers": "Berkas dudu berkas Gettext sing katata apik nèng format èkstènsi Translate:\nOra bisa nemtokaké klompok lan basa layang saka sirah berkas.",
+ "translate-import-err-warnings": "Berkas ora ditata apik.\nPesthèkaké Panyunting SampÚyan ora mbusan bidhang msgctxt.\nRincian: $1",
+ "translate-js-summary": "Ringkesan:",
+ "translate-js-save": "Simpen",
+ "translate-js-next": "Simpen lan bukak sabanjuré",
+ "translate-js-nonext": "Iki layang pungkasan saka kaca iki.",
+ "translate-js-skip": "Lumpati nèng sabanjuré",
+ "translate-js-save-failed": "Gagal nyimpen. Laporaké kasalahan iki.",
+ "translate-js-history": "Riwayat terjemahan",
+ "translate-js-support": "Takon",
+ "translate-js-support-title": "Njaluk pitulung yèn ora ana cukup informasi kanggo nerjemahaké layang iki kanthi bener.",
+ "translate-js-support-unsaved-warning": "Sampéyan nduwé terjamahan sing durung kasimpen.",
+ "translate-gs-pos": "Pos.",
+ "translate-gs-code": "Kodhé",
+ "translate-gs-continent": "Benua",
+ "translate-gs-speakers": "Panutur",
+ "translate-gs-score": "Skor",
+ "translate-gs-multiple": "Werna-werna",
+ "translate-gs-count": "Cacah",
+ "translate-gs-total": "Cacahé kabèh",
+ "translate-gs-avgscore": "Skor reratan",
+ "translate-documentation-language": "Dokumentasi layang",
+ "translate-searchprofile": "Terjemahan",
+ "translate-searchprofile-tooltip": "Golèk saka kabèh terjemahan",
+ "translate-search-languagefilter": "Saring miturut basa:",
+ "translate-search-nofilter": "Ora ana saringan",
+ "translate-messagereview-submit": "Tampa",
+ "translate-messagereview-progress": "Nampa...",
+ "translate-messagereview-failure": "Nampa... gagal: $1",
+ "translate-messagereview-done": "Katampa",
+ "translate-messagereview-reviews": "Ditampa déning {{PLURAL:$1|sak pangango|$1 panganggo}}",
+ "translate-messagereview-reviewswithyou": "Ditampa déning {{PLURAL:$1|Sampéyan|$1 panganggo kalebu Sampéyan}}",
+ "api-error-invalidrevision": "Terjemahan ora ana",
+ "api-error-unknownmessage": "Layang ora ana",
+ "api-error-fuzzymessage": "Terjemahan ditandhai \"ora cetha\"",
+ "api-error-owntranslation": "Sampéyan ora bisa nampa terjemahané Sampéyan dhéwé",
+ "translate-messagereview-no-fuzzy": "Terjemahan sing ora cetha ora bakal ditampa.",
+ "translate-messagereview-no-own": "Sampéyan ora bisa nampa terjemahané Sampéyan dhéwé",
+ "translate-messagereview-doit": "Tampa terjemahan iki minangka terjemahan sing bener.",
+ "log-name-translationreview": "Log pangulasan terjemahan",
+ "log-description-translationreview": "Log kanggo kabèh klompok terjemahan lan layang.",
+ "logentry-translationreview-message": "$1 {{GENDER:$2|nampa}} terjemahan $3",
+ "translate-workflow-state-": "(durung disetel)",
+ "translate-workflowstatus": "Status: $1",
+ "translate-workflow-set-do": "Setèl",
+ "translate-workflow-set-doing": "Nyetèl...",
+ "translate-workflow-set-done": "Kasetèl!",
+ "translate-workflow-set-error-alreadyset": "Status sing dikarepaké padha plek karo status saiki.",
+ "translate-stats-workflow": "Status",
+ "translate-dynagroup-recent-label": "Terjemahan paling anyar",
+ "translate-dynagroup-recent-desc": "Klompok layang iki nuduhaké kabèh terjemahan paling anyar saka basa iki.\nPaling migunani kanggo tugas korèksi.",
+ "translate-dynagroup-by": "Terjemahan digawé déning {{GENDER:$1|$1}}",
+ "translate-dynagroup-byc": "Terjemahan digawé déning {{GENDER:$1|$1}} ($2)",
+ "translate-dynagroup-last": "Owahan pungkasan déning {{GENDER:$1|$1}}",
+ "translate-dynagroup-lastc": "Owahan pungkasan déning {{GENDER:$1|$1}} ($2)",
+ "translate-gethelp": "Pitulung"
+}
diff --git a/MLEB/Translate/i18n/core/ka.json b/MLEB/Translate/i18n/core/ka.json
new file mode 100644
index 00000000..92f77475
--- /dev/null
+++ b/MLEB/Translate/i18n/core/ka.json
@@ -0,0 +1,225 @@
+{
+ "@metadata": {
+ "authors": [
+ "BRUTE",
+ "David1010",
+ "Malafaya",
+ "Sopho",
+ "Temuri rajavi",
+ "გიორგიმელა"
+ ]
+ },
+ "translate": "თარგმნა",
+ "translate-desc": "[[Special:Translate|სპეციალური გვერდი]] მედიავიკისა და სხვათა შეტყობინებების სათარგმნელად.",
+ "translate-taskui-view": "ყველა შეტყობინების ჩვენება",
+ "translate-taskui-untranslated": "ყველა უთარგმნელი შეტყობინების ჩვენება",
+ "translate-taskui-optional": "არასავალდებულო შეტყობინებების ჩვენება",
+ "translate-taskui-acceptqueue": "მხოლოდ ის შეტყობინებები რომლებიც შემიძლია დავამოწმო",
+ "translate-taction-translate": "თარგმნა",
+ "translate-taction-proofread": "შემოწმება",
+ "translate-taction-lstats": "ენის სტატისტიკა",
+ "translate-taction-mstats": "შეტყობინებების ჯგუფების სტატისტიკა",
+ "translate-taction-export": "ექსპორტი",
+ "translate-page-settings-legend": "კონფიგურაცია",
+ "translate-page-group": "ჯგუფი",
+ "translate-page-language": "ენა",
+ "translate-page-limit": "ლიმიტი",
+ "translate-page-limit-option": "$1 {{PLURAL:$1|შეტყობინება|შეტყობინება}} გვერდში",
+ "translate-submit": "აჩვენე",
+ "translate-page-navigation-legend": "ნავიგაცია",
+ "translate-page-showing-all": "აჩვენებს $1 {{PLURAL:$1|შეტყობინებას|შეტყობინებას}}.",
+ "translate-page-showing-none": "არ არის საჩვენებელი შეტყობინებები.",
+ "translate-next": "შემდეგი გვერდი",
+ "translate-prev": "წინა გვერდი",
+ "translate-page-description-legend": "ინფორმაცია ჯგუფის შესახებ",
+ "translate-page-description-hasoptional-open": "არასავალდებულო შეტყობინებების ჩვენება.",
+ "translate-page-edit": "რედაქტირება",
+ "translate-ext-url": "<hr />ვებ-გვერდი: $1",
+ "translate-optional": "(არასავალდებულო)",
+ "translate-ignored": "(იგნორირებული)",
+ "translate-edit-title": "„$1“ რედაქტირება",
+ "translate-edit-definition": "შეტყობინების განმარტება",
+ "translate-edit-translation": "თარგმანი",
+ "translate-edit-no-information": "''ამ შეტყობინებას არ აქვს დოკუმენტაცია.''\n''თუ იცით სად და როგორ გამოიყენება ეს შეტყობინება, გთხოვთ დაეხმაროთ სხვა მთარგმნელებს და დაურთოთ დოკუმენტაცია ამ შეტყობინებას.''",
+ "translate-edit-in-other-languages": "ეს შეტყობინება სხვა ენებზე",
+ "translate-edit-tmmatch": "$1% შესაბამისობა",
+ "translate-magic-module": "მოდული:",
+ "translate-magic-submit": "აჩვენე",
+ "translate-magic-cm-export": "ექსპორტი",
+ "translate-magic-cm-to-be": "უნდა იყოს",
+ "translate-magic-cm-current": "მიმდინარე",
+ "translate-magic-cm-original": "ორიგინალი",
+ "translate-magic-cm-comment": "კომენტარი:",
+ "translate-magic-cm-save": "შენახვა",
+ "translate-magic-cm-savefailed": "შენახვა ვერ მოხერხდა",
+ "translate-magic-words": "მაგიური სიტყვები",
+ "translate-magic-namespace": "სახელთა სივრცე",
+ "translate-magic-notsaved": "თქვენი რედაქტირება არ შენახულა!",
+ "translate-magic-saved": "თქვენი ცვლილებები წარმატებით შეინახა.",
+ "translate-checks-malformed": "<nowiki>$1</nowiki> არაკორექტულია.",
+ "translate-pref-nonewsletter": "არ გამომიგზავნო სიახლეები ელ. ფოსტით",
+ "translate-pref-editassistlang": "დამხმარე ენები:",
+ "prefs-translate": "თარგმნის პარამეტრები",
+ "right-translate-manage": "შეტყობინებების ჯგუფების მართვა",
+ "action-translate-manage": "შეტყობინებების ჯგუფების მართვა",
+ "right-translate-messagereview": "თარგმანების გადახედვა",
+ "translate-rc-translation-filter": "თარგმანების გაფილტვრა:",
+ "translate-rc-translation-filter-no": "არაფრის კეთება",
+ "translate-rc-translation-filter-only": "აჩვენე მხოლოდ თარგმანები",
+ "translationstats": "თარგმანის სტატისტიკა",
+ "translate-stats-edits": "რედაქტირებები",
+ "translate-stats-users": "მთარგმნელები",
+ "translate-stats-registrations": "რეგისტრაციები",
+ "translate-stats-reviews": "გადახედვები",
+ "translate-stats-reviewers": "შემმოწმებლები",
+ "translate-statsf-width": "სიგანე პიქსელებში:",
+ "translate-statsf-height": "სიმაღლე პიქსელებში:",
+ "translate-statsf-days": "დროის პერიოდი დღეებში:",
+ "translate-statsf-start": "დაწყების თარიღი:",
+ "translate-statsf-scale": "დეტალიზაციის ხარისხი:",
+ "translate-statsf-scale-months": "თვე",
+ "translate-statsf-scale-weeks": "კვირა",
+ "translate-statsf-scale-days": "დღეები",
+ "translate-statsf-scale-hours": "საათები",
+ "translate-statsf-count": "ზომა:",
+ "translate-statsf-count-edits": "რედაქციების რიცხვი",
+ "translate-statsf-count-users": "აქტიური მთარგმნელები",
+ "translate-statsf-count-registrations": "ახალი მომხმარებლები",
+ "translate-statsf-count-reviews": "თარგმანის რეცენზენტები",
+ "translate-statsf-count-reviewers": "შემმოწმებლები",
+ "translate-statsf-submit": "წინასწარი გადახედვა",
+ "translate-tag-category": "თარგმნადი გვერდები",
+ "translate-sidebar-alltrans": "სხვა ენებზე",
+ "translations": "ყველა თარგმანი",
+ "translate-translations-no-message": "შეტყობინება \"$1\" არ ითარგმნება",
+ "translate-translations-count": "ნაპოვნია {{PLURAL:$1|ერთი თარგმანი|$1 თარგმანი}}.",
+ "translate-translations-fieldset-title": "შეტყობინება",
+ "translate-translations-messagename": "სახელი:",
+ "translate-translations-project": "პროექტი:",
+ "translate-translations-history-short": "ი",
+ "languagestats": "ენის სტატისტიკა",
+ "languagestats-summary": "ამ გვერდზე ნაჩვენებია თარგმანების სტატისტიკა ამ ენის ყველა ჯგუფის შეტყობინებისათვის.",
+ "languagestats-stats-for": "$1 ენის თარგმანების სტატისტიკა ($2).",
+ "languagestats-recenttranslations": "ბოლო თარგმანები",
+ "translate-langstats-expand": "გაშლა",
+ "translate-langstats-collapse": "ჩაკეცვა",
+ "translate-langstats-expandall": "ყველას გაშლა",
+ "translate-langstats-collapseall": "ყველას ჩაკეცვა",
+ "translate-language-code": "ენის კოდი",
+ "translate-language-code-field-name": "ენის კოდი:",
+ "translate-suppress-complete": "გამოტოვე მთლიანად თარგმნილი შეტყობინებათა ჯგუფები",
+ "translate-ls-noempty": "არ აჩვენო მთლიანად თარგმნილი შეტყობინებათა ჯგუფები",
+ "translate-language": "ენა",
+ "translate-total": "შეტყობინებები",
+ "translate-untranslated": "უთარგმნელი",
+ "translate-percentage-complete": "შესრულებული",
+ "translate-percentage-fuzzy": "მოძველებული",
+ "translate-languagestats-overall": "ყველა შეტყობინების ჯგუფი ერთად",
+ "translate-ls-submit": "სტატისტიკის ჩვენება",
+ "translate-ls-column-group": "შეტყობინების ჯგუფი",
+ "translate-mgs-pagename": "შეტყობინებების ჯგუფის სტატისტიკა",
+ "translate-mgs-group": "შეტყობინების ჯგუფი:",
+ "translate-mgs-submit": "სტატისტიკის ნახვა",
+ "translate-mgs-column-language": "ენა",
+ "translate-mgs-totals": "ყველა ენა ერთად",
+ "supportedlanguages": "მხარდაჭერილი ენები",
+ "supportedlanguages-colorlegend": "ფერადი ლეგენდა: ბოლო თარგმანი იყო $1 დღის წინ.",
+ "supportedlanguages-translators": "{{PLURAL:$2|თარჯიმანი|თარჯიმანი}}: $1",
+ "supportedlanguages-recenttranslations": "ბოლო თარგმანები",
+ "supportedlanguages-count": "სულ $1 {{PLURAL:$1|ენა|ენა}}.",
+ "supportedlanguages-activity": "$1: $2 {{PLURAL:$2|რედაქტირება|რედაქტირება}} - ბოლო რედაქტირება $3 {{PLURAL:$3|დღის|დღის}} წინ",
+ "translate-save": "შენახვა ($1)",
+ "translate-jssti-add": "სიაში დამატება",
+ "translate-manage-import-diff": "შეტყობინება $1 | მოქმედება: $2",
+ "translate-manage-import-new": "ახალი შეტყობინება $1",
+ "translate-manage-import-deleted": "წაშლილი შეტყობინება $1",
+ "translate-manage-action-import": "იმპორტი",
+ "translate-manage-action-conflict": "იმპორტი და უზუსტობა",
+ "translate-manage-action-ignore": "იგნორირება",
+ "translate-manage-action-fuzzy": "იმპორტი და არაზუსტი თარგმანები",
+ "importtranslations": "თარგმანების იმპორტი",
+ "translate-import-from-local": "ლოკალური ფაილის ატვირთვა:",
+ "translate-import-load": "ფაილის ჩამოტვირთვა",
+ "translate-import-err-ul-failed": "ფაილის ატვირთვა ვერ მოხერხდა",
+ "translate-js-summary": "რეზიუმე:",
+ "translate-js-save": "შენახვა",
+ "translate-js-next": "შენახვა და მომდევნოს გახსნა",
+ "translate-js-skip": "შემდეგზე გადასვლა",
+ "translate-js-history": "თარგმანის ისტორია",
+ "translate-js-support": "კითხვის დასმა",
+ "translate-js-support-unsaved-warning": "თქვენ გაქვთ შეუნახავი თარგმანები.",
+ "translate-gs-pos": "პოზ.",
+ "translate-gs-code": "კოდი",
+ "translate-gs-continent": "კონტინენტი",
+ "translate-gs-score": "შეფასება",
+ "translate-gs-multiple": "რამდენიმე",
+ "translate-gs-count": "რაოდენობა",
+ "translate-gs-total": "სულ",
+ "translate-gs-avgscore": "საშუალო შეფასება",
+ "translate-documentation-language": "შეტყობინების დოკუმენტაცია",
+ "translate-searchprofile": "თარგმანები",
+ "translate-search-languagefilter": "გაფილტვრა ენის მიხედვით:",
+ "translate-messagereview-submit": "შემოწმებულად მონიშვნა",
+ "translate-messagereview-progress": "მონიშნულია როგორც შემოწმებული...",
+ "translate-messagereview-failure": "მიღება... ვერ მოხერხდა: $1",
+ "translate-messagereview-done": "შემოწმებულია",
+ "api-error-invalidrevision": "თარგმანი ვერ მოიძებნა",
+ "api-error-unknownmessage": "შეტყობინება ვერ მოიძებნა",
+ "api-error-fuzzymessage": "თარგმანი მონიშნულია როგორც უზუსტო",
+ "translate-workflow-state-": "(არ არის არჩეული)",
+ "translate-workflowstatus": "სტატუსი: $1",
+ "translate-workflow-set-do": "დაყენება",
+ "translate-workflow-set-doing": "ყენდება...",
+ "translate-workflow-set-done": "დაყენდა!",
+ "translate-stats-workflow": "სტატუსი",
+ "translate-dynagroup-recent-label": "ბოლო თარგმანები",
+ "translate-dynagroup-by": "თარგმანი შეასრულა მომხმარებელმა {{GENDER:$1|$1}}",
+ "translate-dynagroup-byc": "თარგმანი შეასრულა მოხმარებელმა {{GENDER:$1|$1}} ($2)",
+ "translate-dynagroup-last": "ბოლო ცვლილება მომხმარებლისათვის {{GENDER:$1|$1}}",
+ "translate-dynagroup-lastc": "ბოლო ცვლილება მომხმარებლისათვის {{GENDER:$1|$1}} ($2)",
+ "translate-gethelp": "დახმარება",
+ "translate-msggroupselector-projects": "შეტყობინების ჯგუფი",
+ "translate-msggroupselector-search-placeholder": "ჯგუფების ძიება",
+ "translate-msggroupselector-search-all": "ყველა",
+ "translate-msggroupselector-search-recent": "ბოლო",
+ "translate-msggroupselector-view-subprojects": "$1 {{PLURAL:$1|ქვეჯგუფი|ქვეჯგუფი}}",
+ "tux-languageselector": "გადათარგმნა",
+ "tux-tab-all": "ყველა",
+ "tux-tab-untranslated": "უთარგმნელი",
+ "tux-tab-outdated": "მოძველებული",
+ "tux-tab-translated": "ნათარგმნი",
+ "tux-edit": "რედაქტირება",
+ "tux-status-optional": "არასავალდებულო",
+ "tux-status-fuzzy": "მოძველებული",
+ "tux-status-proofread": "შემოწმებულია",
+ "tux-status-translated": "ნათარგმნი",
+ "tux-status-saving": "ინახება...",
+ "tux-status-unsaved": "არ შეინახა",
+ "tux-editor-placeholder": "თქვენი თარგმანები",
+ "tux-editor-save-button-label": "თარგმანის შენახვა",
+ "tux-editor-skip-button-label": "შემდეგზე გადასვლა",
+ "tux-editor-confirm-button-label": "თარგმანის დადასტურება",
+ "tux-editor-shortcut-info": "დააჭირეთ „$1“ შესანახად ან „$2“ შემდეგ შეტყობინებაზე გადასასვლელად",
+ "tux-editor-edit-desc": "დოკუმენტაციის რედაქტირება",
+ "tux-editor-add-desc": "დოკუმენტაციის დამატება",
+ "tux-editor-in-other-languages": "სხვა ენებზე",
+ "tux-editor-need-more-help": "დახმარება გჭირდებათ?",
+ "tux-editor-ask-help": "მოითხოვეთ დამატებითი განმარტება",
+ "tux-editor-tm-match": "შესაბამისობა $1%",
+ "tux-warnings-more": "{{PLURAL:$1|კიდევ $1}}",
+ "tux-warnings-hide": "დამალვა",
+ "tux-editor-clear-translated": "თარგმნილი ტექსტის დამალვა",
+ "tux-editor-proofreading-hide-own-translations": "თქვენი თარგმანის დამალვა",
+ "tux-editor-outdated-warning-diff-link": "განსხვავებების ჩვენება",
+ "tux-editor-doc-editor-placeholder": "შეტყობინების დოკუმენტაცია",
+ "tux-editor-doc-editor-save": "დოკუმენტაციის შენახვა",
+ "tux-editor-doc-editor-cancel": "გაუქმება",
+ "tux-messagetable-more-messages": "კიდევ $1 {{PLURAL:$1|შეტყობინება|შეტყობინება}}",
+ "tux-messagetable-loading-messages": "იტვირთება {{PLURAL:$1|შეტყობინება|შეტყობინება}}...",
+ "tux-message-filter-placeholder": "ფილტრების სია",
+ "tux-message-filter-result": "ნაპოვნია $1 {{PLURAL:$1|შედეგი|შედეგი}} „$2“-თვის",
+ "tux-message-filter-advanced-button": "გაფართოებული ძიება",
+ "tux-message-filter-optional-messages-label": "არასავალდებულო შეტყობინებები",
+ "tux-empty-list-other": "სათარგმნი არაფერია",
+ "tux-empty-list-other-link": "ყველა შეტყობინების ჩვენება"
+}
diff --git a/MLEB/Translate/i18n/core/kaa.json b/MLEB/Translate/i18n/core/kaa.json
new file mode 100644
index 00000000..0f15b965
--- /dev/null
+++ b/MLEB/Translate/i18n/core/kaa.json
@@ -0,0 +1,53 @@
+{
+ "@metadata": {
+ "authors": [
+ "Atabek"
+ ]
+ },
+ "translate": "Awdarıw",
+ "translate-page-no-such-language": "Keltirilgen til jaramsız",
+ "translate-page-no-such-group": "Keltirilgen topar jaramsız",
+ "translate-page-disabled": "Bul toparda usı tilge awdarıwlar toqtatılg'an. Sebep:\n\n<em>$1</em>",
+ "translate-page-settings-legend": "Sazlawlar",
+ "translate-page-group": "Xabar toparı",
+ "translate-page-language": "Til",
+ "translate-page-limit": "Sheklew",
+ "translate-page-limit-option": "ha'r bette {{PLURAL:$1|1|$1}} xabar",
+ "translate-submit": "Ko'rset",
+ "translate-page-navigation-legend": "Navigatsiya",
+ "translate-page-showing": "Ko'rsetilgen xabarlar aralıg'ı: $1 - $2 (barlıg'ı $3).",
+ "translate-page-showing-all": "{{PLURAL:$1|1|$1}} xabar ko'rsetilmekte",
+ "translate-page-showing-none": "Ko'rsetiwge hesh qanday xabar joq.",
+ "translate-next": "Keyingi bet",
+ "translate-prev": "Aldıng'ı bet",
+ "translate-page-description-legend": "Topar haqqında mag'lıwmat",
+ "translate-optional": "(sha'rt emes)",
+ "translate-ignored": "(itibar berilmeytug'ın)",
+ "translate-edit-definition": "Xabardın' anıqlaması",
+ "translate-edit-contribute": "u'les qosıw",
+ "translate-edit-no-information": "''Bul xabardın' hu'jjet mag'lıwmatı joq. Eger siz bul xabar qayerde yamasa qalay paydalang'anın bilsen'iz, basqa awdarıwshılıwg'a usı xabardın' hu'jjet mag'lıwmatın ko'rsetip ja'rdem beriwin'iz mu'mkin.''",
+ "translate-edit-information": "Bul xabar haqqında mag'lıwmat ($1)",
+ "translate-edit-in-other-languages": "Bul xabar basqa tillerde",
+ "translate-edit-committed": "Bag'darlamadag'ı ha'zirgi awdarması",
+ "translate-edit-warnings": "Tolıq awdarılmag'an xabarlar haqqında esletpeler",
+ "translate-magic-pagename": "Ken'eytilgen MediaWiki awdarması",
+ "translate-magic-submit": "Ko'rset",
+ "translate-magic-cm-export": "Eksport qılıw",
+ "translate-magic-cm-to-be": "Bolıwı kerek",
+ "translate-magic-cm-current": "Ha'zirgisi",
+ "translate-magic-cm-original": "Original",
+ "translate-magic-cm-comment": "Kommentariy:",
+ "translate-magic-cm-save": "Saqla",
+ "translate-magic-cm-updatedusing": "[[Special:AdvancedTranslate|{{int:Translate-magic-pagename}}]] qollanıp saqlang'an",
+ "translate-magic-cm-savefailed": "Saqlaw sa'tsiz tamamlandı",
+ "translate-magic-special": "Arnawlı bet laqabı",
+ "translate-magic-words": "Sıyqırlı so'zler",
+ "translate-magic-namespace": "İsimler ko'pligi atları",
+ "translate-checks-parameters": "To'mendegi parametrler qollanılmag'an: <strong>$1</strong>",
+ "translate-checks-balance": "Qawıslardın' sanı jup emes: <strong>$1</strong>",
+ "translate-checks-links": "To'mendegi siltewler jaramsız: <strong>$1</strong>",
+ "translate-checks-xhtml": "To'mendegi teglerdi durıslıları menen o'zgertin': <strong>$1</strong>",
+ "translate-checks-plural": "Anıqlamada <nowiki>{{PLURAL:}}</nowiki> paydalanılg'an, biraq awdarmada bul joq.",
+ "translate-pref-nonewsletter": "Mag'an e-mail boyınsha jan'alıqlardı jibermen'",
+ "right-translate": "Awdarma interfeysi ja'rdeminde o'zgertiw"
+}
diff --git a/MLEB/Translate/i18n/core/kab.json b/MLEB/Translate/i18n/core/kab.json
new file mode 100644
index 00000000..d23a84a2
--- /dev/null
+++ b/MLEB/Translate/i18n/core/kab.json
@@ -0,0 +1,11 @@
+{
+ "@metadata": {
+ "authors": [
+ "Mmistmurt"
+ ]
+ },
+ "translate-page-settings-legend": "Iɣewwaren",
+ "translate-page-group": "Agraw",
+ "translate-page-language": "Tutlayt",
+ "translate-submit": "Umuɣ"
+}
diff --git a/MLEB/Translate/i18n/core/kbd-cyrl.json b/MLEB/Translate/i18n/core/kbd-cyrl.json
new file mode 100644
index 00000000..a3e5ab0c
--- /dev/null
+++ b/MLEB/Translate/i18n/core/kbd-cyrl.json
@@ -0,0 +1,14 @@
+{
+ "@metadata": {
+ "authors": [
+ "Тамэ Балъкъэрхэ"
+ ]
+ },
+ "translate-page-settings-legend": "Теухуапхъэхэр",
+ "translate-page-group": "Гуп",
+ "translate-page-language": "Бзэ",
+ "translate-page-limit": "ФIимыхуу",
+ "translate-submit": "Къэгъэлъэгъуэн",
+ "translate-optional": "(Iэмалыншэкъым)",
+ "translate-ignored": "(щхьэщыгъэцIэфтауэ)"
+}
diff --git a/MLEB/Translate/i18n/core/khw.json b/MLEB/Translate/i18n/core/khw.json
new file mode 100644
index 00000000..1dfb7c4a
--- /dev/null
+++ b/MLEB/Translate/i18n/core/khw.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Rachitrali"
+ ]
+ },
+ "translate": "ترجمہ کورے"
+}
diff --git a/MLEB/Translate/i18n/core/kiu.json b/MLEB/Translate/i18n/core/kiu.json
new file mode 100644
index 00000000..628db615
--- /dev/null
+++ b/MLEB/Translate/i18n/core/kiu.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Erdemaslancan"
+ ]
+ },
+ "translate-tag-page-desc": "Açarnayışê pela da [[$2|$1]] wiki"
+}
diff --git a/MLEB/Translate/i18n/core/kk-arab.json b/MLEB/Translate/i18n/core/kk-arab.json
new file mode 100644
index 00000000..fd23c435
--- /dev/null
+++ b/MLEB/Translate/i18n/core/kk-arab.json
@@ -0,0 +1,50 @@
+{
+ "@metadata": {
+ "authors": [
+ "AlefZet"
+ ]
+ },
+ "translate": "اۋدارۋ",
+ "translate-page-no-such-language": "كەلتىرىلگەن ٴتىل بەلگىلەمەسى جارامسىز",
+ "translate-page-no-such-group": "ەنگىزىلگەن توب جارامسىز.",
+ "translate-page-settings-legend": "باپتاۋ",
+ "translate-page-group": "حابار توبى",
+ "translate-page-language": "ٴتىلى",
+ "translate-page-limit": "شەكتەمى",
+ "translate-page-limit-option": "بەت سايىن {{PLURAL:$1|1|$1}} حابار",
+ "translate-submit": "كەلتىر!",
+ "translate-page-navigation-legend": "باعىتتاۋ",
+ "translate-page-showing": "كورسەتىلگەن حابار اۋقىمى: $1 — $2 (نە بارلىعى $3).",
+ "translate-page-showing-all": "كورسەتىلۋى: {{PLURAL:$1|1|$1}} حابار.",
+ "translate-page-showing-none": "كورسەتىلەتىن ەش حابار جوق.",
+ "translate-next": "كەلەسى بەت",
+ "translate-prev": "الدىڭعى بەت",
+ "translate-page-description-legend": "بۇل توپ تۋرالى مالىمەت",
+ "translate-optional": "(مىندەتتى ەمەس)",
+ "translate-ignored": "(ەلەمەيتىن)",
+ "translate-edit-definition": "حاباردىڭ انىقتالىمى",
+ "translate-edit-contribute": "ۇلەس بەر",
+ "translate-edit-no-information": "''بۇل حابار قۇجاتتاماسىز. ەگەر وسى حاباردىڭ قايدا نەمەسە قالاي قولدانعانىن بىلسەڭىز, بۇل حابارعا قۇجاتتاما كەلتىرىپ, باسقا اۋدارۋشىلارعا كومەكتەسە الاسىز.''",
+ "translate-edit-information": "بۇل حابار تۋرالى مالىمەت ($1)",
+ "translate-edit-in-other-languages": "حابار باسقا تىلدەردە",
+ "translate-edit-committed": "باعدارلاماداعى اعىمدىق اۋدارما",
+ "translate-edit-warnings": "تولىق اۋدارىلماعان حابارلار تۋرالى اڭعارتپالار",
+ "translate-magic-pagename": "كەڭەيتىلگەن MediaWiki اۋدارۋى",
+ "translate-magic-help": "ارنايى بەت بۇركەمەلەرىن, سىيقىرلى سوزدەرىن, بەزەندىرۋ مانەر اتاۋلارىن جانە ەسىم ايا اتاۋلارىن اۋدارا الاسىز.\n\nسىيقىرلى سوزدەردە اعىلشىنشا نۇسقاسىن كىرگىزۋىڭىز ٴجون, ايتپەسە قىزمەتى توقتالادى. تاعى دا ٴبىرىنشى بابىن (0 نە 1) ٴاردايىم قالدىرىڭىز.\n\nارنايى بەت بۇركەمەلەرىندە جانە سىيقىرلى سوزدەرىندە بىرنەشە اۋدارما بولۋى مۇمكىن. اۋدارمالار ۇتىرمەن (,) بولىكتەنەدى. بەزەندىرۋ مانەر جانە ەسىم ايا اتاۋلارىندا تەك ٴبىر اۋدارما بولۋى ٴتىيىس.\n\nەسىم ايا اۋدارمالارىندا <code>$1_talk</code> دەگەن ارنايى كەلتىرىلەدى. <code>$1</code> دەگەن اينالمالى وزدىكتىك توراپ اتاۋىمەن الماستىرىلادى (مىسالى, <code>{{SITENAME}} تالقىلاۋى</code>). ەگەر ٴسىزدىڭ تىلىڭىزدە توراپ اتاۋىن وزگەرتپەي دۇرىس سويلەم قۇرىلماسا, دامىتۋشىلارعا حابارلاسىڭىز.",
+ "translate-magic-submit": "كەلتىر",
+ "translate-magic-cm-export": "سىرتقا بەر",
+ "translate-magic-cm-to-be": "بولۋعا ٴتىيىستىسى",
+ "translate-magic-cm-current": "اعىمداعىسى",
+ "translate-magic-cm-original": "تۇپنۇسقاسى",
+ "translate-magic-cm-save": "ساقتا!",
+ "translate-magic-cm-updatedusing": "[[Special:AdvancedTranslate|{{int:Translate-magic-pagename}}]] دەگەندى قولدانىپ ساقتالعان",
+ "translate-magic-cm-savefailed": "ساقتاۋ ٴساتسىز بولدى",
+ "translate-magic-special": "ارنايى بەت بۇركەمەلەرى",
+ "translate-magic-words": "سىيقىر سوزدەر",
+ "translate-magic-namespace": "ەسىم ايا اتاۋلارى",
+ "translate-checks-parameters": "كەلەسى باپتالىمدار پايدالانىلماعان: <strong>$1</strong>",
+ "translate-checks-balance": "مىندا جاقشالاردىڭ بارلىق سانى جۇپ ەمەس: <strong>$1</strong>",
+ "translate-checks-links": "كەلەسى سىلتەمەلەر جارامسىز: <strong>$1</strong>",
+ "translate-checks-xhtml": "كەلەسى بەلگىلەمەلەردى دۇرىستارىمەن الماستىرىڭىز: <strong>$1</strong>",
+ "translate-checks-plural": "انىقتالىمدا <nowiki>{{PLURAL:}} پايدالانىلعان, بىراق اۋدارمادا بۇل جوق."
+}
diff --git a/MLEB/Translate/i18n/core/kk-cyrl.json b/MLEB/Translate/i18n/core/kk-cyrl.json
new file mode 100644
index 00000000..7d3b9395
--- /dev/null
+++ b/MLEB/Translate/i18n/core/kk-cyrl.json
@@ -0,0 +1,84 @@
+{
+ "@metadata": {
+ "authors": [
+ "AlefZet",
+ "GaiJin",
+ "Arystanbek",
+ "Marat"
+ ]
+ },
+ "translate": "Аудару",
+ "translate-desc": "MediaWiki дегенді және бұнан тыстарды аудару үшін арналған [[Special:Translate|арнайы бет]]",
+ "translate-taskui-view": "",
+ "translate-taskui-untranslated": "Аударылмаған хабарларды көрсету",
+ "translate-taskui-optional": "Қосымша хабарларды көрсету",
+ "translate-taskui-reviewall": "Барлық аудармаларды қайта қарау",
+ "translate-taskui-export-as-po": "Дербес (off-line) аударма үшін экспорттау",
+ "translate-taction-translate": "Аудару",
+ "translate-taction-proofread": "Қайта қарау",
+ "translate-taction-lstats": "Тіл статистикасы",
+ "translate-taction-mstats": "Хабар тобы статистикасы",
+ "translate-taction-export": "Экспорттау",
+ "translate-taction-disabled": "Бұл уикиде бұл әрекет сөндірілген.",
+ "translate-page-no-such-language": "Келтірілген тіл жарамсыз",
+ "translate-page-no-such-group": "Келтірілген топ жарамсыз.",
+ "translate-page-disabled": "Осы топтағы бұл тілге аударуы өшірілген. Себебі:\n\n<em>$1</em>",
+ "translate-language-disabled": "Бұл тілге аудару ажыратылған",
+ "translate-page-settings-legend": "Бапталымдар",
+ "translate-page-group": "Хабар тобы",
+ "translate-page-language": "Тілі",
+ "translate-page-limit": "Шектемі",
+ "translate-page-limit-option": "бет сайын $1 хабар",
+ "translate-submit": "Келтір!",
+ "translate-page-navigation-legend": "Шарлау",
+ "translate-page-showing": "Көрсетілген хабар ауқымы: $1 — $2 (не барлығы $3).",
+ "translate-page-showing-all": "$1 хабар көрсетілуде.",
+ "translate-page-showing-none": "Көрсетілетін еш хабар жоқ.",
+ "translate-next": "Келесі бет",
+ "translate-prev": "Алдыңғы бет",
+ "translate-page-description-legend": "Бұл топ туралы мәлімет",
+ "translate-page-description-hasoptional-open": "Қосымша хабарларды көрсету",
+ "translate-page-edit": "өңдеу",
+ "translate-ext-url": "<hr />Уебсайт: $1",
+ "translate-optional": "(міндетті емес)",
+ "translate-ignored": "(елемейтін)",
+ "translate-edit-title": "\"$1\" дегенді өңдеу",
+ "translate-edit-definition": "Хабар анықтауы",
+ "translate-edit-translation": "Аударма",
+ "translate-edit-contribute": "үлес бер",
+ "translate-edit-no-information": "<em>Бұл хабар құжаттамасыз.\nЕгер бұл хабардың қайда немесе қалай қолданғанын білсеңіз, бұл хабарға құжаттама келтіріп, басқа аударушыларға көмектесе аласыз.</em>",
+ "translate-edit-information": "Бұл хабар туралы мәлімет ($1)",
+ "translate-edit-in-other-languages": "Хабар басқа тілдерде",
+ "translate-edit-committed": "Бағдарлама жасақтамадағы ағымдақ аударма",
+ "translate-edit-warnings": "Толық аударылмаған хабарлар туралы құлақтандырулар",
+ "translate-edit-tmsugs": "Машиналық аударма және аудрамаларды еске түсіру ұсыныстары",
+ "translate-edit-tmmatch-source": "Аударма қайнар мәтіні: $1",
+ "translate-magic-pagename": "Кеңейтілген MediaWiki аударуы",
+ "translate-magic-help": "Арнайы бет бүркеме аттарын, сиқырлы сөздерді, мәнер атауларын және есім ая атауларын аудара аласыз.\n\nСиқырлы сөздерде ағылшынша нұсқасын кіргізуіңіз жөн, әйтпесе қызметі тоқталады.\nТағы да бірінші бабын (0 не 1) әрдайым қалдырыңыз.\n\nАрнайы бет бүркеме аттарында және сиқырлы сөздерде бірнеше аударма болуы мүмкін.\nАудармалар үтірмен (,) бөлінеді.\nМәнер және есім ая атауларында тек бір аударма болуы мүмкін.\n\nЕсім ая аудармаларында <code>$1_talk</code> деген арнайы боп табылады. <code>$1</code> айналмалысы торап атауымен алмастырылады (мысалы, <code>{{SITENAME}} талқылауы</code>).\nЕгер сіздің тіліңізде торап атауын өзгертпей дұрыс айтылым құрылмаса, дамытушыға хабарласыңыз.\n\nӨзгерістерді сақтау үшін аудармашылар тобына кіруіңіз жөн.\nСақтау батырмасын нұқығанша дейін өзгерістер сақталмайды.",
+ "translate-magic-module": "Модуль:",
+ "translate-magic-submit": "Келтір",
+ "translate-magic-cm-export": "Сыртқа бер",
+ "translate-magic-cm-to-be": "Болуға тиістісі",
+ "translate-magic-cm-current": "Ағымдағысы",
+ "translate-magic-cm-original": "Түпнұсқасы",
+ "translate-magic-cm-comment": "Мәндеме:",
+ "translate-magic-cm-save": "Сақта!",
+ "translate-magic-cm-updatedusing": "[[Special:AdvancedTranslate|{{int:Translate-magic-pagename}}]] дегенді қолданып сақталған",
+ "translate-magic-cm-savefailed": "Сақтау сәтсіз болды",
+ "translate-magic-special": "Арнайы бет бүркеме аттары",
+ "translate-magic-words": "Сиқыр сөздер",
+ "translate-magic-namespace": "Есім ая атаулары",
+ "translate-checks-parameters": "Келесі бапталымдар пайдаланылмаған: <strong>$1</strong>",
+ "translate-checks-balance": "Мында жақшалардың бүкіл саны жұп емес: <strong>$1</strong>",
+ "translate-checks-links": "Келесі сілтемелер жарамсыз: <strong>$1</strong>",
+ "translate-checks-xhtml": "Келесі белгілемелерді дұрыстарымен алмастырыңыз: <strong>$1</strong>",
+ "translate-checks-plural": "Анықталымда <nowiki>{{PLURAL:}}</nowiki> пайдаланылған, бірақ аудармада бұл жоқ.",
+ "translate-pref-nonewsletter": "Жаңалық хаттарды маған жіберме",
+ "translate-pref-editassistlang-bad": "Тізімдегі жарамсыз тіл коды:\n<nowiki>$1</nowiki>.",
+ "right-translate": "Аудару тілдесуін қолданып өңдеу",
+ "translate-rc-translation-filter": "Аудармаларды сүзгілеу:",
+ "translate-rc-translation-filter-no": "Ештеңе істемеу",
+ "translate-rc-translation-filter-only": "Тек аудармаларды көрсету",
+ "translate-rc-translation-filter-filter": "Аудармаларды сүзгілеп тастау",
+ "translate-rc-translation-filter-site": "Тек торап хабарларының өзгерістері"
+}
diff --git a/MLEB/Translate/i18n/core/kk-kz.json b/MLEB/Translate/i18n/core/kk-kz.json
new file mode 100644
index 00000000..ede812c4
--- /dev/null
+++ b/MLEB/Translate/i18n/core/kk-kz.json
@@ -0,0 +1,28 @@
+{
+ "@metadata": {
+ "authors": [
+ "AlefZet"
+ ]
+ },
+ "translate": "Аудару",
+ "translate-page-no-such-language": "Келтірілген тіл белгілемесі жарамсыз",
+ "translate-submit": "Келтір!",
+ "translate-next": "Келесі бет",
+ "translate-prev": "Алдыңғы бет",
+ "translate-optional": "(міндетті емес)",
+ "translate-ignored": "(елемейтін)",
+ "translate-magic-pagename": "Кеңейтілген MediaWiki аударуы",
+ "translate-magic-help": "Арнайы бет бүркемелерін, сиқырлы сөздерін, безендіру мәнер атауларын және есім ая атауларын аудара аласыз.\n\nСиқырлы сөздерде ағылшынша нұсқасын кіргізуіңіз жөн, әйтпесе қызметі тоқталады. Тағы да бірінші бабын (0 не 1) әрдайым қалдырыңыз.\n\nАрнайы бет бүркемелерінде және сиқырлы сөздерінде бірнеше аударма болуы мүмкін. Аудармалар үтірмен (,) бөліктенеді. Безендіру мәнер және есім ая атауларында тек бір аударма болуы тиіс.\n\nЕсім ая аудармаларында <code>$1_talk</code> деген арнайы келтіріледі. <code>$1</code> деген айналмалы өздіктік торап атауымен алмастырылады (мысалы, <code>{{SITENAME}} талқылауы</code>). Егер сіздің тіліңізде торап атауын өзгертпей дұрыс сөйлем құрылмаса, дамытушыларға хабарласыңыз.",
+ "translate-magic-submit": "Келтір",
+ "translate-magic-cm-export": "Сыртқа бер",
+ "translate-magic-cm-to-be": "Болуға тиісті",
+ "translate-magic-cm-current": "Ағымдағы",
+ "translate-magic-cm-original": "Түпнұсқасы",
+ "translate-magic-cm-save": "Сақта!",
+ "translate-magic-cm-updatedusing": "[[Special:AdvancedTranslate|{{int:Translate-magic-pagename}}]] дегенді қолданып сақталған",
+ "translate-magic-cm-savefailed": "Сақтау сәтсіз болды",
+ "translate-magic-special": "Арнайы бет бүркемелері",
+ "translate-magic-words": "Сиқыр сөздер",
+ "translate-magic-namespace": "Есім ая атаулары",
+ "translate-language": "Тілі:"
+}
diff --git a/MLEB/Translate/i18n/core/kk-latn.json b/MLEB/Translate/i18n/core/kk-latn.json
new file mode 100644
index 00000000..c363cacf
--- /dev/null
+++ b/MLEB/Translate/i18n/core/kk-latn.json
@@ -0,0 +1,52 @@
+{
+ "@metadata": {
+ "authors": [
+ "AlefZet",
+ "Atabek",
+ "GaiJin"
+ ]
+ },
+ "translate": "Awdarıw",
+ "translate-page-no-such-language": "Keltirilgen til belgilemesi jaramsız",
+ "translate-page-no-such-group": "Engizilgen tob jaramsız.",
+ "translate-page-settings-legend": "Baptaw",
+ "translate-page-group": "Xabar tobı",
+ "translate-page-language": "Tili",
+ "translate-page-limit": "Şektemi",
+ "translate-page-limit-option": "bet saýın {{PLURAL:$1|1|$1}} xabar",
+ "translate-submit": "Keltir!",
+ "translate-page-navigation-legend": "Şarlaw",
+ "translate-page-showing": "Körsetilgen xabar awqımı: $1 - $2 (ne barlığı $3).",
+ "translate-page-showing-all": "Körsetilwi: {{PLURAL:$1|1|$1}} xabar.",
+ "translate-page-showing-none": "Körsetiletin eş xabar joq.",
+ "translate-next": "Kelesi bet",
+ "translate-prev": "Aldıñğı bet",
+ "translate-page-description-legend": "Bul top twralı mälimet",
+ "translate-optional": "(mindetti emes)",
+ "translate-ignored": "(elemeýtin)",
+ "translate-edit-definition": "Xabardıñ anıqtalımı",
+ "translate-edit-contribute": "üles ber",
+ "translate-edit-no-information": "''Bul xabar qujattamasız. Eger osı xabardıñ qaýda nemese qalaý qoldanğanın bilseñiz, bul xabarğa qujattama keltirip, basqa awdarwşılarğa kömektese alasız.''",
+ "translate-edit-information": "Bul xabar twralı mälimet ($1)",
+ "translate-edit-in-other-languages": "Xabar basqa tilderde",
+ "translate-edit-committed": "Bağdarlamadağı ağımdıq awdarma",
+ "translate-edit-warnings": "Tolıq awdarılmağan xabarlar twralı añğartpalar",
+ "translate-magic-pagename": "Keñeýtilgen MediaWiki awdarwı",
+ "translate-magic-help": "Arnaýı bet bürkemelerin, sïqırlı sözderin, bezendirw mäner atawların jäne esim aya atawların awdara alasız.\n\nSïqırlı sözderde ağılşınşa nusqasın kirgizwiñiz jön, äýtpese qızmeti toqtaladı. Tağı da birinşi babın (0 ne 1) ärdaýım qaldırıñız.\n\nArnaýı bet bürkemelerinde jäne sïqırlı sözderinde birneşe awdarma bolwı mümkin. Awdarmalar ütirmen (,) böliktenedi. Bezendirw mäner jäne esim aya atawlarında tek bir awdarma bolwı tïis.\n\nEsim aya awdarmalarında <code>$1_talk</code> degen arnaýı keltiriledi. <code>$1</code> degen aýnalmalı özdiktik torap atawımen almastırıladı (mısalı, <code>{{SITENAME}} talqılawı</code>). Eger sizdiñ tiliñizde torap atawın özgertpeý durıs söýlem qurılmasa, damıtwşılarğa xabarlasıñız.",
+ "translate-magic-submit": "Keltir",
+ "translate-magic-cm-export": "Sırtqa ber",
+ "translate-magic-cm-to-be": "Bolwğa tïistisi",
+ "translate-magic-cm-current": "Ağımdağısı",
+ "translate-magic-cm-original": "Tüpnusqası",
+ "translate-magic-cm-save": "Saqta!",
+ "translate-magic-cm-updatedusing": "[[Special:AdvancedTranslate|{{int:Translate-magic-pagename}}]] degendi qoldanıp saqtalğan",
+ "translate-magic-cm-savefailed": "Saqtaw sätsiz boldı",
+ "translate-magic-special": "Arnaýı bet bürkemeleri",
+ "translate-magic-words": "Sïqır sözder",
+ "translate-magic-namespace": "Esim aya atawları",
+ "translate-checks-parameters": "Kelesi baptalımdar paýdalanılmağan: <strong>$1</strong>",
+ "translate-checks-balance": "Mında jaqşalardıñ barlıq sanı jup emes:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links": "Kelesi siltemeler jaramsız:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-xhtml": "Kelesi belgilemelerdi durıstarımen almastırıñız:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-plural": "Anıqtalımda <nowiki>{{PLURAL:}}</nowiki> paýdalanılğan, biraq awdarmada bul joq."
+}
diff --git a/MLEB/Translate/i18n/core/kl.json b/MLEB/Translate/i18n/core/kl.json
new file mode 100644
index 00000000..361ec7a5
--- /dev/null
+++ b/MLEB/Translate/i18n/core/kl.json
@@ -0,0 +1,11 @@
+{
+ "@metadata": {
+ "authors": [
+ "Qaqqalik"
+ ]
+ },
+ "translate-page-language": "Oqaatsit",
+ "translate-page-navigation-legend": "Sumiissusersiuut",
+ "translate-sidebar-alltrans": "Oqaatsit allatoortut",
+ "translate-language": "Oqaatsit"
+}
diff --git a/MLEB/Translate/i18n/core/km.json b/MLEB/Translate/i18n/core/km.json
new file mode 100644
index 00000000..893a5ad5
--- /dev/null
+++ b/MLEB/Translate/i18n/core/km.json
@@ -0,0 +1,200 @@
+{
+ "@metadata": {
+ "authors": [
+ "Chhorran",
+ "Lovekhmer",
+ "Thearith",
+ "គីមស៊្រុន",
+ "វ័ណថារិទ្ធ",
+ "Sovichet"
+ ]
+ },
+ "translate": "បកប្រែ",
+ "translate-desc": "[[Special:Translate|ទំព័រ​ពិសេស]] សម្រាប់ប្រែសម្រួល​មេឌាវិគី​ និង របស់​ផ្សេងទៀត",
+ "translate-taskui-view": "បង្ហាញសារទាំងអស់",
+ "translate-taskui-untranslated": "បង្ហាញសារដែលមិនទាន់បកប្រែ",
+ "translate-taskui-optional": "បង្ហាញសារមិនសូវចាំបាច់អោយបកប្រែ",
+ "translate-taskui-acceptqueue": "តែ​សារ​ទាំង​ឡាយ​ណា​ដែល​ខ្ញុំ​បញ្ជាក់​ថា​បាន​ពិនិត្យ​រួច",
+ "translate-taskui-reviewall": "ផ្ទៀងផ្ទាត់ការបកប្រែទាំងអស់",
+ "translate-taskui-export-to-file": "នាំចេញជាទំរង់ដើម",
+ "translate-taskui-export-as-po": "នាំចេញសំរាប់ធ្វើការបកប្រែក្រៅបណ្ដាញ",
+ "translate-taction-translate": "បកប្រែ",
+ "translate-taction-proofread": "ពិនិត្យ​មើល",
+ "translate-taction-lstats": "ស្ថិតិ​ភាសា",
+ "translate-taction-mstats": "ស្ថិតិក្រុមសារ",
+ "translate-taction-export": "នាំចេញ​",
+ "translate-taction-disabled": "សកម្មភាពនេះត្រូវបិទមិនអោយប្រើនៅលើវិគីនេះ។",
+ "translate-page-no-such-language": "ភាសាដែលអ្នកផ្ដល់មកមិនត្រឹមត្រូវទេ។",
+ "translate-page-no-such-group": "ក្រុមដែលអ្នកផ្ដល់មកមិនត្រឹមត្រូវទេ។",
+ "translate-page-disabled": "ការបកប្រែសម្រាប់ភាសានេះក្នុងក្រុមនេះមិនត្រូវបានអនុញ្ញាតទេ។ មូលហេតុ:\n\n<em>$1</em>",
+ "translate-language-disabled": "ការ​បក​ប្រែ​ទៅ​ភាសា​នេះ​ត្រូវ​បាន​បិទ។",
+ "translate-page-settings-legend": "ការកំណត់​ផ្សេងៗ",
+ "translate-page-group": "ក្រុម",
+ "translate-page-language": "ភាសា",
+ "translate-page-limit": "កម្រិត",
+ "translate-page-limit-option": "$1 {{PLURAL:$1|សារ|សារ}} ក្នុងមួយទំព័រ",
+ "translate-submit": "នាំមក​បង្ហាញ",
+ "translate-page-navigation-legend": "ការណែនាំ",
+ "translate-page-showing": "កំពុងបង្ហាញ​សារ​តាមលំដាប់ ពី $1 ដល់ $2 នៃ $3 ។",
+ "translate-page-showing-all": "កំពុងបង្ហាញ $1 {{PLURAL:$1|សារ|សារ}}។",
+ "translate-page-showing-none": "មិនមានសារ​ត្រូវបង្ហាញទេ។",
+ "translate-next": "ទំព័របន្ទាប់",
+ "translate-prev": "ទំព័រមុន",
+ "translate-page-description-legend": "ព័ត៌មាន​អំពី​ក្រុម",
+ "translate-page-description-hasoptional": "ក្រុមសារនេះមានផ្ទុកសារដែលមិនសូវចាំបាច់អោយបកប្រែ។\nសារដែលមិនសូវចាំបាច់អោយបកប្រែគួរតែបកប្រែតែពេលណាត្រូវការអោយសរសេរជាពិសេសក្នុងភាសារបស់អ្នក ដូចជាការមិនប្រើចន្លោះដកឃ្លា ឬការសរសេរអោយត្រូវតាមតួអក្សរបានត្រឹមត្រូវ។ $1",
+ "translate-page-description-hasoptional-open": "បង្ហាញសារមិនសូវចាំបាច់អោយបកប្រែ",
+ "translate-page-edit": "កែប្រែ",
+ "translate-ext-url": "<hr />វិបសាយ៖ $1",
+ "translate-optional": "(ជម្រើស)",
+ "translate-ignored": "(បានបោះបង់)",
+ "translate-edit-title": "កែប្រែ \"$1\"",
+ "translate-edit-definition": "និយមន័យ​របស់​សារ",
+ "translate-edit-translation": "ការបកប្រែ",
+ "translate-edit-contribute": "រួមចំណែក",
+ "translate-edit-no-information": "<em>សារ​នេះ​មិន​មាន​ព័ត៌មាន​បន្ថែម​ទេ​។\nប្រសិនបើ​អ្នក​ដឹង​ពី​ទីកន្លែង និង​របៀប​ប្រើប្រាស់​សារ​នេះ អ្នក​អាច​ជួយ​អ្នក​បកប្រែ​ផ្សេងទៀត​តាមរយៈ​ការ​ដាក់​បន្ថែម​ព័ត៌មាន​ទាំងនោះ​មក​ឱ្យ​សារ​នេះ​។</em>",
+ "translate-edit-information": "ព័ត៌មាន​អំពី​សារ ($1)",
+ "translate-edit-in-other-languages": "សារជាភាសា​ដទៃទៀត",
+ "translate-edit-committed": "បទប្រែសម្រួល​បច្ចុប្បន្ន​ក្នុងផ្នែកទន់",
+ "translate-edit-warnings": "ការព្រមាន​អំពី​បទប្រែសម្រួលមិនពេញលេញ",
+ "translate-edit-tmsugs": "សំនើពីឃ្លាំងផ្ទុកការបកប្រែ",
+ "translate-edit-tmmatch-source": "ការ​បក​ប្រែ​ប្រភព​អត្ថបទ៖ $1",
+ "translate-edit-tmmatch": "ត្រូវគ្នា $1%",
+ "translate-use-suggestion": "ជំនួសការបកប្រែបច្ចុប្បន្នដោយសំណើបកប្រែនេះ។",
+ "translate-edit-nopermission": "អ្នក​ត្រូវ​ការ​សិទ្ធិ​បក​ប្រែ ដើម្បី​បក​ប្រែ​សារ។",
+ "translate-edit-askpermission": "សុំ​ការ​អនុញ្ញាត",
+ "translate-magic-pagename": "ការបកប្រែ​មេឌាវិគី​បន្ថែម",
+ "translate-magic-help": "អ្នកអាចធ្វើការបកប្រែឈ្មោះក្លាយរបស់ទំព័រពិសេសៗ សិល្ប៍ស័ព្ទ និងឈ្មោះនៃលំហឈ្មោះ។\n\n\nឈ្មោះក្លាយរបស់ទំព័រពិសេសៗ​និង​សិល្ប៍ស័ព្ទ​អាចមានបទប្រែសំរួលច្រើន។\nបទប្រែសំរួលទាំងនោះច្រូវខណ្ឌចែកពីគ្នាដោយសញ្ញាក្បៀស (,)។\nលំហឈ្មោះអាចមានបទប្រែសំរួលតែមួយប៉ុណ្ណោះ ។\n\n\nក្នុងការបកប្រែលំហឈ្មោះ <code>ការពិភាក្សាអំពី $1</code> ជាករណីពិសេស។ <code>$1</code> ត្រូវបានជំនួសដោយឈ្មោះវិបសាយ (ឧទាហរណ៍៖ <code>{{ns:project_talk}}</code>)។\nប្រសិនបើ​ភាសារបស់អ្នក​មិនបានបង្ហាញត្រឹមត្រូវដោយមិនប្តូរឈ្មោះវិបសាយទេ សូមទាក់ទងអ្នកអភិវឌ្ឍ (អ្នករចនាវិបសាយ)។\n\n\nអ្នកចាំបាច់ត្រូវតែស្ថិតក្នុងក្រុមអ្នកប្រែសម្រួល ទើបអាចរក្សាទុកបំលាស់ប្តូរបាន។\nបំលាស់ប្តូរនឹងមិនត្រូវបានរក្សាទុកទេ​លើកលែងតែអ្នកបានចុចប៊ូតុង​រក្សាទំព័រទុក​នៅខាងក្រោម ។",
+ "translate-magic-module": "ម៉ូឌុល៖",
+ "translate-magic-submit": "នាំមក​បង្ហាញ",
+ "translate-magic-cm-export": "នាំចេញ",
+ "translate-magic-nothing-to-export": "គ្មានអ្វីសំរាប់នាំចេញទេ។",
+ "translate-magic-cm-to-be": "ទៅជា",
+ "translate-magic-cm-current": "បច្ចុប្បន្ន",
+ "translate-magic-cm-original": "ដើម",
+ "translate-magic-cm-comment": "យោបល់៖",
+ "translate-magic-cm-save": "រក្សាទុក",
+ "translate-magic-cm-updatedusing": "បានបន្ទាន់សម័យ​ដោយប្រើប្រាស់ [[Special:AdvancedTranslate|{{int:Translate-magic-pagename}}]]",
+ "translate-magic-cm-savefailed": "រក្សាទុកមិនបានសម្រេច",
+ "translate-magic-special": "ឈ្មោះផ្សេងទៀតនៃទំព័រពិសេស",
+ "translate-magic-words": "ពាក្យទិព្វ",
+ "translate-magic-namespace": "ឈ្មោះនៃលំហឈ្មោះ",
+ "translate-magic-notsaved": "កំណែប្រែរបស់អ្នកមិនត្រូវបានរក្សាទុកទេ!",
+ "translate-magic-errors": "សូមកែប្រែ{{PLURAL:$1|កំហុសឆ្គង|កំហុសឆ្គង}}ទាំងនេះ ដែលមានក្នុងការកែប្រែ៖",
+ "translate-magic-saved": "ការកែប្រែរបស់អ្នក​ត្រូវបានរក្សាទុកដោយជោគជ័យ។",
+ "translate-checks-parameters": "{{PLURAL:$2|ប៉ារ៉ាម៉ែត្រ|ប៉ារ៉ាម៉ែត្រ}}ខាងក្រោមនេះមិនត្រូវបានគេប្រើទេ៖\n\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-parameters-unknown": "{{PLURAL:$2|parameter is|ប៉ារ៉ាម៉ែត្រ}}ខាងក្រោមនេះមិនត្រូវបានស្គាល់ទេ៖\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-balance": "មាន{{PLURAL:$2|វង់ក្រចក|វង់ក្រចក}}​ដែលមិន​មាន​គូ៖\n\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links": "{{PLURAL:$2|តំណភ្ជាប់|តំណភ្ជាប់}}ខាងក្រោមនេះ​មានបញ្ហា៖ <strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links-missing": "Following {{PLURAL:$2|តំណភ្ជាប់|តំណភ្ជាប់ចំនួន $2}} ខាងក្រោមនេះបាត់៖\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-xhtml": "សូម​ជំនួស​{{PLURAL:$2|tag|ប្លាក}}​ខាងក្រោមដោយប្លាកដែលត្រឹមត្រូវ៖\n\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-plural": "និយមន័យ​ប្រើប្រាស់ <nowiki>{{PLURAL:}}</nowiki> ប៉ុន្តែ​បទប្រែសម្រួល​មិនមាន ។",
+ "translate-checks-pagename": "លំហឈ្មោះ​ត្រូវ​បាន​ផ្លាស់ប្ដូរ​ពី​និយមន័យ",
+ "translate-checks-format": "ការបកប្រែនេះមិនគោរពតាមនិយមន័យឬមានវេយ្យាករណ៍មិនត្រឹមត្រូវ៖ $1",
+ "translate-checks-fudforum-syntax": "ប្រើ <nowiki>$1</nowiki> ជំនួសអោយ <nowiki>$2</nowiki> នៅក្នុងគំរោងនេះ។",
+ "translate-pref-nonewsletter": "កុំផ្ញើអ៊ីមែលព្រឹត្តិប័ត្រសារព័ត៌មានមកខ្ញុំអី",
+ "translate-pref-editassistlang": "ភាសាជំនួយ៖",
+ "prefs-translate": "ជំរើសទាក់ទិននឹងការបកប្រែ",
+ "translate-pref-editassistlang-help": "បញ្ជីកូដភាសាខណ្ឌចែកដោយសញ្ញាក្បៀស។\nការបកប្រែសារមួយនៅក្នុងភាសាទាំងនេះ ត្រូវបានបង្ហាញពេលដែលអ្នកកំពុងបកប្រែ។\nបញ្ចីភាសាតាមលំនាំដើម អាស្រ័យលើភាសារបស់អ្នក។",
+ "translate-pref-editassistlang-bad": "កូដភាសាមិនត្រឹមត្រូវនៅក្នុងបញ្ជីនេះ៖\n<nowiki>$1</nowiki>។",
+ "right-translate": "កែប្រែដោយប្រើអន្តរមុខបកប្រែ",
+ "right-translate-manage": "គ្រប់គ្រងក្រុមសារ",
+ "right-translate-import": "នាំចូលការបកប្រែក្រៅបណ្ដាញ",
+ "action-translate-import": "នាំចូលការបកប្រែក្រៅបណ្ដាញ",
+ "translate-rc-translation-filter": "ការបកប្រែតម្រង៖",
+ "translate-rc-translation-filter-no": "កុំធ្វើអ្វីទាំងអស់",
+ "translate-rc-translation-filter-only": "បង្ហាញតែការបកប្រែប៉ុណ្ណោះ",
+ "translate-rc-translation-filter-filter": "តំរងយកតែអ្វីដែលមិនមែនជាការបកប្រែ",
+ "translate-rc-translation-filter-site": "ប្ដូរ​សារ​តំបន់បណ្ដាញ​តែប៉ុណ្ណោះ",
+ "translationstats": "ស្ថិតិបកប្រែ",
+ "translate-stats-edits": "ចំនួនកំណែប្រែក្នុងមួយថ្ងៃ",
+ "translate-stats-users": "អ្នកបកប្រែ",
+ "translate-stats-registrations": "ការចុះឈ្មោះ",
+ "translate-statsf-intro": "អ្នកអាចបង្កើតស្ថិតិសាមញ្ញដោយប្រើទំរង់បែបបទនេះ។ គ្រប់តំលៃលេខមានតំលៃកំហិតលើនិងក្រោម។",
+ "translate-statsf-options": "ជម្រើស​ក្រាហ្វិក",
+ "translate-statsf-width": "ទទឹងគិតជាភីកសែល:",
+ "translate-statsf-height": "កម្ពស់គិតជាភីកសែល",
+ "translate-statsf-days": "រយៈពេលគិតជាថ្ងៃ",
+ "translate-statsf-start": "កាលបរិច្ឆេទចាប់ផ្ដើម៖",
+ "translate-statsf-scale": "បំនែក៖",
+ "translate-statsf-scale-months": "ខែ",
+ "translate-statsf-scale-weeks": "សប្តាហ៍",
+ "translate-statsf-scale-days": "ថ្ងៃ",
+ "translate-statsf-scale-hours": "ម៉ោង",
+ "translate-statsf-count": "វាស់",
+ "translate-statsf-count-edits": "ចំនួនកំណែប្រែ",
+ "translate-statsf-count-users": "អ្នកបកប្រែសកម្ម",
+ "translate-statsf-count-registrations": "អ្នកប្រើប្រាស់ថ្មី",
+ "translate-statsf-count-reviews": "ការត្រួតពិនិត្យការបកប្រែ",
+ "translate-statsf-count-reviewers": "អ្នកត្រួតពិនិត្យឡើងវិញ",
+ "translate-statsf-language": "ចុល្លភាគ (,)-បាន​ខណ្ឌ​ចែក​បញ្ជី​កូដ​ភាសា",
+ "translate-statsf-group": "ចុល្លភាគ (,)-បាន​ខណ្ឌ​ចែក​បញ្ជី​កូដ​ក្រុម",
+ "translate-statsf-submit": "ការមើលមុន",
+ "translate-tag-category": "ទំព័រដែលអាចបកប្រែបាន",
+ "translate-tag-page-desc": "ការបកប្រែរបស់ទំព័រវិគី [[$2|$1]]។",
+ "translate-sidebar-alltrans": "ជាភាសាដទៃទៀត",
+ "translations": "បំណកប្រែទាំងអស់",
+ "translations-summary": "បញ្ចូល​ឈ្មោះ​សារ​ខាងក្រោម ដើម្បី​បង្ហាញ​គ្រប់​សារ​ទាំងអស់​ដែល​អាច​ប្រែសម្រួល​បាន​។",
+ "translate-translations-no-message": "\"$1\" គឺជា​សារ​ដែល​មិនអាច​ប្រែសម្រួល​បាន",
+ "translate-translations-none": "មិនមាន​ការបកប្រែ​សម្រាប់ \"$1\"",
+ "translate-translations-count": "រកឃើញ {{PLURAL:$1|ការបកប្រែមួយ|ការបកប្រែចំនួន $1}}។",
+ "translate-translations-fieldset-title": "សារ",
+ "translate-translations-messagename": "ឈ្មោះ​៖",
+ "translate-translations-project": "គំរោង៖",
+ "translate-translations-including-no-param": "សូម​បញ្ជាក់​នូវ​កូនសោ​សារ​ត្រឹមត្រូវ នៅក្នុង​ប៉ារ៉ាម៉ែត្រ​ទំព័ររង",
+ "translate-translations-history-short": "ប",
+ "languagestats": "ស្ថិតិ​ភាសា",
+ "languagestats-summary": "ទំព័រ​នេះ​បង្ហាញ​ស្ថិតិ​នៃ​ការប្រែសម្រួល​​គ្រប់ក្រុម​សារ​ទាំងអស់​សម្រាប់​ភាសា​មួយ​។",
+ "languagestats-stats-for": "ស្ថិតិបកប្រែសំរាប់ $1 ($2)។",
+ "languagestats-recenttranslations": "ការបកប្រែនាពេលថ្មីៗ",
+ "translate-langstats-incomplete": "ស្ថិតិខ្លះនៅលើទំព័រនេះមិនពេញលេញទេ។ សូមផ្ទុកជាថ្មីដើម្បីទទួលបានស្ថិតិបន្ថែមទៀត។",
+ "translate-langstats-expand": "ពន្លាត",
+ "translate-langstats-collapse": "បង្រួញ",
+ "translate-langstats-expandall": "ពន្លាតទាំងអស់",
+ "translate-langstats-collapseall": "បង្រួញទាំងអស់",
+ "translate-language-code": "កូដភាសា",
+ "translate-language-code-field-name": "កូដភាសា​៖",
+ "translate-suppress-complete": "លាក់ក្រុមសារដែលបានបកប្រែទាំងស្រុងហើយ",
+ "translate-ls-noempty": "លាក់ក្រុមសារដែលមិនទាន់មានការបកប្រែសោះ",
+ "translate-language": "ភាសា",
+ "translate-total": "សារផ្សេងៗ",
+ "translate-untranslated": "មិនទាន់បកប្រែ",
+ "translate-percentage-complete": "ជាស្ថាពរ",
+ "translate-percentage-fuzzy": "ហួសសម័យ",
+ "translate-languagestats-overall": "ក្រុមសារទាំងអស់ជាមួយគ្នា",
+ "translate-ls-submit": "បង្ហាញស្ថិតិ",
+ "translate-ls-column-group": "ក្រុមសារ",
+ "translate-mgs-pagename": "ស្ថិតិក្រុមសារ",
+ "translate-mgs-fieldset": "ចំណង់ចំណូលចិត្តសំរាប់ការបង្ហាញ​",
+ "supportedlanguages": "ភាសាដែលអាចប្រើបាន",
+ "supportedlanguages-translators": "{{PLURAL:$2|អ្នកបកប្រែ|អ្នកបកប្រែ}}៖ $1",
+ "supportedlanguages-recenttranslations": "ការបកប្រែនាពេលថ្មីៗ",
+ "translate-save": "រក្សាទុក ($1)",
+ "translate-jssti-add": "បន្ថែមទៅក្នុង​បញ្ជី​",
+ "managemessagegroups": "ការគ្រប់គ្រងក្រុមសារ",
+ "translate-manage-import-diff": "សារ $1 | សកម្មភាព៖ $2",
+ "translate-manage-import-new": "សារថ្មី $1",
+ "translate-manage-import-deleted": "សារលុបចោល $1",
+ "translate-manage-action-import": "នាំចូល",
+ "translate-manage-submit": "ប្រតិបត្តិ​",
+ "translate-manage-import-done": "នាំ​ចូល​រួច​ហើយ!",
+ "importtranslations": "នាំចូល​ការបកប្រែ​",
+ "translate-import-load": "ផ្ទុក​ឯកសារ​",
+ "translate-import-err-ul-failed": "ការផ្ទុក​ឡើង​នៃឯកសារ​ មិនបានជោគជ័យ​",
+ "translate-js-save": "រក្សាទុក",
+ "translate-js-next": "រក្សាទុករួចបើកសារបន្ទាប់",
+ "translate-js-nonext": "នេះជាសារចុងក្រោយគេនៅលើទំព័រនេះ",
+ "translate-js-skip": "រំលងទៅកាន់សារបន្ទាប់",
+ "translate-js-save-failed": "ការរក្សាទុកបានបរាជ័រ។ សូមរាយការណ៍អំពីបញ្ហានេះ។",
+ "translate-js-history": "ប្រវត្តិនៃការបកប្រែ",
+ "translate-js-support": "សួរសំណួរ",
+ "translate-js-support-title": "សួររកជំនួយប្រសិនបើគ្មានព័ត៌មានគ្រប់គ្រាន់សំរាប់ជួយអោយអ្នកបកប្រើសារនេះបានត្រឹមត្រូវទេ។",
+ "translate-gs-pos": "ទីតាំង",
+ "translate-gs-code": "កូដ",
+ "translate-gs-continent": "ទ្វីប",
+ "translate-gs-speakers": "អ្នកនិយាយ",
+ "translate-gs-score": "ពិន្ទុ",
+ "translate-gs-multiple": "ច្រើនទ្វីប",
+ "translate-gs-count": "ចំនួន",
+ "translate-gs-total": "សរុប",
+ "translate-gs-avgscore": "ពិន្ទុមធ្យម"
+}
diff --git a/MLEB/Translate/i18n/core/kn.json b/MLEB/Translate/i18n/core/kn.json
new file mode 100644
index 00000000..70bf16a8
--- /dev/null
+++ b/MLEB/Translate/i18n/core/kn.json
@@ -0,0 +1,116 @@
+{
+ "@metadata": {
+ "authors": [
+ "Dimension10",
+ "Dipin",
+ "Munirathnam",
+ "Nayvik",
+ "VASANTH S.N."
+ ]
+ },
+ "translate": "ಭಾಷಾಂತರಿಸಿ",
+ "translate-desc": "[[Special:Translate|ವಿಷೇಶ ಪುಟ]]ಮೀಡಿಯಾವಿಕಿ ಮತ್ತು ಹೆಚ್ಚಿನದನ್ನು ಭಾಷಾಂತರಿಸಲು",
+ "translate-taskui-view": "ಎಲ್ಲಾ ಸಂದೇಶಗಳನ್ನು ತೋರಿಸಿ",
+ "translate-taction-lstats": "ಭಾಷಾ ಅಂಕಿಅಂಶಗಳು",
+ "translate-page-no-such-language": "ಉಲ್ಲೇಖಿಸಿದ ಭಾಷೆ ಅಸ್ತಿತ್ವದಲ್ಲಿ ಇಲ್ಲ",
+ "translate-page-no-such-group": "ಉಲ್ಲೇಖಿಸಿದ ಗುಂಪು ಅಸಿಂಧುವಾಗಿತ್ತು",
+ "translate-page-disabled": "ಈ ಗುಂಪಿಗೆ ಈ ಭಾಷೆಯ ಭಾಷಾಂತರಗಳನ್ನು ಅಸಮರ್ಥಗೊಳಿಸಿದೆ. ಕಾರಣ <em>$1</em>",
+ "translate-page-settings-legend": "ವ್ಯವಸ್ಥೆಗಳು",
+ "translate-page-group": "ಗುಂಪು",
+ "translate-page-language": "ಭಾಷೆ",
+ "translate-page-limit": "ಮಿತಿ",
+ "translate-page-limit-option": "$1 {{PLURAL:$1|ಸಂದೇಶ|ಸಂದೇಶಗಳು}} ಪ್ರತಿ ಪುಟಕ್ಕೆ",
+ "translate-submit": "ಕರೆತರು",
+ "translate-page-navigation-legend": "ಪಥ ನಿರ್ದೇಶನ",
+ "translate-page-showing": "ಒಟ್ಟು $3 ರಲ್ಲಿ $1 ರಿಂದ $2 ರ ವರೇಗಿನ ಸಂದೇಶಗಳನ್ನು ತೋರಿಸುತ್ತಿದೆ",
+ "translate-page-showing-all": "$1 {{PLURAL:$1|ಸಂದೇಶ|ಸಂದೇಶಗಳನ್ನು}} ತೋರಿಸುತ್ತಿದೆ.",
+ "translate-page-showing-none": "ತೋರಿಸಲು ಸಂದೇಶಗಳಿಲ್ಲ",
+ "translate-next": "ಮುಂದಿನ ಪುಟ",
+ "translate-prev": "ಹಿಂದಿನ ಪುಟ",
+ "translate-page-description-legend": "ಗುಂಪಿನ ಬಗ್ಗೆ ಮಾಹಿತಿ",
+ "translate-page-description-hasoptional": "ಈ ಸಂದೇಶಗಳ ಗುಂಪು ಐಚ್ಛಿಕ ಸಂದೇಶಗಳನ್ನು ಒಳಗೊಂಡಿದೆ. ಐಚ್ಛಿಕ ಸಂದೇಶಗಳು ನಿರ್ಧಿಷ್ಟ ಅಗತ್ಯಗಳಿದ್ದಾಗ ಮಾತ್ರ ಭಾಷಾಂತರಿಸಲ್ಪಡ ಬೇಕು. $1",
+ "translate-page-description-hasoptional-open": "ಐಚ್ಛಿಕ ಸಂದೇಶಗಳನ್ನು ತೋರಿಸಿ",
+ "translate-page-edit": "ಸಂಪಾದಿಸಿ",
+ "translate-optional": "(ಐಚ್ಛಿಕ)",
+ "translate-ignored": "ಕಡೆಗಣಿಸಲ್ಪಟ್ಟ",
+ "translate-edit-title": "\"$1\"ನ್ನು ಸಂಪಾದಿಸು",
+ "translate-edit-definition": "ಸಂದೇಶ ವ್ಯಾಖ್ಯೆ",
+ "translate-edit-translation": "ಅನುವಾದ",
+ "translate-edit-contribute": "ನೆರವಾಗು",
+ "translate-edit-no-information": "\"ಈ ಸಂದೇಶಕ್ಕೆ ಯಾವುದೇ ದಾಖಲೆಗಳಿಲ್ಲ.\"\n\"ನಿಮಗೆ ಈ ಸಂದೇಶ ಎಲ್ಲಿಯಾದರೂ ಅಥವಾ ಹೇಗಾದರೂ ಉಪಯೋಗದಲ್ಲಿರುವುದು ತಿಳಿದಿದ್ದರೆ,ನೀವು ಇದಕ್ಕೆ ತಕ್ಕ ದಾಖಲೆಗಳನ್ನು ಸೇರಿಸಿ ಬೇರಿ ಭಾಷಾಂತರಕಾರರಿಗೆ ಸಹಾಯ ಮಾಡಬಹುದು.\"",
+ "translate-edit-information": "ಸಂದೇಶದ ಬಗ್ಗೆ ಮಾಹಿತಿ ($1)",
+ "translate-edit-in-other-languages": "ಬೇರೆ ಭಾಷೆಗಳಲ್ಲಿ ಸಂದೇಶ",
+ "translate-edit-committed": "ತಂತ್ರಾಂಶದಲ್ಲಿ ಪ್ರಸ್ತುತ ಭಾಷಾಂತರ",
+ "translate-edit-warnings": "ಅಸಂಪೂರ್ಣ ಭಾಷಾಂತರದ ಬಗ್ಗೆ ಎಚ್ಚರಿಕೆ",
+ "translate-edit-tmsugs": "ಭಾಷಾಂತರ ನೆನಪು ಹಾಗೂ ಭಾಷಾಂತರ ಯಂತ್ರಗಳ ಸಲಹೆ",
+ "translate-edit-tmmatch": "$1% ಹೊ೦ದಿಸಿ",
+ "translate-use-suggestion": "ಈಗಿನ ಭಾಷಾಂತರವನ್ನು ಈ ಸಲಹೆಯೊಂದಿಗೆ ಬದಲಾಯಿಸಿ",
+ "translate-edit-nopermission": "ಭಾಷಾಂತರಿಸಲು ನಿಮಗೆ ಅನುಮತಿ ಬೇಕು",
+ "translate-edit-askpermission": "ಅನುಮತಿಗಾಗಿ ಕೋರಿಕೆ",
+ "translate-magic-pagename": "ವಿಸ್ತರಿಸಲ್ಪಟ್ಟ ಮಿಡಿಯಾವಿಕಿ ಭಾಷಾಂತರ",
+ "translate-magic-module": "ಘಟಕ",
+ "translate-magic-submit": "ಕರೆತರು",
+ "translate-magic-cm-export": "ರಫ್ತು ಮಾಡು",
+ "translate-magic-nothing-to-export": "ರಫ್ತು ಮಾಡಲು ಏನೂ ಇಲ್ಲ",
+ "translate-magic-cm-current": "ಪ್ರಸಕ್ತ",
+ "translate-magic-cm-original": "ಅಸಲು",
+ "translate-magic-cm-comment": "ಟಿಪ್ಪಣಿ :",
+ "translate-magic-cm-save": "ಉಳಿಸಿ",
+ "translate-magic-cm-savefailed": "ಉಳಿಸುವಿಕೆ ವಿಫಲ",
+ "translate-magic-special": "ವಿಷೇಶ ಪುಟ ಉಪನಾಮಗಳು",
+ "translate-magic-words": "ಜಾದೂ ಶಬ್ದಗಳು",
+ "translate-magic-notsaved": "ನಿಮ್ಮ ಸಂಪಾದನೆಯನ್ನು ಉಳಿಸಲಾಗಿಲ್ಲ!",
+ "translate-magic-errors": "ಭಾಷಾಂತರಗಳಲ್ಲಿ ಕೆಳಗಿನ ತಪ್ಪುಗಳನ್ನು ದಯವಿಟ್ಟು ಗುರುತಿಸಿ{{PLURAL:$1|ತಪ್ಪು|ತಪ್ಪುಗಳು}}",
+ "translate-magic-saved": "ನಿಮ್ಮ ಬದಲಾವಣೆಗಳನ್ನು ಉಳಿಸಲಾಗಿದೆ.",
+ "translate-checks-parameters-unknown": "ಕೆಳಗಿನ {{PLURAL:$2|ಮಾನದಂಡವು|ಮಾನದಂಡಗಳು}} ಅಪರಿಚಿತ\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links-missing": "ಈ ಕೆಳಗಿನ {{PLURAL:$2|ಕೊಂಡಿಯು|$2 ಕೊಂಡಿಗಳು}}ಕಾಣೆಯಾಗಿವೆ:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-plural": "ವ್ಯಾಖ್ಯೆಗೆ ಉಪಯೋಗ <nowiki>{{PLURAL:}}</nowiki> ಆದರೆ ಭಾಷಾಂತರಕ್ಕೆ ಅಲ್ಲ.",
+ "translate-checks-format": "ಈ ಭಾಷಾಂತರವು ವ್ಯಾಖ್ಯೆಗ ಸರಿಹೊಂದುತ್ತಿಲ್ಲ ಅಥವಾ ತಪ್ಪು ಪದವಿನ್ಯಾಸವನ್ನು ಹೊಂದಿದೆ: $1",
+ "translate-checks-escape": "ಈ ಕೆಳಗಿನ ಗಮನಕ್ಕೆ ಬಾರದಿರುವ ವಿಷಯ ಆಕಸ್ಮಿಕವಿರಬಹುದು: <strong>$1</strong>",
+ "translate-checks-fudforum-syntax": " <nowiki>$2</nowiki> ರ ಬದಲು <nowiki>$1</nowiki> ನ್ನು ಈ ಯೋಜನೆಯಲ್ಲಿ ಬಳಸಿ in this project.",
+ "translate-pref-nonewsletter": "ನನಗೆ ಮಿಂಚಂಚೆ ವಾರ್ತಾಪತ್ರಿಕೆಗಳನ್ನು ಕಳುಹಿಸುವುದು ಬೇಡ",
+ "translate-pref-editassistlang": "ಸಹಾಯಕ ಭಾಷೆ:",
+ "prefs-translate": "ಭಾಷಾಂತರ ಆಯ್ಕೆಗಳು",
+ "translate-pref-editassistlang-bad": "ಈ ಪಟ್ಟಿಯಲ್ಲಿರುವ ಭಾಷಾ ಸಂಕೇತ ಅಸಿಂಧು: $1",
+ "right-translate-manage": "ಸಂದೇಶ ಗುಂಪುಗಳನ್ನು ನಿಭಾಯಿಸಿ",
+ "right-translate-import": "ಸ್ಥಿರ ಸಂಪರ್ಕದಿಂದ ಭಾಷಾಂತರವನ್ನು ಆಮದು ಮಾಡಿ",
+ "translate-rc-translation-filter-no": "ಏನೂ ಮಾಡಬೇಡಿ",
+ "translate-rc-translation-filter-only": "ಭಾಷಾಂತರವನ್ನು ಮಾತ್ರಾ ತೋರಿಸಿ",
+ "translate-rc-translation-filter-filter": "ಭಾಷಾಂತರಗಳನ್ನುಶೋಧಿಸಿ",
+ "translationstats": "ಭಾಷಾಂತರ ಅಂಕೆಸಂಖ್ಯೆ",
+ "translate-stats-edits": "ಸಂಪಾದನೆಗಳು",
+ "translate-stats-users": "ಅನುವಾದಕರು",
+ "translate-statsf-width": "ಪಿಕ್ಸಲ್‌ಗಳಲ್ಲಿ ಅಗಲ:",
+ "translate-statsf-height": "ಪಿಕ್ಸಲ್‌ಗಳಲ್ಲಿ ಎತ್ತರ:",
+ "translate-statsf-start": "ಪ್ರಾರಂಭ ದಿನಾಂಕ",
+ "translate-statsf-scale-months": "ತಿಂಗಳುಗಳು",
+ "translate-statsf-scale-weeks": "ವಾರಗಳು",
+ "translate-statsf-scale-days": "ದಿನಗಳು",
+ "translate-statsf-scale-hours": "ಘಂಟೆಗಳು",
+ "translate-statsf-count": "ಅಳತೆ:",
+ "translate-statsf-count-edits": "ಸಂಪಾದನೆಗಳ ಸಂಖ್ಯೆ",
+ "translate-statsf-count-users": "ಸಕ್ರಿಯ ಭಾಷಾಂತರಕಾರರು",
+ "translate-statsf-submit": "ಮುನ್ನೋಟ",
+ "translate-tag-category": "ಭಾಷಾಂತರಿಸಬಹುದಾದ ಪುಟಗಳು",
+ "translate-tag-page-desc": "ವಿಕಿ [[$2|$1]]ಪುಟಗಳ ಅನುವಾದ.",
+ "translate-sidebar-alltrans": "ಇತರ ಭಾಷೆಗಳಲ್ಲಿ",
+ "translations": "ಎಲ್ಲಾ ಅನುವಾದಗಳು",
+ "translations-summary": "ದೊರೆಯಬಹುದಾದ ಎಲ್ಲಾ ಅನುವಾದಗಳು ಕಾಣಿಸುವಂತಗೆ ಒಂದು ಸಂದೇಶದ ಹೆಸರನ್ನು ನಮೂದಿಸಿ",
+ "translate-translations-no-message": "\"$1\"ವು ಅನುವಾದ ಮಾಡಬಹುದಾದ ಸಂದೇಶವಲ್ಲಿ",
+ "translate-translations-fieldset-title": "ಸಂದೇಶ",
+ "translate-translations-messagename": "ಹೆಸರು:",
+ "translate-translations-project": "ಯೋಜನೆ:",
+ "languagestats": "ಭಾಷಾ ಅಂಕಿಅಂಶಗಳು",
+ "translate-langstats-expand": "ಹಲವು",
+ "translate-langstats-collapse": "ಕುಸಿತ",
+ "translate-language-code": "ಭಾಷಾ ಸಂಕೇತ",
+ "translate-language-code-field-name": "ಭಾಷಾ ಸಂಕೇತ:",
+ "translate-language": "ಭಾಷೆ",
+ "translate-total": "ಸಂದೇಶಗಳು",
+ "translate-mgs-column-language": "ಭಾಷೆ",
+ "translate-manage-import-new": "ಹೊಸ ಸಂದೇಶ $1",
+ "translate-manage-import-done": "ಎಲ್ಲಾ ಮಾಡಲ್ಪಟ್ಟಿದೆ!",
+ "importtranslations": "ಭಾಷಾಂತರಗಳನ್ನು ಆಮದು ಮಾಡಿ",
+ "translate-gs-total": "ಒಟ್ಟು",
+ "translate-dynagroup-recent-label": "ಇತ್ತೀಚಿನ ಅನುವಾದಗಳು"
+}
diff --git a/MLEB/Translate/i18n/core/ko.json b/MLEB/Translate/i18n/core/ko.json
new file mode 100644
index 00000000..05b35b7b
--- /dev/null
+++ b/MLEB/Translate/i18n/core/ko.json
@@ -0,0 +1,391 @@
+{
+ "@metadata": {
+ "authors": [
+ "Ficell",
+ "Freebiekr",
+ "Hym411",
+ "Klutzy",
+ "Kwj2772",
+ "ToePeu",
+ "관인생략",
+ "아라",
+ "Priviet",
+ "Revi"
+ ]
+ },
+ "translate": "번역하기",
+ "translate-desc": "미디어위키와 기타를 번역하기 위한 [[Special:Translate|특수 문서]]",
+ "translate-taskui-view": "모든 메시지 보기",
+ "translate-taskui-untranslated": "번역되지 않은 메시지 보기",
+ "translate-taskui-optional": "선택적 메시지 보기",
+ "translate-taskui-acceptqueue": "내가 검토한 것으로 표시할 수 있는 메시지만",
+ "translate-taskui-reviewall": "모든 번역 검토하기",
+ "translate-taskui-export-to-file": "네이티브 형식으로 내보내기",
+ "translate-taskui-export-as-po": "오프라인 번역용으로 내보내기",
+ "translate-taction-translate": "번역하기",
+ "translate-taction-proofread": "검토하기",
+ "translate-taction-lstats": "언어 통계",
+ "translate-taction-mstats": "메시지 그룹 통계",
+ "translate-taction-export": "내보내기",
+ "translate-taction-disabled": "이 행동은 이 위키에서 비활성화되어 있습니다.",
+ "translate-page-no-such-language": "선택한 언어가 잘못되었습니다.",
+ "translate-page-no-such-group": "입력한 그룹이 잘못되었습니다.",
+ "translate-page-disabled": "이 그룹에서 이 언어로의 번역이 비활성화되어 있습니다.\n이유:\n\n<em>$1</em>",
+ "translate-language-disabled": "이 언어로의 번역이 비활성화되어 있습니다.",
+ "translate-page-settings-legend": "설정",
+ "translate-page-group": "그룹",
+ "translate-page-language": "언어",
+ "translate-page-limit": "제한",
+ "translate-page-limit-option": "페이지당 {{PLURAL:$1|메시지}} $1개",
+ "translate-submit": "불러오기",
+ "translate-page-navigation-legend": "둘러보기",
+ "translate-page-showing": "메시지 $3개 중 $1 - $2을(를) 보고 있습니다.",
+ "translate-page-showing-all": "{{PLURAL:$1|메시지}} $1개를 보고 있습니다.",
+ "translate-page-showing-none": "보여줄 메시지가 없습니다.",
+ "translate-next": "다음 페이지",
+ "translate-prev": "이전 페이지",
+ "translate-page-description-legend": "이 그룹에 대한 정보",
+ "translate-page-description-hasoptional": "이 메시지 그룹은 선택적 메시지를 포함합니다.\n언어에 공백을 사용하거나 적절한 이름을 번역할 수 없는 등의 특별한 요구 사항이\n있을 때에만 선택적 메시지를 번역해야 합니다. $1",
+ "translate-page-description-hasoptional-open": "선택적 메시지 보기",
+ "translate-page-edit": "편집",
+ "translate-ext-url": "<hr />웹 사이트: $1",
+ "translate-optional": "(선택 사항)",
+ "translate-ignored": "(무시됨)",
+ "translate-edit-title": "\"$1\" 편집하기",
+ "translate-edit-definition": "메시지 정의",
+ "translate-edit-translation": "번역",
+ "translate-edit-contribute": "편집하기",
+ "translate-edit-no-information": "<em>이 메시지에 대한 설명문이 없습니다.\n만약 이 메시지가 어디에 어떻게 사용되는지 알고 있다면 설명문을 작성해 다른 번역자를 도와줄 수 있습니다.</em>",
+ "translate-edit-information": "이 메시지에 대한 정보 ($1)",
+ "translate-edit-in-other-languages": "이 메시지의 다른 언어판",
+ "translate-edit-committed": "소프트웨어의 현재 번역",
+ "translate-edit-warnings": "불완전한 번역에 대한 경고",
+ "translate-edit-tmsugs": "번역 기억과 기계 번역에서 제안",
+ "translate-edit-tmmatch-source": "번역 원본 텍스트: $1",
+ "translate-edit-tmmatch": "$1% 일치",
+ "translate-use-suggestion": "이 제안에 현재 번역을 바꿉니다.",
+ "translate-edit-nopermission": "메시지를 번역할 수 있는 번역 권한이 필요합니다.",
+ "translate-edit-askpermission": "권한 얻기",
+ "translate-magic-pagename": "확장된 미디어위키 번역",
+ "translate-magic-help": "여기서 특수 문서 이름, 특수 명령, 이름공간 이름을 번역할 수 있습니다.\n\n특수 문서와 특수 명령은 여러 개의 번역이 가능합니다.\n여러 개의 번역을 할 경우에는 쉼표(,)로 번역을 구별합니다.\n단, 이름공간은 오직 하나의 번역만 가능합니다.\n\n번역할 때 프로젝트 토론 이름공간인 <code>$1 talk</code>은 복잡할 수 있습니다.\n<code>$1</code>(은)는 프로젝트 사이트 이름(예를 들어 <code>{{ns:project_talk}}</code>)으로 바뀝니다.\n사이트 이름을 바꾸지 않고서 적절한 표현 방법을 구성할 수 없다면 [[Support]]에서 문의하세요.\n\n이 편집을 저장하려면 번역자 권한이 필요합니다.\n아래의 저장 버튼을 누르기 전까지는 바뀐 내용이 저장되지 않습니다.",
+ "translate-magic-module": "모듈:",
+ "translate-magic-submit": "불러오기",
+ "translate-magic-cm-export": "내보내기",
+ "translate-magic-nothing-to-export": "내보낼 것이 없습니다.",
+ "translate-magic-cm-to-be": "번역 후",
+ "translate-magic-cm-current": "현재",
+ "translate-magic-cm-original": "원래 내용",
+ "translate-magic-cm-comment": "요약:",
+ "translate-magic-cm-save": "저장",
+ "translate-magic-cm-updatedusing": "[[Special:AdvancedTranslate|{{int:Translate-magic-pagename}}]]을 통해 업데이트함",
+ "translate-magic-cm-savefailed": "저장 실패",
+ "translate-magic-special": "특수 문서 이름",
+ "translate-magic-words": "특수 명령",
+ "translate-magic-namespace": "이름공간 이름",
+ "translate-magic-notsaved": "편집이 저장되지 않았습니다!",
+ "translate-magic-errors": "번역문에서 다음 {{PLURAL:$1|오류}}를 수정하세요:",
+ "translate-magic-saved": "바뀜을 성공적으로 저장했습니다.",
+ "translate-checks-parameters": "다음 {{PLURAL:$2|변수가}} 사용되지 않았습니다:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-parameters-unknown": "다음 {{PLURAL:$2|변수를}} 알 수 없습니다:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-balance": "{{PLURAL:$2|괄호}}의 고르지 않은 개수가 있습니다:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links": "다음 {{PLURAL:$2|링크|링크 $2개}}에 문제가 있습니다:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links-missing": "다음 {{PLURAL:$2|링크|링크 $2개}}가 없습니다:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-xhtml": "올바른 것과 함께 다음과 같은 {{PLURAL:$2|태그}}를 바꾸세요:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-plural": "메시지 원문에는 <nowiki>{{PLURAL:}}</nowiki>을 사용하지만 번역문에서는 그렇지 않습니다.",
+ "translate-checks-plural-forms": "<nowiki>{{PLURAL:}}</nowiki>은 {{PLURAL:$1|양식 하나|양식 $1개}}에 주었지만 {{PLURAL:$2|양식 하나만|양식 $2개를}} 지원합니다. (0= 과 1= 양식 제외)",
+ "translate-checks-plural-dupe": "<nowiki>{{PLURAL:}}</nowiki>은 끝에서 양식이 중복했습니다. <nowiki>{{PLURAL:$1|양|양}}</nowiki>은 <nowiki>{{PLURAL:$1|양}}</nowiki>으로 적어야 합니다.",
+ "translate-checks-pagename": "이름공간이 정의로부터 바뀌었습니다",
+ "translate-checks-format": "이 번역은 정의를 따르지 않거나 잘못된 구문입니다: $1",
+ "translate-checks-escape": "다음의 탈출은 실수였을 수 있습니다: <strong>$1</strong>",
+ "translate-checks-parametersnotequal": "변수 개수는 {{PLURAL:$1|$1}}개이며 {{PLURAL:$2|$2}}개여야 합니다.",
+ "translate-checks-malformed": "<nowiki>$1</nowiki>(은)는 잘못된 형식입니다.",
+ "translate-checks-fudforum-syntax": "이 프로젝트에는 <nowiki>$2</nowiki> 대신에 <nowiki>$1</nowiki>(을)를 사용하세요.",
+ "translate-pref-nonewsletter": "이메일 뉴스레터를 보내지 않음",
+ "translate-pref-editassistlang": "보조 언어:",
+ "prefs-translate": "번역 옵션",
+ "translate-pref-editassistlang-help": "쉼표로 언어 코드 목록을 구분하세요.\n번역할 때는 해당 언어로 메시지 번역이 보입니다.\n언어의 기본 목록은 내 언어에 따라 달라집니다.",
+ "translate-pref-editassistlang-bad": "목록에서 잘못된 언어 코드가 있습니다:\n<nowiki>$1</nowiki>.",
+ "right-translate": "시스템 메시지를 번역",
+ "right-translate-manage": "메시지 그룹 관리",
+ "action-translate-manage": "메시지 그룹을 관리할",
+ "right-translate-import": "오프라인 번역 가져오기",
+ "action-translate-import": "오프라인 번역을 가져올",
+ "right-translate-messagereview": "번역 검토하기",
+ "right-translate-groupreview": "메시지 그룹의 작업 상태를 바꾸기",
+ "translate-rc-translation-filter": "번역 필터:",
+ "translate-rc-translation-filter-no": "모두 보기",
+ "translate-rc-translation-filter-only": "번역만 보기",
+ "translate-rc-translation-filter-filter": "번역 빼고 보기",
+ "translate-rc-translation-filter-site": "사이트 메시지 바뀜만 보기",
+ "translationstats": "번역 통계",
+ "translate-stats-edits": "편집",
+ "translate-stats-users": "번역자",
+ "translate-stats-registrations": "등록",
+ "translate-stats-reviews": "검토",
+ "translate-stats-reviewers": "평론가",
+ "translate-statsf-intro": "이 양식으로부터 간단한 통계를 만들 수 있습니다.\n모든 값은 최고 및 최저 제한이 있습니다.",
+ "translate-statsf-options": "그래프 설정",
+ "translate-statsf-width": "픽셀 단위 너비:",
+ "translate-statsf-height": "픽셀 단위 높이:",
+ "translate-statsf-days": "기간 일 수:",
+ "translate-statsf-start": "시작 날짜:",
+ "translate-statsf-scale": "단위:",
+ "translate-statsf-scale-months": "월",
+ "translate-statsf-scale-weeks": "주",
+ "translate-statsf-scale-days": "일",
+ "translate-statsf-scale-hours": "시간",
+ "translate-statsf-count": "기준:",
+ "translate-statsf-count-edits": "편집 수",
+ "translate-statsf-count-users": "활동 중인 번역자",
+ "translate-statsf-count-registrations": "새 사용자",
+ "translate-statsf-count-reviews": "번역 평론가",
+ "translate-statsf-count-reviewers": "평론가",
+ "translate-statsf-language": "언어 코드의 쉼표로 구분한 목록:",
+ "translate-statsf-group": "그룹 코드의 쉼표로 구분한 목록:",
+ "translate-statsf-submit": "미리 보기",
+ "translate-tag-category": "번역 가능한 문서",
+ "translate-tag-page-desc": "[[$2|$1]] 위키 문서의 번역입니다.",
+ "translate-sidebar-alltrans": "다른 언어",
+ "translations": "모든 번역",
+ "translations-summary": "모든 번역을 보려면 메시지 이름을 아래에 입력하세요.",
+ "translate-translations-no-message": "\"$1\"은 번역 가능한 메시지가 아닙니다.",
+ "translate-translations-none": "$1로 번역된 메시지가 없습니다.",
+ "translate-translations-count": "{{PLURAL:$1|번역 한 개|번역 $1개}}를 찾았습니다.",
+ "translate-translations-fieldset-title": "메시지",
+ "translate-translations-messagename": "이름:",
+ "translate-translations-project": "프로젝트:",
+ "translate-translations-including-no-param": "하위 문서 변수에 올바른 메시지 키를 입력해 주십시오.",
+ "translate-translations-history-short": "역",
+ "languagestats": "언어 통계",
+ "languagestats-summary": "이 문서는 특정 언어에 대한 모든 메시지 그룹에 대한 번역 통계를 보여줍니니다.",
+ "languagestats-stats-for": "$1 ($2)에 대한 번역 통계",
+ "languagestats-recenttranslations": "최근 번역",
+ "translate-langstats-incomplete": "통계의 일부가 불완전합니다. 더 많은 통계를 보려면 다시 페이지를 불러오십시오.",
+ "translate-langstats-expand": "펼치기",
+ "translate-langstats-collapse": "접기",
+ "translate-langstats-expandall": "모두 펼치기",
+ "translate-langstats-collapseall": "모두 숨기기",
+ "translate-language-code": "언어 코드",
+ "translate-language-code-field-name": "언어 코드:",
+ "translate-suppress-complete": "완전히 번역된 메시지 그룹을 숨기기",
+ "translate-ls-noempty": "전혀 번역되지 않은 메시지 그룹을 숨기기",
+ "translate-language": "언어",
+ "translate-total": "메시지",
+ "translate-untranslated": "미번역",
+ "translate-percentage-complete": "완료",
+ "translate-percentage-fuzzy": "오래됨",
+ "translate-languagestats-overall": "모든 메시지 그룹의 합계",
+ "translate-ls-submit": "통계 보기",
+ "translate-ls-column-group": "메시지 그룹",
+ "translate-mgs-pagename": "메시지 그룹에 대한 번역 통계",
+ "translate-mgs-fieldset": "보기 설정",
+ "translate-mgs-group": "메시지 그룹:",
+ "translate-mgs-nocomplete": "번역이 완료된 언어는 보이지 않기",
+ "translate-mgs-noempty": "번역이 전혀 되지 않은 언어를 보이지 않기",
+ "translate-mgs-submit": "통계 보기",
+ "translate-mgs-column-language": "언어",
+ "translate-mgs-totals": "모든 언어",
+ "translate-mgs-invalid-group": "지정한 $1 그룹이 존재하지 않습니다.",
+ "translate-mgs-nothing": "요청된 통계에 대해 보여줄 것이 없습니다.",
+ "supportedlanguages": "지원하는 언어",
+ "supportedlanguages-summary": "이 문서는 {{SITENAME}}에서 지원하는 모든 언어의 목록과 그 언어로 번역하는 번역자의 이름을 보여줍니다.\n번역자가 편집을 더 많이 할수록 이름이 크게 나타납니다.\n밑줄의 색깔은 번역자가 얼마나 최근에 활동했는지를 나타냅니다.",
+ "supportedlanguages-colorlegend": "색깔 범례: 마지막 번역을 한 날짜가 $1일 전.",
+ "supportedlanguages-translators": "{{PLURAL:$2|번역자}}: $1",
+ "supportedlanguages-recenttranslations": "최근 번역",
+ "supportedlanguages-count": "총 {{PLURAL:$1|언어 수}}는 $1개입니다.",
+ "supportedlanguages-activity": "$1: {{PLURAL:$2|편집}} $2회 - 마지막 편집 $3{{PLURAL:$3|일}} 전",
+ "translate-save": "저장 ($1)",
+ "translate-jssti-add": "목록에 추가",
+ "managemessagegroups": "메시지 그룹 관리",
+ "translate-smg-notallowed": "이 작업을 실행하는 것을 허용하지 않습니다.",
+ "translate-smg-nochanges": "과정에 대한 바뀜이 없습니다.",
+ "translate-smg-submit": "과정에 대한 바뀜 전송",
+ "translate-smg-submitted": "메시지 정의가 업데이트되었습니다. 바뀜은 백그라운드로 처리하고 있습니다.",
+ "translate-smg-more": "이 편집을 처리하기 위해 더 많은 변화가 있을 수 있습니다.",
+ "translate-smg-left": "위키에서 메시지 내용",
+ "translate-smg-right": "들어오는 바뀜",
+ "translate-manage-import-diff": "메시지 $1 | 동작: $2",
+ "translate-manage-import-new": "새 메시지 $1",
+ "translate-manage-import-deleted": "메시지 $1을 삭제했습니다.",
+ "translate-manage-action-import": "가져오기",
+ "translate-manage-action-conflict": "퍼지 처리하여 가져오기",
+ "translate-manage-action-ignore": "무시",
+ "translate-manage-action-fuzzy": "가져오기와 퍼지 번역",
+ "translate-manage-nochanges": "이 그룹에 대한 메시지 정의 바뀜이 없습니다.",
+ "translate-manage-nochanges-other": "이 언어에 대한 바뀜이 없습니다.\n그룹 자세한 정보 보기로 돌아가려면 다음 링크를 사용하세요.",
+ "translate-manage-inconsistent": "요청에서 일치하지 않음을 발견했습니다.\n바뀜을 확인하고 다시 시도하세요.\n자세한 정보: $1.",
+ "translate-manage-toolong": "최대 처리 시간이 $1{{PLURAL:$1|초}} 초과했습니다.\n처리를 계속하려면 양식을 다시 전송하세요.",
+ "translate-manage-import-summary": "바깥 원본에서 새 판을 가져옴",
+ "translate-manage-conflict-summary": "바깥 소스로부터 새 버전을 가져옵니다.\n확인하세요.",
+ "translate-manage-fuzzy-summary": "메시지 정의가 바뀌었습니다",
+ "translate-manage-submit": "실행",
+ "translate-manage-intro-other": "다음은 $1로 된 번역 바뀜 목록입니다.\n바뀜을 검토하고 각 업데이트에 대해 수행할 작업을 선택하세요.\n바뀜을 무시하기로 선택했다면 이 작업만 일시적입니다.",
+ "translate-manage-import-ok": "가져옴: $1",
+ "translate-manage-import-done": "가져오기 완료!",
+ "importtranslations": "번역 가져오기",
+ "translate-import-from-local": "컴퓨터에 있는 파일 올리기:",
+ "translate-import-load": "파일 불러오기",
+ "translate-import-err-dl-failed": "파일을 읽을 수 없습니다:\n$1",
+ "translate-import-err-ul-failed": "파일 올리기에 실패했습니다.",
+ "translate-import-err-invalid-title": "<nowiki>$1</nowiki> 파일 이름이 올바르지 않습니다.",
+ "translate-import-err-no-such-file": "<nowiki>$1</nowiki> 파일이 없거나 이 위키에 올려지지 않았습니다.",
+ "translate-import-err-stale-group": "이 파일에 들어있는 메시지 그룹이 존재하지 않습니다.",
+ "translate-import-err-no-headers": "파일이 번역 확장 기능에 쓰이는 올바른 형식의 Gettext 파일이 아닙니다:\n파일 헤더에서 메시지 그룹과 언어를 판독할 수 없습니다.",
+ "translate-import-err-warnings": "이 파일을 형식이 올바르지 않습니다.\n에디터가 msgctxt 칸을 지우지 않았는지 확인해주세요.\n자세한 내용: $1",
+ "translate-js-summary": "요약:",
+ "translate-js-save": "저장",
+ "translate-js-next": "저장하고 다음으로 넘어가기",
+ "translate-js-nonext": "이 페이지의 마지막 메시지입니다.",
+ "translate-js-skip": "다음으로 넘어가기",
+ "translate-js-save-failed": "저장에 실패했습니다. 이 오류를 신고해주시기 바랍니다.",
+ "translate-js-history": "번역 역사",
+ "translate-js-support": "질문하기",
+ "translate-js-support-title": "이 메시지를 정확히 번역할 만한 정보가 부족하다면 도움을 요청하세요.",
+ "translate-js-support-unsaved-warning": "번역을 저장하지 않았습니다.",
+ "translate-gs-pos": "순위",
+ "translate-gs-code": "코드",
+ "translate-gs-continent": "대륙",
+ "translate-gs-speakers": "말한이",
+ "translate-gs-score": "점수",
+ "translate-gs-multiple": "여러",
+ "translate-gs-count": "갯수",
+ "translate-gs-total": "합계",
+ "translate-gs-avgscore": "평균 점수",
+ "translate-documentation-language": "메시지 설명문",
+ "translate-searchprofile": "번역문",
+ "translate-searchprofile-tooltip": "모든 번역에서 검색",
+ "translate-search-languagefilter": "언어에 대한 필터:",
+ "translate-search-nofilter": "필터링하지 않음",
+ "translate-messagereview-submit": "검토한 것으로 표시",
+ "translate-messagereview-progress": "검토한 것으로 표시 중...",
+ "translate-messagereview-failure": "검토한 것으로 표시하는 데 실패했습니다: $1",
+ "translate-messagereview-done": "검토됨",
+ "translate-messagereview-reviews": "{{PLURAL:$1|한 사용자|사용자 $1명}}에 의해 검토함",
+ "translate-messagereview-reviewswithyou": "{{PLURAL:$1|나|나를 포함한 사용자 $1명}}에 의해 검토함",
+ "api-error-invalidrevision": "번역을 찾을 수 없습니다",
+ "api-error-unknownmessage": "메시지를 찾을 수 없습니다",
+ "api-error-fuzzymessage": "번역이 퍼지 처리되었습니다.",
+ "api-error-owntranslation": "자신의 번역은 검토한 것으로 표시할 수 없습니다",
+ "translate-messagereview-no-fuzzy": "퍼지 번역은 검토한 것으로 표시 수 없습니다.",
+ "translate-messagereview-no-own": "자신의 번역은 검토한 것으로 표시할 수 없습니다.",
+ "translate-messagereview-doit": "이 번역을 검토한 것으로 표시합니다.",
+ "group-translate-proofr.css": "/* 이 CSS 설정은 번역 평론가에만 적용됩니다 */",
+ "group-translate-proofr.js": "/* 이 자바스크립트 설정은 번역 평론가에만 적용됩니다 */",
+ "log-name-translationreview": "번역 검토 기록",
+ "log-description-translationreview": "번역과 메시지 그룹에 대한 모든 검토 기록입니다.",
+ "logentry-translationreview-message": "$1 사용자가 $3 번역을 {{GENDER:$2|검토했습니다}}",
+ "logentry-translationreview-group": "$1 사용자가 $3의 $4 번역의 상태를 $6에서 $7로 {{GENDER:$2|바꾸었습니다}}",
+ "group-translate-sandboxed": "승인하지 않은 번역자",
+ "group-translate-sandboxed-member": "{{GENDER:$1|승인하지 않은 번역자}}",
+ "right-translate-sandboxmanage": "연습장 사용자 관리",
+ "action-translate-sandboxmanage": "연습장 사용자 관리",
+ "right-translate-sandboxaction": "연습장 사용자에게 허용된 작업을 실행",
+ "action-translate-sandboxaction": "연습장 사용자에게 허용된 작업을 실행",
+ "translate-workflow-state-": "(미설정)",
+ "translate-workflowstatus": "상태: $1",
+ "translate-workflow-set-do": "설정",
+ "translate-workflow-set-doing": "설정 중...",
+ "translate-workflow-set-done": "설정!",
+ "translate-workflow-set-error-alreadyset": "요청한 상태는 현재 상태와 동일합니다.",
+ "translate-workflow-autocreated-summary": "$1 작업 상태에 대한 페이지가 자동으로 만듦",
+ "translate-stats-workflow": "상태",
+ "translate-workflowgroup-label": "작업 상태",
+ "translate-workflowgroup-desc": "이 메시지 그룹은 번역 작업 상태를 보여줍니다.\n상태는 $wgTranslateWorkflowStates 변수 설정에 지정됩니다.",
+ "translate-dynagroup-recent-label": "최근 번역",
+ "translate-dynagroup-recent-desc": "이 메시지 그룹은 이 언어로의 모든 최근 번역을 보여줍니다.\n검토 작업에 아주 유용합니다.",
+ "translate-dynagroup-additions-label": "최근 추가",
+ "translate-dynagroup-additions-desc": "이 메시지 그룹은 새 메시지와 바뀐 메시지를 보여줍니다.",
+ "translate-dynagroup-by": "{{GENDER:$1|$1}}에 의해 번역",
+ "translate-dynagroup-byc": "{{GENDER:$1|$1}} ($2)에 의해 번역",
+ "translate-dynagroup-last": "{{GENDER:$1|$1}}에 의해 마지막으로 바뀜",
+ "translate-dynagroup-lastc": "{{GENDER:$1|$1}} ($2)에 의해 마지막으로 바뀜",
+ "translate-gethelp": "도움말",
+ "translate-msggroupselector-projects": "메시지 그룹",
+ "translate-msggroupselector-search-placeholder": "그룹 검색",
+ "translate-msggroupselector-search-all": "모두",
+ "translate-msggroupselector-search-recent": "최근",
+ "translate-msggroupselector-view-subprojects": "{{PLURAL:$1|하위 그룹}} $1개 보기",
+ "tux-languageselector": "번역할 언어",
+ "tux-tab-all": "모두",
+ "tux-tab-untranslated": "미번역",
+ "tux-tab-outdated": "오래됨",
+ "tux-tab-translated": "번역됨",
+ "tux-tab-unproofread": "검토하지 않음",
+ "tux-edit": "편집",
+ "tux-status-optional": "선택 사항",
+ "tux-status-fuzzy": "오래됨",
+ "tux-status-proofread": "검토됨",
+ "tux-status-translated": "번역됨",
+ "tux-status-saving": "저장 중...",
+ "tux-status-unsaved": "저장하지 않음",
+ "tux-editor-placeholder": "내 번역",
+ "tux-editor-paste-original-button-label": "원본 텍스트 붙여넣기",
+ "tux-editor-discard-changes-button-label": "바뀐 내용 버리기",
+ "tux-editor-save-button-label": "번역 저장",
+ "tux-editor-skip-button-label": "다음으로 넘어가기",
+ "tux-editor-cancel-button-label": "취소",
+ "tux-editor-confirm-button-label": "번역 확인",
+ "tux-editor-shortcut-info": "저장하려면 \"$1\"을 누르거나 다음 메시지로 넘어가려면 \"$2\"를 누르거나 다른 단축키를 보려면 \"$3\"을 누르세요",
+ "tux-editor-edit-desc": "설명문 편집",
+ "tux-editor-add-desc": "설명문 추가",
+ "tux-editor-suggestions-title": "제안",
+ "tux-editor-in-other-languages": "다른 언어",
+ "tux-editor-need-more-help": "도움이 더 필요하십니까?",
+ "tux-editor-ask-help": "자세한 정보에 대한 질문",
+ "tux-editor-tm-match": "$1% 일치",
+ "tux-warnings-more": "{{PLURAL:$1|$1개 더 보기}}",
+ "tux-warnings-hide": "숨기기",
+ "tux-editor-save-failed": "번역을 저장하는 데 실패했습니다: $1",
+ "tux-editor-n-uses": "$1{{PLURAL:$1|번}} 쓰임",
+ "tux-editor-message-desc-more": "더 보기",
+ "tux-editor-message-desc-less": "덜 보기",
+ "tux-editor-clear-translated": "번역된 메시지 숨기기",
+ "tux-editor-proofreading-mode": "검토하기",
+ "tux-editor-translate-mode": "목록",
+ "tux-editor-proofreading-hide-own-translations": "내 번역 숨기기",
+ "tux-editor-proofreading-show-own-translations": "내 번역 보이기",
+ "tux-proofread-action-tooltip": "검토한 것으로 표시",
+ "tux-proofread-edit-label": "편집",
+ "tux-editor-page-mode": "문서",
+ "tux-editor-outdated-warning": "이 번역은 업데이트해야 합니다.",
+ "tux-editor-outdated-warning-diff-link": "차이 보기",
+ "tux-editor-doc-editor-placeholder": "메시지 설명문",
+ "tux-editor-doc-editor-save": "설명문 저장",
+ "tux-editor-doc-editor-cancel": "취소",
+ "tux-messagetable-more-messages": "다른 {{PLURAL:$1|메시지}} $1개",
+ "tux-messagetable-loading-messages": "{{PLURAL:$1|메시지}}를 불러오는 중...",
+ "tux-message-filter-placeholder": "필터 목록",
+ "tux-message-filter-result": "\"$2\"에 대한 {{PLURAL:$1|결과}} $1개를 찾았습니다",
+ "tux-message-filter-advanced-button": "고급 검색",
+ "tux-message-filter-optional-messages-label": "선택적 메시지",
+ "tux-proofread-translated-by-self": "내가 번역함",
+ "tux-empty-list-all": "이 메시지 그룹은 비어 있습니다",
+ "tux-empty-list-all-guide": "번역할 다른 메시지 그룹을 선택하세요",
+ "tux-translate-page-no-such-group": "<strong>지정한 그룹이 존재하지 않습니다.</strong> 다른 메시지 그룹을 선택하세요.",
+ "tux-empty-list-translated": "번역된 메시지가 없습니다",
+ "tux-empty-list-translated-guide": "번역을 도울 수 있습니다",
+ "tux-empty-list-translated-action": "번역",
+ "tux-empty-no-messages-to-display": "보여줄 메시지가 없습니다.",
+ "tux-empty-there-are-optional": "선택적 메시지가 목록에 보이지 않습니다",
+ "tux-empty-show-optional-messages": "선택적 메시지 보기",
+ "tux-empty-no-outdated-messages": "오래된 메시지가 없습니다",
+ "tux-empty-nothing-to-proofread": "검토할 수 있는 것이 없습니다",
+ "tux-empty-you-can-help-providing": "새 번역을 제공할 수 있습니다",
+ "tux-empty-nothing-new-to-proofread": "새로 검토할 수 있는 것이 없습니다",
+ "tux-empty-you-can-review-already-proofread": "다른 사용자가 이미 검토한 번역을 검토할 수 있습니다.",
+ "tux-empty-list-other": "번역할 것이 없습니다",
+ "tux-empty-list-other-guide": "기존 번역의 검토를 도울 수 있습니다",
+ "tux-empty-list-other-action": "번역 검토하기",
+ "tux-empty-list-other-link": "모든 메시지 보기",
+ "tux-editor-close-tooltip": "닫기",
+ "tux-editor-expand-tooltip": "펼치기",
+ "tux-editor-collapse-tooltip": "접기",
+ "tux-editor-message-tools-history": "역사",
+ "tux-editor-message-tools-translations": "모든 번역",
+ "tux-editor-loading": "불러오는 중...",
+ "translate-search-more-languages-info": "{{PLURAL:$1|언어}} $1개 더 보기",
+ "translate-statsbar-tooltip": "$1% 번역됨, $2% 검토됨",
+ "translate-statsbar-tooltip-with-fuzzy": "$1% 번역됨, $2% 검토됨, $3% 오래됨",
+ "translate-search-more-groups-info": "{{PLURAL:$1|그룹}} $1개 더 보기",
+ "translate-ulsdep-title": "구성 오류"
+}
diff --git a/MLEB/Translate/i18n/core/krc.json b/MLEB/Translate/i18n/core/krc.json
new file mode 100644
index 00000000..cbf54933
--- /dev/null
+++ b/MLEB/Translate/i18n/core/krc.json
@@ -0,0 +1,9 @@
+{
+ "@metadata": {
+ "authors": [
+ "Iltever"
+ ]
+ },
+ "translate-magic-notsaved": "Тюрлендириуюгюз сакъланмады!",
+ "translate-mgs-column-language": "Тил"
+}
diff --git a/MLEB/Translate/i18n/core/kri.json b/MLEB/Translate/i18n/core/kri.json
new file mode 100644
index 00000000..e3a39e53
--- /dev/null
+++ b/MLEB/Translate/i18n/core/kri.json
@@ -0,0 +1,9 @@
+{
+ "@metadata": {
+ "authors": [
+ "Jose77",
+ "Protostar"
+ ]
+ },
+ "translate-page-edit": "èdit"
+}
diff --git a/MLEB/Translate/i18n/core/krl.json b/MLEB/Translate/i18n/core/krl.json
new file mode 100644
index 00000000..e1ca0abf
--- /dev/null
+++ b/MLEB/Translate/i18n/core/krl.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Flrn"
+ ]
+ },
+ "translate-page-navigation-legend": "Valličy"
+}
diff --git a/MLEB/Translate/i18n/core/ksh.json b/MLEB/Translate/i18n/core/ksh.json
new file mode 100644
index 00000000..9dc0602b
--- /dev/null
+++ b/MLEB/Translate/i18n/core/ksh.json
@@ -0,0 +1,385 @@
+{
+ "@metadata": {
+ "authors": [
+ "Purodha",
+ "Reedy"
+ ]
+ },
+ "translate": "Övversäze",
+ "translate-desc": "[[Special:Translate|Söndersigk]] för et Översäze fon MediaWiki sing Meldonge, un mieh",
+ "translate-taskui-view": "Alle Täxte udder Nohreeschte aanzeije",
+ "translate-taskui-untranslated": "Onövversaz Täxte udder Nohreeschte aanzeije",
+ "translate-taskui-optional": "'Nid esu nüüdeje' Täxte udder Nohreeschte aanzeije.",
+ "translate-taskui-acceptqueue": "Bloß die Täxte udder Nohreschte aanzeije, di_sch och jääjelässe kann",
+ "translate-taskui-reviewall": "Alle Övversäzonge jääjelässe",
+ "translate-taskui-export-to-file": "Em eije Fomaat äxpoteere",
+ "translate-taskui-export-as-po": "För et Övversäze ußerhallf äxpotteere",
+ "translate-taction-translate": "Övversäze",
+ "translate-taction-proofread": "Jääjelässe",
+ "translate-taction-lstats": "Schtateßteke för heh di Schprohch",
+ "translate-taction-mstats": "Schtatistik för heh di Nohreeschtejropp",
+ "translate-taction-export": "Expotteere",
+ "translate-taction-disabled": "Di Axjuhn es op heh dämm Wiki affjeschalldt.",
+ "translate-page-no-such-language": "De aanjejovve {{int:translate-page-language}} känne mer nit.",
+ "translate-page-no-such-group": "De aanjejovve {{int:translate-page-group}} känne mer nit.",
+ "translate-page-disabled": "Övversezonge sen affjeschalldt för di {{int:translate-page-group}} un {{int:translate-page-language}}, weil:\n\n<em>$1</em>",
+ "translate-language-disabled": "Övversäzonge en heh di Schprohch sin afjeschalldt.",
+ "translate-page-settings-legend": "Enschtällonge",
+ "translate-page-group": "Jropp:",
+ "translate-page-language": "Schprohch",
+ "translate-page-limit": "Ömfang:",
+ "translate-page-limit-option": "{{PLURAL:$1|Äjne Täx udder Nohreesch|$1 Täxte udder Nohreeschte|Nix aan Täxte udder Nohreeschte}} pro Sigk",
+ "translate-submit": "Lohß Jonn!",
+ "translate-page-navigation-legend": "Aanzahl",
+ "translate-page-showing": "De Nohreshte fon Nommer $1 aff, beß $2, fon ennßjesammp $3.",
+ "translate-page-showing-all": "{{PLURAL:$1|Eijn_Nohresch|$1 Nohreschte|Keijn_esu_e_Nohreschte}}.",
+ "translate-page-showing-none": "Nix för Aan_ze_zeije.",
+ "translate-page-paging-links": "[ $1 ] ↔ [ $2 ]",
+ "translate-next": "Näx Sigk",
+ "translate-prev": "Förrije Sigk",
+ "translate-page-description-legend": "Enfommazjohne övver di {{int:translate-page-group}}",
+ "translate-page-description-hasoptional": "En heh dä Jropp sinn_er 'nit esu nüüdeje' Täxte un Nohreeschte.\nDi sullte bloß övversaz wääde, wann Ding Shprooch jät besönders bruch, esu jät wi käin Zwescheräum udder anders jeschrevve Naame. $1",
+ "translate-page-description-hasoptional-open": "Donn de 'nit esu nüüdeje' Täxte udder Nohreeschte aanzeije.",
+ "translate-page-edit": "Änndere",
+ "translate-ext-url": "<hr />Websaijt: $1",
+ "translate-optional": "(nit esu nüüdesch)",
+ "translate-ignored": "(övverjange)",
+ "translate-edit-title": "„$1“ ändere",
+ "translate-edit-definition": "De Ojinaal Nohreesch",
+ "translate-edit-translation": "Övversäzong",
+ "translate-edit-contribute": "beijdraare",
+ "translate-edit-no-information": "<em>Mer han kein Dokementazjohn för dat Täxshtöck.</em>\n<em>Wann De weijß, wann un woh et jebruch weed, da kanns De dä anndere Övversäzer hellefe, un jet för_et ennjävve.</em>",
+ "translate-edit-information": "Ennfommazjohne övver dä Täx udder di Nohreesch ($1)",
+ "translate-edit-in-other-languages": "Dä Täx udder di Nohreesch in annder Shprooche",
+ "translate-edit-committed": "Es aktowäll övversaz met",
+ "translate-edit-warnings": "Warnonge wääje unkomplätte Övversäzonge&#32;",
+ "translate-edit-tmsugs": "Vörschlääsch vum elläktrohnesche Övversäzongs-Jedähschneß",
+ "translate-edit-tmmatch-source": "Et Ojinaal för ze Övversäzze: $1",
+ "translate-edit-tmmatch": "$1% zopaß",
+ "translate-use-suggestion": "Donn heh dä Vörschlaach en et Övversäzongsfeld endraare. Wat alt dren es, verschwindt.",
+ "translate-edit-nopermission": "Do bruchs dat Rääsch, Täxte un Nohreeschte övversäze ze dörve.",
+ "translate-edit-askpermission": "Donn öm dat Rääsch froore",
+ "translate-magic-pagename": "MediaWiki sing Extras övversäze",
+ "translate-magic-help": "Hee kanns_De Zweijtname fö Söndersigge, Zauberwööter, un de Appachtemangname översäze.\n\nSöndersigge ier Zweijtname, un de Zauberwööter könne mieh wi eijn Övversäzong han.\nDozwesche shteijt jeeweijls_e \",\" (Komma).\nDe Name fö_de Appachtemangs könne nur eijn Övversätzong han.\n\nBeij de Övversäzonge för de Appachtemangs ier Name hät „<code>$1 talk</code>“ ene shpezjälle Senn.\nDat „<code>$1</code>“ shteijt doh als enne Plazhallder för dä Projäkname (zem Beijshpöll dat „<code>{{SITENAME}}</code>“ en: „<code>Övver {{GRAMMAR:Akkusative|{{SITENAME}}}} klaafe</code>“).\nWann Ding Shprooch ed nit heerjitt, dat_De ene grammatesch reschtejje Forrem henkreßß, ohne an dämm Projek singem Name ändere zo mößße, dann lohs_et ons weße. De kanns et op de [[Support|Öngerschtözongssigg]] schriive.\n\nDo moß en de Jrop „Övversäzer“ sen, för hee Änderonge maache ze könne.\nÄnderongen weede ehts bem Klicke op unge dä Knopp förr_et Seschere faßjehallde.",
+ "translate-magic-module": "Dat Modul:",
+ "translate-magic-submit": "Lohß jonn!",
+ "translate-magic-cm-export": "Äxpocht aanfange",
+ "translate-magic-nothing-to-export": "Et jit nix ze expoteeere.",
+ "translate-magic-cm-to-be": "Soll wääde",
+ "translate-magic-cm-current": "Eß jäz",
+ "translate-magic-cm-original": "Ojinahl",
+ "translate-magic-cm-comment": "Koot zesamme jefaß, Quell",
+ "translate-magic-cm-save": "Seschere",
+ "translate-magic-cm-updatedusing": "Övver [[Special:AdvancedTranslate|{{int:Translate-magic-pagename}}]] jeänndert.",
+ "translate-magic-cm-savefailed": "Et Seschere eß donäve jejange",
+ "translate-magic-special": "Zweijtname för Söndersigge",
+ "translate-magic-words": "Zauberwööter",
+ "translate-magic-namespace": "Appachtemang_Name",
+ "translate-magic-notsaved": "Ding Änderunge sin nit faßjehallde!",
+ "translate-magic-errors": "Donn {{PLURAL:$1|dää Fähler|die Fähler}} en Övversäzunge verbessere:",
+ "translate-magic-saved": "Ding Änderunge sin faßjehallde.",
+ "translate-checks-parameters": "{{PLURAL:$2|Dä Parrammeeter heh eß|Di Parrammeetere heh sen|dat Jedrißße heh iß}} nit jebruch woode: <strong>$1</strong>",
+ "translate-checks-parameters-unknown": "Hee {{PLURAL:$2|dä Parrammeeter|di Parrammeetere|dat Jedrißße}} kënne mer nit:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-balance": "Do {{PLURAL:$2|jëijd_en Klammer nit op odder|jonn ongerscheedlish fill Klammere op un|eß Dreß}} zoh: <strong>$1</strong>",
+ "translate-checks-links": "Hee {{PLURAL:$2|dä Lengk eß|di Lengks senn|dat Jedrißße}} problemattesch: <strong>$1</strong>",
+ "translate-checks-links-missing": "Hee {{PLURAL:$2|dä Lengk fäählt:|di $2 Lenks fäähle:|fäähle kei Lengks.}} <strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-xhtml": "Donn hee {{PLURAL:$2|dat Kommando|di Kommandose|dat Jedrißße}} ußtuusche, un schriif de reschtije do för hen: <strong>$1</strong>",
+ "translate-checks-plural": "De Ojjinaal-Nohreesch bruch <code><nowiki>{{PLURAL:}}</nowiki></code>, ävver de Övversäzong deijt dat nit?",
+ "translate-checks-plural-forms": "<nowiki>{{PLURAL:}}</nowiki> es med {{PLURAL:$1|eine Form|$1 Forme|keine Form}} enjesaz, ävver {{PLURAL:$2|bloß ein Form weed|bloß $2 Forme wääde|kein Form weed heh}} ongerschtöz, ävver zohsäzlesch noch 0= un 1=",
+ "translate-checks-plural-dupe": "<nowiki>{{PLURAL:}}</nowiki> hät {{PLURAL:$1|en dubbelte Form|dubbelte Forme|kein dubbelte Forme}} aam Ängk, ävver <nowiki>{{PLURAL:$1|Metmaacher|Metmaacher|Metmaacher}}</nowiki> sullt als <nowiki>{{PLURAL:$1|Metmaacher}}</nowiki> jeschrevve wääde.",
+ "translate-checks-pagename": "Dat Appachtemang es anders wi em ojinaal Tex",
+ "translate-checks-format": "De Övversätzung paß nit zor Definitjuhn odder dä ier Syntax es nit en Odenung: $1",
+ "translate-checks-escape": "He de <i lang=\"en\">escapes</i> künnte esu nit jewollt sin: <strong>$1</strong>",
+ "translate-checks-parametersnotequal": "De Aanzahl Parrammeeter es {{PLURAL:$1|$1}}, sulld ävver {{PLURAL:$2|$2}} sin.",
+ "translate-checks-malformed": "<nowiki>$1</nowiki> es esu nit jöltesch.",
+ "translate-checks-fudforum-syntax": "Nemm <nowiki>$1</nowiki> aanshtatt vun <nowiki>$2</nowiki> en heh dämm Projäk.",
+ "translate-pref-nonewsletter": "Donn mer keijn Rondschriive övver de eläktronesche Poß scheke",
+ "translate-pref-editassistlang": "Shprooche för ze Hellfe:",
+ "prefs-translate": "Enshtällunge för et Övversäze",
+ "translate-pref-editassistlang-help": "En Leß met Köözelle för Shprooche.\nDe Övversäzunge en di Shprooche wääde Der jezeich, wann De aam Övversäze bes.\nWat De jezeich kreß, wann De nix enndrähß, deiht vun dä Shprooch afhange, en di De övversaz.",
+ "translate-pref-editassistlang-bad": "En dä Leß es en onjöltesch Kööözel för en Shprooch: <code><nowiki>$1</nowiki></code>.",
+ "right-translate": "Met dä Schnettshtäll zom Övverseze ärrbeide",
+ "right-translate-manage": "Jroppe vun Täxte un Nohreeschte för et Övversäze verwallde",
+ "action-translate-manage": "Jroppe vun Täxte un Nohreeschte för et Övversäze verwallde",
+ "right-translate-import": "Övversäzunge fun Dateie empotteere",
+ "action-translate-import": "Övversäzunge fun Dateie empotteere",
+ "right-translate-messagereview": "Övversäzonge jääjelässe un aannämme",
+ "right-translate-groupreview": "Bei Jroppe vun Täxte un Nohreeschte för et Övversäze der Beärbeidongszohschtand verwallde",
+ "translate-rc-translation-filter": "Övversëzonge:",
+ "translate-rc-translation-filter-no": "Alles aanzeije",
+ "translate-rc-translation-filter-only": "Don noor de Övversëzonge zëije",
+ "translate-rc-translation-filter-filter": "Don de Övversëzonge fott lohße",
+ "translate-rc-translation-filter-site": "Nor de Änderonge för hee dat Wiki",
+ "translationstats": "Schtatistike fun de Övversäzonge",
+ "translate-stats-edits": "Änderunge",
+ "translate-stats-users": "Övversäzer",
+ "translate-stats-registrations": "Aanmäldonge",
+ "translate-stats-reviews": "Jääjejelässe Övversäzzonge",
+ "translate-stats-reviewers": "Jääjelässer",
+ "translate-statsf-intro": "Heh_met kanns de eifach Övverseeschte un Schtatistike maache. All de Zahle sen noh bovve un noh onge bejränz.",
+ "translate-statsf-options": "Enstellunge för et Zeischne",
+ "translate-statsf-width": "De Breed in Pixelle:",
+ "translate-statsf-height": "De Hühde in Pixelle:",
+ "translate-statsf-days": "Et Aanfangs-Dattum:",
+ "translate-statsf-start": "Et Aanfangs-Dattum:",
+ "translate-statsf-scale": "De Jenouschkeit udder Oplösung:",
+ "translate-statsf-scale-months": "Moohnde",
+ "translate-statsf-scale-weeks": "Woche",
+ "translate-statsf-scale-days": "Dare",
+ "translate-statsf-scale-hours": "Schtonde",
+ "translate-statsf-count": "Der Mohßschtaab:",
+ "translate-statsf-count-edits": "Aanzahl Änderunge",
+ "translate-statsf-count-users": "Aktiive Övversäzer",
+ "translate-statsf-count-registrations": "Neu Metmaacher",
+ "translate-statsf-count-reviews": "Jääjejelässe Övversäzzonge",
+ "translate-statsf-count-reviewers": "Jääjelässer",
+ "translate-statsf-language": "En Leß fun Köözelle för Shprooche, met Kommas dozwesche:",
+ "translate-statsf-group": "En Leß fun Köözelle för Jroppe, met Kommas dozwesche:",
+ "translate-statsf-submit": "Vöraanseech",
+ "translate-tag-category": "Sigge, di mer övversäze kann",
+ "translate-tag-page-desc": "De Övversäzong fun dä Sigg „[[$2|$1]]“ em Wikki.<br />",
+ "translate-sidebar-alltrans": "En ander Schprohche",
+ "translations": "Alle Övversätzonge",
+ "translations-summary": "Jif ene Name för en Nohreesch enn, öm all de Övversätzunge aanzezeije.",
+ "translate-translations-no-message": "Mer han kein Nohreesch „$1“ för ze övversetze",
+ "translate-translations-none": "Mer han kei Övversätzunge för „$1“",
+ "translate-translations-count": "{{PLURAL:$1|Ein Övversäzong|$1 Övversäzonge|Kein Övversäzong}} jefonge.",
+ "translate-translations-fieldset-title": "Nohreesch",
+ "translate-translations-messagename": "Tittel:",
+ "translate-translations-project": "Projäk:",
+ "translate-translations-including-no-param": "Jif ene jöltijje Siggetittel för die Nohreesch als Parrammeeter för di Ongersigg aan",
+ "translate-translations-history-short": "V",
+ "languagestats": "Schtateßteke för di Schprohch",
+ "languagestats-summary": "Di Sigg hee zeisch Schtatesteke vun de Övversätzonge för alle Nohreeschtejroppe un för ein Schprohch.",
+ "languagestats-stats-for": "Övversäzongsstatistike för $1 ($2)",
+ "languagestats-recenttranslations": "Neuste Övversäzonge",
+ "translate-langstats-incomplete": "Ene Deil vun dä Schtatistike op heh dä Sigg sin nit kumplät. Mem di Sigg neu Laade kritt mer mih Daate aanjezeisch.",
+ "translate-langstats-expand": "opfallde",
+ "translate-langstats-collapse": "zohklappe",
+ "translate-langstats-expandall": "alle opfallde",
+ "translate-langstats-collapseall": "alle zohklappe",
+ "translate-language-code": "Ußwahl",
+ "translate-language-code-field-name": "Shprohcheköözel:",
+ "translate-suppress-complete": "Kumplät övversaz Nohreechtejroppe nit aanzeije",
+ "translate-ls-noempty": "Kumplät onövversaz Nohreechtejroppe nit aanzeije",
+ "translate-language": "Schprohch",
+ "translate-total": "Nohreschte",
+ "translate-untranslated": "Nit övversaz",
+ "translate-percentage-complete": "Fähdesch",
+ "translate-percentage-fuzzy": "Övverhollt",
+ "translate-languagestats-overall": "Alle Jroppe vun Täxte un Nohreeschte zosamme",
+ "translate-ls-submit": "Schtatistike Aanzeije",
+ "translate-ls-column-group": "Nohreeschtejrop",
+ "translate-mgs-pagename": "Schtatistike för di Nohreeschtejropp",
+ "translate-mgs-fieldset": "Enshtellonge aanzeije",
+ "translate-mgs-group": "Nohrechtejropp:",
+ "translate-mgs-nocomplete": "Don kein Shprooche aanzeije, woh de Övversäzong kumplädd es",
+ "translate-mgs-noempty": "Don kein Shprooche aanzeije, woh nix vun övversads es",
+ "translate-mgs-submit": "Lohß Jonn!",
+ "translate-mgs-column-language": "Schprohch",
+ "translate-mgs-totals": "Alle Shprohche zosamme",
+ "translate-mgs-invalid-group": "De aanjejovve Jropp „$1“ jidd_et nit.",
+ "translate-mgs-nothing": "För heh di Schtatistik ham_mer nix aanzezeije.",
+ "supportedlanguages": "Ongerschtöz Schprohche",
+ "supportedlanguages-summary": "He sin alle Schprohche opjeleß, di mer {{GRAMMAR:em|{{SITENAME}}}} ongerschtöze.\nDobei schtonn de Nahme vun dä Övversäzer, di aan dä Schprohch aam ärbeide sin.\nJrühßer jeschrewwe Övversäzer han mieh övversaz, wi kleiner jeschrevve.\nJröhn jeschrevve Medmaacher han köözlesch noch jet jedonn, ruud jeschrevve han länger nix mih jedonn.",
+ "supportedlanguages-colorlegend": "De Lejände för de Färve: De läzde Övversäzong es $1 Dääsch her.",
+ "supportedlanguages-translators": "{{PLURAL:$2|Eine Övversäzer:|$2 Övversäzer:|Keine Övversäzer}} $1",
+ "supportedlanguages-recenttranslations": "neuste Övversäzunge",
+ "supportedlanguages-count": "{{PLURAL:$1|Ein Schprohch|$1 Schprohche|Kein Schprohche}} ensjesamp.",
+ "supportedlanguages-activity": "$1: {{PLURAL:$2|Ein Änderong|$2 Änderonge|Kein Änderonge}} — de lätzde wohr {{PLURAL:$3|vör einem Daach|vör $3 Dääsch|hück}}.",
+ "translate-save": "Fäßhallde ($1)",
+ "translate-jssti-add": "Bei de Leß dobei donn",
+ "managemessagegroups": "Jroppeverwalldong",
+ "translate-smg-notallowed": "Di Axjuhn darfs De nit ußföhre.",
+ "translate-smg-nochanges": "Et jitt kein Änderonge zum Verärbeide.",
+ "translate-smg-submit": "Änderonge zom Verärbeide övverdraare",
+ "translate-smg-submitted": "De ojinaal Täxte udder Nohreeschte sen verändert woode.\nDe Änderonge wääde em Hengerjrond verärbeidt.",
+ "translate-smg-more": "Et kumme noch mieh Änderonge, wann heh di affjeschek sin.",
+ "translate-smg-left": "Wat em Wiki schteiht",
+ "translate-smg-right": "Änderonge",
+ "translate-manage-import-diff": "Tittel: $1{{int:pipe-separator}}Donn: $2",
+ "translate-manage-import-new": "Neu Nohreesch $1",
+ "translate-manage-import-deleted": "Fottjeschmeße Nohreesch $1",
+ "translate-manage-action-import": "Empotteere",
+ "translate-manage-action-conflict": "Empotteere un zom Beärbeide makeere",
+ "translate-manage-action-ignore": "Övverjonn",
+ "translate-manage-action-fuzzy": "Empotteere un Översäzunge met „!<nowiki>!</nowiki>FUZZY!!“ zom Beärbeide makeere",
+ "translate-manage-nochanges": "Mer han kei Änderunge aan de faßjelaate Nohreeschte för heh di Jropp.",
+ "translate-manage-nochanges-other": "Mer hatte kei Änderunge för heh di Shprohch.\nMet dämm Lengk onge jeihß De retuur op di Sigg met de Einzelheite vun dä Jropp.",
+ "translate-manage-inconsistent": "Doh paß jät nit zosamme. Bes esu joot un looer noh Änderunge,\ndann versöhke et noch ens. De Einzelheite: $1",
+ "translate-manage-toolong": "De hühßte müjjelesche Zick för et Beärbeide vun {{PLURAL:$1|ein Sekund|$1 Sekunde|nit ens en Sekund}} es afjeloufe.\nBes esu joot, un donn dat Fomulaa noch ens affschecke, för hee wigger ze maache.",
+ "translate-manage-import-summary": "Mer sin en neu Version vun Ußerhallef aam Empoteere",
+ "translate-manage-conflict-summary": "Mer sin en neu Version vun Ußerhallef aam Empoteere. Beß esu joot, un donn se prööfe.",
+ "translate-manage-fuzzy-summary": "Dä ojinaal Täx udder de ojinaal Nohreesch es verändert",
+ "translate-manage-submit": "Lohß Jonn!",
+ "translate-manage-intro-other": "He noh kütt en Leß met Änderonge aan Övversäzunge en dä Schprohch $1.\nDonn se dorschjonn, un söhk Der för jehde en Akßjuhn uß, wat De domet jemaat han wells.\nWann De entscheids, Änderunge ze övverjonn, dann es dat nor för jäds_em_Momang.",
+ "translate-manage-import-ok": "Mer han en neu Väsjohn fun dä Sigg „$1“ empotteet.",
+ "translate-manage-import-done": "Alle jedonn!",
+ "importtranslations": "Övversäzonge Empotteere",
+ "translate-import-from-local": "vun Dingem Rääschner:",
+ "translate-import-load": "Datei laade",
+ "translate-import-err-dl-failed": "Kunnt de Datei nit jriife:\n$1",
+ "translate-import-err-ul-failed": "Di Datei huhzelaade es donevve jejange",
+ "translate-import-err-invalid-title": "Dä aanjejovve Name vun dä Dattei „<nowiki>$1</nowiki>“ es nit jöltesch.",
+ "translate-import-err-no-such-file": "Di Datei „<nowiki>$1</nowiki>“ jidd_et nit, udder se es nit heh en et Wiki huhjelaade.",
+ "translate-import-err-stale-group": "De Jropp met Täxte un Nohreeschte, woh heh di Dattei bei jehüüre sull, di jidd_et jaanit.",
+ "translate-import-err-no-headers": "Di Dattei es nit em Jettäx Fommaat vum Zohsazprojramm <code lang=\"en\">Translate</code>: Kunnt de Jropp un Shprooch nit uß de Koppdaate eruß krijje.",
+ "translate-import-err-warnings": "Di Dattei es nit em reschteje Fommaat. Beß sescher, dat kein vun Dinge Projramme de <code lang=\"en\">msgctxt</code> Felder fott määt. De Einzelheite: $1",
+ "translate-js-summary": "Koot Zosammejefaß:",
+ "translate-js-save": "Faßhalde",
+ "translate-js-next": "Faßhalde un op de nähkßte jonn",
+ "translate-js-nonext": "Dat wor de läzde op heh dä Sigg.",
+ "translate-js-skip": "Jank op de nähkßte",
+ "translate-js-save-failed": "Dat Afshpeishere es donävve jejange. Bes esu joot, un donn heh dä Fähler wigger jävve.",
+ "translate-js-history": "Dä Övversäzong ier Verjangeheit",
+ "translate-js-support": "Schtäll en Frohch",
+ "translate-js-support-title": "Frohch noh, wann De nit jenohch Aanjaabe häs, öm heh dä Täx udder di Nohreesch joohd un akeraht ze övversäze.",
+ "translate-js-support-unsaved-warning": "Do häß onjeschpeischerte Övversäzzonge.",
+ "translate-gs-pos": "Posizjuhn",
+ "translate-gs-code": "Afjekööz",
+ "translate-gs-continent": "Kontinänt",
+ "translate-gs-speakers": "Jekallt vun Milljuhne",
+ "translate-gs-score": "Prozänt jedonn",
+ "translate-gs-multiple": "Ongerscheidlijje",
+ "translate-gs-count": "Aanzahl",
+ "translate-gs-total": "Zosamme",
+ "translate-gs-avgscore": "Prozänt jedonn em Schnett",
+ "translate-documentation-language": "övver de Täxte un Nohreeschte",
+ "translate-searchprofile": "Övversäzonge",
+ "translate-searchprofile-tooltip": "Söhk en alle Övversäzonge",
+ "translate-search-languagefilter": "Donn en Shprohch ußwähle:",
+ "translate-search-nofilter": "Nä — all de Shprohche",
+ "translate-messagereview-submit": "Jääjelässe!",
+ "translate-messagereview-progress": "Als jääjejelässe makeere&nbsp;&hellip;",
+ "translate-messagereview-failure": "Et Makeere als jääjejelässe es donävve jejange: $1",
+ "translate-messagereview-done": "Jääjejelässe",
+ "translate-messagereview-reviews": "Jääjelässe vun {{PLURAL:$1|einem|$1|keinem}} Metmaacher",
+ "translate-messagereview-reviewswithyou": "Jääjejelässe {{PLURAL:$1|vun Dir alleins|vun $1 Metmaacher, och vun Der sellver|bes jäz vun keinem}}.",
+ "api-error-invalidrevision": "En Övversäzong hät sesch nit fenge lohße",
+ "api-error-unknownmessage": "Dä Täx udder di Nohreesch wohr nit ze fenge",
+ "api-error-fuzzymessage": "Di Övversäzong es als övverhollt makkeet.",
+ "api-error-owntranslation": "De eije Övversäzonge kam_mer nit jääjelässe.",
+ "translate-messagereview-no-fuzzy": "Övverhollte Övversäzonge kam_mer nit jääjelässe.",
+ "translate-messagereview-no-own": "Ding eije Övversäzonge kanns_De nit jääjelässe.",
+ "translate-messagereview-doit": "Donn heh di Ovversäzong als jääjejelässe aannämme.",
+ "group-translate-proofr.css": "/* Heh di CSS jonn en et Jääjelässe vun Översäzonge */",
+ "group-translate-proofr.js": "/* Heh di JavaSkrepte jonn en et Jääjelässe vun Översäzonge */",
+ "log-name-translationreview": "Logbooch vum Övversäzonge Pröhve",
+ "log-description-translationreview": "Dat Logbooh hät all de Prööfunge vun Övversäzunge un Jroppe vun Nohreeschte un Täxte.",
+ "logentry-translationreview-message": "{{GENDER:$2|Dä|Dat|Dä Metmaacher|De|Dat}} $1 hät di Övversäzong vun „$3“ jääjejelässe.",
+ "logentry-translationreview-group": "{{GENDER:$2|Dä|Et|Dä Metmaacher|De|Et}} $1 hät dä Zohschtand vun dä Övversäzong op $4 vun dä Sigg „$3“ vun „$6“ op „$7“ jesaz.",
+ "group-translate-sandboxed": "Onbeschtääteschte Övversäzer",
+ "group-translate-sandboxed-member": "Onbeschtääteschte {{GENDER:$1|Övversäzer|Övversäzerėn|Övversäzer|Övversäzerėn|Övversäzer}}",
+ "right-translate-sandboxmanage": "Onbeschtääteschte Övversäzer verwalle",
+ "action-translate-sandboxmanage": "onbeschtääteschte Övversäzer ze verwalle",
+ "right-translate-sandboxaction": "För onbeschtääteschte Övversäzer zohjelohße Saache maache",
+ "action-translate-sandboxaction": "för onbeschtääteschte Övversäzer zohjelohße Saache ze maache",
+ "translate-workflow-state-": "(nit jesaz)",
+ "translate-workflowstatus": "Der Zohschtand es: $1",
+ "translate-workflow-set-do": "Lohß Jonn!",
+ "translate-workflow-set-doing": "Ben am Waade&nbsp;...",
+ "translate-workflow-set-done": "Jedonn!",
+ "translate-workflow-set-error-alreadyset": "Der jewönschte Zohschtand es dä Zohschtand, wi hä jäz es.",
+ "translate-workflow-autocreated-summary": "Di Sigg för dä Beäbeidongszohschtand „$1“ es automattetsch aanjelaat woode.",
+ "translate-stats-workflow": "Zohstand",
+ "translate-workflowgroup-label": "Beäbeidongszohschtänd",
+ "translate-workflowgroup-desc": "Heh di Jropp vun Täxte un Nohreeschte enthält de Beäbeidongszohschtänd.\nSe wääde en dä Enschtällong <code lang=\"en\">$wgTranslateWorkflowStates</code> faßjelaat.",
+ "translate-dynagroup-recent-label": "Neuste Övversäzonge",
+ "translate-dynagroup-recent-desc": "Heh di Jropp vun Täxte un Nohreeschte hät all de neue Översäzonge in heh di Schprohch.\nDat es et bäß för et Jääjelässe.",
+ "translate-dynagroup-additions-label": "Köözlesch derbei jekumme",
+ "translate-dynagroup-additions-desc": "Di Jropp hät neue un veränderte Täxte un Nohreeschte.",
+ "translate-dynagroup-by": "De Övversäzong es {{GENDER:$1|vum|vum|vum Metmaacher|vun dä|vum}} $1",
+ "translate-dynagroup-byc": "De Övversäzong es {{GENDER:$1|vum|vum|vum Metmaacher|vun dä|vum}} $1 ($2)",
+ "translate-dynagroup-last": "De läzde Änderung {{GENDER:$1|vum|vum|vum Metmaacher|vun dä|vum}} $1",
+ "translate-dynagroup-lastc": "De läzde Änderung {{GENDER:$1|vum|vum|vum Metmaacher|vun dä|vum}} $1 ($2)",
+ "translate-gethelp": "Hölp",
+ "translate-msggroupselector-projects": "Nohreeschtejrop",
+ "translate-msggroupselector-search-placeholder": "Nohrechtejropp zem Söhke",
+ "translate-msggroupselector-search-all": "All",
+ "translate-msggroupselector-search-recent": "Jöngere",
+ "translate-msggroupselector-view-subprojects": "{{PLURAL:$1|Ein Ongerjropp|$1 Ongerjroppe|Kein Ongerjroppe}}",
+ "tux-languageselector": "Övversäze noh:",
+ "tux-tab-all": "All",
+ "tux-tab-untranslated": "Nit övversaz",
+ "tux-tab-outdated": "Övverhollt",
+ "tux-tab-translated": "Övversaz",
+ "tux-tab-unproofread": "Nit jääjejelässe",
+ "tux-edit": "Ändere",
+ "tux-status-optional": "Nit nüdesch",
+ "tux-status-fuzzy": "Övverhollt",
+ "tux-status-proofread": "Jääjelässe",
+ "tux-status-translated": "Övversaz",
+ "tux-status-saving": "Ben aam Afseschere{{int:ellipsis}}",
+ "tux-status-unsaved": "Nit jeseschert",
+ "tux-editor-placeholder": "Ding Övversäzong",
+ "tux-editor-paste-original-button-label": "Der Quälltäx enfööje",
+ "tux-editor-discard-changes-button-label": "Donn de Änderonge verjäße",
+ "tux-editor-save-button-label": "Di Övversäzong seschere",
+ "tux-editor-skip-button-label": "Jangk op de nähkßte",
+ "tux-editor-cancel-button-label": "Ophüre",
+ "tux-editor-confirm-button-label": "De Övversäzong beschtääteje",
+ "tux-editor-shortcut-info": "Kleck op „$1“ zom Seschere udder op „$2“, öm bloß op de Nähkßte ze jonn, udder op „$3“, öm op ander Afköözonge ze kumme.",
+ "tux-editor-edit-desc": "Donn de Äklierong ändere",
+ "tux-editor-add-desc": "Donn en Äklierong derbei",
+ "tux-editor-suggestions-title": "Vörschlähsch",
+ "tux-editor-in-other-languages": "En ander Schprohche",
+ "tux-editor-need-more-help": "Bruchs De mieh Hölp?",
+ "tux-editor-ask-help": "Frooch noh mieh Enfommazjuhne{{int:ellipsis}}",
+ "tux-editor-tm-match": "$1% zopaß",
+ "tux-warnings-more": "{{PLURAL:$1|noch ein|noch $1|nix mieh}}.",
+ "tux-warnings-hide": "verschteische",
+ "tux-editor-save-failed": "Di Övversäzong afzeschpeischere hät nit jeflup. Der Jrond es: $1",
+ "tux-editor-n-uses": "{{PLURAL:$1|0=nit|1=eimohl|$1 Mohl}} jebruch",
+ "tux-editor-message-desc-more": "Mieh aanzeije",
+ "tux-editor-message-desc-less": "Winnijer aanzeije",
+ "tux-editor-clear-translated": "Övversaz ußblände",
+ "tux-editor-proofreading-mode": "Jääjelässe",
+ "tux-editor-translate-mode": "Leß",
+ "tux-editor-proofreading-hide-own-translations": "De eije Övversäzonge ußblände",
+ "tux-editor-proofreading-show-own-translations": "De eije Övversäzonge aanzeije",
+ "tux-proofread-action-tooltip": "Donn di Övversäzong esu behallde, wi se es",
+ "tux-proofread-edit-label": "Ändere",
+ "tux-editor-page-mode": "Kumplät",
+ "tux-editor-outdated-warning": "Heh di Övversäzong künnt Verbäßeronge nüüdesch han.",
+ "tux-editor-outdated-warning-diff-link": "De Ongescheide aanzeije",
+ "tux-editor-doc-editor-placeholder": "Aanjaabe övver dä Täx udder di Nohreesch",
+ "tux-editor-doc-editor-save": "Faßhallde",
+ "tux-editor-doc-editor-cancel": "Ophühre",
+ "tux-messagetable-more-messages": "{{PLURAL:$1|1=Noch ein Nohreesch|Noch $1 Nohreeschte|0=Kein Nohreeesch mieh}}",
+ "tux-messagetable-loading-messages": "Ben {{PLURAL:$1|noch ein Nohreesch|noch $1 Nohreeschte|0=kein Nohreeesch mieh}} aam laade",
+ "tux-message-filter-placeholder": "Donn de Leß beschrängke",
+ "tux-message-filter-result": "{{PLURAL:$1|Eine|$1|Keine}} Träffer för „$2“",
+ "tux-message-filter-advanced-button": "Lohß jonn!",
+ "tux-message-filter-optional-messages-label": "Nidd_esu nüüdeje Täxte un Nohreeschte",
+ "tux-proofread-translated-by-self": "Sällver övversaz",
+ "tux-empty-list-all": "En heh dä Jropp vun Nohreeschte es nix dren.",
+ "tux-empty-list-all-guide": "Söhg en ander Nohreeschtejrop för zom Övversäze us",
+ "tux-translate-page-no-such-group": "<strong>Di aanjejovve Jropp jidd_et nit.</strong> Söhg en ander Nohreeschtejrop för t Övversäze us.",
+ "tux-empty-list-translated": "Nix es Övversaz",
+ "tux-empty-list-translated-guide": "Do kanns beim Övversäze metmaache.",
+ "tux-empty-list-translated-action": "Övversäze",
+ "tux-empty-no-messages-to-display": "Mer han kein Nohreeschte för aanzezeije.",
+ "tux-empty-there-are-optional": "'Nid esu nüüdeje' Täxte un Nohreeschte sin en dä Leß nit aanjezeisch",
+ "tux-empty-show-optional-messages": "'Nid esu nüüdeje' aanzeije",
+ "tux-empty-no-outdated-messages": "Nix Övverholltes doh",
+ "tux-empty-nothing-to-proofread": "Nix doh zom Jääjelässe",
+ "tux-empty-you-can-help-providing": "Do kanns metmaache un neue Övversäzonge schriive.",
+ "tux-empty-nothing-new-to-proofread": "Nix Neues doh zom Jääjelässe",
+ "tux-empty-you-can-review-already-proofread": "Do kanns Övversäzonge jääjelässe, di ald jääjejelässe woode sen.",
+ "tux-empty-list-other": "Nix zom Övversäze",
+ "tux-empty-list-other-guide": "Do kanns beim Jääjelässe metmaache.",
+ "tux-empty-list-other-action": "Övversäzonge jääjelässe",
+ "tux-empty-list-other-link": "Alles zeije!",
+ "tux-editor-close-tooltip": "Donn dat Onerfinster zom Övversäze zohmaache",
+ "tux-editor-expand-tooltip": "Donn et Ongerfinster för zem Övversäzonge enblände",
+ "tux-editor-collapse-tooltip": "Donn et Ongerfinster för zem Övversäzonge ußblände",
+ "tux-editor-message-tools-history": "Väsjohne",
+ "tux-editor-message-tools-translations": "Alle Övversäzonge",
+ "tux-editor-loading": "Ben aam Laade{{int:ellipsis}}",
+ "translate-search-more-languages-info": "{{PLURAL:$1|0=Kein Schprohch|1=Ein Schprohch|$1 Schprohche}} mieh",
+ "translate-statsbar-tooltip": "$1% övversaz, $2% jääjejelässe",
+ "translate-statsbar-tooltip-with-fuzzy": "$1% fäädesch övversaz, $3% övverhollt, $2% jääjejelässe",
+ "translate-search-more-groups-info": "{{PLURAL:$1|Ein Jrop|$1 Jroppe|Kein Jropp}} mieh",
+ "translate-ulsdep-title": "Fähler bei de Enschtällonge",
+ "translate-ulsdep-body": "Dat Zohsazprojramm <i lang=\"en\" xml:lang=\"en\">e-mail</i>Translate</i> bruch dat Zohsazprojramm [https://www.mediawiki.org/wiki/Extension:UniversalLanguageSelector <i lang=\"en\" xml:lang=\"en\">e-mail</i>Universal Language Selector</i>]."
+}
diff --git a/MLEB/Translate/i18n/core/ku-latn.json b/MLEB/Translate/i18n/core/ku-latn.json
new file mode 100644
index 00000000..e4e193e7
--- /dev/null
+++ b/MLEB/Translate/i18n/core/ku-latn.json
@@ -0,0 +1,138 @@
+{
+ "@metadata": {
+ "authors": [
+ "George Animal",
+ "Ghybu",
+ "Gomada"
+ ]
+ },
+ "translate": "Wergerîne",
+ "translate-taskui-view": "Hemû peyaman nîşan bide",
+ "translate-taskui-untranslated": "Mesajên newergerandî nîşan bide",
+ "translate-taskui-acceptqueue": "Tenê mesajên ku ez dikarim bipejirînim",
+ "translate-taction-translate": "Wergerîne",
+ "translate-taction-lstats": "Statîstîkên ziman",
+ "translate-taction-mstats": "Statîstîkên koma peyamê",
+ "translate-page-group": "Kom",
+ "translate-page-language": "Ziman",
+ "translate-page-limit": "Sînor",
+ "translate-submit": "Here",
+ "translate-page-navigation-legend": "Navîgasyon",
+ "translate-next": "Rûpela din",
+ "translate-prev": "Rûpela berî",
+ "translate-page-description-legend": "Agahiyên di derbarê komê de",
+ "translate-page-edit": "biguherîne",
+ "translate-ext-url": "<hr />Malper: $1",
+ "translate-edit-title": "Biguherîne \"$1\"",
+ "translate-edit-translation": "Werger",
+ "translate-edit-contribute": "beşdar bibe",
+ "translate-edit-in-other-languages": "Peyam bi zimanên din",
+ "translate-magic-submit": "Here",
+ "translate-magic-cm-export": "Bişîne",
+ "translate-magic-cm-current": "Niha",
+ "translate-magic-cm-original": "Orjînal",
+ "translate-magic-cm-comment": "Şîrove:",
+ "translate-magic-cm-save": "Tomar bike",
+ "translate-magic-notsaved": "Guherandina te nehate tomarkirin!",
+ "translate-pref-editassistlang": "Zimanên alîkar:",
+ "prefs-translate": "Vebijarkên wergerê",
+ "translate-rc-translation-filter": "Wergeran parzûn bike:",
+ "translate-rc-translation-filter-filter": "Wergeran parzûn bike",
+ "translationstats": "Statîstîkên wergeran",
+ "translate-stats-edits": "Guherandin",
+ "translate-stats-users": "Wergêr",
+ "translate-statsf-scale-months": "Meh",
+ "translate-statsf-scale-weeks": "Hefte",
+ "translate-statsf-scale-days": "Roj",
+ "translate-statsf-scale-hours": "Saet",
+ "translate-statsf-count": "Pîvan:",
+ "translate-statsf-count-edits": "Hejmara guherandinan",
+ "translate-statsf-count-users": "Wergêrên çalak",
+ "translate-statsf-count-registrations": "Bikarhênerên nû",
+ "translate-statsf-submit": "Pêşdîtin",
+ "translate-tag-category": "Rûpelên wergerbar",
+ "translate-sidebar-alltrans": "Bi zimanên din",
+ "translations": "Hemû werger",
+ "translate-translations-none": "Ji bo \"$1\" werger tune ne",
+ "translate-translations-count": "{{PLURAL:$1|wergerek hat| $1 werger hatin}} dîtin.",
+ "translate-translations-fieldset-title": "Peyam",
+ "translate-translations-messagename": "Nav:",
+ "translate-translations-project": "Proje:",
+ "translate-translations-history-short": "d",
+ "languagestats": "Statîstîkên ziman",
+ "languagestats-recenttranslations": "wergerên dawî",
+ "translate-language-code": "Koda ziman",
+ "translate-language-code-field-name": "Koda ziman:",
+ "translate-language": "Ziman",
+ "translate-total": "Peyam",
+ "translate-untranslated": "Newergerandî",
+ "translate-ls-submit": "Statistîkan nîşan bide",
+ "translate-ls-column-group": "Koma peyamê",
+ "translate-mgs-group": "Koma peyamê:",
+ "translate-mgs-submit": "Statîstîkan nîşan bide",
+ "translate-mgs-column-language": "Ziman",
+ "supportedlanguages": "Zimanên tên bikaranîn",
+ "supportedlanguages-recenttranslations": "wergerên niha",
+ "translate-save": "($1) tomar bike",
+ "translate-jssti-add": "Têxe lîsteyê",
+ "translate-manage-import-diff": "Peyam $1 |Çalakî: $2",
+ "translate-manage-import-new": "Mesaja nû $1",
+ "translate-manage-import-deleted": "Peyama jêbirî $1",
+ "translate-manage-action-import": "Tevlî bike",
+ "translate-js-summary": "Kurte:",
+ "translate-js-save": "Tomar bike",
+ "translate-js-nonext": "Ev li ser vê rûpelê peyama dawî bû.",
+ "translate-js-history": "Dîroka wergerê",
+ "translate-js-support": "Pirs bike",
+ "translate-js-support-unsaved-warning": "Wergerên te yên newergerandî hene.",
+ "translate-gs-code": "Kod",
+ "translate-gs-continent": "Parzemîn",
+ "translate-gs-speakers": "Axaftvan",
+ "translate-gs-total": "Hemû",
+ "translate-searchprofile": "Werger",
+ "translate-messagereview-submit": "Bipejirîne",
+ "translate-messagereview-done": "Pejirand",
+ "api-error-invalidrevision": "Werger nehat dîtin",
+ "api-error-unknownmessage": "Peyam nehat dîtin",
+ "translate-dynagroup-recent-label": "Wergerên dawî",
+ "translate-gethelp": "Alîkarî",
+ "translate-msggroupselector-projects": "Koma peyamê",
+ "translate-msggroupselector-search-placeholder": "Li koman bigere",
+ "translate-msggroupselector-search-all": "Hemû",
+ "translate-msggroupselector-search-recent": "dawî",
+ "tux-languageselector": "Wergerîne",
+ "tux-tab-all": "Hemû",
+ "tux-tab-translated": "Wergerandî",
+ "tux-edit": "Biguherîne",
+ "tux-status-translated": "wergerand",
+ "tux-status-saving": "Tê tomarkirin...",
+ "tux-status-unsaved": "Nehate tomarkirin",
+ "tux-editor-placeholder": "Wergera te",
+ "tux-editor-save-button-label": "Wergerê tomar bike",
+ "tux-editor-edit-desc": "Danasînê biguherîne",
+ "tux-editor-add-desc": "Danasînê lê zêde bike",
+ "tux-editor-in-other-languages": "Bi zimanên din",
+ "tux-editor-ask-help": "Ji bo agahiyên berfirehtir bipirse",
+ "tux-warnings-more": "{{PLURAL:$1|zêdetir $1}}",
+ "tux-warnings-hide": "veşêre",
+ "tux-editor-message-desc-more": "Zêdetir bibîne",
+ "tux-editor-message-desc-less": "Kêmtir bibîne",
+ "tux-editor-clear-translated": "Yên wergerandî veşêre",
+ "tux-editor-proofreading-hide-own-translations": "Wergerên xwe veşêre",
+ "tux-editor-proofreading-show-own-translations": "Wergerên xwe nîşan bide",
+ "tux-editor-page-mode": "Rûpel",
+ "tux-editor-outdated-warning": "Ev werger divê bê rojanekirin.",
+ "tux-editor-outdated-warning-diff-link": "Cudahiyan nîşan bide",
+ "tux-editor-doc-editor-cancel": "Betal bike",
+ "tux-message-filter-advanced-button": "Lêgerîna pêşketî",
+ "tux-proofread-translated-by-self": "Ji aliyê te hatiye wergerandin",
+ "tux-empty-list-all": "Ev koma peyamê vala ye",
+ "tux-empty-list-all-guide": "Komeka din a peyamê bo wergerandinê hilbijêre.",
+ "tux-empty-list-translated": "Peyamên newergerandî",
+ "tux-empty-list-translated-action": "Wergerîne",
+ "tux-empty-list-other-link": "Hemû peyaman nîşan bide",
+ "tux-editor-close-tooltip": "Bigre",
+ "tux-editor-expand-tooltip": "Berfireh bike",
+ "tux-editor-message-tools-history": "Dîrok",
+ "tux-editor-message-tools-translations": "Hemû werger"
+}
diff --git a/MLEB/Translate/i18n/core/ky.json b/MLEB/Translate/i18n/core/ky.json
new file mode 100644
index 00000000..186de502
--- /dev/null
+++ b/MLEB/Translate/i18n/core/ky.json
@@ -0,0 +1,65 @@
+{
+ "@metadata": {
+ "authors": [
+ "Growingup"
+ ]
+ },
+ "translate-taction-translate": "Которуу",
+ "translate-taction-proofread": "Окуп текшерүү",
+ "translate-taction-lstats": "Тил статистикасы",
+ "translate-taction-mstats": "Билдирүүлөр тобунун статистикасы",
+ "translate-taction-export": "Экспорт",
+ "translate-page-settings-legend": "Параметрлер",
+ "translate-page-group": "Топ",
+ "translate-page-language": "Тил",
+ "translate-page-navigation-legend": "Навигация",
+ "translate-next": "кийинки барак",
+ "translate-prev": "мурунку барак",
+ "translate-sidebar-alltrans": "Башка тилдерде",
+ "translations": "Бүт котормолор",
+ "translate-translations-count": "{{PLURAL:$1|$1 котормо}} табылды.",
+ "translate-translations-fieldset-title": "Билдирүү",
+ "translate-translations-messagename": "Ат:",
+ "translate-translations-project": "Долбоор:",
+ "languagestats": "Тил статистикасы",
+ "languagestats-summary": "Бул баракта азыркы тил үчүн бүт билдирүүлөр тобунун котормо статистикасы көрсөтүлүп турат.",
+ "languagestats-stats-for": "$1 тилдин котормо статистикасы ($2).",
+ "languagestats-recenttranslations": "жакындагы котормолор",
+ "translate-langstats-expand": "жаюу",
+ "translate-langstats-collapse": "түрүү",
+ "translate-langstats-expandall": "баарын жаюу",
+ "translate-langstats-collapseall": "баарын түрүү",
+ "translate-language-code": "Тилдин коду",
+ "translate-language-code-field-name": "Тилдин коду:",
+ "translate-suppress-complete": "Толугу менен которулган билдирүүлөр тобун көрсөтпөө",
+ "translate-ls-noempty": "Толугу менен которулбаган билдирүүлөр тобун көрсөтпөө",
+ "translate-language": "Тил",
+ "translate-total": "Билдирүүлөр",
+ "translate-untranslated": "Которулбагандар",
+ "translate-percentage-complete": "Бүтүрүлдү",
+ "translate-percentage-fuzzy": "Эскирди",
+ "translate-languagestats-overall": "Бүт билдирүүлөр топтору чогуу",
+ "translate-ls-submit": "Статистиканы көрсөтүү",
+ "translate-ls-column-group": "Билдирүүлөр тобу",
+ "translate-mgs-group": "Билдирүүлөр тобу:",
+ "translate-mgs-submit": "Статистиканы көрсөтүү",
+ "translate-mgs-column-language": "Тил",
+ "supportedlanguages": "Колдолгон тилдер",
+ "supportedlanguages-translators": "{{PLURAL:$2|Котормочу|Котормочулар}}: $1",
+ "supportedlanguages-recenttranslations": "жакындагы котормолор",
+ "translate-save": "Сактоо ($1)",
+ "translate-jssti-add": "Тизмеге кошуу",
+ "translate-manage-import-new": "Жаңы билдирүү $1",
+ "translate-manage-action-import": "Импорт",
+ "importtranslations": "Котормолорду импорттоо",
+ "translate-import-load": "Файлды жүктөө",
+ "translate-js-save": "Сактоо",
+ "translate-gs-code": "Код",
+ "translate-searchprofile": "Котормолор",
+ "translate-messagereview-submit": "Кабыл алуу",
+ "translate-gethelp": "Жардам",
+ "translate-msggroupselector-search-all": "Баары",
+ "tux-languageselector": "Тил",
+ "tux-tab-all": "Баары",
+ "tux-edit": "Оңдоо"
+}
diff --git a/MLEB/Translate/i18n/core/la.json b/MLEB/Translate/i18n/core/la.json
new file mode 100644
index 00000000..4b2f61c1
--- /dev/null
+++ b/MLEB/Translate/i18n/core/la.json
@@ -0,0 +1,13 @@
+{
+ "@metadata": {
+ "authors": [
+ "SPQRobin",
+ "UV"
+ ]
+ },
+ "translate": "Traducere",
+ "translate-next": "Pagina proxima",
+ "translate-prev": "Pagina superior",
+ "translate-magic-cm-save": "Servare",
+ "translate-sidebar-alltrans": "Linguis aliis"
+}
diff --git a/MLEB/Translate/i18n/core/lb.json b/MLEB/Translate/i18n/core/lb.json
new file mode 100644
index 00000000..6e9074e7
--- /dev/null
+++ b/MLEB/Translate/i18n/core/lb.json
@@ -0,0 +1,385 @@
+{
+ "@metadata": {
+ "authors": [
+ "Les Meloures",
+ "Robby",
+ "Soued031"
+ ]
+ },
+ "translate": "Iwwersetzt",
+ "translate-desc": "[[Special:Translate|Spezialsäit]] fir d'Iwwersetzung vu MediaWiki-Systemmessagen a fir Aneres",
+ "translate-taskui-view": "All Message weisen",
+ "translate-taskui-untranslated": "Net iwwersate Message weisen",
+ "translate-taskui-optional": "Optional Message weisen.",
+ "translate-taskui-acceptqueue": "Nëmme Messagen déi ech als nogekuckt markéieren däerf",
+ "translate-taskui-reviewall": "All Iwwersetzungen nokucken",
+ "translate-taskui-export-to-file": "Am native Format exportéieren",
+ "translate-taskui-export-as-po": "Exportéiere fir off-line z'iwwersetzen",
+ "translate-taction-translate": "Iwwersetzen",
+ "translate-taction-proofread": "Nokucken",
+ "translate-taction-lstats": "Sproochstatistiken",
+ "translate-taction-mstats": "Statistike vun de Gruppe vu Messagen",
+ "translate-taction-export": "Exportéieren",
+ "translate-taction-disabled": "Dës Aktioun ass op dëser Wiki ausgeschalt.",
+ "translate-page-no-such-language": "Ongëltege Sproochcode benotzt",
+ "translate-page-no-such-group": "Déi Gefrote Grupp gëtt et net.",
+ "translate-page-disabled": "Iwwersetzungen an dës Sprooch goufen an dëser Grupp ausgeschalt. Grond:\n\n<em>$1</em>",
+ "translate-language-disabled": "D'Iwwersetzung an dës Sprooch ass ausgeschalt.",
+ "translate-page-settings-legend": "Astellungen",
+ "translate-page-group": "Grupp",
+ "translate-page-language": "Sprooch",
+ "translate-page-limit": "Maximum",
+ "translate-page-limit-option": "$1 {{PLURAL:$1|Message|Message}} pro Säit",
+ "translate-submit": "Weisen",
+ "translate-page-navigation-legend": "Navigatioun",
+ "translate-page-showing": "D'Message vu(n) $1 bis $2 vun am Ganze(n) $3 gi gewisen.",
+ "translate-page-showing-all": "$1 {{PLURAL:$1|Message gëtt|Message gi}} gewisen",
+ "translate-page-showing-none": "Kee Message fir ze weisen",
+ "translate-next": "Nächst Säit",
+ "translate-prev": "Vireg Säit",
+ "translate-page-description-legend": "Informatiounen iwwer de Grupp",
+ "translate-page-description-hasoptional": "An dësem Groupe vu Message sinn optional Messagen.\nOptional Message sollen nëmmen iwwersat gi wann Är Sprooch speziell Ufuerderungen huet wéi zum Beispill datt Espacen net benotzt ginn oder eng Transliteratioun vu speziellen Nimm. $1",
+ "translate-page-description-hasoptional-open": "Optional Message weisen.",
+ "translate-page-edit": "änneren",
+ "translate-ext-url": "<hr />Internet-Site: $1",
+ "translate-optional": "(optional)",
+ "translate-ignored": "(ignoréiert)",
+ "translate-edit-title": "\"$1\" änneren",
+ "translate-edit-definition": "Definitioun vum Message",
+ "translate-edit-translation": "Iwwersetzung",
+ "translate-edit-contribute": "matschaffen",
+ "translate-edit-no-information": "<em>Dëse Message huet keng Dokumentatioun.\nWann Dir wësst wou oder wéi dëse Message gebraucht gëtt, da kënnt Dir aner Iwwersetzer hëllefen an deem Dir Informatiounen iwwer dëse Message gitt.</em>",
+ "translate-edit-information": "Informatioun iwwer de Message ($1)",
+ "translate-edit-in-other-languages": "Message an anere Sproochen",
+ "translate-edit-committed": "Aktuell Iwwersetzung an der Software",
+ "translate-edit-warnings": "Warnunge virun onkompletten Iwwersetzungen",
+ "translate-edit-tmsugs": "Automatesch Virschléi aus aneren Iwwersetzungen",
+ "translate-edit-tmmatch-source": "Quelltext fir d'Iwwersetzung: $1",
+ "translate-edit-tmmatch": "$1% Iwwereestëmmung",
+ "translate-use-suggestion": "Déi aktuell Iwwersetzung duerch dëse Virschlag ersetzen.",
+ "translate-edit-nopermission": "Dir braucht eng Iwwersetzungsrechter fir Messagen z'iwwersetzen.",
+ "translate-edit-askpermission": "Autorisatioun kréien",
+ "translate-magic-pagename": "Erweidert MediaWiki Iwwersetzung",
+ "translate-magic-help": "Dir kënnt d'Aliase vu Spezialsäiten, magesch Wierder an Nummraum Nimm iwwersetzen.\n\nSpezial Säit ''Aliasen'' a ''magesch Wierder'' kënne méi Iwwersetzungen hunn.\nIwwersetzunge gi mat engem Komma (,) getrennt.\nNummraim kënnen nëmmen eng Iwwersetzung hunn.\n\nD'Iwwersetzung vum Diskussiouns-Nummraum vum Projet <code>$1 Diskussioun</code> ka komplizéiert sinn.\n<code>$1</code> gëtt duerch den Numm vum Projet ersat ersat (zum Beispill <code>{{ns:project_talk}}</code>).\nWann et an Ärer Sprooch net méiglech ass fir e gëltegen Ausdrock ze maachen ouni den NUmm vum Site z'änneren, da kontaktéiert eis w.e.g op [[Support]].\n\nDir musst am Grupp vun den Iwwersetzer si fir Ännerungen ofspäicheren ze kënnen.\nÄnnerunge ginn net gespäichert bis Dir de Knäppchen hei ënnendrënner geklickt hutt.",
+ "translate-magic-module": "Modul:",
+ "translate-magic-submit": "Weisen",
+ "translate-magic-cm-export": "Export",
+ "translate-magic-nothing-to-export": "Et gëtt näischt z'exportéieren.",
+ "translate-magic-cm-to-be": "Gëtt",
+ "translate-magic-cm-current": "Aktuell",
+ "translate-magic-cm-original": "Original",
+ "translate-magic-cm-comment": "Bemierkung:",
+ "translate-magic-cm-save": "Späicheren",
+ "translate-magic-cm-updatedusing": "Geännert mat Hëllef vu [[Special:AdvancedTranslate|{{int:Translate-magic-pagename}}]]",
+ "translate-magic-cm-savefailed": "Späicheren huet net funktionéiert",
+ "translate-magic-special": "Spezialsäit vun den 'Aliasnimm'",
+ "translate-magic-words": "Magesch Wierder",
+ "translate-magic-namespace": "Nummraum Nimm",
+ "translate-magic-notsaved": "Är Ännerung gouf net gespäichert!",
+ "translate-magic-errors": "Verbessert w.e.g. {{PLURAL:$1|dëse|dës}} Feeler an den Iwwersetzungen:",
+ "translate-magic-saved": "Är Ännerunge goufe gespäichert",
+ "translate-checks-parameters": "{{PLURAL:$2|Dëse Parameter gëtt|Dës Parameter ginn}} net benotzt:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-parameters-unknown": "{{PLURAL:$2|Dëse Parameter ass|Dës Parameter sinn }} onbekannt:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-balance": "Et gëtt eng ongerued Zuel vu {{PLURAL:$2|Klammere|Klammere}} benotzt:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links": "{{PLURAL:$2|Dëse Link ass|Dës Linke si}} problematesch:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links-missing": "{{PLURAL:$2|Dëse Link feelt|Dës $2 Linke feelen}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-xhtml": "Ersetzt {{PLURAL:$2|dësen Tag|dës Tagen}} w.e.g. duerch déi korrekt:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-plural": "D'Definitioun benotzt <nowiki>{{PLURAL:}}</nowiki> awer d'Iwwersetzung mécht dat net.",
+ "translate-checks-plural-forms": "Fir <nowiki>{{PLURAL:}}</nowiki>{{PLURAL:$1|gouf eng Form|goufen $1 Formen}} uginn. Et {{PLURAL:$2|gëtt awer nëmmen eng Form|ginn awer nëmme(n) $2 Formen}} ënnerstëtzt (ausser de Formen 0= an 1= ).",
+ "translate-checks-plural-dupe": "<nowiki>{{PLURAL:}}</nowiki> huet zweemol déiselwecht Zeechen um Schluss. <nowiki>{{PLURAL:$1|Schof|Schof}}</nowiki> soll sou geschriwwe ginn: <nowiki>{{PLURAL:$1|Schof}}</nowiki>.",
+ "translate-checks-pagename": "Nummraum geännert duerch d'Definitioun",
+ "translate-checks-format": "Dës Iwwersetzung translation entsprecht net der Definitioun oder huet eng Syntax déi net gëlteg ass: $1",
+ "translate-checks-escape": "Dës Escape-Sequenzen kënnen ongewollt sinn: <strong>$1</strong>",
+ "translate-checks-parametersnotequal": "D'Zuel vun de Parameteren ass {{PLURAL:$1|$1}} et {{PLURAL:$2|dierft awer nëmmen ee sinn|missten der awer $2 sinn}}.",
+ "translate-checks-malformed": "<nowiki>$1</nowiki> ass formal net valabel.",
+ "translate-checks-fudforum-syntax": "<nowiki>$1</nowiki> aplaz vu(n) <nowiki>$2</nowiki> an dësem Projet benotzen.",
+ "translate-pref-nonewsletter": "Schéckt mir keng E-Mail-Newsletter.",
+ "translate-pref-editassistlang": "Sproochen déi ënnerstëtzen:",
+ "prefs-translate": "Optioune vun der Iwwersetzung",
+ "translate-pref-editassistlang-help": "Mat Komma getrennte Lëscht vun de Sproochcoden.\nIwwersetzung vun engem Message an dës Sprooche gëtt gewisen wann Dir iwwersetzt.\nD'Standard-Lëscht vu Sproochen hànkt vun Ärer Sprooch of.",
+ "translate-pref-editassistlang-bad": "Net valabele Sproochcode an der Lëscht:\n<nowiki>$1</nowiki>.",
+ "right-translate": "Mat dem Iwwersetzungs Tool änneren",
+ "right-translate-manage": "Message-Gruppe geréieren",
+ "action-translate-manage": "Message-Gruppe geréieren",
+ "right-translate-import": "Offline Iwwersetzungen importéieren",
+ "action-translate-import": "offline Iwwersetzungen importéieren",
+ "right-translate-messagereview": "Iwwersetzungen nokucken",
+ "right-translate-groupreview": "De Workflow vun de Gruppe vu Messagen nokucken",
+ "translate-rc-translation-filter": "Iwwersetzunge filteren:",
+ "translate-rc-translation-filter-no": "Näischt maachen",
+ "translate-rc-translation-filter-only": "Nëmmen Iwwersetzunge weisen",
+ "translate-rc-translation-filter-filter": "Iwwersetzunge filteren",
+ "translate-rc-translation-filter-site": "Nëmmen Ännerunge vu Message vum Site",
+ "translationstats": "Statistike vun der Iwwersetzung",
+ "translate-stats-edits": "Ännerunge",
+ "translate-stats-users": "Iwwersetzer",
+ "translate-stats-registrations": "Umellungen",
+ "translate-stats-reviews": "Iwwerpréifungen",
+ "translate-stats-reviewers": "Iwwerlieser",
+ "translate-statsf-intro": "Dir kënnt einfach Statistike mat dësem Formulaire generéieren.\nAll Wäerter hunn eng ënnescht an eng iewescht Limit.",
+ "translate-statsf-options": "Optioune vum Graphique",
+ "translate-statsf-width": "Breet a Pixelen:",
+ "translate-statsf-height": "Héicht a Pixelen:",
+ "translate-statsf-days": "Ufanksdatum:",
+ "translate-statsf-start": "Ufanksdatum:",
+ "translate-statsf-scale": "Granularitéit:",
+ "translate-statsf-scale-months": "Méint",
+ "translate-statsf-scale-weeks": "Wochen",
+ "translate-statsf-scale-days": "Deeg",
+ "translate-statsf-scale-hours": "Stonnen",
+ "translate-statsf-count": "Mooss:",
+ "translate-statsf-count-edits": "Zuel vun den Ännerungen",
+ "translate-statsf-count-users": "Aktiv Iwwersetzer",
+ "translate-statsf-count-registrations": "Nei Benotzer",
+ "translate-statsf-count-reviews": "Nogekuckt Iwwersetzungen",
+ "translate-statsf-count-reviewers": "Iwwerlieser",
+ "translate-statsf-language": "Komma-getrennte Lëscht vun de Sproochcoden:",
+ "translate-statsf-group": "Komma-getrennte Lëscht vun de Gruppecoden:",
+ "translate-statsf-submit": "Kucken ouni ofzespäicheren",
+ "translate-tag-category": "Sàiten déi iwwersat kënne ginn",
+ "translate-tag-page-desc": "Iwwersetzung vun der Wiki-Säit [[$2|$1]] vu(n) $3 ($4).",
+ "translate-sidebar-alltrans": "An anere Sproochen",
+ "translations": "All Iwwersetzungen",
+ "translations-summary": "Gitt w.e.g. en Numm vun engem Message hei ënnendrënner an fir all disponibel Iwwersetzungen ze weisen.",
+ "translate-translations-no-message": "\"$1\" ass kee Message den iwwersat ka ginn",
+ "translate-translations-none": "Et gëtt keng Iwwersetzunge fir \"$1\"",
+ "translate-translations-count": "{{PLURAL:$1|Eng Iwwersetzung|$1 Iwwersetzunge}} fonnt.",
+ "translate-translations-fieldset-title": "Message",
+ "translate-translations-messagename": "Numm:",
+ "translate-translations-project": "Projet:",
+ "translate-translations-including-no-param": "Gitt w.e.g. e gëltege Code vum Message beim Parameter vun der Ënnersäit unn",
+ "translate-translations-history-short": "V",
+ "languagestats": "Sproochstatistiken",
+ "languagestats-summary": "Dës Säit weist d'Statistike vun der Iwwersetzung fir all Gruppe vu Message fir eng Sprooch.",
+ "messagegroupstats-summary": "Dës Säit weist d'Statistike vun de Gruppe vu Messagen.",
+ "languagestats-stats-for": "Iwwersetzungsstatistike fir $1 ($2).",
+ "languagestats-recenttranslations": "Rezent Iwwersetzungen",
+ "translate-langstats-incomplete": "E puer vun de Statistiken op dëser Säit sinn net komplett. Luet d'Säit nei fir méi Statistiken ze kréien.",
+ "translate-langstats-expand": "opklappen",
+ "translate-langstats-collapse": "zesummeklappen",
+ "translate-langstats-expandall": "alles opklappen",
+ "translate-langstats-collapseall": "alles zouklappen",
+ "translate-language-code": "Sproochecode",
+ "translate-language-code-field-name": "Sproochecode:",
+ "translate-suppress-complete": "Gruppe vu Messagen. déi komplett iwwersat sinn, net weisen",
+ "translate-ls-noempty": "Gruppe vu Message vun deenen nach guer näischt iwwersat ass net weisen",
+ "translate-language": "Sprooch",
+ "translate-total": "Messagen",
+ "translate-untranslated": "Net iwwersat",
+ "translate-percentage-complete": "Fäerdeg zu",
+ "translate-percentage-fuzzy": "Net à jour",
+ "translate-languagestats-overall": "All Systemmessagen zesummen",
+ "translate-ls-submit": "Statistike weisen",
+ "translate-ls-column-group": "Grupp vu Messagen",
+ "translate-mgs-pagename": "Statistike vun de Gruppe vu Messagen",
+ "translate-mgs-fieldset": "Astellunge weisen",
+ "translate-mgs-group": "Grupp vu Messagen:",
+ "translate-mgs-nocomplete": "Déi Sproochen net weisen déi komplett iwwersat sinn",
+ "translate-mgs-noempty": "Déi Sprooche fir déi et keng Iwwersetzung gëtt net weisen",
+ "translate-mgs-submit": "Statistike weisen",
+ "translate-mgs-column-language": "Sprooch",
+ "translate-mgs-totals": "All Sproochen zesummen",
+ "translate-mgs-invalid-group": "De spezifizéierte Grupp $1 gëtt et net.",
+ "translate-mgs-nothing": "Fir déi gefrote Statistike gëtt et näischt fir ze weisen.",
+ "supportedlanguages": "Ënnerstëtzt Sproochen",
+ "supportedlanguages-summary": "Op dëser Säit steet eng Lëscht vun alle Sproochen déi op {{SITENAME}} ënnerstëtzt ginn, zesumme mam Numm vun den Iwwersetzer déi un där Sprooch schaffen.\nDen Numm vum Iwwersetzer ass méi grouss desto méi Iwwersetzungen de Benotzer gemaach huet.\nD'Faarf mat där den Numm vum Benotzer ënnerstrach ass weist wéi rezent dee Benotzer hei aktiv war.",
+ "supportedlanguages-colorlegend": "Erklärung vun de Faarwen: Lescht Iwwersetzung viru(n) $1 Deeg.",
+ "supportedlanguages-translators": "{{PLURAL:$2|{{GENDER:$3|Iwwersetzer}}}}: $1",
+ "supportedlanguages-recenttranslations": "rezent Iwwersetzungen",
+ "supportedlanguages-count": "{{PLURAL:$1|Eng Sprooch|$1 Sproochen}} am Ganzen.",
+ "supportedlanguages-activity": "$1: $2 {{PLURAL:$2|Ännerung|Ännerungen}} - lescht Ännerung viru(n) $3 {{PLURAL:$3|Dag|Deeg}}",
+ "translate-save": "Späicher ($1)",
+ "translate-jssti-add": "Op d'Lëscht derbäisetzen",
+ "managemessagegroups": "Gestioun vun de Gruppe vu Messagen",
+ "translate-smg-notallowed": "Dir däerft dës Aktioun net maachen.",
+ "translate-smg-nochanges": "Et gëtt keng Ännerunge fir ze verschaffen.",
+ "translate-smg-submit": "Ännerunge fir ze verschaffe schécken",
+ "translate-smg-submitted": "Definitioune vun de Message goufen aktualiséiert. Ännerunge ginn am Hannergrond gemaach.",
+ "translate-smg-more": "Nom Späichere vun dësen Ännerungen mussen nach méi Ännerunge verschafft ginn.",
+ "translate-smg-left": "Inhalt vum Message op der Wiki",
+ "translate-smg-right": "Ännerungen déi erakommen",
+ "translate-manage-import-diff": "Message $1 | Aktiounen: $2",
+ "translate-manage-import-new": "Neie Message $1",
+ "translate-manage-import-deleted": "Geläschte Message $1",
+ "translate-manage-action-import": "Importéieren",
+ "translate-manage-action-conflict": "Importéieren a mat 'FUZZY' markéieren",
+ "translate-manage-action-ignore": "Ignoréieren",
+ "translate-manage-action-fuzzy": "Iwwersetzungen importéieren a mat 'FUZZY' markéieren",
+ "translate-manage-nochanges": "Et gi keng Ännerungen an den Definitioune vun de Message vun dësem Grupp.",
+ "translate-manage-nochanges-other": "Et gouf keng Ännerunge fir dës Sprooch.\nBenotzt de Link ënnendrënner fir zréck op d'Säit mat den Detailer vum Grupp ze goen.",
+ "translate-manage-inconsistent": "Inkonsistenz an der Ufro fonnt.\nKuckt w.e.g. no fir Ännerungen a probéiert nach eng Kéier. Detailer: $1",
+ "translate-manage-toolong": "Déi maximal Zäit vun der Beaarbechtung vun $1 {{PLURAL:$1|Sekonn|Sekonne}} gouf iwwerschratt.\nSchéckt de Formulaire w.e.g. nach emol fir mat der Beaarbechtung weiderzefueren.",
+ "translate-manage-import-summary": "Eng nei Versioun vun enger externer Quell gëtt importéiert",
+ "translate-manage-conflict-summary": "En nei Versioun gëtt vun enger externer Quell imortéiert. W.e.g. nokucken.",
+ "translate-manage-fuzzy-summary": "D'Definitioun vum Message huet geännert",
+ "translate-manage-submit": "Maachen",
+ "translate-manage-intro-other": "Ënnendrënner ass eng Lëscht vun den Ännerungen vun den Iwwersetzungen an der Sprooch $1.\nKuckt d'Ännerunge w.e.g. no a wielt déi Aktioun déi Dir fir déi jeeweileg Iwwersetzung wëllt.\nWann Dir decidéiert fir Ännerungen z'ignoréieren, ass dës Aktioun just temporär.",
+ "translate-manage-import-ok": "Importéiert: $1",
+ "translate-manage-import-done": "Import fäerdeg!",
+ "importtranslations": "Iwwersetzungen importéieren",
+ "translate-import-from-local": "Fichier lokal eropgelueden:",
+ "translate-import-load": "Fichier lueden",
+ "translate-import-err-dl-failed": "De Fichier kann net erreescht ginn:\n$1",
+ "translate-import-err-ul-failed": "D'Eropluede vum Fichier huet net geklappt",
+ "translate-import-err-invalid-title": "Den Numm vum Fichier <nowiki>$1</nowiki> deen ugi gouf ass net valabel.",
+ "translate-import-err-no-such-file": "De Fichier <nowiki>$1</nowiki> gëtt et net oder gouf lokal net eropgelueden.",
+ "translate-import-err-stale-group": "De Grupp vu Messagen zu deem dëse Fichier gehéiert gëtt et net.",
+ "translate-import-err-no-headers": "De Fichier ass net am Format \"Gettext\" deen d'Erweiderung \"Translate\" brauch:\nDe Grupp an d'Sprooch konnte vun der Entête vum Fichier net bestëmmt ginn.",
+ "translate-import-err-warnings": "De Fichier ass net richteg forméiert.\nVergewëssert Iech datt Ären Editeursprogramm keng msgctxt Felder ewechhëllt.\nDetailler: $1",
+ "translate-js-summary": "Resumé:",
+ "translate-js-save": "Späicheren",
+ "translate-js-next": "Späicheren an den Nächsten opmaachen",
+ "translate-js-nonext": "Dëst war de leschte Message op dëser Säit",
+ "translate-js-skip": "Op den Nächste goen",
+ "translate-js-save-failed": "D'Späicheren huet net funktionéiert. Mellt dëse Feeler w.e.g.",
+ "translate-js-history": "Versioune vun der Iwwersetzung",
+ "translate-js-support": "Fro stellen",
+ "translate-js-support-title": "Frot no Hëllef wann net genuch Informatiounen do si fir de Message korrekt z'iwwersetzen",
+ "translate-js-support-unsaved-warning": "Dir hutt net gespäichert Iwwersetzungen.",
+ "translate-gs-pos": "Pos.",
+ "translate-gs-code": "Code",
+ "translate-gs-continent": "Kontinent",
+ "translate-gs-speakers": "Leit déi d'Sprooch schwetzen",
+ "translate-gs-score": "Score",
+ "translate-gs-multiple": "Méi",
+ "translate-gs-count": "Zuel",
+ "translate-gs-total": "Total",
+ "translate-gs-avgscore": "Duerchschnëttleche Score",
+ "translate-documentation-language": "Dokumentatioun vum Message",
+ "translate-searchprofile": "Iwwersetzungen",
+ "translate-searchprofile-tooltip": "An allen Iwwersetzunge sichen",
+ "translate-search-languagefilter": "Filter no der Sprooch:",
+ "translate-search-nofilter": "Kee Filter",
+ "translate-messagereview-submit": "nogekuckt markéieren",
+ "translate-messagereview-progress": "Als nogekuckt markéieren...",
+ "translate-messagereview-failure": "Als nogekuckt markéieren huet net funktionéiert: $1",
+ "translate-messagereview-done": "Nogekuckt",
+ "translate-messagereview-reviews": "Nogekuckt vu(n) {{PLURAL:$1|engem|$1}} Benotzer",
+ "translate-messagereview-reviewswithyou": "Nogekuckt vu(n) {{PLURAL:$1|Iech|$1 Benotzer, Iech ageschloss}}",
+ "api-error-invalidrevision": "D'Iwwersetzung gouf net fonnt",
+ "api-error-unknownmessage": "De Message gouf net fonnt",
+ "api-error-fuzzymessage": "D'Iwwersetzung ass als 'fuzzy' markéiert",
+ "api-error-owntranslation": "Dir kënnt Är eegen Iwwersetzungen net als nogekuckt markéieren.",
+ "translate-messagereview-no-fuzzy": "'Fuzzy'-Iwwersetzunge kënnen net als nogekuckt markéiert ginn.",
+ "translate-messagereview-no-own": "Dir kënnt Är eegen Iwwersetzungen net als nogekuckt markéieren.",
+ "translate-messagereview-doit": "Dës Iwwersetzung als nogekuckt markéieren.",
+ "log-name-translationreview": "Logbuch vun den nogekuckten Iwwersetzungen",
+ "log-description-translationreview": "Logbuch vun allen nogekuckten Iwwersetzungen a Gruppe vu Messagen.",
+ "logentry-translationreview-message": "$1 {{GENDER:$2|huet}} d'Iwwersetzung $3 nogekuckt",
+ "logentry-translationreview-group": "$1 {{GENDER:$2|huet}} de Status vun der Iwwersetzung vu(n) $4 vun $3 vu(n) $6 op $7 geännert",
+ "group-translate-sandboxed": "Net-confirméiert Iwwersetzer",
+ "group-translate-sandboxed-member": "{{GENDER:$1|net-confirméierten Iwwersetzer}}",
+ "right-translate-sandboxmanage": "Benotzer vun der Sandkëscht geréieren",
+ "action-translate-sandboxmanage": "Benotzer aus der Sandkëscht ze geréieren",
+ "right-translate-sandboxaction": "Aktiounen ausféieren déi fir Sandkëschtbenotzer autoriséiert sinn",
+ "translate-workflow-state-": "(net agestallt)",
+ "translate-workflowstatus": "Statut: $1",
+ "translate-workflow-set-do": "Astellen",
+ "translate-workflow-set-doing": "Astellen...",
+ "translate-workflow-set-done": "Agestallt!",
+ "translate-workflow-set-error-alreadyset": "Den ugefrote Status ass identesch mam aktuelle Status.",
+ "translate-workflow-autocreated-summary": "Automatescht Uleeë vun der Säit fir de Statut vum Workflow $1",
+ "translate-stats-workflow": "Statut",
+ "translate-workflowgroup-label": "Etappe vum Workflow",
+ "translate-workflowgroup-desc": "Dëse Grupp vu Message weist de Status am Iwwersetzungsoflaf.\nDe Status ass sou wéi an der Konfiguratiounslëscht $wgTranslateWorkflowStates definéiert.",
+ "translate-dynagroup-recent-label": "Rezent Iwwersetzungen",
+ "translate-dynagroup-recent-desc": "Dëse Grupp vu Message weist all rezent Iwwersetzungen an dës Sprooch.\nDëst ass ganz nëtzlech fir d'Aufgabe vum Nokucken.",
+ "translate-dynagroup-additions-label": "Rezent nei Message",
+ "translate-dynagroup-additions-desc": "Dëse Grupp vu Message weist nei oder geännert Messagen.",
+ "translate-dynagroup-by": "Iwwersetzung vum {{GENDER:$1|$1}}",
+ "translate-dynagroup-byc": "Iwwersetzung vum {{GENDER:$1|$1}} ($2)",
+ "translate-dynagroup-last": "Lescht Ännerung vum {{GENDER:$1|$1}}",
+ "translate-dynagroup-lastc": "Lescht Ännerung vum {{GENDER:$1|$1}} ($2)",
+ "translate-gethelp": "Hëllef",
+ "translate-msggroupselector-projects": "Grupp vu Messagen",
+ "translate-msggroupselector-search-placeholder": "An de Gruppe sichen",
+ "translate-msggroupselector-search-all": "All",
+ "translate-msggroupselector-search-recent": "Rezent",
+ "translate-msggroupselector-view-subprojects": "{{PLURAL:$1|Eng Ënnergruppe|$1 Ënnergruppen}}",
+ "tux-languageselector": "Iwwersetzen op",
+ "tux-tab-all": "All",
+ "tux-tab-untranslated": "Net iwwersat",
+ "tux-tab-outdated": "Vereelst",
+ "tux-tab-translated": "Iwwersat",
+ "tux-tab-unproofread": "Net nogekuckt",
+ "tux-edit": "Änneren",
+ "tux-status-optional": "Fakultativ",
+ "tux-status-fuzzy": "Vereelst",
+ "tux-status-proofread": "Nogekuckt",
+ "tux-status-translated": "Iwwersat",
+ "tux-status-saving": "Späicheren...",
+ "tux-status-unsaved": "Net gespäichert",
+ "tux-editor-placeholder": "Är Iwwersetzung",
+ "tux-editor-paste-original-button-label": "Quelltext drasetzen",
+ "tux-editor-discard-changes-button-label": "Ännerungen annuléieren",
+ "tux-editor-save-button-label": "Iwwersetzung späicheren",
+ "tux-editor-skip-button-label": "Op den Nächste goen",
+ "tux-editor-cancel-button-label": "Ofbriechen",
+ "tux-editor-confirm-button-label": "Iwwersetzung confirméieren",
+ "tux-editor-shortcut-info": "Dréckt \"$1\" fir ze späicheren oder \"$2\" fir op den nächste Message ze goen oder \"$3\" fir aner Tasturkierzel.",
+ "tux-editor-edit-desc": "Dokumentatioun änneren",
+ "tux-editor-add-desc": "Dokumentatioun derbäisetzen",
+ "tux-editor-suggestions-title": "Virschléi",
+ "tux-editor-in-other-languages": "An anere Sproochen",
+ "tux-editor-need-more-help": "Braucht Dir méi Hëllef?",
+ "tux-editor-ask-help": "No méi Informatioune froen",
+ "tux-editor-tm-match": "$1% Iwwereestëmmung",
+ "tux-warnings-more": "{{PLURAL:$1|$1 méi}}",
+ "tux-warnings-hide": "verstoppen",
+ "tux-editor-save-failed": "D'Späichere vun der Iwwersetzung huet net funktionéiert: $1",
+ "tux-editor-n-uses": "gouf {{PLURAL:$1|ee mol|$1 mol}} gebraucht",
+ "tux-editor-message-desc-more": "Méi weisen",
+ "tux-editor-message-desc-less": "Manner weisen",
+ "tux-editor-clear-translated": "Déi Iwwersate verstoppen",
+ "tux-editor-proofreading-mode": "Nokucken",
+ "tux-editor-translate-mode": "Lëscht",
+ "tux-editor-proofreading-hide-own-translations": "Är Iwwersetzunge verstoppen",
+ "tux-editor-proofreading-show-own-translations": "Är Iwwersetzunge weisen",
+ "tux-proofread-action-tooltip": "Als nogekuckt markéieren",
+ "tux-proofread-edit-label": "Änneren",
+ "tux-editor-page-mode": "Säit",
+ "tux-editor-outdated-warning": "Dës Iwwersetzung muss eventuell aktualiséiert ginn.",
+ "tux-editor-outdated-warning-diff-link": "Ënnerscheeder weisen",
+ "tux-editor-doc-editor-placeholder": "Dokumentatioun vum Message",
+ "tux-editor-doc-editor-save": "Dokumentatioun späicheren",
+ "tux-editor-doc-editor-cancel": "Ofbriechen",
+ "tux-messagetable-more-messages": "$1 {{PLURAL:$1|Message|Messagen}} méi",
+ "tux-messagetable-loading-messages": "$1 {{PLURAL:$1|Message gëtt|Message gi}} gelueden ...",
+ "tux-message-filter-placeholder": "Lëscht filteren",
+ "tux-message-filter-result": "$1 {{PLURAL:$1|Resultat|Resultater}} fonnt fir \"$2\"",
+ "tux-message-filter-advanced-button": "Erweidert Sich",
+ "tux-message-filter-optional-messages-label": "Optional Messagen",
+ "tux-proofread-translated-by-self": "Vun Iech iwwersat",
+ "tux-empty-list-all": "Dëse Grupp vu Messagen ass eidel",
+ "tux-empty-list-all-guide": "Sicht en anere Gruppe vu Messagen eraus fir z'iwwersetzen",
+ "tux-translate-page-no-such-group": "<strong>De Grupp deen ugi war gëtt et net.</strong> Sicht een anere Grupp vu Messagen eraus.",
+ "tux-empty-list-translated": "Keng iwwersate Messagen",
+ "tux-empty-list-translated-guide": "Dir kënnt beim Iwwersetzen hëllefen",
+ "tux-empty-list-translated-action": "Iwwersetzen",
+ "tux-empty-no-messages-to-display": "Keng Message fir ze weisen",
+ "tux-empty-there-are-optional": "Et gëtt optional Messagen déi an dëser Lëscht net gewise ginn",
+ "tux-empty-show-optional-messages": "Optional Message weisen",
+ "tux-empty-no-outdated-messages": "Keng vereelste Messagen",
+ "tux-empty-nothing-to-proofread": "Näischt fir nozekucken",
+ "tux-empty-you-can-help-providing": "Dir kënnt hëllefen nei Iwwersetzungen ze maachen",
+ "tux-empty-nothing-new-to-proofread": "Näischt neies fir nozekucken",
+ "tux-empty-you-can-review-already-proofread": "Dir kënnt Iwwersetzungen nokucken déi scho vun Aneren nogekuckt sinn.",
+ "tux-empty-list-other": "Näischt fir z'iwwersetzen.",
+ "tux-empty-list-other-guide": "Dir kënnt beim Nokucke vun den Iwwersetzungen hëllefen",
+ "tux-empty-list-other-action": "Iwwersetzungen nokucken",
+ "tux-empty-list-other-link": "All Message weisen",
+ "tux-editor-close-tooltip": "Zoumaachen",
+ "tux-editor-expand-tooltip": "Opklappen",
+ "tux-editor-collapse-tooltip": "Zesummeklappen",
+ "tux-editor-message-tools-history": "Versiounen",
+ "tux-editor-message-tools-delete": "Läschen",
+ "tux-editor-message-tools-translations": "All Iwwersetzungen",
+ "tux-editor-loading": "Lueden...",
+ "translate-search-more-languages-info": "{{PLURAL:$1|Eng Sprooch|$1 Sprooche}} méi",
+ "translate-statsbar-tooltip": "$1% iwwersat, $2% nogekuckt",
+ "translate-statsbar-tooltip-with-fuzzy": "$1% iwwersat, $2% nogekuckt, $3% vereelst",
+ "translate-search-more-groups-info": "$1 weider {{PLURAL:$1|Grupp|Gruppen}}",
+ "translate-ulsdep-title": "Astellungsfeeler",
+ "translate-ulsdep-body": "D'Iwwersetzungerweiderung hänkt vun der [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:UniversalLanguageSelector Universeller Sproochauswiel-Erweiderung] of.",
+ "tux-session-expired": "Dir sidd net méi ageloggt. Loggt Iech w.e.g. an engem separaten Tab an. Alternativ kënnt Dir och eng Kopie vun den net-gespäicherten Iwwersetzunge maachen, Iech aloggen an op dës Säit zréckkommen."
+}
diff --git a/MLEB/Translate/i18n/core/lg.json b/MLEB/Translate/i18n/core/lg.json
new file mode 100644
index 00000000..5cffc350
--- /dev/null
+++ b/MLEB/Translate/i18n/core/lg.json
@@ -0,0 +1,27 @@
+{
+ "@metadata": {
+ "authors": [
+ "Kizito"
+ ]
+ },
+ "translate": "Vvuunula",
+ "translate-page-settings-legend": "Entegeka",
+ "translate-page-group": "Kiti kya",
+ "translate-page-language": "Mu lulimi",
+ "translate-page-limit": "Koma ku",
+ "translate-page-limit-option": "{{PLURAL:$1|bubaka bwa mulundi|bubaka bwa mirundi}} $1 ku buli lupapula",
+ "translate-submit": "Nona",
+ "translate-page-navigation-legend": "Okulambula enfo eno",
+ "translate-page-showing": "Olaba obubaka okuva ku $1 okutuuka ku $2 ku $3 awamu.",
+ "translate-page-showing-all": "Ekiti kino kirimu {{PLURAL:$1|obubaka bwa mulundi|obubaka bwa mirundi}} $1.",
+ "translate-next": "Dda ku luddirira luno",
+ "translate-prev": "Dda ku lukulembera luno",
+ "translate-page-description-legend": "Ebifa ku kiti kino",
+ "translate-page-edit": "kyusa",
+ "translate-magic-submit": "Nona",
+ "translate-statsf-scale-days": "Nnaku",
+ "translate-statsf-scale-hours": "Ssaawa",
+ "translate-statsf-submit": "Kulagako",
+ "languagestats": "Ebivvuunulidwa mu lulimi",
+ "translate-language": "Lulimi"
+}
diff --git a/MLEB/Translate/i18n/core/li.json b/MLEB/Translate/i18n/core/li.json
new file mode 100644
index 00000000..ac50e2da
--- /dev/null
+++ b/MLEB/Translate/i18n/core/li.json
@@ -0,0 +1,18 @@
+{
+ "@metadata": {
+ "authors": [
+ "Aelske",
+ "Ooswesthoesbes",
+ "Pahles"
+ ]
+ },
+ "translate": "Vertale",
+ "translate-page-settings-legend": "Insjtellinge",
+ "translate-page-group": "Gróp",
+ "translate-page-language": "Taal",
+ "translate-page-limit": "Maximaal",
+ "translate-submit": "Ophaole",
+ "translate-next": "Volgende pazjena",
+ "translate-prev": "Veurige pazjena",
+ "translate-optional": "(optioneel)"
+}
diff --git a/MLEB/Translate/i18n/core/lki.json b/MLEB/Translate/i18n/core/lki.json
new file mode 100644
index 00000000..c9e929d5
--- /dev/null
+++ b/MLEB/Translate/i18n/core/lki.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Hosseinblue"
+ ]
+ },
+ "translate-taction-export": "در بِردن"
+}
diff --git a/MLEB/Translate/i18n/core/lmo.json b/MLEB/Translate/i18n/core/lmo.json
new file mode 100644
index 00000000..9cf0e800
--- /dev/null
+++ b/MLEB/Translate/i18n/core/lmo.json
@@ -0,0 +1,32 @@
+{
+ "@metadata": {
+ "authors": [
+ "Dakrismeno",
+ "Insübrich"
+ ]
+ },
+ "translate-page-settings-legend": "Impustazión",
+ "translate-page-group": "Grüp",
+ "translate-page-limit": "Limit",
+ "translate-page-limit-option": "$1 {{PLURAL:$1|messagg|messagg}} per pagina",
+ "translate-submit": "Fàm vedè",
+ "translate-prev": "Pagina precedent",
+ "translate-magic-pagename": "Tradüzión estendüda de MediaWiki",
+ "translate-magic-submit": "Fàm vedè",
+ "translate-magic-cm-updatedusing": "Agiurnaa druvand: [[Special:AdvancedTranslate|{{int:Translate-magic-pagename}}]]",
+ "translate-pref-editassistlang": "Assistent di lenguv:",
+ "prefs-translate": "Opzión di tradüzión",
+ "translate-rc-translation-filter": "Filtra i tradüzión",
+ "translate-rc-translation-filter-no": "Fà nagòt",
+ "translate-rc-translation-filter-only": "Mustra dumà i tradüzión",
+ "translate-rc-translation-filter-filter": "Elimina i tradüzión",
+ "translate-rc-translation-filter-site": "Dumà i cambiament ai messagg del sit",
+ "translationstats": "Statistegh de tradüzión",
+ "translate-stats-edits": "Mudifegh",
+ "translate-stats-users": "Tradütur",
+ "translate-statsf-submit": "Fà vidè prima",
+ "translate-tag-category": "Paginn che se poden vultà",
+ "translate-tag-page-desc": "Tradüzión de la pagina wiki [[$2|$1]].",
+ "translate-sidebar-alltrans": "In alter lenguv",
+ "translations": "Tüt i tradüzión"
+}
diff --git a/MLEB/Translate/i18n/core/ln.json b/MLEB/Translate/i18n/core/ln.json
new file mode 100644
index 00000000..708fbb70
--- /dev/null
+++ b/MLEB/Translate/i18n/core/ln.json
@@ -0,0 +1,13 @@
+{
+ "@metadata": {
+ "authors": [
+ "Eruedin",
+ "Moyogo"
+ ]
+ },
+ "translate-page-settings-legend": "Palamɛ́tɛlɛ",
+ "translate-page-language": "Lokótá",
+ "translate-page-navigation-legend": "Botamboli",
+ "translate-next": "Lonkásá na nsima",
+ "translate-page-edit": "kobɔngisa"
+}
diff --git a/MLEB/Translate/i18n/core/lo.json b/MLEB/Translate/i18n/core/lo.json
new file mode 100644
index 00000000..d4264c07
--- /dev/null
+++ b/MLEB/Translate/i18n/core/lo.json
@@ -0,0 +1,9 @@
+{
+ "@metadata": {
+ "authors": [
+ "Passawuth"
+ ]
+ },
+ "translate": "ແປ",
+ "translate-desc": "[[Special:Translate|ໜ້າພິເສດ]]ສຳຫຼັບແປມີເດຍວິກິແລະອື່ນ າ"
+}
diff --git a/MLEB/Translate/i18n/core/lrc.json b/MLEB/Translate/i18n/core/lrc.json
new file mode 100644
index 00000000..9702be3a
--- /dev/null
+++ b/MLEB/Translate/i18n/core/lrc.json
@@ -0,0 +1,76 @@
+{
+ "@metadata": {
+ "authors": [
+ "Mogoeilor"
+ ]
+ },
+ "translate": "والرن",
+ "translate-taskui-view": "همه پيغومل نشون بيه",
+ "translate-taskui-untranslated": "پيغوما نلرسه نه نشون بيه",
+ "translate-taction-translate": "والرن",
+ "translate-taction-proofread": "دواره دیئن",
+ "translate-taction-lstats": "آماريا زون",
+ "translate-taction-export": "وه در ديئن",
+ "translate-page-settings-legend": "تنظيمات",
+ "translate-page-group": "گرو",
+ "translate-page-language": "زون",
+ "translate-page-limit": "كران دار بيئن",
+ "translate-page-navigation-legend": "ناوگشتن",
+ "translate-page-showing-none": "هيش پيغومی سی ديئن نی",
+ "translate-next": "بلگه نيايی",
+ "translate-prev": "بلگه دمايی",
+ "translate-page-edit": "ويرايشت",
+ "translate-edit-title": "ويرايشت $1",
+ "translate-edit-translation": "لرسن",
+ "translate-edit-contribute": "هومياری كردن",
+ "translate-edit-askpermission": "قول بیئتو",
+ "translate-magic-cm-to-be": "تا بوئه",
+ "translate-magic-cm-current": "تازه باو",
+ "translate-magic-cm-original": "اصل",
+ "translate-magic-cm-comment": "نظر",
+ "translate-magic-cm-save": "ذخيره كردن",
+ "translate-magic-words": "كلميا جادويی",
+ "translate-pref-editassistlang": "زونيا ياريگر",
+ "translate-rc-translation-filter-no": "هيچی نكيد",
+ "translate-stats-edits": "ويرايشتيا",
+ "translate-stats-users": "والرياريا",
+ "translate-stats-registrations": "ثوت نام",
+ "translate-statsf-scale-months": "مايا",
+ "translate-statsf-scale-weeks": "هفته يا",
+ "translate-statsf-scale-days": "روزيا",
+ "translate-statsf-scale-hours": "ساعتيا",
+ "translate-statsf-count": "انازه",
+ "translate-statsf-count-registrations": "كارور تازه",
+ "translate-statsf-submit": "پيش سيل",
+ "translate-sidebar-alltrans": "د زونيا هنی",
+ "translations": "كل لرسنييا",
+ "translate-translations-fieldset-title": "پيغوم",
+ "translate-translations-messagename": "نوم:",
+ "translate-translations-project": "پروجه:",
+ "translate-translations-history-short": "اچ",
+ "languagestats": "آماريا زون",
+ "languagestats-recenttranslations": "لرسنيا تازه",
+ "translate-langstats-expand": "وا كردن",
+ "translate-langstats-collapse": "جم كردن",
+ "translate-langstats-expandall": "همه نه وا كو",
+ "translate-langstats-collapseall": "همه نه كؤچك كو",
+ "translate-language-code": "كد زون",
+ "translate-language-code-field-name": "كد زون:",
+ "translate-language": "زون",
+ "translate-total": "پيغوم",
+ "translate-untranslated": "والرسه نبيه",
+ "translate-percentage-complete": "كامل كردن",
+ "translate-percentage-fuzzy": "د تاريخ در",
+ "translate-ls-column-group": "پيغوم گرويی",
+ "translate-mgs-column-language": "زون",
+ "translate-mgs-totals": "همه زونا وایک",
+ "supportedlanguages": "زونا حمایت بیه",
+ "supportedlanguages-recenttranslations": "لرسنيا تازه",
+ "translate-js-summary": "چكسته",
+ "translate-js-save": "ذخيره كردن",
+ "translate-js-support": "د سوال جؤاو دئين",
+ "translate-gs-code": "كد",
+ "translate-gs-speakers": "گپ زننه",
+ "translate-gs-score": "امتياز",
+ "translate-gs-total": "همه"
+}
diff --git a/MLEB/Translate/i18n/core/lt.json b/MLEB/Translate/i18n/core/lt.json
new file mode 100644
index 00000000..4a34a7bd
--- /dev/null
+++ b/MLEB/Translate/i18n/core/lt.json
@@ -0,0 +1,326 @@
+{
+ "@metadata": {
+ "authors": [
+ "Eitvys200",
+ "Garas",
+ "Homo",
+ "Mantak111",
+ "Perkunas",
+ "Vpovilaitis",
+ "Hugo.arg"
+ ]
+ },
+ "translate": "Vertimas",
+ "translate-desc": "[[Special:Translate|Specialus puslapis]] MediaWiki vertimui ir už jos ribų",
+ "translate-taskui-view": "Rodyti visus pranešimus",
+ "translate-taskui-untranslated": "Rodyti neišverstus pranešimus",
+ "translate-taskui-optional": "Rodyti pasirinktinius pranešimus",
+ "translate-taskui-acceptqueue": "Tik pranešimus galiu pažymėti kaip peržiūrėta",
+ "translate-taskui-reviewall": "Apžvelgti visus vertimus",
+ "translate-taskui-export-to-file": "Eksportuoti vietinėje formate",
+ "translate-taskui-export-as-po": "Eksportuoti atsijungusiam vertimui",
+ "translate-taction-translate": "Išversti",
+ "translate-taction-proofread": "Apžvalga",
+ "translate-taction-lstats": "Kalbos statistikos",
+ "translate-taction-mstats": "Pranešimų grupės statistika",
+ "translate-taction-export": "Eksportuoti",
+ "translate-taction-disabled": "Šis veiksmas yra išjungtas šiame wiki.",
+ "translate-page-no-such-language": "Buvo nurodytas klaidingas kalbos kodas",
+ "translate-page-no-such-group": "Nurodyta nekorektiška grupė.",
+ "translate-page-disabled": "Vertimai į šią kalbą šioje grupėje buvo išjungtos.\nPriežastis:\n\n$1",
+ "translate-language-disabled": "Vertimai į šią kalbą yra išjungtas.",
+ "translate-page-settings-legend": "Nustatymai",
+ "translate-page-group": "Grupė",
+ "translate-page-language": "Kalba",
+ "translate-page-limit": "Limitas",
+ "translate-page-limit-option": "$1 {{PLURAL:$1|pranešimas|pranešimai|pranešimų}} puslapyje",
+ "translate-submit": "Išrinkti",
+ "translate-page-navigation-legend": "Navigacija",
+ "translate-page-showing": "Rodomi pranešimai nuo $1 iki $2 iš $3.",
+ "translate-page-showing-all": "{{PLURAL:$1|Rodomas $1 pranešimas|Rodomi $1 pranešimai|Rodoma $1 pranešimų}}.",
+ "translate-page-showing-none": "Nėra pranešimų rodymui.",
+ "translate-next": "Kitas puslapis",
+ "translate-prev": "Ankstesnis puslapis",
+ "translate-page-description-legend": "Informacija apie grupę",
+ "translate-page-description-hasoptional": "Šios pranešimų grupės yra pasirenkami pranešimai.\nPasirenkami pranešimai turėtų būti tik išversti, kai jūsų kalba turi specialių reikalavimų.\nkaip nenaudojant vietas arba tranliteruodami tikrinius vardus. $1",
+ "translate-page-description-hasoptional-open": "Rodyti pasirinktinius pranešimus.",
+ "translate-page-edit": "redaguoti",
+ "translate-ext-url": "<hr />Interneto svetainė: $1",
+ "translate-optional": "(nebūtinas)",
+ "translate-ignored": "(ignoruojamas)",
+ "translate-edit-title": "Redaguoti \"$1\"",
+ "translate-edit-definition": "Pranešimo aprašymas",
+ "translate-edit-translation": "Vertimas",
+ "translate-edit-contribute": "papildyti",
+ "translate-edit-no-information": "''Šis pranešimas dar neturi dokumentacijos. Jei žinote kur ar kaip šis pranešimas naudojamas, jūs galite padėti kitiems vertėjams pridėdami dokumentacijos į šį pranešimą.''",
+ "translate-edit-information": "Informacija apie pranešimą ($1)",
+ "translate-edit-in-other-languages": "Pranešimas kitomis kalbomis",
+ "translate-edit-committed": "Dabartinis vertimo programinė įranga",
+ "translate-edit-warnings": "Įspėjimai apie nepilnus vertimus",
+ "translate-edit-tmsugs": "Pasiūlymai iš vertimo atminčių ir automatinis vertimas",
+ "translate-edit-tmmatch-source": "Vertimo šaltinio tekstas: $1",
+ "translate-edit-tmmatch": "$1% atitinka",
+ "translate-use-suggestion": "Pakeisti dabartinį vertimą su šiuo pasiūlymu.",
+ "translate-edit-nopermission": "Jums reikia leidimo išversti pranešimus",
+ "translate-edit-askpermission": "Prašyti leidimo",
+ "translate-magic-pagename": "MediaWiki išplėtimų vertimas",
+ "translate-magic-help": "Jūs galite versti specialių puslapių pseudonimus, magiškus žodžius ir vardų sričių pavadinimus.\n\nSpecialiojo puslapio pavadinimo ir magiško žodžio vertimai gali būti keli.\nVertimai yra atskiriami kableliu (,).\nVardų srities pavadinimas gali turėti tik vieną vertimą.\n\nVardų sričių vertimuose <code>$1 aptarimas</code> yra specialus. <code>$1</code> yra pakeičiamas svetainės pavadinimu (pavyzdžiui <code>{{ns:project_talk}}</code>).\nJei nėra įmanoma jūsų kalboje formuoti teisingą raiškumą be keisdami svetainės vardą, praneškite mums [[Support|palaikyme]].\n\nJūs turite priklausyti vertėjų grupei, kad galėtumėte įrašyti pakeitimus.\nPakeitimai nebus įrašyti iki Jūs nuspausite išsaugojimo mygtuką apačioje.",
+ "translate-magic-module": "Modulis:",
+ "translate-magic-submit": "Išrinkti",
+ "translate-magic-cm-export": "Eksportuoti",
+ "translate-magic-nothing-to-export": "Nėra nieko eksportuoti.",
+ "translate-magic-cm-to-be": "Turi būti",
+ "translate-magic-cm-current": "Einamasis",
+ "translate-magic-cm-original": "Originalas",
+ "translate-magic-cm-comment": "Komentaras:",
+ "translate-magic-cm-save": "Išsaugoti",
+ "translate-magic-cm-updatedusing": "Atnaujintas, naudojant [[Special:AdvancedTranslate|{{int:Translate-magic-pagename}}]]",
+ "translate-magic-cm-savefailed": "Nepavyko išsaugoti",
+ "translate-magic-special": "Specialių puslapių pavadinimai",
+ "translate-magic-words": "Magiški žodžiai",
+ "translate-magic-namespace": "Vardų srities pavadinimai",
+ "translate-magic-notsaved": "Jūsų redagavimas yra neišsaugotas!",
+ "translate-magic-errors": "Praįome ištaisyti {{PLURAL:$1|klaidą|klaidas}} vertimuose:",
+ "translate-magic-saved": "Jūsų keitimai buvo sėkmingai išsaugoti.",
+ "translate-checks-parameters": "{{PLURAL:$2|Šis $2 parametras nepanaudotas|Šie $2 parametrai nepanaudoti|Šie $2 parametrų nepanaudoti}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-plural": "Aprašymas naudoja <nowiki>{{PLURAL:}}</nowiki>, bet vertimas ne.",
+ "translate-pref-nonewsletter": "Nesiųskite man el. pašto naujienlaiškus",
+ "translate-pref-editassistlang": "Asistentinės kalbos:",
+ "prefs-translate": "Vertimo nustatymai",
+ "right-translate": "Redaguoti naudojant vertėjo sąsają",
+ "right-translate-manage": "Tvarkyti pranešimų grupes",
+ "action-translate-manage": "tvarkyti pranešimų grupes",
+ "right-translate-import": "Importuoti neprisijungusius vertimus",
+ "action-translate-import": "importuoti atsijungusius vertimus",
+ "right-translate-messagereview": "Peržiūrėti vertimus",
+ "right-translate-groupreview": "Keisti pranešimų grupių darbo eigos būseną",
+ "translate-rc-translation-filter": "Perkošti vertimus:",
+ "translate-rc-translation-filter-no": "Nieko nedaryti",
+ "translate-rc-translation-filter-only": "Rodyti tik vertimus",
+ "translate-rc-translation-filter-filter": "Perkošti vertimus",
+ "translate-rc-translation-filter-site": "Tik keisti į svetainę pranešimus",
+ "translationstats": "Vertimo statistikos",
+ "translate-stats-edits": "Redagavimai",
+ "translate-stats-users": "Vertėjai",
+ "translate-stats-registrations": "Registracijos",
+ "translate-stats-reviews": "Apžvalgos",
+ "translate-stats-reviewers": "Vertintojai",
+ "translate-statsf-options": "Grafiko pasirinktys",
+ "translate-statsf-width": "Plotis pikseliais:",
+ "translate-statsf-height": "Aukštis pikseliais:",
+ "translate-statsf-days": "Laikotarpis dienomis:",
+ "translate-statsf-start": "Pradžios data:",
+ "translate-statsf-scale": "Detalumas:",
+ "translate-statsf-scale-months": "Mėnesiai",
+ "translate-statsf-scale-weeks": "Savaitės",
+ "translate-statsf-scale-days": "Dienos",
+ "translate-statsf-scale-hours": "Valandos",
+ "translate-statsf-count": "Priemonė:",
+ "translate-statsf-count-edits": "Keitimų skaičius",
+ "translate-statsf-count-users": "Aktyvus vertėjai",
+ "translate-statsf-count-registrations": "Nauji vartotojai",
+ "translate-statsf-count-reviews": "Įvertintų vertimų",
+ "translate-statsf-count-reviewers": "Vertintojai",
+ "translate-statsf-language": "Atskirti kableliais kalbų kodų sarašas:",
+ "translate-statsf-group": "Atskirti kableliais grupių kodų sąrašas:",
+ "translate-statsf-submit": "Peržiūra",
+ "translate-tag-category": "Išverčiami puslapiai",
+ "translate-tag-page-desc": "Wiki puslapio vertimas [[$2|$1]].",
+ "translate-sidebar-alltrans": "Kitomis kalbomis",
+ "translations": "Visi vertimai",
+ "translations-summary": "Įveskite pranešimo pavadinimą žemiau, norėdami parodyti visus esamus vertimus.",
+ "translate-translations-no-message": "\"$1\" nėra išverčiama žinutė",
+ "translate-translations-none": "Nėra vertimų \"$1",
+ "translate-translations-count": "{{PLURAL:$1|Rastas vienas vertimas|Rasti $1 vertimai|Rastų $1 vertimų}}.",
+ "translate-translations-fieldset-title": "Pranešimas",
+ "translate-translations-messagename": "Pavadinimas:",
+ "translate-translations-project": "Projektas:",
+ "translate-translations-history-short": "val.",
+ "languagestats": "Kalbos statistikos",
+ "languagestats-summary": "Šis puslapis rodo vertimo statistikas visiems pranešimo grupėms vertimui.",
+ "languagestats-stats-for": "Vertimo statistikos $1 ($2).",
+ "languagestats-recenttranslations": "nauji vertimai",
+ "translate-langstats-expand": "išskleisti",
+ "translate-langstats-collapse": "suskleisti",
+ "translate-langstats-expandall": "Išskleisti visus",
+ "translate-langstats-collapseall": "Suskleisti visus",
+ "translate-language-code": "Kalbos kodas",
+ "translate-language-code-field-name": "Kalbos kodas:",
+ "translate-suppress-complete": "Slėpti visiškai išverstus pranešimų grupes",
+ "translate-ls-noempty": "Slėpti visiškai neišverstus pranešimus grupes",
+ "translate-language": "Kalba",
+ "translate-total": "Pranešimai",
+ "translate-untranslated": "Neišversti",
+ "translate-percentage-complete": "Baigta",
+ "translate-percentage-fuzzy": "Pasenę",
+ "translate-languagestats-overall": "Visos pranešimų grupės kartu",
+ "translate-ls-submit": "Rodyti statistiką",
+ "translate-ls-column-group": "Pranešimo grupė",
+ "translate-mgs-pagename": "Pranešimų grupės statistika",
+ "translate-mgs-fieldset": "Rodyti nuostatas",
+ "translate-mgs-group": "Pranešimo grupė:",
+ "translate-mgs-nocomplete": "Nerodyti kalbų kurios turi pabaigta vertimą",
+ "translate-mgs-noempty": "Nerodyti kalbų kurios neturi jokių vertimų",
+ "translate-mgs-submit": "Rodyti statistiką",
+ "translate-mgs-column-language": "Kalba",
+ "translate-mgs-totals": "Visos kalbos kartu",
+ "translate-mgs-invalid-group": "Nurodytai grupei $1 neegzistuoja.",
+ "supportedlanguages": "Palaikomos kalbos",
+ "supportedlanguages-translators": "{{PLURAL:$2|Vertėjas|Vertėjai|Vertėjų}}: $1",
+ "supportedlanguages-recenttranslations": "Nauji vertimai",
+ "supportedlanguages-count": "Iš viso $1 {{PLURAL:$1|kalba|kalbos|kalbų}}.",
+ "supportedlanguages-activity": "$1: $2 {{PLURAL:$2|keitimas|keitimai|keitimų}} - paskutinis keitimas yra prieš $3 {{PLURAL:$3|dieną|dienas|dienų}}",
+ "translate-save": "Išsaugoti ($1)",
+ "translate-jssti-add": "Pridėti į sąrašą",
+ "managemessagegroups": "Pranešimų grupės valdymas",
+ "translate-smg-notallowed": "Jums neleidžiama atlikti šio veiksmo.",
+ "translate-smg-nochanges": "Čia nėra keitimų apdorojimui",
+ "translate-smg-submit": "Pateikti pakeitimus apdorojimui",
+ "translate-smg-left": "Pranešimo turinys wiki",
+ "translate-smg-right": "Priimamus pakeitimai",
+ "translate-manage-import-diff": "Pranešimas $1 | Veiksmai: $2",
+ "translate-manage-import-new": "Naujas pranešimas $1",
+ "translate-manage-import-deleted": "Ištrintas pranešimas $1",
+ "translate-manage-action-import": "Importuoti",
+ "translate-manage-action-conflict": "Importuoti ir naujinti",
+ "translate-manage-action-ignore": "Ignoruoti",
+ "translate-manage-action-fuzzy": "Importuoti ir naujinti vertimus",
+ "translate-manage-fuzzy-summary": "Pranešimo apibrėžimas pasikeitė",
+ "translate-manage-submit": "Vykdyti",
+ "translate-manage-import-done": "Viskas baigta!",
+ "importtranslations": "Importuoti vertimus",
+ "translate-import-from-local": "Vietinio failo įkėlimas:",
+ "translate-import-load": "Įkrauti failą",
+ "translate-import-err-ul-failed": "Failo įkėlimas buvo nesėkmingas",
+ "translate-js-summary": "Santrauka:",
+ "translate-js-save": "Išsaugoti",
+ "translate-js-next": "Išsaugoti ir atidaryti kitą",
+ "translate-js-nonext": "Tai buvo paskutinė žinutė šiame puslapyje.",
+ "translate-js-skip": "Praleisti",
+ "translate-js-save-failed": "Išsaugojimas nepavyko. Praneškite apie šią klaidą.",
+ "translate-js-history": "Vertimo istorija",
+ "translate-js-support": "Užduoti klausimą",
+ "translate-js-support-title": "Paprašyk pagalbos, jei nėra pakankamai informacijos, kad verstų šį pranešimą teisingai.",
+ "translate-js-support-unsaved-warning": "Jūs turite neišsaugotų pranešimų.",
+ "translate-gs-pos": "Praneš.",
+ "translate-gs-code": "Kodas",
+ "translate-gs-continent": "Turinys",
+ "translate-gs-speakers": "Garsiakalbiai",
+ "translate-gs-score": "Rezultatas",
+ "translate-gs-multiple": "Kelios",
+ "translate-gs-count": "Skaičiuoti",
+ "translate-gs-total": "Iš viso",
+ "translate-gs-avgscore": "Vidurkis",
+ "translate-documentation-language": "Pranešimo dokumentacija",
+ "translate-searchprofile": "Vertimai",
+ "translate-searchprofile-tooltip": "Ieškoti iš visų vertimų",
+ "translate-search-languagefilter": "Perkošti pagal kalbą:",
+ "translate-search-nofilter": "Nėra filtravimo",
+ "translate-messagereview-submit": "Žymė peržiūrėta",
+ "translate-messagereview-progress": "Žymėjama kaip peržiūrėta...",
+ "translate-messagereview-failure": "Žymėjimas kaip peržiūrėta nepavyko: $1",
+ "translate-messagereview-done": "Apžvelgta",
+ "translate-messagereview-reviews": "Peržiūrėjo {{PLURAL:$1|vienas naudotojas|$1 naudotojai|$1 naudotojų}}",
+ "translate-messagereview-reviewswithyou": "Peržiūrėjo(-ote) {{PLURAL:$1|jūs|$1 vartotojai įskaitant jūs}}",
+ "api-error-invalidrevision": "Vertimas nerastas",
+ "api-error-unknownmessage": "Pranešimas nerastas",
+ "api-error-fuzzymessage": "Vertimas yra pažymėta kaip apytikslė",
+ "api-error-owntranslation": "Jūs negalite savo vertimus pažymėti kaip apžvelgtą.",
+ "translate-messagereview-no-own": "Jūs negalite savo vertimus pažymėti kaip apžvelgtą.",
+ "translate-messagereview-doit": "Pažymėkite šį vertimą kaip apžvelgtą.",
+ "log-name-translationreview": "Vertimo peržiūrėjimo žurnalas",
+ "group-translate-sandboxed": "Nepatvirtinti vertėjai",
+ "group-translate-sandboxed-member": "{{GENDER:$1|nepatvirtintas vertėjas}}",
+ "right-translate-sandboxmanage": "Valdyti smėlio dėžės naudotojus",
+ "action-translate-sandboxmanage": "valdyti smėlio dėžės naudotojus",
+ "right-translate-sandboxaction": "Vykdyti veiksmus gerbiamus smėlio dėžės vartotojams",
+ "action-translate-sandboxaction": "vykdyti veiksmus gerbiamus smėlio dėžės vartotojams",
+ "translate-workflow-state-": "(nenustatyta)",
+ "translate-workflowstatus": "Būsena: $1",
+ "translate-workflow-set-do": "Nustatyti",
+ "translate-workflow-set-doing": "Nustatoma...",
+ "translate-workflow-set-done": "Nustatyti!",
+ "translate-stats-workflow": "Būsena",
+ "translate-dynagroup-recent-label": "Nauji vertimai",
+ "translate-dynagroup-additions-label": "Naujausi papildymai",
+ "translate-dynagroup-last": "Paskutinį kartą pakeitė {{GENDER:$1|$1}}",
+ "translate-dynagroup-lastc": "Paskutinį kartą pakeitė {{GENDER:$1|$1}} ($2)",
+ "translate-gethelp": "Pagalba",
+ "translate-msggroupselector-projects": "Pranešimo grupė",
+ "translate-msggroupselector-search-placeholder": "Ieškoti grupes",
+ "translate-msggroupselector-search-all": "Visi",
+ "translate-msggroupselector-search-recent": "Neseni",
+ "tux-languageselector": "Išversti į",
+ "tux-tab-all": "Visi",
+ "tux-tab-untranslated": "Neišversti",
+ "tux-tab-outdated": "Pasenę",
+ "tux-tab-translated": "Išversti",
+ "tux-tab-unproofread": "Neapžvelgti",
+ "tux-edit": "Redaguoti",
+ "tux-status-optional": "Neprivaloma",
+ "tux-status-fuzzy": "Pasenę",
+ "tux-status-proofread": "Apžvelgta",
+ "tux-status-translated": "Išversta",
+ "tux-status-saving": "Išsaugoma....",
+ "tux-status-unsaved": "Neišsaugota",
+ "tux-editor-placeholder": "Jūsų vertimas",
+ "tux-editor-paste-original-button-label": "Įklijuoti kodo tekstą",
+ "tux-editor-discard-changes-button-label": "Atsisakyti pakeitimų",
+ "tux-editor-save-button-label": "Išsaugoti vertimą",
+ "tux-editor-skip-button-label": "Pereiti prie kito",
+ "tux-editor-cancel-button-label": "Atšaukti",
+ "tux-editor-confirm-button-label": "Patvirtinti vertimą",
+ "tux-editor-edit-desc": "Redaguoti dokumentaciją",
+ "tux-editor-add-desc": "Pridėti dokumentaciją",
+ "tux-editor-suggestions-title": "Pasiūlymai",
+ "tux-editor-in-other-languages": "Kitomis kalbomis",
+ "tux-editor-need-more-help": "Reikia daugiau pagalbos?",
+ "tux-editor-ask-help": "Prašykite daugiau informacijos",
+ "tux-editor-tm-match": "$1% atitinka",
+ "tux-warnings-more": "{{PLURAL:$1|$1 daugiau}}",
+ "tux-warnings-hide": "slėpti",
+ "tux-editor-save-failed": "Vertimo išsaugojimas nepavyko: $1",
+ "tux-editor-message-desc-more": "Rodyti daugiau",
+ "tux-editor-message-desc-less": "Rodyti mažiau",
+ "tux-editor-clear-translated": "Slėpti išverstus",
+ "tux-editor-proofreading-mode": "Apžvalga",
+ "tux-editor-translate-mode": "Sąrašas",
+ "tux-editor-proofreading-hide-own-translations": "Slėpti savo vertimus",
+ "tux-editor-proofreading-show-own-translations": "Rodyti savo vertimus",
+ "tux-proofread-action-tooltip": "Pažymėti kaip apžvelgta",
+ "tux-proofread-edit-label": "Redaguoti",
+ "tux-editor-page-mode": "Puslapis",
+ "tux-editor-outdated-warning": "Šį vertimą gali tekti atnaujinti.",
+ "tux-editor-outdated-warning-diff-link": "Rodyti skirtumus",
+ "tux-editor-doc-editor-placeholder": "Pranešimo dokumentacija",
+ "tux-editor-doc-editor-save": "Išsaugoti dokumentaciją",
+ "tux-editor-doc-editor-cancel": "Atšaukti",
+ "tux-messagetable-loading-messages": "Įkraunami {{PLURAL:$1|pranešimas|pranešimai}}...",
+ "tux-message-filter-placeholder": "Filtrų sąrašas",
+ "tux-message-filter-advanced-button": "Išplėstinė paieška",
+ "tux-message-filter-optional-messages-label": "Pasirenkami pranešimai",
+ "tux-proofread-translated-by-self": "Išvertėte jūs",
+ "tux-empty-list-all": "Ši pranešimo grupė yra tuščia",
+ "tux-empty-list-translated": "Nėra išverstų pranešimų",
+ "tux-empty-list-translated-guide": "Jūs galite padėti versti",
+ "tux-empty-list-translated-action": "Išversti",
+ "tux-empty-no-messages-to-display": "Nėra ko pranešimų rodyti.",
+ "tux-empty-show-optional-messages": "Rodyti pasirinktinius pranešimus",
+ "tux-empty-no-outdated-messages": "Nėra pasenusių pranešimų",
+ "tux-empty-nothing-to-proofread": "Nėra, ko apžvelgti.",
+ "tux-empty-you-can-help-providing": "Jūs galite padėti teikdamas naujus vertimus",
+ "tux-empty-nothing-new-to-proofread": "Nieko naujo apžvelgti",
+ "tux-empty-you-can-review-already-proofread": "Jūs galite peržiūrėti jau peržiūrimus kitus vertimus.",
+ "tux-empty-list-other": "Nėra, ko versti.",
+ "tux-empty-list-other-guide": "Galite peržiūrėti esamus vertimus",
+ "tux-empty-list-other-action": "Apžvelgti vertimus",
+ "tux-empty-list-other-link": "Rodyti visus pranešimus",
+ "tux-editor-close-tooltip": "Uždaryti",
+ "tux-editor-expand-tooltip": "Išplėsti",
+ "tux-editor-collapse-tooltip": "Suskleisti",
+ "tux-editor-message-tools-history": "Istorija",
+ "tux-editor-message-tools-translations": "Visi vertimai",
+ "tux-editor-loading": "Įkraunama...",
+ "translate-statsbar-tooltip": "$1% išversti, $2% apžvelgti",
+ "translate-statsbar-tooltip-with-fuzzy": "$1% išversti, $2% apžvelgti, $3% pasenę"
+}
diff --git a/MLEB/Translate/i18n/core/ltg.json b/MLEB/Translate/i18n/core/ltg.json
new file mode 100644
index 00000000..ac0069c8
--- /dev/null
+++ b/MLEB/Translate/i18n/core/ltg.json
@@ -0,0 +1,33 @@
+{
+ "@metadata": {
+ "authors": [
+ "Dark Eagle"
+ ]
+ },
+ "translate": "Puorviersšona",
+ "translate-page-group": "Grupa",
+ "translate-page-language": "Volūda",
+ "translate-page-limit": "Aprūbežuojums",
+ "translate-submit": "Paruodeit",
+ "translate-page-navigation-legend": "Navigaceja",
+ "translate-next": "Cyta puslopa",
+ "translate-page-description-legend": "Informaceja ap grupu",
+ "translate-page-edit": "pataiseit",
+ "translate-ext-url": "<hr />Teiklavīta: $1",
+ "translate-edit-title": "Pataiseit \"$1\"",
+ "translate-magic-submit": "Paruodeit",
+ "translate-magic-cm-save": "Izglobuot",
+ "translate-stats-users": "Puorvārsuoji",
+ "translate-statsf-scale-months": "Mieneši",
+ "translate-statsf-scale-weeks": "Nedeļis",
+ "translate-statsf-scale-days": "Dīnys",
+ "translate-statsf-scale-hours": "Stuņdis",
+ "translate-translations-fieldset-title": "Viestejums",
+ "translate-translations-project": "Projekts:",
+ "translate-translations-history-short": "v",
+ "languagestats": "Volūdys statistika",
+ "translate-language": "Volūda",
+ "supportedlanguages-translators": "{{PLURAL:$2|Puorvārsuojs|Puorvārsuoji}}: $1",
+ "translate-save": "Izglobuot ($1)",
+ "translate-gs-continent": "Koņtinents"
+}
diff --git a/MLEB/Translate/i18n/core/lus.json b/MLEB/Translate/i18n/core/lus.json
new file mode 100644
index 00000000..a2b6d455
--- /dev/null
+++ b/MLEB/Translate/i18n/core/lus.json
@@ -0,0 +1,223 @@
+{
+ "@metadata": {
+ "authors": [
+ "RMizo"
+ ]
+ },
+ "translate": "Lehlinna",
+ "translate-desc": "MediaWiki leh a bâk lehlinna [[Special:Translate|Phek vohbik]]",
+ "translate-taskui-view": "Thuthawn awm zawng zawng",
+ "translate-taskui-untranslated": "Thuthawn lehlin loh zawng",
+ "translate-taskui-optional": "Thuthawn duh-thlan zawng",
+ "translate-taskui-acceptqueue": "Ka pawm theih thuthawnho zawng",
+ "translate-taskui-reviewall": "Lehlin zawng zawng ennawn vek rawh",
+ "translate-taskui-export-to-file": "Pianken ruangama thawnchhuahna",
+ "translate-taskui-export-as-po": "Rinpawna lehlin nan thawnchhuak rawh",
+ "translate-taction-translate": "Lehlinna",
+ "translate-taction-proofread": "Endikna",
+ "translate-taction-lstats": "Ţawng lepsena",
+ "translate-taction-mstats": "Thuthawn hläwm lepsena",
+ "translate-taction-export": "Thawnchhuahna",
+ "translate-page-disabled": "He hläwm hi hemi ţawnga lehlin khap a ni tawh.\nA chhan:\n<em>$1</em>",
+ "translate-page-settings-legend": "Inremdàn",
+ "translate-page-group": "Pawl",
+ "translate-page-language": "Ţawng",
+ "translate-page-limit": "Tiamchin",
+ "translate-page-limit-option": "phêk khatah thuthawn $1 {{PLURAL:$1||}} zël",
+ "translate-submit": "Pholang rawh le",
+ "translate-page-navigation-legend": "Fanzauna",
+ "translate-page-showing": "A vai $3 zinga thuthawn $1 aţanga $2 thleng pholan a ni e.",
+ "translate-page-showing-all": "Thuthawn $1 {{PLURAL:$1||}} pholan a ni.",
+ "translate-page-showing-none": "Thuthawn pholan tùr a awm tawh lo.",
+ "translate-next": "Phêk dawt",
+ "translate-prev": "Phêk hmasa",
+ "translate-page-description-legend": "Hemi pawl chungchang",
+ "translate-page-description-hasoptional": "He pawl hian thuthawn duh-thlan (lehlin kher ngai lo) a nei a.\nHeng thuthawn duh-thlante hi i ţawngin mamawh bîk, entirnan hming roman hawrawpa dah, karawl hman thiang lo, tih angte a neih chauhvin lehlin tùr a ni ang. $1",
+ "translate-page-description-hasoptional-open": "Thuthawn duh-thlan pholanna.",
+ "translate-page-edit": "siamṭhatna",
+ "translate-ext-url": "<hr />Hmunpui: $1",
+ "translate-optional": "(duh-thlan)",
+ "translate-ignored": "(ngaihthah)",
+ "translate-edit-title": "$1 siamţha rawh",
+ "translate-edit-definition": "Thuthawn hrilhfiahna",
+ "translate-edit-translation": "Lehlinna",
+ "translate-edit-contribute": "kutthawhna",
+ "translate-edit-no-information": "''He thuthawn hian sawifiahna mumal a la nei lo.''\n''He thuthawn hmanna hmun leh hmanphung hi i hriat chuan sawifiah la, letlingtute nasa takin i pui ang.''",
+ "translate-edit-information": "Thuthawn chungchang ($1)",
+ "translate-edit-in-other-languages": "Thuthawn ţawng dangin",
+ "translate-edit-committed": "Khawlthluaka lehlin mék",
+ "translate-edit-warnings": "Lehlin famkim lo vaukhanna",
+ "translate-edit-tmsugs": "Leh tawh aţanga rawtna",
+ "translate-edit-tmmatch-source": "Lehlinna thu hnar: $1",
+ "translate-edit-tmmatch": "$1% inmil",
+ "translate-use-suggestion": "Tuna lehlinna awm hi he rawtna hian thlâk rawh",
+ "translate-edit-nopermission": "Thuthawn letling tùrin phalna i neih a ngai.",
+ "translate-edit-askpermission": "Phalna dilna",
+ "translate-magic-pagename": "MediaWiki lehlinna zauh",
+ "translate-magic-submit": "Pholang rawh le",
+ "translate-magic-cm-export": "Thawnchhuahna",
+ "translate-magic-nothing-to-export": "Thawnchhuah tùr a awm lo.",
+ "translate-magic-cm-to-be": "Nih-tùr",
+ "translate-magic-cm-current": "Nih-mék",
+ "translate-magic-cm-original": "A thu hnar",
+ "translate-magic-cm-comment": "Tuihnihna:",
+ "translate-magic-cm-save": "Tlangzarhna",
+ "translate-magic-cm-updatedusing": "[[Special:AdvancedTranslate|{{int:Translate-magic-pagename}}]] hmangin bithuam a ni ta",
+ "translate-magic-cm-savefailed": "Tlangzarh a tlawlh",
+ "translate-magic-special": "Phek vohbik ze-dang",
+ "translate-magic-words": "Dawi-chhamphual",
+ "translate-magic-namespace": "Hminghmun hmingte",
+ "translate-magic-notsaved": "I thuziak dahţhat a ni lo a nia!",
+ "translate-magic-errors": "{{PLURAL:$1|Hë|Hêng}} lehlinna dikhlel{{PLURAL:$1||te}} hi khawngaihin tidik rawh le.",
+ "translate-magic-saved": "I tihdanglamna hlawtling taka dahţhat a ni.",
+ "translate-checks-parameters": "{{PLURAL:$2|He thil hman ngei ngei ngai|Heng thil hman ngei ngei ngaite}} hi hman a la ni lo:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-parameters-unknown": "{{PLURAL:$2|He i thil ziak|Heng i thil ziakte}} hi hriat a ni lo (a dikhlel tihna):\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-balance": "Kualkhungna hman khingbai nei lo a la awm{{PLURAL:$2||}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links": "A hnuaia zawmna{{PLURAL:$2||te}} khu a dikhlel:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links-missing": "A hnuaia zawmna{{PLURAL:$2||te}} khu i la hmaih:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-xhtml": "A hnuaia hmingrelh{{PLURAL:$2||te}} khu a dikin thlâk rawh:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-plural": "A thu hnarin <nowiki>{{PLURAL:}}</nowiki> a hmang a, lehlinnain a hmang lo.",
+ "translate-checks-plural-forms": "<nowiki>{{PLURAL:}}</nowiki> kha lehkha {{PLURAL:$1|pakhat|$1}} pêk a ni a, mahsé lehkha {{PLURAL:$2|pakhat|$2}} chauh tih theih a ni (0= leh 1= lehkhate tiam lohvin).",
+ "translate-checks-pagename": "Hrilhfiahna aţang hminghmun thlâk a ni",
+ "translate-checks-format": "He lehlinna hian a thu-hnar a zui lo emaw a thu-chheh a dik lo emaw a nih hmel: $1",
+ "translate-checks-escape": "A hnuaia tlanchhiatna khu tih palh a nih hmel: <strong>$1</strong>",
+ "translate-checks-parametersnotequal": "Hmanraw zât {{PLURAL:$1|$1}}; {{PLURAL:$2|$2}} tùr.",
+ "translate-checks-malformed": "<nowiki>$1</nowiki> hi a dik lo.",
+ "translate-checks-fudforum-syntax": "He hna-hmachhawpah hian <nowiki>$2</nowki> aiah <nowiki>$1</nowiki> hmang zawk rawh",
+ "translate-pref-nonewsletter": "E-chanchinbu min thawn suh",
+ "translate-pref-editassistlang": "Puitu ţawngte:",
+ "prefs-translate": "Lehlin duhdàn",
+ "translate-pref-editassistlang-bad": "Tlar zingah ţawng thurûk dik lo a awm:\n<nowiki>$1</nowiki>.",
+ "right-translate": "Lehlinna hmelhmang hmangin siamţha rawh",
+ "right-translate-import": "Rinpawna lehlin châwkluhna",
+ "translate-rc-translation-filter-no": "Engmah ti suh",
+ "translate-rc-translation-filter-only": "Lehlinna chauh pholanna",
+ "translate-rc-translation-filter-filter": "Lehlin thlitfimna",
+ "translate-stats-edits": "Siamṭhat",
+ "translate-stats-users": "Letlingtute",
+ "translate-stats-registrations": "Inziahluh",
+ "translate-stats-reviews": "Ennawnna",
+ "translate-stats-reviewers": "Ennawntute",
+ "translate-statsf-scale-months": "Thla",
+ "translate-statsf-scale-weeks": "Chawlhkar",
+ "translate-statsf-scale-days": "Ni",
+ "translate-statsf-scale-hours": "Darkar",
+ "translate-statsf-count": "Tehna:",
+ "translate-statsf-count-edits": "Siamţhat zât",
+ "translate-statsf-count-users": "Letlingtu thawkrim",
+ "translate-statsf-count-registrations": "Hmangtu thar",
+ "translate-statsf-count-reviews": "Lehlin ennawnna",
+ "translate-statsf-count-reviewers": "Ennawntute",
+ "translate-statsf-submit": "Enchhinna",
+ "translate-tag-category": "Phêk lehlin theih",
+ "translate-tag-page-desc": "Wiki phêk [[$2|$1]] lehlinna.",
+ "translate-sidebar-alltrans": "Ţawng dangin",
+ "translations": "Lehlin zawng zawng",
+ "translations-summary": "Lehlinna awm zawng zawng tihlan nan a hnuaiah khuan thuthawn hming ziaklût rawh.",
+ "translate-translations-no-message": "\"$1\" hi thuthawn lehlin theih a ni lo",
+ "translate-translations-none": "\"$1\" lehlinna a la awm lo",
+ "translate-translations-count": "Lehlinna {{PLURAL:$1|1|$1}} hmuh a ni.",
+ "translate-translations-fieldset-title": "Thuthawn",
+ "translate-translations-messagename": "Hming:",
+ "translate-translations-project": "Hna-hmachhawp:",
+ "translate-translations-history-short": "ch",
+ "languagestats": "Ţawng lepsena",
+ "languagestats-stats-for": "$1 ţawnga lehlin lepsena ($2)",
+ "languagestats-recenttranslations": "lehlin tharte",
+ "translate-langstats-incomplete": "Lepsena ţhenkhat hi a kim lo. A dang dawn belh nan a phêk lâwt ţha rawh.",
+ "translate-langstats-expand": "pharhna",
+ "translate-langstats-collapse": "thlehna",
+ "translate-langstats-expandall": "pharh vek rawh",
+ "translate-langstats-collapseall": "thlep vek rawh",
+ "translate-language-code": "Ţawng thurûk",
+ "translate-language-code-field-name": "Ţawng thurûk:",
+ "translate-suppress-complete": "Thuthawn hläwm lehlin zawh tawh nuaibo vek rawh",
+ "translate-ls-noempty": "Thuthawn hläwm lehlin loh nuaibo vek rawh",
+ "translate-language": "Ṭawng",
+ "translate-total": "Thuthawn",
+ "translate-untranslated": "Lehlin loh",
+ "translate-percentage-complete": "Zawh chin",
+ "translate-percentage-fuzzy": "Ţhing",
+ "translate-languagestats-overall": "Thuthawn pawl zawng zawng a huhova lâkin",
+ "translate-ls-submit": "Lepsena tihlanna",
+ "translate-ls-column-group": "Thuthawn hläwm",
+ "translate-mgs-pagename": "Thuthawn hläwm lepsena",
+ "translate-mgs-fieldset": "Intàrphung duhthlanna",
+ "translate-mgs-group": "Thuthawn hläwm:",
+ "translate-mgs-nocomplete": "Lehlin kim tawhna ţawng tilang suh",
+ "translate-mgs-noempty": "Lehlin la nei lo ţawng tilang suh",
+ "translate-mgs-submit": "Lepsena tihlanna",
+ "translate-mgs-column-language": "Ṭawng",
+ "translate-mgs-totals": "Ţawng zawng zawng lâkkhâwmin",
+ "translate-mgs-invalid-group": "I hläwm sawi $1 hi a awm lo.",
+ "translate-mgs-nothing": "Lepsena pholan tùr a awm lo.",
+ "supportedlanguages": "Ţawng hman theihte",
+ "supportedlanguages-colorlegend": "Rawng chhinchhiahna: Lehlinna hnuhnung ber ni $1 kal taah",
+ "supportedlanguages-translators": "{{PLURAL:$2|Letlingtu|Letlingtute}}: $1",
+ "supportedlanguages-recenttranslations": "lehlin thar",
+ "supportedlanguages-count": "A vaiin {{PLURAL:$1|ţawng|ţawng}} $1.",
+ "supportedlanguages-activity": "$1: {{PLURAL:$2|siamţhatna|siamţhatna}} $2 - siamţhat hnuhnung ber ni $3{{PLURAL:$3||}} kal tâah",
+ "translate-save": "Tlangzarhna ($1)",
+ "translate-jssti-add": "Tlara telhna",
+ "managemessagegroups": "Thuthawn pawl enkawlna",
+ "translate-manage-import-diff": "Thuthawn $1 | Thiltih: $2",
+ "translate-manage-import-new": "Thuthawn thar $1",
+ "translate-manage-import-deleted": "Thuthawn nuaibo $1",
+ "translate-manage-action-import": "Châwkluhna",
+ "translate-manage-action-conflict": "Châwkluhna leh phé anga chhinchhiahna",
+ "translate-manage-action-ignore": "Ngaihthahna",
+ "translate-manage-action-fuzzy": "Châwkluh leh lehlin chiang lo (phé)",
+ "translate-manage-nochanges-other": "He ţawnga tihdanglam thar a awm lo.\nHläwm chanchin inziahna phêka lêt tùrin a hnuaia zawmnaah khuan kal rawh.",
+ "translate-manage-fuzzy-summary": "A hrilhfiahna thlâk a ni tawh",
+ "translate-manage-submit": "Déng raw pip!",
+ "translate-manage-import-done": "A zo ta vek mai!",
+ "translate-import-err-warnings": "Taksa dik lo.\nI khawih danglamin ththn ziahna i nuaibo lo tih tichiang ang che.\nChanchim kim: $1",
+ "translate-js-summary": "Laktawi:",
+ "translate-js-save": "Dahţhatna",
+ "translate-js-next": "Dahţha la a dawt hawng nghâl rawh",
+ "translate-js-nonext": "Hei hi hemi phêka thuthawn hnuhnüng ber a ni.",
+ "translate-js-skip": "Kalkân rawh",
+ "translate-js-save-failed": "Dahţhat a hlawhchham. Khawngaihin hei hi hriattir rawh.",
+ "translate-js-history": "Lehlinna chanchin",
+ "translate-js-support": "Zawhna zawhna",
+ "translate-js-support-title": "Thuthawn lehlin dik a harsat chuan zawhna zawh hreh loh tùr.",
+ "translate-js-support-unsaved-warning": "Lehlinna la dahṭhat loh i nei.",
+ "translate-gs-pos": "Dinhmn.",
+ "translate-gs-code": "Thurûk",
+ "translate-gs-continent": "Khawmualpui",
+ "translate-gs-speakers": "Hmangtu",
+ "translate-gs-score": "Bùk",
+ "translate-gs-multiple": "1 aia tam",
+ "translate-gs-count": "Zât",
+ "translate-gs-total": "A vaiin",
+ "translate-gs-avgscore": "Bùk chawhrual",
+ "translate-documentation-language": "Thuthawn chhinchhiahna",
+ "translate-searchprofile": "Lehlinna",
+ "translate-searchprofile-tooltip": "Lehlinna zawng zawnga zawnna",
+ "translate-search-languagefilter": "Ţawng azira thlitfimna:",
+ "translate-search-nofilter": "Thlitfimna awm lo",
+ "translate-messagereview-submit": "Pawmna",
+ "translate-messagereview-progress": "Pawm mék...",
+ "translate-messagereview-failure": "Pawm... hlawhchham: $1",
+ "translate-messagereview-done": "Pawm a ni ta",
+ "translate-messagereview-reviews": "Hmangtu {{PLURAL:$1|1|$1}} pawm",
+ "translate-messagereview-reviewswithyou": "{{PLURAL:$1|Nangma pawm|Nangmah tiamin hmangtu $1-in an pawm }}",
+ "api-error-invalidrevision": "Lehlin hmuh a ni lo",
+ "api-error-unknownmessage": "Thuthawn hmuh a ni lo",
+ "api-error-fuzzymessage": "Lehlin chiang lova ngaih a ni",
+ "api-error-owntranslation": "Nangma lehlin nangmahin i pawm thei",
+ "translate-messagereview-no-fuzzy": "Lehlin chiang lo (fuzzy) pawm theih loh.",
+ "translate-messagereview-no-own": "Nangma lehlin i pawm thiang lo.",
+ "translate-messagereview-doit": "He lehlin hi a dikah pawm rawh.",
+ "log-name-translationreview": "Lehlin ennawn chhinchhiahna",
+ "translate-workflowstatus": "Dinhmun: $1",
+ "translate-workflow-set-do": "Nung",
+ "translate-workflow-set-doing": "Tinung mék...",
+ "translate-workflow-set-done": "Nung ta!",
+ "translate-dynagroup-recent-label": "Lehlin tharte",
+ "translate-dynagroup-by": "{{GENDER:$1|$1}} lehlin",
+ "translate-dynagroup-byc": "{{GENDER:$1|$1}} lehlin ($2)",
+ "translate-dynagroup-last": "{{GENDER:$1|$1}} lehlin hnuhnùn ber",
+ "translate-dynagroup-lastc": "{{GENDER:$1|$1}} tihdanglam thar ($2)",
+ "translate-gethelp": "Ţanpuina"
+}
diff --git a/MLEB/Translate/i18n/core/lv.json b/MLEB/Translate/i18n/core/lv.json
new file mode 100644
index 00000000..f2c3f3c7
--- /dev/null
+++ b/MLEB/Translate/i18n/core/lv.json
@@ -0,0 +1,196 @@
+{
+ "@metadata": {
+ "authors": [
+ "GreenZeb",
+ "Marozols",
+ "Papuass",
+ "Yyy"
+ ]
+ },
+ "translate": "Tulkošana",
+ "translate-desc": "[[Special:Translate|Īpašā lapa]] MediaWiki un citu projektu tulkošanai",
+ "translate-taskui-view": "Rādīt visus ziņojumus",
+ "translate-taskui-untranslated": "Rādīt neiztulkotos ziņojumus",
+ "translate-taskui-optional": "Rādīt papildu ziņojumus",
+ "translate-taskui-reviewall": "Pārskatīt visus tulkojumus",
+ "translate-taction-translate": "Tulkot",
+ "translate-taction-lstats": "Valodas statistika",
+ "translate-taction-mstats": "Ziņojumu grupas statistika",
+ "translate-taction-export": "Eksportēt",
+ "translate-taction-disabled": "Šī darbība ir atspējota šajā wiki.",
+ "translate-page-no-such-language": "Norādītā valoda bija nederīga.",
+ "translate-page-no-such-group": "Norādītā grupa bija nederīga.",
+ "translate-page-settings-legend": "Uzstādījumi",
+ "translate-page-group": "Grupa",
+ "translate-page-language": "Valoda",
+ "translate-page-limit": "Ierobežojums",
+ "translate-page-limit-option": "$1 {{PLURAL:$1|ziņojums|ziņojumi}} lapā",
+ "translate-submit": "Atlasīt",
+ "translate-page-navigation-legend": "Navigācija",
+ "translate-page-showing": "Rāda ziņojumus no $1 līdz $2 no $3.",
+ "translate-next": "Nākamā lapa",
+ "translate-prev": "Iepriekšējā lapa",
+ "translate-page-description-legend": "Informācija par grupu",
+ "translate-page-edit": "labot",
+ "translate-edit-title": "Labot \"$1\"",
+ "translate-edit-translation": "Tulkojums",
+ "translate-edit-information": "Informācija par ziņojumu ($1)",
+ "translate-edit-in-other-languages": "Ziņojums citās valodās",
+ "translate-edit-warnings": "Brīdinājumi par nepilnīgiem tulkojumiem",
+ "translate-edit-tmmatch-source": "Tulkojuma izejas teksts: $1",
+ "translate-edit-tmmatch": "$1% atbilstība",
+ "translate-edit-nopermission": "Jums ir nepieciešama atļauja, lai tulkotu ziņojumus.",
+ "translate-edit-askpermission": "Saņemt atļauju",
+ "translate-magic-pagename": "Paplašinātā MediaWiki tulkošana",
+ "translate-magic-module": "Modulis:",
+ "translate-magic-submit": "Atlasīt",
+ "translate-magic-cm-export": "Eksportēt",
+ "translate-magic-nothing-to-export": "Nav nekā, ko eksportēt.",
+ "translate-magic-cm-comment": "Komentārs:",
+ "translate-magic-cm-save": "Saglabāt",
+ "translate-magic-cm-savefailed": "Neizdevās saglabāt",
+ "translate-magic-words": "Burvju vārdi",
+ "translate-magic-notsaved": "Jūsu labojums netika saglabāts!",
+ "translate-pref-nonewsletter": "Nevēlos pa e-pastu saņemt lapas jaunumus",
+ "translate-pref-editassistlang": "Palīgvalodas:",
+ "prefs-translate": "Tulkošanas uzstādījumi",
+ "translate-pref-editassistlang-help": "Saraksts ar valodu kodiem, kas atdalīti ar komatiem.\nNorādītajās valodās pieejamie tulkojumi būs redzami tulkošanas lapā.\nNoklusētā saraksta vērtība ir atkarīga no tavas valodas.",
+ "right-translate-manage": "Ziņojumu grupu pārvaldība",
+ "action-translate-manage": "ziņojumu grupu pārvaldība",
+ "right-translate-messagereview": "Pārskatīt tulkojumus",
+ "translate-rc-translation-filter": "Filtrēt tulkojumus:",
+ "translate-rc-translation-filter-no": "Nedarīt neko",
+ "translate-rc-translation-filter-only": "Rādīt tikai tulkojumus",
+ "translate-rc-translation-filter-filter": "Atfiltrēt tulkojumus",
+ "translationstats": "Tulkošanas statistika",
+ "translate-stats-edits": "Labojumi",
+ "translate-stats-users": "Tulkotāji",
+ "translate-stats-registrations": "Reģistrācijas",
+ "translate-statsf-width": "Platums pikseļos:",
+ "translate-statsf-height": "Augstums pikseļos:",
+ "translate-statsf-days": "Laika periods dienās:",
+ "translate-statsf-start": "Sākuma datums:",
+ "translate-statsf-scale": "Granularitāte:",
+ "translate-statsf-scale-months": "Mēneši",
+ "translate-statsf-scale-weeks": "Nedēļas",
+ "translate-statsf-scale-days": "Dienas",
+ "translate-statsf-scale-hours": "Stundas",
+ "translate-statsf-count-edits": "Izmaiņu skaits",
+ "translate-statsf-count-users": "Aktīvie tulkotāji",
+ "translate-statsf-count-registrations": "Jauni lietotāji",
+ "translate-tag-category": "Tulkojamās lapas",
+ "translate-sidebar-alltrans": "Citās valodās",
+ "translations": "Visi tulkojumi",
+ "translate-translations-fieldset-title": "Ziņojums",
+ "translate-translations-project": "Projekts:",
+ "languagestats": "Valodas statistika",
+ "languagestats-summary": "Šī lapa parāda tulkojumu statistiku visām ziņojumu grupām konkrētai valodai.",
+ "languagestats-stats-for": "Tulkojuma statistika $1 ($2).",
+ "languagestats-recenttranslations": "pēdējie tulkojumi",
+ "translate-langstats-expand": "izvērst",
+ "translate-langstats-collapse": "sakļaut",
+ "translate-langstats-expandall": "izvērst visus",
+ "translate-langstats-collapseall": "sakļaut visus",
+ "translate-language-code": "Valodas kods",
+ "translate-language-code-field-name": "Valodas kods:",
+ "translate-suppress-complete": "Nerādīt pilnībā iztulkotās ierakstu grupas",
+ "translate-ls-noempty": "Nerādīt vispār netulkotās ierakstu grupas",
+ "translate-language": "Valoda",
+ "translate-total": "Ieraksti",
+ "translate-untranslated": "Neiztulkoti",
+ "translate-percentage-complete": "Pabeigtība",
+ "translate-percentage-fuzzy": "Novecojis",
+ "translate-languagestats-overall": "Visas ziņojumu grupas kopā",
+ "translate-ls-submit": "Rādīt statistiku",
+ "translate-ls-column-group": "Ziņojumu grupa",
+ "translate-mgs-pagename": "Ziņojumu grupas statistika",
+ "translate-mgs-group": "Ziņojumu grupa:",
+ "translate-mgs-submit": "Rādīt statistiku",
+ "translate-mgs-column-language": "Valoda",
+ "translate-mgs-totals": "Visas valodas kopā",
+ "supportedlanguages": "Atbalstītās valodas",
+ "supportedlanguages-translators": "{{PLURAL:$2|Tulkotājs|Tulkotāji}}: $1",
+ "supportedlanguages-recenttranslations": "pēdējie tulkojumi",
+ "translate-save": "Saglabāt ($1)",
+ "translate-jssti-add": "Pievienot sarakstam",
+ "translate-manage-action-import": "Importēt",
+ "translate-manage-action-ignore": "Ignorēt",
+ "translate-manage-submit": "Izpildīt",
+ "translate-js-summary": "Kopsavilkums:",
+ "translate-js-save": "Saglabāt",
+ "translate-js-next": "Saglabāt un atvērt nākamo",
+ "translate-js-nonext": "Šī bija pēdējā ziņa šajā lapā.",
+ "translate-js-skip": "Pāriet uz nākamo",
+ "translate-js-history": "Tulkošanas vēsture",
+ "translate-js-support": "Uzdot jautājumu",
+ "translate-gs-pos": "Vieta",
+ "translate-gs-code": "Kods",
+ "translate-gs-continent": "Kontinents",
+ "translate-gs-speakers": "Runātāji",
+ "translate-gs-count": "Skaits",
+ "translate-gs-total": "Kopā",
+ "translate-search-languagefilter": "Filtrēt pēc valodas:",
+ "translate-workflow-state-": "(nav uzstādīts)",
+ "translate-stats-workflow": "Statuss",
+ "translate-gethelp": "Palīdzība",
+ "translate-msggroupselector-projects": "Ziņojumu grupa",
+ "translate-msggroupselector-search-placeholder": "Meklēt grupas",
+ "translate-msggroupselector-search-all": "Visas",
+ "translate-msggroupselector-search-recent": "Nesenās",
+ "translate-msggroupselector-view-subprojects": "$1 {{PLURAL:$1|apakšgrupa|apakšgrupas}}",
+ "tux-languageselector": "Tulkot uz",
+ "tux-tab-all": "Visas",
+ "tux-tab-untranslated": "Neiztulkotās",
+ "tux-tab-outdated": "Novecojušās",
+ "tux-tab-translated": "Iztulkotās",
+ "tux-tab-unproofread": "Nepārlasītās",
+ "tux-edit": "Labot",
+ "tux-status-optional": "Papildu",
+ "tux-status-fuzzy": "Novecojušās",
+ "tux-status-proofread": "Pārlasītās",
+ "tux-status-translated": "Iztulkots",
+ "tux-status-saving": "Saglabā...",
+ "tux-status-unsaved": "Nesaglabāts",
+ "tux-editor-placeholder": "Jūsu tulkojums",
+ "tux-editor-paste-original-button-label": "Iekopēt izejas tekstu",
+ "tux-editor-discard-changes-button-label": "Atmest izmaiņas",
+ "tux-editor-save-button-label": "Saglabāt tulkojumu",
+ "tux-editor-skip-button-label": "Pāriet uz nākamo",
+ "tux-editor-cancel-button-label": "Atcelt",
+ "tux-editor-confirm-button-label": "Apstiprināt tulkojumu",
+ "tux-editor-edit-desc": "Labot dokumentāciju",
+ "tux-editor-add-desc": "Pievienot dokumentāciju",
+ "tux-editor-suggestions-title": "Ieteikumi",
+ "tux-editor-in-other-languages": "Citās valodās",
+ "tux-editor-need-more-help": "Nepieciešama papildu palīdzība?",
+ "tux-editor-ask-help": "Pieprasiet vairāk informācijas",
+ "tux-editor-tm-match": "$1% atbilstība",
+ "tux-warnings-more": "{{PLURAL:$1|vēl $1}}",
+ "tux-warnings-hide": "paslēpt",
+ "tux-editor-n-uses": "izmantots $1 {{PLURAL:$1|reizi|reizes}}",
+ "tux-editor-message-desc-more": "Skatīt vairāk",
+ "tux-editor-message-desc-less": "Skatīt mazāk",
+ "tux-editor-clear-translated": "Paslēpt iztulkoto",
+ "tux-editor-proofreading-mode": "Pārlasīt",
+ "tux-editor-translate-mode": "Saraksts",
+ "tux-proofread-edit-label": "Labot",
+ "tux-editor-page-mode": "Lapa",
+ "tux-editor-outdated-warning": "Šis tulkojums, iespējams, ir jāatjaunina.",
+ "tux-editor-outdated-warning-diff-link": "Parādīt atšķirības",
+ "tux-editor-doc-editor-save": "Saglabāt dokumentāciju",
+ "tux-editor-doc-editor-cancel": "Atcelt",
+ "tux-messagetable-loading-messages": "Ielādē {{PLURAL:$1|ziņojumu|ziņojumus}}...",
+ "tux-message-filter-placeholder": "Filtrēt sarakstu",
+ "tux-message-filter-advanced-button": "Izvērstā meklēšana",
+ "tux-message-filter-optional-messages-label": "Papildu ziņas",
+ "tux-empty-list-translated-action": "Tulkot",
+ "tux-empty-no-messages-to-display": "Nav ziņu, ko parādīt.",
+ "tux-empty-list-other-link": "Rādīt visus ziņojumus",
+ "tux-editor-close-tooltip": "Aizvērt",
+ "tux-editor-expand-tooltip": "Izvērst",
+ "tux-editor-collapse-tooltip": "Sakļaut",
+ "tux-editor-message-tools-history": "Vēsture",
+ "tux-editor-message-tools-translations": "Visi tulkojumi",
+ "tux-editor-loading": "Ielādē...",
+ "translate-ulsdep-title": "Konfigurācijas kļūda"
+}
diff --git a/MLEB/Translate/i18n/core/lzh.json b/MLEB/Translate/i18n/core/lzh.json
new file mode 100644
index 00000000..df270d2b
--- /dev/null
+++ b/MLEB/Translate/i18n/core/lzh.json
@@ -0,0 +1,178 @@
+{
+ "@metadata": {
+ "authors": [
+ "Yanteng3",
+ "Jason924tw"
+ ]
+ },
+ "translate": "譯",
+ "translate-desc": "譯MediaWiki訊之[[Special:Translate|特查]]",
+ "translate-taskui-view": "示全之訊",
+ "translate-taskui-untranslated": "示未譯之訊",
+ "translate-taskui-optional": "示選之訊",
+ "translate-taskui-acceptqueue": "示吾能檢校之訊",
+ "translate-taskui-reviewall": "檢校全之譯",
+ "translate-taskui-export-to-file": "出匯以原格式",
+ "translate-taskui-export-as-po": "出匯以離之譯",
+ "translate-taction-translate": "譯",
+ "translate-taction-proofread": "檢校",
+ "translate-taction-lstats": "語之彙統",
+ "translate-taction-mstats": "訊息組之彙統",
+ "translate-taction-export": "出匯",
+ "translate-page-disabled": "已禁本群組譯至該語。\n註:\n\n<em>$1</em>",
+ "translate-language-disabled": "禁譯至該語。",
+ "translate-page-settings-legend": "簿註",
+ "translate-page-group": "組",
+ "translate-page-language": "語",
+ "translate-submit": "擷取",
+ "translate-page-navigation-legend": "導",
+ "translate-page-showing-all": "示$1訊。",
+ "translate-page-showing-none": "無訊可示。",
+ "translate-next": "次頁",
+ "translate-prev": "前頁",
+ "translate-page-description-legend": "述本群組",
+ "translate-page-description-hasoptional-open": "示選之訊。",
+ "translate-page-edit": "纂",
+ "translate-optional": "(選)",
+ "translate-ignored": "(略)",
+ "translate-edit-title": "始譯「$1」",
+ "translate-edit-definition": "訊之原",
+ "translate-edit-translation": "譯",
+ "translate-edit-contribute": "功績",
+ "translate-edit-information": "述該訊息($1)",
+ "translate-edit-in-other-languages": "他語之訊",
+ "translate-edit-committed": "今譯",
+ "translate-edit-warnings": "未譯之警",
+ "translate-edit-tmmatch": "$1%符",
+ "translate-edit-nopermission": "汝須獲權方可譯訊。",
+ "translate-edit-askpermission": "獲權",
+ "translate-magic-submit": "擷取",
+ "translate-magic-cm-export": "出匯",
+ "translate-magic-nothing-to-export": "無出匯之內容。",
+ "translate-magic-cm-to-be": "譯",
+ "translate-magic-cm-current": "今",
+ "translate-magic-cm-original": "原訊息",
+ "translate-magic-cm-comment": "註:",
+ "translate-magic-cm-save": "儲",
+ "translate-magic-notsaved": "汝之纂未成!",
+ "translate-magic-saved": "汝之易已成!",
+ "right-translate-messagereview": "校譯",
+ "translate-rc-translation-filter": "濾清:",
+ "translate-rc-translation-filter-no": "無濾",
+ "translate-rc-translation-filter-only": "只示譯",
+ "translate-rc-translation-filter-filter": "無示譯",
+ "translate-rc-translation-filter-site": "只示訊",
+ "translationstats": "譯之彙統",
+ "translate-stats-edits": "纂",
+ "translate-stats-users": "譯者",
+ "translate-stats-reviews": "檢校",
+ "translate-statsf-scale-months": "月",
+ "translate-statsf-scale-weeks": "周",
+ "translate-statsf-scale-days": "日",
+ "translate-statsf-count-registrations": "新簿",
+ "translate-statsf-count-reviews": "校譯",
+ "translate-statsf-submit": "草覽",
+ "translate-sidebar-alltrans": "他語之譯",
+ "translations": "全譯",
+ "translate-translations-fieldset-title": "訊",
+ "translate-translations-messagename": "名:",
+ "languagestats": "語之彙統",
+ "languagestats-summary": "示該語全訊息組之成度。",
+ "languagestats-stats-for": "$1 ($2) 譯之彙統。",
+ "languagestats-recenttranslations": "近譯",
+ "translate-langstats-expand": "展",
+ "translate-langstats-collapse": "摺",
+ "translate-langstats-expandall": "展全",
+ "translate-langstats-collapseall": "摺全",
+ "translate-language-code": "語之碼",
+ "translate-language-code-field-name": "語之碼:",
+ "translate-suppress-complete": "藏已全譯之訊息組",
+ "translate-ls-noempty": "藏無譯之訊息組",
+ "translate-language": "語言",
+ "translate-total": "訊",
+ "translate-untranslated": "未譯",
+ "translate-percentage-complete": "成度",
+ "translate-percentage-fuzzy": "過時",
+ "translate-ls-submit": "示彙統",
+ "translate-ls-column-group": "訊息組",
+ "translate-mgs-group": "訊息組:",
+ "translate-mgs-submit": "示彙統",
+ "translate-mgs-column-language": "語言",
+ "translate-mgs-nothing": "無彙統以示",
+ "supportedlanguages-recenttranslations": "近譯",
+ "translate-save": "存 ($1)",
+ "translate-manage-import-deleted": "已刪訊 $1",
+ "translate-manage-action-import": "入匯",
+ "translate-manage-fuzzy-summary": "訊已易",
+ "translate-import-load": "載檔",
+ "translate-js-save": "存",
+ "translate-js-skip": "次譯",
+ "translate-js-support": "問",
+ "translate-documentation-language": "訊之檔",
+ "translate-searchprofile": "譯",
+ "translate-searchprofile-tooltip": "尋譯",
+ "translate-messagereview-submit": "記為已校",
+ "translate-messagereview-progress": "記為已校之……",
+ "translate-messagereview-done": "已校",
+ "api-error-unknownmessage": "訊無尋",
+ "api-error-owntranslation": "汝不可記己譯為已校",
+ "translate-messagereview-no-own": "汝不可記己之譯為已校",
+ "log-name-translationreview": "校譯之誌",
+ "translate-dynagroup-recent-label": "近譯",
+ "translate-msggroupselector-projects": "訊息組",
+ "translate-msggroupselector-search-all": "全",
+ "translate-msggroupselector-search-recent": "近",
+ "tux-languageselector": "譯至",
+ "tux-tab-all": "全",
+ "tux-tab-untranslated": "未譯",
+ "tux-tab-outdated": "過時",
+ "tux-tab-translated": "已譯",
+ "tux-edit": "纂",
+ "tux-status-optional": "選",
+ "tux-status-fuzzy": "過時",
+ "tux-status-proofread": "已校",
+ "tux-status-translated": "已譯",
+ "tux-status-saving": "存之...",
+ "tux-editor-placeholder": "子之譯",
+ "tux-editor-paste-original-button-label": "貼源文",
+ "tux-editor-save-button-label": "儲譯",
+ "tux-editor-skip-button-label": "次譯",
+ "tux-editor-shortcut-info": "押「$1」存,或押「$2」譯次訊",
+ "tux-editor-edit-desc": "檔纂",
+ "tux-editor-in-other-languages": "他語之譯",
+ "tux-editor-need-more-help": "需助乎?",
+ "tux-editor-ask-help": "問更多",
+ "tux-editor-clear-translated": "藏已譯",
+ "tux-editor-proofreading-mode": "檢校",
+ "tux-editor-translate-mode": "表",
+ "tux-editor-proofreading-hide-own-translations": "藏子之譯",
+ "tux-editor-proofreading-show-own-translations": "示子之譯",
+ "tux-proofread-action-tooltip": "記為已校",
+ "tux-proofread-edit-label": "纂",
+ "tux-editor-page-mode": "頁",
+ "tux-editor-outdated-warning": "此譯須新。",
+ "tux-editor-outdated-warning-diff-link": "示辨",
+ "tux-editor-doc-editor-placeholder": "訊之檔",
+ "tux-editor-doc-editor-save": "存檔",
+ "tux-messagetable-more-messages": "$1訊",
+ "tux-messagetable-loading-messages": "載{{PLURAL:$1|訊|訊}}之……",
+ "tux-message-filter-placeholder": "濾之表",
+ "tux-message-filter-result": "$1尋含$2",
+ "tux-message-filter-advanced-button": "進尋",
+ "tux-message-filter-optional-messages-label": "選之訊",
+ "tux-proofread-translated-by-self": "子之譯",
+ "tux-empty-list-translated": "無已譯之訊",
+ "tux-empty-show-optional-messages": "示選之訊",
+ "tux-empty-no-outdated-messages": "無過時訊",
+ "tux-empty-nothing-to-proofread": "無可校",
+ "tux-empty-nothing-new-to-proofread": "無新訊可校",
+ "tux-empty-list-other": "無可譯",
+ "tux-empty-list-other-guide": "助吾校譯",
+ "tux-empty-list-other-link": "示全之訊",
+ "tux-editor-expand-tooltip": "展",
+ "tux-editor-collapse-tooltip": "摺",
+ "tux-editor-message-tools-history": "誌",
+ "tux-editor-loading": "載之……",
+ "translate-statsbar-tooltip": "已譯$1%,已檢校$2%",
+ "translate-statsbar-tooltip-with-fuzzy": "$1%已翻,$2%檢校,$3%過時"
+}
diff --git a/MLEB/Translate/i18n/core/lzz.json b/MLEB/Translate/i18n/core/lzz.json
new file mode 100644
index 00000000..631c738a
--- /dev/null
+++ b/MLEB/Translate/i18n/core/lzz.json
@@ -0,0 +1,12 @@
+{
+ "@metadata": {
+ "authors": [
+ "Bombola"
+ ]
+ },
+ "translate-page-group": "Grubi",
+ "translate-page-language": "Nena",
+ "translate-stats-users": "Magoktirepe",
+ "translate-statsf-scale-days": "Ndğalepe",
+ "translate-statsf-scale-hours": "Saat'epe"
+}
diff --git a/MLEB/Translate/i18n/core/map-bms.json b/MLEB/Translate/i18n/core/map-bms.json
new file mode 100644
index 00000000..f527a90d
--- /dev/null
+++ b/MLEB/Translate/i18n/core/map-bms.json
@@ -0,0 +1,69 @@
+{
+ "@metadata": {
+ "authors": [
+ "StefanusRA"
+ ]
+ },
+ "translate": "Terjemahna",
+ "translate-desc": "[[Special:Translate|Kaca astamiwa]] kanggo mertalna MediaWiki lan liyane",
+ "translate-taskui-view": "Tidokna kabeh layang",
+ "translate-taskui-untranslated": "Tidokna kabeh layang sing durung diterjemahna",
+ "translate-taskui-optional": "Tidokna layang opsional",
+ "translate-taskui-acceptqueue": "Mung pesen sing teyeng ditandhani inyong direview",
+ "translate-taskui-reviewall": "Ulas kabeh terjemahan",
+ "translate-taskui-export-to-file": "Ekspor nang format asli",
+ "translate-taskui-export-as-po": "Ekspor kanggo terjemahan offline",
+ "translate-taction-translate": "Terjemahna",
+ "translate-taction-proofread": "Ulas",
+ "translate-taction-mstats": "Statistik klompok pesen",
+ "translate-taction-export": "Ekspor",
+ "translate-taction-disabled": "Laku kiye dipateni nang wiki kiye.",
+ "translate-page-no-such-language": "Basa sing dipilih ora sah.",
+ "translate-page-no-such-group": "Grup sing dipilih ora sah.",
+ "translate-page-disabled": "Terjemahan ming basa kiye nang grup kiye wis dinonaktifna.\nAlesan:\n\n\n\"$1\"",
+ "translate-language-disabled": "Terjemahan ming basa kiye wis dinonaktifna.",
+ "translate-page-group": "Klompok",
+ "translate-page-limit": "Bates",
+ "translate-submit": "Jikot",
+ "translate-page-showing": "Nidokna pesen sekang $1 nganti $2 sekang total $3.",
+ "translate-page-showing-all": "Nidokna $1 {{PLURAL:$1|pesen|pesen}}.",
+ "translate-page-showing-none": "Ora ana pesen nggo ditidokna.",
+ "translate-next": "Kaca terusane",
+ "translate-prev": "Kaca sedurunge",
+ "translate-page-description-legend": "Informasi ngenani grup",
+ "translate-page-description-hasoptional-open": "Tidokna layang opsional.",
+ "translate-page-edit": "nyunting",
+ "translate-optional": "(pilihan/ora kudu)",
+ "translate-ignored": "(dilirwakna)",
+ "translate-edit-title": "Nyunting \"$1\"",
+ "translate-edit-definition": "Definisi pesen",
+ "translate-edit-translation": "Terjemahan",
+ "translate-edit-contribute": "aweh kontribusi",
+ "translate-edit-no-information": "\"Pesen kiye ora duwe dokumentasi.\"\n\"Angger Rika weruh nang endi utawa kepriwe pesen kiye digunakna, Rika teyeng nulungi penerjemah liyane mawa nambahna dokumentasi ming pesen kiye.\"",
+ "translate-edit-information": "Informasi bab pesen ($1)",
+ "translate-edit-in-other-languages": "Pesen nang basa-basa liyane",
+ "translate-edit-committed": "Pertalan sekiya nang piranti alus",
+ "translate-edit-tmsugs": "Saran sekang mèmori terjemahan lan terjemahan mesin",
+ "translate-edit-tmmatch-source": "Tèks sumber pertalan: $1",
+ "translate-edit-tmmatch": "$1% cocog",
+ "translate-use-suggestion": "Ganti terjemahan sekiye nganggo saran kiye.",
+ "translate-edit-nopermission": "Rika perlu idin kanggo nerjemahna pesen.",
+ "translate-magic-submit": "Jikot",
+ "translate-magic-cm-export": "Ekspor",
+ "translate-magic-cm-current": "Sekiye",
+ "translate-magic-cm-comment": "Tanggepan:",
+ "translate-magic-cm-updatedusing": "Dianyari nganggo [[Special:AdvancedTranslate|{{int:Translate-magic-pagename}}]]",
+ "translate-magic-cm-savefailed": "Gole nyimpen gagal",
+ "translate-magic-special": "Sesinglon kaca astamiwa",
+ "translate-magic-namespace": "Jeneng bilikjeneng",
+ "translate-magic-notsaved": "Suntingane Rika ora disimpen!",
+ "translate-magic-errors": "Monggo didandani {{PLURAL:$1|kasalahan|}} nang terjemahan kiye:",
+ "translate-magic-saved": "Owah-owahane Rika wis sukses disimpen.",
+ "translate-checks-parameters": "{{PLURAL:$2|parameter|}} kiye ora dienggo:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-parameters-unknown": "{{PLURAL:$2|Parameter|Parameter-parameter}} kiye ora dikenal:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-balance": "Ana jumlah sing ora rata sekang {{PLURAL:$2|''parenthesis''|}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links": "{{PLURAL:$2|pranala|$2 pranala-pranala}} kiye nduwe masalah:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links-missing": "{{PLURAL:$2|Pranala|Pranala-pranala}} kiye ilang:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-xhtml": "Monggo ganti {{PLURAL:$2|tag|tag-tag}} kiye nganggo tag sing cocog:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-plural-forms": "<nowiki>{{PLURAL:}}</nowiki> wis aweh {{PLURAL:$1|siji formulir|$1 formulir-formulir}} ningen mung {{PLURAL:$2|siji formulir|$2 formulir-formulir}} sing didukung (excluding 0= lan 1= formulir)."
+}
diff --git a/MLEB/Translate/i18n/core/mg.json b/MLEB/Translate/i18n/core/mg.json
new file mode 100644
index 00000000..0832afdc
--- /dev/null
+++ b/MLEB/Translate/i18n/core/mg.json
@@ -0,0 +1,11 @@
+{
+ "@metadata": {
+ "authors": [
+ "Jagwar"
+ ]
+ },
+ "right-translate": "Manova ny interface fandikana",
+ "right-translate-manage": "Hitantana vondron-kafatra",
+ "right-translate-import": "Mampiditra ny fandikana na offline aza",
+ "translate-sidebar-alltrans": "Amin'ny teny vahiny"
+}
diff --git a/MLEB/Translate/i18n/core/mhr.json b/MLEB/Translate/i18n/core/mhr.json
new file mode 100644
index 00000000..1de25cc3
--- /dev/null
+++ b/MLEB/Translate/i18n/core/mhr.json
@@ -0,0 +1,11 @@
+{
+ "@metadata": {
+ "authors": [
+ "Сай"
+ ]
+ },
+ "translate-next": "Вес лаштык",
+ "translate-prev": "Ончычсо лаштык",
+ "translate-magic-cm-save": "Аралаш",
+ "translate-pref-nonewsletter": "Увер бюллетеньым электрон почто дене мылам колташ огыл"
+}
diff --git a/MLEB/Translate/i18n/core/min.json b/MLEB/Translate/i18n/core/min.json
new file mode 100644
index 00000000..f74c08bd
--- /dev/null
+++ b/MLEB/Translate/i18n/core/min.json
@@ -0,0 +1,22 @@
+{
+ "@metadata": {
+ "authors": [
+ "Iwan Novirion",
+ "Naval Scene"
+ ]
+ },
+ "translate-edit-tmsugs": "Saran dari memori tajamahan",
+ "translate-statsf-start": "Tanggal mulai:",
+ "translate-statsf-scale": "Granularitas:",
+ "translate-statsf-scale-months": "Bulan",
+ "translate-statsf-scale-weeks": "Pakan",
+ "translate-statsf-scale-days": "Ari",
+ "translate-statsf-scale-hours": "Jam",
+ "translate-statsf-count": "Ukuaran:",
+ "translate-statsf-count-edits": "Jumlah suntiangan",
+ "translate-statsf-count-users": "Panajamah aktip",
+ "translate-statsf-count-registrations": "Pangguno baru",
+ "translate-sidebar-alltrans": "Dalam bahaso lain",
+ "translate-js-support": "Batanyo",
+ "translate-searchprofile-tooltip": "Cari dari sado tajamahan"
+}
diff --git a/MLEB/Translate/i18n/core/mk.json b/MLEB/Translate/i18n/core/mk.json
new file mode 100644
index 00000000..3b8a738b
--- /dev/null
+++ b/MLEB/Translate/i18n/core/mk.json
@@ -0,0 +1,393 @@
+{
+ "@metadata": {
+ "authors": [
+ "Bjankuloski06",
+ "Brest",
+ "Brest2008",
+ "Dario",
+ "Милан Јелисавчић"
+ ]
+ },
+ "translate": "Преведување",
+ "translate-desc": "[[Special:Translate|Службена страница]] за преведување на МедијаВики и други пораки",
+ "translate-taskui-view": "Сите пораки",
+ "translate-taskui-untranslated": "Непреведени пораки",
+ "translate-taskui-optional": "Незадолжителни пораки",
+ "translate-taskui-acceptqueue": "Само пораки што можам да ги означувам како проверени",
+ "translate-taskui-reviewall": "Проверка на сите пораки",
+ "translate-taskui-export-to-file": "Извези во матичен формат",
+ "translate-taskui-export-as-po": "Извези за вонмрежно преведување",
+ "translate-taction-translate": "Преведи",
+ "translate-taction-proofread": "Провери",
+ "translate-taction-lstats": "Јазични статистики",
+ "translate-taction-mstats": "Статистики за групата",
+ "translate-taction-export": "Извези",
+ "translate-taction-disabled": "Дејството е оневозможено на ова вики.",
+ "translate-page-no-such-language": "Наведениот јазик е погрешен",
+ "translate-page-no-such-group": "Погрешно наведена група",
+ "translate-page-disabled": "Преведувањето на овој јазик во оваа група е оневозможено. Причина:\n\n<em>$1</em>",
+ "translate-language-disabled": "Преведувањето на овој јазик е оневозможено.",
+ "translate-page-settings-legend": "Нагодувања",
+ "translate-page-group": "Група",
+ "translate-page-language": "Јазик",
+ "translate-page-limit": "Највеќе до",
+ "translate-page-limit-option": "$1 {{PLURAL:$1|порака|пораки}} по страница",
+ "translate-submit": "Филтрирај",
+ "translate-page-navigation-legend": "Навигација",
+ "translate-page-showing": "Прикажани се пораки од $1 до $2 од вкупно $3",
+ "translate-page-showing-all": "Приказ на $1 {{PLURAL:$1|порака|пораки}}.",
+ "translate-page-showing-none": "Нема пораки за прикажување",
+ "translate-page-paging-links": "[ $1 ] [ $2 ]",
+ "translate-next": "Следна страница",
+ "translate-prev": "Претходна страница",
+ "translate-page-description-legend": "Информации за групата",
+ "translate-page-description-hasoptional": "Оваа група содржи незадолжителни пораки.\nНезадолжителните пораки треба да се преведуваат само кога вашиот јазик има посебни потреби како траслитерација на имиња или неупотреба на празни места. $1",
+ "translate-page-description-hasoptional-open": "Прикажи незадолжителни пораки.",
+ "translate-page-edit": "уреди",
+ "translate-ext-url": "<hr />Мреж. место: $1",
+ "translate-optional": "(незадолжително)",
+ "translate-ignored": "(игнорирано)",
+ "translate-edit-title": "Уреди „$1“",
+ "translate-edit-definition": "Изворна порака",
+ "translate-edit-translation": "Превод",
+ "translate-edit-contribute": "придонес",
+ "translate-edit-no-information": "<em>Оваа порака нема документација.\nАко знаете каде или како се користи поракава, тогаш помогнете им на другите преведувачи додавајќи ѝ документација.</em>",
+ "translate-edit-information": "Информации за пораката ($1)",
+ "translate-edit-in-other-languages": "Пораката на други јазици",
+ "translate-edit-committed": "Тековен превод во програмската опрема",
+ "translate-edit-warnings": "Предупредувања за нецелосни преводи",
+ "translate-edit-tmsugs": "Предлози од претходни преводи",
+ "translate-edit-tmmatch-source": "Изворен текст за преводот: $1",
+ "translate-edit-tmmatch": "$1% совпаѓање",
+ "translate-use-suggestion": "Заменете го тековниот превод со овој предлог во полето за превод.",
+ "translate-edit-nopermission": "Ви требаат преведувачки права за да преведувате пораки.",
+ "translate-edit-askpermission": "Побарајте дозвола",
+ "translate-magic-pagename": "Превод на додатоци за МедијаВики",
+ "translate-magic-help": "Можете да ги преведете алијасите на службените страници, волшебните зборови и називите на именските простори.\n\nАлијасите на службените страници и волшебните зборови може да имаат повеќе преводи.\nПреводите се одделуваат со запирка (,).\nИменските простори може да имаат само по еден превод.\n\nПреведувањето на именскиот простор за разговор за проект <code>Разговор за $1</code> може да биде посложено.\n<code>$1</code> се заменува со проектот (на пр. <code>{{ns:project_talk}}</code>).\nАко на вашиот не може да се обликува правилен израз без промена на името на страницата, тогаш известете нè на страницата „[[Support|Поддршка]]“.\n\nЗа да ги зачувате промените, треба да сте преведувач.\nПромените нема да се зачуваат без да стиснете на долуприкажаното копче „Зачувај“.",
+ "translate-magic-module": "Модул:",
+ "translate-magic-submit": "Филтрирај",
+ "translate-magic-cm-export": "Извоз",
+ "translate-magic-nothing-to-export": "Нема што да се увезе.",
+ "translate-magic-cm-to-be": "Нека биде",
+ "translate-magic-cm-current": "Тековен",
+ "translate-magic-cm-original": "Изворно",
+ "translate-magic-cm-comment": "Коментар:",
+ "translate-magic-cm-save": "Зачувај",
+ "translate-magic-cm-updatedusing": "Подновено со помош на [[Special:AdvancedTranslate|{{int:Translate-magic-pagename}}]]",
+ "translate-magic-cm-savefailed": "Неуспешно зачувување",
+ "translate-magic-special": "Алијаси на службени страници",
+ "translate-magic-words": "Волшебни зборови",
+ "translate-magic-namespace": "Називи на именски простори",
+ "translate-magic-notsaved": "Вашето уредување не беше зачувано!",
+ "translate-magic-errors": "Поправете {{PLURAL:$1|ја следнава грешка|ги следниве грешки}} во преводот:",
+ "translate-magic-saved": "Промените се успешно зачувани.",
+ "translate-checks-parameters": "{{PLURAL:$2|Следниов параметар не се користи|Следниве параметри се користат}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-parameters-unknown": "{{PLURAL:$2|Следниов параметар е непознат|Следниве параметри се непознати}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-balance": "Непарен број на загради, {{PLURAL:$2|заграда|загради}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links": "{{PLURAL:$2|Следнава врска предизвикува проблеми|Следниве $2 врски предизвикуваат проблеми}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links-missing": "{{PLURAL:$2|Недостасува следнава врска|$2 Недостасуваат следниве врски}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-xhtml": "Заменете {{PLURAL:$2|ја следнава ознака со исправна|ги следниве ознаки со исправни}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-plural": "Определбата користи <nowiki>{{PLURAL:}}</nowiki> но преводот не.",
+ "translate-checks-plural-forms": "На <nowiki>{{PLURAL:}}</nowiki> {{PLURAL:$1|му е зададен еден облик|му се зададени $1 облици}}, но {{PLURAL:$2|поддржан е само еден|поддржани се само $2}} (освен облиците 0= и 1=).",
+ "translate-checks-plural-dupe": "<nowiki>{{PLURAL:}}</nowiki> има дуплирани облици на крајот. <nowiki>{{PLURAL:$1|деца|деца}}</nowiki> треба да се запише само како <nowiki>{{PLURAL:$1|деца}}</nowiki>.",
+ "translate-checks-pagename": "Изменета е определбата на именскиот простор",
+ "translate-checks-format": "Овој превод не ја следи определбата или има неправилна синтакса: $1",
+ "translate-checks-escape": "Следниве испуштања може да се ненамерни: <strong>$1</strong>",
+ "translate-checks-parametersnotequal": "Бројот на параметри изнесува {{PLURAL:$1|$1}}, а треба да биде {{PLURAL:$2|$2}}.",
+ "translate-checks-malformed": "<nowiki>$1</nowiki> е погрешно внесено.",
+ "translate-checks-fudforum-syntax": "Користете <nowiki>$1</nowiki> наместо <nowiki>$2</nowiki> во овој проект.",
+ "translate-pref-nonewsletter": "Не ми испраќај новости по е-пошта",
+ "translate-pref-editassistlang": "Помошни јазици:",
+ "prefs-translate": "Нагодувања за преведување",
+ "translate-pref-editassistlang-help": "Список на јазични кодови одделени со запирка.\nПреводите на пораките на овие јазици се прикажуваат кога преведувате.\nСписокот на јазици зададен по основно зависи од вашиот јазик.",
+ "translate-pref-editassistlang-bad": "Погрешен јазичен код на списокот:\n<nowiki>$1</nowiki>.",
+ "right-translate": "Уредување со користење на посредникот за преведување",
+ "right-translate-manage": "Раководење со групи пораки",
+ "action-translate-manage": "рСаководење со групи пораки",
+ "right-translate-import": "Увезување на вонмрежни преводи (од сметач)",
+ "action-translate-import": "увоз на вонмрежни преводи",
+ "right-translate-messagereview": "Проверка на преводи",
+ "right-translate-groupreview": "Менување на состојбата на работниот тек на групите пораки",
+ "translate-rc-translation-filter": "Филтрирање на преводи:",
+ "translate-rc-translation-filter-no": "Не прави ништо",
+ "translate-rc-translation-filter-only": "Прикажи само преводи",
+ "translate-rc-translation-filter-filter": "Филтрирај преводи",
+ "translate-rc-translation-filter-site": "Промени само во пораките на мреж. место",
+ "translationstats": "Статистики за преводите",
+ "translate-stats-edits": "Уредувања",
+ "translate-stats-users": "Преведувачи",
+ "translate-stats-registrations": "Регистрации",
+ "translate-stats-reviews": "Оценки",
+ "translate-stats-reviewers": "Оценувачи",
+ "translate-statsf-intro": "Со овој образец можете да создадете едноставен статистички преглед. Сите вредности имаат максимални и минимални граници.",
+ "translate-statsf-options": "Нагодувања за графиконот",
+ "translate-statsf-width": "Ширина во пиксели:",
+ "translate-statsf-height": "Висина во пиксели:",
+ "translate-statsf-days": "Временски период во денови:",
+ "translate-statsf-start": "Почетен датум:",
+ "translate-statsf-scale": "Подробност:",
+ "translate-statsf-scale-months": "Месеци",
+ "translate-statsf-scale-weeks": "Недели",
+ "translate-statsf-scale-days": "Денови",
+ "translate-statsf-scale-hours": "Часови",
+ "translate-statsf-count": "Мерка:",
+ "translate-statsf-count-edits": "Број на уредувања",
+ "translate-statsf-count-users": "Активни преведувачи",
+ "translate-statsf-count-registrations": "Нови корисници",
+ "translate-statsf-count-reviews": "Оценки на преводи",
+ "translate-statsf-count-reviewers": "Оценувачи",
+ "translate-statsf-language": "Список на јазични кодови, одвоени со запирка:",
+ "translate-statsf-group": "Список на групни кодови, одвоени со запирка:",
+ "translate-statsf-submit": "Преглед",
+ "translate-tag-category": "Преводливи страници",
+ "translate-tag-page-desc": "Превод на викистраницата [[$2|$1]] од $3 ($4).",
+ "translate-sidebar-alltrans": "На други јазици",
+ "translations": "Сите преводи",
+ "translations-summary": "Внесете име на порака за приказ на сите достапни преводи.",
+ "translate-translations-no-message": "„$1“ не е порака што се преведува",
+ "translate-translations-none": "Нема преводи за „$1“",
+ "translate-translations-count": "{{PLURAL:$1|Пронајден е еден превод|Пронајдени се $1 преводи}}.",
+ "translate-translations-fieldset-title": "Порака",
+ "translate-translations-messagename": "Име:",
+ "translate-translations-project": "Проект:",
+ "translate-translations-including-no-param": "Наведете важечко клучно име на пораката во параметарот на потстраницата",
+ "translate-translations-history-short": "и",
+ "languagestats": "Статистики за јазикот",
+ "languagestats-summary": "Оваа страница прикажува статистики на превод за сите групи на пораки за одреден јазик.",
+ "messagegroupstats-summary": "На страницава се прикажани статистики за група пораки.",
+ "languagestats-stats-for": "Преводни статистики за $1 ($2).",
+ "languagestats-recenttranslations": "скорешни преводи",
+ "translate-langstats-incomplete": "Некои од статистиките на страницава се непотполни. Превчитајте ја за да добиете потполни статистики.",
+ "translate-langstats-expand": "прикажи",
+ "translate-langstats-collapse": "собери",
+ "translate-langstats-expandall": "прикажи сè",
+ "translate-langstats-collapseall": "скриј сè",
+ "translate-language-code": "Јазичен код",
+ "translate-language-code-field-name": "Јазичен код:",
+ "translate-suppress-complete": "Не прикажувај наполно преведени групи на пораки",
+ "translate-ls-noempty": "Скриј наполно непреведени групи на пораки",
+ "translate-language": "Јазик",
+ "translate-total": "Пораки",
+ "translate-untranslated": "Непреведени",
+ "translate-percentage-complete": "Потполност",
+ "translate-percentage-fuzzy": "Застарени",
+ "translate-languagestats-overall": "Сите групи на пораки заедно",
+ "translate-ls-submit": "Дај статистики",
+ "translate-ls-column-group": "Група на пораки",
+ "translate-mgs-pagename": "Статистики за групата",
+ "translate-mgs-fieldset": "Нагодувања на приказот",
+ "translate-mgs-group": "Група на пораки:",
+ "translate-mgs-nocomplete": "Не прикажувај јазици со потполн превод",
+ "translate-mgs-noempty": "Не прикажувај јазици без никакви преводи",
+ "translate-mgs-submit": "Статистики",
+ "translate-mgs-column-language": "Јазик",
+ "translate-mgs-totals": "Сите јазици заедно",
+ "translate-mgs-invalid-group": "Наведената група $1 не постои.",
+ "translate-mgs-nothing": "Нема што да се прикаже за побараните статистики.",
+ "supportedlanguages": "Поддржани јазици",
+ "supportedlanguages-summary": "На оваа страница се наведени сите јазици што ги поддржува {{SITENAME}},\nзаедно со имињата на преведувачите што работат на секој јазик.\nГолемината на името (т.е. буквите) на преведувачот зависи од тоа колку пораки има преведено.\nБојата на линијата со која е подвлечено името ја покажува скорешноста на неговата активност.",
+ "supportedlanguages-colorlegend": "Легенда за бојата: Последен превод извршен пред $1 дена.",
+ "supportedlanguages-portallink": "[$1] $2 - $3",
+ "supportedlanguages-portallink-nocldr": "[$1] $2",
+ "supportedlanguages-translators": "{{PLURAL:$2|{{GENDER:$3|Преведувач}}|Преведувач}}: $1",
+ "supportedlanguages-recenttranslations": "скорешни преводи",
+ "supportedlanguages-count": "Вкупно $1 {{PLURAL:$1|јазик|јазици}}.",
+ "supportedlanguages-activity": "$1: $2 {{PLURAL:$2|уредување|уредувања}} - последното пред $3 {{PLURAL:$3|ден|дена}}",
+ "translate-save": "Зачувај ($1)",
+ "translate-jssti-add": "Додај во список",
+ "managemessagegroups": "Раководење со групи на пораки",
+ "translate-smg-notallowed": "Не ви е дозволено да ја извршите оваа постапка.",
+ "translate-smg-nochanges": "Нема измени за обработка.",
+ "translate-smg-submit": "Поднеси измени за обработка",
+ "translate-smg-submitted": "Формулациите на пораките се подновени. Измените се обработуваат во позадина.",
+ "translate-smg-more": "Ќе има уште промени за обработка откако ќе ги поднесете овие.",
+ "translate-smg-left": "Содржина на пораката во викито",
+ "translate-smg-right": "Престојни промени",
+ "translate-manage-import-diff": "Порака $1 | Дејства: $2",
+ "translate-manage-import-new": "Нова порака $1",
+ "translate-manage-import-deleted": "Избришана порака $1",
+ "translate-manage-action-import": "Увези",
+ "translate-manage-action-conflict": "Увези и обележи со „fuzzy“",
+ "translate-manage-action-ignore": "Занемари",
+ "translate-manage-action-fuzzy": "Увези и обележи ги преводите со „fuzzy“",
+ "translate-manage-nochanges": "Нема промени во дефинициите на пораките за оваа група.",
+ "translate-manage-nochanges-other": "Нема за овој јазик.\nУпотребете ја врската подолу за да се вратите на прегледот на подробности за групата.",
+ "translate-manage-inconsistent": "Откриена е недоследност во барањето.\nПроверете дали има промени и обидете се повторно.\nПодробности : $1.",
+ "translate-manage-toolong": "Пречекорено е максималното време за обработка од {{PLURAL:$1|една секунда|$1 секунди}}.\nПоднесете го образецот одново за да продолжите со обработката.",
+ "translate-manage-import-summary": "Увезување на нова верзија од надворешен извор",
+ "translate-manage-conflict-summary": "Увезување на нова верзија од надворешен извор.\nПроверете.",
+ "translate-manage-fuzzy-summary": "Формулацијата на пораката е променета",
+ "translate-manage-submit": "Изврши",
+ "translate-manage-intro-other": "Еве список на промени во преводите на јазикот $1.\nПрегледајте ги пораките и изберете го дејството што сакате да го направите за секоја поднова.\nАко изберете да ги занемарите промените, ова дејство ќе биде само привремено.",
+ "translate-manage-import-ok": "Увезена: $1",
+ "translate-manage-import-done": "Увозот е готов!",
+ "importtranslations": "Увези преводи",
+ "translate-import-from-local": "Месно подигање на податотека:",
+ "translate-import-load": "Вчитај податотека",
+ "translate-import-err-dl-failed": "Не можам да ја преземам податотеката:\n$1",
+ "translate-import-err-ul-failed": "Подигањето на податотеката не успеа",
+ "translate-import-err-invalid-title": "Наведеното име на податотеката <nowiki>$1</nowiki> е погрешно.",
+ "translate-import-err-no-such-file": "Податотеката <nowiki>$1</nowiki> не постои или не е подигната месно.",
+ "translate-import-err-stale-group": "Податотекава припаѓа на непостоечка група на пораки.",
+ "translate-import-err-no-headers": "Податотеката не е добро обликувана Gettext податотека во форматот за преведување на додатоци:\nНе можам да одредам група и јазик од насловите на податотеката.",
+ "translate-import-err-warnings": "Податотеката не е добро формулирана.\nОсигурајте се дека вашиот обработувач не ги отстранува msgctxt полињата.\nПодробности : $1",
+ "translate-js-summary": "Опис:",
+ "translate-js-save": "Зачувај",
+ "translate-js-next": "Зачувај и отвори следна",
+ "translate-js-nonext": "Ова беше последната порака на страницава.",
+ "translate-js-skip": "Прејди на следно",
+ "translate-js-save-failed": "Зачувувањето не успеа. Ве молиме пријавете ја оваа грешка.",
+ "translate-js-history": "Минати преводи",
+ "translate-js-support": "Постави прашање",
+ "translate-js-support-title": "Побарајте помош ако немате доволно информации за да направите точен превод на пораката.",
+ "translate-js-support-unsaved-warning": "Имате незачувани преводи.",
+ "translate-gs-pos": "Место",
+ "translate-gs-code": "Код",
+ "translate-gs-continent": "Континент",
+ "translate-gs-speakers": "Говорници",
+ "translate-gs-score": "Оцена",
+ "translate-gs-multiple": "Повеќе",
+ "translate-gs-count": "Број",
+ "translate-gs-total": "Вкупно",
+ "translate-gs-avgscore": "Средн. оцена",
+ "translate-documentation-language": "документација на пораки",
+ "translate-searchprofile": "Преводи",
+ "translate-searchprofile-tooltip": "Пребарување по сите преводи",
+ "translate-search-languagefilter": "Филтрирај по јазик:",
+ "translate-search-nofilter": "Без филтрирање",
+ "translate-messagereview-submit": "Означи како проверено",
+ "translate-messagereview-progress": "Означувам како проверено...",
+ "translate-messagereview-failure": "Означувањето како проверено не успеа: $1",
+ "translate-messagereview-done": "Проверено",
+ "translate-messagereview-reviews": "Проверено од {{PLURAL:$1|еден корисник|$1 корисници}}",
+ "translate-messagereview-reviewswithyou": "Проверено од {{PLURAL:$1|вас|$1 корисници, вклучувајќи ве и вас}}",
+ "api-error-invalidrevision": "Преводот не е пронајден",
+ "api-error-unknownmessage": "Пораката не е пронајдена",
+ "api-error-fuzzymessage": "Преводот е обележан како застарен",
+ "api-error-owntranslation": "Не можете да означувате Ваши сопствени преводи како проверени.",
+ "translate-messagereview-no-fuzzy": "Застарените преводи не можат да се означуваат како проверени",
+ "translate-messagereview-no-own": "Не можете да означувате Ваши сопствени преводи како проверени.",
+ "translate-messagereview-doit": "Означи го преводов како проверен.",
+ "group-translate-proofr.css": "/* Тука поставениот CSS ќе се применува само врз проверувачите на преводи */",
+ "group-translate-proofr.js": "/* Тука поставениот JS ќе се применува само врз проверувачите на преводи */",
+ "log-name-translationreview": "Дневник на проверки на преводи",
+ "log-description-translationreview": "Дневник на сите проверки на преводи и групи пораки",
+ "logentry-translationreview-message": "$1 {{GENDER:$2|го провери}} преводот $3",
+ "logentry-translationreview-group": "$1 {{GENDER:$2|ја измени}} состојбата на преводите на $4 во групата $3 од $6 на $7",
+ "group-translate-sandboxed": "Неодобрени преведувачи",
+ "group-translate-sandboxed-member": "{{GENDER:$1|неодобрен преведувач}}",
+ "right-translate-sandboxmanage": "Раководење со корисници во песочник",
+ "action-translate-sandboxmanage": "раководење со корисници во песочник",
+ "right-translate-sandboxaction": "Вршење на дејства на белиот список за корисници во песочникот",
+ "action-translate-sandboxaction": "вршење на дејства на белиот список за корисници во песочникот",
+ "translate-workflow-state-": "(незададен)",
+ "translate-workflowstatus": "Статус: $1",
+ "translate-workflow-set-do": "Задај",
+ "translate-workflow-set-doing": "Задавам...",
+ "translate-workflow-set-done": "Зададено!",
+ "translate-workflow-set-error-alreadyset": "Бараната состојба не се разликува од моменталната.",
+ "translate-workflow-autocreated-summary": "Автоматско создавање на страница за работната состојба $1",
+ "translate-stats-workflow": "Статус",
+ "translate-workflowgroup-label": "Работни состојби",
+ "translate-workflowgroup-desc": "Оваа група на пораки ја прикажува работната состојба на преводите.\nСостојбите се определуваат со променливата $wgTranslateWorkflowStates.",
+ "translate-dynagroup-recent-label": "Скорешни преводи",
+ "translate-dynagroup-recent-desc": "Оваа група на пораки ги прикажува сите скорешни преводи на овој јазик.\nОва е најкорисно при вршењето на прегледи.",
+ "translate-dynagroup-additions-label": "Неодамна додадени",
+ "translate-dynagroup-additions-desc": "Оваа група на пораки прикажува нови и изменети пораки",
+ "translate-dynagroup-by": "Преводот го изврши {{GENDER:$1|$1}}",
+ "translate-dynagroup-byc": "Преводот го изврши {{GENDER:$1|$1}} ($2)",
+ "translate-dynagroup-last": "Последната промена ја изврши {{GENDER:$1|$1}}",
+ "translate-dynagroup-lastc": "Последната промена ја изврши {{GENDER:$1|$1}} ($2)",
+ "translate-gethelp": "Помош",
+ "translate-msggroupselector-projects": "Група на пораки",
+ "translate-msggroupselector-search-placeholder": "Пребарајте групи",
+ "translate-msggroupselector-search-all": "Сите",
+ "translate-msggroupselector-search-recent": "Скорешни",
+ "translate-msggroupselector-view-subprojects": "$1 {{PLURAL:$1|подгрупа|подгрупи}}",
+ "tux-languageselector": "Преведи на",
+ "tux-tab-all": "Сите",
+ "tux-tab-untranslated": "Непреведени",
+ "tux-tab-outdated": "Застарени",
+ "tux-tab-translated": "Преведени",
+ "tux-tab-unproofread": "Непроверени",
+ "tux-edit": "Уреди",
+ "tux-status-optional": "Незадолжително",
+ "tux-status-fuzzy": "Застарено",
+ "tux-status-proofread": "Проверено",
+ "tux-status-translated": "Преведено",
+ "tux-status-saving": "Зачувувам...",
+ "tux-status-unsaved": "Незачувано",
+ "tux-editor-placeholder": "Ваш превод",
+ "tux-editor-paste-original-button-label": "Вметни изворен текст",
+ "tux-editor-discard-changes-button-label": "Отфрли промени",
+ "tux-editor-save-button-label": "Зачувај превод",
+ "tux-editor-skip-button-label": "Прејди на следно",
+ "tux-editor-cancel-button-label": "Откажи",
+ "tux-editor-confirm-button-label": "Потврди превод",
+ "tux-editor-shortcut-info": "Стиснете на „$1“ за да зачувате, „$2“ за да прејдете на следната порака, или пак „$3“ за други кратенки.",
+ "tux-editor-edit-desc": "Уреди документација",
+ "tux-editor-add-desc": "Додај документација",
+ "tux-editor-suggestions-title": "Предлози",
+ "tux-editor-in-other-languages": "На други јазици",
+ "tux-editor-need-more-help": "Ви треба повеќе помош?",
+ "tux-editor-ask-help": "Побарајте уште информации",
+ "tux-editor-tm-match": "$1% совпаѓање",
+ "tux-warnings-more": "{{PLURAL:$1|уште $1}}",
+ "tux-warnings-hide": "скриј",
+ "tux-editor-save-failed": "Не успеав да го зачувам преводот: $1",
+ "tux-editor-n-uses": "употребено {{PLURAL:$1|еднаш|$1 пати}}",
+ "tux-editor-message-desc-more": "Погл. уште",
+ "tux-editor-message-desc-less": "Погл. помалку",
+ "tux-editor-clear-translated": "Скриј преведени",
+ "tux-editor-proofreading-mode": "Провери",
+ "tux-editor-translate-mode": "Список",
+ "tux-editor-proofreading-hide-own-translations": "Скриј мои преводи",
+ "tux-editor-proofreading-show-own-translations": "Прикажи мои преводи",
+ "tux-proofread-action-tooltip": "Означи како проверено",
+ "tux-proofread-edit-label": "Уреди",
+ "tux-editor-page-mode": "Страница",
+ "tux-editor-outdated-warning": "На преводов може да му треба поднова.",
+ "tux-editor-outdated-warning-diff-link": "Прик. разлики",
+ "tux-editor-doc-editor-placeholder": "Документација на пораката",
+ "tux-editor-doc-editor-save": "Зачувај",
+ "tux-editor-doc-editor-cancel": "Откажи",
+ "tux-messagetable-more-messages": "уште {{PLURAL:$1|една порака|$1 пораки}}",
+ "tux-messagetable-loading-messages": "{{PLURAL:$1|Ја вчитувам пораката|Ги вчитувам пораките}}...",
+ "tux-message-filter-placeholder": "Филтрирај список",
+ "tux-message-filter-result": "Пронајдов $1 {{PLURAL:$1|резултат|резултати}} за „$2“",
+ "tux-message-filter-advanced-button": "Напредно пребарување",
+ "tux-message-filter-optional-messages-label": "Незадолжителни пораки",
+ "tux-proofread-translated-by-self": "Преведено од Вас",
+ "tux-empty-list-all": "Оваа група на пораки е празна",
+ "tux-empty-list-all-guide": "Изберете друга група на пораки за преведување",
+ "tux-translate-page-no-such-group": "<strong>Укажаната група пораки на постои.</strong> Изберете друга.",
+ "tux-empty-list-translated": "Нема преведени пораки",
+ "tux-empty-list-translated-guide": "Можете да помогнете со преводите",
+ "tux-empty-list-translated-action": "Преведи",
+ "tux-empty-no-messages-to-display": "Нема пораки за приказ.",
+ "tux-empty-there-are-optional": "Има незадолжителни пораки што не се прикажани на списокот",
+ "tux-empty-show-optional-messages": "Прикажи незадолжителни пораки",
+ "tux-empty-no-outdated-messages": "Нема застарени пораки",
+ "tux-empty-nothing-to-proofread": "Нема ништо за проверка",
+ "tux-empty-you-can-help-providing": "Можете да помогнете со нови преводи",
+ "tux-empty-nothing-new-to-proofread": "Нема ништо ново за проверка",
+ "tux-empty-you-can-review-already-proofread": "Можете да ги прегледате преводите веќе проверени од други.",
+ "tux-empty-list-other": "Нема ништо за преведување",
+ "tux-empty-list-other-guide": "Можете да помогнете со проверката на постоечките преводи",
+ "tux-empty-list-other-action": "Провери преводи",
+ "tux-empty-list-other-link": "Прикажи ги сите пораки",
+ "tux-editor-close-tooltip": "Затвори",
+ "tux-editor-expand-tooltip": "Прикажи",
+ "tux-editor-collapse-tooltip": "Собери",
+ "tux-editor-message-tools-history": "Историја",
+ "tux-editor-message-tools-delete": "Избриши",
+ "tux-editor-message-tools-translations": "Сите преводи",
+ "tux-editor-loading": "Вчитувам...",
+ "translate-search-more-languages-info": "уште {{PLURAL:$1|еден јазик|$1 јазици}}",
+ "translate-statsbar-tooltip": "$1% преведени, $2% проверени",
+ "translate-statsbar-tooltip-with-fuzzy": "$1% преведени, $2% проверени, $3% застарени",
+ "translate-search-more-groups-info": "Уште {{PLURAL:$1|една група|$1 групи}}",
+ "translate-ulsdep-title": "Грешка во поставеноста",
+ "translate-ulsdep-body": "Додатокот за превод е зависен од додатокот „[https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:UniversalLanguageSelector Универзален јазичен избирач]“.",
+ "tux-session-expired": "Повеќе не сте најавени. Најавете се во друго јазиче. Можете и некаде да ги прекопирате незачуваните преводи, па да се најавите и да се навратите на страницава."
+}
diff --git a/MLEB/Translate/i18n/core/ml.json b/MLEB/Translate/i18n/core/ml.json
new file mode 100644
index 00000000..1464e7bf
--- /dev/null
+++ b/MLEB/Translate/i18n/core/ml.json
@@ -0,0 +1,323 @@
+{
+ "@metadata": {
+ "authors": [
+ "Jacob.jose",
+ "Lavalsal",
+ "Praveenp",
+ "Santhosh.thottingal",
+ "Shijualex",
+ "Vssun"
+ ]
+ },
+ "translate": "വിവർത്തനം ചെയ്യുക",
+ "translate-desc": "മീഡിയവിക്കിയും മറ്റുള്ളവയും തർജ്ജമ ചെയ്യാനുള്ള [[Special:Translate|പ്രത്യേക താൾ]]",
+ "translate-taskui-view": "എല്ലാ സന്ദേശങ്ങളും പ്രദർശിപ്പിക്കുക",
+ "translate-taskui-untranslated": "പരിഭാഷപ്പെടുത്താത്ത സന്ദേശങ്ങൾ പ്രദർശിപ്പിക്കുക",
+ "translate-taskui-optional": "ഐച്ഛിക സന്ദേശങ്ങൾ പ്രദർശിപ്പിക്കുക",
+ "translate-taskui-acceptqueue": "സംശോധനം ചെയ്തതെന്ന് എനിക്ക് അടയാളപ്പെടുത്താവുന്ന സന്ദേശങ്ങൾ മാത്രം",
+ "translate-taskui-reviewall": "എല്ലാ പരിഭാഷകളും സംശോധനം ചെയ്യുക",
+ "translate-taskui-export-to-file": "സഹജമായ ഫോർമാറ്റിൽ കയറ്റുമതി ചെയ്യുക",
+ "translate-taskui-export-as-po": "ഓഫ്-ലൈൻ പരിഭാഷയ്ക്കായി കയറ്റുമതി ചെയ്യുക",
+ "translate-taction-translate": "പരിഭാഷപ്പെടുത്തുക",
+ "translate-taction-proofread": "സംശോധനം ചെയ്യുക",
+ "translate-taction-lstats": "ഭാഷയുടെ സ്ഥിതിവിവരക്കണക്കുകൾ",
+ "translate-taction-mstats": "സന്ദേശ ഗണത്തിന്റെ സ്ഥിതിവിവരക്കണക്കുകൾ",
+ "translate-taction-export": "കയറ്റുമതി ചെയ്യുക",
+ "translate-taction-disabled": "ഈ വിക്കിയിൽ ഈ പ്രവൃത്തി പ്രവർത്തനരഹിതമാക്കിയിരിക്കുകയാണ്.",
+ "translate-page-no-such-language": "തിരഞ്ഞെടുത്ത ഭാഷ അസാധുവാണ്‌.",
+ "translate-page-no-such-group": "തിരഞ്ഞെടുത്ത ഗണം അസാധുവാണ്‌.",
+ "translate-page-disabled": "ഈ ഗണത്തിലുള്ള സന്ദേശങ്ങൾക്ക് ഈ ഭാഷയിലുള്ള പരിഭാഷ നിരോധിച്ചിരിക്കുന്നു. കാരണം:\n\n<em>$1</em>",
+ "translate-language-disabled": "ഈ ഭാഷയിലേയ്ക്കുള്ള പരിഭാഷ പ്രവർത്തനരഹിതമാക്കിയിരിക്കുകയാണ്.",
+ "translate-page-settings-legend": "സജ്ജീകരണങ്ങൾ",
+ "translate-page-group": "ഗണം",
+ "translate-page-language": "ഭാഷ",
+ "translate-page-limit": "പരിധി",
+ "translate-page-limit-option": "ഒരു താളിൽ $1 {{PLURAL:$1|സന്ദേശം|സന്ദേശങ്ങൾ}}",
+ "translate-submit": "എടുക്കുക",
+ "translate-page-navigation-legend": "വഴികാട്ടി",
+ "translate-page-showing": "$3 സന്ദേശങ്ങളുള്ളതിൽ $1 മുതൽ $2 വരെയുള്ളവ പ്രദർശിപ്പിച്ചിരിക്കുന്നു",
+ "translate-page-showing-all": "$1 {{PLURAL:$1|സന്ദേശം|സന്ദേശങ്ങൾ}} പ്രദർശിപ്പിക്കുന്നു.",
+ "translate-page-showing-none": "പ്രദർശിപ്പിക്കുവാൻ സന്ദേശങ്ങളില്ല.",
+ "translate-next": "അടുത്ത താൾ",
+ "translate-prev": "മുൻപത്തെ താൾ",
+ "translate-page-description-legend": "ഗണത്തെക്കുറിച്ചുള്ള വിവരങ്ങൾ",
+ "translate-page-description-hasoptional": "ഈ സന്ദേശഗണത്തിൽ ഐച്ഛിക സന്ദേശങ്ങളുണ്ട്.\nതാങ്കളുടെ ഭാഷയ്ക്ക് പ്രത്യേക ആവശ്യങ്ങളുള്ളപ്പോൾ, അതായത് ഇട നൽകിയെഴുതേണ്ടി വരികയോ സാമാന്യനാമങ്ങൾ ലിപിമാറ്റം ചെയ്യേണ്ടി വരുമ്പഴോ മറ്റോ മാത്രമേ ഐച്ഛിക സന്ദേശങ്ങൾ പരിഭാഷപ്പെടുത്തേണ്ടതുള്ളു. $1",
+ "translate-page-description-hasoptional-open": "ഐച്ഛിക സന്ദേശങ്ങൾ പ്രദർശിപ്പിക്കുക.",
+ "translate-page-edit": "തിരുത്തുക",
+ "translate-ext-url": "<hr />വെബ്സൈറ്റ്: $1",
+ "translate-optional": "(നിർബന്ധമില്ല)",
+ "translate-ignored": "(അവഗണിച്ചിരിക്കുന്നു)",
+ "translate-edit-title": "\"$1\" തിരുത്തുക",
+ "translate-edit-definition": "സന്ദേശത്തിന്റെ നിർ‌വചനം",
+ "translate-edit-translation": "പരിഭാഷ",
+ "translate-edit-contribute": "തിരുത്തുക",
+ "translate-edit-no-information": "''ഈ സന്ദേശത്തിനു ഡോക്കുമെന്റേഷൻ ഇല്ല.\nഈ സന്ദേശം എങ്ങനെയാണു ഉപയോഗിക്കപ്പെടുന്നത് എന്ന് താങ്കൾക്ക് അറിയാമെങ്കിൽ, അതിനെകുറിച്ചുള്ള ഡോക്കുമെന്റേഷൻ ചേർത്ത് താങ്കൾക്ക് മറ്റുള്ള പരിഭാഷകർക്കു സഹായമേകാം.''",
+ "translate-edit-information": "സന്ദേശത്തെക്കുറിച്ചുള്ള വിശദീകരണം ($1)",
+ "translate-edit-in-other-languages": "സന്ദേശം മറ്റു ഭാഷകളിൽ",
+ "translate-edit-committed": "സന്ദേശത്തിന്റെ നിലവിലുള്ള പരിഭാഷ",
+ "translate-edit-warnings": "അപൂർണ്ണമായ പരിഭാഷയെക്കുറിച്ചുള്ള മുന്നറിയിപ്പ്",
+ "translate-edit-tmsugs": "ഓർത്തുവെച്ച പരിഭാഷപ്പെടുത്തലുകളിൽ നിന്നുള്ള സൂചനകൾ",
+ "translate-edit-tmmatch-source": "പരിഭാഷയുടെ മൂലരൂപം: $1",
+ "translate-edit-tmmatch": "$1% പൊരുത്തപ്പെടുന്നു",
+ "translate-use-suggestion": "ഇപ്പോഴുള്ള പരിഭാഷയ്ക്ക് പകരം ഈ നിർദ്ദേശം ഉപയോഗിയ്ക്കുക.",
+ "translate-edit-nopermission": "ഈ സന്ദേശങ്ങൾ പരിഭാഷപ്പെടുത്താൻ താങ്കൾ അനുമതി നേടേണ്ടതുണ്ട്.",
+ "translate-edit-askpermission": "അനുമതി അഭ്യർത്ഥിക്കുക",
+ "translate-magic-pagename": "മീഡിയവിക്കി വിപുലീകൃത തർജ്ജമ",
+ "translate-magic-module": "ഘടകം:",
+ "translate-magic-submit": "എടുക്കുക",
+ "translate-magic-cm-export": "കയറ്റുമതി ചെയ്യുക",
+ "translate-magic-nothing-to-export": "കയറ്റുമതി ചെയ്യാനായി ഒന്നുമില്ല.",
+ "translate-magic-cm-current": "നിലവിലുള്ളത്",
+ "translate-magic-cm-original": "മൂലകൃതി",
+ "translate-magic-cm-comment": "അഭിപ്രായം:",
+ "translate-magic-cm-save": "സേവ് ചെയ്യുക",
+ "translate-magic-cm-updatedusing": "[[Special:AdvancedTranslate|{{int:Translate-magic-pagename}}]] ഉപയോഗിച്ച് പുതുക്കിയവ",
+ "translate-magic-cm-savefailed": "സേവ് ചെയ്യാൻ പറ്റിയില്ല",
+ "translate-magic-special": "പ്രത്യേക താളുകളുടെ അലിയാസുകൾ",
+ "translate-magic-words": "മാന്ത്രികപദങ്ങൾ",
+ "translate-magic-namespace": "നാമമേഖല നാമങ്ങൾ",
+ "translate-magic-notsaved": "താങ്കളുടെ തിരുത്ത് സേവ് ചെയ്തിട്ടില്ല!",
+ "translate-magic-errors": "തർജ്ജമകളിൽ ഉള്ളതായി താഴെ കൊടുത്തിരിക്കുന്ന {{PLURAL:$1|പിഴവ്|പിഴവുകൾ}} ശരിയാക്കുക:",
+ "translate-magic-saved": "താങ്കൾ വരുത്തിയ മാറ്റങ്ങൾ വിജയകരമായി സേവ് ചെയ്തിരിക്കുന്നു.",
+ "translate-checks-parameters": "ഇനിക്കൊടുക്കുന്ന {{PLURAL:$2|ചരം|ചരങ്ങൾ}} ഉപയോഗിച്ചിട്ടില്ല:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-parameters-unknown": "ഇനിക്കൊടുക്കുന്ന {{PLURAL:$2|ചരം|ചരങ്ങൾ}} വ്യക്തമല്ല:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-balance": "{{PLURAL:$2|കോഷ്ഠകങ്ങളുടെ|കോഷ്ഠകങ്ങളുടെ}} എണ്ണം ഇരട്ടയല്ല:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links": "ഇനിക്കൊടുക്കുന്ന {{PLURAL:$2|കണ്ണി|$2 കണ്ണികൾ}} പ്രശ്നകാരിയാണ്:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links-missing": "ഇനിക്കൊടുക്കുന്ന {{PLURAL:$2|കണ്ണി|$2 കണ്ണികൾ}} ചേർത്തിട്ടില്ല:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-xhtml": "ഇനിക്കൊടുക്കുന്ന {{PLURAL:$2|റ്റാഗ്|റ്റാഗുകൾ}} ദയവായി ശരിയായവ കൊണ്ട് മാറ്റിച്ചേർക്കുക:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-plural": "നിർ‌വചനം <nowiki>{{PLURAL:}}</nowiki> ഉപയോഗിക്കുന്നു, പക്ഷെ പരിഭാഷ ഉപയോഗിക്കുന്നില്ല.",
+ "translate-checks-pagename": "നാമമേഖല നിർവ്വചനത്തിൽ നിന്നും മാറിയിരിക്കുന്നു",
+ "translate-checks-format": "ഈ പരിഭാഷ നിർവ്വചനം അനുസരിച്ചുള്ളതല്ല അല്ലെങ്കിൽ അസാധുവായ എഴുത്തുരീതി ഉൾപ്പെടുന്നു: $1",
+ "translate-checks-fudforum-syntax": "ഈ പദ്ധതിയിൽ <nowiki>$2</nowiki> എന്നതിനു പകരം <nowiki>$1</nowiki> എന്നുപയോഗിക്കുക.",
+ "translate-pref-nonewsletter": "ഇമെയിൽ വാർത്താപത്രികകൾ എനിക്ക് അയയ്ക്കേണ്ടതില്ല",
+ "translate-pref-editassistlang": "സഹായ ഭാഷകൾ:",
+ "prefs-translate": "പരിഭാഷാ ഐച്ഛികങ്ങൾ",
+ "translate-pref-editassistlang-bad": "പട്ടികയിലെ അസാധുവായ ഭാഷ കോഡ്:\n<nowiki>$1</nowiki>.",
+ "right-translate": "പരിഭാഷയ്ക്കുള്ള സമ്പർക്കമുഖമുപയോഗിച്ച് തിരുത്തുക",
+ "right-translate-manage": "സന്ദേശ സഞ്ചയങ്ങളുടെ കൈകാര്യം",
+ "action-translate-manage": "സന്ദേശഗണങ്ങൾ കൈകാര്യം ചെയ്യുക",
+ "right-translate-import": "ഓഫ്‌ലൈൻ പരിഭാഷകൾ ഇറക്കുമതി ചെയ്യുക",
+ "action-translate-import": "ഓഫ്‌ലൈനായിട്ടുള്ള പരിഭാഷകൾ കയറ്റുമതി ചെയ്യുക",
+ "right-translate-messagereview": "പരിഭാഷകൾ സംശോധനം ചെയ്യുക",
+ "right-translate-groupreview": "സന്ദേശഗണങ്ങളുടെ വർക്ക്‌ഫ്ലോ സ്ഥിതിയിൽ മാറ്റം വരുത്തുക",
+ "translate-rc-translation-filter": "പരിഭാഷകൾ അരിച്ചെടുക്കുക:",
+ "translate-rc-translation-filter-no": "ഒന്നും ചെയ്യേണ്ടതില്ല",
+ "translate-rc-translation-filter-only": "പരിഭാഷകൾ മാത്രം പ്രദർശിപ്പിക്കുക",
+ "translate-rc-translation-filter-filter": "പരിഭാഷകൾ അരിച്ചെടുക്കുക",
+ "translate-rc-translation-filter-site": "സൈറ്റിലെ സന്ദേശങ്ങളുടെ മാറ്റങ്ങൾ മാത്രം",
+ "translationstats": "പരിഭാഷയുടെ സ്ഥിതിവിവരക്കണക്കുകൾ",
+ "translate-stats-edits": "തിരുത്തുകൾ",
+ "translate-stats-users": "പരിഭാഷകർ",
+ "translate-stats-registrations": "രജിസ്ട്രേഷനുകൾ",
+ "translate-stats-reviews": "സംശോധനങ്ങൾ",
+ "translate-stats-reviewers": "സംശോധകർ",
+ "translate-statsf-intro": "ഈ ഫോം ഉപയോഗിച്ച് താങ്കൾക്ക് ലളിതമായ സ്ഥിതിവിവരക്കണക്കുകൾ സൃഷ്ടിക്കാവുന്നതാണ്.\nഎല്ലാ വിലകൾക്കും ഉയർന്നതും താഴ്ന്തുമായ പരിധിയുണ്ട്.",
+ "translate-statsf-options": "ഗ്രാഫിന്റെ ഐച്ഛികങ്ങൾ",
+ "translate-statsf-width": "വീതി പിക്സലിൽ:",
+ "translate-statsf-height": "ഉയരം പിക്സലിൽ:",
+ "translate-statsf-days": "കാലയളവ് (ദിവസങ്ങളിൽ):",
+ "translate-statsf-start": "തുടങ്ങുന്ന തീയതി:",
+ "translate-statsf-scale": "കണികാത്മതക",
+ "translate-statsf-scale-months": "മാസങ്ങൾ",
+ "translate-statsf-scale-weeks": "ആഴ്‌‌ചകൾ",
+ "translate-statsf-scale-days": "ദിവസങ്ങൾ",
+ "translate-statsf-scale-hours": "മണിക്കൂറുകൾ",
+ "translate-statsf-count": "അളവ്:",
+ "translate-statsf-count-edits": "ആകെ തിരുത്തുകൾ",
+ "translate-statsf-count-users": "സജീവ പരിഭാഷകർ",
+ "translate-statsf-count-registrations": "പുതിയ ഉപയോക്താക്കൾ",
+ "translate-statsf-count-reviews": "പരിഭാഷാ സംശോധനകൾ",
+ "translate-statsf-count-reviewers": "സംശോധകർ",
+ "translate-statsf-language": "അല്പവിരാമത്താൽ വിഭജിക്കപ്പെട്ടിട്ടുള്ള ഭാഷാകോഡുകളുടെ പട്ടിക",
+ "translate-statsf-group": "കോഡ് ഗണങ്ങളുടെ അല്പവിരാമചിഹ്നത്താൽ വിഭജിക്കപ്പെട്ട പട്ടിക",
+ "translate-statsf-submit": "എങ്ങനെയുണ്ടെന്ന് കാണുക",
+ "translate-tag-category": "പരിഭാഷപ്പെടുത്താവുന്ന താളുകൾ",
+ "translate-tag-page-desc": "[[$2|$1]] എന്ന വിക്കി താളിന്റെ തർജ്ജമ.",
+ "translate-sidebar-alltrans": "ഇതര ഭാഷകളിൽ",
+ "translations": "എല്ലാ തർജ്ജമകളും",
+ "translations-summary": "ലഭ്യമായ എല്ലാ പരിഭാഷകളും പ്രദർശിക്കപ്പെടാൻ താഴെ സന്ദേശത്തിന്റെ പേര് നൽകുക.",
+ "translate-translations-no-message": "\"$1\" പരിഭാഷപ്പെടുത്താവുന്ന സന്ദേശമല്ല",
+ "translate-translations-none": "\"$1\" എന്നതിന് പരിഭാഷയൊന്നും നിലവിലില്ല",
+ "translate-translations-count": "{{PLURAL:$1|ഒരു പരിഭാഷ|$1 പരിഭാഷകൾ}} കണ്ടെത്തി.",
+ "translate-translations-fieldset-title": "സന്ദേശം",
+ "translate-translations-messagename": "പേര്‌:",
+ "translate-translations-project": "പദ്ധതി:",
+ "translate-translations-including-no-param": "ദയവായി ഉപതാൾ ചരത്തിനായി സാധുവായ ഒരു സന്ദേശ ചാവി വ്യക്തമാക്കുക",
+ "translate-translations-history-short": "നാ",
+ "languagestats": "ഭാഷയുടെ സ്ഥിതിവിവരക്കണക്കുകൾ",
+ "languagestats-summary": "എല്ലാ സന്ദേശ സഞ്ചയങ്ങളുടെയും ഒരു ഭാഷയിലെ പരിഭാഷാ സ്ഥിതിവിവരം ഈ താളിൽ കാണാം.",
+ "languagestats-stats-for": "$1 ഭാഷയുടെ പരിഭാഷാ സ്ഥിതിവിവരം ($2)",
+ "languagestats-recenttranslations": "സമീപകാല പരിഭാഷകൾ",
+ "translate-langstats-incomplete": "ഈ താളിലെ ചില സ്ഥിതിവിവരക്കണക്കുകൾ അപൂർണ്ണമാണ്. കൂടുതൽ സ്ഥിതിവിവരക്കണക്കുകൾ ലഭിക്കാൻ താൾ വീണ്ടും എടുക്കുക.",
+ "translate-langstats-expand": "വികസിപ്പിക്കുക",
+ "translate-langstats-collapse": "ചുരുക്കുക",
+ "translate-langstats-expandall": "എല്ലാം വികസിപ്പിക്കുക",
+ "translate-langstats-collapseall": "എല്ലാം ചുരുക്കുക",
+ "translate-language-code": "ഭാഷയുടെ കോഡ്",
+ "translate-language-code-field-name": "ഭാഷയുടെ കോഡ്:",
+ "translate-suppress-complete": "പൂർണ്ണമായും പരിഭാഷപ്പെടുത്തിയ സന്ദേശഗണങ്ങൾ ഒതുക്കുക",
+ "translate-ls-noempty": "ഒട്ടും പരിഭാഷ ചെയ്യാത്ത സന്ദേശഗണങ്ങൾ ഒതുക്കുക",
+ "translate-language": "ഭാഷ",
+ "translate-total": "സന്ദേശങ്ങൾ",
+ "translate-untranslated": "പരിഭാഷപ്പെടുത്താത്തവ",
+ "translate-percentage-complete": "പൂർണ്ണത",
+ "translate-percentage-fuzzy": "കാലഹരണപ്പെട്ടവ",
+ "translate-languagestats-overall": "എല്ലാ സന്ദേശഗണങ്ങളും ഒരുമിച്ച്",
+ "translate-ls-submit": "സ്ഥിതിവിവരക്കണക്കുകൾ പ്രദർശിപ്പിക്കുക",
+ "translate-ls-column-group": "സന്ദേശ ഗണം",
+ "translate-mgs-pagename": "സന്ദേശ ഗണത്തിന്റെ സ്ഥിതിവിവരക്കണക്കുകൾ",
+ "translate-mgs-fieldset": "ക്രമീകരണങ്ങൾ പ്രദർശിപ്പിക്കുക",
+ "translate-mgs-group": "സന്ദേശ ഗണം:",
+ "translate-mgs-nocomplete": "പരിഭാഷ പൂർത്തിയായ ഭാഷകൾ പ്രദർശിപ്പിക്കാതിരിക്കുക",
+ "translate-mgs-submit": "സ്ഥിതിവിവരക്കണക്കുകൾ പ്രദർശിപ്പിക്കുക",
+ "translate-mgs-column-language": "ഭാഷ",
+ "translate-mgs-totals": "ഒരുമിച്ച് എല്ലാ ഭാഷകളും",
+ "supportedlanguages": "പിന്തുണയ്ക്കുന്ന ഭാഷകൾ",
+ "supportedlanguages-translators": "{{PLURAL:$2|പരിഭാഷക(ൻ)|പരിഭാഷകർ}}: $1",
+ "supportedlanguages-recenttranslations": "സമീപകാല പരിഭാഷകൾ",
+ "supportedlanguages-count": "ആകെ {{PLURAL:$1|ഒരു ഭാഷ|$1 ഭാഷകൾ}}.",
+ "translate-save": "സേവ് ചെയ്യുക ($1)",
+ "translate-jssti-add": "പട്ടികയിലേക്ക് ചേർക്കുക",
+ "managemessagegroups": "സന്ദേശഗണങ്ങളുടെ മേൽനോട്ടം",
+ "translate-smg-notallowed": "ഇതു ചെയ്യാൻ താങ്കൾക്കനുവാദമില്ല",
+ "translate-manage-import-new": "പുതിയ സന്ദേശം $1",
+ "translate-manage-import-deleted": "മായ്ക്കപ്പെട്ട സന്ദേശം $1",
+ "translate-manage-action-import": "ഇറക്കുമതി ചെയ്യുക",
+ "translate-manage-action-ignore": "അവഗണിക്കുക",
+ "translate-manage-fuzzy-summary": "സന്ദേശ നിർവചനം മാറിയിരിക്കുന്നു",
+ "translate-manage-submit": "നടപ്പിലാക്കുക",
+ "translate-manage-import-ok": "$1 എന്ന താളിന്റെ പുതിയ പതിപ്പ് ഇറക്കുമതി ചെയ്തിരിക്കുന്നു.",
+ "translate-manage-import-done": "എല്ലാം ചെയ്തു!",
+ "importtranslations": "പരിഭാഷകളുടെ ഇറക്കുമതി",
+ "translate-import-from-local": "അപ്‌ലോഡ് ചെയ്യേണ്ട പ്രാദേശിക പ്രമാണം:",
+ "translate-import-load": "പ്രമാണം എടുക്കുക",
+ "translate-import-err-ul-failed": "പ്രമാണം അപ്‌ലോഡ് ചെയ്യൽ വിജയകരമല്ലായിരുന്നു",
+ "translate-js-summary": "ചുരുക്കം:",
+ "translate-js-save": "സേവ് ചെയ്യുക",
+ "translate-js-next": "സേവ് ചെയ്യുക, അടുത്തത് തുറക്കുക",
+ "translate-js-nonext": "ഇത് ഈ താളിലെ അവസാന സന്ദേശമാണ്.",
+ "translate-js-skip": "അടുത്തതിലേയ്ക്ക് പോവുക",
+ "translate-js-history": "പരിഭാഷയുടെ നാൾവഴി",
+ "translate-js-support": "ചോദ്യം ചോദിക്കുക",
+ "translate-js-support-unsaved-warning": "താങ്കൾ സേവ് ചെയ്യാത്ത പരിഭാഷകൾ ഉണ്ട്.",
+ "translate-gs-pos": "സ്ഥാനം",
+ "translate-gs-code": "കോഡ്",
+ "translate-gs-continent": "ഭൂഖണ്ഡം",
+ "translate-gs-speakers": "സംസാരിക്കുന്നവർ",
+ "translate-gs-score": "സ്കോർ",
+ "translate-gs-multiple": "വിവിധം",
+ "translate-gs-count": "എണ്ണം",
+ "translate-gs-total": "ആകെ",
+ "translate-gs-avgscore": "ശരാശരി സ്കോർ",
+ "translate-documentation-language": "സന്ദേശ വിവരണം",
+ "translate-searchprofile": "പരിഭാഷകൾ",
+ "translate-searchprofile-tooltip": "എല്ലാ പരിഭാഷകളിൽ നിന്നും തിരയുക",
+ "translate-search-languagefilter": "ഭാഷയനുസരിച്ച് എടുക്കുക:",
+ "translate-messagereview-submit": "സ്വീകരിക്കുക",
+ "translate-messagereview-progress": "സ്വീകരിക്കുന്നു...",
+ "translate-messagereview-failure": "സ്വീകരിക്കുന്നു... പരാജയപ്പെട്ടു: $1",
+ "translate-messagereview-done": "സ്വീകരിച്ചവ",
+ "translate-messagereview-reviews": "{{PLURAL:$1|ഒരു ഉപയോക്താവ്|$1 ഉപയോക്താക്കൾ}} സംശോധനം ചെയ്തിരിക്കുന്നു",
+ "translate-messagereview-reviewswithyou": "{{PLURAL:$1|നിങ്ങൾ|നിങ്ങളടക്കം $1 ഉപയോക്താക്കൾ}} സംശോധനം ചെയ്തിരിക്കുന്നു",
+ "api-error-invalidrevision": "പരിഭാഷ കണ്ടെത്താനായില്ല",
+ "api-error-unknownmessage": "സന്ദേശം കണ്ടെത്താനായില്ല",
+ "api-error-owntranslation": "താങ്കൾക്ക് താങ്കളുടെ തന്നെ പരിഭാഷകൾ സ്വീകരിക്കാനാവില്ല",
+ "translate-messagereview-no-own": "താങ്കൾക്ക് താങ്കളുടെ തന്നെ പരിഭാഷകൾ സ്വീകരിക്കാനാവില്ല",
+ "translate-messagereview-doit": "തർജ്ജമ ശരിയാണെന്നു രേഖപ്പെടുത്തുക",
+ "log-name-translationreview": "പരിഭാഷാ സംശോധന രേഖ",
+ "translate-workflow-state-": "(സജ്ജീകരിച്ചിട്ടില്ല)",
+ "translate-workflowstatus": "സ്ഥിതി : $1",
+ "translate-workflow-set-do": "സജ്ജീകരിക്കുക",
+ "translate-workflow-set-doing": "സജ്ജീകരിക്കുന്നു...",
+ "translate-workflow-set-done": "സജ്ജീകരിച്ചു!",
+ "translate-stats-workflow": "സ്ഥിതി",
+ "translate-workflowgroup-label": "വർക്ക്‌ഫ്ലോ സ്ഥിതികൾ",
+ "translate-dynagroup-recent-label": "സമീപകാല പരിഭാഷകൾ",
+ "translate-dynagroup-additions-label": "സമീപകാലത്ത് ചേർത്തവ",
+ "translate-dynagroup-additions-desc": "പുതിയതും മാറ്റം വന്നതുമായ ആയ സന്ദേശങ്ങൾ കാണിക്കുന്നു",
+ "translate-dynagroup-by": "$1 തർജ്ജമ ചെയ്തിരിക്കുന്നു",
+ "translate-gethelp": "സഹായം",
+ "translate-msggroupselector-projects": "സന്ദേശഗണങ്ങൾ",
+ "translate-msggroupselector-search-placeholder": "സന്ദേശഗണങ്ങൾ തിരയുക",
+ "translate-msggroupselector-search-all": "എല്ലാം",
+ "translate-msggroupselector-search-recent": "സമീപകാലം",
+ "translate-msggroupselector-view-subprojects": "{{PLURAL:$1|$1 ഉപസംരംഭം|$1 ഉപസംരംഭങ്ങൾ}}",
+ "tux-languageselector": "ഇതിലേയ്ക്ക് തർജ്ജമ ചെയ്യുക",
+ "tux-tab-all": "എല്ലാം",
+ "tux-tab-untranslated": "പരിഭാഷപ്പെടുത്താത്തവ",
+ "tux-tab-outdated": "കാലഹരണപ്പെട്ടവ",
+ "tux-tab-translated": "പരിഭാഷപ്പെടുത്തിയവ",
+ "tux-tab-unproofread": "സംശോധനം ചെയ്യാത്തവ",
+ "tux-edit": "പരിഭാഷപ്പെടുത്തുക",
+ "tux-status-optional": "ഐച്ഛികം",
+ "tux-status-fuzzy": "കാലഹരണപ്പെട്ടവ",
+ "tux-status-proofread": "സംശോധനം ചെയ്തവ",
+ "tux-status-translated": "പരിഭാഷപ്പെടുത്തി",
+ "tux-status-saving": "സേവ് ചെയ്യുന്നു...",
+ "tux-status-unsaved": "സേവ് ചെയ്തിട്ടില്ല",
+ "tux-editor-placeholder": "താങ്കളുടെ പരിഭാഷ",
+ "tux-editor-paste-original-button-label": "മൂലരൂപം ഉപയോഗിക്കുക",
+ "tux-editor-discard-changes-button-label": "മാറ്റങ്ങൾ വേണ്ടെന്നുവെയ്ക്കുക",
+ "tux-editor-save-button-label": "പരിഭാഷ സേവ് ചെയ്യുക",
+ "tux-editor-skip-button-label": "അടുത്തതിലേയ്ക്ക് പോവുക",
+ "tux-editor-cancel-button-label": "റദ്ദാക്കുക",
+ "tux-editor-confirm-button-label": "പരിഭാഷ സ്ഥിരീകരിക്കുക",
+ "tux-editor-shortcut-info": "സേവ് ചെയ്യാൻ \"$1\" അമർത്തുക, അടുത്തതിലേയ്ക്ക് പോകാൻ \"$2\" അമർത്തുക.",
+ "tux-editor-edit-desc": "വിവരണം തിരുത്തുക",
+ "tux-editor-add-desc": "വിവരണം ചേർക്കുക",
+ "tux-editor-suggestions-title": "നിർദ്ദേശങ്ങൾ",
+ "tux-editor-in-other-languages": "മറ്റു ഭാഷകളില്‍",
+ "tux-editor-need-more-help": "സഹായം ആവശ്യമാണോ?",
+ "tux-editor-ask-help": "കൂടുതല്‍ വിവരങ്ങള്‍ ചോദിക്കുക",
+ "tux-editor-tm-match": "$1% പൊരുത്തപ്പെടുന്നു",
+ "tux-warnings-more": "{{PLURAL:$1|$1 എണ്ണം കൂടി}}",
+ "tux-warnings-hide": "മറയ്ക്കുക",
+ "tux-editor-save-failed": "പരിഭാഷ സേവ് ചെയ്യുന്നത് പരാജയപ്പെട്ടു: $1",
+ "tux-editor-n-uses": "{{PLURAL:$1|ഒരു തവണ|$1 തവണ}} ഉപയോഗിച്ചു",
+ "tux-editor-message-desc-more": "കൂടുതൽ കാണുക",
+ "tux-editor-message-desc-less": "കുറച്ച് കാണുക",
+ "tux-editor-clear-translated": "പരിഭാഷപ്പെടുത്തിയവ മറയ്ക്കുക",
+ "tux-editor-proofreading-mode": "സംശോധനം",
+ "tux-editor-translate-mode": "പട്ടിക",
+ "tux-editor-proofreading-hide-own-translations": "താങ്കളുടെ തർജ്ജമകൾ മറയ്ക്കുക",
+ "tux-editor-proofreading-show-own-translations": "താങ്കളുടെ തർജ്ജമകൾ കാണിക്കുക",
+ "tux-proofread-action-tooltip": "സംശോധനം ചെയ്തതായി അടയാളപ്പെടുത്തുക",
+ "tux-proofread-edit-label": "തിരുത്തുക",
+ "tux-editor-page-mode": "താൾ",
+ "tux-editor-outdated-warning": "ഈ പരിഭാഷ പുതുക്കേണ്ടതാവാം",
+ "tux-editor-outdated-warning-diff-link": "വ്യത്യാസം കാണിക്കുക",
+ "tux-editor-doc-editor-placeholder": "സന്ദേശ വിവരണം",
+ "tux-editor-doc-editor-save": "വിവരണം സംരക്ഷിക്കുക",
+ "tux-editor-doc-editor-cancel": "റദ്ദാക്കുക",
+ "tux-messagetable-more-messages": "{{PLURAL:$1|ഒരു സന്ദേശം കൂടി|$1 സന്ദേശങ്ങള്‍ കൂടി}}",
+ "tux-messagetable-loading-messages": "{{PLURAL:$1|ഒരു സന്ദേശം|$1 സന്ദേശങ്ങള്‍}} എടുക്കുന്നു...",
+ "tux-message-filter-placeholder": "പട്ടിക അരിച്ചെടുക്കുക",
+ "tux-message-filter-result": "\"$2\" എന്നതിന് {{PLURAL:$1|ഒരു ഫലം|$1 ഫലങ്ങൾ}} കണ്ടെത്തി",
+ "tux-message-filter-advanced-button": "വിപുലമായ തിരച്ചില്‍",
+ "tux-message-filter-optional-messages-label": "ഐച്ഛിക സന്ദേശങ്ങൾ",
+ "tux-proofread-translated-by-self": "താങ്കൾ പരിഭാഷപ്പെടുത്തിയവ",
+ "tux-empty-list-all": "ഈ സന്ദേശഗണം ശൂന്യമാണ്",
+ "tux-empty-list-all-guide": "പരിഭാഷയ്ക്ക് വേറൊരു സന്ദേശഗണം തിരഞ്ഞെടുക്കുക",
+ "tux-empty-list-translated": "തർജ്ജമ ചെയ്ത സന്ദേശങ്ങളൊന്നുമില്ല",
+ "tux-empty-list-translated-action": "പരിഭാഷപ്പെടുത്തുക",
+ "tux-empty-show-optional-messages": "ഐച്ഛിക സന്ദേശങ്ങൾ പ്രദർശിപ്പിക്കുക",
+ "tux-empty-no-outdated-messages": "കാലഹരണപ്പെട്ട സന്ദേശങ്ങൾ ഒന്നും തന്നെയില്ല",
+ "tux-empty-nothing-to-proofread": "സംശോധനം ചെയ്യാൻ ഒന്നുമില്ല",
+ "tux-empty-you-can-help-providing": "പുതിയ പരിഭാഷകൾ സംശോധനം ചെയ്യാൻ താങ്കൾക്ക് സഹായിക്കാം",
+ "tux-empty-nothing-new-to-proofread": "സംശോധനം ചെയ്യാൻ പുതുതായൊന്നുമില്ല",
+ "tux-empty-you-can-review-already-proofread": "മറ്റുള്ളവർ സംശോധനം ചെയ്ത പരിഭാഷകൾ താങ്കൾക്ക് പരിശോധിക്കാം.",
+ "tux-empty-list-other": "പരിഭാഷപ്പെടുത്താൻ ഒന്നുമില്ല.",
+ "tux-empty-list-other-guide": "താങ്കൾക്ക് നിലവിലുള്ള പരിഭാഷകൾ സംശോധനം ചെയ്യാൻ സഹായിക്കാം",
+ "tux-empty-list-other-action": "പരിഭാഷകൾ സംശോധനം ചെയ്യുക",
+ "tux-empty-list-other-link": "എല്ലാ സന്ദേശങ്ങളും കാണിക്കുക",
+ "tux-editor-close-tooltip": "അടയ്ക്കുക",
+ "tux-editor-expand-tooltip": "വികസിപ്പിക്കുക",
+ "tux-editor-collapse-tooltip": "ചുരുക്കുക",
+ "tux-editor-message-tools-history": "നാൾവഴി",
+ "tux-editor-message-tools-translations": "എല്ലാ തർജ്ജമകളും",
+ "tux-editor-loading": "ശേഖരിക്കുന്നു...",
+ "translate-search-more-languages-info": "{{PLURAL:$1|ഒരു ഭാഷ കൂടി|$1 ഭാഷകൾ കൂടി}}",
+ "translate-statsbar-tooltip": "$1% പരിഭാഷപ്പെടുത്തിയവ, $2% സംശോധനം ചെയ്തവ",
+ "translate-statsbar-tooltip-with-fuzzy": "$1% പരിഭാഷപ്പെടുത്തിയവ, $2% സംശോധനം ചെയ്തവ, $3% കാലഹരണപ്പെട്ടവ",
+ "translate-search-more-groups-info": "$1 {{PLURAL:$2|സംഘം|സംഘങ്ങൾ}} കൂടി"
+}
diff --git a/MLEB/Translate/i18n/core/mn.json b/MLEB/Translate/i18n/core/mn.json
new file mode 100644
index 00000000..2bc1fa30
--- /dev/null
+++ b/MLEB/Translate/i18n/core/mn.json
@@ -0,0 +1,12 @@
+{
+ "@metadata": {
+ "authors": [
+ "Chinneeb",
+ "Wisdom"
+ ]
+ },
+ "translate-page-language": "Хэл",
+ "translate-magic-cm-comment": "Тайлбар:",
+ "translate-language": "Хэл",
+ "tux-session-expired": "Таны логин гарсан байна. Энэ таб -аа хаалгүй шинэ таб нэмээд логин хийчихээд хадгалаарай."
+}
diff --git a/MLEB/Translate/i18n/core/mo.json b/MLEB/Translate/i18n/core/mo.json
new file mode 100644
index 00000000..8b3cb16e
--- /dev/null
+++ b/MLEB/Translate/i18n/core/mo.json
@@ -0,0 +1,42 @@
+{
+ "@metadata": {
+ "authors": [
+ "Node ue"
+ ]
+ },
+ "translate": "Традуче",
+ "translate-desc": "[[Special:Translate|Паӂинэ спечиалэ]] пентру традучеря програмулуй МедияВики, дар ну нумай",
+ "translate-page-no-such-language": "Лимба спечификатэ есте инкоректэ.",
+ "translate-page-no-such-group": "Групул спечификат есте инвалид.",
+ "translate-page-disabled": "Посибилитатя де а традуче ачест груп ын ачастэ лимбэ а фост дезактиватэ.\nМотив:\n\n<em>$1</em>",
+ "translate-page-settings-legend": "Сетэрь:",
+ "translate-page-group": "Груп",
+ "translate-page-language": "Лимбэ",
+ "translate-page-limit": "Лимитэ",
+ "translate-page-limit-option": "$1 {{PLURAL:$1|месаж|месаже}} пе паӂинэ",
+ "translate-submit": "Адуче",
+ "translate-page-navigation-legend": "Навигаре",
+ "translate-page-showing": "Се афишазэ месажеле де ла $1 ла $2 динтр'ун тотал де $3.",
+ "translate-page-showing-all": "Се афишазэ $1 {{PLURAL:$1|месаж|де месаже}}.",
+ "translate-next": "Паӂина урмэтоаре",
+ "translate-prev": "Паӂина антериоарэ",
+ "translate-page-description-legend": "Информаций деспре груп",
+ "translate-page-edit": "едитязэ",
+ "translate-optional": "(опционал)",
+ "translate-ignored": "(игнорат)",
+ "translate-edit-title": "Едитязэ «$1»",
+ "translate-edit-definition": "Дефиниция месажулуй",
+ "translate-edit-contribute": "контрибуе",
+ "translate-edit-no-information": "''Ачест месаж ну аре документацие.\nДакэ штий унде сау кум есте фолосит, ый поць ажута пе чеилалць традукэторь прин адэугаря документацией сале.''",
+ "translate-edit-information": "Информаций деспре месажул «$2» ($1)",
+ "translate-edit-in-other-languages": "Месажул «$1» ын алте лимбь",
+ "translate-magic-submit": "Адуче",
+ "translate-magic-cm-current": "актуал",
+ "translate-magic-cm-original": "Ориӂинал",
+ "translate-magic-cm-comment": "Коментариу:",
+ "translate-magic-cm-save": "Салвязэ",
+ "translate-stats-users": "Традукэторь",
+ "translate-js-next": "Салвязэ ши мерӂь май департе",
+ "translate-js-nonext": "Ачеста есте ултимул месаж де пе ачастэ паӂинэ.",
+ "translate-js-skip": "Сарь май департе"
+}
diff --git a/MLEB/Translate/i18n/core/mr.json b/MLEB/Translate/i18n/core/mr.json
new file mode 100644
index 00000000..a8ed1459
--- /dev/null
+++ b/MLEB/Translate/i18n/core/mr.json
@@ -0,0 +1,364 @@
+{
+ "@metadata": {
+ "authors": [
+ "Ankitgadgil",
+ "Htt",
+ "Kaustubh",
+ "Mahitgar",
+ "Saleelk",
+ "V.narsikar",
+ "संतोष दहिवळ"
+ ]
+ },
+ "translate": "भाषांतर करा",
+ "translate-desc": "मिडीयाविकि आणि इतर भाषांतरे करण्याकरिता [[Special:Translate|विशेष पान]]",
+ "translate-taskui-view": "सर्व संदेश दाखवा",
+ "translate-taskui-untranslated": "अभाषांतरीत संदेश दाखवा",
+ "translate-taskui-optional": "ऐच्छिक संदेश दाखवा",
+ "translate-taskui-acceptqueue": "फक्त संदेश ज्यास मी 'परिक्षण केले'(रिव्ह्यूड)अशी खूण करू शकतो",
+ "translate-taskui-reviewall": "सर्व भाषांतरांचे परिक्षण करा",
+ "translate-taskui-export-to-file": "मुळ प्रारूपात निर्यात करा",
+ "translate-taskui-export-as-po": "विना-जाल भाषांतरासाठी निर्यात करा",
+ "translate-taction-translate": "भाषांतर करा",
+ "translate-taction-proofread": "परिक्षण करा",
+ "translate-taction-lstats": "भाषेची सांख्यिकी",
+ "translate-taction-mstats": "संदेश गटांची सांख्यिकी",
+ "translate-taction-export": "निर्यात करा",
+ "translate-taction-disabled": "या विकिवर या क्रियेस अनुपलब्ध केले आहे.",
+ "translate-page-no-such-language": "दिलेली भाषा अवैध आहे.",
+ "translate-page-no-such-group": "दिलेला गट अवैध आहे.",
+ "translate-page-disabled": "या गटातील या भाषेत भाषांतर अनुपलब्ध आहे.\nकारण:\n\n\n<em>$1</em>",
+ "translate-language-disabled": "या भाषेत भाषांतर करणे अक्षम करण्यात आले आहे.",
+ "translate-page-settings-legend": "रुपरेषा",
+ "translate-page-group": "गट",
+ "translate-page-language": "भाषा",
+ "translate-page-limit": "मर्यादा",
+ "translate-page-limit-option": "प्रतिपृष्ठ {{PLURAL:$1|संदेश|संदेश}}$1",
+ "translate-submit": "मिळवा",
+ "translate-page-navigation-legend": "सुचालन",
+ "translate-page-showing": "$3चे $1पासून $2पर्यंत संदेश दाखवत आहे.",
+ "translate-page-showing-all": "$1 {{PLURAL:$1|संदेश|संदेश}} दाखवत आहे .",
+ "translate-page-showing-none": "दाखविण्यासाठी संदेश नाहीत.",
+ "translate-next": "पुढील पान",
+ "translate-prev": "मागील पान",
+ "translate-page-description-legend": "गटाबद्दल माहिती",
+ "translate-page-description-hasoptional": "या संदेश गटात ऐच्छिक संदेश आहेत.\nजेंव्हा आपल्या भाषेची विशेष गरज असेल तेंव्हाच ऐच्छिक संदेशांचे भाषांतर करावे\nजसे(शब्दात) रिकामी जागा न वापरणे किंवा विशेषनाम. $1",
+ "translate-page-description-hasoptional-open": "ऐच्छिक संदेश दाखवा",
+ "translate-page-edit": "संपादन करा",
+ "translate-ext-url": "<hr />वेबसाइट: $1",
+ "translate-optional": "(वैकल्पिक)",
+ "translate-ignored": "(दुर्लक्षित)",
+ "translate-edit-title": "\"$1\"चे संपादन",
+ "translate-edit-definition": "संदेश व्याख्या",
+ "translate-edit-translation": "भाषांतर",
+ "translate-edit-contribute": "योगदान करा",
+ "translate-edit-no-information": "<em>या संदेशाकरिता कोणतेही नोंदीकरण(डॉक्यूमेंटेशन) नाही. हा संदेश कुठे आणि कसा वापरला आहे हे तुम्हाला ठाऊक असेल तर, या पानाचे नोंदीकरण(डॉक्यूमेंटेशन) करून तुम्ही इतर भाषांतरकारांना मदत करू शकता.</em>",
+ "translate-edit-information": "($1) या संदेशाबद्दल माहिती",
+ "translate-edit-in-other-languages": "इतर भाषांमधील संदेश",
+ "translate-edit-committed": "संकेतन प्रणालीमधील सध्याचे भाषांतरण",
+ "translate-edit-warnings": "अर्धवट भाषांतरांसाठीचे इशारे",
+ "translate-edit-tmsugs": "भाषांतर स्मृती मधून व यांत्रिक भाषांतरामधून सुचवण्या",
+ "translate-edit-tmmatch-source": "स्रोत मजकूराचे भाषांतर: $1",
+ "translate-edit-tmmatch": "$1% जुळते",
+ "translate-use-suggestion": "सध्याचे भाषांतराऐवजी ही सुचवणी टाका.",
+ "translate-edit-nopermission": "आपणास भाषांतरासाठी 'भाषांतर अधिकार' हवेत.",
+ "translate-edit-askpermission": "परवानगी घ्या",
+ "translate-magic-pagename": "वाढीव मीडियाविकि भाषांतर",
+ "translate-magic-module": "नियामक:",
+ "translate-magic-submit": "ओढा",
+ "translate-magic-cm-export": "निर्यात",
+ "translate-magic-nothing-to-export": "निर्यात करण्याजोगे येथे काहीही नाही.",
+ "translate-magic-cm-to-be": "अपेक्षित",
+ "translate-magic-cm-current": "सद्य",
+ "translate-magic-cm-original": "मूळ",
+ "translate-magic-cm-comment": "अभिप्राय:",
+ "translate-magic-cm-save": "जतन करा",
+ "translate-magic-cm-updatedusing": "[[Special:AdvancedTranslate|{{int:Translate-magic-pagename}}]] वापरून बदलले",
+ "translate-magic-cm-savefailed": "जतन अयशस्वी",
+ "translate-magic-special": "विशेष पान - टोपणनावे",
+ "translate-magic-words": "जादूई शब्द",
+ "translate-magic-namespace": "नामविश्व नावे",
+ "translate-magic-notsaved": "आपले संपादन जतन करण्यात आले नाही!",
+ "translate-magic-errors": "कृपया भाषांतरात खालील {{PLURAL:$1|चूक|चूका}} ठिकठाक करा:",
+ "translate-magic-saved": "आपण केलेले बदल यशस्वीरित्या जतन केल्या गेले.",
+ "translate-checks-parameters": "खालील {{PLURAL:$2|प्राचल वापरला नाही|प्राचल वापरलेले नाहीत}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-parameters-unknown": "खालील {{PLURAL:$2|प्राचल अनोळखी आहे|प्राचले अनोळखी आहेत}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-balance": "यात चुकिचे {{PLURAL:$2|गोल कंसचिन्ह आहे}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links": "खालील {{PLURAL:$2|दुवा त्रासदायक आहे|$2 दुवे त्रासदायक आहेत}}:\n\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links-missing": "खालील {{PLURAL:$2|दुवा अनुपलब्ध आहे|$2 दुवे अनुपलब्ध आहेत}} :\n\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-xhtml": "कृपया खालील {{PLURAL:$2|खूणपताका}} योग्य खूणपताकेने बदला:\n\n\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-plural": "व्याख्येत <nowiki>{{PLURAL:}}</nowiki>चा वापर आहे पण भाषांतरात नाही.",
+ "translate-checks-plural-forms": "<nowiki>{{PLURAL:}}</nowiki> {{PLURAL:$1|एक फॉर्म|$1 फॉर्म्स}}परंतु, {{PLURAL:$2|फक्त एकच फॉर्म सहाय्यीकृत आहे|$2 फॉर्म्स सहाय्यीकृत आहेत }} ( 0= व 1= फॉर्म्स वगळून).",
+ "translate-checks-plural-dupe": "<nowiki>{{PLURAL:}}</nowiki> ला शेवटी द्विरुक्त फॉर्म्स आहेत.<nowiki>{{PLURAL:$1|sheep|sheep}}</nowiki> ला <nowiki>{{PLURAL:$1|sheep}}</nowiki>असे लिहिल्या जावयास हवे.",
+ "translate-checks-pagename": "व्याख्येपासून नामविश्व बदलले आहे",
+ "translate-checks-format": "हे भाषांतर व्याख्येचे अनुपालन करीत नाही किंवा त्यात अवैध वाक्यरचना आहे:$1",
+ "translate-checks-escape": "केवळ अनवधानाने खालील सुटलेले असू शकतात:<strong>$1</strong>",
+ "translate-checks-parametersnotequal": "प्राचल मोजणी {{PLURAL:$1|$1}} आहे; {{PLURAL:$2|$2}} हवी.",
+ "translate-checks-malformed": "<nowiki>$1</nowiki> मध्ये विकृती आहे.",
+ "translate-checks-fudforum-syntax": "या प्रकल्पात <nowiki>$2</nowiki> ऐवजी <nowiki>$1</nowiki>वापरा.",
+ "translate-pref-nonewsletter": "मला विपत्राद्वारे बातमीपत्र पाठवू नका",
+ "translate-pref-editassistlang": "सहायक भाषा:",
+ "prefs-translate": "भाषांतर पर्याय",
+ "translate-pref-editassistlang-help": "ही स्वल्पविरामाद्वारे विभाजित केलेली भाषासंकेतांची यादी आहे.\n\nआपण भाषांतर करीत असतांना,संदेशाचे या भाषेतील भाषांतर दाखविल्या जाते.\n\nयातील अविचल भाषा आपल्या मूळ भाषेवर आधारीत आहेत.",
+ "translate-pref-editassistlang-bad": "यादीत अवैध भाषासंकेत:\n<nowiki>$1</nowiki>.",
+ "right-translate": "भाषांतर इंटरफेस वापरून भाषांतर करा",
+ "right-translate-manage": "संदेशगटांचे व्यवस्थापन करा",
+ "action-translate-manage": "संदेशगटांचे व्यवस्थापन करा",
+ "right-translate-import": "जालविरहीत भाषांतरे आयात करा",
+ "action-translate-import": "जालविरहीत भाषांतरे आयात करा",
+ "right-translate-messagereview": "भाषांतरांचे पुनरावलोकन",
+ "right-translate-groupreview": "संदेश गटांची कार्यओघ स्थिती बदला",
+ "translate-rc-translation-filter": "भाषांतरांना गाळणी लावा:",
+ "translate-rc-translation-filter-no": "काहीच करू नका",
+ "translate-rc-translation-filter-only": "फक्त भाषांतरे दाखवा",
+ "translate-rc-translation-filter-filter": "भाषांतरांना गाळणी लावा",
+ "translate-rc-translation-filter-site": "फक्त संकेतस्थळाच्या संदेशातील बदल",
+ "translationstats": "भाषांतर सांख्यिकी",
+ "translate-stats-edits": "संपादने",
+ "translate-stats-users": "भाषांतरकार",
+ "translate-stats-registrations": "नोंदणीकृत",
+ "translate-stats-reviews": "पुनरावलोकने",
+ "translate-stats-reviewers": "पुनरावलोकक",
+ "translate-statsf-intro": "आपण सोपी सांख्यिकी या फॉर्मद्वारे निर्माण करू शकता.सर्व किंमतींना उच्च व निम्न मर्यादा आहेत.",
+ "translate-statsf-options": "आलेख पर्याय",
+ "translate-statsf-width": "रुंदी पिक्सेलमध्ये:",
+ "translate-statsf-height": "उंची पिक्सेलमध्ये:",
+ "translate-statsf-days": "कालावधी दिवसात:",
+ "translate-statsf-start": "सुरुवात दिनांक:",
+ "translate-statsf-scale": "कणमयता:",
+ "translate-statsf-scale-months": "महिने",
+ "translate-statsf-scale-weeks": "आठवडे",
+ "translate-statsf-scale-days": "दिवस",
+ "translate-statsf-scale-hours": "तास",
+ "translate-statsf-count": "माप:",
+ "translate-statsf-count-edits": "संपादनांची संख्या",
+ "translate-statsf-count-users": "सक्रिय भाषांतरकार",
+ "translate-statsf-count-registrations": "नविन सदस्य",
+ "translate-statsf-count-reviews": "भाषांतर पुनरावलोकन",
+ "translate-statsf-count-reviewers": "पुनरावलोकक",
+ "translate-statsf-language": "भाषा संकेतांची स्वल्पविरामाने वेगळी केलेली यादी:",
+ "translate-statsf-group": "गट संकेतांची स्वल्पविरामाने वेगळी केलेली यादी:",
+ "translate-statsf-submit": "झलक",
+ "translate-tag-category": "भाषांतरासाठीची पाने",
+ "translate-tag-page-desc": "विकिपान [[$2|$1]] चे भाषांतर.",
+ "translate-sidebar-alltrans": "इतर भाषांत",
+ "translations": "सर्व भाषांतरे",
+ "translations-summary": "सर्व उपलब्ध भाषांतरे दाखविण्यास, खाली त्या संदेशाचे नाव लिहा.",
+ "translate-translations-no-message": "\"$1\" हा भाषांतरासाठीचा संदेश नाही",
+ "translate-translations-none": "\"$1\" साठी काहीच भाषांतरे नाहीत",
+ "translate-translations-count": "{{PLURAL:$1|एक भाषांतर सापडले|$1 भाषांतरे सापडलीत}}.",
+ "translate-translations-fieldset-title": "संदेश",
+ "translate-translations-messagename": "नाव:",
+ "translate-translations-project": "प्रकल्प:",
+ "translate-translations-including-no-param": "उपपान प्राचलात एक वैध संदेश कळ नमूद करा",
+ "translate-translations-history-short": "एच",
+ "languagestats": "भाषेची सांख्यिकी",
+ "languagestats-summary": "हे पान एका भाषेसाठी असलेल्या सर्व संदेशगटांची सांख्यिकी दाखविते.",
+ "messagegroupstats-summary": "हे पान संदेश गटांची सांख्यिकी दर्शविते.",
+ "languagestats-stats-for": "$1 ($2) साठी भाषांतर सांख्यिकी.",
+ "languagestats-recenttranslations": "अलीकडील भाषांतरे",
+ "translate-langstats-incomplete": "या पानावरील काही सांख्यिकी अपूर्ण आहेत.अधिक सांख्यिकी मिळविण्यास या पानाचे पुनर्भारण करा.",
+ "translate-langstats-expand": "विस्तार करा",
+ "translate-langstats-collapse": "निपात करा",
+ "translate-langstats-expandall": "सर्वांचा विस्तार करा",
+ "translate-langstats-collapseall": "सर्वांचा निपात करा",
+ "translate-language-code": "भाषा संकेत (कोड)",
+ "translate-language-code-field-name": "भाषा संकेत (कोड):",
+ "translate-suppress-complete": "पूर्णपणे भाषांतरीत केलेले संदेश गट दाबा(सप्रेस)",
+ "translate-ls-noempty": "पूर्णपणे अभाषांतरीत संदेश गट दाबा(सप्रेस)",
+ "translate-language": "भाषा",
+ "translate-total": "संदेश",
+ "translate-untranslated": "अभाषांतरीत",
+ "translate-percentage-complete": "समाप्ती",
+ "translate-percentage-fuzzy": "कालबाह्य",
+ "translate-languagestats-overall": "सर्व संदेश गट एकत्रितपणे",
+ "translate-ls-submit": "सांख्यिकी दाखवा",
+ "translate-ls-column-group": "संदेश गट",
+ "translate-mgs-pagename": "संदेश गटांची सांख्यिकी",
+ "translate-mgs-fieldset": "दर्शविण्याचा पसंतीक्रम",
+ "translate-mgs-group": "संदेश गट:",
+ "translate-mgs-nocomplete": "भाषांतर पूर्ण झालेल्या भाषा दाखवू नका",
+ "translate-mgs-noempty": "काहीच भाषांतर नसलेल्या भाषा दाखवू नका",
+ "translate-mgs-submit": "सांख्यिकी दाखवा",
+ "translate-mgs-column-language": "भाषा",
+ "translate-mgs-totals": "सर्व भाषा एकत्रितपणे",
+ "translate-mgs-invalid-group": "नमूद केलेला गट $1 अस्तित्वात नाही.",
+ "translate-mgs-nothing": "विनंती केलेल्या सांख्यिकीबद्दल काहीच दर्शविण्याजोगे नाही.",
+ "supportedlanguages": "सहाय्यीकृत भाषा",
+ "supportedlanguages-summary": "हे पान {{SITENAME}}वरील, त्या भाषेत काम करीत असलेल्या भाषांतरकारासह,सर्व सहाय्यीकृत भाषा दाखविते.जेंव्हा एखाद्या भाषांतरकाराचे नाव जितके मोठे दिसते तितके त्याने जास्त संपादनांचे योगदान केलेले असते.त्यातील अधोरेषेचा रंग, येथे तो भाषांतरकार अलीकडे किती सक्रिय आहे हे दर्शवितो.",
+ "supportedlanguages-colorlegend": "रंगाचे विवरण:मागील भाषांतर $1 दिवसांपूर्वी.",
+ "supportedlanguages-translators": "{{PLURAL:$2|भाषांतरकार}}: $1",
+ "supportedlanguages-recenttranslations": "अलीकडील भाषांतरे",
+ "supportedlanguages-count": "$1 {{PLURAL:$1|भाषा}} एकुण.",
+ "supportedlanguages-activity": "$1: $2 {{PLURAL:$2|संपादन|संपादने}} शेवटचे संपादन $3 {{PLURAL:$3|दिवसापूर्वी|दिवसांपूर्वी}}",
+ "translate-save": "जतन करा($1)",
+ "translate-jssti-add": "यादीत जोडा",
+ "managemessagegroups": "संदेश गट व्यवस्थापन",
+ "translate-smg-notallowed": "आपणास हे क्रिया कार्य करण्याची परवानगी नाही.",
+ "translate-smg-nochanges": "प्रक्रिया करण्यास काहीच बदल नाहीत.",
+ "translate-smg-submit": "प्रक्रियेसाठी बदल सादर करा",
+ "translate-smg-submitted": "संदेश व्याख्या अद्यतन केलेल्या आहेत. बदल पृष्ठाआड प्रक्रियेअंतर्गत आहेत.",
+ "translate-smg-more": "हे बदल सादर केल्यावर प्रक्रिया करण्यास अधिक बदल राहतील.",
+ "translate-smg-left": "विकिमध्ये संदेशाचा आशय",
+ "translate-smg-right": "येणारे बदल",
+ "translate-manage-import-diff": "संदेश $1 | क्रिया: $2",
+ "translate-manage-import-new": "नवीन संदेश $1",
+ "translate-manage-import-deleted": "वगळलेला संदेश $1",
+ "translate-manage-action-import": "आयात करा",
+ "translate-manage-action-ignore": "दुर्लक्ष करा",
+ "translate-manage-nochanges": "या गटातील संदेशांच्या व्याख्येत काहीच बदल नाहीत.",
+ "translate-manage-nochanges-other": "या भाषेसाठी काहीच बदल नाहीत. गट तपशीलाकडे परत जाण्यास खालील दुवा वापरा.",
+ "translate-manage-inconsistent": "विनंतीत एकसंधपणा नाही. कृपया बदलासाठी तपासा व पुन्हा प्रयत्न करा.\nतपशील:$1.",
+ "translate-manage-toolong": "$1 चा जास्तीत जास्त प्रक्रिया काल{{PLURAL:$1|सेकंद}} पार झाला. कृपया, प्रक्रिया सुरू ठेवण्यास, या फॉर्मला पुन्हा सादर करा.",
+ "translate-manage-import-summary": "बाह्य स्रोतांतुन एक नविन आवृत्ती आयात करीत आहे",
+ "translate-manage-conflict-summary": "बाह्य स्रोतांतुन एक नविन आवृत्ती आयात करीत आहे.\nकृपया तपासा.",
+ "translate-manage-fuzzy-summary": "संदेश व्यख्या बदलली आहे",
+ "translate-manage-submit": "क्रियान्वयन",
+ "translate-manage-intro-other": "खाली $1 भाषेतील झालेल्या बदलांची यादी आहे.कृपया या बदलांचे पुनर्विलोकन करा व प्रत्येक अद्यतनासाठी आपण घेउ इच्छिणारी क्रिया निवडा.\nजर आपण झालेले बदल टाळू इच्छित असाल तर ही क्रिया तात्पुरत्या स्वरुपाची आहे.",
+ "translate-manage-import-ok": "आयात केले:$1",
+ "translate-manage-import-done": "आयात पूर्ण!",
+ "importtranslations": "भाषांतरे आयात करा",
+ "translate-import-from-local": "स्थानिक संचिका अपभारण:",
+ "translate-import-load": "संचिकेचे प्रभारण करा",
+ "translate-import-err-ul-failed": "संचिका अपभारण अयशस्वी",
+ "translate-import-err-invalid-title": "दिलेले संचिकानाम<nowiki>$1</nowiki>अवैध होते.",
+ "translate-import-err-no-such-file": "संचिका<nowiki>$1</nowiki>अस्तित्वात नाही किंवा ती स्थानिकरित्या अपभारीत झालेली आहे.",
+ "translate-import-err-stale-group": "ज्या संदेशगटाची ही संचिका आहे तो अस्तित्वात नाही.",
+ "translate-js-summary": "सारांश:",
+ "translate-js-save": "जतन करा",
+ "translate-js-next": "जतन करुन मजकूर उघडा",
+ "translate-js-nonext": "हा या पानावरील शेवटचा संदेश होता.",
+ "translate-js-skip": "पुढच्यावर सरका",
+ "translate-js-save-failed": "जतन करणे अयशस्वी.या त्रूटीचा अहवाल पाठवा.",
+ "translate-js-history": "भाषांतर इतिहास",
+ "translate-js-support": "प्रश्न विचारा",
+ "translate-js-support-title": "जर या संदेशाच्या भाषांतरासाठी योग्य व पुरेशी माहिती येथे नसल्यास, मदतीची हाक द्या.",
+ "translate-js-support-unsaved-warning": "आपणापाशी, जतन न केलेली भाषांतरे आहेत.",
+ "translate-gs-code": "संकेत",
+ "translate-gs-score": "प्राप्तांक",
+ "translate-gs-multiple": "एकाधिक",
+ "translate-gs-count": "मोजणी",
+ "translate-gs-total": "एकूण",
+ "translate-gs-avgscore": "सरासरी प्राप्तांक",
+ "translate-documentation-language": "संदेश दस्ताऐवजीकरण",
+ "translate-searchprofile": "भाषांतरे",
+ "translate-searchprofile-tooltip": "सर्व भाषांतरात शोधा",
+ "translate-search-languagefilter": "भाषेनुसार गाळा:",
+ "translate-search-nofilter": "गाळणी नको",
+ "translate-messagereview-submit": "पुनर्विलोकित खूण करा",
+ "translate-messagereview-progress": "पुनर्विलोकित म्हणून खूण करीत आहे...",
+ "translate-messagereview-failure": "पुनर्विलोकित खूण करणे अयशस्वी:$1",
+ "translate-messagereview-done": "पुनरावलोकित",
+ "translate-messagereview-reviews": "{{PLURAL:$1|एका सदस्याने|$1 सदस्यांनी}} पुनरावलोकित",
+ "translate-messagereview-reviewswithyou": "{{PLURAL:$1|आपल्याद्वारे|$1 सदस्यांद्वारे(आपल्यासह)}}पुनरावलोकित",
+ "api-error-invalidrevision": "भाषांतर सापडले नाही",
+ "api-error-unknownmessage": "संदेश सापडला नाही",
+ "api-error-fuzzymessage": "भाषांतरावर fuzzy म्हणून खूण केलेली आहे",
+ "api-error-owntranslation": "आपण आपल्याच भाषांतरांवर पुनरावलोकित म्हणून खूण करु शकत नाही.",
+ "translate-messagereview-no-fuzzy": "Fuzzy भाषांतरांवर पुनरावलोकित म्हणून खूण करु शकत नाही.",
+ "translate-messagereview-no-own": "आपण आपल्याच भाषांतरांवर पुनरावलोकित म्हणून खूण करु शकत नाही.",
+ "translate-messagereview-doit": "या भाषांतरावर पुनरावलोकित म्हणून खूण करा.",
+ "log-name-translationreview": "भाषांतर पुनरावलोकन नोंदी",
+ "log-description-translationreview": "भाषांतरे व संदेश गटातील सर्व पुनरावलोककांच्या नोंदी.",
+ "group-translate-sandboxed": "अन-अनुमोदित भाषांतरकार",
+ "group-translate-sandboxed-member": "{{GENDER:$1|अन-अनुमोदित भाषांतरकार}}",
+ "translate-workflow-set-error-alreadyset": "विनंती केलेली स्थिती व सध्याची स्थिती सारखीच आहे.",
+ "translate-stats-workflow": "स्थिति",
+ "translate-workflowgroup-label": "कार्यओघ स्थिती",
+ "translate-dynagroup-recent-label": "अलीकडील भाषांतरे",
+ "translate-dynagroup-recent-desc": "हा संदेशगट या भाषेतील सर्व अलिकडील भाषांतरे दाखवितो.\n\nपुनर्विलोकन कार्यासाठी अधिक उपयोगी.",
+ "translate-dynagroup-additions-label": "अलीकडेच जोडलेले",
+ "translate-dynagroup-additions-desc": "या संदेशगटात नविन व बदललेले संदेश आहेत.",
+ "translate-dynagroup-by": "{{GENDER:$1|$1}} ने केलेली भाषांतरे",
+ "translate-dynagroup-byc": "{{GENDER:$1|$1}} ($2)ने केलेली भाषांतरे",
+ "translate-dynagroup-last": "{{GENDER:$1|$1}} ने केलेले शेवटचे बदल",
+ "translate-dynagroup-lastc": "{{GENDER:$1|$1}} ($2)ने केलेले शेवटचे बदल",
+ "translate-gethelp": "साहाय्य",
+ "translate-msggroupselector-projects": "संदेश गट",
+ "translate-msggroupselector-search-placeholder": "गट शोधा",
+ "translate-msggroupselector-search-all": "सर्व",
+ "translate-msggroupselector-search-recent": "अलीकडील",
+ "translate-msggroupselector-view-subprojects": "$1 {{PLURAL:$1|उपगट}}",
+ "tux-languageselector": "या भाषेत भाषांतर करा",
+ "tux-tab-all": "सर्व",
+ "tux-tab-untranslated": "अभाषांतरीत",
+ "tux-tab-outdated": "कालबाह्य",
+ "tux-tab-translated": "भाषांतरीत",
+ "tux-tab-unproofread": "अपुनरावलोकीत",
+ "tux-edit": "संपादन करा",
+ "tux-status-optional": "वैकल्पिक",
+ "tux-status-fuzzy": "कालबाह्य",
+ "tux-status-proofread": "पुनरावलोकित",
+ "tux-status-translated": "भाषांतरीत",
+ "tux-status-saving": "जतन करीत आहे...",
+ "tux-status-unsaved": "जतन न केलेले",
+ "tux-editor-placeholder": "आपली भाषांतरे",
+ "tux-editor-paste-original-button-label": "स्रोत मजकूर डकवा",
+ "tux-editor-discard-changes-button-label": "बदल हटवा",
+ "tux-editor-save-button-label": "भाषांतर जतन करा",
+ "tux-editor-skip-button-label": "पुढच्यावर सरका",
+ "tux-editor-cancel-button-label": "रद्द करा",
+ "tux-editor-confirm-button-label": "भाषांतर निश्चिती",
+ "tux-editor-shortcut-info": "जतन करण्यास \"$1\" टिचका किंवा पुढिल संदेशावर सरकण्यासाठी \"$2\" टिचका",
+ "tux-editor-edit-desc": "दस्ताऐवजीकरण संपादा",
+ "tux-editor-add-desc": "दस्ताऐवजीकरण जोडा",
+ "tux-editor-suggestions-title": "सूचना",
+ "tux-editor-in-other-languages": "इतर भाषांत",
+ "tux-editor-need-more-help": "अधिक मदत हवी?",
+ "tux-editor-ask-help": "अधिक माहिती विचारा",
+ "tux-editor-tm-match": "$1% जुळते",
+ "tux-warnings-more": "{{PLURAL:$1|$1 अधिक}}",
+ "tux-warnings-hide": "लपवा",
+ "tux-editor-save-failed": "भषांतर जतन करणे अयशस्वी:$1",
+ "tux-editor-n-uses": "$1 {{PLURAL:$1|वेळी}} वापरले",
+ "tux-editor-message-desc-more": "अधिक बघा",
+ "tux-editor-message-desc-less": "कमी बघा",
+ "tux-editor-clear-translated": "भाषांतरीत लपवा",
+ "tux-editor-proofreading-mode": "पुनरावलोकन",
+ "tux-editor-translate-mode": "यादी",
+ "tux-editor-proofreading-hide-own-translations": "आपली भाषांतरे लपवा",
+ "tux-editor-proofreading-show-own-translations": "आपली भाषांतरे दाखवा",
+ "tux-proofread-action-tooltip": "पुनर्विलोकित खूण करा",
+ "tux-proofread-edit-label": "संपादन करा",
+ "tux-editor-page-mode": "पान",
+ "tux-editor-outdated-warning": "या भाषांतरास अद्यतन करण्याची गरज आहे.",
+ "tux-editor-outdated-warning-diff-link": "फरक दाखवा",
+ "tux-editor-doc-editor-placeholder": "संदेश दस्ताऐवजीकरण",
+ "tux-editor-doc-editor-save": "दस्तऐवजीकरण जतन करा",
+ "tux-editor-doc-editor-cancel": "रद्द करा",
+ "tux-messagetable-more-messages": "$1 अधिक {{PLURAL:$1|संदेश}}",
+ "tux-messagetable-loading-messages": "{{PLURAL:$1|संदेशाचे|संदेशांचे}} प्रभारण करीत आहे...",
+ "tux-message-filter-placeholder": "यादी गाळा",
+ "tux-message-filter-result": "\"$2\" साठी $1 {{PLURAL:$1|निकाल}} सापडले",
+ "tux-message-filter-advanced-button": "प्रगत शोध",
+ "tux-message-filter-optional-messages-label": "ऐच्छिक संदेश",
+ "tux-proofread-translated-by-self": "आपण भाषांतरीत केलेले",
+ "tux-empty-list-all": "हा संदेश गट रिकामा आहे",
+ "tux-empty-list-all-guide": "भाषांतरासाठी दुसरा संदेश गट निवडा",
+ "tux-translate-page-no-such-group": "<strong>नमूद केलेला गट अस्तित्वात नाही.</strong> वेगळा संदेशगट निवडा.",
+ "tux-empty-list-translated": "भाषांतरीत संदेश नाहीत",
+ "tux-empty-list-translated-guide": "आपण भाषांतरास मदत करु शकता",
+ "tux-empty-list-translated-action": "भाषांतर करा",
+ "tux-empty-no-messages-to-display": "दाखविण्याजोगे काहीच संदेश नाहीत.",
+ "tux-empty-there-are-optional": "यादीत न दाखविलेले काही ऐच्छिक संदेश आहेत",
+ "tux-empty-show-optional-messages": "ऐच्छिक संदेश दाखवा",
+ "tux-empty-no-outdated-messages": "कालबाह्य संदेश नाहीत.",
+ "tux-empty-nothing-to-proofread": "पुनर्विलोकनासाठी काहीच नाही",
+ "tux-empty-you-can-help-providing": "आपण नविन भाषांतरे देण्यासाठी मदत करु शकता",
+ "tux-empty-nothing-new-to-proofread": "पुनर्विलोकनासाठी नविन काहीच नाही",
+ "tux-empty-you-can-review-already-proofread": "आपण इतरांद्वारे पुनर्विलोकित संदेशांचे पुन्हा पुनर्विलोकन करु शकता.",
+ "tux-empty-list-other": "भाषांतरासाठी काहीच नाही",
+ "tux-empty-list-other-guide": "आपण सध्याच्या भाषांतरांच्या पुनर्विलोकनासाठी मदत करु शकता",
+ "tux-empty-list-other-action": "भाषांतरांचे पुनरावलोकन",
+ "tux-empty-list-other-link": "सर्व संदेश दाखवा",
+ "tux-editor-close-tooltip": "बंद करा",
+ "tux-editor-expand-tooltip": "विस्तार करा",
+ "tux-editor-collapse-tooltip": "निपात करा",
+ "tux-editor-message-tools-history": "इतिहास",
+ "tux-editor-message-tools-translations": "सर्व भाषांतरे",
+ "tux-editor-loading": "प्रभारण करीत आहे...",
+ "translate-search-more-languages-info": "$1 अधिक{{PLURAL:$1|भाषा}}",
+ "translate-statsbar-tooltip": "$1% भाषांतरीत, $2% पुनर्विलोकित",
+ "translate-statsbar-tooltip-with-fuzzy": "$1% भाषांतरीत, $2% पुनर्विलोकित, $3% कालबाह्य",
+ "translate-search-more-groups-info": "$1 अधिक{{PLURAL:$1|गट}}"
+}
diff --git a/MLEB/Translate/i18n/core/ms.json b/MLEB/Translate/i18n/core/ms.json
new file mode 100644
index 00000000..4464bc55
--- /dev/null
+++ b/MLEB/Translate/i18n/core/ms.json
@@ -0,0 +1,388 @@
+{
+ "@metadata": {
+ "authors": [
+ "Anakmalaysia",
+ "Aurora",
+ "Emrrans",
+ "Kurniasan",
+ "Pizza1016"
+ ]
+ },
+ "translate": "Terjemah",
+ "translate-desc": "[[Special:Translate|Laman khas]] untuk menterjemah MediaWiki dan lain-lain",
+ "translate-taskui-view": "Tunjukkan semua mesej",
+ "translate-taskui-untranslated": "Tunjukkan mesej yang belum diterjemahkan",
+ "translate-taskui-optional": "Tunjukkan mesej tidak wajib.",
+ "translate-taskui-acceptqueue": "Hanya mesej yang boleh saya tandai sebagai disemak",
+ "translate-taskui-reviewall": "Semak semua terjemahan",
+ "translate-taskui-export-to-file": "Eksport dalam format natif",
+ "translate-taskui-export-as-po": "Eksport untuk penterjemahan luar talian",
+ "translate-taction-translate": "Terjemah",
+ "translate-taction-proofread": "Semak",
+ "translate-taction-lstats": "Statistik bahasa",
+ "translate-taction-mstats": "Statistik kumpulan mesej",
+ "translate-taction-export": "Eksport",
+ "translate-taction-disabled": "Tindakan ini tidak dibenarkan di wiki ini.",
+ "translate-page-no-such-language": "Bahasa yang dinyatakan tidak sah.",
+ "translate-page-no-such-group": "Kumpulan yang dinyatakan tidak sah.",
+ "translate-page-disabled": "Penterjemahan kepada bahasa ini dalam kumpulan ini telah dimatikan.\nSebab:\n\n<em>$1</em>",
+ "translate-language-disabled": "Terjemahan kepada bahasa ini tidak dibenarkan.",
+ "translate-page-settings-legend": "Tetapan",
+ "translate-page-group": "Kumpulan",
+ "translate-page-language": "Bahasa",
+ "translate-page-limit": "Had",
+ "translate-page-limit-option": "$1 mesej selaman",
+ "translate-submit": "Ambil",
+ "translate-page-navigation-legend": "Pandu arah",
+ "translate-page-showing": "Menunjukkan $1 hingga $2 daripada $3 mesej.",
+ "translate-page-showing-all": "$1 mesej dipaparkan.",
+ "translate-page-showing-none": "Tiada mesej untuk ditunjukkan.",
+ "translate-page-paging-links": "[ $1 ] [ $2 ]",
+ "translate-next": "Laman berikutnya",
+ "translate-prev": "Laman sebelumnya",
+ "translate-page-description-legend": "Perihal kumpulan",
+ "translate-page-description-hasoptional": "Kumpulan mesej ini mengandungi mesej tidak wajib.\nMesej tidak wajib hanya wajar diterjemahkan jika bahasa anda mempunyai keperluan tertentu\nseperti tidak menggunakan jarak atau mengalih huruf kata nama khas. $1",
+ "translate-page-description-hasoptional-open": "Tunjukkan mesej tidak wajib.",
+ "translate-page-edit": "sunting",
+ "translate-ext-url": "<hr />Tapak web: $1",
+ "translate-optional": "(tidak wajib)",
+ "translate-ignored": "(tidak diendahkan)",
+ "translate-edit-title": "Sunting \"$1\"",
+ "translate-edit-definition": "Takrifan mesej",
+ "translate-edit-translation": "Terjemahan",
+ "translate-edit-contribute": "sumbangkan",
+ "translate-edit-no-information": "<em>Pesanan ini tidak mempunyai pendokumenan. Jika anda tahu di mana atau bagaimana pesanan ini digunakan, anda boleh membantu para penterjemah dengan menambahkan pendokumenan kepada pesanan ini.</em>",
+ "translate-edit-information": "Maklumat mesej ($1)",
+ "translate-edit-in-other-languages": "Mesej dalam bahasa lain",
+ "translate-edit-committed": "Penterjemahan terkini di dalam perisian",
+ "translate-edit-warnings": "Amaran penterjemahan tak lengkap",
+ "translate-edit-tmsugs": "Cadangan dari sistem ingatan penterjemahan",
+ "translate-edit-tmmatch-source": "Teks sumber terjemahan: $1",
+ "translate-edit-tmmatch": "$1% berpadan",
+ "translate-use-suggestion": "Ganti terjemahan semasa dengan cadangan ini.",
+ "translate-edit-nopermission": "Anda memerlukan hak penterjemahan untuk menterjemahkan mesej.",
+ "translate-edit-askpermission": "Dapatkan izin",
+ "translate-magic-pagename": "Terjemahan tambahan MediaWiki",
+ "translate-magic-help": "Anda boleh menterjemahkan alias laman khas, kata sakti dan nama ruang nama.\n\nAlias laman khas dan kata sakti boleh ada berbagai-bagai terjemahan.\nTerjemahan harus dipisahkan dengan tanda koma (,).\nRuang nama pula memerlukan satu terjemahan sahaja.\n\nUsaha menterjemahkan ruang nama perbincangan projek <code>$1 talk</code> boleh timbulnya kesulitan.\n<code>$1</code> diganti dengan nama tapak projek (cth: <code>{{ns:project_talk}}</code>).\nSeandainya didapati mustahil untuk membentuk ungkapan yang sah tanpa mengubah nama tapak dalam bahasa anda, sila hubungi kami di [[Support|Bantuan]].\n\nAnda perlu menjadi seorang penterjemah untuk menyimpan perubahan.\nPerubahan tidak disimpan sehingga anda mengklik butang Simpan di bawah.",
+ "translate-magic-module": "Modul:",
+ "translate-magic-submit": "Ambil",
+ "translate-magic-cm-export": "Eksport",
+ "translate-magic-nothing-to-export": "Tiada apa-apa untuk dieksport.",
+ "translate-magic-cm-to-be": "Menjadi",
+ "translate-magic-cm-current": "Semasa",
+ "translate-magic-cm-original": "Asal",
+ "translate-magic-cm-comment": "Ulasan:",
+ "translate-magic-cm-save": "Simpan",
+ "translate-magic-cm-updatedusing": "Dikemaskini dengan [[Special:AdvancedTranslate|{{int:Translate-magic-pagename}}]]",
+ "translate-magic-cm-savefailed": "Tidak dapat disimpan",
+ "translate-magic-special": "Alias laman khas",
+ "translate-magic-words": "Kata sakti",
+ "translate-magic-namespace": "Nama ruang nama",
+ "translate-magic-notsaved": "Suntingan anda belum disimpan!",
+ "translate-magic-errors": "Sila betulkan {{PLURAL:$1|kesilapan|kesilapan-kesilapan}} terjemahan yang berikut:",
+ "translate-magic-saved": "Pengubahan anda berjaya disimpan.",
+ "translate-checks-parameters": "{{PLURAL:$2|Parameter|Parameter-parameter}} berikut tidak digunakan:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-parameters-unknown": "{{PLURAL:$2|Parameter|Parameter-parameter}} berikut tidak dikenali:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-balance": "Bilangan {{PLURAL:$2|tanda kurungan|tanda kurungan}} tidak sekata:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links": "{{PLURAL:$2|Pautan|$2 pautan}} yang berikut ada masalah:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links-missing": "{{PLURAL:$2|Pautan|$2 pautan}} yang berikut tidak dijumpai:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-xhtml": "Sila ganti {{PLURAL:$2|tag|tag-tag}} berikut dengan yang betul:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-plural": "Takrifan menggunakan <nowiki>{{PLURAL:}}</nowiki> tapi terjemahan pula tidak.",
+ "translate-checks-plural-forms": "<nowiki>{{PLURAL:}}</nowiki> diberi {{PLURAL:$1|satu bentuk|$1 bentuk}} tetapi {{PLURAL:$2|hanya satu bentuk|$2 bentuk}} disokong (kecuali bentuk 0= dad 1=).",
+ "translate-checks-plural-dupe": "<nowiki>{{PLURAL:}}</nowiki> mempunyai bentuk pendua di hujung. <nowiki>{{PLURAL:$1|sheep|sheep}}</nowiki> sepatutnya ditulis sebagai <nowiki>{{PLURAL:$1|sheep}}</nowiki>.",
+ "translate-checks-pagename": "Ruang nama diubah dari takrifan",
+ "translate-checks-format": "Terjemahan ini tidak mematuhi takrifan atau sintaksnya tidak sah: $1",
+ "translate-checks-escape": "Lepasan-lepasan berikut mungkin dibuat secara tidak sengaja: <strong>$1</strong>",
+ "translate-checks-parametersnotequal": "Kiraan parameter ialah {{PLURAL:$1|$1}}; sepatutnya {{PLURAL:$2|$2}}.",
+ "translate-checks-malformed": "<nowiki>$1</nowiki> cacat.",
+ "translate-checks-fudforum-syntax": "Usah gunakan <nowiki>$2</nowiki>, gunakan <nowiki>$1</nowiki> di projek ini.",
+ "translate-pref-nonewsletter": "Jangan hantar surat berita e-mel kepada saya",
+ "translate-pref-editassistlang": "Bahasa pembantu:",
+ "prefs-translate": "Pilihan penterjemahan",
+ "translate-pref-editassistlang-help": "Senarai kod bahasa terpisah koma.\nTerjemahan mesej dalam bahasa-bahasa ini ditunjukkan apabila anda menterjemah.\nSenarai bahasa asali bergantung pada bahasa anda.",
+ "translate-pref-editassistlang-bad": "Kod bahasa tidak sah dalam senarai:\n<nowiki>$1</nowiki>.",
+ "right-translate": "Menyunting dengan menggunakan antara muka penterjemahan",
+ "right-translate-manage": "Menguruskan kumpulan mesej",
+ "action-translate-manage": "menguruskan kumpulan mesej",
+ "right-translate-import": "Mengimport terjemahan luar talian",
+ "action-translate-import": "mengimport terjemahan luar talian",
+ "right-translate-messagereview": "Kaji semula terjemahan",
+ "right-translate-groupreview": "Mengubah keadaan alir kerja kumpulan mesej",
+ "translate-rc-translation-filter": "Tapis terjemahan:",
+ "translate-rc-translation-filter-no": "Tidak berbuat apa-apa",
+ "translate-rc-translation-filter-only": "Tunjukkan terjemahan sahaja",
+ "translate-rc-translation-filter-filter": "Tapiskan terjemahan",
+ "translate-rc-translation-filter-site": "Perubahan pada mesej tapak sahaja",
+ "translationstats": "Statistik terjemahan",
+ "translate-stats-edits": "Suntingan",
+ "translate-stats-users": "Penterjemah",
+ "translate-stats-registrations": "Pendaftaran",
+ "translate-stats-reviews": "Kajian semula",
+ "translate-stats-reviewers": "Pengkaji semula",
+ "translate-statsf-intro": "Anda boleh menjana statistik ringkas dengan borang ini.\nSemua nilai ada had maksimum dan minimun.",
+ "translate-statsf-options": "Pilihan graf",
+ "translate-statsf-width": "Lebar (piksel):",
+ "translate-statsf-height": "Tinggi (piksel):",
+ "translate-statsf-days": "Tarikh bermula:",
+ "translate-statsf-start": "Tarikh bermula:",
+ "translate-statsf-scale": "Kebutiran:",
+ "translate-statsf-scale-months": "Bulan",
+ "translate-statsf-scale-weeks": "Minggu",
+ "translate-statsf-scale-days": "Hari",
+ "translate-statsf-scale-hours": "Jam",
+ "translate-statsf-count": "Ukuran:",
+ "translate-statsf-count-edits": "Bilangan suntingan",
+ "translate-statsf-count-users": "Penterjemah aktif",
+ "translate-statsf-count-registrations": "Pengguna baru",
+ "translate-statsf-count-reviews": "Semakan terjemahan",
+ "translate-statsf-count-reviewers": "Pengkaji semula",
+ "translate-statsf-language": "Senarai kod bahasa yang diasingkan dengan tanda koma:",
+ "translate-statsf-group": "Senarai kod kumpulan yang diasingkan dengan tanda koma:",
+ "translate-statsf-submit": "Pralihat",
+ "translate-tag-category": "Laman yang boleh diterjemah",
+ "translate-tag-page-desc": "Terjemahan laman wiki [[$2|$1]].",
+ "translate-sidebar-alltrans": "Dalam bahasa lain",
+ "translations": "Semua terjemahan",
+ "translations-summary": "Isikan nama mesej di bawah untuk memperlihatkan semua terjemahan yang disediakan.",
+ "translate-translations-no-message": "Mesej \"$1\" tidak boleh diterjemah.",
+ "translate-translations-none": "Tiada terjemahan untuk \"$1\".",
+ "translate-translations-count": "{{PLURAL:$1|satu terjemahan|$1 terjemahan}} dijumpai.",
+ "translate-translations-fieldset-title": "Mesej",
+ "translate-translations-messagename": "Nama:",
+ "translate-translations-project": "Projek:",
+ "translate-translations-including-no-param": "Sila nyatakan kunci mesej yang sah dalam parameter sublaman",
+ "translate-translations-history-short": "s",
+ "languagestats": "Statistik bahasa",
+ "languagestats-summary": "Laman ini menunjukkan statistik penterjemahan untuk semua kumpulan mesej dalam satu bahasa.",
+ "languagestats-stats-for": "Statistik penterjemahan kepada $1 ($2).",
+ "languagestats-recenttranslations": "terjemahan terbaru",
+ "translate-langstats-incomplete": "Sesetengah statistik di laman ini belum lengkap. Sila muatkan semula untuk mendapatkan lebih banyak statistik.",
+ "translate-langstats-expand": "kembangkan",
+ "translate-langstats-collapse": "lipat",
+ "translate-langstats-expandall": "kembangkan semua",
+ "translate-langstats-collapseall": "lipat semua",
+ "translate-language-code": "Kod bahasa",
+ "translate-language-code-field-name": "Kod bahasa:",
+ "translate-suppress-complete": "Sorokkan kumpulan mesej yang diterjemah sepenuhnya",
+ "translate-ls-noempty": "Sorokkan kumpulan mesej yang langsung tidak diterjemah",
+ "translate-language": "Bahasa",
+ "translate-total": "Mesej",
+ "translate-untranslated": "Belum diterjemahkan",
+ "translate-percentage-complete": "Takat kelengkapan",
+ "translate-percentage-fuzzy": "Lapuk",
+ "translate-languagestats-overall": "Semua kumpulan mesej sekali",
+ "translate-ls-submit": "Tunjukkan statistik",
+ "translate-ls-column-group": "Kumpulan mesej",
+ "translate-mgs-pagename": "Statistik kumpulan mesej",
+ "translate-mgs-fieldset": "Keutamaan paparan",
+ "translate-mgs-group": "Kumpulan mesej:",
+ "translate-mgs-nocomplete": "Jangan paparkan bahasa yang sudah siap diterjemahkan",
+ "translate-mgs-noempty": "Jangan paparkan bahasa yang tiada terjemahan langsung",
+ "translate-mgs-submit": "Tunjukkan statistik",
+ "translate-mgs-column-language": "Bahasa",
+ "translate-mgs-totals": "Semua bahasa sekali",
+ "translate-mgs-invalid-group": "Kumpulan yang dinyatakan, $1 tidak wujud.",
+ "translate-mgs-nothing": "Statistik yang diminta itu tiada apa untuk ditunjukkan.",
+ "supportedlanguages": "Bahasa yang disokong",
+ "supportedlanguages-summary": "Laman ini menunjukkan senarai semua bahasa yang disokong oleh {{SITENAME}},\nbersama dengan nama-nama para penterjemah yang mengusahakan bahasa itu.\nSemakin besar nama penterjemah, semakin banyak suntingan yang disumbangkannya.\nWarna garis bawah menunjukkan betapa barunya seseorang penterjemah giat di sini.",
+ "supportedlanguages-colorlegend": "Petunjuk untuk warna: Terjemahan terakhir pada $1 hari yang lalu.",
+ "supportedlanguages-portallink": "[$1] $2 - $3",
+ "supportedlanguages-portallink-nocldr": "[$1] $2",
+ "supportedlanguages-translators": "{{PLURAL:$2|Penterjemah|Penterjemah}}: $1",
+ "supportedlanguages-recenttranslations": "terjemahan terbaru",
+ "supportedlanguages-count": "Sejumlah $1 bahasa.",
+ "supportedlanguages-activity": "$1: $2 suntingan - suntingan terakhir pada $3 hari lalu",
+ "translate-save": "Simpan ($1)",
+ "translate-jssti-add": "Tambahkan kepada senarai",
+ "managemessagegroups": "Pengurusan kumpulan mesej",
+ "translate-smg-notallowed": "Anda tidak dibenarkan untuk melaksanakan tindakan ini.",
+ "translate-smg-nochanges": "Tiada perubahan pada proses.",
+ "translate-smg-submit": "Serahkan perubahan untuk diproses",
+ "translate-smg-submitted": "Takrifan mesej telah dikemaskinikan. Perubahan sedang diproses di latar belakang.",
+ "translate-smg-more": "Akan terdapat lebih banyak perubahan untuk diproses setelah suntingan-suntingan ini diserahkan.",
+ "translate-smg-left": "Kandungan pesanan dalam wiki",
+ "translate-smg-right": "Perubahan baru",
+ "translate-manage-import-diff": "Mesej $1 | Tindakan: $2",
+ "translate-manage-import-new": "Mesej baru ($1)",
+ "translate-manage-import-deleted": "Mesej yang dihapuskan $1",
+ "translate-manage-action-import": "Import",
+ "translate-manage-action-conflict": "Import dan perlu disemak",
+ "translate-manage-action-ignore": "Abaikan",
+ "translate-manage-action-fuzzy": "Terjemahan yang diimport dan memerlukan semakan",
+ "translate-manage-nochanges": "Tiada perubahan dalam takrifan mesej untuk kumpulan ini.",
+ "translate-manage-nochanges-other": "Tiada perubahan untuk bahasa ini.\nGunakan pautan di bawah untuk kembali ke paparan butiran kumpulan.",
+ "translate-manage-inconsistent": "Ketakkonsistenan dikesan dalam permohonan.\nSila semak dan buat perubahan dan cuba lagi.\nButiran: $1.",
+ "translate-manage-toolong": "Tempoh pemprosesan maksimum $1 saat dilampaui.\nSila serahkan semula borang itu untuk terus memproses.",
+ "translate-manage-import-summary": "Mengimport versi baru dari sumber luaran",
+ "translate-manage-conflict-summary": "Mengimport versi baru dari sumber luaran.\nSila semak.",
+ "translate-manage-fuzzy-summary": "Takrifan mesej telah diubah",
+ "translate-manage-submit": "Laksanakan",
+ "translate-manage-intro-other": "Berikut ialah senarai perubahan dalam bahasa $1.\nSila semak perubahan dan pilih tindakan yang anda hendak lakukan untuk setiap kemaskini.\nJika anda memilih untuk mengabaikan perubahan, maka tindakan ini hanya sementara.",
+ "translate-manage-import-ok": "Diimport: $1",
+ "translate-manage-import-done": "Pengimportan selesai!",
+ "importtranslations": "Import terjemahan",
+ "translate-import-from-local": "Muat naik fail setempat:",
+ "translate-import-load": "Muatkan fail",
+ "translate-import-err-dl-failed": "Fail tidak dapat diambil:\n$1",
+ "translate-import-err-ul-failed": "Muat naik fail tidak berjaya",
+ "translate-import-err-invalid-title": "Nama fail yang diberikan, <nowiki>$1</nowiki> tidak sah.",
+ "translate-import-err-no-such-file": "Fail <nowiki>$1</nowiki> tidak wujud atau telah dimuat naik secara setempat.",
+ "translate-import-err-stale-group": "Kumpulan mesej bagi fail ini tidak wujud.",
+ "translate-import-err-no-headers": "Fail ini bukan fail Gettext yang dibentuk dengan betul dalam format sambungan Translate:\nKumpulan dan bahasa tidak dapat ditentukan daripada pengatas fail.",
+ "translate-import-err-warnings": "Fail ini tidak dibentuk dengan betul.\nPastikan editor anda tidak menguggurkan medan msgctxt.\nButiran: $1",
+ "translate-js-summary": "Ringkasan:",
+ "translate-js-save": "Simpan",
+ "translate-js-next": "Simpan dan buka yang seterusnya",
+ "translate-js-nonext": "Inilah mesej terakhir di laman ini.",
+ "translate-js-skip": "Langkau ke mesej seterusnya",
+ "translate-js-save-failed": "Gagal disimpan. Sila laporkan ralat ini.",
+ "translate-js-history": "Sejarah penterjemahan",
+ "translate-js-support": "Tanyakan soalan",
+ "translate-js-support-title": "Minta tolong kalau tak cukup maklumat untuk menterjemahkan mesej ini dengan betul.",
+ "translate-js-support-unsaved-warning": "Terdapat terjemahan yang belum disimpan.",
+ "translate-gs-pos": "Ked.",
+ "translate-gs-code": "Kod",
+ "translate-gs-continent": "Benua",
+ "translate-gs-speakers": "Penutur",
+ "translate-gs-score": "Skor",
+ "translate-gs-multiple": "Pelbagai",
+ "translate-gs-count": "Bilangan",
+ "translate-gs-total": "Jumlah",
+ "translate-gs-avgscore": "Purata skor",
+ "translate-documentation-language": "Pendokumenan pesanan",
+ "translate-searchprofile": "Terjemahan",
+ "translate-searchprofile-tooltip": "Cari dari semua terjemahan",
+ "translate-search-languagefilter": "Tapis mengikut bahasa:",
+ "translate-search-nofilter": "Jangan tapis",
+ "translate-messagereview-submit": "Tanda sebagai disemak",
+ "translate-messagereview-progress": "Menanda sebagai disemak...",
+ "translate-messagereview-failure": "Gagal menanda sebagai disemak: $1",
+ "translate-messagereview-done": "Disemak",
+ "translate-messagereview-reviews": "Disemak oleh {{PLURAL:$1|seorang|$1 orang}} pengguna",
+ "translate-messagereview-reviewswithyou": "Disemak oleh {{PLURAL:$1|anda|$1 orang pengguna, termasuk anda}}",
+ "api-error-invalidrevision": "Terjemahan tidak dijumpai",
+ "api-error-unknownmessage": "Mesej tidak dijumpai",
+ "api-error-fuzzymessage": "Terjemahan ditandai sebagai kabur",
+ "api-error-owntranslation": "Anda tidak boleh menanda terjemahan sendiri sebagai disemak.",
+ "translate-messagereview-no-fuzzy": "Terjemahan kabur tidak boleh ditanda sebagai disemak.",
+ "translate-messagereview-no-own": "Anda tidak boleh menanda terjemahan sendiri sebagai disemak.",
+ "translate-messagereview-doit": "Tanda terjemahan ini sebagai disemak.",
+ "log-name-translationreview": "Log semakan terjemahan",
+ "log-description-translationreview": "Log bagi semua kajian semula pada terjemahan dan kumpulan mesej.",
+ "logentry-translationreview-message": "$1 telah {{GENDER:$2|menyemak}} terjemahan $3",
+ "logentry-translationreview-group": "$1 telah {{GENDER:$2|mengubah}} status terjemahan $4 di $3 daripada $6 kepada $7",
+ "group-translate-sandboxed": "Penterjemah yang belum diluluskan",
+ "group-translate-sandboxed-member": "{{GENDER:$1|penterjemah yang belum diterjemahkan}}",
+ "right-translate-sandboxmanage": "Menguruskan pengguna-pengguna dalam kotak pasir",
+ "action-translate-sandboxmanage": "menguruskan pengguna-pengguna dalam kotak pasir",
+ "right-translate-sandboxaction": "Melaksanakan tindakan-tindakan yang disenaraiputihkan untuk pengguna yang dikotakpasirkan",
+ "action-translate-sandboxaction": "melaksanakan tindakan-tindakan yang disenaraiputihkan untuk pengguna yang dikotakpasirkan",
+ "translate-workflow-state-": "(belum ditetapkan)",
+ "translate-workflowstatus": "Status: $1",
+ "translate-workflow-set-do": "Tetapkan",
+ "translate-workflow-set-doing": "Tetapan sedang dibuat...",
+ "translate-workflow-set-done": "Beres!",
+ "translate-workflow-set-error-alreadyset": "Keadaan yang dipohon adalah serupa dengan keadaan semasa.",
+ "translate-workflow-autocreated-summary": "Pembuatan laman secara automatik untuk keadaan alir kerja $1",
+ "translate-stats-workflow": "Status",
+ "translate-workflowgroup-label": "Keadaan alir kerja",
+ "translate-workflowgroup-desc": "Kumpulan mesej ini menunjukkan keadaan alir kerja terjemahan.\nKeadaan-keadaan ini ditakrifkan dalam pembolehubah konfigurasi $wgTranslateWorkflowStates.",
+ "translate-dynagroup-recent-label": "Terjemahan terkini",
+ "translate-dynagroup-recent-desc": "Kumpulan mesej ini menunjukkan semua terjemahan terkini ke dalam bahasa ini.\nPaling berguna dengan tugas menyemak.",
+ "translate-dynagroup-additions-label": "Penambahan terbaru",
+ "translate-dynagroup-additions-desc": "Kumpulan mesej ini memaparkan mesej-mesej yang baru dan diubah.",
+ "translate-dynagroup-by": "Terjemahan dibuat oleh {{GENDER:$1|$1}}",
+ "translate-dynagroup-byc": "Terjemahan dibuat oleh {{GENDER:$1|$1}} ($2)",
+ "translate-dynagroup-last": "Perubahan terkini oleh {{GENDER:$1|$1}}",
+ "translate-dynagroup-lastc": "Perubahan terkini oleh {{GENDER:$1|$1}} ($2)",
+ "translate-gethelp": "Bantuan",
+ "translate-msggroupselector-projects": "Kumpulan mesej",
+ "translate-msggroupselector-search-placeholder": "Cari dalam kumpulan",
+ "translate-msggroupselector-search-all": "Semua",
+ "translate-msggroupselector-search-recent": "Terkini",
+ "translate-msggroupselector-view-subprojects": "$1 subkumpulan",
+ "tux-languageselector": "Terjemah ke",
+ "tux-tab-all": "Semua",
+ "tux-tab-untranslated": "Belum diterjemahkan",
+ "tux-tab-outdated": "Lapuk",
+ "tux-tab-translated": "Telah diterjemahkan",
+ "tux-tab-unproofread": "Belum disemak",
+ "tux-edit": "Sunting",
+ "tux-status-optional": "Pilihan",
+ "tux-status-fuzzy": "Lapuk",
+ "tux-status-proofread": "Disemak",
+ "tux-status-translated": "Diterjemahkan",
+ "tux-status-saving": "Menyimpan...",
+ "tux-status-unsaved": "Belum disimpan",
+ "tux-editor-placeholder": "Terjemahan anda",
+ "tux-editor-paste-original-button-label": "Tampalkan teks sumber",
+ "tux-editor-discard-changes-button-label": "Buang perubahan",
+ "tux-editor-save-button-label": "Simpan terjemahan",
+ "tux-editor-skip-button-label": "Langkau ke mesej seterusnya",
+ "tux-editor-cancel-button-label": "Batalkan",
+ "tux-editor-confirm-button-label": "Sahkan terjemahan",
+ "tux-editor-shortcut-info": "Tekan \"$1\" untuk menyimpan, \"$2\" untuk melangkau ke mesej seterusnya, atau \"$3\" untuk lain-lain pintasan.",
+ "tux-editor-edit-desc": "Sunting pendokumenan",
+ "tux-editor-add-desc": "Tambah pendokumenan",
+ "tux-editor-suggestions-title": "Cadangan",
+ "tux-editor-in-other-languages": "Dalam bahasa lain",
+ "tux-editor-need-more-help": "Perlukan lagi bantuan?",
+ "tux-editor-ask-help": "Minta keterangan lanjut",
+ "tux-editor-tm-match": "$1% berpadan",
+ "tux-warnings-more": "{{PLURAL:$1|$1 lagi}}",
+ "tux-warnings-hide": "sorokkan",
+ "tux-editor-save-failed": "Terjemahan tidak dapat disimpan: $1",
+ "tux-editor-n-uses": "digunakan $1 kali",
+ "tux-editor-message-desc-more": "Lihat yang lain",
+ "tux-editor-message-desc-less": "Lihat kurang",
+ "tux-editor-clear-translated": "Sorokkan terjemahan",
+ "tux-editor-proofreading-mode": "Semak",
+ "tux-editor-translate-mode": "Senarai",
+ "tux-editor-proofreading-hide-own-translations": "Sorokkan terjemahan anda",
+ "tux-editor-proofreading-show-own-translations": "Paparkan terjemahan anda",
+ "tux-proofread-action-tooltip": "Tanda sebagai disemak",
+ "tux-proofread-edit-label": "Sunting",
+ "tux-editor-page-mode": "Laman",
+ "tux-editor-outdated-warning": "Terjemahan ini mungkin perlu dikemaskinikan.",
+ "tux-editor-outdated-warning-diff-link": "Tunjukkan perbezaan",
+ "tux-editor-doc-editor-placeholder": "Pendokumenan pesanan",
+ "tux-editor-doc-editor-save": "Simpan pendokumenan",
+ "tux-editor-doc-editor-cancel": "Batalkan",
+ "tux-messagetable-more-messages": "$1 lagi mesej",
+ "tux-messagetable-loading-messages": "{{PLURAL:$1|Mesej|Mesej-mesej}} sedang dimuatkan...",
+ "tux-message-filter-placeholder": "Tapis senarai",
+ "tux-message-filter-result": "$1 hasil dijumpai untuk \"$2\"",
+ "tux-message-filter-advanced-button": "Carian lanjutan",
+ "tux-message-filter-optional-messages-label": "Mesej tak wajib",
+ "tux-proofread-translated-by-self": "Terjemahan anda",
+ "tux-empty-list-all": "Kumpulan mesej ini kosong",
+ "tux-empty-list-all-guide": "Pilih kumpulan mesej yang lain untuk terjemah",
+ "tux-translate-page-no-such-group": "<strong>Kumpulan yang dinyatakan tidak wujud.</strong> Pilih kumpulan mesej yang berbeza.",
+ "tux-empty-list-translated": "Tiada mesej yang diterjemahkan",
+ "tux-empty-list-translated-guide": "Anda boleh membantu menterjemah",
+ "tux-empty-list-translated-action": "Terjemah",
+ "tux-empty-no-messages-to-display": "Tiada mesej yang ingin dipaparkan.",
+ "tux-empty-there-are-optional": "Terdapat mesej tak wajib yang tidak dinyatakan dalam senarai",
+ "tux-empty-show-optional-messages": "Paparkan mesej tak wajib",
+ "tux-empty-no-outdated-messages": "Tiada mesej yang lapuk",
+ "tux-empty-nothing-to-proofread": "Tiada apa-apa untuk disemak",
+ "tux-empty-you-can-help-providing": "Anda boleh membantu dengan membekalkan terjemahan baru",
+ "tux-empty-nothing-new-to-proofread": "Tiada apa-apa yang baru untuk disemak",
+ "tux-empty-you-can-review-already-proofread": "Anda boleh menyemak hasil-hasil terjemahan yang sudah disemak oleh orang lain.",
+ "tux-empty-list-other": "Tiada apa-apa untuk diterjemahkan",
+ "tux-empty-list-other-guide": "Anda boleh membantu menyemak hasil-hasil terjemahan sedia ada",
+ "tux-empty-list-other-action": "Semak terjemahan",
+ "tux-empty-list-other-link": "Tunjukkan semua mesej",
+ "tux-editor-close-tooltip": "Tutup",
+ "tux-editor-expand-tooltip": "Buka",
+ "tux-editor-collapse-tooltip": "Lipat",
+ "tux-editor-message-tools-history": "Sejarah",
+ "tux-editor-message-tools-translations": "Semua terjemahan",
+ "tux-editor-loading": "Sedang dimuatkan...",
+ "translate-search-more-languages-info": "$1 lagi bahasa",
+ "translate-statsbar-tooltip": "$1% diterjemah, $2% disemak",
+ "translate-statsbar-tooltip-with-fuzzy": "$1% diterjemah, $2% disemak, $3 lapuk",
+ "translate-search-more-groups-info": "$1 lagi kumpulan",
+ "translate-ulsdep-title": "Ralat konfigurasi",
+ "translate-ulsdep-body": "Sambungan Translate bersandarkan [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:UniversalLanguageSelector sambugnan Universal Language Selector]."
+}
diff --git a/MLEB/Translate/i18n/core/mt.json b/MLEB/Translate/i18n/core/mt.json
new file mode 100644
index 00000000..cbf445e7
--- /dev/null
+++ b/MLEB/Translate/i18n/core/mt.json
@@ -0,0 +1,196 @@
+{
+ "@metadata": {
+ "authors": [
+ "Chrisportelli",
+ "Roderick Mallia",
+ "Leli Forte"
+ ]
+ },
+ "translate": "Traduzzjoni",
+ "translate-desc": "[[Special:Translate|Paġna speċjali]] biex tittraduċi lil MediaWiki u mhux biss",
+ "translate-taskui-view": "Uri l-messaġġi kollha",
+ "translate-taskui-export-to-file": "Esporta fil-format nattiv",
+ "translate-taskui-export-as-po": "Esporta għal traduzzjoni off-line",
+ "translate-taction-lstats": "Statistiki tal-lingwa",
+ "translate-taction-mstats": "Statistiki tal-grupp ta' messaġġi",
+ "translate-taction-export": "Esporta",
+ "translate-page-no-such-language": "Il-lingwa speċifikata hi invalida.",
+ "translate-page-no-such-group": "Il-grupp speċifikat huwa invalidu.",
+ "translate-page-disabled": "Traduzzjonijiet f'din il-lingwa għal dan il-grupp ġew diżabilitati.\nRaġuni:\n\n<em>$1</em>",
+ "translate-page-settings-legend": "Impostazzjonijiet",
+ "translate-page-group": "Grupp",
+ "translate-page-language": "Lingwa",
+ "translate-page-limit": "Limitu",
+ "translate-page-limit-option": "$1 {{PLURAL:$1|messaġġ|messaġġ}} kull paġna",
+ "translate-submit": "Ikseb",
+ "translate-page-navigation-legend": "Navigazzjoni",
+ "translate-page-showing": "Qed jidhru l-messaġġi minn $1 sa $2 ta' $3",
+ "translate-page-showing-all": "Qed jidhru $1 {{PLURAL:$1|messaġġ|messaġġ}}.",
+ "translate-page-showing-none": "L-ebda messaġġ x'jintwera.",
+ "translate-next": "Paġna suċċessiva",
+ "translate-prev": "Paġna preċedenti",
+ "translate-page-description-legend": "Informazzjoni dwar il-grupp",
+ "translate-page-edit": "editja",
+ "translate-ext-url": "<hr />Sit elettroniku: $1",
+ "translate-optional": "(opzjonali)",
+ "translate-ignored": "(injorat)",
+ "translate-edit-title": "Modifika ta' \"$1\"",
+ "translate-edit-definition": "Definizzjoni tal-messaġġ",
+ "translate-edit-translation": "Traduzzjoni",
+ "translate-edit-contribute": "ikkontribwixxi",
+ "translate-edit-no-information": "''Dan il-messaġġ m'għandu l-ebda dokumentazzjoni.''\n''Jekk taf fejn jew kif jiġi wżat dan il-messaġġ, tista' tgħin lit-tradutturi l-oħra billi żżid id-dokumentazzjoni ma' dan il-messaġġ.''",
+ "translate-edit-information": "Informazzjoni dwar il-messaġġ ($1)",
+ "translate-edit-in-other-languages": "Il-messaġġ f'lingwi oħra",
+ "translate-edit-committed": "Traduzzjoni attwali fis-software",
+ "translate-edit-warnings": "Twissijiet dwar traduzzjonijiet mhux kompluti",
+ "translate-edit-tmsugs": "Suġġerimenti mill-memorja tat-traduzzjonijiet",
+ "translate-use-suggestion": "Biddel it-traduzzjoni attwali ma' din is-suġġeriment.",
+ "translate-edit-nopermission": "Għandek bżonn l-awtorizzazzjoni sabiex tittraduċi messaġġi.",
+ "translate-edit-askpermission": "Itlob l-awtorizzazzjoni",
+ "translate-magic-pagename": "Traduzzjoni estiża ta' MediaWiki",
+ "translate-magic-help": "Tista' tittraduċi t-titli tal-paġni speċjali, frażijiet maġiċi u ismijiet tal-ispazju tal-isem.\n\nIt-titli tal-paġni speċjali u l-frażijiet maġiċi jista' jkollhom aktar minn traduzzjoni waħda.\nIt-traduzzjonijiet għandhom jiġu separati minn virgoletta (,).\nL-ispazji tal-isem irid ikollhom traduzzjoni waħda biss.\n\nFit-traduzzjoni tal-ispazji tal-isem, <code>$1 talk</code> hi speċjali. <code>$1</code> hi mibdula mal-isem tas-sit (per eżempju <code>{{ns:project_talk}}</code>).\nJekk mhuwiex possibbli li fil-lingwa tiegħek tiġi formulata espressjonali valida mingħajr ma tbiddel l-isem tas-sit, jekk jogħġbok ikkuntatja lil żviluppatur.\n\nBiex issalva t-tibdil, trid tkun parti mill-grupp tat-tradutturi.\nIt-tibdil ma jiġix salvat sakemm ma tagħfasx il-buttuna t'isfel biex issalva.",
+ "translate-magic-module": "Modulu:",
+ "translate-magic-submit": "Ikseb",
+ "translate-magic-cm-export": "Esporta",
+ "translate-magic-nothing-to-export": "M'hemm xejn x'tesporta.",
+ "translate-magic-cm-to-be": "Ġdid",
+ "translate-magic-cm-current": "Attwali",
+ "translate-magic-cm-original": "Oriġinali",
+ "translate-magic-cm-comment": "Kumment:",
+ "translate-magic-cm-save": "Salva",
+ "translate-magic-cm-updatedusing": "Aġġornat bl-użu ta' [[Special:AdvancedTranslate|{{int:Translate-magic-pagename}}]]",
+ "translate-magic-cm-savefailed": "L-issejvjar ma seħħx",
+ "translate-magic-special": "Psewdonimi tal-paġni speċjali",
+ "translate-magic-words": "Kliem maġiku",
+ "translate-magic-namespace": "Ismijiet tal-ispazji tal-isem",
+ "translate-magic-notsaved": "Il-modifika tiegħek ma ġietx salvata!",
+ "translate-magic-errors": "Jekk jogħġbok irranġa l-{{PLURAL:$1|iżball|iżbalji}} segwenti fit-traduzzjonijiet:",
+ "translate-magic-saved": "Il-modifiki tiegħek ġew salvati b'suċċess.",
+ "translate-checks-parameters": "Il-{{PLURAL:$2|parametru segwnti mhuwiex użat|parametri segwenti mhumiex użati}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-parameters-unknown": "Il-{{PLURAL:$2|parameteru segwenti mhuwiex magħruf|parametri segwenti mhumiex magħrufa}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-balance": "Hemm numru mhux ekwu ta' {{PLURAL:$2|parentesi|parentesi}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links": "Il-{{PLURAL:$2|ħolqa segwenti għandha problema|$2 ħoloq segwenti għandhom problema}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links-missing": "Il-{{PLURAL:$2|ħolqa segwenti hi nieqsa|$2 ħoloq segwenti huma nieqsa}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-plural": "Id-definizzjoni tuża' <nowiki>{{PLURAL:}}</nowiki> imma t-traduzzjoni le.",
+ "translate-checks-pagename": "L-ispazju tal-isem inbidel mid-definizzjoni",
+ "translate-checks-format": "Din it-traduzzjoni ma ssegwix id-definizzjoni segwenti jew għandha sintassi invalidi: $1",
+ "translate-checks-escape": "L-''escapes'' segwenti jistgħu jkunu aċċidentali: <strong>$1</strong>",
+ "translate-checks-fudforum-syntax": "Uża <nowiki>$1</nowiki> minflok <nowiki>$2</nowiki> f'dan il-proġett.",
+ "translate-pref-nonewsletter": "Tibgħatlix ''newsletters'' permezz ta' ittra-e",
+ "translate-pref-editassistlang": "Lingwi assistenti:",
+ "prefs-translate": "Opzjonijiet għat-traduzzjoni",
+ "translate-pref-editassistlang-help": "Kodiċi tal-lingwi separati minn virgola.\nIt-traduzzjonijiet ta' messaġġ f'dawn il-lingwi huma murija meta tkun qed tittraduċi.\nIl-lista predefinita tal-lingwi tiddependi fuq il-lingwa tiegħek.",
+ "translate-pref-editassistlang-bad": "Kodiċi tal-lingwa invalidu fil-lista:\n<nowiki>$1</nowiki>.",
+ "right-translate": "Immodifika bl-użu tal-interfaċċa tat-traduzzjoni",
+ "right-translate-messagereview": "Irrevedi t-traduzzjonijiet",
+ "translate-rc-translation-filter": "Iffilitra t-traduzzjonijiet:",
+ "translate-rc-translation-filter-no": "Tagħmel xejn",
+ "translate-rc-translation-filter-only": "Uri biss it-traduzzjonijiet",
+ "translate-rc-translation-filter-filter": "Elimina t-traduzzjonijiet",
+ "translate-rc-translation-filter-site": "Il-bidliet fil-messaġġi tas-sit biss",
+ "translationstats": "Statistika tat-traduzzjoni",
+ "translate-stats-users": "Tradutturi",
+ "translate-stats-registrations": "Reġistrazzjonijiet",
+ "translate-statsf-intro": "B'din il-formola tista' toħloq statistika sempliċi. Kull valur għandu l-limitu massimu u minimu.",
+ "translate-statsf-options": "Opzjonijiet tal-grafika",
+ "translate-statsf-width": "Wisa' f'pixels",
+ "translate-statsf-height": "Tul f'pixels:",
+ "translate-statsf-days": "Perjodu ta' żmien f'jiem:",
+ "translate-statsf-start": "Data tal-bidu:",
+ "translate-statsf-scale-months": "Xhur",
+ "translate-statsf-scale-weeks": "Ġimgħat",
+ "translate-statsf-scale-days": "Jiem",
+ "translate-statsf-scale-hours": "Sigħat",
+ "translate-statsf-count": "Miżura:",
+ "translate-statsf-count-edits": "Numru ta' modifiki:",
+ "translate-statsf-count-users": "Tradutturi attivi",
+ "translate-statsf-count-registrations": "Utenti ġodda",
+ "translate-statsf-language": "Lista tal-kodiċi tal-lingwi separati permezz ta' virgola:",
+ "translate-statsf-group": "Lista tal-kodiċi tal-lingwi separati permezz ta' virgola:",
+ "translate-statsf-submit": "Dehra proviżorja",
+ "translate-tag-category": "Paġni traduċibbli",
+ "translate-tag-page-desc": "Traduzzjoni tal-paġna wiki [[$2|$1]].",
+ "translate-sidebar-alltrans": "F'lingwi oħrajn",
+ "translations": "It-traduzzjonijiet kollha",
+ "translations-summary": "Daħħal hawn taħt isem ta' messaġġ biex turi t-traduzzjonijiet kollha disponibbli",
+ "translate-translations-no-message": "\"$1\" mhuwiex messaġġ traduċibbli",
+ "translate-translations-none": "M'hemm l-ebda traduzzjoni għal \"$1\"",
+ "translate-translations-fieldset-title": "Messaġġ",
+ "translate-translations-messagename": "Isem:",
+ "translate-translations-project": "Proġett:",
+ "languagestats": "Statistiki tal-lingwa",
+ "languagestats-summary": "Din il-paġna turi l-istatistika tat-traduzzjonijiet għall-gruppi kollha tal-messaġġi ta' lingwa.",
+ "messagegroupstats-summary": "Din il-paġna turi l-istatistiki għall-gruppi ta' messaġġi.",
+ "languagestats-stats-for": "Statistika tat-traduzzjoni għal $1 ($2).",
+ "languagestats-recenttranslations": "traduzzjonijiet riċenti",
+ "translate-langstats-expand": "espandi",
+ "translate-langstats-collapse": "aħbi",
+ "translate-langstats-expandall": "espandi kollox",
+ "translate-langstats-collapseall": "aħbi kollox",
+ "translate-language-code": "Kodiċi tal-lingwa",
+ "translate-language-code-field-name": "Kodiċi tal-lingwa:",
+ "translate-suppress-complete": "Neħħi gruppi ta' messaġġi tradotti kompletament",
+ "translate-ls-noempty": "Neħħi gruppi ta' messaġġi li mhumiex tradotti kompletament",
+ "translate-language": "Lingwa",
+ "translate-total": "Messaġġi",
+ "translate-untranslated": "Mhux tradotti",
+ "translate-percentage-complete": "Kompluti",
+ "translate-percentage-fuzzy": "Bżonn ta' aġġornament",
+ "translate-languagestats-overall": "Il-gruppi tal-messaġġi kollha ma' xulxin",
+ "translate-ls-submit": "Uri l-istatistiki",
+ "translate-ls-column-group": "Grupp ta' messaġġi",
+ "translate-mgs-pagename": "Statistiki tal-grupp ta' messaġġi",
+ "translate-mgs-fieldset": "Uri l-preferenzi",
+ "translate-mgs-group": "Grupp ta' messaġġi:",
+ "translate-mgs-nocomplete": "Turix lingwi li għandhom it-traduzzjoni lesta",
+ "translate-mgs-noempty": "Turix lingwi li m'għandhomx traduzzjonijiet",
+ "translate-mgs-submit": "Uri l-istatistiki",
+ "translate-mgs-column-language": "Lingwa",
+ "translate-mgs-totals": "Il-lingwi kollha ma' xulxin",
+ "translate-mgs-invalid-group": "Il-grupp speċifikat $1 ma jeżistix.",
+ "supportedlanguages": "Lingwi sostnuti",
+ "supportedlanguages-translators": "{{PLURAL:$2|Traduttur|Tradutturi}}: $1",
+ "supportedlanguages-recenttranslations": "traduzzjonijiet riċenti",
+ "supportedlanguages-count": "Total ta' $1 {{PLURAL:$1|lingwa|lingwi}}.",
+ "supportedlanguages-activity": "$1: $2 {{PLURAL:$2|modifika|modifiki}} - l-aħħar modifika $3 {{PLURAL:$3|ġurnata|ġranet}} ilu",
+ "translate-save": "Salva ($1)",
+ "translate-jssti-add": "Żid mal-lista",
+ "translate-manage-import-new": "Messaġġ ġdid $1",
+ "translate-manage-action-ignore": "Injora",
+ "importtranslations": "Importa t-traduzzjonijiet",
+ "translate-import-from-local": "Tella' fajl lokali:",
+ "translate-import-load": "Tella' fajl",
+ "translate-import-err-ul-failed": "It-tlugħ tal-fajl ma rnexxiex",
+ "translate-import-err-invalid-title": "L-isem tal-fajl <nowiki>$1</nowiki> mhuwiex validu.",
+ "translate-import-err-no-such-file": "Il-fajl <nowiki>$1</nowiki> ma jeżistix jew ma ġiex imtella fuq livell lokali.",
+ "translate-js-next": "Salvaha u għaddi għal li jmiss",
+ "translate-js-nonext": "Dan kien l-aħħar messaġġ f'din il-paġna.",
+ "translate-js-skip": "Li jmiss",
+ "translate-js-save-failed": "L-issejvjar tal-paġna falla. Jekk jogħġbok irraporta dan l-iżball.",
+ "translate-js-history": "Kronoloġija",
+ "translate-js-support": "Staqsi mistoqsija",
+ "translate-gs-pos": "Poż.",
+ "translate-gs-code": "Kodiċi",
+ "translate-gs-continent": "Kontinent",
+ "translate-gs-speakers": "Kelliema",
+ "translate-gs-score": "Punteġġ",
+ "translate-gs-multiple": "Multipla",
+ "translate-gs-count": "Numru",
+ "translate-gs-total": "Total",
+ "translate-gs-avgscore": "Medja tal-punteġġ",
+ "translate-documentation-language": "Dokumentazzjoni tal-messaġġ",
+ "translate-searchprofile": "Traduzzjonijiet",
+ "translate-searchprofile-tooltip": "Tfittxija minn kull traduzzjoni",
+ "translate-search-languagefilter": "Filtru skont il-lingwa:",
+ "translate-search-nofilter": "L-ebda filtru",
+ "translate-messagereview-submit": "Aċċetta",
+ "api-error-owntranslation": "Ma tistax taċċetta t-traduzzjonijiet tiegħek",
+ "translate-messagereview-no-fuzzy": "Traduzzjonijiet li għandhom bżonn l-aġġornament ma jistgħux jiġu aċċettati.",
+ "translate-messagereview-no-own": "Ma tistax taċċetta t-traduzzjonijiet tiegħek.",
+ "translate-messagereview-doit": "Aċċetta din it-traduzzjoni bħala traduzzjoni tajba.",
+ "translate-workflowstatus": "Stat: $1",
+ "tux-empty-list-all-guide": "Agħżel gruppi ta' messaġġi ieħor biex tittraduċi",
+ "tux-empty-list-other-guide": "Tista' tgħin tirrevedi traduzzjonijiet eżistenti",
+ "tux-empty-list-other-action": "Irrevedi t-traduzzjonijiet",
+ "tux-empty-list-other-link": "Uri l-messaġġi kollha"
+}
diff --git a/MLEB/Translate/i18n/core/my.json b/MLEB/Translate/i18n/core/my.json
new file mode 100644
index 00000000..79b98fd4
--- /dev/null
+++ b/MLEB/Translate/i18n/core/my.json
@@ -0,0 +1,20 @@
+{
+ "@metadata": {
+ "authors": [
+ "Erikoo"
+ ]
+ },
+ "translate": "ဘာသာပြန်ပါ",
+ "translate-page-group": "အုပ်စု",
+ "translate-page-language": "ဘာသာ",
+ "translate-page-limit": "ကန့်သတ်ချက်",
+ "translate-page-limit-option": "တစ်မျက်နှာလျှင် {{PLURAL:$1|စာလုံး|စာလုံးပေါင်း}} $1",
+ "translate-submit": "ရှာဖွေပါ",
+ "translate-page-navigation-legend": "အ​ညွှန်း​",
+ "translate-page-showing-all": "{{PLURAL:$1|စာလုံး|စာလုံးပေါင်း}} $1 လုံး ရှာဖွေတွေ့ရှိသည်။",
+ "translate-page-showing-none": "ဖေါ်ပြရန် စကားလုံး မရှိပါ",
+ "translate-next": "နောက်စာမျက်နှာ",
+ "translate-prev": "ပြီးခဲ့သော စာမျက်နှာ",
+ "translate-page-edit": "ပြင်ရန်",
+ "translate-gs-score": "ရမှတ်"
+}
diff --git a/MLEB/Translate/i18n/core/myv.json b/MLEB/Translate/i18n/core/myv.json
new file mode 100644
index 00000000..6b07ce64
--- /dev/null
+++ b/MLEB/Translate/i18n/core/myv.json
@@ -0,0 +1,68 @@
+{
+ "@metadata": {
+ "authors": [
+ "Botuzhaleny-sodamo"
+ ]
+ },
+ "translate": "Ютавтомонзо",
+ "translate-page-no-such-language": "Аравтозь келесь а маштови.",
+ "translate-page-settings-legend": "Аравтнемкат",
+ "translate-page-group": "Куро",
+ "translate-page-language": "Кель",
+ "translate-page-limit-option": "$1 {{PLURAL:$1|пачтямне|пачтямнеть}} лопазонзо",
+ "translate-submit": "Кандомс",
+ "translate-page-showing-all": "{{PLURAL:$1|Невтеви 1 пачтямне|Невтевить $1 пачтямнеть}}.",
+ "translate-page-showing-none": "Пачтямнэть невтемс арасть",
+ "translate-next": "Седе тов ве лопа",
+ "translate-prev": "Седе икелень лопась",
+ "translate-page-description-legend": "Куродо кить-мезть",
+ "translate-page-edit": "витнемензэ-петнемензэ",
+ "translate-optional": "(мелень коряс)",
+ "translate-ignored": "(менстязь)",
+ "translate-edit-definition": "Пачтямнэнть чарькодевтемазо",
+ "translate-edit-contribute": "эсеть путовкс путомс",
+ "translate-edit-no-information": "''Те пачтямнесэнть арась чарькодевтема. Тевс нолдамодонзо содат, косо эли кода, лездак лия ютавтыцятненень. Поладт те пачтямнентень превть-арсемат.''",
+ "translate-edit-information": "Мезе содамс \"$1\" пачтямнэденть",
+ "translate-edit-in-other-languages": "Пачтямнесь лия кельсэ",
+ "translate-magic-pagename": "МедиаВикинь келейгавтонь ютавтома",
+ "translate-magic-submit": "Кандомс",
+ "translate-magic-cm-current": "Неень",
+ "translate-magic-cm-original": "Васнянь",
+ "translate-magic-cm-save": "Ванстомс",
+ "translate-magic-cm-savefailed": "Ванстома тевесь эзь лисе",
+ "translate-magic-namespace": "Лем потмо лемть",
+ "translate-rc-translation-filter": "Сувтнемс ютавтовкстнэнь",
+ "translate-rc-translation-filter-no": "Мезеяк а теемс",
+ "translate-rc-translation-filter-only": "Ськамост ютавтовкстнэнь невтемс",
+ "translate-rc-translation-filter-filter": "Панемс ютавтовкстнэнь сувтемань пачк",
+ "translationstats": "Ютавтомадо статистика",
+ "translate-stats-edits": "Витнемат-петнемат",
+ "translate-stats-users": "Ютавтыцят",
+ "translate-statsf-width": "Пикселсэ келезэ:",
+ "translate-statsf-height": "Пикселсэ сэрезэ:",
+ "translate-statsf-scale-days": "Чить",
+ "translate-statsf-scale-hours": "Цяст",
+ "translate-statsf-count": "Онкс:",
+ "translate-statsf-count-edits": "Зяроксть витнезь-петнезь",
+ "translate-statsf-count-users": "Зяро ютавтыцятнеде",
+ "translate-statsf-language": "Ботпулосо явонь списка, косо келень кодт:",
+ "translate-statsf-group": "Ботпулосо явонь списка, косо куронь кодт:",
+ "translate-statsf-submit": "Васнянь неевтезэ",
+ "translate-tag-category": "Ютавтомкс лопат",
+ "translate-tag-page-desc": "\"[[$2|$1]]\" вики лопась ютавтозь «$3 ($4)» лопасто.",
+ "translate-sidebar-alltrans": "Лия кельсэ",
+ "translations": "Весе йутавтовкст",
+ "translate-translations-no-message": "\"$1\" пачтямнэсь а йутавтови",
+ "translate-translations-none": "\"$1\" пачтямнэнть арасть ютавтовксонзо",
+ "translate-translations-fieldset-title": "Пачтямнэ",
+ "translate-translations-messagename": "Лемезэ:",
+ "languagestats": "Келень статистикат",
+ "translate-language-code": "Келень код",
+ "translate-language-code-field-name": "Келень кодось:",
+ "translate-language": "Кель",
+ "translate-total": "Пачтямнэть",
+ "translate-untranslated": "Апак ютавто",
+ "translate-percentage-fuzzy": "Таштамозь",
+ "translate-manage-action-import": "Совавтомс",
+ "translate-manage-submit": "Топавтомс"
+}
diff --git a/MLEB/Translate/i18n/core/nah.json b/MLEB/Translate/i18n/core/nah.json
new file mode 100644
index 00000000..e4eda9ca
--- /dev/null
+++ b/MLEB/Translate/i18n/core/nah.json
@@ -0,0 +1,39 @@
+{
+ "@metadata": {
+ "authors": [
+ "Fluence",
+ "Ricardo gs",
+ "Teòtlalili"
+ ]
+ },
+ "translate": "Tictlahtōlcuepāz",
+ "translate-page-group": "Olōlli",
+ "translate-page-language": "Tlâtòlli",
+ "translate-page-navigation-legend": "Nènemòwalistli",
+ "translate-page-showing": "Tiquintta tlahcuilōltzin īhuīcpa $1 oc $2 īmpan $3.",
+ "translate-page-showing-all": "{{PLURAL:$1|Tiquintta|Tiquintta}} $1 tlahcuilōltzin.",
+ "translate-page-showing-none": "Ahtlein ic tlatta.",
+ "translate-next": "Niman zāzanilli",
+ "translate-prev": "Achto zāzanilli",
+ "translate-page-description-legend": "Olōltechopa",
+ "translate-page-edit": "ticpatlāz",
+ "translate-edit-contribute": "titlapalēhuīz",
+ "translate-edit-in-other-languages": "Tētītlaniliztli occē tlahtōltica",
+ "translate-magic-cm-export": "Ticnamacāz",
+ "translate-magic-cm-to-be": "Yez",
+ "translate-magic-cm-current": "Āxcān",
+ "translate-magic-cm-original": "Achto",
+ "translate-magic-cm-save": "Ticpiyāz",
+ "translate-magic-namespace": "Tōcātzintli ītōca",
+ "translate-rc-translation-filter-no": "Ahtlein titlachīhuāz",
+ "translationstats": "Tlahtōlcuepaliztli tlapōhualli",
+ "translate-stats-edits": "Tlapatlaliztli",
+ "translate-stats-users": "Tlahtōlcuepalōnih",
+ "translate-statsf-scale-days": "Tōnalli",
+ "translate-statsf-submit": "Achtochīhualiztli",
+ "translate-tag-page-desc": "Huiquizāzanilli ītlahtōlcuepaliz [[$2|$1]].",
+ "translate-sidebar-alltrans": "Occēquīntīn tlahtōlco",
+ "translations": "Mochi tlahtōlcuepaliztli",
+ "translate-translations-none": "Ayāc tlahtōlcuepaliztli ic \"$1\"",
+ "translate-translations-fieldset-title": "Tītlantlahtōlli"
+}
diff --git a/MLEB/Translate/i18n/core/nap.json b/MLEB/Translate/i18n/core/nap.json
new file mode 100644
index 00000000..59bcb3dd
--- /dev/null
+++ b/MLEB/Translate/i18n/core/nap.json
@@ -0,0 +1,10 @@
+{
+ "@metadata": {
+ "authors": [
+ "C.R."
+ ]
+ },
+ "translate-taction-lstats": "Statistiche d' 'a lengua",
+ "languagestats": "Statistiche d' 'a lengua",
+ "translate-mgs-pagename": "Statistiche d' 'o gruppo 'e mmasciate"
+}
diff --git a/MLEB/Translate/i18n/core/nb.json b/MLEB/Translate/i18n/core/nb.json
new file mode 100644
index 00000000..e0000977
--- /dev/null
+++ b/MLEB/Translate/i18n/core/nb.json
@@ -0,0 +1,388 @@
+{
+ "@metadata": {
+ "authors": [
+ "Byrial",
+ "Harald Khan",
+ "Jsoby",
+ "Laaknor",
+ "Nghtwlkr",
+ "Njardarlogar",
+ "Simny"
+ ]
+ },
+ "translate": "Oversett",
+ "translate-desc": "[[Special:Translate|Spesialside]] for oversettelse av MediaWiki og annet",
+ "translate-taskui-view": "Vis alle meldinger",
+ "translate-taskui-untranslated": "Vis uoversatte meldinger",
+ "translate-taskui-optional": "Vis valgfrie meldinger",
+ "translate-taskui-acceptqueue": "Kun meldinger jeg kan godkjenne",
+ "translate-taskui-reviewall": "Revider alle oversettelser",
+ "translate-taskui-export-to-file": "Eksporter i opprinnelig format",
+ "translate-taskui-export-as-po": "Eksporter for frakoblet oversettelse",
+ "translate-taction-translate": "Oversett",
+ "translate-taction-proofread": "Korrekturles",
+ "translate-taction-lstats": "Språkstatistikk",
+ "translate-taction-mstats": "Meldingsgruppestatistikk",
+ "translate-taction-export": "Eksporter",
+ "translate-taction-disabled": "Denne handlingen er deaktivert på denne wikien.",
+ "translate-page-no-such-language": "Oppgitt språk var ugyldig.",
+ "translate-page-no-such-group": "Oppgitt gruppe var ugyldig.",
+ "translate-page-disabled": "Oversettelser til dette språket i denne gruppen har blitt deaktivert.\nÅrsak:\n\n<em>$1</em>",
+ "translate-language-disabled": "Oversetting til dette språket er slått av.",
+ "translate-page-settings-legend": "Innstillinger",
+ "translate-page-group": "Gruppe",
+ "translate-page-language": "Språk",
+ "translate-page-limit": "Grense",
+ "translate-page-limit-option": "$1 {{PLURAL:$1|melding|meldinger}} per side",
+ "translate-submit": "Hent",
+ "translate-page-navigation-legend": "Navigasjon",
+ "translate-page-showing": "Viser meldinger fra $1 til $2 av $3.",
+ "translate-page-showing-all": "Viser {{PLURAL:$1|én melding|$1 meldinger}}.",
+ "translate-page-showing-none": "Ingen meldinger å vise.",
+ "translate-next": "Neste side",
+ "translate-prev": "Forrige side",
+ "translate-page-description-legend": "Informasjon om gruppen",
+ "translate-page-description-hasoptional": "Denne meldingsgruppen inneholder valgfrie meldinger.\nValgfrie meldinger bør kun oversettes om språket ditt har spesielle behov, som at det ikke bruker mellomrom eller man må transkribere egennavn. $1",
+ "translate-page-description-hasoptional-open": "Vis valgfrie meldinger.",
+ "translate-page-edit": "rediger",
+ "translate-ext-url": "<hr />Nettsted: $1",
+ "translate-optional": "(valgfri)",
+ "translate-ignored": "(ignorert)",
+ "translate-edit-title": "Rediger «$1»",
+ "translate-edit-definition": "Meldingsdefinisjon",
+ "translate-edit-translation": "Oversettelse",
+ "translate-edit-contribute": "bidra",
+ "translate-edit-no-information": "<em>Denne meldingen har ingen dokumentasjon.\nOm du vet hvor eller hvordan denne meldingen brukes kan du hjelpe andre oversettere ved å legge inn dokumentasjon på denne meldingen.</em>",
+ "translate-edit-information": "Informasjon om meldingen ($1)",
+ "translate-edit-in-other-languages": "Meldingen på andre språk",
+ "translate-edit-committed": "Nåværende oversettelse i programvaren",
+ "translate-edit-warnings": "Advarsler om ufullstendige oversettelser",
+ "translate-edit-tmsugs": "Forslag fra oversettelsesminnet og maskinoversettelser",
+ "translate-edit-tmmatch-source": "Kildetekst for oversettelse: $1",
+ "translate-edit-tmmatch": "samsvarer $1 %",
+ "translate-use-suggestion": "Erstatt nåværende oversettelse med dette forslaget.",
+ "translate-edit-nopermission": "Du må ha oversetterrettigheter for å oversette beskjeder.",
+ "translate-edit-askpermission": "Få tillatelse",
+ "translate-magic-pagename": "Utvidet MediaWiki-oversettelse",
+ "translate-magic-help": "Du kan oversette spesialsidealias, magiske ord og navneromnavn.\n\nSpesialsidealias og magiske ord kan ha flere oversettelser.\nOversettelsene er adskilt med komma (,).\nNavnerom kan kun ha én oversettelse.\n\nI navneromoversettelsene er <code>$1 talk</code> spesiell. <code>$1</code> erstattes med nettstedsnavnet (for eksempel <code>{{ns:project_talk}}</code>).\nOm det ikke er mulig å få til et gyldig uttrykk på ditt språk uten å endre nettstedsnavnet, fortell oss det på [[Support]].\n\nDu må være i oversettergruppen for å lagre endringer.\nEndringer lagres ikke før du klikker på lagre-knappen nedenfor.",
+ "translate-magic-module": "Modul:",
+ "translate-magic-submit": "Hent",
+ "translate-magic-cm-export": "Eksporter",
+ "translate-magic-nothing-to-export": "Det er ingenting å eksportere.",
+ "translate-magic-cm-to-be": "Framtidig",
+ "translate-magic-cm-current": "Nåværende",
+ "translate-magic-cm-original": "Opprinnelig",
+ "translate-magic-cm-comment": "Kommentar:",
+ "translate-magic-cm-save": "Lagre",
+ "translate-magic-cm-updatedusing": "Oppdatert ved å bruke [[Special:AdvancedTranslate|{{int:Translate-magic-pagename}}]]",
+ "translate-magic-cm-savefailed": "Lagring mislyktes",
+ "translate-magic-special": "Spesialsidealias",
+ "translate-magic-words": "Magiske ord",
+ "translate-magic-namespace": "Navneromnavn",
+ "translate-magic-notsaved": "Endringen din ble ikke lagret!",
+ "translate-magic-errors": "Rett på følgende {{PLURAL:$1|feil}} i oversettelsen:",
+ "translate-magic-saved": "Endringene dine ble lagret.",
+ "translate-checks-parameters": "Følgende {{PLURAL:$2|parameter|parametre}} brukes ikke:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-parameters-unknown": "Følgende {{PLURAL:$2|parameter er ukjent|parametre er ukjente}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-balance": "Det er et ujevnt antall {{PLURAL:$2|parenteser|paranteser}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links": "Følgende {{PLURAL:$2|lenke er problematisk|$2 lenker er problematiske}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links-missing": "Følgende {{PLURAL:$2|lenke|$2 lenker}} mangler:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-xhtml": "Erstatt følgende {{PLURAL:$2|merke med det korrekte|merker med de korrekte}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-plural": "Definisjonen bruker <nowiki>{{PLURAL:}}</nowiki>, men oversettelsen gjør ikke det.",
+ "translate-checks-plural-forms": "<nowiki>{{PLURAL:}}</nowiki> ble gitt {{PLURAL:$1|én form|$1 former}}, men kun {{PLURAL:$2|én form|$2 former}} støttes (utenom 0- og 1-former).",
+ "translate-checks-plural-dupe": "<nowiki>{{PLURAL:}}</nowiki> har duplikatformer på slutten. <nowiki>{{PLURAL:$1|hus|hus}}</nowiki> bør skrives som <nowiki>{{PLURAL:$1|hus}}</nowiki>.",
+ "translate-checks-pagename": "Navnerom forandret fra definisjonen",
+ "translate-checks-format": "Denne oversettelsen følger ikke definisjonen eller har ugyldig syntaks: $1",
+ "translate-checks-escape": "De følgende lekkasjene kan være tilfeldige: <strong>$1</strong>",
+ "translate-checks-parametersnotequal": "Parametertelleren er {{PLURAL:$1|$1}}; skulle vært {{PLURAL:$2|$2}}.",
+ "translate-checks-malformed": "<nowiki>$1</nowiki> er feilaktig.",
+ "translate-checks-fudforum-syntax": "Bruk <nowiki>$1</nowiki> istedet for <nowiki>$2</nowiki> i dette prosjektet.",
+ "translate-pref-nonewsletter": "Ikke send meg nyhetsbrev på e-post",
+ "translate-pref-editassistlang": "Hjelpespråk:",
+ "prefs-translate": "Oversettelsesalternativ",
+ "translate-pref-editassistlang-help": "Kommaseparert liste over språkkoder.\nOversettelsen av en melding i disse språkene blir vist mens du oversetter.\nStandardlisten over språk avhenger av språket ditt.",
+ "translate-pref-editassistlang-bad": "Ugyldig språkkode i listen:\n<nowiki>$1</nowiki>.",
+ "right-translate": "Rediger med oversettingsgrensesnittet",
+ "right-translate-manage": "Administrer meldingsgrupper",
+ "action-translate-manage": "håndtere meldingsgrupper",
+ "right-translate-import": "Importer frakoblede oversettelser",
+ "action-translate-import": "importer frakoblede oversettelser",
+ "right-translate-messagereview": "Revidere oversettelser",
+ "right-translate-groupreview": "Endre arbeidsflytstatusen til meldingsgrupper",
+ "translate-rc-translation-filter": "Filtrer oversettelser:",
+ "translate-rc-translation-filter-no": "Ikke gjør noe",
+ "translate-rc-translation-filter-only": "Vis bare oversettelser",
+ "translate-rc-translation-filter-filter": "Filtrer bort oversettelser",
+ "translate-rc-translation-filter-site": "Kun endringer på nettstedsmeldinger",
+ "translationstats": "Oversettelsesstatistikk",
+ "translate-stats-edits": "Redigeringer",
+ "translate-stats-users": "Oversettere",
+ "translate-stats-registrations": "Registreringer",
+ "translate-stats-reviews": "Revideringer",
+ "translate-stats-reviewers": "Revisorer",
+ "translate-statsf-intro": "Du kan generere enkel statistikk med dette skjemaet.\nAlle verdiene har øvre og nedre grenser.",
+ "translate-statsf-options": "Grafalternativer",
+ "translate-statsf-width": "Bredde i piksler:",
+ "translate-statsf-height": "Høyde i piksler:",
+ "translate-statsf-days": "Tidsperiode i dager:",
+ "translate-statsf-start": "Startdato:",
+ "translate-statsf-scale": "Detaljnivå:",
+ "translate-statsf-scale-months": "Måneder",
+ "translate-statsf-scale-weeks": "Uker",
+ "translate-statsf-scale-days": "Dager",
+ "translate-statsf-scale-hours": "Timer",
+ "translate-statsf-count": "Mål:",
+ "translate-statsf-count-edits": "Antall redigeringer",
+ "translate-statsf-count-users": "Aktive oversettere",
+ "translate-statsf-count-registrations": "Nye brukere",
+ "translate-statsf-count-reviews": "Oversettelsesrevideringer",
+ "translate-statsf-count-reviewers": "Revisorer",
+ "translate-statsf-language": "Kommaseparert liste over språkkoder:",
+ "translate-statsf-group": "Kommaseparert liste over gruppekoder:",
+ "translate-statsf-submit": "Forhåndsvisning",
+ "translate-tag-category": "Sider som kan oversettes",
+ "translate-tag-page-desc": "Oversettelse av wikisiden [[$2|$1]].",
+ "translate-sidebar-alltrans": "På andre språk",
+ "translations": "Alle oversettelser",
+ "translations-summary": "Skriv inn et meldingsnavn nedenfor for å vise alle tilgjengelige oversettelser.",
+ "translate-translations-no-message": "«$1» er ikke en melding som kan oversettes",
+ "translate-translations-none": "Det finnes ingen oversettelser for «$1»",
+ "translate-translations-count": "Fant {{PLURAL:$1|én oversettelse|$1 oversettelser}}.",
+ "translate-translations-fieldset-title": "Melding",
+ "translate-translations-messagename": "Navn:",
+ "translate-translations-project": "Prosjekt:",
+ "translate-translations-including-no-param": "Spesifiser en gyldig meldingsnøkkel i undersideparameteren.",
+ "translate-translations-history-short": "h",
+ "languagestats": "Språkstatistikk",
+ "languagestats-summary": "Denne siden viser oversettelsesstatistikk for alle meldingsgrupper for et språk.",
+ "messagegroupstats-summary": "Denne siden viser statistikk for meldingsgrupper.",
+ "languagestats-stats-for": "Oversettelsesstatistikk for $1 ($2).",
+ "languagestats-recenttranslations": "siste oversettelser",
+ "translate-langstats-incomplete": "Noe av statistikken på denne siden er ufullstendig. Last siden på nytt for å få mer statistikk.",
+ "translate-langstats-expand": "utvid",
+ "translate-langstats-collapse": "skjul",
+ "translate-langstats-expandall": "vis alle",
+ "translate-langstats-collapseall": "skjul alle",
+ "translate-language-code": "Språkkode",
+ "translate-language-code-field-name": "Språkkode:",
+ "translate-suppress-complete": "Skjul ferdig oversatte meldingsgrupper",
+ "translate-ls-noempty": "Skjul helt uoversatte meldingsgrupper",
+ "translate-language": "Språk",
+ "translate-total": "Meldinger",
+ "translate-untranslated": "Uoversatte",
+ "translate-percentage-complete": "Ferdigstilt",
+ "translate-percentage-fuzzy": "Utdatert",
+ "translate-languagestats-overall": "Alle meldingsgrupper sammen",
+ "translate-ls-submit": "Vis statistikk",
+ "translate-ls-column-group": "Meldingsgruppe",
+ "translate-mgs-pagename": "Meldingsgruppestatistikk",
+ "translate-mgs-fieldset": "Visningsinnstillinger",
+ "translate-mgs-group": "Meldingsgruppe:",
+ "translate-mgs-nocomplete": "Ikke vis språk som har fullført denne oversettelsen",
+ "translate-mgs-noempty": "Ikke vis språk som ikke har noen oversettelser",
+ "translate-mgs-submit": "Vis statistikk",
+ "translate-mgs-column-language": "Språk",
+ "translate-mgs-totals": "Alle språk sammen",
+ "translate-mgs-invalid-group": "Den angitte gruppen $1 finnes ikke.",
+ "translate-mgs-nothing": "Ingen av den ønskede statistikken kan vises.",
+ "supportedlanguages": "Støttede språk",
+ "supportedlanguages-summary": "Denne siden viser en liste over alle språk som støttes av {{SITENAME}}, sammen med navnene på oversetterne som jobber med det språket. Jo større en oversetters brukernavn er, jo flere bidrag har oversetteren. Fargen på understrekingen er en indikator på hvor lenge oversetteren har vært aktiv her.",
+ "supportedlanguages-colorlegend": "Fargeforklaring: Siste oversettelse for $1 dager siden.",
+ "supportedlanguages-translators": "{{PLURAL:$2|Oversetter|Oversettere}}: $1",
+ "supportedlanguages-recenttranslations": "siste oversettelser",
+ "supportedlanguages-count": "$1 {{PLURAL:$1|språk}} totalt.",
+ "supportedlanguages-activity": "$1: $2 {{PLURAL:$2|redigering|redigeringer}} – siste redigering for $3 {{PLURAL:$3|dag|dager}} siden",
+ "translate-save": "Lagre ($1)",
+ "translate-jssti-add": "Legg til i listen",
+ "managemessagegroups": "Meldingsgruppehåndtering",
+ "translate-smg-notallowed": "Du har ikke tillatelse til å utføre dette.",
+ "translate-smg-nochanges": "Det er ingen endringer å bearbeide.",
+ "translate-smg-submit": "Lagre endringer for prosessering",
+ "translate-smg-submitted": "Meldingdefinisjoner har blitt oppdatert. Endringene prosesseres i bakgrunnen.",
+ "translate-smg-more": "Det blir flere endringer å prosessere etter at disse endringene er levert.",
+ "translate-smg-left": "Meldingsinnhold i wikien",
+ "translate-smg-right": "Kommende endringer",
+ "translate-manage-import-diff": "Melding $1 | Handlinger: $2",
+ "translate-manage-import-new": "Ny melding $1",
+ "translate-manage-import-deleted": "Slettet melding $1",
+ "translate-manage-action-import": "Importer",
+ "translate-manage-action-conflict": "Importer og merk for revisjon («fuzzy»)",
+ "translate-manage-action-ignore": "Ignorer",
+ "translate-manage-action-fuzzy": "Importer og merk for revisjon («fuzzy»)",
+ "translate-manage-nochanges": "Det er ingen endringer i meldingsdefinisjonene for denne gruppen.",
+ "translate-manage-nochanges-other": "Det var ingen forandringer for dette språket.\nBruk lenken nedenfor for å returnere til gruppedataljene.",
+ "translate-manage-inconsistent": "Fant inkonsistens i forespørselen.\nVennligst sjekk om det har vært endringer og prøv igjen.\nDetaljer: $1.",
+ "translate-manage-toolong": "Den maksimale behandlingstiden på {{PLURAL:$1|ett sekund|$1 sekund}} ble overskredet.\nVennligst send skjemaet på nytt for å fortsette behandlingen.",
+ "translate-manage-import-summary": "Importerer en ny versjon fra en ekstern kilde",
+ "translate-manage-conflict-summary": "Importerer en ny versjon fra en ekstern kilde.\nVennligst sjekk.",
+ "translate-manage-fuzzy-summary": "Meldingsdefinisjonen har blitt endret",
+ "translate-manage-submit": "Utfør",
+ "translate-manage-intro-other": "Nedenfor er en liste over endringer i oversettelsen til språket $1.\nGå gjennom endringene og velg hva du vil gjøre med hver oppdatering.\nOm du velger å ignorere endringene vil denne handlingen kun være midlertidig.",
+ "translate-manage-import-ok": "Importert: $1",
+ "translate-manage-import-done": "Importering fullført.",
+ "importtranslations": "Importer oversettelser",
+ "translate-import-from-local": "Lokal filopplasting:",
+ "translate-import-load": "Last fil",
+ "translate-import-err-dl-failed": "Kunne ikke hente filen:\n$1",
+ "translate-import-err-ul-failed": "Filopplastingen mislyktes",
+ "translate-import-err-invalid-title": "Oppgitt filnavn <nowiki>$1</nowiki> var ugyldig.",
+ "translate-import-err-no-such-file": "Filen <nowiki>$1</nowiki> finnes ikke eller har ikke blitt lastet opp lokalt.",
+ "translate-import-err-stale-group": "Meldingsgruppen som denne filen tilhører finnes ikke.",
+ "translate-import-err-no-headers": "Filen er ikke en velformatert Gettext-fil i Translate-utvidelsesformatet:\nKunne ikke fastslå gruppe og språk fra filoverskriftene.",
+ "translate-import-err-warnings": "Filen er ikke velformatert.\nKontroller at editoren ikke fjerner msgctxt-feltene.\nDetaljer: $1",
+ "translate-js-summary": "Forklaring:",
+ "translate-js-save": "Lagre",
+ "translate-js-next": "Lagre og åpne neste",
+ "translate-js-nonext": "Dette var den siste meldingen på siden.",
+ "translate-js-skip": "Hopp over til neste",
+ "translate-js-save-failed": "Lagring mislyktes. Rapporter denne feilen.",
+ "translate-js-history": "Oversettelseshistorikk",
+ "translate-js-support": "Still spørsmål",
+ "translate-js-support-title": "Be om hjelp hvis det ikke er nok informasjon til å oversette denne meldingen korrekt.",
+ "translate-js-support-unsaved-warning": "Du har ulagrede oversettelser.",
+ "translate-gs-pos": "Pos.",
+ "translate-gs-code": "Kode",
+ "translate-gs-continent": "Kontinent",
+ "translate-gs-speakers": "Brukere",
+ "translate-gs-score": "Poeng",
+ "translate-gs-multiple": "Flere",
+ "translate-gs-count": "Antall",
+ "translate-gs-total": "Totalt",
+ "translate-gs-avgscore": "Gj.snitt score",
+ "translate-documentation-language": "Meldingsdokumentasjon",
+ "translate-searchprofile": "Oversettelser",
+ "translate-searchprofile-tooltip": "Søk i alle oversettelser",
+ "translate-search-languagefilter": "Filtrer etter språk:",
+ "translate-search-nofilter": "Ingen filtrering",
+ "translate-messagereview-submit": "Godkjenn",
+ "translate-messagereview-progress": "Godkjenner …",
+ "translate-messagereview-failure": "Godkjenner … mislyktes: $1",
+ "translate-messagereview-done": "Godkjent",
+ "translate-messagereview-reviews": "Godkjent av {{PLURAL:$1|én bruker|$1 brukere}}",
+ "translate-messagereview-reviewswithyou": "Godkjent av {{PLURAL:$1|deg|$1 brukere inkludert deg}}",
+ "api-error-invalidrevision": "Oversettelsen ble ikke funnet",
+ "api-error-unknownmessage": "Meldingen ble ikke funnet",
+ "api-error-fuzzymessage": "Oversettelsen er merket som foreldet",
+ "api-error-owntranslation": "Du kan ikke godkjenne dine egne oversettelser",
+ "translate-messagereview-no-fuzzy": "Foreldede oversettelser kan ikke godkjennes.",
+ "translate-messagereview-no-own": "Du kan ikke godkjenne dine egne oversettelser.",
+ "translate-messagereview-doit": "Godkjenn denne oversettelsen.",
+ "log-name-translationreview": "Logg for oversettelsesrevidering",
+ "log-description-translationreview": "Logg over alle revideringer av oversettelser og meldingsgrupper.",
+ "logentry-translationreview-message": "$1 {{GENDER:$2|godtok}} oversettelsen $3",
+ "logentry-translationreview-group": "$1 {{GENDER:$2|endret}} statusen på $4 oversettelser av $3 fra $6 til $7",
+ "group-translate-sandboxed": "Ikke-godtatte oversettere",
+ "group-translate-sandboxed-member": "{{GENDER:$1|ikke-godkjent oversetter}}",
+ "right-translate-sandboxmanage": "Behandle sandkassebrukere",
+ "action-translate-sandboxmanage": "behandle sandkassebrukere",
+ "right-translate-sandboxaction": "Utføre handlinger som er hvitlistet for sandkassebrukere",
+ "action-translate-sandboxaction": "utføre handlinger som er hvitlistet for sandkassebrukere",
+ "translate-workflow-state-": "(ikke satt)",
+ "translate-workflowstatus": "Status: $1",
+ "translate-workflow-set-do": "Sett",
+ "translate-workflow-set-doing": "Setter …",
+ "translate-workflow-set-done": "Satt!",
+ "translate-workflow-set-error-alreadyset": "Den forespurte tilstanden er identisk med den gjeldende tilstanden.",
+ "translate-workflow-autocreated-summary": "Automatisk oppretting av side for arbeidsflytstatus $1",
+ "translate-stats-workflow": "Status",
+ "translate-workflowgroup-label": "Arbeidsflytstatuser",
+ "translate-workflowgroup-desc": "Denne meldingsgruppen viser arbeidsflytsstatusene for oversettelse.\nDisse statusene defineres i konfigurasjonsvariabelen $wgTranslateWorkflowStates.",
+ "translate-dynagroup-recent-label": "Nylige oversettelser",
+ "translate-dynagroup-recent-desc": "Denne meldingsgruppen viser alle nylige oversettelser til dette språket.\nMest nyttig for korrekturlesningsoppgaver.",
+ "translate-dynagroup-additions-label": "Nylige tillegg",
+ "translate-dynagroup-additions-desc": "Denne meldingsgruppen viser nye og endrede meldinger.",
+ "translate-dynagroup-by": "Oversettelse gjort av {{GENDER:$1|$1}}",
+ "translate-dynagroup-byc": "Oversettelse gjort av {{GENDER:$1|$1}} ($2)",
+ "translate-dynagroup-last": "Siste endring av {{GENDER:$1|$1}}",
+ "translate-dynagroup-lastc": "Siste endring av {{GENDER:$1|$1}} ($2)",
+ "translate-gethelp": "Hjelp",
+ "translate-msggroupselector-projects": "Meldingsgruppe",
+ "translate-msggroupselector-search-placeholder": "Søk grupper",
+ "translate-msggroupselector-search-all": "Alle",
+ "translate-msggroupselector-search-recent": "Siste",
+ "translate-msggroupselector-view-subprojects": "$1 {{PLURAL:$1|undergruppe|undergrupper}}",
+ "tux-languageselector": "Oversett til",
+ "tux-tab-all": "Alle",
+ "tux-tab-untranslated": "Uoversatt",
+ "tux-tab-outdated": "Utdatert",
+ "tux-tab-translated": "Oversatt",
+ "tux-tab-unproofread": "Ikke korrekturlest",
+ "tux-edit": "Rediger",
+ "tux-status-optional": "Valgfri",
+ "tux-status-fuzzy": "Utdatert",
+ "tux-status-proofread": "Korrekturlest",
+ "tux-status-translated": "Oversatt",
+ "tux-status-saving": "Lagrer...",
+ "tux-status-unsaved": "Ikke lagret",
+ "tux-editor-placeholder": "Din oversettelse",
+ "tux-editor-paste-original-button-label": "Lim inn kildetekst",
+ "tux-editor-discard-changes-button-label": "Se bort i fra endringer",
+ "tux-editor-save-button-label": "Lagre oversettelse",
+ "tux-editor-skip-button-label": "Hopp over til neste",
+ "tux-editor-cancel-button-label": "Avbryt",
+ "tux-editor-confirm-button-label": "Bekreft oversettelse",
+ "tux-editor-shortcut-info": "Trykk på «$1» for å lagre eller «$2» for å hoppe videre til neste beskjed eller «$3» for andre snarveier.",
+ "tux-editor-edit-desc": "Rediger dokumentasjon",
+ "tux-editor-add-desc": "Legg til dokumentasjon",
+ "tux-editor-suggestions-title": "Forslag",
+ "tux-editor-in-other-languages": "På andre språk",
+ "tux-editor-need-more-help": "Trenger du mer hjelp?",
+ "tux-editor-ask-help": "Spør etter mer informasjon",
+ "tux-editor-tm-match": "$1% samsvar",
+ "tux-warnings-more": "{{PLURAL:$1|$1 flere}}",
+ "tux-warnings-hide": "skjul",
+ "tux-editor-save-failed": "Lagring av oversettelsen feilet: $1",
+ "tux-editor-n-uses": "brukt $1 {{PLURAL:$1|gang|ganger}}",
+ "tux-editor-message-desc-more": "Vis flere",
+ "tux-editor-message-desc-less": "Vis færre",
+ "tux-editor-clear-translated": "Skjul oversatte",
+ "tux-editor-proofreading-mode": "Korrekturles",
+ "tux-editor-translate-mode": "Liste",
+ "tux-editor-proofreading-hide-own-translations": "Skjul dine oversettelser",
+ "tux-editor-proofreading-show-own-translations": "Vis dine oversettelser",
+ "tux-proofread-action-tooltip": "Merk som godkjent",
+ "tux-proofread-edit-label": "Rediger",
+ "tux-editor-page-mode": "Side",
+ "tux-editor-outdated-warning": "Denne oversettelsen trenger kanskje å bli oppdatert.",
+ "tux-editor-outdated-warning-diff-link": "Vis forskjeller",
+ "tux-editor-doc-editor-placeholder": "Meldingsdokumentasjon",
+ "tux-editor-doc-editor-save": "Lagre dokumentasjon",
+ "tux-editor-doc-editor-cancel": "Avbryt",
+ "tux-messagetable-more-messages": "$1 flere {{PLURAL:$1|melding|meldinger}}",
+ "tux-messagetable-loading-messages": "Laster {{PLURAL:$1|melding|meldinger}}...",
+ "tux-message-filter-placeholder": "Filtrer liste",
+ "tux-message-filter-result": "Fant $1 {{PLURAL:$1|resultat|resultater}} for \"$2\"",
+ "tux-message-filter-advanced-button": "Avansert søk",
+ "tux-message-filter-optional-messages-label": "Valgfrie meldinger",
+ "tux-proofread-translated-by-self": "Oversatt av deg",
+ "tux-empty-list-all": "Denne meldingsgruppen er tom",
+ "tux-empty-list-all-guide": "Velg en annen meldingsgruppe å oversette",
+ "tux-translate-page-no-such-group": "<strong>Den valgte gruppen eksisterer ikke.</strong> Velg en annen meldingsgruppe.",
+ "tux-empty-list-translated": "Ingen uoversatte meldinger",
+ "tux-empty-list-translated-guide": "Du kan hjelpe til å oversette",
+ "tux-empty-list-translated-action": "Oversett",
+ "tux-empty-no-messages-to-display": "Ingen meldinger å vise.",
+ "tux-empty-there-are-optional": "Det er valgfrie meldinger som ikke vises i listen",
+ "tux-empty-show-optional-messages": "Vis valgfrie meldinger",
+ "tux-empty-no-outdated-messages": "Ingen utdaterte meldinger",
+ "tux-empty-nothing-to-proofread": "Ingenting å godkjenne",
+ "tux-empty-you-can-help-providing": "Du kan bidra med nye oversettelser",
+ "tux-empty-nothing-new-to-proofread": "Intet nytt å godkjenne",
+ "tux-empty-you-can-review-already-proofread": "Du kan godkjenne oversettelser som allerede er godkjent av andre.",
+ "tux-empty-list-other": "Ingenting å oversette",
+ "tux-empty-list-other-guide": "Du kan hjelpe til med å korrekturlese eksisterende oversettelser",
+ "tux-empty-list-other-action": "Korrekturles oversettelser",
+ "tux-empty-list-other-link": "Vis alle meldinger",
+ "tux-editor-close-tooltip": "Lukk",
+ "tux-editor-expand-tooltip": "Utvid",
+ "tux-editor-collapse-tooltip": "Skjul",
+ "tux-editor-message-tools-history": "Historikk",
+ "tux-editor-message-tools-translations": "Alle oversettelser",
+ "tux-editor-loading": "Laster...",
+ "translate-search-more-languages-info": "$1 flere {{PLURAL:$1|språk}}",
+ "translate-statsbar-tooltip": "$1% oversatt, $2% korrekturlest",
+ "translate-statsbar-tooltip-with-fuzzy": "$1% oversatt, $2% korrekturlest, $3% utdatert",
+ "translate-search-more-groups-info": "$1 {{PLURAL:$1|gruppe|grupper}} til",
+ "translate-ulsdep-title": "Konfigrasjonsfeil",
+ "translate-ulsdep-body": "Oversettelsesutvidelsen er avhengig av [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:UniversalLanguageSelector utvidelsen Universal Language Selector]."
+}
diff --git a/MLEB/Translate/i18n/core/nds-nl.json b/MLEB/Translate/i18n/core/nds-nl.json
new file mode 100644
index 00000000..e9db34cf
--- /dev/null
+++ b/MLEB/Translate/i18n/core/nds-nl.json
@@ -0,0 +1,19 @@
+{
+ "@metadata": {
+ "authors": [
+ "Servien"
+ ]
+ },
+ "translate": "Vertalen",
+ "translate-taction-proofread": "Naokieken",
+ "translate-taction-lstats": "Taalstaotistieken",
+ "translate-magic-namespace": "Naamruumtebenamingen",
+ "translate-magic-notsaved": "Joew bewarking is niet op-esleugen!",
+ "translate-magic-saved": "Joew wiezigingen bin op-esleugen.",
+ "translate-rc-translation-filter-no": "Niks doon",
+ "translate-statsf-scale-months": "Maonden",
+ "translate-statsf-submit": "Naokieken",
+ "translate-translations-fieldset-title": "Tiejige",
+ "translate-language-code": "Taalkode",
+ "translate-language-code-field-name": "Taalkode:"
+}
diff --git a/MLEB/Translate/i18n/core/nds.json b/MLEB/Translate/i18n/core/nds.json
new file mode 100644
index 00000000..5b328393
--- /dev/null
+++ b/MLEB/Translate/i18n/core/nds.json
@@ -0,0 +1,31 @@
+{
+ "@metadata": {
+ "authors": [
+ "Joachim Mos",
+ "Slomox"
+ ]
+ },
+ "translate": "Översetten",
+ "translate-taction-translate": "Översetten",
+ "translate-page-group": "Grupp",
+ "translate-page-language": "Spraak",
+ "translate-page-navigation-legend": "Navigatschoon",
+ "translate-next": "Nächste Siet",
+ "translate-prev": "Vörige Siet",
+ "translate-page-description-legend": "Informatschoon över de Köppel",
+ "translate-page-edit": "ännern",
+ "translate-ext-url": "<hr />Websied: $1",
+ "translate-optional": "(optschoonal)",
+ "translate-edit-title": "Ännern \"$1\"",
+ "translate-edit-translation": "Översetten",
+ "translate-edit-information": "Informatschoon to Nochricht ($1)",
+ "translate-edit-in-other-languages": "Nochricht in annere Spraken",
+ "translate-edit-tmmatch-source": "Översettenborntext: $1",
+ "translate-magic-cm-original": "Original",
+ "translate-magic-cm-comment": "Kommentar:",
+ "translate-magic-cm-save": "Spiekern",
+ "translate-magic-special": "Spezialsieden-Alternativnaams",
+ "translate-language-code": "Spraak-Code",
+ "translate-language-code-field-name": "Spraak-Code:",
+ "tux-proofread-edit-label": "Ännern"
+}
diff --git a/MLEB/Translate/i18n/core/ne.json b/MLEB/Translate/i18n/core/ne.json
new file mode 100644
index 00000000..0924a61c
--- /dev/null
+++ b/MLEB/Translate/i18n/core/ne.json
@@ -0,0 +1,105 @@
+{
+ "@metadata": {
+ "authors": [
+ "Bhawani Gautam",
+ "Bhawani Gautam Rhk",
+ "RajeshPandey",
+ "सरोज कुमार ढकाल",
+ "Krish Dulal"
+ ]
+ },
+ "translate": "अनुवाद गर्ने",
+ "translate-desc": "मीडियाविकि तथा अन्यको अनुवादको निम्ति [[Special:Translate|विशेष पृष्ठ]]",
+ "translate-page-no-such-language": "निर्दिष्ट भाषा अमान्य थियो",
+ "translate-page-no-such-group": "निर्दिष्ट समूह अमान्य थियो",
+ "translate-page-disabled": "यस भाषामा यो समूहको अनुवाद कार्य निस्क्रिय गरिएको छ।\nकारण:\n\n<em>$1</em>",
+ "translate-page-settings-legend": "सेटिंग्स",
+ "translate-page-group": "समूह",
+ "translate-page-language": "भाषा",
+ "translate-page-limit": "सीमा",
+ "translate-page-limit-option": "प्रति पृष्ठ $1 {{PLURAL:$1|सन्देश|सन्देशहरु}}",
+ "translate-submit": "छाँटेर हेर्ने",
+ "translate-page-navigation-legend": "अन्वेषण",
+ "translate-page-showing": "$3 मध्येका $1 देखि $2 सम्म सन्देशहरु देखाइँदै",
+ "translate-page-showing-all": "$1 {{PLURAL:$1|सन्देश|सन्देशहरु}} देखाइँदै।",
+ "translate-page-showing-none": "देखाउनु पर्ने सन्देश छैन।",
+ "translate-next": "अर्को पृष्ठ",
+ "translate-prev": "अघिल्लो पृष्ठ",
+ "translate-page-description-legend": "समूह बारेको जानकारी",
+ "translate-page-edit": "सम्पादन गर्ने",
+ "translate-ext-url": "<hr />वेवसाइट: $1",
+ "translate-optional": "(वैकल्पिक)",
+ "translate-ignored": "(अनदेखा गरिएको)",
+ "translate-edit-title": "\"$1\" सम्पादन गर्ने",
+ "translate-edit-definition": "सन्देश परिभाषा",
+ "translate-edit-translation": "अनुवाद",
+ "translate-edit-contribute": "योगदान गर्ने",
+ "translate-edit-no-information": "''यो सन्देशको दस्तावेजीकरण (documentation) छैन''\n''यदि तपाईं यो सन्देश कहाँ अथवा कसरी प्रयोग गरिन्छ भन्ने कुरा जान्नु हुन्छ भनें तपाईंले यसको दस्तावेजीकरण थप गरी अरु अनुवादकहरुलाई सहयोग दिन सक्नुहुन्छ।''",
+ "translate-edit-information": "($1) सन्देशको बारेमा जानकारी",
+ "translate-edit-in-other-languages": "सन्देश अरु भाषाहरुमा",
+ "translate-edit-committed": "सफ्टवेयरमा वर्तमान अनुवाद",
+ "translate-edit-warnings": "चेतावनी अपूर्ण अनुवादको बारेमा",
+ "translate-edit-tmsugs": "अनुवाद स्मृतिबाट सुझावहरु",
+ "translate-edit-tmmatch": "$1% मेल",
+ "translate-use-suggestion": "यस सुझाउलाई अनुवादको कोठामा हाल्नुहोस्। यसले वर्तमान सामग्री(शव्दहरु)को स्थान लिनेछ।",
+ "translate-magic-pagename": "विस्तारित मीडियाविकि अनुवाद",
+ "translate-magic-submit": "हेर्ने",
+ "translate-magic-cm-export": "निर्यात गर्ने",
+ "translate-magic-cm-current": "वर्तमान",
+ "translate-magic-cm-original": "मूल",
+ "translate-magic-cm-comment": "टिप्पणी:",
+ "translate-magic-cm-save": "संग्रह गर्ने",
+ "translate-magic-cm-savefailed": "संग्रह विफल भयो",
+ "translate-magic-words": "जादुई शव्दहरु",
+ "translate-magic-notsaved": "तपाईंको सम्पादन संग्रह गरिएको थिएन!",
+ "translate-magic-saved": "तपाईंका परिवर्तनहरु सफलता पूर्वक संग्रह भए।",
+ "translate-checks-parameters-unknown": "निम्न {{PLURAL:$2|पैरामीटर अज्ञात हो|पैरामीटरहरु अज्ञात हुन्}} :\n<strong><nowiki>$1</nowiki></strong>",
+ "translationstats": "अनुवाद तथ्यांक",
+ "translate-stats-edits": "सम्पादनहरु",
+ "translate-stats-users": "अनुवादकहरु",
+ "translate-stats-registrations": "पंजीकरण",
+ "translate-statsf-options": "ग्राफ विकल्पहरु",
+ "translate-statsf-width": "चौड़ाई पिक्सलमा:",
+ "translate-statsf-height": "उचाई पिक्सलमा:",
+ "translate-statsf-days": "समयावधि दिनमा:",
+ "translate-statsf-start": "समयावधि दिनमा:",
+ "translate-statsf-scale": "बीजमयता:",
+ "translate-statsf-scale-months": "महिना",
+ "translate-statsf-scale-weeks": "हप्ता",
+ "translate-statsf-scale-days": "दिन",
+ "translate-statsf-scale-hours": "घण्टा",
+ "translate-statsf-count": "माप:",
+ "translate-statsf-count-edits": "सम्पादन संख्या",
+ "translate-statsf-count-users": "सक्रिय अनुवादकहरु",
+ "translate-statsf-count-registrations": "नयाँ प्रयोगकर्ताहरु",
+ "translate-statsf-submit": "पूर्वावलोकन",
+ "translate-tag-category": "अनुवाद गर्नुपर्ने पृष्ठहरू",
+ "translate-tag-page-desc": "विकि पृष्ठ [[$2|$1]]को अनुवाद।",
+ "translate-sidebar-alltrans": "अरु भाषामा",
+ "translations": "सबै अनुवादहरु",
+ "translations-summary": "सबै उपलब्ध अनुवादहरु हेर्न तल सन्देशको नाम दिनुहोस्।",
+ "translate-translations-no-message": "\"$1\" अनुवाद योग्य सन्देश होइन",
+ "translate-translations-none": "\"$1\"को लागि अनुवादहरु छैनन्।",
+ "translate-translations-count": "{{PLURAL:$1|एउटा अनुवाद|$1 अनुवादहरु}} पाइयो।",
+ "translate-translations-fieldset-title": "सन्देश",
+ "translate-translations-messagename": "नाम:",
+ "translate-translations-project": "परियोजना:",
+ "translate-translations-history-short": "हि",
+ "languagestats": "भाषा तथ्यांक",
+ "languagestats-summary": "यस पृष्ठमा भाषाको निम्ति सबै सन्देश समूहहरुका लागि अनुवाद तथ्यांक प्रदर्शित गरिन्छ।",
+ "languagestats-stats-for": "$1 ($2)को लागि अनुवाद तथ्यांक।",
+ "languagestats-recenttranslations": "भर्खरैका अनुवादहरु",
+ "translate-langstats-expand": "फैलाउनु",
+ "translate-langstats-collapse": "खुम्च्याउने",
+ "translate-langstats-expandall": "सबै फैलाउ",
+ "translate-langstats-collapseall": "सबै खुम्च्याउने",
+ "translate-language-code": "भाषा कोड",
+ "translate-language-code-field-name": "भाषा कोड:",
+ "translate-language": "भाषा",
+ "translate-total": "सन्देशहरु",
+ "translate-untranslated": "अनुवाद नगरिएका",
+ "translate-percentage-complete": "सकिएका",
+ "translate-percentage-fuzzy": "पुराना (काम नलाग्ने)",
+ "supportedlanguages-recenttranslations": "भर्खरैका अनुवादहरु",
+ "translate-searchprofile": "अनुवाद"
+}
diff --git a/MLEB/Translate/i18n/core/niu.json b/MLEB/Translate/i18n/core/niu.json
new file mode 100644
index 00000000..eb8a9ffc
--- /dev/null
+++ b/MLEB/Translate/i18n/core/niu.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Jose77"
+ ]
+ },
+ "translate-page-navigation-legend": "Navikati"
+}
diff --git a/MLEB/Translate/i18n/core/nl.json b/MLEB/Translate/i18n/core/nl.json
new file mode 100644
index 00000000..3ac9cd15
--- /dev/null
+++ b/MLEB/Translate/i18n/core/nl.json
@@ -0,0 +1,395 @@
+{
+ "@metadata": {
+ "authors": [
+ "HanV",
+ "Kippenvlees1",
+ "Konovalov",
+ "McDutchie",
+ "SPQRobin",
+ "Siebrand",
+ "Tjcool007",
+ "Tvdm",
+ "User555",
+ "Wiki13",
+ "Mar(c)",
+ "Southparkfan",
+ "Sjoerddebruin"
+ ]
+ },
+ "translate": "Vertalen",
+ "translate-desc": "[[Special:Translate|Speciale pagina]] voor het vertalen van MediaWiki en meer",
+ "translate-taskui-view": "Alle berichten weergeven",
+ "translate-taskui-untranslated": "Onvertaalde berichten weergeven",
+ "translate-taskui-optional": "Optionele berichten weergeven",
+ "translate-taskui-acceptqueue": "Alleen berichten die ik als gecontroleerd kan markeren",
+ "translate-taskui-reviewall": "Alle vertalingen controleren",
+ "translate-taskui-export-to-file": "Exporteren in de oorspronkelijke indeling",
+ "translate-taskui-export-as-po": "Exporteren voor offline vertaling",
+ "translate-taction-translate": "Vertalen",
+ "translate-taction-proofread": "Controleren",
+ "translate-taction-lstats": "Taalstatistieken",
+ "translate-taction-mstats": "Berichtengroepstatistieken",
+ "translate-taction-export": "Exporteren",
+ "translate-taction-disabled": "Deze handeling is uitgeschakeld op deze wiki.",
+ "translate-page-no-such-language": "Er is een ongeldige taalcode opgegeven",
+ "translate-page-no-such-group": "De opgegeven groep bestaat niet.",
+ "translate-page-disabled": "Vertalingen in deze taal voor deze groep zijn uitgeschakeld. Reden:\n\n<em>$1</em>",
+ "translate-language-disabled": "Vertalen in deze taal is uitgeschakeld.",
+ "translate-page-settings-legend": "Instellingen",
+ "translate-page-group": "Groep",
+ "translate-page-language": "Taal",
+ "translate-page-limit": "Maximaal",
+ "translate-page-limit-option": "$1 {{PLURAL:$1|bericht|berichten}} per pagina",
+ "translate-submit": "Ophalen",
+ "translate-page-navigation-legend": "Navigatie",
+ "translate-page-showing": "De berichten $1 tot $2 van $3 worden weergegeven.",
+ "translate-page-showing-all": "Er {{PLURAL:$1|wordt 1 bericht|worden $1 berichten}} weergegeven.",
+ "translate-page-showing-none": "Er zijn geen berichten in deze selectie.",
+ "translate-next": "Volgende pagina",
+ "translate-prev": "Vorige pagina",
+ "translate-page-description-legend": "Informatie over de groep",
+ "translate-page-description-hasoptional": "Deze berichtengroep bevat optionele berichten.\nOptionele berichten hoeven alleen vertaald te worden als uw taal bijzondere eigenschappen heeft, zoals dat deze geen spaties gebruikt of dat eigennamen in de taal getranslitereerd worden. $1",
+ "translate-page-description-hasoptional-open": "Optionele berichten weergeven.",
+ "translate-page-edit": "bewerken",
+ "translate-ext-url": "<hr />Website: $1",
+ "translate-optional": "(optioneel)",
+ "translate-ignored": "(genegeerd)",
+ "translate-edit-title": "\"$1\" bewerken",
+ "translate-edit-definition": "Berichtdefinitie",
+ "translate-edit-translation": "Vertaling",
+ "translate-edit-contribute": "bijdragen",
+ "translate-edit-no-information": "<em>Dit bericht heeft geen documentatie.\nAls u weet waar dit bericht wordt gebruikt, dan kunt u andere gebruikers helpen door documentatie voor dit bericht toe te voegen.</em>",
+ "translate-edit-information": "Informatie over bericht ($1)",
+ "translate-edit-in-other-languages": "Bericht in andere talen",
+ "translate-edit-committed": "Huidig bericht in software",
+ "translate-edit-warnings": "Waarschuwingen over onjuiste vertalingen",
+ "translate-edit-tmsugs": "Suggesties uit het vertaalgeheugen",
+ "translate-edit-tmmatch-source": "Brontekst voor vertaling: $1",
+ "translate-edit-tmmatch": "$1% overeenkomst",
+ "translate-use-suggestion": "Huidige vertaling door deze suggestie vervangen.",
+ "translate-edit-nopermission": "U hebt vertaalrechten nodig om te kunnen vertalen.",
+ "translate-edit-askpermission": "Vertaalrechten aanvragen",
+ "translate-magic-pagename": "Uitgebreide MediaWiki-vertaling",
+ "translate-magic-help": "U kunt alternatieven voor speciale pagina's, magische woorden en naamruimtebenamingen vertalen.\n\nAlternatieven voor speciale pagina's en magische woorden kunnen meerdere vertalingen hebben.\nScheid vertalingen met een komma (,).\nNaamruimtebenamingen kunnen slechts één vertaling hebben.\n\nHet vertalen van naamruimte voor projectoverleg <code>$1 talk</code> kan lastig zijn.\n<code>$1</code> wordt vervangen door de projectsitenaam (bijvoorbeeld <code>{{ns:project_talk}}</code>).\nAls het in uw taal niet mogelijk is een geldige uitdrukking te vormen zonder de sitenaam te wijzigen, neem dan contact op met ons op via de [[Support|pagina voor ondersteuning]].\n\nU moet vertaler zijn om wijzigingen op te kunnen slaan.\nWijzigingen worden niet bewaard totdat u op \"Pagina opslaan\" hebt geklikt.",
+ "translate-magic-module": "Module:",
+ "translate-magic-submit": "Ophalen",
+ "translate-magic-cm-export": "Exporteren",
+ "translate-magic-nothing-to-export": "Er is niets om te exporteren.",
+ "translate-magic-cm-to-be": "Toekomstig",
+ "translate-magic-cm-current": "Huidig",
+ "translate-magic-cm-original": "Brontekst",
+ "translate-magic-cm-comment": "Samenvatting:",
+ "translate-magic-cm-save": "Opslaan",
+ "translate-magic-cm-updatedusing": "Bijgewerkt via [[Special:AdvancedTranslate|{{int:Translate-magic-pagename}}]]",
+ "translate-magic-cm-savefailed": "Opslaan mislukt",
+ "translate-magic-special": "Alternatieven speciale pagina's",
+ "translate-magic-words": "Magische woorden",
+ "translate-magic-namespace": "Naamruimtebenamingen",
+ "translate-magic-notsaved": "Uw bewerking is niet opgeslagen!",
+ "translate-magic-errors": "Los de volgende {{PLURAL:$1|fout|fouten}} op in de vertalingen:",
+ "translate-magic-saved": "Uw wijzigingen zijn opgeslagen.",
+ "translate-checks-parameters": "De volgende {{PLURAL:$2|parameter wordt|parameters worden}} niet gebruikt:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-parameters-unknown": "De volgende {{PLURAL:$2|parameter is|parameters zijn}} onbekend:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-balance": "Er wordt een oneven {{PLURAL:$2|aantal haakjes|aantal haakjes}} gebruikt:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links": "De volgende {{PLURAL:$2|koppeling is|koppelingen zijn}} problematisch:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links-missing": "De volgende {{PLURAL:$2|koppeling ontbreekt|$2 koppelingen ontbreken}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-xhtml": "Vervang de volgende {{PLURAL:$2|tag|tags}} door de juiste:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-plural": "De definitie bevat <nowiki>{{PLURAL:}}</nowiki>, maar de vertaling niet.",
+ "translate-checks-plural-forms": "Via <nowiki>{{PLURAL:}}</nowiki> {{PLURAL:$1|is één vorm|zijn $1 vormen}} opgegeven, maar {{PLURAL:$2|slechts één vorm wordt|$2 worden}} ondersteund (exclusief de vormen 0= en 1=).",
+ "translate-checks-plural-dupe": "Er zijn duplicaatvormen aan het einde van <nowiki>{{PLURAL:}}</nowiki> aangetroffen. <nowiki>{{PLURAL:$1|hersenen|hersenen}}</nowiki> moet genoteerd worden als <nowiki>{{PLURAL:$1|hersenen}}</nowiki>.",
+ "translate-checks-pagename": "Afwijkende naamruimte vergeleken met de brontekst",
+ "translate-checks-format": "Deze vertaling wijkt af van het bronbericht of heeft een ongeldige opmaak: $1",
+ "translate-checks-escape": "De volgende escapes zijn waarschijnlijk per ongeluk toegepast: <strong>$1</strong>",
+ "translate-checks-parametersnotequal": "Aantal parameters is {{PLURAL:$1|$1}}; moet {{PLURAL:$2|$2}} zijn.",
+ "translate-checks-malformed": "<nowiki>$1</nowiki> heeft een ongeldige indeling.",
+ "translate-checks-fudforum-syntax": "Gebruik <nowiki>$1</nowiki> in plaats van <nowiki>$2</nowiki> voor dit project.",
+ "translate-pref-nonewsletter": "Mij geen nieuwsbrieven per e-mail sturen",
+ "translate-pref-editassistlang": "Hulptalen:",
+ "prefs-translate": "Vertaalinstellingen",
+ "translate-pref-editassistlang-help": "Kommagescheiden lijst van taalcodes.\nDe vertaling van berichten in deze talen worden weergegeven tijdens het vertalen.\nDe standaardlijst van hulptalen is taalafhankelijk.",
+ "translate-pref-editassistlang-bad": "Er staat een ongeldige taalcode in de lijst:\n<nowiki>$1</nowiki>.",
+ "right-translate": "Bewerken via de vertaalinterface",
+ "right-translate-manage": "Berichtengroepen beheren",
+ "action-translate-manage": "berichtengroepen te beheren",
+ "right-translate-import": "Vertalingen van buiten het systeem importeren",
+ "action-translate-import": "vertalingen van buiten het systeem te importeren",
+ "right-translate-messagereview": "Vertalingen accepteren",
+ "right-translate-groupreview": "Workflowstatus van berichtengroepen wijzigen",
+ "translate-rc-translation-filter": "Vertalingen filteren:",
+ "translate-rc-translation-filter-no": "Niets doen",
+ "translate-rc-translation-filter-only": "Alleen vertalingen weergeven",
+ "translate-rc-translation-filter-filter": "Vertalingen wegfilteren",
+ "translate-rc-translation-filter-site": "Alleen wijzigingen aan plaatselijke systeemberichten",
+ "translationstats": "Vertaalstatistieken",
+ "translate-stats-edits": "Bewerkingen",
+ "translate-stats-users": "Vertalers",
+ "translate-stats-registrations": "Registraties",
+ "translate-stats-reviews": "Beoordelingen",
+ "translate-stats-reviewers": "Controleurs",
+ "translate-statsf-intro": "U kunt via dit formulier eenvoudige statistieken samenstellen.\nAlle waarden hebben een limiet aan de boven- en onderzijde.",
+ "translate-statsf-options": "Grafiekopties",
+ "translate-statsf-width": "Breedte in pixels:",
+ "translate-statsf-height": "Hoogte in pixels:",
+ "translate-statsf-days": "Periode in dagen:",
+ "translate-statsf-start": "Begindatum:",
+ "translate-statsf-scale": "Granulariteit:",
+ "translate-statsf-scale-months": "Maanden",
+ "translate-statsf-scale-weeks": "Weken",
+ "translate-statsf-scale-days": "Dagen",
+ "translate-statsf-scale-hours": "Uren",
+ "translate-statsf-count": "Eenheid:",
+ "translate-statsf-count-edits": "Aantal bewerkingen",
+ "translate-statsf-count-users": "Actieve vertalers",
+ "translate-statsf-count-registrations": "Nieuwe gebruikers",
+ "translate-statsf-count-reviews": "Gecontroleerde vertalingen",
+ "translate-statsf-count-reviewers": "Controleurs",
+ "translate-statsf-language": "Kommagescheiden lijst van taalcodes:",
+ "translate-statsf-group": "Kommagescheiden lijst van groepscodes:",
+ "translate-statsf-submit": "Voorvertoning",
+ "translate-tag-category": "Vertaalbare pagina's",
+ "translate-tag-page-desc": "Vertaling van de wikipagina [[$2|$1]] van $3 ($4).",
+ "translate-sidebar-alltrans": "In andere talen",
+ "translations": "Alle vertalingen",
+ "translations-summary": "Voer de naam van een bericht in om alle beschikbare vertalingen weer te geven.",
+ "translate-translations-no-message": "\"$1\" is geen vertaalbaar bericht",
+ "translate-translations-none": "Er zijn geen vertalingen beschikbaar voor \"$1\"",
+ "translate-translations-count": "Er {{PLURAL:$1|is één vertaling|zijn $1 vertalingen}} gevonden.",
+ "translate-translations-fieldset-title": "Bericht",
+ "translate-translations-messagename": "Naam:",
+ "translate-translations-project": "Project:",
+ "translate-translations-including-no-param": "Geef een geldige berichtnaam op als subpaginaparameter",
+ "translate-translations-history-short": "g",
+ "languagestats": "Taalstatistieken",
+ "languagestats-summary": "Op deze pagina worden vertaalstatistieken weergegeven voor alle berichtengroepen voor een taal.",
+ "messagegroupstats-summary": "Op deze pagina worden berichtengroepstatistieken weergegeven.",
+ "languagestats-stats-for": "Vertaalstatistieken voor $1 ($2).",
+ "languagestats-recenttranslations": "recente vertalingen",
+ "translate-langstats-incomplete": "Sommige statistieken op deze pagina zijn onvolledig. Herlaad de pagina voor meer complete statistieken.",
+ "translate-langstats-expand": "uitvouwen",
+ "translate-langstats-collapse": "inklappen",
+ "translate-langstats-expandall": "alles uitvouwen",
+ "translate-langstats-collapseall": "alles inklappen",
+ "translate-language-code": "Taalcode",
+ "translate-language-code-field-name": "Taalcode:",
+ "translate-suppress-complete": "Volledig vertaalde berichtengroepen verbergen",
+ "translate-ls-noempty": "Volledig onvertaalde berichtengroepen verbergen",
+ "translate-language": "Taal",
+ "translate-total": "Berichten",
+ "translate-untranslated": "Te vertalen",
+ "translate-percentage-complete": "Vertaald",
+ "translate-percentage-fuzzy": "Verouderd",
+ "translate-languagestats-overall": "Alle berichtengroepen samen",
+ "translate-ls-submit": "Statistieken weergeven",
+ "translate-ls-column-group": "Berichtengroep",
+ "translate-mgs-pagename": "Berichtengroepstatistieken",
+ "translate-mgs-fieldset": "Voorkeuren weergeven",
+ "translate-mgs-group": "Berichtengroep:",
+ "translate-mgs-nocomplete": "Volledig vertaalde talen verbergen",
+ "translate-mgs-noempty": "Talen zonder vertalingen verbergen",
+ "translate-mgs-submit": "Statistieken weergeven",
+ "translate-mgs-column-language": "Taal",
+ "translate-mgs-totals": "Alle talen samen",
+ "translate-mgs-invalid-group": "De opgegeven groep \"$1\" bestaat niet.",
+ "translate-mgs-nothing": "Er is niets weer te geven voor de opgegeven statistieken.",
+ "supportedlanguages": "Ondersteunde talen",
+ "supportedlanguages-summary": "Op deze pagina wordt een lijst van alle talen die in {{SITENAME}} worden ondersteund weergegeven, samen met de namen van de vertalers die werken aan die taal.\nDe naam van een vertaler wordt groter weergegeven als deze meer bewerkingen heeft gemaakt.\nDe kleur van een onderstreping geeft aan hoe recent een vertaler actief is geweest.",
+ "supportedlanguages-colorlegend": "Legenda voor de kleuren: laatste vertaling $1 dagen geleden.",
+ "supportedlanguages-translators": "{{PLURAL:$2|Vertaler|Vertalers}}: $1",
+ "supportedlanguages-recenttranslations": "recente vertalingen",
+ "supportedlanguages-count": "$1 {{PLURAL:$1|taal|talen}} in totaal.",
+ "supportedlanguages-activity": "$1: $2 {{PLURAL:$2|bewerking|bewerkingen}} - laatste bewerking {{PLURAL:$3|gisteren|$3 dagen}} geleden",
+ "translate-save": "Opslaan ($1)",
+ "translate-jssti-add": "Aan lijst toevoegen",
+ "managemessagegroups": "Berichtengroepen beheren",
+ "translate-smg-notallowed": "U mag deze handeling niet uitvoeren.",
+ "translate-smg-nochanges": "Er zijn geen veranderingen te verwerken.",
+ "translate-smg-submit": "Wijzigingen opslaan voor verwerking",
+ "translate-smg-submitted": "De berichtendefinities zijn bijgewerkt. De wijzigingen worden in de achtergrond verwerkt.",
+ "translate-smg-more": "Na het opslaan van deze wijzigingen, zijn er nog meer wijzigingen te verwerken.",
+ "translate-smg-left": "Inhoud in wiki",
+ "translate-smg-right": "Inkomende wijzigingen",
+ "translate-manage-import-diff": "Bericht $1 | Handelingen: $2",
+ "translate-manage-import-new": "Nieuw bericht $1",
+ "translate-manage-import-deleted": "Verwijderd bericht $1",
+ "translate-manage-action-import": "Importeren",
+ "translate-manage-action-conflict": "Importeren en als fuzzy markeren",
+ "translate-manage-action-ignore": "Negeren",
+ "translate-manage-action-fuzzy": "Importeren en vertalingen als fuzzy markeren",
+ "translate-manage-nochanges": "Er zijn geen veranderingen in de berichtdefinities voor deze groep.",
+ "translate-manage-nochanges-other": "Er waren geen koppelingen voor deze taal.\nGebruik de onderstaande koppeling om terug te keren naar de detailweergave voor de groep.",
+ "translate-manage-inconsistent": "Er is een inconsistentie gedetecteerd in het verzoek.\nControleer de wijzigingen en probeer het nog eens.\nDetails: $1.",
+ "translate-manage-toolong": "De maximale verwerkingstijd van $1 {{PLURAL:$1|seconde|seconden}} is overschreden.\nVerzend de opdracht opnieuw.",
+ "translate-manage-import-summary": "Bezig met het importeren van een nieuwe versie uit een externe bron",
+ "translate-manage-conflict-summary": "Bezig met het importeren van een nieuwe versie uit een externe bron.\nControleer de wijziging.",
+ "translate-manage-fuzzy-summary": "De berichtdefinitie is gewijzigd",
+ "translate-manage-submit": "Uitvoeren",
+ "translate-manage-intro-other": "Hieronder wordt een lijst weergegeven van wijzigingen in de vertalingen voor de taal $1.\nControleer de wijzigingen en kies een uit te voeren handeling voor iedere vertaling.\nAls u wijzigingen negeert, worden deze bij de volgende export overschreven.",
+ "translate-manage-import-ok": "Geïmporteerd: $1",
+ "translate-manage-import-done": "Import afgerond!",
+ "importtranslations": "Vertalingen importeren",
+ "translate-import-from-local": "Lokaal bestand uploaden:",
+ "translate-import-load": "Bestand laden",
+ "translate-import-err-dl-failed": "Het was niet mogelijk het bestand op te halen: $1",
+ "translate-import-err-ul-failed": "De bestandsupload is mislukt",
+ "translate-import-err-invalid-title": "De opgegeven bestandsnaam <nowiki>$1</nowiki> is ongeldig.",
+ "translate-import-err-no-such-file": "Het bestand <nowiki>$1</nowiki> bestaat niet of is niet naar de server geüpload.",
+ "translate-import-err-stale-group": "De berichtengroep die in dit bestand staat bestaat niet.",
+ "translate-import-err-no-headers": "Het bestand heeft geen goed gevormd Gettext-opmaak zoals vereist door de uitbreiding Translate:\nhet was niet mogelijk de groep en taal te bepalen uit het bestand.",
+ "translate-import-err-warnings": "Het bestand is niet juist gevormd.\nZorg dat uw tekstverwerker het veld msgctxt niet verwijderd.\nDetails: $1",
+ "translate-js-summary": "Samenvatting:",
+ "translate-js-save": "Opslaan",
+ "translate-js-next": "Opslaan en volgende",
+ "translate-js-nonext": "Dit was het laatste bericht op deze pagina.",
+ "translate-js-skip": "Overslaan en volgende",
+ "translate-js-save-failed": "Opslaan is mislukt. Maak melding van deze fout.",
+ "translate-js-history": "Vertaalgeschiedenis",
+ "translate-js-support": "Vraag stellen",
+ "translate-js-support-title": "Vraag om hulp als er niet voldoende informatie is om dit bericht juist te vertalen.",
+ "translate-js-support-unsaved-warning": "U hebt niet-opgeslagen vertalingen.",
+ "translate-gs-pos": "Pos.",
+ "translate-gs-code": "Code",
+ "translate-gs-continent": "Continent",
+ "translate-gs-speakers": "Sprekers",
+ "translate-gs-score": "Score",
+ "translate-gs-multiple": "Meerdere",
+ "translate-gs-count": "Aantal",
+ "translate-gs-total": "Totaal",
+ "translate-gs-avgscore": "Gem. score",
+ "translate-documentation-language": "Berichtbeschrijving",
+ "translate-searchprofile": "Vertalingen",
+ "translate-searchprofile-tooltip": "In vertalingen zoeken",
+ "translate-search-languagefilter": "Taalfilter:",
+ "translate-search-nofilter": "Niet filteren",
+ "translate-messagereview-submit": "Als gecontroleerd markeren",
+ "translate-messagereview-progress": "Bezig met als gecontroleerd markeren...",
+ "translate-messagereview-failure": "Als gecontroleerd markeren mislukt: $1",
+ "translate-messagereview-done": "Als gecontroleerd gemarkeerd",
+ "translate-messagereview-reviews": "Gecontroleerd door {{PLURAL:$1|één gebruiker|$1 gebruikers}}",
+ "translate-messagereview-reviewswithyou": "Gecontroleerd door {{PLURAL:$1|u|$1 gebruikers, inclusief uzelf}}",
+ "api-error-invalidrevision": "De vertaling is niet gevonden.",
+ "api-error-unknownmessage": "Het bericht is niet aangetroffen.",
+ "api-error-fuzzymessage": "De vertaling is gemarkeerd als verouderd.",
+ "api-error-owntranslation": "U kunt uw eigen vertalingen niet als gecontroleerd markeren.",
+ "translate-messagereview-no-fuzzy": "U kunt verouderde vertalingen niet als gecontroleerd markeren.",
+ "translate-messagereview-no-own": "U kunt uw eigen vertalingen niet als gecontroleerd markeren.",
+ "translate-messagereview-doit": "Deze vertaling als correct gecontroleerd markeren.",
+ "log-name-translationreview": "Logboek vertalingencontrole",
+ "log-description-translationreview": "Logboek met alle controles van vertalingen en berichtengroepen.",
+ "logentry-translationreview-message": "$1 {{GENDER:$2|heeft}} de vertaling $3 als gecontroleerd gemarkeerd",
+ "logentry-translationreview-group": "$1 {{GENDER:$2|heeft}} de status van vertalingen in het \"$4\" van $3 gewijzigd van \"$6\" naar \"$7\"",
+ "group-translate-sandboxed": "Aspirant vertalers",
+ "group-translate-sandboxed-member": "{{GENDER:$1|aspirant vertaler}}",
+ "right-translate-sandboxmanage": "Zandbakgebruikers beheren",
+ "action-translate-sandboxmanage": "zandbakgebruikers te beheren",
+ "right-translate-sandboxaction": "Handelingen uitvoeren die zijn toegestaan voor zandbakgebruikers",
+ "action-translate-sandboxaction": "handelingen uit te voeren die zijn toegestaan voor zandbakgebruikers",
+ "translate-workflow-state-": "(niet ingesteld)",
+ "translate-workflowstatus": "Status: $1",
+ "translate-workflow-set-do": "Instellen",
+ "translate-workflow-set-doing": "Bezig met instellen...",
+ "translate-workflow-set-done": "Ingesteld",
+ "translate-workflow-set-error-alreadyset": "De opgegeven status is identiek aan de huidige status.",
+ "translate-workflow-autocreated-summary": "Pagina voor workflowstatus $1 is automatisch aangemaakt",
+ "translate-stats-workflow": "Status",
+ "translate-workflowgroup-label": "Workflowstatussen",
+ "translate-workflowgroup-desc": "Deze berichtengroep bevat de statussen voor de workflow.\nDeze statussen zijn ingesteld in de instelling $wgTranslateWorkflowStates.",
+ "translate-dynagroup-recent-label": "Recente vertalingen",
+ "translate-dynagroup-recent-desc": "Deze berichtengroep geeft alle recente wijzigingen weer in deze taal.\nDit is vooral nuttig voor de controletaken.",
+ "translate-dynagroup-additions-label": "Recente toevoegingen",
+ "translate-dynagroup-additions-desc": "In deze berichtengroep worden nieuwe en gewijzigde berichten weergegeven.",
+ "translate-dynagroup-by": "Vertaling gemaakt door {{GENDER:$1|$1}}",
+ "translate-dynagroup-byc": "Vertaling gemaakt door {{GENDER:$1|$1}} ($2)",
+ "translate-dynagroup-last": "Laatste wijziging door {{GENDER:$1|$1}}",
+ "translate-dynagroup-lastc": "Laatste wijziging door {{GENDER:$1|$1}} ($2)",
+ "translate-gethelp": "Hulp",
+ "translate-msggroupselector-projects": "Berichtengroep",
+ "translate-msggroupselector-search-placeholder": "Groepen zoeken",
+ "translate-msggroupselector-search-all": "Alle",
+ "translate-msggroupselector-search-recent": "Recent",
+ "translate-msggroupselector-view-subprojects": "$1 {{PLURAL:$1|subgroep|subgroepen}}",
+ "tux-languageselector": "Vertalen naar",
+ "tux-tab-all": "Alle",
+ "tux-tab-untranslated": "Onvertaald",
+ "tux-tab-outdated": "Verouderd",
+ "tux-tab-translated": "Vertaald",
+ "tux-tab-unproofread": "Ongecontroleerd",
+ "tux-edit": "Bewerken",
+ "tux-status-optional": "Optioneel",
+ "tux-status-fuzzy": "Verouderd",
+ "tux-status-proofread": "Gecontroleerd",
+ "tux-status-translated": "Vertaald",
+ "tux-status-saving": "Opslaan...",
+ "tux-status-unsaved": "Niet-opgeslagen",
+ "tux-editor-placeholder": "Uw vertaling",
+ "tux-editor-paste-original-button-label": "Brontekst invoegen",
+ "tux-editor-discard-changes-button-label": "Wijzigingen negeren",
+ "tux-editor-save-button-label": "Vertaling opslaan",
+ "tux-editor-skip-button-label": "Overslaan en volgende",
+ "tux-editor-cancel-button-label": "Annuleren",
+ "tux-editor-confirm-button-label": "Vertaling bevestigen",
+ "tux-editor-shortcut-info": "Druk op \"$1\" om op te slaan of druk op \"$2\" om naar het volgende bericht te gaan of \"$3\" voor andere snelkoppelingen.",
+ "tux-editor-edit-desc": "Documentatie bewerken",
+ "tux-editor-add-desc": "Documentatie toevoegen",
+ "tux-editor-suggestions-title": "Suggesties",
+ "tux-editor-in-other-languages": "In andere talen",
+ "tux-editor-need-more-help": "Meer hulp nodig?",
+ "tux-editor-ask-help": "Meer informatie vragen",
+ "tux-editor-tm-match": "$1% overeenkomst",
+ "tux-warnings-more": "{{PLURAL:$1|$1 meer}}",
+ "tux-warnings-hide": "verbergen",
+ "tux-editor-save-failed": "Het opslaan van de vertaling is mislukt: $1",
+ "tux-editor-n-uses": "{{PLURAL:$1|Eén|$1}} keer gebruikt",
+ "tux-editor-message-desc-more": "Meer weergeven",
+ "tux-editor-message-desc-less": "Minder weergeven",
+ "tux-editor-clear-translated": "Vertaald verbergen",
+ "tux-editor-proofreading-mode": "Controleren",
+ "tux-editor-translate-mode": "Lijst",
+ "tux-editor-proofreading-hide-own-translations": "Uw vertalingen verbergen",
+ "tux-editor-proofreading-show-own-translations": "Uw vertalingen weergeven",
+ "tux-proofread-action-tooltip": "Als gecontroleerd markeren",
+ "tux-proofread-edit-label": "Bewerken",
+ "tux-editor-page-mode": "Pagina",
+ "tux-editor-outdated-warning": "Deze vertaling moet mogelijk bijgewerkt worden.",
+ "tux-editor-outdated-warning-diff-link": "Verschillen weergeven",
+ "tux-editor-doc-editor-placeholder": "Berichtbeschrijving",
+ "tux-editor-doc-editor-save": "Documentatie opslaan",
+ "tux-editor-doc-editor-cancel": "Annuleren",
+ "tux-messagetable-more-messages": "Nog {{PLURAL:$1|één bericht|$1 berichten}}",
+ "tux-messagetable-loading-messages": "Bezig met laden van {{PLURAL:$1|bericht|berichten}}...",
+ "tux-message-filter-placeholder": "Lijst filteren",
+ "tux-message-filter-result": "{{PLURAL:$1|Eén resultaat|$1 resultaten}} gevonden voor \"$2\"",
+ "tux-message-filter-advanced-button": "Uitgebreid zoeken",
+ "tux-message-filter-optional-messages-label": "Optionele berichten",
+ "tux-proofread-translated-by-self": "Vertaald door u",
+ "tux-empty-list-all": "Deze berichtengroep is leeg",
+ "tux-empty-list-all-guide": "Selecteer een andere berichtengroep om te vertalen",
+ "tux-translate-page-no-such-group": "<strong>De opgegeven groep bestaat niet.</strong> Selecteer een andere berichtengroep.",
+ "tux-empty-list-translated": "Geen vertaalde berichten",
+ "tux-empty-list-translated-guide": "U kunt helpen met vertalen",
+ "tux-empty-list-translated-action": "Vertalen",
+ "tux-empty-no-messages-to-display": "Er zijn geen weer te geven berichten.",
+ "tux-empty-there-are-optional": "Er zijn optionele berichten die niet worden weergegeven in de lijst",
+ "tux-empty-show-optional-messages": "Optionele berichten weergeven",
+ "tux-empty-no-outdated-messages": "Geen verouderde berichten",
+ "tux-empty-nothing-to-proofread": "Er is niets te controleren",
+ "tux-empty-you-can-help-providing": "U kunt helpen met vertalen",
+ "tux-empty-nothing-new-to-proofread": "Er is niets nieuws te controleren",
+ "tux-empty-you-can-review-already-proofread": "U kunt vertalingen controleren die al gecontroleerd zijn door anderen.",
+ "tux-empty-list-other": "Er is niets om te vertalen",
+ "tux-empty-list-other-guide": "U kunt helpen met het controleren van bestaande vertalingen",
+ "tux-empty-list-other-action": "Vertalingen controleren",
+ "tux-empty-list-other-link": "Alle berichten weergeven",
+ "tux-editor-close-tooltip": "Sluiten",
+ "tux-editor-expand-tooltip": "Uitvouwen",
+ "tux-editor-collapse-tooltip": "Inklappen",
+ "tux-editor-message-tools-history": "Geschiedenis",
+ "tux-editor-message-tools-delete": "Verwijderen",
+ "tux-editor-message-tools-translations": "Alle vertalingen",
+ "tux-editor-loading": "Bezig met laden…",
+ "translate-search-more-languages-info": "Nog $1 {{PLURAL:$1|taal|talen}}",
+ "translate-statsbar-tooltip": "$1% vertaald, $2% gecontroleerd",
+ "translate-statsbar-tooltip-with-fuzzy": "$1% vertaald, $2% gecontroleerd, $3% verouderd",
+ "translate-search-more-groups-info": "nog $1 groep{{PLURAL:$1||en}}",
+ "translate-ulsdep-title": "Fout in de instellingen",
+ "translate-ulsdep-body": "De uitbreiding Translate is afhankelijk van de [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:UniversalLanguageSelector uitbreiding Universal Language Selector]."
+}
diff --git a/MLEB/Translate/i18n/core/nn.json b/MLEB/Translate/i18n/core/nn.json
new file mode 100644
index 00000000..95f7a869
--- /dev/null
+++ b/MLEB/Translate/i18n/core/nn.json
@@ -0,0 +1,364 @@
+{
+ "@metadata": {
+ "authors": [
+ "Byrial",
+ "Dittaeva",
+ "Frokor",
+ "Gunnernett",
+ "Harald Khan",
+ "Jon Harald Søby",
+ "Nghtwlkr",
+ "Njardarlogar"
+ ]
+ },
+ "translate": "Set om",
+ "translate-desc": "[[Special:Translate|Spesialside]] for omsetjing av MediaWiki og meir",
+ "translate-taskui-view": "Vis alle meldingar",
+ "translate-taskui-untranslated": "Vis uomsette meldingar",
+ "translate-taskui-optional": "Vis valfrie meldingar",
+ "translate-taskui-acceptqueue": "Berre meldingar eg kan merkja som vurderte",
+ "translate-taskui-reviewall": "Sjå igjennom alle omsetjingane",
+ "translate-taskui-export-to-file": "Eksporter i opphavleg format",
+ "translate-taskui-export-as-po": "Eksporter for fråkopla omsetjing",
+ "translate-taction-translate": "Set om",
+ "translate-taction-proofread": "Vurder",
+ "translate-taction-lstats": "Språkstatistikk",
+ "translate-taction-mstats": "Statistikk for meldingsgruppa",
+ "translate-taction-export": "Eksporter",
+ "translate-taction-disabled": "Denne handlinga er slegen av på denne wikien.",
+ "translate-page-no-such-language": "Ugyldig språkkode.",
+ "translate-page-no-such-group": "Ikkje gyldig gruppe.",
+ "translate-page-disabled": "Omsetjingar til dette språket i denne gruppa er slått av. Årsak:\n\n<em>$1</em>",
+ "translate-language-disabled": "Omsetjing til dette språket er slege av.",
+ "translate-page-settings-legend": "Innstillingar",
+ "translate-page-group": "Gruppe",
+ "translate-page-language": "Språk",
+ "translate-page-limit": "Grense",
+ "translate-page-limit-option": "$1 {{PLURAL:$1|melding|meldingar}} per side",
+ "translate-submit": "Hent",
+ "translate-page-navigation-legend": "Navigering",
+ "translate-page-showing": "Viser meldingar frå $1 til $2 av $3.",
+ "translate-page-showing-all": "Viser {{PLURAL:$1|éi melding|$1 meldingar}}.",
+ "translate-page-showing-none": "Ingen meldingar å vise.",
+ "translate-page-paging-links": "[ $1 ] [ $2 ]",
+ "translate-next": "Neste side",
+ "translate-prev": "Førre sida",
+ "translate-page-description-legend": "Informasjon om gruppa",
+ "translate-page-description-hasoptional": "Meldingsgruppa har valfrie meldingar.\nValfrie meldingar skal ein berre setja om når språket ditt har særskilde krav, til dømes at det ikkje nyttar mellomrom eller at det transkriberer eigennamn. $1",
+ "translate-page-description-hasoptional-open": "Vis valfrie meldingar.",
+ "translate-page-edit": "endre",
+ "translate-ext-url": "<hr />Nettstad: $1",
+ "translate-optional": "(valfri)",
+ "translate-ignored": "(ignorert)",
+ "translate-edit-title": "Endra «$1»",
+ "translate-edit-definition": "Melding som skal setjast om",
+ "translate-edit-translation": "Omsetjing",
+ "translate-edit-contribute": "bidra",
+ "translate-edit-no-information": "''Denne meldinga har ikkje dokumentasjon. Om du veit kvar eller korleis denne meldinga vert nytta, kan du hjelpe andre omsetjarar ved å legge inn dokumentasjon til denne meldinga.''",
+ "translate-edit-information": "Informasjon om meldinga ($1)",
+ "translate-edit-in-other-languages": "Meldinga på andre språk",
+ "translate-edit-committed": "Noverande omsetjing i programvaren",
+ "translate-edit-warnings": "Åtvaringar om ufullstendige omsetjingar",
+ "translate-edit-tmsugs": "Framlegg frå omsetjingsminnet",
+ "translate-edit-tmmatch-source": "Kjeldetekst for omsetjing: $1",
+ "translate-edit-tmmatch": "$1% samsvar",
+ "translate-use-suggestion": "Byt ut den gjeldande omsetjinga med dette framlegget.",
+ "translate-edit-nopermission": "Du treng løyve for å setja om meldingar",
+ "translate-edit-askpermission": "Bed om løyve",
+ "translate-magic-pagename": "Utvida MediaWiki-omsetjing",
+ "translate-magic-help": "Du kan setja om tilleggsnamn på spesialsidenamn, magiske ord og namna på namnerom.\n\nTilleggsnamn på spesialsidenamn og magiske ord kan ha fleire omsetjingar.\nOmsetjingane vert fråskilde med komma (,).\nNamnerom kan berre ha éi omsetjing.\n\nI namneromomsetjingane kan <code>$1 talk</code> vera innfløkt. <code>$1</code> vert erstatta med namnet på nettstaden (til dømes <code>{{ns:project_talk}}</code>).\nOm det ikkje er mogeleg å få til eit gildt uttrykk på ditt språk her utan å endra sidenamnet, lat oss få vita på [[Support]].\n\nDu må vera ein omsetjar for å lagra endringar.\nEndringar vert ikkje lagra før du klikkar på lagreknappen nedanfor.",
+ "translate-magic-module": "Modul:",
+ "translate-magic-submit": "Hent",
+ "translate-magic-cm-export": "Eksporter",
+ "translate-magic-nothing-to-export": "Det er ingenting å eksportera.",
+ "translate-magic-cm-to-be": "Framtidig",
+ "translate-magic-cm-current": "Gjeldande",
+ "translate-magic-cm-original": "Opphavleg",
+ "translate-magic-cm-comment": "Kommentar:",
+ "translate-magic-cm-save": "Lagre",
+ "translate-magic-cm-updatedusing": "Oppdatert vha. [[Special:AdvancedTranslate|{{int:Translate-magic-pagename}}]]",
+ "translate-magic-cm-savefailed": "Lagringa var mislukka",
+ "translate-magic-special": "Spesialsidenamn",
+ "translate-magic-words": "Magiske ord",
+ "translate-magic-namespace": "Namneromnamn",
+ "translate-magic-notsaved": "Endringa di vart ikkje lagra!",
+ "translate-magic-errors": "Bøt på {{PLURAL:$1|denne feilen|desse feila}} i omsetjingane:",
+ "translate-magic-saved": "Endringane dine vart lagra.",
+ "translate-checks-parameters": "{{PLURAL:$2|Denne parameteren|Dessse parametrane}} vert ikkje nytta:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-parameters-unknown": "{{PLURAL:$2|Denne parameteren er ukjend|Desse parametrane er ukjende}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-balance": "{{PLURAL:$2|Det|Det}} er eit ujamt tal parentesar:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links": "{{PLURAL:$2|Denne lenkja er problematisk|Desse $2 lenkjene er problematiske}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links-missing": "{{PLURAL:$2|Denne lenkja|Desse $2 lenkjene}} saknar:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-xhtml": "Byt ut {{PLURAL:$2|dette merket med det rette|desse merka med dei rette}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-plural": "Definisjonen nyttar <nowiki>{{PLURAL:}}</nowiki>, men omsetjinga gjer det ikkje.",
+ "translate-checks-plural-forms": "<nowiki>{{PLURAL:}}</nowiki> vart gjeven {{PLURAL:$1|éi form|$1 former}}, men berre {{PLURAL:$2|éi form|$2 former}} er stødde (utanom 0=- og 1=-former).",
+ "translate-checks-plural-dupe": "<nowiki>{{PLURAL:}}</nowiki> har duplikatformer på enden. <nowiki>{{PLURAL:$1|namn|namn}}</nowiki> bør skrivast som <nowiki>{{PLURAL:$1|namn}}</nowiki>.",
+ "translate-checks-pagename": "Namnerom endra frå definisjonen",
+ "translate-checks-format": "Denne omsetjinga følgjer ikkje definisjonen eller har ugyldig syntaks: $1",
+ "translate-checks-escape": "Desse unnataka kan koma frå uhell: <strong>$1</strong>",
+ "translate-checks-parametersnotequal": "Parameterteljaren er {{PLURAL:$1|$1}}; skulle vore {{PLURAL:$2|$2}}.",
+ "translate-checks-malformed": "<nowiki>$1</nowiki> er vanskapt.",
+ "translate-checks-fudforum-syntax": "Bruk <nowiki>$1</nowiki> i staden for <nowiki>$2</nowiki> på dette prosjektet.",
+ "translate-pref-nonewsletter": "Ikkje send meg nyhendebrev",
+ "translate-pref-editassistlang": "Hjelpespråk:",
+ "prefs-translate": "Omsetjingsval",
+ "translate-pref-editassistlang-help": "Kommaåtskild liste over språkkodar.\nOmsetjinga av meldinga på desse språka vert viste medan du set om.\nStandardlista over språk fylgjer med språket ditt.",
+ "translate-pref-editassistlang-bad": "Ugyldig språkkode i lista:\n<nowiki>$1</nowiki>.",
+ "right-translate": "Redigere med omsetjingsgrensesnittet",
+ "right-translate-manage": "Handsama meldingsgrupper",
+ "action-translate-manage": "handsama meldingsgrupper",
+ "right-translate-import": "Importering av fråkopla omsetjingar",
+ "action-translate-import": "importera fråkopla omsetjingar",
+ "right-translate-messagereview": "Sjå igjennom omsetjingar",
+ "right-translate-groupreview": "Endra stoda på arbeidsflyten til meldingsgrupper",
+ "translate-rc-translation-filter": "Filtrer omsetjingar:",
+ "translate-rc-translation-filter-no": "Ikkje gjer noko",
+ "translate-rc-translation-filter-only": "Vis berre omsetjingar",
+ "translate-rc-translation-filter-filter": "Filtrer bort omsetjingar",
+ "translate-rc-translation-filter-site": "Berre endringar i {{SITENAME}}-meldingar",
+ "translationstats": "Omsetjingsstatistikk",
+ "translate-stats-edits": "Endringar",
+ "translate-stats-users": "Omsetjarar",
+ "translate-stats-registrations": "Registreringar",
+ "translate-stats-reviews": "Gjennomgåingar",
+ "translate-stats-reviewers": "Gjennomgåarar",
+ "translate-statsf-intro": "Du kan generere enkel statistikk med dette skjemaet. Alle verdiane har øvre og nedre grenser.",
+ "translate-statsf-options": "Grafalternativ",
+ "translate-statsf-width": "Breidde i pikslar:",
+ "translate-statsf-height": "Høgd i pikslar:",
+ "translate-statsf-days": "Startdato:",
+ "translate-statsf-start": "Startdato:",
+ "translate-statsf-scale": "Tidsoppløysing:",
+ "translate-statsf-scale-months": "Månader",
+ "translate-statsf-scale-weeks": "Veker",
+ "translate-statsf-scale-days": "Dagar",
+ "translate-statsf-scale-hours": "Timar",
+ "translate-statsf-count": "Måling:",
+ "translate-statsf-count-edits": "Tal på endringar",
+ "translate-statsf-count-users": "Aktive omsetjarar",
+ "translate-statsf-count-registrations": "Nye brukarar",
+ "translate-statsf-count-reviews": "Gjennomgåingar av omsetjingar",
+ "translate-statsf-count-reviewers": "Gjennomgåarar",
+ "translate-statsf-language": "Liste over språkkodar fråskilde med komma:",
+ "translate-statsf-group": "Liste over gruppekodar fråskilde med komma:",
+ "translate-statsf-submit": "Førehandsvis",
+ "translate-tag-category": "Sider som kan setjast om",
+ "translate-tag-page-desc": "Omsetjing av wikisida [[$2|$1]].",
+ "translate-sidebar-alltrans": "På andre språk",
+ "translations": "Alle omsetjingar",
+ "translations-summary": "Skriv inn eit meldingsnamn nedanfor for å visa alle tilgjengelege omsetjingar.",
+ "translate-translations-no-message": "«$1» er ei melding som ikkje kan omsetjast",
+ "translate-translations-none": "Det finst ingen omsetjingar for «$1»",
+ "translate-translations-count": "Fann {{PLURAL:$1|éi omsetjing|$1 omsetjingar}}.",
+ "translate-translations-fieldset-title": "Melding",
+ "translate-translations-messagename": "Namn:",
+ "translate-translations-project": "Prosjekt:",
+ "translate-translations-including-no-param": "Spesifiser ein gyldig meldingsnøkkel i undersideparameteren.",
+ "translate-translations-history-short": "h",
+ "languagestats": "Språkstatistikk",
+ "languagestats-summary": "Sida viser omsetjingsstatistikk for alle meldingsgruppene for eit språk.",
+ "languagestats-stats-for": "Omsetjingsstatistikk for $1 ($2).",
+ "languagestats-recenttranslations": "siste omsetjingane",
+ "translate-langstats-incomplete": "Somt av statistikken på sida er uheil. Last sida på nytt for å få meir statistikk.",
+ "translate-langstats-expand": "vid ut",
+ "translate-langstats-collapse": "slå saman",
+ "translate-langstats-expandall": "vid ut alle",
+ "translate-langstats-collapseall": "slå saman alle",
+ "translate-language-code": "Språkkode",
+ "translate-language-code-field-name": "Språkkode:",
+ "translate-suppress-complete": "Skjul meldingsgrupper som er ferdig omsette",
+ "translate-ls-noempty": "Ikkje vis heilt uomsette meldingsgrupper",
+ "translate-language": "Språk",
+ "translate-total": "Meldingar",
+ "translate-untranslated": "Uomsett",
+ "translate-percentage-complete": "Ferdiggjort",
+ "translate-percentage-fuzzy": "Utdatert",
+ "translate-languagestats-overall": "Alle meldingsgruppene samla",
+ "translate-ls-submit": "Vis statistikk",
+ "translate-ls-column-group": "Meldingsgruppe",
+ "translate-mgs-pagename": "Meldingsgruppestatistikk",
+ "translate-mgs-fieldset": "Visingsinnstillingar",
+ "translate-mgs-group": "Meldingsgruppe:",
+ "translate-mgs-nocomplete": "Ikkje vis språk som har fullført omsetjinga",
+ "translate-mgs-noempty": "Ikkje vis språk som ikkje har omsetjingar",
+ "translate-mgs-submit": "Vis statistikk",
+ "translate-mgs-column-language": "Språk",
+ "translate-mgs-totals": "Alle språka samla",
+ "translate-mgs-invalid-group": "Den oppgjevne gruppa $1 finst ikkje.",
+ "translate-mgs-nothing": "Inkje å visa for den etterspurde statistikken.",
+ "supportedlanguages": "Støtta språk",
+ "supportedlanguages-summary": "Sida viser ei liste over alle språka som er stødde av {{SITENAME}}, i lag med namna på omsetjarane som jobbar med språket.\nDess større namnet på omsetjaren er, dess fleire bidrag har omsetjaren.\nFargen på understrekinga indikerer kor nyleg ein omsetjar har vore aktiv her.",
+ "supportedlanguages-colorlegend": "Fargetyding: Siste omsetjinga for $1 dagar sidan.",
+ "supportedlanguages-translators": "{{PLURAL:$2|Omsetjar|Omsetjarar}}: $1",
+ "supportedlanguages-recenttranslations": "siste omsetjingane",
+ "supportedlanguages-count": "$1 {{PLURAL:$1|språk}} totalt.",
+ "supportedlanguages-activity": "$1: {{PLURAL:$2|éi endring|$2 endringar}} – siste endringa for {{PLURAL:$3|éin dag|$3 dagar}} sidan",
+ "translate-save": "Lagra ($1)",
+ "translate-jssti-add": "Legg til i lista",
+ "managemessagegroups": "Handsaming av meldingsgruppe",
+ "translate-smg-notallowed": "Du har ikkje løyve til å utføra handlinga.",
+ "translate-smg-nochanges": "Det er ingen endringar å handsama.",
+ "translate-smg-submit": "Send endringar til handsaming",
+ "translate-smg-submitted": "Meldingsdefinisjonar har vorte oppdaterte. Endringane vert handsama i bakgrunnen.",
+ "translate-smg-left": "Meldingsinnhald i wikien",
+ "translate-smg-right": "Omsetjingar på veg",
+ "translate-manage-import-diff": "Melding $1 | Handlingar: $2",
+ "translate-manage-import-new": "Ny melding $1",
+ "translate-manage-import-deleted": "Sletta melding $1",
+ "translate-manage-action-import": "Importer",
+ "translate-manage-action-conflict": "Importer og merk for oppdatering («fuzzy»)",
+ "translate-manage-action-ignore": "Ignorer",
+ "translate-manage-import-summary": "Importerer ein ny versjon frå ei ekstern kjelde",
+ "translate-manage-fuzzy-summary": "Meldingsdefinisjonen har vorte endra",
+ "translate-manage-submit": "Utfør",
+ "translate-manage-import-ok": "Importert ny versjon av sida $1",
+ "translate-manage-import-done": "Alt klart!",
+ "importtranslations": "Importér omsetjingar",
+ "translate-import-from-local": "Lokal filopplasting:",
+ "translate-import-load": "Last fil",
+ "translate-import-err-dl-failed": "Kunne ikkje henta fila:\n$1",
+ "translate-import-err-ul-failed": "Filopplastinga var ikkje vellukka",
+ "translate-import-err-invalid-title": "Det oppgjevne filnamnnet <nowiki>$1</nowiki> var ugyldig.",
+ "translate-import-err-no-such-file": "Fila <nowiki>$1</nowiki> finst ikkje eller er ikkje vorten lasta opp lokalt.",
+ "translate-js-summary": "Samandrag:",
+ "translate-js-save": "Lagra",
+ "translate-js-next": "Lagra og opna neste",
+ "translate-js-nonext": "Dette var den siste meldinga på sida.",
+ "translate-js-skip": "Hopp over til neste",
+ "translate-js-save-failed": "Lagringa gjekk ikkje gjennom. Rapporter denne feilen.",
+ "translate-js-history": "Omsetjingshistorikk",
+ "translate-js-support": "Still spørsmål",
+ "translate-js-support-title": "Spør etter hjelp om det ikkje er nok informasjon til å setja om meldinga rett.",
+ "translate-js-support-unsaved-warning": "Du har omsetjingar som ikkje er lagra.",
+ "translate-gs-pos": "Pos.",
+ "translate-gs-code": "Kode",
+ "translate-gs-continent": "Kontinent",
+ "translate-gs-speakers": "Talarar",
+ "translate-gs-score": "Skår",
+ "translate-gs-multiple": "Fleire",
+ "translate-gs-count": "Tal",
+ "translate-gs-total": "Totalt",
+ "translate-gs-avgscore": "Snittskår",
+ "translate-documentation-language": "Meldingsdokumentasjon",
+ "translate-searchprofile": "Omsetjingar",
+ "translate-searchprofile-tooltip": "Søk i alle omsetjingar",
+ "translate-search-languagefilter": "Filtrer etter språk:",
+ "translate-search-nofilter": "Inga filtrering",
+ "translate-messagereview-submit": "Merk som vurdert",
+ "translate-messagereview-progress": "Merkjer som vurdert...",
+ "translate-messagereview-failure": "Mislukkast i å merkja som vurdert: $1",
+ "translate-messagereview-done": "Vurdert",
+ "translate-messagereview-reviews": "Vurdert av {{PLURAL:$1|éin brukar|$1 brukarar}}",
+ "translate-messagereview-reviewswithyou": "Vurdert av {{PLURAL:$1|deg|$1 brukarar inkludert deg}}",
+ "api-error-invalidrevision": "Omsetjinga vart ikkje funnen",
+ "api-error-unknownmessage": "Meldinga vart ikkje funnen",
+ "api-error-fuzzymessage": "Omsetjinga er merkt som utdatert",
+ "api-error-owntranslation": "Du kan ikkje merkja eigne omsetjingar som vurderte",
+ "translate-messagereview-no-fuzzy": "Utdaterte omsetjingar kan ikkje merkjast som vurderte.",
+ "translate-messagereview-no-own": "Du kan ikkje merkja eigne omsetjingar som vurderte.",
+ "translate-messagereview-doit": "Merk omsetjinga som vurdert.",
+ "log-name-translationreview": "Logg over omsetjingsgjennomgåing",
+ "log-description-translationreview": "Logg over alle gjennomgåingar av omsetjingar og meldingsgrupper.",
+ "logentry-translationreview-message": "$1 {{GENDER:$2|vurderte}} omsetjinga $3",
+ "translate-workflow-state-": "(ikkje sett)",
+ "translate-workflowstatus": "Stode: $1",
+ "translate-workflow-set-do": "Set",
+ "translate-workflow-set-doing": "Set …",
+ "translate-workflow-set-done": "Sett!",
+ "translate-workflow-set-error-alreadyset": "Den førespurde stoda er lik stoda som gjeld.",
+ "translate-workflow-autocreated-summary": "Automatisk oppretting av side for arbeidsflytsstoda $1",
+ "translate-stats-workflow": "Stode",
+ "translate-workflowgroup-label": "Arbeidsflytsstoder",
+ "translate-dynagroup-recent-label": "Nylege omsetjingar",
+ "translate-dynagroup-by": "Sett om av {{GENDER:$1|$1}}",
+ "translate-dynagroup-byc": "Sett om av {{GENDER:$1|$1}} ($2)",
+ "translate-dynagroup-last": "Siste endringa av {{GENDER:$1|$1}}",
+ "translate-dynagroup-lastc": "Siste endringa av {{GENDER:$1|$1}} ($2)",
+ "translate-gethelp": "Hjelp",
+ "translate-msggroupselector-projects": "Meldingsgruppe",
+ "translate-msggroupselector-search-placeholder": "Søk etter grupper",
+ "translate-msggroupselector-search-all": "Alle",
+ "translate-msggroupselector-search-recent": "Nylege",
+ "translate-msggroupselector-view-subprojects": "{{PLURAL:$1|éi undergruppe|$1 undergrupper}}",
+ "tux-languageselector": "Set om til",
+ "tux-tab-all": "Alle",
+ "tux-tab-untranslated": "Uomsette",
+ "tux-tab-outdated": "Utdaterte",
+ "tux-tab-translated": "Omsette",
+ "tux-tab-unproofread": "Uvurderte",
+ "tux-edit": "Endra",
+ "tux-status-optional": "Valfri",
+ "tux-status-fuzzy": "Utdatert",
+ "tux-status-proofread": "Vurdert",
+ "tux-status-translated": "Omsett",
+ "tux-status-saving": "Lagrar …",
+ "tux-status-unsaved": "Ulagra",
+ "tux-editor-placeholder": "Omsetjinga di",
+ "tux-editor-paste-original-button-label": "Lim inn kjeldetekst",
+ "tux-editor-discard-changes-button-label": "Sjå bort frå endringar",
+ "tux-editor-save-button-label": "Lagra omsetjing",
+ "tux-editor-skip-button-label": "Hopp over til neste",
+ "tux-editor-cancel-button-label": "Bryt av",
+ "tux-editor-confirm-button-label": "Stadfest omsetjing",
+ "tux-editor-shortcut-info": "Trykk «$1» for å lagra eller «$2» for å hoppa over til neste meldinga",
+ "tux-editor-edit-desc": "Endra dokumentasjon",
+ "tux-editor-add-desc": "Legg til dokumentasjon",
+ "tux-editor-suggestions-title": "Framlegg",
+ "tux-editor-in-other-languages": "På andre språk",
+ "tux-editor-need-more-help": "Treng du meir hjelp?",
+ "tux-editor-ask-help": "Spør etter meir informasjon",
+ "tux-editor-tm-match": "$1% samsvar",
+ "tux-warnings-more": "{{PLURAL:$1|$1 meir}}",
+ "tux-warnings-hide": "gøym",
+ "tux-editor-save-failed": "Lagringa av omsetjinga gjekk ikkje: $1",
+ "tux-editor-n-uses": "nytta {{PLURAL:$1|éin gong|$1 gonger}}",
+ "tux-editor-message-desc-more": "Sjå meir",
+ "tux-editor-message-desc-less": "Sjå mindre",
+ "tux-editor-clear-translated": "Gøym omsette",
+ "tux-editor-proofreading-mode": "Vurder",
+ "tux-editor-translate-mode": "Liste",
+ "tux-editor-proofreading-hide-own-translations": "Gøym omsetjingane dine",
+ "tux-editor-proofreading-show-own-translations": "Vis omsetjingane dine",
+ "tux-proofread-action-tooltip": "Merk som vurdert",
+ "tux-proofread-edit-label": "Endra",
+ "tux-editor-page-mode": "Side",
+ "tux-editor-outdated-warning": "Omsetjinga treng kan henda ei oppdatering.",
+ "tux-editor-outdated-warning-diff-link": "Vis skilnader",
+ "tux-editor-doc-editor-placeholder": "Meldingsdokumentasjon",
+ "tux-editor-doc-editor-save": "Lagra dokumentasjon",
+ "tux-editor-doc-editor-cancel": "Bryt av",
+ "tux-messagetable-more-messages": "{{PLURAL:$1|éi melding|$1 meldingar}} til",
+ "tux-messagetable-loading-messages": "Lastar {{PLURAL:$1|éi melding|$1 meldingar}} …",
+ "tux-message-filter-placeholder": "Filtrer liste",
+ "tux-message-filter-result": "Fann $1 {{PLURAL:$1|resultat}} for «$2»",
+ "tux-message-filter-advanced-button": "Avansert søk",
+ "tux-message-filter-optional-messages-label": "Valfrie meldingar",
+ "tux-proofread-translated-by-self": "Sett om av deg",
+ "tux-empty-list-all": "Meldingsgruppa er tom",
+ "tux-empty-list-all-guide": "Vel ei anna meldingsgruppe å setja om",
+ "tux-empty-list-translated": "Ingen omsette meldingar",
+ "tux-empty-list-translated-guide": "Du kan hjelpa til med å setja om",
+ "tux-empty-list-translated-action": "Set om",
+ "tux-empty-no-messages-to-display": "Ingen meldingar å visa",
+ "tux-empty-there-are-optional": "Det finst valfrie meldingar som ikkje er viste i lista",
+ "tux-empty-show-optional-messages": "Vis valfrie meldingar",
+ "tux-empty-no-outdated-messages": "Ingen utdaterte meldingar",
+ "tux-empty-nothing-to-proofread": "Ingenting å vurdera",
+ "tux-empty-you-can-help-providing": "Du kan hjelpa til med å gje oss nye omsetjingar",
+ "tux-empty-nothing-new-to-proofread": "Ingenting nytt å vurdera",
+ "tux-empty-you-can-review-already-proofread": "Du kan vurdera omsetjingar som alt er vurderte av andre.",
+ "tux-empty-list-other": "Inkje å setja om",
+ "tux-empty-list-other-guide": "Du kan hjelpa til med å vurdera gjeldande omsetjingar",
+ "tux-empty-list-other-action": "Vurder omsetjingar",
+ "tux-empty-list-other-link": "Vis alle meldingar",
+ "tux-editor-close-tooltip": "Lat att",
+ "tux-editor-expand-tooltip": "Vid ut",
+ "tux-editor-collapse-tooltip": "Slå saman.",
+ "tux-editor-message-tools-history": "Historikk",
+ "tux-editor-message-tools-translations": "Alle omsetjingar",
+ "tux-editor-loading": "Lastar …",
+ "translate-search-more-languages-info": "$1 {{PLURAL:$1|språk}} til",
+ "translate-statsbar-tooltip": "$1% omsett, $2% vurdert",
+ "translate-statsbar-tooltip-with-fuzzy": "$1% omsett, $2% vurdert, $3% utdatert",
+ "translate-search-more-groups-info": "{{PLURAL:$1|éi gruppe|$1 grupper}} til"
+}
diff --git a/MLEB/Translate/i18n/core/nso.json b/MLEB/Translate/i18n/core/nso.json
new file mode 100644
index 00000000..104670cc
--- /dev/null
+++ b/MLEB/Translate/i18n/core/nso.json
@@ -0,0 +1,20 @@
+{
+ "@metadata": {
+ "authors": [
+ "Mohau"
+ ]
+ },
+ "translate-page-group": "Sehlopha",
+ "translate-page-language": "Polelo",
+ "translate-page-limit-option": "$1 {{PLURAL:$1|ya molaetša|ya melaetša}} ka letlakala",
+ "translate-submit": "Lata",
+ "translate-page-showing": "Go bontšhwa melaetša go tloga go $1 go fihla go $2 ya $3.",
+ "translate-page-showing-all": "Go botšhwa $1 {{PLURAL:$1|ya molaetša|ya melaetša}}.",
+ "translate-page-description-legend": "Tsebo ka sehlopha",
+ "translate-magic-cm-save": "Boloka",
+ "translate-statsf-scale-days": "Matšatši",
+ "translate-statsf-scale-hours": "Diiri",
+ "translate-statsf-count-edits": "Palo ya diphetogo",
+ "translate-js-next": "Boloka o bule yago latela",
+ "translate-js-skip": "Lesa o bule yago latela"
+}
diff --git a/MLEB/Translate/i18n/core/oc.json b/MLEB/Translate/i18n/core/oc.json
new file mode 100644
index 00000000..c72ffad2
--- /dev/null
+++ b/MLEB/Translate/i18n/core/oc.json
@@ -0,0 +1,287 @@
+{
+ "@metadata": {
+ "authors": [
+ "Cedric31",
+ "ChrisPtDe",
+ "Shirayuki"
+ ]
+ },
+ "translate": "Tradusir",
+ "translate-desc": "[[Special:Translate|Pagina especiala]] per tradusir MediaWiki e quitament mai encara.",
+ "translate-taskui-view": "Afichar totes los messatges",
+ "translate-taskui-untranslated": "Afichar los messatges pas traduches",
+ "translate-taskui-optional": "Afichar los messatges facultatius",
+ "translate-taskui-acceptqueue": "Unicament los messatges que pòdi marcar coma relegits",
+ "translate-taskui-reviewall": "Repassar totas las traduccions",
+ "translate-taskui-export-to-file": "Exportar al format natiu",
+ "translate-taskui-export-as-po": "Exportar per una traduccion fòra linha",
+ "translate-taction-translate": "Tradusir",
+ "translate-taction-proofread": "Relectura",
+ "translate-taction-lstats": "Estatisticas de lenga",
+ "translate-taction-mstats": "Estatisticas de grop de messatges",
+ "translate-taction-export": "Exportar",
+ "translate-taction-disabled": "Aquesta accion es desactivada sus aqueste wiki.",
+ "translate-page-no-such-language": "Un còde de lengatge invalid es estat indicat",
+ "translate-page-no-such-group": "Lo grop especificat es invalid.",
+ "translate-page-disabled": "Las traduccions dins aquesta lenga dins aqueste grop son estadas desactivadas. Motiu :\n\n<em>$1</em>",
+ "translate-language-disabled": "La traduccion dins aquesta lenga es desactivada.",
+ "translate-page-settings-legend": "Configuracion",
+ "translate-page-group": "Grop",
+ "translate-page-language": "Lenga",
+ "translate-page-limit": "Limit",
+ "translate-page-limit-option": "$1 {{PLURAL:$1|messatge|messatges}} per pagina",
+ "translate-submit": "Aténher",
+ "translate-page-navigation-legend": "Navigacion",
+ "translate-page-showing": "Visualizacion dels messatges de $1 a $2 sus $3.",
+ "translate-page-showing-all": "Visualizacion {{PLURAL:$1|d'$1 messatge|de $1 messatges}}.",
+ "translate-page-showing-none": "Cap de messatge de visualizar.",
+ "translate-next": "Pagina seguenta",
+ "translate-prev": "Pagina precedenta",
+ "translate-page-description-legend": "Entresenha a prepaus del grop",
+ "translate-page-description-hasoptional": "Aqueste grop de messatges conten los messatges facultatius.\nLos messatges facultatius deurián pas èsser traduches que quand vòstra lenga a d'exigéncias particularas\ncoma d'utilizar pas d'espacis o de transformar de noms pròpris. $1",
+ "translate-page-description-hasoptional-open": "Afichar los messatges facultatius",
+ "translate-page-edit": "modificar",
+ "translate-ext-url": "<hr />Site web : $1",
+ "translate-optional": "(opcional)",
+ "translate-ignored": "(ignorat)",
+ "translate-edit-title": "Modificar « $1 »",
+ "translate-edit-definition": "Definicion del messatge",
+ "translate-edit-translation": "Traduccion",
+ "translate-edit-contribute": "contribuir",
+ "translate-edit-no-information": "Actualament, aqueste messatge es pas documentat. Se sabètz ont o cossí aqueste messatge es utilizat, podètz ajudar los autres traductors en documentant aqueste messatge.",
+ "translate-edit-information": "Entresenhas a prepaus del messatge ($1)",
+ "translate-edit-in-other-languages": "Messatge dins d'autras lengas",
+ "translate-edit-committed": "Traduccions actualas ja dins lo logicial",
+ "translate-edit-warnings": "Avertiments que concernisson las traduccions incompletas",
+ "translate-edit-tmsugs": "Suggestions de la memòria de traduccion",
+ "translate-edit-tmmatch-source": "Tèxte font de la traduccion : $1",
+ "translate-edit-tmmatch": "$1 % de correspondéncia",
+ "translate-use-suggestion": "Remplaçar la traduccion actuala per aquesta suggestion.",
+ "translate-edit-nopermission": "Vos cal obténer los dreches de traduccion per tradusir los messatges.",
+ "translate-edit-askpermission": "Obténer la permission",
+ "translate-magic-pagename": "Traduccion de MediaWiki espandida",
+ "translate-magic-help": "Podètz tradusir los aliasses de paginas especialas, los mots magics, e los noms d'espacis de noms.\n\nLos aliasses de paginas especialas e los mots magics pòdon aver mantuna traduccion.\nLas traduccions son separadas per una virgula (,).\nLos espacis de noms pòdon pas aver qu'una traduccion.\n\nTradusir l'espaci de noms de dicussion del projècte, <code>$1 talk</code> pòt èsser complicat.\n<code>$1</code> es remplaçat pel nom del site (per exemple <code>{{ns:project_talk}}</code>).\nS'es pas possible d'obténer una expression valida dins vòstra lenga sens cambiar lo nom del site, contactatz un desvolopaire sus [[Support]]..\n\nVos cal aparténer al grop dels traductors per enregistrar los cambiaments.\nLos cambiaments seràn pas enregistrats tant qu'auretz pas clicat sul boton « enregistrar » aval.",
+ "translate-magic-module": "Modul :",
+ "translate-magic-submit": "Anar",
+ "translate-magic-cm-export": "Exportar",
+ "translate-magic-nothing-to-export": "I a pas res d'exportar",
+ "translate-magic-cm-to-be": "Desven",
+ "translate-magic-cm-current": "Actual",
+ "translate-magic-cm-original": "Original",
+ "translate-magic-cm-comment": "Comentari :",
+ "translate-magic-cm-save": "Salvar",
+ "translate-magic-cm-updatedusing": "Mesa a jorn en utilizant [[Special:AdvancedTranslate|{{int:Translate-magic-pagename}}]]",
+ "translate-magic-cm-savefailed": "Lo salvament a pas capitat",
+ "translate-magic-special": "Pagina especiala d’aliases",
+ "translate-magic-words": "Mots magics",
+ "translate-magic-namespace": "Intitolat dels espacis de nomenatge",
+ "translate-magic-notsaved": "Vòstra modificacion es pas estada salvada !",
+ "translate-magic-errors": "Corregissètz {{PLURAL:$1|l'error seguenta|las errors seguentas}} dins las traduccions :",
+ "translate-magic-saved": "Vòstra modificacion es estada salvada amb succès.",
+ "translate-checks-parameters": "{{PLURAL:$2|Lo paramètre seguent es pas utilizat|Los paramètres seguents son pas utilizats}} : <strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-parameters-unknown": "{{PLURAL:$2|Lo paramètre seguent es desconegut|Los paramètres seguents son desconeguts}} : <strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-balance": "I a un nombre impar de {{PLURAL:$2|parentèsis|parentèsis}} : <strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links": "{{PLURAL:$2|Lo ligam seguent causa|Los ligams seguents causan}} de problèmas : <strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links-missing": "{{PLURAL:$2|Lo ligam seguent es mancant|Los $2 ligams seguents son mancants}} :\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-xhtml": "Sètz convidat(ada) a corregir {{PLURAL:$2|la balisa seguenta|las balisas seguentas}} : <strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-plural": "La definicion utiliza <nowiki>{{PLURAL:}}</nowiki> mas pas la traduccion",
+ "translate-checks-plural-forms": "<nowiki>{{PLURAL:}}</nowiki> a recebut {{PLURAL:$1|una forma|$1 formas}} mas {{PLURAL:$2|una sola es suportada|solas $2 son suportadas}} (fòra las formas 0= e 1=).",
+ "translate-checks-plural-dupe": "<nowiki>{{PLURAL:}}</nowiki> a de formas duplicadas al final. <nowiki>{{PLURAL:$1|sheep|sheep}}</nowiki> deuriá èsser escrich atal : <nowiki>{{PLURAL:$1|sheep}}</nowiki>.",
+ "translate-checks-pagename": "Nom d’espaci modificat dempuèi la definicion",
+ "translate-checks-format": "Aquesta traduccion seguís pas la definicion o a una sintaxi invalida : $1",
+ "translate-checks-escape": "Los escapaments seguents pòdon èsser accidentals : <strong>$1</strong>",
+ "translate-checks-parametersnotequal": "Lo nombre de paramètres es {{PLURAL:$1|$1}} ; aquò deuriá èsser {{PLURAL:$2|$2}}.",
+ "translate-checks-malformed": "<nowiki>$1</nowiki> es incorrècte.",
+ "translate-checks-fudforum-syntax": "Utilizar <nowiki>$1</nowiki> al luòc de <nowiki>$2</nowiki> dins aqueste projècte.",
+ "translate-pref-nonewsletter": "Me mandetz pas la letra d’informacion per corrièr",
+ "translate-pref-editassistlang": "Assistent de lengas :",
+ "prefs-translate": "Opcions de traduccion",
+ "translate-pref-editassistlang-help": "Una virgulas a separat una lista de còde lenga.\nLa traduccion d’un messatge dins aquelas lengas es afichada quand sètz a tradusir.\nLa lista per defaut de las lengas varia en foncion de vòstra lenga.",
+ "translate-pref-editassistlang-bad": "Còde lenga invalid dins la lista :\n<nowiki>$1</nowiki>.",
+ "right-translate": "Modificar en utilizant l'interfàcia de traduccion",
+ "right-translate-manage": "Gerir los gropes de messatge",
+ "action-translate-manage": "gerir los gropes de messatges",
+ "right-translate-import": "Importar las traduccions fòra linha",
+ "action-translate-import": "importar las traduccions fòra linha",
+ "right-translate-messagereview": "Examinar las traduccions",
+ "right-translate-groupreview": "Modificar l'estat de flux de trabalh dels gropes de messatge",
+ "translate-rc-translation-filter": "Filtrar las traduccions :",
+ "translate-rc-translation-filter-no": "Far pas res",
+ "translate-rc-translation-filter-only": "Afichar unicament las traduccions",
+ "translate-rc-translation-filter-filter": "Eliminar las traduccions",
+ "translate-rc-translation-filter-site": "Solament los cambiaments de messatges del site",
+ "translationstats": "Estatisticas de traduccion",
+ "translate-stats-edits": "Edicions",
+ "translate-stats-users": "Traductors",
+ "translate-stats-registrations": "Inscripcions",
+ "translate-stats-reviews": "Relecturas",
+ "translate-stats-reviewers": "Relectors",
+ "translate-statsf-intro": "Podètz crear d'estatisticas simplas amb aqueste formulari. Totas las valors an de limits maximals e minimals.",
+ "translate-statsf-options": "Opcions del grafic",
+ "translate-statsf-width": "Largor en pixels :",
+ "translate-statsf-height": "Nautor en pixels",
+ "translate-statsf-days": "Periòde en jorns :",
+ "translate-statsf-start": "Data de començament :",
+ "translate-statsf-scale": "Granularitat :",
+ "translate-statsf-scale-months": "Meses",
+ "translate-statsf-scale-weeks": "Setmanas",
+ "translate-statsf-scale-days": "Jorns",
+ "translate-statsf-scale-hours": "Oras",
+ "translate-statsf-count": "Mesura :",
+ "translate-statsf-count-edits": "Nombre d'edicions",
+ "translate-statsf-count-users": "Traductors actius",
+ "translate-statsf-count-registrations": "Utilizaires novèls",
+ "translate-statsf-count-reviews": "Relecturas de traduccion",
+ "translate-statsf-count-reviewers": "Relectors",
+ "translate-statsf-language": "Lista de còdes de lengas, separats per de virgulas :",
+ "translate-statsf-group": "Lista de còdes de gropes, separats per de virgulas :",
+ "translate-statsf-submit": "Previsualizar",
+ "translate-tag-category": "Paginas tradusiblas",
+ "translate-tag-page-desc": "Traduccion de la pagina wiki [[$2|$1]] dempuèi $3 ($4).",
+ "translate-sidebar-alltrans": "Dins las autras lengas",
+ "translations": "Totas las traduccions",
+ "translations-summary": "Picatz un nom de messatge en dejós per far veire totas las traduccions disponiblas.",
+ "translate-translations-no-message": "« $1 » es pas un messatge traductible",
+ "translate-translations-none": "I a pas cap de traduccion per « $1 »",
+ "translate-translations-count": "{{PLURAL:$1|Existís una traduccion|Existisson $1 traduccions}}.",
+ "translate-translations-fieldset-title": "Messatge",
+ "translate-translations-messagename": "Nom :",
+ "translate-translations-project": "Projècte :",
+ "translate-translations-including-no-param": "Especificatz un nom de messatge valid dins lo paramètre de sospagina",
+ "translate-translations-history-short": "h",
+ "languagestats": "Estatisticas de lenga",
+ "languagestats-summary": "Aquesta pagina aficha las estatisticas de traduccion per totes los gropes de messatges per una lenga.",
+ "languagestats-stats-for": "Estatisticas de traduccion per $1 ($2).",
+ "languagestats-recenttranslations": "traduccions recentas",
+ "translate-langstats-expand": "Desvolopar",
+ "translate-langstats-collapse": "Replegar",
+ "translate-langstats-expandall": "Desvolopar tot",
+ "translate-langstats-collapseall": "Replegar tot",
+ "translate-language-code": "Còde de lenga",
+ "translate-language-code-field-name": "Còde de lenga :",
+ "translate-suppress-complete": "Suprimir los gropes de messatges tradusits completament",
+ "translate-ls-noempty": "Suprimir los gropes de messatges pas tradusits completament",
+ "translate-language": "Lenga :",
+ "translate-total": "Messatges",
+ "translate-untranslated": "Pas traduches",
+ "translate-percentage-complete": "Acabament",
+ "translate-percentage-fuzzy": "Depassats",
+ "translate-ls-submit": "Afichar las estatisticas",
+ "translate-ls-column-group": "Grop de messatges",
+ "translate-mgs-fieldset": "Afichar las preferéncias",
+ "translate-mgs-group": "Grop de messatges :",
+ "translate-mgs-submit": "Afichar las estatisticas",
+ "translate-mgs-column-language": "Lenga",
+ "translate-mgs-totals": "Totas las lengas ensemble",
+ "supportedlanguages": "Lengas presas en carga",
+ "supportedlanguages-translators": "{{PLURAL:$2|{{GENDER:$3|Traductor|Traductritz}}|Traductors}} : $1",
+ "supportedlanguages-recenttranslations": "traduccions recentas",
+ "translate-save": "Publicar ($1)",
+ "translate-jssti-add": "Apondre a la lista",
+ "translate-manage-import-diff": "Messatge $1 | Accions : $2",
+ "translate-manage-import-new": "Messatge novèl $1",
+ "translate-manage-import-deleted": "Messatge suprimit $1",
+ "translate-manage-action-import": "Importacion",
+ "translate-manage-action-conflict": "Importar e marcar coma fosc",
+ "translate-manage-action-ignore": "Ignorar",
+ "translate-manage-action-fuzzy": "Importar e marcar las traduccions coma foscas",
+ "translate-manage-nochanges": "I a pas de modificacion dins las definicions dels messatges d'aqueste grop.",
+ "translate-manage-nochanges-other": "I a pas agut cap de modificacion per aquesta lenga.\nUtilizatz lo ligam çaijós per tornar a la vista de detalh del grop.",
+ "translate-manage-inconsistent": "Una inconsisténcia es estada detectada dins la requèsta.\nVerificatz se i a agut de modificacions entre temps e tornatz ensajar. Detalhs : $1.",
+ "translate-manage-toolong": "La durada maximala del temps de tractament de $1 segonda{{PLURAL:$1||s}} es estat depassat.\nRenviatz lo formulari per contuhar lo tractament.",
+ "translate-manage-import-summary": "Importacion d'una version novèla dempuèi una font extèrna.",
+ "translate-manage-conflict-summary": "Importacion d'una version novèla dempuèi una font extèrna. Verificatz se vos plai.",
+ "translate-manage-fuzzy-summary": "La definicion del messatge a cambiat",
+ "translate-manage-submit": "Executar",
+ "translate-manage-intro-other": "Çaijós figura una lista de las modificacions dins la lenga $1.\nTornatz veire las modificacions e causissètz una accion d'efectuar per caduna.\nSe decidissètz d'ignorar las modificacions, aquesta accion serà pas que temporària.",
+ "translate-manage-import-ok": "Importat : $1",
+ "translate-manage-import-done": "Impòrt acabat !",
+ "importtranslations": "Importar las traduccions",
+ "translate-import-from-local": "Importar un fichièr local :",
+ "translate-import-load": "Cargar lo fichièr",
+ "translate-import-err-dl-failed": "Impossible d'accedir al fichièr :\n$1",
+ "translate-import-err-ul-failed": "Lo telecargament del fichièr a pas capitat",
+ "translate-import-err-invalid-title": "Lo nom del fichièr provesit <nowiki>$1</nowiki> es invalid.",
+ "translate-import-err-no-such-file": "Lo fichièr <nowiki>$1</nowiki> existís pas o es pas importat localament.",
+ "translate-import-err-no-headers": "Lo fichièr es pas un fichièr ''Gettext'' plan format dins lo format esperat per l’extension ''Translate'' :\nes impossible de determinar lo grop e la lenga dempuèi las entèstas del fichièr.",
+ "translate-import-err-warnings": "Lo fichièr es pas format coma cal.\nAsseguratz-vos que vòstra aisina de traduccion suprimís pas los camps « msgctxt ».\nDetalhs : $1",
+ "translate-js-summary": "Resumit :",
+ "translate-js-save": "Enregistrar",
+ "translate-js-next": "Salvar e dobrir lo seguent",
+ "translate-js-nonext": "Èra lo darrièr messatge d'aquesta pagina.",
+ "translate-js-skip": "Anar al seguent",
+ "translate-js-save-failed": "L'enregistrament a fracassat. Senhalatz aquela error.",
+ "translate-js-history": "Istoric de traduccion",
+ "translate-js-support": "Pausar una question",
+ "translate-gs-pos": "Pos.",
+ "translate-gs-code": "Còde",
+ "translate-gs-continent": "Continent",
+ "translate-gs-speakers": "Locutors",
+ "translate-gs-score": "Marca",
+ "translate-gs-multiple": "Multiple",
+ "translate-gs-count": "Compte",
+ "translate-gs-total": "Total",
+ "translate-gs-avgscore": "Marca mejana",
+ "translate-searchprofile": "Traduccions",
+ "translate-searchprofile-tooltip": "Recercar dins totas las traduccions",
+ "translate-search-languagefilter": "Filtrar per lenga :",
+ "translate-search-nofilter": "Pas cap de filtratge",
+ "translate-messagereview-submit": "Marcar coma relegit",
+ "translate-messagereview-progress": "En cors de marcatge coma relegit...",
+ "translate-messagereview-failure": "Fracàs del marcatge coma relegit : $1",
+ "translate-messagereview-done": "Relegit",
+ "translate-messagereview-reviews": "Relegit per {{PLURAL:$1| un utilizaire| $1 utilizaires}}",
+ "translate-messagereview-reviewswithyou": "Relegit per {{PLURAL:$1|vos|$1 utilizaires, vos inclús}}",
+ "translate-workflow-state-": "(desactivat)",
+ "translate-workflowstatus": "Estatut: $1",
+ "translate-workflow-set-do": "Activat",
+ "translate-workflow-set-doing": "Activacion...",
+ "translate-workflow-set-done": "Activat !",
+ "translate-stats-workflow": "Estatut",
+ "translate-dynagroup-recent-desc": "Aqueste grop de messatges fa veire totas las traduccions recentas fachas dins aquesta lenga.\nEs utilizat mai que mai pels prètzfaches de relectura.",
+ "translate-gethelp": "Ajuda",
+ "translate-msggroupselector-projects": "Grop de messatges",
+ "translate-msggroupselector-search-placeholder": "Recercar de gropes",
+ "translate-msggroupselector-search-all": "Totes",
+ "translate-msggroupselector-search-recent": "Recent",
+ "tux-languageselector": "Tradusir en",
+ "tux-tab-all": "Totes",
+ "tux-tab-untranslated": "Pas tradusit",
+ "tux-tab-outdated": "Obsolet",
+ "tux-tab-translated": "Tradusit",
+ "tux-edit": "Modificar",
+ "tux-status-optional": "Facultatiu",
+ "tux-status-fuzzy": "Obsolet",
+ "tux-status-proofread": "Corregit",
+ "tux-status-translated": "Tradusit",
+ "tux-status-saving": "Enregistrament en cors…",
+ "tux-status-unsaved": "Pas enregistrada",
+ "tux-editor-placeholder": "Vòstra traduccion",
+ "tux-editor-save-button-label": "Enregistrar la traduccion",
+ "tux-editor-skip-button-label": "Anar al seguent",
+ "tux-editor-shortcut-info": "Quichatz sus « $1 » per enregistrar o « $2 » per passar al messatge seguent o « $3 » per d'autres acorchis.",
+ "tux-editor-edit-desc": "Modificar la documentacion",
+ "tux-editor-add-desc": "Apondre una documentacion",
+ "tux-editor-suggestions-title": "Suggestions",
+ "tux-editor-in-other-languages": "Dins d'autras lengas",
+ "tux-editor-need-more-help": "Besonh d’ajuda ?",
+ "tux-editor-ask-help": "Demandar mai d’informacion",
+ "tux-editor-tm-match": "$1% correspond",
+ "tux-warnings-more": "{{PLURAL:$1|$1 de mai}}",
+ "tux-warnings-hide": "amagar",
+ "tux-editor-save-failed": "Fracàs de l'enregistrament de la traduccion : $1",
+ "tux-editor-message-desc-more": "Veire mai",
+ "tux-editor-message-desc-less": "Afichar mens",
+ "tux-editor-clear-translated": "Amagar la traduccion",
+ "tux-editor-outdated-warning": "Aquesta traduccion pòt necessitar una mesa a jorn.",
+ "tux-editor-outdated-warning-diff-link": "Afichar las diferéncias",
+ "tux-editor-doc-editor-save": "Enregistrar la documentacion",
+ "tux-editor-doc-editor-cancel": "Anullar",
+ "tux-messagetable-more-messages": "$1 {{PLURAL:$1|messatge|messatges}} mai",
+ "tux-messagetable-loading-messages": "Cargament {{PLURAL:$1|del messatge|dels messatges}}…",
+ "tux-message-filter-advanced-button": "Recèrca avançada",
+ "tux-translate-page-no-such-group": "<strong>Lo grop indicat existís pas.</strong> Seleccionatz un autre grop de messatges.",
+ "tux-empty-list-other-guide": "Podètz ajudar a repassar las traduccions existentas",
+ "tux-empty-list-other-action": "Repassar las traduccions",
+ "tux-empty-list-other-link": "Afichar totes los messatges"
+}
diff --git a/MLEB/Translate/i18n/core/or.json b/MLEB/Translate/i18n/core/or.json
new file mode 100644
index 00000000..903d18cd
--- /dev/null
+++ b/MLEB/Translate/i18n/core/or.json
@@ -0,0 +1,130 @@
+{
+ "@metadata": {
+ "authors": [
+ "Ansumang",
+ "Jnanaranjan Sahu",
+ "Jose77",
+ "MKar",
+ "Psubhashish"
+ ]
+ },
+ "translate": "ଅନୁବାଦ",
+ "translate-desc": "[[Special:Translate|ବିଶେଷ ପୃଷ୍ଠା]] ମିଡ଼ିଆଉଇକି ଓ ବାକିସବୁ ଅନୁବାଦ କରିବା ନିମନ୍ତେ ବିଶେଷ ପୃଷ୍ଠା",
+ "translate-taskui-view": "ସମସ୍ତ ଛବି ଦେଖିବେ",
+ "translate-taskui-untranslated": "ଅନୁବାଦ ହୋଇନଥିବା ମେସେଜସମୂହ ଦେଖାନ୍ତୁ",
+ "translate-taskui-optional": "ବିକଳ୍ପ ମେସେଜସମୂହ ଦେଖାନ୍ତୁ",
+ "translate-taskui-acceptqueue": "ମୁଁ ସମୀକ୍ଷା ସରିଛି ବୋଲି ବାଛିପାରୁଥିବା ମେସେଜସମୂହ",
+ "translate-taskui-reviewall": "ସମସ୍ତ ଅନୁବାଦକୁ ଅବଲୋକନ କରିବେ",
+ "translate-taskui-export-to-file": "ମୂଳ ସଜାଣିକୁ ବ୍ଯବ‌ହାର କରିବେ",
+ "translate-taskui-export-as-po": "ଅଫ-ଲାଇନ ଅନୁବାଦ ବ୍ୟବ‌ହାର କରିବେ",
+ "translate-taction-translate": "ଅନୁବାଦ କରନ୍ତୁ",
+ "translate-taction-proofread": "ବନାନ‌ଗ‌ତ ଭୁଲ ସୁଧାରନ୍ତୁ",
+ "translate-taction-lstats": "ଭାଷା ପରିସଂଖ୍ୟାନ",
+ "translate-taction-mstats": "ମେସେଜମାନଙ୍କ ମୋଟ ପରିସଂଖ୍ୟାନ",
+ "translate-taction-export": "ପଠାନ୍ତୁ",
+ "translate-taction-disabled": "ଉଇକିରେ ଅପଲୋଡ଼ କରିବା ଅଚଳ କରାଯାଇଛି ।",
+ "translate-page-no-such-language": "ଦିଆଯାଇଥିବା ଭାଷାଟି ଭୁଲ ।",
+ "translate-page-no-such-group": "ଦିଆଯାଇଥିବା ସମୂହଟି ଭୁଲ ।",
+ "translate-page-disabled": "ଏହି ସମୂହରେ ଦିଆଯାଇଥିବା ଏହି ଭାଷାର ଅନୁବାଦଟି ଅଚଳ କରାଯାଇଛି । କାରଣ: <em>$1</em>",
+ "translate-language-disabled": "ଏହି ଭାଷାରେ ଅନୁବାଦ କରିବା ଅଚଳ କରାଯାଇଛି ।",
+ "translate-page-settings-legend": "ସଜାଣିଗୁଡ଼ିକ",
+ "translate-page-group": "ଗୋଠ",
+ "translate-page-language": "ଭାଷା",
+ "translate-page-limit": "ସୀମା",
+ "translate-page-limit-option": "ପୃଷ୍ଠାପ୍ରତି $1 {{PLURAL:$1|ମେସେଜ|ମେସେଜ ସମୂହ}}",
+ "translate-submit": "ବଢ଼ାଇବେ",
+ "translate-page-navigation-legend": "ଦିଗବାରେଣି (ନାଭିଗେସନ)",
+ "translate-page-showing": "$3ଭିତରୁ $1 ଠାରୁ $2 ଯାଏଁ ମେସେଜମାନ ଦେଖାଉଛୁ ।",
+ "translate-page-showing-all": "$1 ଗୋଟି {{PLURAL:$1|ମେସେଜ}} ଦେଖାଇବେ ।",
+ "translate-page-showing-none": "ଦେଖାଇବା ପାଇଁ ମେସେଜଟିଏ ନାହିଁ ।",
+ "translate-next": "ପର ପୃଷ୍ଠା",
+ "translate-prev": "ଆଗ ପୃଷ୍ଠା",
+ "translate-page-description-legend": "ଏହି ସମୂହ ବାବଦରେ ସୂଚନା",
+ "translate-page-description-hasoptional-open": "ବିକଳ୍ପ ମେସେଜସମୂହ ଦେଖାନ୍ତୁ ।",
+ "translate-page-edit": "ଏହାକୁ ବଦଳାନ୍ତୁ",
+ "translate-ext-url": "<hr />ୱେବସାଇଟ: $1",
+ "translate-optional": "(ଇଚ୍ଛାଧୀନ)",
+ "translate-ignored": "(ଏଡ଼ାଇଯାନ୍ତୁ)",
+ "translate-edit-title": "ବଦଳ \"$1\"",
+ "translate-edit-definition": "ମେସେଜ ସଜ୍ଞା",
+ "translate-edit-translation": "ଅନୁବାଦ",
+ "translate-edit-contribute": "ଅବଦାନ",
+ "translate-edit-information": "($1) ମେସେଜ ବାବଦରେ ସୂଚନା",
+ "translate-edit-in-other-languages": "ଅଲଗା ଭାଷାରେ ମେସେଜ",
+ "translate-edit-committed": "ସଫ୍ଟ୍ୱାରରେ ଏବେକାର ଅନୁବାଦ",
+ "translate-edit-warnings": "ଅସମ୍ପୂର୍ଣ୍ଣ ଅନୁବାଦ ବାବଦରେ ଚେତାବନୀ",
+ "translate-edit-tmsugs": "ଅନୁବାଦ ସ୍ମୃତି ଓ ମେସିନ ଅନୁବାଦରୁ ପରାମର୍ଶ",
+ "translate-edit-tmmatch-source": "ସୋର୍ସ ଟେକ୍ସଟରୁ ଅନୁବାଦ: $1",
+ "translate-edit-tmmatch": "$1% ମେଳ",
+ "translate-use-suggestion": "ଏହି ପରାମର୍ଶରୁ ଏବେକାର ଅନୁବାଦକୁ ବଦଳାଇଦିଅନ୍ତୁ ।",
+ "translate-edit-nopermission": "ଅନୁବାଦ କରିବା ପାଇଁ ଆପଣଙ୍କୁ ଅନୁବାଦ ଅନୁମତି ଲୋଡ଼ା ।",
+ "translate-edit-askpermission": "ଅନୁମତି ପାଇବା ପାଇଁ ଅନୁରୋଧ କରନ୍ତୁ ।",
+ "translate-magic-pagename": "ପରିବର୍ଦ୍ଧିତ ମିଡ଼ିଆଉଇକି ଅନୁବାଦସମୂହ",
+ "translate-magic-module": "ଖସଡ଼ା:",
+ "translate-magic-submit": "ପାଇବେ",
+ "translate-magic-cm-export": "ପଠେଇବେ",
+ "translate-magic-nothing-to-export": "ବାହାରକୁ ପଠାଇବା ପାଇଁ କିଛି ନା‌ହିଁ ।",
+ "translate-magic-cm-to-be": "ହେବାକୁ ଥିବା",
+ "translate-magic-cm-current": "ଏବେକାର",
+ "translate-magic-cm-original": "ମୂଳ",
+ "translate-magic-cm-comment": "ମତାମତ",
+ "translate-magic-cm-save": "ସାଇତିବେ [Save]",
+ "translate-magic-cm-updatedusing": "[[Special:AdvancedTranslate|{{int:Translate-magic-pagename}}]] ବ୍ୟବ‌ହାର କରି ଅପଡ଼େଟ କରୁଛୁ ।",
+ "translate-magic-cm-savefailed": "ସାଇତିବା ବିଫଳ ହେଲା",
+ "translate-magic-special": "ବିଶେଷ ପୃଷ୍ଠା ଆଲିଆସ",
+ "translate-magic-words": "ମ୍ୟାଜିକ ଶବ୍ଦମାନ",
+ "translate-magic-namespace": "ନେମ୍ସସ୍ପେସ ନାମସବୁ",
+ "translate-magic-notsaved": "ଆପଣଙ୍କ ସମ୍ପାଦନା ସାଇତାଯାଇପାରିଲା ନାହିଁ!",
+ "translate-magic-errors": "ଏହି {{PLURAL:$1|ଭୁଲଟି|ଭୁଲମାନ}} ଅନୁବାଦରେ ବଦଳାଇଦିନ୍ତୁ:",
+ "translate-magic-saved": "ଆପଣଙ୍କ ସମ୍ପାଦନା ସଫଳ ଭାବେ ସାଇତାଗଲା ।",
+ "translate-checks-parameters": "ଏହି {{PLURAL:$2|ପାରାମିଟର|ପାରାମିଟରମାନ}} ବ୍ୟ‌ବ‌ହାର ହୋଇନାହିଁ:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-parameters-unknown": "ଏହି {{PLURAL:$2|ପାରାମିଟର ଟି|ପାରାମିଟରମାନ}} ଅଜଣା:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-balance": "ଏଠାରେ ଥିବା {{PLURAL:$2|ପେରେନ୍ଥେସ|ପେରେନ୍ଥେସମାନ}}ଙ୍କ ସଙ୍ଖ୍ୟା ଜଣାନାହିଁ:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links": "ଏହି {{PLURAL:$2|ଲିଙ୍କଟି|$2 lଲିଙ୍କମାନ}} ଅସୁବିଧାଜନକ: <strong><nowiki>$1</nowiki></strong>",
+ "translate-pref-nonewsletter": "ମୋତେ ଇ-ମେଲ ନିଉଜଲେଟର ପଠାଇବେ ନାହିଁ",
+ "prefs-translate": "ଅନୁବାଦ ବିକଳ୍ପସବୁ",
+ "translate-rc-translation-filter-no": "କିଛି ବି କରିବେ ନାହିଁ",
+ "translate-rc-translation-filter-only": "କେବଳ ଅନୁବାଦସବୁ ଦେଖାନ୍ତୁ",
+ "translate-rc-translation-filter-filter": "ଅନୁବାଦସବୁ ଅଲଗା କରିଦିଅନ୍ତୁ",
+ "translationstats": "ଅନୁବାଦ ପରିସଙ୍ଖ୍ୟାନ",
+ "translate-stats-edits": "ବଦଳସବୁ",
+ "translate-stats-users": "ଅନୁବାଦକ",
+ "translate-statsf-scale-months": "ମାସ",
+ "translate-statsf-scale-weeks": "ସପ୍ତାହ",
+ "translate-statsf-scale-days": "ଦିନସବୁ",
+ "translate-statsf-scale-hours": "ଘଣ୍ଟା",
+ "translate-statsf-count": "ମାପ:",
+ "translate-statsf-count-edits": "ସମ୍ପାଦନା ସଂଖ୍ୟା",
+ "translate-statsf-count-users": "ସଚଳ ଅନୁବାଦକ",
+ "translate-statsf-count-registrations": "ନୂଆ ବ୍ୟବହାରକାରୀଗଣ",
+ "translate-statsf-submit": "ସାଇତା ଆଗରୁ ଦେଖଣା",
+ "translations": "ସବୁ ଅନୁବାଦ",
+ "translate-translations-fieldset-title": "ମେସେଜ",
+ "translate-translations-messagename": "ନାମ:",
+ "translate-translations-project": "ପ୍ରକଳ୍ପ:",
+ "languagestats": "ଭାଷା ଆକଳନ",
+ "languagestats-recenttranslations": "ବର୍ତ୍ତମାନର ଅନୁବାଦସବୁ",
+ "translate-language": "ଭାଷା",
+ "translate-total": "ସନ୍ଦେଶସବୁ",
+ "translate-languagestats-overall": "ଏକାସାଙ୍ଗରେ ଥିବା ସବୁଯାକ ମେସେଜ ଦଳ",
+ "translate-ls-submit": "ଆକଳନ ଦେଖାଇବେ",
+ "translate-ls-column-group": "ମେସେଜ ଗୋଷ୍ଠୀ",
+ "translate-mgs-group": "ସଂଦେଶ ଗୋଠ:",
+ "translate-mgs-submit": "ଆକଳନ ଦେଖାଇବେ",
+ "translate-mgs-column-language": "ଭାଷା",
+ "supportedlanguages-translators": "{{PLURAL:$2|ଅନୁବାଦକ|ଅନୁବାଦକମାନେ}}: $1",
+ "supportedlanguages-recenttranslations": "ବର୍ତ୍ତମାନର ଅନୁବାଦସବୁ",
+ "supportedlanguages-count": "$1 {{PLURAL:$1|ଭାଷା|ଭାଷା}} ସବୁ ମିଶି ।",
+ "supportedlanguages-activity": "$1: $2 {{PLURAL:$2|ବଦଳ|ବଦଳସବୁ}} - ଶେଷ ବଦଳ $3 {{PLURAL:$3|ଦିନ|ଦିନସବୁ}} ଆଗରୁ",
+ "translate-save": "($1)କୁ ସାଇତିବେ",
+ "translate-jssti-add": "ତାଲିକାରେ ଯୋଡ଼ନ୍ତୁ",
+ "translate-manage-import-new": "ନୂଆ ସନ୍ଦେଶ $1",
+ "translate-manage-action-import": "ଆମଦାନୀ",
+ "translate-manage-action-conflict": "ଆମଦାନୀ ଓ ଫଜୀ",
+ "translate-import-load": "ଲୋଡ଼ ଫାଇଲ",
+ "translate-gs-code": "କୋଡ଼",
+ "translate-gs-score": "ଗଣନା",
+ "translate-gs-count": "ଗଣନା",
+ "translate-workflowstatus": "ସ୍ଥିତି: $1",
+ "translate-stats-workflow": "ସ୍ଥିତି"
+}
diff --git a/MLEB/Translate/i18n/core/os.json b/MLEB/Translate/i18n/core/os.json
new file mode 100644
index 00000000..6bc61262
--- /dev/null
+++ b/MLEB/Translate/i18n/core/os.json
@@ -0,0 +1,16 @@
+{
+ "@metadata": {
+ "authors": [
+ "Amikeco",
+ "Bouron"
+ ]
+ },
+ "translate-page-group": "Къорд",
+ "translate-page-language": "Æвзаг",
+ "translate-next": "Фæдылдзог фарс",
+ "translate-prev": "Раздæры фарс",
+ "translate-page-edit": "ивын",
+ "translate-magic-cm-current": "Нырыккон",
+ "translate-magic-cm-save": "Афтæ уæд",
+ "translate-statsf-submit": "Разæркаст"
+}
diff --git a/MLEB/Translate/i18n/core/pa.json b/MLEB/Translate/i18n/core/pa.json
new file mode 100644
index 00000000..8f27e8cd
--- /dev/null
+++ b/MLEB/Translate/i18n/core/pa.json
@@ -0,0 +1,259 @@
+{
+ "@metadata": {
+ "authors": [
+ "Aalam",
+ "Babanwalia",
+ "TariButtar"
+ ]
+ },
+ "translate": "ਤਰਜਮਾ ਕਰੋ",
+ "translate-desc": "ਮੀਡੀਆਵਿਕੀ ਅਤੇ ਹੋਰਾਂ ਦੇ ਅਨੁਵਾਦ ਲਈ [[Special:Translate|ਖ਼ਾਸ ਸਫ਼ਾ]]",
+ "translate-taskui-view": "ਸਾਰੇ ਸੁਨੇਹੇ ਵਿਖਾਓ",
+ "translate-taskui-untranslated": "ਬਿਨਾਂ ਤਰਜਮੇ ਵਾਲ਼ੇ ਸੁਨੇਹੇ ਵਿਖਾਉ",
+ "translate-taskui-optional": "ਚੋਣਵੇਂ ਸੁਨੇਹੇ ਵਿਖਾਓ",
+ "translate-taskui-acceptqueue": "ਸਿਰਫ਼ ਉਹ ਸੁਨੇਹੇ ਜਿਨ੍ਹਾਂ ਨੂੰ ਮੈਂ \"ਪਰਖਿਆ ਗਿਆ\" ਨੱਥੀ ਕਰ ਸਕਾਂ",
+ "translate-taskui-reviewall": "ਸਾਰੇ ਤਰਜਮੇ ਪਰਖੋ",
+ "translate-taskui-export-to-file": "ਦੇਸੀ ਰੂਪ ਵਿਚ ਮੰਗਾਓ",
+ "translate-taskui-export-as-po": "ਆਫ਼-ਲਾਈਨ ਅਨੁਵਾਦ ਲਈ ਮੰਗਾਓ",
+ "translate-taction-translate": "ਤਰਜਮਾ ਕਰੋ",
+ "translate-taction-proofread": "ਪਰਖ",
+ "translate-taction-lstats": "ਭਾਸ਼ਾ ਦੇ ਅੰਕੜੇ",
+ "translate-taction-mstats": "ਸੁਨੇਹਿਆਂ ਦੀ ਟੋਲੀ ਦੇ ਅੰਕੜੇ",
+ "translate-taction-export": "ਬਰਾਮਦ",
+ "translate-taction-disabled": "ਇਹ ਕਾਰਜ ਵਿਕੀ ਉੱਤੇ ਬੰਦ ਕੀਤਾ ਹੋਇਆ ਹੈ।",
+ "translate-page-no-such-language": "ਦੱਸੀ ਗਈ ਭਾਸ਼ਾ ਗ਼ਲਤ ਹੈ।",
+ "translate-page-no-such-group": "ਦੱਸਿਆ ਗਿਆ ਸਮੂਹ ਗ਼ਲਤ ਹੈ।",
+ "translate-page-disabled": "ਇਸ ਟੋਲੀ ਵਿਚ ਇਸ ਬੋਲੀ ਦੇ ਤਰਜਮੇ ਬੰਦ ਕਰ ਦਿੱਤੇ ਗਏ ਹਨ।\nਕਾਰਨ:\n\n<em>$1</em>",
+ "translate-language-disabled": "ਇਸ ਭਾਸ਼ਾ ਵਿਚ ਅਨੁਵਾਦ ਬੰਦ ਹੈ।",
+ "translate-page-settings-legend": "ਸੈਟਿੰਗ",
+ "translate-page-group": "ਗਰੁੱਪ",
+ "translate-page-language": "ਭਾਸ਼ਾ",
+ "translate-page-limit": "ਹੱਦ",
+ "translate-page-limit-option": "$1 {{PLURAL:$1|ਸੁਨੇਹਾ|ਸੁਨੇਹੇ}} ਪ੍ਰਤੀ ਸਫ਼ਾ",
+ "translate-submit": "ਲਿਆਉ",
+ "translate-page-navigation-legend": "ਫੇਰੀ ਪਾਓ",
+ "translate-page-showing": "$3 ਦੇ $1 ਤੋਂ $2 ਤੱਕ ਦੇ ਸੁਨੇਹੇ ਵਿਖਾਏ ਜਾ ਰਹੇ ਹਨ।",
+ "translate-page-showing-all": "$1 {{PLURAL:$1|ਸੁਨੇਹਾ|ਸੁਨੇਹੇ}} ਵਿਖਾਏ ਜਾ ਰਹੇ ਹਨ।",
+ "translate-page-showing-none": "ਵਿਖਾਉਣ ਲਈ ਕੋਈ ਸੁਨੇਹਾ ਨਹੀਂ ਹੈ।",
+ "translate-next": "ਅਗਲਾ ਸਫ਼ਾ",
+ "translate-prev": "ਪਿਛਲਾ ਸਫ਼ਾ",
+ "translate-page-description-legend": "ਇਸ ਟੋਲੀ ਬਾਰੇ ਜਾਣਕਾਰੀ",
+ "translate-page-description-hasoptional-open": "ਚੋਣਵੇਂ ਸੁਨੇਹੇ ਵਿਖਾਓ।",
+ "translate-page-edit": "ਸੋਧੋ",
+ "translate-ext-url": "<hr />ਵੈੱਬਸਾਈਟ: $1",
+ "translate-optional": "(ਚੋਣਵਾਂ)",
+ "translate-ignored": "(ਅਣਡਿੱਠਾ)",
+ "translate-edit-title": "\"$1\" ਸੋਧੋ",
+ "translate-edit-definition": "ਸਨੇਹੇ ਦੀ ਪਰਿਭਾਸ਼ਾ",
+ "translate-edit-translation": "ਤਰਜਮਾਕਾਰੀ",
+ "translate-edit-contribute": "ਯੋਗਦਾਨ ਪਾਓ",
+ "translate-edit-information": "($1) ਸੁਨੇਹੇ ਬਾਬਤ ਜਾਣਕਾਰੀ",
+ "translate-edit-in-other-languages": "ਹੋਰ ਭਾਸ਼ਾਵਾਂ ਵਿਚ ਸੁਨੇਹਾ",
+ "translate-edit-committed": "ਸਾਫ਼ਟਵੇਅਰ ਵਿਚ ਮੌਜੂਦਾ ਤਰਜਮਾ",
+ "translate-edit-warnings": "ਊਣੇ ਤਰਜਮਿਆਂ ਬਾਰੇ ਚਿਤਾਵਨੀ",
+ "translate-edit-tmsugs": "ਤਰਜਮਾਈ ਯਾਦਦਾਸ਼ਤ ਅਤੇ ਮਸ਼ੀਨੀ ਤਰਜਮੇ ਵੱਲੋਂ ਸਲਾਹਾਂ",
+ "translate-edit-tmmatch-source": "ਅਨੁਵਾਦ ਦੀ ਸਰੋਤ ਲਿਖਤ:$1",
+ "translate-edit-tmmatch": "$1% ਮੇਲ",
+ "translate-use-suggestion": "ਮੌਜੂਦਾ ਤਰਜਮੇ ਦੀ ਥਾਂ ਇਹ ਸਲਾਹ ਲਿਆਉ",
+ "translate-edit-nopermission": "ਤੁਹਾਨੂੰ ਸੁਨੇਹਿਆਂ ਦਾ ਅਨੁਵਾਦ ਕਰਨ ਲਈ ਇਜਾਜ਼ਤ ਚਾਹੀਦੀ ਹੈ।",
+ "translate-edit-askpermission": "ਇਜਾਜ਼ਤ ਲਈ ਬੇਨਤੀ ਕਰੋ",
+ "translate-magic-pagename": "ਵਿਸਥਾਰ ਵਿੱਚ ਮੀਡੀਆਵਿਕੀ ਅਨੁਵਾਦ",
+ "translate-magic-module": "ਮਾਪਦੰਡ:",
+ "translate-magic-submit": "ਲਿਆਉ",
+ "translate-magic-cm-export": "ਮੰਗਾਓ",
+ "translate-magic-nothing-to-export": "ਮੰਗਾਉਣ ਲਈ ਕੁਝ ਨਹੀਂ ਹੈ।",
+ "translate-magic-cm-current": "ਮੌਜੂਦਾ",
+ "translate-magic-cm-original": "ਮੂਲ",
+ "translate-magic-cm-comment": "ਟਿੱਪਣੀ:",
+ "translate-magic-cm-save": "ਸੰਭਾਲੋ",
+ "translate-magic-cm-savefailed": "ਸੰਭਾਲ ਫੇਲ੍ਹ ਹੋ ਗਈ",
+ "translate-magic-special": "ਖ਼ਾਸ ਸਫ਼ਿਆਂ ਦੇ ਉਪਨਾਮ",
+ "translate-magic-words": "ਜਾਦੂਈ ਸ਼ਬਦ",
+ "translate-magic-namespace": "ਨਾਂ-ਸਥਾਨ ਨਾਮ",
+ "translate-magic-notsaved": "ਤੁਹਾਡੀ ਸੋਧ ਸਾਂਭੀ ਨਹੀਂ ਗਈ!",
+ "translate-magic-errors": "ਕਿਰਪਾ ਕਰਕੇ ਅਨੁਵਾਦ ਵਿਚ {{PLURAL:$1|ਹੇਠ ਲਿਖੀ ਗ਼ਲਤੀ|ਹੇਠ ਲਿਖੀਆਂ ਗ਼ਲਤੀਆਂ}} ਸਹੀ ਕਰੋ:",
+ "translate-magic-saved": "ਤੁਹਾਡੀਆਂ ਤਬਦੀਲੀਆਂ ਸਾਂਭ ਲਈਆਂ ਗਈਆਂ ਹਨ।",
+ "translate-checks-parameters": "{{PLURAL:$2|ਹੇਠ ਲਿਖਿਆ ਮਾਪਦੰਡ ਵਰਤਿਆ ਨਹੀਂ ਗਿਆ|ਹੇਠ ਲਿਖੇ ਮਾਪਦੰਡ ਵਰਤੇ ਨਹੀਂ ਗਏ}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-rc-translation-filter-no": "ਕੁਝ ਨਾ ਕਰੋ",
+ "translate-rc-translation-filter-only": "ਸਿਰਫ਼ ਤਰਜਮੇ ਵਿਖਾਉ",
+ "translationstats": "ਤਰਜਮਾਕਾਰੀ ਦੇ ਅੰਕੜੇ",
+ "translate-stats-edits": "ਸੋਧ",
+ "translate-stats-users": "ਅਨੁਵਾਦਕ",
+ "translate-stats-registrations": "ਰਜਿਸਟਰੇਸ਼ਨ",
+ "translate-stats-reviews": "ਪਰਖਾਂ",
+ "translate-stats-reviewers": "ਪਾਰਖੂ",
+ "translate-statsf-start": "ਅਰੰਭ ਮਿਤੀ:",
+ "translate-statsf-scale-months": "ਮਹੀਨੇ",
+ "translate-statsf-scale-weeks": "ਹਫ਼ਤੇ",
+ "translate-statsf-scale-days": "ਦਿਨ",
+ "translate-statsf-scale-hours": "ਘੰਟੇ",
+ "translate-statsf-count": "ਮਾਪ:",
+ "translate-statsf-count-edits": "ਸੋਧਾਂ ਦੀ ਗਿਣਤੀ",
+ "translate-statsf-count-users": "ਸਰਗਰਮ ਅਨੁਵਾਦਕ",
+ "translate-statsf-count-registrations": "ਨਵੇਂ ਵਰਤੋਂਕਾਰ",
+ "translate-statsf-count-reviews": "ਤਰਜਮਾਕਾਰੀ ਦੀਆਂ ਪਰਖਾਂ",
+ "translate-statsf-count-reviewers": "ਪਾਰਖੂ",
+ "translate-statsf-submit": "ਝਲਕ",
+ "translate-tag-category": "ਉਲਥਾਯੋਗ ਸਫ਼ੇ",
+ "translate-sidebar-alltrans": "ਹੋਰ ਬੋਲੀਆਂ ਵਿੱਚ ਪੜ੍ਹੋ",
+ "translations": "ਸਾਰੇ ਤਰਜਮੇ",
+ "translate-translations-fieldset-title": "ਸੁਨੇਹਾ",
+ "translate-translations-messagename": "ਨਾਂ:",
+ "translate-translations-project": "ਪਰੋਜੈਕਟ:",
+ "translate-translations-history-short": "ਅ",
+ "languagestats": "ਭਾਸ਼ਾ ਅੰਕੜੇ",
+ "messagegroupstats-summary": "ਇਹ ਸਫ਼ਾ ਸੁਨੇਹਿਆਂ ਦੀ ਟੋਲੀ ਦੇ ਅੰਕੜੇ ਵਿਖਾਉਂਦਾ ਹੈ",
+ "languagestats-stats-for": "$1 ($2) ਲਈ ਅਨੁਵਾਦ ਅੰਕੜੇ ਹਨ।",
+ "languagestats-recenttranslations": "ਹਾਲੀਆ ਤਰਜਮੇ",
+ "translate-langstats-expand": "ਫੈਲਾਓ",
+ "translate-langstats-collapse": "ਸਮੇਟੋ",
+ "translate-langstats-expandall": "ਸਭ ਫੈਲਾਓ",
+ "translate-langstats-collapseall": "ਸਭ ਸਮੇਟੋ",
+ "translate-language-code": "ਭਾਸ਼ਾ ਕੋਡ",
+ "translate-language-code-field-name": "ਭਾਸ਼ਾ ਕੋਡ:",
+ "translate-language": "ਬੋਲੀ",
+ "translate-total": "ਸੁਨੇਹੇ",
+ "translate-untranslated": "ਤਰਜਮੇ ਤੋਂ ਸੱਖਣੇ",
+ "translate-percentage-complete": "ਮੁਕੰਮਲ",
+ "translate-percentage-fuzzy": "ਪੁਰਾਣੇ",
+ "translate-languagestats-overall": "ਸੁਨੇਹਿਆਂ ਦੀਆਂ ਸਾਰੀਆਂ ਟੋਲੀਆਂ ਇਕੱਠੀਆਂ",
+ "translate-ls-submit": "ਅੰਕੜੇ ਵਿਖਾਓ",
+ "translate-ls-column-group": "ਸੁਨੇਹਿਆਂ ਦੀ ਟੋਲੀ",
+ "translate-mgs-pagename": "ਸੁਨੇਹਿਆਂ ਦੀ ਟੋਲੀ ਦੇ ਅੰਕੜੇ",
+ "translate-mgs-fieldset": "ਤਰਜੀਹਾਂ ਵਿਖਾਉ",
+ "translate-mgs-group": "ਸੁਨੇਹਿਆਂ ਦੀ ਟੋਲੀ:",
+ "translate-mgs-nocomplete": "ਉਹ ਬੋਲੀਆਂ ਨਾ ਵਿਖਾਉ ਜਿਹਨਾਂ ਦਾ ਤਰਜਮਾ ਪੂਰਾ ਹੋ ਗਿਆ ਹੈ",
+ "translate-mgs-noempty": "ਉਹ ਬੋਲੀਆਂ ਨਾ ਵਿਖਾਉ ਜਿਹਨਾਂ ਵਿੱਚ ਕੋਈ ਤਰਜਮਾ ਨਹੀਂ ਹੈ",
+ "translate-mgs-submit": "ਅੰਕੜੇ ਵਿਖਾਓ",
+ "translate-mgs-column-language": "ਭਾਸ਼ਾ",
+ "translate-mgs-totals": "ਸਾਰੀਆਂ ਬੋਲੀਆਂ ਮਿਲਾ ਕੇ",
+ "translate-mgs-invalid-group": "ਦੱਸਿਆ ਗਿਆ ਸਮੂਹ $1 ਹੋਂਦ ਵਿਚ ਨਹੀਂ ਹੈ।",
+ "translate-mgs-nothing": "ਮੰਗੇ ਗਏ ਅੰਕੜਿਆਂ ਲਈ ਵਿਖਾਉਣ ਨੂੰ ਕੁਝ ਨਹੀਂ ਹੈ।",
+ "supportedlanguages-recenttranslations": "ਹਾਲੀਆ ਤਰਜਮੇ",
+ "supportedlanguages-count": "ਕੁੱਲ $1 {{PLURAL:$1|ਭਾਸ਼ਾ|ਭਾਸ਼ਾਵਾਂ}}।",
+ "translate-save": "ਸਾਂਭੋ ($1)",
+ "translate-jssti-add": "ਸੂਚੀ ਵਿਚ ਜੋੜੋ",
+ "managemessagegroups": "ਸੁਨੇਹਿਆਂ ਦੀ ਟੋਲੀ ਦਾ ਪ੍ਰਬੰਧ",
+ "translate-smg-right": "ਆਉਂਦੀਆਂ ਤਬਦੀਲੀਆਂ",
+ "translate-manage-import-new": "$1 ਨਵਾਂ ਸੁਨੇਹਾ",
+ "translate-manage-import-deleted": "$1 ਮਿਟਾਇਆ ਗਿਆ ਸੁਨੇਹਾ",
+ "translate-manage-action-import": "ਮੰਗਾਓ",
+ "translate-manage-action-ignore": "ਅਣਡਿੱਠਾ ਕਰੋ",
+ "translate-manage-import-done": "ਸਭ ਮੁਕੰਮਲ!",
+ "importtranslations": "ਤਰਜਮੇ ਮੰਗਾਓ",
+ "translate-import-from-local": "ਸਥਾਨਕ ਫ਼ਾਈਲ ਅੱਪਲੋਡ:",
+ "translate-import-load": "ਫ਼ਾਈਲ ਲੋਡ ਕਰੋ",
+ "translate-import-err-ul-failed": "ਫ਼ਾਈਲ ਅੱਪਲੋਡ ਨਹੀਂ ਹੋ ਸਕੀ",
+ "translate-js-summary": "ਸਾਰ:",
+ "translate-js-save": "ਸੰਭਾਲੋ",
+ "translate-js-next": "ਸੰਭਾਲੋ ਤੇ ਅਗਲਾ ਖੋਲ੍ਹੋ",
+ "translate-js-nonext": "ਇਹ ਇਸ ਸਫ਼ੇ ਉੱਤੇ ਆਖਰੀ ਸੁਨੇਹਾ ਸੀ।",
+ "translate-js-skip": "ਛੱਡ ਕੇ ਅੱਗੇ ਜਾਉ",
+ "translate-js-save-failed": "ਸੰਭਾਲਣ ਲਈ ਫੇਲ੍ਹ। ਇਹ ਗਲਤੀ ਬਾਰੇ ਰਿਪੋਰਟ ਦਿਉ ਜੀ।",
+ "translate-js-history": "ਤਰਜਮਾਕਾਰੀ ਦਾ ਅਤੀਤ",
+ "translate-js-support": "ਸੁਆਲ ਪੁੱਛੋ",
+ "translate-js-support-unsaved-warning": "ਤੁਹਾਡੇ ਕੋਲ ਅਣ-ਸਾਂਭੇ ਤਰਜਮੇ ਹਨ।",
+ "translate-gs-pos": "ਸਥਿਤੀ",
+ "translate-gs-code": "ਕੋਡ",
+ "translate-gs-continent": "ਮਹਾਂਦੀਪ",
+ "translate-gs-speakers": "ਸਪੀਕਰ",
+ "translate-gs-score": "ਸਕੋਰ",
+ "translate-gs-multiple": "ਕਈ",
+ "translate-gs-count": "ਗਿਣਤੀ",
+ "translate-gs-total": "ਕੁੱਲ",
+ "translate-gs-avgscore": "ਔਸਤ ਸਕੋਰ",
+ "translate-documentation-language": "ਸੁਨੇਹਾ ਦਸਤਾਵੇਜ਼",
+ "translate-searchprofile": "ਤਰਜਮੇ",
+ "translate-messagereview-submit": "ਪਰਖਿਆ ਹੋਇਆ ਵਜੋਂ ਨੱਥੀ ਕਰੋ",
+ "translate-messagereview-progress": "ਪਰਖਿਆ ਹੋਇਆ ਵਜੋਂ ਨੱਥੀ ਹੋ ਰਿਹਾ ਹੈ...",
+ "translate-messagereview-done": "ਪਰਖਿਆ ਗਿਆ",
+ "api-error-invalidrevision": "ਤਰਜਮਾ ਨਹੀਂ ਲੱਭਾ",
+ "api-error-unknownmessage": "ਸੁਨੇਹਾ ਨਹੀਂ ਲੱਭਾ",
+ "api-error-owntranslation": "ਤੁਸੀਂ ਆਪਣੇ ਖ਼ੁਦ ਦੇ ਅਨੁਵਾਦ ਨੂੰ ਪਰਖਿਆ ਗਿਆ ਵਜੋਂ ਨੱਥੀ ਨਹੀਂ ਕਰ ਸਕਦੇ",
+ "translate-messagereview-doit": "ਇਸ ਤਰਜਮੇ ਨੂੰ ਪਰਖੇ ਹੋਏ ਵਜੋਂ ਨਿਸ਼ਾਨਦੇਹ ਕਰੋ।",
+ "log-name-translationreview": "ਤਰਜਮਾਈ ਪਰਖਾਂ ਦਾ ਇੰਦਰਾਜ",
+ "log-description-translationreview": "ਸਾਰੇ ਅਨੁਵਾਦਾਂ ਅਤੇ ਸੁਨੇਹਾ ਸਮੂਹਾਂ ਦੀਆਂ ਪਰਖਾਂ ਦਾ ਇੰਦਰਾਜ",
+ "logentry-translationreview-message": "$1 ਨੇ ਅਨੁਵਾਦ $3 {{GENDER:$2|ਪਰਖਿਆ}}",
+ "translate-workflowstatus": "ਦਰਜਾ: $1",
+ "translate-workflow-set-do": "ਸੈੱਟ ਕਰੋ",
+ "translate-workflow-set-doing": "ਸੈੱਟ ਹੋ ਰਿਹਾ ਹੈ...",
+ "translate-workflow-set-done": "ਸੈੱਟ ਹੋ ਗਿਆ!",
+ "translate-stats-workflow": "ਦਰਜਾ",
+ "translate-msggroupselector-search-all": "ਸਭ",
+ "translate-msggroupselector-search-recent": "ਹਾਲੀਆ",
+ "tux-tab-all": "ਸਭ",
+ "tux-tab-untranslated": "ਤਰਜਮੇ ਤੋਂ ਸੱਖਣੇ",
+ "tux-tab-outdated": "ਪੁਰਾਣੇ",
+ "tux-tab-translated": "ਤਰਜਮਾ ਮੁਕੰਮਲ",
+ "tux-tab-unproofread": "ਅਣ-ਪਰਖੇ",
+ "tux-edit": "ਸੋਧ",
+ "tux-status-optional": "ਚੋਣਵਾਂ",
+ "tux-status-fuzzy": "ਪੁਰਾਣੇ",
+ "tux-status-proofread": "ਪਰਖਿਆ ਹੋਇਆ",
+ "tux-status-translated": "ਤਰਜਮਾ ਮੁਕੰਮਲ",
+ "tux-status-saving": "ਸਾਂਭਿਆ ਜਾ ਰਿਹਾ ਹੈ...",
+ "tux-status-unsaved": "ਅਣ-ਸਾਂਭਿਆ",
+ "tux-editor-placeholder": "ਤੁਹਾਡਾ ਤਰਜਮਾ",
+ "tux-editor-paste-original-button-label": "ਸਰੋਤ ਲਿਖਤ ਚਿਪਕਾਓ",
+ "tux-editor-discard-changes-button-label": "ਤਬਦੀਲੀਆਂ ਰੱਦ ਕਰੋ",
+ "tux-editor-save-button-label": "ਤਰਜਮਾ ਸਾਂਭੋ",
+ "tux-editor-skip-button-label": "ਛੱਡ ਕੇ ਅੱਗੇ ਜਾਉ",
+ "tux-editor-cancel-button-label": "ਰੱਦ ਕਰੋ",
+ "tux-editor-confirm-button-label": "ਤਰਜਮਾ ਤਸਦੀਕ ਕਰੋ",
+ "tux-editor-edit-desc": "ਦਸਤਾਵੇਜ਼ ਸੋਧੋ",
+ "tux-editor-add-desc": "ਦਸਤਾਵੇਜ਼ ਜੋੜੋ",
+ "tux-editor-suggestions-title": "ਸਲਾਹਾਂ",
+ "tux-editor-in-other-languages": "ਹੋਰ ਭਾਸ਼ਾਵਾਂ ਵਿਚ",
+ "tux-editor-need-more-help": "ਹੋਰ ਮਦਦ ਚਾਹੀਦੀ ਹੈ?",
+ "tux-editor-ask-help": "ਹੋਰ ਜਾਣਕਾਰੀ ਮੰਗੋ",
+ "tux-editor-tm-match": "$1% ਮੇਲ",
+ "tux-warnings-more": "{{PLURAL:$1|$1 ਹੋਰ}}",
+ "tux-warnings-hide": "ਲੁਕਾਓ",
+ "tux-editor-save-failed": "ਅਨੁਵਾਦ ਦੀ ਸਾਂਭ ਫੇਲ੍ਹ ਹੋਈ: $1",
+ "tux-editor-n-uses": "$1 ਵਾਰ {{PLURAL:$1|ਵਰਤਿਆ ਗਿਆ|ਵਰਤੇ ਗਏ}}",
+ "tux-editor-message-desc-more": "ਹੋਰ ਵੇਖੋ",
+ "tux-editor-message-desc-less": "ਘੱਟ ਵੇਖੋ",
+ "tux-editor-clear-translated": "ਅਨੁਵਾਦੇ ਹੋਏ ਲੁਕਾਓ",
+ "tux-editor-proofreading-mode": "ਪਰਖ",
+ "tux-editor-translate-mode": "ਸੂਚੀ",
+ "tux-editor-proofreading-hide-own-translations": "ਆਪਣੇ ਤਰਜਮੇ ਲੁਕਾਉ",
+ "tux-editor-proofreading-show-own-translations": "ਆਪਣੇ ਤਰਜਮੇ ਵੇਖੋ",
+ "tux-proofread-action-tooltip": "ਪਰਖਿਆ ਹੋਇਆ ਵਜੋਂ ਨੱਥੀ ਕਰੋ",
+ "tux-proofread-edit-label": "ਸੋਧ",
+ "tux-editor-page-mode": "ਸਫ਼ਾ",
+ "tux-editor-outdated-warning": "ਇਸ ਤਰਜਮੇ ਨੂੰ ਸ਼ਾਇਦ ਨਵਾਂ ਕਰਨ ਦੀ ਲੋੜ ਹੈ।",
+ "tux-editor-outdated-warning-diff-link": "ਫ਼ਰਕ ਵਿਖਾਓ",
+ "tux-editor-doc-editor-placeholder": "ਸੁਨੇਹਾ ਦਸਤਾਵੇਜ਼",
+ "tux-editor-doc-editor-save": "ਦਸਤਾਵੇਜ਼ ਸਾਂਭੋ",
+ "tux-editor-doc-editor-cancel": "ਰੱਦ ਕਰੋ",
+ "tux-messagetable-more-messages": "$1 ਹੋਰ {{PLURAL:$1|ਸੁਨੇਹਾ|ਸੁਨੇਹੇ}}",
+ "tux-messagetable-loading-messages": "{{PLURAL:$1|ਸੁਨੇਹਾ ਲੋਡ ਹੋ ਰਿਹਾ ਹੈ|ਸੁਨੇਹੇ ਲੋਡ ਹੋ ਰਹੇ ਹਨ}}...",
+ "tux-message-filter-advanced-button": "ਤਕਨੀਕੀ ਖੋਜ",
+ "tux-message-filter-optional-messages-label": "ਚੋਣਵੇਂ ਸੁਨੇਹੇ",
+ "tux-proofread-translated-by-self": "ਮੇਰੇ ਵੱਲੋਂ ਤਰਜਮੇ",
+ "tux-empty-list-all": "ਸੁਨੇਹਿਆਂ ਦੀ ਇਹ ਟੋਲੀ ਖ਼ਾਲੀ ਹੈ",
+ "tux-empty-list-all-guide": "ਤਰਜਮਾ ਕਰਨ ਵਾਸਤੇ ਕੋਈ ਹੋਰ ਸੁਨੇਹਾ-ਟੋਲੀ ਚੁਣੋ",
+ "tux-empty-list-translated": "ਕੋਈ ਤਰਜਮਾ ਕੀਤਾ ਸੁਨੇਹਾ ਨਹੀਂ",
+ "tux-empty-list-translated-guide": "ਤੁਸੀਂ ਅਨੁਵਾਦ ਵਿਚ ਮਦਦ ਕਰ ਸਕਦੇ ਹੋ",
+ "tux-empty-list-translated-action": "ਤਰਜਮਾ ਕਰੋ",
+ "tux-empty-no-messages-to-display": "ਵਿਖਾਉਣ ਲਈ ਕੋਈ ਸੁਨੇਹਾ ਨਹੀਂ।",
+ "tux-empty-there-are-optional": "ਕੁਝ ਚੋਣਵੇਂ ਸੁਨੇਹੇ ਹਨ ਜੋ ਇਸ ਸੂਚੀ ਵਿਚ ਨਹੀਂ ਵਿਖਾਏ ਗਏ",
+ "tux-empty-show-optional-messages": "ਚੋਣਵੇਂ ਸੁਨੇਹੇ ਵਿਖਾਓ",
+ "tux-empty-no-outdated-messages": "ਕੋਈ ਪੁਰਾਣਾ ਸੁਨੇਹਾ ਨਹੀਂ",
+ "tux-empty-nothing-to-proofread": "ਪਰਖਣ ਨੂੰ ਕੁਝ ਨਹੀਂ",
+ "tux-empty-you-can-help-providing": "ਤੁਸੀਂ ਨਵੇਂ ਅਨੁਵਾਦ ਦੇਣ ਵਿਚ ਮਦਦ ਕਰ ਸਕਦੇ ਹੋ",
+ "tux-empty-nothing-new-to-proofread": "ਪਰਖਣ ਨੂੰ ਕੁਝ ਨਵਾਂ ਨਹੀਂ",
+ "tux-empty-list-other": "ਤਰਜਮਾ ਕਰਨ ਵਾਸਤੇ ਕੁਝ ਨਹੀਂ",
+ "tux-empty-list-other-action": "ਤਰਜਮੇ ਪਰਖੋ",
+ "tux-empty-list-other-link": "ਸਾਰੇ ਸੁਨੇਹੇ ਵਿਖਾਓ",
+ "tux-editor-close-tooltip": "ਬੰਦ ਕਰੋ",
+ "tux-editor-expand-tooltip": "ਫੈਲਾਓ",
+ "tux-editor-collapse-tooltip": "ਸਮੇਟੋ",
+ "tux-editor-message-tools-history": "ਅਤੀਤ",
+ "tux-editor-message-tools-translations": "ਸਾਰੇ ਤਰਜਮੇ",
+ "tux-editor-loading": "ਲੋਡ ਕੀਤਾ ਜਾ ਰਿਹਾ ਹੈ...",
+ "translate-search-more-languages-info": "$1 ਹੋਰ {{PLURAL:$1|ਭਾਸ਼ਾ|ਭਾਸ਼ਾਵਾਂ}}",
+ "translate-statsbar-tooltip": "$1% ਤਰਜਮਾ ਹੋਇਆ, $2% ਪਰਖਿਆ ਗਿਆ",
+ "translate-statsbar-tooltip-with-fuzzy": "$1% ਤਰਜਮਾ ਹੋਇਆ, $2% ਪਰਖਿਆ ਗਿਆ, $3% ਪੁਰਾਣਾ ਹੋ ਗਿਆ",
+ "translate-search-more-groups-info": "$1 ਹੋਰ {{PLURAL:$1|ਸਮੂਹ}}"
+}
diff --git a/MLEB/Translate/i18n/core/pam.json b/MLEB/Translate/i18n/core/pam.json
new file mode 100644
index 00000000..b709e37e
--- /dev/null
+++ b/MLEB/Translate/i18n/core/pam.json
@@ -0,0 +1,14 @@
+{
+ "@metadata": {
+ "authors": [
+ "Val2397"
+ ]
+ },
+ "translate": "↓Ilikas",
+ "translate-magic-cm-save": "↓Isikap",
+ "translate-magic-cm-savefailed": "↓Bigu ya ing pamanyikap",
+ "translate-rc-translation-filter-no": "↓Ala kang gagawan",
+ "translate-stats-users": "↓Talalikas",
+ "translate-js-save": "↓Isikap",
+ "translate-messagereview-submit": "↓Tanggapan"
+}
diff --git a/MLEB/Translate/i18n/core/pdc.json b/MLEB/Translate/i18n/core/pdc.json
new file mode 100644
index 00000000..55f17da6
--- /dev/null
+++ b/MLEB/Translate/i18n/core/pdc.json
@@ -0,0 +1,62 @@
+{
+ "@metadata": {
+ "authors": [
+ "Xqt",
+ "Purodha"
+ ]
+ },
+ "translate": "Iwwersetze",
+ "translate-page-settings-legend": "Uffstellinge",
+ "translate-page-group": "Druppe",
+ "translate-page-language": "Schprohch",
+ "translate-page-limit": "Limit",
+ "translate-page-navigation-legend": "Faahre-Gnepp",
+ "translate-next": "neegschtes Blatt",
+ "translate-prev": "letscht Blatt",
+ "translate-page-edit": "ennere",
+ "translate-ext-url": "<hr />Gewebb: $1",
+ "translate-edit-title": "„$1“ ennere",
+ "translate-edit-translation": "Iwwersetzing",
+ "translate-edit-in-other-languages": "Meldinge in annere Schprooche",
+ "translate-magic-cm-to-be": "Sollt sei",
+ "translate-magic-cm-comment": "Aamaericking:",
+ "translate-magic-cm-save": "Beilege",
+ "translate-magic-namespace": "Naame von Blatznaame",
+ "translationstats": "Nummere vun Iwwersetzinge",
+ "translate-stats-edits": "Enneringe",
+ "translate-stats-users": "Iwwersetzer",
+ "translate-statsf-scale-months": "Munete",
+ "translate-statsf-scale-weeks": "Woche",
+ "translate-statsf-scale-days": "Daag",
+ "translate-statsf-scale-hours": "Schtund",
+ "translate-statsf-count-registrations": "Neie Yuuser",
+ "translate-statsf-submit": "Aagucke",
+ "translate-sidebar-alltrans": "In annere Schprooche",
+ "translations": "Alle Iwwersetzinge",
+ "translate-translations-none": "Keene Iwwersetzingen fer „$1“ vorhande",
+ "translate-translations-messagename": "Naame:",
+ "translate-translations-project": "Projekt:",
+ "translate-translations-history-short": "G",
+ "languagestats": "Nummere vun Schprooche",
+ "languagestats-stats-for": "Nummere vun Iwwersetzinge fer $1 ($2)",
+ "languagestats-recenttranslations": "Letscht Iwwersetzinge",
+ "translate-langstats-expand": "uffklappe",
+ "translate-langstats-collapse": "zuklappe",
+ "translate-langstats-expandall": "alle uffklappe",
+ "translate-langstats-collapseall": "alle zuklappe",
+ "translate-language-code": "Schprooche-Code",
+ "translate-language-code-field-name": "Schprooche-Code:",
+ "translate-language": "Schprooch",
+ "translate-total": "Meldinge vum System",
+ "translate-untranslated": "Net iwwersetzt",
+ "translate-ls-submit": "Nummere zeige",
+ "translate-mgs-column-language": "Schprooch",
+ "supportedlanguages-translators": "{{PLURAL:$2|Iwwersetzer|Iwwersetzer}}: $1",
+ "supportedlanguages-recenttranslations": "Letscht Iwwersetzinge",
+ "translate-save": "Beilege ($1)",
+ "translate-jssti-add": "Zu de Lischt dezu duh",
+ "translate-manage-import-done": "Alles geduh!",
+ "translate-import-load": "Feil ufflaade",
+ "translate-js-save": "Beilege",
+ "translate-gs-speakers": "Schwetzer"
+}
diff --git a/MLEB/Translate/i18n/core/pfl.json b/MLEB/Translate/i18n/core/pfl.json
new file mode 100644
index 00000000..e882314c
--- /dev/null
+++ b/MLEB/Translate/i18n/core/pfl.json
@@ -0,0 +1,276 @@
+{
+ "@metadata": {
+ "authors": [
+ "Manuae",
+ "Purodha",
+ "Xqt"
+ ]
+ },
+ "translate": "Iwasedze",
+ "translate-desc": "[[Special:Translate|Schbezialsaid]] fas iwasedze vun MediaWiki un waidares",
+ "translate-taskui-view": "Alli Nochrischde zaische",
+ "translate-taskui-untranslated": "Ned iwasedzde Nochrischde zaische",
+ "translate-taskui-optional": "Alli obzionali Nochrischde zaische",
+ "translate-taskui-acceptqueue": "Bloß des zaische, wu isch a oivaschdone soi kend",
+ "translate-taskui-reviewall": "Alli Iwasedzunge iwabriefe",
+ "translate-taskui-export-to-file": "Gebs im aischene Foamad aus",
+ "translate-taskui-export-as-po": "Fa ä Offline-Iwasedzung ausgewe",
+ "translate-taction-translate": "Iwasedze",
+ "translate-taction-proofread": "Iwabriefe",
+ "translate-taction-lstats": "Schdadischdig fa die Schbrooch",
+ "translate-taction-mstats": "Schdadischdigge fa die Nochrischdegrubb",
+ "translate-taction-export": "Ausgewe",
+ "translate-taction-disabled": "Des do hods ned uffm Wiki.",
+ "translate-page-no-such-language": "Die oagewene Schbrooch isch ugildisch.",
+ "translate-page-no-such-group": "Die oagewene Grubb isch ugildisch.",
+ "translate-page-disabled": "Iwasedzunge in die Schbrooch ged ned fa die Grubb.\nWesche:\n\n<em>$1</em>",
+ "translate-page-settings-legend": "Oischdellunge",
+ "translate-page-group": "Grubb",
+ "translate-page-language": "Schbrooch",
+ "translate-page-limit": "Grenz",
+ "translate-page-limit-option": "{{PLURAL:$1|Ä Nochrischd|$1 Nochrischde}} bro Said",
+ "translate-submit": "Hole",
+ "translate-page-navigation-legend": "Nawigazion",
+ "translate-page-showing": "Zaisch Nochrischde $1 bis $2 vun zsomme $3",
+ "translate-page-showing-all": "Zaischd {{PLURAL:$1|Ä Nochrischd|$1 Nochrischde}}",
+ "translate-page-showing-none": "S'hod kä Nochrischde.",
+ "translate-next": "negschd Said",
+ "translate-prev": "vorisch Said",
+ "translate-page-description-legend": "Auskinfd iwa die Grubb",
+ "translate-page-description-hasoptional": "Die Nochrischdegrubb hod obzionali Nochrischde.\nObzionali Nochrischde deedn awa bessa bloß iwasedz werre, wonns inde Schbrooch dodvoa ä Bedirfnis hot\nwie kä Leazaische zu bnudze oda Aischenoame zu umschraiwe. $1",
+ "translate-page-description-hasoptional-open": "Obzionali Nochrischde zaische",
+ "translate-page-edit": "bearwaide",
+ "translate-ext-url": "<hr />Websaid: $1",
+ "translate-optional": "(uff Wunsch)",
+ "translate-ignored": "(ignoriead)",
+ "translate-edit-title": "„$1“ bearwaide",
+ "translate-edit-definition": "Uaschbringlischi Nochrischd",
+ "translate-edit-translation": "Iwasedzung",
+ "translate-edit-contribute": "midschaffe",
+ "translate-edit-no-information": "''Fa die Nochrischd hods kä Unalaache.''\n''Wonn driwwa was wisse duschd, konschd de onare baide Erwed helfe, wonnen saache duschd, worums do gehd.''",
+ "translate-edit-information": "Auskinfd iwa die Nochrischd ($1)",
+ "translate-edit-in-other-languages": "Nochrischd in onare Schbrooche",
+ "translate-edit-committed": "Deazaidischi Iwasedzung",
+ "translate-edit-warnings": "Waanung iwa mongelhafde Iwasedzunge",
+ "translate-edit-tmsugs": "Voaschleesch ausm Iwasedzungsschbaischa",
+ "translate-edit-tmmatch-source": "Qwelltegsch vunde Iwasedzung: $1",
+ "translate-edit-tmmatch": "$1 % Iwaoischdimmung",
+ "translate-use-suggestion": "Iwasedzung duaschn Voaschlach easedze.",
+ "translate-edit-nopermission": "Fas Iwasedze vun Nochrischde braugschd s'Räschd.",
+ "translate-edit-askpermission": "Nochde Bwillischung frooche",
+ "translate-magic-pagename": "Eawaidadi MediaWiki-Iwasedzung",
+ "translate-magic-help": "Du konschd do Bseudoniem fa Schbezijalsaide, magische Weada un Noame vun Noamnsrääm iwasedze.\n\nSchbezijalsaide un magische Weada kennen vaschiedene Iwasedzunge hawe. Iwasedzunge werren midm Komma (,) gdrennd. Noamnsrääm kennen ä Iwasedzung hawe.\n\nInde Iwasedzung vum Noame vun Noamnsrääm hod <code>$1 talk</code> ä bsondari Bdaidung. <code>$1</code> werd midm Brojegdnoame (z. B. <code>{{ns:project_talk}}</code>) easedzd. Wons inde Schbroch ned meschlisch isch, än gildischi Ausdrugg zu finne, frochgschdn Endwiggla.\n\nDu mugschd inde Grubb vunde Iwasedza soi, um Änarunge schbaischare zu kenne.\nÄnarunge werren gschbaischad, won unne uff „Schbaischare“ gligge dudschd.",
+ "translate-magic-module": "Bauschdää:",
+ "translate-magic-submit": "Hole",
+ "translate-magic-cm-export": "Ausgewe",
+ "translate-magic-nothing-to-export": "Do hods nix fas Ausgewe.",
+ "translate-magic-cm-to-be": "Deed soi solle",
+ "translate-magic-cm-current": "Gescheweadisch",
+ "translate-magic-cm-original": "Original",
+ "translate-magic-cm-comment": "Kommenda:",
+ "translate-magic-cm-save": "Schbaischare",
+ "translate-magic-cm-updatedusing": "Agduell iwa [[Special:AdvancedTranslate|{{int:Translate-magic-pagename}}]]",
+ "translate-magic-cm-savefailed": "Schbaischare isch ned gonge",
+ "translate-magic-special": "Bseudoniem fa Schbezijalsaide",
+ "translate-magic-words": "Magische Weada",
+ "translate-magic-namespace": "Noame vunde Noamsrääm",
+ "translate-magic-notsaved": "Doi Änarunge sin ned gsischad worre!",
+ "translate-magic-errors": "Beheb bidde {{PLURAL:$1|de|die}} Fehla inde Iwasedzung:",
+ "translate-magic-saved": "Doi Änarunge sin eafolschraisch gsischad worre",
+ "translate-checks-parameters": "Die folschndi {{PLURAL:$2|Kenngreeß wead|Kenngreeß werren}} ned bnudzd:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-parameters-unknown": "Die folschndi {{PLURAL:$2|Kenngreeß isch|Kenngreeß sin}} ubkond:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-balance": "Do hodse uglaischi Oazahl vun {{PLURAL:$2|Klommare|Klommare}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links": "{{PLURAL:$2|De Ling'g isch|Die $2 Ling'gs sin}} broblemadisch:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links-missing": "{{PLURAL:$2|De Ling'g fehld|Die $2 Ling'gs fehln}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-xhtml": "Bidde easedz die {{PLURAL:$2|Uffschrifd|Uffschrifde}} midm rischdische:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-plural": "Die Feschleschung bnudzd <nowiki>{{PLURAL:}}</nowiki>, awa die Iwasedzung ned.",
+ "translate-checks-pagename": "De Noamensraum waischd vunde Feschleschung ab.",
+ "translate-checks-format": "Die Iwasedzung folschd nedde Feschdleschung oda hodn ugildischi Sadzbau: $1",
+ "translate-checks-escape": "Die folschnde Escape-Zaische kenndn zufellisch soi: <strong>$1</strong>",
+ "translate-checks-parametersnotequal": "Die Oazahl vunde Parameter isch {{PLURAL:$1|$1}}; solld awa {{PLURAL:$2|$2}} soi.",
+ "translate-checks-malformed": "<nowiki>$1</nowiki> isch ugildisch.",
+ "translate-checks-fudforum-syntax": "In dem Brojegd bnudz <nowiki>$1</nowiki> schdad <nowiki>$2</nowiki>.",
+ "translate-pref-nonewsletter": "Sendma kä E-Mail-Naijischkaide",
+ "translate-pref-editassistlang": "Hilfschbrooch:",
+ "prefs-translate": "Meschlischkaide fas Iwasedze",
+ "translate-pref-editassistlang-help": "Komma gdrendi Lischd vun Schbroochcodes.\nIwasedzunge vun Nochrischde in die Schbrooche werren baim Iwasedze gzaischd.\nDie Schdandadlischd vunde Schbrooche b'ruhd uff doina Schbrooch.",
+ "translate-pref-editassistlang-bad": "S'hodn ugildischi Schbroochcode inde Lisch:\n<nowiki>$1</nowiki>.",
+ "right-translate": "Schaffe mitde Hilf vunde Iwasedzungsowaflesch",
+ "right-translate-manage": "Nochrischdegrubbe vawalde",
+ "action-translate-manage": "Nochrischdegrubbe zu vawalde",
+ "right-translate-import": "Offline-Iwasedzunge roihole",
+ "action-translate-import": "Hol Offline-Iwasedzunge roi",
+ "right-translate-messagereview": "Iwasedzunge iwabriefe",
+ "right-translate-groupreview": "Änade Schaffnsfluss vunde Nochrischdegrubbe",
+ "translate-rc-translation-filter": "Iwasedzunge fildare:",
+ "translate-rc-translation-filter-no": "Nix mache",
+ "translate-rc-translation-filter-only": "Zaisch bloß Iwasedzunge",
+ "translate-rc-translation-filter-filter": "Iwasedzunge fildare",
+ "translate-rc-translation-filter-site": "Änad bloß Nochrischde vum Wiki",
+ "translationstats": "Schdadischdig fas Iwasedze",
+ "translate-stats-edits": "Bearwaidunge",
+ "translate-stats-users": "Iwasedza",
+ "translate-stats-registrations": "Oameldunge",
+ "translate-stats-reviews": "Guudachde",
+ "translate-stats-reviewers": "Guudachda",
+ "translate-statsf-intro": "Konschd do efachi Schdadischdige mache.\nAlli Wead hawenen unare un ower Rohmewead.",
+ "translate-statsf-options": "Grafig-Zusedz",
+ "translate-statsf-width": "Braid in Pixls:",
+ "translate-statsf-height": "Heeh in Pixls:",
+ "translate-statsf-days": "Zaidschboann in Daach:",
+ "translate-statsf-start": "Schdaddadum:",
+ "translate-statsf-scale": "Foinhaid:",
+ "translate-statsf-scale-months": "Monade",
+ "translate-statsf-scale-weeks": "Woche",
+ "translate-statsf-scale-days": "Daache",
+ "translate-statsf-scale-hours": "Schdunde",
+ "translate-statsf-count": "Maßgreeß:",
+ "translate-statsf-count-edits": "Oazahl vunde B'awaidunge",
+ "translate-statsf-count-users": "Emsischi Iwasedza",
+ "translate-statsf-count-registrations": "Naije Benudza",
+ "translate-statsf-count-reviews": "Iwasedzungs-Guudachde",
+ "translate-statsf-count-reviewers": "Guudachda",
+ "translate-statsf-language": "Komma gdrenndi Lischd vun Schboochcode:",
+ "translate-statsf-group": "Komma gdrenndi Lischd vun Grubbecode:",
+ "translate-statsf-submit": "Voaschau",
+ "translate-tag-category": "Iwasedzdi Saide",
+ "translate-tag-page-desc": "Iwasedzung vunde Wikisaid [[$2|$1]].",
+ "translate-sidebar-alltrans": "In oanare Schbrooche",
+ "translations": "All Iwasedzunge",
+ "translations-summary": "Gebn Nochrischdenoame oi, um alli vafieschbari Iwasedzunge zu zaische.",
+ "translate-translations-no-message": "„$1“ ischkä iwasedzbari Nochrischd",
+ "translate-translations-none": "S'hodkä Iwasedzung fa \"$1\"",
+ "translate-translations-count": "{{PLURAL:$1|Ä Iwasedzung|$1 Iwasedzunge}} gfunne.",
+ "translate-translations-fieldset-title": "Nochrischd",
+ "translate-translations-messagename": "Noame",
+ "translate-translations-project": "Brojegd:",
+ "translate-translations-including-no-param": "Gebn gildischi Nochrischdenoame als Kenngreeß fadie Unasaid oa",
+ "translate-translations-history-short": "G",
+ "languagestats": "Schdadischdig fa die Schbrooch",
+ "languagestats-summary": "Die Said zaischdä Schdadischdig fa Iwasedzunge vun alle Nochrischdegrubbe fa die Schbrooch.",
+ "languagestats-stats-for": "Schdadischdige fa Iwasedzunge vun $1 ($2).",
+ "languagestats-recenttranslations": "Jingschdi Iwasedzunge",
+ "translate-langstats-incomplete": "Schdadischdige uffde Said sin ned kombledd. Ladse naij ruff, domida alli krische dudsch.",
+ "translate-langstats-expand": "uffglabbe",
+ "translate-langstats-collapse": "zuglabbe",
+ "translate-langstats-expandall": "alli uffglabbe",
+ "translate-langstats-collapseall": "alli zuglabbe",
+ "translate-language-code": "Schbroochcode",
+ "translate-language-code-field-name": "Schbroochcode:",
+ "translate-suppress-complete": "Unadrigg schun iwasedzdi Nochrischdegrubbe goans",
+ "translate-ls-noempty": "Unadrigg ned iwasedzdi Nochrischdegrubbe goans",
+ "translate-language": "Schbrooch",
+ "translate-total": "Nochrischde",
+ "translate-untranslated": "Ned iwasedzd",
+ "translate-percentage-complete": "Kombledd",
+ "translate-percentage-fuzzy": "Abgloffe",
+ "translate-languagestats-overall": "Alli Nochrischdegrubbe zsomme",
+ "translate-ls-submit": "Schdadischdige zaische",
+ "translate-ls-column-group": "Nochrischdegrubb",
+ "translate-mgs-pagename": "Schdadischdigge fa die Nochrischdegrubb",
+ "translate-mgs-fieldset": "Zaisch die Oischdellunge",
+ "translate-mgs-group": "Nochrischdegrubb:",
+ "translate-mgs-nocomplete": "Zaisch kä Schbrooch, wu ä Iwasedzung hawen.",
+ "translate-mgs-noempty": "Zaisch kä Schbrooch, wu kä Iwasedzung hawen.",
+ "translate-mgs-submit": "Schdadischdige zaische",
+ "translate-mgs-column-language": "Schbrooch",
+ "translate-mgs-totals": "Alle Schbrooche uff ämol",
+ "translate-mgs-invalid-group": "Die oangewene Grubb $1 hods ned.",
+ "translate-mgs-nothing": "Die oagfoadade Schdadischdige hawen kä Daade.",
+ "supportedlanguages": "Unaschdidzde Schbrooche",
+ "supportedlanguages-summary": "Die Said zaischd ä Lischd vun alli uff {{SITENAME}} unaschdidzdi Schbrooche, zsomme midde Noamne vunde Iwasedza, wu in de Schbrooch gschaffe duen.\nWonnen Iwasedza viel schaffe dud, wead soin Noame greeßa.\nDie Faab unam Noame zaischd oa wonna zledschd do midgschaffd kabd hod.",
+ "supportedlanguages-colorlegend": "Hiwais zude Faawe: Leschdi Iwasedzung lischd $1 Daach zrigg.",
+ "supportedlanguages-translators": "{{PLURAL:$2|Iwasedza|Iwasedza}}: $1",
+ "supportedlanguages-recenttranslations": "Jingschdi Iwasedzunge",
+ "supportedlanguages-count": "$1 {{PLURAL:$1|Schbrooch|Schbrooche}} gsommd.",
+ "supportedlanguages-activity": "$1: $2 {{PLURAL:$2|B'awaidung|B'awaidunge}} - leschdi voa $3 {{PLURAL:$3|Daach|Daach}}",
+ "translate-save": "Schbaischa ($1)",
+ "translate-jssti-add": "Zude Lisch dzufiesche",
+ "managemessagegroups": "Vawaldung vunde Nochrischdegrubbe",
+ "translate-smg-notallowed": "Du deafschddo des ned mache.",
+ "translate-smg-nochanges": "S'hod kä Änarunge zum dro schaffe.",
+ "translate-smg-submit": "Änarunge zum Va'awaide iwadraache",
+ "translate-smg-submitted": "Feschdleschung vun Nochrischde isch eanaijad worre. Änarunge werren im Hinagrund va'awaided.",
+ "translate-manage-import-diff": "Nochrischd $1 | Agzione: $2",
+ "translate-manage-import-new": "Naije Nochrischd $1",
+ "translate-manage-import-deleted": "Gleschdi Nochrischd $1",
+ "translate-manage-action-import": "Impordiere",
+ "translate-manage-action-conflict": "Impordiere un makiere",
+ "translate-manage-action-ignore": "Ignoriere",
+ "translate-manage-action-fuzzy": "Iwasedzunge roihole un schraibse als \"fuzzy\" oa.",
+ "translate-manage-nochanges": "Fa die Grubb hods kä Änarunge inde Feschdleschung vunde Nochrischde",
+ "translate-manage-nochanges-other": "S'hod kä Änarunge fa die Schbrooch.\nBnudz de Vawais une, um zrigg in die Iwasischd vunde Grubbededais zu kumme.",
+ "translate-manage-inconsistent": "Do hods Uschdimischkaide inde Oafroch.\nIwabrief mol doi Änarunge un vasuchs nomol.\nHiwais: $1",
+ "translate-manage-toolong": "Die maximale Va'awaidungszaid vun $1 {{PLURAL:$1|Sekund|Sekunde}} isch abgloffe.\nSchiggs Foamula nomol ab, ums foadsedze zu kenne.",
+ "translate-manage-import-summary": "Naiji Ausgab vunea Qwell nufflaade",
+ "translate-manage-conflict-summary": "Naiji Ausgab isch vunea Qwell nuffglaade worr.\nIwabriefs bidde.",
+ "translate-manage-fuzzy-summary": "Die Feschdleschung vunde Nochrischde hodsisch g'änad",
+ "translate-manage-import-done": "Alles erledischd!",
+ "importtranslations": "Iwasedzunge roihole",
+ "translate-import-from-local": "Dadai do nufflaade:",
+ "translate-import-load": "Dadai lade",
+ "translate-import-err-dl-failed": "Dadai konned kohld were:\n$1",
+ "translate-import-err-ul-failed": "S'roihole vunde Dadai hod ned g'klabbd",
+ "translate-import-err-invalid-title": "De oagewene Dadainoame <nowiki>$1</nowiki> isch ugildisch gwesd.",
+ "translate-import-err-no-such-file": "Die Dadai <nowiki>$1</nowiki> hods ned oda isch do ned ruffglaade worre.",
+ "translate-import-err-stale-group": "Die Nochrischdegrubb vonde Dadai hods ned.",
+ "translate-import-err-no-headers": "Die Dadai isch ned im Gettext-Foamad vunde Eawaidarung \"Iwasedze\":\nDie Grubb un Schbrooch hodned ausm Dadaikopp bschdimmd werre kenne.",
+ "translate-import-err-warnings": "Midde Dadai schdimmd was ned.\nSchdell sischa, dassdo kä <code>msgctxt</code>-Felda gleschd werren.\nHiwais: $1",
+ "translate-js-summary": "Zommefassung:",
+ "translate-js-save": "Schbaischare",
+ "translate-js-next": "Schbaischare unde negschd effne",
+ "translate-js-nonext": "Des isch die ledschd Nochrischd ufde Said gwesd.",
+ "translate-js-skip": "Waida zum negschde",
+ "translate-js-save-failed": "S'Schbaischare isch ned gonge. Meld bidde de Fehla.",
+ "translate-js-history": "Iwasedzungsgschischd",
+ "translate-js-support": "Frooch",
+ "translate-js-support-title": "Froch noch Hilf, woans ned gnischnd Auskinfd hod, um die Nochrischd rischdisch iwasedze zu kenne.",
+ "translate-js-support-unsaved-warning": "Du hoschd ugsichade Iwasedzunge.",
+ "translate-gs-pos": "Pos.",
+ "translate-gs-code": "Code",
+ "translate-gs-continent": "Kondinend",
+ "translate-gs-speakers": "Schbrecha",
+ "translate-gs-score": "Eagewnis",
+ "translate-gs-multiple": "Mehrare",
+ "translate-gs-count": "Oazahl",
+ "translate-gs-total": "Gsoamd",
+ "translate-gs-avgscore": "G'middldes Eagewnis",
+ "translate-documentation-language": "Nochrischde-Unalache",
+ "translate-searchprofile": "Iwasedzunge",
+ "translate-searchprofile-tooltip": "In alle Iwasedzunge suche",
+ "translate-search-languagefilter": "Noch Schbrooche fildare:",
+ "translate-search-nofilter": "Alli Schbrooche",
+ "translate-messagereview-submit": "Zuschdimme",
+ "translate-messagereview-progress": "Schdimm zu …",
+ "translate-messagereview-failure": "Zuschdimmung … gschaidad: $1",
+ "translate-messagereview-done": "Zugschdimmd",
+ "translate-messagereview-reviews": "Zuschdimmung vun {{PLURAL:$1|äm Benudza|$1 Benudza}}",
+ "translate-messagereview-reviewswithyou": "Zuschdimmung vun {{PLURAL:$1|äm Benudza|$1 Benudza}}, oinschließlisch vun dir",
+ "api-error-invalidrevision": "Kä Iwasedzung gfunne worre",
+ "api-error-unknownmessage": "Kä Nochrischd gfunne worre.",
+ "api-error-fuzzymessage": "Die Iwasedzung isch nemme agduell",
+ "api-error-owntranslation": "Doi aischini Iwasedzunge konschd ned agzebdiere.",
+ "translate-messagereview-no-fuzzy": "Va'aldede Iwasedsedzunge kennen ned agzebdiad werre.",
+ "translate-messagereview-no-own": "Doi aischini Iwasedzunge konschd ned agzebdiere.",
+ "translate-messagereview-doit": "Die Iwasedzung als rischdisch agzebdiere.",
+ "log-name-translationreview": "Iwasedzungs-Iwabligg-Logbuch",
+ "log-description-translationreview": "Logbuch fa alli Iwabriefunge vun Iwasedzunge und Nochrischdegrubbe.",
+ "logentry-translationreview-message": "$1 {{GENDER:$2|hod}} die Iwasedzung $3 iwabrifd",
+ "translate-workflow-state-": "(ned gsedzd)",
+ "translate-workflowstatus": "Zuschdond: $1",
+ "translate-workflow-set-do": "Oischdelle",
+ "translate-workflow-set-doing": "Werd oigschdelld...",
+ "translate-workflow-set-done": "Oigschdelld!",
+ "translate-workflow-set-error-alreadyset": "De oagfoadade un gescheweadische Zuschdoand sin glaisch.",
+ "translate-workflow-autocreated-summary": "Selbschdendischi Easchaffung vunde Said fa Awaidsschridd-Zuschdond $1",
+ "translate-stats-workflow": "Zuschdond",
+ "translate-workflowgroup-label": "Awaidsschridd-Zuschdond",
+ "translate-workflowgroup-desc": "Die Nochrischdegrubb zaischde Zuschdoand zum Schaffnsflus baide Iwasedzunge.\nDe Zuschdoand wead iwa die Oischdellunge <code lang=\"en\">$wgTranslateWorkflowStates</code> oagbassd.",
+ "translate-dynagroup-recent-label": "Jingschdi Iwasedzunge",
+ "translate-dynagroup-recent-desc": "Die Nochrischdegrubb zaischd alli geschewerdische Iwasedzunge inde Sbrooch oa.\nOam Beschde ischse fa Uffgawe vum Gescheleese.",
+ "translate-dynagroup-by": "Iwasedzung vun {{GENDER:$1|$1}}",
+ "translate-dynagroup-byc": "Iwasedzung vun {{GENDER:$1|$1}} ($2)",
+ "translate-dynagroup-last": "Ledschdi Änarung vun {{GENDER:$1|$1}}",
+ "translate-dynagroup-lastc": "Ledschdi Änarung vun {{GENDER:$1|$1}} ($2)",
+ "translate-gethelp": "Hilf"
+}
diff --git a/MLEB/Translate/i18n/core/pl.json b/MLEB/Translate/i18n/core/pl.json
new file mode 100644
index 00000000..2a92d281
--- /dev/null
+++ b/MLEB/Translate/i18n/core/pl.json
@@ -0,0 +1,408 @@
+{
+ "@metadata": {
+ "authors": [
+ "Ankry",
+ "Beau",
+ "BeginaFelicysym",
+ "Chrumps",
+ "Derbeth",
+ "Dodek",
+ "Jwitos",
+ "Leinad",
+ "Maikking",
+ "Marcin Łukasz Kiejzik",
+ "Matma Rex",
+ "McMonster",
+ "Mikołka",
+ "Odie2",
+ "Olgak85",
+ "Qblik",
+ "Rezonansowy",
+ "Saper",
+ "Sp5uhe",
+ "ToSter",
+ "Ty221",
+ "WTM",
+ "Woytecr",
+ "Wpedzich",
+ "Žekřil71pl"
+ ]
+ },
+ "translate": "Przetłumacz",
+ "translate-desc": "[[Special:Translate|Strona specjalna]] umożliwiająca tłumaczenie MediaWiki oraz innych programów",
+ "translate-taskui-view": "Pokaż wszystkie komunikaty",
+ "translate-taskui-untranslated": "Pokaż nieprzetłumaczone komunikaty",
+ "translate-taskui-optional": "Pokaż opcjonalne wiadomości",
+ "translate-taskui-acceptqueue": "Tylko te komunikaty, które mogę oznaczyć jako przejrzane",
+ "translate-taskui-reviewall": "Sprawdź wszystkie tłumaczenia",
+ "translate-taskui-export-to-file": "Eksportuj w formacie macierzystym",
+ "translate-taskui-export-as-po": "Eksportuj do tłumaczenia off-line",
+ "translate-taction-translate": "Przetłumacz",
+ "translate-taction-proofread": "Przejrzano",
+ "translate-taction-lstats": "Statystyka języka",
+ "translate-taction-mstats": "Statystyki grupy komunikatów",
+ "translate-taction-export": "Eksport",
+ "translate-taction-disabled": "Ta akcja jest zablokowana w tej wiki.",
+ "translate-page-no-such-language": "Podano nieprawidłowy język.",
+ "translate-page-no-such-group": "Podano nieprawidłową grupę.",
+ "translate-page-disabled": "Tłumaczenia na ten język, w tej grupie, zostały wstrzymane z następującego powodu:\n\n<em>$1</em>",
+ "translate-language-disabled": "Tłumaczenie na ten język jest zablokowane.",
+ "translate-page-settings-legend": "Ustawienia",
+ "translate-page-group": "Grupa",
+ "translate-page-language": "Język",
+ "translate-page-limit": "Ograniczenie",
+ "translate-page-limit-option": "$1 {{PLURAL:$1|komunikat|komunikaty|komunikatów}} na stronę",
+ "translate-submit": "Wyświetl",
+ "translate-page-navigation-legend": "Nawigacja",
+ "translate-page-showing": "Wyświetlone komunikaty od $1 do $2 z $3.",
+ "translate-page-showing-all": "Wyświetlono $1 {{PLURAL:$1|komunikat|komunikaty|komunikatów}}.",
+ "translate-page-showing-none": "Brak komunikatów do wyświetlenia.",
+ "translate-next": "Następna strona",
+ "translate-prev": "Poprzednia strona",
+ "translate-page-description-legend": "Informacje na temat grupy",
+ "translate-page-description-hasoptional": "Ta grupa zawiera również opcjonalne komunikaty.\nPowinny one być tłumaczone tylko wtedy, gdy język docelowy wymaga pisania bez odstępów między wyrazami lub transliteracji nazw własnych. $1",
+ "translate-page-description-hasoptional-open": "Pokaż komunikaty opcjonalne.",
+ "translate-page-edit": "edytuj",
+ "translate-ext-url": "<hr />Strona internetowa: $1",
+ "translate-optional": "(dodatkowe)",
+ "translate-ignored": "(zignorowane)",
+ "translate-edit-title": "Edycja „$1“",
+ "translate-edit-definition": "Tekst źródłowy komunikatu",
+ "translate-edit-translation": "Tłumaczenie",
+ "translate-edit-contribute": "prześlij",
+ "translate-edit-no-information": "<em>Ten komunikat nie posiada dokumentacji.\nJeśli wiesz gdzie lub jak ten komunikat jest używany, możesz pomóc innym tłumaczom przez dodanie dokumentacji do tego komunikatu.</em>",
+ "translate-edit-information": "Objaśnienie komunikatu ($1)",
+ "translate-edit-in-other-languages": "Komunikat w innych językach",
+ "translate-edit-committed": "Aktualne tłumaczenie oprogramowania",
+ "translate-edit-warnings": "Ostrzeżenia o niedokończonych tłumaczeniach",
+ "translate-edit-tmsugs": "Sugestie na podstawie poprzednich tłumaczeń",
+ "translate-edit-tmmatch-source": "Tekst źródłowy tłumaczenia: $1",
+ "translate-edit-tmmatch": "pasuje $1%",
+ "translate-use-suggestion": "Zastąp obecne tłumaczenie tą propozycją.",
+ "translate-edit-nopermission": "Nie masz uprawnień tłumacza do tłumaczenia komunikatów.",
+ "translate-edit-askpermission": "Uzyskaj uprawnienie",
+ "translate-magic-pagename": "Rozszerzone tłumaczenie MediaWiki",
+ "translate-magic-help": "Istnieje możliwość tłumaczenia aliasów stron specjalnych, magicznych słów i nazw poszczególnych przestrzeni nazw.\n\nAliasy stron specjalnych i magiczne słowa mogą mieć wiele tłumaczeń.\nTłumaczenia rozdziela się przecinkiem (,).\nPrzestrzenie nazw mogą mieć tylko jedno tłumaczenie.\n\nTłumaczenie nazw przestrzeni nazw <code>Dyskusja $1</code> zawierających strony dyskusji może być bardziej złożone.\n<code>$1</code> zamieniane jest na nazwę serwisu – na przykład <code>{{ns:project_talk}}</code>.\nJeśli w danym języku niemożliwe jest sformułowanie prawidłowego wpisu bez zmiany nazwy serwisu, należy nas zawiadomić przez [[Support]].\n\nZapisanie zmian jest możliwe tylko przez członków grupy tłumaczy.\nZmiany nie są zapisywane, dopóki użytkownik nie naciśnie umieszczonego poniżej przycisku „Zapisz”.",
+ "translate-magic-module": "Moduł:",
+ "translate-magic-submit": "Wyświetl",
+ "translate-magic-cm-export": "Eksportuj",
+ "translate-magic-nothing-to-export": "Nie ma nic do wyeksportowania.",
+ "translate-magic-cm-to-be": "Przyszły",
+ "translate-magic-cm-current": "Aktualny",
+ "translate-magic-cm-original": "Początkowy",
+ "translate-magic-cm-comment": "Opis zmian:",
+ "translate-magic-cm-save": "Zapisz",
+ "translate-magic-cm-updatedusing": "Uaktualniane za pomocą strony [[Special:AdvancedTranslate|{{int:Translate-magic-pagename}}]]",
+ "translate-magic-cm-savefailed": "Zapis nieudany",
+ "translate-magic-special": "Aliasy stron specjalnych",
+ "translate-magic-words": "Magiczne słowa",
+ "translate-magic-namespace": "Nazwy przestrzeni nazw",
+ "translate-magic-notsaved": "Twoja edycja nie została zapisana!",
+ "translate-magic-errors": "Proszę naprawić {{PLURAL:$1|w tłumaczeniach błąd|następujące błędy w tłumaczeniach:}}",
+ "translate-magic-saved": "Zmiany zostały zapisane.",
+ "translate-checks-parameters": "{{PLURAL:$2|Następujący parametr nie jest wykorzystywany|Następujące parametry nie są wykorzystywane}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-parameters-unknown": "{{PLURAL:$2|Następujący parametr nie jest zdefiniowany|Następujące parametry nie są zdefiniowane}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-balance": "W wyrażeniu napotkano {{PLURAL:$2|niedomknięty nawias|nieparzystą liczbę nawiasów}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links": "{{PLURAL:$2|Następujący link jest problematyczny|Następujące $2 linki są problematyczne|Następujących $2 linków jest problematycznych}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links-missing": "Brakuje {{PLURAL:$2|linku|następujących linków:}}\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-xhtml": "Zastąp {{PLURAL:$2|następujący znacznik prawidłowym|następujące znaczniki prawidłowymi}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-plural": "Tekst źródłowy wykorzystuje funkcję <nowiki>{{PLURAL:}}</nowiki>, lecz w tłumaczeniu nie została ona użyta.",
+ "translate-checks-plural-forms": "<nowiki>{{PLURAL:}}</nowiki> posiada {{PLURAL:$1|jedną formę|$1 formy|$1 form}} ale {{PLURAL:$2|tylko jedna forma jest obsługiwana|$2 formy są obsługiwane|$2 form jest obsługiwanych}} (z wyłączeniem form 0= i 1= ).",
+ "translate-checks-plural-dupe": "<nowiki>{{PLURAL:}}</nowiki> posiada w końcu formy wielokrotne. <nowiki>{{PLURAL:$1|ojca|ojców|ojców}}</nowiki> powinien być pisany jako <nowiki>{{PLURAL:$1|ojca|ojców}}</nowiki>.",
+ "translate-checks-pagename": "Przestrzeń nazw różni się od tekstu źródłowego",
+ "translate-checks-format": "To tłumaczenie jest niezgodne z tekstem źródłowym lub ma nieprawidłową składnię: $1",
+ "translate-checks-escape": "Następujące sekwencje mogą być niezamierzone: <strong>$1</strong>",
+ "translate-checks-parametersnotequal": "Liczba parametrów to {{PLURAL:$1|$1}}; {{PLURAL:$2|powinien być $2|powinno być $2}}.",
+ "translate-checks-malformed": "<nowiki>$1</nowiki> jest niepoprawne.",
+ "translate-checks-fudforum-syntax": "Użyj w tym projekcie <nowiki>$1</nowiki> zamiast <nowiki>$2</nowiki>.",
+ "translate-pref-nonewsletter": "Nie wysyłaj do mnie biuletynów pocztą elektroniczną",
+ "translate-pref-editassistlang": "Języki pomocnicze:",
+ "prefs-translate": "Opcje tłumaczenia",
+ "translate-pref-editassistlang-help": "Lista kodów językowych rozdzielonych przecinkami.\nKomunikat w tych językach będzie widoczny podczas wykonywania tłumaczenia.\nDomyślna lista języków zależy od Twojego języka.",
+ "translate-pref-editassistlang-bad": "Na liście jest błędny kod języka –\n<nowiki>$1</nowiki>.",
+ "right-translate": "Edycja z użyciem interfejsu tłumaczeń",
+ "right-translate-manage": "Zarządzanie grupami komunikatów",
+ "action-translate-manage": "zarządzania grupami komunikatów",
+ "right-translate-import": "Importowanie tłumaczeń wykonanych offline",
+ "action-translate-import": "importowanie tłumaczeń wykonanych offline",
+ "right-translate-messagereview": "Przeglądanie tłumaczeń",
+ "right-translate-groupreview": "Zmiana status przepływu pracy dla grup komunikatów",
+ "translate-rc-translation-filter": "Filtruj tłumaczenia",
+ "translate-rc-translation-filter-no": "nie filtruj",
+ "translate-rc-translation-filter-only": "pokaż tylko tłumaczenia",
+ "translate-rc-translation-filter-filter": "pokaż wszystkie oprócz tłumaczeń",
+ "translate-rc-translation-filter-site": "zmiany w komunikatach wyłącznie tej witryny",
+ "translationstats": "Statystyki tłumaczenia",
+ "translate-stats-edits": "Edycji dziennie",
+ "translate-stats-users": "Tłumacze",
+ "translate-stats-registrations": "Rejestracje",
+ "translate-stats-reviews": "Sprawdzenia",
+ "translate-stats-reviewers": "Sprawdzający",
+ "translate-statsf-intro": "Za pomocą tego formularza możesz wygenerować proste statystyki. Wszystkie wartości posiadają dolne i górne limity.",
+ "translate-statsf-options": "Opcje wykresu",
+ "translate-statsf-width": "Szerokość w pikselach",
+ "translate-statsf-height": "Wysokość w pikselach",
+ "translate-statsf-days": "Data początkowa",
+ "translate-statsf-start": "Data początkowa:",
+ "translate-statsf-scale": "Precyzja",
+ "translate-statsf-scale-months": "miesiące",
+ "translate-statsf-scale-weeks": "tygodnie",
+ "translate-statsf-scale-days": "dni",
+ "translate-statsf-scale-hours": "godziny",
+ "translate-statsf-count": "Jednostka",
+ "translate-statsf-count-edits": "liczba edycji",
+ "translate-statsf-count-users": "aktywni tłumacze",
+ "translate-statsf-count-registrations": "nowi użytkownicy",
+ "translate-statsf-count-reviews": "Sprawdzenia tłumaczeń",
+ "translate-statsf-count-reviewers": "Sprawdzający",
+ "translate-statsf-language": "Kody języków rozdzielone przecinkami:",
+ "translate-statsf-group": "Kody grup rozdzielone przecinkami:",
+ "translate-statsf-submit": "Podgląd",
+ "translate-tag-category": "Strony do przetłumaczenia",
+ "translate-tag-page-desc": "Tłumaczenie wiki strony [[$2|$1]] z $3 ($4).",
+ "translate-sidebar-alltrans": "W innych językach",
+ "translations": "Wszystkie tłumaczenia",
+ "translations-summary": "Wprowadź poniżej nazwę komunikatu, aby zobaczyć wszystkie dostępne tłumaczenia.",
+ "translate-translations-no-message": "Komunikatu „$1” nie można przetłumaczyć",
+ "translate-translations-none": "Nie istnieją tłumaczenia dla „$1”",
+ "translate-translations-count": "Znaleziono {{PLURAL:$1|jedno tłumaczenie|$1 tłumaczenia|$1 tłumaczeń}}",
+ "translate-translations-fieldset-title": "Komunikat",
+ "translate-translations-messagename": "Nazwa:",
+ "translate-translations-project": "Projekt:",
+ "translate-translations-including-no-param": "Podaj prawidłową nazwę strony w parametrze podstrony",
+ "translate-translations-history-short": "h",
+ "languagestats": "Statystyka językowa",
+ "languagestats-summary": "Strona pokazuje statystykę tłumaczenia dla wszystkich grup komunikatów we wskazanym języku.",
+ "messagegroupstats-summary": "Ta strona pokazuje statystyki grupy komunikatów.",
+ "languagestats-stats-for": "Statystyki tłumaczenia na język $1 ($2).",
+ "languagestats-recenttranslations": "ostatnie tłumaczenia",
+ "translate-langstats-incomplete": "Niektóre statystyki na tej stronie są niepełne. Odśwież, aby uzyskać więcej statystyk.",
+ "translate-langstats-expand": "rozwiń",
+ "translate-langstats-collapse": "zwiń",
+ "translate-langstats-expandall": "rozwiń wszystkie",
+ "translate-langstats-collapseall": "zwiń wszystkie",
+ "translate-language-code": "Kod języka",
+ "translate-language-code-field-name": "Kod języka",
+ "translate-suppress-complete": "Pomiń grupy komunikatów całkowicie przetłumaczone",
+ "translate-ls-noempty": "Pomiń grupy komunikatów całkowicie nieprzetłumaczone",
+ "translate-language": "Język",
+ "translate-total": "Komunikaty",
+ "translate-untranslated": "Nieprzetłumaczone",
+ "translate-percentage-complete": "Przetłumaczone",
+ "translate-percentage-fuzzy": "Zdezaktualizowane",
+ "translate-languagestats-overall": "Komunikaty ze wszystkich grup",
+ "translate-ls-submit": "Pokaż statystyki",
+ "translate-ls-column-group": "Grupa komunikatów",
+ "translate-mgs-pagename": "Statystyki grupy komunikatów",
+ "translate-mgs-fieldset": "Preferencje wyświetlania",
+ "translate-mgs-group": "Grupa komunikatów",
+ "translate-mgs-nocomplete": "Nie wyświetlaj języków dla których tłumaczenia zostały ukończone",
+ "translate-mgs-noempty": "Nie wyświetlaj języków, dla których nie rozpoczęto tłumaczenia",
+ "translate-mgs-submit": "Pokaż statystyki",
+ "translate-mgs-column-language": "Język",
+ "translate-mgs-totals": "Wszystkie języki razem",
+ "translate-mgs-invalid-group": "Nie istnieje grupa „$1“.",
+ "translate-mgs-nothing": "Brak czegokolwiek do wyświetlenia dla żądanych statystyk.",
+ "supportedlanguages": "Obsługiwane języki",
+ "supportedlanguages-summary": "Na tej stronie znajduje się lista wszystkich języków, obsługiwanych przez {{GRAMMAR:B.lp|{{SITENAME}}}}, razem z pseudonimami tłumaczy, pracującymi w danym języku.\nWiększa czcionka świadczy o większej liczbie edycji wykonanych przez tłumacza.\nKolorem podkreślenia wyróżniono jak dawno tłumacz był aktywny.",
+ "supportedlanguages-colorlegend": "Znaczenie koloru – ostatnie tłumaczenie $1 dni temu.",
+ "supportedlanguages-translators": "{{PLURAL:$2|{{GENDER:$3|Tłumacz|Tłumaczka}}|Tłumacze}}: $1",
+ "supportedlanguages-recenttranslations": "ostatnie tłumaczenia",
+ "supportedlanguages-count": "Razem $1 {{PLURAL:$1|język|języki|języków}}.",
+ "supportedlanguages-activity": "$1: $2 {{PLURAL:$2|edycja|edycje|edycji}} – ostatnia zmiana $3 {{PLURAL:$3|dzień|dni}} temu",
+ "translate-save": "Zapisz ($1)",
+ "translate-jssti-add": "Dodaj do listy",
+ "managemessagegroups": "Zarządzanie grupami komunikatów",
+ "translate-smg-notallowed": "Nie masz prawa wykonania tej akcji.",
+ "translate-smg-nochanges": "Nie ma żadnych zmian do przetworzenia.",
+ "translate-smg-submit": "Prześlij zmiany do przetwarzania",
+ "translate-smg-submitted": "Zostały zaktualizowane teksty źródłowe komunikatów. Zmiany są przetwarzane w tle.",
+ "translate-smg-more": "Będzie więcej zmian do wykonania po przesłaniu tych zmian.",
+ "translate-smg-left": "Treść komunikatu w wiki",
+ "translate-smg-right": "Przychodzące modyfikacje",
+ "translate-manage-import-diff": "Komunikat $1 | Operacje: $2",
+ "translate-manage-import-new": "Nowy komunikat $1",
+ "translate-manage-import-deleted": "Usunięto komunikat $1",
+ "translate-manage-action-import": "Importuj",
+ "translate-manage-action-conflict": "Importuj i oznacz jako wymagające sprawdzenia",
+ "translate-manage-action-ignore": "Ignoruj",
+ "translate-manage-action-fuzzy": "Importuj i oznacz tłumaczenia jako wymagające sprawdzenia",
+ "translate-manage-nochanges": "Brak zmian w definicjach komunikatów dla tej grupy",
+ "translate-manage-nochanges-other": "Nie było zmian dla tego języka.\nUżyj poniższego linku, aby powrócić do widoku szczegółów grupy.",
+ "translate-manage-inconsistent": "Wykryto nieścisłości w formularzu.\nProszę sprawdzić zmiany i spróbować ponownie.\nSzczegóły – $1.",
+ "translate-manage-toolong": "Został przekroczony maksymalny czas przetwarzania wynoszący $1 {{PLURAL:$1|sekundę|sekundy|sekund}}.\nAby kontynuować przetwarzanie proszę ponownie przesłać formularz.",
+ "translate-manage-import-summary": "Import nowej wersji z zewnętrznego źródła",
+ "translate-manage-conflict-summary": "Importowanie nowej wersji z zewnętrznego źródła.\nProszę sprawdzić.",
+ "translate-manage-fuzzy-summary": "Tekst źródłowy komunikatu został zmieniony",
+ "translate-manage-submit": "Wykonaj",
+ "translate-manage-intro-other": "Poniżej znajduje się lista zmian komunikatów w języku $1.\nProszę przejrzeć zmiany i wybrać dla każdego komunikatu operację, którą chcesz dla niego wykonać.\nJeśli polecisz zignorować zmiany, zostaną one nadpisane przy następnym eksporcie.",
+ "translate-manage-import-ok": "Zaimportowano: $1",
+ "translate-manage-import-done": "Import zakończony!",
+ "importtranslations": "Importowanie tłumaczeń",
+ "translate-import-from-local": "Załadowanie lokalnego pliku",
+ "translate-import-load": "Pobierz plik",
+ "translate-import-err-dl-failed": "Nie udało się przesłać pliku $1",
+ "translate-import-err-ul-failed": "Nie udało się przesłać pliku",
+ "translate-import-err-invalid-title": "Podana nazwa pliku <nowiki>$1</nowiki> jest nieprawidłowa.",
+ "translate-import-err-no-such-file": "Plik <nowiki>$1</nowiki> nie istnieje lub nie został jeszcze przesłany.",
+ "translate-import-err-stale-group": "Grupa komunikatów, do której należy ten plik, nie istnieje.",
+ "translate-import-err-no-headers": "Plik nie jest prawidłowo sformatowanym plikiem Gettext właściwym dla rozszerzenia Translate – nie udało się odczytać grupy i języka z nagłówków pliku.",
+ "translate-import-err-warnings": "Plik nie ma prawidłowego formatu.\nSprawdź, czy edytor którym się posługujesz nie usuwa pól msgctxt.\nSzczegóły – $1",
+ "translate-js-summary": "Podsumowanie:",
+ "translate-js-save": "Zapisz",
+ "translate-js-next": "Zapisz i otwórz następny",
+ "translate-js-nonext": "To był ostatni komunikat na tej stronie.",
+ "translate-js-skip": "Przejdź do następnego",
+ "translate-js-save-failed": "Zapisywanie nie powiodło się. Powiadom o wystąpieniu błędu.",
+ "translate-js-history": "Historia tłumaczeń",
+ "translate-js-support": "Zadaj pytanie",
+ "translate-js-support-title": "Poproś o pomoc, jeśli brak jest wystarczających informacji, aby przetłumaczyć ten komunikat właściwie.",
+ "translate-js-support-unsaved-warning": "Masz niezapisane tłumaczenia.",
+ "translate-gs-pos": "Poz.",
+ "translate-gs-code": "Kod",
+ "translate-gs-continent": "Kontynent",
+ "translate-gs-speakers": "Władających językiem",
+ "translate-gs-score": "Punkty",
+ "translate-gs-multiple": "wiele",
+ "translate-gs-count": "Liczba",
+ "translate-gs-total": "Razem",
+ "translate-gs-avgscore": "Średni wynik",
+ "translate-documentation-language": "opis komunikatu",
+ "translate-searchprofile": "Tłumaczenia",
+ "translate-searchprofile-tooltip": "Szukaj we wszystkich tłumaczeniach",
+ "translate-search-languagefilter": "Filtruj według języka",
+ "translate-search-nofilter": "Bez filtrowania",
+ "translate-messagereview-submit": "Oznacz jako przejrzane",
+ "translate-messagereview-progress": "Oznaczanie jako przejrzane...",
+ "translate-messagereview-failure": "Oznaczanie jako przejrzane nie powiodło się: $1",
+ "translate-messagereview-done": "Przejrzano",
+ "translate-messagereview-reviews": "Przejrzane przez {{PLURAL:$1|jednego użytkownika|$1 użytkowników}}",
+ "translate-messagereview-reviewswithyou": "Przejrzane przez {{PLURAL:$1|Ciebie|$1 użytkowników, między innymi przez Ciebie}}",
+ "api-error-invalidrevision": "nie można odnaleźć tłumaczenia",
+ "api-error-unknownmessage": "nie można odnaleźć komunikatu",
+ "api-error-fuzzymessage": "tłumaczenie oznaczone zostało jako niepewne",
+ "api-error-owntranslation": "Nie możesz oznaczyć własnych tłumaczeń jako przejrzane",
+ "translate-messagereview-no-fuzzy": "Tłumaczenia rozmyte nie mogą być oznaczone jako przejrzane.",
+ "translate-messagereview-no-own": "Nie możesz oznaczyć własnych tłumaczeń jako przejrzane.",
+ "translate-messagereview-doit": "Oznacz to tłumaczenie jako przejrzane.",
+ "log-name-translationreview": "Rejestr zatwierdzania tłumaczeń",
+ "log-description-translationreview": "Zapisuje wszystkie zatwierdzenia tłumaczeń i grupy komunikatów.",
+ "logentry-translationreview-message": "$1 {{GENDER:$2|przejrzał|przejrzała}} tłumaczenie $3",
+ "logentry-translationreview-group": "$1 {{GENDER:$2|zmienił|zmieniła}} status tłumaczeń strony $3 na język $4 z $6 na $7",
+ "group-translate-sandboxed": "Niezatwierdzeni tłumacze",
+ "group-translate-sandboxed-member": "{{GENDER:$1|niezatwierdzony tłumacz}}",
+ "right-translate-sandboxmanage": "Zarządzanie początkującymi użytkownikami",
+ "action-translate-sandboxmanage": "zarządzanie początkującymi użytkownikami",
+ "right-translate-sandboxaction": "Wykonywanie działań dozwolonych dla początkujących użytkowników",
+ "action-translate-sandboxaction": "wykonywanie czynności dozwolonych użytkownikom w piaskownicy",
+ "translate-workflow-state-": "(wyłączone)",
+ "translate-workflowstatus": "Status: $1",
+ "translate-workflow-set-do": "Wyślij",
+ "translate-workflow-set-doing": "Wysyłanie...",
+ "translate-workflow-set-done": "Wysłano!",
+ "translate-workflow-set-error-alreadyset": "Żądany stan jest identyczny z bieżącym.",
+ "translate-workflow-autocreated-summary": "Automatyczne tworzenie strony stanu tłumaczeń $1",
+ "translate-stats-workflow": "Status",
+ "translate-workflowgroup-label": "Stany tłumaczeń",
+ "translate-workflowgroup-desc": "Ta grupa komunikatów zawiera stany pracy nad tłumaczeniem.\nStany są zdefiniowane w zmiennej konfiguracji $wgTranslateWorkflowStates.",
+ "translate-dynagroup-recent-label": "Ostatnie tłumaczenia",
+ "translate-dynagroup-recent-desc": "Ta grupa komunikatów zawiera wszystkie ostatnie tłumaczenia na ten język.\nJest najbardziej użyteczna do zadań przeglądania.",
+ "translate-dynagroup-additions-label": "Ostatnio dodane",
+ "translate-dynagroup-additions-desc": "Ta grupa komunikatów wyświetla nowe i zmienione komunikaty.",
+ "translate-dynagroup-by": "Tłumaczenia dokonywane przez {{GENDER:$1|$1}}",
+ "translate-dynagroup-byc": "Tłumaczenia dokonywane przez {{GENDER:$1|$1}} ($2)",
+ "translate-dynagroup-last": "Ostatnia zmiana wykonana przez {{GENDER:$1|$1}}",
+ "translate-dynagroup-lastc": "Ostatnia zmiana wykonana przez {{GENDER:$1|$1}} ($2)",
+ "translate-gethelp": "Pomoc",
+ "translate-msggroupselector-projects": "Grupa komunikatów",
+ "translate-msggroupselector-search-placeholder": "Szukaj grup",
+ "translate-msggroupselector-search-all": "Wszystko",
+ "translate-msggroupselector-search-recent": "Ostatnie",
+ "translate-msggroupselector-view-subprojects": "$1 {{PLURAL:$1|podgrupa|podgrupy|podgrup}}",
+ "tux-languageselector": "Przetłumacz na",
+ "tux-tab-all": "Wszystko",
+ "tux-tab-untranslated": "Nieprzetłumaczone",
+ "tux-tab-outdated": "Nieaktualne",
+ "tux-tab-translated": "Przetłumaczone",
+ "tux-tab-unproofread": "Nieprzejrzane",
+ "tux-edit": "Edytuj",
+ "tux-status-optional": "Opcjonalny",
+ "tux-status-fuzzy": "Nieaktualne",
+ "tux-status-proofread": "Przejrzane",
+ "tux-status-translated": "Przetłumaczony",
+ "tux-status-saving": "Zapisywanie...",
+ "tux-status-unsaved": "Niezapisane",
+ "tux-editor-placeholder": "Twoje tłumaczenie",
+ "tux-editor-paste-original-button-label": "Wklej tekst źródłowy",
+ "tux-editor-discard-changes-button-label": "Porzuć zmiany",
+ "tux-editor-save-button-label": "Zapisz tłumaczenie",
+ "tux-editor-skip-button-label": "Przejdź do następnego",
+ "tux-editor-cancel-button-label": "Anuluj",
+ "tux-editor-confirm-button-label": "Potwierdź tłumaczenie",
+ "tux-editor-shortcut-info": "Naciśnij \"$1\", aby zapisać, lub \"$2\", aby przejść do następnego komunikatu",
+ "tux-editor-edit-desc": "Edytuj dokumentację",
+ "tux-editor-add-desc": "Dodaj dokumentację",
+ "tux-editor-suggestions-title": "Sugestie",
+ "tux-editor-in-other-languages": "W innych językach",
+ "tux-editor-need-more-help": "Potrzebujesz pomocy?",
+ "tux-editor-ask-help": "Zapytaj o więcej informacji",
+ "tux-editor-tm-match": "pasuje $1%",
+ "tux-warnings-more": "{{PLURAL:$1|$1 więcej}}",
+ "tux-warnings-hide": "ukryj",
+ "tux-editor-save-failed": "Zapisywanie tłumaczenia nie powiodło się: $1",
+ "tux-editor-n-uses": "użyte $1 {{PLURAL:$1|raz|razy}}",
+ "tux-editor-message-desc-more": "Zobacz więcej",
+ "tux-editor-message-desc-less": "Pokaż mniej",
+ "tux-editor-clear-translated": "Ukryj przetłumaczone",
+ "tux-editor-proofreading-mode": "Przegląd",
+ "tux-editor-translate-mode": "Lista",
+ "tux-editor-proofreading-hide-own-translations": "Ukryj swoje tłumaczenia",
+ "tux-editor-proofreading-show-own-translations": "Pokaż swoje tłumaczenia",
+ "tux-proofread-action-tooltip": "Oznacz jako przejrzane",
+ "tux-proofread-edit-label": "Edytuj",
+ "tux-editor-page-mode": "Strona",
+ "tux-editor-outdated-warning": "To tłumaczenie może wymagać aktualizacji.",
+ "tux-editor-outdated-warning-diff-link": "Pokaż różnice",
+ "tux-editor-doc-editor-placeholder": "Dokumentacja komunikatu",
+ "tux-editor-doc-editor-save": "Zapisz dokumentację",
+ "tux-editor-doc-editor-cancel": "Anuluj",
+ "tux-messagetable-more-messages": "$1 {{PLURAL:$1|kolejny komunikat|kolejne komunikaty|kolejnych komunikatów}}",
+ "tux-messagetable-loading-messages": "Ładowanie {{PLURAL:$1|komunikatu|komunikatów}}...",
+ "tux-message-filter-placeholder": "Lista filtrów",
+ "tux-message-filter-result": "Znaleziono $1 {{PLURAL:$1|wynik|wyników}}, dla \"$2\"",
+ "tux-message-filter-advanced-button": "Zaawansowane wyszukiwanie",
+ "tux-message-filter-optional-messages-label": "Komunikaty opcjonalne",
+ "tux-proofread-translated-by-self": "Przetłumaczone przez ciebie",
+ "tux-empty-list-all": "Ta grupa komunikatów jest pusta",
+ "tux-empty-list-all-guide": "Wybierz inną grupę komunikatów do przetłumaczenia",
+ "tux-translate-page-no-such-group": "<strong>Ta grupa nie istnieje.</strong> Wybierz inną grupę komunikatów.",
+ "tux-empty-list-translated": "Brak przetłumaczonych wiadomości",
+ "tux-empty-list-translated-guide": "Możesz pomóc tłumaczyć",
+ "tux-empty-list-translated-action": "Przetłumacz",
+ "tux-empty-no-messages-to-display": "Nie ma komunikatów do wyświetlenia.",
+ "tux-empty-there-are-optional": "Są dodatkowe komunikaty, nie pokazane na liście",
+ "tux-empty-show-optional-messages": "Pokaż opcjonalne komunikaty",
+ "tux-empty-no-outdated-messages": "Nie ma nieaktualnych komunikatów",
+ "tux-empty-nothing-to-proofread": "Brak zmian do przejrzenia",
+ "tux-empty-you-can-help-providing": "Możesz pomóc nowymi tłumaczeniami",
+ "tux-empty-nothing-new-to-proofread": "Nic nowego do przejrzania",
+ "tux-empty-you-can-review-already-proofread": "Możesz przejrzeć tłumaczenia przejrzane już przez innych.",
+ "tux-empty-list-other": "Nie ma nic do przetłumaczenia",
+ "tux-empty-list-other-guide": "Możesz pomóc w przeglądaniu istniejących tłumaczeń",
+ "tux-empty-list-other-action": "Przegląd tłumaczeń",
+ "tux-empty-list-other-link": "Pokaż wszystkie komunikaty",
+ "tux-editor-close-tooltip": "Zamknij",
+ "tux-editor-expand-tooltip": "Rozwiń",
+ "tux-editor-collapse-tooltip": "Zwiń",
+ "tux-editor-message-tools-history": "Historia",
+ "tux-editor-message-tools-delete": "Usuń",
+ "tux-editor-message-tools-translations": "Wszystkie tłumaczenia",
+ "tux-editor-loading": "Ładowanie...",
+ "translate-search-more-languages-info": "$1 {{PLURAL:$1|język|języków}} więcej",
+ "translate-statsbar-tooltip": "$1% przetłumaczono, $2% przejrzano",
+ "translate-statsbar-tooltip-with-fuzzy": "$1% przetłumaczonych, $2% przejrzanych, $3% nieaktualnych",
+ "translate-search-more-groups-info": "$1 więcej {{PLURAL:$1|grupa|grup}}",
+ "translate-ulsdep-title": "Błąd konfiguracji",
+ "translate-ulsdep-body": "Rozszerzenie tłumaczeń jest zależne od [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:UniversalLanguageSelector rozszerzenia Uniwersalny Selektor Języka].",
+ "tux-session-expired": "Nie jesteś już zalogowany. Zaloguj się w osobnej karcie. Alternatywnie, możesz wykonać kopię niezapisanych tłumaczeń, zalogować się i powrócić do tej strony."
+}
diff --git a/MLEB/Translate/i18n/core/pms.json b/MLEB/Translate/i18n/core/pms.json
new file mode 100644
index 00000000..4b59b2ff
--- /dev/null
+++ b/MLEB/Translate/i18n/core/pms.json
@@ -0,0 +1,326 @@
+{
+ "@metadata": {
+ "authors": [
+ "Borichèt",
+ "Bèrto 'd Sèra",
+ "Dragonòt"
+ ]
+ },
+ "translate": "Viragi",
+ "translate-desc": "[[Special:Translate|Pàgina special]] për le tradussion ëd MediaWiki e ancor ëd pì",
+ "translate-taskui-view": "Smon-e tùit ij mëssagi",
+ "translate-taskui-untranslated": "Smon-e ij mëssagi nen voltà",
+ "translate-taskui-optional": "Smon-e ij mëssagi opsionaj.",
+ "translate-taskui-acceptqueue": "Mach ij mëssagi che i peuss aceté",
+ "translate-taskui-reviewall": "Revision-a tute le tradussion",
+ "translate-taskui-export-to-file": "Esporté an formà nativ",
+ "translate-taskui-export-as-po": "Esporté da le tradussion fòra linia",
+ "translate-taction-translate": "Volté",
+ "translate-taction-proofread": "Verìfica",
+ "translate-taction-lstats": "Statìstiche ëd lenga",
+ "translate-taction-mstats": "Statìstiche dle partìe ëd mëssagi",
+ "translate-taction-export": "Esporté",
+ "translate-taction-disabled": "Costa assion a l'é disabilità ansima a costa wiki.",
+ "translate-page-no-such-language": "La lenga spessificà a l'é nen vàlida.",
+ "translate-page-no-such-group": "La partìa spessificà a l'é nen bon-a.",
+ "translate-page-disabled": "Le tradussion an costa lenga an costa partìa a son ëstàite disativà.\nRason:\n\n<em>$1</em>",
+ "translate-language-disabled": "La tradussion an sta lenga a l'é disabilità.",
+ "translate-page-settings-legend": "Configurassion",
+ "translate-page-group": "Partìa",
+ "translate-page-language": "Lenga",
+ "translate-page-limit": "Lìmit",
+ "translate-page-limit-option": "$1 {{PLURAL:$1|mëssagi|mëssagi}} për pàgina",
+ "translate-submit": "Smon-e",
+ "translate-page-navigation-legend": "Navigassion",
+ "translate-page-showing": "Visualisassion dij mëssagi da $1 a $2 ansima a 'n total ëd $3.",
+ "translate-page-showing-all": "Visualisassion ëd $1 {{PLURAL:$1|mëssagi|mëssagi}}.",
+ "translate-page-showing-none": "Gnun mëssagi da mostré.",
+ "translate-next": "Pàgina anans",
+ "translate-prev": "Pàgina andré",
+ "translate-page-description-legend": "Anformassion an sla partìa",
+ "translate-page-description-hasoptional": "Sta partìa ëd mëssagi a conten ij mëssagi opsionaj.\nIj Mëssagi opsionaj a dovrìo mach esse voltà quand che soa lenga a l'ha dj'esigense speciaj com ëd nen dovré dë spassi o an trasliteré dij nòm pròpi. $1",
+ "translate-page-description-hasoptional-open": "Smon-e ij mëssagi opsionaj.",
+ "translate-page-edit": "modifiché",
+ "translate-ext-url": "<hr />Sit an sl'aragnà: $1",
+ "translate-optional": "(opsional)",
+ "translate-ignored": "(ignorà)",
+ "translate-edit-title": "Modìfica \"$1\"",
+ "translate-edit-definition": "Definission dël mëssagi",
+ "translate-edit-translation": "Tradussion",
+ "translate-edit-contribute": "colaboré",
+ "translate-edit-no-information": "''Ës mëssagi a l'ha gnun-a documentassion.\nS'a sa andoa o coma 's mëssagi a l'é dovrà, a peul giuté d'àutri tradutor an giontant dla documentassion a cost mëssagi.''",
+ "translate-edit-information": "Anformassion an sël mëssagi ($1)",
+ "translate-edit-in-other-languages": "Mëssagi an d'àutre lenghe",
+ "translate-edit-committed": "Tradussion corenta ant ël programa",
+ "translate-edit-warnings": "Avertensa an sle tradussion incomplete",
+ "translate-edit-tmsugs": "Sugeriment da le tradussion an memòria",
+ "translate-edit-tmmatch-source": "Test sorgiss dla tradussion: $1",
+ "translate-edit-tmmatch": "corëspondensa ëd $1%",
+ "translate-use-suggestion": "Rampiassé la tradussion corenta con cost sugeriment.",
+ "translate-edit-nopermission": "It l'has dabzògn dij përmess për volté ij mëssagi.",
+ "translate-edit-askpermission": "Ciamé ël përmess",
+ "translate-magic-pagename": "Viragi estèis ëd MediaWiki",
+ "translate-magic-help": "A peul volté j'àlias dle pàgine speciaj, le paròle màgiche e ij nòm ëd jë spassi nominaj.\n\nJ'àlias dle pàgine speciaj e le paròle màgiche a peulo avèj pì che na tradussion.\nLe tradussion a son separà da na vìrgola (,).\nIj nòm ëd jë spassi nominaj a peulo avèj mach na tradussion.\n\nVolté lë spassi nominal ëd discussion dël proget <code>$1 talk</code> a peul esse complicà.\n<code>$1</code> a l'é rampiassà col nòm dël sit dël proget (pr'esempi <code>{{ns:project_talk}}</code>).\nSe an soa lenga as peul nen rivé a n'espression bon-a sensa cambié ël nòm dël sit, për piasì, ch'as buta an contat con noi dzora a [[Support]].\n\nA venta ch'a sia ant la partìa dij tradutor për podèj salvé le modìfiche.\nLe modìfiche as salvo nen fin ch'a-i da nen un colp ëd rat ansima al boton sì-sota.",
+ "translate-magic-module": "Mòdol:",
+ "translate-magic-submit": "Smon-e",
+ "translate-magic-cm-export": "Esporté",
+ "translate-magic-nothing-to-export": "A-i é gnente da esporté.",
+ "translate-magic-cm-to-be": "da esse",
+ "translate-magic-cm-current": "Corent",
+ "translate-magic-cm-original": "Original",
+ "translate-magic-cm-comment": "Coment:",
+ "translate-magic-cm-save": "Salvé",
+ "translate-magic-cm-updatedusing": "Agiornà ën dovrand [[Special:AdvancedTranslate|{{int:Translate-magic-pagename}}]]",
+ "translate-magic-cm-savefailed": "Salvatagi falì",
+ "translate-magic-special": "Àlias dle pàgine speciaj",
+ "translate-magic-words": "Paròle màgiche",
+ "translate-magic-namespace": "Nòm djë spassi nominaj",
+ "translate-magic-notsaved": "Soa modìfica a l'é pa stàita salvà!",
+ "translate-magic-errors": "Për piasì, ch'a rangia {{PLURAL:$1|l'eror|j'eror}} si-dapress ant le tradussion:",
+ "translate-magic-saved": "Ij sò cambi a son ëstàit salvà con sucess.",
+ "translate-checks-parameters": "{{PLURAL:$2|Ël paràmetr sota a l'é|Ij paràmetr sota a son}} pa dovrà:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-parameters-unknown": "{{PLURAL:$2|Ël paràmetr sota a l'é|Ij paràmetr sota a son}} pa conossù:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-balance": "A-i é un nùmer dëscobi ëd {{PLURAL:$2|paréntesi|paréntesi}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links": "{{PLURAL:$2|Ël colegament sota a l'é|Ij $2 colegament sota a son}} problemàtich:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links-missing": "{{PLURAL:$2|L'anliura dì-dapress a a l'é|Le $2 anliure sì-dapress a son}} mancante:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-xhtml": "Për piasì rimpiassa {{PLURAL:$2|la tichëtta|le tichëtte}} sì-dapress con cole giuste:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-plural": "La definission a deuvra <nowiki>{{PLURAL:}}</nowiki> ma pa la tradussion.",
+ "translate-checks-plural-forms": "<nowiki>{{PLURAL:}}</nowiki> a l'é stàit dovrà ant {{PLURAL:$1|na forma|$1 forme}} ma {{PLURAL:$2|mach na forma a l'é|$2 forme a son}} mantnùe (an gavand le forme 0= e 1=).",
+ "translate-checks-plural-dupe": "<nowiki>{{PLURAL:}}</nowiki> a l'ha dle forme duplicà a la fin. <nowiki>{{PLURAL:$1|fèja|fèja}}</nowiki> a dovrìa esse scrivù com <nowiki>{{PLURAL:$1|fèje}}</nowiki>.",
+ "translate-checks-pagename": "Spassi nominal cangià da la definission",
+ "translate-checks-format": "Sta tradussion-sì a-i va nen dapress a la definission o a l'ha na sintassi pa bon-a: $1",
+ "translate-checks-escape": "Le scapade sì-dapress a peulo esse casuaj: <strong>$1</strong>",
+ "translate-checks-parametersnotequal": "Ël conteur dij paràmetr a l'é {{PLURAL:$1|$1}}; a dovrìa esse {{PLURAL:$2|$2}}.",
+ "translate-checks-malformed": "<nowiki>$1</nowiki> a va nen bin.",
+ "translate-checks-fudforum-syntax": "Dovré <nowiki>$1</nowiki> nopà ëd <nowiki>$2</nowiki> an cost proget-sì.",
+ "translate-pref-nonewsletter": "Mandeme nen ij mëssagi d'anformassion an pòsta eletrònica",
+ "translate-pref-editassistlang": "Lenghe dl'assistent:",
+ "prefs-translate": "Opsion ëd tradussion",
+ "translate-pref-editassistlang-help": "Lista dij còdes ëd le lenghe separà da na vìrgola.\nLa tradussion d'un mëssagi an ste lenghe-sì a l'é mostrà quand ch'a l'é an camin a fé la tradussion.\nLa lista dle lenghe dë stàndard a dipend da soa lenga.",
+ "translate-pref-editassistlang-bad": "Còdes ëd lenga pa bon ant la lista:\n<nowiki>$1</nowiki>.",
+ "right-translate": "Modifiché an dovrand l'antërfacia ëd tradussion",
+ "right-translate-manage": "Aministré le partìe ëd mëssagi",
+ "action-translate-manage": "gestì le partìe ëd mëssagi",
+ "right-translate-import": "Amporté le tradussion fòra 'd linia",
+ "action-translate-import": "amporté le tradussion fòra 'd linia",
+ "right-translate-messagereview": "Revision-a le tradussion",
+ "right-translate-groupreview": "Cangia lë stat dël fluss ëd travaj dle partìe ëd mëssagi",
+ "translate-rc-translation-filter": "Filtré le tradussion:",
+ "translate-rc-translation-filter-no": "Fé gnente",
+ "translate-rc-translation-filter-only": "Smon-e mach le tradussion",
+ "translate-rc-translation-filter-filter": "Eliminé le tradussion",
+ "translate-rc-translation-filter-site": "Mach le modìfiche ai mëssagi dël sit",
+ "translationstats": "Statìstiche ëd tradussion",
+ "translate-stats-edits": "Modìfiche",
+ "translate-stats-users": "Tradutor",
+ "translate-stats-registrations": "Registrassion",
+ "translate-stats-reviews": "Revision",
+ "translate-stats-reviewers": "Revisor",
+ "translate-statsf-intro": "A peul generé dle statìstiche sempie con cost formolari.\nTùit ij valor a l'han dij lìmit superior e anferior.",
+ "translate-statsf-options": "Opsion ëd graf",
+ "translate-statsf-width": "Larghëssa an pontin:",
+ "translate-statsf-height": "Autëssa an pontin:",
+ "translate-statsf-days": "Antërval ëd temp an di:",
+ "translate-statsf-start": "Dàita ëd prinsipi:",
+ "translate-statsf-scale": "Granularità:",
+ "translate-statsf-scale-months": "Mèis",
+ "translate-statsf-scale-weeks": "Sman-e",
+ "translate-statsf-scale-days": "Di",
+ "translate-statsf-scale-hours": "Ore",
+ "translate-statsf-count": "Mzura:",
+ "translate-statsf-count-edits": "Nùmer ëd modìfiche",
+ "translate-statsf-count-users": "Tradutor ativ",
+ "translate-statsf-count-registrations": "Utent neuv",
+ "translate-statsf-count-reviews": "Revision ëd tradussion",
+ "translate-statsf-count-reviewers": "Revisor",
+ "translate-statsf-language": "Lista dij còdes ëd le lenghe separà da 'd vìrgole:",
+ "translate-statsf-group": "Lista ëd còdes ëd partìe separà da 'd vìrgole:",
+ "translate-statsf-submit": "Preuva",
+ "translate-tag-category": "Pàgine voltàbij",
+ "translate-tag-page-desc": "Tradussion dla pàgina wiki [[$2|$1]].",
+ "translate-sidebar-alltrans": "Ant j'àutre lenghe",
+ "translations": "Tute le tradussion",
+ "translations-summary": "Buté un nòm ëd mëssagi sì-sota për vëdde tute le tradussion disponìbij.",
+ "translate-translations-no-message": "\"$1\" a l'é nen un mëssagi voltàbil",
+ "translate-translations-none": "A-i é pa ëd tradussion për \"$1\"",
+ "translate-translations-count": "Trovà {{PLURAL:$1|na tradussion|$1 tradussion}}.",
+ "translate-translations-fieldset-title": "Mëssagi",
+ "translate-translations-messagename": "Nòm:",
+ "translate-translations-project": "Proget:",
+ "translate-translations-including-no-param": "Për piasì, ch'a spessìfica na ciav ëd mëssagi bon-a ant ël paràmetr ëd la sot-pàgina",
+ "translate-translations-history-short": "h",
+ "languagestats": "Statìstiche dle lenghe",
+ "languagestats-summary": "Sta pàgina-sì a smon le statìstiche ëd tradussion për tute le partìe ëd mëssagi për na lenga.",
+ "languagestats-stats-for": "Statìstiche ëd tradussion për $1 ($2).",
+ "languagestats-recenttranslations": "tradussion recente",
+ "translate-langstats-incomplete": "Quaidun-e dle statìstiche su costa pàgina a son incomplete. Për piasì, ch'a torna a carié për oten-e pi dë statìstiche.",
+ "translate-langstats-expand": "deurbe",
+ "translate-langstats-collapse": "sëré",
+ "translate-langstats-expandall": "deurbe tut",
+ "translate-langstats-collapseall": "saré tut",
+ "translate-language-code": "Còdes ëd lenga",
+ "translate-language-code-field-name": "Còdes ëd lenga:",
+ "translate-suppress-complete": "Stërma le partìe ëd mëssagi voltà completament",
+ "translate-ls-noempty": "Stërma le partìe ëd mëssagi completament nen voltà",
+ "translate-language": "Lenga:",
+ "translate-total": "Mëssagi",
+ "translate-untranslated": "Nen voltà",
+ "translate-percentage-complete": "Completà",
+ "translate-percentage-fuzzy": "Veje",
+ "translate-languagestats-overall": "Tute le partìe ëd mëssagi ansema",
+ "translate-ls-submit": "Smon-e le statìstiche",
+ "translate-ls-column-group": "Partìa ëd mëssagi",
+ "translate-mgs-pagename": "Statìstiche dle partìe ëd mëssagi",
+ "translate-mgs-fieldset": "Visualisa ij tò gust",
+ "translate-mgs-group": "Partìa ëd mëssagi:",
+ "translate-mgs-nocomplete": "Smon-e nen le lenghe che a l'han livrà soa tradussion",
+ "translate-mgs-noempty": "Smon-e nen le lenghe che a l'han gnun-e tradussion",
+ "translate-mgs-submit": "Smon-e le statìstiche",
+ "translate-mgs-column-language": "Lenga",
+ "translate-mgs-totals": "Tute le lenghe ansema",
+ "translate-mgs-invalid-group": "La partìa $1 specificà a esist pa.",
+ "translate-mgs-nothing": "Gnente da mostré për le statìstiche ciamà.",
+ "supportedlanguages": "Lenghe mantnùe",
+ "supportedlanguages-summary": "Costa pàgina a smon na lista ëd tute le lenghe mantnùe da {{SITENAME}}, ansema ai nòm dij tradutor ch'a travajo an cole lenghe.\nUn nòm d'un tradutor as vëdd pi gròss, tante pi modìfiche e tradussion a l'ha fàit.\nËl color ëd na sot-liniadura a mostra quant ëd recent un tradutor a l'é stàit ativ ambelessì.",
+ "supportedlanguages-colorlegend": "Legenda për ël color: L'ùltima tradussion $1 di fà.",
+ "supportedlanguages-translators": "{{PLURAL:$2|Tradutor|Tradutor}}: $1",
+ "supportedlanguages-recenttranslations": "tradussion recente",
+ "supportedlanguages-count": "$1 {{PLURAL:$1|lenghe|lenghe}} an total.",
+ "supportedlanguages-activity": "$1: $2 {{PLURAL:$2|modìfica|modìfiche}} - ùltima modìfica $3 {{PLURAL:$3|di|di}} fà",
+ "translate-save": "Salva ($1)",
+ "translate-jssti-add": "Gionté a la lista",
+ "managemessagegroups": "Gestion ëd la partìa dij mëssagi",
+ "translate-smg-notallowed": "It peule pa fé st'assion-sì.",
+ "translate-smg-nochanges": "A-i é gnun-a modìfica da traté.",
+ "translate-smg-submit": "Spedì le modìfiche da traté",
+ "translate-smg-submitted": "Le definission dij mëssagi a son stàite modificà. Le modìfiche a son tratà an slë sfond.",
+ "translate-smg-left": "Contnù dël mëssagi ant la wiki",
+ "translate-smg-right": "Modìfiche an cors ëd traferiment",
+ "translate-manage-import-diff": "Mëssagi $1 | Assion: $2",
+ "translate-manage-import-new": "Mëssagi neuv $1",
+ "translate-manage-import-deleted": "Mëssagi scancelà $1",
+ "translate-manage-action-import": "Ampòrta",
+ "translate-manage-action-conflict": "Amporté e marché tanme tërbol",
+ "translate-manage-action-ignore": "Ignora",
+ "translate-manage-action-fuzzy": "Amporté le tradussion e marcheje tanme tërbole",
+ "translate-manage-nochanges": "A-i é pa ëd cangiament ant le definission dij mëssagi për sta partìa-sì.",
+ "translate-manage-nochanges-other": "A-i é pa ëd cangiament për sta lenga-sì.\nCh'a deuvra l'anliura sì-dapress për artorné a la vista ëd detaj dla partìa.",
+ "translate-manage-inconsistent": "Trovà d'anconsistense ant l'arcesta.\nPër piasì, ch'a contròla ij cangiament e ch'a preuva torna.\nDetaj: $1.",
+ "translate-manage-toolong": "Passà ël temp màssim ëd tratament ëd $1 {{PLURAL:$1|second|second}}.\nPër piasì, ch'a spedissa torna ël formolari për continué ël process.",
+ "translate-manage-import-summary": "Amportassion ëd na neuva version da na sorgiss esterna",
+ "translate-manage-conflict-summary": "Amportassion ëd na neuva version da na sorgiss esterna.\nPër piasì, ch'a controla.",
+ "translate-manage-fuzzy-summary": "La definission dël mëssagi a l'é cangià",
+ "translate-manage-submit": "Fé andé",
+ "translate-manage-intro-other": "Sota a-i é na lista ëd cangiament ëd le tradussion ant la lenga $1.\nPër piasì, ch'a revision-a ij cangiament e ch'a serna n'assion ch'a veul fé për minca tradussion.\nS'a sern d'ignoré ij cangiament, a saran coatà durant l'esportassion ch'a-i ven.",
+ "translate-manage-import-ok": "Amportà na neuva version ëd la pàgina $1.",
+ "translate-manage-import-done": "Tut fàit!",
+ "importtranslations": "Amporté dle tradussion",
+ "translate-import-from-local": "Carié n'archivi local:",
+ "translate-import-load": "Carié l'archivi",
+ "translate-import-err-dl-failed": "L'archivi as peul pa argionz-se:\n$1",
+ "translate-import-err-ul-failed": "Ël cariagi dl'archivi a l'ha pa marcià",
+ "translate-import-err-invalid-title": "Ël nòm dl'archivi dàit <nowiki>$1</nowiki> a l'é pa bon.",
+ "translate-import-err-no-such-file": "L'archivi <nowiki>$1</nowiki> a esist pa o a l'é pa stàit carià localment.",
+ "translate-import-err-stale-group": "La partìa ëd mëssagi anté ch'a ponta s'archivi a esist pa.",
+ "translate-import-err-no-headers": "L'archivi a l'é pa n'archivi Gettext bin formà ant ël formà dl'estension Translate:\nAs peul pa determinesse la partìa e la lenga da l'antestassion dl'archivi.",
+ "translate-import-err-warnings": "L'archivi a l'é pa bin formà.\nCh'as sigura che sò editor a gava pa ij camp msgctxt.\nDetaj: $1",
+ "translate-js-summary": "Resumé:",
+ "translate-js-save": "Salva",
+ "translate-js-next": "Salvé e duverté col apress",
+ "translate-js-nonext": "Cost a l'era l'ùltim mëssagi dzora a sta pàgina-sì.",
+ "translate-js-skip": "Sàuta a col ch'a ven",
+ "translate-js-save-failed": "Salvatagi falì. Për piasì arpòrta sto eror-sì.",
+ "translate-js-history": "Stòria dël viragi",
+ "translate-js-support": "Ciama",
+ "translate-js-support-title": "Ch'a ciama d'agiut s'a-i é pa basta d'anformassion për volté bin cost mëssagi.",
+ "translate-js-support-unsaved-warning": "A l'ha dle tradussion nen salvà.",
+ "translate-gs-pos": "Pos.",
+ "translate-gs-code": "Còdes",
+ "translate-gs-continent": "Continent",
+ "translate-gs-speakers": "Parlant",
+ "translate-gs-score": "Pontegi",
+ "translate-gs-multiple": "Mùltipl",
+ "translate-gs-count": "Cont",
+ "translate-gs-total": "Total",
+ "translate-gs-avgscore": "Pontegi medi",
+ "translate-documentation-language": "Documentassion dël mëssagi",
+ "translate-searchprofile": "Tradussion",
+ "translate-searchprofile-tooltip": "Sërché an tute le tradussion",
+ "translate-search-languagefilter": "Filtra për lenga:",
+ "translate-search-nofilter": "Filtra pa",
+ "translate-messagereview-submit": "Aceté",
+ "translate-messagereview-progress": "An cors d'acetassion...",
+ "translate-messagereview-failure": "Acetassion... falìa: $1",
+ "translate-messagereview-done": "Acetà",
+ "translate-messagereview-reviews": "Acetà da {{PLURAL:$1|un utent|$1 utent}}",
+ "translate-messagereview-reviewswithyou": "Acetà da {{PLURAL:$1|ti|$1 utent comprèis ti}}",
+ "api-error-invalidrevision": "Tradussion pa trovà",
+ "api-error-unknownmessage": "Mëssagi pa trovà",
+ "api-error-fuzzymessage": "La tradussion a l'é marcà com tërbol",
+ "api-error-owntranslation": "It peule pa aceté toe pròpie tradussion",
+ "translate-messagereview-no-fuzzy": "Lë tradussion tërboj a peulo pa esse acetà.",
+ "translate-messagereview-no-own": "It peule pa aceté toe pròpie tradussion.",
+ "translate-messagereview-doit": "Aceta sta tradussion com na tradussion giusta.",
+ "log-name-translationreview": "Registr dle revision ëd tradussion",
+ "log-description-translationreview": "Registr ëd tute le revision a le tradussion e a le partìe ëd mëssagi.",
+ "logentry-translationreview-message": "$1 {{GENDER:$2|a l'ha acetà}} la tradussion $3",
+ "translate-workflow-state-": "(disativà)",
+ "translate-workflowstatus": "Stat: $1",
+ "translate-workflow-set-do": "Ampòsta",
+ "translate-workflow-set-doing": "Ativassion...",
+ "translate-workflow-set-done": "Ativà!",
+ "translate-workflow-set-error-alreadyset": "Lë stat ciamà a l'é idéntich a lë stat corent",
+ "translate-workflow-autocreated-summary": "Creassion automàtica ëd la pàgina për lë stat dël process ëd travaj $1",
+ "translate-stats-workflow": "Stat",
+ "translate-workflowgroup-label": "Stat dël process ëd travaj",
+ "translate-workflowgroup-desc": "Sta partìa ëd mëssagi a mostra jë stat dël process ëd travaj ëd tradussion.\nJë stat a son definì ant la variàbil ëd configurassion $wgTranslateWorkflowStates.",
+ "translate-dynagroup-recent-label": "Tradussion recente",
+ "translate-dynagroup-recent-desc": "Sta partìa ëd mëssagi a smon tute le tradussion recente an costa lenga.\nA ven dzortut a taj con ij travaj ëd revision.",
+ "translate-dynagroup-additions-label": "Gionte recente",
+ "translate-dynagroup-additions-desc": "Costa partìa ëd mëssagi a smon dij mëssagi neuv e modificà.",
+ "translate-dynagroup-by": "Tradussion fàite da {{GENDER:$1|$1}}",
+ "translate-dynagroup-byc": "Tradussion fàite da {{GENDER:$1|$1}} ($2)",
+ "translate-dynagroup-last": "Ùltime modìfiche ëd {{GENDER:$1|$1}}",
+ "translate-dynagroup-lastc": "Ùltime modìfiche ëd {{GENDER:$1|$1}} ($2)",
+ "translate-gethelp": "Agiut",
+ "translate-msggroupselector-projects": "Partìa ëd mëssagi",
+ "translate-msggroupselector-search-placeholder": "Sërché le partìe",
+ "translate-msggroupselector-search-all": "Tùit",
+ "translate-msggroupselector-search-recent": "Recent",
+ "translate-msggroupselector-view-subprojects": "$1 {{PLURAL:$1|sot-partìa|sot-partìe}}",
+ "tux-languageselector": "Volté an",
+ "tux-tab-all": "Tùit",
+ "tux-tab-untranslated": "Nen voltà",
+ "tux-tab-outdated": "Veje",
+ "tux-tab-translated": "Voltà",
+ "tux-edit": "Modìfica",
+ "tux-status-optional": "Opsional",
+ "tux-status-fuzzy": "Veje",
+ "tux-status-proofread": "Verìfica",
+ "tux-status-translated": "Voltà",
+ "tux-status-saving": "Salvé...",
+ "tux-status-unsaved": "Pa salvà",
+ "tux-editor-placeholder": "Toa tradussion",
+ "tux-editor-save-button-label": "Salvé la tradussion",
+ "tux-editor-skip-button-label": "Sàuta a col ch'a ven",
+ "tux-editor-shortcut-info": "Sgnaca \"$1\" për salvé o \"$2\" për sauté al mëssagi ch'a ven",
+ "tux-editor-edit-desc": "Modifiché la descrission",
+ "tux-editor-add-desc": "Gionté na descrission",
+ "tux-editor-suggestions-title": "Sugeriment",
+ "tux-editor-in-other-languages": "Ant j'àutre lenghe",
+ "tux-editor-need-more-help": "Dabzògn ëd pi d'agiut?",
+ "tux-editor-ask-help": "Ciama për savèjne ëd pi",
+ "tux-editor-tm-match": "corëspondensa ëd $1%",
+ "tux-warnings-more": "{{PLURAL:$1|$1 pi}}",
+ "tux-warnings-hide": "stërma",
+ "tux-editor-save-failed": "Falì a salvé la tradussion: $1",
+ "tux-editor-message-desc-more": "Visualisé ëd pi",
+ "tux-editor-message-desc-less": "Vëdde ëd men",
+ "tux-editor-clear-translated": "Stërmé coj voltà",
+ "tux-editor-outdated-warning": "Costa tradussion a peul avèj dabzògn d'esse agiornà.",
+ "tux-editor-outdated-warning-diff-link": "Smon-e le diferense",
+ "tux-editor-doc-editor-save": "Salvé la documentassion",
+ "tux-editor-doc-editor-cancel": "Scancela",
+ "tux-messagetable-more-messages": "$1 {{PLURAL:$1|mëssagi}} ëd pi",
+ "tux-messagetable-loading-messages": "Cariagi {{PLURAL:$1|dël mëssagi|dij mëssagi}}..."
+}
diff --git a/MLEB/Translate/i18n/core/pnb.json b/MLEB/Translate/i18n/core/pnb.json
new file mode 100644
index 00000000..a9b02879
--- /dev/null
+++ b/MLEB/Translate/i18n/core/pnb.json
@@ -0,0 +1,16 @@
+{
+ "@metadata": {
+ "authors": [
+ "Khalid Mahmood"
+ ]
+ },
+ "translate": "ترجمعہ",
+ "translate-page-settings-legend": "ترتیب",
+ "translate-page-group": "ٹولی",
+ "translate-page-language": "بولی",
+ "translate-submit": "لے کے آؤ",
+ "translate-page-navigation-legend": "کھوج",
+ "translate-page-showing-none": "وکھانے آسطے کوئی سنیعا نئیں۔",
+ "translate-next": "اگلا صفحہ",
+ "translate-page-description-legend": "ٹولی دے بارے چ معلومات"
+}
diff --git a/MLEB/Translate/i18n/core/ps.json b/MLEB/Translate/i18n/core/ps.json
new file mode 100644
index 00000000..7618f4ff
--- /dev/null
+++ b/MLEB/Translate/i18n/core/ps.json
@@ -0,0 +1,131 @@
+{
+ "@metadata": {
+ "authors": [
+ "Ahmed-Najib-Biabani-Ibrahimkhel",
+ "Waldir"
+ ]
+ },
+ "translate": "ژباړل",
+ "translate-taskui-view": "ټول پيغامونه ښکاره کول",
+ "translate-taskui-untranslated": "ناژباړلي پيغامونه ښکاره کول",
+ "translate-taction-translate": "ژباړل",
+ "translate-taction-lstats": "د ژبې شمار",
+ "translate-taction-mstats": "د پيغام ډلې شمار",
+ "translate-page-no-such-language": "ځانگړې شوې ژبه سمه نه وه.",
+ "translate-page-disabled": "په دې ډله کې د همدې ژبې ژباړې ناچارنده شوي.\nسبب:\n\n<em>$1</em>",
+ "translate-page-settings-legend": "امستنې",
+ "translate-page-group": "ډله",
+ "translate-page-language": "ژبه",
+ "translate-page-limit": "بريد",
+ "translate-page-limit-option": "$1 {{PLURAL:$1|پيغام|پيغامونه}} په يوه مخ کې",
+ "translate-submit": "راغونډول",
+ "translate-page-navigation-legend": "گرځښت",
+ "translate-page-showing-all": "$1 {{PLURAL:$1|پيغام|پيغامونه}} ښکاره کول.",
+ "translate-next": "راتلونکی مخ",
+ "translate-prev": "پخوانی مخ",
+ "translate-page-description-legend": "د ډلې په اړه مالومات",
+ "translate-page-edit": "سمول",
+ "translate-ext-url": "<hr />وېبځی: $1",
+ "translate-optional": "(اختياري)",
+ "translate-ignored": "(بابېزه گڼل شوی)",
+ "translate-edit-title": "\"$1\" سمول",
+ "translate-edit-definition": "د پيغام پېژند",
+ "translate-edit-translation": "ژباړه",
+ "translate-edit-contribute": "ونډه اخيستل",
+ "translate-edit-information": "د پيغام په اړه مالومات ($1)",
+ "translate-edit-in-other-languages": "پيغام په نورو ژبو کې",
+ "translate-magic-help": "تاسې د ځانگړو مخونو مستعار نومونه، کوډگر وييونه او د نوم-تشيال نومونه ژباړلی شی.\n\nد ځانگړو مخونو مستعار نومونه او کوډگر وييونه گڼ شمېر ژباړې لري.\nژباړې د کامې (,) په کارېدلو سره يو له بل نه بېلې شوي.\nنوم-تشيالونه يواځې يوه ژباړه لرلی شي.\n\nد پروژې د خبرو اترو نوم-تشيال په ژباړو کې <code>$1 talk</code> کېدای شي پېچلی شي. <code>$1</code> د پروژې وېبځي په نوم ځايناستل کېږي (د بېلگې په توگه <code>{{ns:project_talk}}</code>).\nکه چېرته دا ستاسې په ژبه کې شونی نه وي چې د وېبځي د نوم بدلون نه پرته يوه سمه اصطلاح رامېنځ ته شي، نو لطفاً د يوه پروگرامر سره په [[ملاتړ]] کې اړيکه ونيسۍ.\n\nد بدلونونو د خوندي کولو لپاره پکار ده چې تاسې د ژباړنانو په ډله کې اوسۍ.\nبدلونونه به تر هغه وخت پورې نه خوندي کېږي څو چې تاسې لاندې د خوندي کولو تڼۍ نه وي کېښکاږلې.",
+ "translate-magic-module": "رغبېلگه:",
+ "translate-magic-submit": "راغونډول",
+ "translate-magic-cm-current": "اوسنی",
+ "translate-magic-cm-original": "آرنی",
+ "translate-magic-cm-comment": "انګېرنه:",
+ "translate-magic-cm-save": "خوندي کول",
+ "translate-magic-words": "کوډګريز وييونه",
+ "translate-magic-namespace": "د نوم-تشيالونو نومونه",
+ "translate-magic-notsaved": "ستاسې سمون خوندي نه شو!",
+ "translate-magic-saved": "بدلونونه مو په برياليتوب سره خوندي شول.",
+ "translate-pref-nonewsletter": "برېښليک کې خبرليکونه مه رالېږه",
+ "translate-pref-editassistlang": "مرستيالې ژبې:",
+ "prefs-translate": "د ژباړې خوښنې",
+ "translate-rc-translation-filter": "ژباړې چاڼول:",
+ "translate-rc-translation-filter-no": "هېڅ مه کوۍ",
+ "translate-rc-translation-filter-only": "يوازې ژباړې ښکاره کول",
+ "translationstats": "د ژباړو شمار",
+ "translate-stats-edits": "سمونونه",
+ "translate-stats-users": "ژباړونکي",
+ "translate-stats-registrations": "نومليکنې",
+ "translate-statsf-days": "د پيل نېټه:",
+ "translate-statsf-start": "پيل نېټه:",
+ "translate-statsf-scale-months": "مياشتې",
+ "translate-statsf-scale-weeks": "اونۍ",
+ "translate-statsf-scale-days": "ورځې",
+ "translate-statsf-scale-hours": "ساعتونه",
+ "translate-statsf-count": "مېچل:",
+ "translate-statsf-count-edits": "د سمونو شمېر:",
+ "translate-statsf-count-users": "فعاله ژباړونکي",
+ "translate-statsf-count-registrations": "نوي کارنان",
+ "translate-statsf-submit": "مخليدنه",
+ "translate-tag-category": "د ژباړې وړ مخونه",
+ "translate-sidebar-alltrans": "په نورو ژبو کې",
+ "translations": "ټولې ژباړې",
+ "translate-translations-none": "د \"$1\" لپاره کومه ژباړه نه شته",
+ "translate-translations-fieldset-title": "پيغام",
+ "translate-translations-messagename": "نوم:",
+ "translate-translations-project": "پروژه:",
+ "languagestats": "د ژبې شمار",
+ "languagestats-summary": "دا مخ د يوې ژبې د ټولو پيغام ډلو د ژباړې شمارنې ښکاره کوي.",
+ "languagestats-stats-for": "د $1 د ژباړې شمارنې ($2).",
+ "languagestats-recenttranslations": "تازه ژباړې",
+ "translate-langstats-expand": "غځول",
+ "translate-langstats-collapse": "پرځول",
+ "translate-langstats-expandall": "ټول غځول",
+ "translate-langstats-collapseall": "ټول پرځول",
+ "translate-language-code": "د ژبې کوډ",
+ "translate-language-code-field-name": "د ژبې کوډ:",
+ "translate-suppress-complete": "بشپړه ژباړل شوې پيغام ډلې پټول",
+ "translate-ls-noempty": "بشپړه ناژباړل شوې پيغام ډلې پټول",
+ "translate-language": "ژبه",
+ "translate-total": "پيغامونه",
+ "translate-untranslated": "ناژباړلي",
+ "translate-percentage-complete": "بشپړتابه",
+ "translate-ls-submit": "شمار ښکاره کول",
+ "translate-ls-column-group": "پيغام ډله",
+ "translate-mgs-pagename": "د پيغام ډلې شمار",
+ "translate-mgs-group": "پيغام ډله:",
+ "translate-mgs-submit": "شمارنې ښکاره کول",
+ "translate-mgs-column-language": "ژبه",
+ "supportedlanguages": "ملاتړې ژبې",
+ "supportedlanguages-translators": "{{PLURAL:$2|ژباړن|ژباړونکي}}: $1",
+ "supportedlanguages-recenttranslations": "تازه ژباړې",
+ "supportedlanguages-count": "ټولټال $1 {{PLURAL:$1|ژبه|ژبې}}.",
+ "supportedlanguages-activity": "$1: $2 {{PLURAL:$2|سمون|سمونونه}} - وروستی سمون $3 {{PLURAL:$3|ورځ|ورځې}} دمخه",
+ "translate-save": "خوندي کول ($1)",
+ "translate-jssti-add": "لړليک کې گډول",
+ "translate-manage-import-new": "نوی پيغام $1",
+ "translate-manage-import-deleted": "ړنگ شوی پيغام $1",
+ "translate-manage-action-ignore": "بابېزل",
+ "translate-manage-import-done": "راوړنه بشپړه شوه!",
+ "translate-import-load": "دوتنه برسېرول",
+ "translate-js-summary": "لنډيز:",
+ "translate-js-save": "خوندي کول",
+ "translate-js-nonext": "په دې مخ دا وروستی پيغام وو",
+ "translate-js-history": "د ژباړې پېښليک",
+ "translate-js-support": "پوښتنه پوښتل",
+ "translate-gs-code": "کوډ",
+ "translate-gs-continent": "لويه وچه",
+ "translate-gs-speakers": "وييونکي",
+ "translate-gs-count": "شمېرل",
+ "translate-gs-total": "ټولټال",
+ "translate-documentation-language": "د پيغام لاسوند",
+ "translate-searchprofile": "ژباړې",
+ "translate-search-languagefilter": "چاڼگر د ژبې له مخې:",
+ "translate-messagereview-submit": "منل",
+ "translate-messagereview-progress": "منل کېږي...",
+ "translate-messagereview-done": "ومنل شو",
+ "translate-messagereview-reviews": "د {{PLURAL:$1|يوه کارن|$1 کارنانو}} لخوا ومنل شو",
+ "translate-workflowstatus": "دريځ: $1",
+ "translate-stats-workflow": "دريځ",
+ "translate-gethelp": "لارښود",
+ "tux-edit": "سمول"
+}
diff --git a/MLEB/Translate/i18n/core/pt-br.json b/MLEB/Translate/i18n/core/pt-br.json
new file mode 100644
index 00000000..4297ed22
--- /dev/null
+++ b/MLEB/Translate/i18n/core/pt-br.json
@@ -0,0 +1,394 @@
+{
+ "@metadata": {
+ "authors": [
+ "Cainamarques",
+ "Dianakc",
+ "Eduardo.mps",
+ "Giro720",
+ "Hamilton Abreu",
+ "Helder.wiki",
+ "Luckas",
+ "Luckas Blade",
+ "Opraco",
+ "555",
+ "Caio1478",
+ "Fabsouza1",
+ "He7d3r"
+ ]
+ },
+ "translate": "Traduzir",
+ "translate-desc": "[[Special:Translate|Página especial]] para traduzir o MediaWiki e mais",
+ "translate-taskui-view": "Exibir todas as mensagens",
+ "translate-taskui-untranslated": "Exibir mensagens ainda não traduzidas",
+ "translate-taskui-optional": "Exibir mensagens opcionais",
+ "translate-taskui-acceptqueue": "Apenas as mensagens que eu posso marcar como revisadas",
+ "translate-taskui-reviewall": "Revisar todas as traduções",
+ "translate-taskui-export-to-file": "Exportar no formato nativo",
+ "translate-taskui-export-as-po": "Exportar para tradução off-line",
+ "translate-taction-translate": "Traduções",
+ "translate-taction-proofread": "Revisar",
+ "translate-taction-lstats": "Estatísticas de idiomas",
+ "translate-taction-mstats": "Estatísticas por grupo de mensagens",
+ "translate-taction-export": "Exportar",
+ "translate-taction-disabled": "Esta ação está desativada neste wiki.",
+ "translate-page-no-such-language": "O idioma especificado é inválido",
+ "translate-page-no-such-group": "O grupo especificado é inválido.",
+ "translate-page-disabled": "As traduções para este idioma, neste grupo, foram desabilitadas.\nMotivo:\n\n<em>$1</em>",
+ "translate-language-disabled": "As traduções para este idioma estão desativadas.",
+ "translate-page-settings-legend": "Configurações",
+ "translate-page-group": "Grupo",
+ "translate-page-language": "Idioma",
+ "translate-page-limit": "Limite",
+ "translate-page-limit-option": "$1 {{PLURAL:$1|mensagem|mensagens}} por página",
+ "translate-submit": "Mostrar",
+ "translate-page-navigation-legend": "Navegação",
+ "translate-page-showing": "Mostrando as mensagens de $1 a $2 de $3.",
+ "translate-page-showing-all": "Exibindo $1 {{PLURAL:$1|mensagem|mensagens}}.",
+ "translate-page-showing-none": "Não há mensagens a serem exibidas.",
+ "translate-next": "Próxima página",
+ "translate-prev": "Página anterior",
+ "translate-page-description-legend": "Informação sobre o grupo",
+ "translate-page-description-hasoptional": "Este grupo de mensagens possui mensagens opcionais.\nAs mensagens opcionais deverão ser traduzidas apenas quando o seu idioma possuir características especiais\ntais como não usar espaços ou transliterar nomes próprios. $1",
+ "translate-page-description-hasoptional-open": "Exibir mensagens opcionais.",
+ "translate-page-edit": "editar",
+ "translate-ext-url": "<hr />Website: $1",
+ "translate-optional": "(opcional)",
+ "translate-ignored": "(ignorada)",
+ "translate-edit-title": "Editar \"$1\"",
+ "translate-edit-definition": "Definição da mensagem",
+ "translate-edit-translation": "Tradução",
+ "translate-edit-contribute": "contribua",
+ "translate-edit-no-information": "<em>Esta mensagem ainda não foi documentada.\nCaso você saiba onde ou como ela é utilizada, poderá ajudar outros tradutores adicionando informações sobre esta mensagem.</em>",
+ "translate-edit-information": "Informações sobre a mensagem ($1)",
+ "translate-edit-in-other-languages": "Esta mensagem em outros idiomas",
+ "translate-edit-committed": "Tradução disponível no software",
+ "translate-edit-warnings": "Avisos sobre traduções incompletas",
+ "translate-edit-tmsugs": "Sugestões da memória de traduções e de traduções mecânicas",
+ "translate-edit-tmmatch-source": "Texto de origem da tradução: $1",
+ "translate-edit-tmmatch": "$1% coincidente",
+ "translate-use-suggestion": "Substituir a tradução atual por esta sugestão.",
+ "translate-edit-nopermission": "Você precisa ter direitos de tradução para traduzir mensagens.",
+ "translate-edit-askpermission": "Obter permissão",
+ "translate-magic-pagename": "Tradução avançada do MediaWiki",
+ "translate-magic-help": "Você pode traduzir nomes alternativos de páginas especiais, palavras mágicas e espaços nominais.\n\nOs nomes alternativos de páginas especiais e palavras mágicas podem receber múltiplas traduções.\nAs traduções são separadas por vírgulas (,).\nNomes de espaços nominais podem receber apenas uma tradução.\n\nAs traduções de espaços nominais de discussão de projeto <code>$1 talk</code> podem ser complexas.\n<code>$1</code> é substituído pelo nome do site (por exemplo, <code>{{ns:project_talk}}</code>).\nSe no seu idioma não é possível formar expressões válidas sem alterar o nome do site, contate-nos em [[Support]].\n\nÉ necessário pertencer ao grupo de tradutores para conseguir salvar as alterações.\nAs alterações não serão salvas até que você clique no botão de salvar ao final do formulário.",
+ "translate-magic-module": "Módulo:",
+ "translate-magic-submit": "Mostrar",
+ "translate-magic-cm-export": "Exportar",
+ "translate-magic-nothing-to-export": "Não há o que exportar.",
+ "translate-magic-cm-to-be": "Alterações",
+ "translate-magic-cm-current": "Atual",
+ "translate-magic-cm-original": "No idioma original",
+ "translate-magic-cm-comment": "Comentário:",
+ "translate-magic-cm-save": "Salvar",
+ "translate-magic-cm-updatedusing": "Atualizado usando [[Special:AdvancedTranslate|{{int:Translate-magic-pagename}}]]",
+ "translate-magic-cm-savefailed": "Erro ao salvar",
+ "translate-magic-special": "Nomes alternativos de páginas especiais",
+ "translate-magic-words": "Palavras mágicas",
+ "translate-magic-namespace": "Nomes de espaços nominais",
+ "translate-magic-notsaved": "Sua edição não foi salva!",
+ "translate-magic-errors": "Corrija, na tradução, {{PLURAL:$1|o erro a seguir|os erros a seguir}}:",
+ "translate-magic-saved": "Suas alterações foram salvas com êxito.",
+ "translate-checks-parameters": "{{PLURAL:$2|O parâmetro|Os parâmetros}} a seguir não {{PLURAL:$2|é usado|são usados}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-parameters-unknown": "{{PLURAL:$2|O parâmetro|Os parâmetros}} a seguir {{PLURAL:$2|é desconhecido|são desconhecidos}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-balance": "Há {{PLURAL:$2|um parênteses irregular|$2 parênteses irregulares}}: <strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links": "{{PLURAL:$2|O link a seguir é|Os $2 links a seguir são}} problemáticos:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links-missing": "{{PLURAL:$2|O seguinte link está|Os $2 seguintes links estão}} faltando:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-xhtml": "Corrija {{PLURAL:$2|a seguinte tag pela correta|as seguintes tags}}:\n<strong>$1</strong>",
+ "translate-checks-plural": "A definição usa <nowiki>{{PLURAL:}}</nowiki>, mas a tradução não.",
+ "translate-checks-plural-forms": "A <nowiki>{{PLURAL:}}</nowiki> foi fornecida em {{PLURAL:$1|uma forma|$1 formas}} mas {{PLURAL:$2|apenas uma forma é suportada|$2 formas são suportadas}} (excluindo formas 0= e 1=).",
+ "translate-checks-plural-dupe": "<nowiki>{{PLURAL:}}</nowiki> tem formas duplicadas. <nowiki>{{PLURAL:$1|pastel|pastel}}</nowiki> deve ser escrito como <nowiki>{{PLURAL:$1|pastel}}</nowiki>.",
+ "translate-checks-pagename": "Espaço nominal diferente do da definição",
+ "translate-checks-format": "Esta tradução não segue a definição ou tem uma sintaxe inválida: $1",
+ "translate-checks-escape": "As seguintes sequências de escape podem ter sido acidentais: <strong>$1</strong>",
+ "translate-checks-parametersnotequal": "A contagem de parâmetros detectou {{PLURAL:$1|$1}}. É necessário que sejam {{PLURAL:$2|$2}}.",
+ "translate-checks-malformed": "<nowiki>$1</nowiki> está formatado incorretamente.",
+ "translate-checks-fudforum-syntax": "Use, neste projeto, <nowiki>$1</nowiki> ao invés de <nowiki>$2</nowiki>.",
+ "translate-pref-nonewsletter": "Não quero receber newsletters por e-mail",
+ "translate-pref-editassistlang": "Idiomas auxiliares:",
+ "prefs-translate": "Opções de tradução",
+ "translate-pref-editassistlang-help": "Liste os idiomas, separados por vírgulas.\nQuando você estiver traduzindo, as traduções nos idiomas aqui definidos também serão exibidas.\nOs idiomas padrão deste recurso variam de acordo com a língua de sua interface.",
+ "translate-pref-editassistlang-bad": "A listagem possui códigos de idioma inválidos:\n<nowiki>$1</nowiki>.",
+ "right-translate": "Editar usando a interface de tradução",
+ "right-translate-manage": "Gerenciar grupos de mensagens",
+ "action-translate-manage": "gerenciar grupos de mensagens",
+ "right-translate-import": "Importar traduções offline",
+ "action-translate-import": "importar traduções off-line",
+ "right-translate-messagereview": "Revisar traduções",
+ "right-translate-groupreview": "Alterar estado do fluxo de trabalho de grupos de mensagens",
+ "translate-rc-translation-filter": "Filtrar traduções:",
+ "translate-rc-translation-filter-no": "Não filtrar",
+ "translate-rc-translation-filter-only": "Mostrar somente traduções",
+ "translate-rc-translation-filter-filter": "Não mostrar traduções",
+ "translate-rc-translation-filter-site": "Só mudanças às mensagens do site",
+ "translationstats": "Estatísticas de tradução",
+ "translate-stats-edits": "Edições",
+ "translate-stats-users": "Tradutores",
+ "translate-stats-registrations": "Registros",
+ "translate-stats-reviews": "Revisões",
+ "translate-stats-reviewers": "Revisores",
+ "translate-statsf-intro": "É possível gerar estatísticas simples a partir deste formulário.\nTodos os valores têm limites máximos e mínimos.",
+ "translate-statsf-options": "Opções do gráfico",
+ "translate-statsf-width": "Largura em pixels:",
+ "translate-statsf-height": "Altura em pixels:",
+ "translate-statsf-days": "Período de tempo em dias:",
+ "translate-statsf-start": "Data inicial:",
+ "translate-statsf-scale": "Escala:",
+ "translate-statsf-scale-months": "Meses",
+ "translate-statsf-scale-weeks": "Semanas",
+ "translate-statsf-scale-days": "Dias",
+ "translate-statsf-scale-hours": "Horas",
+ "translate-statsf-count": "Dados:",
+ "translate-statsf-count-edits": "Número de edições",
+ "translate-statsf-count-users": "Tradutores ativos",
+ "translate-statsf-count-registrations": "Novos usuários",
+ "translate-statsf-count-reviews": "Revisões de traduções",
+ "translate-statsf-count-reviewers": "Revisores",
+ "translate-statsf-language": "Códigos de idiomas, separados por vírgulas:",
+ "translate-statsf-group": "Códigos de grupos, separados por vírgulas:",
+ "translate-statsf-submit": "Visualizar",
+ "translate-tag-category": "Páginas traduzíveis",
+ "translate-tag-page-desc": "Tradução da página wiki [[$2|$1]].",
+ "translate-sidebar-alltrans": "Em outras línguas",
+ "translations": "Todas as traduções",
+ "translations-summary": "Insira abaixo o nome de uma mensagem para mostrar todas as traduções disponíveis.",
+ "translate-translations-no-message": "\"$1\" não é uma mensagem traduzível",
+ "translate-translations-none": "Não existem traduções para \"$1\"",
+ "translate-translations-count": "{{PLURAL:$1|Foi encontrada uma tradução|Foram encontradas $1 traduções}}.",
+ "translate-translations-fieldset-title": "Mensagem",
+ "translate-translations-messagename": "Nome:",
+ "translate-translations-project": "Projeto:",
+ "translate-translations-including-no-param": "Especifique uma chave de mensagem válida no parâmetro subpágina",
+ "translate-translations-history-short": "h",
+ "languagestats": "Estatísticas de idiomas",
+ "languagestats-summary": "Esta página mostra estatísticas de tradução para todos os grupos de mensagens de um idioma.",
+ "messagegroupstats-summary": "Esta página mostra as estatísticas do grupo de mensagens.",
+ "languagestats-stats-for": "Estatísticas de tradução para $1 ($2).",
+ "languagestats-recenttranslations": "traduções recentes",
+ "translate-langstats-incomplete": "Algumas das estatísticas desta página estão incompletas. Atualize a página para obter mais dados.",
+ "translate-langstats-expand": "expandir",
+ "translate-langstats-collapse": "recolher",
+ "translate-langstats-expandall": "expandir todas",
+ "translate-langstats-collapseall": "recolher todas",
+ "translate-language-code": "Configurações de idioma",
+ "translate-language-code-field-name": "Código do idioma:",
+ "translate-suppress-complete": "Omitir grupos de mensagens completamente traduzidos",
+ "translate-ls-noempty": "Omitir os grupos de mensagens sem tradução iniciada",
+ "translate-language": "Idioma",
+ "translate-total": "Total de mensagens",
+ "translate-untranslated": "Não traduzidas",
+ "translate-percentage-complete": "Progresso",
+ "translate-percentage-fuzzy": "Desatualizadas",
+ "translate-languagestats-overall": "Soma de todos os grupos de mensagens",
+ "translate-ls-submit": "Mostrar estatísticas",
+ "translate-ls-column-group": "Grupo de mensagens",
+ "translate-mgs-pagename": "Estatísticas do grupo de mensagens",
+ "translate-mgs-fieldset": "Opções de exibição",
+ "translate-mgs-group": "Grupo de mensagens:",
+ "translate-mgs-nocomplete": "Ocultar idiomas com traduções completas",
+ "translate-mgs-noempty": "Ocultar idiomas sem traduções",
+ "translate-mgs-submit": "Ver estatísticas",
+ "translate-mgs-column-language": "Idioma",
+ "translate-mgs-totals": "Soma de todos os idiomas",
+ "translate-mgs-invalid-group": "O grupo especificado ($1) não existe.",
+ "translate-mgs-nothing": "Sem dados para as estatísticas solicitadas.",
+ "supportedlanguages": "Idiomas suportados",
+ "supportedlanguages-summary": "Esta página apresenta uma lista de todas as línguas suportadas por {{SITENAME}},\njunto dos respectivos nomes dos tradutores de cada idioma.\nQuanto maior for exibido um nome, com mais traduções a pessoa terá contribuído.\nA cor do sublinhado é um indicativo de atividades recentes do usuário.",
+ "supportedlanguages-colorlegend": "Legenda: última tradução $1 dias atrás.",
+ "supportedlanguages-translators": "{{PLURAL:$2|Tradutor|Tradutores}}: $1",
+ "supportedlanguages-recenttranslations": "traduções recentes",
+ "supportedlanguages-count": "$1 {{PLURAL:$1|idioma|idiomas}} ao todo.",
+ "supportedlanguages-activity": "$1: $2 {{PLURAL:$2|edição|edições}} - a última edição foi há $3 {{PLURAL:$3|dia|dias}}",
+ "translate-save": "Salvar ($1)",
+ "translate-jssti-add": "Adicionar à lista",
+ "managemessagegroups": "Gerenciamento de grupos de mensagens",
+ "translate-smg-notallowed": "Você não tem os privilégios necessários para executar esta ação.",
+ "translate-smg-nochanges": "Não há alterações a processar.",
+ "translate-smg-submit": "Enviar alterações para processamento",
+ "translate-smg-submitted": "As definições de mensagens foram atualizadas. As alterações estão sendo processadas em segundo plano.",
+ "translate-smg-more": "Haverá mais mudanças para processar depois de submeter estas mudanças.",
+ "translate-smg-left": "Mensagem no wiki",
+ "translate-smg-right": "Alterações de entrada",
+ "translate-manage-import-diff": "Mensagem $1 | Ações: $2",
+ "translate-manage-import-new": "Nova mensagem $1",
+ "translate-manage-import-deleted": "Mensagem apagada $1",
+ "translate-manage-action-import": "Importar",
+ "translate-manage-action-conflict": "Importar e marcar traduções para revisão",
+ "translate-manage-action-ignore": "Ignorar",
+ "translate-manage-action-fuzzy": "Importar e marcar traduções para revisão",
+ "translate-manage-nochanges": "Não há alterações nas definições das mensagens deste grupo.",
+ "translate-manage-nochanges-other": "Não houve alterações para este idioma.\nUse o link abaixo para retornar à visualização de detalhes do grupo.",
+ "translate-manage-inconsistent": "Detectada inconsistência na solicitação.\nConfira as alterações e tente novamente.\nDetalhes: $1.",
+ "translate-manage-toolong": "Foi excedido o tempo máximo de $1 {{PLURAL:$1|segundo|segundos}} de processamento.\nReenvie o formulário para continuar processando.",
+ "translate-manage-import-summary": "Importando uma nova versão a partir de fonte externa",
+ "translate-manage-conflict-summary": "Importando uma nova versão a partir de fonte externa.\nVerifique-a, por favor.",
+ "translate-manage-fuzzy-summary": "A definição da mensagem sofreu alterações",
+ "translate-manage-submit": "Executar",
+ "translate-manage-intro-other": "Abaixo está a lista de mudanças de tradução no idioma $1.\nPor favor, revise essas mudanças e escolha uma ação para cada atualização.\nSe optar por ignorar as alterações, esta ação é apenas temporária.",
+ "translate-manage-import-ok": "Importado: $1",
+ "translate-manage-import-done": "Importação completa!",
+ "importtranslations": "Importar traduções",
+ "translate-import-from-local": "Enviar arquivo local:",
+ "translate-import-load": "Enviar arquivo",
+ "translate-import-err-dl-failed": "Não foi possível obter o arquivo:\n$1",
+ "translate-import-err-ul-failed": "O envio do arquivo não foi bem sucedido",
+ "translate-import-err-invalid-title": "Foi fornecido um nome inválido para o arquivo <nowiki>$1</nowiki>.",
+ "translate-import-err-no-such-file": "O arquivo <nowiki>$1</nowiki> não existe ou não foi enviado.",
+ "translate-import-err-stale-group": "O grupo de mensagens a que este arquivo pertence não existe.",
+ "translate-import-err-no-headers": "Este não é um arquivo Gettext compatível com o formato da extensão Translate:\nNão foi possível determinar o grupo e a língua a partir dos cabeçalhos.",
+ "translate-import-err-warnings": "Arquivo incompatível.\nCertifique-se de que o seu editor não remove os campos msgctxt.\nDetalhes: $1",
+ "translate-js-summary": "Sumário:",
+ "translate-js-save": "Salvar",
+ "translate-js-next": "Salvar e abrir a próxima",
+ "translate-js-nonext": "Esta foi a última mensagem nesta página.",
+ "translate-js-skip": "Pular para próxima",
+ "translate-js-save-failed": "Falha ao salvar. Relate-nos este erro.",
+ "translate-js-history": "Histórico de traduções",
+ "translate-js-support": "Fazer uma pergunta",
+ "translate-js-support-title": "Peça ajuda se não existir informação suficiente para traduzir esta mensagem de forma correta.",
+ "translate-js-support-unsaved-warning": "Há traduções que ainda não foram salvas.",
+ "translate-gs-pos": "Lugar",
+ "translate-gs-code": "Código",
+ "translate-gs-continent": "Continente",
+ "translate-gs-speakers": "Falantes",
+ "translate-gs-score": "Pontos",
+ "translate-gs-multiple": "Vários",
+ "translate-gs-count": "Contagem",
+ "translate-gs-total": "Total",
+ "translate-gs-avgscore": "Pont. média",
+ "translate-documentation-language": "documentação da mensagem",
+ "translate-searchprofile": "Traduções",
+ "translate-searchprofile-tooltip": "Pesquisar todas as traduções",
+ "translate-search-languagefilter": "Filtrar por idioma:",
+ "translate-search-nofilter": "Não filtrar",
+ "translate-messagereview-submit": "Marcar como revisada",
+ "translate-messagereview-progress": "Marcando como revisada...",
+ "translate-messagereview-failure": "Falha ao marcar como revisado: $1",
+ "translate-messagereview-done": "Revisada",
+ "translate-messagereview-reviews": "Revisada por {{PLURAL:$1|um usuário|$1 usuários}}",
+ "translate-messagereview-reviewswithyou": "Revisada por {{PLURAL:$1|você|$1 usuários, incluindo você}}",
+ "api-error-invalidrevision": "A tradução não foi encontrada",
+ "api-error-unknownmessage": "A mensagem não foi encontrada",
+ "api-error-fuzzymessage": "A tradução está sinalizada como obsoleta",
+ "api-error-owntranslation": "Você não pode revisar suas próprias traduções",
+ "translate-messagereview-no-fuzzy": "Traduções obsoletas não podem ser revisadas.",
+ "translate-messagereview-no-own": "Você não pode marcar suas próprias traduções como revisadas.",
+ "translate-messagereview-doit": "Marcar esta tradução como revisada.",
+ "group-translate-proofr.css": "/* O CSS colocado aqui afetará apenas os revisores de traduções */",
+ "group-translate-proofr.js": "/* O JavaScript colocado aqui afetará apenas os revisores de traduções */",
+ "log-name-translationreview": "Registro de revisão de traduções",
+ "log-description-translationreview": "Registro de todas as revisões feitas em traduções e grupos de traduções.",
+ "logentry-translationreview-message": "$1 {{GENDER:$2|revisou}} a tradução $3",
+ "logentry-translationreview-group": "$1 {{GENDER:$2|alterou}} o estado das traduções de $3 para $4, de $6 para $7",
+ "group-translate-sandboxed": "Tradutores reprovados",
+ "group-translate-sandboxed-member": "{{GENDER:$1|tradutor reprovado}}",
+ "right-translate-sandboxmanage": "Gerenciar usuários em área restrita",
+ "action-translate-sandboxmanage": "gerenciar usuários em área restrita",
+ "right-translate-sandboxaction": "Executar ações da lista de permissões para usuários da área de testes",
+ "translate-workflow-state-": "(indefinido)",
+ "translate-workflowstatus": "Status: $1",
+ "translate-workflow-set-do": "Definir",
+ "translate-workflow-set-doing": "Definindo...",
+ "translate-workflow-set-done": "Definido!",
+ "translate-workflow-set-error-alreadyset": "O estado solicitado já é o estado atual.",
+ "translate-workflow-autocreated-summary": "Criação automática de página para o status de fluxo de trabalho $1",
+ "translate-stats-workflow": "Status",
+ "translate-workflowgroup-label": "Status do fluxo de trabalho",
+ "translate-workflowgroup-desc": "Este grupo de mensagens mostra os status do fluxo de trabalho de traduções.\nOs status são definidos na variável de configuração $wgTranslateWorkflowStates.",
+ "translate-dynagroup-recent-label": "Traduções recentes",
+ "translate-dynagroup-recent-desc": "Este grupo de mensagens mostra todas as traduções recentes para este idioma.\nUsado principalmente em tarefas de revisão.",
+ "translate-dynagroup-additions-label": "Adições recentes",
+ "translate-dynagroup-additions-desc": "Este grupo de mensagens exibe as mensagens novas e alteradas.",
+ "translate-dynagroup-by": "Tradução feita {{GENDER:$1|pelo|pela|por}} $1",
+ "translate-dynagroup-byc": "Tradução feita {{GENDER:$1|pelo|pela|por}} $1 ($2)",
+ "translate-dynagroup-last": "Última modificação feita {{GENDER:$1|pelo|pela|por}} $1",
+ "translate-dynagroup-lastc": "Última modificação feita {{GENDER:$1|pelo|pela|por}} $1 ($2)",
+ "translate-gethelp": "Ajuda",
+ "translate-msggroupselector-projects": "Grupo de mensagens",
+ "translate-msggroupselector-search-placeholder": "Pesquisar grupos",
+ "translate-msggroupselector-search-all": "Todos",
+ "translate-msggroupselector-search-recent": "Recentes",
+ "translate-msggroupselector-view-subprojects": "$1 {{PLURAL:$1|subgrupo|subgrupos}}",
+ "tux-languageselector": "Traduzir para",
+ "tux-tab-all": "Tudo",
+ "tux-tab-untranslated": "Não traduzido",
+ "tux-tab-outdated": "Desatualizado",
+ "tux-tab-translated": "Traduzido",
+ "tux-tab-unproofread": "Não revisado",
+ "tux-edit": "Editar",
+ "tux-status-optional": "Opcional",
+ "tux-status-fuzzy": "Desatualizado",
+ "tux-status-proofread": "Revisado",
+ "tux-status-translated": "Traduzido",
+ "tux-status-saving": "Salvando...",
+ "tux-status-unsaved": "Não salvo",
+ "tux-editor-placeholder": "Sua tradução",
+ "tux-editor-paste-original-button-label": "Colar texto da fonte",
+ "tux-editor-discard-changes-button-label": "Descartar mudanças",
+ "tux-editor-save-button-label": "Salvar tradução",
+ "tux-editor-skip-button-label": "Pular para seguinte",
+ "tux-editor-cancel-button-label": "Cancelar",
+ "tux-editor-confirm-button-label": "Confirmar tradução",
+ "tux-editor-shortcut-info": "Pressione \"$1\" para salvar, \"$2\" para pular para a mensagem seguinte ou \"$3\" para outros atalhos.",
+ "tux-editor-edit-desc": "Editar documentação",
+ "tux-editor-add-desc": "Adicionar documentação",
+ "tux-editor-suggestions-title": "Sugestões",
+ "tux-editor-in-other-languages": "Em outras línguas",
+ "tux-editor-need-more-help": "Precisa de mais ajuda?",
+ "tux-editor-ask-help": "Peça mais informações",
+ "tux-editor-tm-match": "$1% coincidente",
+ "tux-warnings-more": "{{PLURAL:$1|$1 mais}}",
+ "tux-warnings-hide": "ocultar",
+ "tux-editor-save-failed": "O salvamento da tradução falhou: $1",
+ "tux-editor-n-uses": "usado $1 {{PLURAL:$1|vez|vezes}}",
+ "tux-editor-message-desc-more": "Ver mais",
+ "tux-editor-message-desc-less": "Ver menos",
+ "tux-editor-clear-translated": "Ocultar traduzidas",
+ "tux-editor-proofreading-mode": "Revisar",
+ "tux-editor-translate-mode": "Lista",
+ "tux-editor-proofreading-hide-own-translations": "Ocultar suas traduções",
+ "tux-editor-proofreading-show-own-translations": "Mostrar suas traduções",
+ "tux-proofread-action-tooltip": "Marcar como revisado",
+ "tux-proofread-edit-label": "Editar",
+ "tux-editor-page-mode": "Página",
+ "tux-editor-outdated-warning": "Esta tradução pode precisar de atualização.",
+ "tux-editor-outdated-warning-diff-link": "Mostrar diferenças",
+ "tux-editor-doc-editor-placeholder": "Documentação da mensagem",
+ "tux-editor-doc-editor-save": "Salvar documentação",
+ "tux-editor-doc-editor-cancel": "Cancelar",
+ "tux-messagetable-more-messages": "mais $1 {{PLURAL:$1|mensagem|mensagens}}",
+ "tux-messagetable-loading-messages": "Carregando {{PLURAL:$1|mensagem|mensagens}}.",
+ "tux-message-filter-placeholder": "Filtrar lista",
+ "tux-message-filter-result": "{{PLURAL:$1|Encontrado $1 resultado|Encontrados $1 resultados}} para \"$2\"",
+ "tux-message-filter-advanced-button": "Pesquisa avançada",
+ "tux-message-filter-optional-messages-label": "Mensagens opcionais",
+ "tux-proofread-translated-by-self": "Traduzido por você",
+ "tux-empty-list-all": "Este grupo de mensagens está vazio",
+ "tux-empty-list-all-guide": "Selecione um grupo de mensagens diferente para traduzir",
+ "tux-translate-page-no-such-group": "<strong>O grupo indicado não existe.</strong> Selecione um grupo de mensagens diferente.",
+ "tux-empty-list-translated": "Nenhuma mensagem traduzida",
+ "tux-empty-list-translated-guide": "Você pode ajudar traduzindo",
+ "tux-empty-list-translated-action": "Traduzir",
+ "tux-empty-no-messages-to-display": "Sem mensagens para exibir.",
+ "tux-empty-there-are-optional": "Existem mensagens opcionais não mostradas na lista",
+ "tux-empty-show-optional-messages": "Exibir mensagens opcionais",
+ "tux-empty-no-outdated-messages": "Nenhuma mensagem desatualizada",
+ "tux-empty-nothing-to-proofread": "Nada para revisar",
+ "tux-empty-you-can-help-providing": "Você pode ajudar a proporcionar novas traduções",
+ "tux-empty-nothing-new-to-proofread": "Nada de novo para revisar",
+ "tux-empty-you-can-review-already-proofread": "Você pode revisar traduções já revisadas por outros.",
+ "tux-empty-list-other": "Não há nada para traduzir.",
+ "tux-empty-list-other-guide": "Você pode ajudar a revisar traduções existentes",
+ "tux-empty-list-other-action": "Revisar traduções",
+ "tux-empty-list-other-link": "Exibir todas as mensagens",
+ "tux-editor-close-tooltip": "Fechar",
+ "tux-editor-expand-tooltip": "Expandir",
+ "tux-editor-collapse-tooltip": "Recolher",
+ "tux-editor-message-tools-history": "Histórico",
+ "tux-editor-message-tools-translations": "Todas as traduções",
+ "tux-editor-loading": "Carregando…",
+ "translate-search-more-languages-info": "mais $1 {{PLURAL:$1|idioma|idiomas}}",
+ "translate-statsbar-tooltip": "$1% traduzido, $2% revisado",
+ "translate-statsbar-tooltip-with-fuzzy": "$1% traduzido, $2% revisado, $3% desatualizado",
+ "translate-search-more-groups-info": "mais $1 {{PLURAL:$1|grupo|grupos}}",
+ "translate-ulsdep-body": "A extensão Translate depende da extensão [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:UniversalLanguageSelector Universal Language Selector]."
+}
diff --git a/MLEB/Translate/i18n/core/pt.json b/MLEB/Translate/i18n/core/pt.json
new file mode 100644
index 00000000..1c9ee3e6
--- /dev/null
+++ b/MLEB/Translate/i18n/core/pt.json
@@ -0,0 +1,395 @@
+{
+ "@metadata": {
+ "authors": [
+ "Cainamarques",
+ "Crazymadlover",
+ "Fúlvio",
+ "Giro720",
+ "Hamilton Abreu",
+ "Lijealso",
+ "Luckas",
+ "Malafaya",
+ "SandroHc",
+ "Waldir",
+ "555",
+ "Vitorvicentevalente"
+ ]
+ },
+ "translate": "Traduzir",
+ "translate-desc": "[[Special:Translate|Página especial]] para traduzir o MediaWiki e outras aplicações",
+ "translate-taskui-view": "Mostrar todas as mensagens",
+ "translate-taskui-untranslated": "Mostrar as mensagens não traduzidas",
+ "translate-taskui-optional": "Mostrar as mensagens opcionais",
+ "translate-taskui-acceptqueue": "Só as mensagens que posso marcar como revistas",
+ "translate-taskui-reviewall": "Rever todas as traduções",
+ "translate-taskui-export-to-file": "Exportar no formato original",
+ "translate-taskui-export-as-po": "Exportar para tradução ''off-line''",
+ "translate-taction-translate": "Traduzir",
+ "translate-taction-proofread": "Rever",
+ "translate-taction-lstats": "Estatísticas por língua",
+ "translate-taction-mstats": "Estatísticas por grupo de mensagens",
+ "translate-taction-export": "Exportar",
+ "translate-taction-disabled": "Esta operação foi impossibilitada nesta wiki.",
+ "translate-page-no-such-language": "A língua especificada é inválida.",
+ "translate-page-no-such-group": "O grupo especificado é inválido.",
+ "translate-page-disabled": "As traduções para esta língua, neste grupo, foram impossibilitadas. Motivo:\n\n<em>$1</em>",
+ "translate-language-disabled": "A tradução para esta língua foi impossibilitada.",
+ "translate-page-settings-legend": "Configurações",
+ "translate-page-group": "Grupo",
+ "translate-page-language": "Língua",
+ "translate-page-limit": "Limite",
+ "translate-page-limit-option": "$1 {{PLURAL:$1|mensagem|mensagens}} por página",
+ "translate-submit": "Procurar",
+ "translate-page-navigation-legend": "Navegação",
+ "translate-page-showing": "A apresentar as mensagens $1 a $2 de $3.",
+ "translate-page-showing-all": "A apresentar $1 {{PLURAL:$1|mensagem|mensagens}}.",
+ "translate-page-showing-none": "Não há mensagens para apresentar.",
+ "translate-next": "Página seguinte",
+ "translate-prev": "Página anterior",
+ "translate-page-description-legend": "Informação sobre o grupo",
+ "translate-page-description-hasoptional": "Este grupo contém mensagens opcionais.\nAs mensagens opcionais só devem ser traduzidas quando a sua língua tem requisitos especiais, como o não usar espaços ou a transliteração de nomes próprios. $1",
+ "translate-page-description-hasoptional-open": "Mostrar as mensagens opcionais.",
+ "translate-page-edit": "editar",
+ "translate-ext-url": "<hr />Sítio na Internet: $1",
+ "translate-optional": "(opcional)",
+ "translate-ignored": "(ignorada)",
+ "translate-edit-title": "Editar \"$1\"",
+ "translate-edit-definition": "Definição da mensagem",
+ "translate-edit-translation": "Tradução",
+ "translate-edit-contribute": "contribua",
+ "translate-edit-no-information": "<em>Esta mensagem ainda não foi documentada.\nCaso saiba onde ou como ela é utilizada, pode ajudar os outros tradutores acrescentando as informações necessárias nesta mensagem.</em>",
+ "translate-edit-information": "Informações sobre a mensagem ($1)",
+ "translate-edit-in-other-languages": "Esta mensagem noutras línguas",
+ "translate-edit-committed": "Tradução atualmente disponível no software",
+ "translate-edit-warnings": "Avisos sobre traduções incompletas",
+ "translate-edit-tmsugs": "Sugestões da memória de traduções",
+ "translate-edit-tmmatch-source": "Texto de origem da tradução: $1",
+ "translate-edit-tmmatch": "$1% coincidente",
+ "translate-use-suggestion": "Substituir a tradução atual por esta sugestão.",
+ "translate-edit-nopermission": "Precisa de ter direitos de tradutor para traduzir mensagens.",
+ "translate-edit-askpermission": "Obter permissão",
+ "translate-magic-pagename": "Tradução extra do MediaWiki",
+ "translate-magic-help": "Pode traduzir nomes alternativos de páginas especiais, palavras mágicas e nomes de espaços nominais.\n\nOs nomes alternativos de páginas especiais e as palavras mágicas podem ter várias traduções.\nAs traduções são separadas por vírgulas (,).\nOs nomes de espaços nominais só podem ter uma tradução.\n\nNas traduções de espaços nominais, a partícula <code>$1 talk</code> é especial. <code>$1</code> é substituído pelo nome do site (por exemplo, <code>{{ns:project_talk}}</code>).\nSe não é possível formar na sua língua expressões válidas sem alterar o nome do site, por favor, informe-nos em [[Support|Suporte]].\n\nÉ necessário pertencer ao grupo de tradutores para conseguir gravar as alterações.\nAs alterações não serão gravadas até clicar no botão de gravar abaixo.",
+ "translate-magic-module": "Módulo:",
+ "translate-magic-submit": "Procurar",
+ "translate-magic-cm-export": "Exportar",
+ "translate-magic-nothing-to-export": "Não há nada para exportar.",
+ "translate-magic-cm-to-be": "Novo",
+ "translate-magic-cm-current": "Atual",
+ "translate-magic-cm-original": "Original",
+ "translate-magic-cm-comment": "Comentário:",
+ "translate-magic-cm-save": "Gravar",
+ "translate-magic-cm-updatedusing": "Atualizado usando [[Special:AdvancedTranslate|{{int:Translate-magic-pagename}}]]",
+ "translate-magic-cm-savefailed": "Erro ao gravar",
+ "translate-magic-special": "Nomes alternativos de páginas especiais",
+ "translate-magic-words": "Palavras mágicas",
+ "translate-magic-namespace": "Nomes de domínios",
+ "translate-magic-notsaved": "A sua edição não foi gravada!",
+ "translate-magic-errors": "Por favor, corrija {{PLURAL:$1|o seguinte erro|os seguintes erros}} na tradução:",
+ "translate-magic-saved": "As suas alterações foram gravadas com sucesso.",
+ "translate-checks-parameters": "{{PLURAL:$2|O seguinte parâmetro não é usado|Os seguintes parâmetros não são usados}}: <strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-parameters-unknown": "{{PLURAL:$2|O seguinte parâmetro é desconhecido|Os seguintes parâmetros são desconhecidos}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-balance": "Há {{PLURAL:$2|um parênteses irregular|$2 parênteses irregulares}}: <strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links": "{{PLURAL:$2|A seguinte ligação tem|As seguintes $2 ligações têm}} problemas: <strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links-missing": "{{PLURAL:$2|Falta a seguinte ligação|Faltam as seguintes $2 ligações}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-xhtml": "Por favor, corrija {{PLURAL:$2|a seguinte marcação|as seguintes marcações}}:\n<strong>$1</strong>",
+ "translate-checks-plural": "A definição usa <nowiki>{{PLURAL:}}</nowiki>, mas a tradução não.",
+ "translate-checks-plural-forms": "<nowiki>{{PLURAL:}}</nowiki> recebeu {{PLURAL:$1|uma grafia|$1 grafias}}, mas {{PLURAL:$2|só é permitida uma grafia|são permitidas $2 grafias}} (excluindo as formas 0= e 1=).",
+ "translate-checks-plural-dupe": "<nowiki>{{PLURAL:}}</nowiki> tem grafias duplicadas. Quando o singular e o plural têm a mesma grafia, por exemplo em <nowiki>{{PLURAL:$1|URL|URL}}</nowiki> deve usar-se <nowiki>{{PLURAL:$1|URL}}</nowiki>.",
+ "translate-checks-pagename": "Domínio modificado relativamente à definição",
+ "translate-checks-format": "Esta tradução não segue a definição ou tem uma sintaxe inválida: $1",
+ "translate-checks-escape": "As seguintes sequências de escape podem ter sido acidentais: <strong>$1</strong>",
+ "translate-checks-parametersnotequal": "O número de parâmetros é {{PLURAL:$1|$1}} mas devia ser {{PLURAL:$2|$2}}.",
+ "translate-checks-malformed": "<nowiki>$1</nowiki> está incorreto.",
+ "translate-checks-fudforum-syntax": "Use <nowiki>$1</nowiki> em vez de <nowiki>$2</nowiki> neste projeto.",
+ "translate-pref-nonewsletter": "Não me enviar ''newsletters'' por correio electrónico",
+ "translate-pref-editassistlang": "Línguas de auxílio:",
+ "prefs-translate": "Opções de tradução",
+ "translate-pref-editassistlang-help": "Lista de códigos de língua separados por vírgulas.\nQuando estiver a traduzir, ser-lhe-ão também apresentadas as traduções para estas línguas.\nA lista por omissão depende da sua língua.",
+ "translate-pref-editassistlang-bad": "Código de língua inválido na lista:\n<nowiki>$1</nowiki>.",
+ "right-translate": "Editar usando a interface de tradução",
+ "right-translate-manage": "Gerir grupos de mensagens",
+ "action-translate-manage": "gerir grupos de mensagens",
+ "right-translate-import": "Importar traduções ''off-line''",
+ "action-translate-import": "importar traduções ''off-line''",
+ "right-translate-messagereview": "Rever traduções",
+ "right-translate-groupreview": "Alterar o estado do fluxo de trabalho de grupos de mensagens",
+ "translate-rc-translation-filter": "Filtro de traduções:",
+ "translate-rc-translation-filter-no": "Não filtrar",
+ "translate-rc-translation-filter-only": "Mostrar apenas traduções",
+ "translate-rc-translation-filter-filter": "Não mostrar traduções",
+ "translate-rc-translation-filter-site": "Só mudanças às mensagens deste sítio",
+ "translationstats": "Estatísticas de tradução",
+ "translate-stats-edits": "Edições",
+ "translate-stats-users": "Tradutores",
+ "translate-stats-registrations": "Registos",
+ "translate-stats-reviews": "Revisões",
+ "translate-stats-reviewers": "Revisores",
+ "translate-statsf-intro": "Pode gerar estatísticas simples usando este formulário.\nTodos os valores têm limites máximos e mínimos.",
+ "translate-statsf-options": "Opções do gráfico",
+ "translate-statsf-width": "Largura em pixels:",
+ "translate-statsf-height": "Altura em pixels:",
+ "translate-statsf-days": "Período de tempo em dias:",
+ "translate-statsf-start": "Data de início:",
+ "translate-statsf-scale": "Escala:",
+ "translate-statsf-scale-months": "Meses",
+ "translate-statsf-scale-weeks": "Semanas",
+ "translate-statsf-scale-days": "Dias",
+ "translate-statsf-scale-hours": "Horas",
+ "translate-statsf-count": "Medida:",
+ "translate-statsf-count-edits": "Número de edições",
+ "translate-statsf-count-users": "Tradutores ativos",
+ "translate-statsf-count-registrations": "Utilizadores novos",
+ "translate-statsf-count-reviews": "Revisões de traduções",
+ "translate-statsf-count-reviewers": "Revisores",
+ "translate-statsf-language": "Lista de códigos de língua, separados por vírgulas:",
+ "translate-statsf-group": "Lista de códigos de grupo, separados por vírgulas:",
+ "translate-statsf-submit": "Gerar gráfico",
+ "translate-tag-category": "Páginas traduzíveis",
+ "translate-tag-page-desc": "Tradução da página wiki [[$2|$1]] de $3 ($4).",
+ "translate-sidebar-alltrans": "Noutras línguas",
+ "translations": "Todas as traduções",
+ "translations-summary": "Introduza abaixo o nome de uma mensagem para ver todas as traduções disponíveis.",
+ "translate-translations-no-message": "\"$1\" não é uma mensagem traduzível",
+ "translate-translations-none": "Não existem traduções para \"$1\"",
+ "translate-translations-count": "{{PLURAL:$1|Foi encontrada uma tradução|Foram encontradas $1 traduções}}.",
+ "translate-translations-fieldset-title": "Mensagem",
+ "translate-translations-messagename": "Nome:",
+ "translate-translations-project": "Projeto:",
+ "translate-translations-including-no-param": "Por favor, especifique uma chave de mensagem válida no parâmetro subpágina",
+ "translate-translations-history-short": "h",
+ "languagestats": "Estatísticas de tradução por língua",
+ "languagestats-summary": "Esta página mostra estatísticas de tradução para todos os grupos de mensagens de uma língua.",
+ "messagegroupstats-summary": "Esta página mostra as estatísticas de grupo de mensagens.",
+ "languagestats-stats-for": "Estatísticas de tradução para $1 ($2).",
+ "languagestats-recenttranslations": "traduções recentes",
+ "translate-langstats-incomplete": "Algumas das estatísticas desta página estão incompletas. Por favor recarregue a página para obter mais estatísticas.",
+ "translate-langstats-expand": "expandir",
+ "translate-langstats-collapse": "ocultar",
+ "translate-langstats-expandall": "expandir todas",
+ "translate-langstats-collapseall": "recolher todas",
+ "translate-language-code": "Código de língua",
+ "translate-language-code-field-name": "Código de língua:",
+ "translate-suppress-complete": "Suprimir os grupos de mensagens completamente traduzidos",
+ "translate-ls-noempty": "Suprimir os grupos de mensagens sem tradução iniciada",
+ "translate-language": "Língua",
+ "translate-total": "Mensagens (total)",
+ "translate-untranslated": "Não traduzidas",
+ "translate-percentage-complete": "Progresso",
+ "translate-percentage-fuzzy": "Desactualizadas",
+ "translate-languagestats-overall": "Todos os grupos de mensagens em conjunto",
+ "translate-ls-submit": "Mostrar estatísticas",
+ "translate-ls-column-group": "Grupo de mensagens",
+ "translate-mgs-pagename": "Estatísticas do grupo de mensagens",
+ "translate-mgs-fieldset": "Preferências",
+ "translate-mgs-group": "Grupo de mensagens:",
+ "translate-mgs-nocomplete": "Ocultar línguas com traduções completas",
+ "translate-mgs-noempty": "Ocultar línguas sem traduções",
+ "translate-mgs-submit": "Ver estatísticas",
+ "translate-mgs-column-language": "Língua",
+ "translate-mgs-totals": "Todas as línguas em conjunto",
+ "translate-mgs-invalid-group": "O grupo especificado ($1) não existe.",
+ "translate-mgs-nothing": "Sem dados para as estatísticas solicitadas.",
+ "supportedlanguages": "Línguas suportadas",
+ "supportedlanguages-summary": "Esta página lista todas as línguas suportadas pela {{SITENAME}},\ncom os nomes dos tradutores de cada língua.\nQuanto mais traduções feitas por um tradutor, maior será o seu nome.\nA cor do sublinhado indica quão recentemente o tradutor esteve ativo aqui.",
+ "supportedlanguages-colorlegend": "Legenda das cores: última tradução há $1 dias.",
+ "supportedlanguages-translators": "{{PLURAL:$2|{{GENDER:$3|Tradutor|Tradutora}}|Tradutores}}: $1",
+ "supportedlanguages-recenttranslations": "traduções recentes",
+ "supportedlanguages-count": "$1 {{PLURAL:$1|língua|línguas}} no total.",
+ "supportedlanguages-activity": "$1: $2 {{PLURAL:$2|edição|edições}} - a última edição foi há $3 {{PLURAL:$3|dia|dias}}",
+ "translate-save": "Gravar ($1)",
+ "translate-jssti-add": "Adicionar à lista",
+ "managemessagegroups": "Administração de grupos de mensagens",
+ "translate-smg-notallowed": "Não tem os privilégios necessários para esta operação.",
+ "translate-smg-nochanges": "Não há alterações para processar.",
+ "translate-smg-submit": "Enviar alterações para processamento",
+ "translate-smg-submitted": "Foram atualizadas definições de mensagens. As alterações estão a ser processadas em segundo plano.",
+ "translate-smg-more": "Haverá mais mudanças no processo depois de submeter estas alterações.",
+ "translate-smg-left": "Conteúdo da mensagem na wiki",
+ "translate-smg-right": "Alterações recebidas",
+ "translate-manage-import-diff": "Mensagem $1 | Ações: $2",
+ "translate-manage-import-new": "Nova mensagem $1",
+ "translate-manage-import-deleted": "Mensagem eliminada $1",
+ "translate-manage-action-import": "Importar",
+ "translate-manage-action-conflict": "Importar e marcar",
+ "translate-manage-action-ignore": "Ignorar",
+ "translate-manage-action-fuzzy": "Importar e marcar para revisão",
+ "translate-manage-nochanges": "Não há alterações nas definições das mensagens deste grupo.",
+ "translate-manage-nochanges-other": "Não houve alterações para esta língua.\nUse a ligação abaixo para voltar aos detalhes do grupo.",
+ "translate-manage-inconsistent": "Foi detectada uma inconsistência no pedido.\nPor favor, verifique se houve alterações e tente novamente.\nDetalhes: $1.",
+ "translate-manage-toolong": "O tempo máximo de $1 {{PLURAL:$1|segundo|segundos}} de processamento foi excedido.\nPor favor, reenvie o formulário para continuar o processamento.",
+ "translate-manage-import-summary": "Importando uma nova versão de fonte externa",
+ "translate-manage-conflict-summary": "Importando uma nova versão de fonte externa.\nVerifique-a, por favor.",
+ "translate-manage-fuzzy-summary": "A definição da mensagem sofreu alterações",
+ "translate-manage-submit": "Executar",
+ "translate-manage-intro-other": "Abaixo está uma lista de alterações de traduções na língua $1.\nPor favor, reveja as alterações e escolha a ação que quer tomar para cada atualização.\nSe escolher ignorar as alterações, esta ação será somente temporária.",
+ "translate-manage-import-ok": "Importado: $1",
+ "translate-manage-import-done": "Importação completa!",
+ "importtranslations": "Importar traduções",
+ "translate-import-from-local": "Carregamento de ficheiro local:",
+ "translate-import-load": "Carregar ficheiro",
+ "translate-import-err-dl-failed": "Não foi possível obter o ficheiro:\n$1",
+ "translate-import-err-ul-failed": "Carregamento do ficheiro falhou",
+ "translate-import-err-invalid-title": "O nome de ficheiro fornecido <nowiki>$1</nowiki> era inválido.",
+ "translate-import-err-no-such-file": "O ficheiro <nowiki>$1</nowiki> não existe ou não foi carregado localmente.",
+ "translate-import-err-stale-group": "O grupo de mensagens a que este ficheiro pertence não existe.",
+ "translate-import-err-no-headers": "O ficheiro não é um ficheiro Gettext válido, com o formato da extensão Translate:\nNão foi possível determinar o grupo e a língua a partir dos cabeçalhos.",
+ "translate-import-err-warnings": "Este ficheiro não é válido.\nCertifique-se de que o seu editor não remove os campos msgctxt.\nDetalhes: $1",
+ "translate-js-summary": "Sumário:",
+ "translate-js-save": "Gravar",
+ "translate-js-next": "Gravar e abrir a seguinte",
+ "translate-js-nonext": "Esta foi a última mensagem nesta página.",
+ "translate-js-skip": "Saltar para a seguinte",
+ "translate-js-save-failed": "A gravação falhou. Por favor, informe-nos deste erro.",
+ "translate-js-history": "Histórico de traduções",
+ "translate-js-support": "Fazer pergunta",
+ "translate-js-support-title": "Peça ajuda se não existir informação suficiente para traduzir esta mensagem corretamente.",
+ "translate-js-support-unsaved-warning": "Há traduções que ainda não foram gravadas.",
+ "translate-gs-pos": "Pos.",
+ "translate-gs-code": "Código",
+ "translate-gs-continent": "Continente",
+ "translate-gs-speakers": "Falantes",
+ "translate-gs-score": "Pont.",
+ "translate-gs-multiple": "Múltiplos",
+ "translate-gs-count": "Contagem",
+ "translate-gs-total": "Total",
+ "translate-gs-avgscore": "Pont. média",
+ "translate-documentation-language": "ajuda de tradução",
+ "translate-searchprofile": "Traduções",
+ "translate-searchprofile-tooltip": "Pesquisar todas as traduções",
+ "translate-search-languagefilter": "Filtrar por língua:",
+ "translate-search-nofilter": "Não filtrar",
+ "translate-messagereview-submit": "Marcar como revista",
+ "translate-messagereview-progress": "A marcar como revista...",
+ "translate-messagereview-failure": "Erro ao marcar como revista: $1",
+ "translate-messagereview-done": "Revista",
+ "translate-messagereview-reviews": "Revista por {{PLURAL:$1|um utilizador|$1 utilizadores}}",
+ "translate-messagereview-reviewswithyou": "Revista por {{PLURAL:$1|si|$1 utilizadores, incluindo você}}",
+ "api-error-invalidrevision": "A tradução não foi encontrada",
+ "api-error-unknownmessage": "A mensagem não foi encontrada",
+ "api-error-fuzzymessage": "A tradução ainda está sinalizada com FUZZY",
+ "api-error-owntranslation": "Não pode marcar as suas próprias traduções como revistas",
+ "translate-messagereview-no-fuzzy": "Não se podem marcar como revistas traduções sinalizadas com FUZZY",
+ "translate-messagereview-no-own": "Não pode marcar as suas próprias traduções como revistas.",
+ "translate-messagereview-doit": "Marcar esta tradução como revista.",
+ "log-name-translationreview": "Registo de revisão de traduções",
+ "log-description-translationreview": "Registo de todas as revisões de traduções e de grupos de traduções.",
+ "logentry-translationreview-message": "$1 {{GENDER:$2|reviu}} a tradução $3",
+ "logentry-translationreview-group": "$1 {{GENDER:$2|alterou}} o estado das traduções em $4 de $3, de $6 para $7",
+ "group-translate-sandboxed": "Tradutores não aprovados",
+ "group-translate-sandboxed-member": "{{GENDER:$1|tradutor não aprovado|tradutora não aprovada}}",
+ "right-translate-sandboxmanage": "Administrar utilizadores da área de testes",
+ "action-translate-sandboxmanage": "administrar utilizadores da área de testes",
+ "right-translate-sandboxaction": "Executar ações permitidas para utilizadores da área de testes",
+ "action-translate-sandboxaction": "executar ações permitidas para utilizadores da área de testes",
+ "translate-workflow-state-": "(indefinido)",
+ "translate-workflowstatus": "Estado: $1",
+ "translate-workflow-set-do": "Ativar",
+ "translate-workflow-set-doing": "A ativar...",
+ "translate-workflow-set-done": "Terminado!",
+ "translate-workflow-set-error-alreadyset": "O estado solicitado é idêntico ao estado atual.",
+ "translate-workflow-autocreated-summary": "Criação automática de página para o estado \"$1\" do fluxo de trabalho",
+ "translate-stats-workflow": "Estado",
+ "translate-workflowgroup-label": "Estados do fluxo de trabalho",
+ "translate-workflowgroup-desc": "Este grupo de mensagens mostra os estados do fluxo de trabalho das traduções.\nOs estados são definidos na variável de configuração $wgTranslateWorkflowStates.",
+ "translate-dynagroup-recent-label": "Traduções recentes",
+ "translate-dynagroup-recent-desc": "Este grupo de mensagens mostra todas as traduções recentes para esta língua.\nÉ útil sobretudo para as tarefas de revisão.",
+ "translate-dynagroup-additions-label": "Adições recentes",
+ "translate-dynagroup-additions-desc": "Este grupo de mensagens mostra as mensagens novas e modificadas.",
+ "translate-dynagroup-by": "Tradução feita por {{GENDER:$1|$1}}",
+ "translate-dynagroup-byc": "Tradução feita por {{GENDER:$1|$1}} ($2)",
+ "translate-dynagroup-last": "Última modificação feita por {{GENDER:$1|$1}}",
+ "translate-dynagroup-lastc": "Última modificação feita por {{GENDER:$1|$1}} ($2)",
+ "translate-gethelp": "Ajuda",
+ "translate-msggroupselector-projects": "Grupo de mensagens",
+ "translate-msggroupselector-search-placeholder": "Pesquisar grupos",
+ "translate-msggroupselector-search-all": "Todos",
+ "translate-msggroupselector-search-recent": "Recentes",
+ "translate-msggroupselector-view-subprojects": "$1 {{PLURAL:$1|subgrupo|subgrupos}}",
+ "tux-languageselector": "Traduzir para",
+ "tux-tab-all": "Todas",
+ "tux-tab-untranslated": "Não traduzidas",
+ "tux-tab-outdated": "Desatualizadas",
+ "tux-tab-translated": "Traduzidas",
+ "tux-tab-unproofread": "Não revistas",
+ "tux-edit": "Editar",
+ "tux-status-optional": "Opcional",
+ "tux-status-fuzzy": "Desatualizada",
+ "tux-status-proofread": "Revista",
+ "tux-status-translated": "Traduzida",
+ "tux-status-saving": "A gravar...",
+ "tux-status-unsaved": "Não gravada",
+ "tux-editor-placeholder": "A sua tradução",
+ "tux-editor-paste-original-button-label": "Inserir o texto original",
+ "tux-editor-discard-changes-button-label": "Rejeitar alterações",
+ "tux-editor-save-button-label": "Gravar tradução",
+ "tux-editor-skip-button-label": "Saltar para a seguinte",
+ "tux-editor-cancel-button-label": "Cancelar",
+ "tux-editor-confirm-button-label": "Confirmar a tradução",
+ "tux-editor-shortcut-info": "Prima \"$1\" para gravar ou \"$2\" para saltar para a mensagem seguinte ou \"$3\" para outros atalhos.",
+ "tux-editor-edit-desc": "Editar a documentação",
+ "tux-editor-add-desc": "Adicionar documentação",
+ "tux-editor-suggestions-title": "Sugestões",
+ "tux-editor-in-other-languages": "Noutras línguas",
+ "tux-editor-need-more-help": "Precisa de mais ajuda?",
+ "tux-editor-ask-help": "Peça mais informação",
+ "tux-editor-tm-match": "$1% coincidente",
+ "tux-warnings-more": "{{PLURAL:$1|mais $1}}",
+ "tux-warnings-hide": "ocultar",
+ "tux-editor-save-failed": "Erro ao gravar a tradução: $1",
+ "tux-editor-n-uses": "usada $1 {{PLURAL:$1|vez|vezes}}",
+ "tux-editor-message-desc-more": "Ver mais",
+ "tux-editor-message-desc-less": "Ver menos",
+ "tux-editor-clear-translated": "Ocultar traduzidas",
+ "tux-editor-proofreading-mode": "Rever",
+ "tux-editor-translate-mode": "Lista",
+ "tux-editor-proofreading-hide-own-translations": "Ocultar as suas traduções",
+ "tux-editor-proofreading-show-own-translations": "Mostrar as suas traduções",
+ "tux-proofread-action-tooltip": "Marcar como revista",
+ "tux-proofread-edit-label": "Editar",
+ "tux-editor-page-mode": "Página",
+ "tux-editor-outdated-warning": "Esta tradução pode precisar de ser atualizada.",
+ "tux-editor-outdated-warning-diff-link": "Mostrar diferenças",
+ "tux-editor-doc-editor-placeholder": "Documentação da mensagem",
+ "tux-editor-doc-editor-save": "Gravar documentação",
+ "tux-editor-doc-editor-cancel": "Cancelar",
+ "tux-messagetable-more-messages": "mais $1 {{PLURAL:$1|mensagem|mensagens}}",
+ "tux-messagetable-loading-messages": "A carregar {{PLURAL:$1|a mensagem|as mensagens}}.",
+ "tux-message-filter-placeholder": "Filtrar lista",
+ "tux-message-filter-result": "{{PLURAL:$1|Foi encontrado $1 resultado|Foram encontrados $1 resultados}} para \"$2\"",
+ "tux-message-filter-advanced-button": "Pesquisa avançada",
+ "tux-message-filter-optional-messages-label": "Mensagens opcionais",
+ "tux-proofread-translated-by-self": "Traduzida por si",
+ "tux-empty-list-all": "Este grupo de mensagens está vazio",
+ "tux-empty-list-all-guide": "Selecione outro grupo de mensagens para traduzir",
+ "tux-translate-page-no-such-group": "<strong>O grupo indicado não existe.</strong> Selecione outro grupo de mensagens.",
+ "tux-empty-list-translated": "Não há mensagens traduzidas",
+ "tux-empty-list-translated-guide": "Pode ajudar a traduzir",
+ "tux-empty-list-translated-action": "Traduzir",
+ "tux-empty-no-messages-to-display": "Não há mensagens para apresentar.",
+ "tux-empty-there-are-optional": "Há mensagens opcionais não apresentadas na lista",
+ "tux-empty-show-optional-messages": "Mostrar mensagens opcionais",
+ "tux-empty-no-outdated-messages": "Não há mensagens desatualizadas",
+ "tux-empty-nothing-to-proofread": "Não há nada para rever",
+ "tux-empty-you-can-help-providing": "Pode ajudar, acrescentando traduções novas",
+ "tux-empty-nothing-new-to-proofread": "Não há nada de novo para rever",
+ "tux-empty-you-can-review-already-proofread": "Pode rever traduções já revistas por outros.",
+ "tux-empty-list-other": "Não há nada para traduzir",
+ "tux-empty-list-other-guide": "Pode ajudar na revisão das traduções existentes",
+ "tux-empty-list-other-action": "Rever traduções",
+ "tux-empty-list-other-link": "Mostrar todas as mensagens",
+ "tux-editor-close-tooltip": "Fechar",
+ "tux-editor-expand-tooltip": "Expandir",
+ "tux-editor-collapse-tooltip": "Recolher",
+ "tux-editor-message-tools-history": "Histórico",
+ "tux-editor-message-tools-delete": "Eliminar",
+ "tux-editor-message-tools-translations": "Todas as traduções",
+ "tux-editor-loading": "A carregar…",
+ "translate-search-more-languages-info": "mais $1 {{PLURAL:$1|língua|línguas}}",
+ "translate-statsbar-tooltip": "$1% traduzidas, $2% revistas",
+ "translate-statsbar-tooltip-with-fuzzy": "$1% traduzidas, $2% revistas, $3% desatualizadas",
+ "translate-search-more-groups-info": "mais $1 {{PLURAL:$1|grupo|grupos}}",
+ "translate-ulsdep-title": "Erro de configuração",
+ "translate-ulsdep-body": "A tradução da extensão depende da [https://www.mediawiki.org/wiki/Extension:UniversalLanguageSelector extensão Seletor Universal de Idiomas].",
+ "tux-session-expired": "Não está mais autenticado. Por favor, inicie a sessão num outro separador. Em alternativa, faça uma cópia das traduções que não foram gravadas, inicie sessão e regresse a esta página."
+}
diff --git a/MLEB/Translate/i18n/core/qqq.json b/MLEB/Translate/i18n/core/qqq.json
new file mode 100644
index 00000000..1c812c8c
--- /dev/null
+++ b/MLEB/Translate/i18n/core/qqq.json
@@ -0,0 +1,401 @@
+{
+ "@metadata": {
+ "authors": [
+ "Amire80",
+ "An13sa",
+ "Ans",
+ "Assele",
+ "Darth Kule",
+ "Dbc334",
+ "Dj",
+ "Emperyan",
+ "EugeneZelenko",
+ "Fryed-peach",
+ "Gomada",
+ "Jon Harald Søby",
+ "Kghbln",
+ "Lejonel",
+ "Lloffiwr",
+ "McDutchie",
+ "Meno25",
+ "Mormegil",
+ "Nemo bis",
+ "Nike",
+ "Purodha",
+ "Raymond",
+ "SPQRobin",
+ "Sanbec",
+ "Shirayuki",
+ "Siebrand",
+ "The Evil IP address",
+ "Toliño",
+ "Umherirrender",
+ "Wizardist",
+ "פוילישער",
+ "아라",
+ "555",
+ "Liuxinyu970226",
+ "Tacsipacsi"
+ ]
+ },
+ "translate": "{{doc-special|Translate}}\nIt is the verb \"to translate\".\n{{Identical|Translate}}",
+ "translate-desc": "{{desc|name=Translate|url=http://www.mediawiki.org/wiki/Extension:Translate}}",
+ "translate-taskui-view": "Task in [[Special:Translate]] on action Translate.\n{{Identical|Show all messages}}",
+ "translate-taskui-untranslated": "Task in [[Special:Translate]] on action Translate",
+ "translate-taskui-optional": "Task in [[Special:Translate]] on action Translate.\n{{Identical|Show optional message}}",
+ "translate-taskui-acceptqueue": "Task in [[Special:Translate]] on action Review - only shown to users who are allowed to accept translations\n\nGoes together with {{msg-mw|translate-taskui-reviewall}}",
+ "translate-taskui-reviewall": "Task in [[Special:Translate]] on action Review",
+ "translate-taskui-export-to-file": "Task in [[Special:Translate]] on action Export",
+ "translate-taskui-export-as-po": "Task in [[Special:Translate]] on action Export",
+ "translate-taction-translate": "A tab text used in Special pages [[Special:Translate]], [[Special:LanguageStats]] and [[Special:MessageGroupStats]].\n{{Identical|Translate}}",
+ "translate-taction-proofread": "A tab text used in Special pages [[Special:Translate]], [[Special:LanguageStats]] and [[Special:MessageGroupStats]].\n\nTranslate as a verb.\n{{Identical|Review}}",
+ "translate-taction-lstats": "A tab text used in Special pages [[Special:Translate]], [[Special:LanguageStats]] and [[Special:MessageGroupStats]].\n{{Identical|Language statistics}}",
+ "translate-taction-mstats": "A tab text used in Special pages [[Special:Translate]], [[Special:LanguageStats]] and [[Special:MessageGroupStats]].",
+ "translate-taction-export": "A tab text used in Special pages [[Special:Translate]], [[Special:LanguageStats]] and [[Special:MessageGroupStats]].\n{{Identical|Export}}",
+ "translate-taction-disabled": "Shown instead of the radio buttons for tasks when all tasks related to this action has been disabled.",
+ "translate-page-no-such-language": "Shown when someone requests a language that doesn't exists. Examples:\n* Special:LanguageStats, under the selectors [{{FULLURL:Special:LanguageStats|language=ugagaga}}]\n* Special:Translate until 2013, next to the language dropdown [//translatewiki.net/w/i.php?title=Special:Translate&tux=0&group=out-blockly-0-all&language=ugagaga]",
+ "translate-page-no-such-group": "Shown when someone requests a group that doesn't exists. [{{FULLURL:Special:Translate|group=invalidgroup}} Example].",
+ "translate-page-disabled": "Parameters:\n* $1 - reason that the language has been blacklisted",
+ "translate-language-disabled": "Shown when someone requests a blacklisted language. [{{FULLURL:Special:Translate|group=mediawiki&language=zh-tw}} Example].",
+ "translate-page-settings-legend": "{{Identical|Settings}}",
+ "translate-page-group": "{{Identical|Group}}",
+ "translate-page-language": "{{Identical|Language}}",
+ "translate-page-limit": "{{Identical|Limit}}",
+ "translate-page-limit-option": "Used as option for select box in [[Special:Translate]].\n\nParameters:\n* $1 - number of messages, can be used for GENDER",
+ "translate-submit": "Button text in [[Special:Translate]] on action Translate, action Review and action Export.\n\n{{Identical|Fetch}}",
+ "translate-page-navigation-legend": "{{Identical|Navigation}}",
+ "translate-page-showing": "Information in the page navigation box of the translate special page, [{{canonicalurl:Special:Translate|taction=translate&limit=100&language=en-gb&group=ext-translate-core}} for example].\n*$1 is the number of the first message displayed on the page\n*$2 is the number of the last message displayed on the page\n*$3 is the total number of messages fetched by the program",
+ "translate-page-showing-all": "Information in the page navigation box of the translate special page, [{{canonicalurl:Special:Translate|taction=translate&limit=5000&language=en-gb&group=ext-translate-core}} for example].\n*$1 is the total number of messages fetched by the program",
+ "translate-page-showing-none": "Used in query result page.\n\nSee also:\n* {{msg-mw|Translate-page-showing-all}}\n* {{msg-mw|Translate-page-showing}}\n* {{msg-mw|Translate-page-paging-links}}, {{msg-mw|Translate-prev}} and {{msg-mw|Translate-next}}",
+ "translate-page-paging-links": "{{optional}}\nParameters:\n* $1 - a link which points to the previous page\n* $2 - a link which points to the next page",
+ "translate-next": "{{Identical|Next page}}",
+ "translate-prev": "{{Identical|Previous page}}",
+ "translate-page-description-hasoptional": "Parameters:\n* $1 - a link with {{msg-mw|translate-page-description-hasoptional-open}} as the text",
+ "translate-page-description-hasoptional-open": "Link text for message {{msg-mw|translate-page-description-hasoptional}}\n{{Identical|Show optional message}}",
+ "translate-page-edit": "{{Identical|Edit}}",
+ "translate-ext-url": "Unused at this time. Parameters:\n* $1 - URL\n{{Identical|Website}}",
+ "translate-optional": "{{Identical|Optional}}",
+ "translate-ignored": "{{Identical|Ignore}}",
+ "translate-edit-title": "Used as a tooltip for edit links in lists with translatable messages. Parameters:\n* $1 is the name of the page to be edited.\n{{Identical|Edit}}",
+ "translate-edit-definition": "Heading of infobox containing original message to be translated.",
+ "translate-edit-translation": "Legend for box like {{msg-mw|Translate-edit-definition}} or {{msg-mw|Translate-edit-in-other-languages}}.\n{{Identical|Translation}}",
+ "translate-edit-contribute": "This appears in the parentheses after {{msg-mw|Translate-edit-information}}. It links to the information page in edit mode.\n{{Identical|Contribute}}",
+ "translate-edit-no-information": "Message is used as a hint to translators that documentation for a message without documentation is needed.",
+ "translate-edit-information": "Caption for box which contains information about the message. $1 is {{msg-mw|translate-edit-contribute}}.",
+ "translate-edit-in-other-languages": "Caption for box which contains translation of message in other languages.",
+ "translate-edit-warnings": "Title of the warnings box when editing a message.\nThis box list the problems found in the translation.",
+ "translate-edit-tmmatch-source": "Used as tooltip for the message {{msg-mw|translate-edit-tmmatch}} in the translation suggestions by the server.\n\nParameters:\n* $1 - translation source text",
+ "translate-edit-tmmatch": "This message is displayed in the translation interface when there is suggestions from translation memory.\n\nParameters:\n* $1 - number between 1 and 100\n{{Identical|Match}}",
+ "translate-use-suggestion": "Used as a tooltip for the \"down arrow\" to insert translation suggestions in the translation edit page.",
+ "translate-edit-nopermission": "Followed by link text {{msg-mw|Translate-edit-askpermission}}.",
+ "translate-edit-askpermission": "Used as link text.\n\nPreceded by {{msg-mw|Translate-edit-nopermission}}.",
+ "translate-edit-tag-warning": "{{notranslate}}\nShown when editing translatable pages. Default is empty.",
+ "translate-magic-pagename": "\"Extended\" can as well be understood as \"Extra\" or \"Special\" or \"Advanced\". It refers to the translations of pieces of text such as names of namespaces or special pages, which are not part of normal message or wiki page translation.\n\nUsed in {{msg-mw|Translate-magic-cm-updatedusing}}.",
+ "translate-magic-help": "Description of [[Special:AdvancedTranslate]].\n\n<code>$1</code> is not a parameter; appears as is.",
+ "translate-magic-module": "Label on drop-down box on [[Special:AdvancedTranslate]].\n{{Identical|Module}}",
+ "translate-magic-submit": "Button text in [[Special:AdvancedTranslate]].\n\n{{Identical|Fetch}}",
+ "translate-magic-cm-export": "Button text in [[Special:AdvancedTranslate]].\n\n{{Identical|Export}}",
+ "translate-magic-nothing-to-export": "Error message on [[Special:AdvancedTranslate]].",
+ "translate-magic-cm-to-be": "Column header on [[Special:AdvancedTranslate]].",
+ "translate-magic-cm-current": "Column header on [[Special:AdvancedTranslate]].\n\n{{Identical|Current}}",
+ "translate-magic-cm-original": "Column header on [[Special:AdvancedTranslate]].\n{{Identical|Original}}",
+ "translate-magic-cm-comment": "On [[Special:AdvancedTranslate]].\n\n{{Identical|Comment}}",
+ "translate-magic-cm-save": "Button text on [[Special:AdvancedTranslate]].\n\n{{Identical|Save}}",
+ "translate-magic-cm-updatedusing": "Used as comment(?).\n\nRefers to {{msg-mw|Translate-magic-pagename}}.",
+ "translate-magic-special": "Appears on [[Special:AdvancedTranslate]]",
+ "translate-magic-namespace": "{{Identical|Namespace name}}",
+ "translate-magic-errors": "This message is followed by the error messages.\n\nParameters:\n* $1 - number of error messages, can be used for PLURAL",
+ "translate-checks-parameters": "Warning message from automated syntax check for translators.\n* $1 - parameters\n* $2 - number of parameters\n{{Related|Translate-checks}}",
+ "translate-checks-parameters-unknown": "Warning message from automated syntax check for translators.\n* $1 - parameters\n* $2 - number of parameters\n{{Related|Translate-checks}}",
+ "translate-checks-balance": "This translation warning is displayed if the number of opening brackets (\"[\", \"{\", and \"(\") is different from the number of closing brackets (\"]\", \"}\", and \")\").\n\nParameters:\n* $1 - a list of the unbalanced brackets, for example \"<strong>[]: 1</strong>\" which means that there is one missing closing square brackets\n* $2 - the number of types of parentheses that are unbalanced\n{{Related|Translate-checks}}",
+ "translate-checks-links": "Warning message from automated syntax check for translators. Parameters:\n* $1 - links\n* $2 - number of links\n{{Related|Translate-checks}}",
+ "translate-checks-links-missing": "{{doc-important|Do not translate <code><nowiki><strong><nowiki>$1</nowiki>&lt;nowiki><nowiki></strong></nowiki></code>.}}\nWarning message from automated syntax check for translators. Parameters:\n* $1 - links\n* $2 - number of links\n{{Related|Translate-checks}}",
+ "translate-checks-xhtml": "Warning message from automated syntax check for translators. Parameters:\n* $1 - tags\n* $2 - number of tags\n{{Related|Translate-checks}}",
+ "translate-checks-plural": "Warning message from automated syntax check for translators.\n{{Related|Translate-checks}}",
+ "translate-checks-plural-forms": "Warning message from automated syntax check for translators. Parameters:\n* $1 - number of forms provided\n* $2 - number of forms MediaWiki supports for the language in question\n{{Related|Translate-checks}}",
+ "translate-checks-plural-dupe": "{{doc-important|In <code><nowiki>{{PLURAL:$1|sheep|sheep}}</nowiki></code>, the singular and plural forms should be identical.}}\nWarning message from automated syntax check for translators.\n\n<code>$1</code> is not a parameter; appears as is.\n{{Related|Translate-checks}}",
+ "translate-checks-pagename": "A warning when editing a message.\n\nThis warning indicates that the namespace in the translation does not match the namespace appearing in the message definition (original English message).\n{{Related|Translate-checks}}",
+ "translate-checks-format": "Warning message from automated syntax check for translators. Parameters:\n* $1 - any one of the following messages:\n**{{msg-mw|Translate-checks-parametersnotequal}}\n** {{msg-mw|Translate-checks-malformed}}\n** \"<samp><nowiki>$traItems[1] !== $defItems[1]</nowiki></samp>\" (hard-coded)\n{{Related|Translate-checks}}",
+ "translate-checks-escape": "Unused at this time.\n\nWarning message from automated syntax check for translators.\n* $1 - any one of the following escapes: <code>\\t</code>, <code>\\n</code>, <code>\\'</code>, <code>\\\"</code>\n{{Related|Translate-checks}}",
+ "translate-checks-parametersnotequal": "Warning message from automated syntax check for translators. Parameters:\n* $1 - the number of parameters used in the source message\n* $2 - the number of parameters used in the translated message\n{{Related|Translate-checks}}",
+ "translate-checks-malformed": "Warning message from automated syntax check for translators. Parameters:\n* $1 - malformed time. (Valid time is in \"12:35\" format.)\n{{Related|Translate-checks}}",
+ "translate-checks-fudforum-syntax": "Unused at this time.\n\nWarning message from automated syntax check for translators.\n\n<code>$1</code> and <code>$2</code> are not parameters.\n{{Related|Translate-checks}}",
+ "translate-pref-nonewsletter": "Option in [[Special:Preferences]], 'Misc' tab.",
+ "translate-pref-editassistlang": "Used in [[Special:Preferences]] under the {{msg-mw|prefs-editing}} tab.\n{{Identical|Assistant language}}",
+ "prefs-translate": "Caption of a section at [[Special:Preferences#prefsection-3|Special:Preferences]]",
+ "translate-pref-editassistlang-help": "Used in [[Special:Preferences]], tab Editing.",
+ "translate-pref-editassistlang-bad": "Used as validation result.\n\nParameters:\n* $1 - a language code, not list of codes",
+ "right-translate": "{{doc-right|translate}}",
+ "right-translate-manage": "{{doc-right|translate-manage}}",
+ "action-translate-manage": "{{doc-action|translate-manage}}",
+ "right-translate-import": "{{doc-right|translate-import}}",
+ "action-translate-import": "{{doc-action|translate-import}}",
+ "right-translate-messagereview": "{{doc-right|translate-messagereview}}\n{{Identical|Review translation}}",
+ "right-translate-groupreview": "{{doc-right|translate-groupreview}}",
+ "translate-rc-translation-filter": "Name of filter in [[Special:RecentChanges]]. Gives a user the option to filter out translations, show translations only, or do nothing (default).",
+ "translate-rc-translation-filter-no": "Option for filter in [[Special:RecentChanges]]. Selecting this option results in the filter not doing anything. It is the default value.",
+ "translate-rc-translation-filter-only": "Option for filter in [[Special:RecentChanges]]. Selecting this option results in the filter only showing recent changes that are translations.",
+ "translate-rc-translation-filter-filter": "Option for filter in [[Special:RecentChanges]]. Selecting this option results in the filter not showing any recent changes that are translations.",
+ "translate-rc-translation-filter-site": "Selects changes to MediaWiki-messages without a language code in the [[Special:RecentChanges|recentchanges]].\nFor example MediaWiki:Common.css, but not MediaWiki:Common.css/fr or other messages for specific languages.\nThese messages will only affect the interface on {{SITENAME}}.",
+ "translationstats": "{{doc-special|TranslationStats}}",
+ "translate-stats-edits": "This message is used in the automatically created graph. It's possible that the graph plotting software doesn't support non-Latin scripts correctly.\n\n{{Identical|Edit}}",
+ "translate-stats-users": "This message is used in the automatically created graph. It's possible that the graph plotting software doesn't support non-Latin scripts correctly.\n{{Identical|Translator}}",
+ "translate-stats-registrations": "This refers to statistics on the number of new users on [[Special:TranslationStats]]. It is a label on the graph of the statistics.\n{{Identical|Registration}}",
+ "translate-stats-reviews": "{{Identical|Review}}",
+ "translate-stats-reviewers": "{{Identical|Reviewer}}",
+ "translate-statsf-intro": "Introduction to [[Special:TranslationStats|form]] for generating graph.",
+ "translate-statsf-options": "Header on [[Special:TranslationStats|form]] for generating graph.",
+ "translate-statsf-width": "Field label on [[Special:TranslationStats|form]] for generating graph.",
+ "translate-statsf-height": "Field label on [[Special:TranslationStats|form]] for generating graph.",
+ "translate-statsf-days": "Label in [[Special:TranslationStats]]",
+ "translate-statsf-start": "Label in [[Special:TranslationStats]]\n{{Identical|Start date}}",
+ "translate-statsf-scale": "Used on [[Special:TranslationStats]].",
+ "translate-statsf-scale-months": "Option at [[Special:TranslationStats]].\n{{Identical|Month}}",
+ "translate-statsf-scale-weeks": "Option at [[Special:TranslationStats]].\n{{Identical|Week}}",
+ "translate-statsf-scale-days": "Radio button label on [[Special:TranslationStats|form]] for generating graph.\n{{Identical|Day}}",
+ "translate-statsf-scale-hours": "Radio button label on [[Special:TranslationStats|form]] for generating graph.\n{{Identical|Hour}}",
+ "translate-statsf-count": "Used on [[Special:TranslationStats]].",
+ "translate-statsf-count-edits": "Radio button label on [[Special:TranslationStats|form]] for generating graph.\n{{Identical|Number of edits}}",
+ "translate-statsf-count-users": "Radio button label on [[Special:TranslationStats|form]] for generating graph.",
+ "translate-statsf-count-registrations": "Option at [[Special:TranslationStats]].\n{{Identical|New user}}",
+ "translate-statsf-count-reviews": "Radio button label on [[Special:TranslationStats|form]] for generating graph.",
+ "translate-statsf-count-reviewers": "Radio button label on [[Special:TranslationStats|form]] for generating graph.\n{{Identical|Reviewer}}",
+ "translate-statsf-language": "Field label on [[Special:TranslationStats|form]] for generating graph.",
+ "translate-statsf-group": "Field label on [[Special:TranslationStats|form]] for generating graph.",
+ "translate-statsf-submit": "Submit button label on [[Special:TranslationStats|form]] for generating graph.\n\n{{Identical|Preview}}",
+ "translate-tag-page-desc": "Used as description for the message group in [[Special:Translate]].\n\nParameters:\n* $1 - the page title\n* $2 - link to the translation page <code>Special:MyLanguage/$1</code>, not the source page\n* $3 - source language name\n* $4 - source language code",
+ "translate-sidebar-alltrans": "{{Identical|Otherlanguages}}",
+ "translations": "{{doc-special|Translations}}\n{{Identical|All translations}}",
+ "translations-summary": "Used in [[Special:Translations]].",
+ "translate-translations-no-message": "Error message used in [[Special:Translations]]. Parameters:\n* $1 - page title for the translatable message\nSee also:\n* {{msg-mw|Translate-translations-count}} - if there are one or more translations",
+ "translate-translations-none": "Unused at this time.\n\nUsed in [[Special:Translations]] if no translations exist.\n\nParameters:\n* $1 - Name of the language",
+ "translate-translations-count": "Shown in [[Special:Translations]].\n\nFollowed by the list of translations.\n\nParameters:\n* $1 - number of translations\nSee also:\n* {{msg-mw|Translate-translations-no-message}} - if there are no translations",
+ "translate-translations-fieldset-title": "Name of fieldset in [[Special:Translations]].\n\n{{Identical|Message}}",
+ "translate-translations-messagename": "Used in [[Special:Translations]].\n\n{{Identical|Name}}",
+ "translate-translations-project": "Used in [[Special:Translations]].\n{{Identical|Project}}",
+ "translate-translations-including-no-param": "Shown when using <code>&#x7b;{Special:Translations}}</code>, but a parameter is required, e.g. <code>&#x7b;{Special:Translations/MediaWiki:Mainpagetext}}</code>",
+ "translate-translations-history-short": "Shortest possible abbreviation of \"history\". Used on [[Special:Translations]].",
+ "languagestats": "{{doc-special|LanguageStats}}\n{{Identical|Language statistics}}",
+ "languagestats-summary": "Used in [[Special:LanguageStats]].",
+ "messagegroupstats-summary": "Used in [[Special:MessageGroupStats]]",
+ "languagestats-stats-for": "Used in [[Special:LanguageStats]]. Parameters:\n* $1 - a localised language name\n* $2 - link text {{msg-mw|Languagestats-recenttranslations}}. The link points to [[Special:Translate]] which shows recent translations of the language <code>$1</code>.",
+ "languagestats-recenttranslations": "Used as link text. The link points to [[Special:Translate]] which shows recent translations.\n\nUsed as <code>$2</code> in {{msg-mw|Languagestats-stats-for}}.",
+ "translate-langstats-expand": "{{Doc-actionlink}}\nUsed in [[Special:LanguageStats]] to expand subgroups.\n{{Identical|Expand}}",
+ "translate-langstats-collapse": "{{doc-actionlink}}\nUsed in [[Special:LanguageStats]] to collapse subgroups.\n{{Identical|Collapse}}",
+ "translate-langstats-expandall": "{{doc-actionlink}}\nUsed in [[Special:LanguageStats]] to expand all subgroups.\n\nSee also:\n* {{msg-mw|Translate-langstats-collapseall}}",
+ "translate-langstats-collapseall": "{{doc-actionlink}}\nUsed in [[Special:LanguageStats]] to collapse all subgroups.\n\nSee also:\n* {{msg-mw|Translate-langstats-expandall}}",
+ "translate-language-code": "Name of fieldset in [[Special:LanguageStats]].\n\n{{Identical|Language code}}",
+ "translate-language-code-field-name": "Used in [[Special:LanguageStats]].\n\n{{Identical|Language code}}",
+ "translate-suppress-complete": "Used in [[Special:LanguageStats]].",
+ "translate-language": "Table header at [[Special:LanguageStats]].\n\n{{Identical|Language}}",
+ "translate-total": "Table header at [[Special:LanguageStats]].\n{{Identical|Message}}",
+ "translate-untranslated": "Column header in [[Special:LanguageStats]] for number of untranslated messages in a message group.\n{{Identical|Untranslated}}",
+ "translate-percentage-complete": "Used in [[Special:LanguageStats]].",
+ "translate-percentage-fuzzy": "Used in [[Special:LanguageStats]].\n{{Identical|Outdated}}",
+ "translate-ls-column-group": "Column header in [[Special:LanguageStats]].\n{{Identical|Message group}}",
+ "translate-mgs-pagename": "{{doc-special|MessageGroupStats}}",
+ "translate-mgs-fieldset": "Fieldset label in [[Special:MessageGroupStats]]",
+ "translate-mgs-group": "Label of drop-down box in [[Special:MessageGroupStats]].\n{{Identical|Message group}}",
+ "translate-mgs-nocomplete": "Option in [[Special:MessageGroupStats]]",
+ "translate-mgs-noempty": "Option in [[Special:MessageGroupStats]]",
+ "translate-mgs-submit": "Submit button text",
+ "translate-mgs-column-language": "{{Identical|Language}}",
+ "translate-mgs-totals": "This is used in [[Special:MessageGroupStats]]",
+ "translate-mgs-invalid-group": "Used as error message. Parameters:\n* $1 - target message group name",
+ "supportedlanguages": "{{doc-special|SupportedLanguages}}\n{{Identical|Supported language}}",
+ "supportedlanguages-summary": "Header for [[Special:SupportedLanguages]] page.",
+ "supportedlanguages-colorlegend": "Used on [[Special:SupportedLanguages]]. Parameters:\n* $1 is not a single number, but a series of numbers with different background colors, serving as a legend to match each color with a number of days passed since the last contributed translation. $1 is usually \"0 30 60 90 120 150 180\".\nSee [[Special:SupportedLanguages]] to see the final rendering.",
+ "supportedlanguages-localsummary": "{{notranslate}}\nPlace any site specific message here.",
+ "supportedlanguages-portallink": "{{optional}}\nParameters:\n* $1 - language code\n* $2 - localized language name\n* $3 - native language name\nSee also:\n* {{msg-mw|Supportedlanguages-portallink-nocldr}}",
+ "supportedlanguages-portallink-nocldr": "{{optional}}\nUsed if the localized language name is available. Parameters:\n* $1 - language code\n* $2 - native language name\nSee also:\n* {{msg-mw|Supportedlanguages-portallink}}",
+ "supportedlanguages-translators": "Row for a language in [[Special:SupportedLanguages]], under the respective header.\n* $1 - the list of translators names\n* $2 - the number of translators listed\n* $3 - username for GENDER support when there is only one translator\n{{Identical|Translator}}",
+ "supportedlanguages-recenttranslations": "Link on [[Special:SupportedLanguages]] to [[Special:RecentChanges]].",
+ "supportedlanguages-count": "On [[Special:SupportedLanguages]]\n*$1 is the total number of supported languages.",
+ "supportedlanguages-activity": "Used as tooltip text for username in users list, to show user's activity.\n\nSee [{{canonicalurl:Special:SupportedLanguages}}#fr example].\n\nParameters:\n* $1 - username\n* $2 - number of edits the user made\n* $3 - number of days",
+ "translate-save": "Used as label for the Submit button. Parameters:\n* $1 - language name, or {{msg-mw|Translate-documentation-language}}\n{{Identical|Save}}",
+ "translate-jssti-add": "Name of button in [[Special:Preferences]], tab Editing.",
+ "managemessagegroups": "{{doc-special|ManageMessageGroups}}",
+ "translate-smg-notallowed": "Wikitext error message in [[Special:ManageMessageGroups]]",
+ "translate-smg-nochanges": "Wikitext information message in [[Special:ManageMessageGroups]]",
+ "translate-smg-submit": "Button label in [[Special:ManageMessageGroups]]",
+ "translate-smg-submitted": "Confirmation wikitext information message in [[Special:ManageMessageGroups]]",
+ "translate-smg-more": "\"to process\" is an infinitive verb - changes that will have to be processed.",
+ "translate-smg-left": "Label for first diff column in [[Special:ManageMessageGroups]]",
+ "translate-smg-right": "Label for last diff column in [[Special:ManageMessageGroups]]",
+ "translate-manage-import-diff": "See screenshot [[File:Manage-2.png|150px|right|Group management interface]].\nVariables:\n*$1 - Message name\n*$2 - radio buttons\n**{{msg-mw|Translate-manage-action-import}}\n**{{msg-mw|Translate-manage-action-conflict}}\n**{{msg-mw|Translate-manage-action-ignore}}",
+ "translate-manage-import-new": "Parameters:\n* $1 - message ID, enclosed in <code><nowiki><code></nowiki></code> tag",
+ "translate-manage-import-deleted": "Parameters:\n* $1 - message ID, enclosed in <code><nowiki><code></nowiki></code> tag",
+ "translate-manage-action-import": "Used in the group management interface.\n{{doc-screenshot|Manage-4.png|twn}}\n{{Identical|Import}}",
+ "translate-manage-action-conflict": "Used in the group management interface. {{doc-screenshot|Manage-4.png|twn}}\n\nfuzzy = mark translations for review/update.",
+ "translate-manage-action-ignore": "Used in the group management interface. {{doc-screenshot|Manage-4.png|twn}}\n{{Identical|Ignore}}",
+ "translate-manage-action-fuzzy": "Used in the group management interface. {{doc-screenshot|Manage-4.png|twn}}\n\nfuzzy = mark translations for review",
+ "translate-manage-inconsistent": "Parameters:\n* $1 - a string (key name?) e.g. action-changed-XXXX",
+ "translate-manage-toolong": "Parameters:\n* $1 - number of seconds, can be used for PLURAL",
+ "translate-manage-import-summary": "Used as edit summary.",
+ "translate-manage-submit": "Used in the group management interface.\n{{doc-screenshot|Manage-3.png|twn}}\n{{Identical|Execute}}",
+ "translate-manage-intro-other": "[[File:Manage-2.png|150px|right|Group management interface]]\nIntroduction to special page. See screenshot. Parameters:\n* $1 is a language name.",
+ "translate-manage-import-ok": "Message given when a translation has been imported on Special:ImportTranslations. Parameters:\n* $1 is the target page name for the translation.",
+ "translate-manage-import-done": "Message given when actions on SpeciaL:ImportTranslations have completed.",
+ "importtranslations": "{{doc-special|ImportTranslations}}\n{{doc-screenshot|Import-1.png|twn}}",
+ "translate-import-from-local": "Used in [[Special:ImportTranslations]]. {{doc-screenshot|Import-1.png|twn}}",
+ "translate-import-load": "Used in [[Special:ImportTranslations]].\n{{doc-screenshot|Import-1.png|twn}}\n{{Identical|Load file}}",
+ "translate-import-err-dl-failed": "Used as error message in [[Special:ImportTranslations]]. Parameters:\n* $1 - error message\n{{Related|Translate-import-err}}",
+ "translate-import-err-ul-failed": "Used as error message in [[Special:ImportTranslations]].\n{{Related|Translate-import-err}}",
+ "translate-import-err-invalid-title": "Used as error message in [[Special:ImportTranslations]]. Parameters:\n* $1 - filename\n{{Related|Translate-import-err}}",
+ "translate-import-err-no-such-file": "Used as error message in [[Special:ImportTranslations]]. Parameters:\n* $1 - filename\n{{Related|Translate-import-err}}",
+ "translate-import-err-stale-group": "Used as error message in [[Special:ImportTranslations]].\n{{Related|Translate-import-err}}",
+ "translate-import-err-no-headers": "Used as error message in [[Special:ImportTranslations]].\n{{Related|Translate-import-err}}",
+ "translate-import-err-warnings": "Used as error message in [[Special:ImportTranslations]]. Parameters:\n* $1 - details\n{{Related|Translate-import-err}}",
+ "translate-js-summary": "Label for summary field in translation editor.\n{{Identical|Summary}}",
+ "translate-js-save": "Button in translation editor which saves the content and closes the dialog.\n{{Identical|Save}}",
+ "translate-js-next": "next refers to next message in the message list",
+ "translate-js-nonext": "This is a JavaScript popup (alert) when user clicks \"Save and open next\" and there is no next message.",
+ "translate-js-skip": "A button together with Save and Save an open next. Goes to the next message without saving.",
+ "translate-js-save-failed": "If there was unknown error while submitting a translation, user gets this message in JavaScript popup (alert).",
+ "translate-js-support-unsaved-warning": "A warning shown in a dialog box if a user tries to close a page without saving a translation written .",
+ "translate-gs-pos": "Used in wiki tables for localisation statistics as a column header for 'Position' abbreviated. See [[Project:MediaWiki localisation in the 50 most spoken languages|example]]",
+ "translate-gs-code": "Used in wiki tables for localisation statistics as a column header for language code. See [[Project:MediaWiki localisation in the 50 most spoken languages|example]]\n{{Identical|Code}}",
+ "translate-gs-continent": "Used in wiki tables for localisation statistics as a column header for the continent where a language is spoken. See [[Project:MediaWiki localisation in the 50 most spoken languages|example]].\n{{Identical|Continent}}",
+ "translate-gs-speakers": "Used in wiki tables for localisation statistics as a column header for the number of speakers of a language. See [[Project:MediaWiki localisation in the 50 most spoken languages|example]]",
+ "translate-gs-score": "Used in wiki tables for localisation statistics as a column header for the weighted score of the localisation of a language. See [[Project:MediaWiki localisation in the 50 most spoken languages|example]]\n{{Identical|Score}}",
+ "translate-gs-multiple": "Used in wiki tables for localisation statistics as a value in the Continent column when a language is spoken on more than one continent . See [[Project:MediaWiki localisation in the 50 most spoken languages|example]]",
+ "translate-gs-count": "Used in summary wiki tables for localisation statistics as a column header for the number of languages on a continent in the table above it. See [[Project:MediaWiki localisation in the 50 most spoken languages|example]]\n{{Identical|Count}}",
+ "translate-gs-total": "Used in summary wiki tables for localisation statistics as a row description for the row that contains summarised data for the table. See bottom table on [[Project:MediaWiki localisation in the 50 most spoken languages|example]]\n\n{{Identical|Total}}",
+ "translate-gs-avgscore": "Used in summary wiki tables for localisation statistics as a column header for the average score of languages on a continent in the table above it. See [[Project:MediaWiki localisation in the 50 most spoken languages|example]]",
+ "translate-documentation-language": "This is the name of the message documentation language code (qqq). Follow the rules of your languages and use small first letter if it doesn't capitalize language names always. It might be easier to translate it as \"translation guidelines\" or \"translation help\".\n{{Identical|Message documentation}}",
+ "translate-searchprofile": "Tab in [[Special:Search]]\n{{Identical|Translation}}",
+ "translate-searchprofile-tooltip": "Tooltip for a tab in [[Special:Search]]",
+ "translate-messagereview-submit": "Button label in [[Special:Translate]] review mode.\n\nThis should be consistent with the following messages:\n* {{msg-mw|Translate-messagereview-progress}}\n* {{msg-mw|Translate-messagereview-failure}}\n* {{msg-mw|Translate-messagereview-done}}",
+ "translate-messagereview-progress": "Button label in [[Special:Translate]] review mode. Button is disabled. This is shown very briefly while the acceptance is in progress.",
+ "translate-messagereview-failure": "Button label in [[Special:Translate]] review mode. Button is disabled.\n\nParameters:\n* $1 - one of the following messages:\n** {{msg-mw|api-error-invalidrevision}}\n** {{msg-mw|api-error-unknownmessage}}\n** {{msg-mw|api-error-fuzzymessage}}\n** {{msg-mw|api-error-owntranslation}}",
+ "translate-messagereview-done": "Button label in [[Special:Translate]] review mode. Button is disabled.\n{{Identical|Reviewed}}",
+ "translate-messagereview-reviews": "Status message in [[Special:Translate]] in review mode. Parameters:\n* $1 - the total number of users who reviewed the relevant message\nSee also:\n* {{msg-mw|Translate-messagereview-reviewswithyou}}",
+ "translate-messagereview-reviewswithyou": "Status message in [[Special:Translate]] in review mode. Parameters:\n* $1 - the total number of users who reviewed the relevant message\nSee also:\n* {{msg-mw|Translate-messagereview-reviews}}",
+ "api-error-invalidrevision": "Error message for {{msg-mw|translate-messagereview-failure}}",
+ "api-error-unknownmessage": "Error message for {{msg-mw|translate-messagereview-failure}}",
+ "api-error-fuzzymessage": "Error message for {{msg-mw|translate-messagereview-failure}}",
+ "api-error-owntranslation": "Error message for {{msg-mw|translate-messagereview-failure}}",
+ "translate-messagereview-no-fuzzy": "Tooltip for disabled review button",
+ "translate-messagereview-no-own": "Tooltip for disabled review button",
+ "translate-messagereview-doit": "Tooltip for review button",
+ "group-translate-proofr.css": "{{doc-group|translate-proofr|css}}",
+ "group-translate-proofr.js": "{{doc-group|translate-proofr|js}}",
+ "log-name-translationreview": "{{doc-logpage}}",
+ "logentry-translationreview-message": "{{Logentry|[[Special:Log/translationreview]]}}",
+ "logentry-translationreview-group": "{{Logentry|[[Special:Log/translationreview]]}}\nAdditional parameters:\n* $4 - Localised language name\n* $5 - Label of the message group (unused)\n* $6 - Previous workflow state\n* $7 - New workflow state",
+ "group-translate-sandboxed": "{{doc-group|translate-sandboxed}}",
+ "group-translate-sandboxed-member": "{{doc-group|translate-sandboxed|member}}",
+ "right-translate-sandboxmanage": "{{doc-right|translate-sandboxmanage}}",
+ "action-translate-sandboxmanage": "{{doc-action|translate-sandboxmanage}}",
+ "right-translate-sandboxaction": "{{doc-right|translate-sandboxaction}}",
+ "action-translate-sandboxaction": "{{doc-action|translate-sandboxaction}}",
+ "translate-workflow-state-": "Unselectable select option in [[Special:Translate]] if workflow state editing is on. The dangling hyphen in the message key hints that this state is unset; the actual states have the same key with something after the hyphen.",
+ "translate-workflowstatus": "In [[Special:Translate]] if workflow states are in use, $1 is selector or the current state.\n{{Identical|State}}",
+ "translate-workflow-set-do": "Submit button text when active",
+ "translate-workflow-set-doing": "Submit button text when waiting for reply from server",
+ "translate-workflow-set-done": "Submit button text when submission completed successfully",
+ "translate-workflow-set-error-alreadyset": "An error message shown in a popup box after pressing the {{msg-mw|translate-workflow-set-do}} button.",
+ "translate-workflow-autocreated-summary": "This is an edit summary for the automatic creation of a workflow state page.\n\nParameters:\n* $1 - state",
+ "translate-stats-workflow": "Column header on [[Special:LanguageStats]] and [[Special:MessageGroupStats]]\n{{Identical|State}}",
+ "translate-workflowgroup-desc": "{{doc-important|Do not translate the variable name <code>$wgTranslateWorkflowStates</code>.}}",
+ "translate-dynagroup-recent-label": "Label of a message group",
+ "translate-dynagroup-recent-desc": "Description of a message group.",
+ "translate-dynagroup-additions-label": "Label of a message group",
+ "translate-dynagroup-additions-desc": "Description of a message group.",
+ "translate-dynagroup-by": "Additional information in a translation editor that contains information about the last change.\n\nParameters:\n* $1 - a username\nSee also:\n* {{msg-mw|Translate-dynagroup-byc}}",
+ "translate-dynagroup-byc": "Additional information in a translation editor that contains information about the last change.\n\nParameters:\n* $1 - a username\n* $2 - the edit summary that was provided\nSee also:\n* {{msg-mw|Translate-dynagroup-by}}",
+ "translate-dynagroup-last": "Additional information in a translation editor that contains information about the last change.\n\nParameters:\n* $1 - a username\nSee also:\n* {{msg-mw|Translate-dynagroup-lastc}}",
+ "translate-dynagroup-lastc": "Additional information in a translation editor that contains information about the last change.\n\nParameters:\n* $1 - a username\n* $2 - the edit summary that was provided\nSee also:\n* {{msg-mw|Translate-dynagroup-last}}",
+ "translate-gethelp": "Link to some Translate help page or tutorial.\n{{Identical|Help}}",
+ "translate-msggroupselector-projects": "Title text for the message group breadcrumb.\n{{Identical|Message group}}",
+ "translate-msggroupselector-search-placeholder": "Place holder text for the search box in message group selector. It's supposed to tell the user that the box is for a search for a name of a group.",
+ "translate-msggroupselector-search-all": "Label to display all projects.\n{{Identical|All}}",
+ "translate-msggroupselector-search-recent": "A tab label in the message group selector that shows groups that were recently translated by the user.\n{{Identical|Recent}}",
+ "translate-msggroupselector-view-subprojects": "Label indicating that the current message group contains other groups. Parameters:\n* $1 is number of sub groups",
+ "tux-languageselector": "Label for language selector in [[Special:Translate]].\n{{Identical|Translate}}",
+ "tux-tab-all": "Tab in [[Special:Translate]] new ui to select which messages to show.\n{{Identical|All}}",
+ "tux-tab-untranslated": "Tab in [[Special:Translate]] new ui to select which messages to show.\n{{Identical|Untranslated}}",
+ "tux-tab-outdated": "Tab in [[Special:Translate]] new ui to select which messages to show.\n{{Identical|Outdated}}",
+ "tux-tab-translated": "Tab in the new interface for [[Special:Translate]], to select which kind of messages to show.\n{{Identical|Translated}}",
+ "tux-tab-unproofread": "Tab in [[Special:Translate]] new ui to select which messages to show.\n\n\"Unreviewed\" stands for \"(messages which) have not been reviewed\".\n{{Identical|Unreviewed}}",
+ "tux-edit": "Link in [[Special:Translate]] to open message editor.\n{{Identical|Edit}}",
+ "tux-status-optional": "Status label in [[Special:Translate]] indicating that message should only be translated in special cases.\n{{Identical|Optional}}",
+ "tux-status-fuzzy": "Status label in [[Special:Translate]] indicating translation needs updating.\n{{Identical|Outdated}}",
+ "tux-status-proofread": "Status label in [[Special:Translate]] indicating that you have reviewed the translation.\n{{Identical|Reviewed}}",
+ "tux-status-translated": "Status label in [[Special:Translate]] indicating that a message is translated. An adjective that refers to a message.\n{{Identical|Translated}}",
+ "tux-status-saving": "Status label in [[Special:Translate]] indicating that the translation is being saved.\n{{Identical|Saving}}",
+ "tux-status-unsaved": "Status label in [[Special:Translate]] indicating that the translation is not saved yet.",
+ "tux-editor-placeholder": "Placeholder text for the translation editor textbox",
+ "tux-editor-paste-original-button-label": "Label for a button that pastes the text in the source language to the translation editor.",
+ "tux-editor-discard-changes-button-label": "Label for a button that discards the changes made to a translation and restores the saved version.",
+ "tux-editor-save-button-label": "Label for save translation button",
+ "tux-editor-skip-button-label": "Label for skip button",
+ "tux-editor-cancel-button-label": "Label for cancel button.\nPressing the button hides the message editor without saving and marks the message internally as \"hard\".\n{{Identical|Cancel}}",
+ "tux-editor-confirm-button-label": "Label for confirm button",
+ "tux-editor-shortcut-info": "A help text for the keyboard shortcuts. Parameters:\n* $1 - shortcut key for save button\n* $2 - shortcut key for skip button\n* $3 - \"ALT\"",
+ "tux-editor-edit-desc": "Text for the link to edit message documentation.\n{{Identical|Edit description}}",
+ "tux-editor-add-desc": "Text for the link to add message documentation when it doesn't exist",
+ "tux-editor-suggestions-title": "Title text for translation memory suggestions.\n{{Identical|Suggestion}}",
+ "tux-editor-in-other-languages": "Title text for suggestions from other languages.\n{{Identical|Otherlanguages}}",
+ "tux-editor-need-more-help": "Help text label",
+ "tux-editor-ask-help": "Link text for more information",
+ "tux-editor-tm-match": "Text showing the quality of suggestion in percentage. Parameters:\n* $1 - a value less than 100\n{{Identical|Match}}",
+ "tux-warnings-more": "A label for a small tab above the edit area, clicking on which shows more warnings.\n* $1 - the number of additional warnings that will be shown\n{{Identical|More}}",
+ "tux-warnings-hide": "A label for a small tab above the warnings about the edit area, clicking on which hides the warnings.\n{{Identical|Hide}}",
+ "tux-editor-save-failed": "An error shown above the edit box.\n* $1 - the warning that the API returns",
+ "tux-editor-n-uses": "Link text in the translation editor which tells how many times the same string was suggested as translation from the translation memory. $1 is a number.",
+ "tux-editor-message-desc-more": "{{doc-actionlink}}\nLink text for expanding long message documentation.\n\nSee also:\n* {{msg-mw|Tux-editor-message-desc-less}}\n{{Identical|View more}}",
+ "tux-editor-message-desc-less": "{{doc-actionlink}}\nLink text for collapsing long message documentation.\n\nSee also:\n* {{msg-mw|Tux-editor-message-desc-more}}",
+ "tux-editor-clear-translated": "Label for the button that appears at the footer of the translation editor.\nPressing the button clears all the messages that were translated from the page.",
+ "tux-editor-proofreading-mode": "Label for the button that appears at the footer of the translation editor.\nPressing the button goes to the review mode.\n\nTranslate as a verb.\n{{Identical|Review}}",
+ "tux-editor-translate-mode": "Label for the button that appears at the footer of the translation editor.\nPressing the button goes to the translation mode.\n{{Identical|List}}",
+ "tux-editor-proofreading-hide-own-translations": "A label for a button that appears at the bottom of the translation editor in review mode.\nPressing the button hides the user's own translations from the list.\n\nSee also:\n* {{msg-mw|Tux-editor-proofreading-show-own-translations}}",
+ "tux-editor-proofreading-show-own-translations": "A label for a button that appears at the bottom of the translation editor in review mode.\nPressing the button shows the user's own translations in the list.\n\nSee also:\n* {{msg-mw|Tux-editor-proofreading-hide-own-translations}}",
+ "tux-proofread-action-tooltip": "Used as a tooltip for the review button in review mode.\n{{Identical|Mark as reviewed}}",
+ "tux-proofread-edit-label": "Used as a label that appears near the translation button in review mode.\nPressing the button enters translation mode.\n\nThe message {{msg-mw|tux-proofread-action-tooltip}} is used as a tooltip for the button near it.\n{{Identical|Edit}}",
+ "tux-editor-page-mode": "Label for the button that appears at the footer of the translation editor.\nPressing the button goes to the page mode.\n{{Identical|Page}}",
+ "tux-editor-outdated-warning": "Used as warning message.\n\nThis message is followed by the link which is labeled {{msg-mw|tux-editor-outdated-warning-diff-link}}.",
+ "tux-editor-outdated-warning-diff-link": "Used as link text.\n\nThis message follows the warning message {{msg-mw|Tux-editor-outdated-warning}}.",
+ "tux-editor-doc-editor-placeholder": "A placeholder that appears in the message documentation editor.\n{{Identical|Message documentation}}",
+ "tux-editor-doc-editor-save": "A button that saves the documentation string.",
+ "tux-editor-doc-editor-cancel": "A Cancel button that doesn't save the documentation string.\n{{Identical|Cancel}}",
+ "tux-messagetable-more-messages": "Text showing number of messages to be loaded in translation message table\n* $1 - number of messages",
+ "tux-messagetable-loading-messages": "A progress text saying messages are being loaded\n* $1 - number of messages",
+ "tux-message-filter-placeholder": "Placeholder text for the message table filter search box. \"Filter\" is an imperative verb, so the message means \"Filter the list\", and not \"List of filters\".",
+ "tux-message-filter-result": "Search result for filtering the message table\n* $1 - number of results\n* $2 - query string",
+ "tux-message-filter-advanced-button": "Button label for searching the messages using [[Special:SearchTranslations]].\n{{Identical|Advanced search}}",
+ "tux-message-filter-optional-messages-label": "A label for a checkbox. Checking the box causes message editor to show optional messages.",
+ "tux-proofread-translated-by-self": "A small notification that appears in a review box, saying that the message was translated by the current user.\n\nSee also:\n* {{msg-mw|Translate-messagereview-reviewswithyou}}",
+ "tux-empty-list-all": "{{Tuxspec|7}} This is a heading.",
+ "tux-empty-list-all-guide": "{{Tuxspec|7}} This is a secondary guide text.",
+ "tux-translate-page-no-such-group": "An error message that appears about the group selector on Special:Translate when an invalid group was requested.",
+ "tux-empty-list-translated": "{{Tuxspec|7}} This is a heading.",
+ "tux-empty-list-translated-guide": "{{Tuxspec|7}} This is a secondary guide text.",
+ "tux-empty-list-translated-action": "{{Tuxspec|7}} This is an action button.\n{{Identical|Translate}}",
+ "tux-empty-no-messages-to-display": "{{Tuxspec|7}} Appears when there are no messages to show in the messages list.",
+ "tux-empty-there-are-optional": "{{Tuxspec|7}} A subtitle for {{msg-mw|tux-empty-no-messages-to-display}}.",
+ "tux-empty-show-optional-messages": "{{Tuxspec|7}} A link shown below {{msg-mw|tux-empty-no-messages-to-display}}.\nClicking the link enables the optional messages.\n{{Identical|Show optional message}}",
+ "tux-empty-no-outdated-messages": "{{Tuxspec|7}} A heading displayed when there are no outdated messages.\n\nSee also:\n* {{msg-mw|Tux-tab-outdated}}",
+ "tux-empty-nothing-to-proofread": "{{Tuxspec|7}} A heading displayed when there are no messages to review.\n\nSee also:\n* {{msg-mw|Tux-empty-nothing-new-to-proofread}}",
+ "tux-empty-you-can-help-providing": "{{Tuxspec|7}} A subtitle for {{msg-mw|tux-empty-no-outdated-messages}}.",
+ "tux-empty-nothing-new-to-proofread": "{{Tuxspec|7}} A heading displayed when there no messages that were not reviewed already.\n\nSee also:\n* {{msg-mw|Tux-empty-nothing-to-proofread}}",
+ "tux-empty-you-can-review-already-proofread": "A subtitle for {{msg-mw|tux-empty-nothing-new-to-proofread}}.\n{{Tuxspec|7}} (This subtitle is in the same position as the grey one there.)",
+ "tux-empty-list-other": "{{Tuxspec|7}} This is a heading.\n{{Identical|Nothing to translate}}",
+ "tux-empty-list-other-guide": "{{Tuxspec|7}} This is a secondary guide text.",
+ "tux-empty-list-other-action": "{{Tuxspec|7}} This is an action button.\n{{Identical|Review translation}}",
+ "tux-empty-list-other-link": "{{Tuxspec|7}} This is a link to change message filter.\n{{Identical|Show all messages}}",
+ "tux-editor-close-tooltip": "Tooltip for close icon of translate editor.\n{{Identical|Close}}",
+ "tux-editor-expand-tooltip": "Tooltip for an icon (rectangle with an arrow) in the new translation editor which increases size of the main text area by closing the translation aids area on the screen's side.\n\nSee also:\n* {{msg-mw|Tux-editor-collapse-tooltip}}\n{{Identical|Expand}}",
+ "tux-editor-collapse-tooltip": "Tooltip for an icon (rectangle with an arrow) in the new translation editor which reduces size of the main text area to uncover the translation aids area on the screen's side.\n\nSee also:\n* {{msg-mw|Tux-editor-expand-tooltip}}\n{{Identical|Collapse}}",
+ "tux-editor-message-tools-history": "A link to the message history. An item in a menu that appears when clicking on the message title.\n{{Identical|History}}",
+ "tux-editor-message-tools-delete": "A link to delete the message. An item in a menu that appears when clicking on the message title.\n{{Identical|Delete}}",
+ "tux-editor-message-tools-translations": "A link to translations of a message to all languages. An item in a menu that appears when clicking on message title.\n{{Identical|All translations}}",
+ "tux-editor-loading": "Loading message while translation editor is being prepared with helper information.\n{{Identical|Loading}}",
+ "translate-search-more-languages-info": "Information shown as number of languages matching the query using\n[[Special:SearchTranslations]]\n* $1 - number of languages\nSee also:\n* {{msg-mw|Translate-search-more-groups-info}}",
+ "translate-statsbar-tooltip": "Descriptive text to show for the stats bar for message groups on mouse over.\n* $1 percentage of messages translated\n* $2 percentage of messages reviewed",
+ "translate-statsbar-tooltip-with-fuzzy": "Descriptive text to show for the stats bar for message groups on mouse over.\n\nParameters:\n* $1 - percentage of messages translated (does not include outdated)\n* $2 - percentage of messages reviewed\n* $3 - percentage of messages outdated (not counted as translated)",
+ "translate-search-more-groups-info": "Information shown as number of message groups matching the query using\n[[Special:SearchTranslations]]\n* $1 - number of groups\nSee also:\n* {{msg-mw|Translate-search-more-languages-info}}",
+ "translate-ulsdep-title": "Page title",
+ "translate-ulsdep-body": "Error message in page body",
+ "tux-session-expired": "Warning shown to the user in a popup when translation could not be saved because the session is expired."
+}
diff --git a/MLEB/Translate/i18n/core/qu.json b/MLEB/Translate/i18n/core/qu.json
new file mode 100644
index 00000000..a0715b41
--- /dev/null
+++ b/MLEB/Translate/i18n/core/qu.json
@@ -0,0 +1,319 @@
+{
+ "@metadata": {
+ "authors": [
+ "AlimanRuna"
+ ]
+ },
+ "translate": "T'ikray",
+ "translate-desc": "[[Special:Translate|Sapaq p'anqa]] MediaWiki nisqata hukkunatapas t'ikranapaq",
+ "translate-taskui-view": "Tukuy willaykunata rikuchiy",
+ "translate-taskui-untranslated": "Mana t'ikrasqa willaykunata rikuchiy",
+ "translate-taskui-optional": "Akllana willaykunata rikuchiy",
+ "translate-taskui-acceptqueue": "Allinchaspa ñawirina unanchanallay willaykunata rikuchiy",
+ "translate-taskui-reviewall": "Tukuy t'ikrasqakunata allinchanapaq ñawiriy",
+ "translate-taction-translate": "T'ikray",
+ "translate-taction-proofread": "Allinchaspa ñawiriy",
+ "translate-taction-lstats": "Rimaymanta ranuy (kanchachani)",
+ "translate-taction-mstats": "Willay huñu ranuy (kanchachani)",
+ "translate-taction-export": "Hawaman quy",
+ "translate-taction-disabled": "Kay wikipiqa kayta manam rurayta atinkichu.",
+ "translate-page-no-such-language": "Nisqa rimayqa manam kanchu.",
+ "translate-page-no-such-group": "Nisqa huñuqa manam kanchu.",
+ "translate-page-disabled": "Kay huñupi kay rimayman t'ikraykunaqa manam saqillasqachu.\nKayrayku:\n\n<em>$1</em>",
+ "translate-language-disabled": "Kay rimayman t'ikrayqa manam saqillasqachu.",
+ "translate-page-settings-legend": "Churasqakuna",
+ "translate-page-group": "Huñu",
+ "translate-page-language": "Rimay",
+ "translate-page-limit": "Saywa",
+ "translate-page-limit-option": "$1 {{PLURAL:$1|willay|willaykuna}} huk p'anqapaq",
+ "translate-submit": "Apamuy",
+ "translate-page-navigation-legend": "Wamp'una",
+ "translate-page-showing": "Willaykunata $3-pura $1-manta $2-kama rikuchispa.",
+ "translate-page-showing-all": "{{PLURAL:$1|Huk willayta|$1 willaykunata}} rikuchispa.",
+ "translate-page-showing-none": "Rikuchina willaykunaqa manam kanchu.",
+ "translate-next": "Qatiq p'anqa",
+ "translate-prev": "Ñawpaq p'anqa",
+ "translate-page-description-legend": "Willay huñumanta t'iktuna",
+ "translate-page-description-hasoptional-open": "Akllana willaykunata rikuchiy.",
+ "translate-page-edit": "llamk'apuy",
+ "translate-ext-url": "<hr />Llika tiyay: $1",
+ "translate-optional": "(chikllana)",
+ "translate-ignored": "(qhawarparisqa)",
+ "translate-edit-title": "\"$1\" nisqata llamk'apuy",
+ "translate-edit-definition": "Qallariy willay qillqa",
+ "translate-edit-translation": "T'ikray",
+ "translate-edit-contribute": "llamk'apuy",
+ "translate-edit-information": "Willaymanta t'iktuynin ($1)",
+ "translate-edit-in-other-languages": "Kay willay huk rimaykunapi",
+ "translate-edit-committed": "Llamp'u kaqpi kunan kachkaq t'ikrasqakuna",
+ "translate-edit-warnings": "Mana hunt'a t'ikrasqakunamanta yuyampaykuna",
+ "translate-edit-tmmatch-source": "T'ikranapaq pukyu qillqa: $1",
+ "translate-edit-tmmatch": "$1%-nin kaqlla kaq",
+ "translate-use-suggestion": "Kunan kachkaqraq t'ikrasqata kay munachiywan huknachay.",
+ "translate-edit-nopermission": "Willaykunata t'ikranaykipaqqa t'ikrana hayñikunatam muchunki.",
+ "translate-edit-askpermission": "Saqillayta mañakuy",
+ "translate-magic-pagename": "Mast'arisqa MediaWiki t'ikray",
+ "translate-magic-module": "Wakina:",
+ "translate-magic-submit": "Apamuy",
+ "translate-magic-cm-export": "Hawaman quy",
+ "translate-magic-nothing-to-export": "Manam kanchu hawaman quna.",
+ "translate-magic-cm-to-be": "Kanman",
+ "translate-magic-cm-current": "Kunan",
+ "translate-magic-cm-original": "Qallariy qillqa",
+ "translate-magic-cm-comment": "Willayniyki:",
+ "translate-magic-cm-save": "Waqaychay",
+ "translate-magic-cm-savefailed": "Manam waqaychasqachu",
+ "translate-magic-special": "Sapaq p'anqakunapaq sutikuykuna",
+ "translate-magic-words": "Layqa rimakuna",
+ "translate-magic-namespace": "Sutisuyup sutinkuna",
+ "translate-magic-notsaved": "Llamk'apusqaykiqa manam waqaychasqachu!",
+ "translate-magic-errors": "Ama hina kaspa, kay {{PLURAL:$1|pantasqata|pantasqakunata}} t'ikrasqakunapi allinchay:",
+ "translate-magic-saved": "Llamk'apusqaykikunaqa allillan waqaychasqañam.",
+ "translate-checks-pagename": "Suti k'itiqa hukchasqam sut'ichaymanta",
+ "translate-checks-malformed": "<nowiki>$1</nowiki> manam allinchu.",
+ "translate-checks-fudforum-syntax": "Kay wikipiqa <nowiki>$1</nowiki> nisqata llamk'achiy <nowiki>$2</nowiki> ranti.",
+ "translate-pref-nonewsletter": "Manam munanichu e-chaski willay p'anqakunata chaskiyta",
+ "translate-pref-editassistlang": "Yanapana rimaykuna:",
+ "prefs-translate": "T'ikray akllanakuna",
+ "translate-pref-editassistlang-bad": "Sutisuyupi rimay tuyruqa manam allinchu:\n<nowiki>$1</nowiki>.",
+ "right-translate-manage": "Willay huñukunata kamachiy",
+ "action-translate-manage": "willay huñukunata kamachiy",
+ "right-translate-import": "Mana llikapi kachkaq t'ikrasqakunata hawamanta chaskiy",
+ "action-translate-import": "mana llikapi kachkaq t'ikrasqakunata hawamanta chaskiy",
+ "right-translate-messagereview": "T'ikrasqakunata allinchanapaq ñawiriy",
+ "right-translate-groupreview": "Willay huñukunap llamk'apayayninpa kachkayninta hukchay",
+ "translate-rc-translation-filter": "T'ikraykunata ch'illchiy",
+ "translate-rc-translation-filter-no": "Ama imatapas ruraychu",
+ "translate-rc-translation-filter-only": "T'ikrasqakunallata rikuchiy",
+ "translate-rc-translation-filter-filter": "T'ikraykunata ch'illchiy",
+ "translate-rc-translation-filter-site": "Tiyayllapi willaykunata hukchasqakuna",
+ "translationstats": "T'ikraymanta ranuy (kanchachani)",
+ "translate-stats-edits": "Llamk'apusqakuna",
+ "translate-stats-users": "T'ikraqkuna",
+ "translate-stats-registrations": "Hallch'asqakuna",
+ "translate-stats-reviews": "Allinchanapaq ñawirisqakuna",
+ "translate-stats-reviewers": "Allinchanapaq ñawiriqkuna",
+ "translate-statsf-options": "Siq'iwa akllanakuna",
+ "translate-statsf-width": "Kimrayman iñukuna",
+ "translate-statsf-height": "Sayayman iñukuna",
+ "translate-statsf-days": "Mit'api hayk'a p'unchawkuna:",
+ "translate-statsf-start": "Qallariy p'unchaw:",
+ "translate-statsf-scale": "Chhama kaynin:",
+ "translate-statsf-scale-months": "Killakuna",
+ "translate-statsf-scale-weeks": "Simanakuna",
+ "translate-statsf-scale-days": "P'unchawkuna",
+ "translate-statsf-scale-hours": "Urakuna",
+ "translate-statsf-count": "Tupu:",
+ "translate-statsf-count-edits": "Hukchasqakunap yupaynin",
+ "translate-statsf-count-users": "Llamk'achkaq t'ikraqkuna",
+ "translate-statsf-count-registrations": "Musuq ruraqkuna",
+ "translate-statsf-count-reviews": "T'ikrasqata qhawakipasqakuna",
+ "translate-statsf-count-reviewers": "Allinchanapaq ñawiriqkuna",
+ "translate-statsf-submit": "Ñawpaqta qhawallay",
+ "translate-tag-category": "T'ikrana p'anqakuna",
+ "translate-tag-page-desc": "T'ikrasqaqa [[$2|$1]] nisqa wiki p'anqam.",
+ "translate-sidebar-alltrans": "Huk simikunapi",
+ "translations": "Tukuy t'ikrasqakuna",
+ "translate-translations-no-message": "\"$1\" manam t'ikrana willaychu",
+ "translate-translations-none": "\"$1\" nisqapaq manam t'ikrasqakuna kanchu",
+ "translate-translations-count": "{{PLURAL:$1|Huk t'ikrasqam|$1 t'ikrasqakunam}} tarisqa.",
+ "translate-translations-fieldset-title": "Willay",
+ "translate-translations-messagename": "Suti:",
+ "translate-translations-project": "Ruraykamay:",
+ "translate-translations-history-short": "h",
+ "languagestats": "Rimaymanta ranuy (kanchachani)",
+ "languagestats-summary": "Kay p'anqaqa huk rimayman t'ikrasqakunamanta ranuy (kanchachani) nisqatam tukuy willay huñukunapaq rikuchin.",
+ "languagestats-stats-for": "$1-man t'ikrasqakunamanta ranuy (kanchachani) ($2).",
+ "languagestats-recenttranslations": "ñaqha t'ikrasqakuna",
+ "translate-langstats-expand": "mast'ariy",
+ "translate-langstats-collapse": "thuñichiy",
+ "translate-langstats-expandall": "tukuyta mast'ariy",
+ "translate-langstats-collapseall": "tukuyta thuñichiy",
+ "translate-language-code": "Rimay tuyru",
+ "translate-language-code-field-name": "Rimay tuyru:",
+ "translate-suppress-complete": "Hunt'a t'ikrasqa willay huñukunata pakay",
+ "translate-ls-noempty": "Manaraq t'ikrarisqa willay huñukunata pakay",
+ "translate-language": "Rimay",
+ "translate-total": "Willaykuna",
+ "translate-untranslated": "Mana t'ikrasqa",
+ "translate-percentage-complete": "Tukusqa",
+ "translate-percentage-fuzzy": "Mawk'ayasqa",
+ "translate-languagestats-overall": "Tukuy willay huñuntin",
+ "translate-ls-submit": "Ranuy (kanchachani) nisqata rikuchiy",
+ "translate-ls-column-group": "Willay huñu",
+ "translate-mgs-pagename": "Willay huñu ranuy (kanchachani)",
+ "translate-mgs-fieldset": "Allinkachinakunata rikuchiy",
+ "translate-mgs-group": "Willay huñu:",
+ "translate-mgs-submit": "Ranuy (kanchachani) nisqata rikuchiy",
+ "translate-mgs-column-language": "Rimay",
+ "translate-mgs-totals": "Tukuy rimaykuna kuskalla",
+ "translate-mgs-invalid-group": "Nisqa huñuqa $1 manam kanchu.",
+ "supportedlanguages": "Q'imisqa rimaykuna",
+ "supportedlanguages-colorlegend": "Llimphipaq t'iktuna: Qhipaq t'ikrasqamantapachaqa $1 p'unchawñam.",
+ "supportedlanguages-translators": "{{PLURAL:$2|T'ikraq|T'ikraqkuna}}: $1",
+ "supportedlanguages-recenttranslations": "ñaqha t'ikrasqakuna",
+ "supportedlanguages-count": "$1 {{PLURAL:$1|rimay|rimaykuna}} llapantinpi.",
+ "supportedlanguages-activity": "$1: $2 {{PLURAL:$2|llamk'apusqa|llamk'apusqakuna}} - qhipaq llamk'apusqa $3 {{PLURAL:$3|p'unchaw|p'unchaw}} ñaqha",
+ "translate-save": "Waqaychay ($1)",
+ "translate-jssti-add": "Sutisuyuman yapay",
+ "managemessagegroups": "Willay huñukunata kamachiy",
+ "translate-smg-notallowed": "Kayta ruraytaqa manam saqillasqachu kanki.",
+ "translate-smg-left": "Wikipi willaypa samiqnin",
+ "translate-smg-right": "Yaykuq hukchasqakuna",
+ "translate-manage-import-diff": "Willay $1 | Ruraykuna: $2",
+ "translate-manage-import-new": "Musuq willay $1",
+ "translate-manage-import-deleted": "Qullusqa willay $1",
+ "translate-manage-action-import": "Hawamanta chaskiy",
+ "translate-manage-action-conflict": "Hawamanta chaskispa allinchanapaq ñawirina nispa unanchay",
+ "translate-manage-action-ignore": "Ama musyaychu",
+ "translate-manage-action-fuzzy": "T'ikrasqakunata hawamanta chaskispa allinchanapaq ñawirina nispa unanchay",
+ "translate-manage-fuzzy-summary": "Willañiqip sut'ichayninqa hukchasqam.",
+ "importtranslations": "T'ikrasqakunata hawamanta chaskiy",
+ "translate-import-from-local": "Tiyanalla willañiqita chaqnay:",
+ "translate-import-load": "Willañiqita chaqnay",
+ "translate-import-err-dl-failed": "Manam atinichu williñiqita apamuyta:\n$1",
+ "translate-import-err-ul-failed": "Willañiqi churkuyqa manam aypasqachu.",
+ "translate-import-err-invalid-title": "Qusqa willañiqi sutiqa <nowiki>$1</nowiki> manam allinchu.",
+ "translate-import-err-no-such-file": "<nowiki>$1</nowiki> nisqa willañiqiqa manam kanchu icha manam tiyanalla churkusqachu.",
+ "translate-import-err-stale-group": "Kay willañiqip willay huñunqa manam kanchu.",
+ "translate-js-summary": "Pisichay:",
+ "translate-js-save": "Waqaychay",
+ "translate-js-next": "Waqaychay, qatiqta kichaspa",
+ "translate-js-nonext": "Kayqa kay p'anqapi qhipaq willaymi karqan.",
+ "translate-js-skip": "Qatiqman t'iskuy",
+ "translate-js-save-failed": "Manam waqaychasqachu. Ama hina kaspa, kay pantasqamanta willariy.",
+ "translate-js-history": "T'ikraypa wiñay kaswaynin",
+ "translate-js-support": "Tapuy",
+ "translate-js-support-title": "Yanapayta mañarikuy, kay willamanta mana aypalla yachaspaykiqa.",
+ "translate-js-support-unsaved-warning": "Manaraq waqaychasqayki t'ikrasqaykikunam kachkan.",
+ "translate-gs-pos": "Ñiqi",
+ "translate-gs-code": "Tuyru",
+ "translate-gs-continent": "Allpapacha",
+ "translate-gs-speakers": "Rimaqkuna",
+ "translate-gs-score": "Taripasqakuna",
+ "translate-gs-multiple": "Ñawra",
+ "translate-gs-count": "Yupay",
+ "translate-gs-total": "Tukuy",
+ "translate-gs-avgscore": "Kuskanchaku taripasqa",
+ "translate-documentation-language": "Willaymanta t'iktuna",
+ "translate-searchprofile": "T'ikrasqakuna",
+ "translate-searchprofile-tooltip": "Tukuy t'ikrasqakunapi maskay",
+ "translate-search-languagefilter": "Ch'illchina rimaykama:",
+ "translate-search-nofilter": "Ama ch'illchina kachunchu",
+ "translate-messagereview-submit": "Allinchaspa ñawirisqa unanchay",
+ "translate-messagereview-progress": "Allinchaspa ñawirisqa unanchaspa...",
+ "translate-messagereview-failure": "Allinchaspa ñawirisqa unanchayqa manam aypasqachu: $1",
+ "translate-messagereview-done": "Allinchaspa ñawirisqa unanchasqañam",
+ "translate-messagereview-reviews": "{{PLURAL:$1|Huk ruraqpa|$1 ruraqkunap}} allinchaspa ñawirisqa unanchasqanñam",
+ "translate-messagereview-reviewswithyou": "{{PLURAL:$1|Qampa uyakusqaykiñam|$1 ruraqkunap (qampapas) allinchaspa ñawirisqa unanchasqaykichikñam}}",
+ "api-error-invalidrevision": "T'ikrasqaqa manam tarisqachu",
+ "api-error-unknownmessage": "Willayqa manam tarisqachu",
+ "api-error-fuzzymessage": "Willayqa allinchanapaq ñawirina unanchasqam",
+ "api-error-owntranslation": "Kikiykip t'ikrasqaykikunataqa manam allinchaspa ñawirisqa unanchayta atinkichu",
+ "translate-messagereview-no-fuzzy": "Allinchanapaq ñawirina t'ikrasqakunataqa manam allinchaspa ñawirisqa unanchayta atinkichu.",
+ "translate-messagereview-no-own": "Kikiykip t'ikrasqaykikunataqa manam allinchaspa ñawirisqa unanchayta atinkichu.",
+ "translate-messagereview-doit": "Kay t'ikrasqata allin t'ikrasqam nispa allinchaspa ñawirisqa unanchay.",
+ "log-name-translationreview": "T'ikrasqata qhawakipay hallch'a",
+ "log-description-translationreview": "T'ikrasqakunamanta willay huñukunamantapas tukuy qhawakipasqakunamanta hallch'a.",
+ "logentry-translationreview-message": "$1 {{GENDER:$2|allinchaspa ñawirisqa unanchan}} t'ikrasqata $3",
+ "logentry-translationreview-group": "$1 {{GENDER:$2|hukchan}} $4-man t'ikrasqata $3 $6-manta $7-man",
+ "translate-workflow-state-": "(mana churasqa)",
+ "translate-workflowstatus": "Kachkaynin: $1",
+ "translate-workflow-set-do": "Churay",
+ "translate-workflow-set-doing": "Churaspa...",
+ "translate-workflow-set-done": "Churasqañam!",
+ "translate-stats-workflow": "Kachkaynin",
+ "translate-workflowgroup-label": "Llamk'apayaypa kachkayninkuna",
+ "translate-dynagroup-recent-label": "Ñaqha t'ikrasqakuna",
+ "translate-dynagroup-additions-label": "Ñaqha yapasqakuna",
+ "translate-dynagroup-additions-desc": "Kay willay huñuqa musuqpas hukchasqapas willaykunatam rikuchin.",
+ "translate-dynagroup-by": "{{GENDER:$1|$1}}pa t'ikrasqan",
+ "translate-dynagroup-byc": "{{GENDER:$1|$1}}pa t'ikrasqan ($2)",
+ "translate-dynagroup-last": "{{GENDER:$1|$1}}pa qhipaq llamk'apusqan",
+ "translate-dynagroup-lastc": "{{GENDER:$1|$1}}pa qhipaq llamk'apusqan ($2)",
+ "translate-gethelp": "Yanapa",
+ "translate-msggroupselector-projects": "Willay huñu",
+ "translate-msggroupselector-search-placeholder": "Huñukunata maskay",
+ "translate-msggroupselector-search-all": "Tukuy",
+ "translate-msggroupselector-search-recent": "Ñaqha",
+ "translate-msggroupselector-view-subprojects": "$1 {{PLURAL:$1|urin huñu|urin huñukuna}}",
+ "tux-languageselector": "Kayman t'ikray:",
+ "tux-tab-all": "Tukuy",
+ "tux-tab-untranslated": "Mana t'ikrasqa",
+ "tux-tab-outdated": "Mawk'ayasqa",
+ "tux-tab-translated": "T'ikrasqa",
+ "tux-tab-unproofread": "Manaraq allinchaspa ñawirisqa",
+ "tux-edit": "Llamk'apuy",
+ "tux-status-optional": "Akllana",
+ "tux-status-fuzzy": "Mawk'ayasqa",
+ "tux-status-proofread": "Allinchaspa ñawirisqa",
+ "tux-status-translated": "T'ikrasqa",
+ "tux-status-saving": "Waqaychaspa...",
+ "tux-status-unsaved": "Mana waqaychasqa",
+ "tux-editor-placeholder": "Qampa t'ikrasqayki",
+ "tux-editor-paste-original-button-label": "Pukyu qillqata llut'amuy",
+ "tux-editor-discard-changes-button-label": "Hukchasqakunata tatiy",
+ "tux-editor-save-button-label": "T'ikrasqata waqaychay",
+ "tux-editor-skip-button-label": "Qatiqman t'iskuy",
+ "tux-editor-cancel-button-label": "Ama niy",
+ "tux-editor-confirm-button-label": "T'ikrasqata takyachiy",
+ "tux-editor-shortcut-info": "\"$1\"-ta ñit'iy waqaychanapaq, icha \"$2\"-ta ñit'iy qatiq willayman t'iskunaykipaq, icha \"$3\"-ta wakin chiqanchanakunapaq.",
+ "tux-editor-edit-desc": "T'iktunata llamk'apuy",
+ "tux-editor-add-desc": "T'iktunata yapay",
+ "tux-editor-suggestions-title": "Munachiykuna",
+ "tux-editor-in-other-languages": "Huk simikunapi",
+ "tux-editor-need-more-help": "Aswan yanapayta muchunkichu?",
+ "tux-editor-ask-help": "Aswan willayta mañakuy",
+ "tux-editor-tm-match": "$1%-nin kaqlla kaq",
+ "tux-warnings-more": "{{PLURAL:$1|$1 aswan}}",
+ "tux-warnings-hide": "pakay",
+ "tux-editor-save-failed": "T'ikrasqaqa manam waqaychasqachu: $1",
+ "tux-editor-n-uses": "$1 {{PLURAL:$1|kuti}} llamk'achisqa",
+ "tux-editor-message-desc-more": "Astawan qhaway",
+ "tux-editor-message-desc-less": "Aswan pisita qhaway",
+ "tux-editor-clear-translated": "T'ikrasqakunata pakay",
+ "tux-editor-proofreading-mode": "Allinchaspa ñawiriy",
+ "tux-editor-translate-mode": "Sutisuyu",
+ "tux-editor-proofreading-hide-own-translations": "Qampa t'ikrasqaykikunata pakay",
+ "tux-editor-proofreading-show-own-translations": "Qampa t'ikrasqaykikunata rikuchiy",
+ "tux-proofread-action-tooltip": "Allinchaspa ñawirisqa unanchay",
+ "tux-proofread-edit-label": "Llamk'apuy",
+ "tux-editor-page-mode": "P'anqa",
+ "tux-editor-outdated-warning": "Kay t'ikrasqaqa allinchanapaqchá.",
+ "tux-editor-outdated-warning-diff-link": "Wakin kaykunata rikuchiy",
+ "tux-editor-doc-editor-placeholder": "Willaymanta t'iktuna",
+ "tux-editor-doc-editor-save": "T'iktunata waqaychay",
+ "tux-editor-doc-editor-cancel": "Ama niy",
+ "tux-messagetable-more-messages": "$1 aswan {{PLURAL:$1|willay|willaykuna}}",
+ "tux-messagetable-loading-messages": "{{PLURAL:$1|Willayta|Willaykunata}} chaqnaspa...",
+ "tux-message-filter-placeholder": "Ch'illchina sutisuyu",
+ "tux-message-filter-result": "$1 {{PLURAL:$1|taripasqam|taripasqakunam}} \"$2\"-paq",
+ "tux-message-filter-advanced-button": "Ñawparikusqa maskay",
+ "tux-message-filter-optional-messages-label": "Akllana willaykuna",
+ "tux-proofread-translated-by-self": "Qampa t'ikrasqayki",
+ "tux-empty-list-all": "Kay willay huñuqa ch'usaqmi",
+ "tux-empty-list-all-guide": "Wakin willay huñuta akllay t'ikranapaq",
+ "tux-translate-page-no-such-group": "<strong>Nisqa huñuqa manam kanchu.</strong> Wakin willay huñuta akllay.",
+ "tux-empty-list-translated": "Manam mayqin t'ikrasqa willaykunapas kanchu",
+ "tux-empty-list-translated-guide": "T'ikraysiytam atinki",
+ "tux-empty-list-translated-action": "T'ikray",
+ "tux-empty-no-messages-to-display": "Manam ima rikuchina willaykunapas kanchu",
+ "tux-empty-nothing-to-proofread": "Manam ima allinchaspa ñawirinapas kanchu",
+ "tux-empty-you-can-help-providing": "Musuq t'ikrasqakunata ruraysiytam atinki",
+ "tux-empty-nothing-new-to-proofread": "Manam ima musuq allinchaspa ñawirinapas kanchu",
+ "tux-empty-you-can-review-already-proofread": "Hukkunap allinchaspa ñawirisqanña t'ikrasqakunatapas allinchaspa ñawiriytam atinki.",
+ "tux-empty-list-other": "Manam imapas t'ikrana kanchu",
+ "tux-empty-list-other-guide": "Kachkaqña t'ikrasqakunata ñawirispa allinchaysiytam atinki",
+ "tux-empty-list-other-action": "T'ikrasqakuna allinchaspa ñawiriy",
+ "tux-empty-list-other-link": "Tukuy willaykunata rikuchiy",
+ "tux-editor-close-tooltip": "Wichq'ay",
+ "tux-editor-expand-tooltip": "Mast'ariy",
+ "tux-editor-collapse-tooltip": "Thuñichiy",
+ "tux-editor-message-tools-history": "Wiñay kawsay",
+ "tux-editor-message-tools-translations": "Tukuy t'ikrasqakuna",
+ "tux-editor-loading": "Chaqnamuspa…",
+ "translate-search-more-languages-info": "$1 aswan {{PLURAL:$1|rimay|rimaykuna}}",
+ "translate-statsbar-tooltip": "$1% t'ikrasqa, $2% allinchaspa ñawirisqa",
+ "translate-statsbar-tooltip-with-fuzzy": "$1% t'ikrasqa, $2% allinchaspa ñawirisqa, $3% mawk'ayasqa",
+ "translate-search-more-groups-info": "$1 aswan {{PLURAL:$1|huñum|huñukunam}}"
+}
diff --git a/MLEB/Translate/i18n/core/rif.json b/MLEB/Translate/i18n/core/rif.json
new file mode 100644
index 00000000..ea6a91d4
--- /dev/null
+++ b/MLEB/Translate/i18n/core/rif.json
@@ -0,0 +1,9 @@
+{
+ "@metadata": {
+ "authors": [
+ "Jose77"
+ ]
+ },
+ "translate-page-navigation-legend": "Asari",
+ "translate-page-edit": "arri"
+}
diff --git a/MLEB/Translate/i18n/core/rm.json b/MLEB/Translate/i18n/core/rm.json
new file mode 100644
index 00000000..2306e6c0
--- /dev/null
+++ b/MLEB/Translate/i18n/core/rm.json
@@ -0,0 +1,33 @@
+{
+ "@metadata": {
+ "authors": [
+ "Gion",
+ "Gion-andri",
+ "Kazu89"
+ ]
+ },
+ "translate-page-settings-legend": "Parameters",
+ "translate-page-group": "Gruppa",
+ "translate-page-language": "Lingua",
+ "translate-page-limit": "Limita",
+ "translate-page-limit-option": "$1 {{PLURAL:$1|messadi|messadis}} per pagina",
+ "translate-submit": "Mussar",
+ "translate-page-navigation-legend": "Navigaziun",
+ "translate-page-showing": "Mussa ils messadis $1 fin $2 da $3.",
+ "translate-page-showing-all": "Mussa $1 {{PLURAL:$1|messadi|messadis}}.",
+ "translate-page-showing-none": "Nagins messadis.",
+ "translate-next": "Proxima pagina",
+ "translate-prev": "Pagina precedenta",
+ "translate-page-description-legend": "Infurmaziun davart la gruppa",
+ "translate-page-edit": "editar",
+ "translate-optional": "(opziunal)",
+ "translate-ignored": "(ignorar)",
+ "translate-edit-definition": "Definiziun dal messadi",
+ "translate-edit-contribute": "contribuir",
+ "translate-edit-no-information": "''Tar quai messadi na datti nagina documentaziun.\nSche vus savais nua e co che quai messadi vegn duvrà, pudais vus gidar auters translaturs cun agiuntar ina documentaziun tar quai messadi.''",
+ "translate-edit-information": "Infurmaziuns davart il messadi \"$2\" ($1)",
+ "translate-edit-in-other-languages": "Messadis \"$1\" en autras linguas",
+ "translate-edit-committed": "Translaziun actuala da la software",
+ "translate-edit-warnings": "Avertiment davart translaziuns nuncumplettas",
+ "tux-warnings-hide": "zuppentar"
+}
diff --git a/MLEB/Translate/i18n/core/ro.json b/MLEB/Translate/i18n/core/ro.json
new file mode 100644
index 00000000..9222b303
--- /dev/null
+++ b/MLEB/Translate/i18n/core/ro.json
@@ -0,0 +1,379 @@
+{
+ "@metadata": {
+ "authors": [
+ "AdiJapan",
+ "Danutz",
+ "Firilacroco",
+ "KlaudiuMihaila",
+ "McDutchie",
+ "Minisarm",
+ "Sociologist",
+ "Stelistcristi"
+ ]
+ },
+ "translate": "Traducere",
+ "translate-desc": "[[Special:Translate|Pagină specială]] pentru traducerea software-ului MediaWiki, dar nu numai",
+ "translate-taskui-view": "Arată toate mesajele",
+ "translate-taskui-untranslated": "Arată mesajele netraduse",
+ "translate-taskui-optional": "Arată mesajele opționale",
+ "translate-taskui-acceptqueue": "Doar mesajele pe care le pot marca ca revizuite",
+ "translate-taskui-reviewall": "Revizuiește toate traducerile",
+ "translate-taskui-export-to-file": "Exportare în format nativ",
+ "translate-taskui-export-as-po": "Exportare pentru traducere off-line",
+ "translate-taction-translate": "Traducere",
+ "translate-taction-proofread": "Revizuire",
+ "translate-taction-lstats": "Statistici de limbă",
+ "translate-taction-mstats": "Statistici pentru grupul de mesaje",
+ "translate-taction-export": "Exportare",
+ "translate-taction-disabled": "Această acțiune este dezactivată pe acest wiki.",
+ "translate-page-no-such-language": "Limba specificată este incorectă.",
+ "translate-page-no-such-group": "Grupul specificat este incorect.",
+ "translate-page-disabled": "Posibilitatea de a traduce acest grup în această limbă a fost dezactivată.\nMotiv:\n\n<em>$1</em>",
+ "translate-language-disabled": "Traducerile în această limbă sunt dezactivate.",
+ "translate-page-settings-legend": "Setări",
+ "translate-page-group": "Grup",
+ "translate-page-language": "Limbă",
+ "translate-page-limit": "Limită",
+ "translate-page-limit-option": "$1 {{PLURAL:$1|mesaj|mesaje}} pe pagină",
+ "translate-submit": "Arată",
+ "translate-page-navigation-legend": "Navigare",
+ "translate-page-showing": "Se afișează mesajele de la $1 la $2 dintr-un total de $3.",
+ "translate-page-showing-all": "Se afișează $1 {{PLURAL:$1|mesaj| (de) mesaje}}.",
+ "translate-page-showing-none": "Niciun mesaj de afișat.",
+ "translate-next": "Pagina următoare",
+ "translate-prev": "Pagina anterioară",
+ "translate-page-description-legend": "Informații despre grup",
+ "translate-page-description-hasoptional": "Acest grup conține mesaje opționale.\nMesajele opționale ar trebui traduse doar în cazul în care limba dumneavoastră are cerințe speciale,\nprecum neutilizarea spațiilor sau transliterarea numelor proprii. $1",
+ "translate-page-description-hasoptional-open": "Arată mesajele opționale.",
+ "translate-page-edit": "modificare",
+ "translate-ext-url": "<hr /> Site web: $1",
+ "translate-optional": "(opțional)",
+ "translate-ignored": "(ignorat)",
+ "translate-edit-title": "Modificați „$1”",
+ "translate-edit-definition": "Definiția mesajului",
+ "translate-edit-translation": "Traducerea",
+ "translate-edit-contribute": "contribuiți",
+ "translate-edit-no-information": "<em>Acest mesaj nu are documentație.\nDacă știți unde sau cum este folosit, îi puteți ajuta pe ceilalți traducători prin adăugarea documentației sale.</em>",
+ "translate-edit-information": "Informații despre mesaj ($1)",
+ "translate-edit-in-other-languages": "Mesajul în alte limbi",
+ "translate-edit-committed": "Traducerea curentă din software",
+ "translate-edit-warnings": "Avertizări în legătură cu traducerile incomplete",
+ "translate-edit-tmsugs": "Sugestii din memoria de traducere",
+ "translate-edit-tmmatch-source": "Textul sursă al traducerii: $1",
+ "translate-edit-tmmatch": "Potrivire în proporție de $1%",
+ "translate-use-suggestion": "Înlocuiește traducerea curentă cu această sugestie.",
+ "translate-edit-nopermission": "Aveți nevoie de drepturi de traducere pentru a traduce mesaje.",
+ "translate-edit-askpermission": "Obțineți permisiunea",
+ "translate-magic-pagename": "Traduceri suplimentare pentru MediaWiki",
+ "translate-magic-module": "Modul:",
+ "translate-magic-submit": "Arată",
+ "translate-magic-cm-export": "Exportă",
+ "translate-magic-nothing-to-export": "Nu este nimic de exportat.",
+ "translate-magic-cm-to-be": "A-fi",
+ "translate-magic-cm-current": "Actual",
+ "translate-magic-cm-original": "Original",
+ "translate-magic-cm-comment": "Comentariu:",
+ "translate-magic-cm-save": "Salvează",
+ "translate-magic-cm-updatedusing": "Actualizat folosind [[Special:AdvancedTranslate|{{int:Translate-magic-pagename}}]]",
+ "translate-magic-cm-savefailed": "Salvare eșuată",
+ "translate-magic-special": "Aliasuri de pagini speciale",
+ "translate-magic-words": "Cuvinte magice",
+ "translate-magic-namespace": "Nume de spații de nume",
+ "translate-magic-notsaved": "Modificarea nu a fost salvată!",
+ "translate-magic-errors": "Vă rugăm să remediați {{PLURAL:$1|următoarea eroare|următoarele erori}} din traduceri:",
+ "translate-magic-saved": "Schimbările au fost salvate cu succes.",
+ "translate-checks-parameters": "{{PLURAL:$2|Următorul parametru nu este folosit|Următorii parametri nu sunt folosiți}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-parameters-unknown": "{{PLURAL:$2|Următorul parametru este necunoscut|Următorii $2 parametri sunt necunoscuți}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-balance": "Există un număr impar de {{PLURAL:$2|paranteze|paranteze}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links": "{{PLURAL:$2|Următoarea legătură este problematică|Următoarele $2 legături sunt problematice}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links-missing": "{{PLURAL:$2|Următoarea legătură lipsește|Următoarele $2 legături lipsesc}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-xhtml": "Vă rugăm să înlocuiți {{PLURAL:$2|următoarea|următoarele}} {{PLURAL:$2|etichetă|etichete}} cu cele corecte:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-plural": "Definiția folosește <nowiki>{{PLURAL:}}</nowiki>, dar traducerea nu.",
+ "translate-checks-plural-forms": "Expresia <nowiki>{{PLURAL:}}</nowiki> a primit {{PLURAL:$1|un element|$1 elemente|$1 de elemente}}, însă {{PLURAL:$2|este acceptat doar un element|sunt acceptate doar $2 elemente|sunt acceptate doar $2 de elemente}} (excluzând 0= și 1=).",
+ "translate-checks-plural-dupe": "Expresia <nowiki>{{PLURAL:}}</nowiki> are elemente duplicate la sfârșit. <nowiki>{{PLURAL:$1|oaie|oaie}}</nowiki> trebuie scris ca <nowiki>{{PLURAL:$1|oaie}}</nowiki>.",
+ "translate-checks-pagename": "Spațiul de nume schimbat față de definiție",
+ "translate-checks-format": "Această traducere nu respectă definiția sau conține o sintaxă incorectă: $1",
+ "translate-checks-escape": "Următoarele scăpări pot fi accidentale: <strong>$1</strong>",
+ "translate-checks-parametersnotequal": "Numărul de parametri este {{PLURAL:$1|$1}}; ar trebui să fie {{PLURAL:$2|$2}}.",
+ "translate-checks-malformed": "<nowiki>$1</nowiki> este incorect.",
+ "translate-checks-fudforum-syntax": "Utilizați <nowiki>$1</nowiki> în loc de <nowiki>$2</nowiki> în cadrul acestui proiect.",
+ "translate-pref-nonewsletter": "Nu-mi trimite știri prin e-mail",
+ "translate-pref-editassistlang": "Limbi ajutătoare",
+ "prefs-translate": "Opțiuni de traducere",
+ "translate-pref-editassistlang-help": "Listă de coduri de limbă separate prin virgulă.\nTraducerea unui mesaj în aceste limbi vă este afișată în timp ce traduceți.\nLista implicită de limbi depinde de propria dumneavoastră limbă.",
+ "translate-pref-editassistlang-bad": "Cod de limbă incorect în lista:\n<nowiki>$1</nowiki>.",
+ "right-translate": "Modifică utilizând interfața de traducere",
+ "right-translate-manage": "Gestionează grupurile de mesaje",
+ "action-translate-manage": "gestionați grupurile de mesaje",
+ "right-translate-import": "Importă traduceri efectuate off-line",
+ "action-translate-import": "importați traduceri off-line",
+ "right-translate-messagereview": "Revizuiește traduceri",
+ "right-translate-groupreview": "Schimbă starea fluxului de lucru a grupurilor de mesaje",
+ "translate-rc-translation-filter": "Filtru de traduceri:",
+ "translate-rc-translation-filter-no": "Nu fă nimic",
+ "translate-rc-translation-filter-only": "Arată doar traduceri",
+ "translate-rc-translation-filter-filter": "Fără traduceri",
+ "translate-rc-translation-filter-site": "Doar schimbări la mesajele sitului",
+ "translationstats": "Statistici de traducere",
+ "translate-stats-edits": "Modificări",
+ "translate-stats-users": "Traducători",
+ "translate-stats-registrations": "Înscrieri",
+ "translate-stats-reviews": "Recenzii",
+ "translate-stats-reviewers": "Recenzenți",
+ "translate-statsf-intro": "Puteți genera statistici simple cu acest formular.\nToate valorile au limite superioare și inferioare.",
+ "translate-statsf-options": "Opțiunile graficului",
+ "translate-statsf-width": "Lățime în pixeli:",
+ "translate-statsf-height": "Înălțime în pixeli:",
+ "translate-statsf-days": "Perioada de timp în zile:",
+ "translate-statsf-start": "Data începerii:",
+ "translate-statsf-scale": "Granularitate:",
+ "translate-statsf-scale-months": "Luni",
+ "translate-statsf-scale-weeks": "Săptămâni",
+ "translate-statsf-scale-days": "Zile",
+ "translate-statsf-scale-hours": "Ore",
+ "translate-statsf-count": "Măsură:",
+ "translate-statsf-count-edits": "Număr de modificări",
+ "translate-statsf-count-users": "Traducători activi",
+ "translate-statsf-count-registrations": "Utilizatori noi",
+ "translate-statsf-count-reviews": "Recenzori de traduceri",
+ "translate-statsf-count-reviewers": "Recenzenți",
+ "translate-statsf-language": "Listă de coduri de limbă separate prin virgulă:",
+ "translate-statsf-group": "Listă de coduri de grup separate prin virgulă:",
+ "translate-statsf-submit": "Previzualizare",
+ "translate-tag-category": "Pagini traductibile",
+ "translate-tag-page-desc": "Traducerea paginii wiki [[$2|$1]].",
+ "translate-sidebar-alltrans": "În alte limbi",
+ "translations": "Toate traducerile",
+ "translations-summary": "Introduceți un nume de mesaj mai jos pentru a arăta toate traducerile disponibile.",
+ "translate-translations-no-message": "„$1” nu este un mesaj traductibil",
+ "translate-translations-none": "Nu există traduceri pentru „$1”",
+ "translate-translations-count": "S-{{PLURAL:$1|a|au}} găsit {{PLURAL:$1|o traducere|$1 traduceri}}.",
+ "translate-translations-fieldset-title": "Mesaj",
+ "translate-translations-messagename": "Nume:",
+ "translate-translations-project": "Proiect:",
+ "translate-translations-including-no-param": "Specificați o cheie de mesaj validă în parametrul „subpage”",
+ "translate-translations-history-short": "i",
+ "languagestats": "Statistici de limbă",
+ "languagestats-summary": "Această pagină afișează statistici despre traducerile grupurilor de mesaje în funcție de limbă.",
+ "languagestats-stats-for": "Statistici despre traduceri pentru $1 ($2).",
+ "languagestats-recenttranslations": "schimbări recente",
+ "translate-langstats-incomplete": "Unele dintre statisticile de pe această pagină sunt incomplete. Vă rugăm să reîncărcați pentru a obține mai multe statistici.",
+ "translate-langstats-expand": "extinde",
+ "translate-langstats-collapse": "restrânge",
+ "translate-langstats-expandall": "extinde tot",
+ "translate-langstats-collapseall": "restrânge tot",
+ "translate-language-code": "Cod limbă",
+ "translate-language-code-field-name": "Codul limbii:",
+ "translate-suppress-complete": "Ascunde grupurile de mesaje traduse complet",
+ "translate-ls-noempty": "Ascunde grupurile de mesaje complet netraduse",
+ "translate-language": "Limbă",
+ "translate-total": "Mesaje",
+ "translate-untranslated": "Netraduse",
+ "translate-percentage-complete": "Completare",
+ "translate-percentage-fuzzy": "Învechite",
+ "translate-languagestats-overall": "Toate grupurile de mesaje împreună",
+ "translate-ls-submit": "Afișează statisticile",
+ "translate-ls-column-group": "Grup de mesaje",
+ "translate-mgs-pagename": "Statistici pentru grupul de mesaje",
+ "translate-mgs-fieldset": "Preferințe de afișare",
+ "translate-mgs-group": "Grup de mesaje:",
+ "translate-mgs-nocomplete": "Nu afișa limbile care conțin traduceri complete",
+ "translate-mgs-noempty": "Nu afișa limbile care nu conțin nicio traducere",
+ "translate-mgs-submit": "Afișează statisticile",
+ "translate-mgs-column-language": "Limbă",
+ "translate-mgs-totals": "Toate limbile împreună",
+ "translate-mgs-invalid-group": "Grupul specificat, $1, nu există.",
+ "translate-mgs-nothing": "Nimic de afișat pentru statisticile solicitate.",
+ "supportedlanguages": "Limbi întreținute",
+ "supportedlanguages-summary": "Această pagină afișează o listă cu toate limbile acceptate de {{SITENAME}}, alături de numele utilizatorilor care traduc în respectiva limbă.\nCu cât numele traducătorului este mai mare ca dimensiune, cu atât contribuțiile sale sunt mai numeroase.\nCuloarea sublinierii de sub nume indică momentul la care un traducător a fost activ ultima oară.",
+ "supportedlanguages-colorlegend": "Explicația culorilor: ultima traducere datează de acum $1 zile.",
+ "supportedlanguages-translators": "{{PLURAL:$2|Traducător|Traducători}}: $1",
+ "supportedlanguages-recenttranslations": "traduceri recente",
+ "supportedlanguages-count": "$1 {{PLURAL:$1|limbă|limbi}} în total.",
+ "supportedlanguages-activity": "$1: {{PLURAL:$2|o modificare|$2 modificări|$2 de modificări}} – ultima modificare datează de acum {{PLURAL:$3|o zi|$3 zile|$3 de zile}}",
+ "translate-save": "Salvare ($1)",
+ "translate-jssti-add": "Adaugă în listă",
+ "managemessagegroups": "Administrare grup de mesaje",
+ "translate-smg-notallowed": "Nu vă este permisă executarea acestei acțiuni.",
+ "translate-smg-nochanges": "Nu există modificări pentru procesare.",
+ "translate-smg-submit": "Trimite modificările pentru procesare",
+ "translate-smg-submitted": "Definițiile mesajelor au fost actualizate. Modificările sunt procesate în fundal.",
+ "translate-smg-more": "Vor exista mai multe modificări de procesat după trimiterea acestor modificări.",
+ "translate-smg-left": "Conținutul mesajului în wiki",
+ "translate-smg-right": "Modificări în curs de transfer",
+ "translate-manage-import-diff": "Mesajul $1 | Acțiuni: $2",
+ "translate-manage-import-new": "Mesaj nou $1",
+ "translate-manage-import-deleted": "Mesaj șters $1",
+ "translate-manage-action-import": "Importă",
+ "translate-manage-action-conflict": "Importă și marchează ca fuzzy",
+ "translate-manage-action-ignore": "Ignorare",
+ "translate-manage-action-fuzzy": "Importă și marchează traducerile",
+ "translate-manage-nochanges": "Pentru acest grup nu există modificări ale definițiilor mesajelor.",
+ "translate-manage-nochanges-other": "Nu există schimbări pentru această limbă.\nUtilizați legătura de mai jos pentru a reveni la detaliile grupului.",
+ "translate-manage-inconsistent": "S-a detectat o incoerență în cadrul cererii. Verificați dacă există modificări și încercați din nou. Detalii: $1.",
+ "translate-manage-toolong": "Timpul maxim de prelucrare care este de {{PLURAL:$1|o secundă|$1 secunde|$1 de secunde}} a fost depășit.\nVă rugăm să retrimiteți formularul pentru a continua prelucrarea.",
+ "translate-manage-import-summary": "Se importă o nouă versiune din sursă externă",
+ "translate-manage-conflict-summary": "Se importă o nouă versiune dintr-o sursă externă.\nVă rugăm să verificați.",
+ "translate-manage-fuzzy-summary": "Definiția mesajului s-a schimbat",
+ "translate-manage-submit": "Execută",
+ "translate-manage-import-ok": "Importată: $1",
+ "translate-manage-import-done": "Importare finalizată!",
+ "importtranslations": "Importă traduceri",
+ "translate-import-from-local": "Încărcare fișier local:",
+ "translate-import-load": "Încarcă fișier",
+ "translate-import-err-dl-failed": "Imposibil de adus fișierul:\n$1",
+ "translate-import-err-ul-failed": "Încărcarea fișierului nu a avut succes",
+ "translate-import-err-invalid-title": "Numele fișierului furnizat, <nowiki>$1</nowiki>, este invalid.",
+ "translate-import-err-no-such-file": "Fișierul <nowiki>$1</nowiki> nu există sau nu a fost încărcat local.",
+ "translate-import-err-stale-group": "Grupul de mesaje de care aparține acest fișier nu există.",
+ "translate-import-err-no-headers": "Fișierul nu este un fișier Gettext bine formatat în conformitate cu formatul necesar extensiei Translate:\nNu se poate determina grupul de mesaje și limba din antetele fișierului.",
+ "translate-import-err-warnings": "Fișierul nu este bine alcătuit.\nAsigurați-vă vă editorul dumneavoastră nu înlătură câmpurile msgctxt.\nDetalii: $1",
+ "translate-js-summary": "Rezumat:",
+ "translate-js-save": "Salvare",
+ "translate-js-next": "Salvează și mergi mai departe",
+ "translate-js-nonext": "Acesta este ultimul mesaj de pe această pagină.",
+ "translate-js-skip": "Sari mai departe",
+ "translate-js-save-failed": "Salvarea a eșuat. Vă rugăm să raportați această eroare.",
+ "translate-js-history": "Istoricul traducerii",
+ "translate-js-support": "Adresați o întrebare",
+ "translate-js-support-title": "Cereți ajutor în cazul în care nu există suficiente informații pentru a traduce corect acest mesaj.",
+ "translate-js-support-unsaved-warning": "Aveți traduceri nesalvate.",
+ "translate-gs-pos": "Poz.",
+ "translate-gs-code": "Cod",
+ "translate-gs-continent": "Continent",
+ "translate-gs-speakers": "Vorbitori",
+ "translate-gs-score": "Scor",
+ "translate-gs-multiple": "Mai multe",
+ "translate-gs-count": "Număr",
+ "translate-gs-total": "Total",
+ "translate-gs-avgscore": "Scor mediu",
+ "translate-documentation-language": "Documentația mesajului",
+ "translate-searchprofile": "Traduceri",
+ "translate-searchprofile-tooltip": "Caută în toate traducerile",
+ "translate-search-languagefilter": "Filtrare după limbă:",
+ "translate-search-nofilter": "Fără filtrare",
+ "translate-messagereview-submit": "Marchează ca revizuită",
+ "translate-messagereview-progress": "Se marchează ca revizuită...",
+ "translate-messagereview-failure": "Marcarea ca revizuită a eșuat: $1",
+ "translate-messagereview-done": "Revizuită",
+ "translate-messagereview-reviews": "Revizuit de {{PLURAL:$1|un utilizator|$1 utilizatori|$1 de utilizatori}}",
+ "translate-messagereview-reviewswithyou": "Revizuit de {{PLURAL:$1|dumneavoastră|$1 utilizatori, inclusiv dumneavoastră|$1 de utilizatori, inclusiv dumneavoastră}}",
+ "api-error-invalidrevision": "Traducerea nu a fost găsită",
+ "api-error-unknownmessage": "Mesajul nu a fost găsit",
+ "api-error-fuzzymessage": "Traducerea este marcată ca fuzzy",
+ "api-error-owntranslation": "Nu vă puteți marca propriile traduceri ca revizuite",
+ "translate-messagereview-no-fuzzy": "Traducerile fuzzy nu pot fi marcate ca revizuite.",
+ "translate-messagereview-no-own": "Nu vă puteți marca propriile traduceri ca revizuite.",
+ "translate-messagereview-doit": "Marcați această traducere ca revizuită.",
+ "log-name-translationreview": "Jurnal recenzii traduceri",
+ "log-description-translationreview": "Jurnalul tuturor revizuirilor pentru traduceri și grupuri de mesaje.",
+ "logentry-translationreview-message": "$1 {{GENDER:$2|a revizuit}} traducerea $3",
+ "logentry-translationreview-group": "$1 {{GENDER:$2|a schimbat}} starea traducerilor în $4 pentru $3 de la $6 la $7",
+ "group-translate-sandboxed": "Traducători neaprobați",
+ "group-translate-sandboxed-member": "{{GENDER:$1|traducător neaprobat}}",
+ "translate-workflow-state-": "(dezactivat)",
+ "translate-workflowstatus": "Stare: $1",
+ "translate-workflow-set-do": "Activat",
+ "translate-workflow-set-doing": "Se activează...",
+ "translate-workflow-set-done": "Activat!",
+ "translate-workflow-set-error-alreadyset": "Starea solicitată este identică cu starea actuală.",
+ "translate-stats-workflow": "Statut",
+ "translate-dynagroup-recent-label": "Traduceri recente",
+ "translate-dynagroup-recent-desc": "Acest grup de mesaje afișează toate traducerile recente pentru această limbă. Este util în special în cazul revizuirilor.",
+ "translate-dynagroup-additions-label": "Adăugiri recente",
+ "translate-dynagroup-additions-desc": "Acest grup de mesaje afișează mesajele noi și modificate.",
+ "translate-dynagroup-by": "Traducere efectuată de către {{GENDER:$1|$1}}",
+ "translate-dynagroup-byc": "Traducere efectuată de către {{GENDER:$1|$1}} ($2)",
+ "translate-dynagroup-last": "Ultima schimbare de către {{GENDER:$1|$1}}",
+ "translate-dynagroup-lastc": "Ultima schimbare de către {{GENDER:$1|$1}} ($2)",
+ "translate-gethelp": "Ajutor",
+ "translate-msggroupselector-projects": "Grup de mesaje",
+ "translate-msggroupselector-search-placeholder": "Căutare grupuri",
+ "translate-msggroupselector-search-all": "Toate",
+ "translate-msggroupselector-search-recent": "Recente",
+ "translate-msggroupselector-view-subprojects": "$1 {{PLURAL:$1|subgrup|subgrupuri|de subgrupuri}}",
+ "tux-languageselector": "Traduceți în",
+ "tux-tab-all": "Toate",
+ "tux-tab-untranslated": "Netraduse",
+ "tux-tab-outdated": "Învechite",
+ "tux-tab-translated": "Traduse",
+ "tux-tab-unproofread": "Nerevizuite",
+ "tux-edit": "Modifică",
+ "tux-status-optional": "Opțional",
+ "tux-status-fuzzy": "Învechită",
+ "tux-status-proofread": "Revizuită",
+ "tux-status-translated": "Tradus",
+ "tux-status-saving": "Se salvează...",
+ "tux-status-unsaved": "Nesalvată",
+ "tux-editor-placeholder": "Traducerea dumneavoastră",
+ "tux-editor-paste-original-button-label": "Introdu textul-sursă",
+ "tux-editor-discard-changes-button-label": "Anulează modificările",
+ "tux-editor-save-button-label": "Salvare traducere",
+ "tux-editor-skip-button-label": "Sari mai departe",
+ "tux-editor-cancel-button-label": "Revocare",
+ "tux-editor-confirm-button-label": "Confirmare traducere",
+ "tux-editor-shortcut-info": "Apăsați „$1” pentru a salva sau „$2” pentru a sări la următorul mesaj ori „$3” pentru alte comenzi rapide.",
+ "tux-editor-edit-desc": "Modifică documentația",
+ "tux-editor-add-desc": "Adăugare documentație",
+ "tux-editor-suggestions-title": "Sugestii",
+ "tux-editor-in-other-languages": "În alte limbi",
+ "tux-editor-need-more-help": "Aveți nevoie de mai mult ajutor?",
+ "tux-editor-ask-help": "Cereți mai multe informații",
+ "tux-editor-tm-match": "Potrivire în proporție de $1%",
+ "tux-warnings-more": "{{PLURAL:$1|încă una|încă $1}}",
+ "tux-warnings-hide": "ascunde",
+ "tux-editor-save-failed": "Salvarea traducerii nu a reușit: $1",
+ "tux-editor-n-uses": "folosită {{PLURAL:$1|o dată|de $1 ori}}",
+ "tux-editor-message-desc-more": "Mai mult",
+ "tux-editor-message-desc-less": "Mai puțin",
+ "tux-editor-clear-translated": "Ascunde-le pe cele traduse",
+ "tux-editor-proofreading-mode": "Revizuire",
+ "tux-editor-translate-mode": "Listă",
+ "tux-editor-proofreading-hide-own-translations": "Ascundeți traducerile dv.",
+ "tux-editor-proofreading-show-own-translations": "Afișați traducerile dv.",
+ "tux-proofread-action-tooltip": "Marchează ca revizuită",
+ "tux-proofread-edit-label": "Modifică",
+ "tux-editor-page-mode": "Pagină",
+ "tux-editor-outdated-warning": "Această traducere ar putea avea nevoie de actualizare.",
+ "tux-editor-outdated-warning-diff-link": "Arată diferențele",
+ "tux-editor-doc-editor-placeholder": "Documentația mesajului",
+ "tux-editor-doc-editor-save": "Salvare documentație",
+ "tux-editor-doc-editor-cancel": "Revocare",
+ "tux-messagetable-more-messages": "Încă {{PLURAL:$1|un mesaj|$1 mesaje|$1 de mesaje}}",
+ "tux-messagetable-loading-messages": "Se încarcă {{PLURAL:$1|mesajul|mesajele}}...",
+ "tux-message-filter-placeholder": "Filtrare listă",
+ "tux-message-filter-result": "$1 {{PLURAL:$1|rezultat găsit|rezultate găsite|de rezultate găsite}} pentru „$2”",
+ "tux-message-filter-advanced-button": "Căutare avansată",
+ "tux-message-filter-optional-messages-label": "Mesaje opționale",
+ "tux-proofread-translated-by-self": "Tradus de dumneavoastră",
+ "tux-empty-list-all": "Acest grup de mesaje este gol",
+ "tux-empty-list-all-guide": "Alegeți un alt grup de mesaje pentru a traduce",
+ "tux-translate-page-no-such-group": "<strong>Grupul indicat nu există.</strong> Alegeți un alt grup de mesaje.",
+ "tux-empty-list-translated": "Nu există mesaje traduse",
+ "tux-empty-list-translated-guide": "Puteți ajuta la traducere",
+ "tux-empty-list-translated-action": "Traducere",
+ "tux-empty-no-messages-to-display": "Niciun mesaj de afișat.",
+ "tux-empty-there-are-optional": "Există mesaje opționale care nu apar în listă",
+ "tux-empty-show-optional-messages": "Arată mesajele opționale",
+ "tux-empty-no-outdated-messages": "Nu există mesaje învechite",
+ "tux-empty-nothing-to-proofread": "Nimic de revizuit",
+ "tux-empty-you-can-help-providing": "Puteți ajuta furnizând traduceri noi",
+ "tux-empty-nothing-new-to-proofread": "Nimic nou de revizuit",
+ "tux-empty-you-can-review-already-proofread": "Puteți revizui traduceri deja revizuite de către alții.",
+ "tux-empty-list-other": "Nimic de tradus",
+ "tux-empty-list-other-guide": "Puteți ajuta la revizuirea traducerilor existente",
+ "tux-empty-list-other-action": "Revizuire traduceri",
+ "tux-empty-list-other-link": "Arată toate mesajele",
+ "tux-editor-close-tooltip": "Închidere",
+ "tux-editor-expand-tooltip": "Extindere",
+ "tux-editor-collapse-tooltip": "Restrânge",
+ "tux-editor-message-tools-history": "Istoric",
+ "tux-editor-message-tools-translations": "Toate traducerile",
+ "tux-editor-loading": "Încărcare...",
+ "translate-search-more-languages-info": "Încă {{PLURAL:$1|o limbă|$1 limbi|$1 de limbi}}",
+ "translate-statsbar-tooltip": "$1% traduse, $2% revizuite",
+ "translate-statsbar-tooltip-with-fuzzy": "$1% traduse, $2% revizuite, $3% învechite",
+ "translate-search-more-groups-info": "Încă {{PLURAL:$1|un grup|$1 grupuri|$1 de grupuri}}",
+ "translate-ulsdep-title": "Eroare de configurare",
+ "translate-ulsdep-body": "Extensia Translate depinde de [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:UniversalLanguageSelector extensia Universal Language Selector]."
+}
diff --git a/MLEB/Translate/i18n/core/roa-tara.json b/MLEB/Translate/i18n/core/roa-tara.json
new file mode 100644
index 00000000..54252f11
--- /dev/null
+++ b/MLEB/Translate/i18n/core/roa-tara.json
@@ -0,0 +1,345 @@
+{
+ "@metadata": {
+ "authors": [
+ "Joetaras"
+ ]
+ },
+ "translate": "Traduce",
+ "translate-desc": "[[Special:Translate|Pàgena speciele]] pe le traduziune de MediaUicchi e rrete",
+ "translate-taskui-view": "Fà vedè tutte le messàgge",
+ "translate-taskui-untranslated": "Fà vedè le messàgge da traducere",
+ "translate-taskui-optional": "Fà vedè le messaggè opzionale",
+ "translate-taskui-acceptqueue": "Sulamende le messàgge ca pozze signà cumme reviste",
+ "translate-taskui-reviewall": "Revide tutte le traduziune",
+ "translate-taskui-export-to-file": "Esporte in formate native",
+ "translate-taskui-export-as-po": "Esporte pe le traduziune fore linèe",
+ "translate-taction-translate": "Traduce",
+ "translate-taction-proofread": "Revisione",
+ "translate-taction-lstats": "Statisteche d'a lènghe",
+ "translate-taction-mstats": "Statisteche de le gruppe de messàgge",
+ "translate-taction-export": "Esporte",
+ "translate-taction-disabled": "St'azione jè disabbilitate sus a sta uicchi.",
+ "translate-page-no-such-language": "'A lènghe specificate ere invalide.",
+ "translate-page-no-such-group": "'U gruppe specificate ere invalide.",
+ "translate-page-disabled": "Le traduziune de sta lènghe jndr'à stu gruppe onne state disabbilitate.\nMutive:\n\n<em>$1</em>",
+ "translate-language-disabled": "'A traduzione jndr'à sta lènghe jè disabbilitate.",
+ "translate-page-settings-legend": "'Mbostaziune",
+ "translate-page-group": "Gruppe",
+ "translate-page-language": "Lènghe",
+ "translate-page-limit": "Limite",
+ "translate-page-limit-option": "$1 {{PLURAL:$1|messàgge|messàgge}} pe pàgene.",
+ "translate-submit": "Analizze",
+ "translate-page-navigation-legend": "Navigazzione",
+ "translate-page-showing": "Stoche a fazze vedè le messàgge da $1 a $2 de $3.",
+ "translate-page-showing-all": "Stoche a fazze vedè $1 {{PLURAL:$1|messàgge}}.",
+ "translate-page-showing-none": "Nisciune messàgge da fà vedè.",
+ "translate-page-paging-links": "[ $1 ] [ $2 ]",
+ "translate-next": "Pàgena successive",
+ "translate-prev": "Pàgena precedende",
+ "translate-page-description-legend": "'Mbormazione sus a 'u gruppe",
+ "translate-page-description-hasoptional": "Stu gruppe de messàgge tène messàgge opzionale.\nLe messàgge opzione avessera sulamende essere tradotte quanne 'a lènga toje tène richieste speciale cumme a quidde de nò ausà spazie o probbietà de translitterazione de le nome. $1",
+ "translate-page-description-hasoptional-open": "Fà vedè le messàgge opzionale.",
+ "translate-page-edit": "cange",
+ "translate-ext-url": "<hr />Site web: $1",
+ "translate-optional": "(opzionale)",
+ "translate-ignored": "(ignorate)",
+ "translate-edit-title": "Cange \"$1\"",
+ "translate-edit-definition": "Definizione d'u messàgge",
+ "translate-edit-translation": "Traduzione",
+ "translate-edit-contribute": "condrebbute",
+ "translate-edit-no-information": "<em>Stu messàgge non ge tène 'na documendazione.\nCe tu canusce addò o cumme stu messàgge avène ausate, tu puè dà 'na màne a otre tradutture pe aggiungere 'a documendazione a stu messàgge.</em>",
+ "translate-edit-information": "'Mbormaziune sus a 'u messàgge ($1)",
+ "translate-edit-in-other-languages": "Messàgge jndr'à otre lènghe",
+ "translate-edit-committed": "Traduzione de mò jndr'à 'u softuer",
+ "translate-edit-warnings": "Avverteminde sus a le traduziune 'ngomblete",
+ "translate-edit-tmsugs": "Suggereminde da le memorie de le traduziune e da le traduziune de le maghene",
+ "translate-edit-tmmatch-source": "Teste origgenale d'a traduzione: $1",
+ "translate-edit-tmmatch": "$1% de combronde",
+ "translate-use-suggestion": "Sostituisce 'a traduzione de mò cu le suggereminde.",
+ "translate-edit-nopermission": "Tu è abbesogne de le permesse pe traducere le messàgge.",
+ "translate-edit-askpermission": "Richieste de permesse",
+ "translate-magic-pagename": "Traduzione Estese de MediaUicchi",
+ "translate-magic-module": "Module:",
+ "translate-magic-submit": "Analizze",
+ "translate-magic-cm-export": "Esporte",
+ "translate-magic-nothing-to-export": "Non ge stè ninde da esportà.",
+ "translate-magic-cm-to-be": "Adda essere",
+ "translate-magic-cm-current": "Ete mò",
+ "translate-magic-cm-original": "Origginale",
+ "translate-magic-cm-comment": "Commende:",
+ "translate-magic-cm-save": "Reggistre",
+ "translate-magic-cm-updatedusing": "Aggiornate ausanne [[Special:AdvancedTranslate|{{int:Translate-magic-pagename}}]]",
+ "translate-magic-cm-savefailed": "Reggistrazione fallite",
+ "translate-magic-special": "Soprannome de le pàggene speciale",
+ "translate-magic-words": "Parole maggeche",
+ "translate-magic-namespace": "Nome de le namespace",
+ "translate-magic-notsaved": "'U cangiamende tune non g'à state reggistrate!",
+ "translate-magic-errors": "Pe piacere corregge {{PLURAL:$1|'u seguende errore|le seguende errore}} jndr'à le traduziune:",
+ "translate-magic-saved": "Le cangiaminde tune onne state reggistrate correttamende.",
+ "translate-checks-parameters": "{{PLURAL:$2|'U seguende parametre non g'è|'U seguende parametre non ge sonde}} ausate:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-parameters-unknown": "{{PLURAL:$2|'U seguende parametre jè|'U seguende parametre sò}} scanusciute:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links": "{{PLURAL:$2|'U collegamende suguende jè probblematiche|Le $2 collegaminde seguende sò probblematece}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links-missing": "{{PLURAL:$2|'U collegamende suguende jè |Le $2 collegaminde seguende sò }} mangande:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-xhtml": "Pe piacere sostituisce {{PLURAL:$2|'u tag|le tag}} cu une corrette:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-plural": "'A definizioen ause <nowiki>{{PLURAL:}}</nowiki> ma 'a traduzione none.",
+ "translate-checks-plural-forms": "<nowiki>{{PLURAL:}}</nowiki> {{PLURAL:$1|ha state date 'nu module form|onne state date $1 module}} ma {{PLURAL:$2|sulamende 'nu module jè|$2 module sò}} supportate (escludenne 0= e 1= module).",
+ "translate-checks-plural-dupe": "<nowiki>{{PLURAL:}}</nowiki> ave module duplicate a 'a fine. <nowiki>{{PLURAL:$1|pecore|pecore}}</nowiki> avessera essere scritte cumme a <nowiki>{{PLURAL:$1|pecore}}</nowiki>.",
+ "translate-checks-pagename": "'U namespace ha cangiate da 'a definizione",
+ "translate-checks-format": "Sta traduzione non ge segue 'a definizione o tène 'na sindassi invalide: $1",
+ "translate-checks-parametersnotequal": "'U cunde de le parametre jè {{PLURAL:$1|$1}}; invece avessa essere {{PLURAL:$2|$2}}.",
+ "translate-checks-malformed": "<nowiki>$1</nowiki> jè malformate.",
+ "translate-checks-fudforum-syntax": "Ause <nowiki>$1</nowiki> invece de <nowiki>$2</nowiki> jndr'à stu proggette.",
+ "translate-pref-nonewsletter": "No me mannà email da le newsletter",
+ "translate-pref-editassistlang": "Assistende de le lènghe:",
+ "prefs-translate": "Opziune de traduzione",
+ "translate-pref-editassistlang-bad": "Codece d'a lènghe invalide jndr'à l'elenghe:\n<nowiki>$1</nowiki>.",
+ "right-translate": "Cange ausanne l'inderfacce de traduzione",
+ "right-translate-manage": "Gestisce le gruppe de messàgge",
+ "action-translate-manage": "gestisce le gruppe de messàgge",
+ "right-translate-import": "'Mborte le traduziune fore linèe",
+ "action-translate-import": "'mborte le traduziune fore linèe",
+ "right-translate-messagereview": "Revide le traduziune",
+ "right-translate-groupreview": "Cange 'u state d'u flusse de fatìe de le gruppe de messàgge",
+ "translate-rc-translation-filter": "Filtre de traduziune:",
+ "translate-rc-translation-filter-no": "No fà ninde",
+ "translate-rc-translation-filter-only": "Fà vedè sulamende le traduziune",
+ "translate-rc-translation-filter-filter": "Filtre le traduziune",
+ "translate-rc-translation-filter-site": "cnage sulamende le messàgge d'u site",
+ "translationstats": "Statisteche de le traduziune",
+ "translate-stats-edits": "Cangiaminde",
+ "translate-stats-users": "Tradutture",
+ "translate-stats-registrations": "Reggistraziune",
+ "translate-stats-reviews": "Reviste",
+ "translate-stats-reviewers": "Rivisitature",
+ "translate-statsf-intro": "Puè generà le statisteche semblice cu stu module.\nTutte le valore onne limite minime e massime.",
+ "translate-statsf-options": "Opziune d'u grafeche",
+ "translate-statsf-width": "Larghezze in pixel:",
+ "translate-statsf-height": "Altezze in pixel:",
+ "translate-statsf-days": "Periode d'u tiembe in sciurnate:",
+ "translate-statsf-start": "Date de partenze:",
+ "translate-statsf-scale": "Granularità:",
+ "translate-statsf-scale-months": "Mise",
+ "translate-statsf-scale-weeks": "Sumáne",
+ "translate-statsf-scale-days": "Giurne",
+ "translate-statsf-scale-hours": "Ore",
+ "translate-statsf-count": "Mesure:",
+ "translate-statsf-count-edits": "Numere de cangiaminde",
+ "translate-statsf-count-users": "Tradutture attive",
+ "translate-statsf-count-registrations": "Utinde nuève",
+ "translate-statsf-count-reviews": "Revisitature de le traduziune",
+ "translate-statsf-count-reviewers": "Rivisitature",
+ "translate-statsf-language": "Elenghe separate da virgole de le codece de le lènghe:",
+ "translate-statsf-group": "Elenghe separate da virgole de le codece de le gruppe:",
+ "translate-statsf-submit": "Andeprime",
+ "translate-tag-category": "Pàggene traducibbele",
+ "translate-tag-page-desc": "Traduzione d'a pàgene uicchi [[$2|$1]].",
+ "translate-sidebar-alltrans": "Jndr'à l'otre lènghe",
+ "translations": "Tutte le traduziune",
+ "translations-summary": "Mitte 'nu messagge sotte pe fa vedè tutte le traduziune disponibbele.",
+ "translate-translations-no-message": "\"$1\" non g'è 'nu messagge traducibbele",
+ "translate-translations-none": "Non ge stonne traduziune pe \"$1\"",
+ "translate-translations-count": "Acchiate {{PLURAL:$1|'na traduzione|$1 traduziune}}.",
+ "translate-translations-fieldset-title": "Mèssagge",
+ "translate-translations-messagename": "Nome:",
+ "translate-translations-project": "Pruggette:",
+ "translate-translations-history-short": "h",
+ "languagestats": "Statisteche d'a lènghe",
+ "languagestats-summary": "Sta pàgene face vedè le traduziune pe tutte le gruppe de messàgge pe 'na lènghe.",
+ "languagestats-stats-for": "Statisteche de le traduziune pe $1 ($2).",
+ "languagestats-recenttranslations": "traduziune recende",
+ "translate-langstats-expand": "spanne",
+ "translate-langstats-collapse": "scunne",
+ "translate-langstats-expandall": "spanne tutte",
+ "translate-langstats-collapseall": "scunne tutte",
+ "translate-language-code": "Codece d'a Lènghe",
+ "translate-language-code-field-name": "Codece d'a Lènghe:",
+ "translate-language": "Lènghe",
+ "translate-total": "Messagge Totale",
+ "translate-untranslated": "Senza traduzione",
+ "translate-percentage-complete": "% de Combletamende",
+ "translate-percentage-fuzzy": "Non aggiornete",
+ "translate-languagestats-overall": "Tutte le gruppe de messàgge 'nzieme",
+ "translate-ls-submit": "Fà vedè le statisteche",
+ "translate-ls-column-group": "Gruppe de messàgge",
+ "translate-mgs-pagename": "Statisteche de le gruppe de messàgge",
+ "translate-mgs-fieldset": "Fà vedè le preferenze",
+ "translate-mgs-group": "Messàgge d'u gruppe:",
+ "translate-mgs-nocomplete": "No fà vedè le lènghe ca onne le traduziune combletate",
+ "translate-mgs-submit": "Fà vedè le statisteche",
+ "translate-mgs-column-language": "Lènghe",
+ "translate-mgs-totals": "Tutte le lènghe 'nzieme",
+ "translate-mgs-invalid-group": "'U gruppe specifiche $1 non g'esiste.",
+ "translate-mgs-nothing": "Ninde da fà vedè pe le statisteche cercate.",
+ "supportedlanguages": "Lènghe supportate",
+ "supportedlanguages-portallink": "[$1] $2 - $3",
+ "supportedlanguages-portallink-nocldr": "[$1] $2",
+ "supportedlanguages-translators": "{{PLURAL:$2|Traduttore|Tradutture}}: $1",
+ "supportedlanguages-recenttranslations": "traduziune recende",
+ "supportedlanguages-count": "$1 {{PLURAL:$1|lènghe}} in totale.",
+ "supportedlanguages-activity": "$1: $2 {{PLURAL:$2|cangiamende|cangiaminde}} - l'urteme cangiamende $3 {{PLURAL:$3|sciurne}} fà",
+ "translate-save": "Reggistre ($1)",
+ "translate-jssti-add": "Aggiunge a l'elenghe",
+ "managemessagegroups": "Gestione de le gruppe de messàgge",
+ "translate-smg-notallowed": "Non ge t'è permesse de eseguì st'azione.",
+ "translate-smg-nochanges": "Non ge stonne cangiaminde da processà.",
+ "translate-smg-submit": "Conferme le cangiaminde pu processe",
+ "translate-smg-submitted": "'A definizione de le messàgge ha state aggiornate. Le cangiaminde stonne avènene processate da sotta sotte.",
+ "translate-smg-left": "Condenute d'u messàgge jndr'à uicchi",
+ "translate-smg-right": "Cangiaminde ca arrivane",
+ "translate-manage-import-diff": "Messàgge $1 | Aziune: $2",
+ "translate-manage-import-new": "Messàgge nuève $1",
+ "translate-manage-import-deleted": "Messàgge scangellate $1",
+ "translate-manage-action-import": "'Mborte",
+ "translate-manage-action-conflict": "'Mborte e mitte da revedè",
+ "translate-manage-action-ignore": "Ignore",
+ "translate-manage-action-fuzzy": "'Mborte e mitte le traduziune da revedè",
+ "translate-manage-nochanges": "Non ge stonne cangiaminde jndr'à le definiziune de le messàgge jndr'à stu gruppe.",
+ "translate-manage-submit": "Esegue",
+ "translate-manage-import-done": "'Mbortazione combletate!",
+ "importtranslations": "'Mborte le traduziune",
+ "translate-import-from-local": "Carecamende d'u file locale:",
+ "translate-import-load": "Careche 'u file",
+ "translate-import-err-dl-failed": "Indisponibbile a analizzà 'u file:\n$1",
+ "translate-import-err-ul-failed": "Carecamende d'u file non g'ave assute",
+ "translate-import-err-invalid-title": "'U nome d'u file date <nowiki>$1</nowiki> ere invalide.",
+ "translate-import-err-no-such-file": "'U file <nowiki>$1</nowiki> non g'esiste o non già state carecate in locale.",
+ "translate-import-err-stale-group": "Jndr'à 'u gruppe de messàgge stu file non g'esiste.",
+ "translate-js-summary": "Riepileghe:",
+ "translate-js-save": "Reggìstre",
+ "translate-js-next": "Reggìstre e iapre 'u prossime",
+ "translate-js-nonext": "Quiste ere l'urteme messàgge sus a sta pàgene.",
+ "translate-js-skip": "Zumbe a 'u prossime",
+ "translate-js-save-failed": "Reggistrazione fallite. Pe piacere segnale st'errore.",
+ "translate-js-history": "Cunde d'a traduzione",
+ "translate-js-support": "Fà 'na domande",
+ "translate-gs-pos": "Pos.",
+ "translate-gs-code": "Codece",
+ "translate-gs-continent": "Continende",
+ "translate-gs-speakers": "Parlature",
+ "translate-gs-score": "Pundegge",
+ "translate-gs-multiple": "Multiple",
+ "translate-gs-count": "Condegge",
+ "translate-gs-total": "Totale",
+ "translate-gs-avgscore": "Pundegge medie",
+ "translate-documentation-language": "Documendazione d'u messàgge",
+ "translate-searchprofile": "Tradutture",
+ "translate-searchprofile-tooltip": "Cirche da tutte le traduziune",
+ "translate-search-languagefilter": "Filtre pe lènghe:",
+ "translate-search-nofilter": "Nisciune filtre",
+ "translate-messagereview-submit": "Signe reviste",
+ "translate-messagereview-progress": "Stoche a segne cumme reviste...",
+ "translate-messagereview-failure": "Stoche a segne cumme reviste fallite: $1",
+ "translate-messagereview-done": "Reviste",
+ "translate-messagereview-reviews": "Reviste da {{PLURAL:$1|'n'utende|$1 utinde}}",
+ "translate-messagereview-reviewswithyou": "Reviste da {{PLURAL:$1|te|$1 utinde cu te}}",
+ "api-error-invalidrevision": "Traduzione none acchiate",
+ "api-error-unknownmessage": "Messàgge none acchiate",
+ "api-error-fuzzymessage": "Traduzione signate cumme da revedè",
+ "api-error-owntranslation": "Tu non ge puè signà 'a traduziona toje cumme reviste",
+ "translate-messagereview-no-fuzzy": "Le traduziune non confermate non ge ponne essere signate cumme reviste.",
+ "translate-messagereview-no-own": "Tu non ge puè signà 'a traduziona toje cumme reviste.",
+ "translate-messagereview-doit": "Signe sta traduzione cumme reviste.",
+ "log-name-translationreview": "Archivije de le revisitaziune de le traduziune",
+ "logentry-translationreview-message": "$1 traduzione {{GENDER:$2|reviste}} $3",
+ "group-translate-sandboxed": "Tradutture none approvate",
+ "group-translate-sandboxed-member": "{{GENDER:$1|traduttore none approvate}}",
+ "translate-workflow-state-": "(none 'mbostate)",
+ "translate-workflowstatus": "State: $1",
+ "translate-workflow-set-do": "'Mboste",
+ "translate-workflow-set-doing": "Stoche a 'mboste...",
+ "translate-workflow-set-done": "'Mbostate!",
+ "translate-stats-workflow": "State",
+ "translate-workflowgroup-label": "State de le flusse de fatìe",
+ "translate-workflowgroup-desc": "Stu gruppe de messàgge face vedè le state de le flusse de fatìe de le traduziune.\nLe state sò definite jndr'à variabbile de configurazione $wgTranslateWorkflowStates.",
+ "translate-dynagroup-recent-label": "Traduziune recende",
+ "translate-dynagroup-additions-label": "Urteme aggiunde",
+ "translate-dynagroup-additions-desc": "Stu gruppe de messàgge face vedè le messàgge nuève e cangiate.",
+ "translate-dynagroup-by": "Traduziona fatte da {{GENDER:$1|$1}}",
+ "translate-dynagroup-byc": "Traduziona fatte da {{GENDER:$1|$1}} ($2)",
+ "translate-dynagroup-last": "Urteme cangiamende de {{GENDER:$1|$1}}",
+ "translate-dynagroup-lastc": "Urteme cangiamende de {{GENDER:$1|$1}} ($2)",
+ "translate-gethelp": "Ajute",
+ "translate-msggroupselector-projects": "Gruppe de messàgge",
+ "translate-msggroupselector-search-placeholder": "Gruppe de ricerche",
+ "translate-msggroupselector-search-all": "Tutte",
+ "translate-msggroupselector-search-recent": "Recende",
+ "translate-msggroupselector-view-subprojects": "$1 {{PLURAL:$1|sottogruppe}}",
+ "tux-languageselector": "Traduce jndr'à",
+ "tux-tab-all": "Tutte",
+ "tux-tab-untranslated": "Non tradotte",
+ "tux-tab-outdated": "Non aggiornate",
+ "tux-tab-translated": "Tradotte",
+ "tux-tab-unproofread": "Non reviste",
+ "tux-edit": "Cange",
+ "tux-status-optional": "Opzionale",
+ "tux-status-fuzzy": "Non aggiornate",
+ "tux-status-proofread": "Reviste",
+ "tux-status-translated": "Tradotte",
+ "tux-status-saving": "Stoche a reggistre...",
+ "tux-status-unsaved": "Non reggistrate",
+ "tux-editor-placeholder": "'A traduziona toje",
+ "tux-editor-paste-original-button-label": "Copie 'u teste iniziale",
+ "tux-editor-discard-changes-button-label": "Scitte le cangiaminde",
+ "tux-editor-save-button-label": "Reggistre 'a traduzione",
+ "tux-editor-skip-button-label": "Zumbe a 'u prossime",
+ "tux-editor-cancel-button-label": "Annulle",
+ "tux-editor-confirm-button-label": "Conferme 'a traduzione",
+ "tux-editor-shortcut-info": "Cazze \"$1\" pe reggistrà o \"$2\" pe zumbà a 'u prossime messàgge",
+ "tux-editor-edit-desc": "Cange 'a documendazione",
+ "tux-editor-add-desc": "Aggiunge 'a documendazione",
+ "tux-editor-suggestions-title": "Suggereminde",
+ "tux-editor-in-other-languages": "Jndr'à l'otre lènghe",
+ "tux-editor-need-more-help": "E' abbesògne de 'na màne?",
+ "tux-editor-ask-help": "Cirche cchiù 'mbormaziune",
+ "tux-editor-tm-match": "$1% de combronde",
+ "tux-warnings-more": "{{PLURAL:$1|$1 de cchiù}}",
+ "tux-warnings-hide": "scunne",
+ "tux-editor-save-failed": "'A reggistrazione d'a traduzione ave fallite: $1",
+ "tux-editor-n-uses": "ausate $1 {{PLURAL:$1|vote}}",
+ "tux-editor-message-desc-more": "'Ndruche de cchiù",
+ "tux-editor-message-desc-less": "'Ndruche de mene",
+ "tux-editor-clear-translated": "Scunne tradotte",
+ "tux-editor-proofreading-mode": "Revisite",
+ "tux-editor-translate-mode": "Elenghe",
+ "tux-editor-proofreading-hide-own-translations": "Scunne le traduziune tune",
+ "tux-editor-proofreading-show-own-translations": "Fà vedè le traduziune tune",
+ "tux-proofread-action-tooltip": "Signe cumme reviste",
+ "tux-proofread-edit-label": "Cange",
+ "tux-editor-page-mode": "Pàgene",
+ "tux-editor-outdated-warning": "Sta traduzione ave abbesògne de essere aggiornate.",
+ "tux-editor-outdated-warning-diff-link": "Fà vedè e differenze",
+ "tux-editor-doc-editor-placeholder": "Documendazione d'u messàgge",
+ "tux-editor-doc-editor-save": "Reggìstre 'a documendazione",
+ "tux-editor-doc-editor-cancel": "Annulle",
+ "tux-messagetable-more-messages": "$1 cchiù {{PLURAL:$1|messàgge}}",
+ "tux-messagetable-loading-messages": "Stoche a careche {{PLURAL:$1|messàgge}}...",
+ "tux-message-filter-placeholder": "Elenghe de le filtre",
+ "tux-message-filter-result": "Acchiate $1 {{PLURAL:$1|resultate}} pe \"$2\"",
+ "tux-message-filter-advanced-button": "Ricerche avanzate",
+ "tux-message-filter-optional-messages-label": "Messàgge opzionale",
+ "tux-proofread-translated-by-self": "Tradotte da te",
+ "tux-empty-list-all": "Stu gruppe de messàgge jè vacande",
+ "tux-empty-list-all-guide": "Scacchie 'n'otre gruppe de messàgge da traducere",
+ "tux-empty-list-translated": "Nisciune messàgge tradotte",
+ "tux-empty-list-translated-guide": "Ne puè dà 'na màne a traducere",
+ "tux-empty-list-translated-action": "Traduce",
+ "tux-empty-no-messages-to-display": "Nisciune messàgge da vedè.",
+ "tux-empty-there-are-optional": "Stonne messàgge opzionale non visibbile jndr'à l'elenghe",
+ "tux-empty-show-optional-messages": "Fà vedè le messàgge opzionale",
+ "tux-empty-no-outdated-messages": "Nisciune messàgge da aggiornà",
+ "tux-empty-nothing-to-proofread": "Ninde da rivedè",
+ "tux-empty-list-other": "Ninde da traducere",
+ "tux-empty-list-other-guide": "Tu puè dà 'na màne revedenne le traduziune esistende",
+ "tux-empty-list-other-action": "Traduziune reviste",
+ "tux-empty-list-other-link": "Fà vedè tutte le messàgge",
+ "tux-editor-close-tooltip": "Achiude",
+ "tux-editor-expand-tooltip": "Spanne",
+ "tux-editor-collapse-tooltip": "Scunne",
+ "tux-editor-message-tools-history": "Cunde",
+ "tux-editor-message-tools-translations": "Tutte le traduziune",
+ "tux-editor-loading": "Stoche a scareche…",
+ "translate-search-more-languages-info": "$1 cchiù {{PLURAL:$1|lènghe}}",
+ "translate-statsbar-tooltip": "$1% tradotte, $2% reviste",
+ "translate-statsbar-tooltip-with-fuzzy": "$1% tradotte, $2% reviste, $3% da aggiornà",
+ "translate-search-more-groups-info": "$1 cchiù {{PLURAL:$1|gruppe}}"
+}
diff --git a/MLEB/Translate/i18n/core/rtm.json b/MLEB/Translate/i18n/core/rtm.json
new file mode 100644
index 00000000..735d60cb
--- /dev/null
+++ b/MLEB/Translate/i18n/core/rtm.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Jose77"
+ ]
+ },
+ "translate-page-edit": "a'tū'ạki"
+}
diff --git a/MLEB/Translate/i18n/core/ru.json b/MLEB/Translate/i18n/core/ru.json
new file mode 100644
index 00000000..8e1459e8
--- /dev/null
+++ b/MLEB/Translate/i18n/core/ru.json
@@ -0,0 +1,406 @@
+{
+ "@metadata": {
+ "authors": [
+ "Ahonc",
+ "AlexSm",
+ "Amire80",
+ "Askarmuk",
+ "Base",
+ "Byulent",
+ "DCamer",
+ "Eleferen",
+ "Eugrus",
+ "Ferrer",
+ "Huuchin",
+ "Ignatus",
+ "KPu3uC B Poccuu",
+ "Kaganer",
+ "Lockal",
+ "MaxSem",
+ "NBS",
+ "Okras",
+ "Rubin",
+ "Tempodivalse",
+ "Volkov",
+ "Александр Сигачёв"
+ ]
+ },
+ "translate": "Перевод",
+ "translate-desc": "[[Special:Translate|Служебная страница]] для перевода MediaWiki и прочих программ",
+ "translate-taskui-view": "Показать все сообщения",
+ "translate-taskui-untranslated": "Показать непереведённые сообщения",
+ "translate-taskui-optional": "Показать дополнительные сообщения",
+ "translate-taskui-acceptqueue": "Только сообщения, ожидающие моей проверки",
+ "translate-taskui-reviewall": "Проверить все переводы",
+ "translate-taskui-export-to-file": "Экспорт в родном формате",
+ "translate-taskui-export-as-po": "Экспорт для оффлайнового перевод",
+ "translate-taction-translate": "Перевод",
+ "translate-taction-proofread": "Проверка",
+ "translate-taction-lstats": "Статистика языка",
+ "translate-taction-mstats": "Статистика группы сообщений",
+ "translate-taction-export": "Экспорт",
+ "translate-taction-disabled": "Это действие отключено в этой вики.",
+ "translate-page-no-such-language": "Передан неверный код языка",
+ "translate-page-no-such-group": "Неверно указана группа.",
+ "translate-page-disabled": "В этом разделе переводы на данный язык отключены. Причина:\n\n<em>$1</em>",
+ "translate-language-disabled": "Возможность перевода на этот язык отключена.",
+ "translate-page-settings-legend": "Параметры",
+ "translate-page-group": "Группа",
+ "translate-page-language": "Язык",
+ "translate-page-limit": "Ограничение",
+ "translate-page-limit-option": "$1 {{PLURAL:$1|сообщение|сообщения|сообщений}} на страницу",
+ "translate-submit": "Вывести",
+ "translate-page-navigation-legend": "Навигация",
+ "translate-page-showing": "Показаны сообщения с $1 по $2 (из $3).",
+ "translate-page-showing-all": "Показано $1 {{PLURAL:$1|сообщение|сообщения|сообщений}}.",
+ "translate-page-showing-none": "Нет сообщений для показа.",
+ "translate-next": "следующая страница",
+ "translate-prev": "предыдущая страница",
+ "translate-page-description-legend": "Информация о группе",
+ "translate-page-description-hasoptional": "В этой группе содержатся дополнительные сообщения.\nДополнительные сообщения переводятся только в тех случаях, когда ваш язык предъявляет какие-то дополнительные требования, — например, если где-то не должны использоваться пробелы, или при транслитерации имён собственных. $1",
+ "translate-page-description-hasoptional-open": "Показывать дополнительные сообщения.",
+ "translate-page-edit": "изменить",
+ "translate-ext-url": "<hr />Сайт: $1",
+ "translate-optional": "(необязательное)",
+ "translate-ignored": "(игнорируемое)",
+ "translate-edit-title": "Изменить «$1»",
+ "translate-edit-definition": "Формулировка сообщения",
+ "translate-edit-translation": "Перевод",
+ "translate-edit-contribute": "править",
+ "translate-edit-no-information": "<em>Это сообщение не имеет описания. Если вы знаете, где или как это сообщение используется, то можете помочь другим переводчикам, добавив к нему описание.</em>",
+ "translate-edit-information": "Информация о сообщении ($1)",
+ "translate-edit-in-other-languages": "Сообщение на других языках",
+ "translate-edit-committed": "Текущий перевод в программе",
+ "translate-edit-warnings": "Предупреждения о неполных переводах",
+ "translate-edit-tmsugs": "Предложения из памяти переводов",
+ "translate-edit-tmmatch-source": "Текст исходного сообщения для перевода: $1",
+ "translate-edit-tmmatch": "$1% соответствие",
+ "translate-use-suggestion": "Заменить текущий текст перевода на эту подсказку.",
+ "translate-edit-nopermission": "Для перевода сообщений вам требуется получить права переводчика.",
+ "translate-edit-askpermission": "Получить разрешение",
+ "translate-magic-pagename": "Углублённый перевод MediaWiki",
+ "translate-magic-help": "Вы можете переводить псевдонимы служебных страниц, «волшебные слова» и названия пространств имён.\n\nСлужебные страницы и «волшебные слова» могут иметь несколько переводов.\nПереводы разделяются запятой (,).\nНазвания пространств имён могут иметь только один вариант перевода.\n\nПеревод названий пространств имён, содержащих страницы обсуждений («<code>$1 talk</code>»), может оказаться сложнее, так как «<code>$1</code>» здесь будет заменено на имя сайта (например, «<code>{{ns:project_talk}}</code>»).\nЕсли подобная грамматическая конструкция для вашего языка некорректна без изменения имени сайта, сообщите нам об этом на странице [[Support]].\n\nЧтобы сохранить изменения, вы должны входить в группу переводчиков.\nИзменения не будут сохранены, пока вы не нажмёте кнопку ниже.",
+ "translate-magic-module": "Модуль:",
+ "translate-magic-submit": "Вывести",
+ "translate-magic-cm-export": "Выгрузить",
+ "translate-magic-nothing-to-export": "Нечего экспортировать.",
+ "translate-magic-cm-to-be": "Должно быть",
+ "translate-magic-cm-current": "Текущее",
+ "translate-magic-cm-original": "Исходное",
+ "translate-magic-cm-comment": "Примечание:",
+ "translate-magic-cm-save": "Сохранить",
+ "translate-magic-cm-updatedusing": "Обновлено с помощью [[Special:AdvancedTranslate|{{int:Translate-magic-pagename}}]]",
+ "translate-magic-cm-savefailed": "Сохранение не удалось",
+ "translate-magic-special": "Псевдонимы служебных страниц",
+ "translate-magic-words": "Волшебные слова",
+ "translate-magic-namespace": "Пространства имён",
+ "translate-magic-notsaved": "Ваша правка не сохранена!",
+ "translate-magic-errors": "Пожалуйста, исправьте {{PLURAL:$1|1=следующую ошибку|следующие ошибки}} в переводе:",
+ "translate-magic-saved": "Сделанные изменения успешно сохранены.",
+ "translate-checks-parameters": "{{PLURAL:$2|1=Следующий параметр не используется|Следующие параметры не используются}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-parameters-unknown": "{{PLURAL:$2|1=Неизвестный параметр|Неизвестные параметры}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-balance": "Непарное количество открывающих и закрывающих {{PLURAL:$2|скобок}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links": "{{PLURAL:$2|1=Следующая ссылка вызывает проблемы|Следующие ссылки вызывают проблемы}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links-missing": "{{PLURAL:$2|Отсутствует $2 ссылка|Отсутствуют $2 ссылки|Отсутствуют $2 ссылок}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-xhtml": "Пожалуйста, исправьте {{PLURAL:$2|1=следующий тег|следующие теги}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-plural": "Оригинал использует <nowiki>{{PLURAL:}}</nowiki>, а перевод — нет.",
+ "translate-checks-plural-forms": "Выражению <nowiki>{{PLURAL:}}</nowiki> {{PLURAL:$1|была дана одна форма|были даны $1 формы|были даны $1 форм}}, но {{PLURAL:$2|поддерживается только $2 форма|поддерживаются $2 формы|поддерживаются $2 форм|1=поддерживается только одна форма}} (кроме форм 0= и 1=).",
+ "translate-checks-plural-dupe": "В конце выражения <nowiki>{{PLURAL:}}</nowiki> две одинаковые формы. Вместо <nowiki>{{PLURAL:$1|пальто|пальто}}</nowiki> лучше написать <nowiki>{{PLURAL:$1|пальто}}</nowiki>.",
+ "translate-checks-pagename": "Изменилось определение пространства имён",
+ "translate-checks-format": "Этот перевод не соответствует определению или содержит синтаксическую ошибку: $1",
+ "translate-checks-escape": "Следующая управляющая последовательность может быть несущественной: <strong>$1</strong>",
+ "translate-checks-parametersnotequal": "Число параметров — $1, а {{PLURAL:$2|1=должен|должно}} быть — $2.",
+ "translate-checks-malformed": "<nowiki>$1</nowiki> некорректен.",
+ "translate-checks-fudforum-syntax": "Использовать в этом проекте <nowiki>$1</nowiki> вместо <nowiki>$2</nowiki>.",
+ "translate-pref-nonewsletter": "Не отправлять мне информационный бюллетень по электронной почте",
+ "translate-pref-editassistlang": "Вспомогательные языки:",
+ "prefs-translate": "Настройки перевода",
+ "translate-pref-editassistlang-help": "Разделённый запятыми список кодов языков.\nПереводы на эти языки будут показаны при правке сообщений.\nСписок по умолчанию зависит от вашего языка.",
+ "translate-pref-editassistlang-bad": "Неверный языковой код в списке:\n<nowiki>$1</nowiki>.",
+ "right-translate": "правка с использованием интерфейса перевода",
+ "right-translate-manage": "управление группами сообщений",
+ "action-translate-manage": "управление группами сообщений",
+ "right-translate-import": "импортирование переводов, выполненных в оффлайне",
+ "action-translate-import": "импорт переводов, выполненных в оффлайне",
+ "right-translate-messagereview": "досмотр переводов",
+ "right-translate-groupreview": "изменять состояние обработки групп сообщений",
+ "translate-rc-translation-filter": "Фильтровать переводы:",
+ "translate-rc-translation-filter-no": "Без ограничений",
+ "translate-rc-translation-filter-only": "Показать только переводы",
+ "translate-rc-translation-filter-filter": "Скрыть переводы",
+ "translate-rc-translation-filter-site": "Только системные сообщения сайта",
+ "translationstats": "Статистика переводов",
+ "translate-stats-edits": "Правок",
+ "translate-stats-users": "Переводчики",
+ "translate-stats-registrations": "Регистрации",
+ "translate-stats-reviews": "Проверки",
+ "translate-stats-reviewers": "Рецензенты",
+ "translate-statsf-intro": "Эта форма поможет вам создать удобный график. Для всех значений можно задать верхнюю и нижнюю границу.",
+ "translate-statsf-options": "Настройки графика",
+ "translate-statsf-width": "Ширина в пикселах:",
+ "translate-statsf-height": "Высота в пикселах:",
+ "translate-statsf-days": "Период времени в днях:",
+ "translate-statsf-start": "Начальная дата:",
+ "translate-statsf-scale": "Степень детализации:",
+ "translate-statsf-scale-months": "Месяцы",
+ "translate-statsf-scale-weeks": "Недели",
+ "translate-statsf-scale-days": "Дни",
+ "translate-statsf-scale-hours": "Часы",
+ "translate-statsf-count": "Мера:",
+ "translate-statsf-count-edits": "Число правок",
+ "translate-statsf-count-users": "Действующих переводчиков",
+ "translate-statsf-count-registrations": "Новые участники",
+ "translate-statsf-count-reviews": "Рецензенты перевода",
+ "translate-statsf-count-reviewers": "Рецензенты",
+ "translate-statsf-language": "Список кодов языков через запятую:",
+ "translate-statsf-group": "Список кодов групп через запятую:",
+ "translate-statsf-submit": "Предпросмотр",
+ "translate-tag-category": "Переводимые страницы",
+ "translate-tag-page-desc": "Перевод вики-страницы [[$2|$1]] с $3 ($4).",
+ "translate-sidebar-alltrans": "На других языках",
+ "translations": "Все переводы",
+ "translations-summary": "Введите имя сообщения для показа всех доступных переводов.",
+ "translate-translations-no-message": "«$1» не является сообщением, доступным для перевода",
+ "translate-translations-none": "Нет переводов для «$1»",
+ "translate-translations-count": "{{PLURAL:$1|Найден $1 перевод|Найдено $1 перевода|Найдены $1 переводов}}.",
+ "translate-translations-fieldset-title": "Сообщение",
+ "translate-translations-messagename": "Имя:",
+ "translate-translations-project": "Проект:",
+ "translate-translations-including-no-param": "Пожалуйста, укажите ключ сообщения в качестве параметра подстраницы",
+ "translate-translations-history-short": "ист.",
+ "languagestats": "Статистика по языку",
+ "languagestats-summary": "На этой странице представлена статистика переводов для всех групп сообщений данного языка.",
+ "messagegroupstats-summary": "Эта страница показывает статистику группы сообщений.",
+ "languagestats-stats-for": "Статистика переводов на $1 язык ($2).",
+ "languagestats-recenttranslations": "недавние переводы",
+ "translate-langstats-incomplete": "Некоторые статистические данные на этой странице неполны. Для получения полных данных перезагрузите страницу.",
+ "translate-langstats-expand": "раскрыть",
+ "translate-langstats-collapse": "свернуть",
+ "translate-langstats-expandall": "раскрыть все",
+ "translate-langstats-collapseall": "свернуть все",
+ "translate-language-code": "Код языка",
+ "translate-language-code-field-name": "Код языка:",
+ "translate-suppress-complete": "Не показывать полностью переведённые группы сообщений",
+ "translate-ls-noempty": "Не показывать полностью непереведённые группы сообщений",
+ "translate-language": "Язык",
+ "translate-total": "Сообщения",
+ "translate-untranslated": "Непереведённые",
+ "translate-percentage-complete": "Выполнено",
+ "translate-percentage-fuzzy": "Устарело",
+ "translate-languagestats-overall": "Сообщения всех групп",
+ "translate-ls-submit": "Показать статистику",
+ "translate-ls-column-group": "Группа сообщений",
+ "translate-mgs-pagename": "Статистика групп сообщений",
+ "translate-mgs-fieldset": "Показать настройки",
+ "translate-mgs-group": "Группа сообщений:",
+ "translate-mgs-nocomplete": "Не показывать языки, перевод на которые полностью завершён",
+ "translate-mgs-noempty": "Не показывать языки, перевод на которые еще на начинался",
+ "translate-mgs-submit": "Показать статистику",
+ "translate-mgs-column-language": "Язык",
+ "translate-mgs-totals": "Все языки",
+ "translate-mgs-invalid-group": "Указанная группа $1 не существует.",
+ "translate-mgs-nothing": "Нет данных для отображения.",
+ "supportedlanguages": "Поддерживаемые языки",
+ "supportedlanguages-summary": "На этой странице приведён список поддерживаемых проектом {{SITENAME}} языков\nвместе с именами тех, кто здесь трудится над переводами на эти языки.\nИмя переводчика отображается тем крупнее, чем больше правок он сделал.\nПо цвету подчёркивания можно понять, насколько давно переводчик последний раз совершал здесь какое-либо действие.",
+ "supportedlanguages-colorlegend": "Цветовая легенда: последний перевод был сделан $1 {{PLURAL:$1|день|дня|дней}} назад.",
+ "supportedlanguages-portallink": "[$1] $2 — $3",
+ "supportedlanguages-translators": "{{PLURAL:$2|{{GENDER:$3|Переводчик|Переводчица}}|Переводчики}}: $1",
+ "supportedlanguages-recenttranslations": "недавние переводы",
+ "supportedlanguages-count": "Всего $1 {{PLURAL:$1|язык|языка|языков}}.",
+ "supportedlanguages-activity": "$1: $2 {{PLURAL:$2|правка|правки|правок}} — последняя правка $3 {{PLURAL:$3|день|дня|дней}} назад",
+ "translate-save": "Сохранить ($1)",
+ "translate-jssti-add": "Добавить в список",
+ "managemessagegroups": "Управление группами сообщений",
+ "translate-smg-notallowed": "Вы не можете выполнить это действие.",
+ "translate-smg-nochanges": "Нет изменений для обработки.",
+ "translate-smg-submit": "Отправить изменения для обработки",
+ "translate-smg-submitted": "Описания сообщений обновлены. Изменения в настоящее время обрабатываются в фоновом режиме.",
+ "translate-smg-more": "После внесения этих изменений появится больше изменений для обработки.",
+ "translate-smg-left": "Содержание сообщения в вики",
+ "translate-smg-right": "Входящие изменения",
+ "translate-manage-import-diff": "Сообщение $1 | Действия: $2",
+ "translate-manage-import-new": "Новое сообщение $1",
+ "translate-manage-import-deleted": "Удалённое сообщение $1",
+ "translate-manage-action-import": "Импортировать",
+ "translate-manage-action-conflict": "Импортировать и пометить как неточное",
+ "translate-manage-action-ignore": "Игнорировать",
+ "translate-manage-action-fuzzy": "Импортирование и неточные переводы",
+ "translate-manage-nochanges": "Нет никаких изменений в описаниях сообщений для этой группы.",
+ "translate-manage-nochanges-other": "Нет никаких изменений для этого языка.\nИспользуйте ссылку ниже для возвращения к просмотру подробностей группы.",
+ "translate-manage-inconsistent": "Обнаружено несоответствие в запросе.\nПожалуйста, проверьте изменения и попробуйте ещё раз. Подробности: $1.",
+ "translate-manage-toolong": "Превышено максимальное время обработки в $1 {{PLURAL:$1|секунду|секунды|секунд}}.\nПожалуйста, повторите отправку данных для продолжения обработки.",
+ "translate-manage-import-summary": "Импортирована новая версия из внешнего источника",
+ "translate-manage-conflict-summary": "Импортирована новая версия из внешнего источника. Пожалуйста, проверьте её.",
+ "translate-manage-fuzzy-summary": "Изменилось описание сообщения",
+ "translate-manage-submit": "Выполнить",
+ "translate-manage-intro-other": "Ниже приведён список изменений в переводах на язык: $1.\nПожалуйста, просмотрите изменения и выберите желаемое действие для каждого изменения.\nЕсли вы проигнорируете изменения, то это будет временным действием.",
+ "translate-manage-import-ok": "Импортирована: $1",
+ "translate-manage-import-done": "Импорт завершён!",
+ "importtranslations": "Импорт переводов",
+ "translate-import-from-local": "Загрузить локальный файл:",
+ "translate-import-load": "Загрузить файл",
+ "translate-import-err-dl-failed": "Невозможно загрузить файл:\n$1",
+ "translate-import-err-ul-failed": "Не удалось загрузить файл",
+ "translate-import-err-invalid-title": "Указанное имя файла <nowiki>$1</nowiki> неверно.",
+ "translate-import-err-no-such-file": "Файл <nowiki>$1</nowiki> не существует или не загружен локально.",
+ "translate-import-err-stale-group": "Группы сообщений, к которой принадлежит этот файл, не существует.",
+ "translate-import-err-no-headers": "Файл не является правильно построенным Gettext-файлом в формате расширения Translate.\nНевозможно определить группу и язык из заголовков файла.",
+ "translate-import-err-warnings": "Файл не является правильно построенным.\nУбедитесь, что ваш редактор не удаляет поля msgctxt.\nПодробнее: $1",
+ "translate-js-summary": "Описание:",
+ "translate-js-save": "Сохранить",
+ "translate-js-next": "Сохранить и открыть следующий",
+ "translate-js-nonext": "Это было последнее сообщение на этой странице.",
+ "translate-js-skip": "Перейти к следующему",
+ "translate-js-save-failed": "Сохранение не выполнено. Пожалуйста, сообщите об этой ошибке.",
+ "translate-js-history": "История перевода",
+ "translate-js-support": "Задать вопрос",
+ "translate-js-support-title": "Обратитесь за помощью, если не хватает информации для правильного перевода этого сообщения.",
+ "translate-js-support-unsaved-warning": "Имеются несохранённые переводы.",
+ "translate-gs-pos": "Поз.",
+ "translate-gs-code": "Код",
+ "translate-gs-continent": "Часть света",
+ "translate-gs-speakers": "Носителей",
+ "translate-gs-score": "Оценка",
+ "translate-gs-multiple": "Несколько",
+ "translate-gs-count": "Кол-во",
+ "translate-gs-total": "Всего",
+ "translate-gs-avgscore": "Ср. оценка",
+ "translate-documentation-language": "Документация сообщения",
+ "translate-searchprofile": "Переводы",
+ "translate-searchprofile-tooltip": "Поиск во всех переводах",
+ "translate-search-languagefilter": "Фильтр по языку:",
+ "translate-search-nofilter": "Без фильтрации",
+ "translate-messagereview-submit": "Пометить как проверенное",
+ "translate-messagereview-progress": "Пометить как непроверенное",
+ "translate-messagereview-failure": "Пометить как проверенное не удалось: $1",
+ "translate-messagereview-done": "Проверено",
+ "translate-messagereview-reviews": "Проверено {{PLURAL:$1|$1 участником|$1 участниками|1=другим участником}}",
+ "translate-messagereview-reviewswithyou": "Проверено {{PLURAL:$1|$1 участником, включая вас|$1 участниками, включая вас|1=вами}}",
+ "api-error-invalidrevision": "Перевод не был найден",
+ "api-error-unknownmessage": "Сообщение не было найдено",
+ "api-error-fuzzymessage": "Перевод помечен как нечёткий",
+ "api-error-owntranslation": "Вы не можете проверять свои собственные переводы",
+ "translate-messagereview-no-fuzzy": "Нечёткие переводы не могут быть помечены как проверенные.",
+ "translate-messagereview-no-own": "Вы не можете проверять свои собственные переводы.",
+ "translate-messagereview-doit": "Пометить этот перевод как проверенный.",
+ "log-name-translationreview": "Журнал проверки переводов",
+ "log-description-translationreview": "Журнал всех проверок переводов и групп сообщений.",
+ "logentry-translationreview-message": "$1 {{GENDER:$2|проверил|проверила}} перевод «$3»",
+ "logentry-translationreview-group": "$1 {{GENDER:$2|изменил|изменила}} состояние переводов страницы «$3» на $4 язык с «$6» на «$7»",
+ "group-translate-sandboxed": "Неутвержденные переводчики",
+ "group-translate-sandboxed-member": "{{GENDER:$1|неутверждённый переводчик|неутверждённая переводчица}}",
+ "right-translate-sandboxmanage": "управление правами участников, ещё не получивших полных прав (sandboxed users)",
+ "action-translate-sandboxmanage": "управлять правами участников, ещё не получивших полных прав (sandboxed users)",
+ "right-translate-sandboxaction": "выполннение действий, разрешённых для участников, ещё не получивших полных прав (sandboxed users)",
+ "action-translate-sandboxaction": "выполнять действия, разрешённые для участников, ещё не получивших полных прав (sandboxed users)",
+ "translate-workflow-state-": "(не задан)",
+ "translate-workflowstatus": "Статус: $1",
+ "translate-workflow-set-do": "Установить",
+ "translate-workflow-set-doing": "Устанавливаем...",
+ "translate-workflow-set-done": "Установлено!",
+ "translate-workflow-set-error-alreadyset": "Запрашиваемое состояние идентично текущему.",
+ "translate-workflow-autocreated-summary": "Автоматическое создание страницы состояния рабочего процесса «$1»",
+ "translate-stats-workflow": "Статус",
+ "translate-workflowgroup-label": "Состояния процесса",
+ "translate-workflowgroup-desc": "Эта группа сообщений показывает перевод состояний рабочего процесса.\nСостояния определяются с помощью переменной конфигурации $wgTranslateWorkflowStates.",
+ "translate-dynagroup-recent-label": "Недавние переводы",
+ "translate-dynagroup-recent-desc": "Эта группа сообщений отображает все недавние переводы на данный язык.\nЭтот режим наиболее полезен для задач проверки.",
+ "translate-dynagroup-additions-label": "Недавние дополнения",
+ "translate-dynagroup-additions-desc": "Эта группа показывает новые и изменённые сообщения.",
+ "translate-dynagroup-by": "Перевод выполнен {{GENDER:$1|участником|участницей}} $1",
+ "translate-dynagroup-byc": "Перевод выполнен {{GENDER:$1|участником|участницей}} $1 ($2)",
+ "translate-dynagroup-last": "Последние изменения от {{GENDER:$1|участника|участницы}} $1",
+ "translate-dynagroup-lastc": "Последние изменения от {{GENDER:$1|участника|участницы}} $1 ( $2 )",
+ "translate-gethelp": "Справка",
+ "translate-msggroupselector-projects": "Группа сообщений",
+ "translate-msggroupselector-search-placeholder": "Поиск групп",
+ "translate-msggroupselector-search-all": "Все",
+ "translate-msggroupselector-search-recent": "Недавние",
+ "translate-msggroupselector-view-subprojects": "{{PLURAL:$1|$1 подгруппа|$1 подгруппы|$1 подгрупп|1=Одна подгруппа}}",
+ "tux-languageselector": "Переводить на",
+ "tux-tab-all": "Все",
+ "tux-tab-untranslated": "Непереведённые",
+ "tux-tab-outdated": "Устаревшие",
+ "tux-tab-translated": "Переведённые",
+ "tux-tab-unproofread": "Непроверенные",
+ "tux-edit": "Правка",
+ "tux-status-optional": "Необязательно",
+ "tux-status-fuzzy": "Устарело",
+ "tux-status-proofread": "Проверка",
+ "tux-status-translated": "Переведено",
+ "tux-status-saving": "Сохраняется...",
+ "tux-status-unsaved": "Не сохранено",
+ "tux-editor-placeholder": "Ваш перевод",
+ "tux-editor-paste-original-button-label": "Вставить исходный текст",
+ "tux-editor-discard-changes-button-label": "Отменить изменения",
+ "tux-editor-save-button-label": "Сохранить перевод",
+ "tux-editor-skip-button-label": "Следующее",
+ "tux-editor-cancel-button-label": "Отмена",
+ "tux-editor-confirm-button-label": "Подтвердить перевод",
+ "tux-editor-shortcut-info": "Нажмите «$1» для сохранения, «$2» для перехода к следующему сообщению или «$3» для других ярлыков.",
+ "tux-editor-edit-desc": "Изменить документацию",
+ "tux-editor-add-desc": "Добавить документацию",
+ "tux-editor-suggestions-title": "Подсказки",
+ "tux-editor-in-other-languages": "На других языках",
+ "tux-editor-need-more-help": "Нужна помощь?",
+ "tux-editor-ask-help": "Попросите дополнительное объяснение",
+ "tux-editor-tm-match": "$1% соответствия",
+ "tux-warnings-more": "{{PLURAL:$1|ещё $1}}",
+ "tux-warnings-hide": "скрыть",
+ "tux-editor-save-failed": "Сохранение перевода не удалось: $1",
+ "tux-editor-n-uses": "использован $1 {{PLURAL:$1|раз|раза|раз}}",
+ "tux-editor-message-desc-more": "Показать подробно",
+ "tux-editor-message-desc-less": "Показать компактно",
+ "tux-editor-clear-translated": "Скрыть переведённое",
+ "tux-editor-proofreading-mode": "Проверка",
+ "tux-editor-translate-mode": "Список",
+ "tux-editor-proofreading-hide-own-translations": "Скрыть свои переводы",
+ "tux-editor-proofreading-show-own-translations": "Показать свои переводы",
+ "tux-proofread-action-tooltip": "Пометить как проверенное",
+ "tux-proofread-edit-label": "Изменить",
+ "tux-editor-page-mode": "Страница",
+ "tux-editor-outdated-warning": "Возможно, этот перевод нуждается в обновлении.",
+ "tux-editor-outdated-warning-diff-link": "Показать отличия",
+ "tux-editor-doc-editor-placeholder": "документация сообщения",
+ "tux-editor-doc-editor-save": "Сохранить документацию",
+ "tux-editor-doc-editor-cancel": "Отмена",
+ "tux-messagetable-more-messages": "Ещё $1 {{PLURAL:$1|сообщение|сообщения|сообщений}}",
+ "tux-messagetable-loading-messages": "{{PLURAL:$1|1=Загружается сообщение|Загружаются сообщения}}...",
+ "tux-message-filter-placeholder": "Фильтровать список",
+ "tux-message-filter-result": "По запросу «$2» {{PLURAL:$1|найден|найдены|найдено}} $1 {{PLURAL:$1|результат|результата|результатов}}",
+ "tux-message-filter-advanced-button": "Расширенный поиск",
+ "tux-message-filter-optional-messages-label": "Дополнительные сообщения",
+ "tux-proofread-translated-by-self": "Переведено вами",
+ "tux-empty-list-all": "Эта группа сообщений пуста",
+ "tux-empty-list-all-guide": "Выберите для перевода другую группу сообщений",
+ "tux-translate-page-no-such-group": "<strong>Указанная группа не существует.</strong> Выберите другую группу сообщений.",
+ "tux-empty-list-translated": "Нет переведённых сообщений",
+ "tux-empty-list-translated-guide": "Вы можете помочь перевести",
+ "tux-empty-list-translated-action": "Перевести",
+ "tux-empty-no-messages-to-display": "Нет сообщений для отображения.",
+ "tux-empty-there-are-optional": "Есть дополнительные сообщения, не отображаемые в списке",
+ "tux-empty-show-optional-messages": "Показать дополнительные сообщения",
+ "tux-empty-no-outdated-messages": "Нет устаревших сообщений",
+ "tux-empty-nothing-to-proofread": "Нет ничего, требующего проверки",
+ "tux-empty-you-can-help-providing": "Вы можете помочь, предоставив новые переводы",
+ "tux-empty-nothing-new-to-proofread": "Нет ничего нового, требующего проверки",
+ "tux-empty-you-can-review-already-proofread": "Вы можете перепроверить переводы, которые уже были кем-то проверены.",
+ "tux-empty-list-other": "Нечего переводить",
+ "tux-empty-list-other-guide": "Вы можете проверить существующие переводы",
+ "tux-empty-list-other-action": "Проверка переводов",
+ "tux-empty-list-other-link": "Показать все сообщения",
+ "tux-editor-close-tooltip": "Закрыть",
+ "tux-editor-expand-tooltip": "Развернуть",
+ "tux-editor-collapse-tooltip": "Свернуть",
+ "tux-editor-message-tools-history": "История",
+ "tux-editor-message-tools-delete": "Удалить",
+ "tux-editor-message-tools-translations": "Все переводы",
+ "tux-editor-loading": "Загрузка…",
+ "translate-search-more-languages-info": "ещё $1 {{PLURAL:$1|язык|языка|языков}}",
+ "translate-statsbar-tooltip": "$1% переведённых, $2% проверенных",
+ "translate-statsbar-tooltip-with-fuzzy": "$1% переведённых, $2% проверенных, $3% устаревших",
+ "translate-search-more-groups-info": "ещё $1 {{PLURAL:$1|группа|группы|групп}}",
+ "translate-ulsdep-title": "Ошибка конфигурации",
+ "translate-ulsdep-body": "Расширение по переводу зависит от [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:UniversalLanguageSelector расширения «Универсальный переключатель языков»].",
+ "tux-session-expired": "Вы не авторизованы. Пожалуйста, авторизуйтесь в отдельной вкладке, или скопируйте несохранённый перевод и вернитесь на эту страницу после авторизации."
+}
diff --git a/MLEB/Translate/i18n/core/rue.json b/MLEB/Translate/i18n/core/rue.json
new file mode 100644
index 00000000..992929b4
--- /dev/null
+++ b/MLEB/Translate/i18n/core/rue.json
@@ -0,0 +1,207 @@
+{
+ "@metadata": {
+ "authors": [
+ "Gazeb",
+ "Tkalyn"
+ ]
+ },
+ "translate": "Перекладаня",
+ "translate-desc": "[[Special:Translate|Шпеціална сторінка]] про переклад MediaWiki і іншых проґрамів",
+ "translate-taskui-view": "Вказати вшыткы повідомлїня",
+ "translate-taskui-untranslated": "Вказати непереложены повідомлїня",
+ "translate-taskui-optional": "Вказати додатковы повідомлїня",
+ "translate-taskui-acceptqueue": "Лем повідомлїня, якы можу прияти",
+ "translate-taskui-reviewall": "Ошацовати вшыткы переклады",
+ "translate-taskui-export-to-file": "Екстортовати в натівнім форматї",
+ "translate-taskui-export-as-po": "Експортовати про офлайн переклад",
+ "translate-taction-translate": "Переклад",
+ "translate-taction-proofread": "Сконтролёвати",
+ "translate-taction-lstats": "Штатістіка языків",
+ "translate-taction-mstats": "Штатістіка ґруп повідомлїнь",
+ "translate-taction-export": "Експорт",
+ "translate-taction-disabled": "Тота дїя на тій вікі заказана.",
+ "translate-page-no-such-language": "Заданый код языка не є правилный.",
+ "translate-page-no-such-group": "Задана ґрупа была неправилна.",
+ "translate-page-disabled": "Переклады до того языка были у тій ґрупі заказаны. Причіна:\n\n<em>$1</em>",
+ "translate-language-disabled": "Переклад до того языка є заказаный.",
+ "translate-page-settings-legend": "Параметры",
+ "translate-page-group": "Ґрупа",
+ "translate-page-language": "Язык",
+ "translate-page-limit": "Ліміт",
+ "translate-page-limit-option": "$1 {{PLURAL:$1|повідомлїня|повідомлїня|повідомлїнь}} на сторінку",
+ "translate-submit": "Вказати",
+ "translate-page-navigation-legend": "Навіґація",
+ "translate-page-showing": "Вказаны повідомлїня з $1 аж $2 з $3.",
+ "translate-page-showing-all": "{{PLURAL:$1|Вказане $1 повідомлїня|Вказаны $1 повідомлїня|Вказаных $1 повідомлїнь}}.",
+ "translate-page-showing-none": "Не суть повідомлїня про зображіня.",
+ "translate-next": "Далша сторінка",
+ "translate-prev": "Попередня сторінка",
+ "translate-page-description-legend": "Інформація о ґрупі",
+ "translate-page-description-hasoptional": "Тота ґрупа повідомлїнь обсягує волительны повідомлїня.\nВолительны повідомлня ся мають перекладати кідь ваш язык мать особливы потребы\nяк нехоснованя павз в текстї або транслітерація властных імен. $1",
+ "translate-page-description-hasoptional-open": "Вказати додатковы повідомлїня",
+ "translate-page-edit": "едітовати",
+ "translate-ext-url": "<hr />Сайт: $1",
+ "translate-optional": "(волительне)",
+ "translate-ignored": "(іґнороване)",
+ "translate-edit-title": "Едітовати «$1»",
+ "translate-edit-definition": "Текст повідомлїня",
+ "translate-edit-translation": "Переклад",
+ "translate-edit-contribute": "приспіти",
+ "translate-edit-no-information": "''Тото повідомлїня не має документацію. Кідь знаєте, де або як ся повідомлїня хоснує, можете помочі далшым перекладателям так, же придате документацію ку тому повідомлїню.''",
+ "translate-edit-information": "Інформація о повідомлїню ($1)",
+ "translate-edit-in-other-languages": "Повідомлїня іншыма языками",
+ "translate-edit-committed": "Сучасный переклад в софтвері",
+ "translate-edit-warnings": "Упозорнїня на неповный переклад",
+ "translate-edit-tmsugs": "Пропозіції з памятї перекладів",
+ "translate-edit-tmmatch-source": "Жрідловый текст перекладу: $1",
+ "translate-edit-tmmatch": "$1% згода",
+ "translate-use-suggestion": "Замінити актуалный переклад гевсёв пропозіціов.",
+ "translate-edit-nopermission": "На перекладаня повідомлїнь вам треба права.",
+ "translate-edit-askpermission": "Попросити права",
+ "translate-magic-pagename": "Росшырена можность перекладу MediaWiki",
+ "translate-magic-help": "Можете перекладати аліасы шпеціалных сторінок, маґічны слова і назвы просторів назв.\n\nАліасы шпеціалных сторінок і маґічны слова можуть мати веце перекладів.\nПереклады ся оддїлюють чарков (,).\nНазвы просторів назв можуть мати лем єден переклад.\n\nУ перекладах просторів назв ся <code>$1 talk</code> справать незвычайно. <code>$1</code> ся нагородить назвов проєкту (наприклад. <code>{{ns:project_talk}}</code>).\nКідь не є у вашім языку можне вытворити змыслуповный выраз без сміны назвы проєкту, контактуйте вывояря.\n\nЖебы сьте могли укладати зміны, мусите быти член ґрупы ''перекладателї''.\nЗміны ся не уложать, покы не кликнете на клапку „Уложыти зміны“ під едітачным окенком.",
+ "translate-magic-module": "Модул:",
+ "translate-magic-submit": "Вказати",
+ "translate-magic-cm-export": "Експортовати",
+ "translate-magic-nothing-to-export": "Не має ніч про експорт.",
+ "translate-magic-cm-to-be": "Має быти",
+ "translate-magic-cm-current": "Актуалне",
+ "translate-magic-cm-original": "Оріґіналный",
+ "translate-magic-cm-comment": "Коментарь:",
+ "translate-magic-cm-save": "Уложыти",
+ "translate-magic-cm-updatedusing": "Актуалізовати помочов [[Special:AdvancedTranslate|{{int:Translate-magic-pagename}}]]",
+ "translate-magic-cm-savefailed": "Уложіня ся не подарило",
+ "translate-magic-special": "Алтернатівны мена шпеціалных сторінок",
+ "translate-magic-words": "Маґічны слова",
+ "translate-magic-namespace": "Назвы просторів назв",
+ "translate-magic-notsaved": "Ваше едітованя не было уложене!",
+ "translate-magic-errors": "Просиме оправте {{PLURAL:$1|хыбу|хыбы}} в перекладах:",
+ "translate-magic-saved": "Вашы зміны были успішно уложены.",
+ "translate-checks-parameters": "Наслїдуючій {{PLURAL:$2|параметер не є хоснованый|параметры не суть хоснованы}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-parameters-unknown": "Наслїдуючій {{PLURAL:$2|параметер не є дефінованый|параметры не суть дефінованы}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-balance": "Наслїдуючій {{PLURAL:$2|тіп затворок не є правилно спарованый|тіпы затворок не суть правилно спарованы}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links": "Наступный {{PLURAL:$2|одказ є проблематічный|одказы суть проблематічны}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links-missing": "{{PLURAL:$2|Наступный одказ|Наступны $2 одказы|Наступных $2 одказів}} хыбує:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-xhtml": "Справте {{PLURAL:$2|наступну значку|наступны значкы}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-plural": "Оріґінал хоснує <nowiki>{{PLURAL:}}</nowiki>, але переклад нїт.",
+ "translate-checks-pagename": "Проти дефініції ся змінив простор назв",
+ "translate-checks-format": "Тот переклад не одповідать дефініції або має неправилну сінтаксіс: $1",
+ "translate-checks-escape": "Наступны escape послїдовности можуть быти непланованы: <strong>$1</strong>",
+ "translate-checks-parametersnotequal": "Чісло параметрів {{PLURAL:$1|$1}};мало бы быти {{PLURAL:$2|$2}}.",
+ "translate-checks-malformed": "<nowiki>$1</nowiki> мать неправилный формат.",
+ "translate-checks-fudforum-syntax": "У тім проєктї мусите намісто <nowiki>$2</nowiki> хосновати <nowiki>$1</nowiki>.",
+ "translate-pref-nonewsletter": "Не посылати мі вістї ел. поштов",
+ "translate-pref-editassistlang": "Помічны языкы:",
+ "prefs-translate": "Наставлїня перекладу",
+ "translate-pref-editassistlang-help": "Список кодів языків оддїленый комами.\nПереклады зволеного повідомлїня до тых языків суть зображены в часї перекладаня.\nІмпліцітный список (''default'') залежыть од вашого языка.",
+ "translate-pref-editassistlang-bad": "Список обсягує неправилный код языка:\n<nowiki>$1</nowiki>",
+ "right-translate": "Едітованя перекладів за помочі інтерфейсу перекладу",
+ "right-translate-manage": "Адміністрація ґруп повідомлїнь",
+ "action-translate-manage": "Справовати ґрупы повідомлїнь",
+ "right-translate-import": "Імпорт офлайн перекладів",
+ "action-translate-import": "імпорт офлайновый перекладів",
+ "right-translate-messagereview": "Шацованя перекладів",
+ "right-translate-groupreview": "Змінити стан обробкы ґруп повідомлїнь",
+ "translate-rc-translation-filter": "Філтер перекладів:",
+ "translate-rc-translation-filter-no": "Нияк не філтровати",
+ "translate-rc-translation-filter-only": "Вказати лем переклады",
+ "translate-rc-translation-filter-filter": "Не указовати переклады",
+ "translate-rc-translation-filter-site": "Лем зміны тутешнїх місцёвых повідомлїнь",
+ "translationstats": "Штатістіка перекладів",
+ "translate-stats-edits": "Едітованя",
+ "translate-stats-users": "Перекладателї",
+ "translate-stats-registrations": "Реґістрації",
+ "translate-stats-reviews": "Шацованя",
+ "translate-stats-reviewers": "Рецензенты",
+ "translate-statsf-intro": "За помочі того формуларя можете творити просты штатістікы. Вшыткы годноты мають верьхню і спідню меджу.",
+ "translate-statsf-options": "Параметры графу",
+ "translate-statsf-width": "Шырина в пікселах:",
+ "translate-statsf-height": "Вышка в пікселах:",
+ "translate-statsf-days": "Часовый інтервал в днях:",
+ "translate-statsf-start": "Початковый датум:",
+ "translate-statsf-scale": "Ступінь детайлізації:",
+ "translate-statsf-scale-months": "Місяцї",
+ "translate-statsf-scale-weeks": "Тыжднї",
+ "translate-statsf-scale-days": "Днї",
+ "translate-statsf-scale-hours": "Годины",
+ "translate-statsf-count": "Міра:",
+ "translate-statsf-count-edits": "Почет едітовань:",
+ "translate-statsf-count-users": "Актівны перекладателї",
+ "translate-statsf-count-registrations": "Новы хоснователї",
+ "translate-statsf-count-reviews": "Шацованя перекладів",
+ "translate-statsf-count-reviewers": "Рецензенты",
+ "translate-statsf-language": "Список кодів языка, роздїленых комами:",
+ "translate-statsf-group": "Список кодів ґрупы языків, роздїленых комами:",
+ "translate-statsf-submit": "Нагляд",
+ "translate-tag-category": "Сторінкы што можуть быти переложены",
+ "translate-tag-page-desc": "Переклад вікі сторінкы [[$2|$1]].",
+ "translate-sidebar-alltrans": "Іншыма языками",
+ "translations": "Вшыткы переклады",
+ "translations-summary": "Вшыткы доступны переклады зобразите по задану назвы повідомлїня.",
+ "translate-translations-no-message": "Не годен перекласти „$1“",
+ "translate-translations-none": "Не екзістують жадны переклады повідомлїня „$1“",
+ "translate-translations-count": "{{PLURAL:$1|Найдженый єден переклад|Найджены $1 переклады|Найдженых $1 перекладів}}.",
+ "translate-translations-fieldset-title": "Повідомлїня",
+ "translate-translations-messagename": "Назва:",
+ "translate-translations-project": "Проєкт:",
+ "translate-translations-including-no-param": "У параметрї мусите становити правилну назву повідомлїня",
+ "translate-translations-history-short": "і",
+ "languagestats": "Штатістіка языків",
+ "languagestats-summary": "Тота сторінка обсягує штатістіку перекладів вшыткы ґруп повідомлїнь в данім языку.",
+ "languagestats-stats-for": "Штатістіка перекладів про $1 ($2).",
+ "languagestats-recenttranslations": "найновшы переклады",
+ "translate-langstats-incomplete": "Дакотры штатістікы на тій сторінцї не суть цїлы. Просиме, обновте сторінку жебы здобыти бівше штатістік.",
+ "translate-langstats-expand": "розгорнути",
+ "translate-langstats-collapse": "згорнути",
+ "translate-langstats-expandall": "розгорнути вшытко",
+ "translate-langstats-collapseall": "згорнути вшытко",
+ "translate-language-code": "Код языка",
+ "translate-language-code-field-name": "Код языка:",
+ "translate-suppress-complete": "Не выписовати цалком перекладены ґрупы повідомлїнь",
+ "translate-ls-noempty": "Сховати цїлком непереложены ґрупы повідомлїнь",
+ "translate-language": "Язык",
+ "translate-total": "Повідомлїня",
+ "translate-untranslated": "Непереложены",
+ "translate-percentage-complete": "Готово",
+ "translate-percentage-fuzzy": "Застарілы",
+ "translate-languagestats-overall": "Вшыткы ґруп повідомлїнь довєдна",
+ "translate-ls-submit": "Вказати штатістікы",
+ "translate-ls-column-group": "Ґрупа повідомлїнь",
+ "translate-mgs-pagename": "Штатістіка ґруп повідомлїнь",
+ "translate-mgs-fieldset": "Параметры зображіня",
+ "translate-mgs-group": "Ґрупа повідомлїнь:",
+ "translate-mgs-nocomplete": "Не вказовати языкы із завершеным перекладом",
+ "translate-mgs-noempty": "Не вказовати языкы, якы не мають жадного перекладу",
+ "translate-mgs-submit": "Вказати штатістікы",
+ "translate-mgs-column-language": "Язык",
+ "translate-mgs-totals": "Вшыткы языкы довєдна",
+ "supportedlanguages": "Підпорованы языкы",
+ "supportedlanguages-summary": "На тій сторінцї ся находить список вшыткых языків підпорованых на {{grammar:6sg|{{SITENAME}}}} вєдно з іменамі перекладателїв, котры на языку роблять.\nВеце інформацій ку каждому языку можете здобыти на языковім порталї, на котрый ся дістанете, кідь кликнете на тот язык.\nКликнутём на імя перекладателя ся дістанете на сторінку хоснователя.\n\nКідь ту даякый язык не є, можете собі прочітати мануал про основаня локалізачного проєкту на сторінцї „[[Translating:Process|Новый язык]]“.\n\nКідь даякый язык перекладате, а ваше імя ту не є уведжене, додайте ся до списку перекладателїв на одповідаючім [[:Category:Languages|языковім порталї]].\nОдказ на портал вашого преферованого языка найдете в меню.",
+ "supportedlanguages-translators": "{{PLURAL:$2|Перекладатель|Перекладателї}}: $1",
+ "supportedlanguages-recenttranslations": "найновшы переклады",
+ "translate-save": "Уложыти ($1)",
+ "translate-jssti-add": "Придати до списку",
+ "translate-manage-import-diff": "Повідомлїня $1 | Дїї: $2",
+ "translate-manage-import-new": "Нове повідомлїня $1",
+ "translate-manage-action-import": "Імпортовати",
+ "translate-manage-action-conflict": "Імпортовати і позначіти як неперевірене",
+ "translate-manage-action-ignore": "Іґноровати",
+ "translate-manage-submit": "Выконати",
+ "translate-manage-import-done": "Вшытко зроблено!",
+ "importtranslations": "Імпортовати переклады",
+ "translate-import-load": "Награти файл",
+ "translate-js-save": "Уложыти",
+ "translate-js-next": "Уложыти і отворити далше",
+ "translate-js-skip": "Перескоч на далше",
+ "translate-js-history": "Історія перекладу",
+ "translate-gs-pos": "Поз.",
+ "translate-gs-code": "Код",
+ "translate-gs-continent": "Частина світу",
+ "translate-gs-speakers": "Говорців",
+ "translate-gs-score": "Оцінка",
+ "translate-gs-multiple": "По веце",
+ "translate-gs-count": "Рахунок",
+ "translate-gs-total": "Цілком",
+ "translate-gs-avgscore": "Сер. оцінка",
+ "translate-searchprofile": "Переклады"
+}
diff --git a/MLEB/Translate/i18n/core/sa.json b/MLEB/Translate/i18n/core/sa.json
new file mode 100644
index 00000000..fddd3db0
--- /dev/null
+++ b/MLEB/Translate/i18n/core/sa.json
@@ -0,0 +1,25 @@
+{
+ "@metadata": {
+ "authors": [
+ "Ansumang",
+ "NehalDaveND"
+ ]
+ },
+ "translate-page-settings-legend": "संरचनम्",
+ "translate-page-group": "वर्ग",
+ "translate-page-language": "भाषा",
+ "translate-page-edit": "सम्पाद्यताम्",
+ "translate-edit-title": "सम्पाद्यताम् \"$1\"",
+ "translate-edit-translation": "अनुवादम्",
+ "translate-magic-cm-original": "मूल",
+ "translate-magic-cm-comment": "टिप्पणी:",
+ "translate-stats-edits": "सम्पाद्यताम्",
+ "translate-statsf-scale-weeks": "सप्ताहम्",
+ "translate-statsf-scale-days": "दिवस",
+ "translate-statsf-scale-hours": "घण्टा",
+ "translate-statsf-submit": "प्राग्दृश्यम् दर्श्यताम्",
+ "translate-translations-fieldset-title": "संदेश",
+ "translate-translations-messagename": "नामन्:",
+ "translate-translations-project": "प्रकल्पम्:",
+ "tux-warnings-hide": "गोप्यताम्"
+}
diff --git a/MLEB/Translate/i18n/core/sah.json b/MLEB/Translate/i18n/core/sah.json
new file mode 100644
index 00000000..641ca7c9
--- /dev/null
+++ b/MLEB/Translate/i18n/core/sah.json
@@ -0,0 +1,201 @@
+{
+ "@metadata": {
+ "authors": [
+ "Amire80",
+ "Bert Jickty",
+ "HalanTul"
+ ]
+ },
+ "translate": "Тылбаас",
+ "translate-desc": "MediaWiki движогу уонна атын бырагырааммалары тылбаастыырга [[Special:Translate|аналлаах сирэй]]",
+ "translate-taskui-view": "Этиилэри барыларын көрдөр",
+ "translate-taskui-untranslated": "Тылбаастамматаҕы көрдөр",
+ "translate-taskui-optional": "Эбии этиилэри көрдөр",
+ "translate-taskui-acceptqueue": "Мин бигэргэтэрбин кэтэһэри эрэ",
+ "translate-taskui-reviewall": "Бары тылбаастары көр",
+ "translate-taskui-export-to-file": "Бэйэтин формаатынан экспортаа",
+ "translate-taskui-export-as-po": "Ситимнэммэккэ тылбаастыырга анаан экспортааһын",
+ "translate-taction-translate": "Тылбаас",
+ "translate-taction-proofread": "Ааҕыы",
+ "translate-taction-lstats": "Тыл статиистиката",
+ "translate-taction-mstats": "Бөлөхтөрүнэн ыстатыыстыка",
+ "translate-taction-export": "Экспорт",
+ "translate-taction-disabled": "Бу биикигэ маннык дьайыы араарыллыбыт эбит.",
+ "translate-page-no-such-language": "Тыл куода сыыһа суруллубут",
+ "translate-page-no-such-group": "Бөлөх сыыһа ыйыллыбыт.",
+ "translate-page-disabled": "Бу салааҕа бэйэтин тылыгар тылбаастар араарыллыбыттар. Төрүөтэ:\n\n<em>$1</em>",
+ "translate-language-disabled": "Бу тылга тылбаастааһын арахса сылдьар.",
+ "translate-page-settings-legend": "Туруоруулар",
+ "translate-page-group": "Бөлөх",
+ "translate-page-language": "Тыла",
+ "translate-page-limit": "Хааччах",
+ "translate-page-limit-option": "{{PLURAL:$1|Соҕотох этиини|$1 этиини}} биир сирэйгэ таһаар",
+ "translate-submit": "Тал",
+ "translate-page-navigation-legend": "Навигация",
+ "translate-page-showing": "Барыта $3 этииттэн $1 - $2 нүөмэрдээх этиилэр көрдөрүлүннүлэр.",
+ "translate-page-showing-all": "$1 этии таһаарыллыбыт.",
+ "translate-page-showing-none": "Көрдөрүллэр этии суох.",
+ "translate-next": "Аныгыскы сирэй",
+ "translate-prev": "Иннинээҕи сирэй",
+ "translate-page-description-legend": "Бөлөх туһунан",
+ "translate-page-description-hasoptional": "Бу эбии этиилэр бөлөхтөрө.\nЭбии этиилэр тылбаастамматтар. Арай тылыҥ улахан уратылаах буоллаҕына тылбаастаныан сөп, холобур, тыллар ыккардыларыгар арыт суох буоллаҕына эбэтэр ааттары транслитерациялыырга. $1",
+ "translate-page-description-hasoptional-open": "Эбии этиилэри көрдөр.",
+ "translate-page-edit": "Уларыт",
+ "translate-ext-url": "<hr />Саайт: $1",
+ "translate-optional": "(булгуччута суох)",
+ "translate-ignored": "(ааххайыллыбат)",
+ "translate-edit-title": "\"$1\" уларытыы",
+ "translate-edit-definition": "Этии ис хоһооно, суолтата",
+ "translate-edit-translation": "Тылбаас",
+ "translate-edit-contribute": "уларытыыны киллэр",
+ "translate-edit-no-information": "''Бу этии туһунан туох да суох. Ханна, хаһан бу этии туттулларын билэр буоллаххына, атын тылбаасчыттарга көмөлөһөн, ол туһунан суруйуоххун сөп.''",
+ "translate-edit-information": "Бу туһунан ($1)",
+ "translate-edit-in-other-languages": "Атын тылынан",
+ "translate-edit-committed": "Билигин баар тылбаас",
+ "translate-edit-warnings": "Ситэтэ суох тылбаас туһунан сэрэтии",
+ "translate-edit-tmsugs": "Урукку тылбаастартан",
+ "translate-edit-tmmatch-source": "Тылбаастаныахтаах этии: $1",
+ "translate-edit-tmmatch": "$1% сөп түбэһэр",
+ "translate-use-suggestion": "Баар тиэкиһи бу этэн биэриинэн солбуй.",
+ "translate-edit-nopermission": "Тылбаастыыргар көҥүл ылыахтааххын.",
+ "translate-edit-askpermission": "Көҥүллэ көрдөө",
+ "translate-magic-pagename": "MediaWiki дириҥэтиллибит тылбааһа",
+ "translate-magic-help": "Аналлаах сирэйдэр ааттарын, \"аптаах\" тыллары уонна аат далларын тылбаастыаххын сөп.\n\nАналлаах сирэйдэр уонна \"аптаах\" тыллар хас да тылбаастаах буолуохтарын сөп.\nТылбаастар соппутуойунан (,) араарыллаллар.\nАат дала биир эрэ тылбаастаах буолуохтаах.\n\nАат далларын тылбааһыгар <code>$1 ырытыыта</code> атыннык тылбаастанар, Бу бэлиэ <code>$1</code> саайт аатынан уларытыллыа (холобур <code>{{ns:project_talk}}</code>).\nЭн тылгар ол сатаммат буоллаҕына разработчиктарга этээр.\n\nУларытыыгын бигэргэтэргэ тылбаасчыттар бөлөхтөрүгэр киирэриҥ ирдэнэр.\nУларытыыларыҥ аллараа тимэҕи баттыаҥ иннинэ олоххо киириэхтэрэ суоҕа.",
+ "translate-magic-module": "Муодул:",
+ "translate-magic-submit": "Таһаар (көрдөр)",
+ "translate-magic-cm-export": "Экспортаа",
+ "translate-magic-nothing-to-export": "Таһаарар туох да суох.",
+ "translate-magic-cm-to-be": "Буолуохтаах",
+ "translate-magic-cm-current": "Билиҥҥи",
+ "translate-magic-cm-original": "Маҥнайгы барыла",
+ "translate-magic-cm-comment": "Быһаарыы:",
+ "translate-magic-cm-save": "Бигэргэт",
+ "translate-magic-cm-updatedusing": "Бу көмөтүнэн саҥардылынна: [[Special:AdvancedTranslate|{{int:Translate-magic-pagename}}]]",
+ "translate-magic-cm-savefailed": "Бигэргэтэр табыллыбата",
+ "translate-magic-special": "Анал сирэйдэр псевдонимнара",
+ "translate-magic-words": "Аптаах тыллар",
+ "translate-magic-namespace": "Аат даллара",
+ "translate-magic-notsaved": "Эн көннөрүүҥ бигэргэтиллибэтэ!",
+ "translate-magic-errors": "Бука диэн тылбаас бу {{PLURAL:$1|сыыһатын|сыыһаларын}} көннөр эрэ:",
+ "translate-magic-saved": "Оҥорбут уларытыыларыҥ бигэргэннилэр.",
+ "translate-checks-parameters": "{{PLURAL:$2|Биир туруоруу туттуллубатах|Бу туруоруулар туттуллубатахтар}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-parameters-unknown": "{{PLURAL:$2|Биллибэт туруоруу (параметр)|Биллибэт туруоруулар (параметрдар)}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-balance": "Сабар дуу аһар дуу {{PLURAL:$2|ускуопка тиийбэт|ускуопкалар тиийбэттэр}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links": "{{PLURAL:$2|Бу сигэ сыыһалаах|Бу сигэлэр сыыһалаахтар}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links-missing": "Бу {{PLURAL:$2|сигэ|$2 сигэ}} суох:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-xhtml": "Бука диэн бу {{PLURAL:$2|анал бэлиэни|анал бэлиэлэри}} көннөр:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-plural": "Оригинал <nowiki>{{PLURAL:}}</nowiki> туттар, оттон тылбааһа — туттубат.",
+ "translate-checks-plural-dupe": "Манна <nowiki>{{PLURAL:}}</nowiki> тыл икки тэҥ формата туттуллубут. <nowiki>{{PLURAL:$1|сон|сон}}</nowiki> оннугар <nowiki>{{PLURAL:$1|сон}}</nowiki> диэн суруйар ордук.",
+ "translate-checks-pagename": "Аат далын быһаарыыта уларыйбыт",
+ "translate-checks-format": "Тылбаас өйдөбүлүгэр сөп түбэспэт эбэтэр синтаксыгар сыыһалаах: $1",
+ "translate-checks-parametersnotequal": "Парааметрдарын ахсаана — $1, дьиҥэ $2 буолуохтаах.",
+ "translate-checks-malformed": "<nowiki>$1</nowiki> алҕастаах.",
+ "translate-checks-fudforum-syntax": "Бу бырайыакка <nowiki>$2</nowiki> оннугар маны туһан: <nowiki>$1</nowiki>.",
+ "translate-pref-nonewsletter": "Бүллүтүөнү электроннай почтаннан миэхэ ыытымаҥ",
+ "translate-pref-editassistlang": "Көмө тыллар:",
+ "prefs-translate": "Тылбаас туруоруулара",
+ "translate-pref-editassistlang-help": "Соппутуойунан араарыллыбыт тыллар куодтарын тиһигэ.\nБу тыллар тылбаастара тылбаастыыргар көстүөхтэрэ.\nТуспа этиллибэтэҕинэ тахсар тыллар тиһиктэрэ тылтан тутулуктаах.",
+ "translate-pref-editassistlang-bad": "Тиһиккэ сыыһа куодтаах тыл:\n<nowiki>$1</nowiki>.",
+ "right-translate": "Тылбаас интерфейсын туһанар уларытыы",
+ "right-translate-manage": "этиилэри бөлөҕүнэн уларытыы",
+ "action-translate-manage": "этиилэри бөлөҕүнэн салайыы",
+ "right-translate-import": "Офф-лайн оҥоһуллубут тылбаастары киллэрии",
+ "action-translate-import": "офф-лайн тылбаастаммыты киллэрии",
+ "right-translate-messagereview": "Тылбаастары тургутуу",
+ "translate-rc-translation-filter": "Тылбаастары сиидэлээ:",
+ "translate-rc-translation-filter-no": "Хааччаҕа суох",
+ "translate-rc-translation-filter-only": "Тылбаастары эрэ көрдөр",
+ "translate-rc-translation-filter-filter": "Тылбаастары көрдөрүмэ",
+ "translate-rc-translation-filter-site": "Ситим-сир сүрүн эрэ биллэриилэрин",
+ "translationstats": "Тылбаас статиистиката",
+ "translate-stats-edits": "Уларытыылар",
+ "translate-stats-users": "Тылбаасчыттар",
+ "translate-stats-registrations": "Бэлиэтэнии",
+ "translate-stats-reviews": "Тургутуу",
+ "translate-stats-reviewers": "Этэн биэриилэр",
+ "translate-statsf-intro": "Бу форма көмөтүнэн табыгастаах графигы оҥоруохха сөп.\nБары көрдөрүүлэргэ үөһээ уонна аллараа кыраныыссаларын этиэххэ сөп.",
+ "translate-statsf-options": "График туруоруулара",
+ "translate-statsf-width": "Кэтитэ пииксэлинэн:",
+ "translate-statsf-height": "Үрдүгэ пииксэлинэн:",
+ "translate-statsf-days": "Болдьоҕо күн ахсаанынан:",
+ "translate-statsf-start": "Саҕаламмыт күнэ-дьыла:",
+ "translate-statsf-scale": "Чопчулааһына:",
+ "translate-statsf-scale-months": "Ыйдар",
+ "translate-statsf-scale-weeks": "Нэдиэлэлэр",
+ "translate-statsf-scale-days": "Хонуктар",
+ "translate-statsf-scale-hours": "Чаас",
+ "translate-statsf-count": "Кээмэйэ:",
+ "translate-statsf-count-edits": "Көннөрүү ахсаана",
+ "translate-statsf-count-users": "Көхтөөх тылбаасчыттар",
+ "translate-statsf-count-registrations": "Саҥа кыттааччылар",
+ "translate-statsf-count-reviews": "Тылбааһы тургутааччылар",
+ "translate-statsf-count-reviewers": "Рецензеннэр",
+ "translate-statsf-language": "Соппутуойунан арахсыбыт тыллар куодтарын тиһигэ:",
+ "translate-statsf-group": "Соппутуойунан арахсыбыт бөлөхтөр куодтарын тиһигэ:",
+ "translate-statsf-submit": "Бигэргэтиэх иннинэ көрүү",
+ "translate-tag-category": "Тылбаастанар сирэйдэр",
+ "translate-tag-page-desc": "Биики-сирэй тылбааһа [[$2|$1]].",
+ "translate-sidebar-alltrans": "Атын тылларынан",
+ "translations": "Бары тылбаастар",
+ "translations-summary": "Этии аатын киллэрдэххинэ тылбаастара тахсан кэлиэхтэрэ.",
+ "translate-translations-no-message": "\"$1\" тылбаастанар кыахтаах этии буолбатах",
+ "translate-translations-none": "\"$1\" тылбаастара суох эбит",
+ "translate-translations-count": "{{PLURAL:$1|Биир тылбаас|$1 тылбаас}} көһүннэ.",
+ "translate-translations-fieldset-title": "Этии",
+ "translate-translations-messagename": "Аат:",
+ "translate-translations-project": "Бырайыак:",
+ "translate-translations-history-short": "уст",
+ "languagestats": "Тыл статиистиката",
+ "languagestats-summary": "Манна бу тылга аналлаах тылбаастанар бөлөхтөр статиистикалара көстөр",
+ "languagestats-stats-for": "Тылбаас статиистиката $1 ($2).",
+ "languagestats-recenttranslations": "соторутааҥы тылбаастар",
+ "translate-langstats-incomplete": "Сорох дааннайдар ситэтэ суохтар эбит. Толору дааннайдары ыларга бу сирэйи хос хачайдаа.",
+ "translate-langstats-expand": "тэнит",
+ "translate-langstats-collapse": "сап",
+ "translate-langstats-expandall": "барытын тэнит",
+ "translate-langstats-collapseall": "барытын суулаа",
+ "translate-language-code": "Тыл куода",
+ "translate-language-code-field-name": "Тыл куода:",
+ "translate-suppress-complete": "Толору тылбаастаммыт этиилэрдээх бөлөхтөрү көрдөрүмэ",
+ "translate-ls-noempty": "Толору тылбаастаммыт этиилэрдээх бөлөхтөрү көрдөрүмэ",
+ "translate-language": "Ханнык тылынан:",
+ "translate-total": "Этии",
+ "translate-untranslated": "Тылбаастамматах",
+ "translate-percentage-complete": "Толоруллубут",
+ "translate-percentage-fuzzy": "Эргэрбит",
+ "translate-languagestats-overall": "Бары бөлөхтөр этиилэрэ",
+ "translate-ls-submit": "Статистиканы көрдөр",
+ "translate-ls-column-group": "Этиилэр бөлөхтөрүнэн",
+ "translate-mgs-pagename": "Этиилэр бөлөхтөрүн статистиката",
+ "translate-mgs-fieldset": "Туруорууларын көрдөр",
+ "translate-mgs-group": "Этиилэр бөлөхтөрө:",
+ "translate-mgs-nocomplete": "Толору тылбаастаммыт тыллары көрдөрүмэ",
+ "translate-mgs-noempty": "Тылбааһа саҕаламматах тыллары көрдөрүмэ",
+ "translate-mgs-submit": "Статистиканы көрдөр",
+ "translate-mgs-column-language": "Тыла",
+ "translate-mgs-totals": "Бары тыллар",
+ "translate-mgs-invalid-group": "$1 диэн ааттаах бөлөх суох эбит.",
+ "translate-mgs-nothing": "Көрдөрүллэр дааннай суох.",
+ "supportedlanguages": "Өйүүр тыллара",
+ "supportedlanguages-summary": "Манна{{SITENAME}} өйүүр тыллара уонна тылбаасчыттар ааттара көстөр. Тылбаасчыт төһөнөн элбэхтик үлэлээбит да, оччонон аата бөдөҥ бичигинэн суруллар. Алларанан тардыытын өҥө тылбаасчыт бүтэһигин хаһан үлэлээбитин көрдөрөр.",
+ "supportedlanguages-colorlegend": "Өҥүн суолтата: Тиһэх көннөрүүнү $1 күн ынараа өттүгэр оҥорбут.",
+ "supportedlanguages-translators": "{{PLURAL:$2|Тылбаасчыт|Тылбаасчыттар}}: $1",
+ "supportedlanguages-recenttranslations": "соторутааҥы тылбаастар",
+ "supportedlanguages-count": "Барыта $1 тыл.",
+ "supportedlanguages-activity": "$1: $2 көннөрүү — тиһэх көннөрүү $3 хонук ынараа өттүгэр",
+ "translate-save": "Бигэргэт ($1)",
+ "translate-jssti-add": "Тиһиккэ киллэр",
+ "managemessagegroups": "Этиилэр бөлөхтөрүн салайыы",
+ "translate-smg-notallowed": "Бу дьайыыны оҥорор кыаҕыҥ суох эбит.",
+ "translate-smg-nochanges": "Таҥар уларытыы суох.",
+ "translate-smg-submit": "Уларытыылары таҥыыга ыыт",
+ "translate-gs-code": "Куод",
+ "translate-gs-continent": "Континент",
+ "translate-gs-speakers": "Саҥарааччы",
+ "translate-gs-score": "Сыанабыл",
+ "translate-gs-multiple": "Элбэх (хас да)",
+ "translate-gs-count": "Ахсаана",
+ "translate-gs-total": "Барыта",
+ "translate-gs-avgscore": "Ортотунан",
+ "translate-documentation-language": "Биллэрии документацията"
+}
diff --git a/MLEB/Translate/i18n/core/saz.json b/MLEB/Translate/i18n/core/saz.json
new file mode 100644
index 00000000..d8d559f9
--- /dev/null
+++ b/MLEB/Translate/i18n/core/saz.json
@@ -0,0 +1,9 @@
+{
+ "@metadata": {
+ "authors": [
+ "MooRePrabu"
+ ]
+ },
+ "translate-statsf-scale-days": "ꢣꢶꢥ꣄ꢥꢸꢥ꣄",
+ "translate-statsf-count-registrations": "ꢥꣁꢮ꣄ꢮꣁ ꢮꢮ꣄ꢬꢸꢥꢵꢬꢸꢥ꣄"
+}
diff --git a/MLEB/Translate/i18n/core/sc.json b/MLEB/Translate/i18n/core/sc.json
new file mode 100644
index 00000000..0a2d4d75
--- /dev/null
+++ b/MLEB/Translate/i18n/core/sc.json
@@ -0,0 +1,11 @@
+{
+ "@metadata": {
+ "authors": [
+ "Via maxima",
+ "Taxandru"
+ ]
+ },
+ "translate": "Tradui",
+ "translate-desc": "[[Special:Translate|Special page]] po tradusi MediaWiki and beyond",
+ "translate-taskui-view": "Ammustra totu is missadas"
+}
diff --git a/MLEB/Translate/i18n/core/scn.json b/MLEB/Translate/i18n/core/scn.json
new file mode 100644
index 00000000..fc99e340
--- /dev/null
+++ b/MLEB/Translate/i18n/core/scn.json
@@ -0,0 +1,22 @@
+{
+ "@metadata": {
+ "authors": [
+ "Aushulz",
+ "Gmelfi"
+ ]
+ },
+ "translate-page-no-such-group": "Lu gruppu spicificatu nun èni vàliddu.",
+ "translate-next": "Pàggina appressu",
+ "translate-edit-definition": "Difinizzioni dû missaggiu",
+ "translate-edit-contribute": "cuntribbuisci",
+ "translate-edit-information": "Nfurmazzioni supra lu missaggiu ($1)",
+ "translate-edit-in-other-languages": "Missaggiu 'n àutri lingui",
+ "translate-magic-cm-save": "Sarva",
+ "translate-statsf-scale-months": "Misi",
+ "translate-statsf-scale-weeks": "Simani",
+ "translate-statsf-scale-days": "Jorna",
+ "translate-statsf-scale-hours": "Ura",
+ "translate-sidebar-alltrans": "Nti àutri lìngui",
+ "translate-save": "Sarva ($1)",
+ "translate-js-support": "Addumanna 'na cosa"
+}
diff --git a/MLEB/Translate/i18n/core/sco.json b/MLEB/Translate/i18n/core/sco.json
new file mode 100644
index 00000000..896b5a1a
--- /dev/null
+++ b/MLEB/Translate/i18n/core/sco.json
@@ -0,0 +1,333 @@
+{
+ "@metadata": {
+ "authors": [
+ "John Reid"
+ ]
+ },
+ "translate": "Owerset",
+ "translate-desc": "[[Special:Translate|Byordiair page]] fer owersetin MediaWiki n ayont",
+ "translate-taskui-view": "Shaw aw messages",
+ "translate-taskui-untranslated": "Shaw onowerset messages",
+ "translate-taskui-optional": "Shaw optional messages",
+ "translate-taskui-acceptqueue": "Yinlie messages that Ah can maurk aes luikt ower",
+ "translate-taskui-reviewall": "Luikower aw owersets",
+ "translate-taskui-export-to-file": "Export in nateeve format",
+ "translate-taskui-export-as-po": "Export fer aff-line owersetin",
+ "translate-taction-translate": "Owerset",
+ "translate-taction-proofread": "Luikower",
+ "translate-taction-lstats": "Leid stateestics",
+ "translate-taction-mstats": "Message groop stateestics",
+ "translate-taction-disabled": "This action is disabled oan this wiki.",
+ "translate-page-no-such-language": "Speceefied leid wis onvalit.",
+ "translate-page-no-such-group": "Speceefied groop wis onvalit.",
+ "translate-page-disabled": "Owersets intil this leid in this groop hae been disabled.\nRaison:\n\n<em>$1</em>",
+ "translate-language-disabled": "Owersetin intil this lied is disabled.",
+ "translate-page-settings-legend": "Settins",
+ "translate-page-group": "Groop",
+ "translate-page-language": "Leid",
+ "translate-page-limit": "Leemit",
+ "translate-submit": "Get",
+ "translate-page-navigation-legend": "Naveegation",
+ "translate-page-showing": "Shawin messages fae $1 til $2 o $3.",
+ "translate-page-showing-all": "Shawin $1 {{PLURAL:$1|message|messages}}.",
+ "translate-page-showing-none": "Naw messages tae shaw.",
+ "translate-next": "Nex page",
+ "translate-prev": "Preeveeoos page",
+ "translate-page-description-legend": "Information aneat the groop",
+ "translate-page-description-hasoptional": "This message groop contains optional messages.\nOptional messages shid yinlie be owerset whan yer leid haes byordinair needs\nlike na uisin spaces or transliteratin proper names. $1",
+ "translate-page-description-hasoptional-open": "Shaw optional messages",
+ "translate-page-edit": "eedit",
+ "translate-optional": "(aen optie)",
+ "translate-edit-title": "Eedit \"$1\"",
+ "translate-edit-definition": "Message defineetion",
+ "translate-edit-translation": "Owerset(ment)",
+ "translate-edit-contribute": "contreebute",
+ "translate-edit-no-information": "<em>This message haes naw documentation.\nGif ye ken whaur or hou this message is uised, ye can heelp ither owerseters bi eikin documentation til this message.</em>",
+ "translate-edit-information": "Information aneat message ($1)",
+ "translate-edit-in-other-languages": "Message in ither leids",
+ "translate-edit-committed": "The Nou owerset in saffware",
+ "translate-edit-warnings": "Warnishments aneat oncompleate owersets",
+ "translate-edit-tmsugs": "Suggestions fae owerset memries n machine owersetin",
+ "translate-edit-tmmatch-source": "Owerset soorce tex: $1",
+ "translate-use-suggestion": "Replace the Nou owerset wi this suggestion.",
+ "translate-edit-nopermission": "Ye need owersetin richts tae owerset messages.",
+ "translate-edit-askpermission": "Get permeession",
+ "translate-magic-pagename": "Byordinair MediaWiki owersetin",
+ "translate-magic-help": "Ye can owerset byordiair pages aliases, magic wairds n namespace names.\n\nByordinair page aliases n magic wairds can hae multiple owersets.\nOwersets ar separated bi ae comma (,).\nNamespaces can yinlie hae the yin owerset.\n\nOwersetin the waurk tauk namespace <code>$1 tauk</code> micht be compleecatit.\n<code>$1</code> is replaced wi the waurk sitename (fer example <code>{{ns:project_talk}}</code>).\nGif it's na possible in yer leid tae form ae valit expression wioot chyngin the sitename, please lat us know oan [[Support]].\n\nYe need tae be aen owerseter tae hain chynges.\nChynges ar na hained ontil ye clap the hain button ablo.",
+ "translate-magic-submit": "Get",
+ "translate-magic-nothing-to-export": "Thaur's nawthing tae export.",
+ "translate-magic-cm-to-be": "Tae-be",
+ "translate-magic-cm-current": "The Nou",
+ "translate-magic-cm-original": "Oreeginal",
+ "translate-magic-cm-save": "Hain",
+ "translate-magic-cm-updatedusing": "Updated uisin [[Special:AdvancedTranslate|{{int:Translate-magic-pagename}}]]",
+ "translate-magic-cm-savefailed": "Hain failed",
+ "translate-magic-special": "Byordinair page aliases",
+ "translate-magic-words": "Magic wairds",
+ "translate-magic-notsaved": "Yer eedit wis na hained!",
+ "translate-magic-errors": "Please fix follaein {{PLURAL:$1|mistak|mistaks}} in owersets:",
+ "translate-magic-saved": "Yer chynges were hained successfulie.",
+ "translate-checks-parameters": "Follaein {{PLURAL:$2|parameter is|parameters ar}} na uised:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-parameters-unknown": "Follaein {{PLURAL:$2|parameter is|parameters ar}} onknawn:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-balance": "Thaur's aen oneven nummer o {{PLURAL:$2|parenthesis|parentheses}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links": "Follaein {{PLURAL:$2|airtin is|$2 airtins ar}} proablemateec:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links-missing": "Follaein {{PLURAL:$2|airtin is|$2 airtins ar}} missin:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-xhtml": "Please replace the follaein {{PLURAL:$2|tag|tags}} wi the richt yins:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-plural": "Defineetion uises <nowiki>{{PLURAL:}}</nowiki> bit the owerset dis na.",
+ "translate-checks-plural-forms": "<nowiki>{{PLURAL:}}</nowiki> wis gien {{PLURAL:$1|yin form|$1 forms}} bit {{PLURAL:$2|yinlie yin form is|$2 forms ar}} supported (excluidin 0= n 1= forms).",
+ "translate-checks-plural-dupe": "<nowiki>{{PLURAL:}}</nowiki> haes dupleecate forms at the end. <nowiki>{{PLURAL:$1|sheep|sheep}}</nowiki> shid be written aes <nowiki>{{PLURAL:$1|sheep}}</nowiki>.",
+ "translate-checks-pagename": "Namespace chynged fae the defineetion",
+ "translate-checks-format": "This owerset disna follae the defineetion or haes onvalit syntax: $1",
+ "translate-checks-escape": "The follaein escapes micht be accidental: <strong>$1</strong>",
+ "translate-checks-parametersnotequal": "Guidin coont is {{PLURAL:$1|$1}}; shid be {{PLURAL:$2|$2}}.",
+ "translate-checks-fudforum-syntax": "Uise <nowiki>$1</nowiki> instead o <nowiki>$2</nowiki> in this waurk.",
+ "translate-pref-nonewsletter": "Dinna send me wab-mail newsletters",
+ "translate-pref-editassistlang": "Assistant leids:",
+ "prefs-translate": "Owersetin opties",
+ "translate-pref-editassistlang-help": "Comma separated leet o lee codes.\nThe owersetin o ae message in thir leids ar shawn whan ye'r owersetin.\nThe defaut leet o leids depends oan yer leid.",
+ "translate-pref-editassistlang-bad": "Onvalit leid code in the leet:\n<nowiki>$1</nowiki>.",
+ "right-translate": "Eedit uisin the owersetin interface",
+ "right-translate-manage": "Manage message groops",
+ "action-translate-manage": "manage message groops",
+ "right-translate-import": "Import affline owersets",
+ "action-translate-import": "import affline owersets",
+ "right-translate-messagereview": "Luikower owersets",
+ "right-translate-groupreview": "Chynge wairkflaw state o message groops",
+ "translate-rc-translation-filter": "Filter owersets:",
+ "translate-rc-translation-filter-no": "Dae nawthing",
+ "translate-rc-translation-filter-only": "Shaw owersets yinlie",
+ "translate-rc-translation-filter-filter": "Filter oot owersets",
+ "translate-rc-translation-filter-site": "Chynges til site messages yinlie",
+ "translationstats": "Owersetin stateestics",
+ "translate-stats-edits": "Eedits",
+ "translate-stats-users": "Owerseters",
+ "translate-stats-reviews": "Luikowers",
+ "translate-stats-reviewers": "Luikower-fawk",
+ "translate-statsf-intro": "Ye can generate simple stateestics wi this form.\nAw values hae upper n lower limits.",
+ "translate-statsf-options": "Graph opties",
+ "translate-statsf-height": "Heicht in pixels:",
+ "translate-statsf-days": "Time periyd in days:",
+ "translate-statsf-start": "Stairtin date:",
+ "translate-statsf-scale": "Granulairitie:",
+ "translate-statsf-scale-hours": "Hoors",
+ "translate-statsf-count-edits": "Nummer o eedits",
+ "translate-statsf-count-users": "Acteeve owerseters",
+ "translate-statsf-count-registrations": "New uisers",
+ "translate-statsf-count-reviews": "Owerset luikowers",
+ "translate-statsf-count-reviewers": "Luikower-fawk",
+ "translate-statsf-language": "Comma-separatit leet o leid codes:",
+ "translate-statsf-group": "Comma-separatit leet o groop codes:",
+ "translate-statsf-submit": "Luikower",
+ "translate-tag-category": "Owersetable pages",
+ "translate-tag-page-desc": "Owersetin o the wiki page [[$2|$1]] fae $3($4).",
+ "translate-sidebar-alltrans": "In ither leids",
+ "translations": "Aw owersets",
+ "translations-summary": "Enter ae message name ablo tae shaw aw available owersets.",
+ "translate-translations-no-message": "\"$1\" isna aen owersetable message",
+ "translate-translations-none": "Thaur's naw owersets fer \"$1\"",
+ "translate-translations-count": "Fond {{PLURAL:$1|yin owerset|$1 owersets}}.",
+ "translate-translations-project": "Waurk:",
+ "translate-translations-including-no-param": "Please speceefie ae valid message key in the subpage boond",
+ "languagestats": "Leid stateestics",
+ "languagestats-summary": "This page shaws owersetin stateestics fer aw message groops fer ae leid.",
+ "languagestats-stats-for": "Owersetin stateestics fer $1 ($2).",
+ "languagestats-recenttranslations": "recynt owersets",
+ "translate-langstats-incomplete": "Some o the stateestics oan this page ar oncompleate. Please relaid tae get mair stateestics.",
+ "translate-langstats-expand": "mak mair muckle",
+ "translate-langstats-expandall": "mak aw mair muckle",
+ "translate-langstats-collapseall": "collapse aw",
+ "translate-language-code": "Leid code",
+ "translate-language-code-field-name": "Leid code:",
+ "translate-suppress-complete": "Suppress compleatelie owerset message groops",
+ "translate-ls-noempty": "Suppress compleatelie onowerset message groops",
+ "translate-language": "Leid",
+ "translate-untranslated": "Onowerset",
+ "translate-percentage-complete": "Compleation",
+ "translate-percentage-fuzzy": "Ootdated",
+ "translate-languagestats-overall": "Aw message groops thegather",
+ "translate-ls-submit": "Shaw stateestics",
+ "translate-ls-column-group": "Message groop",
+ "translate-mgs-pagename": "Message groop stateestics",
+ "translate-mgs-fieldset": "Displey preeferances",
+ "translate-mgs-group": "Message groop:",
+ "translate-mgs-nocomplete": "Dinna displey leids that hae compleatit owersetin",
+ "translate-mgs-noempty": "Dinna displey leids that dinna hae onie owersets",
+ "translate-mgs-submit": "Shaw stateestics",
+ "translate-mgs-column-language": "Leid",
+ "translate-mgs-totals": "Aw leids thegather",
+ "translate-mgs-invalid-group": "The speceefied groop $1 disna exeest.",
+ "translate-mgs-nothing": "Nawthing tae shaw fer requestit stateestics.",
+ "supportedlanguages": "Supportit leids",
+ "supportedlanguages-summary": "This page shaws ae leet o aw leids supportit bi {{SITENAME}},\nthegather wi the names o the owerseters wairkin oan that leid.\nAen owerseter's name appears muckler, the mair eedits the owerseter haes contreebuted.\nThe colour o aen unnerline indeecates ho recyntlie aen owerseter haes been acteeve here.",
+ "supportedlanguages-colorlegend": "Legend fer the colour: Laist owerset $1 days syne.",
+ "supportedlanguages-translators": "{{PLURAL:$2|{{GENDER:$3|Owerseter}}|Owerseters}}: $1",
+ "supportedlanguages-recenttranslations": "recynt owersets",
+ "supportedlanguages-count": "$1 {{PLURAL:$1|leid|lleids}} in total.",
+ "supportedlanguages-activity": "$1: $2 {{PLURAL:$2|eedit|eedits}} - laist eedit $3 {{PLURAL:$3|day|days}} syne",
+ "translate-save": "Hain ($1)",
+ "translate-jssti-add": "Eik til leet",
+ "managemessagegroups": "Message groop management",
+ "translate-smg-notallowed": "Ye'r na permittit tae execute this action.",
+ "translate-smg-nochanges": "Thaur's naw chynges tae process.",
+ "translate-smg-submit": "Haun chynges in fer processin",
+ "translate-smg-submitted": "Message defineetions hae been updated. Chynges ar bein processed in the backgroond.",
+ "translate-smg-more": "Thaur will be mair chynges tae process efter haunin thir chynges in.",
+ "translate-smg-right": "Incomin chynges",
+ "translate-manage-import-deleted": "Delytit message $1",
+ "translate-manage-action-conflict": "Import n fuzzy",
+ "translate-manage-action-fuzzy": "Import n fuzzy owersets",
+ "translate-manage-nochanges": "Thaur's naw chynges in message defineetions fer this groop.",
+ "translate-manage-nochanges-other": "Thaur were naw chynges fer this leid.\nUise the airtin ablo tae return til the groop details sichtin.",
+ "translate-manage-inconsistent": "Detected onconseestancie in the request.\nPlease check fer chynges n gie it anither gae.\nDetails: $1.",
+ "translate-manage-toolong": "The mucklest processin time o $1 {{PLURAL:$1|seicont|seiconts}} exceeded.\nPlease haun the form in again tae continue processin.",
+ "translate-manage-import-summary": "Importin ae new version fae external soorce",
+ "translate-manage-conflict-summary": "Importin ae new version fae external soorce.\nPlease check.",
+ "translate-manage-fuzzy-summary": "The message defineetion haes chynged",
+ "translate-manage-intro-other": "Ablo is ae leet o owerset chynges in the leid $1.\nPlease luik the chynges ower n chuise aen action that ye want tae tak fer ilka update.\nGif ye chuise tae ignore chynges, than this action is yinlie temparie.",
+ "translate-manage-import-done": "Import compleate!",
+ "importtranslations": "Import owersets",
+ "translate-import-from-local": "Local file uplaid:",
+ "translate-import-load": "Laid file",
+ "translate-import-err-dl-failed": "Onable tae fetch the file:\n$1",
+ "translate-import-err-ul-failed": "File uplaid wisna successfu",
+ "translate-import-err-invalid-title": "Providit file name <nowiki>$1</nowiki> wis onvalit.",
+ "translate-import-err-no-such-file": "File <nowiki>$1</nowiki> disna exeest or haes na been uplaided locallie.",
+ "translate-import-err-stale-group": "The message groop that this file belangs til disna exeest.",
+ "translate-import-err-no-headers": "File's na ae weel formed Gettext file in Owerset extension format:\nOnable tae determine message groop n leid fae file heiders.",
+ "translate-import-err-warnings": "The file's na weel formed.\nMak sair that yer eediter disna remove msgctxt fields.\nDetails: $1",
+ "translate-js-summary": "Ootline:",
+ "translate-js-save": "Hain",
+ "translate-js-next": "Hain n apen nex",
+ "translate-js-nonext": "This wis the laist message oan this page.",
+ "translate-js-skip": "Skip til the nex",
+ "translate-js-save-failed": "Hainin failed. Please report this mistak.",
+ "translate-js-history": "Owersetin histerie",
+ "translate-js-support": "Speir speirin",
+ "translate-js-support-title": "Speir fer heelp gif thaur's na enooch information tae owerset this message richt.",
+ "translate-js-support-unsaved-warning": "Ye hae onhained owersets.",
+ "translate-gs-continent": "Continant",
+ "translate-gs-count": "Coont",
+ "translate-searchprofile": "Owersets",
+ "translate-searchprofile-tooltip": "Rake fae aw owersets",
+ "translate-search-languagefilter": "Filter bi leid:",
+ "translate-search-nofilter": "Naw filterin",
+ "translate-messagereview-submit": "Maurk luikt ower",
+ "translate-messagereview-progress": "Maurkin aes luikt ower...",
+ "translate-messagereview-failure": "Maurkin aes luikower failed: $1",
+ "translate-messagereview-done": "Luikt ower",
+ "translate-messagereview-reviews": "Luikt ower bi {{PLURAL:$1|yin uiser|$1 uisers}}",
+ "translate-messagereview-reviewswithyou": "Luikt ower bi {{PLURAL:$1|ye|$1 uisers incluidin ye}}",
+ "api-error-invalidrevision": "Owerset wisna foond",
+ "api-error-unknownmessage": "Message wisna foond",
+ "api-error-fuzzymessage": "Owerset is maurkt aes fuzzy",
+ "api-error-owntranslation": "Ye canna maurk yer ain owersets aes luikt ower",
+ "translate-messagereview-no-fuzzy": "Fuzzy owersets canna be maurkt aes luikt ower.",
+ "translate-messagereview-no-own": "Ye canna maurk yer ain owersets aes luikt ower.",
+ "translate-messagereview-doit": "Maurk this owerset aes luikt ower.",
+ "log-name-translationreview": "Owerset luikower log",
+ "log-description-translationreview": "Log o aw luikowers til owersets n message groops.",
+ "logentry-translationreview-message": "$1 {{GENDER:$2|luikt ower}} owerset $3",
+ "logentry-translationreview-group": "$1 {{GENDER:$2|chynged}} the state o $4 owersets o $3 fae $6 til $7",
+ "group-translate-sandboxed": "Onappruived owerseters",
+ "group-translate-sandboxed-member": "{{GENDER:$1|onappruived owerseter}}",
+ "right-translate-sandboxmanage": "Manage saundkistit uisers",
+ "action-translate-sandboxmanage": "manage saundkistit uisers",
+ "right-translate-sandboxaction": "Execute actions whiteleetit for saundkistit uisers",
+ "action-translate-sandboxaction": "execute actions whiteleetit for saundkistit uisers",
+ "translate-workflow-state-": "(onset)",
+ "translate-workflow-set-doing": "Settin...",
+ "translate-workflow-set-error-alreadyset": "The requested state is identeecal til the Nou state.",
+ "translate-workflow-autocreated-summary": "Autæmateec cræftin o page fer wairkflaw state $1",
+ "translate-workflowgroup-label": "Wairkflaw states",
+ "translate-workflowgroup-desc": "This message groop shaws the owersetin wairkflaw states.\nThe states ar defined in the confeeguration vareeable $wgTranslateWorkflowStates.",
+ "translate-dynagroup-recent-label": "Recynt owersets",
+ "translate-dynagroup-recent-desc": "This message groop shaws aw recynt owersets intil this leid.\nMaist uissfu fer the luikower tasks.",
+ "translate-dynagroup-additions-label": "Recynt addeetions",
+ "translate-dynagroup-additions-desc": "This message groop shaws new n chynged messages.",
+ "translate-dynagroup-by": "Owerset dun bi {{GENDER:$1|$1}}",
+ "translate-dynagroup-byc": "Owerset dun bi {{GENDER:$1|$1}} ($2)",
+ "translate-dynagroup-last": "Laitest chynge bi {{GENDER:$1|$1}}",
+ "translate-dynagroup-lastc": "Laitest chynge bi {{GENDER:$1|$1}} ($2)",
+ "translate-gethelp": "Heelp",
+ "translate-msggroupselector-projects": "Message groop",
+ "translate-msggroupselector-search-placeholder": "Rake groops",
+ "translate-msggroupselector-search-all": "Aw",
+ "translate-msggroupselector-search-recent": "Recynt",
+ "translate-msggroupselector-view-subprojects": "$1 {{PLURAL:$1|subgroop|subgroops}}",
+ "tux-languageselector": "Owerset til",
+ "tux-tab-all": "Aw",
+ "tux-tab-untranslated": "Onowerset",
+ "tux-tab-outdated": "Ootdated",
+ "tux-tab-translated": "Owerset",
+ "tux-tab-unproofread": "Naw luikt ower",
+ "tux-edit": "Eedit",
+ "tux-status-optional": "Aen Optie",
+ "tux-status-fuzzy": "Ootdated",
+ "tux-status-proofread": "Luikt ower",
+ "tux-status-translated": "Owerset",
+ "tux-status-saving": "Hainin...",
+ "tux-status-unsaved": "Unhained",
+ "tux-editor-placeholder": "Yer owerset",
+ "tux-editor-paste-original-button-label": "Paste soorce tex",
+ "tux-editor-discard-changes-button-label": "Fling chynges",
+ "tux-editor-save-button-label": "Hain owerset",
+ "tux-editor-skip-button-label": "Skip til the nex",
+ "tux-editor-confirm-button-label": "Confirm owerset",
+ "tux-editor-shortcut-info": "Press \"$1\" tae hain or \"$2\" tae skip til nex message or \"$3\" fer ither shortcuts.",
+ "tux-editor-edit-desc": "Eedit documentation",
+ "tux-editor-in-other-languages": "In ither leids",
+ "tux-editor-need-more-help": "Need mair heelp?",
+ "tux-editor-ask-help": "Speir fer mair information",
+ "tux-warnings-more": "{{PLURAL:$1|$1 mair}}",
+ "tux-warnings-hide": "skauk",
+ "tux-editor-save-failed": "Hainin the owerset failed: $1",
+ "tux-editor-n-uses": "uised $1 {{PLURAL:$1|time|times}}",
+ "tux-editor-message-desc-more": "See mair",
+ "tux-editor-message-desc-less": "See less",
+ "tux-editor-clear-translated": "Skauk owerset",
+ "tux-editor-proofreading-mode": "Luikower",
+ "tux-editor-translate-mode": "Leet",
+ "tux-editor-proofreading-hide-own-translations": "Skauk yer owersets",
+ "tux-editor-proofreading-show-own-translations": "Shaw yer owersets",
+ "tux-proofread-action-tooltip": "Maurk aes luikt ower",
+ "tux-proofread-edit-label": "Eedit",
+ "tux-editor-outdated-warning": "This owerset micht need tae be updated.",
+ "tux-editor-outdated-warning-diff-link": "Shaw differances",
+ "tux-editor-doc-editor-save": "Hain documentation",
+ "tux-messagetable-more-messages": "$1 mair {{PLURAL:$1|message|messages}}",
+ "tux-messagetable-loading-messages": "Laidin {{PLURAL:$1|message|messages}}...",
+ "tux-message-filter-placeholder": "Filter leet",
+ "tux-message-filter-result": "Foond $1 {{PLURAL:$1|ootcome|ootcomes}} fer \"$2\"",
+ "tux-message-filter-advanced-button": "Advanced rake",
+ "tux-proofread-translated-by-self": "Owerset bi ye",
+ "tux-empty-list-all": "This message groop is tuim",
+ "tux-empty-list-all-guide": "Select ae differant message groop tae owerset",
+ "tux-translate-page-no-such-group": "<strong>The indicatit groop disna exeest.</strong> Select ae differant message groop.",
+ "tux-empty-list-translated": "Naw owerset messages",
+ "tux-empty-list-translated-guide": "Ye can heelp wi owerseting",
+ "tux-empty-list-translated-action": "Owerset",
+ "tux-empty-no-messages-to-display": "Naw messages tae displey.",
+ "tux-empty-there-are-optional": "Thaur's optional messages na shawn oan the leet",
+ "tux-empty-show-optional-messages": "Shaw optional messages",
+ "tux-empty-no-outdated-messages": "Naw ootdated messages",
+ "tux-empty-nothing-to-proofread": "Nawthing tae luikower",
+ "tux-empty-you-can-help-providing": "Ye can heelp in providin new owersets",
+ "tux-empty-nothing-new-to-proofread": "Nawthing new tae luikower",
+ "tux-empty-you-can-review-already-proofread": "Ye can luikower owersets that hae awreadie luikt ower bi ithers.",
+ "tux-empty-list-other": "Nawthing tae owerset",
+ "tux-empty-list-other-guide": "Ye can heelp tae luikower exeestin owersets",
+ "tux-empty-list-other-action": "Luikower owersets",
+ "tux-empty-list-other-link": "Shaw aw messages",
+ "tux-editor-close-tooltip": "Claise",
+ "tux-editor-expand-tooltip": "Mak mair muckle",
+ "tux-editor-message-tools-history": "Histerie",
+ "tux-editor-message-tools-delete": "Delyte",
+ "tux-editor-message-tools-translations": "Aw owersets",
+ "tux-editor-loading": "Laidin...",
+ "translate-search-more-languages-info": "$1 mair {{PLURAL:$1|leid|leids}}",
+ "translate-statsbar-tooltip": "$1% owerset, $2% luikt ower",
+ "translate-statsbar-tooltip-with-fuzzy": "$1% owerset, $2% luikt ower, $3% ootdated",
+ "translate-search-more-groups-info": "$1 mair {{PLURAL:$1|groop|groops}}",
+ "translate-ulsdep-title": "Confeeguration mistak",
+ "translate-ulsdep-body": "Owerset extension depends oan the [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:UniversalLanguageSelector Uneeversal Leid Selecter extension]."
+}
diff --git a/MLEB/Translate/i18n/core/sh.json b/MLEB/Translate/i18n/core/sh.json
new file mode 100644
index 00000000..0dc282d6
--- /dev/null
+++ b/MLEB/Translate/i18n/core/sh.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Kolega2357"
+ ]
+ },
+ "right-translate-manage": "Upravljanje grupama poruka"
+}
diff --git a/MLEB/Translate/i18n/core/si.json b/MLEB/Translate/i18n/core/si.json
new file mode 100644
index 00000000..56419926
--- /dev/null
+++ b/MLEB/Translate/i18n/core/si.json
@@ -0,0 +1,297 @@
+{
+ "@metadata": {
+ "authors": [
+ "Singhalawap",
+ "Varuna Harshana",
+ "චතුනි අලහප්පෙරුම",
+ "පසිඳු කාවින්ද",
+ "බිඟුවා",
+ "ශ්වෙත"
+ ]
+ },
+ "translate": "පරිවර්තනය කරන්න",
+ "translate-desc": "මාධ්‍යවිකී සහ ඉන් ඔබ්බට පරිවර්තනය කෙරුම සඳහා [[Special:Translate|විශේෂ පිටුව]]",
+ "translate-taskui-view": "සියළු පණිවුඩ පෙන්වන්න",
+ "translate-taskui-untranslated": "පරිවර්තනය නොකල පණිවුඩ පෙන්වන්න",
+ "translate-taskui-optional": "අමතර පණිවුඩ පෙන්වන්න",
+ "translate-taskui-acceptqueue": "මට බාරගත හැකි පණිවුඩ පමණක්",
+ "translate-taskui-reviewall": "සියලු පරිවර්තන නිරීක්ෂණය කරන්න",
+ "translate-taskui-export-to-file": "දේශ්‍රීය ආකෘතියයෙන් නිර්යාත කරන්න",
+ "translate-taskui-export-as-po": "මාර්ග-අපගත පරිවර්තනය සඳහා නිර්යාත කරන්න",
+ "translate-taction-translate": "පරිවර්තනය කරන්න",
+ "translate-taction-proofread": "සමාලෝචනය",
+ "translate-taction-lstats": "භාෂා සංඛ්‍යානයන්",
+ "translate-taction-mstats": "පණිවුඩ සමූහ සංඛ්‍යානය",
+ "translate-taction-export": "නිර්යාත කරන්න",
+ "translate-taction-disabled": "මෙම ක්‍රියාව මෙම විකියෙහි අක්‍රිය කර ඇත.",
+ "translate-page-no-such-language": "නම් කෙරුනු භාෂාව අනීතිකයි.",
+ "translate-page-no-such-group": "නම් කෙරුණු කාණ්ඩය අනීතිකයි.",
+ "translate-page-disabled": "මෙම කාණ්ඩයේ මෙම භාෂාව සඳහා පරිවර්තන අක්‍රීය කොට ඇත.\nහේතුව:\n\n<em>$1</em>",
+ "translate-language-disabled": "මෙම භාෂාව වෙත පරිවර්තනය අක්‍රිය කර ඇත.",
+ "translate-page-settings-legend": "සැකසුම්",
+ "translate-page-group": "කාණ්ඩය",
+ "translate-page-language": "භාෂාව",
+ "translate-page-limit": "සීමාව",
+ "translate-page-limit-option": "එක් පිටුවකට {{PLURAL:$1|පණිවුඩ|පණිවුඩ}} $1 ක්",
+ "translate-submit": "ඉටුකරන්න",
+ "translate-page-navigation-legend": "යාත්‍රණය",
+ "translate-page-showing": "$3 ක් අතුරින් පණ්වුඩ $1 සිට $2 දක්වා ප්‍රදර්ශනය කෙරෙයි .",
+ "translate-page-showing-all": "{{PLURAL:$1|පණිවුඩ|පණිවුඩ}} $1 ක් පෙන්වමින්.",
+ "translate-page-showing-none": "පෙන්විමට පණිවුඩ නොමැත.",
+ "translate-next": "ඊළඟ පිටුව",
+ "translate-prev": "පෙර පිටුව",
+ "translate-page-description-legend": "කාණ්ඩය පිළිබඳ විස්තර",
+ "translate-page-description-hasoptional-open": "අමතර පණිවුඩ පෙන්වන්න.",
+ "translate-page-edit": "සංස්කරණය",
+ "translate-ext-url": "<hr />වෙබ් අඩවිය: $1",
+ "translate-optional": "(වෛකල්පික)",
+ "translate-ignored": "(නොසලකන ලදි)",
+ "translate-edit-title": "\"$1\" සංස්කරණය කරන්න",
+ "translate-edit-definition": "පණිවුඩ විග්‍රහය",
+ "translate-edit-translation": "පරිවර්තනය",
+ "translate-edit-contribute": "දායකවන්න",
+ "translate-edit-no-information": "''මෙම පණිවුඩය සතුව ප්‍රලේඛනයක් නොමැත.''\n''මෙම පණිවුඩය තිබෙන්නේ කොහේදැයි හෝ භාවිතා කරන්නේ කුමටද කියා දන්නවානම්, මෙම පණිවුඩය සඳහා ප්‍රලේඛනයක් තැනීම මඟින් ඔබට අනෙකුත් පරිවර්තකයන් හට සහය විය හැක.''",
+ "translate-edit-information": "($1) පණිවුඩය පිලිබඳ තොරතුරු",
+ "translate-edit-in-other-languages": "පණිවුඩය වෙනත් භාෂාවලින්",
+ "translate-edit-committed": "මෘදුකාංගයෙහි වත්මන් පරිවර්තනය",
+ "translate-edit-warnings": "අසම්පුර්ණ පරිවර්තන පිලිබඳ අවවාද",
+ "translate-edit-tmsugs": "පෙර පරිවර්තන මතකයෙන් සහ යන්ත්‍රික පරිවර්තනයෙන්",
+ "translate-edit-tmmatch-source": "පරිවර්තන මූලාශ්‍ර පාඨය: $1",
+ "translate-edit-tmmatch": "$1% ගැලපේ",
+ "translate-use-suggestion": "මෙම යෝජනාව සමඟ වත්මන් පරිවර්තනය ප්‍රතිස්ථාපනය කරන්න.",
+ "translate-edit-nopermission": "පණිවුඩ පරිවර්තනයකිරීම සඳහා ඔබ අවසර ගත යුතුය.",
+ "translate-edit-askpermission": "අවසර ඉල්ලන්න",
+ "translate-magic-pagename": "දීර්ඝ කල මාධ්‍යවිකි පරිවර්තනය",
+ "translate-magic-module": "මොඩියුලය:",
+ "translate-magic-submit": "ආහරනය කරන්න",
+ "translate-magic-cm-export": "නිර්යාත",
+ "translate-magic-nothing-to-export": "නිර්යාත කිරීමට කිසිවක් නොමැත.",
+ "translate-magic-cm-to-be": "වෙන්න-තියන",
+ "translate-magic-cm-current": "වත්මන්",
+ "translate-magic-cm-original": "මුල් පිටපත",
+ "translate-magic-cm-comment": "පරිකථනය:",
+ "translate-magic-cm-save": "සුරකින්න",
+ "translate-magic-cm-updatedusing": "[[Special:AdvancedTranslate|{{int:Translate-magic-pagename}}]] භාවිතා කරමින් යාවත්කාලීන කරන ලදී",
+ "translate-magic-cm-savefailed": "සුරැකීම අසාර්ථක විය",
+ "translate-magic-special": "විශේෂ පිටු අන්වර්ථ නාම",
+ "translate-magic-words": "මායා වචන",
+ "translate-magic-namespace": "නාමඅවකාශ නම්",
+ "translate-magic-notsaved": "ඔබගේ සංස්කරණය සුරැකීම සිදු නොවිණි!",
+ "translate-magic-errors": "කරුණාකර පරිවර්තනවල ඇති පහත {{PLURAL:$1|දෝෂය|දෝෂයන්}} සකස් කරන්න:",
+ "translate-magic-saved": "ඔබ කල වෙනස්කිරීම් සාර්ථකව සුරැකිනි.",
+ "translate-checks-parameters": "පහත {{PLURAL:$2|පරාමිතිය|පරාමිතියන්}} භාවිතා නොවේ:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-parameters-unknown": "පහත {{PLURAL:$2|පරාමිතිය|පරාමිතියන්}} අඥාතයි:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-balance": "එහි {{PLURAL:$2|parentheses|වරහන්}} අසමසම ගණනක් තිබේ :\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links": "පහත {{PLURAL:$2|සබැඳිය|සබැඳියන් $2}} ගැටළු සහගතයි:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links-missing": "පහත {{PLURAL:$2|සබැඳිය|සබැඳියන් $2}} මඟ හැරී ඇත:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-xhtml": "කරුණාකර පහත {{PLURAL:$2|ටැගය|ටැගයන්}} නිවැරදි ඒවා සමඟ ප්‍රතිස්ථාපනය කරන්න :\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-plural": "නිර්වචනය <nowiki>{{PLURAL:}}</nowiki> භාවිතා කරයි නමුත් පරිවර්තනය එසේ නොකරයි.",
+ "translate-checks-pagename": "නාමාඅවකාශය නිර්වචනයෙන් වෙනස් වී ඇත",
+ "translate-checks-format": "පරිවර්තනය විසින් නිර්වචනය අනුගමනය නොකරනවා හෝ වලංගු නොවන කාරකරීතියක් තිබේ: $1",
+ "translate-checks-escape": "පහත මඟහැරීම් අහම්බෙන් සිදු වූ ඒවා විය හැක: <strong>$1</strong>",
+ "translate-checks-parametersnotequal": "පරාමිති ගණනය {{PLURAL:$1|$1}}; {{PLURAL:$2|$2}} විය යුතුයි.",
+ "translate-checks-malformed": "<nowiki>$1</nowiki> විකෘති වී ඇත.",
+ "translate-checks-fudforum-syntax": "මෙම ව්‍යාපෘතියෙහි <nowiki>$1</nowiki> වෙනුවට <nowiki>$2</nowiki> භාවිතා කරන්න.",
+ "translate-pref-nonewsletter": "මට ඊ-තැපැල් පුවත්ලිපි එවන්න එපා",
+ "translate-pref-editassistlang": "සහයක භෂාවන්:",
+ "prefs-translate": "පරිවර්තන විකල්පයන්",
+ "translate-pref-editassistlang-bad": "ලයිස්තුවේ වලංගු නොවන භාෂා කේතයක්:\n<nowiki>$1</nowiki>.",
+ "right-translate": "පරිවර්තන අතුරුමුහුණත භාවිතාකරමින් සංස්කරණය කරන්න",
+ "right-translate-manage": "පණිවුඩ සමූහයන් කළමනාකරණය කරන්න",
+ "action-translate-manage": "පණිවුඩ කාණ්ඩ කළමනාකරණය කරන්න",
+ "right-translate-import": "මාර්ගඅපගත පරිවර්තන ආයාත කරන්න",
+ "action-translate-import": "මාර්ගඅපගත පරිවර්තන ආයාත කරන්න",
+ "right-translate-messagereview": "පරිවර්තන නිරීක්ෂණය කරන්න",
+ "right-translate-groupreview": "පණිවුඩ සමූහයන්වල කාර්යගැලීමේ තත්ත්වය වෙනස් කරන්න",
+ "translate-rc-translation-filter": "පරිවර්තන පෙරන්න:",
+ "translate-rc-translation-filter-no": "කිසිවක් නොකරන්න",
+ "translate-rc-translation-filter-only": "පරිවර්තන පමණක් පෙන්වන්න",
+ "translate-rc-translation-filter-filter": "පරිවර්තන පෙරහන්ගත කරන්න",
+ "translate-rc-translation-filter-site": "අඩවි පණිවුඩවලට කෙරූ වෙනස්කම් පමණි",
+ "translationstats": "පරිවර්තන සංඛ්‍යා ලේඛන",
+ "translate-stats-edits": "සංස්කරණ",
+ "translate-stats-users": "පරිවර්තකයන්",
+ "translate-stats-registrations": "ලියාපදිංචි කිරීම්",
+ "translate-stats-reviews": "නිරීක්ෂණ",
+ "translate-stats-reviewers": "විචාරකයෝ",
+ "translate-statsf-options": "ප්‍රස්තාර විකල්පයන්",
+ "translate-statsf-width": "පික්සල් වලින් පළල:",
+ "translate-statsf-height": "පික්සල් වලින් උස:",
+ "translate-statsf-days": "කාලපරිච්ඡේදය දිනවලින්:",
+ "translate-statsf-start": "ආරම්භක දිනය:",
+ "translate-statsf-scale": "කැටිතිබව:",
+ "translate-statsf-scale-months": "මාස",
+ "translate-statsf-scale-weeks": "සති",
+ "translate-statsf-scale-days": "දින",
+ "translate-statsf-scale-hours": "පැය",
+ "translate-statsf-count": "මිම්ම:",
+ "translate-statsf-count-edits": "සංස්කරණයන් සංඛ්‍යාව",
+ "translate-statsf-count-users": "සක්‍රීය පරිවර්තකයෝ",
+ "translate-statsf-count-registrations": "නව පරිශීලකයින්",
+ "translate-statsf-count-reviews": "පරිවර්තන නිරීක්ෂණ",
+ "translate-statsf-count-reviewers": "විචාරකයෝ",
+ "translate-statsf-language": "කොමාවෙන්-වෙන්වූ භාෂා කේතයන් ලැයිස්තුව:",
+ "translate-statsf-group": "කොමාවෙන්-වෙන්වූ සමූහ කේතයන් ලැයිස්තුව:",
+ "translate-statsf-submit": "පෙරදසුන",
+ "translate-tag-category": "පරිවර්තනය කල හැකි පිටු",
+ "translate-tag-page-desc": "[[$2|$1]] විකි පිටුවෙහි පරිවර්තනය.",
+ "translate-sidebar-alltrans": "වෙනත් භාෂා වලින්",
+ "translations": "සියළු පරිවර්තන",
+ "translations-summary": "ලබාගත හැකි සියලුම පරිවර්තන පෙන්වීම සඳහා පණිවුඩ නාමය පහතින් යොදන්න.",
+ "translate-translations-no-message": "\"$1\" යනු පරිවර්තනය කල හැකි පණිවුඩයක් නොවේ",
+ "translate-translations-none": "\"$1\" සඳහා පරිවර්තන කිසිවක් නොමැත",
+ "translate-translations-count": "{{PLURAL:$1|එක් පරිවර්තනයක්|පරිවර්තන $1 ක්}} හමුවුණා.",
+ "translate-translations-fieldset-title": "පණිවුඩය",
+ "translate-translations-messagename": "නම:",
+ "translate-translations-project": "ව්‍යාපෘතිය:",
+ "translate-translations-including-no-param": "උපපිටු පරමිතියෙහි කරුණාකර වලංගු පණිවුඩ යතුරක් විශේෂණය කරන්න",
+ "translate-translations-history-short": "එච්",
+ "languagestats": "භාෂා සංඛ්‍යානයන්",
+ "languagestats-summary": "භාෂාවක් සඳහා සියලුම පණිවුඩ කාණ්ඩවල පරිවර්තන සංඛ්‍යාලේඛන මෙම පිටුව විසින් පෙන්වයි.",
+ "languagestats-stats-for": "$1 සඳහා පරිවර්තන සංඛ්‍යා ලේඛන ($2).",
+ "languagestats-recenttranslations": "නව පරිවර්තන",
+ "translate-langstats-incomplete": "මෙම පිටුවෙහි තිබෙන සමහරක් සංඛ්‍යාලේඛන අසම්පූර්ණයි. තවත් සංඛ්‍යාලේඛන ලබාගැනීම සඳහා නැවත පූරණය කරන්න.",
+ "translate-langstats-expand": "විදහන්න",
+ "translate-langstats-collapse": "හකුලන්න",
+ "translate-langstats-expandall": "සියල්ලම විදහන්න",
+ "translate-langstats-collapseall": "සියල්ලම හකුලන්න",
+ "translate-language-code": "භාෂා කේතය",
+ "translate-language-code-field-name": "භාෂා කේතය:",
+ "translate-suppress-complete": "මුළුමනින්ම පරිවර්තනයකල පණිවුඩ කාණ්ඩ යටපත්කරන්න",
+ "translate-ls-noempty": "මුළුමනින්ම පරිවර්තනය නොකළ පණිවුඩ කාණ්ඩ යටපත් කරන්න",
+ "translate-language": "භාෂාව",
+ "translate-total": "පණිඩුඩ",
+ "translate-untranslated": "පරිවර්තනය නොකල",
+ "translate-percentage-complete": "සමාප්තිය",
+ "translate-percentage-fuzzy": "යල් පැන ගිය",
+ "translate-languagestats-overall": "සියලු පණිවුඩ සමූහයන් එක්ව",
+ "translate-ls-submit": "සංඛ්‍යා ලේඛන පෙන්වන්න",
+ "translate-ls-column-group": "පණිවුඩ සමූහය",
+ "translate-mgs-pagename": "පණිවුඩ සමූහ සංඛ්‍යානය",
+ "translate-mgs-fieldset": "අභිරුචි පෙන්වන්න",
+ "translate-mgs-group": "පණිවුඩ සමූහය:",
+ "translate-mgs-nocomplete": "සම්පුර්ණයෙන් පරිවර්තනය කල භාෂාවන් නොපෙන්වන්න",
+ "translate-mgs-noempty": "පරිවර්තන කිසිවක් නොමැති භාෂා නොපෙන්වන්න",
+ "translate-mgs-submit": "සංඛ්‍යා ලේඛන පෙන්වන්න",
+ "translate-mgs-column-language": "බස",
+ "translate-mgs-totals": "සියලු භාෂාවන් එක්ව",
+ "translate-mgs-invalid-group": "විශේෂණය කෙරූ සමුහය $1 නොපවතියි.",
+ "translate-mgs-nothing": "අයැදූ සංඛ්‍යා ලේඛන වල පෙන්වීමට දෙයක් නැත.",
+ "supportedlanguages": "සහය දක්වන භාෂාවන්",
+ "supportedlanguages-colorlegend": "වර්ණය සඳහා ප්‍රබන්ධය: අන්තිම පරිවර්තනය දින $1 කට පෙර.",
+ "supportedlanguages-translators": "{{PLURAL:$2|පරිවර්තකයා|පරිවර්තකයන්}}: $1",
+ "supportedlanguages-recenttranslations": "මෑත පරිවර්තන",
+ "supportedlanguages-count": "එකතුව වශයෙන් {{PLURAL:$1|භාෂා|භාෂා}} $1 ක් ඇත.",
+ "translate-save": "($1) සුරකින්න",
+ "translate-jssti-add": "ලැයිස්තුවට එක් කරන්න",
+ "managemessagegroups": "පණිවුඩ සමූහ කළමනාකරණය",
+ "translate-smg-notallowed": "ඔබට මෙම ක්‍රියාව සිදු කිරීමට ඉඩ ලබා නොදේ.",
+ "translate-smg-nochanges": "ක්‍රියානනය කිරීමට වෙනස්කම් නොමැත.",
+ "translate-smg-submit": "ක්‍රියානනය සඳහා වෙනස්කම් යොමන්න",
+ "translate-smg-left": "විකියෙහි පණිවුඩ අන්තර්ගතය",
+ "translate-smg-right": "එන වෙනස්කම්",
+ "translate-manage-import-diff": "පණිවුඩය $1 | ක්‍රියාකාරකම්: $2",
+ "translate-manage-import-new": "නව පණිවුඩය $1",
+ "translate-manage-import-deleted": "මකාදැමුනු පණිවුඩය $1",
+ "translate-manage-action-import": "ආයාත කරන්න",
+ "translate-manage-action-conflict": "ආයාත කරමින් නිරීක්ෂණය සඳහා සලකුණු කරන්න",
+ "translate-manage-action-ignore": "නොසලකන්න",
+ "translate-manage-action-fuzzy": "පරිවර්තන ආයාත කරමින් නිරීක්ෂණය සඳහා සලකුණු කරන්න",
+ "translate-manage-nochanges": "මෙම කාණ්ඩය සඳහා පණිවුඩ නිර්වචනවල කිසිදු වෙනසක් නොමැත.",
+ "translate-manage-nochanges-other": "මෙම භාෂාව සඳහා වෙනස්කම් කිසිවක් නොතිබුණි.\nසමූහ විස්තර දසුන වෙත නැවත යාම සඳහා පහත සබැඳිය භාවිතා කරන්න.",
+ "translate-manage-import-summary": "බාහිර මූලාශ්‍රයකින් නව අනුවාදය ආයාත කරමින්",
+ "translate-manage-conflict-summary": "බාහිර මූලාශ්‍රයක් වෙතින් නව අනුවාදය ආයාත කරමින්.\nකරුණාකර පිරික්සන්න.",
+ "translate-manage-fuzzy-summary": "නිර්වචනය වෙනස් වී ඇත",
+ "translate-manage-submit": "සම්පාදනය කරන්න",
+ "translate-manage-import-ok": "$1 පිටුවෙහි නව අනුවාදයක් ආයාත කරන ලදී.",
+ "translate-manage-import-done": "සියල්ල කරන ලදී",
+ "importtranslations": "පරිවර්තන ආයාත කරන්න",
+ "translate-import-from-local": "ප්‍රාදේශීය ගොනු උඩුගත කෙරුම:",
+ "translate-import-load": "ගොනුව පූරණය කරන්න",
+ "translate-import-err-dl-failed": "ගොනුව පමුණුවීමට නොහැක:\n$1",
+ "translate-import-err-ul-failed": "ගොනු උඩුගත කෙරුම සාර්ථකව සිදු නොවුණි",
+ "translate-import-err-invalid-title": "ඉදිරිපත්කල ගොනු නාමය <nowiki>$1</nowiki> වලංගු නොවේ.",
+ "translate-import-err-no-such-file": "<nowiki>$1</nowiki> ගොනුව නොපවතියි හෝ තවමත් ප්‍රාදේශීය වශයෙන් උඩුගත කල නොමැත.",
+ "translate-js-summary": "සාරාංශය:",
+ "translate-js-save": "සුරකින්න",
+ "translate-js-next": "සුරකීමෙන් පසු ඊළඟ එක විවෘත කරන්න",
+ "translate-js-nonext": "මෙය මෙම පිටුවේ තිබු අන්තිම පණිවුඩයයි.",
+ "translate-js-skip": "මීළඟ පියවරට පනින්න",
+ "translate-js-save-failed": "සුරැකීම අසාර්ථක වුණි. කරුණාකර මෙම දෝෂය වාර්තා කරන්න.",
+ "translate-js-history": "පරිවර්තන ඉතිහාසය",
+ "translate-js-support": "ප්‍රශ්නයක් අසන්න",
+ "translate-js-support-title": "මෙම පණිවුඩය නිවැරදිව පරිවර්තනය කිරීම සඳහා ප්‍රමාණවත් තරම් තොරතුරු නොමැති නම් උදව් සඳහා විමසන්න.",
+ "translate-js-support-unsaved-warning": "ඔබ සතුව නොසුරැකූ පරිවර්තන ඇත.",
+ "translate-gs-pos": "ස්ථාන.",
+ "translate-gs-code": "කේතය",
+ "translate-gs-continent": "මහාද්වීපය",
+ "translate-gs-speakers": "කථිකයෝ",
+ "translate-gs-score": "ලකුණ",
+ "translate-gs-multiple": "බහුවිධ",
+ "translate-gs-count": "ගණනය",
+ "translate-gs-total": "මුළු",
+ "translate-gs-avgscore": "සාමාන්‍ය. අගය",
+ "translate-documentation-language": "පණිවුඩ ප්‍රලේඛනය",
+ "translate-searchprofile": "පරිවර්තන",
+ "translate-searchprofile-tooltip": "සියලු පරිවර්තනයන්ගෙන් සොයන්න",
+ "translate-search-languagefilter": "භාෂාව අනුව පෙරහන:",
+ "translate-search-nofilter": "පෙරීමක් නොමැත",
+ "translate-messagereview-submit": "පිළිගන්න",
+ "translate-messagereview-progress": "බාරගනිමින්...",
+ "translate-messagereview-failure": "බාරගනිමින්... අසාර්ථකයි: $1",
+ "translate-messagereview-done": "පිළිගන්නා ලදී",
+ "translate-messagereview-reviews": "{{PLURAL:$1|එක් පරිශීලකයෙක්|පරිශීලකයන් $1 ක්}} විසින් පිළිගන්නා ලද",
+ "translate-messagereview-reviewswithyou": "ඔබද ඇතුළුව {{PLURAL:$1|එක් පරිශීලකයෙක්|පරිශීලකයන් $1 ක්}} විසින් පිළිගන්නා ලද",
+ "api-error-invalidrevision": "පරිවර්තනය හමු නොවුණි",
+ "api-error-unknownmessage": "පණිවුඩය හමු නොවුණි",
+ "api-error-fuzzymessage": "පරිවර්තනය fuzzy ලෙස සලකුණු කොට ඇත",
+ "api-error-owntranslation": "ඔබ හට ඔබම සිදුකල පරිවර්තන අනුමතකල නොහැක",
+ "translate-messagereview-no-fuzzy": "Fuzzy පරිවර්තනයන් පිළිගත නොහැක.",
+ "translate-messagereview-no-own": "ඔබ හට ඔබගේම පරිවර්තන පිළිගත නොහැක.",
+ "translate-messagereview-doit": "මෙය නිවැරදි පරිවර්තනයක් ලෙස පිළිගන්න.",
+ "log-name-translationreview": "පරිවර්තන නිරීක්ෂණ ලඝු සටහන",
+ "logentry-translationreview-message": "$1 විසින් $3 පරිවර්තනය {{GENDER:$2|පිළිගන්නා ලදී}}",
+ "translate-workflow-state-": "(සකසා නැත)",
+ "translate-workflowstatus": "තත්වය: $1",
+ "translate-workflow-set-do": "සකසන්න",
+ "translate-workflow-set-doing": "සකසමින්...",
+ "translate-workflow-set-done": "සැකසුවා!",
+ "translate-stats-workflow": "තත්වය",
+ "translate-workflowgroup-label": "Workflow තත්ත්ව",
+ "translate-dynagroup-recent-label": "මෑත පරිවර්තන",
+ "translate-dynagroup-additions-label": "මෑත එක් කිරීම්",
+ "translate-dynagroup-additions-desc": "මෙම පණිවුඩ සමූහය නව සහ වෙනස් වූ පණිවුඩ පෙන්වයි.",
+ "translate-dynagroup-by": "{{GENDER:$1|$1}} විසින් පරිවර්තනය සිදු කරන ලදී",
+ "translate-dynagroup-byc": "{{GENDER:$1|$1}} විසින් පරිවර්තනය සිදු කරන ලදී ($2)",
+ "translate-dynagroup-last": "{{GENDER:$1|$1}} විසින් සිදු කල අවසන් වෙනස",
+ "translate-dynagroup-lastc": "{{GENDER:$1|$1}} විසින් සිදු කල අවසන් වෙනස ($2)",
+ "translate-gethelp": "උදව්",
+ "translate-msggroupselector-projects": "පණිවුඩ සමූහය",
+ "translate-msggroupselector-search-placeholder": "සමූහ සොයන්න",
+ "translate-msggroupselector-search-all": "සියල්ල",
+ "translate-msggroupselector-search-recent": "මෑත",
+ "translate-msggroupselector-view-subprojects": "{{PLURAL:$1|උපප්‍රවර්ග}} $1",
+ "tux-languageselector": "වෙත පරිවර්තනය කරන්න",
+ "tux-tab-all": "සියල්ල",
+ "tux-tab-untranslated": "පරිවර්තනය නොකල",
+ "tux-tab-outdated": "යල් පැන ගිය",
+ "tux-tab-translated": "පරිවර්තනය කෙරූ",
+ "tux-edit": "සංස්කරණය",
+ "tux-status-optional": "වෛකල්පිත",
+ "tux-status-fuzzy": "යල් පැන ගිය",
+ "tux-status-proofread": "සෝදුපත් බැලීම",
+ "tux-status-translated": "පරිවර්තනය කෙරූ",
+ "tux-status-unsaved": "සුරක්ෂිත නොවේ",
+ "tux-editor-placeholder": "ඔබේ පරිවර්තනය",
+ "tux-editor-save-button-label": "පරිවර්තනය සුරකින්න",
+ "tux-editor-skip-button-label": "මීළඟ පියවරට පනින්න",
+ "tux-editor-edit-desc": "විස්තරය සංස්කරණය කරන්න",
+ "tux-editor-suggestions-title": "යෝජනා",
+ "tux-editor-in-other-languages": "වෙනත් භාෂා වලින්",
+ "tux-editor-need-more-help": "තවත් උදව් අවශ්‍යද?",
+ "tux-editor-ask-help": "තවත් තොරතුරු සඳහා විමසන්න",
+ "tux-editor-tm-match": "$1% ගැලපේ",
+ "tux-warnings-more": "{{PLURAL:$1|තවත් $1}}",
+ "tux-warnings-hide": "සඟවන්න",
+ "tux-editor-save-failed": "පරිවර්තනය සුරැකීම අසාර්ථකයි: $1"
+}
diff --git a/MLEB/Translate/i18n/core/sk.json b/MLEB/Translate/i18n/core/sk.json
new file mode 100644
index 00000000..36179470
--- /dev/null
+++ b/MLEB/Translate/i18n/core/sk.json
@@ -0,0 +1,247 @@
+{
+ "@metadata": {
+ "authors": [
+ "Helix84",
+ "Kusavica",
+ "Mormegil",
+ "Rudko",
+ "Teslaton",
+ "Sudo77(new)"
+ ]
+ },
+ "translate": "Preložiť",
+ "translate-desc": "[[Special:Translate|Špeciálna stránka]] na preklad MediaWiki a iného",
+ "translate-taskui-view": "Zobraziť všetky správy",
+ "translate-taskui-untranslated": "Zobraziť nepreložené správy",
+ "translate-taskui-optional": "Zobraziť voliteľné správy",
+ "translate-taskui-acceptqueue": "Iba správy, ktoré mám právo akceptovať",
+ "translate-taskui-reviewall": "Hodnotiť všetky preklady",
+ "translate-taskui-export-to-file": "Exportovať v natívnom formáte",
+ "translate-taskui-export-as-po": "Exportovať pre preklad off-line",
+ "translate-taction-translate": "Preklad",
+ "translate-taction-proofread": "Korektúry",
+ "translate-taction-lstats": "Štatistika jazykov",
+ "translate-taction-mstats": "Štatistika skupín správ",
+ "translate-taction-export": "Export",
+ "translate-taction-disabled": "Táto akcia je na tejto wiki vypnutá.",
+ "translate-page-no-such-language": "Zadaný jazyk bol neplatný.",
+ "translate-page-no-such-group": "Zadaná skupina bola neplatná.",
+ "translate-page-disabled": "Preklady v tejto skupine do tohto jazyka boli zakázané. Dôvod:\n\n<em>$1</em>",
+ "translate-page-settings-legend": "Možnosti",
+ "translate-page-group": "Skupina",
+ "translate-page-language": "Jazyk",
+ "translate-page-limit": "Limit",
+ "translate-page-limit-option": "$1 {{PLURAL:$1|správa|správy|správ}} na stránku",
+ "translate-submit": "Načítať",
+ "translate-page-navigation-legend": "Navigácia",
+ "translate-page-showing": "Zobrazujú sa správy $1 až $2 z $3.",
+ "translate-page-showing-all": "{{PLURAL:$1|Zobrazuje sa $1 správa|Zobrazujú sa $1 správy|Zobrazuje sa $1 správ}}.",
+ "translate-page-showing-none": "Žiadne správy.",
+ "translate-next": "Ďalšia stránka",
+ "translate-prev": "Predošlá stránka",
+ "translate-page-description-legend": "Informácie o skupine",
+ "translate-page-description-hasoptional": "Táto skupina obsahuje voliteľné správy.\nVoliteľné správy sa majú prekladať len v prípade, ak má váš jazyk špecifické potreby,\nako napr. nepoužívanie medzier, alebo transkripcie vlastných mien. $1",
+ "translate-page-description-hasoptional-open": "Zobraziť voliteľné správy.",
+ "translate-page-edit": "upraviť",
+ "translate-ext-url": "<hr />Webstránka: $1",
+ "translate-optional": "(voliteľné)",
+ "translate-ignored": "(ignorované)",
+ "translate-edit-title": "Upraviť \"$1\"",
+ "translate-edit-definition": "Definícia správy",
+ "translate-edit-translation": "Preklad",
+ "translate-edit-contribute": "prispejte",
+ "translate-edit-no-information": "''Táto správa nie je zdokumentovaná. Ak viete kde alebo ako je táto správa použitá, môžete pomôcť ostatným prekladateľom tým, že jej pridáte dokumentáciu.''",
+ "translate-edit-information": "Informácia o správe ($1)",
+ "translate-edit-in-other-languages": "Správa v iných jazykoch",
+ "translate-edit-committed": "Aktuálny preklad v úložisku",
+ "translate-edit-warnings": "Upozornenia na neúplné preklady",
+ "translate-edit-tmsugs": "Návrhy z kompendia",
+ "translate-edit-tmmatch-source": "Zdroj prekladu: $1",
+ "translate-edit-tmmatch": "$1% zhoda",
+ "translate-use-suggestion": "Nahradiť aktuálny preklad týmto návrhom.",
+ "translate-edit-nopermission": "Na preklad správ potrebujete povolenie.",
+ "translate-edit-askpermission": "Požiadať o povolenie",
+ "translate-magic-pagename": "Rozšírený preklad MediaWiki",
+ "translate-magic-help": "Môžete prekladať aliasy špeciálnych stránok, magické slová, názvy tém vzhľadu a názvy menných priestorov.\n\nAliasy špeciálnych stránok a magických slov môžu mať viacero prekladov.\nPreklady sa oddeľujú čiarkami („,“).\nNázvy tém vzhľadu a názvy menných priestorov môžu mať iba jeden preklad.\n\nV prekladoch menných priestorov je <code>$1 talk</code> špeciálne. <code>$1</code> sa nahradí názvom webovej lokality (napr. <code>{{ns:project_talk}}</code>). Ak vo vašom jazyku nie je možné vytvoriť zmysluplný výraz bez zmeny názvu webovej lokality, prosím, kontaktujte vývojára.\n\nAby ste mohli ukladať zmeny, musíte byť členom skupiny prekladatelia.\nZmeny sa neuložia, kým nekliknete na tlačidlo Uložiť dolu.",
+ "translate-magic-module": "Modul:",
+ "translate-magic-submit": "Vykonať",
+ "translate-magic-cm-export": "Exportovať",
+ "translate-magic-nothing-to-export": "Niet čo exportovať.",
+ "translate-magic-cm-to-be": "Má byť",
+ "translate-magic-cm-current": "Aktuálna",
+ "translate-magic-cm-original": "Pôvodná",
+ "translate-magic-cm-comment": "Komentár:",
+ "translate-magic-cm-save": "Uložiť",
+ "translate-magic-cm-updatedusing": "Aktualizované pomocou [[Special:AdvancedTranslate|{{int:Translate-magic-pagename}}]]",
+ "translate-magic-cm-savefailed": "Uloženie sa nepodarilo",
+ "translate-magic-special": "Aliasy špeciálnych stránok",
+ "translate-magic-words": "Magické slová",
+ "translate-magic-namespace": "Názvy menných priestorov",
+ "translate-magic-notsaved": "Vaša úprava nebola uložená!",
+ "translate-magic-errors": "Prosím, opravte {{PLURAL:$1|nasledovnú chybu|nasledovné chyby}} v prekladoch:",
+ "translate-magic-saved": "Vaše zmeny boli úspešne uložené.",
+ "translate-checks-parameters": "{{PLURAL:$2|Nasledovný parameter nie je použitý|Nasledovné parametre nie sú použité}}: <strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-parameters-unknown": "{{PLURAL:$2|Nasledovný parameter je neznámy|Nasledovné parametre sú neznáme}}: <strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-balance": "Nevyvážené počty {{PLURAL:$2|zátvoriek|zátvoriek}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links": "{{PLURAL:$2|Nasledovný odkaz je problematický|Nasledovné odkazy sú problematické}}: <strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links-missing": "{{PLURAL:$2|Nasledovný odkaz chýba|Nasledovné $2 odkazy chýbajú|Nasledovných $2 odkazov chýba}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-xhtml": "Prosím, nahraďte {{PLURAL:$2|nasledovnú značku správnou|nasledovné značky správnymi}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-plural": "Definícia používa <nowiki>{{PLURAL:}}</nowiki>, ale preklad nie.",
+ "translate-checks-pagename": "Oproti definícii sa zmenil menný priestor",
+ "translate-checks-format": "Tento preklad nezodpovedá definícii alebo má neplatnú syntax: $1",
+ "translate-checks-escape": "Nasledové únikové klauzuly sú možno uvedené omylom: <strong>$1</strong>",
+ "translate-checks-parametersnotequal": "Počet parametrov je {{PLURAL:$1|$1}}; mal by byť {{PLURAL:$2|$2}}.",
+ "translate-checks-malformed": "<nowiki>$1</nowiki>má nesprávny formát.",
+ "translate-checks-fudforum-syntax": "V tomto projekte používať <nowiki>$1</nowiki> namiesto <nowiki>$2</nowiki>.",
+ "translate-pref-nonewsletter": "Neposielať mi novinky emailom",
+ "translate-pref-editassistlang": "Pomocné jazyky:",
+ "prefs-translate": "Možnosti prekladu",
+ "translate-pref-editassistlang-help": "Čiarkami oddelený zoznam kódov jazykov.\nPreklady správ v týchto jazykoch sa zobrazujú, keď prekladáte.\nPredvoleny zoznam jazykov závisí na vašom jazyku.",
+ "translate-pref-editassistlang-bad": "Neplatný kód jazyka v zozname:\n<nowiki>$1</nowiki>.",
+ "right-translate": "Vykonávať úpravy pomocou rozhrania Preložiť",
+ "right-translate-manage": "Spravovať skupiny správ",
+ "action-translate-manage": "spravovať skupiny správ",
+ "right-translate-import": "Importovať offline preklady",
+ "action-translate-import": "import offline prekladov",
+ "right-translate-messagereview": "Hodnotenie prekladov",
+ "translate-rc-translation-filter": "Preklady filtrov:",
+ "translate-rc-translation-filter-no": "Nevykonávať nič",
+ "translate-rc-translation-filter-only": "Iba zobraziť preklady",
+ "translate-rc-translation-filter-filter": "Vyfiltrovať preklady",
+ "translate-rc-translation-filter-site": "Iba zmeny oznamu lokality",
+ "translationstats": "Štatistiky prekladov",
+ "translate-stats-edits": "Úprav",
+ "translate-stats-users": "Prekladatelia",
+ "translate-stats-registrations": "Registrácie",
+ "translate-stats-reviews": "Hodnotenia",
+ "translate-stats-reviewers": "Hodnotitelia",
+ "translate-statsf-intro": "Pomocou tohto formulára môžete tvoriť jednoduché štatistiky. Všetky hodnoty majú hornú a spodnú hranicu.",
+ "translate-statsf-options": "Možnosti grafu",
+ "translate-statsf-width": "Šírka v pixeloch:",
+ "translate-statsf-height": "Výška v pixeloch:",
+ "translate-statsf-days": "Časový interval v dňoch:",
+ "translate-statsf-start": "Počiatočný dátum:",
+ "translate-statsf-scale": "Granularita:",
+ "translate-statsf-scale-months": "Mesiace",
+ "translate-statsf-scale-weeks": "Týždne",
+ "translate-statsf-scale-days": "Dni",
+ "translate-statsf-scale-hours": "Hodiny",
+ "translate-statsf-count": "Meranie:",
+ "translate-statsf-count-edits": "Počet úprav",
+ "translate-statsf-count-users": "Aktívni prekladatelia",
+ "translate-statsf-count-registrations": "Noví používatelia",
+ "translate-statsf-count-reviews": "Hodnotení",
+ "translate-statsf-count-reviewers": "Hodnotitelia",
+ "translate-statsf-language": "Čiarkami oddelený zoznam kódov jazykov:",
+ "translate-statsf-group": "Čiarkami oddelený zoznam kódov skupín:",
+ "translate-statsf-submit": "Náhľad",
+ "translate-tag-category": "Preložiteľné stránky",
+ "translate-tag-page-desc": "Preklad wiki stránky [[$2|$1]].",
+ "translate-sidebar-alltrans": "V iných jazykoch",
+ "translations": "Všetky preklady",
+ "translations-summary": "Všetky dostupné preklady zobrazíte po zadaní názvu správy.",
+ "translate-translations-no-message": "„$1“ nie je správa, ktorú možno preložiť",
+ "translate-translations-none": "Neexistujú žiadne preklady správy „$1“",
+ "translate-translations-count": "{{PLURAL:$1|Nájdený $1 preklad|Nájdené $1 preklady|Nájdených $1 prekladov}}.",
+ "translate-translations-fieldset-title": "Správa",
+ "translate-translations-messagename": "Názov:",
+ "translate-translations-project": "Projekt:",
+ "translate-translations-including-no-param": "Prosím, v parametri subpage uveďte platný kľúč správy",
+ "translate-translations-history-short": "h",
+ "languagestats": "Štatistika jazykov",
+ "languagestats-summary": "Táto stránka zobrazuje štatistiku prekladov všetkých skupín správ jazyka.",
+ "languagestats-stats-for": "Štatistika prekladov pre jazyk $1 ($2).",
+ "languagestats-recenttranslations": "nedávne preklady",
+ "translate-langstats-incomplete": "Niektoré štatistiky na tejto stránke sú neúplné. Aktuálnejšie údaje získate znovunačítaním stránky.",
+ "translate-langstats-expand": "rozbaliť",
+ "translate-langstats-collapse": "zbaliť",
+ "translate-langstats-expandall": "rozbaliť všetky",
+ "translate-langstats-collapseall": "zbaliť všetky",
+ "translate-language-code": "Kód jazyka",
+ "translate-language-code-field-name": "Kód jazyka:",
+ "translate-suppress-complete": "Nezobrazovať skupiny s komplet dokončeným prekladom",
+ "translate-ls-noempty": "Nezobrazovať skupiny s vôbec nezačatým prekladom",
+ "translate-language": "Jazyk:",
+ "translate-total": "Správy",
+ "translate-untranslated": "Nepreložené",
+ "translate-percentage-complete": "Dokončené",
+ "translate-percentage-fuzzy": "Zastarané",
+ "translate-languagestats-overall": "Všetky skupiny dohromady",
+ "translate-ls-submit": "Zobraziť štatistiku",
+ "translate-ls-column-group": "Skupina správ",
+ "translate-mgs-pagename": "Štatistika skupín správ",
+ "translate-mgs-fieldset": "Voľby zobrazenia",
+ "translate-mgs-group": "Skupina správ:",
+ "translate-mgs-nocomplete": "Nezobrazovať jazyky s komplet dokončeným prekladom",
+ "translate-mgs-noempty": "Nezobrazovať jazyky s vôbec nezačatým prekladom",
+ "translate-mgs-submit": "Zobraziť štatistiku",
+ "translate-mgs-column-language": "Jazyk",
+ "translate-mgs-totals": "Všetky jazyky dohromady",
+ "translate-mgs-invalid-group": "Zadaná skupina $1 neexistuje.",
+ "translate-mgs-nothing": "V požadovej štatistike nie je čo zobraziť.",
+ "supportedlanguages": "Podporované jazyky",
+ "supportedlanguages-summary": "Na tejto stránke sa nachádza zoznam všetkých jazykov podporovaných na {{GRAMMAR:6sg|{{SITENAME}}}}\nspolu s menami prekladateľov, ktorí na jazyku pracujú.\nČím viac úprav prekladateľ poskytol, tým väčším písmom sa jeho meno zobrazuje.\nFarba podčiarknutia znázorňuje, ako nedávno tu bol prekladateľ aktívny.",
+ "supportedlanguages-colorlegend": "Legenda k farbám: Posledný preklad pred {{PLURAL:$1|$1 dňom|$1 dňami}}.",
+ "supportedlanguages-translators": "{{PLURAL:$2|Prekladateľ|Prekladatelia}}: $1",
+ "supportedlanguages-recenttranslations": "nedávne preklady",
+ "supportedlanguages-count": "Dohromady $1 {{PLURAL:$1|jazyk|jazyky|jazykov}}.",
+ "supportedlanguages-activity": "$1: $2 {{PLURAL:$2|editácia|editácie|editácií}} – posledná pred $3 {{PLURAL:$3|dňom|dňami}}",
+ "translate-save": "Uložiť ($1)",
+ "translate-jssti-add": "Pridať do zoznamu",
+ "managemessagegroups": "Správa skupín správ",
+ "translate-manage-import-diff": "Správa $1 | Operácie: $2",
+ "translate-manage-import-new": "Nová správa $1",
+ "translate-manage-import-deleted": "Zmazaná správa $1",
+ "translate-manage-action-import": "Importovať",
+ "translate-manage-action-conflict": "Importovať a označiť ako neúplné",
+ "translate-manage-action-ignore": "Ignorovať",
+ "translate-manage-action-fuzzy": "Importovať a označiť preklady ako neúplné",
+ "translate-manage-nochanges": "V definícii správ tejto skupiny nenastali žiadne zmeny.",
+ "translate-manage-nochanges-other": "V tomto jazyku nenastali žiadne zmeny.\nDolu uvedeným odkazom sa vrátite na zobrazenie podrobností skupiny.",
+ "translate-manage-inconsistent": "Zistená nekonzistencia v požiadavku.\nProsím, skontrolujte zmeny a skúste to znova. Podrobnosti: $1.",
+ "translate-manage-toolong": "Maximálny čas spracovania $1 {{PLURAL:$1|sekunda|sekundy|sekúnd}} bol prekročený.\nV spracovaní môžete pokračovať opätovným odoslaním formulára.",
+ "translate-manage-import-summary": "Importuje sa nová verzia z externého zdroja",
+ "translate-manage-conflict-summary": "Importuje sa nová verzia z externého zdroja. Prosím, skontrolujte ju.",
+ "translate-manage-fuzzy-summary": "Definícia sa zmenila",
+ "translate-manage-submit": "Vykonať",
+ "translate-manage-intro-other": "Nižšie je zoznam zmien v prekladoch v jazyku $1.\nProsím, skontrolujte zmeny a vyberte operáciu pre každý z prekladov.\nAk sa rozhodnete ignorovať zmeny, prepíšu sa pri ďalšom exporte.",
+ "translate-manage-import-ok": "Importovaná nová verzia stránky $1.",
+ "translate-manage-import-done": "Hotovo!",
+ "importtranslations": "Importovať preklady",
+ "translate-import-from-local": "Nahranie lokálneho súboru:",
+ "translate-import-load": "Nahrať súbor",
+ "translate-import-err-dl-failed": "Nepodarilo sa získať súbor:\n$1",
+ "translate-import-err-ul-failed": "Nahranie súboru neprebehlo úspešne",
+ "translate-import-err-invalid-title": "Poskytnutý názov súboru „<nowiki>$1</nowiki>“ bol neplatný.",
+ "translate-import-err-no-such-file": "Súbor „<nowiki>$1</nowiki>“ neexistuje alebo nebol lokálne nahraný.",
+ "translate-import-err-stale-group": "Skupina správ, do ktorej patrí tento súbor neexistuje.",
+ "translate-import-err-no-headers": "Súbor nie je správne vytvorený Gettext súbor vo formáte rozšírenia Translate:\nNebolo možné určiť skupinu a jazyk z hlavičiek súboru.",
+ "translate-import-err-warnings": "Tento súbor nie je platný.\nUistite sa, že váš editor neodstraňuje polia msgctxt.\nPodrobnosti: $1",
+ "translate-js-summary": "Zhrnutie:",
+ "translate-js-save": "Uložiť",
+ "translate-js-next": "Uložiť a otvoriť ďalšiu",
+ "translate-js-nonext": "To bola posledná správa na tejto stránke.",
+ "translate-js-skip": "Preskočiť na ďalšiu",
+ "translate-js-save-failed": "Uloženie sa nepodarilo. Nahláste prosím túto chybu.",
+ "translate-js-history": "História prekladov",
+ "translate-js-support": "Položiť otázku",
+ "translate-js-support-title": "Požiadať o pomoc, ak nie je k dispozícii dostatok informácií pre správny preklad tejto správy.",
+ "translate-gs-pos": "Poz.",
+ "translate-gs-code": "Kód",
+ "translate-gs-continent": "Kontinent",
+ "translate-gs-speakers": "Hovoriacich",
+ "translate-gs-score": "Skóre",
+ "translate-gs-multiple": "Viaceré",
+ "translate-gs-count": "Počet",
+ "translate-gs-total": "Celkom",
+ "translate-gs-avgscore": "Priem. skóre",
+ "translate-messagereview-done": "Prijaté",
+ "api-error-invalidrevision": "Preklad sa nenašiel",
+ "log-name-translationreview": "Log hodnotení prekladov",
+ "log-description-translationreview": "Log všetkých hodnotení prekladov a skupín správ.",
+ "logentry-translationreview-message": "$1 {{GENDER:$2|akceptoval|akceptovala|akceptoval}} preklad $3",
+ "translate-dynagroup-recent-label": "Nedávne preklady",
+ "translate-dynagroup-recent-desc": "Táto skupina správ obsahuje všetky nedávne preklady do tohoto jazyka. Užitočné pre účely korektúry.",
+ "translate-gethelp": "Pomoc",
+ "tux-editor-in-other-languages": "V iných jazykoch"
+}
diff --git a/MLEB/Translate/i18n/core/sl.json b/MLEB/Translate/i18n/core/sl.json
new file mode 100644
index 00000000..69c88dc2
--- /dev/null
+++ b/MLEB/Translate/i18n/core/sl.json
@@ -0,0 +1,386 @@
+{
+ "@metadata": {
+ "authors": [
+ "Dbc334",
+ "Eleassar",
+ "Smihael",
+ "Edinwiki"
+ ]
+ },
+ "translate": "Prevedi",
+ "translate-desc": "[[Special:Translate|Posebna stran]] za prevajanje MediaWiki in razširitev",
+ "translate-taskui-view": "Pokaži vsa sporočila",
+ "translate-taskui-untranslated": "Pokaži neprevedena sporočila",
+ "translate-taskui-optional": "Pokaži izbirna sporočila",
+ "translate-taskui-acceptqueue": "Samo sporočila, ki jih lako označim kot pregledana",
+ "translate-taskui-reviewall": "Preglej vse prevode",
+ "translate-taskui-export-to-file": "Izvozi v izvirni obliki",
+ "translate-taskui-export-as-po": "Izvozi za nepovezano prevajanje",
+ "translate-taction-translate": "Prevedi",
+ "translate-taction-proofread": "Preglej",
+ "translate-taction-lstats": "Statistika jezika",
+ "translate-taction-mstats": "Statistika skupin sporočil",
+ "translate-taction-export": "Izvozi",
+ "translate-taction-disabled": "Dejanje je na tem wikiju onemogočeno.",
+ "translate-page-no-such-language": "Izbran jezik je neveljaven.",
+ "translate-page-no-such-group": "Izbrana skupina je neveljavna.",
+ "translate-page-disabled": "Prevodi v ta jezik v tej skupini so bili onemogočeni.\nRazlog:\n\n<em>$1</em>",
+ "translate-language-disabled": "Prevodi v ta jezik so onemogočeni.",
+ "translate-page-settings-legend": "Nastavitve",
+ "translate-page-group": "Skupina",
+ "translate-page-language": "Jezik",
+ "translate-page-limit": "Omejitev",
+ "translate-page-limit-option": "$1 {{PLURAL:$1|sporočilo|sporočili|sporočila|sporočil}} na stran",
+ "translate-submit": "Pridobi",
+ "translate-page-navigation-legend": "Navigacija",
+ "translate-page-showing": "Prikazujem sporočila od $1 do $2 od skupno $3.",
+ "translate-page-showing-all": "Prikazujem $1 {{PLURAL:$1|sporočilo|sporočili|sporočila|sporočil}}.",
+ "translate-page-showing-none": "Ni sporočil za prikaz.",
+ "translate-next": "Naslednja stran",
+ "translate-prev": "Prejšnja stran",
+ "translate-page-description-legend": "Informacije o skupini",
+ "translate-page-description-hasoptional": "Ta skupina sporočil vsebuje izbirna sporočila.\nIzbirna sporočila prevedite samo, če ima vaš jezik posebne zahteve,\nkot sta neuporaba presledkov ali prečrkovanje izvirnih imen. $1",
+ "translate-page-description-hasoptional-open": "Pokaži izbirna sporočila.",
+ "translate-page-edit": "uredi",
+ "translate-ext-url": "<hr /> Spletna stran: $1",
+ "translate-optional": "(neobvezno)",
+ "translate-ignored": "(prezri)",
+ "translate-edit-title": "Uredi »$1«",
+ "translate-edit-definition": "Opredelitev sporočila v izvirnem jeziku",
+ "translate-edit-translation": "Prevod",
+ "translate-edit-contribute": "prispevaj",
+ "translate-edit-no-information": "<em>Sporočilo nima dokumentacije.\nČe veste, kje in kako je uporabljeno, lahko pomagate drugim prevajalcem z dodajanjem dokumentacije.</em>",
+ "translate-edit-information": "Podatki o sporočilu ($1)",
+ "translate-edit-in-other-languages": "Sporočilo v drugih jezikih",
+ "translate-edit-committed": "Trenutni prevod v programski opremi",
+ "translate-edit-warnings": "Opozorila o nepopolnosti prevoda",
+ "translate-edit-tmsugs": "Predlogi iz spomina prevodov",
+ "translate-edit-tmmatch-source": "Izvirno besedilo prevoda: $1",
+ "translate-edit-tmmatch": "$1-% ujemanje",
+ "translate-use-suggestion": "Zamenjaj trenutni prevod s tem predlogom.",
+ "translate-edit-nopermission": "Za prevajanje sporočil potrebujete prevajalske pravice.",
+ "translate-edit-askpermission": "Pridobite dovoljenje",
+ "translate-magic-pagename": "Razširjeno prevajanje MediaWiki",
+ "translate-magic-help": "Prevedete lahko vzdevke posebnih strani, čarobne besede in imena imenskih prostorov.\n\nVzdevki posebnih strani in čarobne besede imajo lahko več prevodov.\nPrevodi so ločeni z vejico (,).\nImenski prostori imajo lahko samo en prevod.\n\nPrevajanja projektnih imenskih prostorov za pogovor <code>$1 talk</code> je lahko zapleteno.\n<code>$1</code> se zamenja z imenom projektne strani (na primer <code>{{ns:project_talk}}</code>).\nČe v vašem jeziku ni mogoče tvoriti veljavnega izraza brez spreminjanja imena strani, prosimo, nas o tem obvestite na strani [[Support|Podpora]].\n\nZa shranjevanje sprememb morate biti prevajalec.\nSpremembe niso shranjene dokler ne kliknete spodnjega gumba za shranjevanje.",
+ "translate-magic-module": "Modul:",
+ "translate-magic-submit": "Pridobi",
+ "translate-magic-cm-export": "Izvoz",
+ "translate-magic-nothing-to-export": "Ni sporočil za izvoz.",
+ "translate-magic-cm-to-be": "Naj bo",
+ "translate-magic-cm-current": "Trenutno",
+ "translate-magic-cm-original": "Izvirnik",
+ "translate-magic-cm-comment": "Komentar:",
+ "translate-magic-cm-save": "Shrani",
+ "translate-magic-cm-updatedusing": "Posodobitev z uporabo [[Special:AdvancedTranslate|{{int:Translate-magic-pagename}}]]",
+ "translate-magic-cm-savefailed": "Shranjevanje ni uspelo",
+ "translate-magic-special": "Vzdevki posebnih strani",
+ "translate-magic-words": "Čarobne besede",
+ "translate-magic-namespace": "Imena imenskih prostorov",
+ "translate-magic-notsaved": "Vaše urejanje ni bilo shranjeno!",
+ "translate-magic-errors": "Prosimo popravite {{PLURAL:$1|naslednjo napako|naslednji $1 napaki|naslednje $1 napake|naslednjih $1 napak}} v prevodih:",
+ "translate-magic-saved": "Vaše spremembe smo uspešno shranili.",
+ "translate-checks-parameters": "{{PLURAL:$2|Naslednji parameter ni uporabljen|Naslednja parametra nista uporabljena|Naslednji parametri niso uporabljeni}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-parameters-unknown": "{{PLURAL:$2|Naslednji parameter je neznan|Naslednja parametra sta neznana|Naslednji parametri so neznani}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-balance": "V sporočilu je neparno število {{PLURAL:$2|oklepajev}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links": "{{PLURAL:$2|Naslednja povezava je sporna|Naslednji povezavi sta sporni|Naslednje povezave so sporne}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links-missing": "{{PLURAL:$2|Naslednja povezava manjka|Naslednji povezavi manjkata|Naslednje povezave manjkajo}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-xhtml": "Prosimo, zamenjajte {{PLURAL:$2|sledečo oznako z ustrezno|sledeči oznaki z ustreznima|sledeče oznake z ustreznimi}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-plural": "Opredelitev uporablja <nowiki>{{PLURAL:}}</nowiki>, vendar je prevod ne.",
+ "translate-checks-plural-forms": "<nowiki>{{PLURAL:}}</nowiki> ima {{PLURAL:$1|določeno eno obliko|določeni dve obliki|določene $1 oblike|določenih $1 oblik}}, vendar {{PLURAL:$2|je podprta samo ena oblika|sta podprti samo dve obliki|so podprte samo $2 oblike|je podprtih samo $2 oblik}} (izključujoč obliki 0= in 1=).",
+ "translate-checks-plural-dupe": "<nowiki>{{PLURAL:}}</nowiki> ima na koncu podvojeni obliki. <nowiki>{{PLURAL:$1|ovca|ovca}}</nowiki> naj bo napisano kot <nowiki>{{PLURAL:$1|ovca}}</nowiki>.",
+ "translate-checks-pagename": "Imenski prostor je drugačen kot v opredelitvi",
+ "translate-checks-format": "Ta prevod ne sledi opredelitvi ali ima neveljavno skladnjo: $1",
+ "translate-checks-escape": "Naslednji ubegi so morda naključni: <strong>$1</strong>",
+ "translate-checks-parametersnotequal": "Število parametrov je {{PLURAL:$1|$1}}; moralo bi biti {{PLURAL:$2|$2}}.",
+ "translate-checks-malformed": "<nowiki>$1</nowiki> je poškodovan.",
+ "translate-checks-fudforum-syntax": "V tem projektu uporabite <nowiki>$1</nowiki> namesto <nowiki>$2</nowiki>.",
+ "translate-pref-nonewsletter": "Ne pošiljaj mi e-poštnih glasil",
+ "translate-pref-editassistlang": "Pomožni jeziki:",
+ "prefs-translate": "Možnosti prevajanja",
+ "translate-pref-editassistlang-help": "Z vejicami ločen seznam kod jezikov.\nKo prevajate, so prikazani prevodi sporočila v teh jezikih.\nPrivzeti seznam jezikov je odvisen od vašega jezika.",
+ "translate-pref-editassistlang-bad": "Neveljavna koda jezika na seznamu:\n<nowiki>$1</nowiki>.",
+ "right-translate": "Urejanje z uporabo prevajalnega vmesnika",
+ "right-translate-manage": "Upravljanje skupin sporočil",
+ "action-translate-manage": "urejanje skupin prevodov",
+ "right-translate-import": "Uvažanje nepovezanih prevodov",
+ "action-translate-import": "uvažanje nepovezanih prevodov",
+ "right-translate-messagereview": "Pregledovanje prevodov",
+ "right-translate-groupreview": "Sprememba stanja poteka dela skupine sporočil",
+ "translate-rc-translation-filter": "Filtriraj prevode:",
+ "translate-rc-translation-filter-no": "Ne stori ničesar",
+ "translate-rc-translation-filter-only": "Prikaži samo prevode",
+ "translate-rc-translation-filter-filter": "Izloči prevode",
+ "translate-rc-translation-filter-site": "Samo spremembe sporočil strani",
+ "translationstats": "Statistika prevodov",
+ "translate-stats-edits": "Urejanja",
+ "translate-stats-users": "Prevajalci",
+ "translate-stats-registrations": "Registracije",
+ "translate-stats-reviews": "Pregledi",
+ "translate-stats-reviewers": "Pregledovalci",
+ "translate-statsf-intro": "S tem obrazcem lahko ustvarite preprosto statistiko.\nVse vrednosti imajo zgornje in spodnje omejitve.",
+ "translate-statsf-options": "Možnosti grafa",
+ "translate-statsf-width": "Širina v slikovnih pikah:",
+ "translate-statsf-height": "Višina v slikovnih pikah:",
+ "translate-statsf-days": "Začetni datum:",
+ "translate-statsf-start": "Začetni datum:",
+ "translate-statsf-scale": "Zrnavost:",
+ "translate-statsf-scale-months": "Meseci",
+ "translate-statsf-scale-weeks": "Tedni",
+ "translate-statsf-scale-days": "Dni",
+ "translate-statsf-scale-hours": "Ur",
+ "translate-statsf-count": "Merilo:",
+ "translate-statsf-count-edits": "Število urejanj",
+ "translate-statsf-count-users": "Aktivni prevajalci",
+ "translate-statsf-count-registrations": "Novi uporabniki",
+ "translate-statsf-count-reviews": "Pregledi prevodov",
+ "translate-statsf-count-reviewers": "Pregledovalcev",
+ "translate-statsf-language": "Z vejico ločen seznam kod jezikov:",
+ "translate-statsf-group": "Z vejico ločen seznam kod skupin:",
+ "translate-statsf-submit": "Predogled",
+ "translate-tag-category": "Prevedljive strani",
+ "translate-tag-page-desc": "Prevod wikistrani [[$2|$1]] iz jezika $3 ($4).",
+ "translate-sidebar-alltrans": "V drugih jezikih",
+ "translations": "Vsi prevodi",
+ "translations-summary": "Spodaj vnesite ime sporočila, da prikažete vse njegove razpoložljive prevode.",
+ "translate-translations-no-message": "»$1« ni prevedljivo sporočilo",
+ "translate-translations-none": "Ni prevodov za »$1«",
+ "translate-translations-count": "{{PLURAL:$1|Najden $1 prevod|Najdena $1 prevoda|Najdeni $1 prevodi|Najdenih $1 prevodov}}.",
+ "translate-translations-fieldset-title": "Sporočilo",
+ "translate-translations-messagename": "Ime:",
+ "translate-translations-project": "Projekt:",
+ "translate-translations-including-no-param": "Prosimo, navedite veljavni ključ sporočila v parametru podstrani",
+ "translate-translations-history-short": "z",
+ "languagestats": "Statistika jezika",
+ "languagestats-summary": "Stran prikazuje statistiko prevodov za vse skupine sporočil jezika.",
+ "messagegroupstats-summary": "Stran prikazuje statistiko skupin sporočil.",
+ "languagestats-stats-for": "Statistika prevodov za jezik $1 ($2).",
+ "languagestats-recenttranslations": "nedavni prevodi",
+ "translate-langstats-incomplete": "Nekatere statistike na tej strani so nepopolne. Prosimo, da za več statistik ponovno naložite stran.",
+ "translate-langstats-expand": "razširi",
+ "translate-langstats-collapse": "skrči",
+ "translate-langstats-expandall": "razširi vse",
+ "translate-langstats-collapseall": "skrči vse",
+ "translate-language-code": "Koda jezika",
+ "translate-language-code-field-name": "Koda jezika:",
+ "translate-suppress-complete": "Preskoči v celoti prevedene skupine sporočil",
+ "translate-ls-noempty": "Preskoči v celoti neprevedene skupine sporočil",
+ "translate-language": "Jezik",
+ "translate-total": "Sporočil",
+ "translate-untranslated": "Neprevedeno",
+ "translate-percentage-complete": "Končano",
+ "translate-percentage-fuzzy": "Zastarelo",
+ "translate-languagestats-overall": "Vse skupine sporočil skupaj",
+ "translate-ls-submit": "Prikaži statistiko",
+ "translate-ls-column-group": "Skupina sporočil",
+ "translate-mgs-pagename": "Statistika skupine sporočil",
+ "translate-mgs-fieldset": "Nastavitve prikaza",
+ "translate-mgs-group": "Skupina sporočil:",
+ "translate-mgs-nocomplete": "Ne prikaži jezikov, ki imajo dokončan prevod",
+ "translate-mgs-noempty": "Ne prikaži jezikov, ki nimajo nobenega prevoda",
+ "translate-mgs-submit": "Prikaži statistiko",
+ "translate-mgs-column-language": "Jezik",
+ "translate-mgs-totals": "Vsi jeziki skupaj",
+ "translate-mgs-invalid-group": "Izbrana skupina $1 ne obstaja.",
+ "translate-mgs-nothing": "Pri izbrani statistiki ni ničesar za prikazati.",
+ "supportedlanguages": "Podprti jeziki",
+ "supportedlanguages-summary": "Ta stran prikazuje seznam vseh jezikov, ki jih podpira {{SITENAME}},\nskupaj z imeni prevajalcev, ki delujejo na tem jeziku.\nVeč urejanj je prevajalec prispeval, večje je izpisano njegovo ime.\nBarva podrčtave kaže na zadnjo tukajšnjo dejavnost prevajalca.",
+ "supportedlanguages-colorlegend": "Legenda barv: Zadnji prevod pred $1 dnevi.",
+ "supportedlanguages-translators": "{{PLURAL:$2|{{GENDER:$3|Prevajalec|Prevajalka}}|Prevajalca|Prevajalci}}: $1",
+ "supportedlanguages-recenttranslations": "nedavni prevodi",
+ "supportedlanguages-count": "$1 {{PLURAL:$1|jezik|jezika|jeziki|jezikov}} skupno.",
+ "supportedlanguages-activity": "$1: $2 {{PLURAL:$2|urejanje|urejanji|urejanja|urejanj}} – zadnje urejanje pred $3 {{PLURAL:$3|dnem|dnema|dnemi}}",
+ "translate-save": "Shrani ($1)",
+ "translate-jssti-add": "Dodaj na seznam",
+ "managemessagegroups": "Upravljanje skupin sporočil",
+ "translate-smg-notallowed": "Nimate dovoljenj za izvedbo dejanja.",
+ "translate-smg-nochanges": "Ni nobenih sprememb za obdelavo.",
+ "translate-smg-submit": "Potrdi spremembe v obdelavo",
+ "translate-smg-submitted": "Opredelitve sporočil so posodobljene. Spremembe se obdelujejo v ozadju.",
+ "translate-smg-more": "Po potrditvi teh sprememb bo treba obdelati več sprememb.",
+ "translate-smg-left": "Vsebina sporočila v wikiju",
+ "translate-smg-right": "Prihajajoče spremembe",
+ "translate-manage-import-diff": "Sporočilo $1 | Dejanja: $2",
+ "translate-manage-import-new": "Novo sporočilo $1",
+ "translate-manage-import-deleted": "Izbriši sporočilo $1",
+ "translate-manage-action-import": "Uvozi",
+ "translate-manage-action-conflict": "Uvozi in označi kot ohlapno",
+ "translate-manage-action-ignore": "Prezri",
+ "translate-manage-action-fuzzy": "Uvozi in prevode označi kot ohlapne",
+ "translate-manage-nochanges": "Ni sprememb v opredelitvi sporočil za to skupino.",
+ "translate-manage-nochanges-other": "Za ta jezik ni bilo sprememb.\nUporabite spodnjo povezavo za vrnitev na pogled podrobnosti skupine.",
+ "translate-manage-inconsistent": "V zahtevi je bila odkrita nedoslednost.\nProsimo, preverite spremembe in poskusite znova.\nPodrobnosti: $1",
+ "translate-manage-toolong": "Najdaljši čas obdelave $1 {{PLURAL:$1|sekunde|sekund}} je presežen.\nProsimo, ponovno potrdite obrazec, da nadaljujete z obdelavo.",
+ "translate-manage-import-summary": "Uvažanje nove različice iz zunanjega vira",
+ "translate-manage-conflict-summary": "Uvažanje nove različice iz zunanjega vira.\nProsimo, preverite.",
+ "translate-manage-fuzzy-summary": "Opredelitev sporočila se je spremenila",
+ "translate-manage-submit": "Izvedi",
+ "translate-manage-intro-other": "Spodaj se nahaja seznam sprememb prevodov v jeziku $1.\nProsimo, preglejte spremembe in izberite dejanje, ki ga želite storiti za vsako posodobitev.\nČe se odločite prezreti spremembe, bo to dejanje samo začasno.",
+ "translate-manage-import-ok": "Uvoženo: $1.",
+ "translate-manage-import-done": "Uvoz je dokončan!",
+ "importtranslations": "Uvažanje prevodov",
+ "translate-import-from-local": "Nalaganje lokalne datoteke:",
+ "translate-import-load": "Naloži datoteko",
+ "translate-import-err-dl-failed": "Ne morem pridobiti datoteke:\n$1",
+ "translate-import-err-ul-failed": "Nalaganje datoteke ni bilo uspešno",
+ "translate-import-err-invalid-title": "Določeno ime datoteke <nowiki>$1</nowiki> je bilo neveljavno.",
+ "translate-import-err-no-such-file": "Datoteka <nowiki>$1</nowiki> ne obstaja ali pa ni bila naložena lokalno.",
+ "translate-import-err-stale-group": "Skupina sporočil, kateri pripada ta datoteka, ne obstaja.",
+ "translate-import-err-no-headers": "Datoteka ni dobro oblikovana datoteka Gettext v obliki razširitve Translate:\nNe morem določiti skupine in jezika iz glav datoteke.",
+ "translate-import-err-warnings": "Datoteka ni dobro oblikovana.\nPrepričajte se, da vaš urejevalnik ne odstrani polj msgctxt.\nPodrobnosti: $1",
+ "translate-js-summary": "Povzetek:",
+ "translate-js-save": "Shrani",
+ "translate-js-next": "Shrani in odpri naslednje",
+ "translate-js-nonext": "To je bilo zadnje sporočilo na tej strani.",
+ "translate-js-skip": "Preskoči na naslednje",
+ "translate-js-save-failed": "Shranjevanje je spodletelo. Prosimo, prijavite to napako.",
+ "translate-js-history": "Zgodovina prevoda",
+ "translate-js-support": "Postavi vprašanje",
+ "translate-js-support-title": "Prosite za pomoč, če tukaj ni navedenih dovolj informacij, da bi lahko sporočilo pravilno prevedli.",
+ "translate-js-support-unsaved-warning": "Imate neshranjene prevode.",
+ "translate-gs-pos": "Št.",
+ "translate-gs-code": "Koda",
+ "translate-gs-continent": "Celina",
+ "translate-gs-speakers": "Govorcev",
+ "translate-gs-score": "Rezultat",
+ "translate-gs-multiple": "Več",
+ "translate-gs-count": "Število",
+ "translate-gs-total": "Skupno",
+ "translate-gs-avgscore": "Povp. rezultat",
+ "translate-documentation-language": "dokumentacija sporočila",
+ "translate-searchprofile": "Prevodi",
+ "translate-searchprofile-tooltip": "Iskanje med vsemi prevodi",
+ "translate-search-languagefilter": "Filtriraj po jeziku:",
+ "translate-search-nofilter": "Brez filtriranja",
+ "translate-messagereview-submit": "Označi kot pregledano",
+ "translate-messagereview-progress": "Označevanje kot pregledano ...",
+ "translate-messagereview-failure": "Označevanje kot pregledano je spodletelo: $1",
+ "translate-messagereview-done": "Pregledano",
+ "translate-messagereview-reviews": "{{PLURAL:$1|Pregledal $1 uporabnik|Pregledala $1 uporabnika|Pregledali $1 uporabniki|Pregledalo $1 uporabnikov}}",
+ "translate-messagereview-reviewswithyou": "{{PLURAL:$1|Pregledali ste vi|Pregledala $1 uporabnika, vključno z vami|Pregledali $1 uporabniki, vključno z vami|Pregledalo $1 uporabnikov, vključno z vami}}",
+ "api-error-invalidrevision": "Prevoda ni bilo mogoče najti",
+ "api-error-unknownmessage": "Sporočila ni bilo mogoče najti",
+ "api-error-fuzzymessage": "Prevod je označen kot zastarel",
+ "api-error-owntranslation": "Svojih prevodov ne me morete označiti kot pregledane",
+ "translate-messagereview-no-fuzzy": "Zastarelih prevodov ni mogoče označiti kot pregledane.",
+ "translate-messagereview-no-own": "Svojih prevodov ne me morete označiti kot pregledane.",
+ "translate-messagereview-doit": "Označi prevod kot pregledan.",
+ "log-name-translationreview": "Dnevnik pregledov prevodov",
+ "log-description-translationreview": "Dnevnik vseh pregledov prevodov in skupin sporočil.",
+ "logentry-translationreview-message": "$1 je {{GENDER:$2|pregledal|pregledala|pregledal(-a)}} prevod $3",
+ "logentry-translationreview-group": "$1 je {{GENDER:$2|spremenil|spremenila|spremenil(-a)}} stanje prevodov jezika $4 za $3 iz $6 v $7",
+ "group-translate-sandboxed": "Neodobreni prevajalci",
+ "group-translate-sandboxed-member": "{{GENDER:$1|neodobren prevajalec}}",
+ "right-translate-sandboxmanage": "Upravljanje z uporabniki, omejenimi na peskovnik",
+ "action-translate-sandboxmanage": "upravljanje z uporabniki, omejenimi na peskovnik",
+ "right-translate-sandboxaction": "Izvršitev dejanj, dovoljenih na peskovnik omejenim uporabnikom",
+ "action-translate-sandboxaction": "izvršitev dejanj, dovoljenih na peskovnik omejenim uporabnikom",
+ "translate-workflow-state-": "(izključeno)",
+ "translate-workflowstatus": "Stanje: $1",
+ "translate-workflow-set-do": "Nastavi",
+ "translate-workflow-set-doing": "Nastavljanje ...",
+ "translate-workflow-set-done": "Nastavljeno!",
+ "translate-workflow-set-error-alreadyset": "Zahtevano stanje je enako trenutnemu stanju.",
+ "translate-workflow-autocreated-summary": "Samodejno ustvarjanje strani za stanje delovnega toka $1",
+ "translate-stats-workflow": "Stanje",
+ "translate-workflowgroup-label": "Stanja delovnega toka",
+ "translate-workflowgroup-desc": "Skupina sporočil prikazuje stanja delovnih tokov prevodov.\nStanja so opredeljena v konfiguracijski spremenljivki $wgTranslateWorkflowStates.",
+ "translate-dynagroup-recent-label": "Nedavni prevodi",
+ "translate-dynagroup-recent-desc": "Skupina sporočil prikazuje vse nedavne prevode v ta jezik.\nNajuporabnejše za opravila pregleda.",
+ "translate-dynagroup-additions-label": "Nedavna dodajanja",
+ "translate-dynagroup-additions-desc": "Ta skupina sporočil kaže nova in spremenjena sporočila.",
+ "translate-dynagroup-by": "{{GENDER:$1|Prevedel|Prevedla|Prevedla oseba}} $1",
+ "translate-dynagroup-byc": "{{GENDER:$1|Prevedel|Prevedla|Prevedla oseba}} $1 ($2)",
+ "translate-dynagroup-last": "Nazadnje {{GENDER:$1|spremenil|spremenila|spremenil(-a)}} $1",
+ "translate-dynagroup-lastc": "Nazadnje {{GENDER:$1|spremenil|spremenila|spremenil(-a)}} $1 ($2)",
+ "translate-gethelp": "Pomoč",
+ "translate-msggroupselector-projects": "Skupina sporočil",
+ "translate-msggroupselector-search-placeholder": "Iskanje skupin",
+ "translate-msggroupselector-search-all": "Vsi",
+ "translate-msggroupselector-search-recent": "Nedavni",
+ "translate-msggroupselector-view-subprojects": "$1 {{PLURAL:$1|podskupina|podskupini|podskupine|podskupin}}",
+ "tux-languageselector": "Prevedi v jezik",
+ "tux-tab-all": "Vse",
+ "tux-tab-untranslated": "Neprevedeno",
+ "tux-tab-outdated": "Zastarelo",
+ "tux-tab-translated": "Prevedeno",
+ "tux-tab-unproofread": "Nepregledano",
+ "tux-edit": "Uredi",
+ "tux-status-optional": "Izbirno",
+ "tux-status-fuzzy": "Zastarelo",
+ "tux-status-proofread": "Pregledano",
+ "tux-status-translated": "Prevedeno",
+ "tux-status-saving": "Shranjevanje ...",
+ "tux-status-unsaved": "Neshranjeno",
+ "tux-editor-placeholder": "Vaš prevod",
+ "tux-editor-paste-original-button-label": "Prilepi izvorno besedilo",
+ "tux-editor-discard-changes-button-label": "Zavrzi spremembe",
+ "tux-editor-save-button-label": "Shrani prevod",
+ "tux-editor-skip-button-label": "Preskoči na naslednje",
+ "tux-editor-cancel-button-label": "Prekliči",
+ "tux-editor-confirm-button-label": "Potrdi prevod",
+ "tux-editor-shortcut-info": "Pritisnite »$1« za shranitev, »$2« za skok na naslednje sporočilo ali »$3« za druge bližnjice.",
+ "tux-editor-edit-desc": "Uredi dokumentacijo",
+ "tux-editor-add-desc": "Dodaj dokumentacijo",
+ "tux-editor-suggestions-title": "Predlogi",
+ "tux-editor-in-other-languages": "V drugih jezikih",
+ "tux-editor-need-more-help": "Potrebujete dodatno pomoč?",
+ "tux-editor-ask-help": "Zaprosite za več informacij",
+ "tux-editor-tm-match": "$1-% ujemanje",
+ "tux-warnings-more": "{{PLURAL:$1|$1 več}}",
+ "tux-warnings-hide": "skrij",
+ "tux-editor-save-failed": "Shranjevanje prevoda ni uspelo: $1",
+ "tux-editor-n-uses": "uporabljeno {{PLURAL:$1|$1-krat}}",
+ "tux-editor-message-desc-more": "Pokaži več",
+ "tux-editor-message-desc-less": "Pokaži manj",
+ "tux-editor-clear-translated": "Skrij prevedeno",
+ "tux-editor-proofreading-mode": "Preglej",
+ "tux-editor-translate-mode": "Seznam",
+ "tux-editor-proofreading-hide-own-translations": "Shrani moje prevode",
+ "tux-editor-proofreading-show-own-translations": "Prikaži moje prevode",
+ "tux-proofread-action-tooltip": "Označi kot pregledano",
+ "tux-proofread-edit-label": "Uredi",
+ "tux-editor-page-mode": "Stran",
+ "tux-editor-outdated-warning": "Prevod je morda treba posodobiti.",
+ "tux-editor-outdated-warning-diff-link": "Prikaži razlike",
+ "tux-editor-doc-editor-placeholder": "Dokumentacija sporočila",
+ "tux-editor-doc-editor-save": "Shrani dokumentacijo",
+ "tux-editor-doc-editor-cancel": "Prekliči",
+ "tux-messagetable-more-messages": "še $1 {{PLURAL:$1|sporočilo|sporočili|sporočila|sporočil}}",
+ "tux-messagetable-loading-messages": "Nalaganje {{PLURAL:$1|sporočila|sporočil}} ...",
+ "tux-message-filter-placeholder": "Filtriraj seznam",
+ "tux-message-filter-result": "Za »$2« {{PLURAL:$1|je bil najden $1 rezultat|sta bila najdena $1 rezultata|so bili najdeni $1 rezultati|je bilo najdenih $1 rezultatov}}",
+ "tux-message-filter-advanced-button": "Napredno iskanje",
+ "tux-message-filter-optional-messages-label": "Izbirna sporočila",
+ "tux-proofread-translated-by-self": "Prevedli ste sami",
+ "tux-empty-list-all": "Ta skupina sporočil je prazna",
+ "tux-empty-list-all-guide": "Izberite drugo skupino sporočil za prevajanje",
+ "tux-translate-page-no-such-group": "<strong>Navedena skupina ne obstaja.</strong> Izberite drugo skupino sporočil.",
+ "tux-empty-list-translated": "Ni prevedenih sporočil",
+ "tux-empty-list-translated-guide": "Pomagate lahko pri prevajanju",
+ "tux-empty-list-translated-action": "Prevedi",
+ "tux-empty-no-messages-to-display": "Ni sporočil za prikaz.",
+ "tux-empty-there-are-optional": "Na razpolago so izbirna sporočila, ki niso prikazana na seznamu",
+ "tux-empty-show-optional-messages": "Prikaz izbirnih sporočil",
+ "tux-empty-no-outdated-messages": "NI zastarelih sporočil",
+ "tux-empty-nothing-to-proofread": "Ničesar ni treba pregledati",
+ "tux-empty-you-can-help-providing": "Pomagate lahko z novimi prevodi",
+ "tux-empty-nothing-new-to-proofread": "Za pregled ni nič novega",
+ "tux-empty-you-can-review-already-proofread": "Pregledate lahko prevode, ki so jih pregledali že drugi.",
+ "tux-empty-list-other": "Ničesar ni treba prevesti.",
+ "tux-empty-list-other-guide": "Pomagate lahko s pregledom že obstoječih prevodov.",
+ "tux-empty-list-other-action": "Pregled prevodov",
+ "tux-empty-list-other-link": "Prikaz vseh sporočil",
+ "tux-editor-close-tooltip": "Zapri",
+ "tux-editor-expand-tooltip": "Razširi",
+ "tux-editor-collapse-tooltip": "Skrči",
+ "tux-editor-message-tools-history": "Zgodovina",
+ "tux-editor-message-tools-delete": "Izbriši",
+ "tux-editor-message-tools-translations": "Vsi prevodi",
+ "tux-editor-loading": "Nalagam ...",
+ "translate-search-more-languages-info": "Še $1 {{PLURAL:$1|jezik|jezika|jeziki|jezikov}}",
+ "translate-statsbar-tooltip": "$1% prevedenih, $2% pregledanih",
+ "translate-statsbar-tooltip-with-fuzzy": "$1% prevedenih, $2% pregledanih, $3% zastarelih",
+ "translate-search-more-groups-info": "Še $1 {{PLURAL:$1|skupina|skupini|skupine|skupin}}",
+ "translate-ulsdep-title": "Napaka pri konfiguraciji",
+ "translate-ulsdep-body": "Razširitev Translate je odvisna od [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:UniversalLanguageSelector razširitve Universal Language Selector]."
+}
diff --git a/MLEB/Translate/i18n/core/so.json b/MLEB/Translate/i18n/core/so.json
new file mode 100644
index 00000000..12cea2f3
--- /dev/null
+++ b/MLEB/Translate/i18n/core/so.json
@@ -0,0 +1,33 @@
+{
+ "@metadata": {
+ "authors": [
+ "Abshirdheere",
+ "Maax",
+ "Mimursal"
+ ]
+ },
+ "translate": "Fasir",
+ "translate-taskui-acceptqueue": "Fariimaha bis ayaan aqbalayaa",
+ "translate-taction-proofread": "Sixid",
+ "translate-taction-lstats": "Tirakoobka Luqadda",
+ "translate-taction-mstats": "Fariinta Tirakoobka Kooxda",
+ "translate-submit": "Qaado",
+ "translate-page-showing": "Soo bandhigista ka bilaabata $1 ilaa $2 of $3.",
+ "translate-page-showing-none": "Wax qoraal ah lama soo bandhigin.",
+ "translate-page-description-legend": "Macluumaad kusaabsan qaybta",
+ "translate-edit-nopermission": "Waxaad ubaahantahay ruqsad si aad u turjunto fariimaha.",
+ "translate-magic-submit": "Qaado",
+ "translate-tag-page-desc": "Turjumidda ee bogga wiki [[$2|$1]].",
+ "languagestats-summary": "Boggaan waxaa lagu soo bandhigay tirakoobka turjumaadda qayba kasta oo ka mid ah fariimaha luaqadaha.",
+ "languagestats-stats-for": "Tirakoobka turtumida luqadda $1 ($2).",
+ "translate-language-code": "Sumadda luqadda",
+ "translate-language-code-field-name": "Sumadda luqadda:",
+ "translate-suppress-complete": "Gabi ahaanba qari qaybaha qoraalada turjuman",
+ "translate-ls-noempty": "Gabi ahaanba qari qaybaha qoraalada aan la turjumin",
+ "translate-language": "Luqad:",
+ "translate-ls-submit": "Itus tirakoobka",
+ "translate-mgs-pagename": "Fariinta Tirakoobka Kooxda",
+ "translate-mgs-submit": "Itus tirakoobka",
+ "translate-mgs-column-language": "Luqada",
+ "translate-dynagroup-recent-desc": "Qaybtaan waxa ay ku tusaysaa dhamaan turjumiddii ugu dambaysay ee luqadaan.\nEe faaiidada badan leh saxidda luqada."
+}
diff --git a/MLEB/Translate/i18n/core/sq.json b/MLEB/Translate/i18n/core/sq.json
new file mode 100644
index 00000000..574e8b9c
--- /dev/null
+++ b/MLEB/Translate/i18n/core/sq.json
@@ -0,0 +1,31 @@
+{
+ "@metadata": {
+ "authors": [
+ "Dori",
+ "Puntori",
+ "GretaDoci"
+ ]
+ },
+ "translate": "Përkthime",
+ "translate-page-group": "Grupi",
+ "translate-page-language": "Gjuha",
+ "translate-page-edit": "redakto",
+ "translate-edit-contribute": "kontribute",
+ "translate-magic-module": "Moduli:",
+ "translate-magic-cm-export": "Eksporto",
+ "translate-magic-cm-original": "Origjinali",
+ "translate-magic-cm-comment": "Komenti:",
+ "translate-magic-cm-save": "Ruaje",
+ "translate-magic-cm-savefailed": "Ruajtja dështoi",
+ "translate-stats-edits": "Redaktime",
+ "translate-stats-users": "Përkthyes",
+ "translate-statsf-width": "Gjerësia në piksel:",
+ "translate-statsf-height": "Lartësia në piksel:",
+ "translate-statsf-days": "Periudha kohore në ditë:",
+ "translate-statsf-start": "Periudha kohore në ditë:",
+ "translate-statsf-scale-days": "Ditë",
+ "translate-statsf-scale-hours": "Orë",
+ "translate-statsf-count-users": "Përkthyesit aktiv",
+ "translate-statsf-submit": "Parapamja",
+ "tux-editor-shortcut-info": "Shtypni \"<span class=\"notranslate\" translate=\"asnjë\">$1</span>\" për të shpëtuar ose \"<span class=\"notranslate\" translate=\"asnjë\">$2</span>\" për të kaluar tek tjetër mesazh, ose \"<span class=\"notranslate\" translate=\"asnjë\">$3</span>\" për shortcut të tjera ."
+}
diff --git a/MLEB/Translate/i18n/core/sr-ec.json b/MLEB/Translate/i18n/core/sr-ec.json
new file mode 100644
index 00000000..cd41e5a1
--- /dev/null
+++ b/MLEB/Translate/i18n/core/sr-ec.json
@@ -0,0 +1,383 @@
+{
+ "@metadata": {
+ "authors": [
+ "Milicevic01",
+ "Rancher",
+ "Sasa Stefanovic",
+ "Жељко Тодоровић",
+ "Милан Јелисавчић",
+ "Михајло Анђелковић"
+ ]
+ },
+ "translate": "Превод",
+ "translate-desc": "[[Special:Translate|Посебна страница]] за превођење Медијавикија и више од тога",
+ "translate-taskui-view": "Прикажи све поруке",
+ "translate-taskui-untranslated": "Прикажи непреведене поруке",
+ "translate-taskui-optional": "Прикажи необавезне поруке",
+ "translate-taskui-acceptqueue": "Само поруке које могу да означим као потврђене",
+ "translate-taskui-reviewall": "Прегледање превода",
+ "translate-taskui-export-to-file": "Извези у матичном формату",
+ "translate-taskui-export-as-po": "Извези за ванмрежно превођење",
+ "translate-taction-translate": "Превод",
+ "translate-taction-proofread": "Провера",
+ "translate-taction-lstats": "Статистика језика",
+ "translate-taction-mstats": "Статистика групе",
+ "translate-taction-export": "Извоз",
+ "translate-taction-disabled": "Радња је онемогућена на овом викију.",
+ "translate-page-no-such-language": "Наведени језик није исправан.",
+ "translate-page-no-such-group": "Наведена група није исправна.",
+ "translate-page-disabled": "Преводи на овом језику у овој групи су онемогућени. Разлог:\n\n<em>$1</em>",
+ "translate-language-disabled": "Превођење на овај језик је онемогућено.",
+ "translate-page-settings-legend": "Поставке",
+ "translate-page-group": "Група:",
+ "translate-page-language": "Језик:",
+ "translate-page-limit": "Ограничење:",
+ "translate-page-limit-option": "$1 {{PLURAL:$1|порука|поруке|порука}} по страници",
+ "translate-submit": "Добави",
+ "translate-page-navigation-legend": "Навигација",
+ "translate-page-showing": "Приказ порука од $1 до $2, од $3.",
+ "translate-page-showing-all": "Приказ $1 {{PLURAL:$1|поруке|порука}}.",
+ "translate-page-showing-none": "Нема порука.",
+ "translate-page-paging-links": "[ $1 ] [ $2 ]",
+ "translate-next": "Следећа страница",
+ "translate-prev": "Претходна страница",
+ "translate-page-description-legend": "Подаци о групи",
+ "translate-page-description-hasoptional": "Ова група садржи необавезне поруке. Њих преводите само када ваш језик има посебне потребе као пресловљавање имена или неупотреба размака. $1",
+ "translate-page-description-hasoptional-open": "Прикажи необавезне поруке.",
+ "translate-page-edit": "уреди",
+ "translate-ext-url": "<hr />Адреса: $1",
+ "translate-optional": "(необавезно)",
+ "translate-ignored": "(занемарено)",
+ "translate-edit-title": "Уређивање „$1“",
+ "translate-edit-definition": "Значење поруке",
+ "translate-edit-translation": "Превод",
+ "translate-edit-contribute": "допринеси",
+ "translate-edit-no-information": "<em>Ова порука нема пратећу документацију. Ако знате где се и како користи, помозите другим преводиоцима додавањем њеног описа.</em>",
+ "translate-edit-information": "Подаци о поруци ($1)",
+ "translate-edit-in-other-languages": "Порука на другим језицима",
+ "translate-edit-committed": "Текући превод у софтверу",
+ "translate-edit-warnings": "Напомене о непотпуним преводима",
+ "translate-edit-tmsugs": "Предлози из преводилачке меморије",
+ "translate-edit-tmmatch-source": "Текст изворног превода: $1",
+ "translate-edit-tmmatch": "$1% поклапања",
+ "translate-use-suggestion": "Замени текући превод с овим предлогом.",
+ "translate-edit-nopermission": "Треба вам дозвола да преводите поруке.",
+ "translate-edit-askpermission": "Затражи дозволу",
+ "translate-magic-pagename": "Проширени превод Медијавикија",
+ "translate-magic-help": "Можете превести кодове за посебне странице, магичне речи и именске просторе.\n\nКодови за посебне странице и магичне речи могу имати више превода.\nПреводи су одвојени зарезом.\nИменски простори могу имати само један превод.\n\nПревођење именских простора за <code>$1 разговор</code> може бити компликовано.\n<code>$1</code> је замењен с називом сајта (нпр. <code>{{ns:project_talk}}</code>).\nАко на вашем језику није могуће формирати исправан израз без мењања назив сајта, молимо обавестите нас на [[Support]].\n\nМорате бити преводилац да бисте сачували измене.\nТо ћете урадити кликом на дугме „Сачувај“ које се налази испод.",
+ "translate-magic-module": "Модул:",
+ "translate-magic-submit": "Добави",
+ "translate-magic-cm-export": "Извези",
+ "translate-magic-nothing-to-export": "Нема ништа за извоз.",
+ "translate-magic-cm-to-be": "Будуће",
+ "translate-magic-cm-current": "Текуће",
+ "translate-magic-cm-original": "Изворно",
+ "translate-magic-cm-comment": "Коментар:",
+ "translate-magic-cm-save": "Сачувај",
+ "translate-magic-cm-updatedusing": "Ажурирано користећи ''[[Special:AdvancedTranslate|{{int:Translate-magic-pagename}}]]''",
+ "translate-magic-cm-savefailed": "Измене нису сачуване",
+ "translate-magic-special": "кодови за посебне странице",
+ "translate-magic-words": "магичне речи",
+ "translate-magic-namespace": "називи именских простора",
+ "translate-magic-notsaved": "Ваша измена није сачувана!",
+ "translate-magic-errors": "Исправите {{PLURAL:$1|следећу грешку|следеће грешке}} у преводима:",
+ "translate-magic-saved": "Ваше измене су сачуване.",
+ "translate-checks-parameters": "Следећи {{PLURAL:$2|параметар се не користи|параметри се не користе}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-parameters-unknown": "Следећи {{PLURAL:$2|параметар је непознат|параметри су непознати}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-balance": "Присутан је непаран број {{PLURAL:$2|заграда}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links": "{{PLURAL:$2|Следећа веза је проблематична|Следеће $2 везе су проблематичне|Следећих $2 веза је проблематично}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links-missing": "{{PLURAL:$2|Следећа веза недостаје|Следеће $2 везе недостају|Следећих $2 веза недостају}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-xhtml": "Замените {{PLURAL:$2|следећу ознаку|следеће ознаке}} с исправним:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-plural": "Значење користи <nowiki>{{PLURAL:}}</nowiki>, а превод не.",
+ "translate-checks-plural-forms": "<nowiki>{{PLURAL:}}</nowiki> је дата {{PLURAL:$1|један облик|$1 облика}} али {{PLURAL:$2|само један облик је|$2 облика је}} подржано (изузимајући облике 0= и 1=).",
+ "translate-checks-plural-dupe": "<nowiki>{{PLURAL:}}</nowiki> садржи дуплирану форму. Форму <nowiki>{{PLURAL:$1|врата|врата}}</nowiki> би требало писати као <nowiki>{{PLURAL:$1|врата}}</nowiki>.",
+ "translate-checks-pagename": "Именски простор је промењен из значења",
+ "translate-checks-format": "Овај превод нема значењску форму или има неисправну синтаксу: $1",
+ "translate-checks-escape": "Следећи излази могу бити случајни: <strong>$1</strong>",
+ "translate-checks-parametersnotequal": "Број коришћених параметара је {{PLURAL:$1|$1}}; требало би да је {{PLURAL:$2|$2}}.",
+ "translate-checks-malformed": "<nowiki>$1</nowiki> има погрешан формат.",
+ "translate-checks-fudforum-syntax": "Користи <nowiki>$1</nowiki> уместо <nowiki>$2</nowiki> у овом пројекту.",
+ "translate-pref-nonewsletter": "Не шаљи ми билтене преко е-поште",
+ "translate-pref-editassistlang": "Помоћни језици:",
+ "prefs-translate": "Могућности превода",
+ "translate-pref-editassistlang-help": "Списак језичких кодова који су одвојени зарезом.\nПревод поруке у овим језицима приказан је у току превођења.\nПодразумевани списак језика зависи од вашег језика.",
+ "translate-pref-editassistlang-bad": "Неисправан језички код на списку:\n<nowiki>$1</nowiki>.",
+ "right-translate": "уређивање путем преводилачког сучеља",
+ "right-translate-manage": "управљање групама порука",
+ "action-translate-manage": "управљање групама порука",
+ "right-translate-import": "увожење ванмрежних превода",
+ "action-translate-import": "увоз превода",
+ "right-translate-messagereview": "прегледање превода",
+ "right-translate-groupreview": "мењање стања радног тока за групе порука",
+ "translate-rc-translation-filter": "Филтрирање превода:",
+ "translate-rc-translation-filter-no": "не ради ништа",
+ "translate-rc-translation-filter-only": "прикажи само преводе",
+ "translate-rc-translation-filter-filter": "избаци преводе",
+ "translate-rc-translation-filter-site": "само измене порука сајта",
+ "translationstats": "Статистика превођења",
+ "translate-stats-edits": "Измене",
+ "translate-stats-users": "Преводиоци",
+ "translate-stats-registrations": "Учлањења",
+ "translate-stats-reviews": "Рецензије",
+ "translate-stats-reviewers": "Рецензенти",
+ "translate-statsf-intro": "Овом формом можете направити једноставне статистике.\nСве вредности имају своја горња и доња ограничења.",
+ "translate-statsf-options": "Поставке графикона",
+ "translate-statsf-width": "Ширина у пикселима:",
+ "translate-statsf-height": "Висина у пикселима:",
+ "translate-statsf-days": "Временски период у данима:",
+ "translate-statsf-start": "Почетни датум:",
+ "translate-statsf-scale": "Грануларност:",
+ "translate-statsf-scale-months": "месеци",
+ "translate-statsf-scale-weeks": "недеље",
+ "translate-statsf-scale-days": "дани",
+ "translate-statsf-scale-hours": "сати",
+ "translate-statsf-count": "Мера:",
+ "translate-statsf-count-edits": "Број измена",
+ "translate-statsf-count-users": "Активни преводиоци",
+ "translate-statsf-count-registrations": "Нови корисници",
+ "translate-statsf-count-reviews": "Рецензије превода",
+ "translate-statsf-count-reviewers": "Рецензенти",
+ "translate-statsf-language": "Списак језичких кодова одвојених зарезом:",
+ "translate-statsf-group": "Списак групних кодова одвојених зарезом:",
+ "translate-statsf-submit": "Прегледај",
+ "translate-tag-category": "Преводиве странице",
+ "translate-tag-page-desc": "Превод вики странице [[$2|$1]].",
+ "translate-sidebar-alltrans": "На другим језицима",
+ "translations": "Сви преводи",
+ "translations-summary": "Унесите назив поруке испод да бисте приказали све доступне преводе.",
+ "translate-translations-no-message": "Порука „$1“ се не може превести.",
+ "translate-translations-none": "Нема превода за „$1“.",
+ "translate-translations-count": "{{PLURAL:$1|Пронађен је један превод|Пронађена су $1 превода|Пронађено је $1 превода}}.",
+ "translate-translations-fieldset-title": "Порука",
+ "translate-translations-messagename": "Назив:",
+ "translate-translations-project": "Пројекат:",
+ "translate-translations-including-no-param": "Унесите исправан кључ поруке у параметру подстранице",
+ "translate-translations-history-short": "и",
+ "languagestats": "Статистика језика",
+ "languagestats-summary": "Ова страница приказује статистику превода за све групе порука неког језика.",
+ "languagestats-stats-for": "Статистика превода за {{LCFIRST:$1}} ($2).",
+ "languagestats-recenttranslations": "скорашњи преводи",
+ "translate-langstats-incomplete": "Неке статистике наведене на страници су непотпуне. Поново учитајте страницу да добијете потпуни преглед.",
+ "translate-langstats-expand": "прикажи",
+ "translate-langstats-collapse": "сакриј",
+ "translate-langstats-expandall": "прикажи све",
+ "translate-langstats-collapseall": "сакриј све",
+ "translate-language-code": "Језични код",
+ "translate-language-code-field-name": "Језични код:",
+ "translate-suppress-complete": "Не приказуј потпуно преведене групе порука",
+ "translate-ls-noempty": "Не приказуј потпуно непреведене групе порука",
+ "translate-language": "Језик",
+ "translate-total": "Поруке",
+ "translate-untranslated": "Непреведено",
+ "translate-percentage-complete": "Довршено",
+ "translate-percentage-fuzzy": "Застарело",
+ "translate-languagestats-overall": "Све групе порука заједно",
+ "translate-ls-submit": "Прикажи статистику",
+ "translate-ls-column-group": "Група порука",
+ "translate-mgs-pagename": "Статистика групе порука",
+ "translate-mgs-fieldset": "Подешавање приказа",
+ "translate-mgs-group": "Група порука:",
+ "translate-mgs-nocomplete": "Не приказуј језике с потпуним преводом",
+ "translate-mgs-noempty": "Не приказуј језике без икаквих превода",
+ "translate-mgs-submit": "Прикажи статистику",
+ "translate-mgs-column-language": "Језик",
+ "translate-mgs-totals": "Сви језици заједно",
+ "translate-mgs-invalid-group": "Наведена група $1 не постоји.",
+ "translate-mgs-nothing": "Нема шта да се прикаже за захтеване статистике.",
+ "supportedlanguages": "Подржани језици",
+ "supportedlanguages-summary": "Ова страница приказује списак свих подржаних језика на овом викију, заједно с именима преводиоца који раде на тим језицима.\nВеличина имена, тј. слова преводиоца зависи од тога колико је порука превео.\nБоја линије с којом је име подвучено приказује колико је преводилац активан.",
+ "supportedlanguages-colorlegend": "Легенда за боју; последњи превод извршен пре $1 дана.",
+ "supportedlanguages-portallink": "[$1] $2 – $3",
+ "supportedlanguages-portallink-nocldr": "[$1] $2",
+ "supportedlanguages-translators": "{{PLURAL:$2|Преводилац|Преводиоци}}: $1",
+ "supportedlanguages-recenttranslations": "скорашњи преводи",
+ "supportedlanguages-count": "Укупно $1 {{PLURAL:$1|језик|језика|језика}}.",
+ "supportedlanguages-activity": "$1: $2 {{PLURAL:$2|измена|измене|измена}} – последња измена пре $3 {{PLURAL:$3|дан|дана|дана}}",
+ "translate-save": "Сачувај ($1)",
+ "translate-jssti-add": "Додај на списак",
+ "managemessagegroups": "Управљање групама порука",
+ "translate-smg-notallowed": "Немате дозволу да извршите ову радњу.",
+ "translate-smg-nochanges": "Нема измена које треба обрадити.",
+ "translate-smg-submit": "Проследи измене на обраду",
+ "translate-smg-submitted": "Дефиниција поруке је ажурирана. Измене се врше у позадини.",
+ "translate-smg-left": "Садржај поруке на вики",
+ "translate-smg-right": "Долазне измене",
+ "translate-manage-import-diff": "Порука $1 | Радње: $2",
+ "translate-manage-import-new": "Нова порука $1",
+ "translate-manage-import-deleted": "Обрисана порука $1",
+ "translate-manage-action-import": "увези",
+ "translate-manage-action-conflict": "увези и означи као застарело",
+ "translate-manage-action-ignore": "занемари",
+ "translate-manage-action-fuzzy": "увези и означи као застарело",
+ "translate-manage-nochanges": "Нема измена у значењу поруке за ову групу.",
+ "translate-manage-nochanges-other": "Нема измена на овом језику.\nКористите везу испод да се вратите на страницу за опис групе.",
+ "translate-manage-inconsistent": "Пронађена је несагласност у захтеву.\nПроверите измене и покушајте поново.\nДетаљи: $1.",
+ "translate-manage-toolong": "Највеће време извршавања од $1 {{PLURAL:$1|секунде|секунде|секунди}} је прекорачено.\nПоново пошаљите образац за наставак.",
+ "translate-manage-import-summary": "Увожење новог издања из спољашњег извора",
+ "translate-manage-conflict-summary": "Увожење новог издања из спољашњег извора.\nМолимо, проверите.",
+ "translate-manage-fuzzy-summary": "Дефиниција поруке се променила",
+ "translate-manage-submit": "Изврши",
+ "translate-manage-intro-other": "Испод је списак измена превода за $1 језик.\nПрегледајте измене и изаберите радњу за сваки превод.\nАко изаберете да занемарите измене, оне ће бити поништене при следећем извозу.",
+ "translate-manage-import-ok": "Увезено: $1.",
+ "translate-manage-import-done": "Увоз завршен!",
+ "importtranslations": "Увоз превода",
+ "translate-import-from-local": "Локална датотека:",
+ "translate-import-load": "Додај",
+ "translate-import-err-dl-failed": "Добављање датотеке није успело:\n$1",
+ "translate-import-err-ul-failed": "Не могу да отпремим датотеку.",
+ "translate-import-err-invalid-title": "Унесен назив датотеке <nowiki>$1</nowiki> није исправан.",
+ "translate-import-err-no-such-file": "Датотека <nowiki>$1</nowiki> не постоји или није послата са рачунара.",
+ "translate-import-err-stale-group": "Група порука којој ова датотека припада не постоји.",
+ "translate-import-err-no-headers": "Датотека није добро формирана:\nГрупа и језик нису одређене из заглавља датотеке.",
+ "translate-import-err-warnings": "Датотека није добро формирана.\nУверите се да уређивач не уклања msgctxt поља.\nДетаљи: $1",
+ "translate-js-summary": "Опис:",
+ "translate-js-save": "Сачувај",
+ "translate-js-next": "Сачувај и отвори следеће",
+ "translate-js-nonext": "То је била последња порука на овој страници.",
+ "translate-js-skip": "Прескочи на следеће",
+ "translate-js-save-failed": "Чување није успело. Пријавите ову грешку.",
+ "translate-js-history": "Историја превода",
+ "translate-js-support": "Постави питање",
+ "translate-js-support-title": "Питајте за помоћ ако нема довољно података за ваљано превођење поруке",
+ "translate-js-support-unsaved-warning": "Имате несачуваних измена.",
+ "translate-gs-pos": "Положај",
+ "translate-gs-code": "Код",
+ "translate-gs-continent": "Континент",
+ "translate-gs-speakers": "Говорника",
+ "translate-gs-score": "Резултат",
+ "translate-gs-multiple": "Више",
+ "translate-gs-count": "Број",
+ "translate-gs-total": "Укупно",
+ "translate-gs-avgscore": "Просечан резултат",
+ "translate-documentation-language": "Помоћ при превођењу",
+ "translate-searchprofile": "Преводи",
+ "translate-searchprofile-tooltip": "Претражите све преводе",
+ "translate-search-languagefilter": "Филтрирај по језику:",
+ "translate-search-nofilter": "Без филтрирања",
+ "translate-messagereview-submit": "Означи проверено",
+ "translate-messagereview-progress": "Означавање потврђеног…",
+ "translate-messagereview-failure": "Неуспешно означавање потврђеног: $1",
+ "translate-messagereview-done": "Потврђено",
+ "translate-messagereview-reviews": "Потврђено од {{PLURAL:$1|једног корисника|$1 корисника}}",
+ "translate-messagereview-reviewswithyou": "Потврда од {{PLURAL:$1|вас|$1 корисника закључно са вама}}",
+ "api-error-invalidrevision": "Превод није пронађен",
+ "api-error-unknownmessage": "Порука није пронађена",
+ "api-error-fuzzymessage": "Превод је означен као застарео",
+ "api-error-owntranslation": "Не можете да означите сопствене преводе као потврђене",
+ "translate-messagereview-no-fuzzy": "Fuzzy преводи се не могу означити прегледаним",
+ "translate-messagereview-no-own": "Не можете да означити сопствене преводе као потврђене.",
+ "translate-messagereview-doit": "Означи овај превод као потврђен.",
+ "log-name-translationreview": "Дневник провере превода",
+ "log-description-translationreview": "Историја свих провера превода и група порука.",
+ "logentry-translationreview-message": "$1 је {{GENDER:$2|потврдио|потврдила}} превод $3",
+ "logentry-translationreview-group": "$1 {{GENDER:$2|је променио|је променила}} стање $4 превода $3 са $6 на $7",
+ "group-translate-sandboxed": "Неодобрени преводиоци",
+ "group-translate-sandboxed-member": "{{GENDER:$1|неодобрени преводилац}}",
+ "translate-workflow-state-": "(врати)",
+ "translate-workflowstatus": "Статус: $1",
+ "translate-workflow-set-do": "Постави",
+ "translate-workflow-set-doing": "Постављам…",
+ "translate-workflow-set-done": "Постављено",
+ "translate-workflow-set-error-alreadyset": "Захтевано стање је истоветно с тренутним.",
+ "translate-workflow-autocreated-summary": "Аутоматско стварање странице за радно стање $1",
+ "translate-stats-workflow": "Стање",
+ "translate-workflowgroup-label": "Радна стања",
+ "translate-workflowgroup-desc": "Ова група порука приказује радно стање превода.\nСтања су одређена с променљивом $wgTranslateWorkflowStates.",
+ "translate-dynagroup-recent-label": "Скорашњи преводи",
+ "translate-dynagroup-recent-desc": "Ова група порука приказује све скорашње преводе на овом језику.\nОво је најкорисније при провери превода.",
+ "translate-dynagroup-additions-label": "Скорашња додавања",
+ "translate-dynagroup-additions-desc": "Ова група порука приказује нове и измењене поруке.",
+ "translate-dynagroup-by": "Превод {{GENDER:$1|је направио|је направила|је направио}} $1",
+ "translate-dynagroup-byc": "Превод {{GENDER:$1|је направио|је направила|је направио}} $1 ($2)",
+ "translate-dynagroup-last": "Последњу измену {{GENDER:$1|је направио|је направила|је направио}} $1",
+ "translate-dynagroup-lastc": "Последњу измену {{GENDER:$1|је направио|је направила|је направио}} $1 ($2)",
+ "translate-gethelp": "Помоћ",
+ "translate-msggroupselector-projects": "Група порука",
+ "translate-msggroupselector-search-placeholder": "Претрага група",
+ "translate-msggroupselector-search-all": "Све",
+ "translate-msggroupselector-search-recent": "Скорашњи",
+ "translate-msggroupselector-view-subprojects": "$1 {{PLURAL:$1|подгрупа|подгрупе}}",
+ "tux-languageselector": "Превод на",
+ "tux-tab-all": "Све",
+ "tux-tab-untranslated": "Непреведено",
+ "tux-tab-outdated": "Застарело",
+ "tux-tab-translated": "Преведено",
+ "tux-tab-unproofread": "Непотврђено",
+ "tux-edit": "Уреди",
+ "tux-status-optional": "Необавезно",
+ "tux-status-fuzzy": "Застарело",
+ "tux-status-proofread": "Потврђено",
+ "tux-status-translated": "Преведено",
+ "tux-status-saving": "Чување...",
+ "tux-status-unsaved": "Несачувано",
+ "tux-editor-placeholder": "Ваш превод",
+ "tux-editor-paste-original-button-label": "Унеси изворни текст",
+ "tux-editor-discard-changes-button-label": "Одбаци измене",
+ "tux-editor-save-button-label": "Сачувај превод",
+ "tux-editor-skip-button-label": "Пређи на следећу",
+ "tux-editor-cancel-button-label": "Откажи",
+ "tux-editor-confirm-button-label": "Потврди превод",
+ "tux-editor-shortcut-info": "Притисните „$1“ како бисте сачували или „$2“ да пређите на следећу поруку или „$3“ за друге пречице.",
+ "tux-editor-edit-desc": "Уреди документацију",
+ "tux-editor-add-desc": "Додај документацију",
+ "tux-editor-suggestions-title": "Предлози",
+ "tux-editor-in-other-languages": "На другим језицима",
+ "tux-editor-need-more-help": "Потребна помоћ?",
+ "tux-editor-ask-help": "Потражите додатне информације",
+ "tux-editor-tm-match": "$1% поклапања",
+ "tux-warnings-more": "{{PLURAL:$1|још $1}}",
+ "tux-warnings-hide": "сакриј",
+ "tux-editor-save-failed": "Чување превода није успело: $1",
+ "tux-editor-n-uses": "коришћено $1 {{PLURAL:$1|пут|пута}}",
+ "tux-editor-message-desc-more": "Прикажи још",
+ "tux-editor-message-desc-less": "Прикажи мање",
+ "tux-editor-clear-translated": "Сакриј преведено",
+ "tux-editor-proofreading-mode": "Потврда",
+ "tux-editor-translate-mode": "Списак",
+ "tux-editor-proofreading-hide-own-translations": "Сакриј моје преводе",
+ "tux-editor-proofreading-show-own-translations": "Прикажи моје преводе",
+ "tux-proofread-action-tooltip": "Означи као проверено",
+ "tux-proofread-edit-label": "Уреди",
+ "tux-editor-page-mode": "Страница",
+ "tux-editor-outdated-warning": "Овај превод је можда потребно ажурирати.",
+ "tux-editor-outdated-warning-diff-link": "Прикажи разлике",
+ "tux-editor-doc-editor-placeholder": "Документација о поруци",
+ "tux-editor-doc-editor-save": "Сачувај документацију",
+ "tux-editor-doc-editor-cancel": "Откажи",
+ "tux-messagetable-more-messages": "још $1 {{PLURAL:$1|порука}}",
+ "tux-messagetable-loading-messages": "Учитавање {{PLURAL:$1|порука}}...",
+ "tux-message-filter-placeholder": "Филтрирани списак",
+ "tux-message-filter-result": "Нађено $1 {{PLURAL:$1|резултат|резултата}} за „$2“",
+ "tux-message-filter-advanced-button": "Напредна претрага",
+ "tux-message-filter-optional-messages-label": "Необавезне поруке",
+ "tux-proofread-translated-by-self": "Ваш превод",
+ "tux-empty-list-all": "Ова група порука је празна",
+ "tux-empty-list-all-guide": "Изаберите другу групу порука за превођење",
+ "tux-translate-page-no-such-group": "<strong>Назначена група не постоји.</strong> Изаберите другу групу порука.",
+ "tux-empty-list-translated": "Нема преведених порука",
+ "tux-empty-list-translated-guide": "Можете помоћи у превођењу",
+ "tux-empty-list-translated-action": "Преведи",
+ "tux-empty-no-messages-to-display": "Нема порука за приказивање.",
+ "tux-empty-there-are-optional": "Има необавезних порука које нису приказане на списку",
+ "tux-empty-show-optional-messages": "Прикажи необавезне поруке",
+ "tux-empty-no-outdated-messages": "Нема застарелих порука",
+ "tux-empty-nothing-to-proofread": "Ништа за проверу",
+ "tux-empty-you-can-help-providing": "Можете да помогнете пружањем нових превода",
+ "tux-empty-nothing-new-to-proofread": "Ништа ново за проверу",
+ "tux-empty-you-can-review-already-proofread": "Прегледај те преводе већ потврђене од стране других.",
+ "tux-empty-list-other": "Ништа за превођење",
+ "tux-empty-list-other-guide": "Можете помоћи провером постојећих превода",
+ "tux-empty-list-other-action": "Потврђени преводи",
+ "tux-empty-list-other-link": "Прикажи све поруке",
+ "tux-editor-close-tooltip": "Затвори",
+ "tux-editor-expand-tooltip": "Прошири",
+ "tux-editor-collapse-tooltip": "Скупи",
+ "tux-editor-message-tools-history": "Историја",
+ "tux-editor-message-tools-delete": "Обриши",
+ "tux-editor-message-tools-translations": "Сви преводи",
+ "tux-editor-loading": "Учитавање…",
+ "translate-search-more-languages-info": "још $1 {{PLURAL:$1|језик|језика}}",
+ "translate-statsbar-tooltip": "$1% преведено, $2% потврђено",
+ "translate-statsbar-tooltip-with-fuzzy": "$1% преведено, $2% потврђено, $3% застарело",
+ "translate-search-more-groups-info": "још $1 {{PLURAL:$1|група}}"
+}
diff --git a/MLEB/Translate/i18n/core/sr-el.json b/MLEB/Translate/i18n/core/sr-el.json
new file mode 100644
index 00000000..3de3bf07
--- /dev/null
+++ b/MLEB/Translate/i18n/core/sr-el.json
@@ -0,0 +1,375 @@
+{
+ "@metadata": {
+ "authors": [
+ "Michaello",
+ "Milicevic01",
+ "Rancher",
+ "Sociologist",
+ "Жељко Тодоровић",
+ "Edinwiki"
+ ]
+ },
+ "translate": "Prevod",
+ "translate-desc": "[[Special:Translate|Posebna stranica]] za prevođenje Medijavikija",
+ "translate-taskui-view": "Prikaži sve poruke",
+ "translate-taskui-untranslated": "Prikaži neprevedene poruke",
+ "translate-taskui-optional": "Prikaži neobavezne poruke",
+ "translate-taskui-acceptqueue": "Samo poruke koje mogu da prihvatim",
+ "translate-taskui-reviewall": "Pregledanje prevoda",
+ "translate-taskui-export-to-file": "Izvezi u matičnom formatu",
+ "translate-taskui-export-as-po": "Izvezi za vanmrežno prevođenje",
+ "translate-taction-translate": "Prevod",
+ "translate-taction-proofread": "Provera",
+ "translate-taction-lstats": "Statistika jezika",
+ "translate-taction-mstats": "Statistika grupe",
+ "translate-taction-export": "Izvoz",
+ "translate-taction-disabled": "Radnja je onemogućena na ovom vikiju.",
+ "translate-page-no-such-language": "Izabrani jezik nije ispravan.",
+ "translate-page-no-such-group": "Izabrana grupa nije ispravna.",
+ "translate-page-disabled": "Prevodi na ovom jeziku u ovoj grupi su onemogućeni. Razlog:\n\n<em>$1</em>",
+ "translate-language-disabled": "Prevođenje na ovaj jezik je onemogućeno.",
+ "translate-page-settings-legend": "Postavke",
+ "translate-page-group": "Grupa:",
+ "translate-page-language": "Jezik:",
+ "translate-page-limit": "Ograničenje:",
+ "translate-page-limit-option": "$1 {{PLURAL:$1|poruka|poruke|poruka}} po stranici",
+ "translate-submit": "Dobavi",
+ "translate-page-navigation-legend": "Navigacija",
+ "translate-page-showing": "Prikaz poruka od $1 do $2, od $3.",
+ "translate-page-showing-all": "Prikaz $1 {{PLURAL:$1|poruke|poruka}}.",
+ "translate-page-showing-none": "Nema poruka.",
+ "translate-page-paging-links": "[ $1 ] [ $2 ]",
+ "translate-next": "Sledeća stranica",
+ "translate-prev": "Prethodna stranica",
+ "translate-page-description-legend": "Podaci o grupi",
+ "translate-page-description-hasoptional": "Ova grupa sadrži neobavezne poruke. Njih prevodite samo kada vaš jezik ima posebne potrebe kao preslovljavanje imena ili neupotreba razmaka. $1",
+ "translate-page-description-hasoptional-open": "Prikaži neobavezne poruke.",
+ "translate-page-edit": "uredi",
+ "translate-ext-url": "<hr />Adresa: $1",
+ "translate-optional": "(neobavezno)",
+ "translate-ignored": "(zanemareno)",
+ "translate-edit-title": "Uređivanje „$1“",
+ "translate-edit-definition": "Značenje poruke",
+ "translate-edit-translation": "Prevod",
+ "translate-edit-contribute": "doprinesi",
+ "translate-edit-no-information": "<em>Ova poruka nema prateću dokumentaciju. Ako znate gde se i kako koristi, pomozite drugim prevodiocima dodavanjem njenog opisa.</em>",
+ "translate-edit-information": "Podaci o poruci ($1)",
+ "translate-edit-in-other-languages": "Poruka na drugim jezicima",
+ "translate-edit-committed": "Tekući prevod u softveru",
+ "translate-edit-warnings": "Napomene o nepotpunim prevodima",
+ "translate-edit-tmsugs": "Predlozi iz prevodilačke memorije",
+ "translate-edit-tmmatch-source": "Tekst izvornog prevoda: $1",
+ "translate-edit-tmmatch": "$1% poklapanja",
+ "translate-use-suggestion": "Zameni tekući prevod s ovim predlogom.",
+ "translate-edit-nopermission": "Treba vam dozvola da prevodite poruke.",
+ "translate-edit-askpermission": "Zatraži dozvolu",
+ "translate-magic-pagename": "Prošireni prevod Medijavikija",
+ "translate-magic-help": "Možete prevesti kodove za posebne stranice, magične reči i imenske prostore.\n\nKodovi za posebne stranice i magične reči mogu imati više prevoda.\nPrevodi su odvojeni zarezom.\nImenski prostori mogu imati samo jedan prevod.\n\nPrevođenje imenskih prostora za <code>$1 razgovor</code> može biti komplikovano.\n<code>$1</code> je zamenjen s nazivom sajta (npr. <code>{{ns:project_talk}}</code>).\nAko na vašem jeziku nije moguće formirati ispravan izraz bez menjanja naziv sajta, molimo obavestite nas na [[Support]].\n\nMorate biti prevodilac da biste sačuvali izmene.\nTo ćete uraditi klikom na dugme „Sačuvaj“ koje se nalazi ispod.",
+ "translate-magic-module": "Modul:",
+ "translate-magic-submit": "Dobavi",
+ "translate-magic-cm-export": "Izvezi",
+ "translate-magic-nothing-to-export": "Nema ništa za izvoz.",
+ "translate-magic-cm-to-be": "Buduće",
+ "translate-magic-cm-current": "Tekuće",
+ "translate-magic-cm-original": "Izvorno",
+ "translate-magic-cm-comment": "Komentar:",
+ "translate-magic-cm-save": "Sačuvaj",
+ "translate-magic-cm-updatedusing": "Ažurirano koristeći ''[[Special:AdvancedTranslate|{{int:Translate-magic-pagename}}]]''",
+ "translate-magic-cm-savefailed": "Izmene nisu sačuvane.",
+ "translate-magic-special": "kodovi za posebne stranice",
+ "translate-magic-words": "magične reči",
+ "translate-magic-namespace": "nazivi imenskih prostora",
+ "translate-magic-notsaved": "Vaša izmena nije sačuvana!",
+ "translate-magic-errors": "Ispravite {{PLURAL:$1|sledeću grešku|sledeće greške}} u prevodima:",
+ "translate-magic-saved": "Vaše izmene su sačuvane.",
+ "translate-checks-parameters": "Sledeći {{PLURAL:$2|parametar se ne koristi|parametri se ne koriste}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-parameters-unknown": "Sledeći {{PLURAL:$2|parametar je nepoznat|parametri su nepoznati}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-balance": "Prisutan je neparan broj {{PLURAL:$2|zagrada}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links": "{{PLURAL:$2|Sledeća veza je problematična|Sledeće $2 veze su problematične|Sledećih $2 veza je problematično}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links-missing": "{{PLURAL:$2|Sledeća veza nedostaje|Sledeće $2 veze nedostaju|Sledećih $2 veza nedostaju}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-xhtml": "Zamenite {{PLURAL:$2|sledeću oznaku|sledeće oznake}} s ispravnim:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-plural": "Značenje koristi <nowiki>{{PLURAL:}}</nowiki>, a prevod ne.",
+ "translate-checks-plural-forms": "<nowiki>{{PLURAL:}}</nowiki> je data {{PLURAL:$1|jedan oblik|$1 oblika}} ali {{PLURAL:$2|samo jedan oblik je|$2 oblika je}} podržano (izuzimajući oblike 0= i 1=).",
+ "translate-checks-pagename": "Imenski prostor je promenjen iz značenja",
+ "translate-checks-format": "Ovaj prevod nema značenjsku formu ili ima neispravnu sintaksu: $1",
+ "translate-checks-escape": "Sledeći izlazi mogu biti slučajni: <strong>$1</strong>",
+ "translate-checks-parametersnotequal": "Broj korišćenih parametara je {{PLURAL:$1|$1}}; trebalo bi da je {{PLURAL:$2|$2}}.",
+ "translate-checks-malformed": "<nowiki>$1</nowiki> ima pogrešan format.",
+ "translate-checks-fudforum-syntax": "Koristi <nowiki>$1</nowiki> umesto <nowiki>$2</nowiki> u ovom projektu.",
+ "translate-pref-nonewsletter": "Ne šalji mi biltene preko e-pošte",
+ "translate-pref-editassistlang": "Pomoćni jezici:",
+ "prefs-translate": "Mogućnosti prevoda",
+ "translate-pref-editassistlang-help": "Spisak jezičkih kodova koji su odvojeni zarezom.\nPrevod poruke u ovim jezicima prikazan je u toku prevođenja.\nPodrazumevani spisak jezika zavisi od vašeg jezika.",
+ "translate-pref-editassistlang-bad": "Neispravan jezički kod na spisku:\n<nowiki>$1</nowiki>.",
+ "right-translate": "uređivanje putem prevodilačkog sučelja",
+ "right-translate-manage": "upravljanje grupama poruka",
+ "action-translate-manage": "upravljanje grupama poruka",
+ "right-translate-import": "uvoženje vanmrežnih prevoda",
+ "action-translate-import": "uvoz prevoda",
+ "right-translate-messagereview": "pregledanje prevoda",
+ "right-translate-groupreview": "menjanje stanja radnog toka za grupe poruka",
+ "translate-rc-translation-filter": "Filtriranje prevoda:",
+ "translate-rc-translation-filter-no": "ne radi ništa",
+ "translate-rc-translation-filter-only": "prikaži samo prevode",
+ "translate-rc-translation-filter-filter": "izbaci prevode",
+ "translate-rc-translation-filter-site": "samo izmene poruka sajta",
+ "translationstats": "Statistika prevođenja",
+ "translate-stats-edits": "Izmene",
+ "translate-stats-users": "Prevodioci",
+ "translate-stats-registrations": "Učlanjenja",
+ "translate-statsf-intro": "Ovom formom možete napraviti jednostavne statistike.\nSve vrednosti imaju svoja gornja i donja ograničenja.",
+ "translate-statsf-options": "Postavke grafikona",
+ "translate-statsf-width": "Širina u pikselima:",
+ "translate-statsf-height": "Visina u pikselima:",
+ "translate-statsf-days": "Vremenski period u danima:",
+ "translate-statsf-start": "Početni datum:",
+ "translate-statsf-scale": "Granularitet:",
+ "translate-statsf-scale-months": "meseci",
+ "translate-statsf-scale-weeks": "nedelje",
+ "translate-statsf-scale-days": "dani",
+ "translate-statsf-scale-hours": "sati",
+ "translate-statsf-count": "Mera:",
+ "translate-statsf-count-edits": "Broj izmena",
+ "translate-statsf-count-users": "Aktivni prevodioci",
+ "translate-statsf-count-registrations": "Novi korisnici",
+ "translate-statsf-language": "Spisak jezičkih kodova odvojenih zarezom:",
+ "translate-statsf-group": "Spisak grupnih kodova odvojenih zarezom:",
+ "translate-statsf-submit": "Pregledaj",
+ "translate-tag-category": "Prevodive stranice",
+ "translate-tag-page-desc": "Prevod viki stranice [[$2|$1]].",
+ "translate-sidebar-alltrans": "Na drugim jezicima",
+ "translations": "Svi prevodi",
+ "translations-summary": "Unesite naziv poruke ispod da biste prikazali sve dostupne prevode.",
+ "translate-translations-no-message": "Poruka „$1“ se ne može prevesti.",
+ "translate-translations-none": "Nema prevoda za „$1“.",
+ "translate-translations-count": "{{PLURAL:$1|Pronađen je jedan prevod|Pronađena su $1 prevoda|Pronađeno je $1 prevoda}}.",
+ "translate-translations-fieldset-title": "Poruka",
+ "translate-translations-messagename": "Naziv:",
+ "translate-translations-project": "Projekat:",
+ "translate-translations-including-no-param": "Unesite ispravan ključ poruke u parametru podstranice",
+ "translate-translations-history-short": "i",
+ "languagestats": "Statistika jezika",
+ "languagestats-summary": "Ova stranica prikazuje statistiku prevoda za sve grupe poruka nekog jezika.",
+ "languagestats-stats-for": "Statistika prevoda za {{LCFIRST:$1}} ($2).",
+ "languagestats-recenttranslations": "skorašnji prevodi",
+ "translate-langstats-incomplete": "Neke statistike navedene na stranici su nepotpune. Ponovo učitajte stranicu da dobijete potpuni pregled.",
+ "translate-langstats-expand": "prikaži",
+ "translate-langstats-collapse": "sakrij",
+ "translate-langstats-expandall": "prikaži sve",
+ "translate-langstats-collapseall": "sakrij sve",
+ "translate-language-code": "Jezični kod",
+ "translate-language-code-field-name": "Jezični kod:",
+ "translate-suppress-complete": "Ne prikazuj potpuno prevedene grupe poruka",
+ "translate-ls-noempty": "Ne prikazuj potpuno neprevedene grupe poruka",
+ "translate-language": "Jezik",
+ "translate-total": "Poruka",
+ "translate-untranslated": "Neprevedeno",
+ "translate-percentage-complete": "Dovršeno",
+ "translate-percentage-fuzzy": "Zastarelo",
+ "translate-languagestats-overall": "Sve grupe poruka zajedno",
+ "translate-ls-submit": "Prikaži statistiku",
+ "translate-ls-column-group": "Grupa poruka",
+ "translate-mgs-pagename": "Statistike grupe",
+ "translate-mgs-fieldset": "Podešavanje prikaza",
+ "translate-mgs-group": "Grupa poruka:",
+ "translate-mgs-nocomplete": "Ne prikazuj jezike s potpunim prevodom",
+ "translate-mgs-noempty": "Ne prikazuj jezike bez ikakvih prevoda",
+ "translate-mgs-submit": "Prikaži statistiku",
+ "translate-mgs-column-language": "Jezik",
+ "translate-mgs-totals": "Svi jezici zajedno",
+ "translate-mgs-invalid-group": "Navedena grupa $1 ne postoji.",
+ "translate-mgs-nothing": "Nema šta da se prikaže za zahtevane statistike.",
+ "supportedlanguages": "Podržani jezici",
+ "supportedlanguages-summary": "Ova stranica prikazuje spisak svih podržanih jezika na ovom vikiju, zajedno s imenima prevodioca koji rade na tim jezicima.\nVeličina imena, tj. slova prevodioca zavisi od toga koliko je poruka preveo.\nBoja linije s kojom je ime podvučeno prikazuje koliko je prevodilac aktivan.",
+ "supportedlanguages-colorlegend": "Legenda za boju; poslednji prevod izvršen pre $1 dana.",
+ "supportedlanguages-portallink": "[$1] $2 – $3",
+ "supportedlanguages-portallink-nocldr": "[$1] $2",
+ "supportedlanguages-translators": "{{PLURAL:$2|Prevodilac|Prevodioci}}: $1",
+ "supportedlanguages-recenttranslations": "skorašnji prevodi",
+ "supportedlanguages-count": "Ukupno $1 {{PLURAL:$1|jezik|jezika|jezika}}.",
+ "supportedlanguages-activity": "$1: $2 {{PLURAL:$2|izmena|izmene|izmena}} – poslednja izmena pre $3 {{PLURAL:$3|dan|dana|dana}}",
+ "translate-save": "Sačuvaj ($1)",
+ "translate-jssti-add": "Dodaj na spisak",
+ "managemessagegroups": "Upravljanje grupama poruka",
+ "translate-smg-notallowed": "Nemate dozvolu da izvršite ovu radnju.",
+ "translate-smg-nochanges": "Nema izmena koje treba obraditi.",
+ "translate-smg-submitted": "Definicija poruke je ažurirana. Izmene se vrše u pozadini.",
+ "translate-manage-import-diff": "Poruka $1 | Radnje: $2",
+ "translate-manage-import-new": "Nova poruka $1",
+ "translate-manage-import-deleted": "Obrisana poruka $1",
+ "translate-manage-action-import": "uvezi",
+ "translate-manage-action-conflict": "uvezi i označi kao zastarelo",
+ "translate-manage-action-ignore": "zanemari",
+ "translate-manage-action-fuzzy": "uvezi i označi kao zastarelo",
+ "translate-manage-nochanges": "Nema izmena u značenju poruke za ovu grupu.",
+ "translate-manage-nochanges-other": "Nema izmena na ovom jeziku.\nKoristite vezu ispod da se vratite na stranicu za opis grupe.",
+ "translate-manage-inconsistent": "Pronađena je nesaglasnost u zahtevu.\nProverite izmene i pokušajte ponovo.\nDetalji: $1.",
+ "translate-manage-toolong": "Najveće vreme izvršavanja od $1 {{PLURAL:$1|sekunde|sekunde|sekundi}} je prekoračeno.\nPonovo pošaljite obrazac za nastavak.",
+ "translate-manage-import-summary": "Uvoženje novog izdanja iz spoljašnjeg izvora",
+ "translate-manage-conflict-summary": "Uvoženje novog izdanja iz spoljašnjeg izvora.\nMolimo, proverite.",
+ "translate-manage-fuzzy-summary": "Definicija poruke se promenila",
+ "translate-manage-submit": "Izvrši",
+ "translate-manage-intro-other": "Ispod je spisak izmena prevoda za $1 jezik.\nPregledajte izmene i izaberite radnju za svaki prevod.\nAko izaberete da zanemarite izmene, one će biti poništene pri sledećem izvozu.",
+ "translate-manage-import-ok": "Uvezeno: $1.",
+ "translate-manage-import-done": "Uvoz završen!",
+ "importtranslations": "Uvoz prevoda",
+ "translate-import-from-local": "Lokalna datoteka:",
+ "translate-import-load": "Dodaj",
+ "translate-import-err-dl-failed": "Dobavljanje datoteke nije uspelo:\n$1",
+ "translate-import-err-ul-failed": "Slanje datoteke nije uspelo.",
+ "translate-import-err-invalid-title": "Unesen naziv datoteke <nowiki>$1</nowiki> nije ispravan.",
+ "translate-import-err-no-such-file": "Datoteka <nowiki>$1</nowiki> ne postoji ili nije poslata sa računara.",
+ "translate-import-err-stale-group": "Grupa poruka kojoj ova datoteka pripada ne postoji.",
+ "translate-import-err-no-headers": "Datoteka nije dobro formirana:\nGrupa i jezik nisu određene iz zaglavlja datoteke.",
+ "translate-import-err-warnings": "Datoteka nije dobro formirana.\nUverite se da uređivač ne uklanja msgctxt polja.\nDetalji: $1",
+ "translate-js-summary": "Opis:",
+ "translate-js-save": "Sačuvaj",
+ "translate-js-next": "Sačuvaj i otvori sledeće",
+ "translate-js-nonext": "To je bila poslednja poruka na ovoj stranici.",
+ "translate-js-skip": "Preskoči na sledeće",
+ "translate-js-save-failed": "Čuvanje nije uspelo. Prijavite ovu grešku.",
+ "translate-js-history": "Istorija prevoda",
+ "translate-js-support": "Postavi pitanje",
+ "translate-js-support-title": "Pitajte za pomoć ako nema dovoljno podataka za valjano prevođenje poruke",
+ "translate-js-support-unsaved-warning": "Imate nesačuvanih izmena.",
+ "translate-gs-pos": "Položaj",
+ "translate-gs-code": "Kod",
+ "translate-gs-continent": "Kontinent",
+ "translate-gs-speakers": "Govornika",
+ "translate-gs-score": "Rezultat",
+ "translate-gs-multiple": "Više",
+ "translate-gs-count": "Broj",
+ "translate-gs-total": "Ukupno",
+ "translate-gs-avgscore": "Prosečan rezultat",
+ "translate-documentation-language": "Pomoć pri prevođenju",
+ "translate-searchprofile": "Prevodi",
+ "translate-searchprofile-tooltip": "Traženje po svim prevodima",
+ "translate-search-languagefilter": "Filtriraj po jeziku:",
+ "translate-search-nofilter": "Bez filtriranja",
+ "translate-messagereview-submit": "Označi provereno",
+ "translate-messagereview-progress": "Označavanje potvrđenog…",
+ "translate-messagereview-failure": "Neuspešno označavanje potvrđenog: $1",
+ "translate-messagereview-done": "Potvrđeno",
+ "translate-messagereview-reviews": "Potvrđeno od {{PLURAL:$1|jednog korisnika|$1 korisnika}}",
+ "translate-messagereview-reviewswithyou": "Potvrda od {{PLURAL:$1|vas|$1 korisnika zaključno sa vama}}",
+ "api-error-invalidrevision": "Prevod nije pronađen",
+ "api-error-unknownmessage": "Poruka nije pronađena",
+ "api-error-fuzzymessage": "Prevod je označen kao zastareo",
+ "api-error-owntranslation": "Ne možete da prihvatate sopstvene prevode",
+ "translate-messagereview-no-fuzzy": "Fuzzy prevodi se ne mogu označiti pregledanim",
+ "translate-messagereview-no-own": "Ne možete da prihvatate sopstvene prevode.",
+ "translate-messagereview-doit": "Prihvati ovaj prevod kao tačan i ispravan.",
+ "log-name-translationreview": "Dnevnik provere prevoda",
+ "log-description-translationreview": "Istorija svih provera prevoda i grupa poruka.",
+ "logentry-translationreview-message": "$1 je {{GENDER:$2|potvrdio|potvrdila}} prevod $3",
+ "logentry-translationreview-group": "$1 {{GENDER:$2|je promenio|je promenila}} stanje $4 prevoda $3 sa $6 na $7",
+ "group-translate-sandboxed": "Neodobreni prevodioci",
+ "group-translate-sandboxed-member": "{{GENDER:$1|neodobreni prevodilac}}",
+ "translate-workflow-state-": "(vrati)",
+ "translate-workflowstatus": "Status: $1",
+ "translate-workflow-set-do": "Postavi",
+ "translate-workflow-set-doing": "Postavljam…",
+ "translate-workflow-set-done": "Postavljeno",
+ "translate-workflow-set-error-alreadyset": "Zahtevano stanje je istovetno s trenutnim.",
+ "translate-workflow-autocreated-summary": "Automatsko stvaranje stranice za radno stanje $1",
+ "translate-stats-workflow": "Status",
+ "translate-workflowgroup-label": "Radna stanja",
+ "translate-workflowgroup-desc": "Ova grupa poruka prikazuje radno stanje prevoda.\nStanja su određena s promenljivom $wgTranslateWorkflowStates.",
+ "translate-dynagroup-recent-label": "Skorašnji prevodi",
+ "translate-dynagroup-recent-desc": "Ova grupa poruka prikazuje sve skorašnje prevode na ovom jeziku.\nOvo je najkorisnije pri proveri prevoda.",
+ "translate-dynagroup-additions-label": "Skorašnja dodavanja",
+ "translate-dynagroup-additions-desc": "Ova grupa poruka prikazuje nove i izmenjene poruke.",
+ "translate-dynagroup-by": "Prevod {{GENDER:$1|je napravio|je napravila|je napravio}} $1",
+ "translate-dynagroup-byc": "Prevod {{GENDER:$1|je napravio|je napravila|je napravio}} $1 ($2)",
+ "translate-dynagroup-last": "Poslednju izmenu {{GENDER:$1|je napravio|je napravila|je napravio}} $1",
+ "translate-dynagroup-lastc": "Poslednju izmenu {{GENDER:$1|je napravio|je napravila|je napravio}} $1 ($2)",
+ "translate-gethelp": "Pomoć",
+ "translate-msggroupselector-projects": "Grupa poruka",
+ "translate-msggroupselector-search-placeholder": "Pretraga grupa",
+ "translate-msggroupselector-search-all": "Sve",
+ "translate-msggroupselector-search-recent": "Skorašnji",
+ "translate-msggroupselector-view-subprojects": "$1 {{PLURAL:$1|podgrupa|podgrupe}}",
+ "tux-languageselector": "Prevod na",
+ "tux-tab-all": "Sve",
+ "tux-tab-untranslated": "Neprevedeno",
+ "tux-tab-outdated": "Zastarelo",
+ "tux-tab-translated": "Prevedeno",
+ "tux-tab-unproofread": "Nepotvrđeno",
+ "tux-edit": "Uredi",
+ "tux-status-optional": "Neobavezno",
+ "tux-status-fuzzy": "Zastarelo",
+ "tux-status-proofread": "Potvrđeno",
+ "tux-status-translated": "Prevedeno",
+ "tux-status-saving": "Čuvanje...",
+ "tux-status-unsaved": "Nesačuvano",
+ "tux-editor-placeholder": "Vaš prevod",
+ "tux-editor-paste-original-button-label": "Unesi izvorni tekst",
+ "tux-editor-discard-changes-button-label": "Odbaci izmene",
+ "tux-editor-save-button-label": "Sačuvaj prevod",
+ "tux-editor-skip-button-label": "Pređi na sledeću",
+ "tux-editor-cancel-button-label": "Otkaži",
+ "tux-editor-confirm-button-label": "Potvrdi prevod",
+ "tux-editor-shortcut-info": "Pritisnite „$1“ kako biste sačuvali ili „$2“ da pređite na sledeću poruku ili „$3“ za druge prečice.",
+ "tux-editor-edit-desc": "Uredi dokumentaciju",
+ "tux-editor-add-desc": "Dodaj dokumentaciju",
+ "tux-editor-suggestions-title": "Predlozi",
+ "tux-editor-in-other-languages": "Na drugim jezicima",
+ "tux-editor-need-more-help": "Potrebna pomoć?",
+ "tux-editor-ask-help": "Potražite dodatne informacije",
+ "tux-editor-tm-match": "$1% poklapanja",
+ "tux-warnings-more": "{{PLURAL:$1|još $1}}",
+ "tux-warnings-hide": "sakrij",
+ "tux-editor-save-failed": "Čuvanje prevoda nije uspelo: $1",
+ "tux-editor-n-uses": "korišćeno $1 {{PLURAL:$1|put|puta}}",
+ "tux-editor-message-desc-more": "Prikaži još",
+ "tux-editor-message-desc-less": "Prikaži manje",
+ "tux-editor-clear-translated": "Sakrij prevedeno",
+ "tux-editor-proofreading-mode": "Potvrda",
+ "tux-editor-translate-mode": "Spisak",
+ "tux-editor-proofreading-hide-own-translations": "Sakrij moje prevode",
+ "tux-editor-proofreading-show-own-translations": "Prikaži moje prevode",
+ "tux-proofread-action-tooltip": "Označi kao provereno",
+ "tux-proofread-edit-label": "Uredi",
+ "tux-editor-page-mode": "Stranica",
+ "tux-editor-outdated-warning": "Ovaj prevod je možda potrebno ažurirati.",
+ "tux-editor-outdated-warning-diff-link": "Prikaži razlike",
+ "tux-editor-doc-editor-placeholder": "Dokumentacija o poruci",
+ "tux-editor-doc-editor-save": "Sačuvaj dokumentaciju",
+ "tux-editor-doc-editor-cancel": "Otkaži",
+ "tux-messagetable-more-messages": "još $1 {{PLURAL:$1|poruka}}",
+ "tux-messagetable-loading-messages": "Učitavanje {{PLURAL:$1|poruka}}...",
+ "tux-message-filter-placeholder": "Filtrirani spisak",
+ "tux-message-filter-result": "Nađeno $1 {{PLURAL:$1|rezultat|rezultata}} za „$2“",
+ "tux-message-filter-advanced-button": "Napredna pretraga",
+ "tux-message-filter-optional-messages-label": "Neobavezne poruke",
+ "tux-proofread-translated-by-self": "Vaš prevod",
+ "tux-empty-list-all": "Ova grupa poruka je prazna",
+ "tux-empty-list-all-guide": "Izaberite drugu grupu poruka za prevođenje",
+ "tux-translate-page-no-such-group": "<strong>Naznačena grupa ne postoji.</strong> Izaberite drugu grupu poruka.",
+ "tux-empty-list-translated": "Nema prevedenih poruka",
+ "tux-empty-list-translated-guide": "Možete pomoći u prevođenju",
+ "tux-empty-list-translated-action": "Prevedi",
+ "tux-empty-no-messages-to-display": "Nema poruka za prikazivanje.",
+ "tux-empty-there-are-optional": "Ima neobaveznih poruka koje nisu prikazane na spisku",
+ "tux-empty-show-optional-messages": "Prikaži neobavezne poruke",
+ "tux-empty-no-outdated-messages": "Nema zastarelih poruka",
+ "tux-empty-nothing-to-proofread": "Ništa za proveru",
+ "tux-empty-you-can-help-providing": "Možete da pomognete pružanjem novih prevoda",
+ "tux-empty-nothing-new-to-proofread": "Ništa novo za proveru",
+ "tux-empty-you-can-review-already-proofread": "Pregledaj te prevode već potvrđene od strane drugih.",
+ "tux-empty-list-other": "Ništa za prevođenje",
+ "tux-empty-list-other-guide": "Možete pomoći proverom postojećih prevoda",
+ "tux-empty-list-other-action": "Potvrđeni prevodi",
+ "tux-empty-list-other-link": "Prikaži sve poruke",
+ "tux-editor-close-tooltip": "Zatvori",
+ "tux-editor-expand-tooltip": "Proširi",
+ "tux-editor-collapse-tooltip": "Skupi",
+ "tux-editor-message-tools-history": "Istorija",
+ "tux-editor-message-tools-delete": "Obriši",
+ "tux-editor-message-tools-translations": "Svi prevodi",
+ "tux-editor-loading": "Učitavanje...",
+ "translate-search-more-languages-info": "još $1 {{PLURAL:$1|jezik|jezika}}",
+ "translate-statsbar-tooltip": "$1% prevedeno, $2% potvrđeno",
+ "translate-statsbar-tooltip-with-fuzzy": "$1% prevedeno, $2% potvrđeno, $3% zastarelo",
+ "translate-search-more-groups-info": "još $1 {{PLURAL:$1|grupa}}"
+}
diff --git a/MLEB/Translate/i18n/core/ss.json b/MLEB/Translate/i18n/core/ss.json
new file mode 100644
index 00000000..95e25f6d
--- /dev/null
+++ b/MLEB/Translate/i18n/core/ss.json
@@ -0,0 +1,10 @@
+{
+ "@metadata": {
+ "authors": [
+ "Jatrobat",
+ "MF-Warburg",
+ "Sibande"
+ ]
+ },
+ "translate": "Humusha"
+}
diff --git a/MLEB/Translate/i18n/core/stq.json b/MLEB/Translate/i18n/core/stq.json
new file mode 100644
index 00000000..178f94b4
--- /dev/null
+++ b/MLEB/Translate/i18n/core/stq.json
@@ -0,0 +1,105 @@
+{
+ "@metadata": {
+ "authors": [
+ "Maartenvdbent",
+ "Pyt"
+ ]
+ },
+ "translate": "Uursät",
+ "translate-desc": "[[Special:Translate|Spezioalsiede]] foar ju Uursättenge fon MediaWiki-Systemättergjuchte",
+ "translate-page-no-such-language": "Ju anroate Sproake is uungultich.",
+ "translate-page-no-such-group": "Ju anroate Gruppe is uungultich.",
+ "translate-page-disabled": "Uursättengen in disse Sproake in disse Gruppe wuuden deaktivierd. Gruund:\n\n<em>$1</em>",
+ "translate-page-settings-legend": "Ienstaalengen",
+ "translate-page-group": "Gruppe",
+ "translate-page-language": "Sproake",
+ "translate-page-limit": "Limit",
+ "translate-page-limit-option": "$1 {{PLURAL:$1|Systemättergjucht|Systemättergjuchte}} pro Siede",
+ "translate-submit": "Hoal",
+ "translate-page-navigation-legend": "Navigation",
+ "translate-page-showing": "Systemättergjuchte $1 bit $2 fon mädnunner $3",
+ "translate-page-showing-all": "$1 {{PLURAL:$1|Systemättergjucht|Systemättergjuchte}}",
+ "translate-page-showing-none": "Neen Systemättergjuchte toun Anwiesen deer.",
+ "translate-next": "Naiste Siede",
+ "translate-prev": "Foarige Siede",
+ "translate-page-description-legend": "Informatione uur disse Gruppe",
+ "translate-page-edit": "beoarbaidje",
+ "translate-optional": "(optionoal)",
+ "translate-ignored": "(ignorierd)",
+ "translate-edit-definition": "Systemättergjucht in dät Originoal",
+ "translate-edit-contribute": "beoarbaidje",
+ "translate-edit-no-information": "''Disse Systemättergjucht häd noch neen Dokumentation. Wan du waast, wier un in wäkken Touhoopehong ju benutsed wäd, koast du uur Uursättere hälpe, deertruch dät du ne Dokumentation bietouföigest.''",
+ "translate-edit-information": "Information uur Systemättergjucht ($1)",
+ "translate-edit-in-other-languages": "Systemättergjucht in uur Sproaken",
+ "translate-edit-committed": "Aktuelle Uursättenge",
+ "translate-edit-warnings": "Woarskauenge uur uunfulboodige Uursättengen",
+ "translate-magic-pagename": "Ärwiederde MediaWiki-Uursättenge",
+ "translate-magic-help": "Du koast hier Aliase foar Spezioalsieden, magiske Woude un Noomensruumnoomen uursätte.\n\nSpezioalsieden un magiske Woude konnen moorere Uursättengen hääbe, jo wäide älkemoal truch n Komma (,) tränd. Noomensruumnoomen duuren bloot je een Uursättenge hääbe.\n\nIn ju Uursättenge fon n Noomensruumnoome häd <code>$1 talk</code> ne spezielle Betjuudenge. <code>$1</code> wäd truch dän Projektnoome ärsät (toun Biespil <code>{{ns:project_talk}}</code>).\nWan et in dien Sproake nit muugelk is, ne grammatikalisk korrekte Foarm deerfon tou bildjen sunner dän Projektnoome tou ferannerjen, kontaktier n Softwareäntwikler.\n\nDu moast in ju Uursätter-Gruppe weese, uum Annerengen tou spiekerjen.\nAnnerengen wäide eerste bie dän Klik ap dän Spiekerje-Knoop spiekerd.",
+ "translate-magic-module": "Modul:",
+ "translate-magic-submit": "Hoal",
+ "translate-magic-cm-export": "Export",
+ "translate-magic-cm-to-be": "Skuul weese",
+ "translate-magic-cm-current": "Aktuell",
+ "translate-magic-cm-original": "Originoal",
+ "translate-magic-cm-comment": "Kommentoar:",
+ "translate-magic-cm-save": "Spiekerje",
+ "translate-magic-cm-updatedusing": "Aktualisierd truch [[Special:AdvancedTranslate|{{int:Translate-magic-pagename}}]]",
+ "translate-magic-cm-savefailed": "Spiekerjen failsloain",
+ "translate-magic-special": "Spezioalsieden-Aliase",
+ "translate-magic-words": "Magiske Woude",
+ "translate-magic-namespace": "Noomensruum-Noomen",
+ "translate-checks-parameters": "{{PLURAL:$2|Die foulgjende Parameter wäd|Do foulgjende Parametere wäide}} nit benutsed: <strong>$1</strong>",
+ "translate-checks-parameters-unknown": "{{PLURAL:$2|Die foulgjende Parameter is|Do foulgjende Parametere sunt}} uunbekoand: <strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-balance": "{{PLURAL:$2|Ju foulgjende Klammersättenge is|Do foulgjende Klammersättengen sunt}} nit uutglieked: <strong>$1</strong>",
+ "translate-checks-links": "{{PLURAL:$2|Die foulgjende Link is|Do foulgjende Linke sunt}} problematisk: <strong>$1</strong>",
+ "translate-checks-xhtml": "Ärsät {{PLURAL:$2|dän foulgjende Tag|do foulgjende Tags}} truch do korrekte: <strong>$1</strong>",
+ "translate-checks-plural": "Dät Originoal benutset <nowiki>{{PLURAL:}}</nowiki>, man ju Uursättenge nit.",
+ "translate-checks-pagename": "Noomensruum annerd truch ju Definition",
+ "translate-checks-format": "Disse Uursättenge äntspräkt nit ju Definition of häd ne uungultige Syntax: $1",
+ "translate-checks-escape": "Do foulgjende Escape-Sequenzen konnen bie Fersjoon deer weese: <strong>$1</strong>",
+ "translate-pref-nonewsletter": "Seend mie naan E-Mail-Newsletter tou",
+ "right-translate": "Benutsenge fon dät Uursätte-Interface",
+ "translate-rc-translation-filter": "Uursättengen sieuwje:",
+ "translate-rc-translation-filter-no": "niks",
+ "translate-rc-translation-filter-only": "Wies bloot Uursättengen",
+ "translate-rc-translation-filter-filter": "Uursättengen sieuwje",
+ "translate-rc-translation-filter-site": "Bloot Annerengen an Systemättergjuchte fon ju Site",
+ "translationstats": "Uursättengsstatistike",
+ "translate-stats-edits": "Beoarbaidengen",
+ "translate-stats-users": "Uursättere",
+ "translate-statsf-intro": "Du koast eenfache Statistike mäd dissen Formular moakje. Aal Wäide hääbe unnere un buppere Limits.",
+ "translate-statsf-options": "Teekenge-Optione",
+ "translate-statsf-width": "Bratte in Pixele:",
+ "translate-statsf-height": "Hööchte in Pixele:",
+ "translate-statsf-days": "Tiedruum in Deege:",
+ "translate-statsf-start": "Tiedruum in Deege:",
+ "translate-statsf-scale": "Granularität:",
+ "translate-statsf-scale-days": "Deege",
+ "translate-statsf-scale-hours": "Uuren",
+ "translate-statsf-count": "Mäitestoab:",
+ "translate-statsf-count-edits": "Antaal Beoarbaidengen",
+ "translate-statsf-count-users": "Aktive Uursättere",
+ "translate-statsf-language": "Komma-trände Lieste fon do Sproakkoden:",
+ "translate-statsf-group": "Komma-trände Lieste fon do Gruppenkoden:",
+ "translate-statsf-submit": "Foarbekiek",
+ "translate-tag-category": "Uursätboare Sieden",
+ "translate-tag-page-desc": "Uursättenge fon ju Wikisiede [[$2|$1]].",
+ "translate-sidebar-alltrans": "In uur Sproaken",
+ "translations": "Aal Uursättengen",
+ "translations-summary": "Reek n Ättergjuchtenoome ien, uum aal ferföigboare Uursättengen antouwiesen.",
+ "translate-translations-no-message": "„$1“ is neen uursätboare Ättergjucht",
+ "translate-translations-none": "Neen Uursättengen foar „$1“ ferföichboar",
+ "translate-translations-fieldset-title": "Ättergjucht",
+ "translate-translations-messagename": "Noome:",
+ "translate-translations-including-no-param": "Reek n gultigen Ättergjuchtenoome as Unnersiedeparameter an",
+ "languagestats": "Sproakstatistike",
+ "languagestats-summary": "Disse Siede wiest Uursättengsstatistike foar aal Ättergjuchtegruppen fon ne Sproake.",
+ "translate-language-code": "Sproakkode",
+ "translate-language-code-field-name": "Sproakkode:",
+ "translate-suppress-complete": "Unnerdruk gans uursätte Ättergjuchtegruppen",
+ "translate-language": "Sproake",
+ "translate-total": "Systemättergjuchte",
+ "translate-untranslated": "Nit uursät",
+ "translate-percentage-complete": "Fulboodegaid",
+ "translate-percentage-fuzzy": "Ferallerd"
+}
diff --git a/MLEB/Translate/i18n/core/su.json b/MLEB/Translate/i18n/core/su.json
new file mode 100644
index 00000000..05564684
--- /dev/null
+++ b/MLEB/Translate/i18n/core/su.json
@@ -0,0 +1,75 @@
+{
+ "@metadata": {
+ "authors": [
+ "Irwangatot",
+ "Kandar"
+ ]
+ },
+ "translate": "Alih basakeun",
+ "translate-desc": "[[Special:Translate|Kaca husus]] keur narjamahkeun MediaWiki",
+ "translate-page-no-such-language": "Basa anu dipilih teu kaci.",
+ "translate-page-no-such-group": "Jumplukan nu dipilih teu kaci.",
+ "translate-page-disabled": "Narjamahkeun dina basa ieu geus dinon-aktifkeun. Alesana:\n\n<em>$1</em>",
+ "translate-page-settings-legend": "Pangatur",
+ "translate-page-group": "Jumplukan",
+ "translate-page-language": "Basa",
+ "translate-page-limit": "Batesan",
+ "translate-page-limit-option": "$1 {{PLURAL:$1|talatah|talatah}} per kaca",
+ "translate-submit": "Kintun",
+ "translate-page-navigation-legend": "Pituduh",
+ "translate-page-showing": "Tembongan talatah $1 nepi $2 ti $3.",
+ "translate-page-showing-all": "Tembongan $1 {{PLURAL:$1|talatah|talatah}}.",
+ "translate-page-showing-none": "Teu aya talatah nu tiasa ditembongkeun.",
+ "translate-next": "Kaca salajengna",
+ "translate-prev": "Kaca saméméhna",
+ "translate-page-description-legend": "Informasi ngeunaan grup",
+ "translate-page-edit": "édit",
+ "translate-ext-url": "<hr />Ramatloka: $1",
+ "translate-optional": "(piliheun)",
+ "translate-edit-definition": "Definisi talatah",
+ "translate-edit-contribute": "milu ngédit",
+ "translate-edit-no-information": "''Talatah ieu teu ngabogaan dokuméntasi. Lamun Anjeun nyaho di mana sarta kumaha talatah ieu dipaké, Anjeun bisa nulungan panarjamah séjén kalawan nambahan dokuméntasi pikeun talatah ieu.''",
+ "translate-edit-information": "Informasi ngeunaan talatah ieu \"$2\" ($1)",
+ "translate-edit-in-other-languages": "Talatah \"$1\" dina basa séjén",
+ "translate-edit-committed": "Parobahan anu aya di pakakas",
+ "translate-edit-warnings": "Panginget ngeunaan tarjamahan anu teu pepek",
+ "translate-edit-tmsugs": "Usulan ti mémori alihbasa",
+ "translate-edit-tmmatch": "$1% cocog",
+ "translate-magic-pagename": "Landihan tarjamahan MediaWiki",
+ "translate-magic-help": "Anjeun bisa narjamahkuen landihan pikeun kaca husus, kecap magis, ngaran kulit, sarta ngaran ''ngaranspasi''.\n\nPikeun kecap magis, Anjeun perlu nyantumkeun ogé tarjamahan basa Inggris atawa baris lumangsung kasalahan. Ogé tetep nyantumkeun item kahiji (0 atawa 1) kitu waé.\n\nLandian pikeun halaman husus sarta kecap magis bisa ngabogaan leuwih ti hiji tarjamahan anu lainna dipisahkan ku koma (,). Ngaran kulit sarta ngaranspasi ngan bisa ngabogaan hiji tarjamahan.\n\nDina tarjamahan ngaranspasi <code>$1 talk</code> diperlakukan husus. <code>$1</code> digantikeun kalawan ngaran loka (contona {{ns:project_talk}}).\nLamun basa Anjeun henteu matak bisa pikeun nyieun hiji ekspresi anu valid tanpa ngaganti ngaran loka, sumangga kontak salah saurang pengembang.\n\nAnjeun perlu jadi anggota grup panarjamah pikeun nyimpen parobahan. Parobahan moal disimpen nepi ka Anjeun ngaklik tombol simpen di handapeun.",
+ "translate-magic-module": "Modul:",
+ "translate-magic-submit": "Kintun",
+ "translate-magic-cm-export": "Ekspor",
+ "translate-magic-cm-to-be": "Jadina",
+ "translate-magic-cm-current": "Kiwari",
+ "translate-magic-cm-original": "Asli",
+ "translate-magic-cm-comment": "Kamandang:",
+ "translate-magic-cm-save": "Simpen",
+ "translate-magic-cm-updatedusing": "Dirobah ngagunakeun [[Special:AdvancedTranslate|{{int:Translate-magic-pagename}}]]",
+ "translate-magic-cm-savefailed": "Gagal nyimpen",
+ "translate-magic-special": "Landihan kaca husus",
+ "translate-magic-words": "Kecap magis",
+ "translate-magic-namespace": "Ngaran ngaranspasi",
+ "translate-magic-notsaved": "Éditan anjeun can disimpen!",
+ "translate-checks-xhtml": "Sok ganti {{PLURAL:$2|tag|tag-tag}} ieu kalawan tag anu pas:\n<strong><nowiki>$1</nowiki></strong>",
+ "right-translate": "Édit migunakeun antarmuka panarjamah",
+ "translationstats": "Statistik alihbasa",
+ "translate-statsf-width": "Lébar dina piksel:",
+ "translate-statsf-height": "Jangkung dina piksel:",
+ "translate-statsf-days": "Lilana dina poé:",
+ "translate-statsf-start": "Lilana dina poé:",
+ "translate-statsf-scale-days": "Poé",
+ "translate-statsf-scale-hours": "Jam",
+ "translate-statsf-count-edits": "Jumlah éditan",
+ "translate-translations-fieldset-title": "Talatah",
+ "translate-translations-messagename": "Ngaran:",
+ "translate-translations-project": "Proyék:",
+ "languagestats": "Statistika basa",
+ "translate-language-code": "Sandi basa",
+ "translate-language-code-field-name": "Sandi basa:",
+ "translate-language": "Basa:",
+ "translate-total": "Talatah",
+ "translate-save": "Simpen ($1)",
+ "translate-gs-code": "Sandi",
+ "translate-gs-continent": "Buana"
+}
diff --git a/MLEB/Translate/i18n/core/sv.json b/MLEB/Translate/i18n/core/sv.json
new file mode 100644
index 00000000..c55c8b08
--- /dev/null
+++ b/MLEB/Translate/i18n/core/sv.json
@@ -0,0 +1,402 @@
+{
+ "@metadata": {
+ "authors": [
+ "Ainali",
+ "Boivie",
+ "Byrial",
+ "Cybjit",
+ "Dafer45",
+ "Diupwijk",
+ "Fluff",
+ "Jopparn",
+ "Lejonel",
+ "M.M.S.",
+ "Najami",
+ "Ozp",
+ "Per",
+ "Rotsee",
+ "Sannab",
+ "Skalman",
+ "Tobulos1",
+ "WikiPhoenix",
+ "Lokal Profil"
+ ]
+ },
+ "translate": "Översätt",
+ "translate-desc": "[[Special:Translate|Specialsida]] för översättning av MediaWiki och annat",
+ "translate-taskui-view": "Visa alla meddelanden",
+ "translate-taskui-untranslated": "Visa oöversatta meddelanden",
+ "translate-taskui-optional": "Visa valfria meddelanden",
+ "translate-taskui-acceptqueue": "Endast meddelanden jag kan markera som granskade",
+ "translate-taskui-reviewall": "Granska alla översättningar",
+ "translate-taskui-export-to-file": "Exportera i ursprungligt format",
+ "translate-taskui-export-as-po": "Exportera för översättning offline",
+ "translate-taction-translate": "Översätt",
+ "translate-taction-proofread": "Granska",
+ "translate-taction-lstats": "Språkstatistik",
+ "translate-taction-mstats": "Statistik för meddelandegrupp",
+ "translate-taction-export": "Exportera",
+ "translate-taction-disabled": "Denna åtgärd är inaktiverad på denna wiki.",
+ "translate-page-no-such-language": "Det angivna språket är inte giltigt.",
+ "translate-page-no-such-group": "Den angivna gruppen är inte giltig.",
+ "translate-page-disabled": "Översättningar till det här språket i den här gruppen har stängts av.\nAnledning:\n\n<em>$1</em>",
+ "translate-language-disabled": "Översättning till detta språk är inaktiverad.",
+ "translate-page-settings-legend": "Inställningar",
+ "translate-page-group": "Grupp",
+ "translate-page-language": "Språk",
+ "translate-page-limit": "Antal",
+ "translate-page-limit-option": "$1 {{PLURAL:$1|meddelande|meddelanden}} per sida",
+ "translate-submit": "Hämta",
+ "translate-page-navigation-legend": "Navigering",
+ "translate-page-showing": "Visar meddelande $1 till $2 av $3.",
+ "translate-page-showing-all": "Visar $1 {{PLURAL:$1|meddelande|meddelanden}}.",
+ "translate-page-showing-none": "Det finns inga meddelanden att visa.",
+ "translate-next": "Nästa sida",
+ "translate-prev": "Föregående sida",
+ "translate-page-description-legend": "Information om gruppen",
+ "translate-page-description-hasoptional": "Denna meddelandegrupp innehåller valfria meddelanden.\nValfria meddelanden bör endast översättas när ditt språk har särskilda krav,\nexempelvis att inte använda blanksteg eller transkribera egennamn. $1",
+ "translate-page-description-hasoptional-open": "Visa valfria meddelanden.",
+ "translate-page-edit": "redigera",
+ "translate-ext-url": "<hr />Webbplats: $1",
+ "translate-optional": "(valfritt)",
+ "translate-ignored": "(ignorerad)",
+ "translate-edit-title": "Redigera \"$1\"",
+ "translate-edit-definition": "Definition av meddelandet",
+ "translate-edit-translation": "Översättning",
+ "translate-edit-contribute": "bidra",
+ "translate-edit-no-information": "<em>Det här meddelandet har ingen dokumentation.\nOm du vet var eller hur detta meddelande används, så kan du hjälpa andra översättare genom att skriva dokumentation för meddelandet.<em>",
+ "translate-edit-information": "Information om meddelandet ($1)",
+ "translate-edit-in-other-languages": "Meddelandet på andra språk",
+ "translate-edit-committed": "Nuvarande översättning i mjukvaran",
+ "translate-edit-warnings": "Varningar om fel i översättningen",
+ "translate-edit-tmsugs": "Förslag från översättningsminnet och maskinöversättningar",
+ "translate-edit-tmmatch-source": "Källtext för översättning: $1",
+ "translate-edit-tmmatch": "$1% överensstämmelse",
+ "translate-use-suggestion": "Ersätt aktuell översättning med detta förslag.",
+ "translate-edit-nopermission": "Du behöver översättningsbehörighet för att översätta meddelanden.",
+ "translate-edit-askpermission": "Få behörighet",
+ "translate-magic-pagename": "Utökad MediaWiki-översättning",
+ "translate-magic-help": "Du kan översätta alias för specialsidor, magiska ord och namnrymdsnamn.\n\nAlias för specialsidor och magiska ord kan ha flera översättningar.\nÖversättningar skiljs åt med ett kommatecken (,).\nNamnrymder kan endast ha en översättning.\n\nÖversättning av projektets diskussionsnamnrymd <code>$1 talk</code> kan vara komplicerat.\n<code>$1</code> ersätts med projektets webbplatsnamn (till exempel <code>{{ns:project_talk}}</code>).\nOm det inte är möjligt att skapa en giltig översättning till ditt språk utan att ändra webbplatsens namn, var god [[Support|kontakta oss]].\n\nFör att kunna spara ändringar så behöver du vara översättare.\nÄndringar sparas inte förrän du klickar på spara-knappen nedan.",
+ "translate-magic-module": "Modul:",
+ "translate-magic-submit": "Hämta",
+ "translate-magic-cm-export": "Exportera",
+ "translate-magic-nothing-to-export": "Det finns inget att exportera.",
+ "translate-magic-cm-to-be": "Att-bli",
+ "translate-magic-cm-current": "Nuvarande",
+ "translate-magic-cm-original": "Original",
+ "translate-magic-cm-comment": "Kommentar:",
+ "translate-magic-cm-save": "Spara",
+ "translate-magic-cm-updatedusing": "Uppdaterad med hjälp av [[Special:AdvancedTranslate|{{int:Translate-magic-pagename}}]]",
+ "translate-magic-cm-savefailed": "Det gick ej att spara",
+ "translate-magic-special": "Alias till specialsidor",
+ "translate-magic-words": "Magiska ord",
+ "translate-magic-namespace": "Namnrymdsnamn",
+ "translate-magic-notsaved": "Din redigering sparades inte!",
+ "translate-magic-errors": "Vänligen rätta följande {{PLURAL:$1|fel|fel}} i översättningen:",
+ "translate-magic-saved": "Dina ändringar har sparats",
+ "translate-checks-parameters": "Följande {{PLURAL:$2|parameter|parametrar}} används inte:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-parameters-unknown": "Följande {{PLURAL:$2|parameter är okänd|parametrar är okända}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-balance": "Det är ett ojämnt antal {{PLURAL:$2|paranteser|paranteser}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links": "Följande {{PLURAL:$2|länk är problematisk|länkar är problematiska}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links-missing": "Följande {{PLURAL:$2|länk|$2 länkar}} saknas:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-xhtml": "Var vänligt rätta följande {{PLURAL:$2|tagg|taggar}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-plural": "<nowiki>{{PLURAL:}}</nowiki> används i definitionen, men inte i översättningen.",
+ "translate-checks-plural-forms": "<nowiki>{{PLURAL:}}</nowiki> fick {{PLURAL:$1|en form|$1 former}} men {{PLURAL:$2|endast en form|$2 former}} stöds (exklusive formerna 0= och 1=).",
+ "translate-checks-plural-dupe": "<nowiki>{{PLURAL:}}</nowiki> har dubbla former i slutet. <nowiki>{{PLURAL:$1|får|får}}</nowiki> bör skrivas som <nowiki>{{PLURAL:$1|får}}</nowiki>.",
+ "translate-checks-pagename": "Namnrymden ändrad från definitionen",
+ "translate-checks-format": "Den här översättningen följer inte definitionen eller har ogiltig syntax: $1",
+ "translate-checks-escape": "De följande läckorna kan vara tillfälliga: <strong>$1</strong>",
+ "translate-checks-parametersnotequal": "Parameterräknaren är {{PLURAL:$1|$1}}; bör vara {{PLURAL:$2|$2}}.",
+ "translate-checks-malformed": "<nowiki>$1</nowiki> är felaktig.",
+ "translate-checks-fudforum-syntax": "Använd nowiki>$1</nowiki> istället för <nowiki>$2</nowiki> i detta projektet.",
+ "translate-pref-nonewsletter": "Sänd mig inte nyhetsbrev",
+ "translate-pref-editassistlang": "Hjälpspråk:",
+ "prefs-translate": "Översättningsalternativ",
+ "translate-pref-editassistlang-help": "Kommaseparerad lista med språkkoder.\nÖversättningar av ett meddelande på dessa språk visas när du översätter.\nStandardlistan på språk avgörs av ditt språk.",
+ "translate-pref-editassistlang-bad": "Ogiltig språkkod i listan:\n<nowiki>$1</nowiki>.",
+ "right-translate": "Redigera genom översättningsgränssnittet",
+ "right-translate-manage": "Hantera meddelandegrupper",
+ "action-translate-manage": "hantera meddelandegrupper",
+ "right-translate-import": "Importera översättningar gjorda frånkopplad",
+ "action-translate-import": "importera översättningar offline",
+ "right-translate-messagereview": "Granska översättningar",
+ "right-translate-groupreview": "Ändra arbetsflödesstatus för meddelandegrupper",
+ "translate-rc-translation-filter": "Filtrera översättningar:",
+ "translate-rc-translation-filter-no": "Gör ingenting",
+ "translate-rc-translation-filter-only": "Visa endast översättningar",
+ "translate-rc-translation-filter-filter": "Filtrera bort översättningar",
+ "translate-rc-translation-filter-site": "Endast ändringar till {{SITENAME}}-meddelanden",
+ "translationstats": "Översättningsstatistik",
+ "translate-stats-edits": "Redigeringar",
+ "translate-stats-users": "Översättare",
+ "translate-stats-registrations": "Registreringar",
+ "translate-stats-reviews": "Granskningar",
+ "translate-stats-reviewers": "Granskare",
+ "translate-statsf-intro": "Du kan generera enkel statistik genom detta formulär. Alla värden ska ha övre och nedre gränser.",
+ "translate-statsf-options": "Diagramalternativ",
+ "translate-statsf-width": "Bredd i pixlar:",
+ "translate-statsf-height": "Höjd i pixlar:",
+ "translate-statsf-days": "Tidsperiod i dagar:",
+ "translate-statsf-start": "Startdatum:",
+ "translate-statsf-scale": "Tidsupplösning:",
+ "translate-statsf-scale-months": "Månader",
+ "translate-statsf-scale-weeks": "Veckor",
+ "translate-statsf-scale-days": "Dagar",
+ "translate-statsf-scale-hours": "Timmar",
+ "translate-statsf-count": "Mål:",
+ "translate-statsf-count-edits": "Antal redigeringar",
+ "translate-statsf-count-users": "Aktiva översättare",
+ "translate-statsf-count-registrations": "Nya användare",
+ "translate-statsf-count-reviews": "Översättningsgranskningar",
+ "translate-statsf-count-reviewers": "Granskare",
+ "translate-statsf-language": "Kommaseparerad lista över språkkoder:",
+ "translate-statsf-group": "Kommaseparerad lista över gruppkoder:",
+ "translate-statsf-submit": "Förhandsgranska",
+ "translate-tag-category": "Översättningsbara sidor",
+ "translate-tag-page-desc": "Översättning av wikisidan [[$2|$1]] från $3 ($4).",
+ "translate-sidebar-alltrans": "På andra språk",
+ "translations": "Alla översättningar",
+ "translations-summary": "Ange namnet på ett meddelande nedan för att visa alla tillgängliga översättningar.",
+ "translate-translations-no-message": "\"$1\" är inte ett översättningsbart meddelande",
+ "translate-translations-none": "Det finns inga översättningar för \"$1\"",
+ "translate-translations-count": "Hittade {{PLURAL:$1|en översättning|$1 översättningar}}.",
+ "translate-translations-fieldset-title": "Meddelande",
+ "translate-translations-messagename": "Namn:",
+ "translate-translations-project": "Projekt:",
+ "translate-translations-including-no-param": "Var god specificera en giltig meddelandenyckel i undersidesparametern",
+ "translate-translations-history-short": "h",
+ "languagestats": "Språkstatistik",
+ "languagestats-summary": "Den här sidan visar översättningsstatistik för alla meddelandegrupper för ett språk.",
+ "messagegroupstats-summary": "Denna sida visar statistik för meddelandegrupper.",
+ "languagestats-stats-for": "Översättningsstatistik för $1 ($2).",
+ "languagestats-recenttranslations": "senaste översättningar",
+ "translate-langstats-incomplete": "En del av statistiken på denna sida är ofullständig. Ladda om sidan för att få mer statistik.",
+ "translate-langstats-expand": "visa",
+ "translate-langstats-collapse": "göm",
+ "translate-langstats-expandall": "visa alla",
+ "translate-langstats-collapseall": "göm alla",
+ "translate-language-code": "Språkkod",
+ "translate-language-code-field-name": "Språkkod:",
+ "translate-suppress-complete": "Visa inte meddelandegrupper som är helt översatta",
+ "translate-ls-noempty": "Visa inte meddelandegrupper som är helt oöversatta",
+ "translate-language": "Språk",
+ "translate-total": "Meddelanden",
+ "translate-untranslated": "Oöversatt",
+ "translate-percentage-complete": "Avklarat",
+ "translate-percentage-fuzzy": "Föråldrat",
+ "translate-languagestats-overall": "Alla meddelandegrupper tillsammans",
+ "translate-ls-submit": "Visa statistik",
+ "translate-ls-column-group": "Meddelandegrupp",
+ "translate-mgs-pagename": "Statistik för meddelandegrupp",
+ "translate-mgs-fieldset": "Visningsinställningar",
+ "translate-mgs-group": "Meddelandegrupp:",
+ "translate-mgs-nocomplete": "Visa inte språk som har en fullbordad översättning",
+ "translate-mgs-noempty": "Visa inte språk som inte har några översättningar",
+ "translate-mgs-submit": "Visa statistik",
+ "translate-mgs-column-language": "Språk",
+ "translate-mgs-totals": "Alla språk tillsammans",
+ "translate-mgs-invalid-group": "Den angivna gruppen $1 finns inte.",
+ "translate-mgs-nothing": "Inget att visa för begärd statistik.",
+ "supportedlanguages": "Språk som stöds",
+ "supportedlanguages-summary": "Denna sida visar en lista över alla språk som stöds av {{SITENAME}},\ntillsammans med en lista över översättare som jobbar på detta språk.\nEn översättares namn visas större, desto mer ändringar översättaren har bidragit.\nFärgen för understrykningen anger hur mycket en översättare har varit aktiv här nyligen.",
+ "supportedlanguages-colorlegend": "Färgförklaring: Senaste översättningen gjordes $1 dagar sedan.",
+ "supportedlanguages-translators": "{{PLURAL:$2|{{GENDER:$3|Översättare}}}}: $1",
+ "supportedlanguages-recenttranslations": "senaste översättningar",
+ "supportedlanguages-count": "$1 {{PLURAL:$1|språk}} totalt.",
+ "supportedlanguages-activity": "$1: $2 {{PLURAL:$2|redigering|redigeringar}} - senaste redigering $3 {{PLURAL:$3|dag|dagar}} sedan",
+ "translate-save": "Spara ($1)",
+ "translate-jssti-add": "Lägg till i listan",
+ "managemessagegroups": "Meddelandegruppshantering",
+ "translate-smg-notallowed": "Du har inte tillåtelse att utföra denna åtgärd",
+ "translate-smg-nochanges": "Det finns inga ändringar att bearbeta.",
+ "translate-smg-submit": "Skicka in ändringar för bearbetning",
+ "translate-smg-submitted": "Meddelandedefinitioner har uppdaterats. Ändringarna behandlas i bakgrunden.",
+ "translate-smg-more": "Det blir mer förändringar att bearbeta efter dessa ändringar.",
+ "translate-smg-left": "Meddelandeinnehåll i wiki",
+ "translate-smg-right": "Inkommande ändringar",
+ "translate-manage-import-diff": "Meddelande $1 | Åtgärder: $2",
+ "translate-manage-import-new": "Nytt meddelande $1",
+ "translate-manage-import-deleted": "Radera meddelande $1",
+ "translate-manage-action-import": "Importera",
+ "translate-manage-action-conflict": "Importera och märk för kontroll (\"fuzzy\")",
+ "translate-manage-action-ignore": "Ignorera",
+ "translate-manage-action-fuzzy": "Importera och märk översättningar för kontroll (\"fuzzy\")",
+ "translate-manage-nochanges": "Det finns inga förändringar i meddelande-definitionerna för den här gruppen.",
+ "translate-manage-nochanges-other": "Inga förändringar för det här språket.\nAnvänd länken nedan för att återgå till gruppdetaljerna.",
+ "translate-manage-inconsistent": "Upptäckte inkonsekvens i begäran.\nLeta efter ändringar och försök igen.\nDetaljer: $1.",
+ "translate-manage-toolong": "Den maximala behandlingstiden på $1 {{PLURAL:$1|sekund|sekunder}} har överskridits.\nVänligen aktivera formuläret igen för att fortsätta behandla det.",
+ "translate-manage-import-summary": "Importerar en ny version från extern källa",
+ "translate-manage-conflict-summary": "Importerar ny version från extern källa.\nVänligen kontrollera.",
+ "translate-manage-fuzzy-summary": "Meddelandedefinitionen har ändrats",
+ "translate-manage-submit": "Genomför",
+ "translate-manage-intro-other": "Nedan följer en lista över översättningsändringar på $1 språket.\nVar god granska ändringarna och välj en åtgärd du vill utföra för varje uppdatering.\nOm du väljer att ignorera ändringar är denna handling endast tillfällig.",
+ "translate-manage-import-ok": "Importerad: $1",
+ "translate-manage-import-done": "Import klar!",
+ "importtranslations": "Importera översättningar",
+ "translate-import-from-local": "Lokal filuppladdning:",
+ "translate-import-load": "Ladda fil",
+ "translate-import-err-dl-failed": "Kan inte hämta denna filen:\n$1",
+ "translate-import-err-ul-failed": "Filuppladdningen misslyckades",
+ "translate-import-err-invalid-title": "Det angivna filnamnet <nowiki>$1</nowiki> är inte giltigt.",
+ "translate-import-err-no-such-file": "Fil <nowiki>$1</nowiki> finns inte, eller har inte laddats upp lokalt.",
+ "translate-import-err-stale-group": "Meddelandegruppen som den här filen tillhör finns inte.",
+ "translate-import-err-no-headers": "Filen är inte en välformerad Gettext-fil i översättnings-förlängningsformat:\nDet gick inte att bestämma grupp och språk från filhuvuden.",
+ "translate-import-err-warnings": "Filen är inte välformaterad.\nKontrollera att din editor inte tar bort msgctxt fält.\nDetaljer: $1",
+ "translate-js-summary": "Sammanfattning:",
+ "translate-js-save": "Spara",
+ "translate-js-next": "Spara och öppna nästa",
+ "translate-js-nonext": "Detta var det sista meddelandet på denna sida.",
+ "translate-js-skip": "Hoppa över till nästa",
+ "translate-js-save-failed": "Misslyckades att spara. Var vänlig rapportera detta fel.",
+ "translate-js-history": "Översättningshistorik",
+ "translate-js-support": "Ställ en fråga",
+ "translate-js-support-title": "Fråga efter hjälp om det inte finns tillräckligt mycket information för att översätta detta meddelande korrekt.",
+ "translate-js-support-unsaved-warning": "Du har osparade översättningar.",
+ "translate-gs-pos": "Pos.",
+ "translate-gs-code": "Kod",
+ "translate-gs-continent": "Kontinent",
+ "translate-gs-speakers": "Talare",
+ "translate-gs-score": "Poäng",
+ "translate-gs-multiple": "Flera",
+ "translate-gs-count": "Antal",
+ "translate-gs-total": "Totalt",
+ "translate-gs-avgscore": "Genomsnittlig poäng",
+ "translate-documentation-language": "Meddelandedokumentation",
+ "translate-searchprofile": "Översättningar",
+ "translate-searchprofile-tooltip": "Sök från alla översättningar",
+ "translate-search-languagefilter": "Filtrera efter språk:",
+ "translate-search-nofilter": "Ingen filtrering",
+ "translate-messagereview-submit": "Markera som granskad",
+ "translate-messagereview-progress": "Markerar som granskad...",
+ "translate-messagereview-failure": "Misslyckades att markera som granskad: $1",
+ "translate-messagereview-done": "Granskade",
+ "translate-messagereview-reviews": "Granskad av {{PLURAL:$1|en användare|$1 användare}}",
+ "translate-messagereview-reviewswithyou": "Granskad av {{PLURAL:$1|dig|$1 användare inklusive dig}}",
+ "api-error-invalidrevision": "Översättning hittades inte",
+ "api-error-unknownmessage": "Meddelande hittades inte",
+ "api-error-fuzzymessage": "Översättning är märkt som föråldrad",
+ "api-error-owntranslation": "Du kan inte markera dina egna översättningar som granskade",
+ "translate-messagereview-no-fuzzy": "Oklara översättningar kan inte markeras som granskade.",
+ "translate-messagereview-no-own": "Du kan inte markera dina egna översättningar som granskade.",
+ "translate-messagereview-doit": "Markera denna översättning som granskad.",
+ "log-name-translationreview": "Logg för översättningsgranskningar",
+ "log-description-translationreview": "Logg över alla granskningar till översättningar och meddelandegrupper.",
+ "logentry-translationreview-message": "$1 {{GENDER:$2|granskade}} översättningen $3",
+ "logentry-translationreview-group": "$1 {{GENDER:$2|ändrade}} statusen för översättningar på $4 av $3 från $6 till $7",
+ "group-translate-sandboxed": "Icke-godkända översättare",
+ "group-translate-sandboxed-member": "{{GENDER:$1|icke-godkänd översättare}}",
+ "right-translate-sandboxmanage": "Hantera sandlådeanvändare",
+ "action-translate-sandboxmanage": "hantera sandlådeanvändare",
+ "right-translate-sandboxaction": "Utför vitlistade åtgärder för sandlådeanvändare",
+ "action-translate-sandboxaction": "utför vitlistade åtgärder för sandlådeanvändare",
+ "translate-workflow-state-": "(inte inställd)",
+ "translate-workflowstatus": "Status: $1",
+ "translate-workflow-set-do": "Ställ in",
+ "translate-workflow-set-doing": "Ställer in...",
+ "translate-workflow-set-done": "Inställd!",
+ "translate-workflow-set-error-alreadyset": "Den begärda statusen är identisk med aktuell status.",
+ "translate-workflow-autocreated-summary": "Automatisk skapelse av sida för arbetsflödesstatus $1",
+ "translate-stats-workflow": "Status",
+ "translate-workflowgroup-label": "Arbetsflödesstatus",
+ "translate-workflowgroup-desc": "Denna meddelandegrupp visar all arbetsflödesstatus för översättningar.\nAll status är definierad i konfigurationsvariabeln $wgTranslateWorkflowStates.",
+ "translate-dynagroup-recent-label": "Senaste översättningar",
+ "translate-dynagroup-recent-desc": "Denna meddelandegrupp visar alla de senaste översättningar på detta språk.\nFrämst användbar för granskningsuppgifter.",
+ "translate-dynagroup-additions-label": "Senaste tillägg",
+ "translate-dynagroup-additions-desc": "Denna meddelandegrupp visar nya och ändrade meddelanden.",
+ "translate-dynagroup-by": "Översatt av {{GENDER:$1|$1}}",
+ "translate-dynagroup-byc": "Översatt av {{GENDER:$1|$1}} ($2)",
+ "translate-dynagroup-last": "Senaste ändring av {{GENDER:$1|$1}}",
+ "translate-dynagroup-lastc": "Senaste ändring av {{GENDER:$1|$1}} ($2)",
+ "translate-gethelp": "Hjälp",
+ "translate-msggroupselector-projects": "Meddelandegrupp",
+ "translate-msggroupselector-search-placeholder": "Sök grupper",
+ "translate-msggroupselector-search-all": "Alla",
+ "translate-msggroupselector-search-recent": "Senaste",
+ "translate-msggroupselector-view-subprojects": "$1 {{PLURAL:$1|undergrupp|undergrupper}}",
+ "tux-languageselector": "Översätt till",
+ "tux-tab-all": "Alla",
+ "tux-tab-untranslated": "Oöversatta",
+ "tux-tab-outdated": "Föråldrade",
+ "tux-tab-translated": "Översatta",
+ "tux-tab-unproofread": "Ogranskade",
+ "tux-edit": "Redigera",
+ "tux-status-optional": "Valfri",
+ "tux-status-fuzzy": "Föråldrad",
+ "tux-status-proofread": "Granskad",
+ "tux-status-translated": "Översatt",
+ "tux-status-saving": "Sparar...",
+ "tux-status-unsaved": "Inte sparad",
+ "tux-editor-placeholder": "Din översättning",
+ "tux-editor-paste-original-button-label": "Klistra in källtext",
+ "tux-editor-discard-changes-button-label": "Ta bort ändringar",
+ "tux-editor-save-button-label": "Spara översättning",
+ "tux-editor-skip-button-label": "Hoppa över till nästa",
+ "tux-editor-cancel-button-label": "Avbryt",
+ "tux-editor-confirm-button-label": "Bekräfta översättning",
+ "tux-editor-shortcut-info": "Tryck \"$1\" för att spara eller \"$2\" för att hoppa till nästa meddelande eller \"$3\" för andra kortkommandon.",
+ "tux-editor-edit-desc": "Redigera dokumentation",
+ "tux-editor-add-desc": "Lägg till dokumentation",
+ "tux-editor-suggestions-title": "Förslag",
+ "tux-editor-in-other-languages": "På andra språk",
+ "tux-editor-need-more-help": "Behöver du mer hjälp?",
+ "tux-editor-ask-help": "Fråga efter mer information",
+ "tux-editor-tm-match": "$1 % likhet",
+ "tux-warnings-more": "{{PLURAL:$1|$1 till|$1 fler}}",
+ "tux-warnings-hide": "dölj",
+ "tux-editor-save-failed": "Misslyckades att spara översättningen: $1",
+ "tux-editor-n-uses": "används $1 {{PLURAL:$1|gång|gånger}}",
+ "tux-editor-message-desc-more": "Visa mer",
+ "tux-editor-message-desc-less": "Visa mindre",
+ "tux-editor-clear-translated": "Dölj översatta",
+ "tux-editor-proofreading-mode": "Granska",
+ "tux-editor-translate-mode": "Lista",
+ "tux-editor-proofreading-hide-own-translations": "Dölj dina översättningar",
+ "tux-editor-proofreading-show-own-translations": "Visa dina översättningar",
+ "tux-proofread-action-tooltip": "Markera som granskad",
+ "tux-proofread-edit-label": "Redigera",
+ "tux-editor-page-mode": "Sida",
+ "tux-editor-outdated-warning": "Denna översättning kan behöva uppdateras.",
+ "tux-editor-outdated-warning-diff-link": "Visa skillnader",
+ "tux-editor-doc-editor-placeholder": "Meddelandedokumentation",
+ "tux-editor-doc-editor-save": "Spara dokumentation",
+ "tux-editor-doc-editor-cancel": "Avbryt",
+ "tux-messagetable-more-messages": "$1 {{PLURAL:$1|till meddelande|fler meddelanden}}",
+ "tux-messagetable-loading-messages": "Läser in {{PLURAL:$1|meddelande|meddelanden}}...",
+ "tux-message-filter-placeholder": "Filtrera lista",
+ "tux-message-filter-result": "Hittade $1 {{PLURAL:$1|resultat}} för \"$2\"",
+ "tux-message-filter-advanced-button": "Avancerad sökning",
+ "tux-message-filter-optional-messages-label": "Valfria meddelanden",
+ "tux-proofread-translated-by-self": "Översatt av dig",
+ "tux-empty-list-all": "Denna meddelandegrupp är tom",
+ "tux-empty-list-all-guide": "Välj en annan meddelandegrupp att översätta",
+ "tux-translate-page-no-such-group": "<strong>Den angivna gruppen finns inte.</strong> Välj en annan meddelandegrupp.",
+ "tux-empty-list-translated": "Inga översatta meddelanden",
+ "tux-empty-list-translated-guide": "Du kan hjälpa till att översätta",
+ "tux-empty-list-translated-action": "Översätt",
+ "tux-empty-no-messages-to-display": "Inga meddelanden att visa.",
+ "tux-empty-there-are-optional": "Det finns valfria meddelanden som inte visas i listan",
+ "tux-empty-show-optional-messages": "Visa valfria meddelanden",
+ "tux-empty-no-outdated-messages": "Inga föråldrade meddelanden",
+ "tux-empty-nothing-to-proofread": "Ingenting att granska",
+ "tux-empty-you-can-help-providing": "Du kan hjälpa till att ge oss nya översättningar",
+ "tux-empty-nothing-new-to-proofread": "Ingenting nytt att granska",
+ "tux-empty-you-can-review-already-proofread": "Du kan granska översättningar som redan har granskats av andra.",
+ "tux-empty-list-other": "Ingenting att översätta",
+ "tux-empty-list-other-guide": "Du kan hjälpa till att granska befintliga översättningar",
+ "tux-empty-list-other-action": "Granska översättningar",
+ "tux-empty-list-other-link": "Visa alla meddelanden",
+ "tux-editor-close-tooltip": "Stäng",
+ "tux-editor-expand-tooltip": "Expandera",
+ "tux-editor-collapse-tooltip": "Göm",
+ "tux-editor-message-tools-history": "Historik",
+ "tux-editor-message-tools-delete": "Radera",
+ "tux-editor-message-tools-translations": "Alla översättningar",
+ "tux-editor-loading": "Läser in...",
+ "translate-search-more-languages-info": "$1 {{PLURAL:$1|till|fler}} språk",
+ "translate-statsbar-tooltip": "$1% översatt, $2% granskat",
+ "translate-statsbar-tooltip-with-fuzzy": "$1% översatt, $2% granskat, $3% föråldrat",
+ "translate-search-more-groups-info": "$1 {{PLURAL:$1|till grupp|fler grupper}}",
+ "translate-ulsdep-title": "Konfigurationsfel",
+ "translate-ulsdep-body": "Översättningstillägget är beroende av [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:UniversalLanguageSelector Universal Language Selector]-tillägget.",
+ "tux-session-expired": "Du är inte längre inloggad. Vänligen logga in i en separat flik. Alternativt, gör en kopia av osparade översättningar, logga in och gå tillbaka till denna sida."
+}
diff --git a/MLEB/Translate/i18n/core/sw.json b/MLEB/Translate/i18n/core/sw.json
new file mode 100644
index 00000000..200aa192
--- /dev/null
+++ b/MLEB/Translate/i18n/core/sw.json
@@ -0,0 +1,103 @@
+{
+ "@metadata": {
+ "authors": [
+ "Kwisha",
+ "Lloffiwr",
+ "Stephenwanjau"
+ ]
+ },
+ "translate": "Kutafsiri",
+ "translate-taskui-view": "Onyesha jumbe zote",
+ "translate-taskui-untranslated": "Onyesha jumbe ambazo hazijatafsiriwa",
+ "translate-taskui-optional": "Onyesha ujumbe wa hiari",
+ "translate-taction-translate": "Tafsiri",
+ "translate-taction-export": "Peleka",
+ "translate-language-disabled": "Tafsiri kwa lugha hii kumelemazwa",
+ "translate-page-settings-legend": "Mpangilio",
+ "translate-page-group": "Kundi",
+ "translate-page-language": "Lugha",
+ "translate-page-navigation-legend": "Urambazaji",
+ "translate-next": "Ukurasa ujao",
+ "translate-prev": "Ukurasa uliotangulia",
+ "translate-page-description-hasoptional-open": "Onyesha ujumbe wa hiari",
+ "translate-page-edit": "hariri",
+ "translate-ext-url": "<hr />Tovuti: $1",
+ "translate-optional": "(ya hiari)",
+ "translate-ignored": "(imepuuzwa)",
+ "translate-edit-title": "Hariri \"$1\"",
+ "translate-edit-translation": "Tafsiri",
+ "translate-edit-contribute": "changia",
+ "right-translate-messagereview": "Pitia hariri",
+ "translate-rc-translation-filter-no": "Usifanye kitu",
+ "translate-rc-translation-filter-only": "Onyesha hariri pekee yake",
+ "translate-stats-edits": "Hariri",
+ "translate-stats-users": "Wafasiri",
+ "translate-stats-reviews": "Mapitio",
+ "translate-stats-reviewers": "Wapitiaji",
+ "translate-statsf-width": "Upana kwa piseli:",
+ "translate-statsf-height": "Urefu kwa piseli:",
+ "translate-statsf-days": "Tarehe ya kuanza",
+ "translate-statsf-start": "Tarehe ya kuanza:",
+ "translate-statsf-scale-months": "Miezi",
+ "translate-statsf-scale-weeks": "Wiki",
+ "translate-statsf-scale-days": "Masiku",
+ "translate-statsf-scale-hours": "Masaa",
+ "translate-statsf-count": "Pima:",
+ "translate-statsf-count-edits": "Idadi ya hariri",
+ "translate-statsf-count-registrations": "Watumiaji wapya",
+ "translate-tag-category": "Kurasa zinaoweza kuharirika",
+ "translate-sidebar-alltrans": "Katika lugha nyingine",
+ "translations": "Tafsiri zote",
+ "translate-translations-fieldset-title": "Ujumbe",
+ "translate-translations-messagename": "Jina:",
+ "translate-translations-project": "Mradi:",
+ "translate-translations-history-short": "h",
+ "languagestats": "Takwimu za lugha",
+ "languagestats-summary": "Ukurasa huu unaonyesha takwimu za kutafsiri kwa ajili ya vikundi vya jumbe vya lugha fulani.",
+ "languagestats-stats-for": "Takwimu za fasiri ya $1 ($2).",
+ "languagestats-recenttranslations": "fasiri za hivi karibuni",
+ "translate-language-code": "Msimbo wa lugha",
+ "translate-language-code-field-name": "Msimbo wa lugha:",
+ "translate-suppress-complete": "Isionyeshwe vikundi vya jumbe zilizotafsiriwa zote",
+ "translate-language": "Lugha",
+ "translate-total": "Jumbe",
+ "translate-untranslated": "Haijatafsiriwa",
+ "translate-percentage-complete": "Tayari",
+ "translate-percentage-fuzzy": "Zilizopitwa na wakati",
+ "translate-ls-submit": "Onyesha takwimu",
+ "translate-ls-column-group": "Kundi la ujumbe",
+ "translate-mgs-pagename": "Takwimu za Kundi la ujumbe",
+ "translate-mgs-fieldset": "Onyesha upendeleo",
+ "translate-mgs-submit": "Onyesha takwimu",
+ "translate-mgs-column-language": "Lugha",
+ "supportedlanguages-recenttranslations": "fasiri za hivi karibuni",
+ "supportedlanguages-count": "$1 {{PLURAL:$1|language|lugha}} kwa jumla.",
+ "translate-save": "Hifadhi ($1)",
+ "translate-jssti-add": "Ongeza kwa orodha",
+ "translate-smg-right": "Mabadiliko yanayoingia",
+ "translate-manage-import-new": "Ujumbe mpya $1",
+ "translate-manage-action-ignore": "Puuza",
+ "translate-import-load": "Pakua faili",
+ "translate-js-summary": "Muhtasari:",
+ "translate-js-save": "Hifadhi",
+ "translate-js-next": "Hifadhi na ufungue inayofuatia",
+ "translate-js-nonext": "Huu ndio ulikuwa ujumbe wa mwisho katika ukurasa huu.",
+ "translate-js-skip": "Ruka hado unaofuatia",
+ "translate-js-history": "Historia ya fasiri",
+ "translate-js-support": "Uliza swali",
+ "translate-gs-code": "Msimbo",
+ "translate-gs-continent": "Bara",
+ "translate-gs-count": "Hesabu",
+ "translate-gs-total": "Jumla",
+ "translate-gs-avgscore": "Alama ya wastani",
+ "translate-searchprofile": "Tafsiri",
+ "translate-messagereview-submit": "Kubali",
+ "translate-messagereview-progress": "Inakubali...",
+ "translate-messagereview-done": "Imekubaliwa",
+ "api-error-invalidrevision": "Tafsiri haikupatikana",
+ "api-error-unknownmessage": "Ujumbe haukupatikana",
+ "translate-workflowstatus": "Hali: $1",
+ "translate-stats-workflow": "Hali",
+ "translate-dynagroup-recent-label": "fasiri za hivi karibuni",
+ "translate-gethelp": "Msaada"
+}
diff --git a/MLEB/Translate/i18n/core/szl.json b/MLEB/Translate/i18n/core/szl.json
new file mode 100644
index 00000000..81afa5a2
--- /dev/null
+++ b/MLEB/Translate/i18n/core/szl.json
@@ -0,0 +1,10 @@
+{
+ "@metadata": {
+ "authors": [
+ "Herr Kriss",
+ "Pimke"
+ ]
+ },
+ "translate-next": "Nostympno zajta",
+ "translate-prev": "Popředńo zajta"
+}
diff --git a/MLEB/Translate/i18n/core/ta.json b/MLEB/Translate/i18n/core/ta.json
new file mode 100644
index 00000000..3a5405bf
--- /dev/null
+++ b/MLEB/Translate/i18n/core/ta.json
@@ -0,0 +1,248 @@
+{
+ "@metadata": {
+ "authors": [
+ "Kanags",
+ "Karthi.dr",
+ "Logicwiki",
+ "Shanmugamp7",
+ "Surya Prakash.S.A.",
+ "TRYPPN",
+ "Trengarasu",
+ "செல்வா",
+ "மதனாஹரன்"
+ ]
+ },
+ "translate": "மொழி பெயர்ப்பு",
+ "translate-desc": "மீடியாவிக்கியையும் தாண்டிய வேறு மொழிபெயர்ப்புகளுக்கான [[Special:Translate|சிறப்புப் பக்கம்]]",
+ "translate-taskui-view": "அனைத்துத் தகவல்களையும் காண்பி",
+ "translate-taskui-untranslated": "மொழிபெயர்க்கப்படாத தகவல்களை காண்பி",
+ "translate-taskui-optional": "கட்டாயமில்லாதத் தகவல்களை காண்பி",
+ "translate-taskui-acceptqueue": "நான் ஏற்றுக்கொள்ளக்கூடிய தகவல்களை மட்டும் காண்பி",
+ "translate-taskui-reviewall": "அனைத்து மொழிபெயர்ப்புகளையும் பரிசீலனை செய்",
+ "translate-taskui-export-to-file": "சொந்த வடிவமைப்பில் ஏற்றுமதி செய்",
+ "translate-taskui-export-as-po": "இணைப்பில்லா (off-line) மொழிபெயர்ப்புக்காக ஏற்றுமதி செய்",
+ "translate-taction-translate": "மொழிபெயர்ப்பு செய்யவும்",
+ "translate-taction-proofread": "மெய்ப்புப் பார்",
+ "translate-taction-lstats": "மொழி புள்ளிவிவரம்",
+ "translate-taction-mstats": "தகவல் குழு புள்ளிவிவரங்கள்",
+ "translate-taction-export": "ஏற்றுமதி செய்",
+ "translate-taction-disabled": "இந்த செயல் இந்த விக்கியில் செயலிழக்கம் செய்யப்பட்டுள்ளது.",
+ "translate-page-no-such-language": "குறித்த மொழி செல்லுபடியற்றதாகும்.",
+ "translate-page-no-such-group": "குறித்த குழு செல்லுபடியற்றதாகும்.",
+ "translate-page-disabled": "இந்த குழுவில் இந்த மொழிக்கான மொழிபெயப்பு செயலிழக்கம் செய்யப்பட்டுள்ளது.\nகாரணம்:\n\n<em>$1</em>",
+ "translate-page-settings-legend": "அமைப்புகள்",
+ "translate-page-group": "குழு",
+ "translate-page-language": "மொழி",
+ "translate-page-limit": "அளவு",
+ "translate-page-limit-option": "பக்கத்திற்கு $1 {{PLURAL:$1|தகவல்|தகவல்கள்}}",
+ "translate-submit": "கொண்டுவா",
+ "translate-page-navigation-legend": "வழிகாணல்",
+ "translate-page-showing": "$1 என்பதிலிருந்து $2 வரையிலான $3 என்பதன் தகவல்களைக் காட்டுகிறது.",
+ "translate-page-showing-all": "$1 {{PLURAL:$1|தகவல்|தகவல்கள்}} காட்டப்படுகிறது.",
+ "translate-page-showing-none": "காட்டுவதற்கு எந்த தகவல்களும் இல்லை.",
+ "translate-page-paging-links": "[ $1 ] [ $2 ]",
+ "translate-next": "அடுத்த பக்கம்",
+ "translate-prev": "முந்திய பக்கம்",
+ "translate-page-description-legend": "குழுவைப் பற்றிய தகவல்",
+ "translate-page-description-hasoptional-open": "விருப்பத் தகவல்களை காண்பி.",
+ "translate-page-edit": "தொகு",
+ "translate-ext-url": "<hr />வலைத்தளம்: $1",
+ "translate-optional": "(விருப்பதேர்வு)",
+ "translate-ignored": "(புறக்கணிக்கப்பட்டது)",
+ "translate-edit-title": "\"$1\" -ஐ தொகுக்கவும்",
+ "translate-edit-definition": "தகவல் வரையறை",
+ "translate-edit-translation": "மொழிபெயர்ப்பு",
+ "translate-edit-contribute": "பங்களி",
+ "translate-edit-no-information": "இச் செய்திக்கு ஆவணமாக்கல் ஏதும் இல்லை.\nஇச் செய்தி எங்கே எப்படிப் பயன்படுத்தப்படும் என்பது உங்களுக்குத் தெரியுமாயின் இதற்கு ஆவணமாக்கல் சேர்ப்பதன் மூலம் மற்ற மொழிபெயர்ப்பாளர்களுக்கு நீங்கள் உதவ முடியும்.",
+ "translate-edit-information": "தகவல் ($1) ஐப் பற்றிய குறிப்பு",
+ "translate-edit-in-other-languages": "மற்ற மொழிகளில் தகவல்",
+ "translate-edit-committed": "மென்பொருளில் நடப்பு மொழிபெயர்ப்பு",
+ "translate-edit-warnings": "நிறைவுபெறாத மொழிபெயர்ப்புகளைப் பற்றிய எச்சரிக்கைகள்",
+ "translate-edit-tmsugs": "மொழிபெயர்ப்பு நினைவகத்தில் இருந்து பரிந்துரைகள்",
+ "translate-edit-tmmatch": "$1% பொருத்தம்",
+ "translate-edit-nopermission": "தகவல்களை மொழிபெயர்க்க உங்களுக்கு அனுமதி இருக்கவேண்டும்.",
+ "translate-edit-askpermission": "அனுமதி வேண்டுக",
+ "translate-magic-pagename": "நீட்சிபெற்ற மீடியாவிக்கி மொழிபெயர்ப்பு",
+ "translate-magic-submit": "கொண்டு வா",
+ "translate-magic-cm-export": "ஏற்றுமதி செய்",
+ "translate-magic-nothing-to-export": "ஏற்றுமதி செய்வதற்கு அங்கே ஏதுமில்லை.",
+ "translate-magic-cm-current": "தற்போதைய",
+ "translate-magic-cm-original": "மூலம்",
+ "translate-magic-cm-comment": "கருத்து:",
+ "translate-magic-cm-save": "பக்கத்தை சேமி",
+ "translate-magic-cm-savefailed": "சேமிப்பு தோல்வி",
+ "translate-magic-words": "மந்திர வார்த்தைகள்",
+ "translate-magic-namespace": "பெயர்வெளிப் பெயர்கள்",
+ "translate-magic-notsaved": "நீங்கள் செய்த தொகுப்பு சேமிக்கப்படவில்லை",
+ "translate-magic-saved": "உங்களது மாற்றங்கள் வெற்றிகரமாக சேமிக்கப்பட்டது.",
+ "translate-pref-nonewsletter": "எனக்கு மின்னஞ்சல் செய்திமடற்கள் அனுப்ப வேண்டாம்",
+ "translate-pref-editassistlang": "உதவும் மொழிகள்:",
+ "prefs-translate": "மொழிபெயர்ப்பு விருப்பத் தேர்வுகள்",
+ "right-translate-import": "தொடரறுமொழிபெயர்ப்புக்களை உள்ளிடு",
+ "right-translate-messagereview": "மொழிபெயர்ப்புகளை மதிப்பீடுக",
+ "translate-rc-translation-filter": "மொழிபெயர்ப்புகளை வடிகட்டு",
+ "translate-rc-translation-filter-no": "எதுவும் செய்ய வேண்டாம்",
+ "translate-rc-translation-filter-only": "மொழிபெயர்ப்புகளை மட்டும் காண்பி",
+ "translate-rc-translation-filter-filter": "மொழிபெயர்ப்புகளை வடிகட்டு",
+ "translate-rc-translation-filter-site": "மாற்றங்கள் தள தகவல்களுக்கு மட்டும்",
+ "translationstats": "மொழிபெயர்ப்பு புள்ளிவிவரம்",
+ "translate-stats-edits": "திருத்தங்கள்",
+ "translate-stats-users": "மொழிபெயர்ப்பாளர்கள்",
+ "translate-stats-registrations": "பதிவுகள்",
+ "translate-stats-reviews": "மதிப்பீடுகள்",
+ "translate-stats-reviewers": "மதிப்பீட்டாளர்கள்",
+ "translate-statsf-intro": "இந்த படிவம் மூலம் நீங்கள் எளிய புள்ளிவிவரத்தை உருவாக்கலாம்.\nஅனைத்து மதிப்புகளும் மேல் மற்றும் கீழ் வரம்புகளை கொண்டிருக்கும்.",
+ "translate-statsf-options": "வரைபட விருப்பத்தேர்வுகள்",
+ "translate-statsf-width": "படவணுக்களில் அகலம்",
+ "translate-statsf-height": "படவணுக்களில் உயரம்",
+ "translate-statsf-days": "நேர இடைவெளி நாட்கணக்கில்",
+ "translate-statsf-start": "தொடக்க தேதி:",
+ "translate-statsf-scale-months": "மாதங்கள்",
+ "translate-statsf-scale-weeks": "வாரங்கள்",
+ "translate-statsf-scale-days": "நாட்கள்",
+ "translate-statsf-scale-hours": "மணி",
+ "translate-statsf-count": "அளவை",
+ "translate-statsf-count-edits": "தொகுப்புகளின் எண்ணிக்கை:",
+ "translate-statsf-count-users": "நடப்பு மொழிபெயர்ப்பாளர்கள்",
+ "translate-statsf-count-registrations": "புதிய பயனர்கள்",
+ "translate-statsf-count-reviews": "மொழிபெயர்ப்பு மதிப்பீடுகள்",
+ "translate-statsf-count-reviewers": "மீள்பார்வையாளர்கள்",
+ "translate-statsf-language": "மொழிகளுக்கான குறியீடுகளின் காற்புள்ளிகளால் பிரித்த பட்டியல்:",
+ "translate-statsf-group": "குழுக்களுக்கான குறியீடுகளின் காற்புள்ளிகளால் பிரித்த பட்டியல்:",
+ "translate-statsf-submit": "முன்னோட்டம்",
+ "translate-tag-category": "மொழிபெயர்க்கக்கூடிய பக்கங்கள்",
+ "translate-tag-page-desc": "விக்கி பக்கம் [[$2|$1]] ன் மொழிபெயர்ப்பு",
+ "translate-sidebar-alltrans": "மற்ற மொழிகளில்",
+ "translations": "எல்லா மொழிபெயர்ப்புகளும்",
+ "translate-translations-no-message": "\"$1\" ஒரு மொழிபெயர்க்கத்தக்க செய்தியல்ல",
+ "translate-translations-none": "\"$1\" என்பதற்கு எந்தவொரு மொழிபெயர்ப்பும் இல்லை",
+ "translate-translations-count": "{{PLURAL:$1|ஒரு மொழிபெயர்ப்புக் கண்டுபிடிக்கப்பட்டது|$1 மொழிபெயர்ப்புகள் கண்டுபிடிக்கப்பட்டன}}.",
+ "translate-translations-fieldset-title": "செய்தி",
+ "translate-translations-messagename": "பெயர்:",
+ "translate-translations-project": "திட்டம்:",
+ "translate-translations-history-short": "வர",
+ "languagestats": "மொழி குறித்த புள்ளிவிவரங்கள்",
+ "languagestats-recenttranslations": "அண்மைய மொழிபெயர்ப்புகள்",
+ "translate-langstats-incomplete": "இப்பக்கத்திலுள்ள புள்ளிவிபரங்களுள் சில முழுமையாக இல்லை. இன்னும் புள்ளிவிபரங்களைப் பெறுவதற்குத் தயவு செய்து மீண்டும் ஏற்றுங்கள்.",
+ "translate-langstats-expand": "விரிவாக்குக",
+ "translate-langstats-collapse": "சுருக்குக",
+ "translate-langstats-expandall": "அனைத்தையும் விரிவாக்குக",
+ "translate-langstats-collapseall": "அனைத்தியும் சுருக்குக",
+ "translate-language-code": "மொழிக் குறியீடு",
+ "translate-language-code-field-name": "மொழிக் குறியீடு:",
+ "translate-language": "மொழி",
+ "translate-total": "தகவல்கள்",
+ "translate-untranslated": "மொழிபெயர்க்காதவை",
+ "translate-percentage-complete": "நிறைவு",
+ "translate-percentage-fuzzy": "காலாவதியானது",
+ "translate-ls-submit": "புள்ளிவிவரங்களை காண்பி",
+ "translate-ls-column-group": "தகவல் குழு",
+ "translate-mgs-pagename": "தகவல் குழு புள்ளிவிவரங்கள்",
+ "translate-mgs-fieldset": "விருப்பத்தேர்வுகளைக் காண்பி",
+ "translate-mgs-group": "தகவல் குழு:",
+ "translate-mgs-submit": "புள்ளிவிவரங்களை காண்பி",
+ "translate-mgs-column-language": "மொழி",
+ "supportedlanguages": "ஆதரிக்கப்பட்ட மொழிகள்",
+ "supportedlanguages-portallink": "[$1] $2 - $3",
+ "supportedlanguages-recenttranslations": "அண்மைய மொழிபெயர்ப்புகள்",
+ "supportedlanguages-count": "மொத்தமாக $1 {{PLURAL:$1|மொழி|மொழிகள்}}.",
+ "translate-save": "சேமி ($1)",
+ "translate-jssti-add": "பட்டியலில் சேர்",
+ "managemessagegroups": "தகவல் குழு மேலாண்மை",
+ "translate-smg-right": "உள்வரும் மாற்றங்கள்",
+ "translate-manage-import-diff": "செய்தி $1 | செயல்கள்: $2",
+ "translate-manage-import-new": "புதிய செய்தி $1",
+ "translate-manage-import-deleted": "நீக்கப்பட்ட செய்தி $1",
+ "translate-manage-action-import": "இறக்கு",
+ "translate-manage-action-conflict": "இறக்கு மற்றும் மயக்குறு",
+ "translate-manage-action-ignore": "புறக்கணி",
+ "translate-manage-action-fuzzy": "இறக்கு மற்றும் மயக்குறு மொழிபெயர்ப்புகள்",
+ "translate-manage-import-summary": "வெளி மூலத்திலிருந்து ஒரு புதிய பதிப்பை உள்ளிடுகின்றது",
+ "translate-manage-fuzzy-summary": "செய்தி வரையறை மாறியுள்ளது.",
+ "translate-manage-submit": "செயல்படுத்து",
+ "importtranslations": "மொழிபெயர்ப்புகளை இறக்கு",
+ "translate-import-from-local": "உள்ளகத்துக் கோப்பு ஏற்றல்:",
+ "translate-import-load": "கோப்பை ஏற்று",
+ "translate-import-err-dl-failed": "கொண்டுவர இயலாத கோப்பு: $1",
+ "translate-import-err-ul-failed": "கோப்பு ஏற்றம் வெற்றியடையவில்லை",
+ "translate-import-err-invalid-title": "வழங்கப்பட்ட கோப்பின் பெயர் <nowiki>$1</nowiki> தவறானது.",
+ "translate-import-err-warnings": "இந்தக் கோப்பு சரியாக அமைக்கப்பெறவில்லை. உங்கள் தொகுப்பான் msgctxt புலங்களை நீக்காமல் இருக்க உறுதிசெய்யவும். விரிகுறிப்புகள்: $1",
+ "translate-js-summary": "சுருக்கம்:",
+ "translate-js-save": "சேமி",
+ "translate-js-next": "சேமித்து அடுத்ததைத் திறக்கவும்",
+ "translate-js-nonext": "இதுவே இப்பக்கத்தில் இருந்த கடைசித் தகவல்",
+ "translate-js-skip": "அடுத்ததற்குத் தாண்டிச் செல்க",
+ "translate-js-save-failed": "சேமிப்பு ஆகவில்லை. இந்தப் பிழையை அறிவிக்கவும்",
+ "translate-js-history": "மொழிபெயர்ப்பு வரலாறு",
+ "translate-js-support": "கேள்வி கேள்",
+ "translate-js-support-title": "இந்தத் தகவலை சரியாக மொழிபெயர்க்கத் தேவையான தகவல்கள் இல்லையெனில் உதவி கேட்கவும்.",
+ "translate-js-support-unsaved-warning": "நீங்கள் சேமிக்கப்படாத மொழிபெயர்ப்புகளைக் கொண்டுள்ளீர்கள்.",
+ "translate-gs-pos": "இடம்",
+ "translate-gs-code": "குறியீடு",
+ "translate-gs-continent": "கண்டம்",
+ "translate-gs-speakers": "பேசுவோர்",
+ "translate-gs-score": "பெறுபுள்ளிகள்",
+ "translate-gs-multiple": "பல",
+ "translate-gs-count": "எண்ணிக்கை",
+ "translate-gs-total": "மொத்தம்",
+ "translate-gs-avgscore": "சராசரி பெறுபுள்ளிகள்",
+ "translate-documentation-language": "தகவல் ஆவணமாக்கல்",
+ "translate-searchprofile": "மொழிபெயர்ப்புகள்",
+ "translate-searchprofile-tooltip": "எல்லா மொழிபெயர்ப்புகளில் இருந்தும் தேடு",
+ "translate-search-languagefilter": "மொழிவாரியாக வடிகட்டு:",
+ "translate-search-nofilter": "வடிகட்டல் இல்லை",
+ "translate-messagereview-submit": "ஏற்றுக்கொள்",
+ "translate-messagereview-progress": "ஏற்றுக்கொண்டிருக்கிறது...",
+ "translate-messagereview-failure": "ஏற்றுக்கொள்வது.... தோல்வியடைந்தது:$1",
+ "translate-messagereview-done": "ஏற்றுக்கொள்ளப்பட்டது.",
+ "translate-messagereview-reviews": "{{PLURAL:$1|ஒரு பயனரால்|$1 பயனர்களால்}} ஏற்றுக்கொள்ளப்பட்டது.",
+ "translate-messagereview-reviewswithyou": "{{PLURAL:$1|உங்களால்|உங்களுடன் சேர்த்து $1 பயனர்களால்}} ஏற்றுக்கொள்ளப்பட்டது.",
+ "api-error-invalidrevision": "மொழிபெயர்ப்பு காணப்படவில்லை",
+ "api-error-unknownmessage": "தகவல் காணப்படவில்லை",
+ "api-error-fuzzymessage": "மொழிபெயர்ப்பு தெளிவில்லாததாக குறியிடப்பட்டுள்ளது",
+ "api-error-owntranslation": "உங்களது மொழிபெயர்ப்புகளை உங்களால் ஏற்றுக்கொள்ள இயலாது.",
+ "translate-messagereview-no-fuzzy": "தெளிவில்லா மொழிபெயர்ப்புகளை ஏற்றுக்கொள்ள இயலாது.",
+ "translate-messagereview-no-own": "உங்களது மொழிபெயர்ப்புகளை உங்களால் ஏற்றுக்கொள்ள இயலாது.",
+ "translate-messagereview-doit": "இந்த மொழிபெயர்ப்பை சரியான மொழிபெயர்ப்பு என ஏற்கவும்.",
+ "log-name-translationreview": "மொழிபெயர்ப்பு பரிசீலனைப் பதிகை",
+ "log-description-translationreview": "மொழிபெயர்ப்புகள் மற்றும் தகவல் குழுக்களுக்கான அனைத்து பரிசீலனைகளின் பதிகை.",
+ "logentry-translationreview-message": "மொழிபெயர்ப்பு $3, $1 பயனரால் {{GENDER:$2|ஏற்றுக்கொள்ளப்பட்டது}}",
+ "translate-workflow-state-": "(அமைக்கப்படவில்லை)",
+ "translate-workflowstatus": "நிலை:$1",
+ "translate-workflow-set-do": "அமை",
+ "translate-workflow-set-doing": "அமைக்கிறது...",
+ "translate-workflow-set-done": "அமை!",
+ "translate-workflow-set-error-alreadyset": "கோரிய நிலை தற்போதைய நிலையை போலவே உள்ளது.",
+ "translate-stats-workflow": "நிலைமை",
+ "translate-dynagroup-recent-label": "அண்மைய மொழிபெயர்ப்புகள்",
+ "translate-dynagroup-additions-label": "அண்மைய சேர்க்கைகள்",
+ "translate-dynagroup-by": "மொழிபெயர்ப்பு மேற்கொண்டவர் {{GENDER:$1| $1 }}",
+ "translate-dynagroup-byc": "மொழிபெயர்ப்பு மேற்கொண்டது {{GENDER:$1|$1}} ($2)",
+ "translate-dynagroup-last": " {{GENDER:$1| $1 }} ஆல் தற்போதைய மாற்றம்",
+ "translate-dynagroup-lastc": "{{GENDER:$1|$1}} ($2)ஆல் தற்போதைய மாற்றம் செய்யப்பட்டது.",
+ "translate-gethelp": "உதவி",
+ "translate-msggroupselector-projects": "தகவல் குழுக்கள்",
+ "translate-msggroupselector-search-placeholder": "தேடல் குழுக்கள்",
+ "translate-msggroupselector-search-all": "அனைத்தும்",
+ "translate-msggroupselector-search-recent": "அண்மைய",
+ "translate-msggroupselector-view-subprojects": "$1 {{PLURAL:$1|துணைக்குழு|துணைக்குழுக்கள்}}",
+ "tux-languageselector": "மொழி",
+ "tux-tab-all": "அனைத்தும்",
+ "tux-tab-untranslated": "மொழிபெயர்க்காதவை",
+ "tux-tab-outdated": "காலாவதியானது",
+ "tux-tab-translated": "மொழிபெயர்ப்பு செய்யப்பட்டது",
+ "tux-edit": "தொகு",
+ "tux-status-optional": "விருப்பத்தேர்வு",
+ "tux-status-fuzzy": "காலாவதியானது",
+ "tux-status-proofread": "மெய்ப்புப் பார்",
+ "tux-status-translated": "மொழிபெயர்ப்பு செய்யப்பட்டது",
+ "tux-status-unsaved": "சேமிக்கப்படாதது",
+ "tux-editor-placeholder": "உங்கள் மொழிபெயர்ப்பு",
+ "tux-editor-save-button-label": "மொழிபெயர்ப்பை சேமிக்கவும்",
+ "tux-editor-skip-button-label": "அடுத்ததற்குத் தாண்டிச் செல்க",
+ "tux-editor-edit-desc": "விளக்கத்தை தொகுக்கவும்",
+ "tux-editor-suggestions-title": "பரிந்துரைகள்",
+ "tux-editor-in-other-languages": "மற்ற மொழிகளில்",
+ "tux-editor-need-more-help": "மேலதிக உதவி தேவையா?",
+ "tux-editor-ask-help": "மேலதிக தகவல்களை கேட்கவும்"
+}
diff --git a/MLEB/Translate/i18n/core/tcy.json b/MLEB/Translate/i18n/core/tcy.json
new file mode 100644
index 00000000..ed96017a
--- /dev/null
+++ b/MLEB/Translate/i18n/core/tcy.json
@@ -0,0 +1,14 @@
+{
+ "@metadata": {
+ "authors": [
+ "VASANTH S.N."
+ ]
+ },
+ "translate": "ಭಾಷಾಂತರ ಮಲ್ಪುಲೆ",
+ "translate-page-group": "ಗುಂಪು",
+ "translate-page-language": "ಭಾಸೆ",
+ "translate-page-limit": "ಮಿತಿ",
+ "translate-next": "ಬೊಕ್ಕದ ಪುಟೊ",
+ "translate-prev": "ದುಂಬುದ ಪುಟೊ",
+ "translate-magic-module": "ಘಟಕ:"
+}
diff --git a/MLEB/Translate/i18n/core/te.json b/MLEB/Translate/i18n/core/te.json
new file mode 100644
index 00000000..739e4929
--- /dev/null
+++ b/MLEB/Translate/i18n/core/te.json
@@ -0,0 +1,256 @@
+{
+ "@metadata": {
+ "authors": [
+ "Chaduvari",
+ "Kiranmayee",
+ "Shirayuki",
+ "Veeven",
+ "Visdaviva"
+ ]
+ },
+ "translate": "అనువదించు",
+ "translate-desc": "మీడియావికీ మరియు ఇతరాలను అనువదించడానికి [[Special:Translate|ప్రత్యేక పుట]]",
+ "translate-taskui-view": "అన్ని సందేశాలను చూపించు",
+ "translate-taskui-untranslated": "అనువాదంకాని సందేశాలను చూపించు",
+ "translate-taskui-optional": "ఐచ్చిక సందేశాలను చూపించు",
+ "translate-taskui-acceptqueue": "నేను సమీక్షించగల సందేశాలు మాత్రమే",
+ "translate-taskui-reviewall": "అన్ని అనువాదాలు సమీక్షించండి",
+ "translate-taskui-export-to-file": "స్థానిక ఫార్మాట్లోకి ఎగుమతి చేయండి",
+ "translate-taskui-export-as-po": "ఆఫ్ లైన్ అనువాదానికై ఎగుమతి",
+ "translate-taction-translate": "అనువాదం",
+ "translate-taction-proofread": "సమీక్ష",
+ "translate-taction-lstats": "భాష గణాంకాలు",
+ "translate-taction-mstats": "సందేశ సమూహ గణాంకాలు",
+ "translate-taction-export": "ఎగుమతి",
+ "translate-taction-disabled": "ఈవికీలో ఈ చర్యను అచేతనం చేసారు.",
+ "translate-page-no-such-language": "ఎంచుకున్న భాష సరైనది కాదు.",
+ "translate-page-no-such-group": "ఇచ్చిన సమూహం సరైనది కాదు.",
+ "translate-page-disabled": "ఈ భాషకి ఈ సమూహంలో అనువాదాలని అచేతనం చేసారు.\nకారణం:\n\n<em>$1</em>",
+ "translate-language-disabled": "ఈ భాషలోకి అనువాదం నిలిపివేయబడింది",
+ "translate-page-settings-legend": "అమరికలు",
+ "translate-page-group": "సమూహం",
+ "translate-page-language": "భాష",
+ "translate-page-limit": "పరిమితి",
+ "translate-page-limit-option": "పుటకి $1 {{PLURAL:$1|సందేశం|సందేశాలు}}",
+ "translate-submit": "తీసుకురా",
+ "translate-page-navigation-legend": "మార్గదర్శకం",
+ "translate-page-showing": "మొత్తం $3 సందేశాల్లో $1 నుండి $2 వరకు చూపిస్తున్నాం.",
+ "translate-page-showing-all": "$1 {{PLURAL:$1|సందేశాన్ని|సందేశాలను}} చూపిస్తున్నాం.",
+ "translate-page-showing-none": "ఇంక సందేశాలేమీ లేవు.",
+ "translate-next": "తర్వాతి పుట",
+ "translate-prev": "క్రితం పుట",
+ "translate-page-description-legend": "ఈ సమూహం గురించిన సమాచారం",
+ "translate-page-description-hasoptional-open": "ఐచ్చిక సందేశాలను చూపించు.",
+ "translate-page-edit": "మార్చు",
+ "translate-ext-url": "<hr />జాలగూడు: $1",
+ "translate-optional": "(ఐచ్ఛికం)",
+ "translate-ignored": "(ఉపేక్షించినది)",
+ "translate-edit-title": "\"$1\"ని మార్చండి",
+ "translate-edit-definition": "సందేశ నిర్వచనం",
+ "translate-edit-translation": "అనువాదం",
+ "translate-edit-contribute": "తోడ్పడండి",
+ "translate-edit-no-information": "<em>ఈ సందేశానికి డాక్యుమెంటేషను లేదు. \nఈ సందేశాన్ని ఎక్కడ లేదా ఎలా ఉపయోగిస్తారో మీకు తెలిస్తే, దీనికి ఆ సమాచారాన్ని చేర్చి ఇతర అనువాదకులకు తోడ్పడవచ్చు.</em>",
+ "translate-edit-information": "సందేశం గురించి సమాచారం ($1)",
+ "translate-edit-in-other-languages": "ఇతర భాషలలో సందేశం",
+ "translate-edit-committed": "సాఫ్ట్&zwnj;వేర్&zwnj;లో ప్రస్తుతమున్న అనువాదం",
+ "translate-edit-warnings": "అసంపూర్తి అనువాదాల గురించి హెచ్చరికలు",
+ "translate-edit-tmsugs": "అనువాద కోశం నుండి సలహాలు",
+ "translate-edit-tmmatch-source": "మూలకోశ అనువాదం: $1",
+ "translate-edit-tmmatch": "$1% పోలిక",
+ "translate-use-suggestion": "ఈ అనువాదాన్ని మార్చుటకు సూచననివ్వండి.",
+ "translate-edit-nopermission": "సందేశాలను అనువదించడానికి మీకు అనువాద హక్కులు అవసరం.",
+ "translate-edit-askpermission": "అనుమతి తెచ్చుకోండి",
+ "translate-magic-pagename": "విస్తరిత మీడియావికీ అనువాదం",
+ "translate-magic-module": "మాడ్యూలు:",
+ "translate-magic-submit": "తీసుకురా",
+ "translate-magic-cm-export": "ఎగుమతించు",
+ "translate-magic-nothing-to-export": "ఎగుమతించడానికి ఏమీ లేదు.",
+ "translate-magic-cm-current": "ప్రస్తుత",
+ "translate-magic-cm-original": "అసలు",
+ "translate-magic-cm-comment": "వ్యాఖ్య:",
+ "translate-magic-cm-save": "భద్రపరచు",
+ "translate-magic-cm-updatedusing": "[[Special:AdvancedTranslate|{{int:Translate-magic-pagename}}]] ద్వారా తాజాకరించారు",
+ "translate-magic-cm-savefailed": "భద్రపరచడం విఫలమైంది",
+ "translate-magic-special": "ప్రత్యేక పుటల మారుపేర్లు",
+ "translate-magic-words": "మాయా పదాలు",
+ "translate-magic-namespace": "పేరుబరుల పేర్లు",
+ "translate-magic-notsaved": "మీ మార్పు భద్రం కాలేదు!",
+ "translate-magic-errors": "ఆనువాదంలోని ఈ క్రింది {{PLURAL:$1|పొరపాటుని|పొరపాట్లను}} సరిచేయండి:",
+ "translate-magic-saved": "మీ మార్పులు విజయవంతంగా భద్రమయ్యాయి.",
+ "translate-checks-parameters": "ఈ {{PLURAL:$2|పరామితిని|పరామితులను}} వాడనేలేదు:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-parameters-unknown": "{{PLURAL:$2|ఇది గుర్తుతెలియని పరామితి|ఇవి గుర్తుతెలియని పరామితులు}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-balance": "{{PLURAL:$2|బ్రాకెట్లు|బ్రాకెట్లు}} సరి సమాన సంఖ్యలో లేవు:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links": "ఈ {{PLURAL:$2|లింకు సమస్యాత్మకంగా ఉంది|$2 లింకులు సమస్యాత్మకంగా ఉన్నాయి}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links-missing": "ఈ క్రింది {{PLURAL:$2|లింకు |$2 లింకులు}} లేవు:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-xhtml": "ఈ {{PLURAL:$2|టాగుని సరైన దానితో|టాగులని సరైన వాటితో}} మార్చండి:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-plural": "అసలు సందేశంలో <nowiki>{{PLURAL:}}</nowiki> అనివుంది కానీ అనువాదంలో లేదు.",
+ "translate-checks-plural-forms": "<nowiki>{{PLURAL:}}</nowiki> ఇవ్వబడింది {{PLURAL:$1|ఫార్మ్|$1 ఫారములు}} కాని {{PLURAL:$2|ఒకే ఒక ఫార్మ్|$2 ఫారములు}} మద్దతివ్వబడ్డాయి (మినహాయింపు 0= కాని 1=ఫారములు).",
+ "translate-checks-plural-dupe": "<nowiki>{{PLURAL:}}</nowiki>కి చివరన ఒకే రూపాలు ఉన్నాయి. <nowiki>{{PLURAL:$1|sheep|sheep}}</nowiki>ని ఇలా వ్రాయాలి <nowiki>{{PLURAL:$1|sheep}}</nowiki>.",
+ "translate-checks-pagename": "మూలం లోని పేరుబరి మారింది",
+ "translate-checks-format": "ఈ అనువాదం నిర్వచనానుసారంగా లేదు లేక చెల్లని సింటాక్స్ను కలిగివుంది: $1",
+ "translate-checks-escape": "క్రింది లోపాలు బహుశా అనుకోకుండా జరగవచ్చు: <strong>$1</strong>",
+ "translate-checks-parametersnotequal": "ఉన్న పరామితుల సంఖ్య {{PLURAL:$1|$1}}; ఉండాల్సినది {{PLURAL:$2|$2}}.",
+ "translate-checks-malformed": "<nowiki>$1</nowiki> తప్పుగా రూపించబడింది.",
+ "translate-checks-fudforum-syntax": "ఈ ప్రాజెక్టులో <nowiki>$2</nowiki> బదులు <nowiki>$1</nowiki> వాడండి.",
+ "translate-pref-nonewsletter": "నాకు ఈ-మెయిలు వార్తాలేఖలు పంపించవద్దు",
+ "translate-pref-editassistlang": "సహాయిక భాషలు:",
+ "prefs-translate": "అనువాద ఎంపికలు",
+ "translate-pref-editassistlang-bad": "జాబితాలో తప్పుడు భాషా సంకేతం:\n<nowiki>$1</nowiki>.",
+ "right-translate": "అనువాద ఇంటరుఫేసును వాడి మార్పుచేర్పులు చెయ్యడం",
+ "right-translate-manage": "సందేశ సమూహాలని నిర్వహించడం",
+ "action-translate-manage": "సందేశాల సమూహాలను నిర్వహించే",
+ "right-translate-import": "ఆఫ్‍లైను అనువాదాలను దిగుమతి చేయ్యడం",
+ "action-translate-import": "ఆఫ్‍లైను అనువాదాలను దిగుమతి చేసే",
+ "translate-rc-translation-filter": "అనువాదాల వడపోత:",
+ "translate-rc-translation-filter-no": "ఏమీ చేయకు",
+ "translate-rc-translation-filter-only": "అనువాదాలను మాత్రమే చూపించు",
+ "translate-rc-translation-filter-site": "సైటు సందేశాల మార్పులు మాత్రమే",
+ "translationstats": "అనువాద గణాంకాలు",
+ "translate-stats-edits": "మార్పులు",
+ "translate-stats-users": "అనువాదకులు",
+ "translate-stats-registrations": "నమోదులు",
+ "translate-stats-reviews": "సమీక్షలు",
+ "translate-stats-reviewers": "సమీక్షకులు",
+ "translate-statsf-intro": "ఈ ఫారాన్ని ఉపయోగించి సరళమైన గణాంకాలను పొందవచ్చు. అన్ని విలువలకీ ఎగువ మరియు దిగువ పరిమితులు ఉంటాయి.",
+ "translate-statsf-options": "గ్రాఫు ఎంపికలు",
+ "translate-statsf-width": "వెడల్పు పిక్సెళ్ళలో:",
+ "translate-statsf-height": "ఎత్తు పిక్సెళ్ళలో:",
+ "translate-statsf-days": "కాలం రోజులలో:",
+ "translate-statsf-start": "మొదలు తేదీ:",
+ "translate-statsf-scale-months": "నెలలు",
+ "translate-statsf-scale-weeks": "వారాలు",
+ "translate-statsf-scale-days": "రోజులు",
+ "translate-statsf-scale-hours": "గంటలు",
+ "translate-statsf-count": "కొలత:",
+ "translate-statsf-count-edits": "మార్పుల సంఖ్య",
+ "translate-statsf-count-users": "క్రియాశీల అనువాదకులు",
+ "translate-statsf-count-registrations": "కొత్త వాడుకరులు",
+ "translate-statsf-count-reviews": "అనువాద సమీక్షలు",
+ "translate-statsf-count-reviewers": "సమీక్షకులు",
+ "translate-statsf-language": "కామాతో వేరుపరచిన భాషా సంకేతాల జాబితా:",
+ "translate-statsf-group": "కామాలతో వేరుపరచిన సమూహ సంకేతాల జాబితా:",
+ "translate-statsf-submit": "మునుజూపు",
+ "translate-tag-category": "అనువదించదగ్గ పుటలు",
+ "translate-tag-page-desc": "[[$2|$1]] వికీ పుట యొక్క అనువాదం.",
+ "translate-sidebar-alltrans": "ఇతర భాషలలో",
+ "translations": "అన్ని అనువాదాలు",
+ "translate-translations-no-message": "\"$1\" అనేది అనువదించదగ్గ సందేశం కాదు",
+ "translate-translations-none": "\"$1\"కి అనువాదాలేమీ లేవు",
+ "translate-translations-count": "{{PLURAL:$1|ఒక అనువాదం దొరికింది|$1 అనువాదాలు దొరికాయి}}.",
+ "translate-translations-fieldset-title": "సందేశం",
+ "translate-translations-messagename": "పేరు:",
+ "translate-translations-project": "ప్రాజెక్టు:",
+ "translate-translations-history-short": "చ",
+ "languagestats": "భాష గణాంకాలు",
+ "languagestats-summary": "ఒక భాషకి సంబంధిచిన అన్ని సందేశ సమూహాల గణాంకాలనీ ఈ పేజీ చూపిస్తుంది.",
+ "languagestats-stats-for": "$1 కొరకై అనువాద గణాంకాలు ($2).",
+ "languagestats-recenttranslations": "ఇటీవలి అనువాదాలు",
+ "translate-langstats-expand": "విస్తరించు",
+ "translate-language-code": "భాష సంకేతం",
+ "translate-language-code-field-name": "భాష సంకేతం:",
+ "translate-suppress-complete": "పూర్తిగా అనువాదమైన సందేశాల సమూహాలను దాచు",
+ "translate-language": "భాష",
+ "translate-total": "సందేశాలు",
+ "translate-untranslated": "అనువాదంకానివి",
+ "translate-percentage-complete": "పూర్తైనవి",
+ "translate-percentage-fuzzy": "కాలదోషం పట్టినవి",
+ "translate-ls-submit": "గణాంకాలను చూపించు",
+ "translate-ls-column-group": "సందేశాల సమూహం",
+ "translate-mgs-pagename": "సందేశ సమూహ గణాంకాలు",
+ "translate-mgs-submit": "గణాంకాలను చూపించు",
+ "translate-mgs-column-language": "భాష",
+ "translate-mgs-totals": "అన్ని భాషలు కలిపి",
+ "supportedlanguages": "తోడ్పాటు ఉన్న భాషలు",
+ "supportedlanguages-translators": "{{PLURAL:$2|అనువాదకుడు|అనువాదకులు}}: $1",
+ "supportedlanguages-recenttranslations": "ఇటీవలి అనువాదాలు",
+ "supportedlanguages-count": "మొత్తం $1 {{PLURAL:$1|భాష|భాషలు}}.",
+ "translate-save": "భద్రపరచు ($1)",
+ "translate-jssti-add": "జాబితాకి చేర్చు",
+ "managemessagegroups": "సందేశ గుంపుల నిర్వహణ",
+ "translate-manage-import-diff": "సందేశం $1 | చర్యలు: $2",
+ "translate-manage-import-new": "కొత్త సందేశం $1",
+ "translate-manage-import-deleted": "సందేశం $1ని తొలగించారు",
+ "translate-manage-action-import": "దిగుమతి చెయ్యి",
+ "translate-manage-action-ignore": "పట్టించుకోవద్దు",
+ "translate-manage-fuzzy-summary": "ఈ సందేశపు నిర్వచనం మారింది",
+ "translate-manage-import-done": "అంతా పూర్తయ్యింది!",
+ "importtranslations": "అనువాదాల దిగుమతి",
+ "translate-import-from-local": "స్థానిక దస్త్రపు ఎక్కింపు:",
+ "translate-import-err-ul-failed": "దస్త్రపు ఎక్కింపు విజయవంతం కాలేదు",
+ "translate-js-summary": "సారాంశం:",
+ "translate-js-save": "భద్రపరచు",
+ "translate-js-next": "భద్రపరిచి తర్వాతి దానికి వెళ్ళు",
+ "translate-js-nonext": "ఈ పుటలో ఇది చివరి సందేశం",
+ "translate-js-skip": "వదిలేసి తర్వాతి దానికి వెళ్ళు",
+ "translate-js-save-failed": "భద్రపరచడం విఫలమైంది. ఈ లోపం గురించి ఫిర్యాదు చెయ్యండి.",
+ "translate-js-history": "అనువాద చరిత్ర",
+ "translate-js-support": "సందేహముంటే అడగండి",
+ "translate-js-support-title": "ఈ సందేశాన్ని సరిగ్గా అనువదించేందుకు అవసరమైన సమాచారం సరిపడా లేకపోతే సాయం కోసం అడగండి",
+ "translate-gs-pos": "స్ధానం",
+ "translate-gs-code": "సంకేతం",
+ "translate-gs-continent": "ఖండం",
+ "translate-gs-speakers": "మాట్లాడేవారు",
+ "translate-gs-score": "స్కోరు",
+ "translate-gs-multiple": "బహుళం",
+ "translate-gs-count": "లెక్క",
+ "translate-gs-total": "మొత్తం",
+ "translate-gs-avgscore": "సగటు స్కోరు",
+ "translate-searchprofile": "అనువాదాలు",
+ "translate-searchprofile-tooltip": "అనువాదాలన్నింటిలో వెతకండి",
+ "translate-search-languagefilter": "భాష వడపోత:",
+ "translate-search-nofilter": "వడపోత లేదు",
+ "translate-messagereview-submit": "అంగీకరించు",
+ "translate-messagereview-no-own": "మీ అనువాదాలను మీరే అంగీకరించలేరు.",
+ "log-name-translationreview": "అనువాద సమీక్షల చిట్టా",
+ "translate-workflowstatus": "స్థితి: $1",
+ "translate-stats-workflow": "స్థితి",
+ "translate-dynagroup-recent-label": "ఇటీవలి అనువాదాలు",
+ "translate-dynagroup-additions-label": "ఇటీవలి చేర్పులు",
+ "translate-gethelp": "సహాయం",
+ "translate-msggroupselector-search-all": "అన్నీ",
+ "translate-msggroupselector-search-recent": "ఇటీవలి",
+ "tux-tab-all": "అన్నీ",
+ "tux-tab-untranslated": "అనువాదం కానివి",
+ "tux-tab-outdated": "కాలదోషం పట్టినవి",
+ "tux-tab-translated": "అనువాదమైనవి",
+ "tux-tab-unproofread": "సమీక్షించనివి",
+ "tux-edit": "మార్చు",
+ "tux-status-optional": "ఐచ్చికం",
+ "tux-status-fuzzy": "కాలదోషం పట్టింది",
+ "tux-status-proofread": "సమీక్షించబడింది",
+ "tux-status-translated": "అనువదించబడింది",
+ "tux-status-saving": "భద్రపరుస్తున్నాం...",
+ "tux-editor-placeholder": "మీ అనువాదం",
+ "tux-editor-save-button-label": "అనువాదాన్ని భద్రపరచు",
+ "tux-editor-skip-button-label": "వదిలేసి తర్వాతిదానికి వెళ్ళు",
+ "tux-editor-cancel-button-label": "రద్దుచేయి",
+ "tux-editor-confirm-button-label": "అనువాదాన్ని నిర్ధారించండి",
+ "tux-editor-suggestions-title": "సూచనలు",
+ "tux-editor-in-other-languages": "ఇతర భాషలలో",
+ "tux-editor-need-more-help": "మరింత సహాయం కావాలా?",
+ "tux-editor-tm-match": "$1% పోలిక",
+ "tux-warnings-more": "{{PLURAL:$1|ఇంకా $1}}",
+ "tux-warnings-hide": "దాచు",
+ "tux-editor-n-uses": "{{PLURAL:$1|ఒక సారి|$1 సార్లు}} వాడారు",
+ "tux-editor-message-desc-more": "మరిన్ని చూడండి",
+ "tux-editor-message-desc-less": "కొన్నే చూడండి",
+ "tux-editor-clear-translated": "అనువాదమైనవాటిని దాచు",
+ "tux-editor-proofreading-mode": "సమీక్ష",
+ "tux-editor-translate-mode": "జాబితా",
+ "tux-proofread-edit-label": "మార్చు",
+ "tux-editor-page-mode": "పేజీ",
+ "tux-editor-outdated-warning-diff-link": "తేడాలను చూపించు",
+ "tux-editor-doc-editor-cancel": "రద్దుచేయి",
+ "tux-messagetable-more-messages": "ఇంకా $1 {{PLURAL:$1|సందేశం|సందేశాలు}}",
+ "tux-message-filter-optional-messages-label": "ఐచ్చిక సందేశాలు",
+ "tux-proofread-translated-by-self": "మీరే అనువదించారు",
+ "tux-empty-list-translated-action": "అనువదించు",
+ "tux-empty-list-other-link": "అన్ని సందేశాలను చూపించు",
+ "tux-editor-close-tooltip": "మూసివేయి",
+ "tux-editor-expand-tooltip": "విస్తరించు",
+ "tux-editor-message-tools-history": "చరిత్ర",
+ "tux-editor-message-tools-translations": "అన్ని అనువాదాలు",
+ "tux-editor-loading": "లోడవుతోంది...",
+ "translate-search-more-languages-info": "ఇంకా $1 {{PLURAL:$1|భాష|భాషలు}}",
+ "translate-search-more-groups-info": "మరో {{PLURAL:$1|సమూహం|$1 సమూహాలు}}"
+}
diff --git a/MLEB/Translate/i18n/core/tet.json b/MLEB/Translate/i18n/core/tet.json
new file mode 100644
index 00000000..34360da9
--- /dev/null
+++ b/MLEB/Translate/i18n/core/tet.json
@@ -0,0 +1,25 @@
+{
+ "@metadata": {
+ "authors": [
+ "MF-Warburg"
+ ]
+ },
+ "translate": "Tradús",
+ "translate-page-settings-legend": "Preferénsia",
+ "translate-page-group": "Grupu",
+ "translate-page-language": "Lian",
+ "translate-page-limit-option": "$1 {{PLURAL:$1|mensajen|mensajen}} iha pájina ida",
+ "translate-submit": "Hola",
+ "translate-page-showing-all": "Dalan $1 {{PLURAL:$1|mensajen|mensajen}}.",
+ "translate-next": "Pájina oinmai",
+ "translate-prev": "Pájina molok",
+ "translate-page-description-legend": "Informasaun kona-ba grupu",
+ "translate-page-edit": "edita",
+ "translate-edit-title": "Edita \"$1\"",
+ "translate-edit-translation": "Tradusaun",
+ "translate-edit-in-other-languages": "Mensajen iha lian seluk",
+ "translate-magic-submit": "Hola",
+ "translate-stats-edits": "Edisaun sira",
+ "translate-language": "Lian",
+ "translate-searchprofile": "Tradusaun sira"
+}
diff --git a/MLEB/Translate/i18n/core/tg-cyrl.json b/MLEB/Translate/i18n/core/tg-cyrl.json
new file mode 100644
index 00000000..e10e8f2b
--- /dev/null
+++ b/MLEB/Translate/i18n/core/tg-cyrl.json
@@ -0,0 +1,46 @@
+{
+ "@metadata": {
+ "authors": [
+ "Ibrahim"
+ ]
+ },
+ "translate": "Тарҷума",
+ "translate-desc": "[[Special:Translate|Саҳифаи вижа]] барои тарҷумаи МедиаВики ва бартар аз он",
+ "translate-page-no-such-language": "Забони мушаххасшуда ғайримиҷоз аст.",
+ "translate-page-no-such-group": "Гурӯҳи мушаххасшуда ғайримиҷоз аст.",
+ "translate-page-settings-legend": "Танзимот",
+ "translate-page-group": "Гурӯҳ",
+ "translate-page-language": "Забон",
+ "translate-page-limit": "Ҳудуд",
+ "translate-page-limit-option": "$1 {{PLURAL:$1|пайғом|пайғомҳо}} дар ҳар саҳифа",
+ "translate-submit": "Вокашидан",
+ "translate-page-navigation-legend": "Гаштан",
+ "translate-page-showing": "Намоиши пайғомҳои $3 аз $1 то $2.",
+ "translate-page-showing-all": "Намоиши $1 {{PLURAL:$1|пайғом|пайғомҳо}}.",
+ "translate-page-showing-none": "Пайғоме барои намоиши вуҷуд надорад.",
+ "translate-next": "Саҳифаи баъдӣ",
+ "translate-prev": "Саҳифаи қаблӣ",
+ "translate-page-description-legend": "Иттилоот дар бораи гурӯҳ",
+ "translate-optional": "(ихтиёрӣ)",
+ "translate-ignored": "(нодида гирифташуда)",
+ "translate-edit-definition": "Таърифи пайғом",
+ "translate-edit-contribute": "ҳиссагузорӣ",
+ "translate-edit-no-information": "''Ин пайғом дорои тавзеҳот нест.\nАгар шумо медонед ин пағом чигуна ё дар куҷо истифода мешавад, шумо метавонед бо изофа кардани тавзеҳот ба ин пайғом ба дигар тарҷумакунандагон кӯмак кунед.''",
+ "translate-edit-information": "Иттилоот дар мавриди ин пайғом ($1)",
+ "translate-edit-in-other-languages": "Ҳамин пайғом дар дигар забонҳо",
+ "translate-edit-committed": "Тарҷумаи феълӣ дар нармафзор",
+ "translate-edit-warnings": "Ҳушдор дар мавриди тарҷумаҳои нокомил",
+ "translate-magic-pagename": "Тарҷумаи густаришёфтаи МедиаВики",
+ "translate-magic-submit": "Вокашидан",
+ "translate-magic-cm-export": "Судур",
+ "translate-magic-cm-to-be": "Будан",
+ "translate-magic-cm-current": "Кунунӣ",
+ "translate-magic-cm-original": "Аслӣ",
+ "translate-magic-cm-comment": "Тавзеҳот:",
+ "translate-magic-cm-save": "Захира",
+ "translate-magic-cm-updatedusing": "Барӯз шуд тавассути [[Special:AdvancedTranslate|{{int:Translate-magic-pagename}}]]",
+ "translate-magic-cm-savefailed": "Шикаст дар захира кардан",
+ "translate-magic-words": "Калимаҳои ҷодуӣ",
+ "translate-magic-namespace": "Исми фазоҳои ном",
+ "translate-checks-parameters": "Параметрҳои зерин истифода нашудаанд: <strong>$1</strong>"
+}
diff --git a/MLEB/Translate/i18n/core/tg-latn.json b/MLEB/Translate/i18n/core/tg-latn.json
new file mode 100644
index 00000000..96fbf697
--- /dev/null
+++ b/MLEB/Translate/i18n/core/tg-latn.json
@@ -0,0 +1,43 @@
+{
+ "@metadata": {
+ "authors": [
+ "Liangent"
+ ]
+ },
+ "translate": "Tarçuma",
+ "translate-desc": "[[Special:Translate|Sahifai viƶa]] baroi tarçumai MediaViki va bartar az on",
+ "translate-page-no-such-language": "Zaboni muşaxxasşuda ƣajrimiçoz ast.",
+ "translate-page-no-such-group": "Gurūhi muşaxxasşuda ƣajrimiçoz ast.",
+ "translate-page-settings-legend": "Tanzimot",
+ "translate-page-group": "Gurūh",
+ "translate-page-language": "Zabon",
+ "translate-page-limit": "Hudud",
+ "translate-page-limit-option": "$1 {{PLURAL:$1|pajƣom|pajƣomho}} dar har sahifa",
+ "translate-submit": "Vokaşidan",
+ "translate-page-navigation-legend": "Gaştan",
+ "translate-page-showing": "Namoişi pajƣomhoi $3 az $1 to $2.",
+ "translate-page-showing-all": "Namoişi $1 {{PLURAL:$1|pajƣom|pajƣomho}}.",
+ "translate-page-showing-none": "Pajƣome baroi namoişi vuçud nadorad.",
+ "translate-next": "Sahifai ba'dī",
+ "translate-prev": "Sahifai qablī",
+ "translate-page-description-legend": "Ittiloot dar borai gurūh",
+ "translate-optional": "(ixtijorī)",
+ "translate-ignored": "(nodida giriftaşuda)",
+ "translate-edit-definition": "Ta'rifi pajƣom",
+ "translate-edit-contribute": "hissaguzorī",
+ "translate-edit-no-information": "''In pajƣom doroi tavzehot nest.\nAgar şumo medoned in paƣom ciguna jo dar kuço istifoda meşavad, şumo metavoned bo izofa kardani tavzehot ba in pajƣom ba digar tarçumakunandagon kūmak kuned.''",
+ "translate-edit-committed": "Tarçumai fe'lī dar narmafzor",
+ "translate-edit-warnings": "Huşdor dar mavridi tarçumahoi nokomil",
+ "translate-magic-pagename": "Tarçumai gustarişjoftai MediaViki",
+ "translate-magic-submit": "Vokaşidan",
+ "translate-magic-cm-export": "Sudur",
+ "translate-magic-cm-to-be": "Budan",
+ "translate-magic-cm-current": "Kununī",
+ "translate-magic-cm-original": "Aslī",
+ "translate-magic-cm-comment": "Tavzehot:",
+ "translate-magic-cm-save": "Zaxira",
+ "translate-magic-cm-updatedusing": "Barūz şud tavassuti [[Special:AdvancedTranslate|{{int:Translate-magic-pagename}}]]",
+ "translate-magic-cm-savefailed": "Şikast dar zaxira kardan",
+ "translate-magic-words": "Kalimahoi çoduī",
+ "translate-magic-namespace": "Ismi fazohoi nom"
+}
diff --git a/MLEB/Translate/i18n/core/th.json b/MLEB/Translate/i18n/core/th.json
new file mode 100644
index 00000000..a411b848
--- /dev/null
+++ b/MLEB/Translate/i18n/core/th.json
@@ -0,0 +1,142 @@
+{
+ "@metadata": {
+ "authors": [
+ "Ans",
+ "Manop",
+ "Passawuth",
+ "Woraponboonkerd"
+ ]
+ },
+ "translate": "แปล",
+ "translate-desc": "[[Special:Translate|หน้าพิเศษ]]สำหรับแปลมีเดียวิกิและอื่น ๆ",
+ "translate-page-no-such-language": "ใส่รหัสภาษาไม่ถูกต้อง",
+ "translate-page-no-such-group": "ใส่ชื่อกลุ่มไม่ถูกต้อง",
+ "translate-page-disabled": "งานแปลภาษานี้ในกลุ่มนี้ได้ปิดใช้งาน\nเหตุผล:\n\n<em>$1</em>",
+ "translate-page-settings-legend": "การตั้งค่าต่างๆ",
+ "translate-page-group": "กลุ่ม",
+ "translate-page-language": "ภาษา",
+ "translate-page-limit": "ไม่เกิน",
+ "translate-page-limit-option": "$1 {{PLURAL:$1|ข้อความ|ข้อความ}}ต่อหน้า",
+ "translate-submit": "ดึงข้อมูล",
+ "translate-page-navigation-legend": "แถบนำทาง",
+ "translate-page-showing": "แสดงตั้งแต่ข้อความที่ $1 ถึง $2 จากทั้งหมด $3 ข้อความ",
+ "translate-page-showing-all": "แสดง $1 {{PLURAL:$1|ข้อความ|ข้อความ}}",
+ "translate-page-showing-none": "ไม่มีข้อความแสดง",
+ "translate-next": "หน้าถัดไป",
+ "translate-prev": "หน้าก่อน",
+ "translate-page-description-legend": "ข้อมูลเกี่ยวกับกลุ่มข้อความ",
+ "translate-page-edit": "แก้ไข",
+ "translate-ext-url": "<hr />เว็บไซต์: $1",
+ "translate-optional": "(สามารถเลือกได้)",
+ "translate-ignored": "(เพิกเฉย)",
+ "translate-edit-title": "แก้ไข \"$1\"",
+ "translate-edit-definition": "นิยามข้อความต้นฉบับ",
+ "translate-edit-contribute": "ช่วยเขียน",
+ "translate-edit-no-information": "''ข้อความนี้ไม่มีคำอธิบายการใช้งาน ถ้าคุณทราบว่าข้อความนี้ใช้ตรงส่วนไหนหรือใช้อย่างไร คุณสามารถช่วยเพิ่มคำอธิบายการใช้งานของข้อความนี้ เพื่อเป็นประโยชน์แก่ผู้แปลคนอื่นได้''",
+ "translate-edit-information": "ข้อมูลเกี่ยวกับข้อความ \"$2\" ($1)",
+ "translate-edit-in-other-languages": "ข้อความ \"$1\" ในภาษาอื่นๆ",
+ "translate-edit-committed": "คำแปลปัจจุบันที่ฝังอยู่ในตัวโปรแกรม",
+ "translate-edit-warnings": "คำเตือนเกี่ยวกับคำแปลที่ยังไม่สมบูรณ์หรือมีปัญหา",
+ "translate-edit-tmsugs": "คำแนะนำจากคำแปลที่ผ่านมา",
+ "translate-magic-pagename": "ส่วนเพิ่มเติมของการแปลมีเดียวิกิ",
+ "translate-magic-help": "คุณสามารถแปลชื่อหน้าพิเศษต่าง ๆ, ตัวแปรพิเศษ, ชื่อแบบหน้าตา และ ชื่อเนมสเปซ\n\nชื่อหน้าพิเศษและตัวแปรพิเศษสามารถมีคำแปลได้หลายอย่าง\nคำแปลจะแยกโดยการใช้ จุลภาค (,)\nชื่อแบบหน้าตาและเนมสเปซสามารถมีคำแปลได้แค่คำเดียว\n\nในคำแปลชื่อเนมสเปซ <code>คุยเรื่อง$1</code> ต้องระวังเป็นพิเศษ <code>$1</code> จะถูกแทนที่โดยชื่อเว็บไซต์ (เช่น <code>{{ns:project_talk}}</code>)\nถ้าไม่สามารถกระทำการดังกล่าวได้ในภาษาของคุณ กรุณาติดต่อผู้ดูแลระบบขั้นสูง\n\nคุณต้องอยู่ในกลุ่มคนแปลเพื่อที่จะบันทึกข้อมูลได้\nข้อมูลจะไม่ถูกบันทึกตราบใดที่คุณยังไม่กด \"บันทึก\"",
+ "translate-magic-module": "โมดูล:",
+ "translate-magic-submit": "ดึงข้อมูล",
+ "translate-magic-cm-export": "ส่งออกมา (export)",
+ "translate-magic-cm-to-be": "แก้เป็น",
+ "translate-magic-cm-current": "ปัจจุบัน",
+ "translate-magic-cm-original": "ต้นฉบับ",
+ "translate-magic-cm-comment": "หมายเหตุ:",
+ "translate-magic-cm-save": "บันทึก",
+ "translate-magic-cm-updatedusing": "แก้ไขด้วย [[Special:AdvancedTranslate|{{int:Translate-magic-pagename}}]]",
+ "translate-magic-cm-savefailed": "บันทึกไม่สำเร็จ",
+ "translate-magic-special": "ชื่อ alias ของหน้าพิเศษ",
+ "translate-magic-words": "ตัวแปรพิเศษ",
+ "translate-magic-namespace": "ชื่อเนมสเปซ",
+ "translate-magic-notsaved": "การแก้ไขของคุณยังไม่ได้รับการบันทึก!",
+ "translate-magic-errors": "กรุณาแก้ไขความผิดพลาด{{PLURAL:$1|นี้|เหล่านี้}} ในการแปลภาษา:",
+ "translate-magic-saved": "การเปลี่ยนแปลงของคุณได้ถูกบันทึกแล้ว",
+ "translate-checks-parameters": "{{PLURAL:$2|ตัวแปร|ตัวแปร}}ต่อไปนี้ไม่ได้รับการใช้งาน: <strong>$1</strong>",
+ "translate-checks-parameters-unknown": "ไม่รู้จัก{{PLURAL:$2|ตัวแปรต่อไปนี้|ตัวแปรต่อไปนี้}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-balance": "จับคู่{{PLURAL:$2|วงเล็บ|วงเล็บ}}ไม่ครบคู่:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links": "{{PLURAL:$2|ลิงก์|ลิงก์ $2 ลิงก์}}ต่อไปนี้ทำให้เกิดปัญหา:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-xhtml": "{{PLURAL:$2|tag ต่อไปนี้|tag เหล่านี้}}ไม่ถูกต้อง กรุณาแก้ไขโดยใช้ tag ที่ถูกต้อง:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-plural": "ข้อความต้นฉบับใช้ <nowiki>{{PLURAL:}}</nowiki> ในขณะที่คำแปลไม่ได้ใช้",
+ "translate-checks-pagename": "namespace ไม่ตรงกับนิยาม (definition) ต้นฉบับ",
+ "translate-checks-format": "คำแปลนี้ไม่ตรงกับนิยามในต้นฉบับ (definition) หรือ มีไวยากรณ์ (syntax) ที่ไม่ถูกต้อง: $1",
+ "translate-checks-escape": "เครื่องหมายหลบ (escape) ต่อไปนี้ อาจจะเกิดจากความไม่ตั้งใจ: <strong>$1</strong>",
+ "translate-pref-nonewsletter": "ไม่รับอีเมลประจำเดือนของเว็บไซต์",
+ "right-translate": "แก้ไขในส่วนที่ใช้สำหรับแปล",
+ "translate-rc-translation-filter": "กรองงานแปล:",
+ "translate-rc-translation-filter-no": "ไม่ทำอะไรทั้งสิ้น",
+ "translate-rc-translation-filter-only": "แสดงงานแปลเท่านั้น",
+ "translate-rc-translation-filter-filter": "กรองงานแปลออก",
+ "translate-rc-translation-filter-site": "การเปลี่ยนแปลงในส่วนอื่นของเว็บไซต์ที่ไม่ใช่งานแปล",
+ "translationstats": "สถิติการแปล",
+ "translate-stats-edits": "การแก้ไขต่อหนึ่งวัน",
+ "translate-stats-users": "ผู้แปล",
+ "translate-statsf-options": "ตัวปรับแต่งกราฟ",
+ "translate-statsf-width": "ความกว้างในหน่วยพิกเซล:",
+ "translate-statsf-height": "ความสูงในหน่วยพิกเซล:",
+ "translate-statsf-days": "ช่วงเวลานับเป็นวัน:",
+ "translate-statsf-start": "ช่วงเวลานับเป็นวัน:",
+ "translate-statsf-scale": "ความละเอียด",
+ "translate-statsf-scale-months": "เดือน",
+ "translate-statsf-scale-weeks": "สัปดาห์",
+ "translate-statsf-scale-days": "วัน",
+ "translate-statsf-scale-hours": "ชั่วโมง",
+ "translate-statsf-count": "ตัวแปร:",
+ "translate-statsf-count-edits": "จำนวนการแก้ไข",
+ "translate-statsf-count-users": "ผู้แปลที่ขยันขันแข็ง",
+ "translate-statsf-count-registrations": "ผู้ใช้ใหม่",
+ "translate-statsf-language": "รายการรหัสภาษา ใช้เครื่องหมายลูกน้ำ (comma) เป็นตัวคั่น:",
+ "translate-statsf-group": "รายการรหัสของกลุ่ม ใช้เครื่องหมายลูกน้ำ (comma) เป็นตัวคั่น:",
+ "translate-statsf-submit": "แสดงตัวอย่าง",
+ "translate-tag-category": "หน้าที่สามารถแปลได้",
+ "translate-tag-page-desc": "คำแปลของหน้าวิกิ [[$2|$1]].",
+ "translate-sidebar-alltrans": "คำแปลในภาษาอื่น ๆ",
+ "translations": "คำแปลทั้งหมด",
+ "translations-summary": "ใส่ชื่อของข้อความลงด้านล่างนี้ เพื่อแสดงคำแปลที่มีทั้งหมด",
+ "translate-translations-no-message": "\"$1\" เป็นข้อความที่ไม่สามารถแปลได้",
+ "translate-translations-none": "ไม่มีคำแปลสำหรับ \"$1\"",
+ "translate-translations-fieldset-title": "ข้อความ",
+ "translate-translations-messagename": "ชื่อ:",
+ "translate-translations-project": "โครงการ:",
+ "translate-translations-including-no-param": "โปรดระบุคีย์ของข้อความในตัวแปรหน้าย่อย (subpage parameter) ให้ถูกต้อง",
+ "languagestats": "สถิติภาษา",
+ "languagestats-summary": "หน้านี้แสดงค่าสถิติการแปลของทุกกลุ่มข้อความในภาษาหนึ่งๆ",
+ "languagestats-stats-for": "สถิติการแปลสำหรับภาษา$1 ($2)",
+ "languagestats-recenttranslations": "การแปลล่าสุด",
+ "translate-language-code": "รหัสภาษา",
+ "translate-language-code-field-name": "รหัสภาษา:",
+ "translate-suppress-complete": "ไม่แสดงกลุ่มของข้อความที่แปลเสร็จสมบูรณ์แล้ว",
+ "translate-language": "ภาษา",
+ "translate-total": "ข้อความทั้งหมด",
+ "translate-untranslated": "ไม่ได้แปล",
+ "translate-percentage-complete": "เสร็จสมบูรณ์",
+ "translate-percentage-fuzzy": "ล้าสมัย",
+ "supportedlanguages-translators": "{{PLURAL:$2|ผู้แปล|ผู้แปล}}: คุณ $1",
+ "supportedlanguages-recenttranslations": "การแปลล่าสุด",
+ "translate-save": "บันทึก ($1)",
+ "translate-jssti-add": "เพิ่มลงในรายการ",
+ "translate-manage-intro-other": "ด้านล่างนี้คือรายการความเปลี่ยนแปลงของงานแปลทั้งหมดในภาษา $1\n<br />กรุณาตรวจสอบความเปลี่ยนแปลงและเลือกสิ่งที่ต้องการจะทำต่อไปในงานแปลแต่ละอัน\n<br />ถ้าคุณเลือกที่จะไม่สนใจการเปลี่ยนแปลงนี้ มันจะถูกลบล้างในการส่งออกครั้งต่อไป",
+ "importtranslations": "นำเข้างานแปล",
+ "translate-import-from-local": "อัพโหลดไฟล์:",
+ "translate-import-load": "โหลดไฟล์",
+ "translate-import-err-dl-failed": "ไม่สามารถดีงไฟล์นี้ได้:\n<br />$1",
+ "translate-import-err-ul-failed": "อัพโหลดไฟล์ไม่สำเร็จ",
+ "translate-import-err-invalid-title": "ชื่อของไฟล์ที่กำหนดมา: <nowiki>$1</nowiki> ไม่ถูกต้อง",
+ "translate-import-err-no-such-file": "ไม่ปรากฎไฟล์ <nowiki>$1</nowiki> หรือไฟล์นี้ไม่ได้ถูกอัพโหลดเข้ามา",
+ "translate-import-err-no-headers": "ไฟล์นี้ไม่ใช่ไฟล์ Gettext ในส่วนเพิ่มเติมการแปลภาษาที่ดี:\n<br />ไม่สามารถกำหนดกลุ่มและภาษาจากส่วนต้นของไฟล์ได้",
+ "translate-import-err-warnings": "ไฟล์ไม่ได้ถูกสร้างโดยปกติ\n<br />ตรวจสอบให้แน่ใจว่าตัวแก้ไขของคุณไม่ได้ลบส่วนของ msgctxt ออกไป\n<br />รายละเอียด: $1",
+ "translate-js-next": "บันทึกและแปลต่อ",
+ "translate-js-nonext": "นี่เป็นข้อความล่าสุดในหน้านี้",
+ "translate-js-skip": "ข้าม",
+ "translate-js-save-failed": "ไม่สามารถบันทึกได้ กรุณาติดต่อเจ้าหน้าที่",
+ "translate-js-history": "ประวัติการแปล",
+ "translate-gs-continent": "ทวีป",
+ "translate-gs-speakers": "จำนวนผู้ใช้",
+ "translate-gs-score": "คะแนน",
+ "translate-gs-total": "รวม",
+ "translate-gs-avgscore": "คะแนนเฉลี่ย"
+}
diff --git a/MLEB/Translate/i18n/core/tk.json b/MLEB/Translate/i18n/core/tk.json
new file mode 100644
index 00000000..6ee381dc
--- /dev/null
+++ b/MLEB/Translate/i18n/core/tk.json
@@ -0,0 +1,48 @@
+{
+ "@metadata": {
+ "authors": [
+ "Hanberke",
+ "Nazarisgoal",
+ "Runningfridgesrule"
+ ]
+ },
+ "translate": "Terjime",
+ "translate-desc": "Mediawikini we ýenekileri terjime etmek üçin [[Special:Translate|ýörite sahypa]]",
+ "translate-taskui-view": "Ähli habarlary görkez",
+ "translate-taskui-untranslated": "Terjime edilmedik habarlary görkez",
+ "translate-page-settings-legend": "Ileri tutmalar",
+ "translate-page-group": "Topar",
+ "translate-page-language": "Dil",
+ "translate-page-limit": "Çäk",
+ "translate-page-limit-option": "Sahypa başyna $1 {{PLURAL:$1|habarlaşyk|habarlaşyk}}",
+ "translate-submit": "Getir",
+ "translate-page-navigation-legend": "Nawigasiýa",
+ "translate-page-showing": "$3 sany habarlaşykdan $1 - $2 aralygy görkezilýär.",
+ "translate-page-showing-all": "$1 {{PLURAL:$1|habarlaşyk|habarlaşyk}} görkezilýär.",
+ "translate-next": "Indiki sahypa",
+ "translate-prev": "Öňki sahypa",
+ "translate-page-description-legend": "Topar hakda maglumat",
+ "translate-page-edit": "redaktirle",
+ "translate-edit-definition": "Habarlaşygyň kesgitlemesi",
+ "translate-edit-contribute": "goşant goş",
+ "translate-edit-no-information": "''Bu habarlaşygyň düşündirişi ýok.\nEger-de bu habarlaşygyň nirede we nähili ulanylýandygyny bilýän bolsaňyz, onda bu habarlaşyga düşündiriş ýazmak arkaly beýleki terjimeçilere kömek edip bilersiňiz.''",
+ "translate-edit-information": "\"$2\" habarlaşygy hakda maglumat ($1)",
+ "translate-edit-in-other-languages": "Beýleki dillerde \"$1\" habarlaşygy",
+ "translate-magic-cm-save": "Ýazdyr",
+ "translate-stats-users": "Terjimeçiler",
+ "translate-statsf-submit": "Deslapky syn",
+ "translate-sidebar-alltrans": "Başga dillerde",
+ "translate-translations-messagename": "At:",
+ "translate-translations-project": "Taslama:",
+ "languagestats": "Dil boýunça statistikalar",
+ "languagestats-summary": "Bu sahypa bir dildäki ähli habarlaşyk toparlarynyň terjime boýunça statistikasyny görkezýär.",
+ "translate-language-code": "Dil kody",
+ "translate-language-code-field-name": "Dil kody:",
+ "translate-suppress-complete": "Doly terjime edilen habarlaşyk toparlaryny gizle",
+ "translate-language": "Dil",
+ "translate-total": "Habarlaşyklar",
+ "translate-untranslated": "Terjime edilmedik",
+ "translate-percentage-complete": "Ýerine ýetirilen",
+ "translate-percentage-fuzzy": "Möwriti geçen",
+ "translate-save": "Ýazdyr ($1)"
+}
diff --git a/MLEB/Translate/i18n/core/tl.json b/MLEB/Translate/i18n/core/tl.json
new file mode 100644
index 00000000..d6e3e115
--- /dev/null
+++ b/MLEB/Translate/i18n/core/tl.json
@@ -0,0 +1,287 @@
+{
+ "@metadata": {
+ "authors": [
+ "AnakngAraw",
+ "Jewel457"
+ ]
+ },
+ "translate": "Isalinwika",
+ "translate-desc": "[[Special:Translate|Natatanging pahina]] para sa pagsasalinwika ng MediaWiki at lampas pa",
+ "translate-taskui-view": "Ipakita ang lahat ng mga mensahe",
+ "translate-taskui-untranslated": "Ipakita ang mga mensaheng hindi pa nasasalinwika",
+ "translate-taskui-optional": "Ipakita ang mga mensaheng maaaring wala naman",
+ "translate-taskui-acceptqueue": "Mga mensaheng matatanggap ko lamang",
+ "translate-taskui-reviewall": "Suriin ang lahat ng mga salinwika",
+ "translate-taskui-export-to-file": "Iluwas na nasa katutubong anyo",
+ "translate-taskui-export-as-po": "Iluwas para sa salinwikang hindi nakaugnay sa internet",
+ "translate-taction-translate": "Isalinwika",
+ "translate-taction-proofread": "Magwasto",
+ "translate-taction-lstats": "Estadistika ng wika",
+ "translate-taction-mstats": "Estadistika ng pangkat ng mensahe",
+ "translate-taction-export": "Iluwas",
+ "translate-taction-disabled": "Hindi pinagagana sa wiking ito ang galaw na ito",
+ "translate-page-no-such-language": "Hindi tanggap ang tinukoy na wika.",
+ "translate-page-no-such-group": "Hindi tanggap ang tinukoy na pangkat.",
+ "translate-page-disabled": "Hindi pinagana ang mga salinwika para sa wikang ito na nasa loob ng pangkat na ito. Dahilan:\n\n<em>$1</em>",
+ "translate-language-disabled": "Hindi pinagagana ang pagsasalinwika papunta sa wikang ito.",
+ "translate-page-settings-legend": "Mga pagtatakda",
+ "translate-page-group": "Pangkat",
+ "translate-page-language": "Wika",
+ "translate-page-limit": "Hangganan",
+ "translate-page-limit-option": "$1 {{PLURAL:$1|mensahe|mga mensahe}} bawat pahina",
+ "translate-submit": "Sumalok",
+ "translate-page-navigation-legend": "Paglilibot (nabigasyon)",
+ "translate-page-showing": "Nagpapakita ng mga mensahe mula $1 hanggang $2 ng $3.",
+ "translate-page-showing-all": "Nagpapakita ng $1 {{PLURAL:$1|mensahe|mga mensahe}}.",
+ "translate-page-showing-none": "Walang maipapakitang mga mensahe.",
+ "translate-page-paging-links": "[ $1 ] [ $2 ]",
+ "translate-next": "Susunod na pahina",
+ "translate-prev": "Sinundang pahina",
+ "translate-page-description-legend": "Kabatiran tungkol sa pangkat",
+ "translate-page-description-hasoptional": "Ang pangkat na ito ng mensahe ay naglalaman ng mga mensaheng opsiyonal.\nAng mga mensaheng pang-opsiyon ay nararapat na isalinwika lang kapag ang wika mo ay mayroong natatanging mga pangangailangan\nkatulad ng hindi paggamit ng mga patlang o transliterasyon ng mga pangalang pantangi. $1",
+ "translate-page-description-hasoptional-open": "Ipakita ang mga mensaheng maaaring wala naman.",
+ "translate-page-edit": "baguhin",
+ "translate-ext-url": "<hr />Websayt: $1",
+ "translate-optional": "(maaaring wala nito)",
+ "translate-ignored": "(binalewala)",
+ "translate-edit-title": "Baguhin ang \"$1\"",
+ "translate-edit-definition": "Kahulugan ng mensahe",
+ "translate-edit-translation": "Salinwika",
+ "translate-edit-contribute": "magambag",
+ "translate-edit-no-information": "''Walang kasulatan ang mensaheng ito.\nKung alam mo kung saan o paano ginagamit ang mensaheng ito, makakatulong ka sa iba pang mga tagapagsalinwika sa pamamagitan ng pagdaragdag ng kasulatan sa mensaheng ito.''",
+ "translate-edit-information": "Kabatiran hinggil sa mensahe ($1)",
+ "translate-edit-in-other-languages": "Mensahe na nasa ibang mga wika",
+ "translate-edit-committed": "Pangkasalukuyang salinwikang nasa sopwer",
+ "translate-edit-warnings": "Mga babala hinggil sa hindi pa ganap na mga salinwika",
+ "translate-edit-tmsugs": "Mga mungkahi mula sa alaala ng salinwika",
+ "translate-edit-tmmatch-source": "Teksto ng pinagmulan ng salinwika: $1",
+ "translate-edit-tmmatch": "$1% tumugma",
+ "translate-use-suggestion": "Palitan ang kasulukuyang salinwika ng ganitong mungkahi.",
+ "translate-edit-nopermission": "Kailangan mo ng pahintulot upang makapagsalinwika ng mga mensahe.",
+ "translate-edit-askpermission": "Humiling ng pahintulot",
+ "translate-magic-pagename": "Dinugtungang salinwika ng MediaWiki",
+ "translate-magic-help": "Maaari mong isalinwika ang mga bansag ng natatanging mga pahina, mga salitang pangsalamangka at mga pangalan ng mga puwang ng pangalan.\n\nMaaaring magkaroon ng maramihang mga salinwika ang mga bansag ng natatanging mga pahina at mga salitang pangsalamangka.\nPinaghihiwalay-hiwalay ng isang kuwit (,) ang mga salinwika.\nAng mga puwang ng pangalan ay maaaring magkaroon ng nag-iisang salinwika lamang.\n\nMaaaring maging masalimuot ang pagsasalinwika ng puwang ng pangalan ng usapan na pamproyekto na <code>$1 usapan</code>.\nAng <code>$1 usapan</code> ay pinapalitan ng pangalan ng pook na pamproyekto (halimbawa na ang <code>{{ns:project_talk}}</code>).\nKung hindi maaari sa wika mo na makahubog ng isang katanggap-tanggap na pagsasaad na hindi nababago ang pangalan ng pook, paki ipaalam sa amin doon sa [[Support|Suporta]].\n\nKinakailangan mong maging isang tagapagsalinwika upang makapagsagip ng mga pagbabago.\nHindi sinasagip ang mga pagbabago maliban na lamang kapag pinindot mo na ang pindutang pansagip na nasa ibaba.",
+ "translate-magic-module": "Modulo:",
+ "translate-magic-submit": "Sumalok",
+ "translate-magic-cm-export": "Iluwas",
+ "translate-magic-nothing-to-export": "Walang mailuluwas.",
+ "translate-magic-cm-to-be": "Para maging",
+ "translate-magic-cm-current": "Pangkasalukuyan",
+ "translate-magic-cm-original": "Orihinal",
+ "translate-magic-cm-comment": "Puna/Kumento:",
+ "translate-magic-cm-save": "Itala",
+ "translate-magic-cm-updatedusing": "Isinapanahong ginagamitan ng [[Special:AdvancedTranslate|{{int:Translate-magic-pagename}}]]",
+ "translate-magic-cm-savefailed": "Nabigo ang pagsagip",
+ "translate-magic-special": "Mga bansag (alyas) na pangnatatanging pahina",
+ "translate-magic-words": "Mga salitang may salamangka",
+ "translate-magic-namespace": "Mga pangalan ng espasyong pampangalan",
+ "translate-magic-notsaved": "Hindi nasagip ang binago mo!",
+ "translate-magic-errors": "Paki-ayos ang sumusunod na {{PLURAL:$1|kamalian|mga kamalian}} na nasa salinwika:",
+ "translate-magic-saved": "Matagumpay na nasagip ang mga binago mo.",
+ "translate-checks-parameters": "Ang sumusunod na {{PLURAL:$2|parametro ay|mga parametro ay}} hindi ginagamit:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-parameters-unknown": "Ang sumusunod na {{PLURAL:$2|parametro ay|mga parametro ay}} hindi nalalaman:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-balance": "Mayroong isang hindi magkapantay na bilang ng {{PLURAL:$2|panaklong|mga panaklong}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links": "Ang sumusunod na {{PLURAL:$2|kawing ay|$2 mga kawing ay}} may suliranin:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links-missing": "Nawawala ang sumusunod na {{PLURAL:$2|kawing|$2 mga kawing}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-xhtml": "Pakipalitan ang sumusunod na {{PLURAL:$2|tatak|mga tatak}} ng mga tama/naaangkop:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-plural": "Gumagamit ang kahulugan ng <nowiki>{{PLURAL:}}</nowiki> subalit hindi ang salinwika.",
+ "translate-checks-pagename": "Espasyo ng pangalan binago mula sa kahulugan",
+ "translate-checks-format": "Ang salinwikang ito ay hindi sumusunod sa kahulugan o may hindi tanggap na palaugnayan: $1",
+ "translate-checks-escape": "Maaaring hindi sinasadya ang sumusunod na mga paghulagpos: <strong>$1</strong>",
+ "translate-checks-parametersnotequal": "Ang bilang ng parametro ay {{PLURAL:$1|$1}}; dapat na {{PLURAL:$2|$2}}.",
+ "translate-checks-malformed": "Sira ang porma ng <nowiki>$1</nowiki>.",
+ "translate-checks-fudforum-syntax": "Gamitin ang <nowiki>$1</nowiki> sa halip na <nowiki>$2</nowiki> sa loob ng proyektong ito.",
+ "translate-pref-nonewsletter": "Huwag akong padalhan ng mga ulat-balita sa pamamagitan ng e-liham",
+ "translate-pref-editassistlang": "Katulong na mga wika:",
+ "prefs-translate": "Mga mapagpipilian na pangsalinwika",
+ "translate-pref-editassistlang-help": "Talaan ng mga kodigong pangwika na pinaghihiwalay ng kuwit.\nAng salinwika ng isang mensahe sa mga wikang ito ay ipinapakita kapag nagsasalinwika ka.\nNakasalalay sa wika mo ang likas na nakatakdang talaan ng mga wika.",
+ "translate-pref-editassistlang-bad": "Hindi tanggap na kodigong pangwika sa loob ng talaan:\n<nowiki>$1</nowiki>.",
+ "right-translate": "Baguhing ginagamit ang ugnayang-hangganan (''interface'') na pangpagsasalinwika",
+ "right-translate-manage": "Pamahalaan ang mga pangkat ng mensahe",
+ "action-translate-manage": "pamahalaan ang mga pangkat ng mensahe",
+ "right-translate-import": "Angkatin ang mga salinwikang hindi nakakunekta sa internet",
+ "action-translate-import": "angkatin ang mga salinwikang ginawa habang hindi nakaugnay sa internet",
+ "right-translate-messagereview": "Suriin ang mga salinwika",
+ "right-translate-groupreview": "Baguhin ang katayuan ng daloy ng paggawa ng mga pangkat ng mensahe",
+ "translate-rc-translation-filter": "Salain ang mga salinwika:",
+ "translate-rc-translation-filter-no": "Walang gagawin",
+ "translate-rc-translation-filter-only": "Mga salinwika lamang ang ipakita",
+ "translate-rc-translation-filter-filter": "Salaing hindi isinasama ang mga salinwika",
+ "translate-rc-translation-filter-site": "Mga pagbabago sa mga mensahe ng pook lamang",
+ "translationstats": "Mga estadistikang pangsalinwika",
+ "translate-stats-edits": "Mga pagbabago",
+ "translate-stats-users": "Mga tagapagsalinwika",
+ "translate-stats-registrations": "Mga pagpapatala",
+ "translate-stats-reviews": "Mga pagsuri",
+ "translate-stats-reviewers": "Mga tagasuri",
+ "translate-statsf-intro": "Maaari kang makagawa ng payak na estadistika/palaulatan sa pamamagitan ng pormularyong ito. Ang lahat ng mga halaga ay may pangitaas at pangibabang mga hangganan.",
+ "translate-statsf-options": "Mga pagpipiliang pangtalangguhit",
+ "translate-statsf-width": "Lapad na nasa mga piksel:",
+ "translate-statsf-height": "Taas na nasa mga piksel:",
+ "translate-statsf-days": "Kapanuhan ayon sa mga araw:",
+ "translate-statsf-start": "Petsa ng simula:",
+ "translate-statsf-scale": "Kaantasan ng pagkakaroon ng mga butil (granularidad):",
+ "translate-statsf-scale-months": "Mga buwan",
+ "translate-statsf-scale-weeks": "Mga linggo",
+ "translate-statsf-scale-days": "Mga araw",
+ "translate-statsf-scale-hours": "Mga oras",
+ "translate-statsf-count": "Sukatin:",
+ "translate-statsf-count-edits": "Bilang ng mga pagbabago",
+ "translate-statsf-count-users": "Masisiglang mga tagapagsalinwika",
+ "translate-statsf-count-registrations": "Bagong mga tagagamit",
+ "translate-statsf-count-reviews": "Mga pagsusuri ng salinwika",
+ "translate-statsf-count-reviewers": "Mga manunuri",
+ "translate-statsf-language": "Talaan ng kodigo ng mga wikang pinaghihiwahiwalay ng mga kuwit:",
+ "translate-statsf-group": "Talaan ng kodigo ng mga pangkat na pinaghiwahiwalay ng mga kuwit:",
+ "translate-statsf-submit": "Paunang tingin",
+ "translate-tag-category": "Maisasalinwikang mga pahina",
+ "translate-tag-page-desc": "Salinwika ng pahina ng wiking [[$2|$1]].",
+ "translate-sidebar-alltrans": "Sa iba pang mga wika",
+ "translations": "Lahat ng mga salinwika",
+ "translations-summary": "Magpasok (maglagay) ng isang pangalan ng mensahe sa ibaba upang maipakita ang lahat ng makukuhang mga salinwika.",
+ "translate-translations-no-message": "Ang \"$1\" ay isang hindi maisasalinwikang mensahe",
+ "translate-translations-none": "Walang mga salinwika para sa \"$1\"",
+ "translate-translations-count": "Nakatagpo ng {{PLURAL:$1|isang salinwika|$1 mga salinwika}}.",
+ "translate-translations-fieldset-title": "Mensahe",
+ "translate-translations-messagename": "Pangalan:",
+ "translate-translations-project": "Proyekto:",
+ "translate-translations-including-no-param": "Pakitukoy ang isang tanggap na susi ng mensahe sa loob ng parametro ng kabahaging pahina",
+ "translate-translations-history-short": "k",
+ "languagestats": "Mga estadistikang pangwika",
+ "languagestats-summary": "Nagpapakita ang pahinang ito ng mga estadistikang pangsalinwika para sa lahat ng mga pangkat ng mensaheng para sa isang wika.",
+ "languagestats-stats-for": "Estadistika ng salinwika para sa $1 ($2).",
+ "languagestats-recenttranslations": "kamakailang mga salinwika",
+ "translate-langstats-incomplete": "Hindi kumpleto ang ilan sa mga estadistikang nasa pahinang ito. Pakikargang muli upang makakuha ng marami pang mga estadistika.",
+ "translate-langstats-expand": "palaparin",
+ "translate-langstats-collapse": "tiklupin",
+ "translate-langstats-expandall": "palaparing lahat",
+ "translate-langstats-collapseall": "tikluping lahat",
+ "translate-language-code": "Kodigo ng wika",
+ "translate-language-code-field-name": "Kodigo ng wika:",
+ "translate-suppress-complete": "Pigiling ganap ang isinalinwikang mga pangkat ng mensahe",
+ "translate-ls-noempty": "Pigiling ganap ang hindi pa naisasalinwikang mga pangkat ng mensahe",
+ "translate-language": "Wika",
+ "translate-total": "Mga mensahe",
+ "translate-untranslated": "Hindi pa naisasalinwika",
+ "translate-percentage-complete": "Panahon ng pagtatapos (pagkakabuo)",
+ "translate-percentage-fuzzy": "Wala na sa panahon",
+ "translate-languagestats-overall": "Magkakasama ang lahat ng mga pangkat ng mensahe",
+ "translate-ls-submit": "Ipakita ang estadistika",
+ "translate-ls-column-group": "Pangkat ng mensahe",
+ "translate-mgs-pagename": "Estadistika ng pangkat ng mensahe",
+ "translate-mgs-fieldset": "Ipakita ang kanaisan",
+ "translate-mgs-group": "Pangkat ng mensahe:",
+ "translate-mgs-nocomplete": "Huwag ipakita ang mga wikang nakumpleto na ang pagsasalinwika",
+ "translate-mgs-noempty": "Huwag ipakita ang mga wikang wala pang anumang mga pagsasalinwika",
+ "translate-mgs-submit": "Ipakita ang estadistika",
+ "translate-mgs-column-language": "Wika",
+ "translate-mgs-totals": "Magkakasama ang lahat ng mga wika",
+ "translate-mgs-invalid-group": "Hindi umiiral ang tinukoy na pangkat na $1.",
+ "translate-mgs-nothing": "Walang maipapakita para sa hiniling na estadistika.",
+ "supportedlanguages": "Tinatangkilik na mga wika",
+ "supportedlanguages-summary": "Nagpapakita ang pahinang ito ng isang talaan ng lahat ng tinatangkilik na mga wika ng {{SITENAME}},\nkasama ang mga pangalan ng mga tagapagsalinwikang gumagawa sa wikang iyon.\nKung mas malaki ang anyo ng pangalan ng tagapagsalinwika, mas marami na ang mga pagbabagong naiambag ng tagapagsalinwika.\nAng kulay ng salungguhit ay nagpapahiwatig kung kailan huling naging masigla rito ang isang tagapagsalinwika.",
+ "supportedlanguages-colorlegend": "Alamat para sa kulay: Huling salinwika $1 mga araw na ang nakalilipas.",
+ "supportedlanguages-portallink": "[$1] $2 - $3",
+ "supportedlanguages-portallink-nocldr": "[$1] $2",
+ "supportedlanguages-translators": "{{PLURAL:$2|Tagapagsalinwika|Mga tagapagsalinwika}}: $1",
+ "supportedlanguages-recenttranslations": "kamakailang mga pagsasalinwika",
+ "supportedlanguages-count": "$1 {{PLURAL:$1|wika|mga wika}} sa kabuoan.",
+ "supportedlanguages-activity": "$1: $2 {{PLURAL:$2|pagbabago|mga pagbabago}} - huling pagbago $3 {{PLURAL:$3|araw|mga araw}} na ang nakalilipas",
+ "translate-save": "Sagipin ($1)",
+ "translate-jssti-add": "Idagdag sa talaan",
+ "managemessagegroups": "Pamamahala ng pangkat ng mensahe",
+ "translate-smg-notallowed": "Hindi ka pinapahintulutang isakatuparan ang galaw na ito.",
+ "translate-smg-nochanges": "Walang mga pagbabagong maisasagawa.",
+ "translate-smg-submit": "Ipasa ang mga pagbabago para sa pagsasagawa",
+ "translate-smg-submitted": "Naisapanahon na ang mga kahulugan ng mensahe. Isinasagawa na ang mga pagbabago sa may likuran.",
+ "translate-smg-left": "Nilalaman ng mensahe sa loob ng wiki",
+ "translate-smg-right": "Parating na mga pagbabago",
+ "translate-manage-import-diff": "Mensahe $1 | Mga galaw: $2",
+ "translate-manage-import-new": "Bagong mensahe $1",
+ "translate-manage-import-deleted": "Nabura ang mensaheng $1",
+ "translate-manage-action-import": "Angkatin",
+ "translate-manage-action-conflict": "Inangkat at malabo",
+ "translate-manage-action-ignore": "Huwag pansinin",
+ "translate-manage-action-fuzzy": "Mga salinwikang inangkat at malabo",
+ "translate-manage-nochanges": "Walang mga pagbabago sa mga pagbibigay-kahulugan ng mensahe para sa pangkat na ito.",
+ "translate-manage-nochanges-other": "Walang mga pagbabago para sa wikang ito.\nGamitin ang kawing sa ibaba upang maibalik ang tanawin ng mga detalye ng pangkat.",
+ "translate-manage-inconsistent": "Nakapansin ng kataliwasan sa kahilingan.\nPakisuri para sa mga pagbabago at subukan uli.\nMga detalye: $1.",
+ "translate-manage-toolong": "Lumampas na sa pinakamataas na panahon ng pagsasagawa na $1 {{PLURAL:$1|segundo|mga segundo}}.\nMangyaring ipasang muli ang pormularyo upang magpatuloy sa pagsasagawa.",
+ "translate-manage-import-summary": "Nag-aangkat ng isang bagong bersyon mula sa pinagmumulang nasa labas",
+ "translate-manage-conflict-summary": "Nag-aangkat ng isang bagong bersyon mula sa pinagmumulang nasa labas.\nPakisuri.",
+ "translate-manage-fuzzy-summary": "Nabago na ang kahulugan ng mensahe",
+ "translate-manage-submit": "Isakatuparan",
+ "translate-manage-intro-other": "Nasa ibaba ang talaan ng mga pagbabago sa salinwika sa wikang $1.\nPakisuri ang mga pagbabago at pumili ng galaw na nais mong gawin para sa bawat salinwika.\nKung pinili mong huwag pansinin ang mga pagbabago, pangingibabawan sila sa susunod na pagluluwas.",
+ "translate-manage-import-ok": "Inangkat na bagong bersyon ng pahinang $1.",
+ "translate-manage-import-done": "Lahat nagawa na!",
+ "importtranslations": "Mag-angkat ng mga salinwika",
+ "translate-import-from-local": "Karga ng katutubong talaksan:",
+ "translate-import-load": "Ikarga ang talaksan",
+ "translate-import-err-dl-failed": "Hindi nasalok ang talaksang: $1",
+ "translate-import-err-ul-failed": "Hindi matagumpay ang pagkarga ng talaksan",
+ "translate-import-err-invalid-title": "Hindi tanggap ang ibinigay na pangalan ng talaksang <nowiki>$1</nowiki>.",
+ "translate-import-err-no-such-file": "Hindi umiiral o hindi pa naikakargang nakaukol dito ang talaksang <nowiki>$1</nowiki>.",
+ "translate-import-err-stale-group": "Hindi umiiral ang pangkat ng mensahe na kinaaaniban ng talaksang ito.",
+ "translate-import-err-no-headers": "Ang talaksang ay isang hindi isang talaksang Gettext may mabuting anyo na pangkaanyuhang dugtong na Isalinwika:\nHindi natukoy ang pangkat at wika mula sa mga paulo ng talaksan.",
+ "translate-import-err-warnings": "Hindi mabuti ang pagkakabuo ng talaksan.\nTiyaking hindi tatanggalin ng patnugot mo ang mga lugar ng msgctxt.\nMga detalye: $1",
+ "translate-js-summary": "Buod:",
+ "translate-js-save": "Itala",
+ "translate-js-next": "Susunod na sasagipin at bubuksan",
+ "translate-js-nonext": "Ito ang huling mensahe sa pahinang ito.",
+ "translate-js-skip": "Lumaktaw papunta sa susunod",
+ "translate-js-save-failed": "Nabigo ang pagsagip. Mangyaring paki-ulat ang kamaliang ito.",
+ "translate-js-history": "Kasaysayan ng salinwika",
+ "translate-js-support": "Itanong ang katanungan",
+ "translate-js-support-title": "Humingi ng tulong kung walang sapat na kabatiran upang maisalinwika ng wasto ang mensaheng ito.",
+ "translate-js-support-unsaved-warning": "Mayroon kang mga salinwikang hindi pa nasasagip.",
+ "translate-gs-pos": "Pos.",
+ "translate-gs-code": "Kodigo",
+ "translate-gs-continent": "Kontinente",
+ "translate-gs-speakers": "Mga tagapagsalita",
+ "translate-gs-score": "Puntos",
+ "translate-gs-multiple": "Maramihan",
+ "translate-gs-count": "Bilang",
+ "translate-gs-total": "Kabuoan",
+ "translate-gs-avgscore": "Karaniwang puntos",
+ "translate-documentation-language": "Dokumentasyon ng mensahe",
+ "translate-searchprofile": "Mga salinwika",
+ "translate-searchprofile-tooltip": "Maghanap mula sa lahat ng mga salinwika",
+ "translate-search-languagefilter": "Salain ayon sa wika:",
+ "translate-search-nofilter": "Walang pagsasala",
+ "translate-messagereview-submit": "Tanggapin",
+ "translate-messagereview-progress": "Tinatanggap...",
+ "translate-messagereview-failure": "Tinatanggap... nabigo: $1",
+ "translate-messagereview-done": "Tinanggap",
+ "translate-messagereview-reviews": "Tinanggap ng {{PLURAL:$1|isang tagagamit|$1 mga tagagamit}}",
+ "translate-messagereview-reviewswithyou": "Tinanggap {{PLURAL:$1|mo|ng $1 mga tagagamit na kabilang ka}}",
+ "api-error-invalidrevision": "Hindi natagpuan ang salinwika",
+ "api-error-unknownmessage": "Hindi natagpuan ang mensahe",
+ "api-error-fuzzymessage": "Minarkahan ang salinwika bilang malabo",
+ "api-error-owntranslation": "Hindi mo maaaring tanggapin ang sarili mong mga pagsasalinwika",
+ "translate-messagereview-no-fuzzy": "Hindi maaaring tanggapin ang mga salinwikang malabo.",
+ "translate-messagereview-no-own": "Hindi mo maaaring tanggapin ang sarili mong mga pagsasalinwika.",
+ "translate-messagereview-doit": "Tanggapin ang salinwikang ito bilang isang wastong pagsasalinwika.",
+ "group-translate-proofr.css": "/* Ang inilagay na Mga Pilas ng Estilong Lumalagaslas (Cascading Style Sheets o CSS) dito ay makakaapekto lamang sa mga manunuri ng salinwika */",
+ "group-translate-proofr.js": "/* Ang JavaScript o JS na inilagay dito ay makakaapekto lamang sa mga manunuri ng salinwika */",
+ "log-name-translationreview": "Tala ng pagsuri ng salinwika",
+ "log-description-translationreview": "Tala ng lahat ng mga pagsusuri ng mga salinwika at mga pangkat ng mensahe.",
+ "logentry-translationreview-message": "{{GENDER:$2|Tinanggap}} ni $1 ang salinwika ng $3",
+ "translate-workflow-state-": "(huwag itakda)",
+ "translate-workflowstatus": "Katayuan: $1",
+ "translate-workflow-set-do": "Itakda",
+ "translate-workflow-set-doing": "Itinatakda...",
+ "translate-workflow-set-done": "Naitakda na!",
+ "translate-workflow-set-error-alreadyset": "Ang hiniling na katayuan ay kahawig ng kasalukuyang kalagayan.",
+ "translate-workflow-autocreated-summary": "Kusang paglikha ng pahina para sa katayuang $1 ng daloy ng paggawa",
+ "translate-stats-workflow": "Katayuan",
+ "translate-workflowgroup-label": "Mga katayuan ng paggawa",
+ "translate-workflowgroup-desc": "Ipinapakita ng pangkat ng mensaheng ito ang mga katayuan ng paggawa ng salinwika.\nAng mga katayuan ay inilalarawan sa kaayusan ng pagkakaiba na $wgTranslateWorkflowStates.",
+ "translate-dynagroup-recent-label": "Kamakailang mga salinwika",
+ "translate-dynagroup-recent-desc": "Nagpapakita ang pangkat na ito ng mensahe ng lahat ng kamakailang mga pagsasalinwika papunta sa wikang ito.\nPinaka nakakatulong para sa mga gawain ng pagwawasto.",
+ "translate-dynagroup-by": "Salinwikang ginawa ni {{GENDER:$1|$1}}",
+ "translate-dynagroup-byc": "Salinwikang ginawa ni {{GENDER:$1|$1}} ($2)",
+ "translate-dynagroup-last": "Pinakahuling pagbago ni {{GENDER:$1|$1}}",
+ "translate-dynagroup-lastc": "Pinakahuling pagbago ni {{GENDER:$1|$1}} ($2)",
+ "translate-gethelp": "Tulong",
+ "tux-editor-message-tools-delete": "Burahin"
+}
diff --git a/MLEB/Translate/i18n/core/tly.json b/MLEB/Translate/i18n/core/tly.json
new file mode 100644
index 00000000..ff41d95b
--- /dev/null
+++ b/MLEB/Translate/i18n/core/tly.json
@@ -0,0 +1,17 @@
+{
+ "@metadata": {
+ "authors": [
+ "Erdemaslancan",
+ "Гусейн"
+ ]
+ },
+ "translate": "Пегордынијеј",
+ "translate-page-settings-legend": "Кукон",
+ "translate-page-language": "Зывон",
+ "translate-next": "Пешонә сәһифә",
+ "translate-page-edit": "сәрост кардеј",
+ "translate-edit-translation": "Пегордыније",
+ "translate-magic-cm-current": "Есәтнә",
+ "translate-magic-cm-save": "Огәте",
+ "translate-gethelp": "Арајиш"
+}
diff --git a/MLEB/Translate/i18n/core/tr.json b/MLEB/Translate/i18n/core/tr.json
new file mode 100644
index 00000000..cee98f2a
--- /dev/null
+++ b/MLEB/Translate/i18n/core/tr.json
@@ -0,0 +1,373 @@
+{
+ "@metadata": {
+ "authors": [
+ "Cekli829",
+ "Emperyan",
+ "Erdemaslancan",
+ "Gorizon",
+ "Incelemeelemani",
+ "Joseph",
+ "Karduelis",
+ "Meelo",
+ "Rapsar",
+ "Srhat",
+ "Suelnur",
+ "Vito Genovese",
+ "Sayginer"
+ ]
+ },
+ "translate": "Çevir",
+ "translate-desc": "MediaWiki'yi ve ötesini çevirmek için [[Special:Translate|özel sayfa]]",
+ "translate-taskui-view": "Bütün iletileri göster",
+ "translate-taskui-untranslated": "Çevrilmeyen iletileri göster",
+ "translate-taskui-optional": "İsteğe bağlı iletileri göster",
+ "translate-taskui-acceptqueue": "Yalnızca incelendi olarak işaretlenenleri kabul edebilirim",
+ "translate-taskui-reviewall": "Bütün çevirileri incele",
+ "translate-taskui-export-to-file": "Yerel biçimde aktar",
+ "translate-taskui-export-as-po": "Çevrim dışı çeviri aktar",
+ "translate-taction-translate": "Çevir",
+ "translate-taction-proofread": "İncele",
+ "translate-taction-lstats": "Dil istatistikleri",
+ "translate-taction-mstats": "ileti grubu istatistikleri",
+ "translate-taction-export": "Aktar",
+ "translate-taction-disabled": "Bu eylem, bu viki üzerinde devre dışı bırakıldı.",
+ "translate-page-no-such-language": "Belirtilen dil geçersiz.",
+ "translate-page-no-such-group": "Belirtilen grup geçersiz.",
+ "translate-page-disabled": "Bu gruptaki dil çevirileri devre dışı bırakıldı:\nNeden:\n<em>$1</em>",
+ "translate-language-disabled": "Bu dile çeviri devre dışı bırakıldı.",
+ "translate-page-settings-legend": "Ayarlar",
+ "translate-page-group": "Grup",
+ "translate-page-language": "Dil",
+ "translate-page-limit": "Sınır",
+ "translate-page-limit-option": "Sayfada $1 {{PLURAL:$1|ileti|ileti}}yi göster",
+ "translate-submit": "Getir",
+ "translate-page-navigation-legend": "Gezinti",
+ "translate-page-showing": "$3 iletiden $1 ile $2 arasında olanlar gösteriliyor.",
+ "translate-page-showing-all": "$1 adet {{PLURAL:$1|ileti|ileti}} gösteriliyor.",
+ "translate-page-showing-none": "Gösterecek ileti yok.",
+ "translate-page-paging-links": "[ $1 ] [ $2 ]",
+ "translate-next": "İleri",
+ "translate-prev": "Geri",
+ "translate-page-description-legend": "Grup hakkında bilgi",
+ "translate-page-description-hasoptional": "Bu ileti grubu isteğe bağlı iletileri içerir. Dilin özel gereksinimleri olduğunda isteğe bağlı iletiler çevrilmelidir.\nÖzel adların farklı alfabe ile yazılmasında ya da boşluklarda kullanmayınız. $1",
+ "translate-page-description-hasoptional-open": "İsteğe bağlı iletileri göster",
+ "translate-page-edit": "değiştir",
+ "translate-ext-url": "<hr />Web sitesi: $1",
+ "translate-optional": "(isteğe bağlı)",
+ "translate-ignored": "(yok sayılan)",
+ "translate-edit-title": "Düzenle \"$1\"",
+ "translate-edit-definition": "İleti tanımı",
+ "translate-edit-translation": "Çeviri",
+ "translate-edit-contribute": "Katkıda bulun",
+ "translate-edit-no-information": "<em>Bu ileti için tanım bulunmuyor.\nEğer bu iletinin nerede ve nasıl kullanıldığını biliyorsanız, bu ileti için bir tanım ekleyerek diğer çevirmenlere yardımcı olabilirsiniz.</em>",
+ "translate-edit-information": "İleti hakkında bilgi(ler) ($1)",
+ "translate-edit-in-other-languages": "Diğer dillerdeki iletisi",
+ "translate-edit-committed": "Yazılımdaki mevcut çeviriler",
+ "translate-edit-warnings": "Tamamlanmamış çeviriler hakkındaki uyarılar",
+ "translate-edit-tmsugs": "Çeviri belleğinden öneriler",
+ "translate-edit-tmmatch-source": "Çeviri kaynağı metin: $1",
+ "translate-edit-tmmatch": "%$1 benzer",
+ "translate-use-suggestion": "Mevcut çeviriyi bu öneri ile değiştirin.",
+ "translate-edit-nopermission": "İletileri çevirmek için çeviri hakkınız olmalı.",
+ "translate-edit-askpermission": "İzin al",
+ "translate-magic-pagename": "Genişletilmiş MedyaViki çevirisi",
+ "translate-magic-module": "Modül:",
+ "translate-magic-submit": "Getir",
+ "translate-magic-cm-export": "Aktar",
+ "translate-magic-nothing-to-export": "Dışa aktarılacak herhangi bir şey yok.",
+ "translate-magic-cm-to-be": "Yap",
+ "translate-magic-cm-current": "Güncelle",
+ "translate-magic-cm-original": "Orjinal",
+ "translate-magic-cm-comment": "Açıklama :",
+ "translate-magic-cm-save": "Kaydet",
+ "translate-magic-cm-updatedusing": "[[Special:AdvancedTranslate|{{int:Translate-magic-pagename}}]] kullanılarak güncellendi",
+ "translate-magic-cm-savefailed": "Kaydetme başarısız",
+ "translate-magic-special": "Özel sayfa rumuzları",
+ "translate-magic-words": "Sihirli kelimeler",
+ "translate-magic-namespace": "Ad alanı adları",
+ "translate-magic-notsaved": "Değişikliğiniz kaydedilmedi!",
+ "translate-magic-errors": "Lütfen çevirideki aşağıdaki {{PLURAL:$1|hatayı|hataları}} düzeltin:",
+ "translate-magic-saved": "Değişiklikleriniz başarıyla kaydedildi.",
+ "translate-checks-parameters": "Aşağıdaki {{PLURAL:$2|parametre|parametreler}} kullanılmıyor: <strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-parameters-unknown": "Aşağıdaki {{PLURAL:$2|parametre|parametreler}} bilinmiyor: <strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-balance": "{{PLURAL:$2|Parantezin|Parantezlerin}} açılış ve kapanış sayısı eşleşmiyor: <strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links": "Aşağıdaki {{PLURAL:$2|bağlantı|$2 bağlantı}} sorunlu: <strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links-missing": "Aşağıdaki {{PLURAL:$2|bağlantı|$2 bağlantı}} eksik: <strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-xhtml": "Aşağıdaki {{PLURAL:$2|etiketi|etiketleri}} doğru {{PLURAL:$2|olanı|olanları}} ile değiştirin: <strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-plural": "Tanım <nowiki>{{PLURAL:}}</nowiki> kullanıyor, ancak çeviri kullanmıyor.",
+ "translate-checks-pagename": "Tanımdaki ad alanı değiştirilmiş",
+ "translate-checks-format": "Bu çeviri tanıma uymuyor ya da geçersiz söz dizimi var: $1",
+ "translate-checks-escape": "Şu çıkışlar yanlışlıkla olmuş olabilir: <strong>$1</strong>",
+ "translate-checks-parametersnotequal": "Parametre sayısı {{PLURAL:$1|$1}}; {{PLURAL:$2|$2}} olmalı.",
+ "translate-checks-malformed": "<nowiki>$1</nowiki> hatalı biçimlendirilmiş.",
+ "translate-checks-fudforum-syntax": "Bu projede <nowiki>$2</nowiki> yerine <nowiki>$1</nowiki> kullanın.",
+ "translate-pref-nonewsletter": "Bana e-posta haber bülteni gönderme",
+ "translate-pref-editassistlang": "Yardımcı diller:",
+ "prefs-translate": "Çeviri seçenekleri",
+ "translate-pref-editassistlang-help": "Dil kodlarının virgülle ayrılmış listesi.\nBu dillerdeki bir mesajın çevirisi, siz çeviri yaparken görünür.\nVarsayılan dil listesi sizin dilinizw bağlıdır.",
+ "translate-pref-editassistlang-bad": "Listede geçersiz dil kodu:\n<nowiki>$1</nowiki>.",
+ "right-translate": "Çeviri arayüzünü kullanarak değişiklik yapar",
+ "right-translate-manage": "İleti gruplarını yönet",
+ "action-translate-manage": "ileti gruplarını yönet",
+ "right-translate-import": "Çevrimdışı çevirileri içe aktarır",
+ "action-translate-import": "çevrim dışı çevirileri içe aktar",
+ "right-translate-messagereview": "Çevirileri incele",
+ "right-translate-groupreview": "İleti gruplarının iş akışı durumunu değiştir",
+ "translate-rc-translation-filter": "Çevirileri filtrele:",
+ "translate-rc-translation-filter-no": "Hiçbir şey yapma",
+ "translate-rc-translation-filter-only": "Yalnızca çevirileri göster",
+ "translate-rc-translation-filter-filter": "Çevirileri filtrele",
+ "translate-rc-translation-filter-site": "Sadece site iletilerine değişiklikler",
+ "translationstats": "Çeviri istatistikleri",
+ "translate-stats-edits": "Değişiklikler",
+ "translate-stats-users": "Çevirmenler",
+ "translate-stats-registrations": "Kayıtlar",
+ "translate-stats-reviews": "İncelemeler",
+ "translate-stats-reviewers": "İnceleyiciler",
+ "translate-statsf-intro": "Bu formla basit istatistikler oluşturabilirsiniz.\nBütün değerlerin alt ve üst sınırları vardır.",
+ "translate-statsf-options": "Grafik seçenekleri",
+ "translate-statsf-width": "Piksel olarak genişlik:",
+ "translate-statsf-height": "Piksel olarak yükseklik:",
+ "translate-statsf-days": "Gün olarak süre:",
+ "translate-statsf-start": "Başlangıç tarihi:",
+ "translate-statsf-scale": "Veri:",
+ "translate-statsf-scale-months": "Aylar",
+ "translate-statsf-scale-weeks": "Haftalar",
+ "translate-statsf-scale-days": "Günler",
+ "translate-statsf-scale-hours": "Saatler",
+ "translate-statsf-count": "Ölçüm:",
+ "translate-statsf-count-edits": "Değişiklik sayısı",
+ "translate-statsf-count-users": "Etkin çevirmenler",
+ "translate-statsf-count-registrations": "Yeni kullanıcılar",
+ "translate-statsf-count-reviews": "Çeviri değerlendirme",
+ "translate-statsf-count-reviewers": "İnceleyiciler",
+ "translate-statsf-language": "Dil kodlarının virgül ile ayrılmış listesi:",
+ "translate-statsf-group": "Grup kodlarının virgül ile ayrılmış listesi:",
+ "translate-statsf-submit": "Ön izleme",
+ "translate-tag-category": "Çevirilebilir sayfalar",
+ "translate-tag-page-desc": "[[$2|$1]] viki sayfasının çevirisi.",
+ "translate-sidebar-alltrans": "Diğer dillerde",
+ "translations": "Tüm çeviriler",
+ "translations-summary": "Tüm mevcut çevirilerin gösterilmesi için aşağıya bir ileti adı giriniz.",
+ "translate-translations-no-message": "\"$1\", çevrilebilir bir ileti değil",
+ "translate-translations-none": "\"$1\" için hiç çeviri yok",
+ "translate-translations-count": "{{PLURAL:$1|Bir çeviri|$1 çeviri}} bulundu.",
+ "translate-translations-fieldset-title": "İleti",
+ "translate-translations-messagename": "Ad:",
+ "translate-translations-project": "Proje:",
+ "translate-translations-including-no-param": "Lütfen altsayfa parametresinde geçerli bir ileti anahtarı belirtin",
+ "translate-translations-history-short": "t",
+ "languagestats": "Dil istatistikleri",
+ "languagestats-summary": "Bu sayfa tüm ileti grupları için dil çeviri istatistiklerini gösterir.",
+ "languagestats-stats-for": "$1 için çeviri istatistikleri ($2).",
+ "languagestats-recenttranslations": "son çeviriler",
+ "translate-langstats-incomplete": "Bu sayfadaki bazı istatistikler eksik. Daha fazla istatistik almak için lütfen yeniden yükleyin.",
+ "translate-langstats-expand": "genişlet",
+ "translate-langstats-collapse": "daralt",
+ "translate-langstats-expandall": "tümünü genişlet",
+ "translate-langstats-collapseall": "tümünü daralt",
+ "translate-language-code": "Dil kodu",
+ "translate-language-code-field-name": "Dil kodu:",
+ "translate-suppress-complete": "Tamamen çevrilmiş ileti gruplarını gizle",
+ "translate-ls-noempty": "Hiç çevrilmemiş ileti gruplarını gizle",
+ "translate-language": "Dil",
+ "translate-total": "İletiler",
+ "translate-untranslated": "Çevrilmemiş",
+ "translate-percentage-complete": "Tamamlanma",
+ "translate-percentage-fuzzy": "Eski tarihli",
+ "translate-languagestats-overall": "Tüm ileti gruplarıyla beraber",
+ "translate-ls-submit": "İstatistikleri göster",
+ "translate-ls-column-group": "İleti grubu",
+ "translate-mgs-pagename": "ileti grubu istatistikleri",
+ "translate-mgs-fieldset": "Görünüm tercihleri",
+ "translate-mgs-group": "İleti grubu:",
+ "translate-mgs-nocomplete": "Çevirisi tamamlanmış dilleri görüntüleme.",
+ "translate-mgs-noempty": "Hiç çeviri yapılmamış dilleri görüntüleme.",
+ "translate-mgs-submit": "İstatistikleri göster",
+ "translate-mgs-column-language": "Dil",
+ "translate-mgs-totals": "Tüm diller birlikte",
+ "translate-mgs-invalid-group": "Belirtilen grup $1 yok.",
+ "translate-mgs-nothing": "İstenen istatistikler için gösterilecek bir şey yok.",
+ "supportedlanguages": "Desteklenen diller",
+ "supportedlanguages-colorlegend": "Renk göstergesi: Son çeviri $1 gün önce yapıldı",
+ "supportedlanguages-portallink": "[$1] $2 - $3",
+ "supportedlanguages-portallink-nocldr": "[$1] $2",
+ "supportedlanguages-translators": "{{PLURAL:$2|Çevirmen|Çevirmenler}}: $1",
+ "supportedlanguages-recenttranslations": "son çeviriler",
+ "supportedlanguages-count": "Toplamda $1 {{PLURAL:$1|dil|dil}}",
+ "supportedlanguages-activity": "$1: toplam $2 {{PLURAL:$2|değişiklik|değişiklik}} - son değişiklik $3 {{PLURAL:$3|gün|gün}} önce yapıldı",
+ "translate-save": "Kaydet ($1)",
+ "translate-jssti-add": "Listeye ekle",
+ "managemessagegroups": "İleti grubu yönetimi",
+ "translate-smg-notallowed": "Bu eylemi yürütmeye izniniz yok.",
+ "translate-smg-nochanges": "İşlenecek herhangi bir değişiklik yok.",
+ "translate-smg-submit": "Değişiklikleri işlemek için gönder",
+ "translate-smg-submitted": "İleti tanımları güncellendi. Değişiklikler arka planda işleniyor.",
+ "translate-smg-more": "Bu değişiklikleri gönderdikten sonra işlemek için daha fazla değişiklik olacak.",
+ "translate-smg-left": "Vikideki ileti içeriği",
+ "translate-smg-right": "Gelen değişiklikler",
+ "translate-manage-import-diff": "İleti $1 | Eylemler: $2",
+ "translate-manage-import-new": "Yeni ileti: $1",
+ "translate-manage-import-deleted": "Silinmiş ileti: $1",
+ "translate-manage-action-import": "İçe aktar",
+ "translate-manage-action-conflict": "İçe aktar ve hatalı (fuzzy) olarak işaretle",
+ "translate-manage-action-ignore": "Göz ardı et",
+ "translate-manage-action-fuzzy": "Çevirileri içe al ve eski yap",
+ "translate-manage-nochanges": "Bu grup için ileti tanımlarında herhangi bir değişiklik yok.",
+ "translate-manage-nochanges-other": "Bu dil için değişiklik yapılmadı.\nGrup detayları görünümüne dönmek için aşağıdaki bağlantıyı kullanın.",
+ "translate-manage-inconsistent": "İstekte tutarsızlık algılandı.\nLütfen değişiklikleri gözden geçirin ve yeniden deneyin.\nAyrıntılar: $1.",
+ "translate-manage-import-summary": "Dış bir kaynaktan yeni bir sürüm içe aktarılıyor",
+ "translate-manage-conflict-summary": "Dış bir kaynaktan yeni bir sürüm içe aktarılıyor.\nLütfen kontrol edin.",
+ "translate-manage-fuzzy-summary": "İleti tanımı değişti",
+ "translate-manage-submit": "Yürüt",
+ "translate-manage-import-ok": "İçe aktarılan: $1",
+ "translate-manage-import-done": "İçe aktarma tamamlandı!",
+ "importtranslations": "Çevirileri içe aktar",
+ "translate-import-from-local": "Yerel dosya yükleme:",
+ "translate-import-load": "Dosya yükle",
+ "translate-import-err-dl-failed": "Dosya alınamıyor:\n$1",
+ "translate-import-err-ul-failed": "Dosya yükleme başarısız oldu",
+ "translate-import-err-invalid-title": "Sağlanan dosya adı <nowiki>$1</nowiki> geçersiz.",
+ "translate-import-err-no-such-file": "<nowiki>$1</nowiki> dosyası mevcut değil ya da yerel olarak yüklenmiş.",
+ "translate-import-err-stale-group": "Bu dosyanın ait olduğu ileti grubu mevcut değil.",
+ "translate-import-err-no-headers": "Dosya Çeviri eklentisi biçiminde iyi biçimlendirilmiş bir Gettext dosyası değil:\nİleti grubu ve dil dosya başlığından belirlenemiyor.",
+ "translate-import-err-warnings": "Bu dosya iyi biçimlendirilmemiş.\nDüzenleyicinizin msgctxt alanlarını çıkarmadığından emin olun.\nAyrıntılar: $1",
+ "translate-js-summary": "Açıklama:",
+ "translate-js-save": "Kaydet",
+ "translate-js-next": "Kaydet ve sonrakini aç",
+ "translate-js-nonext": "Bu, bu sayfadaki son iletiydi.",
+ "translate-js-skip": "Sonrakine geç",
+ "translate-js-save-failed": "Kaydetme başarısız oldu. Lütfen bu hatayı bildirin.",
+ "translate-js-history": "Çeviri geçmişi",
+ "translate-js-support": "Soru sor",
+ "translate-js-support-unsaved-warning": "Kaydedilmemiş çevirileriniz var.",
+ "translate-gs-pos": "Kon",
+ "translate-gs-code": "Kod",
+ "translate-gs-continent": "Kıta",
+ "translate-gs-speakers": "Konuşanlar",
+ "translate-gs-score": "Skor",
+ "translate-gs-multiple": "Çoklu",
+ "translate-gs-count": "Sayı",
+ "translate-gs-total": "Toplam",
+ "translate-gs-avgscore": "Ort. skor",
+ "translate-documentation-language": "İleti belgelemesi",
+ "translate-searchprofile": "Çeviriler",
+ "translate-searchprofile-tooltip": "Tüm çevirilerde ara",
+ "translate-search-languagefilter": "Dile göre filtre uygula:",
+ "translate-search-nofilter": "Filtre yok",
+ "translate-messagereview-submit": "\"İncelendi\" olarak işaretle",
+ "translate-messagereview-progress": "\"İncelendi\" olarak işaretleniyor...",
+ "translate-messagereview-failure": "\"İncelendi\" olarak işaretleme başarısız oldu: $1",
+ "translate-messagereview-done": "İncelendi",
+ "translate-messagereview-reviews": "{{PLURAL:$1|Bir kullanıcı|$1 kullanıcı}} tarafından incelendi",
+ "translate-messagereview-reviewswithyou": "{{PLURAL:$1|Sizin tarafınızdan|Siz dahil $1 kullanıcı tarafından}} incelendi",
+ "api-error-invalidrevision": "Çeviri bulunamadı",
+ "api-error-unknownmessage": "İleti bulunamadı",
+ "api-error-fuzzymessage": "Çeviri belirsiz olarak işaretlenmiş",
+ "api-error-owntranslation": "Kendi çevirilerinizi incelendi olarak işaretleyemezsiniz",
+ "translate-messagereview-no-fuzzy": "Eski çeviriler gözden geçirilmiş olarak işaretlenemez.",
+ "translate-messagereview-no-own": "Kendi çevirilerinizi gözden geçirilmiş olarak işaretleyemezsiniz.",
+ "translate-messagereview-doit": "Bu çeviriyi gözden geçirilmiş olarak işaretle.",
+ "log-name-translationreview": "Çeviri gözden geçirme günlüğü",
+ "group-translate-sandboxed": "Onaylanmamış çevirmenler",
+ "group-translate-sandboxed-member": "{{GENDER:$1|onaylanmamış çevirmen}}",
+ "translate-workflow-state-": "(ayarla)",
+ "translate-workflowstatus": "Durum: $1",
+ "translate-workflow-set-do": "Ayarla",
+ "translate-workflow-set-doing": "Ayarlanıyor...",
+ "translate-workflow-set-done": "Ayarla!",
+ "translate-stats-workflow": "Durum",
+ "translate-workflowgroup-label": "İş akışı durumları",
+ "translate-dynagroup-recent-label": "Son çeviriler",
+ "translate-dynagroup-recent-desc": "Bu ileti grubu, bu dildeki bütün son çevirileri gösterir.\nGörevleri incelemek için çok kullanışlıdır.",
+ "translate-dynagroup-additions-label": "Son eklenenler",
+ "translate-dynagroup-by": "{{GENDER:$1|$1}} tarafından yapılan çeviri",
+ "translate-dynagroup-byc": "{{GENDER:$1|$1}} ($2) tarafından yapılan çeviri",
+ "translate-dynagroup-last": "Son değişiklik {{GENDER:$1|$1}} tarafından yapıldı",
+ "translate-dynagroup-lastc": "Son değişiklik {{GENDER:$1|$1}} ($2) tarafından yapıldı",
+ "translate-gethelp": "Yardım",
+ "translate-msggroupselector-projects": "İleti grubu",
+ "translate-msggroupselector-search-placeholder": "Grupları ara",
+ "translate-msggroupselector-search-all": "Hepsi",
+ "translate-msggroupselector-search-recent": "Son",
+ "translate-msggroupselector-view-subprojects": "$1 {{PLURAL:$1|alt grup|alt grup}}",
+ "tux-languageselector": "Şu dile çevir:",
+ "tux-tab-all": "Hepsi",
+ "tux-tab-untranslated": "Çevrilmemiş",
+ "tux-tab-outdated": "Eski tarihli",
+ "tux-tab-translated": "Çevrilmiş",
+ "tux-tab-unproofread": "İncelenmemiş",
+ "tux-edit": "Düzenle",
+ "tux-status-optional": "İsteğe Bağlı",
+ "tux-status-fuzzy": "Eski tarihli",
+ "tux-status-proofread": "İncelendi",
+ "tux-status-translated": "Çevrildi",
+ "tux-status-saving": "Kaydediliyor...",
+ "tux-status-unsaved": "Kaydedilmedi",
+ "tux-editor-placeholder": "Çeviriniz",
+ "tux-editor-paste-original-button-label": "Kaynak metni yapıştır",
+ "tux-editor-discard-changes-button-label": "Değişiklikleri çıkar",
+ "tux-editor-save-button-label": "Çeviriyi kaydet",
+ "tux-editor-skip-button-label": "Sonrakine geç",
+ "tux-editor-cancel-button-label": "İptal",
+ "tux-editor-confirm-button-label": "Çeviriyi onayla",
+ "tux-editor-shortcut-info": "Kaydetmek için \"$1\"; bir sonraki iletiye geçmek için \"$2\" yapın",
+ "tux-editor-edit-desc": "Belgelemeyi düzenle",
+ "tux-editor-add-desc": "Belgeleme ekle",
+ "tux-editor-suggestions-title": "Öneriler",
+ "tux-editor-in-other-languages": "Diğer dillerde",
+ "tux-editor-need-more-help": "Daha fazla yardıma mı ihtiyacınız var?",
+ "tux-editor-ask-help": "Daha fazla bilgi için sorun",
+ "tux-editor-tm-match": "%$1 benzer",
+ "tux-warnings-more": "{{PLURAL:$1|$1 daha}}",
+ "tux-warnings-hide": "gizle",
+ "tux-editor-save-failed": "Çeviri kaydetme başarısız oldu: $1",
+ "tux-editor-n-uses": "$1 {{PLURAL:$1|kere|kere}} kullanıldı",
+ "tux-editor-message-desc-more": "Daha fazla",
+ "tux-editor-clear-translated": "Çevrilenleri gizle",
+ "tux-editor-proofreading-mode": "İncele",
+ "tux-editor-translate-mode": "Liste",
+ "tux-editor-proofreading-hide-own-translations": "Çevirilerini gizle",
+ "tux-editor-proofreading-show-own-translations": "Çevirilerini göster",
+ "tux-proofread-action-tooltip": "İncelendi olarak işaretle",
+ "tux-proofread-edit-label": "Düzenle",
+ "tux-editor-page-mode": "Sayfa",
+ "tux-editor-outdated-warning": "Bu çevirinin güncellenmesi gerekebilir.",
+ "tux-editor-outdated-warning-diff-link": "Farkları göster",
+ "tux-editor-doc-editor-placeholder": "İleti belgeleme",
+ "tux-editor-doc-editor-save": "Belgelemeyi kaydet",
+ "tux-editor-doc-editor-cancel": "İptal",
+ "tux-messagetable-more-messages": "$1 tane daha {{PLURAL:$1|ileti|ileti}}",
+ "tux-messagetable-loading-messages": "{{PLURAL:$1|İleti|İletiler}} yükleniyor...",
+ "tux-message-filter-placeholder": "Filtre listesi",
+ "tux-message-filter-result": "\"$2\" için $1 {{PLURAL:$1|sonuç|sonuç}} bulundu",
+ "tux-message-filter-advanced-button": "Gelişmiş arama",
+ "tux-message-filter-optional-messages-label": "İsteğe bağlı iletiler",
+ "tux-proofread-translated-by-self": "Sizin tarafınızdan çevrildi",
+ "tux-empty-list-all": "Bu ileti grubu boştur.",
+ "tux-empty-list-all-guide": "Çevirmek için farklı bir ileti grubu seçin",
+ "tux-translate-page-no-such-group": "'''Belirtilen grup mevcut değil.''' Farklı bir ileti grubu seçiniz.",
+ "tux-empty-list-translated": "Hiçbir çevrilmiş ileti yok",
+ "tux-empty-list-translated-guide": "Çeviriye yardımcı olabilirsiniz",
+ "tux-empty-list-translated-action": "Çevir",
+ "tux-empty-show-optional-messages": "İsteğe bağlı iletileri göster",
+ "tux-empty-no-outdated-messages": "Eski tarihli ileti yok",
+ "tux-empty-you-can-help-providing": "Yeni çeviriler sağlayarak yardımcı olabilirsiniz",
+ "tux-empty-nothing-new-to-proofread": "İncelemek için yeni bir şey yok",
+ "tux-empty-you-can-review-already-proofread": "Başkaları tarafından incelenen çevirileri inceleyebilirsiniz.",
+ "tux-empty-list-other": "Çevirecek bir şey yok",
+ "tux-empty-list-other-guide": "Mevcut çevirileri incelemede yardımcı olabilirsin",
+ "tux-empty-list-other-action": "Çevirileri incele",
+ "tux-empty-list-other-link": "Bütün iletileri göster",
+ "tux-editor-close-tooltip": "Kapat",
+ "tux-editor-expand-tooltip": "Genişlet",
+ "tux-editor-collapse-tooltip": "Daralt",
+ "tux-editor-message-tools-history": "Geçmiş",
+ "tux-editor-message-tools-delete": "Sil",
+ "tux-editor-message-tools-translations": "Bütün çeviriler",
+ "tux-editor-loading": "Yükleniyor...",
+ "translate-search-more-languages-info": "$1 tane daha {{PLURAL:$1|dil|dil}}",
+ "translate-statsbar-tooltip": "%$1 çevrildi, %$2 incelendi",
+ "translate-statsbar-tooltip-with-fuzzy": "%$1 çevrildi, %$2 incelendi, %$3 eski",
+ "translate-search-more-groups-info": "$1 tane daha {{PLURAL:$1|grup|grup}}"
+}
diff --git a/MLEB/Translate/i18n/core/tru.json b/MLEB/Translate/i18n/core/tru.json
new file mode 100644
index 00000000..12e676ff
--- /dev/null
+++ b/MLEB/Translate/i18n/core/tru.json
@@ -0,0 +1,10 @@
+{
+ "@metadata": {
+ "authors": [
+ "Ariyo"
+ ]
+ },
+ "translate-page-language": "Leşono",
+ "translate-language": "Leşono",
+ "translate-mgs-column-language": "Leşono"
+}
diff --git a/MLEB/Translate/i18n/core/tt-cyrl.json b/MLEB/Translate/i18n/core/tt-cyrl.json
new file mode 100644
index 00000000..2b770373
--- /dev/null
+++ b/MLEB/Translate/i18n/core/tt-cyrl.json
@@ -0,0 +1,91 @@
+{
+ "@metadata": {
+ "authors": [
+ "Ajdar",
+ "Himiq Dzyu",
+ "Timming",
+ "Ильнар"
+ ]
+ },
+ "translate": "Тәрҗемә",
+ "translate-desc": "[[Special:Translate|Махсус бит]] MediaWiki һәм башка программлар тәрҗемә итү өчен",
+ "translate-page-no-such-group": "Төркем дөрес күрсәтелмәгән",
+ "translate-page-disabled": "Әлеге бүлектә бу тел буенча тәрҗемәләр ябылган. Сәбәбе:\n\n<em>$1</em>",
+ "translate-page-settings-legend": "Көйләнмәләр",
+ "translate-page-group": "Төркем",
+ "translate-page-language": "Тел",
+ "translate-page-limit": "Чикләү",
+ "translate-page-limit-option": "Биткә $1 {{PLURAL:$1|мәкалә}} күрсәтү",
+ "translate-submit": "Чыгарырга",
+ "translate-page-navigation-legend": "Күчешлек",
+ "translate-page-showing": "$3 мәкалә арасыннан $1 алып $2 кадәр күрсәтелгән.",
+ "translate-page-showing-all": "$1 {{PLURAL:$1|хәбәр}} чыгарылгын.",
+ "translate-page-showing-none": "Күрсәтү өчен хәбәрләр юк.",
+ "translate-next": "киләсе бит",
+ "translate-prev": "алдагы бит",
+ "translate-page-description-legend": "Төркем турында мәгълүмат",
+ "translate-edit-definition": "Мәкаләнең тасвирламасы",
+ "translate-edit-contribute": "үзгәртү",
+ "translate-edit-information": "«$2» мәкаләсе турында мәгълүмат ($1)",
+ "translate-edit-in-other-languages": "«$1» мәкаләсе башка телләрдә",
+ "translate-edit-committed": "Әлеге тәрҗемә",
+ "translate-edit-warnings": "Тулы булмаган тәрҗемәләр турында искәрмә",
+ "translate-edit-tmsugs": "Тәрҗемәләр хәтереннән тәкъдим",
+ "translate-edit-tmmatch": "$1% туры килү",
+ "translate-magic-pagename": "MediaWiki-ны тулысынча тәрҗемә итү",
+ "translate-magic-module": "Модуль:",
+ "translate-magic-submit": "Чыгарырга",
+ "translate-magic-cm-export": "Чыгару",
+ "translate-magic-nothing-to-export": "Бернәрсәдә чыгармаска",
+ "translate-magic-cm-to-be": "Булырга тиеш",
+ "translate-magic-cm-current": "Хәзерге",
+ "translate-magic-cm-original": "Алдагы",
+ "translate-magic-cm-comment": "Искәрмә:",
+ "translate-magic-cm-save": "Саклау",
+ "translate-magic-cm-updatedusing": "[[Special:AdvancedTranslate|{{int:Translate-magic-pagename}}]] ярдәмендә яңартылган",
+ "translate-magic-cm-savefailed": "Саклап булмады",
+ "translate-magic-special": "Махсус битләрнең атамалары",
+ "translate-magic-words": "Могҗизалы сүзләр",
+ "translate-magic-namespace": "Исемнәр мәйданы",
+ "translate-magic-notsaved": "Сезнең үзгәртү сакланмаган!",
+ "translate-magic-errors": "Зинһар, тәрҗемәдәге {{PLURAL:$1|әлеге хатаны}} төзәтегез:",
+ "translate-magic-saved": "Кертелгән үзгәртүләр сакланды.",
+ "translate-checks-parameters": "{{PLURAL:$2|1=Әлеге параметр кулланылмый|Әлеге параметрлар кулланылмый}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-parameters-unknown": "{{PLURAL:$2|1=Билгесез параметр|Билгесез параметрлар}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-pref-nonewsletter": "Минем электрон почтага мәгълүмати бюллетень җибәрмәскә",
+ "translate-sidebar-alltrans": "Башка телләрдә",
+ "translations": "Барлык тәрҗемәләр",
+ "translate-translations-fieldset-title": "Хәбәр",
+ "translate-translations-messagename": "Исем:",
+ "translate-translations-project": "Проект:",
+ "translate-translations-history-short": "т",
+ "languagestats": "Тел статистикасы",
+ "languagestats-summary": "Бу биттә бирелгән тел өчен тәрҗемәләр статистикасы бирелә.",
+ "languagestats-stats-for": "$1 ($2) өчен тәрҗемә статистикасы.",
+ "languagestats-recenttranslations": "яңа тәрҗемәләр",
+ "translate-langstats-incomplete": "Бу биттәге кайбер статистик мәгълүматлар тулы түгел. Тулы мәгълүматлар алыр өчен, битне яңартыгыз (обновите).",
+ "translate-langstats-expand": "ачу",
+ "translate-langstats-collapse": "ябу",
+ "translate-langstats-expandall": "барысын да ачу",
+ "translate-langstats-collapseall": "барысын да ябу",
+ "translate-language-code": "Телнең коды",
+ "translate-language-code-field-name": "Телнең коды:",
+ "translate-suppress-complete": "Тулысынча тәрҗемә ителгән төркемнәрне күрсәтмәскә",
+ "translate-ls-noempty": "Тулысынча тәрҗемә ителмәгән хәбәр төркемнәрен күрсәтмәскә.",
+ "translate-language": "Тел",
+ "translate-total": "Хат",
+ "translate-untranslated": "Тәрҗемә ителмәгәннәре",
+ "translate-percentage-complete": "Башкарылган эш",
+ "translate-percentage-fuzzy": "Искергән битләр",
+ "translate-languagestats-overall": "Барлык төркемнәрнең хәбәрләре",
+ "supportedlanguages": "Кулланылучы телләр",
+ "supportedlanguages-translators": "{{PLURAL:$2|1=Тәрҗемәче|Тәрҗемәчеләр}}: $1",
+ "supportedlanguages-recenttranslations": "яңа тәрҗемәләр",
+ "translate-save": "Саклау ($1)",
+ "translate-jssti-add": "Исемлеккә өстәү",
+ "translate-js-next": "Сакларга һәм яңасын ачарга",
+ "translate-js-nonext": "Әлеге биттәге бу соңгы мәкалә иде.",
+ "translate-js-skip": "Киләсе биткә күчү",
+ "translate-js-history": "Тәрҗемә тарихы",
+ "translate-js-support": "Сорау бирү"
+}
diff --git a/MLEB/Translate/i18n/core/tzm.json b/MLEB/Translate/i18n/core/tzm.json
new file mode 100644
index 00000000..52731268
--- /dev/null
+++ b/MLEB/Translate/i18n/core/tzm.json
@@ -0,0 +1,28 @@
+{
+ "@metadata": {
+ "authors": [
+ "Tifinaghes"
+ ]
+ },
+ "translate": "ⵜⴰⵙⵓⵖⵍⵜ",
+ "translate-page-language": "ⵜⵓⵜⵍⴰⵢⵜ",
+ "translate-rc-translation-filter-no": "ⴰⵡⵔ ⵜⵙⴽⵔⴷ ⴰⵎⵢⴰ",
+ "translate-stats-users": "ⵉⵎⵙⵓⵖⵍⵏ",
+ "translate-stats-registrations": "ⵉⵣⵎⵎⴻⵎⵏ",
+ "translate-statsf-scale-months": "ⴰⵢⵢⵓⵔⵏ",
+ "translate-statsf-scale-weeks": "ⵉⵎⴰⵍⴰⵙⵙⵏ",
+ "translate-statsf-scale-days": "ⵓⵙⵙⴰⵏ",
+ "translate-statsf-scale-hours": "ⵜⵉⵙⵔⴰⴳⵉⵏ",
+ "translate-sidebar-alltrans": "ⵙ ⵜⵓⵜⵍⴰⵢⵉⵏ ⵢⴰⴹⵏ (ⵏⵏⵉⴹⵏ)",
+ "translations": "ⵎⴰⵕⵕⴰ ⵜⵉⵙⵓⵖⴰⵍⵉⵏ",
+ "translate-translations-project": "ⴰⵙⵏⴼⴰⵔ:",
+ "translate-language": "ⵜⵓⵜⵍⴰⵢⵜ",
+ "translate-total": "ⵜⵉⴱⵔⴰⵜⵉⵏ",
+ "translate-ls-column-group": "ⵜⴰⴱⵔⴰⵜ ⵏ ⵜⵔⴰⴱⴱⵓⵜ",
+ "translate-mgs-group": "ⵜⴰⴱⵔⴰⵜ ⵏ ⵜⵔⴰⴱⴱⵓⵜ:",
+ "translate-mgs-column-language": "ⵜⵓⵜⵍⴰⵢⵜ",
+ "translate-save": "ⵣⵎⵎⴻⵎ ($1)",
+ "translate-manage-import-new": "ⵜⴰⴱⵔⴰⵜ ⵜⴰⵎⴰⵢⵏⵓⵜ $1",
+ "translate-gs-speakers": "ⵉⵎⵙⴰⵡⴰⵍⵏ",
+ "translate-msggroupselector-search-recent": "ⵉⵏⴳⴳⵓⵔⴰ"
+}
diff --git a/MLEB/Translate/i18n/core/ug-arab.json b/MLEB/Translate/i18n/core/ug-arab.json
new file mode 100644
index 00000000..ce8f5e5f
--- /dev/null
+++ b/MLEB/Translate/i18n/core/ug-arab.json
@@ -0,0 +1,292 @@
+{
+ "@metadata": {
+ "authors": [
+ "Alfredie",
+ "Sahran"
+ ]
+ },
+ "translate": "تەرجىمە",
+ "translate-desc": "MediaWiki ۋە باشقا يۇمشاق دېتاللارنى تەرجىمە قىلىدىغان [[Special:Translate|ئالاھىدە بەت]]",
+ "translate-taskui-view": "ھەممە ئۇچۇرنى كۆرسەت",
+ "translate-taskui-untranslated": "تەرجىمە قىلىنمىغان ئۇچۇرلارنى كۆرسەت",
+ "translate-taskui-optional": "تاللاشچان ئۇچۇرلارنى كۆرسەت",
+ "translate-taskui-acceptqueue": "مەن قوشۇلغان ئۇچۇرلارلا",
+ "translate-taskui-reviewall": "ھەممە تەرجىمىنى كۆزدىن كەچۈر",
+ "translate-taskui-export-to-file": "ئەسلى پىچىمىدا چىقار",
+ "translate-taskui-export-as-po": "تورسىز تەرجىمە ئۈچۈن چىقار",
+ "translate-taction-translate": "تەرجىمە",
+ "translate-taction-proofread": "تۈزەت",
+ "translate-taction-lstats": "تىل سىتاتىستىكىسى",
+ "translate-taction-mstats": "ئۇچۇر گۇرۇپپا سىتاتىستىكىسى",
+ "translate-taction-export": "چىقار",
+ "translate-taction-disabled": "بۇ مەشغۇلات مەزكۇر ۋىكىدا چەكلەنگەن",
+ "translate-page-no-such-language": "بەلگىلەنگەن تىل ئىناۋەتسىز.",
+ "translate-page-no-such-group": "بەلگىلەنگەن گۇرۇپپا ئىناۋەتسىز.",
+ "translate-page-disabled": "بۇ تىلنىڭ مەزكۇر گۇرۇپپىدىكى تەرجىمە ئىشلىرى چەكلەندى.\nسەۋەبى:\n\n<em>$1</em>",
+ "translate-language-disabled": "بۇ تىلدا تەرجىمە قىلىش چەكلەنگەن.",
+ "translate-page-settings-legend": "تەڭشەكلەر",
+ "translate-page-group": "گۇرۇپپا",
+ "translate-page-language": "تىل",
+ "translate-page-limit": "چەك",
+ "translate-page-limit-option": "ھەر بەتتە $1 {{PLURAL:$1|ئۇچۇر|ئۇچۇر}}",
+ "translate-submit": "تۇت",
+ "translate-page-navigation-legend": "يولباشچى",
+ "translate-page-showing": "$3 نىڭ $1 دىن $2 غىچە ئۇچۇرلىرىنى كۆرسەت",
+ "translate-page-showing-all": "$1 {{PLURAL:$1|ئۇچۇر|ئۇچۇر}} كۆرسەت.",
+ "translate-page-showing-none": "كۆرسىتىدىغان ئۇچۇر يوق.",
+ "translate-next": "كېيىنكى بەت",
+ "translate-prev": "ئالدىنقى بەت",
+ "translate-page-description-legend": "گۇرۇپپا ھەققىدىكى ئۇچۇر",
+ "translate-page-description-hasoptional": "بۇ ئۇچۇر گۇرۇپپىسى تاللاشچان ئۇچۇرنى ئۆز ئىچىگە ئالىدۇ.\nتاللاشچان ئۇچۇر پەقەت تىلىڭىزدا ماقالە يازغاندا بوشلۇق ئىشلەتمىسە، مەخسۇس ئاتالغۇلار تاۋۇش تەرجىمىسىدە يېزىشقا ئوخشاش ئالاھىدە تەلەپ بولغاندىلا ئاندىن تەرجىمە قىلىنىدۇ. $1",
+ "translate-page-description-hasoptional-open": "تاللاشچان ئۇچۇرلارنى كۆرسەت.",
+ "translate-page-edit": "تەھرىر",
+ "translate-ext-url": "<hr />تور بېكەت: $1",
+ "translate-optional": "(تاللاشچان)",
+ "translate-ignored": "(پەرۋا قىلىنمىغان)",
+ "translate-edit-title": "تەھرىر \"$1\"",
+ "translate-edit-definition": "ئۇچۇر ئېنىقلىمىسى",
+ "translate-edit-translation": "تەرجىمىسى",
+ "translate-edit-contribute": "تۆھپە",
+ "translate-edit-no-information": "''بۇ ئۇچۇرنىڭ چۈشەندۈرۈشى يوق.''\n''ئەگەر سىز بۇ ئۇچۇرنىڭ قەيەردە ياكى قانداق ئىشلىتىلىدىغانلىقىنى بىلسىڭىز، بۇ ئۇچۇرنىڭ چۈشەندۈرۈشىنى قوشۇپ باشقا تەرجىمانلارغا ياردەم قىلالايسىز.''",
+ "translate-edit-information": "ئۇچۇر ھەققىدىكى ئۇچۇر ($1)",
+ "translate-edit-in-other-languages": "باشقا تىللاردىكى ئۇچۇرى",
+ "translate-edit-committed": "يۇمشاق دېتالنىڭ نۆۋەتتىكى تەرجىمىسى",
+ "translate-edit-warnings": "تولۇق بولمىغان تەرجىمە ھەققىدىكى ئاگاھلاندۇرۇش",
+ "translate-edit-tmsugs": "تەرجىمە خاتىرىسىنىڭ تەۋسىيىسى",
+ "translate-edit-tmmatch-source": "تەرجىمە ئەسلى تېكىستى: $1",
+ "translate-edit-tmmatch": "$1% ماس كېلىدۇ",
+ "translate-use-suggestion": "نۆۋەتتىكى تەرجىمىنى بۇ تەكلىپ بىلەن ئالماشتۇر",
+ "translate-edit-nopermission": "ئۇچۇرلارنى تەرجىمە قىلىش ھوقۇقىغا ئېرىشىڭ.",
+ "translate-edit-askpermission": "ھوقۇق ئىلتىماسى",
+ "translate-magic-pagename": "كېڭەيتىلگەن MediaWiki تەرجىمە",
+ "translate-magic-module": "بۆلەك:",
+ "translate-magic-submit": "ئېرىىش",
+ "translate-magic-cm-export": "چىقار",
+ "translate-magic-nothing-to-export": "چىقىرىدىغان ھېچنىمە يوق.",
+ "translate-magic-cm-current": "نۆۋەتتىكى",
+ "translate-magic-cm-original": "ئەسلى",
+ "translate-magic-cm-comment": "ئىزاھات:",
+ "translate-magic-cm-save": "ساقلا",
+ "translate-magic-cm-updatedusing": "يېڭىلانغان ئىشلىتىش [[Special:AdvancedTranslate|{{int:Translate-magic-pagename}}]]",
+ "translate-magic-cm-savefailed": "ساقلىيالمىدى",
+ "translate-magic-special": "ئالاھىدە بەت تەخەللۇسى",
+ "translate-magic-words": "سېھىرلىك سۆزلەر",
+ "translate-magic-namespace": "ئات بوشلۇقى ئاتى",
+ "translate-magic-notsaved": "تەھرىرلىگىنىڭىز ساقلانمىدى!",
+ "translate-magic-errors": "تەرجىمىدىكى تۆۋەندىكى {{PLURAL:$1|خاتالىق|خاتالىق}}نى تۈزىتىڭ:",
+ "translate-magic-saved": "ئۆزگەرتىشىڭىز مۇۋەپپەقىيەتلىك ساقلاندى.",
+ "translate-checks-parameters": "تۆۋەندىكى {{PLURAL:$2|پارامېتىر|پارامېتىر}} ئىشلىتىلمىگەن:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-parameters-unknown": "تۆۋەندىكى {{PLURAL:$2|پارامېتىر|پارامېتىر}} يوچۇن:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-balance": "پەرلەشمىگەن بىر {{PLURAL:$2|تىرناق|تىرناق}} بار:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links": "تۆۋەندىكى {{PLURAL:$2|ئۇلانما|$2 ئۇلانما}}دا مەسىلە بار:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links-missing": "تۆۋەندىكى {{PLURAL:$2|پارامېتىر|پارامېتىر}} كەم:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-xhtml": "تۆۋەندىكى {{PLURAL:$2|بەلگە|بەلگە}}نى توغرىسىغا ئالماشتۇرۇڭ:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-plural": "ئەسلى ئۇچۇردا <nowiki>{{PLURAL:}}</nowiki> ئىشلەتكەن ئەمما تەرجىمىدە ئىشلەتمىگەن.",
+ "translate-checks-pagename": "ئات بوشلۇقى ئېنىقلىمىدىن ئۆزگەرتىلدى",
+ "translate-checks-format": "بۇ تەرجىمە ئېنىقلىمىغا بوي سۇنمايدۇ ياكى تىلقۇرما ئىناۋەتسىز: $1",
+ "translate-checks-escape": "تۆۋەندىكى كۆچمە مەنا تاسادىپىي بولۇشى مۇمكىن: <strong>$1</strong>",
+ "translate-checks-parametersnotequal": "ماقالىدىكى پارامېتىر سانى {{PLURAL:$1|$1}}: ئەسلىدە {{PLURAL:$2|$2}}.",
+ "translate-checks-malformed": "<nowiki>$1</nowiki> پىچىمى خاتا.",
+ "translate-checks-fudforum-syntax": "بۇ قۇرۇلۇشتىكى <nowiki>$2</nowiki> نى ئەمەس بەلكى <nowiki>$1</nowiki> نى ئىشلىتىدۇ.",
+ "translate-pref-nonewsletter": "ماڭا ئېلخەت خەۋەرلىرى ئەۋەتمە",
+ "translate-pref-editassistlang": "ياردەمچى تىل:",
+ "prefs-translate": "تەرجىمە تاللانما",
+ "translate-pref-editassistlang-help": "پەش بىلەن ئايرىلغان تىل كودى تىزىمى.\nتەرجىمە قىلىۋاتقان ۋاقتىڭىزدا مۇناسىپ ئۇچۇرنىڭ تەرجىمىسى بۇ تىللاردا كۆرۈنىدۇ.\nكۆڭۈلدىكى تىل تىزىمى تىلىڭىزغا باغلىق.",
+ "translate-pref-editassistlang-bad": "تىزىمدىكى ئىناۋەتسىز تىل كودى:\n<nowiki>$1</nowiki>.",
+ "right-translate": "ئىشلىتىدىغان تەرجىمە ئارايۈزى تەھرىر",
+ "right-translate-manage": "ئۇچۇر گۇرۇپپا باشقۇر",
+ "action-translate-manage": "ئۇچۇر گۇرۇپپىلارنى باشقۇر",
+ "right-translate-import": "تورسىز تەرجىمە ئەكىر",
+ "action-translate-import": "تورسىز تەرجىمەلەرنى ئەكىر",
+ "right-translate-messagereview": "تەرجىمىلەرنى كۆزدىن كەچۈر",
+ "right-translate-groupreview": "ئۇچۇر گۇرۇپپىسىنىڭ ئىش ئېقىمى ھالىتىنى ئۆزگەرت",
+ "translate-rc-translation-filter": "تەرجىمە سۈزگۈچ:",
+ "translate-rc-translation-filter-no": "مەشغۇلات قىلما",
+ "translate-rc-translation-filter-only": "تەرجىمىنىلا كۆرسەت",
+ "translate-rc-translation-filter-filter": "سۈزۈلگەن تەرجىمە",
+ "translate-rc-translation-filter-site": "بېكەت ئۇچۇرىنىلا ئۆزگەرت",
+ "translationstats": "تەرجىمە سىتاتىستىكىسى",
+ "translate-stats-edits": "تەھرىر",
+ "translate-stats-users": "تەرجىمانلار",
+ "translate-stats-registrations": "خەتلىتىش",
+ "translate-stats-reviews": "باھالار",
+ "translate-stats-reviewers": "كۆزدىن كەچۈرگۈچى",
+ "translate-statsf-intro": "بۇ كۆزنەكتە ئاددىي سىتاتىستىكا سانلىق مەلۇماتىنى ھاسىل قىلايسىز.\nھەممە قىممەتلەرنىڭ يۇقىرى تۆۋەن چېكى بار.",
+ "translate-statsf-options": "گىرافىك تاللانما",
+ "translate-statsf-width": "تەڭلىكى پىكسېل:",
+ "translate-statsf-height": "ئېگىزلىكى پىكسېل:",
+ "translate-statsf-days": "كۈندىكى مەلۇم ۋاقىت:",
+ "translate-statsf-start": "باشلانغان چېسلا:",
+ "translate-statsf-scale": "دانىچە چوڭلۇقى:",
+ "translate-statsf-scale-months": "ئاي",
+ "translate-statsf-scale-weeks": "ھەپتە",
+ "translate-statsf-scale-days": "كۈن",
+ "translate-statsf-scale-hours": "سائەت",
+ "translate-statsf-count": "بىرلىك:",
+ "translate-statsf-count-edits": "تەھرىر سانى",
+ "translate-statsf-count-users": "ئاكتىپ تەرجىمانلار",
+ "translate-statsf-count-registrations": "يېڭى ئىشلەتكۈچىلەر",
+ "translate-statsf-count-reviews": "تەرجىمە كۆزدىن كەچۈرۈش",
+ "translate-statsf-count-reviewers": "كۆزدىن كەچۈرگۈچى",
+ "translate-statsf-language": "پەش بىلەن ئايرىلغان تىل تىزىملىك كودى:",
+ "translate-statsf-group": "پەش بىلەن ئايرىلغان گۇرۇپپا تىزىملىك كودى:",
+ "translate-statsf-submit": "ئالدىن كۆزەت",
+ "translate-tag-category": "تەرجىمە قىلىشقا بولىدىغان بەتلەر",
+ "translate-tag-page-desc": "تەرجىمە قىلغان wiki بەت [[$2|$1]].",
+ "translate-sidebar-alltrans": "باشقا تىلاردا",
+ "translations": "ھەممە تەرجىمە",
+ "translations-summary": "ئىشلەتكىلى بولىدىغان ھەممە تەرجىمىنى كۆرۈش ئۈچۈن تۆۋەندە ئۇچۇر ئاتىنى كىرگۈزۈڭ.",
+ "translate-translations-no-message": "\"$1\" تەرجىمە قىلغىلى بولىدىغان ئۇچۇر ئەمەس",
+ "translate-translations-none": "\"$1\" نىڭ تەرجىمىسى يوق",
+ "translate-translations-count": "{{PLURAL:$1|بىر تەرجىمە|$1 تەرجىمە}} تېپىلدى.",
+ "translate-translations-fieldset-title": "ئۇچۇر",
+ "translate-translations-messagename": "ئاتى:",
+ "translate-translations-project": "قۇرۇلۇش:",
+ "translate-translations-including-no-param": "تارماق بەت پارامېتىرىدا ئىناۋەتلىك ئۇچۇر كۇنۇپكىسىدىن بىرنى بەلگىلەڭ",
+ "translate-translations-history-short": "h",
+ "languagestats": "تىل سىتاتىستىكىسى",
+ "languagestats-summary": "بۇ بەتتە نۆۋەتتىكى تىلدا ھەممە قۇرۇلۇش گۇرۇپپىلىرىنىڭ تاماملىنىش ئەھۋالىنى كۆرسىتىلىدۇ.",
+ "languagestats-stats-for": "$1 ($2) نىڭ تەرجىمە سىتاتىستىكىسى.",
+ "languagestats-recenttranslations": "يېقىنقى تەرجىمىلەر",
+ "translate-langstats-incomplete": "بۇ بەتتە بەزى سىتاتىستىكا ئۇچۇرلىرى تولۇق يۈكلەنمىگەن، مەزكۇر بەتنى يېڭىلاپ تېخىمۇ كۆپ سىتاتىستىكا ئۇچۇرىغا ئېرىشىڭ.",
+ "translate-langstats-expand": "ياي",
+ "translate-langstats-collapse": "قاتلا",
+ "translate-langstats-expandall": "ھەممىنى ياي",
+ "translate-langstats-collapseall": "ھەممىنى قاتلا",
+ "translate-language-code": "تىل كودى",
+ "translate-language-code-field-name": ":تىل كودى",
+ "translate-suppress-complete": "تولۇق تەرجىمە قىلىنغان ئۇچۇر گۇرۇپپىسىنى يوشۇر",
+ "translate-ls-noempty": "پەقەت تەرجىمە قىلىنمىغان ئۇچۇر گۇرۇپپىسىنى يوشۇر",
+ "translate-language": "تىل",
+ "translate-total": "ئۇچۇرلار",
+ "translate-untranslated": "تەرجىمە قىلىنمىغان",
+ "translate-percentage-complete": "تاماملاش",
+ "translate-percentage-fuzzy": "زاماندىن قالغان",
+ "translate-languagestats-overall": "ھەممە ئۇچۇر گۇرۇپپىلىرى بىرلىكتە",
+ "translate-ls-submit": "سىتاتىستىكا كۆرسەت",
+ "translate-ls-column-group": "ئۇچۇر گۇرۇپپىسى",
+ "translate-mgs-pagename": "ئۇچۇر گۇرۇپپا سىتاتىستىكىسى",
+ "translate-mgs-fieldset": "مايىللىقنى كۆرسەت",
+ "translate-mgs-group": "ئۇچۇر گۇرۇپپىسى:",
+ "translate-mgs-nocomplete": "تەرجىمىسى تاماملانغان تىللارنى كۆرسەتمە",
+ "translate-mgs-noempty": "ھېچقانداق تەرجىمىسى يوق تىللارنى كۆرسەتمە",
+ "translate-mgs-submit": "سىتاتىستىكا كۆرسەت",
+ "translate-mgs-column-language": "تىل",
+ "translate-mgs-totals": "ھەممە تىللار بىرلىكتە",
+ "translate-mgs-invalid-group": "بەلگىلەنگەن گۇرۇپپا $1 مەۋجۇت ئەمەس.",
+ "translate-mgs-nothing": "ئىلتىماس قىلغان سىتاتىستىكىدىن كۆرسىتىدىغان ھېچنېمە يوق.",
+ "supportedlanguages": "قوللايدىغان تىللار",
+ "supportedlanguages-summary": "بۇ بەتتە {{SITENAME}} قوللايدىغان ھەممە تىللار تىزىمى كۆرسىتىلىدۇ،\nشۇنىڭ بىلەن بىللە شۇ تىلدىكى تەرجىمانلارنىڭ ئىسمىنىمۇ كۆرسىتىدۇ.\nبەزى تەرجىماننىڭ ئاتى چوڭراق كۆرۈنسە ئۇنىڭ تەھرىرلەش تۆھپىسى كۆپ بولىدۇ.\nئاستى سىزىقنىڭ رەڭگى بىر تەرجىماننىڭ بۇ جايدا قانچىلىك ئاكتىپ ئىكەنلىكىنى بىلدۈرىدۇ.",
+ "supportedlanguages-colorlegend": "رەڭنىڭ مىساللىق چۈشەندۈرۈشى: ئاخىرقى تەرجىمە $1 كۈن ئىلگىرى.",
+ "supportedlanguages-translators": "{{PLURAL:$2|تەرجىمان|تەرجىمان}}: $1",
+ "supportedlanguages-recenttranslations": "يېقىنقى تەرجىمىلەر",
+ "supportedlanguages-count": "جەمئى $1 {{PLURAL:$1|تىل|تىل}}.",
+ "supportedlanguages-activity": "$1: $2 {{PLURAL:$2|تەھرىر|تەھرىر}} - ئاخىرقى تەھرىر $3 {{PLURAL:$3|كۈن|كۈن}} ئىلگىرى",
+ "translate-save": "ساقلا ($1)",
+ "translate-jssti-add": "تىزىمغا قوش",
+ "managemessagegroups": "ئۇچۇر گۇرۇپپا باشقۇرۇش",
+ "translate-smg-notallowed": "بۇ مەشغۇلاتنى ئىجرا قىلالمايسىز.",
+ "translate-smg-nochanges": "بىر تەرەپ قىلىدىغان ئۆزگىرىش يوق.",
+ "translate-smg-submit": "بىر تەرەپ قىلىشنىڭ ئۆزگىرىشىنى تاپشۇر",
+ "translate-smg-submitted": "ئۇچۇر ئېنىقلىمىسى يېڭىلاندى. ئۆزگىرىشنى ئارقا سۇپىدا بىر تەرەپ قىلىۋاتىدۇ.",
+ "translate-smg-left": "ۋىكىدىكى ئۇچۇر مەزمۇنى",
+ "translate-smg-right": "كىرگۈزگەن ئۆزگەرتىشلەر",
+ "translate-manage-import-diff": "ئۇچۇر $1 | مەشغۇلات: $2",
+ "translate-manage-import-new": "يېڭى ئۇچۇر $1",
+ "translate-manage-import-deleted": "ئۆچۈرۈلگەن ئۇچۇر $1",
+ "translate-manage-action-import": "ئەكىر",
+ "translate-manage-action-conflict": "ئەكىر ۋە مۇجىمەل",
+ "translate-manage-action-ignore": "پەرۋا قىلما",
+ "translate-manage-action-fuzzy": "ئەكىر ۋە مۇجىمەل تەرجىمە",
+ "translate-manage-nochanges": "بۇ گۇرۇپپىنىڭ ئۇچۇر ئېنىقلىمىسىدا ھېچقانداق ئۆزگىرىش يوق.",
+ "translate-manage-nochanges-other": "بۇ تىلدا ھېچقانداق ئۆزگىرىش يوق.\nگۇرۇپپا تەپسىلىي ئۇچۇر كۆرۈنۈشىگە قايتىپ تۆۋەندىكى ئۇلانمىنى ئىشلىتىڭ.",
+ "translate-manage-inconsistent": "ئلتىماستا بىردەك بولماسلىقنى بايقىدى.\nئۆزگىرىش بار يوقلۇقىنى تەكشۈرۈپ ئاندىن قايتا سىناڭ.\nتەپسىلاتى: $1.",
+ "translate-manage-toolong": "ئەڭ ئۇزۇن بىر تەرەپ قىلىش ۋاقتى $1 {{PLURAL:$1|سېكۇنت|سېكۇنت}} توشتى.\nداۋاملىق بىر تەرەپ قىلىش ئۈچۈن بۇ كۆزنەكنى قايتا تاپشۇرۇڭ.",
+ "translate-manage-import-summary": "سىرتتىن يېڭى بىر نەشرىنى ئەكىرىۋاتىدۇ",
+ "translate-manage-conflict-summary": "سىرتقى مەنبەدىن يېڭى بىر نەشرىنى ئەكىرىۋاتىدۇ.\nتەڭشۈرۈڭ.",
+ "translate-manage-fuzzy-summary": "ئۇچۇر ئېنىقلىمىسى ئۆزگەردى",
+ "translate-manage-submit": "ئىجراچان",
+ "importtranslations": "تەرجىمىلەرنى ئەكىر",
+ "translate-import-from-local": "يەرلىك ھۆججەت يۈكلەش:",
+ "translate-import-load": "ھۆججەت يۈكلە",
+ "translate-import-err-dl-failed": "ھۆججەتكە ئېرىشەلمىدى:\n$1",
+ "translate-import-err-ul-failed": "ھۆججەتنى مۇۋەپپەقىيەتلىك يۈكلىيەلمىدى",
+ "translate-import-err-invalid-title": "تەمىنلەنگەن ھۆججەت ئاتى <nowiki>$1</nowiki> ئىناۋەتسىز.",
+ "translate-import-err-no-such-file": "ھۆججەت <nowiki>$1</nowiki> مەۋجۇت ئەمەس ياكى يەرلىكتىن يۈكلەنمىدى.",
+ "translate-import-err-stale-group": "بۇ ھۆججەت تەۋە ئۇچۇر گۇرۇپپىسى مەۋجۇت ئەمەس.",
+ "translate-import-err-no-headers": "بۇ ھۆججەت تەرجىمە كېڭەيتىلگەن ياخشى پىچىمدىكى Gettext ھۆججەت ئەمەس:\nھۆججەت بېشىدىن ئۇچۇر گۇرۇپپىسى ۋە تىلنى جەزملىيەلمىدى.",
+ "translate-import-err-warnings": "ھۆججەت پىچىمى ياخشى ئەمەس.\nتەھرىرلىگۈچىڭىزنىڭ msgctxt بۆلىكىنى چىقىرىۋەتمەيدىغانلىقىنى جەزملەڭ.\nتەپسىلاتى: $1",
+ "translate-js-summary": "ئۈزۈندە",
+ "translate-js-save": "ساقلا",
+ "translate-js-next": "ساقلاپ كېيىنكىنى ئاچ",
+ "translate-js-nonext": "بۇ مۇشۇ بەتتىكى ئاخىرقى ئۇچۇر.",
+ "translate-js-skip": "كېيىنكىگە ئاتلا",
+ "translate-js-save-failed": "ساقلىيالمىدى. بۇ خاتالىقنى مەلۇم قىلىڭ.",
+ "translate-js-history": "تەرجىمە تارىخى",
+ "translate-js-support": "سوئال سورا",
+ "translate-js-support-title": "ئەگەر بۇ ئۇچۇرنى توغرا تەرجىمە قىلىشقا يېتەرلىك ئۇچۇر بولمىسا ياردەم سوراڭ.",
+ "translate-js-support-unsaved-warning": "ساقلىمىغان تەرجىمىلىرىڭىز بار.",
+ "translate-gs-pos": "ئورنى",
+ "translate-gs-code": "كود",
+ "translate-gs-continent": "قىتئە",
+ "translate-gs-speakers": "ئاۋاز ياڭراتقۇ",
+ "translate-gs-score": "شەرەپ سەھنىسى",
+ "translate-gs-multiple": "بىر قانچە",
+ "translate-gs-count": "ساناق",
+ "translate-gs-total": "جەمئى",
+ "translate-gs-avgscore": "ئوتتۇرىچە نومۇرى",
+ "translate-documentation-language": "ئۇچۇر چۈشەندۈرۈشى",
+ "translate-searchprofile": "تەرجىمىسى",
+ "translate-searchprofile-tooltip": "ھەممە تەرجىمىدىن ئىزدە",
+ "translate-search-languagefilter": "تىل بويىچە سۈز:",
+ "translate-search-nofilter": "سۈزگۈچ يوق",
+ "translate-messagereview-submit": "قوشۇل",
+ "translate-messagereview-progress": "قوبۇل قىلىۋاتىدۇ…",
+ "translate-messagereview-failure": "قوبۇل قىلىۋاتىدۇ… مەغلۇپ بولدى: $1",
+ "translate-messagereview-done": "قوبۇل قىلدى",
+ "translate-messagereview-reviews": "{{PLURAL:$1|بىر ئىشلەتكۈچى|$1 ئىشلەتكۈچى}} قوبۇل قىدى",
+ "translate-messagereview-reviewswithyou": "{{PLURAL:$1|سىز|$1 ئىشلەتكۈچى سىزمۇ بار }} قۇبۇل قىلدىڭىز",
+ "api-error-invalidrevision": "تەرجىمە تېپىلمىدى",
+ "api-error-unknownmessage": "ئۇچۇر تېپىلمىدى",
+ "api-error-fuzzymessage": "تەرجىمەگە مۈجمەل بەلگىسى سېلىندى",
+ "api-error-owntranslation": "ئۆزىڭىزنىڭ تەرجىمىسىنى قوبۇل قىلالمايسىز",
+ "translate-messagereview-no-fuzzy": "مۈجمەل تەرجىمىنى قوبۇل قىلغىلى بولمايدۇ",
+ "translate-messagereview-no-own": "ئۆزىڭىزنىڭ تەرجىمىسىگە قوشۇلالمايسىز.",
+ "translate-messagereview-doit": "بۇ تەرجىمىنى توغرا دەپ قوبۇل قىلىدۇ.",
+ "log-name-translationreview": "تەرجىمە كۆزدىن كەچۈرۈش خاتىرىسى",
+ "log-description-translationreview": "بارلىق تەرجىمە ۋە ئۇچۇر گۇرۇپپىسىنىڭ كۆزدىن كەچۈرۈش خاتىرىسى.",
+ "logentry-translationreview-message": "$1 {{GENDER:$2|قۇبۇل قىلغان}} تەرجىمە $3",
+ "translate-workflow-state-": "(تەڭشەلمىگەن)",
+ "translate-workflowstatus": "ھالەت: $1",
+ "translate-workflow-set-do": "تەڭشەك",
+ "translate-workflow-set-doing": "تەڭشەۋاتىدۇ…",
+ "translate-workflow-set-done": "تەڭشەلدى!",
+ "translate-workflow-set-error-alreadyset": "ئىلتىماس ھالىتى بىلەن ھازىرقى ھالەت ئوخشاش.",
+ "translate-workflow-autocreated-summary": "بەتنىڭ ئىش ئېقىمىنىڭ ھالىتى $1 نى ئۆزلۈكىدىن قۇرىدۇ",
+ "translate-stats-workflow": "ھالەت",
+ "translate-workflowgroup-label": "ئىش ئېقىمى ھالىتى",
+ "translate-workflowgroup-desc": "بۇ ئۇچۇر گۇرۇپپىسى تەرجىمە خىزمىتىنىڭ ئېقىم ھالىتىنى كۆرسىتىدۇ.\nبۇ ھالەتنى $wgTranslateWorkflowStates سەپلىمە ئۆزگەرگۈچىسىدە بەلگىلىگەن.",
+ "translate-dynagroup-recent-label": "يېقىنقى تەرجىمىلەر",
+ "translate-dynagroup-recent-desc": "بۇ ئۇچۇر گۇرۇپپىسى مەزكۇر تىلنىڭ يېقىنقى ھەممە تەرجىمىلىرىنى كۆرسىتىدۇ.\nئىملا تۈزەتكەندە ناھايىتى كېرەكلىك.",
+ "translate-dynagroup-by": "{{GENDER:$1|$1}} تەرجىمە قىلغان",
+ "translate-dynagroup-byc": "{{GENDER:$1|$1}} تەرجىمە قىلغان ($2)",
+ "translate-dynagroup-last": "{{GENDER:$1|$1}} ئاخىرقى قېتىم ئۆزگەرتكەن",
+ "translate-dynagroup-lastc": "{{GENDER:$1|$1}} ئاخىرقى قېتىم ئۆزگەرتكەن ($2)",
+ "translate-gethelp": "ياردەم",
+ "translate-msggroupselector-search-all": "ھەممىسى",
+ "translate-msggroupselector-search-recent": "يېقىنقى",
+ "tux-languageselector": "تىل",
+ "tux-tab-all": "ھەممىسى",
+ "tux-tab-untranslated": "تەرجىمە قىلىنمىغان",
+ "tux-tab-outdated": "زاماندىن قالغان",
+ "tux-tab-translated": "تەرجىمە قىلىنغان",
+ "tux-edit": "تەھرىر",
+ "tux-status-optional": "تاللاشچان",
+ "tux-status-fuzzy": "زاماندىن قالغان",
+ "tux-status-proofread": "تۈزەت",
+ "tux-status-translated": "تەرجىمە قىلىنغان",
+ "tux-editor-skip-button-label": "كېيىنكىگە ئاتلا",
+ "tux-editor-suggestions-title": "نامزاتلار",
+ "tux-editor-in-other-languages": "باشقا تىلاردا",
+ "tux-editor-tm-match": "$1% ماس كېلىدۇ"
+}
diff --git a/MLEB/Translate/i18n/core/ug-latn.json b/MLEB/Translate/i18n/core/ug-latn.json
new file mode 100644
index 00000000..915a2af1
--- /dev/null
+++ b/MLEB/Translate/i18n/core/ug-latn.json
@@ -0,0 +1,11 @@
+{
+ "@metadata": {
+ "authors": [
+ "Jose77"
+ ]
+ },
+ "translate-page-language": "Til",
+ "translate-next": "Kéyinki bet",
+ "translate-prev": "Aldinqi bet",
+ "translate-language": "Til"
+}
diff --git a/MLEB/Translate/i18n/core/uk.json b/MLEB/Translate/i18n/core/uk.json
new file mode 100644
index 00000000..29304eb1
--- /dev/null
+++ b/MLEB/Translate/i18n/core/uk.json
@@ -0,0 +1,403 @@
+{
+ "@metadata": {
+ "authors": [
+ "A1",
+ "AS",
+ "Ahonc",
+ "Aleksandrit",
+ "Amire80",
+ "Andriykopanytsia",
+ "Apromix",
+ "Base",
+ "Dim Grits",
+ "Hypers",
+ "Microcell",
+ "NickK",
+ "Olvin",
+ "Prima klasy4na",
+ "Steve.rusyn",
+ "SteveR",
+ "Test",
+ "Ата",
+ "Тест",
+ "Olion"
+ ]
+ },
+ "translate": "Переклад",
+ "translate-desc": "[[Special:Translate|Спеціальна сторінка]] для перекладу MediaWiki та інших програм",
+ "translate-taskui-view": "Показати всі повідомлення",
+ "translate-taskui-untranslated": "Показати неперекладені повідомлення",
+ "translate-taskui-optional": "Показати додаткові повідомлення.",
+ "translate-taskui-acceptqueue": "Лише повідомлення, які я можу помітити як перевірені",
+ "translate-taskui-reviewall": "Перевірити всі переклади",
+ "translate-taskui-export-to-file": "Експорт у «рідному» форматі",
+ "translate-taskui-export-as-po": "Експорт для офлайн-перекладу",
+ "translate-taction-translate": "Переклад",
+ "translate-taction-proofread": "Перевірка",
+ "translate-taction-lstats": "Статистика для цієї мови",
+ "translate-taction-mstats": "Статистика груп повідомлень",
+ "translate-taction-export": "Експорт",
+ "translate-taction-disabled": "Ця дія недоступна у цій вікі.",
+ "translate-page-no-such-language": "Зазначена неправильна мова.",
+ "translate-page-no-such-group": "Зазначена неправильна група.",
+ "translate-page-disabled": "Переклади на цю мову в цій групі вимкнені. Причина:\n\n<em>$1</em>",
+ "translate-language-disabled": "Переклад цією мовою вимкнено.",
+ "translate-page-settings-legend": "Параметри",
+ "translate-page-group": "Група",
+ "translate-page-language": "Мова",
+ "translate-page-limit": "Обмеження",
+ "translate-page-limit-option": "$1 {{PLURAL:$1|повідомлення|повідомлення|повідомлень}} на сторінку",
+ "translate-submit": "Вивести",
+ "translate-page-navigation-legend": "Навігація",
+ "translate-page-showing": "Показано повідомлення з $1 по $2 (із $3).",
+ "translate-page-showing-all": "Показано $1 {{PLURAL:$1|повідомлення|повідомлення|повідомлень}}.",
+ "translate-page-showing-none": "Нема повідомлень для відображення.",
+ "translate-next": "наступна сторінка",
+ "translate-prev": "попередня сторінка",
+ "translate-page-description-legend": "Інформація про групу",
+ "translate-page-description-hasoptional": "Ця група повідомлень містить також необов'язкові повідомлення.\nЇх слід перекладати лише якщо Ваша мова вимагає особливого ставлення,\nскажімо, у ній не вживаються пробіли чи не потрібна транслітерація власних імен. $1",
+ "translate-page-description-hasoptional-open": "Показувати додаткові повідомлення.",
+ "translate-page-edit": "редагувати",
+ "translate-ext-url": "<hr />Сайт: $1",
+ "translate-optional": "(необов'язкове)",
+ "translate-ignored": "(ігнорується)",
+ "translate-edit-title": "Редагувати «$1»",
+ "translate-edit-definition": "Текст повідомлення",
+ "translate-edit-translation": "Переклад",
+ "translate-edit-contribute": "редагувати",
+ "translate-edit-no-information": "<em>Це повідомлення не має опису.\nЯкщо ви знаєте, де чи як воно використовується, то ви можете допомогти іншим перекладачам, додавши опис для цього повідомлення.</em>",
+ "translate-edit-information": "Інформація про повідомлення ($1)",
+ "translate-edit-in-other-languages": "Повідомлення іншими мовами",
+ "translate-edit-committed": "Поточний переклад у програмі",
+ "translate-edit-warnings": "Попередження про неповні переклади",
+ "translate-edit-tmsugs": "Пропозиції з пам'яті перекладів",
+ "translate-edit-tmmatch-source": "Текст для перекладу: $1",
+ "translate-edit-tmmatch": "$1% відповідність",
+ "translate-use-suggestion": "Замінити поточний переклад цією пропозицією.",
+ "translate-edit-nopermission": "Вам потрібні права перекладача для перекладу повідомлень.",
+ "translate-edit-askpermission": "Отримати дозвіл",
+ "translate-magic-pagename": "Поглиблений переклад MediaWiki",
+ "translate-magic-help": "Ви можете перекладати псевдоніми спеціальних сторінок, магічні слова та назви простори.\n\nПсевдоніми спеціальних сторінок і магічні слова можуть мати декілька варіантів перекладу, які розділяються комою (,).\nНазви просторів можуть мати лише один переклад.\n\nПереклад назви простору обговорень проекту<code>$1 talk</code> може викликати труднощі. <code>$1</code> замінюється назвою сайту проекту (наприклад <code>{{ns:project_talk}}</code>). Якщо у Вашій мові неможливо утворити коректне словосполучення без зміни назви сайту (наприклад, якщо слід вживати родовий відмінок), повідомте про це [[Support|Службу підтримки]].\n\nЩоб зберегти зміни, Ви повинні бути перекладачем.\nЗміни не буде збережено, поки Ви не натиснете кнопку Зберегти нижче.",
+ "translate-magic-module": "Модуль:",
+ "translate-magic-submit": "Вивести",
+ "translate-magic-cm-export": "Експортувати",
+ "translate-magic-nothing-to-export": "Немає нічого для експорту.",
+ "translate-magic-cm-to-be": "Має бути",
+ "translate-magic-cm-current": "Поточне",
+ "translate-magic-cm-original": "Вихідне",
+ "translate-magic-cm-comment": "Коментар:",
+ "translate-magic-cm-save": "Зберегти",
+ "translate-magic-cm-updatedusing": "Оновлено за допомогою [[Special:AdvancedTranslate|{{int:Translate-magic-pagename}}]]",
+ "translate-magic-cm-savefailed": "Не вдалося зберегти",
+ "translate-magic-special": "Псевдоніми спеціальних сторінок",
+ "translate-magic-words": "Магічні слова",
+ "translate-magic-namespace": "Простори назв",
+ "translate-magic-notsaved": "Ваше редагування не збережено!",
+ "translate-magic-errors": "Будь ласка, виправте {{PLURAL:$1|1=таку помилку|такі помилки}} в перекладі:",
+ "translate-magic-saved": "Ваші редагування успішно збережені.",
+ "translate-checks-parameters": "{{PLURAL:$2|1=Параметр <strong><nowiki>$1</nowiki></strong> не використовується|Параметри <strong><nowiki>$1</nowiki></strong> не використовуються}}",
+ "translate-checks-parameters-unknown": "{{PLURAL:$2|1=Параметр <strong><nowiki>$1</nowiki></strong> невідомий|Параметри <strong><nowiki>$1</nowiki></strong> невідомі}}",
+ "translate-checks-balance": "Неоднакова кількість відкритих і закритих {{PLURAL:$2|1=дужок|дужок}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links": "{{PLURAL:$2|1=Наступне посилання проблематичне|Наступні посилання проблематичні}} : <strong>$1</strong>",
+ "translate-checks-links-missing": "{{PLURAL:$2|Відсутнє $2 посилання|Відсутні $2 посилання|Відсутні $2 посилань}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-xhtml": "Будь ласка, виправте {{PLURAL:$2|1=наступний тег|наступні теги}}: <strong>$1</strong>",
+ "translate-checks-plural": "Оригінал використовує <nowiki>{{PLURAL:}}</nowiki>, а переклад — ні.",
+ "translate-checks-plural-forms": "<nowiki>{{PLURAL:}}</nowiki> було використано з {{PLURAL:$1|1=одною формою|$1 формами}}, але {{PLURAL:$2|1=лише одна форма|$2 форм}} підтримується (за винятком форм 0= та 1=).",
+ "translate-checks-plural-dupe": "<nowiki>{{PLURAL:}}</nowiki> має дублікати форм у кінці. <nowiki>{{PLURAL:$1|1=метро|метро}}</nowiki> повинно бути записано як <nowiki>{{PLURAL:$1|метро}}</nowiki>.",
+ "translate-checks-pagename": "Змінилося визначення простору назв",
+ "translate-checks-format": "Цей переклад не відповідає визначенню або має неправильний синтаксис: $1",
+ "translate-checks-escape": "Ці екрануючі послідовності можуть бути випадкові: <strong>$1</strong>",
+ "translate-checks-parametersnotequal": "Є {{PLURAL:$1|параметр|параметри|параметрів}}, а має бути $2.",
+ "translate-checks-malformed": "<nowiki>$1</nowiki> має помилки.",
+ "translate-checks-fudforum-syntax": "Використовувати у цьому проекті <nowiki>$1</nowiki> замість <nowiki>$2</nowiki>.",
+ "translate-pref-nonewsletter": "Не надсилати мені інформаційні бюлетені",
+ "translate-pref-editassistlang": "Допоміжні мови:",
+ "prefs-translate": "Налаштування перекладу",
+ "translate-pref-editassistlang-help": "Перелік мовних кодів, відокремлених комою.\nПереклади повідомлень цими мовами буде показано, коли Ви перекладаєте.\nСтандартний список мов залежить від вашої мови.",
+ "translate-pref-editassistlang-bad": "Неправильний мовний код в списку:\n<nowiki>$1</nowiki>.",
+ "right-translate": "Редагування з використанням інтерфейсу перекладу",
+ "right-translate-manage": "Управління групами повідомлень",
+ "action-translate-manage": "Керування групами повідомлень",
+ "right-translate-import": "Імпорт офлайнових перекладів",
+ "action-translate-import": "імпорт офлайнових перекладів",
+ "right-translate-messagereview": "Рецензування перекладів",
+ "right-translate-groupreview": "Змінити стан обробки груп повідомлень",
+ "translate-rc-translation-filter": "Фільтр перекладів:",
+ "translate-rc-translation-filter-no": "Немає",
+ "translate-rc-translation-filter-only": "Показати тільки переклади",
+ "translate-rc-translation-filter-filter": "Без перекладів",
+ "translate-rc-translation-filter-site": "Повідомлення сайту",
+ "translationstats": "Статистика перекладів",
+ "translate-stats-edits": "Редагування",
+ "translate-stats-users": "Перекладачі",
+ "translate-stats-registrations": "Реєстрації",
+ "translate-stats-reviews": "Перегляди",
+ "translate-stats-reviewers": "Рецензенти",
+ "translate-statsf-intro": "Ця форма допоможе вам створити зручний графік. Для всіх значень можна задати верхню і нижню межі.",
+ "translate-statsf-options": "Параметри графіка",
+ "translate-statsf-width": "Ширина в пікселях:",
+ "translate-statsf-height": "Висота в пікселях:",
+ "translate-statsf-days": "Період часу у днях:",
+ "translate-statsf-start": "Дата початку:",
+ "translate-statsf-scale": "Ступінь деталізації:",
+ "translate-statsf-scale-months": "Місяці",
+ "translate-statsf-scale-weeks": "Тижні",
+ "translate-statsf-scale-days": "Дні",
+ "translate-statsf-scale-hours": "Години",
+ "translate-statsf-count": "Міра:",
+ "translate-statsf-count-edits": "Число редагувань",
+ "translate-statsf-count-users": "Активні перекладачі",
+ "translate-statsf-count-registrations": "Нові користувачі",
+ "translate-statsf-count-reviews": "Перегляди перекладу",
+ "translate-statsf-count-reviewers": "Рецензенти",
+ "translate-statsf-language": "Список кодів мови, розділених комами:",
+ "translate-statsf-group": "Список кодів групи мов, розділених комами:",
+ "translate-statsf-submit": "Перегляд",
+ "translate-tag-category": "Сторінки, що можуть бути перекладені",
+ "translate-tag-page-desc": "Переклад сторінки [[$2|$1]] із $3 ($4).",
+ "translate-sidebar-alltrans": "Іншими мовами",
+ "translations": "Всі переклади",
+ "translations-summary": "Введіть назву повідомлення, щоб показати всі доступні переклади.",
+ "translate-translations-no-message": "\"$1\" не є повідомленням для перекладу",
+ "translate-translations-none": "Немає ніяких перекладів для \"$1\"",
+ "translate-translations-count": "Знайдено {{PLURAL:$1|один переклад|$1 переклади|$1 перекладів}}.",
+ "translate-translations-fieldset-title": "Повідомлення",
+ "translate-translations-messagename": "Назва:",
+ "translate-translations-project": "Проект:",
+ "translate-translations-including-no-param": "Будь ласка, вкажіть ключ повідомлення як параметр підсторінки",
+ "translate-translations-history-short": "і",
+ "languagestats": "Мовна статистика",
+ "languagestats-summary": "На цій сторінці подано статистику перекладів цією мовою для всіх груп повідомлень.",
+ "messagegroupstats-summary": "На цій сторінці відображається статистика груп повідомлень.",
+ "languagestats-stats-for": "Статистика перекладів мовою: $1 ($2).",
+ "languagestats-recenttranslations": "найновіші переклади",
+ "translate-langstats-incomplete": "Деяка статистика на цій сторінці є неповною. Будь ласка, перезавантажте сторінку для отримання нових даних.",
+ "translate-langstats-expand": "розгорнути",
+ "translate-langstats-collapse": "згорнути",
+ "translate-langstats-expandall": "розгорнути всі",
+ "translate-langstats-collapseall": "згорнути всі",
+ "translate-language-code": "Код мови",
+ "translate-language-code-field-name": "Код мови:",
+ "translate-suppress-complete": "Приховати повністю перекладені групи повідомлень",
+ "translate-ls-noempty": "Приховати зовсім неперекладені групи повідомлень",
+ "translate-language": "Мова",
+ "translate-total": "Повідомлення",
+ "translate-untranslated": "Неперекладені",
+ "translate-percentage-complete": "Готово",
+ "translate-percentage-fuzzy": "Застаріло",
+ "translate-languagestats-overall": "Повідомлення всіх груп",
+ "translate-ls-submit": "Показати статистику",
+ "translate-ls-column-group": "Група повідомлень",
+ "translate-mgs-pagename": "Статистика груп повідомлень",
+ "translate-mgs-fieldset": "Параметри відображення",
+ "translate-mgs-group": "Група повідомлень:",
+ "translate-mgs-nocomplete": "Не показувати мови, які мають завершені переклади",
+ "translate-mgs-noempty": "Не показувати мов, які не мають жодного перекладу",
+ "translate-mgs-submit": "Показати статистику",
+ "translate-mgs-column-language": "Мова",
+ "translate-mgs-totals": "Всі мови разом",
+ "translate-mgs-invalid-group": "Зазначеної групи $1 не існує.",
+ "translate-mgs-nothing": "Немає статистики за вашим запитом.",
+ "supportedlanguages": "Підтримувані мови",
+ "supportedlanguages-summary": "На цій сторінці перелічено всі мови, що підтримуються {{SITENAME}},\nразом з іменами перекладачів, що працюють цими мовами.\nІм'я перекладача буде тим більшим, що більше редагувань він зробив.\nКолір підкреслення позначає як давно було вчинено останні дії.",
+ "supportedlanguages-colorlegend": "Кольорова легенда: останній переклад здійснено $1 днів тому.",
+ "supportedlanguages-translators": "{{PLURAL:$2|{{GENDER:$3|Перекладач|Перекладачка}}|Перекладачі}}: $1",
+ "supportedlanguages-recenttranslations": "останні переклади",
+ "supportedlanguages-count": "Всього $1 {{PLURAL:$1|мова|мови|мов}}.",
+ "supportedlanguages-activity": "$1: $2 {{PLURAL:$2|редагування|редагування|редагувань}} — остання правка $3 {{PLURAL:$3|день|дня|днів}} тому",
+ "translate-save": "Зберегти ($1)",
+ "translate-jssti-add": "Додати в список",
+ "managemessagegroups": "Керування групами повідомлень",
+ "translate-smg-notallowed": "Вам не дозволено виконувати цю дію.",
+ "translate-smg-nochanges": "Немає ніяких змін для обробки.",
+ "translate-smg-submit": "Надіслати зміни на обробку",
+ "translate-smg-submitted": "Формулювання повідомлення було оновлено. Зміни обробляються у фоновому режимі.",
+ "translate-smg-more": "Після внесення цих змін з'явиться більше змін для обробки.",
+ "translate-smg-left": "Зміст повідомлення у вікі",
+ "translate-smg-right": "Вхідні зміни",
+ "translate-manage-import-diff": "Повідомлення $1 | Дії: $2",
+ "translate-manage-import-new": "Нове повідомлення $1",
+ "translate-manage-import-deleted": "Вилучено повідомлення $1",
+ "translate-manage-action-import": "Імпортувати",
+ "translate-manage-action-conflict": "Імпортувати і позначити як неперевірене",
+ "translate-manage-action-ignore": "Ігнорувати",
+ "translate-manage-action-fuzzy": "Імпортувати і позначити як неперевірені",
+ "translate-manage-nochanges": "Нема змін у формулюваннях повідомлень для цієї групи.",
+ "translate-manage-nochanges-other": "Не було змін для цієї мови.\nЩоб повернутися до перегляду деталей групи, використайте посилання нижче.",
+ "translate-manage-inconsistent": "Виявлено невідповідності в запиті.\nБудь ласка, перевірте зміни і спробуйте ще раз.\nДеталі: $1.",
+ "translate-manage-toolong": "Перевищено максимальний час обробки, що складає $1 {{PLURAL:$1|секунду|секунди|секунд}}.\nБудь ласка, відправте дані знову, щоб продовжити обробку.",
+ "translate-manage-import-summary": "Імпорт нової версії із зовнішнього джерела",
+ "translate-manage-conflict-summary": "Імпорт нової версії із зовнішнього джерела.\nБудь ласка, перевірте її.",
+ "translate-manage-fuzzy-summary": "Формулювання повідомлення було змінено.",
+ "translate-manage-submit": "Виконати",
+ "translate-manage-intro-other": "Далі наведено список змін перекладів мовою: $1.\nБудь ласка, перевірте ці зміни і виберіть дію, яку застосувати щодо кожного оновлення.\nЯкщо Ви оберете проігнорувати зміни, то ця дія лише тимчасова.",
+ "translate-manage-import-ok": "Імпортовано: $1",
+ "translate-manage-import-done": "Імпорт завершено!",
+ "importtranslations": "Імпортувати переклади",
+ "translate-import-from-local": "Завантажити локальний файл:",
+ "translate-import-load": "Завантажити файл",
+ "translate-import-err-dl-failed": "Не вдалося переслати файл:\n$1",
+ "translate-import-err-ul-failed": "Не вдалося переслати файл",
+ "translate-import-err-invalid-title": "Вказана назва файлу <nowiki>$1</nowiki> неправильна.",
+ "translate-import-err-no-such-file": "Файл <nowiki>$1</nowiki> не існує або не завантажений локально.",
+ "translate-import-err-stale-group": "Група повідомлень, до якої належить цей файл, не існує.",
+ "translate-import-err-no-headers": "Файл не є правильно побудованим Gettext-файлом у форматі розширення Translate: не вдалося визначити групу і мову із заголовка файлу.",
+ "translate-import-err-warnings": "Файл неправильно побудований.\nВпевніться, що ваш редактор не стер поля msgctxt.\nДеталі: $1",
+ "translate-js-summary": "Опис:",
+ "translate-js-save": "Зберегти",
+ "translate-js-next": "Зберегти і відкрити наступне",
+ "translate-js-nonext": "Це було останнє повідомлення з цієї сторінки.",
+ "translate-js-skip": "Перейти до наступного",
+ "translate-js-save-failed": "Збереження не виконане. Будь ласка, повідомте про цю помилку.",
+ "translate-js-history": "Історія перекладу",
+ "translate-js-support": "Поставити запитання",
+ "translate-js-support-title": "Попросіть про допомогу, якщо ви не маєте достатньої інформації для правильного перекладу цього повідомлення.",
+ "translate-js-support-unsaved-warning": "Маєте незбережені переклади.",
+ "translate-gs-pos": "Поз.",
+ "translate-gs-code": "Код",
+ "translate-gs-continent": "Частина світу",
+ "translate-gs-speakers": "Носіїв",
+ "translate-gs-score": "Оцінка",
+ "translate-gs-multiple": "Кілька",
+ "translate-gs-count": "Кількість",
+ "translate-gs-total": "Всього",
+ "translate-gs-avgscore": "Сер. оцінка",
+ "translate-documentation-language": "Документація повідомлення",
+ "translate-searchprofile": "Переклади",
+ "translate-searchprofile-tooltip": "Пошук серед усіх перекладів",
+ "translate-search-languagefilter": "Фільтр мов:",
+ "translate-search-nofilter": "Без фільтрації",
+ "translate-messagereview-submit": "Помітити як перевірене",
+ "translate-messagereview-progress": "Помітка як перевірене…",
+ "translate-messagereview-failure": "Помилка помітки як перевірене: $1",
+ "translate-messagereview-done": "Перевірено",
+ "translate-messagereview-reviews": "Перевірено $1 {{PLURAL:$1|1=користувачем|користувачами}}",
+ "translate-messagereview-reviewswithyou": "Перевірено {{PLURAL:$1|1=Вами|$1 користувачами разом з Вами}}",
+ "api-error-invalidrevision": "Переклад не знайдено",
+ "api-error-unknownmessage": "Повідомлення не знайдено",
+ "api-error-fuzzymessage": "Переклад позначено як неточний",
+ "api-error-owntranslation": "Ви не можете помічати Ваші власні переклади як перевірені",
+ "translate-messagereview-no-fuzzy": "Переклади, що позначено як нечіткі (Fuzzy), не може бути перевірено.",
+ "translate-messagereview-no-own": "Ви не можете позначати власні переклади як перевірені.",
+ "translate-messagereview-doit": "Позначити цей переклад як перевірений.",
+ "log-name-translationreview": "Журнал рецензування перекладів",
+ "log-description-translationreview": "Журнал усіх рецензій та груп повідомлень",
+ "logentry-translationreview-message": "$1 {{GENDER:$2|перевірив|перевірила}} переклад $3",
+ "logentry-translationreview-group": "$1 {{GENDER:$2|змінив|змінила}} стан {{PLURAL:$4|1=перекладу|перекладів}} сторінки $3 мовою $4 з $6 на $7",
+ "group-translate-sandboxed": "Незатверджені переклади",
+ "group-translate-sandboxed-member": "{{GENDER:$1|незатверджений перекладач|незатверджена перекладачка}}",
+ "right-translate-sandboxmanage": "Керування користувачами пісочниці",
+ "action-translate-sandboxmanage": "керування користувачами пісочниці",
+ "right-translate-sandboxaction": "виконання дій, дозволених користувачам в пісочниці",
+ "action-translate-sandboxaction": "виконання дій, дозволених користувачам у пісочниці",
+ "translate-workflow-state-": "(не встановлено)",
+ "translate-workflowstatus": "Статус: $1",
+ "translate-workflow-set-do": "Встановити",
+ "translate-workflow-set-doing": "Встановлення...",
+ "translate-workflow-set-done": "Установлено!",
+ "translate-workflow-set-error-alreadyset": "Поточний стан ідентичний тому, що вимагається встановити.",
+ "translate-workflow-autocreated-summary": "Автоматичне створення сторінки стану для процесу обробки $1.",
+ "translate-stats-workflow": "Статус",
+ "translate-workflowgroup-label": "Стан процесу обробки",
+ "translate-workflowgroup-desc": "Ця група показує стан процесу перекладу.\nМожливі значення стану визначено у конфігураційній змінній $wgTranslateWorkflowStates.",
+ "translate-dynagroup-recent-label": "Останні переклади",
+ "translate-dynagroup-recent-desc": "Ця група повідомлень містить усі останні переклади цією мовою.\nНайзручніший режим для завдань перевірки.",
+ "translate-dynagroup-additions-label": "Останні доповнення",
+ "translate-dynagroup-additions-desc": "Ця група повідомлень містить нові та змінені повідомлення.",
+ "translate-dynagroup-by": "{{GENDER:$1|Переклав|Переклала}} $1",
+ "translate-dynagroup-byc": "{{GENDER:$1|Переклав|Переклала}} $1 ($2)",
+ "translate-dynagroup-last": "Востаннє змінено {{GENDER:$1|$1}}",
+ "translate-dynagroup-lastc": "Востаннє змінено {{GENDER:$1|$1}} ($2)",
+ "translate-gethelp": "Довідка",
+ "translate-msggroupselector-projects": "Група повідомлень",
+ "translate-msggroupselector-search-placeholder": "Шукати групи",
+ "translate-msggroupselector-search-all": "Усі",
+ "translate-msggroupselector-search-recent": "Останні",
+ "translate-msggroupselector-view-subprojects": "$1 {{PLURAL:$1|підгрупа|підгрупи|підгруп}}",
+ "tux-languageselector": "Переклад на",
+ "tux-tab-all": "Усі",
+ "tux-tab-untranslated": "Неперекладені",
+ "tux-tab-outdated": "Застарілі",
+ "tux-tab-translated": "Перекладені",
+ "tux-tab-unproofread": "Неперевірені",
+ "tux-edit": "Редагувати",
+ "tux-status-optional": "Необов'язково",
+ "tux-status-fuzzy": "Застарілі",
+ "tux-status-proofread": "Перевірка",
+ "tux-status-translated": "Перекладено",
+ "tux-status-saving": "Зберігається...",
+ "tux-status-unsaved": "Незбережено",
+ "tux-editor-placeholder": "Ваш переклад",
+ "tux-editor-paste-original-button-label": "Вставити вихідний текст",
+ "tux-editor-discard-changes-button-label": "Скасувати зміни",
+ "tux-editor-save-button-label": "Зберегти переклад",
+ "tux-editor-skip-button-label": "Перейти до наступного",
+ "tux-editor-cancel-button-label": "Скасувати",
+ "tux-editor-confirm-button-label": "Підтвердити переклад",
+ "tux-editor-shortcut-info": "Натисніть «$1» щоб зберегти або «$2» для переходу до наступного повідомлення або \"$3\" для інших ярликів",
+ "tux-editor-edit-desc": "Редагувати документацію",
+ "tux-editor-add-desc": "Додати документацію",
+ "tux-editor-suggestions-title": "Пропозиції",
+ "tux-editor-in-other-languages": "Іншими мовами",
+ "tux-editor-need-more-help": "Потрібно більше допомоги?",
+ "tux-editor-ask-help": "Запитати додаткову інформацію",
+ "tux-editor-tm-match": "$1% відповідність",
+ "tux-warnings-more": "{{PLURAL:$1|іще $1}}",
+ "tux-warnings-hide": "сховати",
+ "tux-editor-save-failed": "Збереження перекладу не вдалося: $1",
+ "tux-editor-n-uses": "використано $1 {{PLURAL:$1|раз|рази|разів}}",
+ "tux-editor-message-desc-more": "Показати докладно",
+ "tux-editor-message-desc-less": "Показати компактно",
+ "tux-editor-clear-translated": "Приховати перекладене",
+ "tux-editor-proofreading-mode": "Перевірка",
+ "tux-editor-translate-mode": "Список",
+ "tux-editor-proofreading-hide-own-translations": "Приховати свої переклади",
+ "tux-editor-proofreading-show-own-translations": "Показати свої переклади",
+ "tux-proofread-action-tooltip": "Позначити як перевірене",
+ "tux-proofread-edit-label": "Редагувати",
+ "tux-editor-page-mode": "Сторінка",
+ "tux-editor-outdated-warning": "Цей переклад, можливо, необхідно оновити.",
+ "tux-editor-outdated-warning-diff-link": "Показати відмінності",
+ "tux-editor-doc-editor-placeholder": "Документація повідомлення",
+ "tux-editor-doc-editor-save": "Зберегти документацію",
+ "tux-editor-doc-editor-cancel": "Скасувати",
+ "tux-messagetable-more-messages": "Ще $1 {{PLURAL:$1|повідомлення|повідомлення|повідомлень}}",
+ "tux-messagetable-loading-messages": "Завантаження $1 {{PLURAL:$1|1=повідомлення|повідомлень}}...",
+ "tux-message-filter-placeholder": "Список фільтрів",
+ "tux-message-filter-result": "За запитом «$2» {{PLURAL:$1|знайдено|знайдені|знайдено}} $1 {{PLURAL:$1|результат|результати|результатів}}",
+ "tux-message-filter-advanced-button": "Розширений пошук",
+ "tux-message-filter-optional-messages-label": "Додаткові повідомлення",
+ "tux-proofread-translated-by-self": "Перекладено Вами",
+ "tux-empty-list-all": "Ця група повідомлень порожня",
+ "tux-empty-list-all-guide": "Оберіть іншу групу повідомлень для перекладу",
+ "tux-translate-page-no-such-group": "<strong>Вказана група не існує.</strong> Оберіть іншу групу повідомлень.",
+ "tux-empty-list-translated": "Немає перекладених повідомень",
+ "tux-empty-list-translated-guide": "Ви можете допомогти перекладом",
+ "tux-empty-list-translated-action": "Перекласти",
+ "tux-empty-no-messages-to-display": "Немає повідомлень для відображення.",
+ "tux-empty-there-are-optional": "Є додаткові повідомлення, не показані у списку",
+ "tux-empty-show-optional-messages": "Показати додаткові повідомлення",
+ "tux-empty-no-outdated-messages": "Немає застарілих повідомлень",
+ "tux-empty-nothing-to-proofread": "Немає що перевіряти",
+ "tux-empty-you-can-help-providing": "Ви можете допомогти новими перекладами",
+ "tux-empty-nothing-new-to-proofread": "Немає нових повідомлень до перевірки",
+ "tux-empty-you-can-review-already-proofread": "Ви можете перевіряти переклади, уже перевірені іншими.",
+ "tux-empty-list-other": "Немає що перекладати",
+ "tux-empty-list-other-guide": "Ви можете допомогти у перевірці існуючих перекладів",
+ "tux-empty-list-other-action": "Перевірка перекладів",
+ "tux-empty-list-other-link": "Показати усі повідомлення",
+ "tux-editor-close-tooltip": "Закрити",
+ "tux-editor-expand-tooltip": "Розгорнути",
+ "tux-editor-collapse-tooltip": "Згорнути",
+ "tux-editor-message-tools-history": "Історія",
+ "tux-editor-message-tools-delete": "Вилучити",
+ "tux-editor-message-tools-translations": "Усі переклади",
+ "tux-editor-loading": "Завантаження…",
+ "translate-search-more-languages-info": "Ще $1 {{PLURAL:$1|мова|мови|мов}}",
+ "translate-statsbar-tooltip": "$1% перекладено, $2% перевірено",
+ "translate-statsbar-tooltip-with-fuzzy": "$1% перекладено, $2% перевірено, $3% застаріло",
+ "translate-search-more-groups-info": "Ще $1 {{PLURAL:$1|група|групи|груп}}",
+ "translate-ulsdep-title": "Помилка конфігурації",
+ "translate-ulsdep-body": "Розширення перекладу залежить від [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:UniversalLanguageSelector розширення «Універсальний мовний селектор»].",
+ "tux-session-expired": "Зараз ви не авторизовані. Будь ласка, увійдіть до системи на окремій вкладці. Або зробіть копію незбереженого перекладу, увійдіть та поверніться до цієї сторінки."
+}
diff --git a/MLEB/Translate/i18n/core/ur.json b/MLEB/Translate/i18n/core/ur.json
new file mode 100644
index 00000000..70cb4ff4
--- /dev/null
+++ b/MLEB/Translate/i18n/core/ur.json
@@ -0,0 +1,102 @@
+{
+ "@metadata": {
+ "authors": [
+ "Noor2020",
+ "Tahir mq",
+ "පසිඳු කාවින්ද"
+ ]
+ },
+ "translate": "کا ترجمہ",
+ "translate-taskui-view": "تمام پیغامات دکھائیں",
+ "translate-taskui-optional": "کچھ اختیاری پیغامات دکھائیں",
+ "translate-taskui-acceptqueue": "صرف پیغامات میں قبول کر سکتے ہیں",
+ "translate-taskui-reviewall": "سب ترجمے کا جائزہ لیں",
+ "translate-taskui-export-to-file": "مقامی کی شکل میں برآمد",
+ "translate-taskui-export-as-po": "آف لائن ترجمہ کے لئے برآمد",
+ "translate-taction-translate": "کا ترجمہ",
+ "translate-page-settings-legend": "ترتیبات",
+ "translate-page-group": "گروپ",
+ "translate-page-language": "زبان",
+ "translate-page-navigation-legend": "نیوی گیشن",
+ "translate-page-showing-none": "کو دکھانے کے لئے کوئی پیغامات ۔",
+ "translate-next": "اگلا صفحہ",
+ "translate-prev": "سابق صفحہ",
+ "translate-page-description-hasoptional-open": "کچھ اختیاری پیغامات دکھائیں ۔",
+ "translate-page-edit": "ترمیم کریں",
+ "translate-edit-translation": "ترجمہ",
+ "translate-edit-contribute": "میں شراکت",
+ "translate-edit-in-other-languages": "دیگر زبانوں میں پیغام",
+ "translate-magic-cm-current": "موجودہ",
+ "translate-magic-cm-comment": "تبصرہ:",
+ "translate-magic-cm-save": "محفوظ کریں",
+ "translate-magic-cm-savefailed": "ناکام محفوظ",
+ "translate-magic-words": "جادوئی الفاظ",
+ "translate-stats-users": "مترجمین",
+ "translate-stats-reviewers": "مبصرین",
+ "translate-statsf-options": "مخطط کے اختیارات",
+ "translate-statsf-start": "تاریخ شروع ہو رہا ہے:",
+ "translate-statsf-scale-months": "ماہ",
+ "translate-statsf-scale-weeks": "ہفتوں",
+ "translate-statsf-scale-days": "دن",
+ "translate-statsf-scale-hours": "گھنٹے",
+ "translate-statsf-count": "پیمائش:",
+ "translate-statsf-count-edits": "گئی تدوین کی تعداد",
+ "translate-statsf-count-users": "فعال مترجمین",
+ "translate-statsf-count-registrations": "نئے صارفین",
+ "translate-statsf-count-reviews": "ترجمہ کا جائزہ",
+ "translate-statsf-count-reviewers": "مبصرین",
+ "translate-statsf-submit": "پیش نظارہ",
+ "translate-tag-category": "ترجمہ صفحات",
+ "translate-sidebar-alltrans": "دیگر زبانوں میں",
+ "translations": "سب ترجمے",
+ "translate-translations-fieldset-title": "پیغام",
+ "translate-translations-messagename": "نام:",
+ "translate-translations-project": "منصوبہ:",
+ "languagestats": "زبان کے اعداد و شمار",
+ "languagestats-recenttranslations": "حال ہی میں ترجمے",
+ "translate-langstats-expand": "وسیع کریں",
+ "translate-langstats-collapse": "خاتمے",
+ "translate-langstats-expandall": "تمام وسیع کریں",
+ "translate-langstats-collapseall": "تمام کو مختصر کریں",
+ "translate-language-code": "زبان کے کوڈ",
+ "translate-language-code-field-name": "زبان کے کوڈ:",
+ "translate-language": "زبان",
+ "translate-total": "پیغامات",
+ "translate-percentage-complete": "تکمیل",
+ "translate-ls-submit": "شو کے اعداد و شمار",
+ "translate-ls-column-group": "پیغام کے گروپ",
+ "translate-mgs-pagename": "پیغام گروپ کے اعداد و شمار",
+ "translate-mgs-fieldset": "ڈسپلے کی ترجیحات",
+ "translate-mgs-column-language": "زبان",
+ "translate-mgs-totals": "تمام زبانوں کی ایک ساتھ",
+ "supportedlanguages": "حمایت کی زبانیں",
+ "translate-jssti-add": "فہرست کرنے کے لئے شامل کریں",
+ "translate-smg-right": "آنے والی تبدیلیاں",
+ "translate-manage-action-import": "درآمد",
+ "translate-manage-action-ignore": "نظر انداز",
+ "translate-import-load": "بوجھ فائل",
+ "translate-js-summary": "خلاصہ:",
+ "translate-js-save": "محفوظ کریں",
+ "translate-js-history": "ترجمہ کی تاریخ",
+ "translate-js-support": "سوال پوچھیں",
+ "translate-gs-continent": "براعظم",
+ "translate-gs-speakers": "مقررین",
+ "translate-gs-score": "سکور",
+ "translate-gs-multiple": "ایک سے زیادہ",
+ "translate-gs-count": "شمار",
+ "translate-gs-total": "کل",
+ "translate-searchprofile": "ترجمہ",
+ "translate-messagereview-submit": "قبول",
+ "translate-workflow-set-do": "مرتب کریں",
+ "translate-stats-workflow": "حیثیت",
+ "translate-gethelp": "مدد",
+ "tux-editor-discard-changes-button-label": "تبدیلیاں مسترد کریں",
+ "tux-empty-no-messages-to-display": "دکھانے کے لیے کوئی پیغام نہیں ہے ۔",
+ "tux-empty-there-are-optional": "اختیاری پیغامات کو فہرست میں نہیں دکھایا گیا ہے ۔",
+ "tux-empty-show-optional-messages": "اختیاری پیغامات دکھائیں",
+ "tux-empty-no-outdated-messages": "کوئی پرانے پیغامات نہيں ہیں",
+ "tux-empty-nothing-to-proofread": "کوئی اصلاح کے لئے نیا کام نہیں ہے",
+ "tux-empty-you-can-help-providing": "آپ نئے ترجمے فراہم کرنے میں مدد کر سکتے ہیں",
+ "tux-empty-nothing-new-to-proofread": "کوئی اصلاح کے لئے نیا کام نہیں ہے",
+ "tux-empty-you-can-review-already-proofread": "آپ پہلے سے ہی دوسروں کی طرف سے علیحدہ تصحیح املاء ترجمے کا جائزہ لے سکتے ہیں ۔"
+}
diff --git a/MLEB/Translate/i18n/core/uz.json b/MLEB/Translate/i18n/core/uz.json
new file mode 100644
index 00000000..e243f51a
--- /dev/null
+++ b/MLEB/Translate/i18n/core/uz.json
@@ -0,0 +1,241 @@
+{
+ "@metadata": {
+ "authors": [
+ "CoderSI",
+ "Sociologist"
+ ]
+ },
+ "translate": "Tarjima",
+ "translate-desc": "MediaWiki va boshqa dasturlarni tarjima qilish uchun [[Special:Translate|maxsus sahifa]]",
+ "translate-taskui-view": "Barcha xabarlarni koʻrsatish",
+ "translate-taskui-untranslated": "Tarjima qilinmagan xabarlarni koʻrsatish",
+ "translate-taskui-optional": "Qoʻshimcha xabarlarni koʻrsatish",
+ "translate-taskui-acceptqueue": "Faqat mening roziligim zarur bo'lgan xabarlar",
+ "translate-taskui-reviewall": "Barcha tarjimalarni tekshirib chiqish",
+ "translate-taskui-export-to-file": "O'z formatida eksport qilish",
+ "translate-taskui-export-as-po": "Off-line tarjima uchun eksport qilish",
+ "translate-taction-translate": "Tarjima",
+ "translate-taction-proofread": "Ko'zdan kechirish",
+ "translate-taction-lstats": "Til statistikasi",
+ "translate-taction-mstats": "Xabarlar guruhlari statistikasi",
+ "translate-taction-export": "Eksport",
+ "translate-taction-disabled": "Bu vikida bu amal o'chirilgan.",
+ "translate-page-no-such-language": "Noto'g'ri til kodi yuborildi",
+ "translate-page-no-such-group": "Guruh noto'g'ri ko'rsatildi.",
+ "translate-page-disabled": "Bu boʻlimda ushbu tilga tarjima qilish toʻxtatilgan. Sababi: <em>$1</em>",
+ "translate-language-disabled": "Bu tilga tarjima qilish imkoniyati o'chirilgan.",
+ "translate-page-settings-legend": "Moslamalar",
+ "translate-page-group": "Guruh",
+ "translate-page-language": "Til",
+ "translate-page-limit": "Chegara",
+ "translate-page-limit-option": "Bir sahifaga $1 tadan xabar",
+ "translate-submit": "Tasvirlash",
+ "translate-page-navigation-legend": "Saytda harakatlanish",
+ "translate-page-showing": "$3 ta xabardan $1-dan $2-gacha boʻlganlari koʻrsatildi.",
+ "translate-page-showing-all": "$1 ta xabar koʻrsatildi.",
+ "translate-page-showing-none": "Mos xabarlar mavjud emas.",
+ "translate-next": "Keyingi sahifa",
+ "translate-prev": "Oldingi sahifa",
+ "translate-page-description-legend": "Guruh haqida ma'lumot",
+ "translate-page-description-hasoptional": "Mazkur guruhda qo'shimcha xabarlar mavjud.\nQo'shimcha xabarlar faqat shu hollardagina tarjima qilinadi, qachonki xususiy nomlarni transliteratsiya qilishda, yoki agar sizning tilingiz qandaydir qo'shimcha shartlarni taqdim qilsa, - masalan, agarki qayerlardadir bo'sh joydan foydalanmaslik kerak bo'lsa. $1",
+ "translate-page-description-hasoptional-open": "Qoʻshimcha xabarlarni koʻrsatish",
+ "translate-page-edit": "tahrir",
+ "translate-ext-url": "<hr />Sayt: $1",
+ "translate-optional": "(majburiy emas)",
+ "translate-ignored": "(e'tiborga olinmagan)",
+ "translate-edit-title": "Tahrir \"$1\"",
+ "translate-edit-definition": "Xabar ifodasi",
+ "translate-edit-translation": "Tarjima",
+ "translate-edit-contribute": "tahrirlash",
+ "translate-edit-no-information": "'Bu xabar tavsifga ega emas. Agar siz bu xabar qayerda va qanday ishlatilishini bilsangiz, u holda unga tavsif kiritib boshqa tarjimonlarga yordam berishingiz mumkin.''",
+ "translate-edit-information": "Xabar haqida maʼlumot ($1)",
+ "translate-edit-in-other-languages": "Xabar boshqa tillarda",
+ "translate-edit-committed": "Dasturda joriy tarjima",
+ "translate-edit-warnings": "Chala tarjima qilinayotgani haqida ogohlantirishlar",
+ "translate-edit-tmsugs": "Tarjimalar xotirasidan takliflar",
+ "translate-edit-tmmatch-source": "Tarjima uchun manba xabar matni: $1",
+ "translate-edit-tmmatch": "$1% moslik",
+ "translate-use-suggestion": "Joriy tarjima matnini mazkur taklifga almashtirish.",
+ "translate-edit-nopermission": "Xabarni tarjima qilish uchun ruxsat zarur.",
+ "translate-edit-askpermission": "Ruxsat so'rash",
+ "translate-magic-pagename": "MediaWikining chuqur o'rganilgan tarjimasi",
+ "translate-magic-module": "Modul",
+ "translate-magic-submit": "Tasvirlash",
+ "translate-magic-cm-export": "Eksport",
+ "translate-magic-nothing-to-export": "Eksport qilishga hech nima yoʻq.",
+ "translate-magic-cm-to-be": "Bo'lishi kerak",
+ "translate-magic-cm-current": "Joriy",
+ "translate-magic-cm-original": "Asl",
+ "translate-magic-cm-comment": "Izoh",
+ "translate-magic-cm-save": "Saqlash",
+ "translate-magic-cm-updatedusing": "[[Special:AdvancedTranslate|{{int:Translate-magic-pagename}}]] yordamida yangilandi",
+ "translate-magic-cm-savefailed": "Saqlash amalga oshmadi",
+ "translate-magic-special": "Maxsus sahifalarning taxalluslari",
+ "translate-magic-words": "Sehrli so'zlar",
+ "translate-magic-namespace": "Nomlar fazosi nomlari",
+ "translate-magic-notsaved": "Sizning tahriringiz saqlanmadi!",
+ "translate-magic-errors": "Iltimos, tarjimadagi {{PLURAL:$1|quyidagi xatoni|quyidagi xatolarni}} tuzating:",
+ "translate-magic-saved": "Sizning tahrirlaringiz muvaffaqiyatli saqlandi.",
+ "translate-checks-parameters": "Quyidagi {{PLURAL:$2|koʻrsatkich|koʻrsatkichlar}} qoʻllanilmayapti:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-balance": "Juft bo'lmagan miqdordagi ochiluvchi va yopiluvchi {{PLURAL:$2|qavslar|qavslar}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links": "Quyidagi {{PLURAL:$2|1=havola|$2 ta havola}} muammo keltirib chiqarmoqda:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links-missing": "Quyidagi {{PLURAL:$2|havola ishlatilmayapti|$2 ta havola ishlatilmayapti}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-plural": "Originalda <nowiki>{{PLURAL:}}</nowiki>dan foydalanilgan, tarjimada esa — yoʻq.",
+ "translate-checks-plural-forms": "<nowiki>{{PLURAL:}}</nowiki>da {{PLURAL:$1|$1 ta o'zgaruvchi}} kiritildi, lekin {{PLURAL:$2|faqat bitta o'zgaruvchi|$2 ta o'zgaruvchi}} qo'llaniladi (0= va 1= talik o'zgaruvchilar bundan mustasno).",
+ "translate-checks-malformed": "<nowiki>$1</nowiki> xato.",
+ "translate-checks-fudforum-syntax": "Ushbu loyihada <nowiki>$2</nowiki> o'rniga <nowiki>$1</nowiki> dan foydalanish.",
+ "translate-pref-nonewsletter": "Menga elektron pochta orqali axborot xatlari joʻnatilmasin",
+ "translate-pref-editassistlang": "Yordamchi tillar:",
+ "prefs-translate": "Tarjima moslamalari",
+ "translate-pref-editassistlang-bad": "Ro'yxatda noto'g'ri til kodi:\n<nowiki>$1</nowiki>.",
+ "right-translate": "Tarjima qilish interfeysidan foydalangan holda tahrirlash",
+ "right-translate-manage": "Xabarlar guruhlarini boshqarish",
+ "action-translate-manage": "xabarlar guruhlarini boshqarish",
+ "right-translate-import": "Offline tarjimalarni yuklash",
+ "action-translate-import": "offline tarjimalarni yuklash",
+ "right-translate-messagereview": "Tarjimalarni koʻrib chiqish",
+ "right-translate-groupreview": "Xabarlar guruhlarini qayta ishlash holatini o'zgartirish",
+ "translate-rc-translation-filter": "Tarjimalarni filtrlash",
+ "translate-rc-translation-filter-no": "Cheklovlarsiz",
+ "translate-rc-translation-filter-only": "Faqat tarjimalarni koʻrsatish",
+ "translate-rc-translation-filter-filter": "Tarjimalarni yashirish",
+ "translate-rc-translation-filter-site": "Faqat saytning tizimli xabarlari",
+ "translationstats": "Tarjimalar statistikasi",
+ "translate-stats-edits": "Tahrirlar",
+ "translate-stats-users": "Tarjimonlar",
+ "translate-stats-registrations": "Ro'yxatga olishlar",
+ "translate-stats-reviews": "Tekshiruvlar",
+ "translate-stats-reviewers": "Taqrizchilar",
+ "translate-statsf-intro": "Bu shakl sizga qulay jadval tuzishga yordam beradi.\nBarcha qiymatlar yuqori va past chegaralarga ega.",
+ "translate-statsf-options": "Jadval moslamalari",
+ "translate-statsf-width": "Uzunlik piksellarda",
+ "translate-statsf-height": "Balandlik piksellarda:",
+ "translate-statsf-days": "Kunlardagi vaqt davri:",
+ "translate-statsf-start": "Boshlang'ich sana:",
+ "translate-statsf-scale": "Tafsilotlilik darajasi:",
+ "translate-statsf-scale-months": "Oylar",
+ "translate-statsf-scale-weeks": "Haftalar",
+ "translate-statsf-scale-days": "Kunlar",
+ "translate-statsf-scale-hours": "Soatlar",
+ "translate-statsf-count": "O'lchov",
+ "translate-statsf-count-edits": "Tahrirlar soni",
+ "translate-statsf-count-users": "Faol tarjimonlar",
+ "translate-statsf-count-registrations": "Yangi foydalanuvchilar",
+ "translate-statsf-count-reviews": "Tarjima taqrizchilari",
+ "translate-statsf-count-reviewers": "Taqrizchilar",
+ "translate-statsf-language": "Til kodlari roʻyxati vergul orqali:",
+ "translate-statsf-group": "Guruh kodlari roʻyxati vergul orqali:",
+ "translate-statsf-submit": "Ko‘rib chiqish",
+ "translate-tag-category": "Tarjima qilinadigan sahifalar",
+ "translate-tag-page-desc": "[[$2|$1]] viki-sahifasining tarjimasi",
+ "translate-sidebar-alltrans": "Boshqa tillarda",
+ "translations": "Barcha tarjimalar",
+ "translations-summary": "Barcha ruxsat etilgan tarjimalarni tasvirlash uchun xabar nomini kiriting.",
+ "translate-translations-no-message": "\"$1\" tarjima qilinmaydigan xabar",
+ "translate-translations-none": "\"$1\" uchun tarjimalar mavjud emas",
+ "translate-translations-count": "{{PLURAL:$1|Bitta tarjima|$1 ta tarjima}} topildi.",
+ "translate-translations-fieldset-title": "Xabar",
+ "translate-translations-messagename": "Nomi:",
+ "translate-translations-project": "Loyiha:",
+ "translate-translations-history-short": "t",
+ "languagestats": "Til boʻyicha statistika",
+ "languagestats-summary": "Ushbu sahifada mazkur tilning barcha guruhlar boʻyicha tarjimalar statistikasi keltirilgan.",
+ "languagestats-stats-for": "$1 tiliga tarjimalar statistikasi ($2).",
+ "languagestats-recenttranslations": "yaqin oradagi tarjimalar",
+ "translate-langstats-incomplete": "Ushbu sahifadagi ayrim statistika ma'lumotlari to'liq emas. To'liq ma'lumotlar olish uchun sahifani qayta yuklang.",
+ "translate-langstats-expand": "yoyish",
+ "translate-langstats-collapse": "yigʻish",
+ "translate-langstats-expandall": "hammasini yoyish",
+ "translate-langstats-collapseall": "hammasini yigʻish",
+ "translate-language-code": "Til kodi",
+ "translate-language-code-field-name": "Til kodi:",
+ "translate-suppress-complete": "Toʻliq tarjima qilingan xabar guruhlari koʻrsatilmasin",
+ "translate-ls-noempty": "Toʻliq tarjima qilinmagan xabar guruhlari koʻrsatilmasin",
+ "translate-language": "Til",
+ "translate-total": "Xabarlar",
+ "translate-untranslated": "Tarjima qilinmaganlari",
+ "translate-percentage-complete": "Bajarildi",
+ "translate-percentage-fuzzy": "Eskirdi",
+ "translate-languagestats-overall": "Barcha guruhlar xabarlari",
+ "translate-ls-submit": "Statistikani koʻrsat",
+ "translate-ls-column-group": "Xabarlar guruhi",
+ "translate-mgs-pagename": "Xabarlar guruhlari statistikasi",
+ "translate-mgs-fieldset": "Moslamalarni koʻrsatish",
+ "translate-mgs-group": "Xabarlar guruhi:",
+ "translate-mgs-submit": "Statistikani koʻrsat",
+ "translate-mgs-column-language": "Til",
+ "supportedlanguages": "Mavjud tillar",
+ "supportedlanguages-summary": "Ushbu sahifada {{SITENAME}} loyihasi tomonidan qoʻllaniladigan tillar roʻyxati va shu tillarga tarjima qilish ustida ishlayotganlar nomi keltirilgan.\nTarjimonning nomi u qancha koʻp tahrirlar qilgan boʻlsa, shuncha yirikroq tasvirlanadi.\nTagchiziqning rangiga qarab, tarjimon bu yerda qancha vaqt oldin oxirgi marta biror-bir harakatni amalga oshirganligini tushunsa boʻladi.",
+ "supportedlanguages-colorlegend": "Rang sharhi: oxirgi tarjima $1 kun oldin bo'lgan.",
+ "supportedlanguages-translators": "{{PLURAL:$2|Tarjimon|Tarjimonlar}}: $1",
+ "supportedlanguages-recenttranslations": "yaqin oradagi tarjimalar",
+ "supportedlanguages-count": "Jami $1 ta til.",
+ "supportedlanguages-activity": "$1: $2 {{PLURAL:$2|ta tahrir}} - oxirgi tahrir $3 {{PLURAL:$3|kun}} oldin",
+ "translate-save": "Saqlash ($1)",
+ "translate-jssti-add": "Ro'yxatga qo'shish",
+ "managemessagegroups": "Xabar guruhlarini boshqarish",
+ "translate-smg-nochanges": "Ishlov berish uchun mos oʻzgarishlar yoʻq.",
+ "translate-smg-left": "Vikiga xabaring tarkibi",
+ "translate-smg-right": "Kiruvchi oʻzgarishlar",
+ "translate-manage-import-diff": "Xabar $1 | Amallar: $2",
+ "translate-manage-import-new": "Yangi xabar $1",
+ "translate-manage-import-deleted": "O'chirilgan xabar $1",
+ "translate-manage-action-import": "Import",
+ "translate-manage-action-conflict": "Import qilish va noaniqlik",
+ "translate-manage-action-ignore": "E'tibor qilmaslik",
+ "translate-manage-action-fuzzy": "Import qilish va noaniq tarjimalar",
+ "translate-js-summary": "Tavsif",
+ "translate-js-save": "Saqlash",
+ "translate-js-next": "Saqlash va keyingisini ochish",
+ "translate-js-nonext": "Bu mazkur sahifadagi oxirgi xabar edi.",
+ "translate-js-skip": "Keyingisiga o'tish",
+ "translate-js-save-failed": "Saqlash bajarilmadi. Iltimos, bu kamchilik haqida xabar bering.",
+ "translate-js-history": "Tarjima tarixi",
+ "translate-js-support": "Savol berish",
+ "translate-js-support-title": "Agar ushbu xabarni toʻgʻri tarjima qilish uchun zarur boʻlgan maʼlumotlar yoʻq boʻlsa, yordam soʻrab murojaat qiling.",
+ "translate-js-support-unsaved-warning": "Sizda saqlanmagan tarjimalar bor.",
+ "translate-gs-pos": "O'r.",
+ "translate-gs-code": "Kod",
+ "translate-gs-continent": "Qit'a",
+ "translate-gs-speakers": "So'zlashuvchilar",
+ "translate-gs-score": "Baho",
+ "translate-gs-multiple": "Bir qancha",
+ "translate-gs-count": "Miqdor",
+ "translate-gs-total": "Jami",
+ "translate-gs-avgscore": "O'rt. baho",
+ "translate-documentation-language": "Xabarlar hujjatlashtirilishi",
+ "translate-searchprofile": "Tarjimalar",
+ "translate-searchprofile-tooltip": "Barcha tarjimalardan qidirish",
+ "translate-search-languagefilter": "Mazkur til boʻyicha saralash:",
+ "translate-search-nofilter": "Filtrsiz",
+ "translate-messagereview-submit": "Qabul qilish",
+ "translate-messagereview-progress": "Qabul qilinmoqda...",
+ "translate-messagereview-failure": "Qabul qilinmoqda... amalga oshmadi: $1",
+ "translate-messagereview-done": "Qabul qilindi",
+ "translate-messagereview-reviews": "{{PLURAL:$1|foydalanuvchi}} tomonidan qabul qilindi",
+ "translate-messagereview-reviewswithyou": "{{PLURAL:$1|Siz|$1 foydalanuvchilar va siz}} tomondan tasdiqlandi",
+ "api-error-invalidrevision": "Tarjima topilmadi",
+ "api-error-unknownmessage": "Xabar topilmadi",
+ "api-error-fuzzymessage": "Tarjima noaniq deb belgilandi",
+ "api-error-owntranslation": "Siz oʻzingizning tarjimalaringizni tasdiqlay olmaysiz",
+ "translate-messagereview-no-fuzzy": "Noaniq tarjimalar qabul qilinmaydi.",
+ "translate-messagereview-no-own": "Siz oʻzingizning tarjimalaringizni tasdiqlay olmaysiz",
+ "translate-messagereview-doit": "Ushbu tarjimani to'g'ri deb tasdiqlash.",
+ "log-name-translationreview": "Tarjimalarni tekshirish qaydlari",
+ "log-description-translationreview": "Barcha tarjima taqrizlari va xabar guruhlari qaydi",
+ "logentry-translationreview-message": "$1 $3 sahifasi tarjimasini {{GENDER:$2|tekshirib chiqdi}}",
+ "translate-workflow-state-": "(o'rnatilmagan)",
+ "translate-workflowstatus": "Holat: $1",
+ "translate-workflow-set-do": "O'rnatish",
+ "translate-workflow-set-doing": "O'rnatilmoqda...",
+ "translate-workflow-set-done": "O'rnatildi!",
+ "translate-stats-workflow": "Holat",
+ "translate-workflowgroup-label": "Jarayon holati",
+ "translate-dynagroup-recent-label": "Yaqin oradagi tarjimalar",
+ "translate-dynagroup-recent-desc": "Ushbu xabarlar guruhida mazkur tilga yaqin orada qilingan barcha tarjimalar koʻrsatilgan.\nTarjimalarni koʻzdan kechirib chiqish uchun qulay.",
+ "translate-dynagroup-by": "Tarjima {{GENDER:$1|$1}} tomonidan bajarildi",
+ "translate-dynagroup-byc": "Tarjima {{GENDER:$1|$1}} ($2) tomonidan bajarildi",
+ "translate-dynagroup-last": "Oxirgi oʻzgarish {{GENDER:$1|$1}} tomonidan kiritilgan",
+ "translate-dynagroup-lastc": "Oxirgi oʻzgarish {{GENDER:$1|$1}} ($2) tomonidan kiritilgan",
+ "translate-gethelp": "Yordam"
+}
diff --git a/MLEB/Translate/i18n/core/vec.json b/MLEB/Translate/i18n/core/vec.json
new file mode 100644
index 00000000..dec91bdd
--- /dev/null
+++ b/MLEB/Translate/i18n/core/vec.json
@@ -0,0 +1,89 @@
+{
+ "@metadata": {
+ "authors": [
+ "Candalua"
+ ]
+ },
+ "translate": "Tradussion",
+ "translate-desc": "[[Special:Translate|Pagina speciale]] par tradur MediaWiki e altro",
+ "translate-page-no-such-language": "La lengua indicà no la xe valida.",
+ "translate-page-no-such-group": "El grupo indicà no'l xe valido.",
+ "translate-page-settings-legend": "Inpostassion",
+ "translate-page-group": "Grupo",
+ "translate-page-language": "Lengua",
+ "translate-page-limit": "Limite",
+ "translate-page-limit-option": "$1 {{PLURAL:$1|messagio|messagi}} par pagina",
+ "translate-submit": "Mostra",
+ "translate-page-navigation-legend": "Navigassion",
+ "translate-page-showing": "Sti qua i xe i messagi da $1 a $2 de $3.",
+ "translate-page-showing-all": "Ghe xe $1 {{PLURAL:$1|messagio|messagi}}.",
+ "translate-page-showing-none": "Nissun messagio da far védar.",
+ "translate-next": "Pagina sucessiva",
+ "translate-prev": "Pagina preçedente",
+ "translate-page-description-legend": "Informassion sul grupo",
+ "translate-page-edit": "modifica",
+ "translate-optional": "(opsionale)",
+ "translate-ignored": "(ignorà)",
+ "translate-edit-definition": "Definission del messagio",
+ "translate-edit-contribute": "contribuìssi",
+ "translate-edit-no-information": "''Sto messagio no'l gà documentassion.\nSe te sè dove o come sto messagio el vien doparà, te podi jutar altri tradutori zontando documentassion a sto messagio.''",
+ "translate-edit-information": "Informassion sul messagio \"$2\" ($1)",
+ "translate-edit-in-other-languages": "El messagio \"$1\" in altre lengue",
+ "translate-edit-committed": "Tradussion atuale del software",
+ "translate-edit-warnings": "Avertimenti su tradussion incomplete",
+ "translate-magic-pagename": "Tradussion estesa de MediaWiki",
+ "translate-magic-help": "Te pol tradur i alias de le pagine speciali, le parole magiche, i nomi de le skin e i nomi dei namespace.\n\nI alias e le parole magiche le pol verghe più tradussion.\nLe tradussion le xe separà da na virgola (,).\nI nomi dei namespace i pol verghe na tradussion sola.\n\nIn te le tradussion dei namespace <code>$1 talk</code> el xe speciale. <code>$1</code> el vien sostituìo col nome del sito (par esenpio <code>{{ns:project_talk}}</code>).\nSe ne la to lengua no se riesse a scrivar na espression valida sensa canbiar el nome del sito, par piaser contata un svilupador.\n\nTe ghè da èssar nel grupo dei tradutori par salvar i canbiamenti.\nI canbiamenti no i xe salvà finché no te struchi el boton qua soto.",
+ "translate-magic-module": "Modulo:",
+ "translate-magic-submit": "Mostra",
+ "translate-magic-cm-export": "Esporta",
+ "translate-magic-cm-to-be": "Nova",
+ "translate-magic-cm-current": "Atuale",
+ "translate-magic-cm-original": "Originàl",
+ "translate-magic-cm-comment": "Comento:",
+ "translate-magic-cm-save": "Salva",
+ "translate-magic-cm-updatedusing": "Agiornà doparando [[Special:AdvancedTranslate|{{int:Translate-magic-pagename}}]]",
+ "translate-magic-cm-savefailed": "Salvatagio mìa riussìo",
+ "translate-magic-special": "Nomi alternativi de le pagine speciali",
+ "translate-magic-words": "Parole magiche",
+ "translate-magic-namespace": "Nomi dei namespace",
+ "translate-checks-parameters": "{{PLURAL:$2|El seguente parametro no'l|I seguenti parametri no i}} xe mìa doparà: <strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-balance": "Ghe xe un nùmaro dispari de {{PLURAL:$2|paréntesi|paréntesi}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links": "{{PLURAL:$2|El colegamento seguente el|I colegamenti seguenti i}} pol causar problemi:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-xhtml": "Par piaser, sostituìssi {{PLURAL:$2|el seguente tag con quel giusto|i seguenti tag con quei giusti}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-plural": "La definission la dòpara <nowiki>{{PLURAL:}}</nowiki> ma la tradussion no.",
+ "translate-pref-nonewsletter": "No stà mandarme notiziari par e-mail",
+ "right-translate": "Modifica doparando l'interfacia de tradussion",
+ "translate-rc-translation-filter": "Filtra le tradussion:",
+ "translate-rc-translation-filter-no": "No stà far gnente",
+ "translationstats": "Statìsteghe de tradussion",
+ "translate-stats-edits": "Modifiche",
+ "translate-stats-users": "Tradutori",
+ "translate-statsf-options": "Opzioni grafico",
+ "translate-statsf-width": "Larghezza in pixel:",
+ "translate-statsf-height": "Altezza in pixel:",
+ "translate-statsf-days": "Periodo de tenpo in giorni:",
+ "translate-statsf-start": "Periodo de tenpo in giorni:",
+ "translate-statsf-scale": "Un punto ogni:",
+ "translate-statsf-scale-days": "Giorno",
+ "translate-statsf-scale-hours": "Ora",
+ "translate-statsf-count": "Misura:",
+ "translate-statsf-count-edits": "Nùmaro de modifiche",
+ "translate-statsf-count-users": "Tradutori ativi",
+ "translate-statsf-submit": "Anteprima",
+ "translate-tag-category": "Pagine che se pol tradur",
+ "translate-tag-page-desc": "Tradussion de la pagina wiki [[$2|$1]].",
+ "translate-sidebar-alltrans": "In altre lengoe",
+ "translations": "Tute le tradussion",
+ "translate-translations-fieldset-title": "Messajo",
+ "translate-translations-messagename": "Nome:",
+ "translate-translations-project": "Projeto:",
+ "languagestats": "Statìsteghe de le lengoe",
+ "translate-language-code": "Còdese lengoa",
+ "translate-language-code-field-name": "Còdese lengoa:",
+ "translate-language": "Lengoa",
+ "translate-total": "Messaji",
+ "translate-untranslated": "Mia tradoti",
+ "translate-percentage-complete": "Conpletà",
+ "translate-percentage-fuzzy": "Da ajornar",
+ "translate-save": "Salva ($1)"
+}
diff --git a/MLEB/Translate/i18n/core/vep.json b/MLEB/Translate/i18n/core/vep.json
new file mode 100644
index 00000000..dc94b217
--- /dev/null
+++ b/MLEB/Translate/i18n/core/vep.json
@@ -0,0 +1,163 @@
+{
+ "@metadata": {
+ "authors": [
+ "Sociologist",
+ "Игорь Бродский"
+ ]
+ },
+ "translate": "Käta",
+ "translate-desc": "[[Special:Translate|Specialine lehtpol']] MediaWikid da toižid programmid kätes",
+ "translate-taskui-view": "Ozutada kaik kirjutesed",
+ "translate-taskui-untranslated": "Ozutada kändmatomad kirjutesed",
+ "translate-taskui-optional": "Ozutada ližakirjutesed",
+ "translate-taskui-acceptqueue": "Vaiše kirjutesed, kudambad sab znamoita kut kodvdud",
+ "translate-taskui-reviewall": "Kodvda kaik kändmižed",
+ "translate-taskui-export-to-file": "Eksportiruida ičeze formatas",
+ "translate-taskui-export-as-po": "Eksportiruida, miše käta verkota",
+ "translate-taction-translate": "Käta",
+ "translate-taction-proofread": "Kodvda",
+ "translate-taction-lstats": "Kel'statistik",
+ "translate-taction-mstats": "Kirjutesiden gruppiden statistik",
+ "translate-taction-export": "Eksport",
+ "translate-taction-disabled": "Nece tegend om kävutamatoi neciš vikiš.",
+ "translate-page-no-such-language": "Ozutadud kel' om petuzline.",
+ "translate-page-no-such-group": "Ozutadud grupp om petuzline.",
+ "translate-language-disabled": "Ei sa käta neche kel'he.",
+ "translate-page-settings-legend": "Järgendused",
+ "translate-page-group": "Grupp",
+ "translate-page-language": "Kel'",
+ "translate-page-limit": "Kaidenduz",
+ "translate-page-limit-option": "$1 {{PLURAL:$1|tedotuz|tedotust}} lehtpolel",
+ "translate-submit": "Ozutada",
+ "translate-page-navigation-legend": "Navigacii",
+ "translate-page-showing-all": "Ozutam $1 {{PLURAL:$1|kirjutez|kirjutest}}.",
+ "translate-page-showing-none": "Ei ole kirjutesid ozutades.",
+ "translate-next": "Jäl'ghine lehtpol'",
+ "translate-prev": "Edeline lehtpol'",
+ "translate-page-description-legend": "Informacii gruppas",
+ "translate-page-description-hasoptional-open": "Ozutada ližakirjutesed.",
+ "translate-page-edit": "redaktiruida",
+ "translate-ext-url": "<hr />Sait: $1",
+ "translate-optional": "(opcionaline)",
+ "translate-ignored": "(ignoriruidud)",
+ "translate-edit-title": "Redaktiruida \"$1\"",
+ "translate-edit-definition": "Tedotusen formuliruind",
+ "translate-edit-translation": "Kändmine",
+ "translate-edit-contribute": "ühtneda",
+ "translate-edit-information": "Informacii ($1)-kirjutesen polhe",
+ "translate-edit-in-other-languages": "Tedotuz toižil kelil:",
+ "translate-edit-committed": "Nügüdläine känduz programmas",
+ "translate-edit-warnings": "Varutused täutmatomiš kändusiš",
+ "translate-edit-tmmatch": "Sättund om $1%",
+ "translate-edit-askpermission": "Pakita laskendas",
+ "translate-magic-module": "Modul':",
+ "translate-magic-submit": "Ozutada",
+ "translate-magic-cm-export": "Eksport",
+ "translate-magic-nothing-to-export": "Ei ole midä eksportiruida",
+ "translate-magic-cm-to-be": "Pidab olda",
+ "translate-magic-cm-current": "Nügüdläine",
+ "translate-magic-cm-original": "Originalilne",
+ "translate-magic-cm-comment": "Homaičend:",
+ "translate-magic-cm-save": "Kirjutada muštho",
+ "translate-magic-cm-updatedusing": "Udištadud [[Special:AdvancedTranslate|{{int:Translate-magic-pagename}}]]-lehtpolen kävutaden",
+ "translate-magic-cm-savefailed": "Ei voi kirjutada muštho",
+ "translate-magic-words": "Noidsanad",
+ "translate-pref-nonewsletter": "Algat oigekoi minei informacišt bülletenid e-počtadme",
+ "translate-pref-editassistlang": "Abukeled:",
+ "prefs-translate": "Kändmižen opcijad",
+ "translate-rc-translation-filter": "Fil'truida kändmižed:",
+ "translate-rc-translation-filter-no": "Ala tege nimidä",
+ "translate-rc-translation-filter-only": "Ozutada vaiše kändmižed",
+ "translate-rc-translation-filter-filter": "Peitta kändmižed",
+ "translate-rc-translation-filter-site": "Vaiše saitan sistemtedotusiden toižetamine",
+ "translationstats": "Kändmižen statistik",
+ "translate-stats-edits": "Redakcijad",
+ "translate-stats-users": "Kändajad",
+ "translate-stats-registrations": "Registracijad",
+ "translate-stats-reviews": "Redakcijad",
+ "translate-stats-reviewers": "Arvostelijad",
+ "translate-statsf-options": "Grafikan järgendused",
+ "translate-statsf-width": "Leveduz pikseliš:",
+ "translate-statsf-height": "Korktuz pikseliš:",
+ "translate-statsf-days": "Pord päiviš:",
+ "translate-statsf-start": "Augotiždat:",
+ "translate-statsf-scale": "Detalizacijan mär:",
+ "translate-statsf-scale-months": "Kud",
+ "translate-statsf-scale-weeks": "Nedalid",
+ "translate-statsf-scale-days": "Päiväd",
+ "translate-statsf-scale-hours": "Časud",
+ "translate-statsf-count": "Mär:",
+ "translate-statsf-count-edits": "Redakcijoiden lugumär",
+ "translate-statsf-count-users": "Aktivižed kändajad",
+ "translate-statsf-count-registrations": "Uded kävutajad",
+ "translate-statsf-count-reviews": "Kändmižen arvostelendad",
+ "translate-statsf-count-reviewers": "Arvostelijad",
+ "translate-statsf-language": "Katkoimel erigoittud kelenkodoiden nimikirjutez:",
+ "translate-statsf-group": "Katkoimel erigoittud gruppkodoiden nimikirjutez:",
+ "translate-statsf-submit": "Ezikacund",
+ "translate-tag-category": "Ned lehtpoled, kudambad voib käta",
+ "translate-tag-page-desc": "[[$2|$1]]-wikilehtpolen kändmine.",
+ "translate-sidebar-alltrans": "Toižil kelil",
+ "translations": "Kaik kändused",
+ "translate-translations-fieldset-title": "Tedotuz",
+ "translate-translations-messagename": "Nimi:",
+ "translate-translations-project": "Proekt:",
+ "translate-translations-history-short": "i",
+ "languagestats": "Kel'statistik",
+ "languagestats-recenttranslations": "tantoižed kändmižed",
+ "translate-langstats-expand": "levitada",
+ "translate-langstats-collapse": "peitta",
+ "translate-langstats-expandall": "levitada kaik",
+ "translate-langstats-collapseall": "peitta kaik",
+ "translate-language-code": "Kelenkod",
+ "translate-language-code-field-name": "Kelenkod:",
+ "translate-language": "Kel'",
+ "translate-total": "Tedotused",
+ "translate-untranslated": "Kändmatomad",
+ "translate-percentage-complete": "Om tehtud",
+ "translate-percentage-fuzzy": "Om vanhtunu",
+ "translate-languagestats-overall": "Kaik kirjutesiden gruppad ühtes",
+ "translate-mgs-group": "Tedotusiden grupp:",
+ "translate-mgs-submit": "Ozutada statistik",
+ "translate-mgs-column-language": "Kel’",
+ "translate-mgs-totals": "Kaik keled ühtes",
+ "supportedlanguages": "Pid'oiteldud keled",
+ "supportedlanguages-recenttranslations": "tantoižed kändmižed",
+ "translate-save": "Panda muštho ($1)",
+ "translate-jssti-add": "Ližata nimikirjuteshe",
+ "managemessagegroups": "Tedotuzgruppiden ohjanduz",
+ "translate-manage-import-diff": "Tedotuz $1 | Tegod: $2",
+ "translate-manage-import-new": "Uz' tedotuz $1",
+ "translate-manage-import-deleted": "Čutud poiš tedotuz $1",
+ "translate-manage-action-import": "Import",
+ "translate-manage-action-ignore": "Ignoriruida",
+ "translate-manage-submit": "Tehta",
+ "translate-manage-import-done": "Kaik om tehtud!",
+ "translate-import-from-local": "Jügutoitta lokaline fail:",
+ "translate-import-load": "Jügutoitta fail",
+ "translate-js-history": "Kändmižen istorii",
+ "translate-js-support": "Panda küzund",
+ "translate-gs-pos": "Sij.",
+ "translate-gs-code": "Kod",
+ "translate-gs-continent": "Kontinent",
+ "translate-gs-speakers": "Pagižijad",
+ "translate-gs-score": "Punktad",
+ "translate-gs-multiple": "Äi",
+ "translate-gs-count": "Lugumär",
+ "translate-gs-total": "Ühtes",
+ "translate-searchprofile": "Kändused",
+ "translate-searchprofile-tooltip": "Ectä kaikiš kändmižiš",
+ "translate-search-nofilter": "Fil'truimata",
+ "translate-messagereview-submit": "Otta",
+ "api-error-invalidrevision": "Ei voi löuta kändust",
+ "translate-workflow-state-": "(ei ole kävutamas)",
+ "translate-workflowstatus": "Status: $1",
+ "translate-workflow-set-do": "Panda",
+ "translate-workflow-set-doing": "Panmine...",
+ "translate-workflow-set-done": "Om pandud!",
+ "translate-stats-workflow": "Status",
+ "translate-dynagroup-recent-label": "Tantoižed kändmižed",
+ "translate-dynagroup-recent-desc": "Nece tedotandgrupp ozutab kaik tantoižed kändmižed neche kel'he.\nOm tarbhaižemb kodvingtöks.",
+ "tux-empty-list-other-link": "Ozutada kaik kirjutesed",
+ "tux-editor-message-tools-translations": "Kaik kändmižed"
+}
diff --git a/MLEB/Translate/i18n/core/vi.json b/MLEB/Translate/i18n/core/vi.json
new file mode 100644
index 00000000..3efd6681
--- /dev/null
+++ b/MLEB/Translate/i18n/core/vi.json
@@ -0,0 +1,389 @@
+{
+ "@metadata": {
+ "authors": [
+ "Minh Nguyen",
+ "Vinhtantran"
+ ]
+ },
+ "translate": "Biên dịch",
+ "translate-desc": "[[Special:Translate|Trang đặc biệt]] dùng để dịch MediaWiki và các thứ khác",
+ "translate-taskui-view": "Hiện tất cả các thông điệp",
+ "translate-taskui-untranslated": "Các thông điệp chưa dịch",
+ "translate-taskui-optional": "Các thông điệp tùy dịch",
+ "translate-taskui-acceptqueue": "Chỉ hiện các thông điệp tôi có quyền đánh dấu duyệt",
+ "translate-taskui-reviewall": "Duyệt tất cả các bản dịch",
+ "translate-taskui-export-to-file": "Xuất ra định dạng bản địa",
+ "translate-taskui-export-as-po": "Xuất để dịch ngoại tuyến",
+ "translate-taction-translate": "Biên dịch",
+ "translate-taction-proofread": "Duyệt",
+ "translate-taction-lstats": "Thống kê ngôn ngữ",
+ "translate-taction-mstats": "Thống kê nhóm thông điệp",
+ "translate-taction-export": "Xuất",
+ "translate-taction-disabled": "Tác vụ này đã bị tắt trên wiki này.",
+ "translate-page-no-such-language": "Ngôn ngữ chỉ định không đúng.",
+ "translate-page-no-such-group": "Nhóm chỉ định không đúng.",
+ "translate-page-disabled": "Các bản dịch trong ngôn ngữ này trong nhóm đã bị tắt. Lý do:\n\n<em>$1</em>",
+ "translate-language-disabled": "Đã tắt chức năng dịch sang ngôn ngữ này.",
+ "translate-page-settings-legend": "Thiết lập",
+ "translate-page-group": "Nhóm",
+ "translate-page-language": "Ngôn ngữ",
+ "translate-page-limit": "Giới hạn",
+ "translate-page-limit-option": "$1 {{PLURAL:$1|thông điệp|thông điệp}} mỗi trang",
+ "translate-submit": "Xem",
+ "translate-page-navigation-legend": "Điều khiển",
+ "translate-page-showing": "Đang hiển thị thông điệp có thứ tự từ $1 đến $2 trong tổng số $3 thông điệp.",
+ "translate-page-showing-all": "Đang hiển thị $1 {{PLURAL:$1|thông điệp|thông điệp}}.",
+ "translate-page-showing-none": "Không có thông điệp nào.",
+ "translate-page-paging-links": "[ $1 ] [ $2 ]",
+ "translate-next": "Trang sau",
+ "translate-prev": "Trang trước",
+ "translate-page-description-legend": "Thông tin về nhóm",
+ "translate-page-description-hasoptional": "Nhóm thông điệp này có thông điệp tùy dịch.\nChỉ nên dịch một thông điệp tùy dịch nếu ngôn ngữ của bạn có những thuộc tính đặc biệt\nthí dụ như không sử dụng khoảng cách hoặc có hệ thống phiên âm tên. $1",
+ "translate-page-description-hasoptional-open": "Xem các thông điệp tùy dịch.",
+ "translate-page-edit": "sửa",
+ "translate-ext-url": "<hr />Website: $1",
+ "translate-optional": "(tùy chọn)",
+ "translate-ignored": "(đã bỏ)",
+ "translate-edit-title": "Sửa đổi “$1”",
+ "translate-edit-definition": "Định nghĩa thông điệp",
+ "translate-edit-translation": "Bản dịch",
+ "translate-edit-contribute": "đóng góp",
+ "translate-edit-no-information": "<em>Thông điệp này hiện chưa có tài liệu hướng dẫn. Nếu bạn biết thông điệp này dùng ở đâu và dùng như thế nào, bạn có thể giúp những biên dịch viên khác bằng cách thêm tài liệu hướng dẫn cho nó.</em>",
+ "translate-edit-information": "Thông tin về thông điệp ($1)",
+ "translate-edit-in-other-languages": "Thông điệp bằng thứ tiếng khác",
+ "translate-edit-committed": "Bản dịch hiện tại trong phần mềm",
+ "translate-edit-warnings": "Các cảnh báo về các bản dịch chưa hoàn thành",
+ "translate-edit-tmsugs": "Gợi ý từ bộ nhớ biên dịch",
+ "translate-edit-tmmatch-source": "Văn bản gốc để dịch: $1",
+ "translate-edit-tmmatch": "trùng $1%",
+ "translate-use-suggestion": "Thay thế bản dịch hiện hành với đề nghị này.",
+ "translate-edit-nopermission": "Bạn cần xin phép biên dịch thông điệp.",
+ "translate-edit-askpermission": "Xin phép",
+ "translate-magic-pagename": "Bản dịch MediaWiki mở rộng",
+ "translate-magic-help": "Bạn có thể dịch bí danh của các trang đặc biệt, câu thần chú và tên của không gian tên.\n\nBí danh của các trang đặc biệt và câu thần chú có thể có nhiều bản dịch.\nCác bản dịch phân cách nhau bằng dấu phẩy (,).\nTên không gian tên chỉ có thể có một bản dịch.\n\nViệc dịch không gian tên dự án <code>$1 talk</code> có thể phức tạp hơn.\n<code>$1</code> được thay thế bằng tên trang (<code>SITENAME</code>) của dự án (ví dụ <code>{{ns:project_talk}}</code>).\nNếu cần thay đổi tên trang trong không gian tên để đúng ngữ pháp trong ngôn ngữ của bạn, xin hãy cho chúng tôi biết tại [[Support]].\n\nBạn cần phải là biên dịch viên để có thể lưu các thay đổi.\nCác thay đổi sẽ không được lưu lại đến khi nào bạn nhấn vào nút Lưu ở dưới.",
+ "translate-magic-module": "Gói:",
+ "translate-magic-submit": "Xem",
+ "translate-magic-cm-export": "Xuất",
+ "translate-magic-nothing-to-export": "Không có gì để xuất ra.",
+ "translate-magic-cm-to-be": "Trở thành",
+ "translate-magic-cm-current": "Hiện hành",
+ "translate-magic-cm-original": "Bản gốc",
+ "translate-magic-cm-comment": "Tóm lược:",
+ "translate-magic-cm-save": "Lưu",
+ "translate-magic-cm-updatedusing": "Đã cập nhật bằng [[Special:AdvancedTranslate|{{int:Translate-magic-pagename}}]]",
+ "translate-magic-cm-savefailed": "Lưu thất bại",
+ "translate-magic-special": "Bí danh của các trang đặc biệt",
+ "translate-magic-words": "Từ thần chú",
+ "translate-magic-namespace": "Tên của không gian tên",
+ "translate-magic-notsaved": "Sửa đổi của bạn chưa được lưu!",
+ "translate-magic-errors": "Xin hãy sửa {{PLURAL:$1||các}} lỗi sau trong bản dịch:",
+ "translate-magic-saved": "Thay đổi của bạn đã được lưu.",
+ "translate-checks-parameters": "{{PLURAL:$2|Tham số|Những tham số}} sau không sử dụng:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-parameters-unknown": "{{PLURAL:$2|Tham số|Các tham số}} sau không rõ:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-balance": "Số {{PLURAL:$2|dấu ngoặc|dấu ngoặc}} bị lẻ:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links": "{{PLURAL:$2|Liên kết|Các liên kết}} sau có vấn đề:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links-missing": "{{PLURAL:$2|Liên kết|Các liên kết}} sau đây bị thiếu:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-xhtml": "Xin thay thế{{PLURAL:$2|| các}} thẻ sau bằng thẻ đúng:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-plural": "Định nghĩa sử dụng <nowiki>{{PLURAL:}}</nowiki> nhưng bản dịch không có.",
+ "translate-checks-plural-forms": "{{PLURAL:$1|Một dạng|$1 dạng}} được cung cấp trong thẻ <nowiki>{{PLURAL:}}</nowiki> nhưng ngôn ngữ {{PLURAL:$2|không có phân biệt số ít với số nhiều|chỉ có phân biệt $2 dạng số}} (trừ các dạng 0= và 1=).",
+ "translate-checks-plural-dupe": "Đuôi của thẻ <nowiki>{{PLURAL:}}</nowiki> có dạng thừa. Ví dụ nên đổi <nowiki>{{PLURAL:$1|chó|chó}}</nowiki> thành <nowiki>{{PLURAL:$1|chó}}</nowiki>.",
+ "translate-checks-pagename": "Không gian tên đã thay đổi so với định nghĩa",
+ "translate-checks-format": "Bản dịch này không đúng định nghĩa hoặc có cú pháp sai: $1",
+ "translate-checks-escape": "Dấu thoát sau có thể là vô tinh: <strong>$1</strong>",
+ "translate-checks-parametersnotequal": "Có {{PLURAL:$1|$1}} tham số; phải có {{PLURAL:$2|$2}} tham số.",
+ "translate-checks-malformed": "<nowiki>$1</nowiki> hư hỏng.",
+ "translate-checks-fudforum-syntax": "Hãy dùng <nowiki>$1</nowiki> thay cho <nowiki>$2</nowiki> trong dự án này.",
+ "translate-pref-nonewsletter": "Đừng gửi cho tôi bản tin qua thư điện tử",
+ "translate-pref-editassistlang": "Ngôn ngữ bổ trợ:",
+ "prefs-translate": "Tùy chọn bản dịch",
+ "translate-pref-editassistlang-help": "Danh sách các ngôn ngữ phân tách bằng dấu phẩy.\nBản dịch thông điệp sang các ngôn ngữ này được hiển thị khi bạn dịch.\nDanh sách các ngôn ngữ mặc định sẽ tùy thuộc vào ngôn ngữ mà bạn chọn.",
+ "translate-pref-editassistlang-bad": "Mã ngôn ngữ không hợp lệ trong danh sách:\n<nowiki>$1</nowiki>.",
+ "right-translate": "Sửa đổi sử dụng giao diện biên dịch",
+ "right-translate-manage": "Quản lý các nhóm thông điệp",
+ "action-translate-manage": "quản lý các nhóm thông điệp",
+ "right-translate-import": "Nhập các bản dịch ngoại tuyến",
+ "action-translate-import": "nhập các bản dịch ngoại tuyến",
+ "right-translate-messagereview": "Duyệt các bản dịch",
+ "right-translate-groupreview": "Thay đổi trạng thái luồng làm việc của các nhóm thông điệp",
+ "translate-rc-translation-filter": "Lọc bản dịch:",
+ "translate-rc-translation-filter-no": "Không lọc",
+ "translate-rc-translation-filter-only": "Chỉ hiển thị bản dịch",
+ "translate-rc-translation-filter-filter": "Lọc bản dịch",
+ "translate-rc-translation-filter-site": "Chỉ hiện thay đổi đến thông điệp trang",
+ "translationstats": "Thống kê biên dịch",
+ "translate-stats-edits": "Sửa đổi",
+ "translate-stats-users": "Biên dịch viên",
+ "translate-stats-registrations": "Thành viên đăng ký",
+ "translate-stats-reviews": "Lần duyệt",
+ "translate-stats-reviewers": "Người duyệt",
+ "translate-statsf-intro": "Bạn có thể tạo ra thông kê đơn giản bằng mẫu này. Tất cả các giá trị đều có giới hạn trên và dưới.",
+ "translate-statsf-options": "Tùy chọn đồ thị",
+ "translate-statsf-width": "Chiều rộng (điểm ảnh):",
+ "translate-statsf-height": "Chiều cao (điểm ảnh):",
+ "translate-statsf-days": "Lúc bắt đầu:",
+ "translate-statsf-start": "Lúc bắt đầu:",
+ "translate-statsf-scale": "Dạng hạt:",
+ "translate-statsf-scale-months": "Tháng",
+ "translate-statsf-scale-weeks": "Tuần",
+ "translate-statsf-scale-days": "Ngày",
+ "translate-statsf-scale-hours": "Giờ",
+ "translate-statsf-count": "Thước đo:",
+ "translate-statsf-count-edits": "Số lần sửa đổi",
+ "translate-statsf-count-users": "Dịch giả tích cực",
+ "translate-statsf-count-registrations": "Thành viên mới",
+ "translate-statsf-count-reviews": "Lần duyệt bản dịch",
+ "translate-statsf-count-reviewers": "Người duyệt",
+ "translate-statsf-language": "Danh sách các mã ngôn ngữ phân tách bằng dấu phẩy:",
+ "translate-statsf-group": "Danh sách các mã nhóm phân tách bằng dấu phẩy:",
+ "translate-statsf-submit": "Xem trước",
+ "translate-tag-category": "Các trang dịch được",
+ "translate-tag-page-desc": "Bản dịch trang wiki [[$2|$1]] từ $3 ($4).",
+ "translate-sidebar-alltrans": "Theo ngôn ngữ khác",
+ "translations": "Tất cả các bản dịch",
+ "translations-summary": "Nhập vào một tên thông điệp phía dưới để hiển thị tất cả các bản dịch hiện có.",
+ "translate-translations-no-message": "“$1” không phải là thông điệp cần dịch",
+ "translate-translations-none": "Không có bản dịch cho “$1”",
+ "translate-translations-count": "Tìm thấy {{PLURAL:$1|một bản dịch|$1 bản dịch}}.",
+ "translate-translations-fieldset-title": "Thông điệp",
+ "translate-translations-messagename": "Tên:",
+ "translate-translations-project": "Dự án:",
+ "translate-translations-including-no-param": "Xin ghi rõ một khóa thông điệp hợp lệ trong tham số trang con",
+ "translate-translations-history-short": "sử",
+ "languagestats": "Thống kê ngôn ngữ",
+ "languagestats-summary": "Trang này hiển thị thống kê biên dịch cho tất cả các nhóm thông điệp dành cho một ngôn ngữ.",
+ "messagegroupstats-summary": "Trang này có thống kế về nhóm thông điệp.",
+ "languagestats-stats-for": "Thống kê biên dịch của $1 ($2).",
+ "languagestats-recenttranslations": "các bản dịch gần đây",
+ "translate-langstats-incomplete": "Một vài dữ liệu thống kê trên này không được đầy đủ. Xin vui lòng tải lại trang để lấy thêm dữ liệu.",
+ "translate-langstats-expand": "mở",
+ "translate-langstats-collapse": "đóng",
+ "translate-langstats-expandall": "mở tất cả",
+ "translate-langstats-collapseall": "đóng tất cả",
+ "translate-language-code": "Mã ngôn ngữ",
+ "translate-language-code-field-name": "Mã ngôn ngữ:",
+ "translate-suppress-complete": "Ẩn các nhóm thông điệp đã được dịch hoàn toàn",
+ "translate-ls-noempty": "Ẩn các nhóm thông điệp hoàn toàn chưa được dịch",
+ "translate-language": "Ngôn ngữ",
+ "translate-total": "Thông điệp",
+ "translate-untranslated": "Chưa dịch",
+ "translate-percentage-complete": "Mức hoàn thành",
+ "translate-percentage-fuzzy": "Lỗi thời",
+ "translate-languagestats-overall": "Tổng cộng các nhóm thông điệp",
+ "translate-ls-submit": "Xem thống kê",
+ "translate-ls-column-group": "Nhóm thông điệp",
+ "translate-mgs-pagename": "Thống kê nhóm thông điệp",
+ "translate-mgs-fieldset": "Tùy chỉnh hiển thị",
+ "translate-mgs-group": "Nhóm thông điệp:",
+ "translate-mgs-nocomplete": "Ẩn các ngôn ngữ đã có bản dịch hoàn thành",
+ "translate-mgs-noempty": "Ẩn các ngôn ngữ không có bản dịch",
+ "translate-mgs-submit": "Xem thống kê",
+ "translate-mgs-column-language": "Ngôn ngữ",
+ "translate-mgs-totals": "Mọi ngôn ngữ tập hợp",
+ "translate-mgs-invalid-group": "Nhóm thông điệp chỉ định, “$1”, không tồn tại.",
+ "translate-mgs-nothing": "Không có thống kê để hiển thị.",
+ "supportedlanguages": "Ngôn ngữ có sẵn",
+ "supportedlanguages-summary": "Trang này liệt kê tất cả các ngôn ngữ được {{SITENAME}} hỗ trợ, cùng với tên các biên dịch viên đang làm việc trên ngôn ngữ đó.\nBiên dịch viên càng đóng góp nhiều thì tên của họ càng lớn hơn.\nMàu đường gạch dưới cho biết biên dịch viên đã tích cực tại đây cách đây bao lâu.",
+ "supportedlanguages-colorlegend": "Chú thích các màu: Bản dịch gần đây nhất cách đây $1 ngày.",
+ "supportedlanguages-portallink": "[$1] $2 – $3",
+ "supportedlanguages-translators": "{{PLURAL:$2|Biên dịch viên|Các biên dịch viên}}{{GENDER:$3}}: $1",
+ "supportedlanguages-recenttranslations": "các bản dịch gần đây",
+ "supportedlanguages-count": "$1 ngôn ngữ tổng cộng.",
+ "supportedlanguages-activity": "$1: $2 lần sửa đổi – lần cuối cách đây $3 ngày",
+ "translate-save": "Lưu ($1)",
+ "translate-jssti-add": "Thêm vào danh sách",
+ "managemessagegroups": "Quản lý nhóm thông điệp",
+ "translate-smg-notallowed": "Bạn không được phép thực hiện thao tác này.",
+ "translate-smg-nochanges": "Không có thay đổi để xử lý.",
+ "translate-smg-submit": "Lưu thay đổi để xử lý",
+ "translate-smg-submitted": "Các định nghĩa thông điệp đã thay đổi. Các thay đổi đang được xử lý trên nền.",
+ "translate-smg-more": "Sẽ còn nhiều thay đổi hơn để xử lý sau khi gửi những thay đổi này.",
+ "translate-smg-left": "Nội dung thông điệp trong wiki",
+ "translate-smg-right": "Các thay đổi để duyệt",
+ "translate-manage-import-diff": "Thông điệp $1 | Tác vụ: $2",
+ "translate-manage-import-new": "Thông điệp mới $1",
+ "translate-manage-import-deleted": "Thông điệp đã xóa $1",
+ "translate-manage-action-import": "Nhập",
+ "translate-manage-action-conflict": "Nhập và cần sửa",
+ "translate-manage-action-ignore": "Bỏ qua",
+ "translate-manage-action-fuzzy": "Nhập và cần sửa bản dịch",
+ "translate-manage-nochanges": "Không có thay đổi trong định nghĩa thông điệp của nhóm này.",
+ "translate-manage-nochanges-other": "Không có thay đổi trong ngôn ngữ này.\nHãy dùng liên kết ở dưới để trở lại trang chi tiết nhóm",
+ "translate-manage-inconsistent": "Có sự không nhất quán trong lời yêu cầu.\nXin hãy kiểm lại các thay đổi rồi thử lại.\nChi tiết: $1.",
+ "translate-manage-toolong": "Thời gian xử lý tối đa đã vượt quá $1 giây.\nXin hãy gửi lại mẫu này để tiếp tục xử lý.",
+ "translate-manage-import-summary": "Đang nhập một bản mới từ nguồn bên ngoài",
+ "translate-manage-conflict-summary": "Đang nhập một phiên bản mới từ nguồn bên ngoài.\nXin kiểm lại.",
+ "translate-manage-fuzzy-summary": "Định nghĩa của thông điệp đã thay đổi",
+ "translate-manage-submit": "Thực hiện",
+ "translate-manage-intro-other": "Dưới đây là danh sách các thay đổi bản dịch trong ngôn ngữ $1.\nXin hãy xem lại các thay đổi và chọn tác vụ bạn muốn làm đối với từng bản cập nhật.\nViệc bỏ qua thay đổi chỉ tạm thời.",
+ "translate-manage-import-ok": "Đã nhập: $1",
+ "translate-manage-import-done": "Đã nhập xong!",
+ "importtranslations": "Nhập bản dịch",
+ "translate-import-from-local": "Tải tập tin từ máy tính:",
+ "translate-import-load": "Tải tập tin",
+ "translate-import-err-dl-failed": "Không thể truy xuất tập tin:\n$1",
+ "translate-import-err-ul-failed": "Tải tập tin thất bại",
+ "translate-import-err-invalid-title": "Tên tập tin đã ghi <nowiki>$1</nowiki> không đúng.",
+ "translate-import-err-no-such-file": "Tập tin <nowiki>$1</nowiki> không tồn tại hoặc chưa được tải lên đây.",
+ "translate-import-err-stale-group": "Tập tin này được xếp vào nhóm thông điệp không tồn tại.",
+ "translate-import-err-no-headers": "Tập tin không phải là tập tin Gettext định dạng đúng trong định dạng mở rộng Translate:\nKhông thể xác định nhóm và ngôn ngữ từ tiêu đề tập tin.",
+ "translate-import-err-warnings": "Tập tin không được định dạng đúng.\nHãy đảm bảo trình duyệt của bạn không xóa đi vùng msgctxt.\nChi tiết:$1",
+ "translate-js-summary": "Tóm lược:",
+ "translate-js-save": "Lưu",
+ "translate-js-next": "Lưu và sang thông điệp sau",
+ "translate-js-nonext": "Đây là thông điệp cuối cùng trên trang này.",
+ "translate-js-skip": "Chuyển đến thông điệp kế",
+ "translate-js-save-failed": "Không lưu được. Xin hãy báo cáo lỗi này.",
+ "translate-js-history": "Lịch sử biên dịch",
+ "translate-js-support": "Đặt câu hỏi",
+ "translate-js-support-title": "Yêu cầu giúp đỡ nếu không có đủ thông tin để dịch thông điệp này một cách chính xác.",
+ "translate-js-support-unsaved-warning": "Bạn có bản dịch chưa lưu.",
+ "translate-gs-pos": "STT",
+ "translate-gs-code": "Mã",
+ "translate-gs-continent": "Lục địa",
+ "translate-gs-speakers": "Số người nói",
+ "translate-gs-score": "Điểm",
+ "translate-gs-multiple": "Nhiều",
+ "translate-gs-count": "Số lượng",
+ "translate-gs-total": "Tổng cộng",
+ "translate-gs-avgscore": "Điểm t.bình",
+ "translate-documentation-language": "Tài liệu thông điệp",
+ "translate-searchprofile": "Bản dịch",
+ "translate-searchprofile-tooltip": "Tìm kiếm tất cả các bản dịch",
+ "translate-search-languagefilter": "Lọc theo ngôn ngữ:",
+ "translate-search-nofilter": "Không lọc",
+ "translate-messagereview-submit": "Đánh dấu duyệt",
+ "translate-messagereview-progress": "Đang đánh dấu duyệt…",
+ "translate-messagereview-failure": "Thất bại khi đánh dấu duyệt: $1",
+ "translate-messagereview-done": "Đã duyệt",
+ "translate-messagereview-reviews": "Đã được $1 người dùng duyệt",
+ "translate-messagereview-reviewswithyou": "Đã được {{PLURAL:$1|bạn duyệt|$1 người dùng duyệt, bao gồm bạn}}",
+ "api-error-invalidrevision": "Không tìm thấy bản dịch",
+ "api-error-unknownmessage": "Không tìm thấy thông điệp",
+ "api-error-fuzzymessage": "Bản dịch được đánh dấu là lỗi thời",
+ "api-error-owntranslation": "Bạn không thể đánh dấu các bản dịch của chính bạn là đã duyệt.",
+ "translate-messagereview-no-fuzzy": "Không thể đánh dấu các bản dịch lỗi thời là đã duyệt.",
+ "translate-messagereview-no-own": "Bạn không thể đánh dấu các bản dịch của chính bạn là đã duyệt.",
+ "translate-messagereview-doit": "Đánh dấu bản dịch này là đã duyệt.",
+ "group-translate-proofr.css": "/* Mã CSS tại đây sẽ chỉ ảnh hưởng đến những người duyệt bản dịch */",
+ "group-translate-proofr.js": "/* Mã JS tại đây sẽ chỉ ảnh hưởng đến những người duyệt bản dịch */",
+ "log-name-translationreview": "Nhật trình duyệt bản dịch",
+ "log-description-translationreview": "Nhật trình các tác vụ duyệt bản dịch và nhóm thông điệp.",
+ "logentry-translationreview-message": "$1 {{GENDER:$2}}đã duyệt bản dịch $3",
+ "logentry-translationreview-group": "$1 {{GENDER:$2}}đã đổi trạng thái bản dịch $4 của $3 từ $6 thành $7",
+ "group-translate-sandboxed": "Biên dịch viên chưa chấp nhận",
+ "group-translate-sandboxed-member": "{{GENDER:$1}}biên dịch viên chưa chấp nhận",
+ "right-translate-sandboxmanage": "Quản lý người dùng cách ly",
+ "action-translate-sandboxmanage": "quản lý người dùng cách ly",
+ "right-translate-sandboxaction": "Thực hiện các tác vụ mà người dùng cách ly được cho phép thực hiện",
+ "action-translate-sandboxaction": "thực hiện các tác vụ mà người dùng cách ly được cho phép thực hiện",
+ "translate-workflow-state-": "(không định)",
+ "translate-workflowstatus": "Trạng thái: $1",
+ "translate-workflow-set-do": "Định rõ",
+ "translate-workflow-set-doing": "Đang định rõ…",
+ "translate-workflow-set-done": "Đã định xong!",
+ "translate-workflow-set-error-alreadyset": "Trạng thái được yêu cầu là giống hệt với trạng thái hiện tại.",
+ "translate-workflow-autocreated-summary": "Tự động tạo ra trang cho trạng thái luồng làm việc $1",
+ "translate-stats-workflow": "Trạng thái",
+ "translate-workflowgroup-label": "Trạng thái luồng làm việc",
+ "translate-workflowgroup-desc": "Nhóm thông điệp này chứa các trạng thái luồng làm việc biên dịch.\nCác trạng thái được định rõ trong biến cấu hình $wgTranslateWorkflowStates.",
+ "translate-dynagroup-recent-label": "Bản dịch gần đây",
+ "translate-dynagroup-recent-desc": "Nhóm thông điệp này bao gồm các bản dịch gần đây trong ngôn ngữ này.\nNó có ích đối với các tác vụ duyệt.",
+ "translate-dynagroup-additions-label": "Thông điệp bổ sung gần đây",
+ "translate-dynagroup-additions-desc": "Nhóm thông điệp này chứa các thông điệp mới được bổ sung hoặc thay đổi gần đây.",
+ "translate-dynagroup-by": "Bản dịch của $1",
+ "translate-dynagroup-byc": "Bản dịch của $1 ($2)",
+ "translate-dynagroup-last": "Thay đổi cuối cùng của $1",
+ "translate-dynagroup-lastc": "Thay đổi cuối cùng của $1 ($2)",
+ "translate-gethelp": "Trợ giúp",
+ "translate-msggroupselector-projects": "Nhóm thông điệp",
+ "translate-msggroupselector-search-placeholder": "Tìm nhóm",
+ "translate-msggroupselector-search-all": "Tất cả",
+ "translate-msggroupselector-search-recent": "Gần đây",
+ "translate-msggroupselector-view-subprojects": "$1 nhóm con",
+ "tux-languageselector": "Dịch ra",
+ "tux-tab-all": "Tất cả",
+ "tux-tab-untranslated": "Chưa dịch",
+ "tux-tab-outdated": "Lỗi thời",
+ "tux-tab-translated": "Dịch rồi",
+ "tux-tab-unproofread": "Chưa duyệt",
+ "tux-edit": "Sửa đổi",
+ "tux-status-optional": "Tùy chọn",
+ "tux-status-fuzzy": "Lỗi thời",
+ "tux-status-proofread": "Đã duyệt",
+ "tux-status-translated": "Dịch rồi",
+ "tux-status-saving": "Đang lưu…",
+ "tux-status-unsaved": "Chưa lưu",
+ "tux-editor-placeholder": "Bản dịch của bạn",
+ "tux-editor-paste-original-button-label": "Dán văn bản gốc",
+ "tux-editor-discard-changes-button-label": "Hủy thay đổi",
+ "tux-editor-save-button-label": "Lưu bản dịch",
+ "tux-editor-skip-button-label": "Chuyển đến thông điệp kế",
+ "tux-editor-cancel-button-label": "Hủy bỏ",
+ "tux-editor-confirm-button-label": "Xác nhận bản dịch",
+ "tux-editor-shortcut-info": "Bấm “$1” để lưu, “$2” để chuyển đến thông điệp kế, hoặc “$3” cho các phím tắt khác.",
+ "tux-editor-edit-desc": "Sửa đổi tài liệu",
+ "tux-editor-add-desc": "Thêm tài liệu",
+ "tux-editor-suggestions-title": "Gợi ý",
+ "tux-editor-in-other-languages": "Theo ngôn ngữ khác",
+ "tux-editor-need-more-help": "Còn thắc mắc?",
+ "tux-editor-ask-help": "Hãy xin thêm thông tin",
+ "tux-editor-tm-match": "trùng $1%",
+ "tux-warnings-more": "$1 nữa",
+ "tux-warnings-hide": "ẩn",
+ "tux-editor-save-failed": "Thất bại khi lưu bản dịch: $1",
+ "tux-editor-n-uses": "được sử dụng $1 lần",
+ "tux-editor-message-desc-more": "Xem thêm",
+ "tux-editor-message-desc-less": "Thu gọn",
+ "tux-editor-clear-translated": "Ẩn thông điệp đã dịch",
+ "tux-editor-proofreading-mode": "Duyệt",
+ "tux-editor-translate-mode": "Danh sách",
+ "tux-editor-proofreading-hide-own-translations": "Ẩn các bản dịch của mình",
+ "tux-editor-proofreading-show-own-translations": "Hiện các bản dịch của mình",
+ "tux-proofread-action-tooltip": "Đánh dấu duyệt",
+ "tux-proofread-edit-label": "Sửa đổi",
+ "tux-editor-page-mode": "Trang",
+ "tux-editor-outdated-warning": "Bản dịch này có thể cần được cập nhật.",
+ "tux-editor-outdated-warning-diff-link": "Trình bày khác biệt",
+ "tux-editor-doc-editor-placeholder": "Tài liệu về thông điệp",
+ "tux-editor-doc-editor-save": "Lưu tài liệu",
+ "tux-editor-doc-editor-cancel": "Hủy bỏ",
+ "tux-messagetable-more-messages": "$1 thông điệp nữa",
+ "tux-messagetable-loading-messages": "Đang tải {{PLURAL:$1|thông điệp|các thông điệp}}…",
+ "tux-message-filter-placeholder": "Lọc danh sách",
+ "tux-message-filter-result": "Tìm thấy $1 kết quả cho “$2”",
+ "tux-message-filter-advanced-button": "Tìm kiếm nâng cao",
+ "tux-message-filter-optional-messages-label": "Các thông điệp tùy dịch",
+ "tux-proofread-translated-by-self": "Bản dịch của bạn",
+ "tux-empty-list-all": "Nhóm thông điệp này đang trống",
+ "tux-empty-list-all-guide": "Hãy chọn một nhóm thông điệp khác để dịch",
+ "tux-translate-page-no-such-group": "<strong>Nhóm được chỉ định không tồn tại.</strong> Hãy chọn một nhóm thông điệp khác.",
+ "tux-empty-list-translated": "Chưa dịch thông điệp nào",
+ "tux-empty-list-translated-guide": "Mời bạn cùng biên dịch",
+ "tux-empty-list-translated-action": "Biên dịch",
+ "tux-empty-no-messages-to-display": "Không có thông điệp để hiển thị.",
+ "tux-empty-there-are-optional": "Những thông điệp tùy dịch không được liệt kê",
+ "tux-empty-show-optional-messages": "Hiển thị các thông điệp tùy dịch",
+ "tux-empty-no-outdated-messages": "Không có thông điệp lỗi thời",
+ "tux-empty-nothing-to-proofread": "Không có gì để duyệt",
+ "tux-empty-you-can-help-providing": "Mời bạn giúp dịch các thông điệp mới",
+ "tux-empty-nothing-new-to-proofread": "Không có gì mới để duyệt",
+ "tux-empty-you-can-review-already-proofread": "Mời bạn xem lại những bản dịch đã được người khác duyệt.",
+ "tux-empty-list-other": "Không có gì để dịch",
+ "tux-empty-list-other-guide": "Bạn có thể giúp duyệt các bản dịch hiện có",
+ "tux-empty-list-other-action": "Duyệt các bản dịch",
+ "tux-empty-list-other-link": "Hiện tất cả các thông điệp",
+ "tux-editor-close-tooltip": "Đóng",
+ "tux-editor-expand-tooltip": "Mở rộng",
+ "tux-editor-collapse-tooltip": "Thu gọn",
+ "tux-editor-message-tools-history": "Lịch sử",
+ "tux-editor-message-tools-delete": "Xóa",
+ "tux-editor-message-tools-translations": "Tất cả các bản dịch",
+ "tux-editor-loading": "Đang tải…",
+ "translate-search-more-languages-info": "$1 ngôn ngữ khác",
+ "translate-statsbar-tooltip": "Đã biên dịch $1%, đã duyệt $2%",
+ "translate-statsbar-tooltip-with-fuzzy": "Đã biên dịch $1%, đã duyệt $2%, $3% lỗi thời",
+ "translate-search-more-groups-info": "$1 nhóm nữa",
+ "translate-ulsdep-title": "Lỗi cấu hình",
+ "translate-ulsdep-body": "Phần mở rộng Biên dịch cần [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:UniversalLanguageSelector?uselang=vi phần mở rộng Lựa chọn Ngôn ngữ Toàn thể].",
+ "tux-session-expired": "Bạn không còn đăng nhập. Xin vui lòng đăng nhập trong thẻ riêng. Thay thế, hãy sao chép các bản dịch chưa lưu, đăng nhập, và trở lại trang này."
+}
diff --git a/MLEB/Translate/i18n/core/vo.json b/MLEB/Translate/i18n/core/vo.json
new file mode 100644
index 00000000..6849cabc
--- /dev/null
+++ b/MLEB/Translate/i18n/core/vo.json
@@ -0,0 +1,86 @@
+{
+ "@metadata": {
+ "authors": [
+ "Malafaya",
+ "Smeira"
+ ]
+ },
+ "translate": "Tradutön",
+ "translate-desc": "[[Special:Translate|Pad patik]] pro tradutam sitanunis ela MediaWiki",
+ "translate-page-no-such-language": "Pük pevälöl no dabinon.",
+ "translate-page-no-such-group": "Grup pevälöl no dabinon.",
+ "translate-page-disabled": "Tradutam ini pük at in grup at penemögükon.\nKod:\n\n<em>$1</em>",
+ "translate-page-settings-legend": "Paramets",
+ "translate-page-group": "Grup:",
+ "translate-page-language": "Pük:",
+ "translate-page-limit": "Mied:",
+ "translate-page-limit-option": "{{PLURAL:$1|nun|nuns}} $1 a pad",
+ "translate-submit": "Getolöd",
+ "translate-page-navigation-legend": "Nafam",
+ "translate-page-showing": "Nuns de nüm: $1 ad $2 (se $3).",
+ "translate-page-showing-all": "{{PLURAL:$1|Nun|Nuns}} $1 {{PLURAL:$1|pajonon|pajonons}}.",
+ "translate-page-showing-none": "Nuns jonabik no dabinons.",
+ "translate-next": "Pad sököl",
+ "translate-prev": "Pad büik",
+ "translate-page-description-legend": "Nüns tefü grup",
+ "translate-page-edit": "redakön",
+ "translate-ignored": "(penedemöl)",
+ "translate-edit-definition": "Miedet nuna",
+ "translate-edit-contribute": "keblünön",
+ "translate-edit-no-information": "Nun at no peplänon. If sevol, kiöpo u lio nun at pagebon, kanol yufön tradutanis votik medä penol pläni gudik dö geb onik.",
+ "translate-edit-information": "Plän nuna ($1)",
+ "translate-edit-in-other-languages": "Nun: \"$1\" in püks votik",
+ "translate-edit-warnings": "Nüneds tefü tradutods no lölöfiks",
+ "translate-magic-cm-export": "Seveigön",
+ "translate-magic-cm-to-be": "Ovedon",
+ "translate-magic-cm-current": "Anuik",
+ "translate-magic-cm-original": "Rigik",
+ "translate-magic-cm-comment": "Küpet:",
+ "translate-magic-cm-save": "Dakipön",
+ "translate-magic-cm-savefailed": "Dakip no eplöpon",
+ "translate-magic-special": "Näinems padas patik",
+ "translate-magic-words": "Vöds magivik",
+ "translate-magic-namespace": "Nems nemaspadas",
+ "translate-magic-notsaved": "Redakam olik no pedakipolon!",
+ "translate-checks-parameters": "{{PLURAL:$2|Paramet|Paramets}} sököl no {{PLURAL:$2|pagebon|pagebons}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-parameters-unknown": "{{PLURAL:$2|Paramet|Paramets}} sököl {{PLURAL:$2|binon nesevädik|binons nesevädiks}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links": "{{PLURAL:$2|Yüm|Yüms}} sököl {{PLURAL:$2|binon säkädik|binons säkädiks}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-rc-translation-filter": "Sulön tradutodis:",
+ "translate-rc-translation-filter-no": "Dunön nosi",
+ "translate-rc-translation-filter-only": "Jonön te tradutodis",
+ "translate-rc-translation-filter-filter": "Sesulön tradutodis",
+ "translate-rc-translation-filter-site": "Te votükams nunas bevüresodatopäda at",
+ "translationstats": "Tradutamastatits",
+ "translate-stats-edits": "Redakams",
+ "translate-stats-users": "Tradutans",
+ "translate-statsf-width": "Vidot (pixels):",
+ "translate-statsf-height": "Geilot (pixels):",
+ "translate-statsf-days": "Period (dels):",
+ "translate-statsf-start": "Period (dels):",
+ "translate-statsf-scale-days": "Dels",
+ "translate-statsf-scale-hours": "Düps",
+ "translate-statsf-count": "Mafam:",
+ "translate-statsf-count-edits": "Num redakamas",
+ "translate-statsf-count-users": "Tradutans jäfedik",
+ "translate-statsf-language": "Lised pükakotas me liunüls peteilölas:",
+ "translate-statsf-group": "Lised grupakotas me liunüls peteilölas:",
+ "translate-statsf-submit": "Büologed",
+ "translate-tag-category": "Pads tradutovik",
+ "translate-tag-page-desc": "Tradutod vükapada: [[$2|$1]].",
+ "translate-sidebar-alltrans": "In püks votik",
+ "translations": "Tradutods valik",
+ "translations-summary": "Penolös dono nunanemi ad logön tradutodis gebidik valik.",
+ "translate-translations-no-message": "„$1“ no binon nun tradutovik",
+ "translate-translations-none": "No dabinons tradutods pro „$1“",
+ "translate-translations-fieldset-title": "Nun",
+ "translate-translations-messagename": "Nem:",
+ "translate-translations-including-no-param": "Penolös padanemi lonöföl lä paramet: donapad",
+ "languagestats": "Pükastatits",
+ "languagestats-summary": "Pad at jonon tradutamastatitis tefü nunagrups valiks püka semik.",
+ "translate-language-code": "Pükakot",
+ "translate-language-code-field-name": "Pükakot:",
+ "translate-language": "Pük",
+ "translate-total": "Nuns",
+ "translate-untranslated": "No petradutöls",
+ "translate-percentage-complete": "Lölöfükam"
+}
diff --git a/MLEB/Translate/i18n/core/wa.json b/MLEB/Translate/i18n/core/wa.json
new file mode 100644
index 00000000..d7a9768f
--- /dev/null
+++ b/MLEB/Translate/i18n/core/wa.json
@@ -0,0 +1,255 @@
+{
+ "@metadata": {
+ "authors": [
+ "Srtxg"
+ ]
+ },
+ "translate": "Ratourner",
+ "translate-desc": "[[Special:Translate|Padje sipeciåle]] po ratourner MediaWiki et ds ôtes",
+ "translate-taskui-view": "Mostrer tos les messaedjes",
+ "translate-taskui-untranslated": "Mostrer les messaedjes nén ratournés",
+ "translate-taskui-optional": "Mostrer les messaedjes opcionels",
+ "translate-taskui-acceptqueue": "Rén k' les messaedjes ki dj' pou acertiner",
+ "translate-taskui-reviewall": "Verifyî tos les ratournaedjes",
+ "translate-taskui-export-to-file": "Riçure e cogne native",
+ "translate-taskui-export-as-po": "Riçure po on ratournaedje foû raloyaedje",
+ "translate-taction-translate": "Ratourner",
+ "translate-taction-proofread": "Verifiaedje",
+ "translate-taction-lstats": "Sitatistikes do lingaedje",
+ "translate-taction-mstats": "Sitatistikes do groupe di messaedjes",
+ "translate-taction-export": "Ricopyî foû",
+ "translate-taction-disabled": "Cisse accion la a stî dismetowe so ç' wiki ci.",
+ "translate-page-no-such-language": "Li lingaedje diné n' est nén valide.",
+ "translate-page-no-such-group": "Li groupe diné n' est nén valide;",
+ "translate-page-disabled": "Les ratournaedjes dins ç' lingaedje la po ç' groupe ci n' si polèt nén fé.\nRåjhon:\n\n<em>$1</em>",
+ "translate-language-disabled": "Li ratournaedje dins ç' lingaedje ci a stî dismetou.",
+ "translate-page-settings-legend": "Tchuzes",
+ "translate-page-group": "Groupe:",
+ "translate-page-language": "Lingaedje",
+ "translate-page-limit": "Limite",
+ "translate-page-limit-option": "$1 messaedje{{PLURAL:$1||s}} par pådje",
+ "translate-submit": "I va",
+ "translate-page-navigation-legend": "Naiviaedje",
+ "translate-page-showing": "Mostraedje des messaedje di $1 a $2 so $3.",
+ "translate-page-showing-all": "Håynaedje {{PLURAL:$1|d' on messaedje|di $1 messaedjes}}.",
+ "translate-page-showing-none": "Nou messaedje a håyner.",
+ "translate-next": "Pådje shuvante",
+ "translate-prev": "Pådje di dvant",
+ "translate-page-description-legend": "Infôrmåcions sol groupe",
+ "translate-page-description-hasoptional": "Ci groupe di messaedjes ci a des messaedjes di rawete.\nLes messaedjes di rawete sont-st opcionels et n' divèt esse ratournés k' si vosse lingaedje a mezåjhe di sacwès speciåles, come di n' nén eployî d' vudes inte les mots ou di scrire dins èn ôte sistinme les nos prôpes. $1",
+ "translate-page-description-hasoptional-open": "Mostrer les messaedjes opcionels.",
+ "translate-page-edit": "candjî",
+ "translate-ext-url": "<hr />Waibe: $1",
+ "translate-optional": "(opcionel)",
+ "translate-ignored": "(ignoré)",
+ "translate-edit-title": "Candjî «$1»",
+ "translate-edit-definition": "Definixha do messaedje",
+ "translate-edit-translation": "Ratournaedje",
+ "translate-edit-contribute": "contribouwer",
+ "translate-edit-no-information": "''Ci messaedje ci n' a nén stî documinté.''\n''Si vos savoz wice ou cmint ki ç' messaedje ci est eployî, vos ploz aidî les ôtes ratourneus tot radjoutant ene documintåcion pol messaedje.''",
+ "translate-edit-information": "Infôrmåcions sol messaedje ($1)",
+ "translate-edit-in-other-languages": "Messaedjes dins ds ôtes lingaedjes",
+ "translate-edit-committed": "Ratournaedje do moumint dins l' programe",
+ "translate-edit-warnings": "Adviertixhmints so les crons ratournaedjes",
+ "translate-edit-tmsugs": "Propôzaedjes del memwere di ratournaedje",
+ "translate-edit-tmmatch-source": "Tecse sourdant do ratournaedje: $1",
+ "translate-edit-tmmatch": "rishonnant a $1%",
+ "translate-use-suggestion": "Replaecî l' ratournaedje do moumint avou l' propôzaedje.",
+ "translate-edit-nopermission": "I vs fåt les permissions po pleur ratourner des messaedjes.",
+ "translate-edit-askpermission": "Dimander les permissions",
+ "translate-magic-pagename": "Ratournaedjes MediaWiki stindous",
+ "translate-magic-help": "Vos ploz ratourner des alias po des pådjes sipeciåles, des mots madjikes eyet des nos d' espåces di lomaedje.\n\nLes alias di pådjes sipeciales et les mots madjikes polèt aveur pus d' on ratournaedje.\nLes ratournaedjes sont dispårtis avou l' coma (,).\nLes espåces di lomaedje n' ont k' on seu ratournaedje.\n\nDins les ratournaedjes d' espåces di lomaedje «<code>$1 talk</code>» est speciål. «<code>$1</code>» est replaecî avou l' no del waibe (metans «<code>{{ns:project_talk}}</code>»).\nSi c' est nén possibe dins vosse lingaedje di fé on tecse valide sins candjî l' no del waibe, i vs fåt atôtchî on programeu.\n\nVos dvoz esse dins l' groupe des ratourneus po pleur schaper les candjmints.\nLes candjmints n' seront schapés ki cwand vos clitchroz sol boton pa dzo.",
+ "translate-magic-module": "Module:",
+ "translate-magic-submit": "Vey",
+ "translate-magic-cm-export": "Ricopyî foû",
+ "translate-magic-nothing-to-export": "I gn a rén a rcopyî foû",
+ "translate-magic-cm-to-be": "Divénrè",
+ "translate-magic-cm-current": "Asteure",
+ "translate-magic-cm-original": "Oridjinnå",
+ "translate-magic-cm-comment": "Comintaire:",
+ "translate-magic-cm-save": "Schaper",
+ "translate-magic-cm-updatedusing": "Metou a djoû avou [[Special:AdvancedTranslate|{{int:Translate-magic-pagename}}]]",
+ "translate-magic-cm-savefailed": "Åk n' a nén stî tot schapant",
+ "translate-magic-special": "Alias po les pådjes sipeciåles",
+ "translate-magic-words": "Mots madjikes",
+ "translate-magic-namespace": "Espåces di lomaedje",
+ "translate-magic-notsaved": "Li candjmint ki vos avoz fwait n' a nén stî schapé!",
+ "translate-magic-errors": "Coridjîz s' i vs plait {{PLURAL:$1|l' aroke shuvante|les arokes shuvantes}} do ratournaedje:",
+ "translate-magic-saved": "Les candjmints ki vos avoz fwaits ont stî schapés comifåt.",
+ "translate-checks-parameters": "{{PLURAL:$2|Li paramete shuvant n' est nén eployî|Les parametes shuvant n' sont nén eployî}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-parameters-unknown": "{{PLURAL:$2|Li paramete shuvant n' est nén cnoxhou|Les parametes shuvants n' sont nén cnoxhous}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-balance": "I gn a {{PLURAL:$2|ene drovante åtchete|des drovantès åtchetes}} sins {{PLURAL:$2|l' cloyante ki va avou|les cloyantes ki vont avou}}, ou årvierdimint:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links": "{{PLURAL:$2|Li loyén shuvant a-st on problinme|Les $2 loyéns shuvants ont des problinmes}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links-missing": "{{PLURAL:$2|Li loyén shuvant manke|Les $2 loyéns shuvants mankèt}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-xhtml": "I vs fåt coridjî {{PLURAL:$2|l' etikete shuvante|les etiketes shuvantes}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-plural": "Li definixha eploye <nowiki>{{PLURAL:}}</nowiki> mins nén l' ratournaedje.",
+ "translate-checks-pagename": "L' espåce di lomaedje est diferin do ci dins l' definixha",
+ "translate-checks-format": "Ci ratournaedje ci n' shût nén l' definixha oudonbén a ene sintacse nén valide: $1",
+ "translate-checks-escape": "Ça s' pout ki l' eployaedje di caracteres sipeciås shuvant soeye èn accidint: <strong>$1</strong>",
+ "translate-checks-parametersnotequal": "Li nombe di paramets est d' {{PLURAL:$1|$1}}; adon ki ça dvreut esse {{PLURAL:$2|$2}}.",
+ "translate-checks-malformed": "«<nowiki>$1</nowiki>» est cron.",
+ "translate-checks-fudforum-syntax": "So ç' pordjet ci vos dvoz eployî <nowiki>$1</nowiki> purade ki <nowiki>$2</nowiki>.",
+ "translate-pref-nonewsletter": "Èn nén m' evoyî les emiles d' infôrmåcion",
+ "translate-pref-editassistlang": "Lingaedjes d' aidance:",
+ "prefs-translate": "Tchuzes di ratournaedje",
+ "translate-pref-editassistlang-help": "Djivêye di côdes di lingaedje, dispårtis avou des comas.\nLi ratournaedje d' on messaedje dins onk di ces lingaedjes la srè håyné cwand vos estoz dins l' boesse di ratournaedje.\nLi prémetowe djivêye dipind d' vosse lingaedje po l' eterface.",
+ "translate-pref-editassistlang-bad": "Côde di lingaedje nén valide el djivêye:\n<nowiki>$1</nowiki>.",
+ "right-translate": "Fé des ratournaedjes avou l' eterface di ratournaedje",
+ "right-translate-manage": "Manaedjî les groupes di messaedjes",
+ "action-translate-manage": "manaedjî les groupes di messaedjes",
+ "right-translate-import": "Ristitchî des ratournaedjes fwaits foû raloyaedje",
+ "action-translate-import": "ristitchî des ratournaedjes fwaits foû raloyaedje",
+ "right-translate-messagereview": "Verifyî les ratournaedjes",
+ "right-translate-groupreview": "Candjî l' estat d' ovrance des groupes di messaedjes",
+ "translate-rc-translation-filter": "Passete po les ratournaedjes:",
+ "translate-rc-translation-filter-no": "Èn rén fé",
+ "translate-rc-translation-filter-only": "Mostrer seulmint les ratournaedjes",
+ "translate-rc-translation-filter-filter": "Èn nén mostrer les ratournaedjes",
+ "translate-rc-translation-filter-site": "Seulmint les candjmnts ås messaedjes del waibe",
+ "translationstats": "Sitatistikes di ratournaedje",
+ "translate-stats-edits": "Candjmints",
+ "translate-stats-users": "Ratourneus",
+ "translate-stats-registrations": "Edjîstraedjes",
+ "translate-stats-reviews": "Verifiaedjes",
+ "translate-stats-reviewers": "Verifieus",
+ "translate-statsf-intro": "Vos ploz produre des statistikes simpes a pårti di cisse formulrece ci.\nTotes les valixhances ont des limites pa dzeur et pa dzo.",
+ "translate-statsf-options": "Tchuzes pol grafike",
+ "translate-statsf-width": "Lårdjeur e picsels:",
+ "translate-statsf-height": "Hôteur e picsels:",
+ "translate-statsf-days": "Termene e nombe di djoûs:",
+ "translate-statsf-start": "Date di cmince:",
+ "translate-statsf-scale": "Schåle:",
+ "translate-statsf-scale-months": "moes",
+ "translate-statsf-scale-weeks": "samwinnes",
+ "translate-statsf-scale-days": "djoûs",
+ "translate-statsf-scale-hours": "eures",
+ "translate-statsf-count": "Çou k' on mezeure:",
+ "translate-statsf-count-edits": "nombe di candjmints",
+ "translate-statsf-count-users": "ratourneus actifs",
+ "translate-statsf-count-registrations": "noveas uzeus",
+ "translate-statsf-count-reviews": "verifiaedjes",
+ "translate-statsf-count-reviewers": "verifieus",
+ "translate-statsf-language": "Djivêye di côdes di lingaedje, dispårtis pa des comas:",
+ "translate-statsf-group": "Djivêye di côdes di groupes, dispårtis pa des comas:",
+ "translate-statsf-submit": "Vey divant",
+ "translate-tag-category": "Pådjes k' on pout ratourner",
+ "translate-tag-page-desc": "Ratournaedje del pådje wiki [[$2|$1]].",
+ "translate-sidebar-alltrans": "Dins ds ôtes lingaedjes",
+ "translations": "Tos les ratournaedjes",
+ "translations-summary": "Tapez on no d' messaedje chal pa dzo po vey tos les ratournaedjes k' i gn a.",
+ "translate-translations-no-message": "«$1» n' est nén on messaedje ratournåve",
+ "translate-translations-none": "Nou ratournaedje po «$1»",
+ "translate-translations-count": "I gn a {{PLURAL:$1|on ratournaedje|$1 ratournaedjes}}.",
+ "translate-translations-fieldset-title": "Messaedje",
+ "translate-translations-messagename": "No",
+ "translate-translations-project": "Pordjet:",
+ "translate-translations-including-no-param": "Dinez s' i vs plait ene clé valide pol paramete di dzo-pådje",
+ "languagestats": "Sitatistikes do lingaedje",
+ "languagestats-summary": "Cisse pådje ci mostere les statistikes di ratournaedje di tos les groupes di messaedjes po on lingaedje diné.",
+ "languagestats-stats-for": "Sitatistikes di ratournaedje pol lingaedje $1 ($2)",
+ "languagestats-recenttranslations": "dierins ratournaedjes",
+ "translate-langstats-incomplete": "Des statistikes k' i gn a sol pådje ni sont nén completes. Rafristez l' pådje po nd aveur di pus.",
+ "translate-langstats-expand": "diswalper",
+ "translate-langstats-collapse": "erôler",
+ "translate-langstats-expandall": "diswalper ttafwait",
+ "translate-langstats-collapseall": "erôler ttafwait",
+ "translate-language-code": "Côde do lingaedje",
+ "translate-language-code-field-name": "Côde do lingaedje:",
+ "translate-suppress-complete": "Èn nén mostrer les groupes di messaedjes ratournés pår",
+ "translate-ls-noempty": "Èn nén mostrer les groupes di messaedjes sins nou ratournaedje",
+ "translate-language": "Lingaedje",
+ "translate-total": "Messaedjes",
+ "translate-untranslated": "Nén ratournés",
+ "translate-percentage-complete": "Completaedje",
+ "translate-percentage-fuzzy": "Trop vîs",
+ "translate-languagestats-overall": "Tos les groupes di messaedjes eshonne",
+ "translate-ls-submit": "Håyner les statistikes",
+ "translate-ls-column-group": "Groupe di messaedjes",
+ "translate-mgs-pagename": "Sitatistikes do groupe di messaedjes",
+ "translate-mgs-fieldset": "Preferinces di håynaedje",
+ "translate-mgs-group": "Groupe di messaedjes:",
+ "translate-mgs-nocomplete": "Èn nén mostrer les lingaedjes k' ont ratourné ttafwait",
+ "translate-mgs-noempty": "Èn nén mostrer les lingaedjes sins nou ratournaedje",
+ "translate-mgs-submit": "Håyner les statistikes",
+ "translate-mgs-column-language": "Lingaedje",
+ "translate-mgs-totals": "Tos les lingaedjes eshonne",
+ "translate-mgs-invalid-group": "Li groupe dimandé $1 n' egzistêye nén.",
+ "translate-mgs-nothing": "Rén a håyner po les statistikes dimandêyes",
+ "supportedlanguages": "Lingaedjes sopoirtés",
+ "supportedlanguages-summary": "Cisse pådje ci mostere tos les lingaedjes sopoirtés pa {{SITENAME}},\navou les nos des ratourneus k' ovrèt e tchaeke lingaedje.\nLi no d'on ratourneu est metou pus grand sorlon l' cwantité di candjmints k' il a fwait.\nLi coleur do sorlignaedje mostere s' il a stî actif dierinnmint.",
+ "supportedlanguages-colorlegend": "Ledjinde des coleurs: Dierin ratournaedje i gn $1 djoûs.",
+ "supportedlanguages-translators": "{{PLURAL:$2|Ratourneu|Ratourneus}}: $1",
+ "supportedlanguages-recenttranslations": "dierins ratournaedjes",
+ "supportedlanguages-count": "$1 {{PLURAL:$1|lingaedje|lingaedjes}} å totå.",
+ "supportedlanguages-activity": "$1: $2 {{PLURAL:$2|candjmint|candjmints}} - dierin candjmint i gn $3 {{PLURAL:$3|djoû|djoûs}}",
+ "translate-save": "Schaper ($1)",
+ "translate-jssti-add": "Radjouter el djivêye",
+ "managemessagegroups": "Manaedjaedje des groupes",
+ "translate-smg-notallowed": "Vos n' poloz nén fé ciste accion ci.",
+ "translate-smg-nochanges": "I gn a nou candjmint a traitî.",
+ "translate-smg-submit": "Evoyî les candjmints po esse traitîs",
+ "translate-smg-submitted": "Les definixhas des messaedjes ont stî metowes a djoû. Les candjmints sont traitîs en erî-plan.",
+ "translate-manage-import-diff": "Messaedje $1 | Accions: $2",
+ "translate-manage-import-new": "Novea messaedje $1",
+ "translate-manage-import-deleted": "Messaedje disfacé $1",
+ "translate-manage-action-import": "ristitchî",
+ "translate-manage-action-conflict": "ristitchî et marker «fuzzy»",
+ "translate-manage-action-ignore": "passer houte",
+ "translate-manage-action-fuzzy": "Ristitchî les ratournaedjes et les marker come «fuzzy»",
+ "translate-manage-nochanges": "I n' a nou candjmint dins les definixhas des messaedjes po ç' groupe ci.",
+ "translate-manage-nochanges-other": "I n' a yeu nou candjmint po ç' lingaedje ci.\nEployîz l' loyén chal pa dzo po rivni al vuwe di detays do groupe.",
+ "translate-js-summary": "Rascourti:",
+ "translate-js-save": "Schaper",
+ "translate-js-next": "Schaper et drovi l' shuvant",
+ "translate-js-nonext": "C' esteut l' dierin messaedje del pådje.",
+ "translate-js-skip": "Potchî å shuvant",
+ "translate-js-history": "Istwere do ratournaedje",
+ "translate-js-support": "Dimander åk",
+ "translate-js-support-title": "Dimander des racsegnes si vos n' avoz nén assez d' infôrmåcion po ratourner a môde di djin.",
+ "translate-js-support-unsaved-warning": "Vos avoz des ratournaedjes nén schapés.",
+ "translate-gs-code": "Côde",
+ "translate-gs-continent": "Continint",
+ "translate-gs-speakers": "Cåzeus",
+ "translate-gs-multiple": "Pus d' onk",
+ "translate-gs-total": "Totå",
+ "translate-documentation-language": "documintåcion des messaedjes",
+ "translate-searchprofile": "Ratournaedjes",
+ "translate-searchprofile-tooltip": "Cweri dins tos les lingaedjes",
+ "translate-search-languagefilter": "Passete pa lingaedje:",
+ "translate-search-nofilter": "dins tos les lingaedjes",
+ "translate-messagereview-submit": "Acertiner",
+ "translate-messagereview-progress": "Acertinaedje...",
+ "translate-messagereview-failure": "Acertinaedje... 'l a fwait berwete: $1",
+ "translate-messagereview-done": "Acertiné",
+ "translate-messagereview-reviews": "Acertiné pa {{PLURAL:$1|èn uzeu|$1 uzeus}}",
+ "translate-messagereview-reviewswithyou": "Acertiné pa {{PLURAL:$1|èn uzeu|$1 uzeus}}, tot vs contant",
+ "api-error-invalidrevision": "Ratournaedje nén trové",
+ "api-error-unknownmessage": "Messaedje nén trové",
+ "api-error-fuzzymessage": "Li ratournaedje est metou come «fuzzy»",
+ "api-error-owntranslation": "Vos n' poloz nén acertiner vos prôpes ratournaedjes",
+ "translate-messagereview-no-fuzzy": "Les ratournaedjes «fuzzy» n' polèt nén esse acertinés.",
+ "translate-messagereview-no-own": "Vos n' poloz nén acertiner vos prôpes ratournaedjes.",
+ "translate-messagereview-doit": "Acertiner ki l' ratournaedje est comifåt.",
+ "group-translate-proofr.css": "/* Li CSS metou chal est eployî fok pås verifieus d' ratournaedjes */",
+ "group-translate-proofr.js": "/* Li JavaScript metou chal est eployî fok pås verifieus d' ratournaedjes */",
+ "log-name-translationreview": "Djournå des verifiaedjes des ratournaedjes",
+ "log-description-translationreview": "Djournå di tos les verifiaedjes des ratournaedjes et groupes di messaedjes.",
+ "logentry-translationreview-message": "$1 {{GENDER:$2|a-st acertiné}} l' ratournaedje $3",
+ "translate-workflow-state-": "(dismetou)",
+ "translate-workflowstatus": "Estat: $1",
+ "translate-workflow-set-do": "Mete",
+ "translate-workflow-set-doing": "Metant en alaedje...",
+ "translate-workflow-set-done": "Metou!",
+ "translate-workflow-set-error-alreadyset": "L' estat dmandé est l' minme ki l' ci pol moumint.",
+ "translate-workflow-autocreated-summary": "Ahivaedje otomatike di pådjes po l' estat d' ovrance $1",
+ "translate-stats-workflow": "Estat",
+ "translate-workflowgroup-label": "Estats d' ovrance",
+ "translate-workflowgroup-desc": "Ci groupe ci mostere l' estat d' ovrance des ratournaedjes.\nLes estats sont definis dins l' variåve d' apontiaedje $wgTranslateWorkflowStates.",
+ "translate-dynagroup-recent-label": "Dierins ratournaedjes",
+ "translate-dynagroup-recent-desc": "Ci groupe ci mostere les ratournaedjes fwaits dierinnmint dins l' lingaedje.\nIl est eployî copurade po les bouyes di verifiaedje.",
+ "translate-dynagroup-by": "Ratournaedje fwait pa {{GENDER:$1|$1}}",
+ "translate-dynagroup-byc": "Ratournaedje fwait pa {{GENDER:$1|$1}} ($2)",
+ "translate-dynagroup-last": "Dierin candjmint fwait pa {{GENDER:$1|$1}}",
+ "translate-dynagroup-lastc": "Dierin candjmint fwait pa {{GENDER:$1|$1}} ($2)",
+ "translate-gethelp": "Aidance"
+}
diff --git a/MLEB/Translate/i18n/core/xal.json b/MLEB/Translate/i18n/core/xal.json
new file mode 100644
index 00000000..7dc54f5c
--- /dev/null
+++ b/MLEB/Translate/i18n/core/xal.json
@@ -0,0 +1,26 @@
+{
+ "@metadata": {
+ "authors": [
+ "Huuchin"
+ ]
+ },
+ "translate": "Орчуллһн",
+ "translate-page-settings-legend": "Көгүд",
+ "translate-page-group": "Баг",
+ "translate-page-language": "Келн",
+ "translate-page-limit": "Цег",
+ "translate-page-limit-option": "$1 {{PLURAL:$1|зәңг|зәңгс|зәңгс}} халхд",
+ "translate-submit": "Асрх",
+ "translate-page-navigation-legend": "Орм медлһн",
+ "translate-page-showing": "$1 - $2 тойгта зәңгс ($3 ут туршдан) үзүлсн.",
+ "translate-page-showing-none": "Зәңгс үзүлх уга",
+ "translate-next": "дарук халх",
+ "translate-prev": "урдк халх",
+ "translate-page-description-legend": "Багин туск",
+ "translate-edit-tmmatch": "$1%та ирлцән",
+ "translate-pref-editassistlang": "Туслмҗин келс",
+ "translate-sidebar-alltrans": "Талдан келәр",
+ "translate-language": "Келн",
+ "translate-js-next": "Хадһлад, дарук секх",
+ "translate-js-skip": "Дарук"
+}
diff --git a/MLEB/Translate/i18n/core/xmf.json b/MLEB/Translate/i18n/core/xmf.json
new file mode 100644
index 00000000..c9244833
--- /dev/null
+++ b/MLEB/Translate/i18n/core/xmf.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Malafaya"
+ ]
+ },
+ "translate-page-language": "ნინა"
+}
diff --git a/MLEB/Translate/i18n/core/yi.json b/MLEB/Translate/i18n/core/yi.json
new file mode 100644
index 00000000..ac7a7610
--- /dev/null
+++ b/MLEB/Translate/i18n/core/yi.json
@@ -0,0 +1,366 @@
+{
+ "@metadata": {
+ "authors": [
+ "Imre",
+ "Joystick",
+ "פוילישער"
+ ]
+ },
+ "translate": "פֿארטײַטשן",
+ "translate-desc": "[[Special:Translate|באזונדערער בלאט]] פֿאר פֿארטײַטשן מעדיעוויקי און ווײַטער",
+ "translate-taskui-view": "ווײַזן אלע מעלדונגען",
+ "translate-taskui-untranslated": "ווײַזן די נישט איבערגעזעצטע מעלדונגען",
+ "translate-taskui-optional": "ווײַזן אפציאנאלע מעלדונגען.",
+ "translate-taskui-acceptqueue": "נאר מעלדונגען וואס איך קען מארקירן רעצענזירט",
+ "translate-taskui-reviewall": "איבערקוקן אלע איבערזעצונגען",
+ "translate-taskui-export-to-file": "עקספארטירן אין סיסטעם פֿארמאט",
+ "translate-taskui-export-as-po": "עקספארטירן פאר אפֿליין איבערזעצונג",
+ "translate-taction-translate": "פֿאַרטײַטשן",
+ "translate-taction-proofread": "רעצענזירן",
+ "translate-taction-lstats": "שפראך סטאטיסטיק",
+ "translate-taction-mstats": "מעלדונג גרופע סטאטיסטיק",
+ "translate-taction-export": "עקספארטירן",
+ "translate-taction-disabled": "די פעולה איז אומאקטיווירט אויף דער וויקי.",
+ "translate-page-no-such-language": "באַשטימטע שפראַך אומגילטיק.",
+ "translate-page-no-such-group": "ספעציפֿירטע גרופע אומגילטיק.",
+ "translate-page-disabled": "פֿאַרטײַטשונגען צו דער דאזיקער שפראַך זענען מבוטל געווארן.\nטעם:\n\n<em>$1</em>",
+ "translate-language-disabled": "איבערזעצונג אין דער שפראך נישט מעגלעך.",
+ "translate-page-settings-legend": "איינשטעלונגען",
+ "translate-page-group": "גרופע",
+ "translate-page-language": "שפראך",
+ "translate-page-limit": "לימיט",
+ "translate-page-limit-option": "$1 {{PLURAL:$1|מעלדונג|מעלדונגען}} אין א בלאט",
+ "translate-submit": "ווייזן",
+ "translate-page-navigation-legend": "נאוויגאציע",
+ "translate-page-showing": "ווײַזן מעלדונגען $1 ביז $2 פֿון $3.",
+ "translate-page-showing-all": "ווײַזן $1 {{PLURAL:$1|מעלדונג|מעלדונגען}}.",
+ "translate-page-showing-none": "נישטא קיין מעלדונגען צו ווײַזן.",
+ "translate-next": "קומענדיגער בלאט",
+ "translate-prev": "פֿריערדיגער בלאט",
+ "translate-page-description-legend": "אינפֿארמאציע וועגן דער גרופע",
+ "translate-page-description-hasoptional": "די מעלדונג גרופע אנטהאלט אפציאנאלע מעלדונגען.\nאפציאנאלע מעלדונגען זאל מען נאר איבערזעצן ווען אייער שפראך האט באזונדערע באדארפונגען\nווי למשל נישט ניצן שפייצן אדער טראנסקריפציע פון פרט־נעמען. $1",
+ "translate-page-description-hasoptional-open": "ווײַזן אפציאנאלע מעלדונגען.",
+ "translate-page-edit": "רעדאַקטירן",
+ "translate-ext-url": "<hr />וועבזײַטל: $1",
+ "translate-optional": "(ברירהדיק)",
+ "translate-ignored": "(איגנאָרירט)",
+ "translate-edit-title": "רעדאַקטירן\"$1\"",
+ "translate-edit-definition": "מעלדונג דעפֿיניציע",
+ "translate-edit-translation": "איבערזעצונג",
+ "translate-edit-contribute": "בײַשטײַערן",
+ "translate-edit-no-information": "<em>די מעלדונג פעלט דאקומענטאציע.\nאויב איר ווייסט וואו אדער ווי די מעלדונג ווערט געניצט, קענט איר העלפֿן אנדערע פארטייטשערס דורך צולייגן דאקומענטאציע צו דער מעלדונג.</em>",
+ "translate-edit-information": "אינפֿארמאציע וועגן מעלדונג ($1)",
+ "translate-edit-in-other-languages": " מעלדונג אין אַנדערע שפּראַכן",
+ "translate-edit-committed": "לויפֿיגע איבערזעצונג אין ווייכוואַרג",
+ "translate-edit-warnings": "ווארענונגען וועגן אומפולשטענדיקע איבערזעצונגען",
+ "translate-edit-tmsugs": "פֿארשלאגן פֿון איבערזעצן זיכרון און מאשין איבערזעצן",
+ "translate-edit-tmmatch-source": "איבערזעצונג מקור טעקסט: $1",
+ "translate-edit-tmmatch": "$1% צופאַסונג",
+ "translate-use-suggestion": "פֿארבייטן לויפֿיקע איבערזעצונג מיט דעם פֿארשלאג.",
+ "translate-edit-nopermission": "איר דארפֿט איבערזעץ־רעכטן איבערצוזעצן מעלדונגען.",
+ "translate-edit-askpermission": "באקומען רשות",
+ "translate-magic-pagename": "פֿאַרברײטערטע מעדיעוויקי איבערזעצונג",
+ "translate-magic-help": "איר קענט איבערזעצן אליאסן פאר באזונדערע בלעטער, מאגישע ווערטער און נאמענטייל נעמען.\n\nבאזונדערע בלעטער אליאסן און מאגישע ווערטער קענען האבן עטלעכע איבערזעצונגען.\nמעט צעטיילט די איבערזעצונגען מיט א קאמע (,).\nנאמענטיילן קענען האבן נאר איין איבערזעצונג.\n\nאיבערזעצן דעם פראיעקט רעדן נאמענטייל <code dir=\"ltr\">$1 talk</code> קען זיין קאמפליצירט.\n<code>$1</code> ווערט פארביטן מיטן נאמען פונעם וועבזײַטל, למשל (<code>{{ns:project_talk}}</code>).\nטאמער אין אײַער שפראך איז נישט מעגלעך צו שאפֿן א קארעקטן אויסדרוק אן צו ענדערן דעם וועבזײַטל־נאמען, זײַט מודיע אונז בײַ [[Support]].\n\nאיר דארפט זײַן אן איבערזעצער כדי אויפהיטן ענדערונגען.\nדי ענדערונגען ווערן נישט אויפגעהיטן ביז איר דרוקט דאס אויפֿהיטן קנעפל אונטן.",
+ "translate-magic-module": "מאדול:",
+ "translate-magic-submit": "ווייזן",
+ "translate-magic-cm-export": "עקספארט",
+ "translate-magic-nothing-to-export": "נישטא וואס צו עקספארטירן.",
+ "translate-magic-cm-to-be": "ארגינעל",
+ "translate-magic-cm-current": "לויפֿיקע",
+ "translate-magic-cm-original": "מאגישע ווערטער",
+ "translate-magic-cm-comment": "הערה:",
+ "translate-magic-cm-save": "אויפֿהיטן",
+ "translate-magic-cm-updatedusing": "דערהײַנטיגט מיט [[Special:AdvancedTranslate|{{int:Translate-magic-pagename}}]]",
+ "translate-magic-cm-savefailed": "אויפהיטן דורכגעפאלן",
+ "translate-magic-special": "באַזונדער־בלעטער דעקנעמען",
+ "translate-magic-words": "מאגישע ווערטער",
+ "translate-magic-namespace": "נאמענטייל נעמען",
+ "translate-magic-notsaved": "אייער רעדאקטירונג איז נישט אויפגעהיטן!",
+ "translate-magic-errors": "ביטע פאַרריכטן {{PLURAL:$1|פֿאלגנדן גרײַז|פֿאלגנדע גרײַזן}} אין איבערזעצונגען:",
+ "translate-magic-saved": "אייערע ענדערונגען זענען אויפגעהיטן מיט דערפאלג.",
+ "translate-checks-parameters": "{{PLURAL:$2|דער פֿאלגנדער פאראמעטער ווערט|די פֿאלגנדע פאראמעטערס ווערן}} נישט געניצט:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-parameters-unknown": "{{PLURAL:$2|דער פֿאלגנדער פאַראַמעטער איז|די פֿאלגנדע פאַראַמעטערס זענען}} נישט באַקאַנט:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-balance": "די צאל {{PLURAL:$2|קלאמערן|קלאמערן}} איז נישט באלאנסירט:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links": "{{PLURAL:$2|דער פֿאלגנדער לינק איז|די פֿאלגנדע $2 לינקען זענען}} פראבלעמאַטיש:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links-missing": "{{PLURAL:$2|דער פֿאלגנדער לינק פֿעלט|די פֿאלגנדע $2 לינקס פֿעלן}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-xhtml": "ביטע פֿארבײַטן די פֿאלגנדע {{PLURAL:$2|טאג|טאגן}} מיט געהעריקע:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-plural": "דעפֿיניציע ניצט <nowiki>{{PLURAL:}}</nowiki>, די איבערזעצונג אבער נישט.",
+ "translate-checks-plural-dupe": "<nowiki>{{PLURAL:}}</nowiki> האט דופליקאטע פארעמס צום סוף. <nowiki>{{PLURAL:$1|פֿיש|פֿיש}}</nowiki> דארף מען שרײַבן <nowiki>{{PLURAL:$1|פֿיש}}</nowiki>.",
+ "translate-checks-pagename": "נאמענטייל געענדערט פון דער דעפֿיניציע",
+ "translate-checks-format": "די דאזיקע איבערזעצונג פֿאלגט נישט די דעפֿיניציע אדער האט אומגילטיקן סינטאקס: $1",
+ "translate-checks-parametersnotequal": "פאראמעטער צאל איז {{PLURAL:$1|$1}}; דארף אבער זײַן {{PLURAL:$2|$2}}.",
+ "translate-checks-malformed": "<nowiki>$1</nowiki> איז נישט געהעריק.",
+ "translate-checks-fudforum-syntax": "באַניצט <nowiki>$1</nowiki> אַנשטאט <nowiki>$2</nowiki> אין דעם דאָזיקן פראיעקט.",
+ "translate-pref-nonewsletter": "שיקט מיר נישט קיין ע־פאסט בריוון",
+ "translate-pref-editassistlang": "אונטערשטיץ שפראכן:",
+ "prefs-translate": "איבערזעצונג אויסקלייבן",
+ "translate-pref-editassistlang-help": "רשימה געשיידט מיט קאמעס פון שפראך קאדן.\nאיבערזעצונגען פון א מעלדונג אין די שפראכן ווערט געוויזן ווען איר זעצט איבער.\nדי גרונט רשימה פון שפראכן ווענדט זיך לויט אייער שפראך.",
+ "translate-pref-editassistlang-bad": "אומגילטיקער שפּראַך קאָד אין דער רשימה:\n<nowiki>$1</nowiki> .",
+ "right-translate": "רעדאקטירן דורכן איבערזעצונג אייבערפֿלאך",
+ "right-translate-manage": "פֿארוואלטן מעלדונג גרופעס",
+ "action-translate-manage": "פֿארוואלטן מעלדונג גרופעס",
+ "right-translate-import": "אימפארטירן אפֿליין איבערזעצונגען",
+ "action-translate-import": "אימפארטירן אפֿליין איבערזעצונגען",
+ "right-translate-messagereview": "איבערקוקן איבערזעצונגען",
+ "right-translate-groupreview": "ענדערן ארבעטשטראם סטאטוס פון מעלדונג גרופעס",
+ "translate-rc-translation-filter": "פֿילטערן איבערזעצונגען:",
+ "translate-rc-translation-filter-no": "גאָרנישט",
+ "translate-rc-translation-filter-only": "ווײַזן נאר איבערזעצונגען",
+ "translate-rc-translation-filter-filter": "פֿילטערן איבערזעצונגען:",
+ "translate-rc-translation-filter-site": "נאר ענדערונגען צו וועבזײַטל מעלדונגען",
+ "translationstats": "פֿארטײַטשן סטאטיסטיק",
+ "translate-stats-edits": "רעדאקטירונגען",
+ "translate-stats-users": "איבערזעצער",
+ "translate-stats-registrations": "רעגיסטרירונגען",
+ "translate-stats-reviews": "רעצענזיעס",
+ "translate-stats-reviewers": "רעצענזענטן",
+ "translate-statsf-options": "דיאגראם מעגלעכקייטן",
+ "translate-statsf-width": "ברייט אין פיקסעלן:",
+ "translate-statsf-height": "הייך אין פיקסעלן:",
+ "translate-statsf-days": "צייט אין טעג:",
+ "translate-statsf-start": "אנפֿאנג דאטע:",
+ "translate-statsf-scale": "גראנולאריטעט:",
+ "translate-statsf-scale-months": "מאנאַטן",
+ "translate-statsf-scale-weeks": "וואָכן",
+ "translate-statsf-scale-days": "טעג",
+ "translate-statsf-scale-hours": "שעה'ן",
+ "translate-statsf-count": "מאָס:",
+ "translate-statsf-count-edits": "צאל רעדאקטירונגען",
+ "translate-statsf-count-users": "אקטיווע איבערזעצער",
+ "translate-statsf-count-registrations": "נײַע באַניצער",
+ "translate-statsf-count-reviews": "איבערזעצונג רעצענזיעס",
+ "translate-statsf-count-reviewers": "רעצענזענטן",
+ "translate-statsf-language": "קאמע־געטיילט רשימה פון שפראך קאדן:",
+ "translate-statsf-group": "קאמע־געטיילט רשימה פון גרופע קאדן:",
+ "translate-statsf-submit": "פֿאראויסשטעלונג",
+ "translate-tag-category": "איבערזעצבאַרע בלעטער",
+ "translate-tag-page-desc": "אפטײַטש פֿונעם וויקי בלאַט [[$2|$1]] פון $3 ($4).",
+ "translate-sidebar-alltrans": "אין אַנדערע שפּראַכן",
+ "translations": "אלע אפטײַטשן",
+ "translations-summary": "אריינגעבן א מעלדונג נאמען אונטן צו ווייזן אלע דערגרייכלעכע איבערזעצונגען.",
+ "translate-translations-no-message": "\"$1\" איז נישט קיין איבערזעצבארע מעלדונג",
+ "translate-translations-none": "נישטאַ קיין טײַטשן פֿאַר \"$1\"",
+ "translate-translations-count": "געטראפן {{PLURAL:$1|איין איבערזעצונג|$1 איבערזעצונגען}}.",
+ "translate-translations-fieldset-title": "מעלדונג",
+ "translate-translations-messagename": "נאמען:",
+ "translate-translations-project": "פראיעקט:",
+ "translate-translations-including-no-param": "זײַט אזוי גוט ספעציפֿיצירן א גילטיקע מעלדונג אינעם אונטערבלאט פאראמעטער",
+ "translate-translations-history-short": "ה",
+ "languagestats": "שפראַך סטאַטיסטיק",
+ "languagestats-summary": "דער דאזיגער בלאַט ווײַזט פֿאַרטײַטשן סטאַטיסטיק פֿאַר אַלע מעלדונג גרופעס פֿאַר א שפראַך.",
+ "messagegroupstats-summary": "דער בלאט ווײַזט מעלדונג־גרופע סטאטסטיק.",
+ "languagestats-stats-for": "איבערזעצונג סטאטיסטיק פֿאר $1 ($2).",
+ "languagestats-recenttranslations": "לעצטיקע איבערזעצונגען",
+ "translate-langstats-incomplete": "טייל פון די סטאטיסטיק זענען נישט פֿולשטענדיק. מ'דארף ווידער אנלאדן צו באקומען נאך סטאטיסטיק.",
+ "translate-langstats-expand": "פֿאַרברייטערן",
+ "translate-langstats-collapse": "אײַנציען",
+ "translate-langstats-expandall": "פֿארברייטערן אלץ",
+ "translate-langstats-collapseall": "צונויפציען",
+ "translate-language-code": "שפראך קאד",
+ "translate-language-code-field-name": "שפראך קאד:",
+ "translate-suppress-complete": "אונטערדריקן מעלדונג גרופעס וואס זענען אינגאנצן איבערגעזעצט",
+ "translate-ls-noempty": "אונטערדריקן מעלדונג גרופעס וואס זענען בכלל נישט איבערגעזעצט",
+ "translate-language": "שפראך",
+ "translate-total": "מעלדונגען",
+ "translate-untranslated": "נישט פֿאַרטײַטשט",
+ "translate-percentage-complete": "פֿאַרענדיקונג",
+ "translate-percentage-fuzzy": "פֿאַרעלטערט",
+ "translate-languagestats-overall": "אלע מעלדונג גרופעס צוזאמען",
+ "translate-ls-submit": "ווײַזן סטאטיסטיק",
+ "translate-ls-column-group": "מעלדונג גרופע",
+ "translate-mgs-pagename": "מעלדונג גרופע סטאטיסטיק",
+ "translate-mgs-fieldset": "ווייַזן רעפֿערענצן",
+ "translate-mgs-group": "מעלדונג גרופע:",
+ "translate-mgs-nocomplete": "נישט ווײַזן שפראכן מיט פֿארטיקע איבערזעצונגען",
+ "translate-mgs-noempty": "נישט ווײַזן שפראכן וואס האבן נאכנישט קיין איבערזעצונגען",
+ "translate-mgs-submit": "ווײַזן סטאטיסטיק",
+ "translate-mgs-column-language": "שפראַך",
+ "translate-mgs-totals": "אלע שפראכן צוזאמען",
+ "translate-mgs-invalid-group": "די ספעציפֿירטע גרופע $1 איז נישט פֿאראן.",
+ "translate-mgs-nothing": "נישט פאראן וואס צו ווײַזן פאר די פארלאנגטע סטאטיסטיק.",
+ "supportedlanguages": "געשטיצטע שפראַכן",
+ "supportedlanguages-summary": "דער בלאט ווײַזט א רשימה פון אלע שפראכן געשטיצט דורך {{SITENAME}},\nמיט די נעמען פון די איבערזעצער וואס ארבעטן אויף יענער שפראך.\nוואס מער די צאל פון ענדערונגען פון אן איבערזעצער, וואס גרעסער ווערט זײַן נאמען געוויזן.\nדער קאליר פון דער ליניע אונטער דעם נאמען ווילט ווען דער איבערזעצער איז לעצט געווען טעטיק דא.",
+ "supportedlanguages-colorlegend": "לעגענדע פאר די קאלירן:לעצטע איבערזעצונג פאר $1 טעג.",
+ "supportedlanguages-translators": "{{PLURAL:$2|{{GENDER:$3|איבערזעצער|איבערזעצערין}}|איבערזעצער}}: $1",
+ "supportedlanguages-recenttranslations": "לעצטיקע איבערזעצונגען",
+ "supportedlanguages-count": "$1 {{PLURAL:$1|שפראך|שפראכן}} אינגאנצן.",
+ "supportedlanguages-activity": "$1 : $2 {{PLURAL:$2| רעדאַגירונג | רעדאַגירונגען}} - לעצטע רעדאַגירונג $3 {{PLURAL:$3| טאָג | טעג}} צוריק",
+ "translate-save": "אויפֿהיטן ($1)",
+ "translate-jssti-add": "צולייגן צו ליסטע",
+ "managemessagegroups": "מעלדונג גרופּע אַדמיניסטראַציע",
+ "translate-smg-notallowed": "איר זענט נישט בארכעטיקט אויסצופירן די אקציע.",
+ "translate-smg-nochanges": "נישט פאראן קיין ענדערונגען צו פראצעסירן.",
+ "translate-smg-submit": "אײַנגעבן ענדערונגען צו פראצעסירן.",
+ "translate-smg-left": "מעלדונג אינהאלט אין וויקי",
+ "translate-manage-import-diff": "מעלדונג $1 | פעולות: $2",
+ "translate-manage-import-new": "נייע מעלדונג $1",
+ "translate-manage-import-deleted": "אויסגעמעקטע מעלדונג $1",
+ "translate-manage-action-import": "אימפארטירן",
+ "translate-manage-action-conflict": "אימפארטירן און מארקירן \"אומקלאר\"",
+ "translate-manage-action-ignore": "איגנאָרירן",
+ "translate-manage-action-fuzzy": "אימפארטירן און מארקירן איבערזעצונגען \"אומקלאר\"",
+ "translate-manage-nochanges": "נישטא קיין ענדערונגען אין דעפֿיניציעס פֿאַר דער דאָזיגער גרופע.",
+ "translate-manage-nochanges-other": "נישט געווען קיין ענדערונגען פאר דער דאזיקער שפראך.\nניצט דעם לינק אונטן צוריקצוגיין צום גרופע־פרטים באקוק.",
+ "translate-manage-fuzzy-summary": "די מעלדונג דעפיניציע איז געענדערט געווארן",
+ "translate-manage-submit": "אויספֿירן",
+ "translate-manage-import-ok": "אימפארטירט:$1",
+ "translate-manage-import-done": "אימפארט אדורכגעפירט!",
+ "importtranslations": "אימפארטירן איבערזעצונגען",
+ "translate-import-from-local": "לאקאלע טעקע ארויפֿלאדן:",
+ "translate-import-load": "לאָדן טעקע",
+ "translate-import-err-dl-failed": "מ'קען נישט אפנעמען די טעקע:\n$1",
+ "translate-import-err-ul-failed": "טעקע אַרויפֿלאָד נישט געראָטן",
+ "translate-import-err-invalid-title": "איינגעגעבענע טעקע נאמען <nowiki>$1</nowiki> נישט גילטיק.",
+ "translate-import-err-no-such-file": "די טעקע <nowiki>$1</nowiki> עקסיזטירט נישט אדער נישט ארויפגעלאדן לאקאל.",
+ "translate-import-err-stale-group": "די מעלדונג גרופע צו וואס די טעקע געהערט עקזיסטירט נישט.",
+ "translate-js-summary": "רעזומע:",
+ "translate-js-save": "אויפֿהיטן",
+ "translate-js-next": "אײַנשפייכלערן און עפֿענען נעקסטע",
+ "translate-js-nonext": "דאָס איז געווען די לעצטע מעלדונג אויף דעם בלאַט.",
+ "translate-js-skip": "ווײַטער צום נעקסטן",
+ "translate-js-save-failed": "אײַנשפײַכלערן דורכגעפֿאַלן. ביטע גיט א באריכט וועגן דעם גרײַז.",
+ "translate-js-history": "איבערזעצונג געשיכטע",
+ "translate-js-support": "פֿרעגן א שאלה",
+ "translate-js-support-title": "בעטן הילף אויב עס איז ניט פֿאראן גענוג אינפֿאָרמאַציע איבערצוזעצן די מעלדונג געהעריק.",
+ "translate-js-support-unsaved-warning": "איר האט נישט אפגעהיטענע איבערזעצונגען.",
+ "translate-gs-pos": "פאזיציע",
+ "translate-gs-code": "קאד",
+ "translate-gs-continent": "קאָנטינענט",
+ "translate-gs-speakers": "רעדערס",
+ "translate-gs-score": "פונקטן־חשבון",
+ "translate-gs-multiple": "מערער",
+ "translate-gs-count": "צאל",
+ "translate-gs-total": "סה\"כ",
+ "translate-gs-avgscore": "דורכשניטלער פונקטן־חשבון",
+ "translate-documentation-language": "מעלדונג דאקומענטאציע",
+ "translate-searchprofile": "איבערזעצונגען",
+ "translate-searchprofile-tooltip": "זוכן אין אלע איבערזעצונגען",
+ "translate-search-languagefilter": "פֿילטערן לויט שפראך:",
+ "translate-search-nofilter": "קיין פֿילטערן",
+ "translate-messagereview-submit": "מארקירן רעצענזירט",
+ "translate-messagereview-progress": "מארקירן רעצענזירט …",
+ "translate-messagereview-failure": "מארקירן רעצענזירט דורכגעפאלן: $1",
+ "translate-messagereview-done": "רעצענזירט",
+ "translate-messagereview-reviews": "איבערגעקוקט דורך {{PLURAL:$1|איין באניצער|$1 באניצער}}",
+ "translate-messagereview-reviewswithyou": "איבערגעקוקט דורך {{PLURAL:$1|אײַך|$1 באניצער כולל אײַך}}",
+ "api-error-invalidrevision": "איבערזעצונג נישט געטראפן",
+ "api-error-unknownmessage": "מעלדונג נישט געטראפן",
+ "api-error-fuzzymessage": "איבערזעצונג מארקירט פארעלטערט",
+ "api-error-owntranslation": "איר קען נישט מארקירן אײַערע אייגענע איבערזעצונגען ווי רעצענזירט",
+ "translate-messagereview-no-own": "איר קען נישט מארקירן אײַערע אייגענע איבערזעצונגען ווי רעצענזירט.",
+ "translate-messagereview-doit": "מארקירן די איבערזעצונג ווי רעצענזירט.",
+ "log-name-translationreview": "איבערזעצונג רעצענזיע לאגבוך",
+ "logentry-translationreview-message": "$1 {{GENDER:$2|האט רעצענזירט}} איבערזעצונג $3",
+ "logentry-translationreview-group": "$1 {{GENDER:$2|האט געענדערט}} דעם סטאטוס פון $4 איבערזעצונגען פון $3 פון $6 צו $7",
+ "group-translate-sandboxed": "אומבאשטעטיקטע איבערזעצער",
+ "group-translate-sandboxed-member": "{{GENDER:$1|אומבאשטעטיקטער איבערזעצער| אומבאשטעטיקטע איבערזעצערין}}",
+ "right-translate-sandboxmanage": "פארוואלטן זאמדקאסטן באניצער",
+ "translate-workflow-state-": "(נישט געשטעלט)",
+ "translate-workflowstatus": "סטאַטוס: $1",
+ "translate-workflow-set-do": "אײַנשטעלן",
+ "translate-workflow-set-doing": "אײַנשטעלן…",
+ "translate-workflow-set-done": "אײַנגעשטעלט!",
+ "translate-workflow-set-error-alreadyset": "דער געפאדערטע סטאטוס איז גלייך צום אקטועלן סטאטוס.",
+ "translate-workflow-autocreated-summary": "אויטאמאטישע שאפונג פון בלאט פאר ארבעטשטראם סטאטוס $1",
+ "translate-stats-workflow": "סטאַטוס",
+ "translate-workflowgroup-label": "ארבעטשטראם סטאטוסן",
+ "translate-workflowgroup-desc": "די גרופע הודעות ווייזט די איבערזעצונג ארבעטשטראם סטאטוסן. \nדי סטאטוסן ווערן דעפינירט אין דעם קאנפיגוראציע וואריאנט ‎$wgTranslateWorkflowStates.",
+ "translate-dynagroup-recent-label": "לעצטיקע איבערזעצונגען",
+ "translate-dynagroup-recent-desc": "די דאָזיקע מעלדונג גרופע ווײַזט אַלע לעצטיקע איבערזעצונגען צו דער דאָזיקער שפראַך.\nניצלעכסטן פֿאר די רעצענזירן אויפֿגאַבעס.",
+ "translate-dynagroup-additions-label": "לעצטיגע הוספות",
+ "translate-dynagroup-additions-desc": "די מעלדונג גרופע ווײַזט נײַע און געענדערטע מעלדונגען.",
+ "translate-dynagroup-by": "איבערזעצונג פֿון {{GENDER:$1|$1}}",
+ "translate-dynagroup-byc": "איבערזעצונג פֿון {{GENDER:$1|$1}} ($2)",
+ "translate-dynagroup-last": "לעצטע ענדערונג פֿון {{GENDER:$1|$1}}",
+ "translate-dynagroup-lastc": "לעצטע ענדערונג פֿון {{GENDER:$1|$1}} ($2)",
+ "translate-gethelp": "הילף",
+ "translate-msggroupselector-projects": "מעלדונג גרופע",
+ "translate-msggroupselector-search-placeholder": "זוכן גרופעס",
+ "translate-msggroupselector-search-all": "אַלע",
+ "translate-msggroupselector-search-recent": "לעצטיקע",
+ "translate-msggroupselector-view-subprojects": "$1 {{PLURAL:$1|אונטערגרופע|אונטערגרופעס}}",
+ "tux-languageselector": "פֿאַרטייטשן אויף",
+ "tux-tab-all": "אַלע",
+ "tux-tab-untranslated": "נישט פֿאַרטײַטשט",
+ "tux-tab-outdated": "פֿאַרעלטערט",
+ "tux-tab-translated": "איבערגעזעצט",
+ "tux-tab-unproofread": "נישט איבערגעקוקט",
+ "tux-edit": "רעדאַקטירן",
+ "tux-status-optional": "ברירהדיק",
+ "tux-status-fuzzy": "פֿאַרעלטערט",
+ "tux-status-proofread": "איבערגעקוקט",
+ "tux-status-translated": "איבערגעזעצט",
+ "tux-status-saving": "אויפהיטנדיק…",
+ "tux-status-unsaved": "נישט אויפגעהיטן",
+ "tux-editor-placeholder": "אײַער איבערזעצונג",
+ "tux-editor-paste-original-button-label": "ארײַנקלעבן מקור טעקסט",
+ "tux-editor-discard-changes-button-label": "אוועקווארפן ענדערונגען",
+ "tux-editor-save-button-label": "אויפֿהיטן איבערזעצונג",
+ "tux-editor-skip-button-label": "ווײַטער צום נעקסטן",
+ "tux-editor-cancel-button-label": "אַנולירן",
+ "tux-editor-confirm-button-label": "באשטעטיקן איבערזעצונג",
+ "tux-editor-shortcut-info": "דרוקט \"$1\" אויפצוהיטן אדער \"$2\" איבערצוהיפן צו דער נעקסטער מעלדונג אדער \"$3\" פאר אנדערע דורכוועגן.",
+ "tux-editor-edit-desc": "רעדאקטירן דאקומענטאציע",
+ "tux-editor-add-desc": "צולייגן דאקומענטאציע",
+ "tux-editor-suggestions-title": "הצעות",
+ "tux-editor-in-other-languages": "אין אַנדערע שפראַכן",
+ "tux-editor-need-more-help": "דארפט איר נאך הילף?",
+ "tux-editor-ask-help": "בעטן נאך אינפארמאציע",
+ "tux-editor-tm-match": "$1% צופאַסונג",
+ "tux-warnings-more": "{{PLURAL:$1|נאך $1}}",
+ "tux-warnings-hide": "באַהאַלטן",
+ "tux-editor-save-failed": "אויפהיטן די איבערזעצונג איז אדורכגעפאלן: $1",
+ "tux-editor-n-uses": "באניצט {{PLURAL:$1|איינמאָל|$1 מאָל}}",
+ "tux-editor-message-desc-more": "ווײַזן נאך",
+ "tux-editor-message-desc-less": "ווײַזן ווינציקער",
+ "tux-editor-clear-translated": "באהאלטן איבערגעזעצט",
+ "tux-editor-proofreading-mode": "רעצענזירן",
+ "tux-editor-translate-mode": "ליסטע",
+ "tux-editor-proofreading-hide-own-translations": "באהאלטן אייערע איבערזענצונגען",
+ "tux-editor-proofreading-show-own-translations": "ווײַזן אײַערע איבערזעצונגען",
+ "tux-proofread-action-tooltip": "מארקירן רעצענזירט",
+ "tux-proofread-edit-label": "רעדאַקטירן",
+ "tux-editor-page-mode": "בלאַט",
+ "tux-editor-outdated-warning": "מ'דארף אפשר דערהײַנטיקן די איבערזעצונג.",
+ "tux-editor-outdated-warning-diff-link": "ווײַזן אונטערשיידן",
+ "tux-editor-doc-editor-placeholder": "מעלדונג דאקומענטאציע",
+ "tux-editor-doc-editor-save": "אויפהיטן דאקומענטאציע",
+ "tux-editor-doc-editor-cancel": "אַנולירן",
+ "tux-messagetable-more-messages": "נאך {{PLURAL:$1|איין מעלדונג|$1 מעלדונגען}}",
+ "tux-messagetable-loading-messages": "לאָדן $1 {{PLURAL:$1|מעלדונג|מעלדונגען}}.",
+ "tux-message-filter-placeholder": "פֿילטער ליסטע",
+ "tux-message-filter-result": "געטראפן $1 {{PLURAL:$1|רעזולטאַט| רעזולטאַטן}} פאר \"$2\"",
+ "tux-message-filter-advanced-button": "ווײַטהאלטן זוכן",
+ "tux-message-filter-optional-messages-label": "ברירהדיקע מעלדונגען",
+ "tux-proofread-translated-by-self": "איבערגעזעצט דורך אייך",
+ "tux-empty-list-all": "די דאזיקע מעלדונג גרופע איז ליידיק",
+ "tux-empty-list-all-guide": "קלויבט אן אנדער מעלדונג גרופע איבערצוזעצן",
+ "tux-translate-page-no-such-group": "<strong>די געזוכטע גרופע עקזיסטירט נישט.</strong> קלויבט אן אנדער מעלדונג גרופע.",
+ "tux-empty-list-translated": "קיין איבערגעזעצטע מעלדונגען",
+ "tux-empty-list-translated-guide": "איר קענט העלפן איבערזעצן",
+ "tux-empty-list-translated-action": "פֿאַרטײַטשן",
+ "tux-empty-no-messages-to-display": "קיין מעלדונגען צו ווײַזן",
+ "tux-empty-there-are-optional": "עס זענען פאראן אפציאנאלע מעלדונגען נישט געוויזן אין דער ליסטע.",
+ "tux-empty-show-optional-messages": "ווײַזן אפציאנאלע מעלדונגען",
+ "tux-empty-no-outdated-messages": "קיין פארעלעטערטע מעלדונגען",
+ "tux-empty-nothing-to-proofread": "נישטא וואס איבערצוקוקן",
+ "tux-empty-you-can-help-providing": "איר קענט העלפן מיט שאפן נייע איבערזעצונגען",
+ "tux-empty-nothing-new-to-proofread": "קיין נייע זאך נישט איבערצוקוקן",
+ "tux-empty-you-can-review-already-proofread": "מען קען איבערקוקן איבערזעצונגען וואס אנדערע האבן שוין רעצענזירט.",
+ "tux-empty-list-other": "נישטא וואס איבערצוזעצן",
+ "tux-empty-list-other-guide": "איר קענט העלפן איבערקוקן עקזיסטירנדיקע איבערזעצונגען",
+ "tux-empty-list-other-action": "איבערקוקן איבערזעצונגען",
+ "tux-empty-list-other-link": "ווײַזן אלע מעלדונגען",
+ "tux-editor-close-tooltip": "פארמאכן",
+ "tux-editor-expand-tooltip": "פֿאַרברייטערן",
+ "tux-editor-collapse-tooltip": "אײַנציען",
+ "tux-editor-message-tools-history": "היסטאריע",
+ "tux-editor-message-tools-delete": "אויסמעקן",
+ "tux-editor-message-tools-translations": "אַלע איבערזעצונגען",
+ "tux-editor-loading": "לאָדט…",
+ "translate-search-more-languages-info": "נאך {{PLURAL:$1|איין שפראך|$1 שפראכן}}",
+ "translate-statsbar-tooltip": "$1% איבערגעזעצט, $2% איבערגעקוקט",
+ "translate-statsbar-tooltip-with-fuzzy": "$1% איבערגעזעצט, $2% איבערגעקוקט, $3% פֿארעלטערט",
+ "translate-search-more-groups-info": "נאך {{PLURAL:$1|גרופע|גרופעס}}: $1",
+ "translate-ulsdep-title": "קאנפיגוראציע גרײַז"
+}
diff --git a/MLEB/Translate/i18n/core/yue.json b/MLEB/Translate/i18n/core/yue.json
new file mode 100644
index 00000000..793bc6af
--- /dev/null
+++ b/MLEB/Translate/i18n/core/yue.json
@@ -0,0 +1,52 @@
+{
+ "@metadata": {
+ "authors": [
+ "Shinjiman"
+ ]
+ },
+ "translate": "翻譯",
+ "translate-desc": "翻譯MediaWiki同其它嘢嘅[[Special:Translate|特別頁]]",
+ "translate-page-no-such-language": "所指定嘅語言唔正確。",
+ "translate-page-no-such-group": "所指定嘅組唔正確。",
+ "translate-page-settings-legend": "設定",
+ "translate-page-group": "組",
+ "translate-page-language": "語言",
+ "translate-page-limit": "上限",
+ "translate-page-limit-option": "每一版有$1個信息",
+ "translate-submit": "擷取",
+ "translate-page-navigation-legend": "導航",
+ "translate-page-showing": "顯示緊由 $1到$2 ,總共 $3 個信息。",
+ "translate-page-showing-all": "顯示緊 $1個信息。",
+ "translate-page-showing-none": "無信息可顯示。",
+ "translate-next": "下一版",
+ "translate-prev": "上一版",
+ "translate-page-description-legend": "有關嗰組嘅信息",
+ "translate-optional": "(可選)",
+ "translate-ignored": "(已略過)",
+ "translate-edit-definition": "信息定義",
+ "translate-edit-contribute": "貢獻",
+ "translate-edit-no-information": "''呢句信息無註解。\n如果你知道呢句信息響邊同埋點用,你可以加註解去呢個信息去幫其他嘅翻譯者。''",
+ "translate-edit-information": "呢句信息嘅資料 ($1)",
+ "translate-edit-in-other-languages": "其它語言嘅信息",
+ "translate-edit-committed": "而家響軟件嘅翻譯",
+ "translate-edit-warnings": "有關未譯好嘅警告",
+ "translate-magic-pagename": "延伸MediaWiki翻譯",
+ "translate-magic-help": "你可以翻譯特別頁替身、魔術字、皮名同埋名空間嘅名。\n\n響魔術字度你係要同時包括英文嘅翻譯,唔係嘅話就會唔能夠運作。\n同時保持第一個項目 (0或1) 不變。\n\n特別頁替身同埋魔術字可以有多個翻譯。\n翻譯係以逗號 (,) 分隔。\n皮名同埋空間名只可以有一項翻譯。\n\n響空間名翻譯度, <code>$1 talk</code> 係特別嘅。 <code>$1</code> 會由網名代替咗(例如<code>{{ns:project_talk}}</code>)。\n如果你嘅語言組合唔能夠響網站名唔改嘅情況之下去組合成你嘅意思,請聯絡技術員。\n\n你需要係翻譯組嘅組員去儲存嘅啲信息。\n響你撳下面嘅儲存擊之前,啲改動唔會儲存落來。",
+ "translate-magic-submit": "擷取",
+ "translate-magic-cm-export": "倒出",
+ "translate-magic-cm-to-be": "翻譯",
+ "translate-magic-cm-current": "現時",
+ "translate-magic-cm-original": "原本",
+ "translate-magic-cm-comment": "註解:",
+ "translate-magic-cm-save": "保存",
+ "translate-magic-cm-updatedusing": "用[[Special:AdvancedTranslate|{{int:Translate-magic-pagename}}]]更新咗",
+ "translate-magic-cm-savefailed": "保存失敗",
+ "translate-magic-special": "特別頁替身",
+ "translate-magic-words": "魔術字",
+ "translate-magic-namespace": "名空間名",
+ "translate-checks-parameters": "下面嘅參數係無用到嘅: <strong>$1</strong>",
+ "translate-checks-balance": "插入字嘅數量唔均等: <strong>$1</strong>",
+ "translate-checks-links": "下面嘅連結有問題: <strong>$1</strong>",
+ "translate-checks-xhtml": "請改下面嘅標籤去正確嘅: <strong>$1</strong>",
+ "translate-checks-plural": "用 <nowiki>{{PLURAL:}}</nowiki> 嘅解解釋但係翻譯無用到。"
+}
diff --git a/MLEB/Translate/i18n/core/zh-hans.json b/MLEB/Translate/i18n/core/zh-hans.json
new file mode 100644
index 00000000..cf853475
--- /dev/null
+++ b/MLEB/Translate/i18n/core/zh-hans.json
@@ -0,0 +1,412 @@
+{
+ "@metadata": {
+ "authors": [
+ "Alexsh",
+ "Anakmalaysia",
+ "Bencmq",
+ "Chenxiaoqino",
+ "Dimension",
+ "Gaoxuewei",
+ "Gzdavidwong",
+ "Hydra",
+ "Hzy980512",
+ "Jimmy xu wrk",
+ "Li3939108",
+ "Liangent",
+ "Liuxinyu970226",
+ "Mark85296341",
+ "Mys 721tx",
+ "PhiLiP",
+ "Sahran",
+ "Shirayuki",
+ "Shizhao",
+ "Slboat",
+ "Supaiku",
+ "Wmr89502270",
+ "Xiaomingyan",
+ "Yfdyh000",
+ "乌拉跨氪",
+ "Hudafu",
+ "Fengchao"
+ ]
+ },
+ "translate": "翻译",
+ "translate-desc": "用于翻译MediaWiki和其他软件界面信息的[[Special:Translate|特殊页面]]",
+ "translate-taskui-view": "显示所有信息",
+ "translate-taskui-untranslated": "显示未翻译的信息",
+ "translate-taskui-optional": "显示可选信息",
+ "translate-taskui-acceptqueue": "仅我可以标记为已复核的信息",
+ "translate-taskui-reviewall": "复核所有译文",
+ "translate-taskui-export-to-file": "以原始格式导出",
+ "translate-taskui-export-as-po": "导出离线翻译文件",
+ "translate-taction-translate": "翻译",
+ "translate-taction-proofread": "复核",
+ "translate-taction-lstats": "语言统计",
+ "translate-taction-mstats": "信息组统计",
+ "translate-taction-export": "导出",
+ "translate-taction-disabled": "该操作在本维基停用。",
+ "translate-page-no-such-language": "指定语言无效。",
+ "translate-page-no-such-group": "指定信息组无效。",
+ "translate-page-disabled": "本信息组该语言的翻译已经停用。原因:\n\n<em>$1</em>",
+ "translate-language-disabled": "至该语言的翻译已停用。",
+ "translate-page-settings-legend": "设置",
+ "translate-page-group": "信息组",
+ "translate-page-language": "语言",
+ "translate-page-limit": "限制",
+ "translate-page-limit-option": "每页$1个信息",
+ "translate-submit": "获取",
+ "translate-page-navigation-legend": "导航",
+ "translate-page-showing": "显示第$1条至第$2条信息,共$3个信息。",
+ "translate-page-showing-all": "显示$1条信息。",
+ "translate-page-showing-none": "没有可以显示的信息。",
+ "translate-next": "下一页",
+ "translate-prev": "上一页",
+ "translate-page-description-legend": "关于本信息组的信息",
+ "translate-page-description-hasoptional": "本信息组包含可选信息。可选信息应该只在您的语言有特殊需要,如不使用空格或音译合适名称时才被翻译。$1",
+ "translate-page-description-hasoptional-open": "显示可选信息。",
+ "translate-page-edit": "编辑",
+ "translate-ext-url": "<hr />网站:$1",
+ "translate-optional": "(可选)",
+ "translate-ignored": "(已忽略)",
+ "translate-edit-title": "编辑“$1”",
+ "translate-edit-definition": "信息定义",
+ "translate-edit-translation": "翻译",
+ "translate-edit-contribute": "贡献",
+ "translate-edit-no-information": "<em>该信息没有说明文档。如果你知道该信息用于何处或如何使用,你可以添加该信息的说明文档以帮助其他译者。</em>",
+ "translate-edit-information": "关于信息的资料($1)",
+ "translate-edit-in-other-languages": "其他语言的信息",
+ "translate-edit-committed": "当前软件中的翻译",
+ "translate-edit-warnings": "关于不完整翻译的警告",
+ "translate-edit-tmsugs": "来自翻译记忆和机器翻译的建议",
+ "translate-edit-tmmatch-source": "翻译原文:$1",
+ "translate-edit-tmmatch": "$1%匹配",
+ "translate-use-suggestion": "用该建议替代当前的翻译。",
+ "translate-edit-nopermission": "你需要有翻译权限才能翻译信息。",
+ "translate-edit-askpermission": "获取权限",
+ "translate-magic-pagename": "扩展MediaWiki翻译",
+ "translate-magic-help": "您可以翻译特殊页面别名、魔术字和名字空间名称。\n\n特殊页面别名和魔术字可以有多个翻译。多个翻译请用半角逗号(,)分隔。名字空间只能有一个翻译。\n\n翻译项目讨论名字空间<code>$1 talk</code>可能有些复杂。<code>$1</code>会被替换为项目名称(例如<code>{{ns:project_talk}}</code>)。如果不更改网站名称时不能用你的语言形成有效的表达,请在[[Support]]联系我们。\n\n您需要成为译者以保存更改。在点击下面的保存按钮之前,更改不会被保存。",
+ "translate-magic-module": "模块:",
+ "translate-magic-submit": "获取",
+ "translate-magic-cm-export": "导出",
+ "translate-magic-nothing-to-export": "没有可以导出的内容。",
+ "translate-magic-cm-to-be": "未来",
+ "translate-magic-cm-current": "目前",
+ "translate-magic-cm-original": "原始",
+ "translate-magic-cm-comment": "评论:",
+ "translate-magic-cm-save": "保存",
+ "translate-magic-cm-updatedusing": "已使用[[Special:AdvancedTranslate|{{int:Translate-magic-pagename}}]]更新",
+ "translate-magic-cm-savefailed": "保存失败",
+ "translate-magic-special": "特殊页面别名",
+ "translate-magic-words": "魔术字",
+ "translate-magic-namespace": "名字空间名称",
+ "translate-magic-notsaved": "你的编辑还没有保存!",
+ "translate-magic-errors": "请修正翻译中的以下$1处错误:",
+ "translate-magic-saved": "你的更改已成功保存。",
+ "translate-checks-parameters": "以下$2个参数未使用:<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-parameters-unknown": "以下$2个参数未知:<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-balance": "有一组数目不均等的{{PLURAL:$2|括号}}:<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links": "以下$2个链接有问题:<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links-missing": "以下$2个链接丢失:<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-xhtml": "请使用正确标签替换以下$2个标签:<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-plural": "定义使用了<nowiki>{{PLURAL:}}</nowiki>,但翻译未使用。",
+ "translate-checks-plural-forms": "<nowiki>{{PLURAL:}}</nowiki>被赋予了$1种形式,但只有$2种形式被支持(排除0=和1=形式)。",
+ "translate-checks-plural-dupe": "<nowiki>{{PLURAL:}}</nowiki>的尾部形式重复。<nowiki>{{PLURAL:$1|sheep|sheep}}</nowiki>应该写为<nowiki>{{PLURAL:$1|sheep}}</nowiki>。",
+ "translate-checks-pagename": "定义中的名字空间被更改",
+ "translate-checks-format": "该翻译没有遵循定义或有无效句法:$1",
+ "translate-checks-escape": "以下转义符可能是意外的:<strong>$1</strong>",
+ "translate-checks-parametersnotequal": "共计{{PLURAL:$1|$1}}个参数,应为{{PLURAL:$2|$2}}个。",
+ "translate-checks-malformed": "<nowiki>$1</nowiki>格式不正确。",
+ "translate-checks-fudforum-syntax": "请在该项目使用<nowiki>$1</nowiki>而不是<nowiki>$2</nowiki>。",
+ "translate-pref-nonewsletter": "不要给我发送电子邮件通讯",
+ "translate-pref-editassistlang": "辅助语言:",
+ "prefs-translate": "翻译选项",
+ "translate-pref-editassistlang-help": "请用逗号分隔语言代码列表。这些语言的信息翻译会在你翻译的时显示。默认语言列表基于你的语言。",
+ "translate-pref-editassistlang-bad": "列表中有无效语言代码:<nowiki>$1</nowiki>。",
+ "right-translate": "使用翻译界面编辑",
+ "right-translate-manage": "管理信息组",
+ "action-translate-manage": "管理信息组",
+ "right-translate-import": "导入线下翻译",
+ "action-translate-import": "导入线下翻译",
+ "right-translate-messagereview": "复核翻译",
+ "right-translate-groupreview": "更改信息组工作流状态",
+ "translate-rc-translation-filter": "过滤翻译:",
+ "translate-rc-translation-filter-no": "不过滤",
+ "translate-rc-translation-filter-only": "仅显示翻译",
+ "translate-rc-translation-filter-filter": "滤除翻译",
+ "translate-rc-translation-filter-site": "仅网站信息的更改",
+ "translationstats": "翻译统计",
+ "translate-stats-edits": "编辑",
+ "translate-stats-users": "译者",
+ "translate-stats-registrations": "注册",
+ "translate-stats-reviews": "复核",
+ "translate-stats-reviewers": "复核者",
+ "translate-statsf-intro": "你可以用该表格生成简单的统计。所有值都有上下限。",
+ "translate-statsf-options": "图表选项",
+ "translate-statsf-width": "宽度(像素):",
+ "translate-statsf-height": "高度(像素):",
+ "translate-statsf-days": "时间(天):",
+ "translate-statsf-start": "开始日期:",
+ "translate-statsf-scale": "间隔大小:",
+ "translate-statsf-scale-months": "月",
+ "translate-statsf-scale-weeks": "周",
+ "translate-statsf-scale-days": "天",
+ "translate-statsf-scale-hours": "小时",
+ "translate-statsf-count": "测量:",
+ "translate-statsf-count-edits": "编辑数",
+ "translate-statsf-count-users": "活跃译者",
+ "translate-statsf-count-registrations": "新用户",
+ "translate-statsf-count-reviews": "翻译复核",
+ "translate-statsf-count-reviewers": "复核者",
+ "translate-statsf-language": "逗号分隔的语言代码列表:",
+ "translate-statsf-group": "逗号分隔的信息组代码列表:",
+ "translate-statsf-submit": "预览",
+ "translate-tag-category": "可翻译页面",
+ "translate-tag-page-desc": "wiki页面[[$2|$1]]来自$3($4)的翻译。",
+ "translate-sidebar-alltrans": "其他语言",
+ "translations": "所有翻译",
+ "translations-summary": "请在下面输入信息名称以显示所有可用翻译。",
+ "translate-translations-no-message": "“$1”不是可翻译信息",
+ "translate-translations-none": "没有“$1”的翻译",
+ "translate-translations-count": "找到$1个翻译。",
+ "translate-translations-fieldset-title": "信息",
+ "translate-translations-messagename": "名称:",
+ "translate-translations-project": "项目:",
+ "translate-translations-including-no-param": "请在子页面参数指定有效的信息关键词",
+ "translate-translations-history-short": "历",
+ "languagestats": "语言统计",
+ "languagestats-summary": "本页面显示某种语言所有信息组的翻译统计。",
+ "messagegroupstats-summary": "此页面显示信息组统计。",
+ "languagestats-stats-for": "$1($2)的翻译统计。",
+ "languagestats-recenttranslations": "最近翻译",
+ "translate-langstats-incomplete": "本页面某些统计不完整。请重新载入以获取更多统计。",
+ "translate-langstats-expand": "展开",
+ "translate-langstats-collapse": "折叠",
+ "translate-langstats-expandall": "全部展开",
+ "translate-langstats-collapseall": "全部折叠",
+ "translate-language-code": "语言代码",
+ "translate-language-code-field-name": "语言代码:",
+ "translate-suppress-complete": "隐藏完全翻译的信息组",
+ "translate-ls-noempty": "隐藏完全未翻译的信息组",
+ "translate-language": "语言",
+ "translate-total": "信息数",
+ "translate-untranslated": "未翻译数",
+ "translate-percentage-complete": "完成度",
+ "translate-percentage-fuzzy": "已过时",
+ "translate-languagestats-overall": "所有信息组总计",
+ "translate-ls-submit": "显示统计",
+ "translate-ls-column-group": "信息组",
+ "translate-mgs-pagename": "信息组统计",
+ "translate-mgs-fieldset": "显示设置",
+ "translate-mgs-group": "信息组:",
+ "translate-mgs-nocomplete": "不显示完全翻译的语言",
+ "translate-mgs-noempty": "不显示没有任何翻译的语言",
+ "translate-mgs-submit": "显示统计",
+ "translate-mgs-column-language": "语言",
+ "translate-mgs-totals": "所有语言总计",
+ "translate-mgs-invalid-group": "指定的组$1不存在。",
+ "translate-mgs-nothing": "请求的统计没有内容显示。",
+ "supportedlanguages": "支持的语言",
+ "supportedlanguages-summary": "本页面显示{{SITENAME}}支持的所有语言的列表以及工作于每种语言的译者的名称。译者的名称越大,其编辑越多。下划线的颜色表明译者最后活跃距现在的时间。",
+ "supportedlanguages-colorlegend": "颜色说明:最后翻译于$1天前。",
+ "supportedlanguages-translators": "{{PLURAL:$2|{{GENDER:$3|译者}}}}:$1",
+ "supportedlanguages-recenttranslations": "最近翻译",
+ "supportedlanguages-count": "共计$1种语言。",
+ "supportedlanguages-activity": "$1:$2个编辑 - 最后编辑于$3天前",
+ "translate-save": "保存($1)",
+ "translate-jssti-add": "添加至列表",
+ "managemessagegroups": "信息组管理",
+ "translate-smg-notallowed": "你不能执行该操作。",
+ "translate-smg-nochanges": "没有要处理的更改。",
+ "translate-smg-submit": "提交要处理的更改",
+ "translate-smg-submitted": "信息定义已经更新。更改正在后台处理。",
+ "translate-smg-more": "在处理这些更改后这里将会有更多更改。",
+ "translate-smg-left": "wiki中的信息内容",
+ "translate-smg-right": "即将进行的更改",
+ "translate-manage-import-diff": "信息$1|操作:$2",
+ "translate-manage-import-new": "新信息$1",
+ "translate-manage-import-deleted": "删除的信息$1",
+ "translate-manage-action-import": "导入",
+ "translate-manage-action-conflict": "导入并标记模糊翻译",
+ "translate-manage-action-ignore": "忽略",
+ "translate-manage-action-fuzzy": "导入并标记模糊翻译",
+ "translate-manage-nochanges": "该信息组的信息定义没有更改。",
+ "translate-manage-nochanges-other": "该语言没有更改。请使用下面的链接返回信息组详情视图。",
+ "translate-manage-inconsistent": "在请求中检测到矛盾。请检查更改并重试。详细信息:$1。",
+ "translate-manage-toolong": "超出最大处理时间$1秒。请重新提交表格以继续处理。",
+ "translate-manage-import-summary": "导入新版本自外部来源",
+ "translate-manage-conflict-summary": "导入新版本自外部来源。请检查。",
+ "translate-manage-fuzzy-summary": "信息定义已经更改",
+ "translate-manage-submit": "执行",
+ "translate-manage-intro-other": "下面是$1翻译更改列表。请复查更改并选择你想要为每个更新执行的操作。如果你选择忽略更改,该操作只是暂时的。",
+ "translate-manage-import-ok": "已导入:$1",
+ "translate-manage-import-done": "导入完成!",
+ "importtranslations": "导入翻译",
+ "translate-import-from-local": "本地文件上传:",
+ "translate-import-load": "载入文件",
+ "translate-import-err-dl-failed": "无法读取文件:$1",
+ "translate-import-err-ul-failed": "文件上传失败",
+ "translate-import-err-invalid-title": "提供的文件名<nowiki>$1</nowiki>是无效的。",
+ "translate-import-err-no-such-file": "文件<nowiki>$1</nowiki>不存在或未被本地上传。",
+ "translate-import-err-stale-group": "该文件属于的信息组不存在。",
+ "translate-import-err-no-headers": "文件不是翻译扩展程序所需格式的Gettext文件:无法从文件头确定信息组和语言。",
+ "translate-import-err-warnings": "该文件格式不正确。请确保你的编辑器不会删除msgctxt字段。详细信息:$1",
+ "translate-js-summary": "摘要:",
+ "translate-js-save": "保存",
+ "translate-js-next": "保存并打开下一条",
+ "translate-js-nonext": "这是本页的最后信息。",
+ "translate-js-skip": "跳至下一条",
+ "translate-js-save-failed": "保存失败。请报告该错误。",
+ "translate-js-history": "翻译历史",
+ "translate-js-support": "提问",
+ "translate-js-support-title": "如果没有足够的资料帮助正确翻译该信息,请要求帮助。",
+ "translate-js-support-unsaved-warning": "你有未保存的翻译。",
+ "translate-gs-pos": "位置",
+ "translate-gs-code": "代码",
+ "translate-gs-continent": "洲",
+ "translate-gs-speakers": "使用者数",
+ "translate-gs-score": "得分",
+ "translate-gs-multiple": "多洲",
+ "translate-gs-count": "计数",
+ "translate-gs-total": "总计",
+ "translate-gs-avgscore": "平均得分",
+ "translate-documentation-language": "信息说明文件",
+ "translate-searchprofile": "翻译",
+ "translate-searchprofile-tooltip": "搜索所有译文",
+ "translate-search-languagefilter": "按语言过滤:",
+ "translate-search-nofilter": "无过滤",
+ "translate-messagereview-submit": "标记为已复核",
+ "translate-messagereview-progress": "正在标记为已复核...",
+ "translate-messagereview-failure": "标记为已复核失败:$1",
+ "translate-messagereview-done": "已复核",
+ "translate-messagereview-reviews": "已被{{PLURAL:$1|$1个用户}}复核",
+ "translate-messagereview-reviewswithyou": "已被{{PLURAL:$1|你|$1个用户(包括你)}}复核",
+ "api-error-invalidrevision": "翻译未找到",
+ "api-error-unknownmessage": "信息未找到",
+ "api-error-fuzzymessage": "翻译被标记为模糊翻译",
+ "api-error-owntranslation": "你不能标记自己的翻译为已复核",
+ "translate-messagereview-no-fuzzy": "模糊翻译不能标记为已复核。",
+ "translate-messagereview-no-own": "你不能标记自己的翻译为已复核。",
+ "translate-messagereview-doit": "标记该翻译为已复核。",
+ "group-translate-proofr.css": "/* 放置在这里的CSS仅会影响翻译复核者 */",
+ "group-translate-proofr.js": "/* 放置在这里的JS仅会影响翻译复核者 */",
+ "log-name-translationreview": "翻译复核日志",
+ "log-description-translationreview": "所有对翻译和信息组的复核的日志。",
+ "logentry-translationreview-message": "$1{{GENDER:$2|复核}}翻译$3",
+ "logentry-translationreview-group": "$1{{GENDER:$2|更改}}$3的$4翻译的状态自$6至$7",
+ "group-translate-sandboxed": "未经批准的译者",
+ "group-translate-sandboxed-member": "{{GENDER:$1|未经批准的译者}}",
+ "right-translate-sandboxmanage": "管理沙盒用户",
+ "action-translate-sandboxmanage": "管理沙盒用户",
+ "right-translate-sandboxaction": "为沙盒化用户执行操作白名单",
+ "action-translate-sandboxaction": "为沙盒化用户执行操作白名单",
+ "translate-workflow-state-": "(未设置)",
+ "translate-workflowstatus": "状态:$1",
+ "translate-workflow-set-do": "设置",
+ "translate-workflow-set-doing": "正在设置...",
+ "translate-workflow-set-done": "已设置!",
+ "translate-workflow-set-error-alreadyset": "请求状态与当前状态相同。",
+ "translate-workflow-autocreated-summary": "自动创建工作流状态$1的页面",
+ "translate-stats-workflow": "状态",
+ "translate-workflowgroup-label": "工作流状态",
+ "translate-workflowgroup-desc": "本信息组显示翻译工作流状态。该状态以$wgTranslateWorkflowStates配置变量定义。",
+ "translate-dynagroup-recent-label": "最近翻译",
+ "translate-dynagroup-recent-desc": "本信息组显示该语言的所有最近翻译。对复核任务很实用。",
+ "translate-dynagroup-additions-label": "最近添加",
+ "translate-dynagroup-additions-desc": "此信息组显示新出现和已变更的信息。",
+ "translate-dynagroup-by": "由{{GENDER:$1|$1}}做出的翻译",
+ "translate-dynagroup-byc": "由{{GENDER:$1|$1}}做出的翻译($2)",
+ "translate-dynagroup-last": "{{GENDER:$1|$1}}的最后更改",
+ "translate-dynagroup-lastc": "{{GENDER:$1|$1}}的最后更改($2)",
+ "translate-gethelp": "帮助",
+ "translate-msggroupselector-projects": "信息组",
+ "translate-msggroupselector-search-placeholder": "搜索信息组",
+ "translate-msggroupselector-search-all": "所有",
+ "translate-msggroupselector-search-recent": "最近",
+ "translate-msggroupselector-view-subprojects": "$1个子信息组",
+ "tux-languageselector": "翻译为",
+ "tux-tab-all": "所有",
+ "tux-tab-untranslated": "未翻译",
+ "tux-tab-outdated": "已过时",
+ "tux-tab-translated": "已翻译",
+ "tux-tab-unproofread": "未复核",
+ "tux-edit": "编辑",
+ "tux-status-optional": "可选",
+ "tux-status-fuzzy": "已过时",
+ "tux-status-proofread": "已复核",
+ "tux-status-translated": "已翻译",
+ "tux-status-saving": "正在保存...",
+ "tux-status-unsaved": "未保存",
+ "tux-editor-placeholder": "您的翻译",
+ "tux-editor-paste-original-button-label": "粘贴源文本",
+ "tux-editor-discard-changes-button-label": "放弃更改",
+ "tux-editor-save-button-label": "保存翻译",
+ "tux-editor-skip-button-label": "跳至下一条",
+ "tux-editor-cancel-button-label": "取消",
+ "tux-editor-confirm-button-label": "确认翻译",
+ "tux-editor-shortcut-info": "点击“$1”保存或“$2”跳至下一条信息或“$3”对于其他快捷方式。",
+ "tux-editor-edit-desc": "编辑说明文件",
+ "tux-editor-add-desc": "添加说明文件",
+ "tux-editor-suggestions-title": "建议",
+ "tux-editor-in-other-languages": "其他语言",
+ "tux-editor-need-more-help": "需要更多帮助?",
+ "tux-editor-ask-help": "要求更多信息",
+ "tux-editor-tm-match": "$1%匹配",
+ "tux-warnings-more": "还有$1个",
+ "tux-warnings-hide": "隐藏",
+ "tux-editor-save-failed": "保存翻译失败:$1",
+ "tux-editor-n-uses": "已使用$1次",
+ "tux-editor-message-desc-more": "查看更多",
+ "tux-editor-message-desc-less": "查看更少",
+ "tux-editor-clear-translated": "隐藏已翻译",
+ "tux-editor-proofreading-mode": "复核",
+ "tux-editor-translate-mode": "列表",
+ "tux-editor-proofreading-hide-own-translations": "隐藏你的翻译",
+ "tux-editor-proofreading-show-own-translations": "显示你的翻译",
+ "tux-proofread-action-tooltip": "标记为已复核",
+ "tux-proofread-edit-label": "编辑",
+ "tux-editor-page-mode": "页面",
+ "tux-editor-outdated-warning": "该翻译可能需要更新。",
+ "tux-editor-outdated-warning-diff-link": "显示差异",
+ "tux-editor-doc-editor-placeholder": "信息说明文件",
+ "tux-editor-doc-editor-save": "保存说明文件",
+ "tux-editor-doc-editor-cancel": "取消",
+ "tux-messagetable-more-messages": "还有$1条消息",
+ "tux-messagetable-loading-messages": "正在载入$1条消息…",
+ "tux-message-filter-placeholder": "过滤列表",
+ "tux-message-filter-result": "找到“$2”的$1个结果",
+ "tux-message-filter-advanced-button": "高级搜索",
+ "tux-message-filter-optional-messages-label": "可选信息",
+ "tux-proofread-translated-by-self": "你的翻译",
+ "tux-empty-list-all": "本信息组为空",
+ "tux-empty-list-all-guide": "请选择其他信息组翻译",
+ "tux-translate-page-no-such-group": "<strong>指定的信息组不存在。</strong>请选择其他信息组。",
+ "tux-empty-list-translated": "没有已翻译信息",
+ "tux-empty-list-translated-guide": "你可以帮助翻译",
+ "tux-empty-list-translated-action": "翻译",
+ "tux-empty-no-messages-to-display": "没有要显示的信息。",
+ "tux-empty-there-are-optional": "有可选择信息未显示在列表中",
+ "tux-empty-show-optional-messages": "显示可选信息",
+ "tux-empty-no-outdated-messages": "没有已过时信息",
+ "tux-empty-nothing-to-proofread": "没有要校对的内容",
+ "tux-empty-you-can-help-providing": "您可以帮助提供新翻译",
+ "tux-empty-nothing-new-to-proofread": "没有要校对的新内容",
+ "tux-empty-you-can-review-already-proofread": "您可以校对已被他人校对过的翻译。",
+ "tux-empty-list-other": "没有要翻译的内容",
+ "tux-empty-list-other-guide": "你可以帮助复核已有译文",
+ "tux-empty-list-other-action": "复核译文",
+ "tux-empty-list-other-link": "显示所有信息",
+ "tux-editor-close-tooltip": "关闭",
+ "tux-editor-expand-tooltip": "展开",
+ "tux-editor-collapse-tooltip": "折叠",
+ "tux-editor-message-tools-history": "历史",
+ "tux-editor-message-tools-delete": "删除",
+ "tux-editor-message-tools-translations": "所有翻译",
+ "tux-editor-loading": "正在载入...",
+ "translate-search-more-languages-info": "还有$1种{{PLURAL:$1|语言}}",
+ "translate-statsbar-tooltip": "$1%已翻译,$2%已复核",
+ "translate-statsbar-tooltip-with-fuzzy": "$1%已翻译,$2%已复核,$3%已过时",
+ "translate-search-more-groups-info": "还有$1个{{PLURAL:$1|信息组}}",
+ "translate-ulsdep-title": "配置错误",
+ "translate-ulsdep-body": "翻译拓展依赖[https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:UniversalLanguageSelector 通用语言选择器拓展]。",
+ "tux-session-expired": "您不再保持登录状态。请在单独的选项卡登录,或者制作未保存翻译的副本、登录并返回此页面。"
+}
diff --git a/MLEB/Translate/i18n/core/zh-hant.json b/MLEB/Translate/i18n/core/zh-hant.json
new file mode 100644
index 00000000..d068c72c
--- /dev/null
+++ b/MLEB/Translate/i18n/core/zh-hant.json
@@ -0,0 +1,398 @@
+{
+ "@metadata": {
+ "authors": [
+ "Alexsh",
+ "Anakmalaysia",
+ "Bencmq",
+ "Cwlin0416",
+ "Gzdavidwong",
+ "Justincheng12345",
+ "Liangent",
+ "Mark85296341",
+ "Oapbtommy",
+ "Reedy",
+ "Shirayuki",
+ "Simon Shek",
+ "Waihorace",
+ "Wrightbus",
+ "Liuxinyu970226",
+ "LNDDYL"
+ ]
+ },
+ "translate": "翻譯",
+ "translate-desc": "用來翻譯 MediaWiki 以及其他專案訊息的 [[Special:Translate|特殊頁面]]",
+ "translate-taskui-view": "顯示所有訊息",
+ "translate-taskui-untranslated": "顯示未翻譯的訊息",
+ "translate-taskui-optional": "顯示可選填訊息",
+ "translate-taskui-acceptqueue": "只顯示我可以複查的訊息",
+ "translate-taskui-reviewall": "複查所有翻譯",
+ "translate-taskui-export-to-file": "以原始格式匯出",
+ "translate-taskui-export-as-po": "匯出做離線翻譯",
+ "translate-taction-translate": "翻譯",
+ "translate-taction-proofread": "複查",
+ "translate-taction-lstats": "語言統計",
+ "translate-taction-mstats": "訊息群組統計",
+ "translate-taction-export": "匯出",
+ "translate-taction-disabled": "此 Wiki 已關閉此操作功能。",
+ "translate-page-no-such-language": "選擇的語言錯誤。",
+ "translate-page-no-such-group": "選擇的群組錯誤。",
+ "translate-page-disabled": "本群組中此語言的翻譯已停用。\n原因:\n\n<em>$1</em>",
+ "translate-language-disabled": "此語言的翻譯已停用。",
+ "translate-page-settings-legend": "設定",
+ "translate-page-group": "群組",
+ "translate-page-language": "語言",
+ "translate-page-limit": "每頁顯示",
+ "translate-page-limit-option": "每頁顯示 $1 筆訊息",
+ "translate-submit": "擷取",
+ "translate-page-navigation-legend": "導覽",
+ "translate-page-showing": "顯示第 $1 至 $2 筆訊息,共 $3 筆。",
+ "translate-page-showing-all": "顯示 $1 筆訊息。",
+ "translate-page-showing-none": "沒有任何訊息。",
+ "translate-next": "下一頁",
+ "translate-prev": "上一頁",
+ "translate-page-description-legend": "關於該群組的資訊",
+ "translate-page-description-hasoptional": "此訊息群組含有可選填訊息。\n可選填訊息只在您的語言有特殊需求時才需要翻譯 (例如:文中不使用空格或要轉寫成合適的名稱等)。$1",
+ "translate-page-description-hasoptional-open": "顯示可選填訊息。",
+ "translate-page-edit": "編輯",
+ "translate-ext-url": "<hr />網站:$1",
+ "translate-optional": "(選填)",
+ "translate-ignored": "(已略過)",
+ "translate-edit-title": "編輯 \"$1\"",
+ "translate-edit-definition": "訊息原文",
+ "translate-edit-translation": "翻譯",
+ "translate-edit-contribute": "貢獻",
+ "translate-edit-no-information": "<em>此訊息沒有任何說明資訊。\n如果您知道這個訊息使用的地方,您可以增加說明資訊以協助其他翻譯人員。</em>",
+ "translate-edit-information": "關於訊息的資訊 ($1)",
+ "translate-edit-in-other-languages": "訊息的其他語言",
+ "translate-edit-committed": "目前翻譯",
+ "translate-edit-warnings": "未完成翻譯的警告",
+ "translate-edit-tmsugs": "來自翻譯記憶庫與機器翻譯的建議",
+ "translate-edit-tmmatch-source": "翻譯原文:$1",
+ "translate-edit-tmmatch": "$1% 符合",
+ "translate-use-suggestion": "採納此建議取代目前的翻譯。",
+ "translate-edit-nopermission": "您需要翻譯權限以翻譯訊息。",
+ "translate-edit-askpermission": "取得權限",
+ "translate-magic-pagename": "進階 MediaWiki 翻譯",
+ "translate-magic-help": "您可以使用本特殊頁面翻譯特殊頁面別名、魔術字及命名空間名稱。\n\n特殊頁面別名與保留字可以有多個翻譯。\n不同翻譯間請以逗號(,)隔開,\n命名空間只能有一種翻譯。\n\n翻譯專案討論的命名空間時 <code>$1 talk</code> 可能較複雜,\n<code>$1 talk</code> 會取代為專案的網站名稱 (如:<code>{{ns:project_talk}}</code>),\n如果不更改網站名稱無法有效的用您語言表達,請在 [[Support]] 通知我們。\n\n您需要成為翻譯人員才能儲存變更。\n變更在您尚未點選儲存按鈕之前不會儲存。",
+ "translate-magic-module": "模組:",
+ "translate-magic-submit": "擷取",
+ "translate-magic-cm-export": "匯出",
+ "translate-magic-nothing-to-export": "目前沒有可匯出的內容",
+ "translate-magic-cm-to-be": "翻譯",
+ "translate-magic-cm-current": "目前",
+ "translate-magic-cm-original": "原文",
+ "translate-magic-cm-comment": "註解:",
+ "translate-magic-cm-save": "儲存",
+ "translate-magic-cm-updatedusing": "已使用 [[Special:AdvancedTranslate|{{int:Translate-magic-pagename}}]] 更新",
+ "translate-magic-cm-savefailed": "儲存失敗",
+ "translate-magic-special": "特殊頁面別名",
+ "translate-magic-words": "保留字",
+ "translate-magic-namespace": "命名空間名稱",
+ "translate-magic-notsaved": "您的編輯尚未儲存!",
+ "translate-magic-errors": "請修復翻譯訊息中下列{{PLURAL:$1|錯誤}}:",
+ "translate-magic-saved": "已經成功儲存你的更動。",
+ "translate-checks-parameters": "未使用以下 $2 個參數:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-parameters-unknown": "未定義以下 $2 個參數:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-balance": "不完整的{{PLURAL:$2|括號|括號}}:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links": "以下 $2 個連結有問題:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-links-missing": "缺少以下 $2 個連結:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-xhtml": "請替換以下{{PLURAL:$2|標籤}}成正確的:\n<strong><nowiki>$1</nowiki></strong>",
+ "translate-checks-plural": "原文使用的 <nowiki>{{PLURAL:}}</nowiki> 並未被用於翻譯。",
+ "translate-checks-plural-forms": "共有 {{PLURAL:$2|1 種|$2 種}} 表達形式,但 <nowiki>{{PLURAL:}}</nowiki> 只使用了 {{PLURAL:$1|1 種|$1 種}} (不含 0= 和 1= 的形式)。",
+ "translate-checks-plural-dupe": "<nowiki>{{PLURAL:}}</nowiki>在中有重複的表達形式,<nowiki>{{PLURAL:$1|sheep|sheep}}</nowiki> 應寫成 <nowiki>{{PLURAL:$1|sheep}}</nowiki>。",
+ "translate-checks-pagename": "命名空間與原文不符",
+ "translate-checks-format": "此翻譯未依照原文或有語法錯誤:$1",
+ "translate-checks-escape": "下列跳脫字元可能會導致錯誤:<strong>$1</strong>",
+ "translate-checks-parametersnotequal": "共有 {{PLURAL:$1|$1}} 個參數,應有{{PLURAL:$2|$2}} 個。",
+ "translate-checks-malformed": "<nowiki>$1</nowiki> 格式不正確。",
+ "translate-checks-fudforum-syntax": "在此專案中使用 <nowiki>$1</nowiki> 替代 <nowiki>$2</nowiki>。",
+ "translate-pref-nonewsletter": "不要傳送電子報給我",
+ "translate-pref-editassistlang": "輔助語言:",
+ "prefs-translate": "翻譯選項",
+ "translate-pref-editassistlang-help": "以逗號分隔語言代碼。\n當您翻譯的時,會隨著顯示這些語言的訊息。\n預設會使用您的語言。",
+ "translate-pref-editassistlang-bad": "清單中的語言代碼無效:\n<nowiki>$1</nowiki>。",
+ "right-translate": "使用翻譯介面編輯",
+ "right-translate-manage": "管理訊息群組",
+ "action-translate-manage": "管理訊息群組",
+ "right-translate-import": "匯入離線翻譯",
+ "action-translate-import": "匯入離線翻譯",
+ "right-translate-messagereview": "複查翻譯",
+ "right-translate-groupreview": "更改訊息群組的工作流程狀態",
+ "translate-rc-translation-filter": "搜尋翻譯:",
+ "translate-rc-translation-filter-no": "無",
+ "translate-rc-translation-filter-only": "只顯示翻譯",
+ "translate-rc-translation-filter-filter": "不顯示翻譯",
+ "translate-rc-translation-filter-site": "只顯示有更動的網站訊息",
+ "translationstats": "翻譯統計",
+ "translate-stats-edits": "編輯",
+ "translate-stats-users": "翻譯人員",
+ "translate-stats-registrations": "註冊",
+ "translate-stats-reviews": "複審",
+ "translate-stats-reviewers": "複審員",
+ "translate-statsf-intro": "您可以填寫此表格,以產生簡單的統計資料。\n所有值都有上限和下限。",
+ "translate-statsf-options": "圖表選項",
+ "translate-statsf-width": "寬度 (像素):",
+ "translate-statsf-height": "高度 (像素):",
+ "translate-statsf-days": "期間 (天):",
+ "translate-statsf-start": "開始日期:",
+ "translate-statsf-scale": "間隔頻率:",
+ "translate-statsf-scale-months": "月",
+ "translate-statsf-scale-weeks": "周",
+ "translate-statsf-scale-days": "日",
+ "translate-statsf-scale-hours": "小時",
+ "translate-statsf-count": "測量單位:",
+ "translate-statsf-count-edits": "編輯次數",
+ "translate-statsf-count-users": "活躍的翻譯人員人數",
+ "translate-statsf-count-registrations": "新使用者人數",
+ "translate-statsf-count-reviews": "翻譯複審次數",
+ "translate-statsf-count-reviewers": "複審員人數",
+ "translate-statsf-language": "語言代碼 (以逗號分隔):",
+ "translate-statsf-group": "群組代碼 (以逗號分隔):",
+ "translate-statsf-submit": "預覽",
+ "translate-tag-category": "可翻譯的頁面",
+ "translate-tag-page-desc": "Wiki 頁面 [[$2|$1]] 來自$3 ($4) 的翻譯。",
+ "translate-sidebar-alltrans": "其他翻譯",
+ "translations": "所有翻譯",
+ "translations-summary": "在下方輸入訊息名稱以顯示所有可用的翻譯。",
+ "translate-translations-no-message": "\"$1\" 不是可翻譯的訊息",
+ "translate-translations-none": "沒有 \"$1\" 的翻譯",
+ "translate-translations-count": "找到 {{PLURAL:$1|1 筆翻譯|$1 筆翻譯}}。",
+ "translate-translations-fieldset-title": "訊息",
+ "translate-translations-messagename": "訊息名稱:",
+ "translate-translations-project": "專案:",
+ "translate-translations-including-no-param": "請在子頁面參數指定一個有效的訊息關鍵字",
+ "translate-translations-history-short": "記錄",
+ "languagestats": "語言統計",
+ "languagestats-summary": "此頁面顯示了所有訊息群組語言翻譯的統計資訊。",
+ "messagegroupstats-summary": "此頁顯示訊息組統計。",
+ "languagestats-stats-for": "$1 ($2) 的翻譯統計。",
+ "languagestats-recenttranslations": "最近的翻譯",
+ "translate-langstats-incomplete": "此頁面的某些統計資訊未完整讀取,請重新整理以取得更多統計資訊。",
+ "translate-langstats-expand": "展開",
+ "translate-langstats-collapse": "摺疊",
+ "translate-langstats-expandall": "全部展開",
+ "translate-langstats-collapseall": "全部摺疊",
+ "translate-language-code": "語言代碼",
+ "translate-language-code-field-name": "語言代碼:",
+ "translate-suppress-complete": "隱藏全部已翻譯的訊息群組",
+ "translate-ls-noempty": "隱藏全部未翻譯的訊息群組",
+ "translate-language": "語言",
+ "translate-total": "訊息",
+ "translate-untranslated": "未翻譯",
+ "translate-percentage-complete": "完成度",
+ "translate-percentage-fuzzy": "已過時",
+ "translate-languagestats-overall": "所有訊息群組合計",
+ "translate-ls-submit": "顯示統計",
+ "translate-ls-column-group": "訊息群組",
+ "translate-mgs-pagename": "訊息群組統計",
+ "translate-mgs-fieldset": "顯示偏好設定",
+ "translate-mgs-group": "訊息群組:",
+ "translate-mgs-nocomplete": "不顯示全部已翻譯的語言",
+ "translate-mgs-noempty": "不顯示全部未翻譯的語言",
+ "translate-mgs-submit": "顯示統計",
+ "translate-mgs-column-language": "語言",
+ "translate-mgs-totals": "所有語言合計",
+ "translate-mgs-invalid-group": "指定的群組 $1 不存在。",
+ "translate-mgs-nothing": "目前的請求沒有任可顯示的統計資訊。",
+ "supportedlanguages": "支援的語言",
+ "supportedlanguages-summary": "本頁顯示 {{SITENAME}} 所有支援的語言清單,\n連同翻譯該語言的翻譯人員姓名,\n翻譯人員的姓名越大,代表翻譯人員的編輯貢獻越多,\n底線的顏色用來表示翻譯人員最近活動的狀況。",
+ "supportedlanguages-colorlegend": "色彩圖例:最近一次翻譯於 $1 天前。",
+ "supportedlanguages-translators": "{{PLURAL:$2|{{GENDER:$3|翻譯人員}}}}:$1",
+ "supportedlanguages-recenttranslations": "最近的翻譯",
+ "supportedlanguages-count": "總共有 $1 語言",
+ "supportedlanguages-activity": "$1:$2 次編輯 - 最近一次編輯於 $3 天前",
+ "translate-save": "儲存 ($1)",
+ "translate-jssti-add": "新增至清單",
+ "managemessagegroups": "訊息群組管理",
+ "translate-smg-notallowed": "你不允許執行此操作。",
+ "translate-smg-nochanges": "沒有需要處理的更動。",
+ "translate-smg-submit": "送出要處理更動",
+ "translate-smg-submitted": "訊息原文已更新,正在背景執行變更處理。",
+ "translate-smg-more": "送出這些更動後,會有更多更動要處理。",
+ "translate-smg-left": "Wiki 中訊息內容",
+ "translate-smg-right": "發生的更動",
+ "translate-manage-import-diff": "訊息 $1 | 操作:$2",
+ "translate-manage-import-new": "新訊息 $1",
+ "translate-manage-import-deleted": "已刪除訊息 $1",
+ "translate-manage-action-import": "匯入",
+ "translate-manage-action-conflict": "匯入並且模糊翻譯",
+ "translate-manage-action-ignore": "忽略",
+ "translate-manage-action-fuzzy": "匯入並且模糊翻譯",
+ "translate-manage-nochanges": "此群組中的訊息原文並未做任何更改。",
+ "translate-manage-nochanges-other": "此語言並未做任何更改。\n使用下方連結返回群組的詳細訊息檢視頁面。",
+ "translate-manage-inconsistent": "偵測不一致的請求。\n請檢查更動內容,然後再試。\n詳細資訊:$1。",
+ "translate-manage-toolong": "超出處理時間限制 $1 秒。\n請重新送出表單,以繼續進行處理。",
+ "translate-manage-import-summary": "正在從外部來源匯入新版",
+ "translate-manage-conflict-summary": "正在從外部來源匯入新版。\n請檢查。",
+ "translate-manage-fuzzy-summary": "訊息原文已更改",
+ "translate-manage-submit": "執行",
+ "translate-manage-intro-other": "下列是在 $1 語言的翻譯變更清單。\n請檢查變更,並選擇每一個變更所要執行的動作。\n若您不想變更,您可以選擇忽略。",
+ "translate-manage-import-ok": "已匯入:$1",
+ "translate-manage-import-done": "匯入完成!",
+ "importtranslations": "匯入翻譯",
+ "translate-import-from-local": "上傳本地檔案:",
+ "translate-import-load": "讀取檔案",
+ "translate-import-err-dl-failed": "無法擷取檔案:\n$1",
+ "translate-import-err-ul-failed": "檔案上傳不成功",
+ "translate-import-err-invalid-title": "無效的檔案名稱 <nowiki>$1</nowiki>。",
+ "translate-import-err-no-such-file": "檔案 <nowiki>$1</nowiki> 不存在或尚未上傳。",
+ "translate-import-err-stale-group": "此檔案所屬的訊息群組不存在。",
+ "translate-import-err-no-headers": "此檔案的 Gettext 翻譯擴充格式並不完整,\n無法從檔頭偵測訊息群組及語言。",
+ "translate-import-err-warnings": "此檔案格式不完整。\n請確認您的編輯器不會移除 msgctxt 的欄位。\n詳細資訊:$1",
+ "translate-js-summary": "摘要:",
+ "translate-js-save": "儲存",
+ "translate-js-next": "儲存並開啟下一筆",
+ "translate-js-nonext": "這是本頁的最後一個訊息。",
+ "translate-js-skip": "跳至下一筆",
+ "translate-js-save-failed": "儲存失敗,請報告此錯誤。",
+ "translate-js-history": "翻譯歷史記錄",
+ "translate-js-support": "提出問題",
+ "translate-js-support-title": "若此處沒有足夠的資訊讓您可以正確的翻譯此訊息,請提出問題。",
+ "translate-js-support-unsaved-warning": "您有尚未儲存的翻譯。",
+ "translate-gs-pos": "位置",
+ "translate-gs-code": "代碼",
+ "translate-gs-continent": "洲別",
+ "translate-gs-speakers": "語言人數",
+ "translate-gs-score": "分數",
+ "translate-gs-multiple": "多種語言",
+ "translate-gs-count": "數量",
+ "translate-gs-total": "總計",
+ "translate-gs-avgscore": "平均分數",
+ "translate-documentation-language": "訊息說明文件",
+ "translate-searchprofile": "翻譯",
+ "translate-searchprofile-tooltip": "搜尋所有翻譯",
+ "translate-search-languagefilter": "依語言搜尋:",
+ "translate-search-nofilter": "無",
+ "translate-messagereview-submit": "標記為已複查",
+ "translate-messagereview-progress": "正在標記為已複查.....",
+ "translate-messagereview-failure": "標記為已複查失敗:$1",
+ "translate-messagereview-done": "已複查",
+ "translate-messagereview-reviews": "已被 {{PLURAL:$1|1 個使用者|$1 個使用者}}複查",
+ "translate-messagereview-reviewswithyou": "已被{{PLURAL:$1|您複查| $1 個使用者 (包括您) 複查}}",
+ "api-error-invalidrevision": "找不到翻譯",
+ "api-error-unknownmessage": "找不到訊息",
+ "api-error-fuzzymessage": "翻譯被標記為模糊翻譯",
+ "api-error-owntranslation": "您不能標記自己的翻譯為已複查",
+ "translate-messagereview-no-fuzzy": "不能複查模糊翻譯。",
+ "translate-messagereview-no-own": "您不能標記自己的翻譯為已複查",
+ "translate-messagereview-doit": "標記這個翻譯為已複查。",
+ "log-name-translationreview": "翻譯複查日誌",
+ "log-description-translationreview": "所有翻譯和訊息群組的複查日誌。",
+ "logentry-translationreview-message": "$1 {{GENDER:$2|已複查}}翻譯 $3",
+ "logentry-translationreview-group": "$1 {{GENDER:$2|修改}} $3 的 $4 翻譯狀態由 $6 更改為 $7",
+ "group-translate-sandboxed": "未核准的翻譯人員",
+ "group-translate-sandboxed-member": "{{GENDER:$1|未核准的翻譯人員}}",
+ "right-translate-sandboxmanage": "管理沙盒使用者",
+ "action-translate-sandboxmanage": "管理沙盒使用者",
+ "right-translate-sandboxaction": "將沙盒使用者列入白名單",
+ "action-translate-sandboxaction": "將沙盒使用者列入白名單",
+ "translate-workflow-state-": "(未設定)",
+ "translate-workflowstatus": "狀態:$1",
+ "translate-workflow-set-do": "設定",
+ "translate-workflow-set-doing": "正在設定...",
+ "translate-workflow-set-done": "已設定!",
+ "translate-workflow-set-error-alreadyset": "請求的狀態與目前狀態相同。",
+ "translate-workflow-autocreated-summary": "自動建立工作流程狀態 $1 的頁面",
+ "translate-stats-workflow": "狀態",
+ "translate-workflowgroup-label": "工作流程狀態",
+ "translate-workflowgroup-desc": "此訊息群組顯示了翻譯的工作流程狀態。\n所有狀態定義在設定檔中的 $wgTranslateWorkflowStates 參數。",
+ "translate-dynagroup-recent-label": "最近翻譯",
+ "translate-dynagroup-recent-desc": "此訊息群組顯示了最近該語言的所有翻譯。\n這對複查工作很有幫助。",
+ "translate-dynagroup-additions-label": "最近新增",
+ "translate-dynagroup-additions-desc": "此訊息群組顯示新的與被更改的訊息。",
+ "translate-dynagroup-by": "由 {{GENDER:$1|$1}} 所翻譯",
+ "translate-dynagroup-byc": "由 {{GENDER:$1|$1}} 所翻譯 ($2)",
+ "translate-dynagroup-last": "最近由 {{GENDER:$1|$1}} 所更改",
+ "translate-dynagroup-lastc": "最近由 {{GENDER:$1|$1}} 所更改 ($2)",
+ "translate-gethelp": "說明",
+ "translate-msggroupselector-projects": "訊息群組",
+ "translate-msggroupselector-search-placeholder": "搜尋群組",
+ "translate-msggroupselector-search-all": "所有",
+ "translate-msggroupselector-search-recent": "最近",
+ "translate-msggroupselector-view-subprojects": "$1 個{{PLURAL:$1|小組|小組}}",
+ "tux-languageselector": "翻譯成",
+ "tux-tab-all": "所有",
+ "tux-tab-untranslated": "未翻譯",
+ "tux-tab-outdated": "已過時",
+ "tux-tab-translated": "已翻譯",
+ "tux-tab-unproofread": "未複查",
+ "tux-edit": "編輯",
+ "tux-status-optional": "可選填",
+ "tux-status-fuzzy": "已過時",
+ "tux-status-proofread": "已複查",
+ "tux-status-translated": "已翻譯",
+ "tux-status-saving": "儲存中...",
+ "tux-status-unsaved": "未儲存",
+ "tux-editor-placeholder": "您的翻譯",
+ "tux-editor-paste-original-button-label": "貼上原文",
+ "tux-editor-discard-changes-button-label": "取消修改",
+ "tux-editor-save-button-label": "儲存翻譯",
+ "tux-editor-skip-button-label": "跳至下一筆",
+ "tux-editor-cancel-button-label": "取消",
+ "tux-editor-confirm-button-label": "確認翻譯",
+ "tux-editor-shortcut-info": "使用 \"$1\" 儲存,或 \"$2\" 跳至下一筆息或 \"$3\" 使用其他捷徑。",
+ "tux-editor-edit-desc": "編輯說明",
+ "tux-editor-add-desc": "新增說明",
+ "tux-editor-suggestions-title": "建議",
+ "tux-editor-in-other-languages": "其他語言",
+ "tux-editor-need-more-help": "需要更多幫助嗎?",
+ "tux-editor-ask-help": "詢問更多資訊",
+ "tux-editor-tm-match": "$1% 符合",
+ "tux-warnings-more": "{{PLURAL:$1|還有 $1 個}}",
+ "tux-warnings-hide": "隱藏",
+ "tux-editor-save-failed": "儲存翻譯失敗:$1",
+ "tux-editor-n-uses": "使用過 $1 次",
+ "tux-editor-message-desc-more": "檢視更多",
+ "tux-editor-message-desc-less": "檢視更少",
+ "tux-editor-clear-translated": "隱藏已翻譯",
+ "tux-editor-proofreading-mode": "複查",
+ "tux-editor-translate-mode": "清單",
+ "tux-editor-proofreading-hide-own-translations": "隱藏您的翻譯",
+ "tux-editor-proofreading-show-own-translations": "顯示您的翻譯",
+ "tux-proofread-action-tooltip": "標記為已複查",
+ "tux-proofread-edit-label": "編輯",
+ "tux-editor-page-mode": "頁面",
+ "tux-editor-outdated-warning": "此翻譯可能要更新。",
+ "tux-editor-outdated-warning-diff-link": "顯示差異",
+ "tux-editor-doc-editor-placeholder": "訊息說明文件",
+ "tux-editor-doc-editor-save": "儲存說明",
+ "tux-editor-doc-editor-cancel": "取消",
+ "tux-messagetable-more-messages": "還有 $1 則訊息",
+ "tux-messagetable-loading-messages": "讀取{{PLURAL:$1|訊息|訊息}}中...",
+ "tux-message-filter-placeholder": "搜尋清單",
+ "tux-message-filter-result": "找到 $1 筆包含 \"$2\" 的結果",
+ "tux-message-filter-advanced-button": "進階搜尋",
+ "tux-message-filter-optional-messages-label": "可選填訊息",
+ "tux-proofread-translated-by-self": "您的翻譯",
+ "tux-empty-list-all": "此訊息群組無訊息",
+ "tux-empty-list-all-guide": "選擇其他的訊息群組翻譯",
+ "tux-translate-page-no-such-group": "<strong>指定的群組並不存在。</strong>選擇其他訊息群組。",
+ "tux-empty-list-translated": "沒有已翻譯的訊息",
+ "tux-empty-list-translated-guide": "您可以協助翻譯",
+ "tux-empty-list-translated-action": "翻譯",
+ "tux-empty-no-messages-to-display": "沒有要顯示的訊息。",
+ "tux-empty-there-are-optional": "列表中還有未顯示的可選填訊息",
+ "tux-empty-show-optional-messages": "顯示選填訊息",
+ "tux-empty-no-outdated-messages": "無過時的訊息",
+ "tux-empty-nothing-to-proofread": "無需要複查的訊息",
+ "tux-empty-you-can-help-providing": "您可以協助提供新翻譯",
+ "tux-empty-nothing-new-to-proofread": "沒有新訊息要複查",
+ "tux-empty-you-can-review-already-proofread": "您可以複查已複查的翻譯。",
+ "tux-empty-list-other": "目前沒有可翻譯的內容",
+ "tux-empty-list-other-guide": "您可以協助複查目前已經有的翻譯",
+ "tux-empty-list-other-action": "複查翻譯",
+ "tux-empty-list-other-link": "顯示所有訊息",
+ "tux-editor-close-tooltip": "關閉",
+ "tux-editor-expand-tooltip": "展開",
+ "tux-editor-collapse-tooltip": "摺疊",
+ "tux-editor-message-tools-history": "歷史記錄",
+ "tux-editor-message-tools-delete": "刪除",
+ "tux-editor-message-tools-translations": "所有翻譯",
+ "tux-editor-loading": "正在讀取...",
+ "translate-search-more-languages-info": "還有 $1 種{{PLURAL:$1|語言|語言}}",
+ "translate-statsbar-tooltip": "$1% 已翻譯,$2% 已複查",
+ "translate-statsbar-tooltip-with-fuzzy": "$1% 已翻譯,$2% 已複查,$3% 已過時",
+ "translate-search-more-groups-info": "還有 $1 個{{PLURAL:$1|群組|群組}}",
+ "translate-ulsdep-title": "設定錯誤",
+ "translate-ulsdep-body": "翻譯擴充套件需要相依 [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:UniversalLanguageSelector 通用語言選擇器擴充套件]。"
+}
diff --git a/MLEB/Translate/i18n/groupdescriptions/af.json b/MLEB/Translate/i18n/groupdescriptions/af.json
new file mode 100644
index 00000000..431c03e1
--- /dev/null
+++ b/MLEB/Translate/i18n/groupdescriptions/af.json
@@ -0,0 +1,24 @@
+{
+ "@metadata": {
+ "authors": [
+ "Naudefj",
+ "Lokal Profil"
+ ]
+ },
+ "bw-desc-freecol": "Lees asseblief [[Translating:FreeCol]] alvorens u begin vertaal.\nFreeCol maak van die GPL-lisensie gebruik.",
+ "bw-desc-fudforum": "[http://fudforum.org/ FUDforum], 'n webforum wat in PHP geskryf is.",
+ "bw-desc-mantisbt": "[[Translating:MantisBT|MantisBT]] is 'n gratis web-gebaseerde foutnaspoor-stelsel. Rapporteer asseblief enige probleme op [[Support|Ondersteuning]].",
+ "bw-desc-osm-site": "Hierdie boodskapgroep bevat die koppelvlakboodskappe vir [[Translating:Open Street Map|Open Street Map]]",
+ "bw-desc-wikiblame": "[http://wikipedia.ramselehof.de/wikiblame.php Wikiblame] is in staat om vinnig die outeurs van 'n bladsy in 'n Wikimedia-wiki te vind.",
+ "translate-group-desc-collection": "Meta-boodskapgroep wat alle boodskappe vir die MediaWiki-uitbreiding [https://www.mediawiki.org/wiki/Extension:Collection Collection] bevat",
+ "translate-group-desc-flaggedrevs": "Meta-boodskapgroep wat alle boodskappe vir die MediaWiki-uitbreiding [https://www.mediawiki.org/wiki/Extension:FlaggedRevs FlaggedRevs] bevat",
+ "translate-group-desc-mediawikicore": "Hierdie boodskapgroep bevat die boodskappe wat in die huidige alfa-weergawe van MediaWiki gebruik word - {{CURRENTVERSION}}",
+ "translate-group-desc-mediawikiextensions": "Meta-boodskapgroep wat alle boodskappe vir ondersteunde MediaWiki-uitbreidings bevat",
+ "translate-group-desc-mediawikimostused": "Hierdie boodskapgroep bevat Mediawiki se [https://translatewiki.net/wiki/Most_often_used_messages_in_MediaWiki 500 mees gebruikte boodskappe]",
+ "translate-group-desc-nocc": "[http://nocc.sourceforge.net NOCC] is 'n e-pos webkliënt wat in PHP geskryf is. Meld asseblief enige probleme aan by [[Support|Ondersteuning]].",
+ "translate-group-desc-nodesc": "Geen beskrywing is vir hierdie boodskapgroep beskikbaar nie",
+ "translate-group-desc-readerfeedback": "Meta-boodskapgroep wat alle boodskappe vir die MediaWiki-uitbreiding [https://www.mediawiki.org/wiki/Extension:ReaderFeedback ReaderFeedback] bevat",
+ "translate-group-desc-translate": "Meta-boodskapgroep wat alle boodskappe vir die MediaWiki-uitbreiding [https://www.mediawiki.org/wiki/Extension:Translate Translate] bevat",
+ "translate-group-desc-wikiaextensions": "Meta-boodskapgroep wat alle boodskappe vir ondersteude MediaWiki-uitbreidings wat deur [http://www.wikia.com Wikia] gebruik word bevat",
+ "translate-group-desc-wikimediaextensions": "Meta-boodskapgroep wat alle boodskappe te ondersteuning van MediaWiki-uitbreidings wat deur die [https://wikimediafoundation.org/ Wikimedia Stigting] gebruik word bevat"
+}
diff --git a/MLEB/Translate/i18n/groupdescriptions/aln.json b/MLEB/Translate/i18n/groupdescriptions/aln.json
new file mode 100644
index 00000000..a9968c1e
--- /dev/null
+++ b/MLEB/Translate/i18n/groupdescriptions/aln.json
@@ -0,0 +1,9 @@
+{
+ "@metadata": {
+ "authors": [
+ "Mdupont"
+ ]
+ },
+ "translate-group-desc-nodesc": "Nuk ka përshkrim është në dispozicion për këtë grup mesazh",
+ "translate-group-desc-wikimediaextensions": "Grupi Meta mesazh që përmban të gjitha mesazhet e për të mbështetur zgjerimet MediaWiki përdorur nga https://wikimediafoundation.org/ [] Wikimedia Foundation"
+}
diff --git a/MLEB/Translate/i18n/groupdescriptions/ar.json b/MLEB/Translate/i18n/groupdescriptions/ar.json
new file mode 100644
index 00000000..baa76b55
--- /dev/null
+++ b/MLEB/Translate/i18n/groupdescriptions/ar.json
@@ -0,0 +1,21 @@
+{
+ "@metadata": {
+ "authors": [
+ "OsamaK",
+ "روخو"
+ ]
+ },
+ "bw-desc-fudforum": "[http://fudforum.org/ FUDforum] منتدى وب مكتوب بلغة PHP",
+ "translate-group-desc-collection": "مجموعة رسائل علوية تحتوي كل رسائل امتداد [https://www.mediawiki.org/wiki/Extension:Collection Collection] لميدياويكي",
+ "translate-group-desc-flaggedrevs": "مجموعة رسائل علوية تحتوي كل رسائل امتداد [https://www.mediawiki.org/wiki/Extension:FlaggedRevs FlaggedRevs] لميدياويكي",
+ "translate-group-desc-mediawiki-core-branch": "رسائل لنسخة المستقرة من [[Translating:MediaWiki|ميديا ويكي]]",
+ "translate-group-desc-mediawikicore": "تحتوي مجموعة الرسائل هذه على الرسائل المستخدمة في النسخة ألفا الحالية من ميدياويكي ({{CURRENTVERSION}})",
+ "translate-group-desc-mediawikiextensions": "مجموعة رسائل علوية تحتوي كل رسائل الامتدادات المدعومة لميدياويكي.",
+ "translate-group-desc-mediawikimostused": "تحتوي مجموعة الرسائل هذه على [https://translatewiki.net/wiki/Most_often_used_messages_in_MediaWiki الرسائل ال500 الأكثر استخدامًا] في ميدياويكي",
+ "translate-group-desc-nodesc": "لا وصف متوفر لمجموعة الرسائل هذه",
+ "translate-group-desc-readerfeedback": "مجموعة رسائل علوية تحتوي كل رسائل امتداد [https://www.mediawiki.org/wiki/Extension:ReaderFeedback ReaderFeedback] لميدياويكي",
+ "translate-group-desc-translatablepages": "جميع الصفحات التي يمكن ترجمتها",
+ "translate-group-desc-translate": "مجموعة رسائل علوية تحتوي كل رسائل امتداد [https://www.mediawiki.org/wiki/Extension:Translate Translate] لميدياويكي",
+ "translate-group-desc-wikiaextensions": "مجموعة رسائل علوية تحتوي كل رسائل امتدادات ميدياويكي المدعومة التي تستخدمها [http://www.wikia.com Wikia]",
+ "translate-group-desc-wikimediaextensions": "مجموعة رسائل علوية تحتوي كل رسائل امتدادات ميدياويكي المدعومة التي تستخدمها [https://wikimediafoundation.org/ مؤسسة ويكيميديا]"
+}
diff --git a/MLEB/Translate/i18n/groupdescriptions/arc.json b/MLEB/Translate/i18n/groupdescriptions/arc.json
new file mode 100644
index 00000000..237d4724
--- /dev/null
+++ b/MLEB/Translate/i18n/groupdescriptions/arc.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Basharh"
+ ]
+ },
+ "translate-group-desc-mediawikicore": "ܬܚܒܘܫ ܟܢܘܫܬܐ ܕܐܓܪ̈ܬܐ ܗܕܐ ܥܠ ܐܓܪ̈ܬܐ ܦܠܝܚܬ̈ܐ ܒܨܚܚܐ ܕܐܠܦܐ ܗܫܝܬܐ ܡܢ [[Translating:MediaWiki|ܡܝܕܝܐܘܝܩܝ ]] ({{CURRENTVERSION}})"
+}
diff --git a/MLEB/Translate/i18n/groupdescriptions/arz.json b/MLEB/Translate/i18n/groupdescriptions/arz.json
new file mode 100644
index 00000000..f6af5a32
--- /dev/null
+++ b/MLEB/Translate/i18n/groupdescriptions/arz.json
@@ -0,0 +1,16 @@
+{
+ "@metadata": {
+ "authors": [
+ "Meno25"
+ ]
+ },
+ "translate-group-desc-collection": "مجموعه رسائل علويه تحتوى كل رسائل امتداد [https://www.mediawiki.org/wiki/Extension:Collection Collection] لميدياويكي",
+ "translate-group-desc-flaggedrevs": "مجموعه رسائل علويه تحتوى كل رسائل امتداد [https://www.mediawiki.org/wiki/Extension:FlaggedRevs FlaggedRevs] لميدياويكي",
+ "translate-group-desc-mediawikicore": "تحتوى مجموعه الرسائل هذه على الرسائل المستخدمه فى النسخه ألفا الحاليه من ميدياويكى ({{CURRENTVERSION}})",
+ "translate-group-desc-mediawikiextensions": "مجموعه رسائل علويه تحتوى كل رسائل الامتدادات المدعومه لميدياويكى.",
+ "translate-group-desc-mediawikimostused": "تحتوى مجموعه الرسائل هذه على [https://translatewiki.net/wiki/Most_often_used_messages_in_MediaWiki الرسائل ال500 الأكثر استخدامًا] فى ميدياويكي",
+ "translate-group-desc-readerfeedback": "مجموعه رسائل علويه تحتوى كل رسائل امتداد [https://www.mediawiki.org/wiki/Extension:ReaderFeedback ReaderFeedback] لميدياويكي",
+ "translate-group-desc-translate": "مجموعه رسائل علويه تحتوى كل رسائل امتداد [https://www.mediawiki.org/wiki/Extension:Translate Translate] لميدياويكي",
+ "translate-group-desc-wikiaextensions": "مجموعه رسائل علويه تحتوى كل رسائل امتدادات ميدياويكى المدعومه التى تستخدمها [http://www.wikia.com Wikia]",
+ "translate-group-desc-wikimediaextensions": "مجموعه رسائل علويه تحتوى كل رسائل امتدادات ميدياويكى المدعومه التى تستخدمها [https://wikimediafoundation.org/ مؤسسه ويكيميديا]"
+}
diff --git a/MLEB/Translate/i18n/groupdescriptions/ast.json b/MLEB/Translate/i18n/groupdescriptions/ast.json
new file mode 100644
index 00000000..f760c0bd
--- /dev/null
+++ b/MLEB/Translate/i18n/groupdescriptions/ast.json
@@ -0,0 +1,59 @@
+{
+ "@metadata": {
+ "authors": [
+ "Xuacu"
+ ]
+ },
+ "bw-desc-freecol": "[[Translating:FreeCol|FreeCol]] ye un xuegu d'estratexa por turnos",
+ "bw-desc-fudforum": "[[Translating:FUDforum|FUDforum]] ye software pa un foru de discutiniu basáu na web",
+ "bw-desc-mantisbt": "[[Translating:MantisBT|MantisBT]] ye software web pa xestión d'errores",
+ "bw-desc-openstreetmap": "Tolos mensaxes relativos a [[Translating:OpenStreetMap|OpenStreetMap]]",
+ "bw-desc-osm-site": "[[Translating:OpenStreetMap|OpenStreetMap]] ye un mapa editable del mundu enteru",
+ "bw-desc-wikiblame": "[[Translating:WikiBlame|WikiBlame]] ye capaz d'alcontrar rápidamente los autores d'una parte d'una páxina nuna wiki de Wikimedia",
+ "translate-group-desc-blockly": "Un grupu de mensaxes pa [[Translating:Blockly|Blockly]]",
+ "translate-group-desc-bluespice": "Grupu de mensaxes Meta que contien tolos mensaxes pa les estensiones [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:BlueSpice Blue Spice] de MediaWiki",
+ "translate-group-desc-collection": "Grupu de mensaxes Meta que contien tolos mensaxes pa la estensión [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Collection Collection] de MediaWiki",
+ "translate-group-desc-eol": "Grupu de mensaxes de la [[Translating:EOL|Enciclopedia de la vida]]",
+ "translate-group-desc-etherpad-lite": "[[Translating:Etherpad lite|Etherpad lite]] ye un editor collaborativu n'auténticu tiempu real",
+ "translate-group-desc-europeana": "[[Translating:Europeana|Europeana 1914-1918]] ye un sitiu web con histories, películes y material históricu sobro la I Guerra Mundial",
+ "translate-group-desc-flaggedrevs": "Grupu de mensaxes Meta que contien tolos mensaxes pa la estensión [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:FlaggedRevs FlaggedRevs] de MediaWiki",
+ "translate-group-desc-fuel": "[[Translating:FUEL|FUEL]] da más consistencia a la traducción de software",
+ "translate-group-desc-huggle": "[[Translating:Huggle|Huggle]] ye una aplicación de visor de diff pa combatir el vandalismu nos proyeutos de Wikimedia",
+ "translate-group-desc-ihris": "Grupu de mensaxes de [[Translating:iHRIS|iHRIS]]",
+ "translate-group-desc-kiwix": "Grupu de mensaxes de [[Translating:Kiwix|Kiwix]]",
+ "translate-group-desc-mantisbt-plugin-core": "Un complementu central de [[Translating:MantisBT|MantisBT]]",
+ "translate-group-desc-mathjax": "[[Translating:MathJax|MathJax]] ye una biblioteca de JavaScript compatible ente navegadores p'amosar escritura matemática nos navegadores web",
+ "translate-group-desc-mediawiki-core-branch": "Mensaxes d'una versión estable de [[Translating:MediaWiki|MediaWiki]]",
+ "translate-group-desc-mediawikicore": "Esti grupu de mensaxes contién los mensaxes emplegaos na versión alfa actual de [[Translating:MediaWiki|MediaWiki]] ({{CURRENTVERSION}})",
+ "translate-group-desc-mediawikiextensions": "Grupu de mensaxes Meta que contien tolos mensaxes pa les estensiones que sofita [[Translating:MediaWiki|MediaWiki]]",
+ "translate-group-desc-mediawikiskins": "Grupu de mensaxes Meta que contien tolos mensaxes pa los aspeutos que sofita [[Translating:MediaWiki|MediaWiki]]",
+ "translate-group-desc-mediawikimostused": "Esti grupu de mensaxes contién los [https://translatewiki.net/wiki/Most_often_used_messages_in_MediaWiki 500 mensaxes más usaos] de [[Translating:MediaWiki|MediaWiki]]",
+ "translate-group-desc-mifos": "[[Translating:Mifos|Mifos]] ye un sistema d'información de xestión pa microfinances",
+ "translate-group-desc-nfcring-control": "[[Translating:NFC_Ring_Control|NFC Ring Control]] ye una aplicación pa móviles pa interactuar con etiquetes NFC",
+ "translate-group-desc-nocc": "[[Translating:NOCC|NOCC]] ye un cliente pa corréu web",
+ "translate-group-desc-nodesc": "Nun hai descripción dala pa esti grupu de mensaxes",
+ "translate-group-desc-openimages-all": "Estos mensaxes formen parte del proyeutu [[Translating:Open Images|Open Images]]",
+ "translate-group-desc-potlatch2": "[[Translating:OpenStreetMap|Potlatch2]] ye un editor pa OpenStreetMap basáu en Flash",
+ "translate-group-desc-pywikipedia": "[[Translating:Pywikibot|Pywikibot]] ye una coleición de ferramientes pa editar Wikipedia",
+ "translate-group-desc-readerfeedback": "Grupu de mensaxes Meta que contien tolos mensaxes pa la estensión [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:ReaderFeedback ReaderFeedback] de MediaWiki",
+ "translate-group-desc-semantic": "Grupu de mensaxes meta que contien tolos mensaxes de toles estensiones de [https://semantic-mediawiki.org/ Semantic MediaWiki]",
+ "translate-group-desc-translatablepages": "Toles páxines traducibles",
+ "translate-group-desc-translate": "Grupu de mensaxes Meta que contien tolos mensaxes pa la estensión [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Translate Translate] de MediaWiki; por favor, avezate al so [https://www.mediawiki.org/wiki/Help:Extension:Translate/Glossary glosariu]",
+ "translate-group-desc-tsint": "Un grupu de mensaxes pa [[Translating:Intuition|Intuition]], el sistema i18n de les ferramientes de [//tools.wmflabs.org/ Wikimedia Tool Labs] (<span class=\"plainlinks\">[[Translating talk:Intuition|sofitu]]</span>)",
+ "translate-group-desc-universallanguageselector": "Metagrupu de mensaxes de que contién tolos mensaxes pa la estensión de MediaWiki [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:UniversalLanguageSelector UniversalLanguageSelector] (ULS) y pa los paquetes de software rellacionaos",
+ "translate-group-desc-vicuna": "[[Translating:VicuñaUploader|VicuñaUploader]] ye una ferramienta pa xubir ficheros a Wikimedia Commons ya otros proyeutos de Wikimedia",
+ "translate-group-desc-visualeditor": "Metagrupu de mensaxes de que contién tolos mensaxes pa la estensión de MediaWiki [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:VisualEditor VisualEditor] y pa los paquetes de software rellacionaos",
+ "translate-group-desc-waymarked-trails": "[[Translating:Waymarked Trails|Waymarked Trails]] ye un serviciu qu'amuesa rutes andariegues, ciclistes, pa bicis de monte y pa patinos en llinia per tou el mundu. Usa la llicencia GPL de GNU",
+ "translate-group-desc-waymarked-trails-help": "Les páxines d'ayuda de los sitios web de Waymarked Trails: http://waymarkedtrails.org/help/about",
+ "translate-group-desc-wikiaextensions": "Grupu de mensaxes Meta que contien tolos mensaxes pa les estensiones sofitaes por MediaWiki qu'usa [http://www.wikia.com Wikia]",
+ "translate-group-desc-wikimania-scholarships-app": "Grupu de mensaxes pa la [https://scholarships.wikimedia.org/apply solicitú de beques de Wikimania]",
+ "translate-group-desc-wikimedia-mobile": "Grupu de mensaxes agrupaos que contién aplicaciones pa móviles de los proyeutos de Wikimedia",
+ "translate-group-desc-wikimedia-mobile-wikipedia": "[[Translating:WikipediaMobile|WikipediaMobile]] ye una aplicación de plataforma cruzada pa móviles y tabletes pa lleer y collaborar con Wikipedia",
+ "translate-group-desc-wikimedia-mobile-wikipedia-android": "[[Translating:WikipediaMobile|Wikipedia Android]] ye la versión de la app pa móviles de Wikipedia específica pa Android",
+ "translate-group-desc-wikimedia-mobile-wikipedia-ios": "[[Translating:WikipediaMobile|Wikipedia iOS]] ye la versión de la app pa móvil de Wikipedia específica pa iOS",
+ "translate-group-desc-wikimedia-mobile-wikisource": "[[Translating:WikisourceMobile|WikisourceMobile]] ye una aplicación de plataforma cruzada pa móviles y tabletes pa lleer y collaborar con Uiquiesbilla",
+ "translate-group-desc-wikimedia-mobile-wiktionary": "[[Translating:WiktionaryMobile|WiktionaryMobile]] ye una aplicación de plataforma cruzada pa móviles y tabletes pa lleer y collaborar con Wiktionary",
+ "translate-group-desc-wikimediaextensions": "Grupu de mensaxes Meta que contien tolos mensaxes pa les estensiones sofitaes por MediaWiki qu'usa la [https://wikimediafoundation.org/ Fundación Wikimedia]",
+ "translate-group-desc-wikimediaextensions-main": "Meta grupu de mensaxes que contién tolos mensaxes de les estensiones de MediaWiki sofitaes que necesiten traducción pal [https://meta.wikimedia.org/wiki/Special:MyLanguage/Language_committee comité de llingües] de Wikimedia",
+ "translategroupdescriptions-desc": "Descripciones de los grupos de mensaxes de los productos compatibles con la estensión [https://mediawiki.org/wiki/Special:MyLanguage/Extension:Translate Translate]"
+}
diff --git a/MLEB/Translate/i18n/groupdescriptions/az.json b/MLEB/Translate/i18n/groupdescriptions/az.json
new file mode 100644
index 00000000..19ec1e4f
--- /dev/null
+++ b/MLEB/Translate/i18n/groupdescriptions/az.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Sortilegus"
+ ]
+ },
+ "bw-desc-wikiblame": "[http://wikipedia.ramselehof.de/wikiblame.php Wikiblame] Vikimedia layihələrində səhifə müəlliflərini tez bir zamanda axtarıb tapmağa imkan verir."
+}
diff --git a/MLEB/Translate/i18n/groupdescriptions/azb.json b/MLEB/Translate/i18n/groupdescriptions/azb.json
new file mode 100644
index 00000000..be77ef57
--- /dev/null
+++ b/MLEB/Translate/i18n/groupdescriptions/azb.json
@@ -0,0 +1,7 @@
+{
+ "@metadata": {
+ "authors": [
+ "Mousa"
+ ]
+ }
+}
diff --git a/MLEB/Translate/i18n/groupdescriptions/ba.json b/MLEB/Translate/i18n/groupdescriptions/ba.json
new file mode 100644
index 00000000..291ef976
--- /dev/null
+++ b/MLEB/Translate/i18n/groupdescriptions/ba.json
@@ -0,0 +1,13 @@
+{
+ "@metadata": {
+ "authors": [
+ "Assele"
+ ]
+ },
+ "translate-group-desc-collection": "MediaWiki проектының [https://www.mediawiki.org/wiki/Extension:Collection Collection] киңәйеүенең бөтә яҙмаларын үҙ эсенә алыусы мета төркөм.",
+ "translate-group-desc-flaggedrevs": "MediaWiki проектының [https://www.mediawiki.org/wiki/Extension:FlaggedRevs FlaggedRevs] киңәйеүенең бөтә яҙмаларын үҙ эсенә алыусы мета төркөм.",
+ "translate-group-desc-mediawikicore": "Был төркөм MediaWiki проектының хәҙерге альфа-версияһында ({{CURRENTVERSION}}) ҡулланылған яҙмаларҙы үҙ эсенә ала.",
+ "translate-group-desc-mediawikiextensions": "MediaWiki проекты киңәйеүҙәренең бөтә яҙмаларын үҙ эсенә алыусы мета төркөм.",
+ "translate-group-desc-mediawikimostused": "Был төркөм MediaWiki проектының [https://translatewiki.net/wiki/Most_often_used_messages_in_MediaWiki 500 иң йыш ҡуланылған яҙмаларын] үҙ эсенә ала",
+ "translate-group-desc-nodesc": "Был төркөм өсөн тасуирлама юҡ."
+}
diff --git a/MLEB/Translate/i18n/groupdescriptions/bcc.json b/MLEB/Translate/i18n/groupdescriptions/bcc.json
new file mode 100644
index 00000000..a96d9fda
--- /dev/null
+++ b/MLEB/Translate/i18n/groupdescriptions/bcc.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Baloch Afghanistan"
+ ]
+ },
+ "translate-group-desc-mediawikiskins": "مٹا پیامی گروپ شاملی موچین پیامان په همراهی بوتینا پوستانی په [[ترجمه کورتین:میڈیا ویکی|میڈیا ویکی]]"
+}
diff --git a/MLEB/Translate/i18n/groupdescriptions/be-tarask.json b/MLEB/Translate/i18n/groupdescriptions/be-tarask.json
new file mode 100644
index 00000000..91de9474
--- /dev/null
+++ b/MLEB/Translate/i18n/groupdescriptions/be-tarask.json
@@ -0,0 +1,43 @@
+{
+ "@metadata": {
+ "authors": [
+ "EugeneZelenko",
+ "Jim-by",
+ "Renessaince",
+ "Wizardist",
+ "Lokal Profil"
+ ]
+ },
+ "bw-desc-freecol": "Перад тым, як перакладаць FreeCol на Вашую мову, калі ласка, прачытайце [[Translating:FreeCol]]. Freecol выкарыстоўвае ліцэнзію GPL.",
+ "bw-desc-fudforum": "[http://fudforum.org/ FUDforum] — рухавік для вэб-форумаў на PHP.",
+ "bw-desc-mantisbt": "[[Translating:MantisBT|MantisBT]] — вольная ўэб-сыстэма сачэньня за памылкамі. Калі ласка, паведамляйце пра любыя праблемы ў [[Support]].",
+ "bw-desc-openstreetmap": "Група паведамленьняў для ўсіх паведамленьняў [[Translating:OpenStreetMap|OpenStreetMap]]",
+ "bw-desc-osm-site": "Гэтая група зьмяшчае паведамленьні для [[Translating:Open Street Map|Open Street Map]].\nГлядзіце [http://unicode.org/repos/cldr-tmp/trunk/diff/supplemental/language_plural_rules.html#{{UILANGCODE}} старонку Unicode CLDR] зь інструкцыяй фармаваньня множнага ліку.",
+ "bw-desc-wikiblame": "[http://wikipedia.ramselehof.de/wikiblame.php Wikiblame] дазваляе хутка знайсьці аўтараў пэўнай старонкі ці выказваньня ў праектах Фундацыі «Вікімэдыя».",
+ "translate-group-desc-collection": "Мэта-група паведамленьняў, якая ўтрымлівае ўсе паведамленьні для пашырэньня MediaWiki [https://www.mediawiki.org/wiki/Extension:Collection Collection]",
+ "translate-group-desc-eol": "Група паведамленьняў [[Translating:EOL|Энцыкляпэдыі жыцьця]]",
+ "translate-group-desc-europeana": "[[Translating:Europeana|Europeana]] дае магчымасьць людзям знаёміцца з лічбавымі культурнымі крыніцамі Эўропы",
+ "translate-group-desc-flaggedrevs": "Мэта-група паведамленьняў, якая ўтрымлівае ўсе паведамленьні для пашырэньня MediaWiki [https://www.mediawiki.org/wiki/Extension:FlaggedRevs FlaggedRevs]",
+ "translate-group-desc-ihris": "Група паведамленьняў для [[Translating:iHRIS|iHRIS]]",
+ "translate-group-desc-kiwix": "Група паведамленьняў для [[Translating:Kiwix|Kiwix]]",
+ "translate-group-desc-mantisbt-plugin-core": "Асноўнае дапаўненьне [[Translating:MantisBT|MantisBT]]",
+ "translate-group-desc-mediawiki-core-branch": "Паведамленьні стабільнай вэрсіі [[Translating:MediaWiki|MediaWiki]]",
+ "translate-group-desc-mediawikicore": "Гэта група паведамленьняў утрымлівае паведамленьні, якія выкарыстоўваюцца ў цяперашняй альфа-вэрсіі MediaWiki ({{CURRENTVERSION}})",
+ "translate-group-desc-mediawikiextensions": "Мэта-група паведамленьняў, якая ўтрымлівае ўсе паведамленьні падтрымліваемых пашырэньняў для MediaWiki",
+ "translate-group-desc-mediawikimostused": "Гэта група паведамленьняў, якая ўтрымлівае [https://translatewiki.net/wiki/Most_often_used_messages_in_MediaWiki 500 паведамленьняў, якія найчасьцей выкарыстоўваюцца] ў MediaWiki",
+ "translate-group-desc-mifos": "[[Translating:Mifos|Mifos]] — сыстэма кіраваньня інфармацыяй для мікрафінансаў",
+ "translate-group-desc-nocc": "[http://nocc.sourceforge.net NOCC] — кліент электроннай пошты, напісаны на PHP. Калі ласка, паведамляйце пра любыя праблемы на [[Support|Падтрымку]].",
+ "translate-group-desc-nodesc": "Няма апісаньня для гэтай групы паведамленьняў",
+ "translate-group-desc-openimages-all": "Гэтыя паведамленьні зьяўляюцца часткай праекту [[Translating:Open Images|Open Images]]",
+ "translate-group-desc-potlatch2": "[[Translating:OpenStreetMap|Potlatch2]] — рэдактар OpenStreetMap на Flash",
+ "translate-group-desc-pywikipedia": "[[Translating:Pywikibot|Pywikibot]] — калекцыя інструмэнтаў для рэдагаваньня Вікіпэдыі",
+ "translate-group-desc-readerfeedback": "Мэта-група паведамленьняў, якая ўтрымлівае ўсе паведамленьні для пашырэньня MediaWiki [https://www.mediawiki.org/wiki/Extension:ReaderFeedback ReaderFeedback]",
+ "translate-group-desc-semantic": "Мэта-група, якая ўтрымлівае ўсе паведамленьні для ўсіх пашырэньняў [https://semantic-mediawiki.org/ Semantic MediaWiki]",
+ "translate-group-desc-translatablepages": "Усе старонкі, якія магчыма перакласьці",
+ "translate-group-desc-translate": "Мэта-група паведамленьняў, якая ўтрымлівае ўсе паведамленьні для пашырэньня MediaWiki [https://www.mediawiki.org/wiki/Extension:Translate Translate]",
+ "translate-group-desc-tsint": "Група паведамленьняў [http://toolserver.org/~krinkle/TsIntuition Toolserver Intuition], сыстэмы перакладаў для [http://tolserver.org сэрвэра інструмэнтаў] (<span class=\"plainlinks\">[[Translating talk:Toolserver|падтрымка]] &middot; [https://wiki.toolserver.org/view/Toolserver_Intuition тэхнічныя дэталі]</span>)",
+ "translate-group-desc-wikiaextensions": "Мэта-група паведамленьняў, якая ўтрымлівае ўсе паведамленьні для падтрымліваемых пашырэньняў MediaWiki, выкарыстоўваемых [http://www.wikia.com Wikia]",
+ "translate-group-desc-wikimediaextensions": "Мэта-група паведамленьняў, якая ўтрымлівае ўсе паведамленьні для падтрымліваемых пашырэньняў MediaWiki, выкарыстоўваемых [https://wikimediafoundation.org/ фундацыяй «Вікімэдыя»]",
+ "translate-group-desc-wikimediaextensions-main": "Мэта-група паведамленьняў, якая утрымлівае ўсе паведамленьні для пашырэньняў MediaWiki, якія патрабуюць перакладу для [https://meta.wikimedia.org/wiki/Language_committee моўнага камітэту] Wikimedia",
+ "translategroupdescriptions-desc": "Апісаньні групаў паведамленьняў для прадуктаў, якія падтрымліваюцца пашырэньнем [https://mediawiki.org/wiki/Extension:Translate перакладу]"
+}
diff --git a/MLEB/Translate/i18n/groupdescriptions/bg.json b/MLEB/Translate/i18n/groupdescriptions/bg.json
new file mode 100644
index 00000000..a9741e61
--- /dev/null
+++ b/MLEB/Translate/i18n/groupdescriptions/bg.json
@@ -0,0 +1,13 @@
+{
+ "@metadata": {
+ "authors": [
+ "DCLXVI",
+ "Spiritia"
+ ]
+ },
+ "bw-desc-fudforum": "[http://fudforum.org/ FUDforum], форум, написан на PHP.",
+ "bw-desc-osm-site": "Тази група съобщения съдържа интерфейсните съобщения за [[Translating:Open Street Map|Open Street Map]].\nВижте [http://unicode.org/repos/cldr-tmp/trunk/diff/supplemental/language_plural_rules.html#{{UILANGCODE}} страницата от сайта на проект Unicode CLDR] за обяснение на ключовете за множествено число в съобщенията.",
+ "bw-desc-wikiblame": "[http://wikipedia.ramselehof.de/wikiblame.php Wikiblame] може бързо да намери авторите на страница в уики на Уикимедия.",
+ "translate-group-desc-mediawiki-core-branch": "Съобщения за стабилна версия на [[Translating:MediaWiki|MediaWiki]]",
+ "translate-group-desc-pywikipedia": "[[Translating:Pywikibot|Pywikibot]] е набор от инструменти за редактиране на Уикипедия"
+}
diff --git a/MLEB/Translate/i18n/groupdescriptions/bn.json b/MLEB/Translate/i18n/groupdescriptions/bn.json
new file mode 100644
index 00000000..891008b6
--- /dev/null
+++ b/MLEB/Translate/i18n/groupdescriptions/bn.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Aftab1995"
+ ]
+ },
+ "translate-group-desc-vicuna": "[[Translating:VicuñaUploader|VicuñaUploader]] উইকিমিডিয়া কমন্স এবং অন্যান্য উইকিমিডিয়া প্রকল্পে ফাইল আপলোড করার জন্য একটি টুল"
+}
diff --git a/MLEB/Translate/i18n/groupdescriptions/br.json b/MLEB/Translate/i18n/groupdescriptions/br.json
new file mode 100644
index 00000000..545a12eb
--- /dev/null
+++ b/MLEB/Translate/i18n/groupdescriptions/br.json
@@ -0,0 +1,43 @@
+{
+ "@metadata": {
+ "authors": [
+ "Fohanno",
+ "Fulup",
+ "Gwendal",
+ "McDutchie",
+ "Y-M D",
+ "Lokal Profil"
+ ]
+ },
+ "bw-desc-freecol": "Kent stagañ da dreiñ FreeCol en ho yezh, lennit [[Translating:FreeCol]]. Ober a ra Freecol gant an aotre GPL.",
+ "bw-desc-fudforum": "[http://fudforum.org/ FUDforum], ur forom web skrivet e PHP.",
+ "bw-desc-mantisbt": "Ur meziant digoust da c'hwennat drein eo [[Translating:MantisBT|MantisBT]]. Roit keloù war [[Support]] m'en em gavit gant kudenn pe gudenn.",
+ "bw-desc-openstreetmap": "An holl gemennadennoù a denn da [[Translating:OpenStreetMap|OpenStreetMap]]",
+ "bw-desc-osm-site": "Er strollad kemennadennoù-mañ emañ kemennadennoù etrefas [[Translating:Open Street Map|Open Street Map]].",
+ "bw-desc-wikiblame": "Gouest eo [http://wikipedia.ramselehof.de/wikiblame.php Wikiblame] da gavout fonnus aozerien ur bajenn eus ur wiki Wikimedia.",
+ "translate-group-desc-collection": "Meta-strollad kemennadennoù ennañ holl gemennadennoù an astenn MediaWiki [https://www.mediawiki.org/wiki/Extension:Collection Dastumad]",
+ "translate-group-desc-eol": "Ur strollad kemennadennoù evit [[Translating:EOL|Holloueziadur ar vuhez]]",
+ "translate-group-desc-europeana": "[[Translating:Europeana|Europeana]] a ginnig d'an dud ergerzhiñ dafar sevenadurel niverel Europa",
+ "translate-group-desc-flaggedrevs": "Meta-strollad kemennadennoù ennañ holl gemennadennoù an astenn MediaWiki [https://www.mediawiki.org/wiki/Extension:FlaggedRevs FlaggedRevs]",
+ "translate-group-desc-ihris": "Ur strollad kemennadennoù evit [[Translating:iHRIS|iHRIS]]",
+ "translate-group-desc-kiwix": "Ur strollad kemennadennoù evit [[Translating:Kiwix|Kiwix]]",
+ "translate-group-desc-mantisbt-plugin-core": "Ur plugin diazez evit [[Translating:MantisBT|MantisBT]]",
+ "translate-group-desc-mediawiki-core-branch": "Kemennadennoù evit ur stumm stabil eus [[Translating:MediaWiki|MediaWiki]]",
+ "translate-group-desc-mediawikicore": "Er strollad kemennadennoù-mañ emañ ar c'hemennadennoù implijet e stumm red MediaWiki ({{CURRENTVERSION}})",
+ "translate-group-desc-mediawikiextensions": "Meta-strollad kemennadennoù ennañ holl gemennadennoù an astennoù skoret evit MediaWiki",
+ "translate-group-desc-mediawikimostused": "Er strollad kemennadennoù-mañ emañ [https://translatewiki.net/wiki/Most_often_used_messages_in_MediaWiki 500 kemennadenn implijetañ] MediaWiki",
+ "translate-group-desc-mifos": "Ur reizhiad merañ roadennoù evit ar mikrokredoù eo [[Translating:Mifos|Mifos]]",
+ "translate-group-desc-nocc": "Ur c'hliant webmail skrivet e PHP eo [http://nocc.sourceforge.net NOCC]. Kasit keloù da [[Support]] ma verzit kudenn pe gudenn.",
+ "translate-group-desc-nodesc": "N'eus deskrivadur ebet da gaout evit ar strollad kemennadennoù-mañ",
+ "translate-group-desc-openimages-all": "Ul lodenn eus [[Translating:Open Images|raktres Open Images]] eo ar c'hemennadennoù-mañ",
+ "translate-group-desc-pywikipedia": "Un dastumad ostilhoù da zegas kemmoù e Wikipedia eo [[Translating:Pywikibot|Pywikibot]]",
+ "translate-group-desc-readerfeedback": "Meta-strollad kemennadennoù ennañ holl gemennadennoù an astenn MediaWiki [https://www.mediawiki.org/wiki/Extension:ReaderFeedback ReaderFeedback]",
+ "translate-group-desc-semantic": "Stroll kemennadennoù Meta ennañ an holl gemennadennoù evit holl astennoù [https://semantic-mediawiki.org/ Semantic MediaWiki]",
+ "translate-group-desc-translatablepages": "An holl bajennoù da dreiñ",
+ "translate-group-desc-translate": "Meta-strollad kemennadennoù ennañ holl gemennadennoù an astenn MediaWiki [https://www.mediawiki.org/wiki/Extension:Translate Treiñ]",
+ "translate-group-desc-tsint": "Ur strollad kemennadennoù evit [http://toolserver.org/~krinkle/TsIntuition Toolserver Intuition], ar reizhiad etrebroadelaat ostilhoù an [http://toolserver.org Toolserver] (<span class=\"plainlinks\">[[Translating talk:Toolserver|support]] &middot; [https://wiki.toolserver.org/view/Toolserver_Intuition technical details]</span>)",
+ "translate-group-desc-wikiaextensions": "Meta-strollad kemennadennoù ennañ holl gemennadennoù an astennoù MediaWiki implijet gant [http://www.wikia.com Wikia]",
+ "translate-group-desc-wikimediaextensions": "Meta-strollad kemennadennoù ennañ holl gemennadennoù an astennoù MediaWiki implijet gant [https://wikimediafoundation.org/ Wikimedia Foundation]",
+ "translate-group-desc-wikimediaextensions-main": "Stroll kemennadennoù Meta enno holl gemennadennoù an astennoù MediaWiki skoret a zle bezañ troet evit [https://meta.wikimedia.org/wiki/Language_committee Bodad yezh] wikimedia",
+ "translategroupdescriptions-desc": "Deskrivadurioù ar strolladoù kemennadennoù evit ar produioù skoret gant an astenn [https://mediawiki.org/wiki/Extension:Translate Translate]"
+}
diff --git a/MLEB/Translate/i18n/groupdescriptions/bs.json b/MLEB/Translate/i18n/groupdescriptions/bs.json
new file mode 100644
index 00000000..b48dfc93
--- /dev/null
+++ b/MLEB/Translate/i18n/groupdescriptions/bs.json
@@ -0,0 +1,42 @@
+{
+ "@metadata": {
+ "authors": [
+ "CERminator",
+ "Smooth O",
+ "KWiki",
+ "Krinkle",
+ "Lokal Profil"
+ ]
+ },
+ "bw-desc-freecol": "Prije nego što počnete da prevodite FreeCol na Vaš jezik, molimo pročitajte [[Translating:FreeCol]]. FreeCol koristi GPL licencu.",
+ "bw-desc-fudforum": "[http://fudforum.org/ FUDforum], web forum napisan u PHP.",
+ "bw-desc-mantisbt": "[[Translating:MantisBT|MantisBT]] je slobodni sistem praćenja grešaka zasnovan na webu. Molimo prijavite svaku grešku na stranicu [[Support]].",
+ "bw-desc-openstreetmap": "Sve poruke vezane za [[Translating:OpenStreetMap|OpenStreetMap]]",
+ "bw-desc-osm-site": "Ova grupa poruka sadrži poruke interfejsa za [[Translating:Open Street Map|Open Street Map]].\nPogledajte [http://unicode.org/repos/cldr-tmp/trunk/diff/supplemental/language_plural_rules.html#{{UILANGCODE}} Unicode CLDR stranicu za objašnjenje o ključevima množine].",
+ "bw-desc-wikiblame": "Putem [http://wikipedia.ramselehof.de/wikiblame.php Wikiblame] je moguće brzo pronaći autore stranica u Wikimedia wikijima.",
+ "translate-group-desc-collection": "Grupa meta poruka koja sadrži sve poruke za MediaWiki proširenje [https://www.mediawiki.org/wiki/Extension:Collection Collection]",
+ "translate-group-desc-eol": "Grupa poruka za [[Translating:EOL|Enciklopediju života]]",
+ "translate-group-desc-europeana": "[[Translating:Europeana|Europeana]] omogućava ljudima da istraže digitalne kulturne resurse Evrope",
+ "translate-group-desc-flaggedrevs": "Grupa meta poruka koja sadrži sve poruke za MediaWiki proširenje [https://www.mediawiki.org/wiki/Extension:FlaggedRevs FlaggedRevs]",
+ "translate-group-desc-ihris": "Grupa poruka za [[Translating:iHRIS|iHRIS]]",
+ "translate-group-desc-kiwix": "Grupa poruka za [[Translating:Kiwix|Kiwix]]",
+ "translate-group-desc-mantisbt-plugin-core": "Plugin jezgre za [[Translating:MantisBT|MantisBT]]",
+ "translate-group-desc-mediawiki-core-branch": "Poruke za stabilnu verziju [[Translating:MediaWiki|MediaWiki]]ja",
+ "translate-group-desc-mediawikicore": "Ova grupa poruka sadrži poruke koje se koriste u trenutnoj alfa verziji MediaWiki ({{CURRENTVERSION}})",
+ "translate-group-desc-mediawikiextensions": "Grupa meta poruka koje sadrže sve poruke za podržana proširenja za MediaWiki",
+ "translate-group-desc-mediawikimostused": "Ova grupa poruka sadrži [https://translatewiki.net/wiki/Most_often_used_messages_in_MediaWiki 500 najčešće korištenih poruka] na MediaWiki",
+ "translate-group-desc-mifos": "[[Translating:Mifos|Mifos]] je upravljački informacioni sistem za mikrofinansiranje",
+ "translate-group-desc-nocc": "[http://nocc.sourceforge.net NOCC] je klijent za webmail napisan u PHP. Molimo prijavite sve greške na stranicu [[Support]].",
+ "translate-group-desc-nodesc": "Nije dostupan opis za ovu grupu poruka",
+ "translate-group-desc-openimages-all": "Ove poruke su dio [[Translating:Open Images|Open Images]] projekta",
+ "translate-group-desc-pywikipedia": "[[Translating:Pywikibot|Pywikibot]] je kolekcija alata za uređivanje Wikipedije",
+ "translate-group-desc-readerfeedback": "Grupa meta poruka koja sadrži sve poruke za MediaWiki proširenje [https://www.mediawiki.org/wiki/Extension:FlaggedRevs ReaderFeedback]",
+ "translate-group-desc-semantic": "Grupa meta poruka koja sadrži sve poruke za sva [https://semantic-mediawiki.org/ Semantic MediaWiki] proširenja",
+ "translate-group-desc-translatablepages": "Sve stranice koje se mogu prevesti",
+ "translate-group-desc-translate": "Grupa meta poruka koje sadrže sve poruke za MediaWiki proširenje [https://www.mediawiki.org/wiki/Extension:Translate Translate]",
+ "translate-group-desc-tsint": "Grupa poruka za [[Translating:Intuition|Intuition]], i18n sistem za [//tools.wmflabs.org/ Toolserver] alate ([[Translating talk:Intuition|podrška]])",
+ "translate-group-desc-wikiaextensions": "Grupa meta poruka koja sadrži sve poruke za podržana MediaWiki proširenja za [http://www.wikia.com Wikia]",
+ "translate-group-desc-wikimediaextensions": "Grupa meta poruka koja sadrži sve poruke za podržana MediaWiki proširenja korištena od strane [https://wikimediafoundation.org/ Fondacije Wikimedia]",
+ "translate-group-desc-wikimediaextensions-main": "Grupa meta poruka koja sadrži sve poruke za podršku MediaWiki proširenja neophodnih za prevođenje za Wikimedia [https://meta.wikimedia.org/wiki/Language_committee Jezički komitet]",
+ "translategroupdescriptions-desc": "Opisi grupe poruka za proizvode podržane od strane dodatka [https://mediawiki.org/wiki/Extension:Translate Translate]"
+}
diff --git a/MLEB/Translate/i18n/groupdescriptions/ca.json b/MLEB/Translate/i18n/groupdescriptions/ca.json
new file mode 100644
index 00000000..59e34859
--- /dev/null
+++ b/MLEB/Translate/i18n/groupdescriptions/ca.json
@@ -0,0 +1,12 @@
+{
+ "@metadata": {
+ "authors": [
+ "SMP",
+ "Lokal Profil"
+ ]
+ },
+ "bw-desc-freecol": "Abans de traduir FreeCol al vostre idioma, llegeiu [[Translating:FreeCol]]. Freecol utilitza una llicència GPL.",
+ "bw-desc-fudforum": "[http://fudforum.org/ FUDforum], un fòrum web escrit en PHP.",
+ "bw-desc-mantisbt": "[[Translating:MantisBT|MantisBT]] és un sistema de gestió d'errors via web. Si us plau, informeu de qualsevol problema a [[Support]].",
+ "translate-group-desc-nocc": "[http://nocc.sourceforge.net NOCC] és un client de correu electrònic desenvolupat en PHP. Si us plau, informeu de qualsevol problema a [[Support]]."
+}
diff --git a/MLEB/Translate/i18n/groupdescriptions/ce.json b/MLEB/Translate/i18n/groupdescriptions/ce.json
new file mode 100644
index 00000000..ff583737
--- /dev/null
+++ b/MLEB/Translate/i18n/groupdescriptions/ce.json
@@ -0,0 +1,17 @@
+{
+ "@metadata": {
+ "authors": [
+ "Умар"
+ ]
+ },
+ "bw-desc-openstreetmap": "[[Translating:OpenStreetMap|OpenStreetMap]] массо хаамашна хаамийн тоба",
+ "translate-group-desc-mediawikicore": "ХӀокху хаамийн тобан чохь карара альфа-версеш [[Translating:MediaWiki|MediaWiki]] ({{CURRENTVERSION}}) лелош болу хаамаш бу",
+ "translate-group-desc-mediawikiextensions": "[[Translating:MediaWiki|MediaWiki]]-ин шордарш ловш болу массо хаамаш чохь болу мета-тоба",
+ "translate-group-desc-mediawikiskins": "[[Translating:MediaWiki|MediaWiki]]-ин шордарш ловш болу массо хаамаш чохь болу мета-тоба",
+ "translate-group-desc-pywikipedia": "[[Translating:Pywikibot|Pywikibot]] — Википеди таян гӀирсан гулам",
+ "translate-group-desc-semantic": "[https://semantic-mediawiki.org/ Semantic MediaWiki] массо шордарш чохь долу мета-тоба",
+ "translate-group-desc-translatablepages": "Гочян массо агӀонаш",
+ "translate-group-desc-wikiaextensions": "[http://www.wikia.com Wikia] чохь лелош болу MediaWiki шордарш ловш болу массо хаамаш чохь болу метта-тоба",
+ "translate-group-desc-wikimediaextensions": "[https://wikimediafoundation.org/ Викимедиан фондан] чохь лелош болу MediaWiki шордарш ловш болу массо хаамаш чохь болу метта-тоба",
+ "translate-group-desc-wikimediaextensions-main": "Викимедин [https://meta.wikimedia.org/wiki/Language_committee Меттанийн комитетан] гоч бан беза MediaWiki хаамийн метта-тоба"
+}
diff --git a/MLEB/Translate/i18n/groupdescriptions/cs.json b/MLEB/Translate/i18n/groupdescriptions/cs.json
new file mode 100644
index 00000000..1095a087
--- /dev/null
+++ b/MLEB/Translate/i18n/groupdescriptions/cs.json
@@ -0,0 +1,63 @@
+{
+ "@metadata": {
+ "authors": [
+ "Mormegil",
+ "Reaperman",
+ "Matěj Suchánek",
+ "Lokal Profil"
+ ]
+ },
+ "bw-desc-freecol": "Před překládáním FreeCol do vašeho jazyka si přečtěte [[Translating:FreeCol]]. FreeCol používá licenci GPL.",
+ "bw-desc-fudforum": "[http://fudforum.org/ FUDforum], webové fórum napsané v PHP.",
+ "bw-desc-mantisbt": "[[Translating:MantisBT|MantisBT]] je webový systém pro správu chyb",
+ "bw-desc-openstreetmap": "Skupina pro všechny zprávy [[Translating:OpenStreetMap|OpenStreetMap]]",
+ "bw-desc-osm-site": "Tato skupina obsahuje zprávy rozhraní pro [[Translating:Open Street Map|Open Street Map]].\nVysvětlení klíčů u funkce PLURAL najdete na [http://unicode.org/repos/cldr-tmp/trunk/diff/supplemental/language_plural_rules.html#{{UILANGCODE}} stránce Unicode CLDR].",
+ "bw-desc-wikiblame": "[http://wikipedia.ramselehof.de/wikiblame.php Wikiblame] dokáže rychle zjistit autory libovolné stránky na wiki nadace Wikimedia.",
+ "translate-group-desc-blockly": "Skupina zpráv pro [[Translating:Blockly|Blockly]]",
+ "translate-group-desc-bluespice": "Nadskupina zpráv obsahující všechny zprávy rozšíření [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:BlueSpice Blue Spice]",
+ "translate-group-desc-collection": "Nadskupina zpráv obsahující všechny zprávy rozšíření [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Collection Collection]",
+ "translate-group-desc-eol": "Skupina zpráv pro [[Translating:EOL|Encyclopedia of Life]]",
+ "translate-group-desc-etherpad-lite": "[[Translating:Etherpad lite|Etherpad lite]] je editor pro spolupráci v opravdu reálném čase",
+ "translate-group-desc-europeana": "[[Translating:Europeana|Europeana 1914–1918]] je webová stránka s příběhy, filmy a historickými materiály o první světové válce.",
+ "translate-group-desc-flaggedrevs": "Nadskupina zpráv obsahující všechny zprávy rozšíření [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:FlaggedRevs FlaggedRevs]",
+ "translate-group-desc-fuel": "[[Translating:FUEL|FUEL]] přináší do překládání softwaru větší konzistenci",
+ "translate-group-desc-huggle": "[[Translating:Huggle|Huggle]] aplikace pro rychlé prohlížení provedených změn určená pro řešení vandalismu na projektech Wikimedia.",
+ "translate-group-desc-ihris": "Skupina zpráv pro [[Translating:iHRIS|iHRIS]]",
+ "translate-group-desc-kiwix": "Skupina zpráv pro [[Translating:Kiwix|Kiwix]]",
+ "translate-group-desc-mantisbt-plugin-core": "Základní modul pro [[Translating:MantisBT|MantisBT]]",
+ "translate-group-desc-mathjax": "[[Translating:MathJax|MathJax]] je multiplatformní JavaScriptová knihovna pro zobrazování matematické notace ve webových prohlížečích",
+ "translate-group-desc-mediawiki-core-branch": "Zprávy ze stabilní verze [[Translating:MediaWiki|MediaWiki]]",
+ "translate-group-desc-mediawikiapi": "Tato skupina zpráv obsahuje zprávy používané v Akčním API v aktuální alfaverzi [[Translating:MediaWiki|MediaWiki]] ({{CURRENTVERSION}})",
+ "translate-group-desc-mediawikicore": "Tato skupina zpráv obsahuje zprávy používané v současné alfaverzi MediaWiki ({{CURRENTVERSION}})",
+ "translate-group-desc-mediawikiextensions": "Nadskupina zpráv obsahující všechny zprávy ve všech podporovaných rozšířeních MediaWiki",
+ "translate-group-desc-mediawikiskins": "Nadskupina zpráv obsahující všechny zprávy ve všech podporovaných vzhledech [[Translating:MediaWiki|MediaWiki]]",
+ "translate-group-desc-mediawikimostused": "Tato skupina zpráv obsahuje [https://translatewiki.net/wiki/Most_often_used_messages_in_MediaWiki 500 nejpoužívanějších zpráv] v [[Translating:MediaWiki|MediaWiki]]",
+ "translate-group-desc-mifos": "[[Translating:Mifos|Mifos]] je informační systém pro správu mikrofinancování",
+ "translate-group-desc-nfcring-control": "[[Translating:NFC_Ring_Control|NFC Ring Control]] je mobilní aplikace pro interakci s NFC tagy",
+ "translate-group-desc-nocc": "[http://nocc.sourceforge.net NOCC] je webmail napsaný v PHP. Dotazy a chyby pište na stránku [[Support]].",
+ "translate-group-desc-nodesc": "Pro tuto skupinu zpráv není popis k dispozici",
+ "translate-group-desc-openimages-all": "Tato hlášení jsou součástí projektu [[Translating:Open Images|Open Images]]",
+ "translate-group-desc-potlatch2": "[[Translating:OpenStreetMap|Potlatch2]] je flashový editor pro OpenStreetMap",
+ "translate-group-desc-pywikipedia": "[[Translating:Pywikibot|Pywikibot]] je soubor nástrojů pro editaci Wikipedie",
+ "translate-group-desc-readerfeedback": "Nadskupina zpráv obsahující všechny zprávy rozšíření [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:ReaderFeedback ReaderFeedback]",
+ "translate-group-desc-semantic": "Nadskupina zpráv obsahující všechny zprávy pro všechna rozšíření [https://semantic-mediawiki.org/ Semantic MediaWiki]",
+ "translate-group-desc-translatablepages": "Všechny přeložitelné stránky",
+ "translate-group-desc-translate": "Nadskupina zpráv obsahující všechny zprávy rozšíření [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Translate Translate]; seznamte se prosím s jeho [https://www.mediawiki.org/wiki/Help:Extension:Translate/Glossary terminologií]",
+ "translate-group-desc-tsint": "Skupina zpráv pro [[Translating:Intuition|Intuition]], lokalizační systém pro nástroje na [//tools.wmflabs.org/ Wikimedia Tool Labs] ([[Translating talk:Intuition|podpora]])",
+ "translate-group-desc-universallanguageselector": "Nadskupina zpráv obsahující všechny zprávy rozšíření [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:UniversalLanguageSelector UniversalLanguageSelector] (ULS) a související softwarové balíčky",
+ "translate-group-desc-vicuna": "[[Translating:VicuñaUploader|VicuñaUploader]] je nástroj pro načítání souborů na Wikimedia Commons a další projekty Wikimedia",
+ "translate-group-desc-visualeditor": "Nadskupina zpráv obsahující všechny zprávy rozšíření [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:VisualEditor VisualEditor] a související softwarové balíčky",
+ "translate-group-desc-waymarked-trails": "[[Translating:Waymarked Trails|Waymarked Trails]] je služba zobrazující trasy pro turistiku, cyklistiku, MTB a inline bruslení po celém světě. Používá licenci GNU GPL",
+ "translate-group-desc-waymarked-trails-help": "Nápověda na stránkách Waymarked Trails: http://waymarkedtrails.org/help/about",
+ "translate-group-desc-wikiaextensions": "Nadskupina zpráv obsahující všechny zprávy používané v podporovaných rozšířeních MediaWiki používaných na [http://www.wikia.com Wikia]",
+ "translate-group-desc-wikimania-scholarships-app": "Skupina zpráv pro [https://scholarships.wikimedia.org/apply Stipendia na Wikimania]",
+ "translate-group-desc-wikimedia-mobile": "Nadskupina zpráv obsahující mobilní aplikace k projektům Wikimedia",
+ "translate-group-desc-wikimedia-mobile-wikipedia": "[[Translating:WikipediaMobile|WikipediaMobile]] je mnohoplatformní mobilní a tabletová aplikace pro čtení Wikipedie a přispívání do ní",
+ "translate-group-desc-wikimedia-mobile-wikipedia-android": "[[Translating:WikipediaMobile|Wikipedia Android]] je verze mobilní aplikace Wikipedie pro Android",
+ "translate-group-desc-wikimedia-mobile-wikipedia-ios": "[[Translating:WikipediaMobile|Wikipedia iOS]] je verze mobilní aplikace Wikipedie pro iOS",
+ "translate-group-desc-wikimedia-mobile-wikisource": "[[Translating:WikisourceMobile|WikisourceMobile]] je mnohoplatformní mobilní a tabletová aplikace pro čtení Wikizdrojů a přispívání do nich",
+ "translate-group-desc-wikimedia-mobile-wiktionary": "[[Translating:WiktionaryMobile|WiktionaryMobile]] je mnohoplatformní mobilní a tabletová aplikace pro čtení Wikislovníku a přispívání do něj",
+ "translate-group-desc-wikimediaextensions": "Nadskupina zpráv obsahující všechny zprávy používané v rozšířeních MediaWiki používaných na wiki [https://wikimediafoundation.org/ nadace Wikimedia Foundation]",
+ "translate-group-desc-wikimediaextensions-main": "Nadskupina zpráv obsahující všechny zprávy v podporovaných rozšířeních MediaWiki, jejichž překlad vyžaduje [https://meta.wikimedia.org/wiki/Special:MyLanguage/Language_committee Jazyková komise nadace Wikimedia]",
+ "translategroupdescriptions-desc": "Popisy skupin zpráv pro produkty podporované rozšířením [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Translate Translate]"
+}
diff --git a/MLEB/Translate/i18n/groupdescriptions/da.json b/MLEB/Translate/i18n/groupdescriptions/da.json
new file mode 100644
index 00000000..103fb665
--- /dev/null
+++ b/MLEB/Translate/i18n/groupdescriptions/da.json
@@ -0,0 +1,52 @@
+{
+ "@metadata": {
+ "authors": [
+ "Byrial",
+ "Christian List",
+ "Emilkris33",
+ "Hylle",
+ "Kaare",
+ "Peter Alberti"
+ ]
+ },
+ "bw-desc-freecol": "[[Translating:FreeCol|FreeCol]] er et turbaseret strategispil",
+ "bw-desc-fudforum": "[[Translating:FUDforum|FUDforum]] er et webbaseret diskussionsforum",
+ "bw-desc-mantisbt": "[[Translating:MantisBT|MantisBT]] er et webbaseret problemsporingsprogram",
+ "bw-desc-openstreetmap": "Alle meddelelser relateret til [[Translating:OpenStreetMap|OpenStreetMap]]",
+ "bw-desc-osm-site": "[[Translating:OpenStreetMap|OpenStreetMap]] er et redigerbart kort over hele verden",
+ "bw-desc-wikiblame": "[[Translating:WikiBlame|WikiBlame]] er i stand til hurtigt at finde forfatterne til en del af en side i en Wikimedia wiki",
+ "translate-group-desc-blockly": "En beskedgruppe for [[Translating:Blockly|Blockly]]",
+ "translate-group-desc-collection": "Meta beskedgruppe der indeholder alle beskeder til MediaWiki udvidelsen [https://www.mediawiki.org/wiki/Extension:Collection Collection]",
+ "translate-group-desc-eol": "En beskedgruppe for [[Translating:EOL|Encyclopedia of Life]]",
+ "translate-group-desc-etherpad-lite": "[[Translating:Etherpad lite|Etherpad lite]] er en virkelig-realtids kollaborativ editor",
+ "translate-group-desc-europeana": "[[Translating:Europeana|Europeana]] giver folk mulighed for at udforske de digitale kulturelle ressourcer i Europa",
+ "translate-group-desc-flaggedrevs": "Meta beskedgruppe der indeholder alle beskeder til MediaWiki udvidelsen [https://www.mediawiki.org/wiki/Extension:FlaggedRevs FlaggedRevs]",
+ "translate-group-desc-fuel": "[[Translating:FUEL|FUEL]] giver mere konsistens ved oversættelse af software",
+ "translate-group-desc-ihris": "En beskedgruppe for [[Translating:iHRIS|iHRIS]]",
+ "translate-group-desc-kiwix": "En beskedgruppe for [[Translating:Kiwix|Kiwix]]",
+ "translate-group-desc-mantisbt-plugin-core": "Et centralt plugin til [[Translating:MantisBT|MantisBT]]",
+ "translate-group-desc-mathjax": "[[Translating:MathJax|MathJax]] er et cross-browser JavaScript bibliotek, der viser matematisk notation i web-browsere",
+ "translate-group-desc-mediawiki-core-branch": "Beskeder til en stabil version af [[Translating:MediaWiki|MediaWiki]]",
+ "translate-group-desc-mediawikicore": "Denne beskedgruppe indeholder beskederne som bruges i den nuværende alfaversion af [[Translating:MediaWiki|MediaWiki]] ({{CURRENTVERSION}})",
+ "translate-group-desc-mediawikiextensions": "Meta beskedgruppe der indeholder alle beskeder til understøttede udvidelser til [[Translating:MediaWiki|MediaWiki]]",
+ "translate-group-desc-mediawikimostused": "Denne beskedgruppe indeholder de [https://translatewiki.net/wiki/Most_often_used_messages_in_MediaWiki 500 mest brugte beskeder] i [[Translating:MediaWiki|MediaWiki]]",
+ "translate-group-desc-mifos": "[[Translating:Mifos|Mifos]] er et management informationssystem for mikrofinansiering",
+ "translate-group-desc-nocc": "[[Translating:NOCC|NOCC]] er en webmail klient",
+ "translate-group-desc-nodesc": "Der er ikke nogen beskrivelse tilgængelig for denne gruppe af beskeder",
+ "translate-group-desc-openimages-all": "Disse meddelelser er en del af [[Translating:Open Images|Open Images]] projektet",
+ "translate-group-desc-potlatch2": "[[Translating:OpenStreetMap|Potlatch2]] er et Flash-baseret redigeringsprogram til OpenStreetMap",
+ "translate-group-desc-pywikipedia": "[[Translating:Pywikibot|Pywikibot]] er en samling af værktøjer til at redigere Wikipedia",
+ "translate-group-desc-readerfeedback": "Meta beskedgruppe der indeholder alle beskeder til MediaWiki udvidelsen [https://www.mediawiki.org/wiki/Extension:ReaderFeedback ReaderFeedback]",
+ "translate-group-desc-semantic": "Meta beskedgruppe, der indeholder alle beskeder for alle udvidelser til [https://semantic-mediawiki.org/ Semantisk MediaWiki]",
+ "translate-group-desc-translatablepages": "Alle sider som kan oversættes",
+ "translate-group-desc-translate": "Metabeskedgruppe, der indeholder alle beskeder til MediaWiki-udvidelsen [https://www.mediawiki.org/wiki/Extension:Translate Translate]; vær venlig at gøre dig bekendt med dens [https://www.mediawiki.org/wiki/Help:Extension:Translate/Glossar ordfortegnelse]",
+ "translate-group-desc-tsint": "En beskedgruppe for [[Translating:Intuition|Intuition]], i18n systemet til [//tools.wmflabs.org/ Toolserver] værktøjer (<span class=\"plainlinks\">[[Translating talk:Intuition|hjælp]]</span>)",
+ "translate-group-desc-vicuna": "[[Translating:VicuñaUploader|VicuñaUploader]] er et værktøj til at uploade filer til Wikimedia Commons og andre Wikimediaprojekter",
+ "translate-group-desc-waymarked-trails": "[[Translating:Waymarked Trails|Waymarked Trails]] er en tjeneste, der viser vandre-, cykel-, mountainbike- og rulleskøjteruter for hele verden. Den bruger GNU GPL-licensen.",
+ "translate-group-desc-waymarked-trails-help": "Hjælpesider for Waymarked Trails webstedet: http://waymarkedtrails.org/help/about",
+ "translate-group-desc-wikiaextensions": "Meta besked gruppe der indeholder alle beskeder til understøttede MediaWiki udvidelser brugt af [http://www.wikia.com Wikia]",
+ "translate-group-desc-wikimedia-mobile": "Aggregeret beskedgruppe, der indeholder mobile applikationer til Wikimediaprojekter",
+ "translate-group-desc-wikimediaextensions": "Meta besked gruppe der indeholder alle beskeder til understøttede MediaWiki udvidelser brugt af [https://wikimediafoundation.org/ Wikimedia Foundation]",
+ "translate-group-desc-wikimediaextensions-main": "Meta besked gruppe der indeholder alle beskeder til understøttede MediaWiki udvidelser der kræves oversættelse af for Wikimedia [https://meta.wikimedia.org/wiki/Language_committee Language committee]",
+ "translategroupdescriptions-desc": "Beskrivelser af beskedgrupper for produkter der understøttes af [https://mediawiki.org/wiki/Extension:Translate Translate] udvidelsen"
+}
diff --git a/MLEB/Translate/i18n/groupdescriptions/de.json b/MLEB/Translate/i18n/groupdescriptions/de.json
new file mode 100644
index 00000000..033a2e4e
--- /dev/null
+++ b/MLEB/Translate/i18n/groupdescriptions/de.json
@@ -0,0 +1,65 @@
+{
+ "@metadata": {
+ "authors": [
+ "Kghbln",
+ "Lyzzy",
+ "Metalhead64",
+ "Pill",
+ "The Evil IP address",
+ "Umherirrender"
+ ]
+ },
+ "bw-desc-freecol": "Vor dem Übersetzungsstart für FreeCol bitte [[Translating:FreeCol]] lesen. FreeCol nutzt die GPL-Lizenz.",
+ "bw-desc-fudforum": "[http://fudforum.org/ FUDforum], ein in PHP geschriebenes Web-Forum.",
+ "bw-desc-mantisbt": "[[Translating:MantisBT|MantisBT]] ist ein internetgestütztes Bug-Tracking-System",
+ "bw-desc-openstreetmap": "Diese Gruppe beinhaltet die Nachrichten für [[Translating:OpenStreetMap|OpenStreetMap]]",
+ "bw-desc-osm-site": "Diese Gruppe beinhaltet die Nachrichten der Benutzeroberfläche für [[Translating:Open Street Map|Open Street Map]].",
+ "bw-desc-wikiblame": "[http://wikipedia.ramselehof.de/wikiblame.php Wikiblame] ermöglicht das schnelle Finden eines Autoren einer Seite auf Wikis der Wikimedia Foundation.",
+ "translate-group-desc-blockly": "Eine Nachrichtengruppe für [[Translating:Blockly|Blockly]]",
+ "translate-group-desc-bluespice": "Diese Meta-Nachrichtengruppe enthält alle Nachrichten für die MediaWiki-[https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:BlueSpice Blue-Spice]-Erweiterungen.",
+ "translate-group-desc-collection": "Diese Hauptgruppe beinhaltet alle Systemnachrichten für die MediaWiki-Erweiterung [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Collection Collection]",
+ "translate-group-desc-eol": "Nachrichten für die [[Translating:EOL|Enzyklopädie des Lebens]]",
+ "translate-group-desc-etherpad-lite": "[[Translating:Etherpad lite|Etherpad lite]] ist ein kollaborativer Echtzeiteditor",
+ "translate-group-desc-europeana": "[[Translating:Europeana|Europeana 1914–1918]] ist eine Website mit Geschichten, Filmen und historischem Material über den Ersten Weltkrieg",
+ "translate-group-desc-flaggedrevs": "Diese Hauptgruppe beinhaltet alle Systemnachrichten für die MediaWiki-Erweiterung [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:FlaggedRevs FlaggedRevs]",
+ "translate-group-desc-fuel": "[[Translating:FUEL|FUEL]] bringt mehr Konsistenz in Softwareübersetzungen",
+ "translate-group-desc-huggle": "[[Translating:Huggle|Huggle]] ist eine schnelle Unterschieds-Browseranwendung für den Umgang mit Vandalismus auf Wikimedia-Projekten",
+ "translate-group-desc-ihris": "Nachrichten für [[Translating:iHRIS|iHRIS]]",
+ "translate-group-desc-kiwix": "Nachrichten für [[Translating:Kiwix|Kiwix]]",
+ "translate-group-desc-mantisbt-plugin-core": "Ein Haupt-Plugin für [[Translating:MantisBT|MantisBT]]",
+ "translate-group-desc-mathjax": "[[Translating:MathJax|MathJax]] ist eine browserübergreifende JavaScript-Bibliothek zum Anzeigen von mathematischen Notationen in Webbrowsern",
+ "translate-group-desc-mediawiki-core-branch": "Nachrichten für eine stabile Version von [[Translating:MediaWiki|MediaWiki]]",
+ "translate-group-desc-mediawikiapi": "Diese Nachrichtengruppe enthält die in der Action-API verwendeten Nachrichten für die aktuelle Alpha-Version von [[Translating:MediaWiki|MediaWiki]] ({{CURRENTVERSION}})",
+ "translate-group-desc-mediawikicore": "Diese Gruppe beinhaltet alle Nachrichten der aktuellen alpha-Version von MediaWiki ({{CURRENTVERSION}})",
+ "translate-group-desc-mediawikiextensions": "Diese Hauptgruppe beinhaltet alle Systemnachrichten der von MediaWiki unterstützten Erweiterungen",
+ "translate-group-desc-mediawikiskins": "Metanachrichtengruppe, die alle Nachrichten für unterstützte [[Translating:MediaWiki|MediaWiki]]-Benutzeroberflächen beinhaltet.",
+ "translate-group-desc-mediawikimostused": "Diese Gruppe beinhaltet die [https://translatewiki.net/wiki/Most_often_used_messages_in_MediaWiki 500 am häufigsten genutzten Nachrichten] in [[Translating:MediaWiki|MediaWiki]]",
+ "translate-group-desc-mifos": "[[Translating:Mifos|Mifos]] ist ein Managementinformationssystem für Mikrofinanzinstitutionen",
+ "translate-group-desc-nfcring-control": "[[Translating:NFC_Ring_Control|NFC Ring Control]] ist eine mobile App zur Interaktion mit NFC-Tags",
+ "translate-group-desc-nocc": "[http://nocc.sourceforge.net NOCC] ist ein in PHP geschriebener Webmail-Client. Fragen und Fehler sollten auf [[Support]] berichtet werden.",
+ "translate-group-desc-nodesc": "Für diese Nachrichtengruppe ist keine Beschreibung verfügbar",
+ "translate-group-desc-openimages-all": "Diese Nachrichten sind Teil des [[Translating:Open Images|Open Images]]-Projekts",
+ "translate-group-desc-potlatch2": "[[Translating:OpenStreetMap|Potlatch2]] ein Flash-gestützter OpenStreetMap-Editor",
+ "translate-group-desc-pywikipedia": "[[Translating:Pywikibot|Pywikibot]] ist eine Sammlung von Werkzeugen zum Bearbeiten der Wikipedia",
+ "translate-group-desc-readerfeedback": "Diese Hauptgruppe beinhaltet alle Systemnachrichten für die MediaWiki-Erweiterung [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:ReaderFeedback ReaderFeedback]",
+ "translate-group-desc-semantic": "Diese Hauptgruppe beinhaltet alle Systemnachrichten für die MediaWiki-Erweiterung [https://semantic-mediawiki.org/wiki/Semantic_MediaWiki_–_Startseite Semantic MediaWiki] und ihren verbundenen Erweiterungen",
+ "translate-group-desc-translatablepages": "Alle übersetzbaren Seiten",
+ "translate-group-desc-translate": "Diese Hauptgruppe beinhaltet alle Systemnachrichten für die MediaWiki-Erweiterung [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Translate Translate]; bitte gruppiere sie selbst mit dem [https://www.mediawiki.org/wiki/Help:Extension:Translate/Glossary Glossar].",
+ "translate-group-desc-tsint": "Eine Nachrichtengruppe für [[Translating:Intuition|Intuition]], das I18n-System für die Werkzeuge von [//tools.wmflabs.org/ Wikimedia Tool Labs] (<span class=\"plainlinks\">[[Translating talk:Intuition|Unterstützung]]</span>)",
+ "translate-group-desc-universallanguageselector": "Meta-Nachrichtengruppe, die alle Nachrichten für die MediaWiki-Erweiterung „[https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:UniversalLanguageSelector UniversalLanguageSelector]“ (ULS) und verwandte Softwarepakete enthält.",
+ "translate-group-desc-vicuna": "[[Translating:VicuñaUploader|VicuñaUploader]] ist ein Werkzeug zum Hochladen von Dateien auf Wikimedia Commons und anderen Wikimedia-Projekten",
+ "translate-group-desc-visualeditor": "Meta-Nachrichtengruppe, die alle Nachrichten für die MediaWiki-Erweiterung „[https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:VisualEditor VisualEditor]“ und die damit verbundenen Softwarepakete enthält.",
+ "translate-group-desc-waymarked-trails": "[[Translating:Waymarked Trails|Waymarked Trails]] ist ein Dienst, der Routen zum Wandern, Radeln, Mountainbiking und Skating auf der gesamten Welt darstellt. Er verwendet die Lizenz GNU GPL",
+ "translate-group-desc-waymarked-trails-help": "Die Hilfeseiten der „Waymarked Trails“-Websites: http://waymarkedtrails.org/help/about",
+ "translate-group-desc-wikiaextensions": "Diese Hauptgruppe beinhaltet alle Systemnachrichten der unterstützten MediaWiki-Erweiterungen, die von [http://www.wikia.com Wikia] genutzt werden",
+ "translate-group-desc-wikimania-scholarships-app": "Nachrichtengruppe für die [https://scholarships.wikimedia.org/apply Wikimania-Stipendien-Anwendung]",
+ "translate-group-desc-wikimedia-mobile": "Die zusammengefasste Nachrichtengruppe enthält mobile Anwendungen für Wikimedia-Projekte",
+ "translate-group-desc-wikimedia-mobile-wikipedia": "[[Translating:WikipediaMobile|WikipediaMobile]] ist eine plattformunabhängige Mobil- und Tabletanwendung zum Lesen und Bearbeiten von Wikipedia",
+ "translate-group-desc-wikimedia-mobile-wikipedia-android": "[[Translating:WikipediaMobile|Wikipedia Android]] ist die Android-spezifische Version der Wikipedia-Mobile-App",
+ "translate-group-desc-wikimedia-mobile-wikipedia-ios": "[[Translating:WikipediaMobile|Wikipedia iOS]] ist die iOS-spezifische Version der Wikipedia-Mobile-App",
+ "translate-group-desc-wikimedia-mobile-wikisource": "[[Translating:WikisourceMobile|WikisourceMobile]] ist eine plattformunabhängige Mobil- und Tabletanwendung zum Lesen und Bearbeiten von Wikisource",
+ "translate-group-desc-wikimedia-mobile-wiktionary": "[[Translating:WiktionaryMobile|WiktionaryMobile]] ist eine plattformunabhängige Mobil- und Tabletanwendung zum Lesen und Bearbeiten von Wiktionary",
+ "translate-group-desc-wikimediaextensions": "Diese Hauptgruppe beinhaltet alle Systemnachrichten der unterstützten MediaWiki-Erweiterungen, die von der [https://wikimediafoundation.org/ Wikimedia Foundation] genutzt werden",
+ "translate-group-desc-wikimediaextensions-main": "Diese Hauptgruppe beinhaltet alle Systemnachrichten der unterstützten MediaWiki-Erweiterungen, die vom Wikimedia [https://meta.wikimedia.org/wiki/Special:MyLanguage/Language_committee Sprachenkomitee] genutzt werden",
+ "translategroupdescriptions-desc": "Beschreibung der Nachrichtengruppen von Projekten, die bei der Übersetzung von der Programmerweiterung [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Translate „Translate“] unterstützt werden"
+}
diff --git a/MLEB/Translate/i18n/groupdescriptions/diq.json b/MLEB/Translate/i18n/groupdescriptions/diq.json
new file mode 100644
index 00000000..38cd1f9c
--- /dev/null
+++ b/MLEB/Translate/i18n/groupdescriptions/diq.json
@@ -0,0 +1,15 @@
+{
+ "@metadata": {
+ "authors": [
+ "Erdemaslancan",
+ "Mirzali"
+ ]
+ },
+ "translate-group-desc-collection": "MediaWiki ra qandê [https://www.mediawiki.org/wiki/Extension:Collection Koleksiyonanê] grube mesacê MediaWiki",
+ "translate-group-desc-eol": "Seba [[Translating:EOL|Ensiklopediya Cıwiyayışi]] yew mesacê grube",
+ "translate-group-desc-ihris": "Seba [[Translating:iHRIS|iHRIS]]i yew mesacê grube",
+ "translate-group-desc-kiwix": "Seba [[Translating:Kiwix|Kiwix]]i yew mesacê grube",
+ "translate-group-desc-mediawikiextensions": "Mesacê gruba meta de mesacê ke pêro dezgehê destegdayışi rê qandê [[Translating:MediaWiki|MediaWiki]]y estê",
+ "translate-group-desc-translate": "MediaWiki ra qandê [https://www.mediawiki.org/wiki/Extension:Translate Açarnayışê] grube mesacê MediaWiki",
+ "translate-group-desc-wikiaextensions": "MediaWiki ra qandê mesacan dê [http://www.wikia.com Wikia] ra itad karêno"
+}
diff --git a/MLEB/Translate/i18n/groupdescriptions/dsb.json b/MLEB/Translate/i18n/groupdescriptions/dsb.json
new file mode 100644
index 00000000..34df04f0
--- /dev/null
+++ b/MLEB/Translate/i18n/groupdescriptions/dsb.json
@@ -0,0 +1,56 @@
+{
+ "@metadata": {
+ "authors": [
+ "Michawiki",
+ "Lokal Profil"
+ ]
+ },
+ "bw-desc-freecol": "Nježli až pśełožujoš FreeCol do swójeje rěcy, pśecytaj pšosym [[Translating:FreeCol]]. FreeCol wužywa licencu GPL.",
+ "bw-desc-fudforum": "[http://fudforum.org/ FUDforum], webforum napisany w PHP.",
+ "bw-desc-mantisbt": "[[Translating:MantisBT|MantisBT]] jo swobodny system za slědowanje programowych zmólkow na zakłaźe weba. Pšosym daj problemy na boku [[Support|Pódpěra]] k wěsći.",
+ "bw-desc-openstreetmap": "Kupka powěźeńkow za wšykne powěźeńki z [[Translating:OpenStreetMap|OpenStreetMap]]",
+ "bw-desc-osm-site": "Toś ta kupka powěźeńkow wopśimujo powěźeńki wužywarskego powjercha za [[Translating:Open Street Map|Open Street Map]]",
+ "bw-desc-wikiblame": "[http://wikipedia.ramselehof.de/wikiblame.php Wikiblame] móžo awtorow boka we wikiju Wikimedije malsnje namakaś.",
+ "translate-group-desc-blockly": "Kupka powěźeńkow za [[Translating:Blockly|Blockly]]",
+ "translate-group-desc-collection": "Toś ta głowna kupka wopśimujo wše powěźeńki za rozšyrjenje MediaWiki [https://www.mediawiki.org/wiki/Extension:Collection Collection]",
+ "translate-group-desc-eol": "Kupka powěźeńkow za [[Translating:EOL|Encyclopedia of Life]]",
+ "translate-group-desc-etherpad-lite": "[[Translating:Etherpad lite|Etherpad lite]] jo editor we napšawdnem casu za zgromadne źěło",
+ "translate-group-desc-europeana": "[[Translating:Europeana|Europeana]] zmóžnja luźim digitalne kulturne resurse Europy pśeslěźiś",
+ "translate-group-desc-flaggedrevs": "Toś ta głowna kupka wopśimujo wše powěźeńki za rozšyrjenje MediaWiki [https://www.mediawiki.org/wiki/Extension:FlaggedRevs FlaggedRevs]",
+ "translate-group-desc-fuel": "[[Translating:FUEL|FUEL]] pśinjaso wěcej konsistence do softwarowego pśełožowanja",
+ "translate-group-desc-ihris": "Kupka powěźeńkow za [[Translating:iHRIS|iHRIS]]",
+ "translate-group-desc-kiwix": "Kupka powěźeńkow za [[Translating:Kiwix|Kiwix]]",
+ "translate-group-desc-mantisbt-plugin-core": "Głowny tykac za [[Translating:MantisBT|MantisBT]]",
+ "translate-group-desc-mathjax": "[[Translating:MathJax|MathJax]] jo JavaScriptowa biblioteka za wšake wobglědowaki, kótaraž zwobraznjujo matematiske notacije we webwobglědowakach.",
+ "translate-group-desc-mediawiki-core-branch": "Powěźeńki za stabilnu wersiju [[Translating:MediaWiki|MediaWiki]]",
+ "translate-group-desc-mediawikicore": "Toś ta kupka powěźeńkow wopśimujo powěźeńki, kótarež wužywaju se w aktualnej alfa-wersiji MediaWiki ({{CURRENTVERSION}})",
+ "translate-group-desc-mediawikiextensions": "Toś ta głowna kupka wopśimujo wše powěźeńki za pódpěrane rozšyrjenja MediaWiki",
+ "translate-group-desc-mediawikimostused": "Toś ta kupka powěźeńkow wopśimujo [https://translatewiki.net/wiki/Most_often_used_messages_in_MediaWiki 500 nejcesćej wužywanych powěźeńkow] w [[Translating:MediaWiki|MediaWiki]]",
+ "translate-group-desc-mifos": "[[Translating:Mifos|Mifos]] jo informaciski system managementa za mikrofinancěrowanje",
+ "translate-group-desc-nocc": "[http://nocc.sourceforge.net NOCC] jo webmailowy klient spisany w PHP. Pšosym daj problemy na boku [[Support|Pódpěra]] k wěsći.",
+ "translate-group-desc-nodesc": "Wopisanje njestoj k dispoziciji za toś tu kupku.",
+ "translate-group-desc-openimages-all": "Toś te powěźeńki su źěl projekta [[Translating:Open Images|Open Images]]",
+ "translate-group-desc-potlatch2": "[[Translating:OpenStreetMap|Potlatch2]] jo editor za OpenStreetMap, kótaryž na Flash bazěrujo",
+ "translate-group-desc-pywikipedia": "[[Translating:Pywikibot|Pywikibot]] jo zběrka rědow za wobźěłowanjoju Wikipedije",
+ "translate-group-desc-readerfeedback": "Metakupka powěźeńkow, kótaraž wopśimujo wše powěźeńki za rozšyrjenje MediaWiki\n[https://www.mediawiki.org/wiki/Extension:ReaderFeedback ReaderFeedback]",
+ "translate-group-desc-semantic": "Głowna zdźěleńska kupka, kótaraž wopśimujo wšykne powěźeńki za wšykne rozšyrjenja [https://semantic-mediawiki.org/ Semantic MediaWiki]",
+ "translate-group-desc-translatablepages": "Wšykne pśełožujobne boki",
+ "translate-group-desc-translate": "Toś ta głowna kupka wopśimujo wše powěźeńki za rozšyrjenje MediaWiki [https://www.mediawiki.org/wiki/Extension:Translate Translate]; pšosym wopóznaj se z jogo [https://www.mediawiki.org/wiki/Help:Extension:Translate/Glossary glosarom]",
+ "translate-group-desc-tsint": "Zdźěleńska kupka za [[Translating:Intuition|Intuition]], i18n-system za rědy [//tools.wmflabs.org/ Toolserver] (<span class=\"plainlinks\">[[Translating talk:Intuition|pódpěra]] </span>)",
+ "translate-group-desc-universallanguageselector": "Metakupka powěźeńkow, kótaraž wopśimujo wšykne powěźeńki za rozšyrjenje MediaWiki [https://www.mediawiki.org/wiki/Extension:UniversalLanguageSelector UniversalLanguageSelector] (ULS) a pśisłušne softwarowe pakśiki",
+ "translate-group-desc-vicuna": "[[Translating:VicuñaUploader|VicuñaUploader]] jo rěd za nagrawanje datajow do Wikimedia Commons a drugich wikimedijowych projektow",
+ "translate-group-desc-visualeditor": "Metakupka powěźeńkow, kótaraž wopśimujo wšykne powěźeńki za rozšyrjenje MediaWiki [https://www.mediawiki.org/wiki/Extension:VisualEditor VisualEditor] a pśisłušne softwarowe pakśiki.",
+ "translate-group-desc-waymarked-trails": "[[Translating:Waymarked Trails|Waymarked Trails]] jo słužba, kótaraž ruty za drogowanje, kólasowanje, mountainbikowanje a skating na cełem swěśe pokazujo. Wužywa licencu GNU GPL",
+ "translate-group-desc-waymarked-trails-help": "Boki pomocy websedłow za Waymarked Trails: http://waymarkedtrails.org/help/about",
+ "translate-group-desc-wikiaextensions": "Toś ta głowna kupka wopśimujo wše powěźeńki za pódpěrane rozšyrjenja MediaWiki, kótarež wužywaju se pśez [http://www.wikia.com Wikia]",
+ "translate-group-desc-wikimania-scholarships-app": "Kupka powěźeńkow za [https://scholarships.wikimedia.org/apply stipendiumowe nałoženje Wikimania]",
+ "translate-group-desc-wikimedia-mobile": "Metakupka powěźeńkow, kótaraž wopśimujo mobilne nałoženja za Wikimedijowe projekty",
+ "translate-group-desc-wikimedia-mobile-wikipedia": "[[Translating:WikipediaMobile|WikipediaMobile]] jo nałoženje za mobilne rědy a tablety za cytanje a sobuźěło we Wikipediji",
+ "translate-group-desc-wikimedia-mobile-wikipedia-android": "[[Translating:WikipediaMobile|Wikipedija Android]] jo specifiska wersija za Android nałoženja Wikipedia mobile",
+ "translate-group-desc-wikimedia-mobile-wikipedia-ios": "[[Translating:WikipediaMobile|Wikipedia iOS]] jo wersija iOS nałoženja Wikipedia mobile",
+ "translate-group-desc-wikimedia-mobile-wikisource": "[[Translating:WikisourceMobile|WikisourceMobile]] jo nałoženje za mobilne rědy a tablety za cytanje a sobuźěło we Wikižrědle",
+ "translate-group-desc-wikimedia-mobile-wiktionary": "[[Translating:WiktionaryMobile|WiktionaryMobile]] jo nałoženje za mobilne rědy a tablety za cytanje a sobuźěło we Wikisłowniku",
+ "translate-group-desc-wikimediaextensions": "Toś ta głowna kupka wopśimujo wše powěźeńki za pódpěrane rozšyrjenja MediaWiki, kótarež wužywaju se pśez [https://wikimediafoundation.org/ Wikimedia Foundation]",
+ "translate-group-desc-wikimediaextensions-main": "Metakupka powěźeńkow, kótaraž wopśimujo wšykne powěźeńki za pódpěrane rozšyrjenja MediaWiki, kótarež muse se za [https://meta.wikimedia.org/wiki/Language_committee Rěcny komitej] Wikimedije pśełožyś",
+ "translategroupdescriptions-desc": "Wopisanja kupkow powěźeńkow za produkty pódpěrane wót rozšyrjenja [https://mediawiki.org/wiki/Extension:Translate Translate]"
+}
diff --git a/MLEB/Translate/i18n/groupdescriptions/el.json b/MLEB/Translate/i18n/groupdescriptions/el.json
new file mode 100644
index 00000000..ec1b5f95
--- /dev/null
+++ b/MLEB/Translate/i18n/groupdescriptions/el.json
@@ -0,0 +1,18 @@
+{
+ "@metadata": {
+ "authors": [
+ "Dead3y3",
+ "Omnipaedista",
+ "Protnet",
+ "ZaDiak",
+ "Lokal Profil"
+ ]
+ },
+ "bw-desc-freecol": "Πριν μεταφράσετε το FreeCol στη γλώσσα σας, παρακαλώ διαβάστε το [[Translating:FreeCol]]. Το Freecol χρησιμοποιεί την GPL άδεια χρήσης.",
+ "bw-desc-fudforum": "[http://fudforum.org/ FUDforum], ένα διαδικτυακό φόρουμ γραμμένο σε PHP.",
+ "bw-desc-mantisbt": "Το [[Translating:MantisBT|MantisBT]] είναι ένα δωρεάν web-based σύστημα εντοπισμού σφαλμάτων. Παρακαλώ αναφέρετε όποια προβλήματα στην [[Support|Υποστήριξη]].",
+ "bw-desc-osm-site": "Αυτή η ομάδα μηνυμάτων περιέχει τα μηνύματα διεπαφής για το [[Translating:Open Street Map|Open Street Map]].\nΔείτε την [http://unicode.org/repos/cldr-tmp/trunk/diff/supplemental/language_plural_rules.html#{{UILANGCODE}} σελίδα Unicode CLDR για εξήγηση των κλειδιών πληθυντικού].",
+ "bw-desc-wikiblame": "Το [http://wikipedia.ramselehof.de/wikiblame.php Wikiblame] είναι σε θέση να βρει γρήγορα τους συντάκτες μιας σελίδας σε ένα wiki Wikimedia.",
+ "translate-group-desc-mediawikicore": "Αυτή η ομάδα μηνυμάτων περιέχει μηνύματα που χρησιμοποιούνται στην τρέχουσα alpha έκδοση του [[Translating:MediaWiki|MediaWiki]] ({{CURRENTVERSION}})",
+ "translate-group-desc-nocc": "To [http://nocc.sourceforge.net NOCC] είναι ένας webmail client γραμμένος στη PHP. Παρακαλώ αναφέρετε οποιαδήποτε προβλήματα στην [[Support|Υποστήριξη]]."
+}
diff --git a/MLEB/Translate/i18n/groupdescriptions/en-gb.json b/MLEB/Translate/i18n/groupdescriptions/en-gb.json
new file mode 100644
index 00000000..9010ac2e
--- /dev/null
+++ b/MLEB/Translate/i18n/groupdescriptions/en-gb.json
@@ -0,0 +1,9 @@
+{
+ "@metadata": {
+ "authors": [
+ "Shirayuki"
+ ]
+ },
+ "translate-group-desc-translate": "Meta message group containing all messages for the MediaWiki extension [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Translate Translate]; please familiarise yourself with its [https://www.mediawiki.org/wiki/Help:Extension:Translate/Glossary glossary]",
+ "translate-group-desc-waymarked-trails": "[[Translating:Waymarked Trails|Waymarked Trails]] is a service showing routes for hiking, cycling, mountain biking and inline skating around the world. It uses the GNU GPL licence"
+}
diff --git a/MLEB/Translate/i18n/groupdescriptions/en.json b/MLEB/Translate/i18n/groupdescriptions/en.json
new file mode 100644
index 00000000..76907c31
--- /dev/null
+++ b/MLEB/Translate/i18n/groupdescriptions/en.json
@@ -0,0 +1,58 @@
+{
+ "@metadata": {
+ "authors": []
+ },
+ "bw-desc-freecol": "[[Translating:FreeCol|FreeCol]] is a turn-based strategy game",
+ "bw-desc-fudforum": "[[Translating:FUDforum|FUDforum]] is web-based discussion forum software",
+ "bw-desc-mantisbt": "[[Translating:MantisBT|MantisBT]] is web-based issue tracking software",
+ "bw-desc-openstreetmap": "All messages related to [[Translating:OpenStreetMap|OpenStreetMap]]",
+ "bw-desc-osm-site": "[[Translating:OpenStreetMap|OpenStreetMap]] is an editable map of the whole world",
+ "bw-desc-wikiblame": "[[Translating:WikiBlame|WikiBlame]] is able to quickly find the authors of a part of a page in a Wikimedia wiki",
+ "translate-group-desc-blockly": "A message group for [[Translating:Blockly|Blockly]]",
+ "translate-group-desc-bluespice": "Meta message group containing all messages for the MediaWiki [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:BlueSpice Blue Spice] extensions",
+ "translate-group-desc-collection": "Meta message group containing all messages for the MediaWiki extension [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Collection Collection]",
+ "translate-group-desc-eol": "A message group for [[Translating:EOL|Encyclopedia of Life]]",
+ "translate-group-desc-etherpad-lite": "[[Translating:Etherpad lite|Etherpad lite]] is a really-real time collaborative editor",
+ "translate-group-desc-europeana": "[[Translating:Europeana|Europeana 1914-1918]] is a website with stories, films and historical material about the World War I",
+ "translate-group-desc-flaggedrevs": "Meta message group containing all messages for the MediaWiki extension [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:FlaggedRevs FlaggedRevs]",
+ "translate-group-desc-fuel": "[[Translating:FUEL|FUEL]] brings more consistency to software translation",
+ "translate-group-desc-huggle": "[[Translating:Huggle|Huggle]] is a fast diff browser application for dealing with vandalism on Wikimedia projects",
+ "translate-group-desc-ihris": "A message group for [[Translating:iHRIS|iHRIS]]",
+ "translate-group-desc-kiwix": "A message group for [[Translating:Kiwix|Kiwix]]",
+ "translate-group-desc-mantisbt-plugin-core": "A core plugin for [[Translating:MantisBT|MantisBT]]",
+ "translate-group-desc-mathjax": "[[Translating:MathJax|MathJax]] is a cross-browser JavaScript library that displays mathematical notation in web browsers",
+ "translate-group-desc-mediawiki-core-branch": "Messages for a stable version of [[Translating:MediaWiki|MediaWiki]]",
+ "translate-group-desc-mediawikiapi": "This message group contains the messages used in the Action API for the current alpha version of [[Translating:MediaWiki|MediaWiki]] ({{CURRENTVERSION}})",
+ "translate-group-desc-mediawikicore": "This message group contains the messages used in the current alpha version of [[Translating:MediaWiki|MediaWiki]] ({{CURRENTVERSION}})",
+ "translate-group-desc-mediawikiextensions": "Meta message group containing all messages for supported extensions for [[Translating:MediaWiki|MediaWiki]]",
+ "translate-group-desc-mediawikiskins": "Meta message group containing all messages for supported skins for [[Translating:MediaWiki|MediaWiki]]",
+ "translate-group-desc-mediawikimostused": "This message group contains the [https://translatewiki.net/wiki/Most_often_used_messages_in_MediaWiki 500 most often used messages] in [[Translating:MediaWiki|MediaWiki]]",
+ "translate-group-desc-mifos": "[[Translating:Mifos|Mifos]] is a management information system for microfinance",
+ "translate-group-desc-nfcring-control": "[[Translating:NFC_Ring_Control|NFC Ring Control]] is a mobile app to interact with NFC tags",
+ "translate-group-desc-nocc": "[[Translating:NOCC|NOCC]] is a webmail client",
+ "translate-group-desc-nodesc": "No description is available for this message group",
+ "translate-group-desc-openimages-all": "These messages are part of the [[Translating:Open Images|Open Images]] project",
+ "translate-group-desc-potlatch2": "[[Translating:OpenStreetMap|Potlatch2]] is a Flash-based OpenStreetMap editor",
+ "translate-group-desc-pywikipedia": "[[Translating:Pywikibot|Pywikibot]] is a collection of tools to edit Wikipedia",
+ "translate-group-desc-readerfeedback": "Meta message group containing all messages for the MediaWiki extension [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:ReaderFeedback ReaderFeedback]",
+ "translate-group-desc-semantic": "Meta message group containing all messages for all [https://semantic-mediawiki.org/ Semantic MediaWiki] extensions",
+ "translate-group-desc-translatablepages": "All translatable pages",
+ "translate-group-desc-translate": "Meta message group containing all messages for the MediaWiki extension [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Translate Translate]; please familiarize yourself with its [https://www.mediawiki.org/wiki/Help:Extension:Translate/Glossary glossary]",
+ "translate-group-desc-tsint": "A message group for [[Translating:Intuition|Intuition]], the i18n system for [//tools.wmflabs.org/ Wikimedia Tool Labs] tools (<span class=\"plainlinks\">[[Translating talk:Intuition|support]]</span>)",
+ "translate-group-desc-universallanguageselector": "Meta message group containing all messages for the MediaWiki extension [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:UniversalLanguageSelector UniversalLanguageSelector] (ULS) and related software packages",
+ "translate-group-desc-vicuna": "[[Translating:VicuñaUploader|VicuñaUploader]] is a tool to upload files to Wikimedia Commons and other Wikimedia projects",
+ "translate-group-desc-visualeditor": "Meta message group containing all messages for the MediaWiki extension [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:VisualEditor VisualEditor] and related software packages",
+ "translate-group-desc-waymarked-trails": "[[Translating:Waymarked Trails|Waymarked Trails]] is a service showing routes for hiking, cycling, mountain biking and inline skating around the world. It uses the GNU GPL license",
+ "translate-group-desc-waymarked-trails-help": "The help pages of the Waymarked Trails web sites: http://waymarkedtrails.org/help/about",
+ "translate-group-desc-wikiaextensions": "Meta message group containing all messages for supported MediaWiki extensions used by [http://www.wikia.com Wikia]",
+ "translate-group-desc-wikimania-scholarships-app": "Message group for the [https://scholarships.wikimedia.org/apply Wikimania Scholarship application]",
+ "translate-group-desc-wikimedia-mobile": "Aggregate message group containing mobile applications for Wikimedia projects",
+ "translate-group-desc-wikimedia-mobile-wikipedia": "[[Translating:WikipediaMobile|WikipediaMobile]] is a cross-platform mobile and tablet application for reading and contributing to Wikipedia",
+ "translate-group-desc-wikimedia-mobile-wikipedia-android": "[[Translating:WikipediaMobile|Wikipedia Android]] is the Android-specific version of the Wikipedia mobile app",
+ "translate-group-desc-wikimedia-mobile-wikipedia-ios": "[[Translating:WikipediaMobile|Wikipedia iOS]] is the iOS-specific version of the Wikipedia mobile app",
+ "translate-group-desc-wikimedia-mobile-wikisource": "[[Translating:WikisourceMobile|WikisourceMobile]] is a cross-platform mobile and tablet application for reading and contributing to Wikisource",
+ "translate-group-desc-wikimedia-mobile-wiktionary": "[[Translating:WiktionaryMobile|WiktionaryMobile]] is a cross-platform mobile and tablet application for reading and contributing to Wiktionary",
+ "translate-group-desc-wikimediaextensions": "Meta message group containing all messages for supported MediaWiki extensions used by the [https://wikimediafoundation.org/ Wikimedia Foundation]",
+ "translate-group-desc-wikimediaextensions-main": "Meta message group containing all messages for supported MediaWiki extensions required to be translated for the Wikimedia [https://meta.wikimedia.org/wiki/Special:MyLanguage/Language_committee Language committee]",
+ "translategroupdescriptions-desc": "Message group descriptions for products supported by the [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Translate Translate] extension"
+}
diff --git a/MLEB/Translate/i18n/groupdescriptions/eo.json b/MLEB/Translate/i18n/groupdescriptions/eo.json
new file mode 100644
index 00000000..fdefb9e8
--- /dev/null
+++ b/MLEB/Translate/i18n/groupdescriptions/eo.json
@@ -0,0 +1,21 @@
+{
+ "@metadata": {
+ "authors": [
+ "ArnoLagrange",
+ "Blahma",
+ "Petrus Adamus"
+ ]
+ },
+ "bw-desc-freecol": "Antaŭ tradukante FreeCol al via lingvo, bonvolu legi [[Translating:FreeCol]]. FreeCol uzas la Ĝeneralan Publikan Permesilon.",
+ "translate-group-desc-collection": "Meta-mesaĝogrupo enhavanta ĉiujn mesaĝojn por subtenitaj etendaĵoj por MediaWiki [https://www.mediawiki.org/wiki/Extension:Collection Kolekto]",
+ "translate-group-desc-flaggedrevs": "Meta-mesaĝogrupo enhavanta ĉiujn mesaĝojn por subtenitaj etendaĵoj por MediaWiki [https://www.mediawiki.org/wiki/Extension:FlaggedRevs Reviziitaj versioj]",
+ "translate-group-desc-mediawikicore": "Ĉi tiu mesaĝogrupo enhavas la mesaĝojn uzitajn en la aktuala alpha-versio de MediaWiki ({{CURRENTVERSION}})",
+ "translate-group-desc-mediawikiextensions": "Meta-mesaĝogrupo enhavanta ĉiujn mesaĝojn por subtenitaj etendaĵoj por MediaWiki",
+ "translate-group-desc-mediawikimostused": "Ĉi tiu mesaĝogrupo enhavas la [https://translatewiki.net/wiki/Most_often_used_messages_in_MediaWik 500 plej ofte uzitajn mesaĝojn] en MediaWiki",
+ "translate-group-desc-nodesc": "Neniu priskribo estas havebla por ĉi tiu mesaĝogrupo",
+ "translate-group-desc-readerfeedback": "Meta-mesaĝogrupo enhavanta ĉiujn mesaĝojn por subtenitaj etendaĵoj por MediaWiki [https://www.mediawiki.org/wiki/Extension:ReaderFeedback Reagoj de legantoj]",
+ "translate-group-desc-translate": "Meta-mesaĝogrupo enhavanta ĉiujn mesaĝojn por subtenitaj etendaĵoj por MediaWiki [https://www.mediawiki.org/wiki/Extension:Translate Tradukado]",
+ "translate-group-desc-wikiaextensions": "Meta-mesaĝogrupo enhavanta ĉiujn mesaĝojn por subtenitaj MediaWiki-etendaĵoj uzitaj de [http://www.wikia.com Wikia]",
+ "translate-group-desc-wikimediaextensions": "Meta-mesaĝogrupo enhavanta ĉiujn mesaĝojn por subtenitaj MediaWiki-etendaĵoj uzitaj de [https://wikimediafoundation.org/ Vikimedia Fondaĵo]",
+ "translategroupdescriptions-desc": "Priskriboj de la mesaĝgrupoj por produktoj subtenataj de la [https://mediawiki.org/wiki/Extension:Translate traduka kromprogramo]"
+}
diff --git a/MLEB/Translate/i18n/groupdescriptions/es.json b/MLEB/Translate/i18n/groupdescriptions/es.json
new file mode 100644
index 00000000..6bf7d16a
--- /dev/null
+++ b/MLEB/Translate/i18n/groupdescriptions/es.json
@@ -0,0 +1,71 @@
+{
+ "@metadata": {
+ "authors": [
+ "Armando-Martin",
+ "Crazymadlover",
+ "Dferg",
+ "Locos epraix",
+ "MarcoAurelio",
+ "Peter17",
+ "Translationista",
+ "Vivaelcelta",
+ "Fitoschido",
+ "Vfrico",
+ "Lokal Profil",
+ "Themasterriot",
+ "Macofe"
+ ]
+ },
+ "bw-desc-freecol": "[[Translating:FreeCol|FreeCol]] es un juego de estrategia por turnos",
+ "bw-desc-fudforum": "[[Translating:FUDforum|FUDforum]] es un software para crear foros webs de discusión",
+ "bw-desc-mantisbt": "[[Translating:MantisBT|MantisBT]] es un sistema web de seguimiento de incidentes de software",
+ "bw-desc-openstreetmap": "Todos los mensajes relacionados con [[Translating:OpenStreetMap|OpenStreetMap]]",
+ "bw-desc-osm-site": "[[Translating:OpenStreetMap|OpenStreetMap]] es un mapa editabledel mundo entero",
+ "bw-desc-wikiblame": "[[Translating:WikiBlame|WikiBlame]] es capaz de encontrar rápidamente los autores de una página en una wiki de Wikimedia",
+ "translate-group-desc-blockly": "Grupo de mensajes de [[Translating:Blockly|Blockly]]",
+ "translate-group-desc-bluespice": "Metagrupo que contiene todos los mensajes de la extensión [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:BlueSpice Blue Spice] de MediaWiki",
+ "translate-group-desc-collection": "Metagrupo que contiene todos los mensajes de la extensión [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Collection Collection] de MediaWiki",
+ "translate-group-desc-eol": "Grupo de mensajes de la [[Translating:EOL|Enciclopedia de la vida]]",
+ "translate-group-desc-etherpad-lite": "[[Translating:Etherpad lite|Etherpad lite]] es un editor colaborativo en tiempo real",
+ "translate-group-desc-europeana": "[[Translating:Europeana|Europeana 1914-1918]] es un sitio web con historias, películas y material histórico sobre la Primera Guerra Mundial",
+ "translate-group-desc-flaggedrevs": "Metagrupo que contiene todos los mensajes de la extensión [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:FlaggedRevs FlaggedRevs] de MediaWiki",
+ "translate-group-desc-fuel": "[[Translating:FUEL|FUEL]] aporta más consistencia a la traducción de software",
+ "translate-group-desc-huggle": "[[Translating:Huggle|Huggle]] es una aplicación de exploración rápida de cambios para lidiar con el vandalismo en los proyectos de Wikimedia",
+ "translate-group-desc-ihris": "Un grupo de mensajes de [[Translating:iHRIS|iHRIS]]",
+ "translate-group-desc-kiwix": "Un grupo de mensajes de [[Translating:Kiwix|Kiwix]]",
+ "translate-group-desc-mantisbt-plugin-core": "Un complemento principal para [[Translating:MantisBT|MantisBT]]",
+ "translate-group-desc-mathjax": "[[Translating:MathJax|MathJax]] es una biblioteca JavaScript multinavegador que muestra notación matemática en navegadores web",
+ "translate-group-desc-mediawiki-core-branch": "Mensajes para una versión estable de [[Translating:MediaWiki|MediaWiki]]",
+ "translate-group-desc-mediawikicore": "Este grupo de mensajes contiene los mensajes usados en la versión alfa actual de [[Translating:MediaWiki|MediaWiki]] ({{CURRENTVERSION}})",
+ "translate-group-desc-mediawikiextensions": "Metagrupo que contiene todos los mensajes de las extensiones admitidas por [[Translating:MediaWiki|MediaWiki]]",
+ "translate-group-desc-mediawikiskins": "Metagrupo que contiene todos los mensajes de las apariencias admitidas por [[Translating:MediaWiki|MediaWiki]]",
+ "translate-group-desc-mediawikimostused": "Este grupo de mensajes contiene los [https://translatewiki.net/wiki/Most_often_used_messages_in_MediaWiki 500 mensajes más comúnmente usados] en [[Translating:MediaWiki|MediaWiki]]",
+ "translate-group-desc-mifos": "[[Translating:Mifos|Mifos]] es un sistema de información de gestión (MIS) para microfinanzas",
+ "translate-group-desc-nfcring-control": "[[Translating:NFC_Ring_Control|NFC Ring Control]] es una aplicación para móviles para interactuar con etiquetas NFC",
+ "translate-group-desc-nocc": "[[Translating:NOCC|NOCC]] es un cliente de correo web",
+ "translate-group-desc-nodesc": "No hay descripción disponible para este grupo de mensaje",
+ "translate-group-desc-openimages-all": "Estos mensajes forman parte del proyecto [[Translating:Open Images|Open Images]]",
+ "translate-group-desc-potlatch2": "[[Translating:OpenStreetMap|Potlatch2]] es un editor de OpenStreetMap basado en Flash",
+ "translate-group-desc-pywikipedia": "[[Translating:Pywikibot|Pywikibot]] es una colección de herramientas para editar Wikipedia",
+ "translate-group-desc-readerfeedback": "Metagrupo que contiene todos los mensajes de la extensión [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:ReaderFeedback ReaderFeedback] de MediaWiki",
+ "translate-group-desc-semantic": "Metagrupo que contiene todos los mensajes de todas las extensiones de [https://semantic-mediawiki.org/ Semantic MediaWiki]",
+ "translate-group-desc-translatablepages": "Todas las páginas traducibles",
+ "translate-group-desc-translate": "Metagrupo que contiene todos los mensajes de la extensión [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Translate Translate] de MediaWiki; familiarízate por tí mismo con su [https://www.mediawiki.org/wiki/Help:Extension:Translate/Glossary glosario]",
+ "translate-group-desc-tsint": "Grupo de mensajes de [[Translating:Intuition|Intuition]], el sistema de traducción e internacionalización para las herramientas de [//tools.wmflabs.org/ Wikimedia Tool Labs] (<span class=\"plainlinks\">[[Translating talk:Intuition|asistencia]]</span>)",
+ "translate-group-desc-universallanguageselector": "Metagrupo que contiene todos los mensajes de la extensión [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:UniversalLanguageSelector Selector de Idioma Universal] (ULS) de MediaWiki y los paquetes de software relacionados",
+ "translate-group-desc-vicuna": "[[Translating:VicuñaUploader|VicuñaUploader]] es una herramienta para subir archivos a Wikimedia Commons y a otros proyectos de Wikimedia",
+ "translate-group-desc-visualeditor": "Metagrupo que contiene todos los mensajes de la extensión [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:VisualEditor Editor visual] de MediaWiki y los paquetes de software relacionados",
+ "translate-group-desc-waymarked-trails": "[[Translating:Waymarked Trails|Waymarked Trails]] es un servicio que muestra las rutas de senderismo, ciclismo, mountain bike y patinaje en todo el mundo. Utiliza la licencia GNU GPL",
+ "translate-group-desc-waymarked-trails-help": "Las páginas de ayuda de los sitios web de Waymarked Trails: http://waymarkedtrails.org/help/about",
+ "translate-group-desc-wikiaextensions": "Metagrupo que contiene todos los mensajes de las extensiones admitidas por MediaWiki que usa [http://www.wikia.com Wikia]",
+ "translate-group-desc-wikimania-scholarships-app": "Grupo de mensajes de la [https://scholarships.wikimedia.org/apply solicitud de becas de Wikimania]",
+ "translate-group-desc-wikimedia-mobile": "Grupo de mensajes agregados que contiene aplicaciones para móviles de los proyectos de Wikimedia",
+ "translate-group-desc-wikimedia-mobile-wikipedia": "[[Translating:WikipediaMobile|WikipediaMobile]] es una aplicación para dispositivos móviles y tabletas para leer y colaborar en Wikipedia",
+ "translate-group-desc-wikimedia-mobile-wikipedia-android": "[[Translating:WikipediaMobile|Wikipedia Android]] es la versión específica para Android de la aplicación de Wikipedia para móviles",
+ "translate-group-desc-wikimedia-mobile-wikipedia-ios": "[[Translating:WikipediaMobile|Wikipedia iOS]] es la versión específica para iOS de la aplicación de Wikipedia para móviles",
+ "translate-group-desc-wikimedia-mobile-wikisource": "[[Translating:WikisourceMobile|WikisourceMobile]] es una aplicación para dispositivos móviles y tabletas para leer y colaborar en Wikisource",
+ "translate-group-desc-wikimedia-mobile-wiktionary": "[[Translating:WiktionaryMobile|WiktionaryMobile]] es una aplicación para dispositivos móviles y tabletas para leer y colaborar en Wikipedia",
+ "translate-group-desc-wikimediaextensions": "Metagrupo que contiene todos los mensajes de las extensiones admitidas por MediaWiki que usa la [https://wikimediafoundation.org/ Fundación Wikimedia]",
+ "translate-group-desc-wikimediaextensions-main": "Grupo de meta mensajes que contiene todos los mensajes para extensiones MediaWiki compatibles que deben traducirse para el [https://meta.wikimedia.org/wiki/Special:MyLanguage/Language_committee Comité de idioma] de Wikimedia",
+ "translategroupdescriptions-desc": "Descripciones de los grupos de mensajes de los productos compatibles con la extensión [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Translate Translate]"
+}
diff --git a/MLEB/Translate/i18n/groupdescriptions/et.json b/MLEB/Translate/i18n/groupdescriptions/et.json
new file mode 100644
index 00000000..44c4058c
--- /dev/null
+++ b/MLEB/Translate/i18n/groupdescriptions/et.json
@@ -0,0 +1,10 @@
+{
+ "@metadata": {
+ "authors": [
+ "Hendrik",
+ "Pikne"
+ ]
+ },
+ "bw-desc-freecol": "Enne FreeCol'i tõlkimist oma keelde lugege palun [[Translating:FreeCol]]. FreeCol kasutab GPL litsentsi.",
+ "translate-group-desc-mediawikiskins": "Meta-sõnumirühm, mis sisaldab kõiki sõnumeid toetatud [[Translating:MediaWiki|MediaWiki]] kujunduste jaoks."
+}
diff --git a/MLEB/Translate/i18n/groupdescriptions/fa.json b/MLEB/Translate/i18n/groupdescriptions/fa.json
new file mode 100644
index 00000000..f519ddaf
--- /dev/null
+++ b/MLEB/Translate/i18n/groupdescriptions/fa.json
@@ -0,0 +1,55 @@
+{
+ "@metadata": {
+ "authors": [
+ "Ebraminio",
+ "Huji",
+ "Armin1392"
+ ]
+ },
+ "bw-desc-freecol": "[[Translating:FreeCol|FreeCol]] مبتنی بر یک بازی استراتژی است",
+ "bw-desc-fudforum": "[[Translating:FUDforum|FUDforum]] بحث مبتنی بر نرم‌افزار فروم است",
+ "bw-desc-mantisbt": "[[Translating:MantisBT|MantisBT]] وب مبتنی بر نرم‌افزار ردیابی است",
+ "bw-desc-openstreetmap": "همه پیام‌ها مربوط به [[Translating:OpenStreetMap|OpenStreetMap]] هستند",
+ "bw-desc-osm-site": "[[Translating:OpenStreetMap|نقشه خیابان باز]] یک نقشه قابل ویرایش همه جهان است",
+ "bw-desc-wikiblame": "[[Translating:WikiBlame|WikiBlame]] قادر به پیدا کردن سریع نویسندگان بخشی از صفحه در ویکی ویکی‌مدیا است",
+ "translate-group-desc-blockly": "گروه پیام برای [[Translating:Blockly|Blockly]]",
+ "translate-group-desc-collection": "گروه پیام متا شامل همه پیام‌هایی است برای گستره‌ مدیاویکی [https://www.mediawiki.org/wiki/Extension:Collection Collection]",
+ "translate-group-desc-eol": "گروه پیام برای [[Translating:EOL|دانشنامه زندگی]]",
+ "translate-group-desc-etherpad-lite": "[[Translating:Etherpad lite|Etherpad lite]] یک ویرایشگر مشترک زمان واقعاً واقعی است",
+ "translate-group-desc-flaggedrevs": "گروه پیام متا شامل همه پیام‌هایی است برای گستره‌ مدیاویکی [https://www.mediawiki.org/wiki/Extension:FlaggedRevs FlaggedRevs]",
+ "translate-group-desc-fuel": "[[Translating:FUEL|FUEL]] تداوم بیشتری برای ترجمه نرم‌افزار به ارمغان می‌آورد",
+ "translate-group-desc-ihris": "گروه پیام برای [[Translating:iHRIS|iHRIS]]",
+ "translate-group-desc-kiwix": "یک گروه پیام برای [[Translating:Kiwix|Kiwix]]",
+ "translate-group-desc-mantisbt-plugin-core": "پلاگین اصلی برای [[Translating:MantisBT|MantisBT]]",
+ "translate-group-desc-mathjax": "[[Translating:MathJax|مت جکس]] یک کتابخانه مرورگر جاوااسکریپت است که نماد ریاضی را در مرورگرهای وب نشان می‌دهد",
+ "translate-group-desc-mediawiki-core-branch": "پیام‌ها برای نسخه پایدار [[Translating:MediaWiki|مدیاویکی]]",
+ "translate-group-desc-mediawikicore": "این گروه پیغام حاوی پیغام‌های مورد استفاده در نسخهٔ آلفای فعلی [[Translating:MediaWiki|مدیاویکی]] ({{CURRENTVERSION}}) است",
+ "translate-group-desc-mediawikiextensions": "گروه پیام متا شامل همه پیام‌هایی است برای گستره‌های پشتیبانی شده برای [[Translating:MediaWiki|مدیاویکی]]",
+ "translate-group-desc-mediawikimostused": "این گروه پیام شامل [https://translatewiki.net/wiki/Most_often_used_messages_in_MediaWiki 500 most often used messages] در [[Translating:MediaWiki|مدیاویکی]] هستند.",
+ "translate-group-desc-mifos": "[[Translating:Mifos|میفوس]] یک مدیریت سامانهٔ اطلاعات برای خرده بودجه است",
+ "translate-group-desc-nodesc": "هیچ توصیفی برای این گروه پیام در دسترس نیست",
+ "translate-group-desc-openimages-all": "این پیام‌ها بخشی از پروژه [[Translating:Open Images|تصاویر باز]] هستند",
+ "translate-group-desc-potlatch2": "[[Translating:OpenStreetMap|Potlatch2]] مبتنی بر فلش ویرایشگر نقشه خیابان باز است",
+ "translate-group-desc-pywikipedia": "[[Translating:Pywikibot|Pywikibot]] مجموعه ابزار برای ویرایش ویکی‌پدیا است",
+ "translate-group-desc-readerfeedback": "گروه پیام متا شامل همه پیام‌هایی است برای گستره‌ مدیاویکی [https://www.mediawiki.org/wiki/Extension:ReaderFeedback ReaderFeedback]",
+ "translate-group-desc-semantic": "گروه پیام متا شامل همه پیام‌هایی است برای همه گستره‌های [https://semantic-mediawiki.org/ Semantic MediaWiki]",
+ "translate-group-desc-translatablepages": "همهٔ صفحات قابل ترجمه",
+ "translate-group-desc-translate": "گروه پیام متا شامل همه پیام‌هایی است برای گستره‌ مدیاویکی [https://www.mediawiki.org/wiki/Extension:Translate Translate]؛ برای آشنایی خود با [https://www.mediawiki.org/wiki/Help:Extension:Translate/Glossary glossary]",
+ "translate-group-desc-tsint": "گروه پیام برای [[Translating:Intuition|انستیتو]]، سامانهٔ بین‌اللمللی‌سازی برای ابزارهای [//tools.wmflabs.org/ تول‌سرور] (<span class=\"plainlinks\">[[Translating talk:Intuition|پشتیبانی]]</span>)",
+ "translate-group-desc-universallanguageselector": "گروه پیام متا شامل همه پیام‌هایی است برای گستره‌ مدیاویکی \n[https://www.mediawiki.org/wiki/Extension:UniversalLanguageSelector UniversalLanguageSelector] (ULS) و بسته‌های نرم‌افزاری مرتبط",
+ "translate-group-desc-vicuna": "[[Translating:VicuñaUploader|VicuñaUploader]] یک ابزار برای انتقال پوشه‌ها به ویکی‌مدیا عادی و دیگر پروژه‌های ویکی‌مدیا",
+ "translate-group-desc-visualeditor": "گروه پیام متا شامل همه پیام‌هایی است برای گستره‌ مدیاویکی [https://www.mediawiki.org/wiki/Extension:VisualEditor VisualEditor] و بسته‌های نرم‌افزاری مرتبط",
+ "translate-group-desc-waymarked-trails": "[[Translating:Waymarked Trails|Waymarked Trails]] سرویس نمایش مسیرهای پیاده‌روی، دوچرخه‌ سواری،دوچرخه سواری کوهستان و اسکیت خطی دور جهان. این از مجوزهای جی‌ان‌یو جی‌پی‌ال استفاده می‌کند",
+ "translate-group-desc-waymarked-trails-help": "صفحات راهنما ویوی‌مارک دنبال می‌کند وب سایت‌های : http://waymarkedtrails.org/help/about",
+ "translate-group-desc-wikiaextensions": "گروه پیام متا شامل همه پیام‌هایی است برای پشتیبانی گستره‌‌های مدیاویکی استفاده شده توسط [http://www.wikia.com Wikia]",
+ "translate-group-desc-wikimania-scholarships-app": "گروه پیام برای [https://scholarships.wikimedia.org/apply Wikimania Scholarship application]",
+ "translate-group-desc-wikimedia-mobile": "جمع کردن گروه پیام شامل برنامه‌های کاربردی تلفن همراه برای پروژه‌های ویکی‌مدیا",
+ "translate-group-desc-wikimedia-mobile-wikipedia": "[[Translating:WikipediaMobile|تلفن همراه ویکی‌پدیا]] یک پلت‌ فرم تلفن همراه است و برنامه کاربردی تبلت برای خواندن و کمک به ویکی‌پدیا است",
+ "translate-group-desc-wikimedia-mobile-wikipedia-android": "[[Translating:WikipediaMobile|اندروید ویکی‌پدیا]] نسخه خاص اندروید برنامه کاربردی تلفن همراه ویکی‌پدیا است (۲۰۱۴ جدید)",
+ "translate-group-desc-wikimedia-mobile-wikipedia-ios": "[[Translating:WikipediaMobile|ویکی‌پیدیا آی‌اُ‌اس]] نسخه خاص برنامه تلفن همراه ویکی‌پدیا (۲۰۱۴جدید) است؛ فهرست مجموعه اصلی",
+ "translate-group-desc-wikimedia-mobile-wikisource": "[[Translating:WikisourceMobile|تلفن همراه منبع ویکی]] یک پلت‌ فرم تلفن همراه است و برنامه کاربردی تبلت برای خواندن و کمک به منبع ویکی‌ است",
+ "translate-group-desc-wikimedia-mobile-wiktionary": "[[Translating:WiktionaryMobile|ویکی‌واژه تلفن همراه]] یک پلت‌ فرم تلفن همراه است و برنامه کاربردی تبلت برای خواندن و کمک به ویکی‌واژه است",
+ "translate-group-desc-wikimediaextensions": "گروه پیام متا شامل همه پیام‌هایی است برای پشتیبانی گستره‌‌های مدیاویکی استفاده شده توسط [https://wikimediafoundation.org/ Wikimedia Foundation]",
+ "translate-group-desc-wikimediaextensions-main": "گروه پیام متا شامل همه پیام‌هایی است برای پشتیبانی گستره‌‌های مدیاویکی مورد نیاز به ترجمه شدن برای ویکی‌مدیا [https://meta.wikimedia.org/wiki/Language_committee Language committee]",
+ "translategroupdescriptions-desc": "توصیفات گروه پیام برای محصولات پشتیبانی شده توسط گستره [https://mediawiki.org/wiki/Extension:Translate Translate]"
+}
diff --git a/MLEB/Translate/i18n/groupdescriptions/fi.json b/MLEB/Translate/i18n/groupdescriptions/fi.json
new file mode 100644
index 00000000..429ab893
--- /dev/null
+++ b/MLEB/Translate/i18n/groupdescriptions/fi.json
@@ -0,0 +1,33 @@
+{
+ "@metadata": {
+ "authors": [
+ "Centerlink",
+ "Cimon Avaro",
+ "Crt",
+ "Nedergard",
+ "Nike",
+ "Silvonen",
+ "Str4nd",
+ "ZeiP"
+ ]
+ },
+ "bw-desc-freecol": "Ennen kuin käännät FreeColia kielellesi, luethan sivun [[Translating:FreeCol]]. Freecol käyttää GPL-lisenssiä.",
+ "bw-desc-fudforum": "[[Translating:FUDforum|FUDforum]] on verkkopohjainen keskustelufoorumi",
+ "bw-desc-mantisbt": "[[Translating:MantisBT|MantisBT]] on verkossa toimiva virheenseurantaohjelmisto",
+ "bw-desc-openstreetmap": "[[Translating:OpenStreetMap|OpenStreetMap]]in viestit",
+ "translate-group-desc-collection": "Tämä metaviestiryhmä sisältää kaikki viestit, joita käytetään MediaWikin laajennuksessa [https://www.mediawiki.org/wiki/Extension:Collection Collection]",
+ "translate-group-desc-eol": "[[Translating:EOL|Encyclopedia of Life]] -viestiryhmä",
+ "translate-group-desc-flaggedrevs": "Tämä metaviestiryhmä sisältää kaikki viestit MediaWikin [https://www.mediawiki.org/wiki/Extension:FlaggedRevs FlaggedRevs-laajennusta] varten",
+ "translate-group-desc-ihris": "[[Translating:iHRIS|iHRIS-viestiryhmä]]",
+ "translate-group-desc-mediawikicore": "Tämä viestiryhmä sisältää viestit, joita käytetään nykyisessä MediaWikin alfaversiossa ({{CURRENTVERSION}})",
+ "translate-group-desc-mediawikiextensions": "Kokoelmaviestiryhmä, joka sisältää kaikkien [[Translating:MediaWiki|MediaWiki]]-laajennosten viestit.",
+ "translate-group-desc-mediawikimostused": "Tämä viestiryhmä sisältää [https://translatewiki.net/wiki/Most_often_used_messages_in_MediaWiki MediaWikin 500 useimmin käytettyä viestiä]",
+ "translate-group-desc-nocc": "[[Translating:NOCC|NOCC]] on sähköpostiohjelma",
+ "translate-group-desc-nodesc": "Viestiryhmällä ei ole kuvausta",
+ "translate-group-desc-readerfeedback": "Tämä metaviestiryhmä sisältää kaikki MediaWikin [https://www.mediawiki.org/wiki/Extension:ReaderFeedback ReaderFeedback-laajennuksen] viestit",
+ "translate-group-desc-translatablepages": "Kaikki käännettävät sivut",
+ "translate-group-desc-translate": "Tämä metaviestiryhmä sisältää kaikki viestit MediaWikin [https://www.mediawiki.org/wiki/Extension:Translate Käännöstyökalu-laajennusta] varten",
+ "translate-group-desc-wikiaextensions": "Tämä metaviestiryhmä sisältää kaikki ne tuetut MediaWikin laajennuksien viestit, joita [http://www.wikia.com Wikia] käyttää",
+ "translate-group-desc-wikimediaextensions": "Tämä metaviestiryhmä sisältää kaikki tuetut MediaWikin laajennuksien viestit, joita [https://wikimediafoundation.org/ Wikimedia Foundation] käyttää",
+ "translategroupdescriptions-desc": "Viestiryhmäkuvaukset tuotteille, joita [https://mediawiki.org/wiki/Extension:Translate Translate]-laajennos tukee"
+}
diff --git a/MLEB/Translate/i18n/groupdescriptions/fo.json b/MLEB/Translate/i18n/groupdescriptions/fo.json
new file mode 100644
index 00000000..8367fe73
--- /dev/null
+++ b/MLEB/Translate/i18n/groupdescriptions/fo.json
@@ -0,0 +1,21 @@
+{
+ "@metadata": {
+ "authors": [
+ "EileenSanda"
+ ]
+ },
+ "bw-desc-fudforum": "[[Translating:FUDforum|FUDforum]] er ein net-baseraður ritbúnaður til kjakforum",
+ "bw-desc-wikiblame": "[[Translating:WikiBlame|WikiBlame]] er ført fyri skjótt at finna høvundarnar av einum parti av einari síðu í einari Wikimedia wiki",
+ "translate-group-desc-collection": "Meta boðbólkur sum inniheldur øll boð viðvíkjandi MediaWiki víðkanini [https://www.mediawiki.org/wiki/Extension:Collection Collection]",
+ "translate-group-desc-mediawikicore": "Hesin boðbólkur inniheldur boðini ið verða nýtt í verandi alfa versjón av [[Translating:MediaWiki|MediaWiki]] ({{CURRENTVERSION}})",
+ "translate-group-desc-mediawikiextensions": "Meta boðbólkur sum inniheldur øll boð til stuðlaðar víðkanir til [[Translating:MediaWiki|MediaWiki]]",
+ "translate-group-desc-mediawikimostused": "Hesin boðbólkur inniheldur [https://translatewiki.net/wiki/Most_often_used_messages_in_MediaWiki 500 oftast brúktu boð] í [[Translating:MediaWiki|MediaWiki]]",
+ "translate-group-desc-nodesc": "Ongin frágreiðing er tøk fyri henda bólkin av boðum",
+ "translate-group-desc-translatablepages": "Allar síður ið kunnu týðast",
+ "translate-group-desc-vicuna": "[[Translating:VicuñaUploader|VicuñaUploader]] er eitt tól at leggja út fílur til Wikimedia Commons og onnur Wikimedia verkætlanir",
+ "translate-group-desc-waymarked-trails": "[[Translating:Waymarked Trails|Waymarked Trails]] er ein tænasta sum vísir rutur til gongutúrar, súkkling, fjallasúkkling og rulluskoyting kring heimin. Hon nýtur GNU GPL lisensin",
+ "translate-group-desc-wikimedia-mobile-wikipedia": "[[Translating:WikipediaMobile|WikipediaMobile]] er ein mobil og teldil app uppá tvørs, sum ger tað lættari at lesa og luttaka aktivt á Wikipediu",
+ "translate-group-desc-wikimedia-mobile-wikisource": "[[Translating:WikisourceMobile|WikisourceMobile]] er ein mobil og teldil app uppá tvørs, sum ger tað lættari at lesa og luttaka aktivt á Wikisource",
+ "translate-group-desc-wikimedia-mobile-wiktionary": "[[Translating:WiktionaryMobile|WiktionaryMobile]] er ein mobil og teldil app uppá tvørs, sum ger tað lættari at lesa og luttaka aktivt á Wiktionary",
+ "translategroupdescriptions-desc": "Bólkaboð frágreiðing viðvíkjandi vørum sum virka við [https://mediawiki.org/wiki/Extension:Translate Translate] víðkanini"
+}
diff --git a/MLEB/Translate/i18n/groupdescriptions/fr.json b/MLEB/Translate/i18n/groupdescriptions/fr.json
new file mode 100644
index 00000000..0d4d2703
--- /dev/null
+++ b/MLEB/Translate/i18n/groupdescriptions/fr.json
@@ -0,0 +1,77 @@
+{
+ "@metadata": {
+ "authors": [
+ "Crochet.david",
+ "DavidL",
+ "Gomoko",
+ "Houcinee1",
+ "IAlex",
+ "Jean-Frédéric",
+ "Litlok",
+ "Metroitendo",
+ "Od1n",
+ "Peter17",
+ "PieRRoMaN",
+ "Sherbrooke",
+ "Urhixidur",
+ "Verdy p",
+ "Wyz",
+ "Xapitoun",
+ "Yann.fauche",
+ "Jgaignerot"
+ ]
+ },
+ "bw-desc-freecol": "Avant de traduire FreeCol dans votre langue, veuillez lire [[Translating:FreeCol]]. Freecol est publié sous licence GPL.",
+ "bw-desc-fudforum": "[http://fudforum.org/ FUDforum], un forum internet écrit en PHP.",
+ "bw-desc-mantisbt": "[[Translating:MantisBT|MantisBT]] est un système gratuit pour le suivi sur le web des anomalies.",
+ "bw-desc-openstreetmap": "Groupe de messages pour tous les messages de [[Translating:OpenStreetMap|OpenStreetMap]]",
+ "bw-desc-osm-site": "[[Translating:OpenStreetMap|OpenStreetMap]] est une carte modifiable du monde entier",
+ "bw-desc-wikiblame": "[http://wikipedia.ramselehof.de/wikiblame.php Wikiblame] permet de trouver rapidement les auteurs d’une page dans un wiki de Wikimedia.",
+ "translate-group-desc-blockly": "Un groupe de message pour [[Translating:Blockly|Blockly]]",
+ "translate-group-desc-bluespice": "Méta-groupe de messages contenant tous les messages pour les extensions [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:BlueSpice Blue Spice] de MédiaWiki",
+ "translate-group-desc-collection": "Ce méta-groupe de messages contient tous les messages de l’extension MediaWiki [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Collection Collection].",
+ "translate-group-desc-eol": "Un groupe de messages pour l’''[[Translating:EOL|Encyclopedia of Life]]''",
+ "translate-group-desc-etherpad-lite": "[[Translating:Etherpad lite|Etherpad lite]] est un éditeur collaboratif réellement en temps réel",
+ "translate-group-desc-europeana": "[[Translating:Europeana|Europeana 1914-1918]] est un site web avec des histoires, des films et des matériaux historiques sur la Première guerre mondiale",
+ "translate-group-desc-flaggedrevs": "Groupe des messages Meta contenant tous les messages de l’extension MediaWiki [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:FlaggedRevs FlaggedRevs]",
+ "translate-group-desc-fuel": "[[Translating:FUEL|FUEL]] apporte plus de cohérence à la traduction de logiciel",
+ "translate-group-desc-huggle": "[[Translating:Huggle|Huggle]] est une application web de diff pour traiter le vandalisme sur les projets Wikimedia",
+ "translate-group-desc-ihris": "Un groupe de messages pour [[Translating:iHRIS|iHRIS]]",
+ "translate-group-desc-kiwix": "Un groupe de messages pour [[Translating:Kiwix|Kiwix]]",
+ "translate-group-desc-mantisbt-plugin-core": "Un plugin de base pour [[Translating:MantisBT|MantisBT]]",
+ "translate-group-desc-mathjax": "[[Translating:MathJax|MathJax]] est une bibliothèque JavaScript multi-navigateurs qui affiche des notations mathématiques dans les navigateurs web",
+ "translate-group-desc-mediawiki-core-branch": "Messages pour une version stable de [[Translating:MediaWiki|MediaWiki]]",
+ "translate-group-desc-mediawikiapi": "Ce groupe de message contient les messages utilisés dans l’API Action pour la version alpha actuelle de [[Translating:MediaWiki|MediaWiki]] ({{CURRENTVERSION}})",
+ "translate-group-desc-mediawikicore": "Ce groupe de messages contient les messages utilisés dans la version alpha actuelle de MediaWiki ({{CURRENTVERSION}}).",
+ "translate-group-desc-mediawikiextensions": "Ce méta-groupe de messages contient les messages de toutes les extensions pour MediaWiki supportées.",
+ "translate-group-desc-mediawikiskins": "Groupe de méta-messages contenant tous les messages pour les habillages supportés pour [[Translating:MediaWiki|MédiaWiki]]",
+ "translate-group-desc-mediawikimostused": "Ce groupe de messages contient les [//translatewiki.net/wiki/Most_often_used_messages_in_MediaWiki 500 messages les plus souvent utilisés] dans [[Translating:MediaWiki|MediaWiki]].",
+ "translate-group-desc-mifos": "[[Translating:Mifos|Mifos]] est un système de gestion de l’information pour la microfinance",
+ "translate-group-desc-nfcring-control": "[[Translating:NFC_Ring_Control|NFC Ring Control]] est une application mobile pour interagir avec les balises NFC",
+ "translate-group-desc-nocc": "[http://nocc.sourceforge.net NOCC] est un client webmail écrit en PHP. Rapportez tous les problèmes sur [[Support]].",
+ "translate-group-desc-nodesc": "Aucune description n’est disponible pour ce groupe de messages",
+ "translate-group-desc-openimages-all": "Ces messages font partie du [[Translating:Open Images|Projet Open Images]]",
+ "translate-group-desc-potlatch2": "[[Translating:OpenStreetMap|Potlatch2]] est un éditeur OpenStreetMap basé sur du flash",
+ "translate-group-desc-pywikipedia": "[[Translating:Pywikibot|Pywikibot]] est une collection d'outils pour modifier Wikipédia",
+ "translate-group-desc-readerfeedback": "Groupe des messages Meta contenant tous les messages de l’extension MediaWiki [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:ReaderFeedback ReaderFeedback]",
+ "translate-group-desc-semantic": "Groupe de message de Meta contenant tous les messages pour toutes les extensions [https://semantic-mediawiki.org/ Semantic MediaWiki]",
+ "translate-group-desc-translatablepages": "Toutes les pages traductibles",
+ "translate-group-desc-translate": "Groupe des messages Meta contenant tous les messages de l’extension MediaWiki [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Translate Translate]; veuillez vous familiariser avec son [https://www.mediawiki.org/wiki/Help:Extension:Translate/Glossary glossaire]",
+ "translate-group-desc-tsint": "Un groupe de messages pour [[Translating:Intuition|Intuition]], le système d'internationalisation des outils des [//tools.wmflabs.org/ Laboratoires d’outil de Wikimédia] (<span class=\"plainlinks\">[[Translating talk:Intuition|support]]</span>)",
+ "translate-group-desc-universallanguageselector": "Le groupe de méta-messages contient tous les messages pour l’extension de MédiaWiki [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:UniversalLanguageSelector UniversalLanguageSelector] (ULS) et les colis logiciels associés",
+ "translate-group-desc-vicuna": "[[Translating:VicuñaUploader|VicuñaUploader]] est un outil pour télécharger des fichiers de Communs de Wikimédia et d’autres projets de Wikimédia",
+ "translate-group-desc-visualeditor": "Méta-Groupe de messages contenant tous les message pour l’extension [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:VisualEditor VisualEditor] de MédiaWiki et aux paquets logiciels connexes",
+ "translate-group-desc-waymarked-trails": "[[Translating:Waymarked Trails|Waymarked Trails]] est un service affichant les chemins pour la randonnée, le cyclisme, le vélo-tourisme et le patinage à roulettes tout autour du monde. Il utilise la licence GNU GPL",
+ "translate-group-desc-waymarked-trails-help": "Les pages d'aide des sites web des Chemins balises: http://waymarkedtrails.org/help/about",
+ "translate-group-desc-wikiaextensions": "Ce méta-groupe de messages contient tous les messages des extensions MediaWiki utilisées par [http://www.wikia.com Wikia].",
+ "translate-group-desc-wikimania-scholarships-app": "Groupe de messages pour le [https://scholarships.wikimedia.org/apply système de demande de bourse Wikimania]",
+ "translate-group-desc-wikimedia-mobile": "Le groupe de messages agrégés contient les applications mobiles pour les projets Wikimédia",
+ "translate-group-desc-wikimedia-mobile-wikipedia": "[[Translating:WikipediaMobile|WikipediaMobile]] est une application inter-plateformes pour mobiles et tablettes permettant de lire et de contribuer à Wikipédia",
+ "translate-group-desc-wikimedia-mobile-wikipedia-android": "[[Translating:WikipediaMobile|Wikipédia Android]] est la version spécifique à Android de l'application mobile de Wikipédia",
+ "translate-group-desc-wikimedia-mobile-wikipedia-ios": "[[Translating:WikipediaMobile|Wikipedia iOS]] est la version spécifique à iOS de l’application mobile Wikipédia",
+ "translate-group-desc-wikimedia-mobile-wikisource": "[[Translating:WikisourceMobile|WikisourceMobile]] est une application inter-plateformes pour mobiles et tablettes permettant de consulter et contribuer à Wikisource",
+ "translate-group-desc-wikimedia-mobile-wiktionary": "[[Translating:WiktionaryMobile|WiktionaryMobile]] est une application inter-plateformes pour mobiles et tablettes permettant de lire et contribuer à Wiktionary",
+ "translate-group-desc-wikimediaextensions": "Ce méta-groupe de messages contient tous les messages des extensions MediaWiki utilisées par la [//wikimedia.org/ Wikimedia Foundation].",
+ "translate-group-desc-wikimediaextensions-main": "Groupe de messages méta comprenant tous les messages pour les extensions MediaWiki supportées et qui doivent être traduits pour le [https://meta.wikimedia.org/wiki/Special:MyLanguage/Language_committee Comité des langues] de Wikimedia",
+ "translategroupdescriptions-desc": "Descriptions des groupes de messages pour les produits pris en charge par l’[https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Translate extension Translate]"
+}
diff --git a/MLEB/Translate/i18n/groupdescriptions/frp.json b/MLEB/Translate/i18n/groupdescriptions/frp.json
new file mode 100644
index 00000000..04213a83
--- /dev/null
+++ b/MLEB/Translate/i18n/groupdescriptions/frp.json
@@ -0,0 +1,29 @@
+{
+ "@metadata": {
+ "authors": [
+ "ChrisPtDe"
+ ]
+ },
+ "bw-desc-freecol": "Devant que traduire FreeCol dens voutra lengoua, volyéd liére [[Translating:FreeCol]]. FreeCol utilise la licence GPL.",
+ "bw-desc-fudforum": "[http://fudforum.org/ FUDforum], un barjacâjo vouèbe ècrit en PHP.",
+ "bw-desc-mantisbt": "[[Translating:MantisBT|MantisBT]] est una programeria libra por la survelyence sur lo Malyâjo de les cofieries.",
+ "bw-desc-openstreetmap": "Ceta tropa de mèssâjos contint tôs los mèssâjos d’[[Translating:OpenStreetMap|OpenStreetMap]].",
+ "bw-desc-osm-site": "Ceta tropa de mèssâjos contint los mèssâjos de l’entèrface d’[[Translating:Open Street Map|Open Street Map]].\nVêde la [http://unicode.org/repos/cldr-tmp/trunk/diff/supplemental/language_plural_rules.html#{{UILANGCODE}} pâge de l’Unicode CLDR por una èxplicacion de l’usâjo des plurâls].",
+ "bw-desc-wikiblame": "[http://wikipedia.ramselehof.de/wikiblame.php Wikiblame] pèrmèt de trovar rêdo los ôtors d’una pâge dens un vouiqui de Wikimedia.",
+ "translate-group-desc-collection": "Ceta mèta-tropa de mèssâjos contint tôs los mèssâjos de l’èxtension MediaWiki [https://www.mediawiki.org/wiki/Extension:Collection Colèccion].",
+ "translate-group-desc-eol": "Una tropa de mèssâjos por l’[[Translating:EOL|Enciclopèdia de la via]].",
+ "translate-group-desc-flaggedrevs": "Ceta mèta-tropa de mèssâjos contint tôs los mèssâjos de l’èxtension MediaWiki [https://www.mediawiki.org/wiki/Extension:FlaggedRevs FlaggedRevs].",
+ "translate-group-desc-ihris": "Una tropa de mèssâjos por [[Translating:iHRIS|iHRIS]].",
+ "translate-group-desc-kiwix": "Una tropa de mèssâjos por [[Translating:Kiwix|Kiwix]].",
+ "translate-group-desc-mediawiki-core-branch": "Mèssâjos por una vèrsion stâbla de [[Translating:MediaWiki|MediaWiki]].",
+ "translate-group-desc-mediawikicore": "Ceta tropa de mèssâjos contint los mèssâjos utilisâs dens la vèrsion alfa d’ora de MediaWiki ({{CURRENTVERSION}}).",
+ "translate-group-desc-mediawikiextensions": "Ceta mèta-tropa de mèssâjos contint tôs los mèssâjos de les èxtensions recognues por [[Translating:MediaWiki|MediaWiki]].",
+ "translate-group-desc-mediawikimostused": "Ceta tropa de mèssâjos contint los [https://translatewiki.net/wiki/Most_often_used_messages_in_MediaWiki 500 mèssâjos los ples sovent utilisâs] dens MediaWiki.",
+ "translate-group-desc-nocc": "[http://nocc.sourceforge.net NOCC] est un cliant webmail ècrit en PHP. Volyéd raportar tôs los problèmos dessus [[Support|Assistance]].",
+ "translate-group-desc-nodesc": "Niona dèscripcion est disponibla por ceta tropa de mèssâjos.",
+ "translate-group-desc-readerfeedback": "Ceta mèta-tropa de mèssâjos contint tôs los mèssâjos de l’èxtension MediaWiki [https://www.mediawiki.org/wiki/Extension:ReaderFeedback ReaderFeedback].",
+ "translate-group-desc-translatablepages": "Totes les pâges a traduire",
+ "translate-group-desc-translate": "Ceta mèta-tropa de mèssâjos contint tôs los mèssâjos de l’èxtension MediaWiki [https://www.mediawiki.org/wiki/Extension:Translate Translate].",
+ "translate-group-desc-wikiaextensions": "Ceta mèta-tropa de mèssâjos contint tôs los mèssâjos de les èxtensions MediaWiki utilisâs per [http://www.wikia.com Wikia].",
+ "translate-group-desc-wikimediaextensions": "Ceta mèta-tropa de mèssâjos contint tôs los mèssâjos de les èxtensions MediaWiki utilisâs per la [https://wikimediafoundation.org/ Wikimedia Foundation]."
+}
diff --git a/MLEB/Translate/i18n/groupdescriptions/fur.json b/MLEB/Translate/i18n/groupdescriptions/fur.json
new file mode 100644
index 00000000..8d31a9fb
--- /dev/null
+++ b/MLEB/Translate/i18n/groupdescriptions/fur.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Klenje"
+ ]
+ },
+ "translate-group-desc-translatablepages": "Dutis lis pagjinis che si puedin tradusi"
+}
diff --git a/MLEB/Translate/i18n/groupdescriptions/gl.json b/MLEB/Translate/i18n/groupdescriptions/gl.json
new file mode 100644
index 00000000..3e7c60a8
--- /dev/null
+++ b/MLEB/Translate/i18n/groupdescriptions/gl.json
@@ -0,0 +1,59 @@
+{
+ "@metadata": {
+ "authors": [
+ "Toliño",
+ "Lokal Profil"
+ ]
+ },
+ "bw-desc-freecol": "[[Translating:FreeCol|FreeCol]] é un xogo de estratexia por quendas",
+ "bw-desc-fudforum": "[[Translating:FUDforum|FUDforum]] é un foro web de discusión",
+ "bw-desc-mantisbt": "[[Translating:MantisBT|MantisBT]] é un sistema web de xestión de erros",
+ "bw-desc-openstreetmap": "Grupo de mensaxes para todas as mensaxes do [[Translating:OpenStreetMap|OpenStreetMap]]",
+ "bw-desc-osm-site": "[[Translating:OpenStreetMap|OpenStreetMap]] é un mapa mundial que se pode editar",
+ "bw-desc-wikiblame": "[http://wikipedia.ramselehof.de/wikiblame.php?user_lang=gl Wikiblame] é capaz de atopar rapidamente os autores dunha páxina nun wiki da Wikimedia.",
+ "translate-group-desc-blockly": "Grupo de mensaxes de [[Translating:Blockly|Blockly]]",
+ "translate-group-desc-bluespice": "Grupo de mensaxes que contén todas as mensaxes das extensións [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:BlueSpice Blue Spice] de MediaWiki",
+ "translate-group-desc-collection": "Grupo de mensaxes que contén todas as mensaxes da extensión [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Collection Collection] de MediaWiki",
+ "translate-group-desc-eol": "Grupo de mensaxes da [[Translating:EOL|Enciclopedia da vida]]",
+ "translate-group-desc-etherpad-lite": "[[Translating:Etherpad lite|Etherpad lite]] é un editor colaborativo en tempo real",
+ "translate-group-desc-europeana": "[[Translating:Europeana|Europeana 1914-1918]] é unha páxina web con historias, vídeos e material histórico sobre a Primeira Guerra Mundial",
+ "translate-group-desc-flaggedrevs": "Grupo de mensaxes que contén todas as mensaxes da extensión [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:FlaggedRevs FlaggedRevs] de MediaWiki",
+ "translate-group-desc-fuel": "[[Translating:FUEL|FUEL]] achega máis coherencia ás traducións de software",
+ "translate-group-desc-huggle": "[[Translating:Huggle|Huggle]] é unha aplicación de exploración rápida das diferenzas para loitar contra o vandalismo nos proxectos da Wikimedia",
+ "translate-group-desc-ihris": "Grupo de mensaxes de [[Translating:iHRIS|iHRIS]]",
+ "translate-group-desc-kiwix": "Grupo de mensaxes de [[Translating:Kiwix|Kiwix]]",
+ "translate-group-desc-mantisbt-plugin-core": "Un complemento fundamental para [[Translating:MantisBT|MantisBT]]",
+ "translate-group-desc-mathjax": "[[Translating:MathJax|MathJax]] é unha biblioteca en JavaScript multiplataforma que mostra a notación matemática nos navegadores web",
+ "translate-group-desc-mediawiki-core-branch": "Mensaxes da versión estable de [[Translating:MediaWiki|MediaWiki]]",
+ "translate-group-desc-mediawikicore": "Este grupo de mensaxes contén as mensaxes empregadas na versión alfa actual de MediaWiki ({{CURRENTVERSION}})",
+ "translate-group-desc-mediawikiextensions": "Grupo de mensaxes que contén todas as mensaxes das extensións soportadas por MediaWiki",
+ "translate-group-desc-mediawikimostused": "Este grupo de mensaxes contén as [https://translatewiki.net/wiki/Most_often_used_messages_in_MediaWiki 500 mensaxes máis empregadas] en [[Translating:MediaWiki|MediaWiki]]",
+ "translate-group-desc-mifos": "[[Translating:Mifos|Mifos]] é un sistema de información de xestión para microfinanzas",
+ "translate-group-desc-nfcring-control": "[[Translating:NFC_Ring_Control|NFC Ring Control]] é unha aplicación móbil para interactuar coas etiquetas NFC",
+ "translate-group-desc-nocc": "[[Translating:NOCC|NOCC]] é un cliente de correo web",
+ "translate-group-desc-nodesc": "Non hai ningunha descrición dispoñible para este grupo de mensaxes",
+ "translate-group-desc-openimages-all": "Estas mensaxes forman parte do proxecto [[Translating:Open Images|Open Images]]",
+ "translate-group-desc-potlatch2": "[[Translating:OpenStreetMap|Potlatch2]] é un editor do OpenStreetMap baseado en Flash",
+ "translate-group-desc-pywikipedia": "[[Translating:Pywikibot|Pywikibot]] é unha colección de ferramentas para editar a Wikipedia",
+ "translate-group-desc-readerfeedback": "Grupo de mensaxes que contén todas as mensaxes da extensión [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:ReaderFeedback ReaderFeedback] de MediaWiki",
+ "translate-group-desc-semantic": "Grupo de mensaxes meta que contén todas as mensaxes das extensións de [https://semantic-mediawiki.org/ Semantic MediaWiki]",
+ "translate-group-desc-translatablepages": "Todas as páxinas que se poden traducir",
+ "translate-group-desc-translate": "Grupo de mensaxes que contén todas as mensaxes da extensión [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Translate Translate] de MediaWiki; bótelle unha ollada primeiro ao [https://www.mediawiki.org/wiki/Help:Extension:Translate/Glossary glosario]",
+ "translate-group-desc-tsint": "Un grupo de mensaxes para [[Translating:Intuition|Intuition]], o sistema i18n das ferramentas do [//tools.wmflabs.org/ Toolserver] (<span class=\"plainlinks\">[[Translating talk:Intuition|soporte]]</span>)",
+ "translate-group-desc-universallanguageselector": "Grupo de mensaxes que contén todas as mensaxes da extensión [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:UniversalLanguageSelector UniversalLanguageSelector] (ULS) de MediaWiki e os paquetes de software relacionados",
+ "translate-group-desc-vicuna": "[[Translating:VicuñaUploader|VicuñaUploader]] é unha ferramenta para cargar ficheiros á Wikimedia Commons e aos outros proxectos da Wikimedia",
+ "translate-group-desc-visualeditor": "Grupo de mensaxes que contén todas as mensaxes da extensión [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:VisualEditor VisualEditor] de MediaWiki e os paquetes de software relacionados",
+ "translate-group-desc-waymarked-trails": "[[Translating:Waymarked Trails|Waymarked Trails]] é un servizo que mostra rutas de sendeirismo, ciclismo, ciclismo de montaña e patinaxe de todo o mundo. Usa a licenza GNU GPL",
+ "translate-group-desc-waymarked-trails-help": "As páxinas de axuda da páxina web de Waymarked Trails: http://waymarkedtrails.org/gl/help/about",
+ "translate-group-desc-wikiaextensions": "Grupo de mensaxes que contén todas as mensaxes das extensións soportadas por MediaWiki usadas por [http://www.wikia.com Wikia]",
+ "translate-group-desc-wikimania-scholarships-app": "Grupo de mensaxes para a [https://scholarships.wikimedia.org/apply solicitude de bolsas para Wikimanía]",
+ "translate-group-desc-wikimedia-mobile": "Grupo de mensaxes agregadas para as aplicacións de móbil dos proxectos da Wikimedia",
+ "translate-group-desc-wikimedia-mobile-wikipedia": "[[Translating:WikipediaMobile|WikipediaMobile]] é unha aplicación para dispositivos móbiles e tabletas para ler e colaborar na Wikipedia",
+ "translate-group-desc-wikimedia-mobile-wikipedia-android": "[[Translating:WikipediaMobile|Wikipedia Android]] é a versión para Android da aplicación móbil da Wikipedia",
+ "translate-group-desc-wikimedia-mobile-wikipedia-ios": "[[Translating:WikipediaMobile|Wikipedia iOS]] é a versión para iOS da aplicación móbil da Wikipedia",
+ "translate-group-desc-wikimedia-mobile-wikisource": "[[Translating:WikisourceMobile|WikisourceMobile]] é unha aplicación para dispositivos móbiles e tabletas para ler e colaborar na Wikisource",
+ "translate-group-desc-wikimedia-mobile-wiktionary": "[[Translating:WiktionaryMobile|WiktionaryMobile]] é unha aplicación para dispositivos móbiles e tabletas para ler e colaborar no Wiktionary",
+ "translate-group-desc-wikimediaextensions": "Grupo de mensaxes que contén todas as mensaxes das extensións soportadas por MediaWiki usadas pola [https://wikimediafoundation.org/ Fundación Wikimedia]",
+ "translate-group-desc-wikimediaextensions-main": "Grupo de mensaxes meta que contén todas as mensaxes soportadas polas extensións de MediaWiki que necesitan tradución para o [https://meta.wikimedia.org/wiki/Special:MyLanguage/Language_committee comité de linguas] da Wikimedia",
+ "translategroupdescriptions-desc": "Grupo de mensaxes coas descricións dos produtos soportados pola extensión [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Translate Translate]"
+}
diff --git a/MLEB/Translate/i18n/groupdescriptions/gsw.json b/MLEB/Translate/i18n/groupdescriptions/gsw.json
new file mode 100644
index 00000000..5b648675
--- /dev/null
+++ b/MLEB/Translate/i18n/groupdescriptions/gsw.json
@@ -0,0 +1,40 @@
+{
+ "@metadata": {
+ "authors": [
+ "Als-Chlämens",
+ "Als-Holder",
+ "Lokal Profil"
+ ]
+ },
+ "bw-desc-freecol": "Voreb Du aafangsch mit Ibersetze vu FreeCol, liis bitte zerscht [[Translating:FreeCol]]. Freecol nutzt d GPL-Lizänz.",
+ "bw-desc-fudforum": "[http://fudforum.org/ FUDforum], e Netzforum, wu in PHP gschriben isch.",
+ "bw-desc-mantisbt": "[[Translating:MantisBT|MantisBT]] isch e webbasiert Bug-Tracking-Syschtem. Iber Probläm sott uf [[Support]] berichtet wäre.",
+ "bw-desc-openstreetmap": "Nochrichtegruppe fir alli [[Translating:OpenStreetMap|OpenStreetMap]]-Nochrichte",
+ "bw-desc-osm-site": "In däre Gruppe het s Nochrichte vu dr Benutzeroberflechi fir [[Translating:Open Street Map|Open Street Map]].",
+ "bw-desc-wikiblame": "[http://wikipedia.ramselehof.de/wikiblame.php Wikiblame] cha d Autore vun ere Syte im e Wikimedia-Wiki schnäll uusefinde.",
+ "translate-group-desc-collection": "In däre Hauptgruppe het s alli Syschtemnochrichte fir d MediaWiki-Erwyterig [https://www.mediawiki.org/wiki/Extension:Collection Collection]",
+ "translate-group-desc-eol": "Mäldigsgruppe für [[Translating:EOL|Läbens-Enzyklopädi]]",
+ "translate-group-desc-europeana": "[[Translating:Europeana|Europeana]] macht e Zuegang zum europäische Kulturerb megli",
+ "translate-group-desc-flaggedrevs": "In däre Hauptgruppe het s alli Syschtemnochrichte fir d MediaWiki-Erwyterig [https://www.mediawiki.org/wiki/Extension:FlaggedRevs FlaggedRevs]",
+ "translate-group-desc-ihris": "Nochrichte fir [[Translating:iHRIS|iHRIS]]",
+ "translate-group-desc-kiwix": "Mäldige fir [[Translating:Kiwix|Kiwix]]",
+ "translate-group-desc-mantisbt-plugin-core": "E Haupt-Plugin fir [[Translating:MantisBT|MantisBT]]",
+ "translate-group-desc-mediawiki-core-branch": "Nochrichte fir e stabil Version vu [[Translating:MediaWiki|MediaWiki]]",
+ "translate-group-desc-mediawikicore": "In däre Gruppe het s alli Nochrichte vu dr aktuälle alpha-Version vu MediaWiki ({{CURRENTVERSION}})",
+ "translate-group-desc-mediawikiextensions": "In däre Hauptgruppe het s alli Syschtemnochrichte vu dr Erwyterige, wu vu MediaWiki unterstitzt wäre",
+ "translate-group-desc-mediawikimostused": "In däre Gruppe het s di [https://translatewiki.net/wiki/Most_often_used_messages_in_MediaWiki 500 am meischte bruchte Nochrichte] in MediaWiki",
+ "translate-group-desc-mifos": "[[Translating:Mifos|Mifos]] isch e Management-Informationssyschtem fir Mikrofinanze",
+ "translate-group-desc-nocc": "[http://nocc.sourceforge.net NOCC] isch e Webmail-Client, wu in PHP gschribe isch. Froge un Fähler sotte uf [[Support]] berichtet wäre.",
+ "translate-group-desc-nodesc": "Fir die Nochrichte-Gruppe isch kei Bschryybig verfiegbar.",
+ "translate-group-desc-openimages-all": "Die Nochrichte sin Teil vum [[Translating:Open Images|Open Images]]-Projäkt",
+ "translate-group-desc-pywikipedia": "[[Translating:Pywikibot|Pywikibot]] isch e Sammlig vu Wärchzyyg zum Bearbeite vu dr Wikipedia",
+ "translate-group-desc-readerfeedback": "Meta-Nochrichte-Gruppe, wu s alli Nochrichte din het fir d MediaWiki-Erwyterig [https://www.mediawiki.org/wiki/Extension:ReaderFeedback ReaderFeedback]",
+ "translate-group-desc-semantic": "In dere Meta Mäldigsgruppe sin alli Systemmädlige für d MediaWiki-Erwyyterig [https://semantic-mediawiki.org/wiki/Semantic_MediaWiki_–_Startsyte Semantic MediaWiki] un de Erwyyterige wo dört yybunde sin",
+ "translate-group-desc-translatablepages": "Alli ibersetzbare Syte",
+ "translate-group-desc-translate": "In däre Hauptgruppe het s alli Syschtemnochrichte fir d MediaWiki-Erwyterig [https://www.mediawiki.org/wiki/Extension:Translate Translate]",
+ "translate-group-desc-tsint": "Mäldigsgruppe für [http://toolserver.org/~krinkle/TsIntuition „Toolserver Intuition“], s I18N-System für d Hilfsprogramm wo uffem [http://toolserver.org Toolserver] ghoschtet sin. (<span class=\"plainlinks\">[[Translating talk:Toolserver|Hilf]] &middot; [https://wiki.toolserver.org/view/Toolserver_Intuition technischi Hywyys]</span>)",
+ "translate-group-desc-wikiaextensions": "In däre Hauptgruppe het s alli Syschtemnochrichte vu dr unterstitzte MediaWiki-Erwyterige, wu vu [http://www.wikia.com Wikia] brucht wäre",
+ "translate-group-desc-wikimediaextensions": "In däre Hauptgruppe het s alli Syschtemnochrichte vu dr unterstitzte MediaWiki-Erwyterige, wu vu dr [https://wikimediafoundation.org/ Wikimedia Foundation] brucht wäre",
+ "translate-group-desc-wikimediaextensions-main": "Meta-Nochrichte-Gruppe, wu s alli Syschtemnochrichte din het vu dr unterstitzte MediaWiki-Erwyterige, wu fir s Wikimedia [https://meta.wikimedia.org/wiki/Language_committee Sprochekomitee] mien ibersetzt wäre.",
+ "translategroupdescriptions-desc": "Bschryybig vu dr Nochrichtegruppe vu Projäkt, wu mit dr Softwareerwyterig [https://mediawiki.org/wiki/Extension:Translate „Translate“] unterstitzt wäre"
+}
diff --git a/MLEB/Translate/i18n/groupdescriptions/he.json b/MLEB/Translate/i18n/groupdescriptions/he.json
new file mode 100644
index 00000000..9f9d00a1
--- /dev/null
+++ b/MLEB/Translate/i18n/groupdescriptions/he.json
@@ -0,0 +1,64 @@
+{
+ "@metadata": {
+ "authors": [
+ "Amire80",
+ "Rotemliss",
+ "YaronSh",
+ "Guycn2",
+ "Inkbug"
+ ]
+ },
+ "bw-desc-freecol": "[[Translating:FreeCol|FreeCol]] הוא משחק אסטרטגיה מבוסס תורות",
+ "bw-desc-fudforum": "[[Translating:FUDforum|FUDforum]] היא תוכנה לניהול פורומים",
+ "bw-desc-mantisbt": "[[Translating:MantisBT|MantisBT]] היא תוכנה מבוססת וב לניהול באגים",
+ "bw-desc-openstreetmap": "כל ההודעות השייכות ל־[[Translating:OpenStreetMap|OpenStreetMap]]",
+ "bw-desc-osm-site": "[[Translating:OpenStreetMap|OpenStreetMap]] היא מפה ניתנת לעריכה של כל העולם",
+ "bw-desc-wikiblame": "[[Translating:WikiBlame|WikiBlame]] מסוגל לזהות את הכותבים של חלק מדף האתר ויקי של ויקימדיה",
+ "translate-group-desc-blockly": "קבוצת הודעות לתרגום מיזם [[Translating:Blockly|בלוקלי]]",
+ "translate-group-desc-bluespice": "מטא־קבוצה שמכילה את כל ההודעות עבור הרחבת מדיה־ויקי [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:BlueSpice Blue Spice].",
+ "translate-group-desc-collection": "מטא־קבוצה המכילה את כל ההודעות של הרחבות הקשורות ל־[https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Collection Collection]",
+ "translate-group-desc-eol": "קבוצת הודעות לתרגום של [[Translating:EOL|אנציקלופדיית החיים]]",
+ "translate-group-desc-etherpad-lite": "[[Translating:Etherpad lite|Etherpad lite]] הוא עורך מסמכים בזמן אמת באמת",
+ "translate-group-desc-europeana": "[[Translating:Europeana|Europeana 1914-1918]] הוא אתר עם סיפורים, סרטים וחומרים היסטוריים על מתחמת העולם הראשונה",
+ "translate-group-desc-flaggedrevs": "מטא־קבוצה המכילה את כל ההודעות של הרחבות הקשורות ל־[https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:FlaggedRevs FlaggedRevs]",
+ "translate-group-desc-fuel": "מיזם [[Translating:FUEL|FUEL]] מביא יותר עקביות לתרגום תכנה",
+ "translate-group-desc-huggle": "[[Translating:Huggle|האגל]] הוא יישום מהיר לעיון בהשוואות בין גרסאות במיזמי ויקימדיה",
+ "translate-group-desc-ihris": "קבוצת הודעה עבור [[Translating:iHRIS|iHRIS]]",
+ "translate-group-desc-kiwix": "קבוצת הודעת לתרגום [[Translating:Kiwix|קיוויקס]]",
+ "translate-group-desc-mantisbt-plugin-core": "תוסף ליבה עבור [[Translating:MantisBT|MantisBT]]",
+ "translate-group-desc-mathjax": "[[Translating:MathJax|MathJax]] היא ספריית JavaScript שמציגה נוסחות מתמטיות, אשר תואמת לדפדפנים שונים",
+ "translate-group-desc-mediawiki-core-branch": "הודעות לגרסה היציבה של [[Translating:MediaWiki|מדיה־ויקי]]",
+ "translate-group-desc-mediawikiapi": "קבוצת ההודעות הזאת מכילה הודעות שמשמשות ב־API הפעולות בגרסת האלפא הנוכחית של [[Translating:MediaWiki|מדיה־ויקי]] ({{CURRENTVERSION}})",
+ "translate-group-desc-mediawikicore": "קבוצת הודעות זו כוללת את ההודעות שמשמשות בגרסת האלפא הנוכחית של [[Translating:MediaWiki|מדיה־ויקי]] ({{CURRENTVERSION}})",
+ "translate-group-desc-mediawikiextensions": "מטא־קבוצה המכילה את כל ההודעות של הרחבות הנתמכות ל־[[Translating:MediaWiki|MediaWiki]]",
+ "translate-group-desc-mediawikiskins": "מטא־קבוצה המכילה את כל ההודעות לעיצובים הנתמכים ב[[Translating:MediaWiki|מדיה־ויקי]]",
+ "translate-group-desc-mediawikimostused": "קבוצת הודעות זו כוללת את [https://translatewiki.net/wiki/Most_often_used_messages_in_MediaWiki 500 ההודעות הנפוצות ביותר] ב[[Translating:MediaWiki|מדיה־ויקי]]",
+ "translate-group-desc-mifos": "[[Translating:Mifos|Mifos]] היא מערכת ניהול מידע לארגון פיננסי זעיר",
+ "translate-group-desc-nfcring-control": "[[Translating:NFC_Ring_Control|NFC Ring Control]] הוא יישום למכשירים ניידים שמאפשר לתקשר עם תגי NFC",
+ "translate-group-desc-nocc": "[[Translating:NOCC|NOCC]] היא תוכנת דואר מבוססת וב",
+ "translate-group-desc-nodesc": "אין תיאור זמין לקבוצת ההודעות הזאת.",
+ "translate-group-desc-openimages-all": "ההודעות האלה הן חלק מפרויקט [[Translating:Open Images|Open Images]]",
+ "translate-group-desc-potlatch2": "[[Translating:OpenStreetMap|Potlatch2]] הוא עורך OpenStreemMap מבוסס פלאש",
+ "translate-group-desc-pywikipedia": "[[Translating:Pywikibot|Pywikibot]] הוא אוסף כלים לעריכה אוטומטית של ויקיפדיה",
+ "translate-group-desc-readerfeedback": "מטא־קבוצה המכילה את כל ההודעות של הרחבות הקשורות ל־[https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:ReaderFeedback ReaderFeedback]",
+ "translate-group-desc-semantic": "מטא־קבוצת הודעות שמכילה את כל ההודעות עובר כל ההרחבות ממשפחת [https://semantic-mediawiki.org/ מדיה־ויקי סמנטית]",
+ "translate-group-desc-translatablepages": "כל הדפים הניתנים לתרגום",
+ "translate-group-desc-translate": "מטא־קבוצה המכילה את כל ההודעות של ההרחבות הקשורות להרחבה [https://www.mediawiki.org/wiki/Extension:Translate Translate]; נא לערוך היכרות עם [https://www.mediawiki.org/wiki/Special:MyLanguage/Help:Extension:Translate/Glossary המונחון]",
+ "translate-group-desc-tsint": "קבוצת הודעות ל־[[Translating:Intuition|Intuition]], מערכת התרגום עבור כלֵי [//tools.wmflabs.org/ Toolserver‏] (<span class=\"plainlinks\">[[Translating talk:Intuition|תמיכה]]</span>)",
+ "translate-group-desc-universallanguageselector": "מטא־קבוצה שמכילה את כל ההודעות עבור הרחבה מדיה־ויקי [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:UniversalLanguageSelector UniversalLanguageSelector] (בורר השפות האוניברסלי, ULS) וחבילות תכנה קשורות",
+ "translate-group-desc-vicuna": "תכנת [[Translating:VicuñaUploader|VicuñaUploader]] היא כלי להעלאת קבצים לוויקישיתוף ולמיזמי ויקימדיה אחרים",
+ "translate-group-desc-visualeditor": "מטא־קבוצה שמכילה את כל ההודעות בשביל הרחבת מדיה־ויקי [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:VisualEditor VisualEditor] (העורך החזותי) וחבילות תכנה קשורות",
+ "translate-group-desc-waymarked-trails": "אתר [[Translating:Waymarked Trails|Waymarked Trails]] הוא שירות להצגת שבילים לטיולי הליכה, טיולי אופניים, אופני הרי וגלגליות מסביב לעולם. הרישיון שלו הוא GPL.",
+ "translate-group-desc-waymarked-trails-help": "דפי עזרה של אתרי Waymarked Trails: http://waymarkedtrails.org/help/about",
+ "translate-group-desc-wikiaextensions": "מטא־קבוצה המכילה את כל ההודעות של הרחבות הקשורות לאתר [http://www.wikia.com ויקיה]",
+ "translate-group-desc-wikimania-scholarships-app": "קבוצת הודעות עבור [https://scholarships.wikimedia.org/apply יישום מלגות ויקמניה]",
+ "translate-group-desc-wikimedia-mobile": "קבוצה משולבת עם יישומים ניידים למיזמי ויקימדיה",
+ "translate-group-desc-wikimedia-mobile-wikipedia": "[[Translating:WikipediaMobile|WikipediaMobile]] הוא יישום מרובה־פלטפורמות למחשבי לוח ולמחשבים ניידים לקריאה ולתרומה לוויקיפדיה.",
+ "translate-group-desc-wikimedia-mobile-wikipedia-android": "[[Translating:WikipediaMobile|Wikipedia Android]] היא גרסת אנדרואיד של היישום הנייד של ויקיפדיה",
+ "translate-group-desc-wikimedia-mobile-wikipedia-ios": "[[Translating:WikipediaMobile|Wikipedia iOS]] היא גרסת iOS של יישום ויקיפדיה",
+ "translate-group-desc-wikimedia-mobile-wikisource": "יישום [[Translating:WikisourceMobile|WikisourceMobile]] עובד במספר מערכות הפעלה לטלפונים ומחשבי לוח ומאפשר לקרוא ספרים ממיזם ויקיטקסט (Wikisource) ולתרום אליהם",
+ "translate-group-desc-wikimedia-mobile-wiktionary": "[[Translating:WiktionaryMobile|ויקימילון נייד]] הוא יישום מרובה־פלטפורמות למכשירים ניידים ומחשבי לוח לקריאה ותרומה לוויקימילון",
+ "translate-group-desc-wikimediaextensions": "מטא־קבוצה המכילה את כל ההודעות של הרחבות מדיה־ויקי הקשורות ל[https://wikimediafoundation.org/ קרן ויקימדיה]",
+ "translate-group-desc-wikimediaextensions-main": "מטא־קבוצה המכילה את כל ההודעות של הרחבות הקשורות ל־[https://meta.wikimedia.org/wiki/Special:MyLanguage/Language_committee ועדה הלשונית של ויקימדיה]",
+ "translategroupdescriptions-desc": "תיאורים של קבוצות הודעות למוצרים הנתמכים ב[https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Translate הרחבת התרגום]."
+}
diff --git a/MLEB/Translate/i18n/groupdescriptions/hr.json b/MLEB/Translate/i18n/groupdescriptions/hr.json
new file mode 100644
index 00000000..a2461b16
--- /dev/null
+++ b/MLEB/Translate/i18n/groupdescriptions/hr.json
@@ -0,0 +1,19 @@
+{
+ "@metadata": {
+ "authors": [
+ "Ex13",
+ "SpeedyGonsales"
+ ]
+ },
+ "bw-desc-openstreetmap": "Sve poruke povezane s [[Translating:OpenStreetMap|OpenStreetMap]] projektom",
+ "bw-desc-osm-site": "[[Translating:OpenStreetMap|OpenStreetMap]] je karta svijeta koju može svatko uređivati",
+ "translate-group-desc-collection": "Grupa poruka koja sadrži sve poruke za MediaWiki dogradnju [https://www.mediawiki.org/wiki/Extension:Collection Zbirke]",
+ "translate-group-desc-flaggedrevs": "Grupa poruka koja sadrži sve poruke za MediaWiki dogradnju [https://www.mediawiki.org/wiki/Extension:FlaggedRevs Označene promjene]",
+ "translate-group-desc-mediawikicore": "Ova skupina poruka sadrži poruke koje se rabe u trenutačnoj alpha inačici MediaWikija ({{CURRENTVERSION}})",
+ "translate-group-desc-mediawikiextensions": "Grupa poruka koja sadrži sve poruke za podržane dogradnje za MediaWiki softver",
+ "translate-group-desc-mediawikimostused": "Ova grupa sadrži [https://translatewiki.net/wiki/Most_often_used_messages_in_MediaWiki 500 najčešće rabljenih poruka] u MediaWiki softveru",
+ "translate-group-desc-readerfeedback": "Grupa poruka koja sadrži sve poruke za MediaWiki dogradnju [https://www.mediawiki.org/wiki/Extension:ReaderFeedback Odgovor čitatelja (''ReaderFeedback'')]",
+ "translate-group-desc-translate": "Grupa poruka koja sadrži sve poruke za MediaWiki dogradnju [https://www.mediawiki.org/wiki/Extension:Translate Prijevod sistemskih poruka]",
+ "translate-group-desc-wikiaextensions": "Grupa poruka koja sadrži sve poruke za podržane MediaWiki dogradnje koje rabi [http://www.wikia.com Wikia]",
+ "translate-group-desc-wikimediaextensions": "Grupa poruka koja sadrži sve poruke za podržane MediaWiki dogradnje koje rabi [https://wikimediafoundation.org/ Zaklada Wikimedia]"
+}
diff --git a/MLEB/Translate/i18n/groupdescriptions/hsb.json b/MLEB/Translate/i18n/groupdescriptions/hsb.json
new file mode 100644
index 00000000..20921aef
--- /dev/null
+++ b/MLEB/Translate/i18n/groupdescriptions/hsb.json
@@ -0,0 +1,57 @@
+{
+ "@metadata": {
+ "authors": [
+ "Michawiki",
+ "Lokal Profil"
+ ]
+ },
+ "bw-desc-freecol": "Prjedy hač přełožuješ FreeCol do swojeje rěče, přečitaj prošu [[Translating:FreeCol]]. FreeCol wužiwa licencu GPL.",
+ "bw-desc-fudforum": "[[Translating:FUDforum|FUDforum]] je webforum spisany w PHP.",
+ "bw-desc-mantisbt": "[[Translating:MantisBT|MantisBT]] je swobodny system na zakładźe weba za slědowanje programowych zmylkow. Zdźěl prošu problemy na stronje [[Support|Podpěra]].",
+ "bw-desc-openstreetmap": "Skupina zdźělenkow za wšě zdźělenki z [[Translating:OpenStreetMap|OpenStreetMap]]",
+ "bw-desc-osm-site": "Zdźělenki wužiwarskeho powjercha za [[Translating:OpenStreetMap|OpenStreetMap]], wobdźěłujomnu kartu cyłeho swěta",
+ "bw-desc-wikiblame": "[http://wikipedia.ramselehof.de/wikiblame.php Wikiblame] móže awtorow nastawka we wikiju Wikimedije spěšnje namakać.",
+ "translate-group-desc-blockly": "Skupina zdźělenkow za [[Translating:Blockly|Blockly]]",
+ "translate-group-desc-bluespice": "Zdźělenska metaskupina, kotraž wobsahuje wšě zdźělenki za rozšěrjenja MediaWiki [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:BlueSpice Blue Spice]",
+ "translate-group-desc-collection": "Hłowna skupina, kotraž wšě zdźělenki za rozšěrjenje MediaWiki [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Collection Collection] wobsahuje",
+ "translate-group-desc-eol": "Zdźělenska skupina za [[Translating:EOL|Encyclopedia of Life]]",
+ "translate-group-desc-etherpad-lite": "[[Translating:Etherpad lite|Etherpad lite]] je editor we woprawdźitym času za zhromadne dźěło",
+ "translate-group-desc-europeana": "[[Translating:Europeana|Europeana 1914-1918]] je websydło z powědančkami, filmami a histirskim materialom wo prěnej swětowej wójnje",
+ "translate-group-desc-flaggedrevs": "Hłowna skupina, kotraž wšě zdźělenki za rozšěrjenje MediaWiki [https://www.mediawiki.org/wiki//Special:MyLanguageExtension:FlaggedRevs FlaggedRevs] wobsahuje",
+ "translate-group-desc-fuel": "[[Translating:FUEL|FUEL]] přinjese wjace konsistency do softwaroweho přełožowanja",
+ "translate-group-desc-ihris": "Skupina powěsćow za [[Translating:iHRIS|iHRIS]]",
+ "translate-group-desc-kiwix": "Zdźělenska skupina za [[Translating:Kiwix|Kiwix]]",
+ "translate-group-desc-mantisbt-plugin-core": "Hłowny tykač za [[Translating:MantisBT|MantisBT]]",
+ "translate-group-desc-mathjax": "[[Translating:MathJax|MathJax]] je JavaScriptowa biblioteka za wšelake wobhladowaki, kotraž matematiske notacije we webwobhladowakach zwobraznja.",
+ "translate-group-desc-mediawiki-core-branch": "Zdźělenki za stabilnu wersiju [[Translating:MediaWiki|MediaWiki]]",
+ "translate-group-desc-mediawikicore": "Tuta skupina zdźělenkow wobsahuje zdźělenki, kotrež so w aktualnej alfa-wersiji MediaWiki ({{CURRENTVERSION}}) wužiwaja",
+ "translate-group-desc-mediawikiextensions": "Hłowna skupina, kotraž wšě zdźělenki za podpěrane rozšěrjenja za MediaWiki wobsahuje.",
+ "translate-group-desc-mediawikimostused": "Tuta skupina zdźělenkow wobsahuje [https://translatewiki.net/wiki/Most_often_used_messages_in_MediaWiki 500 najhusćišo wužiwanych zdźělenkow] w [[Translating:MediaWiki|MediaWiki]]",
+ "translate-group-desc-mifos": "[[Translating:Mifos|Mifos]] je zarjadowanski informaciski system za mikrofinancne institucije",
+ "translate-group-desc-nocc": "[http://nocc.sourceforge.net NOCC] je webmejlowy klient spisany w PHP. Zdźěl prošu problemy na stronje [[Support|Podpěra]].",
+ "translate-group-desc-nodesc": "Za tutu skupinu zdźělenkow wopisanje k dispoziciji njesteji.",
+ "translate-group-desc-openimages-all": "Tute zdźělenki su dźěl projekta [[Translating:Open Images|Open Images]]",
+ "translate-group-desc-potlatch2": "[[Translating:OpenStreetMap|Potlatch2]] je editor za OpenStreetMap, kotryž na Flash bazěruje",
+ "translate-group-desc-pywikipedia": "[[Translating:Pywikibot|Pywikibot]] je zběrka nastrojow za wobdźěłowanju Wikipedije",
+ "translate-group-desc-readerfeedback": "Metaskupina powěsćow, kotraž wšě powěsće za rozšěrjenje MediaWiki [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:ReaderFeedback ReaderFeedback] wobsahuje",
+ "translate-group-desc-semantic": "Hłowna zdźělenska skupina, kotraž wšě zdźělenki za wšě rozšěrjenja [https://semantic-mediawiki.org/ Semantic MediaWiki] wobsahuje",
+ "translate-group-desc-translatablepages": "Wšě přełožujomne strony",
+ "translate-group-desc-translate": "Hłowna skupina, kotraž wšě zdźělenki za rozšěrjenje MediaWiki [https://www.mediawiki.org/wiki/Extension:Translate Translate] wobsahuje; prošu zeznaj so z [https://www.mediawiki.org/wiki/Special:MyLanguage/Help:Extension:Translate/Glossary glosarom]",
+ "translate-group-desc-tsint": "Zdźělenska skupina za [[Translating:Intuition|Intuition]], i18n-system za nastroje [//tools.wmflabs.org/ Toolserver] (<span class=\"plainlinks\">[[Translating talk:Intuition|podpěra]] </span>)",
+ "translate-group-desc-universallanguageselector": "Metaskupina zdźělenkow, kotraž wšě zdźělenki za rozšěrjenje MediaWiki [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:UniversalLanguageSelector UniversalLanguageSelector] (ULS) a přisłušne softwarowe pakćiki wobsahuje",
+ "translate-group-desc-vicuna": "[[Translating:VicuñaUploader|VicuñaUploader]] je nastroj za nahrawanje datajow do Wikimedia Commons a druhich wikimedijowych projektow",
+ "translate-group-desc-visualeditor": "Metaskupina zdźělenkow, kotraž wšě zdźělenki za rozšěrjenje MediaWiki [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:VisualEditor VisualEditor] a přisłušne softwarowe pakćiki wobsahuje.",
+ "translate-group-desc-waymarked-trails": "[[Translating:Waymarked Trails|Waymarked Trails]] je słužba, kotraž ruty za pućowanje, kolesowanje, mountainbikowanje a skating na cyłym swěće pokazuje. Wužiwa licencu GNU GPL",
+ "translate-group-desc-waymarked-trails-help": "Strony pomocy websydłow za Waymarked Trails: http://waymarkedtrails.org/help/about",
+ "translate-group-desc-wikiaextensions": "Hłowna skupina, kotraž wšě zdźělenki za podpěrowane rozšěrjenja MediaWiki wobsahuje, kotrež so wot [http://www.wikia.com Wikia] wužiwaja",
+ "translate-group-desc-wikimania-scholarships-app": "Skupina zdźělenkow za [https://scholarships.wikimedia.org/apply stipendijowe nałoženje Wikimania]",
+ "translate-group-desc-wikimedia-mobile": "Zdźělenska metaskupina, kotraž mobilne aplikacije za Wikimedijowe projekty wobsahuje",
+ "translate-group-desc-wikimedia-mobile-wikipedia": "[[Translating:WikipediaMobile|WikipediaMobile]] je aplikacija za mobilne graty a tablety za čitanje a sobudźěło we Wikipediji",
+ "translate-group-desc-wikimedia-mobile-wikipedia-android": "[[Translating:WikipediaMobile|Wikipedija Android]] je specifiska wersija za Android nałoženja Wikipedia mobile",
+ "translate-group-desc-wikimedia-mobile-wikipedia-ios": "[[Translating:WikipediaMobile|Wikipedia iOS]] je wersija iOS nałoženja Wikipedia mobile",
+ "translate-group-desc-wikimedia-mobile-wikisource": "[[Translating:WikisourceMobile|WikisourceMobile]] je aplikacija za mobilne graty a tablety za čitanje a sobudźěło we Wikižórle",
+ "translate-group-desc-wikimedia-mobile-wiktionary": "[[Translating:WiktionaryMobile|WiktionaryMobile]] je aplikacija za mobilne graty a tablety za čitanje a sobudźěło we Wikisłowniku",
+ "translate-group-desc-wikimediaextensions": "Hłowna skupina, kotraž wšě zdźělenki za podpěrowane rozšěrjenja MediaWiki wobsahuje, kotrež so přez [https://wikimediafoundation.org/ Wikimedia Foundation] wužiwaja",
+ "translate-group-desc-wikimediaextensions-main": "Metaskupina zdźělenkow, kotraž wšě powěsće za podpěrowane rozšěrjenja MediaWiki wobsahuje, kotrež dyrbja so za [https://meta.wikimedia.org/wiki/Special:MyLanguage/Language_committee rěčny komitej] Wikimedije přełožować",
+ "translategroupdescriptions-desc": "Wopisanje za skupiny zdźělenkow za produkty, kotrež so přez rozšěrjenje [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Translate Translate] pdopěruja"
+}
diff --git a/MLEB/Translate/i18n/groupdescriptions/hu.json b/MLEB/Translate/i18n/groupdescriptions/hu.json
new file mode 100644
index 00000000..1d2260d1
--- /dev/null
+++ b/MLEB/Translate/i18n/groupdescriptions/hu.json
@@ -0,0 +1,30 @@
+{
+ "@metadata": {
+ "authors": [
+ "Dani",
+ "Glanthor Reviol",
+ "Lokal Profil",
+ "Tacsipacsi"
+ ]
+ },
+ "bw-desc-freecol": "Mielőtt elkezdenéd fordítani a FreeColt a saját nyelvedre, olvasd el a [[Translating:FreeCol]] lapot. A FreeCol GPL-licencet használ.",
+ "bw-desc-fudforum": "[http://fudforum.org/ FUDforum], egy PHP-ben írt webfórum",
+ "bw-desc-mantisbt": "[[Translating:MantisBT|MantisBT]] egy ingyenes webalapú hibakövető rendszer",
+ "bw-desc-osm-site": "Ez a csoport tartalmazza az [[Translating:Open Street Map|Open Street Map]] felhasználói felületének szövegeit.\nA többesszám formátumáról [http://unicode.org/repos/cldr-tmp/trunk/diff/supplemental/language_plural_rules.html#{{UILANGCODE}} itt] tudhatsz meg többet.",
+ "bw-desc-wikiblame": "A [http://wikipedia.ramselehof.de/wikiblame.php Wikiblame] segítségével könnyen megtalálhatod egy Wikimédia-wikis lap szerkesztőit.",
+ "translate-group-desc-collection": "Gyűjtőcsoport, ami a [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Collection Collection] MediaWiki-kiterjesztéshez tartozó összes üzenetet tartalmazza",
+ "translate-group-desc-flaggedrevs": "Gyűjtőcsoport, ami a [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:FlaggedRevs FlaggedRevs] MediaWiki-kiterjesztéshez tartozó összes üzenetet tartalmazza",
+ "translate-group-desc-mediawikicore": "Ez a csoport a MediaWiki jelenlegi alfaverziójának ({{CURRENTVERSION}}) üzeneteit tartalmazza",
+ "translate-group-desc-mediawikiextensions": "Gyűjtőcsoport, ami az összes MediaWiki-kiterjesztés üzeneteit tartalmazza",
+ "translate-group-desc-mediawikimostused": "Ez a csoport a [[Translating:MediaWiki|MediaWikiben]] [https://translatewiki.net/wiki/Most_often_used_messages_in_MediaWiki leggyakrabban használt 500 üzenetet] tartalmazza",
+ "translate-group-desc-nocc": "A [http://nocc.sourceforge.net NOCC] egy PHP-ban írt webmail-kliens. A problémákat [[Support|Segítség]] oldalon jelezheted.",
+ "translate-group-desc-nodesc": "Az üzenetcsoporthoz nincs leírás",
+ "translate-group-desc-openimages-all": "Ezek az üzenetek az [[Translating:Open Images|Open Images]] projekt részei",
+ "translate-group-desc-pywikipedia": "A [[Translating:Pywikibot|Pywikibot]] a Wikipédia szerkesztéséhez szükséges eszközök gyűjteménye",
+ "translate-group-desc-readerfeedback": "Gyűjtőcsoport, ami a [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:ReaderFeedback ReaderFeedback] MediaWiki-kiterjesztéshez tartozó összes üzenetet tartalmazza",
+ "translate-group-desc-translatablepages": "Az összes fordítható lap",
+ "translate-group-desc-translate": "Gyűjtőcsoport, ami a [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Translate Translate] MediaWiki-kiterjesztéshez tartozó összes üzenetet tartalmazza; kérjük, előbb ismerkedj meg a [https://www.mediawiki.org/wiki/Help:Extension:Translate/Glossary szószedetével]",
+ "translate-group-desc-tsint": "Üzenetcsoport a [[Translating:Intuition|Intuitionhez]], ami egy i18n-rendszer [//tools.wmflabs.org/ toolserveres] eszközökhöz (<span class=\"plainlinks\">[[Translating talk:Intuition|támogatás]]</span>)",
+ "translate-group-desc-wikiaextensions": "Gyűjtőcsoport, ami a [http://www.wikia.com Wikia] által használt MediaWiki-kiterjesztések összes üzenetét tartalmazza",
+ "translate-group-desc-wikimediaextensions": "Gyűjtőcsoport, ami a [https://wikimediafoundation.org/ Wikimédia Alapítvány] által használt MediaWiki-kiterjesztések összes üzenetét tartalmazza"
+}
diff --git a/MLEB/Translate/i18n/groupdescriptions/ia.json b/MLEB/Translate/i18n/groupdescriptions/ia.json
new file mode 100644
index 00000000..c3046d01
--- /dev/null
+++ b/MLEB/Translate/i18n/groupdescriptions/ia.json
@@ -0,0 +1,46 @@
+{
+ "@metadata": {
+ "authors": [
+ "McDutchie",
+ "Lokal Profil"
+ ]
+ },
+ "bw-desc-freecol": "Ante de traducer FreeCol in tu lingua, per favor lege [[Translating:FreeCol]]. FreeCol usa le licentia GPL.",
+ "bw-desc-fudforum": "[http://fudforum.org/ FUDforum], un foro web scribite in PHP.",
+ "bw-desc-mantisbt": "[[Translating:MantisBT|MantisBT]] es un systema libere pro gerer defectos via web.",
+ "bw-desc-openstreetmap": "Gruppo pro tote le messages de [[Translating:OpenStreetMap|OpenStreetMap]]",
+ "bw-desc-osm-site": "Iste gruppo de messages contine le messages de interfacie pro [[Translating:Open Street Map|Open Street Map]].\nVide le [http://unicode.org/repos/cldr-tmp/trunk/diff/supplemental/language_plural_rules.html#{{UILANGCODE}} pagina CLDR Unicode] pro un explication de como se codifica le plurales.",
+ "bw-desc-wikiblame": "[http://wikipedia.ramselehof.de/wikiblame.php Wikiblame] pote rapidemente trovar le autores de un pagina in un wiki de Wikimedia.",
+ "translate-group-desc-blockly": "Un gruppo de messages pro [[Translating:Blockly|Blockly]]",
+ "translate-group-desc-bluespice": "Metagruppo con tote le messages pro le extensiones [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:BlueSpice Blue Spice] de MediaWiki",
+ "translate-group-desc-collection": "Metagruppo con tote le messages pro le extension de [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Collection Collection] de MediaWiki",
+ "translate-group-desc-eol": "Un gruppo de messages pro le [[Translating:EOL|Encyclopedia del Vita]]",
+ "translate-group-desc-etherpad-lite": "[[Translating:Etherpad lite|Etherpad lite]] es un editor collaborative in tempore realmente real",
+ "translate-group-desc-europeana": "[[Translating:Europeana|Europeana 1914-1918]] es un sito web con historias, films e material historic sur le Prime Guerra Mundial",
+ "translate-group-desc-flaggedrevs": "Metagruppo con tote le messages pro le extension [https://www.mediawiki.org/wiki/Special:MyLanguage Marcaversiones] de MediaWiki",
+ "translate-group-desc-fuel": "[[Translating:FUEL|FUEL]] apporta plus consistentia al traduction de software",
+ "translate-group-desc-huggle": "[[Translating:Huggle|Huggle]] es un application pro le exploration rapide de differentias pro tractar le vandalismo in projectos de Wikimedia",
+ "translate-group-desc-ihris": "Un gruppo de messages pro [[Translating:iHRIS|iHRIS]]",
+ "translate-group-desc-kiwix": "Un gruppo de messages pro [[Translating:Kiwix|Kiwix]]",
+ "translate-group-desc-mantisbt-plugin-core": "Un plugin fundamental pro [[Translating:MantisBT|MantisBT]]",
+ "translate-group-desc-mediawiki-core-branch": "Messages pro un version stabile de [[Translating:MediaWiki|MediaWiki]]",
+ "translate-group-desc-mediawikicore": "Iste gruppo contine le messages usate in le version alpha actual de MediaWiki ({{CURRENTVERSION}})",
+ "translate-group-desc-mediawikiextensions": "Metagruppo con tote le messages pro le extensiones supportate pro MediaWiki",
+ "translate-group-desc-mediawikimostused": "Iste gruppo contine le [https://translatewiki.net/wiki/Most_often_used_messages_in_MediaWiki 500 messages usate le plus frequentemente] in [[Translating:MediaWiki|MediaWiki]]",
+ "translate-group-desc-mifos": "[[Translating:Mifos|Mifos]] es un systema de gestion pro microfinanciamento",
+ "translate-group-desc-nocc": "[http://nocc.sourceforge.net NOCC] es un cliente de e-mail via web, scribite in PHP. Per favor reporta omne problema in [[Support]].",
+ "translate-group-desc-nodesc": "Nulle description es disponibile pro iste gruppo de messages",
+ "translate-group-desc-openimages-all": "Iste messages face parte del projecto [[Translating:Open Images|Open Images]]",
+ "translate-group-desc-potlatch2": "[[Translating:OpenStreetMap|Potlatch2]] es un editor pro OpenStreetMap a base de Flash",
+ "translate-group-desc-pywikipedia": "[[Translating:Pywikibot|Pywikibot]] es un collection de instrumentos pro modificar Wikipedia",
+ "translate-group-desc-readerfeedback": "Metagruppo con tote le messages pro le extension MediaWiki [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:ReaderFeedback ReaderFeedback]",
+ "translate-group-desc-semantic": "Meta-gruppo que contine le messages pro tote le extensiones de [https://semantic-mediawiki.org/ Semantic MediaWiki]",
+ "translate-group-desc-translatablepages": "Tote le paginas traducibile",
+ "translate-group-desc-translate": "Metagruppo con tote le messages pro le extension de MediaWiki [https://www.mediawiki.org/Special:MyLanguage/wiki/Extension:Translate Traducer]; per favor familiarisa te con le [https://www.mediawiki.org/wiki/Help:Extension:Translate/Glossary glossario].",
+ "translate-group-desc-tsint": "Un gruppo de messages pro [[Translating:Intuition|Intuition]], le systema de internationalisation pro le instrumentos de [http://toolserver.org Toolserver] (<span class=\"plainlinks\">[[Translating talk:Intuition|adjuta]]</span>).",
+ "translate-group-desc-waymarked-trails": "[[Translating:Waymarked Trails|Waymarked Trails]] es un servicio que monstra routes de sport pedestre, cyclismo, mountain bike e patinage in linea in tote le mundo. Illo usa le licentia GNU GPL.",
+ "translate-group-desc-wikiaextensions": "Metagruppo con tote le messages pro le extensiones supportate de MediaWiki usate per [http://www.wikia.com Wikia]",
+ "translate-group-desc-wikimediaextensions": "Metagruppo con tote le messages pro le extensiones supportate de MediaWiki usate per le [https://wikimediafoundation.org/ Fundation Wikimedia]",
+ "translate-group-desc-wikimediaextensions-main": "Metagruppo que contine tote le messages pro le extensiones supportate per MediaWiki que debe esser traducite pro le [https://meta.wikimedia.org/wiki/Special:MyLanguage/Language_committee Comité de linguas] del Fundation Wikimedia",
+ "translategroupdescriptions-desc": "Descriptiones de gruppos de messages pro productos supportate per le extension [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Translate Translate]"
+}
diff --git a/MLEB/Translate/i18n/groupdescriptions/id.json b/MLEB/Translate/i18n/groupdescriptions/id.json
new file mode 100644
index 00000000..e0c9fc75
--- /dev/null
+++ b/MLEB/Translate/i18n/groupdescriptions/id.json
@@ -0,0 +1,40 @@
+{
+ "@metadata": {
+ "authors": [
+ "Bennylin",
+ "Farras",
+ "Irwangatot",
+ "IvanLanin",
+ "Rex",
+ "Lokal Profil"
+ ]
+ },
+ "bw-desc-freecol": "Sebelum menerjemahkan FreeCol ke bahasa Anda, harap baca [[Translating:FreeCol]] terlebih dahulu. FreeCol menggunakan lisensi GPL.",
+ "bw-desc-fudforum": "[http://fudforum.org/ FUDforum], sebuah web forum yang ditulis dalam PHP.",
+ "bw-desc-mantisbt": "[[Translating:MantisBT|MantisBT]] adalah sebuah sistem penelusuran bug berbasis web. Laporkan temuan-temuan masalah di [[Support]].",
+ "bw-desc-openstreetmap": "Kumpulan pesan untuk semua pesan [[Translating:OpenStreetMap|OpenStreetMap]]",
+ "bw-desc-osm-site": "Kelompok pesan ini berisi pesan antarmuka untuk [[Translating:Open Street Map|Peta jalan terbuka]].",
+ "bw-desc-wikiblame": "[http://wikipedia.ramselehof.de/wikiblame.php Wikiblame] dapat dengan cepat menampilkan daftar penulis suatu halaman wiki Wikimedia.",
+ "translate-group-desc-collection": "Grup pesan meta yang berisikan semua pesan sistem untuk ekstensi MediaWiki [https://www.mediawiki.org/wiki/Extension:Collection Collection]",
+ "translate-group-desc-europeana": "[[Translating:Europeana|Europeana]] memungkinkan eksplorasi sumber daya budaya digital Eropa",
+ "translate-group-desc-flaggedrevs": "Grup pesan meta yang berisikan semua pesan untuk ekstensi MediaWiki [https://www.mediawiki.org/wiki/Extension:FlaggedRevs FlaggedRevs]",
+ "translate-group-desc-ihris": "Kelompok pesan untuk [[Translating:iHRIS|iHRIS]]",
+ "translate-group-desc-mantisbt-plugin-core": "Plugin inti untuk [[Translating:MantisBT|MantisBT]]",
+ "translate-group-desc-mediawiki-core-branch": "Pesan untuk versi stabil [[Translating:MediaWiki|MediaWiki]]",
+ "translate-group-desc-mediawikicore": "Grup pesan ini berisikan pesan-pesan sistem yang digunakan dalam MediaWiki versi alfa terbaru ({{CURRENTVERSION}})",
+ "translate-group-desc-mediawikiextensions": "Grup pesan meta yang berisikan semua pesan sistem untuk ekstensi MediaWiki yang didukung",
+ "translate-group-desc-mediawikimostused": "Grup ini berisikan [https://translatewiki.net/wiki/Most_often_used_messages_in_MediaWiki 500 pesan sistem yang paling sering digunakan] di MediaWiki",
+ "translate-group-desc-mifos": "[[Translating:Mifos|Mifos]] adalah sebuah sistem informasi manajemen keuangan mikro",
+ "translate-group-desc-nocc": "[http://nocc.sourceforge.net NOCC] adalah sebuah klien webmail yang ditulis menggunakan PHP. Laporkan temuan-temuan masalah di [[Support]].",
+ "translate-group-desc-nodesc": "Tidak ada deskripsi untuk kelompok pesan ini",
+ "translate-group-desc-openimages-all": "Pesan berikut adalah bagian dari proyek [[Translating:Open Images|Gambar Terbuka]]",
+ "translate-group-desc-pywikipedia": "[[Translating:Pywikibot|Pywikibot]] adalah koleksi peralatan untuk menyunting Wikipedia",
+ "translate-group-desc-readerfeedback": "Kelompok pesan meta yang berisi semua pesan untuk ekstensi MediaWiki [https://www.mediawiki.org/wiki/Extension:ReaderFeedback ReaderFeedback]",
+ "translate-group-desc-translatablepages": "Semua halaman yang dapat diterjemahkan",
+ "translate-group-desc-translate": "Grup pesan meta yang berisikan semua pesan untuk ekstensi MediaWiki [https://www.mediawiki.org/wiki/Extension:Translate Translate]",
+ "translate-group-desc-tsint": "Kelompok pesan untuk [http://toolserver.org/~krinkle/TsIntuition Toolserver Intuition], sistem i18n untuk alat [http://toolserver.org Toolserver] (<span class=\"plainlinks\">[[Translating talk:Toolserver|dukungan]] &middot; [https://wiki.toolserver.org/view/Toolserver_Intuition detail teknis]</span>)",
+ "translate-group-desc-wikiaextensions": "Grup pesan meta yang berisikan semua pesan untuk ekstensi MediaWiki yang didukung yang digunakan oleh [http://www.wikia.com Wikia]",
+ "translate-group-desc-wikimediaextensions": "Grup pesan meta yang berisikan semua pesan sistem untuk ekstensi MediaWiki yang didukung yang digunakan oleh [http://wikimedia.org Wikimedia Foundation]",
+ "translate-group-desc-wikimediaextensions-main": "Kelompok pesan meta yang berisi semua pesan untuk ekstensi MediaWiki yang didukung yang perlu diterjemahkan untuk [https://meta.wikimedia.org/wiki/Language_committee Komite bahasa] Wikimedia",
+ "translategroupdescriptions-desc": "Deskripsi kelompok pesan untuk produk yang didukung oleh ekstensi [https://mediawiki.org/wiki/Extension:Translate Translate]"
+}
diff --git a/MLEB/Translate/i18n/groupdescriptions/it.json b/MLEB/Translate/i18n/groupdescriptions/it.json
new file mode 100644
index 00000000..ddd93505
--- /dev/null
+++ b/MLEB/Translate/i18n/groupdescriptions/it.json
@@ -0,0 +1,64 @@
+{
+ "@metadata": {
+ "authors": [
+ "Beta16",
+ "Civvì",
+ "Darth Kule",
+ "Gianfranco",
+ "Nemo bis"
+ ]
+ },
+ "bw-desc-freecol": "[[Translating:FreeCol|FreeCol]] è un gioco strategico a turni.",
+ "bw-desc-fudforum": "[[Translating:FUDforum|FUDforum]], un forum web scritto in PHP.",
+ "bw-desc-mantisbt": "[[Translating:MantisBT|MantisBT]] è un sistema gratuito di tracciamento bug web-based.",
+ "bw-desc-openstreetmap": "Questo gruppo contiene tutti i messaggi per [[Translating:OpenStreetMap|OpenStreetMap]]",
+ "bw-desc-osm-site": "Questo gruppo di messaggi contiene i messaggi dell'interfaccia per tradurre [[Translating:Open Street Map|Open Street Map]].\nVedi [http://unicode.org/repos/cldr-tmp/trunk/diff/supplemental/language_plural_rules.html#{{UILANGCODE}} la pagina Unicode CLDR per i criteri sul'uso dei plurali].",
+ "bw-desc-wikiblame": "[http://wikipedia.ramselehof.de/wikiblame.php Wikiblame] è in grado di trovare velocemente gli autori di una pagina in un sito di Wikimedia.",
+ "translate-group-desc-blockly": "Un gruppo messaggi per [[Translating:Blockly|Blockly]]",
+ "translate-group-desc-bluespice": "Meta gruppo di messaggi contenente tutti i messaggi dell'estensione MediaWiki [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:BlueSpice Blue Spice]",
+ "translate-group-desc-collection": "Meta gruppo di messaggi contenente tutti i messaggi dell'estensione MediaWiki [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Collection Collection]",
+ "translate-group-desc-eol": "Un gruppo di messaggi per [[Translating:EOL|Encyclopedia of Life]]",
+ "translate-group-desc-etherpad-lite": "[[Translating:Etherpad lite|Etherpad lite]] è un editor collaborativo in tempo reale",
+ "translate-group-desc-europeana": "[[Translating:Europeana|Europeana 1914-1918]] è un sito web con storie, film, e materiale storico sulla prima guerra mondiale",
+ "translate-group-desc-flaggedrevs": "Meta gruppo di messaggi contenente tutti i messaggi dell'estensione MediaWiki [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:FlaggedRevs FlaggedRevs]",
+ "translate-group-desc-fuel": "[[Translating:FUEL|FUEL]] rende più consistente la traduzione di software",
+ "translate-group-desc-huggle": "[[Translating:Huggle|Huggle]] è un'applicazione per browser per vedere velocemente i diff, per affrontare gli atti di vandalismo sui progetti Wikimedia",
+ "translate-group-desc-ihris": "Un gruppo di messaggi per [[Translating:iHRIS|iHRIS]]",
+ "translate-group-desc-kiwix": "Un gruppo di messaggi per [[Translating:Kiwix|Kiwix]]",
+ "translate-group-desc-mantisbt-plugin-core": "Un'estensione di [[Translating:MantisBT|MantisBT]]",
+ "translate-group-desc-mathjax": "[[Translating:MathJax|MathJax]] è una libreria JavaScript cross-browser per visualizzare la notazione matematica nei browser web",
+ "translate-group-desc-mediawiki-core-branch": "Messaggi di una versione stabile di [[Translating:MediaWiki|MediaWiki]]",
+ "translate-group-desc-mediawikiapi": "Questo gruppo di messaggi contiene i messaggi usati nelle API dell'attuale versione alfa di [[Translating:MediaWiki|MediaWiki]] ({{CURRENTVERSION}})",
+ "translate-group-desc-mediawikicore": "Questo gruppo di messaggi contiene i messaggi usati nell'attuale versione alfa di MediaWiki ({{CURRENTVERSION}})",
+ "translate-group-desc-mediawikiextensions": "Meta gruppo di messaggi contenente tutti i messaggi per le estensioni di MediaWiki supportate",
+ "translate-group-desc-mediawikiskins": "Meta gruppo di messaggi contenente tutti i messaggi per le skin di [[Translating:MediaWiki|MediaWiki]] supportate",
+ "translate-group-desc-mediawikimostused": "Questo gruppo di messaggi contiene i [https://translatewiki.net/wiki/Most_often_used_messages_in_MediaWiki 500 messaggi più usati] in [[Translating:MediaWiki|MediaWiki]]",
+ "translate-group-desc-mifos": "[[Translating:Mifos|Mifos]] è un sistema di gestione delle informazioni per la microfinanza",
+ "translate-group-desc-nfcring-control": "[[Translating:NFC_Ring_Control|NFC Ring Control]] è un'applicazione mobile per intergaire con i tag NFC",
+ "translate-group-desc-nocc": "[[Translating:NOCC|NOCC]] è un client webmail scritto in PHP.",
+ "translate-group-desc-nodesc": "Nessuna descrizione disponibile per questo gruppo di messaggi",
+ "translate-group-desc-openimages-all": "Questi messaggi sono parte del progetto [[Translating:Open Images|Open Images]]",
+ "translate-group-desc-potlatch2": "[[Translating:OpenStreetMap|Potlatch2]] è un editor di OpenStreetMap basato su Flash",
+ "translate-group-desc-pywikipedia": "[[Translating:Pywikibot|Pywikibot]] è una collezione di strumenti per modificare siti MediaWiki",
+ "translate-group-desc-readerfeedback": "Meta gruppo di messaggi contenente tutti i messaggi dell'estensione MediaWiki [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:ReaderFeedback ReaderFeedback]",
+ "translate-group-desc-semantic": "Meta gruppo di messaggi contentente tutti i messaggi di tutte le estensioni [https://semantic-mediawiki.org/ Semantic MediaWiki]",
+ "translate-group-desc-translatablepages": "Tutte le pagine traducibili",
+ "translate-group-desc-translate": "Meta gruppo di messaggi contenente tutti i messaggi dell'estensione MediaWiki [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Translate Translate]; si prega di familiarizzare con il suo [https://www.mediawiki.org/wiki/Help:Extension:Translate/Glossary glossario]",
+ "translate-group-desc-tsint": "Un gruppo di messaggi per [[Translating:Intuition|Intuition]], il sistema di localizzazione degli strumenti del [//tools.wmflabs.org/ Wikimedia Tool Labs] (<span class=\"plainlinks\">[[Translating talk:Intuition|supporto]]</span>)",
+ "translate-group-desc-universallanguageselector": "Gruppo di meta messaggi che contiene tutti i messaggi per l'estensione MediaWiki [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:UniversalLanguageSelector UniversalLanguageSelector] (ULS) e relativi pacchetti software",
+ "translate-group-desc-vicuna": "[[Translating:VicuñaUploader|VicuñaUploader]] è uno strumento per caricare file su Wikimedia Commons e sugli altri progetti Wikimedia",
+ "translate-group-desc-visualeditor": "Gruppo di meta messaggi che contiene tutti i messaggi per l'estensione MediaWiki [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:VisualEditor VisualEditor] e relativi pacchetti software",
+ "translate-group-desc-waymarked-trails": "[[Translating:Waymarked Trails|Waymarked Trails]] è un servizio che mostra percorsi per escursionismo, ciclismo, mountain bike e pattinaggio in tutto il mondo. Usa la licenza GNU GPL.",
+ "translate-group-desc-waymarked-trails-help": "Le pagine di aiuto del sito web Waymarked Trails: http://waymarkedtrails.org/help/about",
+ "translate-group-desc-wikiaextensions": "Meta gruppo di messaggi contenente tutti i messaggi per le estensioni di MediaWiki supportate usate da [http://www.wikia.com Wikia]",
+ "translate-group-desc-wikimania-scholarships-app": "Gruppo di messaggi per la [https://scholarships.wikimedia.org/apply domanda di borsa di studio per Wikimania]",
+ "translate-group-desc-wikimedia-mobile": "Questo gruppo di messaggi contiene tutti i messaggi delle applicazioni per dispositivi mobili sui progetti Wikimedia.",
+ "translate-group-desc-wikimedia-mobile-wikipedia": "[[Translating:WikipediaMobile|WikipediaMobile]] è un'applicazione multipiattaforma per dispositivi mobili e tavolette per leggere e modificare Wikipedia",
+ "translate-group-desc-wikimedia-mobile-wikipedia-android": "[[Translating:WikipediaMobile|Wikipedia Android]] è la versione specifica per Android dell'applicazione di Wikipedia per dispositivi mobili",
+ "translate-group-desc-wikimedia-mobile-wikipedia-ios": "[[Translating:WikipediaMobile|Wikipedia iOS]] è la versione specifica per iOS dell'applicazione di Wikipedia per dispositivi mobili",
+ "translate-group-desc-wikimedia-mobile-wikisource": "[[Translating:WikisourceMobile|WikisourceMobile]] è un'applicazione multipiattaforma per dispositivi mobili e tavolette per leggere e modificare Wikisource",
+ "translate-group-desc-wikimedia-mobile-wiktionary": "[[Translating:WiktionaryMobile|WiktionaryMobile]] è un'applicazione multipiattaforma per dispositivi mobili e tavolette per leggere e modificare Wiktionary",
+ "translate-group-desc-wikimediaextensions": "Meta gruppo di messaggi contenente tutti i messaggi per le estensioni di MediaWiki usate dalla [https://wikimediafoundation.org/ Wikimedia Foundation]",
+ "translate-group-desc-wikimediaextensions-main": "Meta gruppo di messaggi contenente tutti i messaggi delle estensioni MediaWiki supportate che devono essere tradotte per il [https://meta.wikimedia.org/wiki/Special:MyLanguage/Language_committee Comitato linguistico] di Wikimedia",
+ "translategroupdescriptions-desc": "Descrizioni dei gruppi di messaggi dei progetti supportati dalla [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Translate estensione Translate]."
+}
diff --git a/MLEB/Translate/i18n/groupdescriptions/ja.json b/MLEB/Translate/i18n/groupdescriptions/ja.json
new file mode 100644
index 00000000..387f8d29
--- /dev/null
+++ b/MLEB/Translate/i18n/groupdescriptions/ja.json
@@ -0,0 +1,62 @@
+{
+ "@metadata": {
+ "authors": [
+ "Aphaia",
+ "Fryed-peach",
+ "Hosiryuhosi",
+ "Shirayuki",
+ "Whym",
+ "青子守歌"
+ ]
+ },
+ "bw-desc-freecol": "[[Translating:FreeCol|FreeCol]] は、ターン制戦略ゲームです",
+ "bw-desc-fudforum": "[[Translating:FUDforum|FUDforum]] は、ウェブ上での議論フォーラムのためのソフトウェアです",
+ "bw-desc-mantisbt": "[[Translating:MantisBT|MantisBT]] はウェブ上でのバグ追跡ソフトウェアです",
+ "bw-desc-openstreetmap": "[[Translating:OpenStreetMap|OpenStreetMap]] に関連する全メッセージ",
+ "bw-desc-osm-site": "[[Translating:OpenStreetMap|OpenStreetMap]] は、編集可能な全世界の地図です",
+ "bw-desc-wikiblame": "[[Translating:WikiBlame|WikiBlame]] は、ウィキメディアウィキ内のページの一部の著者を素早く検索できます",
+ "translate-group-desc-blockly": "[[Translating:Blockly|Blockly]] のメッセージ群",
+ "translate-group-desc-bluespice": "MediaWiki の [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:BlueSpice Blue Spice] 拡張機能群のすべてのメッセージを含む上位メッセージ群",
+ "translate-group-desc-collection": "MediaWiki 拡張機能 [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Collection Collection] のすべてのメッセージを含む上位メッセージ群",
+ "translate-group-desc-eol": "[[Translating:EOL|Encyclopedia of Life]] のメッセージ群",
+ "translate-group-desc-etherpad-lite": "[[Translating:Etherpad lite|Etherpad lite]] は真のリアルタイム共同編集を実現したエディターです",
+ "translate-group-desc-europeana": "[[Translating:Europeana|Europeana]]では、人々がヨーロッパのデジタル文化資源を探索できるようになります。",
+ "translate-group-desc-flaggedrevs": "MediaWiki 拡張機能 [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:FlaggedRevs FlaggedRevs] のすべてのメッセージを含む上位メッセージ群",
+ "translate-group-desc-fuel": "[[Translating:FUEL|FUEL]] は、ソフトウェアの翻訳にさらなる一貫性をもたらします",
+ "translate-group-desc-ihris": "[[Translating:iHRIS|iHRIS]] のメッセージ群",
+ "translate-group-desc-kiwix": "[[Translating:Kiwix|Kiwix]] のメッセージ群",
+ "translate-group-desc-mantisbt-plugin-core": "[[Translating:MantisBT|MantisBT]] の中核プラグイン",
+ "translate-group-desc-mathjax": "[[Translating:MathJax|MathJax]] は、ウェブ ブラウザー内で数式を表示する、クロス ブラウザー対応の JavaScript ライブラリです",
+ "translate-group-desc-mediawiki-core-branch": "[[Translating:MediaWiki|MediaWiki]] 安定版のメッセージ群",
+ "translate-group-desc-mediawikiapi": "このメッセージ群は、[[Translating:MediaWiki|MediaWiki]] の現在のアルファ版 ({{CURRENTVERSION}}) 向けの操作 API で使用しているメッセージを含んでいます",
+ "translate-group-desc-mediawikicore": "このメッセージ群は、[[Translating:MediaWiki|MediaWiki]] の現在のアルファ版 ({{CURRENTVERSION}}) で使用しているメッセージを含んでいます",
+ "translate-group-desc-mediawikiextensions": "サポート対象の [[Translating:MediaWiki|MediaWiki]] 拡張機能のすべてのメッセージを含む上位メッセージ群",
+ "translate-group-desc-mediawikiskins": "サポート対象の [[Translating:MediaWiki|MediaWiki]] 外装のすべてのメッセージを含む上位メッセージ群",
+ "translate-group-desc-mediawikimostused": "このメッセージ群は、[[Translating:MediaWiki|MediaWiki]] で[https://translatewiki.net/wiki/Most_often_used_messages_in_MediaWiki もっともよく使われている 500 のメッセージ]を含んでいます",
+ "translate-group-desc-mifos": "[[Translating:Mifos|Mifos]] は、マイクロファイナンスのための経営情報システムです",
+ "translate-group-desc-nfcring-control": "[[Translating:NFC_Ring_Control|NFC Ring Control]] は、NFC タグとやり取りする携帯機器向けアプリです",
+ "translate-group-desc-nocc": "[[Translating:NOCC|NOCC]]はウェブメールのクライアントです",
+ "translate-group-desc-nodesc": "このメッセージ群には説明がありません",
+ "translate-group-desc-openimages-all": "これらのメッセージは、[[Translating:Open Images|Open Images]] プロジェクトの一部です",
+ "translate-group-desc-potlatch2": "[[Translating:OpenStreetMap|Potlatch2]] は Flash を使用した OpenStreetMap エディターです",
+ "translate-group-desc-pywikipedia": "[[Translating:Pywikibot|Pywikibot]] はウィキペディア編集ツールの集合体です",
+ "translate-group-desc-readerfeedback": "MediaWiki 拡張機能 [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:ReaderFeedback ReaderFeedback] のすべてのメッセージを含む上位メッセージ群",
+ "translate-group-desc-semantic": "[https://semantic-mediawiki.org/ Semantic MediaWiki] 拡張機能のすべてのメッセージを含む上位メッセージ群",
+ "translate-group-desc-translatablepages": "翻訳可能なすべてのページ",
+ "translate-group-desc-translate": "MediaWiki 拡張機能 [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Translate Translate] のすべてのメッセージを含む上位メッセージ群。この拡張機能の[https://www.mediawiki.org/wiki/Help:Extension:Translate/Glossary 用語集]を参照して用語を把握してください。",
+ "translate-group-desc-tsint": "[//tools.wmflabs.org/ Toolserver] のツールの国際化システムである [[Translating:Intuition|Intuition]] のメッセージ群 (<span class=\"plainlinks\">[[Translating talk:Intuition|サポート]]</span>)",
+ "translate-group-desc-universallanguageselector": "MediaWiki の [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:UniversalLanguageSelector UniversalLanguageSelector] (ULS: ユニバーサル言語選択) 拡張機能および関連するソフトウェア パッケージのすべてのメッセージを含むメタ メッセージ群",
+ "translate-group-desc-vicuna": "[[Translating:VicuñaUploader|VicuñaUploader]] はウィキメディア・コモンズやその他のプロジェクト群にファイルをアップロードするためのツールです",
+ "translate-group-desc-visualeditor": "MediaWiki の [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:VisualEditor VisualEditor] 拡張機能のすべてのメッセージを含むメタ メッセージ群",
+ "translate-group-desc-waymarked-trails": "[[Translating:Waymarked Trails|Waymarked Trails]] は、全世界のハイキング、サイクリング、マウンテンバイク、インラインスケートの経路を表示するサービスです。GNU GPL ライセンスを使用します",
+ "translate-group-desc-waymarked-trails-help": "Waymarked Trails ウェブサイトのヘルプページ: http://waymarkedtrails.org/help/about",
+ "translate-group-desc-wikiaextensions": "[http://www.wikia.com Wikia] で使用されている MediaWiki 拡張機能によってサポートされた、すべてのメッセージからなる上位メッセージ群",
+ "translate-group-desc-wikimania-scholarships-app": "[https://scholarships.wikimedia.org/apply ウィキマニア奨学金の申請]関連のメッセージ群",
+ "translate-group-desc-wikimedia-mobile": "ウィキメディア・プロジェクト群の携帯機器版アプリケーションのメッセージを含む集約群",
+ "translate-group-desc-wikimedia-mobile-wikipedia": "[[Translating:WikipediaMobile|WikipediaMobile]] はウィキペディアを閲覧・編集するためのクロスプラットフォームな携帯機器・タブレット端末向けアプリケーションです",
+ "translate-group-desc-wikimedia-mobile-wikisource": "[[Translating:WikisourceMobile|WikisourceMobile]] はウィキソースを閲覧・編集するためのクロスプラットフォームな携帯機器・タブレット端末向けアプリケーションです",
+ "translate-group-desc-wikimedia-mobile-wiktionary": "[[Translating:WiktionaryMobile|WiktionaryMobile]] はウィクショナリーを閲覧・編集するためのクロスプラットフォームな携帯機器・タブレット端末向けアプリケーションです",
+ "translate-group-desc-wikimediaextensions": "[https://wikimediafoundation.org/ ウィキメディア財団]が使用している、サポート対象の MediaWiki 拡張機能のすべてのメッセージを含む上位メッセージ群",
+ "translate-group-desc-wikimediaextensions-main": "ウィキメディアの[https://meta.wikimedia.org/wiki/Special:MyLanguage/Language_committee 言語委員会]が翻訳を必要とする、サポート対象のMediaWiki拡張機能のすべてのメッセージを含む上位メッセージ群",
+ "translategroupdescriptions-desc": "[https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Translate Translate] 拡張機能で利用できる製品のメッセージ群の説明"
+}
diff --git a/MLEB/Translate/i18n/groupdescriptions/ka.json b/MLEB/Translate/i18n/groupdescriptions/ka.json
new file mode 100644
index 00000000..0a47ba80
--- /dev/null
+++ b/MLEB/Translate/i18n/groupdescriptions/ka.json
@@ -0,0 +1,22 @@
+{
+ "@metadata": {
+ "authors": [
+ "David1010"
+ ]
+ },
+ "bw-desc-freecol": "[[Translating:FreeCol|FreeCol]] არის სტარატეგიული თამაში",
+ "bw-desc-openstreetmap": "შეტყობინებების ჯგუფი [[Translating:OpenStreetMap|OpenStreetMap]]-ის ყველა შეტყობინებისათვის",
+ "translate-group-desc-collection": "შეტყობინებების მეტა-ჯგუფი, შეიცავს მედიავიკის გაფართოებების ყველა შეტყობინებას [https://www.mediawiki.org/wiki/Extension:Collection Collection]",
+ "translate-group-desc-eol": "შეტყობინებათა ჯგუფი [[Translating:EOL|Encyclopedia of Life]]-თვის",
+ "translate-group-desc-flaggedrevs": "შეტყობინებების მეტა-ჯგუფი, შეიცავს მედიავიკის გაფართოებების ყველა შეტყობინებას [https://www.mediawiki.org/wiki/Extension:FlaggedRevs FlaggedRevs]",
+ "translate-group-desc-ihris": "შეტყობინებათა ჯგუფი [[Translating:iHRIS|iHRIS]]-თვის",
+ "translate-group-desc-kiwix": "შეტყობინებათა ჯგუფი [[Translating:Kiwix|Kiwix]]-თვის",
+ "translate-group-desc-mantisbt-plugin-core": "ძირითადი პლაგინი [[Translating:MantisBT|MantisBT]]-თვის",
+ "translate-group-desc-mediawiki-core-branch": "შეტყობინებები [[Translating:MediaWiki|მედიავიკის]] სტაბილური ვერსიისათვის",
+ "translate-group-desc-mediawikiextensions": "შეტყობინებების მეტა-ჯგუფი, შეიცავს [[Translating:MediaWiki|მედიავიკის]] მხარდაჭერილი გაფართოებების ყველა შეტყობინებას",
+ "translate-group-desc-nodesc": "ამ ჯგუფის შეტყობინებებისათვის აღწერა არ არის ხელმისაწვდომი",
+ "translate-group-desc-readerfeedback": "შეტყობინებების მეტა-ჯგუფი, შეიცავს მედიავიკის გაფართოებების ყველა შეტყობინებას [https://www.mediawiki.org/wiki/Extension:ReaderFeedback ReaderFeedback]",
+ "translate-group-desc-semantic": "შეტყობინებების მეტა-ჯგუფი, შეიცავს ყველა გაფართოების ყველა შეტყობინებას [https://semantic-mediawiki.org/ Semantic MediaWiki]",
+ "translate-group-desc-translatablepages": "ყველა თარგმნადი გვერდი",
+ "translate-group-desc-translate": "შეტყობინებების მეტა-ჯგუფი, შეიცავს მედიავიკის გაფართოებების ყველა შეტყობინებას [https://www.mediawiki.org/wiki/Extension:Translate თარგმნა]; გთხოვთ, გაეცნოთ მისი [https://www.mediawiki.org/wiki/Help:Extension:Translate/Glossary ტერმინების ლექსიკონს]"
+}
diff --git a/MLEB/Translate/i18n/groupdescriptions/kbd-cyrl.json b/MLEB/Translate/i18n/groupdescriptions/kbd-cyrl.json
new file mode 100644
index 00000000..d2d1b40e
--- /dev/null
+++ b/MLEB/Translate/i18n/groupdescriptions/kbd-cyrl.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Тамэ Балъкъэрхэ"
+ ]
+ },
+ "bw-desc-wikiblame": "[http://wikipedia.ramselehof.de/wikiblame.php Wikiblame] и сэбэпыр псынщIэу къегъэгъуэт напэкIуэцIхэм я тхакIуэхэр Википедие проектым."
+}
diff --git a/MLEB/Translate/i18n/groupdescriptions/km.json b/MLEB/Translate/i18n/groupdescriptions/km.json
new file mode 100644
index 00000000..a913ccf8
--- /dev/null
+++ b/MLEB/Translate/i18n/groupdescriptions/km.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "វ័ណថារិទ្ធ"
+ ]
+ },
+ "bw-desc-wikiblame": "[http://wikipedia.ramselehof.de/wikiblame.php Wikiblame] អាចស្វែងរកយ៉ាងលឿន ​អ្នកនិពន្ធនៃទំព័រមួយ​ក្នុងវីគីនៃ Wikimedia ។"
+}
diff --git a/MLEB/Translate/i18n/groupdescriptions/kn.json b/MLEB/Translate/i18n/groupdescriptions/kn.json
new file mode 100644
index 00000000..54515ad0
--- /dev/null
+++ b/MLEB/Translate/i18n/groupdescriptions/kn.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "VASANTH S.N."
+ ]
+ },
+ "translate-group-desc-translatablepages": "ಭಾಷಾಂತರಿಸಬಹುದಾದ ಎಲ್ಲಾ ಪುಟಗಳು"
+}
diff --git a/MLEB/Translate/i18n/groupdescriptions/ko.json b/MLEB/Translate/i18n/groupdescriptions/ko.json
new file mode 100644
index 00000000..9562dc43
--- /dev/null
+++ b/MLEB/Translate/i18n/groupdescriptions/ko.json
@@ -0,0 +1,60 @@
+{
+ "@metadata": {
+ "authors": [
+ "Kwj2772",
+ "ToePeu",
+ "아라",
+ "Priviet",
+ "Hym411"
+ ]
+ },
+ "bw-desc-freecol": "[[Translating:FreeCol|FreeCol]]은 턴제 전략 게임입니다",
+ "bw-desc-fudforum": "[[Translating:FUDforum|FUDforum]]는 웹 기반 토론 포럼 소프트웨어입니다",
+ "bw-desc-mantisbt": "[[Translating:MantisBT|MantisBT]]는 웹 기반 이슈 추적 소프트웨어입니다",
+ "bw-desc-openstreetmap": "[[Translating:OpenStreetMap|OpenStreetMap]]과 관련된 메시지입니다",
+ "bw-desc-osm-site": "[[Translating:OpenStreetMap|OpenStreetMap]]은 자유롭게 편집할 수 있는 세계 지도입니다",
+ "bw-desc-wikiblame": "[[Translating:WikiBlame|WikiBlame]]은 신속하게 위키미디어 위키에서 문서 일부의 저자를 찾을 수 있습니다",
+ "translate-group-desc-blockly": "[[Translating:Blockly|블록리]]에 대한 메시지 그룹",
+ "translate-group-desc-collection": "미디어위키 확장 기능 [https://www.mediawiki.org/wiki/Extension:Collection Collection]의 모든 메시지를 포함하는 메타 그룹입니다.",
+ "translate-group-desc-eol": "[[Translating:EOL|생명의 백과사전]]에 대한 메시지 그룹입니다",
+ "translate-group-desc-etherpad-lite": "[[Translating:Etherpad lite|Etherpad lite]]은 실시간 공동 작업 편집기입니다",
+ "translate-group-desc-europeana": "[[Translating:Europeana|유로피니아 1914-1918]]은 제1차 세계 대전에 대한 이야기, 영화나 역사적 자료가 있는 웹사이트입니다",
+ "translate-group-desc-flaggedrevs": "미디어위키 확장 기능 [https://www.mediawiki.org/wiki/Extension:FlaggedRevs FlaggedRevs]의 모든 메시지를 포함하는 메타 그룹입니다.",
+ "translate-group-desc-fuel": "[[Translating:FUEL|FUEL]]은 소프트웨어 번역에 더 많은 일관성을 제공합니다",
+ "translate-group-desc-huggle": "[[Translating:Huggle|Huggle]]은 위키미디어 프로젝트에서의 문서 훼손 행위에 빠르게 대처하기 위해 제작된 빠른 차이 보기 브라우저 애플리케이션입니다",
+ "translate-group-desc-ihris": "[[Translating:iHRIS|iHRIS]]에 대한 메시지 그룹입니다",
+ "translate-group-desc-kiwix": "[[Translating:Kiwix|Kiwix]]에 대한 메시지 그룹입니다",
+ "translate-group-desc-mantisbt-plugin-core": "[[Translating:MantisBT|MantisBT]]에 대한 핵심 플러그인입니다",
+ "translate-group-desc-mathjax": "[[Translating:MathJax|MathJax]]는 웹 브라우저에서 수식 표기를 위한 크로스-브라우저 자바스크립트 라이브러리입니다",
+ "translate-group-desc-mediawiki-core-branch": "[[Translating:MediaWiki|미디어위키]]의 안정 버전의 메시지",
+ "translate-group-desc-mediawikicore": "이 메시지 그룹에는 [[Translating:MediaWiki|미디어위키]]의 현재 알파 버전({{CURRENTVERSION}})이 사용하는 메시지가 들어 있습니다",
+ "translate-group-desc-mediawikiextensions": "여기서 지원하는 [[Translating:MediaWiki|미디어위키]]의 확장 기능에 있는 모든 메시지의 메타 그룹입니다.",
+ "translate-group-desc-mediawikimostused": "이 메시지 그룹은 [[Translating:MediaWiki|미디어위키]]에서 [https://translatewiki.net/wiki/Most_often_used_messages_in_MediaWiki 가장 자주 쓰이는 메시지 500개]를 포함하고 있습니다.",
+ "translate-group-desc-mifos": "[[Translating:Mifos|미포스]]는 소액 금융 경영 정보 시스템입니다",
+ "translate-group-desc-nocc": "[[Translating:NOCC|NOCC]]는 웹 메일 클라이언트입니다",
+ "translate-group-desc-nodesc": "이 메시지 그룹에 대한 설명이 없습니다.",
+ "translate-group-desc-openimages-all": "이 메시지는 [[Translating:Open Images|Open Images]] 프로젝트의 일부분입니다.",
+ "translate-group-desc-potlatch2": "[[Translating:OpenStreetMap|Potlatch2]]는 플래시 기반 OpenStreetMap 편집기입니다",
+ "translate-group-desc-pywikipedia": "[[Translating:Pywikibot|Pywikibot]]은 위키백과에서 편집할 수 있는 도구 모음입니다",
+ "translate-group-desc-readerfeedback": "미디어위키 확장 기능 [https://www.mediawiki.org/wiki/Extension:ReaderFeedback ReaderFeedback]의 모든 메시지를 포함하는 메타 그룹입니다.",
+ "translate-group-desc-semantic": "모든 [https://semantic-mediawiki.org/ 시맨틱 미디어위키] 확장 기능의 모든 메시지를 포함하는 메타 그룹입니다.",
+ "translate-group-desc-translatablepages": "모든 번역 가능한 문서",
+ "translate-group-desc-translate": "미디어위키 확장 기능 [https://www.mediawiki.org/wiki/Extension:Translate Translate]의 모든 메시지를 포함하는 메타 그룹입니다. 이 확장 기능의 [https://www.mediawiki.org/wiki/Help:Extension:Translate/Glossary 용어집]을 참고하여 용어를 파악하세요.",
+ "translate-group-desc-tsint": "[[Translating:Intuition|Intuition]] 메시지 그룹, [//tools.wmflabs.org/ 툴서버] 도구용 i18n 시스템 for (<span class=\"plainlinks\">[[Translating talk:Intuition|지원]]</span>)",
+ "translate-group-desc-universallanguageselector": "미디어위키 확장 기능 [https://www.mediawiki.org/wiki/Extension:UniversalLanguageSelector 보편언어선택기](ULS)을 위한 모든 메시지를 포함하는 메타 메시지 그룹와 연관된 소프트웨어 패키지",
+ "translate-group-desc-vicuna": "[[Translating:VicuñaUploader|VicuñaUploader]]는 위키미디어 공용과 다른 위키미디어 프로젝트에 파일을 올리기 위한 도구입니다",
+ "translate-group-desc-visualeditor": "미디어위키 확장 기능 [https://www.mediawiki.org/wiki/Extension:VisualEditor 시각편집기]와 관련된 패키지에 대한 모든 메시지를 포함하고 있는 메타 메시지 그룹",
+ "translate-group-desc-waymarked-trails": "[[Translating:Waymarked Trails|Waymarked Trails]]는 전세계 하이킹, 자전거 타기, 산악 자전거, 인라인 스케이팅 경로를 보여주는 서비스입니다. GNU GPL 라이선스를 사용합니다.",
+ "translate-group-desc-waymarked-trails-help": "Waymarked Trails 웹 사이트의 도움말 페이지입니다: http://waymarkedtrails.org/help/about",
+ "translate-group-desc-wikiaextensions": "[http://www.wikia.com 위키아]에서 쓰이며 여기서 지원하는 미디어위키 확장 기능의 모든 메시지를 포함한 메타 그룹입니다.",
+ "translate-group-desc-wikimania-scholarships-app": "[https://scholarships.wikimedia.org/apply Wikimania Scholarship application]에 대한 메시지 그룹",
+ "translate-group-desc-wikimedia-mobile": "위키미디어 프로젝트에 대한 모바일 애플리케이션을 포함하는 집계한 메시지 그룹입니다",
+ "translate-group-desc-wikimedia-mobile-wikipedia": "[[Translating:WikipediaMobile|위키백과모바일]]은 위키백과 문서를 읽고 기여하는 용도로 쓰이는 크로스 플랫폼 모바일 및 태블릿 어플리케이션입니다",
+ "translate-group-desc-wikimedia-mobile-wikipedia-android": "[[Translating:WikipediaMobile|위키백과 안드로이드]]는 위키백과 모바일 앱의 안드로이드에 특화된 버전입니다",
+ "translate-group-desc-wikimedia-mobile-wikipedia-ios": "[[Translating:WikipediaMobile|위키백과 iOS]]는 위키백과 모바일 앱의 iOS에 특화된 버전입니다",
+ "translate-group-desc-wikimedia-mobile-wikisource": "[[Translating:WikisourceMobile|위키문헌모바일]]은 위키문헌 문서를 읽고 기여하는 용도로 쓰이는 크로스 플랫폼 모바일 및 태블릿 어플리케이션입니다",
+ "translate-group-desc-wikimedia-mobile-wiktionary": "[[Translating:WiktionaryMobile|위키낱말사전모바일]]은 위키낱말사전 문서를 읽고 기여하는 용도로 쓰이는 크로스 플랫폼 모바일 및 태블릿 어플리케이션입니다.",
+ "translate-group-desc-wikimediaextensions": "[https://wikimediafoundation.org/ 위키미디어 재단]에서 쓰이며 여기서 지원하는 미디어위키 확장 기능의 모든 메시지를 포함한 메타 그룹입니다.",
+ "translate-group-desc-wikimediaextensions-main": "위키미디어 [https://meta.wikimedia.org/wiki/Language_committee 언어 위원회]가 번역을 요구하는 미디어위키 확장 기능의 모든 메시지를 포함한 메타 그룹입니다.",
+ "translategroupdescriptions-desc": "[https://mediawiki.org/wiki/Extension:Translate 번역] 확장 기능에서 지원하는 제품의 메시지 그룹 설명입니다"
+}
diff --git a/MLEB/Translate/i18n/groupdescriptions/ksh.json b/MLEB/Translate/i18n/groupdescriptions/ksh.json
new file mode 100644
index 00000000..9023ba1b
--- /dev/null
+++ b/MLEB/Translate/i18n/groupdescriptions/ksh.json
@@ -0,0 +1,57 @@
+{
+ "@metadata": {
+ "authors": [
+ "Purodha",
+ "Reedy",
+ "Lokal Profil"
+ ]
+ },
+ "bw-desc-freecol": "Iih dat De <i lang=\"en\">FreeCol</i> en Ding Shprooch övversäz, donn ens di Sigg „<i lang=\"en\">[[Translating:FreeCol]]</i>“ lässe. <i lang=\"en\">FreeCol</i> shteiht unger dä GPL.",
+ "bw-desc-fudforum": "[http://fudforum.org/ FUDforum], e Forumsprojramm för et Web, jeschrevve en dä Projrammiershprooch <i lang=\"en\">PHP</i>.",
+ "bw-desc-mantisbt": "[[Translating:MantisBT|MantisBT]] es e frei Süßteem för övver et Web Faählere un Fählermeldunge ze Verwallde. Wann Üsch jät opfällt, doht et op di Sigg „[[Support|{{int:bw-mainpage-support-title}}]]“ schriive.",
+ "bw-desc-openstreetmap": "En dä Jropp sen Täxde un Nohreeschte em Zosammehang, di met <i lang=\"en\">[[Translating:OpenStreetMap|OpenStreetMap]]</i> shtonn.",
+ "bw-desc-osm-site": "Heh di Jropp hät de Nohreeschte uß dä Bovverfläsch vun <i lang=\"en\">[[Translating:Open Street Map|Open Street Map]]</i>.",
+ "bw-desc-wikiblame": "[[Translating:WikiBlame|WikiBlame]] kann flöck de Schriiver vun enem Stöck vun ener Sigg en enem Wikimedia Wiki fenge.",
+ "translate-group-desc-blockly": "En Jropp vun Täxte un Nohreeschte för dat Projramm [[Translating:Blockly|Klötzjer]] ze övversäze",
+ "translate-group-desc-collection": "Hee di Sammeljropp hät de janze Täxte un Nohreschte vun alle Aandeile vum MediaWiki singem Zohsatzprojramm-Pöngel <code lang=\"en\">[https://www.mediawiki.org/wiki/Extension:Collection Collection]</code>",
+ "translate-group-desc-eol": "Täxte un Nohreeschte för [[Translating:EOL|et Wööterbooch vum Levve]]",
+ "translate-group-desc-etherpad-lite": "<i lang=\"en\">[[Translating:Etherpad lite|Etherpad lite]]</i> es e Projramm, woh en Aanzahl Minsche werklesch zosamme un em sällve Momang aan enem Täx schriive künne.",
+ "translate-group-desc-europeana": "[[Translating:Europeana|Europeana]] määd et müjjelesch, dat Lück dorsch de dijitalliseete Kultuur vun Europpa jonn künne.",
+ "translate-group-desc-flaggedrevs": "Hee di Sammeljropp hät de janze Täxte un Nohreschte vun alle Aandeile vum MediaWiki singem Zohsatzprojramm-Pöngel <code lang=\"en\">[https://www.mediawiki.org/wiki/Extension:FlaggedRevs Flagged Revsisions]</code>",
+ "translate-group-desc-fuel": "[[Translating:FUEL|FUEL]] sull mieh Einheitleschkeit en de Övversäzonge vun Prjojramme bränge.",
+ "translate-group-desc-ihris": "En Jrop Täxte un Nohreeschte för [[Translating:iHRIS|iHRIS]]",
+ "translate-group-desc-kiwix": "De Täxte un Nohreeschte vum [[Translating:Kiwix|Kiwix]]",
+ "translate-group-desc-mantisbt-plugin-core": "Ene Houp-Zohsaz för [[Translating:MantisBT|MantisBT]]",
+ "translate-group-desc-mathjax": "<i lang=\"en\" xml:lang=\"en\">[[Translating:MathJax|MathJax]]</i> es en JavaSkrep-Projrammbiblijoteek, di mathemattesche Krohm en jeedem Brauser aanzeije kann.",
+ "translate-group-desc-mediawiki-core-branch": "Täxde un Nohreeschde för en stabile Version vum [[Translating:MediaWiki|MediaWiki]]",
+ "translate-group-desc-mediawikicore": "En dä Jropp hee sin all de Täxte un Nohreeschte uß däm MediaWiki singe aktoälle <i lang=\"de\">alpha</i>-Version ({{CURRENTVERSION}})",
+ "translate-group-desc-mediawikiextensions": "Hee di Sammeljropp hät de janze Täxte un Nohreschte vun alle Zohsatzprojramme vum MediaWiki",
+ "translate-group-desc-mediawikimostused": "En dä Jropp hee sin dem MediaWiki sing [https://translatewiki.net/wiki/Most_often_used_messages_in_MediaWiki 500 am mihßte jebruch Täxte un Nohreeschte]",
+ "translate-group-desc-mifos": "[[Translating:Mifos|Mifos]] es e Süßteem för Enfomzjuhne övver klein Jeldbedrääsch ze verwallde.",
+ "translate-group-desc-nocc": "<i lang=\"en\">[http://nocc.sourceforge.net NOCC]</i> es e Projramm för övver et Web <i lang=\"en\">e-mail</i> ze krijje, ze schriive, un ze verwallde. Wann Üsch jät opfällt, un wann_er Froore hat, doht dat op dä Sigg „[[Support|{{int:bw-mainpage-support-title}}]]“ opschriive.",
+ "translate-group-desc-nodesc": "Mer han kein Enfommazjuhne övver heh di Jropp vun Nohreeschte un Täxte",
+ "translate-group-desc-openimages-all": "Heh di Täxde un Nohreeschde sin Deil vum Projäk <i lang=\"en\">[[Translating:Open Images|Open Images]]</i>.",
+ "translate-group-desc-potlatch2": "[[Translating:OpenStreetMap|Potlatch2]] es e Projramm för <i lang=\"en\">OpenStreetMap</i> ze beärbeide wad op <i lang=\"en\">Flash</i> läuf.",
+ "translate-group-desc-pywikipedia": "[[Translating:Pywikibot|Pywikibot]] es en Versammlong vun Projramme un Wärkzüsch för en de Wikipedija un ander WikiMedia Wikis ze ändere.",
+ "translate-group-desc-readerfeedback": "Hee di Sammeljropp hät de janze Täxte un Nohreschte vun alle Aandeile vum MediaWiki singem Pöngel vun Zohsatzprojramme mem Naame [https://www.mediawiki.org/wiki/Extension:ReaderFeedback ReaderFeedback]",
+ "translate-group-desc-semantic": "En Sammeljropp för all de Täxte un Nohreeschte vum [https://semantic-mediawiki.org/ Semantic MediaWiki] un sing Zohsazprojramme",
+ "translate-group-desc-translatablepages": "All övversäzbaa Sigge",
+ "translate-group-desc-translate": "Hee di Sammeljropp hät de janze Täxte un Nohreschte vun alle Aandeile vum MediaWiki singem Pöngel Zohsatzprojramme mem Name <code lang=\"en\">[https://www.mediawiki.org/wiki/Extension:Translate Translate]</code>. Sidd esu jood un doht Üsch aan [https://www.mediawiki.org/wiki/Help:Extension:Translate/Glossary heh di Leß meet Wööter un Bejreffe] hallde.",
+ "translate-group-desc-tsint": "Heh di Jropp vun Täxte un Nohreeschte jehööt zom Tuulẞööver singem <i lang=\"en\" xml:lang=\"en\">[[Translating:Intuition|Intuition]]</i>, enem Süßteem för et Övversäze vun Projramme, di om [//tools.wmflabs.org/ Tuulẞööver] loufe. (<span class=\"plainlinks\">[[Translating talk:Intuition|{{int:bw-mainpage-support-title}}]]</span>)",
+ "translate-group-desc-universallanguageselector": "Sammeljropp för de Täxte un Nohreeschte vum Zohsazprjramm <i lang=\"en\" xml:lang=\"en\">[https://www.mediawiki.org/wiki/Extension:UniversalLanguageSelector UniversalLanguageSelector] (ULS)</i> vum MediaWiki un verwandte Projrammpakätte.",
+ "translate-group-desc-vicuna": "[[Translating:VicuñaUploader|VicuñaUploader]] es e Wärkzüsch för Datteije op <i lang=\"en\">Wikimedia Commons</i> un ander Projäkte vun de Wikimedia Schteftong huh_ze_laade.",
+ "translate-group-desc-visualeditor": "Sammeljropp met alle Täxte un Nohreeschte för et Zohsazprojramm <i lang=\"en\" xml:lang=\"en\">[https://www.mediawiki.org/wiki/Extension:VisualEditor VisualEditor]</i> för MediaWiki, un wadd aan Projramme domet zesamme hängk.",
+ "translate-group-desc-waymarked-trails": "[[Translating:Waymarked Trails|Waymarked Trails]] es ene Deens, dä zeisch Wanderwääje, Raddwääje, Wääje för et Mauntenbaike, un Rollschohwäje en de janze Wält onger dä alljemeine öffentlesche Lizänz vun dä GNU.",
+ "translate-group-desc-waymarked-trails-help": "De Hölpsigge uß de „Waymarked Trails“-Websigge: http://waymarkedtrails.org/help/about",
+ "translate-group-desc-wikiaextensions": "Hee di Sammeljropp hät de Täxte un Nohreschte vun alle Zohsatzprojramme vum MediaWiki, di mer hee ongershtöze donn, un di bei [http://www.wikia.com Wikia] jebruch wäde",
+ "translate-group-desc-wikimania-scholarships-app": "Täte un Nohreeschte för de [https://scholarships.wikimedia.org/apply Aandrääsch op Schtipändije un Ongerschtözong för de <i lang=\"en\" xml:lang=\"en\">Wikimania</i>-Kumferäns]",
+ "translate-group-desc-wikimedia-mobile": "Hee di Sammeljropp hät de Täxte un Nohreschte vun de mobiile Projäkte vun de Wikkimeedija-Schtefftong.",
+ "translate-group-desc-wikimedia-mobile-wikipedia": "[[Translating:WikipediaMobile|WikipediaMobile]] es e Projramm för ongerscheidlijje Bedriefsyßteeme för de Wikipeedija op draachbaare Jerääte un Tablät-PCs ze lässe un ze schrieve.",
+ "translate-group-desc-wikimedia-mobile-wikipedia-android": "[[Translating:WikipediaMobile|Wikipedia Android]] es de Väsjohn vun de mobihle Äpp vun de Wikkipeedija för <i lang=\"en\" xml:lang=\"en\">Android</i> (neu us em Johr 2014)",
+ "translate-group-desc-wikimedia-mobile-wikipedia-ios": "[[Translating:WikipediaMobile|Wikipedia iOS]] es de Väsjohn vun de mobihle Äpp vun de Wikkipeedija för <i lang=\"en\" xml:lang=\"en\">iOS</i> (neu us em Johr 2014) - de Houpleß met Täxte un Hohreeschte",
+ "translate-group-desc-wikimedia-mobile-wikisource": "[[Translating:WikisourceMobile|WikisourceMobile]] es e Projramm för ongerscheidlijje Bedriefsyßteeme för et QuälleWikki op draachbaare Jerääte un Tablät-PCs ze lässe un ze schrieve.",
+ "translate-group-desc-wikimedia-mobile-wiktionary": "[[Translating:WiktionaryMobile|WiktionaryMobile]] es e Projramm för ongerscheidlijje Bedriefsyßteeme för et WikkiWööterbooch op draachbaare Jerääte un Tablät-PCs ze lässe un ze schrieve.",
+ "translate-group-desc-wikimediaextensions": "Hee di Sammeljropp hät de Täxte un Nohreschte vun alle Zohsatzprojramme vum MediaWiki, di mer hee ongershtöze donn, un di en en Wikis vun de <i lang=\"en\">[https://wikimediafoundation.org/ Wikimedia Foundation]</i> jebruch wäde",
+ "translate-group-desc-wikimediaextensions-main": "En heh dä Sammeljropp sin all de Täxte un Nohreeschte us dä Zohsazprojramme vum MediaWiki, di et [https://meta.wikimedia.org/wiki/Language_committee Kumitte för de Shprooche] vun de Wikimedia Shteftong övversaz han well.",
+ "translategroupdescriptions-desc": "Enfomazjuhne övver de Jroppe vun Täxte un Nohreeschte, di vun däm Zohsazprojramm <i lang=\"en\">[https://mediawiki.org/wiki/Extension:Translate Translate]</i> för MediaWiki ongershtöz wääde."
+}
diff --git a/MLEB/Translate/i18n/groupdescriptions/lb.json b/MLEB/Translate/i18n/groupdescriptions/lb.json
new file mode 100644
index 00000000..515164c3
--- /dev/null
+++ b/MLEB/Translate/i18n/groupdescriptions/lb.json
@@ -0,0 +1,52 @@
+{
+ "@metadata": {
+ "authors": [
+ "Kghbln",
+ "Les Meloures",
+ "Robby",
+ "Soued031"
+ ]
+ },
+ "bw-desc-freecol": "Ier Dir ufänkt FreeCol an Är Sprooch z'iwwersetzen, liest w.e.g. [[Translating:FreeCol]]. Freecol benotzt d'GPL-Lizenz.",
+ "bw-desc-fudforum": "[http://fudforum.org/ FUDforum], e Webforum deen a PHP geschriwwen ass.",
+ "bw-desc-mantisbt": "[[Translating:MantisBT|MantisBT]] ass eng webbaséierte Bug-Tracking-Software.",
+ "bw-desc-openstreetmap": "All Messagen a Relatioun mat [[Translating:OpenStreetMap|OpenStreetMap]]",
+ "bw-desc-osm-site": "[[Translating:OpenStreetMap|OpenStreetMap]] ass eng ännerbar Kaart vun der ganzer Welt",
+ "bw-desc-wikiblame": "[[Translating:WikiBlame|WikiBlame]] erlaabt et fir d'Auteure vun enger Säit op enger Wikimedia-Wiki séier ze fannen.",
+ "translate-group-desc-blockly": "E Grupp vu Message fir [[Translating:Blockly|Blockly]]",
+ "translate-group-desc-collection": "An dësem Grupp sinn all Systemmessage fir d'MediaWiki-Erweiderung [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Collection Sammlung]",
+ "translate-group-desc-eol": "Message fir [[Translating:EOL|Encyclopedia of Life]]",
+ "translate-group-desc-etherpad-lite": "[[Translating:Etherpad lite|Etherpad lite]] ass e richtege kollaborativen Editeur an Echtzäit",
+ "translate-group-desc-europeana": "[[Translating:Europeana|Europeana 1914-1918]] ass en Internetsite mat Serien, Filmer an historeschem Material iwwer den 1. Weltkrich",
+ "translate-group-desc-flaggedrevs": "An dësem Grupp sinn all Systemmessage fir d'MediaWiki-Erweiderung [https://www.mediawiki.org/wiki/Extension:FlaggedRevs Markéiert Versiounen]",
+ "translate-group-desc-fuel": "[[Translating:FUEL|FUEL]] bréngt méi Koherenz an d'Softwareiwwersetzung",
+ "translate-group-desc-huggle": "[[Translating:Huggle|Huggle]] ass eng séier Applikatioun fir Ënnerscheeder am Browser ze weise fir esou Vandalismus op Wikimedia-Projeten bäizekommen",
+ "translate-group-desc-ihris": "Message fir [[Translating:iHRIS|iHRIS]]",
+ "translate-group-desc-kiwix": "Message fir [[Translating:Kiwix|Kiwix]]",
+ "translate-group-desc-mantisbt-plugin-core": "En Haapt-Plugin fir [[Translating:MantisBT|MantisBT]]",
+ "translate-group-desc-mediawiki-core-branch": "Message fir eng stabil Versioun vu [[Translating:MediaWiki|MediaWiki]]",
+ "translate-group-desc-mediawikicore": "An dëser Grupp mat Message sinn d'Messagen aus der aktueller alpha-Versioun vu MediaWiki ({{CURRENTVERSION}}) dran",
+ "translate-group-desc-mediawikiextensions": "An dësem Grupp sinn all Systemmessage vun den ënnerstetzten Erweiderunge vu [[Translating:MediaWiki|MediaWiki]]",
+ "translate-group-desc-mediawikimostused": "An dësem Grupp sinn déi [https://translatewiki.net/wiki/Most_often_used_messages_in_MediaWiki 500 am dackste gebrauchte Systemmessagen] vu [[Translating:MediaWiki|MediaWiki]]",
+ "translate-group-desc-mifos": "[[Translating:Mifos|Mifos]] ass e Managementinformatiounssystem fir Mikrofinanzinstitutiounen",
+ "translate-group-desc-nocc": "[http://nocc.sourceforge.net NOCC] ass e Webmail-Client deen a PHP geschriwen ass. Wann dir Problemer oder Froen domat hutt da gitt w.e.g. op [[Support]].",
+ "translate-group-desc-nodesc": "Fir dëse Grupp vu Messagen ass keng Beschreiwung disponibel.",
+ "translate-group-desc-openimages-all": "Dës Message sinn en Deel vum [[Translating:Open Images|Open Images]]-Projet",
+ "translate-group-desc-potlatch2": "[[Translating:OpenStreetMap|Potlatch2]] ass en OpenStreetMap-Editeur deen op Flash baséiert",
+ "translate-group-desc-pywikipedia": "[[Translating:Pywikibot|Pywikibot]] ass eng Sammlung vu Funktioune fir op Wikipedia Ännerungen ze maachen",
+ "translate-group-desc-readerfeedback": "An dësem Grupp sinn all Systemmessage fir d'MediaWiki-Erweiderung [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:ReaderFeedback Feedback vun de Lieser]",
+ "translate-group-desc-semantic": "An dësem Meta-Grupp sinn all Systemmessage fir d'Erweiderunge vu [https://semantic-mediawiki.org/ Semantic MediaWiki]",
+ "translate-group-desc-translatablepages": "All iwwersetzbar Säiten",
+ "translate-group-desc-translate": "An dësem Grupp sinn all Systemmessage fir d'MediaWiki-Erweiderung [https://www.mediawiki.org/wiki/Extension:Translate Iwwersetzen]; familiariséiert Iech w.e.g. mat dem [https://www.mediawiki.org/wiki/Special:MyLanguage/Help:Extension:Translate/Glossary Glossaire]",
+ "translate-group-desc-vicuna": "[[Translating:VicuñaUploader|VicuñaUploader]] ass en Tool fir Fichieren op Wikimedia Commons an aner Wikimedia Projeten eropzelueden",
+ "translate-group-desc-waymarked-trails-help": "D'Hëllefsäite vun de 'Waymarked Trails' Internetsiten: http://waymarkedtrails.org/help/about",
+ "translate-group-desc-wikiaextensions": "An dësem Grupp sinn all Systemmessage vun den ënnerstetzte MediaWiki-Erweiderungen, déi vu [http://www.wikia.com Wikia] genotzt ginn",
+ "translate-group-desc-wikimania-scholarships-app": "Grupp vu Message fir [https://scholarships.wikimedia.org/apply Ufroe fir Wikimania-Boursen]",
+ "translate-group-desc-wikimedia-mobile": "Zesummegesate Grupp vu Message fir déi mobil Applikatioune fir Wikimedia Projeten",
+ "translate-group-desc-wikimedia-mobile-wikipedia-android": "[[Translating:WikipediaMobile|Wikipedia Android]] ass déi spezifesch Versioun vun der Wikipedia-Mobile-App fir Android",
+ "translate-group-desc-wikimedia-mobile-wikipedia-ios": "[[Translating:WikipediaMobile|Wikipedia iOS]] ass déi spezifesch Versioun vun der Wikipedia-Mobile-App fir iOS",
+ "translate-group-desc-wikimedia-mobile-wikisource": "[[Translating:WikisourceMobile|WikisourceMobile]] ass eng plattformonofhängeg Mobil- an Tabletapplicatioun fir Wikisource ze liesen an dran z'änneren",
+ "translate-group-desc-wikimediaextensions": "An dësem Grupp sinn all Systemmessage vun den ënnerstëtzte MediaWiki-Erweiderungen, déi vun der [https://wikimediafoundation.org/ Wikimedia Foundation] benotzt ginn",
+ "translate-group-desc-wikimediaextensions-main": "An dësem Grupp sinn all Systemmessage vun den ënnerstëtzte MediaWiki-Erweiderungen, déi vum [https://meta.wikimedia.org/wiki/Special:MyLanguage/Language_committee Wikimedia Sprooche-Comité] gefrot si fir iwwersat ze ginn",
+ "translategroupdescriptions-desc": "Beschreiwung vun de Gruppe vu Message vu Produkter, déi vun der Programmerweiderung [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Translate Iwwersetzen] ënnerstëtzt ginn"
+}
diff --git a/MLEB/Translate/i18n/groupdescriptions/lrc.json b/MLEB/Translate/i18n/groupdescriptions/lrc.json
new file mode 100644
index 00000000..b1fa3cb6
--- /dev/null
+++ b/MLEB/Translate/i18n/groupdescriptions/lrc.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Mogoeilor"
+ ]
+ },
+ "translate-group-desc-translatablepages": "همه بلگیا لرسنی"
+}
diff --git a/MLEB/Translate/i18n/groupdescriptions/lt.json b/MLEB/Translate/i18n/groupdescriptions/lt.json
new file mode 100644
index 00000000..0b8ffc5e
--- /dev/null
+++ b/MLEB/Translate/i18n/groupdescriptions/lt.json
@@ -0,0 +1,15 @@
+{
+ "@metadata": {
+ "authors": [
+ "Perkunas",
+ "Tomasdd",
+ "Lokal Profil"
+ ]
+ },
+ "bw-desc-freecol": "Prieš verčiant FreeCol į jūsų kalbą, skaitykite [[Translating:FreeCol]]. FreeCol naudoja GPL licenciją.",
+ "bw-desc-fudforum": "[http://fudforum.org/ FUDforum], PHP kalba parašytas internetinis forumas.",
+ "bw-desc-mantisbt": "[[Translating:MantisBT|MantisBT]] yra nemokama klaidų stebėjimo sistema. [[Support]] puslapyje prašome pranešti bet kokius netikslumus ar klaidas.",
+ "bw-desc-osm-site": "[[Translating:OpenStreetMap|OpenStreetMap]] - tai redaguojamas pasaulio žemėlapis",
+ "bw-desc-wikiblame": "[http://wikipedia.ramselehof.de/wikiblame.php Wikiblame] padeda greitai surasti puslapio autorių įvairuose Vikimedia projektuose.",
+ "translate-group-desc-nocc": "[http://nocc.sourceforge.net NOCC] yra elektroninio pašto klientas, parašytas PHP kodu. [[Support]] prašome pranešti apie bet kokias problemas ar klaidas."
+}
diff --git a/MLEB/Translate/i18n/groupdescriptions/lv.json b/MLEB/Translate/i18n/groupdescriptions/lv.json
new file mode 100644
index 00000000..7c1809dc
--- /dev/null
+++ b/MLEB/Translate/i18n/groupdescriptions/lv.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Papuass"
+ ]
+ },
+ "translate-group-desc-translatablepages": "Visas tulkojamās lapas"
+}
diff --git a/MLEB/Translate/i18n/groupdescriptions/mk.json b/MLEB/Translate/i18n/groupdescriptions/mk.json
new file mode 100644
index 00000000..e4a63c36
--- /dev/null
+++ b/MLEB/Translate/i18n/groupdescriptions/mk.json
@@ -0,0 +1,60 @@
+{
+ "@metadata": {
+ "authors": [
+ "Bjankuloski06"
+ ]
+ },
+ "bw-desc-freecol": "Пред да го преведете FreeCol на вашиот јазик, прво прочитајте ја страницата [[Translating:FreeCol]]. Freecol користи општа јавна лиценца (GPL).",
+ "bw-desc-fudforum": "[http://fudforum.org/ FUDforum], форум напишан во PHP.",
+ "bw-desc-mantisbt": "[[Translating:MantisBT|MantisBT]] е слободен семрежен систем за следење на бубачки (грешки).",
+ "bw-desc-openstreetmap": "Група на сите пораки за [[Translating:OpenStreetMap|OpenStreetMap]]",
+ "bw-desc-osm-site": "Оваа група пораки содржи посреднички пораки за [[Translating:Open Street Map|Open Street Map]].\nПогледајте ја [http://unicode.org/repos/cldr-tmp/trunk/diff/supplemental/language_plural_rules.html#{{UILANGCODE}} CLDR страницата на Уникод за објаснение за множинските клучеви].",
+ "bw-desc-wikiblame": "[http://wikipedia.ramselehof.de/wikiblame.php Wikiblame] за многу кусо време може да ги пронајде авторите на некоја страница на едно вики.",
+ "translate-group-desc-blockly": "Група пораки за [[Translating:Blockly|Блокли]]",
+ "translate-group-desc-bluespice": "Метагрупа на пораки што ги содржи сите пораки за додатоците на [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:BlueSpice Blue Spice] за МедијаВики",
+ "translate-group-desc-collection": "Мета-група која ги содржи сите пораки за додатокот на МедијаВики [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Collection Збирка] (Collection)",
+ "translate-group-desc-eol": "Група пораки за [[Translating:EOL|Енциклопедија на живиот свет]] (Encyclopedia of Life, EOL)",
+ "translate-group-desc-etherpad-lite": "[[Translating:Etherpad lite|Etherpad lite]] е соработен уредувач во живо (сосема)",
+ "translate-group-desc-europeana": "[[Translating:Europeana|Europeana 1914-1918]] е портал со приказни, филмови и историски материјали за Првата светска војна",
+ "translate-group-desc-flaggedrevs": "Мета-група која ги содржи сите пораки за додатокот на МедијаВики [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:FlaggedRevs Означени преработки] (FlaggedRevs)",
+ "translate-group-desc-fuel": "[[Translating:FUEL|FUEL]] дава поголема усогласеност на преводите на програмите",
+ "translate-group-desc-huggle": "[[Translating:Huggle|Huggle]] е прелистувачки прилог за брзо пребарување наменет за справување со вандализам на Викимедиините проекти",
+ "translate-group-desc-ihris": "Група пораки за [[Translating:iHRIS|iHRIS]]",
+ "translate-group-desc-kiwix": "Група пораки за [[Translating:Kiwix|Kiwix]]",
+ "translate-group-desc-mantisbt-plugin-core": "Основен приклучок за [[Translating:MantisBT|MantisBT]]",
+ "translate-group-desc-mathjax": "[[Translating:MathJax|MathJax]] е JavaScript-библиотека што прикажува математичка нотација во повеќе прелистувачи",
+ "translate-group-desc-mediawiki-core-branch": "Пораки за стабилна верзија на [[Translating:MediaWiki|МедијаВики]]",
+ "translate-group-desc-mediawikiapi": "Оваа група пораки ги опфаќа пораките што се користат во Action API за тековната алфа-верзија на [[Translating:MediaWiki|MediaWiki]] ({{CURRENTVERSION}})",
+ "translate-group-desc-mediawikicore": "Оваа група содржи пораки кои се користат на моменталната алфа-верзија на [[Translating:MediaWiki|МедијаВики]] ({{CURRENTVERSION}})",
+ "translate-group-desc-mediawikiextensions": "Мета-група која ги содржи сите пораки за поддржаните додатоци за МедијаВики",
+ "translate-group-desc-mediawikiskins": "Мета-група која ги содржи сите пораки за поддржаните рува на [[Translating:MediaWiki|МедијаВики]]",
+ "translate-group-desc-mediawikimostused": "Во оваа група пораки се наведени [https://translatewiki.net/wiki/Most_often_used_messages_in_MediaWiki 500-те најупотребувани пораки] на [[Translating:MediaWiki|МедијаВики]]",
+ "translate-group-desc-mifos": "[[Translating:Mifos|Mifos]] е раководен инфосистем за микрофинансирање",
+ "translate-group-desc-nfcring-control": "[[Translating:NFC_Ring_Control|Контрола со NFC-прстен]] е мобилен прилог за работа со NFC-ознаки",
+ "translate-group-desc-nocc": "[http://nocc.sourceforge.net NOCC] е клиент за е-пошта напишан во PHP. Ако имате проблеми, пријавете ги на [[Support|Поддршка]].",
+ "translate-group-desc-nodesc": "Нема опис за оваа група пораки",
+ "translate-group-desc-openimages-all": "Овие пораки му припаѓаат на проектот [[Translating:Open Images|Open Images]]",
+ "translate-group-desc-potlatch2": "[[Translating:OpenStreetMap|Potlatch2]] - уредник за OpenStreetMap на основа на Flash",
+ "translate-group-desc-pywikipedia": "[[Translating:Pywikibot|Pywikibot]] е збир од алатки за уредување на Википедија",
+ "translate-group-desc-readerfeedback": "Мета-група која ги содржи сите пораки за додатокот на МедијаВики [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:ReaderFeedback Мислења на читателите ] (ReaderFeedback)",
+ "translate-group-desc-semantic": "Метагрупа што ги содржи сите пораки за сите додатоци [https://semantic-mediawiki.org/wiki/Semantic_MediaWiki?uselang=mk Семантички МедијаВики]",
+ "translate-group-desc-translatablepages": "Сите преводливи страници",
+ "translate-group-desc-translate": "Мета-група која ги содржи сите пораки за додатокот на МедијаВики „[https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Translate Преведување]“. Запознајте се и со терминологијата во [https://www.mediawiki.org/wiki/Help:Extension:Translate/Glossary поимникот]",
+ "translate-group-desc-tsint": "Група пораки за „[[Translating:Intuition|Интуиција]]“ (''Intuition'') — i18n-систем за алатки од [//tools.wmflabs.org/ Лабораторијата за алатки на Викимедија] (<span class=\"plainlinks\">[[Translating talk:Intuition|поддршка]]</span>)",
+ "translate-group-desc-universallanguageselector": "Група метапораки што ги содржи сите пораки за додатокот [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:UniversalLanguageSelector Универзален избирач на јазик] (ULS) и поврзаните програмски пакети",
+ "translate-group-desc-vicuna": "[[Translating:VicuñaUploader|VicuñaUploader]] е алатка за подигање на податотеки на Ризницата и други Викимедиини проекти",
+ "translate-group-desc-visualeditor": "Група метапораки што ги содржи сите пораки за додатокот [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:VisualEditor ВизуеленУредник] и поврзаните програмски пакети",
+ "translate-group-desc-waymarked-trails": "[[Translating:Waymarked Trails|Означени патеки]] (''Waymarked Trails'') е служба која ги покажува патеките за пешачење, планинарење, велосипедизам, ридски велосипедизам и ролерки ширум светот. Се нуди под ГНУ-овата општа јавна лиценца",
+ "translate-group-desc-waymarked-trails-help": "Страниците за помош на порталите на „Означени патеки“ (''Waymarked Trails''): http://waymarkedtrails.org/help/about",
+ "translate-group-desc-wikiaextensions": "Мета-група која ги содржи сите пораки за поддржаните додатоци на МедијаВики што се користат на [http://www.wikia.com Викија]",
+ "translate-group-desc-wikimania-scholarships-app": "Група пораки за [https://scholarships.wikimedia.org/apply пријавницата за стипендија за Викиманија]",
+ "translate-group-desc-wikimedia-mobile": "Група на насобрани пораки што осодржи мобилни прилози за Викимедиини проекти",
+ "translate-group-desc-wikimedia-mobile-wikipedia": "[[Translating:WikipediaMobile|ВикипедијаМобилен]] е повеќеподложен додаток за мобилни и таблични уреди наменет за читање и уредување на Википедија",
+ "translate-group-desc-wikimedia-mobile-wikipedia-android": "[[Translating:WikipediaMobile|Википедија Андроид]] е верзија на Википедииниот мобилен прилог наменет за Андроид",
+ "translate-group-desc-wikimedia-mobile-wikipedia-ios": "[[Translating:WikipediaMobile|Википедија за iOS]] е верзија на прилогот Википедија Мобилен наменета за системот iOS",
+ "translate-group-desc-wikimedia-mobile-wikisource": "[[Translating:WikisourceMobile|ВикиизворМобилен]] е повеќеподложен додаток за мобилни и таблични уреди наменет за читање и уредување на Викиизвор",
+ "translate-group-desc-wikimedia-mobile-wiktionary": "[[Translating:WiktionaryMobile|ВикиречникМобилен]] е повеќеподложен додаток за мобилни и таблични уреди наменет за читање и уредување на Викиречникот",
+ "translate-group-desc-wikimediaextensions": "Мета-група која ги содржи сите пораки за поддржаните додатоци на МедијаВики што ги користи [https://wikimediafoundation.org/ Фондацијата Викимедија]",
+ "translate-group-desc-wikimediaextensions-main": "Метагрупа на пораки која ги содржи сите пораки за поддржаните дополнувања за МедијаВики што треба да се преведат за [https://meta.wikimedia.org/wiki/Special:MyLanguage/Language_committee Јазичниот комитет] на Викимедија.",
+ "translategroupdescriptions-desc": "Описи на групи пораки за производи поддржани од додатокот [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Translate „Преведување“]"
+}
diff --git a/MLEB/Translate/i18n/groupdescriptions/ml.json b/MLEB/Translate/i18n/groupdescriptions/ml.json
new file mode 100644
index 00000000..411a1f57
--- /dev/null
+++ b/MLEB/Translate/i18n/groupdescriptions/ml.json
@@ -0,0 +1,10 @@
+{
+ "@metadata": {
+ "authors": [
+ "Praveenp"
+ ]
+ },
+ "translate-group-desc-mediawikicore": "ഇപ്പോഴത്തെ മീഡിയവിക്കി ആൽഫാ പതിപ്പ് ({{CURRENTVERSION}}) ഉപയോഗിക്കുന്ന എല്ലാ സന്ദേശങ്ങളുമുൾപ്പെടുന്ന ഗണം",
+ "translate-group-desc-translatablepages": "പരിഭാഷപ്പെടുത്താവുന്ന എല്ലാ താളുകളും",
+ "translate-group-desc-wikimediaextensions": "[https://wikimediafoundation.org/ വിക്കിമീഡിയ ഫൗണ്ടേഷൻ] ഉപയോഗിക്കുന്ന മീഡിയവിക്കി അനുബന്ധങ്ങളിലെ എല്ലാ സന്ദേശങ്ങളുമുൾപ്പെടുന്ന ഗണം"
+}
diff --git a/MLEB/Translate/i18n/groupdescriptions/mr.json b/MLEB/Translate/i18n/groupdescriptions/mr.json
new file mode 100644
index 00000000..86b8ea93
--- /dev/null
+++ b/MLEB/Translate/i18n/groupdescriptions/mr.json
@@ -0,0 +1,27 @@
+{
+ "@metadata": {
+ "authors": [
+ "V.narsikar",
+ "संतोष दहिवळ"
+ ]
+ },
+ "bw-desc-openstreetmap": "[[Translating:OpenStreetMap|ओपनस्ट्रीटमॅप]]शी संबंधित सर्व संदेश",
+ "bw-desc-osm-site": "[[Translating:OpenStreetMap|ओपनस्ट्रीटमॅप]] हा संपूर्ण जगाचा संपादण्याजोगा नकाशा आहे",
+ "translate-group-desc-collection": "या मेटा संदेशगटात,[https://www.mediawiki.org/wiki/Extension:Collection कलेक्शन] या मिडियाविकि विस्तारकाचे सर्व संदेश आहेत",
+ "translate-group-desc-flaggedrevs": "या मेटा संदेशगटात, [https://www.mediawiki.org/wiki/Extension:FlaggedRevs FlaggedRevs] या मिडियाविकि विस्तारकाचे सर्व संदेश आहेत",
+ "translate-group-desc-ihris": "[[Translating:iHRIS|iHRIS]] साठी संदेशगट",
+ "translate-group-desc-kiwix": " [[Translating:Kiwix|Kiwix]] साठी संदेशगट",
+ "translate-group-desc-mediawiki-core-branch": "[[Translating:MediaWiki|MediaWiki]] च्या स्थिर आवृत्तीसाठी संदेश",
+ "translate-group-desc-mediawikicore": "या संदेशगटात, [[Translating:MediaWiki|मिडियाविकिच्या]] ({{CURRENTVERSION}}) अल्फा आवृत्तीत वापरल्या जाणारे सर्व संदेश आहेत",
+ "translate-group-desc-mediawikiextensions": "या मेटा संदेशगटात [[Translating:MediaWiki|मिडियाविकि]]च्या सहाय्यीकृत विस्तारकांचे सर्व संदेश आहेत",
+ "translate-group-desc-mediawikimostused": "या संदेशगटात [[Translating:MediaWiki|मिडियाविकि]] तील [https://translatewiki.net/wiki/Most_often_used_messages_in_MediaWiki सर्वात जास्त वापरल्या जाणारे ५०० संदेश] आहेत",
+ "translate-group-desc-mifos": "[[Translating:Mifos|Mifos]] ही मायक्रोफायनान्स साठी व्यवस्थापन माहिती प्रणाली आहे",
+ "translate-group-desc-nodesc": "या संदेशगटासाठी काहीच वर्णन उपलब्ध नाही",
+ "translate-group-desc-readerfeedback": "या मेटा संदेशगटात, [https://www.mediawiki.org/wiki/Extension:ReaderFeedback ReaderFeedback] या मिडियाविकि विस्तारकाचे सर्व संदेश आहेत",
+ "translate-group-desc-semantic": "या मेटा संदेशगटात, [https://semantic-mediawiki.org/ Semantic MediaWiki] या सर्व सेमॅंटिक मिडियाविकि विस्तारकाचे सर्व संदेश आहेत",
+ "translate-group-desc-translatablepages": "भाषांतरासाठीची सर्व पाने",
+ "translate-group-desc-translate": "या मेटा संदेश गटात, मिडियाविकि विस्तारक \n[https://www.mediawiki.org/wiki/Extension:Translate भाषांतर करा] याचे सर्व संदेश आहेत;कृपया त्याच्या [https://www.mediawiki.org/wiki/Help:Extension:Translate/Glossary शब्दावलीशी] स्वतःस अवगत करा.",
+ "translate-group-desc-universallanguageselector": "मेटा संदेश गट ज्यात, मिडियाविकि विस्तारक [https://www.mediawiki.org/wiki/Extension:UniversalLanguageSelector वैश्विक भाषा वरणित्र] (ULS) चे व संबंधित संचेतन-गठ्ठ्याचे सर्व संदेश आहेत.",
+ "translate-group-desc-visualeditor": "मेटा संदेश गट ज्यात, मिडियाविकि विस्तारक [https://www.mediawiki.org/wiki/Extension:VisualEditor यथादृष्य संपादका]चे व संबंधित संचेतन-गठ्ठ्याचे सर्व संदेश आहेत.",
+ "translategroupdescriptions-desc": "[https://mediawiki.org/wiki/Extension:Translate भाषांतर] विस्तारकाद्वारे सहाय्यीकृत उत्पादनांसाठी संदेश गट वर्णन"
+}
diff --git a/MLEB/Translate/i18n/groupdescriptions/ms.json b/MLEB/Translate/i18n/groupdescriptions/ms.json
new file mode 100644
index 00000000..3b8e58e2
--- /dev/null
+++ b/MLEB/Translate/i18n/groupdescriptions/ms.json
@@ -0,0 +1,57 @@
+{
+ "@metadata": {
+ "authors": [
+ "Anakmalaysia"
+ ]
+ },
+ "bw-desc-freecol": "[[Translating:FreeCol|FreeCol]] ialah permainan strategi berasaskan giliran",
+ "bw-desc-fudforum": "[[Translating:FUDforum|FUDforum]] ialah perisian forum perbincangan berasaskan web",
+ "bw-desc-mantisbt": "[[Translating:MantisBT|MantisBT]] ialah perisian menjejak masalah berasaskan web",
+ "bw-desc-openstreetmap": "Semua mesej yang berkaitan dengan [[Translating:OpenStreetMap|OpenStreetMap]]",
+ "bw-desc-osm-site": "[[Translating:OpenStreetMap|OpenStreetMap]] ialah peta seluruh dunia yang boleh disunting",
+ "bw-desc-wikiblame": "[[Translating:WikiBlame|WikiBlame]] boleh cepat mencari pengarang sebahagian laman dalam wiki di bawah Wikimedia",
+ "translate-group-desc-blockly": "Kumpulan mesej untuk [[Translating:Blockly|Blockly]]",
+ "translate-group-desc-bluespice": "Kumpulan mesej meta yang mengandungi semua mesej untuk sambungan MediaWiki [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:BlueSpice Blue Spice]",
+ "translate-group-desc-collection": "Kumpulan mesej meta yang mengandungi semua mesej untuk sambungan MediaWiki [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Collection Collection]",
+ "translate-group-desc-eol": "Kumpulan mesej [[Translating:EOL|Encyclopedia of Life]]",
+ "translate-group-desc-etherpad-lite": "[[Translating:Etherpad lite|Etherpad lite]] ialah editor kerjasama masa nyata yang sejati",
+ "translate-group-desc-europeana": "[[Translating:Europeana|Europeana]] membolehkan kita menjelajahi sumber kebudayaan digital Eropah",
+ "translate-group-desc-flaggedrevs": "Kumpulan mesej meta yang mengandungi semua mesej untuk sambungan MediaWiki [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:FlaggedRevs FlaggedRevs]",
+ "translate-group-desc-fuel": "[[Translating:FUEL|FUEL]] meningkatkan ketekalan penterjemahan perisian",
+ "translate-group-desc-ihris": "Kumpulan mesej [[Translating:iHRIS|iHRIS]]",
+ "translate-group-desc-kiwix": "Kumpulan mesej [[Translating:Kiwix|Kiwix]]",
+ "translate-group-desc-mantisbt-plugin-core": "Pemalam teras [[Translating:MantisBT|MantisBT]]",
+ "translate-group-desc-mathjax": "[[Translating:MathJax|MathJax]] merupakan perpustakaan JavaScript rentas pelayar yang memaparkan notasi matematik pada pelayar web",
+ "translate-group-desc-mediawiki-core-branch": "Mesej-mesej untuk versi stabil [[Translating:MediaWiki|MediaWiki]]",
+ "translate-group-desc-mediawikicore": "Kumpulan mesej ini mengandungi mesej-mesej yang digunakan dalam versi alfa semasa [[Translating:MediaWiki|MediaWiki]] ({{CURRENTVERSION}})",
+ "translate-group-desc-mediawikiextensions": "Kumpulan mesej meta yang mengandungi segala mesej untuk sambungan-sambungan yang disokong untuk [[Translating:MediaWiki|MediaWiki]]",
+ "translate-group-desc-mediawikimostused": "Kumpulan ini mengandungi [https://translatewiki.net/wiki/Most_often_used_messages_in_MediaWiki 500 mesej yang paling kerap digunakan] dalam [[Translating:MediaWiki|MediaWiki]]",
+ "translate-group-desc-mifos": "[[Translating:Mifos|Mifos]] ialah sistem maklumat pengurusan mikrokewangan",
+ "translate-group-desc-nfcring-control": "[[Translating:NFC_Ring_Control|NFC Ring Control]] adalah aplikasi mudah alih untuk berinteraksi dengan teg-teg NFC",
+ "translate-group-desc-nocc": "[[Translating:NOCC|NOCC]] ialah klien webmail",
+ "translate-group-desc-nodesc": "Keterangan tidak disediakan untuk kumpulan mesej ini",
+ "translate-group-desc-openimages-all": "Mesej-mesej ini tergolong dalam projek [[Translating:Open Images|Open Images]]",
+ "translate-group-desc-potlatch2": "[[Translating:OpenStreetMap|Potlatch2]] ialah editor OpenStreetMap berasaskan Flash",
+ "translate-group-desc-pywikipedia": "[[Translating:Pywikibot|Pywikibot]] ialah koleksi peralatan menyunting Wikipedia",
+ "translate-group-desc-readerfeedback": "Kumpulan mesej meta yang mengandungi semua mesej untuk sambungan MediaWiki [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:ReaderFeedback ReaderFeedback]",
+ "translate-group-desc-semantic": "Kumpulan mesej meta yang mengandungi semua mesej untuk semua sambungan [https://semantic-mediawiki.org/ Semantic MediaWiki]",
+ "translate-group-desc-translatablepages": "Semua laman yang boleh diterjemah",
+ "translate-group-desc-translate": "Kumpulan mesej meta yang mengandungi semua mesej untuk sambungan MediaWiki [https://www.mediawiki.org/wiki/Help:Extension:Translate/Glossary glosari]",
+ "translate-group-desc-tsint": "Kumpulan mesej untuk [[Translating:Intuition|Intuition]], sistem i18n untuk peralatan [http://tools.wmflabs.org Wikimedia Tool Labs] (<span class=\"plainlinks\">[[Translating talk:Intuition|bantuan]]</span>)",
+ "translate-group-desc-universallanguageselector": "Kumpulan mesej meta yang mengandungi semua mesej untuk sambungan MediaWiki [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:UniversalLanguageSelector UniversalLanguageSelector] dan pakej-pakej perisian berkenaan",
+ "translate-group-desc-vicuna": "[[Translating:VicuñaUploader|VicuñaUploader]] merupakan alat untuk memuat naik fail ke dalam Wikimedia Commons dan projek-projek Wikimedia yang lain",
+ "translate-group-desc-visualeditor": "Kumpulan mesej meta yang mengandungi semua mesej untuk sambungan MediaWiki [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:VisualEditor VisualEditor] dan pakej-pakej perisian berkenaan",
+ "translate-group-desc-waymarked-trails": "[[Translating:Waymarked Trails|Waymarked Trails]] ialah perkhidmatan yang menunjukkan laluan mengembara, berbasikal, ''mountain bike'' dan berkasut roda di seluruh dunia. Ia memakai lesen GNU GPL",
+ "translate-group-desc-waymarked-trails-help": "Halaman bantuan Waymarked Trails: http://waymarkedtrails.org/help/about",
+ "translate-group-desc-wikiaextensions": "Kumpulan mesej meta yang mengandungi semua mesej untuk sambungan-sambungan MediaWiki tersokong yang digunakan oleh [http://www.wikia.com Wikia]",
+ "translate-group-desc-wikimania-scholarships-app": "Kumpulan mesej untuk [https://scholarships.wikimedia.org/apply aplikasi Biasiswa Wikimania]",
+ "translate-group-desc-wikimedia-mobile": "Kumpulan mesej teragregat yang merangkumi aplikasi mudah alih untuk projek-projek Wikimedia",
+ "translate-group-desc-wikimedia-mobile-wikipedia": "[[Translating:WikipediaMobile|WikipediaMobile]] merupakan aplikasi merentas platform mudah alih/tablet yang digunakan untuk membaca dan menyumbang kepada Wikipedia",
+ "translate-group-desc-wikimedia-mobile-wikipedia-android": "[[Translating:WikipediaMobile|Wikipedia Android]] adalah aplikasi mudah alih Wikipedia versi khusus untuk Android",
+ "translate-group-desc-wikimedia-mobile-wikipedia-ios": "[[Translating:WikipediaMobile|Wikipedia iOS]] adalah aplikasi mudah alih Wikipedia versi khusus untuk iOS",
+ "translate-group-desc-wikimedia-mobile-wikisource": "[[Translating:WikisourceMobile|WikisumberMobile]] merupakan aplikasi merentas platform mudah alih/tablet yang digunakan untuk membaca dan menyumbang kepada Wikisumber",
+ "translate-group-desc-wikimedia-mobile-wiktionary": "[[Translating:WiktionaryMobile|WikikamusMobile]] merupakan aplikasi merentas platform mudah alih/tablet yang digunakan untuk membaca dan menyumbang kepada Wikikamus",
+ "translate-group-desc-wikimediaextensions": "Kumpulan mesej meta yang mengandungi semua mesej untuk sambungan-sambungan MediaWiki tersokong yang digunakan oleh [https://wikimediafoundation.org/ Yayasan Wikimedia]",
+ "translate-group-desc-wikimediaextensions-main": "Kumpulan mesej meta yang mengandungi semua mesej yang perlu diterjemahkan untuk [https://meta.wikimedia.org/wiki/Special:MyLanguage/Language_committee Jawatankuasa bahasa] Wikimedia",
+ "translategroupdescriptions-desc": "Huraian-huraian kumpulan mesej untuk produk-produk yang disokong oleh sambungan [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Translate Translate]"
+}
diff --git a/MLEB/Translate/i18n/groupdescriptions/mt.json b/MLEB/Translate/i18n/groupdescriptions/mt.json
new file mode 100644
index 00000000..bc8eb0d3
--- /dev/null
+++ b/MLEB/Translate/i18n/groupdescriptions/mt.json
@@ -0,0 +1,9 @@
+{
+ "@metadata": {
+ "authors": [
+ "Chrisportelli"
+ ]
+ },
+ "bw-desc-wikiblame": "[http://wikipedia.ramselehof.de/wikiblame.php Wikiblame] hu kapaċi li jsib veloċement l-awturi ta' paġna fuq sit tal-Wikimedia.",
+ "translate-group-desc-nodesc": "L-ebda deskrizzjoni mhi disponibbli għal dan il-grupp ta' messaġġi"
+}
diff --git a/MLEB/Translate/i18n/groupdescriptions/nb.json b/MLEB/Translate/i18n/groupdescriptions/nb.json
new file mode 100644
index 00000000..946ff9cf
--- /dev/null
+++ b/MLEB/Translate/i18n/groupdescriptions/nb.json
@@ -0,0 +1,55 @@
+{
+ "@metadata": {
+ "authors": [
+ "Audun",
+ "Laaknor",
+ "Nghtwlkr"
+ ]
+ },
+ "bw-desc-freecol": "[[Translating:FreeCol|FreeCol]] er et turbasert strategispill",
+ "bw-desc-fudforum": "[[Translating:FUDforum|FUDforum]], nettbasert forumprogramvare.",
+ "bw-desc-mantisbt": "[[Translating:MantisBT|MantisBT]] er en nettbasert programvare for problemsporing",
+ "bw-desc-openstreetmap": "Meldingsgruppe for alle [[Translating:OpenStreetMap|OpenStreetMap]]-meldinger",
+ "bw-desc-osm-site": "[[Translating:OpenStreetMap|OpenStreetMap]] er et redigerbart verdenskart",
+ "bw-desc-wikiblame": "[[Translating:WikiBlame|WikiBlame]] kan raskt finne forfatterne av en del av en side på Wikimedia-wikier",
+ "translate-group-desc-blockly": "En meldingsgruppe for [[Translating:Blockly|Blockly]]",
+ "translate-group-desc-bluespice": "Metameldingsgruppe som inneholder alle meldinger i MediaWiki-utvidelsene for [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:BlueSpice Blue Spice]",
+ "translate-group-desc-collection": "Metameldingsgruppe som inneholder alle meldinger for MediaWiki-utvidelsen [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Collection Collection]",
+ "translate-group-desc-eol": "En beskjedgruppe for [[Translating:EOL|Encyclopedia of Life]]",
+ "translate-group-desc-europeana": "[[Translating:Europeana|Europeana 1914–1918]] er et nettsted med historier, filmer og historisk materiale om første verdenskrig",
+ "translate-group-desc-flaggedrevs": "Metameldingsgruppe som inneholder alle meldinger for MediaWiki-utvidelsen [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:FlaggedRevs FlaggedRevs]",
+ "translate-group-desc-fuel": "[[Translating:FUEL|FUEL]] bringer konsistens til programvareoversetting",
+ "translate-group-desc-ihris": "En meldingsgruppe for [[Translating:iHRIS|iHRIS]]",
+ "translate-group-desc-kiwix": "En beskjedgruppe for [[Translating:Kiwix|Kiwix]]",
+ "translate-group-desc-mantisbt-plugin-core": "A kjerneutvidelse for [[Translating:MantisBT|MantisBT]]",
+ "translate-group-desc-mediawiki-core-branch": "Beskjeder for en stabil versjon av [[Translating:MediaWiki|MediaWiki]]",
+ "translate-group-desc-mediawikicore": "Denne meldingsgruppen inneholder meldinger brukt i den gjeldende alfaversjonen av MediaWiki ({{CURRENTVERSION}})",
+ "translate-group-desc-mediawikiextensions": "Metameldingsgruppen inneholder alle meldinger for utvidelser som støttes av MediaWiki",
+ "translate-group-desc-mediawikimostused": "Denne meldingsgruppen inneholder [https://translatewiki.net/wiki/Most_often_used_messages_in_MediaWiki de 500 mest brukte meldingene] i [[Translating:MediaWiki|MediaWiki]]",
+ "translate-group-desc-mifos": "[[Translating:Mifos|Mifos]] er et informasjonhåndteringssystem for mikrofinans",
+ "translate-group-desc-nocc": "[[Translating:NOCC|NOCC]] er en nettbasert e-postklient",
+ "translate-group-desc-nodesc": "Ingen beskrivelse er tilgjengelig for denne meldingsgruppen",
+ "translate-group-desc-openimages-all": "Disse meldingene er en del av [[Translating:Open Images|Open Images]]-prosjektet",
+ "translate-group-desc-potlatch2": "[[Translating:OpenStreetMap|Potlatch2]] er en Flash-basert OpenStreetMap-editor",
+ "translate-group-desc-pywikipedia": "[[Translating:Pywikibot|Pywikibot]] er en samling av verktøy for å redigere Wikipedia",
+ "translate-group-desc-readerfeedback": "Metameldingsgruppe som inneholder alle meldinger for MediaWiki-utvidelsen [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:ReaderFeedback ReaderFeedback]",
+ "translate-group-desc-semantic": "Metabeskjedgruppe for alle [https://semantic-mediawiki.org/ Semantic MediaWiki]-utvidelser",
+ "translate-group-desc-translatablepages": "Alle sider som kan oversettes",
+ "translate-group-desc-translate": "Metameldingsgruppe som inneholder alle meldinger for MediaWiki-utvidelsen [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Translate Translate]; vennligst bli kjent med [https://www.mediawiki.org/wiki/Help:Extension:Translate/Glossary gloseboka] først",
+ "translate-group-desc-tsint": "En meldingsgruppe for [[Translating:Intuition|Intuition]], i18n-systemet for [//tools.wmflabs.org/ Toolserver]-verktøy (<span class=\"plainlinks\">[[Translating talk:Toolserver|støtte]])",
+ "translate-group-desc-universallanguageselector": "Metameldingsgruppe som inneholder alle meldinger for MediaWiki-utvidelsen [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:UniversalLanguageSelector Universal Language Selector] (ULS) og tilknyttede programvarepakker",
+ "translate-group-desc-vicuna": "[[Translating:VicuñaUploader|VicuñaUploader]] er et verktøy for å laste opp filer på Wikimedia Commons og andre Wikimedia-prosjekter",
+ "translate-group-desc-visualeditor": "Metameldingsgruppe som inneholder alle meldinger for MediaWiki-utvidelsen [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:VisualEditor VisualEditor] og tilknyttede programvarepakker",
+ "translate-group-desc-waymarked-trails": "[[Translating:Waymarked Trails|Waymarked Trails]] er en tjeneste som viser ruter for gå-, sykkel- og rulleskøyteturer verden rundt. Tjenesten bruker GNU GPL-lisensen.",
+ "translate-group-desc-waymarked-trails-help": "Hjelpesidene for nettstedet Waymarked Trails: http://waymarkedtrails.org/help/about",
+ "translate-group-desc-wikiaextensions": "Metameldingsgruppen inneholder alle meldinger for støttede MediaWiki-utvidelser brukt av [http://www.wikia.com Wikia]",
+ "translate-group-desc-wikimania-scholarships-app": "Meldingsgruppe for [https://scholarships.wikimedia.org/apply søknader om Wikimania-stipend]",
+ "translate-group-desc-wikimedia-mobile-wikipedia": "[[Translating:WikipediaMobile|WikipediaMobile]] er en flerplattformsapplikasjon for mobiler og nettbrett for å lese og bidra til Wikipedia",
+ "translate-group-desc-wikimedia-mobile-wikipedia-android": "[[Translating:WikipediaMobile|Wikipedia Android]] er den Android-spesifikke versjonen av Wikipedia Mobile-appen",
+ "translate-group-desc-wikimedia-mobile-wikipedia-ios": "[[Translating:WikipediaMobile|Wikipedia iOS]] er den IOS-spesifikke versjonen av Wikipedia Mobile-appen",
+ "translate-group-desc-wikimedia-mobile-wikisource": "[[Translating:WikisourceMobile|WikisourceMobile]] er en flerplattformsapplikasjon for mobiler og nettbrett for å lese og bidra til Wikikilden",
+ "translate-group-desc-wikimedia-mobile-wiktionary": "[[Translating:WiktionaryMobile|WiktionaryMobile]] er en flerplattformsapplikasjon for mobiler og nettbrett for å lese og bidra til Wiktionary",
+ "translate-group-desc-wikimediaextensions": "Metameldingsgruppen inneholder alle meldinger for støttede MediaWiki-utvidelser brukt av [https://wikimediafoundation.org/ Wikimedia Foundation]",
+ "translate-group-desc-wikimediaextensions-main": "Metameldingsgruppe som inneholder alle meldinger for støttede MediaWiki-utvidelser som kreves oversatt av Wikimedias [https://meta.wikimedia.org/wiki/Special:MyLanguage/Language_committee språkkomite]",
+ "translategroupdescriptions-desc": "Meldingsgruppebeskrivelser for produkter støttet av utvidelsen [https://mediawiki.org/wiki/Special:MyLanguage/Extension:Translate Translate]"
+}
diff --git a/MLEB/Translate/i18n/groupdescriptions/ne.json b/MLEB/Translate/i18n/groupdescriptions/ne.json
new file mode 100644
index 00000000..fe0895ff
--- /dev/null
+++ b/MLEB/Translate/i18n/groupdescriptions/ne.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "सरोज कुमार ढकाल"
+ ]
+ },
+ "bw-desc-fudforum": "[http://fudforum.org/ FUDforum], PHP मा लेखिएको वेब मञ्च ।"
+}
diff --git a/MLEB/Translate/i18n/groupdescriptions/nl.json b/MLEB/Translate/i18n/groupdescriptions/nl.json
new file mode 100644
index 00000000..b73b4ebe
--- /dev/null
+++ b/MLEB/Translate/i18n/groupdescriptions/nl.json
@@ -0,0 +1,66 @@
+{
+ "@metadata": {
+ "authors": [
+ "HanV",
+ "McDutchie",
+ "SPQRobin",
+ "Siebrand",
+ "Arent",
+ "Mar(c)",
+ "Southparkfan",
+ "Mathonius",
+ "Sjoerddebruin"
+ ]
+ },
+ "bw-desc-freecol": "[[Translating:FreeCol|FreeCol]] is a beurtgebaseerd strategiespel",
+ "bw-desc-fudforum": "[[Translating:FUDforum|FUDforum]] is webgebaseerde forumsoftware",
+ "bw-desc-mantisbt": "[[Translating:MantisBT|MantisBT]] is webgebaseerde software voor het volgen van meldingen",
+ "bw-desc-openstreetmap": "Berichtengroep voor alle [[Translating:OpenStreetMap|OpenStreetMap-berichten]]",
+ "bw-desc-osm-site": "[[Translating:OpenStreetMap|OpenStreetMap]] is een bewerkbare kaart van de hele wereld",
+ "bw-desc-wikiblame": "[[Translating:WikiBlame|WikiBlame]] is in staat om snel de auteurs van een pagina in een Wikimedia-wiki te vinden",
+ "translate-group-desc-blockly": "Een berichtengroep voor [[Translating:Blockly|Blockly]]",
+ "translate-group-desc-bluespice": "Metaberichtengroep die alle berichten bevat voor de MediaWiki-uitbreidingen [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:BlueSpice Blue Spice]",
+ "translate-group-desc-collection": "Metaberichtengroep die alle berichten bevat voor de MediaWiki-uitbreiding [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Collection Collection]",
+ "translate-group-desc-eol": "Een berichtengroep voor [[Translating:EOL|Encyclopedia of Life]]",
+ "translate-group-desc-etherpad-lite": "[[Translating:Etherpad lite|Etherpad lite]] is een echte tekstverwerker om real-time mee samen te werken",
+ "translate-group-desc-europeana": "[[Translating:Europeana|Europeana 1914-1918]] is een website met verhalen, films en historisch materiaal over de Eerste Wereldoorlog",
+ "translate-group-desc-flaggedrevs": "Metaberichtengroep die alle berichten bevat voor de MediaWiki-uitbreiding [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:FlaggedRevs FlaggedRevs]",
+ "translate-group-desc-fuel": "[[Translating:FUEL|FUEL]] brengt meer consistentie naar softwarevertalingen",
+ "translate-group-desc-huggle": "[[Translating:Huggle|Huggle]] is een snelle verschillenbrowserapplicatie voor het omgaan met vandalisme op Wikimedia-projecten",
+ "translate-group-desc-ihris": "Een berichtengroep voor [[Translating:iHRIS|iHRIS]]",
+ "translate-group-desc-kiwix": "Een berichtengroep voor [[Translating:Kiwix|Kiwix]]",
+ "translate-group-desc-mantisbt-plugin-core": "Een core-plugin voor [[Translating:MantisBT|MantisBT]]",
+ "translate-group-desc-mathjax": "[[Translating:MathJax|MathJax]] is een cross-browser JavaScriptbibliotheek die een wiskundige notatie kan weergeven in webbrowsers",
+ "translate-group-desc-mediawiki-core-branch": "Berichten voor een stabiele versie van [[Translating:MediaWiki|MediaWiki]]",
+ "translate-group-desc-mediawikicore": "Deze berichtengroep bevat de berichten die in de huidige alpha-versie van [[Translating:MediaWiki|MediaWiki]] gebruikt worden - {{CURRENTVERSION}}",
+ "translate-group-desc-mediawikiextensions": "Metaberichtengroep die alle berichten bevat voor ondersteunde extensies voor MediaWiki",
+ "translate-group-desc-mediawikimostused": "Deze berichtengroep bevat de [https://translatewiki.net/wiki/Most_often_used_messages_in_MediaWiki 500 meest gebruikte berichten] in [[Translating:MediaWiki|MediaWiki]]",
+ "translate-group-desc-mifos": "[[Translating:Mifos|Mifos]] is een beheersysteem voor microfinanciering",
+ "translate-group-desc-nfcring-control": "[[Translating:NFC_Ring_Control|NFC Ring Control]] is een mobiele app voor interactie met NFC-tags",
+ "translate-group-desc-nocc": "[[Translating:NOCC|NOCC]] is een webmailclient",
+ "translate-group-desc-nodesc": "Er is geen beschrijving beschikbaar voor deze berichtengroep",
+ "translate-group-desc-openimages-all": "Deze berichten zijn onderdeel van het project [[Translating:Open Images|Open Beelden]]",
+ "translate-group-desc-potlatch2": "[[Translating:OpenStreetMap|Potlatch 2]] is een Flash-gebaseerde OpenStreetMap-bewerker",
+ "translate-group-desc-pywikipedia": "[[Translating:Pywikibot|Pywikibot]] is een verzameling hulpprogramma's om Wikipedia mee te bewerken",
+ "translate-group-desc-readerfeedback": "Metaberichtengroep die alle berichten bevat voor de MediaWiki-uitbreiding [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:ReaderFeedback ReaderFeedback]",
+ "translate-group-desc-semantic": "Metaberichtengroep die alle berichten bevat voor uitbreidingen voor [https://semantic-mediawiki.org/ Semantische MediaWiki]",
+ "translate-group-desc-translatablepages": "Alle te vertalen pagina's",
+ "translate-group-desc-translate": "Metaberichtengroep die alle berichten bevat voor de MediaWiki-uitbreiding [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Translate Translate]; stel uzelf op de hoogte van de [https://www.mediawiki.org/wiki/Help:Extension:Translate/Glossary woordenlijst]",
+ "translate-group-desc-tsint": "Een berichtengroep voor [[Translating:Intuition|Intuition]], het i18n-systeem voor [//tools.wmflabs.org/ Toolserverprogramma's] (<span class=\"plainlinks\">[[Translating talk:Intuition|ondersteuning]]</span>)",
+ "translate-group-desc-universallanguageselector": "Metaberichtengroep die alle berichten bevat voor de MediaWiki-uitbreiding [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:UniversalLanguageSelector UniversalLanguageSelector] (ULS) en gerelateerde softwarepakketten.",
+ "translate-group-desc-vicuna": "[[Translating:VicuñaUploader|VicuñaUploader]] is een hulpprogramma voor het uploaden van bestanden naar Wikimedia Commons en andere projecten van Wikimedia",
+ "translate-group-desc-visualeditor": "Metaberichtengroep die alle berichten bevat voor de MediaWiki-uitbreiding [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:VisualEditor VisualEditor] en gerelateerde softwarepakketten.",
+ "translate-group-desc-waymarked-trails": "[[Translating:Waymarked Trails|Waymarked Trails]] is een dienst voor wandel-, fiets- en mountain bike- en inline skateroutes in de hele wereld. Het project gebruikt de GNU GPL-licentie",
+ "translate-group-desc-waymarked-trails-help": "De hulppagina's van de websites van Waymarked Trails: http://waymarkedtrails.org/help/about",
+ "translate-group-desc-wikiaextensions": "Metaberichtengroep die alle berichten bevat voor ondersteunde MediaWiki-uitbreidingen gebruikt door [http://www.wikia.com Wikia]",
+ "translate-group-desc-wikimania-scholarships-app": "Berichtgroep voor [https://scholarships.wikimedia.org/apply beursaanvragen voor Wikimania]",
+ "translate-group-desc-wikimedia-mobile": "Samengevoegde groep die mobiele applicaties voor Wikimediaprojecten bevat",
+ "translate-group-desc-wikimedia-mobile-wikipedia": "[[Translating:WikipediaMobile|WikipediaMobile]] is a cross-platform mobiele en tabletapplicatie voor het lezen en bijdragen aan Wikipedia",
+ "translate-group-desc-wikimedia-mobile-wikipedia-android": "[[Translating:WikipediaMobile|Wikipedia Android]] is de Wikipedia-app voor Android",
+ "translate-group-desc-wikimedia-mobile-wikipedia-ios": "[[Translating:WikipediaMobile|Wikipedia iOS]] is de Wikipedia-app voor iOS",
+ "translate-group-desc-wikimedia-mobile-wikisource": "[[Translating:WikisourceMobile|WikisourceMobile]] is een platformonafhankelijke toepassing voor mobiele telefoons en tablet-pc's voor het lezen van en bijdragen aan Wikisource",
+ "translate-group-desc-wikimedia-mobile-wiktionary": "[[Translating:WiktionaryMobile|WiktionaryMobile]] is een platformonafhankelijke toepassing voor mobiele telefoons en tablet-pc's voor het lezen van en bijdragen aan Wikiwoordenboek",
+ "translate-group-desc-wikimediaextensions": "Metaberichtengroep die alle berichten bevat voor ondersteunde MediaWiki-uitbreidingen gebruikt door de [https://wikimediafoundation.org/ Wikimedia Foundation]",
+ "translate-group-desc-wikimediaextensions-main": "Metaberichtengroep die alle berichten bevat voor ondersteunde MediaWiki-uitbreidingen die vertaald dienen te worden voor het [https://meta.wikimedia.org/wiki/Language_committee Taalcomité] van Wikimedia",
+ "translategroupdescriptions-desc": "Berichtengroepomschrijvingen voor producten die ondersteund worden door de uitbreiding [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Translate Translate]"
+}
diff --git a/MLEB/Translate/i18n/groupdescriptions/nn.json b/MLEB/Translate/i18n/groupdescriptions/nn.json
new file mode 100644
index 00000000..f3ebeaf4
--- /dev/null
+++ b/MLEB/Translate/i18n/groupdescriptions/nn.json
@@ -0,0 +1,14 @@
+{
+ "@metadata": {
+ "authors": [
+ "Harald Khan",
+ "Njardarlogar",
+ "Lokal Profil"
+ ]
+ },
+ "bw-desc-freecol": "Før du set om FreeCol til språket ditt, les gjennom [[Translating:FreeCol]]. FreeCol nyttar GPL-lisens.",
+ "bw-desc-mantisbt": "[[Translating:MantisBT|MantisBT]] er eit gratis nettbasert feilsporingssystem. Meld frå om problem på [[Support]].",
+ "bw-desc-wikiblame": "[http://wikipedia.ramselehof.de/wikiblame.php Wikiblame] kan snøgt finna ut kven som har forfatta ei sida i ein Wikimedia-wiki.",
+ "translate-group-desc-nodesc": "Inga skildring er tilgjengeleg for denne meldingsgruppa",
+ "translate-group-desc-translatablepages": "Alle sider som kan setjast om"
+}
diff --git a/MLEB/Translate/i18n/groupdescriptions/oc.json b/MLEB/Translate/i18n/groupdescriptions/oc.json
new file mode 100644
index 00000000..0e830ea2
--- /dev/null
+++ b/MLEB/Translate/i18n/groupdescriptions/oc.json
@@ -0,0 +1,25 @@
+{
+ "@metadata": {
+ "authors": [
+ "Cedric31",
+ "Lokal Profil"
+ ]
+ },
+ "bw-desc-freecol": "Abans de tradusir FreeCol dins vòstra lenga, legissètz [[Translating:FreeCol|FreeCol]]. Freecol utiliza la licéncia GPL.",
+ "bw-desc-fudforum": "[http://fudforum.org/ FUDforum], un forum internet escrich en PHP.",
+ "bw-desc-mantisbt": "[[Translating:MantisBT|MantisBT]] es un sistèma gratuit pel seguiment sul web de las anomalias.",
+ "bw-desc-osm-site": "Aqueste grop de messatges conten los messatges de l'interfàcia d'[[Translating:Open Street Map|Open Street Map]].",
+ "bw-desc-wikiblame": "[http://wikipedia.ramselehof.de/wikiblame.php Wikiblame] es en mesura de trobar rapidament los autors d’una pagina dins un wiki Wikimedia.",
+ "translate-group-desc-collection": "Aqueste metagrop de messatges conten totes los messages de l’extension MediaWiki [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Collection Colleccion].",
+ "translate-group-desc-flaggedrevs": "Grop dels messatges Meta que conten totes los messatges de l’extension MediaWiki [https://www.mediawiki.org/wiki/Extension:FlaggedRevs FlaggedRevs]",
+ "translate-group-desc-mediawikicore": "Aqueste grop de messatges conten los messatges utilizats dins la version alfa actuala de MediaWiki ({{CURRENTVERSION}})",
+ "translate-group-desc-mediawikiextensions": "Grop dels messatges que contenon totes los messatges de las extensions suportadas per MediaWiki",
+ "translate-group-desc-mediawikimostused": "Aqueste grop de messatges conten los [//translatewiki.net/wiki/Most_often_used_messages_in_MediaWiki 500 messatges utilizats los mai sovent] dins [[Translating:MediaWiki|MediaWiki]].",
+ "translate-group-desc-nocc": "[http://nocc.sourceforge.net NOCC] es un client webmail escrich en PHP. Raportatz totes los problèmas sus [[Support]].",
+ "translate-group-desc-nodesc": "I a pas descripcion disponibla per aqueste grop de messatge",
+ "translate-group-desc-readerfeedback": "Grop dels messatges Meta que conten totes los messatges de l’extension MediaWiki [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:ReaderFeedback ReaderFeedback]",
+ "translate-group-desc-translate": "Grop dels messatges Meta que conten totes los messatges de l’extension MediaWiki [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Translate Translate]; familiarizatz-vos amb son [https://www.mediawiki.org/wiki/Help:Extension:Translate/Glossary glossari]",
+ "translate-group-desc-tsint": "Un grop de messatges per [[Translating:Intuition|Intuition]], lo sistèma d'internacionalizacion de las aisinas del [//tools.wmflabs.org/ Toolserver] (<span class=\"plainlinks\">[[Translating talk:Intuition|supòrt]]</span>)",
+ "translate-group-desc-wikiaextensions": "Grop dels messatges Meta que contenon totes los messatges de las extensions MediaWiki utilizadas per [http://www.wikia.com Wikia]",
+ "translate-group-desc-wikimediaextensions": "Meta grop de messatges que contenon totes los messatges per las extensions utilizadas per la [https://wikimediafoundation.org/ Wikimedia Foundation]"
+}
diff --git a/MLEB/Translate/i18n/groupdescriptions/pfl.json b/MLEB/Translate/i18n/groupdescriptions/pfl.json
new file mode 100644
index 00000000..d7ce645a
--- /dev/null
+++ b/MLEB/Translate/i18n/groupdescriptions/pfl.json
@@ -0,0 +1,39 @@
+{
+ "@metadata": {
+ "authors": [
+ "Manuae"
+ ]
+ },
+ "bw-desc-freecol": "[[Translating:FreeCol|FreeCol]] ischä rundebasiades Schdradegieschbiel",
+ "bw-desc-fudforum": "[[Translating:FUDforum|FUDforum]] ischä Web-Sofdwaa faä Dischbedier-Bladdform",
+ "bw-desc-mantisbt": "[[Translating:MantisBT|MantisBT]] ischä Web-Sofdwaa faä Tigged-Sischdem",
+ "bw-desc-openstreetmap": "Alli Nochrischde zu [[Translating:OpenStreetMap|OpenStreetMap]]",
+ "bw-desc-osm-site": "[[Translating:OpenStreetMap|OpenStreetMap]] ischä vaänabari Kaad vunde gonse Weld",
+ "bw-desc-wikiblame": "[[Translating:WikiBlame|WikiBlame]] eameschlischds Uffinne vunem Audoa vuner Said inem Wikimedia Wiki.",
+ "translate-group-desc-collection": "Meda-Nochrischdegrubb, wu alli Nochrischde vunde MediaWiki-Eawaidarung [https://www.mediawiki.org/wiki/Extension:Collection Collection] hod.",
+ "translate-group-desc-eol": "Ä Nochrischdegrubb fas [[Translating:EOL|Sachweadabuch vum Lewe]]",
+ "translate-group-desc-flaggedrevs": "Meda-Nochrischdegrubb, wu alli Nochrischde vunde MediaWiki-Eawaidarung [https://www.mediawiki.org/wiki/Extension:FlaggedRevs FlaggedRevs] hod.",
+ "translate-group-desc-ihris": "Ä Nochrischdegrubb fa [[Translating:iHRIS|iHRIS]]",
+ "translate-group-desc-kiwix": "Ä Nochrischdegrubb fa [[Translating:Kiwix|Kiwix]]",
+ "translate-group-desc-mantisbt-plugin-core": "Ä Kean-Oischubb fa [[Translating:MantisBT|MantisBT]]",
+ "translate-group-desc-mediawiki-core-branch": "Nochrischde fa ä schdabieli Ausgab vun [[Translating:MediaWiki|MediaWiki]]",
+ "translate-group-desc-mediawikicore": "Die Grubb hod alli Nochrischde vunde naijschdi alpha-Ausgab vun [[Translating:MediaWiki|MediaWiki]] ({{CURRENTVERSION}})",
+ "translate-group-desc-mediawikiextensions": "Meda-Nochrischdegrubb, wu alli Nochrischde vunde [[Translating:MediaWiki|MediaWiki]] unaschdidzi Eawaidarunge hod.",
+ "translate-group-desc-mediawikimostused": "Die Grubb hod die [https://translatewiki.net/wiki/Most_often_used_messages_in_MediaWiki 500 oam haifigschdi gnudzde Nochrischde] in [[Translating:MediaWiki|MediaWiki]]",
+ "translate-group-desc-mifos": "[[Translating:Mifos|Mifos]] ischä MIS fa Gläkabidal",
+ "translate-group-desc-nocc": "[[Translating:NOCC|NOCC]] ischn Webmail-Client",
+ "translate-group-desc-nodesc": "S'hod kä Bschraiwung fa die Nochrischdegrubb",
+ "translate-group-desc-openimages-all": "Die Nochrischde sinen Deel vum [[Translating:Open Images|Open Images]]-Voahawe",
+ "translate-group-desc-potlatch2": "[[Translating:OpenStreetMap|Potlatch2]] ischä Flash-gschdidzds OpenStreetMap B'awaidungsbrogram",
+ "translate-group-desc-pywikipedia": "[[Translating:Pywikibot|Pywikibot]] ischä Sommlung vun Weagzaisch zum Änare vunde Wikipedia",
+ "translate-group-desc-readerfeedback": "Meda-Nochrischdegrubb, wu alli Nochrischde vunde MediaWiki-Eawaidarung [https://www.mediawiki.org/wiki/Extension:ReaderFeedback ReaderFeedback] hod.",
+ "translate-group-desc-semantic": "Meda-Nochrischdegrubb, wu alli Nochrischde vunde MediaWiki-Eawaidarung [https://semantic-mediawiki.org/ Semantic MediaWiki] hod.",
+ "translate-group-desc-translatablepages": "Alli iwasedzbari Saide",
+ "translate-group-desc-translate": "Meda-Nochrischdegrubb, wu alli Nochrischde vunde MediaWiki-Eawaidarung [https://www.mediawiki.org/wiki/Extension:Translate Translate] hod.",
+ "translate-group-desc-tsint": "Ä Nochrischdegrubb fa [http://toolserver.org/~krinkle/TsIntuition „Toolserver Intuition\"], s'i18n-Sischdem fa uffm [http://toolserver.org Toolserver] lieschndi Weagzaisch (<span class=\"plainlinks\">[[Translating talk:Toolserver|Hilf]] &middot; [https://wiki.toolserver.org/view/Toolserver_Intuition fachlischi Oagawe]</span>)",
+ "translate-group-desc-waymarked-trails": "[[Translating:Waymarked Trails|Waymarked Trails]] ischn Dinschd fa Weesche fas Woandare, Radle, Beaschradle un Rollschuh laafe uffde gonse Weld. Bnudzd die GNU GPL G'nehmischung",
+ "translate-group-desc-wikiaextensions": "Meda-Nochrischdegrubb, wu alli Nochrischde fa unaschdizdi MediaWiki-Eawaidarung vun [http://www.wikia.com Wikia] hod.",
+ "translate-group-desc-wikimediaextensions": "Meda-Nochrischdegrubb, wu alli Nochrischde fa unaschdizdi MediaWiki-Eawaidarung vun [https://wikimediafoundation.org/ Wikimedia Foundation] hod.",
+ "translate-group-desc-wikimediaextensions-main": "Meda-Nochrischdegrubb, wu alli Nochrischde fa unaschdizdi MediaWiki-Eawaidarung hod, wu fas Iwasedze vun [https://meta.wikimedia.org/wiki/Language_committee Language committee] nodwendisch sin.",
+ "translategroupdescriptions-desc": "Bschraiwung vunde Nochrischdegrubb fa Brodugd vunde unaschdidzdi [https://mediawiki.org/wiki/Extension:Translate Iwasedzung] Eawaidarung"
+}
diff --git a/MLEB/Translate/i18n/groupdescriptions/pl.json b/MLEB/Translate/i18n/groupdescriptions/pl.json
new file mode 100644
index 00000000..7beb1a06
--- /dev/null
+++ b/MLEB/Translate/i18n/groupdescriptions/pl.json
@@ -0,0 +1,54 @@
+{
+ "@metadata": {
+ "authors": [
+ "BeginaFelicysym",
+ "Leinad",
+ "Matma Rex",
+ "Sp5uhe",
+ "ToSter",
+ "Chrumps",
+ "Vengir",
+ "Lokal Profil",
+ "Alan ffm",
+ "Darellur"
+ ]
+ },
+ "bw-desc-freecol": "Zanim rozpoczniesz tłumaczenie FreeCol, zapoznaj się z [[Translating:FreeCol]]. Freecol udostępniane jest na licencji GPL.",
+ "bw-desc-fudforum": "[http://fudforum.org/ FUDforum] – forum internetowe napisane w PHP.",
+ "bw-desc-mantisbt": "[[Translating:MantisBT|MantisBT]] jest internetowym systemem obsługi zgłoszeń usterek",
+ "bw-desc-openstreetmap": "Grupa wszystkich komunikatów [[Translating:OpenStreetMap|OpenStreetMap]]",
+ "bw-desc-osm-site": "Ta grupa komunikatów zawiera interfejs [[Translating:Open Street Map|Open Street Map]]. Zobacz [http://unicode.org/repos/cldr-tmp/trunk/diff/supplemental/language_plural_rules.html#{{UILANGCODE}} stronę Unicode CLDR wyjaśniającą zasady tworzenia liczby mnogiej].",
+ "bw-desc-wikiblame": "[http://wikipedia.ramselehof.de/wikiblame.php Wikiblame] pozwala szybko odnaleźć autorów strony w Wikimedia wiki.",
+ "translate-group-desc-blockly": "Grupa komunikatów dla [[Translating:Blockly|Blockly]]",
+ "translate-group-desc-collection": "Metagrupa zawiera wszystkie komunikaty MediaWiki używane przez rozszerzenie [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Collection Kolekcja]",
+ "translate-group-desc-eol": "Grupa komunikatów [[Translating:EOL|Encyklopedii życia]]",
+ "translate-group-desc-europeana": "[[Translating:Europeana|Europeana]] umożliwia ludziom odkrywanie dorobku kulturowego Europy",
+ "translate-group-desc-flaggedrevs": "Metagrupa zawierająca wszystkie komunikaty rozszerzenia MediaWiki [https://www.mediawiki.org/Special:MyLanguage/wiki/Extension:FlaggedRevs FlaggedRevs]",
+ "translate-group-desc-huggle": "[[Translating:Huggle|Huggle]] to szybka aplikacja do porównywania wersji stron, która pomaga w zwalczaniu wandalizmu na projektach Wikimedia.",
+ "translate-group-desc-ihris": "Grupa komunikatów [[Translating:iHRIS|iHRIS]]",
+ "translate-group-desc-kiwix": "Grupy wiadomości dla [[Translating:Kiwix|Kiwix]]",
+ "translate-group-desc-mantisbt-plugin-core": "Główna wtyczka dla [[Translating:MantisBT|MantisBT]]",
+ "translate-group-desc-mediawiki-core-branch": "Komunikaty stabilnej wersji oprogramowania [[Translating:MediaWiki|MediaWiki]]",
+ "translate-group-desc-mediawikicore": "Grupa zawiera komunikaty wykorzystywane w bieżącej wersji alfa MediaWiki ({{CURRENTVERSION}})",
+ "translate-group-desc-mediawikiextensions": "Metagrupa zawiera wszystkie komunikaty obsługiwanych rozszerzeń do MediaWiki",
+ "translate-group-desc-mediawikiskins": "Grupa komunikatów Meta zawierająca wszystkie komunikaty dla skórek obsługiwanych w [[Translating:MediaWiki|MediaWiki]]",
+ "translate-group-desc-mediawikimostused": "Ta grupa komunikatów zawiera [https://translatewiki.net/wiki/Most_often_used_messages_in_MediaWiki 500 najczęściej używanych komunikatów] w [[Translating:MediaWiki|MediaWiki]]",
+ "translate-group-desc-mifos": "[[Translating:Mifos|Mifos]] jest systemem zarządzania informacją dla mikrofinansów",
+ "translate-group-desc-nocc": "[http://nocc.sourceforge.net NOCC] jest internetowym klientem poczty napisanym w PHP. Prosimy o zgłaszanie wszelkich problemów [[Support|obsłudze]].",
+ "translate-group-desc-nodesc": "Dla tej grupy komunikatów opis nie jest dostępny",
+ "translate-group-desc-openimages-all": "Komunikaty projektu [[Translating:Open Images|Open Images]]",
+ "translate-group-desc-potlatch2": "[[Translating:OpenStreetMap|Potlatch2]] jest edytorem OpenStreetMap opartym na technologii Flash",
+ "translate-group-desc-pywikipedia": "[[Translating:Pywikibot|Pywikibot]] to kolekcja narzędzi służących do edycji Wikipedii",
+ "translate-group-desc-readerfeedback": "Metagrupa komunikatów zawierająca wszystkie komunikaty rozszerzenia MediaWiki [https://www.mediawiki.org/Special:MyLanguage/wiki/Extension:ReaderFeedback ReaderFeedback]",
+ "translate-group-desc-semantic": "Grupa meta wiadomości zawierająca wszystkie wiadomości dla wszystkich rozszerzeń [https://semantic-mediawiki.org/ Semantic MediaWiki]",
+ "translate-group-desc-translatablepages": "Wszystkie przetłumaczalne strony",
+ "translate-group-desc-translate": "Metagrupa komunikatów zawierająca wszystkie komunikaty rozszerzeń MediaWiki [https://www.mediawiki.org/wiki/Extension:Translate Translate]",
+ "translate-group-desc-tsint": "Grupa wiadomości, [[Translating:Intuition|Intuition]], systemy internacjonalizacji [//tools.wmflabs.org/ Wikimedia Tool Labs] (<span class=\"plainlinks\">[[Translating talk:Intuition|obsługa]]</span>)",
+ "translate-group-desc-vicuna": "[[Translating:VicuñaUploader|VicuñaUploader]] to narzędzie do przesyłania plików na Wikimedia Commons i do innych projektów Wikimedia",
+ "translate-group-desc-waymarked-trails": "[[Translating:Waymarked Trails|Waymarked Trails]] jest usługą wyświetlającą trasy wycieczek pieszych, rowerowych, kolarstwa górskiego i łyżworolkowych na całym świecie. Na licencji GNU GPL",
+ "translate-group-desc-wikiaextensions": "Metagrupa zawiera wszystkie komunikaty obsługiwanych rozszerzeń MediaWiki używanych przez [http://www.wikia.com Wikia]",
+ "translate-group-desc-wikimedia-mobile": "Grupy zbiorcze komunikatów zawierające aplikacje mobilne dla projektów Wikimedia",
+ "translate-group-desc-wikimediaextensions": "Metagrupa zawiera wszystkie komunikaty obsługiwanych rozszerzeń MediaWiki używanych przez [https://wikimediafoundation.org/ Fundację Wikimedia]",
+ "translate-group-desc-wikimediaextensions-main": "Grupa meta komunikatów zawierająca wszystkie wymagające przetłumaczenia komunikaty wspieranych rozszerzeń MediaWiki na potrzeby [https://meta.wikimedia.org/wiki/Special:MyLanguage/Language_committee komitetu językowego] Wikimedia",
+ "translategroupdescriptions-desc": "Opis grupy komunikatów dla produktów wspieranych przez [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Translate rozszerzenie tłumaczenia]"
+}
diff --git a/MLEB/Translate/i18n/groupdescriptions/pms.json b/MLEB/Translate/i18n/groupdescriptions/pms.json
new file mode 100644
index 00000000..011d63c7
--- /dev/null
+++ b/MLEB/Translate/i18n/groupdescriptions/pms.json
@@ -0,0 +1,48 @@
+{
+ "@metadata": {
+ "authors": [
+ "Borichèt",
+ "Dragonòt",
+ "Lokal Profil"
+ ]
+ },
+ "bw-desc-freecol": "Prima ëd volté FreeCol an soa lenga, për piasì ch'a lesa [[Translating:FreeCol]]. Freecol a deuvra la licensa GPL.",
+ "bw-desc-fudforum": "[http://fudforum.org/ FUDforum], un forum web scrivù an PHP.",
+ "bw-desc-mantisbt": "[[Translating:MantisBT|MantisBT]] a l'é un sistema lìber ëd trassadura dj'eror an sl'aragnà",
+ "bw-desc-openstreetmap": "Partìa ëd mëssagi për tùit ij mëssagi [[Translating:OpenStreetMap|OpenStreetMap]]",
+ "bw-desc-osm-site": "Sta partìa ëd messagi-sì a conten ij messagi d'antërfassa për [[Translating:Open Street Map|Open Street Map]].",
+ "bw-desc-wikiblame": "[http://wikipedia.ramselehof.de/wikiblame.php Wikiblame] a peil trové an pressa j'àutor ëd na pàgina an na wiki ëd Wikimedia.",
+ "translate-group-desc-collection": "Meta partìa ëd mëssagi contenent tùit ij mëssagi për l'estension MediaWiki [https://www.mediawiki.org/wiki/Extension:Collection Colession]",
+ "translate-group-desc-eol": "Na partìa ëd mëssagi për l'[[Translating:EOL|Enciclopedìa dla Vita]]",
+ "translate-group-desc-etherpad-lite": "[[Translating:Etherpad lite|Etherpad lite]] a l'é n'editor colaborativ vreman an temp real",
+ "translate-group-desc-europeana": "[[Translating:Europeana|Europeana]] a abìlita le përson-e a esploré j'arsorse culturaj digitaj d'Euròpa",
+ "translate-group-desc-flaggedrevs": "Meta partìa ëd mëssagi contenent tùit ij mëssagi për l'estension MediaWiki [https://www.mediawiki.org/wiki/Extension:FlaggedRevs Revision signalà]",
+ "translate-group-desc-ihris": "Na partìa ëd mëssagi për [[Translating:iHRIS|iHRIS]]",
+ "translate-group-desc-kiwix": "Na partìa ëd mëssagi për [[Translating:Kiwix|Kiwix]]",
+ "translate-group-desc-mantisbt-plugin-core": "Un plugin sentral për [[Translating:MantisBT|MantisBT]]",
+ "translate-group-desc-mediawiki-core-branch": "Mëssagi për na version ëstàbil ëd [[Translating:MediaWiki|MediaWiki]]",
+ "translate-group-desc-mediawikicore": "Sta partìa ëd mëssagi-sì a conten ij mëssagi dovrà ant la version alfa corenta ëd MediaWiki ({{CURRENTVERSION}})",
+ "translate-group-desc-mediawikiextensions": "Meta partìa ëd mëssagi contenent tùit ij mëssagi për l'estension mantnù për MediaWiki",
+ "translate-group-desc-mediawikimostused": "Sta partìa ëd mëssagi-sì a conten [https://translatewiki.net/wiki/Most_often_used_messages_in_MediaWiki ij 500 mëssagi dovrà pi 'd soens] an MediaWiki ({{CURRENTVERSION}})",
+ "translate-group-desc-mifos": "[[Translating:Mifos|Mifos]] a l'é un sistema anformativ ëd gestion për la microfinansa",
+ "translate-group-desc-nocc": "[[Translating:NOCC|NOCC]] a l'é un client webmail",
+ "translate-group-desc-nodesc": "A-i é gnun-a descrission disponìbil për sta partìa ëd messagi-sì",
+ "translate-group-desc-openimages-all": "Sti mëssagi-sì a son part dël prget [[Translating:Open Images|Open Images]]",
+ "translate-group-desc-potlatch2": "[[Translating:OpenStreetMap|Potlatch2]] a l'é n'editor OpenStreetMap basà su Flash",
+ "translate-group-desc-pywikipedia": "[[Translating:Pywikibot|Pywikibot]] a l'é na colession d'utiss për modifiché Wikipedia",
+ "translate-group-desc-readerfeedback": "Meta partìa ëd mëssagi contenent tùit ij mëssagi për l'estension MediaWiki [https://www.mediawiki.org/wiki/Extension:ReaderFeedback Sugeriment dij letor]",
+ "translate-group-desc-semantic": "Partìa ëd mëssagi Meta contenent tùit ij mëssagi për tute j'estension [https://semantic-mediawiki.org/ Semantic MediaWiki]",
+ "translate-group-desc-translatablepages": "Tute le pàgine ch'as peulo volté",
+ "translate-group-desc-translate": "Partìa dij mëssagi Meta contenent tùit ij mëssagi për l'estension MediaWiki [https://www.mediawiki.org/wiki/Extension:Translate Tradussion]; për piasì, ch'as familiarisa con sò [https://www.mediawiki.org/wiki/Help:Extension:Translate/Glossary glossari]",
+ "translate-group-desc-tsint": "Na partìa ëd mëssagi për [[Translating:Intuition|Intuition]], ël sistema i18n për utiss [//tools.wmflabs.org/ Wikimedia Tool Labs] (<span class=\"plainlinks\">[[Translating talk:Intuition|agiut]] </span>)",
+ "translate-group-desc-waymarked-trails": "[[Translating:Waymarked Trails|Waymarked Trails]] a l'é un servissi ch'a mostra le stra për j'escursion, la bici, ël rampichin e ël tapinagi an linia dantorn al mond. A deuvra la licensa GNU GPL",
+ "translate-group-desc-waymarked-trails-help": "Le pàgine d'agiut dël sit dl'aragnà Senté marcà: http://waymarkedtrails.org/help/about",
+ "translate-group-desc-wikiaextensions": "Meta partìa ëd mëssagi contenent tùit ij mëssagi për l'estension mantnùa MediaWiki dovrà da [http://www.wikia.com Wikia]",
+ "translate-group-desc-wikimedia-mobile": "La partìa ëd mëssagi agregà contenent j'aplicassion për sacociàbil për ij proget Wikimedia",
+ "translate-group-desc-wikimedia-mobile-wikipedia": "[[Translating:WikipediaMobile|WikipediaMobile]] a l'é n'aplicassion për sacociàbil e taulëtta antër-piataforme për lese e contribuì a Wikipedia",
+ "translate-group-desc-wikimedia-mobile-wikisource": "[[Translating:WikisourceMobile|WikisourceMobile]] a l'é n'aplicassion për sacociàbil e taulëtta antër-piataforme për lese e contribuì a Wikisource",
+ "translate-group-desc-wikimedia-mobile-wiktionary": "[[Translating:WiktionaryMobile|WiktionaryMobile]] a l'é n'aplicassion për sacociàbil e taulëtta antër-piataforme për lese e contribuì a Wiktionary",
+ "translate-group-desc-wikimediaextensions": "Meta partìa ëd mëssagi contenent tùit ij mëssagi për j'estension MediaWiki mantnùe dovrà da la [https://wikimediafoundation.org/ Fondassion Wikimedia]",
+ "translate-group-desc-wikimediaextensions-main": "Partìa ëd meta mëssagi contenent tùit ij mëssagi për j'estension MediaWiki mantnùe e ch'a venta volté për ël [https://meta.wikimedia.org/wiki/Language_committee Comità dle lenghe] ëd Wikimedia",
+ "translategroupdescriptions-desc": "Descrission dle partìe ëd mëssagi për ij prodot mantnù da l'estension [https://mediawiki.org/wiki/Extension:Translate Translate]"
+}
diff --git a/MLEB/Translate/i18n/groupdescriptions/ps.json b/MLEB/Translate/i18n/groupdescriptions/ps.json
new file mode 100644
index 00000000..be6fccbd
--- /dev/null
+++ b/MLEB/Translate/i18n/groupdescriptions/ps.json
@@ -0,0 +1,10 @@
+{
+ "@metadata": {
+ "authors": [
+ "Ahmed-Najib-Biabani-Ibrahimkhel"
+ ]
+ },
+ "translate-group-desc-eol": "[[Translating:EOL|د ژوند پوهنغونډ]] يوه پيغام ډله",
+ "translate-group-desc-kiwix": "د [[Translating:Kiwix|کيويکس]] يوه پيغام ډله",
+ "translate-group-desc-translatablepages": "د ژباړې وړ ټول مخونه"
+}
diff --git a/MLEB/Translate/i18n/groupdescriptions/pt-br.json b/MLEB/Translate/i18n/groupdescriptions/pt-br.json
new file mode 100644
index 00000000..c9a8158a
--- /dev/null
+++ b/MLEB/Translate/i18n/groupdescriptions/pt-br.json
@@ -0,0 +1,49 @@
+{
+ "@metadata": {
+ "authors": [
+ "Giro720",
+ "Hamilton Abreu",
+ "Helder.wiki",
+ "555",
+ "Amgauna",
+ "Cainamarques",
+ "Fabsouza1",
+ "Lokal Profil",
+ "Rodrigo codignoli",
+ "Guilhermemau",
+ "He7d3r"
+ ]
+ },
+ "bw-desc-freecol": "Antes de traduzir o FreeCol para a sua língua, por favor leia [[Translating:FreeCol]]. O Freecol utiliza a licença GPL.",
+ "bw-desc-fudforum": "[http://fudforum.org/ FUDforum], um fórum web escrito em PHP.",
+ "bw-desc-mantisbt": "O [[Translating:MantisBT|MantisBT]] é um sistema de seguimento de bugs livre e online. Por favor reporte quaisquer problemas em [[Support]].",
+ "bw-desc-openstreetmap": "Grupo para todas as mensagens do [[Translating:OpenStreetMap|OpenStreetMap]]",
+ "bw-desc-osm-site": "Este grupo contém as mensagens de interface do [[Translating:Open Street Map|Open Street Map]].\nConsulte [http://unicode.org/repos/cldr-tmp/trunk/diff/supplemental/language_plural_rules.html#{{UILANGCODE}} a página Unicode CLDR para uma explicação das chaves plurais].",
+ "bw-desc-wikiblame": "[http://wikipedia.ramselehof.de/wikiblame.php Wikiblame] é capaz de encontrar rapidamente os autores de uma página em um wiki da Wikimedia.",
+ "translate-group-desc-blockly": "Um grupo de mensagens para [[Translating:Blockly|Blockly]]",
+ "translate-group-desc-bluespice": "Grupo de mensagens do Meta contendo todas as mensagens para a extensão do MediaWiki [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:BlueSpice Blue Spice]",
+ "translate-group-desc-collection": "Grupo de mensagens do Meta contendo todas as mensagens para a extensão do MediaWiki [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Collection Collection]",
+ "translate-group-desc-eol": "Grupo de mensagens da [[Translating:EOL|Encyclopedia of Life]]",
+ "translate-group-desc-etherpad-lite": "O [[Translating:Etherpad lite|Etherpad lite]] é um editor colaborativo verdadeiramente em tempo real",
+ "translate-group-desc-flaggedrevs": "Grupo de mensagens do Meta contendo todas as mensagens para a extensão do MediaWiki [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:FlaggedRevs FlaggedRevs]",
+ "translate-group-desc-ihris": "Um grupo de mensagens para [[Translating:iHRIS|iHRIS]]",
+ "translate-group-desc-kiwix": "Um grupo de mensagens para [[Translating:Kiwix|Kiwix]]",
+ "translate-group-desc-mantisbt-plugin-core": "Um plugin para o [[Translating:MantisBT|MantisBT]]",
+ "translate-group-desc-mediawikicore": "Este grupo de mensagens contém as mensagens utilizadas na atual versão alfa do MediaWiki ({{CURRENTVERSION}})",
+ "translate-group-desc-mediawikiextensions": "Meta-grupo de mensagens contendo todas as mensagens para extensões do MediaWiki suportadas",
+ "translate-group-desc-mediawikiskins": "Meta-grupo de mensagens contendo todas as mensagens para extensões do MediaWiki suportadas",
+ "translate-group-desc-mediawikimostused": "Este grupo de mensagens contém as [https://translatewiki.net/wiki/Most_often_used_messages_in_MediaWiki 500 mensagens utilizadas com mais frequência] no [[Translating:MediaWiki|MediaWiki]]",
+ "translate-group-desc-mifos": "[[Translating:Mifos|Mifos]] é um sistema de informação de gestão (MIS) para microfinanças",
+ "translate-group-desc-nocc": "O [http://nocc.sourceforge.net NOCC] é um cliente de e-mail escrito em PHP. Por favor reporte qualquer problema em [[Support]].",
+ "translate-group-desc-nodesc": "Não existe descrição para este grupo de mensagens",
+ "translate-group-desc-pywikipedia": "[[Translating:Pywikibot|Pywikibot]] é um conjunto de ferramentas para editar a Wikipédia",
+ "translate-group-desc-readerfeedback": "Grupo de mensagens do Meta contendo todas as mensagens para a extensão do MediaWiki [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:ReaderFeedback ReaderFeedback]",
+ "translate-group-desc-semantic": "Grupo de mensagens do Meta contendo todas as mensagens de todas extensões do [https://semantic-mediawiki.org/ Semantic MediaWiki]",
+ "translate-group-desc-translatablepages": "Todas as páginas traduzíveis",
+ "translate-group-desc-translate": "Grupo de mensagens do Meta contendo todas as mensagens da extensão do MediaWiki [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Translate Tradução]; se familiarize com seus [https://www.mediawiki.org/wiki/Help:Extension:Translate/Glossary jargões]",
+ "translate-group-desc-tsint": "Um grupo de mensagens para [[Tradução: Intuition|Intuição]], o sistema de i18n para ferramentas [//tools.wmflabs.org/ Wikimedia ferramenta Labs] (<span class=\"plainlinks\"> [[Tradução conversa: Intuition|support]]</span>)",
+ "translate-group-desc-wikiaextensions": "Este meta-grupo contém todas as mensagens para as extensões suportadas do MediaWiki que são usadas pela [http://www.wikia.com Wikia]",
+ "translate-group-desc-wikimediaextensions": "Grupo de mensagens do Meta contendo todas as mensagens para as extensões MediaWiki suportadas e utilizadas pela [https://wikimediafoundation.org/ Fundação Wikimedia]",
+ "translate-group-desc-wikimediaextensions-main": "Grupo de mensagens do Meta contendo todas as mensagens para as extensões MediaWiki suportadas que requerem tradução para o [https://meta.wikimedia.org/wiki/Language_committee Comité de Línguas] da Wikimedia",
+ "translategroupdescriptions-desc": "Descrições dos grupos de mensagens dos produtos suportados pela extensão [https://mediawiki.org/wiki/Extension:Translate Translate]"
+}
diff --git a/MLEB/Translate/i18n/groupdescriptions/pt.json b/MLEB/Translate/i18n/groupdescriptions/pt.json
new file mode 100644
index 00000000..54ca36e0
--- /dev/null
+++ b/MLEB/Translate/i18n/groupdescriptions/pt.json
@@ -0,0 +1,66 @@
+{
+ "@metadata": {
+ "authors": [
+ "Giro720",
+ "Hamilton Abreu",
+ "Luckas",
+ "McDutchie",
+ "Waldir",
+ "Fúlvio",
+ "Imperadeiro98",
+ "Lokal Profil",
+ "Vitorvicentevalente"
+ ]
+ },
+ "bw-desc-freecol": "Antes de traduzir o FreeCol para a sua língua, por favor leia [[Translating:FreeCol]]. O Freecol utiliza a licença GPL.",
+ "bw-desc-fudforum": "[http://fudforum.org/ FUDforum], um fórum web escrito em PHP.",
+ "bw-desc-mantisbt": "O [[Translating:MantisBT|MantisBT]] é um sistema de seguimento de erros ''on-line''.",
+ "bw-desc-openstreetmap": "Grupo para todas as mensagens do [[Translating:OpenStreetMap|OpenStreetMap]]",
+ "bw-desc-osm-site": "O [[Translating:OpenStreetMap|OpenStreetMap]] é um mapa editável de todo o mundo",
+ "bw-desc-wikiblame": "O [[Translating:WikiBlame|WikiBlame]] encontra rapidamente os autores de alterações em páginas nas wikis da Wikimedia",
+ "translate-group-desc-blockly": "Um grupo de mensagens para [[Translating:Blockly|Blockly]]",
+ "translate-group-desc-bluespice": "Grupo de mensagens do Meta que contém todas as mensagens da extensão MediaWiki [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:BlueSpice Blue Spice]",
+ "translate-group-desc-collection": "Grupo de mensagens do Meta que contém todas as mensagens para a extensão do MediaWiki [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Collection Colecção]",
+ "translate-group-desc-eol": "Um grupo de mensagens para a [[Translating:EOL|Enciclopédia da Vida]]",
+ "translate-group-desc-etherpad-lite": "O [[Translating:Etherpad lite|Etherpad lite]] é um editor colaborativo em tempo verdadeiramente real",
+ "translate-group-desc-europeana": "[[Translating:Europeana|Europeana 1914-1918]] é um sítio web com histórias, filmes e material histórico acerca da Primeira Guerra Mundial",
+ "translate-group-desc-flaggedrevs": "Grupo de mensagens do Meta que contém todas as mensagens para a extensão do MediaWiki [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:FlaggedRevs Revisão de Edições]",
+ "translate-group-desc-fuel": "[[Translating:FUEL|FUEL]] traz mais consistência à tradução de software",
+ "translate-group-desc-huggle": "[[Translating:Huggle|Huggle]] é uma aplicação rápida de procura de edições para lidar com o vandalismo nos projetos Wikimedia",
+ "translate-group-desc-ihris": "Um grupo de mensagens para o [[Translating:iHRIS|iHRIS]]",
+ "translate-group-desc-kiwix": "Um grupo de mensagens para o [[Translating:Kiwix|Kiwix]]",
+ "translate-group-desc-mantisbt-plugin-core": "Um plugin para o [[Translating:MantisBT|MantisBT]]",
+ "translate-group-desc-mathjax": "O [[Translating:MathJax|MathJax]] é uma biblioteca multi-browser em JavaScript que apresenta notação matemática em browsers da internet",
+ "translate-group-desc-mediawiki-core-branch": "Mensagens para uma versão estável do [[Translating:MediaWiki|MediaWiki]]",
+ "translate-group-desc-mediawikicore": "Este grupo contém as mensagens utilizadas na atual versão alfa do [[Translating:MediaWiki|MediaWiki]] ({{CURRENTVERSION}})",
+ "translate-group-desc-mediawikiextensions": "Este meta-grupo contém todas as mensagens para as extensões do [[Translating:MediaWiki|MediaWiki]] suportadas",
+ "translate-group-desc-mediawikiskins": "Este meta-grupo contém todas as mensagens para os temas do [[Translating:MediaWiki|MediaWiki]] suportados",
+ "translate-group-desc-mediawikimostused": "Este grupo de mensagens contém as [https://translatewiki.net/wiki/Most_often_used_messages_in_MediaWiki 500 mensagens mais frequentemente utilizadas] no [[Translating:MediaWiki|MediaWiki]]",
+ "translate-group-desc-mifos": "[[Translating:Mifos|Mifos]] é um sistema de informação de gestão (MIS) para microfinanças",
+ "translate-group-desc-nocc": "O [http://nocc.sourceforge.net NOCC] é um cliente de email escrito em PHP. Por favor reporte quaisquer problemas em [[Support]].",
+ "translate-group-desc-nodesc": "Não existe descrição para este grupo de mensagens",
+ "translate-group-desc-openimages-all": "Estas mensagens fazem parte do projeto [[Translating:Open Images|Open Images]]",
+ "translate-group-desc-potlatch2": "[[Translating:OpenStreetMap|Potlatch2]] é um editor do OpenStreetMap baseado em Flash",
+ "translate-group-desc-pywikipedia": "[[Translating:Pywikibot|Pywikibot]] é um conjunto de ferramentas para editar a Wikipédia",
+ "translate-group-desc-readerfeedback": "Este meta-grupo contém todas as mensagens para a extensão do MediaWiki [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:ReaderFeedback ReaderFeedback]",
+ "translate-group-desc-semantic": "Este meta-grupo contém todas as mensagens para todas as extensões do [https://semantic-mediawiki.org/ MediaWiki Semântico]",
+ "translate-group-desc-translatablepages": "Todas as páginas traduzíveis",
+ "translate-group-desc-translate": "Este meta-grupo contém todas as mensagens para a extensão do MediaWiki [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Translate Traduzir]; familiarize-se com o respetivo [https://www.mediawiki.org/wiki/Help:Extension:Translate/Glossary glossário], por favor",
+ "translate-group-desc-tsint": "Um grupo de mensagens para o [[Translating:Intuition|Intuition]], o sistema de internacionalização das ferramentas [//tools.wmflabs.org/ Wikimedia Tool Labs] (<span class=\"plainlinks\">[[Translating talk:Intuition|apoio]]</span>)",
+ "translate-group-desc-universallanguageselector": "Este meta-grupo contém todas as mensagens para a extensão do MediaWiki [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:UniversalLanguageSelector UniversalLanguageSelector] (ULS) e pacotes de software relacionados",
+ "translate-group-desc-vicuna": "[[Translating:VicuñaUploader|VicuñaUploader]] é uma ferramenta que auxilia o carregamento de ficheiros no Wikimedia Commons e noutros projetos Wikimedia",
+ "translate-group-desc-visualeditor": "Este meta-grupo contém todas as mensagens para a extensão do MediaWiki [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:VisualEditor Editor Visual] e pacotes de software relacionados",
+ "translate-group-desc-waymarked-trails": "[[Translating:Waymarked Trails|Waymarked Trails]] é um serviço que mostra rotas de caminhada, ciclismo, ''mountain bike'' e patinação em todo o mundo. Utiliza a licença GNU GPL",
+ "translate-group-desc-waymarked-trails-help": "As páginas de ajuda dos sites Waymarked Trails: http://waymarkedtrails.org/help/about",
+ "translate-group-desc-wikiaextensions": "Este meta-grupo contém todas as mensagens para as extensões suportadas do MediaWiki que são usadas pela [http://www.wikia.com Wikia]",
+ "translate-group-desc-wikimania-scholarships-app": "Grupo de mensagens para a aplicação [https://scholarships.wikimedia.org/apply Wikimania Scholarship]",
+ "translate-group-desc-wikimedia-mobile": "Grupo de mensagens agregadas para as aplicações móveis dos projetos Wikimedia",
+ "translate-group-desc-wikimedia-mobile-wikipedia": "O [[Translating:WikipediaMobile|WikipediaMobile]] é uma aplicação multi-plataforma para telemóveis e ''tablets'' que permite ler e editar a Wikipédia",
+ "translate-group-desc-wikimedia-mobile-wikipedia-android": "O [[Translating:WikipediaMobile|Wikipedia Android]] é a versão específica para o Android da aplicação móvel da Wikipédia",
+ "translate-group-desc-wikimedia-mobile-wikipedia-ios": "O [[Translating:WikipediaMobile|Wikipedia iOS]] é a versão específica para o iOS da aplicação móvel da Wikipédia",
+ "translate-group-desc-wikimedia-mobile-wikisource": "O [[Translating:WikisourceMobile|WikisourceMobile]] é uma aplicação multi-plataforma para telemóveis e ''tablets'' que permite ler e editar a Wikisource",
+ "translate-group-desc-wikimedia-mobile-wiktionary": "[[Translating:WiktionaryMobile|WiktionaryMobile]] é uma aplicação multi-plataforma para telemóveis e ''tablets'' que permite ler e editar o Wikcionário",
+ "translate-group-desc-wikimediaextensions": "Este meta-grupo contém todas as mensagens para as extensões MediaWiki suportadas, usadas pela [https://wikimediafoundation.org/ Wikimedia Foundation]",
+ "translate-group-desc-wikimediaextensions-main": "Este meta-grupo contém todas as mensagens para as extensões MediaWiki suportadas, que requerem tradução para a [https://meta.wikimedia.org/wiki/Special:MyLanguage/Language_committee Comissão de Idiomas] da Wikimedia",
+ "translategroupdescriptions-desc": "Descrições dos grupos de mensagens dos produtos suportados pela extensão [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Translate Translate]"
+}
diff --git a/MLEB/Translate/i18n/groupdescriptions/qqq.json b/MLEB/Translate/i18n/groupdescriptions/qqq.json
new file mode 100644
index 00000000..463a1c4d
--- /dev/null
+++ b/MLEB/Translate/i18n/groupdescriptions/qqq.json
@@ -0,0 +1,40 @@
+{
+ "@metadata": {
+ "authors": [
+ "Purodha",
+ "Shirayuki",
+ "Liuxinyu970226",
+ "Siebrand"
+ ]
+ },
+ "bw-desc-freecol": "{{doc-important|Do not translate the link target <code>Translating:FreeCol</code>.}}",
+ "bw-desc-fudforum": "{{doc-important|Do not translate the link target <code>Translating:FUDforum</code>.}}",
+ "bw-desc-mantisbt": "{{doc-important|Do not translate the link target <code>Translating:MantisBT</code>.}}",
+ "bw-desc-openstreetmap": "Do not translate the link target <code>Translating:OpenStreetMap</code>.",
+ "bw-desc-osm-site": "{{doc-important|Do not translate the link target <code>Translating:OpenStreetMap</code>.}}",
+ "bw-desc-wikiblame": "Do not translate the link target <code>Translating:WikiBlame</code>.",
+ "translate-group-desc-eol": "{{doc-important|Do not translate the link target <code>Translating:EOL</code>.}}",
+ "translate-group-desc-etherpad-lite": "{{doc-important|Do not translate the link target <code>Translating:Etherpad lite</code>.}}",
+ "translate-group-desc-europeana": "{{doc-important|Do not translate the link target <code>Translating:Europeana</code>.}}",
+ "translate-group-desc-huggle": "{{doc-important|Do not translate the link target <code>Translating:Huggle</code>.}}",
+ "translate-group-desc-ihris": "{{doc-important|Do not translate the link target <code>Translating:iHRIS</code>.}}",
+ "translate-group-desc-kiwix": "{{doc-important|Do not translate the link target <code>Translating:Kiwix</code>.}}",
+ "translate-group-desc-mantisbt-plugin-core": "Do not translate the link target <code>Translating:MantisBT</code>.",
+ "translate-group-desc-mediawiki-core-branch": "{{doc-important|Do not translate the link target <code>Translating:MediaWiki</code>.}}",
+ "translate-group-desc-mediawikiapi": "{{doc-important|Do not translate the link target <code>Translating:MediaWiki</code>.}}",
+ "translate-group-desc-mediawikicore": "{{doc-important|Do not translate the link target <code>Translating:MediaWiki</code>.}}",
+ "translate-group-desc-mediawikiextensions": "{{doc-important|Do not translate the link target <code>Translating:MediaWiki</code>.}}",
+ "translate-group-desc-mediawikiskins": "{{doc-important|Do not translate the link target <code>Translating:MediaWiki</code>.}}",
+ "translate-group-desc-mediawikimostused": "{{doc-important|Do not translate the link target <code>Translating:MediaWiki</code>.}}",
+ "translate-group-desc-mifos": "Do not translate the link target <code>Translating:Mifos</code>.",
+ "translate-group-desc-nfcring-control": "{{doc-important|Do not translate the link target <code>Translating:NFC Ring Control</code>.}}",
+ "translate-group-desc-nocc": "Do not translate the link target <code>Translating:NOCC</code>.",
+ "translate-group-desc-openimages-all": "Do not translate the link target <code>Translating:Open Images</code>.",
+ "translate-group-desc-potlatch2": "{{doc-important|Do not translate the link target <code>Translating:OpenStreetMap</code>.}}",
+ "translate-group-desc-pywikipedia": "{{doc-important|Do not translate the link target <code>Translating:Pywikibot</code>.}}",
+ "translate-group-desc-tsint": "{{doc-important|Do not translate the link target <code>Translating:Intuition</code>.}}",
+ "translate-group-desc-waymarked-trails": "{{doc-important|Do not translate the link target <code>Translating:Waymarked Trails</code>.}}",
+ "translate-group-desc-wikimedia-mobile-wikipedia": "{{doc-important|Do not translate the link target <code>Translating:WikipediaMobile</code>.}}",
+ "translate-group-desc-wikimedia-mobile-wikisource": "{{doc-important|Do not translate the link target <code>Translating:WikisourceMobile</code>.}}",
+ "translate-group-desc-wikimedia-mobile-wiktionary": "{{doc-important|Do not translate the link target <code>Translating:WiktionaryMobile</code>.}}"
+}
diff --git a/MLEB/Translate/i18n/groupdescriptions/qu.json b/MLEB/Translate/i18n/groupdescriptions/qu.json
new file mode 100644
index 00000000..7c624ea5
--- /dev/null
+++ b/MLEB/Translate/i18n/groupdescriptions/qu.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "AlimanRuna"
+ ]
+ },
+ "translate-group-desc-mediawiki-core-branch": "[[Translating:MediaWiki|MediaWiki]]manta takyaq musuqchasqapaq willaykuna"
+}
diff --git a/MLEB/Translate/i18n/groupdescriptions/ro.json b/MLEB/Translate/i18n/groupdescriptions/ro.json
new file mode 100644
index 00000000..60c75d76
--- /dev/null
+++ b/MLEB/Translate/i18n/groupdescriptions/ro.json
@@ -0,0 +1,41 @@
+{
+ "@metadata": {
+ "authors": [
+ "Minisarm",
+ "Ion"
+ ]
+ },
+ "bw-desc-freecol": "[[Translating:FreeCol|FreeCol]] este un joc de strategie de tip ''turn-based''",
+ "bw-desc-fudforum": "[[Translating:FUDforum|FUDforum]] este un software bazat pe web dedicat forumurilor de discuții",
+ "bw-desc-mantisbt": "[[Translating:MantisBT|MantisBT]] este un urmăritor de erori bazat pe web",
+ "bw-desc-openstreetmap": "Toate mesajele asociate cu [[Translating:OpenStreetMap|OpenStreetMap]]",
+ "bw-desc-osm-site": "[[Translating:OpenStreetMap|OpenStreetMap]] este o hartă a lumii care poate fi liber modificată",
+ "bw-desc-wikiblame": "[[Translating:WikiBlame|WikiBlame]] este capabil să găsească rapid autorii unei pagini dintr-un site wiki susținut de Wikimedia",
+ "translate-group-desc-collection": "Grup de mesaje meta conținând toate mesajele extensiei [https://www.mediawiki.org/wiki/Extension:Collection Collection] a MediaWiki",
+ "translate-group-desc-eol": "Un grup de mesaje pentru [[Translating:EOL|Encyclopedia of Life]]",
+ "translate-group-desc-europeana": "[[Translating:Europeana|Europeana]] permite oamenilor să exploreze resursele digitale ale culturii europene",
+ "translate-group-desc-flaggedrevs": "Grup de mesaje meta conținând toate mesajele extensiei [https://www.mediawiki.org/wiki/Extension:FlaggedRevs FlaggedRevs] a MediaWiki",
+ "translate-group-desc-ihris": "Un grup de mesaje pentru [[Translating:iHRIS|iHRIS]]",
+ "translate-group-desc-kiwix": "Un grup de mesaj pentru [[Translating:Kiwix|Kiwix]]",
+ "translate-group-desc-mantisbt-plugin-core": "Un plugin-nucleu pentru [[Translating:MantisBT|MantisBT]]",
+ "translate-group-desc-mediawiki-core-branch": "Mesaje pentru una din versiunile stabile ale [[Translating:MediaWiki|MediaWiki]]",
+ "translate-group-desc-mediawikicore": "Acest grup de mesaje conține mesajele utilizate în actuala versiune alpha a software-ului [[Translating:MediaWiki|MediaWiki]] ({{CURRENTVERSION}})",
+ "translate-group-desc-mediawikiextensions": "Grup de mesaje meta conținând toate mesajele extensiilor sotware-ului [[Translating:MediaWiki|MediaWiki]] suportate",
+ "translate-group-desc-mediawikimostused": "Acest grup de mesaje conține [https://translatewiki.net/wiki/Most_often_used_messages_in_MediaWiki cele mai utilizate 500 de mesaje] de [[Translating:MediaWiki|MediaWiki]]",
+ "translate-group-desc-mifos": "[[Translating:Mifos|Mifos]] este un sistem pentru microfinanțare de administrare a informației",
+ "translate-group-desc-nocc": "[[Translating:NOCC|NOCC]] este un client de poștă electronică",
+ "translate-group-desc-nodesc": "Nu există descriere pentru acest grup de mesaje",
+ "translate-group-desc-openimages-all": "Aceste mesaje sunt componente ale proiectului [[Translating:Open Images|Open Images]]",
+ "translate-group-desc-potlatch2": "[[Translating:OpenStreetMap|Potlatch2]] este un editor OpenStreetMap bazat în Flash",
+ "translate-group-desc-pywikipedia": "[[Translating:Pywikibot|Pywikibot]] este o colecție de unelte utilizate la modificarea paginilor din Wikipedia",
+ "translate-group-desc-readerfeedback": "Grup de mesaje meta conținând toate mesajele extensiei [https://www.mediawiki.org/wiki/Extension:ReaderFeedback ReaderFeedback] a MediaWiki",
+ "translate-group-desc-semantic": "Grup de mesaje meta care conține toate mesajele tuturor extensiilor [https://semantic-mediawiki.org/ Semantic MediaWiki]",
+ "translate-group-desc-translatablepages": "Toate paginile traductibile",
+ "translate-group-desc-translate": "Grup de mesaje meta conținând toate mesajele extensiei [https://www.mediawiki.org/wiki/Extension:Translate Translate] a MediaWiki",
+ "translate-group-desc-tsint": "Un grup de mesaje pentru [[Translating:Intuition|Intuition]], sistemul i18n dedicat uneltelor [//tools.wmflabs.org/ Wikimedia Tool Labs] (<span class=\"plainlinks\">[[Translating talk:Intuition|suport]]</span>)",
+ "translate-group-desc-waymarked-trails": "[[Translating:Waymarked Trails|Waymarked Trails]] este un serviciu care afișează itinerarii pentru drumeții, ciclism, ciclism montan și patinaj cu role în jurul lumii. Utilizează licența GNU GPL",
+ "translate-group-desc-wikiaextensions": "Grup de mesaje meta conținând toate mesajele extensiilor susținute de MediaWiki și utilizate de [http://www.wikia.com Wikia]",
+ "translate-group-desc-wikimediaextensions": "Grup de mesaje meta conținând toate mesajele extensiilor susținute de MediaWiki și utilizate de [https://wikimediafoundation.org/ Fundația Wikimedia]",
+ "translate-group-desc-wikimediaextensions-main": "Grup de mesaje meta conținând toate mesajele extensiilor susținute de MediaWiki și solicitate a fi traduse pentru [https://meta.wikimedia.org/wiki/Language_committee Comitetul lingvistic] al Wikimedia",
+ "translategroupdescriptions-desc": "Descrieri ale grupului de mesaje pentru produse susținute de extensia [https://mediawiki.org/wiki/Extension:Translate Translate]"
+}
diff --git a/MLEB/Translate/i18n/groupdescriptions/roa-tara.json b/MLEB/Translate/i18n/groupdescriptions/roa-tara.json
new file mode 100644
index 00000000..65a4ed2f
--- /dev/null
+++ b/MLEB/Translate/i18n/groupdescriptions/roa-tara.json
@@ -0,0 +1,20 @@
+{
+ "@metadata": {
+ "authors": [
+ "Joetaras"
+ ]
+ },
+ "translate-group-desc-collection": "Meta gruppe de messàgge tène tutte le messàgge pe l'estenzione de MediaUicchi [https://www.mediawiki.org/wiki/Extension:Collection Collezzione]",
+ "translate-group-desc-eol": "'Nu gruppe de messàgge pa [[Translating:EOL|'Ngrclopedije d'a Vite]]",
+ "translate-group-desc-flaggedrevs": "Meta gruppe de messàgge tène tutte le messàgge pe l'estenzione de MediaUicchi [https://www.mediawiki.org/wiki/Extension:FlaggedRevs FlaggedRevs]",
+ "translate-group-desc-ihris": "'Nu gruppe de messàgge pe [[Translating:iHRIS|iHRIS]]",
+ "translate-group-desc-kiwix": "'Nu gruppe de messàgge pe [[Translating:Kiwix|Kiwix]]",
+ "translate-group-desc-mediawikicore": "Stu gruppe de messàgge tène le messàgge ausate jndr'à versione alfa de mò de [[Translating:MediaWiki|MediaUicchi]] ({{CURRENTVERSION}})",
+ "translate-group-desc-mediawikiextensions": "Meta gruppe de messàgge tène tutte le messàgge pe le estenziune supportate pe [[Translating:MediaWiki|MediaUicchi]]",
+ "translate-group-desc-nodesc": "Nisciune descrizione jè disponibbile pe stu gruppe de messàgge",
+ "translate-group-desc-pywikipedia": "[[Translating:Pywikibot|Pywikibot]] jè 'na collezzione de struminde pe cangià Uicchipèdie",
+ "translate-group-desc-readerfeedback": "Meta gruppe de messàgge tène tutte le messàgge pe l'estenzione de MediaUicchi [https://www.mediawiki.org/wiki/Extension:ReaderFeedback ReaderFeedback]",
+ "translate-group-desc-semantic": "Meta gruppe de messàgge tène tutte le messàgge pe tutte le estenziune [https://semantic-mediawiki.org/ Semandiche MediaUicchi]",
+ "translate-group-desc-translatablepages": "Tutte le pàggene traducibbele",
+ "translategroupdescriptions-desc": "Descriziune de le gruppe de messàgge pe le prodotte supportate l'estenzione de da[https://mediawiki.org/wiki/Extension:Translate Traduzione]"
+}
diff --git a/MLEB/Translate/i18n/groupdescriptions/ru.json b/MLEB/Translate/i18n/groupdescriptions/ru.json
new file mode 100644
index 00000000..79b267a0
--- /dev/null
+++ b/MLEB/Translate/i18n/groupdescriptions/ru.json
@@ -0,0 +1,69 @@
+{
+ "@metadata": {
+ "authors": [
+ "Eleferen",
+ "Ferrer",
+ "Kaganer",
+ "Lockal",
+ "MaxSem",
+ "Okras",
+ "Rubin",
+ "Александр Сигачёв",
+ "Rubin16",
+ "Lokal Profil"
+ ]
+ },
+ "bw-desc-freecol": "Прежде чем переводить FreeCol на ваш язык, пожалуйста, прочтите [[Translating:FreeCol]]. Freecol использует лицензию GPL.",
+ "bw-desc-fudforum": "[http://fudforum.org/ FUDforum] — веб-форум, написанный на PHP.",
+ "bw-desc-mantisbt": "[[Translating:MantisBT|MantisBT]] — свободная веб-система отслеживания ошибок.",
+ "bw-desc-openstreetmap": "Группа сообщений для всех сообщений [[Translating:OpenStreetMap|OpenStreetMap]]",
+ "bw-desc-osm-site": "Эта группа сообщений содержит сообщения пользовательского интерфейса [[Translating:Open Street Map|Open Street Map]].",
+ "bw-desc-wikiblame": "[http://wikipedia.ramselehof.de/wikiblame.php Wikiblame] позволяет быстро найти авторов страницы в проектах Викимедиа.",
+ "translate-group-desc-blockly": "Группа сообщений для [[Translating:Blockly|Blockly]]",
+ "translate-group-desc-bluespice": "Мета-группа сообщений, содержащая все сообщения расширений MediaWiki [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:BlueSpice Blue Spice]",
+ "translate-group-desc-collection": "Мета-группа сообщений, содержащая все сообщения расширения MediaWiki [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Collection Collection]",
+ "translate-group-desc-eol": "Группа сообщений для [[Translating:EOL|Энциклопедия жизни]]",
+ "translate-group-desc-etherpad-lite": "[[Translating:Etherpad lite|Etherpad lite]] — это редактор, предназначенный для совместной работы в реальном времени",
+ "translate-group-desc-europeana": "[[Translating:Europeana|Europeana 1914—1918]] — это веб-сайт с историями, фильмами и историческими материалами о Первой мировой войне",
+ "translate-group-desc-flaggedrevs": "Мета-группа сообщений, содержащая все сообщения расширения MediaWiki [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:FlaggedRevs FlaggedRevs]",
+ "translate-group-desc-fuel": "[[Translating:FUEL|FUEL]] приносит больше согласованности при переводе программного обеспечения",
+ "translate-group-desc-huggle": "[[Translating:Huggle|Huggle]] — это быстрое браузерное приложение для сравнения, помогающее в борьбе с вандализмом в проектах Викимедиа",
+ "translate-group-desc-ihris": "Группа сообщений для [[Translating:iHRIS|iHRIS]]",
+ "translate-group-desc-kiwix": "Группа сообщений для [[Translating:Kiwix|Kiwix]]",
+ "translate-group-desc-mantisbt-plugin-core": "Основной плагин для [[Translating:MantisBT|MantisBT]]",
+ "translate-group-desc-mathjax": "[[Translating:MathJax|MathJax]] — это кросс-браузерная JavaScript-библиотека, которая отображает математические обозначения в веб-браузерах",
+ "translate-group-desc-mediawiki-core-branch": "Сообщения для стабильной версии [[Translating:MediaWiki|MediaWiki]]",
+ "translate-group-desc-mediawikiapi": "Эта группа сообщений содержит сообщения, используемые в Action API для текущей альфа-версии [[Translating:MediaWiki|MediaWiki]] ({{CURRENTVERSION}})",
+ "translate-group-desc-mediawikicore": "Эта группа сообщений содержит сообщения, используемые в текущей альфа-версии MediaWiki ({{CURRENTVERSION}})",
+ "translate-group-desc-mediawikiextensions": "Мета-группа сообщений, содержащая все сообщения поддерживаемых расширений MediaWiki",
+ "translate-group-desc-mediawikiskins": "Мета-группа сообщений, содержащая все сообщения поддерживаемых тем оформления для [[Translating:MediaWiki|MediaWiki]]",
+ "translate-group-desc-mediawikimostused": "Эта группа сообщений содержит [https://translatewiki.net/wiki/Most_often_used_messages_in_MediaWiki 500 наиболее часто используемых сообщений] в [[Translating:MediaWiki|MediaWiki]]",
+ "translate-group-desc-mifos": "[[Translating:Mifos|Mifos]] — это система управления информацией в области микрофинансов",
+ "translate-group-desc-nfcring-control": "[[Translating:NFC_Ring_Control|NFC Ring Control]] — это мобильное приложение для взаимодействия с NFC-метками",
+ "translate-group-desc-nocc": "[http://nocc.sourceforge.net NOCC] — почтовый веб-клиент, написанный на PHP. Пожалуйста, сообщайте о любых недостатках на [[Support|странице поддержки]].",
+ "translate-group-desc-nodesc": "Для этой группы сообщений не доступно описание.",
+ "translate-group-desc-openimages-all": "Эти сообщения относятся к проекту [[Translating:Open Images|Open Images]]",
+ "translate-group-desc-potlatch2": "[[Translating:OpenStreetMap|Potlatch2]] — это основанный на Flash редактор OpenStreetMap",
+ "translate-group-desc-pywikipedia": "[[Translating:Pywikibot|Pywikibot]] — набор инструментов для редактирования Википедии",
+ "translate-group-desc-readerfeedback": "Мета-группа сообщений, содержащая все сообщения расширения MediaWiki [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:ReaderFeedback ReaderFeedback]",
+ "translate-group-desc-semantic": "Мета-группа сообщений, содержащая все сообщения для всех расширений [https://semantic-mediawiki.org/ Semantic MediaWiki]",
+ "translate-group-desc-translatablepages": "Все страницы для перевода",
+ "translate-group-desc-translate": "Мета-группа сообщений, содержащая все сообщения расширения MediaWiki [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Translate Translate]; пожалуйста, ознакомьтесь с его [https://www.mediawiki.org/wiki/Help:Extension:Translate/Glossary словарём терминов]",
+ "translate-group-desc-tsint": "Группа сообщений для [[Translating:Intuition|Intuition]], системы интернационализации [//tools.wmflabs.org/ Wikimedia Tool Labs] (<span class=\"plainlinks\">[[Translating talk:Intuition|поддержка]]</span>)",
+ "translate-group-desc-universallanguageselector": "Группа мета-сообщений, содержащая все сообщения для MediaWiki-расширения [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:UniversalLanguageSelector UniversalLanguageSelector] (ULS) и связанных с ними программных пакетов",
+ "translate-group-desc-vicuna": "[[Translating:VicuñaUploader|VicuñaUploader]] — это средство для загрузки файлов на Викисклад и другие проекты Викимедиа",
+ "translate-group-desc-visualeditor": "Группа мета-сообщений, содержащая все сообщения для MediaWiki-расширения [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:VisualEditor VisualEditor] и связанных с ними программных пакетов",
+ "translate-group-desc-waymarked-trails": "[[Translating:Waymarked Trails|Waymarked Trails]] — сервис, показывающий маршруты и места по всему миру, подходящие для пеших прогулок, велоспорта, поездок на горном велосипеде и катания на роликовых коньках. Использует лицензию GNU GPL.",
+ "translate-group-desc-waymarked-trails-help": "Справочные страницы сайта Waymarked Trails: http://waymarkedtrails.org/help/about",
+ "translate-group-desc-wikiaextensions": "Мета-группа сообщений, содержащая все сообщения поддерживаемых расширений MediaWiki, используемых [http://www.wikia.com Wikia]",
+ "translate-group-desc-wikimania-scholarships-app": "Группа сообщений для [https://scholarships.wikimedia.org/apply заявок Wikimania Scholarship]",
+ "translate-group-desc-wikimedia-mobile": "Агрегированная группа, содержащая сообщения всех мобильных приложений для проектов Фонда Викимедиа",
+ "translate-group-desc-wikimedia-mobile-wikipedia": "[[Translating:WikipediaMobile|WikipediaMobile]] — кросспатформенное приложение для мобильных устройств и планшетов, обеспечивающее чтение и редактирование Википедии",
+ "translate-group-desc-wikimedia-mobile-wikipedia-android": "[[Translating:WikipediaMobile|Википедия для Android]] — это Android-версия мобильного приложения «Википедия»",
+ "translate-group-desc-wikimedia-mobile-wikipedia-ios": "[[Translating:WikipediaMobile|Википедия для iOS]] — это iOS-версия мобильного приложения «Википедия»",
+ "translate-group-desc-wikimedia-mobile-wikisource": "[[Translating:WikisourceMobile|WikisourceMobile]] — кросспатформенное приложение для мобильных устройств и планшетов, обеспечивающее чтение и редактирование Викитеки",
+ "translate-group-desc-wikimedia-mobile-wiktionary": "[[Translating:WiktionaryMobile|WiktionaryMobile]] — кросспатформенное приложение для мобильных устройств и планшетов, обеспечивающее чтение и редактирование Викисловаря",
+ "translate-group-desc-wikimediaextensions": "Мета-группа сообщений, содержащая все сообщения поддерживаемых расширений MediaWiki, используемых [https://wikimediafoundation.org/ Фондом Викимедиа]",
+ "translate-group-desc-wikimediaextensions-main": "Мета-группа сообщений, содержащая все сообщения расширений MediaWiki, которые требуется перевести для [https://meta.wikimedia.org/wiki/Special:MyLanguage/Language_committee Языкового комитета] Викимедии",
+ "translategroupdescriptions-desc": "Описания групп сообщений для продуктов, поддерживаемых расширением [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Translate Translate]"
+}
diff --git a/MLEB/Translate/i18n/groupdescriptions/rue.json b/MLEB/Translate/i18n/groupdescriptions/rue.json
new file mode 100644
index 00000000..7131cb75
--- /dev/null
+++ b/MLEB/Translate/i18n/groupdescriptions/rue.json
@@ -0,0 +1,18 @@
+{
+ "@metadata": {
+ "authors": [
+ "Gazeb"
+ ]
+ },
+ "translate-group-desc-collection": "Тота метаґрупа овсягує повідомлня росшырїня [https://www.mediawiki.org/wiki/Extension:Collection Collection]",
+ "translate-group-desc-flaggedrevs": "Тота метаґрупа обсягує повідомлїня росшырїня [https://www.mediawiki.org/wiki/Extension:FlaggedRevs FlaggedRevs]",
+ "translate-group-desc-mediawikicore": "Тота ґрупа повідомлїнь обсягує повідомлїня хоснованы в сучасній алфаверзії alfaverzi MediaWiki ({{CURRENTVERSION}})",
+ "translate-group-desc-mediawikiextensions": "Тота метаґрупа обсягує повідомлїня вшыткых підпорованых росшырїнь [[Translating:MediaWiki|MediaWiki]]",
+ "translate-group-desc-mediawikimostused": "Тота ґрупа повідомлїнь обсягує [https://translatewiki.net/wiki/Most_often_used_messages_in_MediaWiki 500 найхоснованїшых повідомлїнь] в MediaWiki",
+ "translate-group-desc-nodesc": "Тота ґрупа повідомлїнь не мать попис",
+ "translate-group-desc-readerfeedback": "Тота метаґрупа овсягує повідомлня росшырїня [https://www.mediawiki.org/wiki/Extension:ReaderFeedback ReaderFeedback]",
+ "translate-group-desc-semantic": "Тота метаґрупа обсягує вшыткы повідомлїня вшыткых росшырїнь [https://semantic-mediawiki.org/ Semantic MediaWiki]",
+ "translate-group-desc-translate": "Тота метаґрупа обсягує повідомлїня росшырїня [https://www.mediawiki.org/wiki/Extension:Translate Translate]",
+ "translate-group-desc-wikiaextensions": "Тота метаґрупа обсягує повідомлїня MediaWiki-росшырїнь, котры ся хоснують на [http://www.wikia.com Wikia]",
+ "translategroupdescriptions-desc": "Пописы ґруп повідомлїн продкуктів підпророваных росшырїнём [https://mediawiki.org/wiki/Extension:Translate Translate]"
+}
diff --git a/MLEB/Translate/i18n/groupdescriptions/sco.json b/MLEB/Translate/i18n/groupdescriptions/sco.json
new file mode 100644
index 00000000..102ed6a4
--- /dev/null
+++ b/MLEB/Translate/i18n/groupdescriptions/sco.json
@@ -0,0 +1,55 @@
+{
+ "@metadata": {
+ "authors": [
+ "John Reid",
+ "Pkra"
+ ]
+ },
+ "bw-desc-freecol": "[[Translating:FreeCol|FreeCol]] is ae turn-based strategie game",
+ "bw-desc-fudforum": "[[Translating:FUDforum|FUDforum]] is wab-based discussion forum saffware",
+ "bw-desc-mantisbt": "[[Translating:MantisBT|MantisBT]] is wab-based proablem trackin saffware",
+ "bw-desc-openstreetmap": "Aw messages relatit til [[Translating:OpenStreetMap|ApenStreetMap]]",
+ "bw-desc-osm-site": "[[Translating:OpenStreetMap|OpenStreetMap]] is aen eeditable map o the hale planet",
+ "bw-desc-wikiblame": "[[Translating:WikiBlame|WikiBlame]] is quicklie able tae fynd the writers o ae pairt o ae page in ae Wikimedia wiki",
+ "translate-group-desc-blockly": "Ae message groop fer [[Translating:Blockly|Blockly]]",
+ "translate-group-desc-bluespice": "Meta message groop containin aw o the messages fer the MediaWiki [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:BlueSpice Blue Spice] extensions",
+ "translate-group-desc-collection": "Meta message groop containin aw messages fer the MediaWiki extension [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Collection Collection]",
+ "translate-group-desc-eol": "Ae message groop fer [[Translating:EOL|Encyclypædia o Life]]",
+ "translate-group-desc-etherpad-lite": "[[Translating:Etherpad lite|Etherpad lite]] is ae reallie-real time collaberateeve eediter",
+ "translate-group-desc-flaggedrevs": "Meta message groop containin aw messages fer the MediaWiki extension [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:FlaggedRevs FlaggedRevs]",
+ "translate-group-desc-fuel": "[[Translating:FUEL|FUEL]] brings mair conseestancie til saffware owersetin",
+ "translate-group-desc-ihris": "Ae message groop fer [[Translating:iHRIS|iHRIS]]",
+ "translate-group-desc-kiwix": "Ae message groop fer [[Translating:Kiwix|Kiwix]]",
+ "translate-group-desc-mantisbt-plugin-core": "Ae core plugin fer [[Translating:MantisBT|MantisBT]]",
+ "translate-group-desc-mathjax": "[[Translating:MathJax|MathJax]] is ae cross-brouser JavaScript librie that displeys mathemateecal notation in wab brousers",
+ "translate-group-desc-mediawiki-core-branch": "Messages fer ae stable version o [[Translating:MediaWiki|MediaWiki]]",
+ "translate-group-desc-mediawikicore": "This message groop contains the messages uised in the Nou alpha version o [[Translating:MediaWiki|MediaWiki]] ({{CURRENTVERSION}})",
+ "translate-group-desc-mediawikiextensions": "Meta message groop containin aw messages fer supported extensions fer [[Translating:MediaWiki|MediaWiki]]",
+ "translate-group-desc-mediawikimostused": "This message groop contains the [https://translatewiki.net/wiki/Most_often_used_messages_in_MediaWiki 500 maist aften uised messages] in [[Translating:MediaWiki|MediaWiki]]",
+ "translate-group-desc-mifos": "[[Translating:Mifos|Mifos]] is ae management information system fer micræfinance",
+ "translate-group-desc-nodesc": "Naw descreeption is available fer this message groop",
+ "translate-group-desc-openimages-all": "Thir messages ar pairt o the [[Translating:Open Images|Apen Eemages]] waurk",
+ "translate-group-desc-potlatch2": "[[Translating:OpenStreetMap|Potlatch2]] is ae Flash-based ApenStreetMap eediter",
+ "translate-group-desc-pywikipedia": "[[Translating:Pywikibot|Pywikibot]] is ae collection o tuils fer tae eedit Wikipædia",
+ "translate-group-desc-readerfeedback": "Meta message groop containin aw messages fer the MediaWiki extension [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:ReaderFeedback ReaderFeedback]",
+ "translate-group-desc-semantic": "Meta message groop containin aw messages fer aw [https://semantic-mediawiki.org/ Semantic MediaWiki] extensions",
+ "translate-group-desc-translatablepages": "Aw owersetable pages",
+ "translate-group-desc-translate": "Meta message groop containin aw messages fer the MediaWiki extension [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Translate Owerset]; please familiarise yersel wi its [https://www.mediawiki.org/wiki/Help:Extension:Translate/Glossary glossarie]",
+ "translate-group-desc-tsint": "Ae message groop fer [[Translating:Intuition|Intuition]], the i18n system fer [//tools.wmflabs.org/ Wikimedia Tool Labs] tuils (<span class=\"plainlinks\">[[Translating talk:Intuition|support]]</span>)",
+ "translate-group-desc-universallanguageselector": "Meta message groop containin aw messages fer the MediaWiki extension [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:UniversalLanguageSelector UniversalLanguageSelector] (ULS) n sib saffware packages",
+ "translate-group-desc-vicuna": "[[Translating:VicuñaUploader|VicuñaUplaider]] is ae tuil uised tae uplaid files til Wikimedia Commyns n ither Wikimedia waurks",
+ "translate-group-desc-visualeditor": "Meta message groop containin aw messages fer the MediaWiki extension [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:VisualEditor VeesualEediter] n sib saffware packages",
+ "translate-group-desc-waymarked-trails": "[[Translating:Waymarked Trails|Weymaurkt Trails]] is ae service shawin routes fer hikin, cyclin, moontain bikin n inline skatin aw ower the planet. It uises the GNU GPL license.",
+ "translate-group-desc-waymarked-trails-help": "The heelp pages o the Weymaurked Trails wab sites: http://waymarkedtrails.org/help/about",
+ "translate-group-desc-wikiaextensions": "Meta message groop containin aw messages fer supported MediaWiki extensions uised bi [http://www.wikia.com Wikia]",
+ "translate-group-desc-wikimania-scholarships-app": "Message groop fer the [https://scholarships.wikimedia.org/apply Wikimania Scholarship appleecation]",
+ "translate-group-desc-wikimedia-mobile": "Aggregated message groop containin mobile appleecations fer Wikimedia waurks",
+ "translate-group-desc-wikimedia-mobile-wikipedia": "[[Translating:WikipediaMobile|WikipædiaMobile]] is ae cross-platform mobile n tablet appleecation fer readin n contreebutin til Wikipædia",
+ "translate-group-desc-wikimedia-mobile-wikipedia-android": "[[Translating:WikipediaMobile|Wikipædia Android]] is the Android-speceefic version o the Wikipædia mobile app",
+ "translate-group-desc-wikimedia-mobile-wikipedia-ios": "[[Translating:WikipediaMobile|Wikipædia iOS]] is the iOS-speceefic version o the Wikipedia mobile app",
+ "translate-group-desc-wikimedia-mobile-wikisource": "[[Translating:WikisourceMobile|WikisoorceMobile]] is ae cross-platform mobile n tablet appleecation fer readin n contreebutin til Wikisoorce",
+ "translate-group-desc-wikimedia-mobile-wiktionary": "[[Translating:WiktionaryMobile|WiktionairMobile]] is ae cross-platform mobile n tablet appleecation fer readin n contreebutin til Wiktionair",
+ "translate-group-desc-wikimediaextensions": "Meta message groop containin aw messages fer supportit MediaWiki extensions uised bi the [https://wikimediafoundation.org/ Wikimedia Foundation]",
+ "translate-group-desc-wikimediaextensions-main": "Meta message groop containin aw messages fer supportit MediaWiki extensions needit tae be owerset fer the Wikimedia [https://meta.wikimedia.org/wiki/Special:MyLanguage/Language_committee Leid committee]",
+ "translategroupdescriptions-desc": "Message groop descreeptions fer products supportit bi the [https://mediawiki.org/wiki/Special:MyLanguage/Extension:Translate Owerset] extension"
+}
diff --git a/MLEB/Translate/i18n/groupdescriptions/si.json b/MLEB/Translate/i18n/groupdescriptions/si.json
new file mode 100644
index 00000000..881e81e1
--- /dev/null
+++ b/MLEB/Translate/i18n/groupdescriptions/si.json
@@ -0,0 +1,17 @@
+{
+ "@metadata": {
+ "authors": [
+ "පසිඳු කාවින්ද"
+ ]
+ },
+ "bw-desc-freecol": "[[Translating:FreeCol|FreeCol]] යනු හැරීම්-පාදක උපයඥාන ක්‍රීඩාවකි",
+ "bw-desc-fudforum": "[[Translating:FUDforum|FUDforum]] යනු ජාලය-පාදක කොටගත් සාකච්ඡා විනිශ්චයශාලා මෘදුකාංගයකි",
+ "bw-desc-mantisbt": "[[Translating:MantisBT|MantisBT]] යනු ජාලය-පාදක කොටගත් නිකුතු ඉලියීම් මෘදුකාංගයකි",
+ "translate-group-desc-eol": "[[Translating:EOL|Encyclopedia of Life]] සඳහා පණිවුඩ සමූහය",
+ "translate-group-desc-ihris": "[[Translating:iHRIS|iHRIS]] සඳහා පණිවුඩ සමූහය",
+ "translate-group-desc-kiwix": "[[Translating:Kiwix|Kiwix]] සඳහා පණිවුඩ සමූහය",
+ "translate-group-desc-mantisbt-plugin-core": "[[Translating:MantisBT|MantisBT]] සඳහා මධ්‍යය ප්ලගීනයක්",
+ "translate-group-desc-mediawiki-core-branch": "[[Translating:MediaWiki|මාධ්‍යවිකි]] හී ස්ථාවර අනුවාදය සඳහා පණිවුඩ",
+ "translate-group-desc-nodesc": "මෙම පණිවුඩ කාණ්ඩය සඳහා කිසිදු විස්තරයක් ලබා ගත නොහැක",
+ "translate-group-desc-translatablepages": "පරිවර්තනය කල හැකි සියළුම පිටු"
+}
diff --git a/MLEB/Translate/i18n/groupdescriptions/sk.json b/MLEB/Translate/i18n/groupdescriptions/sk.json
new file mode 100644
index 00000000..1f92558e
--- /dev/null
+++ b/MLEB/Translate/i18n/groupdescriptions/sk.json
@@ -0,0 +1,24 @@
+{
+ "@metadata": {
+ "authors": [
+ "Helix84",
+ "Rudko",
+ "Lokal Profil"
+ ]
+ },
+ "bw-desc-freecol": "Pred prekladaním FreeCol do vášho jazyka si prosím prečítajte [[Translating:FreeCol]]. Freecol používa licenciu GPL.",
+ "bw-desc-fudforum": "[http://fudforum.org/ FUDforum], webové fórum napísané v PHP.",
+ "bw-desc-mantisbt": "[[Translating:MantisBT|MantisBT]] je slobodný webový systém na sledovanie chýb. Akékoľvek problémy hláste na [[Support|stránke Podpory]].",
+ "bw-desc-osm-site": "Táto skupina správ obsahuje správy rozhrania pre [[Translating:Open Street Map|Open Street Map]].",
+ "bw-desc-wikiblame": "[http://wikipedia.ramselehof.de/wikiblame.php Wikiblame] dokáže rýchlo nájsť autorov stránky vo wiki projektov Wikimedia.",
+ "translate-group-desc-collection": "Metaskupina správ obsahujúca všetky správy rozšírenia MediaWiki [https://www.mediawiki.org/wiki/Extension:Collection Kolekcia]",
+ "translate-group-desc-flaggedrevs": "Metaskupina správ obsahujúca všetky správy rozšírenia MediaWiki [https://www.mediawiki.org/wiki/Extension:FlaggedRevs FlaggedRevs]",
+ "translate-group-desc-mediawikicore": "Táto skupina správ obsahuje správy použité v aktuálnej alfa verzii MediaWiki ({{CURRENTVERSION}})",
+ "translate-group-desc-mediawikiextensions": "Metaskupina správ obsahujúca všetky správy podporovaných rozšírení MediaWiki",
+ "translate-group-desc-mediawikimostused": "Táto skupina správ obsahuje [https://translatewiki.net/wiki/Most_often_used_messages_in_MediaWiki 500 najpoužívanejších správ] v MediaWiki",
+ "translate-group-desc-nocc": "[http://nocc.sourceforge.net NOCC] je webmailový klient napísaný v PHP. Akékoľvek problémy hláste na [[Support|stránke Podpory]].",
+ "translate-group-desc-readerfeedback": "Metaskupina správ obsahujúca všetky správy rozšírenia MediaWiki [https://www.mediawiki.org/wiki/Extension:ReaderFeedback ReaderFeedback]",
+ "translate-group-desc-translate": "Metaskupina správ obsahujúca všetky správy rozšírenia MediaWiki [https://www.mediawiki.org/wiki/Extension:Translate Translate]",
+ "translate-group-desc-wikiaextensions": "Metaskupina správ obsahujúca všetky správy rozšírenia MediaWiki, ktoré používa [http://www.wikia.com Wikia]",
+ "translate-group-desc-wikimediaextensions": "Metaskupina správ obsahujúca všetky správy rozšírenia MediaWiki, ktoré používa [https://wikimediafoundation.org/ Wikimedia Foundation]"
+}
diff --git a/MLEB/Translate/i18n/groupdescriptions/sl.json b/MLEB/Translate/i18n/groupdescriptions/sl.json
new file mode 100644
index 00000000..ca6649b4
--- /dev/null
+++ b/MLEB/Translate/i18n/groupdescriptions/sl.json
@@ -0,0 +1,50 @@
+{
+ "@metadata": {
+ "authors": [
+ "Dbc334",
+ "Eleassar",
+ "Lokal Profil"
+ ]
+ },
+ "bw-desc-freecol": "Pred prevajanjem FreeCol v svoj jezik si, prosimo, preberite [[Translating:FreeCol]]. Freecol uporablja licenco GPL.",
+ "bw-desc-fudforum": "[http://fudforum.org/ FUDforum], spletni forum napisan v PHP.",
+ "bw-desc-mantisbt": "[[Translating:MantisBT|MantisBT]] je spletni sistem za sledenje hroščem",
+ "bw-desc-openstreetmap": "Skupina sporočil za vsa sporočila [[Translating:OpenStreetMap|OpenStreetMap]]",
+ "bw-desc-osm-site": "Ta skupina sporočil zajema sporočila vmesnika [[Translating:Open Street Map|Open Street Map]].\nOglejte si [http://unicode.org/repos/cldr-tmp/trunk/diff/supplemental/language_plural_rules.html#{{UILANGCODE}} stran Unicode CLDR za razlago množinskih ključev].",
+ "bw-desc-wikiblame": "[http://wikipedia.ramselehof.de/wikiblame.php Wikiblame] je zmožen hitro najti avtorje strani na wikiju Wikimedije.",
+ "translate-group-desc-blockly": "Skupina sporočil za [[Translating:Blockly|Blockly]]",
+ "translate-group-desc-collection": "Krovna skupina sporočil, ki vsebuje vsa sporočila razširitve MediaWiki [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Collection Collection]",
+ "translate-group-desc-eol": "Skupina sporočil za [[Translating:EOL|Encyclopedia of Life]]",
+ "translate-group-desc-etherpad-lite": "[[Translating:Etherpad lite|Etherpad lite]] je resnično realnočasovni sodelovalni urejevalnik",
+ "translate-group-desc-europeana": "[[Translating:Europeana|Europeana 1914–1918]] je spletna stran z zgodbami, filmi in zgodovinskimi viri o I. svetovni vojni",
+ "translate-group-desc-flaggedrevs": "Krovna skupina sporočil, ki vsebuje vsa sporočila razširitve MediaWiki [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:FlaggedRevs FlaggedRevs]",
+ "translate-group-desc-fuel": "[[Translating:FUEL|FUEL]] prinaša več doslednosti pri prevodih programja",
+ "translate-group-desc-ihris": "Skupina sporočil za [[Translating:iHRIS|iHRIS]]",
+ "translate-group-desc-kiwix": "Skupina sporočil za [[Translating:Kiwix|Kiwix]]",
+ "translate-group-desc-mantisbt-plugin-core": "Jedrni vtičnik za [[Translating:MantisBT|MantisBT]]",
+ "translate-group-desc-mathjax": "[[Translating:MathJax|MathJax]] je večbrskalniška javaskriptna knjižnica za prikaz matematičnega zapisa",
+ "translate-group-desc-mediawiki-core-branch": "Sporočila ustaljene različice [[Translating:MediaWiki|MediaWiki]]",
+ "translate-group-desc-mediawikicore": "Ta skupina sporočil zajema sporočila, uporabljena v trenutni alfarazličici MediaWiki ({{CURRENTVERSION}})",
+ "translate-group-desc-mediawikiextensions": "Krovna skupina sporočil, ki vsebuje vsa sporočila podprtih razširitev MediaWiki",
+ "translate-group-desc-mediawikimostused": "Ta skupina sporočil vsebuje [https://translatewiki.net/wiki/Most_often_used_messages_in_MediaWiki 500 najbolj uporabljanih sporočil] v [[Translating:MediaWiki|MediaWiki]]",
+ "translate-group-desc-mifos": "[[Translating:Mifos|Mifos]] je vodstven informacijski sistem za mikrofinance",
+ "translate-group-desc-nocc": "[[Translating:NOCC|NOCC]] je spletni odjemalec e-pošte",
+ "translate-group-desc-nodesc": "Za to skupino sporočil opis ni na razpolago",
+ "translate-group-desc-openimages-all": "Ta sporočila so del projekta [[Translating:Open Images|Open Images]]",
+ "translate-group-desc-potlatch2": "[[Translating:OpenStreetMap|Potlatch2]] je na flashu temelječ urejevalnik OpenStreetMap",
+ "translate-group-desc-pywikipedia": "[[Translating:Pywikibot|Pywikibot]] je zbirka orodij za urejanje Wikipedije",
+ "translate-group-desc-readerfeedback": "Krovna skupina sporočil, ki vsebuje vsa sporočila razširitve MediaWiki [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:ReaderFeedback ReaderFeedback]",
+ "translate-group-desc-semantic": "Krovna skupina sporočil, ki vsebuje vsa sporočila vseh razširitev [https://semantic-mediawiki.org/ Semantičnega MediaWiki]",
+ "translate-group-desc-translatablepages": "Vse prevedljive strani",
+ "translate-group-desc-translate": "Krovna skupina sporočil, ki vsebuje vsa sporočila razširitve MediaWiki [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Translate Translate]; prosimo, seznanite se z njenim [https://www.mediawiki.org/wiki/Help:Extension:Translate/Glossary slovarjem]",
+ "translate-group-desc-tsint": "Skupina sporočil za [[Translating:Intuition|Intuicijo]], sistem i18n za orodja [//tools.wmflabs.org/ Laboratorijev za orodja Wikimedie] (<span class=\"plainlinks\">[[Translating talk:Intuition|podpora]]</span>)",
+ "translate-group-desc-vicuna": "[[Translating:VicuñaUploader|VicuñaUploader]] je orodje za nalaganje datotek na Wikimediino Zbirko in druge projekte Wikimedie",
+ "translate-group-desc-waymarked-trails": "[[Translating:Waymarked Trails|Waymarked Trails]] je storitev, ki prikazuje poti za pohodništvo, kolesarjenje, gorsko kolesarjenje in rolkanje po celem svetu. Uporablja licenco GNU GPL.",
+ "translate-group-desc-waymarked-trails-help": "Strani s pomočjo spletnih strani Waymarked Trails: http://waymarkedtrails.org/help/about",
+ "translate-group-desc-wikiaextensions": "Krovna skupina sporočil, ki vsebuje vsa sporočila podprtih razširitev MediaWiki, ki jih uporablja [http://www.wikia.com Wikia]",
+ "translate-group-desc-wikimania-scholarships-app": "Skupina sporočil za [https://scholarships.wikimedia.org/apply prošnjo za Štipendijo Wikimania]",
+ "translate-group-desc-wikimedia-mobile": "Zbirna skupina sporočil, ki vsebuje mobilne aplikacije za projekte Wikimedie",
+ "translate-group-desc-wikimediaextensions": "Krovna skupina sporočil, ki vsebuje vsa sporočila podprtih razširitev MediaWiki, ki jih uporablja [https://wikimediafoundation.org/ Fundacija Wikimedia]",
+ "translate-group-desc-wikimediaextensions-main": "Skupina sporočil Meta, ki vsebuje vsa sporočila za podprte razširitve MediaWiki, katera morajo biti prevedena za [https://meta.wikimedia.org/wiki/Special:MyLanguage/Language_committee Jezikovni odbor] Wikimedie",
+ "translategroupdescriptions-desc": "Opisi skupin sporočil izdelkov, ki jih podpira razširitev [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Translate Translate] extension"
+}
diff --git a/MLEB/Translate/i18n/groupdescriptions/sq.json b/MLEB/Translate/i18n/groupdescriptions/sq.json
new file mode 100644
index 00000000..b297448e
--- /dev/null
+++ b/MLEB/Translate/i18n/groupdescriptions/sq.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "GretaDoci"
+ ]
+ },
+ "translate-group-desc-wikimedia-mobile-wikipedia-android": "[[Përkthimit:WikipediaMobile|Wikipedia Android]] është versioni i Android-it per Wikipedia mobile app\" (2014)"
+}
diff --git a/MLEB/Translate/i18n/groupdescriptions/sr-ec.json b/MLEB/Translate/i18n/groupdescriptions/sr-ec.json
new file mode 100644
index 00000000..2046d160
--- /dev/null
+++ b/MLEB/Translate/i18n/groupdescriptions/sr-ec.json
@@ -0,0 +1,38 @@
+{
+ "@metadata": {
+ "authors": [
+ "Milicevic01",
+ "Rancher"
+ ]
+ },
+ "bw-desc-freecol": "[[Translating:FreeCol|Фрикол]] је стратешка игра",
+ "bw-desc-fudforum": "[[Translating:FUDforum|FUD-форум]] је место за расправљање о различитим темама",
+ "bw-desc-mantisbt": "[[Translating:MantisBT|MantisBT]] је систем за праћење грешака",
+ "bw-desc-openstreetmap": "[[Translating:OpenStreetMap|OpenStreetMap]] је бесплатна мапа целог света",
+ "bw-desc-osm-site": "[[Translating:OpenStreetMap|OpenStreetMap]] је бесплатна мапа целог света",
+ "bw-desc-wikiblame": "[[Translating:WikiBlame|Викиблејм]] за трен ока проналази ауторе неке странице на Викимедији",
+ "translate-group-desc-collection": "Мета група порука која садржи све поруке проширења [https://www.mediawiki.org/wiki/Extension:Collection Collection]",
+ "translate-group-desc-eol": "Група порука за [[Translating:EOL|Енциклопедију живота]]",
+ "translate-group-desc-europeana": "[[Translating:Europeana|Европеана]] омогућава људима да прегледају дигитално културно наслеђе Европе",
+ "translate-group-desc-flaggedrevs": "Мета група порука која садржи све поруке проширења [https://www.mediawiki.org/wiki/Extension:FlaggedRevs FlaggedRevs]",
+ "translate-group-desc-ihris": "Група порука за [[Translating:iHRIS|iHRIS]]",
+ "translate-group-desc-mantisbt-plugin-core": "Основно проширење за [[Translating:MantisBT|MantisBT]]",
+ "translate-group-desc-mediawiki-core-branch": "Поруке за стабилно издање [[Translating:MediaWiki|Медијавикија]]",
+ "translate-group-desc-mediawikicore": "Ова група садржи поруке које се користе у алфа издању [[Translating:MediaWiki|Медијавикија]] ({{CURRENTVERSION}})",
+ "translate-group-desc-mediawikiextensions": "Мета група порука која садржи све поруке за подржана проширења [[Translating:MediaWiki|Медијавикија]]",
+ "translate-group-desc-mediawikimostused": "Ова група садржи [https://translatewiki.net/wiki/Most_often_used_messages_in_MediaWiki петсто најчешћих порука] на [[Translating:MediaWiki|Медијавикији]]",
+ "translate-group-desc-mifos": "[[Translating:Mifos|Мифоз]] је систем за управљање подацима о микрофинансирању",
+ "translate-group-desc-nocc": "[[Translating:NOCC|NOCC]] је клијент за мрежну пошту",
+ "translate-group-desc-nodesc": "Опис није доступан за ову групу порука",
+ "translate-group-desc-openimages-all": "Ове поруке су део пројекта [[Translating:Open Images|Отворене слике]]",
+ "translate-group-desc-pywikipedia": "[[Translating:Pywikibot|Pywikibot]] је збирка алатки за уређивање Википедије",
+ "translate-group-desc-readerfeedback": "Мета група порука која садржи све поруке проширења [https://www.mediawiki.org/wiki/Extension:ReaderFeedback ReaderFeedback]",
+ "translate-group-desc-translatablepages": "Све преводиве странице",
+ "translate-group-desc-translate": "Мета група порука која садржи све поруке проширења [https://www.mediawiki.org/wiki/Extension:Translate Translate]",
+ "translate-group-desc-tsint": "Група порука за [http://toolserver.org/~krinkle/TsIntuition Тулсервер интуишон], преводилачки систем за алатке [http://toolserver.org Тулсервера] (<span class=\"plainlinks\">[[Translating talk:Toolserver|подршка]] &middot; [https://wiki.toolserver.org/view/Toolserver_Intuition технички детаљи]</span>)",
+ "translate-group-desc-wikiaextensions": "Мета група порука која садржи све поруке за подржана проширења које користи [http://www.wikia.com Викија]",
+ "translate-group-desc-wikimedia-mobile-wikipedia-ios": "[[Translating:WikipediaMobile|Википедија за iOS]] је верзија апликације Википедија за мобилни намењена систему iOS",
+ "translate-group-desc-wikimediaextensions": "Мета група порука која садржи све поруке за подржана проширења које користи [https://wikimediafoundation.org/ Задужбина Викимедија]",
+ "translate-group-desc-wikimediaextensions-main": "Мета група порука која садржи све поруке подржаних проширења Медијавикија. Поруке је потребно превести за Викимедијин [https://meta.wikimedia.org/wiki/Language_committee језички одбор]",
+ "translategroupdescriptions-desc": "Описи група порука за пројекте који су подржани од стране проширења [https://mediawiki.org/wiki/Extension:Translate Translate]"
+}
diff --git a/MLEB/Translate/i18n/groupdescriptions/sr-el.json b/MLEB/Translate/i18n/groupdescriptions/sr-el.json
new file mode 100644
index 00000000..c2c8cb84
--- /dev/null
+++ b/MLEB/Translate/i18n/groupdescriptions/sr-el.json
@@ -0,0 +1,36 @@
+{
+ "@metadata": {
+ "authors": [
+ "Rancher"
+ ]
+ },
+ "bw-desc-freecol": "[[Translating:FreeCol|Frikol]] je strateška igra",
+ "bw-desc-fudforum": "[[Translating:FUDforum|FUD-forum]] je mesto za raspravljanje o različitim temama",
+ "bw-desc-mantisbt": "[[Translating:MantisBT|MantisBT]] je sistem za praćenje grešaka",
+ "bw-desc-openstreetmap": "[[Translating:OpenStreetMap|Openstritmap]] je besplatna karta celog sveta",
+ "bw-desc-osm-site": "[[Translating:OpenStreetMap|Openstritmap]] je besplatna karta celog sveta",
+ "bw-desc-wikiblame": "[[Translating:WikiBlame|Vikiblejm]] za tren oka pronalazi autore neke stranice na Vikimediji",
+ "translate-group-desc-collection": "Meta grupa poruka koja sadrži sve poruke proširenja [https://www.mediawiki.org/wiki/Extension:Collection Collection]",
+ "translate-group-desc-eol": "Grupa poruka za [[Translating:EOL|Enciklopediju života]]",
+ "translate-group-desc-europeana": "[[Translating:Europeana|Evropeana]] omogućava ljudima da pregledaju digitalno kulturno nasleđe Evrope",
+ "translate-group-desc-flaggedrevs": "Meta grupa poruka koja sadrži sve poruke proširenja [https://www.mediawiki.org/wiki/Extension:FlaggedRevs FlaggedRevs]",
+ "translate-group-desc-ihris": "Grupa poruka za [[Translating:iHRIS|iHRIS]]",
+ "translate-group-desc-mantisbt-plugin-core": "Osnovno proširenje za [[Translating:MantisBT|MantisBT]]",
+ "translate-group-desc-mediawiki-core-branch": "Poruke za stabilno izdanje [[Translating:MediaWiki|Medijavikija]]",
+ "translate-group-desc-mediawikicore": "Ova grupa sadrži poruke koje se koriste u alfa izdanju [[Translating:MediaWiki|Medijavikija]] ({{CURRENTVERSION}})",
+ "translate-group-desc-mediawikiextensions": "Meta grupa poruka koja sadrži sve poruke za podržana proširenja [[Translating:MediaWiki|Medijavikija]]",
+ "translate-group-desc-mediawikimostused": "Ova grupa sadrži [https://translatewiki.net/wiki/Most_often_used_messages_in_MediaWiki petsto najčešćih poruka] na [[Translating:MediaWiki|Medijavikiji]]",
+ "translate-group-desc-mifos": "[[Translating:Mifos|Mifoz]] je sistem za upravljanje podacima o mikrofinansiranju",
+ "translate-group-desc-nocc": "[[Translating:NOCC|NOCC]] je klijent za mrežnu poštu",
+ "translate-group-desc-nodesc": "Opis nije dostupan za ovu grupu poruka",
+ "translate-group-desc-openimages-all": "Ove poruke su deo projekta [[Translating:Open Images|Otvorene slike]]",
+ "translate-group-desc-pywikipedia": "[[Translating:Pywikibot|Pajvikipedija]] je zbirka alatki za uređivanje Vikipedije",
+ "translate-group-desc-readerfeedback": "Meta grupa poruka koja sadrži sve poruke proširenja [https://www.mediawiki.org/wiki/Extension:ReaderFeedback ReaderFeedback]",
+ "translate-group-desc-translatablepages": "Sve prevodive stranice",
+ "translate-group-desc-translate": "Meta grupa poruka koja sadrži sve poruke proširenja [https://www.mediawiki.org/wiki/Extension:Translate Translate]",
+ "translate-group-desc-tsint": "Grupa poruka za [http://toolserver.org/~krinkle/TsIntuition Tulserver intuišon], prevodilački sistem za alatke [http://toolserver.org Tulservera] (<span class=\"plainlinks\">[[Translating talk:Toolserver|podrška]] &middot; [https://wiki.toolserver.org/view/Toolserver_Intuition tehnički detalji]</span>)",
+ "translate-group-desc-wikiaextensions": "Meta grupa poruka koja sadrži sve poruke za podržana proširenja koje koristi [http://www.wikia.com Vikija]",
+ "translate-group-desc-wikimediaextensions": "Meta grupa poruka koja sadrži sve poruke za podržana proširenja koje koristi [https://wikimediafoundation.org/ Zadužbina Vikimedija]",
+ "translate-group-desc-wikimediaextensions-main": "Meta grupa poruka koja sadrži sve poruke podržanih proširenja Medijavikija. Poruke je potrebno prevesti za Vikimedijin [https://meta.wikimedia.org/wiki/Language_committee jezički odbor]",
+ "translategroupdescriptions-desc": "Opisi grupa poruka za projekte koji su podržani od strane proširenja [https://mediawiki.org/wiki/Extension:Translate Translate]"
+}
diff --git a/MLEB/Translate/i18n/groupdescriptions/sv.json b/MLEB/Translate/i18n/groupdescriptions/sv.json
new file mode 100644
index 00000000..f06edd84
--- /dev/null
+++ b/MLEB/Translate/i18n/groupdescriptions/sv.json
@@ -0,0 +1,68 @@
+{
+ "@metadata": {
+ "authors": [
+ "Boivie",
+ "Fluff",
+ "Lokal Profil",
+ "Ozp",
+ "Per",
+ "Poxnar",
+ "Skalman",
+ "WikiPhoenix",
+ "Jopparn"
+ ]
+ },
+ "bw-desc-freecol": "Innan du översätter FreeCol till ditt språk, var god läs [[Translating:FreeCol]]. FreeCol använder GPL-licensen.",
+ "bw-desc-fudforum": "[http://fudforum.org/ FUDforum], ett webbforum skrivet i PHP.",
+ "bw-desc-mantisbt": "[[Translating:MantisBT|MantisBT]] är mjukvara för webbaserad bugspårnings.",
+ "bw-desc-openstreetmap": "Alla meddelanden som rör [[Translating:OpenStreetMap|OpenStreetMap]]",
+ "bw-desc-osm-site": "Den här gruppen av meddelanden innehåller gränssnittet för [[Translating:Open Street Map|Open Street Map]].\nSe [http://unicode.org/repos/cldr-tmp/trunk/diff/supplemental/language_plural_rules.html#{{UILANGCODE}} Unicode CLDR sida för förklaring av plural hantering].",
+ "bw-desc-wikiblame": "[http://wikipedia.ramselehof.de/wikiblame.php Wikiblame] kan snabbt hitta författarna till en sida på en Wikimedia wiki.",
+ "translate-group-desc-blockly": "En meddelandegrupp för [[Translating:Blockly|Blockly]]",
+ "translate-group-desc-bluespice": "Metagrupp med alla meddelanden för MediaWiki-tillägget [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:BlueSpice Blue Spice]",
+ "translate-group-desc-collection": "Metagrupp med alla meddelanden för MediaWiki-tillägget [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Collection Collection]",
+ "translate-group-desc-eol": "En meddelandegrupp för [[Translating:EOL|Encyclopedia of Life]]",
+ "translate-group-desc-etherpad-lite": "[[Translating:Etherpad lite|Etherpad lite]] är en kollaborativ editor i äkta-realtid",
+ "translate-group-desc-europeana": "[[Translating:Europeana|Europeana 1914-1918]] är en webbplats med berättelser, film och historiskt material om första världskriget",
+ "translate-group-desc-flaggedrevs": "Metagrupp som innehåller alla meddelanden för MediaWiki-tillägget [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:FlaggedRevs FlaggedRevs]",
+ "translate-group-desc-fuel": "[[Translating:FUEL|FUEL]] ger mer konsekvens till programvaruöversättning",
+ "translate-group-desc-huggle": "[[Translating:Huggle|Huggle]] är en snabb diff-läsarapplikation för att hantera vandalism på Wikimedia-projekt",
+ "translate-group-desc-ihris": "En meddelandegrupp för [[Translating:iHRIS|iHRIS]]",
+ "translate-group-desc-kiwix": "En meddelandegrupp för [[Translating:Kiwix|Kiwix]]",
+ "translate-group-desc-mantisbt-plugin-core": "Ett kärntillägg för [[Translating:MantisBT|MantisBT]]",
+ "translate-group-desc-mathjax": "[[Translating:MathJax|MathJax]] är ett webbläsaroberoende JavaScript bibliotek som visar matematisk notation i webbläsare",
+ "translate-group-desc-mediawiki-core-branch": "Meddelanden för en stabil version av [[Translating:MediaWiki|MediaWiki]]",
+ "translate-group-desc-mediawikiapi": "Den här gruppen av meddelanden innehåller de meddelanden som används i Action API för den nuvarande alfaversionen av [[Translating:MediaWiki|MediaWiki]] ({{CURRENTVERSION}})",
+ "translate-group-desc-mediawikicore": "Den här gruppen av meddelanden innehåller de meddelanden som används i den nuvarande alfaversionen av [[Translating:MediaWiki|MediaWiki]] ({{CURRENTVERSION}})",
+ "translate-group-desc-mediawikiextensions": "Metagrupp som innehåller alla meddelanden för tillägg som stöds av [[Translating:MediaWiki|MediaWiki]]",
+ "translate-group-desc-mediawikiskins": "Metagrupp som innehåller alla meddelanden för stödda utseenden för [[Translating:MediaWiki|MediaWiki]]",
+ "translate-group-desc-mediawikimostused": "Den här gruppen av meddelanden innehåller de [https://translatewiki.net/wiki/Most_often_used_messages_in_MediaWiki 500 mest använda meddelandena] i [[Translating:MediaWiki|MediaWiki]]",
+ "translate-group-desc-mifos": "[[Translating:Mifos|Mifos]] är ett informationshanteringsverktyg för mikrofinans",
+ "translate-group-desc-nfcring-control": "[[Translating:NFC_Ring_Control|NFC Ring Control]] är en mobilapp för interaktion med NFC-taggar",
+ "translate-group-desc-nocc": "[[Translating:NOCC|NOCC]] är en e-postklient som är skriven i PHP. Var god att rapportera några problem [[Support|här]].",
+ "translate-group-desc-nodesc": "Det finns ingen beskrivning av denna meddelandegrupp",
+ "translate-group-desc-openimages-all": "Dessa meddelanden är en del av [[Translating:Open Images|Open Images]]-projektet",
+ "translate-group-desc-potlatch2": "[[Translating:OpenStreetMap|Potlatch2]] är en Flash-baserad redigerare för OpenStreetMap",
+ "translate-group-desc-pywikipedia": "[[Translating:Pywikibot|Pywikibot]] är en samling verktyg för att redigera Wikipedia",
+ "translate-group-desc-readerfeedback": "Metagrupp som innehåller alla meddelanden för MediaWiki-tillägget [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:ReaderFeedback ReaderFeedback]",
+ "translate-group-desc-semantic": "Metameddelandegrupp som innehåller alla meddelanden för alla tillägg till [https://semantic-mediawiki.org/ Semantic MediaWiki]",
+ "translate-group-desc-translatablepages": "Alla översättningsbara sidor",
+ "translate-group-desc-translate": "Metameddelandegrupp som innehåller alla meddelanden för MediaWiki-tillägget [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Translate Translate]; var god bekanta dig med [https://www.mediawiki.org/wiki/Help:Extension:Translate/Glossary ordlistan]",
+ "translate-group-desc-tsint": "En meddelandegrupp för [[Translating:Intuition|Intuition]], i18n-systemet för verktyg till [//tools.wmflabs.org/ Wikimedia Tool Labs]-verktyg (<span class=\"plainlinks\">[[Translating talk:Intuition|support]]</span>)",
+ "translate-group-desc-universallanguageselector": "Meta meddelandegruppen som innehåller alla meddelanden för MediaWiki-tillägget [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:UniversalLanguageSelector UniversalLanguageSelector] (ULS) och relaterade programvarupaket",
+ "translate-group-desc-vicuna": "[[Translating:VicuñaUploader|VicuñaUploader]] är ett verktyg för att ladda upp filer till Wikimedia Commons och andra Wikimediaprojekt",
+ "translate-group-desc-visualeditor": "Meta meddelandegruppen som innehåller alla meddelanden för MediaWiki-tillägget [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:VisualEditor VisualEditor] och relaterade programvarupaket",
+ "translate-group-desc-waymarked-trails": "[[Translating:Waymarked Trails|Waymarked Trails]] är en service flr att visa rutter för vandring, cykling, mountainbiking och inlinesåkning runt om i världen. Den använder en GNU GPL-licens",
+ "translate-group-desc-waymarked-trails-help": "Hjälpsidorna för Waymarked Trails-webbplatsen: http://waymarkedtrails.org/help/about",
+ "translate-group-desc-wikiaextensions": "Metagrupp som innehåller alla meddelanden för MediaWiki-tillägg som används av [http://www.wikia.com Wikia]",
+ "translate-group-desc-wikimania-scholarships-app": "Meddelandegrupp för [https://scholarships.wikimedia.org/apply Wikimanias stipendieansökan]",
+ "translate-group-desc-wikimedia-mobile": "Aggregerade meddelandegrupp som innehåller mobilapplikationer för Wikimedia-projekten",
+ "translate-group-desc-wikimedia-mobile-wikipedia": "[[Translating:WikipediaMobile|WikipediaMobile]] är en plattformsoberoende applikation för att läsa och bidra till Wikipedia på mobiler och surfplattor",
+ "translate-group-desc-wikimedia-mobile-wikipedia-android": "[[Translating:WikipediaMobile|Wikipedia Android]] är den Android-specifika versionen av Wikipedia-mobilappen",
+ "translate-group-desc-wikimedia-mobile-wikipedia-ios": "[[Translating:WikipediaMobile|Wikipedia iOS]] är den iOS-specifika versionen av Wikipedia-mobilappen",
+ "translate-group-desc-wikimedia-mobile-wikisource": "[[Translating:WikisourceMobile|WikisourceMobile]] är en plattformsoberoende applikation för att läsa och bidra till Wikisource på mobiler och surfplattor",
+ "translate-group-desc-wikimedia-mobile-wiktionary": "[[Translating:WiktionaryMobile|WiktionaryMobile]] är en plattformsoberoende applikation för att läsa och bidra till Wiktionary på mobiler och surfplattor",
+ "translate-group-desc-wikimediaextensions": "Metagrupp som innehåller alla meddelanden för MediaWiki-tillägg som används av [https://wikimediafoundation.org/ Wikimedia Foundation]",
+ "translate-group-desc-wikimediaextensions-main": "Metameddelandegrupp som innehåller alla meddelanden för stödjande MediaWiki-tillägg som krävs för att översättas för Wikimedias [https://meta.wikimedia.org/wiki/Special:MyLanguage/Language_committee språkkommitté]",
+ "translategroupdescriptions-desc": "Meddelandegruppsbeskrivningar för produkter som stöds av [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Translate Translate]-tillägget"
+}
diff --git a/MLEB/Translate/i18n/groupdescriptions/ta.json b/MLEB/Translate/i18n/groupdescriptions/ta.json
new file mode 100644
index 00000000..fd72aec7
--- /dev/null
+++ b/MLEB/Translate/i18n/groupdescriptions/ta.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Karthi.dr"
+ ]
+ },
+ "translate-group-desc-translatablepages": "எல்லா மொழிபெயர்க்கக்கூடிய பக்கங்கள்"
+}
diff --git a/MLEB/Translate/i18n/groupdescriptions/te.json b/MLEB/Translate/i18n/groupdescriptions/te.json
new file mode 100644
index 00000000..ac2e73f3
--- /dev/null
+++ b/MLEB/Translate/i18n/groupdescriptions/te.json
@@ -0,0 +1,11 @@
+{
+ "@metadata": {
+ "authors": [
+ "Veeven",
+ "Ashokjayanti"
+ ]
+ },
+ "translate-group-desc-nodesc": "ఈ సందేశ సమూహానికి వివరణ లేదు",
+ "translate-group-desc-translatablepages": "అనువదించదగ్గ అన్ని పుటలు",
+ "translate-group-desc-universallanguageselector": "MediaWikiవిస్తరణకొరకు అన్ని సందేశాలూ కలిసిన విస్తృత సందేశ సంకలనం[https://www.mediawiki.org/wiki/Extension:UniversalLanguageSelector UniversalLanguageSelector] (ULS)మరియు సంబంధిత సాఫ్ట్ వేర్ \nపాకేజిలు."
+}
diff --git a/MLEB/Translate/i18n/groupdescriptions/th.json b/MLEB/Translate/i18n/groupdescriptions/th.json
new file mode 100644
index 00000000..a2e71e2c
--- /dev/null
+++ b/MLEB/Translate/i18n/groupdescriptions/th.json
@@ -0,0 +1,14 @@
+{
+ "@metadata": {
+ "authors": [
+ "Ans"
+ ]
+ },
+ "translate-group-desc-collection": "เป็นกลุ่มที่นิยามกลุ่มของข้อความ ที่มีข้อความทั้งหมดสำหรับส่วนเพิ่มเติม[https://www.mediawiki.org/wiki/Extension:Collection แหล่งสะสม]ของมีเดียวิกิ",
+ "translate-group-desc-flaggedrevs": "เป็นกลุ่มที่นิยามกลุ่มของข้อความ ที่มีข้อความทั้งหมดสำหรับส่วนเพิ่มเติม [https://www.mediawiki.org/wiki/Extension:FlaggedRevs FlaggedRevs] ของมีเดียวิกิ",
+ "translate-group-desc-mediawikiextensions": "เป็นกลุ่มที่นิยามกลุ่มของข้อความ ที่มีข้อความทั้งหมดสำหรับส่วนที่เพิ่มเติมของมีเดียวิกิ",
+ "translate-group-desc-readerfeedback": "เป็นกลุ่มที่นิยามกลุ่มของข้อความ ที่มีข้อความทั้งหมดสำหรับส่วนเพิ่มเติม[https://www.mediawiki.org/wiki/Extension:ReaderFeedback การตอบรับจากผู้อ่าน]ของมีเดียวิกิ",
+ "translate-group-desc-translate": "เป็นกลุ่มที่นิยามกลุ่มของข้อความ ที่มีข้อความทั้งหมดสำหรับส่วนเพิ่มเติม[https://www.mediawiki.org/wiki/Extension:Translate การแปล]ของมีเดียวิกิ",
+ "translate-group-desc-wikiaextensions": "เป็นกลุ่มที่นิยามกลุ่มของข้อความ ที่มีข้อความทั้งหมดสำหรับส่วนเพิ่มเติมมีเดียวิกิที่ใช้บน [http://www.wikia.com Wikia]",
+ "translate-group-desc-wikimediaextensions": "เป็นกลุ่มที่นิยามกลุ่มของข้อความ ที่มีข้อความทั้งหมดสำหรับส่วนเพิ่มเติมมีเดียวิกิที่ใช้โดย [https://wikimediafoundation.org/ มูลนิธิวิกิมีเดีย]"
+}
diff --git a/MLEB/Translate/i18n/groupdescriptions/tl.json b/MLEB/Translate/i18n/groupdescriptions/tl.json
new file mode 100644
index 00000000..0624e879
--- /dev/null
+++ b/MLEB/Translate/i18n/groupdescriptions/tl.json
@@ -0,0 +1,41 @@
+{
+ "@metadata": {
+ "authors": [
+ "AnakngAraw",
+ "Lokal Profil"
+ ]
+ },
+ "bw-desc-freecol": "Bago isalin ang FreeCol sa wika mo, paki basa ang [[Translating:FreeCol]]. Gumagamit ang Freecol ng lisensyang GPL.",
+ "bw-desc-fudforum": "[http://fudforum.org/ FUDforum], isang poro sa web na nakasulat sa PHP.",
+ "bw-desc-mantisbt": "Ang [[Translating:MantisBT|MantisBT]] ay isang malayang sistemang pangweb na pangtunton ng depekto. Paki-ulat ang anumang paksa sa [[Support|Suporta]].",
+ "bw-desc-openstreetmap": "Lahat ng mga mensaheng may kaugnayan sa [[Translating:OpenStreetMap|OpenStreetMap]]",
+ "bw-desc-osm-site": "Naglalaman ang pangkat na pangmensaheng ito ng mga mensaheng panghangganang-mukha para sa [[Translating:Open Street Map|Bukas na Mapa ng Kalye]]. Tingnan ang [http://unicode.org/repos/cldr-tmp/trunk/diff/supplemental/language_plural_rules.html#{{UILANGCODE}} pahina ng Unikodigong CLDR para sa paliwanag ng mga susing pangmaramihan].",
+ "bw-desc-wikiblame": "Kayang mabilisang hanapin ng [http://wikipedia.ramselehof.de/wikiblame.php Wikiblame] ang mga may-akda ng isang pahinang nasa loob ng isang wiki ng Wikimedia.",
+ "translate-group-desc-collection": "Pangkat ng mensahe ng Meta na naglalaman ng lahat ng mga mensahe para sa dugtong pang-MediaWiki na [https://www.mediawiki.org/wiki/Extension:Collection Kalipunan]",
+ "translate-group-desc-eol": "Isang pangkat ng mensahe para sa [[Translating:EOL|Ensiklopedya ng Buhay]]",
+ "translate-group-desc-europeana": "Ang [[Translating:Europeana|Europeana]] ay nagbibigay-daan sa mga taong galugarin ang dihital na mga yamang pangkalinangan ng Europa",
+ "translate-group-desc-flaggedrevs": "Pangkat ng mensahe ng Meta na naglalaman ng lahat ng mga mensahe para dugtong ng MediaWiki na [https://www.mediawiki.org/wiki/Extension:FlaggedRevs Binandilang mga Pagbabago]",
+ "translate-group-desc-ihris": "Isang pangkat ng mensahe para sa [[Translating:iHRIS|iHRIS]]",
+ "translate-group-desc-kiwix": "Isang pangkat ng mensahe para sa [[Translating:Kiwix|Kiwix]]",
+ "translate-group-desc-mantisbt-plugin-core": "Isang pangunahing pamasak para sa [[Translating:MantisBT|MantisBT]]",
+ "translate-group-desc-mediawiki-core-branch": "Mga mensahe para sa matatag na bersyon ng [[Translating:MediaWiki|MediaWiki]]",
+ "translate-group-desc-mediawikicore": "Naglalaman ang pangkat ng mensaheng ito ng mga mensaheng ginagamit sa kasalukuyang bersyong alpa ng MediaWiki ({{CURRENTVERSION}})",
+ "translate-group-desc-mediawikiextensions": "Pangkat ng mensahe ng Meta na naglalaman ng lahat ng mga mensahe para sa tinatangkilik na mga karugtong para sa MediaWiki",
+ "translate-group-desc-mediawikimostused": "Naglalaman ang pangkat ng mensaheng ito ng [https://translatewiki.net/wiki/Most_often_used_messages_in_MediaWiki 500 pinakamadalas gamiting mga mensahe] sa MediaWiki",
+ "translate-group-desc-mifos": "Ang [[Translating:Mifos|Mifos]] ay isang sistema ng kabatiran na pangpamamahala para sa mikropinansiya",
+ "translate-group-desc-nocc": "Ang [http://nocc.sourceforge.net NOCC] ay isang kliyente ng webmail na nakasulat sa PHP. Paki-ulat ang anumang mga paksa sa [[Support]].",
+ "translate-group-desc-nodesc": "Walang makukulang paglalarawan para sa pangkat ng mensaheng ito",
+ "translate-group-desc-openimages-all": "Ang mga mensaheng ito ay bahagi ng proyektong [[Translating:Open Images|Open Images]]",
+ "translate-group-desc-potlatch2": "Ang [[Translating:OpenStreetMap|Potlatch2]] ay isang patnugot ng OpenStreetMap na nakahimpil sa Flash",
+ "translate-group-desc-pywikipedia": "Ang [[Translating:Pywikibot|Pywikibot]] ay isang kalipunan ng mga kasangkapan upang mapatnugutan ang Wikipedia",
+ "translate-group-desc-readerfeedback": "Pangkat ng mensahe ng Meta na naglalaman ng lahat ng mga mensahe para dugtong ng MediaWiki na [https://www.mediawiki.org/wiki/Extension:ReaderFeedback Katugunan ng Mambabasa]",
+ "translate-group-desc-semantic": "Pangkat ng mensahe ng meta na naglalaman ng lahat ng mga mensahe para sa lahat ng mga dugtong ng [https://semantic-mediawiki.org/ Semantikong MediaWiki]",
+ "translate-group-desc-translatablepages": "Lahat ng mga pahinang maisasalinwika",
+ "translate-group-desc-translate": "Pangkat ng mensahe ng Meta na naglalaman ng lahat ng mga mensahe para dugtong ng MediaWiki na [https://www.mediawiki.org/wiki/Extension:Translate Isalinwika]",
+ "translate-group-desc-tsint": "Isang pangkat ng mensahe para sa [http://toolserver.org/~krinkle/TsIntuition Intuition ng Toolserver], ang sistemang i18n para sa mga kasangkapan ng [http://toolserver.org Toolserver] (<span class=\"plainlinks\">[[Translating talk:Toolserver|pagtangkilik]] &middot; [https://wiki.toolserver.org/view/Toolserver_Intuition mga detalyeng teknikal]</span>)",
+ "translate-group-desc-waymarked-trails": "Ang [[Translating:Waymarked Trails|Waymarked Trails]] ay isang paglilingkod na nagpapakita ng mga ruta sa nakasisiyang mahabang paglalakad, pagbibisikleta, pambundok na pamimisikleta at pag-iiskeyt na nasa linya sa buong mundo. Gumagamit ito ng lisensiyang GNU GPL",
+ "translate-group-desc-wikiaextensions": "Pangkat ng mensahe ng Meta na naglalaman ng lahat ng mga mensahe para sa tinatangkilik na mga dugtong ng MediaWiki na ginagamit ng [http://www.wikia.com Wikia]",
+ "translate-group-desc-wikimediaextensions": "Pangkat ng mensahe ng Meta na naglalaman ng lahat ng mga mensahe para sa tinatangkilik na mga dugtong ng MediaWiki na ginagamit ng [https://wikimediafoundation.org/ Pundasyong Wikimedia]",
+ "translate-group-desc-wikimediaextensions-main": "Pangkat ng mensahe ng Meta na naglalaman ng lahat [https://meta.wikimedia.org/wiki/Language_committee lupon ng Wika] ng Wikimedia",
+ "translategroupdescriptions-desc": "Mga paglalarawan sa pangkat ng mensahe para sa mga produktong tinatangkilik ng dugtong na [https://mediawiki.org/wiki/Extension:Translate Translate]"
+}
diff --git a/MLEB/Translate/i18n/groupdescriptions/tr.json b/MLEB/Translate/i18n/groupdescriptions/tr.json
new file mode 100644
index 00000000..dc4545b9
--- /dev/null
+++ b/MLEB/Translate/i18n/groupdescriptions/tr.json
@@ -0,0 +1,10 @@
+{
+ "@metadata": {
+ "authors": [
+ "Incelemeelemani",
+ "Violetanka"
+ ]
+ },
+ "translate-group-desc-translatablepages": "Tüm çevrilebilir sayfalar",
+ "translate-group-desc-tsint": "[[Translating:Intuition|Intuition]] için bir ileti grubu, [//tools.wmflabs.org/ Wikimedia Tool Labs] araçları için i18n sistemi (<span class=\"plainlinks\">[[Translating talk:Intuition|support]]</span>)"
+}
diff --git a/MLEB/Translate/i18n/groupdescriptions/tt-cyrl.json b/MLEB/Translate/i18n/groupdescriptions/tt-cyrl.json
new file mode 100644
index 00000000..924762e4
--- /dev/null
+++ b/MLEB/Translate/i18n/groupdescriptions/tt-cyrl.json
@@ -0,0 +1,16 @@
+{
+ "@metadata": {
+ "authors": [
+ "March",
+ "Rinatus",
+ "Ильнар",
+ "Lokal Profil"
+ ]
+ },
+ "bw-desc-freecol": "FreeCol проектын узегезнең телегезгә тәрҗемә иткәнче башта [[Translating:FreeCol]]ны карагыз, чөнки ул GPL лицензиясен куллана.",
+ "bw-desc-fudforum": "[http://fudforum.org/ FUDforum] — PHPда язылган веб-форум.",
+ "bw-desc-mantisbt": "[[Translating:MantisBT|MantisBT]] — килгән хаталарны карау өчен нигезләнгән веб-система. Зинһар, булган кимчелекләрне [[Support]] битендә әйтегез.",
+ "bw-desc-wikiblame": "[http://wikipedia.ramselehof.de/wikiblame.php Wikiblame] Викимедиа авторларының битен табарга ярдәм итә.",
+ "translate-group-desc-nocc": "[http://nocc.sourceforge.net NOCC] — PHP телендә язылган почта веб-клиенты. Зинхар очен, барлык җитешсезлекләр турында [[Support|ярдәм битенә]] хәбәр итегез.",
+ "translate-group-desc-pywikipedia": "[[Translating:Pywikibot|Pywikibot]] — Википедияне рәтләү өчен җиһазлар җыентыгы"
+}
diff --git a/MLEB/Translate/i18n/groupdescriptions/uk.json b/MLEB/Translate/i18n/groupdescriptions/uk.json
new file mode 100644
index 00000000..48326cdf
--- /dev/null
+++ b/MLEB/Translate/i18n/groupdescriptions/uk.json
@@ -0,0 +1,67 @@
+{
+ "@metadata": {
+ "authors": [
+ "A1",
+ "AS",
+ "Andriykopanytsia",
+ "Andygol",
+ "Base",
+ "Olvin",
+ "Prima klasy4na",
+ "Ата",
+ "Тест",
+ "Lokal Profil"
+ ]
+ },
+ "bw-desc-freecol": "Перед тим, як перекладати FreeCol на вашу мову, прочитайте, будь ласка, [[Translating:FreeCol]]. Freecol використовує ліцензію GPL.",
+ "bw-desc-fudforum": "[http://fudforum.org/ FUDforum] — веб-форум, написаний на PHP.",
+ "bw-desc-mantisbt": "[[Translating:MantisBT|MantisBT]] — це мережне програмне забезпечення для відслідковування баґів.",
+ "bw-desc-openstreetmap": "Група повідомлень [[Translating:OpenStreetMap|OpenStreetMap]]",
+ "bw-desc-osm-site": "Ця група містить повідомлення інтерфейсу [[Translating:OpenStreetMap|OpenStreetMap]].\nОзнайомтесь зі [http://unicode.org/repos/cldr-tmp/trunk/diff/supplemental/language_plural_rules.html#{{UILANGCODE}} сторінкою Unicode CLDR для отримання пояснень щодо творення форм множини].",
+ "bw-desc-wikiblame": "[http://wikipedia.ramselehof.de/wikiblame.php Wikiblame] дозволяє швидко знайти авторів сторінки в проектах Вікімедіа.",
+ "translate-group-desc-blockly": "Група повідомлень для [[Translating:Blockly|Blockly]]",
+ "translate-group-desc-bluespice": "Мета-група повідомлень, що містить всі повідомлення MediaWiki розширень [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:BlueSpice Blue Spice]",
+ "translate-group-desc-collection": "Метагрупа повідомлень, що містить повідомлення для MediaWiki розширення [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Collection Collection]",
+ "translate-group-desc-eol": "Група повідомлень для перекладу [[Translating:EOL|Енциклопедії життя]]",
+ "translate-group-desc-etherpad-lite": "[[Translating:Etherpad lite|Etherpad lite]] — це насправді сумісний з реальним часом редактор",
+ "translate-group-desc-europeana": "[[Translating:Europeana|Europeana 1914-1918]] — це сайт з історіями, фільмами та історичним матеріалом про Першу світову війну",
+ "translate-group-desc-flaggedrevs": "Метагрупа повідомлень, що містить повідомлення для MediaWiki-розширення [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:FlaggedRevs FlaggedRevs]",
+ "translate-group-desc-fuel": "[[Translating:FUEL|FUEL]] приносить більше узгодженості перекладу програмного забезпечення",
+ "translate-group-desc-huggle": "[[Translating:Huggle|Huggle]] — це браузерний додаток швидких дифів для роботи з вандалізмом у проектах Вікімедіа",
+ "translate-group-desc-ihris": "Група повідомлень для [[Translating:iHRIS|iHRIS]]",
+ "translate-group-desc-kiwix": "Група повідомлень для [[Translating:Kiwix|Kiwix]]",
+ "translate-group-desc-mantisbt-plugin-core": "Основний плаґін для [[Translating:MantisBT|MantisBT]]",
+ "translate-group-desc-mathjax": "[[Translating:MathJax|MathJax]] це міжбраузерна бібліотека на JavaScript, що відображає математичні формули у веб-переглядачах",
+ "translate-group-desc-mediawiki-core-branch": "Повідомлення для стабільної версії [[Translating:MediaWiki|MediaWiki]]",
+ "translate-group-desc-mediawikicore": "Ця група містить повідомлення, які використовують у поточній альфа-версії MediaWiki ({{CURRENTVERSION}})",
+ "translate-group-desc-mediawikiextensions": "Ця метагрупа містить повідомлення підтримуваних розширень MediaWiki",
+ "translate-group-desc-mediawikimostused": "Ця група містить [https://translatewiki.net/wiki/Most_often_used_messages_in_MediaWiki 500 найуживаніших повідомлень] [[Translating:MediaWiki|MediaWiki]]",
+ "translate-group-desc-mifos": "[[Translating:Mifos|Mifos]] — система керування інформацією для мікрофінансування",
+ "translate-group-desc-nfcring-control": "[[Translating:NFC_Ring_Control|NFC Ring Control]] — мобільний додаток для роботи з NFC-теґами",
+ "translate-group-desc-nocc": "[http://nocc.sourceforge.net NOCC] це клієнт веб-пошти (webmail) написаний на PHP. Будь ласка, повідомляйте про будь-які проблеми на [[Support|сторінці підтримки]].",
+ "translate-group-desc-nodesc": "Немає опису цієї групи повідомлень",
+ "translate-group-desc-openimages-all": "Ці повідомлення є частиною проекту [[Translating:Open Images|Open Images]]",
+ "translate-group-desc-potlatch2": "[[Translating:OpenStreetMap|Potlatch2]] — це базований на Flash редактор OpenStreetMap",
+ "translate-group-desc-pywikipedia": "[[Translating:Pywikibot|Pywikibot]] — набір інструментів для редагування Вікіпедії",
+ "translate-group-desc-readerfeedback": "Метагрупа повідомлень, що містить всі повідомлення розширення MediaWiki [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:ReaderFeedback ReaderFeedback]",
+ "translate-group-desc-semantic": "Метагрупа повідомлень, що містить усі повідомлення для усіх розширень [https://semantic-mediawiki.org/ Semantic MediaWiki]",
+ "translate-group-desc-translatablepages": "Усі сторінки, що можуть перекладатися",
+ "translate-group-desc-translate": "Метагрупа повідомлень, що містить повідомлення для MediaWiki-розширення [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Translate Translate]; будь ласка, ознайомтесь із його [https://www.mediawiki.org/wiki/Help:Extension:Translate/Glossary глосарієм]",
+ "translate-group-desc-tsint": "Група повідомлень для [[Translating:Intuition|Інтуїції]], системи i18n для засобів [//tools.wmflabs.org/ Toolserver] (<span class=\"plainlinks\">[[Translating talk:Intuition|підтримка]]</span>)",
+ "translate-group-desc-universallanguageselector": "Мета-група повідомлень, яка містить усі повідомлення для MediaWiki-розширення [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:UniversalLanguageSelector UniversalLanguageSelector] (ULS) та відповідних програмних пакетів",
+ "translate-group-desc-vicuna": "[[Translating:VicuñaUploader|VicuñaUploader]] — інструмент для завантажання файлів на Вікісховище та інші проекти Вікімедіа",
+ "translate-group-desc-visualeditor": "Мета-група повідомлень, яка містить усі повідомлення для MediaWiki-розширення [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:VisualEditor VisualEditor] та відповідних програмних пакетів",
+ "translate-group-desc-waymarked-trails": "[[Translating:Waymarked Trails|Waymarked Trails]] — сервіс, що показує маршрути для прогулянок, велоспорту, поїздок на гірському велосипеді та катання на роликах по всьому світу. Використовує ліцензію GNU GPL",
+ "translate-group-desc-waymarked-trails-help": "Сторінки допомоги сайтів Waymarked Trails: http://waymarkedtrails.org/help/about",
+ "translate-group-desc-wikiaextensions": "Метагрупа, що містить повідомлення для MediaWiki-розширень, які використовуються [http://www.wikia.com Wikia]",
+ "translate-group-desc-wikimania-scholarships-app": "Група повідомлень для [https://scholarships.wikimedia.org/apply заявки на стипендію Wikimania]",
+ "translate-group-desc-wikimedia-mobile": "Об'єднана група повідомлень мобільних додатків для проектів Вікімедіа",
+ "translate-group-desc-wikimedia-mobile-wikipedia": "[[Translating:WikipediaMobile|WikipediaMobile]] є багатоплатформним застосунком для мобільних та планшетних пристроїв, який призначено для читання Вікіпедії та дописування до неї",
+ "translate-group-desc-wikimedia-mobile-wikipedia-android": "[[Translating:WikipediaMobile|Вікіпедія для Android]] — це версія під Android мобільної програми Вікіпедії",
+ "translate-group-desc-wikimedia-mobile-wikipedia-ios": "[[Translating:WikipediaMobile|Вікіпедія для iOS]] — це iOS-версія мобільної програми Вікіпедія",
+ "translate-group-desc-wikimedia-mobile-wikisource": "[[Translating:WikisourceMobile|WikisourceMobile]] — багатоплатформний застосунок для мобільних та планшетних пристроїв, який призначено для перегляду Вікісховища і дописування у нього",
+ "translate-group-desc-wikimedia-mobile-wiktionary": "[[Translating:WiktionaryMobile|WiktionaryMobile]] — це крос-платформний додаток для мобільних і планшетних пристроїв, що призначений для читання і редагування Вікісловника",
+ "translate-group-desc-wikimediaextensions": "Метагрупа, що містить повідомлення для MediaWiki-розширень, які використовуються [https://wikimediafoundation.org/ Фондом Вікімедіа]",
+ "translate-group-desc-wikimediaextensions-main": "Метагрупа повідомлень, що містить усі повідомлення для підтримуваних розширень MediaWiki, які мають бути перекладені для [https://meta.wikimedia.org/wiki/Special:MyLanguage/Language_committee/uk Мовного комітету] Вікімедіа",
+ "translategroupdescriptions-desc": "Описи груп повідомлень для продуктів, що підтримуються розширенням [https://mediawiki.org/wiki/Special:MyLanguage/Extension:Translate Translate]"
+}
diff --git a/MLEB/Translate/i18n/groupdescriptions/uz.json b/MLEB/Translate/i18n/groupdescriptions/uz.json
new file mode 100644
index 00000000..67a5d0b7
--- /dev/null
+++ b/MLEB/Translate/i18n/groupdescriptions/uz.json
@@ -0,0 +1,9 @@
+{
+ "@metadata": {
+ "authors": [
+ "CoderSI"
+ ]
+ },
+ "translate-group-desc-mediawikicore": "Ushbu xabarlar guruhi MediaWiki ({{CURRENTVERSION}})ning joriy alfa-versiyasida foydalanilayotgan xabarlarni o'z ichiga oladi",
+ "translate-group-desc-mediawikimostused": "Ushbu xabarlar guruhi MediaWikida [https://translatewiki.net/wiki/Most_often_used_messages_in_MediaWiki 500 tadan ziyod juda ko'p ishlatiladigan xabarlardan] tashkil topgan"
+}
diff --git a/MLEB/Translate/i18n/groupdescriptions/vep.json b/MLEB/Translate/i18n/groupdescriptions/vep.json
new file mode 100644
index 00000000..4179b203
--- /dev/null
+++ b/MLEB/Translate/i18n/groupdescriptions/vep.json
@@ -0,0 +1,14 @@
+{
+ "@metadata": {
+ "authors": [
+ "Игорь Бродский",
+ "Lokal Profil"
+ ]
+ },
+ "bw-desc-freecol": "Edel sidä, kut tö kändaškandet FreeCol teiden kel'he, olgat hüväd, lugekat [[Translating:FreeCol]]-lehtpol't. Freecol kävutab GPL-licenzijan.",
+ "bw-desc-fudforum": "[http://fudforum.org/ FUDforum], PHP-s kirjutadud verkforum.",
+ "bw-desc-mantisbt": "[[Translating:MantisBT|MantisBT]] om vigoiden löudmižen joudai verksistem. Olgat hüväd, kirjutagat erazvuiččiš petusiš [[Support|Abulehtpolel]].",
+ "bw-desc-osm-site": "Nece tedotusiden gruppas om [[Translating:Open Street Map|Open Street Map]]-interfeisan tedotusid.",
+ "bw-desc-wikiblame": "[http://wikipedia.ramselehof.de/wikiblame.php Wikiblame] laskeb löuta teravas lehtpolen avtorid Wikimedii-projektoiš.",
+ "translate-group-desc-nocc": "[http://nocc.sourceforge.net NOCC] om PHP-kelel kirjutadud web-klijent. Olgat hüväd, kirjutagat erazvuiččiš petusiš [[Support|Abulehtpolel]]."
+}
diff --git a/MLEB/Translate/i18n/groupdescriptions/vi.json b/MLEB/Translate/i18n/groupdescriptions/vi.json
new file mode 100644
index 00000000..91357ee5
--- /dev/null
+++ b/MLEB/Translate/i18n/groupdescriptions/vi.json
@@ -0,0 +1,62 @@
+{
+ "@metadata": {
+ "authors": [
+ "Minh Nguyen",
+ "Vinhtantran",
+ "Lokal Profil"
+ ]
+ },
+ "bw-desc-freecol": "Trước khi dịch FreeCol ra ngôn ngữ của bạn, xin hãy đọc [[Translating:FreeCol]]. Freecol sử dụng giấy phép GPL.",
+ "bw-desc-fudforum": "[http://fudforum.org/ FUDforum], một diễn đàn mạng được viết bằng PHP.",
+ "bw-desc-mantisbt": "[[Translating:MantisBT|MantisBT]] là hệ thống theo dõi lỗi trên Web",
+ "bw-desc-openstreetmap": "Nhóm thông điệp chứa các thông điệp của [[Translating:OpenStreetMap|OpenStreetMap]]",
+ "bw-desc-osm-site": "Nhóm thông điệp này chứa các thông điệp của giao diện [[Translating:OpenStreetMap|OpenStreetMap]].",
+ "bw-desc-wikiblame": "[http://wikipedia.ramselehof.de/wikiblame.php Wikiblame] có thể nhanh chóng tìm ra tác giả của trang trong wiki của Wikimedia.",
+ "translate-group-desc-blockly": "Một nhóm thông điệp dành cho [[Translating:Blockly|Blockly]]",
+ "translate-group-desc-bluespice": "Siêu nhóm thông điệp chứa các thông điệp của các phần mở rộng [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:BlueSpice?uselang=vi BlueSpice] cho MediaWiki",
+ "translate-group-desc-collection": "Siêu nhóm thông điệp chứa các thông điệp của phần mở rộng [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Collection?uselang=vi Collection] cho MediaWiki",
+ "translate-group-desc-eol": "Nhóm thông điệp của [[Translating:EOL|Bách khoa toàn thư Sự sống]]",
+ "translate-group-desc-etherpad-lite": "[[Translating:Etherpad lite|Etherpad lite]] là một trình soạn hợp tác rất tức thời",
+ "translate-group-desc-europeana": "[[Translating:Europeana|Europeana 1914–1918]] là trang Web có chuyện kể, phim, và vật liệu lịch sử về Chiến tranh thế giới thứ nhất",
+ "translate-group-desc-flaggedrevs": "Siêu nhóm thông điệp chứa các thông điệp của phần mở rộng [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:FlaggedRevs?uselang=vi FlaggedRevs] cho MediaWiki",
+ "translate-group-desc-fuel": "[[Translating:FUEL|FUEL]] nhất quán hóa việc biên dịch phần mềm",
+ "translate-group-desc-huggle": "[[Translating:Huggle|Huggle]] là một ứng dụng duyệt bản khác biệt nhanh nhẹn để chống phá hoại trên các dự án Wikimedia",
+ "translate-group-desc-ihris": "Nhóm thông điệp cho [[Translating:iHRIS|iHRIS]]",
+ "translate-group-desc-kiwix": "Nhóm thông điệp cho [[Translating:Kiwix|Kiwix]]",
+ "translate-group-desc-mantisbt-plugin-core": "Một trong những phần bổ trợ chính của [[Translating:MantisBT|MantisBT]]",
+ "translate-group-desc-mathjax": "[[Translating:MathJax|MathJax]] là một thư viện JavaScript đa trình duyệt hiển thị các biểu thức toán học trong trình duyệt",
+ "translate-group-desc-mediawiki-core-branch": "Các thông điệp trong một phiên bản ổn định của [[Translating:MediaWiki|MediaWiki]]",
+ "translate-group-desc-mediawikiapi": "Nhóm thông điệp này chứa các thông điệp dùng cho API Tác vụ trong phiên bản alpha hiện hành của [[Translating:MediaWiki|MediaWiki]] ({{CURRENTVERSION}})",
+ "translate-group-desc-mediawikicore": "Nhóm thông điệp này chứa các thông điệp dùng trong phiên bản alpha hiện hành của [[Translating:MediaWiki|MediaWiki]] ({{CURRENTVERSION}})",
+ "translate-group-desc-mediawikiextensions": "Nhóm thông điệp chứa các thông điệp của các phần mở rộng [[Translating:MediaWiki|MediaWiki]]",
+ "translate-group-desc-mediawikiskins": "Siêu nhóm thông điệp chứa các thông điệp của các giao diện [[Translating:MediaWiki|MediaWiki]] được hỗ trợ",
+ "translate-group-desc-mediawikimostused": "Nhóm thông điệp này chứa [https://translatewiki.net/wiki/Most_often_used_messages_in_MediaWiki 500 thông điệp dùng nhiều nhất] trong [[Translating:MediaWiki|MediaWiki]]",
+ "translate-group-desc-mifos": "[[Translating:Mifos|Mifos]] là hệ thống quản lý thông tin về tài chính vi mô.",
+ "translate-group-desc-nfcring-control": "[[Translating:NFC_Ring_Control|NFC Ring Control]] là một ứng dụng di động để tác động với thẻ NFC",
+ "translate-group-desc-nocc": "[http://nocc.sourceforge.net/ NOCC] là chương trình thư điện tử Web được viết bằng PHP. Xin hãy báo cáo lỗi tại [[Support]].",
+ "translate-group-desc-nodesc": "Không có miêu tả cho nhóm thông điệp này",
+ "translate-group-desc-openimages-all": "Các thông điệp này thuộc về dự án [[Translating:Open Images|Open Images]]",
+ "translate-group-desc-potlatch2": "[[Translating:OpenStreetMap|Potlatch2]] là một trình vẽ bản đồ OpenStreetMap dùng Flash.",
+ "translate-group-desc-pywikipedia": "[[Translating:Pywikibot|Pywikibot]] là một thư viện để lập chương trình tự động sửa đổi Wikipedia.",
+ "translate-group-desc-readerfeedback": "Siêu nhóm thông điệp chứa tất cả các thông điệp dùng cho phần mở rộng MediaWiki [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:ReaderFeedback?uselang=vi ReaderFeedback]",
+ "translate-group-desc-semantic": "Siêu nhóm thông điệp chứa các thông điệp của phần mở rộng [https://semantic-mediawiki.org/?uselang=vi MediaWiki Ngữ nghĩa]",
+ "translate-group-desc-translatablepages": "Mọi trang dịch được",
+ "translate-group-desc-translate": "Siêu nhóm thông điệp chứa các thông điệp của phần mở rộng [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Translate?uselang=vi Translate] cho MediaWiki; xin vui lòng đọc hiểu [https://www.mediawiki.org/wiki/Help:Extension:Translate/Glossary?uselang=vi thuật ngữ]",
+ "translate-group-desc-tsint": "Nhóm thông điệp của [[Translating:Intuition|Intuition]], hệ thống biên dịch các công cụ [//tools.wmflabs.org/ Wikimedia Tool Labs] (<span class=\"plainlinks\">[[Translating talk:Intuition|trợ giúp]]</span>)",
+ "translate-group-desc-universallanguageselector": "Siêu nhóm thông điệp bao gồm các thông điệp của phần mở rộng MediaWiki [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:UniversalLanguageSelector?uselang=vi UniversalLanguageSelector] (ULS) và các phần mềm có liên quan",
+ "translate-group-desc-vicuna": "[[Translating:VicuñaUploader|VicuñaUploader]] là một công cụ tải tập tin lên Wikimedia Commons và các dự án khác của Wikimedia",
+ "translate-group-desc-visualeditor": "Siêu nhóm thông điệp bao gồm các thông điệp của phần mở rộng MediaWiki [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:VisualEditor?uselang=vi Trình soạn thảo trực quan] và các phần mềm có liên quan",
+ "translate-group-desc-waymarked-trails": "[[Translating:Waymarked Trails|Waymarked Trails]] là một dịch vụ bản đồ cho biết các tuyến đường đi bộ đường dài, xe đạp, xe đạp leo núi, và trượt băng nội tuyến ở khắp thế giới. Dịch vụ được phát hành theo giấy phép GNU GPL.",
+ "translate-group-desc-waymarked-trails-help": "Các trang trợ giúp của các trang Waymarked Trails: http://waymarkedtrails.org/vi/help/about",
+ "translate-group-desc-wikiaextensions": "Siêu nhóm thông điệp chứa thông điệp của các phần mở rộng MediaWiki được sử dụng tại [http://www.wikia.com Wikia]",
+ "translate-group-desc-wikimania-scholarships-app": "Nhóm thông điệp cho [https://scholarships.wikimedia.org/apply đơn xin Học bổng Wikimania]",
+ "translate-group-desc-wikimedia-mobile": "Nhóm tổng hợp các thông điệp ứng dụng di động của các dự án Wikimedia",
+ "translate-group-desc-wikimedia-mobile-wikipedia": "[[Translating:WikipediaMobile|WikipediaMobile]] là một ứng dụng đa nền tảng dành cho máy tính di động và bảng để đọc và đóng góp vào Wikipedia.",
+ "translate-group-desc-wikimedia-mobile-wikipedia-android": "[[Translating:WikipediaMobile|Wikipedia Android]] là bản Android của ứng dụng di động Wikipedia",
+ "translate-group-desc-wikimedia-mobile-wikipedia-ios": "[[Translating:WikipediaMobile|Wikipedia iOS]] là bản iOS của ứng dụng di động Wikipedia",
+ "translate-group-desc-wikimedia-mobile-wikisource": "[[Translating:WikisourceMobile|WikisourceMobile]] là một ứng dụng đa nền tảng dành cho máy tính di động và bảng để đọc và đóng góp vào Wikisource.",
+ "translate-group-desc-wikimedia-mobile-wiktionary": "[[Translating:WiktionaryMobile|WiktionaryMobile]] là một ứng dụng đa nền tảng dành cho máy tính di động và bảng để đọc và đóng góp vào Wiktionary.",
+ "translate-group-desc-wikimediaextensions": "Siêu nhóm thông điệp chứa thông điệp của các phần mở rộng MediaWiki được [https://wikimediafoundation.org/ Quỹ Wikimedia] sử dụng",
+ "translate-group-desc-wikimediaextensions-main": "Siêu nhóm thông điệp chứa thông điệp của các phần mở rộng MediaWiki được hỗ trợ cần dịch cho [https://meta.wikimedia.org/wiki/Special:MyLanguage/Language_committee?uselang=vi Ủy ban Ngôn ngữ]",
+ "translategroupdescriptions-desc": "Miêu tả các sản phẩm được phần mở rộng [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Translate?uselang=vi Translate] hỗ trợ"
+}
diff --git a/MLEB/Translate/i18n/groupdescriptions/yi.json b/MLEB/Translate/i18n/groupdescriptions/yi.json
new file mode 100644
index 00000000..f07a8fe2
--- /dev/null
+++ b/MLEB/Translate/i18n/groupdescriptions/yi.json
@@ -0,0 +1,19 @@
+{
+ "@metadata": {
+ "authors": [
+ "פוילישער"
+ ]
+ },
+ "translate-group-desc-europeana": "[[Translating:Europeana|Europeana 1914-1918]] איז א ועבזײַטל מיט געשיכטעס, פילמען און היסטארישן מאטריאל וויעגן דער ערשטער וועלט־מלחמה",
+ "translate-group-desc-kiwix": "א מעלדונג גרופע פאר [[Translating:Kiwix|קיוויקס]]",
+ "translate-group-desc-mediawiki-core-branch": "מעלדונגען פאר א סטאבילער ווערסיע פון [[Translating:MediaWiki|מעדיעוויקי]]",
+ "translate-group-desc-mediawikicore": "די מעלדונג גרופע אנטהאלט די מעלגדונגען געניצט אין דער לויפיגער אלפא ווערסיע פון מעדיעוויקי  ({{CURRENTVERSION}})",
+ "translate-group-desc-mediawikiextensions": "מעטא מעלדונג גרופע וואס אנטהאלט אלע מעלדונגען פאר געשטיצטע פארברייטערונגען פאר [[Translating:MediaWiki|מעדיעוויקי]]",
+ "translate-group-desc-mediawikimostused": "די מעלדונג גרופע אנטהאלט די [https://translatewiki.net/wiki/Most_often_used_messages_in_MediaWiki 500 מערסטע געניצטע מעלגדונגען] אין [[Translating:MediaWiki|מעדיעוויקים]]",
+ "translate-group-desc-nodesc": "נישט פֿאראן קיין באשרייבונג פאר דער מעלדונג גרופע",
+ "translate-group-desc-pywikipedia": "[[Translating:Pywikibot|Pywikibot]] איז א זאמלונג פון געצייג צו רעדאקטירן וויקיפעדיע",
+ "translate-group-desc-translatablepages": "אלע איבערזעצבאַרע בלעטער",
+ "translate-group-desc-translate": "מעטא־גרופע וואס אנטהאלט אלע מעלדונגען פאר דער מעדיעוויקי פארברייטערונג המכילה [https://www.mediawiki.org/wiki/Extension:Translate Translate]; זײַט אזוי גוט ווערט באקאנט מיטן [https://www.mediawiki.org/wiki/Special:MyLanguage/Help:Extension:Translate/Glossary גלאסאר]",
+ "translate-group-desc-wikimediaextensions": "מעטא־גרופע וואס אנטהאלט אלע מעלדונגען פאר געשטיצטע מעדיעוויקי פארברייטערונגען געניצט דורך דער [https://wikimediafoundation.org/ וויקימעדיע פונדאציע]",
+ "translategroupdescriptions-desc": "מעלדונג גרופע באשרייבונגען פאר פראדוקטן געשטיצט מיטן [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Translate איבערזעצונג] פארברייטערונג"
+}
diff --git a/MLEB/Translate/i18n/groupdescriptions/zh-hans.json b/MLEB/Translate/i18n/groupdescriptions/zh-hans.json
new file mode 100644
index 00000000..13daa7f1
--- /dev/null
+++ b/MLEB/Translate/i18n/groupdescriptions/zh-hans.json
@@ -0,0 +1,71 @@
+{
+ "@metadata": {
+ "authors": [
+ "Anakmalaysia",
+ "Bencmq",
+ "Hydra",
+ "Hzy980512",
+ "Liuxinyu970226",
+ "Mys 721tx",
+ "PhiLiP",
+ "Tommyang",
+ "Xiaomingyan",
+ "Yanmiao liu",
+ "Yfdyh000",
+ "Stieizc"
+ ]
+ },
+ "bw-desc-freecol": "[[Translating:FreeCol|FreeCol]] 是一个回合制策略游戏",
+ "bw-desc-fudforum": "[[Translating:FUDforum|FUDforum]]是一个基于web的论坛讨论软件",
+ "bw-desc-mantisbt": "[[Translating:MantisBT|MantisBT]]是一个基于Web的程序错误追踪软件",
+ "bw-desc-openstreetmap": "本组包含所有[[Translating:OpenStreetMap|OpenStreetMap]]信息",
+ "bw-desc-osm-site": "[[Translating:OpenStreetMap|OpenStreetMap]]是一个可编辑的世界地图",
+ "bw-desc-wikiblame": "[[Translating:WikiBlame|WikiBlame]]可以快速找到某维基媒体wiki中某页面的作者。",
+ "translate-group-desc-blockly": "用于[[Translating:Blockly|Blockly]]的信息组",
+ "translate-group-desc-bluespice": "包含用于MediaWiki [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:BlueSpice Blue Spice]扩展所有信息的元信息组",
+ "translate-group-desc-collection": "包含MediaWiki [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Collection Collection]扩展使用所有消息的元消息组。",
+ "translate-group-desc-eol": "[[Translating:EOL|网络生命大百科]]的信息组",
+ "translate-group-desc-etherpad-lite": "[[Translating:Etherpad lite|Etherpad lite]]是一个真正的实时协同编辑器",
+ "translate-group-desc-europeana": "[[Translating:Europeana|Europeana 1914~1918]]是包含有关第一次世界大战的故事、电影和历史材料网站",
+ "translate-group-desc-flaggedrevs": "包含MediaWiki [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:FlaggedRevs FlaggedRevs]扩展使用所有消息的元消息组。",
+ "translate-group-desc-fuel": "[[Translating:FUEL|FUEL]]使软件翻译更加一致",
+ "translate-group-desc-huggle": "[[Translating:Huggle|Huggle]]是一个快速的差异浏览程序,用来处理维基媒体项目中的破坏",
+ "translate-group-desc-ihris": "[[Translating:iHRIS|iHRIS]]的消息组",
+ "translate-group-desc-kiwix": "[[Translating:Kiwix|Kiwix]]的消息组",
+ "translate-group-desc-mantisbt-plugin-core": "[[Translating:MantisBT|MantisBT]]的核心插件",
+ "translate-group-desc-mathjax": "[[Translating:MathJax|MathJax]]是一个跨浏览器的用于浏览器中显示数学符号的JavaScript库",
+ "translate-group-desc-mediawiki-core-branch": "用于 [[Translating:MediaWiki|MediaWiki]] 稳定版本的消息。",
+ "translate-group-desc-mediawikiapi": "此界面消息群组包含了用于当前[[Translating:MediaWiki|MediaWiki]] alpha版本的Action API的消息({{CURRENTVERSION}})",
+ "translate-group-desc-mediawikicore": "此界面消息群组包含了当前[[Translating:MediaWiki|MediaWiki]] alpha版本所使用的消息({{CURRENTVERSION}})",
+ "translate-group-desc-mediawikiextensions": "包含所有用于[[Translating:MediaWiki|MediaWiki]]支持的扩展的元消息组",
+ "translate-group-desc-mediawikiskins": "包含所有用于[[Translating:MediaWiki|MediaWiki]]的受支持皮肤的元消息组",
+ "translate-group-desc-mediawikimostused": "此消息组包含在[[Translating:MediaWiki|MediaWiki]]使用的[https://translatewiki.net/wiki/Most_often_used_messages_in_MediaWiki 500条最常用的消息]。",
+ "translate-group-desc-mifos": "[[Translating:Mifos|Mifos]]是一种小额信贷管理信息系统。",
+ "translate-group-desc-nfcring-control": "[[Translating:NFC_Ring_Control|NFC戒指控制]]是一个与NFC标签交互的手机应用程序",
+ "translate-group-desc-nocc": "[[Translating:NOCC|NOCC]] 是一个网络邮件客户端",
+ "translate-group-desc-nodesc": "没有该信息组的说明可用",
+ "translate-group-desc-openimages-all": "这些消息属于[[Translating:Open Images|Open Images]]项目",
+ "translate-group-desc-potlatch2": "[[Translating:OpenStreetMap|Potlatch2]]是基于Flash的OpenStreetMap编辑器。",
+ "translate-group-desc-pywikipedia": "[[Translating:Pywikibot|Pywikibot]]是一个维基百科编辑工具集合。",
+ "translate-group-desc-readerfeedback": "包含MediaWiki [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:ReaderFeedback ReaderFeedback]扩展使用所有消息的元消息组。",
+ "translate-group-desc-semantic": "包含所有[https://semantic-mediawiki.org/ Semantic MediaWiki]扩展使用所有消息的元消息组。",
+ "translate-group-desc-translatablepages": "所有翻译网页",
+ "translate-group-desc-translate": "包含所有用于MediaWiki [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Translate 翻译]扩展相关信息的元信息组;请您熟知其[https://www.mediawiki.org/wiki/Help:Extension:Translate/Glossary 术语表]",
+ "translate-group-desc-tsint": "[[Translating:Intuition|Intuition]]的信息组。它是[//tools.wmflabs.org/ 维基媒体工具实验室]工具的i18n系统(<span class=\"plainlinks\">[[Translating talk:Intuition|支持]]</span>)",
+ "translate-group-desc-universallanguageselector": "元信息组包含所有MediaWiki扩展[https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:UniversalLanguageSelector 通用语言选择器](ULS)和相关软件包的信息",
+ "translate-group-desc-vicuna": "[[Translating:VicuñaUploader|VicuñaUploader]]是一个将文件上传到维基共享资源和其他维基媒体计划的工具",
+ "translate-group-desc-visualeditor": "包含所有用于MediaWiki [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:VisualEditor 可视化编辑器]扩展和相关软件包相关信息的元信息组",
+ "translate-group-desc-waymarked-trails": "[[Translating:Waymarked Trails|Waymarked Trails]]是一个使用GNU GPL许可证的显示世界范围内远足、骑行、山地骑行、 轮滑路线的服务。",
+ "translate-group-desc-waymarked-trails-help": "Waymarked Trails网站的帮助页面:http://waymarkedtrails.org/help/about",
+ "translate-group-desc-wikiaextensions": "包含用于[http://www.wikia.com Wikia]的MediaWiki支持的扩展的元信息组",
+ "translate-group-desc-wikimania-scholarships-app": "用于[https://scholarships.wikimedia.org/apply 维基媒体国际会议旅行经费申请应用程序]的信息组",
+ "translate-group-desc-wikimedia-mobile": "包含维基媒体项目移动应用的聚合消息组",
+ "translate-group-desc-wikimedia-mobile-wikipedia": "[[Translating:WikipediaMobile|WikipediaMobile]]是一个跨平台的手机和平板电脑应用,用于阅读和编辑维基百科",
+ "translate-group-desc-wikimedia-mobile-wikipedia-android": "[[Translating:WikipediaMobile|维基百科安卓版]]是为安卓系统定制的维基百科移动客户端",
+ "translate-group-desc-wikimedia-mobile-wikipedia-ios": "[[Translating:WikipediaMobile|维基百科iOS版]]是面向苹果iOS设备定制的维基百科移动应用程序",
+ "translate-group-desc-wikimedia-mobile-wikisource": "[[Translating:WikisourceMobile|WikisourceMobile]]是一个跨平台的手机和平板电脑应用,用于阅读和编辑维基文库",
+ "translate-group-desc-wikimedia-mobile-wiktionary": "[[Translating:WiktionaryMobile|WiktionaryMobile]]是一个跨平台的手机和平板电脑应用,用于阅读和编辑维基词典",
+ "translate-group-desc-wikimediaextensions": "包含[https://wikimediafoundation.org/ 维基媒体基金会]专用受支持的MediaWiki扩展使用所有消息的元消息组。",
+ "translate-group-desc-wikimediaextensions-main": "包含为维基媒体[https://meta.wikimedia.org/wiki/Special:MyLanguage/Language_committee 语言委员会]必须翻译的受支持的MediaWiki扩展使用所有消息的元消息组。",
+ "translategroupdescriptions-desc": "消息组说明[https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Translate 翻译]扩展所支持的产品"
+}
diff --git a/MLEB/Translate/i18n/groupdescriptions/zh-hant.json b/MLEB/Translate/i18n/groupdescriptions/zh-hant.json
new file mode 100644
index 00000000..73447d23
--- /dev/null
+++ b/MLEB/Translate/i18n/groupdescriptions/zh-hant.json
@@ -0,0 +1,64 @@
+{
+ "@metadata": {
+ "authors": [
+ "Cwlin0416",
+ "Justincheng12345",
+ "Liangent",
+ "Mark85296341",
+ "Simon Shek",
+ "Liuxinyu970226",
+ "LNDDYL"
+ ]
+ },
+ "bw-desc-freecol": "[[Translating:FreeCol|FreeCol]] 是一套回合制的策略遊戲",
+ "bw-desc-fudforum": "[[Translating:FUDforum|FUDforum]] 是一套以網頁為基礎的論壇系統",
+ "bw-desc-mantisbt": "[[Translating:MantisBT|MantisBT]] 是一套以網頁為基礎的問題追蹤系統。",
+ "bw-desc-openstreetmap": "有關 [[Translating:OpenStreetMap|OpenStreetMap]] 的訊息",
+ "bw-desc-osm-site": "[[Translating:OpenStreetMap|OpenStreetMap]] 是一套可以編輯世界地圖的程式",
+ "bw-desc-wikiblame": "[[Translating:WikiBlame|WikiBlame]] 一套可以快速找到 Wikimedia 頁面中某一個段落作者的工具",
+ "translate-group-desc-blockly": "[[Translating:Blockly|Blockly]] 的訊息群組",
+ "translate-group-desc-bluespice": "此訊息群組包含了 MediaWiki 的 [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:BlueSpice Blue Spice] 擴充套件中所有的訊息",
+ "translate-group-desc-collection": "此訊息群組包含了 MediaWiki 的 [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Collection Collection] 擴充套件中所有的訊息",
+ "translate-group-desc-eol": "[[Translating:EOL|生命大百科]]的訊息群組",
+ "translate-group-desc-etherpad-lite": "[[Translating:Etherpad lite|Etherpad lite]] 是一套即時協同作業的編輯程式",
+ "translate-group-desc-europeana": "[[Translating:Europeana|歐盟 1914-1918]] 是一個網站包含了有關第一次世界大戰中的故事、電影與歷史文物的內容。",
+ "translate-group-desc-flaggedrevs": "此訊息群組包含了 MediaWiki 的 [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:FlaggedRevs FlaggedRevs] 擴充套件中所有的訊息",
+ "translate-group-desc-fuel": "[[Translating:FUEL|FUEL]] 一套可讓軟體翻譯有更高一致性的軟體",
+ "translate-group-desc-huggle": "[[Translating:Huggle|Huggle]] 是快速比對差異瀏覽器應用程式,可於維基媒體項目遭到破壞時使用",
+ "translate-group-desc-ihris": "[[Translating:iHRIS|iHRIS]] 的訊息群組",
+ "translate-group-desc-kiwix": "[[Translating:Kiwix|Kiwix]] 的訊息群組",
+ "translate-group-desc-mantisbt-plugin-core": "[[Translating:MantisBT|MantisBT]] 的核心外掛程式",
+ "translate-group-desc-mathjax": "[[Translating:MathJax|MathJax]] 是一套跨瀏覽器,可在網頁上顯示數學符號的 JavaScript 程式庫。",
+ "translate-group-desc-mediawiki-core-branch": "用於 [[Translating:MediaWiki|MediaWiki]] 穩定版本的訊息",
+ "translate-group-desc-mediawikicore": "此訊息群組包含了目前使用在 Alpha 版本的 [[Translating:MediaWiki|MediaWiki]] ({{CURRENTVERSION}}) 中所使用的訊息",
+ "translate-group-desc-mediawikiextensions": "此訊息群組中包含了所有支援 [[Translating:MediaWiki|MediaWiki]] 的擴充套件中所有的訊息",
+ "translate-group-desc-mediawikimostused": "此訊息群組包含了在 [[Translating:MediaWiki|MediaWiki]] 中 [https://translatewiki.net/wiki/Most_often_used_messages_in_MediaWiki 500 條最常使用的訊息]",
+ "translate-group-desc-mifos": "[[Translating:Mifos|Mifos]] 是一套微型金融的資訊管理系統",
+ "translate-group-desc-nfcring-control": "[[Translating:NFC_Ring_Control|NFC 戒指控制]] 是一套手機應用程式可用來與 NFC 標籤互動",
+ "translate-group-desc-nocc": "[[Translating:NOCC|NOCC]] 是一套網頁郵件用戶端程式。",
+ "translate-group-desc-nodesc": "此訊息群組沒有內容描述",
+ "translate-group-desc-openimages-all": "這些訊息屬於 [[Translating:Open Images|Open Images]] 專案的一部份",
+ "translate-group-desc-potlatch2": "[[Translating:OpenStreetMap|Potlatch2]] 是一套以 Flash 為基礎的 OpenStreetMap 編輯器",
+ "translate-group-desc-pywikipedia": "[[Translating:Pywikibot|Pywikibot]] 是維基百科的編輯工具集",
+ "translate-group-desc-readerfeedback": "此訊息群組包含了 MediaWiki 的 [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:ReaderFeedback ReaderFeedback] 擴充套件中所有的訊息",
+ "translate-group-desc-semantic": "此訊息群組包含了 [https://semantic-mediawiki.org/ Semantic MediaWiki] 擴充套件中所有的訊息",
+ "translate-group-desc-translatablepages": "所有可翻譯的頁面",
+ "translate-group-desc-translate": "此訊息群組包含了 MediaWiki 的 [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:Translate 翻譯] 擴充套件中所有的訊息,在翻譯前請先讓您自己熟悉 [https://www.mediawiki.org/wiki/Help:Extension:Translate/Glossary glossary] 中的詞匯。",
+ "translate-group-desc-tsint": "用於 [[Translating:Intuition|Intuition]] 的訊息群組,是 [//tools.wmflabs.org/ Wikimedia Tool Labs] 工具的 i18n 系統 (<span class=\"plainlinks\">[[Translating talk:Intuition|協助翻譯]]</span>)",
+ "translate-group-desc-universallanguageselector": "此訊息群組包含了 MediaWiki 的 [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:UniversalLanguageSelector UniversalLanguageSelector] (ULS) 擴充套件及相關套件中所有的訊息",
+ "translate-group-desc-vicuna": "[[Translating:VicuñaUploader|VicuñaUploader]] 是一套可以上傳檔案到 Wikimedia Commons 及其他 Wikimedia 專案的工具",
+ "translate-group-desc-visualeditor": "此訊息群組包含了 MediaWiki 的 [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:VisualEditor VisualEditor] 擴充套件及相關套件中所有的訊息",
+ "translate-group-desc-waymarked-trails": "[[Translating:Waymarked Trails|Waymarked Trails]] 一套線上服務可以提供全世界健行、自行車、山地自行車與直排輪的路線。該服務使用 GNU GPL 授權條款。",
+ "translate-group-desc-waymarked-trails-help": "Waymarked Trails 網站的協助頁面:\nhttp://waymarkedtrails.org/help/about",
+ "translate-group-desc-wikiaextensions": "此訊息群組包含了所有 [http://www.wikia.com Wikia] 使用的 MediaWiki 擴充套件中所有的訊息",
+ "translate-group-desc-wikimania-scholarships-app": "用於 [https://scholarships.wikimedia.org/apply 維基媒體國際會議] 的訊息群組",
+ "translate-group-desc-wikimedia-mobile": "匯總訊息群組包含了 Wikimedia 專案中的所有手機應用程式",
+ "translate-group-desc-wikimedia-mobile-wikipedia": "[[Translating:WikipediaMobile|WikipediaMobile]] 是一套可以在手機與平板電腦上閱讀與貢獻 Wikipedia 文件的跨平台應用程式",
+ "translate-group-desc-wikimedia-mobile-wikipedia-android": "[[Translating:WikipediaMobile|Wikipedia Android]] 是一套專為 Android 所設計的維基百科手機應用程式",
+ "translate-group-desc-wikimedia-mobile-wikipedia-ios": "[[Translating:WikipediaMobile|Wikipedia iOS]] 是一套專為 iOS 所設計的維基百科手機應用程式",
+ "translate-group-desc-wikimedia-mobile-wikisource": "[[Translating:WikisourceMobile|WikisourceMobile]] 是一套可以在手機與平板電腦上閱讀與貢獻 Wikisource 文件的跨平台應用程式",
+ "translate-group-desc-wikimedia-mobile-wiktionary": "[[Translating:WiktionaryMobile|WiktionaryMobile]] 是一套可以在手機與平板電腦上閱讀與貢獻 Wiktionary 文件的跨平台應用程式",
+ "translate-group-desc-wikimediaextensions": "此訊息群組包含了所有[https://wikimediafoundation.org/ 維基媒體基金會]使用的 MediaWiki 擴充套件中所有的訊息",
+ "translate-group-desc-wikimediaextensions-main": "此訊息群組包含了所有 [https://meta.wikimedia.org/wiki/Special:MyLanguage/Language_committee Language committee] 使用的 MediaWiki 擴充套件中所有的訊息",
+ "translategroupdescriptions-desc": "有關目前 [https://mediawiki.org/wiki/Special:MyLanguage/Extension:Translate 翻譯] 擴充套件所支援產品的訊息群組內容描述。"
+}
diff --git a/MLEB/Translate/i18n/pagetranslation/af.json b/MLEB/Translate/i18n/pagetranslation/af.json
new file mode 100644
index 00000000..bc848e51
--- /dev/null
+++ b/MLEB/Translate/i18n/pagetranslation/af.json
@@ -0,0 +1,63 @@
+{
+ "@metadata": {
+ "authors": [
+ "Ansumang",
+ "Naudefj",
+ "පසිඳු කාවින්ද"
+ ]
+ },
+ "pagetranslation": "Bladsyvertaling",
+ "right-pagetranslation": "Merk weergawes van bladsye vir vertaling",
+ "tpt-desc": "Uitbreiding vir die vertaal van wikibladsye",
+ "tpt-section": "Vertaaleenheid $1",
+ "tpt-section-new": "Nuwe vertaaleenheid.\nNaam: $1",
+ "tpt-section-deleted": "Vertaaleenheid $1",
+ "tpt-template": "Bladsysjabloon",
+ "tpt-templatediff": "Die bladsysjabloon was gewysig.",
+ "tpt-diff-old": "Vorige teks",
+ "tpt-diff-new": "Nuwe teks",
+ "tpt-submit": "Merk die weergawe vir vertaling",
+ "tpt-sections-oldnew": "Nuwe en bestaande vertaaleenhede",
+ "tpt-sections-deleted": "Verwyderde vertaaleenhede",
+ "tpt-sections-template": "Vertaalbladsjabloon",
+ "tpt-action-nofuzzy": "Het vertalings ongeldig nie",
+ "tpt-badtitle": "Die naam verskaf ($1) is nie 'n geldige bladsynaam nie",
+ "tpt-nosuchpage": "Bladsy $1 bestaan nie.",
+ "tpt-oldrevision": "$2 is nie die nuutste weergawe van die bladsy [[:$1]] nie.\nSlegs die nuutste weergawe kan vir vertaling gemerk word.",
+ "tpt-notsuitable": "Die bladsy $1 is nie geskik om vir vertaling gemerk te word nie.\nSorg dat dit die etiket <nowiki><translate></nowiki> bevat en dat die sintaks daarvan korrek is.",
+ "tpt-saveok": "Die bladsy [[:$1]] is gemerk vir vertaling met $2 uitstaande {{PLURAL:$2|vertaaleenheid|vertaaleenhede}}.\nDie bladsy kan nou <span class=\"plainlinks\">[$3 vertaal]</span> word.",
+ "tpt-badsect": "\"$1\" is nie 'n geldige naam vir vertaaleenheid $2 nie.",
+ "tpt-showpage-intro": "Hieronder word nuwe, bestaande en verwyderde afdelings gelys.\nAlvorens u die weergawe vir vertaling merk, maak seker dat die veranderinge geminimeer word om onnodig werk vir vertalers te voorkom.",
+ "tpt-mark-summary": "Merk die weergawe vir vertaling",
+ "tpt-edit-failed": "Die bladsy \"$1\" kon nie bygewerk word nie.",
+ "tpt-already-marked": "Die nuutste weergawe van die bladsy is reeds gemerk vir vertaling.",
+ "tpt-unmarked": "Bladsy $1 is nie meer vir vertaling gemerk nie.",
+ "tpt-list-nopages": "Geen bladsye is vir vertaling gemerk of is reg om vir vertaling gemerk te word nie.",
+ "tpt-old-pages-title": "Bladsye in vertaling",
+ "tpt-other-pages-title": "Gebreekte bladsye",
+ "tpt-discouraged-pages-title": "ontmoedig bladsye",
+ "tpt-new-pages": "Hierdie {{PLURAL:$1|bladsy bevat|bladsye bevat}} teks met vertalings-etikette, maar geen weergawe van die {{PLURAL:$1|bladsy|bladsye}} is vir vertaling gemerk nie.",
+ "tpt-old-pages": "'n Weergawe van die {{PLURAL:$1|bladsy|bladsye}} is reeds vir vertaling gemerk.",
+ "tpt-rev-mark": "merk vir vertaling",
+ "tpt-rev-unmark": "verwyder van vertaling",
+ "tpt-rev-discourage": "ontmoedig",
+ "tpt-rev-encourage": "herstel",
+ "tpt-rev-mark-tooltip": "Merk die nuutste weergawe van hierdie bladsy vir vertaling.",
+ "tpt-rev-unmark-tooltip": "Verwyder hierdie bladsy van die vertaling.",
+ "tpt-rev-discourage-tooltip": "Ontmoedig verdere vertalings van hierdie bladsy.",
+ "tpt-rev-encourage-tooltip": "Herstel hierdie bladsy na normaal vertaling.",
+ "translate-tag-translate-link-desc": "Vertaal die bladsy",
+ "translate-tag-markthis": "Merk die bladsy vir vertaling",
+ "translate-tag-markthisagain": "Hierdie bladsy is <span class=\"plainlinks\">[$1 kere gewysig]</span> sedert dit laas <span class=\"plainlinks\">[$2 vir vertaling gemerk was]</span>.",
+ "translate-tag-hasnew": "Daar is <span class=\"plainlinks\">[$1 wysigings]</span> aan die bladsy gemaak wat nie vir vertaling gemerk is nie.",
+ "tpt-translation-intro": "Die bladsy is 'n <span class=\"plainlinks\">[$1 vertaalde weergawe]</span> van bladsy [[$2]]. Die vertaling van die bladsy is $3% voltooi.",
+ "tpt-languages-legend": "Ander tale:",
+ "tpt-target-page": "Hierdie bladsy kan nie handmatig gewysig word nie.\nDie bladsy is 'n vertaling van die bladsy [[$1]].\nDie vertaling kan bygewerk word via die [$2 vertaalgereedskap].",
+ "tpt-unknown-page": "Hierdie naamruimte is gereserveer vir die vertalings van bladsye.\nDie bladsy wat u probeer wysig kom nie ooreen met een wat vir vertaling gemerk is nie.",
+ "tpt-render-summary": "Besig met bewerkings vanweë 'n nuwe basisweergawe van die bronblad",
+ "tpt-download-page": "Eksporteer bladsy met vertalings",
+ "pt-shake-empty": "Leë afdeling vir merker $1.",
+ "pt-movepage-reason": "Rede:",
+ "pt-deletepage-current": "Bladsynaam:",
+ "pt-deletepage-reason": "Rede:"
+}
diff --git a/MLEB/Translate/i18n/pagetranslation/ar.json b/MLEB/Translate/i18n/pagetranslation/ar.json
new file mode 100644
index 00000000..91446d06
--- /dev/null
+++ b/MLEB/Translate/i18n/pagetranslation/ar.json
@@ -0,0 +1,73 @@
+{
+ "@metadata": {
+ "authors": [
+ "Meno25",
+ "OsamaK",
+ "ترجمان05",
+ "روخو"
+ ]
+ },
+ "pagetranslation": "ترجمة صفحة",
+ "right-pagetranslation": "عّلم نسخًا م هذه الصفحة للترجمة",
+ "tpt-desc": "امتداد لترجمة محتويات الصفحات",
+ "tpt-section": "وحدة الترجمة $1",
+ "tpt-section-new": "وحدة ترجمة جديدة.\nالاسم: $1",
+ "tpt-section-deleted": "وحدة الترجمة $1",
+ "tpt-template": "قالب صفحة",
+ "tpt-templatediff": "تغيّر قالب الصفحة.",
+ "tpt-diff-old": "نص سابق",
+ "tpt-diff-new": "نص جديد",
+ "tpt-submit": "علّم هذه النسخة للترجمة",
+ "tpt-sections-oldnew": "وحدات الترجمة الجديدة والموجودة",
+ "tpt-sections-deleted": "وحدات الترجمة المحذوفة",
+ "tpt-sections-template": "قالب صفحة ترجمة",
+ "tpt-badtitle": "اسم الصّفحة المعطى ($1) ليس عنوانا صحيحا",
+ "tpt-nosuchpage": "الصفحة $1 غير موجودة",
+ "tpt-oldrevision": "$2 ليست آخر نسخة للصّفحة [[:$1]].\nفقط آخر النسخ يمكن أن تؤشّر للترجمة.",
+ "tpt-notsuitable": "الصفحة $1 غير مناسبة للترجمة.\nتأكد أن لها وسم <nowiki><translate></nowiki> وأن لها صياغة صحيحة.",
+ "tpt-saveok": "الصفحة [[:$1]] تم التعليم عليها للترجمة ب $2 {{PLURAL:$2|وحدة ترجمة|وحدات ترجمة}}.\nالصفحة يمكن الآن <span class=\"plainlinks\">[$3 ترجمتها]</span>.",
+ "tpt-badsect": "\"$1\" ليس اسمًا صحيحًا لوحدة الترجمة $2.",
+ "tpt-showpage-intro": "أدناه تُسرد الأقسام الجديدة والموجودة والمحذوفة.\nقبل تعليم هذه النسخة للترجمة، تحقق من أن التغييرات على الأقسام مُقلّلة لتفادي العمل غير الضروري من المترجمين.",
+ "tpt-mark-summary": "علَّم هذه النسخة للترجمة",
+ "tpt-edit-failed": "تعذّر تحديث الصفحة: $1",
+ "tpt-already-marked": "آخر نسخة من هذه الصفحة مُعلّمة بالفعل للترجمة.",
+ "tpt-unmarked": "الصفحة $1 لم تعد مُعلّمة للترجمة",
+ "tpt-list-nopages": "لا صفحات مُعلّمة للترجمة أو جاهزة للتعليم للترجمة.",
+ "tpt-new-pages-title": "صفحات مقترحة للترجمة",
+ "tpt-old-pages-title": "صفحات تحت الترجمة",
+ "tpt-new-pages": "{{PLURAL:$1|هذه الصفحة تحتوي|هذه الصفحات تحتوي}} على نص بوسوم ترجمة، لكن لا نسخة من {{PLURAL:$1|هذه الصفحة|هذه الصفحات}} معلمة حاليا للترجمة.",
+ "tpt-old-pages": "إحدى نسخ {{PLURAL:$1||هذه الصفحة|هاتان الصفحتان|هذه الصفحات}} عُلّمت للترجمة.",
+ "tpt-select-prioritylangs-reason": "السبب:",
+ "tpt-rev-unmark": "إزالة هذه الصفحة من الترجمة",
+ "tpt-rev-encourage": "استرجاع",
+ "translate-tag-translate-link-desc": "ترجم هذه الصفحة",
+ "translate-tag-markthis": "علّم هذه الصفحة للترجمة",
+ "translate-tag-markthisagain": "هذه الصفحة بها <span class=\"plainlinks\">[$1 تغيير]</span> منذ تم <span class=\"plainlinks\">[$2 تعليمها للترجمة]</span> لآخر مرة.",
+ "translate-tag-hasnew": "هذه الصفحة تحتوي على <span class=\"plainlinks\">[$1 تغييرات]</span> غير معلمة للترجمة.",
+ "tpt-translation-intro": "هذه الصفحة هي <span class=\"plainlinks\">[$1 نسخة مترجمة]</span> لصفحة [[$2]] والترجمة مكتملة ومحدثة بنسبة $3%.",
+ "tpt-languages-legend": "لغات أخرى:",
+ "tpt-target-page": "لا يمكن تحديث هذه الصفحة يدويًا.\nهذه الصفحة ترجمة لصفحة [[$1]] ويمكن تحديث الترجمة باستخدام [$2 أداة الترجمة].",
+ "tpt-unknown-page": "هذا النطاق محجوز لترجمات صفحات المحتوى.\nالصفحة التي تحاول تعديلها لا يبدو أنها تتبع أي صفحة معلمة للترجمة.",
+ "tpt-render-summary": "تحديث لمطابقة نسخة صفحة المصدر الجديدة",
+ "tpt-download-page": "صدّر الصفحة مع الترجمات",
+ "tpt-aggregategroup-add": "أضف",
+ "tpt-aggregategroup-save": "احفظ",
+ "tpt-aggregategroup-new-name": "الاسم:",
+ "pt-movepage-block-tp-exists": "صفحة الهدف المترجمة [[:$2]] موجودة.",
+ "pt-movepage-list-pages": "قائمة الصفحات التي ستنقل",
+ "pt-movepage-list-translation": "صفحات الترجمة",
+ "pt-movepage-list-other": "صفحات فرعية أخرى",
+ "pt-movepage-current": "الاسم الحالي:",
+ "pt-movepage-new": "الاسم الجديد:",
+ "pt-movepage-reason": "السبب:",
+ "pt-movepage-subpages": "انقل جميع الصفحات الفرعية",
+ "pt-movepage-action-check": "تحقق اذا كان النقل ممكنا",
+ "pt-movepage-action-perform": "لا تنقل",
+ "pt-movepage-action-other": "تغيير الهدف",
+ "pt-deletepage-action-other": "غيّر الهدف",
+ "pt-deletepage-current": "اسم الصفحة:",
+ "pt-deletepage-reason": "السبب:",
+ "pt-deletepage-subpages": "أحذف جميع الصفحات الفرعية",
+ "pt-deletepage-list-translation": "صفحات الترجمة",
+ "pt-deletepage-list-other": "صفحات فرعية أخرى"
+}
diff --git a/MLEB/Translate/i18n/pagetranslation/arc.json b/MLEB/Translate/i18n/pagetranslation/arc.json
new file mode 100644
index 00000000..c31934ce
--- /dev/null
+++ b/MLEB/Translate/i18n/pagetranslation/arc.json
@@ -0,0 +1,9 @@
+{
+ "@metadata": {
+ "authors": [
+ "Basharh"
+ ]
+ },
+ "pagetranslation": "ܬܘܪܓܡܐ ܕܦܐܬܐ",
+ "aggregategroups": "ܐܠܐܡ ܟܢܘܫܬ̈ܐ"
+}
diff --git a/MLEB/Translate/i18n/pagetranslation/arz.json b/MLEB/Translate/i18n/pagetranslation/arz.json
new file mode 100644
index 00000000..fd060db6
--- /dev/null
+++ b/MLEB/Translate/i18n/pagetranslation/arz.json
@@ -0,0 +1,43 @@
+{
+ "@metadata": {
+ "authors": [
+ "Meno25"
+ ]
+ },
+ "pagetranslation": "ترجمه صفحة",
+ "right-pagetranslation": "عّلم نسخًا م هذه الصفحه للترجمة",
+ "tpt-desc": "امتداد لترجمه محتويات الصفحات",
+ "tpt-section": "وحده الترجمه $1",
+ "tpt-section-new": "وحده ترجمه جديده.\nالاسم: $1",
+ "tpt-section-deleted": "وحده الترجمه $1",
+ "tpt-template": "قالب صفحة",
+ "tpt-templatediff": "تغيّر قالب الصفحه.",
+ "tpt-diff-old": "نص سابق",
+ "tpt-diff-new": "نص جديد",
+ "tpt-submit": "علّم هذه النسخه للترجمة",
+ "tpt-sections-oldnew": "وحدات الترجمه الجديده والموجودة",
+ "tpt-sections-deleted": "وحدات الترجمه المحذوفة",
+ "tpt-sections-template": "قالب صفحه ترجمة",
+ "tpt-badtitle": "اسم الصّفحه المعطى ($1) ليس عنوانا صحيحا",
+ "tpt-oldrevision": "$2 ليست آخر نسخه للصّفحه [[:$1]].\nفقط آخر النسخ يمكن أن تؤشّر للترجمه.",
+ "tpt-notsuitable": "الصفحه $1 غير مناسبه للترجمه.\nتأكد أن لها وسم <nowiki><translate></nowiki> وأن لها صياغه صحيحه.",
+ "tpt-saveok": "الصفحه [[:$1]] تم التعليم عليها للترجمه ب $2 {{PLURAL:$2|وحده ترجمة|وحدات ترجمة}}.\nالصفحه يمكن الآن <span class=\"plainlinks\">[$3 ترجمتها]</span>.",
+ "tpt-badsect": "\"$1\" ليس اسمًا صحيحًا لوحده الترجمه $2.",
+ "tpt-showpage-intro": "أدناه تُسرد الأقسام الجديده والموجوده والمحذوفه.\nقبل تعليم هذه النسخه للترجمه، تحقق من أن التغييرات على الأقسام مُقلّله لتفادى العمل غير الضرورى من المترجمين.",
+ "tpt-mark-summary": "علَّم هذه النسخه للترجمة",
+ "tpt-edit-failed": "تعذّر تحديث الصفحة: $1",
+ "tpt-already-marked": "آخر نسخه من هذه الصفحه مُعلّمه بالفعل للترجمه.",
+ "tpt-list-nopages": "لا صفحات مُعلّمه للترجمه أو جاهزه للتعليم للترجمه.",
+ "tpt-new-pages": "{{PLURAL:$1|هذه الصفحه تحتوي|هذه الصفحات تحتوي}} على نص بوسوم ترجمه، لكن لا نسخه من {{PLURAL:$1|هذه الصفحة|هذه الصفحات}} معلمه حاليا للترجمه.",
+ "tpt-old-pages": "إحدى نسخ {{PLURAL:$1||هذه الصفحة|هاتان الصفحتان|هذه الصفحات}} عُلّمت للترجمه.",
+ "translate-tag-translate-link-desc": "ترجمه هذه الصفحة",
+ "translate-tag-markthis": "علّم هذه الصفحه للترجمة",
+ "translate-tag-markthisagain": "هذه الصفحه بها <span class=\"plainlinks\">[$1 تغيير]</span> منذ تم <span class=\"plainlinks\">[$2 تعليمها للترجمة]</span> لآخر مره.",
+ "translate-tag-hasnew": "هذه الصفحه تحتوى على <span class=\"plainlinks\">[$1 تغييرات]</span> غير معلمه للترجمه.",
+ "tpt-translation-intro": "هذه الصفحه هى <span class=\"plainlinks\">[$1 نسخه مترجمة]</span> لصفحه [[$2]] والترجمه مكتمله ومحدثه بنسبه $3%.",
+ "tpt-languages-legend": "لغات أخرى:",
+ "tpt-target-page": "لا يمكن تحديث هذه الصفحه يدويًا.\nهذه الصفحه ترجمه لصفحه [[$1]] ويمكن تحديث الترجمه باستخدام [$2 أداه الترجمة].",
+ "tpt-unknown-page": "هذا النطاق محجوز لترجمات صفحات المحتوى.\nالصفحه التى تحاول تعديلها لا يبدو أنها تتبع أى صفحه معلمه للترجمه.",
+ "tpt-render-summary": "تحديث لمطابقه نسخه صفحه المصدر الجديدة",
+ "tpt-download-page": "صدّر الصفحه مع الترجمات"
+}
diff --git a/MLEB/Translate/i18n/pagetranslation/as.json b/MLEB/Translate/i18n/pagetranslation/as.json
new file mode 100644
index 00000000..30db589c
--- /dev/null
+++ b/MLEB/Translate/i18n/pagetranslation/as.json
@@ -0,0 +1,35 @@
+{
+ "@metadata": {
+ "authors": [
+ "Bishnu Saikia",
+ "Chaipau"
+ ]
+ },
+ "pagetranslation": "পৃষ্ঠা ভাঙনি",
+ "tpt-template": "পৃষ্ঠা সাঁচ",
+ "tpt-diff-old": "আগৰ পাঠ্য",
+ "tpt-diff-new": "নতুন পাঠ্য",
+ "tpt-submit": "এই সংস্কৰণ ভাঙনিৰ বাবে বাচক",
+ "tpt-other-pages-title": "সংযোগহীন পৃষ্ঠাসমূহ",
+ "tpt-discouraged-pages-title": "নিৰুত্সাহজনক পৃষ্ঠাসমূহ",
+ "tpt-select-prioritylangs-reason": "কাৰণ:",
+ "tpt-sections-prioritylangs": "প্ৰাথমিক ভাষাসমূহ",
+ "tpt-rev-discourage": "নিৰুত্সাহ",
+ "tpt-rev-encourage": "পুনঃসংস্থাপন কৰক",
+ "translate-tag-translate-link-desc": "এই পৃষ্ঠা ভাঙনি কৰক",
+ "tpt-languages-legend": "অন্য ভাষা:",
+ "tpt-languages-zero": "এই ভাষাৰ অনুবাদ আৰম্ভ কৰক",
+ "tpt-discouraged-language-reason": "কাৰণ: $1",
+ "tpt-aggregategroup-add": "যোগ কৰক",
+ "tpt-aggregategroup-save": "সাঁচি থওক",
+ "tpt-aggregategroup-new-name": "নাম:",
+ "tpt-aggregategroup-new-description": "বিৱৰণ (বৈকল্পিক):",
+ "tpt-aggregategroup-invalid-group": "এই গোট পোৱা নগ’ল",
+ "pt-movepage-list-translation": "ভাঙনি পৃষ্ঠাসমূহ",
+ "pt-movepage-current": "সাম্প্ৰতিক নাম:",
+ "pt-movepage-new": "নতুন নাম:",
+ "pt-movepage-reason": "কাৰণ:",
+ "pt-movepage-action-perform": "স্থানান্তৰ নকৰিব",
+ "pt-deletepage-current": "পৃষ্ঠাৰ নাম:",
+ "pt-deletepage-reason": "কাৰণ:"
+}
diff --git a/MLEB/Translate/i18n/pagetranslation/ast.json b/MLEB/Translate/i18n/pagetranslation/ast.json
new file mode 100644
index 00000000..8f97cfb5
--- /dev/null
+++ b/MLEB/Translate/i18n/pagetranslation/ast.json
@@ -0,0 +1,197 @@
+{
+ "@metadata": {
+ "authors": [
+ "Esbardu",
+ "Xuacu"
+ ]
+ },
+ "pagetranslation": "Traducción de páxines",
+ "right-pagetranslation": "Marcar versiones de páxines pa traducir",
+ "action-pagetranslation": "alministrar les páxines traducibles",
+ "tpt-desc": "Estensión pa traducir páxines de conteníu",
+ "tpt-section": "Unidá de traducción $1",
+ "tpt-section-new": "Nueva unidá de traducción.\nNome: $1",
+ "tpt-section-deleted": "Unidá de traducción $1",
+ "tpt-template": "Plantía de páxina",
+ "tpt-templatediff": "La plantía de páxina camudó.",
+ "tpt-diff-old": "Testu anterior",
+ "tpt-diff-new": "Testu nuevu",
+ "tpt-submit": "Marcar esta versión pa traducir",
+ "tpt-sections-oldnew": "Unidaes de traducción nueves e esistentes",
+ "tpt-sections-deleted": "Unidaes de traducción desaniciaes",
+ "tpt-sections-template": "Plantía de páxina de traducción",
+ "tpt-action-nofuzzy": "Nun invalidar les traducciones",
+ "tpt-badtitle": "El nome que-y disti a la páxina (\"$1\") nun ye un títulu válidu",
+ "tpt-nosuchpage": "La páxina $1 nun esiste",
+ "tpt-oldrevision": "$2 nun y la cabera versión de la páxina [[:$1]].\nSólo les caberes versiones se puen marcar pa traducir.",
+ "tpt-notsuitable": "La páxina \"$1\" nun ye válida pa traducir.\nComprueba que tenga les etiquetes <nowiki><translate></nowiki> y una sintaxis válida.",
+ "tpt-saveok": "A páxina [[:$1]] marcose pa traducir con {{PLURAL:$2|una unidá de traducción|$2 unidaes de traducción}}.\nLa páxina agora se pue <span class=\"plainlinks\">[$3 traducir]</span>.",
+ "tpt-offer-notify": "Pue <span class=\"plainlinks\">[$1 avisar a los traductores]</span> sobre esta páxina.",
+ "tpt-badsect": "\"$1\" nun ye un nome válidu pa la unidá de traducción $2.",
+ "tpt-showpage-intro": "Abaxo ta la llista de les unidaes de traducción nueves, esistentes y desaniciaes.\nEnantes de marcar esta versión pa traducir, comprueba que los cambios fechos nes unidaes de traducción seyan mínimos pa evitar trabayu innecesariu de los traductores.",
+ "tpt-mark-summary": "Marcó esta versión pa traducir",
+ "tpt-edit-failed": "Nun se pudo anovar la páxina: $1",
+ "tpt-duplicate": "El nome de la unidá de traducción $1 s'utiliza más d'una vegada.",
+ "tpt-already-marked": "La cabera versión d'esta páxina yá se marcó pa traducir.",
+ "tpt-unmarked": "La páxina \"$1\" yá nun ta marcada pa traducir.",
+ "tpt-list-nopages": "Nun hai páxina dala marcada pa traducir nin preparada pa marcase pa traducir.",
+ "tpt-new-pages-title": "Páxines propuestes pa traducción",
+ "tpt-old-pages-title": "Páxines en traducción",
+ "tpt-other-pages-title": "Páxines frañaes",
+ "tpt-discouraged-pages-title": "Páxines desaconseyaes",
+ "tpt-new-pages": "{{PLURAL:$1|Esta páxina contién|Estes páxines contienen}} testu con etiquetes de traducción, pero denguna versión {{PLURAL:$1|d'esta páxina|d'estes páxines}} ta marcada pa traducir anguaño.",
+ "tpt-old-pages": "Dalguna versión {{PLURAL:$1|d'esta páxina|d'estes páxines}} se marcó pa traducir.",
+ "tpt-other-pages": "Hai {{PLURAL:$1|una versión vieya d'esta páxina marcada|delles versiones vieyes d'estes páxines marcaes}} pa traducir, pero {{PLURAL:$1|a cabera versión|les caberes versiones}} nun se {{PLURAL:$1|pue|pueden}} marcar pa traducir.",
+ "tpt-discouraged-pages": "Ta desaconseyao facer más traducciones {{PLURAL:$1|d'esta páxina|d'estes páxines}}.",
+ "tpt-select-prioritylangs": "Llista de códigos de les llingües prioritaries separtaos por comes:",
+ "tpt-select-prioritylangs-force": "Torgar les traducciones a llingües distintes de les prioritaries",
+ "tpt-select-prioritylangs-reason": "Motivu:",
+ "tpt-sections-prioritylangs": "Llingües prioritaries",
+ "tpt-rev-mark": "marcar pa traducir",
+ "tpt-rev-unmark": "desaniciar de la traducción",
+ "tpt-rev-discourage": "desaconseyar",
+ "tpt-rev-encourage": "restaurar",
+ "tpt-rev-mark-tooltip": "Marcar la cabera versión d'esta páxina pa traducir.",
+ "tpt-rev-unmark-tooltip": "Desaniciar esta páxina de la traducción.",
+ "tpt-rev-discourage-tooltip": "Desaconseyar más traducciones d'esta páxina.",
+ "tpt-rev-encourage-tooltip": "Restaurar esta páxina a traducción normal.",
+ "translate-tag-translate-link-desc": "Traducir esta páxina",
+ "translate-tag-markthis": "Marcar esta páxina pa traducir",
+ "translate-tag-markthisagain": "Esta páxina tien <span class=\"plainlinks\">[$1 cambios]</span> dende que se <span class=\"plainlinks\">[$2 marcó pa traducir]</span> la última vegada.",
+ "translate-tag-hasnew": "Esta páxina contién <span class=\"plainlinks\">[$1 cambios]</span> que nun tan marcaos pa traducir.",
+ "tpt-translation-intro": "Esta páxina ye una <span class=\"plainlinks\">[$1 versión traducida]</span> de la páxina [[$2]] y la traducción ta completada nún $3%.",
+ "tpt-languages-legend": "Otres llingües:",
+ "tpt-languages-zero": "Principiar la traducción nesta llingua",
+ "tpt-languages-nonzero": "$1 ($2% traducío)",
+ "tpt-tab-translate": "Traducir",
+ "tpt-target-page": "Esta páxina nun se pue anovar manualmente.\nEsta páxina ye una traducción de la páxina [[$1]] y la traducción pue anovase usando [$2 la ferramienta de traducción].",
+ "tpt-unknown-page": "Esti espaciu de nomes ta acutáu pa les traducciones de les páxines de conteníu.\nLa páxina que tas intentando editar paez que nun correspuende con denguna páxina marcada pa traducir.",
+ "tpt-translation-restricted": "Un alministrador de traducciones torgó la traducción d'esta páxina a esta llingua.\n\nMotivu: $1",
+ "tpt-discouraged-language-force-header": "Esta páxina nun pue traducise al $1.",
+ "tpt-discouraged-language-force-content": "Un alministrador de traducciones decidió qu'esta páxina sólo pue traducise al $1.",
+ "tpt-discouraged-language-header": "La traducción al $1 nun ye prioritaria pa esta páxina.",
+ "tpt-discouraged-language-content": "Un alministrador de traducciones decidió concentrar el trabayu de traducción nel $1.",
+ "tpt-discouraged-language-force": "<strong>Esta páxina nun pue traducise al $2.</strong>\n\nUn alministrador de traducciones decidió qu'esta páxina sólo pue traducise al $3.",
+ "tpt-discouraged-language": "<strong>La traducción al $2 nun ye una prioridá pa esta páxina.</strong>\n\nUn alministrador de traducción decidió centrar l'esfuerzu de traducción en $3.",
+ "tpt-discouraged-language-reason": "Motivu: $1",
+ "tpt-priority-languages": "Un alministrador de traducciones definió les llingües prioritaries d'esti grupu como $1.",
+ "tpt-render-summary": "Anovando pa casar cola nueva versión de la páxina orixinal",
+ "tpt-download-page": "Esportar la páxina con traducciones",
+ "aggregategroups": "Grupos d'agregación",
+ "tpt-aggregategroup-add": "Amestar",
+ "tpt-aggregategroup-save": "Guardar",
+ "tpt-aggregategroup-add-new": "Amestar un nuevu grupu d'agregación",
+ "tpt-aggregategroup-new-name": "Nome:",
+ "tpt-aggregategroup-new-description": "Descripción (opcional):",
+ "tpt-aggregategroup-remove-confirm": "¿Tas seguru de que quies desaniciar esti grupu agregáu?",
+ "tpt-aggregategroup-invalid-group": "El grupu nun esiste",
+ "tpt-aggregategroup-edit-name": "Nome:",
+ "tpt-aggregategroup-edit-description": "Descripción:",
+ "tpt-aggregategroup-update": "Guardar",
+ "tpt-aggregategroup-update-cancel": "Encaboxar",
+ "tpt-invalid-group": "Grupu inválidu",
+ "pt-parse-open": "Etiqueta &lt;translate> desequilibrada.\nPlantía de traducción: <pre>$1</pre>",
+ "pt-parse-close": "Etiqueta &lt;/translate> desequilibrada.\nPlantía de traducción: <pre>$1</pre>",
+ "pt-parse-nested": "Nun se permiten unidaes de traducción &lt;translate> añeraes.\nTestu de la etiqueta: <pre>$1</pre>",
+ "pt-shake-multiple": "Marcadores d'unidá de traducción múltiples pa una unidá de traducción.\nTestu de la unidá de traducción: <pre>$1</pre>",
+ "pt-shake-position": "Marcadores d'unidá de traducción en posición inesperada.\nTestu de la unidá de traducción: <pre>$1</pre>",
+ "pt-shake-empty": "Unidá de traducción balera pal marcador «$1».",
+ "log-description-pagetranslation": "Rexistru de les aiciones rellacionaes col sistema de traducción de páxines",
+ "log-name-pagetranslation": "Rexistru de traducción de páxines",
+ "logentry-pagetranslation-mark": "$1 {{GENDER:$2|marcó}} $3 pa traducir",
+ "logentry-pagetranslation-unmark": "$1 {{GENDER:$2|quitó}} $3 de les páxines a traducir",
+ "logentry-pagetranslation-moveok": "$1 {{GENDER:$2|completó}}'l renomáu de la páxina traducible $3 a $4",
+ "logentry-pagetranslation-movenok": "$1 {{GENDER:$2|alcontróse}} un problema al mover $3 a $4",
+ "logentry-pagetranslation-deletefok": "$1 {{GENDER:$2|completó}}'l desaniciu de la páxina traducible $3",
+ "logentry-pagetranslation-deletefnok": "$1 {{GENDER:$2|nun pudo}} desaniciar $3 que pertenez a la páxina traducible $4",
+ "logentry-pagetranslation-deletelok": "$1 {{GENDER:$2|completó}}'l desaniciu de la páxina de traducción $3",
+ "logentry-pagetranslation-deletelnok": "$1 {{GENDER:$2|nun pudo}} desaniciar $3 que pertenez a la páxina de traducción $4",
+ "logentry-pagetranslation-encourage": "$1 {{GENDER:$2|afaló}} la traducción de $3",
+ "logentry-pagetranslation-discourage": "$1 {{GENDER:$2|desaconseyó}} traducir $3",
+ "logentry-pagetranslation-prioritylanguages-unset": "$1 {{GENDER:$2|desanició}} les llingües prioritaries de la páxina traducible $3",
+ "logentry-pagetranslation-prioritylanguages": "$1 {{GENDER:$2|configuró}} les llingües prioritaries pa la páxina traducible $3 a $5",
+ "logentry-pagetranslation-prioritylanguages-force": "$1 {{GENDER:$2|llimitó}} les llingües pa la páxina traducible $3 a $5",
+ "logentry-pagetranslation-associate": "$1 {{GENDER:$2|amestó}} la páxina traducible $3 al grupu agregáu $4",
+ "logentry-pagetranslation-dissociate": "$1 {{GENDER:$2|desanició}} la páxina traducible $3 del grupu agregáu $4",
+ "pt-movepage-title": "Treslladar la páxina traducible $1",
+ "pt-movepage-blockers": "Nun se pue treslladar la páxina traducible a un nome nuevu {{PLURAL:$1|pol siguiente error|polos siguientes errores}}:",
+ "pt-movepage-block-base-exists": "La páxina traducible de destín «[[:$1]]» yá esiste.",
+ "pt-movepage-block-base-invalid": "El nome de la páxina traducible de destín nun ye un títulu válidu.",
+ "pt-movepage-block-tp-exists": "La páxina de traducción de destín [[:$2]] yá esiste.",
+ "pt-movepage-block-tp-invalid": "El títulu de la páxina de traducción de destín pa [[:$1]] sedría inválidu (¿demasiao llargu?).",
+ "pt-movepage-block-section-exists": "La páxina de destín [[:$2]] de la unidá de traducción yá esiste.",
+ "pt-movepage-block-section-invalid": "El títulu de la páxina de destín pa «[[:$1]]» de la unidá de traducción sedría inválidu (¿demasiao llargu?).",
+ "pt-movepage-block-subpage-exists": "La subpáxina de destín [[:$2]] yá esiste.",
+ "pt-movepage-block-subpage-invalid": "El títulu de la subpáxina de destín pa [[:$1]] sedría inválidu (¿demasiao llargu?).",
+ "pt-movepage-list-pages": "Llista de páxines a treslladar",
+ "pt-movepage-list-translation": "{{PLURAL:$1|Páxina|Páxines}} de traducción",
+ "pt-movepage-list-section": "{{PLURAL:$1|Páxina|Páxines}} de la unidá de traducción",
+ "pt-movepage-list-other": "{{PLURAL:$1|Otra subpáxina|Otres subpáxines}}",
+ "pt-movepage-list-count": "En total $1 {{PLURAL:$1|páxina|páxines}} a treslladar.",
+ "pt-movepage-legend": "Treslladar la páxina traducible",
+ "pt-movepage-current": "Nome actual:",
+ "pt-movepage-new": "Nome nuevu:",
+ "pt-movepage-reason": "Motivu:",
+ "pt-movepage-subpages": "Treslladar toles subpáxines",
+ "pt-movepage-action-check": "Comprobar si'l treslláu ye posible",
+ "pt-movepage-action-perform": "Facer el treslláu",
+ "pt-movepage-action-other": "Camudar el destín",
+ "pt-movepage-intro": "Esta páxina especial te permite treslladar páxines que tan marcaes pa traducir.\nL'aición de treslláu nun sedrá inmediata, porque ye necesario mover munches páxines.\nMentanto se treslladen les páxines, nun ye posible interactuar coles mesmes.\nLos fallos quedarán rexistraos nel [[Special:Log/pagetranslation|rexistru de traducción de páxines]] y tendrán de reparase a mano.",
+ "pt-movepage-logreason": "Parte de la páxina traducible $1.",
+ "pt-movepage-started": "La páxina base ta treslladada.\nPor favor, mira nel [[Special:Log/pagetranslation|rexistru de traducción de páxines]] pa ver los errores y mensaxe de completáu.",
+ "pt-locked-page": "Esta páxina ta bloquiada porque ta treslladandose la páxina traducible.",
+ "pt-deletepage-lang-title": "Desaniciando la páxina de traducción $1.",
+ "pt-deletepage-full-title": "Desaniciando la páxina traducible $1.",
+ "pt-deletepage-invalid-title": "La páxina especificada nun ye válida.",
+ "pt-deletepage-invalid-text": "La páxina especificada nun ye una páxina traducible nin una páxina de traducción.",
+ "pt-deletepage-action-check": "Llista de páxines a desaniciar",
+ "pt-deletepage-action-perform": "Facer el desaniciu",
+ "pt-deletepage-action-other": "Camudar el destín",
+ "pt-deletepage-lang-legend": "Desaniciar la páxina de traducción",
+ "pt-deletepage-full-legend": "Desaniciar la páxina traducible",
+ "pt-deletepage-any-legend": "Desaniciar la páxina traducible o la páxina de traducción",
+ "pt-deletepage-current": "Nome de la páxina:",
+ "pt-deletepage-reason": "Motivu:",
+ "pt-deletepage-subpages": "Desaniciar toles subpáxines",
+ "pt-deletepage-list-pages": "Llista de páxines a desaniciar",
+ "pt-deletepage-list-translation": "Páxines de traducción",
+ "pt-deletepage-list-section": "Páxines de la unidá de traducción",
+ "pt-deletepage-list-other": "Otres subpáxines",
+ "pt-deletepage-list-count": "En total $1 {{PLURAL:$1|páxina|páxines}} a desaniciar.",
+ "pt-deletepage-full-logreason": "Parte de la páxina traducible $1.",
+ "pt-deletepage-lang-logreason": "Parte de la páxina de traducción $1.",
+ "pt-deletepage-started": "Por favor, mira nel [[Special:Log/pagetranslation|rexistru de traducción de páxines]] pa ver los errores y mensaxe de completáu.",
+ "pt-deletepage-intro": "Esta páxina especial te permite desaniciar una páxina traducible entera o una páxina individual de traducción a una llingua.\nL'aición de desaniciu nun sedrá inmediata, porque tamién se desaniciarán toles páxines que dependan d'elles.\nLos fallos quedarán rexistraos nel [[Special:Log/pagetranslation|rexistru de traducción de páxines]] y tendrán de reparase a mano.",
+ "pagemigration": "Migración de la páxina de traducción",
+ "pagemigration-summary": "Especifica una páxina de traducción y restaura cualquier traducción fecha antes de que s'activara nesa páxina el sistema Translate.",
+ "pm-import-button-label": "Importar",
+ "pm-savepages-button-label": "Guardar",
+ "pm-cancel-button-label": "Encaboxar",
+ "pm-pagename-placeholder": "Escribi'l nome de la páxina",
+ "pm-langcode-placeholder": "Códigu de llingua",
+ "pm-page-does-not-exist": "$1 nun esiste",
+ "pm-old-translations-missing": "$1 nun contién traducciones antigües",
+ "pm-extra-units-warning": "Pue haber otres unidaes presentes. Por favor, casa correutamente les unidaes d'orixe coles de traducción",
+ "pm-pagename-missing": "Escribi'l nome de la páxina",
+ "pm-langcode-missing": "Escribi'l códigu de llingua",
+ "pm-add-icon-hover-text": "Amiesta una unidá abaxo",
+ "pm-swap-icon-hover-text": "Cambiar cola unidá d'abaxo",
+ "pm-delete-icon-hover-text": "Desaniciar unidá",
+ "pm-pagetitle-invalid": "Escribi un títulu de páxina válidu",
+ "pm-summary-import": "Traducción importada usando [[Special:PageMigration|migración de páxina]]",
+ "tpt-translate-title": "Permitir traducir el títulu de la páxina",
+ "pp-save-summary": "Preparada la páxina pa traducción",
+ "pagepreparation": "Preparar la páxina pa traducción",
+ "pp-pagename-placeholder": "Escribi'l nome de la páxina",
+ "pp-prepare-button-label": "Preparar",
+ "pp-save-button-label": "Guardar",
+ "pp-save-message": "Guardóse la páxina. Pues [$1 editala].",
+ "pp-prepare-message": "Preparóse la páxina pa traducción. Mira les diferencies más abaxo. ¡Fai clic nel botón «{{int:pp-save-button-label}}» si ta correuto!",
+ "pp-already-prepared-message": "Paez que la páxina yá se preparó pa traducir. Nun hai cambios comparando cola versión anterior.",
+ "pp-pagename-missing": "Escribi'l nome de la páxina",
+ "pp-diff-old-header": "Testu fonte",
+ "pp-diff-new-header": "Testu preparáu",
+ "tpt-unlink-confirm": "Confirma que realmente quies desaniciar esta páxina del sistema de traducción.\nEl selector de llingua y los nomes traducíos de la páxina dexarán de funcionar.\nLes páxines de traducción podrán editase.",
+ "tpt-unlink-button": "Desaniciar de la traducción",
+ "tpt-unlink-summary": "Páxina desaniciada de la traducción."
+}
diff --git a/MLEB/Translate/i18n/pagetranslation/av.json b/MLEB/Translate/i18n/pagetranslation/av.json
new file mode 100644
index 00000000..225c1a9d
--- /dev/null
+++ b/MLEB/Translate/i18n/pagetranslation/av.json
@@ -0,0 +1,12 @@
+{
+ "@metadata": {
+ "authors": [
+ "Gazimagomedov"
+ ]
+ },
+ "tpt-invalid-group": "Данде кколареб къокъа",
+ "pp-prepare-button-label": "ХIадурабизе",
+ "pp-save-button-label": "ЦIунизе",
+ "pp-diff-old-header": "Бахчараб текст",
+ "pp-diff-new-header": "ХIадурараб текст"
+}
diff --git a/MLEB/Translate/i18n/pagetranslation/az.json b/MLEB/Translate/i18n/pagetranslation/az.json
new file mode 100644
index 00000000..31584727
--- /dev/null
+++ b/MLEB/Translate/i18n/pagetranslation/az.json
@@ -0,0 +1,43 @@
+{
+ "@metadata": {
+ "authors": [
+ "Cekli829",
+ "Khan27",
+ "Wertuose"
+ ]
+ },
+ "pagetranslation": "Tərcümə səhifəsi",
+ "right-pagetranslation": "Tərcümə üçün səhifənin versiyalarını işarələ",
+ "action-pagetranslation": "tərcümə oluna bilən səhifələri idarə et",
+ "tpt-desc": "Məzmun səhifələrin tərcüməsi üçün əlavə olundu",
+ "tpt-section": "Tərcümə bölümü $1",
+ "tpt-section-new": "Yeni tərcümə bölümü.\nAd: $1",
+ "tpt-section-deleted": "Tərcümə bölümü $1",
+ "tpt-template": "Səhifə şablonu",
+ "tpt-templatediff": "Səhifə şablonu dəyişdirildi.",
+ "tpt-diff-old": "Əvvəlki mətn",
+ "tpt-diff-new": "Yeni mətn",
+ "tpt-submit": "Bu versiyanı tərcümə üçün işarələ",
+ "tpt-sections-oldnew": "Yeni və mövcud tərcümə bölümləri",
+ "tpt-sections-deleted": "Tərcümə bölümləri silindi",
+ "tpt-sections-template": "Tərcümə səhifəsi şablonu",
+ "tpt-action-nofuzzy": "Tərcümələri etibarsız etməyin",
+ "tpt-badtitle": "Verilmiş səhifə adı ($1) etibarlı ad deyil",
+ "tpt-nosuchpage": "$1 səhifəsi mövcud deyil",
+ "tpt-oldrevision": "$2 [[:$1]] səhifəsinin son versiyası deyil.\nYalnız ən son versiyalar tərcümə üçün işarə oluna bilər.",
+ "tpt-languages-nonzero": "$1 ($2% tərcümə edilib)",
+ "tpt-discouraged-language-reason": "Təsvir: $1",
+ "tpt-download-page": "Tərcüməli səhifələri köçür",
+ "aggregategroups": "Aqreqat qrupları",
+ "tpt-aggregategroup-add": "Əlavə et",
+ "tpt-aggregategroup-save": "Saxla",
+ "tpt-aggregategroup-add-new": "Yeni aqreqat qrupu əlavə et",
+ "tpt-aggregategroup-new-name": "Ad:",
+ "tpt-aggregategroup-new-description": "Açıqlama (istəyə bağlı):",
+ "tpt-aggregategroup-remove-confirm": "Bu aqreqat qrupunu silmək istədiyindən əminsən?",
+ "tpt-aggregategroup-invalid-group": "Qrup mövcud deyil",
+ "pt-movepage-new": "Yeni ad:",
+ "pt-movepage-reason": "Səbəb:",
+ "pt-deletepage-current": "Səhifə adı:",
+ "pt-deletepage-reason": "Səbəb:"
+}
diff --git a/MLEB/Translate/i18n/pagetranslation/azb.json b/MLEB/Translate/i18n/pagetranslation/azb.json
new file mode 100644
index 00000000..822e0941
--- /dev/null
+++ b/MLEB/Translate/i18n/pagetranslation/azb.json
@@ -0,0 +1,140 @@
+{
+ "@metadata": {
+ "authors": [
+ "Ebrahimi-amir",
+ "Mousa"
+ ]
+ },
+ "pagetranslation": "صحیفه چئویرمه‌سی",
+ "right-pagetranslation": "صحیفه‌لرین نوسخه‌لرینی چئویرمک اوچون نیشانلا",
+ "action-pagetranslation": "چئویرمه‌لی صحیفه‌لری ایداره ائت",
+ "tpt-desc": "مقاله‌لری چئویرمک اوچون اوزانتی",
+ "tpt-section": "چئویرمه بیریمی $1",
+ "tpt-section-new": "یئنی چئویرمه بیریمی.\nآد: $1",
+ "tpt-section-deleted": "چئویرمه بیریمی $1",
+ "tpt-template": "صحیفه شابلونو",
+ "tpt-templatediff": "صحیفه شابلونو دَییشدیریلیب‌دیر.",
+ "tpt-diff-old": "قاباقکی یازی",
+ "tpt-diff-new": "یئنی یازی",
+ "tpt-submit": "بو نوسخه‌نی چئویرمگه نیشانلا",
+ "tpt-sections-oldnew": "یئنی و اولان چئویرمه بیریملری",
+ "tpt-sections-deleted": "سیلینمیش چئویرمه بیریملری",
+ "tpt-sections-template": "چئویرمک صحیفه‌سی شابلونو",
+ "tpt-action-nofuzzy": "چئویرمه‌لری اعتیبارسیز ائتمه",
+ "tpt-badtitle": "وئریلمیش صحیفه آدی ($1) گئچرلی بیر باشلیق دئییل",
+ "tpt-nosuchpage": "$1 صحیفه‌سی یوخدور",
+ "tpt-oldrevision": "$2، [[:$1]] صحیفه‌سینین سون نوسخه‌سی دئییل.\nیالنیز سون وئرسیالاری چئویرمگه نیشانلاماق اولا بیلر.",
+ "tpt-notsuitable": "$1 صحیفه‌سی چئویرمگه اویغون دئییل.\nآرخایین اولون اونون <nowiki><translate></nowiki> اِتیکِتلری و گئچرلی سینتکسی واردیر.",
+ "tpt-saveok": "[[:$1]] صحیفه‌سی {{PLURAL:$2|بیر|$2}} چئویرمک بیریمی‌له چئویرمگه نیشانلانیب‌دیر.\nبو صحیفه‌نی ایندی <span class=\"plainlinks\">[$3 چئویرمک اولا بیلر]</span>.",
+ "tpt-badsect": "$2 چئویرمک بیریمی اوچون «$1» اویغون آد دئییل.",
+ "tpt-showpage-intro": "آشاغیدا یئنی، اولان و سیلینن چئویرمه بیریملری لیست اولوبلار.\nبو نوسخه‌نی چئویرمگه نیشانلاماقدان قاباق، باخین کی چئویرمک بیریملرینه اولان دَییشیکلیکلر ان آز اولسون کی چئویرنلره آرتیق گرکسیز ایشین قاباغی آلینسین.",
+ "tpt-mark-summary": "بو نوسخه‌نی چئویرمگه نیشانلادی",
+ "tpt-edit-failed": "صحیفه گونجل‌لننمه‌دی: $1",
+ "tpt-duplicate": "$1 چئویرمک بیریمی آدی بیر دفعه‌دن چوخ ایشلنیب‌دیر.",
+ "tpt-already-marked": "بو صحیفه‌نین سون نوسخه‌سی قاباقجادان چئویرمگه نیشانلانیب‌دیر.",
+ "tpt-unmarked": "$1 صحیفه‌سی داها چئویرمگه نیشانلانماییب‌دیر.",
+ "tpt-list-nopages": "هئچ بیر صحیفه چئویرمگه نیشانلانماییب‌دیر یادا چئویرمگه حاضیر دئییل.",
+ "tpt-new-pages-title": "چئویرمگه اؤنریلن صحیفه‌لر",
+ "tpt-old-pages-title": "چئویرمه‌ده صحیفه‌لر",
+ "tpt-other-pages-title": "سینمیش صحیفه‌لر",
+ "tpt-discouraged-pages-title": "چئویرمه‌سی اؤنریلمه‌ین صحیفه‌لر",
+ "tpt-new-pages": "بو {{PLURAL:$1|صحیفه‌ده|صحیفه‌لرده}} چئویرمک اِتیکِتلری اولان یازیلار واردیر، اما ایندی بو {{PLURAL:$1|صحیفه‌نین|صحیفه‌لرین}} هئچ بیر {{PLURAL:$1|نوسخه‌سی|نوسخه‌لری}} چئویرمگه نیشانلانماییب‌دیر.",
+ "tpt-old-pages": "بو {{PLURAL:$1|صحیفه‌نین|صحیفه‌لرین}} بعضی نوسخه‌لری چئویرمگه نیشانلانیب‌دیر.",
+ "tpt-other-pages": "بو {{PLURAL:$1|صحیفه‌نین بیر اسکی نوسخه‌سی|صحیفه‌لرین اسکی نوسخه‌لری}} چئویرمگه نیشانلانیب‌دیر،\nاما سون {{PLURAL:$1|نوسخه چئویرمگه نیشانلانا بیلمز|نوسخه‌لر چئویرمگه نیشانلانا بیلمزلر}}.",
+ "tpt-discouraged-pages": "بو {{PLURAL:$1|صحیفه‌نین|صحیفه‌لرین}} داها چئویرمگی توصیه اولونمور.",
+ "tpt-select-prioritylangs": "کاما ایله آیریلمیش اؤنجه‌لیک دیل کودلاری:",
+ "tpt-select-prioritylangs-force": "اؤنجه‌لیک دیل‌لردن سونراکی دیل‌لره چئویرمه‌نین قاباغینی آل",
+ "tpt-select-prioritylangs-reason": "ندن:",
+ "tpt-sections-prioritylangs": "اؤنجه‌لیک دیل‌لری",
+ "tpt-rev-mark": "چئویرمگه نیشانلا",
+ "tpt-rev-unmark": "چئویرمک‌دن سیل",
+ "tpt-rev-discourage": "توصیه ائتمه",
+ "tpt-rev-encourage": "قایتار",
+ "tpt-rev-mark-tooltip": "بو صحیفه‌نین سون نوسخه‌سینی چئویرمگه نیشانلا.",
+ "tpt-rev-unmark-tooltip": "بو صحیفه‌نی چئویرمک‌دن سیل.",
+ "tpt-rev-discourage-tooltip": "بو صحیفه‌یه داها آرتیق چئویرمگی توصیه ائتمه.",
+ "tpt-rev-encourage-tooltip": "بو صحیفه‌نی نورمال چئویرمگه قایتار.",
+ "translate-tag-translate-link-desc": "یو لاییحه‌نی چئویر",
+ "translate-tag-markthis": "بو صحیفه‌نی چئویرمگه نیشانلا",
+ "translate-tag-markthisagain": "بو صحیفه‌نین سون دفعه <span class=\"plainlinks\">[$2 چئویرمگه نیشانلان]</span>اندان بویانا <span class=\"plainlinks\">[$1 دَییشیکلیکلر]</span>ی واردیر.",
+ "translate-tag-hasnew": "بو صحیفه‌نین <span class=\"plainlinks\">[$1 دَییشیکلیکلری]</span> واردیر کی چئویرمگه نیشانلانماییب‌لار.",
+ "tpt-translation-intro": "بو صحیفه [[$2]] صحیفه‌سینین <span class=\"plainlinks\">[$1 چئویریلمیش نوسخه‌سی]</span>‌دیر و $3٪ چئویرمگی قاباغا گئدیب‌دیر.",
+ "tpt-languages-legend": "آیری دیل‌لر:",
+ "tpt-languages-zero": "بو دیله چئویرمگه باشلا",
+ "tpt-target-page": "بو صحیفه‌نی ال ایله گونج‌لَمک اولماز.\nبو صحیفه [[$1]] صحیفه‌سینین چئویرمه‌سیدیر و [$2 چئویرمک آراجی] ایله چئویریله بیلر.",
+ "tpt-unknown-page": "بو آدفضاسی مقاله‌لری چئویرمگه رِزِرو اولوب‌دور.\nسیز چئویرمگه چالیشدیغینیز صحیفه، هئچ بیر چئویرمگه نیشانلانمیش صحیفه‌یه مطابق نظره گلمیر.",
+ "tpt-translation-restricted": "بو صحیفه‌نین بو دیله چئویرمه‌سی بیر چئویرمک ایداره‌چیسی ایله قاباغی آلینیب‌دیر.\n\nندن: $1",
+ "tpt-discouraged-language-force": "<strong>بو صحیفه $2-ه چئویریله بیلمز.</strong>\n\nبیر چئویرمک ایداره‌چیسی بئله قرار آلیب کی بو صحیفه یالنیز $3-ه چئویریله بیلر.",
+ "tpt-discouraged-language": "<strong>بو صحیفه‌نی $2-ه چئویرمک بیر اؤنجه‌لیک دئییل.</strong>\n\nبیر چئویرمک ایداره‌چیسی بئله قرار آلیب کی چئویرمک تمرکزی $3-ه اولسون.",
+ "tpt-discouraged-language-reason": "ندن: $1",
+ "tpt-priority-languages": "بیر چئویرمک ایداره‌چیسی، بو قروپون اؤنجه‌لیک دیلینی $1 سئچیب‌دیر.",
+ "tpt-render-summary": "قایناق صحیفه‌نین یئنی نوسخه‌سی ایله تطبیق اوچون گونجل‌لنیر",
+ "tpt-download-page": "صحیفه‌نی چئویرمه‌لرله ائشیگه چیخارت",
+ "aggregategroups": "بیرلشدیریلمیش قروپلار",
+ "tpt-aggregategroup-add": "آرتیر",
+ "tpt-aggregategroup-save": "قئید ائت",
+ "tpt-aggregategroup-add-new": "بیر یئنی بیرلشمه قروپو آرتیر",
+ "tpt-aggregategroup-new-name": "آد:",
+ "tpt-aggregategroup-new-description": "توضیح (ایستگه باغلی):",
+ "tpt-aggregategroup-remove-confirm": "بو بیرلشمه قروپونو سیلمکدن آرخایینسینیز؟",
+ "tpt-aggregategroup-invalid-group": "قروپ یوخدور",
+ "pt-parse-open": "بالانس اولمامیش &lt;translate> اِتیکِتی.\nچئویرمک شابلونو: <pre>$1</pre>",
+ "pt-parse-close": "بالانس اولمامیش &lt;/translate> اِتیکِتی.\nچئویرمک شابلونو: <pre>$1</pre>",
+ "pt-parse-nested": "بیر بیری ایچینده اولان &lt;translate> چئویرمه بیریملرینه ایجازه یوخدور.\nاِتیکِت یازیسی: <pre>$1</pre>",
+ "pt-shake-multiple": "بیر چئویرمه بیریمی اوچون، چوخلو چئویرمه بیریم نیشانلایانلاری.\nچئویرمه بیریم یازیسی: <pre>$1</pre>",
+ "pt-shake-position": "گؤزلنیمه‌ین یئرده چوخلو بیریم نیشانلایانلاری.\nچئویرمه بیریم یازیسی: <pre>$1</pre>",
+ "pt-shake-empty": "«$1» نیشانلایانی اوچون بوش چئویرمه بیریمی.",
+ "log-description-pagetranslation": "صحیفه چئویرمه سیستِمینه ایلگیلی ایشلرین قئیدلری",
+ "log-name-pagetranslation": "صحیفه چئویرمک قئیدلری",
+ "logentry-pagetranslation-mark": "$1، $3-ی چئویرمگه {{GENDER:$2|نیشانلاندیریب}}",
+ "logentry-pagetranslation-unmark": "$1، $3-ی چئویرمک‌دن {{GENDER:$2|سیلدی}}",
+ "pt-movepage-title": "«$1» چئویریله بیلن صحیفه‌نین آدینی دَییشدیر",
+ "pt-movepage-blockers": "بو {{PLURAL:$1|خطا|خطالار}} اوچون چئویریله بیلن صحیفه‌نین آدی دَییشدیریلنمیر:",
+ "pt-movepage-block-base-exists": "«[[:$1]]» هدف چئویریله بیلن صحیفه، قاباقجادان واردیر.",
+ "pt-movepage-block-base-invalid": "هدف چئویریله بیلن صحیفه‌نین آدی، گئچرلی بیر باشلیق دئییل.",
+ "pt-movepage-block-tp-exists": "«[[:$2]]» هدف چئویرمک صحیفه‌سی قاباقجادان واردیر.",
+ "pt-movepage-block-tp-invalid": "«[[:$1]]» اوچون هدف چئویرمک صحیفه‌سی باشلیغی گئچرسیز اولار (چوخ اوزون؟).",
+ "pt-movepage-block-section-exists": "چئویرمه بیریمی اوچون «[[:$2]]» هدف صحیفه‌سی قاباقجادان واردیر.",
+ "pt-movepage-block-section-invalid": "چئویرمک بیریمی اوچون «[[:$1]]»-ه هدف صحیفه باشلیغی گئچرسیز اولار (چوخ اوزون؟).",
+ "pt-movepage-block-subpage-exists": "«[[:$2]]» هدف آلت‌صحیفه‌سی یوخدور.",
+ "pt-movepage-block-subpage-invalid": "«[[:$1]]» اوچون هدف آلت‌صحیفه باشلیغی گئچرسیز اولار (چوخ اوزون؟).",
+ "pt-movepage-list-pages": "آدینی دَییشدیره‌جک صحیفه‌لرین لیستی",
+ "pt-movepage-list-translation": "چئویرمک {{PLURAL:$1|صحیفه‌سی|صحیفه‌لری}}",
+ "pt-movepage-list-section": "چئویرمک بیریم {{PLURAL:$1|صحیفه‌سی|صحیفه‌لری}}",
+ "pt-movepage-list-other": "آیری آلت‌{{PLURAL:$1|صحیفه|صحیفه‌لر}}",
+ "pt-movepage-list-count": "توپلام‌دا آدینی دَییشدیرمگه {{PLURAL:$1|بیر|$1}} صحیفه.",
+ "pt-movepage-legend": "دَییشدیریله بیلن صحیفه‌نین آدینی دَییشدیر",
+ "pt-movepage-current": "ایندیکی آد:",
+ "pt-movepage-new": "یئنی آد:",
+ "pt-movepage-reason": "ندن:",
+ "pt-movepage-subpages": "بوتون آلت‌صحیفه‌لرین آدلارینی دَییشدیر",
+ "pt-movepage-action-check": "آدی دَییشدیرمگین ایمکانی اولماغینی یوخلا",
+ "pt-movepage-action-perform": "آدی دَییشدیر",
+ "pt-movepage-action-other": "هدفی دَییشدیر",
+ "pt-movepage-intro": "بو اؤزل صحیفه سیزه ایجازه وئریر چئویرمگه نیشانلانان صحیفه‌لرین آدلارینی دَییشدیره‌سینیز.\nآدی دَییشدیرمک ایشی، بیر آن‌دا اولمایاجاق، نییه کی چوخلو صحیفه‌لرین آدلاری دَییشدیرمک گرکلی اولا بیلر.\nصحیفه‌لرین آدلاری دَییشدیریلنده، او صحیفه‌لرله ایشله‌مک ایمکانی اولماز.\nموفقیت‌سیزلیکلر [[Special:Log/pagetranslation|صحیفه چئویرمک قئیدلرینده]] قئید اولوناجاقلار و اونلاری ال ایله دوزلتمک گرکلی‌دیر.",
+ "pt-movepage-logreason": "«$1» چئویریله بیلن صحیفه‌نین پارچاسی.",
+ "pt-movepage-started": "اساس صحیفه ایندی آدی دَییشدیریلیب‌دیر.\nلوطفاً خطالار و قورتارماق مئساژلاری اوچون [[Special:Log/pagetranslation|صحیفه چئویرمک قئیدلری]]نی یوخلایین.",
+ "pt-locked-page": "ایندی چئویریله بیلن صحیفه‌نین آدی دَییشدیلماقدا اولماغینا گؤره، بو صحیفه قیفیل‌لانیب‌دیر.",
+ "pt-deletepage-lang-title": "«$1» چئویرمک صحیفه‌سی سیلینیر.",
+ "pt-deletepage-full-title": "«$1» چئویریله بیلن صحیفه سیلینیر.",
+ "pt-deletepage-invalid-title": "بیلیندیریلمیش صحیفه گئچرسیزدیر.",
+ "pt-deletepage-invalid-text": "بیلندیریلمیش صحیفه نه چئویرمک صحیفه‌سی‌دیر و نه چئویریله بیلن صحیفه.",
+ "pt-deletepage-action-check": "سیلینه‌جک صحیفه‌لری لیست ائت",
+ "pt-deletepage-action-perform": "سیلمه‌نی ائت",
+ "pt-deletepage-action-other": "هدفی دَییشدیر",
+ "pt-deletepage-lang-legend": "چئویرمک صحیفه‌سینی سیل",
+ "pt-deletepage-full-legend": "چئویریله بیلن صحیفه‌نی سیل",
+ "pt-deletepage-any-legend": "چئویریله بیلن صحیفه یادا چئویرمک صحیفه‌سینی سیل",
+ "pt-deletepage-current": "صحیفه آدی:",
+ "pt-deletepage-reason": "ندن:",
+ "pt-deletepage-subpages": "بوتون آلت‌صحیفه‌لری سیل",
+ "pt-deletepage-list-pages": "سیلینه‌جک صحیفه‌لرین لیستی",
+ "pt-deletepage-list-translation": "چئویرمک صحیفه‌لری",
+ "pt-deletepage-list-section": "چئویرمک بیریم صحیفه‌لری",
+ "pt-deletepage-list-other": "آیری آلت‌صحیفه‌لر",
+ "pt-deletepage-list-count": "توپلام‌دا سیلمگه {{PLURAL:$1|بیر|$1}} صحیفه.",
+ "pt-deletepage-full-logreason": "«$1» چئویریله بیلن صحیفه‌نین پارچاسی.",
+ "pt-deletepage-lang-logreason": "«$1» چئویرمک صحیفه‌سینین پارچاسی.",
+ "pt-deletepage-started": "لوطفاً خطالار و قورتارماقلار مئساژلاری اوچون [[Special:Log/pagetranslation|صحیفه چئویرمک قئیدلری]]نه باخین.",
+ "pt-deletepage-intro": "بو اؤزل صحیفه سیزه ایجازه وئریر بیر بوتون چئویریله بیلن صحیفه‌نی، یا دا بیر دیل‌ده بیر تک چئویرمک صحیفه‌سینی سیله‌سینیز.\nسیلمک ایشی بیر آن‌دا اولمایاجاق‌دیر، نییه کی اونلارا دایانان بوتون صحیفه‌لر ده گرک سیلینسینلر.\nموفقیت‌سیزلیکلر [[Special:Log/pagetranslation|صحیفه چئویرمک قئیدلری]]نده قئید اولوناجاقلار و اونلاری ال ایله دوزلتمک گرکلی‌دیر."
+}
diff --git a/MLEB/Translate/i18n/pagetranslation/ba.json b/MLEB/Translate/i18n/pagetranslation/ba.json
new file mode 100644
index 00000000..9f7621c5
--- /dev/null
+++ b/MLEB/Translate/i18n/pagetranslation/ba.json
@@ -0,0 +1,20 @@
+{
+ "@metadata": {
+ "authors": [
+ "Haqmar"
+ ]
+ },
+ "pt-movepage-list-other": "Башҡа эске биттәр",
+ "pt-movepage-legend": "Тәржемә итеп булған биттәрҙең исемен үҙгәртергә",
+ "pt-movepage-current": "Хәҙерге исеме:",
+ "pt-movepage-new": "Яңы исеме:",
+ "pt-movepage-reason": "Сәбәп:",
+ "pt-movepage-subpages": "Бар эске биттәрҙең исемен үҙгәртергә",
+ "pt-movepage-action-perform": "Исемен үҙгәртергә",
+ "pt-movepage-action-other": "Маҡсатты үҙгәртергә",
+ "pt-deletepage-action-check": "Юйыласаҡ биттәр исемлеге",
+ "pt-deletepage-action-perform": "Юйырға",
+ "pt-deletepage-action-other": "Маҡсатты үҙгәртергә",
+ "pt-deletepage-lang-legend": "Тәржемә битен юйырға",
+ "pt-deletepage-full-legend": "Тәржемә итеп булған битте юйырға"
+}
diff --git a/MLEB/Translate/i18n/pagetranslation/bar.json b/MLEB/Translate/i18n/pagetranslation/bar.json
new file mode 100644
index 00000000..44646752
--- /dev/null
+++ b/MLEB/Translate/i18n/pagetranslation/bar.json
@@ -0,0 +1,39 @@
+{
+ "@metadata": {
+ "authors": [
+ "Mucalexx"
+ ]
+ },
+ "pagetranslation": "Seiten ywersétzen",
+ "right-pagetranslation": "Seitenversión fyr d' Ywersétzung markirn",
+ "tpt-desc": "Daméglichts Ywersétzen voh Inhoidsseiten",
+ "tpt-section": "Ywersétzungsoahheit $1",
+ "tpt-section-new": "Neiche Ywersétzungsoahheit. Nåm $1",
+ "tpt-section-deleted": "Ywersétzungsoahheit $1",
+ "tpt-template": "Seitenvurlog",
+ "tpt-templatediff": "Dé Seitenvurlog hod sé gänderd.",
+ "tpt-diff-old": "Vuriger Text",
+ "tpt-diff-new": "Neicher Text",
+ "tpt-submit": "Dé Versión do zur Ywersétzung markirn",
+ "tpt-sections-oldnew": "Neiche und vurhånderne Ywersétzungsoahheiten",
+ "tpt-sections-deleted": "Gléschde Ywersétzungsoahheiten",
+ "tpt-sections-template": "Ywersétzungsseitenvurlog",
+ "tpt-action-nofuzzy": "Sétz d' Ywersétzungen néd ausser Kroft",
+ "tpt-badtitle": "Da ågeewerne Seitennåm „$1“ is koah gütiger Titl néd",
+ "tpt-nosuchpage": "Dé Seiten $1 existird néd",
+ "tpt-oldrevision": "$2 is néd d' létzde Versión voh derer Seiten [[:$1]].\nNetter d' létzde Versión kå zur Ywersétzung markird wern.",
+ "tpt-notsuitable": "Dé Seiten $1 is néd zum Ywersétzen geignet.\nStö sicher, daas a <nowiki><translate></nowiki>-Tag und gütige Syntax vawendt werd.",
+ "tpt-languages-legend": "Ånderne Sproochen:",
+ "pt-deletepage-any-legend": "Ywersétzbore óder ywersétzde Seiten léschen",
+ "pt-deletepage-current": "Seitennåm",
+ "pt-deletepage-reason": "Grund:",
+ "pt-deletepage-subpages": "Olle Unterseiten léschen",
+ "pt-deletepage-list-pages": "Listen voh dé z' léschenden Seiten",
+ "pt-deletepage-list-translation": "Ywersétzde Seiten",
+ "pt-deletepage-list-section": "Obschnitsseiten",
+ "pt-deletepage-list-other": "Weiderne Unterseiten",
+ "pt-deletepage-list-count": "Insgsåmt gibts $1 z' léschende {{PLURAL:$1|Seiten|Seiten}}.",
+ "pt-deletepage-full-logreason": "Teil voh da ywersétzborn Seiten $1.",
+ "pt-deletepage-lang-logreason": "Teil voh da ywersétzden Seiten $1.",
+ "pt-deletepage-started": "Bittscheh 's [[Special:Log/pagetranslation|Ywersétzungs-Logbuach]] noch Feelern und Ausfiarungsnoochrichten priaffm."
+}
diff --git a/MLEB/Translate/i18n/pagetranslation/bcc.json b/MLEB/Translate/i18n/pagetranslation/bcc.json
new file mode 100644
index 00000000..70afbacf
--- /dev/null
+++ b/MLEB/Translate/i18n/pagetranslation/bcc.json
@@ -0,0 +1,9 @@
+{
+ "@metadata": {
+ "authors": [
+ "Baloch Afghanistan"
+ ]
+ },
+ "tpt-invalid-group": "نا معتبرین گروپی",
+ "pm-pagetitle-invalid": "مهربانی کنیت یک معتبرین صپحه یی عنوانی وارد کنیت"
+}
diff --git a/MLEB/Translate/i18n/pagetranslation/bcl.json b/MLEB/Translate/i18n/pagetranslation/bcl.json
new file mode 100644
index 00000000..4200f857
--- /dev/null
+++ b/MLEB/Translate/i18n/pagetranslation/bcl.json
@@ -0,0 +1,89 @@
+{
+ "@metadata": {
+ "authors": [
+ "Geopoet"
+ ]
+ },
+ "pagetranslation": "Dakit-taramon kan pahina",
+ "right-pagetranslation": "Markahi an mga bersyon kan mga pahina para sa dakit-taramon",
+ "tpt-desc": "Ekstensyon para sa pagdadakit-taramon kan mga laman nin mga pahina",
+ "tpt-section": "Yunit kan dakit-taramon $1",
+ "tpt-section-new": "Bagong yunit kan dakit-taramon.\nPangaran: $1",
+ "tpt-section-deleted": "Yunit kan dakit-taramon $1",
+ "tpt-template": "Panguyog kan pahina",
+ "tpt-templatediff": "An panguyog kan pahina pinagbago.",
+ "tpt-diff-old": "Dating teksto",
+ "tpt-diff-new": "Baguhong teksto",
+ "tpt-submit": "Markahi ining bersyon para sa pagdakit-taramon",
+ "tpt-sections-oldnew": "Baguhon asin dati nang yaon na mga yunit kan dakit-taramon",
+ "tpt-sections-deleted": "Pinagpurang mga yunit kan dakit-taramon",
+ "tpt-sections-template": "Panguyog kan pahina nin dakit-taramon",
+ "tpt-action-nofuzzy": "Dae pag-imbalidohon an mga dakit-taramon",
+ "tpt-badtitle": "Ngaran kan pahinang pinagtao ($1) bakong balidong titulo",
+ "tpt-nosuchpage": "An pahina $1 bakong eksistido",
+ "tpt-oldrevision": "An $2 bako an pinakabaguhong bersyon kan pahina [[:$1]].\nAn mga pinakabaguhong bersyon sana an puwedeng markahan para sa dakit-taramon.",
+ "tpt-notsuitable": "An pahina $1 bakong naaangay para sa dakit-taramon.\nHimoong segurado na ini igwang <nowiki><translate></nowiki> mga tatak asin igwa nin balidong sintaks.",
+ "tpt-saveok": "An pahina [[:$1]] pinagmarkahan pra sa dakit-taramon na igwang $2 {{PLURAL:$2|yunit kan dakit-taramon|mga yunit kan dakit-taramon}}.\nAn pahina mapuwede ngunyan na magin <span class=\"plainlinks\">[$3 pinagdakit-taramon]</span>.",
+ "tpt-badsect": "An \"$1\" bakong balidong ngaran para sa yunit kan dakit-taramon $2.",
+ "tpt-showpage-intro": "Yaon sa ibaba an bago, dati na asin pinagburang yunit nin mga dakit-taramon an nagkarilista.\nBago mamarkahan nin bersyon para sa pagdakit-taramon, aramon mo na an mga kaliwatan pasiring sa mga yunit nin dakit-taramon pinagminimisa tanganing likayan an bakong kaipuhanan na trabaho para sa mga translador.",
+ "tpt-mark-summary": "Markado ining bersyon para sa pagdakit-taramon",
+ "tpt-edit-failed": "Dae mapanumpayan an pahina: $1",
+ "tpt-duplicate": "Pangaran kan yunit nin pagdakit-taramon na $1 ginamit nang sobra nin sarong beses.",
+ "tpt-already-marked": "An pinakahuring bersyon kaining pahina pinagmarkahan na para sa pagdakit-taramon.",
+ "tpt-unmarked": "An pahina $1 bako na pong markado para sa pagdakit-taramon.",
+ "tpt-list-nopages": "Mayong mga pahina na markado para sa pagdakit-taramon ni naka-andam na tanganing markado para sa pagdakit-taramon.",
+ "tpt-new-pages-title": "Mga pahinang pinaghurot para sa pagdakit-taramon",
+ "tpt-old-pages-title": "Mga pahina na yaon sa pagdakit-taramon",
+ "tpt-other-pages-title": "Nagkaparasang mga pahina",
+ "tpt-discouraged-pages-title": "Dae pinagtutugutan na mga pahina",
+ "tpt-new-pages": "{{PLURAL:$1|Ining pahina naglalaman nin|Ining mga pahina naglalaman nin}} teksto na igwa nin mga markang pandakit-taramon, alagad mayong bersyon kan {{PLURAL:$1|ining pahina na|ining mga pahina na}} sa presente markado para sa pagdakit-taramon.",
+ "tpt-old-pages": "An ibang bersyon kan {{PLURAL:$1|ining pahina igwa nin|ining mga pahina igwa nin}} pinagmarkahan para sa pagdakit-taramon.",
+ "tpt-other-pages": "{{PLURAL:$1|An lumaong bersyon kaining pahina iyo an|An pinakalumaong mga bersyon kaining mga pahina iyo an mga}} markado para sa pagdakit-taramon, alagad an pinakahuri {{PLURAL:$1|bersyon|mga bersyon}} dae mapuwedeng pagmarkahan para sa pagdakit-taramon.",
+ "tpt-discouraged-pages": "{{PLURAL:$1|Ining pahina|Ining mga pahina}} dae pinagtutugutan sa dagos na pagdakit-taramon.",
+ "tpt-select-prioritylangs": "Lista na pinagpalaen nin kama kan mga koda nin pangenot na lengguwahe:",
+ "tpt-select-prioritylangs-force": "Dae pinagtutugot na mga pagdakit-taramon sa ibang mga lengguwahe kesa pangenot na mga lengguwahe",
+ "tpt-select-prioritylangs-reason": "Kadahilanan:",
+ "tpt-sections-prioritylangs": "Pangenot na mga lengguwahe",
+ "tpt-rev-mark": "markahan para sa pagdakit-taramon",
+ "tpt-rev-unmark": "haleon gikan sa pagdakit-taramon",
+ "tpt-rev-discourage": "Dae pagtugutan",
+ "tpt-rev-encourage": "balikon",
+ "tpt-rev-mark-tooltip": "Markahan an pinakahuring bersyon kaining pahina para sa padakit-taramon.",
+ "tpt-rev-unmark-tooltip": "Haleon ining pahina para sa pagdakit-taramon.",
+ "tpt-rev-discourage-tooltip": "Dae pagtugutan an dagos na pagdadakit-taramon kaining pahina.",
+ "tpt-rev-encourage-tooltip": "Balikon ining pahina sa normal na pagdakit-taramon.",
+ "translate-tag-translate-link-desc": "Ipagdakit-taramon ining pahina",
+ "translate-tag-markthis": "Markahan ining pahina para ipagdakit-taramon",
+ "translate-tag-markthisagain": "Ining pahina igwa nin <span class=\"plainlinks\">[$1 mga kaliwatan]</span> poon pa kaitong huri ining <span class=\"plainlinks\">[$2 pinagmarkahan para ipagdakit-taramon]</span>.",
+ "translate-tag-hasnew": "Ining pahina igwa nin <span class=\"plainlinks\">[$1 mga kaliwatan]</span> na dae pinagmarkahan para ipagdakit-taramon.",
+ "tpt-translation-intro": "Ining pahina sarong <span class=\"plainlinks\">[$1 pinagdakit-taramon na bersyon]</span> kan pahina [[$2]] asin an pagdakit-taramon na $3% nakumpleto na.",
+ "tpt-languages-legend": "Ibang mga lengguwahe:",
+ "tpt-languages-zero": "Magpoon sa pagdakit-taramon para sa lengguwaheng ini",
+ "tpt-target-page": "Ining pahina dae puwedeng manwal na pagpanumpayan.\nIning pahina sarong dakit-taramon kan pahina [[$1]] asin an pinagdakit-taramon mapuwedeng panumbayan na gamit an [$2 an gamit sa pagdakit-taramon].",
+ "tpt-unknown-page": "Ining espasyong ngaran nakareserba para sa pahina kan laman nin mga dakit-taramon.\nAn pahina na saimong boot na pagliliwaton garo habong magtutugot sa arinman na pahinang markado para ipagdakit-taramon.",
+ "tpt-translation-restricted": "An pagdakit-taramon kaining pahina sa lengguwaheng ini pinagpupugulan kan administrador nin pagdakit-taramon.\n\nRason: $1",
+ "tpt-discouraged-language-force": "<strong>Ining pahina dae puwedeng ipagdakit-taramon sa $2.</strong>\n\nAn administrador kan pagdakit-taramon nagdesisyon na ining pahina mapuwedeng sanang ipagdakit-taramon sa $3.",
+ "tpt-discouraged-language": "<strong>An pagdadakit-taramon sa $2 bakong prayoridad para sa pahinang ini.</strong>\n\nAn administrador kan pagdakit-taramon nagdesisyon na itutok an gibong pagdakit-taramon sa $3.",
+ "tpt-discouraged-language-reason": "Rason: $1",
+ "tpt-priority-languages": "An administrador kan pagdakit-taramon ikinaag an prayoridad na mga lengguwahe para kaining grupo sa $1.",
+ "tpt-render-summary": "Panunumpayan tanganing ipagtugma sa baguhong bersyon kan ginikanang pahina",
+ "tpt-download-page": "Salimbagong pahina na igwang mga pinagdakit-taramon",
+ "aggregategroups": "Sinurumpay na mga grupo",
+ "tpt-aggregategroup-add": "Dugangan",
+ "tpt-aggregategroup-save": "Ipagtagama",
+ "tpt-aggregategroup-add-new": "Dugangan nin sarong baguhon na sinurumpay na grupo",
+ "tpt-aggregategroup-new-name": "An pangaran:",
+ "tpt-aggregategroup-new-description": "Paglaladawan (puwedeng mayo kaini):",
+ "tpt-aggregategroup-remove-confirm": "Segurado kan na gusto mong puraon ining sinurumpay na grupo?",
+ "tpt-aggregategroup-invalid-group": "An grupo bakong eksistido",
+ "pt-parse-open": "Bakong balansiyadong &lt;translate> marka.\nPanguyog sa pagdakit-taramon: <pre>$1</pre>",
+ "pt-parse-close": "Bakong balansiyadong &lt;/translate> marka.\nPanguyog sa pagdakit-taramon: <pre>$1</pre>",
+ "pt-parse-nested": "Pinagsalagang &lt;translate> mga yunit nin pagdakit-taramon dae itinutugot.\nMarkang teksto: <pre>$1</pre>",
+ "pt-shake-multiple": "Mga marka nin dagmangang yunit nin pagdakit-taramon para sa sarong yunit nin pagdakit-taramon.\nTeksto sa yunit nin pagdakit-taramon: <pre>$1</pre>",
+ "pt-shake-position": "Mga marka kan yunit nin dakit-taramon sa bakong pinag-aasahan na posisyon.\nTeksto sa yunit in pagdakit-taramon: <pre>$1</pre>",
+ "pt-shake-empty": "Mayong laman na yunit kan dakit-taramon para sa paramarka na \"$1\".",
+ "log-description-pagetranslation": "Magtala para sa mga aksyon na minasumpay sa sistema kan pahina nin dakit-taramon",
+ "log-name-pagetranslation": "Talaan kan dakit-taramong pahina",
+ "pm-summary-import": "Importadong dakit-taramon na ginagamit an [[Special:PageMigration|migrasyon sa pahina]]",
+ "pp-save-button-label": "Itagáma"
+}
diff --git a/MLEB/Translate/i18n/pagetranslation/be-tarask.json b/MLEB/Translate/i18n/pagetranslation/be-tarask.json
new file mode 100644
index 00000000..aeec3439
--- /dev/null
+++ b/MLEB/Translate/i18n/pagetranslation/be-tarask.json
@@ -0,0 +1,157 @@
+{
+ "@metadata": {
+ "authors": [
+ "EugeneZelenko",
+ "Jim-by",
+ "Renessaince",
+ "Wizardist"
+ ]
+ },
+ "pagetranslation": "Пераклад старонкі",
+ "right-pagetranslation": "пазначаць вэрсіяў старонак для перакладу",
+ "action-pagetranslation": "кіраваньне перакладам старонак",
+ "tpt-desc": "Пашырэньне для перакладу старонак зьместу",
+ "tpt-section": "Адзінка перакладу $1",
+ "tpt-section-new": "Новая адзінка перакладу. Назва: $1",
+ "tpt-section-deleted": "Адзінка перакладу $1",
+ "tpt-template": "Старонка шаблёну",
+ "tpt-templatediff": "Старонка шаблёну была зьменена.",
+ "tpt-diff-old": "Папярэдні тэкст",
+ "tpt-diff-new": "Новы тэкст",
+ "tpt-submit": "Пазначыць гэту вэрсію для перакладу",
+ "tpt-sections-oldnew": "Новыя і існуючыя адзінкі перакладу",
+ "tpt-sections-deleted": "Выдаленыя адзінкі перакладу",
+ "tpt-sections-template": "Шаблён старонкі перакладу",
+ "tpt-action-nofuzzy": "Не бракаваць пераклады",
+ "tpt-badtitle": "Пададзеная назва старонкі ($1) не зьяўляецца слушнай",
+ "tpt-nosuchpage": "Старонка $1 не існуе",
+ "tpt-oldrevision": "$2 не зьяўляецца апошняй вэрсіяй старонкі [[:$1]].\nТолькі апошнія вэрсіі могуць пазначацца для перакладу.",
+ "tpt-notsuitable": "Старонка $1 ня можа быць перакладзеная.\nУпэўніцеся, што яна ўтрымлівае тэгі <nowiki><translate></nowiki> і мае слушны сынтаксіс.",
+ "tpt-saveok": "Старонка «$1» была пазначаная для перакладу з $2 {{PLURAL:$2|адзінкай перакладу|адзінкамі перакладу|адзінкамі перакладу}}.\nЗараз старонка можа быць <span class=\"plainlinks\">[$3 перакладзеная]</span>.",
+ "tpt-offer-notify": "Вы можаце <span class=\"plainlinks\">[$1 паведаміць перакладчыкам]</span> пра гэтую старонку.",
+ "tpt-badsect": "«$1» не зьяўляецца слушнай назвай для адзінкі перакладу $2.",
+ "tpt-showpage-intro": "Ніжэй знаходзяцца новыя, існуючыя і выдаленыя сэкцыі.\nПерад пазначэньнем гэтай вэрсіі для перакладу, праверце зьмены ў сэкцыях для таго, каб пазьбегнуць непатрэбнай працы для перакладчыкаў.",
+ "tpt-mark-summary": "Пазначыў гэтую вэрсію для перакладу",
+ "tpt-edit-failed": "Немагчыма абнавіць старонку: $1",
+ "tpt-duplicate": "Назва адзінкі перакладу «$1» скарыстаная больш за адзін раз.",
+ "tpt-already-marked": "Апошняя вэрсія гэтай старонкі ўжо была пазначана для перакладу.",
+ "tpt-unmarked": "Старонка $1 болей не пазначаная для перакладу.",
+ "tpt-list-nopages": "Старонкі для перакладу не пазначаныя альбо не падрыхтаваныя.",
+ "tpt-new-pages-title": "Старонкі, прапанаваныя да перакладу",
+ "tpt-old-pages-title": "Старонкі на стадыі перакладу",
+ "tpt-other-pages-title": "Сапсаваныя старонкі",
+ "tpt-discouraged-pages-title": "Адхіленыя старонкі",
+ "tpt-new-pages": "{{PLURAL:$1|1=Гэта старонка ўтрымлівае|Гэтыя старонкі ўтрымліваюць}} тэкст з тэгамі перакладу, але {{PLURAL:$1|1=пазначанай для перакладу вэрсіі гэтай старонкі|пазначаных для перакладу вэрсіяў гэтых старонак}} няма.",
+ "tpt-old-pages": "Некаторыя вэрсіі {{PLURAL:$1|1=гэтай старонкі|гэтых старонак}} былі пазначаны для перакладу.",
+ "tpt-other-pages": "{{PLURAL:$1|1=Старая вэрсія гэтай старонкі пазначаная|Старыя вэрсіі гэтых старонак пазначаныя}} для перакладу, але {{PLURAL:$1|1=апошняя вэрсія ня можа быць пазначаная|апошнія вэрсіі ня могуць быць пазначаныя}} для перакладу.",
+ "tpt-discouraged-pages": "{{PLURAL:$1|1=Гэтай старонцы|Гэтым старонкам}} было адхілена ў далейшым перакладзе.",
+ "tpt-select-prioritylangs": "Сьпіс прыярытэтных кодаў моваў, падзеленых коскамі:",
+ "tpt-select-prioritylangs-force": "Запабегчы перакладам на адрозныя ад прыярытэтных мовы",
+ "tpt-select-prioritylangs-reason": "Прычына:",
+ "tpt-sections-prioritylangs": "Прыярытэтныя мовы",
+ "tpt-rev-mark": "пазначыць да перакладу",
+ "tpt-rev-unmark": "выдаліць зь перакладу",
+ "tpt-rev-discourage": "адхіліць",
+ "tpt-rev-encourage": "аднавіць",
+ "tpt-rev-mark-tooltip": "Пазначыць апошнюю вэрсію старонкі да перакладу.",
+ "tpt-rev-unmark-tooltip": "Выдаліць гэтую старонку зь перакладу.",
+ "tpt-rev-discourage-tooltip": "Адхіліць далейшыя пераклады гэтай старонкі.",
+ "tpt-rev-encourage-tooltip": "Аднавіць гэтую старонку да звычайнага перакладу.",
+ "translate-tag-translate-link-desc": "Перакласьці гэту старонку",
+ "translate-tag-markthis": "Пазначыць гэту старонку для перакладу",
+ "translate-tag-markthisagain": "Гэта старонка ўтрымлівае <span class=\"plainlinks\">[$1 зьмены]</span> пасьля апошняй <span class=\"plainlinks\">[$2 пазнакі для перакладу]</span>.",
+ "translate-tag-hasnew": "Гэта старонка ўтрымлівае <span class=\"plainlinks\">[$1 зьмены]</span> не пазначаныя для перакладу.",
+ "tpt-translation-intro": "Гэтая старонка — <span class=\"plainlinks\">[$1 перакладзеная вэрсія]</span> старонкі [[$2]]. Пераклад завершаны на $3%.",
+ "tpt-languages-legend": "Іншыя мовы:",
+ "tpt-languages-zero": "Пачаць пераклад на гэтую мову",
+ "tpt-tab-translate": "Перакладаць",
+ "tpt-target-page": "Гэта старонка ня можа быць абноўлена ўручную.\nГэта старонка зьяўляецца перакладам старонкі [[$1]], пераклад можа быць абноўлены з выкарыстаньнем [$2 інструмэнта перакладу].",
+ "tpt-unknown-page": "Гэта прастора назваў зарэзэрваваная для перакладаў старонак зьместу.\nСтаронка, якую Вы спрабуеце рэдагаваць, верагодна не зьвязана зь якой-небудзь старонкай пазначанай для перакладу.",
+ "tpt-translation-restricted": "Пераклад гэтай старонкі на дадзеную мову быў папярэджаны адміністратарам паракладаў.\n\nПрычына: $1",
+ "tpt-discouraged-language-force": "<strong>Гэтая старонка ня можа быць перакладзеная на мову $2.</strong>\n\nАдміністратар перакладу вырашыў, што гэтая старонка можа быць перакладзеная толькі на мовы: $3.",
+ "tpt-discouraged-language": "<strong>Пераклад на мову $2 не зьяўляецца прыярытэтным.</strong>\n\nАдміністратар перакладу вырашыў сканцэнтраваць перакладніцкія высілкі на мовах $3.",
+ "tpt-discouraged-language-reason": "Прычына: $1",
+ "tpt-priority-languages": "Адміністратар перакладаў вызначыў прыярытэтныя мовы для гэтай групы: $1.",
+ "tpt-render-summary": "Абнаўленьне для адпаведнасьці новай вэрсіі крынічнай старонкі",
+ "tpt-download-page": "Экспартаваць старонку з перакладамі",
+ "aggregategroups": "Абагульняльныя групы",
+ "tpt-aggregategroup-add": "Дадаць",
+ "tpt-aggregategroup-save": "Захаваць",
+ "tpt-aggregategroup-add-new": "Дадаць новую абагульняльную групу",
+ "tpt-aggregategroup-new-name": "Назва:",
+ "tpt-aggregategroup-new-description": "Апісаньне (неабавязкова):",
+ "tpt-aggregategroup-remove-confirm": "Вы ўпэўненыя, што жадаеце выдаліць гэтую абагульняльную групу?",
+ "tpt-aggregategroup-invalid-group": "Група не існуе",
+ "pt-parse-open": "Незбалянсаваны тэг &lt;translate>.\nШаблён перакладу: <pre>$1</pre>",
+ "pt-parse-close": "Незбалянсаваны тэг &lt;/translate>.\nШаблён перакладу: <pre>$1</pre>",
+ "pt-parse-nested": "Укладзеныя сэкцыі &lt;translate> не дазволеныя.\nТэкст тэгу: <pre>$1</pre>",
+ "pt-shake-multiple": "Некалькі маркераў сэкцыяў у адной сэкцыі.\nТэкст сэкцыі: <pre>$1</pre>",
+ "pt-shake-position": "Меткі сэкцыі перакладу ў нечаканых пазыцыях.\nТэкст сэкцыі: <pre>$1</pre>",
+ "pt-shake-empty": "Пустая сэкцыя перакладу для меткі «$1».",
+ "log-description-pagetranslation": "Журнал для дзеяньняў зьвязаных з сыстэмай перакладу старонак",
+ "log-name-pagetranslation": "Журнал перакладу старонак",
+ "logentry-pagetranslation-mark": "$1 {{GENDER:$2|пазначыў|пазначыла}} $3 для перакладу",
+ "logentry-pagetranslation-unmark": "$1 {{GENDER:$2|выкрасьліў|выкрасьліла}} $3 зь перакладаў",
+ "logentry-pagetranslation-moveok": "$1 {{GENDER:$2|выканаў|выканала}} перайменаваньне перакладальнай старонкі з $3 у $4",
+ "logentry-pagetranslation-movenok": "$1 {{GENDER:$2|сутыкнуўся|сутыкнулася}} з праблемай у часе пераносу старонкі з $3 у $4",
+ "logentry-pagetranslation-deletefok": "$1 {{GENDER:$2|выдаліў|выдаліла}} перакладальную старонку $3",
+ "logentry-pagetranslation-deletefnok": "$1 {{GENDER:$2|ня змог|не змагла}} выдаліць $3, якая належыць да перакладальнай старонкі $4",
+ "logentry-pagetranslation-deletelok": "$1 {{GENDER:$2|выдаліў|выдаліла}} перакладальную старонку $3",
+ "logentry-pagetranslation-deletelnok": "$1 {{GENDER:$2|ня змог|не змагла}} выдаліць старонку «$3», якая належыць да перакладальнай старонкі «$4»",
+ "logentry-pagetranslation-encourage": "$1 {{GENDER:$2|дазволіў|дазволіла}} пераклад $3",
+ "logentry-pagetranslation-discourage": "$1 {{GENDER:$2|не дазволіў|не дазволіла}} пераклад $3",
+ "logentry-pagetranslation-prioritylanguages-unset": "$1 {{GENDER:$2|выдаліў|выдаліла}} прыярытэтныя мовы зь перакладальнай старонкі $3",
+ "logentry-pagetranslation-prioritylanguages": "$1 {{GENDER:$2|вызначыў|вызначыла}} прыярытэтныя мовы для перакладальнай старонкі $3: $5",
+ "logentry-pagetranslation-prioritylanguages-force": "$1 {{GENDER:$2|абмежаваў|абмежавала}} мовы для перакладальнай старонкі $3 да $5",
+ "logentry-pagetranslation-associate": "$1 {{GENDER:$2|дадаў|дадала}} перакладальную старонку $3 да агрэгаванай групы $4",
+ "logentry-pagetranslation-dissociate": "$1 {{GENDER:$2|выдаліў|выдаліла}} перакладальную старонку $3 з агрэгаванай групы $4",
+ "pt-movepage-title": "Перанесьці старонку $1, якую магчыма перакласьці",
+ "pt-movepage-blockers": "Немагчыма перанесьці старонкі, якія магчыма перакладаць, з-за {{PLURAL:$1|1=наступнай памылкі|наступных памылак}}:",
+ "pt-movepage-block-base-exists": "Існуе мэтавая перакладальная старонка «[[:$1]]».",
+ "pt-movepage-block-base-invalid": "Мэтавая перакладальная старонка мае няслушную назву.",
+ "pt-movepage-block-tp-exists": "Мэтавая старонка перакладу [[:$2]] існуе.",
+ "pt-movepage-block-tp-invalid": "Мэтавая назва старонкі да перакладу [[:$1]] будзе няслушнай (занадта доўгая?)",
+ "pt-movepage-block-section-exists": "Інсуе мэтавая старонка «[[:$2]]» для сэкцыі перакладу.",
+ "pt-movepage-block-section-invalid": "Мэтавая назва старонкі [[:$1]] для адзінкі перакладу будзе няслушнай (занадта доўгая?).",
+ "pt-movepage-block-subpage-exists": "Мэтавая падстаронка [[:$2]] існуе.",
+ "pt-movepage-block-subpage-invalid": "Мэтавая назва падстаронкі [[:$1]] будзе няслушнай (занадта доўгая?).",
+ "pt-movepage-list-pages": "Сьпіс старонак да пераносу",
+ "pt-movepage-list-translation": "{{PLURAL:$1|1=Старонка|Старонкі}} да перакладу",
+ "pt-movepage-list-section": "{{PLURAL:$1|1=Старонка|Старонкі}} адзінкі перакладу",
+ "pt-movepage-list-other": "{{PLURAL:$1|1=Іншая падстаронка|Іншыя падстаронкі}}",
+ "pt-movepage-list-count": "$1 {{PLURAL:$1|старонка|старонкі|старонак}} для пераносу.",
+ "pt-movepage-legend": "Перанесьці старонкі, якія магчыма перакласьці",
+ "pt-movepage-current": "Цяперашняя назва:",
+ "pt-movepage-new": "Новая назва:",
+ "pt-movepage-reason": "Прычына:",
+ "pt-movepage-subpages": "Перанесьці ўсе падстаронкі",
+ "pt-movepage-action-check": "Праверыць, ці магчымы перанос",
+ "pt-movepage-action-perform": "Перанесьці",
+ "pt-movepage-action-other": "Зьмяніць мэту",
+ "pt-movepage-intro": "Гэтая спэцыяльная старонка дазваляе пераносіць старонкі, пазначаныя да перакладу.\nПеранос не адбудзецца імгненна, таму што спатрэбіцца пераносіць шмат старонак.\nПадчас пераносу маніпуляцыя са старонкамі будзе немагчымая.\nУсе памылкі падчас пераносу будуць занесеныя ў [[Special:Log/pagetranslation|журнал перакладу старонак]], і будзе патрэбная іх ручная апрацоўка.",
+ "pt-movepage-logreason": "Частка старонкі $1, якую магчыма перакласьці.",
+ "pt-movepage-started": "Асноўная старонка перанесеная.\nПраверце [[Special:Log/pagetranslation|журнал перакладаў старонак]] наконт памылак і паведамленьня пра выкананьне.",
+ "pt-locked-page": "Гэтая старонка заблякаваная з-за працэсу пераносу старонкі, якую магчыма перакласьці.",
+ "pt-deletepage-lang-title": "Выдаленьне старонкі перакладу $1.",
+ "pt-deletepage-full-title": "Выдаленьне старонкі $1, якую магчыма перакладаць.",
+ "pt-deletepage-invalid-title": "Пазначаная няслушная старонка.",
+ "pt-deletepage-invalid-text": "Пазначаная старонка не зьяўляецца ні перакладальнай старонкай, ані перакладам.",
+ "pt-deletepage-action-check": "Сьпіс старонак да выдаленьня",
+ "pt-deletepage-action-perform": "Выканаць выдаленьне",
+ "pt-deletepage-action-other": "Зьмяніць мэту",
+ "pt-deletepage-lang-legend": "Выдаліць старонку перакладу",
+ "pt-deletepage-full-legend": "Выдаліць старонку, якую магчыма перакладаць",
+ "pt-deletepage-any-legend": "Выдаліць перакладальную старонку або яе пераклад",
+ "pt-deletepage-current": "Назва старонкі:",
+ "pt-deletepage-reason": "Прычына:",
+ "pt-deletepage-subpages": "Выдаліць усе падстаронкі",
+ "pt-deletepage-list-pages": "Сьпіс старонак да выдаленьня",
+ "pt-deletepage-list-translation": "Старонкі перакладаў",
+ "pt-deletepage-list-section": "Старонкі адзінкі перакладу",
+ "pt-deletepage-list-other": "Іншыя падстаронкі",
+ "pt-deletepage-list-count": "Агулам $1 {{PLURAL:$1|старонка|старонкі|старонак}} да выдаленьня.",
+ "pt-deletepage-full-logreason": "Частка старонкі $1, якую магчыма перакласьці.",
+ "pt-deletepage-lang-logreason": "Частка перакладзенай старонкі $1.",
+ "pt-deletepage-started": "Калі ласка, праверце [[Special:Log/pagetranslation|старонку журнала перакладаў]] адносна памылак і паведамленьняў пра выкананьне.",
+ "pt-deletepage-intro": "Гэтая спэцыяльная старонка дазваляе Вам выдаляць цэлыя перакладальныя старонкі, альбо перакладзеныя на іншыя мовы.\nВыдаленьне ня здарыцца хутка, таму што залежныя старонкі таксама будуць выдаленыя.\nПамылкі будуць запратакаляваныя на [[Special:Log/pagetranslation|старонцы журналу перакладаў]] і патрабуюць выпраўленьня ўручную."
+}
diff --git a/MLEB/Translate/i18n/pagetranslation/be.json b/MLEB/Translate/i18n/pagetranslation/be.json
new file mode 100644
index 00000000..96c1812a
--- /dev/null
+++ b/MLEB/Translate/i18n/pagetranslation/be.json
@@ -0,0 +1,19 @@
+{
+ "@metadata": {
+ "authors": [
+ "Тест",
+ "Mikalai Udodau",
+ "Unomano",
+ "Artificial123"
+ ]
+ },
+ "pt-movepage-reason": "Прычына:",
+ "pm-import-button-label": "Імпартаваць",
+ "pm-savepages-button-label": "Запісаць",
+ "pm-cancel-button-label": "Адмяніць",
+ "pm-pagename-placeholder": "Увядзіце назву старонкі",
+ "pm-langcode-placeholder": "Код мовы",
+ "pm-add-icon-hover-text": "Дадаць блок ніжэй",
+ "pm-swap-icon-hover-text": "Замяніць блокам ніжэй",
+ "pm-delete-icon-hover-text": "Выдаліць блок"
+}
diff --git a/MLEB/Translate/i18n/pagetranslation/bg.json b/MLEB/Translate/i18n/pagetranslation/bg.json
new file mode 100644
index 00000000..0d4395f9
--- /dev/null
+++ b/MLEB/Translate/i18n/pagetranslation/bg.json
@@ -0,0 +1,31 @@
+{
+ "@metadata": {
+ "authors": [
+ "DCLXVI",
+ "පසිඳු කාවින්ද"
+ ]
+ },
+ "tpt-diff-old": "Предишен текст",
+ "tpt-diff-new": "Нов текст",
+ "tpt-nosuchpage": "Страницата „$1“ не съществува",
+ "tpt-other-pages-title": "Счупени страници",
+ "tpt-select-prioritylangs-reason": "Причина:",
+ "translate-tag-translate-link-desc": "Превеждане на тази страница",
+ "tpt-languages-legend": "Други езици:",
+ "tpt-discouraged-language-reason": "Причина: $1",
+ "tpt-download-page": "Изнасяне на страница с преводите",
+ "tpt-aggregategroup-add": "Добавяне",
+ "tpt-aggregategroup-save": "Съхраняване",
+ "tpt-aggregategroup-new-name": "Име:",
+ "tpt-aggregategroup-new-description": "Описание (незадължително):",
+ "tpt-aggregategroup-invalid-group": "Групата не съществува",
+ "pt-movepage-list-other": "Други подстраници",
+ "pt-movepage-current": "Текущо име:",
+ "pt-movepage-new": "Ново име:",
+ "pt-movepage-reason": "Причина:",
+ "pt-movepage-subpages": "Преместване на всички подстраници",
+ "pt-deletepage-action-perform": "Извършване на изтриването",
+ "pt-deletepage-reason": "Причина:",
+ "pt-deletepage-subpages": "Изтриване на всички подстраници",
+ "pt-deletepage-list-other": "Други подстраници"
+}
diff --git a/MLEB/Translate/i18n/pagetranslation/bm.json b/MLEB/Translate/i18n/pagetranslation/bm.json
new file mode 100644
index 00000000..008509a7
--- /dev/null
+++ b/MLEB/Translate/i18n/pagetranslation/bm.json
@@ -0,0 +1,11 @@
+{
+ "@metadata": {
+ "authors": [
+ "Amadouyoro.thiam"
+ ]
+ },
+ "tpt-aggregategroup-edit-name": "Tɔgɔ:",
+ "tpt-aggregategroup-edit-description": "Kunnafoni:",
+ "tpt-aggregategroup-update": "Ka mara",
+ "tpt-aggregategroup-update-cancel": "Ka bòa ma"
+}
diff --git a/MLEB/Translate/i18n/pagetranslation/bn.json b/MLEB/Translate/i18n/pagetranslation/bn.json
new file mode 100644
index 00000000..3e240b6b
--- /dev/null
+++ b/MLEB/Translate/i18n/pagetranslation/bn.json
@@ -0,0 +1,35 @@
+{
+ "@metadata": {
+ "authors": [
+ "Aftab1995",
+ "Bellayet"
+ ]
+ },
+ "pagetranslation": "পাতা অনুবাদ",
+ "tpt-diff-old": "পূর্বের লেখা",
+ "tpt-diff-new": "নতুন লেখা",
+ "tpt-select-prioritylangs-reason": "কারণ:",
+ "tpt-rev-encourage": "পুনরুদ্ধার",
+ "translate-tag-translate-link-desc": "এই পাতা অনুবাদ করুন",
+ "translate-tag-markthis": "অনুবাদের জন্য এই পাতা চিহ্নিত করুন",
+ "tpt-translation-intro": "এই পাতাটি [[$2]] পাতার একটি <span class=\"plainlinks\">[$1 অনূদিত সংস্করণ]</span> এবং অনুবাদ $3% সম্পূর্ণ হয়েছে।",
+ "tpt-languages-legend": "অন্য ভাষা:",
+ "tpt-tab-translate": "অনুবাদ",
+ "tpt-discouraged-language-reason": "কারণ: $1",
+ "tpt-aggregategroup-add": "যোগ",
+ "tpt-aggregategroup-save": "সংরক্ষণ",
+ "tpt-aggregategroup-new-name": "নাম:",
+ "tpt-aggregategroup-new-description": "বিবরণ (ঐচ্ছিক):",
+ "tpt-aggregategroup-update": "সংরক্ষণ",
+ "log-name-pagetranslation": "পাতা অনুবাদ লগ্",
+ "pt-movepage-current": "বর্তমান নাম:",
+ "pt-movepage-new": "নতুন নাম:",
+ "pt-movepage-reason": "কারণ:",
+ "pt-deletepage-current": "পাতার নাম:",
+ "pt-deletepage-reason": "কারণ:",
+ "pm-import-button-label": "আমদানি",
+ "pm-savepages-button-label": "সংরক্ষণ",
+ "pm-cancel-button-label": "বাতিল",
+ "pm-pagename-placeholder": "পাতার নাম প্রবেশ করান",
+ "pm-langcode-placeholder": "ভাষা কোড"
+}
diff --git a/MLEB/Translate/i18n/pagetranslation/bo.json b/MLEB/Translate/i18n/pagetranslation/bo.json
new file mode 100644
index 00000000..e5c16bb3
--- /dev/null
+++ b/MLEB/Translate/i18n/pagetranslation/bo.json
@@ -0,0 +1,18 @@
+{
+ "@metadata": {
+ "authors": [
+ "Freeyak",
+ "Phurbutsering"
+ ]
+ },
+ "pagetranslation": "ཤོག་ངོས་ཡིག་སྒྱུར།",
+ "tpt-diff-old": "ཡིག་འབྲུ་གོང་མ།",
+ "tpt-diff-new": "ཡིག་འབྲུ་གསར་བ།",
+ "translate-tag-translate-link-desc": "ཤོག་ངོས་འདི་བསྒྱུར་བ།",
+ "tpt-languages-legend": "སྐད་རིགས་གཞན།",
+ "pt-movepage-list-translation": "ཡིག་སྒྱུར་ {{PLURAL:$1|ཤོག་ངོས།}}",
+ "pt-movepage-legend": "བསྒྱུར་རུང་བའི་ཤོག་ངོས་སྤོར་བ།",
+ "pt-movepage-current": "ད་ཡོད་མིང་།",
+ "pt-movepage-new": "མིང་གསར་བ།",
+ "pt-movepage-reason": "རྒྱུ་མཚན།"
+}
diff --git a/MLEB/Translate/i18n/pagetranslation/br.json b/MLEB/Translate/i18n/pagetranslation/br.json
new file mode 100644
index 00000000..a609af74
--- /dev/null
+++ b/MLEB/Translate/i18n/pagetranslation/br.json
@@ -0,0 +1,133 @@
+{
+ "@metadata": {
+ "authors": [
+ "Fohanno",
+ "Fulup",
+ "Y-M D"
+ ]
+ },
+ "pagetranslation": "Troidigezh ur bajenn",
+ "right-pagetranslation": "Merkañ stummoù pajennoù evit ma vefent troet",
+ "action-pagetranslation": "Merañ ar pajennoù a c'haller treiñ",
+ "tpt-desc": "Astenn evit treiñ pajennoù gant danvez",
+ "tpt-section": "Unanenn treiñ $1",
+ "tpt-section-new": "Unvez treiñ nevez.\nAnv : $1",
+ "tpt-section-deleted": "Unanenn dreiñ $1",
+ "tpt-template": "Patrom pajenn",
+ "tpt-templatediff": "Kemmet eo patrom ar bajenn.",
+ "tpt-diff-old": "Testenn gent",
+ "tpt-diff-new": "Testenn nevez",
+ "tpt-submit": "Merkañ ar stumm-mañ da vezañ troet",
+ "tpt-sections-oldnew": "Unvezioù treiñ kozh ha nevez",
+ "tpt-sections-deleted": "Unvezioù treiñ diverket",
+ "tpt-sections-template": "Patrom pajenn dreiñ",
+ "tpt-action-nofuzzy": "Chom hep diwiriekaat an droidigezhioù",
+ "tpt-badtitle": "N'eo ket reizh titl anv ar bajenn ($1) zo bet lakaet",
+ "tpt-nosuchpage": "N'eus ket eus ar bajenn $1.",
+ "tpt-oldrevision": "N'eo ket $2 stumm diwezhañ ar bajenn [[:$1]].\nN'eus nemet ar stummoù diwezhañ a c'hall bezañ merket evit bezañ troet.",
+ "tpt-notsuitable": "N'haller ket treiñ ar bajenn $1.\nGwiria ez eus balizennoù <nowiki><translate></nowiki> enni hag ez eo reizh an ereadurezh anezhi.",
+ "tpt-saveok": "Merket eo bet ar bajenn [[:$1]] evit bezañ troet gant $2 {{PLURAL:$2|unanenn dreiñ|unanenn dreiñ}}.\nGallout a ra ar bajenn bezañ <span class=\"plainlinks\">[$3 troet]</span> bremañ.",
+ "tpt-badsect": "Direizh eo an anv \"$1\" evit un unanenn dreiñ $2.",
+ "tpt-showpage-intro": "A-is emañ rollet an troidigezhioù nevez, ar re zo anezho hag ar re bet diverket.\nKent merkañ ar stumm-mañ evit an treiñ, gwiriait mat n'eus ket bet nemeur a gemmoù er rannbennadoù kuit da bourchas labour aner d'an droourien.",
+ "tpt-mark-summary": "Merket eo bet ar stumm-mañ da vezañ troet",
+ "tpt-edit-failed": "N'eus ket bet gallet hizivaat ar bajenn : $1",
+ "tpt-duplicate": "Implijet eo bet meur a wezh anv an unvez treiñ $1.",
+ "tpt-already-marked": "Merket eo bet ar stumm diwezhañ eus ar bajenn-mañ da vezañ troet dija.",
+ "tpt-unmarked": "N'eo ket merket ken ar bajenn $1 evit bezañ troet.",
+ "tpt-list-nopages": "N'eus pajenn ebet merket da vezañ troet na prest da vezañ merket da vezañ troet.",
+ "tpt-new-pages-title": "Pajennoù a c'haller da dreiñ",
+ "tpt-old-pages-title": "Pajennoù emeur o treiñ",
+ "tpt-other-pages-title": "Pajennoù torr",
+ "tpt-discouraged-pages-title": "Pajennoù dizerbedet",
+ "tpt-new-pages": "{{PLURAL:$1|Er bajenn-mañ|Er pajennoù-mañ}} ez eus testennoù enno balizennoù treiñ, met stumm ebet eus ar {{PLURAL:$1|bajenn-mañ|pajennoù-mañ}} n'eo bet merket da vezañ troet.",
+ "tpt-old-pages": "Stummoù zo eus ar {{PLURAL:$1|bajenn-mañ|pajennoù-mañ}} zo bet merket da vezañ troet.",
+ "tpt-other-pages": "Merket ez eus bet da vezañ troet {{PLURAL:$1|ur stumm kozh eus ar bajenn-mañ|stummoù koshoc'h eus ar pajennoù-mañ}};\nar {{PLURAL:$1|stumm|stummoù}} diwezhañ avat n'hallont ket bezañ merket da vezañ troet.",
+ "tpt-discouraged-pages": "Dizerbedet eo treiñ ar {{PLURAL:$1|bajenn-mañ|pajennoù-mañ}} pelloc'h.",
+ "tpt-select-prioritylangs": "Roll kodoù ar yezhoù d'ober ganto da gentañ, dispartiet gant skejoù :",
+ "tpt-select-prioritylangs-reason": "Abeg :",
+ "tpt-sections-prioritylangs": "Yezhoù pouezusañ",
+ "tpt-rev-mark": "merkañ da vezañ troet",
+ "tpt-rev-unmark": "Lemel a-ziwar ar roll treiñ",
+ "tpt-rev-discourage": "dizerbediñ",
+ "tpt-rev-encourage": "assevel",
+ "tpt-rev-mark-tooltip": "Merkañ stumm diwezhañ ar bajenn-mañ evel stumm da vezañ troet.",
+ "tpt-rev-unmark-tooltip": "Lemel ar bajenn-mañ a-ziwar ar roll treiñ.",
+ "tpt-rev-discourage-tooltip": "Dizerbediñ treiñ ar bajenn-mañ pelloc'h.",
+ "tpt-rev-encourage-tooltip": "Adlakaat ar bajenn-mañ war ar roll treiñ normal.",
+ "translate-tag-translate-link-desc": "Treiñ ar bajenn-mañ",
+ "translate-tag-markthis": "Merkañ ar bajenn-mañ evit an treiñ",
+ "translate-tag-markthisagain": "Er bajenn-mañ ez eus bet <span class=\"plainlinks\">[$1 kemm]</span> abaoe m'eo bet <span class=\"plainlinks\">[$2 merket da vezañ troet]</span>.",
+ "translate-tag-hasnew": "Er bajenn-mañ ez eus <span class=\"plainlinks\">[$1 kemm]</span> ha n'int ket bet merket da vezañ troet.",
+ "tpt-translation-intro": "Ur stumm <span class=\"plainlinks\">[$1 troet]</span> eus ar bajenn [[$2]] eo ar bajenn-mañ; kaset ez eus bet da benn $3% eus an droidigezh anezhi, ha diouzh an deiz emañ.",
+ "tpt-languages-legend": "Yezhoù all :",
+ "tpt-languages-zero": "Stagañ gant an troidigezhioù evit ar yezh-se",
+ "tpt-target-page": "N'hall ket ar bajenn-mañ bezañ hizivaet gant an dorn.\nUr stumm troet eus [[$1]] eo ar bajenn-mañ; gallout a ra bezañ hizivaet en ur implijout [$2 an ostilh treiñ].",
+ "tpt-unknown-page": "Miret eo an esaouenn anv-mañ evit troidigezh ar pajennoù.\nAr bajenn hoc'h eus klasket kemm ne seblant ket klotañ gant pajenn ebet bet merket evit bezañ troet.",
+ "tpt-discouraged-language-reason": "Abeg : $1",
+ "tpt-render-summary": "Hizivadenn da glotañ gant stumm nevez mammenn ar bajenn",
+ "tpt-download-page": "Ezporzhiañ ar bajenn gant an troidigezhioù",
+ "tpt-aggregategroup-add": "Ouzhpennañ",
+ "tpt-aggregategroup-save": "Enrollañ",
+ "tpt-aggregategroup-new-name": "Anv :",
+ "tpt-aggregategroup-new-description": "Deskrivadur (diret) :",
+ "tpt-aggregategroup-invalid-group": "N'eus ket eus ar strollad-mañ",
+ "tpt-invalid-group": "Strollad direizh",
+ "pt-parse-open": "Balizenn &lt;translate> digempouez.\nPatrom treiñ : <pre>$1</pre>",
+ "pt-parse-close": "Balizenn &lt;/translate> digempouez.\nPatrom treiñ <pre>$1</pre>",
+ "pt-parse-nested": "N'eo ket aotreet ar rannbennadoù &lt;translate> empret an eil en egile.\nTestenn ar valizenn : <pre>$1</pre>",
+ "pt-shake-multiple": "Merkerioù rannbennadoù lies evit ur rannbennad.\nTestenn ar rannbennad : <pre>$1</pre>",
+ "pt-shake-position": "Merkerioù rannbennad lec'hiet drol.\nTestenn ar rannbennad : <pre>$1</pre>",
+ "pt-shake-empty": "Rannbennad c'houllo evit ar merker $1.",
+ "log-description-pagetranslation": "Marilh an obererezhioù liammet gant sistem treiñ pajennoù",
+ "log-name-pagetranslation": "Marilh troidigezhioù pajennoù",
+ "pt-movepage-title": "Fiñval ar bajenn da dreiñ $1",
+ "pt-movepage-blockers": "Ar bajenn da dreiñ na c'hell ket bezañ adanvet en abeg d'ar fazi{{PLURAL:$1||où}} da-heul :",
+ "pt-movepage-block-base-exists": "Bez ez eus eus ar bajenn diazez moned [[:$1]].",
+ "pt-movepage-block-base-invalid": "Ar bajenn diazez moned en deus un titl direizh.",
+ "pt-movepage-block-tp-exists": "Bez ez eus eus ar bajenn treiñ moned [[:$2]].",
+ "pt-movepage-block-tp-invalid": "Direizh e vefe titl ar bajenn treiñ moned evit [[:$1]] (re hir ?).",
+ "pt-movepage-block-section-exists": "Bez ez eus ar ran eus ar bajenn voned [[:$2]].",
+ "pt-movepage-block-section-invalid": "Direizh e vefe titl rann ar bajenn voned evit [[:$1]] (re hir ?).",
+ "pt-movepage-block-subpage-exists": "Bez ez eus eus an is-pajenn voned [[:$2]].",
+ "pt-movepage-block-subpage-invalid": "Direizh e vefe titl an is-pajenn voned evit [[:$1]] (re hir ?).",
+ "pt-movepage-list-pages": "Roll ar pajennoù da fiñval",
+ "pt-movepage-list-translation": "{{PLURAL:$1|Pajenn|Pajennoù}} treiñ",
+ "pt-movepage-list-section": "Pajennoù{{PLURAL:$1|}} e rann",
+ "pt-movepage-list-other": "Ispajenn{{PLURAL:$1||où}} all",
+ "pt-movepage-list-count": "$1 {{PLURAL:bajenn|pajenn}} da zilec'hiañ en holl.",
+ "pt-movepage-legend": "Fiñval ar bajenn da dreiñ",
+ "pt-movepage-current": "Anv red :",
+ "pt-movepage-new": "Anv nevez :",
+ "pt-movepage-reason": "Abeg :",
+ "pt-movepage-subpages": "Fiñval an holl is-pajennoù",
+ "pt-movepage-action-check": "Gwiriekaat ha posupl eo adenvel",
+ "pt-movepage-action-perform": "Adenvel",
+ "pt-movepage-action-other": "Kemmañ ar moned",
+ "pt-movepage-intro": "Gant ar bajenn dibar-mañ e c'hallit adenvel ar pajennoù merket da vezañ troet.\nNe zeuio ket da wir diouzhtu an adenvel rak ret e vo dilec'hiañ kalz a bajennoù.\nAmzer dilec'hiañ ar pajennoù ne vo ket posupl c'hoari ganto.\nEr [[Special:Log/pagetranslation|page marilh treiñ]] e vo enrollet ar mankoù adenvel; eno e vo deoc'h o reizhañ gant an dorn.",
+ "pt-movepage-logreason": "Rann eus ar bajenn da dreiñ $1.",
+ "pt-movepage-started": "Adanvet eo bet ar bajenn diazez.\nMar plij gwiriit [[Special:Log/pagetranslation|pajenn marilh an troidigezhioù]] evit kempenn ar fazioù, mar bez, ha lenn ar gemennadenn glozañ.",
+ "pt-locked-page": "Prennet eo ar bajenn-mañ dre m' emeur oc'h adenvel ar bajenn da dreiñ.",
+ "pt-deletepage-lang-title": "O tiverkañ ar bajenn dreiñ $1.",
+ "pt-deletepage-full-title": "O tiverkañ ar bajenn da dreiñ $1.",
+ "pt-deletepage-invalid-title": "Faziek eo ar bajenn spisaet.",
+ "pt-deletepage-invalid-text": "N'eus ket eus ar bajenn spisaet ur bajenn da vezañ troet, nag un droidigezh anezhi.",
+ "pt-deletepage-action-check": "Rollañ ar pajennoù da vezañ diverket",
+ "pt-deletepage-action-perform": "Diverkañ",
+ "pt-deletepage-action-other": "Kemmañ ar moned",
+ "pt-deletepage-lang-legend": "Diverkañ ar bajenn dreiñ",
+ "pt-deletepage-full-legend": "Diverkañ ar bajenn a c'haller treiñ",
+ "pt-deletepage-any-legend": "Diverkañ ar bajenn da vezañ troet pe troidigezh ar bajenn da vezañ troet",
+ "pt-deletepage-current": "Anv ar bajenn :",
+ "pt-deletepage-reason": "Abeg :",
+ "pt-deletepage-subpages": "Diverkañ an holl ispajennoù",
+ "pt-deletepage-list-pages": "Roll ar pajennoù da ziverkañ",
+ "pt-deletepage-list-translation": "Pajennoù treiñ",
+ "pt-deletepage-list-section": "Pajennoù elfennoù treiñ",
+ "pt-deletepage-list-other": "Ispajennoù all",
+ "pt-deletepage-list-count": "$1 {{PLURAL:bajenn|pajenn}} da ziverkañ en holl.",
+ "pt-deletepage-full-logreason": "Rann eus ar bajenn da dreiñ $1.",
+ "pt-deletepage-lang-logreason": "Rann eus ar bajenn da dreiñ $1.",
+ "pm-page-does-not-exist": "N'eus ket eus $1.",
+ "pp-prepare-button-label": "Prientiñ",
+ "pp-save-button-label": "Enrollañ"
+}
diff --git a/MLEB/Translate/i18n/pagetranslation/bs.json b/MLEB/Translate/i18n/pagetranslation/bs.json
new file mode 100644
index 00000000..7dadf546
--- /dev/null
+++ b/MLEB/Translate/i18n/pagetranslation/bs.json
@@ -0,0 +1,97 @@
+{
+ "@metadata": {
+ "authors": [
+ "CERminator",
+ "Edinwiki"
+ ]
+ },
+ "pagetranslation": "Prijevod stranice",
+ "right-pagetranslation": "Označanje verzija stranica za prevođenje",
+ "tpt-desc": "Proširenje za prevođenje stranica sadržaja",
+ "tpt-section": "Jedinica prevođenja $1",
+ "tpt-section-new": "Nova jedinica prevođenja. Naziv: $1",
+ "tpt-section-deleted": "Jedinica prevođenja $1",
+ "tpt-template": "Šablon stranice",
+ "tpt-templatediff": "Šablon stranice se izmijenio.",
+ "tpt-diff-old": "Prethodni tekst",
+ "tpt-diff-new": "Novi tekst",
+ "tpt-submit": "Označi ovu verziju za prevođenje",
+ "tpt-sections-oldnew": "Nove i postojeće prevodilačke jedinice",
+ "tpt-sections-deleted": "Obrisane prevodilačke jedinice",
+ "tpt-sections-template": "Šablon stranice prevođenja",
+ "tpt-action-nofuzzy": "Ne poništavajte prevode",
+ "tpt-badtitle": "Zadano ime stranice ($1) nije valjan naslov",
+ "tpt-nosuchpage": "Stranica $1 ne postoji",
+ "tpt-oldrevision": "$2 nije posljednja verzija stranice [[:$1]].\nJedino posljednje verzije se mogu označiti za prevođenje.",
+ "tpt-notsuitable": "Stranica $1 nije pogodna za prevođenje.\nProvjerite da postoje oznake <nowiki><translate></nowiki> i da ima valjanu sintaksu.",
+ "tpt-saveok": "Stranica [[:$1]] je označena za prevođenje sa $2 {{PLURAL:$2|prevodilačkom jedinicom|prevodilačke jedinice|prevodilačkih jedinica}}.\nStranica se sad može <span class=\"plainlinks\">[$3 prevoditi]</span>.",
+ "tpt-badsect": "\"$1\" nije valjano ime za jedinicu prevođenja $2.",
+ "tpt-showpage-intro": "Ispod su navedene nove, postojeće i obrisane sekcije.\nPrije nego što označite ovu verziju za prevođenje, provjerite da su izmjene sekcija minimizirane da bi se spriječio nepotrebni rad prevodioca.",
+ "tpt-mark-summary": "Ova vezija označena za prevođenje",
+ "tpt-edit-failed": "Nije moguće ažurirati stranicu: $1",
+ "tpt-already-marked": "Posljednja verzija ove stranice je već označena za prevođenje.",
+ "tpt-unmarked": "Stranica $1 više nije označena za prevođenje.",
+ "tpt-list-nopages": "Nijedna stranica nije označena za prevođenje niti je spremna za označavanje.",
+ "tpt-new-pages": "{{PLURAL:$1|Ova stranica sadrži|Ove stranice sadrže}} tekst sa oznakama prijevoda, ali nijedna od verzija {{PLURAL:$1|ove stranice|ovih stranica}} nije trenutno označena za prevođenje.",
+ "tpt-old-pages": "Neke verzije {{PLURAL:$1|ove stranice|ovih stranica}} su označene za prevođenje.",
+ "tpt-other-pages": "{{PLURAL:$1|Stara verzija ove stranice je označena|Stare verzije ovih stranica su označene}} za prevođenje,\nali {{PLURAL:$1|posljednja verzija ne može|posljednje verzije ne mogu}} biti {{PLURAL:$1|označena|označene}} za prevođenje.",
+ "tpt-rev-unmark": "ukloni ovu stranicu iz prevođenja",
+ "translate-tag-translate-link-desc": "Prevedi ovu stranicu",
+ "translate-tag-markthis": "Označi ovu stranicu za prevođenje",
+ "translate-tag-markthisagain": "Ova stranica ima <span class=\"plainlinks\">[$1 izmjena]</span> od kako je posljednji put <span class=\"plainlinks\">[$2 označena za prevođenje]</span>.",
+ "translate-tag-hasnew": "Ova stranica sadrži <span class=\"plainlinks\">[$1 izmjena]</span> koje nisu označene za prevođenje.",
+ "tpt-translation-intro": "Ova stranica je <span class=\"plainlinks\">[$1 prevedena verzija]</span> stranice [[$2]] a prijevod je $3% dovršen i ažuriran.",
+ "tpt-languages-legend": "Drugi jezici:",
+ "tpt-target-page": "Ova stranica ne može biti ručno ažurirana.\nOva stranica je prijevod stranice [[$1]] a prijevodi se mogu ažurirati putem [$2 alata za prevođenje].",
+ "tpt-unknown-page": "Ovaj imenski prostor je rezervisan za prevode stranica sadržaja.\nStranica koju pokušavate uređivati ne odgovara nekoj od stranica koje su označene za prevođenje.",
+ "tpt-render-summary": "Ažuriram na novu verziju izvorne stranice",
+ "tpt-download-page": "Izvezi stranicu sa prijevodima",
+ "pt-parse-open": "Neuravnotežena &lt;translate> oznaka.\nŠablon za prevođenje: <pre>$1</pre>",
+ "pt-parse-close": "Neuravnotežena &lt;/translate> oznaka.\nŠablon za prevođenje: <pre>$1</pre>",
+ "pt-parse-nested": "Uklopljene &lt;translate> sekcije nisu dozvoljene.\nTekst oznake: <pre>$1</pre>",
+ "pt-shake-multiple": "Veći broj oznaka sekcija za istu sekciju.\nTekst sekcije: <pre>$1</pre>",
+ "pt-shake-position": "Oznake sekcija na nepredviđenoj poziciji.\nTekst sekcije: <pre>$1</pre>",
+ "pt-shake-empty": "Prazna sekcija za marker $1.",
+ "log-description-pagetranslation": "Zapisnik akcije vezanih za sistem prevođenja stranica",
+ "log-name-pagetranslation": "Zapisnik prijevoda stranice",
+ "pt-movepage-title": "Premještanje stranice za prevođenje $1",
+ "pt-movepage-blockers": "Stranica koja se može prevoditi ne može biti premještena na novo ime zbog {{PLURAL:$1|slijedeće greške|slijedećih grešaka}}:",
+ "pt-movepage-block-base-exists": "Ciljna bazna stranica [[:$1]] postoji.",
+ "pt-movepage-block-base-invalid": "Ciljna bazna stranica nije valjan naslov.",
+ "pt-movepage-block-tp-exists": "Ciljna stranica za prijevod [[:$2]] postoji.",
+ "pt-movepage-block-tp-invalid": "Naslov ciljne stranice za prijevod za [[:$1]] bi bio nevaljan (predugačak?).",
+ "pt-movepage-block-section-exists": "Ciljna sekcija stranice [[:$2]] postoji.",
+ "pt-movepage-block-section-invalid": "Naslov ciljne sekcije za [[:$1]] bi bio nevaljan (predugačak?).",
+ "pt-movepage-block-subpage-exists": "Ciljna podstranica [[:$2]] postoji.",
+ "pt-movepage-block-subpage-invalid": "Naslov ciljne podstranice za [[:$1]] bi bio nevaljan (predugačak?).",
+ "pt-movepage-list-pages": "Spisak stranica za premještanje",
+ "pt-movepage-list-translation": "Stranice za prijevod",
+ "pt-movepage-list-section": "Stranice sekcije",
+ "pt-movepage-list-other": "Druge podstranice",
+ "pt-movepage-list-count": "Ukupno $1 {{PLURAL:$1|stranica|stranice|stranica}} za premještanje.",
+ "pt-movepage-legend": "Premjesti stranicu koja se prevodi",
+ "pt-movepage-current": "Trenutni naziv:",
+ "pt-movepage-new": "Novi naziv:",
+ "pt-movepage-reason": "Razlog:",
+ "pt-movepage-subpages": "Premjesti sve podstranice",
+ "pt-movepage-action-check": "Provjeri da li je moguće premještanje",
+ "pt-movepage-action-perform": "Izvrši premještanje",
+ "pt-movepage-action-other": "Promijeni cilj",
+ "pt-movepage-intro": "Ova posebna stranica vam omogućava da premještate stranice koje su obilježene za prevođenje.\nAkcija premještanja neće biti odmah, jer mnoge stranice trebaju biti premještene.\nDok se stranice premještaju, neće biti mogućnosti koristiti se s tim stranicama.\nGreške će biti zapisane u [[Special:Log/pagetranslation|zapisnik prevođenja stranice]] te se one moraju ispravljati ručno.",
+ "pt-movepage-logreason": "Dio stranice koja se prevodi $1.",
+ "pt-movepage-started": "Osnovna stranica se sad premješta.\nMolimo provjerite [[Special:Log/pagetranslation|zapisnik prevoda stranice]] za greške i poruke završetka.",
+ "pt-locked-page": "Ova stranica je zaključana jer se stranica za prevođenje sada premješta.",
+ "pt-deletepage-lang-title": "Brisanje stranice za prevođenje $1.",
+ "pt-deletepage-action-check": "Spisak stranica za brisanje",
+ "pt-deletepage-action-perform": "Izvrši brisanje",
+ "pt-deletepage-action-other": "Promijeni cilj",
+ "pt-deletepage-current": "Naslov stranice:",
+ "pt-deletepage-reason": "Razlog:",
+ "pt-deletepage-subpages": "Obriši sve podstranice",
+ "pt-deletepage-list-pages": "Spisak stranica za brisanje",
+ "pt-deletepage-list-translation": "Stranice za prijevod",
+ "pt-deletepage-list-section": "Stranice sekcije",
+ "pt-deletepage-list-other": "Druge podstranice",
+ "pt-deletepage-full-logreason": "Dio stranice koja se prevodi $1.",
+ "pt-deletepage-lang-logreason": "Dio stranice za prevođenje $1."
+}
diff --git a/MLEB/Translate/i18n/pagetranslation/bug.json b/MLEB/Translate/i18n/pagetranslation/bug.json
new file mode 100644
index 00000000..241594c1
--- /dev/null
+++ b/MLEB/Translate/i18n/pagetranslation/bug.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Kurniasan"
+ ]
+ },
+ "translate-tag-translate-link-desc": "Tare'juma iyyedé leppa"
+}
diff --git a/MLEB/Translate/i18n/pagetranslation/bxr.json b/MLEB/Translate/i18n/pagetranslation/bxr.json
new file mode 100644
index 00000000..d460c976
--- /dev/null
+++ b/MLEB/Translate/i18n/pagetranslation/bxr.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Elvonudinium"
+ ]
+ },
+ "tpt-languages-legend": "Бусад хэлэнүүд:"
+}
diff --git a/MLEB/Translate/i18n/pagetranslation/ca.json b/MLEB/Translate/i18n/pagetranslation/ca.json
new file mode 100644
index 00000000..21c7ef23
--- /dev/null
+++ b/MLEB/Translate/i18n/pagetranslation/ca.json
@@ -0,0 +1,77 @@
+{
+ "@metadata": {
+ "authors": [
+ "Alvaro Vidal-Abarca",
+ "Jordi Roqué",
+ "SMP",
+ "Solde",
+ "Toniher",
+ "පසිඳු කාවින්ද",
+ "Vriullop",
+ "Fitoschido"
+ ]
+ },
+ "pagetranslation": "Traducció d'una pàgina",
+ "right-pagetranslation": "Marcar versions de pàgines per a traduir",
+ "action-pagetranslation": "gestiona les pàgines traduïbles",
+ "tpt-desc": "Extensió per a traduir les pàgines de contingut",
+ "tpt-section": "Unitat de traducció $1",
+ "tpt-section-new": "Nova unitat de traducció. Nom: $1",
+ "tpt-section-deleted": "Unitat de traducció $1",
+ "tpt-template": "Plantilla de la pàgina",
+ "tpt-templatediff": "La plantilla de la pàgina ha canviat",
+ "tpt-diff-old": "Text anterior",
+ "tpt-diff-new": "Text nou",
+ "tpt-submit": "Marca aquesta versió per traduir",
+ "tpt-sections-oldnew": "Unitats de traduccions noves i existents",
+ "tpt-sections-deleted": "Unitats de traducció suprimides",
+ "tpt-sections-template": "Plantilla de la pàgina de traducció",
+ "tpt-action-nofuzzy": "No invalida les traduccions",
+ "tpt-badtitle": "El nom de pàgina donat ($1) no és un títol vàlid",
+ "tpt-nosuchpage": "La pàgina $1 no existeix",
+ "tpt-notsuitable": "La pàgina $1 no està preparada per a la seva traducció.\nAssegureu-vos que té les etiquetes <nowiki><translate></nowiki> i una sintaxi vàlida.",
+ "tpt-rev-encourage": "restaura",
+ "translate-tag-translate-link-desc": "Traduïu aquesta pàgina",
+ "tpt-languages-legend": "Altres idiomes:",
+ "tpt-aggregategroup-add": "Afegeix",
+ "tpt-aggregategroup-save": "Desa",
+ "tpt-aggregategroup-new-name": "Nom:",
+ "tpt-invalid-group": "El grup no és vàlid",
+ "pt-movepage-title": "Mou la pàgina traduïble $1",
+ "pt-movepage-blockers": "La pàgina traduïble no pot ser reanomenada a causa {{PLURAL:$1|de l'error següent|dels errors següents}}:",
+ "pt-movepage-block-base-exists": "La pàgina base de traaducció [[:$1]] ja existeix.",
+ "pt-movepage-block-base-invalid": "La pàgina base de destinació no té un títol vàlid.",
+ "pt-movepage-block-tp-exists": "La pàgina de traducció de destinació [[:$2]] ja existeix.",
+ "pt-movepage-block-tp-invalid": "El títol de la pàgina de traducció de destinació [[:$1]] no seria vàlid (potser seria massa llarg).",
+ "pt-movepage-block-section-exists": "La pàgina de secció de destinació [[:$2]] ja existeix.",
+ "pt-movepage-block-section-invalid": "El títol de la pàgina de secció de destinació [[:$1]] no seria vàlid (potser seria massa llarg).",
+ "pt-movepage-block-subpage-exists": "La subpàgina de destinació [[:$2]] ja existeix.",
+ "pt-movepage-block-subpage-invalid": "El títol de la subpàgina de destinació [[:$1]] no seria vàlid (potser seria massa llarg).",
+ "pt-movepage-list-pages": "Llista de pàgines per moure",
+ "pt-movepage-list-translation": "{{PLURAL:$1|Pàgina|Pàgines}} de traducció",
+ "pt-movepage-list-section": "Pàgines de secció",
+ "pt-movepage-list-other": "Altres sub{{PLURAL:$1|pàgina|pàgines}}",
+ "pt-movepage-list-count": "En total, $1 {{PLURAL:$1|pàgina|pàgines}} a moure.",
+ "pt-movepage-legend": "Mou la pàgina traduïble",
+ "pt-movepage-current": "Nom actual:",
+ "pt-movepage-new": "Nom nou:",
+ "pt-movepage-reason": "Motiu:",
+ "pt-movepage-subpages": "Mou totes les subpàgines",
+ "pt-movepage-action-check": "Verifica si és possible el trasllat",
+ "pt-movepage-action-perform": "Fes el trasllat",
+ "pt-movepage-action-other": "Canvia la destinació",
+ "pt-movepage-intro": "Aquesta pàgina especial permet desplaçar pàgines que estan marcades per a la traducció.\nEl trasllat no serà instantani, perquè moltes pàgines hauran de ser mogudes.\nMentre s'estiguin traslladant les pàgines no serà possible interaccionar amb les pàgines en qüestió.\nEls errors sortiran indicats al [[Special:Log/pagetranslation|registre de traducció de pàgines]] i hauran d'ésser reparats a mà.",
+ "pt-movepage-logreason": "Part de la pàgina a traduir $1.",
+ "pt-movepage-started": "La pàgina base està traslladada.\nComproveu el [[Special:Log/pagetranslation|registre de traducció de pàgines]] pels errors i el missatge de finalització.",
+ "pt-locked-page": "Aquesta pàgina està bloquejada perquè la pàgina a traduir està en un procés de trasllat.",
+ "pt-deletepage-reason": "Raó:",
+ "pm-import-button-label": "Importa",
+ "pm-savepages-button-label": "Desa",
+ "pm-cancel-button-label": "Cancel·la",
+ "pm-pagename-placeholder": "Introduïu el nom de la pàgina",
+ "pm-langcode-placeholder": "Codi d’idioma",
+ "pm-langcode-missing": "Introduïu el codi de l’idioma",
+ "pm-pagetitle-invalid": "Introduïu un títol vàlid per la pàgina",
+ "pp-save-button-label": "Desa",
+ "pp-pagename-missing": "Introduïu el nom de la pàgina."
+}
diff --git a/MLEB/Translate/i18n/pagetranslation/ce.json b/MLEB/Translate/i18n/pagetranslation/ce.json
new file mode 100644
index 00000000..1d754daf
--- /dev/null
+++ b/MLEB/Translate/i18n/pagetranslation/ce.json
@@ -0,0 +1,54 @@
+{
+ "@metadata": {
+ "authors": [
+ "Sasan700",
+ "Умар"
+ ]
+ },
+ "pagetranslation": "АгӀонаш гочяр",
+ "tpt-diff-old": "Хьалхара йоза",
+ "tpt-diff-new": "Керла йоза",
+ "tpt-old-pages-title": "Гочан чура агӀонаш",
+ "tpt-discouraged-pages-title": "Юхатоьхна агӀонаш",
+ "tpt-new-pages": "{{PLURAL:$1|1=ХӀокху агӀона чулацам бу|ХӀокху агӀонийн чулацам бу}} гочан тегашца йоза, амма {{PLURAL:$1|1=хӀокху агӀона|хӀокху агӀонийн}} цхьа верси билгалйина яц гочян.",
+ "tpt-old-pages": "{{PLURAL:$1|1=хӀокху агӀона|хӀокху агӀонийн}} цхьайолу версеш гочян билгалйина ю.",
+ "tpt-discouraged-pages": "{{PLURAL:$1|1=ХӀара агӀо|ХӀара агӀонаш}} кхий гочйира яц аьлла сацам бина.",
+ "tpt-languages-legend": "Кхин меттанаш:",
+ "tpt-languages-nonzero": "$1 ($2% гочдина)",
+ "aggregategroups": "Вовшаштоьхна тобанаш",
+ "tpt-aggregategroup-add": "ТӀетоха",
+ "tpt-aggregategroup-new-description": "Цуьнах лаьцна (тӀехь дац):",
+ "tpt-aggregategroup-edit-name": "ЦӀе:",
+ "tpt-aggregategroup-update": "Ӏалашдан",
+ "tpt-aggregategroup-update-cancel": "Цаоьшу",
+ "tpt-invalid-group": "ТӀекхачарехь йоцу тоба",
+ "logentry-pagetranslation-moveok": "$1 {{GENDER:$2|цӀе хийцина}} гочян луш йолу агӀона «$3» → «$4»",
+ "pt-movepage-current": "Карара цӀе:",
+ "pt-movepage-new": "Керла цӀе:",
+ "pt-movepage-reason": "Бахьна:",
+ "pt-movepage-action-other": "Хийца Ӏалашо",
+ "pt-deletepage-invalid-text": "Билгалйина агӀо гоч я луш йолу агӀонийн юкъа йогӀуш яц.",
+ "pt-deletepage-action-perform": "Кхочушдé дӀаяккхар",
+ "pt-deletepage-action-other": "Хийца Ӏалашо",
+ "pt-deletepage-current": "АгӀона цӀе:",
+ "pagemigration": "АгӀонийн миграци",
+ "pm-import-button-label": "Импорт ян",
+ "pm-savepages-button-label": "Ӏалашдан",
+ "pm-cancel-button-label": "Цаоьшу",
+ "pm-pagename-placeholder": "Язъе агӀона цӀе",
+ "pm-langcode-placeholder": "Метта код",
+ "pm-page-does-not-exist": "«$1» яц",
+ "pm-old-translations-missing": "$1 шира гочдарш чохь дац",
+ "pm-pagename-missing": "Дехар до, дӀаязъе агӀона цӀе:",
+ "pm-langcode-missing": "Дехар до, меттан код язъе",
+ "pm-pagetitle-invalid": "Дехар до, дӀаязеъе агӀона нийса цӀе.",
+ "pp-save-summary": "АгӀо гочян кечяр",
+ "pagepreparation": "АгӀо гочян кечяр",
+ "pp-pagename-placeholder": "Язъе агӀона цӀе",
+ "pp-prepare-button-label": "Кечъян",
+ "pp-save-button-label": "Ӏалашян",
+ "pp-save-message": "АгӀо Ӏалашйина. Хьан йиш ю иза [$1 таян].",
+ "pp-pagename-missing": "Дехар до, дӀаязъе агӀона цӀе.",
+ "pp-diff-old-header": "ДӀадолалун йоза",
+ "pp-diff-new-header": "Кечдина йоза"
+}
diff --git a/MLEB/Translate/i18n/pagetranslation/ckb.json b/MLEB/Translate/i18n/pagetranslation/ckb.json
new file mode 100644
index 00000000..8be023ca
--- /dev/null
+++ b/MLEB/Translate/i18n/pagetranslation/ckb.json
@@ -0,0 +1,33 @@
+{
+ "@metadata": {
+ "authors": [
+ "Asoxor",
+ "Calak",
+ "Marmzok",
+ "Muhammed taha",
+ "رزگار"
+ ]
+ },
+ "pagetranslation": "وەرگێڕانی پەڕە",
+ "tpt-template": "داڕێژەی پەڕە",
+ "tpt-templatediff": "داڕێژەی لاپەڕەکە گۆڕاوە.",
+ "tpt-diff-old": "دەقی پێشوو",
+ "tpt-diff-new": "دەقی نوێ",
+ "tpt-submit": "نیشان‌کردنی ئەم وەشانە بۆ وەرگێڕان",
+ "tpt-sections-template": "داڕێژی لاپەڕەی وەرگێڕان",
+ "tpt-nosuchpage": "پەڕەی \"$1\" بوونی نیه‌",
+ "tpt-mark-summary": "نیشانکردنی ئەم وەشانە بۆ وەرگێڕان",
+ "tpt-already-marked": "دوایین وەشانی ئەم لاپەڕەیە لە پێش‌دا بۆ وەرگێڕان نیشان کراوە.",
+ "tpt-select-prioritylangs-reason": "هۆکار:",
+ "tpt-rev-encourage": "گەڕاندنەوە",
+ "translate-tag-translate-link-desc": "ئەم پەڕەیە وەربگێڕە",
+ "translate-tag-markthis": "نیشان‌کردنی ئەم لاپەڕەیە بۆ وەرگێڕان",
+ "tpt-languages-legend": "زمانەکانی دیکە:",
+ "tpt-aggregategroup-add": "زێدەبکە",
+ "tpt-aggregategroup-save": "پاشەکەوتی بکە",
+ "tpt-aggregategroup-new-name": "ناو:",
+ "pt-movepage-new": "ناوی نوێ:",
+ "pt-movepage-reason": "هۆکار:",
+ "pt-deletepage-current": "ناوی پەڕە:",
+ "pt-deletepage-reason": "هۆکار:"
+}
diff --git a/MLEB/Translate/i18n/pagetranslation/cs.json b/MLEB/Translate/i18n/pagetranslation/cs.json
new file mode 100644
index 00000000..af9af044
--- /dev/null
+++ b/MLEB/Translate/i18n/pagetranslation/cs.json
@@ -0,0 +1,130 @@
+{
+ "@metadata": {
+ "authors": [
+ "Chmee2",
+ "Janet11",
+ "Littledogboy",
+ "Matěj Grabovský",
+ "Michaelbrabec",
+ "Mormegil",
+ "Vks",
+ "H4nek"
+ ]
+ },
+ "pagetranslation": "Překlad stránek",
+ "right-pagetranslation": "Označování verzí stránek pro překlad",
+ "action-pagetranslation": "spravovat přeložitelné stránky",
+ "tpt-desc": "Rozšíření pro překládání stránek s obsahem",
+ "tpt-section": "Část překladu $1",
+ "tpt-section-new": "Nová část překladu.\nNázev: $1",
+ "tpt-section-deleted": "Část překladu $1",
+ "tpt-template": "Šablona stránky",
+ "tpt-templatediff": "Šablona stránky se změnila.",
+ "tpt-diff-old": "Předchozí text",
+ "tpt-diff-new": "Nový text",
+ "tpt-submit": "Označit tuto verzi pro překlad",
+ "tpt-sections-oldnew": "Nové a existující části překladu",
+ "tpt-sections-deleted": "Smazané části překladu",
+ "tpt-sections-template": "Šablona stránky pro překlad",
+ "tpt-action-nofuzzy": "Nezneplatňovat překlady",
+ "tpt-badtitle": "Zadaný název stránky ($1) je neplatný",
+ "tpt-nosuchpage": "Stránka $1 neexistuje",
+ "tpt-oldrevision": "$2 není nejnovější verze stránky [[:$1]].\nPro překlad je možné označit pouze nejnovější verze.",
+ "tpt-notsuitable": "Stránka $1 není vhodná pro překlad.\nUjistěte se, že obsahuje značky <code><nowiki><translate></nowiki></code> a má platnou syntaxi.",
+ "tpt-saveok": "Stránka [[:$1]] byla označena pro překlad {{PLURAL:$2|s $2 částí překladu|se $2 částmi překladu|s $2 částmi překladu}}.\nTato stránka může být nyní <span class=\"plainlinks\">[$3 přeložena]</span>.",
+ "tpt-badsect": "„$1“ není platný název části překladu $2.",
+ "tpt-showpage-intro": "Níže jsou uvedeny nové, současné a smazané části.\nNež tuto verzi označíte pro překlad, zkontrolujte, že změny částí jsou minimální, abyste zabránili zbytečné práci překladatelů.",
+ "tpt-mark-summary": "Tato verze je označená pro překlad",
+ "tpt-edit-failed": "Nelze aktualizovat stránku: $1",
+ "tpt-already-marked": "Nejnovější verze této stránky už byla označena pro překlad.",
+ "tpt-unmarked": "Stránka $1 už není označena k překladu.",
+ "tpt-list-nopages": "Žádné stránky nejsou označeny pro překlad nebo na to nejsou připraveny.",
+ "tpt-new-pages-title": "Stránky navržené k překladu",
+ "tpt-old-pages-title": "Překládané stránky",
+ "tpt-other-pages-title": "Rozbité stránky",
+ "tpt-discouraged-pages-title": "Nedoporučené stránky",
+ "tpt-new-pages": "{{PLURAL:$1|Tato stránka obsahuje|Tyto stránky obsahují}} text se značkami pro překlad, ale žádná verze {{PLURAL:$1|této stránky|těchto stránek}} není aktuálně označena pro překlad.",
+ "tpt-old-pages": "Některé verze {{PLURAL:$1|této stránky|těchto stránek}} byly označeny pro překlad.",
+ "tpt-other-pages": "Starší verze {{PLURAL:$1|této stránky je označena|těchto stránek jsou označeny}} pro překlad,\nale nejnovější verze {{PLURAL:$1|nemůže být k překladu označena|nemohou být k překladu označeny}}.",
+ "tpt-discouraged-pages": "Další překlady {{PLURAL:$1|této stránky|těchto stránek}} se nedoporučují.",
+ "tpt-select-prioritylangs": "Čárkou oddělený seznam kódů prioritních jazyků:",
+ "tpt-select-prioritylangs-force": "Zakázat překlady do jiných než prioritních jazyků",
+ "tpt-select-prioritylangs-reason": "Důvod:",
+ "tpt-sections-prioritylangs": "Prioritní jazyky",
+ "tpt-rev-mark": "označit pro překlad",
+ "tpt-rev-unmark": "odstranit z překladu",
+ "tpt-rev-discourage": "nedoporučit",
+ "tpt-rev-encourage": "Obnovit",
+ "tpt-rev-mark-tooltip": "Označí nejnovější verzi této stránky k překladu.",
+ "tpt-rev-unmark-tooltip": "Odstranit tuto stránku z překladu.",
+ "tpt-rev-discourage-tooltip": "Nedoporučí další překlady této stránky.",
+ "tpt-rev-encourage-tooltip": "Vrátí tuto stránku k normálnímu překladu.",
+ "translate-tag-translate-link-desc": "Přeložit tuto stránku",
+ "translate-tag-markthis": "Označit tuto stránku pro překlad",
+ "translate-tag-markthisagain": "Tato stránka byla <span class=\"plainlinks\">[$1 změněna]</span> od posledního <span class=\"plainlinks\">[$2 označení pro překlad]</span>.",
+ "translate-tag-hasnew": "Tato stránka obsahuje <span class=\"plainlinks\">[$1 změny]</span>, které nebyly označeny pro překlad.",
+ "tpt-translation-intro": "Toto je <span class=\"plainlinks\">[$1 přeložená verze]</span> stránky [[$2]], překlad je hotový z $3 %.",
+ "tpt-languages-legend": "Jiné jazyky:",
+ "tpt-languages-zero": "Začít překlad do tohoto jazyka",
+ "tpt-tab-translate": "Přeložit",
+ "tpt-target-page": "Tuto stránku nelze ručně aktualizovat.\nTato stránka je překladem stránky [[$1]] a překlad lze aktualizovat pomocí [$2 nástroje pro překlad].",
+ "tpt-unknown-page": "Tento jmenný prostor je vyhrazen pro překlady stránek s obsahem.\nZdá se, že stránka, kterou se pokoušíte upravovat, neodpovídá žádné stránce označené pro překlad.",
+ "tpt-translation-restricted": "Správce překladů zabránil překladu této stránky do tohoto jazyka.\n\nZdůvodnění: $1",
+ "tpt-discouraged-language-force-header": "Tuto stránku nelze překládat do jazyka $1.",
+ "tpt-discouraged-language-force-content": "Správce překladů se rozhodl, že tuto stránku je možné překládat pouze do $1.",
+ "tpt-discouraged-language-header": "Překlad do jazyka $1 není pro tuto stránku prioritou.",
+ "tpt-discouraged-language-content": "Správce překladů se rozhodl zacílit překladatelské úsilí na $1.",
+ "tpt-discouraged-language-force": "<strong>Tuto stránku nelze překládat do jazyka $2.</strong>\n\nSprávce překladů se rozhodl, že tuto stránku lze překládat pouze do $3.",
+ "tpt-discouraged-language": "<strong>Překlad do jazyka $2 není pro tuto stránku prioritní.</strong>\n\nSprávce překladů se rozhodl zaměřit překladatelské úsilí na $3.",
+ "tpt-discouraged-language-reason": "Zdůvodnění: $1",
+ "tpt-priority-languages": "Správce překladů nastavil prioritní jazyky pro tuto skupinu na $1.",
+ "tpt-render-summary": "Stránka aktualizována, aby odpovídala nové verzi zdrojové stránky",
+ "tpt-download-page": "Exportovat stránky s překlady",
+ "tpt-aggregategroup-add": "Přidat",
+ "tpt-aggregategroup-save": "Uložit",
+ "tpt-aggregategroup-new-name": "Jméno:",
+ "tpt-aggregategroup-new-description": "Popis (nepovinné):",
+ "tpt-aggregategroup-invalid-group": "Skupina neexistuje",
+ "log-description-pagetranslation": "Protokol úkonů souvisejících se systémem překladu stránek",
+ "log-name-pagetranslation": "Kniha překladů stránek",
+ "logentry-pagetranslation-mark": "$1 {{GENDER:$2|označil|označila}} stránku $3 k překladu",
+ "logentry-pagetranslation-unmark": "$1 {{GENDER:$2|vyjmul|vyjmula}} stránku $3 z překládání",
+ "pt-movepage-list-pages": "Seznam stránek k přesunutí",
+ "pt-movepage-list-translation": "Překlad {{PLURAL:$1|stránky|stránek}}",
+ "pt-movepage-list-section": "{{PLURAL:$1|Stránka s částí překladu|Stránky s částmi překladu}}",
+ "pt-movepage-list-other": "Další {{PLURAL:$1|podstránka|podstránky}}",
+ "pt-movepage-list-count": "Celkem $1 {{PLURAL:$1| stránka|stránek}} k přesunutí.",
+ "pt-movepage-legend": "Přesunout přeložitelnou stránku",
+ "pt-movepage-current": "Současný název:",
+ "pt-movepage-new": "Nový název:",
+ "pt-movepage-reason": "Důvod:",
+ "pt-movepage-subpages": "Přesunout všechny podstránky",
+ "pt-movepage-action-check": "Zkontrolovat, zda je přesun možný",
+ "pt-movepage-action-perform": "Přesunout",
+ "pt-movepage-action-other": "Změnit cíl",
+ "pt-deletepage-reason": "Důvod:",
+ "pt-deletepage-subpages": "Odstranit všechny podstránky",
+ "pt-deletepage-list-pages": "Seznam stránek ke smazání",
+ "pt-deletepage-list-translation": "Překladové stránky",
+ "pt-deletepage-list-section": "Stránky s částmi překladu",
+ "pt-deletepage-list-other": "Další podstránky",
+ "pt-deletepage-list-count": "Celkem $1 {{PLURAL:$1|stránky|stránky|stránek}} ke smazání.",
+ "pt-deletepage-full-logreason": "Část přeložitelné stránky „$1“.",
+ "pt-deletepage-lang-logreason": "Část překladové stránky „$1“.",
+ "pagemigration": "Migrace překladových stránek",
+ "pm-import-button-label": "Importovat",
+ "pm-savepages-button-label": "Uložit",
+ "pm-cancel-button-label": "Storno",
+ "pm-pagename-placeholder": "Zadejte název stránky",
+ "pm-langcode-placeholder": "Kód jazyka",
+ "pm-page-does-not-exist": "Stránka $1 neexistuje",
+ "pm-old-translations-missing": "Stránka $1 neobsahuje staré překlady",
+ "pm-extra-units-warning": "Mohou existovat přebytečné části překladu. Zarovnejte prosím správně zdrojové a cílové části",
+ "pm-pagename-missing": "Zadejte prosím název stránky",
+ "pm-langcode-missing": "Zadejte prosím kód jazyka",
+ "pm-add-icon-hover-text": "Přidat část níže",
+ "pm-swap-icon-hover-text": "Prohodit s částí níže",
+ "pm-delete-icon-hover-text": "Smazat položku",
+ "tpt-translate-title": "Umožnit překlad názvu stránky",
+ "pp-pagename-missing": "Zadejte prosím název stránky."
+}
diff --git a/MLEB/Translate/i18n/pagetranslation/cu.json b/MLEB/Translate/i18n/pagetranslation/cu.json
new file mode 100644
index 00000000..bc353f60
--- /dev/null
+++ b/MLEB/Translate/i18n/pagetranslation/cu.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "ОйЛ"
+ ]
+ },
+ "tpt-aggregategroup-new-name": "имѧ :"
+}
diff --git a/MLEB/Translate/i18n/pagetranslation/cy.json b/MLEB/Translate/i18n/pagetranslation/cy.json
new file mode 100644
index 00000000..4e14766c
--- /dev/null
+++ b/MLEB/Translate/i18n/pagetranslation/cy.json
@@ -0,0 +1,53 @@
+{
+ "@metadata": {
+ "authors": [
+ "Cymrodor",
+ "Lloffiwr",
+ "Xxglennxx"
+ ]
+ },
+ "pagetranslation": "Cyfieithu tudalen",
+ "tpt-section": "Adran gyfieithu rhif $1",
+ "tpt-section-deleted": "Adran gyfieithu rhif $1",
+ "tpt-template": "Nodyn y dudalen",
+ "tpt-templatediff": "Newidiwyd nodyn y dudalen.",
+ "tpt-diff-old": "Y testun cynt",
+ "tpt-diff-new": "Y testun newydd",
+ "tpt-submit": "Marcio'r diwygiad hwn i'w gyfieithu",
+ "tpt-sections-oldnew": "Unedau cyfieithu, yn newydd ac yno'n barod",
+ "tpt-sections-deleted": "Unedau cyfieithu dileedig",
+ "tpt-sections-template": "Nodyn cyfieithu tudalen",
+ "tpt-other-pages-title": "Tudalennau toredig",
+ "tpt-select-prioritylangs-reason": "Rheswm:",
+ "tpt-sections-prioritylangs": "Blaenoriaethau ymhlith yr ieithoedd",
+ "tpt-languages-legend": "Ieithoedd eraill:",
+ "tpt-discouraged-language-reason": "Rheswm: $1",
+ "tpt-aggregategroup-add": "Ychwaneger",
+ "tpt-aggregategroup-save": "Cadw",
+ "tpt-aggregategroup-new-name": "Enw:",
+ "tpt-aggregategroup-new-description": "Disgrifiad (dewisol):",
+ "log-name-pagetranslation": "Lòg cyfieithu tudalennau",
+ "pt-movepage-list-pages": "Rhestr y tudalennau i'w symud",
+ "pt-movepage-list-translation": "{{PLURAL:$1||Tudalen gyfieithu|Tudalennau cyfieithu}}",
+ "pt-movepage-list-section": "{{PLURAL:$1||Tudalen|Tudalennau}} uned gyfieithu",
+ "pt-movepage-list-other": "{{PLURAL:$1|Isdudalen arall|Isdudalen arall|Isdudalennau eraill}}",
+ "pt-movepage-list-count": "Cyfanswm y tudalennau i'w symud yw {{PLURAL:$1|$1}}.",
+ "pt-movepage-legend": "Symud tudalen y gellir ei chyfieithu",
+ "pt-movepage-current": "Enw cyfredol:",
+ "pt-movepage-new": "Enw newydd:",
+ "pt-movepage-reason": "Rheswm:",
+ "pt-movepage-subpages": "Symud pob isdudalen",
+ "pt-movepage-action-check": "Cadarnhau bod symud y dudalen yn bosibl",
+ "pt-movepage-action-perform": "Symuder",
+ "pt-movepage-action-other": "Dewis tudalen wahanol",
+ "pt-deletepage-action-perform": "Dilëir",
+ "pt-deletepage-action-other": "Dewis tudalen wahanol",
+ "pt-deletepage-current": "Enw'r dudalen:",
+ "pt-deletepage-reason": "Rheswm:",
+ "pt-deletepage-subpages": "Dileu'r holl isdudalennau",
+ "pt-deletepage-list-pages": "Rhestr y tudalennau i'w dileu",
+ "pt-deletepage-list-translation": "Tudalennau cyfieithu",
+ "pt-deletepage-list-section": "Tudalennau uned gyfieithu",
+ "pt-deletepage-list-other": "Isdudalennau eraill",
+ "pt-deletepage-list-count": "Cyfanswm y tudalennau i'w dileu yw {{PLURAL:$1|$1}}."
+}
diff --git a/MLEB/Translate/i18n/pagetranslation/da.json b/MLEB/Translate/i18n/pagetranslation/da.json
new file mode 100644
index 00000000..2961339f
--- /dev/null
+++ b/MLEB/Translate/i18n/pagetranslation/da.json
@@ -0,0 +1,159 @@
+{
+ "@metadata": {
+ "authors": [
+ "Byrial",
+ "Christian List",
+ "Emilkris33",
+ "Kaare",
+ "Peter Alberti",
+ "Purodha"
+ ]
+ },
+ "pagetranslation": "Sideoversættelse",
+ "right-pagetranslation": "Markere versioner af sider for oversættelse",
+ "action-pagetranslation": "håndter oversætbare sider",
+ "tpt-desc": "Udvidelse til oversættelse af indholdssider",
+ "tpt-section": "Oversættelsesenhed $1",
+ "tpt-section-new": "Ny oversættelsesenhed.\nNavn: $1",
+ "tpt-section-deleted": "Oversættelsesenhed $1",
+ "tpt-template": "Sideskabelon",
+ "tpt-templatediff": "Sideskabelonen er blevet ændret.",
+ "tpt-diff-old": "Forrige tekst",
+ "tpt-diff-new": "Ny tekst",
+ "tpt-submit": "Markér denne version for oversættelse",
+ "tpt-sections-oldnew": "Nye og eksisterende oversættelsesenheder",
+ "tpt-sections-deleted": "Slettede oversættelsesenheder",
+ "tpt-sections-template": "Skabelon til oversættelsesside",
+ "tpt-action-nofuzzy": "Ugyldiggør ikke oversættelser.",
+ "tpt-badtitle": "Det angivne sidenavn ($1) er ikke en gyldig titel",
+ "tpt-nosuchpage": "Siden $1 findes ikke",
+ "tpt-oldrevision": "$2 er ikke den seneste version af siden [[:$1]].\nKun den seneste version kan markeres for oversættelse.",
+ "tpt-notsuitable": "Siden $1 er ikke parat til oversættelse.\nSørg for at den har <nowiki><translate></nowiki>-tags og en gyldig syntaks.",
+ "tpt-saveok": "Siden [[:$1]] er blevet markeret til oversættelse med $2 {{PLURAL:$2|oversættelsesenhed|oversættelsesenheder}}.\nSiden kan nu <span class=\"plainlinks\">[$3 oversættes]</span>.",
+ "tpt-offer-notify": "Du kan <span class=\"plainlinks\">[$1 underrette oversættere]</span> om denne side.",
+ "tpt-badsect": "\"$1\" er ikke et gyldig navn for oversættelsesenhed $2.",
+ "tpt-showpage-intro": "Herunder listes der nye, eksisterende og slettede oversættelsesenheder.\nFør denne version markeres til oversættelse, skal du kontrollere, at ændringerne i oversættelsesenhederne er minimeret for at undgå at give oversætterne unødigt arbejde.",
+ "tpt-mark-summary": "Markerede denne version for oversættelse",
+ "tpt-edit-failed": "Kunne ikke opdatere siden: $1",
+ "tpt-duplicate": "Oversættelsesenhedsnavnet $1 anvendes mere end en gang.",
+ "tpt-already-marked": "Den seneste version af denne side er allerede markeret for oversættelse.",
+ "tpt-unmarked": "Siden $1 er ikke længere markeret til oversættelse.",
+ "tpt-list-nopages": "Ingen sider er markeret for oversættelse eller parate til at blive markeret for oversættelse.",
+ "tpt-new-pages-title": "Sider foreslået til oversættelse",
+ "tpt-old-pages-title": "Sider som oversættes",
+ "tpt-other-pages-title": "Fejlbehæftede sider",
+ "tpt-discouraged-pages-title": "Frarådede sider",
+ "tpt-new-pages": "{{PLURAL:$1|Denne side|Disse sider}} indeholder tekst med oversættelsestags, men ingen version af {{PLURAL:$1|siden|siderne}} er i øjeblikket markeret for oversættelse.",
+ "tpt-old-pages": "En version af {{PLURAL:$1|denne side|disse sider}} er markeret for oversættelse.",
+ "tpt-other-pages": "{{PLURAL:$1|En gammel version af denne side er|Ældre versioner af disse sider er}} markeret til oversættelse,\nmen {{PLURAL:$1|den seneste version|de seneste versioner}} kan ikke mærkes til oversættelse.",
+ "tpt-discouraged-pages": "{{PLURAL:$1|Denne side|Disse sider}} er blevet frarådet yderligere oversættelse.",
+ "tpt-select-prioritylangs": "Liste over sprogkoder for prioriterede sprog, adskilt med kommaer:",
+ "tpt-select-prioritylangs-force": "Forhindre oversættelse til andre sprog end de prioriterede sprog",
+ "tpt-select-prioritylangs-reason": "Begrundelse:",
+ "tpt-sections-prioritylangs": "Prioriterede sprog",
+ "tpt-rev-mark": "marker til oversættelse",
+ "tpt-rev-unmark": "fjern fra oversættelse",
+ "tpt-rev-discourage": "fraråd",
+ "tpt-rev-encourage": "gendan",
+ "tpt-rev-mark-tooltip": "Marker den seneste version af denne side til oversættelse.",
+ "tpt-rev-unmark-tooltip": "Fjern denne side fra oversættelse.",
+ "tpt-rev-discourage-tooltip": "Fraråd yderligere oversættelse af denne side.",
+ "tpt-rev-encourage-tooltip": "Gendan denne side til normal oversættelse.",
+ "translate-tag-translate-link-desc": "Oversæt denne side",
+ "translate-tag-markthis": "Markér denne side for oversættelse",
+ "translate-tag-markthisagain": "Denne side er <span class=\"plainlinks\">[$1 ændret]</span> siden den sidst blev <span class=\"plainlinks\">[$2 markeret for oversættelse]</span>.",
+ "translate-tag-hasnew": "Denne side indeholder <span class=\"plainlinks\">[$1 ændringer]</span> som ikke er markeret for oversættelse.",
+ "tpt-translation-intro": "Denne side er en <span class=\"plainlinks\">[$1 oversat version]</span> af siden [[$2]], og oversættelsen er $3 % komplet.",
+ "tpt-languages-legend": "Andre sprog:",
+ "tpt-languages-zero": "Begynd på oversættelsen til dette sprog",
+ "tpt-tab-translate": "Oversæt",
+ "tpt-target-page": "Denne side kan ikke opdateres manuelt.\nSiden er en oversættelse af siden [[$1]] og oversættelsen kan opdateres ved at bruge [$2 oversættelsesværktøjet].",
+ "tpt-unknown-page": "Dette navnerum er reserveret til oversættelser af indholdssider.\nSiden som du prøver at redigere, ser ikke ud til at svare til nogen side markeret for oversættelse.",
+ "tpt-translation-restricted": "Oversættelse af denne side til dette sprog blev forhindret af en oversættelsesadministrator.\n\nÅrsag: $1",
+ "tpt-discouraged-language-force": "<strong>Denne side kan ikke oversættes til $2.</strong>\n\nEn oversættelsesadministrator besluttede at denne side kun kan oversættes til $3.",
+ "tpt-discouraged-language": "<strong>Oversættelse til $2 er ikke en prioritet for denne side.</strong>\n\nEn oversættelsesadministrator besluttede at fokusere oversættelsesarbejdet på $3.",
+ "tpt-discouraged-language-reason": "Begrundelse: $1",
+ "tpt-priority-languages": "En oversættelsesadministrator har sat prioritetssprogene for denne gruppe til $1.",
+ "tpt-render-summary": "Opdaterer for at passe til en ny version af kildesiden",
+ "tpt-download-page": "Eksportér side med oversættelser",
+ "aggregategroups": "Samlegrupper",
+ "tpt-aggregategroup-add": "Tilføj",
+ "tpt-aggregategroup-save": "Gem",
+ "tpt-aggregategroup-add-new": "Tilføj en ny samlegruppe",
+ "tpt-aggregategroup-new-name": "Navn:",
+ "tpt-aggregategroup-new-description": "Beskrivelse (valgfri):",
+ "tpt-aggregategroup-remove-confirm": "Er du sikker på, at du vil slette denne samlegruppe?",
+ "tpt-aggregategroup-invalid-group": "Gruppen findes ikke",
+ "pt-parse-open": "Ubalanceret &lt;translate> tag.\nOversættelse skabelon: <pre>$1</pre>",
+ "pt-parse-close": "Ubalanceret &lt;/translate> tag.\nOversættelse skabelon: <pre>$1</pre>",
+ "pt-parse-nested": "Indlejrede &lt;translate>-oversættelsesenheder er ikke tilladt.\nTagtekst: <pre>$1</pre>",
+ "pt-shake-multiple": "Flere oversættelsesenhedsmarkører til en oversættelsesenhed.\nOversættelsesenhedstekst: <pre>$1</pre>",
+ "pt-shake-position": "Oversættelsesenhedsmarkører på uventet position.\nOversættelsesenhedstekst: <pre>$1</pre>",
+ "pt-shake-empty": "Tom oversættelsesenhed for markøren \"$1\".",
+ "log-description-pagetranslation": "Log for handlinger i forbindelse med side oversættelses systemet",
+ "log-name-pagetranslation": "Sideoversættelseslog",
+ "logentry-pagetranslation-mark": "$1 {{GENDER:$2|markerede}} $3 til oversættelse",
+ "logentry-pagetranslation-unmark": "$1 {{GENDER:$2|fjernede}} $3 fra oversættelse",
+ "logentry-pagetranslation-moveok": "$1 {{GENDER:$2|afsluttede}} omdøbning af den oversætbare side $3 til $4",
+ "logentry-pagetranslation-movenok": "$1 {{GENDER:$2|stødte på}} et problem under flytning af siden $3 til $4",
+ "logentry-pagetranslation-deletefok": "$1 {{GENDER:$2|afsluttede}} sletning af den oversætbare side $3",
+ "logentry-pagetranslation-deletefnok": "$1 {{GENDER:$2|kunne ikke}} slette $3 der tilhører den oversætbare side $4",
+ "logentry-pagetranslation-deletelok": "$1 {{GENDER:$2|afsluttede}} sletning af den oversætbare side $3",
+ "logentry-pagetranslation-deletelnok": "$1 {{GENDER:$2|kunne ikke}} slette $3 der tilhører oversættelsesside $4",
+ "logentry-pagetranslation-encourage": "$1 {{GENDER:$2|opmuntrede}} oversættelse af $3",
+ "logentry-pagetranslation-discourage": "$1 {{GENDER:$2|frarådede}} oversættelse af $3",
+ "logentry-pagetranslation-prioritylanguages-unset": "$1 {{GENDER:$2|fjernede}} prioritetssprog fra den oversætbare side $3",
+ "logentry-pagetranslation-prioritylanguages": "$1 {{GENDER:$2|satte}} prioritetssprogene for den oversætbare side $3 til $5",
+ "logentry-pagetranslation-prioritylanguages-force": "$1 {{GENDER:$2|begrænsede}} sprogene for den oversætbare side $3 til $5",
+ "logentry-pagetranslation-associate": "$1 {{GENDER:$2|tilføjede}} den oversætbare side $3 til den samlede gruppe $4",
+ "logentry-pagetranslation-dissociate": "$1 {{GENDER:$2|fjernede}} den oversætbare side $3 fra den samlede gruppe $4",
+ "pt-movepage-title": "Flyt oversætbare side $1",
+ "pt-movepage-blockers": "Den oversætbare side kan ikke flyttes til et nyt navn på grund af følgende {{PLURAL:$1|fejl|fejl}}:",
+ "pt-movepage-block-base-exists": "Den oversætbare målside \"[[:$1]]\" findes.",
+ "pt-movepage-block-base-invalid": "Navnet på den oversætbare målside er ikke en gyldig titel.",
+ "pt-movepage-block-tp-exists": "Mål oversættelsessiden [[:$2]] findes.",
+ "pt-movepage-block-tp-invalid": "Mål oversættelses side titlen for [[:$1]] ville være ugyldig (for lang?).",
+ "pt-movepage-block-section-exists": "Målsiden \"[[:$2]]\" hørende til oversættelsesenheden findes.",
+ "pt-movepage-block-section-invalid": "Målsidens titel for \"[[:$1]]\" til oversættelsesenheden ville blive ugyldig (for lang?).",
+ "pt-movepage-block-subpage-exists": "Mål undersiden [[:$2]] findes.",
+ "pt-movepage-block-subpage-invalid": "Mål underside titlen for [[:$1]] ville være ugyldig (for lang?).",
+ "pt-movepage-list-pages": "Liste over sider til at flytte",
+ "pt-movepage-list-translation": "{{PLURAL:$1|Oversættelsesside|Oversættelsessider}}",
+ "pt-movepage-list-section": "{{PLURAL:$1|Oversættelsesenhedsside|Oversættelsesenhedssider}}",
+ "pt-movepage-list-other": "{{PLURAL:$1|Anden underside|Andre undersider}}",
+ "pt-movepage-list-count": "I alt $1 {{PLURAL:$1|side|sider}} til at flytte.",
+ "pt-movepage-legend": "Flyt oversætbare side",
+ "pt-movepage-current": "Nuværende navn:",
+ "pt-movepage-new": "Nyt navn:",
+ "pt-movepage-reason": "Årsag:",
+ "pt-movepage-subpages": "Flyt alle undersider",
+ "pt-movepage-action-check": "Tjek om flytningen er muligt",
+ "pt-movepage-action-perform": "Gennemfør flytningen",
+ "pt-movepage-action-other": "Skift mål",
+ "pt-movepage-intro": "Denne speciale side tillader dig at flytte sider, der er markeret til oversættelse.\nFlytningen vil ikke være øjeblikkelig, fordi mange sider skal flyttes.\nMens siderne bliver flyttet, er det ikke muligt at interagere med de omtalte sider.\nFejl vil blive logget på [[Special:Log/pagetranslation|sideoversættelsesloggen]], og de skal repareres manuelt.",
+ "pt-movepage-logreason": "Del af oversætbar side $1.",
+ "pt-movepage-started": "Base siden er nu flyttet.\nHusk at tjekke [[Special:Log/pagetranslation|siden oversættelsen log]] for fejl og færdiggørelses besked.",
+ "pt-locked-page": "Denne side er låst, fordi den oversætbare side, der aktuelt er ved at blive flyttet.",
+ "pt-deletepage-lang-title": "Sletter oversættelses side $1.",
+ "pt-deletepage-full-title": "Sletter oversætbar side $1.",
+ "pt-deletepage-invalid-title": "Den angivne side er ikke gyldig.",
+ "pt-deletepage-invalid-text": "Den angivne side er ikke en oversætbar side eller en oversættelsesside.",
+ "pt-deletepage-action-check": "List sider der skal slettes",
+ "pt-deletepage-action-perform": "Udfør sletningen",
+ "pt-deletepage-action-other": "Skift mål",
+ "pt-deletepage-lang-legend": "Slet oversættelses side",
+ "pt-deletepage-full-legend": "Slet oversætbar side",
+ "pt-deletepage-any-legend": "Slet en oversætbar side eller en oversættelsesside",
+ "pt-deletepage-current": "Sidenavn:",
+ "pt-deletepage-reason": "Årsag:",
+ "pt-deletepage-subpages": "Slet alle undersider",
+ "pt-deletepage-list-pages": "Liste over sider til at slette",
+ "pt-deletepage-list-translation": "Oversættelses sider",
+ "pt-deletepage-list-section": "Oversættelsesenhedssider",
+ "pt-deletepage-list-other": "Andre undersider",
+ "pt-deletepage-list-count": "I alt $1 {{PLURAL:$1|side|sider}} til at slette.",
+ "pt-deletepage-full-logreason": "Del af oversætbar side $1.",
+ "pt-deletepage-lang-logreason": "En del af oversættelses side $1 .",
+ "pt-deletepage-started": "Tjek venligst [[Special:Log/pagetranslation|side oversættelses log]] for fejl og færdiggørelses besked.",
+ "pt-deletepage-intro": "Med denne specielle side kan du slette en hel oversætbar side eller en individuel oversættelsesside.\nSletningen vil ikke ske med det samme, fordi mange afhængige sider også vil blive slettet.\nFejl vil blive registreret i [[Special:Log/pagetranslation|side oversættelses log]], og de skal repareres i manuelt."
+}
diff --git a/MLEB/Translate/i18n/pagetranslation/de-formal.json b/MLEB/Translate/i18n/pagetranslation/de-formal.json
new file mode 100644
index 00000000..7d94c1e9
--- /dev/null
+++ b/MLEB/Translate/i18n/pagetranslation/de-formal.json
@@ -0,0 +1,15 @@
+{
+ "@metadata": {
+ "authors": [
+ "Imre",
+ "Kghbln",
+ "Purodha",
+ "The Evil IP address",
+ "Umherirrender"
+ ]
+ },
+ "tpt-action-nofuzzy": "Setzen Sie die Übersetzungen nicht außer Kraft",
+ "tpt-notsuitable": "Die Seite $1 ist nicht zum Übersetzen geeignet.\nStellen Sie sicher, dass ein <nowiki><translate></nowiki>-Tag und gültige Syntax verwendet wird.",
+ "tpt-showpage-intro": "Untenstehend sind neue, vorhandene und gelöschte Übersetzungseinheiten aufgelistet.\nBevor Sie diese Version zur Übersetzung freigeben, stellen Sie bitte sicher, dass die Änderungen an den Übersetzungseinheiten minimal sind. Damit verhindern Sie unnötige Arbeit für die Übersetzer.",
+ "pt-movepage-started": "Die Basisseite wurde nunmehr verschoben.\nBitte prüfen Sie das [[Special:Log/pagetranslation|Übersetzungs-Logbuch]] auf Fehlermeldungen, bzw. die Vollzugsnachricht."
+}
diff --git a/MLEB/Translate/i18n/pagetranslation/de.json b/MLEB/Translate/i18n/pagetranslation/de.json
new file mode 100644
index 00000000..c9f8f830
--- /dev/null
+++ b/MLEB/Translate/i18n/pagetranslation/de.json
@@ -0,0 +1,208 @@
+{
+ "@metadata": {
+ "authors": [
+ "ChrisiPK",
+ "Imre",
+ "Kghbln",
+ "MF-Warburg",
+ "McDutchie",
+ "Metalhead64",
+ "Purodha",
+ "Shirayuki",
+ "The Evil IP address",
+ "Umherirrender",
+ "Vogone",
+ "Sebastian Wallroth"
+ ]
+ },
+ "pagetranslation": "Seiten übersetzen",
+ "right-pagetranslation": "Seitenversionen zur Übersetzung freigeben",
+ "action-pagetranslation": "übersetzbare Seiten zu verwalten",
+ "tpt-desc": "Ermöglicht das Übersetzen von Inhaltsseiten",
+ "tpt-section": "Übersetzungseinheit $1",
+ "tpt-section-new": "Neue Übersetzungseinheit. Name: $1",
+ "tpt-section-deleted": "Übersetzungseinheit $1",
+ "tpt-template": "Seitenvorlage",
+ "tpt-templatediff": "Die Seitenvorlage hat sich geändert.",
+ "tpt-diff-old": "Vorheriger Text",
+ "tpt-diff-new": "Neuer Text",
+ "tpt-submit": "Diese Version zur Übersetzung freigeben",
+ "tpt-sections-oldnew": "Neue und vorhandene Übersetzungseinheiten",
+ "tpt-sections-deleted": "Gelöschte Übersetzungseinheiten",
+ "tpt-sections-template": "Übersetzungsseitenvorlage",
+ "tpt-action-nofuzzy": "Die Übersetzungen nicht als veraltet markieren",
+ "tpt-badtitle": "Der angegebene Seitenname „$1“ ist kein gültiger Titel",
+ "tpt-nosuchpage": "Die Seite „$1“ ist nicht vorhanden",
+ "tpt-oldrevision": "$2 ist nicht die letzte Version der Seite [[:$1]].\nNur die letzte Version kann zur Übersetzung freigegeben werden.",
+ "tpt-notsuitable": "Die Seite $1 ist nicht zum Übersetzen geeignet.\nStelle sicher, dass ein <nowiki><translate></nowiki>-Tag und gültige Syntax verwendet wird.",
+ "tpt-saveok": "Die Seite [[:$1]] wurde mit {{PLURAL:$2|einem übersetzbaren Abschnitt|$2 übersetzbaren Abschnitten}} zur Übersetzung freigegeben.\nDiese Seite kann nun <span class=\"plainlinks\">[$3 übersetzt]</span> werden.",
+ "tpt-offer-notify": "Du kannst über diese Seite <span class=\"plainlinks\">[$1 Übersetzer benachrichtigen]</span>.",
+ "tpt-badsect": "„$1“ ist kein gültiger Name für Übersetzungseinheit $2.",
+ "tpt-showpage-intro": "Untenstehend sind neue, vorhandene und gelöschte Übersetzungseinheiten aufgelistet.\nBevor du diese Version zur Übersetzung freigibst, stelle bitte sicher, dass die Änderungen an den Übersetzungseinheiten minimal sind. Damit verhinderst du unnötige Arbeit für die Übersetzer.",
+ "tpt-mark-summary": "Diese Seite wurde zum Übersetzen freigegeben",
+ "tpt-mark-nochanges": "Es gibt keinen Unterschied zwischen dieser Version und der zuletzt markierten Version.",
+ "tpt-edit-failed": "Seite kann nicht aktualisiert werden: $1",
+ "tpt-duplicate": "Der Übersetzungseinheitname $1 wird mehr als einmal verwendet.",
+ "tpt-already-marked": "Die letzte Version dieser Seite wurde bereits zum Übersetzen freigegeben.",
+ "tpt-unmarked": "Seite $1 ist nicht länger als zu Übersetzen markiert.",
+ "tpt-list-nopages": "Es sind keine Seiten zum Übersetzen freigegeben und auch nicht vorbereitet, um freigegeben werden zu können.",
+ "tpt-new-pages-title": "Zur Übersetzung vorgeschlagene Seiten",
+ "tpt-old-pages-title": "Zu übersetzende Seiten",
+ "tpt-other-pages-title": "Fehlerhafte Seiten",
+ "tpt-discouraged-pages-title": "Von der Übersetzung zurückgezogene Seiten",
+ "tpt-new-pages": "{{PLURAL:$1|Diese Seite beinhaltet|Diese Seiten beinhalten}} Text zum Übersetzen. Es wurde aber noch keine Version dieser {{PLURAL:$1|Seite|Seiten}} zum Übersetzen freigegeben.",
+ "tpt-old-pages": "Eine Version dieser {{PLURAL:$1|Seite|Seiten}} wurde zur Übersetzung freigegeben.",
+ "tpt-other-pages": "Veraltete Versionen {{PLURAL:$1|dieser Seite|dieser Seiten}} sind zur Übersetzung freigegeben.\nDie neueste Version kann hingegen nicht zur Übersetzung freigegeben werden.",
+ "tpt-discouraged-pages": "{{PLURAL:$1|Diese Seite wurde|Diese Seiten wurden}} von der Übersetzung zurückgezogen.",
+ "tpt-select-prioritylangs": "Komma-getrennte Liste der Codes der zu priorisierenden Sprachen:",
+ "tpt-select-prioritylangs-force": "Übersetzungen in andere Sprachen als die priorisierte Sprache verhindern",
+ "tpt-select-prioritylangs-reason": "Grund:",
+ "tpt-sections-prioritylangs": "Priorisierte Sprachen",
+ "tpt-rev-mark": "Zum Übersetzen freigeben",
+ "tpt-rev-unmark": "Freigabe zum Übersetzen entfernen",
+ "tpt-rev-discourage": "Freigabe zurückziehen",
+ "tpt-rev-encourage": "Freigabe wiederherstellen",
+ "tpt-rev-mark-tooltip": "Die letzte Version dieser Seite zum Übersetzen freigeben.",
+ "tpt-rev-unmark-tooltip": "Die Freigabe zum Übersetzen dieser Seite entfernen.",
+ "tpt-rev-discourage-tooltip": "Die Freigabe für weitere Übersetzungen dieser Seite zurückziehen.",
+ "tpt-rev-encourage-tooltip": "Die Freigabe zum Übersetzen dieser Seite wiederherstellen.",
+ "translate-tag-translate-link-desc": "Diese Seite übersetzen",
+ "translate-tag-markthis": "Diese Seite zur Übersetzung freigeben",
+ "translate-tag-markthisagain": "Diese Seite wurde <span class=\"plainlinks\">[$1 bearbeitet]</span>, nachdem sie zuletzt <span class=\"plainlinks\">[$2 zur Übersetzung freigegeben]</span> wurde.",
+ "translate-tag-hasnew": "Diese Seite enthält <span class=\"plainlinks\">[$1 Bearbeitungen]</span>, die nicht zum Übersetzen freigegeben sind.",
+ "tpt-translation-intro": "Diese Seite ist eine <span class=\"plainlinks\">[$1 übersetzte Version]</span> der Seite [[$2]] und die Übersetzung ist zu $3 % abgeschlossen sowie aktuell.",
+ "tpt-languages-legend": "Sprachen:",
+ "tpt-languages-zero": "Mit dem Übersetzen in diese Sprache anfangen",
+ "tpt-languages-nonzero": "$1 ($2% übersetzt)",
+ "tpt-tab-translate": "Übersetzen",
+ "tpt-target-page": "Diese Seite kann nicht manuell aktualisiert werden.\nDiese Seite ist eine Übersetzung der Seite [[$1]] und die Übersetzung kann mithilfe des [$2 Übersetzungswerkzeuges] aktualisiert werden.",
+ "tpt-unknown-page": "Dieser Namensraum ist für das Übersetzen von Wikiseiten reserviert.\nDie Seite, die gerade bearbeitet wird, hat keine Verbindung zu einer übersetzbaren Seite.",
+ "tpt-translation-restricted": "Das Übersetzen dieser Seite in diese Sprache wurde durch einen Übersetzungsadministrator deaktiviert.\n\nGrund: $1",
+ "tpt-discouraged-language-force-header": "Diese Seite kann nicht auf $1 übersetzt werden.",
+ "tpt-discouraged-language-force-content": "Ein Übersetzungsadministrator hat sich dazu entschieden, dass diese Seite nur auf $1 übersetzt werden sollte.",
+ "tpt-discouraged-language-header": "Das Übersetzen auf $1 wird für diese Seite nicht bevorzugt.",
+ "tpt-discouraged-language-content": "Ein Übersetzungsadministrator hat sich dazu entschieden, die Übersetzungsarbeiten auf $1 zu richten.",
+ "tpt-discouraged-language-force": "<strong>Diese Seite kann nicht auf $2 übersetzt werden.</strong>\n\nEin Übersetzungsadministrator hat sich entschieden, dass diese Seite nur auf $3 übersetzt werden kann.",
+ "tpt-discouraged-language": "<strong>$2 ist keine priorisierte Sprache für diese Seite.</strong>\n\nEin Übersetzungsadministrator hat sich entschieden, die Übersetzungsarbeiten auf $3 zu fokussieren.",
+ "tpt-discouraged-language-reason": "Grund: $1",
+ "tpt-priority-languages": "Ein Übersetzungsadministrator hat die priorisierte Sprachen für diese Nachrichtengruppe auf $1 festgelegt.",
+ "tpt-render-summary": "Übernehme Bearbeitung einer neuen Version der Quellseite",
+ "tpt-download-page": "Seite mit Übersetzungen exportieren",
+ "aggregategroups": "Zusammenfassende Nachrichtengruppen",
+ "tpt-aggregategroup-add": "Hinzufügen",
+ "tpt-aggregategroup-save": "Speichern",
+ "tpt-aggregategroup-add-new": "Eine neue Hauptnachrichtengruppe hinzufügen",
+ "tpt-aggregategroup-new-name": "Name:",
+ "tpt-aggregategroup-new-description": "Beschreibung (optional):",
+ "tpt-aggregategroup-remove-confirm": "Bist Du sicher, dass Du diese Gruppe löschen möchtest?",
+ "tpt-aggregategroup-invalid-group": "Die Gruppe ist nicht vorhanden",
+ "tpt-aggregategroup-edit-name": "Name:",
+ "tpt-aggregategroup-edit-description": "Beschreibung:",
+ "tpt-aggregategroup-update": "Speichern",
+ "tpt-aggregategroup-update-cancel": "Abbrechen",
+ "tpt-invalid-group": "Ungültige Gruppe",
+ "pt-parse-open": "Eine &lt;translate&gt;-Markierung hat kein Gegenstück.\nÜbersetzungsvorlage: <pre>$1</pre>",
+ "pt-parse-close": "Eine &lt;/translate>-Markierung hat kein Gegenstück.\nÜbersetzungsvorlage: <pre>$1</pre>",
+ "pt-parse-nested": "Verschachtelte &lt;translate>-Übersetzungseinheiten sind nicht möglich.\nText des Tags: <pre>$1</pre>",
+ "pt-shake-multiple": "Mehrere Übersetzungseinheitenmarker für eine Übersetzungseinheit.\nText der Übersetzungseinheit: <pre>$1</pre>",
+ "pt-shake-position": "Übersetzungseinheitenmarker befinden sich an unerwarteter Stelle.\nText der Übersetzungseinheit: <pre>$1</pre>",
+ "pt-shake-empty": "Die Übersetzungseinheit für Marker „$1“ ist leer.",
+ "log-description-pagetranslation": "Logbuch der Änderungen im Zusammenhang mit dem Übersetzungssystem für Seiten",
+ "log-name-pagetranslation": "Übersetzungs-Logbuch",
+ "logentry-pagetranslation-mark": "$1 {{GENDER:$2|markierte}} die Seite $3 zum Übersetzen",
+ "logentry-pagetranslation-unmark": "$1 {{GENDER:$2|entfernte}} die Seite $3 aus dem Übersetzungssystem",
+ "logentry-pagetranslation-moveok": "$1 {{GENDER:$2|schloss}} die Umbenennung der übersetzbaren Seite von $3 in $4 ab",
+ "logentry-pagetranslation-movenok": "$1 {{GENDER:$2|hatte}} ein Problem beim Verschieben der Seite von $3 nach $4",
+ "logentry-pagetranslation-deletefok": "$1 {{GENDER:$2|schloss}} die Löschung der übersetzbaren Seite $3 ab",
+ "logentry-pagetranslation-deletefnok": "$1 {{GENDER:$2|konnte}} die Seite $3 nicht löschen, die zur übersetzbaren Seite $4 gehört",
+ "logentry-pagetranslation-deletelok": "$1 {{GENDER:$2|schloss}} die Löschung der Übersetzungsseite $3 ab",
+ "logentry-pagetranslation-deletelnok": "$1 {{GENDER:$2|konnte}} die Seite $3 nicht löschen, die zur Übersetzungsseite $4 gehört",
+ "logentry-pagetranslation-encourage": "$1 {{GENDER:$2|empfahl}} die Übersetzung der Seite $3",
+ "logentry-pagetranslation-discourage": "$1 {{GENDER:$2|riet}} von der Übersetzung der Seite $3 ab",
+ "logentry-pagetranslation-prioritylanguages-unset": "$1 {{GENDER:$2|entfernte}} die priorisierten Sprachen von der übersetzbaren Seite $3",
+ "logentry-pagetranslation-prioritylanguages": "$1 {{GENDER:$2|legte}} die priorisierten Sprachen für die übersetzbare Seite $3 auf $5 fest",
+ "logentry-pagetranslation-prioritylanguages-force": "$1 {{GENDER:$2|begrenzte}} die Sprachen für die übersetzbare Seite $3 auf $5",
+ "logentry-pagetranslation-associate": "$1 {{GENDER:$2|fügte}} die übersetzbare Seite $3 zur zusammenfassenden Gruppe „$4“ hinzu",
+ "logentry-pagetranslation-dissociate": "$1 {{GENDER:$2|entfernte}} die übersetzbare Seite $3 von der zusammengefassten Gruppe $4",
+ "pt-movepage-title": "Die Übersetzungsseite $1 verschieben",
+ "pt-movepage-blockers": "Die zum Übersetzen vorgesehene Seite konnte aufgrund {{PLURAL:$1|folgendes Fehlers|folgender Fehler}} nicht zur neuen Bezeichnung verschoben werden:",
+ "pt-movepage-block-base-exists": "Die übersetzbare Zielseite „[[:$1]]“ existiert bereits.",
+ "pt-movepage-block-base-invalid": "Der Name der übersetzbaren Zielseite hat keine gültige Bezeichnung.",
+ "pt-movepage-block-tp-exists": "Die Übersetzungsseite [[:$2]] existiert bereits.",
+ "pt-movepage-block-tp-invalid": "Die Zielbezeichnung der Übersetzungsseite für [[:$1]] wäre ungültig (zu lang?).",
+ "pt-movepage-block-section-exists": "Die Seite „[[:$2]]“ zur Übersetzungseinheit ist bereits vorhanden.",
+ "pt-movepage-block-section-invalid": "Die Zielseite der Übersetzungseinheit für „[[:$1]]“ wäre ungültig (zu lang?).",
+ "pt-movepage-block-subpage-exists": "Die Unterseite [[:$2]] existiert bereits.",
+ "pt-movepage-block-subpage-invalid": "Die Zielbezeichnung der Unterseite für [[:$1]] wäre ungültig (zu lang?).",
+ "pt-movepage-list-pages": "Liste der zu verschiebenden Seiten",
+ "pt-movepage-list-translation": "Übersetzte {{PLURAL:$1|Seite|Seiten}}",
+ "pt-movepage-list-section": "{{PLURAL:$1|Seite|Seiten}} der Übersetzungseinheiten",
+ "pt-movepage-list-other": "Weitere {{PLURAL:$1|Unterseite|Unterseiten}}",
+ "pt-movepage-list-count": "Insgesamt gibt es $1 zu verschiebende {{PLURAL:$1|Seite|Seiten}}.",
+ "pt-movepage-legend": "Übersetzungsseite verschieben",
+ "pt-movepage-current": "Aktueller Seitenname:",
+ "pt-movepage-new": "Neuer Seitenname:",
+ "pt-movepage-reason": "Grund:",
+ "pt-movepage-subpages": "Alle Unterseiten verschieben",
+ "pt-movepage-action-check": "Überprüfung, ob die Verschiebung möglich ist",
+ "pt-movepage-action-perform": "Verschiebung durchführen",
+ "pt-movepage-action-other": "Ziel ändern",
+ "pt-movepage-intro": "Diese Spezialseite ermöglicht es Seiten zu verschieben, die zur Übersetzung gekennzeichnet wurden.\nDie Verschiebung wird nicht unverzüglich erfolgen, da dabei viele Seiten zu verschieben sind.\nWährend des Verschiebevorgangs ist es nicht möglich, die entsprechenden Seiten zu nutzen.\nVerschiebefehler werden im [[Special:Log/pagetranslation|Übersetzungs-Logbuch]] aufgezeichnet und müssen manuell korrigiert werden.",
+ "pt-movepage-logreason": "Teil der übersetzbaren Seite $1.",
+ "pt-movepage-started": "Die Basisseite wurde nunmehr verschoben.\nBitte prüfe das [[Special:Log/pagetranslation|Übersetzungs-Logbuch]] auf Fehlermeldungen, bzw. die Vollzugsnachricht.",
+ "pt-locked-page": "Diese Seite ist gesperrt, da die Übersetzungsseite momentan verschoben wird.",
+ "pt-deletepage-lang-title": "Löschen der übersetzten Seite $1.",
+ "pt-deletepage-full-title": "Löschen der übersetzbaren Seite $1.",
+ "pt-deletepage-invalid-title": "Die angegebene Seite ist ungültig.",
+ "pt-deletepage-invalid-text": "Die angegebene Seite ist weder eine übersetzbare Seite noch eine Übersetzungsseite.",
+ "pt-deletepage-action-check": "Zu löschende Seiten auflisten",
+ "pt-deletepage-action-perform": "Löschung ausführen",
+ "pt-deletepage-action-other": "Das Ziel ändern",
+ "pt-deletepage-lang-legend": "Übersetzte Seite löschen",
+ "pt-deletepage-full-legend": "Übersetzbare Seite löschen",
+ "pt-deletepage-any-legend": "Übersetzbare Seite oder Übersetzungsseite löschen",
+ "pt-deletepage-current": "Seitenname:",
+ "pt-deletepage-reason": "Grund:",
+ "pt-deletepage-subpages": "Alle Unterseiten löschen",
+ "pt-deletepage-list-pages": "Liste der zu löschenden Seiten",
+ "pt-deletepage-list-translation": "Übersetzte Seiten",
+ "pt-deletepage-list-section": "Seiten der Übersetzungseinheiten",
+ "pt-deletepage-list-other": "Weitere Unterseiten",
+ "pt-deletepage-list-count": "Insgesamt gibt es $1 zu löschende {{PLURAL:$1|Seite|Seiten}}.",
+ "pt-deletepage-full-logreason": "Teil der übersetzbaren Seite $1.",
+ "pt-deletepage-lang-logreason": "Teil der übersetzten Seite $1.",
+ "pt-deletepage-started": "Bitte das [[Special:Log/pagetranslation|Übersetzungs-Logbuch]] nach Fehlern und Ausführungsnachrichten prüfen.",
+ "pt-deletepage-intro": "Diese Spezialseite ermöglicht die Löschung einer ganzen übersetzbaren Seite oder einer individuellen Übersetzungsseite in einer Sprache.\nDie Ausführung erfolgt nicht unmittelbar, da auch alle dazugehörigen Seiten gelöscht werden.\nFehler werden im [[Special:Log/pagetranslation|Übersetzungs-Logbuch]] aufgezeichnet und müssen nachträglich manuell berichtigt werden.",
+ "pagemigration": "Übersetzungsseitenmigration",
+ "pagemigration-summary": "Gib eine Übersetzungsseite an und stelle jede Übersetzung wieder her, die vor der Aktivierung des Übersetzungssystems auf dieser Seite erstellt wurde.",
+ "pm-import-button-label": "Importieren",
+ "pm-savepages-button-label": "Speichern",
+ "pm-cancel-button-label": "Abbrechen",
+ "pm-pagename-placeholder": "Seitennamen eingeben",
+ "pm-langcode-placeholder": "Sprachcode",
+ "pm-page-does-not-exist": "$1 ist nicht vorhanden",
+ "pm-old-translations-missing": "$1 enthält keine alten Übersetzungen",
+ "pm-extra-units-warning": "Es könnten zusätzliche Einheiten verfügbar sein. Bitte die Quell- und Übersetzungseinheiten ordnungsgemäß anpassen.",
+ "pm-pagename-missing": "Bitte den Seitennamen eingeben",
+ "pm-langcode-missing": "Bitte den Sprachcode eingeben",
+ "pm-add-icon-hover-text": "Unten eine Einheit hinzufügen",
+ "pm-swap-icon-hover-text": "Mit der unteren Einheit tauschen",
+ "pm-delete-icon-hover-text": "Einheit löschen",
+ "pm-pagetitle-invalid": "Bitte einen gültigen Seitentitel eingeben",
+ "pm-summary-import": "Übersetzung importiert mithilfe der [[Special:PageMigration|Seitenmigration]]",
+ "tpt-translate-title": "Übersetzung eines Seitentitels erlauben",
+ "pp-save-summary": "Bereitete die Seite zur Übersetzung vor",
+ "pagepreparation": "Seite zur Übersetzung vorbereiten",
+ "pp-pagename-placeholder": "Den Seitennamen eingeben",
+ "pp-prepare-button-label": "Vorbereiten",
+ "pp-save-button-label": "Speichern",
+ "pp-save-message": "Die Seite wurde gespeichert. Du kannst sie [$1 bearbeiten].",
+ "pp-prepare-message": "Die Seite wurde für die Übersetzung vorbereitet. Sieh dir den unten stehenden Unterschied an. Klicke auf „{{int:pp-save-button-label}}“, wenn alles in Ordnung ist!",
+ "pp-already-prepared-message": "Es scheint, als ob die Seite bereits für die Übersetzung vorbereitet wurde. Es gibt im Vergleich zur aktuellen Version keine Unterschiede.",
+ "pp-pagename-missing": "Bitte den Seitennamen eingeben.",
+ "pp-diff-old-header": "Quelltext",
+ "pp-diff-new-header": "Vorbereiteter Text",
+ "tpt-unlink-confirm": "Bitte bestätige, dass du wirklich diese Seite aus dem Übersetzungssystem entfernen möchtest.\nDie Sprachauswahl und übersetzte Seitennamen hören auf zu funktionieren.\nDie Übersetzungsseiten werden bearbeitbar.",
+ "tpt-unlink-button": "Von der Übersetzung entfernen",
+ "tpt-unlink-summary": "Seite von der Übersetzung entfernt"
+}
diff --git a/MLEB/Translate/i18n/pagetranslation/diq.json b/MLEB/Translate/i18n/pagetranslation/diq.json
new file mode 100644
index 00000000..c29ebf14
--- /dev/null
+++ b/MLEB/Translate/i18n/pagetranslation/diq.json
@@ -0,0 +1,38 @@
+{
+ "@metadata": {
+ "authors": [
+ "Erdemaslancan",
+ "Mirzali"
+ ]
+ },
+ "pagetranslation": "Pela açarnayışi",
+ "tpt-section": "Yewronê açarnayışê $1",
+ "tpt-section-new": "Yewena Açarnayış de newan.\nName: $1",
+ "tpt-section-deleted": "Yewronê açarnayışê $1",
+ "tpt-template": "Pela şabloni",
+ "tpt-diff-old": "Metno verên",
+ "tpt-diff-new": "Metno newe",
+ "tpt-old-pages-title": "Pela açarnayışi",
+ "tpt-other-pages-title": "Pela şahtiyayi",
+ "tpt-discouraged-pages-title": "Vatenena pelayan",
+ "tpt-select-prioritylangs-reason": "Sebeb:",
+ "translate-tag-translate-link-desc": "Na perer açarnê",
+ "tpt-languages-legend": "Zıwanê bini:",
+ "tpt-discouraged-language-reason": "Sebeb: $1",
+ "aggregategroups": "Grubi pêro",
+ "tpt-aggregategroup-add": "Cı ke",
+ "tpt-aggregategroup-save": "Qeyd ke",
+ "tpt-aggregategroup-new-name": "Name:",
+ "pt-movepage-list-translation": "{{PLURAL:$1|Pera|Perê}} açarnayışi",
+ "pt-movepage-list-other": "{{PLURAL:$1|Pera bin|Perê bini}}",
+ "pt-movepage-current": "Nameyo raverde:",
+ "pt-movepage-new": "Nameyo newe:",
+ "pt-movepage-reason": "Sebeb:",
+ "pt-deletepage-action-other": "Etiketan bivurne",
+ "pt-deletepage-current": "Nameyê pele:",
+ "pt-deletepage-reason": "Sebeb:",
+ "pt-deletepage-list-translation": "Pelê açarnayışi",
+ "pt-deletepage-list-other": "Bınpelê bini",
+ "pp-save-button-label": "Qeyd ke",
+ "pp-diff-old-header": "Metnê çımey"
+}
diff --git a/MLEB/Translate/i18n/pagetranslation/dsb.json b/MLEB/Translate/i18n/pagetranslation/dsb.json
new file mode 100644
index 00000000..38a256e3
--- /dev/null
+++ b/MLEB/Translate/i18n/pagetranslation/dsb.json
@@ -0,0 +1,154 @@
+{
+ "@metadata": {
+ "authors": [
+ "Michawiki"
+ ]
+ },
+ "pagetranslation": "Pśełožowanje bokow",
+ "right-pagetranslation": "Wersije bokow za pśełožowanje markěrowaś",
+ "action-pagetranslation": "pśełožujobne boki zastojaś",
+ "tpt-desc": "Rozšyrjenje za pśełožowanje wopśimjeśowych bokow",
+ "tpt-section": "Pśełožowańska jadnotka $1",
+ "tpt-section-new": "Nowa pśełožowańska jadnotka. Mě: $1",
+ "tpt-section-deleted": "Pśełožowańska jadnotka $1",
+ "tpt-template": "Bokowa pśedłoga",
+ "tpt-templatediff": "Bokowa pśedłoga jo se změniła.",
+ "tpt-diff-old": "Pśedchadny tekst",
+ "tpt-diff-new": "Nowy tekst",
+ "tpt-submit": "Toś tu wersiju za pśełožowanje markěrowaś",
+ "tpt-sections-oldnew": "Nowe a eksistowace pśełožowańske jadnotki",
+ "tpt-sections-deleted": "Wulašowane pśełožowańske jadnotki",
+ "tpt-sections-template": "Pśedłoga pśełožowańskego boka",
+ "tpt-action-nofuzzy": "Njeanulěruj pśełožki",
+ "tpt-badtitle": "Pódane bokowe mě ($1) njejo płaśiwy titel",
+ "tpt-nosuchpage": "Bok $1 njeeksistěrujo",
+ "tpt-oldrevision": "$2 njejo aktualna wersija boka [[:$1]].\nJano aktualne wersije daju se za pśełožowanje markěrowaś.",
+ "tpt-notsuitable": "Bok $1 njejo gódny za pśełožowanje.\nZawěsć, až ma toflicki <nowiki><translate></nowiki> a płaśiwu syntaksu.",
+ "tpt-saveok": "Bok [[:$1]] jo se markěrował za pśełožowanje z $2 {{PLURAL:$2|pśełožujobneju jadnotku|pśełožujobnyma jadnotkoma|pśełožujobnymi jadnotkami|pśełožujobnymi jadnotkami}}. Bok móže se něnto <span class=\"plainlinks\">[$3 pśełožowaś]</span>.",
+ "tpt-offer-notify": "Móžoš wó toś tom boku <span class=\"plainlinks\">[$1 pśełožowarjow informěrowaś]</span>.",
+ "tpt-badsect": "\"$1\" njejo płaśiwe mě za pśełožowańsku jadnotku $2.",
+ "tpt-showpage-intro": "Dołojce su nowe, eksistěrujuce a wulašowane pśełožowańske jadnotki nalicone.\nNježli až markěrujoš toś tu wersiju za pśełožowanje, pśekontrolěruj, lěc změny na pśełožowańskich jadnotkach su zminiměrowane, aby se wobinuł njetrěbne źěło za pśełožowarjow.",
+ "tpt-mark-summary": "Jo toś tu wersiju za pśełožowanje markěrował",
+ "tpt-edit-failed": "Toś ten bok njejo se dał aktualizěrowaś: $1",
+ "tpt-duplicate": "Mě pśełožkoweje jadnotki $1 wužywa se wěcej ako jaden raz.",
+ "tpt-already-marked": "Aktualna wersija toś togo boka jo južo za pśełožowanje markěrowana.",
+ "tpt-unmarked": "Bok $1 wěcej njejo za pśełožowanje markěrowany.",
+ "tpt-list-nopages": "Žedne boki njejsu za pśełožowanje markěrowane ani su gótowe, aby se za pśełožowanje markěrowali.",
+ "tpt-new-pages-title": "Boki naraźone za pśełožowanje",
+ "tpt-old-pages-title": "Boki, kótarež se pśełožuju",
+ "tpt-other-pages-title": "Wobškóźone boki",
+ "tpt-discouraged-pages-title": "Wuzamknjone boki",
+ "tpt-new-pages": "{{PLURAL:$1|Toś ten bok wopśimujo|Toś tej boka wopśumujotej|Toś te boki wopśimuju|Toś te boki wopśimuju}} tekst z pśełožowańskimi toflickami, ale žedna wersija {{PLURAL:$1|toś togo boka|toś teju bokowu|toś tych bokow|toś tych bokow}} njejo tuchylu za pśełožowanje markěrowana.",
+ "tpt-old-pages": "Někaka wersija {{PLURAL:$1|toś togo boka|toś teju bokowu|toś tych bokow|toś tych bokow}} jo se za pśełožowanje markěrowała.",
+ "tpt-other-pages": "{{PLURAL:$1|Stara wersija toś togo boka|Starej wersiji toś teju bokowu|Stare wersije toś tych bokow}} jo za pśełožowanje markěrowana,\nale nejnowša {{PLURAL:$1|wersija njedajo|wersiji njedajotej|wersije njedaju}} se za pśełožowanje markěrowaś.",
+ "tpt-discouraged-pages": "{{PLURAL:$1|Toś ten bok|Toś tej boka|Toś te boki|Toś te boki}} {{PLURAL:$1|jo|stej|su|su}} se wót dalšnego pśełoženja {{PLURAL:$1|wuzamknuła|wuzamknułej|wuzamknuli|wuzamknuli}}.",
+ "tpt-select-prioritylangs": "Lisćina rěcnych kodow primarnych rěcow źělonych pśez komu:",
+ "tpt-select-prioritylangs-force": "Pśełožkam do drugich ako primarnych rěcow zajźowaś",
+ "tpt-select-prioritylangs-reason": "Pśicyna:",
+ "tpt-sections-prioritylangs": "Primarne rěcy",
+ "tpt-rev-mark": "za pśełožowanje markěrowaś",
+ "tpt-rev-unmark": "wót pśełožowanja wuzamknuś",
+ "tpt-rev-discourage": "wuzamknuś",
+ "tpt-rev-encourage": "wótnowiś",
+ "tpt-rev-mark-tooltip": "Nejnowšu wersiju toś togo boka za pśełožowanje markěrowaś.",
+ "tpt-rev-unmark-tooltip": "Toś ten bok z pśełoženja wótpóraś",
+ "tpt-rev-discourage-tooltip": "Dalšne pśełožki na toś tom boku wuzamknuś.",
+ "tpt-rev-encourage-tooltip": "Toś ten bok za normalne pśełožowanje wótnowiś.",
+ "translate-tag-translate-link-desc": "Toś ten bok pśełožyś",
+ "translate-tag-markthis": "Toś ten bok za pśełožowanje markěrowaś",
+ "translate-tag-markthisagain": "Toś ten bok ma <span class=\"plainlinks\">[$1 {{PLURAL:$1|změnu|změnje|změny|změnow}}]</span>, wót togo casa, ako jo se slědny raz <span class=\"plainlinks\">[$2 za pśełožowanje markěrował]</span>.",
+ "translate-tag-hasnew": "Toś ten bok wopśimujo <span class=\"plainlinks\">[$1 {{PLURAL:$1|změnu, kótaraž njejo markěrowana|změnje, kótarejž njejstej markěrowanej|změny, kótare njejsu markěrowane|změnow, kótarež njejsu markěrowane}}]</span> za pśełožowanje.",
+ "tpt-translation-intro": "Toś ten bok jo <span class=\"plainlinks\">[$1 pśełožona wersija]</span> boka [[$2]] a $3 % pśełožka jo dogótowane a pśełožk jo aktualny.",
+ "tpt-languages-legend": "Druge rěcy:",
+ "tpt-languages-zero": "Pśełožowanje za toś tu rěc zachopiś",
+ "tpt-tab-translate": "Pśełožyś",
+ "tpt-target-page": "Toś ten bok njedajo se manuelnje aktualizěrowaś.\nToś ten bok jo pśełožk boka [[$1]] a pśełožk dajo se z pomocu [$2 Pśełožyś] aktualizěrowaś.",
+ "tpt-unknown-page": "Toś ten mjenjowy rum jo za pśełožki wopśimjeśowych bokow wuměnjony.\nZda se, až bok, kótaryž wopytujoš wobźěłaś, njewótpowědujo bokoju, kótaryž jo za pśełožowanje markěrowany.",
+ "tpt-translation-restricted": "Pśełožowański administrator jo pśełožowanjeju toś togo boka do toś teje rěcy jo zajźował.\n\nPśicyna: $1",
+ "tpt-discouraged-language-force": "<strong>Toś ten bok njedajo se do $2 pśełožyś.</strong>\n\nPśełožowański administrator jo rozsuźił, až toś ten bok dajo se jano do $3 pśełožowaś.",
+ "tpt-discouraged-language": "<strong>Pśełožowanje do $2 njama prioritu za toś ten bok.</strong>\n\nPśełožowański administrator jo rozsuźił, fokus pśełožowańskich procowanjow na $3 stajiś.",
+ "tpt-discouraged-language-reason": "Pśicyna: $1",
+ "tpt-priority-languages": "Pśełožowański administrator jo primarne rěcy za toś tu kupku ako $1 nastajił.",
+ "tpt-render-summary": "Aktualizacija pó nowej wersiji žrědłowego boka",
+ "tpt-download-page": "Bok z pśełožkami eksportěrowaś",
+ "aggregategroups": "Metakupki",
+ "tpt-aggregategroup-add": "Pśidaś",
+ "tpt-aggregategroup-save": "Składowaś",
+ "tpt-aggregategroup-add-new": "Nowu zespominańsku kupku pśidaś",
+ "tpt-aggregategroup-new-name": "Mě:",
+ "tpt-aggregategroup-new-description": "Wopisanje (opcionalne):",
+ "tpt-aggregategroup-remove-confirm": "Coš toś tu kupku napšawdu lašowaś?",
+ "tpt-aggregategroup-invalid-group": "Kupka njeeksistěrujo",
+ "pt-parse-open": "Asymetriska toflicka &lt;translate>.\nPśełožowańska pśedłoga: <pre>$1</pre>",
+ "pt-parse-close": "Asymetriska toflicka &lt;/translate>.\nPśełožowańska pśedłoga: <pre>$1</pre>",
+ "pt-parse-nested": "Zakašćikowane pśełožowańske jadnotki &lt;translate&gt; njejsu dowólone.\nTekst toflicki: <pre>$1</pre>",
+ "pt-shake-multiple": "Někotare marki pśełožowańskich jadnotkow za jadnu pśełožowańsku jadnotku.\nTekst pśełožowańskeje jadnotki: <pre>$1</pre>",
+ "pt-shake-position": "Marki pśełožowańskich jadnotkow na njewócakowanem městnje.\nTekst pśełožowańskeje jadnotki: <pre>$1</pre>",
+ "pt-shake-empty": "Prozna pśełožowańska jadnotka za marku \"$1\".",
+ "log-description-pagetranslation": "Protokol za akcije w zwisku z pśełožowańskim systemom",
+ "log-name-pagetranslation": "Protokol pśełožkow",
+ "logentry-pagetranslation-mark": "$1 jo $3 za pśełožowanje {{GENDER:$2|markěrował|markrowała}}",
+ "logentry-pagetranslation-unmark": "$1 jo $3 z pśełožowanja {{GENDER:$2|wópórał|wótpórała}}",
+ "logentry-pagetranslation-moveok": "$1 jo pśemjenjowanje pśełožujobnego boka $3 do $4 {{GENDER:$2|dokóńcył|dokóńcyła}}",
+ "logentry-pagetranslation-movenok": "$1 jo pśi pśesuwanju boka $3 do $4 na problem {{GENDER:$2|starcył|starcyła}}",
+ "logentry-pagetranslation-deletefok": "$1 jo lašowanje pśełožujobnego boka $3 {{GENDER:$2|dokóńcył|dokóńcyła}}",
+ "logentry-pagetranslation-deletefnok": "$1 njejo {{GENDER:$2|mógał|mógła}} $3 wulašowaś, kótaryž słuša k pśełožujobnemu bokoju $4",
+ "logentry-pagetranslation-deletelok": "$1 jo lašowanje pśełožowańskego boka $3 {{GENDER:$2|dokóńcył|dokóńcyła}}",
+ "logentry-pagetranslation-deletelnok": "$1 njejo {{GENDER:$2|mógał|mógła}} $3 wulašowaś, kótaryž słuša k pśełožowańskemu bokoju $4",
+ "logentry-pagetranslation-encourage": "$1 jo pśełožowanje boka $3 {{GENDER:$2|dopórucył|dopórucyła}}",
+ "logentry-pagetranslation-discourage": "$1 jo wót pśełožowanja boka $3 {{GENDER:$2|wótraźił|wótraźiła}}",
+ "logentry-pagetranslation-prioritylanguages-unset": "$1 jo primarne rěcy z pśełožujobnego boka $3 {{GENDER:$2|wótpórał|wótpórała}}",
+ "logentry-pagetranslation-prioritylanguages": "$1 jo primarne rěcy za pśełožujobny bok $3 na $5 {{GENDER:$2|stajił|stajiła}}",
+ "logentry-pagetranslation-prioritylanguages-force": "$1 jo rěcy za pśełožujobny bok $3 na $5 {{GENDER:$2|wobgranicował|wobgranicowała}}",
+ "logentry-pagetranslation-associate": "$1 jo pśełožujobny bok $3 metakupce $4 {{GENDER:$2|pśidał|pśidała}}",
+ "logentry-pagetranslation-dissociate": "$1 jo pśełožujobny bok $3 z metakupki $4 {{GENDER:$2|wótpórał|wótpórała}}",
+ "pt-movepage-title": "Psełožujobny bok $1 psésunuś",
+ "pt-movepage-blockers": "Pśełožujobny bok njedajo se dla {{PLURAL:$1|slědujuceje zmólki|slědujuceju zmólkowu|slědujucych zmólkow|slědujucych zmólkow}} do nowego mjenja pśesunuś:",
+ "pt-movepage-block-base-exists": "Celowy pśełožowański bok [[:$1]] eksistěrujo.",
+ "pt-movepage-block-base-invalid": "Mě celowego pśełožujobnego boka njejo płaśiwy titel.",
+ "pt-movepage-block-tp-exists": "Celowy pśełožowański bok [[:$2]] eksistěrujo.",
+ "pt-movepage-block-tp-invalid": "Titel celowego pśełožowańskego boka za [[:$1]] by był njepłaśiwy (pśedłujki?).",
+ "pt-movepage-block-section-exists": "Celowy bok \"[[:$2]]\" za pśełožowańsku jadnotku eksistěrujo.",
+ "pt-movepage-block-section-invalid": "Titel celowego boka za \"[[:$1]]\" za pśełožowańsku jadnotku by był njepłaśiwy (pśedłujki?).",
+ "pt-movepage-block-subpage-exists": "Celowy pódbok [[:$2]] eksistěrujo.",
+ "pt-movepage-block-subpage-invalid": "Titel celowego pódboka za [[:$1]] by był njepłaśiwy (pśedłuki?).",
+ "pt-movepage-list-pages": "Lisćina bokow, kótarež maju se pśesunuś",
+ "pt-movepage-list-translation": "{{PLURAL:$1|Pśełožowański bok|Pśełožowańskej boka|Pśełožowańske boki}}",
+ "pt-movepage-list-section": "{{PLURAL:$1|Bok|Boka|Boki}} pśełožowańskich jadnotkow",
+ "pt-movepage-list-other": "{{PLURAL:$1|Drugi pódbok|Drugej pódboka|Druge pódboki}}",
+ "pt-movepage-list-count": "Dogromady {{PLURAL:$1|ma se $1 bok|matej se $1 boka|maju se $1 boki|ma se $1 bokow}} pśesunuś.",
+ "pt-movepage-legend": "Pśełožujobny bok pśesunuś",
+ "pt-movepage-current": "Aktualne mě:",
+ "pt-movepage-new": "Nowe mě:",
+ "pt-movepage-reason": "Pśicyna:",
+ "pt-movepage-subpages": "Wšykne pódboki pśesunuś",
+ "pt-movepage-action-check": "Kontrolěrowaś, lěc pśesunjenje jo móžno",
+ "pt-movepage-action-perform": "Pśesunuś",
+ "pt-movepage-action-other": "Cel změniś",
+ "pt-movepage-intro": "Toś ten specialny bok dowólujo śi boki pśesunuś, kótarež sz za pśełožk markěrowane.\nPśesunjenje njebuźo se ned staś, dokulaž wjele bokow musy se pśesunuś.\n\nMjaztym až boki se pśesuwaju, njejo móžno z wótpowědnymi bokami interagěrowaś.\nZmólki budu se protokolěrowaś w [[Special:Log/pagetranslation|pséłožowańskem protokolu]] a muse se manuelnje wótpóraś.",
+ "pt-movepage-logreason": "Źěl pśełožujobnego boka \"$1\".",
+ "pt-movepage-started": "Zakładny bok jo něnto pśesunjony.\nPšosym pśekontrolěruj [[Special:Log/pagetranslation|pśełožowański protokol boka]] za zmólkami a zdźělenje wuwjeźenja.",
+ "pt-locked-page": "Toś ten bok jo se zastajił, dokulaž pśełožujobny bok se rowno pśesuwa.",
+ "pt-deletepage-lang-title": "Pśełožony bok $1 so lašujo.",
+ "pt-deletepage-full-title": "Pśełožujobny bok $1 so lašujo.",
+ "pt-deletepage-invalid-title": "Pódany bok njejo płaśiwy.",
+ "pt-deletepage-invalid-text": "Pódany bok njejo ani pśełožujobny bok ani pśełožowański bok.",
+ "pt-deletepage-action-check": "Boki nalicyś, kótarež maju se wulašowaś",
+ "pt-deletepage-action-perform": "Lašowaś",
+ "pt-deletepage-action-other": "Cel změniś",
+ "pt-deletepage-lang-legend": "Pśełožony bok wulašowaś",
+ "pt-deletepage-full-legend": "Pśełožujobny bok wulašowaś",
+ "pt-deletepage-any-legend": "Přełožujobny bok abo pśełožowański bok wulašowaś",
+ "pt-deletepage-current": "Mě boka:",
+ "pt-deletepage-reason": "Pśicyna:",
+ "pt-deletepage-subpages": "Wšykne pódboki lašowaś:",
+ "pt-deletepage-list-pages": "Lisćina bokow, kótarež maju se wulašowaś",
+ "pt-deletepage-list-translation": "Pśełožowańske boki",
+ "pt-deletepage-list-section": "Boki pśełožowańskich jadnotkow",
+ "pt-deletepage-list-other": "Druge pódboki",
+ "pt-deletepage-list-count": "Dogromady {{PLURAL:$1|ma se $1 bok|matej se $1 boka|maju se $1 boki|ma se $1 bokow}} wulašowaś.",
+ "pt-deletepage-full-logreason": "Źěl pśełožujobnego boka $1.",
+ "pt-deletepage-lang-logreason": "Źěl pśełožonego boka \"$1\".",
+ "pt-deletepage-started": "Pšosym pśekontrolěruj [[Special:Log/pagetranslation|pśełožowański protokol boka]] za zmólkami a zdźělenjami wuwjeźenja.",
+ "pt-deletepage-intro": "Toś ten specialny bok śi zmóžnja, aby wulašował ceły pśełožujobne bok abo jadnotliwy přełožowański bok w rěcy wulašował.\nLašowanje njestanjo se ned, dokulaž wšykne boki, kótarež k njomu słušaju, muse se wulašowaś.\nZmólki budu se w [[Special:Log/pagetranslation|protokolu pśełožkow]] protokolěrowaś a wóne muse se manuelnje pórěźiś."
+}
diff --git a/MLEB/Translate/i18n/pagetranslation/ee.json b/MLEB/Translate/i18n/pagetranslation/ee.json
new file mode 100644
index 00000000..e3cca892
--- /dev/null
+++ b/MLEB/Translate/i18n/pagetranslation/ee.json
@@ -0,0 +1,9 @@
+{
+ "@metadata": {
+ "authors": [
+ "Natsubee"
+ ]
+ },
+ "translate-tag-translate-link-desc": "Ɖe axa sia gɔme",
+ "tpt-languages-legend": "Gbe bubuwo:"
+}
diff --git a/MLEB/Translate/i18n/pagetranslation/el.json b/MLEB/Translate/i18n/pagetranslation/el.json
new file mode 100644
index 00000000..0d5ede14
--- /dev/null
+++ b/MLEB/Translate/i18n/pagetranslation/el.json
@@ -0,0 +1,162 @@
+{
+ "@metadata": {
+ "authors": [
+ "Crazymadlover",
+ "Dead3y3",
+ "Flyax",
+ "Lou",
+ "Protnet",
+ "ZaDiak",
+ "Geraki"
+ ]
+ },
+ "pagetranslation": "Μετάφραση σελίδων",
+ "right-pagetranslation": "Σήμανση εκδόσεων σελίδων προς μετάφραση",
+ "action-pagetranslation": "διαχειριστείτε σελίδες προς μετάφραση",
+ "tpt-desc": "Επέκταση για μετάφραση σελίδων περιεχομένου",
+ "tpt-section": "Μεταφραστική ενότητα $1",
+ "tpt-section-new": "Νέα μεταφραστική ενότητα.\nΌνομα: $1",
+ "tpt-section-deleted": "Μεταφραστική ενότητα $1",
+ "tpt-template": "Πρότυπο σελίδας",
+ "tpt-templatediff": "Το πρότυπο σελίδας έχει αλλάξει.",
+ "tpt-diff-old": "Προηγούμενο κείμενο",
+ "tpt-diff-new": "Νέο κείμενο",
+ "tpt-submit": "Σήμανση αυτής της έκδοσης για μετάφραση",
+ "tpt-sections-oldnew": "Νέες και υπάρχουσες μεταφραστικές ενότητες",
+ "tpt-sections-deleted": "Διαγεγραμμένες μεταφραστικές ενότητες",
+ "tpt-sections-template": "Πρότυπο σελίδας μετάφρασης",
+ "tpt-action-nofuzzy": "Να μην γίνει ακύρωση των μεταφράσεων",
+ "tpt-badtitle": "Ο τίτλος σελίδας που δόθηκε ($1) δεν είναι έγκυρος τίτλος",
+ "tpt-nosuchpage": "Η σελίδα $1 δεν υπάρχει",
+ "tpt-oldrevision": "Το $2 δεν είναι η τελευταία έκδοση της σελίδας [[:$1]].\nΜόνο οι πιο πρόσφατες εκδόσεις μπορούν να επισημανθούν για μετάφραση.",
+ "tpt-notsuitable": "Η σελίδα $1 δεν είναι κατάλληλη για μετάφραση.\nΒεβαιωθείτε ότι έχει τις ετικέτες <nowiki><translate></nowiki> και έχει έγκυρη σύνταξη.",
+ "tpt-saveok": "Η σελίδα [[:$1]] έχει σημανθεί για μετάφραση με $2 {{PLURAL:$2|μεταφραστική ενότητα|μεταφραστικές ενότητες}}.\nΗ σελίδα μπορεί τώρα να <span class=\"plainlinks\">[$3 μεταφραστεί]</span>.",
+ "tpt-offer-notify": "Μπορείτε να <span class=\"plainlinks\">[$1 στείλετε ειδοποίηση στους μεταφραστές]</span> για αυτήν τη σελίδα.",
+ "tpt-badsect": "Το «$1» δεν είναι έγκυρο όνομα για τη μονάδα μετάφρασης $2.",
+ "tpt-showpage-intro": "Παρακάτω παρατίθενται οι νέες, οι υφιστάμενες και οι διαγεγραμμένες μεταφραστικές ενότητες.\nΠροτού σημανθεί αυτή η έκδοση για μετάφραση, ελέγξτε ότι έχουν ελαχιστοποιηθεί οι αλλαγές στις μεταφραστικές ενότητες για την αποφυγή περιττής εργασίας από τους μεταφραστές.",
+ "tpt-mark-summary": "Αυτή η έκδοση σημάνθηκε για μετάφραση",
+ "tpt-edit-failed": "Δεν ήταν δυνατό να ενημερωθεί η σελίδα: $1",
+ "tpt-duplicate": "Το όνομα μεταφραστικής ενότητας $1 χρησιμοποιείται περισσότερες από μία φορές.",
+ "tpt-already-marked": "Η τελευταία έκδοση της σελίδας έχει ήδη σημανθεί προς μετάφραση.",
+ "tpt-unmarked": "Η σελίδα $1 δεν έχει πλέον σήμανση για μετάφραση.",
+ "tpt-list-nopages": "Δεν υπάρχουν σελίδες που να έχουν σημανθεί προς μετάφραση ή να είναι έτοιμες για σήμανση προς μετάφραση.",
+ "tpt-new-pages-title": "Σελίδες που προτείνονται για μετάφραση",
+ "tpt-old-pages-title": "Σελίδες υπό μετάφραση",
+ "tpt-other-pages-title": "Προβληματικές σελίδες",
+ "tpt-discouraged-pages-title": "Σελίδες στις οποίες αποθαρρύνεται η μετάφραση.",
+ "tpt-new-pages": "{{PLURAL:$1|Αυτή η σελίδα περιέχει|Αυτές οι σελίδες περιέχουν}} κείμενο με ετικέτες μετάφρασης,\nαλλά καμία έκδοση {{PLURAL:$1|αυτής της σελίδας|αυτών των σελίδων}} δεν έχει επί του παρόντος σήμανση για μετάφραση.",
+ "tpt-old-pages": "{{PLURAL:$1|Κάποια έκδοση αυτής της σελίδας έχει|Κάποιες εκδόσεις αυτών των σελίδων έχουν}} σημανθεί για μετάφραση.",
+ "tpt-other-pages": "{{PLURAL:$1|Μια παλιά έκδοση αυτής της σελίδας έχει|Παλαιότερες εκδόσεις αυτών των σελίδες έχουν}} σημανθεί για μετάφραση,\nαλλά η τελευταία {{PLURAL:$1|της|τους}} έκδοση δεν μπορεί να σημανθεί για μετάφραση.",
+ "tpt-discouraged-pages": "Περαιτέρω μετάφραση {{PLURAL:$1|αυτής της σελίδας|αυτών των σελίδων}} έχει αποθαρρυνθεί.",
+ "tpt-select-prioritylangs": "Λίστα χωρισμένη με κόμματα των κωδικών γλώσσας που έχουν προτεραιότητα:",
+ "tpt-select-prioritylangs-force": "Να αποτρέπονται μεταφράσεις σε άλλες γλώσσες πέραν των γλωσσών που έχουν προτεραιότητα",
+ "tpt-select-prioritylangs-reason": "Αιτία:",
+ "tpt-sections-prioritylangs": "Γλώσσες που έχουν προτεραιότητα",
+ "tpt-rev-mark": "σήμανση για μετάφραση",
+ "tpt-rev-unmark": "αφαίρεση από τη μετάφραση",
+ "tpt-rev-discourage": "αποθάρρυνση",
+ "tpt-rev-encourage": "αποκατάσταση",
+ "tpt-rev-mark-tooltip": "Σήμανση της τελευταίας έκδοσης αυτής της σελίδας για μετάφραση.",
+ "tpt-rev-unmark-tooltip": "Αφαίρεση αυτής της σελίδας από τη μετάφραση.",
+ "tpt-rev-discourage-tooltip": "Αποθάρρυνση περαιτέρω μεταφράσεων σε αυτή τη σελίδα.",
+ "tpt-rev-encourage-tooltip": "Επαναφορά αυτής της σελίδας σε κανονική μετάφραση.",
+ "translate-tag-translate-link-desc": "Μεταφράστε αυτήν τη σελίδα",
+ "translate-tag-markthis": "Σήμανση αυτής της σελίδας για μετάφραση",
+ "translate-tag-markthisagain": "Αυτή η σελίδα έχει <span class=\"plainlinks\">[$1 αλλαγές]</span> από την τελευταία φορά που είχε <span class=\"plainlinks\">[$2 σημανθεί για μετάφραση]</span>.",
+ "translate-tag-hasnew": "Αυτή η σελίδα περιέχει <span class=\"plainlinks\">[$1 αλλαγές]</span> που δεν έχουν σημανθεί για μετάφραση.",
+ "tpt-translation-intro": "Αυτή η σελίδα είναι μια <span class=\"plainlinks\">[$1 μεταφρασμένη έκδοση]</span> της σελίδας [[$2]] και η μετάφραση είναι $3% ολοκληρωμένη.",
+ "tpt-languages-legend": "Άλλες γλώσσες:",
+ "tpt-languages-zero": "Έναρξη μετάφρασης για αυτήν τη γλώσσα",
+ "tpt-tab-translate": "Μετάφραση",
+ "tpt-target-page": "Αυτή η σελίδα δεν μπορεί να ενημερωθεί με το χέρι.\nΑυτή η σελίδα είναι μετάφραση της σελίδας [[$1]] και η μετάφραση μπορεί να ενημερωθεί χρησιμοποιώντας [$2 το εργαλείο μετάφρασης].",
+ "tpt-unknown-page": "Αυτός ο ονοματοχώρος προορίζεται για μεταφράσεις σελίδων περιεχομένου.\nΗ σελίδα που προσπαθείτε να επεξεργαστείτε δεν φαίνεται να αντιστοιχεί σε σελίδα με σήμανση για μετάφραση.",
+ "tpt-translation-restricted": "Η μετάφραση αυτής της σελίδας σε αυτήν τη γλώσσα έχει αποτραπεί από έναν διαχειριστή μετάφρασης.\n\nΑιτιολογία: $1",
+ "tpt-discouraged-language-force": "«Αυτή η σελίδα δεν μπορεί να μεταφραστεί σε $2».\n\nΈνας διαχειριστής μετάφρασης έχει επιλέξει για αυτήν τη σελίδα να μπορεί να μεταφραστεί μόνο σε $3.",
+ "tpt-discouraged-language": "«Η μετάφραση σε $2 δεν αποτελεί προτεραιότητα για αυτήν τη σελίδα».\n\nΈνας διαχειριστής μετάφρασης έχει επιλέξει να επικεντρωθούν όλες οι μεταφραστικές προσπάθειες στα $3.",
+ "tpt-discouraged-language-reason": "Αιτία: $1",
+ "tpt-priority-languages": "Ένας διαχειριστής μετάφρασης έχει ορίσει ως γλώσσες που έχουν προτεραιότητα τα $1 για αυτήν την ομάδα.",
+ "tpt-render-summary": "Γίνεται ενημέρωση για να αντιστοιχεί στη νέα έκδοση της πηγαίας σελίδας",
+ "tpt-download-page": "Εξαγωγή της σελίδας με τις μεταφράσεις",
+ "aggregategroups": "Συγκεντρωτικές ομάδες",
+ "tpt-aggregategroup-add": "Προσθήκη",
+ "tpt-aggregategroup-save": "Αποθήκευση",
+ "tpt-aggregategroup-add-new": "Προσθήκη νέας συγκεντρωτικής ομάδας",
+ "tpt-aggregategroup-new-name": "Όνομα:",
+ "tpt-aggregategroup-new-description": "Περιγραφή (προαιρετική):",
+ "tpt-aggregategroup-remove-confirm": "Είστε σίγουροι ότι θέλετε να διαγράψετε αυτήν τη συγκεντρωτική ομάδα;",
+ "tpt-aggregategroup-invalid-group": "Η ομάδα δεν υπάρχει",
+ "tpt-invalid-group": "Μη έγκυρη ομάδα",
+ "pt-parse-open": "Ορφανή ετικέτα &lt;translate>.\nΠρότυπο μετάφρασης: <pre>$1</pre>",
+ "pt-parse-close": "Ορφανή ετικέτα &lt;/translate>.\nΠρότυπο μετάφρασης: <pre>$1</pre>",
+ "pt-parse-nested": "Δεν επιτρέπονται εμφωλευμένες μεταφραστικές ενότητες &lt;translate>.\nΚείμενο ετικέτας: <pre>$1</pre>",
+ "pt-shake-multiple": "Πολλαπλοί δείκτες μεταφραστικών ενοτήτων για μία μεταφραστική ενότητα.\nΚείμενο μεταφραστικής ενότητας: <pre>$1</pre>",
+ "pt-shake-position": "Δείκτες μεταφραστικών ενοτήτων σε μη αναμενόμενη θέση.\nΚείμενο μεταφραστικής ενότητας: <pre>$1</pre>",
+ "pt-shake-empty": "Κενή μεταφραστική ενότητα για το δείκτη «$1».",
+ "log-description-pagetranslation": "Αρχείο καταγραφής για ενέργειες που σχετίζονται με το σύστημα μετάφρασης",
+ "log-name-pagetranslation": "Καταγραφή μετάφρασης σελίδων",
+ "logentry-pagetranslation-mark": "{{GENDER:$2|Ο|Η}} $1 σήμανε τη σελίδα $3 για μετάφραση",
+ "logentry-pagetranslation-unmark": "{{GENDER:$2|Ο|Η}} $1 αφαίρεσε τη σελίδα $3 από τη μετάφραση",
+ "logentry-pagetranslation-moveok": "{{GENDER:$2|Ο|Η}} $1 ολοκλήρωσε τη μετονομασία της προς μετάφραση σελίδας $3 σε $4",
+ "logentry-pagetranslation-movenok": "{{GENDER:$2|Ο|Η}} $1 αντιμετώπισε ένα πρόβλημα κατά τη μετονομασία της σελίδας $3 σε $4",
+ "logentry-pagetranslation-deletefok": "{{GENDER:$2|Ο|Η}} $1 ολοκλήρωσε τη διαγραφή της προς μετάφραση σελίδας $3",
+ "logentry-pagetranslation-deletefnok": "{{GENDER:$2|Ο|Η}} $1 απέτυχε να διαγράψει τη σελίδα $3 που ανήκει στην προς μετάφραση σελίδα $4",
+ "logentry-pagetranslation-deletelok": "{{GENDER:$2|Ο|Η}} $1 ολοκλήρωσε τη διαγραφή της σελίδας μετάφρασης $3",
+ "logentry-pagetranslation-deletelnok": "{{GENDER:$2|Ο|Η}} $1 απέτυχε να διαγράψει τη σελίδα $3 που ανήκει στη σελίδα μετάφρασης $4",
+ "logentry-pagetranslation-encourage": "{{GENDER:$2|Ο|Η}} $1 ενθάρρυνε τη μετάφραση της σελίδας $3",
+ "logentry-pagetranslation-discourage": "{{GENDER:$2|Ο|Η}} $1 αποθάρρυνε τη μετάφραση της σελίδας $3",
+ "logentry-pagetranslation-prioritylanguages-unset": "{{GENDER:$2|Ο|Η}} $1 αφαίρεσε γλώσσες που έχουν προτεραιότητα από την προς μετάφραση σελίδα $3",
+ "logentry-pagetranslation-prioritylanguages": "{{GENDER:$2|Ο|Η}} $1 έθεσε ως γλώσσες που έχουν προτεραιότητα για την προς μετάφραση σελίδα $3 τα $5",
+ "logentry-pagetranslation-prioritylanguages-force": "{{GENDER:$2|Ο|Η}} $1 περιόρισε τις γλώσσες για την προς μετάφραση σελίδα $3 στα $5",
+ "logentry-pagetranslation-associate": "{{GENDER:$2|Ο|Η}} $1 προσέθεσε την προς μετάφραση σελίδα $3 στη συγκεντρωτική ομάδα $4",
+ "logentry-pagetranslation-dissociate": "{{GENDER:$2|Ο|Η}} $1 αφαίρεσε την προς μετάφραση σελίδα $3 από τη συγκεντρωτική ομάδα $4",
+ "pt-movepage-title": "Μετακίνηση της προς μετάφραση σελίδας «$1»",
+ "pt-movepage-blockers": "Η προς μετάφραση σελίδα δεν μπορεί να μετακινηθεί σε νέο όνομα λόγω {{PLURAL:$1|του ακόλουθου σφάλματος|των ακόλουθων σφαλμάτων}}:",
+ "pt-movepage-block-base-exists": "Η προς μετάφραση σελίδα προορισμού «[[:$1]]» υπάρχει.",
+ "pt-movepage-block-base-invalid": "Το όνομα της προς μετάφρασης σελίδας προορισμού δεν είναι έγκυρος τίτλος.",
+ "pt-movepage-block-tp-exists": "Η προς μετάφραση σελίδα προορισμού «[[:$2]]» υπάρχει.",
+ "pt-movepage-block-tp-invalid": "Ο τίτλος της προς μετάφρασης σελίδας προορισμού «[[:$1]]» δεν είναι έγκυρος (πολύ μεγάλος;).",
+ "pt-movepage-block-section-exists": "Η σελίδα προορισμού «[[:$2]]» για τη μεταφραστική ενότητα υπάρχει.",
+ "pt-movepage-block-section-invalid": "Ο τίτλος της σελίδας προορισμού «[[:$1]]» για τη μεταφραστική ενότητα δεν είναι έγκυρος (πολύ μεγάλος;).",
+ "pt-movepage-block-subpage-exists": "Η υποσελίδα προορισμού «[[:$2]]» υπάρχει.",
+ "pt-movepage-block-subpage-invalid": "Ο τίτλος της υποσελίδας προορισμού «[[:$1]]» δεν είναι έγκυρος (πολύ μεγάλος;).",
+ "pt-movepage-list-pages": "Κατάλογος σελίδων προς μετακίνηση",
+ "pt-movepage-list-translation": "{{PLURAL:$1|Σελίδα|Σελίδες}} μετάφρασης",
+ "pt-movepage-list-section": "{{PLURAL:$1|Σελίδα μεταφραστικής ενότητας|Σελίδες μεταφραστικών ενοτήτων}}",
+ "pt-movepage-list-other": "{{PLURAL:$1|Άλλη υποσελίδα|Άλλες υποσελίδες}}",
+ "pt-movepage-list-count": "Συνολικά $1 {{PLURAL:$1|σελίδα|σελίδες}} προς μετακίνηση.",
+ "pt-movepage-legend": "Μετακίνηση προς μετάφραση σελίδας",
+ "pt-movepage-current": "Τρέχον όνομα:",
+ "pt-movepage-new": "Νέο όνομα:",
+ "pt-movepage-reason": "Αιτία:",
+ "pt-movepage-subpages": "Μετακίνηση όλων των υποσελίδων",
+ "pt-movepage-action-check": "Έλεγχος αν η μετακίνηση είναι εφικτή",
+ "pt-movepage-action-perform": "Εκτέλεση μετακίνησης",
+ "pt-movepage-action-other": "Αλλαγή προορισμού",
+ "pt-movepage-intro": "Αυτή η ειδική σελίδα σας επιτρέπει να μετακινήσετε σελίδες που έχουν σημανθεί για μετάφραση.\nΗ ενέργεια μετακίνησης δεν θα είναι άμεση, επειδή θα χρειαστεί να μετακινηθούν πολλές σελίδες.\nΚατά τη διάρκεια της μετακίνησης, δεν είναι δυνατή η αλληλεπίδραση με τις εν λόγω σελίδες.\nΟι αποτυχίες θα καταγραφούν στο [[Special:Log/pagetranslation|αρχείο καταγραφής των σελίδων μετάφρασης]] και θα πρέπει να επιδιορθωθούν με το χέρι.",
+ "pt-movepage-logreason": "Τμήμα της προς μετάφραση σελίδας «$1».",
+ "pt-movepage-started": "Η σελίδα βάσης έχει τώρα μετακινηθεί.\nΠαρακαλούμε ελέγξτε τη [[Special:Log/pagetranslation|σελίδα καταγραφών των σελίδων μετάφρασης]] για σφάλματα και μήνυμα ολοκλήρωσης.",
+ "pt-locked-page": "Αυτή η σελίδα είναι κλειδωμένη επειδή η προς μετάφραση σελίδα βρίσκεται αυτή τη στιγμή υπό μετακίνηση.",
+ "pt-deletepage-lang-title": "Γίνεται διαγραφή της σελίδας μετάφρασης «$1».",
+ "pt-deletepage-full-title": "Γίνεται διαγραφή της προς μετάφραση σελίδας«$1».",
+ "pt-deletepage-invalid-title": "Η καθορισμένη σελίδα δεν είναι έγκυρη.",
+ "pt-deletepage-invalid-text": "Η καθορισμένη σελίδα δεν είναι ούτε σελίδα προς μετάφραση ούτε σελίδα μετάφρασης.",
+ "pt-deletepage-action-check": "Λίστα με σελίδες για διαγραφή",
+ "pt-deletepage-action-perform": "Εκτέλεση διαγραφής",
+ "pt-deletepage-action-other": "Αλλαγή προορισμού",
+ "pt-deletepage-lang-legend": "Διαγραφή σελίδας μετάφρασης",
+ "pt-deletepage-full-legend": "Διαγραφή προς μετάφραση σελίδας",
+ "pt-deletepage-any-legend": "Διαγραφή προς μετάφραση σελίδας ή σελίδας μετάφρασης",
+ "pt-deletepage-current": "Όνομα σελίδας:",
+ "pt-deletepage-reason": "Αιτία:",
+ "pt-deletepage-subpages": "Διαγραφή όλων των υποσελίδων",
+ "pt-deletepage-list-pages": "Κατάλογος σελίδων προς διαγραφή",
+ "pt-deletepage-list-translation": "Σελίδες μετάφρασης",
+ "pt-deletepage-list-section": "Σελίδες μεταφραστικών ενοτήτων",
+ "pt-deletepage-list-other": "Άλλες υποσελίδες",
+ "pt-deletepage-list-count": "Συνολικά $1 {{PLURAL:$1|σελίδα|σελίδες}} προς διαγραφή.",
+ "pt-deletepage-full-logreason": "Τμήμα της προς μετάφραση σελίδας «$1».",
+ "pt-deletepage-lang-logreason": "Τμήμα της σελίδας μετάφρασης «$1».",
+ "pt-deletepage-started": "Παρακαλούμε ελέγξτε το [[Special:Log/pagetranslation|αρχείο καταγραφών των σελίδων μετάφρασης]] για σφάλματα και μήνυμα ολοκλήρωσης.",
+ "pt-deletepage-intro": "Αυτή η ειδική σελίδα σας επιτρέπει να διαγράψετε είτε ολόκληρη σελίδα προς μετάφραση, είτε μια μεμονωμένη σελίδα μετάφρασης σε κάποια γλώσσα.\nΗ ενέργεια διαγραφής δεν θα είναι άμεση, επειδή θα διαγραφούν επίσης και όλες οι σελίδες που εξαρτώνται από αυτές.\nΟι αποτυχίες θα καταγραφούν στο [[Special:Log/pagetranslation|αρχείο καταγραφών των σελίδων μετάφρασης]] και θα πρέπει να επιδιορθωθούν με το χέρι.",
+ "pm-pagetitle-invalid": "Παρακαλούμε εισάγετε μια έγκυρη σελίδα τίτλου"
+}
diff --git a/MLEB/Translate/i18n/pagetranslation/en-gb.json b/MLEB/Translate/i18n/pagetranslation/en-gb.json
new file mode 100644
index 00000000..e3c957f1
--- /dev/null
+++ b/MLEB/Translate/i18n/pagetranslation/en-gb.json
@@ -0,0 +1,19 @@
+{
+ "@metadata": {
+ "authors": [
+ "Shirayuki",
+ "Thehelpfulone",
+ "Captaindogfish"
+ ]
+ },
+ "tpt-oldrevision": "$2 is not the latest version of the page [[:$1]].\nOnly latest versions can be marked for translation.",
+ "tpt-saveok": "The page [[:$1]] has been marked up for translation with $2 {{PLURAL:$2|translation unit|translation units}}.\nThe page can now be <span class=\"plainlinks\">[$3 translated]</span>.",
+ "tpt-showpage-intro": "Below new, existing and deleted translation units are listed.\nBefore marking this version for translation, check that the changes to translation units are minimised to avoid unnecessary work for translators.",
+ "tpt-mark-nochanges": "There is no difference between this revision and the last marked revision.",
+ "logentry-pagetranslation-moveok": "$1 {{GENDER:$2|completed}} renaming of translatable page $3 to $4",
+ "logentry-pagetranslation-deletefnok": "$1 {{GENDER:$2|failed}} to delete $3 which belongs to translatable page $4",
+ "logentry-pagetranslation-prioritylanguages": "$1 {{GENDER:$2|set}} the priority languages for translatable page $3 to $5",
+ "tpt-unlink-confirm": "Please confirm that you really want to remove this page from the translation system.\nThe language selector and translated page names will stop working.\nThe translation pages will become editable.",
+ "tpt-unlink-button": "Remove from translation",
+ "tpt-unlink-summary": "Removed page from translation"
+}
diff --git a/MLEB/Translate/i18n/pagetranslation/en.json b/MLEB/Translate/i18n/pagetranslation/en.json
new file mode 100644
index 00000000..3dd97934
--- /dev/null
+++ b/MLEB/Translate/i18n/pagetranslation/en.json
@@ -0,0 +1,199 @@
+{
+ "@metadata": {
+ "authors": [
+ "Nike",
+ "BPositive"
+ ]
+ },
+ "pagetranslation": "Page translation",
+ "right-pagetranslation": "Mark versions of pages for translation",
+ "action-pagetranslation": "manage translatable pages",
+ "tpt-desc": "Extension for translating content pages",
+ "tpt-section": "Translation unit $1",
+ "tpt-section-new": "New translation unit.\nName: $1",
+ "tpt-section-deleted": "Translation unit $1",
+ "tpt-template": "Page template",
+ "tpt-templatediff": "The page template has changed.",
+ "tpt-diff-old": "Previous text",
+ "tpt-diff-new": "New text",
+ "tpt-submit": "Mark this version for translation",
+ "tpt-sections-oldnew": "New and existing translation units",
+ "tpt-sections-deleted": "Deleted translation units",
+ "tpt-sections-template": "Translation page template",
+ "tpt-action-nofuzzy": "Do not invalidate translations",
+ "tpt-badtitle": "Page name given ($1) is not a valid title",
+ "tpt-nosuchpage": "Page $1 does not exist",
+ "tpt-oldrevision": "$2 is not the latest version of the page [[:$1]].\nOnly latest versions can be marked for translation.",
+ "tpt-notsuitable": "Page $1 is not suitable for translation.\nMake sure it has <nowiki><translate></nowiki> tags and has a valid syntax.",
+ "tpt-saveok": "The page [[:$1]] has been marked up for translation with $2 {{PLURAL:$2|translation unit|translation units}}.\nThe page can now be <span class=\"plainlinks\">[$3 translated]</span>.",
+ "tpt-offer-notify": "You can <span class=\"plainlinks\">[$1 notify translators]</span> about this page.",
+ "tpt-badsect": "\"$1\" is not a valid name for translation unit $2.",
+ "tpt-showpage-intro": "Below new, existing and deleted translation units are listed.\nBefore marking this version for translation, check that the changes to translation units are minimized to avoid unnecessary work for translators.",
+ "tpt-mark-summary": "Marked this version for translation",
+ "tpt-mark-nochanges": "There is no difference between this revision and the last marked revision.",
+ "tpt-edit-failed": "Could not update the page: $1",
+ "tpt-duplicate": "Translation unit name $1 is used more than once.",
+ "tpt-already-marked": "The latest version of this page has already been marked for translation.",
+ "tpt-unmarked": "Page $1 is no longer marked for translation.",
+ "tpt-list-nopages": "No pages are marked for translation or ready to be marked for translation.",
+ "tpt-new-pages-title": "Pages proposed for translation",
+ "tpt-old-pages-title": "Pages in translation",
+ "tpt-other-pages-title": "Broken pages",
+ "tpt-discouraged-pages-title": "Discouraged pages",
+ "tpt-new-pages": "{{PLURAL:$1|This page contains|These pages contain}} text with translation tags,\nbut no version of {{PLURAL:$1|this page is|these pages are}} currently marked for translation.",
+ "tpt-old-pages": "Some version of {{PLURAL:$1|this page has|these pages have}} been marked for translation.",
+ "tpt-other-pages": "{{PLURAL:$1|An old version of this page is|Older versions of these pages are}} marked for translation,\nbut the latest {{PLURAL:$1|version|versions}} cannot be marked for translation.",
+ "tpt-discouraged-pages": "{{PLURAL:$1|This page has|These pages have}} been discouraged from further translation.",
+ "tpt-select-prioritylangs": "Comma-separated list of priority language codes:",
+ "tpt-select-prioritylangs-force": "Prevent translations to languages other than the priority languages",
+ "tpt-select-prioritylangs-reason": "Reason:",
+ "tpt-sections-prioritylangs": "Priority languages",
+ "tpt-rev-mark": "mark for translation",
+ "tpt-rev-unmark": "remove from translation",
+ "tpt-rev-discourage": "discourage",
+ "tpt-rev-encourage": "restore",
+ "tpt-rev-mark-tooltip": "Mark the latest version of this page for translation.",
+ "tpt-rev-unmark-tooltip": "Remove this page from translation.",
+ "tpt-rev-discourage-tooltip": "Discourage further translations on this page.",
+ "tpt-rev-encourage-tooltip": "Restore this page to normal translation.",
+ "translate-tag-translate-link-desc": "Translate this page",
+ "translate-tag-markthis": "Mark this page for translation",
+ "translate-tag-markthisagain": "This page has <span class=\"plainlinks\">[$1 changes]</span> since it was last <span class=\"plainlinks\">[$2 marked for translation]</span>.",
+ "translate-tag-hasnew": "This page contains <span class=\"plainlinks\">[$1 changes]</span> which are not marked for translation.",
+ "tpt-translation-intro": "This page is a <span class=\"plainlinks\">[$1 translated version]</span> of the page [[$2]] and the translation is $3% complete.",
+ "tpt-languages-legend": "Other languages:",
+ "tpt-languages-separator": "&#160;•&#32;",
+ "tpt-languages-zero": "Start translation for this language",
+ "tpt-languages-nonzero": "$1 ($2% translated)",
+ "tpt-tab-translate": "Translate",
+ "tpt-target-page": "This page cannot be updated manually.\nThis page is a translation of the page [[$1]] and the translation can be updated using [$2 the translation tool].",
+ "tpt-unknown-page": "This namespace is reserved for content page translations.\nThe page you are trying to edit does not seem to correspond any page marked for translation.",
+ "tpt-translation-restricted": "Translation of this page to this language has been prevented by a translation administrator.\n\nReason: $1",
+ "tpt-discouraged-language-force-header": "This page cannot be translated to $1.",
+ "tpt-discouraged-language-force-content": "A translation administrator decided that this page can only be translated to $1.",
+ "tpt-discouraged-language-header": "Translating to $1 is not a priority for this page.",
+ "tpt-discouraged-language-content": "A translation administrator decided to focus the translation efforts on $1.",
+ "tpt-discouraged-language-force": "<strong>This page cannot be translated to $2.</strong>\n\nA translation administrator decided that this page can only be translated to $3.",
+ "tpt-discouraged-language": "<strong>Translating to $2 is not a priority for this page.</strong>\n\nA translation administrator decided to focus the translation efforts on $3.",
+ "tpt-discouraged-language-reason": "Reason: $1",
+ "tpt-priority-languages": "A translation administrator has set the priority languages for this group to $1.",
+ "tpt-render-summary": "Updating to match new version of source page",
+ "tpt-download-page": "Export page with translations",
+ "aggregategroups": "Aggregate groups",
+ "tpt-aggregategroup-add": "Add",
+ "tpt-aggregategroup-save": "Save",
+ "tpt-aggregategroup-add-new": "Add a new aggregate group",
+ "tpt-aggregategroup-new-name": "Name:",
+ "tpt-aggregategroup-new-description": "Description (optional):",
+ "tpt-aggregategroup-remove-confirm": "Are you sure you want to delete this aggregate group?",
+ "tpt-aggregategroup-invalid-group": "Group does not exist",
+ "tpt-aggregategroup-edit-name": "Name:",
+ "tpt-aggregategroup-edit-description": "Description:",
+ "tpt-aggregategroup-update": "Save",
+ "tpt-aggregategroup-update-cancel": "Cancel",
+ "tpt-invalid-group": "Invalid group",
+ "pt-parse-open": "Unbalanced &lt;translate> tag.\nTranslation template: <pre>$1</pre>",
+ "pt-parse-close": "Unbalanced &lt;/translate> tag.\nTranslation template: <pre>$1</pre>",
+ "pt-parse-nested": "Nested &lt;translate> translation units are not allowed.\nTag text: <pre>$1</pre>",
+ "pt-shake-multiple": "Multiple translation unit markers for one translation unit.\nTranslation unit text: <pre>$1</pre>",
+ "pt-shake-position": "Translation unit markers in unexpected position.\nTranslation unit text: <pre>$1</pre>",
+ "pt-shake-empty": "Empty translation unit for marker \"$1\".",
+ "log-description-pagetranslation": "Log for actions related to the page translation system",
+ "log-name-pagetranslation": "Page translation log",
+ "logentry-pagetranslation-mark": "$1 {{GENDER:$2|marked}} $3 for translation",
+ "logentry-pagetranslation-unmark": "$1 {{GENDER:$2|removed}} $3 from translation",
+ "logentry-pagetranslation-moveok": "$1 {{GENDER:$2|completed}} renaming of translatable page $3 to $4",
+ "logentry-pagetranslation-movenok": "$1 {{GENDER:$2|encountered}} a problem while moving page $3 to $4",
+ "logentry-pagetranslation-deletefok": "$1 {{GENDER:$2|completed}} deletion of translatable page $3",
+ "logentry-pagetranslation-deletefnok": "$1 {{GENDER:$2|failed}} to delete $3 which belongs to translatable page $4",
+ "logentry-pagetranslation-deletelok": "$1 {{GENDER:$2|completed}} deletion of translation page $3",
+ "logentry-pagetranslation-deletelnok": "$1 {{GENDER:$2|failed}} to delete $3 which belongs to translation page $4",
+ "logentry-pagetranslation-encourage": "$1 {{GENDER:$2|encouraged}} translation of $3",
+ "logentry-pagetranslation-discourage": "$1 {{GENDER:$2|discouraged}} translation of $3",
+ "logentry-pagetranslation-prioritylanguages-unset": "$1 {{GENDER:$2|removed}} priority languages from translatable page $3",
+ "logentry-pagetranslation-prioritylanguages": "$1 {{GENDER:$2|set}} the priority languages for translatable page $3 to $5",
+ "logentry-pagetranslation-prioritylanguages-force": "$1 {{GENDER:$2|limited}} languages for translatable page $3 to $5",
+ "logentry-pagetranslation-associate": "$1 {{GENDER:$2|added}} translatable page $3 to aggregate group $4",
+ "logentry-pagetranslation-dissociate": "$1 {{GENDER:$2|removed}} translatable page $3 from aggregate group $4",
+ "pt-movepage-title": "Move translatable page \"$1\"",
+ "pt-movepage-blockers": "The translatable page cannot be moved to a new name because of the following {{PLURAL:$1|error|errors}}:",
+ "pt-movepage-block-base-exists": "The target translatable page \"[[:$1]]\" exists.",
+ "pt-movepage-block-base-invalid": "The target translatable page name is not a valid title.",
+ "pt-movepage-block-tp-exists": "The target translation page \"[[:$2]]\" exists.",
+ "pt-movepage-block-tp-invalid": "The target translation page title for \"[[:$1]]\" would be invalid (too long?).",
+ "pt-movepage-block-section-exists": "The target page \"[[:$2]]\" for the translation unit exists.",
+ "pt-movepage-block-section-invalid": "The target page title for \"[[:$1]]\" for the translation unit would be invalid (too long?).",
+ "pt-movepage-block-subpage-exists": "The target subpage \"[[:$2]]\" exists.",
+ "pt-movepage-block-subpage-invalid": "The target subpage title for \"[[:$1]]\" would be invalid (too long?).",
+ "pt-movepage-list-pages": "List of pages to move",
+ "pt-movepage-list-translation": "Translation {{PLURAL:$1|page|pages}}",
+ "pt-movepage-list-section": "Translation unit {{PLURAL:$1|page|pages}}",
+ "pt-movepage-list-other": "Other sub{{PLURAL:$1|page|pages}}",
+ "pt-movepage-list-count": "In total $1 {{PLURAL:$1|page|pages}} to move.",
+ "pt-movepage-legend": "Move translatable page",
+ "pt-movepage-current": "Current name:",
+ "pt-movepage-new": "New name:",
+ "pt-movepage-reason": "Reason:",
+ "pt-movepage-subpages": "Move all subpages",
+ "pt-movepage-action-check": "Check if the move is possible",
+ "pt-movepage-action-perform": "Do the move",
+ "pt-movepage-action-other": "Change target",
+ "pt-movepage-intro": "This special page allows you to move pages which are marked for translation.\nThe move action will not be instant, because many pages will need to be moved.\nWhile the pages are being moved, it is not possible to interact with the pages in question.\nFailures will be logged in the [[Special:Log/pagetranslation|page translation log]] and they need to be repaired by hand.",
+ "pt-movepage-logreason": "Part of translatable page \"$1\".",
+ "pt-movepage-started": "The base page is now moved.\nPlease check the [[Special:Log/pagetranslation|page translation log]] for errors and completion message.",
+ "pt-locked-page": "This page is locked because the translatable page is currently being moved.",
+ "pt-deletepage-lang-title": "Deleting translation page \"$1\".",
+ "pt-deletepage-full-title": "Deleting translatable page \"$1\".",
+ "pt-deletepage-invalid-title": "The specified page is not valid.",
+ "pt-deletepage-invalid-text": "The specified page is not a translatable page nor a translation page.",
+ "pt-deletepage-action-check": "List pages to be deleted",
+ "pt-deletepage-action-perform": "Do the deletion",
+ "pt-deletepage-action-other": "Change target",
+ "pt-deletepage-lang-legend": "Delete translation page",
+ "pt-deletepage-full-legend": "Delete translatable page",
+ "pt-deletepage-any-legend": "Delete translatable page or translation page",
+ "pt-deletepage-current": "Page name:",
+ "pt-deletepage-reason": "Reason:",
+ "pt-deletepage-subpages": "Delete all subpages",
+ "pt-deletepage-list-pages": "List of pages to delete",
+ "pt-deletepage-list-translation": "Translation pages",
+ "pt-deletepage-list-section": "Translation unit pages",
+ "pt-deletepage-list-other": "Other subpages",
+ "pt-deletepage-list-count": "In total $1 {{PLURAL:$1|page|pages}} to delete.",
+ "pt-deletepage-full-logreason": "Part of translatable page \"$1\".",
+ "pt-deletepage-lang-logreason": "Part of translation page \"$1\".",
+ "pt-deletepage-started": "Please check the [[Special:Log/pagetranslation|page translation log]] for errors and completion message.",
+ "pt-deletepage-intro": "This special page allows you delete a whole translatable page, or an individual translation page in a language.\nThe delete action will not be instant, because all the pages depending on them will also be deleted.\nFailures will be logged in the [[Special:Log/pagetranslation|page translation log]] and they need to be repaired by hand.",
+ "pagemigration": "Translation page migration",
+ "pagemigration-summary": "Specify a translation page and restore any translation made before the Translate system was enabled on that page.",
+ "pm-import-button-label": "Import",
+ "pm-savepages-button-label": "Save",
+ "pm-cancel-button-label": "Cancel",
+ "pm-pagename-placeholder": "Enter the page name",
+ "pm-langcode-placeholder": "Language code",
+ "pm-page-does-not-exist": "$1 does not exist.",
+ "pm-old-translations-missing": "$1 does not contain old translations.",
+ "pm-extra-units-warning": "Extra units might be present. Please match the source and translation units properly.",
+ "pm-pagename-missing": "Please enter the page name.",
+ "pm-langcode-missing": "Please enter the language code.",
+ "pm-add-icon-hover-text": "Add a unit below",
+ "pm-swap-icon-hover-text": "Swap with unit below",
+ "pm-delete-icon-hover-text": "Delete unit",
+ "pm-pagetitle-invalid": "Please enter a valid page title",
+ "pm-summary-import": "Imported translation using [[Special:PageMigration|page migration]]",
+ "tpt-translate-title": "Allow translation of page title",
+ "pp-save-summary": "Prepared the page for translation",
+ "pagepreparation": "Prepare page for translation",
+ "pp-pagename-placeholder": "Enter the page name",
+ "pp-prepare-button-label": "Prepare",
+ "pp-save-button-label": "Save",
+ "pp-save-message": "The page was saved. You can [$1 edit] it.",
+ "pp-prepare-message": "The page was prepared for translation. See the diff below. Click the \"{{int:pp-save-button-label}}\" button if okay!",
+ "pp-already-prepared-message": "It seems the page has already been prepared for translation. There are no changes compared to the previous version.",
+ "pp-pagename-missing": "Please enter the page name.",
+ "pp-diff-old-header": "Source text",
+ "pp-diff-new-header": "Prepared text",
+ "tpt-unlink-confirm": "Please confirm that you really want to remove this page from the translation system.\nThe language selector and translated page names will stop working.\nThe translation pages will become editable.",
+ "tpt-unlink-button": "Remove from translation",
+ "tpt-unlink-summary": "Removed page from translation"
+}
diff --git a/MLEB/Translate/i18n/pagetranslation/eo.json b/MLEB/Translate/i18n/pagetranslation/eo.json
new file mode 100644
index 00000000..98d3f0a1
--- /dev/null
+++ b/MLEB/Translate/i18n/pagetranslation/eo.json
@@ -0,0 +1,103 @@
+{
+ "@metadata": {
+ "authors": [
+ "Anakmalaysia",
+ "ArnoLagrange",
+ "Blahma",
+ "Yekrats"
+ ]
+ },
+ "pagetranslation": "Paĝa traduko",
+ "right-pagetranslation": "Marki versiojn de paĝoj por traduki",
+ "tpt-desc": "Kromprogramo por tradukado de enhavaj paĝoj",
+ "tpt-section": "Tradukada unuo $1",
+ "tpt-section-new": "Nova tradukada unuo.\nNomo: $1",
+ "tpt-section-deleted": "Tradukada unuo $1",
+ "tpt-template": "Paĝa ŝablono",
+ "tpt-templatediff": "La paĝa ŝablono estis ŝanĝita.",
+ "tpt-diff-old": "Antaŭa teksto",
+ "tpt-diff-new": "Nova teksto",
+ "tpt-submit": "Marki ĉi tiun version por traduki",
+ "tpt-sections-oldnew": "Novaj kaj ekzistantaj tradukaĵoj",
+ "tpt-sections-deleted": "Forigitaj tradukadaj unuoj",
+ "tpt-sections-template": "Ŝablono por tradukada paĝo",
+ "tpt-action-nofuzzy": "Ne malvalidigu tradukojn.",
+ "tpt-badtitle": "La provizita paĝnomo ($1) ne estas valida titolo",
+ "tpt-nosuchpage": "La paĝo $1 ne ekzistas.",
+ "tpt-oldrevision": "$2 ne estas la lasta versio de la paĝo [[:$1]].\nNur la lasta versio de la paĝo povas esti markita por esti tradukita.",
+ "tpt-notsuitable": "Paĝo $1 ne taŭgas por traduki.\nCertigu ke ĝi havas etikedojn <nowiki><translate></nowiki> kaj havas validan sintakson.",
+ "tpt-saveok": "La paĝo [[:$1]] estis markita por esti tradukita kun $2 traduk{{PLURAL:$2|ero|eroj}}.\nLa paĝo povas nun esti <span class=\"plainlinks\">[$3 tradukita]</span>.",
+ "tpt-badsect": "« $1 » ne estas valida nomo por tradukero $2.",
+ "tpt-mark-summary": "Markis ĉi tiun version por traduki.",
+ "tpt-edit-failed": "Ne eblis ĝisdatigi la paĝon: $1",
+ "tpt-old-pages-title": "Paĝoj en traduko",
+ "tpt-other-pages-title": "Rompitaj paĝoj",
+ "tpt-discouraged-pages-title": "Malinstigitaj paĝoj",
+ "tpt-select-prioritylangs-reason": "Kialo:",
+ "tpt-sections-prioritylangs": "Primadaj lingvoj",
+ "tpt-rev-mark": "marki por traduki",
+ "tpt-rev-unmark": "forigi el traduko",
+ "tpt-rev-discourage": "malinstigi",
+ "tpt-rev-encourage": "restarigi",
+ "translate-tag-translate-link-desc": "Traduki ĉi tiun paĝon",
+ "translate-tag-markthis": "Marki ĉi tiun paĝon por tradukado",
+ "tpt-languages-legend": "Aliaj lingvoj:",
+ "tpt-languages-zero": "Ektraduki por ĉi tiu lingvo",
+ "tpt-discouraged-language-reason": "Kialo: $1",
+ "tpt-download-page": "Eksporti paĝon kun tradukoj",
+ "tpt-aggregategroup-add": "Aldoni",
+ "tpt-aggregategroup-save": "Konservi",
+ "tpt-aggregategroup-new-name": "Nomo:",
+ "tpt-aggregategroup-new-description": "Priskribo (nedevige):",
+ "tpt-aggregategroup-invalid-group": "La grupo ne ekzistas",
+ "log-name-pagetranslation": "Protokolo pri paĝaj tradukoj",
+ "pt-movepage-title": "Movi la tradukeblan paĝon \"$1\"",
+ "pt-movepage-blockers": "La tradukebla paĝo ne povis esti movita al nova nomo pro la {{PLURAL:$1|sekva eraro|sekvaj eraroj}}:",
+ "pt-movepage-block-base-exists": "La cela tradukebla paĝo \"[[:$1]]\" ekzistas.",
+ "pt-movepage-block-base-invalid": "Nomo de la cela tradukebla paĝo ne estas valida titolo.",
+ "pt-movepage-block-tp-exists": "La cela tradukpaĝo \"[[:$2]]\" ekzistas.",
+ "pt-movepage-block-tp-invalid": "Titolo de la cela tradukpaĝo por \"[[:$1]]\" estus malvalida (tro longa?).",
+ "pt-movepage-block-section-exists": "La celpaĝo \"[[:$2]]\" de la traduka unuo ekzistas.",
+ "pt-movepage-block-section-invalid": "Nomo de la celpaĝo por \"[[:$1]]\" de la traduka unuo estus malvalida (tro longa?).",
+ "pt-movepage-block-subpage-exists": "La cela subpaĝo \"[[:$2]]\" ekzistas.",
+ "pt-movepage-block-subpage-invalid": "Nomo de la cela subpaĝo por \"[[:$1]]\" estus malvalida (tro longa?).",
+ "pt-movepage-list-pages": "Listo de movotaj paĝoj",
+ "pt-movepage-list-translation": "{{PLURAL:$1|Traduka paĝo|Tradukaj paĝoj}}",
+ "pt-movepage-list-section": "{{PLURAL:$1|Paĝo|Paĝoj}} de tradukaj unuoj",
+ "pt-movepage-list-other": "{{PLURAL:$1|Alia subpaĝo|Aliaj subpaĝoj}}",
+ "pt-movepage-list-count": "Entute $1 {{PLURAL:$1|paĝo|paĝoj}} por movi.",
+ "pt-movepage-legend": "Movi tradukeblan paĝon",
+ "pt-movepage-current": "Nuna nomo:",
+ "pt-movepage-new": "Nova nomo:",
+ "pt-movepage-reason": "Kialo:",
+ "pt-movepage-subpages": "Movi ĉiujn subpaĝojn",
+ "pt-movepage-action-check": "Kontroli ĉu la movo fareblas",
+ "pt-movepage-action-perform": "Fari la movon",
+ "pt-movepage-action-other": "Ŝanĝi celon",
+ "pt-movepage-intro": "Tiu ĉi speciala paĝo permesas al vi movi paĝojn markitajn por traduko.\nLa movo ne efektiviĝos tuj, ĉar necesos movi multajn paĝojn.\nDum paĝoj estas movataj, ne eblas pri ili labori.\nEventualaj fiaskoj estos protokolitaj en [[Special:Log/pagetranslation|protokolo pri paĝotradukado]] kaj ilin necesos ripari permane.",
+ "pt-movepage-logreason": "Parto de tradukebla paĝo \"$1\".",
+ "pt-movepage-started": "La baza paĝo nun estas movita.\nBonvolu kontroli la [[Special:Log/pagetranslation|protokolon pri paĝotradukado]] por eraroj kaj mesaĝo pri kompletiĝo.",
+ "pt-locked-page": "Tiu ĉi paĝo estas ŝlosita ĉar la tradukebla paĝo nuntempe estas movata.",
+ "pt-deletepage-lang-title": "Foriganta la tradukpaĝon \"$1\".",
+ "pt-deletepage-full-title": "Foriganta la tradukeblan paĝon \"$1\".",
+ "pt-deletepage-invalid-title": "La specifita paĝo ne estas valida.",
+ "pt-deletepage-invalid-text": "La specifita paĝo ne estas tradukebla paĝo nek tradukpaĝo.",
+ "pt-deletepage-action-check": "Listigi forigotajn paĝojn",
+ "pt-deletepage-action-perform": "Fari la forigon",
+ "pt-deletepage-action-other": "Ŝanĝi celon:",
+ "pt-deletepage-lang-legend": "Forigi tradukpaĝon",
+ "pt-deletepage-full-legend": "Forigi tradukeblan paĝon",
+ "pt-deletepage-any-legend": "Forigi tradukeblan paĝon aŭ tradukpaĝon",
+ "pt-deletepage-current": "Nomo de paĝo:",
+ "pt-deletepage-reason": "Kialo:",
+ "pt-deletepage-subpages": "Forigi ĉiujn subpaĝojn",
+ "pt-deletepage-list-pages": "Listo de forigotaj paĝoj",
+ "pt-deletepage-list-translation": "Tradukpaĝoj",
+ "pt-deletepage-list-section": "Paĝoj de tradukada unuo",
+ "pt-deletepage-list-other": "Aliaj subpaĝoj",
+ "pt-deletepage-list-count": "Entute $1 {{PLURAL:$1|paĝo|paĝoj}} por forigi.",
+ "pt-deletepage-full-logreason": "Pato de la tradukebla paĝo \"$1\".",
+ "pt-deletepage-lang-logreason": "Pato de la tradukpaĝo \"$1\".",
+ "pt-deletepage-started": "Bonvolu rekontroli la [[Special:Log/pagetranslation|protokolon pri paĝotradukado]] por eraroj kaj mesaĝo pri kompletiĝo.",
+ "pt-deletepage-intro": "En tiu ĉi speciala paĝo vi povas forigi tutan tradukeblan paĝon aŭ individuan tradukpaĝon en iu lingvo.\nLa forigo ne efektiviĝos tuj, ĉar ĉiuj dependaj paĝoj estos ankaŭ forigitaj.\nFiaskoj estos protokolitaj en la [[Special:Log/pagetranslation|protokolo pri paĝotradukado]] kaj ilin necesos ripari permane."
+}
diff --git a/MLEB/Translate/i18n/pagetranslation/es.json b/MLEB/Translate/i18n/pagetranslation/es.json
new file mode 100644
index 00000000..3f7acbc0
--- /dev/null
+++ b/MLEB/Translate/i18n/pagetranslation/es.json
@@ -0,0 +1,211 @@
+{
+ "@metadata": {
+ "authors": [
+ "Antur",
+ "Armando-Martin",
+ "Crazymadlover",
+ "Dalton2",
+ "Dferg",
+ "Diego Grez",
+ "Imre",
+ "MarcoAurelio",
+ "McDutchie",
+ "Mor",
+ "Purodha",
+ "Sanbec",
+ "Translationista",
+ "Vivaelcelta",
+ "Fitoschido",
+ "Macofe"
+ ]
+ },
+ "pagetranslation": "Traducción de página",
+ "right-pagetranslation": "Marcar versiones de páginas para traducción",
+ "action-pagetranslation": "administrar páginas traducibles",
+ "tpt-desc": "Extensión para traducir páginas de contenido",
+ "tpt-section": "Unidad de traducción $1",
+ "tpt-section-new": "Nueva unidad de traducción. \nNombre: $1",
+ "tpt-section-deleted": "Unidad de traducción $1",
+ "tpt-template": "Plantilla de página",
+ "tpt-templatediff": "La plantilla de página ha cambiado.",
+ "tpt-diff-old": "Texto previo",
+ "tpt-diff-new": "Nuevo texto",
+ "tpt-submit": "Marcar esta versión para traducción",
+ "tpt-sections-oldnew": "Unidades de traducción nuevas y existentes",
+ "tpt-sections-deleted": "Unidades de traducción borradas",
+ "tpt-sections-template": "Plantilla de página de traducción",
+ "tpt-action-nofuzzy": "No invalidar traducciones",
+ "tpt-badtitle": "El nombre de página dado ($1) no es un título válido",
+ "tpt-nosuchpage": "Página $1 no existe",
+ "tpt-oldrevision": "$2 no es la última versión de la página [[:$1]].\nSolamente las últimas versiones pueden ser marcadas para traducción.",
+ "tpt-notsuitable": "La página $1 no es adecuada para traducción.\nAsegúrate que tiene etiquetas <nowiki><translate></nowiki> y tiene una sintaxis válida.",
+ "tpt-saveok": "La página [[:$1]] ha sido marcada para traducción con $2 {{PLURAL:$2|unidad|unidades}} de traducción.\nLa página puede ser ahora <span class=\"plainlinks\">[$3 traducida]</span>.",
+ "tpt-offer-notify": "Puedes <span class=\"plainlinks\">[$1 notificar a los traductores]</span> de esta página.",
+ "tpt-badsect": "\"$1\" no es un nombre válido para la unidad de traducción $2.",
+ "tpt-showpage-intro": "Debajo están listadas las unidades de traducción nuevas, existentes y borradas.\nAntes de marcar esta versión para traducción, verifica que los cambios a las unidades de traducción son mínimos para evitar trabajo innecesario a los traductores.",
+ "tpt-mark-summary": "Marcada esta sección para traducción",
+ "tpt-mark-nochanges": "No hay ninguna diferencia entre esta revisión y la última revisión marcada.",
+ "tpt-edit-failed": "No pudo actualizar la página : $1",
+ "tpt-duplicate": "El nombre de la unidad de traducción $1 es utilizado más de una vez.",
+ "tpt-already-marked": "La última versión de esta página ya ha sido marcada para traducción.",
+ "tpt-unmarked": "La página $1 ya no está marcada para traducción.",
+ "tpt-list-nopages": "Ninguna página está marcada para traducción ni lista para ser marcada para traducción.",
+ "tpt-new-pages-title": "Páginas propuestas para traducción",
+ "tpt-old-pages-title": "Páginas en curso de traducción",
+ "tpt-other-pages-title": "Páginas rotas",
+ "tpt-discouraged-pages-title": "Páginas desaconsejadas",
+ "tpt-new-pages": "{{PLURAL:$1|Esta página contiene|Estas páginas contienen}} texto con etiquetas de traducción, pero ninguna versión de {{PLURAL:$1|esta página está|estas páginas están}} actualmente marcadas para traducción.",
+ "tpt-old-pages": "Alguna versión de {{PLURAL:$1|esta página ha|estas páginas han}} sido marcada para traducción.",
+ "tpt-other-pages": "{{PLURAL:$1|Una versión antigua de esta página se marcó|Versiones antiguas de estas páginas se marcaron}} para traducirse,\npero {{PLURAL:$1|la última versión no se puede|las últimas versiones no se pueden}} marcar para traducirse.",
+ "tpt-discouraged-pages": "Se desaconseja continuar la traducción de {{PLURAL:$1|esta página|estas páginas}}.",
+ "tpt-select-prioritylangs": "Lista de códigos de idioma prioritarios separados por comas:",
+ "tpt-select-prioritylangs-force": "Impedir las traducciones a otros idiomas distintos de los prioritarios",
+ "tpt-select-prioritylangs-reason": "Motivo:",
+ "tpt-sections-prioritylangs": "Idiomas prioritarios",
+ "tpt-rev-mark": "marcar para traducción",
+ "tpt-rev-unmark": "eliminar de la traducción",
+ "tpt-rev-discourage": "desaconsejar",
+ "tpt-rev-encourage": "restaurar",
+ "tpt-rev-mark-tooltip": "Marcar la última versión de esta página para traducción.",
+ "tpt-rev-unmark-tooltip": "Eliminar esta página de la traducción",
+ "tpt-rev-discourage-tooltip": "Desaconsejar nuevas traducciones de esta página.",
+ "tpt-rev-encourage-tooltip": "Restaurar esta página para traducción normal.",
+ "translate-tag-translate-link-desc": "Traducir esta página",
+ "translate-tag-markthis": "Marcar esta página para traducción",
+ "translate-tag-markthisagain": "Esta página tiene <span class=\"plainlinks\">[$1 cambios]</span> desde la última vez que fue <span class=\"plainlinks\">[$2 marcada para traducción]</span>.",
+ "translate-tag-hasnew": "Esta página contiene <span class=\"plainlinks\">[$1 cambios]</span> que no se han marcado para su traducción.",
+ "tpt-translation-intro": "Esta página es una <span class=\"plainlinks\">[$1 versión traducida]</span> de la página [[$2]]. La traducción está completa al $3 %.",
+ "tpt-languages-legend": "Otros idiomas:",
+ "tpt-languages-zero": "Iniciar la traducción para este idioma",
+ "tpt-languages-nonzero": "$1 ($2% traducido)",
+ "tpt-tab-translate": "Traducir",
+ "tpt-target-page": "Esta página no puede ser actualizada manualmente.\nEsta página es una traducción de la página [[$1]] y la traducción puede ser actualizada usando [$2 la herramienta de traducción].",
+ "tpt-unknown-page": "Este espacio de nombre está reservado para traducciones de páginas de contenido.\nLa página que estás tratando de editar no parece corresponder con ninguna página marcada para traducción.",
+ "tpt-translation-restricted": "La traducción de esta página a este idioma ha sido impedida por un administrador de traducción.\n\nMotivo: $1",
+ "tpt-discouraged-language-force-header": "Esta página no se puede traducir al $1.",
+ "tpt-discouraged-language-force-content": "Un administrador de traducción decidió que esta página sólo puede traducirse a $1.",
+ "tpt-discouraged-language-header": "La traducción a $1 no es una prioridad para esta página.",
+ "tpt-discouraged-language-content": "Un administrador de traducción decidió centrar los esfuerzos de traducción en $1.",
+ "tpt-discouraged-language-force": "<strong>Esta página no puede ser traducida a $2.</strong>\n\nUna administración de traducción decidió que sólo puede traducirse a $3.",
+ "tpt-discouraged-language": "<strong>La traducción a $2 no es una prioridad para esta página.</strong>\n\nUna administración de traducción decidió enfocar los esfuerzos de traducción en $3.",
+ "tpt-discouraged-language-reason": "Motivo: $1",
+ "tpt-priority-languages": "Un administrador de traducciones ha definido los idiomas prioritarios de este grupo: $1.",
+ "tpt-render-summary": "Actualizando para hallar una nueva versión de la página fuente",
+ "tpt-download-page": "Exportar página con traducciones",
+ "aggregategroups": "Grupos de agregación",
+ "tpt-aggregategroup-add": "Añadir",
+ "tpt-aggregategroup-save": "Guardar",
+ "tpt-aggregategroup-add-new": "Añadir un nuevo grupo de agregación",
+ "tpt-aggregategroup-new-name": "Nombre:",
+ "tpt-aggregategroup-new-description": "Descripción (opcional):",
+ "tpt-aggregategroup-remove-confirm": "¿Está seguro que desea eliminar este grupo agregado?",
+ "tpt-aggregategroup-invalid-group": "El grupo no existe",
+ "tpt-aggregategroup-edit-name": "Nombre:",
+ "tpt-aggregategroup-edit-description": "Descripción:",
+ "tpt-aggregategroup-update": "Guardar",
+ "tpt-aggregategroup-update-cancel": "Cancelar",
+ "tpt-invalid-group": "Grupo inválido",
+ "pt-parse-open": "Etiqueta &lt;translate> desequilibrada.\nPlantilla de traducción: <pre>$1</pre>",
+ "pt-parse-close": "Etiqueta &lt;/translate> desequilibrada.\nPlantilla de traducción: <pre>$1</pre>",
+ "pt-parse-nested": "No se permiten &lt;translate> unidades de traducción anidadas.\nTexto de etiqueta: <pre>$1</pre>",
+ "pt-shake-multiple": "Múltiples marcadores de unidades de traducción para una unidad de traducción.\nTexto de la unidad de traducción: <pre>$1</pre>",
+ "pt-shake-position": "Marcadores de unidad de traducción en posición inesperada.\nTexto de la unidad de traducción: <pre>$1</pre>",
+ "pt-shake-empty": "Unidad de traducción vacía para el marcador \"$1\".",
+ "log-description-pagetranslation": "Registro para acciones relacionadas al sistema de traducción de página",
+ "log-name-pagetranslation": "Registro de traducción de página",
+ "logentry-pagetranslation-mark": "$1 {{GENDER:$2|marcó}} $3 para traducción",
+ "logentry-pagetranslation-unmark": "$1 {{GENDER:$2|eliminó}} $3 de la traducción",
+ "logentry-pagetranslation-moveok": "$1 {{GENDER:$2|completó}} el renombramiento de la página traducible $3 a $4",
+ "logentry-pagetranslation-movenok": "$1 {{GENDER:$2|encontró}} un problema al mover la página $3 a $4",
+ "logentry-pagetranslation-deletefok": "$1 {{GENDER:$2|completó}} el borrado de la página traducible $3",
+ "logentry-pagetranslation-deletefnok": "$1 {{GENDER:$2|no pudo}} borrar $3 que pertenece a la página traducible $4",
+ "logentry-pagetranslation-deletelok": "$1 {{GENDER:$2|completó}} el borrado de la página de traducción $3",
+ "logentry-pagetranslation-deletelnok": "$1 {{GENDER:$2|no pudo}} borrar $3 que pertenece a la página de traducción $4",
+ "logentry-pagetranslation-encourage": "$1 {{GENDER:$2|alentó}} la traducción de $3",
+ "logentry-pagetranslation-discourage": "$1 {{GENDER:$2|desalentó}} la traducción de $3",
+ "logentry-pagetranslation-prioritylanguages-unset": "$1 {{GENDER:$2|eliminó}} idiomas prioritarios de la página traducible $3",
+ "logentry-pagetranslation-prioritylanguages": "$1 {{GENDER:$2|configuró}} los idiomas prioritarios para la página traducible $3 a $5",
+ "logentry-pagetranslation-prioritylanguages-force": "$1 {{GENDER:$2|limitó}} los idiomas para la página traducible $3 a $5",
+ "logentry-pagetranslation-associate": "$1 {{GENDER:$2|agregó}} la página traducible $3 al grupo agregado $4",
+ "logentry-pagetranslation-dissociate": "$1 {{GENDER:$2|eliminó}} la página traducible $3 del grupo agregado $4",
+ "pt-movepage-title": "Trasladar la página traducible $1",
+ "pt-movepage-blockers": "La página traducible no puede ser movida a un nuevo nombre por {{PLURAL:$1|el siguiente error|los siguientes errores}}:",
+ "pt-movepage-block-base-exists": "Existe la página traducible de destino \"[[:$1]]\".",
+ "pt-movepage-block-base-invalid": "El nombre de la página traducible de destino no es un título válido.",
+ "pt-movepage-block-tp-exists": "La página de traducción de destino \"[[:$2]]\" existe.",
+ "pt-movepage-block-tp-invalid": "El título de la página de traducción de destino para \"[[:$1]]\" sería inválido (¿demasiado largo?).",
+ "pt-movepage-block-section-exists": "Existe la página de destino \"[[:$2]]\" para la unidad de traducción.",
+ "pt-movepage-block-section-invalid": "El título de unidad de traducción de la página de destino \"[[:$1]]\" sería inválido (¿demasiado largo?).",
+ "pt-movepage-block-subpage-exists": "La subpágina de destino [[:$2]] existe.",
+ "pt-movepage-block-subpage-invalid": "El título de subpágina de destino para \"[[:$1]]\" sería inválido (¿demasiado largo?).",
+ "pt-movepage-list-pages": "Lista de páginas a trasladar",
+ "pt-movepage-list-translation": "{{PLURAL:$1|Página|Páginas}} de traducción",
+ "pt-movepage-list-section": "{{PLURAL:$1|Página de unidad|Páginas de unidades}} de traducción",
+ "pt-movepage-list-other": "{{PLURAL:$1|Otra subpágina|Otras subpáginas}}",
+ "pt-movepage-list-count": "En total, $1 {{PLURAL:$1|página|páginas}} a trasladar.",
+ "pt-movepage-legend": "Trasladar página traducible",
+ "pt-movepage-current": "Nombre actual:",
+ "pt-movepage-new": "Nuevo nombre:",
+ "pt-movepage-reason": "Razón:",
+ "pt-movepage-subpages": "Trasladar todas las subpáginas",
+ "pt-movepage-action-check": "Verificar si el traslado es posible",
+ "pt-movepage-action-perform": "Hacer el traslado",
+ "pt-movepage-action-other": "Cambiar destino",
+ "pt-movepage-intro": "Esta página especial permite trasladar páginas que están marcadas para su traducción.\nLa acción de traslado no será instantánea, porque necesitarán trasladarse muchas páginas.\nMientras las páginas estén siendo trasladadas, no es posible interactuar con las páginas en cuestión.\nLos fallos serán registrados en el [[Special:Log/pagetranslation|registro de traducción de páginas]] y necesitarán ser reparados manualmente.",
+ "pt-movepage-logreason": "Parte de la página traducible \"$1\".",
+ "pt-movepage-started": "La página base se ha trasladado.\nPor favor verifica el [[Special:Log/pagetranslation|registro de traducción de página]] para errores y mensaje de conclusión.",
+ "pt-locked-page": "Esta página está bloqueada porque la página traducible está siendo trasladada actualmente.",
+ "pt-deletepage-lang-title": "Eliminar la página de traducción \"$1\".",
+ "pt-deletepage-full-title": "Eliminar la página traducible \"$1\".",
+ "pt-deletepage-invalid-title": "La página especificada no es válida.",
+ "pt-deletepage-invalid-text": "La página especificada no es una página traducible ni una página de traducción.",
+ "pt-deletepage-action-check": "Lista de páginas a borrar",
+ "pt-deletepage-action-perform": "Realizar la eliminación",
+ "pt-deletepage-action-other": "Cambiar el destino",
+ "pt-deletepage-lang-legend": "Eliminar la página de traducción",
+ "pt-deletepage-full-legend": "Eliminar la página traducible",
+ "pt-deletepage-any-legend": "Eliminar la página traducible o la traducción de la página",
+ "pt-deletepage-current": "Nombre de la página:",
+ "pt-deletepage-reason": "Motivo:",
+ "pt-deletepage-subpages": "Eliminar todas las subpáginas",
+ "pt-deletepage-list-pages": "Lista de páginas para eliminar",
+ "pt-deletepage-list-translation": "Páginas de traducción",
+ "pt-deletepage-list-section": "Páginas de unidades de traducción",
+ "pt-deletepage-list-other": "Otras subpáginas",
+ "pt-deletepage-list-count": "En total $1 {{PLURAL:$1|página|páginas}} a eliminar.",
+ "pt-deletepage-full-logreason": "Parte de la página traducible \"$1\".",
+ "pt-deletepage-lang-logreason": "Parte de la página de traducción \"$1\".",
+ "pt-deletepage-started": "Compruebe los errores y los mensajes de conclusión en el [[Special:Log/pagetranslation|registro de traducción de páginas]].",
+ "pt-deletepage-intro": "Esta página especial te permite eliminar páginas traducibles enteras o una página de traducción individual a un idioma. La eliminación no será instantánea, porque deben borrarse todas las páginas dependientes de ella. \nLos fallos se registrarán en el [[Special:Log/pagetranslation|registro de traducción de la página]] y tendrán que ser reparados a mano.",
+ "pagemigration": "Migración de página de traducción",
+ "pagemigration-summary": "Especificar una página de traducción y restaurar cualquier traducción antes de que el sistema Translate fue habilitado en esa página.",
+ "pm-import-button-label": "Importar",
+ "pm-savepages-button-label": "Guardar",
+ "pm-cancel-button-label": "Cancelar",
+ "pm-pagename-placeholder": "Escribe el nombre de la página",
+ "pm-langcode-placeholder": "Código de idioma",
+ "pm-page-does-not-exist": "$1 no existe",
+ "pm-old-translations-missing": "$1 no contiene traducciones obsoletas.",
+ "pm-extra-units-warning": "Podrían estar presentes unidades extras. Haz coincidir correctamente las unidades de origen y de traducción.",
+ "pm-pagename-missing": "Escribe el nombre de la página",
+ "pm-langcode-missing": "Escribe el código de idioma",
+ "pm-add-icon-hover-text": "Añadir una unidad más abajo",
+ "pm-swap-icon-hover-text": "Intercambiar con la unidad siguiente",
+ "pm-delete-icon-hover-text": "Eliminar unidad",
+ "pm-pagetitle-invalid": "Escribe un título válido para la página",
+ "pm-summary-import": "Se importó la traducción usando [[Special:PageMigration|migración de página]]",
+ "tpt-translate-title": "Permitir la traducción del título de la página",
+ "pp-save-summary": "Preparada la página para la traducción",
+ "pagepreparation": "Preparar la página para la traducción",
+ "pp-pagename-placeholder": "Escribe el nombre de la página",
+ "pp-prepare-button-label": "Preparar",
+ "pp-save-button-label": "Guardar",
+ "pp-save-message": "Se guardó la página. Puedes [$1 editarla].",
+ "pp-prepare-message": "Se preparó la página para la traducción. Mira los cambios más abajo. ¡Haz clic en el botón \"{{int:pp-save-button-label}}\" si está todo bien!",
+ "pp-already-prepared-message": "Parece que la página ya se ha preparado para la traducción. No hay cambios respecto a la versión anterior.",
+ "pp-pagename-missing": "Escribe el nombre de la página.",
+ "pp-diff-old-header": "Texto fuente",
+ "pp-diff-new-header": "Texto preparado",
+ "tpt-unlink-button": "Eliminar de la traducción",
+ "tpt-unlink-summary": "Eliminar página de la traducción"
+}
diff --git a/MLEB/Translate/i18n/pagetranslation/et.json b/MLEB/Translate/i18n/pagetranslation/et.json
new file mode 100644
index 00000000..2ba49585
--- /dev/null
+++ b/MLEB/Translate/i18n/pagetranslation/et.json
@@ -0,0 +1,146 @@
+{
+ "@metadata": {
+ "authors": [
+ "Avjoska",
+ "Ker",
+ "Pikne",
+ "Lyrixn"
+ ]
+ },
+ "pagetranslation": "Lehekülje tõlkimine",
+ "right-pagetranslation": "Märkida lehekülje versioone tõlkimiseks",
+ "action-pagetranslation": "tõlgitavaid lehekülgi hallata",
+ "tpt-desc": "Sisulehekülgede tõlkimise lisa",
+ "tpt-section": "Tõlkeüksus $1",
+ "tpt-section-new": "Uus tõlkeüksus.\nNimi: $1",
+ "tpt-section-deleted": "Tõlkeüksus $1",
+ "tpt-template": "Lehekülje mall",
+ "tpt-templatediff": "Leheküljemall on muutunud.",
+ "tpt-diff-old": "Eelnev tekst",
+ "tpt-diff-new": "Uus tekst",
+ "tpt-submit": "Märgi see versioon tõlkimiseks",
+ "tpt-sections-oldnew": "Uued ja olemasolevad tõlkeüksused",
+ "tpt-sections-deleted": "Kustutatud tõlkeüksused",
+ "tpt-sections-template": "Tõlkelehekülje mall",
+ "tpt-badtitle": "Pealkiri ($1) ei sobi.",
+ "tpt-nosuchpage": "Lehekülge $1 pole",
+ "tpt-oldrevision": "$2 pole lehekülje [[:$1]] uusim versioon.\nAinult uusimaid versioone saab märkida tõlkimiseks.",
+ "tpt-notsuitable": "Lehekülg $1 ei sobi tõlkimiseks.\nVeendu, et see sisaldab <nowiki><translate></nowiki>-silte ja selle süntaks on õige.",
+ "tpt-saveok": "{{PLURAL:$2|Ühe|$2}} tõlkeüksusega lehekülg [[:$1]] on märgitud tõlkimiseks.\nLehekülge saab nüüd <span class=\"plainlinks\">[$3 tõlkida]</span>.",
+ "tpt-badsect": "\"$1\" ei sobi tõlkeüksuse $2 nimeks.",
+ "tpt-showpage-intro": "Allpool on loetletud uued, olemasolevad ja kustutatud tõlkeüksused.\nEnne selle versiooni märkimist tõlkimiseks, veendu palun, et tõlkeüksustes tehtud muudatused on võimalikult väikesed, et tõlkijad ei peaks tegema tarbetut tööd.",
+ "tpt-mark-summary": "See versioon on märgitud tõlkimiseks",
+ "tpt-edit-failed": "Lehekülje uuendamine ei õnnestunud: $1",
+ "tpt-duplicate": "Tõlkeüksust nimega $1 kasutatakse rohkem kui ühel korral.",
+ "tpt-already-marked": "Selle lehekülje uusim versioon juba on tõlkimiseks märgitud.",
+ "tpt-unmarked": "Lehekülg $1 pole enam märgitud tõlkimiseks.",
+ "tpt-list-nopages": "Ükski lehekülg pole märgitud tõlkimiseks ega ole valmis, et märkida ta tõlkimiseks.",
+ "tpt-new-pages-title": "Tõlkimiseks esitatud leheküljed",
+ "tpt-old-pages-title": "Tõlgitavad leheküljed",
+ "tpt-other-pages-title": "Katkised leheküljed",
+ "tpt-discouraged-pages-title": "Kasutusest välja jäetud leheküljed",
+ "tpt-new-pages": "{{PLURAL:$1|See lehekülg sisaldab|Need leheküljed sisaldavad}} tõlkesiltidega teksti,\naga ükski {{PLURAL:$1|selle lehekülje|nende lehekülgede}} versioon pole praegu märgitud tõlkimiseks.",
+ "tpt-old-pages": "Mõned {{PLURAL:$1|selle lehekülje|nende lehekülgede}} versioonid on märgitud tõlkimiseks.",
+ "tpt-other-pages": "{{PLURAL:$1|Selle lehekülje vana versioon|Nende lehekülgede vanad versioonid}} on märgitud tõlkimiseks\nja {{PLURAL:$1|uusimat versiooni|uusimaid versioone}} ei saa tõlgitavaks teha.",
+ "tpt-discouraged-pages": "{{PLURAL:$1|Selle lehekülje|Nende lehekülgede}} edasist tõlkimist ei soovita.",
+ "tpt-select-prioritylangs": "Olulisemate keelte koodide komaga eraldatud loetelu:",
+ "tpt-select-prioritylangs-force": "Enneta tõlkimist teistesse keeltesse peale olulisemate keelte",
+ "tpt-select-prioritylangs-reason": "Põhjus:",
+ "tpt-sections-prioritylangs": "Olulisemad keeled",
+ "tpt-rev-mark": "märgi tõlkimiseks",
+ "tpt-rev-unmark": "eemalda tõlkimisest",
+ "tpt-rev-discourage": "hoidu uutest tõlgetest",
+ "tpt-rev-encourage": "ennista",
+ "tpt-rev-mark-tooltip": "Märgi selle lehekülje viimane versioon tõlkimiseks.",
+ "tpt-rev-unmark-tooltip": "Eemalda see lehekülg tõlkimisest.",
+ "tpt-rev-discourage-tooltip": "Olgu selle lehekülje edasine tõlkimine soovimatu",
+ "tpt-rev-encourage-tooltip": "Ennista see lehekülg harilikuks tõlkimiseks",
+ "translate-tag-translate-link-desc": "Tõlgi see leht",
+ "translate-tag-markthisagain": "Seda lehekülge on <span class=\"plainlinks\">[$1 muudetud]</span> pärast seda, kui see viimati <span class=\"plainlinks\">[$2 tõlkimiseks märgiti]</span>.",
+ "translate-tag-hasnew": "See lehekülg sisaldab <span class=\"plainlinks\">[$1 muudatusi]</span>, mida pole märgitud tõlkimiseks.",
+ "tpt-translation-intro": "See on lehekülje [[$2]] <span class=\"plainlinks\">[$1 tõlgitud versioon]</span> ja tõlkest on valmis $3%.",
+ "tpt-languages-legend": "Teistes keeltes:",
+ "tpt-languages-zero": "Alusta sellesse keelde tõlkimist",
+ "tpt-tab-translate": "Tõlgi",
+ "tpt-target-page": "Seda lehekülge ei saa käsitsi uuendada.\nSee lehekülg on lehekülje [[$1]] tõlge ja tõlget saab uuendada [$2 tõlkeriista] abil.",
+ "tpt-unknown-page": "See nimeruum on sisulehekülgede tõlkimiseks.\nLehekülg, mida redigeerida üritad, ei paista olevat seotud ühegi tõlkimiseks märgitud leheküljega.",
+ "tpt-translation-restricted": "Tõlkeadministraator on tõkestanud selle lehekülje tõlkimise sellesse keelde.\n\nPõhjus: $1",
+ "tpt-discouraged-language-force": "<strong>Seda lehekülge ei saa tõlkida $2 keelde.</strong>\n\nTõlkeadministraator otsustas, et seda lehekülge saab tõlkida vaid järgmistesse keeltesse: $3.",
+ "tpt-discouraged-language": "<strong>Selle lehekülje tõlkimine $2 keelde pole oluline.</strong>\n\nTõlkeadministraator otsustas, et keskendutakse järgmistesse keeltesse tõlkimisele: $3.",
+ "tpt-discouraged-language-reason": "Põhjus: $1",
+ "tpt-priority-languages": "Tõlkeadministraator määras, et on oluline tõlkida see rühm järgmistesse keeltesse: $1.",
+ "tpt-render-summary": "Uuendatud, et vastata lähtelehekülje uuele versioonile",
+ "aggregategroups": "Ühendrühmad",
+ "tpt-aggregategroup-add": "Lisa",
+ "tpt-aggregategroup-save": "Salvesta",
+ "tpt-aggregategroup-add-new": "Lisa uus ühendrühm",
+ "tpt-aggregategroup-new-name": "Nimi:",
+ "tpt-aggregategroup-new-description": "Kirjeldus (valikuline):",
+ "tpt-aggregategroup-remove-confirm": "Kas oled kindel, et soovid selle ühendrühma kustutada?",
+ "tpt-aggregategroup-invalid-group": "Rühma pole",
+ "pt-parse-open": "Puudub sildile &lt;translate> vastav lõpusilt.\nTõlkemall: <pre>$1</pre>",
+ "pt-parse-close": "Puudub sildile &lt;/translate> vastav algussilt.\nTõlkemall: <pre>$1</pre>",
+ "pt-parse-nested": "Pesastatud &lt;translate>-tõlkeüksused pole lubatud.\nSildi tekst: <pre>$1</pre>",
+ "pt-shake-multiple": "Ühel tõlkeüksusel on mitu tähist.\nTõlkeüksuse tekst: <pre>$1</pre>",
+ "pt-shake-position": "Tõlkeüksuse tähis on ootamatu koha peal.\nTõlkeüksuse tekst: <pre>$1</pre>",
+ "pt-shake-empty": "Tõlkeüksus tähisega \"$1\" on tühi.",
+ "log-description-pagetranslation": "Lehekülgede tõlkesüsteemiga seotud toimingute logi",
+ "log-name-pagetranslation": "Lehekülgede tõlkelogi",
+ "logentry-pagetranslation-mark": "$1 {{GENDER:$2|märkis}} lehekülje \"$3\" tõlkimiseks",
+ "logentry-pagetranslation-unmark": "$1 {{GENDER:$2|eemaldas}} lehekülje \"$3\" tõlkimiselt",
+ "pt-movepage-title": "Tõlgitava lehekülje \"$1\" teisaldamine",
+ "pt-movepage-blockers": "{{PLURAL:$1|Järgmise tõrke|Järgmiste tõrgete}} tõttu ei saa tõlgitavat lehekülge uue pealkirja alla teisaldada:",
+ "pt-movepage-block-base-exists": "Sihtkohaks määratud tõlgitav lehekülg \"[[:$1]]\" on olemas.",
+ "pt-movepage-block-base-invalid": "Sihtkohaks määratud tõlgitava lehekülje pealkiri ei sobi.",
+ "pt-movepage-block-tp-exists": "Sihtkohaks määratud tõlkelehekülg \"[[:$2]]\" on olemas.",
+ "pt-movepage-block-tp-invalid": "Lehekülje \"[[:$1]]\" sihtkohaks määratud tõlkelehekülje pealkiri oleks vigane (liiga pikk?).",
+ "pt-movepage-block-section-exists": "Tõlkeüksuse sihtkohaks määratud lehekülg \"[[:$2]]\" on olemas.",
+ "pt-movepage-block-section-invalid": "Tõlkeüksuse sihtkohaks määratud lehekülje \"[[:$1]]\" pealkiri oleks vigane (liiga pikk?).",
+ "pt-movepage-block-subpage-exists": "Sihtkohaks määratud alamlehekülg \"[[:$2]]\" on olemas.",
+ "pt-movepage-block-subpage-invalid": "Lehekülje \"[[:$1]]\" sihtkohaks määratud alamlehekülje pealkiri oleks vigane (liiga pikk?).",
+ "pt-movepage-list-pages": "Teisaldamisele kuuluvate lehekülgede loend",
+ "pt-movepage-list-translation": "{{PLURAL:$1|Tõlkelehekülg|Tõlkeleheküljed}}",
+ "pt-movepage-list-section": "Tõlkeüksuse {{PLURAL:$1|lehekülg|leheküljed}}",
+ "pt-movepage-list-other": "{{PLURAL:$1|Muu alamlehekülg|Muud alamleheküljed}}",
+ "pt-movepage-list-count": "Teisaldamisele {{PLURAL:$1|kuulub kokku üks lehekülg|kuuluvad kokku $1 lehekülge}}.",
+ "pt-movepage-legend": "Tõlgitava lehekülje teisaldamine",
+ "pt-movepage-current": "Praegune nimi:",
+ "pt-movepage-new": "Uus nimi:",
+ "pt-movepage-reason": "Põhjus:",
+ "pt-movepage-subpages": "Teisalda kõik alamleheküljed",
+ "pt-movepage-action-check": "Kontrolli, kas teisaldamine on võimalik",
+ "pt-movepage-action-perform": "Teisalda",
+ "pt-movepage-action-other": "Muuda sihtkohta",
+ "pt-movepage-intro": "See erilehekülg võimaldab teisaldada lehekülgi, mis on märgitud tõlkimiseks.\nToiming pole kohene, sest teisaldada tuleb palju lehekülgi.\nTeisaldamise ajal pole võimalik kõnealustel lehekülgedel midagi teha.\nNurjumised logitakse [[Special:Log/pagetranslation|lehekülgede tõlkelogisse]] ja need tuleb käsitsi parandada.",
+ "pt-movepage-logreason": "Osa tõlgitavast leheküljest $1.",
+ "pt-movepage-started": "See põhilehekülg on nüüd teisaldatud.\nPalun kontrolli, kas [[Special:Log/pagetranslation|lehekülgede tõlkelogis]] on tõrkeid ja teade lõpulejõudmise kohta.",
+ "pt-locked-page": "See lehekülg on lukus, sest tõlgitavat lehekülge teisaldatakse parasjagu.",
+ "pt-deletepage-lang-title": "Tõlkelehekülje \"$1\" kustutamine",
+ "pt-deletepage-full-title": "Tõlgitava lehekülje \"$1\" kustutamine",
+ "pt-deletepage-invalid-title": "Määratud lehekülg pole sobiv.",
+ "pt-deletepage-invalid-text": "Määratud lehekülg pole tõlgitav lehekülg ega tõlkelehekülg.",
+ "pt-deletepage-action-check": "Loetle kustutamisele kuuluvad leheküljed",
+ "pt-deletepage-action-perform": "Kustuta",
+ "pt-deletepage-action-other": "Muuda sihtlehekülge",
+ "pt-deletepage-lang-legend": "Tõlkelehekülje kustutamine",
+ "pt-deletepage-full-legend": "Tõlgitava lehekülje kustutamine",
+ "pt-deletepage-any-legend": "Tõlgitava lehekülje või tõlkelehekülje kustutamine",
+ "pt-deletepage-current": "Lehekülje nimi:",
+ "pt-deletepage-reason": "Põhjus:",
+ "pt-deletepage-subpages": "Kustuta kõik alamleheküljed",
+ "pt-deletepage-list-pages": "Kustutamisele kuuluvate lehekülgede loend",
+ "pt-deletepage-list-translation": "Tõlkeleheküljed",
+ "pt-deletepage-list-section": "Tõlkeüksuse leheküljed",
+ "pt-deletepage-list-other": "Muud alamlehed",
+ "pt-deletepage-list-count": "Kustutamisele {{PLURAL:$1|kuulub kokku üks lehekülg|kuuluvad kokku $1 lehekülge}}.",
+ "pt-deletepage-full-logreason": "Osa tõlgitavast leheküljest $1.",
+ "pt-deletepage-lang-logreason": "Osa tõlkeleheküljest $1.",
+ "pt-deletepage-started": "Palun kontrolli, kas [[Special:Log/pagetranslation|lehekülgede tõlkelogis]] on tõrkeid ja teade lõpulejõudmise kohta.",
+ "pt-deletepage-intro": "See erilehekülg võimaldab kustutada terve tõlgitava lehekülje või ühe keele üksiku tõlkelehekülje.\nToiming pole kohene, sest kõik neist sõltuvad leheküljed kustutatakse samuti.\nNurjumised logitakse [[Special:Log/pagetranslation|lehekülgede tõlkelogisse]] ja need tuleb käsitsi parandada.",
+ "pm-import-button-label": "Impordi",
+ "pm-savepages-button-label": "Salvesta",
+ "pm-cancel-button-label": "Loobu",
+ "pm-pagename-placeholder": "Sisesta lehe nimetus",
+ "pm-langcode-placeholder": "Keelekood",
+ "pm-pagetitle-invalid": "Palun sisesta korrektne lehekülje pealkiri"
+}
diff --git a/MLEB/Translate/i18n/pagetranslation/eu.json b/MLEB/Translate/i18n/pagetranslation/eu.json
new file mode 100644
index 00000000..6b2cfe43
--- /dev/null
+++ b/MLEB/Translate/i18n/pagetranslation/eu.json
@@ -0,0 +1,32 @@
+{
+ "@metadata": {
+ "authors": [
+ "An13sa",
+ "Kobazulo",
+ "පසිඳු කාවින්ද"
+ ]
+ },
+ "pagetranslation": "Orrialdearen itzulpena",
+ "tpt-section-new": "Itzulpen unitate berria.\nIzena: $1",
+ "tpt-section-deleted": "$1 itzulpen unitatea",
+ "tpt-template": "Orrialde txantiloia",
+ "tpt-diff-old": "Aurreko testua",
+ "tpt-diff-new": "Testu berria",
+ "tpt-edit-failed": "Ezin izan da orrialdea eguneratu: $1",
+ "tpt-select-prioritylangs-reason": "Arrazoia:",
+ "tpt-rev-encourage": "Leheneratu",
+ "translate-tag-translate-link-desc": "Itzuli orri hau",
+ "tpt-languages-legend": "Beste hizkuntzak:",
+ "tpt-discouraged-language-reason": "Arrazoia: $1",
+ "tpt-aggregategroup-add": "Gehitu",
+ "tpt-aggregategroup-save": "Gorde",
+ "tpt-aggregategroup-new-name": "Izena:",
+ "pt-movepage-list-translation": "Itzulpen orrialdeak",
+ "pt-movepage-list-other": "Bestelako azpiorrialdeak",
+ "pt-movepage-current": "Oraingo izena:",
+ "pt-movepage-new": "Izen berria:",
+ "pt-movepage-reason": "Arrazoia:",
+ "pt-movepage-subpages": "Azpiorrialde guztiak mugitu",
+ "pt-deletepage-current": "Orriaren izena:",
+ "pt-deletepage-reason": "Arrazoia:"
+}
diff --git a/MLEB/Translate/i18n/pagetranslation/fa.json b/MLEB/Translate/i18n/pagetranslation/fa.json
new file mode 100644
index 00000000..e37d8be1
--- /dev/null
+++ b/MLEB/Translate/i18n/pagetranslation/fa.json
@@ -0,0 +1,176 @@
+{
+ "@metadata": {
+ "authors": [
+ "Dalba",
+ "Ebraminio",
+ "Huji",
+ "Mjbmr",
+ "ZxxZxxZ",
+ "پاناروما",
+ "Armin1392",
+ "Omid.koli",
+ "Alirezaaa",
+ "Reza1615"
+ ]
+ },
+ "pagetranslation": "ترجمهٔ صفحه",
+ "right-pagetranslation": "علامت‌گذاری نسخه‌های صفحه برای ترجمه",
+ "action-pagetranslation": "مدیریت صفحه‌های ترجمه‌پذیر",
+ "tpt-desc": "افزونه‌ای برای ترجمهٔ صفحه‌های محتوایی",
+ "tpt-section": "واحد ترجمهٔ $1",
+ "tpt-section-new": "واحد جدید ترجمه.\nنام: $1",
+ "tpt-section-deleted": "واحد ترجمهٔ $1",
+ "tpt-template": "قالب صفحه",
+ "tpt-templatediff": "قالب صفحه تغییر کرده‌است.",
+ "tpt-diff-old": "متن قبلی",
+ "tpt-diff-new": "متن تازه",
+ "tpt-submit": "علامت‌گذاری این نسخه برای ترجمه",
+ "tpt-sections-oldnew": "واحدهای تازه و موجود ترجمه",
+ "tpt-sections-deleted": "واحدهای حذف‌شدهٔ ترجمه",
+ "tpt-sections-template": "الگوی ترجمهٔ صفحه",
+ "tpt-action-nofuzzy": "عدم ابطال ترجمه‌ها",
+ "tpt-badtitle": "نام صفحهٔ داده‌شده ($1) عنوان معتبری نیست",
+ "tpt-nosuchpage": "صفحهٔ $1 وجود ندارد",
+ "tpt-oldrevision": "$2 آخرین نسخهٔ صفحهٔ [[:$1]] نیست.\nفقط آخرین نسخه‌ها می‌توانند برای ترجمه علامت‌گذاری شوند.",
+ "tpt-notsuitable": "صفحهٔ $1 برای ترجمه مناسب نیست.\nمطمئن شوید برچسب <nowiki><translate></nowiki> و نحو مناسبی دارد.",
+ "tpt-saveok": "صفحه [[:$1]] برای ترجمه با $2 {{PLURAL:$2|translation unit|translation units}} مشخص شده‌است.\nاکنون صفحه می‌تواند <span class=\"plainlinks\">[$3 ترجمه شده]</span> باشد.",
+ "tpt-offer-notify": "شما می‌توانید <span class=\"plainlinks\">[$1 notify translators]</span> درباره این صفحه.",
+ "tpt-badsect": "«$1» نام معتبری برای واحد ترجمهٔ $2 نیست.",
+ "tpt-showpage-intro": "در زیر،واحدهای ترجمه جدید، موجود و حذف شده، فهرست شده‌اند.\nقبل از نشانه‌گذاری این نسخه برای ترجمه، بررسی کنید که تغییرات به واحدهای ترجمه برای اجتناب از کار غیرضروری برای مترجمان، به کمترین حد رسیده‌ است.",
+ "tpt-mark-summary": "علامت‌گذاری این نسخه برای ترجمه",
+ "tpt-edit-failed": "نتوانست صفحه را به روز رسانی کند: $1",
+ "tpt-duplicate": "بیشتر از یک بار نام واحد ترجمهٔ $1 استفاده شده‌است.",
+ "tpt-already-marked": "آخرین نسخهٔ این صفحه برای ترجمه مشخص شده‌است.",
+ "tpt-unmarked": "صفحهٔ $1 دیگر برای ترجمه مشخص نشده‌است.",
+ "tpt-list-nopages": "هیچ صفحه‌ای برای ترجمه مشخص نشده یا برای ترجمه آماده علامت‌گذاری نیست.",
+ "tpt-new-pages-title": "صفحات پیشنهاد شده برای ترجمه",
+ "tpt-old-pages-title": "صفحات در صفحه",
+ "tpt-other-pages-title": "صفحات غلط",
+ "tpt-discouraged-pages-title": "صفحات دلسرد",
+ "tpt-new-pages": "{{PLURAL:$1|این صفحه شامل|این صفحات شامل}} متن با برچسب‌های ترجمه،\nاما هیچ نسخه‌ {{PLURAL:$1|این صفحه|این صفحات}} در حال حاضر برای ترجمه علامت‌گذاری نشده‌است.",
+ "tpt-old-pages": "چند نسخه {{PLURAL:$1|این صفحه|این صفحات}} برای ترجمه علامت‌گذاری شده‌است.",
+ "tpt-other-pages": "{{PLURAL:$1|ورژن قدیمی این صفحه|ورژن‌های قدیمی‌تر این صفحه}} برای ترجمه علامت‌گذاری شده‌اند،\nاما آخرین {{PLURAL:$1|نسخه|نسخه‌ها}} نمی‌توانند برای ترجمه علامت‌گذاری شوند.",
+ "tpt-discouraged-pages": "{{PLURAL:$1|این صفحه|این صفحات}} از ترجمه بیشتر دلسرد شده‌اند.",
+ "tpt-select-prioritylangs": "فهرست اولیه کدهای زبان جدا شده با کاما:",
+ "tpt-select-prioritylangs-force": "جلوگیری از ترجمه‌ها به زبان‌های دیگر از زبان‌های اولویت",
+ "tpt-select-prioritylangs-reason": "دلیل:",
+ "tpt-sections-prioritylangs": "زبان‌های با اولویت بالا",
+ "tpt-rev-mark": "علامت‌گذاری برای ترجمه",
+ "tpt-rev-unmark": "حذف از ترجمه",
+ "tpt-rev-discourage": "دلسرد",
+ "tpt-rev-encourage": "احیا",
+ "tpt-rev-mark-tooltip": "علامت‌گذاری آخرین نسخهٔ این صفحه برای ترجمه.",
+ "tpt-rev-unmark-tooltip": "حذف این صفحه از ترجمه.",
+ "tpt-rev-discourage-tooltip": "دلسرد شدن از ترجمه‌های بیشتر در این صفحه",
+ "tpt-rev-encourage-tooltip": "بازگرداندن این صفحه به ترجمه عادی.",
+ "translate-tag-translate-link-desc": "ترجمهٔ این پروژه",
+ "translate-tag-markthis": "علامت‌گذاری این صفحه برای ترجمه",
+ "translate-tag-markthisagain": "این صفحه از آخرین باری که <span class=\"plainlinks\">[$2 برای ترجمه علامت‌گذاری]</span> شده بود <span class=\"plainlinks\">[$1 تغییراتی]</span> داشته است.",
+ "translate-tag-hasnew": "این صفحه شامل <span class=\"plainlinks\">[$1 changes]</span> است که برای ترجمه علامت‌گذاری نشده‌اند.",
+ "tpt-translation-intro": "این صفحه <span class=\"plainlinks\">[$1 نسخهٔ ترجمه‌شدهٔ]</span> صفحهٔ [[$2]] است و ترجمهٔ آن $3٪ کامل شده‌است.",
+ "tpt-languages-legend": "زبان‌های دیگر:",
+ "tpt-languages-zero": "شروع ترجمه برای این زبان",
+ "tpt-tab-translate": "ترجمه",
+ "tpt-target-page": "این صفحه به صورت دستی به روز نمی‌شود.\nاین صفحه یک ترجمه‌ای از صفحهٔ [[$1]] است و ترجمه را می‌توان از طریق [$2 ابزار ترجمه] به روز کرد.",
+ "tpt-unknown-page": "این فضای نام برای محتوای صفحه ترجمه‌ها محفوظ شده‌است.\nصفحه‌ای که شما سعی به ویرایش آن دارید، به نظر نمی‌رسد با هر صفحه علامت‌گذاری شده برای ترجمه مطابقت داشته باشد.",
+ "tpt-translation-restricted": "ترجمه این صفحه به این زبان توسط یک سرپرست ترجمه منع شده‌است.\nدلیلː $1",
+ "tpt-discouraged-language-force": "<strong> این صفحه نمی‌تواند به $2 ترجمه شود.</strong>\nسرپرست ترجمه تصمیم گرفت که این صفحه می‌تواند تنها به $3 ترجمه شود.",
+ "tpt-discouraged-language": "<strong> ترجمه به $2 اولویت برای این صفحه نیست.<strong>\nسرپرست ترجمه تصمیم به تمرکز تلاش‌های ترجمه بر روی $3 گرفت.",
+ "tpt-discouraged-language-reason": "دلیل: $1",
+ "tpt-priority-languages": "سرپرست ترجمه اولویت زبان‌ها را برای این گروه به $1 تنظیم کرده‌است.",
+ "tpt-render-summary": "به روز رسانی برای مطابقت نسخه تازه صفحه منبع",
+ "tpt-download-page": "صادر کردن صفحه با ترجمه‌ها",
+ "aggregategroups": "گروه‌های انبوه",
+ "tpt-aggregategroup-add": "افزودن",
+ "tpt-aggregategroup-save": "ذخیره",
+ "tpt-aggregategroup-add-new": "افزودن گروه تازه جمع‌شده",
+ "tpt-aggregategroup-new-name": "نام:",
+ "tpt-aggregategroup-new-description": "توضیحات (اختیاری):",
+ "tpt-aggregategroup-remove-confirm": "آیا مطمئن هستید که می‌خواهید این گروه جمع شده را حذف کنید؟",
+ "tpt-aggregategroup-invalid-group": "گروه وجود ندارد",
+ "tpt-aggregategroup-edit-name": "نام:",
+ "tpt-aggregategroup-edit-description": "شرح:",
+ "tpt-aggregategroup-update": "ذخیره",
+ "tpt-aggregategroup-update-cancel": "انصراف",
+ "tpt-invalid-group": "گروه نامعتبر",
+ "pt-parse-open": "نامتعادل و‌ ال‌تی؛ ترجمه> برچسب.\nالگو ترجمهː <pre>$1</pre>",
+ "pt-parse-close": "نامتعادل &lt; /ترجمه > برچسب.\nالگو ترجمه: <pre>$1</pre>",
+ "pt-parse-nested": "تو در تو &lt; ترجمه> واحدهای ترجمه مجاز نیست.\nبرچسب متن: <pre>$1</pre>",
+ "pt-shake-multiple": "چند نشانگر واحد ترجمه برای یک واحد ترجمه.\nمتن واحد ترجمهː <pre>$1</pre>",
+ "pt-shake-position": "نشانگرهای واحد ترجمه در وضعیت غیرمنتظره.\nمتن واحد ترجمهː <pre>$1</pre>",
+ "pt-shake-empty": "واحد ترجمه خالی برای نشانگر \"$1\".",
+ "log-description-pagetranslation": "سیاههٔ اعمال مربوط به سامانهٔ ترجمهٔ صفحه",
+ "log-name-pagetranslation": "سیاههٔ ترجمهٔ صفحه",
+ "logentry-pagetranslation-mark": "$1 {{GENDER:$2|غلامت‌گذاری شده}} $3 برای ترجمه",
+ "logentry-pagetranslation-unmark": "$1 {{GENDER:$2|حذف شده}} $3 از ترجمه",
+ "logentry-pagetranslation-moveok": "$1 {{GENDER:$2|کامل شده}} تغییر نام صفحه قابل ترجمه $3 به $4",
+ "logentry-pagetranslation-movenok": "$1 {{GENDER:$2|مواجه شده}} یک مشکل هنگام حرکت صفحه $3 به $4",
+ "logentry-pagetranslation-deletefok": "$1 {{GENDER:$2|کامل شده}} حذف صفحه قابل ترجمه $3",
+ "logentry-pagetranslation-deletefnok": "$1 {{GENDER:$2|عدم موفقیت}} برای حذف $3 که به ترجمه صفحه $4 متعلق است",
+ "logentry-pagetranslation-deletelok": "$1 {{GENDER:$2|کامل شده}} حذف صفحه ترجمه $3",
+ "logentry-pagetranslation-deletelnok": "$1 {{GENDER:$2|عدم موفقیت}} برای حذف $3 که به ترجمه صفحه $4 تعلق دارد",
+ "logentry-pagetranslation-encourage": "$1 {{GENDER:$2|ترغیب کرده}} ترجمه $3",
+ "logentry-pagetranslation-discourage": "$1 {{GENDER:$2|دلسرد کرده}} ترجمه $3",
+ "logentry-pagetranslation-prioritylanguages-unset": "$1 {{GENDER:$2|حذف شده}} اولویت‌های زبان‌ها از صفحه قابل ترجمه $3",
+ "logentry-pagetranslation-prioritylanguages": "$1 {{GENDER:$2|تنظیم}} اولویت زبان‌ها برای صفحه قابل ترجمه $3 به $5",
+ "logentry-pagetranslation-prioritylanguages-force": "$1 {{GENDER:$2|نحدود شده}} زبان‌ها برای صفحه قابل ترجمه $3 به $5",
+ "logentry-pagetranslation-associate": "$1 {{GENDER:$2|افزوده شده}} صفحه قابل ترجمه $3 برای جمع کردن گروه $4",
+ "logentry-pagetranslation-dissociate": "$1 {{GENDER:$2|حذف شده}} صفحه قابل ترجمه $3 از گروه جمع شده $4",
+ "pt-movepage-title": "انتقال صفحهٔ ترجمه \"$1\"",
+ "pt-movepage-blockers": "صفحه قابل ترجمه نمی‌تواند به دلیل {{PLURAL:$1|خطا|خطاهای}} زیر به یک نام جدید منتقل شودː",
+ "pt-movepage-block-base-exists": "صفحهٔ قابل ترجمهٔ مورد نظر \"[[:$1]]\" وجود دارد.",
+ "pt-movepage-block-base-invalid": "نام صفحهٔ قابل ترجمهٔ مورد نظر یک عنوان معتبر نیست.",
+ "pt-movepage-block-tp-exists": "صفحهٔ ترجمهٔ مورد نظر \"[[:$2]]\" وجود دارد.",
+ "pt-movepage-block-tp-invalid": "عنوان صفحهٔ ترجمه مورد نظر برای \"[[:$1]]\" نامعتبر می‌باشد (بسیار طولانی؟)",
+ "pt-movepage-block-section-exists": "صفحهٔ مورد نظر \"[[:$2]]\" برای واحد ترجمه وجود دارد.",
+ "pt-movepage-block-section-invalid": "عنوان صفحه مورد نطر برای \"[[:$1]]\" برای واحد ترجمه معتبر نخواهد بود (بسیار طولانی؟).",
+ "pt-movepage-block-subpage-exists": "زیر صفحه موردنظر \"[[:$2]]\" وجود دارد.",
+ "pt-movepage-block-subpage-invalid": "عنوان زیرصفحه موردنظر برای \"[[:$1]]\" معتبر نخواهد بود (بسیار طولانی؟).",
+ "pt-movepage-list-pages": "فهرست صفحات برای انتقال",
+ "pt-movepage-list-translation": "{{PLURAL:$1|صفحهٔ|صفحه‌های}} ترجمه",
+ "pt-movepage-list-section": "{{PLURAL:$1|صفحهٔ|صفحه‌های}} واحد ترجمه",
+ "pt-movepage-list-other": "زیر{{PLURAL:$1|صفحهٔ|صفحه‌های}} دیگر",
+ "pt-movepage-list-count": "در کل $1 {{PLURAL:$1|صفحه|صفحه‌ها}} برای حذف شدن.",
+ "pt-movepage-legend": "انتقال صفحهٔ قابل ترجمه",
+ "pt-movepage-current": "نام فعلی:",
+ "pt-movepage-new": "نام تازه:",
+ "pt-movepage-reason": "دلیل:",
+ "pt-movepage-subpages": "انتقال همهٔ زیرصفحه‌ها",
+ "pt-movepage-action-check": "بررسی کن که انتقال ممکن باشد",
+ "pt-movepage-action-perform": "منتقل کن",
+ "pt-movepage-action-other": "تغییر هدف",
+ "pt-movepage-intro": "این صفحه خاص به شما برای حذف صفحاتی که برای ترجمه مشخص شده‌اند اجازه می دهد.\nبه دلیل صفحات بسیار که نیاز به انتقال خواهند داشت، عمل انتقال فوری نخواهد‌بود.\nهنگامی که صفحات منتقل می‌شوند, امکان ارتباط برقرار کردن با صفحات در سوال نیست.\nشکست‌ها در [[Special:Log/pagetranslation|سیاهه صفحه ترجمه]] وارد خواهند‌شد و آنها نیاز به تعمیر با دست دارند.",
+ "pt-movepage-logreason": "قسمتی از صفحه ترجمه \"$1\".",
+ "pt-movepage-started": "صفحه پایه منتقل نشده‌است.\nلطفاً [[Special:Log/pagetranslation|سیاهه صفحه ترجمه]] را برای خطاها و پیام تکمیل بررسی کنید.",
+ "pt-locked-page": "این صفحه قفل شده‌است زیرا صفحه قابل ترجمه در حال حاضر منتقل شده‌است.",
+ "pt-deletepage-lang-title": "حذف صفحه ترجمه \"$1\".",
+ "pt-deletepage-full-title": "حذف صفحه ترجمه \"$1\".",
+ "pt-deletepage-invalid-title": "صفحه مشخص شده معتبر نیست.",
+ "pt-deletepage-invalid-text": "صفحه مشخص شده نه یک صفحه قابل ترجمه است نه یک صفحه ترجمه.",
+ "pt-deletepage-action-check": "فهرست صفحات برای حذف",
+ "pt-deletepage-action-perform": "انجام حذف",
+ "pt-deletepage-action-other": "تغییر هدف",
+ "pt-deletepage-lang-legend": "حذف صفحهٔ ترجمه",
+ "pt-deletepage-full-legend": "حذف صحفهٔ قابل ترجمه",
+ "pt-deletepage-any-legend": "حذف صفحهٔ قابل ترجمه یا صفحهٔ ترجمه",
+ "pt-deletepage-current": "نام صفحه:",
+ "pt-deletepage-reason": "دلیل:",
+ "pt-deletepage-subpages": "حذف تمام زیرصفحه‌ها",
+ "pt-deletepage-list-pages": "فهرست صفحه‌هایی که حذف می‌شوند",
+ "pt-deletepage-list-translation": "صفحه‌های ترجمه",
+ "pt-deletepage-list-section": "صفحه‌های واحد ترجمه",
+ "pt-deletepage-list-other": "زیرصفحه‌های دیگر",
+ "pt-deletepage-list-count": "در کل $1 {{PLURAL:$1|صفحه|صفحه}} حذف می‌شوند.",
+ "pt-deletepage-full-logreason": "قسمتی از صفحهٔ ترجمه \"$1\".",
+ "pt-deletepage-lang-logreason": "قسمتی از صفحهٔ ترجمه \"$1\".",
+ "pt-deletepage-started": "لطفاً [[Special:Log/pagetranslation|سیاهه صفحه ترجمه]] را برای خطاها و پیام تکمیل بررسی کنید.",
+ "pt-deletepage-intro": "این صفحه خاص به شما برای حذف تمام یک صفحه ترجمه ،یا یک صفحه ترجمه فردی در یک زبان اجازه می‌دهد.\nبه دلیل صفحات بسیار که در حال انتظار برای حذف خواهند بود، عمل حذف فوری نخواهد‌بود.\nهنگامی که صفحات منتقل می‌شوند, امکان ارتباط برقرار کردن با صفحات در سوال نیست.\nشکست‌ها در [[Special:Log/pagetranslation|سیاهه صفحه ترجمه]] وارد خواهند‌شد و آنها نیاز به تعمیر با دست دارند.",
+ "pm-import-button-label": "درون‌ریزی شود",
+ "pm-savepages-button-label": "ذخیره",
+ "pm-cancel-button-label": "انصراف",
+ "pm-langcode-placeholder": "کد زبان",
+ "pm-page-does-not-exist": "$1 وجود ندارد.",
+ "pm-pagetitle-invalid": "لطفا یک عنوان صفحه معتبر وارد کنید",
+ "pm-summary-import": "ترجمه با استفاده از [[Special:PageMigration|مهاجرت صفحه]] وارد شده‌است",
+ "pp-save-button-label": "ذخیره"
+}
diff --git a/MLEB/Translate/i18n/pagetranslation/fi.json b/MLEB/Translate/i18n/pagetranslation/fi.json
new file mode 100644
index 00000000..6668d76f
--- /dev/null
+++ b/MLEB/Translate/i18n/pagetranslation/fi.json
@@ -0,0 +1,195 @@
+{
+ "@metadata": {
+ "authors": [
+ "Beluga",
+ "Cimon Avaro",
+ "Crt",
+ "Lliehu",
+ "Nedergard",
+ "Nike",
+ "Olli",
+ "Silvonen",
+ "VezonThunder",
+ "ZeiP",
+ "Pxos"
+ ]
+ },
+ "pagetranslation": "Sivujen kääntäminen",
+ "right-pagetranslation": "Merkitä sivuja käännettäviksi",
+ "action-pagetranslation": "hallita käännettäviä sivuja",
+ "tpt-desc": "Laajennus sisältösivujen kääntämiseen.",
+ "tpt-section": "Käännösosio $1",
+ "tpt-section-new": "Uusi käännösosio.\nNimi: $1",
+ "tpt-section-deleted": "Käännösosio $1",
+ "tpt-template": "Sivun mallipohja",
+ "tpt-templatediff": "Sivun mallipohja on muuttunut.",
+ "tpt-diff-old": "Aikaisempi teksti",
+ "tpt-diff-new": "Uusi teksti",
+ "tpt-submit": "Merkitse tämä versio käännettäväksi",
+ "tpt-sections-oldnew": "Uudet ja olemassa olevat käännösosiot",
+ "tpt-sections-deleted": "Poistetut käännösosiot",
+ "tpt-sections-template": "Käännössivun mallipohja",
+ "tpt-action-nofuzzy": "Älä merkitse käännöksiä vanhentuneiksi",
+ "tpt-badtitle": "Sivun nimi ($1) ei ole kelvollinen otsikko",
+ "tpt-nosuchpage": "Sivua $1 ei ole olemassa",
+ "tpt-oldrevision": "$2 ei ole uusin versio sivusta [[:$1]].\nAinoastaan uusin versio voidaan merkitä käännettäviksi.",
+ "tpt-notsuitable": "Sivu $1 ei sovellu käännettäväksi.\nVarmista, että sivu sisältää &lt;translate>-merkinnät ja että siinä ei ole ole syntaksivirheitä.",
+ "tpt-saveok": "Sivu [[:$1]] on merkitty käännettäväksi ja se sisältää $2 {{PLURAL:$2|käännösosion|käännösosiota}}.\nSivu voidaan nyt <span class=\"plainlinks\">[$3 kääntää]</span>.",
+ "tpt-offer-notify": "Voit <span class=\"plainlinks\">[$1 lähettää ilmoituksen kääntäjille]</span> tästä sivusta.",
+ "tpt-badsect": "”$1” ei ole kelpo nimi käännösosiolle $2.",
+ "tpt-showpage-intro": "Alempana listattu uusia, olemassa olevia ja poistettuja osioita.\nEnnen kuin merkitset tämän version käännettäväksi, tarkista että muutokset osioihin ovat mahdollisimman vähäisiä, jotta kääntäjille ei aiheudu tarpeetonta työtä.",
+ "tpt-mark-summary": "Tämä versio merkittiin käännettäväksi",
+ "tpt-mark-nochanges": "Tämän version ja edellisen käännettäväksi merkitän version välillä ei ole eroa.",
+ "tpt-edit-failed": "Sivun päivittäminen epäonnistui: $1",
+ "tpt-duplicate": "Käännösosion nimeä $1 on käytetty useammin kuin kerran.",
+ "tpt-already-marked": "Viimeisin versio tästä sivusta on jo merkitty käännettäväksi.",
+ "tpt-unmarked": "Sivu $1 ei ole enää käännettävänä.",
+ "tpt-list-nopages": "Yhtään sivua ei ole merkitty käännettäväksi eikä yhtään sivua ole valmiina käännettäväksi merkitsemistä varten.",
+ "tpt-new-pages-title": "Käännettäväksi ehdotetut sivut",
+ "tpt-old-pages-title": "Käännettävät sivut",
+ "tpt-other-pages-title": "Rikkoutuneet sivut",
+ "tpt-discouraged-pages-title": "Sivut, joita ei enää suositella käännettäväksi",
+ "tpt-new-pages": "{{PLURAL:$1|Tämä sivu sisältää|Nämä sivut sisältävät}} tekstiä, joka on valmis merkittäväksi kääntämistä varten,\nmutta mikään versio {{PLURAL:$1|tästä sivusta|näistä sivuista}} ei ole tällä hetkellä merkitty käännettäväksi.",
+ "tpt-old-pages": "Jokin versio {{PLURAL:$1|tästä sivusta on|näistä sivuista on}} merkitty käännettäväksi.",
+ "tpt-other-pages": "Vanha versio {{PLURAL:$1|tästä sivusta|näistä sivuista}} on merkitty käännettäväksi,\nmutta viimeisintä versiota ei voi merkitä käännettäväksi.",
+ "tpt-discouraged-pages": "{{PLURAL:$1|Tätä sivua|Näitä sivuja}} ei enää suositella käännettävän.",
+ "tpt-select-prioritylangs": "Pilkuin erotettu lista ensisijaisista kielikoodeista:",
+ "tpt-select-prioritylangs-force": "Estä kääntäminen muille kuin ensisijaisille kielille",
+ "tpt-select-prioritylangs-reason": "Syy:",
+ "tpt-sections-prioritylangs": "Ensisijaiset kielet",
+ "tpt-rev-mark": "merkitse käännettäväksi",
+ "tpt-rev-unmark": "poista käännettävistä sivuista",
+ "tpt-rev-discourage": "vältä uusia käännöksiä",
+ "tpt-rev-encourage": "palauta",
+ "tpt-rev-mark-tooltip": "Merkitse tämän sivun viimeisin versio käännettäväksi.",
+ "tpt-rev-unmark-tooltip": "Poista tämän sivun käännösominaisuus.",
+ "tpt-rev-discourage-tooltip": "Piilota sivu käännösjärjestelmästä, jotta uusia käännöksiä ei enää tehtäisi.",
+ "tpt-rev-encourage-tooltip": "Palauta tämä sivu käännösjärjestelmään.",
+ "translate-tag-translate-link-desc": "Käännä tämä sivu",
+ "translate-tag-markthis": "Merkitse tämä sivu käännettäväksi",
+ "translate-tag-markthisagain": "Tähän sivuun on tehty <span class=\"plainlinks\">[$1 muutoksia]</span> sen jälkeen kun se viimeksi <span class=\"plainlinks\">[$2 merkittiin käännettäväksi]</span>.",
+ "translate-tag-hasnew": "Tämä sivu sisältää <span class=\"plainlinks\">[$1 muutoksia],</span> joita ei ole merkitty käännettäväksi.",
+ "tpt-translation-intro": "Tämä on <span class=\"plainlinks\">[$1 käännetty versio]</span> sivusta [[$2]], ja käännös on $3 % valmis.",
+ "tpt-languages-legend": "Muut kielet:",
+ "tpt-languages-zero": "Aloita käännös tälle kielelle",
+ "tpt-languages-nonzero": "$1 ($2 % käännetty)",
+ "tpt-tab-translate": "Käännä",
+ "tpt-target-page": "Tätä sivua ei voi muokata tavalliseen tapaan.\nTämä sivu on käännös sivusta [[$1]] ja käännöstä voi päivittää käyttämällä [$2 käännöstyökalua].",
+ "tpt-unknown-page": "Tämä nimiavaruus on varattu sisältösivujen käännöksille.\nSivu, jota yrität muokata, ei näytä vastaavan mitään sivua, joka on merkitty käännettäväksi.",
+ "tpt-translation-restricted": "Käännösylläpitäjä on estänyt tämän sivun kääntämisen tälle kielelle.\n\nSyy: $1",
+ "tpt-discouraged-language-force-header": "Tätä sivua ei voi kääntää kielelle $1.",
+ "tpt-discouraged-language-force-content": "Käännösylläpitäjä on päättänyt, että tämä sivu voidaan kääntää vain kielille $1.",
+ "tpt-discouraged-language-header": "Tämän sivun ensisijainen käännöskieli ei ole $1.",
+ "tpt-discouraged-language-content": "Käännösylläpitäjä on päättänyt, että tämä sivu tulee ensisijaisesti kääntää kielille $1.",
+ "tpt-discouraged-language-force": "<strong>Tätä sivua ei voi kääntää kielelle $2.</strong>\n\nKäännösylläpitäjä on päättänyt, että tämän sivun voi kääntää vain kielille $3.",
+ "tpt-discouraged-language": "<strong>Tämän sivun ensijainen käännöskieli ei ole $2.</strong>\n\nKäännösylläpitäjä on päättänyt, että tämä sivu tulee ensisijaisesti kääntää kielille $3.",
+ "tpt-discouraged-language-reason": "Syy: $1",
+ "tpt-priority-languages": "Käännösylläpitäjä on asettanut tämän ryhmän ensisijaisiksi käännöskieliksi $1.",
+ "tpt-render-summary": "Päivitetty vastaamaan uutta versiota lähdesivusta",
+ "tpt-download-page": "Sivun vienti käännösten kera",
+ "aggregategroups": "Kokoelmaryhmät",
+ "tpt-aggregategroup-add": "Lisää",
+ "tpt-aggregategroup-save": "Tallenna",
+ "tpt-aggregategroup-add-new": "Lisää uusi kokoelmaryhmä",
+ "tpt-aggregategroup-new-name": "Nimi",
+ "tpt-aggregategroup-new-description": "Kuvaus (vapaaehtoinen):",
+ "tpt-aggregategroup-remove-confirm": "Haluatko varmasti poistaa tämän kokoelmaryhmän?",
+ "tpt-aggregategroup-invalid-group": "Ryhmää ei ole",
+ "tpt-aggregategroup-edit-name": "Nimi:",
+ "tpt-aggregategroup-edit-description": "Kuvaus:",
+ "tpt-aggregategroup-update": "Tallenna",
+ "tpt-aggregategroup-update-cancel": "Peru",
+ "tpt-invalid-group": "Virheellinen ryhmä",
+ "pt-parse-open": "Sulkematon &lt;translate>-tägi.\nKäännöspohja: <pre>$1</pre>",
+ "pt-parse-close": "Avaamaton &lt;/translate>-tägi.\nKäännöspohja: <pre>$1</pre>",
+ "pt-parse-nested": "Sisäkkäiset &lt;translate>-tägit eivät ole sallittuja.\nKäännettävä teksti: <pre>$1</pre>",
+ "pt-shake-multiple": "Enemmän kuin yksi käännösosiotunniste käännösosiolla.\nKäännösosion teksti: <pre>$1</pre>",
+ "pt-shake-position": "Käännösosiotunniste on odottamattomassa paikassa.\nKäännösosion teksti: <pre>$1</pre>",
+ "pt-shake-empty": "Käännösosio $1 sisältää vain tunnisteen.",
+ "log-description-pagetranslation": "Tämä loki sisältää sivunkäännösominaisuuteen liittyviä tapahtumia.",
+ "log-name-pagetranslation": "Sivujen käännösten loki",
+ "logentry-pagetranslation-mark": "$1 {{GENDER:$2|merkitsi}} sivun $3 käännettäväksi",
+ "logentry-pagetranslation-unmark": "$1 {{GENDER:$2|poisti}} sivun $3 käännösjärjestelmästä",
+ "logentry-pagetranslation-moveok": "$1 {{GENDER:$2|sai}} valmiiksi käännettävän sivun $3 siirtämisen uudelle nimelle $4",
+ "logentry-pagetranslation-movenok": "$1 {{GENDER:$2|epäonnistui}} käännettävän sivun $3 siirtämisessä uudelle nimelle $4",
+ "logentry-pagetranslation-deletefok": "$1 {{GENDER:$2|sai}} valmiiksi käännettävän sivun $3 poistamisen",
+ "logentry-pagetranslation-deletefnok": "$1 {{GENDER:$2|epäonnistui}} käännettävän sivuun $4 liittyvän sivun $3 poistamisessa",
+ "logentry-pagetranslation-deletelok": "$1 {{GENDER:$2|sai}} valmiiksi käännössivun $3 poistamisen",
+ "logentry-pagetranslation-deletelnok": "$1 {{GENDER:$2|epäonnistui}} käännössivuun $4 liittyvän sivun $3 poistamisessa",
+ "logentry-pagetranslation-encourage": "$1 {{GENDER:$2|kumosi}} sivun $3 käännösrajoituksen",
+ "logentry-pagetranslation-discourage": "$1 {{GENDER:$2|rajoitti}} sivun $3 kääntämistä",
+ "pt-movepage-title": "Käännettävän sivun $1 siirtäminen",
+ "pt-movepage-blockers": "Käännettävää sivua ei voi siirtää uudelle nimelle {{PLURAL:$1|seuraavasta syystä|seuraavista syistä}}:",
+ "pt-movepage-block-base-exists": "Kohdesivu [[:$1]] on olemassa.",
+ "pt-movepage-block-base-invalid": "Kohdesivun nimi ei ole kelvollinen.",
+ "pt-movepage-block-tp-exists": "Käännössivu [[:$2]] on olemassa.",
+ "pt-movepage-block-tp-invalid": "Käännössivun [[:$1]] uusi nimi ei ole kelvollinen (liian pitkä?)",
+ "pt-movepage-block-section-exists": "Käännösosiosivu [[:$2]] on olemassa.",
+ "pt-movepage-block-section-invalid": "Käännösosiosivun [[:$1]] uusi nimi ei ole kelvollinen (liian pitkä?)",
+ "pt-movepage-block-subpage-exists": "Alasivu [[:$2]] on olemassa.",
+ "pt-movepage-block-subpage-invalid": "Alasivun [[:$1]] uusi nimi ei ole kelvollinen (liian pitkä?)",
+ "pt-movepage-list-pages": "Lista siirrettävistä sivuista",
+ "pt-movepage-list-translation": "{{PLURAL:$1|Käännössivu|Käännössivut}}",
+ "pt-movepage-list-section": "{{PLURAL:$1|Käännösosiosivut}}",
+ "pt-movepage-list-other": "{{PLURAL:$1|Muu alasivu|Muut alasivut}}",
+ "pt-movepage-list-count": "Yhteensä $1 {{PLURAL:$1|siirrettävä sivu|siirrettävää sivua}}.",
+ "pt-movepage-legend": "Siirrä käännettävä sivu",
+ "pt-movepage-current": "Nykyinen nimi",
+ "pt-movepage-new": "Uusi nimi",
+ "pt-movepage-reason": "Syy:",
+ "pt-movepage-subpages": "Siirrä kaikki alasivut",
+ "pt-movepage-action-check": "Tarkasta, onko sivun siirtäminen mahdollista",
+ "pt-movepage-action-perform": "Tee siirto",
+ "pt-movepage-action-other": "Vaihda kohde",
+ "pt-movepage-intro": "Tällä toimintosivulla voit siirtää käännettäväksi merkittyjä sivuja.\nSiirto ei tapahdu heti, koska useita sivuja täytyy siirtää.\nSivut ovat lukittuna siirron ajan.\nEpäonnistuneet siirrot tallennetaan [[Special:Log/pagetranslation|sivunkääntölokiin]] ja ne täytyy korjata käsin.",
+ "pt-movepage-logreason": "Osa käännettävää sivua $1.",
+ "pt-movepage-started": "Käännettävän sivun perussivu on siirretty.\nTarkista mahdolliset virheet ja valmistumisviestit [[Special:Log/pagetranslation|sivunkääntölokista]].",
+ "pt-locked-page": "Tämä sivu on lukittu, koska käännettävän sivun siirtäminen on kesken.",
+ "pt-deletepage-lang-title": "Poistetaan käännössivu $1.",
+ "pt-deletepage-full-title": "Poistetaan käännettävissä oleva sivu $1.",
+ "pt-deletepage-invalid-title": "Määritetty sivu ei kelpaa.",
+ "pt-deletepage-invalid-text": "Sivu ei ole käännettävissä oleva sivu tai sellaisen käännös.",
+ "pt-deletepage-action-check": "Luetteloi poistettavat sivut",
+ "pt-deletepage-action-perform": "Suorita poisto",
+ "pt-deletepage-action-other": "Vaihda kohdetta",
+ "pt-deletepage-lang-legend": "Poista käännössivu",
+ "pt-deletepage-full-legend": "Poista käännettävissä oleva sivu",
+ "pt-deletepage-any-legend": "Poista käännettävissä oleva sivu tai sellaisen käännös",
+ "pt-deletepage-current": "Sivun nimi",
+ "pt-deletepage-reason": "Syy:",
+ "pt-deletepage-subpages": "Poista kaikki alasivut",
+ "pt-deletepage-list-pages": "Poistettavien sivujen luettelo",
+ "pt-deletepage-list-translation": "Käännössivut",
+ "pt-deletepage-list-section": "Käännösosiosivut",
+ "pt-deletepage-list-other": "Muut alasivut",
+ "pt-deletepage-list-count": "Yhteensä $1 {{PLURAL:$1|poistettava sivu|poistettavaa sivua}}.",
+ "pt-deletepage-full-logreason": "Osa käännettävää sivua $1.",
+ "pt-deletepage-lang-logreason": "Osa käännössivua $1.",
+ "pt-deletepage-started": "Virheet ja valmistusviesti löytyvät [[Special:Log/pagetranslation|sivunkääntölokista]].",
+ "pt-deletepage-intro": "Tämän toimintosivun avulla voit poistaa koko käännettävän sivun tai tietynkieliset käännökset.\nPoisto ei tapahdu välittömästi, sillä useita sivuja täytyy poistaa.\nVirheet merkitään [[Special:Log/pagetranslation|sivunkääntölokiin]] ja ne täytyy korjata käsin.",
+ "pagemigration": "Käännössivumigraatio",
+ "pagemigration-summary": "Anna käännössivun nimi ja palauta ennen Translaten käyttöönottoa tehtyjä käännöksiä.",
+ "pm-import-button-label": "Tuo",
+ "pm-savepages-button-label": "Tallenna",
+ "pm-cancel-button-label": "Peru",
+ "pm-pagename-placeholder": "Anna sivun nimi",
+ "pm-langcode-placeholder": "Kielikoodi",
+ "pm-page-does-not-exist": "Sivua $1 ei ole olemassa.",
+ "pm-old-translations-missing": "Sivulla $1 ei ole vanhoja käännöksiä.",
+ "pm-pagename-missing": "Anna sivun nimi.",
+ "pm-langcode-missing": "Anna kielikoodi.",
+ "pm-add-icon-hover-text": "Lisää yksikkö alle",
+ "pm-swap-icon-hover-text": "Vaihda paikkaa alla olevan yksikön kanssa",
+ "pm-delete-icon-hover-text": "Poista yksikkö",
+ "pm-pagetitle-invalid": "Anna kelvollinen sivun otsikko",
+ "tpt-translate-title": "Salli sivun otsikon käännös",
+ "pp-save-summary": "Valmisteli sivun kääntämistä varten.",
+ "pagepreparation": "Valmista sivu kääntämistä varten",
+ "pp-pagename-placeholder": "Anna sivun nimi",
+ "pp-prepare-button-label": "Valmistele",
+ "pp-save-button-label": "Tallenna",
+ "pp-diff-old-header": "Lähdeteksti",
+ "pp-diff-new-header": "Valmisteltu teksti",
+ "tpt-unlink-button": "poista käännettävistä sivuista",
+ "tpt-unlink-summary": "Poistettu käännettävistä sivuista"
+}
diff --git a/MLEB/Translate/i18n/pagetranslation/fo.json b/MLEB/Translate/i18n/pagetranslation/fo.json
new file mode 100644
index 00000000..3216ff46
--- /dev/null
+++ b/MLEB/Translate/i18n/pagetranslation/fo.json
@@ -0,0 +1,11 @@
+{
+ "@metadata": {
+ "authors": [
+ "EileenSanda"
+ ]
+ },
+ "tpt-diff-new": "Nýggjur tekstur",
+ "tpt-submit": "Merk hesa versjónina til týðing",
+ "tpt-nosuchpage": "Síðan $1 er ikki til",
+ "tpt-edit-failed": "Tað bar ikki til at dagføra síðuna: $1"
+}
diff --git a/MLEB/Translate/i18n/pagetranslation/fr.json b/MLEB/Translate/i18n/pagetranslation/fr.json
new file mode 100644
index 00000000..f4b14665
--- /dev/null
+++ b/MLEB/Translate/i18n/pagetranslation/fr.json
@@ -0,0 +1,215 @@
+{
+ "@metadata": {
+ "authors": [
+ "Cquoi",
+ "Crochet.david",
+ "DavidL",
+ "Gomoko",
+ "Grondin",
+ "Houcinee1",
+ "IAlex",
+ "Linedwell",
+ "Peter17",
+ "Purodha",
+ "Sherbrooke",
+ "Tititou36",
+ "Urhixidur",
+ "Verdy p",
+ "Wyz",
+ "Y-M D",
+ "Zetud",
+ "Brunoperel"
+ ]
+ },
+ "pagetranslation": "Traduction de pages",
+ "right-pagetranslation": "Marquer des versions de pages pour être traduites",
+ "action-pagetranslation": "gérer les pages traduisibles",
+ "tpt-desc": "Extension pour traduire des pages de contenu",
+ "tpt-section": "Unité de traduction $1",
+ "tpt-section-new": "Nouvelle unité de traduction. Nom : $1",
+ "tpt-section-deleted": "Unité de traduction $1",
+ "tpt-template": "Modèle de page",
+ "tpt-templatediff": "Le modèle de page a changé.",
+ "tpt-diff-old": "Texte précédent",
+ "tpt-diff-new": "Nouveau texte",
+ "tpt-submit": "Marquer cette version pour être traduite",
+ "tpt-sections-oldnew": "Unités de traduction nouvelles et existantes",
+ "tpt-sections-deleted": "Unités de traduction supprimées",
+ "tpt-sections-template": "Modèle de page de traduction",
+ "tpt-action-nofuzzy": "Ne pas invalider les traductions",
+ "tpt-badtitle": "Le nom de page donné ($1) n’est pas un titre valide",
+ "tpt-nosuchpage": "La page $1 n'existe pas",
+ "tpt-oldrevision": "$2 n’est pas la dernière version de la page [[:$1]].\nSeule la dernière version de la page peut être marquée pour être traduite.",
+ "tpt-notsuitable": "La page $1 n’est pas susceptible d’être traduite.\nAssurez-vous qu’elle contienne la balise <nowiki><translate></nowiki> et qu’elle ait une syntaxe correcte.",
+ "tpt-saveok": "La page [[:$1]] a été marquée pour être traduite avec $2 {{PLURAL:$2|unité|unités}} de traduction.\nLa page peut être <span class=\"plainlinks\">[$3 traduite]</span> dès maintenant.",
+ "tpt-offer-notify": "Vous pouvez <span class=\"plainlinks\">[$1 notifier les traducteurs]</span> au sujet de cette page.",
+ "tpt-badsect": "« $1 » n’est pas un nom valide pour une unité de traduction $2.",
+ "tpt-showpage-intro": "Ci-dessous, les nouvelles traductions, celles existantes et supprimées.\nAvant de marquer ces versions pour être traduites, vérifier que les modifications aux sections sont minimisées pour éviter du travail inutile aux traducteurs.",
+ "tpt-mark-summary": "Cette version a été marquée pour être traduite",
+ "tpt-mark-nochanges": "Il n’y a pas de différence entre cette révision et la dernière révision marquée.",
+ "tpt-edit-failed": "Impossible de mettre à jour la page $1",
+ "tpt-duplicate": "Le nom de l'unité traduction $1 est utilisé plus d'une fois.",
+ "tpt-already-marked": "La dernière version de cette page a déjà été marquée pour être traduite.",
+ "tpt-unmarked": "La page $1 n'est plus marquée pour être traduite.",
+ "tpt-list-nopages": "Aucune page n’a été marquée pour être traduite ni n’est prête à l’être.",
+ "tpt-new-pages-title": "Pages proposées à la traduction",
+ "tpt-old-pages-title": "Pages en cours de traduction",
+ "tpt-other-pages-title": "Pages erronées",
+ "tpt-discouraged-pages-title": "Pages découragées",
+ "tpt-new-pages": "{{PLURAL:$1|Cette page contient|Ces pages contiennent}} du texte avec des balises de traduction, mais aucune version de {{PLURAL:$1|cette page n’est marquée pour être traduite|ces pages ne sont marquées pour être traduites}}.",
+ "tpt-old-pages": "Des versions de {{PLURAL:$1|cette page|ces pages}} ont été marquées pour être traduites.",
+ "tpt-other-pages": "Une ancienne version de {{PLURAL:$1|la page suivante|chacune des pages suivantes}} a été marquée pour être traduite,\nmais {{PLURAL:$1|sa dernière version|leur dernière version respective}} ne peut pas être marquée ainsi :",
+ "tpt-discouraged-pages": "{{PLURAL:$1|Cette page a été découragée|Ces pages ont été découragées}} à être {{PLURAL:$1|traduite|traduites}} davantage.",
+ "tpt-select-prioritylangs": "Liste de codes de langue prioritaire séparés par des virgules:",
+ "tpt-select-prioritylangs-force": "Empêcher les traductions en des langues autres que les langues prioritaires",
+ "tpt-select-prioritylangs-reason": "Motif :",
+ "tpt-sections-prioritylangs": "Langues prioritaires",
+ "tpt-rev-mark": "marquer pour traduction",
+ "tpt-rev-unmark": "supprimer de la traduction",
+ "tpt-rev-discourage": "décourager",
+ "tpt-rev-encourage": "rétablir",
+ "tpt-rev-mark-tooltip": "Marquer la version la plus récente de cette page pour la traduction.",
+ "tpt-rev-unmark-tooltip": "Supprimer cette page de la traduction.",
+ "tpt-rev-discourage-tooltip": "Dissuader les futures traductions sur cette page.",
+ "tpt-rev-encourage-tooltip": "Rétablir cette page en traduction normale.",
+ "translate-tag-translate-link-desc": "Traduire cette page",
+ "translate-tag-markthis": "Marquer cette page pour être traduite",
+ "translate-tag-markthisagain": "Cette page a eu <span class=\"plainlinks\">[$1 des modifications]</span> depuis qu’elle a été dernièrement <span class=\"plainlinks\">[$2 marquée pour être traduite]</span>.",
+ "translate-tag-hasnew": "Cette page contient <span class=\"plainlinks\">[$1 des modifications]</span> qui ne sont pas marquées pour la traduction.",
+ "tpt-translation-intro": "Cette page est une <span class=\"plainlinks\">[$1 version traduite]</span> de la page [[$2]] et la traduction est complétée à $3 %.",
+ "tpt-languages-legend": "Autres langues :",
+ "tpt-languages-separator": "&nbsp;•&#32;",
+ "tpt-languages-zero": "Commencer la traduction pour cette langue",
+ "tpt-languages-nonzero": "$1 ($2% traduit)",
+ "tpt-tab-translate": "Traduire",
+ "tpt-target-page": "Cette page ne peut pas être mise à jour manuellement.\nElle est une version traduite de [[$1]] et la traduction peut être mise à jour en utilisant [$2 l’outil de traduction].",
+ "tpt-unknown-page": "Cet espace de noms est réservé pour la traduction de pages.\nLa page que vous essayez de modifier ne semble correspondre à aucune page marquée pour être traduite.",
+ "tpt-translation-restricted": "La traduction de cette page dans cette langue a été empêchée par un administrateur des traductions.\n\nMotif: $1",
+ "tpt-discouraged-language-force-header": "Cette page ne peut pas être traduite en $1.",
+ "tpt-discouraged-language-force-content": "Un administrateur de traduction a décidé que cette page ne pouvait être traduite qu’en $1.",
+ "tpt-discouraged-language-header": "Traduire en $1 n’est pas une priorité pour cette page.",
+ "tpt-discouraged-language-content": "Un administrateur de traduction a décidé de focaliser les efforts de traduction sur $1.",
+ "tpt-discouraged-language-force": "<strong>Cette page ne peut pas être traduite en $2.</strong>\n\nUn administrateur des traductions a décidé que cette page ne peut être traduite qu’en $3.",
+ "tpt-discouraged-language": "<strong>Traduire en $2 n’est pas une priorité pour cette page.</strong>\n\nUn administrateur des traductions a décidé de concentrer l’effort de traduction sur $3.",
+ "tpt-discouraged-language-reason": "Raison : $1",
+ "tpt-priority-languages": "Un administrateur de traduction a défini les langues prioritaire pour ce groupe : $1 .",
+ "tpt-render-summary": "Mise à jour pour être en accord avec la nouvelle version de la source de la page",
+ "tpt-download-page": "Exporter la page avec ses traductions",
+ "aggregategroups": "Groupes d'agrégation",
+ "tpt-aggregategroup-add": "Ajouter",
+ "tpt-aggregategroup-save": "Enregistrer",
+ "tpt-aggregategroup-add-new": "Ajouter un nouveau groupe d'agrégation",
+ "tpt-aggregategroup-new-name": "Nom:",
+ "tpt-aggregategroup-new-description": "Description (facultative):",
+ "tpt-aggregategroup-remove-confirm": "Êtes-vous sûr de vouloir supprimer ce groupe agrégé?",
+ "tpt-aggregategroup-invalid-group": "Le groupe n'existe pas",
+ "tpt-aggregategroup-edit-name": "Nom :",
+ "tpt-aggregategroup-edit-description": "Description :",
+ "tpt-aggregategroup-update": "Enregistrer",
+ "tpt-aggregategroup-update-cancel": "Annuler",
+ "tpt-invalid-group": "Groupe non valide",
+ "pt-parse-open": "Balise &lt;translate> asymétrique.\nModèle de traduction : <pre>$1</pre>",
+ "pt-parse-close": "Balise &lt;/translate> asymétrique.\nModèle de traduction : <pre>$1</pre>",
+ "pt-parse-nested": "Les sections &lt;translate> imbriquées ne sont pas autorisées.\nTexte de la balise : <pre>$1</pre>",
+ "pt-shake-multiple": "Marqueurs de section multiples pour une section.\nTexte de la section : <pre>$1</pre>",
+ "pt-shake-position": "Marqueurs de section à une position inattendue.\nTexte de la section : <pre>$1</pre>",
+ "pt-shake-empty": "Section vide pour le marqueur \"$1\".",
+ "log-description-pagetranslation": "Journal des actions liées au système de traduction de pages",
+ "log-name-pagetranslation": "Journal des traductions de pages",
+ "logentry-pagetranslation-mark": "$1 {{GENDER:$2|a marqué}} $3 à traduire",
+ "logentry-pagetranslation-unmark": "$1 {{GENDER:$2|a supprimé}} $3 des traductions à faire",
+ "logentry-pagetranslation-moveok": "$1 {{GENDER:$2|a terminé}} le renommage d’une page traduisible $3 en $4",
+ "logentry-pagetranslation-movenok": "$1 {{GENDER:$2|a rencontré}} un problème en déplaçant la page $3 vers $4",
+ "logentry-pagetranslation-deletefok": "$1 {{GENDER:$2|a terminé}} la suppression d’une page traduisible $3",
+ "logentry-pagetranslation-deletefnok": "$1 {{GENDER:$2|n’a pas réussi}} à supprimer $3 qui appartient à la page traduisible $4",
+ "logentry-pagetranslation-deletelok": "$1 {{GENDER:$2|a terminé}} la suppression d’une page traduisible $3",
+ "logentry-pagetranslation-deletelnok": "$1 {{GENDER:$2|n’a pas réussi}} à supprimer $3 qui appartient à la page traduisible $4",
+ "logentry-pagetranslation-encourage": "$1 {{GENDER:$2|a encouragé}} la traduction de $3",
+ "logentry-pagetranslation-discourage": "$1 {{GENDER:$2|a découragé}} la traduction de $3",
+ "logentry-pagetranslation-prioritylanguages-unset": "$1 {{GENDER:$2|a supprimé}} les langues prioritaires pour la page traduisible $3",
+ "logentry-pagetranslation-prioritylanguages": "$1 {{GENDER:$2|a fixé}} les langues prioritaires pour la page traduisible $3 à $5",
+ "logentry-pagetranslation-prioritylanguages-force": "$1 {{GENDER:$2|a limité}} les langues pour la page traduisible $3 à $5",
+ "logentry-pagetranslation-associate": "$1 {{GENDER:$2|a ajouté}} la page traduisible $3 au groupe agrégé $4",
+ "logentry-pagetranslation-dissociate": "$1 {{GENDER:$2|a supprimé}} la page traduisible $3 du groupe agrégé $4",
+ "pt-movepage-title": "Déplacer la page à traduire $1",
+ "pt-movepage-blockers": "La page à traduire ne peut pas être renommée à cause {{PLURAL:$1|de l’erreur suivante|des erreurs suivantes}} :",
+ "pt-movepage-block-base-exists": "La page traduisible cible \"[[:$1]]\" existe.",
+ "pt-movepage-block-base-invalid": "Le nom de la page traduisible cible n'est pas un titre correct.",
+ "pt-movepage-block-tp-exists": "La page de traduction cible [[:$2]] existe.",
+ "pt-movepage-block-tp-invalid": "Le titre de la page de traduction cible pour [[:$1]] serait incorrect (trop long ?).",
+ "pt-movepage-block-section-exists": "La page cible « [[:$2]] » pour la section existe.",
+ "pt-movepage-block-section-invalid": "Le titre de section de page cible pour « [[:$1]] » serait incorrect (trop long ?).",
+ "pt-movepage-block-subpage-exists": "La sous-page cible [[:$2]] existe.",
+ "pt-movepage-block-subpage-invalid": "Le titre de la sous-page cible pour [[:$1]] serait incorrect (trop long ?).",
+ "pt-movepage-list-pages": "Liste des pages à déplacer",
+ "pt-movepage-list-translation": "{{PLURAL:$1|page|pages}} de traduction",
+ "pt-movepage-list-section": "{{PLURAL:$1|page|pages}} d'unités de traduction",
+ "pt-movepage-list-other": "{{PLURAL:$1|Autre sous-page|Autres sous-pages}}",
+ "pt-movepage-list-count": "$1 {{PLURAL:$1|page|pages}} à déplacer au total.",
+ "pt-movepage-legend": "Déplacer la page à traduire",
+ "pt-movepage-current": "Nom actuel :",
+ "pt-movepage-new": "Nouveau nom :",
+ "pt-movepage-reason": "Motif :",
+ "pt-movepage-subpages": "Renommer toutes les sous-pages",
+ "pt-movepage-action-check": "Vérifier si le renommage est possible",
+ "pt-movepage-action-perform": "Renommer",
+ "pt-movepage-action-other": "Changer la cible",
+ "pt-movepage-intro": "Cette page spéciale vous permet de renommer des pages qui sont marquées pour être traduites.\nL’action de renommage ne sera pas immédiate, car de nombreuses pages devront être déplacées.\nPendant que les pages sont déplacées, il n'est pas possible d’interagir avec elles.\nLes échecs seront enregistrés dans le [[Special:Log/pagetranslation|journal de traduction]] et devront être corrigés manuellement.",
+ "pt-movepage-logreason": "Extrait de la page à traduire $1.",
+ "pt-movepage-started": "La page de base est à présent renommée.\nVeuillez vérifier le [[Special:Log/pagetranslation|journal des traductions]] pour repérer d’éventuelles erreurs et lire le message de complétion.",
+ "pt-locked-page": "Cette page est verrouillée parce que la page à traduire est en cours de renommage.",
+ "pt-deletepage-lang-title": "Suppression de la page de traduction $1.",
+ "pt-deletepage-full-title": "Suppression de la page à traduire $1.",
+ "pt-deletepage-invalid-title": "La page spécifiée n'est pas valide.",
+ "pt-deletepage-invalid-text": "La page spécifiée n'est pas une page à traduire, ni une traduction de celle-ci.",
+ "pt-deletepage-action-check": "Lister les pages à supprimer",
+ "pt-deletepage-action-perform": "Faire la suppression",
+ "pt-deletepage-action-other": "Changer la cible",
+ "pt-deletepage-lang-legend": "Supprimer la page traduite",
+ "pt-deletepage-full-legend": "Supprimer la page à traduire",
+ "pt-deletepage-any-legend": "Supprimer la page à traduire ou la page de traduction",
+ "pt-deletepage-current": "Nom de la page :",
+ "pt-deletepage-reason": "Motif :",
+ "pt-deletepage-subpages": "Supprimer tous les sous-pages",
+ "pt-deletepage-list-pages": "Liste des pages à supprimer",
+ "pt-deletepage-list-translation": "Pages de traduction",
+ "pt-deletepage-list-section": "Pages d'unités de traduction",
+ "pt-deletepage-list-other": "Autres sous-pages",
+ "pt-deletepage-list-count": "Au total, $1 {{PLURAL:$1|page|pages}} à supprimer.",
+ "pt-deletepage-full-logreason": "Partie de la page à traduire $1.",
+ "pt-deletepage-lang-logreason": "Partie de la page de traduction $1.",
+ "pt-deletepage-started": "Veuillez vérifier le [[Special:Log/pagetranslation|journal des traductions]] pour les erreurs et le message de la fin.",
+ "pt-deletepage-intro": "Cette page spéciale vous permet de supprimer une page traduisible entièrement, ou une page traduisible individuelle dans une langue.\nL'action de suppression n'est pas instantanée, car plusieurs pages dépendantes de celle-ci seront aussi supprimées.\nLes échecs seront inscrits dans le [[Special:Log/pagetranslation|journal des traductions]] et ils doivent être corrigés à la main.",
+ "pagemigration": "Migration de page de traduction",
+ "pagemigration-summary": "Spécifier une page de traduction et rétablir toute traduction faite avant que le système de traduction soit activé sur cette page.",
+ "pm-import-button-label": "Importer",
+ "pm-savepages-button-label": "Enregistrer",
+ "pm-cancel-button-label": "Annuler",
+ "pm-pagename-placeholder": "Entrer le nom de la page",
+ "pm-langcode-placeholder": "Code de langue",
+ "pm-page-does-not-exist": "$1 n’existe pas",
+ "pm-old-translations-missing": "$1 ne contient pas d’anciennes traductions",
+ "pm-extra-units-warning": "Des unités supplémentaires peuvent être présentes. Veuillez faire correspondre correctement les unités source et de traduction",
+ "pm-pagename-missing": "Veuillez saisir le nom de la page",
+ "pm-langcode-missing": "Veuillez saisir le code de langue",
+ "pm-add-icon-hover-text": "Ajouter une unité ci-dessous",
+ "pm-swap-icon-hover-text": "Échanger avec l’unité ci-dessous",
+ "pm-delete-icon-hover-text": "Supprimer l’unité",
+ "pm-pagetitle-invalid": "Veuillez entrer un titre de page valide",
+ "pm-summary-import": "Traduction importée en utilisant [[Special:PageMigration|la migration de page]]",
+ "tpt-translate-title": "Autoriser la traduction du titre de la page",
+ "pp-save-summary": "Page préparée pour la traduction",
+ "pagepreparation": "Préparer la page pour sa traduction",
+ "pp-pagename-placeholder": "Entrer le nom de la page",
+ "pp-prepare-button-label": "Préparer",
+ "pp-save-button-label": "Enregistrer",
+ "pp-save-message": "La page a été enregistrée. Vous pouvez la [$1 modifier].",
+ "pp-prepare-message": "La page a été préparée pour sa traduction. Consultez les différences ci-dessous. Cliquez sur le bouton « {{int:pp-save-button-label}} » si cela vous convient !",
+ "pp-already-prepared-message": "Il semble que la page ait déjà été préparée pour sa traduction. Il n’y a pas de modifications depuis la version précédente.",
+ "pp-pagename-missing": "Veuillez entrer le nom de la page.",
+ "pp-diff-old-header": "Texte source",
+ "pp-diff-new-header": "Texte préparé",
+ "tpt-unlink-confirm": "Veuillez confirmer que vous voulez vraiment supprimer cette page du système de traduction.\nLe sélecteur de langue et les noms des pages traduites cesseront de fonctionner.\nLes pages traduites deviendront modifiables.",
+ "tpt-unlink-button": "Supprimer de la traduction",
+ "tpt-unlink-summary": "Page supprimée de la traduction"
+}
diff --git a/MLEB/Translate/i18n/pagetranslation/frp.json b/MLEB/Translate/i18n/pagetranslation/frp.json
new file mode 100644
index 00000000..700bf70f
--- /dev/null
+++ b/MLEB/Translate/i18n/pagetranslation/frp.json
@@ -0,0 +1,115 @@
+{
+ "@metadata": {
+ "authors": [
+ "ChrisPtDe",
+ "Purodha"
+ ]
+ },
+ "pagetranslation": "Traduccion de pâges",
+ "right-pagetranslation": "Marcar des vèrsions de pâges por étre traduites",
+ "tpt-desc": "Èxtension por traduire des pâges de contegnu",
+ "tpt-section": "Unitât de traduccion $1",
+ "tpt-section-new": "Novèla unitât de traduccion.\nNom : $1",
+ "tpt-section-deleted": "Unitât de traduccion $1",
+ "tpt-template": "Modèlo de pâge",
+ "tpt-templatediff": "Lo modèlo de pâge at changiê.",
+ "tpt-diff-old": "Tèxto devant",
+ "tpt-diff-new": "Tèxto novél",
+ "tpt-submit": "Marcar ceta vèrsion por étre traduita",
+ "tpt-sections-oldnew": "Unitâts de traduccion novèles et ègzistentes",
+ "tpt-sections-deleted": "Unitâts de traduccion suprimâyes",
+ "tpt-sections-template": "Modèlo de pâge de traduccion",
+ "tpt-action-nofuzzy": "Pas envalidar les traduccions",
+ "tpt-badtitle": "Lo nom de pâge balyê ($1) est pas un titro valido",
+ "tpt-nosuchpage": "La pâge $1 ègziste pas",
+ "tpt-oldrevision": "$2 est pas la dèrriére vèrsion de la pâge [[:$1]].\nSolament la dèrriére vèrsion de la pâge pôt étre marcâye por étre traduita.",
+ "tpt-notsuitable": "La pâge $1 sè préte pas por étre traduita.\nAssurâd-vos que contegne la balisa <nowiki><translate></nowiki> et pués qu’èye na sintaxa justa.",
+ "tpt-saveok": "La pâge [[:$1]] est étâye marcâye por étre traduita avouéc $2 unitât{{PLURAL:$2||s}} de traduccion.\nLa pâge pôt étre <span class=\"plainlinks\">[$3 traduita]</span> dês ora.",
+ "tpt-badsect": "« $1 » est pas un nom valido por na unitât de traduccion $2.",
+ "tpt-showpage-intro": "Ce-desot les novèles traduccions, celes ègzistentes et pués celes suprimâyes.\nDevant que marcar ceta vèrsion por étre traduita, controlâd que los changements a les sèccions sont petiôts por èvitar de travâly inutilo ux traductors.",
+ "tpt-mark-summary": "Ceta vèrsion est étâye marcâye por étre traduita",
+ "tpt-edit-failed": "Empossiblo de betar a jorn la pâge : $1",
+ "tpt-already-marked": "La dèrriére vèrsion de ceta pâge est ja étâye marcâye por étre traduita.",
+ "tpt-unmarked": "La pâge $1 est pas més marcâye por étre traduita.",
+ "tpt-list-nopages": "Niona pâge est étâye marcâye por étre traduita ou ben est prèsta por l’étre.",
+ "tpt-new-pages-title": "Pâges proposâyes por étre traduites",
+ "tpt-old-pages-title": "Pâges en cors de traduccion",
+ "tpt-other-pages-title": "Pâges câsses",
+ "tpt-discouraged-pages-title": "Pâges dècoragiêyes",
+ "tpt-new-pages": "{{PLURAL:$1|Ceta pâge contint|Cetes pâges contegnont}} de tèxto avouéc des balises de traduccion,\nmas niona vèrsion de {{PLURAL:$1|ceta pâge est marcâye por étre traduita|cetes pâges sont marcâyes por étre traduites}}.",
+ "tpt-old-pages": "Des vèrsions de {{PLURAL:$1|ceta pâge|cetes pâges}} sont étâyes marcâyes por étre traduites.",
+ "tpt-other-pages": "{{PLURAL:$1|Na vielye vèrsion de ceta pâge est étâye marcâye por étre traduita|Des vielyes vèrsions de cetes pâges sont étâyes marcâyes por étre traduites}},\nmas {{PLURAL:$1|la dèrriére vèrsion pôt pas étre marcâye|les dèrriéres vèrsions pôvont pas étre marcâyes}} d’ense.",
+ "tpt-select-prioritylangs-reason": "Rêson :",
+ "tpt-rev-mark": "marcar por étre traduita",
+ "tpt-rev-unmark": "enlevar de la traduccion",
+ "tpt-rev-discourage": "dècoragiér",
+ "tpt-rev-encourage": "refâre",
+ "translate-tag-translate-link-desc": "Traduire ceta pâge",
+ "translate-tag-markthis": "Marcar ceta pâge por étre traduita",
+ "translate-tag-markthisagain": "Ceta pâge at avu des <span class=\"plainlinks\">[$1 changements]</span> dês qu’est étâye <span class=\"plainlinks\">[$2 marcâye dèrriérement por étre traduita]</span>.",
+ "translate-tag-hasnew": "Ceta pâge contint des <span class=\"plainlinks\">[$1 changements]</span> que sont pas marcâs por la traduccion.",
+ "tpt-translation-intro": "Ceta pâge est na <span class=\"plainlinks\">[$1 traduccion]</span> de la pâge [[$2]] et la traduccion est complètâye a $3 % et pués a jorn.",
+ "tpt-languages-legend": "Ôtres lengoues :",
+ "tpt-target-page": "Ceta pâge pôt pas étre betâye a jorn a la man.\nEl est na traduccion de la pâge [[$1]] et la traduccion pôt étre betâye a jorn en empleyent l’[$2 outil de traduccion].",
+ "tpt-unknown-page": "Cet’èspâço de noms est resèrvâ por la traduccion de pâges de contegnu.\nLa pâge que vos tâchiéd de changiér semble corrèspondre a gins de pâge marcâye por étre traduita.",
+ "tpt-discouraged-language-reason": "Rêson : $1",
+ "tpt-render-summary": "Misa a jorn por étre en acôrd avouéc la novèla vèrsion de la pâge sôrsa",
+ "tpt-download-page": "Èxportar la pâge avouéc les sines traduccions",
+ "tpt-aggregategroup-add": "Apondre",
+ "tpt-aggregategroup-save": "Encartar",
+ "tpt-aggregategroup-new-name": "Nom :",
+ "tpt-aggregategroup-new-description": "Dèscripcion (u chouèx) :",
+ "tpt-aggregategroup-invalid-group": "Lo groupo ègziste pas",
+ "pt-parse-open": "Balisa &lt;translate> asimètrica.\nModèlo de traduccion : <pre>$1</pre>",
+ "pt-parse-close": "Balisa &lt;/translate> asimètrica.\nModèlo de traduccion : <pre>$1</pre>",
+ "pt-parse-nested": "Les sèccions &lt;translate> embrecâyes sont pas ôtorisâyes.\nTèxto de la balisa : <pre>$1</pre>",
+ "pt-shake-multiple": "Un mouél de marcors de sèccion por yona sèccion.\nTèxto de la sèccion : <pre>$1</pre>",
+ "pt-shake-position": "Marcors de sèccion a na posicion emprèvua.\nTèxto de la sèccion : <pre>$1</pre>",
+ "pt-shake-empty": "Sèccion voueda por lo marcor « $1 ».",
+ "log-description-pagetranslation": "Jornal de les accions liyêyes u sistèmo de traduccion de pâges",
+ "log-name-pagetranslation": "Jornal de les traduccions de pâges",
+ "pt-movepage-title": "Dèplaciér la pâge traduisibla « $1 »",
+ "pt-movepage-blockers": "La pâge traduisibla pôt pas étre renomâye a côsa de {{PLURAL:$1|ceta fôta|cetes fôtes}} :",
+ "pt-movepage-block-base-exists": "La pâge de bâsa ciba « [[:$1]] » ègziste.",
+ "pt-movepage-block-base-invalid": "La pâge de bâsa ciba at un titro fôx.",
+ "pt-movepage-block-tp-exists": "La pâge de traduccion ciba « [[:$2]] » ègziste.",
+ "pt-movepage-block-tp-invalid": "Lo titro de la pâge de traduccion ciba por « [[:$1]] » serêt fôx (trop long ?).",
+ "pt-movepage-block-section-exists": "La pâge de sèccion ciba « [[:$2]] » ègziste.",
+ "pt-movepage-block-section-invalid": "Lo titro de la pâge de sèccion ciba por « [[:$1]] » serêt fôx (trop long ?).",
+ "pt-movepage-block-subpage-exists": "La sot-pâge ciba « [[:$2]] » ègziste.",
+ "pt-movepage-block-subpage-invalid": "Lo titro de la sot-pâge ciba por « [[:$1]] » serêt fôx (trop long ?).",
+ "pt-movepage-list-pages": "Lista de les pâges a dèplaciér",
+ "pt-movepage-list-translation": "Pâges de traduccion",
+ "pt-movepage-list-section": "Pâges de sèccion",
+ "pt-movepage-list-other": "Ôtres sot-pâges",
+ "pt-movepage-list-count": "En tot $1 pâge{{PLURAL:$1||s}} a dèplaciér.",
+ "pt-movepage-legend": "Dèplaciér la pâge traduisibla",
+ "pt-movepage-current": "Nom d’ora :",
+ "pt-movepage-new": "Novél nom :",
+ "pt-movepage-reason": "Rêson :",
+ "pt-movepage-subpages": "Renomar totes les sot-pâges",
+ "pt-movepage-action-check": "Controlar se lo changement de nom est possiblo",
+ "pt-movepage-action-perform": "Renomar",
+ "pt-movepage-action-other": "Changiér la ciba",
+ "pt-movepage-logreason": "Partia de la pâge traduisibla « $1 ».",
+ "pt-movepage-started": "Ora la pâge de bâsa est renomâye.\nVolyéd controlar lo [[Special:Log/pagetranslation|jornal de les traduccions de pâges]] por repèrar des fôtes et por liére lo mèssâjo d’avance.",
+ "pt-locked-page": "Ceta pâge est vèrrolyêye perce que la pâge traduisibla est aprés étre renomâye.",
+ "pt-deletepage-lang-title": "Suprèssion de la pâge de traduccion « $1 ».",
+ "pt-deletepage-full-title": "Suprèssion de la pâge traduisibla « $1 ».",
+ "pt-deletepage-invalid-title": "La pâge spècifiâye est pas valida.",
+ "pt-deletepage-action-check": "Listar les pâges a suprimar",
+ "pt-deletepage-action-perform": "Fâre la suprèssion",
+ "pt-deletepage-action-other": "Changiér la ciba",
+ "pt-deletepage-lang-legend": "Suprimar la pâge de traduccion",
+ "pt-deletepage-full-legend": "Suprimar la pâge traduisibla",
+ "pt-deletepage-current": "Nom de la pâge :",
+ "pt-deletepage-reason": "Rêson :",
+ "pt-deletepage-subpages": "Suprimar totes les sot-pâges",
+ "pt-deletepage-list-pages": "Lista de les pâges a suprimar",
+ "pt-deletepage-list-translation": "Pâges de traduccion",
+ "pt-deletepage-list-section": "Pâges de sèccion",
+ "pt-deletepage-list-other": "Ôtres sot-pâges",
+ "pt-deletepage-list-count": "En tot $1 pâge{{PLURAL:$1||s}} a suprimar.",
+ "pt-deletepage-full-logreason": "Partia de la pâge traduisibla « $1 ».",
+ "pt-deletepage-lang-logreason": "Partia de la pâge de traduccion « $1 »."
+}
diff --git a/MLEB/Translate/i18n/pagetranslation/fur.json b/MLEB/Translate/i18n/pagetranslation/fur.json
new file mode 100644
index 00000000..c5da45b6
--- /dev/null
+++ b/MLEB/Translate/i18n/pagetranslation/fur.json
@@ -0,0 +1,25 @@
+{
+ "@metadata": {
+ "authors": [
+ "Klenje"
+ ]
+ },
+ "pagetranslation": "Traduzion di une pagjine",
+ "tpt-diff-old": "Test precedent",
+ "tpt-diff-new": "Gnûf test",
+ "tpt-select-prioritylangs-reason": "Reson:",
+ "tpt-sections-prioritylangs": "Lenghis prioritariis",
+ "translate-tag-translate-link-desc": "Tradûs cheste pagjine",
+ "tpt-languages-legend": "Altris lenghis:",
+ "tpt-languages-zero": "Scomence a tradusi in cheste lenghe",
+ "tpt-tab-translate": "Tradûs",
+ "tpt-discouraged-language-reason": "Reson: $1",
+ "tpt-aggregategroup-add": "Zonte",
+ "tpt-aggregategroup-save": "Salve",
+ "tpt-aggregategroup-new-name": "Non:",
+ "pt-movepage-current": "Non atuâl:",
+ "pt-movepage-new": "Gnûf non:",
+ "pt-movepage-reason": "Reson:",
+ "pt-deletepage-current": "Non de pagjine:",
+ "pt-deletepage-reason": "Reson:"
+}
diff --git a/MLEB/Translate/i18n/pagetranslation/fy.json b/MLEB/Translate/i18n/pagetranslation/fy.json
new file mode 100644
index 00000000..4a6ad277
--- /dev/null
+++ b/MLEB/Translate/i18n/pagetranslation/fy.json
@@ -0,0 +1,11 @@
+{
+ "@metadata": {
+ "authors": [
+ "Robin0van0der0vliet"
+ ]
+ },
+ "tpt-aggregategroup-new-name": "Namme:",
+ "tpt-aggregategroup-edit-name": "Namme:",
+ "tpt-aggregategroup-update-cancel": "Annulearje",
+ "pm-cancel-button-label": "Annulearje"
+}
diff --git a/MLEB/Translate/i18n/pagetranslation/ga.json b/MLEB/Translate/i18n/pagetranslation/ga.json
new file mode 100644
index 00000000..d0a5a5c0
--- /dev/null
+++ b/MLEB/Translate/i18n/pagetranslation/ga.json
@@ -0,0 +1,11 @@
+{
+ "@metadata": {
+ "authors": [
+ "පසිඳු කාවින්ද"
+ ]
+ },
+ "tpt-select-prioritylangs-reason": "Fáth:",
+ "tpt-aggregategroup-save": "Sábháil",
+ "tpt-aggregategroup-new-name": "Ainm:",
+ "pt-deletepage-reason": "Fáth:"
+}
diff --git a/MLEB/Translate/i18n/pagetranslation/gl.json b/MLEB/Translate/i18n/pagetranslation/gl.json
new file mode 100644
index 00000000..846c00ca
--- /dev/null
+++ b/MLEB/Translate/i18n/pagetranslation/gl.json
@@ -0,0 +1,180 @@
+{
+ "@metadata": {
+ "authors": [
+ "Toliño"
+ ]
+ },
+ "pagetranslation": "Tradución de páxinas",
+ "right-pagetranslation": "Marcar as versións de páxinas para seren traducidas",
+ "action-pagetranslation": "administrar as páxinas traducibles",
+ "tpt-desc": "Extensión para traducir contidos de páxinas",
+ "tpt-section": "Unidade de tradución $1",
+ "tpt-section-new": "Nova unidade de tradución. Nome: $1",
+ "tpt-section-deleted": "Unidade de tradución $1",
+ "tpt-template": "Modelo de páxina",
+ "tpt-templatediff": "Cambiou o modelo de páxina.",
+ "tpt-diff-old": "Texto anterior",
+ "tpt-diff-new": "Texto novo",
+ "tpt-submit": "Marcar esta versión para ser traducida",
+ "tpt-sections-oldnew": "Unidades de tradución novas e existentes",
+ "tpt-sections-deleted": "Unidades de tradución borradas",
+ "tpt-sections-template": "Modelo de páxina de tradución",
+ "tpt-action-nofuzzy": "Non invalidar as traducións",
+ "tpt-badtitle": "O nome de páxina dado (\"$1\") non é un título válido",
+ "tpt-nosuchpage": "A páxina \"$1\" non existe",
+ "tpt-oldrevision": "$2 non é a última versión da páxina \"[[:$1]]\".\nSó as últimas versións poden ser marcadas para seren traducidas.",
+ "tpt-notsuitable": "A páxina \"$1\" non é válida para ser traducida.\nComprobe que teña as etiquetas <nowiki><translate></nowiki> e mais unha sintaxe válida.",
+ "tpt-saveok": "A páxina \"[[:$1]]\" foi marcada para ser traducida, {{PLURAL:$2|cunha unidade de tradución|con $2 unidades de tradución}}.\nA páxina agora pode ser <span class=\"plainlinks\">[$3 traducida]</span>.",
+ "tpt-offer-notify": "Pode <span class=\"plainlinks\">[$1 notificar aos tradutores]</span> sobre esta páxina.",
+ "tpt-badsect": "\"$1\" non é un nome válido para a unidade de tradución $2.",
+ "tpt-showpage-intro": "A continuación están listadas as unidades de tradución novas, existentes e borradas.\nAntes de marcar esta versión para ser traducida, comprobe que as modificacións feitas ás unidades de tradución foron minimizadas para evitarlles traballo innecesario aos tradutores.",
+ "tpt-mark-summary": "Marcou esta versión para ser traducida",
+ "tpt-edit-failed": "Non se puido actualizar a páxina: $1",
+ "tpt-duplicate": "O nome da unidade de tradución \"$1\" úsase máis dunha vez.",
+ "tpt-already-marked": "A última versión desta páxina xa foi marcada para ser traducida.",
+ "tpt-unmarked": "A páxina \"$1\" xa non está marcada para traducir.",
+ "tpt-list-nopages": "Non hai ningunha páxina marcada para ser traducida, nin preparada para ser marcada para ser traducida.",
+ "tpt-new-pages-title": "Páxinas propostas para a súa tradución",
+ "tpt-old-pages-title": "Páxinas en tradución",
+ "tpt-other-pages-title": "Páxinas rotas",
+ "tpt-discouraged-pages-title": "Páxinas rexeitadas",
+ "tpt-new-pages": "{{PLURAL:$1|Esta páxina contén|Estas páxinas conteñen}} texto con etiquetas de tradución, pero ningunha versión {{PLURAL:$1|desta páxina|destas páxinas}} está actualmente marcada para ser traducida.",
+ "tpt-old-pages": "Algunha versión {{PLURAL:$1|desta páxina|destas páxinas}} foi marcada para ser traducida.",
+ "tpt-other-pages": "{{PLURAL:$1|Hai marcada para traducir unha a versión vella desta páxina|Hai marcadas para traducir algunhas versións vellas destas páxinas}}, pero {{PLURAL:$1|a última versión|as últimas versións}} non se {{PLURAL:$1|pode|poden}} marcar.",
+ "tpt-discouraged-pages": "{{PLURAL:$1|Esta páxina foi rexeitada|Estas páxinas foron rexeitadas}} e xa non se solicita a súa tradución.",
+ "tpt-select-prioritylangs": "Lista dos códigos das linguas prioritarias (separados por comas):",
+ "tpt-select-prioritylangs-force": "Impedir as traducións noutras linguas que non sexan as prioritarias",
+ "tpt-select-prioritylangs-reason": "Motivo:",
+ "tpt-sections-prioritylangs": "Linguas prioritarias",
+ "tpt-rev-mark": "marcar para traducir",
+ "tpt-rev-unmark": "eliminar da tradución",
+ "tpt-rev-discourage": "rexeitar",
+ "tpt-rev-encourage": "restaurar",
+ "tpt-rev-mark-tooltip": "Marcar a última versión desta páxina para a súa tradución.",
+ "tpt-rev-unmark-tooltip": "Eliminar esta páxina da tradución.",
+ "tpt-rev-discourage-tooltip": "Rexeitar máis traducións desta páxina.",
+ "tpt-rev-encourage-tooltip": "Restaurar esta páxina á tradución normal.",
+ "translate-tag-translate-link-desc": "Traducir esta páxina",
+ "translate-tag-markthis": "Marcar esta páxina para a súa tradución",
+ "translate-tag-markthisagain": "Esta páxina sufriu <span class=\"plainlinks\">[$1 cambios]</span> desde que foi <span class=\"plainlinks\">[$2 marcada para a súa tradución]</span> por última vez.",
+ "translate-tag-hasnew": "Esta páxina contén <span class=\"plainlinks\">[$1 cambios]</span> que non están marcados para a súa tradución.",
+ "tpt-translation-intro": "Esta páxina é unha <span class=\"plainlinks\">[$1 versión traducida]</span> da páxina \"[[$2]]\" e a tradución está completada ao $3%.",
+ "tpt-languages-legend": "Outras linguas:",
+ "tpt-languages-zero": "Comezar a tradución nesta lingua",
+ "tpt-languages-nonzero": "$1 (traducida ao $2%)",
+ "tpt-tab-translate": "Traducir",
+ "tpt-target-page": "Esta páxina non se pode actualizar manualmente.\nEsta páxina é unha tradución da páxina \"[[$1]]\" e a tradución pódese actualizar usando [$2 a ferramenta de tradución].",
+ "tpt-unknown-page": "Este espazo de nomes está reservado para traducións de páxinas de contido.\nA páxina que está intentando editar parece non corresponder a algunha páxina marcada para ser traducida.",
+ "tpt-translation-restricted": "Un administrador de traducións impediu a tradución da páxina nesta lingua.\n\nMotivo: $1",
+ "tpt-discouraged-language-force-header": "Esta páxina non se pode traducir ao $1.",
+ "tpt-discouraged-language-force-content": "Un administrador de traducións decidiu que esta páxina só se pode traducir ao $1.",
+ "tpt-discouraged-language-header": "A tradución desta páxina ao $1 non é unha tarefa prioritaria.",
+ "tpt-discouraged-language-content": "Un administrador de traducións decidiu centrar os esforzos en traducir a páxina ao $1.",
+ "tpt-discouraged-language-force": "<strong>Esta páxina non se pode traducir ao $2.</strong>\n\nUn administrador de traducións decidiu que esta páxina só se pode traducir ao $3.",
+ "tpt-discouraged-language": "<strong>A tradución ao $2 non é unha prioridade para esta páxina.</strong>\n\nUn administrador de traducións decidiu centrar os esforzos en traducir a páxina ao $3.",
+ "tpt-discouraged-language-reason": "Motivo: $1",
+ "tpt-priority-languages": "Un administrador de traducións definiu as linguas prioritarias deste grupo a $1.",
+ "tpt-render-summary": "Actualizando para coincidir coa nova versión da páxina de orixe",
+ "tpt-download-page": "Exportar a páxina coas traducións",
+ "aggregategroups": "Grupos de agregación",
+ "tpt-aggregategroup-add": "Engadir",
+ "tpt-aggregategroup-save": "Gardar",
+ "tpt-aggregategroup-add-new": "Engadir un novo grupo de agregación",
+ "tpt-aggregategroup-new-name": "Nome:",
+ "tpt-aggregategroup-new-description": "Descrición (opcional):",
+ "tpt-aggregategroup-remove-confirm": "Está seguro de querer borrar o grupo de agregación?",
+ "tpt-aggregategroup-invalid-group": "O grupo non existe",
+ "tpt-aggregategroup-edit-name": "Nome:",
+ "tpt-aggregategroup-edit-description": "Descrición:",
+ "tpt-aggregategroup-update": "Gardar",
+ "tpt-aggregategroup-update-cancel": "Cancelar",
+ "pt-parse-open": "Etiqueta &lt;translate> desequilibrada.\nModelo de tradución: <pre>$1</pre>",
+ "pt-parse-close": "Etiqueta &lt;/translate> desequilibrada.\nModelo de tradución: <pre>$1</pre>",
+ "pt-parse-nested": "Non se permiten as unidades de tradución &lt;translate> aniñadas.\nTexto da etiqueta: <pre>$1</pre>",
+ "pt-shake-multiple": "Hai demasiados marcadores de unidade de tradución para unha única unidade.\nTexto da unidade de tradución: <pre>$1</pre>",
+ "pt-shake-position": "Os marcadores de unidade de tradución atópanse nunha posición inesperada.\nTexto da unidade de tradución: <pre>$1</pre>",
+ "pt-shake-empty": "Unidade de tradución baleira para o marcador \"$1\".",
+ "log-description-pagetranslation": "Rexistro de accións e operacións relacionadas co sistema de tradución de páxinas",
+ "log-name-pagetranslation": "Rexistro de tradución de páxinas",
+ "logentry-pagetranslation-mark": "$1 {{GENDER:$2|marcou}} \"$3\" para a súa tradución",
+ "logentry-pagetranslation-unmark": "$1 {{GENDER:$2|eliminou}} \"$3\" das páxinas para traducir",
+ "logentry-pagetranslation-moveok": "$1 {{GENDER:$2|completou}} o cambio de nome da páxina traducible \"$3\" a \"$4\"",
+ "logentry-pagetranslation-movenok": "$1 {{GENDER:$2|atopou}} un problema ao mover a páxina \"$3\" a \"$4\"",
+ "logentry-pagetranslation-deletefok": "$1 {{GENDER:$2|completou}} o borrado da páxina traducible \"$3\"",
+ "logentry-pagetranslation-deletefnok": "$1 {{GENDER:$2|tivo}} un problema ao borrar \"$3\", que pertence á páxina traducible \"$4\"",
+ "logentry-pagetranslation-deletelok": "$1 {{GENDER:$2|completou}} o borrado da páxina de tradución \"$3\"",
+ "logentry-pagetranslation-deletelnok": "$1 {{GENDER:$2|tivo}} un problema ao borrar \"$3\", que pertence á páxina de tradución \"$4\"",
+ "logentry-pagetranslation-encourage": "$1 {{GENDER:$2|estimulou}} a tradución de \"$3\"",
+ "logentry-pagetranslation-discourage": "$1 {{GENDER:$2|desalentou}} a tradución de \"$3\"",
+ "logentry-pagetranslation-prioritylanguages-unset": "$1 {{GENDER:$2|eliminou}} as linguas prioritarias da páxina traducible \"$3\"",
+ "logentry-pagetranslation-prioritylanguages": "$1 {{GENDER:$2|definiu}} as linguas prioritarias da páxina traducible \"$3\" a $5",
+ "logentry-pagetranslation-prioritylanguages-force": "$1 {{GENDER:$2|limitou}} as linguas da páxina traducible \"$3\" a $5",
+ "logentry-pagetranslation-associate": "$1 {{GENDER:$2|engadiu}} a páxina traducible \"$3\" ao grupo de agregación \"$4\"",
+ "logentry-pagetranslation-dissociate": "$1 {{GENDER:$2|eliminou}} a páxina traducible \"$3\" do grupo de agregación \"$4\"",
+ "pt-movepage-title": "Mover a páxina traducible \"$1\"",
+ "pt-movepage-blockers": "Non se pode trasladar a páxina traducible a un novo nome debido {{PLURAL:$1|ao seguinte erro|aos seguintes erros}}:",
+ "pt-movepage-block-base-exists": "Existe a páxina traducible de destino \"[[:$1]]\".",
+ "pt-movepage-block-base-invalid": "O nome da páxina traducible de destino ten un título incorrecto.",
+ "pt-movepage-block-tp-exists": "Existe a páxina de tradución de destino \"[[:$2]]\".",
+ "pt-movepage-block-tp-invalid": "O título da páxina de tradución de destino para \"[[:$1]]\" é incorrecto (quizais sexa longo de máis).",
+ "pt-movepage-block-section-exists": "Existe a páxina de destino \"[[:$2]]\" para a unidade de tradución.",
+ "pt-movepage-block-section-invalid": "O título da páxina de destino para \"[[:$1]]\" para a unidade de tradución é incorrecto (quizais sexa longo de máis).",
+ "pt-movepage-block-subpage-exists": "Existe a subpáxina de destino \"[[:$2]]\".",
+ "pt-movepage-block-subpage-invalid": "O título da subpáxina de destino para \"[[:$1]]\" é incorrecto (quizais sexa longo de máis).",
+ "pt-movepage-list-pages": "Lista de páxinas a mover",
+ "pt-movepage-list-translation": "{{PLURAL:$1|Páxina|Páxinas}} de tradución",
+ "pt-movepage-list-section": "{{PLURAL:$1|Páxina|Páxinas}} de unidade de tradución",
+ "pt-movepage-list-other": "{{PLURAL:$1|Outra subpáxina|Outras subpáxinas}}",
+ "pt-movepage-list-count": "En total, $1 {{PLURAL:$1|páxina|páxinas}} a mover.",
+ "pt-movepage-legend": "Mover a páxina traducible",
+ "pt-movepage-current": "Nome actual:",
+ "pt-movepage-new": "Novo nome:",
+ "pt-movepage-reason": "Motivo:",
+ "pt-movepage-subpages": "Mover todas as subpáxinas",
+ "pt-movepage-action-check": "Comprobar se o traslado é posible",
+ "pt-movepage-action-perform": "Realizar o traslado",
+ "pt-movepage-action-other": "Cambiar o destino",
+ "pt-movepage-intro": "Esta páxina especial permite mover páxinas que están marcadas para a súa tradución.\nA acción de traslado non será inmediata porque é necesario mover moitas outras páxinas.\nMentres as páxinas son trasladadas, non é posible traballar nelas.\nOs erros quedarán rexistrados no [[Special:Log/pagetranslation|rexistro de páxinas de tradución]] e deberán ser reparados manualmente.",
+ "pt-movepage-logreason": "Parte da páxina traducible \"$1\".",
+ "pt-movepage-started": "Estase a mover a páxina base.\nComprobe o [[Special:Log/pagetranslation|rexistro de páxinas de tradución]] por se houbese algún erro e para ler as mensaxes de conclusión.",
+ "pt-locked-page": "Esta páxina está bloqueada porque se está a mover a páxina traducible.",
+ "pt-deletepage-lang-title": "Borrar a páxina de tradución \"$1\".",
+ "pt-deletepage-full-title": "Borrar a páxina traducible \"$1\".",
+ "pt-deletepage-invalid-title": "A páxina especificada non é válida.",
+ "pt-deletepage-invalid-text": "A páxina especificada non é unha páxina traducible nin unha páxina de tradución.",
+ "pt-deletepage-action-check": "Lista de páxinas a borrar",
+ "pt-deletepage-action-perform": "Realizar o borrado",
+ "pt-deletepage-action-other": "Cambiar o destino",
+ "pt-deletepage-lang-legend": "Borrar a páxina de tradución",
+ "pt-deletepage-full-legend": "Borrar a páxina traducible",
+ "pt-deletepage-any-legend": "Borrar a páxina traducible ou a páxina de tradución",
+ "pt-deletepage-current": "Nome da páxina:",
+ "pt-deletepage-reason": "Motivo:",
+ "pt-deletepage-subpages": "Borrar todas as subpáxinas",
+ "pt-deletepage-list-pages": "Lista de páxinas a borrar",
+ "pt-deletepage-list-translation": "Páxinas de tradución",
+ "pt-deletepage-list-section": "Páxinas de unidade de tradución",
+ "pt-deletepage-list-other": "Outras subpáxinas",
+ "pt-deletepage-list-count": "En total, $1 {{PLURAL:$1|páxina|páxinas}} a borrar.",
+ "pt-deletepage-full-logreason": "Parte da páxina traducible \"$1\".",
+ "pt-deletepage-lang-logreason": "Parte da páxina de tradución \"$1\".",
+ "pt-deletepage-started": "Comprobe os erros e as mensaxes de conclusión no [[Special:Log/pagetranslation|rexistro de páxinas de tradución]].",
+ "pt-deletepage-intro": "Esta páxina especial permite borrar por completo páxinas traducibles ou páxinas de tradución individuais nunha lingua.\nA acción de borrado non será inmediata porque cómpre eliminar todas as páxinas dependentes delas.\nOs erros quedarán rexistrados no [[Special:Log/pagetranslation|rexistro de páxinas de tradución]] e terán que arranxarse manualmente.",
+ "pagemigration": "Migración da páxina de tradución",
+ "pagemigration-summary": "Especifique unha páxina de tradución e restaure calquera tradución feita antes de activar o sistema de tradución nesa páxina.",
+ "pm-import-button-label": "Importar",
+ "pm-savepages-button-label": "Gardar",
+ "pm-cancel-button-label": "Cancelar",
+ "pm-pagename-placeholder": "Insira o nome da páxina",
+ "pm-langcode-placeholder": "Código da lingua",
+ "pm-page-does-not-exist": "\"$1\" non existe",
+ "pm-old-translations-missing": "\"$1\" non contén traducións vellas",
+ "pm-extra-units-warning": "Pode haber unidades adicionais presentes. Faga coincidir correctamente as unidades de orixe e as unidades de tradución",
+ "pm-pagename-missing": "Insira o nome da páxina",
+ "pm-langcode-missing": "Insira o código da lingua",
+ "pm-add-icon-hover-text": "Engadir unha unidade embaixo",
+ "pm-swap-icon-hover-text": "Cambiar coa unidade inferior",
+ "pm-delete-icon-hover-text": "Borrar a unidade",
+ "tpt-translate-title": "Permitir a tradución do título da páxina",
+ "pp-save-summary": "Preparo a páxina para a súa tradución"
+}
diff --git a/MLEB/Translate/i18n/pagetranslation/gsw.json b/MLEB/Translate/i18n/pagetranslation/gsw.json
new file mode 100644
index 00000000..2b2ef4e6
--- /dev/null
+++ b/MLEB/Translate/i18n/pagetranslation/gsw.json
@@ -0,0 +1,139 @@
+{
+ "@metadata": {
+ "authors": [
+ "Als-Chlämens",
+ "Als-Holder",
+ "Purodha"
+ ]
+ },
+ "pagetranslation": "Sytenibersetzig",
+ "right-pagetranslation": "D Syte, wu sotte ibersetzt wäre, markiere",
+ "action-pagetranslation": "ibersetzbari Syte z verwalte",
+ "tpt-desc": "Erwyterig fir d Iberstzig vu Inhaltssyte",
+ "tpt-section": "Iberstzigs-Abschnitt $1",
+ "tpt-section-new": "Neje Iberstzigs-Abschnitt. Name: $1",
+ "tpt-section-deleted": "Ibersetzigs-Abschnitt $1",
+ "tpt-template": "Sytevorlag",
+ "tpt-templatediff": "D Sytevorlag het sich gänderet.",
+ "tpt-diff-old": "Vorige Tekscht",
+ "tpt-diff-new": "Neje Tekscht",
+ "tpt-submit": "Die Version zum Ibersetze markiere",
+ "tpt-sections-oldnew": "Neji un vorhandeni Ibersetzigs-Abschnitt",
+ "tpt-sections-deleted": "Gleschti Ibersetzigs-Abschnitt",
+ "tpt-sections-template": "Ibersetzigs-Sytevorlag",
+ "tpt-action-nofuzzy": "Setz d Ibersetzige nit usser Chraft",
+ "tpt-badtitle": "Dr Sytename, wu Du aagee hesch ($1), isch kei giltige Sytename",
+ "tpt-nosuchpage": "D Syte $1 git s nit",
+ "tpt-oldrevision": "$2 isch nit di letscht Version vu dr Syte [[:$1]].\nNume di letschte Versione chenne zum Iberseze markiert wäre.",
+ "tpt-notsuitable": "D Syte $1 cha nit iberstez wäre.\nStell sicher, ass si <nowiki><translate></nowiki>-Markierige un e giltige Syntax het.",
+ "tpt-saveok": "D Syte [[:$1]] isch zum Ibersetze markiert wore mit $2 {{PLURAL:$2|Ibersetzigs-Abschnitt|Ibersetzigs-Abschnitt}}.\nD Syte cha jetz <span class=\"plainlinks\">[$3 ibersetzt]</span> wäre.",
+ "tpt-badsect": "\"$1\" isch kei giltige Name fir dr Iberstzigs-Abschnitt $2.",
+ "tpt-showpage-intro": "Unte sin Abschnitt ufglischtet, wu nej sin, sonigi wu s git un sonigi wu s nit git.\nVoreb Du die Version zum Ibersetze frejgisch, iberprief, ass d Änderige an dr Abschnitt gring ghalte sin go uunetigi Arbed bi dr Ibersetzig vermyde.",
+ "tpt-mark-summary": "het die Versione zum Ibersetze markiert",
+ "tpt-edit-failed": "Cha d Syte nit aktualisiere: $1",
+ "tpt-duplicate": "Dr Ibersetzigseinheitsname $1 wird meh wie eimol brucht.",
+ "tpt-already-marked": "Di letscht Version vu däre Syte isch scho zum Ibersetze markiert wore.",
+ "tpt-unmarked": "D Syte $1 isch nit lenger markiert, ass sie mueß ibersetzt wäre.",
+ "tpt-list-nopages": "S sin kei Syte zum Ibersetze markiert wore un sin au no keini Syte fertig, wu chennte zum Ibersetze markiert wäre",
+ "tpt-new-pages-title": "Fir e Ibersetzig vorgschlaani Syte",
+ "tpt-old-pages-title": "Z Ibersetze",
+ "tpt-other-pages-title": "Fählerhafti Syte",
+ "tpt-discouraged-pages-title": "Zruckzoge",
+ "tpt-new-pages": "{{PLURAL:$1|In däre Syte|In däne Syte}} het s Tekscht mit Ibersetzigs-Markierige, aber zur Zyt isch kei Version {{PLURAL:$1|däre Syte|däne Syte}} zum Ibersetze markiert.",
+ "tpt-old-pages": "{{PLURAL:$1|E Version vu däre Syte isch|E paar Versione vu däne Syte sin}} zum Ibersetze markiert wore",
+ "tpt-other-pages": "{{PLURAL:$1|En alti Version vu däre Syte isch markiert, ass si mueß|Alti Versione vu däne Syte sin markiert, ass si mien}} ibersetzt wäre.\nDi {{PLURAL:$1|nejscht Version cha dergege nit markiert wäre, ass si mueß|nejschte Versione chenne dergege nit markiert wäre, ass sin mien}} ibersetzt wäre.",
+ "tpt-discouraged-pages": "{{PLURAL:$1|Die Syte isch|Die Syten sin}} vu dr Ibersetzig zruckzoge wore.",
+ "tpt-select-prioritylangs": "Komma-trännti Lischt vu dr priorisirte Sprochcode:",
+ "tpt-select-prioritylangs-force": "Ibersetzige in nit priorisierti Sproche verhindere",
+ "tpt-select-prioritylangs-reason": "Grund:",
+ "tpt-sections-prioritylangs": "Priorisierti Sproche",
+ "tpt-rev-mark": "Zum Ibersetze freigee",
+ "tpt-rev-unmark": "die Syte vum Ibersetze zruckneh",
+ "tpt-rev-discourage": "Frejgab zrucksetze",
+ "tpt-rev-encourage": "widerhärstelle",
+ "tpt-rev-mark-tooltip": "Di letscht Version vu däre Syte zum Ibersetze frejgee.",
+ "tpt-rev-unmark-tooltip": "D Frejgab zum Ibersetze vu dä#re Syte uuseneh.",
+ "tpt-rev-discourage-tooltip": "D Frejgab fir wyteri Ibersetzige vu däre Syte zruckzie.",
+ "tpt-rev-encourage-tooltip": "D Frejgab zum Ibersetze vu däre Syre widerhärstelle.",
+ "translate-tag-translate-link-desc": "Die Syte ibersetze",
+ "translate-tag-markthis": "Die Syte zum ibersetze markiere",
+ "translate-tag-markthisagain": "An däre Syte het s <span class=\"plainlinks\">[$1 Änderige]</span> gee, syt si s lescht Mol <span class=\"plainlinks\">[$2 zum Ibersetze markiert wore isch]</span>.",
+ "translate-tag-hasnew": "In däre Syte het s <span class=\"plainlinks\">[$1 Änderige]</span>, wu nit zum Ibersetze markiert sin.",
+ "tpt-translation-intro": "Die Syte isch e <span class=\"plainlinks\">[$1 ibersetzti Version]</span> vun ere Syte [[$2]] un d Ibersetzig isch zue $3% vollständig un aktuäll.",
+ "tpt-languages-legend": "Anderi Sproche:",
+ "tpt-languages-zero": "Mit em Ibersetze in die Sproch aafange",
+ "tpt-target-page": "Die Syte cha nit vu Hand aktualisiert wäre.\nDie Syte isch e Ibersetzig vu dr Syte [[$1]] un d Ibersetzig cha aktualisert wäre mit em [$2 Ibersetzigstool].",
+ "tpt-unknown-page": "Dää Namensruum isch reserviert fir Ibersetzige vu Inhaltssyte.\nD Syte, wu Du witt bearbeite, ghert schyns zue keire Syte, wu zum Ibersetze markiert isch.",
+ "tpt-translation-restricted": "S Ibersetze vu däre Syte in die Sproch isch vun eme Ibersetzigsadministrator deaktiviert wore.\n\nGrund: $1",
+ "tpt-discouraged-language-force": "<strong>Die Syte cha nit in $2 ibersetzt wäre.</strong>\n\nEn Ibersetzigsadministrator het entschide, dass die Syte nume in $3 cha ibersetzt wäre.",
+ "tpt-discouraged-language": "<strong>En Ibersetzig in $2 isch kei Prioritet vu däre Syte.</strong>\n\nEn Ibersetzigsadministrator het entschide, dass die Syte vor allem in $3 sott ibersetzt wäre.",
+ "tpt-discouraged-language-reason": "Grund: $1",
+ "tpt-priority-languages": "En Ibersetzigsadministrator het di priorisierte Sproche fir die Nochrichtegruppe uf $1 feschtgleit.",
+ "tpt-render-summary": "Aktualisiere zum e neji Version vu dr Quällsyte z finde",
+ "tpt-download-page": "Syte mit Ibersetzige exportiere",
+ "aggregategroups": "Sammelgruppe",
+ "tpt-aggregategroup-add": "Zuefiege",
+ "tpt-aggregategroup-save": "Spychere",
+ "tpt-aggregategroup-add-new": "E neji Hauptnochrichtegruppe zuefiege",
+ "tpt-aggregategroup-new-name": "Name:",
+ "tpt-aggregategroup-new-description": "Bschrybig (optional):",
+ "tpt-aggregategroup-remove-confirm": "Bisch sicher, ass Du die Gruppe witt lesche?",
+ "tpt-aggregategroup-invalid-group": "Gruppe git s nit",
+ "pt-parse-open": "Uasymmetrischi &lt;translate&gt;-Markierig.\nIbersetzigsvorlag: <pre>$1</pre>",
+ "pt-parse-close": "Uusymmetrischi &lt;&#47;translate&gt;-Markierig.\nIbersetzigsvorlag: <pre>$1</pre>",
+ "pt-parse-nested": "Verschachtleti &lt;translate&gt;-Ibersetzigseinheite sin nit megli.\nText vu dr Markierig: <pre>$1</pre>",
+ "pt-shake-multiple": "Mehreri Ibersetzigseinheitesmarker fir ei Ibersetzigseinheit.\nText vu drIbersetzigseinheit: <pre>$1</pre>",
+ "pt-shake-position": "S het Ibersetzigseinheitemarker an ere nit erwartete Stell.\nText vu dr Ibersetzigseinheit: <pre>$1</pre>",
+ "pt-shake-empty": "Ibersetzigseinheit fir dr Marker„$1“ isch läär.",
+ "log-description-pagetranslation": "Logbuech vu dr Änderige im Zämmehang mit em Ibersetzigssyschtem",
+ "log-name-pagetranslation": "Sytenibersetzigs-Logbuech",
+ "pt-movepage-title": "D Ibersetzigssyte $1 verschiebe",
+ "pt-movepage-blockers": "Di ibersetzbar Syte het wäge {{PLURAL:$1|däm Fähler|däne Fähler}} nit nit uf dr nej Name chenne verschobe wäre:",
+ "pt-movepage-block-base-exists": "D Basissyte [[:$1]] git s scho.",
+ "pt-movepage-block-base-invalid": "D Basissyte het kei giltige Name.",
+ "pt-movepage-block-tp-exists": "D Ibersetzigssyte [[:$2]] git s scho.",
+ "pt-movepage-block-tp-invalid": "Dr Ziilname vu dr Ibersetzigssyte fir [[:$1]] wär nit giltig (z lang?).",
+ "pt-movepage-block-section-exists": "D Syte [[:$2]] zue dr Ibersetzigseinheit git s scho.",
+ "pt-movepage-block-section-invalid": "Dr Ziilname vu dr Ibersetzigseinheitesyte fir [[:$1]] wär nit giltig (z lang?).",
+ "pt-movepage-block-subpage-exists": "D Untersyte [[:$2]] git s scho.",
+ "pt-movepage-block-subpage-invalid": "Dr Ziilname vu dr Untersyte fir [[:$1]] wär nit giltig (z lang?).",
+ "pt-movepage-list-pages": "Lischt vu dr Syte, wu mien verschobe wäre",
+ "pt-movepage-list-translation": "Ibersetzigssyte",
+ "pt-movepage-list-section": "Syte vu dr Ibersetzigseinheite",
+ "pt-movepage-list-other": "Anderi Untersyte",
+ "pt-movepage-list-count": "Insgsamt git s $1 Syte, wu {{PLURAL:$1|mueß|mien}} verschobe wäre.",
+ "pt-movepage-legend": "Ibersetzigssyte verschiebe",
+ "pt-movepage-current": "Aktuälle Sytename:",
+ "pt-movepage-new": "Neje Sytename:",
+ "pt-movepage-reason": "Grund:",
+ "pt-movepage-subpages": "Alli Untersyte verschiebe",
+ "pt-movepage-action-check": "Iberpriefig, eb d Verschiebig megli isch",
+ "pt-movepage-action-perform": "Verschiebig durfiere",
+ "pt-movepage-action-other": "Ziil ändere",
+ "pt-movepage-intro": "Die Spezialsyte macht s megli Syte z verschiebe, wu fir d Ibersetzig zeichnet sin.\nD Verschiebig chunnt nit sofort, wel vil Syte derby mien verschobe wäre.\nBim Verschiebigsvorgang isch s nit megli, die Syte z nutze.\nVerschiebigsfähler wäre im [[Special:Log/pagetranslation|Ibersetzigs-Logbuech]] ufzeichnet un mien vu Hand verbesseret wäre.",
+ "pt-movepage-logreason": "Teil vu dr Ibersetzigssyte $1.",
+ "pt-movepage-started": "D Basissyte isch jetz verschobe wore.\nBitte prief s [[Special:Log/pagetranslation|Ibersetzigs-Logbuech]] uf Fählermäldige un d Vollzugsnochricht.",
+ "pt-locked-page": "Die Syte isch gsperrt, wel d Ibersetzigssyte zurzyt verschobe wird.",
+ "pt-deletepage-lang-title": "Übersetzigs-Syte $1 wird glöscht",
+ "pt-deletepage-full-title": "Übersetzbari Syte $1 wird glöscht.",
+ "pt-deletepage-invalid-title": "Die Syte, wo aagee hesch, isch nit gültig.",
+ "pt-deletepage-invalid-text": "Die Syte, wo aagee hesch, isch weder e übersetzbari Syte, noch e Übersetzig.",
+ "pt-deletepage-action-check": "Syte ufflischte, wo glöscht werde sölle",
+ "pt-deletepage-action-perform": "Löschig durefiere",
+ "pt-deletepage-action-other": "Ziil ändere",
+ "pt-deletepage-lang-legend": "Ibersetzigs-Syte lesche",
+ "pt-deletepage-full-legend": "Ibersetzbari Syte lesche",
+ "pt-deletepage-any-legend": "Übersetzbari oder übersetzti Syte lösche",
+ "pt-deletepage-current": "Sytename:",
+ "pt-deletepage-reason": "Grund:",
+ "pt-deletepage-subpages": "Alli Untersyte lösche",
+ "pt-deletepage-list-pages": "Lischt vu dr Syte, wu mien glöscht wäre",
+ "pt-deletepage-list-translation": "Ibersetzigssyte",
+ "pt-deletepage-list-section": "Syte vu dr Ibersetzigseinheite",
+ "pt-deletepage-list-other": "Anderi Untersyte",
+ "pt-deletepage-list-count": "Insgsamt git s $1 Syte, wu {{PLURAL:$1|mueß|mien}} glöscht wäre.",
+ "pt-deletepage-full-logreason": "Teil vu dr übersetzbare Syte $1.",
+ "pt-deletepage-lang-logreason": "Teil vu dr übersetzte Syte $1.",
+ "pt-deletepage-started": "Bitte due s [[Special:Log/pagetranslation|Übersetzigs-Logbuech]] uff Fääler un Ussfierigsnoochrichte überpriefe.",
+ "pt-deletepage-intro": "Die Spezialsyte ermöglicht s Lösche vo ganze übersetbare Syte oder Übersetzige in ei Sprooch.\nD Ussfierig vo Löschig passiert nit unmittelbar, wyl vili Syte übersetzt werde mien.\nFääler werde im [[Special:Log/pagetranslation|Übersetzigs-Logbuech]] uffzeichnet un mien noochträgli manuell berichtigt werde."
+}
diff --git a/MLEB/Translate/i18n/pagetranslation/gu.json b/MLEB/Translate/i18n/pagetranslation/gu.json
new file mode 100644
index 00000000..a5754bc9
--- /dev/null
+++ b/MLEB/Translate/i18n/pagetranslation/gu.json
@@ -0,0 +1,36 @@
+{
+ "@metadata": {
+ "authors": [
+ "Ashok modhvadia",
+ "Dsvyas",
+ "KartikMistry"
+ ]
+ },
+ "pagetranslation": "પાનું ભાષાંતરણ",
+ "right-pagetranslation": "ભાષાંતર માટેનાં પાનાઓનાં સંસ્કરણો ચિહ્નિત કરો",
+ "tpt-section": "ભાષાંતર એકમ $1",
+ "tpt-section-new": "નવું ભાષાંતર એકમ. નામ: $1",
+ "tpt-section-deleted": "ભાષાંતર એકમ $1",
+ "tpt-template": "પાનાં ઢાંચો",
+ "tpt-templatediff": "પાનાંનો ઢાંચો બદલાયો છે.",
+ "tpt-diff-old": "પહેલાંનું લખાણ",
+ "tpt-diff-new": "નવું લખાણ",
+ "tpt-submit": "આ સંસ્કરણને ભાષાંતર માટે ચિહ્નિત કરો",
+ "tpt-sections-oldnew": "નવાં અને વિદ્યમાન ભાષાંતર એકમો",
+ "tpt-sections-deleted": "રદ કરાયેલા ભાષાંતર એકમો",
+ "tpt-sections-template": "ભાષાંતર પાના ઢાંચો",
+ "tpt-badtitle": "પાનાને અપાયેલું ($1) નામ પ્રમાણભૂત મથાળું નથી",
+ "tpt-oldrevision": "$2 એ પાનાં [[:$1]] નું આધુનિક સંસ્કરણ નથી.\n\nફક્ત આધુનિક સંસ્કરણનેજ ભાષાંતર માટે ચિહ્નિત કરી શકાશે.",
+ "tpt-notsuitable": "પાનું $1 ભાષાંતર માટે યોગ્ય નથી.\n\nખાતરી કરો કે તે <nowiki><translate></nowiki> ટેગ અને પ્રમાણભૂત વાક્યરચના ધરાવે છે.",
+ "tpt-badsect": "\"$1\" એ ભાષાંતર એકમ $2 માટેનું પ્રમાણભૂત નામ નથી.",
+ "tpt-mark-summary": "આ સંસ્કરણને ભાષાંતર માટે ચિહ્નિત કરાયું",
+ "tpt-edit-failed": "પાનાં: $1 ને અદ્યતન બનાવી શકાયું નહીં.",
+ "tpt-already-marked": "આ પાનાનું આધુનિક સંસ્કરણ અગાઉથીજ ભાષાંતર માટે ચિહ્નિત થઇ ચુક્યું છે.",
+ "tpt-list-nopages": "કોઈ પાનાં ભાષાંતર માટે ચિહ્નિત કરેલા નથી કે ન તો કોઈ પાનું ભાષાંતર માટે ચિહ્નિત થવા માટે તૈયાર છે.",
+ "tpt-new-pages": "{{PLURAL:$1|આ પાના|આ પાનાઓ}} ભાષાંતર ટેગ શાથેનું લખાણ ધરાવે છે, પરંતુ {{PLURAL:$1|આ પાના|આ પાનાઓ}}નું હાલનું સંસ્કરણ ભાષાંતર માટે ચિહ્નિત કરાયેલ નથી.",
+ "tpt-old-pages": "{{PLURAL:$1|આ પાના|આ પાનાં}}નાં કેટલાક સંસ્કરણ ભાષાંતર માટે ચિહ્નિત કરાયેલા છે.",
+ "translate-tag-translate-link-desc": "આ પાનાનું ભાષાંતર કરો",
+ "translate-tag-markthis": "આ પાનાંને ભાષાંતર માટે ચિહ્નિત કરો",
+ "tpt-languages-legend": "અન્ય ભાષાઓ:",
+ "tpt-invalid-group": "અયોગ્ય સમૂહ"
+}
diff --git a/MLEB/Translate/i18n/pagetranslation/gv.json b/MLEB/Translate/i18n/pagetranslation/gv.json
new file mode 100644
index 00000000..f0305485
--- /dev/null
+++ b/MLEB/Translate/i18n/pagetranslation/gv.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Shimmin Beg"
+ ]
+ },
+ "pt-movepage-reason": "Fa:"
+}
diff --git a/MLEB/Translate/i18n/pagetranslation/ha.json b/MLEB/Translate/i18n/pagetranslation/ha.json
new file mode 100644
index 00000000..98368f30
--- /dev/null
+++ b/MLEB/Translate/i18n/pagetranslation/ha.json
@@ -0,0 +1,4 @@
+{
+ "@metadata": [],
+ "pt-movepage-reason": "Dalili:"
+}
diff --git a/MLEB/Translate/i18n/pagetranslation/he.json b/MLEB/Translate/i18n/pagetranslation/he.json
new file mode 100644
index 00000000..77c3210b
--- /dev/null
+++ b/MLEB/Translate/i18n/pagetranslation/he.json
@@ -0,0 +1,202 @@
+{
+ "@metadata": {
+ "authors": [
+ "Amire80",
+ "Deror avi",
+ "Guycn2",
+ "Inkbug",
+ "Rotemliss",
+ "YaronSh"
+ ]
+ },
+ "pagetranslation": "תרגום דפים",
+ "right-pagetranslation": "סימון גרסאות של הדפים לתרגום",
+ "action-pagetranslation": "לנהל דפים שאפשר לתרגם",
+ "tpt-desc": "הרחבה לתרגום דפי תוכן",
+ "tpt-section": "יחידת תרגום $1",
+ "tpt-section-new": "יחידת תרגום חדשה.\nשם: $1",
+ "tpt-section-deleted": "יחידת תרגום $1",
+ "tpt-template": "תבנית הדף",
+ "tpt-templatediff": "תבנית הדף שונתה.",
+ "tpt-diff-old": "הטקסט הקודם",
+ "tpt-diff-new": "טקסט חדש",
+ "tpt-submit": "סימון גרסה זו לתרגום",
+ "tpt-sections-oldnew": "יחידות תרגום חדשות וקיימות",
+ "tpt-sections-deleted": "יחידות תרגום שנמחקו",
+ "tpt-sections-template": "תבנית דף תרגום",
+ "tpt-action-nofuzzy": "לא לפסול תרגומים",
+ "tpt-badtitle": "שם הדף שניתן ($1) אינו כותרת תקינה",
+ "tpt-nosuchpage": "הדף $1 אינו קיים",
+ "tpt-oldrevision": "$2 היא לא הגרסה האחרונה של הדף [[:$1]].\nרק הגרסאות האחרונות יכולות להיות מסומנות לתרגום.",
+ "tpt-notsuitable": "הדף $1 אינו מתאים לתרגום.\nאנא ודאו שהוא מכיל תגיות <nowiki><translate></nowiki> ושהתחביר שלו תקין.",
+ "tpt-saveok": "הדף [[:$1]] סומן לתרגום עם {{PLURAL:$2|יחידת תרגום אחת|$2 יחידות תרגום}}.\nעכשיו אפשר <span class=\"plainlinks\">[$3 לתרגם]</span> את הדף.",
+ "tpt-offer-notify": "באפשרותך <span class=\"plainlinks\">[$1 להודיע למתרגמים]</span> על הדף הזה.",
+ "tpt-badsect": "השם \"$1\" אינו שם תקין ליחידת התרגום $2.",
+ "tpt-showpage-intro": "להלן רשימת יחידות תרגום חדשות, קיימות ומחוקות.\nלפני סימון גרסה זו לתרגום, בדקו שהשינויים ליחידות התרגום קטנים ככל שאפשר, כדי למנוע עבודה מיותרת של מתרגמים.",
+ "tpt-mark-summary": "גרסה זו סומנה לתרגום",
+ "tpt-mark-nochanges": "אין הבדל בין הגרסה הזאת לבין הגרסה המסומנת האחרונה.",
+ "tpt-edit-failed": "לא ניתן לעדכן את הדף: $1",
+ "tpt-duplicate": "נעשה שימוש מרובה בשם יחידת התרגום $1.",
+ "tpt-already-marked": "הגרסה העדכנית ביותר של דף זה כבר סומנה לתרגום.",
+ "tpt-unmarked": "הדף $1 כבר אינו מסומן לתרגום.",
+ "tpt-list-nopages": "אין דפים המסומנים לתרגום וגם לא דפים המוכנים להיות מסומנים לתרגום.",
+ "tpt-new-pages-title": "דפים שהוצעו לתרגום",
+ "tpt-old-pages-title": "דפים בתרגום",
+ "tpt-other-pages-title": "דפים מקולקלים",
+ "tpt-discouraged-pages-title": "דפים לא מומלצים",
+ "tpt-new-pages": "{{PLURAL:$1|הדף הזה מכיל|הדפים האלה מכילים}} טקסט עם תגי תרגום,\nאבל שום גרסה {{PLURAL:$1|דף זה|הדפים האלה}} מסומנת כעת לתרגום.",
+ "tpt-old-pages": "{{PLURAL:$1|גרסה מסוימת|גרסאות מסוימות}} של {{PLURAL:$1|דף זה סומנה|דפים אלה סומנו}} לתרגום.",
+ "tpt-other-pages": "{{PLURAL:$1|גרסה ישנה של דף זה סומנה|גרסאות ישנות של דפים אלה סומנו}} לתרגום,\nאבל {{PLURAL:$1|הגרסה האחרונה אינה יכולה להיות מסומנת|הגרסאות האחרונות אינן יכולות להיות מסומנות}} לתרגום.",
+ "tpt-discouraged-pages": "מומלץ לא לתרגם את {{PLURAL:$1|הדף הזה|הדפים האלה}}",
+ "tpt-select-prioritylangs": "רשימת מופרדת בפסיקים של קודי שפות מועדפות:",
+ "tpt-select-prioritylangs-force": "למנוע תרגום לשפות שאינן מוגדרות כמועדפות",
+ "tpt-select-prioritylangs-reason": "סיבה:",
+ "tpt-sections-prioritylangs": "שפות מועדפות",
+ "tpt-rev-mark": "לסמן לתרגום",
+ "tpt-rev-unmark": "הסרה מהתרגום",
+ "tpt-rev-discourage": "לסמן כלא מומלץ",
+ "tpt-rev-encourage": "שחזור",
+ "tpt-rev-mark-tooltip": "סימון הגרסה האחרונה של דף זה לתרגום",
+ "tpt-rev-unmark-tooltip": "להסרת דף זה מרשימת התרגום.",
+ "tpt-rev-discourage-tooltip": "להמליץ לא לתרגם את הדף הזה עוד.",
+ "tpt-rev-encourage-tooltip": "לשחזר את הדף הזה לתרגום רגיל.",
+ "translate-tag-translate-link-desc": "תרגום דף זה",
+ "translate-tag-markthis": "סימון דף זה לתרגום",
+ "translate-tag-markthisagain": "בדף הזה יש <span class=\"plainlinks\">[$1 שינויים]</span> שנעשו מאז שהוא <span class=\"plainlinks\">[$2 סומן לתרגום]</span> בפעם האחרונה.",
+ "translate-tag-hasnew": "דף זה מכיל <span class=\"plainlinks\">[$1 שינויים]</span> שאינם מסומנים לתרגום.",
+ "tpt-translation-intro": "הדף הזה הוא <span class=\"plainlinks\">[$1 גרסה מתורגמת]</span> של הדף [[$2]] והתרגום שלם ב־$3%.",
+ "tpt-languages-legend": "שפות אחרות:",
+ "tpt-languages-zero": "להתחיל לתרגום לשפה הזאת",
+ "tpt-languages-nonzero": "$1 (מתורגם: $2%)",
+ "tpt-tab-translate": "תרגום",
+ "tpt-target-page": "לא ניתן לעדכן דף זה ידנית.\nדף זה הוא תרגום של הדף [[$1]] וניתן לעדכן את התרגום באמצעות [$2 כלי התרגום].",
+ "tpt-unknown-page": "מרחב שם זה שמור לצורך תרגומי דפי התוכן.\nהדף אותו אתם מנסים לערוך אינו תואם לאף דף המסומן לתרגום.",
+ "tpt-translation-restricted": "מנהל תרגומים נעל את תרגום קבוצת ההודעות הזאת לשפה הזאת.\n\nסיבה להגבלה: $1",
+ "tpt-discouraged-language-force-header": "לא ניתן לתרגם את הדף הזה ל{{GRAMMAR:תחילית|$1}}.",
+ "tpt-discouraged-language-force-content": "מנהל התרגום החליט שאפשר לתרגם את הדף הזה רק ל{{GRAMMAR:תחילית|$1}}.",
+ "tpt-discouraged-language-header": "תרגום הדף ל{{GRAMMAR:תחילית|$1}} אינו בעדיפות.",
+ "tpt-discouraged-language-content": "מנהל התרגום החליט לרכז את מאמץ התרגום ב{{GRAMMAR:תחילית|$1}}.",
+ "tpt-discouraged-language-force": "<strong>לא ניתן לתרגם את הדף הזה ל$2</strong>\n\nמנהל התרגום החליט שאפשר לתרגם את הדף הזה רק לשפות הבאות: $3.",
+ "tpt-discouraged-language": "<strong>תרגום ל$2 לא מוגדר בתור עדיפות גבוהה עבור הדף הזה.</strong>\n\nמנהל התרגום החליט שצריך לרכז את מאמצי בתרגום בשפות הבאות: $3.",
+ "tpt-discouraged-language-reason": "סיבה: $1",
+ "tpt-priority-languages": "מנהל תרגום הגדיר שהשפות המועדפות לקבוצה הזאת הן $1.",
+ "tpt-render-summary": "עדכון להתאמת הגרסה החדשה של דף המקור",
+ "tpt-download-page": "ייצוא דף עם תרגומים",
+ "aggregategroups": "קבוצות משולבות",
+ "tpt-aggregategroup-add": "הוספה",
+ "tpt-aggregategroup-save": "שמירה",
+ "tpt-aggregategroup-add-new": "הוספת קבוצה משולבת חדשה",
+ "tpt-aggregategroup-new-name": "שם:",
+ "tpt-aggregategroup-new-description": "תיאור (לא חובה):",
+ "tpt-aggregategroup-remove-confirm": "האם ברצונך באמת למחוק את הקבוצה המשולבת הזאת?",
+ "tpt-aggregategroup-invalid-group": "הקבוצה אינה קיימת",
+ "tpt-aggregategroup-edit-name": "שם:",
+ "tpt-aggregategroup-edit-description": "תיאור:",
+ "tpt-aggregategroup-update": "שמירה",
+ "tpt-aggregategroup-update-cancel": "ביטול",
+ "tpt-invalid-group": "קבוצה בלתי־תקינה",
+ "pt-parse-open": "תג &lt;translate> לא מאוזן.\nתבנית תרגום: <pre>$1</pre>",
+ "pt-parse-close": "תג &lt;/translate> לא מאוזן.\nתבנית תרגום: <pre>$1</pre>",
+ "pt-parse-nested": "קטעי &lt;translate> מקוננים אינם מורשים.\nתוכן התג: <pre>$1</pre>",
+ "pt-shake-multiple": "סמני יחידות תרגום מרובים עבור קטע אחד.\nטקסט יחידת התרגום: <pre>$1</pre>",
+ "pt-shake-position": "סמני יחידות תרגום במיקום בלתי־צפוי.\nתוכן היחידת התרגום: <pre>$1</pre>",
+ "pt-shake-empty": "יחידת תרגום ריקה עבור סמן \"$1\".",
+ "log-description-pagetranslation": "יומן של פעולות שמיוחדות למערכת תרגום דפים",
+ "log-name-pagetranslation": "יומן תרגום דפים",
+ "logentry-pagetranslation-mark": "$1 {{GENDER:$2|סימן|סימנה}} את הדף $3 לתרגום",
+ "logentry-pagetranslation-unmark": "$1 {{GENDER:$2|הוציא|הוציאה}} את הדף $3 ממצב תרגום",
+ "logentry-pagetranslation-moveok": "$1 {{GENDER:$2|השלים|השלימה}} את שינוי השם של הדף ההניתן לתרגום $3 אל $4",
+ "logentry-pagetranslation-movenok": "$1 {{GENDER:$2|נתקל|נתקלה}} בבעיה בעת העברת הדף $3 לשם $4",
+ "logentry-pagetranslation-deletefok": "$1 {{GENDER:$2|השלים|השלימה}} את המחיקה של הדף הניתן לתרגום $3",
+ "logentry-pagetranslation-deletefnok": "$1 {{GENDER:$2|נכשל|נכשלה|נכשל}} במחיקת $3 אשר שייך לדף המתורגם $4",
+ "logentry-pagetranslation-deletelok": "$1 {{GENDER:$2|השלים|השלימה}} את המחיקה של הדף הניתן לתרגום $3",
+ "logentry-pagetranslation-deletelnok": "$1 {{GENDER:$2|נכשל|נכשלה|נכשל}} במחיקת $3 אשר שייך לדף התרגום $4",
+ "logentry-pagetranslation-encourage": "$1 {{GENDER:$2|עודד|עודדה}} את התרגום של $3",
+ "logentry-pagetranslation-discourage": "$1 {{GENDER:$2|המליץ|המליצה}} לא לתרגם את $3",
+ "logentry-pagetranslation-prioritylanguages-unset": "$1 {{GENDER:$2|הסיר|הסירה}} שפות מועדפות מהדף הניתן לתרגום $3",
+ "logentry-pagetranslation-prioritylanguages": "$1 {{GENDER:$2|הגדיר|הגדירה}} שהשפות המועדפות לדף $3 הן $5",
+ "logentry-pagetranslation-prioritylanguages-force": "$1 {{GENDER:$2|הגביל|הגבילה}} את התרגום של הדף $3 אל השפות הבאות: $5",
+ "logentry-pagetranslation-associate": "$1 {{GENDER:$2|הוסיף|הוסיפה}} את הדף הניתן לתרגום $3 לקבוצה המשולבת $4",
+ "logentry-pagetranslation-dissociate": "$1 {{GENDER:$2|הוציא|הוציאה}} את הדף הניתן לתרגום $3 מהקבוצה המשולבת $4",
+ "pt-movepage-title": "להעביר את הדף הניתן לתרגום $1",
+ "pt-movepage-blockers": "דף שניתן לתרגום אינו יכול להיות מועבר לשם חדש בגלל {{PLURAL:$1|השגיאה הבאה|השגיאות הבאות}}:",
+ "pt-movepage-block-base-exists": "כבר קיים דף לתרגום בשם [[:$1]].",
+ "pt-movepage-block-base-invalid": "לדף התרגום המיועד אין כותרת תקינה.",
+ "pt-movepage-block-tp-exists": "דף התרגום המיועד [[:$2]] קיים.",
+ "pt-movepage-block-tp-invalid": "כותרת דף התרגום המיועד עבור [[:$1]] אינה תקינה (אולי ארוכה מדי).",
+ "pt-movepage-block-section-exists": "דף יחידת התרגום המיועד [[:$2]] קיים.",
+ "pt-movepage-block-section-invalid": "כותרת הדף המיועדת עבור \"[[:$1]]\" ליחידת התרגום תהיה בלתי־תקינה (אולי ארוכה מדי?).",
+ "pt-movepage-block-subpage-exists": "דף המשנה המיועד [[:$2]] קיים.",
+ "pt-movepage-block-subpage-invalid": "כותרת דף המשנה המיועד עבור [[:$1]] אינה תקינה (אולי ארוכה מדי).",
+ "pt-movepage-list-pages": "רשימת הדפים להעברה",
+ "pt-movepage-list-translation": "{{PLURAL:$1|דף|דפי}} תרגום",
+ "pt-movepage-list-section": "{{PLURAL:$1|דף|דפי}} יחידת תרגום",
+ "pt-movepage-list-other": "{{PLURAL:$1|דף משנה אחר|דפי משנה אחרים}}",
+ "pt-movepage-list-count": "בסך הכול יש {{PLURAL:$1|דף אחד|$1 דפים}} להעברה.",
+ "pt-movepage-legend": "העברת דף שניתן לתרגום",
+ "pt-movepage-current": "השם הנוכחי:",
+ "pt-movepage-new": "השם החדש:",
+ "pt-movepage-reason": "סיבה:",
+ "pt-movepage-subpages": "העברת כל עמודי המשנה",
+ "pt-movepage-action-check": "לבדוק אם ההעברה אפשרית",
+ "pt-movepage-action-perform": "לבצע את ההעברה",
+ "pt-movepage-action-other": "שינוי יעד",
+ "pt-movepage-intro": "דף מיוחד זה מאפשר לך להעביר דפים מסומנים לתרגום.\nפעולת ההעברה אינה מיידית, מכיוון שצריך להעביר דפים רבים.\nבזמן שהדפים מועברים, לא ניתן לקיים שום קשר איתם.\nפעולות שייכשלו יירשמו ב[[Special:Log/pagetranslation|יומן תרגום הדפים]], ויהיה צורך לתקן אותן באופן ידני.",
+ "pt-movepage-logreason": "חלק מהדף הניתן לתרגום $1.",
+ "pt-movepage-started": "עכשיו דף הבסיס הועבר.\nנא לבדוק את השגיאות ואת הודעת ההשלמה ב[[Special:Log/pagetranslation|יומן תרגום הדפים]].",
+ "pt-locked-page": "הדף הזה נעול כי הדף הניתן לתרגום מועבר כעת.",
+ "pt-deletepage-lang-title": "מחיקת דף התרגום $1.",
+ "pt-deletepage-full-title": "מחיקת הדף הניתן לתרגום $1.",
+ "pt-deletepage-invalid-title": "הדף השצוין אינו תקין.",
+ "pt-deletepage-invalid-text": "הדף שצוין אינו דף ניתן לתרגום או תרגום של דף כזה.",
+ "pt-deletepage-action-check": "רשימת דפים למחיקה",
+ "pt-deletepage-action-perform": "לבצע את המחיקה",
+ "pt-deletepage-action-other": "שינוי היעד",
+ "pt-deletepage-lang-legend": "מחיקת דף תרגום",
+ "pt-deletepage-full-legend": "מחיקת דף ניתן לתרגום",
+ "pt-deletepage-any-legend": "מחיקת דף ניתן לתרגום או תרגום של דף כזה",
+ "pt-deletepage-current": "שם הדף:",
+ "pt-deletepage-reason": "סיבה:",
+ "pt-deletepage-subpages": "מחיקת כל דפי המשנה",
+ "pt-deletepage-list-pages": "רשימת דפים למחיקה",
+ "pt-deletepage-list-translation": "דפי תרגום",
+ "pt-deletepage-list-section": "דפי יחידת תרגום",
+ "pt-deletepage-list-other": "דפי משנה אחרים",
+ "pt-deletepage-list-count": "סך הכול {{PLURAL:$1|דף אחד|$1 דפים}} למחוק.",
+ "pt-deletepage-full-logreason": "חלק מהדף הניתן לתרגום $1.",
+ "pt-deletepage-lang-logreason": "חלק מדך התרגום $1.",
+ "pt-deletepage-started": "נא לבדוק את השגיאות ואת הודעת ההשלמה ב[[Special:Log/pagetranslation|יומן תרגום הדפים]]",
+ "pt-deletepage-intro": "הדך המיוחד הזה מאפשר לך למחוק בשלמותם דפים ניתנים לתרגום או תרגומים שלהם לשפה כלשהי.\nפעולת המחיקה לא תהיה מיידית, כי יש למחוק את כל הדפים התלויים בהם.\nפעולות שייכשלו יירשמו ב[[Special:Log/pagetranslation|יומן תרגום הדפים]] ויהיה צורך לתקן אותן ידנית.",
+ "pagemigration": "העברת דף מתורגם",
+ "pagemigration-summary": "יש לציין דף תרגום ולשחזר כל תרגום שנעשה לפני שההרחבה Translate הופעלה בדף.",
+ "pm-import-button-label": "ייבוא",
+ "pm-savepages-button-label": "שמירה",
+ "pm-cancel-button-label": "ביטול",
+ "pm-pagename-placeholder": "נא להזין את שם הדף",
+ "pm-langcode-placeholder": "קוד השפה",
+ "pm-page-does-not-exist": "הדף $1 אינו קיים",
+ "pm-old-translations-missing": "$1 אינו מכיל תרגומים ישנים",
+ "pm-extra-units-warning": "ייתכן שקיימות כאן יחידות נספות. נא להתאים את המקור ואת יחידות התרגום.",
+ "pm-pagename-missing": "נא להזין את שם הדף",
+ "pm-langcode-missing": "נא להזין את קוד השפה",
+ "pm-add-icon-hover-text": "להוסיף יחידה למטה",
+ "pm-swap-icon-hover-text": "להחליף עם יחידה מעל",
+ "pm-delete-icon-hover-text": "למחוק יחידה",
+ "pm-pagetitle-invalid": "נא להזין כותרת דף תקינה",
+ "pm-summary-import": "דף מיובא באמצעות [[Special:PageMigration|העברת דף מתורגם]]",
+ "tpt-translate-title": "לאפשר תרגום של כותרת הדף",
+ "pp-save-summary": "הדף הוכן לתרגום",
+ "pagepreparation": "הכנת דף",
+ "pp-pagename-placeholder": "נא להזין את שם הדף",
+ "pp-prepare-button-label": "הכנה",
+ "pp-save-button-label": "שמירה",
+ "pp-save-message": "הדף נשמר באפשרותך [$1 לערוך] אותו.",
+ "pp-prepare-message": "הדף הוכן לתרגום. ר' את ההשוואה להלן. יש ללחוץ על הכפתור \"{{int:pp-save-button-label}} אם הכול בסדר!",
+ "pp-already-prepared-message": "נראה שהדף כבר הוכן לתרגום. אין שינויים בהשוואה לגרסה הקודמת.",
+ "pp-pagename-missing": "נא להזין את שם הדף.",
+ "pp-diff-old-header": "טקסט המקור",
+ "pp-diff-new-header": "טקסט שהוכן",
+ "tpt-unlink-confirm": "נא לאשר שאכן ברצונך להסיר את הדף הזה ממערכת התרגום.\nבורר השפות ושמות של דפים מתורגמים יפסיקו לפעול.\nניתן יהיה לערוך את דפי התרגום.",
+ "tpt-unlink-button": "הסרה ממערכת התרגום",
+ "tpt-unlink-summary": "הסרת דף ממערכת התרגום"
+}
diff --git a/MLEB/Translate/i18n/pagetranslation/hi.json b/MLEB/Translate/i18n/pagetranslation/hi.json
new file mode 100644
index 00000000..08cd1446
--- /dev/null
+++ b/MLEB/Translate/i18n/pagetranslation/hi.json
@@ -0,0 +1,32 @@
+{
+ "@metadata": {
+ "authors": [
+ "Ansumang",
+ "Siddhartha Ghai",
+ "संजीव कुमार"
+ ]
+ },
+ "pagetranslation": "पृष्ठ अनुवाद",
+ "tpt-section": "अनुवाद यूनिट $1",
+ "tpt-template": "पृष्ठ साँचा",
+ "tpt-diff-old": "पूर्व लेख",
+ "tpt-diff-new": "नया लेख",
+ "tpt-oldrevision": "$2, [[:$1]] का नवीनतम संस्करण नहीं है।\nकेवल नवीनतम संस्करण को अनुवाद के लिए चिह्नित किया जा सकता है।",
+ "tpt-saveok": "पृष्ठ [[:$1]] को $2 {{PLURAL:$2|अनुवाद इकाई|अनुवाद इकाइयों}} के साथ अनुवाद के लिए चिह्नित किया गया है।\nयह पृष्ठ <span class=\"plainlinks\">[$3 अनुवादित]</span> किया जा सकता है।",
+ "tpt-other-pages-title": "टूटा पृष्ठ",
+ "pt-movepage-list-translation": "अनुवाद पृष्ठ",
+ "pt-movepage-list-section": "अनुभाग पृष्ठ",
+ "pt-movepage-list-other": "अन्य उपपृष्ठ",
+ "pt-movepage-current": "सद्य सदस्यनाम:",
+ "pt-movepage-new": "नया नाम:",
+ "pt-movepage-reason": "कारण:",
+ "pt-deletepage-current": "पृष्ठ नाम:",
+ "pt-deletepage-reason": "कारण:",
+ "pt-deletepage-list-pages": "पृष्ठ तालिका हटाने के लिए",
+ "pt-deletepage-list-translation": "अनुवाद पृष्ठ",
+ "pt-deletepage-list-section": "अनुभाग पृष्ठ",
+ "pt-deletepage-list-other": "अन्य उपपृष्ठ",
+ "tpt-unlink-confirm": "कृपया पुष्टि करें कि आप वास्तव में इस पृष्ठ को अनुवाद निकाय से हटाना चाहते हो।\nभाषा चयनकर्ता और अनुवादित पृष्ठ नाम काम करना बन्द कर देंगे। अनुवाद पृष्ठ सम्पादनीय हो जायेगा।",
+ "tpt-unlink-button": "अनुवाद से निकालें",
+ "tpt-unlink-summary": "अनुवाद से निकाला गया पृष्ठ"
+}
diff --git a/MLEB/Translate/i18n/pagetranslation/hr.json b/MLEB/Translate/i18n/pagetranslation/hr.json
new file mode 100644
index 00000000..b5e4bb51
--- /dev/null
+++ b/MLEB/Translate/i18n/pagetranslation/hr.json
@@ -0,0 +1,38 @@
+{
+ "@metadata": {
+ "authors": [
+ "Ex13",
+ "Herr Mlinka",
+ "SpeedyGonsales"
+ ]
+ },
+ "pagetranslation": "Prijevod stranice",
+ "right-pagetranslation": "Označi inačice stranica za prijevod",
+ "tpt-desc": "Proširenje za prevođenje sadržaja stranica",
+ "tpt-section": "Grupa za prijevod $1",
+ "tpt-section-new": "Nova grupa za prijevod.\nIme: $1",
+ "tpt-section-deleted": "Grupa za prijevod $1",
+ "tpt-template": "Predložak stranice",
+ "tpt-templatediff": "Predložak stranice je promijenjen.",
+ "tpt-diff-old": "Prethodni tekst",
+ "tpt-diff-new": "Novi tekst",
+ "tpt-submit": "Označi ovu verziju za prijevod",
+ "tpt-sections-oldnew": "Novi i postojeći prijevodi",
+ "tpt-sections-deleted": "Obrisane grupe prijevoda",
+ "tpt-sections-template": "Predložak stranice za prijevod",
+ "tpt-nosuchpage": "Stranica $1 ne postoji",
+ "translate-tag-translate-link-desc": "Prevedi ovu stranicu",
+ "translate-tag-markthis": "Označi ovu stranicu za prijevod",
+ "tpt-languages-legend": "Drugi jezici:",
+ "pt-movepage-list-pages": "Popis stranica za premještanje",
+ "pt-movepage-list-other": "Ostale podstranice",
+ "pt-movepage-current": "Trenutačni naziv:",
+ "pt-movepage-new": "Novi naziv:",
+ "pt-movepage-reason": "Razlog:",
+ "pt-movepage-subpages": "Premjesti sve podstranice",
+ "pt-movepage-action-check": "Provjeri je li premještanje moguće",
+ "pt-movepage-action-perform": "Premjesti",
+ "pt-movepage-action-other": "Promijeni cilj",
+ "pt-movepage-intro": "Ova posebna stranica omogućava vam premještanje stranica koje su označene za prijevod.\nPremještanje nije trenutačno, jer mnoge stranice treba premjestiti.\nRed poslova će se koristiti za premještanje stranica.\nDok se stranice premještaju, nije moguće raditi na stranicama u pitanju.\nKvarovi/pogreške biti će prijavljene u evidenciji prijevoda i trebaju se ručno popraviti.",
+ "pt-movepage-logreason": "Dio prevodive stranice $1."
+}
diff --git a/MLEB/Translate/i18n/pagetranslation/hsb.json b/MLEB/Translate/i18n/pagetranslation/hsb.json
new file mode 100644
index 00000000..fbc5a543
--- /dev/null
+++ b/MLEB/Translate/i18n/pagetranslation/hsb.json
@@ -0,0 +1,155 @@
+{
+ "@metadata": {
+ "authors": [
+ "Michawiki",
+ "Mikławš"
+ ]
+ },
+ "pagetranslation": "Přełožowanje strony",
+ "right-pagetranslation": "Wersije strony za přełožowanje markěrować",
+ "action-pagetranslation": "přełožujomne strony zrjadować",
+ "tpt-desc": "Rozšěrjenje za přełožowanje wobsahowych stronow",
+ "tpt-section": "Přełožowanska jednotka $1",
+ "tpt-section-new": "Nowa přełožowanska jednotka. Mjeno: $1",
+ "tpt-section-deleted": "Přełožowanska jednotka $1",
+ "tpt-template": "Předłoha strony",
+ "tpt-templatediff": "Předłoha strony je so změniła.",
+ "tpt-diff-old": "Předchadny tekst",
+ "tpt-diff-new": "Nowy tekst",
+ "tpt-submit": "Tutu wersiju za přełožowanje markěrować",
+ "tpt-sections-oldnew": "Nowe a eksistowace přełožowanske jednotki",
+ "tpt-sections-deleted": "Wušmórnjene přełožowanske jednotki",
+ "tpt-sections-template": "Předłoha přełožowanskeje strony",
+ "tpt-action-nofuzzy": "Njeanuluj přełožki",
+ "tpt-badtitle": "Podate mjeno strony ($1) płaćiwy titul njeje",
+ "tpt-nosuchpage": "Strona $1 njeeksistuje",
+ "tpt-oldrevision": "$2 njeje aktualna wersija strony [[:$1]].\nJenož aktualne wersije hodźa so za přełožowanje markěrować.",
+ "tpt-notsuitable": "Strona $1 za přełožowanje přihódna njeje.\nZaswěsć, zo ma taflički <nowiki><translate></nowiki> a płaćiwu syntaksu.",
+ "tpt-saveok": "Strona [[:$1]] je so za přełožowanje z $2 {{PLURAL:$2|přełožujomnej jednotku|přełožujomnej jednotkomaj|přełožujomnymi jednotkami|přełožujomnymi jednotkami}} markěrowała.\nStrona hodźi so nětko <span class=\"plainlinks\">[$3 přełožować]</span>.",
+ "tpt-offer-notify": "Móžeš wo tutej stronje <span class=\"plainlinks\">[$1 přełožowarjow informować]</span>.",
+ "tpt-badsect": "\"$1\" płaćiwe mjeno za přełožowansku jednotku $2 njeje.",
+ "tpt-showpage-intro": "Deleka su nowe, eksistowace a zhašane přełožowanske jednotki nalistowane.\nPrjedy hač tutu wersiju za přełožowanje markěruješ, kontroluj, hač změny přełožowanskich jednotkow su miniměrowane, zo by njetrěbne dźěło za přełožowarjow wobešoł.",
+ "tpt-mark-summary": "Je tutu wersiju za přełožowanje markěrował",
+ "tpt-edit-failed": "Strona njeda so aktualizować: $1",
+ "tpt-duplicate": "Mjeno přełožkoweje jednotki $1 so wjace hač jedyn raz wužiwa.",
+ "tpt-already-marked": "Akutalna wersija tuteje strony je so hižo za přełožowanje markěrowała.",
+ "tpt-unmarked": "Strona $1 hižo njeje za přełožowanje markěrowana.",
+ "tpt-list-nopages": "Strony njejsu ani za přełožowanje markěrowali ani njejsu hotowe za přełožowanje.",
+ "tpt-new-pages-title": "Strony namjetowane za přełožk",
+ "tpt-old-pages-title": "Strony, kotrež so přełožuja",
+ "tpt-other-pages-title": "Wobškodźene strony",
+ "tpt-discouraged-pages-title": "Wuzamknjene strony",
+ "tpt-new-pages": "{{PLURAL:$1|Tuta strona wobsahuje|Tutej stronje|Tute strony wobsahuja|Tute strony wobsahuja}} tekst z přełožowanskimi tafličkimi, ale žana wersija {{PLURAL:$1|tuteje strony|tuteju stronow|tutych stronow|tutych stronow}} njeje tuchwilu za přełožowanje markěrowana.",
+ "tpt-old-pages": "Někajka wersija {{PLURAL:$1|tuteje strony|tuteju stronow|tutych stronow|tutych stronow}} je so za přełožowanje markěrowała.",
+ "tpt-other-pages": "Stara wersija {{PLURAL:$1|tuteje strony|tuteju stronow|tutych stronow|tutych stronow}} je za přełožowanje markěrowana,\nale aktualna wersija njehodźi so za přełožowanje markěrować.",
+ "tpt-discouraged-pages": "{{PLURAL:$1|Tuta strona|Tutej stronje|Tute strony|Tute strony}} {{PLURAL:$1|bu|buštej|buchu|buchu}} wot dalšeho přełoženja {{PLURAL:$1|wuzamknjena|wuzamknjenej|wuzamknjene|wuzamknjene}}.",
+ "tpt-select-prioritylangs": "Lisćina rěčnych kodow primarnych rěčow dźělenych přez komu:",
+ "tpt-select-prioritylangs-force": "Přełožkam do druhich rěčow hač primarnych rěčow zadźěwać",
+ "tpt-select-prioritylangs-reason": "Přičina:",
+ "tpt-sections-prioritylangs": "Primarne rěče",
+ "tpt-rev-mark": "za přełožowanje markěrować",
+ "tpt-rev-unmark": "z přełoženja wotstronić",
+ "tpt-rev-discourage": "wuzamknyć",
+ "tpt-rev-encourage": "wobnowić",
+ "tpt-rev-mark-tooltip": "Najnowšu wersiju tuteje strony za přełožowanje markěrować.",
+ "tpt-rev-unmark-tooltip": "Tutu stronu z přełoženja wotstronić",
+ "tpt-rev-discourage-tooltip": "Dalše přełožki na tutej stronje wuzamknyć.",
+ "tpt-rev-encourage-tooltip": "Tutu stronu za normalne přełoženje wobnowić.",
+ "translate-tag-translate-link-desc": "Tutu stronu přełožić",
+ "translate-tag-markthis": "Tutu stronu za přełožowanje markěrować",
+ "translate-tag-markthisagain": "Tuta strona ma <span class=\"plainlinks\">[$1 {{PLURAL:$1|změnu|změnje|změny|změnow}}]</span>, wot toho zo, bu posledni raz <span class=\"plainlinks\">[$2 za přełožowanje markěrowana]</span>.",
+ "translate-tag-hasnew": "Tuta strona wobsahuje <span class=\"plainlinks\">[$1 {{PLURAL:$1|změna, kotraž njeje markěrowana|změnje, kotrejž njejstej markěrowanej|změny, kotrež njejsu markěrowane|změnow, kotrež njejsu markěrowane}}]</span> za přełožowanje.",
+ "tpt-translation-intro": "Tuta strona je <span class=\"plainlinks\">[$1 přełožena wersija]</span> strony [[$2]] a $3 % přełožka je dokónčene a přełožk je aktualny.",
+ "tpt-languages-legend": "Druhe rěče:",
+ "tpt-languages-zero": "Přełožowanje za tutu rěč započeć",
+ "tpt-tab-translate": "Přełožić",
+ "tpt-target-page": "Tuta strona njeda so manulenje aktualizować.\nTuta strona je přełožk strony [[$1]] a přełožk hodźi so z pomocu [$2 Přełožić] aktualizować.",
+ "tpt-unknown-page": "Tutón mjenowy rum je za přełožki wobsahowych stronow wuměnjeny.\nStrona, kotruž pospytuješ wobdźěłać, po wšěm zdaću stronje markěrowanej za přełožowanje njewotpowěduje.",
+ "tpt-translation-restricted": "Přełožowanski administrator je přełožowanju tuteje strony do tuteje rěče zadźěwał.\n\nPřičina: $1",
+ "tpt-discouraged-language-force": "<strong>Tuta strona njehodźi so do $2 přełožić.</strong>\n\nPřełožowanski administrator je rozsudźił, zo tuta strona hodźi so jenož do $3 přełožować.",
+ "tpt-discouraged-language": "<strong>Přełožowanje do $2 nima prioritu za tutu stronu.</strong>\n\nPřełožowanski administrator je rozsudźił, fokus přełožowanskich procowanjow na $3 stajić.",
+ "tpt-discouraged-language-reason": "Přičina: $1",
+ "tpt-priority-languages": "Přełožowanski administrator je primarne rěče za tutu skupinu jako $1 nastajił.",
+ "tpt-render-summary": "Aktualizacija po nowej wersiji žórłoweje strony",
+ "tpt-download-page": "Stronu z přełožkami eksportować",
+ "aggregategroups": "Skupiny zjednoćić",
+ "tpt-aggregategroup-add": "Přidać",
+ "tpt-aggregategroup-save": "Składować",
+ "tpt-aggregategroup-add-new": "Nowu zjimansku skupinu přidać",
+ "tpt-aggregategroup-new-name": "Mjeno:",
+ "tpt-aggregategroup-new-description": "Wopisanje (opcionalne):",
+ "tpt-aggregategroup-remove-confirm": "Chceš tutu skupinu woprawdźe zhašeć?",
+ "tpt-aggregategroup-invalid-group": "Skupina njeeksistuje",
+ "pt-parse-open": "Asymetriska taflička &lt;translate>.\nPřełožowanska předłoha: <pre>$1</pre>",
+ "pt-parse-close": "Asymetriska taflička &lt;/translate>.\nPřełožowanska předłoha: <pre>$1</pre>",
+ "pt-parse-nested": "Zakšćikowane přełožowanske jednotki &lt;translate> njejsu dowolene.\nTekst taflički: <pre>$1</pre>",
+ "pt-shake-multiple": "Wjacore marki přełožowanskich jednotkow za jednu přełožowansku jednotku.\nTekst přełožowanskeje jednotki: <pre>$1</pre>",
+ "pt-shake-position": "Marki přełožowanskich jednotkow na njewočakowanym městnje.\nTekst přełožowanskeje jednotki: <pre>$1</pre>",
+ "pt-shake-empty": "Prózdna přełožowanska jednotka za marku \"$1\".",
+ "log-description-pagetranslation": "Protokol za akcije w zwisku z přełožowanskim systemom",
+ "log-name-pagetranslation": "Protokol přełožkow",
+ "logentry-pagetranslation-mark": "$1 je $3 za přełožowanje {{GENDER:$2|markěrował|markrowała}}",
+ "logentry-pagetranslation-unmark": "$1 je $3 z přełožowanja {{GENDER:$2|wotstronił|wotstroniła}}",
+ "logentry-pagetranslation-moveok": "$1 je přemjenowanje přełožujomneje strony $3 do $4 {{GENDER:$2|dokónčił|dokónčiła}}",
+ "logentry-pagetranslation-movenok": "$1 je při přesuwanju strony $3 do $4 na problem {{GENDER:$2|storčił|storčiła}}",
+ "logentry-pagetranslation-deletefok": "$1 je hašenje přełožujomneje strony $3 {{GENDER:$2|wotzamknył|wotzamknyła}}",
+ "logentry-pagetranslation-deletefnok": "$1 {{GENDER:$2|njemóžeše}} $3 zhašeć, kotraž k přełožujomnej stronje $4 słuša",
+ "logentry-pagetranslation-deletelok": "$1 je hašenje přełožujomneje strony $3 {{GENDER:$2|wotzamknył|wotzamknyła}}",
+ "logentry-pagetranslation-deletelnok": "$1 {{GENDER:$2|njemóžeše}} $3 zhašeć, kotraž k přełožowanskej stronje $4 słuša",
+ "logentry-pagetranslation-encourage": "$1 je přełožowanje strony $3 {{GENDER:$2|doporučił|doporučiła}}",
+ "logentry-pagetranslation-discourage": "$1 je wot přełožowanja strony $3 {{GENDER:$2|wotradźił|wotradźiła}}",
+ "logentry-pagetranslation-prioritylanguages-unset": "$1 je primarne rěče z přełožujomneje strony $3 {{GENDER:$2|wotstronił|wotstroniła}}",
+ "logentry-pagetranslation-prioritylanguages": "$1 je primarne rěče za přełožujomnu stronu $3 na $5 {{GENDER:$2|stajił|stajiła}}",
+ "logentry-pagetranslation-prioritylanguages-force": "$1 je rěče za přełožujomnu stronu $3 na $5 {{GENDER:$2|wobmjezował|wobmjezowała}}",
+ "logentry-pagetranslation-associate": "$1 je přełožujomnu stronu $3 metaskupinje $4 {{GENDER:$2|přidał|přidała}}",
+ "logentry-pagetranslation-dissociate": "$1 je přełožujomnu stronu $3 z metaskupiny $4 {{GENDER:$2|wotstronił|wotstroniła}}",
+ "pt-movepage-title": "Přełožujomnu stronu $1 přesunyć",
+ "pt-movepage-blockers": "Přełožujomna strona njeda so {{PLURAL:$1|slědowaceho zmylka|slědowaceju zmylkow|slědowacych zmylkow|slědowacych zmylkow}} dla do noweho mjena přesunyć:",
+ "pt-movepage-block-base-exists": "Cilowa přełožujomna strona \"[[:$1]]\" eksistuje.",
+ "pt-movepage-block-base-invalid": "Mjeno ciloweje přełožujomneje strony płaćiwy titul njeje.",
+ "pt-movepage-block-tp-exists": "Cilowa přełožowanska strona [[:$2]] eksistuje.",
+ "pt-movepage-block-tp-invalid": "Titul ciloweje přełožowanskeje strony za [[:$1]] by płaćiwy był (předołho?).",
+ "pt-movepage-block-section-exists": "Cilowa strona \"[[:$2]]\" za přełožowansku jednotku eksistuje.",
+ "pt-movepage-block-section-invalid": "Titul ciloweje strony za \"[[:$1]]\" za přełožowansku jednotku by njepłaćiwy był (předołho?).",
+ "pt-movepage-block-subpage-exists": "Cilowa podstrona [[:$2]] eksistuje.",
+ "pt-movepage-block-subpage-invalid": "Titul ciloweje podstrony za [[:$1]] by płaćiwy był (předołho?).",
+ "pt-movepage-list-pages": "Lisćina strony, kotrež maja so přesunyć",
+ "pt-movepage-list-translation": "{{PLURAL:$1|Přełožowanska strona|Přełožowanskej stronje|Přełožowanske strony}}",
+ "pt-movepage-list-section": "{{PLURAL:$1|Strona|Stronje|Strony}} přełožowanskich jednotkow",
+ "pt-movepage-list-other": "{{PLURAL:$1|Druha podstrona|Druhej podstronje|Druhe podstrony}}",
+ "pt-movepage-list-count": "W cyłku {{PLURAL:$1|ma so $1 strona|matej so $1 stronje|maja so $1 strony|ma so $1 stronow}} přesunyć.",
+ "pt-movepage-legend": "Přełožujomnu stronu přesunyć",
+ "pt-movepage-current": "Aktualne mjeno:",
+ "pt-movepage-new": "Nowe mjeno:",
+ "pt-movepage-reason": "Přičina:",
+ "pt-movepage-subpages": "Wšě podstrony přesunyć",
+ "pt-movepage-action-check": "Kontrolować, hač přesunjenje je móžno",
+ "pt-movepage-action-perform": "Přesunyć",
+ "pt-movepage-action-other": "Cil změnić",
+ "pt-movepage-intro": "Tuta specialna strona zmóžnja přesuwanje stronow, kotrež su za přełožowanje markěrowane.\nPřesunjenje so hnydom njestawa, dokelž wjele stronow dyrbi so přesunyć.\nPři přesuwanju stronow njeje móžno, z wotpowědnymi stronami do zwiska stupić.\nZmylki budu so w [[Special:Log/pagetranslation|přełožowanskim protokolu strony]] protokolować a dyrbja so manuelnje skorigować.",
+ "pt-movepage-logreason": "Dźěl přełožujomneje strony $1.",
+ "pt-movepage-started": "Zakładna strona je nětko přesunjena.\nProšu skontroluj [[Special:Log/pagetranslation|přełožowanski protokol strony]] za zmylkami a zdźělenku wukonjenja.",
+ "pt-locked-page": "Tuta strona je zawrjena, dokelž přełožujomna strona so runje přesuwa.",
+ "pt-deletepage-lang-title": "Přełožena strona $1 so haša.",
+ "pt-deletepage-full-title": "Přełožujomna strona $1 so haša.",
+ "pt-deletepage-invalid-title": "Podata strona płaćiwa njeje.",
+ "pt-deletepage-invalid-text": "Podata strona ani přełožujomna strona ani přełožowanska strona njeje.",
+ "pt-deletepage-action-check": "Strony nalistować, kotrež maja so zhašeć",
+ "pt-deletepage-action-perform": "Zhašeć",
+ "pt-deletepage-action-other": "Cil změnić",
+ "pt-deletepage-lang-legend": "Přełoženu stronu wušmórnyć",
+ "pt-deletepage-full-legend": "Přełožujomnu stronu wušmórnyć",
+ "pt-deletepage-any-legend": "Přełožujomnu stronu abo přełožowansku stronu zhašeć",
+ "pt-deletepage-current": "Mjeno strony:",
+ "pt-deletepage-reason": "Přičina:",
+ "pt-deletepage-subpages": "Wšě podstrony wušmórnyć",
+ "pt-deletepage-list-pages": "Lisćina stronow, kotrež maja so zhašeć",
+ "pt-deletepage-list-translation": "Přełožene strony",
+ "pt-deletepage-list-section": "Strony přełožowanskich jednotkow",
+ "pt-deletepage-list-other": "Druhe podstrony",
+ "pt-deletepage-list-count": "W cyłku {{PLURAL:$1|ma so $1 strona|matej so $1 stronje|maja so $1 strony|ma so $1 stronow}} zhašeć.",
+ "pt-deletepage-full-logreason": "Dźěl přełožujomneje strony $1.",
+ "pt-deletepage-lang-logreason": "Dźěl přełoženeje strony $1.",
+ "pt-deletepage-started": "Prošu přepruwuj [[Special:Log/pagetranslation|protokol přełožkow]] za zmylkami a wuwjedźenskimi zdźělenkami.",
+ "pt-deletepage-intro": "Tuta specialna strona ći zmóžnja, cyłu přełožujomnnu stronu abo jednotliwu přełožwansku stronu w rěči zhašeć.\nZhašenje njestanje so hnydom, dokelž wšě strony, kotrež z njej zwisuja, dyrbja so tež zhašeć.\nZmylki budu so w [[Special:Log/pagetranslation|protokolu přełožkow]] protokolować a wone dyrbja so manuelnje porjedźić."
+}
diff --git a/MLEB/Translate/i18n/pagetranslation/ht.json b/MLEB/Translate/i18n/pagetranslation/ht.json
new file mode 100644
index 00000000..8a0a9dfb
--- /dev/null
+++ b/MLEB/Translate/i18n/pagetranslation/ht.json
@@ -0,0 +1,64 @@
+{
+ "@metadata": {
+ "authors": [
+ "Boukman"
+ ]
+ },
+ "pagetranslation": "Tradiksyon paj yo",
+ "right-pagetranslation": "Make vèsyon paj yo pou tradui",
+ "tpt-desc": "Ekstansyon pou tradui paj kontni yo",
+ "tpt-section": "Inite tradiksyon $1",
+ "tpt-section-new": "Nouvo inite tradiksyon.\nNon: $1",
+ "tpt-section-deleted": "Inite tradiksyon $1",
+ "tpt-template": "Modèl pou paj",
+ "tpt-templatediff": "Modèl pou paj la chanje",
+ "tpt-diff-old": "Teks presedan",
+ "tpt-diff-new": "Nouvo tèks",
+ "tpt-submit": "Make vèsyon sa pou tradui",
+ "tpt-sections-oldnew": "Inite tradiksyon ki deja egziste ak nouvo yo",
+ "tpt-sections-deleted": "Inite tradiksyon ki efase",
+ "tpt-sections-template": "Modèl pou paj tradiksyon",
+ "tpt-action-nofuzzy": "Pa rann tradiksyon envalid",
+ "tpt-badtitle": "Non ou bay pou paj ($1) pa yon tit ki bon",
+ "tpt-nosuchpage": "Paj $1 pa egziste",
+ "tpt-oldrevision": "$2 se pa dènye vèsyon paj [[:$1]].\nSe sèlman dènye vèsyon ki kapab make pou tradui.",
+ "tpt-notsuitable": "Paj $1 pa bon pou tradui.\nAsire w li gen etikèt <nowiki><translate></nowiki> epi ke li gen yon sentaks ki bon.",
+ "tpt-saveok": "Paj [[:$1]] te make pou yo tradui l ak 2 {{PLURAL:$2|inite tradiksyon|inite tradiksyon yo}}.\nPaj sa kapab <span class=\"plainlinks\">[$3 tradui]</span> kounye a.",
+ "tpt-badsect": "\"$1\" pa yon bon non pou inite tradiksyon $2.",
+ "tpt-showpage-intro": "Anba, gen yon lis tout sèksyon ki nouvo, sa ki egzsite ak sa ki te efase yo.\nAnvan ou make vèsyon sa pou yo tradui, verifye ki chanjman nan seksyon yo pa anpil, yon fason pou pa bay tradiktè yo travay ki pa nesesè.",
+ "tpt-mark-summary": "Make vèsyon sa pou tradui",
+ "tpt-edit-failed": "Pa t kapab mete paj sa ajou: $1",
+ "tpt-already-marked": "Dènye vèsyon paj sa te make pou yo tradui l deja.",
+ "tpt-unmarked": "Paj $1 pa make pou tradui ankò.",
+ "tpt-list-nopages": "Pa gen okenn paj ki make pou tradui oubyen ki pare pou sa.",
+ "tpt-new-pages": "{{PLURAL:$1|Paj sa genyen|Paj sa yo genyen}} teks ak baliz tradiksyon, men pa gen okenn vèsyon {{PLURAL:$1|paj sa|paj sa yo}} ki make pou tradui.",
+ "tpt-old-pages": "Kèk nan vèsyon {{PLURAL:$1|paj sa|paj sa yo}} te make pou tradui.",
+ "tpt-other-pages": "{{PLURAL:$1|Yon ansyen vèsyon paj sa a|Ansyen vèsyon paj sa yo}} make pou tradui,\nmen dènye {{PLURAL:$1|vèsyon|vèsyon yo}} pa ka make pou tradui.",
+ "tpt-rev-unmark": "Retire paj sa nan tradiksyon",
+ "translate-tag-translate-link-desc": "Tradui paj sa a",
+ "translate-tag-markthis": "Make paj sa pou tradui",
+ "translate-tag-markthisagain": "Paj sa te <span class=\"plainlinks\">[$1 chanje]</span> depi li te <span class=\"plainlinks\">[$2 make pou tradui]</span>.",
+ "translate-tag-hasnew": "Paj sa genyen <span class=\"plainlinks\">[$1 chanjman]</span> ki pa make pou tradui.",
+ "tpt-translation-intro": "Paj sa a, se yon <span class=\"plainlinks\">[$1 vèsyon ki tradui]</span> de paj [[$2]], epi tradiksyon a fèt a $3%.",
+ "tpt-languages-legend": "Lòt lang yo:",
+ "tpt-target-page": "Paj sa a, se yon tradiksyon paj [[$1]] epi ou kapab mete a jou tradiksyon an lè ou itilize [$2 zouti tradiksyon an].",
+ "tpt-unknown-page": "Espas non sa a rezève pou tradiksyon paj yo.\nPaj w ap eseye modifye pa sanble koresponn ak yon paj ki make pou tradiksyon.",
+ "tpt-render-summary": "N ap mete ajou pou nou genyen nouvo vèsyon paj sous la.",
+ "tpt-download-page": "Ekspòte paj ki gen tradiksyon",
+ "pt-parse-open": "Baliz &lt;translate> pa balanse.\nModèle tradiksyon: <pre>$1</pre>",
+ "pt-parse-close": "Baliz &lt;/translate> pa balanse.\nModèle tradiksyon: <pre>$1</pre>",
+ "pt-parse-nested": "Seksyon enbrike &lt;translate> pa otorize.\nTeks baliz la: <pre>$1</pre>",
+ "pt-movepage-list-pages": "Lis paj yo pou deplase",
+ "pt-movepage-list-translation": "Paj tradiksyon",
+ "pt-movepage-list-section": "Paj seksyon",
+ "pt-movepage-list-other": "Lòt sou-paj",
+ "pt-movepage-list-count": "$1 {{PLURAL:$1|paj|paj}} total pou deplase.",
+ "pt-movepage-legend": "Deplase paj ki ka tradui.",
+ "pt-movepage-current": "Non aktyèl:",
+ "pt-movepage-new": "Nouvo non:",
+ "pt-movepage-reason": "Poukisa:",
+ "pt-movepage-subpages": "Deplase tout sou-paj yo",
+ "pt-movepage-action-check": "Gade si deplasman an posib",
+ "pt-movepage-action-perform": "Fè deplasman an",
+ "pt-movepage-action-other": "Chanje sib"
+}
diff --git a/MLEB/Translate/i18n/pagetranslation/hu.json b/MLEB/Translate/i18n/pagetranslation/hu.json
new file mode 100644
index 00000000..ff7b98ff
--- /dev/null
+++ b/MLEB/Translate/i18n/pagetranslation/hu.json
@@ -0,0 +1,110 @@
+{
+ "@metadata": {
+ "authors": [
+ "Dani",
+ "Dj",
+ "Glanthor Reviol",
+ "Misibacsi",
+ "Xbspiro",
+ "Csega",
+ "Tacsipacsi"
+ ]
+ },
+ "pagetranslation": "Lap fordítása",
+ "right-pagetranslation": "Lapok változatainak megjelölése fordítandónak",
+ "action-pagetranslation": "fordítható oldalak kezelése",
+ "tpt-desc": "Kiterjesztés lapok fordításához",
+ "tpt-section": "$1 fordítási egység",
+ "tpt-section-new": "Új fordítási egység.\nNév: $1",
+ "tpt-section-deleted": "$1 fordítási egység",
+ "tpt-template": "Lapsablon",
+ "tpt-templatediff": "A lapsablon megváltozott.",
+ "tpt-diff-old": "Előző szöveg",
+ "tpt-diff-new": "Új szöveg",
+ "tpt-submit": "A változat megjelölése fordításra.",
+ "tpt-sections-oldnew": "Új és meglevő fordítási egységek",
+ "tpt-sections-deleted": "Törölt fordítási egységek",
+ "tpt-sections-template": "Fordítási lapsablonok",
+ "tpt-action-nofuzzy": "Ne érvénytelenítse a fordításokat",
+ "tpt-badtitle": "A megadott lapnév ($1) nem érvényes cím",
+ "tpt-nosuchpage": "A(z) $1 lap nem létezik.",
+ "tpt-oldrevision": "$2 nem a(z) [[:$1]] lap legutolsó változata.\nCsak a legfrissebb változatok jelölhetőek meg fordításra.",
+ "tpt-notsuitable": "A(z) $1 lap nem alkalmas a fordításra.\nEllenőrizd, hogy szerepelnek-e benne <nowiki><translate></nowiki> tagek, és helyes-e a szintaxisa.",
+ "tpt-saveok": "A(z) [[:$1]] lap $2 fordítási egységgel megjelölve fordításra.\nA lap mostantól <span class=\"plainlinks\">[$3 lefordítható]</span>.",
+ "tpt-badsect": "„$1” nem érvényes név a(z) $2 fordítási egységnek.",
+ "tpt-showpage-intro": "Alább az új, már létező és törölt szakaszok felsorolása látható.\nMielőtt fordításra jelölöd ezt a változatot, ellenőrizd hogy a szakaszok változásai minimálisak, elkerülendő a felesleges munkát a fordítóknak.",
+ "tpt-mark-summary": "Változat megjelölve fordításra",
+ "tpt-edit-failed": "Nem sikerült frissíteni a lapot: $1",
+ "tpt-already-marked": "A lap legutolsó verziója már meg van jelölve fordításra.",
+ "tpt-unmarked": "A(z) $1 lap most már nincs megjelölve fordításra.",
+ "tpt-list-nopages": "Nincsenek sem fordításra kijelölt, sem kijelölésre kész lapok.",
+ "tpt-new-pages-title": "Fordításra jelölt lapok",
+ "tpt-old-pages-title": "Fordítás alatt lévő lapok",
+ "tpt-other-pages-title": "Hibás lapok",
+ "tpt-discouraged-pages-title": "Nem javasolt lapok",
+ "tpt-new-pages": "{{PLURAL:$1|Ez a lap tartalmaz|Ezek a lapok tartalmaznak}} fordítási tagekkel ellátott szöveget, de jelenleg egyik {{PLURAL:$1|változata|változatuk}} sincs megjelölve fordításra.",
+ "tpt-old-pages": "{{PLURAL:$1|Ennek a lapnak|Ezeknek a lapoknak}} néhány változata meg van jelölve fordításra.",
+ "tpt-other-pages": "A lap korábbi {{PLURAL:$1|változata|változatai}} fordíthatónak voltak megjelölve, de a legutóbbi {{PLURAL:$1|változatot|változatokat}} nem lehet megjelölni fordításra.",
+ "tpt-select-prioritylangs-reason": "Ok:",
+ "tpt-sections-prioritylangs": "Kiemelt nyelvek",
+ "tpt-rev-mark": "megjelölés fordításra",
+ "tpt-rev-unmark": "lap eltávolítása a fordításból",
+ "tpt-rev-discourage": "nem javasolt",
+ "tpt-rev-encourage": "visszaállít",
+ "translate-tag-translate-link-desc": "A lap fordítása",
+ "translate-tag-markthis": "Lap megjelölése fordításra",
+ "translate-tag-markthisagain": "Ezen a lapon történtek <span class=\"plainlinks\">[$1 változtatások]</span>, mióta utoljára <span class=\"plainlinks\">[$2 megjelölték fordításra]</span>.",
+ "translate-tag-hasnew": "Ez a lap tartalmaz <span class=\"plainlinks\">[$1 változtatásokat]</span>, amelyek nincsenek fordításra jelölve.",
+ "tpt-translation-intro": "Ez a(z) [[$2]] lap egy <span class=\"plainlinks\">[$1 lefordított változata]</span>, és a fordítás $3%-a kész és friss.",
+ "tpt-languages-legend": "Más nyelvek:",
+ "tpt-languages-nonzero": "$1 (lefordítva: $2%)",
+ "tpt-tab-translate": "Fordítás",
+ "tpt-target-page": "Ezt a lapot nem lehet kézzel frissíteni.\nA(z) [[$1]] lap fordítása, és a fordítását [$2 a fordítás segédeszköz] segítségével lehet frissíteni.",
+ "tpt-unknown-page": "Ez a névtér a tartalmi lapok fordításainak van fenntartva.\nA lap, amit szerkeszteni próbálsz, úgy tűnik hogy nem egyezik egy fordításra jelölt lappal sem.",
+ "tpt-discouraged-language": "<strong>$2 — a fordítás erre a nyelvre nem a legfontosabb feladat.</strong>\n\nAz adminisztrátori javaslat szerint a legfontosabb nyelvek a következők: $3.\n\nKérjük, ha beszéled ezek közül valamelyiket, fontold meg, hogy inkább arra a nyelvre fordítasz előbb: munkádnak így többek láthatják hasznát.",
+ "tpt-render-summary": "Frissítés, hogy megegyezzen a forráslap új változatával",
+ "tpt-download-page": "Lap exportálása fordításokkal együtt",
+ "aggregategroups": "Összesített csoportok",
+ "tpt-aggregategroup-add": "Hozzáad",
+ "tpt-aggregategroup-save": "Mentés",
+ "tpt-aggregategroup-add-new": "Új egyesített csoport hozzáadása",
+ "tpt-aggregategroup-new-name": "Név:",
+ "tpt-aggregategroup-new-description": "Leírás (opcionális):",
+ "tpt-aggregategroup-remove-confirm": "Biztosan törölni szeretné ezt az összesített csoportot?",
+ "tpt-aggregategroup-invalid-group": "Csoport nem létezik",
+ "pt-parse-open": "Páratlan &lt;translate> tag.\nFordítási sablon: <pre>$1</pre>",
+ "pt-parse-close": "Páratlan &lt;/translate> tag.\nFordítási sablon: <pre>$1</pre>",
+ "pt-parse-nested": "Egymásba ágyazott &lt;translate> szakaszok nem engedélyezettek.\nElem szövege: <pre>$1</pre>",
+ "log-description-pagetranslation": "A lapfordító rendszerhez kapcsolódó műveletek naplója",
+ "log-name-pagetranslation": "Oldalfordítási napló",
+ "logentry-pagetranslation-mark": "$1 {{GENDER:$2|megjelölte}} a(z) $3 lapot fordításra",
+ "pt-movepage-title": "A(z) $1 fordítható lap átnevezése",
+ "pt-movepage-blockers": "Nem lehet átnevezni a fordítható lapot az új névre a következő {{PLURAL:$1|hiba|hibák}} miatt:",
+ "pt-movepage-list-pages": "Átnevezendő lapok listája",
+ "pt-movepage-list-translation": "Fordítható {{PLURAL:$1|lap|lapok}}",
+ "pt-movepage-list-section": "Fordítási egység {{PLURAL:$1|lap|lapok}}",
+ "pt-movepage-list-other": "További {{PLURAL:$1|allap|allapok}}",
+ "pt-movepage-list-count": "Összesen {{PLURAL:$1|egy|$1}} lapot kell átnevezni.",
+ "pt-movepage-legend": "Fordítható lap átnevezése",
+ "pt-movepage-current": "Jelenlegi név:",
+ "pt-movepage-new": "Új név:",
+ "pt-movepage-reason": "Indoklás:",
+ "pt-movepage-subpages": "Összes allap átnevezése",
+ "pt-movepage-action-check": "Ellenőrizze, hogy az átnevezés lehetséges-e",
+ "pt-movepage-action-perform": "Átnevezés végrehajtása",
+ "pt-movepage-action-other": "Cél megváltoztatása",
+ "pt-movepage-logreason": "A(z) $1 fordítható lap része",
+ "pt-deletepage-action-perform": "Törlés végrehajtása",
+ "pt-deletepage-action-other": "Cél megváltoztatása",
+ "pt-deletepage-lang-legend": "Fordítási lap törlése",
+ "pt-deletepage-full-legend": "Fordítható lap törlésre",
+ "pt-deletepage-current": "Lap neve:",
+ "pt-deletepage-reason": "Ok:",
+ "pt-deletepage-subpages": "Összes allap törlése",
+ "pt-deletepage-list-pages": "Törlendő lapok listája",
+ "pagemigration": "Fordítási oldal migráció",
+ "pm-swap-icon-hover-text": "Csere az alábbi egységgel",
+ "pm-delete-icon-hover-text": "Egység törlése",
+ "pp-save-button-label": "Mentés",
+ "pp-diff-old-header": "Forrás szöveg"
+}
diff --git a/MLEB/Translate/i18n/pagetranslation/ia.json b/MLEB/Translate/i18n/pagetranslation/ia.json
new file mode 100644
index 00000000..650d1c94
--- /dev/null
+++ b/MLEB/Translate/i18n/pagetranslation/ia.json
@@ -0,0 +1,176 @@
+{
+ "@metadata": {
+ "authors": [
+ "McDutchie"
+ ]
+ },
+ "pagetranslation": "Traduction de paginas",
+ "right-pagetranslation": "Marcar versiones de paginas pro traduction",
+ "action-pagetranslation": "gerer paginas traducibile",
+ "tpt-desc": "Extension pro traducer paginas de contento",
+ "tpt-section": "Unitate de traduction $1",
+ "tpt-section-new": "Nove unitate de traduction. Nomine: $1",
+ "tpt-section-deleted": "Unitate de traduction $1",
+ "tpt-template": "Patrono de pagina",
+ "tpt-templatediff": "Le patrono del pagina ha cambiate.",
+ "tpt-diff-old": "Texto anterior",
+ "tpt-diff-new": "Texto nove",
+ "tpt-submit": "Marcar iste version pro traduction",
+ "tpt-sections-oldnew": "Unitates de traduction nove e existente",
+ "tpt-sections-deleted": "Unitates de traduction delite",
+ "tpt-sections-template": "Patrono de pagina de traduction",
+ "tpt-action-nofuzzy": "Non invalidar traductiones",
+ "tpt-badtitle": "Le nomine de pagina specificate ($1) non es un titulo valide",
+ "tpt-nosuchpage": "Le pagina $1 non existe",
+ "tpt-oldrevision": "$2 non es le version le plus recente del pagina [[:$1]].\nSolmente le versiones le plus recente pote esser marcate pro traduction.",
+ "tpt-notsuitable": "Le pagina $1 non es traducibile.\nAssecura que illo contine etiquettas <nowiki><translate></nowiki> e ha un syntaxe valide.",
+ "tpt-saveok": "Le pagina [[:$1]] ha essite marcate pro traduction con $2 {{PLURAL:$2|unitate|unitates}} de traduction.\nLe pagina pote ora esser <span class=\"plainlinks\">[$3 traducite]</span>.",
+ "tpt-offer-notify": "Tu pote <span class=\"plainlinks\">[$1 notificar le traductores]</span> sur iste pagina.",
+ "tpt-badsect": "\"$1\" non es un nomine valide pro le unitate de traduction $2.",
+ "tpt-showpage-intro": "In basso es listate le unitates de traduction nove, existente e delite.\nAnte de marcar iste version pro traduction, verifica que le modificationes al unitates de traduction sia minimisate pro evitar labor innecessari pro traductores.",
+ "tpt-mark-summary": "Marcava iste version pro traduction",
+ "tpt-edit-failed": "Non poteva actualisar le pagina: $1",
+ "tpt-duplicate": "Le nomine de unitate de traduction \"$1\" es usate plus de un vice.",
+ "tpt-already-marked": "Le version le plus recente de iste pagina ha jam essite marcate pro traduction.",
+ "tpt-unmarked": "Le pagina $1 non es plus marcate pro traduction.",
+ "tpt-list-nopages": "Il non ha paginas marcate pro traduction, ni paginas preparate pro isto.",
+ "tpt-new-pages-title": "Paginas proponite pro traduction",
+ "tpt-old-pages-title": "Paginas in traduction",
+ "tpt-other-pages-title": "Paginas defectuose",
+ "tpt-discouraged-pages-title": "Paginas discoragiate",
+ "tpt-new-pages": "Iste {{PLURAL:$1|pagina|paginas}} contine texto con etiquettas de traduction, ma nulle version de iste {{PLURAL:$1|pagina|paginas}} es actualmente marcate pro traduction.",
+ "tpt-old-pages": "Alcun {{PLURAL:$1|version de iste pagina|versiones de iste paginas}} ha essite marcate pro traduction.",
+ "tpt-other-pages": "{{PLURAL:$1|Un ancian version de iste pagina|Ancian versiones de iste paginas}} es marcate pro traduction,\nma le ultime {{PLURAL:$1|version|versiones}} non pote esser marcate pro traduction.",
+ "tpt-discouraged-pages": "Le ulterior traduction de iste {{PLURAL:$1|pagina|paginas}} es discoragiate.",
+ "tpt-select-prioritylangs": "Lista de linguas prioritari separate per commas:",
+ "tpt-select-prioritylangs-force": "Impedir le traduction in linguas non prioritari",
+ "tpt-select-prioritylangs-reason": "Motivo:",
+ "tpt-sections-prioritylangs": "Linguas prioritari",
+ "tpt-rev-mark": "marcar pro traduction",
+ "tpt-rev-unmark": "remover del traduction",
+ "tpt-rev-discourage": "discoragiar",
+ "tpt-rev-encourage": "restaurar",
+ "tpt-rev-mark-tooltip": "Marcar le ultime version de iste pagina pro traduction.",
+ "tpt-rev-unmark-tooltip": "Remover iste pagina del traduction.",
+ "tpt-rev-discourage-tooltip": "Discoragiar ulterior traductiones de iste pagina.",
+ "tpt-rev-encourage-tooltip": "Restaurar iste pagina al traduction normal.",
+ "translate-tag-translate-link-desc": "Traducer iste pagina",
+ "translate-tag-markthis": "Marcar iste pagina pro traduction",
+ "translate-tag-markthisagain": "Iste pagina ha <span class=\"plainlinks\">[$1 modificationes]</span> depost le ultime vice que illo esseva <span class=\"plainlinks\">[$2 marcate pro traduction]</span>.",
+ "translate-tag-hasnew": "Iste pagina contine <span class=\"plainlinks\">[$1 modificationes]</span> le quales non ha essite marcate pro traduction.",
+ "tpt-translation-intro": "Iste pagina es un <span class=\"plainlinks\">[$1 version traducite]</span> del pagina [[$2]] e le traduction es complete a $3%.",
+ "tpt-languages-legend": "Altere linguas:",
+ "tpt-languages-zero": "Comenciar le traduction in iste lingua",
+ "tpt-tab-translate": "Traducer",
+ "tpt-target-page": "Iste pagina non pote esser actualisate manualmente.\nIste pagina es un traduction del pagina [[$1]] e le traduction pote esser actualisate con le [$2 instrumento de traduction].",
+ "tpt-unknown-page": "Iste spatio de nomines es reservate pro traductiones de paginas de contento.\nLe pagina que tu vole modificar non pare corresponder con alcun pagina marcate pro traduction.",
+ "tpt-translation-restricted": "Le traduction de iste pagina in iste lingua ha essite impedite per un administrator de traductiones.\n\nMotivo: $1",
+ "tpt-discouraged-language-force-header": "Iste pagina non pote esser traducite in $1.",
+ "tpt-discouraged-language-force-content": "Un administrator de traductiones ha decidite que iste pagina pote esser traducite solmente in $1.",
+ "tpt-discouraged-language-header": "Le traduction in $1 non es un prioritate pro iste pagina.",
+ "tpt-discouraged-language-content": "Un administrator de traductiones ha decidite de concentrar le effortios al traduction in $1.",
+ "tpt-discouraged-language-force": "<strong>Iste pagina non pote esser traducite in $2.</strong>\n\nUn administrator de traductiones ha decidite que iste pagina pote esser traducite solmente in $3.",
+ "tpt-discouraged-language": "<strong>Le traduction in $2 non es un prioritate pro iste paigna.</strong>\n\nUn administrator de traductiones ha decidite de concentrar le effortios al traduction in $3.",
+ "tpt-discouraged-language-reason": "Motivo: $1",
+ "tpt-priority-languages": "Un administrator de traduction ha definite le linguas prioritari pro iste gruppo como $1.",
+ "tpt-render-summary": "Actualisation a un nove version del pagina de origine",
+ "tpt-download-page": "Exportar pagina con traductiones",
+ "aggregategroups": "Gruppos aggregate",
+ "tpt-aggregategroup-add": "Adder",
+ "tpt-aggregategroup-save": "Salveguardar",
+ "tpt-aggregategroup-add-new": "Adder un nove gruppo aggregate",
+ "tpt-aggregategroup-new-name": "Nomine:",
+ "tpt-aggregategroup-new-description": "Description (optional):",
+ "tpt-aggregategroup-remove-confirm": "Es tu secur de voler deler iste gruppo aggregate?",
+ "tpt-aggregategroup-invalid-group": "Gruppo non existe",
+ "tpt-aggregategroup-edit-name": "Nomine:",
+ "tpt-aggregategroup-update": "Salveguardar",
+ "tpt-aggregategroup-update-cancel": "Cancellar",
+ "pt-parse-open": "Etiquetta &lt;translate> asymmetric.\nPatrono de traduction: <pre>$1</pre>",
+ "pt-parse-close": "Etiquetta &lt;/translate> asymmetric.\nPatrono de traduction: <pre>$1</pre>",
+ "pt-parse-nested": "Le unitates de traduction &lt;translate> annidate non es permittite.\nTexto del etiquetta: <pre>$1</pre>",
+ "pt-shake-multiple": "Il ha multiple marcatores de unitate de traduction pro un sol unitate de traduction.\nTexto del unitate de traduction: <pre>$1</pre>",
+ "pt-shake-position": "Il ha marcatores de unitate de traduction in un position inexpectate.\nTexto del unitate de traduction: <pre>$1</pre>",
+ "pt-shake-empty": "Unitate de traduction vacue pro le marcator \"$1\".",
+ "log-description-pagetranslation": "Registro de actiones ligate al systema de traduction de paginas",
+ "log-name-pagetranslation": "Registro de traduction de paginas",
+ "logentry-pagetranslation-mark": "$1 {{GENDER:$2|marcava}} $3 pro traduction",
+ "logentry-pagetranslation-unmark": "$1 {{GENDER:$2|removeva}} $3 del paginas a traducer",
+ "logentry-pagetranslation-moveok": "$1 {{GENDER:$2|completava}} le renomination del pagina traducibile $3 a $4",
+ "logentry-pagetranslation-movenok": "$1 {{GENDER:$2|incontrava}} un problema durante le renomination del pagina $3 a $4",
+ "logentry-pagetranslation-deletefok": "$1 {{GENDER:$2|completava}} le deletion del pagina traducibile $3",
+ "logentry-pagetranslation-deletefnok": "$1 {{GENDER:$2|non succedeva}} a deler $3 le qual pertine al pagina traducibile $4",
+ "logentry-pagetranslation-deletelok": "$1 {{GENDER:$2|completava}} le deletion del pagina traducibile $3",
+ "logentry-pagetranslation-deletelnok": "$1 {{GENDER:$2|non succedeva}} a deler $3 le qual pertine al pagina traducibile $4",
+ "logentry-pagetranslation-encourage": "$1 {{GENDER:$2|incoragiava}} le traduction de $3",
+ "logentry-pagetranslation-discourage": "$1 {{GENDER:$2|discoragiava}} le traduction de $3",
+ "logentry-pagetranslation-prioritylanguages-unset": "$1 {{GENDER:$2|removeva}} linguas prioritari del pagina traducibile $3",
+ "logentry-pagetranslation-prioritylanguages": "$1 {{GENDER:$2|definiva}} le linguas prioritari del pagina traducibile $3 como $5",
+ "logentry-pagetranslation-prioritylanguages-force": "$1 {{GENDER:$2|limitava}} le linguas prioritari del pagina traducibile $3 a $5",
+ "logentry-pagetranslation-associate": "$1 {{GENDER:$2|addeva}} le pagina traducibile $3 al gruppo aggregate $4",
+ "logentry-pagetranslation-dissociate": "$1 {{GENDER:$2|removeva}} le pagina traducibile $3 del gruppo aggregate $4",
+ "pt-movepage-title": "Renominar le pagina traducibile $1",
+ "pt-movepage-blockers": "Le pagina traducibile non pote esser renominate a causa del sequente {{PLURAL:$1|error|errores}}:",
+ "pt-movepage-block-base-exists": "Le pagina traducibile de destination \"[[:$1]]\" jam existe.",
+ "pt-movepage-block-base-invalid": "Le nomine del pagina traducibile de destination non es un titulo valide.",
+ "pt-movepage-block-tp-exists": "Le pagina de traduction de destination [[:$2]] existe.",
+ "pt-movepage-block-tp-invalid": "Le titulo del pagina de traduction de destination pro [[:$1]] esserea invalide (troppo longe?).",
+ "pt-movepage-block-section-exists": "Le pagina de destination \"[[:$2]]\" pro le unitate de traduction jam existe.",
+ "pt-movepage-block-section-invalid": "Le titulo del pagina de destination pro \"[[:$1]]\" pro le unitate de traduction esserea invalide (troppo longe?).",
+ "pt-movepage-block-subpage-exists": "Le subpagina de destination [[:$2]] existe.",
+ "pt-movepage-block-subpage-invalid": "Le titulo del subpagina de destination pro [[:$1]] esserea invalide (troppo longe?).",
+ "pt-movepage-list-pages": "Lista de paginas a renominar",
+ "pt-movepage-list-translation": "{{PLURAL:$1|Pagina|Paginas}} de traduction",
+ "pt-movepage-list-section": "{{PLURAL:$1|Pagina|Paginas}} de unitate de traduction",
+ "pt-movepage-list-other": "Altere sub{{PLURAL:$1|pagina|paginas}}",
+ "pt-movepage-list-count": "In total $1 {{PLURAL:$1|pagina|paginas}} a renominar.",
+ "pt-movepage-legend": "Renominar pagina traducibile",
+ "pt-movepage-current": "Nomine actual:",
+ "pt-movepage-new": "Nove nomine:",
+ "pt-movepage-reason": "Motivo:",
+ "pt-movepage-subpages": "Renominar tote le subpaginas",
+ "pt-movepage-action-check": "Verificar si le renomination es possibile",
+ "pt-movepage-action-perform": "Facer le renomination",
+ "pt-movepage-action-other": "Cambiar destination",
+ "pt-movepage-intro": "Iste pagina special permitte renominar paginas marcate pro traduction.\nLe renomination non essera instantanee, proque il essera necessari renominar multe paginas.\nDurante le renomination del paginas, il non es possibile interager con le paginas in question.\nLe fallimentos essera registrate in le [[Special:Log/pagetranslation|registro de traduction de paginas]] e illos necessita reparation manual.",
+ "pt-movepage-logreason": "Parte del pagina traducibile $1.",
+ "pt-movepage-started": "Le pagina de base ha essite renominate.\nPer favor verifica le [[Special:Log/pagetranslation|registro de traductiones de paginas]] pro reparar eventual errores e leger le message de completion.",
+ "pt-locked-page": "Iste pagina es serrate proque le pagina traducibile es actualmente in curso de renomination.",
+ "pt-deletepage-lang-title": "Le pagina traducite $1 es delite.",
+ "pt-deletepage-full-title": "Le pagina traducibile $1 es delite.",
+ "pt-deletepage-invalid-title": "Le pagina specificate non es valide.",
+ "pt-deletepage-invalid-text": "Le pagina specificate es ni traducibile ni un traduction.",
+ "pt-deletepage-action-check": "Listar paginas a deler",
+ "pt-deletepage-action-perform": "Exequer le deletion",
+ "pt-deletepage-action-other": "Cambiar destination",
+ "pt-deletepage-lang-legend": "Deler pagina traducite",
+ "pt-deletepage-full-legend": "Deler pagina traducibile",
+ "pt-deletepage-any-legend": "Deler pagina traducibile o de traduction",
+ "pt-deletepage-current": "Nomine del pagina:",
+ "pt-deletepage-reason": "Motivo:",
+ "pt-deletepage-subpages": "Deler tote le subpaginas",
+ "pt-deletepage-list-pages": "Lista de paginas a deler",
+ "pt-deletepage-list-translation": "Paginas traducite",
+ "pt-deletepage-list-section": "Paginas de unitate de traduction",
+ "pt-deletepage-list-other": "Altere subpaginas",
+ "pt-deletepage-list-count": "In total $1 {{PLURAL:$1|pagina|paginas}} a deler.",
+ "pt-deletepage-full-logreason": "Parte del pagina traducibile $1.",
+ "pt-deletepage-lang-logreason": "Parte del pagina traducite $1.",
+ "pt-deletepage-started": "Per favor verifica in le [[Special:Log/pagetranslation|registro de traduction de paginas]] le existentia de errores e del message de completion.",
+ "pt-deletepage-intro": "Iste pagina special permitte deler un tote pagina traducibile o un pagina de traduction individual in un certe lingua.\nLe deletion non essera instantanee perque tote le paginas que depende de illos essera delite tamben.\nFallimentos essera registrate in le [[Special:Log/pagetranslation|registro de traduction de paginas]] e requirera reparation manual.",
+ "pagemigration": "Migration de paginas de traduction",
+ "pm-import-button-label": "Importar",
+ "pm-savepages-button-label": "Salveguardar",
+ "pm-cancel-button-label": "Cancellar",
+ "pm-pagename-placeholder": "Entra le nomine del pagina",
+ "pm-langcode-placeholder": "Codice de lingua",
+ "pm-page-does-not-exist": "$1 non existe",
+ "pm-old-translations-missing": "$1 non contine ancian traductiones",
+ "pm-extra-units-warning": "Il pote haber additional unitates. Assecura te que le unitates de fonte e de traduction corresponde correctemente.",
+ "pm-pagename-missing": "Per favor entra le nomine del pagina",
+ "pm-langcode-missing": "Per favor entra le codice de lingua",
+ "pm-add-icon-hover-text": "Adde un unitate hic infra",
+ "pm-swap-icon-hover-text": "Excambiar con le unitate hic infra",
+ "pm-delete-icon-hover-text": "Deler unitate",
+ "tpt-translate-title": "Permitter le traduction del titulo del pagina"
+}
diff --git a/MLEB/Translate/i18n/pagetranslation/id.json b/MLEB/Translate/i18n/pagetranslation/id.json
new file mode 100644
index 00000000..0f5e6352
--- /dev/null
+++ b/MLEB/Translate/i18n/pagetranslation/id.json
@@ -0,0 +1,97 @@
+{
+ "@metadata": {
+ "authors": [
+ "Anakmalaysia",
+ "Bennylin",
+ "Farras",
+ "Irwangatot",
+ "IvanLanin",
+ "Rex",
+ "පසිඳු කාවින්ද",
+ "Raynasution"
+ ]
+ },
+ "pagetranslation": "Penerjemahan halaman",
+ "right-pagetranslation": "Menandai revisi-revisi halaman untuk diterjemahkan",
+ "tpt-desc": "Ekstensi untuk menerjemahkan halaman-halaman isi",
+ "tpt-section": "Unit penerjemahan $1",
+ "tpt-section-new": "Unit penerjemahan baru. Nama: $1",
+ "tpt-section-deleted": "Unit penerjemahan $1",
+ "tpt-template": "Templat halaman",
+ "tpt-templatediff": "Templat halaman telah diubah.",
+ "tpt-diff-old": "Teks sebelumnya",
+ "tpt-diff-new": "Teks baru",
+ "tpt-submit": "Tandai revisi ini untuk diterjemahkan",
+ "tpt-sections-oldnew": "Unit-unit penerjemahan baru dan yang telah ada",
+ "tpt-sections-deleted": "Unit penerjemahan yang dihapus",
+ "tpt-sections-template": "Templat halaman penerjemahan",
+ "tpt-action-nofuzzy": "Jangan membatalkan terjemahan",
+ "tpt-badtitle": "Nama halaman yang diberikan ($1) tidak valid",
+ "tpt-nosuchpage": "Halaman $1 tidak ada",
+ "tpt-oldrevision": "$2 bukan revisi terakhir dari halaman [[:$1]].\nHanya revisi terakhir yang dapat ditandai untuk diterjemahkan.",
+ "tpt-notsuitable": "Halaman $1 tidak dapat diterjemahkan.\nPastikan bahwa halaman ini memiliki tag <nowiki><translate></nowiki> dan memiliki sintaksis yang valid.",
+ "tpt-saveok": "Halaman [[:$1]] telah ditandai untuk diterjemahkan dengan $2 {{PLURAL:$2|unit penerjemahan|unit penerjemahan}}.\nHalaman ini sekarang dapat <span class=\"plainlinks\"[$3 diterjemahkan]</span>.",
+ "tpt-badsect": "\"$1\" bukanlah nama yang valid untuk unit penerjemahan $2.",
+ "tpt-showpage-intro": "Berikut adalah daftar bagian baru, bagian yang telah ada, dan bagian yang dihapus.\nSebelum menandai revisi ini untuk diterjemahkan, harap periksa agar perubahan ke bagian-bagian dapat diminimalisasi guna menghindarkan para penerjemah dari melakukan pekerjaan yang tidak diperlukan.",
+ "tpt-mark-summary": "Menandai revisi ini untuk diterjemahkan",
+ "tpt-edit-failed": "Tidak dapat memperbarui halaman: $1",
+ "tpt-already-marked": "Revisi terakhir halaman ini telah ditandai untuk diterjemahkan.",
+ "tpt-unmarked": "Halaman $1 tidak lagi ditandai untuk diterjemahkan.",
+ "tpt-list-nopages": "Tidak ada halaman yang ditandai untuk diterjemahkan atau siap ditandai untuk diterjemahkan.",
+ "tpt-new-pages": "{{PLURAL:$1|Halaman ini berisikan|Halaman-halaman ini berisikan}} teks dengan tag terjemahan, tetapi tidak ada versi {{PLURAL:$1|halaman ini|halaman-halaman ini}} yang sudah ditandai untuk diterjemahkan.",
+ "tpt-old-pages": "Beberapa revisi dari {{PLURAL:$1|halaman ini|halaman-halaman ini}} telah ditandai untuk diterjemahkan.",
+ "tpt-other-pages": "{{PLURAL:$1|Versi lama dari halaman ini|Versi lama dari halaman ini}} ditandai untuk diterjemahkan,\ntetapi {{PLURAL:$1|versi|versi}} terakhir tidak dapat ditandai untuk diterjemahkan.",
+ "tpt-rev-unmark": "singkirkan halaman ini dari penerjemahan",
+ "translate-tag-translate-link-desc": "Terjemahkan halaman ini",
+ "translate-tag-markthis": "Tandai halaman ini untuk diterjemahkan",
+ "translate-tag-markthisagain": "Halaman ini telah diubah <span class=\"plainlinks\">[$1 kali]</span> sejak terakhir <span class=\"plainlinks\">[$2 ditandai untuk diterjemahkan]</span>.",
+ "translate-tag-hasnew": "Halaman ini berisikan <span class=\"plainlinks\">[$1 revisi]</span> yang tidak ditandai untuk diterjemahkan.",
+ "tpt-translation-intro": "Halaman ini adalah sebuah <span class=\"plainlinks\">[$1 versi terjemahan]</span> dari halaman [[$2]] dan terjemahannya telah selesai $3% dari sumber terkini.",
+ "tpt-languages-legend": "Bahasa lain:",
+ "tpt-target-page": "Halaman ini tidak dapat diperbarui secara manual.\nHalaman ini adalah terjemahan dari halaman [[$1]] dan terjemahannya dapat diperbarui menggunakan [$2 peralatan penerjemahan].",
+ "tpt-unknown-page": "Ruang nama ini dicadangkan untuk terjemahan halaman isi.\nHalaman yang ingin Anda sunting ini tampaknya tidak memiliki hubungan dengan halaman mana pun yang ditandai untuk diterjemahkan.",
+ "tpt-render-summary": "Memperbarui ke revisi terbaru halaman sumber",
+ "tpt-download-page": "Ekspor halaman dengan terjemahan",
+ "pt-parse-open": "Tag &lt;translate> tidak seimbang.\nTemplat terjemahan: <pre>$1</pre>",
+ "pt-parse-close": "Tag &lt;/translate> tidak seimbang.\nTemplat terjemahan: <pre>$1</pre>",
+ "pt-parse-nested": "Bagian &lt;translate> bersarang tidak diizinkan.\nTeks tanda: <pre>$1</pre>",
+ "pt-shake-multiple": "Penanda bagian ganda untuk satu bagian.\nTeks bagian: <pre>$1</pre>",
+ "pt-shake-position": "Penanda bagian di tempat tak terduka.\nTeks bagian: <pre>$1</pre>",
+ "pt-shake-empty": "Bagian kosong untuk penanda $1.",
+ "log-description-pagetranslation": "Log tindakan yang berhubungan dengan sistem penerjemahan halaman",
+ "log-name-pagetranslation": "Log penerjemahan halaman",
+ "pt-movepage-title": "Pindahkan halaman yang dapat diterjemahkan $1",
+ "pt-movepage-blockers": "Halaman yang dapat diterjemahkan tidak dapat dipindahkan ke nama baru karena {{PLURAL:$1|kesalahan|kesalahan}} berikut:",
+ "pt-movepage-block-base-exists": "Halaman dasar target [[:$1]] ditemukan.",
+ "pt-movepage-block-base-invalid": "Halaman dasar target memiliki judul yang tidak sah.",
+ "pt-movepage-block-tp-exists": "Halaman penerjemahan target [[:$2]] ditemukan.",
+ "pt-movepage-block-tp-invalid": "Judul halaman penerjemahan target untuk [[:$1]] salah (terlalu panjang?).",
+ "pt-movepage-block-section-exists": "Halaman bagian target [[:$2]] ditemukan.",
+ "pt-movepage-block-section-invalid": "Judul halaman bagian target untuk [[:$1]] salah (terlalu panjang?).",
+ "pt-movepage-block-subpage-exists": "Subhalaman taget [[:$2]] ditemukan.",
+ "pt-movepage-block-subpage-invalid": "Judul subhalaman target untuk [[:$1]] salah (terlalu panjang?).",
+ "pt-movepage-list-pages": "Daftar halaman yang akan dipindahkan",
+ "pt-movepage-list-translation": "Halaman penerjemahan",
+ "pt-movepage-list-section": "Halaman bagian",
+ "pt-movepage-list-other": "Subhalaman lain",
+ "pt-movepage-list-count": "Secara keseluruhan ada $1 {{PLURAL:$1|halaman|halaman}} yang akan dipindahkan.",
+ "pt-movepage-legend": "Pindahkan halaman yang dapat diterjemahkan",
+ "pt-movepage-current": "Nama sekarang:",
+ "pt-movepage-new": "Nama baru:",
+ "pt-movepage-reason": "Alasan:",
+ "pt-movepage-subpages": "Pindahkan semua subhalaman",
+ "pt-movepage-action-check": "Periksa apabila langkah ini memungkinkan",
+ "pt-movepage-action-perform": "Lakukan langkah ini",
+ "pt-movepage-action-other": "Ubah target",
+ "pt-movepage-intro": "Halaman istimewa ini memungkinkan Anda untuk memindahkan halaman yang ditandai untuk diterjemahkan.\nTindakan pemindahan tidak akan berlangsung seketika karena banyak halaman yang perlu dipindahkan.\nSaat halaman dipindahkan, tidak dimungkinkan untuk berinteraksi dengan halaman yang bersangkutan.\nKegagalan akan dicatat di [[Special:Log/pagetranslation|log terjemahan halaman]] dan perlu diperbaiki secara manual.",
+ "pt-movepage-logreason": "Bagian dari halaman yang dapat diterjemahkan $1.",
+ "pt-movepage-started": "Halaman dasar telah dipindahkan.\nSilakan periksa [[Special:Log/pagetranslation|log penerjemahan halaman]] untuk pesan kesalahan dan penyelesaian.",
+ "pt-locked-page": "Halaman ini dikunci karena halaman yang dapat diterjemahkan saat ini sedang dipindahkan.",
+ "pt-deletepage-reason": "Alasan:",
+ "pagemigration": "Perpindahan halaman",
+ "pm-import-button-label": "Impor",
+ "pm-savepages-button-label": "Simpan",
+ "pm-cancel-button-label": "Batalkan",
+ "pm-pagename-placeholder": "Masukkan nama halaman",
+ "pm-langcode-placeholder": "Kode Bahasa"
+}
diff --git a/MLEB/Translate/i18n/pagetranslation/ig.json b/MLEB/Translate/i18n/pagetranslation/ig.json
new file mode 100644
index 00000000..24dced7e
--- /dev/null
+++ b/MLEB/Translate/i18n/pagetranslation/ig.json
@@ -0,0 +1,16 @@
+{
+ "@metadata": {
+ "authors": [
+ "Ukabia"
+ ]
+ },
+ "pagetranslation": "Ihü kuwariala na asụsụ ozor",
+ "tpt-template": "Àtụ ihü",
+ "tpt-diff-new": "Mpkurụ edemede ohúrù",
+ "translate-tag-translate-link-desc": "Kùwáría ihüá na asụsụ ozor",
+ "tpt-languages-legend": "Asụsụ ndi ozor:",
+ "pt-movepage-list-other": "Ihü-íme-ihü nke ozor",
+ "pt-movepage-current": "Áhà nke di ùbwá:",
+ "pt-movepage-new": "Áhà ọhúrù:",
+ "pt-movepage-reason": "Mgbághapụtà:"
+}
diff --git a/MLEB/Translate/i18n/pagetranslation/io.json b/MLEB/Translate/i18n/pagetranslation/io.json
new file mode 100644
index 00000000..70466856
--- /dev/null
+++ b/MLEB/Translate/i18n/pagetranslation/io.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Malafaya"
+ ]
+ },
+ "tpt-languages-legend": "Altra lingui:"
+}
diff --git a/MLEB/Translate/i18n/pagetranslation/is.json b/MLEB/Translate/i18n/pagetranslation/is.json
new file mode 100644
index 00000000..647c6937
--- /dev/null
+++ b/MLEB/Translate/i18n/pagetranslation/is.json
@@ -0,0 +1,11 @@
+{
+ "@metadata": {
+ "authors": [
+ "Snævar"
+ ]
+ },
+ "translate-tag-translate-link-desc": "Þýða þessa síðu",
+ "tpt-translation-intro": "Þessi síða er <span class=\"plainlinks\">[$1 þýdd útgáfa]</span> af síðunni [[$2]] og þýðingu hennar er $3% lokið.",
+ "tpt-languages-legend": "Önnur tungumál:",
+ "log-name-pagetranslation": "Þýðingarskrá"
+}
diff --git a/MLEB/Translate/i18n/pagetranslation/it.json b/MLEB/Translate/i18n/pagetranslation/it.json
new file mode 100644
index 00000000..a76db27a
--- /dev/null
+++ b/MLEB/Translate/i18n/pagetranslation/it.json
@@ -0,0 +1,207 @@
+{
+ "@metadata": {
+ "authors": [
+ "Aushulz",
+ "Beta16",
+ "Civvì",
+ "Darth Kule",
+ "F. Cosoleto",
+ "Gianfranco",
+ "Nemo bis",
+ "VittGam",
+ "Ximo17",
+ "Baffo",
+ "Peg60"
+ ]
+ },
+ "pagetranslation": "Traduzione pagine",
+ "right-pagetranslation": "Segna le pagine come da tradurre",
+ "action-pagetranslation": "gestire le pagine traducibili",
+ "tpt-desc": "Estensione per la traduzione di pagine",
+ "tpt-section": "Elemento $1 della traduzione",
+ "tpt-section-new": "Nuovo elemento della traduzione.\nNome: $1",
+ "tpt-section-deleted": "Elemento $1 della traduzione",
+ "tpt-template": "Modello della pagina",
+ "tpt-templatediff": "Il modello della pagina è cambiato.",
+ "tpt-diff-old": "Testo precedente",
+ "tpt-diff-new": "Testo successivo",
+ "tpt-submit": "Segna questa versione per la traduzione",
+ "tpt-sections-oldnew": "Elementi della traduzione nuovi ed esistenti",
+ "tpt-sections-deleted": "Elementi della traduzione cancellati",
+ "tpt-sections-template": "Modello della pagina di traduzione",
+ "tpt-action-nofuzzy": "Non invalidare le traduzioni",
+ "tpt-badtitle": "Il nome fornito per la pagina ($1) non è un titolo valido",
+ "tpt-nosuchpage": "La pagina $1 non esiste",
+ "tpt-oldrevision": "$2 non è l'ultima versione della pagina [[:$1]].\nSolo le ultime versioni possono essere segnate per la traduzione.",
+ "tpt-notsuitable": "La pagina $1 non è adatta per la traduzione.\nAssicurarsi che abbia i tag <nowiki><translate></nowiki> e una sintassi valida.",
+ "tpt-saveok": "La pagina [[:$1]] è stata segnalata per la traduzione con $2 {{PLURAL:$2|elemento di traduzione|elementi di traduzione}}.\nLa pagina può ora essere <span class=\"plainlinks\">[$3 tradotta]</span>.",
+ "tpt-offer-notify": "Puoi <span class=\"plainlinks\">[$1 notificare questa pagina]</span> ai traduttori.",
+ "tpt-badsect": "\"$1\" non è un nome valido per l'elemento $2 della traduzione.",
+ "tpt-showpage-intro": "Di seguito sono elencate gli elementi di traduzione nuovi, esistenti e cancellati.\nPrima di segnare questa versione per la traduzione, controllare che i cambiamenti per gli elementi di traduzione siano ridotti al minimo per evitare lavoro superfluo ai traduttori.",
+ "tpt-mark-summary": "Versione segnata per la traduzione",
+ "tpt-mark-nochanges": "Non ci sono differenze tra questa versione e l'ultima versione contrassegnata.",
+ "tpt-edit-failed": "Impossibile aggiornare la pagina: $1",
+ "tpt-duplicate": "Il nome dell'elemento di traduzione $1 è usato più di una volta.",
+ "tpt-already-marked": "L'ultima versione di questa pagina è già stata segnata per la traduzione.",
+ "tpt-unmarked": "La pagina $1 non è più segnata per la traduzione.",
+ "tpt-list-nopages": "Nessuna pagina è segnata per la traduzione oppure è pronta per essere segnata per la traduzione.",
+ "tpt-new-pages-title": "Pagine proposte per la traduzione",
+ "tpt-old-pages-title": "Pagine in traduzione",
+ "tpt-other-pages-title": "Pagine corrotte",
+ "tpt-discouraged-pages-title": "Pagine scoraggiate",
+ "tpt-new-pages": "{{PLURAL:$1|Questa pagina contiene|Queste pagine contengono}} testo con tag di traduzione,\nma al momento nessuna versione di {{PLURAL:$1|questa pagina|queste pagine}} è segnata per la traduzione.",
+ "tpt-old-pages": "Alcune versioni di {{PLURAL:$1|questa pagina|queste pagine}} sono state segnate per la traduzione.",
+ "tpt-other-pages": "{{PLURAL:$1|Una vecchia versione di questa pagina è segnata|Delle vecchie versioni di queste pagine sono segnate}} per la traduzione,\nma {{PLURAL:$1|l'ultima versione non può essere segnata|le ultime versioni non possono essere segnate}} per la traduzione.",
+ "tpt-discouraged-pages": "L'ulteriore traduzione di {{PLURAL:$1|questa pagina|queste pagine}} è scoraggiata.",
+ "tpt-select-prioritylangs": "Elenco dei codici lingua prioritari separati da virgole:",
+ "tpt-select-prioritylangs-force": "Evitare le traduzioni in lingue non ritenute prioritarie",
+ "tpt-select-prioritylangs-reason": "Motivo:",
+ "tpt-sections-prioritylangs": "Lingue prioritarie",
+ "tpt-rev-mark": "segna per la traduzione",
+ "tpt-rev-unmark": "rimuovi dalla traduzione",
+ "tpt-rev-discourage": "scoraggia",
+ "tpt-rev-encourage": "ripristina",
+ "tpt-rev-mark-tooltip": "Segna l'ultima versione di questa pagina come da tradurre.",
+ "tpt-rev-unmark-tooltip": "Rimuovi questa pagina dalla traduzione.",
+ "tpt-rev-discourage-tooltip": "Scoraggia ulteriori traduzioni di questa pagina.",
+ "tpt-rev-encourage-tooltip": "Ripristina la traduzione ordinaria di questa pagina.",
+ "translate-tag-translate-link-desc": "Traduci questa pagina",
+ "translate-tag-markthis": "Segna questa pagina per la traduzione",
+ "translate-tag-markthisagain": "Questa pagina è stata <span class=\"plainlinks\">[$1 modificata]</span> da quando era stata <span class=\"plainlinks\">[$2 segnata per la traduzione]</span>.",
+ "translate-tag-hasnew": "Questa pagina contiene delle <span class=\"plainlinks\">[$1 modifiche]</span> che non sono segnate per la traduzione.",
+ "tpt-translation-intro": "Questa pagina è una <span class=\"plainlinks\">[$1 versione tradotta]</span> della pagina [[$2]]; la traduzione è completa al $3&nbsp;%.",
+ "tpt-languages-legend": "Altre lingue:",
+ "tpt-languages-zero": "Inizia a tradurre in questa lingua",
+ "tpt-languages-nonzero": "$1 ($2% tradotta)",
+ "tpt-tab-translate": "Traduci",
+ "tpt-target-page": "Questa pagina non può essere aggiornata manualmente. Questa pagina è una traduzione della pagina [[$1]] e la traduzione può essere aggiornata tramite [$2 lo strumento di traduzione].",
+ "tpt-unknown-page": "Questo namespace è riservato alle traduzioni del contenuto delle pagine.\nLa pagina che stai cercando di modificare non sembra corrispondere ad alcuna pagina segnata per la traduzione.",
+ "tpt-translation-restricted": "La traduzione di questa pagina in questa lingua è stata impedita dall'amministratore.\n\nMotivo: $1",
+ "tpt-discouraged-language-force-header": "Questa pagina non può essere tradotta in $1.",
+ "tpt-discouraged-language-force-content": "Un amministratore delle traduzione ha deciso che questa pagina può essere tradotta solo in $1.",
+ "tpt-discouraged-language-header": "La traduzione in $1 non è prioritaria per questa pagina.",
+ "tpt-discouraged-language-content": "Un amministratore di traduzione ha deciso di concentrare gli sforzi per la traduzione in $1.",
+ "tpt-discouraged-language-force": "<strong>Questa pagina non può essere tradotta in $2.</strong>\n\nUn amministratore delle traduzioni ha deciso che questa pagina può essere tradotta solo in $3.",
+ "tpt-discouraged-language": "<strong>La traduzione in $2 non è una priorità per questa pagina.</strong>\n\nUn amministratore delle traduzioni ha deciso di concentrare gli sforzi traduzioni in $3.",
+ "tpt-discouraged-language-reason": "Motivo: $1",
+ "tpt-priority-languages": "L'amministratore ha impostato le lingue prioritarie per questo gruppo in $1.",
+ "tpt-render-summary": "Aggiornamento come da nuova versione della pagina di origine",
+ "tpt-download-page": "Esporta la pagina con le traduzioni",
+ "aggregategroups": "Gruppi aggregati",
+ "tpt-aggregategroup-add": "Aggiungi",
+ "tpt-aggregategroup-save": "Salva",
+ "tpt-aggregategroup-add-new": "Aggiungi un nuovo gruppo aggregato",
+ "tpt-aggregategroup-new-name": "Nome:",
+ "tpt-aggregategroup-new-description": "Descrizione (opzionale):",
+ "tpt-aggregategroup-remove-confirm": "Sei sicuro di voler cancellare questo gruppo aggregato?",
+ "tpt-aggregategroup-invalid-group": "Il gruppo non esiste",
+ "tpt-aggregategroup-edit-name": "Nome:",
+ "tpt-aggregategroup-edit-description": "Descrizione:",
+ "tpt-aggregategroup-update": "Salva",
+ "tpt-aggregategroup-update-cancel": "Annulla",
+ "tpt-invalid-group": "Gruppo non valido",
+ "pt-parse-open": "Marcatore &lt;translate> sbilanciato.\nStruttura della traduzione: <pre>$1</pre>",
+ "pt-parse-close": "Marcatore &lt;/translate> sbilanciato.\nStruttura della traduzione: <pre>$1</pre>",
+ "pt-parse-nested": "Non sono ammessi elementi di traduzione &lt;translate> nidificati.\nTesto del marcatore: <pre>$1</pre>",
+ "pt-shake-multiple": "Sono presenti più marcatori di elementi di traduzione per un singolo elemento.\nTesto dell'elemento di traduzione: <pre>$1</pre>",
+ "pt-shake-position": "Sono presenti marcatori di elementi di traduzione in una posizione inaspettata.\nTesto della sezione: <pre>$1</pre>",
+ "pt-shake-empty": "Elemento di traduzione vuoto per il marcatore $1.",
+ "log-description-pagetranslation": "Registro per le azioni inerenti al sistema di traduzione delle pagine",
+ "log-name-pagetranslation": "Traduzioni di pagine",
+ "logentry-pagetranslation-mark": "$1 {{GENDER:$2|ha contrassegnato}} $3 per la traduzione",
+ "logentry-pagetranslation-unmark": "$1 {{GENDER:$2|ha rimosso}} $3 dalla traduzione",
+ "logentry-pagetranslation-moveok": "$1 {{GENDER:$2|ha eseguito}} lo spostamento della pagina traducibile $3 a $4",
+ "logentry-pagetranslation-movenok": "$1 {{GENDER:$2|ha incontrato}} un problema nello spostamento di $3 a $4",
+ "logentry-pagetranslation-deletefok": "$1 {{GENDER:$2|ha eseguito}} la cancellazione della pagina traducibile $3",
+ "logentry-pagetranslation-deletefnok": "$1 {{GENDER:$2|ha incontrato}} un problema nella cancellazione di $3 che appartiene alla pagina da tradurre $4",
+ "logentry-pagetranslation-deletelok": "$1 {{GENDER:$2|ha eseguito}} la cancellazione della pagina di traduzione $3",
+ "logentry-pagetranslation-deletelnok": "$1 {{GENDER:$2|ha incontrato}} un problema nella cancellazione di $3 che appartiene alla pagina da tradurre $4",
+ "logentry-pagetranslation-encourage": "$1 {{GENDER:$2|ha incoraggiato}} la traduzione di $3",
+ "logentry-pagetranslation-discourage": "$1 {{GENDER:$2|ha scoraggiato}} la traduzione di $3",
+ "logentry-pagetranslation-prioritylanguages-unset": "$1 {{GENDER:$2|ha rimosso}} le lingue prioritarie dalla pagina da tradurre $3",
+ "logentry-pagetranslation-prioritylanguages": "$1 {{GENDER:$2|ha impostato}} le lingue prioritarie $5 alla pagina da tradurre $3",
+ "logentry-pagetranslation-prioritylanguages-force": "$1 {{GENDER:$2|ha limitato}} le lingue a $5 per la pagina da tradurre $3",
+ "logentry-pagetranslation-associate": "$1 {{GENDER:$2|ha aggiunto}} la pagina traducibile $3 al gruppo aggregato $4",
+ "logentry-pagetranslation-dissociate": "$1 {{GENDER:$2|ha rimosso}} la pagina traducibile $3 dal gruppo aggregato $4",
+ "pt-movepage-title": "Sposta la pagina traducibile $1",
+ "pt-movepage-blockers": "Questa pagina da tradurre non è stata spostata a un nuovo nome per {{PLURAL:$1|il seguente errore|i seguenti errori}}:",
+ "pt-movepage-block-base-exists": "La pagina base di destinazione [[:$1]] esiste già.",
+ "pt-movepage-block-base-invalid": "La pagina base di destinazione non ha un titolo valido.",
+ "pt-movepage-block-tp-exists": "La pagina di traduzione di destinazione [[:$2]] esiste già.",
+ "pt-movepage-block-tp-invalid": "Il titolo di destinazione della pagina di traduzione di [[:$1]] sarebbe invalido (troppo lungo?).",
+ "pt-movepage-block-section-exists": "La pagina di destinazione dell'elemento di traduzione [[:$2]] esiste già.",
+ "pt-movepage-block-section-invalid": "Il titolo di destinazione della pagina dell'elemento di traduzione di [[:$1]] sarebbe invalido (troppo lungo?).",
+ "pt-movepage-block-subpage-exists": "La sottopagina di destinazione [[:$2]] esiste già.",
+ "pt-movepage-block-subpage-invalid": "Il titolo della sottopagina di destinazione di [[:$1]] sarebbe invalido (troppo lungo?).",
+ "pt-movepage-list-pages": "Elenco di pagine da spostare",
+ "pt-movepage-list-translation": "{{PLURAL:$1|Pagina|Pagine}} di traduzione",
+ "pt-movepage-list-section": "{{PLURAL:$1|Pagina|Pagine}} degli elementi di traduzione",
+ "pt-movepage-list-other": "{{PLURAL:$1|Altra sottopagina|Altre sottopagine}}",
+ "pt-movepage-list-count": "$1 {{PLURAL:$1|pagina|pagine}} in tutto da spostare.",
+ "pt-movepage-legend": "Sposta pagina traducibile",
+ "pt-movepage-current": "Nome attuale:",
+ "pt-movepage-new": "Nuovo nome:",
+ "pt-movepage-reason": "Motivo:",
+ "pt-movepage-subpages": "Sposta tutte le sottopagine",
+ "pt-movepage-action-check": "Verifica se lo spostamento è possibile",
+ "pt-movepage-action-perform": "Esegui lo spostamento",
+ "pt-movepage-action-other": "Modifica destinazione",
+ "pt-movepage-intro": "Questa pagina speciale ti permette di spostare pagine segnate come da tradurre.\nLo spostamento non sarà istantaneo, perché serve spostare molte pagine.\nMentre le pagine vengono spostate, non è possibile interagire con esse.\nGli errori sono riportati nel [[Special:Log/pagetranslation|registro delle traduzioni di pagine]] e devono essere corretti a mano.",
+ "pt-movepage-logreason": "Parte della pagina traducibile $1",
+ "pt-movepage-started": "La pagina base è stata spostata.\nControlla il [[Special:Log/pagetranslation|registro delle traduzioni di pagine]] per verificare il messaggio di completamento ed eventuali errori.",
+ "pt-locked-page": "Questa pagina è protetta perché la pagina traducibile sta per essere spostata.",
+ "pt-deletepage-lang-title": "Cancellazione della pagina di traduzione $1.",
+ "pt-deletepage-full-title": "Cancellazione della pagina traducibile $1 in corso.",
+ "pt-deletepage-invalid-title": "La pagina specificata non è valida.",
+ "pt-deletepage-invalid-text": "La pagina indicata non è una pagina da tradurre né una pagina di traduzione.",
+ "pt-deletepage-action-check": "Elenca le pagine da cancellare",
+ "pt-deletepage-action-perform": "Esegui la cancellazione",
+ "pt-deletepage-action-other": "Modifica destinazione",
+ "pt-deletepage-lang-legend": "Cancella pagina di traduzione",
+ "pt-deletepage-full-legend": "Cancella la pagina traducibile",
+ "pt-deletepage-any-legend": "Cancella una pagina traducibile o una pagina di traduzione",
+ "pt-deletepage-current": "Nome della pagina:",
+ "pt-deletepage-reason": "Motivo:",
+ "pt-deletepage-subpages": "Cancella tutte le sottopagine",
+ "pt-deletepage-list-pages": "Elenco di pagine da cancellare",
+ "pt-deletepage-list-translation": "Pagine di traduzione",
+ "pt-deletepage-list-section": "Pagine degli elementi di traduzione",
+ "pt-deletepage-list-other": "Altre sottopagine",
+ "pt-deletepage-list-count": "$1 {{PLURAL:$1|pagina|pagine}} in tutto da cancellare.",
+ "pt-deletepage-full-logreason": "Parte della pagina traducibile $1",
+ "pt-deletepage-lang-logreason": "Parte della pagina di traduzione $1",
+ "pt-deletepage-started": "Controlla il [[Special:Log/pagetranslation|registro delle traduzioni di pagine]] per verificare il messaggio di completamento ed eventuali errori.",
+ "pt-deletepage-intro": "Questa pagina speciale ti consente di cancellare del tutto una pagina traducibile o una sua traduzione in una lingua.\nLa cancellazione non sarà istantanea, perché anche tutte le pagine che dipendono da quella dovranno essere cancellate.\nGli errori sono riportati nel [[Special:Log/pagetranslation|registro delle traduzioni di pagine]] e devono essere corretti a mano.",
+ "pagemigration": "Migrazione pagine di traduzione",
+ "pagemigration-summary": "Specifica una pagina traducibile e ripristina qualsiasi traduzione fatta prima che il sistema Translate sia stato attivato in quella pagina.",
+ "pm-import-button-label": "Importa",
+ "pm-savepages-button-label": "Salva",
+ "pm-cancel-button-label": "Annulla",
+ "pm-pagename-placeholder": "Inserisci il nome della pagina",
+ "pm-langcode-placeholder": "Codice lingua",
+ "pm-page-does-not-exist": "$1 non esiste",
+ "pm-old-translations-missing": "$1 non contiene vecchie traduzioni",
+ "pm-extra-units-warning": "Sono presenti unità aggiuntive. Abbina correttamente le unità di origine e di traduzione",
+ "pm-pagename-missing": "Inserisci il nome della pagina",
+ "pm-langcode-missing": "Inserisci il codice della lingua",
+ "pm-add-icon-hover-text": "Aggiungi un'unità sotto",
+ "pm-swap-icon-hover-text": "Scambia con l'unità sotto",
+ "pm-delete-icon-hover-text": "Cancella unità",
+ "pm-pagetitle-invalid": "Inserisci un titolo di pagina valido",
+ "pm-summary-import": "Traduzione importata usando la [[Special:PageMigration|migrazione di pagina]]",
+ "tpt-translate-title": "Permetti la traduzione del titolo della pagina",
+ "pp-save-summary": "Preparata la pagina per la traduzione",
+ "pagepreparation": "Prepara pagina per la traduzione",
+ "pp-pagename-placeholder": "Inserisci il nome della pagina",
+ "pp-prepare-button-label": "Prepara",
+ "pp-save-button-label": "Salva",
+ "pp-save-message": "La pagina è stata salvata. Puoi [$1 modificarla].",
+ "pp-prepare-message": "La pagina è stata preparata per la traduzione. Vedi le differenze di seguito. Clicca \"{{int:pp-save-button-label}}\" se va bene!",
+ "pp-already-prepared-message": "Sembra che la pagina sia stata già preparata per la traduzione. Non ci sono modifiche rispetto alla versione precedente.",
+ "pp-pagename-missing": "Inserisci il nome della pagina.",
+ "pp-diff-old-header": "Testo sorgente",
+ "pp-diff-new-header": "Testo preparato",
+ "tpt-unlink-confirm": "Si prega di confermare che vuoi davvero togliere questa pagina dal sistema di traduzione.\nIl selettore di lingua e i nomi tradotti della pagina smetteranno di funzionare.\nLa pagine di traduzione diventeranno modificabile.",
+ "tpt-unlink-button": "Rimuovi dalla traduzione",
+ "tpt-unlink-summary": "Pagina rimossa dalla traduzione"
+}
diff --git a/MLEB/Translate/i18n/pagetranslation/ja.json b/MLEB/Translate/i18n/pagetranslation/ja.json
new file mode 100644
index 00000000..97f598ab
--- /dev/null
+++ b/MLEB/Translate/i18n/pagetranslation/ja.json
@@ -0,0 +1,187 @@
+{
+ "@metadata": {
+ "authors": [
+ "Aotake",
+ "Fryed-peach",
+ "Shirayuki",
+ "Whym",
+ "青子守歌"
+ ]
+ },
+ "pagetranslation": "ページ翻訳",
+ "right-pagetranslation": "ページの版を翻訳対象に指定",
+ "action-pagetranslation": "翻訳対象ページの管理",
+ "tpt-desc": "通常ページの本文を翻訳するための拡張機能",
+ "tpt-section": "翻訳単位 $1",
+ "tpt-section-new": "新しい翻訳単位。\n名前: $1",
+ "tpt-section-deleted": "翻訳単位 $1",
+ "tpt-template": "ページの雛型",
+ "tpt-templatediff": "ページの雛型が変更されました。",
+ "tpt-diff-old": "前のテキスト",
+ "tpt-diff-new": "新しいテキスト",
+ "tpt-submit": "この版を翻訳対象に指定",
+ "tpt-sections-oldnew": "新規または既存の翻訳単位",
+ "tpt-sections-deleted": "削除された翻訳単位",
+ "tpt-sections-template": "翻訳ページの雛型",
+ "tpt-action-nofuzzy": "翻訳を失効させない",
+ "tpt-badtitle": "指定したページ名 ($1) は無効です",
+ "tpt-nosuchpage": "ページ $1 は存在しません",
+ "tpt-oldrevision": "$2 はページ [[:$1]] の最新版ではありません。\n翻訳対象に指定できるのは最新版のみです。",
+ "tpt-notsuitable": "ページ $1 は翻訳に対応していません。\n<nowiki><translate></nowiki> タグが含まれていて、かつ文法的に正しいことをを確認してください。",
+ "tpt-saveok": "ページ [[:$1]] は翻訳対象に指定されており、$2 {{PLURAL:$2|個の翻訳単位}}を含んでいます。\nこのページを<span class=\"plainlinks\">[$3 翻訳]</span>できます。",
+ "tpt-offer-notify": "このページについて<span class=\"plainlinks\">[$1 翻訳者に通知]</span>できます。",
+ "tpt-badsect": "「$1」は翻訳単位$2の名前として有効ではありません。",
+ "tpt-showpage-intro": "以下は、新規・既存の、または削除された翻訳単位の一覧です。\nこの版を翻訳対象に指定する前に、翻訳単位の変更を最小限にすることで不要な翻訳作業を回避できないか確認してください。",
+ "tpt-mark-summary": "この版を翻訳対象に指定しました",
+ "tpt-edit-failed": "ページを更新できませんでした: $1",
+ "tpt-duplicate": "翻訳単位名 $1 は、複数回使用されています。",
+ "tpt-already-marked": "このページの最新版は既に翻訳対象に指定されています。",
+ "tpt-unmarked": "ページ $1 を翻訳対象から除去しました。",
+ "tpt-list-nopages": "翻訳対象に指定されているページがないか、翻訳対象に指定する準備ができているページがありません。",
+ "tpt-new-pages-title": "翻訳が提案されているページ",
+ "tpt-old-pages-title": "翻訳対象ページ",
+ "tpt-other-pages-title": "壊れたページ",
+ "tpt-discouraged-pages-title": "翻訳が中止されたページ",
+ "tpt-new-pages": "{{PLURAL:$1|このページ|これらのページ}}は本文に翻訳タグを含んでいますが、\n{{PLURAL:$1|このページ|これらのページ}}には現在、翻訳対象に指定されている版がありません。",
+ "tpt-old-pages": "{{PLURAL:$1|このページ|これらのページ}}には翻訳対象に指定された版があります。",
+ "tpt-other-pages": "{{PLURAL:$1|このページの古い版|このページの複数の古い版}}が翻訳対象に指定されていますが、\n最新の{{PLURAL:$1|版}}は翻訳対象に指定できません。",
+ "tpt-discouraged-pages": "{{PLURAL:$1|このページ|これらのページ}}の翻訳は中止されたため、これ以上の翻訳は不要です。",
+ "tpt-select-prioritylangs": "優先言語のコードを列挙 (カンマ区切り):",
+ "tpt-select-prioritylangs-force": "優先言語以外への翻訳を禁止",
+ "tpt-select-prioritylangs-reason": "理由:",
+ "tpt-sections-prioritylangs": "優先言語",
+ "tpt-rev-mark": "翻訳対象に指定",
+ "tpt-rev-unmark": "翻訳対象から除去",
+ "tpt-rev-discourage": "翻訳中止",
+ "tpt-rev-encourage": "復元",
+ "tpt-rev-mark-tooltip": "このページの最新版を翻訳対象に指定します。",
+ "tpt-rev-unmark-tooltip": "このページを翻訳対象から除去します。",
+ "tpt-rev-discourage-tooltip": "このページのこれ以上の翻訳を中止します。",
+ "tpt-rev-encourage-tooltip": "このページを通常の翻訳に復元します。",
+ "translate-tag-translate-link-desc": "このページを翻訳",
+ "translate-tag-markthis": "このページを翻訳対象に指定",
+ "translate-tag-markthisagain": "このページには、最後に<span class=\"plainlinks\">[$2 翻訳対象に指定]</span>された時点以降の<span class=\"plainlinks\">[$1 変更]</span>があります。",
+ "translate-tag-hasnew": "このページには翻訳対象に指定されていない<span class=\"plainlinks\">[$1 変更]</span>があります。",
+ "tpt-translation-intro": "このページはページ [[$2]] を「<span class=\"plainlinks\">[$1 翻訳]</span>」したものです。翻訳は $3% 完了しています。",
+ "tpt-languages-legend": "他言語での翻訳:",
+ "tpt-languages-zero": "この言語への翻訳を開始",
+ "tpt-languages-nonzero": "$1 ($2% 翻訳済み)",
+ "tpt-tab-translate": "翻訳",
+ "tpt-target-page": "このページは手動では更新できません。\nこのページはページ [[$1]] の翻訳版であり、[$2 翻訳ツール]を使用して更新できます。",
+ "tpt-unknown-page": "この名前空間はコンテンツ ページの翻訳のために予約されています。\n編集しようとしているページに対応する翻訳対象ページが存在しないようです。",
+ "tpt-translation-restricted": "翻訳管理者がこのページのこの言語への翻訳を禁止しています。\n\n理由: $1",
+ "tpt-discouraged-language-force-header": "このページは$1には翻訳できません。",
+ "tpt-discouraged-language-force": "<strong>このページは $2 に翻訳できません。</strong>\n\n翻訳管理者がこのページの翻訳先言語を $3 のみに制限しています。",
+ "tpt-discouraged-language": "<strong>このページの $2 への翻訳は重要ではありません。</strong>\n翻訳管理者が $3 への翻訳作業に重点を置くことを決めました。",
+ "tpt-discouraged-language-reason": "理由: $1",
+ "tpt-priority-languages": "翻訳管理者が、このメッセージ群の優先言語を $1 に設定しました。",
+ "tpt-render-summary": "翻訳元ページの新版に適合するように更新",
+ "tpt-download-page": "翻訳付きでページを書き出し",
+ "aggregategroups": "集約群",
+ "tpt-aggregategroup-add": "追加",
+ "tpt-aggregategroup-save": "保存",
+ "tpt-aggregategroup-add-new": "新しい集約群を追加",
+ "tpt-aggregategroup-new-name": "名前:",
+ "tpt-aggregategroup-new-description": "説明 (省略可):",
+ "tpt-aggregategroup-remove-confirm": "この集約群を本当に削除しますか?",
+ "tpt-aggregategroup-invalid-group": "集約群が存在しません",
+ "tpt-aggregategroup-edit-name": "名前:",
+ "tpt-aggregategroup-edit-description": "説明:",
+ "tpt-aggregategroup-update": "保存",
+ "tpt-aggregategroup-update-cancel": "キャンセル",
+ "tpt-invalid-group": "無効な集約群です",
+ "pt-parse-open": "&lt;translate> タグの対応がとれていません。\n翻訳の雛型: <pre>$1</pre>",
+ "pt-parse-close": "&lt;/translate> タグの対応がとれていません。\n翻訳の雛型: <pre>$1</pre>",
+ "pt-parse-nested": "&lt;translate> 翻訳単位の入れ子は許されません。\nタグの内容: <pre>$1</pre>",
+ "pt-shake-multiple": "1 つの翻訳単位に対して、複数の翻訳単位マーカーがあります。\n翻訳単位の内容: <pre>$1</pre>",
+ "pt-shake-position": "予期しない位置に翻訳単位マーカーがあります。\n翻訳単位の内容: <pre>$1</pre>",
+ "pt-shake-empty": "マーカー「$1」に対応する翻訳単位が空です。",
+ "log-description-pagetranslation": "ページ翻訳システムに関連する操作の記録",
+ "log-name-pagetranslation": "ページ翻訳記録",
+ "logentry-pagetranslation-mark": "$1 が $3 を翻訳対象に{{GENDER:$2|指定}}",
+ "logentry-pagetranslation-unmark": "$1 が $3 を翻訳から{{GENDER:$2|除去}}",
+ "logentry-pagetranslation-moveok": "$1 が翻訳対象ページ $3 の名前を $4 に変更{{GENDER:$2|完了}}",
+ "logentry-pagetranslation-movenok": "$1 がページ $3 を $4 に移動させる際に問題が{{GENDER:$2|発生}}",
+ "logentry-pagetranslation-deletefok": "$1 が翻訳対象ページ $3 の削除を{{GENDER:$2|完了}}",
+ "logentry-pagetranslation-deletefnok": "$1 が翻訳対象ページ $4 に属する $3 の削除に{{GENDER:$2|失敗}}",
+ "logentry-pagetranslation-deletelok": "$1 が翻訳ページ $3 の削除を{{GENDER:$2|完了}}",
+ "logentry-pagetranslation-deletelnok": "$1 が翻訳ページ $4 に属する $3 の削除に{{GENDER:$2|失敗}}",
+ "logentry-pagetranslation-encourage": "$1 が $3 の翻訳を{{GENDER:$2|復元}}",
+ "logentry-pagetranslation-discourage": "$1 が $3 の翻訳を{{GENDER:$2|中止}}",
+ "logentry-pagetranslation-prioritylanguages-unset": "$1 が翻訳対象ページ $3 から優先言語を{{GENDER:$2|除去}}",
+ "logentry-pagetranslation-prioritylanguages": "$1 が翻訳対象ページ $3 の優先言語を $5 に{{GENDER:$2|設定}}",
+ "logentry-pagetranslation-prioritylanguages-force": "$1 が翻訳対象ページ $3 の言語を $5 に{{GENDER:$2|制限}}",
+ "logentry-pagetranslation-associate": "$1 が翻訳対象ページ $3 を集約群 $4 に{{GENDER:$2|追加}}",
+ "logentry-pagetranslation-dissociate": "$1 が翻訳対象ページ $3 を集約群 $4 から{{GENDER:$2|除去}}",
+ "pt-movepage-title": "翻訳対象ページ「$1」の移動",
+ "pt-movepage-blockers": "以下の{{PLURAL:$1|エラー}}が発生したため、翻訳対象ページを新しいページ名に移動できません:",
+ "pt-movepage-block-base-exists": "移動先の翻訳対象ページ「[[:$1]]」は既に存在します。",
+ "pt-movepage-block-base-invalid": "移動先の翻訳対象ページの名前が無効です。",
+ "pt-movepage-block-tp-exists": "移動先の翻訳ページ「[[:$2]]」は既に存在します。",
+ "pt-movepage-block-tp-invalid": "「[[:$1]]」の移動先の翻訳ページの名前が無効です (長すぎる?)。",
+ "pt-movepage-block-section-exists": "移動先の翻訳単位ページ「[[:$2]]」は既に存在します。",
+ "pt-movepage-block-section-invalid": "「[[:$1]]」の移動先の翻訳単位ページ名が無効です (長すぎる?)。",
+ "pt-movepage-block-subpage-exists": "移動先の下位ページ「[[:$2]]」は既に存在します。",
+ "pt-movepage-block-subpage-invalid": "「[[:$1]]」の移動先の下位ページ名が無効です (長すぎる?)。",
+ "pt-movepage-list-pages": "移動するページの一覧",
+ "pt-movepage-list-translation": "翻訳{{PLURAL:$1|ページ}}",
+ "pt-movepage-list-section": "翻訳単位{{PLURAL:$1|ページ}}",
+ "pt-movepage-list-other": "その他の下位{{PLURAL:$1|ページ}}",
+ "pt-movepage-list-count": "合計 $1 ページを移動",
+ "pt-movepage-legend": "翻訳対象ページの移動",
+ "pt-movepage-current": "現在の名前:",
+ "pt-movepage-new": "新しい名前:",
+ "pt-movepage-reason": "理由:",
+ "pt-movepage-subpages": "下位ページをすべて移動",
+ "pt-movepage-action-check": "移動できるかどうかチェック",
+ "pt-movepage-action-perform": "移動を実行",
+ "pt-movepage-action-other": "対象を変更",
+ "pt-movepage-intro": "この特別ページでは、翻訳対象に指定されているページを移動できます。\n多くのページを移動する必要があるため、移動操作はすぐには完了しません。\nページの移動中は、そのページの操作はできません。\n失敗した場合は、その[[Special:Log/pagetranslation|ページの翻訳記録]]に記録されるため、手動で修正する必要があります。",
+ "pt-movepage-logreason": "翻訳対象ページ「$1」の一部。",
+ "pt-movepage-started": "基底ページが移動されました。\n[[Special:Log/pagetranslation|ページの翻訳記録]]で、エラーや完了メッセージを確認してください。",
+ "pt-locked-page": "翻訳対象ページが現在移動中のため、このページはロックされています。",
+ "pt-deletepage-lang-title": "翻訳ページ「$1」を削除中。",
+ "pt-deletepage-full-title": "翻訳対象ページ「$1」を削除中。",
+ "pt-deletepage-invalid-title": "指定したページは無効です。",
+ "pt-deletepage-invalid-text": "指定したページは、翻訳対象ページでも翻訳ページでもありません。",
+ "pt-deletepage-action-check": "削除するページを列挙",
+ "pt-deletepage-action-perform": "削除を実行",
+ "pt-deletepage-action-other": "対象を変更",
+ "pt-deletepage-lang-legend": "翻訳ページの削除",
+ "pt-deletepage-full-legend": "翻訳対象ページの削除",
+ "pt-deletepage-any-legend": "翻訳対象ページまたは翻訳ページの削除",
+ "pt-deletepage-current": "ページ名:",
+ "pt-deletepage-reason": "理由:",
+ "pt-deletepage-subpages": "下位ページをすべて削除",
+ "pt-deletepage-list-pages": "削除するページの一覧",
+ "pt-deletepage-list-translation": "翻訳ページ",
+ "pt-deletepage-list-section": "翻訳単位ページ",
+ "pt-deletepage-list-other": "その他の下位ページ",
+ "pt-deletepage-list-count": "合計 $1 ページを削除",
+ "pt-deletepage-full-logreason": "翻訳対象ページ「$1」の一部。",
+ "pt-deletepage-lang-logreason": "翻訳ページ「$1」の一部。",
+ "pt-deletepage-started": "[[Special:Log/pagetranslation|ページの翻訳記録]]で、エラーや完了メッセージを確認してください。",
+ "pt-deletepage-intro": "この特別ページでは、翻訳対象ページ全体、または指定した言語への翻訳ページを個別に削除できます。\n依存関係があるページもすべて削除するため、削除操作はすぐには完了しません。\n失敗した場合は[[Special:Log/pagetranslation|ページの翻訳記録]]に記録されるので、手動で修正する必要があります。",
+ "pagemigration": "翻訳ページの移行",
+ "pm-import-button-label": "取り込む",
+ "pm-savepages-button-label": "保存",
+ "pm-cancel-button-label": "キャンセル",
+ "pm-pagename-placeholder": "ページ名を入力",
+ "pm-langcode-placeholder": "言語コード",
+ "pm-page-does-not-exist": "$1 は存在しません",
+ "pm-old-translations-missing": "$1 は古い翻訳を含んでいません",
+ "pm-pagename-missing": "ページ名を入力してください",
+ "pm-langcode-missing": "言語コードを入力してください",
+ "pm-add-icon-hover-text": "単位を下に追加",
+ "pm-swap-icon-hover-text": "下の単位と入れ替える",
+ "pm-delete-icon-hover-text": "単位を削除",
+ "pm-pagetitle-invalid": "有効なページ名を入力してください",
+ "pm-summary-import": "[[Special:PageMigration|ページ移行]]を使用して翻訳を取り込み",
+ "tpt-translate-title": "ページ名を翻訳できるようにする",
+ "pp-pagename-placeholder": "ページ名を入力",
+ "pp-save-button-label": "保存",
+ "pp-pagename-missing": "ページ名を入力してください。",
+ "tpt-unlink-confirm": "このページを翻訳システムから本当に除去するかどうか確認してください。\n言語選択と、翻訳されたページ名が、動作しなくなります。\n翻訳ページが編集できる状態になります。",
+ "tpt-unlink-button": "翻訳対象から除去",
+ "tpt-unlink-summary": "ページを翻訳対象から除去"
+}
diff --git a/MLEB/Translate/i18n/pagetranslation/jam.json b/MLEB/Translate/i18n/pagetranslation/jam.json
new file mode 100644
index 00000000..b55984c4
--- /dev/null
+++ b/MLEB/Translate/i18n/pagetranslation/jam.json
@@ -0,0 +1,35 @@
+{
+ "@metadata": {
+ "authors": [
+ "Yocahuna"
+ ]
+ },
+ "pagetranslation": "Piej chranslieshan",
+ "right-pagetranslation": "Maak voerjan a piejdem fi chranslieshan",
+ "tpt-desc": "Extenshan fi chransliet kantent piejdem",
+ "tpt-section": "Chranslieshan yuunit $1",
+ "tpt-section-new": "New chranslieshan yuunit.\nNiem: $1",
+ "tpt-section-deleted": "Chranslieshan yuunit $1",
+ "tpt-template": "Piej templit",
+ "tpt-templatediff": "Di piej templit chienj",
+ "tpt-diff-old": "Priivos tex",
+ "tpt-diff-new": "Nyuu tex",
+ "tpt-submit": "Maak dis voerjan fi chranslieshan",
+ "tpt-sections-oldnew": "Nyuu ahn egzisin chranslieshan yuunit",
+ "tpt-sections-deleted": "Chranslieshan yuunit wa diliit",
+ "tpt-sections-template": "Chranslieshan piej templit",
+ "tpt-action-nofuzzy": "No invalidiet no chranslieshan",
+ "tpt-badtitle": "Piej niem yu gi ($1) a no valid taikl",
+ "tpt-nosuchpage": "No piej ($1) no egzis",
+ "tpt-oldrevision": "$2 a no di lietis voerjan a di piej [[:$1]].\nOnggl lietis voerjan kiahn maak fi chranslieshan.",
+ "tpt-notsuitable": "Piej $1 no suutobl fi chranslieshan.\nMek shuor se iab <nowiki><translate></nowiki> tag ahn gat valid sintax.",
+ "tpt-saveok": "Di piej [[:$1]] maakop fi chranslieshan wid $2 {{PLURAL:$2|chranslieshan yuunit|chranslieshan yuunit}}.\nDi piej kiahn nou get <span class=\"plainlinks\">[$3 chransliet]</span>.",
+ "tpt-badsect": "\"$1\" a no valid niem fi chranslieshan yuunit $2.",
+ "tpt-showpage-intro": "Nyuu, egzisin ahn diliitid sekshan lis biluo.\nBifuo yu maak dis voerjan fi chranslieshan, chek se di chienj to sekshandem minimaiz fi avaid anesiseri wok fi chranslietadem.",
+ "tpt-mark-summary": "Dis voerjan maak fi chranslieshan",
+ "tpt-edit-failed": "Kudn opdiet di piej: $1",
+ "tpt-already-marked": "Di lietis voerjan a dis piej don maak fi chranslieshan aredi.",
+ "tpt-unmarked": "Piej $1 no langa maak fi chranslieshan.",
+ "tpt-list-nopages": "No piej no maak fi chranslieshan nar redi fi maak fi chranslieshan.",
+ "tpt-old-pages": "Som voerjan a {{PLURAL:$1|dis piej|demaya piej}} don maak fi chranslieshan."
+}
diff --git a/MLEB/Translate/i18n/pagetranslation/jv.json b/MLEB/Translate/i18n/pagetranslation/jv.json
new file mode 100644
index 00000000..866cd228
--- /dev/null
+++ b/MLEB/Translate/i18n/pagetranslation/jv.json
@@ -0,0 +1,124 @@
+{
+ "@metadata": {
+ "authors": [
+ "NoiX180",
+ "Pras"
+ ]
+ },
+ "pagetranslation": "Terjemahan kaca",
+ "right-pagetranslation": "Tandhai vèrsi kaca kanggo terjemahan",
+ "tpt-desc": "Èkstènsi kanggo nerjemahaké kaca kontèn",
+ "tpt-section": "Unit terjemahan $1",
+ "tpt-section-new": "Unit terjemahan anyar.\nJeneng: $1",
+ "tpt-section-deleted": "Unit terjemahan $1",
+ "tpt-template": "Templat kaca",
+ "tpt-templatediff": "Templat kaca wis diganti.",
+ "tpt-diff-old": "Tèks sakdurungé",
+ "tpt-diff-new": "Tèks anyar",
+ "tpt-submit": "Tandhai vèrsi iki kanggo terjemahan",
+ "tpt-sections-oldnew": "Unit terjemahan anyar lan sing wis ana",
+ "tpt-sections-deleted": "Unit terjemahan sing wis dibusak",
+ "tpt-sections-template": "Témplat kaca terjemahan",
+ "tpt-badtitle": "Jeneng kaca sing diawèhaké ($1) dudu judhul sing sah",
+ "tpt-nosuchpage": "Kaca $1 ora ana",
+ "tpt-oldrevision": "$2 dudu vèrsi pungkasan saka kaca [[:$1]].\nNamung vèrsi pungkasan sing bisa ditandhani kanggo terjemahan.",
+ "tpt-notsuitable": "Kaca $1 ora cocok diterjemahaké.\nPesthekaké kuwi nduwèni tag <nowiki><translate></nowiki> lan sintaks sing sah.",
+ "tpt-badsect": "\"$1\" dudu jeneng sing sah kanggo unit terjemahan $2.",
+ "tpt-mark-summary": "Tandhai vèrsi iki kanggo terjemahan",
+ "tpt-edit-failed": "Ora bisa nganyari kaca: $1",
+ "tpt-duplicate": "Jeneng unit terjemahan $1 dianggo luwih saka pisan.",
+ "tpt-already-marked": "Vèrsi pungkasan kaca iki wis ditandhai kanggo terjemahan.",
+ "tpt-unmarked": "Kaca $1 ora manèh ditandhani kanggo terjemahan.",
+ "tpt-list-nopages": "Ora ana kaca sing ditandhai kanggo terjemahan utawa siap ditandhai kanggo terjemahan.",
+ "tpt-new-pages-title": "Kaca sing ditawakaké kanggo terjemahan",
+ "tpt-old-pages-title": "Kaca nèng terjemahan",
+ "tpt-other-pages-title": "Kaca rusak",
+ "tpt-new-pages": "{{PLURAL:$1|Kaca iki kaisi|Kaca iki kaisi}} tèks mawa tag terjemahan,\nnangung ora ana vèrsi {{PLURAL:$1|kaca iki|kaca iki}} lagi ditandhai kanggo terjemahan.",
+ "tpt-old-pages": "Sebagéyan vèrsi {{PLURAL:$1|kaca iki|kaca iki}} wis ditandhai kanggo terjemahan.",
+ "tpt-other-pages": "{{PLURAL:$1|Vèrsi lawas kaca iki|Vèrsi lawas kaca iki}} ditandhai kanggo terjemahan,\nnamung {{PLURAL:$1|vèrsi|vèrsi}} pungkasan ora bisa ditandhai kanggo terjemahan.",
+ "tpt-select-prioritylangs": "Dhaptar kodhe basa prioritas diwatesi nganggo koma:",
+ "tpt-select-prioritylangs-force": "Tolak terjemahan nèng basa liya kajaba basa prioritas",
+ "tpt-select-prioritylangs-reason": "Alesan:",
+ "tpt-sections-prioritylangs": "Basa prioritas",
+ "tpt-rev-mark": "tandhai kanggo terjemahan",
+ "tpt-rev-unmark": "busak saka terjemahan",
+ "tpt-rev-encourage": "balèkaké",
+ "tpt-rev-mark-tooltip": "Tandhai vèrsi pungkasan kaca iki kanggo terjemahan.",
+ "tpt-rev-unmark-tooltip": "Busak kaca iki saka terjemahan.",
+ "tpt-rev-encourage-tooltip": "Balekaké kaca iki nèng terjemahan biasa.",
+ "translate-tag-translate-link-desc": "Terjemahaké kaca iki",
+ "translate-tag-markthis": "Tandhai kaca iki kanggo terjemahan",
+ "translate-tag-markthisagain": "Kaca iki nduwèni <span class=\"plainlinks\">[$1 owahan]</span> kawit pungkasan <span class=\"plainlinks\">[$2 ditandhai kanggo terjemahan]</span>.",
+ "translate-tag-hasnew": "Kaca iki kaisi <span class=\"plainlinks\">[$1 owahan]</span> sing ora ditandhai kanggo terjemahan.",
+ "tpt-translation-intro": "Kaca iki <span class=\"plainlinks\">[$1 vèrsi sing wis diterjemahaké]</span> saka kaca [[$2]] lan terjemahan wis rampung $3%.",
+ "tpt-languages-legend": "Basa liya:",
+ "tpt-languages-zero": "Lekasi terjemahan kanggo basa iki",
+ "tpt-target-page": "Kaca iki ora bisa dianyari manual.\nKaca iki kaca terjemahan [[$1]] lan terjemahan bisa dianyari nganggo [$2 prangkat terjemahan].",
+ "tpt-unknown-page": "Bilik jeneng iki dicadhangaké kanggo terjemahan kaca kontèn.\nKaca sing arep Sampéyan sunting kayané ora ana kaitané karo kaca sing ditandhai kanggo terjemahan.",
+ "tpt-translation-restricted": "Terjemahan kaca iki nèng basa iki ditolak déning pangurus terjemahan.\n\nAlesan: $1",
+ "tpt-discouraged-language-force": "<strong>Kaca iki ora bisa diterjemahaké nèng $2.</strong>\n\nPangurus terjemahan milih supaya kaca iki namung bisa diterjemahaké nèng $3.",
+ "tpt-discouraged-language": "<strong>Nerjemahaké nèng $2 dudu prioritas kanggo kaca iki.</strong>\n\nPangurus terjemahan milih fokus nèng upaya terjemahan nèng $3.",
+ "tpt-discouraged-language-reason": "Alesan: $1",
+ "tpt-priority-languages": "Pangurus terjemahan nyetèl basa prioritas kanggo klompok iki dadi $1.",
+ "tpt-render-summary": "Nganyari kanggo nyocokaké vèrsi anyar kaca sumber",
+ "tpt-download-page": "Èkspor kaca mawa terjemahan",
+ "tpt-aggregategroup-add": "Tambah",
+ "tpt-aggregategroup-save": "Simpen",
+ "tpt-aggregategroup-add-new": "Tambah klompok agrégat anyar",
+ "tpt-aggregategroup-new-name": "Jeneng:",
+ "tpt-aggregategroup-new-description": "Katrangan (pilihan):",
+ "tpt-aggregategroup-remove-confirm": "Sampéyan yakin arep mbusak klompok agrégat iki?",
+ "tpt-aggregategroup-invalid-group": "Klompok ora ana",
+ "pt-parse-open": "Tag &lt;translate> ora imbang.\nTemplat terjemahan: <pre>$1</pre>",
+ "pt-parse-close": "Tag &lt;/translate> ora imbang.\nTemplat terjemahan: <pre>$1</pre>",
+ "log-description-pagetranslation": "Log laku sing ana kaitané karo sistem terjemahan kaca",
+ "log-name-pagetranslation": "Log terjemahan kaca",
+ "pt-movepage-title": "Pindhah kaca \"$1\" sing bisa diterjemahaké",
+ "pt-movepage-blockers": "Kaca sing bisa diterjemahaké ora bisa dipindhah nèng jeneng anyar amarga {{PLURAL:$1|kasalahan|kasalahan}} iki:",
+ "pt-movepage-block-base-exists": "Kaca dhasar patujon \"[[:$1]]\" ana.",
+ "pt-movepage-block-base-invalid": "Kaca dhasar patujon dudu judhul sing sah.",
+ "pt-movepage-block-tp-exists": "Kaca terjemahan patujon \"[[:$2]]\" ana.",
+ "pt-movepage-block-tp-invalid": "Judhul kaca terjemahan patujon kanggo \"[[:$1]]\" ora sah (kadawan?).",
+ "pt-movepage-block-section-exists": "Kaca sèksi patujon \"[[:$2]]\" ana.",
+ "pt-movepage-block-section-invalid": "Judhul kaca sèksi patujon kanggo \"[[:$1]]\" ora sah (kadawan?).",
+ "pt-movepage-block-subpage-exists": "Subkaca patujon \"[[:$2]]\" ana.",
+ "pt-movepage-block-subpage-invalid": "Judhul kaca subkkaca patujon kanggo \"[[:$1]]\" ora sah (kadawan?).",
+ "pt-movepage-list-pages": "Daptar kaca sing arep dipindhah",
+ "pt-movepage-list-translation": "Kaca terjemahan",
+ "pt-movepage-list-section": "Kaca sèksi",
+ "pt-movepage-list-other": "Subkaca liya",
+ "pt-movepage-list-count": "Kabèhé $1 {{PLURAL:$1|kaca|kaca}} sing arep dipindhah.",
+ "pt-movepage-legend": "Pindhah kaca sing bisa diterjemahaké",
+ "pt-movepage-current": "Jeneng saiki:",
+ "pt-movepage-new": "Jeneng anyar:",
+ "pt-movepage-reason": "Alesan:",
+ "pt-movepage-subpages": "Pindhak kabèh subkaca",
+ "pt-movepage-action-check": "Priksa yèn pamindhahan bisa dilakokaké",
+ "pt-movepage-action-perform": "Pindhahaké",
+ "pt-movepage-action-other": "Ganti patujon",
+ "pt-movepage-intro": "Kaca astamiwa iki nglilakaké Sampéyan mindhahaké kaca sing ditandhai kanggo terjemahan.\nPamidhahan ora bakal gelis, amarga akèh kaca sing kudu dipindhahaké.\nNalika kaca dipindhahaké, ora bisa interaksi karo kaca sing dimaksud.\nKagagalan bakal dilebokaké nèng [[Special:Log/pagetranslation|log terjemahan kaca]] lan ora perlu dibenahi manual.",
+ "pt-movepage-logreason": "Bagéyan kaca \"$1\" sing bisa diterhemahaké.",
+ "pt-movepage-started": "Kaca dhasar saiki wis dipindhah.\nMangga priksa [[Special:Log/pagetranslation|log pamindhahan kaca]] kanggo layang kasalahan lan parampungan.",
+ "pt-locked-page": "Kaca iki digembok amarga kaca sing bisa diterjemahaké saiki wis dipindhah.",
+ "pt-deletepage-lang-title": "Mbusak kaca \"$1\" sing bisa diterjemahaké.",
+ "pt-deletepage-full-title": "Mbusak kaca \"$1\" sing bisa diterjemahaké.",
+ "pt-deletepage-invalid-title": "Kaca sing dimaksud ora sah.",
+ "pt-deletepage-invalid-text": "Kaca sing dimaksud dudu kaca sing bisa diterjemahaké utawa terjemahan saka kuwi.",
+ "pt-deletepage-action-check": "Daptar kaca sing arep dibusak",
+ "pt-deletepage-action-perform": "Busak",
+ "pt-deletepage-action-other": "Ganti patujon",
+ "pt-deletepage-lang-legend": "Busak kaca terjemahan",
+ "pt-deletepage-full-legend": "Busak kaca sing bisa diterjemahaké",
+ "pt-deletepage-any-legend": "Busak kaca sing bisa diterjemahaké utawa terjemahan saka kaca sing bisa diterjemahaké",
+ "pt-deletepage-current": "Jeneng kaca:",
+ "pt-deletepage-reason": "Alesan:",
+ "pt-deletepage-subpages": "Busak kabèh subkaca",
+ "pt-deletepage-list-pages": "Daptar kaca sing arep dibusak",
+ "pt-deletepage-list-translation": "Kaca terjemahan",
+ "pt-deletepage-list-section": "Kaca sèksi",
+ "pt-deletepage-list-other": "Subkaca liya",
+ "pt-deletepage-list-count": "Kabèhé $1 {{PLURAL:$1|kaca|kaca}} sing arep dibusak.",
+ "pt-deletepage-full-logreason": "Bagéyan kaca \"$1\" sing bisa diterhemahaké.",
+ "pt-deletepage-lang-logreason": "Bagéyan kaca terjemahan \"$1\".",
+ "pt-deletepage-started": "Mangga priksa [[Special:Log/pagetranslation|log terjemahan kaca]] kanggo layang kasalahan lan parampungan."
+}
diff --git a/MLEB/Translate/i18n/pagetranslation/ka.json b/MLEB/Translate/i18n/pagetranslation/ka.json
new file mode 100644
index 00000000..ddde344c
--- /dev/null
+++ b/MLEB/Translate/i18n/pagetranslation/ka.json
@@ -0,0 +1,48 @@
+{
+ "@metadata": {
+ "authors": [
+ "BRUTE",
+ "David1010",
+ "Temuri rajavi"
+ ]
+ },
+ "pagetranslation": "გვერდის თარგმანი",
+ "tpt-section": "თარგმნის ბლოკი $1",
+ "tpt-section-new": "თარგმნის ახალი ბლოკი.\nსახელი: $1",
+ "tpt-section-deleted": "თარგმნის ბლოკი $1",
+ "tpt-template": "გვერდის თარგი",
+ "tpt-diff-old": "წინა ტექსტი",
+ "tpt-diff-new": "ახალი ტექსტი",
+ "tpt-sections-template": "თარგმნის გვერდის თარგი",
+ "tpt-old-pages-title": "გვერდები თარგმნის პროცესში",
+ "tpt-other-pages-title": "დაზიანებული გვერდები",
+ "tpt-select-prioritylangs-reason": "მიზეზი:",
+ "tpt-sections-prioritylangs": "პრიორიტეტული ენები",
+ "tpt-rev-mark": "თარგმნისათვის მონიშვნა",
+ "tpt-rev-discourage": "გამორიცხვა",
+ "tpt-rev-encourage": "აღდგენა",
+ "translate-tag-translate-link-desc": "ამ გვერდის თარგმნა",
+ "tpt-languages-legend": "სხვა ენები:",
+ "tpt-discouraged-language-reason": "მიზეზი: $1",
+ "tpt-aggregategroup-add": "დამატება",
+ "tpt-aggregategroup-save": "შენახვა",
+ "tpt-aggregategroup-new-name": "სახელი:",
+ "tpt-aggregategroup-new-description": "აღწერა (არასავალდებულო):",
+ "tpt-aggregategroup-invalid-group": "ჯგუფი არ არსებობს",
+ "log-name-pagetranslation": "გვერდის თარგმნის ჟურნალი",
+ "pt-movepage-block-subpage-exists": "სამიზნე ქვეგვერდი \"[[:$2]]\" უკვე არსებობს.",
+ "pt-movepage-list-pages": "გადასატანი გვერდების სია",
+ "pt-movepage-list-translation": "სათარგმნი {{PLURAL:$1|გვერდი|გვერდები}}",
+ "pt-movepage-list-other": "სხვა ქვე{{PLURAL:$1|გვერდი|გვერდები}}",
+ "pt-movepage-current": "მიმდინარე სახელი:",
+ "pt-movepage-new": "ახალი სახელი:",
+ "pt-movepage-reason": "მიზეზი:",
+ "pt-movepage-subpages": "ყველა ქვეგვერდის გადატანა",
+ "pt-movepage-action-other": "მიზნის შეცვლა",
+ "pt-deletepage-action-other": "სამიზნის შეცვლა",
+ "pt-deletepage-current": "გვერდის სახელი:",
+ "pt-deletepage-reason": "მიზეზი:",
+ "pt-deletepage-subpages": "ყველა ქვეგვერდის წაშლა",
+ "pt-deletepage-list-translation": "სათარგმნი გვერდები",
+ "pt-deletepage-list-other": "სხვა ქვეგვერდები"
+}
diff --git a/MLEB/Translate/i18n/pagetranslation/kbd-cyrl.json b/MLEB/Translate/i18n/pagetranslation/kbd-cyrl.json
new file mode 100644
index 00000000..0dce648f
--- /dev/null
+++ b/MLEB/Translate/i18n/pagetranslation/kbd-cyrl.json
@@ -0,0 +1,11 @@
+{
+ "@metadata": {
+ "authors": [
+ "Тамэ Балъкъэрхэ"
+ ]
+ },
+ "tpt-diff-old": "Ипэ ит текстыр",
+ "tpt-diff-new": "ТекстыщIэ",
+ "translate-tag-translate-link-desc": "НапэкIуэцIыр зэхъуэкIын",
+ "tpt-languages-legend": "НэгъуэщIыбзэхэр:"
+}
diff --git a/MLEB/Translate/i18n/pagetranslation/km.json b/MLEB/Translate/i18n/pagetranslation/km.json
new file mode 100644
index 00000000..01a97a17
--- /dev/null
+++ b/MLEB/Translate/i18n/pagetranslation/km.json
@@ -0,0 +1,27 @@
+{
+ "@metadata": {
+ "authors": [
+ "គីមស៊្រុន",
+ "វ័ណថារិទ្ធ"
+ ]
+ },
+ "pagetranslation": "ការ​បក​ប្រែ​ទំព័រ​",
+ "tpt-section": "ឯកតាបកប្រែ $1",
+ "tpt-section-new": "ឯកតាបកប្រែថ្មី។\nឈ្មោះ៖ $1",
+ "tpt-section-deleted": "ឯកតាបកប្រែ $1",
+ "tpt-template": "គំរូទំព័រ",
+ "tpt-templatediff": "គំរូ​ទំព័រ​បានផ្លាស់ប្តូរ​។",
+ "tpt-diff-old": "អត្ថបទ​​ពីមុន​",
+ "tpt-diff-new": "អត្ថបទ​ថ្មី​",
+ "tpt-submit": "សម្គាល់​កំណែ​នេះ​សម្រាប់​ការបកប្រែ​",
+ "tpt-sections-oldnew": "ឯកតាបកប្រែថ្មីនិងចាស់",
+ "tpt-sections-deleted": "ឯកតាបកប្រែដែលត្រូវបានលុប",
+ "tpt-sections-template": "គំរូ​ទំព័រ​បកប្រែ​",
+ "tpt-badtitle": "ឈ្មោះ​ទំព័រ​សម្រាប់ ($1) គឺមិនមែន​ជា​ចំនងជើង​ត្រឹមត្រូវ​",
+ "tpt-mark-summary": "បាន​សម្គាល់​កំណែ​នេះ​សម្រាប់​បកប្រែ​",
+ "tpt-edit-failed": "មិនអាច​បន្ទាន់សម័យ​ទំព័រ​៖ $1",
+ "tpt-already-marked": "កំណែ​ចុងក្រោយ​នៃទំព័រ​នេះ​ត្រូវបាន​សម្គាល់​ទុកសម្រាប់​បកប្រែ​។",
+ "translate-tag-translate-link-desc": "បកប្រែទំព័រនេះ",
+ "translate-tag-markthis": "សម្គាល់​ទំព័រ​​នេះ​សម្រាប់​ការបកប្រែ​",
+ "tpt-languages-legend": "ជាភាសាដទៃទៀត៖"
+}
diff --git a/MLEB/Translate/i18n/pagetranslation/kn.json b/MLEB/Translate/i18n/pagetranslation/kn.json
new file mode 100644
index 00000000..68bdb149
--- /dev/null
+++ b/MLEB/Translate/i18n/pagetranslation/kn.json
@@ -0,0 +1,31 @@
+{
+ "@metadata": {
+ "authors": [
+ "Nayvik",
+ "VASANTH S.N."
+ ]
+ },
+ "pagetranslation": "ಪುಟ ಭಾಷಾಂತರ",
+ "tpt-template": "ಪುಟ ಸಿದ್ಧವಿನ್ಯಾಸ",
+ "tpt-diff-old": "ಹಿಂದಿನ ಪಠ್ಯ",
+ "tpt-diff-new": "ಹೊಸ ಪಠ್ಯ",
+ "tpt-old-pages-title": "ಭಾಷಾಂತರದಲ್ಲಿರುವ ಪುಟಗಳು",
+ "tpt-select-prioritylangs-reason": "ಕಾರಣ:",
+ "tpt-rev-mark": "ಭಾಷಾಂತರಕ್ಕೆ ಗುರುತುಮಾಡಿ",
+ "tpt-rev-unmark": "ಭಾಷಾಂತರದಿಂದ ತೆಗೆದುಹಾಕಿ",
+ "tpt-rev-encourage": "ಹಿಂದೆ ಇದ್ದಂತೆ ಮಾಡು",
+ "translate-tag-translate-link-desc": "ಈ ಪುಟವನ್ನು ಅನುವಾದಿಸಿ",
+ "translate-tag-markthis": "ಭಾಷಾಂತರಕ್ಕೆ ಈ ಪುಟವನ್ನು ಗುರುತುಮಾಡಿ",
+ "tpt-languages-legend": "ಇತರ ಭಾಷೆಗಳು:",
+ "tpt-tab-translate": "ಭಾಷಾಂತರಿಸಿ",
+ "tpt-discouraged-language-reason": "ಕಾರಣ: $1",
+ "tpt-aggregategroup-add": "ಸೇರಿಸು",
+ "tpt-aggregategroup-save": "ಉಳಿಸಿ",
+ "tpt-aggregategroup-new-name": "ಹೆಸರು:",
+ "pt-movepage-current": "ಪ್ರಸ್ತುತ ಹೆಸರು:",
+ "pt-movepage-new": "ಹೊಸ ಹಸರು:",
+ "pt-movepage-reason": "ಕಾರಣ:",
+ "pt-deletepage-current": "ಪುಟದ ಹೆಸರು:",
+ "pt-deletepage-reason": "ಕಾರಣ:",
+ "pt-deletepage-list-translation": "ಭಾಷಾಂತರ ಪುಟಗಳು"
+}
diff --git a/MLEB/Translate/i18n/pagetranslation/ko.json b/MLEB/Translate/i18n/pagetranslation/ko.json
new file mode 100644
index 00000000..5d75c9a9
--- /dev/null
+++ b/MLEB/Translate/i18n/pagetranslation/ko.json
@@ -0,0 +1,163 @@
+{
+ "@metadata": {
+ "authors": [
+ "Freebiekr",
+ "Kwj2772",
+ "아라",
+ "Priviet",
+ "Hym411",
+ "Tyey",
+ "Revi"
+ ]
+ },
+ "pagetranslation": "문서 번역",
+ "right-pagetranslation": "번역에 대한 문서의 판 표시",
+ "action-pagetranslation": "번역 가능한 문서 관리",
+ "tpt-desc": "내용 문서를 번역하기 위한 확장 기능",
+ "tpt-section": "번역 단위 $1",
+ "tpt-section-new": "새 번역 단위입니다.\n이름: $1",
+ "tpt-section-deleted": "번역 단위 $1",
+ "tpt-template": "문서 틀",
+ "tpt-templatediff": "문서 틀이 바뀌었습니다.",
+ "tpt-diff-old": "이전 텍스트",
+ "tpt-diff-new": "새 텍스트",
+ "tpt-submit": "이 판을 번역하도록 표시",
+ "tpt-sections-oldnew": "새로 및 기존 번역 단위",
+ "tpt-sections-deleted": "삭제된 번역 단위",
+ "tpt-sections-template": "번역 문서 틀",
+ "tpt-action-nofuzzy": "번역을 무효화하지 마세요",
+ "tpt-badtitle": "주어진 문서 이름($1)은 올바른 제목이 아닙니다",
+ "tpt-nosuchpage": "$1 문서가 존재하지 않습니다",
+ "tpt-oldrevision": "$2 판은 [[:$1]] 문서의 최신 판이 아닙니다.\n최신 판만 번역에서 표시할 수 있습니다.",
+ "tpt-notsuitable": "$1 문서는 번역에 적합하지 않습니다.\n<nowiki><translate></nowiki> 태그가 있고 올바른 문법인지 확인하세요.",
+ "tpt-saveok": "[[:$1]] 문서는 $2 {{PLURAL:$2|번역 단위}}로 번역에 대해 표시했습니다.\n문서는 지금 <span class=\"plainlinks\">[$3 번역]</span>할 수 있습니다.",
+ "tpt-offer-notify": "이 문서에 대해 <span class=\"plainlinks\">[$1 번역자 알림]</span>을 받을 수 있습니다.",
+ "tpt-badsect": "\"$1\"(은)는 $2 번역 유닉에 대해 올바른 이름이 아닙니다.",
+ "tpt-showpage-intro": "다음은 새로와 기존, 삭제된 번역 단위가 나열되어 있습니다.\n번역에 대한 이 판을 표시하기 전에 번역 단위에 대한 바뀜이 번역에 대한 불필요한 작업을 피하기 위해 최소화되어 있는지 확인하세요.",
+ "tpt-mark-summary": "번역에 대해 이 버전 표시함",
+ "tpt-edit-failed": "문서를 업데이트를 할 수 없습니다: $1",
+ "tpt-duplicate": "$1 번역 단위 이름은 한 번 이상 사용합니다.",
+ "tpt-already-marked": "이 문서의 최신 판은 번역에 대해 이미 표시했습니다.",
+ "tpt-unmarked": "$1 문서는 번역에 대해 더 이상 표시하지 않습니다.",
+ "tpt-list-nopages": "문서가 번역에 대해 표시하거나 번역에 대해 표시할 준비가 없습니다.",
+ "tpt-new-pages-title": "문서 번역에 대한 제안",
+ "tpt-old-pages-title": "번역 문서",
+ "tpt-other-pages-title": "잘못된 문서",
+ "tpt-discouraged-pages-title": "없어진 문서",
+ "tpt-new-pages": "{{PLURAL:$1|이 문서는}} 번역을 위해 태그된 문자를 포함하지만,\n번역하도록 표시된 {{PLURAL:$1|이 문서}}의 판이 없습니다.",
+ "tpt-old-pages": "{{PLURAL:$1|이 문서}}의 일부 판은 번역하도록 표시되었습니다.",
+ "tpt-other-pages": "{{PLURAL:$1|이 문서의 오래된 판}}은 번역에서 표시했습니다,\n하지만 최신 {{PLURAL:$1|판}}은 번역에서 표시할 수 없었습니다.",
+ "tpt-discouraged-pages": "{{PLURAL:$1|이 문서는}} 추가 번역에서 없어졌습니다.",
+ "tpt-select-prioritylangs": "우선 언어 코드의 쉼표로 구분한 목록:",
+ "tpt-select-prioritylangs-force": "우선 언어 이외의 언어로 번역 방지",
+ "tpt-select-prioritylangs-reason": "이유:",
+ "tpt-sections-prioritylangs": "우선 언어",
+ "tpt-rev-mark": "번역한 것으로 표시",
+ "tpt-rev-unmark": "번역에서 제거",
+ "tpt-rev-discourage": "번역 중단",
+ "tpt-rev-encourage": "복구",
+ "tpt-rev-mark-tooltip": "번역에 대한 이 문서의 최신 판을 표시합니다.",
+ "tpt-rev-unmark-tooltip": "번역에서 이 문서를 제거합니다.",
+ "tpt-rev-discourage-tooltip": "이 문서에 대한 추가적인 번역을 중단합니다.",
+ "tpt-rev-encourage-tooltip": "이 문서를 정상적인 번역으로 복원합니다.",
+ "translate-tag-translate-link-desc": "이 문서 번역하기",
+ "translate-tag-markthis": "이 문서를 번역 대상으로 표시",
+ "translate-tag-markthisagain": "이 문서에는 최근 <span class=\"plainlinks\">[$2 번역 대상으로 표시]</span>한 이후 <span class=\"plainlinks\">[$1 바뀜]</span>이 있습니다.",
+ "translate-tag-hasnew": "이 문서는 번역 대상으로 표시하지 않은 <span class=\"plainlinks\">[$1 바뀜]</span>을 포함합니다.",
+ "tpt-translation-intro": "이 문서는 [[$2]] 문서를 <span class=\"plainlinks\">[$1 번역한 것]</span>이며 번역은 $3% 완료했습니다.",
+ "tpt-languages-legend": "다른 언어:",
+ "tpt-languages-zero": "이 언어에 대한 번역 시작",
+ "tpt-tab-translate": "번역하기",
+ "tpt-target-page": "이 문서를 수동으로 업데이트할 수 없습니다.\n이 문서는 [[$1]]의 번역이며 번역은 [$2 번역 도구]를 사용하여 업데이트할 수 있습니다.",
+ "tpt-unknown-page": "이 이름공간은 내용 문서 번역에 대해 예약되어 있습니다.\n편집하려고 하는 문서는 번역에 대해 표시한 모든 문서와 일치하지 않는 것 같습니다.",
+ "tpt-translation-restricted": "이 언어로의 이 문서의 번역은 번역 관리자에 의해 차단되었습니다.\n\n이유: $1",
+ "tpt-discouraged-language-force": "<strong>이 문서는 $2(으)로 번역할 수 없습니다.</strong>\n\n번역 관리자는 이 문서가 $3(으)로 번역할 수 있도록 결정했습니다.",
+ "tpt-discouraged-language": "<strong>$2로 번역하는 것은 이 문서에 대해 우선 순위가 아닙니다.</strong>\n\n번역 관리자는 $3에 번역 노력을 집중하기로 결정합니다.",
+ "tpt-discouraged-language-reason": "이유: $1",
+ "tpt-priority-languages": "번역 관리자는 $1(으)로 이 그룹에 대해 우선 언어를 설정합니다.",
+ "tpt-render-summary": "원본 문서의 새 판에 맞게 업데이트",
+ "tpt-download-page": "번역 문서 내보내기",
+ "aggregategroups": "집계 그룹",
+ "tpt-aggregategroup-add": "추가",
+ "tpt-aggregategroup-save": "저장",
+ "tpt-aggregategroup-add-new": "새 집계 그룹 추가",
+ "tpt-aggregategroup-new-name": "이름:",
+ "tpt-aggregategroup-new-description": "설명 (선택):",
+ "tpt-aggregategroup-remove-confirm": "이 총 그룹을 삭제하겠습니까?",
+ "tpt-aggregategroup-invalid-group": "그룹이 존재하지 않습니다",
+ "pt-parse-open": "불균형한 &lt;translate> 태그입니다.\n번역 틀: <pre>$1</pre>",
+ "pt-parse-close": "불균형한 &lt;/translate> 태그입니다.\n번역 틀: <pre>$1</pre>",
+ "pt-parse-nested": "중첩한 &lt;translate> 번역 단위는 허용하지 않습니다.\n태그 텍스트: <pre>$1</pre>",
+ "pt-shake-multiple": "한 번역 단위에 여러 번역 단위를 표시했습니다.\n번역 단위 텍스트: <pre>$1</pre>",
+ "pt-shake-position": "예상하지 않은 위치에 번역 단위를 표시했습니다.\n번역 단위 텍스트: <pre>$1</pre>",
+ "pt-shake-empty": "\"$1\" 표시에 대한 빈 번역 단위입니다.",
+ "log-description-pagetranslation": "문서 번역 시스템에 관련된 작업에 대한 기록",
+ "log-name-pagetranslation": "문서 번역 기록",
+ "logentry-pagetranslation-mark": "$1 사용자가 번역으로 $3(을)를 {{GENDER:$2|표시했습니다}}",
+ "logentry-pagetranslation-unmark": "$1 사용자가 번역에서 $3(을)를 {{GENDER:$2|제거했습니다}}",
+ "logentry-pagetranslation-moveok": "$1 사용자가 $3 번역 가능한 문서를 $4 문서로 이름 바꾸기를 {{GENDER:$2|완료했습니다}}",
+ "logentry-pagetranslation-movenok": "$1 사용자가 $3 문서를 $4 문서로 옮기는 동안 문제가 {{GENDER:$2|발생했습니다}}",
+ "logentry-pagetranslation-deletefok": "$1 사용자가 $3 번역 가능한 문서의 삭제를 {{GENDER:$2|완료했습니다}}",
+ "logentry-pagetranslation-deletefnok": "$1 사용자가 $4 번역 가능한 문서에 속한 $3 문서를 삭제하는 데 {{GENDER:$2|실패했습니다}}",
+ "logentry-pagetranslation-deletelok": "$1 사용자가 $3 번역 문서의 삭제를 {{GENDER:$2|완료했습니다}}",
+ "logentry-pagetranslation-deletelnok": "$1 사용자가 $4 번역 문서에 속한 $3 문서를 삭제하는 데 {{GENDER:$2|실패했습니다}}",
+ "logentry-pagetranslation-encourage": "$1 사용자가 $3의 번역을 {{GENDER:$2|되살렸습니다}}",
+ "logentry-pagetranslation-discourage": "$1 사용자가 $3의 번역을 {{GENDER:$2|중단했습니다}}",
+ "logentry-pagetranslation-prioritylanguages-unset": "$1 사용자가 $3 번역 가능한 문서에서 우선 언어를 {{GENDER:$2|제거했습니다}}",
+ "logentry-pagetranslation-prioritylanguages": "$1 사용자가 $3 번역 가능한 문서에 대한 우선 언어를 $5로 {{GENDER:$2|설정했습니다}}",
+ "logentry-pagetranslation-prioritylanguages-force": "$1 사용자가 $3 번역 가능한 문서에 대한 언어를 $5로 {{GENDER:$2|제한했습니다}}",
+ "logentry-pagetranslation-associate": "$1 사용자가 $3 번역 가능한 문서를 $4 집계 그룹에 {{GENDER:$2|추가했습니다}}",
+ "logentry-pagetranslation-dissociate": "$1 사용자가 $3 번역 가능한 문서를 $4 집계 그룹에서 {{GENDER:$2|제거했습니다}}",
+ "pt-movepage-title": "\"$1\" 번역 가능한 문서 옮기기",
+ "pt-movepage-blockers": "번역 가능한 문서는 다음 {{PLURAL:$1|오류}} 때문에 새 이름으로 옮길 수 없습니다:",
+ "pt-movepage-block-base-exists": "\"[[:$1]]\" 대상 번역 가능한 문서가 존재합니다.",
+ "pt-movepage-block-base-invalid": "대상 번역 가능한 문서 이름은 올바른 제목이 아닙니다.",
+ "pt-movepage-block-tp-exists": "\"[[:$2]]\" 대상 번역 문서가 존재합니다.",
+ "pt-movepage-block-tp-invalid": "\"[[:$1]]\"에 대한 대상 번역 문서 제목은 올바르지 않습니다. (너무 길어요?)",
+ "pt-movepage-block-section-exists": "번역 단위에 대한 \"[[:$2]]\" 대상 문서가 존재합니다.",
+ "pt-movepage-block-section-invalid": "번역 단위에 대한 \"[[:$1]]\"에 대한 대상 부분 문서 제목은 올바르지 않습니다. (너무 길어요?)",
+ "pt-movepage-block-subpage-exists": "\"[[:$2]]\" 대상 하위 문서가 존재합니다.",
+ "pt-movepage-block-subpage-invalid": "\"[[:$1]]\"에 대한 대상 하위 문서 제목은 올바르지 않습니다. (너무 길어요?)",
+ "pt-movepage-list-pages": "이동할 문서 목록",
+ "pt-movepage-list-translation": "번역 {{PLURAL:$1|문서}}",
+ "pt-movepage-list-section": "번역 단위 {{PLURAL:$1|문서}}",
+ "pt-movepage-list-other": "다른 하위 {{PLURAL:$1|문서}}",
+ "pt-movepage-list-count": "이동할 {{PLURAL:$1|문서}} 총 $1개입니다.",
+ "pt-movepage-legend": "번역 가능한 문서 옮기기",
+ "pt-movepage-current": "현재 이름:",
+ "pt-movepage-new": "새 이름:",
+ "pt-movepage-reason": "이유:",
+ "pt-movepage-subpages": "모든 하위 문서 옮기기",
+ "pt-movepage-action-check": "옮길 수 있는지 확인",
+ "pt-movepage-action-perform": "이동하기",
+ "pt-movepage-action-other": "대상 바꾸기",
+ "pt-movepage-intro": "이 특수 문서는 번역에 대해 표시한 문서를 이동할 수 있습니다.\n많은 문서가 이동해야 하기 때문에 즉시 이동 작업이 되지 않습니다.\n문서를 이동하는 동안 질문의 문서와 상호 작용하는 것은 불가능합니다.\n실패하면 [[Special:Log/pagetranslation|문서 번역 기록]]에 기록되고 직접 복구할 필요가 있습니다.",
+ "pt-movepage-logreason": "\"$1\" 번역 가능한 문서의 부분입니다.",
+ "pt-movepage-started": "기본 페이지가 지금 옮겨졌습니다.\n오류에 대해 [[Special:Log/pagetranslation|문서 번역 기록]]을 확인하고 메시지를 완료하세요.",
+ "pt-locked-page": "이 문서는 번역 가능한 문서가 현재 이동하고 있기 때문에 잠겨 있습니다.",
+ "pt-deletepage-lang-title": "\"$1\" 번역 문서를 삭제하고 있습니다.",
+ "pt-deletepage-full-title": "\"$1\" 번역 가능한 문서를 삭제하고 있습니다.",
+ "pt-deletepage-invalid-title": "지정한 문서가 올바르지 않습니다.",
+ "pt-deletepage-invalid-text": "지정한 문서는 번역 가능한 문서도 번역 문서도 아닙니다.",
+ "pt-deletepage-action-check": "삭제될 문서 목록",
+ "pt-deletepage-action-perform": "삭제하기",
+ "pt-deletepage-action-other": "대상 바꾸기",
+ "pt-deletepage-lang-legend": "번역 문서 삭제",
+ "pt-deletepage-full-legend": "번역 가능한 문서 삭제",
+ "pt-deletepage-any-legend": "번역 가능한 문서 또는 번역 문서 삭제",
+ "pt-deletepage-current": "문서 이름:",
+ "pt-deletepage-reason": "이유:",
+ "pt-deletepage-subpages": "모든 하위 문서 삭제",
+ "pt-deletepage-list-pages": "삭제할 문서 목록",
+ "pt-deletepage-list-translation": "번역 문서",
+ "pt-deletepage-list-section": "번역 단위 문서",
+ "pt-deletepage-list-other": "다른 하위 문서",
+ "pt-deletepage-list-count": "삭제할 {{PLURAL:$1|문서}} 총 $1개입니다.",
+ "pt-deletepage-full-logreason": "\"$1\" 번역 가능한 문서의 부분입니다.",
+ "pt-deletepage-lang-logreason": "\"$1\" 번역 문서의 부분입니다.",
+ "pt-deletepage-started": "오류와 메시지 완료를 위한 [[Special:Log/pagetranslation|문서 번역 기록]]를 확인하세요.",
+ "pt-deletepage-intro": "이 특수 문서는 전체 번역 가능한 문서 또는 언어의 개별 번역 문서를 삭제할 수 있습니다.\n번역에 따라 모든 문서가 삭제되기 때문에 즉시 삭제 작업이 되지 않습니다.\n실패하면 [[Special:Log/pagetranslation|문서 번역 기록]]에 기록되고 직접 복구해야 합니다.",
+ "pagemigration": "번역 문서 이주",
+ "pm-pagename-missing": "문서 이름을 입력하세요",
+ "pm-add-icon-hover-text": "아래에 단위 추가"
+}
diff --git a/MLEB/Translate/i18n/pagetranslation/ksh.json b/MLEB/Translate/i18n/pagetranslation/ksh.json
new file mode 100644
index 00000000..9ae371fd
--- /dev/null
+++ b/MLEB/Translate/i18n/pagetranslation/ksh.json
@@ -0,0 +1,154 @@
+{
+ "@metadata": {
+ "authors": [
+ "Purodha"
+ ]
+ },
+ "pagetranslation": "Sigge Övversäze",
+ "right-pagetranslation": "Donn Versione vun Sigge för et Övversäze makeere",
+ "action-pagetranslation": "övversäzbaa Sigge ze verwallde",
+ "tpt-desc": "Projrammzohsatz för Sigge vum Enhalt vum Wiki ze övversäze.",
+ "tpt-section": "Knubbel $1 för ze Övversäze",
+ "tpt-section-new": "Ene neue Knubbel för ze Övversäze: $1",
+ "tpt-section-deleted": "Knubbel $1 för ze Övversäze",
+ "tpt-template": "Siggeschabloon",
+ "tpt-templatediff": "De Siggeschabloon hät sesch jeändert.",
+ "tpt-diff-old": "Dä vörrijje Täx",
+ "tpt-diff-new": "Dä neue Täx",
+ "tpt-submit": "Donn hee di Version för et Övversäze makeere",
+ "tpt-sections-oldnew": "De Knubbelle för ze Övversäze (Jez neu, un de älldere, zosamme)",
+ "tpt-sections-deleted": "Fottjeschmeße Knubbelle för et Övversäze",
+ "tpt-sections-template": "Övversäzungßsiggschabloon",
+ "tpt-action-nofuzzy": "Donn de Övversäzunge nit als övverhollt makeere",
+ "tpt-badtitle": "Dä Name „$1“ es keine jöltijje Tittel för en Sigg",
+ "tpt-nosuchpage": "De Sigg „$1“ jidd_et nit.",
+ "tpt-oldrevision": "„$2“ es nit de neuste Version fun dä Sigg „[[:$1]]“, ävver bloß de neuste kam_mer för et Övversäze makeere.",
+ "tpt-notsuitable": "Di Sigg „$1“ paß nit för et Övversäze. Maach <code><nowiki><translate></nowiki></code>-Makeerunge erin, un looer dat de Süntax shtemmp.",
+ "tpt-saveok": "De Sigg „$1“ es för ze Övversäze makeet. Doh dren {{PLURAL:$2|es eine Knubbel|sinn_er $2 Knubbelle|es ävver keine Knubbel}} för ze Övversäze. Di Sigg kam_mer <span class=\"plainlinks\">[$3 jäz övversäze]</span>.",
+ "tpt-offer-notify": "Do kanns de Översäzere <span class=\"plainlinks\">[$1 övver heh di Sigg bescheidsaare]</span>.",
+ "tpt-badsect": "„$1“ es kein jöltejje Name för dä Knubbel zom Övversäze $2.",
+ "tpt-showpage-intro": "Hee dronger sen Övversäzongsaffschnedde opjeleß, di eruß jenumme woode, di neu sin, un di noch doh sin. Ih dat De hee di Version för ze Övversäze makeere deihß, loor drop, dat esu winnisch wi müjjelesch Änderonge aan Övversäzongsaffschnedde doh sin, öm dä Övversäzere et Levve leisch ze maache.",
+ "tpt-mark-summary": "Han di Version för ze Övversäze makeet",
+ "tpt-edit-failed": "Kunnt de Sigg „$1“ nit ändere",
+ "tpt-duplicate": "Dä Name „$1“ för ene Knubbel kütt mieh wi eijmohl vör.",
+ "tpt-already-marked": "De neuste Version vun dä Sigg es ald för zem Övversäze makeet.",
+ "tpt-unmarked": "De Sigg „$1“ es nit ieh för ze övversäze makeet.",
+ "tpt-list-nopages": "Et sinn_er kein Sigge för zem Övversäze makeet, un et sin och kein doh, wo esu en Makeerunge eren künnte.",
+ "tpt-new-pages-title": "Sigge vörjeschonn för et Övversäze",
+ "tpt-old-pages-title": "Sigge zom Övversäze",
+ "tpt-other-pages-title": "Kapodde Sigge",
+ "tpt-discouraged-pages-title": "Sigge för nit mieh ze övversäze",
+ "tpt-new-pages": "{{PLURAL:$1|Di Sigg hät|Di Sigge han|Kein Sigg hät}} ene <code lang=\"en\">translation</code>-Befähl en sesch, ävve kei Version dofun es för ze Övversäze makeet.",
+ "tpt-old-pages": "En Version vun hee dä {{PLURAL:$1|Sigg|Sigge|-}} es för zem Övversäze makeet.",
+ "tpt-other-pages": "{{PLURAL:$1|En ällder Version vun heh dä Sigg es|$1 ällder Versione vun heh dä Sigg sin}} för et Övversäze frei jejovve, ävver de neuste Version löht sesh nit frei jävve.",
+ "tpt-discouraged-pages": "{{PLURAL:$1|Di Sigg sullt|Di Sigge sullte|Kein Sigg sullt}} nit mieh övversaz wääde.",
+ "tpt-select-prioritylangs": "De Leß met de Köözelle för de vörjetrocke Schprohche, met Kommas dozwesche:",
+ "tpt-select-prioritylangs-force": "Bloß noh de vörjetrocke Schprohche Övversäzze",
+ "tpt-select-prioritylangs-reason": "Jrond:",
+ "tpt-sections-prioritylangs": "De vörjetrocke Schprohche",
+ "tpt-rev-mark": "zom Övversäze freijävve",
+ "tpt-rev-unmark": "Donn heh di Sigg vum Övversäze ußschleeße",
+ "tpt-rev-discourage": "vum Övversäze ußnämme",
+ "tpt-rev-encourage": "wider zerök holle",
+ "tpt-rev-mark-tooltip": "Donn de neuste Version vun dä Sigg för et Övversäzze freijävve",
+ "tpt-rev-unmark-tooltip": "Donn di Sigg vum Övversäzze ußschleeße.",
+ "tpt-rev-discourage-tooltip": "Di Sigg sullt nit mieh wigger övversaz wääde. Donn dat faßhallde.",
+ "tpt-rev-encourage-tooltip": "Donn di Sigg wider wi jewöhmliesch för et Övversäze frei jävve.",
+ "translate-tag-translate-link-desc": "Don di Sigg hee övversäze",
+ "translate-tag-markthis": "Donn heh di Sigg för et Övversäze makeere",
+ "translate-tag-markthisagain": "Hee di Sigg es <span class=\"plainlinks\">[$1 jeändert woode]</span> zick se et läz <span class=\"plainlinks\">[$2 för ze Övversäze]</span> makeet woode es.",
+ "translate-tag-hasnew": "Hee di Sigg <span class=\"plainlinks\">[$1 es jeändert woode]</span>, es ävver nit för ze Övversäze makeet woode.",
+ "tpt-translation-intro": "Hee di Sigg es en <span class=\"plainlinks\">[$1 övversaz Version]</span> vun dä Sigg „[[$2]]“ un es zoh $3% jedonn un om aktoälle Shtandt.",
+ "tpt-languages-legend": "Ander Schprohche:",
+ "tpt-languages-zero": "Donn ens loßlääje mem Övversäze en heh di Schprohch",
+ "tpt-tab-translate": "Övversäze",
+ "tpt-target-page": "Hee di Sigg kam_mer nit vun Hand ändere. Dat hee es en Översäzungß_Sigg vun dä Sigg [[$1]]. De Övversäzung kam_mer övver däm Wiki sing [$2 Övversäzungß_Wärkzüsch] op der neußte Shtand bränge.",
+ "tpt-unknown-page": "Dat Appachtemang hee es för Sigge vum Enhallt vum Wiki ze Övversäze jedaach. Di Sigg, di de jraad ze ändere versöhks, schingk ävver nit met ööhnds en Sigg ze donn ze han, di för zem Övversäze makeet es.",
+ "tpt-translation-restricted": "Et Övversäzze en di Schprohch hät ene Verwallder vum Övversäzze för heh di Sigg verbodde.\n\nJrond: $1",
+ "tpt-discouraged-language-force": "<strong>Heh di Sigg kam_mer nit op $2 övversäze.</strong>\n\nEne Verwallder vum Övversäzze hät faßjelaat, dat di Sigg bloß op $3 övversaz wääde sull.",
+ "tpt-discouraged-language": "<strong>Heh di Sigg op $2 övversäze hät keine Vörrang.</strong>\n\nEne Verwallder vum Övversäzze hät faßjelaat, dat di Sigg en de Houpsaach op $3 övversaz wääde sull.",
+ "tpt-discouraged-language-reason": "Jrond: $1",
+ "tpt-priority-languages": "Ene Verwallder vum Övversäzze hät de Houpschprooche för heh di Jropp op $1 jesaz.",
+ "tpt-render-summary": "Ändere, öm op de neue Version fun de Ojinaal_Sigg ze kumme",
+ "tpt-download-page": "Sigge met Övversäzunge expotteere",
+ "aggregategroups": "Sammeljroppe",
+ "tpt-aggregategroup-add": "Dobei donn",
+ "tpt-aggregategroup-save": "Faßhalde",
+ "tpt-aggregategroup-add-new": "Donn en neu Sammeljropp derbei",
+ "tpt-aggregategroup-new-name": "Dä Name vun dä Jropp:",
+ "tpt-aggregategroup-new-description": "Wat en dä Sammeljrobb es (kann läddesch blieve):",
+ "tpt-aggregategroup-remove-confirm": "Wells De di Sammeljropp verhaftesch fott schmiiße?",
+ "tpt-aggregategroup-invalid-group": "Di Jropp jidd_et nit",
+ "pt-parse-open": "En &lt;translate&gt; es ohne Jääjeshtöck.\nDe Siggeschabloon för ze övversäze: <pre>$1</pre>",
+ "pt-parse-close": "En &lt;/translate&gt; es ohne Jääjeshtöck.\nDe Siggeschabloon för ze övversäze: <pre>$1</pre>",
+ "pt-parse-nested": "En einem &lt;translate> Övversäzongsaffschned kann nit noch eine su ene Affschned dren shteishe.\nDä Täx vun dä Makeerung es: <pre>$1</pre>",
+ "pt-shake-multiple": "Mieh wi eine Makeerung för dersellve Övversäzongsaffschned es nit müjjelesh.\nDä Täx vun däm Övversäzongsaffschned es: <pre>$1</pre>",
+ "pt-shake-position": "Makeerunge för Övversäzongsaffschnedde sin aan dä Pusizjuhn nit müjjelesh.\nDä Täx vun däm Affschned es: <pre>$1</pre>",
+ "pt-shake-empty": "Em Övversäzongsaffschned met dä Makeerong „$1“ es nix dren.",
+ "log-description-pagetranslation": "Logbooch för di Saache, di mem Sigge Övversäze ze donn han",
+ "log-name-pagetranslation": "Logbooch vum Sigge Övversäze",
+ "logentry-pagetranslation-mark": "{{GENDER:$2|Dä|Dat|Dä Metmaacher|De|Dat}} $1 hät di Sigg „$3“ zum Övversäze freijejovve.",
+ "logentry-pagetranslation-unmark": "{{GENDER:$2|Dä|Dat|Dä Metmaacher|De|Dat}} $1 hät di Sigg „$3“ vum Övversäze ußjenumme.",
+ "logentry-pagetranslation-moveok": "Et Ömbenänne vun dä övversäzbaare Sigg „$3“ op „$4“ es fäädesch, wat {{GENDER:$2|vum|vum|vumm Metmaacher|vun dä|vum}} $1 aanjeschtüßße wood.",
+ "logentry-pagetranslation-movenok": "Et Ömbenänne vun dä övversäzbaare Sigg „$3“ op „$4“ es donäve jejange, {{GENDER:$2|wat dä|wat dat|wat dä Metmaacher|wat de|wadd et}} $1 aanjeschtüßße hatt.",
+ "logentry-pagetranslation-deletefok": "Et Fottschmiiße vun dä övversäzbaare Sigg „$3“ es fäädesch, wat {{GENDER:$2|vum|vum|vumm Metmaacher|vun dä|vum}} $1 aanjeschtüßße wood.",
+ "logentry-pagetranslation-deletefnok": "Di Sigg „$3“ — ene Deil vun dä övversäzbaare Sigg „$4“ — fottzeschmiiße, es donäve jejange, {{GENDER:$2|wat dä|wat dat|wat dä Metmaacher|wat de|wadd et}} $1 aanjeschtüßße hatt.",
+ "logentry-pagetranslation-deletelok": "Et Fottschmiiße vun dä Övversäzongs_Sigg „$3“ es fäädesch, wat {{GENDER:$2|vum|vum|vumm Metmaacher|vun dä|vum}} $1 aanjeschtüßße wood.",
+ "logentry-pagetranslation-deletelnok": "Di Sigg „$3“ — ene Deil vun dä Övversäzongs_Sigg „$4“ — fottzeschmiiße, es donäve jejange, {{GENDER:$2|wat dä|wat dat|wat dä Metmaacher|wat de|wadd et}} $1 aanjeschtüßße hatt.",
+ "logentry-pagetranslation-encourage": "{{GENDER:$2|Dä|Dat|Dä Metmaacher|De|Dat}} $1 schleit di Sigg „$3“ zom Övversäze för.",
+ "logentry-pagetranslation-discourage": "{{GENDER:$2|Dä|Dat|Dä Metmaacher|De|Dat}} $1 schleit vör, di Sigg „$3“ nit ze övversäze.",
+ "logentry-pagetranslation-prioritylanguages-unset": "{{GENDER:$2|Dä|Dat|Dä Metmaacher|De|Dat}} $1 hät de vörjetrocke Schprohche för et Övveräze för di Sigg „$3“ fottjeschmeße.",
+ "logentry-pagetranslation-prioritylanguages": "{{GENDER:$2|Dä|Dat|Dä Metmaacher|De|Dat}} $1 hät de vörjetrock Schprohche för et Övveräzonge för di Sigg „$3“ op $5 jesaz.",
+ "logentry-pagetranslation-prioritylanguages-force": "{{GENDER:$2|Dä|Dat|Dä Metmaacher|De|Dat}} $1 hät de Övveräzonge för di Sigg „$3“ beschrängk op $5.",
+ "logentry-pagetranslation-associate": "{{GENDER:$2|Dä|Dat|Dä Metmaacher|De|Dat}} $1 hät di övveräzbaa Sigg „$3“ en di Sammeljropp „$4“ jedonn.",
+ "logentry-pagetranslation-dissociate": "{{GENDER:$2|Dä|Dat|Dä Metmaacher|De|Dat}} $1 hät di övveräzbaa Sigg „$3“ uß dä Sammeljropp „$4“ erußjehollt.",
+ "pt-movepage-title": "De övversäzbaa Sigg „$1“ ömnänne",
+ "pt-movepage-blockers": "Di övversäbaa Sigg künne mer nit ömbenänne. {{PLURAL:$1|Der Jrond es:|De Jrönd sin:|Mer weße ävver kein Jrönd doför.}}",
+ "pt-movepage-block-base-exists": "De övversäzbaa Zielsigg „[[:$1]]“ jidd_et ald.",
+ "pt-movepage-block-base-invalid": "Di aanjejovve Zielsigg hät keine jölteje Siggetittel.",
+ "pt-movepage-block-tp-exists": "De övversäzbaa Zielsigg „[[:$2]]“ jidd_et ald.",
+ "pt-movepage-block-tp-invalid": "De aanjejovve övversäzbaa Zielsigg iere Tittel för „[[:$1]]“ wöhr nit jöltejsch, Velleisch zoh lang?",
+ "pt-movepage-block-section-exists": "En Zielsigg met dämm Övversäzongsafschned „[[:$2]]“ jidd_et ald.",
+ "pt-movepage-block-section-invalid": "Dä Tittel för di Sigg för dä Övversäzongsafschned för „[[:$1]]“ wöhr nit jöltejsch, Velleisch zoh lang?",
+ "pt-movepage-block-subpage-exists": "De Ziel_Ongersigg „[[:$2]]“ jidd_et ald.",
+ "pt-movepage-block-subpage-invalid": "Dä Tittel för de Onger_Sigg för „[[:$1]]“ wöhr nit jöltejsch, Velleisch zoh lang?",
+ "pt-movepage-list-pages": "De Leß met dä Sigge zom Ömbenänne",
+ "pt-movepage-list-translation": "Övversaz {{PLURAL:$1|Sigg|Sigge}}",
+ "pt-movepage-list-section": "Övversäzongsaffschnets_{{PLURAL:$1|Sigg|Sigge}}",
+ "pt-movepage-list-other": "Ander Onger_{{PLURAL:$1|Sigg|Sigge}}",
+ "pt-movepage-list-count": "Ensjesamp ham_mer {{PLURAL:$1|ein Sigg|$1 Sigge|kein Sigg}} för ömzenänne.",
+ "pt-movepage-legend": "Övversäzbaa Sigg ömnänne",
+ "pt-movepage-current": "Der Name em Momang:",
+ "pt-movepage-new": "Der neue Name:",
+ "pt-movepage-reason": "För et Logbooch, der Aanlaß:",
+ "pt-movepage-subpages": "De Ongersigge all met ömnänne",
+ "pt-movepage-action-check": "Fengk erus, ov dat Ömnänne müjjlesch es",
+ "pt-movepage-action-perform": "Ömnänne!",
+ "pt-movepage-action-other": "Ander Zieltittel",
+ "pt-movepage-intro": "Heh di Extrasigg löht Desh Sigge ömdäufe, di för et Övversäze frei jejovve sin.\nDat jeiht nit en einem Rötsch, weil ene Pöngel Sigge un -Deile ömjenannt wääde möße.\nEm MediaWiki sing <i lang=\"en\"> [http://www.mediawiki.org/wiki/Manual:Job_queue job queue] </i> weed doför jebruch.\nSu lang, wi de Sigge ömjenannt wääde, kam_mer met dänne nix söns maache.\nFähler kumme en et [[Special:Log/pagetranslation|{{int:pt-log-name}}]] un möße vun Hand opjerühmp wääde.",
+ "pt-movepage-logreason": "Deil vun dä övversäzbaa Sigg „$1“",
+ "pt-movepage-started": "Di Sigg weed jäz ömjenannt.\nDon op jede Fall em [[Special:Log/pagetranslation|{{int:pt-log-name}}]] noh Fähler loore, un dat dat öhndlesch aan et Eng jekumme es.",
+ "pt-locked-page": "Dat Stöck heh is jesperrt, däm sing övversäbaa Sigg weed nämmisch jrad ömbenannt.",
+ "pt-deletepage-lang-title": "De Övversäzongssigg „$1“ fottschmieße",
+ "pt-deletepage-full-title": "De övversäzbaa Sigg „$1“ fottschmieße.",
+ "pt-deletepage-invalid-title": "Di aanjejovve Sigg es nit jöltesch.",
+ "pt-deletepage-invalid-text": "Di aanjejovve Sigg es kein övversäbaa Sigg un och kein Övversäzong vun einer.",
+ "pt-deletepage-action-check": "Don de Sigge opleßte, di fott sulle",
+ "pt-deletepage-action-perform": "Maach nu fott!",
+ "pt-deletepage-action-other": "Nemm ene andere Zieltittel",
+ "pt-deletepage-lang-legend": "Övversäzongssigg fottschmieße",
+ "pt-deletepage-full-legend": "En övversäzbaa Sigg fottschmieße",
+ "pt-deletepage-any-legend": "En övversäzbaa Sigg udder övversaz Sigg fottschmieße",
+ "pt-deletepage-current": "Dä Sigg iere Tittel:",
+ "pt-deletepage-reason": "Der Jrond:",
+ "pt-deletepage-subpages": "Schmieß all de Ongersigge fott",
+ "pt-deletepage-list-pages": "De Leß met dä Sigge zom Fottschmieße",
+ "pt-deletepage-list-translation": "Övversaz Sigge",
+ "pt-deletepage-list-section": "Övversäzongsaffschnets_Sigge",
+ "pt-deletepage-list-other": "Ander Ongersigge",
+ "pt-deletepage-list-count": "Ensjesamp ham_mer {{PLURAL:$1|ein Sigg|$1 Sigge|kein Sigg}} för fottzeschmieße.",
+ "pt-deletepage-full-logreason": "Deil vun dä övversäzbaa Sigg „$1“",
+ "pt-deletepage-lang-logreason": "Deil vun dä övversaz Sigg „$1“",
+ "pt-deletepage-started": "Loor em [[Special:Log/pagetranslation|Logbooch vun de Övversäzonge]] noh Fähler un Nohreeschte.",
+ "pt-deletepage-intro": "Heh di Söndersigg määd et müjjelesch. kumplätte övversäbaa Sigge udder Övversäzonge en en beshtemmpte Shprooch fottzeschmieße.\nDat Fottschmieße dohrt e Wielsche, weil alle dervun affhängeje Sigge derbei och fott jeschmeße wääde möße.\nFähler kumme en et [[Special:Log/pagetranslation|Logbooch vum Övversäze]] un möße vun Hand jraadjeröck wääde."
+}
diff --git a/MLEB/Translate/i18n/pagetranslation/ku-latn.json b/MLEB/Translate/i18n/pagetranslation/ku-latn.json
new file mode 100644
index 00000000..9e7fd2df
--- /dev/null
+++ b/MLEB/Translate/i18n/pagetranslation/ku-latn.json
@@ -0,0 +1,32 @@
+{
+ "@metadata": {
+ "authors": [
+ "George Animal",
+ "Gomada"
+ ]
+ },
+ "pagetranslation": "Wergera rûpelê",
+ "right-pagetranslation": "Versiyonên rûpelên ji bo wergerê nîşan bike",
+ "tpt-diff-old": "Nivîsa pêşî",
+ "tpt-diff-new": "Nivîsa nû",
+ "tpt-submit": "Vê versiyonê ji bo wergerê îşaret bike",
+ "tpt-nosuchpage": "Rûpela $1 tune.",
+ "tpt-select-prioritylangs-reason": "Sedem:",
+ "translate-tag-translate-link-desc": "Vê rûpelê werrgerîne",
+ "translate-tag-markthis": "Vê rûpelê ji bo wergerê îşaret bike",
+ "tpt-languages-legend": "Zimanên din:",
+ "tpt-download-page": "Rûpela bi wergeran bişîne",
+ "tpt-aggregategroup-add": "Lê zêde bike",
+ "tpt-aggregategroup-new-name": "Nav:",
+ "pt-movepage-list-translation": "Rûpelên wergerê",
+ "pt-movepage-list-other": "Binrûpelên din",
+ "pt-movepage-current": "Navê niha:",
+ "pt-movepage-new": "Navê nû:",
+ "pt-movepage-reason": "Sedem:",
+ "pt-movepage-subpages": "Hemû binrûpelan bigerîne",
+ "pt-deletepage-full-legend": "Rûpela wergerê jê bibe",
+ "pt-deletepage-current": "Navê rûpelê:",
+ "pt-deletepage-reason": "Sedem:",
+ "pt-deletepage-subpages": "Hemû binrûpelan jê bibe",
+ "pt-deletepage-list-other": "Binrûpelên din"
+}
diff --git a/MLEB/Translate/i18n/pagetranslation/ky.json b/MLEB/Translate/i18n/pagetranslation/ky.json
new file mode 100644
index 00000000..b49ad40f
--- /dev/null
+++ b/MLEB/Translate/i18n/pagetranslation/ky.json
@@ -0,0 +1,25 @@
+{
+ "@metadata": {
+ "authors": [
+ "Викиней"
+ ]
+ },
+ "pagetranslation": "Которуу барагы",
+ "tpt-template": "Калып барагы",
+ "tpt-diff-new": "Жаңы текст",
+ "tpt-select-prioritylangs-reason": "Себеп:",
+ "tpt-sections-prioritylangs": "Артыкчылыктуу тилдер",
+ "translate-tag-translate-link-desc": "Бул баракты которуу",
+ "translate-tag-markthis": "Бул баракты которуу үчүн белгилөө",
+ "tpt-languages-legend": "Башка тилдер:",
+ "tpt-languages-zero": "Ушул тилге которууну баштоо",
+ "tpt-discouraged-language-reason": "Себеп: $1",
+ "tpt-aggregategroup-save": "Сактоо",
+ "tpt-aggregategroup-new-name": "Аталышы:",
+ "tpt-aggregategroup-new-description": "Баяндамасы (милдеттүү эмес):",
+ "pt-movepage-current": "Азыркы аты:",
+ "pt-movepage-new": "Жаңы аты:",
+ "pt-movepage-reason": "Себеби:",
+ "pt-deletepage-current": "Барактын аты:",
+ "pt-deletepage-reason": "Себеп:"
+}
diff --git a/MLEB/Translate/i18n/pagetranslation/lb.json b/MLEB/Translate/i18n/pagetranslation/lb.json
new file mode 100644
index 00000000..05e04aee
--- /dev/null
+++ b/MLEB/Translate/i18n/pagetranslation/lb.json
@@ -0,0 +1,186 @@
+{
+ "@metadata": {
+ "authors": [
+ "Les Meloures",
+ "Purodha",
+ "Robby",
+ "Soued031"
+ ]
+ },
+ "pagetranslation": "Iwwersetzung vun der Säit",
+ "right-pagetranslation": "Versioune vu Säite fir Iwwersetzung markéieren",
+ "action-pagetranslation": "Iwwersetzbar Säit geréieren",
+ "tpt-desc": "Erweiderung fir inhaltlech Säiten z'iwwersetzen",
+ "tpt-section": "Iwwersetzungseenheet $1",
+ "tpt-section-new": "Numm: $1",
+ "tpt-section-deleted": "Iwwersetzungseenheet $1",
+ "tpt-template": "Säiteschabloun",
+ "tpt-templatediff": "D'Säiteschabloun gouf geännert.",
+ "tpt-diff-old": "Viregen Text",
+ "tpt-diff-new": "Neien Text",
+ "tpt-submit": "Dës Versioun fir d'Iwwersetze markéieren",
+ "tpt-sections-oldnew": "Nei an Iwwersetzungseeenheeten déi et scho gëtt",
+ "tpt-sections-deleted": "Geläscht Iwwersetzungseenheeten",
+ "tpt-sections-template": "Iwwersetzung Säiteschabloun",
+ "tpt-action-nofuzzy": "Invalidéiert keng Iwwersetzungen",
+ "tpt-badtitle": "De Säitennumm deen ugi gouf ($1) ass kee valabelen Titel",
+ "tpt-nosuchpage": "D'Säit $1 gëtt et net",
+ "tpt-oldrevision": "$2 ass net déi lescht Versioun vun der Säit [[:$1]].\nNëmmen déi lescht Versioune kënne fir d'Iwwersetzung markéiert ginn.",
+ "tpt-notsuitable": "D'Säit $1 ass net geeegent fir iwwersat ze ginn.\nVergewëssert Iech ob se <nowiki><translate></nowiki>-Taggen an eng valabel Syntax huet.",
+ "tpt-saveok": "D'Säit [[:$1]] gouf fir d'Iwwersetzung mat $2 {{PLURAL:$2|Iwwersetzungseenheet|Iwwersetzungseenheete}} markéiert.\nD'Säit kann elo <span class=\"plainlinks\">[$3 iwwersat]</span> ginn.",
+ "tpt-offer-notify": "Dir kënnt iwwer dës Säit <span class=\"plainlinks\">[$1 Iwwersetzer informéieren]</span>.",
+ "tpt-badsect": "\"$1\" ass kee valbelen Numm fir d'Iwwersetzungseenheet $2.",
+ "tpt-showpage-intro": "Ënnendrënner stinn déi nei, aktuell a geläscht Abschnitter.\nIer Dir dës Versioun fir d'iwwersetze markéiert, kuckt w.e.g. no datt d'Ännerunge vun den Abschnitter déi iwwersat solle ginn op e Minimum reduzéiert gi fir onnëtz Aarbecht vun den Iwwersetzer ze vermeiden.",
+ "tpt-mark-summary": "huet dës Versioun fir d'Iwwersetzung markéiert",
+ "tpt-edit-failed": "D'Säit $1 konnt net aktualiséiert ginn",
+ "tpt-duplicate": "Den Numm $1 vun der Iwwersetzungwseenheet gëtt méi wéi eemol benotzt.",
+ "tpt-already-marked": "Déilescht Versioun vun dëser Säit gouf scho fir d'Iwwersetzung markéiert.",
+ "tpt-unmarked": "D'Säit $1 ass net méi fir z'iwwersetze markéiert.",
+ "tpt-list-nopages": "Et si keng Säite fir d'Iwwersetzung markéiert respektiv fäerdeg fir fir d'Iwersetzung markéiert ze ginn.",
+ "tpt-new-pages-title": "Säiten déi fir d'Iwwersetzung virgeschlo goufen",
+ "tpt-old-pages-title": "Säiten déi iwwersat ginn",
+ "tpt-other-pages-title": "Futtis Säiten",
+ "tpt-discouraged-pages-title": "Säiten déi vun der Iwwersetzung zréckgezu sinn",
+ "tpt-new-pages": "Op {{PLURAL:$1|dëser Säit|dëse Säiten}} ass Text mat Iwwersetzungs-Markéierungen, awer keng Versioun vun {{PLURAL:$1|dëser Säit|dëse Säiten}} ass elo fir d'Iwwersetze markéiert.",
+ "tpt-old-pages": "Eng Versioun vun {{PLURAL:$1|dëser Säit|dëse Säite}} gouf fir d'Iwwersetze markéiert.",
+ "tpt-other-pages": "Al Versioun vun {{PLURAL:$1|dëser Säit|dëse Säite}} sinn als z'iwwesetze markéiert,\nawer déi lescht Versioun kann fir d'Iwwersetzung markéiert ginn.",
+ "tpt-discouraged-pages": "{{PLURAL:$1|Dës Säit gouf|Dës Säite goufe}} vun der Lëscht vun de recommandéierten Iwwersetzungen erofgeholl.",
+ "tpt-select-prioritylangs": "Komma-getrennte Lëscht vun de prioritäre Sproochcoden:",
+ "tpt-select-prioritylangs-force": "Iwwersetzungen an aner Sprooche wéi déi prioritär Sprooche verhënneren",
+ "tpt-select-prioritylangs-reason": "Grond:",
+ "tpt-sections-prioritylangs": "Prioritär Sproochen",
+ "tpt-rev-mark": "markéiere fir z'iwwersetzen",
+ "tpt-rev-unmark": "Vum Iwwersetzen ewechhuelen",
+ "tpt-rev-discourage": "Vun der Iwwersetzung zréckzéien",
+ "tpt-rev-encourage": "restauréieren",
+ "tpt-rev-mark-tooltip": "Déi rezentst Versioun vun dëser Säit fir d'Iwwersetze markéieren.",
+ "tpt-rev-unmark-tooltip": "Dës Säit vum Iwwersetzen ewechhuelen.",
+ "tpt-rev-discourage-tooltip": "Weider Iwwersetzunge vun dëser Säit net méi ënnerstëtzten.",
+ "tpt-rev-encourage-tooltip": "Dës Säit nees fir d'Iwwersetze fräiginn",
+ "translate-tag-translate-link-desc": "Dës Säit iwwersetzen",
+ "translate-tag-markthis": "Dës Säit fir d'Iwwersetzung markéieren",
+ "translate-tag-markthisagain": "Dës Säit huet <span class=\"plainlinks\">[$1 Ännerungen]</span> zënter datt se fir d'lescht <span class=\"plainlinks\">[$2 fir d'Iwwersetzung markéiert gouf]</span>.",
+ "translate-tag-hasnew": "Op dëser Säit si(nn)s <span class=\"plainlinks\">[$1 Ännerungen]</span> déi net fir d'iwwersetzung markéiert sinn.",
+ "tpt-translation-intro": "Dës Säit ass eng <span class=\"plainlinks\">[$1 iwwersate Versioun]</span> vun der Säit [[$2]] an d'Iwwersetzung ass zu $3 % komplett.",
+ "tpt-languages-legend": "aner Sproochen:",
+ "tpt-languages-zero": "Iwwersetzung fir dës Sprooch ufänken",
+ "tpt-languages-nonzero": "$1 ($2% iwwersat)",
+ "tpt-tab-translate": "Iwwersetzen",
+ "tpt-target-page": "Dës Säit kann net manuell aktualiséiert ginn.\nDës Säit ass eng Iwwersetzung vun der Säit [[$1]] an d'Iwwersetzung ka mat Hëllef vun der [$2 Iwwersetzungsfunktioun] aktualiséiert ginn.",
+ "tpt-unknown-page": "Dësen Nummraum ass fir d'Iwwersetze vu Säite mat Inhalt reservéiert.\nD'Säit, déi Dir versicht z'änneren, schéngt net mat enger Säit déi fir d'Iwwersetzung markéiert ass ze korrespondéieren.",
+ "tpt-translation-restricted": "D'Iwwersetze vun dëser Säit an dës Sprooch gouf vun engem Iwwersetzungs-Administrateur gespaart.\n\nGrond: $1",
+ "tpt-discouraged-language-force-header": "Dës Säit kann net op $1 iwwersat ginn.",
+ "tpt-discouraged-language-force-content": "Een Iwwersetzungsadministrateur huet decidéiert datt dës Säit just op $1 iwwersat sollt ginn.",
+ "tpt-discouraged-language-header": "D'Iwwersetzen op $1 ass keng Prioritéit fir dës Säit.",
+ "tpt-discouraged-language-content": "Een Iwwersetzungsadministrateur huet decidéiert d'Iwwersetzungen op $1 ze konzentréieren.",
+ "tpt-discouraged-language-force": "<strong>Dës Säit kann net op $2 iwwersat ginn.</strong>\n\nEn Iwwersetzungs-Administrateur huet decidéiert datt dës Säit nëmmen op $3 iwwersat ka ginn.",
+ "tpt-discouraged-language": "<strong>D'Iwwersetzung op $2 ass keng Prioritéit fir dës Säit.</strong>\n\nEn Iwwersetzungs-Administrateur huet decidéiert fir d'Iwwersetzungs-Efforten op $3 ze konzentréieren.",
+ "tpt-discouraged-language-reason": "Grond: $1",
+ "tpt-priority-languages": "En Iwwersetzungs-Administrateur huet déi prioritiséiert Sprooche fir dëse Grupp op $1 agestallt.",
+ "tpt-render-summary": "Aktualiséieren fir mat der neier Versioun vun der Quellsäit iwwereneenzestëmmen",
+ "tpt-download-page": "Säit mat Iwwersetzungen exportéieren",
+ "aggregategroups": "Gruppen zesummeleeën",
+ "tpt-aggregategroup-add": "Derbäisetzen",
+ "tpt-aggregategroup-save": "Späicheren",
+ "tpt-aggregategroup-add-new": "Eng nei zesummegeluechte Grupp derbäisetzen",
+ "tpt-aggregategroup-new-name": "Numm:",
+ "tpt-aggregategroup-new-description": "Beschreiwung (optional):",
+ "tpt-aggregategroup-remove-confirm": "Sidd Dir sécher datt Dir dëse Grupp läsche wëllt?",
+ "tpt-aggregategroup-invalid-group": "De Grupp gëtt et net",
+ "tpt-aggregategroup-edit-name": "Numm:",
+ "tpt-aggregategroup-edit-description": "Beschreiwung:",
+ "tpt-aggregategroup-update": "Späicheren",
+ "tpt-aggregategroup-update-cancel": "Ofbriechen",
+ "tpt-invalid-group": "Net valabele Grupp",
+ "pt-parse-open": "Netsymetreschen &lt;translate&gt;-Tag.\nIwwersetzungsschabloun: <pre>$1</pre>",
+ "pt-parse-close": "Netsymetreschen &lt;&#47;translate&gt;-Tag.\nIwwersetzungsschabloun: <pre>$1</pre>",
+ "pt-parse-nested": "Verschachtelt &lt;translate&gt;-Iwweraetzungs-Eenheete sinn net méiglech.\nText vum Tag: <pre>$1</pre>",
+ "pt-shake-multiple": "E puer Iwwersetzungs-Eenheete-Markéierungen fir eng Iwwersetzungs-Eenheet.\nText vun der Iwwersetzungs-Eenheet: <pre>$1</pre>",
+ "pt-shake-position": "Markéierungen fir Iwwersetzungseenheeten op enger onerwaarter Plaz.\nText fir Iwwersetzungseenheet: <pre>$1</pre>",
+ "pt-shake-empty": "Iwwersetzungs-Eenheete fir Marker $1 eidelmaachen.",
+ "log-description-pagetranslation": "Logbuch vun den Aktiounee a Verbindung mat dem System vun der Säiteniwwersetzung",
+ "log-name-pagetranslation": "Logbuch vun de Säiteniwwersetzungen",
+ "logentry-pagetranslation-mark": "$1 {{GENDER:$2|huet}} d'Säit $3 markéiert fir z'iwwersetzen",
+ "logentry-pagetranslation-unmark": "$1 {{GENDER:$2|huet}} d'Säit $3 aus der Lëscht vun den Iwwersetzungen erausgeholl",
+ "logentry-pagetranslation-movenok": "$1 {{GENDER:$2|hat}} e Problem beim Réckele vun der Säit $3 op $4",
+ "logentry-pagetranslation-deletefok": "$1 {{GENDER:$2|huet}} d'iwwersetzbar Säit $3 geläscht",
+ "logentry-pagetranslation-deletelok": "$1 {{GENDER:$2|huet}} d'Läsche vun der Iwwersetzungssäit $3 ofgeschloss",
+ "logentry-pagetranslation-encourage": "$1 {{GENDER:$2|huet}} d'Iwwersetzung vun $3 recommandéiert",
+ "pt-movepage-title": "Déi iwwersetzbar Säit $1 réckelen",
+ "pt-movepage-blockers": "déi iwwersetzbar Säit kann net op den neien Numm geréckelt gi wéinst {{PLURAL:$1|dësem|dëse}} Feeler:",
+ "pt-movepage-block-base-exists": "D'Ziliwwersetzungssäit \"[[:$1]]\" gëtt et schonn.",
+ "pt-movepage-block-base-invalid": "Den Numm vun der Ziliiwersetzungssäit huet kee valabelen Titel.",
+ "pt-movepage-block-tp-exists": "D'Iwwersetzungszilsäit [[:$2]] gëtt et schonn.",
+ "pt-movepage-block-tp-invalid": "Den Numm vun der iwwersater Zilsäit fir [[:$1]] wier net valabel (ze laang?).",
+ "pt-movepage-block-section-exists": "Den Zilabschnitt ''[[:$2]]'' fir dës Iwwersetzungs-Eenheet gëtt et schonn.",
+ "pt-movepage-block-section-invalid": "Den Numm vun der Iwwersetzungs-Eenheet vun der Zilsäit fir ''[[:$1]]'' wier net valabel (ze laang?).",
+ "pt-movepage-block-subpage-exists": "D'Zil-Ënnersäit [[:$2]] gëtt et schonn.",
+ "pt-movepage-block-subpage-invalid": "Den Titel vun der Zil-Ënnersäit fir [[:$1]] wier net valabel (ze laang?).",
+ "pt-movepage-list-pages": "Lëscht vun de Säite fir ze réckelen",
+ "pt-movepage-list-translation": "Iwwersetzung {{PLURAL:$1|Säit|Säiten}}",
+ "pt-movepage-list-section": "Iwwersetzungseenheet {{PLURAL:$1|Säit|Säiten}}",
+ "pt-movepage-list-other": "Aner Ënner{{PLURAL:$1|säit|säiten}}",
+ "pt-movepage-list-count": "Am ganzen $1 {{PLURAL:$1|Säit|Säite}} fir ze réckelen.",
+ "pt-movepage-legend": "Iwwersetzbar Säit réckelen",
+ "pt-movepage-current": "Aktuellen Numm:",
+ "pt-movepage-new": "Neien Numm:",
+ "pt-movepage-reason": "Grond:",
+ "pt-movepage-subpages": "All Ënnersäite réckelen",
+ "pt-movepage-action-check": "Nokucken ob d'Réckele méiglech ass",
+ "pt-movepage-action-perform": "Réckelen",
+ "pt-movepage-action-other": "Zil änneren",
+ "pt-movepage-intro": "Dës Spezialsäit erméiglecht Iech et fir Säiten déi fir d'Iwwersetzung markéiert sinn ze réckelen.\nD'Réckelaktioun gëtt net direkt gemaach wëll vill Säite geréckelt musse ginn.\nD'Job-Queue gëtt fir d'Réckele vun de Säite benotzt.\nDa wann d'Säite geréckelt ginn ass et net méiglech mat deene Säiten déi grad geréckelt ginn ze schaffen.\nWann et net funktionéiert gëtt dat am [[Special:Log/pagetranslation|Iwwersetzungs-Logbuch]] festgehalen an et muss vun Hand reparéiert ginn.",
+ "pt-movepage-logreason": "Deel vun der iwwersetzbarer Säit $1.",
+ "pt-movepage-started": "D'Basissäit ass elo geréckelt.\nKuckt w.e.g. d'[[Special:Log/pagetranslation|Logbuch vun den Iwwersetzunge]] fir Feelermeldungen respektiv d'Meldung datt alles ok ass.",
+ "pt-locked-page": "Dës Säit ass gespaart wëll déi iwwersetzbar Säit elo geréckelt gëtt.",
+ "pt-deletepage-lang-title": "D'Iwwersetzungssäit $1 gëtt geläscht.",
+ "pt-deletepage-full-title": "Déi iwwersetzbar Säit $1 gëtt geläscht.",
+ "pt-deletepage-invalid-title": "Déi spezifizéiert Säit ass net valabel.",
+ "pt-deletepage-invalid-text": "Déi Säit déi Dir uginn hutt ass keng iwwersetzbar Säit a keng Iwwersetzungssäit.",
+ "pt-deletepage-action-check": "Säiten déi geläscht solle ginn opzielen",
+ "pt-deletepage-action-perform": "Elo läschen",
+ "pt-deletepage-action-other": "Zil änneren",
+ "pt-deletepage-lang-legend": "Iwwersetzungssäit läschen",
+ "pt-deletepage-full-legend": "Iwwersetzbar Säit läschen",
+ "pt-deletepage-any-legend": "Säit fir z'iwwersetzen oder Iwwersetzung vun enger Säit läschen",
+ "pt-deletepage-current": "Numm vun der Säit:",
+ "pt-deletepage-reason": "Grond:",
+ "pt-deletepage-subpages": "All Ënnersäite läschen",
+ "pt-deletepage-list-pages": "Lëscht vun de Säite fir ze läschen",
+ "pt-deletepage-list-translation": "Iwwersetzungssäiten",
+ "pt-deletepage-list-section": "Iwwersetzungseenheet vu Säiten",
+ "pt-deletepage-list-other": "Aner Ënnersäiten",
+ "pt-deletepage-list-count": "Am ganzen $1 {{PLURAL:$1|Säit|Säite}} fir ze läschen.",
+ "pt-deletepage-full-logreason": "Deel vun der iwwersetzbarer Säit $1.",
+ "pt-deletepage-lang-logreason": "Deel vun der iwwersater Säit $1.",
+ "pt-deletepage-started": "Kuckt w.e.g. d'[[Special:Log/pagetranslation|Logbuch vun den Iwwersetzunge]] fir Feelermeldungen respektiv d'Meldung datt alles ok ass, no.",
+ "pt-deletepage-intro": "Dës Spezialsäit erméiglecht et eng ganz iwwersetzbar Säit oder eng individuell Iwwersetzungssäit an enger Sprooch ze läschen.\nD'Läschaktioun gesäit een net direkt well all d'Säiten déi dovun ofhänken och geläscht ginn.\nFeeler ginn am [[Special:Log/pagetranslation|Iwwersetzungs-Logbuch]] agedro a mussen duerno manuell gefléckt ginn.",
+ "pagemigration": "Migratioun vun der Iwwersetzungssäit",
+ "pm-import-button-label": "Importéieren",
+ "pm-savepages-button-label": "Späicheren",
+ "pm-cancel-button-label": "Ofbriechen",
+ "pm-pagename-placeholder": "Gitt den Numm vun der Säit an",
+ "pm-langcode-placeholder": "Sproochcode",
+ "pm-page-does-not-exist": "$1 gëtt et net",
+ "pm-old-translations-missing": "Op $1 si keng al Iwwersetzungen dran",
+ "pm-pagename-missing": "Gitt w.e.g. den Numm vun der Säit an",
+ "pm-langcode-missing": "Gitt w.e.g. de Sproochcode an",
+ "pm-add-icon-hover-text": "Eng Eenheet drënner derbäisetzen",
+ "pm-swap-icon-hover-text": "Mat der Eenheet drënner wiesselen",
+ "pm-delete-icon-hover-text": "Eenheet läschen",
+ "pm-pagetitle-invalid": "Gitt w.e.g. e valabelen Titel fir d'Säit an",
+ "pm-summary-import": "Iwwersetzung importéiert mat Hëllef vun [[Special:PageMigration|Säitemigratioun]]",
+ "tpt-translate-title": "Iwwersetzung vum Titel vun der Säit erlaben",
+ "pp-save-summary": "Huet d'Säit fir d'Iwwersetzung preparéiert",
+ "pagepreparation": "D'Säit fir d'Iwwersetzung virbereeden",
+ "pp-pagename-placeholder": "Gitt den Numm vun der Säit an",
+ "pp-prepare-button-label": "Preparéieren",
+ "pp-save-button-label": "Späicheren",
+ "pp-save-message": "D^?Säit gouf gespäichert. Dir kënnt se [$1 änneren].",
+ "pp-prepare-message": "D'Säit gouf fir d'Iwwersetzung virbereed. Kuckt d'Differenz hei drënner. Klickt de \"{{int:pp-save-button-label}}\" Knäppche wann et ok ass!",
+ "pp-already-prepared-message": "Et schéngt datt d'Säit scho fir d'Iwwersetzung virbereed gouf. Et gëtt keng Ännerungen am Verglach mat der vireger Versioun.",
+ "pp-pagename-missing": "Gitt w.e.g. den Numm vun der Säit an.",
+ "pp-diff-old-header": "Quelltext",
+ "pp-diff-new-header": "Preparéierten Text",
+ "tpt-unlink-button": "Vun der Iwwersetzung ewechhuelen"
+}
diff --git a/MLEB/Translate/i18n/pagetranslation/lg.json b/MLEB/Translate/i18n/pagetranslation/lg.json
new file mode 100644
index 00000000..9fe38f19
--- /dev/null
+++ b/MLEB/Translate/i18n/pagetranslation/lg.json
@@ -0,0 +1,9 @@
+{
+ "@metadata": {
+ "authors": [
+ "Kizito"
+ ]
+ },
+ "translate-tag-translate-link-desc": "Vvuunula olupapula luno",
+ "tpt-languages-legend": "Nnimi ndala:"
+}
diff --git a/MLEB/Translate/i18n/pagetranslation/lrc.json b/MLEB/Translate/i18n/pagetranslation/lrc.json
new file mode 100644
index 00000000..6b8e51da
--- /dev/null
+++ b/MLEB/Translate/i18n/pagetranslation/lrc.json
@@ -0,0 +1,15 @@
+{
+ "@metadata": {
+ "authors": [
+ "Mogoeilor"
+ ]
+ },
+ "pagetranslation": "بلگه لرسن",
+ "tpt-diff-old": "متن دمایی",
+ "tpt-diff-new": "متن تازه",
+ "tpt-select-prioritylangs-reason": "دليل:",
+ "tpt-tab-translate": "لرسن",
+ "tpt-aggregategroup-add": "اضاف كو",
+ "tpt-aggregategroup-save": "ذخيره كردن",
+ "tpt-aggregategroup-new-name": "نوم:"
+}
diff --git a/MLEB/Translate/i18n/pagetranslation/lt.json b/MLEB/Translate/i18n/pagetranslation/lt.json
new file mode 100644
index 00000000..0927950e
--- /dev/null
+++ b/MLEB/Translate/i18n/pagetranslation/lt.json
@@ -0,0 +1,68 @@
+{
+ "@metadata": {
+ "authors": [
+ "Eitvys200",
+ "Mantak111"
+ ]
+ },
+ "pagetranslation": "Puslapio vertimas",
+ "action-pagetranslation": "valdyti išverstus puslapius",
+ "tpt-template": "Puslapio šablonas",
+ "tpt-templatediff": "Pasikeitė puslapio šablonas.",
+ "tpt-diff-old": "Ankstesnis tekstas",
+ "tpt-diff-new": "Naujas tekstas",
+ "tpt-sections-deleted": "Ištrinti vertimo vienetai",
+ "tpt-sections-template": "Vertimo puslapio šablonas",
+ "tpt-badtitle": "duotas puslapio pavadinimas ($1) nėra gera antraštė",
+ "tpt-nosuchpage": "Puslapio $1 neegzistuoja",
+ "tpt-mark-summary": "Ši versija pažymėta vertimui",
+ "tpt-edit-failed": "Nepavyko atnaujinti puslapio: $1",
+ "tpt-already-marked": "Šio puslapio naujausia versija jau yra pažymėta vertimui.",
+ "tpt-unmarked": "Puslapis $1 nebėra pažymėtas vertimams.",
+ "tpt-old-pages-title": "Puslapių vertimas",
+ "tpt-other-pages-title": "Sugadinti puslapiai",
+ "tpt-select-prioritylangs-reason": "Priežastis:",
+ "tpt-sections-prioritylangs": "Pirmaujančios kalbos",
+ "tpt-rev-mark": "Pažymėti vertimui",
+ "tpt-rev-unmark": "pašalinti iš vertimo",
+ "tpt-rev-encourage": "atkurti",
+ "translate-tag-translate-link-desc": "Versti šį puslapį",
+ "translate-tag-markthis": "Pažymėti šį puslapį vertimui",
+ "tpt-languages-legend": "Kitos kalbos:",
+ "tpt-languages-zero": "Pradėti šios kalbos vertimą",
+ "tpt-discouraged-language-reason": "Priežastis: $1",
+ "tpt-download-page": "Puslapyje eksportuojamas su vertimais",
+ "aggregategroups": "Bendros grupės",
+ "tpt-aggregategroup-add": "Pridėti",
+ "tpt-aggregategroup-save": "Išsaugoti",
+ "tpt-aggregategroup-add-new": "Pridėti naują bendrą grupę",
+ "tpt-aggregategroup-new-name": "Vardas:",
+ "tpt-aggregategroup-new-description": "Aprašymas (neprivaloma):",
+ "tpt-aggregategroup-remove-confirm": "Ar tikrai norite naikinti šią bendrą grupę?",
+ "tpt-aggregategroup-invalid-group": "Grupės nėra",
+ "log-name-pagetranslation": "Puslapio vertimo žurnalas",
+ "logentry-pagetranslation-mark": "$1 {{GENDER:$2|pažymėtas}} $3 vertimui",
+ "logentry-pagetranslation-unmark": "$1 {{GENDER:$2|ištrintas}} $3 iš vertimo",
+ "pt-movepage-legend": "Perkelti išverčiamą puslapį",
+ "pt-movepage-current": "Dabartinis pavadinimas:",
+ "pt-movepage-new": "Naujas pavadinimas:",
+ "pt-movepage-reason": "Priežastis:",
+ "pt-movepage-subpages": "Perkelti visus subpuslapius",
+ "pt-movepage-action-check": "Patikrinkite, ar perkelti yra įmanoma",
+ "pt-movepage-action-perform": "Perkelti",
+ "pt-movepage-action-other": "Pakeisti taikinį",
+ "pt-deletepage-action-check": "Sąrašą puslapių kurie turi būti ištrinti.",
+ "pt-deletepage-action-perform": "Padaryti trynimą",
+ "pt-deletepage-action-other": "Pakeisti taikinį",
+ "pt-deletepage-lang-legend": "Ištrinti vertimo puslapį",
+ "pt-deletepage-full-legend": "Ištrinti išverčiama puslapį",
+ "pt-deletepage-current": "Puslapio pavadinimas:",
+ "pt-deletepage-reason": "Priežastis:",
+ "pt-deletepage-subpages": "Ištrinti visus subpuslapius",
+ "pt-deletepage-list-pages": "Sąrašas ištrinti puslapius",
+ "pt-deletepage-list-translation": "Vertimo puslapiai",
+ "pt-deletepage-list-section": "Vertimo vieneto puslapiai",
+ "pt-deletepage-list-other": "Kiti subpuslapiai",
+ "pt-deletepage-full-logreason": "Dalis išverčiamo puslapio $1.",
+ "pt-deletepage-lang-logreason": "Dalis vertimo puslapio $1."
+}
diff --git a/MLEB/Translate/i18n/pagetranslation/ltg.json b/MLEB/Translate/i18n/pagetranslation/ltg.json
new file mode 100644
index 00000000..b7c97e06
--- /dev/null
+++ b/MLEB/Translate/i18n/pagetranslation/ltg.json
@@ -0,0 +1,11 @@
+{
+ "@metadata": {
+ "authors": [
+ "Dark Eagle"
+ ]
+ },
+ "tpt-diff-new": "Jauns teksts",
+ "tpt-languages-legend": "Cytys volūdys:",
+ "pt-movepage-new": "Jauna pasauka:",
+ "pt-movepage-reason": "Īmesle:"
+}
diff --git a/MLEB/Translate/i18n/pagetranslation/lv.json b/MLEB/Translate/i18n/pagetranslation/lv.json
new file mode 100644
index 00000000..f5005ab6
--- /dev/null
+++ b/MLEB/Translate/i18n/pagetranslation/lv.json
@@ -0,0 +1,47 @@
+{
+ "@metadata": {
+ "authors": [
+ "Papuass"
+ ]
+ },
+ "pagetranslation": "Lapas tulkošana",
+ "right-pagetranslation": "Atzīmēt lapu versijas tulkošanai",
+ "action-pagetranslation": "pārvaldīt tulkojamās lapas",
+ "tpt-desc": "Paplašinājums satura lapu tulkošanai",
+ "tpt-template": "Lapas veidne",
+ "tpt-templatediff": "Lapas veidne tika izmainīta.",
+ "tpt-diff-old": "Iepriekšējais teksts",
+ "tpt-diff-new": "Jaunais teksts",
+ "tpt-submit": "Atzīmēt šo versiju tulkošanai",
+ "tpt-sections-oldnew": "Jaunas un jau esošas tulkošanas vienības",
+ "tpt-nosuchpage": "Lapa $1 nepastāv",
+ "tpt-select-prioritylangs-reason": "Iemesls:",
+ "tpt-sections-prioritylangs": "Prioritārās valodas",
+ "translate-tag-translate-link-desc": "Tulkot šo lapu",
+ "tpt-translation-intro": "Šī lapa ir <span class=\"plainlinks\">[$1 tulkota versija]</span> no lapas [[$2]] un tulkojums ir pabeigts par $3%.",
+ "tpt-languages-legend": "Citas valodas:",
+ "tpt-tab-translate": "Tulkot",
+ "tpt-discouraged-language-reason": "Iemesls: $1",
+ "tpt-aggregategroup-add": "Pievienot",
+ "tpt-aggregategroup-save": "Saglabāt",
+ "tpt-aggregategroup-new-name": "Nosaukums:",
+ "tpt-aggregategroup-new-description": "Apraksts (nav obligāts):",
+ "log-name-pagetranslation": "Lapu tulkošanas žurnāls",
+ "pt-movepage-list-pages": "Pārvietojamo lapu saraksts",
+ "pt-movepage-list-translation": "Tulkojuma {{PLURAL:$1|lapa|lapas}}",
+ "pt-movepage-list-other": "{{PLURAL:$1|Cita apakšlapa|Citas apakšlapas}}",
+ "pt-movepage-current": "Esošais nosaukums:",
+ "pt-movepage-new": "Jaunais nosaukums:",
+ "pt-movepage-reason": "Iemesls:",
+ "pt-movepage-subpages": "Pārvietot visas apakšlapas",
+ "pt-movepage-action-check": "Pārbaudīt, vai ir iespējams pārvietot",
+ "pt-movepage-action-perform": "Nepārvietot",
+ "pt-movepage-action-other": "Mainīt mērķi",
+ "pt-movepage-logreason": "Daļa no tulkojamas lapas $1.",
+ "pt-deletepage-current": "Lapas nosaukums:",
+ "pt-deletepage-reason": "Iemesls:",
+ "pt-deletepage-subpages": "Dzēst visas apakšlapas",
+ "pt-deletepage-list-pages": "Dzēšamo lapu saraksts",
+ "pt-deletepage-list-translation": "Tulkojuma lapas",
+ "pt-deletepage-list-other": "Citas apakšlapas"
+}
diff --git a/MLEB/Translate/i18n/pagetranslation/lzh.json b/MLEB/Translate/i18n/pagetranslation/lzh.json
new file mode 100644
index 00000000..689b8acc
--- /dev/null
+++ b/MLEB/Translate/i18n/pagetranslation/lzh.json
@@ -0,0 +1,10 @@
+{
+ "@metadata": {
+ "authors": [
+ "Yanteng3",
+ "StephDC"
+ ]
+ },
+ "tpt-aggregategroup-save": "存",
+ "pm-old-translations-missing": "$1 不含旧譯。"
+}
diff --git a/MLEB/Translate/i18n/pagetranslation/mg.json b/MLEB/Translate/i18n/pagetranslation/mg.json
new file mode 100644
index 00000000..06c6efd2
--- /dev/null
+++ b/MLEB/Translate/i18n/pagetranslation/mg.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Jagwar"
+ ]
+ },
+ "right-pagetranslation": "Mamamarika ny santiônam-pejy hodikaina"
+}
diff --git a/MLEB/Translate/i18n/pagetranslation/min.json b/MLEB/Translate/i18n/pagetranslation/min.json
new file mode 100644
index 00000000..b8534b0c
--- /dev/null
+++ b/MLEB/Translate/i18n/pagetranslation/min.json
@@ -0,0 +1,9 @@
+{
+ "@metadata": {
+ "authors": [
+ "Iwan Novirion"
+ ]
+ },
+ "tpt-languages-legend": "Baso lain:",
+ "pt-movepage-intro": "Laman istimewa ko mamungkinan Sanak untuak mamindahan laman nan ditandoi untuak ditajamahan.\nTindakan pamindahan indak akan balangsuang sakatika dek banyak laman nan paralu dipindahan.\nSangkek laman dipindahan, indak dimungkinan untuak barinteraksi jo laman nan basangkutan.\nKagagalan akan dicatat di [[Special:Log/pagetranslation|log tajamahan laman]] dan paralu dipelokan sacaro manual."
+}
diff --git a/MLEB/Translate/i18n/pagetranslation/mk.json b/MLEB/Translate/i18n/pagetranslation/mk.json
new file mode 100644
index 00000000..eca066e9
--- /dev/null
+++ b/MLEB/Translate/i18n/pagetranslation/mk.json
@@ -0,0 +1,199 @@
+{
+ "@metadata": {
+ "authors": [
+ "Bjankuloski06",
+ "Brest"
+ ]
+ },
+ "pagetranslation": "Превод на страници",
+ "right-pagetranslation": "Обележување на верзии на страници за преведување",
+ "action-pagetranslation": "раководење со преводливи страници",
+ "tpt-desc": "Додаток за преведување на страници со содржини",
+ "tpt-section": "Преводна единица $1",
+ "tpt-section-new": "Нова преводна единица.\nНазив: $1",
+ "tpt-section-deleted": "Преводна единица $1",
+ "tpt-template": "Шаблон за страница",
+ "tpt-templatediff": "Шаблонот за страницата е променет.",
+ "tpt-diff-old": "Претходен текст.",
+ "tpt-diff-new": "Нов текст",
+ "tpt-submit": "Обележи ја оваа верзија на преводот",
+ "tpt-sections-oldnew": "Нови и постоечки преводни единици",
+ "tpt-sections-deleted": "Избришани преводни едници",
+ "tpt-sections-template": "Шаблон за страница со превод",
+ "tpt-action-nofuzzy": "Не поништувај преводи",
+ "tpt-badtitle": "Даденото име на страницата ($1) е погрешен наслов",
+ "tpt-nosuchpage": "Страницата $1 не постои",
+ "tpt-oldrevision": "$2 не е најнова верзија на страницата [[:$1]].\nСамо најновите верзии можат да се обележуваат за преведување.",
+ "tpt-notsuitable": "Страницата $1 не е погодна за преведување.\nПроверете дали има ознаки <nowiki><translate></nowiki> и дали има правилна синтакса.",
+ "tpt-saveok": "Оваа страница [[:$1]] е обележана за преведување со $2 {{PLURAL:$2|преводна единица|преводни единици}}.\nСтраницата сега може да се <span class=\"plainlinks\">[$3 преведува]</span>.",
+ "tpt-offer-notify": "Можете да ги <span class=\"plainlinks\">[$1 известите преведувачите]</span> за оваа страница.",
+ "tpt-badsect": "„$1“ е погрешно име за преводната единица $2.",
+ "tpt-showpage-intro": "Подолу се наведени нови, постоечки и избришани преводни единици.\nПред да ја обележите оваа верзија за преведување, проверете дали промените во деловите се сведени на минимум со што би се избегнала непотреба работа за преведувачите.",
+ "tpt-mark-summary": "Ја означи оваа верзија за преведување",
+ "tpt-mark-nochanges": "Нема никаква разлика помеѓу оваа и последноозначената преработка.",
+ "tpt-edit-failed": "Не можев да ја обновам страницата: $1",
+ "tpt-duplicate": "Името $1 се користи кај повеќе од една преводна единица.",
+ "tpt-already-marked": "Најновата верзија на оваа страница е веќе обележана за преведување.",
+ "tpt-unmarked": "Страницата $1 повеќе не е означена за преведување.",
+ "tpt-list-nopages": "Нема пораки обележани за преведување, ниту страници готови за обележување за да бидат преведени.",
+ "tpt-new-pages-title": "Страници предложени за преведување",
+ "tpt-old-pages-title": "Страници за преведување",
+ "tpt-other-pages-title": "Расипани страници",
+ "tpt-discouraged-pages-title": "Непрепорачани страници",
+ "tpt-new-pages": "{{PLURAL:$1|Оваа страница содржи|Овие страници содржат}} текст со ознаки за преведување, но моментално нема верзија на {{PLURAL:$1|оваа страница|овие страници}} која е обележана за преведување.",
+ "tpt-old-pages": "Извесна верзија на {{PLURAL:$1|оваа страница|овие страници}} е обележана за преведување.",
+ "tpt-other-pages": "{{PLURAL:$1|Стара верзија на оваа страница е означена за преведување|Постари верзии на оваа страница се означени за преведување}},\nно {{PLURAL:$1|најновата верзија не може да се означи|најновите верзии не можат да се означат}} за преведување.",
+ "tpt-discouraged-pages": "{{PLURAL:$1|Се препорачува оваа страница повеќе да не се преведува|Се препорачува овие страници повеќе да не се преведуваат}}.",
+ "tpt-select-prioritylangs": "Список на кодови на приоритетните јазици, одделени со запирка:",
+ "tpt-select-prioritylangs-force": "Спречи преведување на јазици што не се приоритетни",
+ "tpt-select-prioritylangs-reason": "Причина:",
+ "tpt-sections-prioritylangs": "Приоритетни јазици",
+ "tpt-rev-mark": "означи за преведување",
+ "tpt-rev-unmark": "отстрани од преводот",
+ "tpt-rev-discourage": "непрепорачана",
+ "tpt-rev-encourage": "врати",
+ "tpt-rev-mark-tooltip": "Означи ја последната верзија на страницава како „за преведување“",
+ "tpt-rev-unmark-tooltip": "Отстрани ја страницава од преводот.",
+ "tpt-rev-discourage-tooltip": "Постави ја страницата како непрепорачана за понатамошното преведување.",
+ "tpt-rev-encourage-tooltip": "Врати ја страницата на нормално преведување.",
+ "translate-tag-translate-link-desc": "Преведете ја страницава",
+ "translate-tag-markthis": "Обележи ја оваа страница со 'за преведување'",
+ "translate-tag-markthisagain": "Оваа страница има <span class=\"plainlinks\">[$1 промени]</span> од последниот пат кога <span class=\"plainlinks\">[$2 обележана за преведување]</span>.",
+ "translate-tag-hasnew": "Оваа страница содржи <span class=\"plainlinks\">[$1 промени]</span> кои не се обележани за преведување.",
+ "tpt-translation-intro": "Оваа страница е <span class=\"plainlinks\">[$1 преведена верзија]</span> на страницата [[$2]], а преводот е $3% потполн и тековен.",
+ "tpt-languages-legend": "Други јазици:",
+ "tpt-languages-separator": "&#160;•&#32;",
+ "tpt-languages-zero": "Почнете превод на овој јазик",
+ "tpt-languages-nonzero": "$1 ($2% преведено)",
+ "tpt-tab-translate": "Преведи",
+ "tpt-target-page": "Оваа страница не може да се обнови рачно.\nСтраницава е превод на страницата [[$1]], а преводот може да се обнови само со помош на [$2 алатката за преведување].",
+ "tpt-unknown-page": "Овој именски простор е резервиран за преводи на содржински страници.\nСтраницата која се обидувате да ја уредите не соодветствува со ниедна страница обележана за преведување.",
+ "tpt-translation-restricted": "Преведувањето на страницата на овој јазик е спречено од преводен администратор.\n\nПричина: $1",
+ "tpt-discouraged-language-force-header": "Страницава не може да се преведува на $1.",
+ "tpt-discouraged-language-force-content": "Преводен администратор решил страницава да може да се преведува само на $1.",
+ "tpt-discouraged-language-header": "Преведувањето на $1 не претставува приоритет за страницава.",
+ "tpt-discouraged-language-content": "Преводен администратор решил преведувањето да се задржи на $1.",
+ "tpt-discouraged-language-force": "<strong>Страницава не може да се преведува на $2.</strong>\n\nПреводен администратор одлучил дека страницата може да се преведува само на $3.",
+ "tpt-discouraged-language": "<strong>Преводот на $2 не претставува приоритет за страницава.</strong>\n\nПреводен администратор реши дека преведувањето треба да се задржи на $3.",
+ "tpt-discouraged-language-reason": "Причина: $1",
+ "tpt-priority-languages": "Преводен администратор на групата ѝ ги зададе приоритетните јазици: $1.",
+ "tpt-render-summary": "Обнова за усогласување со новата верзија на изворната страница",
+ "tpt-download-page": "Извези страница со преводи",
+ "aggregategroups": "Збирни групи",
+ "tpt-aggregategroup-add": "Додај",
+ "tpt-aggregategroup-save": "Зачувај",
+ "tpt-aggregategroup-add-new": "Додај нова збирна група",
+ "tpt-aggregategroup-new-name": "Назив:",
+ "tpt-aggregategroup-new-description": "Опис (незадолжително):",
+ "tpt-aggregategroup-remove-confirm": "Дали сте сигурни дека сакате да ја избришете оваа збирна група?",
+ "tpt-aggregategroup-invalid-group": "Групата не постои",
+ "tpt-aggregategroup-edit-name": "Име:",
+ "tpt-aggregategroup-edit-description": "Опис:",
+ "tpt-aggregategroup-update": "Зачувај",
+ "tpt-aggregategroup-update-cancel": "Откажи",
+ "tpt-invalid-group": "Неважечка група",
+ "pt-parse-open": "Неврамнотежена &lt;translate> ознака.\nШаблон за преводот: <pre>$1</pre>",
+ "pt-parse-close": "Неврамнотежена &lt;/translate> ознака.\nШаблон за преводот: <pre>$1</pre>",
+ "pt-parse-nested": "Не се дозволени гвнездени &lt;translate> преводни единици.\nТекст на ознаката: <pre>$1</pre>",
+ "pt-shake-multiple": "Повеќекратни означувачи за преводни единици во во една единица.\nТекст на единицата: <pre>$1</pre>",
+ "pt-shake-position": "Неочекувана положба на означувачите за преводни единици.\nТекст во преводната единица: <pre>$1</pre>",
+ "pt-shake-empty": "Празна преводна единица за означувачот „$1“.",
+ "log-description-pagetranslation": "Дневник на дејства кои се однесуваат на системот за превод на страници",
+ "log-name-pagetranslation": "Дневник на преводи на страници",
+ "logentry-pagetranslation-mark": "$1 {{GENDER:$2|ја означи}} $3 за преведување",
+ "logentry-pagetranslation-unmark": "$1 {{GENDER:$2|ја отстрани}} $3 од преведувањето",
+ "logentry-pagetranslation-moveok": "$1 {{GENDER:$2|го заврши}} преименувањето на преводливата страница $3 во $4",
+ "logentry-pagetranslation-movenok": "$1 {{GENDER:$2|наиде}} на проблем при преместувањето на страницата $3 на $4",
+ "logentry-pagetranslation-deletefok": "$1 {{GENDER:$2|го заврши}} бришењето на преводливата страница $3",
+ "logentry-pagetranslation-deletefnok": "$1 {{GENDER:$2|не успеа}} да ја избрише $3, што ѝ припаѓа на преводливата страница $4",
+ "logentry-pagetranslation-deletelok": "$1 {{GENDER:$2|заврши}} со бришењето на преводната страница $3",
+ "logentry-pagetranslation-deletelnok": "$1 {{GENDER:$2|не успеа}} да ја избрише $3, што ѝ припаѓа на преводната страница $4",
+ "logentry-pagetranslation-encourage": "$1 {{GENDER:$2|препорача}} да се преведе $3",
+ "logentry-pagetranslation-discourage": "$1 {{GENDER:$2|препорача}} да не се преведува $3",
+ "logentry-pagetranslation-prioritylanguages-unset": "$1 {{GENDER:$2|отстрани}} приоритетни јазици од преводливата страница $3",
+ "logentry-pagetranslation-prioritylanguages": "$1 {{GENDER:$2|ги зададе}} приоритетните јазици од преводливата страница $3: $5",
+ "logentry-pagetranslation-prioritylanguages-force": "$1 {{GENDER:$2|ги ограничи}} јазиците на преводливата страница $3 на $5",
+ "logentry-pagetranslation-associate": "$1 {{GENDER:$2|ја додаде}} преводливата страница $3 во збирната група $4",
+ "logentry-pagetranslation-dissociate": "$1 {{GENDER:$2|ја острани}} преводливата страница $3 од збирната група $4",
+ "pt-movepage-title": "Преместување на преводливата страница $1",
+ "pt-movepage-blockers": "Преводливата страница не може да се премести на нов наслов заради {{PLURAL:$1|следнава грешка|следниве грешки}}:",
+ "pt-movepage-block-base-exists": "Целната преводлива страница „[[:$1]]“ постои.",
+ "pt-movepage-block-base-invalid": "Целната преводлива страница не претставува важечки наслов.",
+ "pt-movepage-block-tp-exists": "Целната страница со превод [[:$2]] постои.",
+ "pt-movepage-block-tp-invalid": "Насловот на целната страница за превод на [[:$1]] би била неважечка (предолга?).",
+ "pt-movepage-block-section-exists": "Целната страница „[[:$2]]“ за преводната единица постои.",
+ "pt-movepage-block-section-invalid": "Целниот наслов на страницата за „[[:$1]]“ за преводната единица би била неважечки (предолг?).",
+ "pt-movepage-block-subpage-exists": "Целната потстраница [[:$2]] постои.",
+ "pt-movepage-block-subpage-invalid": "Насловот на целната потстраница на [[:$1]] би била неважечка (предолга?).",
+ "pt-movepage-list-pages": "Список на страници за преместување",
+ "pt-movepage-list-translation": "{{PLURAL:$1|Преводна страница|Преводни страници}}",
+ "pt-movepage-list-section": "{{PLURAL:$1|Страница на преводна единица|Страници на преводни единици}}",
+ "pt-movepage-list-other": "{{PLURAL:$1|Друга потстраница|Други потстраници}}",
+ "pt-movepage-list-count": "Вкупно $1 {{PLURAL:$1|страница|страници}} за преместување.",
+ "pt-movepage-legend": "Премести преводлива страница",
+ "pt-movepage-current": "Сегашен назив:",
+ "pt-movepage-new": "Нов назив:",
+ "pt-movepage-reason": "Причина:",
+ "pt-movepage-subpages": "Премести ги сите потстраници",
+ "pt-movepage-action-check": "Провери дали преместувањето е изводливо",
+ "pt-movepage-action-perform": "Изврши преместување",
+ "pt-movepage-action-other": "Смени цел",
+ "pt-movepage-intro": "Оваа службена страница ви овозможува да преместувате страници обележани за преведување.\nСамото преместување нема да се случи веднаш, бидејќи треба да се преместат голем број на страници.\nПреместувањето ќе се води по редица на задачи.\nДодека се преместуваат страниците, со нив нема да може да се работи.\nНеуспешните ќе бидат заведени во [[Special:Log/pagetranslation|дневникот на преводи на страници]] и тие ќе треба да се поправаат рачно.",
+ "pt-movepage-logreason": "Дел од преводливата страница $1.",
+ "pt-movepage-started": "Страницата сега е преместена.\nПроверете дали [[Special:Log/pagetranslation|дневникот на преводи на страници]] има пријавено грешки и порака за завршена задача.",
+ "pt-locked-page": "Оваа страница е заклучена бидејќи е во тек преместување на преводлива страница.",
+ "pt-deletepage-lang-title": "Бришење на страницата со превод $1.",
+ "pt-deletepage-full-title": "Бришење на преводливата страница $1.",
+ "pt-deletepage-invalid-title": "Наведената страница е неважечка.",
+ "pt-deletepage-invalid-text": "Наведената страница не е преводлива, ниту пак страница за преведување.",
+ "pt-deletepage-action-check": "Список на страници за бришење",
+ "pt-deletepage-action-perform": "Изврши го бришењето",
+ "pt-deletepage-action-other": "Смени цел",
+ "pt-deletepage-lang-legend": "Избриши ја страницата за превод",
+ "pt-deletepage-full-legend": "Избриши преводлива страница",
+ "pt-deletepage-any-legend": "Избриши преводлива страница или страница за превод",
+ "pt-deletepage-current": "Име на страницата:",
+ "pt-deletepage-reason": "Причина:",
+ "pt-deletepage-subpages": "Избриши ги сите потстраници",
+ "pt-deletepage-list-pages": "Список на страници за бришење",
+ "pt-deletepage-list-translation": "Страници со превод",
+ "pt-deletepage-list-section": "Страници за преводни единици",
+ "pt-deletepage-list-other": "Други потстраници",
+ "pt-deletepage-list-count": "Вкупно $1 {{PLURAL:$1|страница|страници}} за бришење.",
+ "pt-deletepage-full-logreason": "Дел од преводливата страница $1.",
+ "pt-deletepage-lang-logreason": "Дел од страницата со превод $1.",
+ "pt-deletepage-started": "Погледајте го [[Special:Log/pagetranslation|дневникот со преводи на страници]] за грешки и порака при завршувањето.",
+ "pt-deletepage-intro": "Оваа службена страница овозможува бришење на цела преводлива страница или поединечна страница за превод на некој јазик.\nБришењето не делува веднаш, бидејќи ќе се бришат и сите страници што зависат од неа.\nНеуспешните обиди ќе се заведуваат во [[Special:Log/pagetranslation|дневникот на страници за превод]] и ќе треба да се исправаат рачно.",
+ "pagemigration": "Селење на преводни страници",
+ "pagemigration-summary": "Укажете преводна страница и возобновете било кој превод направен пред појавувањето на системот за преведување на таа страница.",
+ "pm-import-button-label": "Увези",
+ "pm-savepages-button-label": "Зачувај",
+ "pm-cancel-button-label": "Откажи",
+ "pm-pagename-placeholder": "Внесете име на страницата",
+ "pm-langcode-placeholder": "Јазичен код",
+ "pm-page-does-not-exist": "$1 не постои",
+ "pm-old-translations-missing": "$1 не содржи стари преводи",
+ "pm-extra-units-warning": "Може да има дополнителни единици. Погрижете се да соодветствуваат единиците во изворниот текст и преводот",
+ "pm-pagename-missing": "Внесете име на страница",
+ "pm-langcode-missing": "Внесете јазичен код",
+ "pm-add-icon-hover-text": "Додај единица подолу",
+ "pm-swap-icon-hover-text": "Замени ја единицата подолу",
+ "pm-delete-icon-hover-text": "Избриши единица",
+ "pm-pagetitle-invalid": "Внесетре важечки наслов на страницата",
+ "pm-summary-import": "Увезен превод користејќи [[Special:PageMigration|преселба на страници]]",
+ "tpt-translate-title": "Дозволи превод на насловот на страницата",
+ "pp-save-summary": "Подготвена страница за превод",
+ "pagepreparation": "Подготвена страница за превод",
+ "pp-pagename-placeholder": "Внесете име на страницата",
+ "pp-prepare-button-label": "Подготви",
+ "pp-save-button-label": "Зачувај",
+ "pp-save-message": "Страницата е зачувана. Можете да ја [$1 измените].",
+ "pp-prepare-message": "Страницата е подготвена за преведување. Погледајте ја разликата подолу. Стиснете на „{{int:pp-save-button-label}}“ ако мислите дека сè е во ред!",
+ "pp-already-prepared-message": "Се чини дека страницата е веќе подготвена за превод. Нема промени во однос на минатата верзија.",
+ "pp-pagename-missing": "Внесете име на страницата.",
+ "pp-diff-old-header": "Изворен текст",
+ "pp-diff-new-header": "Подготвен текст",
+ "tpt-unlink-confirm": "Потврдете дека навистина сакате да ја отстраните страницава од преводниот систем.\nЈазичниот избирач и преведените имиња на страниците ќе престанат да работат.\nПреводните страници ќе станат уредливи.",
+ "tpt-unlink-button": "Отстрани од преводот",
+ "tpt-unlink-summary": "Отстранета страница од преводот"
+}
diff --git a/MLEB/Translate/i18n/pagetranslation/ml.json b/MLEB/Translate/i18n/pagetranslation/ml.json
new file mode 100644
index 00000000..abe277a8
--- /dev/null
+++ b/MLEB/Translate/i18n/pagetranslation/ml.json
@@ -0,0 +1,70 @@
+{
+ "@metadata": {
+ "authors": [
+ "Kavya Manohar",
+ "Praveenp",
+ "Santhosh.thottingal"
+ ]
+ },
+ "pagetranslation": "താളിന്റെ പരിഭാഷ",
+ "right-pagetranslation": "താളുകളുടെ പതിപ്പുകൾ പരിഭാഷക്കായി അടയാളപ്പെടുത്തുക",
+ "action-pagetranslation": "പരിഭാഷപ്പെടുത്താവുന്ന താളുകൾ കൈകാര്യം ചെയ്യുക",
+ "tpt-desc": "ഉള്ളടക്ക താളുകൾ പരിഭാഷപ്പെടുത്തുന്നതിനുള്ള അനുബന്ധം",
+ "tpt-section": "പരിഭാഷാ ഘടകം $1",
+ "tpt-section-new": "പുതിയ പരിഭാഷാ ഘടകം.\nപേര്: $1",
+ "tpt-section-deleted": "പരിഭാഷാ ഘടകം $1",
+ "tpt-template": "താൾ ഫലകം",
+ "tpt-templatediff": "താളിന്റെ ഘടന മാറിയിരിക്കുന്നു.",
+ "tpt-diff-old": "പഴയ എഴുത്ത്",
+ "tpt-diff-new": "പുതിയ എഴുത്ത്",
+ "tpt-submit": "ഈ പതിപ്പ് പരിഭാഷയ്ക്കായി അടയാളപ്പെടുത്തുക",
+ "tpt-sections-oldnew": "പുതിയതും നിലവിലുള്ളതുമായ പരിഭാഷാ ഘടകങ്ങൾ",
+ "tpt-sections-deleted": "മായ്ക്കപ്പെട്ട പരിഭാഷാ ഘടകങ്ങൾ",
+ "tpt-sections-template": "പരിഭാഷാ താളിന്റെ രൂപഫലകം",
+ "tpt-action-nofuzzy": "പരിഭാഷകൾ അസാധുവാണെന്ന് അടയാളപ്പെടുത്തരുത്",
+ "tpt-badtitle": "താളിനു നൽകിയ പേര് ($1) സാധുവായ തലക്കെട്ട് അല്ല",
+ "tpt-nosuchpage": "$1 എന്ന താൾ നിലവിലില്ല.",
+ "tpt-edit-failed": "താൾ പുതുക്കാൻ കഴിഞ്ഞില്ല: $1",
+ "tpt-old-pages-title": "പരിഭാഷയിലുള്ള താളുകൾ",
+ "tpt-other-pages-title": "പൊട്ടിയ താളുകൾ",
+ "tpt-select-prioritylangs-reason": "കാരണം:",
+ "tpt-rev-discourage": "നിരുത്സാഹപ്പെടുത്തുക",
+ "tpt-rev-encourage": "പുനഃസ്ഥാപിക്കുക",
+ "translate-tag-translate-link-desc": "ഈ താൾ പരിഭാഷപ്പെടുത്തുക",
+ "tpt-translation-intro": "ഈ താൾ [[$2]] എന്ന താളിന്റെ <span class=\"plainlinks\">[$1 പരിഭാഷ]</span> ആണ്, പരിഭാഷ $3% പൂർണ്ണമാണ്.",
+ "tpt-languages-legend": "മറ്റു ഭാഷകൾ:",
+ "tpt-languages-zero": "ഈ ഭാഷയിൽ പരിഭാഷ തുടങ്ങുക",
+ "tpt-tab-translate": "പരിഭാഷപ്പെടുത്തുക",
+ "tpt-target-page": "ഈ താൾ താങ്കൾക്ക് പുതുക്കാൻ കഴിയില്ല.\nഈ താൾ [[$1]] എന്ന താളിന്റെ പരിഭാഷയാണ്, പരിഭാഷ പുതുക്കാൻ [$2 പരിഭാഷാ ഉപകരണം] ഉപയോഗിക്കുക.",
+ "tpt-discouraged-language-reason": "കാരണം: $1",
+ "tpt-aggregategroup-add": "കൂട്ടിച്ചേർക്കുക",
+ "tpt-aggregategroup-save": "സേവ് ചെയ്യുക",
+ "tpt-aggregategroup-new-name": "പേര്:",
+ "tpt-aggregategroup-new-description": "വിവരണം (ഐച്ഛികം):",
+ "log-name-pagetranslation": "താൾ പരിഭാഷാ രേഖ",
+ "pt-movepage-block-subpage-exists": "ലക്ഷ്യം വെച്ച ഉപതാൾ [[:$2]] നിലവിലുണ്ട്.",
+ "pt-movepage-list-pages": "മാറ്റേണ്ട താളുകളുടെ പട്ടിക",
+ "pt-movepage-list-translation": "പരിഭാഷാ{{PLURAL:$1|താൾ|താളുകൾ}}",
+ "pt-movepage-list-section": "ഉപവിഭാഗ താളുകൾ",
+ "pt-movepage-list-other": "മറ്റ് ഉപതാളുകൾ",
+ "pt-movepage-legend": "പരിഭാഷപ്പെടുത്താവുന്ന താൾ നീക്കുക",
+ "pt-movepage-current": "ഇപ്പോഴത്തെ പേര്:",
+ "pt-movepage-new": "പുതിയ പേര്:",
+ "pt-movepage-reason": "കാരണം:",
+ "pt-movepage-subpages": "എല്ലാ ഉപതാളുകളും മാറ്റുക",
+ "pt-movepage-action-check": "മാറ്റൽ സാദ്ധ്യമാണോയെന്നു പരിശോധിക്കുക",
+ "pt-movepage-action-perform": "മാറ്റുക",
+ "pt-movepage-action-other": "ലക്ഷ്യം മാറ്റുക",
+ "pt-deletepage-action-check": "മായ്ക്കേണ്ട താളുകളുടെ പട്ടിക നൽകുക",
+ "pt-deletepage-action-perform": "മായ്ക്കൽ നടപ്പിൽ വരുത്തുക",
+ "pt-deletepage-action-other": "ലക്ഷ്യം മാറ്റുക",
+ "pt-deletepage-lang-legend": "പരിഭാഷാ താൾ മായ്ക്കുക",
+ "pt-deletepage-full-legend": "പരിഭാഷപ്പെടുത്താവുന്ന താൾ മായ്ക്കുക",
+ "pt-deletepage-current": "താളിന്റെ പേര്:",
+ "pt-deletepage-reason": "കാരണം:",
+ "pt-deletepage-subpages": "എല്ലാ ഉപതാളുകളും മായ്ക്കുക",
+ "pt-deletepage-list-pages": "മായ്ക്കേണ്ട താളുകളുടെ പട്ടിക",
+ "pt-deletepage-list-translation": "പരിഭാഷാ താളുകൾ",
+ "pt-deletepage-list-section": "ഉപവിഭാഗ താളുകൾ",
+ "pt-deletepage-list-other": "മറ്റ് ഉപതാളുകൾ"
+}
diff --git a/MLEB/Translate/i18n/pagetranslation/mn.json b/MLEB/Translate/i18n/pagetranslation/mn.json
new file mode 100644
index 00000000..c9110df2
--- /dev/null
+++ b/MLEB/Translate/i18n/pagetranslation/mn.json
@@ -0,0 +1,11 @@
+{
+ "@metadata": {
+ "authors": [
+ "Chinneeb",
+ "Wisdom"
+ ]
+ },
+ "tpt-invalid-group": "Буруу бүлэг",
+ "pt-movepage-reason": "Шалтгаан:",
+ "pm-pagetitle-invalid": "Тохирох гарчиг өгнө үү"
+}
diff --git a/MLEB/Translate/i18n/pagetranslation/mr.json b/MLEB/Translate/i18n/pagetranslation/mr.json
new file mode 100644
index 00000000..c08837e8
--- /dev/null
+++ b/MLEB/Translate/i18n/pagetranslation/mr.json
@@ -0,0 +1,100 @@
+{
+ "@metadata": {
+ "authors": [
+ "V.narsikar",
+ "Vb2055",
+ "संतोष दहिवळ"
+ ]
+ },
+ "pagetranslation": "भाषांतराची पाने.",
+ "right-pagetranslation": "पानांच्या भाषांतरासाठी असलेल्या आवृत्त्यांवर खूण करा",
+ "action-pagetranslation": "भाषांतरासाठी असलेल्या पानांचे व्यवस्थापन करा",
+ "tpt-desc": "आशय-पानांच्या भाषांतरासाठी असलेले विस्तारक",
+ "tpt-section": "भाषांतर एकक $1",
+ "tpt-section-new": "नविन भाषांतर एकक.\nनाव:$1",
+ "tpt-section-deleted": "भाषांतर एकक $1",
+ "tpt-template": "पृष्ठ साचा",
+ "tpt-templatediff": "पृष्ठ साचा बदलला आहे.",
+ "tpt-diff-old": "पूर्वीचा मजकूर",
+ "tpt-diff-new": "नविन मजकूर",
+ "tpt-submit": "या आवृत्तीस 'भाषांतरासाठी' म्हणून खूण करा",
+ "tpt-sections-oldnew": "नविन व अस्तित्वातील भाषांतर एकके",
+ "tpt-sections-deleted": "वगळलेली भाषांतर एकके",
+ "tpt-sections-template": "भाषांतर पान साचा",
+ "tpt-badtitle": "दिलेले पान शीर्षक ($1) हे वैध नाही.",
+ "tpt-nosuchpage": "पान $1 अस्तीत्वात नाही",
+ "tpt-oldrevision": "$2 ही [[:$1]] पानाची नविनतम आवृत्ती नाही.\nफक्त अद्यतन आवृत्तीवरच 'भाषांतरासाठी' म्हणून खूण करता येते.",
+ "tpt-notsuitable": "पान $1 हे भाषांतरासाठी अनुकुल नाही.\nयाची खात्री करा कि त्यात,<nowiki><translate></nowiki>ही खूणपताका आहे व त्यात वैध वाक्यरचना आहे.",
+ "tpt-saveok": "पान [[:$1]] हे $2 {{PLURAL:$2|भाषांतर एककाला|भाषांतर एककांना}} भाषांतरासाठी नेमून दिले आहे.त्या पानाचे आता<span class=\"plainlinks\">[$3 भाषांतर करता येते]</span>.",
+ "tpt-offer-notify": "आपण या पानाबाबत <span class=\"plainlinks\">[$1 भाषांतरकारांना सूचना देउ शकता]</span>",
+ "tpt-badsect": "\"$1\" हे भाषांतर एकक $2 साठी वैध नाव नाही.",
+ "tpt-showpage-intro": "खाली नविन, अस्तित्वातील व वगळलेली भाषांतर एककांची यादी आहे.ही आवृत्ती भाषांतरासाठी म्हणून खूण करण्यापूर्वी,भाषांतरकारांचे अवाजवी काम टाळण्यासाठी, हे तपासा कि भाषांतर एककात कमीतकमी बदल आहेत.",
+ "tpt-mark-summary": "या आवृत्तीवर 'भाषांतरासाठी' म्हणून खूण केली",
+ "tpt-edit-failed": "पानाचे अद्यतन करता आले नाही:$1",
+ "tpt-duplicate": "भाषांतर एककाचे नाव $1 हे एकाधिक वापरल्या गेले.",
+ "tpt-already-marked": "या पानाच्या नविनतम आवृत्तीवर 'भाषांतरासाठी' म्हणून खूण केली आहे.",
+ "tpt-unmarked": "पान $1 यावर आता 'भाषांतरासाठी' म्हणून खूण नाही.",
+ "tpt-list-nopages": "कोणत्याही पानावर 'भाषांतरासाठी' म्हणून खूण नाही किंवा ती,अशी खूण करण्यासाठी तयार नाहीत.",
+ "tpt-new-pages-title": "भाषांतरासाठी प्रस्तावित पाने",
+ "tpt-old-pages-title": "भाषांतरांतर्गत असलेली पाने",
+ "tpt-other-pages-title": "तुटक पाने",
+ "tpt-discouraged-pages-title": "(भाषांतरासाठी)अप्रोत्साहीत पाने",
+ "tpt-new-pages": "{{PLURAL:$1|या पानात|या पानांत}} भाषांतर खूणपताका असणारा मजकूर आहे.\n\nपरंतु, {{PLURAL:$1|या पानाच्या|या पानांच्या}} आवृत्तीवर सध्या 'भाषांतरासाठी' म्हणून खूण केलेली नाही",
+ "tpt-old-pages": "{{PLURAL:$1|या पानाची काही आवृत्ती|या पानांच्या काही आवृत्त्या}} या 'भाषांतरासाठी' म्हणून खूण केलेल्या आहेत.",
+ "tpt-other-pages": "{{PLURAL:$1|या पानाची जूनी आवृत्ती|या पानांच्या जून्या आवृत्त्या}} ह्या भाषांतरासाठी खूण केलेल्या आहेत,\nपरंतु नविनतम {{PLURAL:$1|आवृत्ती|आवृत्त्या}} यावर भाषांतरासाठी खूण करू शकत नाही.",
+ "tpt-discouraged-pages": "{{PLURAL:$1|हे पान|या पानांना}} पुढील भाषांतरासाठी अप्रोत्साहीत केल्या गेले आहे.",
+ "tpt-select-prioritylangs": "प्राथम्यक्रमित भाषा संकेतांची, स्वल्पविरामाने वेगळी केलेली यादी:",
+ "tpt-select-prioritylangs-force": "प्राथम्यक्रमित भाषेशिवाय इतरात भाषांतरास अटकाव करा",
+ "tpt-select-prioritylangs-reason": "कारण:",
+ "tpt-sections-prioritylangs": "प्राथम्यक्रमित भाषा",
+ "tpt-rev-mark": "भाषांतरासाठी म्हणून खूण करा",
+ "tpt-rev-unmark": "भाषांतरातून काढा",
+ "tpt-rev-discourage": "प्रोत्साहन देउ नका",
+ "tpt-rev-encourage": "पुनर्स्थापन करा",
+ "tpt-rev-mark-tooltip": "या पानाची नविनतम आवृत्तीस भाषांतरासाठी म्हणून खूण करा.",
+ "tpt-rev-unmark-tooltip": "या पानास भाषांतरातून काढा",
+ "tpt-rev-discourage-tooltip": "या पानाच्या पुढील भाषांतरास प्रोत्साहन देउ नका.",
+ "tpt-rev-encourage-tooltip": "या पानाची नियमित भाषांतरासाठी पुनर्स्थापना करा.",
+ "translate-tag-translate-link-desc": "या पानाचे भाषांतर करा",
+ "translate-tag-markthis": "या पानास 'भाषांतरासाठी' म्हणून खूण करा",
+ "tpt-languages-legend": "इतर भाषा:",
+ "tpt-languages-zero": "या भाषेत भाषांतर सुरू करा",
+ "tpt-tab-translate": "भाषांतर करा",
+ "tpt-translation-restricted": "या पानाच्या या भाषेतील भाषांतरास, भाषांतर प्रशासकाने अटकाव केलेला आहे.\n\nकारण:$1",
+ "tpt-discouraged-language-force": "<strong>हे पान $2 भाषेत भाषांतरीत करता येणार नाही.</strong>भाषांतर प्रशासकाने निर्णय घेतला आहे कि या पानाचे भाषांतर फक्त $3 मध्ये करता येईल.",
+ "tpt-discouraged-language": "<strong>$2 मधील भाषांतर या पानाची प्राथमिकता नाही.</strong>$3 वर भाषांतरासाठीचे प्रयत्न केंद्रित करण्याचा भाषांतर प्रशासकाने निर्णय घेतला आहे.",
+ "tpt-discouraged-language-reason": "कारण:$1",
+ "tpt-aggregategroup-add": "जोडा",
+ "tpt-aggregategroup-save": "जतन करा",
+ "tpt-aggregategroup-new-name": "नाव:",
+ "tpt-aggregategroup-new-description": "वर्णन (ऐच्छिक):",
+ "log-name-pagetranslation": "पान भाषांतर नोंदी",
+ "pt-movepage-list-pages": "स्थानांतर आवश्यक असणाऱ्या पानांची यादी",
+ "pt-movepage-current": "सध्याचे नाव:",
+ "pt-movepage-new": "नविन नाव:",
+ "pt-movepage-reason": "कारण:",
+ "pt-movepage-subpages": "सर्व उपपाने हलवा",
+ "pt-movepage-action-check": "स्थानांतरण शक्य आहे काय ते तपासा",
+ "pt-movepage-action-perform": "स्थानांतरण करु नका",
+ "pt-movepage-action-other": "लक्ष्य बदला",
+ "pt-deletepage-action-check": "वगळावयाच्या पानांची यादी",
+ "pt-deletepage-action-perform": "वगळा",
+ "pt-deletepage-action-other": "लक्ष्य बदला",
+ "pt-deletepage-current": "पृष्ठ नाव:",
+ "pt-deletepage-reason": "कारण:",
+ "pt-deletepage-subpages": "सर्व उपपाने वगळा",
+ "pt-deletepage-list-pages": "वगळावयाच्या पानांची यादी",
+ "pt-deletepage-list-translation": "भाषांतरासाठीची पाने",
+ "pt-deletepage-list-section": "भाषांतर एकक पाने",
+ "pt-deletepage-list-other": "इतर उपपाने",
+ "pagemigration": "भाषांतर पानाचे स्थानांतरण",
+ "pm-import-button-label": "आयात करा",
+ "pm-savepages-button-label": "जतन करा",
+ "pm-cancel-button-label": "रद्द करा",
+ "pm-pagename-placeholder": "पानाचे नाव टाका",
+ "pm-langcode-placeholder": "भाषा संकेत (कोड)",
+ "pm-page-does-not-exist": "$1 अस्तीत्वात नाही",
+ "pm-old-translations-missing": "$1 मध्ये जूनी भाषांतरे नाहीत",
+ "pm-pagename-missing": "कृपया पानाचे नाव टाका",
+ "pm-langcode-missing": "कृपया भाषासंकेत टाका"
+}
diff --git a/MLEB/Translate/i18n/pagetranslation/ms.json b/MLEB/Translate/i18n/pagetranslation/ms.json
new file mode 100644
index 00000000..1f5d2cee
--- /dev/null
+++ b/MLEB/Translate/i18n/pagetranslation/ms.json
@@ -0,0 +1,164 @@
+{
+ "@metadata": {
+ "authors": [
+ "Anakmalaysia",
+ "Pizza1016"
+ ]
+ },
+ "pagetranslation": "Penterjemahan laman",
+ "right-pagetranslation": "Menandai versi-versi laman untuk diterjemah",
+ "action-pagetranslation": "menguruskan halaman-halaman yang boleh diterjemah",
+ "tpt-desc": "Sambungan untuk menterjemah laman-laman kandungan",
+ "tpt-section": "Unit penterjemahan $1",
+ "tpt-section-new": "Unit penterjemahan baru.\nNama: $1",
+ "tpt-section-deleted": "Unit penterjemahan $1",
+ "tpt-template": "Templat laman",
+ "tpt-templatediff": "Templat laman telah berubah.",
+ "tpt-diff-old": "Teks sebelumnya",
+ "tpt-diff-new": "Teks baru",
+ "tpt-submit": "Tandai versi ini untuk diterjemah",
+ "tpt-sections-oldnew": "Unit penterjemahan yang baru dan sedia ada",
+ "tpt-sections-deleted": "Unit penterjemahan yang dihapuskan",
+ "tpt-sections-template": "Templat laman penterjemahan",
+ "tpt-action-nofuzzy": "Jangan taksahkan terjemahan",
+ "tpt-badtitle": "Nama laman yang diberikan ($1) bukan tajuk yang sah",
+ "tpt-nosuchpage": "Halaman $1 tidak wujud",
+ "tpt-oldrevision": "$2 bukan versi terkini laman [[:$1]].\nHanya versi terkini boleh ditandai untuk penterjemahan.",
+ "tpt-notsuitable": "Laman $1 tidak sesuai untuk diterjemah.\nPastikan ia ada tag <nowiki><translate></nowiki> dan sintaks yang sah.",
+ "tpt-saveok": "Laman [[:$1]] telah ditandai untuk penterjemahan dengan $2 unit penterjemahan.\nLaman ini kini boleh <span class=\"plainlinks\">[$3 diterjemah]</span>.",
+ "tpt-offer-notify": "Anda boleh <span class=\"plainlinks\">[$1 memaklumkan para penterjemah]</span> tentang halaman ini.",
+ "tpt-badsect": "\"$1\" bukan nama yang sah untuk unit penterjemahan $2.",
+ "tpt-showpage-intro": "Di bawah tersenarainya unit-unit terjemahan yang baru, sedia ada dan terhapus.\nSebelum menandai versi ini untuk diterjemah, pastikan supaya perubahan kepada unit terjemahan diminimumkan untuk mengelakkan beban yang tidak perlu untuk penterjemah.",
+ "tpt-mark-summary": "Menandakan versi ini untuk diterjemah",
+ "tpt-mark-nochanges": "Tiada perbezaan antara semakan ini dengan semakan tertanda yang terdahulu.",
+ "tpt-edit-failed": "Laman ini tidak dapat dikemas kini: $1",
+ "tpt-duplicate": "Nama unit terjemahan $1 terguna lebih daripada sekali.",
+ "tpt-already-marked": "Versi terkini laman ini sudah ditandai untuk diterjemah.",
+ "tpt-unmarked": "Laman $1 tidak lagi ditandai untuk diterjemah.",
+ "tpt-list-nopages": "Tiadanya laman yang ditandai untuk diterjemah atau sedia ditandai untuk diterjemah.",
+ "tpt-new-pages-title": "Laman yang diusulkan untuk diterjemah",
+ "tpt-old-pages-title": "Laman yang sedang diterjemah",
+ "tpt-other-pages-title": "Laman yang rosak",
+ "tpt-discouraged-pages-title": "Laman yang ditegah",
+ "tpt-new-pages": "{{PLURAL:$1|Laman|Laman-laman}} ini mengandungi teks dengan tag penterjemahan,\ntetapi tiada versi yang ditandai untuk diterjemah.",
+ "tpt-old-pages": "Suatu versi {{PLURAL:$1|laman|laman-laman}} ini telah ditandai untuk diterjemah.",
+ "tpt-other-pages": "{{PLURAL:$1|Satu versi lama laman|Versi lama laman-laman}} ini ditandai untuk diterjemah,\ntetapi {{PLURAL:$1|versi|versi-versi}} terkini tidak boleh ditandai untuk diterjemah.",
+ "tpt-discouraged-pages": "{{PLURAL:$1|Laman|Laman-laman}} ini telah ditegah daripada mendapat penterjemahan selanjutnya.",
+ "tpt-select-prioritylangs": "Senarai kod bahasa keutamaan yang diasingkan dengan koma:",
+ "tpt-select-prioritylangs-force": "Larang terjemahan ke bahasa-bahasa selain bahasa keutamaan",
+ "tpt-select-prioritylangs-reason": "Sebab:",
+ "tpt-sections-prioritylangs": "Bahasa keutamaan",
+ "tpt-rev-mark": "tempah untuk penterjemahan",
+ "tpt-rev-unmark": "gugurkan daripada penterjemahan",
+ "tpt-rev-discourage": "tegah",
+ "tpt-rev-encourage": "pulihkan",
+ "tpt-rev-mark-tooltip": "Tempah versi terbaru laman ini untuk diterjemahkan.",
+ "tpt-rev-unmark-tooltip": "Gugurkan laman ini daripada penterjemahan.",
+ "tpt-rev-discourage-tooltip": "Tegah penterjemahan lanjutan bagi laman ini.",
+ "tpt-rev-encourage-tooltip": "Pulihkan laman ini kepada penterjemahan biasa.",
+ "translate-tag-translate-link-desc": "Terjemahkan laman ini",
+ "translate-tag-markthis": "Tandai laman ini untuk diterjemah",
+ "translate-tag-markthisagain": "Laman ini mengalami <span class=\"plainlinks\">[$1 perubahan]</span> sejak kali terakhir <span class=\"plainlinks\">[$2 ditandai untuk diterjemah]</span>.",
+ "translate-tag-hasnew": "Laman ini mengalami <span class=\"plainlinks\">[$1 perubahan]</span> yang belum ditandai untuk diterjemah.",
+ "tpt-translation-intro": "Laman ini merupakan <span class=\"plainlinks\">[$1 versi terjemahan]</span> laman [[$2]] dan penterjemahannya $3% siap.",
+ "tpt-languages-legend": "Bahasa lain:",
+ "tpt-languages-separator": "&#160;•&#32;",
+ "tpt-languages-zero": "Mulakan terjemahan dalam bahasa ini",
+ "tpt-tab-translate": "Terjemah",
+ "tpt-target-page": "Laman ini tidak boleh dikemaskini secara manual.\nLaman ini merupakan terjemahan laman [[$1]], dan terjemahannya boleh dikemas kini dengan menggunakan [$2 alatan penterjemahan].",
+ "tpt-unknown-page": "Ruang nama ini ditempah untuk penterjemahan laman kandungan.\nLaman yang anda cuba sunting itu nampaknya tidak berpadan dengan sebarang laman yang ditandai untuk diterjemah.",
+ "tpt-translation-restricted": "Penterjemahan laman ini kepada bahasa ini telah disekat oleh seorang penyelia penterjemahan.\n\nSebab: $1",
+ "tpt-discouraged-language-force-header": "Halaman ini tidak boleh diterjemahkan ke $1.",
+ "tpt-discouraged-language-force-content": "Seorang penyelia penterjemahan telah memutuskan bahawa halaman ini hanya boleh diterjemahkan ke $1.",
+ "tpt-discouraged-language-header": "Penterjemahan ke $1 bukan keutamaan bagi halaman ini.",
+ "tpt-discouraged-language-content": "Seorang penyelia penterjemahan telah memutuskan untuk menumpukan usaha penterjemahan kepada $1.",
+ "tpt-discouraged-language-force": "<strong>Halaman ini tidak boleh diterjemahkan kepada bahasa $2.</strong>\n\nPenyelia penterjemahan telah memutuskan bahawa halaman ini boleh diterjemahkan kepada bahasa $3 sahaja.",
+ "tpt-discouraged-language": "<strong>Penterjemahan kepada bahasa $2 bukan keutamaan bagi halaman ini.</strong>\n\nPenyelia penterjemahan telah memutuskan untuk menumpukan usaha penterjemahan kepada bahasa $3.",
+ "tpt-discouraged-language-reason": "Sebab: $1",
+ "tpt-priority-languages": "Seorang penyelia penterjemahan telah menetapkan bahasa-bahasa utama kumpulan ini kepada: $1",
+ "tpt-render-summary": "Mengemas kini agar sepadan dengan versi baru laman sumber",
+ "tpt-download-page": "Eksport laman dengan terjemahan",
+ "aggregategroups": "Kumpulan agregat",
+ "tpt-aggregategroup-add": "Tambahkan",
+ "tpt-aggregategroup-save": "Simpan",
+ "tpt-aggregategroup-add-new": "Tambahkan kumpulan agregat baru",
+ "tpt-aggregategroup-new-name": "Nama:",
+ "tpt-aggregategroup-new-description": "Keterangan (tidak wajib):",
+ "tpt-aggregategroup-remove-confirm": "Adakah anda benar-benar ingin menghapuskan kumpulan agregat ini?",
+ "tpt-aggregategroup-invalid-group": "Kumpulan tidak wujud",
+ "pt-parse-open": "Tag &lt;translate> tidak seimbang.\nTemplat penterjemahan: <pre>$1</pre>",
+ "pt-parse-close": "Tag &lt;/translate> tidak seimbang.\nTemplat penterjemahan: <pre>$1</pre>",
+ "pt-parse-nested": "Unit terjemahan &lt;translate> yang tersarang tidak dibenarkan.\nTeks tag: <pre>$1</pre>",
+ "pt-shake-multiple": "Berbilang penanda bahagian untuk satu unit terjemahan.\nTeks unit terjemahan: <pre>$1</pre>",
+ "pt-shake-position": "Unit terjemahan di kedudukan yang tidak dijangka.\nTeks unit terjemahan: <pre>$1</pre>",
+ "pt-shake-empty": "Unit terjemahan kosong untuk penanda \"$1\".",
+ "log-description-pagetranslation": "Log untuk tindakan yang berkaitan dengan sistem penterjemahan laman",
+ "log-name-pagetranslation": "Log penterjemahan laman",
+ "logentry-pagetranslation-mark": "$1 {{GENDER:$2|menanda}} $3 untuk diterjemahkan",
+ "logentry-pagetranslation-unmark": "$1 {{GENDER:$2|membuang}} $3 dari penterjemahan",
+ "logentry-pagetranslation-moveok": "$1 {{GENDER:$2|selesai}} menukar nama halaman boleh terjemah $3 ke dalam $4",
+ "logentry-pagetranslation-movenok": "$1 {{GENDER:$2|menghadapi}} masalah semasa mengalihkan halaman $3 ke $4",
+ "logentry-pagetranslation-deletefok": "$1 {{GENDER:$2|selesai}} menghapuskan halaman boleh terjemah $3",
+ "logentry-pagetranslation-deletefnok": "$1 {{GENDER:$2|gagal}} menghapuskan $3 yang tergolong dalam halaman boleh terjemah $4",
+ "logentry-pagetranslation-deletelok": "$1 {{GENDER:$2|selesai}} menghapuskan halaman penterjemahan $3",
+ "logentry-pagetranslation-deletelnok": "$1 {{GENDER:$2|gagal}} menghapuskan $3 yang tergolong dalam halaman penterjemahan $4",
+ "logentry-pagetranslation-encourage": "$1 {{GENDER:$2|mengesyorkan}} terjemahan untuk $3",
+ "logentry-pagetranslation-discourage": "$1 {{GENDER:$2|menegah}} terjemahan untuk $3",
+ "logentry-pagetranslation-prioritylanguages-unset": "$1 {{GENDER:$2|menggugurkan}} bahasa keutamaan dari halaman boleh terjemah $3",
+ "logentry-pagetranslation-prioritylanguages": "$1 {{GENDER:$2|menetapkan}} $5 sebagai bahasa keutamaan untuk halaman boleh terjemah $3",
+ "logentry-pagetranslation-prioritylanguages-force": "$1 {{GENDER:$2|mengehadkan}} bahasa-bahasa untuk halaman boleh terjemah $3 kepada $5",
+ "logentry-pagetranslation-associate": "$1 {{GENDER:$2|menambahkan}} halaman boleh terjemah $3 ke dalam kumpulan agregat $4",
+ "logentry-pagetranslation-dissociate": "$1 {{GENDER:$2|membuang}} halaman boleh terjemah $3 dari kumpulan agregat $4",
+ "pt-movepage-title": "Alihkan laman boleh terjemah $1",
+ "pt-movepage-blockers": "Laman boleh terjemah ini tidak boleh dipindahkan ke nama baru atas {{PLURAL:$1|ralat|ralat-ralat}} yang berikut:",
+ "pt-movepage-block-base-exists": "Halaman boleh terjemah sasaran \"[[:$1]]\" wujud.",
+ "pt-movepage-block-base-invalid": "Halaman boleh terjemah sasaran bukan tajuk yang sah.",
+ "pt-movepage-block-tp-exists": "Laman penterjemahan sasaran [[:$2]] wujud.",
+ "pt-movepage-block-tp-invalid": "Tajuk laman penterjemahan sasaran untuk [[:$1]] adalah tidak sah (terlalu panjang?).",
+ "pt-movepage-block-section-exists": "Halaman sasaran \"[[:$2]]\" untuk unit terjemahan itu wujud.",
+ "pt-movepage-block-section-invalid": "Tajuk halaman sasaran \"[[:$1]]\" untuk unit terjemahan adalah itu tidak sah (terlalu panjang?).",
+ "pt-movepage-block-subpage-exists": "Sublaman sasaran [[:$2]] wujud.",
+ "pt-movepage-block-subpage-invalid": "Tajuk sublaman sasaran untuk [[:$1]] adalah tidak sah (terlalu panjang?).",
+ "pt-movepage-list-pages": "Senarai laman untuk dipindahkan",
+ "pt-movepage-list-translation": "{{PLURAL:$1|Halaman|Halaman-halaman}} penterjemahan",
+ "pt-movepage-list-section": "{{PLURAL:$1|Halaman|Halaman-halaman}} unit penterjemahan",
+ "pt-movepage-list-other": "{{PLURAL:$1|Subhalaman|Subhalaman-subhalaman}} yang lain",
+ "pt-movepage-list-count": "Sejumlah $1 laman untuk dipindahkan.",
+ "pt-movepage-legend": "Pindahkan laman yang boleh diterjemah",
+ "pt-movepage-current": "Nama sekarang:",
+ "pt-movepage-new": "Nama baru:",
+ "pt-movepage-reason": "Sebab:",
+ "pt-movepage-subpages": "Pindahkan semua sublaman",
+ "pt-movepage-action-check": "Periksa sama ada langkah ini boleh dilakukan",
+ "pt-movepage-action-perform": "Lakukan pemindahan",
+ "pt-movepage-action-other": "Tukar sasaran",
+ "pt-movepage-intro": "Laman khas ini membolehkan anda untuk memindahkan laman-laman yang ditandai untuk diterjemah.\nTindakan pemindahan itu tidak meninggalkan kesan segera, kerana banyak laman yang perlu dipindahkan.\nSementara laman-laman berkenaan dipindahkan, anda tidak boleh berinteraksi dengan laman-laman yang terlibat.\nKegagalan akan dilogkan dalam [[Special:Log/pagetranslation|log penterjemahan laman]] dan perlu dibaiki dengan tangan.",
+ "pt-movepage-logreason": "Sebahagian laman boleh terjemah $1.",
+ "pt-movepage-started": "Laman asas kini telah dipindahkan.\nSila periksa [[Special:Log/pagetranslation|log penterjemahan laman]] untuk ralat dan mesej penyiapan.",
+ "pt-locked-page": "Laman ini dikunci kerana laman boleh terjemah yang terlibat kini sedang dipindahkan.",
+ "pt-deletepage-lang-title": "Menghapuskan laman penterjemahan $1.",
+ "pt-deletepage-full-title": "Menghapuskan laman boleh terjemah $1.",
+ "pt-deletepage-invalid-title": "Laman yang dinyatakan itu tidak sah.",
+ "pt-deletepage-invalid-text": "Halaman yang dinyatakan bukan halaman yang boleh diterjemah atau halaman terjemahan.",
+ "pt-deletepage-action-check": "Senarai laman yang ingin dihapuskan",
+ "pt-deletepage-action-perform": "Lakukan penghapusan",
+ "pt-deletepage-action-other": "Tukar sasaran",
+ "pt-deletepage-lang-legend": "Hapuskan laman penterjemahan",
+ "pt-deletepage-full-legend": "Hapuskan laman yang boleh diterjemah",
+ "pt-deletepage-any-legend": "Hapuskan halaman yang boleh diterjemah atau halaman terjemahan",
+ "pt-deletepage-current": "Nama laman:",
+ "pt-deletepage-reason": "Sebab:",
+ "pt-deletepage-subpages": "Hapuskan semua sublaman",
+ "pt-deletepage-list-pages": "Senarai laman untuk dihapuskan",
+ "pt-deletepage-list-translation": "Laman penterjemahan",
+ "pt-deletepage-list-section": "Halaman unit terjemahan",
+ "pt-deletepage-list-other": "Sublaman lain",
+ "pt-deletepage-list-count": "Sejumlah $1 laman untuk dihapuskan.",
+ "pt-deletepage-full-logreason": "Sebahagian laman boleh terjemah $1.",
+ "pt-deletepage-lang-logreason": "Sebahagian laman penterjemahan $1.",
+ "pt-deletepage-started": "Sila periksa [[Special:Log/pagetranslation|log penterjemahan laman]] untuk ralat dan mesej penyiapan.",
+ "pt-deletepage-intro": "Laman khas ini membolehkan anda menghapuskan seluruh laman boleh terjemah atau halaman terjemahan individu dalam sesebuah bahasa.\nTindakan penghapusan itu tidak meninggalkan kesan serta-merta kerana semua halaman yang bergantung padanya akan turut dihapuskan.\nKegagalan akan dilogkan dalam [[Special:Log/pagetranslation|log penterjemahan laman]] dan perlu dibaiki dengan tangan.",
+ "tpt-unlink-confirm": "Sila sahkan bahawa anda benar-benar ingin menggugurkan laman ini dari sistem penterjemahan.\nPemilih bahasa dan nama-nama laman yang diterjemah akan berhenti berfungsi.\nLaman-laman penterjenahan akan tidak boleh disunting lagi.",
+ "tpt-unlink-button": "Gugurkan dari terjemahan",
+ "tpt-unlink-summary": "Menggugurkan laman dari terjemahan"
+}
diff --git a/MLEB/Translate/i18n/pagetranslation/mt.json b/MLEB/Translate/i18n/pagetranslation/mt.json
new file mode 100644
index 00000000..96d5b899
--- /dev/null
+++ b/MLEB/Translate/i18n/pagetranslation/mt.json
@@ -0,0 +1,20 @@
+{
+ "@metadata": {
+ "authors": [
+ "Chrisportelli",
+ "Leli Forte"
+ ]
+ },
+ "pagetranslation": "Traduzzjoni tal-paġni",
+ "tpt-oldrevision": "$2 mhijiex l-aħħar verżjoni tal-paġna [[:$1]].\nL-aħħar verżjonijiet biss jistgħu jiġu mmarkati għat-traduzzjoni.",
+ "tpt-mark-nochanges": "M'hemm l-ebda differenza bejn din ir-reviżjoni u l-aħħar reviżjoni mmarkata.",
+ "tpt-old-pages": "Xi verżjonijiet ta' {{PLURAL:$1|din il-paġna ġiet immarkata|dawn il-paġni ġew immarkati}} għat-traduzzjoni.",
+ "translate-tag-translate-link-desc": "Ittraduċi din il-paġna",
+ "tpt-languages-legend": "Lingwi oħra:",
+ "tpt-aggregategroup-add": "Żid",
+ "tpt-aggregategroup-save": "Salva",
+ "pm-pagetitle-invalid": "Ikteb titlu validu għall-paġna.",
+ "tpt-unlink-confirm": "Jekk jogħġbok ikkonferma li verament tixtieq tneħħi din il-paġna mis-sistema ta' traduzzjoni.\nIs-selettur tal-lingwa u l-ismijiet tal-paġni tradotti ma jibqgħux jaħdmu.\nIl-paġni ta' traduzzjoni se jsiru modifikabbli.",
+ "tpt-unlink-button": "Neħħi mit-traduzzjoni",
+ "tpt-unlink-summary": "Il-paġna tneħħew mit-traduzzjoni"
+}
diff --git a/MLEB/Translate/i18n/pagetranslation/myv.json b/MLEB/Translate/i18n/pagetranslation/myv.json
new file mode 100644
index 00000000..997db250
--- /dev/null
+++ b/MLEB/Translate/i18n/pagetranslation/myv.json
@@ -0,0 +1,11 @@
+{
+ "@metadata": {
+ "authors": [
+ "Botuzhaleny-sodamo"
+ ]
+ },
+ "tpt-diff-old": "Икелень текст",
+ "tpt-diff-new": "Од текст",
+ "translate-tag-translate-link-desc": "Йутавтык те лопанть",
+ "tpt-languages-legend": "Лия кельтне:"
+}
diff --git a/MLEB/Translate/i18n/pagetranslation/nah.json b/MLEB/Translate/i18n/pagetranslation/nah.json
new file mode 100644
index 00000000..aae59153
--- /dev/null
+++ b/MLEB/Translate/i18n/pagetranslation/nah.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Fluence"
+ ]
+ },
+ "translate-tag-translate-link-desc": "Tictlahtōlcuepāz inīn zāzanilli"
+}
diff --git a/MLEB/Translate/i18n/pagetranslation/nap.json b/MLEB/Translate/i18n/pagetranslation/nap.json
new file mode 100644
index 00000000..eb95c469
--- /dev/null
+++ b/MLEB/Translate/i18n/pagetranslation/nap.json
@@ -0,0 +1,9 @@
+{
+ "@metadata": {
+ "authors": [
+ "C.R."
+ ]
+ },
+ "pm-pagetitle-invalid": "Pe' piacere mettite nu titolo 'e paggena bbuono",
+ "pm-summary-import": "Traduzziona mpurtata usanno 'a [[Special:PageMigration|migrazione 'e paggena]]"
+}
diff --git a/MLEB/Translate/i18n/pagetranslation/nb.json b/MLEB/Translate/i18n/pagetranslation/nb.json
new file mode 100644
index 00000000..8294a5d5
--- /dev/null
+++ b/MLEB/Translate/i18n/pagetranslation/nb.json
@@ -0,0 +1,157 @@
+{
+ "@metadata": {
+ "authors": [
+ "Audun",
+ "Laaknor",
+ "Nghtwlkr",
+ "Njardarlogar",
+ "Purodha",
+ "Danmichaelo"
+ ]
+ },
+ "pagetranslation": "Sideoversetting",
+ "right-pagetranslation": "Merk versjoner av sider for oversettelse",
+ "action-pagetranslation": "behandle oversettbare sider",
+ "tpt-desc": "Utvidelse for oversetting av innholdssider",
+ "tpt-section": "Oversettelsesenhet $1",
+ "tpt-section-new": "Ny oversettelsesenhet.\nNavn: $1",
+ "tpt-section-deleted": "Oversettelsesenhet $1",
+ "tpt-template": "Sidemal",
+ "tpt-templatediff": "Sidemalen har blitt endret.",
+ "tpt-diff-old": "Forrige tekst",
+ "tpt-diff-new": "Ny tekst",
+ "tpt-submit": "Marker denne versjonen for oversetting",
+ "tpt-sections-oldnew": "Nye og eksisterende oversettelsesenheter",
+ "tpt-sections-deleted": "Slettede oversettelsesenheter",
+ "tpt-sections-template": "Mal for oversettelsesside",
+ "tpt-action-nofuzzy": "Ikke ugyldiggjør oversettelser",
+ "tpt-badtitle": "Det angitte sidenavnet ($1) er ikke en gyldig tittel",
+ "tpt-nosuchpage": "Siden $1 finnes ikke",
+ "tpt-oldrevision": "$2 er ikke den siste versjonen av siden [[:$1]].\nKun siste versjoner kan bli markert for oversettelse.",
+ "tpt-notsuitable": "Side $1 er ikke egnet for oversettelse.\nSjekk at siden har <nowiki><translate></nowiki>-merket og har en gyldig syntaks.",
+ "tpt-saveok": "Siden [[:$1]] har blitt markert for oversettelse med {{PLURAL:$2|én oversettelsesenhet|$2 oversettelsesenheter}}.\nDen kan nå <span class=\"plainlinks\">[$3 oversettes]</span>.",
+ "tpt-offer-notify": "Du kan <span class=\"plainlinks\">[$1 varsle oversettere]</span> om denne siden.",
+ "tpt-badsect": "«$1» er ikke et gyldig navn for oversettelsesenheten $2.",
+ "tpt-showpage-intro": "Nedenfor listes nye, eksisterende og slettede avsnitt opp.\nFør denne versjonen merkes for oversettelse, sjekk at endringene i avsnittene er minimert for å unngå unødvendig arbeid for oversetterne.",
+ "tpt-mark-summary": "Markerte denne versjonen for oversettelse",
+ "tpt-edit-failed": "Kunne ikke oppdatere siden: $1",
+ "tpt-duplicate": "Oversettelsens enhetsnavn $1 er brukt mer enn en gang.",
+ "tpt-already-marked": "Den siste versjonen av denne siden har allerede blitt markert for oversettelse.",
+ "tpt-unmarked": "Siden $1 er ikke lenger markert for oversettelse.",
+ "tpt-list-nopages": "Ingen sider er markert for oversettelse, eller er klare for å bli markert for oversettelse.",
+ "tpt-new-pages-title": "Sider foreslått for oversettelse",
+ "tpt-old-pages-title": "Sider som oversettes",
+ "tpt-other-pages-title": "Ødelagte sider",
+ "tpt-discouraged-pages-title": "Frarådede sider",
+ "tpt-new-pages": "{{PLURAL:$1|Denne siden|Disse sidene}} inneholder tekst med oversettelsesmerker, men ingen versjon av {{PLURAL:$1|denne siden|disse sidene}} er for tiden markert for oversettelse.",
+ "tpt-old-pages": "En versjon av {{PLURAL:$1|denne siden|disse sidene}} har blitt markert for oversettelse.",
+ "tpt-other-pages": "{{PLURAL:$1|En gammel versjon av denne siden|Eldre versjoner av disse sidene}} er markert for oversettelse, men den siste versjonen kan ikke markeres for oversettelse.",
+ "tpt-discouraged-pages": "{{PLURAL:$1|Denne siden|Disse sidene}} frarådes videre oversettelse.",
+ "tpt-select-prioritylangs": "Kommaseparert liste over prioriterte språkkoder:",
+ "tpt-select-prioritylangs-force": "Forhindre oversettelser til andre språk enn de prioriterte språkene",
+ "tpt-select-prioritylangs-reason": "Årsak:",
+ "tpt-sections-prioritylangs": "Prioriterte språk",
+ "tpt-rev-mark": "merk for oversetting",
+ "tpt-rev-unmark": "fjern fra oversetting",
+ "tpt-rev-discourage": "fraråd",
+ "tpt-rev-encourage": "gjenopprett",
+ "tpt-rev-mark-tooltip": "Merk siste versjon av denne siden for oversetting.",
+ "tpt-rev-unmark-tooltip": "Fjern denne siden fra oversetting.",
+ "tpt-rev-discourage-tooltip": "Fraråd videre oversetting av denne siden.",
+ "tpt-rev-encourage-tooltip": "Gjenopprett denne siden til vanlig oversetting.",
+ "translate-tag-translate-link-desc": "Oversett denne siden",
+ "translate-tag-markthis": "Merk denne siden for oversettelse",
+ "translate-tag-markthisagain": "Denne siden har hatt <span class=\"plainlinks\">[$1 endringer]</span> siden den sist ble <span class=\"plainlinks\">[$2 markert for oversettelse]</span>.",
+ "translate-tag-hasnew": "Denne siden inneholder <span class=\"plainlinks\">[$1 endringer]</span> som ikke har blitt markert for oversettelse.",
+ "tpt-translation-intro": "Denne siden er en <span class=\"plainlinks\">[$1 oversatt versjon]</span> av siden [[$2]] og oversettelsen er $3 % ferdig.",
+ "tpt-languages-legend": "Andre språk:",
+ "tpt-languages-zero": "Begynn oversettelse for dette språket",
+ "tpt-tab-translate": "Oversett",
+ "tpt-target-page": "Denne siden kan ikke oppdateres manuelt.\nDenne siden er en oversettelse av siden [[$1]] og oversettelsen kan bli oppdatert ved å bruke [$2 oversettelsesverktøyet].",
+ "tpt-unknown-page": "Dette navnerommet er reservert for oversettelser av innholdssider.\nDenne siden som du prøver å redigere ser ikke ut til å samsvare med noen av sidene som er markert for oversettelse.",
+ "tpt-translation-restricted": "Oversettelse av denne siden til dette språket har blitt forhindret av en oversettelsesadministrator.\n\nÅrsak: $1",
+ "tpt-discouraged-language-force-header": "Denne siden kan ikke oversettes til $1.",
+ "tpt-discouraged-language-force-content": "En oversettelsesadministrator har bestemt at denne siden kun kan oversettes til $1.",
+ "tpt-discouraged-language-header": "Oversettelser til $1 er ikke en prioritet for denne siden.",
+ "tpt-discouraged-language-content": "En oversettelsesadministrator har bestemt at oversettelsene skal fokuseres på $1.",
+ "tpt-discouraged-language-force": "<strong>Denne siden kan ikke oversettes til $2.</strong>\n\nEn oversettelsesadministrator har bestemt at denne siden bare kan oversettes til $3.",
+ "tpt-discouraged-language": "<strong>Oversettelse til $2 er ikke prioritert for denne siden.</strong>\n\nEn oversettelsesadministrator har besluttet å fokusere oversettelsesarbeidet på $3.",
+ "tpt-discouraged-language-reason": "Årsak: $1",
+ "tpt-priority-languages": "En oversettelsesadministrator har satt prioritetsspråkene for denne gruppen til $1.",
+ "tpt-render-summary": "Oppdaterer for å svare til ny versjon av kildesiden",
+ "tpt-download-page": "Eksporter side med oversettelser",
+ "aggregategroups": "Samlingsgrupper",
+ "tpt-aggregategroup-add": "Legg til",
+ "tpt-aggregategroup-save": "Lagre",
+ "tpt-aggregategroup-add-new": "Legg til en ny samlet gruppe",
+ "tpt-aggregategroup-new-name": "Navn:",
+ "tpt-aggregategroup-new-description": "Beskrivelse (valgfri):",
+ "tpt-aggregategroup-remove-confirm": "Er du sikker på at du ønsker å slette denne gruppa?",
+ "tpt-aggregategroup-invalid-group": "Gruppa eksisterer ikke",
+ "pt-parse-open": "Ubalansert &lt;translate>-element.\nOversettelsesmal: <pre>$1</pre>",
+ "pt-parse-close": "Ubalansert &lt;/translate>-element.\nOversettelsesmal: <pre>$1</pre>",
+ "pt-parse-nested": "Nøstede &lt;translate>-seksjoner er ikke tillatt.\nElementtekst: <pre>$1</pre>",
+ "pt-shake-multiple": "Flere avsnittsmarkører for én seksjon.\nSeksjonstekst: <pre>$1</pre>",
+ "pt-shake-position": "Seksjonsmarkører i uventede posisjoner.\nSeksjonstekst: <pre>$1</pre>",
+ "pt-shake-empty": "Tøm seksjon for markør «$1».",
+ "log-description-pagetranslation": "Logg over handlinger relatert til systemet for sideoversettelser",
+ "log-name-pagetranslation": "Logg for sideoversettelser",
+ "logentry-pagetranslation-mark": "$1 {{GENDER:$2|merket}} $3 for oversetting",
+ "logentry-pagetranslation-unmark": "$1 {{GENDER:$2|fjernet}} $3 fra oversetting",
+ "logentry-pagetranslation-moveok": "$1 {{GENDER:$2|fullførte}} flyttingen av den oversettbare siden $3 til $4",
+ "logentry-pagetranslation-movenok": "$1 {{{{GENDER:$2|fant}} et problem under flyttingen av siden $3 til $4",
+ "logentry-pagetranslation-deletefok": "$1 {{GENDER:$2|fullførte}} slettingen av den oversettbare siden $3",
+ "logentry-pagetranslation-deletefnok": "$1 {{GENDER:$2|mislyktes}} i å slette $3 som tilhører den oversettbare siden $4",
+ "logentry-pagetranslation-deletelok": "$1 {{GENDER:$2|fullførte}} slettingen av oversettingssiden $3",
+ "logentry-pagetranslation-deletelnok": "$1 {{GENDER:$2|mislyktes}} i å slette $3 som tilhører oversettingssiden $4",
+ "logentry-pagetranslation-encourage": "$1 {{GENDER:$2|oppfordret}} til oversetting av $3",
+ "pt-movepage-title": "Flytt oversettbar side $1",
+ "pt-movepage-blockers": "Den oversettbare siden kan ikke flyttes til et nytt navn på grunn av følgende {{PLURAL:$1|feil}}:",
+ "pt-movepage-block-base-exists": "Måloversettelsessiden «[[:$1]]» eksisterer.",
+ "pt-movepage-block-base-invalid": "Navnet på den oversettbare målsiden er ikke en gyldig tittel.",
+ "pt-movepage-block-tp-exists": "Måloversettelsessiden [[:$2]] finnes.",
+ "pt-movepage-block-tp-invalid": "Måloversettelsessidetittelen for [[:$1]] ville vært ugyldig (for lang?).",
+ "pt-movepage-block-section-exists": "Målavsnittssiden [[:$2]] finnes fra før.",
+ "pt-movepage-block-section-invalid": "Målavsnittssidetittelen for [[:$1]] ville vært ugyldig (for lang?).",
+ "pt-movepage-block-subpage-exists": "Målundersiden [[:$2]] finnes.",
+ "pt-movepage-block-subpage-invalid": "Målundersidetittelen for [[:$1]] ville vært ugyldig (for lang?).",
+ "pt-movepage-list-pages": "Liste over sider å flytte",
+ "pt-movepage-list-translation": "{{PLURAL:$1|Oversettelsesside|Oversettelsessider}}",
+ "pt-movepage-list-section": "{{PLURAL:$1|Avsnittsside|Avsnittssider}}",
+ "pt-movepage-list-other": "{{PLURAL:$1|Annen underside|Andre undersider}}",
+ "pt-movepage-list-count": "Totalt $1 {{PLURAL:$1|side|sider}} å flytte.",
+ "pt-movepage-legend": "Flytt oversettbar side",
+ "pt-movepage-current": "Nåværende navn:",
+ "pt-movepage-new": "Nytt navn:",
+ "pt-movepage-reason": "Årsak:",
+ "pt-movepage-subpages": "Flytt alle undersider",
+ "pt-movepage-action-check": "Kontroller om flyttingen er mulig",
+ "pt-movepage-action-perform": "Utfør flyttingen",
+ "pt-movepage-action-other": "Endre mål",
+ "pt-movepage-intro": "Denne spesialsiden tillater deg å flytte sider som er markert for oversettelse.\nFlyttehandlingen vil ikke skje umiddelbart fordi mange sider må flyttes.\nMens sidene flyttes er det ikke mulig å samhandle med gjeldende sider.\nFeil vil bli logget i [[Special:Log/pagetranslation|sideoversettelsesloggen]] og de må repareres for hånd.",
+ "pt-movepage-logreason": "Del av oversettbar side $1.",
+ "pt-movepage-started": "Basesiden har nå blitt flyttet.\nKontroller [[Special:Log/pagetranslation|sideoversettelsesloggen]] for feil- og fullføringsmeldinger.",
+ "pt-locked-page": "Denne siden er låst fordi oversettelsessiden blir flyttet nå.",
+ "pt-deletepage-lang-title": "Sletter den oversettbare siden $1.",
+ "pt-deletepage-full-title": "Sletter den oversettbare siden $1.",
+ "pt-deletepage-invalid-title": "Den angitte siden er ikke gyldig.",
+ "pt-deletepage-invalid-text": "Den angitte siden er ikke en oversettbar side eller en oversettelsesside.",
+ "pt-deletepage-action-check": "List opp sider som skal slettes",
+ "pt-deletepage-action-perform": "Utfør slettingen",
+ "pt-deletepage-action-other": "Endre mål",
+ "pt-deletepage-lang-legend": "Slett oversettbar side",
+ "pt-deletepage-full-legend": "Slett oversettbar side",
+ "pt-deletepage-any-legend": "Slett oversettbar side eller oversettelsesside",
+ "pt-deletepage-current": "Sidenavn:",
+ "pt-deletepage-reason": "Årsak:",
+ "pt-deletepage-subpages": "Slett alle undersider",
+ "pt-deletepage-list-pages": "Liste over sider å slette",
+ "pt-deletepage-list-translation": "Oversettelsessider",
+ "pt-deletepage-list-section": "Seksjonssider",
+ "pt-deletepage-list-other": "Andre undersider",
+ "pt-deletepage-list-count": "Totalt $1 {{PLURAL:$1|side|sider}} å slette.",
+ "pt-deletepage-full-logreason": "Del av den oversettbare siden $1.",
+ "pt-deletepage-lang-logreason": "Del av oversettelsessiden $1.",
+ "pt-deletepage-started": "Sjekk [[Special:Log/pagetranslation|sideoversettelsesloggen]] for feil- og fullføringsmeldinger.",
+ "pt-deletepage-intro": "Denne spesialsiden lar deg slette hele oversettbare sider eller en inviduell oversettelsesside på ett språk.\nSlettingen vil ikke være umiddelbar, fordi alle avhengige sider også vil bli slettet.\nFeil vil logges i [[Special:Log/pagetranslation|sideoversettelsesloggen]], og må fikses manuelt."
+}
diff --git a/MLEB/Translate/i18n/pagetranslation/nds-nl.json b/MLEB/Translate/i18n/pagetranslation/nds-nl.json
new file mode 100644
index 00000000..d64c138f
--- /dev/null
+++ b/MLEB/Translate/i18n/pagetranslation/nds-nl.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Servien"
+ ]
+ },
+ "pm-langcode-placeholder": "Taalkode"
+}
diff --git a/MLEB/Translate/i18n/pagetranslation/ne.json b/MLEB/Translate/i18n/pagetranslation/ne.json
new file mode 100644
index 00000000..77aafec2
--- /dev/null
+++ b/MLEB/Translate/i18n/pagetranslation/ne.json
@@ -0,0 +1,12 @@
+{
+ "@metadata": {
+ "authors": [
+ "Ganesh Paudel"
+ ]
+ },
+ "pm-import-button-label": "आयात",
+ "pm-savepages-button-label": "संग्रह गर्ने",
+ "pm-cancel-button-label": "रद्द",
+ "pm-pagename-placeholder": "पृष्ठको नाम लेख्नुहोस्",
+ "pm-langcode-placeholder": "भाषा कोड"
+}
diff --git a/MLEB/Translate/i18n/pagetranslation/nl.json b/MLEB/Translate/i18n/pagetranslation/nl.json
new file mode 100644
index 00000000..6a30f583
--- /dev/null
+++ b/MLEB/Translate/i18n/pagetranslation/nl.json
@@ -0,0 +1,183 @@
+{
+ "@metadata": {
+ "authors": [
+ "HanV",
+ "Kippenvlees1",
+ "SPQRobin",
+ "Siebrand",
+ "Southparkfan",
+ "Mar(c)",
+ "Sjoerddebruin"
+ ]
+ },
+ "pagetranslation": "Paginavertaling",
+ "right-pagetranslation": "Versies van pagina's voor de vertaling markeren",
+ "action-pagetranslation": "vertaalbare pagina's te beheren",
+ "tpt-desc": "Uitbreiding voor het vertalen van wikipagina's",
+ "tpt-section": "Vertaaleenheid $1",
+ "tpt-section-new": "Nieuwe vertaaleenheid.\nNaam: $1",
+ "tpt-section-deleted": "Vertaaleenheid $1",
+ "tpt-template": "Paginasjabloon",
+ "tpt-templatediff": "Het paginasjabloon is gewijzigd.",
+ "tpt-diff-old": "Vorige tekst",
+ "tpt-diff-new": "Nieuwe tekst",
+ "tpt-submit": "Deze versie voor vertaling markeren",
+ "tpt-sections-oldnew": "Nieuwe en bestaande vertaaleenheden",
+ "tpt-sections-deleted": "Verwijderde vertaaleenheden",
+ "tpt-sections-template": "Vertaalpaginasjabloon",
+ "tpt-action-nofuzzy": "Vertalingen niet als verouderd markeren",
+ "tpt-badtitle": "De opgegeven paginanaam ($1) is geen geldige paginanaam",
+ "tpt-nosuchpage": "Pagina \"$1\" bestaat niet",
+ "tpt-oldrevision": "$2 is niet de meest recente versie van de pagina \"[[:$1]]\".\nAlleen de meest recente versie kan voor vertaling gemarkeerd worden.",
+ "tpt-notsuitable": "De pagina \"$1\" kan niet voor vertaling gemarkeerd worden.\nZorg ervoor dat de labels <nowiki><translate></nowiki> geplaatst zijn en dat deze juist zijn toegevoegd.",
+ "tpt-saveok": "De pagina [[:$1]] is gemarkeerd voor vertaling met $2 te vertalen {{PLURAL:$2|vertaaleenheid|vertaaleenheden}}.\nDe pagina kan nu <span class=\"plainlinks\">[$3 vertaald]</span> worden.",
+ "tpt-offer-notify": "U kunt <span class=\"plainlinks\">[$1 vertalers op de hoogte stellen]</span> over deze pagina.",
+ "tpt-badsect": "\"$1\" is geen geldige naam voor vertaaleenheid $2.",
+ "tpt-showpage-intro": "Hieronder zijn nieuwe, bestaande en verwijderde vertaaleenheden opgenomen.\nControleer voordat u deze versie voor vertaling markeert of de wijzigingen aan de vertaaleenheden zo klein mogelijk zijn om onnodig werk voor vertalers te voorkomen.",
+ "tpt-mark-summary": "Heeft deze versie voor vertaling gemarkeerd",
+ "tpt-edit-failed": "De pagina \"$1\" kon niet bijgewerkt worden.",
+ "tpt-duplicate": "De vertaaleenheid \"$1\" wordt meer dan eens gebruikt.",
+ "tpt-already-marked": "De meest recente versie van deze pagina is al gemarkeerd voor vertaling.",
+ "tpt-unmarked": "Pagina \"$1\" is niet langer te vertalen.",
+ "tpt-list-nopages": "Er zijn geen pagina's gemarkeerd voor vertaling, noch klaar om gemarkeerd te worden voor vertaling.",
+ "tpt-new-pages-title": "Voorgesteld voor vertaling",
+ "tpt-old-pages-title": "Te vertalen",
+ "tpt-other-pages-title": "Kapot",
+ "tpt-discouraged-pages-title": "Ontmoedigd",
+ "tpt-new-pages": "Deze {{PLURAL:$1|pagina bevat|pagina's bevatten}} tekst met vertalingslabels, maar van deze {{PLURAL:$1|pagina|pagina's}} is geen versie gemarkeerd voor vertaling.",
+ "tpt-old-pages": "Er is al een versie van deze {{PLURAL:$1|pagina|pagina's}} gemarkeerd voor vertaling.",
+ "tpt-other-pages": "{{PLURAL:$1|Een oude versie van deze pagina is|Oude versies van deze pagina zijn}} gemarkeerd voor vertaling,\nmaar de laatste {{PLURAL:$1|versie kan|versies kunnen}} niet gemarkeerd worden voor vertaling.",
+ "tpt-discouraged-pages": "Voor deze {{PLURAL:$1|pagina|pagina's}} wordt vertalen ontmoedigd.",
+ "tpt-select-prioritylangs": "Prioriteitstalen (taalcodes door komma's gescheiden):",
+ "tpt-select-prioritylangs-force": "Vertaling beperken tot alleen deze prioriteitstalen",
+ "tpt-select-prioritylangs-reason": "Reden:",
+ "tpt-sections-prioritylangs": "Prioriteitstalen",
+ "tpt-rev-mark": "voor vertaling markeren",
+ "tpt-rev-unmark": "als te vertalen pagina verwijderen",
+ "tpt-rev-discourage": "ontmoedigen",
+ "tpt-rev-encourage": "herstellen",
+ "tpt-rev-mark-tooltip": "De laatste versie van deze pagina voor vertaling markeren.",
+ "tpt-rev-unmark-tooltip": "Deze pagina niet langer laten vertalen.",
+ "tpt-rev-discourage-tooltip": "Vertalen van deze pagina ontmoedigen.",
+ "tpt-rev-encourage-tooltip": "Normale vertaling van deze pagina opnieuw instellen.",
+ "translate-tag-translate-link-desc": "Deze pagina vertalen",
+ "translate-tag-markthis": "Deze pagina voor vertaling markeren",
+ "translate-tag-markthisagain": "Deze pagina is <span class=\"plainlinks\">[$1 gewijzigd]</span> sinds deze voor het laatst <span class=\"plainlinks\">[$2 voor vertaling gemarkeerd]</span> is geweest.",
+ "translate-tag-hasnew": "Aan deze pagina zijn <span class=\"plainlinks\">[$1 wijzigingen]</span> gemaakt die niet voor vertaling zijn gemarkeerd.",
+ "tpt-translation-intro": "Deze pagina is een <span class=\"plainlinks\">[$1 vertaalde versie]</span> van de pagina [[$2]] en de vertaling is $3% compleet.",
+ "tpt-languages-legend": "Andere talen:",
+ "tpt-languages-zero": "Vertaling voor deze taal starten",
+ "tpt-languages-nonzero": "$1 ($2% vertaald)",
+ "tpt-tab-translate": "Vertalen",
+ "tpt-target-page": "Deze pagina kan niet handmatig worden bijgewerkt.\nDeze pagina is een vertaling van de pagina [[$1]].\nDe vertaling kan bijgewerkt worden via de [$2 vertaalhulpmiddelen].",
+ "tpt-unknown-page": "Deze naamruimte is gereserveerd voor de vertalingen van van pagina's.\nDe pagina die u probeert te bewerken lijkt niet overeen te komen met een te vertalen pagina.",
+ "tpt-translation-restricted": "De vertaling van deze pagina in deze taal is onmogelijk gemaakt door de vertalingenbeheerder.\n\nReden: $1",
+ "tpt-discouraged-language-force-header": "Deze pagina kan niet in het $1 vertaald worden.",
+ "tpt-discouraged-language-force-content": "Een vertalingenbeheerder heeft besloten dat deze pagina alleen vertaald kan worden in het $1.",
+ "tpt-discouraged-language-header": "Vertalen in het $1 is geen prioriteit voor deze pagina.",
+ "tpt-discouraged-language-content": "Een vertalingenbeheerder heeft besloten om prioriteit te leggen bij de volgende talen: $1.",
+ "tpt-discouraged-language-force": "<strong>Deze pagina kan niet vertaald worden in het $2.</strong>\n\nEen vertalingenbeheerder heeft de talen waarin deze pagina vertaald kan worden beperkt tot de volgende talen: $3.",
+ "tpt-discouraged-language": "<strong>Het vertalen van deze pagina in het $2 heeft geen prioriteit.</strong>\n\nEen vertalingenbeheerder heeft besloten prioriteit te leggen bij de volgende talen: $3.",
+ "tpt-discouraged-language-reason": "Reden: $1",
+ "tpt-priority-languages": "Een vertalingenbeheerder heeft de prioriteitstalen voor deze groep ingesteld op $1.",
+ "tpt-render-summary": "Bijgewerkt vanwege een nieuwe basisversie van de bronpagina",
+ "tpt-download-page": "Pagina met vertalingen exporteren",
+ "aggregategroups": "Samengevoegde groepen",
+ "tpt-aggregategroup-add": "Toevoegen",
+ "tpt-aggregategroup-save": "Opslaan",
+ "tpt-aggregategroup-add-new": "Nieuwe samengevoegde groep toevoegen",
+ "tpt-aggregategroup-new-name": "Naam:",
+ "tpt-aggregategroup-new-description": "Beschrijving (optioneel):",
+ "tpt-aggregategroup-remove-confirm": "Weet u zeker dat u deze samengestelde groep wilt verwijderen?",
+ "tpt-aggregategroup-invalid-group": "De groep bestaat niet",
+ "tpt-aggregategroup-edit-name": "Naam:",
+ "tpt-aggregategroup-edit-description": "Beschrijving:",
+ "tpt-aggregategroup-update": "Opslaan",
+ "tpt-aggregategroup-update-cancel": "Annuleren",
+ "tpt-invalid-group": "Ongeldige groep",
+ "pt-parse-open": "Ongebalanceerd label &lt;translate>.\nVertaalsjabloon: <pre>$1</pre>",
+ "pt-parse-close": "Ongebalanceerd label &lt;translate>.\nVertaalsjabloon: <pre>$1</pre>",
+ "pt-parse-nested": "Geneste vertaaleenheden met &lt;translate> zijn niet toegestaan.\nLabeltekst: <pre>$1</pre>",
+ "pt-shake-multiple": "Meerdere markeringen voor vertaaleenheden voor een enkele vertaaleenheid aangetroffen.\nTekst vertaaleenheid: <pre>$1</pre>",
+ "pt-shake-position": "Markeringen voor vertaaleenheden op een onverwachte plaats.\nTekst vertaaleenheid: <pre>$1</pre>",
+ "pt-shake-empty": "Lege vertaaleenheid voor markering $1.",
+ "log-description-pagetranslation": "Logboek voor handelingen gerelateerd aan het paginavertalingsysteem",
+ "log-name-pagetranslation": "Logboek paginavertaling",
+ "logentry-pagetranslation-mark": "$1 {{GENDER:$2|heeft}} $3 gemarkeerd voor vertaling",
+ "logentry-pagetranslation-unmark": "$1 {{GENDER:$2|heeft}} $3 als te vertalen pagina verwijderd",
+ "logentry-pagetranslation-moveok": "$1 {{GENDER:$2|heeft}} de vertaalbare pagina $3 hernoemd naar $4",
+ "logentry-pagetranslation-movenok": "$1 {{GENDER:$2|is}} een probleem tegengekomen tijdens het hernoemen van de vertaalbare pagina $3 naar $4",
+ "logentry-pagetranslation-deletefok": "$1 {{GENDER:$2|heeft}} de vertaalbare pagina $3 verwijderd",
+ "logentry-pagetranslation-deletefnok": "$1 {{GENDER:$2|heeft}} $3 niet kunnen verwijderen die hoort bij de vertaalbare pagina $4",
+ "logentry-pagetranslation-deletelok": "$1 {{GENDER:$2|heeft}} de vertaalde pagina $3 verwijderd",
+ "logentry-pagetranslation-deletelnok": "$1 {{GENDER:$2|heeft}} $3 niet kunnen verwijderen die hoort bij de vertaalde pagina $4",
+ "logentry-pagetranslation-encourage": "$1 {{GENDER:$2|heeft}} vertaling van $3 aangemoedigd",
+ "logentry-pagetranslation-discourage": "$1 {{GENDER:$2|heeft}} vertaling van $3 ontmoedigd",
+ "logentry-pagetranslation-prioritylanguages-unset": "$1 {{GENDER:$2|heeft}} prioriteitstalen verwijderd van de vertaalbare pagina $3",
+ "logentry-pagetranslation-prioritylanguages": "$1 {{GENDER:$2|heeft}} de prioriteitstalen ingesteld van de vertaalbare pagina $3 naar $5",
+ "logentry-pagetranslation-prioritylanguages-force": "$1 {{GENDER:$2|heeft}} talen beperkt voor de vertaalbare pagina $3 naar $5",
+ "logentry-pagetranslation-associate": "$1 {{GENDER:$2|heeft}} de vertaalbare pagina $3 toegevoegd aan de samengestelde groep $4",
+ "logentry-pagetranslation-dissociate": "$1 {{GENDER:$2|heeft}} de vertaalbare pagina $3 verwijderd uit de samengestelde groep $4",
+ "pt-movepage-title": "Te vertalen pagina $1 hernoemen",
+ "pt-movepage-blockers": "De te vertalen pagina kan niet hernoemd worden vanwege de volgende {{PLURAL:$1|foutmelding|foutmeldingen}}:",
+ "pt-movepage-block-base-exists": "De vertaalbare doelpagina \"[[:$1]]\" bestaat al.",
+ "pt-movepage-block-base-invalid": "De vertaalbare doelpaginanaam is geen geldige paginanaam.",
+ "pt-movepage-block-tp-exists": "De te vertalen doelpagina [[:$2]] bestaat al.",
+ "pt-movepage-block-tp-invalid": "De te vertalen doelpaginanaam voor [[:$1]] is ongeldig (te lang?).",
+ "pt-movepage-block-section-exists": "De doelpagina voor de vertaaleenheid \"[[:$2]]\" bestaat al.",
+ "pt-movepage-block-section-invalid": "De doelpagina voor \"[[:$1]]\" voor de vertaaleenheid is ongeldig (te lang?).",
+ "pt-movepage-block-subpage-exists": "De doelsubpagina [[:$2]] bestaat al.",
+ "pt-movepage-block-subpage-invalid": "De doelsubpaginanaam voor [[:$1]] is ongeldig (te lang?).",
+ "pt-movepage-list-pages": "Lijst van te hernoemen pagina's",
+ "pt-movepage-list-translation": "Te vertalen {{PLURAL:$1|pagina|pagina's}}",
+ "pt-movepage-list-section": "{{PLURAL:$1|Pagina|Pagina's}} voor vertaaleenheden",
+ "pt-movepage-list-other": "Overige sub{{PLURAL:$1|pagina|pagina's}}",
+ "pt-movepage-list-count": "In totaal {{PLURAL:$1|is er $1 pagina|zijn er $1 pagina's}} te hernoemen.",
+ "pt-movepage-legend": "Te vertalen pagina hernoemen",
+ "pt-movepage-current": "Huidige naam:",
+ "pt-movepage-new": "Nieuwe naam:",
+ "pt-movepage-reason": "Reden:",
+ "pt-movepage-subpages": "Alle subpagina's hernoemen",
+ "pt-movepage-action-check": "Controleren of hernoemen mogelijk is",
+ "pt-movepage-action-perform": "Hernoemen",
+ "pt-movepage-action-other": "Doel wijzigen",
+ "pt-movepage-intro": "Via deze speciale pagina kunt u een te vertalen pagina's hernoemen.\nDit wordt niet direct gedaan, omdat het mogelijk is dat heel veel pagina's hernoemd moeten worden.\nTerwijl de pagina's worden hernoemd, is het niet mogelijk handelingen uit te voeren op betrokken pagina's.\nIn het [[Special:Log/pagetranslation|logboek paginavertaling]] worden fouten opgeslagen die op een later moment handmatig hersteld kunnen worden.",
+ "pt-movepage-logreason": "Onderdeel van te vertalen pagina $1.",
+ "pt-movepage-started": "De basispagina is nu hernoemd.\nKijk in het [[Special:Log/pagetranslation|logboek paginavertaling]] na of er fouten zijn gemeld en of de complete handeling is afgerond.",
+ "pt-locked-page": "Deze pagina kan niet gewijzigd worden omdat de te vertalen pagina op dit moment hernoemd wordt.",
+ "pt-deletepage-lang-title": "De vertaalde pagina $1 wordt verwijderd.",
+ "pt-deletepage-full-title": "De vertaalbare pagina $1 wordt verwijderd.",
+ "pt-deletepage-invalid-title": "De opgegeven pagina is ongeldig.",
+ "pt-deletepage-invalid-text": "De opgegeven pagina is geen vertaalbare pagina en ook geen vertaalde pagina.",
+ "pt-deletepage-action-check": "Lijst met te verwijderen pagina's",
+ "pt-deletepage-action-perform": "Doorgaan met verwijderen",
+ "pt-deletepage-action-other": "Doel wijzigen",
+ "pt-deletepage-lang-legend": "Vertaalde pagina verwijderen",
+ "pt-deletepage-full-legend": "Vertaalbare pagina verwijderen",
+ "pt-deletepage-any-legend": "De vertaalbare of vertaalde pagina verwijderen",
+ "pt-deletepage-current": "Paginanaam:",
+ "pt-deletepage-reason": "Reden:",
+ "pt-deletepage-subpages": "Alle subpagina's verwijderen",
+ "pt-deletepage-list-pages": "Lijst met te verwijderen pagina's",
+ "pt-deletepage-list-translation": "Vertaalde pagina's",
+ "pt-deletepage-list-section": "Pagina's voor vertaaleenheden",
+ "pt-deletepage-list-other": "Andere subpagina's",
+ "pt-deletepage-list-count": "In totaal {{PLURAL:$1|wordt er $1 pagina|worden er $1 pagina's}} verwijderd.",
+ "pt-deletepage-full-logreason": "Onderdeel van te vertalen pagina $1.",
+ "pt-deletepage-lang-logreason": "Onderdeel van de vertaalde pagina $1.",
+ "pt-deletepage-started": "Controleer het [[Special:Log/pagetranslation|Logboek paginavertaling]] op fouten en of de opdracht is afgerond.",
+ "pt-deletepage-intro": "Via deze pagina kunt u vertaalbare pagina's of vertaalde pagina's in een taal verwijderen.\nHet verwijderen vindt niet per direct plaats, omdat het mogelijk is dat vele pagina's verwijderd moeten worden.\nFouten worden opgenomen in het [[Special:Log/pagetranslation|Logboek paginavertaling]] en deze moeten handmatig gecorrigeerd worden.",
+ "pm-import-button-label": "Importeren",
+ "pm-savepages-button-label": "Opslaan",
+ "pm-cancel-button-label": "Annuleren",
+ "pm-pagename-placeholder": "Geef de paginanaam op",
+ "pm-langcode-placeholder": "Taalcode",
+ "pm-page-does-not-exist": "$1 bestaat niet",
+ "pm-old-translations-missing": "$1 bevat geen oude vertalingen",
+ "pm-pagetitle-invalid": "Vul een geldige paginatitel in",
+ "tpt-translate-title": "Vertaling van de paginanaam toestaan",
+ "pagepreparation": "Pagina voorbereiden voor vertaling",
+ "pp-prepare-button-label": "Voorbereiden",
+ "pp-save-button-label": "Opslaan",
+ "pp-pagename-missing": "Voer een paginanaam in."
+}
diff --git a/MLEB/Translate/i18n/pagetranslation/nn.json b/MLEB/Translate/i18n/pagetranslation/nn.json
new file mode 100644
index 00000000..dd138507
--- /dev/null
+++ b/MLEB/Translate/i18n/pagetranslation/nn.json
@@ -0,0 +1,87 @@
+{
+ "@metadata": {
+ "authors": [
+ "Eirik",
+ "Frokor",
+ "Gunnernett",
+ "Harald Khan",
+ "Njardarlogar"
+ ]
+ },
+ "pagetranslation": "Sideomsetjing",
+ "right-pagetranslation": "Merk versjonar av sider for omsetjing",
+ "tpt-desc": "Utviding for omsetjing av innhaldssider",
+ "tpt-section": "Omsetjingseining $1",
+ "tpt-section-new": "Ny omsetjingseining. Namn: $1",
+ "tpt-section-deleted": "Omsetjingseining $1",
+ "tpt-template": "Sidemal",
+ "tpt-templatediff": "Sidemalen har vorte endra.",
+ "tpt-diff-old": "Førre teksten",
+ "tpt-diff-new": "Ny tekst",
+ "tpt-submit": "Merk denne versjonen for omsetjing",
+ "tpt-sections-oldnew": "Nye og eksisterande omsetjingseiningar",
+ "tpt-sections-deleted": "Sletta omsetjingseiningar",
+ "tpt-sections-template": "Mal for omsetjingsside",
+ "tpt-badtitle": "Det gjevne sidenamnet ($1) er ikkje ein gyldig tittel",
+ "tpt-nosuchpage": "Sida $1 finst ikkje",
+ "tpt-oldrevision": "$2 er ikkje den siste versjonen av sida [[:$1]].\nBerre siste versjonar kan verta markert for omsetjing.",
+ "tpt-notsuitable": "Side $1 er ikkje høveleg for omsetjing.\nSjekk at sida er merkt med <nowiki><translate></nowiki>-merke og har ein gyldig syntaks.",
+ "tpt-saveok": "Sida [[:$1]] er vorten merkt for omsetjing med {{PLURAL:$2|éi omsetjingseining|$2 omsetjingseiningar}}. Ho kan no verta <span class=\"plainlinks\">[$3 sett om]</span>.",
+ "tpt-badsect": "«$1» er ikkje eit gyldig namn for omsetjingseininga $2.",
+ "tpt-mark-summary": "Markerte denne versjonen for omsetjing",
+ "tpt-edit-failed": "Kunne ikkje oppdatera sida: $1",
+ "tpt-already-marked": "Den siste versjonen av denne sida har allereie vorte markert for omsetjing.",
+ "tpt-list-nopages": "Ingen sider er markerte for omsetjing, eller klar til å verta markert for omsetjing.",
+ "tpt-discouraged-pages-title": "Frårådde sider",
+ "tpt-new-pages": "{{PLURAL:$1|Sida|Sidene}} inneheld tekst med omsetjingsmerke, men ingen versjon av {{PLURAL:$1|henne|dei}} er for tida merkt for omsetjing.",
+ "tpt-old-pages": "Ein versjon av {{PLURAL:$1|denne sida|desse sidene}} er vorten merkt for omsetjing.",
+ "tpt-other-pages": "{{PLURAL:$1|Ein gamal versjon av sida er merkt|Eldre versjonar av sidene er merkte}} for omsetjing, men {{PLURAL:$1|den siste versjonen|dei siste versjonane}} kan ikkje merkast for omsetjing.",
+ "tpt-discouraged-pages": "{{PLURAL:$1|Denne sida|Desse sidene}} er frårådde vidare omsetjing.",
+ "tpt-select-prioritylangs-reason": "Årsak:",
+ "tpt-sections-prioritylangs": "Prioriterte språk",
+ "tpt-rev-mark": "merk for omsetjing",
+ "tpt-rev-unmark": "fjerna frå omsetjing",
+ "tpt-rev-discourage": "råd frå",
+ "tpt-rev-encourage": "attoppretta",
+ "tpt-rev-mark-tooltip": "Merk den siste versjonen av sida for omsetjing",
+ "tpt-rev-unmark-tooltip": "Fjerna sida frå omsetjing.",
+ "tpt-rev-discourage-tooltip": "Råd frå vidare omsetjing av sida.",
+ "tpt-rev-encourage-tooltip": "Attoppretta sida for normal omsetjing",
+ "translate-tag-translate-link-desc": "Set om sida",
+ "translate-tag-markthis": "Merk denne sida for omsetjing",
+ "translate-tag-markthisagain": "Sida har <span class=\"plainlinks\">[$1 vorten endra]</span> sidan ho sist vart <span class=\"plainlinks\">[$2 merkt for omsetjing]</span>.",
+ "translate-tag-hasnew": "Sida inneheld <span class=\"plainlinks\">[$1 endringar]</span> som ikkje er merkte for omsetjing.",
+ "tpt-translation-intro": "Sida er ein <span class=\"plainlinks\">[$1 omsett versjon]</span> av sida [[$2]], og omsetjinga er $3% ferdig.",
+ "tpt-languages-legend": "Andre språk:",
+ "tpt-languages-zero": "Byrja omsetjing for dette språket",
+ "tpt-translation-restricted": "Omsetjing av sida til dette språket er stogga av ein omsetjingsadministrator.\n\nÅrsak: $1",
+ "tpt-discouraged-language-force": "<strong>Sida kan ikkje setjast om til $2.</strong>\n\nEin omsetjingsadministrator har avgjort at sida berre kan setjast om til $3.",
+ "tpt-discouraged-language-reason": "Årsak: $1",
+ "tpt-render-summary": "Oppdatering for å svara til ny versjon av kjeldesida",
+ "tpt-download-page": "Eksporter side med omsetjingar",
+ "tpt-aggregategroup-add": "Legg til",
+ "tpt-aggregategroup-save": "Lagra",
+ "tpt-aggregategroup-new-name": "Namn:",
+ "log-description-pagetranslation": "Logg over handlingar i sideomsetjingssystemet",
+ "log-name-pagetranslation": "Sideomsetjingslogg",
+ "pt-movepage-list-pages": "Liste over sider som skal flyttast",
+ "pt-movepage-list-translation": "Omsetjingssider",
+ "pt-movepage-list-other": "Andre undersider",
+ "pt-movepage-list-count": "Totalt {{PLURAL:$1|éi side|$1 sider}} å flytta.",
+ "pt-movepage-legend": "Flytt side som kan setjast om",
+ "pt-movepage-current": "Namn no:",
+ "pt-movepage-new": "Nytt namn:",
+ "pt-movepage-reason": "Årsak:",
+ "pt-movepage-subpages": "Flytt alle undersider",
+ "pt-movepage-action-check": "Sjå om flyttinga er mogeleg",
+ "pt-movepage-action-perform": "Utfør flyttinga",
+ "pt-movepage-action-other": "Endra mål",
+ "pt-deletepage-action-perform": "Utfør slettinga",
+ "pt-deletepage-action-other": "Endra mål",
+ "pt-deletepage-lang-legend": "Sletta omsetbar side",
+ "pt-deletepage-current": "Sidenamn:",
+ "pt-deletepage-reason": "Årsak:",
+ "pt-deletepage-subpages": "Sletta alle undersider",
+ "pt-deletepage-list-pages": "Liste over sider som skal slettast",
+ "pt-deletepage-list-other": "Andre undersider"
+}
diff --git a/MLEB/Translate/i18n/pagetranslation/oc.json b/MLEB/Translate/i18n/pagetranslation/oc.json
new file mode 100644
index 00000000..718fe1e4
--- /dev/null
+++ b/MLEB/Translate/i18n/pagetranslation/oc.json
@@ -0,0 +1,59 @@
+{
+ "@metadata": {
+ "authors": [
+ "Cedric31"
+ ]
+ },
+ "pagetranslation": "Traduccion de paginas",
+ "right-pagetranslation": "Marcar de versions de paginas per èsser traduchas",
+ "tpt-desc": "Extension per tradusir de paginas de contengut",
+ "tpt-section": "Unitat de traduccion $1",
+ "tpt-section-new": "Unitat de traduccion novèla. Nom : $1",
+ "tpt-section-deleted": "Unitat de traduccion $1",
+ "tpt-template": "Modèl de pagina",
+ "tpt-templatediff": "Lo modèl de pagina a cambiat.",
+ "tpt-diff-old": "Tèxte precedent",
+ "tpt-diff-new": "Tèxte novèl",
+ "tpt-submit": "Marcar aquesta version per èsser tradusida",
+ "tpt-sections-oldnew": "Unitats de traduccion novèlas e existentas",
+ "tpt-sections-deleted": "Unitats de traduccion suprimidas",
+ "tpt-sections-template": "Modèl de pagina de traduccion",
+ "tpt-badtitle": "Lo nom de pagina donada ($1) es pas un títol valid",
+ "tpt-oldrevision": "$2 es pas la darrièra version de la pagina [[:$1]].\nSola la darrièra version de la pagina pòt èsser marcada per èsser tradusida.",
+ "tpt-notsuitable": "La pagina $1 conven pas per èsser tradusida.\nSiatz segur(a) que conten la balisa <nowiki><translate></nowiki> e qu'a una sintaxi corrècta.",
+ "tpt-saveok": "La pagina [[:$1]] es estada marcada per èsser tradusida amb $2 {{PLURAL:$2|unitat de traduccion|unitats de traduccion}}.\nLa pagina pòt èsser <span class=\"plainlinks\">[$3 tradusida]</span> tre ara.",
+ "tpt-badsect": "« $1 » es pas un nom valid per una unitat de traduccion $2.",
+ "tpt-showpage-intro": "Çaijós, las traduccions novèlas, las qu'existisson e las suprimidas.\nAbans de marcar aquestas versions per èsser tradusidas, verificatz que las modificacions a las seccions son minimizadas per evitar de trabalh inutil als traductors.",
+ "tpt-mark-summary": "Aquesta version es estada marcada per èsser tradusida",
+ "tpt-edit-failed": "Impossible de metre a jorn la pagina $1",
+ "tpt-already-marked": "La darrièra version d'aquesta pagina ja es estada marcada per èsser tradusida.",
+ "tpt-list-nopages": "Cap de pagina es pas estada marcada per èsser tradusida o prèsta per l'èsser.",
+ "tpt-new-pages": "{{PLURAL:$1|Aquesta pagina conten|Aquestas paginas contenon}} de tèxte amb de balisas de traduccion, mas cap de version d'{{PLURAL:$1|aquesta pagina es pas marcada per èsser tradusida|aquestas paginas son pas marcadas per èsser tradusidas}}.",
+ "tpt-old-pages": "De versions d'{{PLURAL:$1|aquesta pagina|aquestas paginas}} son estadas marcadas per èsser traduchas.",
+ "tpt-select-prioritylangs-reason": "Motiu :",
+ "tpt-sections-prioritylangs": "Lengas prioritàrias",
+ "tpt-rev-mark": "marcar per traduccion",
+ "tpt-rev-unmark": "suprimir de la traduccion",
+ "tpt-rev-discourage": "descoratjar",
+ "tpt-rev-encourage": "restablir",
+ "translate-tag-translate-link-desc": "Tradusir aquesta pagina",
+ "translate-tag-markthis": "Marcar aquesta pagina per èsser tradusida",
+ "translate-tag-markthisagain": "Aquesta pagina a agut <span class=\"plainlinks\">[$1 de modificacions]</span> dempuèi qu’es estada darrièrament <span class=\"plainlinks\">[$2 marcada per èsser tradusida]</span>.",
+ "translate-tag-hasnew": "Aquesta pagina conten <span class=\"plainlinks\">[$1 de modificacions]</span> que son pas marcadas per la traduccion.",
+ "tpt-translation-intro": "Aquesta pagina es una <span class=\"plainlinks\">[$1 version tradusida]</span> de la pagina [[$2]] e la traduccion es completada a $3 %.",
+ "tpt-languages-legend": "Autras lengas :",
+ "tpt-target-page": "Aquesta pagina pòt pas èsser mesa a jorn manualament.\nEs una version tradusida de [[$1]] e la traduccion pòt èsser mesa a jorn en utilizant [$2 l'aisina de traduccion].",
+ "tpt-unknown-page": "Aqueste espaci de noms es reservat per la traduccion de paginas.\nLa pagina qu'ensajatz de modificar sembla pas correspondre a cap de pagina marcada per èsser tradusida.",
+ "tpt-render-summary": "Mesa a jorn per èsser en acòrd amb la version novèla de la font de la pagina",
+ "tpt-download-page": "Exportar la pagina amb sas traduccions",
+ "tpt-aggregategroup-add": "Apondre",
+ "tpt-aggregategroup-save": "Enregistrar",
+ "tpt-aggregategroup-new-name": "Nom :",
+ "pt-movepage-list-translation": "{{PLURAL:$1|pagina|paginas}} de traduccion",
+ "pt-movepage-new": "Nom novèl :",
+ "pt-movepage-reason": "Motiu :",
+ "pt-movepage-action-perform": "Tornar nomenar",
+ "pt-movepage-action-other": "Cambiar la cibla",
+ "pt-deletepage-current": "Nom de la pagina :",
+ "pt-deletepage-reason": "Motiu :"
+}
diff --git a/MLEB/Translate/i18n/pagetranslation/or.json b/MLEB/Translate/i18n/pagetranslation/or.json
new file mode 100644
index 00000000..c093f541
--- /dev/null
+++ b/MLEB/Translate/i18n/pagetranslation/or.json
@@ -0,0 +1,20 @@
+{
+ "@metadata": {
+ "authors": [
+ "Ansumang",
+ "Jnanaranjan Sahu"
+ ]
+ },
+ "pagetranslation": "ପୃଷ୍ଠା ଅନୁବାଦ",
+ "tpt-template": "ପୃଷ୍ଠା ଛାଞ୍ଚ",
+ "tpt-languages-legend": "ଅଲଗା ଭାଷାସବୁ:",
+ "pt-movepage-list-translation": "ଅନୁବାଦ ପୃଷ୍ଠାସବୁ",
+ "pt-movepage-list-other": "ଅନ୍ୟ ଉପପୃଷ୍ଠାସବୁ",
+ "pt-movepage-legend": "ଅନୁବାଦ ହୋଇପାରୁଥିବା ପୃଷ୍ଠାଗୁଡିକୁ ଘୁଞ୍ଚାଇବେ",
+ "pt-movepage-current": "ବର୍ତମାନର ନାମ",
+ "pt-movepage-new": "ନୂଆ ନାମ",
+ "pt-movepage-reason": "କାରଣ :",
+ "pt-deletepage-current": "ପୃଷ୍ଠା ନାମ:",
+ "pt-deletepage-reason": "କାରଣ:",
+ "pt-deletepage-list-section": "ଅନୁଭାଗ ପୃଷ୍ଠାସବୁ"
+}
diff --git a/MLEB/Translate/i18n/pagetranslation/pa.json b/MLEB/Translate/i18n/pagetranslation/pa.json
new file mode 100644
index 00000000..a60460ec
--- /dev/null
+++ b/MLEB/Translate/i18n/pagetranslation/pa.json
@@ -0,0 +1,12 @@
+{
+ "@metadata": {
+ "authors": [
+ "Babanwalia"
+ ]
+ },
+ "tpt-mark-nochanges": "ਇਸ ਸੁਧਾਈ ਅਤੇ ਆਖ਼ਰੀ ਨਿਸ਼ਾਨਦੇਹ ਸੁਧਾਈ ਵਿੱਚ ਕੋਈ ਫ਼ਰਕ ਨਹੀਂ ਹੈ।",
+ "tpt-translation-intro": "ਇਹ ਸਫ਼ਾ [[$2]] ਸਫ਼ੇ ਦਾ <span class=\"plainlinks\">[$1 ਤਰਜਮਾ ਕੀਤਾ ਰੂਪ]</span> ਹੈ ਅਤੇ ਤਰਜਮਾਕਾਰੀ $3% ਪੂਰੀ ਹੋਈ ਹੈ।",
+ "tpt-languages-legend": "ਹੋਰ ਬੋਲੀਆਂ:",
+ "tpt-unlink-button": "ਤਰਜਮਾਕਾਰੀ ਤੋਂ ਹਟਾਉ",
+ "tpt-unlink-summary": "ਸਫ਼ੇ ਨੂੰ ਤਰਜਮਾਕਾਰੀ ਤੋਂ ਹਟਾਇਆ"
+}
diff --git a/MLEB/Translate/i18n/pagetranslation/pam.json b/MLEB/Translate/i18n/pagetranslation/pam.json
new file mode 100644
index 00000000..3aee5ab6
--- /dev/null
+++ b/MLEB/Translate/i18n/pagetranslation/pam.json
@@ -0,0 +1,12 @@
+{
+ "@metadata": {
+ "authors": [
+ "Val2397"
+ ]
+ },
+ "tpt-template": "↓Bulung Ulma",
+ "tpt-aggregategroup-add": "↓Dagdag",
+ "tpt-aggregategroup-save": "↓Isikap",
+ "tpt-aggregategroup-add-new": "↓Magdagdag a bayung piabeng lupung",
+ "tpt-aggregategroup-new-name": "↓Lagiu:"
+}
diff --git a/MLEB/Translate/i18n/pagetranslation/pdc.json b/MLEB/Translate/i18n/pagetranslation/pdc.json
new file mode 100644
index 00000000..07aa7910
--- /dev/null
+++ b/MLEB/Translate/i18n/pagetranslation/pdc.json
@@ -0,0 +1,15 @@
+{
+ "@metadata": {
+ "authors": [
+ "Xqt"
+ ]
+ },
+ "pagetranslation": "Iwwersetzing vun Bledder",
+ "tpt-template": "Moddel fer des Blatt",
+ "translate-tag-translate-link-desc": "Des Blatt iwwersetze",
+ "tpt-languages-legend": "Annere Schprooche:",
+ "pt-movepage-new": "Neier Naame:",
+ "pt-movepage-reason": "Grund:",
+ "pt-deletepage-current": "Naame vum Blatt:",
+ "pt-deletepage-reason": "Grund:"
+}
diff --git a/MLEB/Translate/i18n/pagetranslation/pfl.json b/MLEB/Translate/i18n/pagetranslation/pfl.json
new file mode 100644
index 00000000..f2b68fec
--- /dev/null
+++ b/MLEB/Translate/i18n/pagetranslation/pfl.json
@@ -0,0 +1,135 @@
+{
+ "@metadata": {
+ "authors": [
+ "Manuae"
+ ]
+ },
+ "pagetranslation": "Saide iwasedze",
+ "right-pagetranslation": "Gschischd vunde Saide fas Iwasedze kennzaischne",
+ "tpt-desc": "Eameschlischds Iwasedze vun Inhaldssaide",
+ "tpt-section": "Iwasedzungsoihaid „$1“",
+ "tpt-section-new": "Naiji Iwasedzungsoihaid\nNoame: $1",
+ "tpt-section-deleted": "Iwasedzungsoihaid „$1“",
+ "tpt-template": "Saidevoalaach",
+ "tpt-templatediff": "Die Saidevoalaach hodsisch g'änad",
+ "tpt-diff-old": "Vorische Tegschd",
+ "tpt-diff-new": "Naije Tegschd",
+ "tpt-submit": "Die Ausgab fas Iwasedze kennzaischne",
+ "tpt-sections-oldnew": "Naiji un bschdejendi Iwasedzungsoihaide",
+ "tpt-sections-deleted": "G'leschdi Iwasedzungsoihaide",
+ "tpt-sections-template": "Voalaach fa Iwasedzungssaide",
+ "tpt-action-nofuzzy": "Iwasedzunge ned als ugildisch eagläre",
+ "tpt-badtitle": "De oagewene Saidenoame „$1“ ischn ugildische Tidl",
+ "tpt-nosuchpage": "Said $1 gibds ned",
+ "tpt-oldrevision": "$2 isch ned die naischdi Ausgab vunde Said [[:$1]].\nBloß die naischd Ausgab konn fas Iwasedze kennzaischnd werre.",
+ "tpt-notsuitable": "Die Said $1 isch ned fas Iwasedze g'aischnd.\nSaida sicha, dasses än <nowiki><translate></nowiki>-Uffschrifd unän gildischi Sadsuffbau bnudzd werd.",
+ "tpt-saveok": "Die Said [[:$1]] isch midm iwasedzbari {{PLURAL:$2|Abschnidd|$2 Abschnidd}} fas Iwasedze kennzaischnd worre.\nDie Said konn donn <span class=\"plainlinks\">[$3 iwasedzd]</span> werre.",
+ "tpt-badsect": "\"$1\" isch nedn gildischi Noame fa Iwasedzungsoihaid $2.",
+ "tpt-showpage-intro": "Unne sin naiji voahoandeni un g'leschdi B'raisch uffglischded.\nVorm Kennzaischen vunde Ausgab fas Iwasedze, iwabrief, das die Änarunge vunde Abschnidd a klä sin, dmidma unedischi Erwed schbaare dud.",
+ "tpt-mark-summary": "Die Said fas Iwasedze kennzaischne",
+ "tpt-edit-failed": "Said konn ned agdualisiad werre: $1",
+ "tpt-duplicate": "De Noame vun der Iwasedzungoihaid $1 werd efda als ämol bnudzd.",
+ "tpt-already-marked": "Die ledschd Ausgab vunde Said isch schun fas Iwasedze kennzaischnd worre.",
+ "tpt-unmarked": "Said $1 isch nemme fas Iwasedze kennzaischnd.",
+ "tpt-list-nopages": "Sin kä Saide fas Iwasedze fraigewe un a ned ferdisch, um fraigewe werre zu kenne.",
+ "tpt-new-pages-title": "Saide, wu fas Iwasedze voagschlache worre sin",
+ "tpt-old-pages-title": "Saide fas Iwasedze",
+ "tpt-other-pages-title": "Kapudde Saide",
+ "tpt-discouraged-pages-title": "Abg'rodeni Saide",
+ "tpt-new-pages": "Die {{PLURAL:$1|Said hodn|Saide hawen'än}} Tegschd fas Iwasedze. S'isch awa noch kä Ausgab vunde {{PLURAL:$1|Said|Saide}} fas Iwasedze kennzaischnd worre.",
+ "tpt-old-pages": "Ä Ausgab vunde {{PLURAL:$1|Said|Saide}} isch fas Iwasedze kennzaischend worre.",
+ "tpt-other-pages": "Ä aldi Ausgab vunde {{PLURAL:$1|Said|Saide}} sin fas Iwasedze kennzaischnd worre.\nDie naischd Ausgab konn awa ned fa ä Iwasedzung kennzaischnd werre.",
+ "tpt-discouraged-pages": "Vunde {{PLURAL:$1|Said|Saide}} isch die Iwasedzung abg'broche worre.",
+ "tpt-select-prioritylangs": "Komma gdrenndi Lischd vun voaroangischi Schboochcode:",
+ "tpt-select-prioritylangs-force": "Vahinas Iwasedze in oanare als die voaroangischi Schbrooche",
+ "tpt-select-prioritylangs-reason": "Grund:",
+ "tpt-sections-prioritylangs": "Voaroangischi Schbrooche",
+ "tpt-rev-mark": "Fas Iwasedze fraigewe",
+ "tpt-rev-unmark": "Fraigab fas Iwasedze wegnemme",
+ "tpt-rev-discourage": "Abg'rode",
+ "tpt-rev-encourage": "Widdaheaschdelle",
+ "tpt-rev-mark-tooltip": "Die ledschd Ausgab vunde Said fas Iwasedze kennzaischne",
+ "tpt-rev-unmark-tooltip": "Die Said fas Iwasedze wegnemme.",
+ "tpt-rev-discourage-tooltip": "Rod vuna Iwasedzung vunde Said ab.",
+ "tpt-rev-encourage-tooltip": "S'Iwasedze vunde Said widaheaschdelle.",
+ "translate-tag-translate-link-desc": "Said iwasedze",
+ "translate-tag-markthis": "Said fas Iwasedze kennzaischne",
+ "translate-tag-markthisagain": "Onde Said isch <span class=\"plainlinks\">[$1 gschaffd worre]</span>, nochdemmase <span class=\"plainlinks\">[$2 fas Iwasedz fraigewe]</span> kabd hod.",
+ "translate-tag-hasnew": "Onde Said hods <span class=\"plainlinks\">[$1 Eawede]</span>, wu ned fas Iwasedze fraigewe worre sin.",
+ "tpt-translation-intro": "Die Said isch ä <span class=\"plainlinks\">[$1 iwasedzdi Fassung]</span> vunde Said [[$2]] un die Iwasedzung isch zu $3 % ferdisch.",
+ "tpt-languages-legend": "Onare Schbroche",
+ "tpt-languages-zero": "Midm Iwasedze in die Schbrooch oafonge",
+ "tpt-target-page": "Die Said konned vun Hoand agdualisiad werre.\nDie Said ischä Iwasedzung vunde Said [[$1]] un die Iwasedzung koama midm [$2 Iwasedzungsweagzaisch] agdualisiere.",
+ "tpt-unknown-page": "D'Noamensraum isch fas Iwasedze vun Wikisaide reswawiad.\nDie Said, wu grad schaffe duschd, enschbrischd käna iwasedbari Said.",
+ "tpt-translation-restricted": "S'Iwasedze vunde Said in die Schbrooch isch duaschn Administrator vahinad worre.\n\nGrund: $1",
+ "tpt-discouraged-language-force": "S'Iwasedze vunde Said in Schbrooche isch duaschn Administrator oigschrängd worre. Die Schbrooch isch laida ned unade ealaubde Schbrooche.\n\nGrund: $1",
+ "tpt-discouraged-language": "Die Schbrooch isch käni vunde voaroangischi Schbrooche, wuen Administrator va die Said gsedzd kabd hod.\n\nGrund: $1",
+ "tpt-priority-languages": "Än Administrator hoddie voaroangischi Schbrooche fa die Grubb uff $1 gsedzd.",
+ "tpt-render-summary": "Iwanemm die naijschd Ausgab vunde Qwellsaid",
+ "tpt-download-page": "Said mide Iwasedzung ausgewe",
+ "aggregategroups": "Grubbe zsommefasse",
+ "tpt-aggregategroup-add": "Dzufiesche",
+ "tpt-aggregategroup-save": "Schbaischare",
+ "tpt-aggregategroup-add-new": "Ä naiji zsommegfasdi Grubb dzufiesche",
+ "tpt-aggregategroup-new-name": "Noame:",
+ "tpt-aggregategroup-new-description": "Bschraiwung (fraiwillisch)",
+ "tpt-aggregategroup-remove-confirm": "Bischda sischa, dass die zsommegfasdi Grubb lesche wilschd?",
+ "tpt-aggregategroup-invalid-group": "Die Grubb hods ned",
+ "pt-parse-open": "Ä &lt;translate&gt;-Uffschrifd hodkä Gescheschdigg.\nIwasedzungsvorlaach: <pre>$1</pre>",
+ "pt-parse-close": "Än&lt;translate&gt;-Uffschrifd hodkä Gescheschdigg.\nIwasedzungsvorlaach: <pre>$1</pre>",
+ "pt-parse-nested": "Vaschacheldi &lt;translate&gt;-Abschnidd sined meschlisch.\nText vunde Uffschrifd: <pre>$1</pre>",
+ "pt-shake-multiple": "Mehrare Abschnittszaische fa'n Abschnidd.\nTegschd vum Abschnidd: <pre>$1</pre>",
+ "pt-shake-position": "Abschnittszaische onär ueawadede Schdell.\nTegschd vum Abschnidd: <pre>$1</pre>",
+ "pt-shake-empty": "De Abschnid fas Zaische $1 isch lea.",
+ "log-description-pagetranslation": "Logbuch fa Änarunge, wus Iwasedzungssischdem fa Saide noidud",
+ "log-name-pagetranslation": "Iwasedzungs-Logbuch",
+ "pt-movepage-title": "Bweesch die iwasedzba Said $1",
+ "pt-movepage-blockers": "Die iwasedzba Said kon {{PLURAL:$1|weschm|weschede}} Fehla ned uffde naije Noame bweschd werre:",
+ "pt-movepage-block-base-exists": "Die Zielbasis Said [[:$1]] hods schun.",
+ "pt-movepage-block-base-invalid": "Die Grundsaid hod kän gildische Tidl.",
+ "pt-movepage-block-tp-exists": "Die Iwasedzungsaid [[:$2]] hods schun.",
+ "pt-movepage-block-tp-invalid": "Die Iwasedzung vum Saidetitl fa [[:$1]] deed ned gildisch soi (zu loang?).",
+ "pt-movepage-block-section-exists": "Die Abschniddsaid [[:$2]] hods schun.",
+ "pt-movepage-block-section-invalid": "Die Iwasedzung vunde Abschniddsaid fa [[:$1]] deed ned gildisch soi (zu loang?).",
+ "pt-movepage-block-subpage-exists": "Die Unasaid [[:$2]] hods schun.",
+ "pt-movepage-block-subpage-invalid": "De Saidetitl fa [[:$1]] deed ned gildisch soi (zu loang?).",
+ "pt-movepage-list-pages": "Lisch vunde Saide, wu zu vaschiewe sin",
+ "pt-movepage-list-translation": "Iwasedzdi {{PLURAL:$1|Said|Saide}}",
+ "pt-movepage-list-section": "Iwwasezdi Grubb {{PLURAL:$1|Said|Saide}}",
+ "pt-movepage-list-other": "Waidari Una{{PLURAL:$1|said|saide}}",
+ "pt-movepage-list-count": "Gsomd hods $1 {{PLURAL:$1|Said|Saide}} fas vaschiewe.",
+ "pt-movepage-legend": "Bweesch die iwasedzba Said",
+ "pt-movepage-current": "Agduelle Noame:",
+ "pt-movepage-new": "Naije Noame:",
+ "pt-movepage-reason": "Grund:",
+ "pt-movepage-subpages": "Beweesch alli Unsasaide",
+ "pt-movepage-action-check": "Iwabrief, obs Vaschiewe meschlisch isch",
+ "pt-movepage-action-perform": "Vaschiebs",
+ "pt-movepage-action-other": "Änas Ziel",
+ "pt-movepage-intro": "Die Schbezialsaid eameschlischds Saide zu vaschiewe, wu fas Iwasedze gkennzaischnd worre sin.\nDie Vaschiewung gehdned glaisch, wails viel Saide hod.\nWerendm Vaschiewe komma die Saide ned bnudze.\nFehla werre im [[Special:Log/pagetranslation|Iwasedzungs-Logbuch]] uffgschriewe un missn vun Hond vaänad werre.",
+ "pt-movepage-logreason": "Deel vunde iwasedzbari Said $1.",
+ "pt-movepage-started": "Die Grundsaid isch vaschowe worre.\nBriefs [[Special:Log/pagetranslation|Übersetzungs-Logbuch]] uff Nochrischde vun Fehla- unde Ferdischschdellung.",
+ "pt-locked-page": "Die Said isch gsischad, wail die Iwasetzungssaid grad vaschowe werd.",
+ "pt-deletepage-lang-title": "Lesche vunde iwasedzdi Saide $1.",
+ "pt-deletepage-full-title": "Lesche vunde iwasedzbari Saide $1.",
+ "pt-deletepage-invalid-title": "Die oagewe Said isch ugildisch.",
+ "pt-deletepage-invalid-text": "Die ogewe Said konned iwwasezd werre un isch a kä Iwasedzung.",
+ "pt-deletepage-action-check": "Zaisch leschbari Saide",
+ "pt-deletepage-action-perform": "Leschs",
+ "pt-deletepage-action-other": "Änas Ziel",
+ "pt-deletepage-lang-legend": "Iwasedzdi Said lesche",
+ "pt-deletepage-full-legend": "Iwasedzbari Said lesche",
+ "pt-deletepage-any-legend": "Iwasedzbari oda iwasedzdi Said lesche",
+ "pt-deletepage-current": "Saidenoame:",
+ "pt-deletepage-reason": "Grund:",
+ "pt-deletepage-subpages": "Lesch alli Unasaide",
+ "pt-deletepage-list-pages": "Lisch vunde Saide, wu zu lesche sin",
+ "pt-deletepage-list-translation": "Iwasedzdi Saide",
+ "pt-deletepage-list-section": "Iwwasedzungs-Grubbsaide",
+ "pt-deletepage-list-other": "Waidari Unasaide",
+ "pt-deletepage-list-count": "Gsomd hods $1 {{PLURAL:$1|Said|Saide}} fas lesche.",
+ "pt-deletepage-full-logreason": "Deel vunde iwasedzbari Said $1.",
+ "pt-deletepage-lang-logreason": "Deel vunde iwasedzde Said $1.",
+ "pt-deletepage-started": "Iwabriefs [[Special:Log/pagetranslation|Iwasedzungs-Logbuch]] noch Fehla un Nochrischde fas Feadischschdelle.",
+ "pt-deletepage-intro": "Die Schbezialsaid konn alli iwasedzbari oda iwasedzdi Saide vunär Schbrooch lesche.\nS'Lesche werd ned glaisch gmachd, wenns viel Saide sin.\nFehla werren im [[Special:Log/pagetranslation|Iwasedzungs-Logbuch]] oigdraache un missn vun Hoand b'rischdischd werre."
+}
diff --git a/MLEB/Translate/i18n/pagetranslation/pl.json b/MLEB/Translate/i18n/pagetranslation/pl.json
new file mode 100644
index 00000000..6f3e4820
--- /dev/null
+++ b/MLEB/Translate/i18n/pagetranslation/pl.json
@@ -0,0 +1,205 @@
+{
+ "@metadata": {
+ "authors": [
+ "Amire80",
+ "BeginaFelicysym",
+ "Chrumps",
+ "Deejay1",
+ "Equadus",
+ "Leinad",
+ "Olgak85",
+ "Sp5uhe",
+ "ToSter",
+ "WTM",
+ "Woytecr",
+ "Matik7",
+ "Py64"
+ ]
+ },
+ "pagetranslation": "Tłumaczenie stron",
+ "right-pagetranslation": "Oznaczanie wersji stron do przetłumaczenia",
+ "action-pagetranslation": "zarządzanie stronami do tłumaczenia",
+ "tpt-desc": "Rozszerzenie pozwalające tłumaczyć strony treści",
+ "tpt-section": "Jednostka tłumaczenia $1",
+ "tpt-section-new": "Nowa jednostka tłumaczenia.\nNazwa – $1",
+ "tpt-section-deleted": "Jednostka tłumaczenia $1",
+ "tpt-template": "Szablon strony",
+ "tpt-templatediff": "Szablon strony został zmieniony.",
+ "tpt-diff-old": "Poprzedni tekst",
+ "tpt-diff-new": "Nowy tekst",
+ "tpt-submit": "Oznacz tę wersję do przetłumaczenia",
+ "tpt-sections-oldnew": "Nowe i istniejące jednostki tłumaczenia",
+ "tpt-sections-deleted": "Usunięte jednostki tłumaczenia",
+ "tpt-sections-template": "Szablon strony tłumaczenia",
+ "tpt-action-nofuzzy": "Nie unieważniaj tłumaczeń",
+ "tpt-badtitle": "Podana nazwa strony ($1) nie jest dozwolonym tytułem",
+ "tpt-nosuchpage": "Strona $1 nie istnieje",
+ "tpt-oldrevision": "$2 nie jest najnowszą wersją strony [[:$1]].\nTylko najnowsze wersje mogą być oznaczane do tłumaczenia.",
+ "tpt-notsuitable": "Strona $1 nie nadaje się do tłumaczenia.\nUpewnij się, że ma znaczniki <nowiki><translate></nowiki> i właściwą składnię.",
+ "tpt-saveok": "Strona [[:$1]] została oznaczona do tłumaczenia razem z $2 {{PLURAL:$2|jednostką|jednostkami}} tłumaczenia.\nMożna ją teraz <span class=\"plainlinks\">[$3 przetłumaczyć]</span>.",
+ "tpt-offer-notify": "Możesz <span class=\"plainlinks\">[$1 powiadomić tłumaczy]</span> o tej stronie.",
+ "tpt-badsect": "„$1” nie jest dozwoloną nazwą jednostki tłumaczenia $2.",
+ "tpt-showpage-intro": "Poniżej wypisane są nowe, istniejące i usunięte sekcje.\nPrzed oznaczeniem tej wersji do tłumaczenia, aby uniknąć niepotrzebnej pracy tłumaczy, sprawdź czy zmiany w sekcjach zostały zminimalizowane.",
+ "tpt-mark-summary": "Oznaczono tę wersję do tłumaczenia",
+ "tpt-mark-nochanges": "Nie ma różnicy pomiędzy tą wersją a wersją ostatnio oznaczoną.",
+ "tpt-edit-failed": "Nie udało się zaktualizować strony $1",
+ "tpt-duplicate": "Nazwa jednostki tłumaczenia $1 jest używana więcej niż jeden raz.",
+ "tpt-already-marked": "Najnowsza wersja tej strony już wcześniej została oznaczona do tłumaczenia.",
+ "tpt-unmarked": "Strona $1 nie będzie dłużej oznaczona jako przeznaczona do tłumaczenia.",
+ "tpt-list-nopages": "Nie oznaczono stron do tłumaczenia i nie ma stron gotowych do oznaczenia do tłumaczenia.",
+ "tpt-new-pages-title": "Strony proponowane do tłumaczenia",
+ "tpt-old-pages-title": "Strony będące w tłumaczeniu",
+ "tpt-other-pages-title": "Uszkodzone strony",
+ "tpt-discouraged-pages-title": "Strony odradzane",
+ "tpt-new-pages": "{{PLURAL:$1|Ta strona zawiera|Te strony zawierają}} tekst ze znacznikami tłumaczenia, ale żadna wersja {{PLURAL:$1|tej strony|tych stron}} nie jest aktualnie oznaczona do tłumaczenia.",
+ "tpt-old-pages": "Niektóre wersje {{PLURAL:$1|tej strony|tych stron}} zostały oznaczone do tłumaczenia.",
+ "tpt-other-pages": "{{PLURAL:$1|Stara wersja tej strony jest oznaczona jako przeznaczona|Stare wersje tych stron są oznaczone jako przeznaczone}} do tłumaczenia, ale {{PLURAL:$1|jej aktualna wersja nie może zostać oznaczona jako przeznaczona|ich aktualne wersje nie mogą zostać oznaczone jako przeznaczone}} do tłumaczenia.",
+ "tpt-discouraged-pages": "{{PLURAL:$1|Ta strona jest odradzana|Te strony są odradzane}} do dalszego tłumaczenia.",
+ "tpt-select-prioritylangs": "Kody języków priorytetowych rozdzielone przecinkami:",
+ "tpt-select-prioritylangs-force": "Zapobieganie tłumaczeniom na języki inne niż priorytetowe",
+ "tpt-select-prioritylangs-reason": "Powód:",
+ "tpt-sections-prioritylangs": "Języki priorytetowe",
+ "tpt-rev-mark": "oznacz do tłumaczenia",
+ "tpt-rev-unmark": "usuń z tłumaczenia",
+ "tpt-rev-discourage": "zniechęcić",
+ "tpt-rev-encourage": "Przywracanie",
+ "tpt-rev-mark-tooltip": "Oznacz najnowszą wersję tej strony do tłumaczenia.",
+ "tpt-rev-unmark-tooltip": "Usuń tę stronę z tłumaczenia.",
+ "tpt-rev-discourage-tooltip": "Zniechęć do dalszych tłumaczeń na tej stronie.",
+ "tpt-rev-encourage-tooltip": "Przywrócić tę stronę do zwykłego tłumaczenia.",
+ "translate-tag-translate-link-desc": "Przetłumacz tę stronę",
+ "translate-tag-markthis": "Oznacz tę stronę do tłumaczenia",
+ "translate-tag-markthisagain": "Ta strona została zmieniona <span class=\"plainlinks\">[$1 razy]</span>, od kiedy ostatnio była <span class=\"plainlinks\">[$2 oznaczona do tłumaczenia]</span>.",
+ "translate-tag-hasnew": "Ta strona zawiera <span class=\"plainlinks\">[$1 zmiany]</span>, które nie zostały oznaczone do tłumaczenia.",
+ "tpt-translation-intro": "Ta strona to <span class=\"plainlinks\">[$1 przetłumaczona wersja]</span> strony [[$2]], a tłumaczenie jest ukończone w $3%.",
+ "tpt-languages-legend": "Inne języki:",
+ "tpt-languages-zero": "Rozpocznij tłumaczenie na ten język",
+ "tpt-languages-nonzero": "$1 (przetłumaczono $2%)",
+ "tpt-tab-translate": "Przetłumacz",
+ "tpt-target-page": "Ta strona nie może zostać zaktualizowana ręcznie.\nJest ona tłumaczeniem strony [[$1]], a tłumaczenie może zostać zmienione za pomocą [$2 narzędzia tłumacza].",
+ "tpt-unknown-page": "Ta przestrzeń nazw jest zarezerwowana dla tłumaczeń stron z zawartością.\nStrona, którą próbujesz edytować, prawdopodobnie nie odpowiada żadnej stronie oznaczonej do tłumaczenia.",
+ "tpt-translation-restricted": "Tłumaczenie tej strony na ten język zostało zablokowane przez administratora tłumaczenia.\n\nPowód: $1",
+ "tpt-discouraged-language-force-header": "Ta strona nie może być przetłumaczona na $1.",
+ "tpt-discouraged-language-force-content": "Administrator tłumaczeń zdecydował, że ta strona może być tłumaczona tylko na $1.",
+ "tpt-discouraged-language-header": "Tłumaczenie na $1 nie jest priorytetem dla tej strony.",
+ "tpt-discouraged-language-content": "Administrator tłumaczeń zdecydował, aby skupić się na tłumaczeniu na $1.",
+ "tpt-discouraged-language-force": "<strong>Ta strona nie może być przetłumaczona na $2.</strong>\n\nAdministrator tłumaczeń ograniczył języki, na które ta strona może być tłumaczona do $3.",
+ "tpt-discouraged-language": "<strong>Tłumaczenie na $2 jest priorytetowe dla tej strony.</strong>\n\nAdministrator tłumaczeń zdecydował, aby tłumaczenie wykonać przede wszystkim dla $3.",
+ "tpt-discouraged-language-reason": "Powód: $1",
+ "tpt-priority-languages": "Administrator tłumaczenia ustawił języki priorytetowe dla tej grupy jako $1 .",
+ "tpt-render-summary": "Aktualizowanie w celu dopasowania nowej wersji strony źródłowej",
+ "tpt-download-page": "Wyeksportuj stronę z tłumaczeniami",
+ "aggregategroups": "Grupy zbiorcze",
+ "tpt-aggregategroup-add": "Dodaj",
+ "tpt-aggregategroup-save": "Zapisz",
+ "tpt-aggregategroup-add-new": "Dodaj nową grupę zbiorczą",
+ "tpt-aggregategroup-new-name": "Nazwa:",
+ "tpt-aggregategroup-new-description": "Opis (opcjonalnie):",
+ "tpt-aggregategroup-remove-confirm": "Na pewno usunąć tę grupę agregacji?",
+ "tpt-aggregategroup-invalid-group": "Grupa nie istnieje",
+ "tpt-aggregategroup-edit-name": "Nazwa:",
+ "tpt-aggregategroup-edit-description": "Opis:",
+ "tpt-aggregategroup-update": "Zapisz",
+ "tpt-aggregategroup-update-cancel": "Anuluj",
+ "tpt-invalid-group": "Nieprawidłowa grupa",
+ "pt-parse-open": "Niezrównoważony znacznik &lt;translate>.\nSzablon tłumaczenia – <pre>$1</pre>",
+ "pt-parse-close": "Niezrównoważony znacznik &lt;/translate>.\nSzablon tłumaczenia – <pre>$1</pre>",
+ "pt-parse-nested": "Zagnieżdżanie jednostek tłumaczenia &lt;translate> nie jest dopuszczalne.\nTekst znacznika: <pre>$1</pre>",
+ "pt-shake-multiple": "Wiele wyróżników jednostki tłumaczenia dla jednej jednostki tłumaczenia.\nTekst jednostki tłumaczenia: <pre>$1</pre>",
+ "pt-shake-position": "Wyróżniki jednostki tłumaczenia w nieoczekiwanym miejscu.\nTekst jednostki tłumaczenia: <pre>$1</pre>",
+ "pt-shake-empty": "Pusta jednostka tłumaczenia dla wyróżnika $1.",
+ "log-description-pagetranslation": "Rejestr działań związanych z systemem tłumaczenia stron",
+ "log-name-pagetranslation": "Rejestr tłumaczenia stron",
+ "logentry-pagetranslation-mark": "$1 {{GENDER:$2|oznaczył|oznaczył}} $3 do tłumaczenia",
+ "logentry-pagetranslation-unmark": "$1 {{GENDER:$2|usunął|usunęła}} $3 z tłumaczenia",
+ "logentry-pagetranslation-moveok": "$1 {{GENDER:$2|zmienił|zmieniła}} nazwę strony przeznaczonej do tłumaczenia z $3 na $4",
+ "logentry-pagetranslation-movenok": "$1 {{GENDER:$2|napotkał|napotkała}} problem podczas przenoszenia strony $3 do $4",
+ "logentry-pagetranslation-deletefok": "$1 {{GENDER:$2|zakończył|zakończyła}} usuwanie strony przeznaczonej do tłumaczenia $3",
+ "logentry-pagetranslation-deletelok": "$1 {{GENDER:$2|usunął|usunęła}} stronę przeznaczoną do tłumaczenia $3",
+ "logentry-pagetranslation-encourage": "$1 {{GENDER:$2|zachęcił|zachęciła}} do tłumaczenia $3",
+ "logentry-pagetranslation-discourage": "$1 {{GENDER:$2|zniechęcił|zniechęciła}} do tłumaczenia $3",
+ "logentry-pagetranslation-prioritylanguages-unset": "$1 {{GENDER:$2|usunął|usunęła}} języki priorytetowe ze strony przeznaczonej do tłumaczenia $3",
+ "logentry-pagetranslation-prioritylanguages": "$1 {{GENDER:$2|ustawił|ustawiła}} języki priorytetowe dla strony przeznaczonej do tłumaczenia $3 do $5",
+ "logentry-pagetranslation-prioritylanguages-force": "$1 {{GENDER:$2|ograniczył|ograniczyła}} języki dla strony przeznaczonej do tłumaczenia $3 do $5",
+ "logentry-pagetranslation-associate": "$1 {{GENDER:$2|dodał|dodała}} stronę przeznaczoną do tłumaczenia $3 do połączonej grupy $4",
+ "logentry-pagetranslation-dissociate": "$1 {{GENDER:$2|usunął|usunęła}} stronę przeznaczoną do tłumaczenia $3 z połączonej grupy $4",
+ "pt-movepage-title": "Przenieś przetłumaczalną stronę $1",
+ "pt-movepage-blockers": "Przetłumaczalna strona nie może zostać przeniesiona pod nową nazwę ponieważ {{PLURAL:$1|wystąpił następujący błąd|wystąpiły następujące błędy:}}",
+ "pt-movepage-block-base-exists": "Istnieje docelowa strona przeznaczona do tłumaczenia [[:$1]].",
+ "pt-movepage-block-base-invalid": "Nazwa docelowej strony do tłumaczenia nie jest poprawnym tytułem.",
+ "pt-movepage-block-tp-exists": "Istnieje docelowa strona tłumaczenia [[:$2]].",
+ "pt-movepage-block-tp-invalid": "Nazwa docelowej strony tłumaczenia [[:$1]] może być nieprawidłowa. Może jest zbyt długa?",
+ "pt-movepage-block-section-exists": "Istnieje docelowa strona [[:$2]] dla jednostki tłumaczenia.",
+ "pt-movepage-block-section-invalid": "Nazwa docelowej strony [[:$1]] dla jednostki tłumaczenia jest nieprawidłowa. Może jest zbyt długa?",
+ "pt-movepage-block-subpage-exists": "Docelowa podstrona [[:$2]] istnieje.",
+ "pt-movepage-block-subpage-invalid": "Nazwa docelowej podstrony [[:$1]] jest nieprawidłowa. Może jest zbyt długa?",
+ "pt-movepage-list-pages": "Lista stron do przeniesienia",
+ "pt-movepage-list-translation": "{{PLURAL:$1|strona|strony|stron}} do przetłumaczenia",
+ "pt-movepage-list-section": "{{PLURAL:$1|Strona|Strony}} jednostki tłumaczenia",
+ "pt-movepage-list-other": "{{PLURAL:$1|Inna podstrona|Inne podstrony}}",
+ "pt-movepage-list-count": "W sumie do przeniesienia {{PLURAL:$1|jest $1 strona|są $1 strony|jest $1 stron}}.",
+ "pt-movepage-legend": "Przenieś przetłumaczalną stronę",
+ "pt-movepage-current": "Obecna nazwa",
+ "pt-movepage-new": "Nowa nazwa",
+ "pt-movepage-reason": "Powód",
+ "pt-movepage-subpages": "Przenieś wszystkie podstrony",
+ "pt-movepage-action-check": "Sprawdź czy przeniesienie jest wykonalne",
+ "pt-movepage-action-perform": "Przenieś",
+ "pt-movepage-action-other": "Zmiana celu",
+ "pt-movepage-intro": "Ta strona specjalna umożliwia przenoszenie stron, które zostały oznaczone jako wymagające tłumaczenia.\nDziałanie przenoszenia nie jest natychmiastowe, ponieważ wiele stron wymaga przenoszenia.\nPodczas gdy strony są przenoszone, nie jest możliwa praca z tymi stronami poprzez zapytania.\nBłędy zostaną odnotowane na [[Special:Log/pagetranslation|stronie rejestru tłumaczeń]] i muszą zostać naprawione ręcznie.",
+ "pt-movepage-logreason": "Część przetłumaczalnej strony $1.",
+ "pt-movepage-started": "Strona bazowa jest teraz przenoszona. \nProszę sprawdzić na [[Special:Log/pagetranslation|stronie rejestru tłumaczeń]] czy nie wystąpiły błędy oraz komunikat o zakończeniu operacji.",
+ "pt-locked-page": "Ta strona jest zablokowana ponieważ jest przygotowana do przeniesienia.",
+ "pt-deletepage-lang-title": "Usuwanie strony tłumaczenia $1.",
+ "pt-deletepage-full-title": "Usuwanie strony do tłumaczenia $1.",
+ "pt-deletepage-invalid-title": "Wybrana strona nie jest poprawna.",
+ "pt-deletepage-invalid-text": "Wybrana strona nie jest przeznaczona do tłumaczenia ani nie jest stroną przetłumaczoną.",
+ "pt-deletepage-action-check": "Pokaż spis stron, które mają zostać usunięte",
+ "pt-deletepage-action-perform": "Usuń",
+ "pt-deletepage-action-other": "Zmiana celu",
+ "pt-deletepage-lang-legend": "Usuwanie strony tłumaczenia",
+ "pt-deletepage-full-legend": "Usunąć stronę przeznaczoną do tłumaczenia",
+ "pt-deletepage-any-legend": "Usuń stronę przeznaczoną do tłumaczenia lub tłumaczenie takiej strony",
+ "pt-deletepage-current": "Tytuł strony",
+ "pt-deletepage-reason": "Powód",
+ "pt-deletepage-subpages": "Usuń wszystkie podstrony",
+ "pt-deletepage-list-pages": "Lista stron do usunięcia",
+ "pt-deletepage-list-translation": "Strony tłumaczeń",
+ "pt-deletepage-list-section": "Strony jednostki tłumaczenia",
+ "pt-deletepage-list-other": "Inne podstrony",
+ "pt-deletepage-list-count": "W sumie $1 {{PLURAL:$1|strona|strony|stron}} do usunięcia.",
+ "pt-deletepage-full-logreason": "Część strony do tłumaczenia $1.",
+ "pt-deletepage-lang-logreason": "Część strony tłumaczenia $1.",
+ "pt-deletepage-started": "Sprawdź [[Special:Log/pagetranslation|dziennik strony tłumaczenia]] pod względem błędów i komunikatów zakończenia.",
+ "pt-deletepage-intro": "Ta specjalna strona pozwala na usuwanie całej strony przeznaczonej do tłumaczenia lub pojedynczej strony w danym języku.\nAkcja usuwania nie będzie natychmiastowa, ponieważ wszystkie strony zależne od podanych również będą usunięte.\nBłędy będą rejestrowane [[Special:Log/pagetranslation|w dzienniku tłumaczenia strony]] i muszą być naprawione ręcznie.",
+ "pagemigration": "Migracja stron do tłumaczenia",
+ "pm-import-button-label": "Importuj",
+ "pm-savepages-button-label": "Zapisz",
+ "pm-cancel-button-label": "Anuluj",
+ "pm-pagename-placeholder": "Wprowadź nazwę strony",
+ "pm-langcode-placeholder": "Kod języka",
+ "pm-page-does-not-exist": "$1 nie istnieje",
+ "pm-old-translations-missing": "$1 nie zawiera starego tłumaczenia",
+ "pm-extra-units-warning": "Mogą występować dodatkowe jednostki. Proszę odpowiednio dopasować jednostki źródła i tłumaczenia.",
+ "pm-pagename-missing": "Podaj nazwę strony",
+ "pm-langcode-missing": "Proszę podać kod języka",
+ "pm-add-icon-hover-text": "Dodaj jednostkę poniżej",
+ "pm-swap-icon-hover-text": "Zamień z jednostką poniżej",
+ "pm-delete-icon-hover-text": "Usuń jednostkę",
+ "pm-pagetitle-invalid": "Podaj poprawny tytuł strony",
+ "pm-summary-import": "Importowane tłumaczenie za pomocą [[Special:PageMigration|migracji strony]]",
+ "tpt-translate-title": "Umożliwienie tłumaczenia tytułu strony",
+ "pp-save-summary": "Przygotowano stronę do tłumaczenia",
+ "pagepreparation": "Przygotowanie strony do tłumaczenia",
+ "pp-pagename-placeholder": "Wprowadź nazwę strony",
+ "pp-prepare-button-label": "Przygotuj",
+ "pp-save-button-label": "Zapisz",
+ "pp-save-message": "Strona została zapisana. Możesz ją [$1 edytować].",
+ "pp-already-prepared-message": "Wydaje się, że ta strona została już przygotowana do tłumaczenia. Nie ma żadnych zmian w porównaniu z poprzednią wersją.",
+ "pp-pagename-missing": "Podaj nazwę strony.",
+ "pp-diff-old-header": "Tekst źródłowy",
+ "pp-diff-new-header": "Przygotowany tekst",
+ "tpt-unlink-confirm": "Proszę potwierdzić, że na pewno chcesz usunąć tę stronę z systemu tłumaczenia.\nWybór języka i przetłumaczone nazwy stron przestaną działać.\nStrony tłumaczenia będą edytowalne.",
+ "tpt-unlink-button": "Usuń z tłumaczenia.",
+ "tpt-unlink-summary": "Usunięto stronę z tłumaczenia."
+}
diff --git a/MLEB/Translate/i18n/pagetranslation/pms.json b/MLEB/Translate/i18n/pagetranslation/pms.json
new file mode 100644
index 00000000..1586541b
--- /dev/null
+++ b/MLEB/Translate/i18n/pagetranslation/pms.json
@@ -0,0 +1,138 @@
+{
+ "@metadata": {
+ "authors": [
+ "Borichèt",
+ "Dragonòt"
+ ]
+ },
+ "pagetranslation": "Tradussion dle pàgine",
+ "right-pagetranslation": "Marché le version dle pàgine për la tradussion",
+ "action-pagetranslation": "gestì le pàgine da volté",
+ "tpt-desc": "Estension për fé la tradussion dle pàgine ëd contnù",
+ "tpt-section": "Unità ëd tradussion $1",
+ "tpt-section-new": "Neuva unità ëd tradussion.\nNòm: $1",
+ "tpt-section-deleted": "Unità ëd tradussion $1",
+ "tpt-template": "Model ëd pàgina",
+ "tpt-templatediff": "Ël model dla pàgina a l'é cangià.",
+ "tpt-diff-old": "Test ëd prima",
+ "tpt-diff-new": "Test neuv",
+ "tpt-submit": "Marca costa version për la tradussion",
+ "tpt-sections-oldnew": "Unità ëd tradussion neuve e esistente",
+ "tpt-sections-deleted": "Unità ëd tradussion eliminà",
+ "tpt-sections-template": "Model ëd pàgina ëd tradussion",
+ "tpt-action-nofuzzy": "Invalidé nen le tradussion",
+ "tpt-badtitle": "Ël nòm dàit a la pàgina ($1) a l'é pa un tìtol bon",
+ "tpt-nosuchpage": "La pàgina $1 a esist pa",
+ "tpt-oldrevision": "$2 a l'é nen l'ùltima version dla pàgina [[:$1]].\nMach j'ùltime version a peulo esse marcà për la tradussion.",
+ "tpt-notsuitable": "La pàgina $1 a va nen bin për la tradussion.\nCh'a contròla ch'a l'abia le tichëtte <nowiki><translate></nowiki> e na sintassi bon-a.",
+ "tpt-saveok": "La pàgina [[:$1]] a l'é stàita marcà për la tradussion con $2 {{PLURAL:$2|unità ëd tradussion|unità ëd tradussion}}.\nAdess la pàgina a peul esse <span class=\"plainlinks\">[$3 voltà]</span>.",
+ "tpt-badsect": "«$1» a l'é pa un nòm bon për l'unità ëd tradussion $2.",
+ "tpt-showpage-intro": "Sì-sota a son listà j'unità ëd tradussion neuve, esistente e sganfà.\nPrima ëd marché costa version për la tradussion, controlé che le modìfiche a j'unità ëd tradussion a sio minimisà për evité dël travaj inùtil ai tradutor.",
+ "tpt-mark-summary": "Costa version a l'é stàita marcà për la tradussion",
+ "tpt-edit-failed": "Impossìbil d'agiorné la pàgina: $1",
+ "tpt-duplicate": "Ël nòm dl'unità ëd tradussion $1 a l'é dovrà pi che na vira.",
+ "tpt-already-marked": "L'ùltima version ëd sa pàgina a l'é stàita già marcà për la tradussion.",
+ "tpt-unmarked": "La pàgina $1 a l'é pi nen marcà për la tradussion.",
+ "tpt-list-nopages": "A-i é gnun-a pàgina marcà për la tradussion ni pronta për esse marcà për la tradussion.",
+ "tpt-new-pages-title": "Pàgine proponùe për la tradussion",
+ "tpt-old-pages-title": "Pàgine an tradussion",
+ "tpt-other-pages-title": "Pàgine cioche",
+ "tpt-discouraged-pages-title": "Pàgine dëscoragià",
+ "tpt-new-pages": "{{PLURAL:$1|Sa pàgina a conten|Se pàgine a conten-o}} dël test con la tichëtta ëd tradussion, ma gnun-a version ëd {{PLURAL:$1|costa pàgina|coste pàgine}} a l'é al moment marcà për la tradussion.",
+ "tpt-old-pages": "Chèiche version ëd {{PLURAL:$1|costa pàgine|coste pàgine}} a son ëstàite marcà për la tradussion.",
+ "tpt-other-pages": "{{PLURAL:$1|Na veja version ëd costa pàgina a l'é|Dle veje version ëd coste pàgine a son}} marcà për la tradussion,\nma {{PLURAL:$1|l'ùltima version a peul|j'ùltime version a peulo}} pa esse marcà për la tradussion.",
+ "tpt-discouraged-pages": "{{PLURAL:$1|Costa pàgina a l'é stàita|Coste pagine a son ëstaite}} dëscoragià da avèj d'àutre tradussion.",
+ "tpt-select-prioritylangs": "Lista dij còdes prioritari ëd le lenghe separà da 'd vìrgole:",
+ "tpt-select-prioritylangs-force": "Ampedì le tradussion an lenghe diferente da le lenghe prioritarie",
+ "tpt-select-prioritylangs-reason": "Rason:",
+ "tpt-sections-prioritylangs": "Lenghe prioritarie",
+ "tpt-rev-mark": "marca për tradussion",
+ "tpt-rev-unmark": "gava da la tradussion",
+ "tpt-rev-discourage": "dëscoragia",
+ "tpt-rev-encourage": "buté 'me ch'a l'era",
+ "tpt-rev-mark-tooltip": "Marché l'ùltima version ëd costa pàgina për la tradussion.",
+ "tpt-rev-unmark-tooltip": "Gava costa pàgina da la tradussion.",
+ "tpt-rev-discourage-tooltip": "Dëscoragé d'àutre tradussion su costa pagina.",
+ "tpt-rev-encourage-tooltip": "Ripristiné costa pàgina an tradussion normal.",
+ "translate-tag-translate-link-desc": "Fé la tradussion ëd sa pàgina",
+ "translate-tag-markthis": "Marca costa pàgina për la tradussion",
+ "translate-tag-markthisagain": "Costa pàgina a l'ha avù <span class=\"plainlinks\">[$1 cangiament]</span> da cand a l'é stàita <span class=\"plainlinks\">[$2 marcà për la tradussion]</span> l'ùltima vira.",
+ "translate-tag-hasnew": "Costa pàgina a conten <span class=\"plainlinks\">[$1 cangiament]</span> ch'a son pa marcà për la tradussion.",
+ "tpt-translation-intro": "Sta pàgina-sì a l'é na <span class=\"plainlinks\">[$1 vërsion traduvùa]</span> ëd na pàgina [[$2]] e la tradussion a l'é $3% completa e agiornà.",
+ "tpt-languages-legend": "Àutre lenghe:",
+ "tpt-languages-zero": "Ancamin-a la tradussion për sta lenga",
+ "tpt-target-page": "Sta pàgina-sì a peul pa esse modificà a man.\nSta pàgina-sì a l'é na tradussion ëd la pàgina [[$1]] e la tradussion a peul esse modificà an dovrand [$2 l'utiss ëd tradussion].",
+ "tpt-unknown-page": "Sto spassi nominal-sì a l'é riservà për tradussion ëd pàgine ëd contnù.\nLa pàgina ch'it preuve a modifiché a smija pa ch'a corisponda a na pàgina marcà për tradussion.",
+ "tpt-translation-restricted": "La tradussion dë sta pàgina an costa lenga a l'é stàita ampedìa da n'aministrator dle tradussion.\n\nRason: $1",
+ "tpt-discouraged-language-force": "<strong>Costa pàgina a peul pa esse voltà an $2.</strong>\n\nN'aministrator dle tradussion a l'ha decidù che costa pàgina a peul mach esse voltà an $3.",
+ "tpt-discouraged-language": "<strong>La tradussion an $2 a l'é pa na priorità për costa pàgina.</strong>\n\nN'aministrator dle tradussion a l'ha decidù d'adressé jë sfòrs ëd tradussion su $3.",
+ "tpt-discouraged-language-reason": "Rason: $1",
+ "tpt-priority-languages": "N'aministrator ëd tradussion a l'ha ampostà le lenghe prioritarie për sta partìa a $1.",
+ "tpt-render-summary": "Modifiché për esse com la neuva version dla pàgina sorgiss",
+ "tpt-download-page": "Espòrta pàgina con tradussion",
+ "aggregategroups": "Partìe agregà",
+ "tpt-aggregategroup-add": "Gionta",
+ "tpt-aggregategroup-save": "Salva",
+ "tpt-aggregategroup-add-new": "Gionta na neuva partìa agregà",
+ "tpt-aggregategroup-new-name": "Nòm:",
+ "tpt-aggregategroup-new-description": "Descrission (opsional):",
+ "tpt-aggregategroup-remove-confirm": "É-lo sicur ëd vorèj scancelé sta partìa d'agregà?",
+ "tpt-aggregategroup-invalid-group": "La partìa a esist pa",
+ "pt-parse-open": "Tichëtta &lt;translate> pa bilansà.\nStamp ëd viragi: <pre>$1</pre>",
+ "pt-parse-close": "Tichëtta &lt;/translate> pa bilansà.\nStamp ëd viragi: <pre>$1</pre>",
+ "pt-parse-nested": "J'unità ëd tradussion &lt;translate> anidà a son pa përmëttùe.\nTest ëd la tichëtta: <pre>$1</pre>",
+ "pt-shake-multiple": "Marcador mùltipl d'unità ëd tradussion për un-a unità ëd tradussion.\nTest ëd l'unità ëd tradussion: <pre>$1</pre>",
+ "pt-shake-position": "Marcador d'unità ëd tradussion an na posission pa spetà.\nTest ëd l'unità ëd tradussion: <pre>$1</pre>",
+ "pt-shake-empty": "Unità ëd tradussion veuida për ël marcador \"$1\".",
+ "log-description-pagetranslation": "Registr ëd j'assion colegà al sistema ëd tradussion ëd pàgine",
+ "log-name-pagetranslation": "Registr dle tradussion ëd pàgine",
+ "pt-movepage-title": "Tramudé la pàgina da volté $1",
+ "pt-movepage-blockers": "La pàgina da volté a peul pa esse tramudà a un nòm neuv a motiv ëd {{PLURAL:$1|cost eror|costi eror}}:",
+ "pt-movepage-block-base-exists": "La pàgina voltàbil pontà \"[[:$1]]\" a esist.",
+ "pt-movepage-block-base-invalid": "Ël nòm dla pàgina voltàbil pontà a l'é pa un tìtol bon.",
+ "pt-movepage-block-tp-exists": "La pàgina ëd viragi pontà [[:$2]] a esist.",
+ "pt-movepage-block-tp-invalid": "Ël tìtol ëd la pàgina ëd viragi pontà për [[:$1]] a podrìa esse pa bon (tròp longh?).",
+ "pt-movepage-block-section-exists": "La pàgina bërsaj «[[:$2]]» për l'unità ëd tradussion a esist.",
+ "pt-movepage-block-section-invalid": "Ël tìtol ëd la pàgina bërsaj për «[[:$1]]» për l'unità ëd tradussion a smijërìa nen bon (tròp longh?).",
+ "pt-movepage-block-subpage-exists": "La sotpàgina pontà [[:$2]] a esist.",
+ "pt-movepage-block-subpage-invalid": "Ël tìtol ëd la sotpàgina pontà për [[:$1]] a podrìa esse pa bon (tròp longh?).",
+ "pt-movepage-list-pages": "Lista dle pàgine da tramudé",
+ "pt-movepage-list-translation": "{{PLURAL:$1|Pàgina|Pàgine}} ëd tradussion",
+ "pt-movepage-list-section": "{{PLURAL:$1|Pàgina|Pàgine}} d'unità ëd tradussion",
+ "pt-movepage-list-other": "{{PLURAL:$1|Àutra sot-pàgina|Àutre sot-pàgine}}",
+ "pt-movepage-list-count": "An total $1 {{PLURAL:$1|pàgina|pàgine}} da tramudé.",
+ "pt-movepage-legend": "Tramudé la pàgina da volté",
+ "pt-movepage-current": "Nòm corent:",
+ "pt-movepage-new": "Nòm neuv:",
+ "pt-movepage-reason": "Rason:",
+ "pt-movepage-subpages": "Tramuda tute le sotpàgine",
+ "pt-movepage-action-check": "Contròla s'a l'é possìbil tramudé",
+ "pt-movepage-action-perform": "Fé ël tramud",
+ "pt-movepage-action-other": "Cangé ël bërsaj",
+ "pt-movepage-intro": "Sta pàgina special a-j përmët ëd tramudé dle pàgine ch'a son marcà për la tradussion.\nL'assion ëd tramud a sarà pa d'amblé, përchè tante pàgine a dovran esse tramudà.\nAntramentre che le pàgine a son tramudà, a l'é nen possìbil anteragì con cole pàgine.\nJ'eror a saran registrà ant ël [[Special:Log/pagetranslation|registr ëd tradussion ëd le pàgine]] e a dovran esse rangià a man.",
+ "pt-movepage-logreason": "Tòch ëd la pàgina da volté $1.",
+ "pt-movepage-started": "La pàgina base adess a l'é tramudà.\nPër piasì, ch'a contròla ël [[Special:Log/pagetranslation|registr ëd tradussion dle pàgine]] për eror e mëssagi ëd completament.",
+ "pt-locked-page": "Cota pàgina a l'é blocà përchè la pàgina da volté a l'é an camin ch'as tramuda.",
+ "pt-deletepage-lang-title": "Scancelassion ëd la pàgina ëd tradussion $1.",
+ "pt-deletepage-full-title": "Scancelassion ëd la pàgina da volté $1.",
+ "pt-deletepage-invalid-title": "La pàgina spessificà a l'é pa bon-a.",
+ "pt-deletepage-invalid-text": "La pàgina specificà a l'é nen na pàgina da volté ni na pàgina ëd tradussion.",
+ "pt-deletepage-action-check": "Listé le pàgine da scancelé",
+ "pt-deletepage-action-perform": "Fé la scancelassion",
+ "pt-deletepage-action-other": "Cangé ël bërsaj",
+ "pt-deletepage-lang-legend": "Scancelé la pàgina ëd tradussion",
+ "pt-deletepage-full-legend": "Scancelé la pàgina da volté",
+ "pt-deletepage-any-legend": "Scancelé la pàgina da volté o la pàgina ëd tradussion",
+ "pt-deletepage-current": "Nòm ëd la pàgina:",
+ "pt-deletepage-reason": "Rason:",
+ "pt-deletepage-subpages": "Scancelé tute le sot-pàgine",
+ "pt-deletepage-list-pages": "Lista dle pàgine da scancelé",
+ "pt-deletepage-list-translation": "Pàgine ëd tradussion",
+ "pt-deletepage-list-section": "Pàgine dj'unità ëd tradussion",
+ "pt-deletepage-list-other": "Àutre sot-pàgine",
+ "pt-deletepage-list-count": "An total $1 {{PLURAL:$1|pàgina|pàgine}} da scancelé.",
+ "pt-deletepage-full-logreason": "Tòch ëd la pàgina da volté $1.",
+ "pt-deletepage-lang-logreason": "Tòch ëd la pàgina ëd tradussion $1.",
+ "pt-deletepage-started": "Për piasì, ch'a contròla ël [[Special:Log/pagetranslation|registr ëd tradussion dle pàgine]] për j'eror e ël mëssagi ëd completament.",
+ "pt-deletepage-intro": "Costa pàgina special a-j përmët dë scancelé na qualsëssìa pàgina, o na pàgina individual ëd tradussion ant na lenga.\nL'assion dë scancelassion a sarà pa imedià, përché tute le pàgine dipendente da cola a saran ëdcò scancelà.\nJ'eror a saran registrà ant ël [[Special:Log/pagetranslation|registr ëd le tradussion ëd le pàgine]] e a devo esse rangià a man."
+}
diff --git a/MLEB/Translate/i18n/pagetranslation/ps.json b/MLEB/Translate/i18n/pagetranslation/ps.json
new file mode 100644
index 00000000..111d3118
--- /dev/null
+++ b/MLEB/Translate/i18n/pagetranslation/ps.json
@@ -0,0 +1,44 @@
+{
+ "@metadata": {
+ "authors": [
+ "Ahmed-Najib-Biabani-Ibrahimkhel"
+ ]
+ },
+ "pagetranslation": "د مخ ژباړه",
+ "tpt-template": "د مخ کينډۍ",
+ "tpt-templatediff": "د مخ کينډۍ بدلون موندلی.",
+ "tpt-diff-old": "پخوانی متن",
+ "tpt-diff-new": "نوی متن",
+ "tpt-sections-template": "د ژباړې د مخ کينډۍ",
+ "tpt-nosuchpage": "د $1 په نوم کوم مخ نشته",
+ "tpt-old-pages-title": "د ژباړې مخونه",
+ "tpt-other-pages-title": "مات مخونه",
+ "tpt-select-prioritylangs-reason": "سبب:",
+ "tpt-sections-prioritylangs": "د لومړيتوب ژبې",
+ "translate-tag-translate-link-desc": "همدا مخ ژباړل",
+ "translate-tag-markthis": "همدا مخ د ژباړې لپاره په نښه کول",
+ "tpt-languages-legend": "نورې ژبې:",
+ "tpt-discouraged-language-reason": "سبب: $1",
+ "aggregategroups": "ډلې غونډول",
+ "tpt-aggregategroup-add": "ورگډول",
+ "tpt-aggregategroup-save": "خوندي کول",
+ "tpt-aggregategroup-new-name": "نوم:",
+ "pt-movepage-list-pages": "د لېږدون د مخونو لړليک",
+ "pt-movepage-list-translation": "د ژباړې {{PLURAL:$1|مخ|مخونه}}",
+ "pt-movepage-list-section": "د ژباړې د څپرکي {{PLURAL:$1|مخ|مخونه}}",
+ "pt-movepage-list-other": "{{PLURAL:$1|بل څېرمه مخ|نور څېرمه مخونه}}",
+ "pt-movepage-current": "اوسنی نوم:",
+ "pt-movepage-new": "نوی نوم:",
+ "pt-movepage-reason": "سبب:",
+ "pt-movepage-subpages": "ټول واړه مخونه لېږدول",
+ "pt-movepage-action-perform": "لېږد ترسره کول",
+ "pt-movepage-action-other": "موخه بدلول",
+ "pt-deletepage-action-perform": "ړنگېدنه ترسره کول",
+ "pt-deletepage-action-other": "موخه بدلول",
+ "pt-deletepage-current": "د مخ نوم:",
+ "pt-deletepage-reason": "سبب:",
+ "pt-deletepage-subpages": "ټول واړه مخونه ړنگول",
+ "pt-deletepage-list-translation": "د ژباړې مخونه",
+ "pt-deletepage-list-section": "د څپرکي د مخونو ژباړه",
+ "pt-deletepage-list-other": "نور واړه مخونه"
+}
diff --git a/MLEB/Translate/i18n/pagetranslation/pt-br.json b/MLEB/Translate/i18n/pagetranslation/pt-br.json
new file mode 100644
index 00000000..f6171722
--- /dev/null
+++ b/MLEB/Translate/i18n/pagetranslation/pt-br.json
@@ -0,0 +1,162 @@
+{
+ "@metadata": {
+ "authors": [
+ "Cainamarques",
+ "Eduardo.mps",
+ "Giro720",
+ "Helder.wiki",
+ "Luckas",
+ "555",
+ "Fabsouza1",
+ "Rodrigo codignoli",
+ "He7d3r"
+ ]
+ },
+ "pagetranslation": "Tradução de páginas",
+ "right-pagetranslation": "Marca versões de páginas para tradução",
+ "action-pagetranslation": "gerir páginas traduzíveis",
+ "tpt-desc": "Extensão para traduzir páginas de conteúdo",
+ "tpt-section": "Unidade de tradução $1",
+ "tpt-section-new": "Nova unidade de tradução.\nNome: $1",
+ "tpt-section-deleted": "Unidade de tradução $1",
+ "tpt-template": "Modelo de página",
+ "tpt-templatediff": "O modelo de página foi modificado.",
+ "tpt-diff-old": "Texto anterior",
+ "tpt-diff-new": "Novo texto",
+ "tpt-submit": "Marcar esta versão para tradução",
+ "tpt-sections-oldnew": "Unidades de tradução novas e existentes",
+ "tpt-sections-deleted": "Unidades de tradução apagadas",
+ "tpt-sections-template": "Modelo de página de tradução",
+ "tpt-action-nofuzzy": "Não invalidar traduções",
+ "tpt-badtitle": "O nome de página dado ($1) não é um título válido",
+ "tpt-nosuchpage": "A página $1 não existe",
+ "tpt-oldrevision": "$2 não é a versão atual da página [[:$1]].\nApenas as versões atuais pode ser marcadas para tradução.",
+ "tpt-notsuitable": "A página $1 não está adequada para tradução.\nTenha certeza que ela tenha marcas <nowiki><translate></nowiki> e sintaxe válida.",
+ "tpt-saveok": "A página [[:$1]] foi marcada para tradução com $2 {{PLURAL:$2|unidade|unidades}} de tradução.\nA página já pode ser <span class=\"plainlinks\">[$3 traduzida]</span>.",
+ "tpt-badsect": "\"$1\" não é um nome válido para a unidade de tradução $2.",
+ "tpt-showpage-intro": "A seguir estão listadas as unidades de tradução novas, existentes e removidas.\nAntes de marcar esta versão para tradução, verifique se as mudanças nas unidades de tradução foram minimizadas, para que seja evitado trabalho desnecessário aos tradutores.",
+ "tpt-mark-summary": "Marcou esta versão para tradução",
+ "tpt-edit-failed": "Não foi possível atualizar a página: $1",
+ "tpt-duplicate": "$1 é usado como nome de unidade de tradução mais de uma vez.",
+ "tpt-already-marked": "A versão atual desta página já foi marcada para tradução.",
+ "tpt-unmarked": "A página $1 deixou de estar marcada para tradução.",
+ "tpt-list-nopages": "Não há páginas nem marcadas para tradução, nem prontas para serem marcadas para tradução.",
+ "tpt-new-pages-title": "Páginas propostas para tradução",
+ "tpt-old-pages-title": "Páginas em tradução",
+ "tpt-other-pages-title": "Páginas com problemas",
+ "tpt-discouraged-pages-title": "Páginas de tradução desnecessária",
+ "tpt-new-pages": "{{PLURAL:$1|Esta página contém|Estas páginas contêm}} texto com marcas de tradução,\nmas nenhuma versão {{PLURAL:$1|desta página|destas páginas}} está marcada para tradução neste momento.",
+ "tpt-old-pages": "Alguma versão {{PLURAL:$1|desta página foi marcada|destas páginas foram marcadas}} para tradução.",
+ "tpt-other-pages": "{{PLURAL:$1|Uma versão anterior desta página está marcada|Versões anteriores desta página estão marcadas}} para tradução,\nmas {{PLURAL:$1|a última versão não pode ser marcada|as últimas versões não podem ser marcadas}} para tradução.",
+ "tpt-discouraged-pages": "{{PLURAL:$1|Esta página deixou|Estas páginas deixaram}} de ser relevantes para novas traduções.",
+ "tpt-select-prioritylangs": "Códigos de idiomas prioritários, separados por vírgulas:",
+ "tpt-select-prioritylangs-force": "Impedir traduções para idiomas que não sejam os prioritários",
+ "tpt-select-prioritylangs-reason": "Motivo:",
+ "tpt-sections-prioritylangs": "Idiomas prioritários",
+ "tpt-rev-mark": "marcar para traduzir",
+ "tpt-rev-unmark": "remover das traduções",
+ "tpt-rev-discourage": "desmarcar de traduzir",
+ "tpt-rev-encourage": "retomar traduções",
+ "tpt-rev-mark-tooltip": "Sinaliza para tradução a edição mais recente desta página.",
+ "tpt-rev-unmark-tooltip": "Retira a página da listagem das que podem ser traduzidas.",
+ "tpt-rev-discourage-tooltip": "Faz com que a página não receba novas traduções.",
+ "tpt-rev-encourage-tooltip": "Faz com que a página possa voltar a ser traduzida.",
+ "translate-tag-translate-link-desc": "Traduzir esta página",
+ "translate-tag-markthis": "Marcar esta página para tradução",
+ "translate-tag-markthisagain": "Esta página tem <span class=\"plainlinks\">[$1 alterações]</span> desde a última vez em que ela foi <span class=\"plainlinks\">[$2 marcada para tradução]</span>.",
+ "translate-tag-hasnew": "Esta página contém <span class=\"plainlinks\">[$1 alterações]</span> que não estão marcadas para tradução.",
+ "tpt-translation-intro": "Esta página é uma <span class=\"plainlinks\">[$1 versão traduzida]</span> da página [[$2]]. Sua tradução está $3% completa.",
+ "tpt-languages-legend": "Outros idiomas:",
+ "tpt-languages-zero": "Iniciar a tradução para este idioma",
+ "tpt-tab-translate": "Traduzir",
+ "tpt-target-page": "Esta página não pode ser atualizada manualmente.\nEsta página é uma tradução da página [[$1]]. Sua tradução pode ser atualizada usando [$2 a ferramenta de tradução].",
+ "tpt-unknown-page": "Este espaço nominal é reservado para traduções de páginas de conteúdo.\nA página que você está tentando editar não aparenta corresponder a nenhuma página marcada para tradução.",
+ "tpt-translation-restricted": "Um coordenador de traduções desautorizou que esta página seja traduzida para este idioma.\n\nMotivo: $1",
+ "tpt-discouraged-language-force-header": "Est página não pode ser traduzida para $1.",
+ "tpt-discouraged-language-force-content": "Um administrador de tradução decidiu que esta página só pode ser traduzida para $1.",
+ "tpt-discouraged-language-force": "<strong>Esta página não pode ser traduzida para $2.</strong>\n\nUm administrador de traduções decidiu que a página só pode ser traduzida para $3.",
+ "tpt-discouraged-language": "<strong>A tradução para $2 não é prioritária para esta página.</strong>\n\nUm administrador de traduções decidiu focar o esforço de tradução em $3.",
+ "tpt-discouraged-language-reason": "Motivo: $1",
+ "tpt-priority-languages": "Um coordenador de traduções definiu como idiomas prioritários para este grupo $1.",
+ "tpt-render-summary": "Atualizando para corresponder à nova versão da página de origem",
+ "tpt-download-page": "Exportar página e suas traduções",
+ "aggregategroups": "Grupos agregadores",
+ "tpt-aggregategroup-add": "Adicionar",
+ "tpt-aggregategroup-save": "Salvar",
+ "tpt-aggregategroup-add-new": "Adiciona um novo grupo agregador",
+ "tpt-aggregategroup-new-name": "Nome:",
+ "tpt-aggregategroup-new-description": "Descrição (opcional):",
+ "tpt-aggregategroup-remove-confirm": "Tem certeza que deseja remover este grupo agregador?",
+ "tpt-aggregategroup-invalid-group": "Grupo inexistente",
+ "pt-parse-open": "O elemento &lt;translate> está desequilibrado.\nModelo de tradução: <pre>$1</pre>",
+ "pt-parse-close": "O elemento &lt;/translate> está desequilibrado.\nModelo de tradução: <pre>$1</pre>",
+ "pt-parse-nested": "Não são permitidas unidades de tradução &lt;translate> cruzadas.\nTexto do elemento: <pre>$1</pre>",
+ "pt-shake-multiple": "Vários marcadores para uma mesma unidade de tradução.\nTexto da unidade de tradução: <pre>$1</pre>",
+ "pt-shake-position": "Marcadores de unidades de tradução em posição inesperada.\nTexto da unidade de tradução: <pre>$1</pre>",
+ "pt-shake-empty": "Unidade de tradução vazia para o marcador \"$1\".",
+ "log-description-pagetranslation": "Registro para operações relacionadas com o sistema de tradução de páginas",
+ "log-name-pagetranslation": "Registro de tradução de páginas",
+ "logentry-pagetranslation-mark": "$1 {{GENDER:$2|marcou}} $3 para tradução",
+ "logentry-pagetranslation-unmark": "$1 {{GENDER:$2|removeu}} $3 das páginas para tradução",
+ "pt-movepage-title": "Mover a página traduzível $1",
+ "pt-movepage-blockers": "A página traduzível não pode ser movida para outro nome devido {{PLURAL:$1|ao seguinte erro|aos seguintes erros}}:",
+ "pt-movepage-block-base-exists": "Existe a página traduzível de destino \"[[:$1]]\".",
+ "pt-movepage-block-base-invalid": "O nome da página traduzível de destino não é um título válido.",
+ "pt-movepage-block-tp-exists": "A página de tradução de destino [[:$2]] já existe.",
+ "pt-movepage-block-tp-invalid": "O título da página de tradução de destino para [[:$1]] seria inválido (talvez muito longo).",
+ "pt-movepage-block-section-exists": "A página de destino \"[[:$2]]\" para a unidade de tradução existe.",
+ "pt-movepage-block-section-invalid": "O título da página de destino para \"[[:$1]]\" para a unidade de tradução seria inválido (talvez muito longo).",
+ "pt-movepage-block-subpage-exists": "A subpágina de destino [[:$2]] já existe.",
+ "pt-movepage-block-subpage-invalid": "O título da subpágina de destino para [[:$1]] seria inválido (talvez muito longo).",
+ "pt-movepage-list-pages": "Lista de páginas para serem movidas",
+ "pt-movepage-list-translation": "{{PLURAL:$1|Página|Páginas}} de tradução",
+ "pt-movepage-list-section": "{{PLURAL:$1|Página de unidade|Páginas de unidades}} de tradução",
+ "pt-movepage-list-other": "{{PLURAL:$1|Outra subpágina|Outras subpáginas}}",
+ "pt-movepage-list-count": "Há, no total, $1 {{PLURAL:$1|página para ser movida|páginas para serem movidas}}.",
+ "pt-movepage-legend": "Mover página traduzível",
+ "pt-movepage-current": "Nome atual:",
+ "pt-movepage-new": "Novo nome:",
+ "pt-movepage-reason": "Motivo:",
+ "pt-movepage-subpages": "Mover todas as subpáginas",
+ "pt-movepage-action-check": "Verificar se a movimentação é possível",
+ "pt-movepage-action-perform": "Realizar a movimentação",
+ "pt-movepage-action-other": "Alterar o destino",
+ "pt-movepage-intro": "Esta página especial permite mover páginas que estão marcadas para tradução.\nA operação de movimentação não é instantânea, porque será necessário mover muitas páginas.\nEnquanto estiverem sendo movidas, não será possível interagir com as páginas em questão.\nAs falhas serão registradas no [[Special:Log/pagetranslation|registro de tradução de páginas]] e precisarão ser reparadas manualmente.",
+ "pt-movepage-logreason": "Parte da página traduzível $1.",
+ "pt-movepage-started": "A página base foi movida.\nVerifique no [[Special:Log/pagetranslation|registro de tradução de páginas]] eventuais mensagens de erro e/ou de atividade concluída.",
+ "pt-locked-page": "Está página está bloqueada porque a página traduzível está sendo movida.",
+ "pt-deletepage-lang-title": "Eliminar a página traduzível $1.",
+ "pt-deletepage-full-title": "Eliminando a página traduzível $1.",
+ "pt-deletepage-invalid-title": "A página especificada é inválida.",
+ "pt-deletepage-invalid-text": "A página especificada não é uma página traduzível nem uma página traduzida.",
+ "pt-deletepage-action-check": "Listar páginas para eliminar",
+ "pt-deletepage-action-perform": "Eliminar",
+ "pt-deletepage-action-other": "Alterar o destino",
+ "pt-deletepage-lang-legend": "Elimina a página traduzida",
+ "pt-deletepage-full-legend": "Elimina a página traduzível",
+ "pt-deletepage-any-legend": "Eliminar a página traduzível ou a página de tradução",
+ "pt-deletepage-current": "Nome da página:",
+ "pt-deletepage-reason": "Motivo:",
+ "pt-deletepage-subpages": "Eliminar todas as subpáginas",
+ "pt-deletepage-list-pages": "Lista de páginas para eliminar",
+ "pt-deletepage-list-translation": "Páginas de tradução",
+ "pt-deletepage-list-section": "Páginas de unidades de tradução",
+ "pt-deletepage-list-other": "Outras subpáginas",
+ "pt-deletepage-list-count": "No total, $1 {{PLURAL:$1|página|páginas}} para serem eliminadas.",
+ "pt-deletepage-full-logreason": "Parte da página traduzível $1.",
+ "pt-deletepage-lang-logreason": "Parte da página traduzida $1.",
+ "pt-deletepage-started": "Verifique no [[Special:Log/pagetranslation|registro de tradução de páginas]] eventuais mensagens de erro e/ou de atividade concluída.",
+ "pt-deletepage-intro": "Esta página especial permite eliminar todas as páginas de uma página traduzível ou apenas as traduções de um idioma.\nA eliminação não será instantânea por serem muitas as páginas integrantes de cada conjunto.\nOs erros serão reportados no [[Special:Log/pagetranslation|registro de tradução de páginas]] e precisarão ser corrigidos manualmente.",
+ "pagemigration": "Migração de página de tradução",
+ "pm-savepages-button-label": "Salvar",
+ "pm-cancel-button-label": "Cancelar",
+ "pm-pagename-placeholder": "Digite o nome da página",
+ "pm-langcode-placeholder": "Código do idioma",
+ "pm-page-does-not-exist": "$1 não existe",
+ "pm-old-translations-missing": "$1 não contém traduções antigas",
+ "pm-pagename-missing": "Por favor, insira o nome da página",
+ "pm-langcode-missing": "Por favor, insira o código de idioma",
+ "pm-add-icon-hover-text": "Adicione uma unidade abaixo",
+ "pm-delete-icon-hover-text": "Excluir unidade",
+ "pm-pagetitle-invalid": "Por favor, forneça um título válido para á página."
+}
diff --git a/MLEB/Translate/i18n/pagetranslation/pt.json b/MLEB/Translate/i18n/pagetranslation/pt.json
new file mode 100644
index 00000000..d2a67671
--- /dev/null
+++ b/MLEB/Translate/i18n/pagetranslation/pt.json
@@ -0,0 +1,202 @@
+{
+ "@metadata": {
+ "authors": [
+ "Giro720",
+ "Hamilton Abreu",
+ "Luckas",
+ "Malafaya",
+ "SandroHc",
+ "Vivaelcelta",
+ "Waldir",
+ "Fúlvio",
+ "Imperadeiro98",
+ "Vitorvicentevalente"
+ ]
+ },
+ "pagetranslation": "Tradução de páginas",
+ "right-pagetranslation": "Marcar versões de páginas para tradução",
+ "action-pagetranslation": "administrar as páginas traduzíveis",
+ "tpt-desc": "Extensão para traduzir páginas de conteúdo",
+ "tpt-section": "Unidade de tradução $1",
+ "tpt-section-new": "Nova unidade de tradução. Nome: $1",
+ "tpt-section-deleted": "Unidade de tradução $1",
+ "tpt-template": "Modelo de página",
+ "tpt-templatediff": "O modelo de página foi modificado.",
+ "tpt-diff-old": "Texto anterior",
+ "tpt-diff-new": "Texto novo",
+ "tpt-submit": "Marcar esta versão para tradução",
+ "tpt-sections-oldnew": "Unidades de tradução novas e existentes",
+ "tpt-sections-deleted": "Unidades de tradução eliminadas",
+ "tpt-sections-template": "Modelo de página de tradução",
+ "tpt-action-nofuzzy": "Não invalidar traduções",
+ "tpt-badtitle": "O nome de página fornecido ($1) não é um título válido",
+ "tpt-nosuchpage": "A página $1 não existe",
+ "tpt-oldrevision": "$2 não é a versão mais recente da página [[:$1]].\nApenas as últimas versões podem ser marcadas para tradução.",
+ "tpt-notsuitable": "A página $1 não é adequada para tradução.\nCertifique-se de que a mesma contém os elementos <nowiki><translate></nowiki> e tem uma sintaxe válida.",
+ "tpt-saveok": "A página [[:$1]] foi marcada para tradução com $2 {{PLURAL:$2|unidade|unidades}} de tradução.\nA página pode agora ser <span class=\"plainlinks\">[$3 traduzida]</span>.",
+ "tpt-offer-notify": "Pode enviar uma <span class=\"plainlinks\">[$1 notificação aos tradutores]</span> sobre esta página.",
+ "tpt-badsect": "\"$1\" não é um nome válido para a unidade de tradução $2.",
+ "tpt-showpage-intro": "Estão listadas abaixo as unidades de tradução novas, existentes e apagadas.\nAntes de marcar esta versão para tradução, verifique que as alterações às unidades de tradução são minimizadas para evitar trabalho desnecessário para os tradutores.",
+ "tpt-mark-summary": "Marcou esta versão para tradução",
+ "tpt-edit-failed": "Não foi possível atualizar a página: $1",
+ "tpt-duplicate": "O nome $1 é usado mais do que uma vez nas unidades de tradução.",
+ "tpt-already-marked": "A versão mais recente desta página já foi marcada para tradução.",
+ "tpt-unmarked": "A página $1 já não está marcada para tradução.",
+ "tpt-list-nopages": "Não existem páginas marcadas para tradução, nem prontas a ser marcadas para tradução.",
+ "tpt-new-pages-title": "Páginas propostas para tradução",
+ "tpt-old-pages-title": "Páginas em tradução",
+ "tpt-other-pages-title": "Páginas com problemas",
+ "tpt-discouraged-pages-title": "Páginas cuja tradução é desencorajada",
+ "tpt-new-pages": "{{PLURAL:$1|Esta página contém|Estas páginas contêm}} texto com ''tags'' de tradução, mas nenhuma versão {{PLURAL:$1|da página|das páginas}} está presentemente marcada para tradução.",
+ "tpt-old-pages": "Uma versão {{PLURAL:$1|desta página|destas páginas}} foi marcada para tradução.",
+ "tpt-other-pages": "{{PLURAL:$1|A versão anterior desta página está marcada|Versões anteriores destas páginas estão marcadas}} para tradução, mas a última versão não pode ser marcada para tradução.",
+ "tpt-discouraged-pages": "A tradução {{PLURAL:$1|da seguinte página|das seguintes páginas}} é desencorajada.",
+ "tpt-select-prioritylangs": "Lista dos códigos de língua prioritários, separados por vírgulas:",
+ "tpt-select-prioritylangs-force": "Impedir as traduções para línguas que não sejam as prioritárias",
+ "tpt-select-prioritylangs-reason": "Motivo:",
+ "tpt-sections-prioritylangs": "Línguas prioritárias",
+ "tpt-rev-mark": "marcar para tradução",
+ "tpt-rev-unmark": "remover das páginas para tradução",
+ "tpt-rev-discourage": "desencorajar",
+ "tpt-rev-encourage": "restaurar",
+ "tpt-rev-mark-tooltip": "Marcar a última versão desta página para tradução.",
+ "tpt-rev-unmark-tooltip": "Retira esta página da lista de páginas para tradução.",
+ "tpt-rev-discourage-tooltip": "Desencorajar traduções futuras nesta página.",
+ "tpt-rev-encourage-tooltip": "Restaurar a normal tradução desta página.",
+ "translate-tag-translate-link-desc": "Traduzir esta página",
+ "translate-tag-markthis": "Marcar esta página para tradução",
+ "translate-tag-markthisagain": "Esta página tem <span class=\"plainlinks\">[$1 alterações]</span> desde a última vez que foi <span class=\"plainlinks\">[$2 marcada para tradução]</span>.",
+ "translate-tag-hasnew": "Esta página contém <span class=\"plainlinks\">[$1 alterações]</span> que não estão marcadas para tradução.",
+ "tpt-translation-intro": "Esta página é uma <span class=\"plainlinks\">[$1 versão traduzida]</span> da página [[$2]] e a tradução está $3% completa.",
+ "tpt-languages-legend": "Outras línguas:",
+ "tpt-languages-zero": "Iniciar a tradução para esta língua",
+ "tpt-languages-nonzero": "$1 ($2% traduzida)",
+ "tpt-tab-translate": "Traduzir",
+ "tpt-target-page": "Esta página não pode ser atualizada manualmente.\nEla é uma tradução da página [[$1]] e a tradução pode ser atualizada usando [$2 a ferramenta de tradução].",
+ "tpt-unknown-page": "Este espaço nominal está reservado para traduções de páginas de conteúdo.\nA página que está a tentar editar não parece corresponder a nenhuma página marcada para tradução.",
+ "tpt-translation-restricted": "A tradução desta página para esta língua foi impedida por um administrador de traduções.\n\nMotivo: $1",
+ "tpt-discouraged-language-force-header": "Esta página não pode ser traduzida para $1.",
+ "tpt-discouraged-language-force-content": "Um administrador de traduções decidiu que esta página pode ser traduzida para $1.",
+ "tpt-discouraged-language-header": "A tradução para $1 não é uma prioridade desta página.",
+ "tpt-discouraged-language-content": "Um administrador de traduções decidiu concentrar os esforços de tradução em $1.",
+ "tpt-discouraged-language-force": "<strong>Esta página não pode ser traduzida para $2.</strong>\n\nUm administrador de traduções decidiu que a página só pode ser traduzida para $3.",
+ "tpt-discouraged-language": "<strong>A tradução para $2 não é prioritária para esta página.</strong>\n\nUm administrador de traduções decidiu focar o esforço de tradução em $3.",
+ "tpt-discouraged-language-reason": "Motivo: $1",
+ "tpt-priority-languages": "Um administrador de traduções definiu que as línguas prioritárias para este grupo são $1.",
+ "tpt-render-summary": "A atualizar para corresponder à nova versão da página fonte",
+ "tpt-download-page": "Exportar a página com traduções",
+ "aggregategroups": "Grupos agregadores",
+ "tpt-aggregategroup-add": "Adicionar",
+ "tpt-aggregategroup-save": "Gravar",
+ "tpt-aggregategroup-add-new": "Adiciona um novo grupo agregador",
+ "tpt-aggregategroup-new-name": "Nome:",
+ "tpt-aggregategroup-new-description": "Descrição (opcional):",
+ "tpt-aggregategroup-remove-confirm": "Tem a certeza de querer eliminar este grupo agregador?",
+ "tpt-aggregategroup-invalid-group": "Grupo inexistente",
+ "tpt-aggregategroup-edit-name": "Nome:",
+ "tpt-aggregategroup-edit-description": "Descrição:",
+ "tpt-aggregategroup-update": "Gravar",
+ "tpt-aggregategroup-update-cancel": "Cancelar",
+ "tpt-invalid-group": "Grupo inválido",
+ "pt-parse-open": "O elemento &lt;translate> está desequilibrado.\nModelo de tradução: <pre>$1</pre>",
+ "pt-parse-close": "O elemento &lt;/translate> está desequilibrado.\nModelo de tradução: <pre>$1</pre>",
+ "pt-parse-nested": "Não são permitidas unidades de tradução &lt;translate> intercaladas.\nTexto do elemento: <pre>$1</pre>",
+ "pt-shake-multiple": "Existem vários marcadores para uma mesma unidade de tradução.\nTexto da unidade de tradução: <pre>$1</pre>",
+ "pt-shake-position": "Existem marcadores de unidades de tradução numa posição inesperada.\nTexto da unidade de tradução: <pre>$1</pre>",
+ "pt-shake-empty": "Unidade de tradução vazia para o marcador \"$1\".",
+ "log-description-pagetranslation": "Registo para operações relacionadas com o sistema de tradução de páginas",
+ "log-name-pagetranslation": "Registo de tradução de páginas",
+ "logentry-pagetranslation-mark": "$1 {{GENDER:$2|marcou}} a página $3 para tradução",
+ "logentry-pagetranslation-unmark": "$1 {{GENDER:$2|retirou}} $3 das páginas para tradução",
+ "logentry-pagetranslation-moveok": "$1 {{GENDER:$2|terminou}} a alteração do nome da página traduzível $3 para $4",
+ "logentry-pagetranslation-movenok": "$1 {{GENDER:$2|encontrou}} um problema ao mover a página $3 para $4",
+ "logentry-pagetranslation-deletefok": "$1 {{GENDER:$2|concluiu}} a eliminação da página traduzível $3",
+ "logentry-pagetranslation-deletefnok": "$1 {{GENDER:$2|não conseguiu}} eliminar $3, que pertence à página traduzível $4",
+ "logentry-pagetranslation-deletelok": "$1 {{GENDER:$2|concluiu}} a eliminação da página traduzível $3",
+ "logentry-pagetranslation-deletelnok": "$1 {{GENDER:$2|não conseguiu}} eliminar $3, que pertence à página de tradução $4",
+ "logentry-pagetranslation-encourage": "$1 {{GENDER:$2|restaurou}} a tradução de $3",
+ "logentry-pagetranslation-discourage": "$1 {{GENDER:$2|desencorajou}} a tradução de $3",
+ "logentry-pagetranslation-prioritylanguages-unset": "$1 {{GENDER:$2|removeu}} as línguas prioritárias da página traduzível $3",
+ "logentry-pagetranslation-prioritylanguages": "$1 {{GENDER:$2|definiu}} como línguas prioritárias da página traduzível $3 as línguas $5",
+ "logentry-pagetranslation-prioritylanguages-force": "$1 {{GENDER:$2|restringiu}} as línguas para a página traduzível $3 a $5",
+ "logentry-pagetranslation-associate": "$1 {{GENDER:$2|adicionou}} a página traduzível $3 ao grupo agregador $4",
+ "logentry-pagetranslation-dissociate": "$1 {{GENDER:$2|removeu}} a página traduzível $3 do grupo agregador $4",
+ "pt-movepage-title": "Mover a página traduzível $1",
+ "pt-movepage-blockers": "A página traduzível não pode ser movida para outro nome devido {{PLURAL:$1|ao seguinte erro|aos seguintes erros}}:",
+ "pt-movepage-block-base-exists": "A página traduzível de destino \"[[:$1]]\" já existe.",
+ "pt-movepage-block-base-invalid": "A página traduzível de destino não tem um título válido.",
+ "pt-movepage-block-tp-exists": "A página de tradução de destino [[:$2]] existe.",
+ "pt-movepage-block-tp-invalid": "O título da página de tradução de destino para [[:$1]] seria inválido (talvez demasiado longo).",
+ "pt-movepage-block-section-exists": "A página de destino [[:$2]] para a unidade de tradução já existe.",
+ "pt-movepage-block-section-invalid": "O título da página de destino [[:$1]] para a unidade de tradução seria inválido (talvez demasiado longo).",
+ "pt-movepage-block-subpage-exists": "A subpágina de destino [[:$2]] existe.",
+ "pt-movepage-block-subpage-invalid": "O título da subpágina de destino para [[:$1]] seria inválido (talvez demasiado longo).",
+ "pt-movepage-list-pages": "Lista de páginas para serem movidas",
+ "pt-movepage-list-translation": "{{PLURAL:$1|Página|Páginas}} de tradução",
+ "pt-movepage-list-section": "{{PLURAL:$1|Página|Páginas}} de seção",
+ "pt-movepage-list-other": "{{PLURAL:$1|Outra subpágina|Outras subpáginas}}",
+ "pt-movepage-list-count": "No total, $1 {{PLURAL:$1|página para ser movida|páginas para serem movidas}}.",
+ "pt-movepage-legend": "Mover página traduzível",
+ "pt-movepage-current": "Nome atual:",
+ "pt-movepage-new": "Nome novo:",
+ "pt-movepage-reason": "Motivo:",
+ "pt-movepage-subpages": "Mover todas as subpáginas",
+ "pt-movepage-action-check": "Verificar se a movimentação é possível",
+ "pt-movepage-action-perform": "Realizar a movimentação",
+ "pt-movepage-action-other": "Alterar o destino",
+ "pt-movepage-intro": "Esta página especial permite-lhe mover páginas que estão marcadas para tradução.\nA operação de movimentação não é instantânea, porque será necessário mover muitas páginas.\nEnquanto estas estão a ser movidas, não é possível interagir com as páginas em questão.\nAs falhas serão registadas no [[Special:Log/pagetranslation|registo de tradução de páginas]] e necessitam de ser reparadas manualmente.",
+ "pt-movepage-logreason": "Parte da página traduzível $1.",
+ "pt-movepage-started": "A página base foi movida.\nVerifique no [[Special:Log/pagetranslation|registo de tradução de páginas]] se ocorreram erros e se existe a mensagem de conclusão, por favor.",
+ "pt-locked-page": "Esta página está bloqueada porque a página traduzível está a ser movida.",
+ "pt-deletepage-lang-title": "A eliminar a página traduzida $1.",
+ "pt-deletepage-full-title": "A eliminar a página traduzível $1.",
+ "pt-deletepage-invalid-title": "A página especificada é inválida.",
+ "pt-deletepage-invalid-text": "A página especificada não é uma página traduzível nem uma página traduzida.",
+ "pt-deletepage-action-check": "Listar as páginas para eliminar",
+ "pt-deletepage-action-perform": "Eliminar",
+ "pt-deletepage-action-other": "Alterar o destino",
+ "pt-deletepage-lang-legend": "Eliminar a página traduzida",
+ "pt-deletepage-full-legend": "Eliminar a página traduzível",
+ "pt-deletepage-any-legend": "Eliminar a página traduzível ou página de tradução",
+ "pt-deletepage-current": "Nome da página:",
+ "pt-deletepage-reason": "Motivo:",
+ "pt-deletepage-subpages": "Eliminar todas as subpáginas",
+ "pt-deletepage-list-pages": "Lista das páginas para eliminar",
+ "pt-deletepage-list-translation": "Páginas traduzidas",
+ "pt-deletepage-list-section": "Páginas de unidades de tradução",
+ "pt-deletepage-list-other": "Outras subpáginas",
+ "pt-deletepage-list-count": "$1 {{PLURAL:$1|página|páginas}} para eliminar, no total.",
+ "pt-deletepage-full-logreason": "Parte da página traduzível $1.",
+ "pt-deletepage-lang-logreason": "Parte da página traduzida $1.",
+ "pt-deletepage-started": "Verifique a existência de erros ou de uma mensagem de sucesso no [[Special:Log/pagetranslation|registo de traduções]].",
+ "pt-deletepage-intro": "Esta página especial permite eliminar toda uma página traduzível ou uma das suas traduções para uma língua.\nA eliminação não é instantânea, porque também serão eliminadas as páginas dependentes delas.\nOs problemas que ocorrerem serão registados no [[Special:Log/pagetranslation|registo de traduções]] e podem exigir reparação manual.",
+ "pagemigration": "Migração de página de tradução",
+ "pagemigration-summary": "Especifica uma página de tradução e restaura qualquer tradução feita antes de o sistema Tradução ter sido ativado na página.",
+ "pm-import-button-label": "Importar",
+ "pm-savepages-button-label": "Gravar",
+ "pm-cancel-button-label": "Cancelar",
+ "pm-pagename-placeholder": "Introduza o nome da página",
+ "pm-langcode-placeholder": "Código do idioma",
+ "pm-page-does-not-exist": "$1 não existe",
+ "pm-old-translations-missing": "$1 não contém tradução antigas",
+ "pm-extra-units-warning": "Unidades extras podem estar presentes. Por favor, faça corresponder corretamente o código e a tradução",
+ "pm-pagename-missing": "Por favor, introduza o nome da página",
+ "pm-langcode-missing": "Digite o código de idioma",
+ "pm-add-icon-hover-text": "Adicionar uma unidade abaixo",
+ "pm-swap-icon-hover-text": "Trocar com a unidade abaixo",
+ "pm-delete-icon-hover-text": "Eliminar unidade",
+ "pm-pagetitle-invalid": "Por favor, forneça um título válido de página.",
+ "pm-summary-import": "Tradução importa utilizando a [[Special:PageMigration|migração de página]]",
+ "tpt-translate-title": "Permitir tradução do título da página",
+ "pp-save-summary": "Preparação de página para tradução",
+ "pagepreparation": "Preparar página para tradução",
+ "pp-pagename-placeholder": "Introduza o nome da página",
+ "pp-prepare-button-label": "Preparar",
+ "pp-save-button-label": "Gravar",
+ "pp-save-message": "A página foi gravada. Pode [$1 editá-la] agora.",
+ "pp-prepare-message": "A página foi preparada para tradução. Veja a comparação abaixo. Clique no botão \"{{int:pp-save-button-label}}\" se estiver tudo correto!",
+ "pp-already-prepared-message": "Parece que a página já foi preparada para tradução. Não há alterações em relação à versão anterior.",
+ "pp-pagename-missing": "Por favor, introduza o nome da página.",
+ "pp-diff-old-header": "Texto-fonte",
+ "pp-diff-new-header": "Texto preparado"
+}
diff --git a/MLEB/Translate/i18n/pagetranslation/qqq.json b/MLEB/Translate/i18n/pagetranslation/qqq.json
new file mode 100644
index 00000000..d9a8bac8
--- /dev/null
+++ b/MLEB/Translate/i18n/pagetranslation/qqq.json
@@ -0,0 +1,199 @@
+{
+ "@metadata": {
+ "authors": [
+ "Amire80",
+ "BPositive",
+ "Darth Kule",
+ "EugeneZelenko",
+ "Fryed-peach",
+ "Liangent",
+ "Lloffiwr",
+ "Mormegil",
+ "Nemo bis",
+ "Nike",
+ "Purodha",
+ "Raymond",
+ "Shirayuki",
+ "Siebrand",
+ "Slboat",
+ "Umherirrender",
+ "Robby"
+ ]
+ },
+ "pagetranslation": "{{doc-special|PageTranslation}}\n[[Image:Page translation admin view.png|thumb|Admin view]]",
+ "right-pagetranslation": "{{doc-right|pagetranslation}}",
+ "action-pagetranslation": "{{doc-action|pagetranslation}})",
+ "tpt-desc": "{{desc|name=Translate - Page Translation|url=http://www.mediawiki.org/wiki/Extension:Translate/PageTranslation}}",
+ "tpt-section": "[[File:Page_translation_mark_view.png|thumb|Page translation]]\nA screenshot of the translation administration page is available.\n\nParameters:\n* $1 - the identifier of the unit, or the string \"Page display title\" (special unit identifier for page title; hard-coded)",
+ "tpt-section-new": "[[File:Page_translation_mark_view.png|thumb|Page translation]]\nA screenshot of the translation administration page is available.\n\nParameters:\n* $1 - the identifier of the unit, or the string \"Page display title\" (special unit identifier for page title; hard-coded)",
+ "tpt-section-deleted": "See definition on [[mw:Help:Extension:Translate/Glossary]].\n\nParameters:\n* $1 - the identifier of the unit, or the string \"Page display title\" (special unit identifier for page title; hard-coded)",
+ "tpt-template": "See definition on [[mw:Help:Extension:Translate/Glossary]].\n{{Identical|Page template}}",
+ "tpt-templatediff": "See definition on [[mw:Help:Extension:Translate/Glossary]].",
+ "tpt-sections-oldnew": "\"New and existing\" refers to the sum of: (a) new translation units in a translatable page, plus (b) the already existing ones from previous version of a translatable page.",
+ "tpt-sections-deleted": "See definition on [[mw:Help:Extension:Translate/Glossary]].",
+ "tpt-sections-template": "[[File:Page_translation_mark_view.png|thumb|Page translation]]\nThe template used by translations of the translatable page, extracted from the source text. Shown on the translation administration page; a screenshot is available.",
+ "tpt-action-nofuzzy": "See [[mw:Help:Extension:Translate/Page translation administration#Changing the source text]] for context.",
+ "tpt-badtitle": "Parameters:\n* $1 - page title",
+ "tpt-nosuchpage": "Parameters:\n* $1 - page title",
+ "tpt-oldrevision": "Error message displayed when trying to mark an older page revision for translation. Parameters:\n* $1 is a page title.\n* $2 is a page link.",
+ "tpt-notsuitable": "{{doc-important|Do not translate <code><nowiki><nowiki><translate></nowiki>&lt;/nowiki></code>.}}\nParameters:\n* $1 - page title\n* $2 - (Unused) revision ID",
+ "tpt-saveok": "Followed by {{msg-mw|Tpt-offer-notify}}, if the user is allowed to notify translators.\n\nParameters:\n* $1 - page title\n* $2 - number of sections, can be used with PLURAL\n* $3 - URL which points to [[Special:Translate]]",
+ "tpt-offer-notify": "Message displayed on [[Special:PageTranslation]] after marking a page for translation when the marking user also has right to notify translators.\n\nParameters:\n* $1 - a URL to [[Special:NotifyTranslators]] with the marked page preselected",
+ "tpt-badsect": "See definition on [[mw:Help:Extension:Translate/Glossary]].\nParameters:\n* $1 - the identifier of the unit\n* $2 - the number of the unit",
+ "tpt-showpage-intro": "See definition on [[mw:Help:Extension:Translate/Glossary]].",
+ "tpt-mark-summary": "This message is used as an edit summary.",
+ "tpt-mark-nochanges": "A note in Special:PageTranslation when marking a revision of a page for translation.",
+ "tpt-edit-failed": "Used as error message. Parameters:\n* $1 - page title",
+ "tpt-duplicate": "Used as error message.\n\nSee definition on [[mw:Help:Extension:Translate/Glossary]].\n\nParameters:\n* $1 - translation unit ID (name)",
+ "tpt-already-marked": "See definition on [[mw:Help:Extension:Translate/Glossary]].",
+ "tpt-unmarked": "Used as success message.\n\nTranslate this as \"Page $1 has been unmarked for translation\".\n\nSee definition on [[mw:Help:Extension:Translate/Glossary]].\n\nParameters:\n* $1 - page title",
+ "tpt-list-nopages": "See definition on [[mw:Help:Extension:Translate/Glossary]].",
+ "tpt-new-pages-title": "Header in [[Special:PageTranslation]] [[Image:Page translation admin view.png|thumb|Admin view]]",
+ "tpt-old-pages-title": "Header in [[Special:PageTranslation]] [[Image:Page translation admin view.png|thumb|Admin view]]",
+ "tpt-other-pages-title": "Header in [[Special:PageTranslation]] [[Image:Page translation admin view.png|thumb|Admin view]]",
+ "tpt-discouraged-pages-title": "Header in [[Special:PageTranslation]] [[Image:Page translation admin view.png|thumb|Admin view]]",
+ "tpt-new-pages": "[[Image:Page translation admin view.png|thumb|Admin view]]\nPreceded by the section header {{msg-mw|Tpt-new-pages-title}}.\n\nFollowed by the ordered list of pages.\n\nParameters:\n* $1 - the number of pages in the following list",
+ "tpt-old-pages": "The words \"some version\" refer to \"one version of the page\", or \"a single version of each of the pages\", respectively. Each page can have either one or none of its versions marked for translaton.\n* $1 - the number of pages\n[[Image:Page translation admin view.png|thumb|Admin view]]",
+ "tpt-other-pages": "[[Image:Page translation admin view.png|thumb|Admin view]]\nPreceded by the section header {{msg-mw|Tpt-other-pages-title}}.\n\nFollowed by the ordered list of pages.\n\nParameters:\n* $1 - the number of pages in the following list",
+ "tpt-discouraged-pages": "[[Image:Page translation admin view.png|thumb|Admin view]]\nPreceded by the section header {{msg-mw|Tpt-discouraged-pages-title}}.\n\nFollowed by the ordered list of pages.\n\nParameters:\n* $1 - the number of pages in the following list",
+ "tpt-select-prioritylangs": "Label for the input box to enter preferred languages",
+ "tpt-select-prioritylangs-force": "Label for the checkbox to make the translation restriction",
+ "tpt-select-prioritylangs-reason": "Label for the textbox to enter reason for restriction.\n{{Identical|Reason}}",
+ "tpt-sections-prioritylangs": "Section title in [[Special:PageTranslation]].\n{{Identical|Priority language}}",
+ "tpt-rev-mark": "Possible page action and link text in [[Special:PageTranslation]]. In parenthesis after page name. [[Image:Page translation admin view.png|thumb|Admin view]]",
+ "tpt-rev-unmark": "Possible page action and link text in [[Special:PageTranslation]]. In parenthesis after page name. [[Image:Page translation admin view.png|thumb|Admin view]]",
+ "tpt-rev-discourage": "Possible page action and link text in [[Special:PageTranslation]]. In parenthesis after page name. [[Image:Page translation admin view.png|thumb|Admin view]]",
+ "tpt-rev-encourage": "Possible page action and link text in [[Special:PageTranslation]]. In parenthesis after page name. [[Image:Page translation admin view.png|thumb|Admin view]]\n{{Identical|Restore}}",
+ "tpt-rev-mark-tooltip": "Tooltip for page action link text in [[Special:PageTranslation]] [[Image:Page translation admin view.png|thumb|Admin view]]",
+ "tpt-rev-unmark-tooltip": "Tooltip for page action link text in [[Special:PageTranslation]] [[Image:Page translation admin view.png|thumb|Admin view]]",
+ "tpt-rev-discourage-tooltip": "Tooltip for page action link text in [[Special:PageTranslation]] [[Image:Page translation admin view.png|thumb|Admin view]]",
+ "tpt-rev-encourage-tooltip": "Tooltip for page action link text in [[Special:PageTranslation]] [[Image:Page translation admin view.png|thumb|Admin view]]",
+ "translate-tag-translate-link-desc": "Link at the top of translatable pages, see [[mw:Help:Extension:Translate/Translation example]] for context.",
+ "translate-tag-markthis": "See definition on [[mw:Help:Extension:Translate/Glossary]].",
+ "translate-tag-markthisagain": "\"has changes\" is to be understood as \"has been altered/edited\".\n\nParameters:\n* $1 - a link which points to the diff\n* $2 - a link which points to ...",
+ "translate-tag-hasnew": "\"has changes\" is to be understood as \"has been altered/edited\". $1 is a URL to view changes.",
+ "tpt-translation-intro": "Header of a translation page (see definition on [[mw:Help:Extension:Translate/Glossary]]).\n\nParameters:\n* $1 - URL\n* $2 - page title\n* $3 - translation percentage",
+ "tpt-languages-legend": "The caption of a language selector displayed using <code><nowiki><languages /></nowiki></code>. e.g. on [[Project list]].\n{{Identical|Otherlanguages}}",
+ "tpt-languages-separator": "{{optional}}",
+ "tpt-languages-zero": "Tooltip for a link in <code><nowiki><language /></nowiki></code> when language is included because it is a priority language, but translation does not yet exist.\n\nThe link directly points to the translation view ([[Special:Translate]]).\n\nTranslate this as \"Start translating (the page) into this language\".",
+ "tpt-languages-nonzero": "Tooltip for a link to go to a translated version of a translatable page.\n\nParameters:\n* $1 - page title (translated if present)\n* $2 - translation percentage, without decimals (supports PLURAL)",
+ "tpt-tab-translate": "Used as label for the tab.\n\nReplaces the edit tab with translation tab for translation pages.\n{{Identical|Translate}}",
+ "tpt-target-page": "Message displayed when trying to edit a translatable page directly. Parameters:\n* $1 is the translatable page\n* $2 is a link to the translation tool for the translatable page.",
+ "tpt-unknown-page": "See [[mw:Help:Extension:Translate/Translation example]] for context on page translation feature.",
+ "tpt-translation-restricted": "Error message shown to user when translation to a language which is restricted by translation admin.\n\nParameters:\n* $1 - reason",
+ "tpt-discouraged-language-force-header": "Header for error shown along with group description if the language is prevented from translation for the selected language.\n\nParameter:\n* $1 - the language to which the user asked to translate the page",
+ "tpt-discouraged-language-force-content": "Error shown along with group description if the language is prevented from translation for the selected language.\n\nParameters:\n* $1 - comma-separated names of the languages to which translation is encouraged",
+ "tpt-discouraged-language-header": "Header for warning shown along with group description if the language is discouraged from translation for the selected language.\n\nParameters:\n* $1 the language to which the user asked to translate the page",
+ "tpt-discouraged-language-content": "Warning shown along with group description if the language is discouraged from translation for the selected language.\n\nParameters:\n* $1 - comma-separated names of the languages to which translation is encouraged",
+ "tpt-discouraged-language-force": "Error shown along with group description if the language is prevented from translation for the selected language.\n\nParameters:\n* $1 - (Unused) empty string\n* $2 - the language that to which the user asked to translate the page\n* $3 - the names of the translation languages\nSee also:\n* {{msg-mw|Tpt-discouraged-language}}\n\nThis message is used only in the old interface (non-TUX).",
+ "tpt-discouraged-language": "Warning shown along with group description if the language is discouraged from translation for the selected language.\n\nParameters:\n* $1 - (Unused) empty string\n* $2 - the language that to which the user asked to translate the page\n* $3 - the name list of the translation languages, separated by \",\"\nSee also:\n* {{msg-mw|Tpt-discouraged-language-force}}\n\nThis message is used only in the old interface (non-TUX).",
+ "tpt-discouraged-language-reason": "Parameters:\n* $1 - the reason for the priority language definition. Probably written in the content language.\n\nUsed only if a reason was provided in the following messages:\n* {{msg-mw|Tpt-discouraged-language-force}}\n* {{msg-mw|Tpt-discouraged-language}}\n{{Identical|Reason}}",
+ "tpt-priority-languages": "Message to be shown before the messagestats table. $1 is a comma-separated list of language codes.",
+ "aggregategroups": "{{doc-special|AggregateGroups}}",
+ "tpt-aggregategroup-add": "Label for the button to add a new page to aggregate group in [[Special:AggregateGroups]].\n{{Identical|Add}}",
+ "tpt-aggregategroup-save": "Label for the button to save a new aggregate group in [[Special:AggregateGroups]].\n{{Identical|Save}}",
+ "tpt-aggregategroup-add-new": "Label for the link that gives a form to enter new group details in [[Special:AggregateGroups]]",
+ "tpt-aggregategroup-new-name": "Label for the name field in [[Special:AggregateGroups]].\n{{Identical|Name}}",
+ "tpt-aggregategroup-new-description": "Label for the description field in [[Special:AggregateGroups]].\n{{Identical|Description}}",
+ "tpt-aggregategroup-remove-confirm": "Confirmation message shown while user tried to delete an aggregate group in [[Special:AggregateGroups]]",
+ "tpt-aggregategroup-invalid-group": "Show on [[Special:AggregateGroups]] after remove button of a group, if the stored group id does not match any currently known groups.",
+ "tpt-aggregategroup-edit-name": "Label for the edit name field in [[Special:AggregateGroups]].\n{{Identical|Name}}",
+ "tpt-aggregategroup-edit-description": "Label for the edit description field in [[Special:AggregateGroups]].\n{{Identical|Description}}",
+ "tpt-aggregategroup-update": "Label for button on [[Special:AggregateGroups]] to update.\n{{Identical|Save}}",
+ "tpt-aggregategroup-update-cancel": "Label for button on [[Special:AggregateGroups]] to cancel editing.\n{{Identical|Cancel}}",
+ "tpt-invalid-group": "Message when user tries to add an invalid group.\n\n\"group\" refers to \"aggregate group\".",
+ "pt-parse-open": "Error shown after an attempt to mark a page for translation, see [[mw:Help:Extension:Translate/Page translation administration]] for context.\n\n\"Translation template\" is the structure of a translation page, where the place for the translations of each section is marked with a placeholder.\n\nParameters:\n* $1 - translation template\nSee also:\n* {{msg-mw|Pt-parse-close}}",
+ "pt-parse-close": "Error shown after an attempt to mark a page for translation, see [[mw:Help:Extension:Translate/Page translation administration]] for context.\n\n\"Translation template\" is the structure of a translation page, where the place for the translations of each section is marked with a placeholder.\n\nParameters:\n* $1 - translation template\nSee also:\n* {{msg-mw|Pt-parse-open}}",
+ "pt-parse-nested": "Error shown after an attempt to mark a page for translation, see [[mw:Help:Extension:Translate/Page translation administration]] for context.\n\nSee definitions on [[mw:Help:Extension:Translate/Glossary]].\n\nParameters:\n* $1 - translation unit (=section) text",
+ "pt-shake-multiple": "Each translation unit (=section) can only contain one marker.\n\nParameters:\n* $1 - translation unit (=section) text",
+ "pt-shake-position": "Error shown after an attempt to mark a page for translation, see [[mw:Help:Extension:Translate/Page translation administration]] for context.\n\nSee definitions on [[mw:Help:Extension:Translate/Glossary]].\n\nParameters:\n* $1 - translation unit (=section) text",
+ "pt-shake-empty": "Translation unit (=section) is empty except for the translation marker (=<nowiki><!--T:1--></nowiki>).\n\nParameters:\n* $1 - translation unit ID",
+ "log-description-pagetranslation": "Description of a log type",
+ "log-name-pagetranslation": "{{doc-logpage}}",
+ "logentry-pagetranslation-mark": "{{logentry|[[Special:Log/pagetranslation]]}}",
+ "logentry-pagetranslation-unmark": "{{logentry|[[Special:Log/pagetranslation]]}}",
+ "logentry-pagetranslation-moveok": "{{logentry|[[Special:Log/pagetranslation]]}}",
+ "logentry-pagetranslation-movenok": "{{logentry|[[Special:Log/pagetranslation]]}}",
+ "logentry-pagetranslation-deletefok": "{{logentry|[[Special:Log/pagetranslation]]}}",
+ "logentry-pagetranslation-deletefnok": "{{logentry|[[Special:Log/pagetranslation]]}}",
+ "logentry-pagetranslation-deletelok": "{{logentry|[[Special:Log/pagetranslation]]}}",
+ "logentry-pagetranslation-deletelnok": "{{logentry|[[Special:Log/pagetranslation]]}}",
+ "logentry-pagetranslation-encourage": "{{logentry|[[Special:Log/pagetranslation]]}}",
+ "logentry-pagetranslation-discourage": "{{logentry|[[Special:Log/pagetranslation]]}}",
+ "logentry-pagetranslation-prioritylanguages-unset": "{{logentry|[[Special:Log/pagetranslation]]}}",
+ "logentry-pagetranslation-prioritylanguages": "{{logentry|[[Special:Log/pagetranslation]]}}\n* $5 is list of languages (A, B and C)",
+ "logentry-pagetranslation-prioritylanguages-force": "{{logentry|[[Special:Log/pagetranslation]]}}\n* $5 is list of languages (A, B and C)",
+ "logentry-pagetranslation-associate": "{{logentry|[[Special:Log/pagetranslation]]}}\n* $4 is the name of the aggregate group",
+ "logentry-pagetranslation-dissociate": "{{logentry|[[Special:Log/pagetranslation]]}}\n* $4 is the name of the aggregate group",
+ "pt-movepage-title": "Used as page title.\n\nSee definition on [[mw:Help:Extension:Translate/Glossary]].\n\nParameters:\n* $1 - old page title",
+ "pt-movepage-blockers": "See definition on [[mw:Help:Extension:Translate/Glossary]].\n\nFollowed by any of the following error messages:\n* {{msg-mw|Pt-movepage-block-base-exists}}\n* {{msg-mw|Pt-movepage-block-base-invalid}}\n* {{msg-mw|Pt-movepage-block-tp-exists}}\n* {{msg-mw|Pt-movepage-block-tp-invalid}}\n* {{msg-mw|Pt-movepage-block-section-exists}}\n* {{msg-mw|Pt-movepage-block-section-invalid}}\n* {{msg-mw|Pt-movepage-block-subpage-exists}}\n* {{msg-mw|Pt-movepage-block-subpage-invalid}}\n\nParameters:\n* $1 - number of error messages",
+ "pt-movepage-block-base-exists": "Error message to indicate a base page exists and a translatable page cannot be renamed. Parameters:\n* $1 is a pre-existing page name.",
+ "pt-movepage-block-base-invalid": "The \"target page\" is the new title of the translatable page, see definition on [[mw:Help:Extension:Translate/Glossary]].",
+ "pt-movepage-block-tp-exists": "translation page is a translated version of a translatable page.\n\nParameters:\n* $1 - (Unused) old page title\n* $2 - new page title\n{{Related|Pt-movepage-block-exists}}",
+ "pt-movepage-block-tp-invalid": "This message may mean:\n* The user tried to move the page \"[[:$1]]\" to a new page title.\n* If successful, the page, along with the translation units will be moved to the target pages.\n* But the destination page title for the translation page would be invalid (too long?).\n\nSee definition on [[mw:Help:Extension:Translate/Glossary]].\n\nParameters:\n* $1 - old page title (translatable page title)\n{{Related|Pt-movepage-block-invalid}}",
+ "pt-movepage-block-section-exists": "Section page is a translation of one section. Translation page consists of many translation sections.\n\nParameters:\n* $1 - (Unused) old page title\n* $2 - new page title\n{{Related|Pt-movepage-block-exists}}",
+ "pt-movepage-block-section-invalid": "This message may mean:\n* The user tried to move the page \"[[:$1]]\" to a new page title.\n* If successful, the page, along with the translation units will be moved to the target pages.\n* But the destination page title for the translation unit would be invalid (too long?).\nParameters:\n* $1 - old page title (translatable page title)\n{{Related|Pt-movepage-block-invalid}}",
+ "pt-movepage-block-subpage-exists": "Subpage is here any subpage of translation page, which is not a translated version of the translatable page.\n\nParameters:\n* $1 - (Unused) old page title\n* $2 - new page title\n{{Related|Pt-movepage-block-exists}}",
+ "pt-movepage-block-subpage-invalid": "This message may mean:\n* The user tried to move the page \"[[:$1]]\" to a new page title.\n* If successful, the page, along with the translation units will be moved to the target pages.\n* But the destination subpage title for the translation unit would be invalid (too long?).\nParameters:\n* $1 - old page title (translatable page title)\n{{Related|Pt-movepage-block-invalid}}",
+ "pt-movepage-list-pages": "Used as section header.\n\nSee definition on [[mw:Help:Extension:Translate/Glossary]].\n\nParameters:\n* $1 - (Unused) number of old pages to move\n{{Related|Pt-movepage-list}}",
+ "pt-movepage-list-translation": "Used as section header.\n\nSee definition on [[mw:Help:Extension:Translate/Glossary]].\n\nParameters:\n* $1 - number of translation pages\n{{Related|Pt-movepage-list}}",
+ "pt-movepage-list-section": "Used as section header.\n\nSee definition on [[mw:Help:Extension:Translate/Glossary]].\n\nParameters:\n* $1 - number of translation unit pages (section pages)\n{{Related|Pt-movepage-list}}",
+ "pt-movepage-list-other": "Header of a list of additional subpages (other than translation pages) of the translatable page being moved, when the user selected the option to move subpages as well.\n\nSee definition on [[mw:Help:Extension:Translate/Glossary]].\n\nParameters:\n* $1 - number of subpages\n{{Related|Pt-movepage-list}}",
+ "pt-movepage-list-count": "Used to indicate how many pages will be moved.\n\nParameters:\n* $1 - number of pages\nSee also:\n* {{msg-mw|Pt-deletepage-list-count}}",
+ "pt-movepage-legend": "See definition on [[mw:Help:Extension:Translate/Glossary]].",
+ "pt-movepage-new": "{{Identical|New name}}",
+ "pt-movepage-reason": "{{Identical|Reason}}",
+ "pt-movepage-action-other": "Button label on the special page 'Move translateable page'. See [[mw:File:Translate_manual_-_Page_example_-_21._Move_confirm.png|screenshot]].",
+ "pt-movepage-intro": "See definitions on [[mw:Help:Extension:Translate/Glossary]].",
+ "pt-movepage-logreason": "Used as summary.\n\nSee definition on [[mw:Help:Extension:Translate/Glossary]].\n\nParameters:\n* $1 - translatable-page title",
+ "pt-locked-page": "See definition on [[mw:Help:Extension:Translate/Glossary]].",
+ "pt-deletepage-lang-title": "Used as page title. Parameters:\n* $1 - page title\n\nSee definition on [[mw:Help:Extension:Translate/Glossary]].\n\nSee also:\n* {{msg-mw|Pt-deletepage-full-title}}",
+ "pt-deletepage-full-title": "Used as page title. Parameters:\n* $1 - page title\n\nSee definition on [[mw:Help:Extension:Translate/Glossary]].\n\nSee also:\n* {{msg-mw|Pt-deletepage-lang-title}}",
+ "pt-deletepage-invalid-text": "See definition on [[mw:Help:Extension:Translate/Glossary]].",
+ "pt-deletepage-action-check": "This is a button label. \"List\" is an imperative verb.",
+ "pt-deletepage-action-perform": "Submit button on special page 'Deleting translatable page'. See [[mw:File:Translate_manual_-_Page_example_-_25._Delete_confirm.png|screenshot]].\n\ni think it's mean delete right now.",
+ "pt-deletepage-action-other": "Button label on the special page 'Deleting translatable page'. See [[mw:File:Translate_manual_-_Page_example_-_25._Delete_confirm.png|screenshot]].",
+ "pt-deletepage-lang-legend": "See definition on [[mw:Help:Extension:Translate/Glossary]].",
+ "pt-deletepage-full-legend": "See definition on [[mw:Help:Extension:Translate/Glossary]].",
+ "pt-deletepage-any-legend": "See definitions on [[mw:Help:Extension:Translate/Glossary]].",
+ "pt-deletepage-current": "{{Identical|Page name}}",
+ "pt-deletepage-reason": "{{Identical|Reason}}",
+ "pt-deletepage-subpages": "Checkbox label on special page 'Deleting translatable page'. see [[mw:File:Translate_manual_-_Page_example_-_25._Delete_confirm.png|screenshot]].",
+ "pt-deletepage-list-translation": "See definition on [[mw:Help:Extension:Translate/Glossary]].",
+ "pt-deletepage-list-section": "Heading in special page 'Deleting translatable page'. See [[mw:File:Translate_manual_-_Page_example_-_25._Delete_confirm.png|screenshot]].",
+ "pt-deletepage-list-count": "Used to indicate how many pages will be deleted.\n\nParameters:\n* $1 - number of pages\nSee also:\n* {{msg-mw|Pt-movepage-list-count}}",
+ "pt-deletepage-full-logreason": "Used as summary.\n\nSee definition on [[mw:Help:Extension:Translate/Glossary]].\n\nParameters:\n* $1 - translatable-page title\nSee also:\n* {{msg-mw|Pt-deletepage-lang-logreason}}",
+ "pt-deletepage-lang-logreason": "Used as summary.\n\nSee definition on [[mw:Help:Extension:Translate/Glossary]].\n\nParameters:\n* $1 - translatable-page title\nSee also:\n* {{msg-mw|Pt-deletepage-full-logreason}}",
+ "pagemigration": "{{doc-special|PageMigration}}",
+ "pagemigration-summary": "Description appearing on top of [[Special:PageMigration]].",
+ "pm-import-button-label": "Used as label for the \"Import\" button.\n{{Identical|Import}}",
+ "pm-savepages-button-label": "Used as label for the \"Save pages\" button.\n{{Identical|Save}}",
+ "pm-cancel-button-label": "Label for button to cancel the imports and clear the window.\n{{Identical|Cancel}}",
+ "pm-pagename-placeholder": "Placeholder for the pagename input field.",
+ "pm-langcode-placeholder": "Placeholder for the language code input field.\n{{Identical|Language code}}",
+ "pm-page-does-not-exist": "Parameters:\n* $1 - page title",
+ "pm-old-translations-missing": "Parameters:\n* $1 - page title",
+ "pm-extra-units-warning": "Warning given when number of translation units are greater than the number of source units",
+ "pm-pagename-missing": "Error message given when page title field is blank",
+ "pm-langcode-missing": "Error message given when language code field is blank",
+ "pm-add-icon-hover-text": "Hover text for add new unit icon",
+ "pm-swap-icon-hover-text": "Hover text for swap with unit below icon",
+ "pm-delete-icon-hover-text": "Hover text for delete unit icon",
+ "pm-pagetitle-invalid": "Error message given when an invalid page title is entered",
+ "pm-summary-import": "Edit summary used while creating translation pages which were imported using Special:PageMigration",
+ "tpt-translate-title": "Checkbox on Special:PageTranslation to mark title for translation",
+ "pp-save-summary": "Edit summary for saving a page prepared for translation by the tool",
+ "pagepreparation": "{{doc-special|PageMigration}}",
+ "pp-pagename-placeholder": "Placeholder for the pagename input field.",
+ "pp-prepare-button-label": "Used as label for the \"Prepare\" button.\n{{Identical|Prepare}}",
+ "pp-save-button-label": "Used as label for the \"Save\" button.\n{{Identical|Save}}",
+ "pp-save-message": "Message shown after the page is saved with the prepared text. Parameters:\n* $1 - a link to edit the page",
+ "pp-prepare-message": "Info message shown after the page is prepared for translation",
+ "pp-already-prepared-message": "Info message shown if the page is already prepared for translation",
+ "pp-pagename-missing": "Error message given when page title field is blank",
+ "pp-diff-old-header": "Header text for old revision for the diff shown at Special:PagePreparation",
+ "pp-diff-new-header": "Header text for new revision for the diff shown at Special:PagePreparation",
+ "tpt-unlink-confirm": "Confirmation message shown to user when unmarking page in active translation",
+ "tpt-unlink-button": "Button text",
+ "tpt-unlink-summary": "Edit summary"
+}
diff --git a/MLEB/Translate/i18n/pagetranslation/rm.json b/MLEB/Translate/i18n/pagetranslation/rm.json
new file mode 100644
index 00000000..8d9bc1f9
--- /dev/null
+++ b/MLEB/Translate/i18n/pagetranslation/rm.json
@@ -0,0 +1,12 @@
+{
+ "@metadata": {
+ "authors": [
+ "Gion-andri",
+ "Minisarm"
+ ]
+ },
+ "pagetranslation": "Translaziun da paginas",
+ "tpt-diff-old": "Text precedent",
+ "tpt-diff-new": "Nov text",
+ "tpt-languages-legend": "Autras linguas:"
+}
diff --git a/MLEB/Translate/i18n/pagetranslation/ro.json b/MLEB/Translate/i18n/pagetranslation/ro.json
new file mode 100644
index 00000000..bea6bc13
--- /dev/null
+++ b/MLEB/Translate/i18n/pagetranslation/ro.json
@@ -0,0 +1,96 @@
+{
+ "@metadata": {
+ "authors": [
+ "Firilacroco",
+ "KlaudiuMihaila",
+ "Minisarm",
+ "Stelistcristi"
+ ]
+ },
+ "pagetranslation": "Traducere pagini",
+ "right-pagetranslation": "Marchează versiuni ale paginilor pentru a fi traduse",
+ "action-pagetranslation": "administrați paginile traductibile",
+ "tpt-desc": "Extensie pentru traducerea conținutului paginilor",
+ "tpt-section": "Unitate de traducere $1",
+ "tpt-section-new": "Unitate de traducere nouă.\nNume: $1",
+ "tpt-section-deleted": "Unitate de traducere $1",
+ "tpt-template": "Șablon pagină",
+ "tpt-templatediff": "Formatul paginii a fost schimbat.",
+ "tpt-diff-old": "Text precedent",
+ "tpt-diff-new": "Text nou",
+ "tpt-submit": "Marchează această versiune pentru traducere",
+ "tpt-sections-oldnew": "Unități de traducere noi și existente",
+ "tpt-sections-deleted": "Unități de traducere șterse",
+ "tpt-sections-template": "Format de pagină de traducere",
+ "tpt-action-nofuzzy": "Nu invalida traduceri",
+ "tpt-badtitle": "Numele de pagină dat ($1) nu este un titlu valid",
+ "tpt-nosuchpage": "Pagina $1 nu există",
+ "tpt-oldrevision": "$2 nu este cea mai recentă versiune a paginii [[:$1]].\nDoar cele mai recente versiuni pot fi marcate pentru traducere.",
+ "tpt-notsuitable": "Pagina $1 nu se califică pentru traducere.\nAsigurați-vă că are eticheta <nowiki><translate></nowiki> și are o sintaxă validă.",
+ "tpt-offer-notify": "Puteți <span class=\"plainlinks\">[$1 notifica traducătorii]</span> despre această pagină.",
+ "tpt-badsect": "„$1” nu este un nume valid pentru unitatea de traducere $2.",
+ "tpt-mark-summary": "Marcat această versiune pentru traducere",
+ "tpt-edit-failed": "Pagina nu a putut fi actualizată: $1",
+ "tpt-already-marked": "Ultima versiune a acestei pagini a fost deja marcată pentru traducere.",
+ "tpt-unmarked": "Pagina $1 nu mai este marcată pentru traducere.",
+ "tpt-list-nopages": "Nici o pagină nu este marcată pentru traducere sau gata să fie marcată pentru traducere.",
+ "tpt-new-pages-title": "Pagini propuse pentru traducere",
+ "tpt-old-pages-title": "Pagini în curs de traducere",
+ "tpt-other-pages-title": "Pagini eronate",
+ "tpt-discouraged-pages-title": "Pagini descurajate",
+ "tpt-old-pages": "Unele versiuni ale {{PLURAL:$1|acestei pagini|acestor pagini}} au fost marcate pentru traducere.",
+ "tpt-select-prioritylangs": "Listă de coduri de limbă prioritară separate prin virgulă:",
+ "tpt-select-prioritylangs-reason": "Motiv:",
+ "tpt-sections-prioritylangs": "Limbi prioritare",
+ "tpt-rev-mark": "marchează pentru traducere",
+ "tpt-rev-unmark": "șterge de la traducere",
+ "tpt-rev-discourage": "descurajare",
+ "tpt-rev-encourage": "restaurare",
+ "tpt-rev-mark-tooltip": "Marchează ultima versiune a acestei pagini pentru traducere.",
+ "tpt-rev-unmark-tooltip": "Elimină această pagină de la traducere.",
+ "tpt-rev-discourage-tooltip": "Descurajează traducerile ulterioare ale acestei pagini.",
+ "tpt-rev-encourage-tooltip": "Restaurează această pagină la traducerea normală.",
+ "translate-tag-translate-link-desc": "Tradu această pagină",
+ "translate-tag-markthis": "Marchează această pagină pentru traducere",
+ "tpt-translation-intro": "Această pagină reprezintă <span class=\"plainlinks\">[$1 versiunea tradusă]</span> a paginii [[$2]], procesul de traducere fiind completat în proporție de $3%.",
+ "tpt-languages-legend": "Alte limbi:",
+ "tpt-tab-translate": "Traducere",
+ "tpt-discouraged-language-reason": "Motiv: $1",
+ "tpt-aggregategroup-add": "Adaugă",
+ "tpt-aggregategroup-save": "Salvează",
+ "tpt-aggregategroup-add-new": "Adaugă un grup de agregare nou",
+ "tpt-aggregategroup-new-name": "Nume:",
+ "tpt-aggregategroup-new-description": "Descriere (opțională):",
+ "tpt-aggregategroup-remove-confirm": "Sigur doriți să ștergeți acest grup de agregare?",
+ "tpt-aggregategroup-invalid-group": "Grupul nu există",
+ "log-name-pagetranslation": "Jurnal traducere pagini",
+ "pt-movepage-title": "Mută pagina traductibilă „$1”",
+ "pt-movepage-list-pages": "Listă de pagini de mutat",
+ "pt-movepage-list-translation": "{{PLURAL:$1|Pagină|Pagini}} de traducere",
+ "pt-movepage-list-other": "{{PLURAL:$1|Altă subpagină|Alte subpagini}}",
+ "pt-movepage-list-count": "În total, $1 {{PLURAL:$1|pagină|pagini|de pagini}} de redenumit.",
+ "pt-movepage-legend": "Mută pagina traductibilă",
+ "pt-movepage-current": "Nume actual:",
+ "pt-movepage-new": "Nume nou:",
+ "pt-movepage-reason": "Motiv:",
+ "pt-movepage-subpages": "Redenumește toate subpaginile",
+ "pt-movepage-action-check": "Verifică dacă modificarea este posibilă",
+ "pt-movepage-action-perform": "Redenumește",
+ "pt-movepage-action-other": "Schimbă ținta",
+ "pt-movepage-logreason": "Parte a paginii traductibile $1.",
+ "pt-deletepage-invalid-title": "Pagina specificată nu este validă.",
+ "pt-deletepage-action-perform": "Efectuați ștergerea",
+ "pt-deletepage-action-other": "Schimbați ținta",
+ "pt-deletepage-lang-legend": "Șterge pagina traducerii",
+ "pt-deletepage-full-legend": "Șterge pagina traductibilă",
+ "pt-deletepage-any-legend": "Șterge pagina traductibilă sau pagina de traducere",
+ "pt-deletepage-current": "Numele paginii:",
+ "pt-deletepage-reason": "Motiv:",
+ "pt-deletepage-subpages": "Ștergeți toate subpaginile",
+ "pt-deletepage-list-pages": "Listă de pagini de șters",
+ "pt-deletepage-list-translation": "Pagini de traducere",
+ "pt-deletepage-list-other": "Alte subpagini",
+ "pt-deletepage-list-count": "În total, $1 {{PLURAL:$1|pagină|pagini|de pagini}} de șters.",
+ "pt-deletepage-full-logreason": "Parte a paginii traductibile $1.",
+ "pt-deletepage-lang-logreason": "Parte a paginii de traducere „$1”."
+}
diff --git a/MLEB/Translate/i18n/pagetranslation/roa-tara.json b/MLEB/Translate/i18n/pagetranslation/roa-tara.json
new file mode 100644
index 00000000..42066a3a
--- /dev/null
+++ b/MLEB/Translate/i18n/pagetranslation/roa-tara.json
@@ -0,0 +1,78 @@
+{
+ "@metadata": {
+ "authors": [
+ "Joetaras"
+ ]
+ },
+ "pagetranslation": "Pàgene de traduzione",
+ "right-pagetranslation": "Signe le revisiune de le pàggene pe traduzione",
+ "action-pagetranslation": "gestisce le pàggene traducibbele",
+ "tpt-desc": "Estenzione pa traduzione de le pàggene de condenute",
+ "tpt-section": "Aunità de traduzione $1",
+ "tpt-section-new": "Nova unità de traduzione.\nNome: $1",
+ "tpt-section-deleted": "Unità de traduzione $1",
+ "tpt-template": "Pàgene d'u template",
+ "tpt-templatediff": "'U template d'a pàgene ha cangiate.",
+ "tpt-diff-old": "Teste precedende",
+ "tpt-diff-new": "Teste nuève",
+ "tpt-submit": "Signe sta versione pa traduzione",
+ "tpt-sections-oldnew": "Aunità de traduzione nuève e esistende",
+ "tpt-sections-deleted": "Aunità de traduziune scangellate",
+ "tpt-sections-template": "Tempalte d'a pàgene de traduzione",
+ "tpt-action-nofuzzy": "Nò invalidà le traduziune",
+ "tpt-badtitle": "'U nome d'a pàgene date ($1) non g'è 'nu titole valide",
+ "tpt-nosuchpage": "Pàgene $1 non g'esiste",
+ "tpt-oldrevision": "$2 non g'è l'urtema versione d'a pàgene [[:$1]].\nSulamende le urteme versiune ponne essere signate pa traduzione.",
+ "tpt-badsect": "\"$1\" non g'è 'nu nome valide pe l'aunità de traduzione $2.",
+ "tpt-mark-summary": "Signate sta versione pa traduzione",
+ "tpt-edit-failed": "Non ge pozze aggiornà 'a pàgene: $1",
+ "tpt-duplicate": "'U nome $1 de l'aunità de traduzione ha state ausate cchiù de 'na vote.",
+ "tpt-already-marked": "L'urtema versione de sta pàgene ha state ggià signate pa traduzione",
+ "tpt-unmarked": "Pàggene $1 non g'è cchiù signate pa traduzione.",
+ "tpt-new-pages-title": "Pàggene proposte pa traduzione",
+ "tpt-old-pages-title": "Pàggene in traduzione",
+ "tpt-other-pages-title": "Pàggene scuasciate",
+ "tpt-discouraged-pages-title": "Pàggene da scettà",
+ "tpt-select-prioritylangs-reason": "Mutive:",
+ "tpt-sections-prioritylangs": "Lènghe cu priorità",
+ "tpt-rev-mark": "signe da traducere",
+ "tpt-rev-unmark": "live da 'a traduzione",
+ "tpt-rev-discourage": "scoragge",
+ "tpt-rev-encourage": "repristine",
+ "translate-tag-translate-link-desc": "Traduce sta vosce",
+ "translate-tag-markthis": "Signe sta pàgene pa traduzione",
+ "tpt-languages-legend": "Otre lènghe:",
+ "tpt-languages-separator": "&#160;•&#32;",
+ "tpt-languages-zero": "Accuminze 'a traduzione pe sta lènghe",
+ "tpt-tab-translate": "Traduce",
+ "tpt-discouraged-language-reason": "Mutive: $1",
+ "aggregategroups": "Gruppe aggregate",
+ "tpt-aggregategroup-add": "Aggiunge",
+ "tpt-aggregategroup-save": "Reggìstre",
+ "tpt-aggregategroup-add-new": "Aggiunge 'nu gruppe aggregate",
+ "tpt-aggregategroup-new-name": "Nome:",
+ "tpt-aggregategroup-new-description": "Descrizione (opzionale):",
+ "tpt-aggregategroup-remove-confirm": "Sì secure ca vuè ccu scangille stu gruppe aggregate?",
+ "tpt-aggregategroup-invalid-group": "'U gruppe non g'esiste",
+ "log-name-pagetranslation": "Archivije de le traduziune de le pàggene",
+ "logentry-pagetranslation-encourage": "$1 {{GENDER:$2|'ngoragge}} 'a traduzione de $3",
+ "logentry-pagetranslation-discourage": "$1 {{GENDER:$2|scoragge}} 'a traduzione de $3",
+ "pt-movepage-title": "Spuèste 'a pàgene traducibbile \"$1\"",
+ "pt-movepage-list-pages": "Elenghe de le pàggene da spustà",
+ "pt-movepage-list-count": "In totale $1 {{PLURAL:$1|pàgene|pàggene}} da spustà.",
+ "pt-movepage-current": "Nome de mò:",
+ "pt-movepage-new": "Nome nuève:",
+ "pt-movepage-reason": "Mutive:",
+ "pt-movepage-subpages": "Spuèste tutte le sottopàggene",
+ "pt-movepage-action-perform": "Fà 'u spostamende",
+ "pt-movepage-action-other": "Cange 'a destinazione",
+ "pt-deletepage-action-other": "Cange 'a destinazione",
+ "pt-deletepage-lang-legend": "Scangille 'a pàgene de traduzione",
+ "pt-deletepage-full-legend": "Scangille 'a pàgene traducibbele",
+ "pt-deletepage-current": "Nome d'a pàgene:",
+ "pt-deletepage-reason": "Mutive:",
+ "pt-deletepage-subpages": "Scangille tutte le sottopàggene",
+ "pt-deletepage-list-pages": "Elenghe de le pàggene da scangellà",
+ "pt-deletepage-list-translation": "Pàggene de traduzione",
+ "pt-deletepage-list-other": "Otre sottopàggene"
+}
diff --git a/MLEB/Translate/i18n/pagetranslation/ru.json b/MLEB/Translate/i18n/pagetranslation/ru.json
new file mode 100644
index 00000000..e077dc7f
--- /dev/null
+++ b/MLEB/Translate/i18n/pagetranslation/ru.json
@@ -0,0 +1,211 @@
+{
+ "@metadata": {
+ "authors": [
+ "Amire80",
+ "Askarmuk",
+ "DR",
+ "Eugrus",
+ "Express2000",
+ "Ferrer",
+ "G0rn",
+ "Grigol",
+ "Hypers",
+ "KPu3uC B Poccuu",
+ "Kaganer",
+ "Lockal",
+ "Okras",
+ "Purodha",
+ "Александр Сигачёв"
+ ]
+ },
+ "pagetranslation": "Перевод страниц",
+ "right-pagetranslation": "отметка версий страниц для перевода",
+ "action-pagetranslation": "управлять переводимыми страницами",
+ "tpt-desc": "Расширение для перевода содержимого страниц",
+ "tpt-section": "Блок перевода $1",
+ "tpt-section-new": "Новый блок перевода. Название: $1",
+ "tpt-section-deleted": "Элемент перевода $1",
+ "tpt-template": "Страничный шаблон",
+ "tpt-templatediff": "Этот страничный шаблон изменён.",
+ "tpt-diff-old": "Предыдущий текст",
+ "tpt-diff-new": "Новый текст",
+ "tpt-submit": "Отметить эту версию для перевода",
+ "tpt-sections-oldnew": "Новые и существующие элементы перевода",
+ "tpt-sections-deleted": "Удалённые элементы перевода",
+ "tpt-sections-template": "Шаблон страницы перевода",
+ "tpt-action-nofuzzy": "Не помечать переводы как устаревшие",
+ "tpt-badtitle": "Указанное название страницы ($1) не является допустимым",
+ "tpt-nosuchpage": "Страница «$1» не существует.",
+ "tpt-oldrevision": "$2 не является последней версией страницы [[:$1]].\nТолько последние версии могут быть отмечены для перевода.",
+ "tpt-notsuitable": "Страница $1 является неподходящей для перевода.\nУбедитесь, что она имеет теги <nowiki><translate></nowiki> и правильный синтаксис.",
+ "tpt-saveok": "Страница [[:$1]] была отмечена для перевода, она содержит $2 {{PLURAL:$2|блок перевода|блока перевода|блоков переводов}}.\nТеперь страницу можно <span class=\"plainlinks\">[$3 переводить]</span>.",
+ "tpt-offer-notify": "Вы можете <span class=\"plainlinks\">[$1 уведомить переводчиков]</span> об этой странице.",
+ "tpt-badsect": "«$1» не является допустимым названием для блока перевода $2.",
+ "tpt-showpage-intro": "Ниже приведены новые, существующие и удалённые разделы.\nПрежде чем пометить эту версию как доступную для перевода, убедитесь, что изменения в переводимых элементах будут минимальны, чтобы минимизировать объём ненужной работы переводчикам.",
+ "tpt-mark-summary": "Отметить эту версию для перевода",
+ "tpt-mark-nochanges": "Нет никакого различия между этой версией и последней отмеченной версией.",
+ "tpt-edit-failed": "Невозможно обновить эту страницу: $1",
+ "tpt-duplicate": "Перевод элемента с названием $1 используется более одного раза.",
+ "tpt-already-marked": "Последняя версия этой страницы уже была отмечена для перевода.",
+ "tpt-unmarked": "Страница $1 больше не отмечена для перевода.",
+ "tpt-list-nopages": "Нет страниц, отмеченных для перевода, а также нет страниц готовых к отметке.",
+ "tpt-new-pages-title": "Страницы, предложенные для перевода",
+ "tpt-old-pages-title": "Страницы в переводе",
+ "tpt-other-pages-title": "Повреждённые страницы",
+ "tpt-discouraged-pages-title": "Отклонённые страницы",
+ "tpt-new-pages": "{{PLURAL:$1|1=Эта страница содержит|Эти страницы содержат}} текст с тегами перевода, но ни одна из версий {{PLURAL:$1|1=этой страницы|этих страниц}} не отмечена для перевода.",
+ "tpt-old-pages": "Некоторые версии {{PLURAL:$1|1=этой страницы|этих страниц}} были отмечены для перевода.",
+ "tpt-other-pages": "{{PLURAL:$1|1=Старая версия этой страницы отмечена|Старые версии этих страниц отмечены}} для перевода,\nно последняя версия не может быть отмечена для перевода.",
+ "tpt-discouraged-pages": "{{PLURAL:$1|1=Этой странице|Этим страницам}} было отказано в дальнейшем переводе.",
+ "tpt-select-prioritylangs": "Предпочитаемые языки (коды языков, разделенные запятой):",
+ "tpt-select-prioritylangs-force": "Предотвратить переводы на другие языки, помимо приоритетных",
+ "tpt-select-prioritylangs-reason": "Причина:",
+ "tpt-sections-prioritylangs": "Приоритетные языки",
+ "tpt-rev-mark": "пометить для перевода",
+ "tpt-rev-unmark": "убрать из перевода",
+ "tpt-rev-discourage": "исключить",
+ "tpt-rev-encourage": "восстановить",
+ "tpt-rev-mark-tooltip": "Отметить последнюю версию этой страницы для перевода.",
+ "tpt-rev-unmark-tooltip": "Исключить эту страницу из перевода.",
+ "tpt-rev-discourage-tooltip": "Предотвратить дальнейшие переводы на этой странице.",
+ "tpt-rev-encourage-tooltip": "Восстановить эту страницу для обычного перевода.",
+ "translate-tag-translate-link-desc": "Перевести эту страницу",
+ "translate-tag-markthis": "Отметить эту страницу для перевода",
+ "translate-tag-markthisagain": "Эта страница была <span class=\"plainlinks\">[$1 изменена]</span> с момента последней <span class=\"plainlinks\">[$2 отметки о переводе]</span>.",
+ "translate-tag-hasnew": "На этой странице были произведены <span class=\"plainlinks\">[$1 изменения]</span>, не отмеченные для перевода.",
+ "tpt-translation-intro": "Эта страница является <span class=\"plainlinks\">[$1 переводом]</span> страницы [[$2]]. Перевод выполнен на $3%.",
+ "tpt-languages-legend": "Другие языки:",
+ "tpt-languages-zero": "Начать перевод на этот язык",
+ "tpt-languages-nonzero": "$1 ($2% переведено)",
+ "tpt-tab-translate": "Перевести",
+ "tpt-target-page": "Эта страница не может быть обновлена вручную.\nЭто перевод страницы [[$1]], перевод может быть обновлён с помощью специального [$2 инструмента перевода].",
+ "tpt-unknown-page": "Это пространство имён зарезервировано для переводов текстов страниц.\nСтраница, которую вы пытаетесь изменить, не соответствует какой-либо странице, отмеченной для перевода.",
+ "tpt-translation-restricted": "Перевод этой страницы на данный язык был предотвращен администратором перевода.\n\n\nПричина: $1",
+ "tpt-discouraged-language-force-header": "Эта страница не может быть переведена на $1.",
+ "tpt-discouraged-language-force-content": "Администратор переводов решил, что эта страница может быть переведена только на $1.",
+ "tpt-discouraged-language-header": "Перевод на $1 не является приоритетным для этой страницы.",
+ "tpt-discouraged-language-content": "Администратор переводов решил сосредоточить усилия по переводу на $1.",
+ "tpt-discouraged-language-force": "<strong>Эта страница не может быть переведена на $2.</strong>\n\nАдминистратор перевода решил, что эта страница может быть переведена только на $3.",
+ "tpt-discouraged-language": "<strong>Перевод на $2 не приоритетен для этой страницы.</strong>\n\nАдминистратор перевода решил сфокусировать усилия по переводу на $3.",
+ "tpt-discouraged-language-reason": "Причина: $1",
+ "tpt-priority-languages": "Администратор перевода установил $1 в качестве приоритетного языка для этой группы.",
+ "tpt-render-summary": "Обновление для соответствия новой версии исходной страницы.",
+ "tpt-download-page": "Экспортировать страницу с переводами",
+ "aggregategroups": "Агрегированные группы",
+ "tpt-aggregategroup-add": "Добавить",
+ "tpt-aggregategroup-save": "Сохранить",
+ "tpt-aggregategroup-add-new": "Добавить новую агрегированную группу",
+ "tpt-aggregategroup-new-name": "Название:",
+ "tpt-aggregategroup-new-description": "Описание (необязательно):",
+ "tpt-aggregategroup-remove-confirm": "Вы правда хотите удалить агрегированную группу?",
+ "tpt-aggregategroup-invalid-group": "Группа не существует.",
+ "tpt-aggregategroup-edit-name": "Имя:",
+ "tpt-aggregategroup-edit-description": "Описание:",
+ "tpt-aggregategroup-update": "Сохранить",
+ "tpt-aggregategroup-update-cancel": "Отмена",
+ "tpt-invalid-group": "Недопустимая группа",
+ "pt-parse-open": "Несбалансированный тег &lt;translate>.\nШаблон перевода: <pre>$1</pre>",
+ "pt-parse-close": "Несбалансированный тег &lt;translate>.\nШаблон перевода: <pre>$1</pre>",
+ "pt-parse-nested": "Недопустимы вложенные разделы &lt;translate>.\nТекст тега: <pre>$1</pre>",
+ "pt-shake-multiple": "Несколько маркеров раздела в одном разделе.\nТекст раздела: <pre>$1</pre>",
+ "pt-shake-position": "Неожиданное положение маркеров разделов.\nТекст раздела: <pre>$1</pre>",
+ "pt-shake-empty": "Пустой раздел для маркера «$1».",
+ "log-description-pagetranslation": "Журнал для действий, связанных с системой перевода страниц",
+ "log-name-pagetranslation": "Журнал перевода страниц",
+ "logentry-pagetranslation-mark": "$1 {{GENDER:$2|пометил|пометила}} страницу «$3» как доступную для перевода",
+ "logentry-pagetranslation-unmark": "$1 {{GENDER:$2|удалил|удалила}} страницу «$3» из списка доступных для перевода",
+ "logentry-pagetranslation-moveok": "$1 {{GENDER:$2|переименовал|переименовала}} доступную для перевода страницу «$3» в «$4»",
+ "logentry-pagetranslation-movenok": "$1 {{GENDER:$2|столкнулся|столкнулась}} с проблемой при переименовании страницы «$3» в «$4»",
+ "logentry-pagetranslation-deletefok": "$1 {{GENDER:$2|удалил|удалила}} доступную для перевода страницу «$3»",
+ "logentry-pagetranslation-deletefnok": "$1 {{GENDER:$2|не смог|не смогла}} удалить «$3», относящуюся к доступной для перевода странице «$4»",
+ "logentry-pagetranslation-deletelok": "$1 {{GENDER:$2|удалил|удалила}} страницу перевода «$3»",
+ "logentry-pagetranslation-deletelnok": "$1 {{GENDER:$2|не смог|не смогла}} удалить «$3», относящуюся к странице перевода «$4»",
+ "logentry-pagetranslation-encourage": "$1 {{GENDER:$2|проверил|проверила}} перевод страницы «$3»",
+ "logentry-pagetranslation-discourage": "$1 {{GENDER:$2|снял|сняла}} отметку проверки с перевода страницы «$3»",
+ "logentry-pagetranslation-prioritylanguages-unset": "$1 {{GENDER:$2|удалил|удалила}} приоритетные языки с доступной для перевода страницы «$3»",
+ "logentry-pagetranslation-prioritylanguages": "$1 {{GENDER:$2|задал|задала}} для доступной для перевода страницы «$3» следующий список приоритетных языков: $5",
+ "logentry-pagetranslation-prioritylanguages-force": "$1 {{GENDER:$2|ограничил|ограничила}} для доступной для перевода страницы «$3» список языков: $5",
+ "logentry-pagetranslation-associate": "$1 {{GENDER:$2|добавил|добавила}} доступную для перевода страницу «$3» в агрегированную группу «$4»",
+ "logentry-pagetranslation-dissociate": "$1 {{GENDER:$2|удалил|удалила}} доступную для перевода страницу «$3» из агрегированной группы «$4»",
+ "pt-movepage-title": "Переименование доступной для перевода страницы $1",
+ "pt-movepage-blockers": "Страница с возможностью перевода не может быть переименована из-за {{PLURAL:$1|1=следующей ошибки|следующих ошибок}}:",
+ "pt-movepage-block-base-exists": "Целевая страница «[[:$1]]» уже существует.",
+ "pt-movepage-block-base-invalid": "Недопустимое название основной целевой страницы.",
+ "pt-movepage-block-tp-exists": "Перевод целевой страницы [[:$2]] уже существует.",
+ "pt-movepage-block-tp-invalid": "Название перевода целевой страницы [[:$1]] будет считаться недействительным (возможно, слишком длинное).",
+ "pt-movepage-block-section-exists": "Раздел целевой страницы \"[[:$2]]\" уже существует.",
+ "pt-movepage-block-section-invalid": "Название раздела целевой страницы \"[[:$1]]\" будет считаться недействительным (возможно, слишком длинным).",
+ "pt-movepage-block-subpage-exists": "Целевая подстраница [[:$2]] уже существует.",
+ "pt-movepage-block-subpage-invalid": "Название целевой подстраницы [[:$1]] будет считаться недействительным (возможно, слишком длинным).",
+ "pt-movepage-list-pages": "Список страниц для переименования",
+ "pt-movepage-list-translation": "{{PLURAL:$1|1=Страница|Страницы}} перевода",
+ "pt-movepage-list-section": "Разделы {{PLURAL:$1|1=переводимой страницы|переводимых страниц}}",
+ "pt-movepage-list-other": "{{PLURAL:$1|1=Другая подстраница|Другие подстраницы}}",
+ "pt-movepage-list-count": "Всего переименовать $1 {{PLURAL:$1|страницу|страницы|страниц}}.",
+ "pt-movepage-legend": "Переименование переводимых страниц",
+ "pt-movepage-current": "Текущее название:",
+ "pt-movepage-new": "Новое название:",
+ "pt-movepage-reason": "Причина:",
+ "pt-movepage-subpages": "Переименовать все подстраницы",
+ "pt-movepage-action-check": "Проверить, возможно ли переименование",
+ "pt-movepage-action-perform": "Произвести переименование",
+ "pt-movepage-action-other": "Изменить цель",
+ "pt-movepage-intro": "Эта служебная страница позволяет переименовывать страницы, отмеченные для перевода.\nПереименование не будет произведено одномоментно, так как требуется сменить название многим страницам.\nВо время процесса переименования пропадает возможность взаимодействия с этими страницами.\nВозникшие проблемы будут записаны в [[Special:Log/pagetranslation|журнал]], их нужно будет исправить вручную.",
+ "pt-movepage-logreason": "Часть переводимой страницы $1.",
+ "pt-movepage-started": "Основная страница переименована.\nПожалуйста, проверьте [[Special:Log/pagetranslation|журнал переводимых страниц]] на наличие ошибок.",
+ "pt-locked-page": "Эта страница заблокирована, так как переводимая страница сейчас переименовывается.",
+ "pt-deletepage-lang-title": "Удаление страницы перевода «$1».",
+ "pt-deletepage-full-title": "Удаление доступной для перевода страницы $1.",
+ "pt-deletepage-invalid-title": "Указана неверная страница.",
+ "pt-deletepage-invalid-text": "Указанная страница не относится к числу доступных для перевода страниц или их переводов.",
+ "pt-deletepage-action-check": "Список подлежащих удалению страниц",
+ "pt-deletepage-action-perform": "Выполнить удаление",
+ "pt-deletepage-action-other": "Изменить цель",
+ "pt-deletepage-lang-legend": "Удалить страницу с переводом",
+ "pt-deletepage-full-legend": "Удалить доступную для перевода страницу",
+ "pt-deletepage-any-legend": "Удалить доступную для перевода страницу или её перевод",
+ "pt-deletepage-current": "Название страницы:",
+ "pt-deletepage-reason": "Причина",
+ "pt-deletepage-subpages": "Удалить все подстраницы",
+ "pt-deletepage-list-pages": "Список страниц для удаления",
+ "pt-deletepage-list-translation": "Страницы перевода",
+ "pt-deletepage-list-section": "Страницы разделов перевода",
+ "pt-deletepage-list-other": "Другие подстраницы",
+ "pt-deletepage-list-count": "В сумме $1 {{PLURAL:$1|страница|страницы|страниц}} для перевода.",
+ "pt-deletepage-full-logreason": "Часть доступной для перевода страницы «$1».",
+ "pt-deletepage-lang-logreason": "Часть страницы перевода «$1».",
+ "pt-deletepage-started": "Пожалуйста, проверьте [[Special:Log/pagetranslation|журнал перевода страниц]] на предмет сообщений об ошибках и успешных завершениях.",
+ "pt-deletepage-intro": "Это специальная страница позволяет вам удалить целую страницу, доступную для перевода, или переводы на определённый язык.\nДействие по удалению не будет выполнено сразу же, так как в очереди на удаление будут все зависящие от них страницы.\nСбои будут отмечены в [[Special:Log/pagetranslation|журнале перевода страниц]] и должны быть устранены вручную.",
+ "pagemigration": "Миграция страниц перевода",
+ "pagemigration-summary": "Укажите страницу перевода и восстановите любой перевод, сделанный до того, как Система перевода была включена на этой странице.",
+ "pm-import-button-label": "Импортировать",
+ "pm-savepages-button-label": "Сохранить",
+ "pm-cancel-button-label": "Отмена",
+ "pm-pagename-placeholder": "Введите имя страницы",
+ "pm-langcode-placeholder": "Код языка",
+ "pm-page-does-not-exist": "$1 не существует",
+ "pm-old-translations-missing": "$1 не содержит старые переводы",
+ "pm-extra-units-warning": "Могут присутствовать дополнительные блоки. Пожалуйста, соотнесите правильно источники и блоков перевода",
+ "pm-pagename-missing": "Пожалуйста, введите имя страницы",
+ "pm-langcode-missing": "Пожалуйста, введите код языка",
+ "pm-add-icon-hover-text": "Добавить ниже блок",
+ "pm-swap-icon-hover-text": "Поменять местами с блоком ниже",
+ "pm-delete-icon-hover-text": "Удалить блок",
+ "pm-pagetitle-invalid": "Пожалуйста, введите корректный заголовок страницы",
+ "pm-summary-import": "Импортирован перевод с использованием [[Special:PageMigration|миграции страниц]]",
+ "tpt-translate-title": "Разрешить перевод названия страницы",
+ "pp-save-summary": "Подготовка страницы к переводу",
+ "pagepreparation": "Подготовить страницу к переводу",
+ "pp-pagename-placeholder": "Введите имя страницы",
+ "pp-prepare-button-label": "Подготовить",
+ "pp-save-button-label": "Сохранить",
+ "pp-save-message": "Страница была сохранена. Вы можете [$1 редактировать] её.",
+ "pp-prepare-message": "Страница была подготовлена для перевода. Различия между версиями смотрите ниже. Нажмите кнопку «{{int:pp-save-button-label}}», если всё нормально!",
+ "pp-already-prepared-message": "Кажется, эта страница уже была подготовлена для перевода. Нет никаких изменений по сравнению с предыдущей версией.",
+ "pp-pagename-missing": "Пожалуйста, введите имя страницы.",
+ "pp-diff-old-header": "Исходный текст",
+ "pp-diff-new-header": "Подготовленный текст",
+ "tpt-unlink-confirm": "Пожалуйста, подтвердите, что вы действительно хотите исключить эту страницу из системы перевода.\nСелектор языка и имена переведенной страницы перестанут работать.\nСтраницы перевода станут редактируемыми.",
+ "tpt-unlink-button": "Исключить из перевода",
+ "tpt-unlink-summary": "Исключение страницы из перевода"
+}
diff --git a/MLEB/Translate/i18n/pagetranslation/rue.json b/MLEB/Translate/i18n/pagetranslation/rue.json
new file mode 100644
index 00000000..1301ac7a
--- /dev/null
+++ b/MLEB/Translate/i18n/pagetranslation/rue.json
@@ -0,0 +1,30 @@
+{
+ "@metadata": {
+ "authors": [
+ "Gazeb"
+ ]
+ },
+ "pagetranslation": "Переклад сторінок",
+ "right-pagetranslation": "Означованя верзій сторінок про переклад",
+ "tpt-desc": "Росшыріня про перекладаня сторінок з обсягом",
+ "tpt-section": "Блок перекладу $1",
+ "tpt-section-new": "Новый блок перекладу.\nНазва: $1",
+ "tpt-section-deleted": "Блок перекладу $1",
+ "tpt-template": "Шаблона сторінкы",
+ "tpt-templatediff": "Шаблона сторінкы зміненый.",
+ "tpt-diff-old": "Попереднїй текст",
+ "tpt-diff-new": "Новый текст",
+ "tpt-submit": "Означіти тоту верзію про переклад",
+ "tpt-sections-oldnew": "Новы і екзістуючі сторінкы перекладу",
+ "tpt-sections-deleted": "Змазаны части сторінок",
+ "tpt-sections-template": "Шаблона сторінкы перекладу",
+ "tpt-nosuchpage": "Сторінка $1 не екзістує",
+ "tpt-oldrevision": "$2 не є найновша верзія сторінкы [[:$1]].\nПро переклад є можне означіти лем найновшы сторінкы.",
+ "translate-tag-translate-link-desc": "Перекласти тоту сторінку",
+ "translate-tag-markthis": "Означіти тоту сторінку про переклад",
+ "tpt-languages-legend": "Іншы языкы:",
+ "pt-movepage-new": "Нова назва:",
+ "pt-movepage-reason": "Причіна:",
+ "pt-movepage-subpages": "Переменовати вшыткы підсторінкы",
+ "pt-movepage-action-other": "Змінити ціль"
+}
diff --git a/MLEB/Translate/i18n/pagetranslation/sa.json b/MLEB/Translate/i18n/pagetranslation/sa.json
new file mode 100644
index 00000000..e8b94a53
--- /dev/null
+++ b/MLEB/Translate/i18n/pagetranslation/sa.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Ansumang"
+ ]
+ },
+ "pt-movepage-reason": "कारणम् :"
+}
diff --git a/MLEB/Translate/i18n/pagetranslation/sah.json b/MLEB/Translate/i18n/pagetranslation/sah.json
new file mode 100644
index 00000000..54a2f20e
--- /dev/null
+++ b/MLEB/Translate/i18n/pagetranslation/sah.json
@@ -0,0 +1,29 @@
+{
+ "@metadata": {
+ "authors": [
+ "HalanTul"
+ ]
+ },
+ "pagetranslation": "Сирэйдэри тылбаастааһын",
+ "right-pagetranslation": "Тылбаастанар сирэйдэр барылларын бэлиэтээһин",
+ "tpt-desc": "Сирэй ис хоһоонун тылбаастыырга кэҥэтии",
+ "tpt-section": "Тылбаас единицата $1",
+ "tpt-section-new": "Тылбаас саҥа единицата.\nАата: $1",
+ "tpt-section-deleted": "Тылбаас элэмиэнэ $1",
+ "tpt-template": "Сирэй халыыба",
+ "tpt-templatediff": "Бу сирэй халыыба уларытыллыбыт (уларытылынна).",
+ "tpt-diff-old": "Бу иннинээҕи тиэкис",
+ "tpt-diff-new": "Саҥа тиэкис",
+ "tpt-submit": "Бу барылы тылбаастыырга бэлиэтээһин",
+ "tpt-sections-oldnew": "Тылбаас саҥа уонна уруккуттан баар элэмиэннэрэ",
+ "tpt-sections-deleted": "Тылбаас сотуллубут элэмиэннэрэ",
+ "tpt-sections-template": "Тылбаас сирэйин халыыба",
+ "tpt-badtitle": "Сирэй ыйыллыбыт аата ($1) аат буолар кыаҕа суох",
+ "tpt-oldrevision": "$2 [[:$1]] сирэй бүтэһик барыла буолбатах.\nСирэйдэр бүтэһик эрэ барыллара тылбааска бэлиэтэниэхтэрин сөп.",
+ "tpt-notsuitable": "$1 сирэй тылбаастыырга табыгаһа суох.\n<nowiki><translate></nowiki> тиэктээҕин уонна синтаксииһэ сөпкө суруллубутун бэрэбиэркэлээ.",
+ "tpt-saveok": "[[:$1]] сирэй тылбаастанарга бэлиэтэммит, кини иһигэр {{PLURAL:$2|биир тылбаастаныахтаах этии|$2 тылбаастаныахтаах этии}} баар.\nБилигин сирэйи <span class=\"plainlinks\">[$3 тылбаастыахха]</span> сөп.",
+ "tpt-badsect": "\"$1\" диэн аат $2 тылбаас единицатын аатыгар сөп түбэспэт.",
+ "tpt-showpage-intro": "Манна саҥа, билигин баар уонна сотуллубут тылбаастаныахтаах тыллар уонна этиилэр көстөллөр.\nБу барылы тылбаастаныахтаах курдук бэлиэтиэҥ иннинэ уларытыыҥ төһө кыалларынан аҕыйах буоларын ситиһэ сатаа, ол тылбаасчыттар үлэлэрин аҕыйатыа.",
+ "tpt-mark-summary": "Бу барылы тылбастаныахтаах курдук бэлиэтииргэ",
+ "tpt-edit-failed": "Бу сирэйи саҥардар табыллыбата: $1"
+}
diff --git a/MLEB/Translate/i18n/pagetranslation/saz.json b/MLEB/Translate/i18n/pagetranslation/saz.json
new file mode 100644
index 00000000..d2e8a231
--- /dev/null
+++ b/MLEB/Translate/i18n/pagetranslation/saz.json
@@ -0,0 +1,9 @@
+{
+ "@metadata": {
+ "authors": [
+ "MooRePrabu"
+ ]
+ },
+ "pt-movepage-current": "ꢂꢡ꣄ꢡꢵ ꢥꢵꢮ꣄",
+ "pt-movepage-new": "ꢥꣁꢮ꣄ꢮꣁ ꢥꢵꢮ꣄"
+}
diff --git a/MLEB/Translate/i18n/pagetranslation/sc.json b/MLEB/Translate/i18n/pagetranslation/sc.json
new file mode 100644
index 00000000..3de44698
--- /dev/null
+++ b/MLEB/Translate/i18n/pagetranslation/sc.json
@@ -0,0 +1,9 @@
+{
+ "@metadata": {
+ "authors": [
+ "Via maxima",
+ "Taxandru"
+ ]
+ },
+ "pm-savepages-button-label": "Sarba"
+}
diff --git a/MLEB/Translate/i18n/pagetranslation/scn.json b/MLEB/Translate/i18n/pagetranslation/scn.json
new file mode 100644
index 00000000..51f64d71
--- /dev/null
+++ b/MLEB/Translate/i18n/pagetranslation/scn.json
@@ -0,0 +1,9 @@
+{
+ "@metadata": {
+ "authors": [
+ "Aushulz"
+ ]
+ },
+ "pt-movepage-reason": "Mutivu:",
+ "pt-deletepage-reason": "Mutivu:"
+}
diff --git a/MLEB/Translate/i18n/pagetranslation/sco.json b/MLEB/Translate/i18n/pagetranslation/sco.json
new file mode 100644
index 00000000..2a0cf0bd
--- /dev/null
+++ b/MLEB/Translate/i18n/pagetranslation/sco.json
@@ -0,0 +1,147 @@
+{
+ "@metadata": {
+ "authors": [
+ "John Reid"
+ ]
+ },
+ "pagetranslation": "Page owersetin",
+ "right-pagetranslation": "Maurk versions o pages fer owersetin",
+ "action-pagetranslation": "manage owersetable pages",
+ "tpt-desc": "Extension fer owersetin content pages",
+ "tpt-section": "Owersetin unit $1",
+ "tpt-section-new": "New owersetin unit.\nName: $1",
+ "tpt-section-deleted": "Owersetin unit $1",
+ "tpt-templatediff": "The page template haes chynged.",
+ "tpt-diff-old": "Preeveeos tex",
+ "tpt-diff-new": "New tex",
+ "tpt-submit": "Maurk this version fer owersetin",
+ "tpt-sections-oldnew": "New n exeestin owersetin units",
+ "tpt-sections-deleted": "Delytit owersetin units",
+ "tpt-sections-template": "The Owersetin page template",
+ "tpt-action-nofuzzy": "Dinna onvalitate owersets",
+ "tpt-badtitle": "Page name gien ($1) is na ae valit title",
+ "tpt-nosuchpage": "Page $1 disna exeest",
+ "tpt-oldrevision": "$2 isna the laitest version o the page [[:$1]].\nYinlie laitest versions can be maurkt fer owersetin.",
+ "tpt-notsuitable": "Page $1 isna suitable fer owersetin.\nMak sair that it haes <nowiki><translate></nowiki> tags n haes ae valit syntax.",
+ "tpt-saveok": "The page [[:$1]] haes been maurkt fer owersetin wi $2 {{PLURAL:$2|translation unit|owersetin units}}.\nThe page can nou be <span class=\"plainlinks\">[$3 owerset]</span>.",
+ "tpt-offer-notify": "Ye can <span class=\"plainlinks\">[$1 tell owerseters]</span> aneat this page.",
+ "tpt-badsect": "\"$1\" isna ae valit name fer owerset unit $2.",
+ "tpt-showpage-intro": "Ablo new, exeestin n delytit owerset units ar leetit.\nAfore maurkin this version fer owersetin, check that the chynges til owerset units ar wee tae avoid onnecessair wairk fer the owerseters.",
+ "tpt-mark-summary": "Maurkt this version fer owersetin",
+ "tpt-edit-failed": "Coudna update the page: $1",
+ "tpt-duplicate": "Owerset unit name $1 is uised mair than yince.",
+ "tpt-already-marked": "The laitest version o this page haes awreadie been maurkt fer owersetin.",
+ "tpt-unmarked": "Page $1 is naw langer maurkt fer owersetin.",
+ "tpt-list-nopages": "Naw pages ar maurkt fer owersetin or readie tae be maurkt fer owersetin.",
+ "tpt-new-pages-title": "Pages proposed fer owersetin",
+ "tpt-old-pages-title": "Pages in owersetin",
+ "tpt-discouraged-pages-title": "Discooraged pages",
+ "tpt-new-pages": "{{PLURAL:$1|This page contains|Thir pages contain}} tex wi owersetin tags,\nbit naw version o {{PLURAL:$1|this page is|thir pages ar}} nou maurkt fer owersetin.",
+ "tpt-old-pages": "Some version o {{PLURAL:$1|this page haes|thir pages hae}} been maurkt fer owersetin.",
+ "tpt-other-pages": "{{PLURAL:$1|Aen auld version o this page is|Aulder versions o thir pages ar}} maurked fer owersetin,\nbit the laitest {{PLURAL:$1|version|versions}} canna be maurkt fer owersetin.",
+ "tpt-discouraged-pages": "{{PLURAL:$1|This page haes|Thir pages hae}} been discooraged fae further owersetin.",
+ "tpt-select-prioritylangs": "Comma-separatit leet o prioritie leid codes:",
+ "tpt-select-prioritylangs-force": "Hinder owersets til leids ither than the prioritie leids",
+ "tpt-select-prioritylangs-reason": "Raison:",
+ "tpt-sections-prioritylangs": "Prioritie leids",
+ "tpt-rev-mark": "maurk fer owersetin",
+ "tpt-rev-unmark": "remuiv fae owersetin",
+ "tpt-rev-discourage": "discoorage",
+ "tpt-rev-mark-tooltip": "Maurk the laitest version o this page fer owersetin.",
+ "tpt-rev-unmark-tooltip": "Remuiv this page fae owersetin.",
+ "tpt-rev-discourage-tooltip": "Discoorage further owersetins oan this page.",
+ "tpt-rev-encourage-tooltip": "Restore this page til normal owersetin.",
+ "translate-tag-translate-link-desc": "Owerset this page",
+ "translate-tag-markthis": "Maurk this page fer owersetin",
+ "translate-tag-markthisagain": "This page haes <span class=\"plainlinks\">[$1 chynges]</span> sin it wis laist <span class=\"plainlinks\">[$2 maurkt fer owersetin]</span>.",
+ "translate-tag-hasnew": "This page contains <span class=\"plainlinks\">[$1 chynges]</span> that arna maurkt fer owersetin.",
+ "tpt-translation-intro": "This page is aen <span class=\"plainlinks\">[$1 owerset version]</span> o the page [[$2]] n the owersetin is $3% compleate.",
+ "tpt-languages-legend": "Ither leids:",
+ "tpt-languages-zero": "Stairt owersetin fer this leid",
+ "tpt-tab-translate": "Owerset",
+ "tpt-target-page": "This page canna be updated manuallie.\nThis page is aen owerset o the page [[$1]] n the owersetin can be updated uisin [$2 the owersetin tuil].",
+ "tpt-unknown-page": "This namespace is reserved fer content page owersets.\nThe page that ye'r ettlin tae eedit disna seem tae correspond wi onie page maurkt fer owersetin.",
+ "tpt-translation-restricted": "Owersetin o this page intil this leid haes been stapt bi aen owerset admeenistrater.\n\nReason: $1",
+ "tpt-discouraged-language-force": "<strong>This page canna be owerset intil $2.</strong>\n\nAen owerset admeenistrater decided that this page can yinlie be owerset intil $3.",
+ "tpt-discouraged-language": "<strong>Owersetin intil $2 isna ae prioritie fer this page.</strong>\n\nAen owerset admeenistrater decided tae focus the owersetin efforts oan $3.",
+ "tpt-discouraged-language-reason": "Raison: $1",
+ "tpt-priority-languages": "Aen owerset admeenistrater haes set the prioritie leids fer this groop til $1.",
+ "tpt-render-summary": "Updatin tae match new version o soorce page",
+ "tpt-download-page": "Export page wi owersets",
+ "aggregategroups": "Aggregate groops",
+ "tpt-aggregategroup-save": "Hain",
+ "tpt-aggregategroup-add-new": "Eik ae new aggregate groop",
+ "tpt-aggregategroup-new-description": "Descreeption (aen optie):",
+ "tpt-aggregategroup-remove-confirm": "Ar ye sair that ye want tae delyte this aggregate groop?",
+ "tpt-aggregategroup-invalid-group": "Groop disna exeest",
+ "pt-parse-open": "Onbalancet &lt;translate> tag.\nOwersetin template: <pre>$1</pre>",
+ "pt-parse-close": "Onbalancet &lt;/translate> tag.\nOwersetin template: <pre>$1</pre>",
+ "pt-parse-nested": "Nested &lt;translate> owersetin units arna permittit.\nTag tex: <pre>$1</pre>",
+ "pt-shake-multiple": "Multiple Owersetin unit maurkers fer the yin owersetin unit.\nOwersetin unit tex: <pre>$1</pre>",
+ "pt-shake-position": "Owersetin unit maurkers in onexpectit poseetion.\nOwersetin unit tex: <pre>$1</pre>",
+ "pt-shake-empty": "Tuim owersetin unit fer maurker \"$1\".",
+ "log-description-pagetranslation": "Log fer actions relatit til the page owersetin system",
+ "log-name-pagetranslation": "Page owersetin log",
+ "logentry-pagetranslation-mark": "$1 {{GENDER:$2|maurkt}} $3 fer owersetin",
+ "logentry-pagetranslation-unmark": "$1 {{GENDER:$2|remuived}} $3 fae owersetin",
+ "logentry-pagetranslation-moveok": "$1 {{GENDER:$2|compleatit}} renamin o owersetable page $3 til $4",
+ "logentry-pagetranslation-movenok": "$1 {{GENDER:$2|encoontered}} ae proablem while muivin page $3 til $4",
+ "logentry-pagetranslation-deletefok": "$1 {{GENDER:$2|compleatit}} delytion o owersetable page $3",
+ "logentry-pagetranslation-deletefnok": "$1 {{GENDER:$2|failed}} tae delyte $3, this belangs til owersetable page $4",
+ "logentry-pagetranslation-deletelok": "$1 {{GENDER:$2|compleatit}} delytion o owersetin page $3",
+ "logentry-pagetranslation-deletelnok": "$1 {{GENDER:$2|failed}} tae delyte $3, this belangs til owersetin page $4",
+ "logentry-pagetranslation-encourage": "$1 {{GENDER:$2|encooraged}} the owersetin o $3",
+ "logentry-pagetranslation-discourage": "$1 {{GENDER:$2|discooraged}} the owersetin o $3",
+ "logentry-pagetranslation-prioritylanguages-unset": "$1 {{GENDER:$2|removed}} prioritie leids fae owersetable page $3",
+ "logentry-pagetranslation-prioritylanguages": "$1 {{GENDER:$2|set}} the prioritie leids fer owersetable page $3 til $5",
+ "logentry-pagetranslation-prioritylanguages-force": "$1 {{GENDER:$2|leemitit}} leids fer owersetable page $3 til $5",
+ "logentry-pagetranslation-associate": "$1 {{GENDER:$2|added}} owersetable page $3 til aggregate groop $4",
+ "logentry-pagetranslation-dissociate": "$1 {{GENDER:$2|remuived}} owersetable page $3 fae aggregate groop $4",
+ "pt-movepage-title": "Muiv owersetable page \"$1\"",
+ "pt-movepage-blockers": "The owersetable page canna be muived til ae new name cause o the follaein {{PLURAL:$1|mistak|mistaks}}:",
+ "pt-movepage-block-base-exists": "The tairget owersetable page \"[[:$1]]\" exeests.",
+ "pt-movepage-block-base-invalid": "The tairget owersetable page name isna ae valit title.",
+ "pt-movepage-block-tp-exists": "The tairget owersetin page \"[[:$2]]\" exeests.",
+ "pt-movepage-block-tp-invalid": "The tairget owerset page title fer \"[[:$1]]\" wid be onvalit (ower lang?).",
+ "pt-movepage-block-section-exists": "The tairget page \"[[:$2]]\" fer the owersetin unit exeests.",
+ "pt-movepage-block-section-invalid": "The tairget page title fer \"[[:$1]]\" fer the owersetin unit wid be onvalit (ower lang?).",
+ "pt-movepage-block-subpage-exists": "The tairget subpage \"[[:$2]]\" exeests.",
+ "pt-movepage-block-subpage-invalid": "The tairget subpage title fer \"[[:$1]]\" wid be onvalid (ower lang?).",
+ "pt-movepage-list-pages": "Leet o pages tae muiv",
+ "pt-movepage-list-translation": "Owerset {{PLURAL:$1|page|pages}}",
+ "pt-movepage-list-section": "Owersetin unit {{PLURAL:$1|page|pages}}",
+ "pt-movepage-list-other": "Ither sub{{PLURAL:$1|page|pages}}",
+ "pt-movepage-list-count": "In total $1 {{PLURAL:$1|page|pages}} tae muiv.",
+ "pt-movepage-legend": "Muiv owersetable page",
+ "pt-movepage-current": "The Nou name:",
+ "pt-movepage-reason": "Raison:",
+ "pt-movepage-subpages": "Muiv aw subpages",
+ "pt-movepage-action-check": "Check gif the muiv is possible",
+ "pt-movepage-action-perform": "Mak the muiv",
+ "pt-movepage-action-other": "Chynge tairget",
+ "pt-movepage-intro": "This byordinair page permits ye tae muiv pages that ar maurkt fer owersetin.\nThe muiv action will na be instant, cause monie pages will need tae be muived.\nWhile the pages ar bein muived, it's na possible tae interact wi the said pages.\nFailures will be loggit in the [[Special:Log/pagetranslation|page owersetin log]] n thay need tae be repaired bi haun.",
+ "pt-movepage-logreason": "Pairt o owersetable page \"$1\".",
+ "pt-movepage-started": "The base page haes nou been muived.\nPlease check the [[Special:Log/pagetranslation|page owersetin log]] fer mistaks n compleation message.",
+ "pt-locked-page": "This page is lockt cause the owersetable page is nou bein muived.",
+ "pt-deletepage-lang-title": "Delytin owersetin page \"$1\".",
+ "pt-deletepage-full-title": "Delytin owersetable page \"$1\".",
+ "pt-deletepage-invalid-title": "The speceefied page isna valid.",
+ "pt-deletepage-invalid-text": "The speceefied page isna aen owersetable page or aen owersetin page.",
+ "pt-deletepage-action-check": "Leet the pages tae be delytit",
+ "pt-deletepage-action-perform": "Mak the delytion",
+ "pt-deletepage-action-other": "Chynge tairget",
+ "pt-deletepage-lang-legend": "Delyte owersetin page",
+ "pt-deletepage-full-legend": "Delyte owersetable page",
+ "pt-deletepage-any-legend": "Delyte owersetable page or owersetin page",
+ "pt-deletepage-reason": "Raison:",
+ "pt-deletepage-subpages": "Delyte aw subpages",
+ "pt-deletepage-list-pages": "Leet o pages tae delyte",
+ "pt-deletepage-list-translation": "Owersetin pages",
+ "pt-deletepage-list-section": "Owersetin unit pages",
+ "pt-deletepage-list-other": "Ither subpages",
+ "pt-deletepage-list-count": "In total $1 {{PLURAL:$1|page|pages}} tae delyte.",
+ "pt-deletepage-full-logreason": "Pairt o owersetable page \"$1\".",
+ "pt-deletepage-lang-logreason": "Pairt o owersetin page \"$1\".",
+ "pt-deletepage-started": "Please check the [[Special:Log/pagetranslation|page owersetin log]] fer mistaks n compleation message.",
+ "pt-deletepage-intro": "This byordinair page permits ye tae delyte ae hale owersetable page, or aen indiveedual owersetin page in ae leid.\nThe delyte action willna be instant, cause aw the pages dependin oan thaim will be delytit ava.\nFailures will be loggit in the [[Special:Log/pagetranslation|page owersetin log]] n thay need tae be repaired bi haun."
+}
diff --git a/MLEB/Translate/i18n/pagetranslation/si.json b/MLEB/Translate/i18n/pagetranslation/si.json
new file mode 100644
index 00000000..593fb841
--- /dev/null
+++ b/MLEB/Translate/i18n/pagetranslation/si.json
@@ -0,0 +1,122 @@
+{
+ "@metadata": {
+ "authors": [
+ "චතුනි අලහප්පෙරුම",
+ "තඹරු විජේසේකර",
+ "පසිඳු කාවින්ද",
+ "බිඟුවා",
+ "ශ්වෙත",
+ "Indunil Chamara",
+ "Susith Chandira Gts"
+ ]
+ },
+ "pagetranslation": "පිටුව පරිවර්තනය",
+ "right-pagetranslation": "පරිවර්තනය සඳහා පිටුවල අනුවාද සලකුණු කරන්න",
+ "action-pagetranslation": "පරිවර්තනය කල හැකි පිටු කළමනාකරණය කරන්න",
+ "tpt-desc": "අන්තර්ගත පිටු පරිවර්තනය කිරීම සඳහා විස්තීරණය",
+ "tpt-section": "$1 පරිවර්තන ඒකකය",
+ "tpt-section-new": "නව පරිවර්තන ඒකකය.\nනම: $1",
+ "tpt-section-deleted": "$1 පරිවර්තන ඒකකය",
+ "tpt-template": "පිටු සැකිල්ල",
+ "tpt-templatediff": "පිටු සැකිල්ල වෙනස් වී ඇත",
+ "tpt-diff-old": "පූර්ව පෙළ",
+ "tpt-diff-new": "නව පෙළ",
+ "tpt-submit": "මෙම අනුවාදය පරිවර්තනය සඳහා සලකුණු කරගන්න",
+ "tpt-sections-oldnew": "නව හා දැනට පවත්නා පරිවර්තන ඒකක",
+ "tpt-sections-deleted": "මකාදැමුණු පරිවර්තන ඒකක",
+ "tpt-sections-template": "පරිවර්තන පිටුව සැකිල්ල",
+ "tpt-action-nofuzzy": "පරිනර්තන අවලංගු නොකරන්න",
+ "tpt-badtitle": "දී ඇති පිටු නාමය ($1) නීතික මාතෘකාවක් නොවේ",
+ "tpt-nosuchpage": "$1 පිටුව නොපවතියි",
+ "tpt-oldrevision": "$2 යනු [[:$1]] පිටුවෙහි නවතම අනුවාදය නොවේ.\nනවතම අනුවාදයන් පමණක් පරිවර්තනය සඳහා තෝරාගත හැක.",
+ "tpt-notsuitable": "$1 පිටුව පරිවර්තනය සඳහා සුදුසු නොවේ.\nඑය සතුව <nowiki><translate></nowiki> ටැගයන් පැවතීම සහ එය සතුව නීතික වින්‍යාසයක් ඇතිබව සහතික කරන්න.",
+ "tpt-saveok": "$2 හා සමගින් මෙම පිටුව පරිවර්තනය කෙරුමට [[:$1]] විසින් සලකුණු කොට ඇත.\n{{PLURAL:$2|එක් පරිවර්තන ඒකකයක්|පරිවර්තන ඒකක}}\nමෙම පිටුව දැන් <span class=\"plainlinks\">[$3 පරිවර්තනය කල]</span>.",
+ "tpt-badsect": "\"$1\" යනු $2 පරිවර්තන ඒකකය සඳහා නීතික මාතෘකාවක් නොවේ.",
+ "tpt-mark-summary": "පරිවර්තනය සඳහා මෙම අනුවාදය සලකුණු කරන ලදී",
+ "tpt-mark-nochanges": "මෙම සංශෝධනය හා අවසන් වරට ලකුණු කල සංශෝධනය අතර කිසිදු වෙනසක් නොමැත.",
+ "tpt-edit-failed": "පිටුව යාවත්කාලීන කල නොහැක: $1",
+ "tpt-duplicate": "$1 පරිවතන ඒකක නාමය එකකට වඩා භාවිතා කර ඇත.",
+ "tpt-already-marked": "මෙම පිටුවෙහි නවතම අනුවාදය පරිවර්තනය සඳහා දැනටමත් සලකුණු කොට ඇත.",
+ "tpt-unmarked": "$1 පිටුව පරිවර්තනය සඳහා තවදුරටත් සලකුණු කර නොමැත.",
+ "tpt-new-pages-title": "පරිවර්තනය සඳහා යෝජිත පිටු",
+ "tpt-old-pages-title": "පරිවර්තනයේ ඇති පිටු",
+ "tpt-other-pages-title": "බිඳුණු පිටු",
+ "tpt-discouraged-pages-title": "අධෛර්යකල පිටු",
+ "tpt-old-pages": "පරිවර්තනය සඳහා {{PLURAL:$1|මෙම පිටුවේ|මෙම පිටුවල}} සමහර අනුවාදයන් සලකුණු කරන ලදී.",
+ "tpt-select-prioritylangs": "කොමාවෙන්-වෙන්වූ ප්‍රමුඛතා භාෂා කේතයන් ලැයිස්තුව:",
+ "tpt-select-prioritylangs-force": "ප්‍රමුඛතා භාෂාවන්ට වඩා වෙන භාෂාවන්ට කරන පරිවර්තන වලක්වන්න",
+ "tpt-select-prioritylangs-reason": "හේතුව:",
+ "tpt-sections-prioritylangs": "ප්‍රමුඛතා භාෂාවන්",
+ "tpt-rev-mark": "පරිවර්තනය සඳහා සලකුණු කරන්න",
+ "tpt-rev-unmark": "පරිවර්තනයෙන් ඉවත් කරන්න",
+ "tpt-rev-discourage": "අධෛර්ය කරන්න",
+ "tpt-rev-encourage": "නැවත පිහිටුවන්න",
+ "tpt-rev-mark-tooltip": "පරිවර්තනය සඳහා මෙම පිටුවෙහි නවතම අනුවාදය සලකුණු කරන්න.",
+ "tpt-rev-unmark-tooltip": "මෙම පිටුව පරිවර්තනයෙන් ඉවත් කරන්න.",
+ "tpt-rev-discourage-tooltip": "මෙම පිටුවෙහි ඉදිරි පරිවර්තනයන් අධෛර්ය කරන්න.",
+ "tpt-rev-encourage-tooltip": "සාමාන්‍ය පරිවර්තනය වෙත මෙම පිටුව නැවත පිහිටුවන්න.",
+ "translate-tag-translate-link-desc": "මෙම පිටුව පරිවර්තනය කරන්න",
+ "translate-tag-markthis": "පරිවර්තනය සඳහා මෙම පිටුව සලකුණු කරන්න",
+ "translate-tag-hasnew": "මෙම පිටුවේ අඩංගු වන <span class=\"plainlinks\">[$1 වෙනස්කම්]</span> පරිවර්තනය සඳහා සලකුණු කොට නොමැත.",
+ "tpt-languages-legend": "වෙනත් භාෂා:",
+ "tpt-languages-zero": "මෙම භාෂාව සඳහා පරිවර්තනය අරඹන්න",
+ "tpt-discouraged-language-reason": "හේතුව: $1",
+ "tpt-render-summary": "මූලාශ්‍ර පිටුවේ නව අනුවාදය වෙත ගැලපීම සඳහා යාවත්කාලීන කරමින්",
+ "tpt-download-page": "පරිවර්තනය සහිත පිටුව නිර්යාත කරන්න",
+ "aggregategroups": "සමස්ත කාණ්ඩයන්",
+ "tpt-aggregategroup-add": "එක් කරන්න",
+ "tpt-aggregategroup-save": "සුරකින්න",
+ "tpt-aggregategroup-add-new": "නව ඓක්‍යය කාණ්ඩයක් එක් කරන්න",
+ "tpt-aggregategroup-new-name": "නම:",
+ "tpt-aggregategroup-new-description": "විස්තරය (අමතර):",
+ "tpt-aggregategroup-invalid-group": "කාණ්ඩය නොපවතියි",
+ "pt-shake-empty": "$1 ලකුණුකරණය සඳහා හිස් කාණ්ඩය.",
+ "log-name-pagetranslation": "පිටු පරිවර්තන ලඝු සටහන",
+ "pt-movepage-title": "පරිවර්තනය කල හැකි $1 පිටුව ගෙනයන්න",
+ "pt-movepage-block-base-exists": "ඉලක්කගත ආධාරක පිටුව [[:$1]] දැනටමත් පවතියි.",
+ "pt-movepage-block-base-invalid": "ඉලක්කගත ආධාරක පිටුව වලංගු මාතෘකාවක් නොවේ.",
+ "pt-movepage-block-tp-exists": "ඉලක්කගත පරිවර්තනමය පිටුව [[:$2]] දැනටමත් පවතියි.",
+ "pt-movepage-block-section-exists": "ඉලක්කගත අංශ පිටුව [[:$2]] දැනටමත් පවතියි.",
+ "pt-movepage-block-subpage-exists": "ඉලක්කගත උපපිටුව [[:$2]] දැනටමත් පවතියි.",
+ "pt-movepage-list-pages": "ගෙනයාමට ඇති පිටු ලැයිස්තුව",
+ "pt-movepage-list-translation": "පරිවර්තන පිටු",
+ "pt-movepage-list-section": "කාණ්ඩ පිටු",
+ "pt-movepage-list-other": "වෙනත් උපපිටු",
+ "pt-movepage-list-count": "එකතුව වශයෙන් {{PLURAL:$1|පිටු|පිටු}} $1 ක් ගෙන යාමට ඇත.",
+ "pt-movepage-legend": "පරිවර්තනය කල හැකි පිටුව ගෙනයන්න",
+ "pt-movepage-current": "වත්මන් නාමය:",
+ "pt-movepage-new": "නව නම:",
+ "pt-movepage-reason": "හේතුව:",
+ "pt-movepage-subpages": "සියලුම උපපිටු ගෙනයන්න",
+ "pt-movepage-action-check": "ගෙනයාම කළහැකි දැයි පිරික්සන්න",
+ "pt-movepage-action-perform": "ගෙනයන්න",
+ "pt-movepage-action-other": "ඉලක්කය මාරු කරන්න",
+ "pt-movepage-logreason": "$1 පරිවර්තනය කල හැකි පිටුවෙහි කොටසක්.",
+ "pt-movepage-started": "පදනම් පිටුව දැන් ගෙනයන ලදී.\nසම්පූර්ණ පණිවුඩය සහ දෝෂයන් සඳහා කරුණාකර [[Special:Log/pagetranslation|පිටු පරිවර්තන ලඝු සටහන]] පිරික්සන්න.",
+ "pt-locked-page": "මෙම පිටුව අගුළුදමා ඇත මන්ද පරිවර්තනමය පිටුව ගෙනයමින් පවතියි.",
+ "pt-deletepage-lang-title": "$1 පරිවර්තන පිටුව මකමින්.",
+ "pt-deletepage-full-title": "$1 පරිවර්තනය කල හැකි පිටුව මකමින්.",
+ "pt-deletepage-invalid-title": "විශේෂණය කෙරූ පිටුව වලංගු නොවේ.",
+ "pt-deletepage-invalid-text": "විශේෂණය කෙරූ පිටුව පරිවර්තනය කල නොහැකි හෝ පරිවර්තනමය නොවේ.",
+ "pt-deletepage-action-check": "මැකීමට ඇති පිටු ලැයිස්තුගත කරන්න",
+ "pt-deletepage-action-perform": "මැකීම සිදු කරන්න",
+ "pt-deletepage-action-other": "ඉලක්කය වෙනස් කරන්න",
+ "pt-deletepage-lang-legend": "පරිවර්තන පිටුව මකමින්",
+ "pt-deletepage-full-legend": "පරිවර්තනය කල හැකි පිටුව මකන්න",
+ "pt-deletepage-any-legend": "පරිවර්තනය කළහැකි හෝ පරිවර්තනය කළහැකි පරිවර්තන පිටුවක් මකන්න",
+ "pt-deletepage-current": "පිටු නාමය:",
+ "pt-deletepage-reason": "හේතුව:",
+ "pt-deletepage-subpages": "සියලුම උපපිටු මකන්න",
+ "pt-deletepage-list-pages": "මැකීමට ඇති පිටු ලැයිස්තුව",
+ "pt-deletepage-list-translation": "පරිවර්තන පිටු",
+ "pt-deletepage-list-section": "කාණ්ඩ පිටු",
+ "pt-deletepage-list-other": "වෙනත් උපපිටු",
+ "pt-deletepage-list-count": "එකතුව වශයෙන් {{PLURAL:$1|පිටු|පිටු}} $1 ක් මැකීමට ඇත.",
+ "pt-deletepage-full-logreason": "$1 පරිවර්තනමය පිටුවෙහි කොටසක්.",
+ "pt-deletepage-lang-logreason": "$1 පරිවර්තන පිටුවෙහි කොටසක්.",
+ "pt-deletepage-started": "සම්පූර්ණ පණිවුඩය සහ දෝෂයන් සඳහා කරුණාකර [[Special:Log/pagetranslation|පිටු පරිවර්තන ලඝු සටහන]] පිරික්සන්න.",
+ "pm-pagetitle-invalid": "කරුණාකර වලංගු නාමයක් පිටුවට යොදන්න",
+ "tpt-unlink-confirm": "පරිවර්තනය කිරීම් පද්ධතියෙන් මෙම පිටුව ඉවත් කිරීමට ඔබට සැබවින්ම අවශ්‍ය බව කරුණාකර තහවුරු කරන්න.\nභාෂා තෝරනය හා පරිවර්තනය කරන ලද පිටුව ක්‍රියාවිරහිත වනු ඇත.\nපරිවර්තන පිටු සංස්කරණය කල හැකි තත්වයට පත්වනු ඇත.",
+ "tpt-unlink-button": "පරිවර්තනයෙන් ඉවත් කරන්න",
+ "tpt-unlink-summary": "පරිවර්තනයෙන් ඉවත්කරන ලද පිටු"
+}
diff --git a/MLEB/Translate/i18n/pagetranslation/sk.json b/MLEB/Translate/i18n/pagetranslation/sk.json
new file mode 100644
index 00000000..9ade7207
--- /dev/null
+++ b/MLEB/Translate/i18n/pagetranslation/sk.json
@@ -0,0 +1,49 @@
+{
+ "@metadata": {
+ "authors": [
+ "Helix84",
+ "Kusavica",
+ "Mormegil",
+ "Rudko",
+ "Teslaton"
+ ]
+ },
+ "pagetranslation": "Preklad stránky",
+ "right-pagetranslation": "Označiť verzie stránok na preklad",
+ "tpt-desc": "Rozšírenie na preklad stránok s obsahom",
+ "tpt-section": "Jednotka prekladu $1",
+ "tpt-section-new": "Nová jednotka prekladu.\nNázov: $1",
+ "tpt-section-deleted": "Jednotka prekladu $1",
+ "tpt-template": "Šablóna stránky",
+ "tpt-templatediff": "Šablóna stránky sa zmenila.",
+ "tpt-diff-old": "Predošlý text",
+ "tpt-diff-new": "Nový text",
+ "tpt-submit": "Označiť túto verziu na preklad",
+ "tpt-sections-oldnew": "Nové a existujúce jednotky prekladu",
+ "tpt-sections-deleted": "Zmazané jednotky prekladu",
+ "tpt-sections-template": "Šablóna stránky na preklad",
+ "tpt-badtitle": "Zadaný názov stránky ($1) nie je platný",
+ "tpt-nosuchpage": "Stránka $1 neexistuje",
+ "tpt-oldrevision": "$2 nie je najnovšia verzia stránky [[:$1]].\nNa preklad je možné označiť iba posledné verzie stránok.",
+ "tpt-notsuitable": "Stránka $1 nie je vhodná na preklad.\nUistite sa, že obsahuje značky <nowiki><translate></nowiki> a má platnú syntax.",
+ "tpt-saveok": "Stránka [[:$1]] bola označená na preklad s $2 {{PLURAL:$2|jednotkou prekladu, ktorú|jednotkami prekladu, ktoré}} možno preložiť.\nTúto stránku je teraz možné <span class=\"plainlinks\">[$3 preložiť]</span>.",
+ "tpt-badsect": "„$1“ nie je platný názov jednotky prekladu $2.",
+ "tpt-showpage-intro": "Dolu sú uvedené nové, súčasné a zmazané sekcie,\nPredtým než túto verziu označíte na preklad skontrolujte, že zmeny sekcií sú minimálne aby ste zabránili zbytočnej práci prekladateľov.",
+ "tpt-mark-summary": "Táto verzia je označená na preklad",
+ "tpt-edit-failed": "Nebolo možné aktualizovať stránku: $1",
+ "tpt-already-marked": "Najnovšia verzia tejto stránky už bola označená na preklad.",
+ "tpt-list-nopages": "Žiadne stránky nie sú označené na preklad alebo na to nie sú pripravené.",
+ "tpt-new-pages": "{{PLURAL:$1|Táto stránka obsahuje|Tieto stránky obsahujú}} text so značkami na preklad, ale žiadna verzia {{PLURAL:$1|tejto stránky|týchto stránok}} nie je označená na preklad.",
+ "tpt-old-pages": "Niektoré verzie {{PLURAL:$1|tejto stránky|týchto stránok}} boli označené na preklad.",
+ "translate-tag-translate-link-desc": "Preložiť túto stránku",
+ "translate-tag-markthis": "Označiť túto stránku na preklad",
+ "translate-tag-markthisagain": "Táto stránka obsahuje <span class=\"plainlinks\">[$1 {{PLURAL:$1|zmenu|zmeny|zmien}}]</span> odkedy bola naposledy <span class=\"plainlinks\">[$2 označená na preklad]</span>.",
+ "translate-tag-hasnew": "Táto stránka obsahuje <span class=\"plainlinks\">[$1 zmeny]</span>, ktoré nie sú označené na preklad.",
+ "tpt-translation-intro": "Táto stránka je <span class=\"plainlinks\">[$1 preloženou verziou]</span> stránky [[$2]] a preklad je hotový a aktuálny na $3 %.",
+ "tpt-languages-legend": "Iné jazyky:",
+ "tpt-target-page": "Túto stránku nemožno aktualizovať ručne.\nTáto stránka je prekladom stránky [[$1]] a preklad možno aktualizovať pomocou [$2 nástroja na preklad].",
+ "tpt-unknown-page": "Tento menný priestor je vyhradený na preklady stránok s obsahom.\nZdá sa, že stránka, ktorú sa pokúšate upravovať nezodpovedá žiadnej stránke označenej na preklad.",
+ "tpt-render-summary": "Aktualizácia na novú verziu zdrojovej stránky",
+ "tpt-download-page": "Exportovať stránky s prekladmi",
+ "tpt-aggregategroup-save": "Uložiť"
+}
diff --git a/MLEB/Translate/i18n/pagetranslation/sl.json b/MLEB/Translate/i18n/pagetranslation/sl.json
new file mode 100644
index 00000000..58c1c303
--- /dev/null
+++ b/MLEB/Translate/i18n/pagetranslation/sl.json
@@ -0,0 +1,133 @@
+{
+ "@metadata": {
+ "authors": [
+ "Dbc334",
+ "Eleassar",
+ "Irena Plahuta",
+ "Smihael"
+ ]
+ },
+ "pagetranslation": "Prevajanje strani",
+ "right-pagetranslation": "Označi različice strani za prevajanje",
+ "action-pagetranslation": "upravljanje prevedljivih strani",
+ "tpt-desc": "Razširitev za prevajanje vsebine strani",
+ "tpt-section": "Prevajalna enota $1",
+ "tpt-section-new": "Nove prevajalna enota.\nIme: $1",
+ "tpt-section-deleted": "Prevajalna enota $1",
+ "tpt-template": "Predloga strani",
+ "tpt-templatediff": "Predloga te strani se je spremenila.",
+ "tpt-diff-old": "Prejšnje besedilo",
+ "tpt-diff-new": "Novo besedilo",
+ "tpt-submit": "Označi to različico za prevajanje",
+ "tpt-sections-oldnew": "Nove in obstoječe prevajalske enote",
+ "tpt-sections-deleted": "Izbrisane prevajalske enote",
+ "tpt-sections-template": "Prevod predloge strani",
+ "tpt-action-nofuzzy": "Ne označuj prevodov kot ohlapne",
+ "tpt-badtitle": "Dano ime strani ($1) ni veljaven naslov",
+ "tpt-nosuchpage": "Stran $1 ne obstaja",
+ "tpt-oldrevision": "$2 ni najnovejša različics strani [[:$1]].\nSamo zadnje različice se lahko označi za prevod.",
+ "tpt-notsuitable": "Stran $1 ni primerna za prevod.\nPrepričajte se, da ima oznake <nowiki><translate></nowiki> in veljavno sintakso.",
+ "tpt-saveok": "Stran [[:$1]] je bila označena za prevod z $2 {{PLURAL:$2|prevajalsko enoto|prevajalskima enotama|prevajalskimi enotami}}.\nStran je sedaj mogoče <span class=\"plainlinks\">[$3 prevesti]</span>.",
+ "tpt-badsect": "»$1« ni veljavno ime za prevajalsko enoto $2.",
+ "tpt-showpage-intro": "Spodaj so navedene nove, obstoječe in izbrisane prevajalne enote.\nPred označitvijo te redakcije za prevajanje preverite, da so spremembe prevajalnih enot čim manjše, saj tako prevajalcem prihranite nepotrebno delo.",
+ "tpt-mark-summary": "Označil to različico za prevajanje",
+ "tpt-edit-failed": "Ni mogoče posodobiti strani: $1",
+ "tpt-duplicate": "Ime prevajalne enote $1 se uporablja več kot enkrat.",
+ "tpt-already-marked": "Najnovejša različica te strani je že bila označena za prevajanje.",
+ "tpt-unmarked": "Stran $1 ni več označena za prevajanje.",
+ "tpt-list-nopages": "Nobena stran ni označena za prevajanje, niti pripravljena, da se označi za prevajanje.",
+ "tpt-new-pages-title": "Strani, predlagane za prevajanje",
+ "tpt-old-pages-title": "Strani v prevajanju",
+ "tpt-other-pages-title": "Poškodovane strani",
+ "tpt-discouraged-pages-title": "Zatrte strani",
+ "tpt-new-pages": "{{PLURAL:$1|Ta stran vsebuje|Ti strani vsebujeta|Te strani vsebujejo}} besedilo z oznakami za prevajanje,\nvendar trenutno ni nobena različica {{PLURAL:$1|te strani|teh strani}} označena za prevajanje.",
+ "tpt-old-pages": "Nekatere različice {{PLURAL:$1|te strani|teh strani}} so bile označene za prevajanje.",
+ "tpt-other-pages": "{{PLURAL:$1|Stara različica te strani je bila označena|Stari različici teh strani sta bili označeni|Stare različice teh strani so bile označene}} za prevajanje,\nvendar {{PLURAL:$1|trenutne različice|trenutnih različic}} ni mogoče označiti za prevajanje.",
+ "tpt-discouraged-pages": "{{PLURAL:$1|Naslednja stran je zatrta|Naslednji strani sta zatrti|Naslednje strani so zatrte}} pred nadaljnjimi prevodi.",
+ "tpt-select-prioritylangs": "Z vejico ločen seznam kod prednostnih jezikov:",
+ "tpt-select-prioritylangs-force": "Prepreči prevajanje v jezike, ki niso prednostni jeziki",
+ "tpt-select-prioritylangs-reason": "Razlog:",
+ "tpt-sections-prioritylangs": "Prednostni jeziki",
+ "tpt-rev-mark": "Označi za prevajanje",
+ "tpt-rev-unmark": "odstrani iz prevoda",
+ "tpt-rev-discourage": "zatri",
+ "tpt-rev-encourage": "obnovi",
+ "tpt-rev-mark-tooltip": "Označi zadnjo različico strani za prevajanje.",
+ "tpt-rev-unmark-tooltip": "Odstranite stran iz prevajanja.",
+ "tpt-rev-discourage-tooltip": "Zatri nadaljnje prevode strani.",
+ "tpt-rev-encourage-tooltip": "Obnovite stran na običajni prevod.",
+ "translate-tag-translate-link-desc": "Prevedi to stran",
+ "translate-tag-markthis": "Označi to stran za prevajanje",
+ "translate-tag-markthisagain": "Ta stran ima <span class=\"plainlinks\">[$1 sprememb]</span> odkar je bila nazadnje <span class=\"plainlinks\">[$2 označena za prevajanje]</span>.",
+ "translate-tag-hasnew": "Stran vsebuje <span class=\"plainlinks\">[$1 spremembe]</span>, ki niso označene za prevajanje.",
+ "tpt-translation-intro": "Ta stran je <span class=\"plainlinks\">[$1 prevedena različica]</span> strani [[$2]] in prevod je $3 % dokončan.",
+ "tpt-languages-legend": "Drugi jeziki:",
+ "tpt-languages-zero": "Prični s prevajanjem v ta jezik",
+ "tpt-target-page": "Te strani ni mogoče ročno posodobiti.\nTa stran je prevod strani [[$1]], njen prevod lahko posodobite z uporabo [$2 prevajalskega orodja].",
+ "tpt-unknown-page": "Ta imenski prostor je pridržan za prevode vsebinskih strani.\nStran, ki jo poskušate urediti, ne ustreza nobeni strani označeni za prevajanje.",
+ "tpt-discouraged-language-reason": "Razlog: $1",
+ "tpt-render-summary": "Posodabljanje za ujemanje nove različice izvorne strani",
+ "tpt-download-page": "Izvozi stran s prevodi",
+ "tpt-aggregategroup-add": "Dodaj",
+ "tpt-aggregategroup-save": "Shrani",
+ "tpt-aggregategroup-new-name": "Ime:",
+ "tpt-aggregategroup-new-description": "Opis (izbirno):",
+ "tpt-aggregategroup-invalid-group": "Skupina ne obstaja",
+ "pt-parse-open": "Neizenačena etiketa &lt;translate>.\nPrevajalna predloga: <pre>$1</pre>",
+ "pt-parse-close": "Neizenačena etiketa &lt;/translate>.\nPrevajalna predloga: <pre>$1</pre>",
+ "pt-parse-nested": "Gnezdene prevajalne enote &lt;translate> niso dovoljene.\nBesedilo etikete: <pre>$1</pre>",
+ "pt-shake-multiple": "Več označevalcev prevajalnih enot za eno prevajalno enoto.\nBesedilo prevajalne enote: <pre>$1</pre>",
+ "pt-shake-position": "Označevalci prevajalnih enot na nepričakovanem položaju.\nBesedilo prevajalne enote: <pre>$1</pre>",
+ "pt-shake-empty": "Prazna prevajalna enota označevalec »$1«.",
+ "log-description-pagetranslation": "Dnevnik dejanj, ki so povezana s sistemom prevajanja strani",
+ "log-name-pagetranslation": "Dnevnik prevajanja strani",
+ "pt-movepage-title": "Premakni prevedljivo stran $1",
+ "pt-movepage-blockers": "Prevedljive strani ni mogoče prestaviti na novo ime zaradi {{PLURAL:$1|naslednje napake|naslednjih napak}}:",
+ "pt-movepage-block-base-exists": "Ciljna prevedljiva stran »[[:$1]]« obstaja.",
+ "pt-movepage-block-base-invalid": "Ime ciljne prevedljive strani ni veljaven naslov.",
+ "pt-movepage-block-tp-exists": "Ciljna stran s prevodom [[:$2]] obstaja.",
+ "pt-movepage-block-tp-invalid": "Naslov ciljne strani s prevodom za [[:$1]] bi bil neveljaven (predolg?).",
+ "pt-movepage-block-section-exists": "Ciljna stran prevajalne enote »[[:$2]]« obstaja.",
+ "pt-movepage-block-section-invalid": "Naslov ciljne strani »[[:$1]]« za prevajalno enoto bi bil neveljaven (predolg?).",
+ "pt-movepage-block-subpage-exists": "Ciljna podstran [[:$2]] obstaja.",
+ "pt-movepage-block-subpage-invalid": "Naslov ciljne podstrani [[:$1]] bi bil neveljaven (predolg?).",
+ "pt-movepage-list-pages": "Seznam strani za prestavitev",
+ "pt-movepage-list-translation": "{{PLURAL:$1|Stran|Strani}} s prevodi",
+ "pt-movepage-list-section": "{{PLURAL:$1|Stran|Strani}} prevajalnih enot",
+ "pt-movepage-list-other": "{{PLURAL:$1|Ostala podstran|Ostali podstrani|Ostale podstrani}}",
+ "pt-movepage-list-count": "Skupno je za prestaviti $1 {{PLURAL:$1|stran|strani}}.",
+ "pt-movepage-legend": "Premakni prevedljivo stran",
+ "pt-movepage-current": "Trenutno ime:",
+ "pt-movepage-new": "Novo ime:",
+ "pt-movepage-reason": "Razlog:",
+ "pt-movepage-subpages": "Prestavi vse podstrani",
+ "pt-movepage-action-check": "Preveri, če je prestavitev mogoča",
+ "pt-movepage-action-perform": "Izvedi prestavitev",
+ "pt-movepage-action-other": "Spremeni cilj",
+ "pt-movepage-intro": "Ta posebna stran omogoča prestavljanje strani, ki so označene za prevajanje.\nDejanje prestavitve ne bo izvedeno takoj, saj bo potrebno prestaviti veliko strani.\nMedtem ko se strani premikajo, ne bo mogoče delovati na straneh v obravnavi.\nNeuspehi bodo zabeleženi v [[Special:Log/pagetranslation|dnevniku strani prevodov]] in jih je potrebno ročno popraviti.",
+ "pt-movepage-logreason": "Del prevedljive strani $1.",
+ "pt-movepage-started": "Izhodna stran je prestavljena.\nProsimo, preverite [[Special:Log/pagetranslation|dnevnik strani prevodov]] za napake in sporočila o dokončanju.",
+ "pt-locked-page": "Stran je zaklenjena, ker se prevedljiva stran trenutno prestavlja.",
+ "pt-deletepage-lang-title": "Brisanje strani pravoda $1.",
+ "pt-deletepage-full-title": "Brisanje prevedljive strani $1.",
+ "pt-deletepage-invalid-title": "Določena stran ni veljavna.",
+ "pt-deletepage-invalid-text": "Izbrana stran ni niti prevedljiva stran niti stran s prevodom.",
+ "pt-deletepage-action-check": "Navedi strani za izbris",
+ "pt-deletepage-action-perform": "Izvedi izbris",
+ "pt-deletepage-action-other": "Spremeni cilj",
+ "pt-deletepage-lang-legend": "Izbriši stran prevoda",
+ "pt-deletepage-full-legend": "Izbriši prevedljivo stran",
+ "pt-deletepage-any-legend": "Izbriši prevedljivo stran ali prevod strani",
+ "pt-deletepage-current": "Naslov strani:",
+ "pt-deletepage-reason": "Razlog:",
+ "pt-deletepage-subpages": "Izbriši vse podstrani",
+ "pt-deletepage-list-pages": "Seznam strani za izbris",
+ "pt-deletepage-list-translation": "Strani prevodov",
+ "pt-deletepage-list-section": "Strani prevajalnih enot",
+ "pt-deletepage-list-other": "Druge podstrani",
+ "pt-deletepage-list-count": "Skupno je za izbrisati $1 {{PLURAL:$1|stran|strani}}.",
+ "pt-deletepage-full-logreason": "Del prevedljive strani $1.",
+ "pt-deletepage-lang-logreason": "Del strani prevoda $1.",
+ "pt-deletepage-started": "Prosimo, preverite [[Special:Log/pagetranslation|dnevnik prevajanja strani]] za napake in sporočilo o dokončanju.",
+ "pt-deletepage-intro": "Ta posebna stran vam omogoča izbris celotne prevedljive strani ali individualne strani s prevodom v nekem jeziku.\nDejanje izbrisa ne bo izvedeno takoj, ker je treba izbrisati tudi vse strani, ki so od njih odvisne.\nNeuspehi bodo zabeleženi v [[Special:Log/pagetranslation|dnevniku prevajanja strani]] in jih morate urediti ročno."
+}
diff --git a/MLEB/Translate/i18n/pagetranslation/so.json b/MLEB/Translate/i18n/pagetranslation/so.json
new file mode 100644
index 00000000..82844231
--- /dev/null
+++ b/MLEB/Translate/i18n/pagetranslation/so.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Abshirdheere"
+ ]
+ },
+ "tpt-discouraged-language": "<strong>Turjumidda $2 Maaha muhiimadda koowaad ee Boggaan.</strong>\n\nMaamulka waxa uu muhiimad uu siiyey turjumidda $3."
+}
diff --git a/MLEB/Translate/i18n/pagetranslation/sr-ec.json b/MLEB/Translate/i18n/pagetranslation/sr-ec.json
new file mode 100644
index 00000000..cb0311d8
--- /dev/null
+++ b/MLEB/Translate/i18n/pagetranslation/sr-ec.json
@@ -0,0 +1,95 @@
+{
+ "@metadata": {
+ "authors": [
+ "Milicevic01",
+ "Rancher",
+ "Милан Јелисавчић",
+ "Михајло Анђелковић"
+ ]
+ },
+ "pagetranslation": "Превод странице",
+ "right-pagetranslation": "означавање издања страница за превод",
+ "tpt-section": "Преводилачка јединица $1",
+ "tpt-section-new": "Нова преводилачка јединица.\nНазив: $1",
+ "tpt-section-deleted": "Преводилачка јединица $1",
+ "tpt-template": "Шаблон странице",
+ "tpt-templatediff": "Шаблон странице је измењен.",
+ "tpt-diff-old": "Претходни текст",
+ "tpt-diff-new": "Следећи текст",
+ "tpt-submit": "Означи ову верзију за превод",
+ "tpt-sections-oldnew": "Нове и постојеће преводилачке јединице",
+ "tpt-sections-deleted": "Обрисане преводилачке јединице",
+ "tpt-sections-template": "Шаблон странице за превођење",
+ "tpt-action-nofuzzy": "Не поништавајте преводе",
+ "tpt-nosuchpage": "Страница $1 не постоји",
+ "tpt-mark-nochanges": "Нема разлика између ове ревизије и последње означене ревизије.",
+ "tpt-new-pages-title": "Предложене странице за превођење",
+ "tpt-select-prioritylangs-reason": "Разлог:",
+ "tpt-sections-prioritylangs": "Приоритетни језици",
+ "tpt-rev-mark": "означи за превођење",
+ "tpt-rev-unmark": "уклони из превода",
+ "tpt-rev-discourage": "непрепоручено",
+ "tpt-rev-encourage": "врати",
+ "tpt-rev-mark-tooltip": "Означи последњу верзију странице као „за превођење“.",
+ "tpt-rev-unmark-tooltip": "Уклони страницу из превода.",
+ "tpt-rev-discourage-tooltip": "Постави страницу као непрепоручену за даљње превођење.",
+ "tpt-rev-encourage-tooltip": "Врати страницу за нормално превођење.",
+ "translate-tag-translate-link-desc": "Преведите ову страницу",
+ "translate-tag-markthis": "Означи страницу као „за превођење“",
+ "tpt-translation-intro": "Ово је <span class=\"plainlinks\">[$1 преведена верзија]</span> странице [[$2]]. Превод је $3% завршен.",
+ "tpt-languages-legend": "Остали језици:",
+ "tpt-languages-separator": "&#160;•&#32;",
+ "tpt-languages-zero": "Почните превођења на овом језику",
+ "tpt-discouraged-language-reason": "Разлог: $1",
+ "tpt-aggregategroup-add": "Додај",
+ "tpt-aggregategroup-save": "Сачувај",
+ "tpt-aggregategroup-new-name": "Назив:",
+ "tpt-aggregategroup-new-description": "Опис (необавезно):",
+ "tpt-aggregategroup-invalid-group": "Група не постоји",
+ "tpt-aggregategroup-edit-name": "Назив:",
+ "tpt-aggregategroup-edit-description": "Опис:",
+ "tpt-aggregategroup-update": "Сачувај",
+ "tpt-aggregategroup-update-cancel": "Откажи",
+ "log-name-pagetranslation": "Дневник превода страница",
+ "pt-movepage-title": "Премештање преводиве странице $1",
+ "pt-movepage-block-base-exists": "Циљна основна страница [[:$1]] постоји.",
+ "pt-movepage-block-base-invalid": "Циљ основне странице не представља исправан наслов.",
+ "pt-movepage-block-tp-exists": "Циљна страница за превод [[:$2]] постоји.",
+ "pt-movepage-block-tp-invalid": "Наслов циљне странице за превод за [[:$1]] био би неисправан (предугачак?).",
+ "pt-movepage-block-section-exists": "Циљна страница за поднаслов [[:$2]] постоји.",
+ "pt-movepage-block-section-invalid": "Наслов циљне странице за поднаслов за [[:$1]] био би неисправан (предугачак?).",
+ "pt-movepage-block-subpage-exists": "Циљна подстраница [[:$2]] постоји.",
+ "pt-movepage-block-subpage-invalid": "Наслов циљне подстранице за [[:$1]] био би неисправан (предугачак?).",
+ "pt-movepage-list-pages": "Списак страница за премештање",
+ "pt-movepage-list-translation": "Странице за превод",
+ "pt-movepage-list-section": "Странице за поднаслове",
+ "pt-movepage-list-other": "Друге подстранице",
+ "pt-movepage-list-count": "Укупно $1 {{PLURAL:$1|страница|странице|страница}} за премештање.",
+ "pt-movepage-legend": "Премести преводиву страницу",
+ "pt-movepage-current": "Текући назив:",
+ "pt-movepage-new": "Нови назив:",
+ "pt-movepage-reason": "Разлог:",
+ "pt-movepage-subpages": "Премести све подстранице",
+ "pt-movepage-action-check": "Провери да ли је премештање изводљиво",
+ "pt-movepage-action-perform": "Премести",
+ "pt-movepage-action-other": "Промени циљ",
+ "pt-deletepage-action-check": "Наведи странице за брисање",
+ "pt-deletepage-action-perform": "Изврши брисање",
+ "pt-deletepage-action-other": "Промени циљ",
+ "pt-deletepage-lang-legend": "Обриши страницу превода",
+ "pt-deletepage-full-legend": "Обриши преводиву страницу",
+ "pt-deletepage-current": "Назив странице:",
+ "pt-deletepage-reason": "Разлог:",
+ "pt-deletepage-subpages": "Обриши све подстранице",
+ "pt-deletepage-list-pages": "Списак страница за брисање",
+ "pt-deletepage-list-translation": "Странице за превођење",
+ "pt-deletepage-list-other": "Остале подстранице",
+ "pt-deletepage-list-count": "Укупно $1 {{PLURAL:$1|страница|странице|страница}} за брисање.",
+ "pm-import-button-label": "Увези",
+ "pm-savepages-button-label": "Сачувај",
+ "pm-cancel-button-label": "Откажи",
+ "pm-pagename-placeholder": "Унесите назив странице",
+ "pm-langcode-placeholder": "Код језика",
+ "pp-pagename-placeholder": "Унесите назив странице",
+ "pp-save-button-label": "Сачувај"
+}
diff --git a/MLEB/Translate/i18n/pagetranslation/sr-el.json b/MLEB/Translate/i18n/pagetranslation/sr-el.json
new file mode 100644
index 00000000..49e87811
--- /dev/null
+++ b/MLEB/Translate/i18n/pagetranslation/sr-el.json
@@ -0,0 +1,56 @@
+{
+ "@metadata": {
+ "authors": [
+ "Michaello",
+ "Milicevic01",
+ "Rancher"
+ ]
+ },
+ "right-pagetranslation": "označavanje izdanja stranica za prevod",
+ "tpt-diff-old": "Prethodni tekst",
+ "tpt-diff-new": "Sledeći tekst",
+ "tpt-submit": "Označi ovu verziju za prevod",
+ "tpt-rev-mark": "označi za prevođenje",
+ "tpt-rev-unmark": "ukloni iz prevoda",
+ "tpt-rev-discourage": "nepreporučeno",
+ "tpt-rev-encourage": "vrati",
+ "tpt-rev-mark-tooltip": "Označi poslednju verziju stranice kao „za prevođenje“.",
+ "tpt-rev-unmark-tooltip": "Ukloni stranicu iz prevoda.",
+ "tpt-rev-discourage-tooltip": "Postavi stranicu kao nepreporučenu za daljnje prevođenje.",
+ "tpt-rev-encourage-tooltip": "Vrati stranicu za normalno prevođenje.",
+ "translate-tag-translate-link-desc": "Prevedite ovu stranu",
+ "translate-tag-markthis": "Označi stranicu kao „za prevođenje“",
+ "tpt-translation-intro": "Ova stranica je <span class=\"plainlinks\">[$1 prevedeno izdanje]</span> stranice [[$2]]. Prevod je $3% završen.",
+ "tpt-languages-separator": "&#160;•&#32;",
+ "tpt-aggregategroup-edit-name": "Naziv:",
+ "tpt-aggregategroup-edit-description": "Opis:",
+ "tpt-aggregategroup-update": "Sačuvaj",
+ "tpt-aggregategroup-update-cancel": "Otkaži",
+ "log-name-pagetranslation": "Dnevnik prevoda stranica",
+ "pt-movepage-title": "Premeštanje prevodive stranice $1",
+ "pt-movepage-block-base-exists": "Ciljna osnovna stranica [[:$1]] postoji.",
+ "pt-movepage-block-base-invalid": "Cilj osnovne stranice ne predstavlja ispravan naslov.",
+ "pt-movepage-block-tp-exists": "Ciljna stranica za prevod [[:$2]] postoji.",
+ "pt-movepage-block-tp-invalid": "Naslov ciljne stranice za prevod za [[:$1]] bio bi neispravan (predugačak?).",
+ "pt-movepage-block-subpage-exists": "Ciljna podstranica [[:$2]] postoji.",
+ "pt-movepage-block-subpage-invalid": "Naslov ciljne podstranice za [[:$1]] bio bi neispravan (predugačak?).",
+ "pt-movepage-list-pages": "Spisak stranica za premeštanje",
+ "pt-movepage-list-translation": "Stranice za prevod",
+ "pt-movepage-list-other": "Druge podstranice",
+ "pt-movepage-list-count": "Ukupno $1 {{PLURAL:$1|stranica|stranice|stranica}} za premeštanje.",
+ "pt-movepage-legend": "Premesti prevodivu stranicu",
+ "pt-movepage-current": "Tekući naziv:",
+ "pt-movepage-new": "Novi naziv:",
+ "pt-movepage-reason": "Razlog:",
+ "pt-movepage-subpages": "Premesti sve podstranice",
+ "pt-movepage-action-check": "Proveri da li je premeštanje izvodljivo",
+ "pt-movepage-action-perform": "Premesti",
+ "pt-movepage-action-other": "Promeni cilj",
+ "pm-import-button-label": "Uvezi",
+ "pm-savepages-button-label": "Sačuvaj",
+ "pm-cancel-button-label": "Otkaži",
+ "pm-pagename-placeholder": "Unesite naziv stranice",
+ "pm-langcode-placeholder": "Kod jezika",
+ "pp-pagename-placeholder": "Unesite naziv stranice",
+ "pp-save-button-label": "Sačuvaj"
+}
diff --git a/MLEB/Translate/i18n/pagetranslation/stq.json b/MLEB/Translate/i18n/pagetranslation/stq.json
new file mode 100644
index 00000000..dbfe1c09
--- /dev/null
+++ b/MLEB/Translate/i18n/pagetranslation/stq.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Pyt"
+ ]
+ },
+ "translate-tag-translate-link-desc": "Disse Siede uursätte"
+}
diff --git a/MLEB/Translate/i18n/pagetranslation/su.json b/MLEB/Translate/i18n/pagetranslation/su.json
new file mode 100644
index 00000000..586e7600
--- /dev/null
+++ b/MLEB/Translate/i18n/pagetranslation/su.json
@@ -0,0 +1,18 @@
+{
+ "@metadata": {
+ "authors": [
+ "Kandar"
+ ]
+ },
+ "pagetranslation": "Alihbasa kaca",
+ "tpt-diff-old": "Téks saméméhna",
+ "tpt-diff-new": "Téks anyar",
+ "tpt-nosuchpage": "Kaca $1 euweuh.",
+ "pt-movepage-current": "Ngaran ayeuna:",
+ "pt-movepage-new": "Ngaran anyar:",
+ "pt-movepage-reason": "Alesan:",
+ "pt-movepage-subpages": "Pindahkeun sakabéh subkaca",
+ "pt-movepage-action-check": "Pariksa susuganan bisa dipindahkeun",
+ "pt-movepage-action-perform": "Pindahkeun",
+ "pt-movepage-action-other": "Ganti tujul"
+}
diff --git a/MLEB/Translate/i18n/pagetranslation/sv.json b/MLEB/Translate/i18n/pagetranslation/sv.json
new file mode 100644
index 00000000..2499af29
--- /dev/null
+++ b/MLEB/Translate/i18n/pagetranslation/sv.json
@@ -0,0 +1,208 @@
+{
+ "@metadata": {
+ "authors": [
+ "Ainali",
+ "Dafer45",
+ "Fluff",
+ "Jopparn",
+ "M.M.S.",
+ "Najami",
+ "Rotsee",
+ "Tobulos1",
+ "WikiPhoenix",
+ "Lokal Profil",
+ "McDutchie",
+ "Skärminspelning"
+ ]
+ },
+ "pagetranslation": "Sidöversättning",
+ "right-pagetranslation": "Märk versioner av sidor för översättning",
+ "action-pagetranslation": "hantera översättningsbara sidor",
+ "tpt-desc": "Programtillägg för översättning av innehållssidor",
+ "tpt-section": "Översättningsenhet $1",
+ "tpt-section-new": "Ny översättningsenhet.\nNamn: $1",
+ "tpt-section-deleted": "Översättningsenhet $1",
+ "tpt-template": "Sidmall",
+ "tpt-templatediff": "Sidmallen har ändrats.",
+ "tpt-diff-old": "Föregående text",
+ "tpt-diff-new": "Ny text",
+ "tpt-submit": "Märk den här versionen för översättning",
+ "tpt-sections-oldnew": "Nya och existerande översättningsenheter",
+ "tpt-sections-deleted": "Raderade översättningsenheter",
+ "tpt-sections-template": "Mall för översättningssida",
+ "tpt-action-nofuzzy": "Ogiltigförklara inte översättningar",
+ "tpt-badtitle": "Det angivna sidnammet ($1) är inte en giltlig titel",
+ "tpt-nosuchpage": "Sidan $1 finns inte",
+ "tpt-oldrevision": "$2 är inte den senaste versionen av sidan [[:$1]].\nEndast den senaste versionen kan märkas för översättning.",
+ "tpt-notsuitable": "Sidan $1 är inte redo för översättning.\nSe till att sidan har <nowiki><translate></nowiki>-taggar och att syntaxen är giltlig.",
+ "tpt-saveok": "Sidan [[:$1]] har märkts för översättning med {{PLURAL:$2|en översättningsdel|$2 översättningsdelar}}. Sidan kan nu <span class=\"plainlinks\">[$3 översättas]</span>.",
+ "tpt-offer-notify": "Du kan <span class=\"plainlinks\">[$1 meddela översättare]</span> om den här sidan.",
+ "tpt-badsect": "\"$1\" är inte ett giltigt namn för översättningsenheten $2.",
+ "tpt-showpage-intro": "Nedanför finns nya, existerande och raderade översättningsenheter uppradade.\nInnan den här versionen märks för översättning, kontrollera att ändringarna i översättningsenheterna är minimala för att undvika extra arbete för översättarna.",
+ "tpt-mark-summary": "Den här versionen är märkt för översättning",
+ "tpt-mark-nochanges": "Det är ingen skillnad mellan den här versionen och den senast markerade versionen.",
+ "tpt-edit-failed": "Sidan \"$1\" kunde inte uppdateras.",
+ "tpt-duplicate": "Översättningsenhetsnamnet $1 används mer än en gång.",
+ "tpt-already-marked": "Den senaste versionen av den här sidan har redan märkts för översättning.",
+ "tpt-unmarked": "Sidan $1 är inte längre markerad för översättning.",
+ "tpt-list-nopages": "Det finns inga sidor som är märkta för översättning eller är klara att märkas för översättning.",
+ "tpt-new-pages-title": "Sidor föreslagna för översättning",
+ "tpt-old-pages-title": "Sidor i översättning",
+ "tpt-other-pages-title": "Trasiga sidor",
+ "tpt-discouraged-pages-title": "Förhindrade sidor",
+ "tpt-new-pages": "{{PLURAL:$1|Den här sidan|De här sidorna}} innehåller text med översättningstaggar, men ingen version av {{PLURAL:$1|den här sidan|de här sidorna}} är märkt för översättning.",
+ "tpt-old-pages": "En version av {{PLURAL:$1|den här sidan|de här sidorna}} har märkts för översättning.",
+ "tpt-other-pages": "{{PLURAL:$1|En gammal version av den här sidan är markerad|Äldre versioner av dessa sidor är markerade}} för översättning,\nmen {{PLURAL:$1|den senaste versionen|de senaste versionerna}} kan inte markeras för översättning.",
+ "tpt-discouraged-pages": "{{PLURAL:$1|Denna sida|Dessa sidor}} har förhindrats från vidare översättning.",
+ "tpt-select-prioritylangs": "Kommaseparerad lista över prioriterade språkkoder:",
+ "tpt-select-prioritylangs-force": "Förhindra översättningar på andra språk än de prioriterade språken",
+ "tpt-select-prioritylangs-reason": "Anledning:",
+ "tpt-sections-prioritylangs": "Prioriterade språk",
+ "tpt-rev-mark": "markera för översättning",
+ "tpt-rev-unmark": "ta bort från översättning",
+ "tpt-rev-discourage": "förhindra",
+ "tpt-rev-encourage": "återställ",
+ "tpt-rev-mark-tooltip": "Markera den senaste versionen av denna sida för översättning.",
+ "tpt-rev-unmark-tooltip": "Ta bort denna sida från översättning.",
+ "tpt-rev-discourage-tooltip": "Förhindra vidare översättning på denna sida.",
+ "tpt-rev-encourage-tooltip": "Återställ denna sida till vanlig översättning.",
+ "translate-tag-translate-link-desc": "Översätt den här sidan",
+ "translate-tag-markthis": "Märk den här sidan för översättning",
+ "translate-tag-markthisagain": "Den här sidan har <span class=\"plainlinks\">[$1 förändringar]</span> sedan den senast <span class=\"plainlinks\">[$2 märktes för översättning]</span>.",
+ "translate-tag-hasnew": "Den här sidan innehåller <span class=\"plainlinks\">[$1 förändringar]</span> som inte är märkta för översättning.",
+ "tpt-translation-intro": "Det här är en <span class=\"plainlinks\">[$1 översatt version]</span> av sidan [[$2]]. Översättningen är till $3% färdig och uppdaterad.",
+ "tpt-languages-legend": "Andra språk:",
+ "tpt-languages-zero": "Starta översättning för detta språk",
+ "tpt-languages-nonzero": "$1 ($2 % översatt)",
+ "tpt-tab-translate": "Översätt",
+ "tpt-target-page": "Den här sidan kan inte uppdateras manuellt. Den här sidan är en översättning av [[$1]] och översättningen kan uppdateras genom att använda [$2 översättningsverktyget].",
+ "tpt-unknown-page": "Den här namnrymden är reserverad för översättningar av sidor. Sidan du försöker redigera verkar inte stämma överens med någon sida som är märkt för översättning.",
+ "tpt-translation-restricted": "Översättningar av denna sida har förhindrats av en översättningsadministratör.\n\nAnledningar: $1",
+ "tpt-discouraged-language-force-header": "Denna sida kan inte översättas till $1.",
+ "tpt-discouraged-language-force-content": "En översättningsadministratör har beslutat att denna sida enbart kan översättas till $1.",
+ "tpt-discouraged-language-header": "Översättning till $1 är inte en prioritet för denna sida.",
+ "tpt-discouraged-language-content": "En översättningsadministratör har beslutat att fokusera översättningsinsatserna till $1.",
+ "tpt-discouraged-language-force": "<strong>Denna sida kan inte översättas till $2.</strong>\n\nEn översättningsadministratör har beslutat att denna sida endast kan översättas till $3.",
+ "tpt-discouraged-language": "<strong>Översättning till $2 är inte en prioritering på denna sida.</strong>\n\nEn översättningsadministratör har beslutat att fokusera översättning på $3.",
+ "tpt-discouraged-language-reason": "Anledning: $1",
+ "tpt-priority-languages": "En översättningsadministratör har ställt in prioritetsspråken för denna grupp till $1.",
+ "tpt-render-summary": "Uppdaterar för att matcha den nya versionen av källpaketet",
+ "tpt-download-page": "Exportera sidan med översättningar",
+ "aggregategroups": "Samla grupper",
+ "tpt-aggregategroup-add": "Lägg till",
+ "tpt-aggregategroup-save": "Spara",
+ "tpt-aggregategroup-add-new": "Lägg till en ny samlad grupp",
+ "tpt-aggregategroup-new-name": "Namn:",
+ "tpt-aggregategroup-new-description": "Beskrivning (valfri):",
+ "tpt-aggregategroup-remove-confirm": "Är du säker på att du vill radera denna samlingsgrupp?",
+ "tpt-aggregategroup-invalid-group": "Gruppen finns inte",
+ "tpt-aggregategroup-edit-name": "Namn:",
+ "tpt-aggregategroup-edit-description": "Beskrivning:",
+ "tpt-aggregategroup-update": "Spara",
+ "tpt-aggregategroup-update-cancel": "Avbryt",
+ "tpt-invalid-group": "Ogiltig grupp",
+ "pt-parse-open": "Obalanserad &lt;translate>-tagg.\nÖversättningsmall: <pre>$1</pre>",
+ "pt-parse-close": "Obalanserad &lt;/translate>-tagg.\nÖversättningsmall: <pre>$1</pre>",
+ "pt-parse-nested": "Inbäddade &lt;translate>-översättningsenheter är inte tillåtna.\nTaggtext: <pre>$1</pre>",
+ "pt-shake-multiple": "Flera översättningsenhetsmarkörer för en översättningsenhet.\nÖversättningsenhetstext: <pre>$1</pre>",
+ "pt-shake-position": "Översättningsenhetsmarkörer i oväntad position.\nÖversättningsenhetstext: <pre>$1</pre>",
+ "pt-shake-empty": "Tom översättningsenhet för markör $1.",
+ "log-description-pagetranslation": "Logg för åtgärder som rör systemet för sidöversättning",
+ "log-name-pagetranslation": "Sidöversättningslogg",
+ "logentry-pagetranslation-mark": "$1 {{GENDER:$2|markerade}} $3 för översättning",
+ "logentry-pagetranslation-unmark": "$1 {{GENDER:$2|tog bort}} $3 för översättning",
+ "logentry-pagetranslation-moveok": "$1 {{GENDER:$2|slutförde}} namnändringen av översättningssidan $3 till $4",
+ "logentry-pagetranslation-movenok": "$1 {{GENDER:$2|stöte på}} ett problem när sidan $3 skulle flyttas till $4",
+ "logentry-pagetranslation-deletefok": "$1 {{GENDER:$2|slutförde}} raderingen av översättningssidan $3",
+ "logentry-pagetranslation-deletefnok": "$1 {{GENDER:$2|misslyckades}} att radera $3 som tillhör översättningssidan $4",
+ "logentry-pagetranslation-deletelok": "$1 {{GENDER:$2|slutförde}} radering av översättningssidan $3",
+ "logentry-pagetranslation-deletelnok": "$1 {{GENDER:$2|misslyckades}} att radera $3 som tillhör översättningssidan $4",
+ "logentry-pagetranslation-encourage": "$1 {{GENDER:$2|uppmuntrade}} översättningen av $3",
+ "logentry-pagetranslation-discourage": "$1 {{GENDER:$2|avråde}} översättning av $3",
+ "logentry-pagetranslation-prioritylanguages-unset": "$1 {{GENDER:$2|tog bort}} prioriterade språk från översättningsbar sida $3",
+ "logentry-pagetranslation-prioritylanguages": "$1 {{GENDER:$2|ställde in}} de prioriterade språken för översättbara sidan $3 till $5",
+ "logentry-pagetranslation-prioritylanguages-force": "$1 {{GENDER:$2|begränsade}} språken för översättbara sidan $3 till $5",
+ "logentry-pagetranslation-associate": "$1 {{GENDER:$2|lade till}} den översättbara sidan $3 till samlingsgruppen $4",
+ "logentry-pagetranslation-dissociate": "$1 {{GENDER:$2|tog bort}} den översättbara sidan $3 från samlingsgruppen $4",
+ "pt-movepage-title": "Flytta översättningsbar sida $1",
+ "pt-movepage-blockers": "Den översättningsbara sidan kan inte flyttas till ett nytt namn på grund av följande {{PLURAL:$1|fel|fel}}:",
+ "pt-movepage-block-base-exists": "Den översättningsbara målsidan \"[[:$1]]\" finns.",
+ "pt-movepage-block-base-invalid": "Den översättningsbara målsidans namn är inte en giltig titel.",
+ "pt-movepage-block-tp-exists": "Den översättningsbara målsidan \"[[:$2]]\" finns.",
+ "pt-movepage-block-tp-invalid": "Målöversättningssidans titel för \"[[:$1]]\" skulle bli ogiltig (för lång?).",
+ "pt-movepage-block-section-exists": "Målsidan \"[[:$2]]\" för översättningsenheten finns.",
+ "pt-movepage-block-section-invalid": "Målsidans titel för \"[[:$1]]\" för översättningsenheten skulle bli ogiltig (för lång?).",
+ "pt-movepage-block-subpage-exists": "Målundersidan \"[[:$2]]\" finns.",
+ "pt-movepage-block-subpage-invalid": "Målundersidans titel för \"[[:$1]]\" skulle bli ogiltig (för lång?).",
+ "pt-movepage-list-pages": "Lista över sidor att flytta",
+ "pt-movepage-list-translation": "Översättnings{{PLURAL:$1|sida|sidor}}",
+ "pt-movepage-list-section": "Översättningsenhets{{PLURAL:$1|sida|sidor}}",
+ "pt-movepage-list-other": "{{PLURAL:$1|Annan undersida|Andra undersidor}}",
+ "pt-movepage-list-count": "Totalt $1 {{PLURAL:$1|sida|sidor}} att flytta.",
+ "pt-movepage-legend": "Flytta översättningsbar sida",
+ "pt-movepage-current": "Nuvarande namn:",
+ "pt-movepage-new": "Nytt namn:",
+ "pt-movepage-reason": "Orsak:",
+ "pt-movepage-subpages": "Flytta alla undersidor",
+ "pt-movepage-action-check": "Kontrollera om flytten är möjligt",
+ "pt-movepage-action-perform": "Genomför flytten",
+ "pt-movepage-action-other": "Ändra mål",
+ "pt-movepage-intro": "Denna specialsida låter dig flytta sidor som är markerade för översättning.\nFlyttningsåtgärden kommer inte att vara omedelbar, eftersom många sidor kommer att behöva flyttas.\nMedan sidorna flyttas är det inte möjligt att interagera med dem.\nFel kommer att registreras i [[Special:Log/pagetranslation|sidöversättningsloggen]] och de behöver repareras manuellt.",
+ "pt-movepage-logreason": "Del av översättningsbar sida $1.",
+ "pt-movepage-started": "Bassidan är nu flyttad.\n\nKontrollera [[Special:Log/pagetranslation|loggen för sidöversättning]] efter fel och meddelande om att det slutförts.",
+ "pt-locked-page": "Denna sida är låst eftersom den översättningsbara sidan håller på att flyttas.",
+ "pt-deletepage-lang-title": "Raderar översättningssida $1.",
+ "pt-deletepage-full-title": "Raderar översättningsbar sida $1.",
+ "pt-deletepage-invalid-title": "Den angivna sidan är inte giltig.",
+ "pt-deletepage-invalid-text": "Den angivna sidan är varken en översättbar sida eller en översättningssida.",
+ "pt-deletepage-action-check": "Lista över sidor som ska tas bort",
+ "pt-deletepage-action-perform": "Utför raderingen",
+ "pt-deletepage-action-other": "Ändra mål",
+ "pt-deletepage-lang-legend": "Radera översättningssida",
+ "pt-deletepage-full-legend": "Radera översättningsbar sida",
+ "pt-deletepage-any-legend": "Radera översättbar sida eller översättningssida",
+ "pt-deletepage-current": "Sidnamn:",
+ "pt-deletepage-reason": "Anledning:",
+ "pt-deletepage-subpages": "Radera alla undersidor",
+ "pt-deletepage-list-pages": "Lista över sidor att radera",
+ "pt-deletepage-list-translation": "Översättningssidor",
+ "pt-deletepage-list-section": "Översättningsenhetssidor",
+ "pt-deletepage-list-other": "Andra undersidor",
+ "pt-deletepage-list-count": "Totalt $1 {{PLURAL:$1|sida|sidor}} att radera.",
+ "pt-deletepage-full-logreason": "Del av översättningsbar sida $1.",
+ "pt-deletepage-lang-logreason": "Del av översättningssida $1.",
+ "pt-deletepage-started": "Kontrollera [[Special:Log/pagetranslation|loggen för sidöversättning]] efter fel och meddelande om att det slutförts.",
+ "pt-deletepage-intro": "Denna specialsida låter dig radera en hel översättbar sida eller en enskild översättningssida på ett språk.\nRaderingsåtgärden kommer inte att vara omedelbar, eftersom alla beroende sidor också kommer att raderas.\nFel kommer att registreras i [[Special:Log/pagetranslation|sidöversättningsloggen]] och de behöver repareras manuellt.",
+ "pagemigration": "Sidmigrering",
+ "pagemigration-summary": "Ange en översättningssida och återställ de översättningar som gjorts innan översättningssystemet aktiverades på den sidan.",
+ "pm-import-button-label": "Importera",
+ "pm-savepages-button-label": "Spara",
+ "pm-cancel-button-label": "Avbryt",
+ "pm-pagename-placeholder": "Ange sidans namn",
+ "pm-langcode-placeholder": "Språkkod",
+ "pm-page-does-not-exist": "$1 finns inte",
+ "pm-old-translations-missing": "$1 innehåller inte gamla översättningar",
+ "pm-extra-units-warning": "Extra enheter kan förekomma. Vänligen matcha källan och översättningsenheterna korrekt",
+ "pm-pagename-missing": "Vänligen ange sidnamnet",
+ "pm-langcode-missing": "Vänligen ange språkkoden",
+ "pm-add-icon-hover-text": "Lägg till en enhet nedan",
+ "pm-swap-icon-hover-text": "Byt med enheten nedan",
+ "pm-delete-icon-hover-text": "Radera enhet",
+ "pm-pagetitle-invalid": "Ange en giltig sidtitel",
+ "pm-summary-import": "Översättning importerad med hjälpt av [[Special:PageMigration|sidmigrering]]",
+ "tpt-translate-title": "Tillåt översättning av sidans titel",
+ "pp-save-summary": "Förbered sidan för översättning",
+ "pagepreparation": "Förbered sida för översättning",
+ "pp-pagename-placeholder": "Ange sidans namn",
+ "pp-prepare-button-label": "Förbered",
+ "pp-save-button-label": "Spara",
+ "pp-save-message": "Sidan har sparats. Du kan [$1 redigera] den.",
+ "pp-prepare-message": "Sidan har förberetts för översättning. Se skillnaden nedan. Klicka på knappen \"{{int:pp-Spara-knappen-etikett}}\" om det är okej!",
+ "pp-already-prepared-message": "Det verkar sidan redan har förberetts för översättning. Det finns inga ändringar jämfört med den tidigare versionen.",
+ "pp-pagename-missing": "Var god ange sidans namn.",
+ "pp-diff-old-header": "Källtext",
+ "pp-diff-new-header": "Förberedd text",
+ "tpt-unlink-confirm": "Bekräfta att du verkligen vill ta bort denna sida från översättningssystemet.\nSpråkväljaren och översatta sidnamn kommer slutar att fungera.\nÖversättningssidorna kommer bli redigerbara.",
+ "tpt-unlink-button": "Ta bort från översättning",
+ "tpt-unlink-summary": "Tog bort sidan från översättning"
+}
diff --git a/MLEB/Translate/i18n/pagetranslation/sw.json b/MLEB/Translate/i18n/pagetranslation/sw.json
new file mode 100644
index 00000000..87807006
--- /dev/null
+++ b/MLEB/Translate/i18n/pagetranslation/sw.json
@@ -0,0 +1,15 @@
+{
+ "@metadata": {
+ "authors": [
+ "Kwisha"
+ ]
+ },
+ "tpt-select-prioritylangs-reason": "Sababu:",
+ "tpt-rev-discourage": "vunja moyo",
+ "tpt-rev-encourage": "rejesha",
+ "translate-tag-translate-link-desc": "Tafsiri ukurasa huu",
+ "tpt-languages-legend": "Lugha zingine:",
+ "tpt-discouraged-language-reason": "Sababu: $1",
+ "tpt-aggregategroup-add": "Ongeza",
+ "tpt-aggregategroup-save": "Hifadhi"
+}
diff --git a/MLEB/Translate/i18n/pagetranslation/ta.json b/MLEB/Translate/i18n/pagetranslation/ta.json
new file mode 100644
index 00000000..228b389b
--- /dev/null
+++ b/MLEB/Translate/i18n/pagetranslation/ta.json
@@ -0,0 +1,94 @@
+{
+ "@metadata": {
+ "authors": [
+ "Karthi.dr",
+ "Shanmugamp7",
+ "TRYPPN",
+ "மதனாஹரன்",
+ "Kalyanasundar",
+ "ElangoRamanujam"
+ ]
+ },
+ "pagetranslation": "பக்கத்தின் மொழிபெயர்ப்பு",
+ "right-pagetranslation": "மொழிபெயர்ப்புக்காக பக்கங்களின் பதிப்புகளை குறியிடு",
+ "tpt-desc": "உள்ளடக்க பக்கங்களை மொழிபெயர்க்க விரிவாக்கம்",
+ "tpt-section": "மொழிபெயர்ப்பு அலகு$1",
+ "tpt-section-new": "புதிய மொழிபெயர்ப்பு அலகு.\nபெயர்:$1",
+ "tpt-section-deleted": "மொழிபெயர்ப்பு அலகு$1",
+ "tpt-template": "பக்கத்தின் வார்ப்புரு",
+ "tpt-templatediff": "பக்க வார்ப்புரு மாற்றப்பட்டுள்ளது.",
+ "tpt-diff-old": "முந்தைய சொற்றொடர்",
+ "tpt-diff-new": "புதிய சொற்றொடர்",
+ "tpt-submit": "இந்த பதிப்பை மொழிபெயர்ப்புக்காக குறியிடு",
+ "tpt-sections-oldnew": "புதிய மற்றும் தற்போதுள்ள மொழிபெயர்ப்பு பிரிவுகள்",
+ "tpt-sections-deleted": "நீக்கப்பட்ட மொழிபெயர்ப்பு பிரிவுகள்",
+ "tpt-sections-template": "மொழிபெயர்ப்பு பக்க வார்ப்புரு",
+ "tpt-action-nofuzzy": "மொழிபெயர்ப்புகளை செல்லத்தாகாததாக்க வேண்டாம்.",
+ "tpt-badtitle": " தரப்பட்ட பக்க பெயர் ( $1 ) செல்லத்தக்க தலைப்பு இல்லை",
+ "tpt-nosuchpage": "பக்க $1 இல்லை",
+ "tpt-badsect": "மொழிபெயர்ப்பு அலகு $2 க்கு ''$1 \"ஒரு செல்லத்தக்க பெயர் அல்ல.",
+ "tpt-edit-failed": "$1 பக்கத்தை இற்றைப்படுத்த இயலவில்லை.",
+ "tpt-new-pages-title": "மொழிபெயர்ப்புக்குப் பரிந்துரைக்கப்பட்டுள்ள பக்கங்கள்",
+ "tpt-old-pages-title": "மொழிபெயர்க்கப்பட்டு வரும் பக்கங்கள்",
+ "tpt-other-pages-title": "உடைந்த பக்கங்கள்",
+ "tpt-select-prioritylangs-reason": "காரணம்:",
+ "tpt-sections-prioritylangs": "முன்னுரிமை தரப்பட்ட மொழிகள்",
+ "tpt-rev-mark": "மொழிபெயர்ப்புக்காக குறியிடு",
+ "tpt-rev-unmark": "மொழிபெயர்ப்பிலிருந்து நீக்கு",
+ "tpt-rev-discourage": "அதையரியப்படுத்து",
+ "tpt-rev-encourage": "மீட்டமை",
+ "tpt-rev-mark-tooltip": "இப்பக்கத்தின் சமீபத்திய பதிப்பை மொழிபெயர்ப்புக்காக குறியிடு.",
+ "tpt-rev-unmark-tooltip": "இப்பக்கத்தை மொழிபெயர்ப்பில் இருந்து நீக்கவும்.",
+ "tpt-rev-discourage-tooltip": "இந்த பக்கத்தில் மேலும் செய்யப்படும் மொழிபெயப்புகளை அதையரியப்படுத்து",
+ "tpt-rev-encourage-tooltip": "இப்பக்கத்தை சராசரி மொழிபெயர்ப்புக்கு மீட்டெடுக்கவும்.",
+ "translate-tag-translate-link-desc": "இப்பக்கத்தை மொழிபெயர்க்கவும்",
+ "translate-tag-markthis": "இந்த பக்கத்தை மொழிபெயர்ப்புக்காக குறியிடு",
+ "tpt-languages-legend": "மற்ற மொழிகள்:",
+ "tpt-languages-zero": "இம் மொழியின் சிறிய மொழிபெயர்ப்பு",
+ "tpt-translation-restricted": "இப்பக்கத்தை இந்த மொழிக்கு மொழிபெயர்ப்பது மொழிபெயர்ப்பு நிருவாகி ஒருவரால் காக்கப்பட்டுள்ளது.\n\nகாரணம்: $1",
+ "tpt-discouraged-language-reason": "காரணம்: $1",
+ "tpt-aggregategroup-add": "சேர்",
+ "tpt-aggregategroup-save": "சேமி",
+ "tpt-aggregategroup-new-name": "பெயர்:",
+ "tpt-aggregategroup-invalid-group": "இந்தக் குழு இல்லை.",
+ "pt-movepage-list-pages": "நகர்த்த வேண்டிய பக்கங்களின் பட்டியல்",
+ "pt-movepage-list-translation": "மொழிபெயர்ப்பு பக்கங்கள்",
+ "pt-movepage-list-section": "பிரிவு பக்கங்கள்",
+ "pt-movepage-list-other": "மற்ற துணைப்பக்கங்கள்",
+ "pt-movepage-list-count": "மொத்தம் $1 {{PLURAL:$1|பக்கம் |பக்கங்கள்}} நகர்த்த.",
+ "pt-movepage-legend": "மொழிபெயர்க்கதகுந்த பக்கத்தை நகர்த்து",
+ "pt-movepage-current": "நடப்பு பெயர்:",
+ "pt-movepage-new": "புதிய பெயர்:",
+ "pt-movepage-reason": "காரணம்:",
+ "pt-movepage-subpages": "எல்லா துணைப்பக்கங்களையும் நகர்த்து",
+ "pt-movepage-action-check": "இந்த நகர்த்தல் சாத்தியமானதா என சரிபார்",
+ "pt-movepage-action-perform": "நகர்த்தலை செய்யவும்",
+ "pt-movepage-action-other": "இலக்கை மாற்று",
+ "pt-movepage-logreason": "மொழிபெயர்க்க தகுந்த பக்கத்தின் பகுதி $1.",
+ "pt-movepage-started": "அடிப்படை பக்கம் இப்போது நகர்த்தப்பட்டுள்ளது.\nதயவுகூர்ந்து [[Special:Log/pagetranslation|பக்க மொழிபெயர்ப்பு குறிப்பேடு]] ல் பிழைகளை மற்றும் நிறைவு தகவலை சரிபார்க்கவும்.",
+ "pt-locked-page": "இப்பக்கம் பூட்டப்பட்டுள்ளது ஏனெனில் மொழிபெயர்க்கத்தகுந்த பக்கம் தற்போது நகர்த்தப்பட்டது.",
+ "pt-deletepage-lang-title": "மொழிபெயர்ப்பு பக்கம் $1 நீக்கப்படுகிறது.",
+ "pt-deletepage-full-title": "மொழிபெயர்க்கதகுந்த பக்கம் $1 நீக்கப்படுகிறது",
+ "pt-deletepage-invalid-title": "குறிப்பிட்ட பக்கம் செல்லத்தக்கது அல்ல.",
+ "pt-deletepage-invalid-text": "குறிப்பிட்ட பக்கம் ஒரு மொழிபெயர்ப்புசெய்யத்தகுந்த பக்கம் அல்லது அதன் மொழிபெயர்ப்பு அல்ல",
+ "pt-deletepage-action-check": "நீக்க வேண்டிய பக்கங்களை பட்டியலிடு",
+ "pt-deletepage-action-perform": "நீக்கலை செய்யவும்",
+ "pt-deletepage-action-other": "இலக்கை மாற்று",
+ "pt-deletepage-lang-legend": "மொழிபெயர்ப்பு பக்கத்தை நீக்கு",
+ "pt-deletepage-full-legend": "மொழிபெயர்க்கதகுந்த பக்கத்தை நீக்கு",
+ "pt-deletepage-any-legend": "மொழிபெயர்க்கத்தகுந்த பக்கம் அல்லது மொழிபெயர்க்கத்தகுந்த பக்கத்தின் மொழிபெயர்ப்பை நீக்கு",
+ "pt-deletepage-current": "பக்கப் பெயர்:",
+ "pt-deletepage-reason": "காரணம்:",
+ "pt-deletepage-subpages": "எல்லா துணைப்பக்கங்களையும் நீக்கு",
+ "pt-deletepage-list-pages": "நீக்கபடவேண்டிய பக்கங்களின் பட்டியல்",
+ "pt-deletepage-list-translation": "மொழிபெயர்ப்பு பக்கங்கள்",
+ "pt-deletepage-list-section": "பிரிவு பக்கங்கள்",
+ "pt-deletepage-list-other": "மற்ற துணைப்பக்கங்கள்",
+ "pt-deletepage-list-count": "மொத்தம் $1 {{PLURAL:$1|பக்கம் |பக்கங்கள்}} நீக்கப்பட.",
+ "pt-deletepage-full-logreason": "மொழிபெயர்க்க தகுந்த பக்கத்தின் பகுதி $1.",
+ "pt-deletepage-lang-logreason": "மொழிபெயர்ப்பு பக்கத்தின் பகுதி $1 .",
+ "pt-deletepage-started": "தயவுகூர்ந்து [[Special:Log/pagetranslation|பக்க மொழிபெயர்ப்பு குறிப்பேடு]] ல் பிழைகளை மற்றும் நிறைவு தகவலை சரிபார்க்கவும், .",
+ "pagemigration": "பக்க இடப்பெயர்வு",
+ "pm-page-does-not-exist": "$1 இ்டம்பெறவில்லை",
+ "pp-pagename-placeholder": "பக்கப் பெயரைப் பதிவிடுக"
+}
diff --git a/MLEB/Translate/i18n/pagetranslation/te.json b/MLEB/Translate/i18n/pagetranslation/te.json
new file mode 100644
index 00000000..90f5de78
--- /dev/null
+++ b/MLEB/Translate/i18n/pagetranslation/te.json
@@ -0,0 +1,59 @@
+{
+ "@metadata": {
+ "authors": [
+ "Kiranmayee",
+ "Veeven",
+ "Chaduvari"
+ ]
+ },
+ "pagetranslation": "పేజీ అనువాదం",
+ "right-pagetranslation": "పేజీల కూర్పులను అనువాదానికై గుర్తించడం",
+ "tpt-desc": "విషయపు పేజీలను అనువదించడానికై పొడగింత",
+ "tpt-section": "అనువాద విభాగం $1",
+ "tpt-section-new": "కొత్త అనువాద విభాగం. పేరు: $1",
+ "tpt-section-deleted": "అనువాద విభాగము $1",
+ "tpt-template": "పేజీ మూస",
+ "tpt-diff-old": "గత పాఠ్యం",
+ "tpt-diff-new": "కొత్త పాఠ్యం",
+ "tpt-sections-template": "అనువాద పేజీ మూస",
+ "tpt-badtitle": "ఇచ్చిన పేజీ పేరు ($1) సరైన శీర్షిక కాదు",
+ "tpt-nosuchpage": "$1 అనే పుట లేనే లేదు",
+ "tpt-edit-failed": "పేజీని తాజాకరించలేకపోయాం: $1",
+ "tpt-already-marked": "ఈ పేజీ యొక్క సరికొత్త కూర్పుని ఇప్పటికే అనువాదానికై గుర్తించారు.",
+ "tpt-select-prioritylangs-reason": "కారణం:",
+ "tpt-sections-prioritylangs": "ప్రాధాన్య భాషలు",
+ "tpt-rev-mark": "అనువాదం కోసం గుర్తు పెట్టు",
+ "tpt-rev-unmark": "అనువాదం నుంచి తీసివెయ్యి",
+ "tpt-rev-discourage": "నిరుత్సాహపరచు",
+ "tpt-rev-encourage": "పునస్థాపించు",
+ "tpt-rev-mark-tooltip": "ఈ పేజీ యొక్క సరికొత్త కూర్పుకు అనువాదం కోసం గుర్తుపెట్టు.",
+ "tpt-rev-unmark-tooltip": "ఈ పేజీని అనువాదం నుండి తీసివెయ్యి.",
+ "tpt-rev-discourage-tooltip": "ఈ పేజీలో ఇకపై అనువాదాలను నీరుగార్చు.",
+ "translate-tag-translate-link-desc": "ఈ పేజీని అనువదించండి",
+ "translate-tag-markthis": "ఈ పేజీని అనువాదం కొరకు గుర్తించు",
+ "translate-tag-markthisagain": "చివరిసారి <span class=\"plainlinks\">[$2 అనువాదానికి గుర్తించినప్పటి నుండి]</span> ఈ పేజీకి <span class=\"plainlinks\">[$1 మార్పులు]</span> జరిగాయి.",
+ "tpt-languages-legend": "ఇతర భాషలు:",
+ "tpt-aggregategroup-add": "చేర్చు",
+ "tpt-aggregategroup-save": "భద్రపరచు",
+ "tpt-aggregategroup-new-name": "పేరు:",
+ "tpt-aggregategroup-new-description": "వివరణ (ఐచ్చికం):",
+ "log-name-pagetranslation": "పేజీ అనువాదాల చిట్టా",
+ "pt-movepage-block-subpage-exists": "ఆ లక్ష్యిత ఉపపుట [[:$2]] ఉనికిలో ఉంది.",
+ "pt-movepage-list-pages": "తరలించాల్సిన పుటల యొక్క జాబితా",
+ "pt-movepage-list-translation": "అనువాద పుటలు",
+ "pt-movepage-list-other": "ఇతర ఉపపుటలు",
+ "pt-movepage-list-count": "మొత్తం తరలించాల్సినవి $1 {{PLURAL:$1|పుట|పుటలు}}.",
+ "pt-movepage-current": "ప్రస్తుత పేరు:",
+ "pt-movepage-new": "కొత్త పేరు:",
+ "pt-movepage-reason": "కారణం:",
+ "pt-deletepage-current": "పేజీ పేరు:",
+ "pt-deletepage-reason": "కారణం:",
+ "pt-deletepage-subpages": "అన్ని ఉపపేజీలను తొలగించు",
+ "pt-deletepage-list-translation": "అనువాద పేజీలు",
+ "pt-deletepage-list-other": "ఇతర ఉపపేజీలు",
+ "pm-import-button-label": "దిగుమతి చెయ్యి",
+ "pm-savepages-button-label": "భద్రపరచు",
+ "pm-cancel-button-label": "రద్దుచేయి",
+ "pm-pagename-placeholder": "మీ ప్రతికి పేరును ఇవ్వండి",
+ "pm-langcode-placeholder": "భాష సంకేతం"
+}
diff --git a/MLEB/Translate/i18n/pagetranslation/th.json b/MLEB/Translate/i18n/pagetranslation/th.json
new file mode 100644
index 00000000..b97b957f
--- /dev/null
+++ b/MLEB/Translate/i18n/pagetranslation/th.json
@@ -0,0 +1,46 @@
+{
+ "@metadata": {
+ "authors": [
+ "Ans",
+ "Passawuth",
+ "Woraponboonkerd"
+ ]
+ },
+ "pagetranslation": "การแปลภาษา",
+ "right-pagetranslation": "กำหนดให้รุ่นปรับปรุงนี้เพื่อการแปลภาษา",
+ "tpt-desc": "ส่วนเพิ่มเติมสำหรับหน้าที่มีการแปลเนื้อหา",
+ "tpt-section": "หน่วยการแปล $1",
+ "tpt-section-new": "หน่วยการแปลใหม่\n\nชื่อ: $1",
+ "tpt-section-deleted": "หน่วยการแปล $1",
+ "tpt-template": "แม่แบบของหน้า",
+ "tpt-templatediff": "แม่แบบของหน้านี้ได้ถูกเปลี่ยนแปลงแล้ว",
+ "tpt-diff-old": "อักษรก่อนหน้า",
+ "tpt-diff-new": "คำใหม่",
+ "tpt-submit": "กำหนดให้รุ่นนี้เพื่อการแปลภาษา",
+ "tpt-sections-oldnew": "หน่วยการแปลใหม่และที่มีอยู่เดิมแล้ว",
+ "tpt-sections-deleted": "หน่วยการแปลที่ถูกลบแล้ว",
+ "tpt-sections-template": "แม่แบบหน้าการแปลภาษา",
+ "tpt-badtitle": "ชื่อหน้าที่กำหนดมานั้น ($1) ไม่ใช่ชื่อหน้าที่ถูกต้อง",
+ "tpt-nosuchpage": "ไม่มีหน้า $1",
+ "tpt-oldrevision": "$2 ไม่ใช่รุ่นปรับปรุงล่าสุดของหน้าชื่อ[[:$1]]\n\nเฉพาะรุ่นปรับปรุงล่าสุดเท่านั้นที่สา่มารถกำหนดเพื่อการแปลภาษา",
+ "tpt-notsuitable": "หน้า $1 นั้นไม่เมาะสมในการแปลภาษา\n\nตรวจสอบให้แน่ใจว่ามีแท็ก <nowiki><translate></nowiki> อยู่และมีประโยคของโค้ดที่ถูกต้อง",
+ "tpt-saveok": "หน้า [[:$1]] ได้ถูกกำหนดไว้สำหรับการแปลภาษากับหน่วยการแปลภาษา $2 หน่วย\n\nหน้านี้สามารถ<span class=\"plainlinks\">[$3 เริ่มแปลภาษาได้แล้ว]</span>",
+ "tpt-badsect": "\"$1\" ไม่ใช่ชื่อที่ถูกต้องสำหรับหน่วยการแปลภาษา $2",
+ "tpt-showpage-intro": "ส่วนที่มีการเพิ่มใหม่, มีอยู่เดิม และที่ถูกลบไปแล้วนั้นปรากฎด้านล่างนี้\nก่อนที่จะทำให้รุ่นปรับปรุงนี้สำหรับการแปลภาษา ตรวจสอบให้แน่ใจว่าการเปลี่ยนแปลงของส่วนต่างๆ ได้ถูกลดลงมาเพื่อเป็นการหลีกเลี่ยงงานที่ไม่จำเป็นของผู้แปลภาษา",
+ "tpt-mark-summary": "กำหนดให้รุ่นปรับปรุงนี้สำหรับการแปลภาษา",
+ "tpt-edit-failed": "ไม่สามารถปรับปรุงหน้า: $1 ได้",
+ "tpt-already-marked": "รุ่นปรับปรุงล่าสุดของหน้านี้ได้ถูกกำหนดเพื่อการแปลภาษาแล้ว",
+ "tpt-list-nopages": "ไม่มีหน้าใดๆ ที่ถูกกำหนดเพื่อการแปลภาษา หรือพร้อมที่จะถูกกำหนดเพื่อการแปลภาษา",
+ "tpt-new-pages": "{{PLURAL:$1|หน้านี้|หน้าเหล่านี้}} มีที่คั่นสำหรับการแปลภาษาอยู่ แต่ไม่มีรุ่นปรับปรุงใดๆ เลยของ{{PLURAL:$1|หน้านี้|หน้าแหล่านี้}} ที่ได้ถูกกำหนดเพื่อการแปลภาษา",
+ "tpt-old-pages": "รุ่นปรับปรุงบางรุ่นของ{{PLURAL:$1|หน้านี้|หน้าต่างๆ เหล่านี้}} ได้ถูกกำหนดเพื่อการแปลภาษาแล้ว",
+ "tpt-rev-unmark": "ลบหน้านี้จากการแปล",
+ "translate-tag-translate-link-desc": "แปลหน้านี้",
+ "translate-tag-markthis": "กำหนดให้หน้านี้เพื่อการแปลภาษา",
+ "translate-tag-markthisagain": "หน้านี้มี<span class=\"plainlinks\">[$1 ความเปลี่ยนแปลง]</span> นับตั้งแต่ครั้งสุดท้ายที่<span class=\"plainlinks\">[$2 ถูกกำหนดเพื่อการแปลภาษา]</span>.",
+ "translate-tag-hasnew": "หน้านี้มี<span class=\"plainlinks\">[$1 ความเปลี่ยนแปลง]</span> ที่ไม่ได้ถูกกำหนดเพื่อการแปลภาษา",
+ "tpt-translation-intro": "หน้านี้คือ<span class=\"plainlinks\">[$1 รุ่นปรับปรุงที่เริ่มแปลแล้ว]</span> ของ [[$2]] และการแปลภาษาเสร็จสิ้นแล้ว $3 เปอร์เซ็นต์ของทั้งหมดและเป็นรุ่นล่าสุด",
+ "tpt-languages-legend": "ภาษาอื่นๆ:",
+ "tpt-target-page": "หน้านี้ไม่สามารถถูกปรับปรุงตามปกติได้\n\nหน้านี้เป็นหน้าการแปลของหน้า[[$1]] และสามารถปรับปรุงการแปลได้โดยใช้[เครื่องมือการแปล $2]",
+ "tpt-render-summary": "กำลังอัพเดตเพื่อทำให้ตรงกันกับรุ่นปรับปรุงใหม่ของหน้่าโค้ดหลัก",
+ "tpt-download-page": "ส่งหน้าออกไปพร้อมการแปลภาษา"
+}
diff --git a/MLEB/Translate/i18n/pagetranslation/tk.json b/MLEB/Translate/i18n/pagetranslation/tk.json
new file mode 100644
index 00000000..34727590
--- /dev/null
+++ b/MLEB/Translate/i18n/pagetranslation/tk.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Hanberke"
+ ]
+ },
+ "pagetranslation": "Terjime sahypasy"
+}
diff --git a/MLEB/Translate/i18n/pagetranslation/tl.json b/MLEB/Translate/i18n/pagetranslation/tl.json
new file mode 100644
index 00000000..30aff291
--- /dev/null
+++ b/MLEB/Translate/i18n/pagetranslation/tl.json
@@ -0,0 +1,143 @@
+{
+ "@metadata": {
+ "authors": [
+ "AnakngAraw",
+ "Jewel457"
+ ]
+ },
+ "pagetranslation": "Salinwika ng pahina",
+ "right-pagetranslation": "Tatakan ang mga bersyon ng mga pahinang isasalinwika",
+ "tpt-desc": "Dugtong para sa pagsasalinwika ng mga pahina ng nilalaman",
+ "tpt-section": "Yunit ng salinwika $1",
+ "tpt-section-new": "Bagong yunit ng salinwika.\nPangalan: $1",
+ "tpt-section-deleted": "Yunit ng salinwika $1",
+ "tpt-template": "Suleras ng pahina",
+ "tpt-templatediff": "Nabago na ang suleras ng pahina.",
+ "tpt-diff-old": "Naunang teksto",
+ "tpt-diff-new": "Bagong teksto",
+ "tpt-submit": "Tatakan ang bersyong ito para isalinwika",
+ "tpt-sections-oldnew": "Bago at umiiral ng mga yunit ng salinwika",
+ "tpt-sections-deleted": "Naburang mga yunit ng salinwika",
+ "tpt-sections-template": "Suleras ng pahina ng salinwika",
+ "tpt-action-nofuzzy": "Huwag hindi tanggapin ang mga salinwika",
+ "tpt-badtitle": "Ang pangalan ng pahinang ibinigay ($1) ay isang hindi tanggap na pamagat",
+ "tpt-nosuchpage": "Hindi umiiral ang pahinang $1",
+ "tpt-oldrevision": "Ang $2 ay hindi ang pinakabagong bersyon ng pahinang [[:$1]].\nTanging pinakabagong mga bersyong lang ang tatatakan para sa pagsasalinwika.",
+ "tpt-notsuitable": "Hindi angkop ang pahinang $1 para sa pagsasalinwika.\nTiyaking mayroon itong mga tatak na <nowiki><translate></nowiki> at may isang tanggap na sintaks.",
+ "tpt-saveok": "Nilagyang ng tanda ang pahinang [[:$1]] para sa pagsasalinwika na may $2 na {{PLURAL:$2|yunit ng salinwika|mga yunit ng salinwika}}.\nMaaari na ngayong <span class=\"plainlinks\">[$3 isalinwika]</span> ang pahina.",
+ "tpt-badsect": "Ang $1\" ay isang hindi tanggap na pangalan para sa yunit ng salinwikang $2.",
+ "tpt-showpage-intro": "Nakatala sa ibaba ang bago, umiiral at naburang mga yunit ng salinwika.\nBago tatakan ang bersyong ito para isalinwika, suriing nakauntian ang mga pagbabago sa mga yunit ng salinwika upang maiwasan ang hindi kailangang gawain para sa mga tagapagsalinwika.",
+ "tpt-mark-summary": "Tinatakan ang bersyong ito para isalinwika",
+ "tpt-edit-failed": "Hindi maisapanahon ang pahina: $1",
+ "tpt-duplicate": "Ang pangalan ng yunit ng salinwika na $1 ay ginagamit nang mas marami kaysa sa isa.",
+ "tpt-already-marked": "Ang huling bersyon ng pahinang ito ay natatakan na para sa pagsasalinwika.",
+ "tpt-unmarked": "Ang pahinang $1 ay hindi na tinatakan para sa pagsasalinwika.",
+ "tpt-list-nopages": "Walang mga pahinang tinatakan para sa pagsasalinwika o nakahanda upang markahan para sa pagsasalinwika.",
+ "tpt-new-pages-title": "Mga pahinang ipinanukala para sa pagsasalinwika",
+ "tpt-old-pages-title": "Mga pahinang nasa pagsasalinwika",
+ "tpt-other-pages-title": "Patid na mga pahina",
+ "tpt-discouraged-pages-title": "Mga pahinang hindi hinihimok",
+ "tpt-new-pages": "{{PLURAL:$1|Naglalaman ang pahinang ito|Naglalaman ang mga pahinang ito}} ng tekstong may mga tatak ng pagsasalinwika,\nngunit walang bersyon na {{PLURAL:$1|ang pahinang ito|ang mga pahinang ito}} ay kasalukuyang tinatakan para sa pagsasalinwika.",
+ "tpt-old-pages": "Ilang bersyon ng {{PLURAL:$1|pahinang ito|mga pahinang ito}} ay natatakan na para sa pagsasalinwika.",
+ "tpt-other-pages": "{{PLURAL:$1|Isang lumang bersyon ng pahinang ito ang|Mas lumang mga bersyon ng mga pahinang ito ang}} tinatakan para sa pagsasalinwika,\nsubalit ang pinakabagong {{PLURAL:$1|bersyon|mga bersyon}} ay hindi matatatakan para sa pagsasalinwika.",
+ "tpt-discouraged-pages": "{{PLURAL:$1|Ang pahinang ito|Ang mga pahinang ito}} ay hindi na hinihimok na magkaroon ng karagdagan pang pagsasalinwika.",
+ "tpt-select-prioritylangs": "Talaan ng mga kodigo ng mga wikang dapat unahin na pinaghihiwa-hiwalay ng mga kuwit:",
+ "tpt-select-prioritylangs-force": "Iwasan ang mga pagsasalinwika papunta sa ibang mga wika kaysa sa mga wikang dapat unahin",
+ "tpt-select-prioritylangs-reason": "Dahilan:",
+ "tpt-sections-prioritylangs": "Mga wikang nararapat na unahin",
+ "tpt-rev-mark": "minarkahan para sa pagsasalinwika",
+ "tpt-rev-unmark": "alisin mula sa pagsasalinwika",
+ "tpt-rev-discourage": "huwag himukin",
+ "tpt-rev-encourage": "papanumbalikin",
+ "tpt-rev-mark-tooltip": "Markahan ang pinakahuling bersiyon ng pahinang ito para sa pagsasalinwika.",
+ "tpt-rev-unmark-tooltip": "Alisin ang pahinang ito mula sa pagsasalinwika.",
+ "tpt-rev-discourage-tooltip": "Huwag nang himukin ang karagdagan pang mga pagsasalinwika sa pahinang ito.",
+ "tpt-rev-encourage-tooltip": "Papanumbalikin ang pahinang ito papunta sa normal na pagsasalinwika.",
+ "translate-tag-translate-link-desc": "Isalinwika ang pahinang ito",
+ "translate-tag-markthis": "Tatakan ang pahinang ito para isalinwika",
+ "translate-tag-markthisagain": "Ang pahinang ito ay may <span class=\"plainlinks\">[$1 mga pagbabago]</span> mula pa noong huli itong <span class=\"plainlinks\">[$2 tinatakan para isalinwika]</span>.",
+ "translate-tag-hasnew": "Naglalaman ang pahinang ito ng <span class=\"plainlinks\">[$1 mga pagbabagong]</span> hindi tinatakan para isalinwika.",
+ "tpt-translation-intro": "Ang pahinang ito ay isang <span class=\"plainlinks\">[$1 naisalinwikang bersyon]</span> ng isang pahina [[$2]] at ang salinwika ay $3% kumpleto na.",
+ "tpt-languages-legend": "Iba pang mga wika:",
+ "tpt-languages-separator": "&#160;•&#32;",
+ "tpt-languages-zero": "Simulan ang pagsasalinwika para sa wikang ito",
+ "tpt-target-page": "Hindi maaaring kinakamay na maisapanahon ang pahinang ito.\nAng pahinang ito ay isang salinwika ng pahinang [[$1]] at maisasapanahon ang salinwika sa pamamagitan ng [$2 kasangkapang pansalinwika].",
+ "tpt-unknown-page": "Nakalaan ang puwang na pampangalang ito para sa mga salinwika ng pahina ng nilalaman.\nTila hindi tumutugma ang pahinang sinusubukan mong baguhin sa anumang pahinang natatakan para sa pagsasalinwika.",
+ "tpt-translation-restricted": "Ang pagsasalinwika ng pahinang ito na papunta sa wikang ito ay pinigilan ng isang tagapangasiwa ng salinwika.\n\nDahilan: $1",
+ "tpt-discouraged-language-force": "<strong>Ang pahinang ito ay hindi maisasalinwika upang maging $2.</strong>\n\nIsang tagapangasiwa ng pagsasalinwika ang nagpasya na ang pahinang ito ay maisasalinwika lamang papunta sa $3.",
+ "tpt-discouraged-language": "<strong>Ang pagsasalinwika papunta sa $2 ay hindi isang nararapat na unahin para sa pahinang ito.</strong>\n\nIsang tagapangasiwa ng salinwika ang nagpasyang ituon ang mga pagsisikap ng pagsasalinwika sa $3.",
+ "tpt-discouraged-language-reason": "Dahilan: $1",
+ "tpt-priority-languages": "Isang tagapangasiwa ng salinwika ang nagtakda ng mga wikang nararapat na unahin para sa pangkat na ito upang maging $1.",
+ "tpt-render-summary": "Isinasapanahon upang tumugma sa bagong bersyon ng pinagmulang pahina",
+ "tpt-download-page": "Iluwas ang pahinang may mga pagsasalinwika",
+ "aggregategroups": "Mga pangkat na pinagsama-sama",
+ "tpt-aggregategroup-add": "Idagdag",
+ "tpt-aggregategroup-save": "Itala",
+ "tpt-aggregategroup-add-new": "Magdagdag ng isang bagong pangkat na pinagsama",
+ "tpt-aggregategroup-new-name": "Pangalan:",
+ "tpt-aggregategroup-new-description": "Paglalarawan (maaaring wala nito):",
+ "tpt-aggregategroup-remove-confirm": "Nakatitiyak ka bang nais mong burahin ang pinagsamang pangkat na ito?",
+ "tpt-aggregategroup-invalid-group": "Hindi umiiral ang pangkat",
+ "tpt-aggregategroup-edit-name": "Pangalan:",
+ "tpt-aggregategroup-update": "Itala",
+ "pt-parse-open": "Hindi magkatimbang na tatak na &lt;translate>.\nSuleras ng pagsasalinwika: <pre>$1</pre>",
+ "pt-parse-close": "Hindi magkatimbang na tatak na &lt;translate>.\nSuleras ng pagsasalinwika: <pre>$1</pre>",
+ "pt-parse-nested": "Hindi pinapayagan ang nakapugad na mga yunit ng salinwika &lt;translate>.\nTeksto ng tatak: <pre>$1</pre>",
+ "pt-shake-multiple": "Mga pananda ng maramihang yunit ng salinwika para sa isang yunit ng salinwika.\nTeksto ng yunit ng salinwika: <pre>$1</pre>",
+ "pt-shake-position": "Mga pananda ng yunit ng salinwika sa loob ng posisyong hindi inaasahan.\nTeksto ng yunit ng salinwika: <pre>$1</pre>",
+ "pt-shake-empty": "Yunit ng salinwika na walang laman para sa panandang \"$1\".",
+ "log-description-pagetranslation": "Itala para sa mga gawaing may kaugnayan sa sistema ng pagsasalinwika ng pahina",
+ "log-name-pagetranslation": "Tala ng pagsasalinwika ng pahina",
+ "pt-movepage-title": "Ilipat ang maisasalinwikang pahinang $1",
+ "pt-movepage-blockers": "Hindi malilipat ang maisasalinwikang pahina papunta sa bagong pangalan dahil sa sumusunod na {{PLURAL:$1|kamalian|mga kamalian}}:",
+ "pt-movepage-block-base-exists": "Umiiral ang puntiryang batayang pahina na [[:$1]].",
+ "pt-movepage-block-base-invalid": "Hindi isang tanggap na pamagat ang puntiryang batayang pahina.",
+ "pt-movepage-block-tp-exists": "Umiiral ang puntiryang pahina ng salinwika na [[:$2]].",
+ "pt-movepage-block-tp-invalid": "Ang pinupukol na pamagat ng pahinang maisasalinwika para sa [[:$1]] ay hindi matatanggap (napakahaba?).",
+ "pt-movepage-block-section-exists": "Umiiral ang pahina ng yunit ng salinwikang pinupukol na \"[[:$2]]\".",
+ "pt-movepage-block-section-invalid": "Ang pamagat ng pahina ng seksiyong pinupukol para sa \"[[:$1]]\" na para sa yunit ng salinwika ay hindi magiging katanggap-tanggap (napakahaba?).",
+ "pt-movepage-block-subpage-exists": "Umiiral ang pinupukol na kabahaging pahinang [[:$2]].",
+ "pt-movepage-block-subpage-invalid": "Ang pinupukol na pamagat ng kabahaging pahina para sa [[:$1]] ay hindi matatanggap (napakahaba?).",
+ "pt-movepage-list-pages": "Talaan ng mga pahinang ililipat",
+ "pt-movepage-list-translation": "Mga pahina ng salinwika",
+ "pt-movepage-list-section": "Mga pahina ng yunit ng salinwika",
+ "pt-movepage-list-other": "Iba pang kabahaging mga pahina",
+ "pt-movepage-list-count": "Sa kabuuan ay $1 ang {{PLURAL:$1|pahina|mga pahina}}ng ililipat.",
+ "pt-movepage-legend": "Ilipat ang pahinang maisasalinwika",
+ "pt-movepage-current": "Kasalukuyang pangalan:",
+ "pt-movepage-new": "Bagong pangalan:",
+ "pt-movepage-reason": "Dahilan:",
+ "pt-movepage-subpages": "Ilipat ang lahat ng kabahaging mga pahina",
+ "pt-movepage-action-check": "Suriin kung maaari ang paglilipat",
+ "pt-movepage-action-perform": "Gawin ang paglipat",
+ "pt-movepage-action-other": "Baguhin ang pinupukol",
+ "pt-movepage-intro": "Ang natatanging pahinang ito ay nagpapahintulot sa iyong mailipat ang mga pahinang minarkahan para sa pagsasalinwika.\nAng galaw ng paglipat ay hindi magiging kaagad-agad, dahil maraming mga pahina ang kailangang ilipat.\nHabang inililipat ang mga pahina, hindi maaaring kasalamuhain ang mga pahinang tinutukoy.\nAng mga kabiguan ay itatala sa loob ng [[Special:Log/pagetranslation|talaan ng pagsasalinwika ng pahina]] at nangangailangan sila ng kinakamay na pagkukumpuni.",
+ "pt-movepage-logreason": "Bahagi ng maisasalinwikang pahinang $1.",
+ "pt-movepage-started": "Nailipat na ngayon ang pahinang batayan.\nPakisuri ang [[Special:Log/pagetranslation|talaan ng pagsasalinwika ng pahina]] para sa mga kamalian at mensahe ng pagkakabuo.",
+ "pt-locked-page": "Ikinandao ang pahinang ito dahil ang pahinang maisasalinwika ay kasalukuyang inililipat.",
+ "pt-deletepage-lang-title": "Binubura ang pahina ng salinwikang $1.",
+ "pt-deletepage-full-title": "Binubura ang maisasalinwikang pahina na $1.",
+ "pt-deletepage-invalid-title": "Hindi katanggap-tanggap ang tinukoy na pahina.",
+ "pt-deletepage-invalid-text": "Ang tinukoy na pahina ay hindi isang pahinang maisasalinwika o salinwika kaya nito.",
+ "pt-deletepage-action-check": "Ilista ang mga pahinang buburahin",
+ "pt-deletepage-action-perform": "Gawin ang pagbura",
+ "pt-deletepage-action-other": "Baguhin ang puntirya",
+ "pt-deletepage-lang-legend": "Burahin ang pahina ng salinwika",
+ "pt-deletepage-full-legend": "Burahin ang pahinang maisasalinwika",
+ "pt-deletepage-any-legend": "Burahin ang maisasalinwikang pahina o salinwika ng maisasalinwikang pahina",
+ "pt-deletepage-current": "Pangalan ng pahina:",
+ "pt-deletepage-reason": "Dahilan:",
+ "pt-deletepage-subpages": "Burahin ang lahat ng kabahaging mga pahina",
+ "pt-deletepage-list-pages": "Talaan ng mga pahinang buburahin",
+ "pt-deletepage-list-translation": "Mga pahina ng salinwika",
+ "pt-deletepage-list-section": "Mga pahina ng yunit ng salinwika",
+ "pt-deletepage-list-other": "Iba pang kabahaging mga pahina",
+ "pt-deletepage-list-count": "Sa kabuuan ay $1 ang {{PLURAL:$1|pahina|mga pahina}}ng buburahin.",
+ "pt-deletepage-full-logreason": "Bahagi ng maisasalinwikang pahinang $1.",
+ "pt-deletepage-lang-logreason": "Bahagi ng pahina ng salinwikang $1.",
+ "pt-deletepage-started": "Pakisuri ang [[Special:Log/pagetranslation|talaan ng pagsasalinwika ng pahina]] para sa mga kamalian at mensahe ng pagkakabuo.",
+ "pt-deletepage-intro": "Nagpapahintulot sa iyo ang pahinang ito na magbura ng kabuuan ng mga pahinang maisasalinwika o mga pagsasalinwika na papunta sa isang wika.\nAng kilos ng pagbura ay hindi magiging kaagad, dahil maraming mga pahina ang kakailanganing burahin.\nAng mga kabiguan ay itatala sa loob ng [[Special:Log/pagetranslation|tala ng pagsasalinwika ng pahina]] at kakailanganing kinakamay ang pagkukumpuni ng mga ito.",
+ "pm-savepages-button-label": "Itala",
+ "pm-pagename-placeholder": "Itala ang pangalan ng pahina",
+ "tpt-translate-title": "Payagan ang pagsasalin ng pamagat ng pahina"
+}
diff --git a/MLEB/Translate/i18n/pagetranslation/tr.json b/MLEB/Translate/i18n/pagetranslation/tr.json
new file mode 100644
index 00000000..629ed80a
--- /dev/null
+++ b/MLEB/Translate/i18n/pagetranslation/tr.json
@@ -0,0 +1,74 @@
+{
+ "@metadata": {
+ "authors": [
+ "Emperyan",
+ "Incelemeelemani",
+ "Joseph",
+ "Karduelis",
+ "Meelo",
+ "Suelnur",
+ "Vito Genovese",
+ "Rapsar",
+ "Mavrikant",
+ "Sayginer"
+ ]
+ },
+ "pagetranslation": "Çeviri sayfası",
+ "right-pagetranslation": "Sayfa sürümlerini çeviri için işaretler",
+ "tpt-desc": "İçerik sayfalarının çevirisi için eklenti",
+ "tpt-section": "Çeviri birimi $1",
+ "tpt-section-new": "Yeni çeviri birimi.\nAd: $1",
+ "tpt-section-deleted": "Çeviri birimi $1",
+ "tpt-template": "Sayfa şablonu",
+ "tpt-templatediff": "Sayfa şablonu değişti.",
+ "tpt-diff-old": "Önceki metin",
+ "tpt-diff-new": "Yeni metin",
+ "tpt-submit": "Bu sürümü çeviri için işaretle",
+ "tpt-sections-oldnew": "Yeni ve mevcut çeviri birimleri",
+ "tpt-sections-deleted": "Silinen çeviri birimleri",
+ "tpt-sections-template": "Çeviri sayfası şablonu",
+ "tpt-badtitle": "Verilen sayfa adı ($1) geçerli bir başlık değil",
+ "tpt-oldrevision": "$2, [[:$1]] sayfasının en son sürümü değil.\nSadece en son sürümler çeviri için işaretlenebilir.",
+ "tpt-saveok": "[[:$1]] adlı sayfa $2 {{PLURAL:$2|çeviri birimi|çeviri birimi}} ile çeviri için işaretlenmiş.\nSayfa artık <span class=\"plainlinks\">[$3 çevrilebilir]</span>.",
+ "tpt-badsect": "\"$1\", $2 çeviri birimi için geçerli bir ad değil.",
+ "tpt-showpage-intro": "Aşağıda yeni, mevcut ve silinmiş çeviri birimleri listelenmiştir.\nBu sürümü çeviri için işaretlemeden önce, çevirmenlere gereksiz iş çıkarmamak için çeviri birimlerinde yapılan değişikliklerin asgari seviyede olduğundan emin olun.",
+ "tpt-mark-summary": "Bu sürüm çeviri için işaretlendi",
+ "tpt-mark-nochanges": "Bu sürüm ile kontrol edilmiş son sürüm arasında hiçbir fark yoktur.",
+ "tpt-edit-failed": "Sayfa güncellenemedi: $1",
+ "tpt-already-marked": "Bu sayfanın en son sürümü çeviri için işaretlenmiş.",
+ "tpt-list-nopages": "Çeviri için işaretlenen ya da işaretlenmeye hazır olan herhangi bir sayfa bulunmuyor.",
+ "tpt-old-pages-title": "Çeviri sayfası",
+ "tpt-old-pages": "{{PLURAL:$1|Bu sayfanın|Bu sayfaların}} bazı sürümleri çeviri için işaretlenmiş.",
+ "translate-tag-translate-link-desc": "Bu sayfayı çevir",
+ "translate-tag-markthis": "Bu sayfayı çeviri için işaretle",
+ "translate-tag-hasnew": "Bu sayfa, çeviri için işaretlenmemiş <span class=\"plainlinks\">[$1 değişiklik]</span> içeriyor.",
+ "tpt-translation-intro": "Bu sayfa, [[$2]] sayfasının <span class=\"plainlinks\">[$1 çevrilmiş bir sürümüdür]</span> ve çeviri %$3 oranında tamamlanmıştır.",
+ "tpt-languages-legend": "Diğer diller:",
+ "tpt-render-summary": "Kaynak sayfanın yeni sürümü ile eşleme için güncelleniyor",
+ "tpt-download-page": "Çevirileri olan sayfayı dışa aktar",
+ "aggregategroups": "Grupları birleştir",
+ "tpt-aggregategroup-add": "Ekle",
+ "tpt-aggregategroup-save": "Kaydet",
+ "tpt-aggregategroup-new-name": "Ad:",
+ "tpt-aggregategroup-new-description": "Açıklama (isteğe bağlı):",
+ "tpt-invalid-group": "Geçersiz grup",
+ "pt-movepage-list-other": "Diğer alt {{PLURAL:$1|sayfalar|sayfalar}}",
+ "pt-movepage-current": "Geçerli adı:",
+ "pt-movepage-new": "Yeni adı:",
+ "pt-movepage-subpages": "Tüm alt sayfaları taşı",
+ "pt-deletepage-current": "Sayfa adı:",
+ "pt-deletepage-subpages": "Tüm alt sayfaları sil",
+ "pm-import-button-label": "İçe aktar",
+ "pm-savepages-button-label": "Kaydet",
+ "pm-cancel-button-label": "İptal",
+ "pm-pagename-placeholder": "Sayfa adını giriniz",
+ "pm-langcode-placeholder": "Dil kodu",
+ "pm-page-does-not-exist": "$1 mevcut değil.",
+ "pm-pagename-missing": "Lütfen sayfa adı girin.",
+ "pm-langcode-missing": "Lütfen dil kodunu girin.",
+ "pm-pagetitle-invalid": "Lütfen geçerli bir sayfa başlığı girin",
+ "pp-pagename-placeholder": "Sayfa adı girin",
+ "pp-save-button-label": "Kaydet",
+ "pp-save-message": "Sayfa kaydedildi. Artık [$1 düzenleme] yapabilirsiniz.",
+ "pp-pagename-missing": "Lütfen sayfa adı girin."
+}
diff --git a/MLEB/Translate/i18n/pagetranslation/tt-cyrl.json b/MLEB/Translate/i18n/pagetranslation/tt-cyrl.json
new file mode 100644
index 00000000..bba3a0bc
--- /dev/null
+++ b/MLEB/Translate/i18n/pagetranslation/tt-cyrl.json
@@ -0,0 +1,12 @@
+{
+ "@metadata": {
+ "authors": [
+ "Ильнар",
+ "Рашат Якупов"
+ ]
+ },
+ "pagetranslation": "Битләр тәрҗемәсе",
+ "tpt-diff-new": "Яңа текст",
+ "translate-tag-translate-link-desc": "Бу битне тәрҗемә итү",
+ "tpt-translation-intro": "Әлеге бит [[$2]] сәхифәсенең <span class=\"plainlinks\">[$1 тәрҗемәсе булып тора]</span>. Тәрҗемә $3% башкарылган."
+}
diff --git a/MLEB/Translate/i18n/pagetranslation/tzm.json b/MLEB/Translate/i18n/pagetranslation/tzm.json
new file mode 100644
index 00000000..4f078147
--- /dev/null
+++ b/MLEB/Translate/i18n/pagetranslation/tzm.json
@@ -0,0 +1,20 @@
+{
+ "@metadata": {
+ "authors": [
+ "Tifinaghes"
+ ]
+ },
+ "pagetranslation": "ⵜⴰⵙⵓⵖⵍⵜ ⵏ ⵜⴰⵙⵏⴰ",
+ "tpt-template": "ⵜⴰⵍⵖⴰ ⵏ ⵜⴰⵙⵏⴰ",
+ "tpt-diff-new": "ⴰⴹⵔⵉⵙ ⴰⵎⴰⵢⵏⵓ",
+ "tpt-select-prioritylangs-reason": "ⴰⵙⵔⴰⴳ:",
+ "tpt-languages-legend": "ⵜⵓⵜⵍⴰⵢⵉⵏ ⵢⴰⴹⵏⵉ:",
+ "tpt-aggregategroup-add": "ⵔⵏⵓ",
+ "tpt-aggregategroup-save": "ⵣⵎⵎⴻⵎ",
+ "tpt-aggregategroup-new-name": "ⴰⵙⵙⴰⵖ:",
+ "pt-movepage-current": "ⴰⵙⵙⴰⵖ ⵏ ⵖⵉⵍⴰ:",
+ "pt-movepage-new": "ⴰⵙⵙⴰⵖ ⴰⵎⴰⵢⵏⵓ:",
+ "pt-movepage-reason": "ⴰⵙⵔⴰⴳ:",
+ "pt-deletepage-current": "ⴰⵙⵙⴰⵖ ⵏ ⵜⴰⵙⵏⴰ:",
+ "pt-deletepage-reason": "ⴰⵙⵔⴰⴳ:"
+}
diff --git a/MLEB/Translate/i18n/pagetranslation/ug-arab.json b/MLEB/Translate/i18n/pagetranslation/ug-arab.json
new file mode 100644
index 00000000..00282c80
--- /dev/null
+++ b/MLEB/Translate/i18n/pagetranslation/ug-arab.json
@@ -0,0 +1,76 @@
+{
+ "@metadata": {
+ "authors": [
+ "Sahran",
+ "Tel'et"
+ ]
+ },
+ "pagetranslation": "بەت تەرجىمە",
+ "tpt-section": "$1 تەرجىمە بۆلىكى",
+ "tpt-section-new": "يېڭى تەرجىمە بۆلىكى.\nئاتى: $1",
+ "tpt-section-deleted": "$1 تەرجىمە بۆلىكى",
+ "tpt-template": "بەت قېلىپى",
+ "tpt-templatediff": "بەت قېلىپى ئۆزگەردى.",
+ "tpt-diff-old": "ئالدىنقى تېكست",
+ "tpt-diff-new": "يېڭى تېكست",
+ "tpt-sections-template": "تەرجىمە بېتى قېلىپى",
+ "tpt-nosuchpage": "$1 بەت مەۋجۇت ئەمەس",
+ "tpt-old-pages-title": "تەرجىمە قىلىۋاتقان بەتلەر",
+ "tpt-other-pages-title": "بۇزۇلغان بەتلەر",
+ "tpt-discouraged-pages-title": "تەۋسىيە قىلىنمايدىغان بەتلەر",
+ "tpt-select-prioritylangs": "پەش بىلەن ئايرىلغان ئالدىنلىق تىل تىزىمى كودى:",
+ "tpt-select-prioritylangs-force": "ئالدىنلىق تىلدىن باشقا تىلغا تەرجىمە قىلىشنىڭ ئالدىنى ئالىدۇ",
+ "tpt-select-prioritylangs-reason": "سەۋەب:",
+ "tpt-sections-prioritylangs": "ئالدىنلىق تىل",
+ "tpt-rev-mark": "تەرجىمە بەلگىسى",
+ "tpt-rev-unmark": "تەرجىمىدىن چىقىرىۋەت",
+ "tpt-rev-discourage": "توسالغۇ",
+ "tpt-rev-encourage": "ئەسلىگە كەلتۈر",
+ "tpt-rev-unmark-tooltip": "تەرجىمىدىن بۇ بەتنى چىقىرىۋەت",
+ "tpt-rev-discourage-tooltip": "بۇ بەتنى يەنىمۇ ئىلگىرىلەپ تەرجىمە قىلىشتىكى توسالغۇ",
+ "tpt-rev-encourage-tooltip": "بۇ بەتنى ئادەتتىكى تەرجىمە ھالىتىگە ئەسلىگە كەلتۈرىدۇ.",
+ "translate-tag-translate-link-desc": "بۇ بەتنى تەرجىمە قىل",
+ "translate-tag-markthis": "تەرجىمە ئۈچۈن بۇ بەتكە بەلگە سال",
+ "tpt-languages-legend": "باشقا تىل",
+ "tpt-tab-translate": "تەرجىمە",
+ "tpt-discouraged-language-reason": "سەۋەپ: $1",
+ "tpt-priority-languages": "تەرجىمە باشقۇرغۇچى بۇ گۇرۇپپا ئالدىن تەرجىمە قىلىدىغان تىلنى $1 غا تەڭشىدى.",
+ "tpt-render-summary": "ئەسلى بەت بىلەن ماسلىشىدىغان يېڭى نەشرىگە يېڭىلاۋاتىدۇ",
+ "tpt-download-page": "تەرجىمىسى بار بەتنى چىقار",
+ "aggregategroups": "توپلانما گۇرۇپپا",
+ "tpt-aggregategroup-add": "قوش",
+ "tpt-aggregategroup-save": "ساقلا",
+ "tpt-aggregategroup-add-new": "يېڭى بىر توپلانما گۇرۇپپا قوش",
+ "tpt-aggregategroup-new-name": "ئاتى:",
+ "tpt-aggregategroup-new-description": "چۈشەندۈرۈش (تاللاشچان):",
+ "tpt-aggregategroup-remove-confirm": "راستلا بۇ توپلانما گۇرۇپپىنى ئۆچۈرەمسىز؟",
+ "tpt-aggregategroup-invalid-group": "گۇرۇپپا مەۋجۇت ئەمەس",
+ "pt-movepage-list-pages": "يۆتكەيدىغان بەتلەرنىڭ تىزىمى",
+ "pt-movepage-list-translation": "تەرجىمە قىلىدىغان {{PLURAL:$1|بەتلەر}}",
+ "pt-movepage-list-section": "بۆلەك بەتلەر",
+ "pt-movepage-list-other": "باشقا تارماق {{PLURAL:$1|بەتلەر}}",
+ "pt-movepage-list-count": "جەمئى {{PLURAL:$1|بەت|بەت}} يۆتكىدى.",
+ "pt-movepage-legend": "تەرجىمە قىلغىلى بولىدىغان بەتنى يۆتكە",
+ "pt-movepage-current": "نۆۋەتتىكى ئاتى:",
+ "pt-movepage-new": "يېڭى ئات:",
+ "pt-movepage-reason": "سەۋەب:",
+ "pt-movepage-subpages": "ھەممە تارماق بەتنى يۆتكە",
+ "pt-movepage-action-check": "يۆتكەشچانلىقىنى تەكشۈر",
+ "pt-movepage-action-perform": "يۆتكەشنى جەزملە",
+ "pt-movepage-action-other": "نىشاننى ئۆزگەرت",
+ "pt-deletepage-lang-title": "تەرجىمە بەت \"$1\" نى ئۆچۈرىدۇ.",
+ "pt-deletepage-full-title": "تەرجىمە قىلغىلى بولىدىغان بەت $1 نى ئۆچۈرىدۇ.",
+ "pt-deletepage-invalid-title": "بەلگىلەنگەن بەت ئىناۋەتلىك ئەمەس.",
+ "pt-deletepage-invalid-text": "بەلگىلەنگەن بەت تەرجىمە قىلغىلى بولىدىغان بەت بولمىسىمۇ ئۇنى تەرجىمە قىلىدۇ.",
+ "pt-deletepage-action-check": "ئۆچۈرىدىغان تىزىم بەتلەر",
+ "pt-deletepage-action-perform": "ئۆچۈر",
+ "pt-deletepage-action-other": "نىشاننى ئۆزگەرت",
+ "pt-deletepage-lang-legend": "تەرجىمە بەتنى ئۆچۈر",
+ "pt-deletepage-full-legend": "تەرجىمە قىلغىلى بولىدىغان بەتنى ئۆچۈر",
+ "pt-deletepage-any-legend": "تەرجىمە قىلغىلى بولىدىغان بەتنى ئۆچۈر ياكى تەرجىمە قىلغىلى بولىدىغان بەتنىڭ تەرجىمىسى",
+ "pt-deletepage-current": "بەت ئاتى:",
+ "pt-deletepage-reason": "سەۋەب:",
+ "pt-deletepage-subpages": "ھەممە تارماق بەتنى ئۆچۈر",
+ "pt-deletepage-list-translation": "تەرجىمە قىلىدىغان بەتلەر",
+ "pt-deletepage-list-other": "باشقا تارماق بەتلەر"
+}
diff --git a/MLEB/Translate/i18n/pagetranslation/uk.json b/MLEB/Translate/i18n/pagetranslation/uk.json
new file mode 100644
index 00000000..79de9ec4
--- /dev/null
+++ b/MLEB/Translate/i18n/pagetranslation/uk.json
@@ -0,0 +1,200 @@
+{
+ "@metadata": {
+ "authors": [
+ "A1",
+ "AS",
+ "Ahonc",
+ "Andriykopanytsia",
+ "Base",
+ "Hypers",
+ "NickK",
+ "Olvin",
+ "Prima klasy4na",
+ "Riwnodennyk",
+ "Ата",
+ "Тест"
+ ]
+ },
+ "pagetranslation": "Переклад сторінок",
+ "right-pagetranslation": "Позначення версій сторінок для перекладу",
+ "action-pagetranslation": "керування сторінками, що можна перекладати",
+ "tpt-desc": "Розширення для перекладу статей",
+ "tpt-section": "Блок перекладу $1",
+ "tpt-section-new": "Новий блок перекладу.\nНазва: $1",
+ "tpt-section-deleted": "Блок перекладу $1",
+ "tpt-template": "Шаблон сторінки",
+ "tpt-templatediff": "Шаблон сторінки змінений.",
+ "tpt-diff-old": "Попередній текст",
+ "tpt-diff-new": "Новий текст",
+ "tpt-submit": "Позначити цю версію для перекладу",
+ "tpt-sections-oldnew": "Нові та існуючі блоки перекладу",
+ "tpt-sections-deleted": "Вилучені блоки перекладу",
+ "tpt-sections-template": "Шаблон сторінки перекладу",
+ "tpt-action-nofuzzy": "Не відмічати переклади як застарілі",
+ "tpt-badtitle": "Зазначена назва сторінки ($1) недопустима",
+ "tpt-nosuchpage": "Сторінки $1 не існує",
+ "tpt-oldrevision": "$2 не є останньою версією сторінки [[:$1]].\nТільки останні версії можуть бути відмічені для перекладу.",
+ "tpt-notsuitable": "Сторінка $1 не підходить для перекладу.\nПереконайтеся, що вона містить теги <nowiki><translate></nowiki> і має вірний синтаксис.",
+ "tpt-saveok": "Сторінка [[:$1]] була відмічена для перекладу і містить $2 {{PLURAL:$2|блок перекладу|блоки перекладу|блоків перекладу}}.\nТепер сторінку можна <span class=\"plainlinks\">[$3 перекладати]</span>.",
+ "tpt-offer-notify": "Ви можете <span class=\"plainlinks\">[$1 повідомити перекладачів]</span> про цю сторінку.",
+ "tpt-badsect": "«$1» не є припустимою назвою для частини перекладів $2.",
+ "tpt-showpage-intro": "Нижче наведені нові, існуючі та видалені одиниці перекладу.\nПеред тим, які відмітити цю версію для перекладу, переконайтесь, що зміни в одиницях перекладу будуть мінімальними, щоб уникнути необов'язкової роботи для перекладачів.",
+ "tpt-mark-summary": "Позначено цю версію для перекладу",
+ "tpt-edit-failed": "Не вдалося оновити сторінку: $1",
+ "tpt-duplicate": "Переклад елементу із назвою $1 вжито більше одного разу.",
+ "tpt-already-marked": "Остання версія цієї сторінки вже була відмічена для перекладу.",
+ "tpt-unmarked": "Сторінка $1 більше не відмічена для перекладу.",
+ "tpt-list-nopages": "Немає сторінок, відмічених для перекладу, або готових бути відміченими для перекладу.",
+ "tpt-new-pages-title": "Сторінки, запропоновані для перекладу",
+ "tpt-old-pages-title": "Сторінки в процесі перекладу",
+ "tpt-other-pages-title": "Пошкоджені сторінки",
+ "tpt-discouraged-pages-title": "Відключені сторінки",
+ "tpt-new-pages": "{{PLURAL:$1|1=Ця сторінка містить|Ці сторінки містять}} текст з тегами перекладу, але жодна з версій {{PLURAL:$1|1=цієї сторінки|цих сторінок}} не відмічена для перекладу.",
+ "tpt-old-pages": "Деякі версії {{PLURAL:$1|1=цієї сторінки|цих сторінок}} були відмічені для перекладу.",
+ "tpt-other-pages": "{{PLURAL:$1|1=Стара версія цієї сторінки відмічена|Старі версії цих сторінок відмічені}} для перекладу,\nале {{PLURAL:$1|1=остання версія не може бути відмічена|останні версії не можуть бути відмічені}} для перекладу.",
+ "tpt-discouraged-pages": "Подальший переклад {{PLURAL:$1|1=цієї сторінки|цих сторінок}} припинено.",
+ "tpt-select-prioritylangs": "Перелік кодів пріоритетних мов (відокремлюються комою)",
+ "tpt-select-prioritylangs-force": "Запобігати переклад іншими мовами, крім пріоритетних",
+ "tpt-select-prioritylangs-reason": "Причина:",
+ "tpt-sections-prioritylangs": "Пріоритет мов",
+ "tpt-rev-mark": "позначити для перекладу",
+ "tpt-rev-unmark": "вилучити з перекладу",
+ "tpt-rev-discourage": "виключити",
+ "tpt-rev-encourage": "відновити",
+ "tpt-rev-mark-tooltip": "Відзначити останню версію цієї сторінки для перекладу.",
+ "tpt-rev-unmark-tooltip": "Прибрати цю сторінку з перекладу",
+ "tpt-rev-discourage-tooltip": "Запобігти подальшим перекладам цієї сторінки",
+ "tpt-rev-encourage-tooltip": "Відновити цю сторінку для звичайного перекладу",
+ "translate-tag-translate-link-desc": "Перекласти цю сторінку",
+ "translate-tag-markthis": "Позначити цю сторінку для перекладу",
+ "translate-tag-markthisagain": "На цій сторінці було здійснено <span class=\"plainlinks\">[$1 змін]</span> з моменту, коли ця сторінка була востаннє <span class=\"plainlinks\">[$2 відмічена до перекладу]</span>.",
+ "translate-tag-hasnew": "На цій сторінці було здійснено <span class=\"plainlinks\">[$1 зміни]</span>, які не відмічені для перекладу.",
+ "tpt-translation-intro": "Ця сторінка є <span class=\"plainlinks\">[$1 перекладом]</span> сторінки [[$2]]. Переклад виконано на $3%.",
+ "tpt-languages-legend": "Інші мови:",
+ "tpt-languages-zero": "Розпочати переклад цією мовою",
+ "tpt-tab-translate": "Перекласти",
+ "tpt-target-page": "Ця сторінка не може бути оновлена вручну.\nЦе – переклад сторінки [[$1]] і його можна оновити за допомогою [$2 засобу перекладу].",
+ "tpt-unknown-page": "Цей простір імен зарезервовано для перекладів текстів сторінок.\nСторінка, яку ви намагаєтесь редагувати, скоріше за все, не відповідає жодній сторінці, відміченій для перекладу.",
+ "tpt-translation-restricted": "Адміністратор перекладу заборонив переклад цієї сторінки такою мовою.\n\nПричина: $1",
+ "tpt-discouraged-language-force-header": "Ця сторінка не може бути перекладена на $1.",
+ "tpt-discouraged-language-force-content": "Адміністратор перекладів вирішив, що ця сторінка може бути перекладена лише на $1.",
+ "tpt-discouraged-language-header": "Переклад на $1 не є пріоритетним для цієї сторінки.",
+ "tpt-discouraged-language-content": "Адміністратор перекладів вирішив зосередити зусилля з перекладу на $1.",
+ "tpt-discouraged-language-force": "<strong>Ця сторінка не може бути перекладена мовою $2.</strong>\n\nАдміністратор перекладу вирішив, що ця сторінка може бути перекладена лише такими мовами: $3",
+ "tpt-discouraged-language": "<strong>Переклад мовою $2 не є пріоритетним для цієї сторінки.</strong>\n\nАдміністратор вирішив зосередити зусилля на перекладі такими мовами: $3.",
+ "tpt-discouraged-language-reason": "Причина:$1",
+ "tpt-priority-languages": "Адміністратор перекладу визначив для цієї групи пріоритетні мови $1.",
+ "tpt-render-summary": "Оновлення для відповідності новій версії вихідної сторінки",
+ "tpt-download-page": "Експортувати сторінку з перекладами",
+ "aggregategroups": "Загальні групи",
+ "tpt-aggregategroup-add": "Додати",
+ "tpt-aggregategroup-save": "Зберегти",
+ "tpt-aggregategroup-add-new": "Додати нову загальну групу",
+ "tpt-aggregategroup-new-name": "Назва:",
+ "tpt-aggregategroup-new-description": "Опис (необов'язково):",
+ "tpt-aggregategroup-remove-confirm": "Ви дійсно бажаєте видалити цю загальну групу?",
+ "tpt-aggregategroup-invalid-group": "Група не існує",
+ "tpt-aggregategroup-edit-name": "Назва:",
+ "tpt-aggregategroup-edit-description": "Опис:",
+ "tpt-aggregategroup-update": "Зберегти",
+ "tpt-aggregategroup-update-cancel": "Скасувати",
+ "tpt-invalid-group": "Неприпустима група",
+ "pt-parse-open": "Незбалансований тег &lt;translate>.\nШаблон перекладу: <pre>$1</pre>",
+ "pt-parse-close": "Незбалансований тег &lt;/translate>.\nШаблон перекладу: <pre>$1</pre>",
+ "pt-parse-nested": "Вкладати одну одиницю перекладу &lt;translate> в іншу не допускається.\nТекст тегу: <pre>$1</pre>",
+ "pt-shake-multiple": "Декілька маркерів одиниці перекладу для однієї одиниці.\nТекст одиниці перекладу: <pre>$1</pre>",
+ "pt-shake-position": "Маркери одиниці перекладу в неочікуваному місці.\nТекст одиниці перекладу: <pre>$1</pre>",
+ "pt-shake-empty": "Порожня одиниця перекладу під маркером \"$1\".",
+ "log-description-pagetranslation": "Журнал для дій, пов'язаних з системою перекладу сторінок.",
+ "log-name-pagetranslation": "Журнал перекладу сторінок",
+ "logentry-pagetranslation-mark": "$1 {{GENDER:$2|позначив|позначила}} $3 для перекладу",
+ "logentry-pagetranslation-unmark": "$1 {{GENDER:$2|вилучив|вилучила}} $3 з перекладу",
+ "logentry-pagetranslation-moveok": "$1 {{GENDER:$2|здійснив|здійснила}} перейменування перекладабельної сторінки $3 на $4",
+ "logentry-pagetranslation-movenok": "$1 {{GENDER:$2|зіштовхнувся|зіштовхнулася}} із проблемою під час перейменування сторінки $3 на $4",
+ "logentry-pagetranslation-deletefok": "$1 {{GENDER:$2|здійснив|здійснила}} вилучення перекладабельної сторінки $3",
+ "logentry-pagetranslation-deletefnok": "$1 {{GENDER:$2|не зміг|не змогла}} вилучити $3, що належить до перекладабельної сторінки $4",
+ "logentry-pagetranslation-deletelok": "$1 {{GENDER:$2|здійснив|здійснила}} вилучення сторінки-перекладу $3",
+ "logentry-pagetranslation-deletelnok": "$1 {{GENDER:$2|не зміг|не змогла}} вилучити $3, що належить до сторінки-перекладу $4",
+ "logentry-pagetranslation-encourage": "$1 {{GENDER:$2|дозволив|дозволила}} переклад $3",
+ "logentry-pagetranslation-discourage": "$1 {{GENDER:$2|заборонив|заборонила}} переклад $3",
+ "logentry-pagetranslation-prioritylanguages-unset": "$1 {{GENDER:$2|вилучив|вилучила}} пріоритетні мови з перекладабельної сторінки $3",
+ "logentry-pagetranslation-prioritylanguages": "$1 {{GENDER:$2|встановив|встановила}} пріоритетні мови для перекладабельної сторінки $3: $5",
+ "logentry-pagetranslation-prioritylanguages-force": "$1 {{GENDER:$2|обмежив|обмежила}} мови для перекладабельної сторінки $3 до $5",
+ "logentry-pagetranslation-associate": "$1 {{GENDER:$2|додав|додала}} перекладабельну сторінку $3 до агрегованої групи $4",
+ "logentry-pagetranslation-dissociate": "$1 {{GENDER:$2|вилучив|вилучила}} перекладабельну сторінку $3 з агрегованої групи $4",
+ "pt-movepage-title": "Перемістити сторінку $1, доступну для перекладу",
+ "pt-movepage-blockers": "Сторінка перекладу не може бути перейменована через {{PLURAL:$1|1=таку помилку|такі помилки}}:",
+ "pt-movepage-block-base-exists": "Перекладабельна цільова сторінка «[[:$1]]» вже існує.",
+ "pt-movepage-block-base-invalid": "Недопустима назва для основної кінцевої перекладної сторінки.",
+ "pt-movepage-block-tp-exists": "Переклад кінцевої сторінки [[:$2]] вже існує.",
+ "pt-movepage-block-tp-invalid": "Назва перекладу кінцевої сторінки [[:$1]] буде неправильною (можливо, занадто довга?).",
+ "pt-movepage-block-section-exists": "Цільова сторінка \"[[:$2]]\" для одиниці перекладу уже існує.",
+ "pt-movepage-block-section-invalid": "Назва цільової сторінки \"[[:$1]]\" для одиниці перекладу буде неправильною (можливо, занадто довга?).",
+ "pt-movepage-block-subpage-exists": "Кінцева підсторінка [[:$2]] вже існує.",
+ "pt-movepage-block-subpage-invalid": "Назва кінцевої підсторінки [[:$1]] буде неправильною (можливо, занадто довга?).",
+ "pt-movepage-list-pages": "Список сторінок для перейменування",
+ "pt-movepage-list-translation": "{{PLURAL:$1|1=Сторінка|Сторінки}} перекладу",
+ "pt-movepage-list-section": "{{PLURAL:$1|1=Сторінка|Сторінки}} одиниці перекладу",
+ "pt-movepage-list-other": "{{PLURAL:$1|1=Інша підсторінка|Інші підсторінки}}",
+ "pt-movepage-list-count": "Усього перемістити $1 {{PLURAL:$1|сторінку|сторінки|сторінок}}.",
+ "pt-movepage-legend": "Перемістити сторінку, доступну для перекладу",
+ "pt-movepage-current": "Поточне ім'я:",
+ "pt-movepage-new": "Нова назва:",
+ "pt-movepage-reason": "Причина:",
+ "pt-movepage-subpages": "Перемістити всі підсторінки",
+ "pt-movepage-action-check": "Перевірити, чи можливе переміщення",
+ "pt-movepage-action-perform": "Виконати переміщення",
+ "pt-movepage-action-other": "Змінити ціль",
+ "pt-movepage-intro": "Ця службова сторінка дозволяє перейменовувати сторінки, позначені для перекладу.\nДія не буде миттєвою, оскільки потрібно перейменувати багато сторінок.\nПід час перейменування сторінок взаємодіяти з ними неможливо.\nПомилки буде записано в [[Special:Log/pagetranslation|журналі перекладу сторінок]] і їх потрібно буде виправити вручну.",
+ "pt-movepage-logreason": "Частина сторінки, що перекладається, $1.",
+ "pt-movepage-started": "Основна сторінка тепер переміщена.\nБудь ласка, перевірте [[Special:Log/pagetranslation|журнал перекладу сторінок]] на наявність помилок і повідомлення про завершення.",
+ "pt-locked-page": "Ця сторінка заблокована, оскільки в даний момент відбувається переміщення сторінки, що перекладається.",
+ "pt-deletepage-lang-title": "Вилучення сторінки перекладу $1.",
+ "pt-deletepage-full-title": "Видалення сторінки доступної для перекладу $1 .",
+ "pt-deletepage-invalid-title": "Зазначена сторінка є недійсною.",
+ "pt-deletepage-invalid-text": "Зазначена сторінка недоступна для перекладу і не є перекладом.",
+ "pt-deletepage-action-check": "Список сторінок, які будуть вилучені",
+ "pt-deletepage-action-perform": "Виконати вилучення",
+ "pt-deletepage-action-other": "Змінити ціль",
+ "pt-deletepage-lang-legend": "Вилучити сторінку перекладу",
+ "pt-deletepage-full-legend": "Вилучити сторінку перекладу",
+ "pt-deletepage-any-legend": "Вилучити сторінку для перекладу або її переклад",
+ "pt-deletepage-current": "Назва сторінки:",
+ "pt-deletepage-reason": "Причина:",
+ "pt-deletepage-subpages": "Вилучити всі підсторінки",
+ "pt-deletepage-list-pages": "Список сторінок для вилучення",
+ "pt-deletepage-list-translation": "Сторінки перекладу",
+ "pt-deletepage-list-section": "Сторінки одиниці перекладу",
+ "pt-deletepage-list-other": "Інші підсторінки",
+ "pt-deletepage-list-count": "Усього вилучити $1 {{PLURAL:$1|сторінку|сторінки|сторінок}}.",
+ "pt-deletepage-full-logreason": "Частина сторінки для перекладу, $1.",
+ "pt-deletepage-lang-logreason": "Частина сторінки перекладу $1.",
+ "pt-deletepage-started": "Будь ласка, перевірте [[Special:Log/pagetranslation|журнал перекладу сторінок]] на наявність помилок і повідомлення про завершення.",
+ "pt-deletepage-intro": "Ця службова сторінка дозволяє Вам вилучати сторінки, призначені для перекладу, разом з перекладами або ж вилучати переклади визначеною мовою.\nЦя дія не буде миттєвою, бо потребуватиме вилучення багатьох залежних сторінок.\nЯкщо вилучення буде невдалим, його буде записано в [[Special:Log/pagetranslation|журналі перекладу]] і такі випадки потрібно буде усунути вручну.",
+ "pagemigration": "Міграція сторінок перекладу",
+ "pagemigration-summary": "Вкажіть сторінку перекладу і відновіть будь-який переклад, зроблений до того, як Система перекладу була включена на цій сторінці.",
+ "pm-import-button-label": "Імпортувати",
+ "pm-savepages-button-label": "Зберегти",
+ "pm-cancel-button-label": "Скасувати",
+ "pm-pagename-placeholder": "Введіть назву сторінки",
+ "pm-langcode-placeholder": "Код мови",
+ "pm-page-does-not-exist": "$1 не існує",
+ "pm-old-translations-missing": "$1 не містить старих перекладів",
+ "pm-extra-units-warning": "Можуть бути наявні додаткові блоки. Будь ласка, правильно співвіднесіть джерело і блоки перекладу",
+ "pm-pagename-missing": "Будь ласка, введіть назву сторінки",
+ "pm-langcode-missing": "Будь ласка, введіть код мови",
+ "pm-add-icon-hover-text": "Додати блок нижче",
+ "pm-swap-icon-hover-text": "Поміняти місцями з блоком нижче",
+ "pm-delete-icon-hover-text": "Видалити блок",
+ "pm-pagetitle-invalid": "Будь ласка, введіть правильний заголовок сторінки",
+ "tpt-translate-title": "Дозволити переклад заголовка сторінки",
+ "pp-save-summary": "Підготовлена сторінка для перекладу",
+ "pagepreparation": "Підготувати сторінку для перекладу",
+ "pp-pagename-placeholder": "Введіть назву сторінки",
+ "pp-prepare-button-label": "Підготувати",
+ "pp-save-button-label": "Зберегти",
+ "pp-save-message": "Сторінка була збережена. Ви можете [$1 редагувати].",
+ "pp-pagename-missing": "Будь ласка, введіть назву сторінки",
+ "pp-diff-old-header": "Вихідний текст",
+ "pp-diff-new-header": "Підготовлений текст"
+}
diff --git a/MLEB/Translate/i18n/pagetranslation/ur.json b/MLEB/Translate/i18n/pagetranslation/ur.json
new file mode 100644
index 00000000..fd7ccbce
--- /dev/null
+++ b/MLEB/Translate/i18n/pagetranslation/ur.json
@@ -0,0 +1,53 @@
+{
+ "@metadata": {
+ "authors": [
+ "පසිඳු කාවින්ද"
+ ]
+ },
+ "pagetranslation": "صفحہ ترجمہ",
+ "tpt-template": "صفحہ کے سانچے",
+ "tpt-diff-old": "پچھلے ٹیکسٹ",
+ "tpt-diff-new": "نئے متن",
+ "tpt-sections-template": "ترجمہ صفحہ سانچے",
+ "tpt-action-nofuzzy": "ترجمہ باطل نہیں ہوتا",
+ "tpt-new-pages-title": "صفحات کے ترجمہ کے لئے رشتہ آيا",
+ "tpt-old-pages-title": "ترجمہ میں صفحات",
+ "tpt-other-pages-title": "ٹوٹ کے صفحات",
+ "tpt-select-prioritylangs-reason": "وجہ:",
+ "tpt-sections-prioritylangs": "ترجیح کی زبانیں",
+ "tpt-rev-mark": "ترجمہ کے لئے نشان زد کریں",
+ "tpt-rev-unmark": "ترجمہ سے حذف کریں",
+ "tpt-rev-encourage": "بحال",
+ "tpt-rev-mark-tooltip": "تازہ ترین ورژن کے ترجمہ کے لئے اس صفحے نشان زد کریں.",
+ "tpt-rev-unmark-tooltip": "اس صفحے کو ترجمہ سے حذف کریں ۔",
+ "tpt-rev-encourage-tooltip": "عمومی ترجمہ کرنے کے لئے اس صفحے کو بحال.",
+ "translate-tag-translate-link-desc": "اس صفحہ کا ترجمہ",
+ "translate-tag-markthis": "ترجمہ کے لئے اس صفحے نشان زد کریں",
+ "tpt-languages-zero": "اس زبان کے لئے ترجمہ شروع",
+ "tpt-download-page": "ترجمے کے ساتھ اس صفحے کی برآمد",
+ "tpt-aggregategroup-add": "شامل کریں",
+ "tpt-aggregategroup-save": "محفوظ کریں",
+ "tpt-aggregategroup-add-new": "ایک نیا میرا گروپ شامل کریں",
+ "tpt-aggregategroup-new-name": "نام:",
+ "tpt-aggregategroup-invalid-group": "گروپ موجود نہیں",
+ "log-name-pagetranslation": "صفحہ ترجمہ لاگ ان کریں",
+ "pt-movepage-list-pages": "منتقل کرنے کے لئے صفحات کی فہرست",
+ "pt-movepage-list-translation": "ترجمہ صفحات",
+ "pt-movepage-list-section": "سیکشن کے صفحات",
+ "pt-movepage-legend": "ترجمہ صفحہ منتقل",
+ "pt-movepage-current": "موجودہ نام:",
+ "pt-movepage-new": "نیا نام:",
+ "pt-movepage-reason": "وجہ:",
+ "pt-movepage-action-perform": "اقدام کرتے ہیں",
+ "pt-movepage-action-other": "تبدیلی کا ہدف",
+ "pt-deletepage-action-check": "فہرست صفحات کو حذف کیا کرنے کے لئے",
+ "pt-deletepage-action-perform": "خارج کرتے ہیں",
+ "pt-deletepage-action-other": "تبدیلی کا ہدف",
+ "pt-deletepage-lang-legend": "ترجمہ صفحہ کو خارج",
+ "pt-deletepage-full-legend": "ترجمہ صفحہ کو خارج",
+ "pt-deletepage-current": "صفحہ کا نام:",
+ "pt-deletepage-reason": "وجہ:",
+ "pt-deletepage-list-pages": "خارج کرنے کے لئے صفحات کی فہرست",
+ "pt-deletepage-list-translation": "ترجمہ صفحات",
+ "pt-deletepage-list-section": "سیکشن کے صفحات"
+}
diff --git a/MLEB/Translate/i18n/pagetranslation/uz.json b/MLEB/Translate/i18n/pagetranslation/uz.json
new file mode 100644
index 00000000..3c980666
--- /dev/null
+++ b/MLEB/Translate/i18n/pagetranslation/uz.json
@@ -0,0 +1,13 @@
+{
+ "@metadata": {
+ "authors": [
+ "CoderSI",
+ "Sociologist"
+ ]
+ },
+ "tpt-select-prioritylangs-reason": "Sabab:",
+ "aggregategroups": "Agregat guruhlar",
+ "log-name-pagetranslation": "Sahifalarni tarjima qilish qaydlari",
+ "pt-movepage-reason": "Sabab:",
+ "pt-deletepage-reason": "Sabab:"
+}
diff --git a/MLEB/Translate/i18n/pagetranslation/vec.json b/MLEB/Translate/i18n/pagetranslation/vec.json
new file mode 100644
index 00000000..c0a28cc0
--- /dev/null
+++ b/MLEB/Translate/i18n/pagetranslation/vec.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Candalua"
+ ]
+ },
+ "translate-tag-translate-link-desc": "Tradusi sta pagina"
+}
diff --git a/MLEB/Translate/i18n/pagetranslation/vep.json b/MLEB/Translate/i18n/pagetranslation/vep.json
new file mode 100644
index 00000000..e82870d8
--- /dev/null
+++ b/MLEB/Translate/i18n/pagetranslation/vep.json
@@ -0,0 +1,40 @@
+{
+ "@metadata": {
+ "authors": [
+ "Игорь Бродский"
+ ]
+ },
+ "pagetranslation": "Lehtpoliden kändmine",
+ "right-pagetranslation": "Znamoita lehpoliden versijad kändmižen täht",
+ "tpt-desc": "Ližaprogramm lehtpoliden südäimištod kätes.",
+ "tpt-section": "Kändmižühtnik $1",
+ "tpt-section-new": "Uz' kändmižühtnik. Nimi: $1",
+ "tpt-section-deleted": "Kändmižühtnik $1",
+ "tpt-template": "Lehtpolen šablon",
+ "tpt-templatediff": "Nece lehtpolen šablon om toižetanus.",
+ "tpt-diff-old": "Edeline tekst",
+ "tpt-diff-new": "Uz' tekst",
+ "tpt-submit": "Znamoita nece versii kändmižen täht.",
+ "tpt-sections-oldnew": "Uded da olijad kändmižühtnikad",
+ "tpt-sections-template": "Kändmižen lehtpolen šablon",
+ "tpt-nosuchpage": "Ei ole mugošt lehtpol't: \"$1\".",
+ "tpt-new-pages-title": "Lehtpoled kändmižen täht",
+ "tpt-old-pages-title": "Lehtpoled, kudambad kätas nügüd'",
+ "tpt-other-pages-title": "Traudüd lehtpoled",
+ "tpt-rev-encourage": "endištada",
+ "tpt-rev-mark-tooltip": "Znamoita necen lehtpolen jäl'gmäine versii kändmižen täht",
+ "translate-tag-translate-link-desc": "Käta nece lehtpol'",
+ "translate-tag-markthis": "Znamoita nece lehtpol' kändmižen täht.",
+ "tpt-languages-legend": "Toižed keled:",
+ "tpt-download-page": "Eksportiruida lehtpol' kändusidenke",
+ "pt-movepage-list-other": "Toižed alalehtpoled",
+ "pt-movepage-current": "Olii nimi:",
+ "pt-movepage-new": "Uz' nimi:",
+ "pt-movepage-reason": "Sü:",
+ "pt-movepage-action-perform": "Udesnimitada",
+ "pt-movepage-action-other": "Vajehtada met",
+ "pt-deletepage-action-other": "Vajehtada met",
+ "pt-deletepage-current": "Lehtpolen nimi:",
+ "pt-deletepage-reason": "Sü:",
+ "pt-deletepage-list-other": "Toižed alalehtpoled"
+}
diff --git a/MLEB/Translate/i18n/pagetranslation/vi.json b/MLEB/Translate/i18n/pagetranslation/vi.json
new file mode 100644
index 00000000..c4f4a50a
--- /dev/null
+++ b/MLEB/Translate/i18n/pagetranslation/vi.json
@@ -0,0 +1,199 @@
+{
+ "@metadata": {
+ "authors": [
+ "Minh Nguyen",
+ "Trần Nguyễn Minh Huy",
+ "Vinhtantran"
+ ]
+ },
+ "pagetranslation": "Biên dịch trang",
+ "right-pagetranslation": "Đánh dấu các phiên bản của trang là cần dịch",
+ "action-pagetranslation": "quản lý các trang dịch được",
+ "tpt-desc": "Phần mở rộng để dịch trang nội dung",
+ "tpt-section": "Đơn vị dịch thuật $1",
+ "tpt-section-new": "Đơn vị dịch thuật mới.\nTên: $1",
+ "tpt-section-deleted": "Đơn vị dịch thuật $1",
+ "tpt-template": "Mẫu trang",
+ "tpt-templatediff": "Mẫu trang đã thay đổi.",
+ "tpt-diff-old": "Văn bản trước",
+ "tpt-diff-new": "Văn bản mới",
+ "tpt-submit": "Đánh dấu phiên bản này là cần dịch",
+ "tpt-sections-oldnew": "Các đơn vị dịch thuật mới và hiện có",
+ "tpt-sections-deleted": "Các đơn vị dịch thuật đã bị xóa",
+ "tpt-sections-template": "Bản mẫu trang dịch",
+ "tpt-action-nofuzzy": "Đừng làm mất hiệu lực bản dịch",
+ "tpt-badtitle": "Tên trang cung cấp ($1) không phải là tên đúng",
+ "tpt-nosuchpage": "Trang $1 không tồn tại",
+ "tpt-oldrevision": "$2 không phải là phiên bản mới của trang [[:$1]]/\nChỉ có các phiên bản mới nhất mới có thể đánh dấu cần dịch được.",
+ "tpt-notsuitable": "Trang $1 không phù hợp để dịch thuật.\nHãy đảm bảo là nó có thẻ <nowiki><translate></nowiki> và có cú pháp đúng.",
+ "tpt-saveok": "Trang [[:$1]] đã được đánh dấu chờ dịch với $2 đơn vị dịch thuật.\nBạn có thể <span class=\"plainlinks\">[$3 dịch]</span> trang ngay bây giờ.",
+ "tpt-offer-notify": "Bạn có thể <span class=\"plainlinks\">[$1 báo các biên dịch viên]</span> về trang này.",
+ "tpt-badsect": "“$1” không phải là tên hợp lệ cho đơn vị dịch thuật $2.",
+ "tpt-showpage-intro": "Dưới đây là các đơn vị dịch thuật mới, đang tồn tại, hoặc đã bị xóa.\nTrước khi đánh dấu phiên bản này chờ dịch, hãy kiểm tra những thay đổi tại các đơn vị dịch thuật đã được thu gọn lại để tránh công việc không cần thiết cho biên dịch viên chưa.",
+ "tpt-mark-summary": "Đánh dấu phiên bản này là cần dịch",
+ "tpt-mark-nochanges": "Không có khác biệt giữa phiên bản này và phiên bản trước được đánh dấu.",
+ "tpt-edit-failed": "Không thể cập nhật trang: $1",
+ "tpt-duplicate": "Tên đơn vị dịch $1 được sử dụng hơn một lần.",
+ "tpt-already-marked": "Phiên bản mới nhất của trang này đã được đánh dấu cần dịch rồi.",
+ "tpt-unmarked": "Trang $1 không còn đánh dấu là cần dịch.",
+ "tpt-list-nopages": "Chưa có trang này được đánh dấu cần dịch hoặc chưa sẵn sàng để được đánh dấu cần dịch.",
+ "tpt-new-pages-title": "Các trang cần dịch",
+ "tpt-old-pages-title": "Các trang đang được dịch",
+ "tpt-other-pages-title": "Các trang hỏng",
+ "tpt-discouraged-pages-title": "Các trang được khuyên để yên",
+ "tpt-new-pages": "{{PLURAL:$1|Trang|Các trang}} này có chứa văn bản có thẻ cần dịch, nhưng không có phiên bản nào của {{PLURAL:$1|nó|chúng}} được đánh dấu cần dịch.",
+ "tpt-old-pages": "Một phiên bản nào đó của {{PLURAL:$1||các}} trang này đã được đánh dấu cần dịch.",
+ "tpt-other-pages": "{{PLURAL:$1|Một|Những}} phiên bản trước của trang này được đánh dấu là cần dịch, nhưng {{PLURAL:$1|phiên bản|các phiên bản}} gần đây nhất không thể được đánh dấu là cần dịch.",
+ "tpt-discouraged-pages": "{{PLURAL:$1|Trang|Các trang}} này đã được khuyên để yên không cần dịch tiếp.",
+ "tpt-select-prioritylangs": "Danh sách các mã ngôn ngữ quan trọng phân tách bằng dấu phẩy:",
+ "tpt-select-prioritylangs-force": "Không cho phép dịch ra các ngôn ngữ không quan trọng",
+ "tpt-select-prioritylangs-reason": "Lý do:",
+ "tpt-sections-prioritylangs": "Ngôn ngữ quan trọng",
+ "tpt-rev-mark": "đánh dấu cần dịch",
+ "tpt-rev-unmark": "bỏ dấu cần dịch",
+ "tpt-rev-discourage": "khuyên để yên",
+ "tpt-rev-encourage": "khuyên dịch tiếp",
+ "tpt-rev-mark-tooltip": "Đánh dấu phiên bản mới nhất của trang này là cần dịch.",
+ "tpt-rev-unmark-tooltip": "Bỏ dấu cần dịch khỏi trang này.",
+ "tpt-rev-discourage-tooltip": "Khuyên để yên bản dịch hiện hành của trang này.",
+ "tpt-rev-encourage-tooltip": "Khuyên tiếp tục dịch trang này bình thường.",
+ "translate-tag-translate-link-desc": "Dịch trang này",
+ "translate-tag-markthis": "Đánh dấu trang này là cần dịch",
+ "translate-tag-markthisagain": "Trang này có <span class=\"plainlinks\">[$1 thay đổi]</span> từ khi nó được <span class=\"plainlinks\">[$2 đánh dấu cần dịch]</span> lần cuối.",
+ "translate-tag-hasnew": "Trang này có <span class=\"plainlinks\">[$1 thay đổi]</span> chưa được đánh dấu cần dịch.",
+ "tpt-translation-intro": "Trang này là một <span class=\"plainlinks\">[$1 bản dịch]</span> của trang [[$2]] và bản dịch đã hoàn thành $3%.",
+ "tpt-languages-legend": "Ngôn ngữ khác:",
+ "tpt-languages-zero": "Bắt đầu bản dịch trong ngôn ngữ này",
+ "tpt-languages-nonzero": "$1 (đã biên dịch $2%)",
+ "tpt-tab-translate": "Biên dịch",
+ "tpt-target-page": "Trang này không thể cập nhật bằng tay.\nNó là một bản dịch của trang [[$1]] và có thể cập nhật bản dịch bằng cách sử dụng [$2 công cụ dịch thuật].",
+ "tpt-unknown-page": "Không gian tên này được dành cho các bản dịch trang nội dung.\nTrang bạn muốn sửa đổi dường như không tương ứng với trang nào đã được đánh dấu cần dịch.",
+ "tpt-translation-restricted": "Một người quản lý biên dịch không cho phép dịch trang ra ngôn ngữ này.\n\nLý do: $1",
+ "tpt-discouraged-language-force-header": "Không thể biên dịch trang này ra $1.",
+ "tpt-discouraged-language-force-content": "Một người quản lý biên dịch chỉ cho phép dịch trang ra $1.",
+ "tpt-discouraged-language-header": "Việc biên dịch ra $1 không phải là một ưu tiên cho trang này.",
+ "tpt-discouraged-language-content": "Một người quản lý biên dịch đã quyết định chú trọng vào việc biên dịch ra $1.",
+ "tpt-discouraged-language-force": "<strong>Không thể biên dịch trang này ra $2.</strong>\n\nMột người quản lý biên dịch chỉ cho phép dịch trang ra $3.",
+ "tpt-discouraged-language": "<strong>Việc biên dịch ra $2 không phải là một ưu tiên cho trang này.</strong>\n\nMột người quản lý biên dịch đã quyết định chú trọng vào việc biên dịch ra $3.",
+ "tpt-discouraged-language-reason": "Lý do: $1",
+ "tpt-priority-languages": "Một người quản lý biên dịch đã đặt các ngôn ngữ quan trọng của nhóm này là $1.",
+ "tpt-render-summary": "Cập nhật đến phiên bản mới của trang nguồn",
+ "tpt-download-page": "Xuất trang cùng các bản dịch",
+ "aggregategroups": "Nhóm tập hợp",
+ "tpt-aggregategroup-add": "Thêm",
+ "tpt-aggregategroup-save": "Lưu",
+ "tpt-aggregategroup-add-new": "Thêm nhóm tập hợp mới",
+ "tpt-aggregategroup-new-name": "Tên:",
+ "tpt-aggregategroup-new-description": "Miêu tả (tùy chọn):",
+ "tpt-aggregategroup-remove-confirm": "Bạn có chắc muốn xóa nhóm hợp này?",
+ "tpt-aggregategroup-invalid-group": "Nhóm không tồn tại",
+ "tpt-aggregategroup-edit-name": "Tên:",
+ "tpt-aggregategroup-edit-description": "Miêu tả:",
+ "tpt-aggregategroup-update": "Lưu",
+ "tpt-aggregategroup-update-cancel": "Hủy bỏ",
+ "tpt-invalid-group": "Nhóm không hợp lệ",
+ "pt-parse-open": "Thẻ &lt;translate> không đều.\nBản mẫu thông dịch: <pre>$1</pre>",
+ "pt-parse-close": "Thẻ &lt;/translate> không đều.\nBản mẫu thông dịch: <pre>$1</pre>",
+ "pt-parse-nested": "Không được phép bỏ đơn vị dịch thuật &lt;translate> trong đơn vị dịch thuật khác.\nVăn bản thẻ: <pre>$1</pre>",
+ "pt-shake-multiple": "Nhiều dấu hiệu cho một đơn vị dịch thuật.\nVăn bản của đơn vị dịch thuật: <pre>$1</pre>",
+ "pt-shake-position": "Dấu hiệu đơn vị dịch thuật ở vị trí không mong đợi.\nVăn bản của đơn vị dịch thuật: <pre>$1</pre>",
+ "pt-shake-empty": "Dấu hiệu “$1” có đơn vị dịch thuật rỗng.",
+ "log-description-pagetranslation": "Nhật trình các tác vụ co liên quan đến hệ thống dịch trang",
+ "log-name-pagetranslation": "Nhật trình dịch trang",
+ "logentry-pagetranslation-mark": "$1 {{GENDER:$2}}đã đánh dấu $3 là cần được dịch",
+ "logentry-pagetranslation-unmark": "$1 {{GENDER:$2}}đã gỡ đánh dấu cần dịch khỏi $3",
+ "logentry-pagetranslation-moveok": "$1 {{GENDER:$2}}đã hoàn thành đổi tên của trang dịch được $3 thành $4",
+ "logentry-pagetranslation-movenok": "$1 {{GENDER:$2}}đã gặp vấn đề trong khi di chuyển $3 đến $4",
+ "logentry-pagetranslation-deletefok": "$1 {{GENDER:$2}}đã hoàn thành xóa trang dịch được $3",
+ "logentry-pagetranslation-deletefnok": "$1 {{GENDER:$2}}đã gặp thất bại khi xóa $3 trực thuộc trang dịch được $4",
+ "logentry-pagetranslation-deletelok": "$1 {{GENDER:$2}}đã hoàn thành xóa trang dịch được $3",
+ "logentry-pagetranslation-deletelnok": "$1 {{GENDER:$2}}đã gặp thất bại khi xóa $3 trực thuộc trang dịch được $4",
+ "logentry-pagetranslation-encourage": "$1 {{GENDER:$2}}đã khuyến khích dịch $3",
+ "logentry-pagetranslation-discourage": "$1 {{GENDER:$2}}đã ngừng khuyến khích dịch $3",
+ "logentry-pagetranslation-prioritylanguages-unset": "$1 {{GENDER:$2}}đã dời các ngôn ngữ ưu tiên khỏi trang dịch được $3",
+ "logentry-pagetranslation-prioritylanguages": "$1 {{GENDER:$2}}đã đặt các ngôn ngữ ưu tiên cho trang dịch được $3–$5.",
+ "logentry-pagetranslation-prioritylanguages-force": "$1 {{GENDER:$2}}đã giới hạn các ngôn ngữ của trang dịch được $3 ra $5",
+ "logentry-pagetranslation-associate": "$1 {{GENDER:$2}}đã thêm trang dịch được $3 và nhóm tập hợp $4",
+ "logentry-pagetranslation-dissociate": "$1 {{GENDER:$2}}đã rút trang dịch được $3 khỏi nhóm tập tin $4",
+ "pt-movepage-title": "Di chuyển trang dịch được $1",
+ "pt-movepage-blockers": "Trang dịch được không thể được đổi tên vì {{PLURAL:$1|lỗi|các lỗi}} sau:",
+ "pt-movepage-block-base-exists": "Bản gốc của trang đích dịch được “[[:$1]]” tồn tại.",
+ "pt-movepage-block-base-invalid": "Trang đích dịch được có tên không hợp lệ.",
+ "pt-movepage-block-tp-exists": "Bản dịch của trang đích [[:$2]] tồn tại.",
+ "pt-movepage-block-tp-invalid": "Bản dịch của trang đích [[:$1]] có tên không hợp lệ (có lẽ dài quá).",
+ "pt-movepage-block-section-exists": "Trang đích của đơn vị dịch thuật, “[[:$2]]”, đã tồn tại.",
+ "pt-movepage-block-section-invalid": "Trang đích của đơn vị dịch thuật, “[[:$1]]”, có tên không hợp lệ (có lẽ dài quá).",
+ "pt-movepage-block-subpage-exists": "Trang con của trang đích “[[:$2]]” đã tồn tại.",
+ "pt-movepage-block-subpage-invalid": "Trang con của trang đích “[[:$1]]” có tên không hợp lệ (có lẽ dài quá).",
+ "pt-movepage-list-pages": "Danh sách trang để di chuyển",
+ "pt-movepage-list-translation": "{{PLURAL:$1|Trang|Các trang}} biên dịch",
+ "pt-movepage-list-section": "{{PLURAL:$1|Trang|Các trang}} đơn vị dịch thuật",
+ "pt-movepage-list-other": "{{PLURAL:$1|Trang|Các trang}} con khác",
+ "pt-movepage-list-count": "Tổng cộng có $1 trang để di chuyển.",
+ "pt-movepage-legend": "Di chuyển trang dịch được",
+ "pt-movepage-current": "Tên hiện hành:",
+ "pt-movepage-new": "Tên mới:",
+ "pt-movepage-reason": "Lý do:",
+ "pt-movepage-subpages": "Di chuyển các trang con",
+ "pt-movepage-action-check": "Kiểm tra có thể di chuyển",
+ "pt-movepage-action-perform": "Di chuyển",
+ "pt-movepage-action-other": "Thay đổi trang đích",
+ "pt-movepage-intro": "Trang đặc biệt này cho phép bạn di chuyển các trang được đánh dấu là cần dịch.\nTác vụ này sẽ không được thực hiện ngay vì cần di chuyển nhiều trang một lúc.\nTrong khi các trang đang được di chuyển, không thể tương tác các trang đó.\nNhững vụ thất bại sẽ được ghi vào [[Special:Log/pagetranslation|nhật trình dịch trang]]; các trang được ảnh hưởng sẽ cần được sửa đổi bằng tay.",
+ "pt-movepage-logreason": "Một phần của trang dịch được $1.",
+ "pt-movepage-started": "Trang gốc đã được di chuyển.\nXin hãy kiểm tra những lỗi hay thông điệp kết quả thành công trong [[Special:Log/pagetranslation|nhật trình dịch trang]].",
+ "pt-locked-page": "Trang này bị khóa vì trang dịch được hiện đang được di chuyển.",
+ "pt-deletepage-lang-title": "Đang xóa trang dịch $1.",
+ "pt-deletepage-full-title": "Đang xóa trang dịch được $1.",
+ "pt-deletepage-invalid-title": "Trang đã chỉ định là không hợp lệ.",
+ "pt-deletepage-invalid-text": "Trang đã chỉ định không phải là trang dịch được mà cũng không phải là trang biên dịch.",
+ "pt-deletepage-action-check": "Danh sách các trang sẽ được xóa",
+ "pt-deletepage-action-perform": "Thực hiện xóa",
+ "pt-deletepage-action-other": "Thay đổi trang đích",
+ "pt-deletepage-lang-legend": "Xóa trang dịch",
+ "pt-deletepage-full-legend": "Xóa trang dịch được",
+ "pt-deletepage-any-legend": "Xóa trang dịch được hoặc trang biên dịch",
+ "pt-deletepage-current": "Tên trang:",
+ "pt-deletepage-reason": "Lý do:",
+ "pt-deletepage-subpages": "Xóa mọi trang con",
+ "pt-deletepage-list-pages": "Danh sách các trang sẽ được xóa",
+ "pt-deletepage-list-translation": "Các trang dịch",
+ "pt-deletepage-list-section": "Trang đơn vị dịch thuật",
+ "pt-deletepage-list-other": "Các trang con khác",
+ "pt-deletepage-list-count": "Tổng cộng $1 trang sẽ được xóa.",
+ "pt-deletepage-full-logreason": "Một phần của trang dịch được $1.",
+ "pt-deletepage-lang-logreason": "Một phần của trang dịch $1.",
+ "pt-deletepage-started": "Xin hãy kiểm tra những lỗi hay thông điệp kết quả thành công trong [[Special:Log/pagetranslation|nhật trình dịch trang]].",
+ "pt-deletepage-intro": "Trang đặc biệt này cho phép bạn xóa toàn bộ trang dịch được hoặc một trang biên dịch trong một ngôn ngữ nào đó.\nTác vụ xóa sẽ không được thực hiện ngay, bởi vì tất cả mọi trang dựa vào nó cũng sẽ bị xóa.\nCác thất bại được ghi vào [[Special:Log/pagetranslation|nhật trình dịch trang]] sẽ cần phải được sửa bằng tay.",
+ "pagemigration": "Di chuyển trang biên dịch",
+ "pagemigration-summary": "Chỉ định một trang biên dịch và phục hồi bản dịch nào được thực hiện trước khi hệ thống Biên dịch được kích hoạt trên trang đó.",
+ "pm-import-button-label": "Nhập",
+ "pm-savepages-button-label": "Lưu",
+ "pm-cancel-button-label": "Hủy bỏ",
+ "pm-pagename-placeholder": "Nhập tên trang",
+ "pm-langcode-placeholder": "Mã ngôn ngữ",
+ "pm-page-does-not-exist": "$1 không tồn tại",
+ "pm-old-translations-missing": "$1 không chứa các bản dịch cũ",
+ "pm-extra-units-warning": "Có thể còn dư một số đơn vị dịch. Xin hãy làm cho các đơn vị nguồn và dịch hợp nhau.",
+ "pm-pagename-missing": "Vui lòng nhập tên trang",
+ "pm-langcode-missing": "Vui lòng nhập mã ngôn ngữ",
+ "pm-add-icon-hover-text": "Thêm một đơn vị bên dưới",
+ "pm-swap-icon-hover-text": "Đổi chỗ với đơn vị bên dưới",
+ "pm-delete-icon-hover-text": "Xóa đơn vị",
+ "pm-pagetitle-invalid": "Xin vui lòng nhập một tên trang hợp lệ",
+ "pm-summary-import": "Đã nhập bản dịch bằng cách [[Special:PageMigration|chuyển trang]]",
+ "tpt-translate-title": "Cho phép dịch tên trang",
+ "pp-save-summary": "Đã chuẩn bị trang để dịch",
+ "pagepreparation": "Chuẩn bị trang để dịch",
+ "pp-pagename-placeholder": "Nhập tên trang",
+ "pp-prepare-button-label": "Chuẩn bị",
+ "pp-save-button-label": "Lưu",
+ "pp-save-message": "Trang đã được lưu. Bạn có thể [$1 sửa đổi] nó.",
+ "pp-prepare-message": "Trang đã được chuẩn bị để dịch. Xem khác biệt bên dưới. Bấm nút “{{int:pp-save-button-label}}” nếu được.",
+ "pp-already-prepared-message": "Hình như trang đã được chuẩn bị để dịch rồi. Không có khác biệt so với phiên bản trước.",
+ "pp-pagename-missing": "Vui lòng nhập tên trang.",
+ "pp-diff-old-header": "Văn bản gốc",
+ "pp-diff-new-header": "Văn bản đã chuẩn bị",
+ "tpt-unlink-confirm": "Xin vui lòng xác nhận rằng bạn chắc chắn muốn gỡ trang này khỏi hệ thống biên dịch.\nChức năng chọn ngôn ngữ và các tên trang biên dịch sẽ không còn hoạt động.\nSẽ có thể sửa đổi các trang biên dịch.",
+ "tpt-unlink-button": "Gỡ khỏi hệ thống biên dịch",
+ "tpt-unlink-summary": "Đã gỡ trang khỏi hệ thống biên dịch"
+}
diff --git a/MLEB/Translate/i18n/pagetranslation/vo.json b/MLEB/Translate/i18n/pagetranslation/vo.json
new file mode 100644
index 00000000..e1da34f5
--- /dev/null
+++ b/MLEB/Translate/i18n/pagetranslation/vo.json
@@ -0,0 +1,10 @@
+{
+ "@metadata": {
+ "authors": [
+ "Malafaya",
+ "Smeira"
+ ]
+ },
+ "translate-tag-translate-link-desc": "Tradutön padi at",
+ "tpt-languages-legend": "Püks votik:"
+}
diff --git a/MLEB/Translate/i18n/pagetranslation/wuu.json b/MLEB/Translate/i18n/pagetranslation/wuu.json
new file mode 100644
index 00000000..3d45cea0
--- /dev/null
+++ b/MLEB/Translate/i18n/pagetranslation/wuu.json
@@ -0,0 +1,4 @@
+{
+ "@metadata": [],
+ "pt-movepage-reason": "理由:"
+}
diff --git a/MLEB/Translate/i18n/pagetranslation/yi.json b/MLEB/Translate/i18n/pagetranslation/yi.json
new file mode 100644
index 00000000..1d308b41
--- /dev/null
+++ b/MLEB/Translate/i18n/pagetranslation/yi.json
@@ -0,0 +1,124 @@
+{
+ "@metadata": {
+ "authors": [
+ "Imre",
+ "פוילישער",
+ "පසිඳු කාවින්ද"
+ ]
+ },
+ "pagetranslation": "בלאט טײַטש",
+ "right-pagetranslation": "מארקירן ווערסיעס פון בלעטער פאר איבערזעצונג",
+ "action-pagetranslation": "פֿארוואלטן איבערזעצבאַרע בלעטער",
+ "tpt-desc": "פארברייטערונג פאר איבערזעצן אינהאלט בלעטער",
+ "tpt-section": "איבערזעצונג איינהייט $1",
+ "tpt-section-new": "נײַע איבערזעצונג איינהייט.\nנאמען: $1",
+ "tpt-section-deleted": "איבערזעצונג איינהייט $1",
+ "tpt-template": "בלאט מוסטער",
+ "tpt-templatediff": "דער בלאט מוסטער האט זיך געענדערט.",
+ "tpt-diff-old": "פֿריערדיגער טעקסט",
+ "tpt-diff-new": "נײַער טעקסט",
+ "tpt-submit": "מארקירן די ווערסיע פאר איבערזעצונג",
+ "tpt-sections-oldnew": "נײַע און עקסיסטירנדע איבערזעצונג איינהייטן",
+ "tpt-sections-deleted": "אויסגעמעקטע איבערזעצונג איינהייטן",
+ "tpt-sections-template": "איבערזעצונג בלאט מוסטער",
+ "tpt-action-nofuzzy": "נישט פסל'ן איבערזעצונגען",
+ "tpt-badtitle": "געגעבענער בלאט נאמען ($1) איז נישט קיין גילטיקער טיטל",
+ "tpt-nosuchpage": "בלאט $1 עקזיסטירט נישט",
+ "tpt-oldrevision": "$2 איז נישט די לעצטע ווערסיע פונעם בלאט [[:$1]].\nנאר לעצטע ווערסיעס קען מען מארקירן פאר איבערזעצונג.",
+ "tpt-notsuitable": "בלאט $1 פאסט נישט איבערצוזעצן.\nפארזיכערט אז ער האט <nowiki><translate></nowiki> טאַגן און האט א גילטיקן סינטאקס.",
+ "tpt-saveok": "דער בלאט [[:$1]] איז געווארן מארקירט פאר איבערזעצן מיט $2 {{PLURAL:$2|איבערזעצונג אפשניט|איבערזעצונג אפשניטן}}.\nדער בלאט קען מען אצינד <span class=\"plainlinks\">[$3 איבערזעצן]</span>.",
+ "tpt-badsect": "\"$1\" איז נישט קיין גילטיקער נאמען פאר איבערזעצונג איינהייט $2.",
+ "tpt-mark-summary": "מארקירט די ווערסיע פאר איבערזעצונג",
+ "tpt-edit-failed": "האט נישט געקענט דערהיינטיקן דעם בלאט: $1",
+ "tpt-duplicate": "איבערזעצונג אפשניט נאמען $1 געניצט מער ווי איין מאל.",
+ "tpt-already-marked": "די לעצטע ווערסיע פון דעם בלאט איז שוין געווארן מארקירט איבערצוזעצן.",
+ "tpt-unmarked": "בלאט $1 מער נישט מארקירט איבערצוזעצן.",
+ "tpt-list-nopages": "קיין בלעטער נישט מארקירט צום איבערזעצן אדער גרייט צו ווערן מארקירט צום איבערזעצן.",
+ "tpt-new-pages-title": "בלעטער פארגעשטעלט איבערצוזעצן",
+ "tpt-old-pages-title": "בלעטער איבערצוזעצן",
+ "tpt-other-pages-title": "צעבראכענע בלעטער",
+ "tpt-discouraged-pages-title": "צוריקגעצויגענע בלעטער",
+ "tpt-old-pages": "א ווערסיע פון {{PLURAL:$1|דעם בלאט איז|די בלעטער זענען}} געווארן מארקירט פאר איבערזעצונג.",
+ "tpt-select-prioritylangs-reason": "אורזאַך:",
+ "tpt-sections-prioritylangs": "פריאריזירטע שפראכן",
+ "tpt-rev-mark": "מארקירן פאר איבערזעצונג",
+ "tpt-rev-unmark": "אוועקנעמען פון איבערזעצונג",
+ "tpt-rev-encourage": "אויפֿריכטן",
+ "tpt-rev-mark-tooltip": "מארקירן די לעצטע ווערזיע פון דעם בלאט פאר איבערזעצן.",
+ "tpt-rev-unmark-tooltip": "אוועקנעמען דעם בלאט פון איבערזעצן.",
+ "tpt-rev-encourage-tooltip": "שטעלט צוריק דעם בלאט פאר נארמאלער איבערזעצונג.",
+ "translate-tag-translate-link-desc": "פֿאַרטײַטשט דעם בלאַט",
+ "translate-tag-markthis": "מארקירן דעם בלאט פאר איבערזעצונג",
+ "translate-tag-markthisagain": "דער בלאַט האט <span class=\"plainlinks\">[ $1 ענדערונגען]</span> זינט ער איז לעצט געווארן <span class=\"plainlinks\">[ $2 אנגעצייכנט פֿאַר איבערזעצונג].</span>",
+ "translate-tag-hasnew": "דער בלאַט אַנטהאַלט <span class=\"plainlinks\">[ $1 ענדערונגען]</span> וואָס זענען נישט אנגעצייכנט פֿאַר איבערזעצונג.",
+ "tpt-translation-intro": "דער דאזיקער בלאט איז א <span class=\"plainlinks\">[$1 איבערגעזעצטע ווערסיע]</span> פון דעם בלאט [[$2]] און די איבערזעצונג איז $3% פארענדיקט.",
+ "tpt-languages-legend": "אנדערע שפראַכן:",
+ "tpt-languages-zero": "אנהייבן איבערזעצן די דאזיקע שפראך",
+ "tpt-tab-translate": "איבערזעצן",
+ "tpt-target-page": "מען קען נישט דערהיינטיקן דעם בלאט מאנועל.\nדער בלאט איז אן איבערזעצונג פונעם בלאט [[$1]] און מען קען דערהיינטיקן די איבערזעצונג מיט די [$2 איבערזעצונג געצייג].",
+ "tpt-discouraged-language-force-header": "מען קען נישט איבערזעצן דעם בלאט אויף $1.",
+ "tpt-discouraged-language-force-content": "אן איבערזעצונג־אדמיניסטראטאר האט באשלאסן אז דער בלעט קען מען איבערזעצן נאר אויף $1.",
+ "tpt-discouraged-language-reason": "אורזאך: $1",
+ "tpt-download-page": "עקספארטירן בלאט מיט איבערזעצונגען",
+ "tpt-aggregategroup-add": "צולייגן",
+ "tpt-aggregategroup-save": "אויפֿהיטן",
+ "tpt-aggregategroup-new-name": "נאָמען:",
+ "tpt-aggregategroup-new-description": "באשרייבונג (אפציאנאל):",
+ "tpt-aggregategroup-remove-confirm": "איר זענט זיכער אז איר ווילט אויסמעקן די גרופע?",
+ "tpt-aggregategroup-invalid-group": "גרופע עקזיסטירט נישט",
+ "tpt-aggregategroup-edit-name": "נאָמען:",
+ "tpt-aggregategroup-edit-description": "באַשרײַבונג:",
+ "tpt-aggregategroup-update": "אויפֿהיטן",
+ "tpt-aggregategroup-update-cancel": "אַנולירן",
+ "log-name-pagetranslation": "בלאט איבערזעצונג לאגבוך",
+ "logentry-pagetranslation-mark": "$1 {{GENDER:$2|מארקירט}} $3 איבערצוזעצן",
+ "logentry-pagetranslation-unmark": "$1 {{GENDER:$2|אראפגענומען}} $3 פון איבערזעצן",
+ "pt-movepage-title": "באוועגן איבערזעצבארן בלאט \"$1\"",
+ "pt-movepage-block-base-exists": "דער איבערזעצבאר צילבלאט \"[[:$1]]\" עקזיסטירט.",
+ "pt-movepage-block-base-invalid": "דער נאמען פונעם איבערזעצבארן צילבלאט איז נישט קיין גילטיקער טיטל.",
+ "pt-movepage-block-tp-exists": "דער ציל אונטערבלאט \"[[:$2]]\" עקזיסטירט.",
+ "pt-movepage-block-subpage-exists": "דער ציל אונטערבלאט \"[[:$2]]\" עקזיסטירט.",
+ "pt-movepage-list-pages": "רשימה פון בלעטער צו באַוועגן",
+ "pt-movepage-list-translation": "טײַטש {{PLURAL:$1|בלאַט|בלעטער}}",
+ "pt-movepage-list-section": "איבערזעצונג איינהייט {{PLURAL:$1|בלאַט|בלעטער}}",
+ "pt-movepage-list-other": "אנדערע אונטער{{PLURAL:$1|בלאַט|בלעטער}}",
+ "pt-movepage-list-count": "אינגאנצן $1 {{PLURAL:$1|בלאט|בלעטער}} צו באוועגן.",
+ "pt-movepage-legend": "באוועגן איבערזעצבארן בלאט",
+ "pt-movepage-current": "אקטועלער נאמען:",
+ "pt-movepage-new": "נײַער נאָמען:",
+ "pt-movepage-reason": "אורזאַך:",
+ "pt-movepage-subpages": "באוועגן אלע אונטערבלעטער",
+ "pt-movepage-action-check": "קאנטראלירט צי די באוועגונג איז מעגלעך",
+ "pt-movepage-action-perform": "פֿירט אויס די באוועגונג",
+ "pt-movepage-action-other": "ענדערט ציל",
+ "pt-movepage-logreason": "טייל פון איבערזעצבארן בלאט \"$1\".",
+ "pt-deletepage-lang-title": "אויסמעקן איבערזעצונג בלאט \"$1\".",
+ "pt-deletepage-full-title": "אויסמעקן איבערזעצבארן בלאט \"$1\".",
+ "pt-deletepage-invalid-title": "דער ספעציפירטער בלאט איז נישט גילטיק.",
+ "pt-deletepage-action-check": "מאכט א רשימה פון בלעטער צו ווערן אויסגעמעקט",
+ "pt-deletepage-action-perform": "אויספירן אויסמעקונג",
+ "pt-deletepage-action-other": "ענדערן ציל",
+ "pt-deletepage-lang-legend": "אויסמעקן איבערזעצונג בלאט",
+ "pt-deletepage-full-legend": "אויסמעקן איבערזעצבארן בלאט",
+ "pt-deletepage-any-legend": "אויסמעקן איבערזעצבארן בלאט אדער איבערזעצונג בלאט",
+ "pt-deletepage-current": "בלאַט נאָמען:",
+ "pt-deletepage-reason": "אורזאַך:",
+ "pt-deletepage-subpages": "אויסמעקן אלע אונטערבלעטער",
+ "pt-deletepage-list-pages": "רשימה פון בלעטער אויסצומעקן",
+ "pt-deletepage-list-translation": "איבערזעצונג בלעטער",
+ "pt-deletepage-list-section": "איבערזעצונג איינהייט בלעטער",
+ "pt-deletepage-list-other": "אנדערע אונטערבלעטער",
+ "pt-deletepage-list-count": "אינגאנצן $1 {{PLURAL:$1|בלאט|בלעטער}} אויסצומעקן.",
+ "pt-deletepage-full-logreason": "טייל פון איבערזעצבארן בלאט $1.",
+ "pt-deletepage-lang-logreason": "טייל פון איבערזעצונג בלאט $1.",
+ "pm-import-button-label": "אימפארטירן",
+ "pm-savepages-button-label": "אויפֿהיטן",
+ "pm-cancel-button-label": "אַנולירן",
+ "pm-langcode-placeholder": "שפראַך קאד",
+ "pm-page-does-not-exist": "$1 עקזיסטירט נישט",
+ "pm-old-translations-missing": "$1 אנטהאלט נישט קיין אלטע איבערזעצונגען",
+ "pm-delete-icon-hover-text": "אויסמעקן איינס",
+ "pp-pagename-placeholder": "אײַנגעבן בלאטנאמען",
+ "pp-save-button-label": "אויפֿהיטן",
+ "pp-diff-old-header": "קוואל־טעקסט"
+}
diff --git a/MLEB/Translate/i18n/pagetranslation/zh-hans.json b/MLEB/Translate/i18n/pagetranslation/zh-hans.json
new file mode 100644
index 00000000..80e86933
--- /dev/null
+++ b/MLEB/Translate/i18n/pagetranslation/zh-hans.json
@@ -0,0 +1,217 @@
+{
+ "@metadata": {
+ "authors": [
+ "Anakmalaysia",
+ "Chenxiaoqino",
+ "Dimension",
+ "Gzdavidwong",
+ "Hydra",
+ "Hzy980512",
+ "Li3939108",
+ "Liangent",
+ "Linforest",
+ "Liuxinyu970226",
+ "Mys 721tx",
+ "PhiLiP",
+ "Shirayuki",
+ "Slboat",
+ "Supaiku",
+ "TianyinLee",
+ "Xiaomingyan",
+ "Yfdyh000",
+ "阿pp",
+ "Hudafu",
+ "NigelSoft"
+ ]
+ },
+ "pagetranslation": "页面翻译",
+ "right-pagetranslation": "标记翻译的页面版本",
+ "action-pagetranslation": "管理可翻译页面",
+ "tpt-desc": "用于翻译内容页面的扩展程序",
+ "tpt-section": "翻译单元$1",
+ "tpt-section-new": "新翻译单元。\n名字:$1",
+ "tpt-section-deleted": "翻译单元$1",
+ "tpt-template": "页面模板",
+ "tpt-templatediff": "页面模板已改变。",
+ "tpt-diff-old": "上一版本文字",
+ "tpt-diff-new": "下一版本文字",
+ "tpt-submit": "标记此版本进行翻译",
+ "tpt-sections-oldnew": "新的和现存的翻译单元",
+ "tpt-sections-deleted": "已删除的翻译模块",
+ "tpt-sections-template": "翻译页面模版",
+ "tpt-action-nofuzzy": "不要使翻译作废",
+ "tpt-badtitle": "页面名称 ($1) 不是一个有效的标题",
+ "tpt-nosuchpage": "页面$1 不存在。",
+ "tpt-oldrevision": "$2 不是页面 [[:$1]] 的最新版本。只有最新版本可以标记进行翻译。",
+ "tpt-notsuitable": "页$1不适合翻译。\n请确保它具有 <nowiki><translate></nowiki> 标记,并具有有效的语法。",
+ "tpt-saveok": "页面[[:$1]]已被标记将进行翻译,一共$2个翻译单位。\n本页面现已可以<span class=\"plainlinks\">[$3 翻译]</span>。",
+ "tpt-offer-notify": "您可以<span class=\"plainlinks\">[$1 通告关于此页面的翻译]</span>。",
+ "tpt-badsect": "“$1”对于$2翻译单位不是有效的名称。",
+ "tpt-showpage-intro": "以下列出新创、现存及已删除的翻译单元。\n将此版本标记进行翻译之前,请检查来确定该部分极少受修改,以便翻译员避免得到多余的工作。",
+ "tpt-mark-summary": "此版本已被标记将进行翻译",
+ "tpt-mark-nochanges": "此修订和最近标记的修订之间没有差异。",
+ "tpt-edit-failed": "无法更新该页面:$1",
+ "tpt-duplicate": "翻译单位名称$1已被使用超过一次。",
+ "tpt-already-marked": "此页面的最新版本已经已标记进行翻译。",
+ "tpt-unmarked": "$1页不再被标记进行翻译。",
+ "tpt-list-nopages": "没有被标记进行翻译或者准备被标记进行翻译的页面。",
+ "tpt-new-pages-title": "提议翻译的页面",
+ "tpt-old-pages-title": "正在翻译的页面",
+ "tpt-other-pages-title": "受损页面",
+ "tpt-discouraged-pages-title": "不建议的页面",
+ "tpt-new-pages": "以下$1个页面包含具有翻译标记的文本,但没有被标记进行翻译的版本。",
+ "tpt-old-pages": "以下{{PLURAL:$1|此|这些}}页面有被标记进行翻译的版本。",
+ "tpt-other-pages": "{{PLURAL:$1|此|这些}}页面的旧版本被标记翻译,但最新版本不能标记翻译。",
+ "tpt-discouraged-pages": "{{PLURAL:$1|该|这些}}页面不需要继续翻译。",
+ "tpt-select-prioritylangs": "优先语言代码的逗号分隔型列表",
+ "tpt-select-prioritylangs-force": "不允许向优先语言以外的语言的翻译",
+ "tpt-select-prioritylangs-reason": "原因:",
+ "tpt-sections-prioritylangs": "优先语言",
+ "tpt-rev-mark": "标记进行翻译",
+ "tpt-rev-unmark": "从翻译中删除",
+ "tpt-rev-discourage": "不建议",
+ "tpt-rev-encourage": "恢复",
+ "tpt-rev-mark-tooltip": "标记本页的最新版本进行翻译。",
+ "tpt-rev-unmark-tooltip": "从翻译中删除此页。",
+ "tpt-rev-discourage-tooltip": "不要再进一步翻译此页。",
+ "tpt-rev-encourage-tooltip": "将此页面恢复正常翻译模式。",
+ "translate-tag-translate-link-desc": "翻译本页",
+ "translate-tag-markthis": "标记此页面将进行翻译",
+ "translate-tag-markthisagain": "此页面最近被<span class=\"plainlinks\">[$2 标记(点击可进行导入)]</span>进行翻译以来,已经过一些<span class=\"plainlinks\">[$1 更改]</span>。",
+ "translate-tag-hasnew": "此页面有未被标记进行翻译的<span class=\"plainlinks\">[$1 更改]</span>。",
+ "tpt-translation-intro": "本页是页面[[$2]]的<span class=\"plainlinks\">[$1 翻译版本]</span>,翻译工作已完成$3%。",
+ "tpt-languages-legend": "其他语言:",
+ "tpt-languages-zero": "开始这种语言的翻译",
+ "tpt-languages-nonzero": "$1($2%已翻译)",
+ "tpt-tab-translate": "翻译",
+ "tpt-target-page": "本页面无法手动更新。\n本页面是[[$1]]页面的翻译版,可以使用[$2 翻译工具]来更新该翻译。",
+ "tpt-unknown-page": "此命名空间是保留给内容页面翻译。\n您尝试编辑的页面似乎没有对应任何被标记进行翻译的页面。",
+ "tpt-translation-restricted": "此页面到这种语言的翻译,已被翻译管理员禁止。\n\n原因:$1",
+ "tpt-discouraged-language-force-header": "此页面不能翻译成$1。",
+ "tpt-discouraged-language-force-content": "翻译管理员决定此页面只能翻译成$1。",
+ "tpt-discouraged-language-header": "此页面不应优先翻译成$1。",
+ "tpt-discouraged-language-content": "翻译管理员决定将竭力翻译成$1。",
+ "tpt-discouraged-language-force": "<strong>此页面不能翻译到$2。</strong>\n\n一名翻译管理员已决定,此页面仅可以翻译为$3。",
+ "tpt-discouraged-language": "<strong>翻译此页面为$2并非首要任务。</strong>\n\n一名翻译管理员已在$3决定翻译工作的重点。",
+ "tpt-discouraged-language-reason": "原因:$1",
+ "tpt-priority-languages": "翻译管理员已将该组需优先翻译的语言设为$1。",
+ "tpt-render-summary": "更新以匹配源页面内容的新版本",
+ "tpt-download-page": "汇出含翻译的页面",
+ "aggregategroups": "聚合组",
+ "tpt-aggregategroup-add": "添加",
+ "tpt-aggregategroup-save": "保存",
+ "tpt-aggregategroup-add-new": "添加新的聚合组",
+ "tpt-aggregategroup-new-name": "名称:",
+ "tpt-aggregategroup-new-description": "说明 (可选):",
+ "tpt-aggregategroup-remove-confirm": "确实要删除此聚合组吗?",
+ "tpt-aggregategroup-invalid-group": "组别不存在",
+ "tpt-aggregategroup-edit-name": "名称:",
+ "tpt-aggregategroup-edit-description": "说明:",
+ "tpt-aggregategroup-update": "保存",
+ "tpt-aggregategroup-update-cancel": "取消",
+ "tpt-invalid-group": "无效组",
+ "pt-parse-open": "&lt;translate>标签不平衡。\n翻译模板:<pre>$1</pre>",
+ "pt-parse-close": "&lt;/translate>标签不平衡。\n翻译模板:<pre>$1</pre>",
+ "pt-parse-nested": "不允许嵌套&lt;translate>翻译单元。\n标签文本:$1",
+ "pt-shake-multiple": "单一翻译单元含多个翻译单元标记。\n翻译单元文本:<pre>$1</pre>",
+ "pt-shake-position": "翻译单元标记在意外位置。\n翻译单元文本:<pre>$1</pre>",
+ "pt-shake-empty": "为“$1”的翻译单位标记是空的。",
+ "log-description-pagetranslation": "页面翻译系统的对应活动日志",
+ "log-name-pagetranslation": "页面翻译日志",
+ "logentry-pagetranslation-mark": "$1将$3{{GENDER:$2|标记为}}需要翻译",
+ "logentry-pagetranslation-unmark": "$1将$3从翻译中{{GENDER:$2|除去}}",
+ "logentry-pagetranslation-moveok": "$1{{GENDER:$2|完成了}}翻译页面$3到$4的重命名",
+ "logentry-pagetranslation-movenok": "$1在移动页面$3到$4时{{GENDER:$2|遇到了}}一个问题",
+ "logentry-pagetranslation-deletefok": "$1{{GENDER:$2|完成了}}翻译页面$3的删除",
+ "logentry-pagetranslation-deletefnok": "$1删除属于翻译页面$4的$3{{GENDER:$2|失败}}",
+ "logentry-pagetranslation-deletelok": "$1{{GENDER:$2|完成了}}翻译页面$3的删除",
+ "logentry-pagetranslation-deletelnok": "$1删除属于翻译页面$4的$3{{GENDER:$2|失败}}",
+ "logentry-pagetranslation-encourage": "$1{{GENDER:$2|支持}}$3的翻译",
+ "logentry-pagetranslation-discourage": "$1{{GENDER:$2|不支持}}$3的翻译",
+ "logentry-pagetranslation-prioritylanguages-unset": "$1已从翻译的页面$3的优先语言中被{{GENDER:$2|移除}}",
+ "logentry-pagetranslation-prioritylanguages": "$1{{GENDER:$2|设置}}了此翻译页面的优先语言从$3到$5",
+ "logentry-pagetranslation-prioritylanguages-force": "$1认为$3到$5对此翻译页面的贡献{{GENDER:$2|很有限}}",
+ "logentry-pagetranslation-associate": "$1{{GENDER:$2|添加}}了翻译页面$3至信息组$4",
+ "logentry-pagetranslation-dissociate": "$1已在信息组$4的翻译页面$3中{{GENDER:$2|移除}}",
+ "pt-movepage-title": "移动可翻译页面$1",
+ "pt-movepage-blockers": "可翻译页面因下列$1错误无法移动至新名称:",
+ "pt-movepage-block-base-exists": "可翻译的目标页面“[[:$1]]”已存在。",
+ "pt-movepage-block-base-invalid": "可翻译的目标页面名称不是一个有效标题。",
+ "pt-movepage-block-tp-exists": "目标翻译页面[[:$2]]存在。",
+ "pt-movepage-block-tp-invalid": "[[:$1]]的目标翻译页面的标题无效(可能太长)。",
+ "pt-movepage-block-section-exists": "为目标页面“[[:$2]]”的翻译单位存在。",
+ "pt-movepage-block-section-invalid": "目标页面为 “[[:$1]]” 的翻译单元可能无效(太长?)。",
+ "pt-movepage-block-subpage-exists": "目标子页面“[[:$2]]”存在。",
+ "pt-movepage-block-subpage-invalid": "[[:$1]]的子页面标题无效(可能太长)。",
+ "pt-movepage-list-pages": "需移动页面的列表",
+ "pt-movepage-list-translation": "翻译{{PLURAL:$1|页面|页面}}",
+ "pt-movepage-list-section": "翻译单元{{PLURAL:$1|页面}}",
+ "pt-movepage-list-other": "其他子{{PLURAL:$1|页面}}",
+ "pt-movepage-list-count": "共移动$1个页面。",
+ "pt-movepage-legend": "移动可翻译页面",
+ "pt-movepage-current": "当前名称:",
+ "pt-movepage-new": "新名称:",
+ "pt-movepage-reason": "原因:",
+ "pt-movepage-subpages": "移动所有子页面",
+ "pt-movepage-action-check": "检查是否可以移动",
+ "pt-movepage-action-perform": "确认移动",
+ "pt-movepage-action-other": "更改目标",
+ "pt-movepage-intro": "本特殊页面允许您移动被标记进行翻译的页面。\n此移动操作将不会一瞬间,因为有很多页面要移动。\n当页面移动中,不能与该页面交互。\n任何移动失败将在[[Special:Log/pagetranslation|页面翻译日志]]记录,并且需要手动修理。",
+ "pt-movepage-logreason": "可翻译页面“$1”的一部分。",
+ "pt-movepage-started": "基页面现已移动。\n请检查[[Special:Log/pagetranslation|页面翻译日志]]内的错误和完成消息。",
+ "pt-locked-page": "此页面已被锁定,因为可翻译页面正在被移动。",
+ "pt-deletepage-lang-title": "删除翻译页面“$1”。",
+ "pt-deletepage-full-title": "删除可翻译页面“$1”。",
+ "pt-deletepage-invalid-title": "指定的页不是有效的。",
+ "pt-deletepage-invalid-text": "指定的页面不是一个可翻译页面或一个翻译信息页面。",
+ "pt-deletepage-action-check": "要删除的列表页",
+ "pt-deletepage-action-perform": "立即删除",
+ "pt-deletepage-action-other": "更改目标",
+ "pt-deletepage-lang-legend": "删除翻译页面",
+ "pt-deletepage-full-legend": "删除可翻译页面",
+ "pt-deletepage-any-legend": "删除可翻译的页面或翻译信息的页面",
+ "pt-deletepage-current": "页面名称:",
+ "pt-deletepage-reason": "原因:",
+ "pt-deletepage-subpages": "删除所有子页面",
+ "pt-deletepage-list-pages": "若要删除的页面列表",
+ "pt-deletepage-list-translation": "翻译页面",
+ "pt-deletepage-list-section": "翻译单元页面",
+ "pt-deletepage-list-other": "其他子页面",
+ "pt-deletepage-list-count": "共删除$1个页面。",
+ "pt-deletepage-full-logreason": "翻译页面$1的一部分。",
+ "pt-deletepage-lang-logreason": "翻译页面$1的一部分。",
+ "pt-deletepage-started": "请检查[[Special:Log/pagetranslation|页面翻译日志]]内的错误和完成消息。",
+ "pt-deletepage-intro": "本特殊页面允许您删除一种语言中一整个可翻译页面或单个翻译页面。\n因为所有相关页会一并删除,此操作不会即时完成。\n失败操作记录于[[Special:Log/pagetranslation|页面翻译日志]]中并且需要手动修理。",
+ "pagemigration": "翻译页面迁移",
+ "pagemigration-summary": "指定翻译页面并恢复翻译系统启用前做出的任何翻译。",
+ "pm-import-button-label": "导入",
+ "pm-savepages-button-label": "保存",
+ "pm-cancel-button-label": "取消",
+ "pm-pagename-placeholder": "输入页面名称",
+ "pm-langcode-placeholder": "语言代码",
+ "pm-page-does-not-exist": "$1不存在",
+ "pm-old-translations-missing": "$1没有旧翻译",
+ "pm-extra-units-warning": "提供的单位可能有误。请正确匹配翻译单位和源单位",
+ "pm-pagename-missing": "请输入页面名称",
+ "pm-langcode-missing": "请输入语言代码",
+ "pm-add-icon-hover-text": "往下面添加单位",
+ "pm-swap-icon-hover-text": "和下面的单位替换",
+ "pm-delete-icon-hover-text": "删除单位",
+ "pm-pagetitle-invalid": "请输入一个有效的页面标题",
+ "pm-summary-import": "已通过[[Special:PageMigration|页面迁移]]导入翻译",
+ "tpt-translate-title": "允许页面标题的翻译",
+ "pp-save-summary": "准备翻译的页面",
+ "pagepreparation": "准备翻译的页面",
+ "pp-pagename-placeholder": "输入页面名称",
+ "pp-prepare-button-label": "准备",
+ "pp-save-button-label": "保存",
+ "pp-save-message": "此页面已保存。您可[$1 编辑]它。",
+ "pp-prepare-message": "此页面已准备翻译。请参见下面的差异。点击“{{int:pp-save-button-label}}”以确定。",
+ "pp-already-prepared-message": "看起来页面已经准备翻译。没有与之前版本比较的更改。",
+ "pp-pagename-missing": "请输入页面名。",
+ "pp-diff-old-header": "源文本",
+ "pp-diff-new-header": "准备好的文本",
+ "tpt-unlink-confirm": "请确认您真的希望从翻译系统移除此页面。语言选择器和翻译页面名将停止工作。翻译页面将可编辑。",
+ "tpt-unlink-button": "从翻译中移除",
+ "tpt-unlink-summary": "从翻译中移除页面"
+}
diff --git a/MLEB/Translate/i18n/pagetranslation/zh-hant.json b/MLEB/Translate/i18n/pagetranslation/zh-hant.json
new file mode 100644
index 00000000..f1c121c0
--- /dev/null
+++ b/MLEB/Translate/i18n/pagetranslation/zh-hant.json
@@ -0,0 +1,201 @@
+{
+ "@metadata": {
+ "authors": [
+ "Anakmalaysia",
+ "Cwlin0416",
+ "Liangent",
+ "Mark85296341",
+ "Simon Shek",
+ "TianyinLee",
+ "Waihorace",
+ "Wrightbus",
+ "Liuxinyu970226",
+ "LNDDYL"
+ ]
+ },
+ "pagetranslation": "頁面翻譯",
+ "right-pagetranslation": "標記用來翻譯的頁面版本",
+ "action-pagetranslation": "管理可翻譯頁面",
+ "tpt-desc": "用來翻譯內容頁面的擴充套件",
+ "tpt-section": "翻譯單元 $1",
+ "tpt-section-new": "新翻譯單元。\n名稱:$1",
+ "tpt-section-deleted": "翻譯單元 $1",
+ "tpt-template": "頁面樣板",
+ "tpt-templatediff": "已變更頁面樣板。",
+ "tpt-diff-old": "上個文字",
+ "tpt-diff-new": "新的文字",
+ "tpt-submit": "標記此版本用來翻譯",
+ "tpt-sections-oldnew": "新的和現有的翻譯單元",
+ "tpt-sections-deleted": "已刪除的翻譯單元",
+ "tpt-sections-template": "翻譯頁面樣板",
+ "tpt-action-nofuzzy": "不要作廢翻譯",
+ "tpt-badtitle": "頁面名稱 ($1) 不是一個有效的標題",
+ "tpt-nosuchpage": "頁面 $1 不存在。",
+ "tpt-oldrevision": "$2 不是頁面 [[:$1]] 的最新版本。\n僅可標記最新版本的頁面用來翻譯。",
+ "tpt-notsuitable": "頁面 $1 不適合翻譯。\n請確定該頁面擁有 <nowiki><translate></nowiki> 標籤,且使用有效的語法。",
+ "tpt-saveok": "頁面 [[:$1]] 已被標記做為翻譯使用,包含 $2 個翻譯單元。\n現在已可 <span class=\"plainlinks\">[$3 翻譯]</span> 頁面。",
+ "tpt-offer-notify": "您可以 <span class=\"plainlinks\">[$1 通知翻譯人員]</span> 翻譯此頁。",
+ "tpt-badsect": "翻譯單位 $2 的名稱 \"$1\" 無效。",
+ "tpt-showpage-intro": "下列為新的,已存在與已刪除的翻譯單元。\n在將此版本標記為可翻譯之前,請先檢查翻譯單位已最小化,避免翻譯人員不必要的作業。",
+ "tpt-mark-summary": "已標記此版本用來翻譯",
+ "tpt-edit-failed": "無法更新該頁面:$1",
+ "tpt-duplicate": "翻譯單元名稱 $1 已被使用超過一次。",
+ "tpt-already-marked": "此頁面的最新版本已標記用來翻譯。",
+ "tpt-unmarked": "頁面 $1 已不標記用來翻譯。",
+ "tpt-list-nopages": "沒有頁面已標記要用來翻譯或準備要標記用來翻譯。",
+ "tpt-new-pages-title": "建議翻譯的頁面",
+ "tpt-old-pages-title": "正在翻譯的頁面",
+ "tpt-other-pages-title": "損壞的頁面",
+ "tpt-discouraged-pages-title": "不建議的頁面",
+ "tpt-new-pages": "下列{{PLURAL:$1|頁面|頁面}}內容包含可翻譯的標籤,\n但目前尚未標記用來翻譯的{{PLURAL:$1|頁面|頁面}}版本。",
+ "tpt-old-pages": "以下{{PLURAL:$1|頁面|頁面}}已有標記用來翻譯的版本。",
+ "tpt-other-pages": "下列頁面已標記用來翻譯的{{PLURAL:$1|版本|版本}}為舊版,\n最新的{{PLURAL:$1|版本|版本}}無法標記用來翻譯。",
+ "tpt-discouraged-pages": "以下{{PLURAL:$1|頁面|頁面}}已不建議用來翻譯。",
+ "tpt-select-prioritylangs": "優先語言代碼 (以逗號分隔):",
+ "tpt-select-prioritylangs-force": "防止翻譯成優先語言以外的語言",
+ "tpt-select-prioritylangs-reason": "原因:",
+ "tpt-sections-prioritylangs": "優先語言",
+ "tpt-rev-mark": "標記用來翻譯",
+ "tpt-rev-unmark": "從翻譯中刪除",
+ "tpt-rev-discourage": "不建議",
+ "tpt-rev-encourage": "還原",
+ "tpt-rev-mark-tooltip": "標記此頁面的最新版本用來翻譯。",
+ "tpt-rev-unmark-tooltip": "從翻譯中刪除此頁面。",
+ "tpt-rev-discourage-tooltip": "不建議翻譯此頁面。",
+ "tpt-rev-encourage-tooltip": "還原此頁面為一般翻譯。",
+ "translate-tag-translate-link-desc": "翻譯此本頁",
+ "translate-tag-markthis": "標記此頁面用來翻譯",
+ "translate-tag-markthisagain": "此頁面在 <span class=\"plainlinks\">[$2 標記用來翻譯]</span> 之後,已有 <span class=\"plainlinks\">[$1 變更]</span>。",
+ "translate-tag-hasnew": "此頁面包含未被標記用來翻譯的 <span class=\"plainlinks\">[$1 變更]</span>。",
+ "tpt-translation-intro": "此頁面為頁面 [[$2]] <span class=\"plainlinks\">[$1 翻譯後的版本]</span> 且翻譯完成進度為 $3%。",
+ "tpt-languages-legend": "其他語言:",
+ "tpt-languages-zero": "開始翻譯此語言",
+ "tpt-languages-nonzero": "$1 ($2% 未翻譯)",
+ "tpt-tab-translate": "翻譯",
+ "tpt-target-page": "此頁面無法手動更新。\n此頁面是頁面 [[$1]] 的翻譯版本,翻譯可使用 [$2 翻譯工具] 更新。",
+ "tpt-unknown-page": "此命名空間是保留給內容頁面翻譯使用。\n您嘗試編輯的頁面似乎與任何被標記進行翻譯的頁面沒有關連。",
+ "tpt-translation-restricted": "翻譯此頁面為此語言已被翻譯管理員禁止。\n\n原因:$1",
+ "tpt-discouraged-language-force-header": "此頁面無法翻譯為 $1。",
+ "tpt-discouraged-language-force-content": "翻譯管理員決定只將此頁面翻譯為 $1。",
+ "tpt-discouraged-language-header": "翻譯為 $1 並非此頁面優先的工作。",
+ "tpt-discouraged-language-content": "翻譯管理員決定全力將此頁面翻譯為 $1。",
+ "tpt-discouraged-language-force": "<strong>此頁面不能翻譯為 $2。</strong>\n\n翻譯管理員決定只將此頁面翻譯為 $3。",
+ "tpt-discouraged-language": "<strong>翻譯為 $2 不是此頁面的優先工作。</strong>\n\n翻譯管理員決定全力將此頁面翻譯為 $3。",
+ "tpt-discouraged-language-reason": "原因:$1",
+ "tpt-priority-languages": "翻譯管理員已將此群組的優先語言設為 $1。",
+ "tpt-render-summary": "正在更新來源頁面以與新版本相符",
+ "tpt-download-page": "匯出頁面含翻譯",
+ "aggregategroups": "集合群組",
+ "tpt-aggregategroup-add": "新增",
+ "tpt-aggregategroup-save": "儲存",
+ "tpt-aggregategroup-add-new": "新增集合群組",
+ "tpt-aggregategroup-new-name": "名稱:",
+ "tpt-aggregategroup-new-description": "描述 (選填):",
+ "tpt-aggregategroup-remove-confirm": "確實要刪除此集合群組嗎?",
+ "tpt-aggregategroup-invalid-group": "群組不存在",
+ "tpt-aggregategroup-edit-name": "名稱:",
+ "tpt-aggregategroup-edit-description": "描述:",
+ "tpt-aggregategroup-update": "儲存",
+ "tpt-aggregategroup-update-cancel": "取消",
+ "tpt-invalid-group": "無效的群組",
+ "pt-parse-open": "&lt;translate> 標籤不對稱。\n翻譯樣版:<pre>$1</pre>",
+ "pt-parse-close": "&lt;/translate> 標籤不對稱。\n翻譯樣版:<pre>$1</pre>",
+ "pt-parse-nested": "不允許巢狀 &lt;translate> 翻譯單元。\n標籤內容:<pre>$1</pre>",
+ "pt-shake-multiple": "一個翻譯單元中含多個翻譯單元標記。\n翻譯單元內容:<pre>$1</pre>",
+ "pt-shake-position": "翻譯單元標記在預期之外的位置。\n翻譯單元內容:<pre>$1</pre>",
+ "pt-shake-empty": "空的翻譯單元標記 \"$1\"。",
+ "log-description-pagetranslation": "頁面翻譯系統相關的操作日誌",
+ "log-name-pagetranslation": "頁面翻譯日誌",
+ "logentry-pagetranslation-mark": "$1 {{GENDER:$2|已標記}} $3 用來翻譯",
+ "logentry-pagetranslation-unmark": "$1 已從翻譯中{{GENDER:$2|移除}} $3",
+ "logentry-pagetranslation-moveok": "$1 {{GENDER:$2|已完成}}重新命名可翻譯頁面 $3 至 $4",
+ "logentry-pagetranslation-movenok": "$1 移動 $3 至 $4 時{{GENDER:$2|發生}}問題",
+ "logentry-pagetranslation-deletefok": "$1 {{GENDER:$2|己完成}}刪除可翻譯頁面 $3",
+ "logentry-pagetranslation-deletefnok": "$1 刪除可翻譯頁面 $4 的 $3 {{GENDER:$2|失敗}}",
+ "logentry-pagetranslation-deletelok": "$1 {{GENDER:$2|已完成}}刪除可翻譯頁面 $3",
+ "logentry-pagetranslation-deletelnok": "$1 刪除可翻譯頁面 $4 的 $3 {{GENDER:$2|失敗}}",
+ "logentry-pagetranslation-encourage": "$1 {{GENDER:$2|建議}}翻譯 $3",
+ "logentry-pagetranslation-discourage": "$1 {{GENDER:$2|不建議}}翻譯 $3",
+ "logentry-pagetranslation-prioritylanguages-unset": "$1 {{GENDER:$2|移除}}可翻譯頁面 $3 的優先語言",
+ "logentry-pagetranslation-prioritylanguages": "$1 {{GENDER:$2|設定}}可翻譯頁面 $3 的優先語言為 $5",
+ "logentry-pagetranslation-prioritylanguages-force": "$1 {{GENDER:$2|限制}}可翻譯頁面 $3 的語言為 $5",
+ "logentry-pagetranslation-associate": "$1 {{GENDER:$2|已增加}}可翻譯頁面 $3 到集合群組 $4",
+ "logentry-pagetranslation-dissociate": "$1 已從集合群組 $4 中{{GENDER:$2|移除}}可翻譯頁面 $3",
+ "pt-movepage-title": "移動可翻譯頁面 \"$1\"",
+ "pt-movepage-blockers": "可翻譯頁面無法移動至新的名稱,由於下列{{PLURAL:$1|錯誤|錯誤}}:",
+ "pt-movepage-block-base-exists": "目標可翻譯頁面 \"[[:$1]]\" 已存在。",
+ "pt-movepage-block-base-invalid": "目標可翻譯頁面標題名稱無效。",
+ "pt-movepage-block-tp-exists": "目標可翻譯頁面 \"[[:$2]]\" 已存在。",
+ "pt-movepage-block-tp-invalid": "目標可翻譯頁面 \"[[:$1]]\" 的標題無效 (可能過長)。",
+ "pt-movepage-block-section-exists": "翻譯單元的目標頁面 \"[[:$2]]\" 已存在。",
+ "pt-movepage-block-section-invalid": "翻譯單元的目標頁面 \"[[:$1]]\" 標題無效 (可能過長)。",
+ "pt-movepage-block-subpage-exists": "目標子頁面 \"[[:$2]]\" 已存在。",
+ "pt-movepage-block-subpage-invalid": "目標子頁面 \"[[:$1]]\" 的標題無效 (可能過長)。",
+ "pt-movepage-list-pages": "要移動的頁面清單",
+ "pt-movepage-list-translation": "翻譯{{PLURAL:$1|頁面|頁面}}",
+ "pt-movepage-list-section": "翻譯單元{{PLURAL:$1|頁面}}",
+ "pt-movepage-list-other": "其他子{{PLURAL:$1|頁面}}",
+ "pt-movepage-list-count": "共 $1 個頁面要移動。",
+ "pt-movepage-legend": "移動可翻譯頁面",
+ "pt-movepage-current": "目前名稱:",
+ "pt-movepage-new": "新的名稱:",
+ "pt-movepage-reason": "原因:",
+ "pt-movepage-subpages": "移動所有子頁面",
+ "pt-movepage-action-check": "檢查是否可移動",
+ "pt-movepage-action-perform": "確認移動",
+ "pt-movepage-action-other": "更改目標",
+ "pt-movepage-intro": "此特殊頁面允許您移動已標記進行翻譯的頁面。\n由於有許多頁面要移動,移動的操作不是即時的。\n在移動頁面的過程中,無法使用在操作中的頁面。\n任何移動失敗會記錄在 [[Special:Log/pagetranslation|頁面翻譯日誌]],並需要手動修復。",
+ "pt-movepage-logreason": "可翻譯頁面 \"$1\" 的部分。",
+ "pt-movepage-started": "基礎頁面已移動。\n請檢查 [[Special:Log/pagetranslation|頁面翻譯日誌]] 是否有錯誤與完成訊息。",
+ "pt-locked-page": "因可翻譯頁面正在移動,此頁面已鎖定。",
+ "pt-deletepage-lang-title": "刪除翻譯頁面 \"$1\"。",
+ "pt-deletepage-full-title": "刪除可翻譯頁面 \"$1\"。",
+ "pt-deletepage-invalid-title": "指定的頁面無效。",
+ "pt-deletepage-invalid-text": "指定的頁面不是可翻譯頁面或翻譯頁面。",
+ "pt-deletepage-action-check": "要刪除的頁面清單",
+ "pt-deletepage-action-perform": "確認刪除",
+ "pt-deletepage-action-other": "更改目標",
+ "pt-deletepage-lang-legend": "刪除翻譯頁面",
+ "pt-deletepage-full-legend": "刪除可翻譯頁面",
+ "pt-deletepage-any-legend": "刪除可翻譯頁面或翻譯頁面",
+ "pt-deletepage-current": "頁面名稱:",
+ "pt-deletepage-reason": "原因:",
+ "pt-deletepage-subpages": "刪除所有子頁面",
+ "pt-deletepage-list-pages": "要刪除的頁面清單",
+ "pt-deletepage-list-translation": "翻譯網頁",
+ "pt-deletepage-list-section": "翻譯單元頁面",
+ "pt-deletepage-list-other": "其他子頁面",
+ "pt-deletepage-list-count": "供 $1 個頁面要刪除。",
+ "pt-deletepage-full-logreason": "可翻譯頁面 \"$1\" 的部分。",
+ "pt-deletepage-lang-logreason": "翻譯頁面 \"$1\" 的部分。",
+ "pt-deletepage-started": "請檢查 [[Special:Log/pagetranslation|頁面翻譯日誌]] 內的錯誤和完成訊息。",
+ "pt-deletepage-intro": "此特殊頁面允許您刪除可翻譯頁面或特定語言的翻譯頁面。\n由於相關的頁面也要一併刪除,刪除的操作不是即時的。\n失敗的訊息會記錄在 [[Special:Log/pagetranslation|頁面翻譯日誌]],並需要手動修復。",
+ "pagemigration": "翻譯頁面遷移",
+ "pagemigration-summary": "可指定一個翻譯頁面,還原到在翻譯系統尚未啟用之前的頁面狀態。",
+ "pm-import-button-label": "匯入",
+ "pm-savepages-button-label": "儲存",
+ "pm-cancel-button-label": "取消",
+ "pm-pagename-placeholder": "輸入頁面名稱",
+ "pm-langcode-placeholder": "語言代碼",
+ "pm-page-does-not-exist": "$1 不存在",
+ "pm-old-translations-missing": "$1 沒有舊的翻譯",
+ "pm-extra-units-warning": "可能存在額外的翻譯單位,請確實比對來源與翻譯單位。",
+ "pm-pagename-missing": "請輸入頁面名稱",
+ "pm-langcode-missing": "請輸入語言代碼",
+ "pm-add-icon-hover-text": "新增以下單位",
+ "pm-swap-icon-hover-text": "替換以下單位",
+ "pm-delete-icon-hover-text": "刪除單位",
+ "pm-pagetitle-invalid": "請輸入一個有效的頁面標題",
+ "tpt-translate-title": "允許翻譯頁面標題",
+ "pp-save-summary": "準備翻譯用頁面",
+ "pagepreparation": "準備翻譯用頁面",
+ "pp-pagename-placeholder": "輸入頁面名稱",
+ "pp-prepare-button-label": "準備",
+ "pp-save-button-label": "儲存",
+ "pp-save-message": "頁面已儲存。 您可 [$1] 編輯該頁面。",
+ "pp-prepare-message": "已準備好翻譯用頁面。 請參考下方差異。 點選 \"{{int:pp-save-button-label}}\" 確認!",
+ "pp-already-prepared-message": "該頁面似乎已有翻譯用頁面。 且與先前的版本無任何差異。",
+ "pp-pagename-missing": "請輸入頁面名稱。",
+ "pp-diff-old-header": "來源內容",
+ "pp-diff-new-header": "準備內容"
+}
diff --git a/MLEB/Translate/i18n/sandbox/af.json b/MLEB/Translate/i18n/sandbox/af.json
new file mode 100644
index 00000000..ea264cad
--- /dev/null
+++ b/MLEB/Translate/i18n/sandbox/af.json
@@ -0,0 +1,14 @@
+{
+ "@metadata": {
+ "authors": [
+ "Amire80",
+ "Naudefj",
+ "Winstonza"
+ ]
+ },
+ "managetranslatorsandbox": "Bestuur vertaler-sandput",
+ "tsb-filter-pending": "Uitstaande versoeke",
+ "tsb-reminder-title-generic": "Voltooi u bekendstelling om 'n geverifieerde vertaler te word",
+ "tsb-reminder-content-generic": "Hallo $1,\n\nDankie dat u op {{SITENAME}} geregistreer het. As u u toesvertalings voltooi, sal die administrateurs spoedig volle regte aan u toeken.\n\nGaan asseblief na $2 om 'n paar vertalings te maak.",
+ "tsb-create-user-page": "Skep 'n basiese gebruikersblad"
+}
diff --git a/MLEB/Translate/i18n/sandbox/ast.json b/MLEB/Translate/i18n/sandbox/ast.json
new file mode 100644
index 00000000..c823297e
--- /dev/null
+++ b/MLEB/Translate/i18n/sandbox/ast.json
@@ -0,0 +1,50 @@
+{
+ "@metadata": {
+ "authors": [
+ "Xuacu"
+ ]
+ },
+ "managetranslatorsandbox": "Alministrar la zona de pruebas de los traductores",
+ "tsb-filter-pending": "Solicitúes pendientes",
+ "tsb-reminder-title-generic": "Complete la so presentación pa convertise'n traductor",
+ "tsb-reminder-content-generic": "Bones, $1:\n\nGracies por rexistrase'n {{SITENAME}}.\n\nSi completa les traducciones\nde prueba, Los alministradores pronto darán-y permisu de traducción\ncompletu.\n\nPor favor, vuelva a $2 y faiga delles traducciones más equí: $2\n\n$3, equipu de {{SITENAME}}",
+ "tsb-reminder-sending": "Unviando'l recordatoriu...",
+ "tsb-reminder-sent": "{{PLURAL:$1|Unviáu $1 recordatoriu $2|Unviaos $1 recordatorios, l'últimu $2}}",
+ "tsb-reminder-sent-new": "Unviar un recordatoriu",
+ "tsb-reminder-failed": "Falló unviar un recordatoriu",
+ "tsb-email-promoted-subject": "Agora yá ye traductor en {{SITENAME}}",
+ "tsb-email-promoted-body": "Hola {{GENDER:$1|$1}},\n\n¡Norabona! Vengo de revisar les traducciones de prueba que ficisti en {{SITENAME}} y dite permisu completu de traductor.\n\nVen a {{SITENAME}} pa siguir traduciendo, agora y cada día:\n$2\n\n¡{{GENDER:$1|Bienveníu|Bienvenida}}, y gracies poles tos collaboraciones!\n\n{{GENDER:$3|$3}},\nl'equipu de {{SITENAME}}",
+ "tsb-email-rejected-subject": "Refugóse la to solicitú pa ser traductor en {{SITENAME}}",
+ "tsb-email-rejected-body": "Hola {{GENDER:$1|$1}},\n\nGracies por solicitar ser traductor en {{SITENAME}}. Siento informate que refugué la to solicitú, porque la calidá de les tos traducciones nun cumple los requisitos.\n\nSi crees que la to solicitú refugóse por error, por favor, vuelvi a intentar ser traductor de {{SITENAME}}. Pues date d'alta equí:\n$2\n\n\n{{GENDER:$3|$3}},\nl'equipu de {{SITENAME}}",
+ "tsb-request-count": "{{PLURAL:$1|Una solicitú|$1 solicitúes}}",
+ "tsb-all-languages-button-label": "Toles llingües",
+ "tsb-search-requests": "Resultaos de la gueta",
+ "tsb-accept-button-label": "Aceutar",
+ "tsb-reject-button-label": "Refugar",
+ "tsb-selected-count": "{{PLURAL:$1|$1 usuariu seleicionáu|$1 usuarios seleicionaos}}",
+ "tsb-older-requests": "$1 {{PLURAL:$1|solicitú anterior|solicitúes anteriores}}",
+ "tsb-accept-all-button-label": "Aceutar too",
+ "tsb-reject-all-button-label": "Refugar too",
+ "tsb-user-posted-a-comment": "Nun ye traductor",
+ "tsb-reminder-link-text": "Unviar un recordatoriu per corréu electrónicu",
+ "tsb-didnt-make-any-translations": "Esti usuariu nun fizo denguna traducción.",
+ "tsb-translations-source": "Fonte",
+ "tsb-translations-user": "Traducciones {{GENDER:$1|del usuariu|de la usuaria}}",
+ "tsb-translations-current": "Traducciones esistentes",
+ "tsb-delete-userpage-summary": "Desaniciando la páxina d'usuariu d'un usuariu de pruebes",
+ "translationstash": "Bienveníos",
+ "translate-translationstash-welcome": "{{GENDER:$1|Bienveníu|Bienvenida}}, $1; yá yes {{GENDER:$1|un nuevu traductor|una nueva traductora}}",
+ "translate-translationstash-welcome-note": "Avézate a les ferramientes de traducción. Traduz dellos mensaxes y consigui permisu de traducción completu pa participar nos tos proyeutos favoritos.",
+ "translate-translationstash-initialtranslation": "La so traducción inicial",
+ "translate-translationstash-translations": "$1 {{PLURAL:$1|traducción completada|traducciones completaes}}",
+ "translate-translationstash-skip-button-label": "Probar con otra",
+ "tsb-limit-reached-title": "Gracies poles sos traducciones",
+ "tsb-limit-reached-body": "Llegó a la llende de traducciones pa traductores nuevos.\nEl nuesu equipu pronto comprobará y promocionará la so cuenta.\nDarréu podrá traducir ensin llendes.",
+ "tsb-no-requests-from-new-users": "Nun hai solicitúes d'usuarios nuevos",
+ "tsb-create-user-page": "Crear una páxina d'usuariu básica",
+ "log-name-translatorsandbox": "Entornu aislláu de traducción",
+ "log-description-translatorsandbox": "Rexistru d'aiciones de los usuarios del entornu aislláu de traducción",
+ "logentry-translatorsandbox-promoted": "$1 {{GENDER:$2|promovió}} a $3 a {{GENDER:$4|traductor}}",
+ "logentry-translatorsandbox-rejected": "$1 {{GENDER:$2|refugó}} la solicitú de «$3» de facese traductor",
+ "logentry-newusers-tsbpromoted": "{{GENDER:$2|Creóse}} la cuenta d'usuariu $3 por promoción dende pruebes"
+}
diff --git a/MLEB/Translate/i18n/sandbox/bg.json b/MLEB/Translate/i18n/sandbox/bg.json
new file mode 100644
index 00000000..55c3e9db
--- /dev/null
+++ b/MLEB/Translate/i18n/sandbox/bg.json
@@ -0,0 +1,14 @@
+{
+ "@metadata": {
+ "authors": [
+ "DCLXVI"
+ ]
+ },
+ "tsb-all-languages-button-label": "Всички езици",
+ "tsb-accept-button-label": "Приемане",
+ "tsb-accept-all-button-label": "Приемане на всички",
+ "tsb-reject-all-button-label": "Отхвърляне на всички",
+ "tsb-translations-source": "Източник",
+ "tsb-translations-current": "Съществуващи преводи",
+ "tsb-limit-reached-title": "Благодарности за направените преводи"
+}
diff --git a/MLEB/Translate/i18n/sandbox/bn.json b/MLEB/Translate/i18n/sandbox/bn.json
new file mode 100644
index 00000000..a75c464d
--- /dev/null
+++ b/MLEB/Translate/i18n/sandbox/bn.json
@@ -0,0 +1,11 @@
+{
+ "@metadata": {
+ "authors": [
+ "Aftab1995"
+ ]
+ },
+ "managetranslatorsandbox": "অনুবাদক খেলাঘর পরিচালনা",
+ "tsb-filter-pending": "অপেক্ষমান অনুরোধ",
+ "tsb-reminder-title-generic": "একজন অনুবাদক হতে আপনার পরিচিতি সমাপ্ত করুন",
+ "tsb-reminder-content-generic": "প্রিয় $1,\n\nআপনি সম্প্রতি {{SITENAME}}-এ সাইন আপ করেছেন। বিনামূল্যে অনুবাদ এবং অতিরিক্ত অনুবাদ সাহায্যকারী খুলতে আপনি মাত্র কয়েক ধাপ দূরে।\n\n$2-এ লগ ইন করুন এবং আরো কিছু অনুবাদ করুন।"
+}
diff --git a/MLEB/Translate/i18n/sandbox/br.json b/MLEB/Translate/i18n/sandbox/br.json
new file mode 100644
index 00000000..229e473f
--- /dev/null
+++ b/MLEB/Translate/i18n/sandbox/br.json
@@ -0,0 +1,14 @@
+{
+ "@metadata": {
+ "authors": [
+ "Y-M D"
+ ]
+ },
+ "tsb-filter-pending": "Rekedoù war gortoz",
+ "tsb-all-languages-button-label": "An holl yezhoù",
+ "tsb-accept-button-label": "Asantiñ",
+ "tsb-translations-source": "Mammenn",
+ "tsb-translations-current": "Troidigezhioù zo diouto",
+ "translationstash": "Degemer mat",
+ "tsb-limit-reached-title": "Trugarez evit ho troidigezhioù"
+}
diff --git a/MLEB/Translate/i18n/sandbox/ce.json b/MLEB/Translate/i18n/sandbox/ce.json
new file mode 100644
index 00000000..c625f4a3
--- /dev/null
+++ b/MLEB/Translate/i18n/sandbox/ce.json
@@ -0,0 +1,41 @@
+{
+ "@metadata": {
+ "authors": [
+ "Умар"
+ ]
+ },
+ "managetranslatorsandbox": "Ловзаран майдан урхалладар",
+ "tsb-filter-pending": "Кечдаре хьоьжуш долу дехарш",
+ "tsb-reminder-sending": "Дагадаийтар дӀадахьийтар…",
+ "tsb-reminder-sent": "{{PLURAL:$1|ДӀадахьийтита дагадаийтар —}} $2",
+ "tsb-reminder-sent-new": "Дагадаийтар дӀадахийтина",
+ "tsb-reminder-failed": "Дагадаийтар дӀадахьийта цаделира",
+ "tsb-email-promoted-subject": "ХӀинца хьуна — «{{SITENAME}}» сайтехь гочдархочун бакъо елла",
+ "tsb-request-count": "{{PLURAL:$1|$1 дехар|1=цхьаъ дехар}}",
+ "tsb-all-languages-button-label": "Берриге меттанаш",
+ "tsb-search-requests": "Лаха дехарш",
+ "tsb-accept-button-label": "ТӀелаца",
+ "tsb-reject-button-label": "Юхатоха",
+ "tsb-selected-count": "{{PLURAL:$1|$1 декъашхо хаьржина}}",
+ "tsb-older-requests": "$1 алсамо {{PLURAL:$1|1=шира дехар|шира дехараш}}",
+ "tsb-accept-all-button-label": "ТӀеэца массо",
+ "tsb-reject-all-button-label": "Юхатоха массо",
+ "tsb-user-posted-a-comment": "Гочдархочун бакъо яц",
+ "tsb-reminder-link-text": "Электронан почте дагадаийтар дахьийта",
+ "tsb-didnt-make-any-translations": "ХӀокху декъашхочо цхьа гочдар дина дац.",
+ "tsb-translations-source": "Хьост",
+ "tsb-translations-user": "{{GENDER:$1|Декъашхочун}} гочдарш",
+ "tsb-translations-current": "Долуш долу гочдарш",
+ "translationstash": "Марша догӀийла",
+ "translate-translationstash-initialtranslation": "Хьан дуьххьарлера гочдар",
+ "translate-translationstash-translations": "$1 {{PLURAL:$1|кхочуш дина гочдар}}",
+ "translate-translationstash-skip-button-label": "Хьажа кхечуьнга",
+ "tsb-limit-reached-title": "Гочдарна баркалла",
+ "tsb-no-requests-from-new-users": "Керла декъашхошкара дехарш дац",
+ "tsb-create-user-page": "Кхоьллина атта декъашхочун агӀо",
+ "log-name-translatorsandbox": "Ловзаран майда",
+ "log-description-translatorsandbox": "Гочдаран ловзаран майдан чохь декъашхоша бина хийцамаш",
+ "logentry-translatorsandbox-promoted": "$1 {{GENDER:$2|вина|йина}}$3 {{GENDER:$4|гочдархо}}.",
+ "logentry-translatorsandbox-rejected": "гочдархо статусан дехар $3 $1 {{GENDER:$2|юхадаьккхина}}.",
+ "logentry-newusers-tsbpromoted": "Декъашхочун $3 дӀаяздар {{GENDER:$2|кхоьллина}} ловзаран майдан чура дӀаяздарх"
+}
diff --git a/MLEB/Translate/i18n/sandbox/cs.json b/MLEB/Translate/i18n/sandbox/cs.json
new file mode 100644
index 00000000..62731461
--- /dev/null
+++ b/MLEB/Translate/i18n/sandbox/cs.json
@@ -0,0 +1,13 @@
+{
+ "@metadata": {
+ "authors": [
+ "Mormegil"
+ ]
+ },
+ "tsb-email-promoted-subject": "Na {{grammar:6sg|{{SITENAME}}}} jste teď překladatelem",
+ "tsb-email-rejected-subject": "Vaše žádost stát se překladatelem na {{grammar:6sg|{{SITENAME}}}} byla zamítnuta",
+ "translationstash": "Vítejte",
+ "translate-translationstash-welcome": "Vítejte, {{GENDER:$1|uživateli|uživatelko}} $1, jste {{GENDER:$1|nový překladatel|nová překladatelka}}",
+ "translate-translationstash-welcome-note": "Seznamte se s překládacími nástroji. Abyste se mohli účastnit oblíbených projektů, přeložte některé zprávy a získejte plná překladatelská oprávnění.",
+ "tsb-limit-reached-title": "Děkujeme za vaše překlady"
+}
diff --git a/MLEB/Translate/i18n/sandbox/cy.json b/MLEB/Translate/i18n/sandbox/cy.json
new file mode 100644
index 00000000..c5f2e408
--- /dev/null
+++ b/MLEB/Translate/i18n/sandbox/cy.json
@@ -0,0 +1,30 @@
+{
+ "@metadata": {
+ "authors": [
+ "Lloffiwr"
+ ]
+ },
+ "tsb-filter-pending": "Ceisiadau dan ystyriaeth",
+ "tsb-reminder-title-generic": "Cwblhewch eich cyflwyniad er mwyn cael bod yn gyfieithydd",
+ "tsb-email-promoted-subject": "Rydych nawr yn gyfieithydd ar {{SITENAME}}",
+ "tsb-all-languages-button-label": "Pob iaith",
+ "tsb-accept-button-label": "Derbynier",
+ "tsb-reject-button-label": "Gwrthoder",
+ "tsb-accept-all-button-label": "Derbynier y cwbl",
+ "tsb-reject-all-button-label": "Gwrthoder y cwbl",
+ "tsb-user-posted-a-comment": "Ddim yn gyfieithydd",
+ "tsb-translations-source": "Ffynhonell",
+ "tsb-translations-user": "Cyfieithiadau'r defnyddiwr",
+ "tsb-translations-current": "Cyfieithiadau presennol",
+ "translationstash": "Croeso",
+ "translate-translationstash-welcome": "Croeso {{GENDER:$1|$1}}, rydych nawr yn gyw-gyfieithydd",
+ "translate-translationstash-welcome-note": "Cyfarwyddwch â'r teclynnau cyfieithu. Cyfieithwch ambell i neges er mwyn derbyn galluoedd cyfieithydd llawn ac ymuno gyda'ch hoff brosiectau.",
+ "translate-translationstash-initialtranslation": "Eich cyfieithiad cyntaf",
+ "translate-translationstash-translations": "$1 {{PLURAL:$1|cyfieithiadau wedi eu c|cyfieithiad wedi ei g|gyfieithiad wedi eu c|chyfieithiad wedi eu c|chyfieithiad wedi eu c|cyfieithiad wedi eu c}}wblhau",
+ "translate-translationstash-skip-button-label": "Ceisio un arall",
+ "tsb-limit-reached-title": "Diolch am eich cyfieithiadau",
+ "tsb-limit-reached-body": "Rydych wedi cyrraedd y terfyn cyfieithu i gyw-gyfieithwyr. Fe fydd ein tîm yn gwirio eich cyfrif a'i uwchraddio'n fuan. Yna fe gewch gyfieithu'n ddi-derfyn.",
+ "tsb-no-requests-from-new-users": "Dim ceisiadau gan ddefnyddwyr newydd",
+ "tsb-create-user-page": "Dechrau tudalen sylfaenol i'r defnyddiwr",
+ "log-name-translatorsandbox": "Y pwll tywod cyfieithu"
+}
diff --git a/MLEB/Translate/i18n/sandbox/de.json b/MLEB/Translate/i18n/sandbox/de.json
new file mode 100644
index 00000000..cbe38efa
--- /dev/null
+++ b/MLEB/Translate/i18n/sandbox/de.json
@@ -0,0 +1,51 @@
+{
+ "@metadata": {
+ "authors": [
+ "Metalhead64",
+ "Rillke"
+ ]
+ },
+ "managetranslatorsandbox": "Übersetzer-Spielwiese konfigurieren",
+ "tsb-filter-pending": "Ausstehende Anfragen",
+ "tsb-reminder-title-generic": "Vervollständige deine Einführung, um ein Übersetzer zu werden.",
+ "tsb-reminder-content-generic": "Hallo $1,\n\nvielen Dank für die Registrierung auf {{SITENAME}}.\n\nWenn du deine Testübersetzungen vervollständigst, gewähren dir die Administratoren kurz danach vollen Übersetzungszugriff.\n\nKomm vorbei und mache hier einige weitere Übersetzungen:\n$2\n\n$3,\ndie Mitarbeiter von {{SITENAME}}",
+ "tsb-reminder-sending": "Sende die Erinnerung …",
+ "tsb-reminder-sent": "{{PLURAL:$1|Eine Erinnerung versandt $2|$1 Erinnerungen versandt, die letzte $2}}",
+ "tsb-reminder-sent-new": "Die Erinnerung wurde versandt",
+ "tsb-reminder-failed": "Der Versand der Erinnerung ist fehlgeschlagen",
+ "tsb-email-promoted-subject": "Du bist jetzt ein Übersetzer auf {{SITENAME}}",
+ "tsb-email-promoted-body": "Hallo {{GENDER:$1|$1}},\n\nherzlichen Glückwunsch! Ich habe deine Testübersetzungen auf {{SITENAME}} überprüft und habe dir die vollen Übersetzerrechte gegeben.\n\nKomme auf {{SITENAME}}, um jetzt mit dem Übersetzen fortzufahren:\n$2\n\nWillkommen und vielen Dank für deine Beiträge!\n\n{{GENDER:$3|$3}},\nMitarbeiter von {{SITENAME}}",
+ "tsb-email-rejected-subject": "Dein Antrag auf Beförderung zum Übersetzer auf {{SITENAME}} wurde abgelehnt",
+ "tsb-email-rejected-body": "Hallo $1,\n\nvielen Dank für deinen Antrag auf Beförderung {{GENDER:$1|zum Übersetzer|zur Übersetzerin|zum Übersetzer}} auf {{SITENAME}}. Ich bedauere, dich informieren zu müssen, dass ich deinen Antrag abgelehnt habe, da die Qualität deiner Übersetzungen nicht den Anforderungen entspricht.\n\nFalls du denkst, dass dein Antrag durch einen Fehler abgelehnt wurde, versuche, deinen Übersetzerantrag auf {{SITENAME}} erneut einzureichen. Du kannst dich hier registrieren:\n$2\n\n$3,\n{{GENDER:$3|Mitarbeiter|Mitarbeiterin|Mitarbeiter}} von {{SITENAME}}",
+ "tsb-request-count": "{{PLURAL:$1|Eine Anfrage|$1 Anfragen}}",
+ "tsb-all-languages-button-label": "Alle Sprachen",
+ "tsb-search-requests": "Anfragen durchsuchen",
+ "tsb-accept-button-label": "Akzeptieren",
+ "tsb-reject-button-label": "Ablehnen",
+ "tsb-selected-count": "{{PLURAL:$1|Ein|$1}} Benutzer ausgewählt",
+ "tsb-older-requests": "{{PLURAL:$1|Eine ältere Anfrage|$1 ältere Anfragen}}",
+ "tsb-accept-all-button-label": "Alle akzeptieren",
+ "tsb-reject-all-button-label": "Alle ablehnen",
+ "tsb-user-posted-a-comment": "Kein Übersetzer",
+ "tsb-reminder-link-text": "E-Mail-Erinnerung senden",
+ "tsb-didnt-make-any-translations": "Dieser Benutzer hat noch keine Übersetzungen durchgeführt.",
+ "tsb-translations-source": "Quelle",
+ "tsb-translations-user": "{{GENDER:$1|Benutzerübersetzungen}}",
+ "tsb-translations-current": "Vorhandene Übersetzungen",
+ "tsb-delete-userpage-summary": "Benutzerseite eines Spielwiesenbenutzers gelöscht",
+ "translationstash": "Willkommen",
+ "translate-translationstash-welcome": "Willkommen $1, du bist {{GENDER:$1|ein neuer Übersetzer|eine neue Übersetzerin}}.",
+ "translate-translationstash-welcome-note": "Werde mit den Übersetzungswerkzeugen vertraut. Übersetze einige Nachrichten und erhalte die vollen Übersetzerrechte zur Teilnahme an deinen Lieblingsprojekten.",
+ "translate-translationstash-initialtranslation": "Deine erste Übersetzung",
+ "translate-translationstash-translations": "{{PLURAL:$1|Eine vervollständigte Übersetzung|$1 vervollständigte Übersetzungen}}",
+ "translate-translationstash-skip-button-label": "Eine andere versuchen",
+ "tsb-limit-reached-title": "Danke für deine Übersetzungen",
+ "tsb-limit-reached-body": "Du hast das Übersetzungslimit für neue Übersetzer erreicht.\nUnser Team wird dein Benutzerkonto bald verifizieren und hochstufen.\nDu wirst dann in der Lage sein, ohne Limits zu übersetzen.",
+ "tsb-no-requests-from-new-users": "Keine Anträge von neuen Benutzern",
+ "tsb-create-user-page": "Basis-Benutzerseite erstellt",
+ "log-name-translatorsandbox": "Übersetzungsspielwiesen-Logbuch",
+ "log-description-translatorsandbox": "Es folgt ein Logbuch von Aktionen auf Übersetzungsspielwiesenbenutzer.",
+ "logentry-translatorsandbox-promoted": "$1 hat $3 {{GENDER:$4|zum Übersetzer|zur Übersetzerin|zum Übersetzer}} {{GENDER:$2|befördert}}",
+ "logentry-translatorsandbox-rejected": "$1 hat die Anfrage von „$3“ zur Beförderung {{GENDER:$2|zum Übersetzer|zur Übersetzerin|zum Übersetzer}} abgelehnt",
+ "logentry-newusers-tsbpromoted": "Das Benutzerkonto $3 wurde durch Beförderung von der Übersetzerspielwiese {{GENDER:$2|erstellt}}"
+}
diff --git a/MLEB/Translate/i18n/sandbox/diq.json b/MLEB/Translate/i18n/sandbox/diq.json
new file mode 100644
index 00000000..378a559d
--- /dev/null
+++ b/MLEB/Translate/i18n/sandbox/diq.json
@@ -0,0 +1,16 @@
+{
+ "@metadata": {
+ "authors": [
+ "Marmase"
+ ]
+ },
+ "tsb-request-count": "$1 {{PLURAL:$1|waştış|waştışi}}",
+ "tsb-all-languages-button-label": "Zıwani pêro",
+ "tsb-search-requests": "Neticeyê geyrayışi",
+ "tsb-accept-button-label": "Qebul",
+ "tsb-reject-button-label": "Red ke",
+ "tsb-selected-count": "{{PLURAL:$1|$1 kerber weçineya|$1 karberi weçineyay}}",
+ "tsb-translations-source": "Çıme",
+ "tsb-translations-user": "Açarnayışa karberi",
+ "translationstash": "Xeyr amey"
+}
diff --git a/MLEB/Translate/i18n/sandbox/dsb.json b/MLEB/Translate/i18n/sandbox/dsb.json
new file mode 100644
index 00000000..7536f3b3
--- /dev/null
+++ b/MLEB/Translate/i18n/sandbox/dsb.json
@@ -0,0 +1,51 @@
+{
+ "@metadata": {
+ "authors": [
+ "Michawiki",
+ "Derbeth"
+ ]
+ },
+ "managetranslatorsandbox": "Pśełožowarske grajkanišćo zastojaś",
+ "tsb-filter-pending": "Njedocynjone napšašowanja",
+ "tsb-reminder-title-generic": "Wudopołni swójo zapokazanje, aby pśełožowaŕ był",
+ "tsb-reminder-content-generic": "Witaj $1,\n\nźěkujomy se za registrěrowanje na {{GRAMMAR:lokatiw|{{SITENAME}}}}.\n\nJolic wudpołnjujoš swóje testowe pśełožki, administratory daju tebi pón połny pśełožowański pśistup.\n\nPśiź pšosym sem a pśewjeź dalšne pśełožki:\n$2\n\n$3,\nsobuźěłaśerje {{GRAMMAR:genitiw|{{SITENAME}}}}",
+ "tsb-reminder-sending": "Dopomnjeśe se sćelo...",
+ "tsb-reminder-sent": "{{PLURAL:$1|$1 dopomnjeśe jo se pósłało $2|$1 dopomnjeśi stej se pósłałej, slědne $2|$1 dopomnjeśa su se pósłali, slědne $2|$1 dopomnjeśow jo se pósłało, slědne $2}}",
+ "tsb-reminder-sent-new": "Dopomnjeśe jo se pósłało",
+ "tsb-reminder-failed": "Słanje dopomnjeśa njejo se raźiło",
+ "tsb-email-promoted-subject": "Sy něnto pśełožowaŕ na {{GRAMMAR:lokatiw|{{SITENAME}}}}",
+ "tsb-email-promoted-body": "Witaj {{GENDER:$1|$1}},\n\nwutšobne glukužycenje! Som testowe pśełožki pśeglědał, kótarež sy na {{GRAMMAR:lokatiw|{{SITENAME}}}} pśewjadł a som tebi połne pśełožowarske pšawa dał.\n\nPśiź pšosym k {{GRAMMAR:datiw|{{SITENAME}}}}, aby něnto a kuždy źeń dalej pśełožował:\n$2\n\nWitaj a wjeliki źěk za twóje pśinoski!\n\n{{GENDER:$3|$3}},\nsobuźěłaśerje {{GRAMMAR:genitiw|{{SITENAME}}}}",
+ "tsb-email-rejected-subject": "Twójo pówušenje za pśełožowarja na {{GRAMMAR:lokatiw|{{SITENAME}}}} jo se wótpokazało",
+ "tsb-email-rejected-body": "Witaj {{GENDER:$1|$1}},\n\nźěkujom se za procowanje ako pśełožowaŕ na {{GRAMMAR:lokatiw|{{SITENAME}}}}. Bóžko musym śi informěrowaś, až som twójo procowanje wó pówušenje za pśełožowarja wótpokazał, dokulaž kwalita twójich pśełožkow njewótpowědujo pominanjam.\n\nJolic mysliš, až twójo procowanje jo se zamólnje wótpokazało, procuj se znowego ako pśełožowarja na {{GRAMMAR:lokatiw|{{SITENAME}}}}. Móžoš se how registrěrowaś:\n$2\n\n{{GENDER:$3|$3}},\nTeam {{GRAMMAR:genitiw|{{SITENAME}}}}",
+ "tsb-request-count": "$1 {{PLURAL:$1|napšašowanje|napšašowani|napšašowanja|napšašowanjow}}",
+ "tsb-all-languages-button-label": "Wšykne rěcy",
+ "tsb-search-requests": "Napšašowanja pśepytaś",
+ "tsb-accept-button-label": "Akceptěrowaś",
+ "tsb-reject-button-label": "Wótpokazaś",
+ "tsb-selected-count": "{{PLURAL:$1|$1 wužywaŕ jo se wubrał|$1 wužywarja stej se wubrałej|$1 wužywarje su se wubrali|$1 wužywarjow jo se wubrało}}",
+ "tsb-older-requests": "$1 {{PLURAL:$1|starše napšašowanje|staršej napšašowani|starše napšašowanja|staršych napšašowanjow}}",
+ "tsb-accept-all-button-label": "Wšykne akceptěrowaś",
+ "tsb-reject-all-button-label": "Wšykne wótpokazaś",
+ "tsb-user-posted-a-comment": "Žeden pśełožowaŕ",
+ "tsb-reminder-link-text": "E-mailowe dopomnjeśe pósłaś",
+ "tsb-didnt-make-any-translations": "Toś ten wužywaŕ njejo pśełožki pśewjadł.",
+ "tsb-translations-source": "Žrědło",
+ "tsb-translations-user": "Wužywarske pśełožki",
+ "tsb-translations-current": "Eksistěrujuce pśełožki",
+ "tsb-delete-userpage-summary": "Wužywarski bok grajkanišćowego wužywarja jo se wulašował",
+ "translationstash": "Witaj",
+ "translate-translationstash-welcome": "Witaj $1, sy {{GENDER:$1|nowy pśełožowaŕ|nowa pśełožowarka}}",
+ "translate-translationstash-welcome-note": "Wopóznaj se z pśełožowańskimi rědami. Pśełož někotare powěźeńki a dobydni se połne pśełožowarske pšawa, aby se na wašych projektach wobźělił.",
+ "translate-translationstash-initialtranslation": "Twój prědny pśełožk",
+ "translate-translationstash-translations": "$1 {{PLURAL:$1|wudopołnjony pśełožk|wudopołnjonej pśełožka|wudopołnjone pśełožki|wudopołnjonych pśełožkow}}",
+ "translate-translationstash-skip-button-label": "Drugi wopytaś",
+ "tsb-limit-reached-title": "Źěkujomy se za twóje pśełožki",
+ "tsb-limit-reached-body": "Sy pśełožowański limit za nowe pśełožowarje dojśpił. Naš team buźo twójo konto skóro pśeglědowaś a aktualizěrować. Pótom móžoš bźez limitow pśełožowaś.",
+ "tsb-no-requests-from-new-users": "Žedne napšašowanja wót nowych wužywarjow",
+ "tsb-create-user-page": "Zakładny wužywarski bok napórany",
+ "log-name-translatorsandbox": "Pśełožowańske grajkanišćo",
+ "log-description-translatorsandbox": "Protokol akcijow na wužywarjach pśełožowańskego grajkanišća",
+ "logentry-translatorsandbox-promoted": "$1 jo $3 za {{GENDER:$4|pśełožowarja|pśełožwarku}} {{GENDER:$2|pówušył|pówušyła}}",
+ "logentry-translatorsandbox-rejected": "$1 jo napšašowanje wót \"$3\" na pówušenje za {{GENDER:$2|pśełožowarja|pśełožowarku}} {{GENDER:$2|wótpokazał|wótpokazała}}",
+ "logentry-newusers-tsbpromoted": "Wužywarske konto $3 jo se pśez pówušenje z grajkanišća {{GENDER:$2|załožyło}}"
+}
diff --git a/MLEB/Translate/i18n/sandbox/en.json b/MLEB/Translate/i18n/sandbox/en.json
new file mode 100644
index 00000000..a69df0de
--- /dev/null
+++ b/MLEB/Translate/i18n/sandbox/en.json
@@ -0,0 +1,53 @@
+{
+ "@metadata": {
+ "authors": [
+ "Nike",
+ "Siebrand Mazeland",
+ "Santhosh Thottingal",
+ "Amire80"
+ ]
+ },
+ "managetranslatorsandbox": "Manage translator sandbox",
+ "tsb-filter-pending": "Pending requests",
+ "tsb-reminder-title-generic": "Complete your introduction to become a translator",
+ "tsb-reminder-content-generic": "Hi $1,\n\nThanks for registering with {{SITENAME}}.\n\nIf you complete your test translations, the administrators will grant you full translation access soon afterwards.\n\nPlease come over and make some more translations here:\n$2\n\n$3,\n{{SITENAME}} staff",
+ "tsb-reminder-sending": "Sending the reminder...",
+ "tsb-reminder-sent": "{{PLURAL:$1|Sent $1 reminder $2|Sent $1 reminders, the last one $2}}",
+ "tsb-reminder-sent-new": "Sent a reminder",
+ "tsb-reminder-failed": "Sending the reminder failed",
+ "tsb-email-promoted-subject": "You are now a translator at {{SITENAME}}",
+ "tsb-email-promoted-body": "Hi {{GENDER:$1|$1}},\n\nCongratulations! I checked the test translations that you made at {{SITENAME}} and gave you full translator rights.\n\nCome to {{SITENAME}} to continue translating now, and every day:\n$2\n\nWelcome, and thank you for you contributions!\n\n{{GENDER:$3|$3}},\n{{SITENAME}} staff",
+ "tsb-email-rejected-subject": "Your application to be a translator at {{SITENAME}} was rejected",
+ "tsb-email-rejected-body": "Hi {{GENDER:$1|$1}},\n\nThank you for applying as a translator at {{SITENAME}}. I regret to inform you that I have rejected your application, because the quality of your translations did not meet the requirements.\n\nIf you think that your application was rejected by mistake, please try to apply again as a translator at {{SITENAME}}. You can sign up here:\n$2\n\n{{GENDER:$3|$3}},\n{{SITENAME}} staff",
+ "tsb-request-count": "$1 {{PLURAL:$1|request|requests}}",
+ "tsb-all-languages-button-label": "All languages",
+ "tsb-search-requests": "Search requests",
+ "tsb-accept-button-label": "Accept",
+ "tsb-reject-button-label": "Reject",
+ "tsb-selected-count": "{{PLURAL:$1|$1 user selected|$1 users selected}}",
+ "tsb-older-requests": "$1 older {{PLURAL:$1|request|requests}}",
+ "tsb-accept-all-button-label": "Accept all",
+ "tsb-reject-all-button-label": "Reject all",
+ "tsb-user-posted-a-comment": "Not a translator",
+ "tsb-reminder-link-text": "Send email reminder",
+ "tsb-didnt-make-any-translations": "This user did not make any translations.",
+ "tsb-translations-source": "Source",
+ "tsb-translations-user": "{{GENDER:$1|User}} translations",
+ "tsb-translations-current": "Existing translations",
+ "tsb-delete-userpage-summary": "Deleting the user page of a sandbox user",
+ "translationstash": "Welcome",
+ "translate-translationstash-welcome": "Welcome {{GENDER:$1|$1}}, you are a new translator",
+ "translate-translationstash-welcome-note": "Become familiar with the translation tools. Translate some messages and get full-translator rights to participate in your favorite projects.",
+ "translate-translationstash-initialtranslation": "Your initial translation",
+ "translate-translationstash-translations": "$1 completed {{PLURAL:$1|translation|translations}}",
+ "translate-translationstash-skip-button-label": "Try another",
+ "tsb-limit-reached-title": "Thanks for your translations",
+ "tsb-limit-reached-body": "You reached the translation limit for new translators.\nOur team will verify and upgrade your account soon.\nThen you will be able to translate without limits.",
+ "tsb-no-requests-from-new-users": "No requests from new users",
+ "tsb-create-user-page": "Create basic user page",
+ "log-name-translatorsandbox": "Translation sandbox",
+ "log-description-translatorsandbox": "A log of actions on translation sandbox users",
+ "logentry-translatorsandbox-promoted": "$1 {{GENDER:$2|promoted}} $3 to {{GENDER:$4|translator}}",
+ "logentry-translatorsandbox-rejected": "$1 {{GENDER:$2|rejected}} the request from \"$3\" to become a translator",
+ "logentry-newusers-tsbpromoted": "User account $3 was {{GENDER:$2|created}} by promotion from sandbox"
+}
diff --git a/MLEB/Translate/i18n/sandbox/es.json b/MLEB/Translate/i18n/sandbox/es.json
new file mode 100644
index 00000000..12f64516
--- /dev/null
+++ b/MLEB/Translate/i18n/sandbox/es.json
@@ -0,0 +1,51 @@
+{
+ "@metadata": {
+ "authors": [
+ "Fitoschido",
+ "Macofe"
+ ]
+ },
+ "managetranslatorsandbox": "Gestionar la zona de pruebas del traductor",
+ "tsb-filter-pending": "Solicitudes pendientes",
+ "tsb-reminder-title-generic": "Completa tu introducción para volverte un traductor",
+ "tsb-reminder-content-generic": "Hola, $1:\n\nGracias por registrarte en {{SITENAME}}.\n\nSi completas tus traducciones de prueba, los administradores te otorgarán los permisos de traducción en breve.\n\nTraduce un poco más, aquí:\n$2\n\n$3,\nPersonal de {{SITENAME}}",
+ "tsb-reminder-sending": "Enviando el recordatorio…",
+ "tsb-reminder-sent": "Se {{PLURAL:$1|envió $1 recordatorio $2|enviaron $1 recordatorios, el último $2}}",
+ "tsb-reminder-sent-new": "Se envió un recordatorio",
+ "tsb-reminder-failed": "Falló el envío del recordatorio",
+ "tsb-email-promoted-subject": "Ahora tienes permisos de traductor en {{SITENAME}}",
+ "tsb-email-promoted-body": "Hola, {{GENDER:$1|$1}}:\n\n¡Enhorabuena! He revisado las traducciones de prueba que realizaste en {{SITENAME}} y te he otorgado los permisos de traducción.\n\nVen a {{SITENAME}} para seguir colaborando siempre que quieras:\n$2\n\nTe damos la bienvenida, y gracias por tus contribuciones.\n\n{{GENDER:$3|$3}},\nPersonal de {{SITENAME}}",
+ "tsb-email-rejected-subject": "Se rechazó tu solicitud para convertirte en traductor en {{SITENAME}}",
+ "tsb-email-rejected-body": "Hola, {{GENDER:$1|$1}}:\n\nGracias por solicitar ser un traductor en {{SITENAME}}. Lamento informarte que he rechazado tu solicitud, porque la calidad de tus traducciones no cumple con los requisitos.\n\nSi piensas que tu solicitud se rechazó por error, intenta solicitar nuevamente ser un traductor en {{SITENAME}}. Puedes registrarte aquí:\n$2\n\n{{GENDER:$3|$3}},\nPersonal de {{SITENAME}}",
+ "tsb-request-count": "$1 {{PLURAL:$1|solicitud|solicitudes}}",
+ "tsb-all-languages-button-label": "Todos los idiomas",
+ "tsb-search-requests": "Solicitudes de búsqueda",
+ "tsb-accept-button-label": "Aceptar",
+ "tsb-reject-button-label": "Rechazar",
+ "tsb-selected-count": "{{PLURAL:$1|$1 usuario seleccionado|$1 usuarios seleccionados}}",
+ "tsb-older-requests": "$1 solicitud{{PLURAL:$1| anterior|es anteriores}}",
+ "tsb-accept-all-button-label": "Aceptar todos",
+ "tsb-reject-all-button-label": "Rechazar todos",
+ "tsb-user-posted-a-comment": "No es traductor",
+ "tsb-reminder-link-text": "Enviar recordatorio por correo",
+ "tsb-didnt-make-any-translations": "Este usuario no ha realizado ninguna traducción.",
+ "tsb-translations-source": "Origen",
+ "tsb-translations-user": "Traducciones {{GENDER:$1|del usuario|de la usuaria}}",
+ "tsb-translations-current": "Traducciones existentes",
+ "tsb-delete-userpage-summary": "Eliminar la página de usuario en la zona de pruebas",
+ "translationstash": "Te damos la bienvenida",
+ "translate-translationstash-welcome": "{{GENDER:$1|Bienvenido|Bienvenida}}, $1. Ahora eres {{GENDER:$1|un traductor|una traductora}}",
+ "translate-translationstash-welcome-note": "Familiarízate con las herramientas de traducción. Traduce algunos mensajes y obtén los permisos completos de traducción para participar en tus proyectos favoritos.",
+ "translate-translationstash-initialtranslation": "Tu primera traducción",
+ "translate-translationstash-translations": "$1 {{PLURAL:$1|traducción completada|traducciones completadas}}",
+ "translate-translationstash-skip-button-label": "Prueba con otra",
+ "tsb-limit-reached-title": "Gracias por tus traducciones",
+ "tsb-limit-reached-body": "Alcanzaste el límite de traducción para nuevos traductores.\nNuestro equipo verificará y actualizará tu cuenta pronto.\nLuego serás capaz de traducir sin límites.",
+ "tsb-no-requests-from-new-users": "No hay solicitudes de usuarios nuevos",
+ "tsb-create-user-page": "Crear página de usuario básica",
+ "log-name-translatorsandbox": "Zona de pruebas de traducción",
+ "log-description-translatorsandbox": "Un registro de acciones de usuarios en zona de pruebas de traducción",
+ "logentry-translatorsandbox-promoted": "$1 {{GENDER:$2|promovió}} $3 a {{GENDER:$4|traductor|traductora}}",
+ "logentry-translatorsandbox-rejected": "$1 {{GENDER:$2|rechazó}} la solicitud de «$3» para convertirse en traductor",
+ "logentry-newusers-tsbpromoted": "Se {{GENDER:$2|creó}} la cuenta $3 promovida de la zona de pruebas"
+}
diff --git a/MLEB/Translate/i18n/sandbox/et.json b/MLEB/Translate/i18n/sandbox/et.json
new file mode 100644
index 00000000..6ae7d101
--- /dev/null
+++ b/MLEB/Translate/i18n/sandbox/et.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Pikne"
+ ]
+ },
+ "translationstash": "Tere tulemast"
+}
diff --git a/MLEB/Translate/i18n/sandbox/fa.json b/MLEB/Translate/i18n/sandbox/fa.json
new file mode 100644
index 00000000..f2d36934
--- /dev/null
+++ b/MLEB/Translate/i18n/sandbox/fa.json
@@ -0,0 +1,53 @@
+{
+ "@metadata": {
+ "authors": [
+ "Reza1615",
+ "Armin1392",
+ "Ebraminio",
+ "Alirezaaa"
+ ]
+ },
+ "managetranslatorsandbox": "مدیریت کاربران مترجم",
+ "tsb-filter-pending": "در حال انتظار درخواست‌ها",
+ "tsb-reminder-title-generic": "معرفی‌نامهٔ خود را برای تبدیل شدن به یک مترجم کامل کنید",
+ "tsb-reminder-content-generic": "سلام $1،\n تشکر برای ثبت‌نام با {{SITENAME}}.\nاگر شما ترجمه‌های امتحانی خود را کامل کنید، سرپرستان به شما ترجمه کامل در دسترس را زود پس از آن به شما تعطا خواهند کرد.\nلطفاً بیایید و چند ترجمه بیشتر اینجا ایجاد کنیدː\n$2\n$3،\nکارکنان {{SITENAME}}",
+ "tsb-reminder-sending": "در حال فرستادن یادآوری...",
+ "tsb-reminder-sent": "{{PLURAL:$1|ارسال $1 یادآوری $2|ارسال $1 یادآوری‌ها, آخرین $2}}",
+ "tsb-reminder-sent-new": "فرستادن یک یادآوری",
+ "tsb-reminder-failed": "عدم موفقیت در فرستادن یادآوری",
+ "tsb-email-promoted-subject": "شما در حال حاضر یک مترجم در {{SITENAME}} هستید",
+ "tsb-email-promoted-body": "سلام {{GENDER:$1|$1}}،\n\nتبریکǃ من ترجمه‌های امتحانی که شما در {{SITENAME}} ایجاد کردید را بررسی کردم و به شما تمام حقوق مترجم را دادم.\n\nاکنون به {{SITENAME}} برای ادامه ترجمه بیایید، و هر روزː \n$2\n\nخوش‌‌آمدید، و از شما برای کمک تشکر می کنمǃ\n{{GENDER:$3|$3}}،\n{{SITENAME}} کارکنان",
+ "tsb-email-rejected-subject": "درخواست شما برای مترجم شدن در {{SITENAME}} رد شد",
+ "tsb-email-rejected-body": "سلام {{GENDER:$1|$1}}،\n\nتشکر از شما برای درخواست به عنوان مترجم در {{SITENAME}}. متأسفم که به شما اطلاع دادم که درخواست شما را رد کرده‌ام، زیرا کیفیت ترجمه‌های شما، نیازها را برآورد نکرد.\n\nاگر فکر می‌کنید که درخواست شما اشتباهاً رد شده‌است، لطفاً برای درخواست مجدد به عنوان مترجم در {{SITENAME}} درخواست دهید. شما می‌توانید اینجا ثبت‌نام کنیدː\n$2\n\n{{GENDER:$3|$3}}،\n{{SITENAME}} کارکنان",
+ "tsb-request-count": "$1 {{PLURAL:$1|درخواست|درخواست‌ها}}",
+ "tsb-all-languages-button-label": "همهٔ زبان‌ها",
+ "tsb-search-requests": "جستجوی درخواست‌ها",
+ "tsb-accept-button-label": "پذیرفتن",
+ "tsb-reject-button-label": "ردکردن",
+ "tsb-selected-count": "{{PLURAL:$1|$1 کاربر انتخاب شده|$1 کاربران انتخاب شده}}",
+ "tsb-older-requests": "$1 قدیمی‌تر {{PLURAL:$1|درخواست|درخواست‌ها}}",
+ "tsb-accept-all-button-label": "پذیرش همه",
+ "tsb-reject-all-button-label": "رد همه",
+ "tsb-user-posted-a-comment": "یک مترجم نیست",
+ "tsb-reminder-link-text": "فرستادن رایانامهٔ یادآوری",
+ "tsb-didnt-make-any-translations": "این کاربر هیچ ترجمه‌ای انجام نداده.",
+ "tsb-translations-source": "منبع",
+ "tsb-translations-user": "ترجمه‌های کاربر",
+ "tsb-translations-current": "ترجمه‌های موجود",
+ "tsb-delete-userpage-summary": "حذف صفحه کاربری کاربری یک کاربر سندباکس",
+ "translationstash": "خوش آمدید",
+ "translate-translationstash-welcome": "خوش آمدید {{GENDER:$1|$1}}، شما یک مترجم تازه هستید",
+ "translate-translationstash-welcome-note": "آشنا شدن با ابزارهای ترجمه. چند پیام را ترجمه کنید و تمام حقوق مترجم را برای شرکت در پروژه‌های مورد علاقه خود بدست آورید.",
+ "translate-translationstash-initialtranslation": "ترجمه‌های اولیهٔ شما",
+ "translate-translationstash-translations": "$1تکمیل شده {{PLURAL:$1|ترجمه|ترجمه‌ها}}",
+ "translate-translationstash-skip-button-label": "امتحان دیگری",
+ "tsb-limit-reached-title": "تشکر برای ترجمه‌های شما",
+ "tsb-limit-reached-body": "شما به حد ترجمه برای مترجمان جدید رسیده‌اید.\nتیم ما بررسی خواهد کرد و حساب شما را به زودی ارتقاء می‌دهد.\nسپس شما قادر به ترجمه بدون محدودیت خواهید بود.",
+ "tsb-no-requests-from-new-users": "هیچ درخواستی از کاربران تازه نیست",
+ "tsb-create-user-page": "ایجاد صفحهٔ کاربری اصلی",
+ "log-name-translatorsandbox": "ترجمه سندباکس",
+ "log-description-translatorsandbox": "سیاهه عملیات در ترجمه کاربران سندباکس",
+ "logentry-translatorsandbox-promoted": "$1 {{GENDER:$2|ترفیع}} $3 به {{GENDER:$4|مترجم}}",
+ "logentry-translatorsandbox-rejected": "$1 درخواست {{GENDER:$2|رد شده}} از \"$3\" برای مترجم شدن",
+ "logentry-newusers-tsbpromoted": "حساب کاربری $3 توسط ترفیع از سندباکس{{GENDER:$2| ایجاد شده}} بود"
+}
diff --git a/MLEB/Translate/i18n/sandbox/fi.json b/MLEB/Translate/i18n/sandbox/fi.json
new file mode 100644
index 00000000..3438bcba
--- /dev/null
+++ b/MLEB/Translate/i18n/sandbox/fi.json
@@ -0,0 +1,37 @@
+{
+ "@metadata": {
+ "authors": [
+ "Crt",
+ "Nike"
+ ]
+ },
+ "managetranslatorsandbox": "Kääntäjähakemusten hallinta",
+ "tsb-filter-pending": "Avoimet hakemukset",
+ "tsb-reminder-title-generic": "Suorita harjoitus loppuun, jotta sinut voidaan hyväksyä kääntäjäksi",
+ "tsb-reminder-sending": "Lähetetään muistutusta...",
+ "tsb-reminder-sent-new": "Muistutus lähetetty",
+ "tsb-reminder-failed": "Muistutuksen lähettäminen epäonnistui",
+ "tsb-email-promoted-subject": "{{SITENAME}}: Sinut on hyväksytty kääntäjäksi",
+ "tsb-request-count": "$1 {{PLURAL:$1|hakemus|hakemusta}}",
+ "tsb-all-languages-button-label": "Kaikki kielet",
+ "tsb-search-requests": "Hae hakemuksista",
+ "tsb-accept-button-label": "Hyväksy",
+ "tsb-reject-button-label": "Hylkää",
+ "tsb-selected-count": "{{PLURAL:$1|$1 käyttäjä|$1 käyttäjää}} valittu",
+ "tsb-older-requests": "$1 {{PLURAL:$1|vanhempi hakemus|vanhempaa hakemusta}}",
+ "tsb-accept-all-button-label": "Hyväksy kaikki",
+ "tsb-reject-all-button-label": "Hylkää kaikki",
+ "tsb-user-posted-a-comment": "Ei kääntäjä",
+ "tsb-reminder-link-text": "Lähetä muistutus",
+ "tsb-didnt-make-any-translations": "Käyttäjä ei ole tehnyt käännöksiä.",
+ "tsb-translations-source": "Lähde",
+ "tsb-translations-user": "Käyttäjän käännös",
+ "tsb-translations-current": "Nykyinen käännös",
+ "translationstash": "Tervetuloa",
+ "translate-translationstash-welcome": "Tervetuloa {{GENDER:$1|$1}}. Olet uusi kääntäjä.",
+ "translate-translationstash-welcome-note": "Tutustu käännöstyökaluihin. Käännä muutamia viestejä, niin saat täydet käännösoikeudet lempiprojektiesi kääntämiseen.",
+ "translate-translationstash-initialtranslation": "Ensimmäinen käännös",
+ "translate-translationstash-translations": "$1 {{PLURAL:$1|valmis käännös|valmista käännöstä}}",
+ "translate-translationstash-skip-button-label": "Ohita",
+ "tsb-limit-reached-title": "Kiitos käännöksistäsi"
+}
diff --git a/MLEB/Translate/i18n/sandbox/fr.json b/MLEB/Translate/i18n/sandbox/fr.json
new file mode 100644
index 00000000..67d07e94
--- /dev/null
+++ b/MLEB/Translate/i18n/sandbox/fr.json
@@ -0,0 +1,57 @@
+{
+ "@metadata": {
+ "authors": [
+ "Crochet.david",
+ "Gomoko",
+ "NemesisIII",
+ "Nobody",
+ "Wyz",
+ "Linedwell",
+ "Urhixidur",
+ "McDutchie"
+ ]
+ },
+ "managetranslatorsandbox": "Gérer le bac à sable de traduction",
+ "tsb-filter-pending": "Requêtes en attente",
+ "tsb-reminder-title-generic": "Complétez votre présentation pour devenir un traducteur",
+ "tsb-reminder-content-generic": "Bonjour $1,\n\nMerci de vous être inscrit sur {{SITENAME}}.\n\nSi vous achevez vos traductions de test, les administrateurs vous accorderont peu après un plein accès aux traductions.\n\nVeuillez aller ici et faire quelques traductions supplémentaires :\n$2\n\n$3,\nL’équipe de {{SITENAME}}",
+ "tsb-reminder-sending": "Envoi du rappel en cours…",
+ "tsb-reminder-sent": "{{PLURAL:$1|$1 rappel envoyé $2|$1 rappels envoyés, le dernier $2}}",
+ "tsb-reminder-sent-new": "Rappel envoyé",
+ "tsb-reminder-failed": "L’envoi du rappel a échoué",
+ "tsb-email-promoted-subject": "Vous êtes maintenant un traducteur à {{SITENAME}}",
+ "tsb-email-promoted-body": "Bonjour {{GENDER:$1|$1}},\n\nFélicitations ! J’ai vérifié les traductions d’essai que vous avez effectuées sur {{SITENAME}} et je vous ai donné les droits complets de {{GENDER:$1|traducteur|traductrice}}.\n\nVenez sur {{SITENAME}} pour continuer à traduire dès maintenant et tous les jours :\n$2\n\nBienvenue et merci pour vos contributions !\n\n{{GENDER:$3|$3}},\nl’équipe de {{SITENAME}}",
+ "tsb-email-rejected-subject": "Votre demande pour devenir traducteur sur {{SITENAME}} a été rejetée",
+ "tsb-email-rejected-body": "Bonjour {{GENDER:$1|$1}},\n\nMerci de votre candidature comme traducteur de {{SITENAME}}. J’ai le regret de vous informer que j’ai rejeté votre candidature, car la qualité de vos traductions ne correspond pas aux attentes.\n\nSi vous pensez que votre candidature a été rejetée par erreur, veuillez refaire une demande comme traducteur sur {{SITENAME}}. Vous pouvez vous inscrire ici :\n$2\n\n{{GENDER:$3|$3}},\néquipe de {{SITENAME}}",
+ "tsb-request-count": "{{PLURAL:$1|Une demande|$1 demandes}}",
+ "tsb-all-languages-button-label": "Toutes les langues",
+ "tsb-search-requests": "Demandes de recherche",
+ "tsb-accept-button-label": "Accepter",
+ "tsb-reject-button-label": "Rejeter",
+ "tsb-selected-count": "{{PLURAL:$1|$1 utilisateur sélectionné|$1 utilisateurs sélectionnés}}",
+ "tsb-older-requests": "$1 {{PLURAL:$1|requête plus ancienne|requêtes plus anciennes}}",
+ "tsb-accept-all-button-label": "Tout accepter",
+ "tsb-reject-all-button-label": "Tout rejeter",
+ "tsb-user-posted-a-comment": "Pas un traducteur",
+ "tsb-reminder-link-text": "Envoyer un courriel de rappel",
+ "tsb-didnt-make-any-translations": "Cet utilisateur n’a fait aucune traduction.",
+ "tsb-translations-source": "Source",
+ "tsb-translations-user": "Traductions {{GENDER:$1|de l’utilisateur|de l’utilisatrice}}",
+ "tsb-translations-current": "Traductions existantes",
+ "tsb-delete-userpage-summary": "Suppression de la page utilisateur d’un utilisateur du bac à sable",
+ "translationstash": "Bienvenue",
+ "translate-translationstash-welcome": "Bienvenue {{GENDER:$1|$1}}, vous êtes un nouveau traducteur",
+ "translate-translationstash-welcome-note": "Familiarisez-vous avec les outils de traduction. Traduisez quelques messages et obtenez les droits complets de traducteur pour participer à vos projets favoris.",
+ "translate-translationstash-initialtranslation": "Votre traduction initiale",
+ "translate-translationstash-translations": "$1 a achevé {{PLURAL:$1|une traduction|des traductions}}",
+ "translate-translationstash-skip-button-label": "Essayer une autre",
+ "tsb-limit-reached-title": "Merci pour vos traductions",
+ "tsb-limit-reached-body": "Vous atteint le nombre limite de traductions pour les nouveaux traducteurs. !N !Notre équipe va vérifier et mettre à niveau votre compte bientôt. !N !Ensuite, vous serez en mesure de traduire sans limites.",
+ "tsb-no-requests-from-new-users": "Aucune requête de nouveaux utilisateurs",
+ "tsb-create-user-page": "Créer une page utilisateur de base",
+ "log-name-translatorsandbox": "Bac à sable de traduction",
+ "log-description-translatorsandbox": "Un journal des actions sur les utilisateurs du bac à sable de traduction",
+ "logentry-translatorsandbox-promoted": "$1 {{GENDER:$2|a promu}} $3 en {{GENDER:$4|traducteur|traductrice}}.",
+ "logentry-translatorsandbox-rejected": "$1 {{GENDER:$2|a rejeté}} la demande de $3 de devenir traducteur",
+ "logentry-newusers-tsbpromoted": "Le compte utilisateur $3 a été {{GENDER:$2|créé}} en étant promu depuis le bac à sable"
+}
diff --git a/MLEB/Translate/i18n/sandbox/gl.json b/MLEB/Translate/i18n/sandbox/gl.json
new file mode 100644
index 00000000..ffe89cfc
--- /dev/null
+++ b/MLEB/Translate/i18n/sandbox/gl.json
@@ -0,0 +1,51 @@
+{
+ "@metadata": {
+ "authors": [
+ "Amire80",
+ "Toliño"
+ ]
+ },
+ "managetranslatorsandbox": "Administrar a zona de probas dos tradutores",
+ "tsb-filter-pending": "Solicitudes pendentes",
+ "tsb-reminder-title-generic": "Complete a súa introdución para se converter nun tradutor",
+ "tsb-reminder-content-generic": "Boas, $1:\n\nGrazas por rexistrarse en {{SITENAME}}.\n\nSe completa as traducións de proba, os adminitradores poderán concederlle axiña acceso completo á tradución.\n\nFaga algunhas traducións máis aquí:\n$2\n\n$3,\no equipo de {{SITENAME}}",
+ "tsb-reminder-sending": "Enviando o recordatorio...",
+ "tsb-reminder-sent": "{{PLURAL:$1|Enviouse $1 recordatorio $2|Enviáronse $1 recordatorios, o último $2}}",
+ "tsb-reminder-sent-new": "Enviouse un recordatorio",
+ "tsb-reminder-failed": "Erro ao enviar o recordatorio",
+ "tsb-email-promoted-subject": "Agora xa é tradutor en {{SITENAME}}",
+ "tsb-email-promoted-body": "Boas, {{GENDER:$1|$1}}:\n\nParabéns! Comprobei as traducións de proba que fixo en {{SITENAME}} e concedinlle todos os dereitos de tradutor.\n\nVaia a {{SITENAME}} para continuar coas traducións:\n$2\n\nReciba a nosa benvida e as nosas grazas polas súas contribucións!\n\n{{GENDER:$3|$3}},\no equipo de {{SITENAME}}",
+ "tsb-email-rejected-subject": "Rexeitouse a súa solicitude de converterse en tradutor en {{SITENAME}}",
+ "tsb-email-rejected-body": "Boas, {{GENDER:$1|$1}}:\n\nGrazas por enviar a súa solicitude para converterse en tradutor en {{SITENAME}}. Sinto dicirlle que rexeitamos a súa solicitude, porque a calidade das súas traducións non cumpre cos requisitos.\n\nSe cre que se rexeitou por erro a súa solicitude, pida de novo os dereitos de tradutor en {{SITENAME}}. Pode facelo aquí:\n$2\n\n{{GENDER:$3|$3}},\no equipo de {{SITENAME}}",
+ "tsb-request-count": "{{PLURAL:$1|Unha solicitude|$1 solicitudes}}",
+ "tsb-all-languages-button-label": "Todas as linguas",
+ "tsb-search-requests": "Procurar nas solicitudes",
+ "tsb-accept-button-label": "Aceptar",
+ "tsb-reject-button-label": "Rexeitar",
+ "tsb-selected-count": "{{PLURAL:$1|$1 usuario seleccionado|$1 usuarios seleccionados}}",
+ "tsb-older-requests": "{{PLURAL:$1|$1 solicitude vella|$1 solicitudes vellas}}",
+ "tsb-accept-all-button-label": "Aceptar todos",
+ "tsb-reject-all-button-label": "Rexeitar todos",
+ "tsb-user-posted-a-comment": "Non é tradutor",
+ "tsb-reminder-link-text": "Enviar un recordatorio por correo electrónico",
+ "tsb-didnt-make-any-translations": "Este usuario non fixo ningunha tradución.",
+ "tsb-translations-source": "Fonte",
+ "tsb-translations-user": "Traducións do usuario",
+ "tsb-translations-current": "Traducións existentes",
+ "tsb-delete-userpage-summary": "Borro a páxina de usuario dunha zona de probas de usuario",
+ "translationstash": "Benvido",
+ "translate-translationstash-welcome": "{{GENDER:$1|Benvido|Benvida}}, $1; xa es {{GENDER:$1|un novo tradutor|unha nova tradutora}}",
+ "translate-translationstash-welcome-note": "Familiarícese coas ferramentas de tradución. Traduza algunhas mensaxes e obteña todos os dereitos de tradutor para participar nos seus proxectos favoritos.",
+ "translate-translationstash-initialtranslation": "A súa tradución inicial",
+ "translate-translationstash-translations": "$1 {{PLURAL:$1|tradución completada|traducións completadas}}",
+ "translate-translationstash-skip-button-label": "Probar outra",
+ "tsb-limit-reached-title": "Grazas polas súas traducións",
+ "tsb-limit-reached-body": "Alcanzou o límite de traducións dos tradutores novos.\nO noso equipo ha comprobar e actualizar a súa conta axiña.\nLogo diso, poderá traducir sen límites.",
+ "tsb-no-requests-from-new-users": "Non hai solicitudes de novos usuarios",
+ "tsb-create-user-page": "Creo a páxina de usuario básica",
+ "log-name-translatorsandbox": "Zona de probas de tradución",
+ "log-description-translatorsandbox": "Un rexistro de accións sobre os usuarios da zona de probas de tradución",
+ "logentry-translatorsandbox-promoted": "$1 {{GENDER:$2|converteu a}} $3 en {{GENDER:$4|tradutor|tradutora}}",
+ "logentry-translatorsandbox-rejected": "$1 {{GENDER:$2|rexeitou}} a solicitude de $3 de converterse en tradutor",
+ "logentry-newusers-tsbpromoted": "A conta de usuario $3 {{GENDER:$2|creouse}} desde a zona de probas"
+}
diff --git a/MLEB/Translate/i18n/sandbox/gu.json b/MLEB/Translate/i18n/sandbox/gu.json
new file mode 100644
index 00000000..b3902665
--- /dev/null
+++ b/MLEB/Translate/i18n/sandbox/gu.json
@@ -0,0 +1,32 @@
+{
+ "@metadata": {
+ "authors": [
+ "KartikMistry"
+ ]
+ },
+ "managetranslatorsandbox": "ભાષાંતર સેન્ડબોક્સનું સંચાલન કરો",
+ "tsb-filter-pending": "બાકી પડેલ વિનંતીઓ",
+ "tsb-reminder-title-generic": "ભાષાંતરકર્તા બનવા માટે તમારો પરિચય પૂરો કરો",
+ "tsb-email-promoted-subject": "તમે હવે {{SITENAME}} પર ભાષાંતરકર્તા છો",
+ "tsb-email-rejected-subject": "{{SITENAME}} પરની તમારી ભાષાંતરકર્તાની અરજી નકારવામાં આવી છે",
+ "tsb-all-languages-button-label": "બધી ભાષાઓ",
+ "tsb-search-requests": "વિનંતીઓ શોધો",
+ "tsb-accept-button-label": "સ્વિકારો",
+ "tsb-reject-button-label": "નકારો",
+ "tsb-accept-all-button-label": "બધાંને સ્વિકારો",
+ "tsb-reject-all-button-label": "બધાંને નકારો",
+ "tsb-user-posted-a-comment": "ભાષાંતરકર્તા નથી",
+ "tsb-reminder-link-text": "યાદ કરાવતો ઇમેલ મોકલો",
+ "tsb-didnt-make-any-translations": "આ સભ્યે કોઇ ભાષાંતરો કરેલ નથી.",
+ "tsb-translations-source": "સ્રોત",
+ "tsb-translations-user": "સભ્ય ભાષાંતરો",
+ "tsb-translations-current": "હાલનાં ભાષાંતરો",
+ "translationstash": "સ્વાગત",
+ "translate-translationstash-welcome": "સ્વાગત {{GENDER:$1|$1}}, તમે હવે ભાષાંતરકર્તા છો",
+ "translate-translationstash-initialtranslation": "તમારું શરુઆતનું ભાષાંતર",
+ "translate-translationstash-skip-button-label": "બીજા પ્રયત્ન કરો",
+ "tsb-limit-reached-title": "તમારા ભાષાંતરો માટે આભાર",
+ "tsb-no-requests-from-new-users": "નવા સભ્યો તરફથી કોઇ વિનંતીઓ નથી",
+ "tsb-create-user-page": "પ્રાથમિક સભ્યપાનું બનાવો",
+ "log-name-translatorsandbox": "ભાષાંતર સેન્ડબોક્સ"
+}
diff --git a/MLEB/Translate/i18n/sandbox/he.json b/MLEB/Translate/i18n/sandbox/he.json
new file mode 100644
index 00000000..69c093a7
--- /dev/null
+++ b/MLEB/Translate/i18n/sandbox/he.json
@@ -0,0 +1,50 @@
+{
+ "@metadata": {
+ "authors": [
+ "Amire80"
+ ]
+ },
+ "managetranslatorsandbox": "ניהול ארגז חול של מתרגמים",
+ "tsb-filter-pending": "בקשות ממתינות",
+ "tsb-reminder-title-generic": "נא להשלים את ההיכרות שלך כדי לקבל אישור לתרגם",
+ "tsb-reminder-content-generic": "שלום $1,\n\nתודה שנרשמת לאתר {{SITENAME}}.\n\nאם {{GENDER:$1|תסיים|תסיימי}} לעשות את תרגומי הבדיקה, המנהלים ייתנו לך גישה מלאה לתרגם קצת אחרי־כן.\n\nנשאר רק לבוא לעשות עוד כמה תרגומים כאן:\n$2\n\n$3\nצוות {{SITENAME}}",
+ "tsb-reminder-sending": "שליחת התזכורת...",
+ "tsb-reminder-sent": "{{PLURAL:$1|נשלחה תזכורת אחת|נשלחו $1 תזכורות, האחרונה $2}}",
+ "tsb-reminder-sent-new": "נשלחה תזכורת",
+ "tsb-reminder-failed": "שליחת התזכורת נכשלה",
+ "tsb-email-promoted-subject": "קיבלת הרשאה לתרגם באתר {{SITENAME}}",
+ "tsb-email-promoted-body": "שלום $1,\n\nברכות! בדקתי את תרגומי הבדיקה שעשית באתר {{SITENAME}} ונתתי לך הרשאות מלאות לתרגם.\n\n{{GENDER:$1|בוא|בואי}} אל {{SITENAME}} כדי להמשיך לתרגם, עכשיו וכל יום:\n$2\n\n{{GENDER:$1|ברוך הבא|ברוכה הבאה}} ותודה על {{GENDER:$1|תרומותיך|תרומותייך}}!\n\n$3,\nצוות {{SITENAME}}",
+ "tsb-email-rejected-subject": "הבקשה שלך להיות מתרגם באתר {{SITENAME}} נדחתה",
+ "tsb-email-rejected-body": "שלום $1,\n\nתודה על בקשתך להיות {{GENDER:$1|מתרגם|מתרגמת}} באתר {{SITENAME}}. אני {{GENDER:$3|מצטער|מצטערת}} להודיע לך שדחיתי את בקשתך משום שהאיכות של התרגומים שלך לא עמדה בדרישות.\n\nאם נראה לך שהבקשה נדחתה בטעות, {{GENDER:$1|נסה|נסי}} להירשם שוב בתור {{GENDER:$1|מתרגם|מתרגמת}} באתר {{SITENAME}} בכתובת הבאה:\n$2\n\n$3\nסגל {{SITENAME}}",
+ "tsb-request-count": "{{PLURAL:$1|בקשה אחת|$1 בקשות}}",
+ "tsb-all-languages-button-label": "כל השפות",
+ "tsb-search-requests": "חיפוש בקשות",
+ "tsb-accept-button-label": "לקבל",
+ "tsb-reject-button-label": "לדחות",
+ "tsb-selected-count": "{{PLURAL:$1|נבחר משתמש אחד|נבחרו $1 משתמשים}}",
+ "tsb-older-requests": "{{PLURAL:$1|בקשה אחת ישנה|$1 בקשות ישנות|0=אין בקשות ישנות}} יותר",
+ "tsb-accept-all-button-label": "לקבל את כולם",
+ "tsb-reject-all-button-label": "לדחות את כולם",
+ "tsb-user-posted-a-comment": "לא מתרגם",
+ "tsb-reminder-link-text": "לשלוח תזכורת בדוא\"ל",
+ "tsb-didnt-make-any-translations": "המשתמש הזה לא עשה שום תרגום.",
+ "tsb-translations-source": "מחרוזת מקור",
+ "tsb-translations-user": "תרגומים של {{GENDER:$1|המשתמש|המשתמשת}}",
+ "tsb-translations-current": "תרגומים קיימים",
+ "tsb-delete-userpage-summary": "מחיקת דף משתמש של משתמש בארגז חול",
+ "translationstash": "ברוך בואך",
+ "translate-translationstash-welcome": "{{GENDER:$1|ברוך הבא $1, אתה מתרגם חדש|ברוכה הבאה $1, את מתרגמת חדשה}}",
+ "translate-translationstash-welcome-note": "עכשיו נכיר לך את כלי התרגום. אנו מבקשים ממך לתרגם מספר מחרוזות כדי לקבל הרשאות תרגום מלאות ולהשתתף במיזמים שמעניינים אותך.",
+ "translate-translationstash-initialtranslation": "התרגום ההתחלתי שלך",
+ "translate-translationstash-translations": "{{PLURAL:$1|תרגום אחד הושלם|$1 תרגומים הושלמו}}",
+ "translate-translationstash-skip-button-label": "לנסות משהו אחר",
+ "tsb-limit-reached-title": "תודה על התרגומים שלך",
+ "tsb-limit-reached-body": "הגעת למגבלת התרגומים למתרגמים חדשים.\nהסגל שלנו יבדוק וישדרג את החשבון שלך בקרוב.\nאחרי־כן תהיה לך אפשרות לתרגם בלי הגבלה.",
+ "tsb-no-requests-from-new-users": "אין בקשות ממשתמשים חדשים",
+ "tsb-create-user-page": "יצירת דף משתמש בסיסי",
+ "log-name-translatorsandbox": "ארגז חול של תרגומים",
+ "log-description-translatorsandbox": "יומן פעולות על משתמשים בארגז חול של תרגומים",
+ "logentry-translatorsandbox-promoted": "$1 {{GENDER:$2|קידם|קידמה}} את $3 לתפקיד {{GENDER:$4|מתרגם|מתרגמת}}",
+ "logentry-translatorsandbox-rejected": "$1 {{GENDER:$2|דחה|דחתה}} את הבקשה של \"$3\" לקבל הרשאת מתרגם",
+ "logentry-newusers-tsbpromoted": "החשבון $3 {{GENDER:$2|נוצר}} באמצעות קידום מארגז החול"
+}
diff --git a/MLEB/Translate/i18n/sandbox/hsb.json b/MLEB/Translate/i18n/sandbox/hsb.json
new file mode 100644
index 00000000..5ea9d791
--- /dev/null
+++ b/MLEB/Translate/i18n/sandbox/hsb.json
@@ -0,0 +1,50 @@
+{
+ "@metadata": {
+ "authors": [
+ "Michawiki"
+ ]
+ },
+ "managetranslatorsandbox": "Přełožowarske hrajkanišćo zrjadować",
+ "tsb-filter-pending": "Njesčinjene naprašowanja",
+ "tsb-reminder-title-generic": "Wudospołń swoje zawjedźenje, zo by so z přełožowarjom stał",
+ "tsb-reminder-content-generic": "Witaj $1,\n\ndźakujemy so za registrowanje na {{GRAMMAR:lokatiw|{{SITENAME}}}}.\n\nJeli swoje testowe přełožki wudospołnješ, administratorojo dadźa tebi potom połny přełožowanski přistup.\n\nPřińdź prošu sem a přewjedź dalše přełožki:\n$2\n\n$3,\nsobudźěłaćerjo {{GRAMMAR:genitiw|{{SITENAME}}}}",
+ "tsb-reminder-sending": "Dopomnjeće so sćele...",
+ "tsb-reminder-sent": "{{PLURAL:$1|$1 dopomnjeće je so pósłało $2|$1 dopomnjeći stej so pósłałoj, poslednje $2|$1 dopomnjeća su so pósłali, poslednje $2|$1 dopomnjećow je so pósłało, poslednje $2}}",
+ "tsb-reminder-sent-new": "Dopomnjeće je so pósłało",
+ "tsb-reminder-failed": "Słanje dopomnjeća je so njeporadźiło",
+ "tsb-email-promoted-subject": "Sy nětko přełožowar na {{GRAMMAR:lokatiw|{{SITENAME}}}}",
+ "tsb-email-promoted-body": "Witaj {{GENDER:$1|$1}},\n\nwutrobne zbožopřeće! Sym testowe přełožki přepruwował, kotrež sy na {{GRAMMAR:lokatiw|{{SITENAME}}}} přewjedł a sym tebi połne přełožowarske prawa dał.\n\nPřińdź prošu k {{GRAMMAR:datiw|{{SITENAME}}}}, zo by nětko a kóždy dźeń dale přełožował:\n$2\n\nWitaj a wulki dźak za twoje přinoški!\n\n{{GENDER:$3|$3}},\nsobudźěłaćerjo {{GRAMMAR:genitiw|{{SITENAME}}}}",
+ "tsb-email-rejected-subject": "Twóje powyšenje za přełožowarja na {{GRAMMAR:lokatiw|{{SITENAME}}}} je so wotpokazało",
+ "tsb-email-rejected-body": "Witaj {{GENDER:$1|$1}},\n\ndźakuju so za zamołwjenje jako přełožowar na {{GRAMMAR:lokatiw|{{SITENAME}}}}. Bohužel dyrbju ći zdźělić, zo sym twoje zamołwjenje wo powyšenje za přełožowarja wotpokazał, dokelž kwalita twojich přełožkow žadanjam njewotpowěduje.\n\nJeli mysliš, zo twoje zamołwjenje je so zmylnje wotpokazało, zamołw so znowa jako přełožowarja na {{GRAMMAR:lokatiw|{{SITENAME}}}}. Móžeš so tu registrować:\n$2\n\n{{GENDER:$3|$3}},\nTeam {{GRAMMAR:genitiw|{{SITENAME}}}}",
+ "tsb-request-count": "$1 {{PLURAL:$1|naprašowanje|naprašowani|naprašowanja|naprašowanjow}}",
+ "tsb-all-languages-button-label": "Wšě rěče",
+ "tsb-search-requests": "Naprašowanja přepytać",
+ "tsb-accept-button-label": "Akceptować",
+ "tsb-reject-button-label": "Wotpokazać",
+ "tsb-selected-count": "{{PLURAL:$1|$1 wužiwar je so wubrał|$1 wužiwarjej staj so wubrałoj|$1 wužiwarjo su so wubrali|$1 wužiwarjow je so wubrało}}",
+ "tsb-older-requests": "$1 {{PLURAL:$1|starše naprašowanje|staršej naprašowani|starše naprašowanja|staršich naprašowanjow}}",
+ "tsb-accept-all-button-label": "Wšě akceptować",
+ "tsb-reject-all-button-label": "Wšě wotpokazać",
+ "tsb-user-posted-a-comment": "Žadyn přełožowar",
+ "tsb-reminder-link-text": "E-mejlowe dopomnjeće pósłać",
+ "tsb-didnt-make-any-translations": "Tutón wužiwar njeje přełožki přewjedł.",
+ "tsb-translations-source": "Žórło",
+ "tsb-translations-user": "Wužiwarske přełožki",
+ "tsb-translations-current": "Eksistowace přełožki",
+ "tsb-delete-userpage-summary": "Wužiwarska strona hrajkanišćoweho wužiwarja je so zhašała",
+ "translationstash": "Witaj",
+ "translate-translationstash-welcome": "Witaj $1, sy {{GENDER:$1|nowy přełožowar|nowa přełožowarka}}",
+ "translate-translationstash-welcome-note": "Zeznaj so z přełožowanskimi nastrojemi. Přełož někotre zdźělenki a dobudź połne přełožowarske prawa, zo by so na wašich projektach wobdźělił.",
+ "translate-translationstash-initialtranslation": "Twój prěni přełožk",
+ "translate-translationstash-translations": "$1 {{PLURAL:$1|wudospołnjeny přełožk|wudospołnjenej přełožkaj|wudospołnjene přełožki|wudospołnjenych přełožkow}}",
+ "translate-translationstash-skip-button-label": "Druhi spytać",
+ "tsb-limit-reached-title": "Dźakujemy so za twoje přełožki",
+ "tsb-limit-reached-body": "Sy přełožowanski limit za nowych přełožowarjow docpěł. Naš team budźe twoje konto bórze přepruwować a aktualizować. Potom móžeš bjez limitow přełožować.",
+ "tsb-no-requests-from-new-users": "Žane naprašowanja wot nowych wužiwarjow",
+ "tsb-create-user-page": "Zakładna wužiwarska strona wutworjena",
+ "log-name-translatorsandbox": "Přełožowanske hrajkanišćo",
+ "log-description-translatorsandbox": "Protokol akcijow na wužiwarjach přełožowanskeho hrajkanišća",
+ "logentry-translatorsandbox-promoted": "$1 je $3 za {{GENDER:$4|přełožowarja|přełožwarku}} {{GENDER:$2|powyšił|powyšiła}}",
+ "logentry-translatorsandbox-rejected": "$1 je naprašowanje wot \"$3\" na powyšenje za {{GENDER:$2|přełožowarja|přełožowarku}} {{GENDER:$2|wotpokazał|wotpokazała}}",
+ "logentry-newusers-tsbpromoted": "Wužiwarske konto $3 je so přez powyšenje z hrajkanišća {{GENDER:$2|załožiło}}"
+}
diff --git a/MLEB/Translate/i18n/sandbox/ia.json b/MLEB/Translate/i18n/sandbox/ia.json
new file mode 100644
index 00000000..b0c6f245
--- /dev/null
+++ b/MLEB/Translate/i18n/sandbox/ia.json
@@ -0,0 +1,50 @@
+{
+ "@metadata": {
+ "authors": [
+ "McDutchie"
+ ]
+ },
+ "managetranslatorsandbox": "Gerer le cassa a sablo de traduction",
+ "tsb-filter-pending": "Requestas pendente",
+ "tsb-reminder-title-generic": "Completa le introduction pro devenir traductor",
+ "tsb-reminder-content-generic": "Salute $1,\n\nGratias pro haber te inscribite a {{SITENAME}}.\n\nSi tu completa le traductiones de test, le administratores te concedera le accesso complete de traduction in un breve periodo.\n\nVeni e face alcun altere traductiones al adresse:\n$2\n\n$3,\nLe equipa de {{SITENAME}}",
+ "tsb-reminder-sending": "Invio del rememoration...",
+ "tsb-reminder-sent": "{{PLURAL:$1|$1 rememoration inviate $2|$1 rememorationes inviate; le ultime se inviava $2}}",
+ "tsb-reminder-sent-new": "Un rememoration inviate",
+ "tsb-reminder-failed": "Le invio del rememoration ha fallite",
+ "tsb-email-promoted-subject": "Tu es ora traductor in {{SITENAME}}",
+ "tsb-email-promoted-body": "Salute {{GENDER:$1|$1}},\n\nFelicitationes! Io ha verificate le traductiones de test que tu ha facite in {{SITENAME}} e io te ha date le derectos complete de traductor.\n\nVeni a {{SITENAME}} pro continuar a traducer ora, e omne dies:\n$2\n\nBenvenite, e gratias pro tu contributiones!\n\n{{GENDER:$3|$3}},\nLe equipa de {{SITENAME}}",
+ "tsb-email-rejected-subject": "Tu demanda pro devenir traductor in {{SITENAME}} ha essite rejectate",
+ "tsb-email-rejected-body": "Salute {{GENDER:$1|$1}},\n\nGratias pro tu candidatura como traductor in {{SITENAME}}. Io regretta de informar te que io ha rejectate tu demanda, perque le qualitate de tu traductiones non satisfaceva le requisitos.\n\nSi tu pensa que tu demanda ha essite refusate per error, per favor tenta facer un altere demanda de devenir traductor in {{SITENAME}}. Tu pote inscriber te hic:\n$2\n\n{{GENDER:$3|$3}},\nLe equipa de {{SITENAME}}",
+ "tsb-request-count": "$1 {{PLURAL:$1|requesta|requestas}}",
+ "tsb-all-languages-button-label": "Tote le linguas",
+ "tsb-search-requests": "Requestas de recerca",
+ "tsb-accept-button-label": "Acceptar",
+ "tsb-reject-button-label": "Rejectar",
+ "tsb-selected-count": "{{PLURAL:$1|$1 usator seligite|$1 usatores seligite}}",
+ "tsb-older-requests": "$1 altere {{PLURAL:$1|requesta|requestas}}",
+ "tsb-accept-all-button-label": "Acceptar totes",
+ "tsb-reject-all-button-label": "Rejectar totes",
+ "tsb-user-posted-a-comment": "Non es traductor",
+ "tsb-reminder-link-text": "Inviar e-mail de rememoration",
+ "tsb-didnt-make-any-translations": "Iste usator non ha facite alcun traduction.",
+ "tsb-translations-source": "Fonte",
+ "tsb-translations-user": "Traductiones del usator",
+ "tsb-translations-current": "Traductiones existente",
+ "tsb-delete-userpage-summary": "Deletion del pagina de usator de un usator in cassa a sablo",
+ "translationstash": "Benvenite",
+ "translate-translationstash-welcome": "Benvenite {{GENDER:$1|$1}}, tu es un nove traductor",
+ "translate-translationstash-welcome-note": "Familiarisa te con le instrumentos de traduction. Traduce alcun messages e obtene le derectos complete de traduction pro participar a tu projectos favorite.",
+ "translate-translationstash-initialtranslation": "Tu prime traduction",
+ "translate-translationstash-translations": "$1 ha completate {{PLURAL:$1|traduction|traductiones}}",
+ "translate-translationstash-skip-button-label": "Essayar un altere",
+ "tsb-limit-reached-title": "Gratias pro tu traductiones",
+ "tsb-limit-reached-body": "Tu ha attingite le numero limite de traductiones pro le nove traductores. Nostre equipa va verificar e promover tu conto bentosto. Postea tu potera traducer sin limite.",
+ "tsb-no-requests-from-new-users": "Il non ha requestas de nove usatores",
+ "tsb-create-user-page": "Crear un pagina de usator basic",
+ "log-name-translatorsandbox": "Cassa a sablo de traduction",
+ "log-description-translatorsandbox": "Un registro de actiones sur usatores in le cassa a sablo de traduction",
+ "logentry-translatorsandbox-promoted": "$1 {{GENDER:$2|promoveva}} $3 a {{GENDER:$4|traductor}}",
+ "logentry-translatorsandbox-rejected": "$1 {{GENDER:$2|rejectava}} le requesta de \"$3\" de devenir traductor",
+ "logentry-newusers-tsbpromoted": "Le conto de ustor $3 ha essite {{GENDER:$2|create}} per promotion ab le cassa a sablo"
+}
diff --git a/MLEB/Translate/i18n/sandbox/it.json b/MLEB/Translate/i18n/sandbox/it.json
new file mode 100644
index 00000000..963ceb76
--- /dev/null
+++ b/MLEB/Translate/i18n/sandbox/it.json
@@ -0,0 +1,51 @@
+{
+ "@metadata": {
+ "authors": [
+ "Beta16",
+ "Nemo bis"
+ ]
+ },
+ "managetranslatorsandbox": "Gestire la sandbox di traduzione",
+ "tsb-filter-pending": "Richieste in sospeso",
+ "tsb-reminder-title-generic": "Completa l'introduzione per diventare un traduttore",
+ "tsb-reminder-content-generic": "Ciao $1,\n\nGrazie per esserti registrato su {{SITENAME}}.\n\nSe completi i test di traduzione, gli amministratori ti concederanno l'accesso completo da traduttore in un breve periodo.\n\nVieni e fai alcune altre traduzioni su:\n$2\n\n$3,\nLo staff di {{SITENAME}}",
+ "tsb-reminder-sending": "Invio i promemoria...",
+ "tsb-reminder-sent": "{{PLURAL:$1|Inviato $1 promemoria $2|Inviati $1 promemoria, l'ultimo $2}}",
+ "tsb-reminder-sent-new": "Inviato un promemoria",
+ "tsb-reminder-failed": "Invio del promemoria non riuscito",
+ "tsb-email-promoted-subject": "Ora sei un traduttore su {{SITENAME}}",
+ "tsb-email-promoted-body": "Ciao $1,\n\nCongratulazioni! Ho controllato le traduzioni di prova che hai effettuato su {{SITENAME}} e ti ho concesso i diritti completi di {{GENDER:$1|traduttore|traduttrice|traduttore/trice}}.\n\nVieni su {{SITENAME}} per continuare a tradurre ora e ogni giorno:\n$2\n\n{{GENDER:$1|Benvenuto|Benvenuta|Benvenuto/a}} e grazie per i tuoi contributi!\n\n{{GENDER:$3|$3}},\nLo staff di {{SITENAME}}",
+ "tsb-email-rejected-subject": "La tua richiesta di essere un traduttore su {{SITENAME}} è stata rifiutata",
+ "tsb-email-rejected-body": "Ciao {{GENDER:$1|$1}},\n\nGrazie per aver richiesto di diventare un traduttore su {{SITENAME}}. Mi dispiace informarti che ho dovuto rifiutare la tua domanda, perché la qualità delle traduzioni non soddisfaceva i requisiti.\n\nSe pensi che la tua richiesta sia stata respinta per errore, prova a rifare nuovamente domanda di diventare traduttore su {{SITENAME}}. Puoi registrarti qui:\n$2\n\n{{GENDER:$3|$3}},\nlo staff di {{SITENAME}}",
+ "tsb-request-count": "{{PLURAL:$1|Una richiesta|$1 richieste}}",
+ "tsb-all-languages-button-label": "Tutte le lingue",
+ "tsb-search-requests": "Cerca richiesta",
+ "tsb-accept-button-label": "Accetta",
+ "tsb-reject-button-label": "Rifiuta",
+ "tsb-selected-count": "{{PLURAL:$1|$1 utente selezionato|$1 utenti selezionati}}",
+ "tsb-older-requests": "$1 {{PLURAL:$1|richiesta precedente|richieste precedenti}}",
+ "tsb-accept-all-button-label": "Accetta tutto",
+ "tsb-reject-all-button-label": "Rifiuta tutto",
+ "tsb-user-posted-a-comment": "Non un traduttore",
+ "tsb-reminder-link-text": "Invia email di promemoria",
+ "tsb-didnt-make-any-translations": "Questo utente non ha fatto alcuna traduzione.",
+ "tsb-translations-source": "Sorgente",
+ "tsb-translations-user": "Traduzioni {{GENDER:$1|utente}}",
+ "tsb-translations-current": "Traduzioni esistenti",
+ "tsb-delete-userpage-summary": "Cancellata la pagina utente di un'utente in prova",
+ "translationstash": "Benvenuto/a",
+ "translate-translationstash-welcome": "{{GENDER:$1|Benvenuto|Benvenuta|Benvenuto/a}} $1, ora sei {{GENDER:$1|un nuovo traduttore|una nuova traduttrice}}",
+ "translate-translationstash-welcome-note": "Acquisisci familiarità con gli strumenti di traduzione. Traduci alcuni messaggi ed ottieni i diritti completi per partecipare ai tuoi progetti preferiti.",
+ "translate-translationstash-initialtranslation": "La tua traduzione iniziale",
+ "translate-translationstash-translations": "$1 {{PLURAL:$1|traduzione completa|traduzioni complete}}",
+ "translate-translationstash-skip-button-label": "Prova con un altro",
+ "tsb-limit-reached-title": "Grazie per le tue traduzioni",
+ "tsb-limit-reached-body": "Hai raggiunto il limite di traduzioni per i nuovi traduttori.\nIl nostro team verificherà ed aggiornerà presto la tua utenza.\nSuccessivamente sarai in grado di tradurre senza limiti.",
+ "tsb-no-requests-from-new-users": "Nessuna richiesta da nuovi utenti",
+ "tsb-create-user-page": "Creata pagina utente di base",
+ "log-name-translatorsandbox": "Sandbox di traduzione",
+ "log-description-translatorsandbox": "Un registro delle azioni sugli utenti della sandbox di traduzione",
+ "logentry-translatorsandbox-promoted": "$1 {{GENDER:$2|ha promosso}} $3 a {{GENDER:$4|traduttore|traduttrice|traduttore/trice}}",
+ "logentry-translatorsandbox-rejected": "$1 {{GENDER:$2|ha rifiutato}} la richiesta di \"$3\" di diventare traduttore/trice",
+ "logentry-newusers-tsbpromoted": "L'utenza $3 è stata {{GENDER:$2|creata}} per promozione dalla sandbox"
+}
diff --git a/MLEB/Translate/i18n/sandbox/ja.json b/MLEB/Translate/i18n/sandbox/ja.json
new file mode 100644
index 00000000..afbad301
--- /dev/null
+++ b/MLEB/Translate/i18n/sandbox/ja.json
@@ -0,0 +1,46 @@
+{
+ "@metadata": {
+ "authors": [
+ "Shirayuki"
+ ]
+ },
+ "managetranslatorsandbox": "翻訳者サンドボックスの管理",
+ "tsb-filter-pending": "保留中の申請",
+ "tsb-reminder-title-generic": "翻訳者になるには、自己紹介を記入してください",
+ "tsb-reminder-sending": "通知を送信しています...",
+ "tsb-reminder-sent": "{{PLURAL:$1|$2に $1 件の通知を送信しました|$1 件の通知を送信しました。最終送信は $2です}}",
+ "tsb-reminder-sent-new": "通知を送信しました",
+ "tsb-reminder-failed": "通知を送信できませんでした",
+ "tsb-email-promoted-subject": "あなたは{{SITENAME}}の翻訳者になりました",
+ "tsb-email-rejected-subject": "あなたへの{{SITENAME}}での翻訳者権限の付与申請は却下されました",
+ "tsb-request-count": "$1 {{PLURAL:$1|件の申請}}",
+ "tsb-all-languages-button-label": "すべての言語",
+ "tsb-search-requests": "申請の検索",
+ "tsb-accept-button-label": "承認",
+ "tsb-reject-button-label": "却下",
+ "tsb-selected-count": "{{PLURAL:$1|$1 人の利用者を選択しています}}",
+ "tsb-older-requests": "以前の $1 {{PLURAL:$1|件の申請}}",
+ "tsb-accept-all-button-label": "すべて受理",
+ "tsb-reject-all-button-label": "すべて却下",
+ "tsb-user-posted-a-comment": "非翻訳者",
+ "tsb-reminder-link-text": "通知を送信",
+ "tsb-didnt-make-any-translations": "この利用者は何も翻訳していません。",
+ "tsb-translations-source": "原文",
+ "tsb-translations-user": "{{GENDER:$1|利用者}}による翻訳",
+ "tsb-translations-current": "既存の翻訳",
+ "tsb-delete-userpage-summary": "サンドボックス利用者の利用者ページを削除",
+ "translationstash": "ようこそ",
+ "translate-translationstash-welcome": "ようこそ、$1 さん。あなたは翻訳者になりました",
+ "translate-translationstash-initialtranslation": "あなたの最初の翻訳",
+ "translate-translationstash-translations": "{{PLURAL:$1|翻訳}}済 $1 件",
+ "translate-translationstash-skip-button-label": "スキップ",
+ "tsb-limit-reached-title": "翻訳していただいてありがとうございます",
+ "tsb-limit-reached-body": "新規翻訳者の翻訳数の上限に達しました。\n私たちのチームがまもなく、アカウントを検証してアップグレードします。\nその後、上限なしで翻訳できるようになります。",
+ "tsb-no-requests-from-new-users": "新規利用者からの申請はありません",
+ "tsb-create-user-page": "基礎的な利用者ページを作成",
+ "log-name-translatorsandbox": "翻訳サンドボックス",
+ "log-description-translatorsandbox": "翻訳サンドボックス利用者への操作の記録",
+ "logentry-translatorsandbox-promoted": "$1 が $3 を{{GENDER:$4|翻訳者}}に{{GENDER:$2|昇格させました}}",
+ "logentry-translatorsandbox-rejected": "$1 が「$3」の翻訳者権限の付与申請を{{GENDER:$2|却下しました}}",
+ "logentry-newusers-tsbpromoted": "サンドボックスからの昇格に伴い利用者アカウント $3 を{{GENDER:$2|作成}}"
+}
diff --git a/MLEB/Translate/i18n/sandbox/ko.json b/MLEB/Translate/i18n/sandbox/ko.json
new file mode 100644
index 00000000..b0af6f68
--- /dev/null
+++ b/MLEB/Translate/i18n/sandbox/ko.json
@@ -0,0 +1,54 @@
+{
+ "@metadata": {
+ "authors": [
+ "Daisy2002",
+ "Hym411",
+ "아라",
+ "Priviet",
+ "Revi"
+ ]
+ },
+ "managetranslatorsandbox": "번역자 연습장 관리",
+ "tsb-filter-pending": "보류 중인 요청",
+ "tsb-reminder-title-generic": "검증된 번역자가 되려면 소개를 작성하세요",
+ "tsb-reminder-content-generic": "$1 님 안녕하세요.\n\n{{SITENAME}}에 등록해주셔서 감사합니다.\n테스트 번역을 완료하시면, 관리자가 곧 전체 번역 접근 권한을 부여할 것입니다.\n\n$2에 와서 조금 더 번역을 해주세요.\n\n{{SITENAME}} 직원, $3",
+ "tsb-reminder-sending": "알림 보내는 중...",
+ "tsb-reminder-sent": "{{PLURAL:$1|$2에 $1 알림 보냄|$2에 마지막으로 $1 알림 보냄}}",
+ "tsb-reminder-sent-new": "알림을 보냄",
+ "tsb-reminder-failed": "알림 보내기를 실패했습니다",
+ "tsb-email-promoted-subject": "당신은 {{SITENAME}}의 번역가가 됐습니다.",
+ "tsb-email-promoted-body": "안녕하세요. {{GENDER:$1|$1}} 님\n\n축하드립니다! {{SITENAME}}에서 하신 테스트 번역을 확인학 전체 번역 권한을 부여해드렸습니다.\n\n지금 {{SITENAME}}에 오셔서 번역을 계속해주세요:\n$2\n\n오신 것을 환영하며 당신의 기여에 감사드립니다.\n\n{{SITENAME}} 직원, {{GENDER:$3|$3}}",
+ "tsb-email-rejected-subject": "당신의 {{SITENAME}}의 번역자 지원서가 거절됐습니다.",
+ "tsb-email-rejected-body": "안녕하세요. {{GENDER:$1|$1}} 님\n\n{{SITENAME}}의 번역자에 지원해주셔서 감사합니다. 안타깝게도 귀하의 지원서는 귀하의 번역이 필수 조건을 충족하지 않아 채택되지 못하였습니다.\n\n만약 당신의 지원서가 잘못 또는 실수로 채택되지 못하였다고 생각하신다면 {{SITENAME}}의 번역자로서 다시 지원해주시기 바랍니다. 여기에서 등록하실 수 있습니다: $2\n\n{{SITENAME}} 담당자, {{GENDER:$3|$3}}",
+ "tsb-request-count": "{{PLURAL:$1|요청 한 개|요청 $1개}}",
+ "tsb-all-languages-button-label": "모든 언어",
+ "tsb-search-requests": "검색 요청",
+ "tsb-accept-button-label": "승인",
+ "tsb-reject-button-label": "거부",
+ "tsb-selected-count": "{{PLURAL:$1|$1명의 사용자 선택됨}}",
+ "tsb-older-requests": "{{PLURAL:$1|개의 요청}}",
+ "tsb-accept-all-button-label": "모두 승인",
+ "tsb-reject-all-button-label": "모두 거절",
+ "tsb-user-posted-a-comment": "번역자 아님",
+ "tsb-reminder-link-text": "이메일 알림 보내기",
+ "tsb-didnt-make-any-translations": "이 사용자는 번역한 적이 없습니다.",
+ "tsb-translations-source": "출처",
+ "tsb-translations-user": "사용자 번역",
+ "tsb-translations-current": "기존 번역",
+ "tsb-delete-userpage-summary": "연습 사용자의 사용자 문서 삭제",
+ "translationstash": "환영합니다",
+ "translate-translationstash-welcome": "$1님 환영합니다, 당신은 이제 번역자입니다.",
+ "translate-translationstash-welcome-note": "번역 도구에 익숙해지세요. 몇개의 메시지를 번역하고, 당신이 좋아하는 위키에서 번역자 권한을 얻어 위키에 기여하세요.",
+ "translate-translationstash-initialtranslation": "내 초기 번역",
+ "translate-translationstash-translations": "완성한 {{PLURAL:$1|번역}} $1개",
+ "translate-translationstash-skip-button-label": "다른 문서",
+ "tsb-limit-reached-title": "당신의 번역에 감사드립니다.",
+ "tsb-limit-reached-body": "새 번역자를 위한 번역 제한에 도달했습니다. 저희가 당신의 계정을 확인하고 업그레이드한 후에, 제한 없이 번역하실 수 있습니다.",
+ "tsb-no-requests-from-new-users": "새 사용자의 요청 없음",
+ "tsb-create-user-page": "기본 사용자 문서 만들기",
+ "log-name-translatorsandbox": "번역 연습장",
+ "log-description-translatorsandbox": "번역 연습 사용자의 명령 기록",
+ "logentry-translatorsandbox-promoted": "$1 사용자가 $3 사용자를 {{GENDER:$4|번역자}}로 {{GENDER:$2|승격시켰습니다}}",
+ "logentry-translatorsandbox-rejected": "$1 사용자가 $3 사용자의 승격 신청을 {{GENDER:$2|거절했습니다}}",
+ "logentry-newusers-tsbpromoted": "$3 사용자 계정은 연습장에서의 승격에 따라 {{GENDER:$2|만들어졌습니다}}"
+}
diff --git a/MLEB/Translate/i18n/sandbox/ksh.json b/MLEB/Translate/i18n/sandbox/ksh.json
new file mode 100644
index 00000000..4b273b0c
--- /dev/null
+++ b/MLEB/Translate/i18n/sandbox/ksh.json
@@ -0,0 +1,36 @@
+{
+ "@metadata": {
+ "authors": [
+ "Purodha"
+ ]
+ },
+ "managetranslatorsandbox": "Demm en Schpellwiß för de Övversäzer ennreeschde un verwallde.",
+ "tsb-filter-pending": "Aanfroore en der Waadeschlang",
+ "tsb-reminder-title-generic": "Maach Ding Sällefsvörschtällong fäädesch, öm enen beschtääteschten Övversäzzer ze wääde.",
+ "tsb-reminder-content-generic": "Daach $1,\nmer bedangke ons dat De Desch köözlesch {{ucfirst:{{GRAMMAR:em|{{ucfirst:{{SITENAME}}}}}}}} aanjemälldt häs. Wann Do jraad noch e paa Övversäzonge för et Prööve fäädesch määß, künne de Wikki_Kööbeße desch freischallde för et Övversäzze.\n\nBes esu jood un donn Desch op {{GRAMMAR:Dativ|$2}} enlogge un maach e paa Övversäzonge.\n\n$3\nvum Päsonaal {{ucfirst:{{GRAMMAR:gen|{{ucfirst:{{SITENAME}}}}}}}}",
+ "tsb-reminder-sending": "Ben de Äennerong aam schecke&nbsp;&hellip;",
+ "tsb-reminder-sent-new": "Han de Äennerong verscheck.",
+ "tsb-reminder-failed": "Han kein Äennerong verscheck. Et hät nit jeflupp.",
+ "tsb-email-promoted-subject": "Do bes jäds_ene Övversäzer em {{SITENAME}}",
+ "tsb-all-languages-button-label": "Alle Schprohche",
+ "tsb-accept-button-label": "Aanämme",
+ "tsb-reject-button-label": "Aflehne",
+ "tsb-older-requests": "{{PLURAL:$1|Ein|$1|Kein}} älldere Aanfroore",
+ "tsb-accept-all-button-label": "All aanämme",
+ "tsb-reject-all-button-label": "All aflehne",
+ "tsb-user-posted-a-comment": "Keine Övversäzer",
+ "tsb-reminder-link-text": "Schegg_en Äennerong pä <i lang=\"en\" xml:lang=\"en\">e-mail</i>",
+ "tsb-translations-source": "Quall",
+ "tsb-translations-user": "Övversäzonge vum Metmaacher",
+ "translationstash": "Wellkumme",
+ "translate-translationstash-welcome": "Wellkumme $1, Do bess_en{{GENDER:$1|e||e||e}} neuje Övversäzer{{GENDER:$1||ėn||ėn|}}.",
+ "translate-translationstash-initialtranslation": "Ding eezde Övversäzong",
+ "translate-translationstash-translations": "$1 fäädeje {{PLURAL:$1|Övversäzong|Övversäzonge|Övversäzong}}",
+ "translate-translationstash-skip-button-label": "Nemm en andere",
+ "tsb-limit-reached-title": "Dangke för Ding Övversäzonge",
+ "tsb-no-requests-from-new-users": "Kein Aanfroore vun neue Metmaacher",
+ "log-name-translatorsandbox": "Sandkaste för et Övversäze",
+ "log-description-translatorsandbox": "Et Logbooch vun wat de Metmaacher em Sandkaste för et Övversäze jedonn han",
+ "logentry-translatorsandbox-promoted": "{{GENDER:$2|Dä Metmaacher|De Metmaacherėn|Dä Metmaacher|De Metmaacherėn|Dä Metmaacher}} $1 hät {{GENDER:$4|Dä Metmaacher|De Metmaacherėn|Dä Metmaacher|De Metmaacherėn|Dä Metmaacher}} $3 en di Jrop „Övversäzer“ jedonn.",
+ "logentry-translatorsandbox-rejected": "D{{GENDER:$2|ä Metmaacher|e Metmaacherėn|ä Metmaacher|e Metmaacherėn|ä Metmaacher}} $1 hät afjelehnt, dä Metmaacher $3 zom Övversäzer opzeschohfe."
+}
diff --git a/MLEB/Translate/i18n/sandbox/lb.json b/MLEB/Translate/i18n/sandbox/lb.json
new file mode 100644
index 00000000..da5e7e0a
--- /dev/null
+++ b/MLEB/Translate/i18n/sandbox/lb.json
@@ -0,0 +1,44 @@
+{
+ "@metadata": {
+ "authors": [
+ "Robby"
+ ]
+ },
+ "managetranslatorsandbox": "Iwwersetzer-Sandkëscht geréieren",
+ "tsb-filter-pending": "Ufroen am Suspens",
+ "tsb-reminder-title-generic": "Kompletéiert Är Virstellung fir Iwwersetzer ze ginn",
+ "tsb-reminder-sending": "Erënnerung gëtt geschéckt...",
+ "tsb-reminder-sent-new": "Eng Erënnerung schécken",
+ "tsb-reminder-failed": "D'Erënnerung schécken huet net funktionéiert",
+ "tsb-email-promoted-subject": "Dir sidd elo Iwwersetzer op {{SITENAME}}",
+ "tsb-email-rejected-subject": "Är Demande fir en Iwwersetzer op {{SITENAME}} ze gi gouf refuséiert.",
+ "tsb-email-rejected-body": "Bonjour $1,\n\nMerci fir Är Ufro als Iwwersetzer op {{SITENAME}}. Ech bedaueren Iech informéieren ze missen, datt ech Är Demande refuséiert hunn well d'Qualitéit vun Ären Iwwersetzungen net den Ufuerderungen entsprécht.\n\nWann Dir mengt Är Ufro gouf iertemlecherweis refuséiert da stellt w.e.g. Är Ufro als Iwwersetzer op {{SITENAME}} nach eng Kéier. Dir kënnt Iech hei registréieren:\n$2\n\n$3,\n{{GENDER:$3|Mataarbechter|Mataarbechterin|Mataarbechter}} vu(n) {{SITENAME}}",
+ "tsb-request-count": "{{PLURAL:$1|Eng Ufro|$1 Ufroen}}",
+ "tsb-all-languages-button-label": "All Sproochen",
+ "tsb-search-requests": "An Ufroe sichen",
+ "tsb-accept-button-label": "Akzeptéieren",
+ "tsb-reject-button-label": "Refuséieren",
+ "tsb-selected-count": "{{PLURAL:$1|Ee|$1}}Benotzer erausgesicht",
+ "tsb-older-requests": "$1 méi al {{PLURAL:$1|Ufro|Ufroen}}",
+ "tsb-accept-all-button-label": "All akzeptéieren",
+ "tsb-reject-all-button-label": "Alles refuséieren",
+ "tsb-user-posted-a-comment": "Keen Iwwersetzer",
+ "tsb-reminder-link-text": "E-Mail-Erënnerung schécken",
+ "tsb-didnt-make-any-translations": "Dëse Benotzer huet nach keng Iwwersetzunge gemaach.",
+ "tsb-translations-source": "Quell",
+ "tsb-translations-user": "{{GENDER:$1|Benotzer}} Iwwersetzungen",
+ "tsb-translations-current": "Iwwersetzungen déi et gëtt",
+ "tsb-delete-userpage-summary": "Benotzersäit vun engem Sandbox-Benotzer läschen",
+ "translationstash": "Wëllkomm",
+ "translate-translationstash-welcome": "Wëllkomm {{GENDER:$1|$1}}, Dir sidd en neien Iwwersetzer",
+ "translate-translationstash-initialtranslation": "Är éischt Iwwersetzung",
+ "translate-translationstash-translations": "{{PLURAL:$1|eng komplett Iwwersetzung|$1 komplett Iwwersetzungen}}",
+ "translate-translationstash-skip-button-label": "Probéiert eng Aner",
+ "tsb-limit-reached-title": "Merci fir Är Iwwersetzungen",
+ "tsb-limit-reached-body": "Dir hutt d'Iwwersetzungslimit fir nei Iwwersetzer erreecht.\nEis Equipe kuckt Äre Benotzerkont geschwënn no a setzt en erop.\nDa kënnt Dir ouni Limitatiounen iwwersetzen.",
+ "tsb-no-requests-from-new-users": "Keng Ufroe vun neie Benotzer",
+ "tsb-create-user-page": "Eng einfach Benotzersäit uleeën",
+ "log-name-translatorsandbox": "Iwwersetzungs-Sandkëscht",
+ "logentry-translatorsandbox-rejected": "$1 huet d'Ufro vum \"$3\" fir {{GENDER:$2|Iwwersetzesch|Iwwersetzer}} ze gi refuséiert",
+ "logentry-newusers-tsbpromoted": "De Benotzerkont $3 gouf {{GENDER:$2|ugeluecht}} duerch d'Promotioun aus der Sandkëscht"
+}
diff --git a/MLEB/Translate/i18n/sandbox/lrc.json b/MLEB/Translate/i18n/sandbox/lrc.json
new file mode 100644
index 00000000..19ab133d
--- /dev/null
+++ b/MLEB/Translate/i18n/sandbox/lrc.json
@@ -0,0 +1,16 @@
+{
+ "@metadata": {
+ "authors": [
+ "Mogoeilor"
+ ]
+ },
+ "tsb-all-languages-button-label": "همه زونيا",
+ "tsb-accept-button-label": "پذيرشت",
+ "tsb-reject-button-label": "رد كردن",
+ "tsb-accept-all-button-label": "همه نه قوول کو",
+ "tsb-reject-all-button-label": "همه نه رد کو",
+ "tsb-translations-source": "سرچشمه",
+ "translationstash": "خوش اومايت",
+ "translate-translationstash-skip-button-label": "يكی هنی نه امتحان بكيد",
+ "tsb-limit-reached-title": "سی والرستن تو منمونيم"
+}
diff --git a/MLEB/Translate/i18n/sandbox/lv.json b/MLEB/Translate/i18n/sandbox/lv.json
new file mode 100644
index 00000000..4b533052
--- /dev/null
+++ b/MLEB/Translate/i18n/sandbox/lv.json
@@ -0,0 +1,12 @@
+{
+ "@metadata": {
+ "authors": [
+ "Papuass"
+ ]
+ },
+ "tsb-all-languages-button-label": "Visas valodas",
+ "tsb-search-requests": "Meklēt pieprasījumus",
+ "tsb-accept-button-label": "Pieņemt",
+ "tsb-reject-button-label": "Noraidīt",
+ "tsb-reminder-link-text": "Sūtīt e-pasta atgādinājumu"
+}
diff --git a/MLEB/Translate/i18n/sandbox/mk.json b/MLEB/Translate/i18n/sandbox/mk.json
new file mode 100644
index 00000000..26f50582
--- /dev/null
+++ b/MLEB/Translate/i18n/sandbox/mk.json
@@ -0,0 +1,50 @@
+{
+ "@metadata": {
+ "authors": [
+ "Bjankuloski06"
+ ]
+ },
+ "managetranslatorsandbox": "Раководење со преведувачки песочник",
+ "tsb-filter-pending": "Барања во исчекување",
+ "tsb-reminder-title-generic": "Пополнете го вашето претставување за да станете преведувач",
+ "tsb-reminder-content-generic": "Здраво $1,\n\nВи благодариме што се регистриравте на {{SITENAME}}. \n\nАко ги пополните пробните преводи, администраторите набргу ќе ви доделат статус на полн преведувач.\n\n\nПојдете на $2 и направете уште некои преводи.\n\n$3, \nПерсоналот на {{SITENAME}}",
+ "tsb-reminder-sending": "Го испраќам потсетникот...",
+ "tsb-reminder-sent": "{{PLURAL:$1|Испратен еден потсетник $2|Испратени $1 потсетници, од кои последниот $2}}",
+ "tsb-reminder-sent-new": "Испратен потсетник",
+ "tsb-reminder-failed": "Не успеав да испратам потсетник",
+ "tsb-email-promoted-subject": "Сега сте преведувач на {{SITENAME}}",
+ "tsb-email-promoted-body": "Здраво {{GENDER:$1|$1}},\n\nЧеститки! Го проверив пробниот превод што го направивте на {{SITENAME}} и Ви доделив полни преведувачки права.\n\nПојдете на {{SITENAME}} за да продолжите со преведување сега и секој нареден ден:\n$2\n\nДобре дојдовте и Ви благодариме за учеството!\n\n{{GENDER:$3|$3}},\nЧлен на кадарот на {{SITENAME}}",
+ "tsb-email-rejected-subject": "Вашата пријавница за преведувач на {{SITENAME}} е одбиена",
+ "tsb-email-rejected-body": "Здраво {{GENDER:$1|$1}},\n\nВи благодариме што се пријавивте за преведувач на {{SITENAME}}. Нажалост, ќе мораме да Ве известиме дека пријавницата Ви е одбиена бидејќи квалитетот на Вашите преводи не одговара на нашите потреби.\n\nДоколку сметате дека сте одбиени по грешка, поднесете друга на {{SITENAME}}. Тоа можете да го направите тука:\n$2\n\n{{GENDER:$3|$3}},\nКадарот на {{SITENAME}}",
+ "tsb-request-count": "{{PLURAL:$1|Едно барање|$1 барања}}",
+ "tsb-all-languages-button-label": "Сите јазици",
+ "tsb-search-requests": "Пребарајте барања",
+ "tsb-accept-button-label": "Прифати",
+ "tsb-reject-button-label": "Одбиј",
+ "tsb-selected-count": "{{PLURAL:$1|Избран е еден корисник|Избрани се $1 корисници}}",
+ "tsb-older-requests": "{{PLURAL:$1|Едно постаро барање|$1 постари барања}}",
+ "tsb-accept-all-button-label": "Прифати ги сите",
+ "tsb-reject-all-button-label": "Одбиј ги сите",
+ "tsb-user-posted-a-comment": "Не е преведувач",
+ "tsb-reminder-link-text": "Испрати потсетник по е-пошта",
+ "tsb-didnt-make-any-translations": "Корисников нема направено ниеден превод.",
+ "tsb-translations-source": "Извор",
+ "tsb-translations-user": "{{GENDER:$1|Кориснички}} преводи",
+ "tsb-translations-current": "Постоечки преводи",
+ "tsb-delete-userpage-summary": "Бришење на корисничка страница на песочнички корисник",
+ "translationstash": "Добре дојдовте",
+ "translate-translationstash-welcome": "Добре дојдовте {{GENDER:$1|$1}}, вие сте нов преведувач",
+ "translate-translationstash-welcome-note": "Запознајте се со преводните алатки. Преведете некои пораки и стекнете полни преведувачки права за да учествувате во вашите омилени проекти.",
+ "translate-translationstash-initialtranslation": "Вашиот првичен превод",
+ "translate-translationstash-translations": "$1 {{PLURAL:$1|завршен превод|завршени преводи}}",
+ "translate-translationstash-skip-button-label": "Дај друга",
+ "tsb-limit-reached-title": "Ви благодариме за преводите",
+ "tsb-limit-reached-body": "Ја достигнавте границата на преводи од нови преведувачи.\nНаскоро нашата екипа ќе ви ја провери и надгради сметката.\nПотоа ќе можете да преведувате неограничено.",
+ "tsb-no-requests-from-new-users": "Нема барања од нови корисници",
+ "tsb-create-user-page": "Создавање на основна корисничка страница",
+ "log-name-translatorsandbox": "Преводен песочник",
+ "log-description-translatorsandbox": "Дневник на дејства со корисници на преводниот песочник",
+ "logentry-translatorsandbox-promoted": "$1 {{GENDER:$4|го|ја}} {{GENDER:$2|унапреди}} $3 во {{GENDER:$4|преведувач}}",
+ "logentry-translatorsandbox-rejected": "$1 го {{GENDER:$2|одби}} барањето од „$3“ за да стане преведувач",
+ "logentry-newusers-tsbpromoted": "Корисничката сметка $3 е {{GENDER:$2|создадена}} со унапредување од песочник"
+}
diff --git a/MLEB/Translate/i18n/sandbox/mr.json b/MLEB/Translate/i18n/sandbox/mr.json
new file mode 100644
index 00000000..3d73f774
--- /dev/null
+++ b/MLEB/Translate/i18n/sandbox/mr.json
@@ -0,0 +1,9 @@
+{
+ "@metadata": {
+ "authors": [
+ "V.narsikar"
+ ]
+ },
+ "tsb-selected-count": "{{PLURAL:$1|$1 सदस्य निवडला|$1 सदस्य निवडले}}",
+ "tsb-no-requests-from-new-users": "नविन सदस्यांपासून काहीच विनंत्या नाहीत"
+}
diff --git a/MLEB/Translate/i18n/sandbox/ms.json b/MLEB/Translate/i18n/sandbox/ms.json
new file mode 100644
index 00000000..f358a384
--- /dev/null
+++ b/MLEB/Translate/i18n/sandbox/ms.json
@@ -0,0 +1,50 @@
+{
+ "@metadata": {
+ "authors": [
+ "Anakmalaysia"
+ ]
+ },
+ "managetranslatorsandbox": "Uruskan kotak pasir penterjemah",
+ "tsb-filter-pending": "Permohonan yang menunggu",
+ "tsb-reminder-title-generic": "Lengkapkan pengenalan anda untuk menjadi seorang penterjemah",
+ "tsb-reminder-content-generic": "$1,\n\nTerima kasih kerana mendaftar untuk {{SITENAME}}.\n\nSekiranya anda melengkapkan ujian penterjemahan ini, anda akan menerima akses penterjemah sepenuhnya dari pihak penyelia.\n\nSila ke $2 untuk membuat lebih banyak kerja terjemahan.\n\n$3,\nKakitangan {{SITENAME}}",
+ "tsb-reminder-sending": "Peringatan sedang dihantar...",
+ "tsb-reminder-sent": "{{PLURAL:$1|Telah menghantar $1 peringatan pada $2|Telah menghantar $1 peringatan, yang terbaru pada $2}}",
+ "tsb-reminder-sent-new": "Peringatan dihantar",
+ "tsb-reminder-failed": "Peringatan gagal dihantar",
+ "tsb-email-promoted-subject": "Anda kini seorang penterjemah di {{SITENAME}}",
+ "tsb-email-promoted-body": "{{GENDER:$1|$1}},\n\nTahniah! Saya telah memeriksa terjemahan ujian yang telah anda lakukan di {{SITENAME}}, dan ole itu memberi anda hak penterjemah sepenuhnya.\n\nDatanglah ke {{SITENAME}} untuk terus menterjemah sekarang dan setiap hari:\n$2\n\nSelamat datang dan terima kasih atas sumbangan anda!\n\n{{GENDER:$3|$3}},\nKakitangan {{SITENAME}}",
+ "tsb-email-rejected-subject": "Permohonan anda untuk menjadi penterjemah di {{SITENAME}} telah ditolak",
+ "tsb-email-rejected-body": "{{GENDER:$1|$1}},\n\nTerima kasih kerana memohon untuk menjadi penterjemah di {{SITENAME}}. Dengan dukacitanya ingin saya maklumkan bahawa saya telah menolak permohonan anda kerana mutu penterjemahan anda tidak memenuhi syarat.\n\nJika anda berpendapat bahawa penolakan permohonan anda adalah kesilapan, sila cuba untuk memohon semula sebagai penterjemah di {{SITENAME}}. Anda boleh mendaftar di sini:\n$2\n\n{{GENDER:$3|$3}},\nKakitangan {{SITENAME}}",
+ "tsb-request-count": "$1 {{PLURAL:$1|permintaan}}",
+ "tsb-all-languages-button-label": "Semua bahasa",
+ "tsb-search-requests": "Permohonan carian",
+ "tsb-accept-button-label": "Terima",
+ "tsb-reject-button-label": "Tolak",
+ "tsb-selected-count": "$1 pengguna dipilih",
+ "tsb-older-requests": "$1 permintaan lama",
+ "tsb-accept-all-button-label": "Terima semua",
+ "tsb-reject-all-button-label": "Tolak semua",
+ "tsb-user-posted-a-comment": "Bukan penterjemah",
+ "tsb-reminder-link-text": "Kirim e-mel peringatan",
+ "tsb-didnt-make-any-translations": "Pengguna ini tidak pernah melakukan sebarang penterjemahan.",
+ "tsb-translations-source": "Sumber",
+ "tsb-translations-user": "Terjemahan pengguna",
+ "tsb-translations-current": "Terjemahan sedia ada",
+ "tsb-delete-userpage-summary": "Menghapuskan halaman pengguna pengguna kotak pasir",
+ "translationstash": "Selamat datang",
+ "translate-translationstash-welcome": "Selamat datang, {{GENDER:$1|$1}}. Anda seorang penterjemah baru",
+ "translate-translationstash-welcome-note": "Biasakan diri dengan peralatan penterjemahan. Terjemahkan beberapa mesej dan dapatkan hak penterjemahan sepenuhnya untuk menyertai projek-projek kegemaran anda.",
+ "translate-translationstash-initialtranslation": "Terjemahan awal anda",
+ "translate-translationstash-translations": "$1 telah melengkapkan terjemahan",
+ "translate-translationstash-skip-button-label": "Cuba satu lagi",
+ "tsb-limit-reached-title": "Terima kasih kerana menterjemah",
+ "tsb-limit-reached-body": "Anda telah mencapai had penterjemahan untuk penterjemah baru. Pasukan kami akan menentusahkan dan menaik taraf akaun anda tidak lama lagi. Selepas itu, anda akan dapat menterjemah tanpa had.",
+ "tsb-no-requests-from-new-users": "Tiada permohonan dari pengguna baru",
+ "tsb-create-user-page": "Wujudkan halaman pengguna asas",
+ "log-name-translatorsandbox": "Kotak pasir terjemahan",
+ "log-description-translatorsandbox": "Log tindakan tentang pengguna kotak pasir penterjemahan",
+ "logentry-translatorsandbox-promoted": "$1 {{GENDER:$2|menaikkan pangkat}} $3 kepada {{GENDER:$4|penterjemah}}",
+ "logentry-translatorsandbox-rejected": "$1 telah {{GENDER:$2|menolak}} permohonan \"$3\" untuk menjadi penterjemah",
+ "logentry-newusers-tsbpromoted": "Akaun pengguna $3 telah {{GENDER:$2|dibuka}} menerusi kenaikan pangkat dari kotak pasir"
+}
diff --git a/MLEB/Translate/i18n/sandbox/ne.json b/MLEB/Translate/i18n/sandbox/ne.json
new file mode 100644
index 00000000..59424bb2
--- /dev/null
+++ b/MLEB/Translate/i18n/sandbox/ne.json
@@ -0,0 +1,10 @@
+{
+ "@metadata": {
+ "authors": [
+ "सरोज कुमार ढकाल"
+ ]
+ },
+ "tsb-older-requests": "$1 पुराना {{PLURAL:$1|अनुरोध|अनुरोधहरू}}",
+ "tsb-didnt-make-any-translations": "यस प्रयोगकर्ताले कुनै अनुवाद गरेको छैन ।",
+ "log-name-translatorsandbox": "अनुवाद प्रयोगस्थल"
+}
diff --git a/MLEB/Translate/i18n/sandbox/nl.json b/MLEB/Translate/i18n/sandbox/nl.json
new file mode 100644
index 00000000..f9dca95e
--- /dev/null
+++ b/MLEB/Translate/i18n/sandbox/nl.json
@@ -0,0 +1,53 @@
+{
+ "@metadata": {
+ "authors": [
+ "SPQRobin",
+ "Siebrand",
+ "Sjoerddebruin",
+ "Arent"
+ ]
+ },
+ "managetranslatorsandbox": "Vertalersszandbak beheren",
+ "tsb-filter-pending": "Aanvragen in behandeling",
+ "tsb-reminder-title-generic": "Voltooi uw introductie om vertaler te worden",
+ "tsb-reminder-content-generic": "Hallo $1,\n\nBedankt voor het registreren bij {{SITENAME}}.\n\nAls u uw testvertalingen afrondt, kunnen de beheerders u snel volledige vertaaltoegang geven.\n\nMaak alstublieft nog wat meer vertalingen:\n$2\n\n$3,\nMedewerker van {{SITENAME}}",
+ "tsb-reminder-sending": "Herinnering verzenden...",
+ "tsb-reminder-sent": "{{PLURAL:$1|Herinnering $2 verzonden|$1 herinneringen verzonden, de laatste $2}}",
+ "tsb-reminder-sent-new": "Herinnering verzonden",
+ "tsb-reminder-failed": "Herinnering verzenden mislukt",
+ "tsb-email-promoted-subject": "U bent nu vertaler bij {{SITENAME}}",
+ "tsb-email-promoted-body": "Hallo {{GENDER:$1|$1}},\n\nGefeliciteerd! Ik heb de testvertalingen gecontroleerd die u op {{SITENAME}} hebt gemaakt en heb uw permanente vertaalrechten gegeven.\n\nKom nu (en bij voorkeur iedere dag) naar {{SITENAME}} om door te gaan met vertalen:\n$2\n\nWelkom en dank u wel voor uw bijdragen!\n\n{{GENDER:$3|$3}},\nMedewerker van {{SITENAME}}",
+ "tsb-email-rejected-subject": "Uw aanvraag om vertaler te worden bij {{SITENAME}} is afgewezen",
+ "tsb-email-rejected-body": "Hallo {{GENDER:$1|$1}},\n\nDank u voor de aanmelding als vertaler bij {{SITENAME}}. Ik vind het jammer u moeten melden dat ik de aanmelding heb geweigerd aangezien de kwaliteit van uw vertalingen niet aan de eisen voldoet.\n\nAls u van mening bent dat deze afwijzing onjuist is, dan kunt u zich opnieuw als vertaler aanmelden bij {{SITENAME}}. U kunt zich hieronder inschrijven:\n$2\n\n{{GENDER:$3|$3}}, \n{{SITENAME}} staff",
+ "tsb-request-count": "{{PLURAL:$1|Eén verzoek|$1 verzoeken}}",
+ "tsb-all-languages-button-label": "Alle talen",
+ "tsb-search-requests": "Verzoeken zoeken",
+ "tsb-accept-button-label": "Accepteren",
+ "tsb-reject-button-label": "Afwijzen",
+ "tsb-selected-count": "{{PLURAL:$1|Eén gebruiker|$1 gebruikers}} geselecteerd",
+ "tsb-older-requests": "$1 {{PLURAL:$1|ouder verzoek|oudere verzoeken}}",
+ "tsb-accept-all-button-label": "Alles accepteren",
+ "tsb-reject-all-button-label": "Alles afwijzen",
+ "tsb-user-posted-a-comment": "Geen vertaler",
+ "tsb-reminder-link-text": "Herinnering per e-mail verzenden",
+ "tsb-didnt-make-any-translations": "Deze gebruiker heeft nog niets vertaald.",
+ "tsb-translations-source": "Bron",
+ "tsb-translations-user": "Gebruikersvertalingen",
+ "tsb-translations-current": "Bestaande vertalingen",
+ "tsb-delete-userpage-summary": "Gebruikerspagina van een zandbakgebruiker verwijderd",
+ "translationstash": "Welkom",
+ "translate-translationstash-welcome": "Welkom {{GENDER:$1|$1}}, u bent nu vertaler",
+ "translate-translationstash-welcome-note": "Raak vertrouwd met de vertaalhulpmiddelen. Vertaal een aantal willekeurig geselecteerde berichten en krijg volledige vertaalrechten voor uw favoriete projecten.",
+ "translate-translationstash-initialtranslation": "Uw vertaling",
+ "translate-translationstash-translations": "$1 voltooide {{PLURAL:$1|vertaling|vertalingen}}",
+ "translate-translationstash-skip-button-label": "Nog één proberen",
+ "tsb-limit-reached-title": "Bedankt voor uw vertalingen",
+ "tsb-limit-reached-body": "U hebt de limiet voor het aantal vertalingen voor nieuwe vertalers bereikt.\nOns team gaat ze snel controleren en promoveert uw gebruiker snel, zodat u zonder beperkingen kunt gaan vertalen.",
+ "tsb-no-requests-from-new-users": "Geen verzoeken van nieuwe gebruikers",
+ "tsb-create-user-page": "Eenvoudige gebruikerspagina aangemaakt",
+ "log-name-translatorsandbox": "Vertalingenzandbak",
+ "log-description-translatorsandbox": "Een logboek van de handelingen van gebruikers in de vertalingenzandbak.",
+ "logentry-translatorsandbox-promoted": "$1 {{GENDER:$2|heeft}} $3 gepromoveerd tot {{GENDER:$4|vertaler}}",
+ "logentry-translatorsandbox-rejected": "$1 {{GENDER:$2|heeft}} het verzoek van \"$3\" om vertaler te worden geweigerd",
+ "logentry-newusers-tsbpromoted": "Gebruikers $3 is {{GENDER:$2|aangemaakt}} door promotie vanuit de zandbak"
+}
diff --git a/MLEB/Translate/i18n/sandbox/oc.json b/MLEB/Translate/i18n/sandbox/oc.json
new file mode 100644
index 00000000..08b8c6e8
--- /dev/null
+++ b/MLEB/Translate/i18n/sandbox/oc.json
@@ -0,0 +1,11 @@
+{
+ "@metadata": {
+ "authors": [
+ "Cedric31"
+ ]
+ },
+ "managetranslatorsandbox": "Gerir lo nauc de sabla de traduccion",
+ "tsb-filter-pending": "Requèstas en espèra",
+ "tsb-reminder-title-generic": "Completatz vòstra presentacion per venir un traductor",
+ "tsb-reminder-content-generic": "Bonjorn $1,\n\nMercé de vos èsser inscrich sus {{SITENAME}}. Se acabatz vòstras traduccions de tèst, los administrators poiràn lèu vos acordar un plen accès a las traduccions.\n\nVenètz sus $2 e fasètz qualques traduccions mai."
+}
diff --git a/MLEB/Translate/i18n/sandbox/pl.json b/MLEB/Translate/i18n/sandbox/pl.json
new file mode 100644
index 00000000..3203c051
--- /dev/null
+++ b/MLEB/Translate/i18n/sandbox/pl.json
@@ -0,0 +1,33 @@
+{
+ "@metadata": {
+ "authors": [
+ "Chrumps"
+ ]
+ },
+ "managetranslatorsandbox": "Zarządzanie brudnopisem tłumacza",
+ "tsb-filter-pending": "Oczekujące wnioski",
+ "tsb-reminder-sending": "Wysyłanie przypomnienia...",
+ "tsb-reminder-sent-new": "Wyślij przypomnienie",
+ "tsb-reminder-failed": "Wysłanie przypomnienia nie powiodło się",
+ "tsb-email-promoted-subject": "Teraz jesteś tłumaczem w serwisie {{SITENAME}}",
+ "tsb-email-rejected-subject": "Twój wniosek o uzyskanie uprawnień tłumacza witryny {{SITENAME}} została odrzucony",
+ "tsb-request-count": "$1 {{PLURAL:$1|wniosek|wnioski|wniosków}}",
+ "tsb-all-languages-button-label": "Wszystkie języki",
+ "tsb-accept-button-label": "Akceptuj",
+ "tsb-reject-button-label": "Odrzuć",
+ "tsb-accept-all-button-label": "Akceptuje wszystkie",
+ "tsb-reject-all-button-label": "Odrzuć wszystkie",
+ "tsb-didnt-make-any-translations": "Ten użytkownik nie wykonał żadnego tłumaczenia.",
+ "tsb-translations-source": "Źródło",
+ "tsb-translations-user": "Tłumaczenia {{GENDER:$1|użytkownika|użytkowniczki}}",
+ "tsb-translations-current": "Istniejące tłumaczenia",
+ "translationstash": "Powitanie",
+ "translate-translationstash-welcome": "Witaj $1, jesteś {{GENDER:$1|nowym tłumaczem|nową tłumaczką}}",
+ "translate-translationstash-translations": "$1 {{PLURAL:$1|ukończone tłumaczenie|ukończone tłumaczenia|ukończonych tłumaczeń}}",
+ "tsb-limit-reached-title": "Dziękuję za Twoje tłumaczenia",
+ "tsb-create-user-page": "Utwórz prostą stronę użytkownika",
+ "log-name-translatorsandbox": "Brudnopis tłumaczeń",
+ "log-description-translatorsandbox": "To jest rejestr działań użytkowników brudnopisu tłumaczeń",
+ "logentry-translatorsandbox-promoted": "$1 {{GENDER:$2|awansował|awansowała}} $3 na {{GENDER:$4|tłumacza|tłumaczkę}}",
+ "logentry-translatorsandbox-rejected": "$1 {{GENDER:$2|odrzucił|odrzuciła}} wniosek „$3”, aby przyznać uprawnienia tłumacza"
+}
diff --git a/MLEB/Translate/i18n/sandbox/ps.json b/MLEB/Translate/i18n/sandbox/ps.json
new file mode 100644
index 00000000..bb12fd3c
--- /dev/null
+++ b/MLEB/Translate/i18n/sandbox/ps.json
@@ -0,0 +1,23 @@
+{
+ "@metadata": {
+ "authors": [
+ "Ahmed-Najib-Biabani-Ibrahimkhel"
+ ]
+ },
+ "tsb-all-languages-button-label": "ټولې ژبې",
+ "tsb-search-requests": "د پلټنې غوښتنې",
+ "tsb-accept-button-label": "منل",
+ "tsb-reject-button-label": "ردول",
+ "tsb-selected-count": "{{PLURAL:$1|$1 کارن ټاکل شوی|$1 کارنان ټاکل شوي}}",
+ "tsb-older-requests": "$1 {{PLURAL:$1|زړه غوښتنه|زړې غوښتنې}}",
+ "tsb-accept-all-button-label": "ټول منل",
+ "tsb-reject-all-button-label": "ټول ردول",
+ "tsb-user-posted-a-comment": "يو ژباړن نه دی",
+ "tsb-reminder-link-text": "د يادولو برېښليک ورلېږل",
+ "tsb-didnt-make-any-translations": "دغه کارن کومې ژباړې نه دي ترسره کړي.",
+ "tsb-translations-source": "سرچينه",
+ "tsb-translations-user": "کارن ژباړې",
+ "tsb-translations-current": "شته ژباړې",
+ "translationstash": "ښه راغلۍ",
+ "translate-translationstash-welcome": "ښه راغلۍ {{GENDER:$1|$1}}، تاسې يو نوی ژباړن ياست"
+}
diff --git a/MLEB/Translate/i18n/sandbox/pt-br.json b/MLEB/Translate/i18n/sandbox/pt-br.json
new file mode 100644
index 00000000..fe703f2c
--- /dev/null
+++ b/MLEB/Translate/i18n/sandbox/pt-br.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Fabsouza1"
+ ]
+ },
+ "tsb-reminder-title-generic": "Complete a sua apresentação para tornar-se um tradutor"
+}
diff --git a/MLEB/Translate/i18n/sandbox/pt.json b/MLEB/Translate/i18n/sandbox/pt.json
new file mode 100644
index 00000000..b9299131
--- /dev/null
+++ b/MLEB/Translate/i18n/sandbox/pt.json
@@ -0,0 +1,51 @@
+{
+ "@metadata": {
+ "authors": [
+ "Hamilton Abreu",
+ "Vitorvicentevalente"
+ ]
+ },
+ "managetranslatorsandbox": "Administrar a área de teste de tradutores",
+ "tsb-filter-pending": "Pedidos pendentes",
+ "tsb-reminder-title-generic": "Conclua a introdução para se tornar tradutor",
+ "tsb-reminder-content-generic": "Olá $1,\n\nObrigado por se registar na wiki {{SITENAME}}.\n\nSe concluir as traduções de teste, pouco depois os administradores concedem-lhe todos os privilégios de tradução.\n\nVenha à wiki e faça algumas traduções aqui:\n$2\n\n$3,\nA equipa da wiki {{SITENAME}}",
+ "tsb-reminder-sending": "A enviar a lembrança...",
+ "tsb-reminder-sent": "Enviou {{PLURAL:$1|$1 lembrança $2|$1 lembranças, a última $2}}",
+ "tsb-reminder-sent-new": "Enviou uma lembrança",
+ "tsb-reminder-failed": "O envio da lembrança falhou",
+ "tsb-email-promoted-subject": "É agora tradutor(a) na wiki {{SITENAME}}",
+ "tsb-email-promoted-body": "Olá {{GENDER:$1|$1}},\n\nParabéns! Revi as traduções que fez na wiki {{SITENAME}} e concedi-lhe todos os privilégios de tradução.\n\nVenha hoje e todos os dias à wiki {{SITENAME}} para continuar a traduzir:\n$2\n\nBem-vindo(a) e obrigado pelas suas contribuições!\n\n{{GENDER:$3|$3}},\nA equipa da wiki {{SITENAME}}",
+ "tsb-email-rejected-subject": "O seu pedido para tornar-se tradutor na wiki {{SITENAME}} foi rejeitado",
+ "tsb-email-rejected-body": "Olá {{GENDER:$1|$1}},\n\nObrigado por se ter candidatado a tradutor na wiki {{SITENAME}}. Lamento informar que rejeitei o seu pedido, porque a qualidade das traduções não preencheu os requisitos.\n\nSe acredita que a rejeição resulta de um erro de avaliação, tente candidatar-se novamente a tradutor na wiki {{SITENAME}}, por favor. Pode inscrever-se aqui:\n$2\n\n{{GENDER:$3|$3}},\nA equipa da wiki {{SITENAME}}",
+ "tsb-request-count": "$1 {{PLURAL:$1|pedido|pedidos}}",
+ "tsb-all-languages-button-label": "Todas as línguas",
+ "tsb-search-requests": "Pesquisar nos pedidos",
+ "tsb-accept-button-label": "Aceitar",
+ "tsb-reject-button-label": "Rejeitar",
+ "tsb-selected-count": "{{PLURAL:$1|$1 utilizador selecionado|$1 utilizadores selecionados}}",
+ "tsb-older-requests": "$1 {{PLURAL:$1|pedido anterior|pedidos anteriores}}",
+ "tsb-accept-all-button-label": "Aceitar todos",
+ "tsb-reject-all-button-label": "Rejeitar todos",
+ "tsb-user-posted-a-comment": "Não é tradutor",
+ "tsb-reminder-link-text": "Enviar lembrança por correio eletrónico",
+ "tsb-didnt-make-any-translations": "Este utilizador não fez traduções.",
+ "tsb-translations-source": "Fonte",
+ "tsb-translations-user": "Traduções {{GENDER:$1|do utilizador|da utilizadora|do(a) utilizador(a)}}",
+ "tsb-translations-current": "Traduções existentes",
+ "tsb-delete-userpage-summary": "A eliminar a página de utilizador de um utilizador da área de teste de tradutores",
+ "translationstash": "Bem-vindo(a)",
+ "translate-translationstash-welcome": "{{GENDER:$1|Bem-vindo $1, é um novo tradutor|Bem-vinda $1, é uma nova tradutora}}",
+ "translate-translationstash-welcome-note": "Familiarize-se com as ferramentas de tradução. Traduza algumas mensagens o obtenha todos os privilégios de tradutor para participar nos seus projetos preferidos.",
+ "translate-translationstash-initialtranslation": "A sua tradução inicial",
+ "translate-translationstash-translations": "$1 {{PLURAL:$1|tradução concluída|traduções concluídas}}",
+ "translate-translationstash-skip-button-label": "Tentar outra",
+ "tsb-limit-reached-title": "Obrigado pelas suas traduções",
+ "tsb-limit-reached-body": "Atingiu o limite de traduções para novos tradutores.\nA nossa equipa irá verificar e atualizar a sua conta dentro de pouco tempo.\nPoderá então traduzir sem limitações.",
+ "tsb-no-requests-from-new-users": "Não há pedidos de novos utilizadores",
+ "tsb-create-user-page": "Criação de página de utilizador básica",
+ "log-name-translatorsandbox": "Registo da área de teste de tradutores",
+ "log-description-translatorsandbox": "Um registo das operações sobre utilizadores da área de teste de tradutores",
+ "logentry-translatorsandbox-promoted": "$1 {{GENDER:$2|promoveu}} $3 a {{GENDER:$4|tradutor|tradutora}}",
+ "logentry-translatorsandbox-rejected": "$1 {{GENDER:$2|rejeitou}} o pedido de \"$3\" para tornar-se tradutor",
+ "logentry-newusers-tsbpromoted": "A conta $3 foi {{GENDER:$2|criada}} por promoção da área de teste"
+}
diff --git a/MLEB/Translate/i18n/sandbox/qqq.json b/MLEB/Translate/i18n/sandbox/qqq.json
new file mode 100644
index 00000000..8fad8dd8
--- /dev/null
+++ b/MLEB/Translate/i18n/sandbox/qqq.json
@@ -0,0 +1,55 @@
+{
+ "@metadata": {
+ "authors": [
+ "Amire80",
+ "Metalhead64",
+ "Nike",
+ "Raymond",
+ "Shirayuki",
+ "Purodha"
+ ]
+ },
+ "managetranslatorsandbox": "{{doc-special|TranslateSandbox}}",
+ "tsb-filter-pending": "A filter option on [[Special:TranslateSandbox]].\n\nFollowed by a list of the pending requests.",
+ "tsb-reminder-title-generic": "Subject of an email",
+ "tsb-reminder-content-generic": "Body of an email. Parameters:\n* $1 - user name of the recipient\n* $3 - URL to the website",
+ "tsb-reminder-sending": "Shown near {{msg-mw|tsb-reminder-link-text}} while the reminder email is being sent.",
+ "tsb-reminder-sent": "Shown near {{msg-mw|tsb-reminder-link-text}} after the reminder email was successfully sent. Parameters:\n* $1 - the number of reminders that were already sent\n* $2 - the human timestamp of the last time a reminder was sent. It is either a date or one of the ago formats in https://github.com/wikimedia/mediawiki-extensions-cldr/blob/master/CldrNames/CldrNamesEn.php#L1151",
+ "tsb-reminder-sent-new": "Shown near {{msg-mw|tsb-reminder-link-text}} after sending a new reminder.",
+ "tsb-reminder-failed": "Shown near {{msg-mw|tsb-reminder-link-text}} if sending the reminder email failed.",
+ "tsb-email-promoted-subject": "The subject for an email that announces that a user received full translation rights (\"promoted\").",
+ "tsb-email-promoted-body": "The body text for an email that announces that a user received full translation rights (\"promoted\"). Parameters:\n* $1 - the username of the new user who was promoted\n* $2 - the URL to Special:Translate at the website\n* $3 - the username of the administrator who promoted the user",
+ "tsb-email-rejected-subject": "The subject for an email that announces that a user's request to become a translator was rejected.",
+ "tsb-email-rejected-body": "The body text for an email that announces that a user's request to become a translator was rejected. Parameters:\n* $1 - the username of the new user whose request was rejected\n* $2 - the URL to Special:MainPage at the website\n* $3 - the username of the administrator who promoted the user",
+ "tsb-request-count": "Label showing number of requests. Parameters:\n* $1 - number of requests\n{{Identical|Request}}",
+ "tsb-all-languages-button-label": "Button label for filtering the requests by language.\n{{Identical|All languages}}",
+ "tsb-search-requests": "Placeholder text for request search box on top of [[Special:TranslateSandbox]].",
+ "tsb-accept-button-label": "Button label for accept button in [[Special:TranslateSandbox]].\n{{Identical|Accept}}",
+ "tsb-reject-button-label": "Button label for reject button in [[Special:TranslateSandbox]].\n{{Identical|Reject}}",
+ "tsb-selected-count": "Shows how many users are selected for accepting or rejecting. Parameters:\n* $1 - the number of users",
+ "tsb-older-requests": "A link shown at the footer of the requests list. Clicking the link selects all the requests that are older than the oldest currently-selected request.\n\nParameters:\n* $1 - the number of older requests. It can be 0, yet if so, the link is hidden per CSS class.",
+ "tsb-accept-all-button-label": "Button label for accept-all button in [[Special:TranslateSandbox]].\n\nSee also:\n* {{msg-mw|Tsb-reject-all-button-label}}",
+ "tsb-reject-all-button-label": "Button label for reject-all button in [[Special:TranslateSandbox]].\n\nSee also:\n* {{msg-mw|Tsb-accept-all-button-label}}",
+ "tsb-user-posted-a-comment": "A label that appears near some text posted by the user.",
+ "tsb-reminder-link-text": "Link text for sending reminder emails about translator signup requests.\n\nSee also:\n* {{msg-mw|Tsb-reminder-sent-new}}",
+ "tsb-didnt-make-any-translations": "Displayed instead of the translations if the selected user didn't make any translations.",
+ "tsb-translations-source": "Table header label for source messages of user translations in [[Special:TranslateSandbox]].\n{{Identical|Source}}",
+ "tsb-translations-user": "Table header label for user translations in [[Special:TranslateSandbox]].\n\nParameters:\n* $1 - user, can be used for GENDER",
+ "tsb-translations-current": "Table header label for existing translations in [[Special:TranslateSandbox]].",
+ "tsb-delete-userpage-summary": "Edit summary for deleting the user page of a sandboxed user.",
+ "translationstash": "Page title for [[Special:TranslationStash]].\n{{Identical|Welcome}}",
+ "translate-translationstash-welcome": "Title text shown for the [[Special:TranslationStash]]. Parameters:\n* $1 - user name of the new translator",
+ "translate-translationstash-welcome-note": "Title note for the [[Special:TranslationStash]].",
+ "translate-translationstash-initialtranslation": "Header for messages showing the progress of translations in [[Special:TranslationStash]].\n\nSee also:\n* {{msg-mw|Translate-translationstash-translations}}",
+ "translate-translationstash-translations": "Header for messages showing the progress of translations in [[Special:TranslationStash]]. Params:\n\t* $1 - the number of translations user has completed in the stash",
+ "translate-translationstash-skip-button-label": "Label for the skip button in translation editor.\n{{Identical|Try another}}",
+ "tsb-limit-reached-title": "Heading shown below translations when the user has reached the limit for number of translations.",
+ "tsb-limit-reached-body": "Text shown below translations when the user has reached the limit for number of translations.",
+ "tsb-no-requests-from-new-users": "Shown on [[Special:TranslateSandbox]] when there are no requests for approval from new users.",
+ "tsb-create-user-page": "Edit summary for user page creation once approved as translator. Will be in content language.",
+ "log-name-translatorsandbox": "{{doc-logpage}}",
+ "log-description-translatorsandbox": "Log page description",
+ "logentry-translatorsandbox-promoted": "{{logentry}}\n* $4 - The name of the user that was promoted, can be used for GENDER.",
+ "logentry-translatorsandbox-rejected": "{{logentry}}",
+ "logentry-newusers-tsbpromoted": "{{logentry}}"
+}
diff --git a/MLEB/Translate/i18n/sandbox/ro.json b/MLEB/Translate/i18n/sandbox/ro.json
new file mode 100644
index 00000000..d95481d4
--- /dev/null
+++ b/MLEB/Translate/i18n/sandbox/ro.json
@@ -0,0 +1,10 @@
+{
+ "@metadata": {
+ "authors": [
+ "Minisarm"
+ ]
+ },
+ "managetranslatorsandbox": "Administrare cutie cu nisip traducător",
+ "tsb-filter-pending": "Cereri în așteptare",
+ "tsb-reminder-title-generic": "Finalizați-vă introducerea pentru a deveni un translator verificat"
+}
diff --git a/MLEB/Translate/i18n/sandbox/roa-tara.json b/MLEB/Translate/i18n/sandbox/roa-tara.json
new file mode 100644
index 00000000..2f3c1675
--- /dev/null
+++ b/MLEB/Translate/i18n/sandbox/roa-tara.json
@@ -0,0 +1,22 @@
+{
+ "@metadata": {
+ "authors": [
+ "Joetaras"
+ ]
+ },
+ "managetranslatorsandbox": "Gestisce 'a sandbox de traduzione",
+ "tsb-filter-pending": "Richieste appese",
+ "tsb-reminder-title-generic": "Comblete 'a 'ndroduziona toje pe devendà 'nu traduttore",
+ "tsb-reminder-content-generic": "Cià $1,\n\nGrazie ca tè reggistrate sus a {{SITENAME}}.\n\nCe tu comblete 'u test de traduziune, l'amministrature ponne darte le privilegge pe l'accesse 'a traduzione comblete.\n\nPe piacere avìne jndr'à $2 e fà angore quacche otre traduzione.\n\n$3,\n'a squadre de {{SITENAME}}",
+ "tsb-reminder-sending": "Stoche a manne 'nu promemorie...",
+ "tsb-all-languages-button-label": "Tutte le lènghe",
+ "tsb-accept-button-label": "Accette",
+ "tsb-reject-button-label": "Scitte",
+ "tsb-accept-all-button-label": "Accette tutte",
+ "tsb-reject-all-button-label": "Scitte tutte",
+ "tsb-translations-source": "Sorgende",
+ "tsb-translations-user": "Traduziune de l'utende",
+ "tsb-translations-current": "Traduziune esistende",
+ "translationstash": "Bovègne",
+ "translate-translationstash-skip-button-label": "Pruève 'n'otre"
+}
diff --git a/MLEB/Translate/i18n/sandbox/ru.json b/MLEB/Translate/i18n/sandbox/ru.json
new file mode 100644
index 00000000..52271dcc
--- /dev/null
+++ b/MLEB/Translate/i18n/sandbox/ru.json
@@ -0,0 +1,51 @@
+{
+ "@metadata": {
+ "authors": [
+ "Kaganer",
+ "Okras"
+ ]
+ },
+ "managetranslatorsandbox": "Управление песочницей переводчика",
+ "tsb-filter-pending": "Запросы, ожидающие обработки",
+ "tsb-reminder-title-generic": "Завершите свой вводный курс, чтобы стать переводчиком.",
+ "tsb-reminder-content-generic": "Привет, $1!\n\nСпасибо за регистрацию на сайте «{{SITENAME}}».\n\nЕсли вы завершили свои пробные переводы, администраторы могут позднее предоставить вам полный доступ к инструменту перевода.\n\nПожалуйста, перейдите по ссылке $2 и сделайте ещё несколько переводов.\n\n$3,\nСотрудники сайта «{{SITENAME}}»",
+ "tsb-reminder-sending": "Отправка напоминания…",
+ "tsb-reminder-sent": "{{PLURAL:$1|Отправлено $1 напоминание|Отправлены $1 напоминания, последнее —|Отправлены $1 напоминаний, последнее —}} $2",
+ "tsb-reminder-sent-new": "Напоминание отправлено",
+ "tsb-reminder-failed": "Отправка напоминания не удалась",
+ "tsb-email-promoted-subject": "Теперь вы — переводчик сайта «{{SITENAME}}»",
+ "tsb-email-promoted-body": "Привет, {{GENDER:$1|$1}}.\n\nПоздравляем! Мною были проверены тестовые переводы, которые вы сделали на {{SITENAME}}, и теперь вам предоставлены полные права переводчика.\n\nПрийдите на сайт «{{SITENAME}}», чтоб продолжать переводить его сейчас и каждый день:\n$2\n\nДобро пожаловать и спасибо за ваш вклад!\n\n{{GENDER:$3|$3}},\nСотрудник {{SITENAME}}",
+ "tsb-email-rejected-subject": "Ваша заявка на получение прав переводчика сайта {{SITENAME}} была отклонена",
+ "tsb-email-rejected-body": "Привет, {{GENDER:$1|$1}}!\n\nБлагодарим вас за участие в качестве переводчика на сайте {{SITENAME}}. Я вынужден сообщить вам, что мне пришлось отвергнуть вашу заявку, поскольку качество ваших переводов не отвечает нашим требованиям.\n\nЕсли вы считаете, что ваша заявка была отклонена по ошибке, пожалуйста, попробуйте снова подать заявку на участие в качестве переводчика на сайте {{SITENAME}}. Вы можете зарегистрироваться здесь:\n$2\n\n{{GENDER:$3|$3}},\nСотрудник {{SITENAME}}",
+ "tsb-request-count": "{{PLURAL:$1|$1 запрос|$1 запроса|$1 запросов|1=Один запрос}}",
+ "tsb-all-languages-button-label": "Все языки",
+ "tsb-search-requests": "Искать запросы",
+ "tsb-accept-button-label": "Принять",
+ "tsb-reject-button-label": "Отклонить",
+ "tsb-selected-count": "{{PLURAL:$1|$1 участник выбран|$1 участника выбрано|$1 участников выбрано}}",
+ "tsb-older-requests": "$1 более {{PLURAL:$1|старый запрос|старых запроса|старых запросов}}",
+ "tsb-accept-all-button-label": "Принять все",
+ "tsb-reject-all-button-label": "Отклонить все",
+ "tsb-user-posted-a-comment": "Не переводчик",
+ "tsb-reminder-link-text": "Отправить напоминание по электронной почте",
+ "tsb-didnt-make-any-translations": "Этот участник не сделал ни одного перевода.",
+ "tsb-translations-source": "Источник",
+ "tsb-translations-user": "Переводы {{GENDER:$1|пользователя}}",
+ "tsb-translations-current": "Существующие переводы",
+ "tsb-delete-userpage-summary": "Удаление страницы участника, относящейся к участнику из песочницы",
+ "translationstash": "Добро пожаловать",
+ "translate-translationstash-welcome": "Добро пожаловать, {{GENDER:$1|$1}}, теперь вы новый переводчик",
+ "translate-translationstash-welcome-note": "Ознакомьтесь с инструментами перевода. Переведите несколько сообщений и получите полные права переводчика, чтобы принять участие в понравившемся проекте.",
+ "translate-translationstash-initialtranslation": "Ваш первоначальный перевод",
+ "translate-translationstash-translations": "$1 {{PLURAL:$1|завершённый перевод|завершённых перевода|завершённых переводов}}",
+ "translate-translationstash-skip-button-label": "Попробуйте другой",
+ "tsb-limit-reached-title": "Спасибо за ваши переводы",
+ "tsb-limit-reached-body": "Вы достигли предела переводов для новых переводчиков.\nНаша команда проверит и обновит вашу учётную запись в ближайшее время.\nПосле этого вы сможете переводить без ограничений.",
+ "tsb-no-requests-from-new-users": "Нет запросов от новых участников",
+ "tsb-create-user-page": "Создал простую страницу участника",
+ "log-name-translatorsandbox": "Песочница для переводов",
+ "log-description-translatorsandbox": "Журнал действий с участниками песочницы переводов",
+ "logentry-translatorsandbox-promoted": "$1 сделал{{GENDER:$2||а}}$3 {{GENDER:$4|переводчиком}}.",
+ "logentry-translatorsandbox-rejected": "$1 отклонил{{GENDER:$2||а}} запрос от «$3» на получение статуса переводчика.",
+ "logentry-newusers-tsbpromoted": "Учётная запись участника $3 была {{GENDER:$2|создана}} из записи в песочнице"
+}
diff --git a/MLEB/Translate/i18n/sandbox/sco.json b/MLEB/Translate/i18n/sandbox/sco.json
new file mode 100644
index 00000000..4e552d5b
--- /dev/null
+++ b/MLEB/Translate/i18n/sandbox/sco.json
@@ -0,0 +1,48 @@
+{
+ "@metadata": {
+ "authors": [
+ "John Reid"
+ ]
+ },
+ "managetranslatorsandbox": "Manage owerseter saunpit",
+ "tsb-filter-pending": "Awaitin requests",
+ "tsb-reminder-title-generic": "Compleate yer introduction tae become aen owerseter",
+ "tsb-reminder-content-generic": "Hallo $1,\n\nThanks fer registerin wi {{SITENAME}}.\n\nGif ye compleate yer test owersets, the admeenistraters will graunt ye ful owerseter access soon efterwairds.\n\nPlease come ower n dae some mair owersets here:\n$2\n\n$3,\n{{SITENAME}} staff",
+ "tsb-reminder-sending": "Sendin the myndin...",
+ "tsb-reminder-sent": "{{PLURAL:$1|Sent $1 myndin $2|Sent $1 myndins, the laist yin $2}}",
+ "tsb-reminder-sent-new": "Sent ae myndin",
+ "tsb-reminder-failed": "Sendin the myndin failed",
+ "tsb-email-promoted-subject": "Ye'r nou aen owerseter at {{SITENAME}}",
+ "tsb-email-promoted-body": "Hallo {{GENDER:$1|$1}},\n\nWeeldun! Ah'v checkt the test owersetins that ye did at {{SITENAME}} n gae ye ful owerseter richts.\n\nCome til {{SITENAME}} tae continue owersetin nou, n ilka day:\n$2\n\nWeelcome, n thank ye fer ye contreebutions!\n\n{{GENDER:$3|$3}},\n{{SITENAME}} staff",
+ "tsb-email-rejected-subject": "Yer appleecation tae be aen owerseter at {{SITENAME}} wis turned doon",
+ "tsb-email-rejected-body": "Hallo {{GENDER:$1|$1}},\n\nThank ye fer appliein aes aen owerseter at {{SITENAME}}. Ah regret tae inform ye that Ah'v turned yer appleecation doon, cause the qualitie o yer owersets didna meet the needs.\n\nGif ye think that yer appleecation wis turned doon bi mistak, please gie appliein aes aen owerseter anither gae at {{SITENAME}}. Ye can sign up here:\n$2\n\n{{GENDER:$3|$3}},\n{{SITENAME}} staff",
+ "tsb-all-languages-button-label": "Aw leids",
+ "tsb-search-requests": "Rake requests",
+ "tsb-reject-button-label": "Turn doon",
+ "tsb-selected-count": "{{PLURAL:$1|$1 uiser selectit|$1 uisers selectit}}",
+ "tsb-older-requests": "$1 aulder {{PLURAL:$1|request|requests}}",
+ "tsb-accept-all-button-label": "Accept aw",
+ "tsb-reject-all-button-label": "Turn aw doon",
+ "tsb-user-posted-a-comment": "Na aen owerseter",
+ "tsb-reminder-link-text": "Send wab-mail myndin",
+ "tsb-didnt-make-any-translations": "This uiser didna dae onie owersets.",
+ "tsb-translations-source": "Soorce",
+ "tsb-translations-user": "{{GENDER:$1|Uiser}} owersets",
+ "tsb-translations-current": "Exeestin owersets",
+ "tsb-delete-userpage-summary": "Delytin the uiser page o ae saunpit uiser",
+ "translationstash": "Weelcome",
+ "translate-translationstash-welcome": "Weelcome {{GENDER:$1|$1}}, ye'r ae new owerseter",
+ "translate-translationstash-welcome-note": "Become familiair wi the owersetin tuils. Owerset some messages n get ful-owerseter richts tae pairteecipate in yer favorite waurks.",
+ "translate-translationstash-initialtranslation": "Yer ineetial owersetin",
+ "translate-translationstash-translations": "$1 compleated {{PLURAL:$1|owerset|owersets}}",
+ "translate-translationstash-skip-button-label": "Gie anither ae gae",
+ "tsb-limit-reached-title": "Thanks fer yer owersets",
+ "tsb-limit-reached-body": "Ye'v reached the owersetin leemit fer new owerseters.\nOor team will verefie n upgrade yer accoont suin.\nThan ye'll be able tae owerset wioot leemits.",
+ "tsb-no-requests-from-new-users": "Naw requests fae new uisers",
+ "tsb-create-user-page": "Cræft basic uiser page",
+ "log-name-translatorsandbox": "Owersetin saunpit",
+ "log-description-translatorsandbox": "Ae log o actions oan owersetin saunpit uisers",
+ "logentry-translatorsandbox-promoted": "$1 {{GENDER:$2|promoted}} $3 til {{GENDER:$4|owerseter}}",
+ "logentry-translatorsandbox-rejected": "$1 {{GENDER:$2|turned doon}} the request fae \"$3\" tae become aen owerseter",
+ "logentry-newusers-tsbpromoted": "Uiser accoont $3 wis {{GENDER:$2|cræftit}} b promotion fae saunpit"
+}
diff --git a/MLEB/Translate/i18n/sandbox/sr-ec.json b/MLEB/Translate/i18n/sandbox/sr-ec.json
new file mode 100644
index 00000000..1949c3a2
--- /dev/null
+++ b/MLEB/Translate/i18n/sandbox/sr-ec.json
@@ -0,0 +1,9 @@
+{
+ "@metadata": {
+ "authors": [
+ "Milicevic01"
+ ]
+ },
+ "tsb-accept-all-button-label": "Прихвати све",
+ "tsb-reject-all-button-label": "Одбији све"
+}
diff --git a/MLEB/Translate/i18n/sandbox/sv.json b/MLEB/Translate/i18n/sandbox/sv.json
new file mode 100644
index 00000000..c2baca28
--- /dev/null
+++ b/MLEB/Translate/i18n/sandbox/sv.json
@@ -0,0 +1,52 @@
+{
+ "@metadata": {
+ "authors": [
+ "Jopparn",
+ "WikiPhoenix",
+ "Lokal Profil"
+ ]
+ },
+ "managetranslatorsandbox": "Hantera översättarsandlåda",
+ "tsb-filter-pending": "Väntande förfrågningar",
+ "tsb-reminder-title-generic": "Slutför din introduktion för att bli en översättare",
+ "tsb-reminder-content-generic": "Hej $1,\n\nTack för din registrering på {{SITENAME}}.\n\nOm du slutför dina testöversättningar kan administratörerna snart ge dig full behörighet till att översätta.\n\nVar god kom och gör några fler översättningar här:\n$2\n\n$3\npersonalen på {{SITENAME}}",
+ "tsb-reminder-sending": "Skickar påminnelsen...",
+ "tsb-reminder-sent": "{{PLURAL:$1|Skickade $1 påminnelse $2|Skickade $1 påminnelser, den senaste $2}}",
+ "tsb-reminder-sent-new": "Skickade en påminnelse",
+ "tsb-reminder-failed": "Det gick inte att skicka påminnelsen",
+ "tsb-email-promoted-subject": "Du är nu en översättare på {{SITENAME}}",
+ "tsb-email-promoted-body": "Hej {{GENDER:$1|$1}},\n\nGratulerar! Jag kollade testöversättningarna du gjorde på {{SITENAME}} och gav dig fullständiga översättningsrättigheter.\n\nKom till {{SITENAME}} för att fortsätta översätta när som helst:\n$2\n\nVälkommen och tack för dina bidrag!\n\n{{GENDER:$3|$3}},\nPersonal på {{SITENAME}}",
+ "tsb-email-rejected-subject": "Din ansökan om att bli en översättare på {{SITENAME}} avslogs",
+ "tsb-email-rejected-body": "Hej {{GENDER:$1|$1}},\n\nTack för att du ansöker om att bli översättare på {{SITENAME}}. Jag måste tyvärr meddela att jag har avslagit din ansökan, eftersom kvaliteten på dina översättningar inte uppfyllde kraven.\n\nOm du tror att din ansökan avslogs av misstag, var god försök att ansöka igen som en översättare på {{SITENAME}}. Du kan registrera dig här:\n$2\n\n{{GENDER:$3|$3}},\n{{SITENAME}} personal",
+ "tsb-request-count": "{{PLURAL:$1|En begäran|$1 begäran}}",
+ "tsb-all-languages-button-label": "Alla språk",
+ "tsb-search-requests": "Sökbegäran",
+ "tsb-accept-button-label": "Acceptera",
+ "tsb-reject-button-label": "Acceptera inte",
+ "tsb-selected-count": "{{PLURAL:$1|En användare vald|$1 användare valda}}",
+ "tsb-older-requests": "$1 äldre {{PLURAL:$1|begäran}}",
+ "tsb-accept-all-button-label": "Acceptera alla",
+ "tsb-reject-all-button-label": "Avvisa alla",
+ "tsb-user-posted-a-comment": "Inte en översättare",
+ "tsb-reminder-link-text": "Skicka e-postpåminnelse",
+ "tsb-didnt-make-any-translations": "Denna användare gjorde inga översättningar.",
+ "tsb-translations-source": "Källa",
+ "tsb-translations-user": "{{GENDER:$1|Användar}}översättningar",
+ "tsb-translations-current": "Befintliga översättningar",
+ "tsb-delete-userpage-summary": "Tar bort användarsidan för en sandlådeanvändare",
+ "translationstash": "Välkommen",
+ "translate-translationstash-welcome": "Välkommen {{GENDER:$1|$1}}, du är en ny översättare",
+ "translate-translationstash-welcome-note": "Bekanta dig med översättningsverktygen. Översätt några meddelanden och få fullständiga översättningsrättigheter för att delta i dina favoritprojekt.",
+ "translate-translationstash-initialtranslation": "Din ursprungliga översättning",
+ "translate-translationstash-translations": "$1 {{PLURAL:$1|fullbordad översättning|fullbordade översättningar}}",
+ "translate-translationstash-skip-button-label": "Prova en annan",
+ "tsb-limit-reached-title": "Tack för dina översättningar",
+ "tsb-limit-reached-body": "Du har nått översättningsgränsen för nya översättare.\nVårt team kommer snart verifiera och uppgradera ditt konto.\nSedan kommer du kunna översätta utan begränsningar.",
+ "tsb-no-requests-from-new-users": "Inga förfrågningar från nya användare",
+ "tsb-create-user-page": "Skapa grundläggande användarsida",
+ "log-name-translatorsandbox": "Översättningssandlåda",
+ "log-description-translatorsandbox": "En logg över åtgärder på översättningssandlådeanvändare",
+ "logentry-translatorsandbox-promoted": "$1 {{GENDER:$2|befordrades}} $3 till {{GENDER:$4|översättare}}",
+ "logentry-translatorsandbox-rejected": "$1 {{GENDER:$2|avvisade}} begäran från \"$3\" att bli en översättare",
+ "logentry-newusers-tsbpromoted": "Användarkontot $3 {{GENDER:$2|skapades}} genom befordran från sandlådan"
+}
diff --git a/MLEB/Translate/i18n/sandbox/te.json b/MLEB/Translate/i18n/sandbox/te.json
new file mode 100644
index 00000000..df16e4db
--- /dev/null
+++ b/MLEB/Translate/i18n/sandbox/te.json
@@ -0,0 +1,9 @@
+{
+ "@metadata": {
+ "authors": [
+ "Veeven"
+ ]
+ },
+ "tsb-filter-pending": "వేచివున్న అభ్యర్థనలు",
+ "tsb-reminder-title-generic": "తనిఖీ అయిన అనువాదకుడిగా మారడానికి మీ పరిచయాన్ని పూర్తిచేయండి"
+}
diff --git a/MLEB/Translate/i18n/sandbox/tyv.json b/MLEB/Translate/i18n/sandbox/tyv.json
new file mode 100644
index 00000000..c79802fb
--- /dev/null
+++ b/MLEB/Translate/i18n/sandbox/tyv.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Agilight"
+ ]
+ },
+ "translationstash": "Кирип моорлаңар"
+}
diff --git a/MLEB/Translate/i18n/sandbox/uk.json b/MLEB/Translate/i18n/sandbox/uk.json
new file mode 100644
index 00000000..5141fef3
--- /dev/null
+++ b/MLEB/Translate/i18n/sandbox/uk.json
@@ -0,0 +1,52 @@
+{
+ "@metadata": {
+ "authors": [
+ "Andriykopanytsia",
+ "Base",
+ "Ата"
+ ]
+ },
+ "managetranslatorsandbox": "Керування грамайданчиком перекладачів",
+ "tsb-filter-pending": "Запити в очікуванні",
+ "tsb-reminder-title-generic": "Завершіть своє представлення, щоб стати перекладачем",
+ "tsb-reminder-content-generic": "Привіт, $1!\n\nДякуємо за реєстрацію у проекті {{SITENAME}}. Якщо Ви завершите свої тестові\nпереклади, адміністратори зможуть скоро надати Вам повні права на переклад.\n\nБудь ласка, перейдіть і зробіть ще декілька перекладів тут:\n$2\n\n$3,\nкоманда {{SITENAME}}",
+ "tsb-reminder-sending": "Надсилання нагадування…",
+ "tsb-reminder-sent": "{{PLURAL:$1|Надіслано $1 нагадування $2|Надіслано $1 нагадування, останнє - $2|Надіслано $1 нагадувань, останнє - $2}}",
+ "tsb-reminder-sent-new": "Надіслано нагадування",
+ "tsb-reminder-failed": "Не вдалося надіслати нагадування",
+ "tsb-email-promoted-subject": "Тепер ви - перекладач на {{SITENAME}}",
+ "tsb-email-promoted-body": "Привіт {{GENDER:$1|$1}},\n\nВітаємо! Я перевірив тестові переклади, виконані вами на {{SITENAME}}, і надав вам повні права перекладача.\n\nЗаходьте на {{SITENAME}}, щоб продовжувати переклад нині і щодня:\n$2\n\nВітаємо вас у команді перекладачів і дякуємо вам за ваш внесок!\n\n{{GENDER:$3|$3}},\n{{SITENAME}} staff",
+ "tsb-email-rejected-subject": "Вашу заявку на перекладача на {{ім'я сайту}} відхилено",
+ "tsb-email-rejected-body": "Привіт {{GENDER:$1|$1}},\n\nДякуємо вам за намагання стати перекладачем на translator at {{SITENAME}}. На жаль, я з жалем повідомляю вас, що відхиляю вашу заявку, бо якість ваших перекладів не відповідає вимогам.\n\nЯкщо ви вважаєте, що ваша заявка відхилена помилково, то можете спробувати знову подати заявку на перекладача на please try to apply again as a translator at {{SITENAME}}. Ви можете зареєструватися тут:\n$2\n\n{{GENDER:$3|$3}},\nКоманда {{SITENAME}}",
+ "tsb-request-count": "{{PLURAL:$1|Один запит|$1 запити|$1 запитів}}",
+ "tsb-all-languages-button-label": "Усі мови",
+ "tsb-search-requests": "Пошукові запити",
+ "tsb-accept-button-label": "Прийняти",
+ "tsb-reject-button-label": "Відмовитися",
+ "tsb-selected-count": "{{PLURAL:$1|$1 користувач вибраний|$1 користувачі вибрані|$1 користувачів вибрано}}",
+ "tsb-older-requests": "$1 {{PLURAL:$1|старший запит|старші запити|старших запитів}}",
+ "tsb-accept-all-button-label": "Прийняти всі",
+ "tsb-reject-all-button-label": "Відхилити всі",
+ "tsb-user-posted-a-comment": "Не перекладач",
+ "tsb-reminder-link-text": "Надсилати нагадування по електронній пошті",
+ "tsb-didnt-make-any-translations": "Цей користувач не здійснив жодного перекладу.",
+ "tsb-translations-source": "Джерело",
+ "tsb-translations-user": "Користувацькі переклади",
+ "tsb-translations-current": "Існуючі переклади",
+ "tsb-delete-userpage-summary": "Видалення сторінки користувача з користувача пісочниці",
+ "translationstash": "Ласкаво просимо",
+ "translate-translationstash-welcome": "Вітаємо {{GENDER:$1|$1}}, ви - {{GENDER:$1|новий перекладач|нова перекладачка}}",
+ "translate-translationstash-welcome-note": "Ознайомитися з інструментами перекладу. Перекладіть деякі повідомлення і отримайте повні права перекладача для участі у ваших улюблених проектах.",
+ "translate-translationstash-initialtranslation": "Ваш початковий переклад",
+ "translate-translationstash-translations": "Завершено $1 {{PLURAL:$1| переклад|переклади|перекладів|перекладу}}",
+ "translate-translationstash-skip-button-label": "Спробуйте інший",
+ "tsb-limit-reached-title": "Спасибі за ваші переклади",
+ "tsb-limit-reached-body": "Вами досягнута межа перекладу для нових перекладачів.\nНаша команда невдовзі перевірить і оновить ваш обліковий запис.\nПотім зможете перекладати без обмежень.",
+ "tsb-no-requests-from-new-users": "Немає запитів від нових користувачів",
+ "tsb-create-user-page": "Створити основну сторінку користувача",
+ "log-name-translatorsandbox": "Пісочниця перекладу",
+ "log-description-translatorsandbox": "Журнал дій користувачів у пісочниці перекладу",
+ "logentry-translatorsandbox-promoted": "$1 {{GENDER:$2|підвищив|підвищила}} $3 до {{GENDER:$4|перекладача|перекладачки}}",
+ "logentry-translatorsandbox-rejected": "$1 {{GENDER:$2|відхилив|відхилила}} запит від \"$3\" стати перекладачем",
+ "logentry-newusers-tsbpromoted": "Обліковий запис користувача $3 був {{GENDER:$2| створений}} шляхом заохочення з пісочниці"
+}
diff --git a/MLEB/Translate/i18n/sandbox/vi.json b/MLEB/Translate/i18n/sandbox/vi.json
new file mode 100644
index 00000000..ffc4ec72
--- /dev/null
+++ b/MLEB/Translate/i18n/sandbox/vi.json
@@ -0,0 +1,50 @@
+{
+ "@metadata": {
+ "authors": [
+ "Minh Nguyen"
+ ]
+ },
+ "managetranslatorsandbox": "Quản lý chỗ thử biên dịch",
+ "tsb-filter-pending": "Yêu cầu đang chờ",
+ "tsb-reminder-title-generic": "Hoàn thành lời giới thiệu của bạn để trở thành một biên dịch viên",
+ "tsb-reminder-content-generic": "Xin chào $1,\n\nCảm ơn bạn đã tham gia {{SITENAME}}.\n\nSau khi bạn dịch các bản dịch kiểm tra, các bảo quản viên sẽ sớm cấp quyền biên dịch đầy đủ cho bạn.\n\nXin vui lòng ghé vào biên dịch thêm thông điệp:\n\n$2\n\n$3,\nBan quản lý {{SITENAME}}",
+ "tsb-reminder-sending": "Đang gửi lời nhắc nhở…",
+ "tsb-reminder-sent": "Đã gửi $1 lời nhắc nhở{{PLURAL:$1||, lần cuối cùng}} vào $2",
+ "tsb-reminder-sent-new": "Đã gửi lời nhắc nhở",
+ "tsb-reminder-failed": "Thất bại khi gửi lời nhắc nhở",
+ "tsb-email-promoted-subject": "Bạn mới trở thành biên dịch viên tại {{SITENAME}}",
+ "tsb-email-promoted-body": "Xin chào {{GENDER:$1|$1}},\n\nChào mừng bạn đã trở thành biên dịch viên tại {{SITENAME}}! Tôi đã kiểm tra các bản dịch thử nghiệm của bạn và cấp quyền biên dịch cho bạn.\n\nHãy ghé vào {{SITENAME}} mỗi ngày để tiếp tục biên dịch:\n$2\n\nCảm ơn bạn vì những đóng góp của bạn!\n\n{{GENDER:$3}}$3,\nNhóm {{SITENAME}}",
+ "tsb-email-rejected-subject": "Đơn xin trở thành biên dịch viên tại {{SITENAME}} đã bị từ chối",
+ "tsb-email-rejected-body": "Xin chào {{GENDER:$1|$1}},\n\nCảm ơn bạn đã nộp đơn xin trở thành biên dịch viên tại {{SITENAME}}. Tôi rất tiếc phải thông báo cho bạn rằng tôi đã từ chối đơn xin của bạn vì các bản dịch của bạn không đáp ứng tiêu chuẩn chất lượng.\n\nNếu bạn nghĩ rằng bạn đã bị từ chối do nhầm lẫn, xin hãy lần nữa xin trở thành biên dịch viên tại {{SITENAME}}. Chỉ việc đi vào đây:\n$2\n\n{{GENDER:$3}}$3,\nNhóm {{SITENAME}}",
+ "tsb-request-count": "{{PLURAL:$1|Một yêu cầu|$1 yêu cầu}}",
+ "tsb-all-languages-button-label": "Tất cả các ngôn ngữ",
+ "tsb-search-requests": "Yêu cầu tìm kiếm",
+ "tsb-accept-button-label": "Chấp nhận",
+ "tsb-reject-button-label": "Từ chối",
+ "tsb-selected-count": "$1 người dùng được chọn",
+ "tsb-older-requests": "$1 yêu cầu cũ hơn",
+ "tsb-accept-all-button-label": "Chấp nhận tất cả",
+ "tsb-reject-all-button-label": "Từ chối tất cả",
+ "tsb-user-posted-a-comment": "Không phải biên dịch viên",
+ "tsb-reminder-link-text": "Nhắc nhở qua thư điện tử",
+ "tsb-didnt-make-any-translations": "Người dùng này chưa dịch thông điệp nào.",
+ "tsb-translations-source": "Nguồn",
+ "tsb-translations-user": "Bản dịch của {{GENDER:$1}}người dùng",
+ "tsb-translations-current": "Bản dịch hiện có",
+ "tsb-delete-userpage-summary": "Đã xóa trang cá nhân của người dùng chỗ thử biên dịch",
+ "translationstash": "Hoan nghênh",
+ "translate-translationstash-welcome": "Chào mừng {{GENDER:$1|$1}} đã trở thành biên dịch viên mới",
+ "translate-translationstash-welcome-note": "Hãy quen thuộc với các công cụ biên dịch. Hãy dịch một số thông điệp và giành được quyền biên dịch viên đầy đủ để tham gia các dự án ưa thích của bạn.",
+ "translate-translationstash-initialtranslation": "Bản dịch đầu tiên của bạn",
+ "translate-translationstash-translations": "$1 bản dịch hoàn thành",
+ "translate-translationstash-skip-button-label": "Thử cái khác",
+ "tsb-limit-reached-title": "Cảm ơn bạn đã đóng góp các bản dịch",
+ "tsb-limit-reached-body": "Bạn đã đạt đến giới hạn bản dịch cho biên dịch viên mới.\nChúng tôi sẽ kiểm tra và nâng cấp tài khoản của bạn không lâu.\nSau đó bạn sẽ có thể biên dịch thoải mái không có giới hạn.",
+ "tsb-no-requests-from-new-users": "Không có yêu cầu từ người dùng mới",
+ "tsb-create-user-page": "Đã tạo trang cá nhân cơ bản",
+ "log-name-translatorsandbox": "Chỗ thử biên dịch",
+ "log-description-translatorsandbox": "Các tác vụ có liên quan đến người dùng chỗ thử biên dịch",
+ "logentry-translatorsandbox-promoted": "$1 {{GENDER:$2}}đã phong cấp $3 trở thành {{GENDER:$4}}biên dịch viên",
+ "logentry-translatorsandbox-rejected": "$1 {{GENDER:$2}}đã từ chối lời yêu cầu của “$3” để trở thành biên dịch viên",
+ "logentry-newusers-tsbpromoted": "Tài khoản người dùng $3 đã được {{GENDER:$2}}tạo ra cho người dùng chỗ thử biên dịch"
+}
diff --git a/MLEB/Translate/i18n/sandbox/yi.json b/MLEB/Translate/i18n/sandbox/yi.json
new file mode 100644
index 00000000..d6583240
--- /dev/null
+++ b/MLEB/Translate/i18n/sandbox/yi.json
@@ -0,0 +1,16 @@
+{
+ "@metadata": {
+ "authors": [
+ "פוילישער"
+ ]
+ },
+ "tsb-all-languages-button-label": "אלע שפראַכן",
+ "tsb-search-requests": "זוך בקשות",
+ "tsb-accept-button-label": "אננעמען",
+ "tsb-reject-button-label": "אפווארפֿן",
+ "tsb-user-posted-a-comment": "נישט קיין איבערזעצער",
+ "tsb-translations-source": "מקור",
+ "tsb-translations-user": "{{GENDER:$1|באַניצער איבערזעצונגען}}",
+ "translationstash": "ברוך הבא!",
+ "translate-translationstash-welcome": "ברוך הבא $1, איר זענט א {{GENDER:$1|נײַער איבערזעצער|א נײַע איבערזעצערין}}"
+}
diff --git a/MLEB/Translate/i18n/sandbox/zh-hans.json b/MLEB/Translate/i18n/sandbox/zh-hans.json
new file mode 100644
index 00000000..d39f08f9
--- /dev/null
+++ b/MLEB/Translate/i18n/sandbox/zh-hans.json
@@ -0,0 +1,55 @@
+{
+ "@metadata": {
+ "authors": [
+ "Hzy980512",
+ "Liuxinyu970226",
+ "Qiyue2001",
+ "Shizhao",
+ "Xiaomingyan",
+ "Yfdyh000"
+ ]
+ },
+ "managetranslatorsandbox": "管理译者沙盒",
+ "tsb-filter-pending": "等待的请求",
+ "tsb-reminder-title-generic": "填写你的自我介绍,成为一名译者",
+ "tsb-reminder-content-generic": "你好 $1,\n\n感谢你注册{{SITENAME}}。\n\n如果您完成你的测试翻译,我们的管理员将尽快授予您完整的翻译访问权。\n\n来这里做些翻译吧:\n$2\n\n$3,\n{{SITENAME}}员工",
+ "tsb-reminder-sending": "正在发送提醒...",
+ "tsb-reminder-sent": "{{PLURAL:$1|向$1发送$2份提醒}}",
+ "tsb-reminder-sent-new": "发送提醒",
+ "tsb-reminder-failed": "发送提醒失败",
+ "tsb-email-promoted-subject": "你现在是一名{{SITENAME}}的译者了",
+ "tsb-email-promoted-body": "嗨,{{GENDER:$1|$1}}:\n\n祝贺你!我检查了你在{{SITENAME}}的试验翻译,决定授予你完整的译者权限。\n\n现在以及今后的每一天都来{{SITENAME}}继续翻译吧:\n$2\n\n我们欢迎你加入译者队伍,感谢你的贡献!\n\n{{GENDER:$3|$3}},\n{{SITENAME}}工作人员",
+ "tsb-email-rejected-subject": "您在{{SITENAME}}的译者请求被拒绝",
+ "tsb-email-rejected-body": "嗨,{{GENDER:$1|$1}}:\n\n感谢你在{{SITENAME}}申请成为译者。但我不得不遗憾地通知你,我拒绝了你的申请,因为你的的译文质量不符合要求。\n\n如果你认为你的申请是被错误地拒绝了,请尝试在{{SITENAME}}重新申请成为译者。你可以在这里登记:\n$2\n\n{{GENDER:$3|$3}},\n{{SITENAME}}工作人员",
+ "tsb-request-count": "$1条{{PLURAL:$1|申请}}",
+ "tsb-all-languages-button-label": "所有语言",
+ "tsb-search-requests": "搜索申请",
+ "tsb-accept-button-label": "接受",
+ "tsb-reject-button-label": "拒绝",
+ "tsb-selected-count": "{{PLURAL:$1|$1位已选定用户}}",
+ "tsb-older-requests": "$1个旧有申请",
+ "tsb-accept-all-button-label": "接受所有",
+ "tsb-reject-all-button-label": "拒绝所有",
+ "tsb-user-posted-a-comment": "不是一位译者",
+ "tsb-reminder-link-text": "发送电子邮件提醒",
+ "tsb-didnt-make-any-translations": "这位用户尚未作出任何翻译。",
+ "tsb-translations-source": "来源",
+ "tsb-translations-user": "{{GENDER:$1|用户}}翻译",
+ "tsb-translations-current": "现有翻译",
+ "tsb-delete-userpage-summary": "删除沙盒用户的用户页面",
+ "translationstash": "欢迎",
+ "translate-translationstash-welcome": "欢迎您{{GENDER:$1|$1}},您已成为新的译者",
+ "translate-translationstash-welcome-note": "逐渐熟悉翻译工具。翻译一些信息,获得完整的译者权限去参与你喜欢的项目。",
+ "translate-translationstash-initialtranslation": "你的初始翻译",
+ "translate-translationstash-translations": "$1完成了翻译",
+ "translate-translationstash-skip-button-label": "尝试其他",
+ "tsb-limit-reached-title": "感谢您的翻译",
+ "tsb-limit-reached-body": "您已达到新进译者的翻译限制。\n我们的团队将尽快核实和升级您的账户。\n那时您就可以无限制的参与翻译了。",
+ "tsb-no-requests-from-new-users": "没有新用户请求",
+ "tsb-create-user-page": "创建基础用户页",
+ "log-name-translatorsandbox": "翻译沙盒",
+ "log-description-translatorsandbox": "翻译沙盒用户的操作日志",
+ "logentry-translatorsandbox-promoted": "$1将$3{{GENDER:$2|提拔}}为{{GENDER:$4|译者}}",
+ "logentry-translatorsandbox-rejected": "$1{{GENDER:$2|拒绝了}}来自“$3”的成为译者请求",
+ "logentry-newusers-tsbpromoted": "用户账户$3已通过沙盒提拔{{GENDER:$2|创建}}"
+}
diff --git a/MLEB/Translate/i18n/sandbox/zh-hant.json b/MLEB/Translate/i18n/sandbox/zh-hant.json
new file mode 100644
index 00000000..6156147c
--- /dev/null
+++ b/MLEB/Translate/i18n/sandbox/zh-hant.json
@@ -0,0 +1,53 @@
+{
+ "@metadata": {
+ "authors": [
+ "Simon Shek",
+ "Liuxinyu970226",
+ "Cwlin0416",
+ "LNDDYL"
+ ]
+ },
+ "managetranslatorsandbox": "管理翻譯人員沙盒",
+ "tsb-filter-pending": "等候的請求",
+ "tsb-reminder-title-generic": "成為翻譯人員之前,請先填寫您的自我介紹",
+ "tsb-reminder-content-generic": "您好 $1,\n\n感謝您註冊 {{SITENAME}}。\n\n在您完成翻譯測驗後,管理員會儘快授予您完整的翻譯權限。\n\n請到下列網址進行更多的翻譯工作: \n$2\n\n$3,\n{{SITENAME}} 工作團隊",
+ "tsb-reminder-sending": "傳送備忘通知中...",
+ "tsb-reminder-sent": "已發送 $1 封備忘通知,最後一封於 $2",
+ "tsb-reminder-sent-new": "傳送備忘通知",
+ "tsb-reminder-failed": "傳送備忘通知失敗",
+ "tsb-email-promoted-subject": "您已成為 {{SITENAME}} 的翻譯人員",
+ "tsb-email-promoted-body": "您好 {{GENDER:$1|$1}},\n\n恭喜您! 我已核可您在 {{SITENAME}} 所做的翻譯測驗並授權您所有翻譯人員的權限。\n\n您可至 {{SITENAME}} 繼續翻譯工作:\n$2\n\n歡迎您的加入並感謝您所做的貢獻!\n\n{{GENDER:$3|$3}},\n{{SITENAME}} 工作團隊",
+ "tsb-email-rejected-subject": "您於 {{SITENAME}} 翻譯人員申請被拒絕",
+ "tsb-email-rejected-body": "您好 {{GENDER:$1|$1}},\n\n感謝您申請成為 {{SITENAME}} 的翻譯人員,很抱歉通知您我們已拒絕您的申請,因為您的翻譯水準未達我們所需的標準。\n\n若您對申請的結果有疑問,請於 {{SITENAME}} 再申請翻譯人員一次。 您可於此處註冊:\n$2\n\n{{GENDER:$3|$3}},\n{{SITENAME}} 工作團隊",
+ "tsb-request-count": "$1 筆請求",
+ "tsb-all-languages-button-label": "所有語言",
+ "tsb-search-requests": "搜尋請求",
+ "tsb-accept-button-label": "接受",
+ "tsb-reject-button-label": "拒絕",
+ "tsb-selected-count": "已選擇 $1 位使用者",
+ "tsb-older-requests": "$1 筆先前的請求",
+ "tsb-accept-all-button-label": "接受所有",
+ "tsb-reject-all-button-label": "拒絕所有",
+ "tsb-user-posted-a-comment": "非翻譯人員",
+ "tsb-reminder-link-text": "傳送電子郵件備忘通知",
+ "tsb-didnt-make-any-translations": "此使用者尚未做過任何翻譯。",
+ "tsb-translations-source": "原始碼",
+ "tsb-translations-user": "{{GENDER:$1|使用者}}翻譯",
+ "tsb-translations-current": "現有翻譯",
+ "tsb-delete-userpage-summary": "刪除沙盒使用者中的使用者頁面",
+ "translationstash": "歡迎光臨",
+ "translate-translationstash-welcome": "歡迎光臨 {{GENDER:$1|$1}},您是一名新進的翻譯人員",
+ "translate-translationstash-welcome-note": "為了要熟悉翻譯工具,請先試著翻譯部份訊息,再取得完整的翻譯人員權限以加入您想翻譯的專案。",
+ "translate-translationstash-initialtranslation": "您的第一次翻譯",
+ "translate-translationstash-translations": "$1 人已完成翻譯",
+ "translate-translationstash-skip-button-label": "嘗試其他",
+ "tsb-limit-reached-title": "感謝您的翻譯",
+ "tsb-limit-reached-body": "您的翻譯已超過新進翻譯人員的限制。\n我們的團隊會儘快確認您的翻譯資格並升級您的帳號,\n屆時您便可不受限制的翻譯。",
+ "tsb-no-requests-from-new-users": "沒有來自新使用者的請求",
+ "tsb-create-user-page": "建立基本使用者頁面",
+ "log-name-translatorsandbox": "翻譯沙盒",
+ "log-description-translatorsandbox": "翻譯沙盒使用者的工作日誌",
+ "logentry-translatorsandbox-promoted": "$1 {{GENDER:$2|授權}} $3 成為 {{GENDER:$4|翻譯人員}}",
+ "logentry-translatorsandbox-rejected": "$1 {{GENDER:$2|拒絕}}來自 \"$3\" 申請成為翻譯人員的請求",
+ "logentry-newusers-tsbpromoted": "使用者帳號 $3 已{{GENDER:$2|建立}},由沙盒所授權"
+}
diff --git a/MLEB/Translate/i18n/search/ast.json b/MLEB/Translate/i18n/search/ast.json
new file mode 100644
index 00000000..284ccec4
--- /dev/null
+++ b/MLEB/Translate/i18n/search/ast.json
@@ -0,0 +1,21 @@
+{
+ "@metadata": {
+ "authors": [
+ "Xuacu"
+ ]
+ },
+ "searchtranslations": "Guetar nes traducciones",
+ "tux-sst-edit": "Editar traducción",
+ "tux-sst-search": "Guetar",
+ "tux-sst-search-ph": "Guetar nes traducciones",
+ "tux-sst-count": "{{PLURAL:$1|Alcontrose un resultáu|Alcontráronse $1 resultaos}}",
+ "tux-sst-facet-language": "Llingües",
+ "tux-sst-facet-group": "Grupos de mensaxes",
+ "tux-sst-facet-orphan": "(güérfanos)",
+ "tux-sst-nosolr-title": "La gueta nun ta disponible",
+ "tux-sst-nosolr-body": "Esta wiki nun tien un serviciu de gueta de traducciones.",
+ "tux-sst-solr-offline-title": "La gueta nun ta disponible",
+ "tux-sst-solr-offline-body": "El serviciu de gueta nun ta disponible temporalmente.",
+ "tux-sst-next": "Resultaos siguientes",
+ "tux-sst-prev": "Resultaos anteriores"
+}
diff --git a/MLEB/Translate/i18n/search/az.json b/MLEB/Translate/i18n/search/az.json
new file mode 100644
index 00000000..eda2dae6
--- /dev/null
+++ b/MLEB/Translate/i18n/search/az.json
@@ -0,0 +1,17 @@
+{
+ "@metadata": {
+ "authors": [
+ "Khan27"
+ ]
+ },
+ "searchtranslations": "Tərcümələri axtar",
+ "tux-sst-edit": "Tərcümələri redaktə et",
+ "tux-sst-search": "Axtar",
+ "tux-sst-search-ph": "Tərcümələri axtar",
+ "tux-sst-count": "{{PLURAL:$1|Bir nəticə tapıldı|$1 nəticə tapıldı}}",
+ "tux-sst-facet-language": "Dillər",
+ "tux-sst-facet-group": "Mesaj qrupları",
+ "tux-sst-facet-orphan": "(yetim)",
+ "tux-sst-nosolr-title": "Axtarış mümkün deyil",
+ "tux-sst-nosolr-body": "Bu viki üçün tərcümə axtarış sistemi yoxdur."
+}
diff --git a/MLEB/Translate/i18n/search/azb.json b/MLEB/Translate/i18n/search/azb.json
new file mode 100644
index 00000000..7c475e46
--- /dev/null
+++ b/MLEB/Translate/i18n/search/azb.json
@@ -0,0 +1,12 @@
+{
+ "@metadata": {
+ "authors": [
+ "Mousa"
+ ]
+ },
+ "tux-sst-edit": "چئویرمه‌نی دَییشدیر",
+ "tux-sst-search-ph": "چئویرمه‌لر آختاریشی",
+ "tux-sst-count": "{{PLURAL:$1|0=هئچ سونوج تاپیلمادی|بیر سونوج تاپیلدی|$1 سونوج تاپیلدی}}",
+ "tux-sst-facet-language": "دیل‌لر",
+ "tux-sst-facet-group": "مئساژ قروپلاری"
+}
diff --git a/MLEB/Translate/i18n/search/be-tarask.json b/MLEB/Translate/i18n/search/be-tarask.json
new file mode 100644
index 00000000..701e2ba3
--- /dev/null
+++ b/MLEB/Translate/i18n/search/be-tarask.json
@@ -0,0 +1,21 @@
+{
+ "@metadata": {
+ "authors": [
+ "Wizardist"
+ ]
+ },
+ "searchtranslations": "Пошук перакладаў",
+ "tux-sst-edit": "Зьмяніць пераклад",
+ "tux-sst-search": "Шукаць",
+ "tux-sst-search-ph": "Пошук перакладаў",
+ "tux-sst-count": "{{PLURAL:$1|Знойдзены $1 вынік|Знойдзена $1 вынікі|Знойдзена $1 вынікаў}}",
+ "tux-sst-facet-language": "Мовы",
+ "tux-sst-facet-group": "Групы паведамленьняў",
+ "tux-sst-facet-orphan": "(сіраціна)",
+ "tux-sst-nosolr-title": "Пошук недаступны",
+ "tux-sst-nosolr-body": "Гэтая вікі ня мае службы пошуку перакладаў.",
+ "tux-sst-solr-offline-title": "Пошук недаступны",
+ "tux-sst-solr-offline-body": "Служба пошуку часова недаступная.",
+ "tux-sst-next": "Наступныя вынікі",
+ "tux-sst-prev": "Папярэднія вынікі"
+}
diff --git a/MLEB/Translate/i18n/search/bg.json b/MLEB/Translate/i18n/search/bg.json
new file mode 100644
index 00000000..a01014a8
--- /dev/null
+++ b/MLEB/Translate/i18n/search/bg.json
@@ -0,0 +1,15 @@
+{
+ "@metadata": {
+ "authors": [
+ "DCLXVI",
+ "StanProg"
+ ]
+ },
+ "searchtranslations": "Търсене на преводи",
+ "tux-sst-search": "Търсене",
+ "tux-sst-search-ph": "Търсене на преводи",
+ "tux-sst-facet-language": "Езици",
+ "tux-sst-solr-offline-body": "Услугата за търсене е временно недостъпна.",
+ "tux-sst-next": "Следващи резултати",
+ "tux-sst-prev": "Предишни резултати"
+}
diff --git a/MLEB/Translate/i18n/search/bn.json b/MLEB/Translate/i18n/search/bn.json
new file mode 100644
index 00000000..f00f26c4
--- /dev/null
+++ b/MLEB/Translate/i18n/search/bn.json
@@ -0,0 +1,22 @@
+{
+ "@metadata": {
+ "authors": [
+ "Aftab1995",
+ "Nasir8891"
+ ]
+ },
+ "searchtranslations": "অনুবাদ অনুসন্ধান",
+ "tux-sst-edit": "অনুবাদ সম্পাদনা",
+ "tux-sst-search": "অনুসন্ধান",
+ "tux-sst-search-ph": "অনুবাদ অনুসন্ধান",
+ "tux-sst-count": "{{PLURAL:$1|একটি ফলাফল পাওয়া গিয়েছে|$1টি ফলাফল পাওয়া গিয়েছে}}",
+ "tux-sst-facet-language": "ভাষাসমূহ",
+ "tux-sst-facet-group": "বার্তা সংকলন",
+ "tux-sst-facet-orphan": "(পিতৃহীন)",
+ "tux-sst-nosolr-title": "অনুসন্ধান সম্ভব নয়",
+ "tux-sst-nosolr-body": "এই উইকিতে অনুবাদ অনুসন্ধান সক্রিয় নেই।",
+ "tux-sst-solr-offline-title": "অনুসন্ধান সক্রিয় নেই",
+ "tux-sst-solr-offline-body": "অনুসন্ধান পরিষেবাটি সাময়িকভাবে অনুপলব্ধ।",
+ "tux-sst-next": "পরবর্তী ফলাফল",
+ "tux-sst-prev": "পূর্বের ফলাফল"
+}
diff --git a/MLEB/Translate/i18n/search/br.json b/MLEB/Translate/i18n/search/br.json
new file mode 100644
index 00000000..35aac5ef
--- /dev/null
+++ b/MLEB/Translate/i18n/search/br.json
@@ -0,0 +1,12 @@
+{
+ "@metadata": {
+ "authors": [
+ "Fohanno"
+ ]
+ },
+ "tux-sst-search": "Klask",
+ "tux-sst-search-ph": "Klask troidigezhioù",
+ "tux-sst-count": "{{PLURAL:$1|Un disoc'h kavet|$1 disoc'h kavet}}",
+ "tux-sst-facet-language": "Yezhoù",
+ "tux-sst-facet-orphan": "(emzivad)"
+}
diff --git a/MLEB/Translate/i18n/search/ca.json b/MLEB/Translate/i18n/search/ca.json
new file mode 100644
index 00000000..d000cef9
--- /dev/null
+++ b/MLEB/Translate/i18n/search/ca.json
@@ -0,0 +1,21 @@
+{
+ "@metadata": {
+ "authors": [
+ "Toniher"
+ ]
+ },
+ "searchtranslations": "Cerca a les traduccions",
+ "tux-sst-edit": "Edita la traducció",
+ "tux-sst-search": "Cerca",
+ "tux-sst-search-ph": "Cerca a les traduccions",
+ "tux-sst-count": "{{PLURAL:$1|S'ha trobat $1 resultat|S'han trobat $1 resultats}}",
+ "tux-sst-facet-language": "Llengües",
+ "tux-sst-facet-group": "Grups de missatges",
+ "tux-sst-facet-orphan": "(orfe)",
+ "tux-sst-nosolr-title": "Cerca no disponible",
+ "tux-sst-nosolr-body": "Aquest wiki no té un servei de cerca de les traduccions.",
+ "tux-sst-solr-offline-title": "Cerca no disponible",
+ "tux-sst-solr-offline-body": "El servei de cerca no està disponible temporalment.",
+ "tux-sst-next": "Resultats següents",
+ "tux-sst-prev": "Resultats anteriors"
+}
diff --git a/MLEB/Translate/i18n/search/ce.json b/MLEB/Translate/i18n/search/ce.json
new file mode 100644
index 00000000..7c35bcdc
--- /dev/null
+++ b/MLEB/Translate/i18n/search/ce.json
@@ -0,0 +1,16 @@
+{
+ "@metadata": {
+ "authors": [
+ "Умар"
+ ]
+ },
+ "searchtranslations": "Гоч лахар",
+ "tux-sst-edit": "Таде гочдар",
+ "tux-sst-search": "Лаха",
+ "tux-sst-search-ph": "Гоч лахар",
+ "tux-sst-count": "{{PLURAL:$1|Карина $1 хилам|Карина $1 хиламаш}}",
+ "tux-sst-facet-language": "Меттанаш",
+ "tux-sst-facet-group": "Хаамийн тоба",
+ "tux-sst-next": "ТӀехьа догӀург",
+ "tux-sst-prev": "Хьалхо хиларг"
+}
diff --git a/MLEB/Translate/i18n/search/cs.json b/MLEB/Translate/i18n/search/cs.json
new file mode 100644
index 00000000..d47e6b5b
--- /dev/null
+++ b/MLEB/Translate/i18n/search/cs.json
@@ -0,0 +1,22 @@
+{
+ "@metadata": {
+ "authors": [
+ "Littledogboy",
+ "Mormegil"
+ ]
+ },
+ "searchtranslations": "Hledání v překladech",
+ "tux-sst-edit": "Editovat překlad",
+ "tux-sst-search": "Hledat",
+ "tux-sst-search-ph": "Hledat v překladech",
+ "tux-sst-count": "{{PLURAL:$1|Nalezen jeden výsledek|Nalezeny $1 výsledky|Nalezeno $1 výsledků}}",
+ "tux-sst-facet-language": "Jazyky",
+ "tux-sst-facet-group": "Skupiny zpráv",
+ "tux-sst-facet-orphan": "(sirotek)",
+ "tux-sst-nosolr-title": "Hledání není dostupné",
+ "tux-sst-nosolr-body": "Tato wiki nedisponuje službou pro vyhledávání překladů.",
+ "tux-sst-solr-offline-title": "Hledání není dostupné",
+ "tux-sst-solr-offline-body": "Služba pro hledání je dočasně nedostupná.",
+ "tux-sst-next": "Další výsledky",
+ "tux-sst-prev": "Předchozí výsledky"
+}
diff --git a/MLEB/Translate/i18n/search/cu.json b/MLEB/Translate/i18n/search/cu.json
new file mode 100644
index 00000000..53966dd6
--- /dev/null
+++ b/MLEB/Translate/i18n/search/cu.json
@@ -0,0 +1,9 @@
+{
+ "@metadata": {
+ "authors": [
+ "ОйЛ"
+ ]
+ },
+ "tux-sst-search": "ищи",
+ "tux-sst-facet-language": "ѩꙁꙑци"
+}
diff --git a/MLEB/Translate/i18n/search/da.json b/MLEB/Translate/i18n/search/da.json
new file mode 100644
index 00000000..52b25dcd
--- /dev/null
+++ b/MLEB/Translate/i18n/search/da.json
@@ -0,0 +1,21 @@
+{
+ "@metadata": {
+ "authors": [
+ "Byrial"
+ ]
+ },
+ "searchtranslations": "Søg oversættelser",
+ "tux-sst-edit": "Redigér oversættelse",
+ "tux-sst-search": "Søg",
+ "tux-sst-search-ph": "Søg oversættelser",
+ "tux-sst-count": "{{PLURAL:$1|Ét resultat fundet|$1 resultater fundet}}",
+ "tux-sst-facet-language": "Sprog",
+ "tux-sst-facet-group": "Beskedgrupper",
+ "tux-sst-facet-orphan": "(ingen)",
+ "tux-sst-nosolr-title": "Søgning er ikke tilgængelig",
+ "tux-sst-nosolr-body": "Denne wiki har ikke mulighed for oversættelsessøgning.",
+ "tux-sst-solr-offline-title": "Søgning er ikke tilgængelig",
+ "tux-sst-solr-offline-body": "Søgning er midlertidig utilgængelig.",
+ "tux-sst-next": "Næste resultater",
+ "tux-sst-prev": "Forrige resultater"
+}
diff --git a/MLEB/Translate/i18n/search/de.json b/MLEB/Translate/i18n/search/de.json
new file mode 100644
index 00000000..743f62b4
--- /dev/null
+++ b/MLEB/Translate/i18n/search/de.json
@@ -0,0 +1,21 @@
+{
+ "@metadata": {
+ "authors": [
+ "Metalhead64"
+ ]
+ },
+ "searchtranslations": "Übersetzungen suchen",
+ "tux-sst-edit": "Übersetzung bearbeiten",
+ "tux-sst-search": "Suchen",
+ "tux-sst-search-ph": "Übersetzungen suchen",
+ "tux-sst-count": "{{PLURAL:$1|Ein Ergebnis gefunden|$1 Ergebnisse gefunden}}",
+ "tux-sst-facet-language": "Sprachen",
+ "tux-sst-facet-group": "Nachrichtengruppen",
+ "tux-sst-facet-orphan": "(verwaist)",
+ "tux-sst-nosolr-title": "Suche nicht verfügbar",
+ "tux-sst-nosolr-body": "Dieses Wiki hat keinen Übersetzungssuchservice.",
+ "tux-sst-solr-offline-title": "Die Suche ist nicht verfügbar",
+ "tux-sst-solr-offline-body": "Der Suchdienst ist derzeit nicht verfügbar.",
+ "tux-sst-next": "Nächste Ergebnisse",
+ "tux-sst-prev": "Vorherige Ergebnisse"
+}
diff --git a/MLEB/Translate/i18n/search/diq.json b/MLEB/Translate/i18n/search/diq.json
new file mode 100644
index 00000000..44a6c39d
--- /dev/null
+++ b/MLEB/Translate/i18n/search/diq.json
@@ -0,0 +1,22 @@
+{
+ "@metadata": {
+ "authors": [
+ "Mirzali",
+ "Marmase"
+ ]
+ },
+ "searchtranslations": "Bı geyr açarnayışa",
+ "tux-sst-edit": "Açarnayışi bıvurne",
+ "tux-sst-search": "Cı geyre",
+ "tux-sst-search-ph": "Bı geyr açarnayışa",
+ "tux-sst-count": "{{PLURAL:$1|Jew netice vineya|$1 neticey vineyay|0=teba nêvineya}}",
+ "tux-sst-facet-language": "Zıwani",
+ "tux-sst-facet-group": "Gruba mesacan",
+ "tux-sst-facet-orphan": "(seyqur)",
+ "tux-sst-nosolr-title": "Cı geyrayışo nêgurweyêno",
+ "tux-sst-nosolr-body": "Na wiki de xızmeta açarnayışi çıniya",
+ "tux-sst-solr-offline-title": "Cı geyrayışo nêgurweyêno",
+ "tux-sst-solr-offline-body": "Xızmeta cı geyrayışi ya enewke nêgurweyêna.",
+ "tux-sst-next": "Neticeyo bahdoyên",
+ "tux-sst-prev": "Neticeyê verêni"
+}
diff --git a/MLEB/Translate/i18n/search/dsb.json b/MLEB/Translate/i18n/search/dsb.json
new file mode 100644
index 00000000..befda732
--- /dev/null
+++ b/MLEB/Translate/i18n/search/dsb.json
@@ -0,0 +1,21 @@
+{
+ "@metadata": {
+ "authors": [
+ "Michawiki"
+ ]
+ },
+ "searchtranslations": "Pśełožki pytaś",
+ "tux-sst-edit": "Pśełožk wobźěłaś",
+ "tux-sst-search": "Pytaś",
+ "tux-sst-search-ph": "Pśełožki pytaś",
+ "tux-sst-count": "{{PLURAL:$1|Jaden wuslědk namakany|$1 wuslědka namakanej|$1 wuslědki namakane|$1 wuslědkow namakane}}",
+ "tux-sst-facet-language": "Rěcy",
+ "tux-sst-facet-group": "Zdźěleńske kupki",
+ "tux-sst-facet-orphan": "(wósyrośone)",
+ "tux-sst-nosolr-title": "Pytanje njestoj k dispoziciji",
+ "tux-sst-nosolr-body": "Toś ten wiki njama słužbu za pytanje pśełožkow.",
+ "tux-sst-solr-offline-title": "Pytanje njestoj k dispoziciji",
+ "tux-sst-solr-offline-body": "Pytańska słužba njestoj tuchylu k dispoziciji.",
+ "tux-sst-next": "Pśiduce wuslědki",
+ "tux-sst-prev": "Pjerwjejšne wuslědki"
+}
diff --git a/MLEB/Translate/i18n/search/el.json b/MLEB/Translate/i18n/search/el.json
new file mode 100644
index 00000000..d71b37ba
--- /dev/null
+++ b/MLEB/Translate/i18n/search/el.json
@@ -0,0 +1,21 @@
+{
+ "@metadata": {
+ "authors": [
+ "Protnet"
+ ]
+ },
+ "searchtranslations": "Αναζήτηση στις μεταφράσεις",
+ "tux-sst-edit": "Επεξεργασία μετάφρασης",
+ "tux-sst-search": "Αναζήτηση",
+ "tux-sst-search-ph": "Αναζήτηση στις μεταφράσεις",
+ "tux-sst-count": "{{PLURAL:$1|Βρέθηκε ένα αποτέλεσμα|Βρέθηκαν $1 αποτελέσματα}}",
+ "tux-sst-facet-language": "Γλώσσες",
+ "tux-sst-facet-group": "Ομάδες μηνυμάτων",
+ "tux-sst-facet-orphan": "(ορφανά)",
+ "tux-sst-nosolr-title": "Αναζήτηση μη διαθέσιμη",
+ "tux-sst-nosolr-body": "Αυτό το wiki δεν έχει υπηρεσία αναζήτησης για μεταφράσεις.",
+ "tux-sst-solr-offline-title": "Αναζήτηση μη διαθέσιμη",
+ "tux-sst-solr-offline-body": "Η υπηρεσία αναζήτησης είναι προσωρινά μη διαθέσιμη.",
+ "tux-sst-next": "Επόμενα αποτελέσματα",
+ "tux-sst-prev": "Προηγούμενα αποτελέσματα"
+}
diff --git a/MLEB/Translate/i18n/search/en.json b/MLEB/Translate/i18n/search/en.json
new file mode 100644
index 00000000..4e83be65
--- /dev/null
+++ b/MLEB/Translate/i18n/search/en.json
@@ -0,0 +1,21 @@
+{
+ "@metadata": {
+ "authors": [
+ "Nike"
+ ]
+ },
+ "searchtranslations": "Search translations",
+ "tux-sst-edit": "Edit translation",
+ "tux-sst-search": "Search",
+ "tux-sst-search-ph": "Search translations",
+ "tux-sst-count": "{{PLURAL:$1|One result found|$1 results found}}",
+ "tux-sst-facet-language": "Languages",
+ "tux-sst-facet-group": "Message groups",
+ "tux-sst-facet-orphan": "(orphan)",
+ "tux-sst-nosolr-title": "Search unavailable",
+ "tux-sst-nosolr-body": "This wiki does not have a translation search service.",
+ "tux-sst-solr-offline-title": "Search unavailable",
+ "tux-sst-solr-offline-body": "The search service is temporarily unavailable.",
+ "tux-sst-next": "Next results",
+ "tux-sst-prev": "Previous results"
+} \ No newline at end of file
diff --git a/MLEB/Translate/i18n/search/es.json b/MLEB/Translate/i18n/search/es.json
new file mode 100644
index 00000000..1d6859c3
--- /dev/null
+++ b/MLEB/Translate/i18n/search/es.json
@@ -0,0 +1,22 @@
+{
+ "@metadata": {
+ "authors": [
+ "Fitoschido",
+ "Ovruni"
+ ]
+ },
+ "searchtranslations": "Buscar en las traducciones",
+ "tux-sst-edit": "Editar traducción",
+ "tux-sst-search": "Buscar",
+ "tux-sst-search-ph": "Buscar traducciones",
+ "tux-sst-count": "Se {{PLURAL:$1|encontró un resultado|encontraron $1 resultados}}",
+ "tux-sst-facet-language": "Idiomas",
+ "tux-sst-facet-group": "Grupos de mensajes",
+ "tux-sst-facet-orphan": "(huérfano)",
+ "tux-sst-nosolr-title": "Búsqueda no disponible",
+ "tux-sst-nosolr-body": "Este wiki no tiene un servicio de búsqueda de traducciones.",
+ "tux-sst-solr-offline-title": "Búsqueda no disponible",
+ "tux-sst-solr-offline-body": "El servicio de búsqueda no está disponible temporalmente.",
+ "tux-sst-next": "Resultados siguientes",
+ "tux-sst-prev": "Resultados anteriores"
+}
diff --git a/MLEB/Translate/i18n/search/et.json b/MLEB/Translate/i18n/search/et.json
new file mode 100644
index 00000000..b4f438b7
--- /dev/null
+++ b/MLEB/Translate/i18n/search/et.json
@@ -0,0 +1,21 @@
+{
+ "@metadata": {
+ "authors": [
+ "Pikne"
+ ]
+ },
+ "searchtranslations": "Tõlgete otsimine",
+ "tux-sst-edit": "Redigeeri tõlget",
+ "tux-sst-search": "Otsi",
+ "tux-sst-search-ph": "Otsi tõlkeid",
+ "tux-sst-count": "{{PLURAL:$1|Üks tulemus leitud|$1 tulemust leitud}}",
+ "tux-sst-facet-language": "Keeled",
+ "tux-sst-facet-group": "Sõnumirühmad",
+ "tux-sst-facet-orphan": "(orb)",
+ "tux-sst-nosolr-title": "Otsing pole saadaval",
+ "tux-sst-nosolr-body": "Sellel vikil pole tõlkeotsimisteenust.",
+ "tux-sst-solr-offline-title": "Otsing pole saadaval",
+ "tux-sst-solr-offline-body": "Otsimisteenus pole ajutiselt saadaval.",
+ "tux-sst-next": "Järgmised tulemused",
+ "tux-sst-prev": "Eelmised tulemused"
+}
diff --git a/MLEB/Translate/i18n/search/eu.json b/MLEB/Translate/i18n/search/eu.json
new file mode 100644
index 00000000..61513b6a
--- /dev/null
+++ b/MLEB/Translate/i18n/search/eu.json
@@ -0,0 +1,10 @@
+{
+ "@metadata": {
+ "authors": [
+ "An13sa"
+ ]
+ },
+ "tux-sst-edit": "Mezua aldatu",
+ "tux-sst-search": "Bilatu",
+ "tux-sst-facet-language": "Hizkuntzak"
+}
diff --git a/MLEB/Translate/i18n/search/fa.json b/MLEB/Translate/i18n/search/fa.json
new file mode 100644
index 00000000..772f2a34
--- /dev/null
+++ b/MLEB/Translate/i18n/search/fa.json
@@ -0,0 +1,21 @@
+{
+ "@metadata": {
+ "authors": [
+ "Ebraminio"
+ ]
+ },
+ "searchtranslations": "جستجوی ترجمه‌ها",
+ "tux-sst-edit": "ویرایش ترجمه",
+ "tux-sst-search": "جستجو",
+ "tux-sst-search-ph": "جستجوی ترجمه‌ها",
+ "tux-sst-count": "{{PLURAL:$1|0=هیچ نتیجه‌ای یافت نشد|یک نتیجه یافت شد|$1 نتیجه یافت شد}}",
+ "tux-sst-facet-language": "زبان‌ها",
+ "tux-sst-facet-group": "گروه‌های پیام",
+ "tux-sst-facet-orphan": "(یتیم)",
+ "tux-sst-nosolr-title": "جستجوی ناموجود است",
+ "tux-sst-nosolr-body": "این ویکی خدمات جستجوی ترجمه ندارد.",
+ "tux-sst-solr-offline-title": "جستجوی ناموجود است",
+ "tux-sst-solr-offline-body": "خدمت جستجو به‌صورت موقت ناموجود است.",
+ "tux-sst-next": "نتایج بعدی",
+ "tux-sst-prev": "نتایج قبلی"
+}
diff --git a/MLEB/Translate/i18n/search/fi.json b/MLEB/Translate/i18n/search/fi.json
new file mode 100644
index 00000000..97e2cdc0
--- /dev/null
+++ b/MLEB/Translate/i18n/search/fi.json
@@ -0,0 +1,21 @@
+{
+ "@metadata": {
+ "authors": [
+ "Crt",
+ "Nike",
+ "Silvonen",
+ "Stryn"
+ ]
+ },
+ "searchtranslations": "Etsi käännöksiä",
+ "tux-sst-edit": "Muokkaa käännöstä",
+ "tux-sst-search": "Hae",
+ "tux-sst-search-ph": "Etsi käännöksiä",
+ "tux-sst-count": "{{PLURAL:$1|Yksi hakutulos|$1 hakutulosta}}",
+ "tux-sst-facet-language": "Kielet",
+ "tux-sst-facet-group": "Viestiryhmät",
+ "tux-sst-facet-orphan": "(orpo)",
+ "tux-sst-nosolr-title": "Haku ei ole käytössä",
+ "tux-sst-nosolr-body": "Hakupalvelu ei ole käytössä tässä wikissä.",
+ "tux-sst-solr-offline-title": "Haku ei ole käytössä"
+}
diff --git a/MLEB/Translate/i18n/search/fo.json b/MLEB/Translate/i18n/search/fo.json
new file mode 100644
index 00000000..fdee5a10
--- /dev/null
+++ b/MLEB/Translate/i18n/search/fo.json
@@ -0,0 +1,21 @@
+{
+ "@metadata": {
+ "authors": [
+ "EileenSanda"
+ ]
+ },
+ "searchtranslations": "Leita eftir týðingum",
+ "tux-sst-edit": "Rætta týðing",
+ "tux-sst-search": "Leita",
+ "tux-sst-search-ph": "Leita eftir týðingum",
+ "tux-sst-count": "{{PLURAL:$1|Eitt úrslit funnið|$1 úrslit funnin}}",
+ "tux-sst-facet-language": "Mál",
+ "tux-sst-facet-group": "Boðbólkar",
+ "tux-sst-facet-orphan": "(foreldraleys)",
+ "tux-sst-nosolr-title": "Leiting ber ikki til",
+ "tux-sst-nosolr-body": "Henda wiki'in hevur ikki eina tænastu har til ber at leita eftir týðingum.",
+ "tux-sst-solr-offline-title": "Leitan ber ikki til",
+ "tux-sst-solr-offline-body": "Leititænastan er fyribils óvirkin.",
+ "tux-sst-next": "Næstu úrslit",
+ "tux-sst-prev": "Undarfarnu úrslit"
+}
diff --git a/MLEB/Translate/i18n/search/fr.json b/MLEB/Translate/i18n/search/fr.json
new file mode 100644
index 00000000..6b5d1680
--- /dev/null
+++ b/MLEB/Translate/i18n/search/fr.json
@@ -0,0 +1,21 @@
+{
+ "@metadata": {
+ "authors": [
+ "Gomoko"
+ ]
+ },
+ "searchtranslations": "Recherche de traductions",
+ "tux-sst-edit": "Modifier la traduction",
+ "tux-sst-search": "Rechercher",
+ "tux-sst-search-ph": "Recherche de traductions",
+ "tux-sst-count": "{{PLURAL:$1|Un résultat trouvé|$1 résultats trouvés}}",
+ "tux-sst-facet-language": "Langues",
+ "tux-sst-facet-group": "Groupes de message",
+ "tux-sst-facet-orphan": "(orphelin)",
+ "tux-sst-nosolr-title": "Recherche indisponible",
+ "tux-sst-nosolr-body": "Ce wiki n’a pas de service de recherche de traduction.",
+ "tux-sst-solr-offline-title": "Recherche indisponible",
+ "tux-sst-solr-offline-body": "Le service de recherche est temporairement indisponible.",
+ "tux-sst-next": "Résultats suivants",
+ "tux-sst-prev": "Résultats précédents"
+}
diff --git a/MLEB/Translate/i18n/search/fy.json b/MLEB/Translate/i18n/search/fy.json
new file mode 100644
index 00000000..3a6893ad
--- /dev/null
+++ b/MLEB/Translate/i18n/search/fy.json
@@ -0,0 +1,9 @@
+{
+ "@metadata": {
+ "authors": [
+ "Robin0van0der0vliet"
+ ]
+ },
+ "tux-sst-search": "Sykje",
+ "tux-sst-facet-language": "Talen"
+}
diff --git a/MLEB/Translate/i18n/search/gl.json b/MLEB/Translate/i18n/search/gl.json
new file mode 100644
index 00000000..14b8d66a
--- /dev/null
+++ b/MLEB/Translate/i18n/search/gl.json
@@ -0,0 +1,21 @@
+{
+ "@metadata": {
+ "authors": [
+ "Toliño"
+ ]
+ },
+ "searchtranslations": "Procurar nas traducións",
+ "tux-sst-edit": "Editar a tradución",
+ "tux-sst-search": "Procurar",
+ "tux-sst-search-ph": "Procurar nas traducións",
+ "tux-sst-count": "{{PLURAL:$1|Atopouse 1 resultado|Atopáronse $1 resultados}}",
+ "tux-sst-facet-language": "Linguas",
+ "tux-sst-facet-group": "Grupos de mensaxes",
+ "tux-sst-facet-orphan": "(orfos)",
+ "tux-sst-nosolr-title": "A procura non está dispoñible",
+ "tux-sst-nosolr-body": "Este wiki non dispón dun servizo de procura de traducións.",
+ "tux-sst-solr-offline-title": "A procura non está dispoñible",
+ "tux-sst-solr-offline-body": "O servizo de procura non está dispoñible temporalmente.",
+ "tux-sst-next": "Resultados seguintes",
+ "tux-sst-prev": "Resultados anteriores"
+}
diff --git a/MLEB/Translate/i18n/search/gu.json b/MLEB/Translate/i18n/search/gu.json
new file mode 100644
index 00000000..f86ceb50
--- /dev/null
+++ b/MLEB/Translate/i18n/search/gu.json
@@ -0,0 +1,21 @@
+{
+ "@metadata": {
+ "authors": [
+ "Ashok modhvadia"
+ ]
+ },
+ "searchtranslations": "ભાષાંતરો શોધો",
+ "tux-sst-edit": "ભાષાંતરો સંપાદિત કરો",
+ "tux-sst-search": "શોધો",
+ "tux-sst-search-ph": "ભાષાંતરો શોધો",
+ "tux-sst-count": "{{PLURAL:$1|એક પરિણામ મળ્યુ|$1 પરિણામો મળ્યા}}",
+ "tux-sst-facet-language": "ભાષાઓ",
+ "tux-sst-facet-group": "સંદેશ જૂથો",
+ "tux-sst-facet-orphan": "(અનાથ)",
+ "tux-sst-nosolr-title": "શોધ ઉપલબ્ધ નથી",
+ "tux-sst-nosolr-body": "આ વિકિ પર ભાષાંતર શોધ સેવા ઉપલબ્ધ નથી.",
+ "tux-sst-solr-offline-title": "શોધ ઉપલબ્ધ નથી",
+ "tux-sst-solr-offline-body": "આ શોધ સેવા હાલ ઉપલબ્ધ નથી.",
+ "tux-sst-next": "પછીનાં પરિણામો",
+ "tux-sst-prev": "આગલાં પરિણામો"
+}
diff --git a/MLEB/Translate/i18n/search/he.json b/MLEB/Translate/i18n/search/he.json
new file mode 100644
index 00000000..0b9c2ac8
--- /dev/null
+++ b/MLEB/Translate/i18n/search/he.json
@@ -0,0 +1,21 @@
+{
+ "@metadata": {
+ "authors": [
+ "Amire80"
+ ]
+ },
+ "searchtranslations": "חיפוש בתרגומים",
+ "tux-sst-edit": "עריכת התרגום",
+ "tux-sst-search": "חיפוש",
+ "tux-sst-search-ph": "חיפוש בתרגומים",
+ "tux-sst-count": "{{PLURAL:$1|נמצאה תוצאה אחת|נמצאו $1 תוצאות}}",
+ "tux-sst-facet-language": "שפות",
+ "tux-sst-facet-group": "קבוצות הודעות",
+ "tux-sst-facet-orphan": "(יתומים)",
+ "tux-sst-nosolr-title": "החיפוש אינו זמין",
+ "tux-sst-nosolr-body": "בוויקי הזה אין שירות חיפוש בתרגומים.",
+ "tux-sst-solr-offline-title": "החיפוש אינו זמין",
+ "tux-sst-solr-offline-body": "זמנית שירות החיפוש אינו זמין.",
+ "tux-sst-next": "התוצאות הבאות",
+ "tux-sst-prev": "התוצאות הקודמות"
+}
diff --git a/MLEB/Translate/i18n/search/hsb.json b/MLEB/Translate/i18n/search/hsb.json
new file mode 100644
index 00000000..12fddb79
--- /dev/null
+++ b/MLEB/Translate/i18n/search/hsb.json
@@ -0,0 +1,21 @@
+{
+ "@metadata": {
+ "authors": [
+ "Michawiki"
+ ]
+ },
+ "searchtranslations": "Přełožki pytać",
+ "tux-sst-edit": "Přełožk wobdźěłać",
+ "tux-sst-search": "Pytać",
+ "tux-sst-search-ph": "Přełožki pytać",
+ "tux-sst-count": "{{PLURAL:$1|Jedyn wuslědk namakany|$1 wuslědkaj namakanej|$1 wuslědki namakane|$1 wuslědkow namakane}}",
+ "tux-sst-facet-language": "Rěče",
+ "tux-sst-facet-group": "Zdźělenske skupiny",
+ "tux-sst-facet-orphan": "(wosyroćene)",
+ "tux-sst-nosolr-title": "Pytanje k dispoziciji njesteji",
+ "tux-sst-nosolr-body": "Tutón wiki nima słužbu za pytanje přełožkow.",
+ "tux-sst-solr-offline-title": "Pytanje k dispoziciji njesteji",
+ "tux-sst-solr-offline-body": "Pytanska słužba tuchwilu k dispoziciji njesteji.",
+ "tux-sst-next": "Přichodne wuslědki",
+ "tux-sst-prev": "Předchadne wuslědki"
+}
diff --git a/MLEB/Translate/i18n/search/ia.json b/MLEB/Translate/i18n/search/ia.json
new file mode 100644
index 00000000..cad828b0
--- /dev/null
+++ b/MLEB/Translate/i18n/search/ia.json
@@ -0,0 +1,21 @@
+{
+ "@metadata": {
+ "authors": [
+ "McDutchie"
+ ]
+ },
+ "searchtranslations": "Cercar traductiones",
+ "tux-sst-edit": "Modificar traduction",
+ "tux-sst-search": "Cercar",
+ "tux-sst-search-ph": "Cerca in traductiones",
+ "tux-sst-count": "{{PLURAL:$1|Un resultato trovate|$1 resultatos trovate}}",
+ "tux-sst-facet-language": "Linguas",
+ "tux-sst-facet-group": "Gruppos de messages",
+ "tux-sst-facet-orphan": "(orphano)",
+ "tux-sst-nosolr-title": "Recerca indisponibile",
+ "tux-sst-nosolr-body": "Iste wiki non ha un servicio de recerca de traductiones.",
+ "tux-sst-solr-offline-title": "Recerca indisponibile",
+ "tux-sst-solr-offline-body": "Le servicio de recerca es temporarimente indisponibile.",
+ "tux-sst-next": "Sequente resultatos",
+ "tux-sst-prev": "Precedente resultatos"
+}
diff --git a/MLEB/Translate/i18n/search/ilo.json b/MLEB/Translate/i18n/search/ilo.json
new file mode 100644
index 00000000..b826ea56
--- /dev/null
+++ b/MLEB/Translate/i18n/search/ilo.json
@@ -0,0 +1,21 @@
+{
+ "@metadata": {
+ "authors": [
+ "Lam-ang"
+ ]
+ },
+ "searchtranslations": "Agbiruk kadagiti patarus",
+ "tux-sst-edit": "Urnosen ti patarus",
+ "tux-sst-search": "Biruken",
+ "tux-sst-search-ph": "Agbiruk kadagiti patarus",
+ "tux-sst-count": "{{PLURAL:$1|Maysa a resulta a nabirukan|Dagiti $1 a resulta a nabirukan}}",
+ "tux-sst-facet-language": "Dagiti pagsasao",
+ "tux-sst-facet-group": "Dagiti grupo ti mensahe",
+ "tux-sst-facet-orphan": "(ulila)",
+ "tux-sst-nosolr-title": "Saan a magun-od ti panagbiruk",
+ "tux-sst-nosolr-body": "Daytoy a wiki ket awan ti serbisio a panagbiruk ti patarus",
+ "tux-sst-solr-offline-title": "Saan a magun-od ti panagbiruk",
+ "tux-sst-solr-offline-body": "Ti serbisio ti panagbiruk ket temporario a saan a magun-od",
+ "tux-sst-next": "Dagiti sumaruno a resulta",
+ "tux-sst-prev": "Dagiti dati a resulta"
+}
diff --git a/MLEB/Translate/i18n/search/it.json b/MLEB/Translate/i18n/search/it.json
new file mode 100644
index 00000000..d35e7c5d
--- /dev/null
+++ b/MLEB/Translate/i18n/search/it.json
@@ -0,0 +1,21 @@
+{
+ "@metadata": {
+ "authors": [
+ "Beta16"
+ ]
+ },
+ "searchtranslations": "Ricerca traduzioni",
+ "tux-sst-edit": "Modifica traduzione",
+ "tux-sst-search": "Cerca",
+ "tux-sst-search-ph": "Cerca traduzioni",
+ "tux-sst-count": "{{PLURAL:$1|Un risultato trovato|$1 risultati trovati}}",
+ "tux-sst-facet-language": "Lingue",
+ "tux-sst-facet-group": "Gruppi di messaggi",
+ "tux-sst-facet-orphan": "(orfano)",
+ "tux-sst-nosolr-title": "Ricerca non disponibile",
+ "tux-sst-nosolr-body": "Questo wiki non ha un servizio di ricerca delle traduzioni.",
+ "tux-sst-solr-offline-title": "Ricerca non disponibile",
+ "tux-sst-solr-offline-body": "Il servizio di ricerca è temporaneamente non disponibile.",
+ "tux-sst-next": "Risultati succesivi",
+ "tux-sst-prev": "Risultati precedenti"
+}
diff --git a/MLEB/Translate/i18n/search/ja.json b/MLEB/Translate/i18n/search/ja.json
new file mode 100644
index 00000000..54e35ffc
--- /dev/null
+++ b/MLEB/Translate/i18n/search/ja.json
@@ -0,0 +1,21 @@
+{
+ "@metadata": {
+ "authors": [
+ "Shirayuki"
+ ]
+ },
+ "searchtranslations": "翻訳の検索",
+ "tux-sst-edit": "翻訳を編集",
+ "tux-sst-search": "検索",
+ "tux-sst-search-ph": "翻訳の検索",
+ "tux-sst-count": "{{PLURAL:$1|$1 件見つかりました}}",
+ "tux-sst-facet-language": "言語",
+ "tux-sst-facet-group": "メッセージ群",
+ "tux-sst-facet-orphan": "(孤立)",
+ "tux-sst-nosolr-title": "検索は利用できません",
+ "tux-sst-nosolr-body": "このウィキには翻訳の検索サービスはありません。",
+ "tux-sst-solr-offline-title": "検索は利用できません",
+ "tux-sst-solr-offline-body": "検索サービスは一時的に利用できません。",
+ "tux-sst-next": "次の検索結果",
+ "tux-sst-prev": "前の検索結果"
+}
diff --git a/MLEB/Translate/i18n/search/ka.json b/MLEB/Translate/i18n/search/ka.json
new file mode 100644
index 00000000..9270f840
--- /dev/null
+++ b/MLEB/Translate/i18n/search/ka.json
@@ -0,0 +1,14 @@
+{
+ "@metadata": {
+ "authors": [
+ "David1010"
+ ]
+ },
+ "searchtranslations": "თარგმანების ძიება",
+ "tux-sst-edit": "თარგმანის რედაქტირება",
+ "tux-sst-search": "ძიება",
+ "tux-sst-search-ph": "თარგმანების ძიება",
+ "tux-sst-count": "{{PLURAL:$1|ნაპოვნია ერთი შედეგი|ნაპოვნია $1 შედეგი}}",
+ "tux-sst-facet-language": "ენები",
+ "tux-sst-facet-group": "შეტყობინების ჯგუფები"
+}
diff --git a/MLEB/Translate/i18n/search/kn.json b/MLEB/Translate/i18n/search/kn.json
new file mode 100644
index 00000000..2dd0488c
--- /dev/null
+++ b/MLEB/Translate/i18n/search/kn.json
@@ -0,0 +1,12 @@
+{
+ "@metadata": {
+ "authors": [
+ "VASANTH S.N."
+ ]
+ },
+ "searchtranslations": "ಭಾಷಾಂತರಗಳನ್ನು ಹುಡುಕಿ",
+ "tux-sst-edit": "ಅನುವಾದಗಳನ್ನು ಸಂಪಾದಿಸಿ",
+ "tux-sst-search": "ಹುಡುಕು",
+ "tux-sst-search-ph": "ಭಾಷಾಂತರಗಳನ್ನು ಹುಡುಕಿ",
+ "tux-sst-facet-language": "ಭಾಷೆಗಳು"
+}
diff --git a/MLEB/Translate/i18n/search/ko.json b/MLEB/Translate/i18n/search/ko.json
new file mode 100644
index 00000000..aa851c40
--- /dev/null
+++ b/MLEB/Translate/i18n/search/ko.json
@@ -0,0 +1,21 @@
+{
+ "@metadata": {
+ "authors": [
+ "아라"
+ ]
+ },
+ "searchtranslations": "번역 검색",
+ "tux-sst-edit": "번역 편집",
+ "tux-sst-search": "검색",
+ "tux-sst-search-ph": "번역 검색",
+ "tux-sst-count": "{{PLURAL:$1|결과 한 개를 찾았습니다|결과 $1개를 찾았습니다}}",
+ "tux-sst-facet-language": "언어",
+ "tux-sst-facet-group": "메시지 그룹",
+ "tux-sst-facet-orphan": "(외톨이)",
+ "tux-sst-nosolr-title": "검색을 사용할 수 없음",
+ "tux-sst-nosolr-body": "이 위키는 번역 검색 서비스가 없습니다.",
+ "tux-sst-solr-offline-title": "검색을 사용할 수 없음",
+ "tux-sst-solr-offline-body": "검색 서비스를 일시적으로 사용할 수 없습니다.",
+ "tux-sst-next": "다음 결과",
+ "tux-sst-prev": "이전 결과"
+}
diff --git a/MLEB/Translate/i18n/search/krc.json b/MLEB/Translate/i18n/search/krc.json
new file mode 100644
index 00000000..bf6b56ce
--- /dev/null
+++ b/MLEB/Translate/i18n/search/krc.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Iltever"
+ ]
+ },
+ "tux-sst-facet-language": "Тилле"
+}
diff --git a/MLEB/Translate/i18n/search/ksh.json b/MLEB/Translate/i18n/search/ksh.json
new file mode 100644
index 00000000..2fb9f9c2
--- /dev/null
+++ b/MLEB/Translate/i18n/search/ksh.json
@@ -0,0 +1,21 @@
+{
+ "@metadata": {
+ "authors": [
+ "Purodha"
+ ]
+ },
+ "searchtranslations": "Övversäzonge söhke",
+ "tux-sst-edit": "de Övversäzong ändere",
+ "tux-sst-search": "Lohß jonn!",
+ "tux-sst-search-ph": "Övversäzonge söhke",
+ "tux-sst-count": "{{PLURAL:$1|Eine|$1|Nix}} jefonge",
+ "tux-sst-facet-language": "Schprohche",
+ "tux-sst-facet-group": "Nohreeschtejroppe",
+ "tux-sst-facet-orphan": "(kein Jropp)",
+ "tux-sst-nosolr-title": "Söhke es nit müjjelesch.",
+ "tux-sst-nosolr-body": "En heh däm Wiki kammer nit noh Översäzonge söhke.",
+ "tux-sst-solr-offline-title": "Söhke es nit müjjelesch.",
+ "tux-sst-solr-offline-body": "Et Söhke es em Momang nit müjjelesch.",
+ "tux-sst-next": "De nähkße Träffer",
+ "tux-sst-prev": "De förrėje Träffer"
+}
diff --git a/MLEB/Translate/i18n/search/ku-latn.json b/MLEB/Translate/i18n/search/ku-latn.json
new file mode 100644
index 00000000..837f6ca2
--- /dev/null
+++ b/MLEB/Translate/i18n/search/ku-latn.json
@@ -0,0 +1,15 @@
+{
+ "@metadata": {
+ "authors": [
+ "George Animal"
+ ]
+ },
+ "searchtranslations": "Li wergeran bigere",
+ "tux-sst-edit": "Wergerê biguherîne",
+ "tux-sst-search": "Lêgerîn",
+ "tux-sst-search-ph": "Li wergeran bigere",
+ "tux-sst-count": "{{PLURAL:$1|Encamek hat dîtin|$1 encam hatin dîtin}}",
+ "tux-sst-facet-language": "Ziman",
+ "tux-sst-facet-group": "Komên peyaman",
+ "tux-sst-facet-orphan": "(sêwî)"
+}
diff --git a/MLEB/Translate/i18n/search/lb.json b/MLEB/Translate/i18n/search/lb.json
new file mode 100644
index 00000000..59b44445
--- /dev/null
+++ b/MLEB/Translate/i18n/search/lb.json
@@ -0,0 +1,21 @@
+{
+ "@metadata": {
+ "authors": [
+ "Robby"
+ ]
+ },
+ "searchtranslations": "Iwwersetzunge sichen",
+ "tux-sst-edit": "Iwwersetzung änneren",
+ "tux-sst-search": "Sichen",
+ "tux-sst-search-ph": "Iwwersetzunge sichen",
+ "tux-sst-count": "{{PLURAL:$1|Ee Resultat|$1 Resultater}} fonnt",
+ "tux-sst-facet-language": "Sproochen",
+ "tux-sst-facet-group": "Gruppe vu Messagen",
+ "tux-sst-facet-orphan": "(verwaist)",
+ "tux-sst-nosolr-title": "Sichen ass net disponibel",
+ "tux-sst-nosolr-body": "Dës Wiki huet d'Sichfonctioun vun den Iwwersetzungen net.",
+ "tux-sst-solr-offline-title": "Sichen ass net disponibel",
+ "tux-sst-solr-offline-body": "D'Sichfonctioun ass temporär net disponibel.",
+ "tux-sst-next": "nächst Resultater",
+ "tux-sst-prev": "Vireg Resultater"
+}
diff --git a/MLEB/Translate/i18n/search/lrc.json b/MLEB/Translate/i18n/search/lrc.json
new file mode 100644
index 00000000..1eb27d51
--- /dev/null
+++ b/MLEB/Translate/i18n/search/lrc.json
@@ -0,0 +1,18 @@
+{
+ "@metadata": {
+ "authors": [
+ "Mogoeilor"
+ ]
+ },
+ "searchtranslations": "پی جوری لرسنيا",
+ "tux-sst-edit": "ويرايشت لرسن",
+ "tux-sst-search": "پی جوری",
+ "tux-sst-search-ph": "پی جوری لرسنيا",
+ "tux-sst-facet-language": "زونيا",
+ "tux-sst-facet-group": "پيغوم گرويا",
+ "tux-sst-facet-orphan": "(يتيم)",
+ "tux-sst-nosolr-title": "پی جوری د دسرس نئ",
+ "tux-sst-solr-offline-title": "پی جوری د دسرس نئ",
+ "tux-sst-next": "نتيجيا نيايی",
+ "tux-sst-prev": "نتيجيا دمايی"
+}
diff --git a/MLEB/Translate/i18n/search/lv.json b/MLEB/Translate/i18n/search/lv.json
new file mode 100644
index 00000000..b053fe22
--- /dev/null
+++ b/MLEB/Translate/i18n/search/lv.json
@@ -0,0 +1,15 @@
+{
+ "@metadata": {
+ "authors": [
+ "Papuass"
+ ]
+ },
+ "searchtranslations": "Meklēt tulkojumus",
+ "tux-sst-edit": "Labot tulkojumu",
+ "tux-sst-search": "Meklēt",
+ "tux-sst-search-ph": "Meklēt tulkojumus",
+ "tux-sst-count": "{{PLURAL:$1|Viens rezultāts atrasts|$1 rezultāti atrasti}}",
+ "tux-sst-facet-language": "Valodas",
+ "tux-sst-nosolr-title": "Meklēšana nav pieejama",
+ "tux-sst-solr-offline-title": "Meklēšana nav pieejama"
+}
diff --git a/MLEB/Translate/i18n/search/lzh.json b/MLEB/Translate/i18n/search/lzh.json
new file mode 100644
index 00000000..3bfe7c01
--- /dev/null
+++ b/MLEB/Translate/i18n/search/lzh.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Jason924tw"
+ ]
+ },
+ "tux-sst-facet-language": "語"
+}
diff --git a/MLEB/Translate/i18n/search/mk.json b/MLEB/Translate/i18n/search/mk.json
new file mode 100644
index 00000000..7bbeb07b
--- /dev/null
+++ b/MLEB/Translate/i18n/search/mk.json
@@ -0,0 +1,21 @@
+{
+ "@metadata": {
+ "authors": [
+ "Bjankuloski06"
+ ]
+ },
+ "searchtranslations": "Пребарување на преводи",
+ "tux-sst-edit": "Уреди превод",
+ "tux-sst-search": "Пребарај",
+ "tux-sst-search-ph": "Пребарајте преводи",
+ "tux-sst-count": "{{PLURAL:$1|Пронајден е еден резултат|Пронајдени се $1 резултати}}",
+ "tux-sst-facet-language": "Јазици",
+ "tux-sst-facet-group": "Групи на пораки",
+ "tux-sst-facet-orphan": "(осамена)",
+ "tux-sst-nosolr-title": "Пребарувањето е недостапно",
+ "tux-sst-nosolr-body": "Ова вики нема пребарувач.",
+ "tux-sst-solr-offline-title": "Пребарувањето е недостапно",
+ "tux-sst-solr-offline-body": "Пребарувањето е привремено недостапно.",
+ "tux-sst-next": "Следни резултати",
+ "tux-sst-prev": "Претходни резултати"
+}
diff --git a/MLEB/Translate/i18n/search/mr.json b/MLEB/Translate/i18n/search/mr.json
new file mode 100644
index 00000000..945bd8f3
--- /dev/null
+++ b/MLEB/Translate/i18n/search/mr.json
@@ -0,0 +1,21 @@
+{
+ "@metadata": {
+ "authors": [
+ "V.narsikar"
+ ]
+ },
+ "searchtranslations": "भाषांतर शोधा",
+ "tux-sst-edit": "भाषांतर संपादा",
+ "tux-sst-search": "शोधा",
+ "tux-sst-search-ph": "भाषांतर शोधा",
+ "tux-sst-count": "{{PLURAL:$1|एक निकाल सापडला|$1 निकाल सापडले}}",
+ "tux-sst-facet-language": "भाषा",
+ "tux-sst-facet-group": "संदेश गट",
+ "tux-sst-facet-orphan": "(अनाथ)",
+ "tux-sst-nosolr-title": "'शोध' उपलब्ध नाही",
+ "tux-sst-nosolr-body": "या विकिवर 'भाषांतर शोध सेवा' नाही.",
+ "tux-sst-solr-offline-title": "'शोध' उपलब्ध नाही",
+ "tux-sst-solr-offline-body": "'शोध' सेवा तात्पुरती अनुपलब्ध आहे.",
+ "tux-sst-next": "पुढील निकाल",
+ "tux-sst-prev": "मागील निकाल"
+}
diff --git a/MLEB/Translate/i18n/search/ms.json b/MLEB/Translate/i18n/search/ms.json
new file mode 100644
index 00000000..85b25b24
--- /dev/null
+++ b/MLEB/Translate/i18n/search/ms.json
@@ -0,0 +1,21 @@
+{
+ "@metadata": {
+ "authors": [
+ "Anakmalaysia"
+ ]
+ },
+ "searchtranslations": "Cari terjemahan",
+ "tux-sst-edit": "Sunting terjemahan",
+ "tux-sst-search": "Cari",
+ "tux-sst-search-ph": "Cari terjemahan",
+ "tux-sst-count": "$1 hasil dijumpai",
+ "tux-sst-facet-language": "Bahasa",
+ "tux-sst-facet-group": "Message groups",
+ "tux-sst-facet-orphan": "(yatim)",
+ "tux-sst-nosolr-title": "Tidak boleh mencari",
+ "tux-sst-nosolr-body": "Wiki ini tiada ciri mencari terjemahan.",
+ "tux-sst-solr-offline-title": "Tidak boleh mencari",
+ "tux-sst-solr-offline-body": "Perkhidmatan pencarian tidak disediakan buat sementara waktu.",
+ "tux-sst-next": "Hasil berikutnya",
+ "tux-sst-prev": "Hasil terdahulu"
+}
diff --git a/MLEB/Translate/i18n/search/nl.json b/MLEB/Translate/i18n/search/nl.json
new file mode 100644
index 00000000..c9691ec8
--- /dev/null
+++ b/MLEB/Translate/i18n/search/nl.json
@@ -0,0 +1,21 @@
+{
+ "@metadata": {
+ "authors": [
+ "Siebrand"
+ ]
+ },
+ "searchtranslations": "Vertalingen zoeken",
+ "tux-sst-edit": "Vertaling bewerken",
+ "tux-sst-search": "Zoeken",
+ "tux-sst-search-ph": "Vertalingen zoeken",
+ "tux-sst-count": "{{PLURAL:$1|Eén resultaat|$1 resultaten}} gevonden",
+ "tux-sst-facet-language": "Talen",
+ "tux-sst-facet-group": "Berichtengroepen",
+ "tux-sst-facet-orphan": "(wees)",
+ "tux-sst-nosolr-title": "Zoeken is niet beschikbaar",
+ "tux-sst-nosolr-body": "Deze wiki heeft geen dienst om vertalingen te zoeken.",
+ "tux-sst-solr-offline-title": "Zoeken is niet beschikbaar",
+ "tux-sst-solr-offline-body": "De zoekdienst is tijdelijk niet beschikbaar.",
+ "tux-sst-next": "Volgende resultaten",
+ "tux-sst-prev": "Vorige resultaten"
+}
diff --git a/MLEB/Translate/i18n/search/nn.json b/MLEB/Translate/i18n/search/nn.json
new file mode 100644
index 00000000..a713be57
--- /dev/null
+++ b/MLEB/Translate/i18n/search/nn.json
@@ -0,0 +1,20 @@
+{
+ "@metadata": {
+ "authors": [
+ "Njardarlogar"
+ ]
+ },
+ "searchtranslations": "Søk i omsetjingar",
+ "tux-sst-edit": "Endra omsetjing",
+ "tux-sst-search": "Søk",
+ "tux-sst-search-ph": "Søk i omsetjingar",
+ "tux-sst-count": "Fann {{PLURAL:$1|eitt|$1}} resultat",
+ "tux-sst-facet-language": "Språk",
+ "tux-sst-facet-group": "Meldingsgrupper",
+ "tux-sst-nosolr-title": "Søket er ikkje tilgjengeleg",
+ "tux-sst-nosolr-body": "Denne wikien har ikkje eit omsetjingssøk",
+ "tux-sst-solr-offline-title": "Søket er ikkje tilgjengeleg",
+ "tux-sst-solr-offline-body": "Søket er mellombels utilgjengeleg",
+ "tux-sst-next": "Dei neste resultata",
+ "tux-sst-prev": "Dei førre resultata"
+}
diff --git a/MLEB/Translate/i18n/search/oc.json b/MLEB/Translate/i18n/search/oc.json
new file mode 100644
index 00000000..e2cc2b12
--- /dev/null
+++ b/MLEB/Translate/i18n/search/oc.json
@@ -0,0 +1,14 @@
+{
+ "@metadata": {
+ "authors": [
+ "Cedric31"
+ ]
+ },
+ "searchtranslations": "Recèrca de traduccions",
+ "tux-sst-edit": "Modificar la traduccion",
+ "tux-sst-search": "Recercar",
+ "tux-sst-facet-language": "Lengas",
+ "tux-sst-facet-group": "Gropes de messatge",
+ "tux-sst-facet-orphan": "(orfanèl)",
+ "tux-sst-nosolr-title": "Recèrca indisponibla"
+}
diff --git a/MLEB/Translate/i18n/search/pl.json b/MLEB/Translate/i18n/search/pl.json
new file mode 100644
index 00000000..d8fe82a8
--- /dev/null
+++ b/MLEB/Translate/i18n/search/pl.json
@@ -0,0 +1,22 @@
+{
+ "@metadata": {
+ "authors": [
+ "Chrumps",
+ "Woytecr"
+ ]
+ },
+ "searchtranslations": "Szukaj tłumaczenia",
+ "tux-sst-edit": "Edytuj tłumaczenie",
+ "tux-sst-search": "Szukaj",
+ "tux-sst-search-ph": "Szukaj tłumaczenia",
+ "tux-sst-count": "Znaleziono {{PLURAL:$1|jeden wynik|$1 wyników}}",
+ "tux-sst-facet-language": "Języki",
+ "tux-sst-facet-group": "Grupa komunikatów",
+ "tux-sst-facet-orphan": "(sierota)",
+ "tux-sst-nosolr-title": "Wyszukiwanie nie jest dostępne",
+ "tux-sst-nosolr-body": "W tej wiki nie ma usługi wyszukiwania tłumaczeń.",
+ "tux-sst-solr-offline-title": "Wyszukiwanie nie jest dostępne",
+ "tux-sst-solr-offline-body": "Wyszukiwanie jest chwilowo niedostępne",
+ "tux-sst-next": "Następne wyniki",
+ "tux-sst-prev": "Poprzednie wyniki"
+}
diff --git a/MLEB/Translate/i18n/search/pms.json b/MLEB/Translate/i18n/search/pms.json
new file mode 100644
index 00000000..b92c73cb
--- /dev/null
+++ b/MLEB/Translate/i18n/search/pms.json
@@ -0,0 +1,18 @@
+{
+ "@metadata": {
+ "authors": [
+ "Borichèt",
+ "Dragonòt"
+ ]
+ },
+ "searchtranslations": "Arserca ëd tradussion",
+ "tux-sst-edit": "Modifiché la tradussion",
+ "tux-sst-search": "Sërca",
+ "tux-sst-search-ph": "Arserca ëd tradussion",
+ "tux-sst-count": "{{PLURAL:$1|Un arzultà trovà|$1 arzultà trovà}}",
+ "tux-sst-facet-language": "Lenghe",
+ "tux-sst-facet-group": "Partìe ëd mëssagi",
+ "tux-sst-facet-orphan": "(orfanin)",
+ "tux-sst-nosolr-title": "Arserca nen disponìbil",
+ "tux-sst-nosolr-body": "La wiki a l'ha pa un servissi d'arserca ëd tradussion."
+}
diff --git a/MLEB/Translate/i18n/search/pt-br.json b/MLEB/Translate/i18n/search/pt-br.json
new file mode 100644
index 00000000..f42adfc2
--- /dev/null
+++ b/MLEB/Translate/i18n/search/pt-br.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Luckas"
+ ]
+ },
+ "tux-sst-edit": "Editar tradução"
+}
diff --git a/MLEB/Translate/i18n/search/pt.json b/MLEB/Translate/i18n/search/pt.json
new file mode 100644
index 00000000..3850e049
--- /dev/null
+++ b/MLEB/Translate/i18n/search/pt.json
@@ -0,0 +1,23 @@
+{
+ "@metadata": {
+ "authors": [
+ "Luckas",
+ "Hamilton Abreu",
+ "Vitorvicentevalente"
+ ]
+ },
+ "searchtranslations": "Pesquisar nas traduções",
+ "tux-sst-edit": "Editar a tradução",
+ "tux-sst-search": "Pesquisar",
+ "tux-sst-search-ph": "Pesquisar nas traduções",
+ "tux-sst-count": "{{PLURAL:$1|Foi encontrado um resultado|Foram encontrados $1 resultados}}",
+ "tux-sst-facet-language": "Idiomas",
+ "tux-sst-facet-group": "Grupos de mensagens",
+ "tux-sst-facet-orphan": "(orfãs)",
+ "tux-sst-nosolr-title": "Pesquisa indisponível",
+ "tux-sst-nosolr-body": "Esta wiki não tem um serviço de pesquisa de traduções.",
+ "tux-sst-solr-offline-title": "Pesquisa indisponível",
+ "tux-sst-solr-offline-body": "O serviço de pesquisa está temporariamente indisponível.",
+ "tux-sst-next": "Resultados seguintes",
+ "tux-sst-prev": "Resultados anteriores"
+}
diff --git a/MLEB/Translate/i18n/search/qqq.json b/MLEB/Translate/i18n/search/qqq.json
new file mode 100644
index 00000000..dda22b5d
--- /dev/null
+++ b/MLEB/Translate/i18n/search/qqq.json
@@ -0,0 +1,22 @@
+{
+ "@metadata": {
+ "authors": [
+ "Nike",
+ "Shirayuki"
+ ]
+ },
+ "searchtranslations": "{{doc-special|SearchTranslations}}\n{{Identical|Search translation}}",
+ "tux-sst-edit": "A link text.",
+ "tux-sst-search": "A button text.\n{{Identical|Search}}",
+ "tux-sst-search-ph": "Placeholder text in input field.\n{{Identical|Search translation}}",
+ "tux-sst-count": "Parameters:\n* $1 - the number of search results",
+ "tux-sst-facet-language": "Label for a facet in [[Special:TranslationSearch]].\n{{Identical|Language}}",
+ "tux-sst-facet-group": "Label for a facet in [[Special:TranslationSearch]].\n{{Identical|Message group}}",
+ "tux-sst-facet-orphan": "Name for group of search results that don't belong to any known message groups.\n{{Identical|Orphan}}",
+ "tux-sst-nosolr-title": "Used as title of error page.\n\nThe body of error message is {{msg-mw|Tux-sst-nosolr-body}}.\n{{Identical|Search unavailable}}",
+ "tux-sst-nosolr-body": "Used as error message.\n\nThe page title for this message is {{msg-mw|Tux-sst-nosolr-title}}.",
+ "tux-sst-solr-offline-title": "Used as title of error page.\n\nThe body of error message is {{msg-mw|Tux-sst-solr-offline-body}}.\n{{Identical|Search unavailable}}",
+ "tux-sst-solr-offline-body": "Used as error message.\n\nThe page title for this message is {{msg-mw|tux-sst-solr-offline-title}}.",
+ "tux-sst-next": "Link to browser more search results.\n\nSee also:\n* {{msg-mw|Tux-sst-prev}}",
+ "tux-sst-prev": "Link to browser more search results.\n\nSee also:\n* {{msg-mw|Tux-sst-next}}"
+}
diff --git a/MLEB/Translate/i18n/search/qu.json b/MLEB/Translate/i18n/search/qu.json
new file mode 100644
index 00000000..10ecb4f0
--- /dev/null
+++ b/MLEB/Translate/i18n/search/qu.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "AlimanRuna"
+ ]
+ },
+ "tux-sst-facet-language": "Rimaykuna"
+}
diff --git a/MLEB/Translate/i18n/search/ro.json b/MLEB/Translate/i18n/search/ro.json
new file mode 100644
index 00000000..52225e5d
--- /dev/null
+++ b/MLEB/Translate/i18n/search/ro.json
@@ -0,0 +1,21 @@
+{
+ "@metadata": {
+ "authors": [
+ "Minisarm"
+ ]
+ },
+ "searchtranslations": "Căutare traduceri",
+ "tux-sst-edit": "Modifică traducerea",
+ "tux-sst-search": "Caută",
+ "tux-sst-search-ph": "Căutare traduceri",
+ "tux-sst-count": "{{PLURAL:$1|Un rezultat găsit|$1 rezultate găsite|$1 de rezultate găsite}}",
+ "tux-sst-facet-language": "Limbi",
+ "tux-sst-facet-group": "Grupuri de mesaje",
+ "tux-sst-facet-orphan": "(orfan)",
+ "tux-sst-nosolr-title": "Căutarea nu este disponibilă",
+ "tux-sst-nosolr-body": "Acest wiki nu dispune de un serviciu de căutare a traducerilor.",
+ "tux-sst-solr-offline-title": "Căutarea nu este disponibilă",
+ "tux-sst-solr-offline-body": "Serviciul de căutare este temporar indisponibil.",
+ "tux-sst-next": "Rezultatele următoare",
+ "tux-sst-prev": "Rezultatele anterioare"
+}
diff --git a/MLEB/Translate/i18n/search/roa-tara.json b/MLEB/Translate/i18n/search/roa-tara.json
new file mode 100644
index 00000000..8167ed48
--- /dev/null
+++ b/MLEB/Translate/i18n/search/roa-tara.json
@@ -0,0 +1,21 @@
+{
+ "@metadata": {
+ "authors": [
+ "Joetaras"
+ ]
+ },
+ "searchtranslations": "Cirche le traduziune",
+ "tux-sst-edit": "Cange 'a traduzione",
+ "tux-sst-search": "Cirche",
+ "tux-sst-search-ph": "Cirche le traduziune",
+ "tux-sst-count": "{{PLURAL:$1|'Nu resultate acchiate|$1 resultate acchiate}}",
+ "tux-sst-facet-language": "Lènghe",
+ "tux-sst-facet-group": "Gruppe de messàgge",
+ "tux-sst-facet-orphan": "(orfane)",
+ "tux-sst-nosolr-title": "Ricerche non disponibbile",
+ "tux-sst-nosolr-body": "Sta uicchi non g'ave 'nu servizie de ricerche pe le traduziune.",
+ "tux-sst-solr-offline-title": "Ricerche non disponibbile",
+ "tux-sst-solr-offline-body": "'U servizie de ricerche jè temboraneamende indisponibbile.",
+ "tux-sst-next": "Prossime resultate",
+ "tux-sst-prev": "Resultate precedende"
+}
diff --git a/MLEB/Translate/i18n/search/ru.json b/MLEB/Translate/i18n/search/ru.json
new file mode 100644
index 00000000..2e548681
--- /dev/null
+++ b/MLEB/Translate/i18n/search/ru.json
@@ -0,0 +1,22 @@
+{
+ "@metadata": {
+ "authors": [
+ "Kaganer",
+ "Lockal"
+ ]
+ },
+ "searchtranslations": "Поиск переводов",
+ "tux-sst-edit": "Редактировать перевод",
+ "tux-sst-search": "Найти",
+ "tux-sst-search-ph": "Поиск переводов",
+ "tux-sst-count": "{{PLURAL:$1|Найден $1 результат|Найдены $1 результата|Найдено $1 результатов}}",
+ "tux-sst-facet-language": "Языки",
+ "tux-sst-facet-group": "Группы сообщений",
+ "tux-sst-facet-orphan": "(сирота)",
+ "tux-sst-nosolr-title": "Поиск недоступен",
+ "tux-sst-nosolr-body": "В этой вики отсутствует сервис поиска переводов.",
+ "tux-sst-solr-offline-title": "Поиск недоступен",
+ "tux-sst-solr-offline-body": "Служба поиска временно недоступна.",
+ "tux-sst-next": "Следующие результаты",
+ "tux-sst-prev": "Предыдущие результаты"
+}
diff --git a/MLEB/Translate/i18n/search/rue.json b/MLEB/Translate/i18n/search/rue.json
new file mode 100644
index 00000000..d0b19703
--- /dev/null
+++ b/MLEB/Translate/i18n/search/rue.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Tkalyn"
+ ]
+ },
+ "tux-sst-facet-language": "Языкы"
+}
diff --git a/MLEB/Translate/i18n/search/sco.json b/MLEB/Translate/i18n/search/sco.json
new file mode 100644
index 00000000..b8b21606
--- /dev/null
+++ b/MLEB/Translate/i18n/search/sco.json
@@ -0,0 +1,20 @@
+{
+ "@metadata": {
+ "authors": [
+ "John Reid"
+ ]
+ },
+ "searchtranslations": "Rake owersets",
+ "tux-sst-edit": "Eedit owerset",
+ "tux-sst-search": "Rake",
+ "tux-sst-search-ph": "Rake owersets",
+ "tux-sst-count": "{{PLURAL:$1|Yin ootcome foond|$1 ootcomes foond}}",
+ "tux-sst-facet-language": "Leids",
+ "tux-sst-facet-group": "Message groops",
+ "tux-sst-nosolr-title": "Rake onavailable",
+ "tux-sst-nosolr-body": "This wiki disna hae aen owerset rake service.",
+ "tux-sst-solr-offline-title": "Rake onavailable",
+ "tux-sst-solr-offline-body": "The Rake service is tempralie onavailable.",
+ "tux-sst-next": "Nex ootcomes",
+ "tux-sst-prev": "Afore ootcomes"
+}
diff --git a/MLEB/Translate/i18n/search/sk.json b/MLEB/Translate/i18n/search/sk.json
new file mode 100644
index 00000000..e5b976ee
--- /dev/null
+++ b/MLEB/Translate/i18n/search/sk.json
@@ -0,0 +1,11 @@
+{
+ "@metadata": {
+ "authors": [
+ "Sudo77(new)"
+ ]
+ },
+ "tux-sst-search": "Hľadať",
+ "tux-sst-facet-language": "Jazyky",
+ "tux-sst-next": "Ďalšie výsledky",
+ "tux-sst-prev": "Predchádzajúce výsledky"
+}
diff --git a/MLEB/Translate/i18n/search/sr-ec.json b/MLEB/Translate/i18n/search/sr-ec.json
new file mode 100644
index 00000000..a97053fb
--- /dev/null
+++ b/MLEB/Translate/i18n/search/sr-ec.json
@@ -0,0 +1,22 @@
+{
+ "@metadata": {
+ "authors": [
+ "Милан Јелисавчић",
+ "Milicevic01"
+ ]
+ },
+ "searchtranslations": "Претрага превода",
+ "tux-sst-edit": "Уреди превод",
+ "tux-sst-search": "Претражи",
+ "tux-sst-search-ph": "Претрага превода",
+ "tux-sst-count": "{{PLURAL:$1|Један резултат пронађен|$1 резултата пронађено}}",
+ "tux-sst-facet-language": "Језици",
+ "tux-sst-facet-group": "Групе порука",
+ "tux-sst-facet-orphan": "(сироче)",
+ "tux-sst-nosolr-title": "Претрага недоступна",
+ "tux-sst-nosolr-body": "Овај вики нема сервис за претрагу превода.",
+ "tux-sst-solr-offline-title": "Претрага недоступна",
+ "tux-sst-solr-offline-body": "Сервис за претрагу је привремено недоступан.",
+ "tux-sst-next": "Следећи резултати",
+ "tux-sst-prev": "Претходни резултати"
+}
diff --git a/MLEB/Translate/i18n/search/sv.json b/MLEB/Translate/i18n/search/sv.json
new file mode 100644
index 00000000..dae57305
--- /dev/null
+++ b/MLEB/Translate/i18n/search/sv.json
@@ -0,0 +1,21 @@
+{
+ "@metadata": {
+ "authors": [
+ "WikiPhoenix"
+ ]
+ },
+ "searchtranslations": "Sök översättningar",
+ "tux-sst-edit": "Redigera översättning",
+ "tux-sst-search": "Sök",
+ "tux-sst-search-ph": "Sök översättningar",
+ "tux-sst-count": "{{PLURAL:$1|Ett|$1}} resultat hittades",
+ "tux-sst-facet-language": "Språk",
+ "tux-sst-facet-group": "Meddelandegrupper",
+ "tux-sst-facet-orphan": "(föräldralös)",
+ "tux-sst-nosolr-title": "Sökning är inte tillgänglig",
+ "tux-sst-nosolr-body": "Denna wiki har inte en tjänst för att söka efter översättningar.",
+ "tux-sst-solr-offline-title": "Sökning är inte tillgänglig",
+ "tux-sst-solr-offline-body": "Söktjänsten är inte tillgänglig för tillfället.",
+ "tux-sst-next": "Nästa resultat",
+ "tux-sst-prev": "Föregående resultat"
+}
diff --git a/MLEB/Translate/i18n/search/tr.json b/MLEB/Translate/i18n/search/tr.json
new file mode 100644
index 00000000..e0a7dc9d
--- /dev/null
+++ b/MLEB/Translate/i18n/search/tr.json
@@ -0,0 +1,23 @@
+{
+ "@metadata": {
+ "authors": [
+ "Emperyan",
+ "Joseph",
+ "Meelo"
+ ]
+ },
+ "searchtranslations": "Çevirileri ara",
+ "tux-sst-edit": "Çeviriyi düzenle",
+ "tux-sst-search": "Ara",
+ "tux-sst-search-ph": "Çevirileri ara",
+ "tux-sst-count": "{{PLURAL:$1|Bir sonuç bulundu|$1 sonuç bulundu|0=Sonuç bulunamadı}}",
+ "tux-sst-facet-language": "Diller",
+ "tux-sst-facet-group": "İleti grupları",
+ "tux-sst-facet-orphan": "(yetim)",
+ "tux-sst-nosolr-title": "Arama kullanılamıyor",
+ "tux-sst-nosolr-body": "Bu wikide bir çeviri arama hizmeti yok.",
+ "tux-sst-solr-offline-title": "Arama kullanılamıyor",
+ "tux-sst-solr-offline-body": "Arama hizmeti geçici olarak kullanılamıyor.",
+ "tux-sst-next": "Sonraki sonuçlar",
+ "tux-sst-prev": "Önceki sonuçlar"
+}
diff --git a/MLEB/Translate/i18n/search/uk.json b/MLEB/Translate/i18n/search/uk.json
new file mode 100644
index 00000000..5377b3fc
--- /dev/null
+++ b/MLEB/Translate/i18n/search/uk.json
@@ -0,0 +1,22 @@
+{
+ "@metadata": {
+ "authors": [
+ "Base",
+ "Ата"
+ ]
+ },
+ "searchtranslations": "Пошук перекладів",
+ "tux-sst-edit": "Редагувати переклад",
+ "tux-sst-search": "Пошук",
+ "tux-sst-search-ph": "Пошук перекладів",
+ "tux-sst-count": "{{PLURAL:$1|Знайдено один результат|Знайдено $1 результати|Знайдено $1 результатів}}",
+ "tux-sst-facet-language": "Мови",
+ "tux-sst-facet-group": "Групи повідомлень",
+ "tux-sst-facet-orphan": "(сирота)",
+ "tux-sst-nosolr-title": "Пошук недоступний",
+ "tux-sst-nosolr-body": "У цій вікі немає служби пошуку перекладів.",
+ "tux-sst-solr-offline-title": "Пошук не доступний",
+ "tux-sst-solr-offline-body": "Сервіс пошуку тимчасово недоступний.",
+ "tux-sst-next": "Наступні результати",
+ "tux-sst-prev": "Попередні результати"
+}
diff --git a/MLEB/Translate/i18n/search/uz.json b/MLEB/Translate/i18n/search/uz.json
new file mode 100644
index 00000000..726f01b3
--- /dev/null
+++ b/MLEB/Translate/i18n/search/uz.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "CoderSI"
+ ]
+ },
+ "tux-sst-facet-language": "Tillar"
+}
diff --git a/MLEB/Translate/i18n/search/vi.json b/MLEB/Translate/i18n/search/vi.json
new file mode 100644
index 00000000..812a8708
--- /dev/null
+++ b/MLEB/Translate/i18n/search/vi.json
@@ -0,0 +1,21 @@
+{
+ "@metadata": {
+ "authors": [
+ "Minh Nguyen"
+ ]
+ },
+ "searchtranslations": "Tìm bản dịch",
+ "tux-sst-edit": "Sửa bản dịch",
+ "tux-sst-search": "Tìm kiếm",
+ "tux-sst-search-ph": "Tìm bản dịch",
+ "tux-sst-count": "Tìm thấy $1 kết quả",
+ "tux-sst-facet-language": "Ngôn ngữ",
+ "tux-sst-facet-group": "Nhóm thông điệp",
+ "tux-sst-facet-orphan": "(mồ côi)",
+ "tux-sst-nosolr-title": "Công cụ tìm kiếm không có sẵn",
+ "tux-sst-nosolr-body": "Wiki này không có công cụ tìm bản dịch.",
+ "tux-sst-solr-offline-title": "Công cụ tìm kiếm không có sẵn",
+ "tux-sst-solr-offline-body": "Công cụ tìm kiếm tạm thời không sẵn dùng.",
+ "tux-sst-next": "Kết quả sau",
+ "tux-sst-prev": "Kết quả trước"
+}
diff --git a/MLEB/Translate/i18n/search/yi.json b/MLEB/Translate/i18n/search/yi.json
new file mode 100644
index 00000000..5a0f2757
--- /dev/null
+++ b/MLEB/Translate/i18n/search/yi.json
@@ -0,0 +1,21 @@
+{
+ "@metadata": {
+ "authors": [
+ "פוילישער"
+ ]
+ },
+ "searchtranslations": "זוכן איבערזעצונגען",
+ "tux-sst-edit": "רעדאַקטירן איבערזעצונג",
+ "tux-sst-search": "זוכן",
+ "tux-sst-search-ph": "זוכן איבערזעצונגען",
+ "tux-sst-count": "{{PLURAL:$1|איין רעזולטאט געטראפן|$1 רעזולטאטן געטראפן}}",
+ "tux-sst-facet-language": "שפּראַכן",
+ "tux-sst-facet-group": "מעלדונג גרופעס",
+ "tux-sst-facet-orphan": "(יתום)",
+ "tux-sst-nosolr-title": "זוך נישט פאראן",
+ "tux-sst-nosolr-body": "די וויקי האט נישט קיין איבערזעצונג זוך דינסט.",
+ "tux-sst-solr-offline-title": "זוך נישט פאראן",
+ "tux-sst-solr-offline-body": "די זוכדינסט איז צײַטווײַליק נישט פאראן.",
+ "tux-sst-next": "נעקסטע רעזולטאטן",
+ "tux-sst-prev": "פֿריערדיקע רעזולטאטן"
+}
diff --git a/MLEB/Translate/i18n/search/zh-hans.json b/MLEB/Translate/i18n/search/zh-hans.json
new file mode 100644
index 00000000..bfb7cb4e
--- /dev/null
+++ b/MLEB/Translate/i18n/search/zh-hans.json
@@ -0,0 +1,24 @@
+{
+ "@metadata": {
+ "authors": [
+ "Hydra",
+ "Li3939108",
+ "Xiaomingyan",
+ "Yfdyh000"
+ ]
+ },
+ "searchtranslations": "搜索译文",
+ "tux-sst-edit": "编辑译文",
+ "tux-sst-search": "搜索",
+ "tux-sst-search-ph": "搜索译文",
+ "tux-sst-count": "{{PLURAL:$1|找到$1个结果}}",
+ "tux-sst-facet-language": "语言",
+ "tux-sst-facet-group": "信息组",
+ "tux-sst-facet-orphan": "(孤立)",
+ "tux-sst-nosolr-title": "搜索不可用",
+ "tux-sst-nosolr-body": "本wiki没有译文搜索服务。",
+ "tux-sst-solr-offline-title": "搜索不可用",
+ "tux-sst-solr-offline-body": "搜索服务暂时不可用。",
+ "tux-sst-next": "下一页结果",
+ "tux-sst-prev": "上一页结果"
+}
diff --git a/MLEB/Translate/i18n/search/zh-hant.json b/MLEB/Translate/i18n/search/zh-hant.json
new file mode 100644
index 00000000..a95fe36b
--- /dev/null
+++ b/MLEB/Translate/i18n/search/zh-hant.json
@@ -0,0 +1,22 @@
+{
+ "@metadata": {
+ "authors": [
+ "Cwlin0416",
+ "Simon Shek"
+ ]
+ },
+ "searchtranslations": "搜尋翻譯",
+ "tux-sst-edit": "編輯翻譯",
+ "tux-sst-search": "搜尋",
+ "tux-sst-search-ph": "搜尋翻譯",
+ "tux-sst-count": "{{PLURAL:$1|找到 1 筆結果|找到 $1 筆結果}}",
+ "tux-sst-facet-language": "語言",
+ "tux-sst-facet-group": "訊息群組",
+ "tux-sst-facet-orphan": "(孤立)",
+ "tux-sst-nosolr-title": "無法使用搜尋",
+ "tux-sst-nosolr-body": "此 Wiki 沒有提供翻譯搜尋的服務。",
+ "tux-sst-solr-offline-title": "無法使用搜尋",
+ "tux-sst-solr-offline-body": "暫時無法使用搜尋。",
+ "tux-sst-next": "下一筆結果",
+ "tux-sst-prev": "上一筆結果"
+}
diff --git a/MLEB/Translate/insertables/Insertable.php b/MLEB/Translate/insertables/Insertable.php
new file mode 100644
index 00000000..5b67d3ef
--- /dev/null
+++ b/MLEB/Translate/insertables/Insertable.php
@@ -0,0 +1,45 @@
+<?php
+/**
+ * Value object for insertables.
+ *
+ * @file
+ * @author Niklas Laxström
+ * @license GPL-2.0+
+ */
+
+/**
+ * Insertable is a string that usually does not need translation and is
+ * difficult to type manually.
+ * @since 2013.09
+ */
+class Insertable {
+ /** @var string What to show to the user */
+ protected $display;
+ /** @var string What to insert before selection */
+ protected $pre;
+ /** @var string What to insert after selection */
+ protected $post;
+
+ /**
+ * @param string $display What to show to the user
+ * @param string $pre What to insert before selection
+ * @param string $post What to insert after selection
+ */
+ public function __construct( $display, $pre = '', $post = '' ) {
+ $this->display = $display;
+ $this->pre = $pre;
+ $this->post = $post;
+ }
+
+ public function getPreText() {
+ return $this->pre;
+ }
+
+ public function getPostText() {
+ return $this->post;
+ }
+
+ public function getDisplayText() {
+ return $this->display;
+ }
+}
diff --git a/MLEB/Translate/insertables/InsertablesSuggester.php b/MLEB/Translate/insertables/InsertablesSuggester.php
new file mode 100644
index 00000000..c02a7aad
--- /dev/null
+++ b/MLEB/Translate/insertables/InsertablesSuggester.php
@@ -0,0 +1,17 @@
+<?php
+/**
+ * Interface for InsertableSuggesters.
+ *
+ * @file
+ * @author Niklas Laxström
+ * @license GPL-2.0+
+ */
+
+/**
+ * Insertable is a string that usually does not need translation and is
+ * difficult to type manually.
+ * @since 2013.09
+ */
+interface InsertablesSuggester {
+ public function getInsertables( $text );
+}
diff --git a/MLEB/Translate/insertables/MediaWikiInsertablesSuggester.php b/MLEB/Translate/insertables/MediaWikiInsertablesSuggester.php
new file mode 100644
index 00000000..03744c16
--- /dev/null
+++ b/MLEB/Translate/insertables/MediaWikiInsertablesSuggester.php
@@ -0,0 +1,38 @@
+<?php
+/**
+ * @file
+ * @author Niklas Laxström
+ * @license GPL-2.0+
+ */
+
+/**
+ * Insertable is a string that usually does not need translation and is
+ * difficult to type manually.
+ * @since 2013.09
+ */
+class MediaWikiInsertablesSuggester {
+ public function getInsertables( $text ) {
+ $insertables = array();
+
+ $matches = array();
+ preg_match_all( '/\$[0-9]+/', $text, $matches, PREG_SET_ORDER );
+ $new = array_map( function( $match ) {
+ return new Insertable( $match[0], $match[0] );
+ }, $matches );
+ $insertables = array_merge( $insertables, $new );
+
+ $matches = array();
+ preg_match_all(
+ '/({{((?:PLURAL|GENDER|GRAMMAR):[^|]*)\|).*?(}})/i',
+ $text,
+ $matches,
+ PREG_SET_ORDER
+ );
+ $new = array_map( function( $match ) {
+ return new Insertable( $match[2], $match[1], $match[3] );
+ }, $matches );
+ $insertables = array_merge( $insertables, $new );
+
+ return $insertables;
+ }
+}
diff --git a/MLEB/Translate/insertables/TranslatablePageInsertablesSuggester.php b/MLEB/Translate/insertables/TranslatablePageInsertablesSuggester.php
new file mode 100644
index 00000000..25d9644c
--- /dev/null
+++ b/MLEB/Translate/insertables/TranslatablePageInsertablesSuggester.php
@@ -0,0 +1,36 @@
+<?php
+/**
+ * @file
+ * @author Niklas Laxström
+ * @license GPL-2.0+
+ */
+
+/**
+ * Special insertables for translatable pages.
+ * @since 2013.11
+ */
+class TranslatablePageInsertablesSuggester extends MediaWikiInsertablesSuggester {
+ public function getInsertables( $text ) {
+ $insertables = parent::getInsertables( $text );
+
+ // Translatable pages allow naming the variables. Basically anything is
+ // allowed in a variable name, but here we are stricter to avoid too many
+ // false positives.
+ $matches = array();
+ preg_match_all( '/\$([a-zA-Z0-9-]+)/', $text, $matches, PREG_SET_ORDER );
+
+ $new = array_map( function ( $match ) {
+ // Numerical ones are already handled by parent
+ if ( ctype_digit( $match[1] ) ) {
+ return null;
+ }
+
+ return new Insertable( $match[0], $match[0] );
+ }, $matches );
+
+ $new = array_filter( $new );
+ $insertables = array_merge( $insertables, $new );
+
+ return $insertables;
+ }
+}
diff --git a/MLEB/Translate/libs/spyc/COPYING b/MLEB/Translate/libs/spyc/COPYING
new file mode 100644
index 00000000..8e7ddbcf
--- /dev/null
+++ b/MLEB/Translate/libs/spyc/COPYING
@@ -0,0 +1,21 @@
+The MIT License
+
+Copyright (c) 2011 Vladimir Andersen
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in
+all copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+THE SOFTWARE. \ No newline at end of file
diff --git a/MLEB/Translate/libs/spyc/spyc.php b/MLEB/Translate/libs/spyc/spyc.php
new file mode 100644
index 00000000..fcc7200c
--- /dev/null
+++ b/MLEB/Translate/libs/spyc/spyc.php
@@ -0,0 +1,1148 @@
+<?php
+// @codingStandardsIgnoreFile
+/**
+ * Spyc -- A Simple PHP YAML Class
+ * @version 0.5.1
+ * @author Vlad Andersen <vlad.andersen@gmail.com>
+ * @author Chris Wanstrath <chris@ozmm.org>
+ * @link http://code.google.com/p/spyc/
+ * @copyright Copyright 2005-2006 Chris Wanstrath, 2006-2011 Vlad Andersen
+ * @license http://www.opensource.org/licenses/mit-license.php MIT License
+ * @package Spyc
+ */
+
+if (!function_exists('spyc_load')) {
+ /**
+ * Parses YAML to array.
+ * @param string $string YAML string.
+ * @return array
+ */
+ function spyc_load ($string) {
+ return Spyc::YAMLLoadString($string);
+ }
+}
+
+if (!function_exists('spyc_load_file')) {
+ /**
+ * Parses YAML to array.
+ * @param string $file Path to YAML file.
+ * @return array
+ */
+ function spyc_load_file ($file) {
+ return Spyc::YAMLLoad($file);
+ }
+}
+
+if (!function_exists('spyc_dump')) {
+ /**
+ * Dumps array to YAML.
+ * @param array $data Array.
+ * @return string
+ */
+ function spyc_dump ($data) {
+ return Spyc::YAMLDump($data, false, false, true);
+ }
+}
+
+/**
+ * The Simple PHP YAML Class.
+ *
+ * This class can be used to read a YAML file and convert its contents
+ * into a PHP array. It currently supports a very limited subsection of
+ * the YAML spec.
+ *
+ * Usage:
+ * <code>
+ * $Spyc = new Spyc;
+ * $array = $Spyc->load($file);
+ * </code>
+ * or:
+ * <code>
+ * $array = Spyc::YAMLLoad($file);
+ * </code>
+ * or:
+ * <code>
+ * $array = spyc_load_file($file);
+ * </code>
+ * @package Spyc
+ */
+class Spyc {
+
+ // SETTINGS
+
+ const REMPTY = "\0\0\0\0\0";
+
+ /**
+ * Setting this to true will force YAMLDump to enclose any string value in
+ * quotes. False by default.
+ *
+ * @var bool
+ */
+ public $setting_dump_force_quotes = false;
+
+ /**
+ * Setting this to true will forse YAMLLoad to use syck_load function when
+ * possible. False by default.
+ * @var bool
+ */
+ public $setting_use_syck_is_possible = false;
+
+
+
+ /**#@+
+ * @access private
+ * @var mixed
+ */
+ private $_dumpIndent;
+ private $_dumpWordWrap;
+ private $_containsGroupAnchor = false;
+ private $_containsGroupAlias = false;
+ private $path;
+ private $result;
+ private $LiteralPlaceHolder = '___YAML_Literal_Block___';
+ private $SavedGroups = array();
+ private $indent;
+ /**
+ * Path modifier that should be applied after adding current element.
+ * @var array
+ */
+ private $delayedPath = array();
+
+ /**#@+
+ * @access public
+ * @var mixed
+ */
+ public $_nodeId;
+
+/**
+ * Load a valid YAML string to Spyc.
+ * @param string $input
+ * @return array
+ */
+ public function load ($input) {
+ return $this->__loadString($input);
+ }
+
+ /**
+ * Load a valid YAML file to Spyc.
+ * @param string $file
+ * @return array
+ */
+ public function loadFile ($file) {
+ return $this->__load($file);
+ }
+
+ /**
+ * Load YAML into a PHP array statically
+ *
+ * The load method, when supplied with a YAML stream (string or file),
+ * will do its best to convert YAML in a file into a PHP array. Pretty
+ * simple.
+ * Usage:
+ * <code>
+ * $array = Spyc::YAMLLoad('lucky.yaml');
+ * print_r($array);
+ * </code>
+ * @access public
+ * @return array
+ * @param string $input Path of YAML file or string containing YAML
+ */
+ public static function YAMLLoad($input) {
+ $Spyc = new Spyc;
+ return $Spyc->__load($input);
+ }
+
+ /**
+ * Load a string of YAML into a PHP array statically
+ *
+ * The load method, when supplied with a YAML string, will do its best
+ * to convert YAML in a string into a PHP array. Pretty simple.
+ *
+ * Note: use this function if you don't want files from the file system
+ * loaded and processed as YAML. This is of interest to people concerned
+ * about security whose input is from a string.
+ *
+ * Usage:
+ * <code>
+ * $array = Spyc::YAMLLoadString("---\n0: hello world\n");
+ * print_r($array);
+ * </code>
+ * @access public
+ * @return array
+ * @param string $input String containing YAML
+ */
+ public static function YAMLLoadString($input) {
+ $Spyc = new Spyc;
+ return $Spyc->__loadString($input);
+ }
+
+ /**
+ * Dump YAML from PHP array statically
+ *
+ * The dump method, when supplied with an array, will do its best
+ * to convert the array into friendly YAML. Pretty simple. Feel free to
+ * save the returned string as nothing.yaml and pass it around.
+ *
+ * Oh, and you can decide how big the indent is and what the wordwrap
+ * for folding is. Pretty cool -- just pass in 'false' for either if
+ * you want to use the default.
+ *
+ * Indent's default is 2 spaces, wordwrap's default is 40 characters. And
+ * you can turn off wordwrap by passing in 0.
+ *
+ * @access public
+ * @return string
+ * @param array $array PHP array
+ * @param int $indent Pass in false to use the default, which is 2
+ * @param int $wordwrap Pass in 0 for no wordwrap, false for default (40)
+ * @param int $no_opening_dashes Do not start YAML file with "---\n"
+ */
+ public static function YAMLDump($array, $indent = false, $wordwrap = false, $no_opening_dashes = false) {
+ $spyc = new Spyc;
+ return $spyc->dump($array, $indent, $wordwrap, $no_opening_dashes);
+ }
+
+
+ /**
+ * Dump PHP array to YAML
+ *
+ * The dump method, when supplied with an array, will do its best
+ * to convert the array into friendly YAML. Pretty simple. Feel free to
+ * save the returned string as tasteful.yaml and pass it around.
+ *
+ * Oh, and you can decide how big the indent is and what the wordwrap
+ * for folding is. Pretty cool -- just pass in 'false' for either if
+ * you want to use the default.
+ *
+ * Indent's default is 2 spaces, wordwrap's default is 40 characters. And
+ * you can turn off wordwrap by passing in 0.
+ *
+ * @access public
+ * @return string
+ * @param array $array PHP array
+ * @param int $indent Pass in false to use the default, which is 2
+ * @param int $wordwrap Pass in 0 for no wordwrap, false for default (40)
+ */
+ public function dump($array,$indent = false,$wordwrap = false, $no_opening_dashes = false) {
+ // Dumps to some very clean YAML. We'll have to add some more features
+ // and options soon. And better support for folding.
+
+ // New features and options.
+ if ($indent === false or !is_numeric($indent)) {
+ $this->_dumpIndent = 2;
+ } else {
+ $this->_dumpIndent = $indent;
+ }
+
+ if ($wordwrap === false or !is_numeric($wordwrap)) {
+ $this->_dumpWordWrap = 40;
+ } else {
+ $this->_dumpWordWrap = $wordwrap;
+ }
+
+ // New YAML document
+ $string = "";
+ if (!$no_opening_dashes) $string = "---\n";
+
+ // Start at the base of the array and move through it.
+ if ($array) {
+ $array = (array)$array;
+ $previous_key = -1;
+ foreach ($array as $key => $value) {
+ if (!isset($first_key)) $first_key = $key;
+ $string .= $this->_yamlize($key,$value,0,$previous_key, $first_key, $array);
+ $previous_key = $key;
+ }
+ }
+ return $string;
+ }
+
+ /**
+ * Attempts to convert a key / value array item to YAML
+ * @access private
+ * @return string
+ * @param $key The name of the key
+ * @param $value The value of the item
+ * @param $indent The indent of the current node
+ */
+ private function _yamlize($key,$value,$indent, $previous_key = -1, $first_key = 0, $source_array = null) {
+ if (is_array($value)) {
+ if (empty ($value))
+ return $this->_dumpNode($key, array(), $indent, $previous_key, $first_key, $source_array);
+ // It has children. What to do?
+ // Make it the right kind of item
+ $string = $this->_dumpNode($key, self::REMPTY, $indent, $previous_key, $first_key, $source_array);
+ // Add the indent
+ $indent += $this->_dumpIndent;
+ // Yamlize the array
+ $string .= $this->_yamlizeArray($value,$indent);
+ } elseif (!is_array($value)) {
+ // It doesn't have children. Yip.
+ $string = $this->_dumpNode($key, $value, $indent, $previous_key, $first_key, $source_array);
+ }
+ return $string;
+ }
+
+ /**
+ * Attempts to convert an array to YAML
+ * @access private
+ * @return string
+ * @param $array The array you want to convert
+ * @param $indent The indent of the current level
+ */
+ private function _yamlizeArray($array,$indent) {
+ if (is_array($array)) {
+ $string = '';
+ $previous_key = -1;
+ foreach ($array as $key => $value) {
+ if (!isset($first_key)) $first_key = $key;
+ $string .= $this->_yamlize($key, $value, $indent, $previous_key, $first_key, $array);
+ $previous_key = $key;
+ }
+ return $string;
+ } else {
+ return false;
+ }
+ }
+
+ /**
+ * Returns YAML from a key and a value
+ * @access private
+ * @return string
+ * @param $key The name of the key
+ * @param $value The value of the item
+ * @param $indent The indent of the current node
+ */
+ private function _dumpNode($key, $value, $indent, $previous_key = -1, $first_key = 0, $source_array = null) {
+ // do some folding here, for blocks
+ if (is_string ($value) && ((strpos($value,"\n") !== false || strpos($value,": ") !== false || strpos($value,"- ") !== false ||
+ strpos($value,"*") !== false || strpos($value,"#") !== false || strpos($value,"<") !== false || strpos($value,">") !== false || strpos ($value, ' ') !== false ||
+ strpos($value,"[") !== false || strpos($value,"]") !== false || strpos($value,"{") !== false || strpos($value,"}") !== false) || strpos($value,"&") !== false || strpos($value, "'") !== false || strpos($value, "!") === 0 ||
+ substr ($value, -1, 1) == ':')
+ ) {
+ $value = $this->_doLiteralBlock($value,$indent);
+ } else {
+ $value = $this->_doFolding($value,$indent);
+ }
+
+ if ($value === array()) $value = '[ ]';
+ if ($value === "") $value = '""';
+ if (self::isTranslationWord($value)) {
+ $value = $this->_doLiteralBlock($value, $indent);
+ }
+ if (trim ($value) != $value)
+ $value = $this->_doLiteralBlock($value,$indent);
+
+ if (is_bool($value)) {
+ $value = $value ? "true" : "false";
+ }
+
+ if ($value === null) $value = 'null';
+ if ($value === "'" . self::REMPTY . "'") $value = null;
+
+ $spaces = str_repeat(' ',$indent);
+
+ //if (is_int($key) && $key - 1 == $previous_key && $first_key===0) {
+ if (is_array ($source_array) && array_keys($source_array) === range(0, count($source_array) - 1)) {
+ // It's a sequence
+ $string = $spaces.'- '.$value."\n";
+ } else {
+ // if ($first_key===0) throw new Exception('Keys are all screwy. The first one was zero, now it\'s "'. $key .'"');
+ // It's mapped
+ if (strpos($key, ":") !== false || strpos($key, "#") !== false) { $key = '"' . $key . '"'; }
+ $string = rtrim ($spaces.$key.': '.$value)."\n";
+ }
+ return $string;
+ }
+
+ /**
+ * Creates a literal block for dumping
+ * @access private
+ * @return string
+ * @param $value
+ * @param $indent int The value of the indent
+ */
+ private function _doLiteralBlock($value,$indent) {
+ if ($value === "\n") return '\n';
+ if (strpos($value, "\n") === false && strpos($value, "'") === false) {
+ return sprintf ("'%s'", $value);
+ }
+ if (strpos($value, "\n") === false && strpos($value, '"') === false) {
+ return sprintf ('"%s"', $value);
+ }
+ $exploded = explode("\n",$value);
+ $newValue = '|';
+ $indent += $this->_dumpIndent;
+ $spaces = str_repeat(' ',$indent);
+ foreach ($exploded as $line) {
+ $newValue .= "\n" . $spaces . ($line);
+ }
+ return $newValue;
+ }
+
+ /**
+ * Folds a string of text, if necessary
+ * @access private
+ * @return string
+ * @param $value The string you wish to fold
+ */
+ private function _doFolding($value,$indent) {
+ // Don't do anything if wordwrap is set to 0
+
+ if ($this->_dumpWordWrap !== 0 && is_string ($value) && strlen($value) > $this->_dumpWordWrap) {
+ $indent += $this->_dumpIndent;
+ $indent = str_repeat(' ',$indent);
+ $wrapped = wordwrap($value,$this->_dumpWordWrap,"\n$indent");
+ $value = ">\n".$indent.$wrapped;
+ } else {
+ if ($this->setting_dump_force_quotes && is_string ($value) && $value !== self::REMPTY)
+ $value = '"' . $value . '"';
+ if (is_numeric($value) && is_string($value))
+ $value = '"' . $value . '"';
+ }
+
+
+ return $value;
+ }
+
+ private function isTrueWord($value) {
+ $words = self::getTranslations(array('true', 'on', 'yes', 'y'));
+ return in_array($value, $words, true);
+ }
+
+ private function isFalseWord($value) {
+ $words = self::getTranslations(array('false', 'off', 'no', 'n'));
+ return in_array($value, $words, true);
+ }
+
+ private function isNullWord($value) {
+ $words = self::getTranslations(array('null', '~'));
+ return in_array($value, $words, true);
+ }
+
+ private function isTranslationWord($value) {
+ return (
+ self::isTrueWord($value) ||
+ self::isFalseWord($value) ||
+ self::isNullWord($value)
+ );
+ }
+
+ /**
+ * Coerce a string into a native type
+ * Reference: http://yaml.org/type/bool.html
+ * TODO: Use only words from the YAML spec.
+ * @access private
+ * @param $value The value to coerce
+ */
+ private function coerceValue(&$value) {
+ if (self::isTrueWord($value)) {
+ $value = true;
+ } else if (self::isFalseWord($value)) {
+ $value = false;
+ } else if (self::isNullWord($value)) {
+ $value = null;
+ }
+ }
+
+ /**
+ * Given a set of words, perform the appropriate translations on them to
+ * match the YAML 1.1 specification for type coercing.
+ * @param $words The words to translate
+ * @access private
+ */
+ private static function getTranslations(array $words) {
+ $result = array();
+ foreach ($words as $i) {
+ $result = array_merge($result, array(ucfirst($i), strtoupper($i), strtolower($i)));
+ }
+ return $result;
+ }
+
+// LOADING FUNCTIONS
+
+ private function __load($input) {
+ $Source = $this->loadFromSource($input);
+ return $this->loadWithSource($Source);
+ }
+
+ private function __loadString($input) {
+ $Source = $this->loadFromString($input);
+ return $this->loadWithSource($Source);
+ }
+
+ private function loadWithSource($Source) {
+ if (empty ($Source)) return array();
+ if ($this->setting_use_syck_is_possible && function_exists ('syck_load')) {
+ $array = syck_load (implode ("\n", $Source));
+ return is_array($array) ? $array : array();
+ }
+
+ $this->path = array();
+ $this->result = array();
+
+ $cnt = count($Source);
+ for ($i = 0; $i < $cnt; $i++) {
+ $line = $Source[$i];
+
+ $this->indent = strlen($line) - strlen(ltrim($line));
+ $tempPath = $this->getParentPathByIndent($this->indent);
+ $line = self::stripIndent($line, $this->indent);
+ if (self::isComment($line)) continue;
+ if (self::isEmpty($line)) continue;
+ $this->path = $tempPath;
+
+ $literalBlockStyle = self::startsLiteralBlock($line);
+ if ($literalBlockStyle) {
+ $line = rtrim ($line, $literalBlockStyle . " \n");
+ $literalBlock = '';
+ $line .= ' '.$this->LiteralPlaceHolder;
+ $literal_block_indent = strlen($Source[$i+1]) - strlen(ltrim($Source[$i+1]));
+ while (++$i < $cnt && $this->literalBlockContinues($Source[$i], $this->indent)) {
+ $literalBlock = $this->addLiteralLine($literalBlock, $Source[$i], $literalBlockStyle, $literal_block_indent);
+ }
+ $i--;
+ }
+
+ // Strip out comments
+ if (strpos ($line, '#')) {
+ $line = preg_replace('/\s*#([^"\']+)$/','',$line);
+ }
+
+ while (++$i < $cnt && self::greedilyNeedNextLine($line)) {
+ $line = rtrim ($line, " \n\t\r") . ' ' . ltrim ($Source[$i], " \t");
+ }
+ $i--;
+
+ $lineArray = $this->_parseLine($line);
+
+ if ($literalBlockStyle)
+ $lineArray = $this->revertLiteralPlaceHolder ($lineArray, $literalBlock);
+
+ $this->addArray($lineArray, $this->indent);
+
+ foreach ($this->delayedPath as $indent => $delayedPath)
+ $this->path[$indent] = $delayedPath;
+
+ $this->delayedPath = array();
+
+ }
+ return $this->result;
+ }
+
+ private function loadFromSource ($input) {
+ if (!empty($input) && strpos($input, "\n") === false && file_exists($input))
+ $input = file_get_contents($input);
+
+ return $this->loadFromString($input);
+ }
+
+ private function loadFromString ($input) {
+ $lines = explode("\n",$input);
+ foreach ($lines as $k => $_) {
+ $lines[$k] = rtrim ($_, "\r");
+ }
+ return $lines;
+ }
+
+ /**
+ * Parses YAML code and returns an array for a node
+ * @access private
+ * @return array
+ * @param string $line A line from the YAML file
+ */
+ private function _parseLine($line) {
+ if (!$line) return array();
+ $line = trim($line);
+ if (!$line) return array();
+
+ $array = array();
+
+ $group = $this->nodeContainsGroup($line);
+ if ($group) {
+ $this->addGroup($line, $group);
+ $line = $this->stripGroup ($line, $group);
+ }
+
+ if ($this->startsMappedSequence($line))
+ return $this->returnMappedSequence($line);
+
+ if ($this->startsMappedValue($line))
+ return $this->returnMappedValue($line);
+
+ if ($this->isArrayElement($line))
+ return $this->returnArrayElement($line);
+
+ if ($this->isPlainArray($line))
+ return $this->returnPlainArray($line);
+
+
+ return $this->returnKeyValuePair($line);
+
+ }
+
+ /**
+ * Finds the type of the passed value, returns the value as the new type.
+ * @access private
+ * @param string $value
+ * @return mixed
+ */
+ private function _toType($value) {
+ if ($value === '') return "";
+ $first_character = $value[0];
+ $last_character = substr($value, -1, 1);
+
+ $is_quoted = false;
+ do {
+ if (!$value) break;
+ if ($first_character != '"' && $first_character != "'") break;
+ if ($last_character != '"' && $last_character != "'") break;
+ $is_quoted = true;
+ } while (0);
+
+ if ($is_quoted) {
+ $value = str_replace('\n', "\n", $value);
+ return strtr(substr ($value, 1, -1), array ('\\"' => '"', '\'\'' => '\'', '\\\'' => '\''));
+ }
+
+ if (strpos($value, ' #') !== false && !$is_quoted)
+ $value = preg_replace('/\s+#(.+)$/','',$value);
+
+ if ($first_character == '[' && $last_character == ']') {
+ // Take out strings sequences and mappings
+ $innerValue = trim(substr ($value, 1, -1));
+ if ($innerValue === '') return array();
+ $explode = $this->_inlineEscape($innerValue);
+ // Propagate value array
+ $value = array();
+ foreach ($explode as $v) {
+ $value[] = $this->_toType($v);
+ }
+ return $value;
+ }
+
+ if (strpos($value,': ')!==false && $first_character != '{') {
+ $array = explode(': ',$value);
+ $key = trim($array[0]);
+ array_shift($array);
+ $value = trim(implode(': ',$array));
+ $value = $this->_toType($value);
+ return array($key => $value);
+ }
+
+ if ($first_character == '{' && $last_character == '}') {
+ $innerValue = trim(substr ($value, 1, -1));
+ if ($innerValue === '') return array();
+ // Inline Mapping
+ // Take out strings sequences and mappings
+ $explode = $this->_inlineEscape($innerValue);
+ // Propagate value array
+ $array = array();
+ foreach ($explode as $v) {
+ $SubArr = $this->_toType($v);
+ if (empty($SubArr)) continue;
+ if (is_array ($SubArr)) {
+ $array[key($SubArr)] = $SubArr[key($SubArr)]; continue;
+ }
+ $array[] = $SubArr;
+ }
+ return $array;
+ }
+
+ if ($value == 'null' || $value == 'NULL' || $value == 'Null' || $value == '' || $value == '~') {
+ return null;
+ }
+
+ if ( is_numeric($value) && preg_match ('/^(-|)[1-9]+[0-9]*$/', $value) ){
+ $intvalue = (int)$value;
+ if ($intvalue != PHP_INT_MAX)
+ $value = $intvalue;
+ return $value;
+ }
+
+ if (is_numeric($value) && preg_match('/^0[xX][0-9a-fA-F]+$/', $value)) {
+ // Hexadecimal value.
+ return hexdec($value);
+ }
+
+ $this->coerceValue($value);
+
+ if (is_numeric($value)) {
+ if ($value === '0') return 0;
+ if (rtrim ($value, 0) === $value)
+ $value = (float)$value;
+ return $value;
+ }
+
+ return $value;
+ }
+
+ /**
+ * Used in inlines to check for more inlines or quoted strings
+ * @access private
+ * @return array
+ */
+ private function _inlineEscape($inline) {
+ // There's gotta be a cleaner way to do this...
+ // While pure sequences seem to be nesting just fine,
+ // pure mappings and mappings with sequences inside can't go very
+ // deep. This needs to be fixed.
+
+ $seqs = array();
+ $maps = array();
+ $saved_strings = array();
+ $saved_empties = array();
+
+ // Check for empty strings
+ $regex = '/("")|(\'\')/';
+ if (preg_match_all($regex,$inline,$strings)) {
+ $saved_empties = $strings[0];
+ $inline = preg_replace($regex,'YAMLEmpty',$inline);
+ }
+ unset($regex);
+
+ // Check for strings
+ $regex = '/(?:(")|(?:\'))((?(1)[^"]+|[^\']+))(?(1)"|\')/';
+ if (preg_match_all($regex,$inline,$strings)) {
+ $saved_strings = $strings[0];
+ $inline = preg_replace($regex,'YAMLString',$inline);
+ }
+ unset($regex);
+
+ // echo $inline;
+
+ $i = 0;
+ do {
+
+ // Check for sequences
+ while (preg_match('/\[([^{}\[\]]+)\]/U',$inline,$matchseqs)) {
+ $seqs[] = $matchseqs[0];
+ $inline = preg_replace('/\[([^{}\[\]]+)\]/U', ('YAMLSeq' . (count($seqs) - 1) . 's'), $inline, 1);
+ }
+
+ // Check for mappings
+ while (preg_match('/{([^\[\]{}]+)}/U',$inline,$matchmaps)) {
+ $maps[] = $matchmaps[0];
+ $inline = preg_replace('/{([^\[\]{}]+)}/U', ('YAMLMap' . (count($maps) - 1) . 's'), $inline, 1);
+ }
+
+ if ($i++ >= 10) break;
+
+ } while (strpos ($inline, '[') !== false || strpos ($inline, '{') !== false);
+
+ $explode = explode(',',$inline);
+ $explode = array_map('trim', $explode);
+ $stringi = 0; $i = 0;
+
+ while (1) {
+
+ // Re-add the sequences
+ if (!empty($seqs)) {
+ foreach ($explode as $key => $value) {
+ if (strpos($value,'YAMLSeq') !== false) {
+ foreach ($seqs as $seqk => $seq) {
+ $explode[$key] = str_replace(('YAMLSeq'.$seqk.'s'),$seq,$value);
+ $value = $explode[$key];
+ }
+ }
+ }
+ }
+
+ // Re-add the mappings
+ if (!empty($maps)) {
+ foreach ($explode as $key => $value) {
+ if (strpos($value,'YAMLMap') !== false) {
+ foreach ($maps as $mapk => $map) {
+ $explode[$key] = str_replace(('YAMLMap'.$mapk.'s'), $map, $value);
+ $value = $explode[$key];
+ }
+ }
+ }
+ }
+
+
+ // Re-add the strings
+ if (!empty($saved_strings)) {
+ foreach ($explode as $key => $value) {
+ while (strpos($value,'YAMLString') !== false) {
+ $explode[$key] = preg_replace('/YAMLString/',$saved_strings[$stringi],$value, 1);
+ unset($saved_strings[$stringi]);
+ ++$stringi;
+ $value = $explode[$key];
+ }
+ }
+ }
+
+
+ // Re-add the empties
+ if (!empty($saved_empties)) {
+ foreach ($explode as $key => $value) {
+ while (strpos($value,'YAMLEmpty') !== false) {
+ $explode[$key] = preg_replace('/YAMLEmpty/', '', $value, 1);
+ $value = $explode[$key];
+ }
+ }
+ }
+
+ $finished = true;
+ foreach ($explode as $key => $value) {
+ if (strpos($value,'YAMLSeq') !== false) {
+ $finished = false; break;
+ }
+ if (strpos($value,'YAMLMap') !== false) {
+ $finished = false; break;
+ }
+ if (strpos($value,'YAMLString') !== false) {
+ $finished = false; break;
+ }
+ if (strpos($value,'YAMLEmpty') !== false) {
+ $finished = false; break;
+ }
+ }
+ if ($finished) break;
+
+ $i++;
+ if ($i > 10)
+ break; // Prevent infinite loops.
+ }
+
+
+ return $explode;
+ }
+
+ private function literalBlockContinues ($line, $lineIndent) {
+ if (!trim($line)) return true;
+ if (strlen($line) - strlen(ltrim($line)) > $lineIndent) return true;
+ return false;
+ }
+
+ private function referenceContentsByAlias ($alias) {
+ do {
+ if (!isset($this->SavedGroups[$alias])) { echo "Bad group name: $alias."; break; }
+ $groupPath = $this->SavedGroups[$alias];
+ $value = $this->result;
+ foreach ($groupPath as $k) {
+ $value = $value[$k];
+ }
+ } while (false);
+ return $value;
+ }
+
+ private function addArrayInline ($array, $indent) {
+ $CommonGroupPath = $this->path;
+ if (empty ($array)) return false;
+
+ foreach ($array as $k => $_) {
+ $this->addArray(array($k => $_), $indent);
+ $this->path = $CommonGroupPath;
+ }
+ return true;
+ }
+
+ private function addArray ($incoming_data, $incoming_indent) {
+
+ // print_r ($incoming_data);
+
+ if (count ($incoming_data) > 1)
+ return $this->addArrayInline ($incoming_data, $incoming_indent);
+
+ $key = key ($incoming_data);
+ $value = isset($incoming_data[$key]) ? $incoming_data[$key] : null;
+ if ($key === '__!YAMLZero') $key = '0';
+
+ if ($incoming_indent == 0 && !$this->_containsGroupAlias && !$this->_containsGroupAnchor) { // Shortcut for root-level values.
+ if ($key || $key === '' || $key === '0') {
+ $this->result[$key] = $value;
+ } else {
+ $this->result[] = $value; end ($this->result); $key = key ($this->result);
+ }
+ $this->path[$incoming_indent] = $key;
+ return;
+ }
+
+
+
+ $history = array();
+ // Unfolding inner array tree.
+ $history[] = $_arr = $this->result;
+ foreach ($this->path as $k) {
+ $history[] = $_arr = $_arr[$k];
+ }
+
+ if ($this->_containsGroupAlias) {
+ $value = $this->referenceContentsByAlias($this->_containsGroupAlias);
+ $this->_containsGroupAlias = false;
+ }
+
+
+ // Adding string or numeric key to the innermost level or $this->arr.
+ if (is_string($key) && $key == '<<') {
+ if (!is_array ($_arr)) { $_arr = array (); }
+
+ $_arr = array_merge ($_arr, $value);
+ } else if ($key || $key === '' || $key === '0') {
+ if (!is_array ($_arr))
+ $_arr = array ($key=>$value);
+ else
+ $_arr[$key] = $value;
+ } else {
+ if (!is_array ($_arr)) { $_arr = array ($value); $key = 0; }
+ else { $_arr[] = $value; end ($_arr); $key = key ($_arr); }
+ }
+
+ $reverse_path = array_reverse($this->path);
+ $reverse_history = array_reverse ($history);
+ $reverse_history[0] = $_arr;
+ $cnt = count($reverse_history) - 1;
+ for ($i = 0; $i < $cnt; $i++) {
+ $reverse_history[$i+1][$reverse_path[$i]] = $reverse_history[$i];
+ }
+ $this->result = $reverse_history[$cnt];
+
+ $this->path[$incoming_indent] = $key;
+
+ if ($this->_containsGroupAnchor) {
+ $this->SavedGroups[$this->_containsGroupAnchor] = $this->path;
+ if (is_array ($value)) {
+ $k = key ($value);
+ if (!is_int ($k)) {
+ $this->SavedGroups[$this->_containsGroupAnchor][$incoming_indent + 2] = $k;
+ }
+ }
+ $this->_containsGroupAnchor = false;
+ }
+
+ }
+
+ private static function startsLiteralBlock ($line) {
+ $lastChar = substr (trim($line), -1);
+ if ($lastChar != '>' && $lastChar != '|') return false;
+ if ($lastChar == '|') return $lastChar;
+ // HTML tags should not be counted as literal blocks.
+ if (preg_match ('#<.*?>$#', $line)) return false;
+ return $lastChar;
+ }
+
+ private static function greedilyNeedNextLine($line) {
+ $line = trim ($line);
+ if (!strlen($line)) return false;
+ if (substr ($line, -1, 1) == ']') return false;
+ if ($line[0] == '[') return true;
+ if (preg_match ('#^[^:]+?:\s*\[#', $line)) return true;
+ return false;
+ }
+
+ private function addLiteralLine ($literalBlock, $line, $literalBlockStyle, $indent = -1) {
+ $line = self::stripIndent($line, $indent);
+ if ($literalBlockStyle !== '|') {
+ $line = self::stripIndent($line);
+ }
+ $line = rtrim ($line, "\r\n\t ") . "\n";
+ if ($literalBlockStyle == '|') {
+ return $literalBlock . $line;
+ }
+ if (strlen($line) == 0)
+ return rtrim($literalBlock, ' ') . "\n";
+ if ($line == "\n" && $literalBlockStyle == '>') {
+ return rtrim ($literalBlock, " \t") . "\n";
+ }
+ if ($line != "\n")
+ $line = trim ($line, "\r\n ") . " ";
+ return $literalBlock . $line;
+ }
+
+ function revertLiteralPlaceHolder ($lineArray, $literalBlock) {
+ foreach ($lineArray as $k => $_) {
+ if (is_array($_))
+ $lineArray[$k] = $this->revertLiteralPlaceHolder ($_, $literalBlock);
+ else if (substr($_, -1 * strlen ($this->LiteralPlaceHolder)) == $this->LiteralPlaceHolder)
+ $lineArray[$k] = rtrim ($literalBlock, " \r\n");
+ }
+ return $lineArray;
+ }
+
+ private static function stripIndent ($line, $indent = -1) {
+ if ($indent == -1) $indent = strlen($line) - strlen(ltrim($line));
+ return substr ($line, $indent);
+ }
+
+ private function getParentPathByIndent ($indent) {
+ if ($indent == 0) return array();
+ $linePath = $this->path;
+ do {
+ end($linePath); $lastIndentInParentPath = key($linePath);
+ if ($indent <= $lastIndentInParentPath) array_pop ($linePath);
+ } while ($indent <= $lastIndentInParentPath);
+ return $linePath;
+ }
+
+
+ private function clearBiggerPathValues ($indent) {
+
+
+ if ($indent == 0) $this->path = array();
+ if (empty ($this->path)) return true;
+
+ foreach ($this->path as $k => $_) {
+ if ($k > $indent) unset ($this->path[$k]);
+ }
+
+ return true;
+ }
+
+
+ private static function isComment ($line) {
+ if (!$line) return false;
+ if ($line[0] == '#') return true;
+ if (trim($line, " \r\n\t") == '---') return true;
+ return false;
+ }
+
+ private static function isEmpty ($line) {
+ return (trim ($line) === '');
+ }
+
+
+ private function isArrayElement ($line) {
+ if (!$line || !is_scalar($line)) return false;
+ if (substr($line, 0, 2) != '- ') return false;
+ if (strlen ($line) > 3)
+ if (substr($line,0,3) == '---') return false;
+
+ return true;
+ }
+
+ private function isHashElement ($line) {
+ return strpos($line, ':');
+ }
+
+ private function isLiteral ($line) {
+ if ($this->isArrayElement($line)) return false;
+ if ($this->isHashElement($line)) return false;
+ return true;
+ }
+
+
+ private static function unquote ($value) {
+ if (!$value) return $value;
+ if (!is_string($value)) return $value;
+ if ($value[0] == '\'') return trim ($value, '\'');
+ if ($value[0] == '"') return trim ($value, '"');
+ return $value;
+ }
+
+ private function startsMappedSequence ($line) {
+ return (substr($line, 0, 2) == '- ' && substr ($line, -1, 1) == ':');
+ }
+
+ private function returnMappedSequence ($line) {
+ $array = array();
+ $key = self::unquote(trim(substr($line,1,-1)));
+ $array[$key] = array();
+ $this->delayedPath = array(strpos ($line, $key) + $this->indent => $key);
+ return array($array);
+ }
+
+ private function checkKeysInValue($value) {
+ if (strchr('[{"\'', $value[0]) === false) {
+ if (strchr($value, ': ') !== false) {
+ throw new Exception('Too many keys: '.$value);
+ }
+ }
+ }
+
+ private function returnMappedValue ($line) {
+ $this->checkKeysInValue($line);
+ $array = array();
+ $key = self::unquote (trim(substr($line,0,-1)));
+ $array[$key] = '';
+ return $array;
+ }
+
+ private function startsMappedValue ($line) {
+ return (substr ($line, -1, 1) == ':');
+ }
+
+ private function isPlainArray ($line) {
+ return ($line[0] == '[' && substr ($line, -1, 1) == ']');
+ }
+
+ private function returnPlainArray ($line) {
+ return $this->_toType($line);
+ }
+
+ private function returnKeyValuePair ($line) {
+ $array = array();
+ $key = '';
+ if (strpos ($line, ': ')) {
+ // It's a key/value pair most likely
+ // If the key is in double quotes pull it out
+ if (($line[0] == '"' || $line[0] == "'") && preg_match('/^(["\'](.*)["\'](\s)*:)/',$line,$matches)) {
+ $value = trim(str_replace($matches[1],'',$line));
+ $key = $matches[2];
+ } else {
+ // Do some guesswork as to the key and the value
+ $explode = explode(': ', $line);
+ $key = trim(array_shift($explode));
+ $value = trim(implode(': ', $explode));
+ $this->checkKeysInValue($value);
+ }
+ // Set the type of the value. Int, string, etc
+ $value = $this->_toType($value);
+ if ($key === '0') $key = '__!YAMLZero';
+ $array[$key] = $value;
+ } else {
+ $array = array ($line);
+ }
+ return $array;
+
+ }
+
+
+ private function returnArrayElement ($line) {
+ if (strlen($line) <= 1) return array(array()); // Weird %)
+ $array = array();
+ $value = trim(substr($line,1));
+ $value = $this->_toType($value);
+ if ($this->isArrayElement($value)) {
+ $value = $this->returnArrayElement($value);
+ }
+ $array[] = $value;
+ return $array;
+ }
+
+
+ private function nodeContainsGroup ($line) {
+ $symbolsForReference = 'A-z0-9_\-';
+ if (strpos($line, '&') === false && strpos($line, '*') === false) return false; // Please die fast ;-)
+ if ($line[0] == '&' && preg_match('/^(&['.$symbolsForReference.']+)/', $line, $matches)) return $matches[1];
+ if ($line[0] == '*' && preg_match('/^(\*['.$symbolsForReference.']+)/', $line, $matches)) return $matches[1];
+ if (preg_match('/(&['.$symbolsForReference.']+)$/', $line, $matches)) return $matches[1];
+ if (preg_match('/(\*['.$symbolsForReference.']+$)/', $line, $matches)) return $matches[1];
+ if (preg_match ('#^\s*<<\s*:\s*(\*[^\s]+).*$#', $line, $matches)) return $matches[1];
+ return false;
+
+ }
+
+ private function addGroup ($line, $group) {
+ if ($group[0] == '&') $this->_containsGroupAnchor = substr ($group, 1);
+ if ($group[0] == '*') $this->_containsGroupAlias = substr ($group, 1);
+ //print_r ($this->path);
+ }
+
+ private function stripGroup ($line, $group) {
+ $line = trim(str_replace($group, '', $line));
+ return $line;
+ }
+}
+
+// Enable use of Spyc from command line
+// The syntax is the following: php Spyc.php spyc.yaml
+
+do {
+ if (PHP_SAPI != 'cli') break;
+ if (empty ($_SERVER['argc']) || $_SERVER['argc'] < 2) break;
+ if (empty ($_SERVER['PHP_SELF']) || FALSE === strpos ($_SERVER['PHP_SELF'], 'Spyc.php') ) break;
+ $file = $argv[1];
+ echo json_encode (spyc_load_file ($file));
+} while (0);
diff --git a/MLEB/Translate/messagegroups/AggregateMessageGroup.php b/MLEB/Translate/messagegroups/AggregateMessageGroup.php
new file mode 100644
index 00000000..f1a1eb94
--- /dev/null
+++ b/MLEB/Translate/messagegroups/AggregateMessageGroup.php
@@ -0,0 +1,178 @@
+<?php
+/**
+ * This file a contains a message group implementation.
+ *
+ * @file
+ * @author Niklas Laxström
+ * @copyright Copyright © 2010-2013, Niklas Laxström
+ * @license GPL-2.0+
+ */
+
+/**
+ * Groups multiple message groups together as one big group.
+ *
+ * Limitations:
+ * - Only groups in the same namespace.
+ * @ingroup MessageGroup
+ */
+class AggregateMessageGroup extends MessageGroupBase {
+ public function exists() {
+ // Group exists if there are any subgroups.
+ $exists = (bool)$this->conf['GROUPS'];
+
+ return $exists;
+ }
+
+ public function load( $code ) {
+ $messages = array();
+
+ /**
+ * @var $group MessageGroup
+ */
+ foreach ( $this->getGroups() as $group ) {
+ $messages += $group->load( $code );
+ }
+
+ return $messages;
+ }
+
+ public function getMangler() {
+ if ( !isset( $this->mangler ) ) {
+ $this->mangler = StringMatcher::emptyMatcher();
+ }
+
+ return $this->mangler;
+ }
+
+ public function getGroups() {
+ if ( !isset( $this->groups ) ) {
+ $groups = array();
+ $ids = (array)$this->conf['GROUPS'];
+ $ids = MessageGroups::expandWildcards( $ids );
+
+ foreach ( $ids as $id ) {
+ // Do not try to include self and go to infinite loop.
+ if ( $id === $this->getId() ) {
+ continue;
+ }
+
+ $group = MessageGroups::getGroup( $id );
+ if ( $group === null ) {
+ error_log( "Invalid group id in {$this->getId()}: $id" );
+ continue;
+ }
+
+ if ( MessageGroups::getPriority( $group ) === 'discouraged' ) {
+ continue;
+ }
+
+ $groups[$id] = $group;
+ }
+
+ $this->groups = $groups;
+ }
+
+ return $this->groups;
+ }
+
+ protected function loadMessagesFromCache( $groups ) {
+ $messages = array();
+ foreach ( $groups as $group ) {
+ if ( $group instanceof MessageGroupOld ) {
+ $messages += $group->getDefinitions();
+ continue;
+ }
+
+ if ( $group instanceof AggregateMessageGroup ) {
+ $messages += $this->loadMessagesFromCache( $group->getGroups() );
+ continue;
+ }
+
+ $cache = new MessageGroupCache( $group );
+ if ( $cache->exists() ) {
+ foreach ( $cache->getKeys() as $key ) {
+ $messages[$key] = $cache->get( $key );
+ }
+ }
+ }
+
+ return $messages;
+ }
+
+ public function initCollection( $code ) {
+ $messages = $this->loadMessagesFromCache( $this->getGroups() );
+ $namespace = $this->getNamespace();
+ $definitions = new MessageDefinitions( $messages, $namespace );
+ $collection = MessageCollection::newFromDefinitions( $definitions, $code );
+
+ $this->setTags( $collection );
+
+ return $collection;
+ }
+
+ /**
+ * @param string $key Message key
+ * @param string $code Language code
+ * @return null|string
+ */
+ public function getMessage( $key, $code ) {
+ /* Just hand over the message content retrieval to the primary message
+ * group directly. This used to iterate over the subgroups looking for
+ * the primary group, but that might actually be under some other
+ * aggregate message group.
+ * @todo Implement getMessageContent to avoid hardcoding the namespace
+ * here.
+ */
+ $title = Title::makeTitle( $this->getNamespace(), $key );
+ $handle = new MessageHandle( $title );
+ $groupId = MessageIndex::getPrimaryGroupId( $handle );
+ if ( $groupId === $this->getId() ) {
+ // Message key owned by aggregate group.
+ // Should not ever happen, but it does.
+ error_log( "AggregateMessageGroup $groupId cannot be primary owner of key $key" );
+
+ return null;
+ }
+
+ $group = MessageGroups::getGroup( $groupId );
+ if ( $group ) {
+ return $group->getMessage( $key, $code );
+ } else {
+ return null;
+ }
+ }
+
+ public function getTags( $type = null ) {
+ $tags = array();
+
+ /**
+ * @var $group MessageGroup
+ */
+ foreach ( $this->getGroups() as $group ) {
+ $tags = array_merge_recursive( $tags, $group->getTags( $type ) );
+ }
+
+ return $tags;
+ }
+
+ public function getKeys() {
+ $keys = array();
+ /**
+ * @var $group MessageGroup
+ */
+ foreach ( $this->getGroups() as $group ) {
+ // @todo Not all oldstyle groups have getKeys yet
+ if ( method_exists( $group, 'getKeys' ) ) {
+ $keys = array_merge( $keys, $group->getKeys() );
+ } else {
+ $keys = array_keys( $group->getDefinitions() );
+ }
+ }
+
+ /* In case some groups are included directly and indirectly
+ * via other subgroup, we might get the same keys multiple
+ * times. Since this is a list we need to remove duplicates
+ * manually */
+ return array_unique( $keys );
+ }
+}
diff --git a/MLEB/Translate/messagegroups/FileBasedMessageGroup.php b/MLEB/Translate/messagegroups/FileBasedMessageGroup.php
new file mode 100644
index 00000000..a25703e4
--- /dev/null
+++ b/MLEB/Translate/messagegroups/FileBasedMessageGroup.php
@@ -0,0 +1,149 @@
+<?php
+/**
+ * This file a contains a message group implementation.
+ *
+ * @file
+ * @author Niklas Laxström
+ * @copyright Copyright © 2010-2013, Niklas Laxström
+ * @license GPL-2.0+
+ */
+
+/**
+ * This class implements default behavior for file based message groups.
+ *
+ * File based message groups are primary type of groups at translatewiki.net,
+ * while other projects may use mainly page translation message groups, or
+ * custom type of message groups.
+ * @ingroup MessageGroup
+ */
+class FileBasedMessageGroup extends MessageGroupBase {
+ protected $reverseCodeMap;
+
+ /**
+ * Constructs a FileBasedMessageGroup from any normal message group.
+ * Useful for doing special Gettext exports from any group.
+ * @param $group MessageGroup
+ * @return FileBasedMessageGroup
+ */
+ public static function newFromMessageGroup( $group ) {
+ $conf = array(
+ 'BASIC' => array(
+ 'class' => 'FileBasedMessageGroup',
+ 'id' => $group->getId(),
+ 'label' => $group->getLabel(),
+ 'namespace' => $group->getNamespace(),
+ ),
+ 'FILES' => array(
+ 'sourcePattern' => '',
+ 'targetPattern' => '',
+ ),
+ );
+
+ return MessageGroupBase::factory( $conf );
+ }
+
+ public function exists() {
+ return $this->getFFS()->exists();
+ }
+
+ public function load( $code ) {
+ /** @var $ffs FFS */
+ $ffs = $this->getFFS();
+ $data = $ffs->read( $code );
+
+ return $data ? $data['MESSAGES'] : array();
+ }
+
+ /**
+ * @param string $code Language code.
+ * @return string
+ * @throws MWException
+ */
+ public function getSourceFilePath( $code ) {
+ if ( $this->isSourceLanguage( $code ) ) {
+ $pattern = $this->getFromConf( 'FILES', 'definitionFile' );
+ if ( $pattern !== null ) {
+ return $this->replaceVariables( $pattern, $code );
+ }
+ }
+
+ $pattern = $this->getFromConf( 'FILES', 'sourcePattern' );
+ if ( $pattern === null ) {
+ throw new MWException( 'No source file pattern defined.' );
+ }
+
+ return $this->replaceVariables( $pattern, $code );
+ }
+
+ public function getTargetFilename( $code ) {
+ // Check if targetPattern explicitly defined
+ $pattern = $this->getFromConf( 'FILES', 'targetPattern' );
+ if ( $pattern !== null ) {
+ return $this->replaceVariables( $pattern, $code );
+ }
+
+ // Check if definitionFile is explicitly defined
+ if ( $this->isSourceLanguage( $code ) ) {
+ $pattern = $this->getFromConf( 'FILES', 'definitionFile' );
+ }
+
+ // Fallback to sourcePattern which must be defined
+ if ( $pattern === null ) {
+ $pattern = $this->getFromConf( 'FILES', 'sourcePattern' );
+ }
+
+ if ( $pattern === null ) {
+ throw new MWException( 'No source file pattern defined.' );
+ }
+
+ // For exports, the scripts take output directory. We want to
+ // return a path where the prefix is current directory instead
+ // of full path of the source location.
+ $pattern = str_replace( '%GROUPROOT%', '.', $pattern );
+ return $this->replaceVariables( $pattern, $code );
+ }
+
+ /**
+ * @param string $pattern
+ * @param string $code Language code.
+ * @return string
+ * @since 2014.02 Made public
+ */
+ public function replaceVariables( $pattern, $code ) {
+ global $IP, $wgTranslateGroupRoot;
+
+ $variables = array(
+ '%CODE%' => $this->mapCode( $code ),
+ '%MWROOT%' => $IP,
+ '%GROUPROOT%' => $wgTranslateGroupRoot,
+ );
+
+ wfRunHooks( 'TranslateMessageGroupPathVariables', array( $this, &$variables ) );
+
+ return str_replace( array_keys( $variables ), array_values( $variables ), $pattern );
+ }
+
+ /**
+ * @param string $code Language code.
+ * @return string
+ */
+ public function mapCode( $code ) {
+ if ( !isset( $this->conf['FILES']['codeMap'] ) ) {
+ return $code;
+ }
+
+ if ( isset( $this->conf['FILES']['codeMap'][$code] ) ) {
+ return $this->conf['FILES']['codeMap'][$code];
+ } else {
+ if ( !isset( $this->reverseCodeMap ) ) {
+ $this->reverseCodeMap = array_flip( $this->conf['FILES']['codeMap'] );
+ }
+
+ if ( isset( $this->reverseCodeMap[$code] ) ) {
+ return 'x-invalidLanguageCode';
+ }
+
+ return $code;
+ }
+ }
+}
diff --git a/MLEB/Translate/messagegroups/MediaWikiExtensionMessageGroup.php b/MLEB/Translate/messagegroups/MediaWikiExtensionMessageGroup.php
new file mode 100644
index 00000000..e44d1d5d
--- /dev/null
+++ b/MLEB/Translate/messagegroups/MediaWikiExtensionMessageGroup.php
@@ -0,0 +1,48 @@
+<?php
+/**
+ * This file a contains a message group implementation.
+ *
+ * @file
+ * @author Niklas Laxström
+ * @license GPL-2.0+
+ */
+
+/**
+ * Message group for %MediaWiki extensions.
+ * @ingroup MessageGroup
+ */
+class MediaWikiExtensionMessageGroup extends FileBasedMessageGroup {
+ /**
+ * MediaWiki extensions all should have key in their i18n files
+ * describing them. This override method implements the logic
+ * to retrieve them. Also URLs are included if available.
+ * Needs the Configure extension.
+ */
+ public function getDescription( IContextSource $context = null ) {
+ $language = $this->getSourceLanguage();
+ if ( $context ) {
+ $language = $context->getLanguage()->getCode();
+ }
+
+ $msgkey = $this->getFromConf( 'BASIC', 'descriptionmsg' );
+ $desc = '';
+ if ( $msgkey ) {
+ $desc = $this->getMessage( $msgkey, $language );
+ if ( strval( $desc ) === '' ) {
+ $desc = $this->getMessage( $msgkey, $this->getSourceLanguage() );
+ }
+ }
+
+ if ( strval( $desc ) === '' ) {
+ // That failed, default to 'description'
+ $desc = parent::getDescription( $context );
+ }
+
+ $url = $this->getFromConf( 'BASIC', 'extensionurl' );
+ if ( $url ) {
+ $desc .= "\n\n$url";
+ }
+
+ return $desc;
+ }
+}
diff --git a/MLEB/Translate/messagegroups/MessageGroup.php b/MLEB/Translate/messagegroups/MessageGroup.php
new file mode 100644
index 00000000..a22ad02d
--- /dev/null
+++ b/MLEB/Translate/messagegroups/MessageGroup.php
@@ -0,0 +1,171 @@
+<?php
+/**
+ * This file holds a message group interface.
+ *
+ * @file
+ * @defgroup MessageGroup Message group
+ * @author Niklas Laxström
+ * @copyright Copyright © 2010-2013, Niklas Laxström
+ * @license GPL-2.0+
+ */
+
+/**
+ * Interface for message groups.
+ *
+ * Message groups are the heart of the Translate extension. They encapsulate
+ * a set of messages each. Aside from basic information like id, label and
+ * description, the class defines which mangler, message checker and file
+ * system support (FFS), if any, the group uses.
+ *
+ * @ingroup MessageGroup
+ */
+interface MessageGroup {
+ /**
+ * Returns the parsed YAML configuration.
+ * @todo Remove from the interface. Only usage is in FFS. Figure out a better way.
+ * @return array
+ */
+ public function getConfiguration();
+
+ /**
+ * Returns the unique identifier for this group.
+ * @return string
+ */
+ public function getId();
+
+ /**
+ * Returns the human readable label (as plain text).
+ * Parameter $context was added in 2012-10-22.
+ * @param IContextSource $context Context can be used by subclasses to provide
+ * translated descriptions, for example.
+ * @return string
+ */
+ public function getLabel( IContextSource $context = null );
+
+ /**
+ * Returns a longer description about the group. Description can use wikitext.
+ * Parameter $context was added in 2012-10-22.
+ * @param IContextSource $context Context can be used by subclasses to provide
+ * translated descriptions, for example.
+ * @return string
+ *
+ */
+ public function getDescription( IContextSource $context = null );
+
+ /**
+ * Returns an icon for this message group if any.
+ * @return string|null File reference in one of the supported protocols:
+ * - file://Filename.ext - Accessible via MediaWiki functions
+ * @since 2012-12-04
+ */
+ public function getIcon();
+
+ /**
+ * Returns the namespace where messages are placed.
+ * @return int
+ */
+ public function getNamespace();
+
+ /**
+ * @todo Unclear usage. Perhaps rename to isSecondary with the only purpose
+ * suppress warnings about message key conflicts.
+ * @return bool
+ */
+ public function isMeta();
+
+ /**
+ * If this function returns false, the message group is ignored and treated
+ * like it would not be configured at all. Useful for graceful degradation.
+ * Try to keep the check fast to avoid performance problems.
+ * @return bool
+ */
+ public function exists();
+
+ /**
+ * Returns a FFS object that handles reading and writing messages to files.
+ * May also return null if it doesn't make sense.
+ * @return FFS or null
+ */
+ public function getFFS();
+
+ /**
+ * Returns a message checker object or null.
+ * @todo Make an interface for message checkers.
+ * @return MessageChecker or null
+ */
+ public function getChecker();
+
+ /**
+ * Return a message mangler or null.
+ * @todo Make an interface for message manglers
+ * @return StringMatcher or null
+ */
+ public function getMangler();
+
+ /**
+ * Initialises a message collection with the given language code,
+ * message definitions and message tags.
+ * @param $code
+ * @return MessageCollection
+ */
+ public function initCollection( $code );
+
+ /**
+ * Returns a list of messages in a given language code. For some groups
+ * that list may be identical with the translation in the wiki. For other
+ * groups the messages may be loaded from a file (and differ from the
+ * current translations or definitions).
+ * @param $code
+ * @return array
+ */
+ public function load( $code );
+
+ /**
+ * Shortcut for load( getSourceLanguage() ).
+ */
+ public function getDefinitions();
+
+ /**
+ * Returns message tags. If type is given, only message keys with that
+ * tag are returned. Otherwise an array[tag => keys] is returned.
+ * @param $type string
+ * @return array
+ */
+ public function getTags( $type = null );
+
+ /**
+ * Returns the definition or translation for given message key in given
+ * language code.
+ * @param string $key Message key
+ * @param string $code Language code
+ * @return string|null
+ */
+ public function getMessage( $key, $code );
+
+ /**
+ * Returns language code depicting the language of source text.
+ * @return string
+ */
+ public function getSourceLanguage();
+
+ /**
+ * Get the message group workflow state configuration.
+ * @return MessageGroupStates
+ */
+ public function getMessageGroupStates();
+
+ /**
+ * Get all the translatable languages for a group, considering the whitelisting
+ * and blacklisting.
+ * @return array|null The language codes as array keys.
+ */
+ public function getTranslatableLanguages();
+
+ /**
+ * List of available message types mapped to the classes
+ * implementing them.
+ *
+ * @return array
+ */
+ public function getTranslationAids();
+}
diff --git a/MLEB/Translate/messagegroups/MessageGroupBase.php b/MLEB/Translate/messagegroups/MessageGroupBase.php
new file mode 100644
index 00000000..2a6cffc7
--- /dev/null
+++ b/MLEB/Translate/messagegroups/MessageGroupBase.php
@@ -0,0 +1,420 @@
+<?php
+/**
+ * This file contains a base implementation of managed message groups.
+ *
+ * @file
+ * @author Niklas Laxström
+ * @copyright Copyright © 2010-2013, Niklas Laxström
+ * @license GPL-2.0+
+ */
+
+/**
+ * This class implements some basic functions that wrap around the YAML
+ * message group configurations. These message groups use the FFS classes
+ * and are managed with Special:ManageMessageGroups and
+ * processMessageChanges.php.
+ *
+ * @see https://www.mediawiki.org/wiki/Help:Extension:Translate/Group_configuration
+ * @ingroup MessageGroup
+ */
+abstract class MessageGroupBase implements MessageGroup {
+ protected $conf;
+ protected $namespace;
+ protected $groups;
+
+ /**
+ * @var StringMatcher
+ */
+ protected $mangler;
+
+ protected function __construct() {
+ }
+
+ /**
+ * @param $conf
+ *
+ * @return MessageGroup
+ */
+ public static function factory( $conf ) {
+ $obj = new $conf['BASIC']['class']();
+ $obj->conf = $conf;
+ $obj->namespace = $obj->parseNamespace();
+
+ return $obj;
+ }
+
+ public function getConfiguration() {
+ return $this->conf;
+ }
+
+ public function getId() {
+ return $this->getFromConf( 'BASIC', 'id' );
+ }
+
+ public function getLabel( IContextSource $context = null ) {
+ return $this->getFromConf( 'BASIC', 'label' );
+ }
+
+ public function getDescription( IContextSource $context = null ) {
+ return $this->getFromConf( 'BASIC', 'description' );
+ }
+
+ public function getIcon() {
+ return $this->getFromConf( 'BASIC', 'icon' );
+ }
+
+ public function getNamespace() {
+ return $this->namespace;
+ }
+
+ public function isMeta() {
+ return $this->getFromConf( 'BASIC', 'meta' );
+ }
+
+ public function getSourceLanguage() {
+ $conf = $this->getFromConf( 'BASIC', 'sourcelanguage' );
+
+ return $conf !== null ? $conf : 'en';
+ }
+
+ public function getDefinitions() {
+ $defs = $this->load( $this->getSourceLanguage() );
+
+ return $defs;
+ }
+
+ protected function getFromConf( $section, $key ) {
+ return isset( $this->conf[$section][$key] ) ? $this->conf[$section][$key] : null;
+ }
+
+ /**
+ * @return FFS
+ * @throws MWException
+ */
+ public function getFFS() {
+ $class = $this->getFromConf( 'FILES', 'class' );
+
+ if ( $class === null ) {
+ return null;
+ }
+
+ if ( !class_exists( $class ) ) {
+ throw new MWException( "FFS class $class does not exist." );
+ }
+
+ return new $class( $this );
+ }
+
+ public function getChecker() {
+ $class = $this->getFromConf( 'CHECKER', 'class' );
+
+ if ( $class === null ) {
+ return null;
+ }
+
+ if ( !class_exists( $class ) ) {
+ throw new MWException( "Checker class $class does not exist." );
+ }
+
+ $checker = new $class( $this );
+ $checks = $this->getFromConf( 'CHECKER', 'checks' );
+
+ if ( !is_array( $checks ) ) {
+ throw new MWException( "Checker class $class not supplied with proper checks." );
+ }
+
+ foreach ( $checks as $check ) {
+ $checker->addCheck( array( $checker, $check ) );
+ }
+
+ return $checker;
+ }
+
+ public function getMangler() {
+ if ( !isset( $this->mangler ) ) {
+ $class = $this->getFromConf( 'MANGLER', 'class' );
+
+ if ( $class === null ) {
+ $this->mangler = StringMatcher::emptyMatcher();
+
+ return $this->mangler;
+ }
+
+ if ( !class_exists( $class ) ) {
+ throw new MWException( "Mangler class $class does not exist." );
+ }
+
+ /**
+ * @todo Branch handling, merge with upper branch keys
+ */
+ $this->mangler = new $class();
+ $this->mangler->setConf( $this->conf['MANGLER'] );
+ }
+
+ return $this->mangler;
+ }
+
+ /**
+ * Returns the configured InsertablesSuggester if any.
+ * @since 2013.09
+ */
+ public function getInsertablesSuggester() {
+ $class = $this->getFromConf( 'INSERTABLES', 'class' );
+
+ if ( !$class ) {
+ return null;
+ }
+
+ if ( !class_exists( $class ) ) {
+ throw new MWException( "InsertablesSuggester class $class does not exist." );
+ }
+
+ return new $class();
+ }
+
+ /**
+ * Optimized version of array_keys( $_->getDefinitions() ).
+ * @return array
+ * @since 2012-08-21
+ */
+ public function getKeys() {
+ $cache = new MessageGroupCache( $this, $this->getSourceLanguage() );
+ if ( !$cache->exists() ) {
+ return array_keys( $this->getDefinitions() );
+ } else {
+ return $cache->getKeys();
+ }
+ }
+
+ /**
+ * @param string $code Language code.
+ * @return MessageCollection
+ */
+ public function initCollection( $code ) {
+ $namespace = $this->getNamespace();
+ $messages = array();
+
+ $cache = new MessageGroupCache( $this, $this->getSourceLanguage() );
+ if ( !$cache->exists() ) {
+ wfWarn( "By-passing message group cache for {$this->getId()}" );
+ $messages = $this->getDefinitions();
+ } else {
+ foreach ( $cache->getKeys() as $key ) {
+ $messages[$key] = $cache->get( $key );
+ }
+ }
+
+ $definitions = new MessageDefinitions( $messages, $namespace );
+ $collection = MessageCollection::newFromDefinitions( $definitions, $code );
+ $this->setTags( $collection );
+
+ return $collection;
+ }
+
+ /**
+ * @param string $key Message key
+ * @param string $code Language code
+ * @return string|null
+ */
+ public function getMessage( $key, $code ) {
+ $cache = new MessageGroupCache( $this, $code );
+ if ( $cache->exists() ) {
+ $msg = $cache->get( $key );
+
+ if ( $msg !== false ) {
+ return $msg;
+ }
+
+ // Try harder
+ $nkey = str_replace( ' ', '_', strtolower( $key ) );
+ $keys = $cache->getKeys();
+
+ foreach ( $keys as $k ) {
+ if ( $nkey === str_replace( ' ', '_', strtolower( $k ) ) ) {
+ return $cache->get( $k );
+ }
+ }
+
+ return null;
+ } else {
+ return null;
+ }
+ }
+
+ public function getTags( $type = null ) {
+ if ( $type === null ) {
+ $taglist = array();
+
+ foreach ( $this->getRawTags() as $type => $patterns ) {
+ $taglist[$type] = $this->parseTags( $patterns );
+ }
+
+ return $taglist;
+ } else {
+ return $this->parseTags( $this->getRawTags( $type ) );
+ }
+ }
+
+ protected function parseTags( $patterns ) {
+ $messageKeys = $this->getKeys();
+
+ $matches = array();
+
+ /**
+ * Collect exact keys, no point running them trough string matcher
+ */
+ foreach ( $patterns as $index => $pattern ) {
+ if ( strpos( $pattern, '*' ) === false ) {
+ $matches[] = $pattern;
+ unset( $patterns[$index] );
+ }
+ }
+
+ if ( count( $patterns ) ) {
+ /**
+ * Rest of the keys contain wildcards.
+ */
+ $mangler = new StringMatcher( '', $patterns );
+
+ /**
+ * Use mangler to find messages that match.
+ */
+ foreach ( $messageKeys as $key ) {
+ if ( $mangler->match( $key ) ) {
+ $matches[] = $key;
+ }
+ }
+ }
+
+ return $matches;
+ }
+
+ protected function getRawTags( $type = null ) {
+ if ( !isset( $this->conf['TAGS'] ) ) {
+ return array();
+ }
+
+ $tags = $this->conf['TAGS'];
+ if ( !$type ) {
+ return $tags;
+ }
+
+ if ( isset( $tags[$type] ) ) {
+ return $tags[$type];
+ }
+
+ return array();
+ }
+
+ protected function setTags( MessageCollection $collection ) {
+ foreach ( $this->getTags() as $type => $tags ) {
+ $collection->setTags( $type, $tags );
+ }
+ }
+
+ protected function parseNamespace() {
+ $ns = $this->getFromConf( 'BASIC', 'namespace' );
+
+ if ( is_int( $ns ) ) {
+ return $ns;
+ }
+
+ if ( defined( $ns ) ) {
+ return constant( $ns );
+ }
+
+ global $wgContLang;
+
+ $index = $wgContLang->getNsIndex( $ns );
+
+ if ( !$index ) {
+ throw new MWException( "No valid namespace defined, got $ns." );
+ }
+
+ return $index;
+ }
+
+ protected function isSourceLanguage( $code ) {
+ return $code === $this->getSourceLanguage();
+ }
+
+ /**
+ * @deprecated Use getMessageGroupStates
+ */
+ public function getWorkflowConfiguration() {
+ global $wgTranslateWorkflowStates;
+ if ( !$wgTranslateWorkflowStates ) {
+ // Not configured
+ $conf = array();
+ } else {
+ $conf = $wgTranslateWorkflowStates;
+ }
+
+ return $conf;
+ }
+
+ /**
+ * Get the message group workflow state configuration.
+ * @return MessageGroupStates
+ */
+ public function getMessageGroupStates() {
+ // @todo Replace deprecated call.
+ $conf = $this->getWorkflowConfiguration();
+
+ return new MessageGroupStates( $conf );
+ }
+
+ /**
+ * Get all the translatable languages for a group, considering the whitelisting
+ * and blacklisting.
+ * @return array|null The language codes as array keys.
+ */
+ public function getTranslatableLanguages() {
+ $groupConfiguration = $this->getConfiguration();
+ if ( !isset( $groupConfiguration['LANGUAGES'] ) ) {
+ // No LANGUAGES section in the configuration.
+ return null;
+ }
+
+ $lists = $groupConfiguration['LANGUAGES'];
+ $codes = array(); // The list of languages to return
+
+ if ( isset( $lists['blacklist'] ) ) {
+ $blacklist = $lists['blacklist'];
+ if ( is_array( $blacklist ) ) {
+ $codes = array_flip( array_keys( TranslateUtils::getLanguageNames( 'en' ) ) );
+ foreach ( $blacklist as $code ) {
+ unset( $codes[$code] );
+ }
+ } else {
+ // All languages blacklisted. This is very rare but not impossible.
+ $codes = array();
+ }
+ }
+
+ $whitelist = array();
+ if ( isset( $lists['whitelist'] ) ) {
+ $whitelist = $lists['whitelist'];
+ if ( $whitelist === "*" ) {
+ // All languages whitelisted
+ return null;
+ }
+ }
+
+ foreach ( $whitelist as $code ) {
+ $codes[$code] = true;
+ }
+
+ return $codes;
+ }
+
+ /**
+ * List of available message types mapped to the classes
+ * implementing them. Default implementation (all).
+ *
+ * @return array
+ */
+ public function getTranslationAids() {
+ return TranslationAid::getTypes();
+ }
+}
diff --git a/MLEB/Translate/messagegroups/MessageGroupOld.php b/MLEB/Translate/messagegroups/MessageGroupOld.php
new file mode 100644
index 00000000..e6fda767
--- /dev/null
+++ b/MLEB/Translate/messagegroups/MessageGroupOld.php
@@ -0,0 +1,396 @@
+<?php
+/**
+ * This file contains the base information of unmanaged message groups.
+ * These classes don't use Yaml configuration nor Special:ManageMessageGroups
+ * nor processMessageChanges.php
+ *
+ * @file
+ * @author Niklas Laxström
+ * @author Siebrand Mazeland
+ * @copyright Copyright © 2008-2013, Niklas Laxström, Siebrand Mazeland
+ * @license GPL-2.0+
+ */
+
+/**
+ * This is the interface and base implementation of unmanaged
+ * message groups.
+ * @todo Rename the class
+ * @ingroup MessageGroup
+ */
+abstract class MessageGroupOld implements MessageGroup {
+ /**
+ * Human-readable name of this group
+ */
+ protected $label = 'none';
+
+ /**
+ * @param IContextSource $context
+ * @return string
+ */
+ public function getLabel( IContextSource $context = null ) {
+ return $this->label;
+ }
+
+ /**
+ * @param $value string
+ */
+ public function setLabel( $value ) {
+ $this->label = $value;
+ }
+
+ /**
+ * Group-wide unique id of this group. Used also for sorting.
+ */
+ protected $id = 'none';
+
+ /**
+ * @return string
+ */
+ public function getId() {
+ return $this->id;
+ }
+
+ /**
+ * @param $value string
+ */
+ public function setId( $value ) {
+ $this->id = $value;
+ }
+
+ /**
+ * The namespace where all the messages of this group belong.
+ * If the group has messages from multiple namespaces, set this to false
+ * and look how RecentMessageGroup implements the definitions.
+ */
+ protected $namespace = NS_MEDIAWIKI;
+
+ /// Get the namespace where all the messages of this group belong.
+ public function getNamespace() {
+ return $this->namespace;
+ }
+
+ /// Set the namespace where all the messages of this group belong.
+ public function setNamespace( $ns ) {
+ $this->namespace = $ns;
+ }
+
+ /**
+ * List of messages that are hidden by default, but can still be translated if
+ * needed.
+ */
+ protected $optional = array();
+
+ /**
+ * @return array
+ */
+ public function getOptional() {
+ return $this->optional;
+ }
+
+ /**
+ * @param $value array
+ */
+ public function setOptional( $value ) {
+ $this->optional = $value;
+ }
+
+ /**
+ * List of messages that are always hidden and cannot be translated.
+ */
+ protected $ignored = array();
+
+ /**
+ * @return array
+ */
+ public function getIgnored() {
+ return $this->ignored;
+ }
+
+ /**
+ * @param $value array
+ */
+ public function setIgnored( $value ) {
+ $this->ignored = $value;
+ }
+
+ /**
+ * Holds descripton of this group. Description is a wiki text snippet that
+ * gives information about this group to translators.
+ */
+ protected $description = null;
+
+ public function getDescription( IContextSource $context = null ) {
+ return $this->description;
+ }
+
+ public function setDescription( $value ) {
+ $this->description = $value;
+ }
+
+ public function getIcon() {
+ return null;
+ }
+
+ /**
+ * Meta groups consist of multiple groups or parts of other groups. This info
+ * is used on many places, like when creating message index.
+ */
+ protected $meta = false;
+
+ public function isMeta() {
+ return $this->meta;
+ }
+
+ public function setMeta( $value ) {
+ $this->meta = $value;
+ }
+
+ public function getSourceLanguage() {
+ return 'en';
+ }
+
+ /**
+ * To avoid key conflicts between groups or separated changed messages between
+ * branches one can set a message key mangler.
+ */
+ protected $mangler = null;
+
+ /**
+ * @return StringMatcher
+ */
+ public function getMangler() {
+ if ( !isset( $this->mangler ) ) {
+ $this->mangler = StringMatcher::emptyMatcher();
+ }
+
+ return $this->mangler;
+ }
+
+ public function setMangler( $value ) {
+ $this->mangler = $value;
+ }
+
+ public function load( $code ) {
+ return array();
+ }
+
+ /**
+ * This function returns array of type key => definition of all messages
+ * this message group handles.
+ *
+ * @throws MWException
+ * @return Array of messages definitions indexed by key.
+ */
+ public function getDefinitions() {
+ $defs = $this->load( $this->getSourceLanguage() );
+ if ( !is_array( $defs ) ) {
+ throw new MWException( "Unable to load definitions for " . $this->getLabel() );
+ }
+
+ return $defs;
+ }
+
+ /**
+ * This function can be used for meta message groups to list their "own"
+ * messages. For example branched message groups can exclude the messages they
+ * share with each other.
+ * @return array
+ */
+ public function getUniqueDefinitions() {
+ return $this->meta ? array() : $this->getDefinitions();
+ }
+
+ /**
+ * Returns of stored translation of message specified by the $key in language
+ * code $code.
+ *
+ * @param string $key Message key
+ * @param string $code Language code
+ * @return Mixed List of stored translation or \null.
+ */
+ public function getMessage( $key, $code ) {
+ if ( !isset( $this->messages[$code] ) ) {
+ $this->messages[$code] = self::normaliseKeys( $this->load( $code ) );
+ }
+ $key = strtolower( str_replace( ' ', '_', $key ) );
+
+ return isset( $this->messages[$code][$key] ) ? $this->messages[$code][$key] : null;
+ }
+
+ public static function normaliseKeys( $array ) {
+ if ( !is_array( $array ) ) {
+ return null;
+ }
+
+ $new = array();
+ foreach ( $array as $key => $v ) {
+ $key = strtolower( str_replace( ' ', '_', $key ) );
+ $new[$key] = $v;
+ }
+
+ return $new;
+ }
+
+ /**
+ * All the messages for this group, by language code.
+ */
+ protected $messages = array();
+
+ /**
+ * Returns path to the file where translation of language code $code are.
+ *
+ * @param string $code
+ * @return string Path to the file or false if not applicable.
+ */
+ public function getMessageFile( $code ) {
+ return false;
+ }
+
+ public function getPath() {
+ return false;
+ }
+
+ /**
+ * @param $code
+ * @return bool|string
+ */
+ public function getMessageFileWithPath( $code ) {
+ $path = $this->getPath();
+ $file = $this->getMessageFile( $code );
+
+ if ( !$path || !$file ) {
+ return false;
+ }
+
+ return "$path/$file";
+ }
+
+ public function getSourceFilePath( $code ) {
+ return $this->getMessageFileWithPath( $code );
+ }
+
+ /**
+ * Creates a new MessageCollection for this group.
+ *
+ * @param $code \string Language code for this collection.
+ * @param $unique \bool Whether to build collection for messages unique to this
+ * group only.
+ * @return MessageCollection
+ */
+ public function initCollection( $code, $unique = false ) {
+ if ( !$unique ) {
+ $definitions = $this->getDefinitions();
+ } else {
+ $definitions = $this->getUniqueDefinitions();
+ }
+
+ $defs = new MessageDefinitions( $definitions, $this->getNamespace() );
+ $collection = MessageCollection::newFromDefinitions( $defs, $code );
+
+ foreach ( $this->getTags() as $type => $tags ) {
+ $collection->setTags( $type, $tags );
+ }
+
+ return $collection;
+ }
+
+ public function __construct() {
+ }
+
+ /**
+ * Can be overwritten to retun false if something is wrong.
+ * @return bool
+ */
+ public function exists() {
+ return true;
+ }
+
+ public function getChecker() {
+ return null;
+ }
+
+ public function getTags( $type = null ) {
+ $tags = array(
+ 'optional' => $this->optional,
+ 'ignored' => $this->ignored,
+ );
+
+ if ( !$type ) {
+ return $tags;
+ }
+
+ return isset( $tags[$type] ) ? $tags[$type] : array();
+ }
+
+ /**
+ * @param $code string
+ * @return bool
+ */
+ protected function isSourceLanguage( $code ) {
+ return $code === $this->getSourceLanguage();
+ }
+
+ // Unsupported stuff, just to satisfy the new interface
+ public function setConfiguration( $conf ) {
+ }
+
+ public function getConfiguration() {
+ }
+
+ public function getFFS() {
+ return null;
+ }
+
+ /**
+ * @deprecated Use getMessageGroupStates
+ */
+ public function getWorkflowConfiguration() {
+ global $wgTranslateWorkflowStates;
+ if ( !$wgTranslateWorkflowStates ) {
+ // Not configured
+ $conf = array();
+ } else {
+ $conf = $wgTranslateWorkflowStates;
+ }
+
+ return $conf;
+ }
+
+ /**
+ * Get the message group workflow state configuration.
+ * @return MessageGroupStates
+ */
+ public function getMessageGroupStates() {
+ // @todo Replace deprecated call.
+ $conf = $this->getWorkflowConfiguration();
+
+ return new MessageGroupStates( $conf );
+ }
+
+ /**
+ * Get all the translatable languages for a group, considering the whitelisting
+ * and blacklisting.
+ * @return array|null The language codes as array keys.
+ */
+ public function getTranslatableLanguages() {
+ return null;
+ }
+
+ protected static function addContext( Message $message, IContextSource $context = null ) {
+ if ( $context ) {
+ $message->inLanguage( $context->getLanguage() );
+ }
+
+ return $message;
+ }
+
+ /**
+ * List of available message types mapped to the classes
+ * implementing them. Default implementation (all).
+ *
+ * @return array
+ */
+ public function getTranslationAids() {
+ return TranslationAid::getTypes();
+ }
+}
diff --git a/MLEB/Translate/messagegroups/RecentAdditionsMessageGroup.php b/MLEB/Translate/messagegroups/RecentAdditionsMessageGroup.php
new file mode 100644
index 00000000..96db9927
--- /dev/null
+++ b/MLEB/Translate/messagegroups/RecentAdditionsMessageGroup.php
@@ -0,0 +1,61 @@
+<?php
+/**
+ * This file contains an unmanaged message group implementation.
+ *
+ * @file
+ * @author Niklas Laxström
+ * @copyright Copyright © 2012-2013, Niklas Laxström
+ * @license GPL-2.0+
+ */
+
+/**
+ * @since 2012-11-01
+ * @ingroup MessageGroup
+ */
+class RecentAdditionsMessageGroup extends RecentMessageGroup {
+ protected $groupInfoCache = array();
+
+ public function getId() {
+ return '!additions';
+ }
+
+ public function getLabel( IContextSource $context = null ) {
+ $msg = wfMessage( 'translate-dynagroup-additions-label' );
+ $msg = self::addContext( $msg, $context );
+
+ return $msg->plain();
+ }
+
+ public function getDescription( IContextSource $context = null ) {
+ $msg = wfMessage( 'translate-dynagroup-additions-desc' );
+ $msg = self::addContext( $msg, $context );
+
+ return $msg->plain();
+ }
+
+ protected function getQueryConditions() {
+ global $wgTranslateMessageNamespaces;
+ $db = wfGetDB( DB_SLAVE );
+ $conds = array(
+ 'rc_title ' . $db->buildLike( $db->anyString(), '/en' ),
+ 'rc_namespace' => $wgTranslateMessageNamespaces,
+ 'rc_type != ' . RC_LOG,
+ 'rc_id > ' . $this->getRCCutoff(),
+ 'rc_user' => FuzzyBot::getUser()->getId(),
+ );
+
+ return $conds;
+ }
+
+ /**
+ * Filters out messages that should not be displayed here
+ * as they are not displayed in other places.
+ *
+ * @see https://bugzilla.wikimedia.org/43030
+ * @param MessageHandle $handle
+ * @return boolean
+ */
+ protected function matchingMessage( MessageHandle $handle ) {
+ return MessageGroups::isTranslatableMessage( $handle );
+ }
+}
diff --git a/MLEB/Translate/messagegroups/RecentMessageGroup.php b/MLEB/Translate/messagegroups/RecentMessageGroup.php
new file mode 100644
index 00000000..aa10eff7
--- /dev/null
+++ b/MLEB/Translate/messagegroups/RecentMessageGroup.php
@@ -0,0 +1,147 @@
+<?php
+/**
+ * This file contains an unmanaged message group implementation.
+ *
+ * @file
+ * @author Niklas Laxström
+ * @author Siebrand Mazeland
+ * @copyright Copyright © 2008-2013, Niklas Laxström, Siebrand Mazeland
+ * @license GPL-2.0+
+ */
+
+/**
+ * @since 2011-11-28
+ * @ingroup MessageGroup
+ */
+class RecentMessageGroup extends WikiMessageGroup {
+ /*
+ * Yes this is very ugly hack and should not be removed.
+ * @see MessageCollection::getPages()
+ */
+ protected $namespace = false;
+
+ protected $language;
+
+ /**
+ * These groups are always generated for one language. Method setLanguage
+ * must be called before calling getDefinitions.
+ */
+ public function __construct() {
+ }
+
+ public function setLanguage( $code ) {
+ $this->language = $code;
+ }
+
+ public function getId() {
+ return '!recent';
+ }
+
+ public function getLabel( IContextSource $context = null ) {
+ $msg = wfMessage( 'translate-dynagroup-recent-label' );
+ $msg = self::addContext( $msg, $context );
+
+ return $msg->plain();
+ }
+
+ public function getDescription( IContextSource $context = null ) {
+ $msg = wfMessage( 'translate-dynagroup-recent-desc' );
+ $msg = self::addContext( $msg, $context );
+
+ return $msg->plain();
+ }
+
+ protected function getRCCutoff() {
+ $db = wfGetDB( DB_SLAVE );
+ $tables = 'recentchanges';
+ $max = $db->selectField( $tables, 'MAX(rc_id)', array(), __METHOD__ );
+
+ return max( 0, $max - 50000 );
+ }
+
+ /**
+ * Allows subclasses to partially customize the query.
+ */
+ protected function getQueryConditions() {
+ global $wgTranslateMessageNamespaces;
+ $db = wfGetDB( DB_SLAVE );
+ $conds = array(
+ 'rc_title ' . $db->buildLike( $db->anyString(), '/' . $this->language ),
+ 'rc_namespace' => $wgTranslateMessageNamespaces,
+ 'rc_type != ' . RC_LOG,
+ 'rc_id > ' . $this->getRCCutoff(),
+ );
+
+ return $conds;
+ }
+
+ /**
+ * Allows subclasses to filter out more unwanted messages.
+ *
+ * @param MessageHandle $msg
+ * @return boolean
+ */
+ protected function matchingMessage( MessageHandle $msg ) {
+ return true;
+ }
+
+ public function getDefinitions() {
+ if ( !$this->language ) {
+ throw new MWException( "Language not set" );
+ }
+
+ $db = wfGetDB( DB_SLAVE );
+ $tables = 'recentchanges';
+ $fields = array( 'rc_namespace', 'rc_title' );
+ $conds = $this->getQueryConditions();
+ $options = array(
+ 'ORDER BY' => 'rc_id DESC',
+ 'LIMIT' => 5000
+ );
+ $res = $db->select( $tables, $fields, $conds, __METHOD__, $options );
+
+ $defs = array();
+ foreach ( $res as $row ) {
+ $title = Title::makeTitle( $row->rc_namespace, $row->rc_title );
+ $handle = new MessageHandle( $title );
+
+ if ( !$handle->isValid() || !$this->matchingMessage( $handle ) ) {
+ continue;
+ }
+
+ $messageKey = $handle->getKey();
+ $fullKey = $row->rc_namespace . ':' . $messageKey;
+
+ /* Note: due to bugs, getMessage might return null even for
+ * known messages. These negatives are not cached, but that
+ * should be rare enough case to not affect performance. */
+ if ( !isset( $defs[$fullKey] ) ) {
+ $group = $handle->getGroup();
+ $msg = $group->getMessage( $messageKey, $group->getSourceLanguage() );
+
+ if ( $msg !== null ) {
+ $defs[$fullKey] = $msg;
+ }
+ }
+ }
+
+ return $defs;
+ }
+
+ public function getChecker() {
+ return null;
+ }
+
+ /**
+ * Subpage language code, if any in the title, is ignored.
+ */
+ public function getMessageContent( MessageHandle $handle ) {
+ $groupId = MessageIndex::getPrimaryGroupId( $handle );
+ $group = MessageGroups::getGroup( $groupId );
+ if ( $group ) {
+ return $group->getMessage( $handle->getKey(), $group->getSourceLanguage() );
+ }
+
+ throw new MWException( 'Could not find group for ' . $handle->getKey() );
+ }
+}
diff --git a/MLEB/Translate/messagegroups/SandboxMessageGroup.php b/MLEB/Translate/messagegroups/SandboxMessageGroup.php
new file mode 100644
index 00000000..13edb914
--- /dev/null
+++ b/MLEB/Translate/messagegroups/SandboxMessageGroup.php
@@ -0,0 +1,173 @@
+<?php
+/**
+ * This file contains an unmanaged message group implementation.
+ *
+ * @file
+ * @author Niklas Laxström
+ * @license GPL-2.0+
+ */
+
+/**
+ * @since 2013.06
+ * @ingroup MessageGroup
+ */
+class SandboxMessageGroup extends WikiMessageGroup {
+ /*
+ * Yes this is very ugly hack and should not be removed.
+ * @see MessageCollection::getPages()
+ */
+ protected $namespace = false;
+
+ protected $language;
+
+ /**
+ * #setLanguage must be called before calling getDefinitions.
+ */
+ public function __construct() {
+ }
+
+ public function setLanguage( $code ) {
+ $this->language = $code;
+ }
+
+ public function getId() {
+ return '!sandbox';
+ }
+
+ public function getLabel( IContextSource $context = null ) {
+ // Should not be visible
+ return 'Sandbox messages';
+ }
+
+ public function getDescription( IContextSource $context = null ) {
+ // Should not be visible
+ return 'Suggests messages to translate for sandboxed users';
+ }
+
+ public function getDefinitions() {
+ global $wgTranslateSandboxSuggestions, $wgTranslateSandboxLimit;
+
+ // This will contain the list of messages shown to the user
+ $list = array();
+
+ // Ugly
+ $store = new TranslationStashStorage( wfGetDB( DB_MASTER ) );
+ $user = RequestContext::getMain()->getUser();
+ $translations = $store->getTranslations( $user );
+
+ // Add messages the user has already translated first, so he
+ // can go back and correct them.
+ foreach ( $translations as $translation ) {
+ $title = $translation->getTitle();
+ $handle = new MessageHandle( $title );
+ $index = $title->getNamespace() . ':' . $handle->getKey();
+ $list[$index] = '';
+ }
+
+ // Always add the regular suggestions
+ foreach ( $wgTranslateSandboxSuggestions as $titleText ) {
+ $title = Title::newFromText( $titleText );
+ if ( !$title ) {
+ wfWarn( "Invalid title in \$wgTranslateSandboxSuggestions: $titleText" );
+ continue;
+ }
+
+ $index = $title->getNamespace() . ':' . $handle->getKey();
+ // This index might already exist, but that is okay
+ $list[$index] = '';
+ }
+
+ // Message index of all known messages
+ $mi = MessageIndex::singleton();
+ // Get some random keys
+ $all = array_keys( $mi->retrieve() );
+ // In case there aren't any messages
+ if ( $all === array() ) {
+ return $list;
+ }
+ $min = 0;
+ $max = count( $all ) - 1; // Indexes are zero-based
+
+ // Get some message. Will be filtered to less below.
+ for ( $i = count( $list ); $i < 100; $i++ ) {
+ $list[$all[rand( $min, $max )]] = '';
+ }
+
+ // Fetch definitions, slowly, one by one
+ $count = 0;
+
+ // Provide twice the number of messages than the limit
+ // to have a buffer in case the user skips some messages
+ $messagesToProvide = $wgTranslateSandboxLimit * 2;
+
+ foreach ( $list as $index => &$translation ) {
+ list( $ns, $page ) = explode( ':', $index, 2 );
+ $title = Title::makeTitle( $ns, "$page/{$this->language}" );
+ $handle = new MessageHandle( $title );
+
+ if ( MessageGroups::isTranslatableMessage( $handle ) ) {
+ // Modified by reference
+ $translation = $this->getMessageContent( $handle );
+ if ( $translation === null ) {
+ // Something is not in sync or badly broken. Handle gracefully.
+ unset( $list[$index] );
+ wfWarn( "No message definition for $index while preparing the sandbox" );
+
+ continue;
+ }
+ } else {
+ // This might include messages that the user has already translated
+ // or messages given in $wgTranslateSandboxSuggestions or just dated
+ // message index.
+ unset( $list[$index] );
+
+ continue;
+ }
+
+ $count++;
+
+ if ( $count === $messagesToProvide ) {
+ break;
+ }
+ }
+
+ // Remove the extra entries
+ $list = array_slice( $list, 0, $messagesToProvide );
+
+ return $list;
+ }
+
+ public function getChecker() {
+ return null;
+ }
+
+ /**
+ * Subpage language code, if any in the title, is ignored.
+ */
+ public function getMessageContent( MessageHandle $handle ) {
+ $groupId = MessageIndex::getPrimaryGroupId( $handle );
+ $group = MessageGroups::getGroup( $groupId );
+ $key = $handle->getKey();
+
+ $source = $group->getMessage( $key, $group->getSourceLanguage() );
+ if ( $source !== null ) {
+ return $source;
+ }
+
+ // Try harder
+ if ( method_exists( $group, 'getKeys' ) ) {
+ $keys = $group->getKeys();
+ } else {
+ $keys = array_keys( $group->getDefinitions() );
+ }
+ // Try to find the original key with correct case
+ foreach ( $keys as $realkey ) {
+ if ( $key === strtolower( $realkey ) ) {
+ $key = $realkey;
+ break;
+ }
+ }
+
+ return $group->getMessage( $key, $group->getSourceLanguage() );
+ }
+}
diff --git a/MLEB/Translate/messagegroups/WikiMessageGroup.php b/MLEB/Translate/messagegroups/WikiMessageGroup.php
new file mode 100644
index 00000000..c14ca644
--- /dev/null
+++ b/MLEB/Translate/messagegroups/WikiMessageGroup.php
@@ -0,0 +1,89 @@
+<?php
+/**
+ * This file contains an unmanaged message group implementation.
+ *
+ * @file
+ * @author Niklas Laxström
+ * @author Siebrand Mazeland
+ * @copyright Copyright © 2008-2013, Niklas Laxström, Siebrand Mazeland
+ * @license GPL-2.0+
+ */
+
+/**
+ * Group for messages that can be controlled via a page in %MediaWiki namespace.
+ *
+ * In the page comments start with # and continue till the end of the line.
+ * The page should contain list of page names in %MediaWiki namespace, without
+ * the namespace prefix. Use underscores for spaces in page names, since
+ * whitespace separates the page names from each other.
+ * @ingroup MessageGroup
+ */
+class WikiMessageGroup extends MessageGroupOld {
+ protected $source = null;
+
+ /**
+ * Constructor.
+ *
+ * @param string $id Unique id for this group.
+ * @param string $source Mediawiki message that contains list of message keys.
+ */
+ public function __construct( $id, $source ) {
+ parent::__construct();
+ $this->id = $id;
+ $this->source = $source;
+ }
+
+ /**
+ * Defaults to wiki content language.
+ * @return string Language code
+ */
+ public function getSourceLanguage() {
+ global $wgLanguageCode;
+
+ return $wgLanguageCode;
+ }
+
+ /**
+ * Fetch definitions from database.
+ * @return array Array of messages keys with definitions.
+ */
+ public function getDefinitions() {
+ $definitions = array();
+
+ // In theory the page could have templates that are substitued
+ $source = wfMessage( $this->source );
+ if ( $source->isDisabled() ) {
+ return array();
+ }
+
+ $contents = $source->text();
+ $contents = preg_replace( '~^\s*#.*$~m', '', $contents );
+ $messages = preg_split( '/\s+/', $contents );
+
+ foreach ( $messages as $message ) {
+ if ( !$message ) {
+ continue;
+ }
+
+ $definitions[$message] = wfMessage( $message )->inContentLanguage()->plain();
+ }
+
+ return $definitions;
+ }
+
+ /**
+ * Returns of stored translation of message specified by the $key in language
+ * code $code.
+ *
+ * @param string $key Key of the message.
+ * @param string $code Language code.
+ * @return string|null The translation or null if it doesn't exists.
+ */
+ public function getMessage( $key, $code ) {
+ if ( $code && $this->getSourceLanguage() !== $code ) {
+ return TranslateUtils::getMessageContent( $key, $code );
+ } else {
+ return TranslateUtils::getMessageContent( $key, false );
+ }
+ }
+}
diff --git a/MLEB/Translate/messagegroups/WikiPageMessageGroup.php b/MLEB/Translate/messagegroups/WikiPageMessageGroup.php
new file mode 100644
index 00000000..e24d83a8
--- /dev/null
+++ b/MLEB/Translate/messagegroups/WikiPageMessageGroup.php
@@ -0,0 +1,155 @@
+<?php
+/**
+ * This file contains an unmanaged message group implementation.
+ *
+ * @file
+ * @author Niklas Laxström
+ * @author Siebrand Mazeland
+ * @license GPL-2.0+
+ */
+
+/**
+ * Wraps the translatable page sections into a message group.
+ * @ingroup PageTranslation MessageGroup
+ */
+class WikiPageMessageGroup extends WikiMessageGroup {
+ /// @var string|Title
+ protected $title;
+
+ public function __construct( $id, $source ) {
+ $this->id = $id;
+ $this->title = $source;
+ $this->namespace = NS_TRANSLATIONS;
+ }
+
+ public function getSourceLanguage() {
+ return $this->getTitle()->getPageLanguage()->getCode();
+ }
+
+ /**
+ * @return Title
+ */
+ public function getTitle() {
+ if ( is_string( $this->title ) ) {
+ $this->title = Title::newFromText( $this->title );
+ }
+
+ return $this->title;
+ }
+
+ /**
+ * Only used for caching to avoid repeating database queries
+ * for example during message index rebuild.
+ */
+ protected $definitions;
+
+ /**
+ * @return array
+ */
+ public function getDefinitions() {
+ if ( is_array( $this->definitions ) ) {
+ return $this->definitions;
+ }
+
+ // Avoid replication issues
+ $dbr = wfGetDB( DB_MASTER );
+ $tables = 'translate_sections';
+ $vars = array( 'trs_key', 'trs_text' );
+ $conds = array( 'trs_page' => $this->getTitle()->getArticleID() );
+ $options = array( 'ORDER BY' => 'trs_order' );
+ $res = $dbr->select( $tables, $vars, $conds, __METHOD__, $options );
+
+ $defs = array();
+ $prefix = $this->getTitle()->getPrefixedDBKey() . '/';
+ $re = '~<tvar\|([^>]+)>(.*?)</>~u';
+
+ foreach ( $res as $r ) {
+ $section = new TPSection();
+ $section->text = $r->trs_text;
+ $defs[$r->trs_key] = $section->getTextWithVariables();
+ }
+
+ $new_defs = array();
+ foreach ( $defs as $k => $v ) {
+ $k = str_replace( ' ', '_', $k );
+ $new_defs[$prefix . $k] = $v;
+ }
+
+ return $this->definitions = $new_defs;
+ }
+
+ public function load( $code ) {
+ if ( $this->isSourceLanguage( $code ) ) {
+ return $this->getDefinitions();
+ }
+
+ return array();
+ }
+
+ /**
+ * Returns of stored translation of message specified by the $key in language
+ * code $code.
+ *
+ * @param string $key Message key
+ * @param string $code Language code
+ * @return string|null Stored translation or null.
+ */
+ public function getMessage( $key, $code ) {
+ if ( $this->isSourceLanguage( $code ) ) {
+ $stuff = $this->load( $code );
+
+ return isset( $stuff[$key] ) ? $stuff[$key] : null;
+ }
+
+ $title = Title::makeTitleSafe( $this->getNamespace(), "$key/$code" );
+ $rev = Revision::newFromTitle( $title, false, Revision::READ_LATEST );
+
+ if ( !$rev ) {
+ return null;
+ }
+
+ return ContentHandler::getContentText( $rev->getContent() );
+ }
+
+ /**
+ * @return MediaWikiMessageChecker
+ */
+ public function getChecker() {
+ $checker = new MediaWikiMessageChecker( $this );
+ $checker->setChecks( array(
+ array( $checker, 'pluralCheck' ),
+ array( $checker, 'XhtmlCheck' ),
+ array( $checker, 'braceBalanceCheck' ),
+ array( $checker, 'pagenameMessagesCheck' ),
+ array( $checker, 'miscMWChecks' )
+ ) );
+
+ return $checker;
+ }
+
+ public function getInsertablesSuggester() {
+ return new TranslatablePageInsertablesSuggester();
+ }
+
+ public function getDescription( IContextSource $context = null ) {
+ $title = $this->getTitle()->getPrefixedText();
+ $target = ":$title";
+ $pageLanguageCode = $this->getSourceLanguage();
+ $inLanguageCode = $context ? $context->getLanguage()->getCode() : null;
+ $languageName = Language::fetchLanguageName( $pageLanguageCode, $inLanguageCode );
+
+ // Allow for adding a custom group description by using
+ // "MediaWiki:Tp-custom-<group ID>".
+ $customText = '';
+ $msg = wfMessage( 'tp-custom-' . $this->id );
+ self::addContext( $msg, $context );
+ if ( $msg->exists() ) {
+ $customText = $msg->plain();
+ }
+
+ $msg = wfMessage( 'translate-tag-page-desc', $title, $target, $languageName, $pageLanguageCode );
+ self::addContext( $msg, $context );
+
+ return $msg->plain() . $customText;
+ }
+}
diff --git a/MLEB/Translate/messagegroups/WorkflowStatesMessageGroup.php b/MLEB/Translate/messagegroups/WorkflowStatesMessageGroup.php
new file mode 100644
index 00000000..415bed4a
--- /dev/null
+++ b/MLEB/Translate/messagegroups/WorkflowStatesMessageGroup.php
@@ -0,0 +1,77 @@
+<?php
+/**
+ * This file contains an unmanaged message group implementation.
+ *
+ * @file
+ * @author Niklas Laxström
+ * @author Siebrand Mazeland
+ * @copyright Copyright © 2008-2013, Niklas Laxström, Siebrand Mazeland
+ * @license GPL-2.0+
+ */
+
+/**
+ * @ingroup MessageGroup
+ */
+class WorkflowStatesMessageGroup extends WikiMessageGroup {
+ // id and source are not needed
+ public function __construct() {
+ }
+
+ public function getId() {
+ return 'translate-workflow-states';
+ }
+
+ public function getLabel( IContextSource $context = null ) {
+ $msg = wfMessage( 'translate-workflowgroup-label' );
+ $msg = self::addContext( $msg, $context );
+
+ return $msg->plain();
+ }
+
+ public function getDescription( IContextSource $context = null ) {
+ $msg = wfMessage( 'translate-workflowgroup-desc' );
+ $msg = self::addContext( $msg, $context );
+
+ return $msg->plain();
+ }
+
+ public function getDefinitions() {
+ $groups = MessageGroups::getAllGroups();
+ $keys = array();
+
+ /**
+ * @var $g MessageGroup
+ */
+ foreach ( $groups as $g ) {
+ $states = $g->getMessageGroupStates()->getStates();
+ foreach ( array_keys( $states ) as $state ) {
+ $keys["Translate-workflow-state-$state"] = $state;
+ }
+ }
+
+ $defs = TranslateUtils::getContents( array_keys( $keys ), $this->getNamespace() );
+ foreach ( $keys as $key => $state ) {
+ if ( !isset( $defs[$key] ) ) {
+ // @todo Use jobqueue
+ $title = Title::makeTitleSafe( $this->getNamespace(), $key );
+ $page = new WikiPage( $title );
+ $content = ContentHandler::makeContent( $state, $title );
+
+ $page->doEditContent(
+ $content,
+ wfMessage( 'translate-workflow-autocreated-summary', $state )->inContentLanguage()->text(),
+ 0, /*flags*/
+ false, /* base revision id */
+ FuzzyBot::getUser()
+ );
+ } else {
+ // Use the wiki translation as definition if available.
+ // getContents returns array( content, last author )
+ list( $content, ) = $defs[$key];
+ $keys[$key] = $content;
+ }
+ }
+
+ return $keys;
+ }
+}
diff --git a/MLEB/Translate/resources/css/ext.translate.css b/MLEB/Translate/resources/css/ext.translate.css
new file mode 100644
index 00000000..de49a987
--- /dev/null
+++ b/MLEB/Translate/resources/css/ext.translate.css
@@ -0,0 +1,72 @@
+.mw-translate-page-info {
+ font-size: x-small;
+ text-align: center;
+ direction: ltr;
+}
+
+.mw-pt-languages {
+ display: table;
+ border: 1px solid rgb(170, 170, 170);
+ background: rgb(246, 249, 237) none repeat scroll 0 0;
+ border-collapse: collapse;
+ line-height: 1.2;
+ width: 100%;
+ clear: both;
+ overflow: auto;
+}
+
+.mw-pt-languages-label {
+ display: table-cell;
+ border-right: 1px solid rgb(170, 170, 170);
+ padding: 0.5em;
+ background: rgb(238, 243, 226) none repeat scroll 0 0;
+ font-weight: bold;
+ width: 15%;
+}
+
+.mw-pt-languages-list {
+ padding-left: 0.5em;
+ padding-bottom: 0.7em;
+ display: table-cell;
+ width: 80%;
+}
+
+.mw-pt-languages-list a {
+ white-space: nowrap;
+}
+
+.mw-pt-translate-header {
+ font-size: x-small;
+ text-align: center;
+}
+
+.mw-pt-languages-selected,
+.mw-pt-languages-ui {
+ font-weight: bold;
+}
+
+.mw-pt-progress {
+ padding-right: 11px;
+ background: transparent right center no-repeat;
+ background-size: 9px 9px;
+}
+
+.mw-pt-progress--stub {
+ background-image: url('../images/prog-1.png');
+}
+
+.mw-pt-progress--low {
+ background-image: url('../images/prog-2.png');
+}
+
+.mw-pt-progress--med {
+ background-image: url('../images/prog-3.png');
+}
+
+.mw-pt-progress--high {
+ background-image: url('../images/prog-4.png');
+}
+
+.mw-pt-progress--complete {
+ background-image: url('../images/prog-5.png');
+}
diff --git a/MLEB/Translate/resources/css/ext.translate.dropdownmenu.css b/MLEB/Translate/resources/css/ext.translate.dropdownmenu.css
new file mode 100644
index 00000000..10dc335b
--- /dev/null
+++ b/MLEB/Translate/resources/css/ext.translate.dropdownmenu.css
@@ -0,0 +1,17 @@
+.tux-dropdown-menu {
+ padding-top: 2em;
+ border: 1px solid #c9c9c9;
+ /* @noflip */
+ -webkit-box-shadow: 0 3px 3px -3px rgba(0, 0, 0, 0.5);
+ /* @noflip */
+ box-shadow: 0 3px 3px -3px rgba(0, 0, 0, 0.5);
+ font-size: 14px;
+ margin: 0 5px;
+ list-style: none;
+ padding: 4px;
+ width: 200px;
+ z-index: 300;
+ background: #fff;
+ display: block;
+ position: absolute;
+}
diff --git a/MLEB/Translate/resources/css/ext.translate.editor.css b/MLEB/Translate/resources/css/ext.translate.editor.css
new file mode 100644
index 00000000..38ab67cb
--- /dev/null
+++ b/MLEB/Translate/resources/css/ext.translate.editor.css
@@ -0,0 +1,420 @@
+.tux-message-editor {
+ position: relative;
+ border: 1px solid #777;
+ background-color: #FFFFFF;
+ cursor: default;
+ box-shadow: 0 2px 6px rgba(0, 0, 0, 0.3);
+}
+
+.tux-message-editor .close {
+ background: url('../images/close.png') no-repeat scroll center center transparent;
+ background-image: -webkit-linear-gradient(transparent, transparent), url(../images/close.svg);
+ /* @embed */
+ background-image: linear-gradient(transparent, transparent), url(../images/close.svg);
+ padding: 15px;
+ cursor: pointer;
+ float: right;
+}
+
+.tux-message-editor .editor-info-toggle {
+ padding: 15px;
+ cursor: pointer;
+ float: right;
+}
+
+.tux-message-editor .editor-contract {
+ background: url('../images/contract-ltr.png') no-repeat scroll center center transparent;
+ background-image: -webkit-linear-gradient(transparent, transparent), url(../images/contract-ltr.svg);
+ /* @embed */
+ background-image: linear-gradient(transparent, transparent), url(../images/contract-ltr.svg);
+}
+
+.tux-message-editor .editor-expand {
+ background: url('../images/expand-ltr.png') no-repeat scroll center center transparent;
+ background-image: -webkit-linear-gradient(transparent, transparent), url(../images/expand-ltr.svg);
+ /* @embed */
+ background-image: linear-gradient(transparent, transparent), url(../images/expand-ltr.svg);
+}
+
+.tux-message-editor .editcolumn {
+ border-right: 1px solid #AAA;
+ -webkit-transition: width 0.5s;
+ transition: width 0.5s;
+}
+
+.tux-message-editor textarea {
+ border: 1px solid #555;
+ font-size: 16px;
+ padding: 5px 5px 30px 5px;
+ height: 100px;
+ min-height: 150px;
+ overflow-y: auto;
+ position: relative;
+ z-index: 100;
+}
+
+.tux-message-editor .editarea {
+ position: relative;
+}
+
+.tux-message-editor .messagekey {
+ color: #252525;
+ font-size: 13px;
+ font-weight: bold;
+ padding: 5px 0 5px 10px;
+ cursor: pointer;
+}
+
+.tux-message-editor .messagekey .caret {
+ border-top: 4px solid #252525;
+ border-left: 4px solid transparent;
+ border-right: 4px solid transparent;
+ display: inline-block;
+ vertical-align: middle;
+ margin: 0 4px;
+}
+
+.tux-message-editor .sourcemessage {
+ font-size: 18px;
+ line-height: 1.6em;
+ padding: 5px 0 10px 10px;
+ word-wrap: break-word;
+}
+
+.tux-message-editor .sourcemessage.long {
+ font-size: 16px;
+}
+
+.tux-message-editor .sourcemessage.longer {
+ font-size: 14px;
+}
+
+.tux-message-editor .button {
+ text-overflow: ellipsis;
+ font-size: 16px;
+ height: 35px;
+ margin: 10px 5px;
+}
+
+.tux-message-editor .shortcutinfo {
+ font-size: 13px;
+ color: #555;
+ padding: 0 5px 5px 10px;
+}
+
+.tux-message-editor .infocolumn-block .infocolumn {
+ position: absolute;
+ top: 0;
+ bottom: 0;
+ right: 0;
+ left: 10px;
+ padding: 0 5px;
+ overflow: auto;
+}
+
+.tux-message-editor .infocolumn-block {
+ font-size: 12pt;
+ background: #FCFCFC;
+ position: absolute;
+ top: 0;
+ right: 0;
+ bottom: 0;
+ padding: 0;
+ -webkit-transition: width 0.5s;
+ transition: width 0.5s;
+}
+
+.tux-message-editor .infocolumn-block .caret:before {
+ border-top: 20px solid transparent;
+ border-right: 20px solid #AAA;
+ border-bottom: 20px solid transparent;
+ content: "";
+ display: inline-block;
+ left: -21px;
+ position: absolute;
+ bottom: 50%;
+}
+
+.tux-message-editor .infocolumn-block .caret:after {
+ border-top: 20px solid transparent;
+ border-right: 20px solid #FCFCFC;
+ border-bottom: 20px solid transparent;
+ content: "";
+ display: inline-block;
+ left: -20px;
+ position: absolute;
+ bottom: 50%;
+}
+
+.infocolumn-block .infocolumn .message-desc-editor {
+ padding: 5px 0;
+ margin-right: 5px;
+}
+
+.tux-textarea-documentation {
+ height: 100px;
+ overflow: auto;
+}
+
+.infocolumn-block .infocolumn .message-desc {
+ font-size: 16px;
+ padding: 5px 0;
+ margin-right: 5px;
+}
+
+.infocolumn-block .infocolumn .message-desc.long {
+ font-size: 14px;
+ border-bottom: 1px solid #DDD;
+}
+
+.infocolumn-block .infocolumn .message-desc.compact {
+ max-height: 100px;
+ overflow: hidden;
+ text-overflow: ellipsis;
+}
+
+.message-desc-control {
+ font-size: 14px;
+ padding: 3px 0 5px 0;
+}
+
+.message-desc-control .read-more {
+ font-size: 14px;
+ color: #3366BB;
+ cursor: pointer;
+ margin-right: 5px;
+}
+
+.message-desc-edit {
+ background: transparent url(../images/action-edit.png) left center no-repeat;
+ background-image: -webkit-linear-gradient(transparent, transparent), url(../images/action-edit.svg);
+ /* @embed */
+ background-image: linear-gradient(transparent, transparent), url(../images/action-edit.svg);
+ background-size: 18px 18px;
+ padding-left: 19px;
+}
+
+.tm-suggestions-title,
+.in-other-languages-title {
+ font-size: 16px;
+ font-weight: bold;
+ padding: 10px 0;
+}
+
+.tm-suggestion,
+.in-other-language {
+ font-size: 14px;
+ border: 1px solid #ddd;
+ border-left: 2px solid #3366BB;
+ padding: 5px 5px 5px 10px;
+ background-color: #f5f5f5;
+ /* CSSJanus fails to flip this. Bug 61440
+ margin: 0 5px 3px -5px !important;
+ */
+}
+
+/* Workaround for the above */
+.grid .row .row .tm-suggestion,
+.grid .row .row .in-other-language {
+ margin: 0 5px 3px -5px;
+}
+
+.tm-suggestion:hover,
+.in-other-language:hover {
+ cursor: pointer;
+ box-shadow: 0 0 3px rgba(0, 0, 0, 0.2);
+}
+
+.in-other-language .language {
+ color: #565656;
+ overflow: hidden;
+ text-overflow: ellipsis;
+}
+
+.tux-message-editor .help {
+ font-size: 16px;
+ padding: 10px 5px;
+}
+
+.tux-message-editor .help a {
+ font-size: 14px;
+ padding: 0 0 0 5px;
+}
+
+.editarea .tux-warnings-block {
+ position: relative;
+}
+
+.tux-warning {
+ background-color: #FFFFCC;
+}
+
+.tux-highlight {
+ background-color: #C9C9C9;
+}
+
+.tux-warning-message {
+ font-size: 14px;
+ padding: 2px 15% 2px 5px;
+ /* 15px space for icon */
+ padding-left: 20px;
+ background-position: left;
+ background-repeat: no-repeat;
+}
+
+.tux-warning .diff {
+ font-size: 12px;
+ padding: 0 0 0 20px;
+ /* 15px space for icon */
+}
+
+.editarea .tux-more-warnings {
+ background-color: #FBF6AD;
+ position: absolute;
+ right: 0;
+ padding: 2px 5px;
+ text-align: right;
+ cursor: pointer;
+ bottom: 0;
+}
+
+.tux-warning-message.validation {
+ background-image: url(../images/label-flag.png);
+ background-image: -webkit-linear-gradient(transparent, transparent), url(../images/label-flag.svg);
+ /* @embed */
+ background-image: linear-gradient(transparent, transparent), url(../images/label-flag.svg);
+}
+
+.tux-warning-message.diff {
+ background-image: url(../images/label-clock.png);
+ background-image: -webkit-linear-gradient(transparent, transparent), url(../images/label-clock.svg);
+ /* @embed */
+ background-image: linear-gradient(transparent, transparent), url(../images/label-clock.svg);
+}
+
+.tux-warning-message .show-diff-link {
+ color: #3366BB;
+ cursor: pointer;
+ padding-left: 5px;
+}
+
+.editarea .tux-more-warnings:before {
+ content: "";
+ border-bottom: 1em solid #FBF6AD;
+ border-top: 1em solid transparent;
+ border-left: 1em solid transparent;
+ border-right: 1em solid #FBF6AD;
+ display: inline-block;
+ position: absolute;
+ right: 100%;
+ top: 0;
+}
+
+.tux-editor-request-right {
+ font-size: 13px;
+ padding: 0 5px;
+ color: #555;
+}
+
+.tux-editor-ask-permission {
+ padding: 0 5px;
+}
+
+.tux-editor-editarea-block {
+ padding: 0 5px;
+}
+
+.tux-editor-actions-block {
+ position: relative;
+}
+
+.tux-editor-actions-block .tux-editor-insert-buttons {
+ position: absolute;
+ top: -38px;
+ margin: 0 10px;
+ z-index: 110;
+}
+
+.tux-editor-insert-buttons button {
+ padding: 4px;
+ border: 1px solid #DDD;
+ background: #FBFBFB;
+ color: #252525;
+ font-size: 13px;
+}
+
+.tux-editor-insert-buttons .tux-editor-paste-original-button {
+ background: #FBFBFB url(../images/paste.png) left center no-repeat;
+ background-image: -webkit-linear-gradient(transparent, transparent), url(../images/paste.svg);
+ /* @embed */
+ background-image: linear-gradient(transparent, transparent), url(../images/paste.svg);
+ background-size: 16px 16px;
+ padding-left: 18px;
+}
+
+.sourcemessage,
+.suggestiontext {
+ white-space: pre-wrap;
+}
+
+.infocolumn .loading {
+ padding: 10px;
+ font-size: 14px;
+ color: #565656;
+}
+
+.tux-message-tools-menu li a {
+ color: #555555;
+ display: block;
+ font-size: 14px;
+ padding: 0 2px;
+ text-decoration: none;
+}
+
+.tux-message-tools-menu li a:hover {
+ cursor: pointer;
+ background-color: #f0f0f0;
+ color: #252525;
+}
+
+.tux-message-tools-menu li.selected {
+ background: url(../images/label-tick.png) right no-repeat;
+ background-image: -webkit-linear-gradient(transparent, transparent), url(../images/label-tick.svg);
+ /* @embed */
+ background-image: linear-gradient(transparent, transparent), url(../images/label-tick.svg);
+ color: #252525;
+}
+
+/*
+ * Hide the cancel button by default, but show it in the last message.
+ * !important is used to override the button styling in ULS.
+*/
+.tux-editor-cancel-button {
+ display: none !important;
+}
+
+.last-message .tux-editor-cancel-button {
+ display: inline-block !important;
+}
+
+.last-message .tux-editor-skip-button {
+ display: none;
+}
+
+.shortcut-popup {
+ /* Firefox likes to add "relative" inline for elements with offset */
+ position: absolute !important;
+ width: 17px;
+ height: 17px;
+ line-height: 17px;
+ overflow: hidden;
+ font-size: 13px;
+ text-align: center;
+ border: 1px dashed gray;
+ border-radius: 100%;
+ z-index: 110;
+ background-color: white;
+ margin-top: -10px;
+ /* @noflip */
+ margin-left: -10px;
+}
diff --git a/MLEB/Translate/resources/css/ext.translate.groupselector.css b/MLEB/Translate/resources/css/ext.translate.groupselector.css
new file mode 100644
index 00000000..74f05141
--- /dev/null
+++ b/MLEB/Translate/resources/css/ext.translate.groupselector.css
@@ -0,0 +1,216 @@
+/*
+ * Breadcrumb
+ */
+.tux-breadcrumb {
+ margin-bottom: 10px;
+}
+
+.tux-breadcrumb .grouplink + .grouplink:before {
+ border-left: 4px solid #777;
+ border-top: 4px solid transparent;
+ border-bottom: 4px solid transparent;
+ content: "";
+ display: inline-block;
+ vertical-align: middle;
+ position: relative;
+ left: -5px;
+}
+
+.tux-breadcrumb span {
+ border: medium none;
+ color: #555555;
+ font-size: 14pt;
+ font-weight: normal;
+ line-height: 1.25em;
+ padding-bottom: 3px;
+ padding-left: 15px;
+ padding-top: 1.25em;
+}
+
+.tux-breadcrumb span.grouptitle {
+ float: left;
+ padding: 0 6px 0 0;
+}
+
+.tux-breadcrumb span.grouplink {
+ color: #0645AD;
+ cursor: pointer;
+ float: left;
+ min-height: 1px;
+ padding: 0 6px;
+ position: relative;
+}
+
+/**
+ * Group selector
+ */
+.tux-groupselector {
+ position: absolute;
+ top: 14px;
+ right: 0;
+ z-index: 1000;
+ display: none;
+ float: left;
+ margin-top: 13px;
+ min-width: 600px;
+ width: 600px;
+ padding: 0;
+ border: 1px solid #888;
+ background-color: #F0F0F0;
+ border-radius: 5px;
+ -webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);
+ -moz-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);
+ box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);
+ -webkit-background-clip: padding-box;
+ -moz-background-clip: padding;
+ background-clip: padding-box;
+ text-align: left;
+}
+
+/* The triangle shaped callout */
+.tux-groupselector:before {
+ border-bottom: 7px solid #888;
+ border-left: 7px solid transparent;
+ border-right: 7px solid transparent;
+ content: "";
+ display: inline-block;
+ left: 99px;
+ position: absolute;
+ top: -7px;
+}
+
+.tux-groupselector:after {
+ border-bottom: 6px solid #F0F0F0;
+ border-left: 6px solid transparent;
+ border-right: 6px solid transparent;
+ content: "";
+ display: inline-block;
+ left: 100px;
+ position: absolute;
+ top: -6px;
+}
+
+.grid .tux-groupselector__title {
+ border: none;
+ color: #555555;
+ font-size: 14pt;
+ font-weight: normal;
+ line-height: 1.25em;
+ padding: 5px 0 0 10px; /* grid override */
+ margin: 0;
+}
+
+.tux-groupselector__filter {
+ position: relative;
+ height: 36px;
+ border-bottom: solid 1px #c9c9c9;
+}
+
+.grid .tux-groupselector__filter__tabs {
+ position: absolute; /* grid override */
+ bottom: 0;
+}
+
+.grid .tux-groupselector__filter__search {
+ position: absolute; /* grid override */
+ padding-right: 0; /* grid override */
+ right: 0;
+ bottom: 2px;
+}
+
+.tux-groupselector__filter__search__input {
+ font-size: 14px;
+ width: 100%;
+ height: 28px;
+ border: 1px solid #C9C9C9;
+ padding: 0 5px;
+}
+
+.tux-groupselector__filter__search__icon {
+ background: url('../images/search.png') no-repeat scroll right center transparent;
+ background-image: -webkit-linear-gradient(transparent, transparent), url(../images/search.svg);
+ /* @embed */
+ background-image: linear-gradient(transparent, transparent), url(../images/search.svg);
+ background-size: 25px;
+ height: 28px;
+ width: 28px;
+ float: right;
+}
+
+.tux-groupselector button {
+ height: 32px;
+ margin: 5px;
+ font-weight: bold;
+}
+
+/*
+ * Group tab
+ */
+.tux-grouptab {
+ color: #252525;
+ cursor: pointer;
+ padding: 2px 5px;
+ margin: 0 4px;
+ display: inline-block;
+}
+
+.tux-grouptab--selected {
+ border-bottom: 2px solid #0645AD;
+}
+
+/*
+ * Group list
+ */
+.tux-grouplist {
+ max-height: 400px;
+ overflow-y: auto;
+ overflow-x: hidden;
+ background-color: #FFFFFF;
+ min-height: 200px;
+ border-radius: 0 0 5px 5px;
+}
+
+.tux-grouplist__item {
+ position: relative;
+ border-bottom: 1px solid #EEEEEE;
+ height: 50px;
+ cursor: pointer;
+}
+
+.grid .tux-grouplist__item__label {
+ padding-bottom: 3px; /* grid override */
+ padding-left: 15px; /* grid override */
+ font-weight: normal;
+ line-height: 40px;
+ cursor: pointer;
+ white-space: nowrap;
+}
+
+.tux-grouplist__item__label .tux-statsbar {
+ position: absolute;
+ bottom: 0;
+ width: 150px;
+}
+
+.tux-grouplist__item__icon {
+ background: url(../images/project.png) no-repeat scroll right center transparent;
+ background-image: -webkit-linear-gradient(transparent, transparent), url(../images/project.svg);
+ /* @embed */
+ background-image: linear-gradient(transparent, transparent), url(../images/project.svg);
+ /* Keep this in sync with js! */
+ background-size: 32px;
+ height: 50px;
+ width: 50px;
+}
+
+.grid .tux-grouplist__item__subgroups {
+ position: absolute; /* grid override */
+ padding: 0 15px 2px 0; /* grid override */
+ font-weight: normal;
+ line-height: 1.25em;
+ bottom: 0;
+ right: 0;
+ text-align: right;
+ color: #777;
+ font-size: 10pt;
+}
diff --git a/MLEB/Translate/resources/css/ext.translate.helplink.css b/MLEB/Translate/resources/css/ext.translate.helplink.css
new file mode 100644
index 00000000..c6887e97
--- /dev/null
+++ b/MLEB/Translate/resources/css/ext.translate.helplink.css
@@ -0,0 +1,18 @@
+.mw-translate-helplink {
+ /* @embed */
+ background: url(../images/help.png) no-repeat scroll left center transparent;
+ padding-left: 20px;
+}
+
+/* BC for MW <= 1.24 */
+.mw-translate-helplink-wrapper {
+ float: right;
+ width: 100%;
+ display: block;
+ margin-top: -10px;
+ margin-bottom: -10px;
+}
+
+.mw-translate-helplink-wrapper .mw-translate-helplink {
+ float: right;
+}
diff --git a/MLEB/Translate/resources/css/ext.translate.loader.css b/MLEB/Translate/resources/css/ext.translate.loader.css
new file mode 100644
index 00000000..73594ea0
--- /dev/null
+++ b/MLEB/Translate/resources/css/ext.translate.loader.css
@@ -0,0 +1,45 @@
+/* Loading indicator: */
+
+@-webkit-keyframes tux-loading-indicator-spin {
+ from {
+ -webkit-transform: rotate(0deg);
+ }
+ to {
+ -webkit-transform: rotate(360deg);
+ }
+}
+
+@keyframes tux-loading-indicator-spin {
+ from {
+ transform: rotate(0deg);
+ }
+ to {
+ transform: rotate(360deg);
+ }
+}
+
+.tux-loading-indicator {
+ float: left;
+ background: transparent url(../images/loading.gif) right bottom no-repeat;
+ background-image: -webkit-linear-gradient(transparent, transparent), url(../images/loading.svg);
+ /* @embed */
+ background-image: linear-gradient(transparent, transparent), url(../images/loading.svg);
+ background-size: 100%;
+ -webkit-animation-name: tux-loading-indicator-spin;
+ -webkit-animation-duration: 1.5s;
+ -webkit-animation-iteration-count: infinite;
+ -webkit-animation-timing-function: linear;
+ animation-name: tux-loading-indicator-spin;
+ animation-duration: 1.5s;
+ animation-iteration-count: infinite;
+ animation-timing-function: linear;
+ height: 34px;
+ width: 34px;
+ backface-visibility: hidden;
+}
+
+.tux-loading-indicator--centered {
+ top: 50%;
+ left: 50%;
+ position: absolute;
+}
diff --git a/MLEB/Translate/resources/css/ext.translate.messagetable.css b/MLEB/Translate/resources/css/ext.translate.messagetable.css
new file mode 100644
index 00000000..07ec5792
--- /dev/null
+++ b/MLEB/Translate/resources/css/ext.translate.messagetable.css
@@ -0,0 +1,386 @@
+.mw-sp-translate-table {
+ width: 100%;
+ border-width: 1px;
+ border-collapse: collapse;
+}
+
+.mw-sp-translate-table th {
+ background-color: #b2b2ff;
+ border: 1px solid;
+}
+
+.mw-sp-translate-table tr.orig {
+ background-color: #ffe2e2;
+}
+
+.mw-sp-translate-table tr.new {
+ background-color: #e2ffe2;
+}
+
+.mw-sp-translate-table tr.def {
+ background-color: #f0f0ff;
+}
+
+.mw-sp-translate-table tr.ign {
+ background-color: #202020;
+}
+
+.mw-sp-translate-table tr.opt {
+ background-color: #F2F200;
+}
+
+.mw-sp-translate-table .untranslated {
+ background-color: #a2f290;
+}
+
+.mw-sp-translate-table > tbody > tr > * {
+ vertical-align: top;
+ border: 1px solid #909090;
+}
+
+.mw-translate-messagereviewbutton {
+ float: right;
+}
+
+.mw-translate-messagereviewstatus {
+ clear: right;
+ text-align: right;
+}
+
+/*
+ * Tux MessageTable
+ */
+
+/* Default colors */
+.tux-messagelist {
+ color: #252525;
+ background-color: #F8F8F8;
+ max-width: 800px;
+}
+
+.tux-message {
+ height: auto;
+ cursor: pointer;
+}
+
+/* The "block" views of page mode and proofreading mode have 0 margin on
+ * .tux-message. To make the actual editor be of same width, set 0 margin on
+ * the open editor (overriding the -5px set by the grid) */
+.grid .tux-message.open {
+ margin: 0 auto;
+}
+
+.tux-message-item {
+ line-height: 50px;
+ height: 50px;
+ overflow: hidden;
+ margin-right: 5px !important;
+ margin-left: 5px !important;
+ vertical-align: middle;
+ border-bottom: 1px solid #C9C9C9;
+ background: #FFFFFF;
+}
+
+.tux-message-item.translated,
+.tux-message-item.translated:hover,
+.tux-message-item.proofread,
+.tux-message-item.proofread:hover {
+ background-color: #F0F0F0;
+}
+
+.tux-message-item:hover {
+ background-color: #F8F8F8;
+}
+
+.tux-list-status span,
+.tux-list-edit {
+ padding: 5px;
+ /* 15px space for icon */
+ padding-left: 20px;
+ /* Do not combine these two, unless you also fix the
+ * tux-status-* styles below. That includes you, Siebrand ;)
+ */
+ background-position: left;
+ background-repeat: no-repeat;
+}
+
+.tux-info {
+ background-color: #F0F0F0;
+}
+
+.tux-list-source {
+ white-space: nowrap;
+ text-overflow: ellipsis;
+ unicode-bidi: -webkit-isolate;
+ unicode-bidi: -moz-isolate;
+ unicode-bidi: isolate;
+}
+
+.tux-list-translation {
+ white-space: nowrap;
+ color: #565656;
+ padding-left: 5px;
+ text-overflow: ellipsis;
+ unicode-bidi: -webkit-isolate;
+ unicode-bidi: -moz-isolate;
+ unicode-bidi: isolate;
+}
+
+.tux-list-message {
+ overflow: hidden;
+ text-overflow: ellipsis;
+}
+
+.tux-status-unsaved {
+ background-image: url(../images/label-pen.png);
+ background-image: -webkit-linear-gradient(transparent, transparent), url(../images/label-pen.svg);
+ /* @embed */
+ background-image: linear-gradient(transparent, transparent), url(../images/label-pen.svg);
+}
+
+.tux-status-translated,
+.tux-status-proofread {
+ background-image: url(../images/label-tick.png);
+ background-image: -webkit-linear-gradient(transparent, transparent), url(../images/label-tick.svg);
+ /* @embed */
+ background-image: linear-gradient(transparent, transparent), url(../images/label-tick.svg);
+}
+
+.tux-status-fuzzy {
+ background-image: url(../images/label-clock.png);
+ background-image: -webkit-linear-gradient(transparent, transparent), url(../images/label-clock.svg);
+ /* @embed */
+ background-image: linear-gradient(transparent, transparent), url(../images/label-clock.svg);
+}
+
+.tux-list-edit a {
+ background: transparent url(../images/action-edit.png) left center no-repeat;
+ background-image: -webkit-linear-gradient(transparent, transparent), url(../images/action-edit.svg);
+ /* @embed */
+ background-image: linear-gradient(transparent, transparent), url(../images/action-edit.svg);
+ background-size: 18px 18px;
+ padding-left: 19px;
+}
+
+.tux-messagetable-loader {
+ height: 75px;
+ color: #565656;
+ padding: 15px;
+ top: 0;
+ background: #F0F0F0 16px 50%;
+ -webkit-box-shadow: 0 1px 4px rgba(0, 0, 0, 0.3), 0 0 20px rgba(0, 0, 0, 0.1) inset;
+ box-shadow: 0 1px 4px rgba(0, 0, 0, 0.3), 0 0 20px rgba(0, 0, 0, 0.1) inset;
+}
+
+.tux-messagetable-loader-count {
+ padding: 0 0 5px 46px;
+ font-size: 25px;
+}
+
+.tux-messagetable-loader-more {
+ padding-left: 46px;
+ font-size: 15px;
+}
+
+.tux-action-bar {
+ margin: 0 !important;
+ background-color: #F0F0F0;
+ color: #252525;
+ height: 50px;
+ line-height: 50px;
+ -webkit-box-shadow: 0 2px 6px rgba(0, 0, 0, 0.3);
+ box-shadow: 0 2px 6px rgba(0, 0, 0, 0.3);
+ transition: width 250ms;
+}
+
+.tux-action-bar.floating {
+ border-top: 1px solid #DDD;
+ position: fixed;
+ bottom: 0;
+ z-index: 200;
+}
+
+.tux-action-bar .tux-statsbar {
+ position: relative;
+ top: 30px;
+}
+
+.tux-action-bar .toggle.button {
+ height: 40px;
+ font-size: 14px;
+ vertical-align: middle;
+ border-radius: 0;
+ text-shadow: none;
+ margin: 0;
+ text-indent: 0;
+ padding: 0 6px;
+}
+
+.tux-action-bar .tux-view-switcher {
+ padding: 0 5px;
+}
+
+.tux-action-bar .tux-view-switcher .toggle.button {
+ padding: 0 2px 0 0;
+}
+
+.tux-action-bar .tux-view-switcher .toggle.button:first-child {
+ border-radius: 3px 0 0 3px;
+ border-right: none;
+}
+
+.tux-action-bar .tux-view-switcher .toggle.button:last-child {
+ border-radius: 0 3px 3px 0;
+ border-left: none;
+}
+
+.tux-action-bar .tux-view-switcher .toggle.button:before {
+ content: "";
+ height: 15px;
+ width: 25px;
+ display: inline-block;
+ vertical-align: bottom;
+}
+
+.tux-action-bar .translate-mode-button {
+ width: 30%;
+}
+
+.tux-action-bar .translate-mode-button:before {
+ background: transparent url(../images/view-list.png) center center no-repeat;
+ background-image: -webkit-linear-gradient(transparent, transparent), url(../images/view-list.svg);
+ /* @embed */
+ background-image: linear-gradient(transparent, transparent), url(../images/view-list.svg);
+}
+
+.tux-action-bar .translate-mode-button.down:before {
+ background: transparent url(../images/view-list-hi.png) center center no-repeat;
+ background-image: -webkit-linear-gradient(transparent, transparent), url(../images/view-list-hi.svg);
+ /* @embed */
+ background-image: linear-gradient(transparent, transparent), url(../images/view-list-hi.svg);
+}
+
+.tux-action-bar .page-mode-button {
+ width: 30%;
+}
+
+.tux-action-bar .page-mode-button:before {
+ background: transparent url(../images/view-page.png) center center no-repeat;
+ background-image: -webkit-linear-gradient(transparent, transparent), url(../images/view-page.svg);
+ /* @embed */
+ background-image: linear-gradient(transparent, transparent), url(../images/view-page.svg);
+}
+
+.tux-action-bar .page-mode-button.down:before {
+ background: transparent url(../images/view-list-hi.png) center center no-repeat;
+ background-image: -webkit-linear-gradient(transparent, transparent), url(../images/view-page-hi.svg);
+ /* @embed */
+ background-image: linear-gradient(transparent, transparent), url(../images/view-page-hi.svg);
+}
+
+.tux-action-bar .proofread-mode-button {
+ width: 36%;
+}
+
+.tux-action-bar .proofread-mode-button:before {
+ background: transparent url(../images/view-proofread.png) center center no-repeat;
+ background-image: -webkit-linear-gradient(transparent, transparent), url(../images/view-proofread.svg);
+ /* @embed */
+ background-image: linear-gradient(transparent, transparent), url(../images/view-proofread.svg);
+}
+
+.tux-action-bar .proofread-mode-button.down:before {
+ background: transparent url(../images/view-proofread-hi.png) center center no-repeat;
+ background-image: -webkit-linear-gradient(transparent, transparent), url(../images/view-proofread-hi.svg);
+ /* @embed */
+ background-image: linear-gradient(transparent, transparent), url(../images/view-proofread-hi.svg);
+}
+
+.tux-action-bar .toggle.button.down {
+ color: #FFF;
+ background: #252525;
+}
+
+.ext-translate-container .tux-messagelist .tux-message-filter-result {
+ color: #252525;
+ line-height: 35px;
+ font-size: 15px;
+ vertical-align: middle;
+ border-bottom: 1px solid #C9C9C9;
+ margin: 0;
+ padding: 0 5px;
+}
+
+.tux-message-filter-result.highlight {
+ background: #FFF5AA;
+}
+
+.tux-message-filter-result .button {
+ height: 30px;
+ padding: 5px;
+ margin: 5px 0;
+ font-size: 15px;
+ vertical-align: middle;
+}
+
+.tux-empty-list {
+ padding: 20px;
+}
+
+.tux-empty-list-header {
+ font-size: 25px;
+ padding: 5px 0;
+}
+
+.tux-empty-list-guide {
+ font-size: 15px;
+ color: #565656;
+ padding: 5px 0;
+}
+
+.tux-empty-list-actions {
+ font-size: 15px;
+ padding: 8px 0;
+}
+
+.tux-empty-list-actions a {
+ cursor: pointer;
+ margin: 0 10px;
+}
+
+
+.ext-translate-language-selector-label {
+ color: #555555;
+}
+
+.ext-translate-language-selector {
+ float: right;
+ text-align: right;
+ border: medium none;
+ font-size: 14pt;
+ font-weight: normal;
+ line-height: 1.25em;
+ padding-bottom: 3px;
+ padding-left: 15px;
+ padding-top: 1.25em;
+}
+
+/* The triangle shaped down-pointing callout after the language name
+ * in the target language selector
+ */
+.ext-translate-language-selector:after {
+ margin-left: 4px;
+ border-left: 4px solid transparent;
+ border-right: 4px solid transparent;
+ border-top: 4px solid #0645AD;
+ content: "";
+ display: inline-block;
+ vertical-align: middle;
+}
+
+.ext-translate-language-selector .uls {
+ color: #0645AD;
+ cursor: pointer;
+ min-height: 1px;
+ position: relative;
+}
diff --git a/MLEB/Translate/resources/css/ext.translate.messagewebimporter.css b/MLEB/Translate/resources/css/ext.translate.messagewebimporter.css
new file mode 100644
index 00000000..de322ca2
--- /dev/null
+++ b/MLEB/Translate/resources/css/ext.translate.messagewebimporter.css
@@ -0,0 +1,3 @@
+.mw-tmi-deleted .mw-tmi-diff .mw-tmi-new {
+ font-weight: normal;
+}
diff --git a/MLEB/Translate/resources/css/ext.translate.navitoggle.css b/MLEB/Translate/resources/css/ext.translate.navitoggle.css
new file mode 100644
index 00000000..96882ad7
--- /dev/null
+++ b/MLEB/Translate/resources/css/ext.translate.navitoggle.css
@@ -0,0 +1,64 @@
+/**
+ * Introduces a toggle icon than can be used to hide navigation menu in vector
+ * @author Niklas Laxström
+ * @license GPL-2.0+
+ */
+
+.tux-navitoggle {
+ height: 40px;
+ width: 20px;
+ position: absolute;
+ top: 0;
+ z-index: 10000000004;
+ cursor: pointer;
+}
+
+.tux-navitoggle {
+ background: url('../images/expand-rtl.png') no-repeat scroll right center transparent;
+ background-image: -webkit-linear-gradient(transparent, transparent), url(../images/expand-rtl.svg);
+ /* @embed */
+ background-image: linear-gradient(transparent, transparent), url(../images/expand-rtl.svg);
+}
+
+.tux-navi-collapsed .tux-navitoggle {
+ background: url('../images/expand-ltr.png') no-repeat scroll right center transparent;
+ background-image: -webkit-linear-gradient(transparent, transparent), url(../images/expand-ltr.svg);
+ /* @embed */
+ background-image: linear-gradient(transparent, transparent), url(../images/expand-ltr.svg);
+}
+
+.tux-navi-collapsed #mw-panel {
+ display: none;
+}
+
+.tux-navi-collapsed #content {
+ margin-left: 0;
+}
+
+.tux-navi-collapsed #left-navigation {
+ left: 0;
+}
+
+.tux-navi-collapsed .tux-navitoggle {
+ left: 40px !important;
+}
+
+.tux-navi-minilogo {
+ display: none;
+ position: absolute;
+ top: 0;
+ left: 0;
+}
+
+.tux-navi-collapsed .tux-navi-minilogo {
+ display: block;
+}
+
+.tux-navi-minilogo a {
+ width: 40px;
+ height: 40px;
+ background-size: 30px;
+ display: block;
+ background-repeat: no-repeat;
+ background-position: center center;
+}
diff --git a/MLEB/Translate/resources/css/ext.translate.pagemode.css b/MLEB/Translate/resources/css/ext.translate.pagemode.css
new file mode 100644
index 00000000..b249d9d2
--- /dev/null
+++ b/MLEB/Translate/resources/css/ext.translate.pagemode.css
@@ -0,0 +1,117 @@
+.ext-translate-container .tux-messagelist .tux-message-pagemode {
+ min-height: 50px;
+ margin: 0 auto;
+ vertical-align: middle;
+ background: #F8F8F8;
+}
+
+.ext-translate-container .tux-messagelist .tux-message-pagemode .tux-message-item-compact {
+ padding: 35px 0;
+ line-height: 50px;
+ overflow: hidden;
+ margin-right: auto;
+ margin-left: auto;
+ vertical-align: middle;
+ border-bottom: 1px solid #f0f0f0;
+ border-left: 1px solid #DDDDDD;
+ border-right: 1px solid #DDDDDD;
+ background: #FFFFFF;
+ max-width: 900px;
+}
+
+.ext-translate-container .tux-messagelist .tux-message-pagemode .tux-message-item-compact:hover {
+ background: #FCFCFC;
+}
+
+.ext-translate-container .tux-messagelist .tux-message-pagemode:first-child .tux-message-item-compact {
+ margin-top: 10px;
+ padding-top: 60px;
+ border-top: 1px solid #DDDDDD;
+}
+
+.ext-translate-container .tux-messagelist .tux-message-pagemode:last-child .tux-message-item-compact {
+ margin-bottom: 10px;
+ padding-bottom: 60px;
+ border-bottom: 1px solid #DDDDDD;
+}
+
+.tux-pagemode-source,
+.tux-pagemode-translation {
+ word-wrap: break-word;
+}
+
+.tux-message-pagemode.open .tux-pagemode-status,
+.tux-message-pagemode.open .tux-pagemode-source,
+.tux-message-pagemode.open .tux-pagemode-translation,
+.tux-message-pagemode.open .tux-pagemode-action-block {
+ display: none;
+}
+
+.tux-messagelist .tux-message-pagemode .tux-pagemode-source {
+ color: #555;
+ font-size: 16px;
+ line-height: 1.5em;
+ padding-right: 25px;
+ padding-left: 25px;
+}
+
+.tux-messagelist .tux-message-pagemode .tux-pagemode-translation {
+ color: #252525;
+ font-size: 16px;
+ line-height: 1.5em;
+ padding-left: 20px;
+}
+
+.tux-pagemode-action-block {
+ top: -5px;
+ right: -5px;
+}
+
+.tux-pagemode-status {
+ top: -10px;
+}
+
+.tux-pagemode-status.fuzzy {
+ background: url(../images/outdated-ltr.png) left center no-repeat;
+ background-image: -webkit-linear-gradient(transparent, transparent), url(../images/outdated-ltr.svg);
+ /* @embed */
+ background-image: linear-gradient(transparent, transparent), url(../images/outdated-ltr.svg);
+ height: 40px;
+}
+
+.tux-pagemode-status.untranslated {
+ background: url(../images/translate-ltr.png) left center no-repeat;
+ background-image: -webkit-linear-gradient(transparent, transparent), url(../images/translate-ltr.svg);
+ /* @embed */
+ background-image: linear-gradient(transparent, transparent), url(../images/translate-ltr.svg);
+ height: 40px;
+}
+
+.tux-pagemode-action {
+ background: url(../images/check-sprite-ltr.png) right top no-repeat;
+ background-image: -webkit-linear-gradient(transparent, transparent), url(../images/check-sprite-ltr.svg);
+ /* @embed */
+ background-image: linear-gradient(transparent, transparent), url(../images/check-sprite-ltr.svg);
+ height: 31px;
+ cursor: pointer;
+}
+
+.tux-pagemode-action:hover {
+ background-position: right -31px;
+}
+
+.tux-pagemode-edit {
+ background-image: url(../images/edit-mark.png);
+ background-image: -webkit-linear-gradient(transparent, transparent), url(../images/edit-mark.svg);
+ /* @embed */
+ background-image: linear-gradient(transparent, transparent), url(../images/edit-mark.svg);
+ background-repeat: no-repeat;
+ background-position: right center;
+ height: 40px;
+ cursor: pointer;
+ visibility: hidden;
+}
+
+.tux-message-pagemode:hover .tux-pagemode-edit {
+ visibility: visible;
+}
diff --git a/MLEB/Translate/resources/css/ext.translate.proofread.css b/MLEB/Translate/resources/css/ext.translate.proofread.css
new file mode 100644
index 00000000..2e9c8d49
--- /dev/null
+++ b/MLEB/Translate/resources/css/ext.translate.proofread.css
@@ -0,0 +1,185 @@
+.ext-translate-container .tux-messagelist .tux-message-proofread {
+ min-height: 50px;
+ margin: 0 auto;
+ vertical-align: middle;
+ background: #F8F8F8;
+}
+
+.ext-translate-container .tux-messagelist .tux-message-proofread .tux-message-item-compact {
+ padding: 30px 0;
+ overflow: hidden;
+ margin-right: auto;
+ margin-left: auto;
+ vertical-align: middle;
+ border-bottom: 1px solid #f0f0f0;
+ border-left: 1px solid #DDDDDD;
+ border-right: 1px solid #DDDDDD;
+ background: #FFFFFF;
+ max-width: 900px;
+}
+
+.ext-translate-container .tux-messagelist .tux-message-proofread .tux-message-item-compact:hover {
+ background: #FCFCFC;
+}
+
+.ext-translate-container .tux-messagelist .tux-message-proofread:first-child .tux-message-item-compact {
+ margin-top: 10px;
+ padding-top: 60px;
+ border-top: 1px solid #DDDDDD;
+}
+
+.ext-translate-container .tux-messagelist .tux-message-proofread:last-child .tux-message-item-compact {
+ margin-bottom: 10px;
+ padding-bottom: 60px;
+ border-bottom: 1px solid #DDDDDD;
+}
+
+.tux-proofread-source,
+.tux-proofread-translation {
+ word-wrap: break-word;
+ white-space: pre-wrap;
+}
+
+.tux-message-proofread.open .tux-proofread-status,
+.tux-message-proofread.open .tux-proofread-source,
+.tux-message-proofread.open .tux-proofread-translation,
+.tux-message-proofread.open .tux-proofread-action-block {
+ display: none;
+}
+
+.tux-messagelist .tux-message-proofread .tux-proofread-source {
+ color: #555;
+ font-size: 16px;
+ line-height: 1.5em;
+ padding-right: 25px;
+ padding-left: 25px;
+}
+
+.tux-messagelist .tux-message-proofread .tux-proofread-translation {
+ color: #252525;
+ font-size: 16px;
+ line-height: 1.5em;
+ padding-left: 20px;
+}
+
+.tux-proofread-action-block {
+ top: -5px;
+ right: -5px;
+}
+
+.ext-translate-container .tux-messagelist .tux-message-proofread.own-translation,
+.ext-translate-container .tux-messagelist .tux-message-proofread.own-translation:hover {
+ background: #FBFBFB;
+}
+
+.translated-by-self {
+ color: #777;
+ text-align: right;
+ font-size: 12px;
+ margin-right: 5px;
+ margin-left: auto;
+ width: 18px;
+ height: 18px; /* Icon height + 3px */
+ background: url(../images/user-small.png) top right no-repeat;
+ background-image: -webkit-linear-gradient(transparent, transparent), url(../images/user-small.svg);
+ /* @embed */
+ background-image: linear-gradient(transparent, transparent), url(../images/user-small.svg);
+}
+
+.tux-proofread-status {
+ top: -10px;
+}
+
+.tux-proofread-status.fuzzy {
+ background: url(../images/outdated-ltr.png) left center no-repeat;
+ background-image: -webkit-linear-gradient(transparent, transparent), url(../images/outdated-ltr.svg);
+ /* @embed */
+ background-image: linear-gradient(transparent, transparent), url(../images/outdated-ltr.svg);
+ height: 40px;
+}
+
+.tux-proofread-status.untranslated {
+ background: url(../images/translate-ltr.png) left center no-repeat;
+ background-image: -webkit-linear-gradient(transparent, transparent), url(../images/translate-ltr.svg);
+ /* @embed */
+ background-image: linear-gradient(transparent, transparent), url(../images/translate-ltr.svg);
+ height: 40px;
+}
+
+.tux-proofread-action {
+ background-position: right top;
+ background-repeat: no-repeat;
+ background-image: url(../images/check-sprite-ltr.png);
+ background-image: -webkit-linear-gradient(transparent, transparent), url(../images/check-sprite-ltr.svg);
+ /* @embed */
+ background-image: linear-gradient(transparent, transparent), url(../images/check-sprite-ltr.svg);
+ /* There is 1px white row between each icon */
+ height: 30px;
+ cursor: pointer;
+}
+
+.tux-proofread-action:hover {
+ background-position: right -31px;
+}
+
+.tux-proofread-action.accepted {
+ cursor: default;
+ background-position: right -62px;
+}
+
+.proofread-by-others .tux-proofread-action {
+ background-position: right -124px;
+}
+
+.proofread-by-others .tux-proofread-action:hover {
+ background-position: right -155px;
+}
+
+.proofread-by-others .tux-proofread-action.accepted {
+ cursor: default;
+ background-position: right -186px;
+}
+
+.tux-proofread-edit {
+ background-image: url(../images/edit-mark.png);
+ background-image: -webkit-linear-gradient(transparent, transparent), url(../images/edit-mark.svg);
+ /* @embed */
+ background-image: linear-gradient(transparent, transparent), url(../images/edit-mark.svg);
+ background-repeat: no-repeat;
+ background-position: right center;
+ height: 50px;
+ cursor: pointer;
+ visibility: hidden;
+ text-align: right;
+}
+
+.tux-message-proofread:hover .tux-proofread-edit {
+ visibility: visible;
+}
+
+.tux-proofread-edit-label {
+ position: relative;
+ color: #777777;
+ display: inline-block;
+ font-size: 13px;
+ padding-top: 30px;
+ padding-right: 2px;
+}
+
+.tux-proofread-count {
+ color: #777;
+ font-size: 15px;
+ padding-right: 5px;
+ text-align: right;
+}
+
+.tux-proofread-count:before {
+ content: '';
+ display: inline-block;
+ background: url(../images/check-small.png) left bottom no-repeat;
+ background-image: -webkit-linear-gradient(transparent, transparent), url(../images/check-small.svg);
+ /* @embed */
+ background-image: linear-gradient(transparent, transparent), url(../images/check-small.svg);
+ height: 12px;
+ width: 14px;
+}
diff --git a/MLEB/Translate/resources/css/ext.translate.quickedit.css b/MLEB/Translate/resources/css/ext.translate.quickedit.css
new file mode 100644
index 00000000..3e8c7efc
--- /dev/null
+++ b/MLEB/Translate/resources/css/ext.translate.quickedit.css
@@ -0,0 +1,159 @@
+.mw-ajax-dialog .mw-ajax-loader {
+ margin: 2em;
+}
+
+.mw-ajax-dialog {
+ font-size: small;
+}
+
+.tqe-inlineeditable {
+ height: auto;
+}
+
+table .tqe-inlineeditable .mw-ajax-dialog {
+ margin: 10px;
+}
+
+.tqe-editor-loaded {
+ background-color: #FFF !important;
+}
+
+.mw-sp-translate-edit-fields a {
+ color: blue;
+}
+
+.mw-translate-tmsug {
+ margin-bottom: 0.2em;
+}
+
+.mw-sp-translate-edit-fields fieldset {
+ line-height: normal;
+ margin: 0;
+ border: 1px solid #DBDBDB;
+ /* Browsers suck
+ max-height: 250px; */
+ overflow: auto;
+}
+
+.mw-sp-translate-edit-fields legend {
+ background-color: transparent;
+}
+
+.mw-translate-edit-extra {
+ border-bottom: 1px solid black;
+}
+
+.mw-translate-legend {
+ font-weight: bold;
+}
+
+.mw-translate-legend {
+ border-left: 1px solid black;
+ float: right;
+ margin-left: 1em;
+ padding-left: 5pt;
+}
+
+/* Align the adder according to the target language */
+/* @noflip */
+.mw-translate-adder-ltr {
+ float: left;
+ padding-right: 1px;
+}
+
+/* @noflip */
+.mw-translate-adder-rtl {
+ float: right;
+ padding-left: 1px;
+}
+
+.mw-translate-sep {
+ margin-bottom: 1ex;
+ margin-top: 0.5ex;
+}
+
+.mw-translate-edit-deftext {
+ /*
+ * Some browsers will render the monospace text too small, namely Firefox, Chrome and Safari.
+ * Specifying any valid, second value will trigger correct behavior without forcing a different font.
+ * See docs/uidesign/monospace.html of MediaWiki core source code.
+ */
+ font-family: monospace, monospace;
+}
+
+.mw-translate-edit-area {
+ padding: 0;
+ width: 100%;
+}
+
+/* Buttons */
+.mw-translate-save {
+ font-weight: bold;
+}
+
+.mw-translate-history {
+ float: right;
+}
+
+.mw-ajax-dialog #summary {
+ width: 5em;
+}
+
+/* Blue tints for translate fieldsets */
+.mw-sp-translate-edit-inother {
+ background-color: #F8F8FF;
+}
+
+.mw-sp-translate-in-other-small {
+ background-color: #F0F8FF;
+}
+
+.mw-sp-translate-in-other-big {
+ background-color: #F0F8FF;
+}
+
+.mw-sp-translate-message-documentation {
+ background-color: #EBEBEB;
+}
+
+.mw-sp-translate-edit-definition {
+ background-color: #EAF3FC;
+}
+
+.mw-sp-translate-edit-warnings {
+ background-color: #FFDBDB;
+}
+
+.mw-translate-edit-tmsugs {
+ background-color: #C0F9B6;
+}
+
+.mw-sp-translate-latestchange {
+ padding-bottom: 0;
+}
+
+.tqe-fakeheader {
+ border: 1px solid #CCC;
+ padding: .75em;
+ font-weight: bold;
+ line-height: 2em;
+}
+
+.tqe-fakeheader input {
+ height: 2em;
+ font-weight: bold;
+}
+
+.mw-translate-close {
+ float: right;
+}
+
+.mw-translate-inputs {
+ overflow: auto; /* Fix "100%" width after floats issue */
+ padding: 2px; /* Avoid random scrollbars (browsers suck) */
+}
+
+.mw-translate-bottom {
+ clear: both;
+ margin-top: -3px; /* Reduce excess whitespace */
+}
diff --git a/MLEB/Translate/resources/css/ext.translate.special.aggregategroups.css b/MLEB/Translate/resources/css/ext.translate.special.aggregategroups.css
new file mode 100644
index 00000000..04688980
--- /dev/null
+++ b/MLEB/Translate/resources/css/ext.translate.special.aggregategroups.css
@@ -0,0 +1,40 @@
+span.tp-aggregate-remove-ag-button,
+span.tp-aggregate-remove-button {
+ /* @embed */
+ background: url(../images/remove.png) no-repeat scroll left center transparent;
+ padding: 10px;
+ cursor: pointer;
+}
+
+span.tp-aggregate-edit-ag-button {
+ /* @embed */
+ background: url(../images/action-edit.png) no-repeat scroll left center transparent;
+ padding: 10px;
+ cursor: pointer;
+}
+
+a.tpt-add-new-group {
+ /* @embed */
+ background: url(../images/add.png) no-repeat scroll left center transparent;
+ padding-left: 20px;
+}
+
+input.tp-aggregategroup-add-name {
+ width: 250px;
+}
+
+input.tp-aggregategroup-add-description {
+ width: 500px;
+}
+
+div.hidden {
+ display: none;
+}
+
+.tp-aggregategroup-edit-name {
+ width: 250px;
+}
+
+.tp-aggregategroup-edit-description {
+ width: 500px;
+}
diff --git a/MLEB/Translate/resources/css/ext.translate.special.languagestats.css b/MLEB/Translate/resources/css/ext.translate.special.languagestats.css
new file mode 100644
index 00000000..79bf9a18
--- /dev/null
+++ b/MLEB/Translate/resources/css/ext.translate.special.languagestats.css
@@ -0,0 +1,21 @@
+.mw-sp-translate-table.wikitable tr:hover td {
+ background: white;
+}
+
+.groupexpander-all {
+ text-align: right;
+}
+
+.groupexpander {
+ float: right;
+}
+
+.statstable .expanded,
+.statstable .expanded a {
+ cursor: n-resize;
+}
+
+.statstable .collapsed,
+.statstable .collapsed a {
+ cursor: s-resize;
+}
diff --git a/MLEB/Translate/resources/css/ext.translate.special.managegroups.css b/MLEB/Translate/resources/css/ext.translate.special.managegroups.css
new file mode 100644
index 00000000..e919e1e9
--- /dev/null
+++ b/MLEB/Translate/resources/css/ext.translate.special.managegroups.css
@@ -0,0 +1,20 @@
+.mw-translate-smg-change {
+ padding-bottom: 1em;
+ margin-bottom: 2em;
+}
+
+.mw-translate-smg-submit {
+ font-size: 5em;
+ margin: auto;
+ width: 80%;
+ display: block;
+}
+
+.diff-lineno {
+ display: none;
+}
+
+.mw-translate-smg-header td {
+ font-size: 200%;
+ font-weight: bold;
+}
diff --git a/MLEB/Translate/resources/css/ext.translate.special.managetranslatorsandbox.css b/MLEB/Translate/resources/css/ext.translate.special.managetranslatorsandbox.css
new file mode 100644
index 00000000..a00c27e0
--- /dev/null
+++ b/MLEB/Translate/resources/css/ext.translate.special.managetranslatorsandbox.css
@@ -0,0 +1,278 @@
+/**
+ * CSS for special page.
+ * @author Niklas Laxström
+ * @author Sucheta Ghoshal
+ * @author Pau Giner
+ * @license GPL-2.0+
+ */
+
+/* Hide the page title to give more space for the content */
+#firstHeading {
+ display: none;
+}
+
+/* Panes */
+.filter.pane,
+.search.pane {
+ border-bottom: 1px solid #575656;
+ height: 2em;
+ line-height: 50px;
+ font-size: 24px;
+}
+
+.search.pane {
+ background: url('../images/search.png') no-repeat scroll left top transparent;
+ background-image: -webkit-linear-gradient(transparent, transparent), url(../images/search.svg);
+ /* @embed */
+ background-image: linear-gradient(transparent, transparent), url(../images/search.svg);
+ background-size: 25px;
+ padding-left: 25px;
+}
+
+.request-filter-box {
+ font-size: 14px;
+ height: 28px;
+ width: 100%;
+ border: 1px solid #C9C9C9;
+ padding: 0 5px;
+}
+
+.tsb-body {
+ border: 1px solid #c9c9c9;
+ border-top: none;
+}
+
+.requests.pane,
+.details.pane {
+ border-top: 1px solid #d3d2d2;
+}
+
+.requests.pane .requests-list,
+.details.pane {
+ overflow: auto;
+}
+
+.details.pane {
+ border-left: 1px solid #DDDDDD;
+ left: -1px;
+ padding: 5px 20px 10px 20px;
+}
+
+/* Requests pane */
+.requests.pane,
+.requests.pane .request,
+.requests.pane .request-header {
+ margin: 0;
+ padding: 0;
+}
+
+.request {
+ border-right: 1px solid #c9c8c8;
+ border-bottom: 1px solid #c9c8c8;
+ cursor: pointer;
+}
+
+.request:last-child {
+ border-bottom: none;
+}
+
+.request:hover {
+ background-color: #fafafa;
+}
+
+.request.selected {
+ background-color: #f0f0f0;
+}
+
+.request .amount {
+ height: 100%;
+ font-size: 3em;
+ color: #96989A;
+ background-color: #f7f8f8;
+ padding: 20px 5px;
+ text-align: center;
+}
+
+.request .tsb-header,
+.request .request-selector {
+ height: 30px;
+ line-height: 30px;
+ font-size: 16px;
+ text-wrap: nowrap;
+}
+
+.request .email,
+.request .signup-age {
+ height: 20px;
+ line-height: 20px;
+ font-size: 12px;
+ color: #6c6d70;
+ text-wrap: nowrap;
+}
+
+.request .tsb-header,
+.request .username,
+.request .email {
+ padding-left: 10px;
+ overflow: ellipsis;
+}
+
+.request .signup-age {
+ text-align: center;
+ overflow: hidden;
+}
+
+.request .request-info,
+.request .approval {
+ padding-top: 5px;
+}
+
+/* Details pane */
+
+.tsb-details-no-translations {
+ color: #999999;
+}
+.signup-comment-label {
+ color: #E85355;
+ font-size: 14px;
+}
+
+.signup-comment-text {
+ color: #333333;
+ font-size: 16px;
+ line-height: 1.5em;
+ padding: 5px 0;
+}
+
+.details.pane > .row {
+ padding-top: 15px;
+}
+
+.details.pane .tsb-header {
+ font-size: 30px;
+ font-weight: lighter;
+}
+
+.details.pane .reminder-email {
+ color: #6c6d70;
+ font-size: 14px;
+ padding-top: 15px;
+}
+
+.details.pane .reminder-email .send-reminder {
+ padding-left: 1em;
+ padding-right: 1em;
+}
+
+.details.pane .languages {
+ color: #6c6d70;
+ font-size: 16px;
+ font-weight: lighter;
+ padding-top: 10px;
+}
+
+.details.pane .languages span {
+ margin-right: 2em;
+}
+
+.details.pane .actions {
+ font-size: 22px;
+}
+
+.actions .button {
+ margin-right: 1.5em;
+}
+
+.request-header {
+ border-right: 1px solid #c9c9c9;
+ border-bottom: 1px solid #AAAAAA;
+ line-height: 40px;
+ color: #969696;
+ background-color: #F8F8F8;
+}
+
+.request-footer {
+ border-right: 1px solid #c9c9c9;
+ border-top: 1px solid #AAAAAA;
+ color: #969696;
+ line-height: 40px;
+ padding: 0 5px;
+ background-color: #F8F8F8;
+}
+
+.request-footer .selected-counter,
+.request-footer .older-requests-indicator {
+ unicode-bidi: -moz-isolate;
+ unicode-bidi: -webkit-isolate;
+ unicode-bidi: isolate;
+}
+
+.clear-language-selector,
+.language-selector {
+ margin: 10px 0;
+ border-radius: 3px;
+ background: #f8f8f8;
+ border: 1px solid #CCCCCC;
+ cursor: pointer;
+ font-size: 1em;
+ display: block;
+ float: left;
+ border-radius: 3px;
+}
+
+.clear-language-selector {
+ border-radius: 0 3px 3px 0;
+ border-left: none;
+}
+
+.language-selector.selected {
+ cursor: default;
+ border-radius: 3px 0 0 3px;
+ max-width: 80%;
+ max-height: 40px;
+ overflow: hidden;
+ text-overflow: ellipsis;
+ white-space: nowrap;
+}
+
+.language-selector:hover {
+ border-color: #AAAAAA;
+}
+
+.language-selector.unselected:after {
+ content: "";
+ border-top: 4px solid #AAAAAA;
+ border-left: 4px solid transparent;
+ border-right: 4px solid transparent;
+ display: inline-block;
+ vertical-align: middle;
+ margin-left: 0.5em;
+}
+
+textarea.body {
+ height: 300px;
+}
+
+.translations .row {
+ border-bottom: 1px solid #c9c8c8;
+ padding: 10px;
+ font-size: 16px;
+ word-wrap: break-word;
+}
+
+.translations .title {
+ font-size: 16px;
+ background-color: #F7F8F8;
+ font-weight: bold;
+}
+
+.translations .info {
+ font-size: 12px;
+ color: #6c6d70;
+ /*
+ * Align autonyms consistently.
+ * The direction is set according to the language on the frontend
+ * and the alignment is flipped according to the user language.
+ */
+ text-align: left;
+}
diff --git a/MLEB/Translate/resources/css/ext.translate.special.pagemigration.css b/MLEB/Translate/resources/css/ext.translate.special.pagemigration.css
new file mode 100644
index 00000000..514bab8a
--- /dev/null
+++ b/MLEB/Translate/resources/css/ext.translate.special.pagemigration.css
@@ -0,0 +1,65 @@
+.mw-tpm-sp-unit__source,
+.mw-tpm-sp-unit__target {
+ overflow-y: auto;
+ height: 150px;
+ border: 2px solid gray;
+}
+
+.mw-tpm-sp-unit__actions {
+ border: 2px solid transparent;
+}
+
+.hide {
+ display: none;
+}
+
+.mw-tpm-sp-unit:last-child .mw-tpm-sp-action--swap,
+.mw-tpm-sp-unit:last-child .mw-tpm-sp-action--add {
+ display: none;
+}
+
+.mw-tpm-sp-unit {
+ padding-bottom: 10px;
+}
+
+.mw-tpm-sp-unit__source,
+.mw-tpm-sp-unit__target,
+.mw-tpm-sp-unit__actions {
+ height: 150px;
+}
+
+.mw-tpm-sp-action {
+ width: 10%;
+ height: 10%;
+ float: left;
+ margin-left: 5%;
+ margin-right: 5%;
+ cursor: pointer;
+ display: inline-block;
+}
+
+.mw-tpm-sp-action--delete {
+ background: url('../images/trash_darkgray.png') transparent no-repeat;
+ background-image: -webkit-linear-gradient(transparent, transparent), url('../images/trash_darkgray.svg');
+ background-image: linear-gradient(transparent, transparent), url('../images/trash_darkgray.svg');
+}
+
+.mw-tpm-sp-action--swap {
+ background: url('../images/switch.png') transparent no-repeat;
+ background-image: -webkit-linear-gradient(transparent, transparent), url('../images/switch.svg');
+ background-image: linear-gradient(transparent, transparent), url('../images/switch.svg');
+}
+
+.mw-tpm-sp-action--add {
+ background: url('../images/plus_darkgray.png') transparent no-repeat;
+ background-image: -webkit-linear-gradient(transparent, transparent), url('../images/plus_darkgray.svg');
+ background-image: linear-gradient(transparent, transparent), url('../images/plus_darkgray.svg');
+}
+
+.mw-tpm-sp-error__message {
+ font-size: 0.9em;
+ word-wrap: break-word;
+ color: #C00;
+ border: 1px solid #FAC5C5;
+ background-color: #FAE3E3;
+} \ No newline at end of file
diff --git a/MLEB/Translate/resources/css/ext.translate.special.pagetranslation.css b/MLEB/Translate/resources/css/ext.translate.special.pagetranslation.css
new file mode 100644
index 00000000..09cacb60
--- /dev/null
+++ b/MLEB/Translate/resources/css/ext.translate.special.pagetranslation.css
@@ -0,0 +1,27 @@
+.mw-tpt-sp-section {
+ padding-bottom: 3ex;
+}
+
+.mw-tpt-sp-section-type-old {
+ opacity: 0.65;
+}
+
+.mw-tpt-sp-legend {
+ font-weight: bold;
+ font-size: 110%;
+}
+
+.mw-tpt-sp-content {
+ font-size: small;
+ padding-left: 2em;
+ padding-right: 2em;
+}
+
+.ui-autocomplete {
+ max-height: 100px;
+ overflow-y: auto;
+ /* prevent horizontal scrollbar */
+ overflow-x: hidden;
+ /* add padding to account for vertical scrollbar */
+ padding-right: 20px;
+}
diff --git a/MLEB/Translate/resources/css/ext.translate.special.searchtranslations.css b/MLEB/Translate/resources/css/ext.translate.special.searchtranslations.css
new file mode 100644
index 00000000..b8278477
--- /dev/null
+++ b/MLEB/Translate/resources/css/ext.translate.special.searchtranslations.css
@@ -0,0 +1,150 @@
+/**
+ * @author Niklas Laxström
+ * @author Pau Giner
+ * @since 2013-01-10
+ */
+
+/* Facets */
+.tux-searchpage .facet {
+ font-size: 24px;
+ color: #252525;
+ padding: 20px 0 10px 0;
+}
+
+.tux-searchpage .searchcontent .facets {
+ padding: 0 15px 0 5px;
+}
+
+.tux-searchpage .facet-item {
+ font-size: 16px;
+ padding: 4px 5px;
+}
+
+.tux-searchpage .facet-item:hover {
+ background: #f8f8f8;
+ cursor: pointer;
+}
+
+.tux-searchpage .facet-item:first-child {
+ margin-top: 10px;
+}
+
+.tux-searchpage .facet-item .facet-count {
+ color: #AAA;
+ float: right;
+ margin-right: 5%;
+}
+
+.tux-searchpage .facet-level-0 {
+ font-size: 16px;
+}
+
+.tux-searchpage .facet-level-1 {
+ font-size: 14px;
+}
+
+.tux-searchpage .facet-level-2 {
+ font-size: 12px;
+}
+
+.tux-searchpage .facet-level-3 {
+ font-size: 10px;
+}
+
+.tux-searchpage .facet-item .facet-name.selected {
+ font-weight: bold;
+}
+
+/* Results */
+.tux-searchpage .count {
+ color: #555;
+ font-size: 16px;
+ padding-bottom: 10px;
+}
+
+.tux-searchpage .searchcontent .results {
+ color: #252525;
+ padding-left: 10px;
+}
+
+.tux-searchpage .results .tux-text {
+ font-size: 16px;
+ padding-top: 20px;
+}
+
+.tux-searchpage .results .tux-title {
+ color: #555;
+}
+
+/* Search area */
+.tux-searchpage .searchinput {
+ padding: 10px 0;
+}
+
+.tux-searchpage .searchinput .searchinputbox {
+ font-size: 16px;
+ padding: 5px;
+ width: 60%;
+}
+
+.tux-searchpage .searchinput input.button {
+ font-size: 16px;
+ background-color: #E6E6E6;
+ background-image: -webkit-linear-gradient(top, #f0f0f0, #e6e6e6);
+ background-image: -moz-linear-gradient(center top, #F0F0F0, #E6E6E6);
+ background-image: linear-gradient(#F0F0F0, #E6E6E6);
+ border: 1px solid #C9C9C9;
+ border-radius: 3px 3px 3px 3px;
+ color: #252525;
+ cursor: pointer;
+ display: inline-block;
+ padding: 6px 20px;
+ text-align: center;
+ text-shadow: 0 1px 1px rgba(255, 255, 255, 0.75);
+ margin: 0 5px;
+}
+
+.tux-searchpage .searchinput input.button:hover {
+ background-color: #F0F0F0;
+ background-image: -webkit-linear-gradient(top, #f8f8f8, #f0f0f0);
+ background-image: -moz-linear-gradient(center top, #F8F8F8, #F0F0F0);
+ background-image: linear-gradient(#F8F8F8, #F0F0F0);
+ border-color: #C9C9C9;
+}
+
+.tux-searchpage .searchinput input.button:active,
+.tux-searchpage .searchinput input.button.down {
+ background-color: #D8D8D8;
+ background-image: -webkit-linear-gradient(top, #d3d3d3, #d8d8d8);
+ background-image: -moz-linear-gradient(center top, #D3D3D3, #D8D8D8);
+ background-image: linear-gradient(#D3D3D3, #D8D8D8);
+ border-color: #C9C9C9;
+}
+
+h1.firstHeading {
+ display: none;
+}
+
+.translate-search-more-groups,
+.translate-search-more-languages {
+ background-color: #F0F0F0;
+ font-size: 16px;
+ cursor: pointer;
+ padding: 0 6px;
+ border-radius: 2px;
+ border: 1px solid #EEE;
+}
+
+.translate-search-more-groups:hover,
+.translate-search-more-languages:hover {
+ border: 1px solid #CCC;
+ text-decoration: none;
+}
+
+.translate-search-more-groups-info,
+.translate-search-more-languages-info {
+ padding: 5px;
+ color: #888;
+ font-size: 14px;
+ padding: 0 8px;
+}
diff --git a/MLEB/Translate/resources/css/ext.translate.special.supportedlanguages.css b/MLEB/Translate/resources/css/ext.translate.special.supportedlanguages.css
new file mode 100644
index 00000000..7cca22dd
--- /dev/null
+++ b/MLEB/Translate/resources/css/ext.translate.special.supportedlanguages.css
@@ -0,0 +1,20 @@
+.mw-translate-spsl-translators {
+ line-height: 200%;
+}
+
+.mw-special-SupportedLanguages h2 {
+ font-weight: bold;
+ margin-top: 2em;
+}
+
+.tagcloud {
+ line-height: 200%;
+ margin: 5em;
+ text-align: center;
+}
+
+.tagcloud .tag {
+ white-space: nowrap;
+ margin: 0.5ex;
+ color: black;
+}
diff --git a/MLEB/Translate/resources/css/ext.translate.special.translate.css b/MLEB/Translate/resources/css/ext.translate.special.translate.css
new file mode 100644
index 00000000..e34c8720
--- /dev/null
+++ b/MLEB/Translate/resources/css/ext.translate.special.translate.css
@@ -0,0 +1,171 @@
+/*
+ * Form at Special:Translate
+ */
+.mw-sp-translate-error {
+ font-style: italic;
+ background-color: yellow;
+}
+
+/* This gets pretty far on wide screens... */
+.mw-sp-translate-settings input[type=submit] {
+ float: right;
+}
+
+/* For some reason a non-breaking space is not enough to keep the label
+ * with the dropdown. */
+.mw-sp-translate-settings label {
+ white-space: nowrap;
+}
+
+/*
+ * This reserves one corner with curvy lines for the message group status.
+ */
+#mw-sp-translate-workflow {
+ float: right;
+ vertical-align: middle;
+ padding: 0.5em;
+ margin-left: 20px;
+ margin-right: -1em;
+ margin-top: -1em;
+ border-bottom: 2px dotted #666;
+ border-left: 1px dotted #AAA;
+ border-bottom-left-radius: 10px;
+}
+
+.tux-message-selector {
+ font-size: 14px;
+ margin: 0;
+ padding: 6px 0 0 0;
+ list-style: none;
+}
+
+.tux-message-selector li {
+ border: medium none;
+ font-size: 14pt;
+ cursor: pointer;
+ font-weight: normal;
+ line-height: 1.25em;
+ padding-bottom: 3px;
+ padding-left: 15px;
+ padding-top: 1.25em;
+ top: 1px;
+ display: block;
+ position: relative;
+ float: left;
+ margin-bottom: 0;
+}
+
+.tux-message-selector .more {
+ padding: 0 40px 0 5px;
+}
+
+.tux-message-selector .more ul {
+ display: none;
+ cursor: default;
+ border: 1px solid #777;
+ border-top: 2px solid transparent;
+ padding: 3px 5px 10px 5px;
+ width: 300px;
+ z-index: 10;
+ background: #fff;
+ top: 100%;
+ left: -5px;
+}
+
+.tux-message-selector .more ul a {
+ display: block;
+ white-space: nowrap;
+ margin-left: 1px;
+}
+
+.tux-message-selector .more:hover ul {
+ display: block;
+ position: absolute;
+}
+
+.tux-message-selector .more:hover li {
+ float: none;
+}
+
+.tux-message-selector li.selected {
+ border-bottom: 2px solid #3366BB;
+}
+
+.tux-message-selector li.selected a {
+ color: #3366BB;
+}
+
+.tux-message-selector li a {
+ color: #555555;
+ text-decoration: none;
+ white-space: nowrap;
+ margin-left: 1px;
+}
+
+.tux-message-selector label {
+ font-size: 12pt;
+ color: #555555;
+ top: 1px;
+}
+
+.tux-editor-header {
+ color: #252525;
+ font-size: 14px;
+ padding-bottom: 20px;
+}
+
+.tux-editor-header .description {
+ margin: 5px 0;
+}
+
+.group-warning {
+ background: #FFF5AA;
+ padding: 5px;
+ margin: 5px 0;
+}
+
+.group-warning:empty {
+ display: none;
+}
+
+.tux-messagetable-header {
+ padding-top: 5px;
+ border-bottom: 1px solid #777;
+ /* @noflip */
+ -webkit-box-shadow: 0 3px 3px -3px rgba(0, 0, 0, 0.5);
+ /* @noflip */
+ box-shadow: 0 3px 3px -3px rgba(0, 0, 0, 0.5);
+ font-size: 14px;
+ margin: 0;
+ list-style: none;
+ transition: width 250ms;
+}
+
+.tux-messagetable-header.floating {
+ background: white;
+ position: fixed;
+ padding-top: 5px;
+ top: 0;
+ z-index: 200;
+}
+
+.tux-messagetable-header.floating+.tux-messagelist {
+ margin-top: 50px;
+}
+
+.tux-messagetable-header .tux-message-filter-box {
+ font-size: 14px;
+ height: 28px;
+ border: 1px solid #C9C9C9;
+ width: 100%;
+ padding: 0 5px;
+}
+
+.tux-messagetable-header .tux-message-filter-box-icon {
+ background: url('../images/search.png') no-repeat scroll right center transparent;
+ background-image: -webkit-linear-gradient(transparent, transparent), url(../images/search.svg);
+ /* @embed */
+ background-image: linear-gradient(transparent, transparent), url(../images/search.svg);
+ background-size: 25px;
+ height: 28px;
+}
diff --git a/MLEB/Translate/resources/css/ext.translate.special.translationstash.css b/MLEB/Translate/resources/css/ext.translate.special.translationstash.css
new file mode 100644
index 00000000..5031c9ef
--- /dev/null
+++ b/MLEB/Translate/resources/css/ext.translate.special.translationstash.css
@@ -0,0 +1,99 @@
+/**
+ * @author Santhosh Thottingal
+ * @license GPL-2.0+
+ * @since 2013.10
+ */
+
+h1.firstHeading {
+ display: none;
+}
+
+h1 {
+ text-decoration: none;
+ border-bottom: none;
+}
+
+.translate-welcome-header > p {
+ color: #555555;
+ font-size: 1.2em;
+}
+
+.translate-welcome-header {
+ background-color: #F8F8F8;
+ background-image: linear-gradient(#fAFAFA, #f8f8f8);
+ border-bottom: 1px solid #eee;
+ padding: 10px;
+}
+
+.limit-reached > p {
+ color: #57585a;
+ font-size: 1.2em;
+}
+
+.limit-reached {
+ margin-top: 10px;
+ background-color: #fbf9ce;
+ padding: 10px;
+}
+
+.translate-stash-control {
+ font-size: 1.5em;
+ color: #555555;
+ padding: 35px 10px 20px 5px;
+}
+
+.ext-translate-language-selector-label {
+ color: #555555;
+}
+
+.ext-translate-language-selector {
+ text-align: right;
+}
+
+
+/* The triangle shaped down-pointing callout after the language name
+ * in the target language selector
+ */
+.ext-translate-language-selector:after {
+ margin-left: 4px;
+ border-left: 4px solid transparent;
+ border-right: 4px solid transparent;
+ border-top: 4px solid #0645AD;
+ content: "";
+ display: inline-block;
+ vertical-align: middle;
+}
+
+.tux-messagelist {
+ padding: 0 20px;
+ background: none;
+}
+
+.tux-loading-indicator {
+ position: relative;
+ top: 50%;
+ left: 50%;
+}
+
+.messagekey {
+ visibility: hidden;
+}
+
+.message-desc-control,
+.layout-actions .close,
+.tux-message-item,
+.tux-message-item.translated.hide {
+ display: none;
+}
+
+.tux-message:first-child .tux-message-item {
+ border-top: 1px solid #C9C9C9;
+}
+
+.tux-message-item.translated {
+ display: block;
+}
+
+.sourcemessage {
+ top: -10px;
+}
diff --git a/MLEB/Translate/resources/css/ext.translate.statsbar.css b/MLEB/Translate/resources/css/ext.translate.statsbar.css
new file mode 100644
index 00000000..95a96ad2
--- /dev/null
+++ b/MLEB/Translate/resources/css/ext.translate.statsbar.css
@@ -0,0 +1,41 @@
+.tux-statsbar {
+ max-width: 400px;
+ padding: 0;
+ height: 5px;
+ background-color: #BBB;
+}
+
+.tux-statsbar span {
+ height: 5px;
+ float: left;
+ padding: 0;
+ -webkit-transition: width 1s;
+ -moz-transition: width 1s;
+ -o-transition: width 1s;
+ transition: width 1s;
+}
+
+.tux-statsbar .tux-proofread {
+ background-color: #23567F;
+}
+
+.tux-statsbar .tux-translated {
+ background-color: #3A89C9;
+}
+
+.tux-statsbar .tux-fuzzy {
+ background-color: #EBCC6E;
+}
+
+.tux-statsbar .tux-untranslated {
+ display: none;
+}
+
+.tux-statsbar-info {
+ font-weight: normal;
+ line-height: 1.25em;
+ color: #777;
+ font-size: 10pt;
+ position: absolute;
+ padding-top: 5px;
+}
diff --git a/MLEB/Translate/resources/css/ext.translate.tabgroup.css b/MLEB/Translate/resources/css/ext.translate.tabgroup.css
new file mode 100644
index 00000000..ef319755
--- /dev/null
+++ b/MLEB/Translate/resources/css/ext.translate.tabgroup.css
@@ -0,0 +1,8 @@
+/* Heading not needer for special pages in tab group */
+#firstHeading {
+ display: none;
+}
+
+#left-navigation .selected {
+ font-weight: bold;
+}
diff --git a/MLEB/Translate/resources/css/ext.translate.workflowselector.css b/MLEB/Translate/resources/css/ext.translate.workflowselector.css
new file mode 100644
index 00000000..f8ce19b6
--- /dev/null
+++ b/MLEB/Translate/resources/css/ext.translate.workflowselector.css
@@ -0,0 +1,44 @@
+.tux-workflow-status {
+ background: #eee;
+ border: 1px solid #ddd;
+ color: #252525;
+ cursor: pointer;
+ display: inline-block;
+ padding: 2px 4px;
+ margin: 5px 0;
+}
+
+.tux-workflow-status:hover {
+ border: 1px solid #c9c9c9;
+}
+
+.tux-workflow-status:after {
+ margin-left: 3px;
+ border-left: 3px solid transparent;
+ border-right: 3px solid transparent;
+ border-top: 3px solid #555;
+ content: "";
+ display: inline-block;
+ vertical-align: middle;
+}
+
+.tux-workflow-status-selector li {
+ color: #555555;
+ display: block;
+ font-size: 14px;
+ padding: 0 2px;
+}
+
+.tux-workflow-status-selector li.changeable:hover {
+ cursor: pointer;
+ background-color: #f0f0f0;
+ color: #252525;
+}
+
+.tux-workflow-status-selector li.selected {
+ background: url(../images/label-tick.png) right no-repeat;
+ background-image: -webkit-linear-gradient(transparent, transparent), url(../images/label-tick.svg);
+ /* @embed */
+ background-image: linear-gradient(transparent, transparent), url(../images/label-tick.svg);
+ color: #252525;
+}
diff --git a/MLEB/Translate/resources/images/action-edit.png b/MLEB/Translate/resources/images/action-edit.png
new file mode 100644
index 00000000..5f2600f6
--- /dev/null
+++ b/MLEB/Translate/resources/images/action-edit.png
Binary files differ
diff --git a/MLEB/Translate/resources/images/action-edit.svg b/MLEB/Translate/resources/images/action-edit.svg
new file mode 100644
index 00000000..9e4213a4
--- /dev/null
+++ b/MLEB/Translate/resources/images/action-edit.svg
@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ version="1.1"
+ width="15"
+ height="15"
+ id="svg17805">
+ <defs
+ id="defs17807" />
+ <metadata
+ id="metadata17810">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ transform="translate(-159.64355,-100.30805)"
+ id="layer1">
+ <path
+ d="m 169.46861,102.2832 -6.21818,8.8881 -0.0148,0 -0.18891,2.1633 1.97547,-0.9207 6.21818,-8.8881 -1.77168,-1.2443 z"
+ id="rect8752-2-8-5-49-6-2-0-2-5-4-0-4-5-8-7-6-4-94-6-2-8-0-2-6-8-9"
+ style="fill:#3366bb;fill-opacity:1;stroke:none" />
+ </g>
+</svg>
diff --git a/MLEB/Translate/resources/images/add.png b/MLEB/Translate/resources/images/add.png
new file mode 100644
index 00000000..bcd6b8fa
--- /dev/null
+++ b/MLEB/Translate/resources/images/add.png
Binary files differ
diff --git a/MLEB/Translate/resources/images/check-small.png b/MLEB/Translate/resources/images/check-small.png
new file mode 100644
index 00000000..128da5b1
--- /dev/null
+++ b/MLEB/Translate/resources/images/check-small.png
Binary files differ
diff --git a/MLEB/Translate/resources/images/check-small.svg b/MLEB/Translate/resources/images/check-small.svg
new file mode 100644
index 00000000..9d146493
--- /dev/null
+++ b/MLEB/Translate/resources/images/check-small.svg
@@ -0,0 +1,26 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ version="1.1"
+ width="12"
+ height="12"
+ viewBox="0 0 12 12"
+ id="Layer_1"
+ xml:space="preserve"><metadata
+ id="metadata17"><rdf:RDF><cc:Work
+ rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" /><dc:title></dc:title></cc:Work></rdf:RDF></metadata><defs
+ id="defs15" />
+
+
+
+<path
+ d="M 9.1873757,0 4.3406758,8.3503536 2.4427828,6.9489046 0.95379575,8.934306 3.990331,11.182457 5.0997526,12 5.8005534,10.802937 11.318717,1.226278 9.1873757,0 z"
+ id="path12436-0-1-2-8-1-9-2-9"
+ style="font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;baseline-shift:baseline;color:#000000;fill:#acacac;fill-opacity:1;stroke:none;stroke-width:2.6545198;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;font-family:Sans;-inkscape-font-specification:Sans" /></svg> \ No newline at end of file
diff --git a/MLEB/Translate/resources/images/check-sprite-ltr.png b/MLEB/Translate/resources/images/check-sprite-ltr.png
new file mode 100644
index 00000000..2706967a
--- /dev/null
+++ b/MLEB/Translate/resources/images/check-sprite-ltr.png
Binary files differ
diff --git a/MLEB/Translate/resources/images/check-sprite-ltr.svg b/MLEB/Translate/resources/images/check-sprite-ltr.svg
new file mode 100644
index 00000000..fead121b
--- /dev/null
+++ b/MLEB/Translate/resources/images/check-sprite-ltr.svg
@@ -0,0 +1,89 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ version="1.1"
+ width="44"
+ height="248"
+ id="svg10555">
+ <defs
+ id="defs10557" />
+ <metadata
+ id="metadata10560">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ transform="translate(0,-804.36218)"
+ id="layer1">
+ <path
+ d="m 44,866.36218 -34.02216,0 -9.80064,15.00002 9.80064,15 34.02216,0 z"
+ id="rect12220"
+ style="color:#000000;fill:#e5e5e5;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" />
+ <path
+ d="m 34.7936,869.20616 -10.28928,17.72734 -4.02912,-2.9752 -3.16104,4.2149 6.4464,4.7727 2.35524,1.7356 1.48776,-2.5413 11.71476,-20.33072 -4.52472,-2.60332 z"
+ id="path12436-0-1-2-8-1-9-2-9"
+ style="font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;baseline-shift:baseline;color:#000000;fill:#3e3e3e;fill-opacity:1;stroke:none;stroke-width:2.6545198;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;font-family:Sans;-inkscape-font-specification:Sans" />
+ <path
+ d="m 44,897.3622 -34.02216,0 -9.80064,15 9.80064,15 34.02216,0 z"
+ id="rect12220-7"
+ style="color:#000000;fill:#c8dbf3;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" />
+ <path
+ d="m 34.7936,900.2062 -10.28928,17.7273 -4.02912,-2.9752 -3.16104,4.2149 6.4464,4.7727 2.35524,1.7356 1.48776,-2.5413 11.71476,-20.3307 -4.52472,-2.6033 z"
+ id="path12436-0-1-2-8-1-9-2-9-9"
+ style="font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;baseline-shift:baseline;color:#000000;fill:#3366bb;fill-opacity:1;stroke:#3366bb;stroke-width:0.75;stroke-opacity:1;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;font-family:Sans;-inkscape-font-specification:Sans" />
+ <path
+ d="m 44,804.36218 -34.02216,0 -9.80064,15 9.80064,15 34.02216,0 z"
+ id="rect12220-0"
+ style="color:#000000;fill:#e5e5e5;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" />
+ <path
+ d="m 34.7936,807.20614 -10.28928,17.72736 -4.02912,-2.97522 -3.16104,4.21491 6.4464,4.77275 2.35524,1.73554 1.48776,-2.54133 11.71476,-20.33068 -4.52472,-2.60333 z"
+ id="path12436-0-1-2-8-1-9-2-9-2"
+ style="font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;baseline-shift:baseline;color:#000000;fill:#ffffff;fill-opacity:1;stroke:#aeaeae;stroke-width:0.75;stroke-opacity:1;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;font-family:Sans;-inkscape-font-specification:Sans" />
+ <path
+ d="m 44,835.36218 -34.02216,0 -9.80064,15 9.80064,15 34.02216,0 z"
+ id="rect12220-0-0"
+ style="color:#000000;fill:#c8dbf3;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" />
+ <path
+ d="m 34.7936,838.20614 -10.28928,17.72736 -4.02912,-2.97522 -3.16104,4.21491 6.4464,4.77275 2.35524,1.73554 1.48776,-2.54133 11.71476,-20.33068 -4.52472,-2.60333 z"
+ id="path12436-0-1-2-8-1-9-2-9-2-4"
+ style="font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;baseline-shift:baseline;color:#000000;fill:#ffffff;fill-opacity:1;stroke:#9ebfea;stroke-width:0.75;stroke-opacity:1;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;font-family:Sans;-inkscape-font-specification:Sans" />
+ <polygon
+ points="43.396,37.858 32.354,56.604 26.119,51.79 27.582,49.892 31.667,53.045 41.329,36.641 "
+ transform="matrix(1.1261478,0,0,1.1592998,-11.17699,889.3127)"
+ id="polygon3"
+ style="fill:#d1d3d4" />
+ <polygon
+ points="41.329,76.048 43.396,77.265 32.354,96.011 26.12,91.197 27.583,89.299 31.668,92.453 "
+ transform="matrix(1.1261478,0,0,1.1592998,-11.17699,874.6282)"
+ id="polygon5"
+ style="fill:#9dbfdf" />
+ <path
+ d="m 8.1875,166.5 0,3.4375 -3.34375,0 0,3.03125 3.34375,0 0,3.40625 2.9375,0 0,-3.40625 3.34375,0 0,-3.03125 -3.34375,0 0,-3.4375 -2.9375,0 z"
+ transform="translate(0,804.36218)"
+ id="rect9"
+ style="fill:#9dbfdf" />
+ <polygon
+ points="26.119,51.79 27.582,49.892 31.667,53.045 41.329,36.641 43.396,37.858 32.354,56.604 "
+ transform="matrix(1.1261478,0,0,1.1592998,-11.17699,951.31273)"
+ id="polygon3018"
+ style="fill:#5f5f5f;fill-opacity:1" />
+ <polygon
+ points="27.582,49.892 31.667,53.045 41.329,36.641 43.396,37.858 32.354,56.604 26.119,51.79 "
+ transform="matrix(1.1261478,0,0,1.1592998,-11.17699,982.3127)"
+ id="polygon3022"
+ style="fill:#9dbfdf;fill-opacity:1" />
+ </g>
+</svg>
diff --git a/MLEB/Translate/resources/images/check-sprite-rtl.png b/MLEB/Translate/resources/images/check-sprite-rtl.png
new file mode 100644
index 00000000..7da4006b
--- /dev/null
+++ b/MLEB/Translate/resources/images/check-sprite-rtl.png
Binary files differ
diff --git a/MLEB/Translate/resources/images/check-sprite-rtl.svg b/MLEB/Translate/resources/images/check-sprite-rtl.svg
new file mode 100644
index 00000000..7d55d676
--- /dev/null
+++ b/MLEB/Translate/resources/images/check-sprite-rtl.svg
@@ -0,0 +1,84 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ version="1.1"
+ width="44"
+ height="248"
+ id="svg10555">
+ <defs
+ id="defs10557" />
+ <metadata
+ id="metadata10560">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <path
+ d="M 0.1772,62 34.19936,62 44,77.00002 l -9.80064,15 -34.02216,0 z"
+ id="rect12220"
+ style="color:#000000;fill:#e5e5e5;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" />
+ <path
+ d="m 22.33832,64.84398 -10.28928,17.72734 -4.02912,-2.9752 -3.16104,4.2149 6.4464,4.7727 2.35524,1.7356 1.48776,-2.5413 11.71476,-20.33072 -4.52472,-2.60332 z"
+ id="path12436-0-1-2-8-1-9-2-9"
+ style="font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;baseline-shift:baseline;color:#000000;fill:#3e3e3e;fill-opacity:1;stroke:none;stroke-width:2.6545198;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;font-family:Sans;-inkscape-font-specification:Sans" />
+ <path
+ d="m 0.1772,93.00002 34.02216,0 9.80064,15 -9.80064,15 -34.02216,0 z"
+ id="rect12220-7"
+ style="color:#000000;fill:#c8dbf3;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" />
+ <path
+ d="m 22.33832,95.84402 -10.28928,17.7273 -4.02912,-2.9752 -3.16104,4.2149 6.4464,4.7727 2.35524,1.7356 1.48776,-2.5413 11.71476,-20.3307 -4.52472,-2.6033 z"
+ id="path12436-0-1-2-8-1-9-2-9-9"
+ style="font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;baseline-shift:baseline;color:#000000;fill:#3366bb;fill-opacity:1;stroke:#3366bb;stroke-width:0.75;stroke-opacity:1;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;font-family:Sans;-inkscape-font-specification:Sans" />
+ <path
+ d="M 0.1772,0 34.19936,0 44,15 34.19936,30 0.1772,30 z"
+ id="rect12220-0"
+ style="color:#000000;fill:#e5e5e5;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" />
+ <path
+ d="M 22.33832,2.84396 12.04904,20.57132 8.01992,17.5961 l -3.16104,4.21491 6.4464,4.77275 2.35524,1.73554 1.48776,-2.54133 L 26.86304,5.44729 22.33832,2.84396 z"
+ id="path12436-0-1-2-8-1-9-2-9-2"
+ style="font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;baseline-shift:baseline;color:#000000;fill:#ffffff;fill-opacity:1;stroke:#aeaeae;stroke-width:0.75;stroke-opacity:1;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;font-family:Sans;-inkscape-font-specification:Sans" />
+ <path
+ d="M 0.1772,31 34.19936,31 44,46 34.19936,61 0.1772,61 z"
+ id="rect12220-0-0"
+ style="color:#000000;fill:#c8dbf3;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" />
+ <path
+ d="M 22.33832,33.84396 12.04904,51.57132 8.01992,48.5961 l -3.16104,4.21491 6.4464,4.77275 2.35524,1.73554 1.48776,-2.54133 11.71476,-20.33068 -4.52472,-2.60333 z"
+ id="path12436-0-1-2-8-1-9-2-9-2-4"
+ style="font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;baseline-shift:baseline;color:#000000;fill:#ffffff;fill-opacity:1;stroke:#9ebfea;stroke-width:0.75;stroke-opacity:1;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;font-family:Sans;-inkscape-font-specification:Sans" />
+ <polygon
+ points="41.329,36.641 43.396,37.858 32.354,56.604 26.119,51.79 27.582,49.892 31.667,53.045 "
+ transform="matrix(1.1261478,0,0,1.1592998,-23.63227,84.95052)"
+ id="polygon3"
+ style="fill:#d1d3d4" />
+ <polygon
+ points="31.668,92.453 41.329,76.048 43.396,77.265 32.354,96.011 26.12,91.197 27.583,89.299 "
+ transform="matrix(1.1261478,0,0,1.1592998,-23.63227,70.26602)"
+ id="polygon5"
+ style="fill:#9dbfdf" />
+ <path
+ d="m 35.9897,166.5 0,3.4375 3.34375,0 0,3.03125 -3.34375,0 0,3.40625 -2.9375,0 0,-3.40625 -3.34375,0 0,-3.03125 3.34375,0 0,-3.4375 2.9375,0 z"
+ id="rect9"
+ style="fill:#9dbfdf" />
+ <polygon
+ points="32.354,56.604 26.119,51.79 27.582,49.892 31.667,53.045 41.329,36.641 43.396,37.858 "
+ transform="matrix(1.1261478,0,0,1.1592998,-23.63227,146.95055)"
+ id="polygon3018"
+ style="fill:#5f5f5f;fill-opacity:1" />
+ <polygon
+ points="26.119,51.79 27.582,49.892 31.667,53.045 41.329,36.641 43.396,37.858 32.354,56.604 "
+ transform="matrix(1.1261478,0,0,1.1592998,-23.63227,177.95052)"
+ id="polygon3022"
+ style="fill:#9dbfdf;fill-opacity:1" />
+</svg>
diff --git a/MLEB/Translate/resources/images/close.png b/MLEB/Translate/resources/images/close.png
new file mode 100644
index 00000000..84631c3d
--- /dev/null
+++ b/MLEB/Translate/resources/images/close.png
Binary files differ
diff --git a/MLEB/Translate/resources/images/close.svg b/MLEB/Translate/resources/images/close.svg
new file mode 100644
index 00000000..375b4f5c
--- /dev/null
+++ b/MLEB/Translate/resources/images/close.svg
@@ -0,0 +1,40 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ version="1.1"
+ width="12"
+ height="12"
+ id="svg2">
+ <defs
+ id="defs4" />
+ <metadata
+ id="metadata7">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ transform="translate(-578.6585,-310.8933)"
+ id="layer1">
+ <path
+ d="m 579.70127,311.93609 9.91446,9.91442"
+ id="path6064-1-0-9"
+ style="fill:none;stroke:#2e3436;stroke-width:2.085536;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
+ <path
+ d="m 589.6157,311.93609 -9.91441,9.91442"
+ id="path6064-3-2-4-6"
+ style="fill:none;stroke:#2e3436;stroke-width:2.085536;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
+ </g>
+</svg>
diff --git a/MLEB/Translate/resources/images/contract-ltr.png b/MLEB/Translate/resources/images/contract-ltr.png
new file mode 100644
index 00000000..a8d00dbc
--- /dev/null
+++ b/MLEB/Translate/resources/images/contract-ltr.png
Binary files differ
diff --git a/MLEB/Translate/resources/images/contract-ltr.svg b/MLEB/Translate/resources/images/contract-ltr.svg
new file mode 100644
index 00000000..0a00db1d
--- /dev/null
+++ b/MLEB/Translate/resources/images/contract-ltr.svg
@@ -0,0 +1,51 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ version="1.1"
+ width="16"
+ height="12"
+ id="svg17805">
+ <defs
+ id="defs17807" />
+ <metadata
+ id="metadata17810">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ transform="translate(-159.64355,-103.30805)"
+ id="layer1">
+ <rect
+ width="4.2944264"
+ height="9.2567539"
+ x="170.16307"
+ y="104.72025"
+ id="rect8020-7-3-7-8"
+ style="color:#000000;fill:#b9b9b9;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1.5;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" />
+ <rect
+ width="14.63288"
+ height="10.276761"
+ x="160.32709"
+ y="104.16966"
+ id="rect6062-5-54-4-3"
+ style="color:#000000;fill:none;stroke:#2e3436;stroke-width:1.36711919;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" />
+ <path
+ d="M 7.03125,2.21875 3.6875,5.53125 3.28125,5.96875 3.6875,6.375 6.9375,9.625 7.78125,8.78125 5.53125,6.5 l 5.78125,0 0,-1.1875 -5.71875,0 2.25,-2.25 -0.8125,-0.84375 z"
+ transform="translate(159.64355,103.30805)"
+ id="path8014-1-9-7-7"
+ style="font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;baseline-shift:baseline;color:#000000;fill:#2e3436;fill-opacity:1;stroke:none;stroke-width:1.18803263;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;font-family:Sans;-inkscape-font-specification:Sans" />
+ </g>
+</svg>
diff --git a/MLEB/Translate/resources/images/contract-rtl.png b/MLEB/Translate/resources/images/contract-rtl.png
new file mode 100644
index 00000000..2822bbaa
--- /dev/null
+++ b/MLEB/Translate/resources/images/contract-rtl.png
Binary files differ
diff --git a/MLEB/Translate/resources/images/contract-rtl.svg b/MLEB/Translate/resources/images/contract-rtl.svg
new file mode 100644
index 00000000..43a488dc
--- /dev/null
+++ b/MLEB/Translate/resources/images/contract-rtl.svg
@@ -0,0 +1,53 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ version="1.1"
+ width="16"
+ height="12"
+ id="svg17805">
+ <defs
+ id="defs17807" />
+ <metadata
+ id="metadata17810">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ transform="translate(-159.64355,-103.30805)"
+ id="layer1">
+ <rect
+ width="4.2944264"
+ height="9.2567539"
+ x="-165.12401"
+ y="104.72025"
+ transform="scale(-1,1)"
+ id="rect8020-7-3-7-8"
+ style="color:#000000;fill:#b9b9b9;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1.5;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" />
+ <rect
+ width="14.63288"
+ height="10.276761"
+ x="-174.96001"
+ y="104.16966"
+ transform="scale(-1,1)"
+ id="rect6062-5-54-4-3"
+ style="color:#000000;fill:none;stroke:#2e3436;stroke-width:1.36711919;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" />
+ <path
+ d="M 8.96875,2.21875 8.125,3.0625 l 2.28125,2.25 -5.71875,0 0,1.1875 5.78125,0 -2.28125,2.28125 0.84375,0.84375 3.25,-3.25 0.40625,-0.40625 -0.40625,-0.4375 -3.3125,-3.3125 z"
+ transform="translate(159.64355,103.30805)"
+ id="path8014-1-9-7-7"
+ style="font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;baseline-shift:baseline;color:#000000;fill:#2e3436;fill-opacity:1;stroke:none;stroke-width:1.18803263;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;font-family:Sans;-inkscape-font-specification:Sans" />
+ </g>
+</svg>
diff --git a/MLEB/Translate/resources/images/edit-mark.png b/MLEB/Translate/resources/images/edit-mark.png
new file mode 100644
index 00000000..af8c96f1
--- /dev/null
+++ b/MLEB/Translate/resources/images/edit-mark.png
Binary files differ
diff --git a/MLEB/Translate/resources/images/edit-mark.svg b/MLEB/Translate/resources/images/edit-mark.svg
new file mode 100644
index 00000000..a1221fb0
--- /dev/null
+++ b/MLEB/Translate/resources/images/edit-mark.svg
@@ -0,0 +1,30 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ version="1.1"
+ width="33.389"
+ height="22.857"
+ viewBox="0 0 33.389 22.857"
+ id="svg2"
+ xml:space="preserve"><metadata
+ id="metadata9"><rdf:RDF><cc:Work
+ rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" /><dc:title></dc:title></cc:Work></rdf:RDF></metadata><defs
+ id="defs7" />
+
+<g
+ transform="translate(-2372.5715,-642.2193)"
+ id="layer1">
+
+ <path
+ d="m 2393.896,645.134 -9.343,13.311 -0.022,0.003 -0.284,3.239 2.968,-1.379 9.344,-13.31 -2.663,-1.864 0,0 z"
+ id="rect8752-2-8-5-49-6-2-0-2-5-4-0-4-5-8-7-6-4-9-9-0-3-2-1-1-3-7-4-8-3"
+ style="fill:#c9c9c9" />
+</g>
+</svg> \ No newline at end of file
diff --git a/MLEB/Translate/resources/images/expand-ltr.png b/MLEB/Translate/resources/images/expand-ltr.png
new file mode 100644
index 00000000..33278b14
--- /dev/null
+++ b/MLEB/Translate/resources/images/expand-ltr.png
Binary files differ
diff --git a/MLEB/Translate/resources/images/expand-ltr.svg b/MLEB/Translate/resources/images/expand-ltr.svg
new file mode 100644
index 00000000..87ea35f0
--- /dev/null
+++ b/MLEB/Translate/resources/images/expand-ltr.svg
@@ -0,0 +1,51 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ version="1.1"
+ width="16"
+ height="12"
+ id="svg17805">
+ <defs
+ id="defs17807" />
+ <metadata
+ id="metadata17810">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ transform="translate(-159.64355,-103.30805)"
+ id="layer1">
+ <rect
+ width="4.2944264"
+ height="9.2567539"
+ x="170.16307"
+ y="104.72025"
+ id="rect8020-7-3-7"
+ style="color:#000000;fill:#b9b9b9;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1.5;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" />
+ <rect
+ width="14.63288"
+ height="10.276761"
+ x="160.32709"
+ y="104.16966"
+ id="rect6062-5-54-4"
+ style="color:#000000;fill:none;stroke:#2e3436;stroke-width:1.36711919;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" />
+ <path
+ d="M 8.40625,2.21875 7.5625,3.0625 l 2.28125,2.25 -5.71875,0 0,1.1875 5.78125,0 L 7.625,8.78125 8.46875,9.625 l 3.25,-3.25 0.40625,-0.40625 -0.40625,-0.4375 -3.3125,-3.3125 z"
+ transform="translate(159.64355,103.30805)"
+ id="path8014-1-9-7"
+ style="font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;baseline-shift:baseline;color:#000000;fill:#2e3436;fill-opacity:1;stroke:none;stroke-width:1.18803263;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;font-family:Sans;-inkscape-font-specification:Sans" />
+ </g>
+</svg>
diff --git a/MLEB/Translate/resources/images/expand-rtl.png b/MLEB/Translate/resources/images/expand-rtl.png
new file mode 100644
index 00000000..7b45bbac
--- /dev/null
+++ b/MLEB/Translate/resources/images/expand-rtl.png
Binary files differ
diff --git a/MLEB/Translate/resources/images/expand-rtl.svg b/MLEB/Translate/resources/images/expand-rtl.svg
new file mode 100644
index 00000000..7f1ded58
--- /dev/null
+++ b/MLEB/Translate/resources/images/expand-rtl.svg
@@ -0,0 +1,53 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ version="1.1"
+ width="16"
+ height="12"
+ id="svg17805">
+ <defs
+ id="defs17807" />
+ <metadata
+ id="metadata17810">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ transform="translate(-159.64355,-103.30805)"
+ id="layer1">
+ <rect
+ width="4.2944264"
+ height="9.2567539"
+ x="-165.12401"
+ y="104.72025"
+ transform="scale(-1,1)"
+ id="rect8020-7-3-7"
+ style="color:#000000;fill:#b9b9b9;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1.5;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" />
+ <rect
+ width="14.63288"
+ height="10.276761"
+ x="-174.96001"
+ y="104.16966"
+ transform="scale(-1,1)"
+ id="rect6062-5-54-4"
+ style="color:#000000;fill:none;stroke:#2e3436;stroke-width:1.36711919;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" />
+ <path
+ d="M 7.5625,2.21875 4.25,5.53125 3.84375,5.96875 4.25,6.375 7.5,9.625 8.34375,8.78125 6.09375,6.5 l 5.75,0 0,-1.1875 -5.6875,0 2.25,-2.25 L 7.5625,2.21875 z"
+ transform="translate(159.64355,103.30805)"
+ id="path8014-1-9-7"
+ style="font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;baseline-shift:baseline;color:#000000;fill:#2e3436;fill-opacity:1;stroke:none;stroke-width:1.18803263;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;font-family:Sans;-inkscape-font-specification:Sans" />
+ </g>
+</svg>
diff --git a/MLEB/Translate/resources/images/help.png b/MLEB/Translate/resources/images/help.png
new file mode 100644
index 00000000..f1bc368d
--- /dev/null
+++ b/MLEB/Translate/resources/images/help.png
Binary files differ
diff --git a/MLEB/Translate/resources/images/label-clock.png b/MLEB/Translate/resources/images/label-clock.png
new file mode 100644
index 00000000..d1ef6faa
--- /dev/null
+++ b/MLEB/Translate/resources/images/label-clock.png
Binary files differ
diff --git a/MLEB/Translate/resources/images/label-clock.svg b/MLEB/Translate/resources/images/label-clock.svg
new file mode 100644
index 00000000..b5a2aa42
--- /dev/null
+++ b/MLEB/Translate/resources/images/label-clock.svg
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ version="1.1"
+ width="15"
+ height="15"
+ viewBox="0 0 15 15"
+ id="svg17805"
+ xml:space="preserve"><metadata
+ id="metadata9"><rdf:RDF><cc:Work
+ rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" /><dc:title></dc:title></cc:Work></rdf:RDF></metadata><defs
+ id="defs7" />
+<path
+ d="m 7.5,0.125 c -4.059,0 -7.375,3.316 -7.375,7.375 0,4.059 3.316,7.375 7.375,7.375 4.059,0 7.375,-3.316 7.375,-7.375 0,-4.059 -3.316,-7.375 -7.375,-7.375 z m 0,1.768 c 3.104,0 5.607,2.504 5.607,5.607 0,3.103 -2.504,5.607 -5.607,5.607 -3.103,0 -5.607,-2.503 -5.607,-5.607 0,-3.104 2.503,-5.607 5.607,-5.607 z"
+ id="path4660-7-2-3-3"
+ style="fill:#565656" />
+<path
+ d="m 6.708,2.991 v 4.552 0.764 0.446 h 3.428 V 7.543 H 7.918 V 2.991 h -1.21 z"
+ id="rect4662-1-2-3-46"
+ style="fill:#565656" />
+</svg> \ No newline at end of file
diff --git a/MLEB/Translate/resources/images/label-flag.png b/MLEB/Translate/resources/images/label-flag.png
new file mode 100644
index 00000000..e7744702
--- /dev/null
+++ b/MLEB/Translate/resources/images/label-flag.png
Binary files differ
diff --git a/MLEB/Translate/resources/images/label-flag.svg b/MLEB/Translate/resources/images/label-flag.svg
new file mode 100644
index 00000000..e98ff32e
--- /dev/null
+++ b/MLEB/Translate/resources/images/label-flag.svg
@@ -0,0 +1,29 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ version="1.1"
+ width="15"
+ height="15"
+ viewBox="0 0 15 15"
+ id="svg17805"
+ xml:space="preserve"><metadata
+ id="metadata8"><rdf:RDF><cc:Work
+ rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" /><dc:title></dc:title></cc:Work></rdf:RDF></metadata><defs
+ id="defs6" />
+
+<g
+ transform="translate(-159.64355,-100.30805)"
+ id="layer1">
+ <path
+ d="m 162.081,102.058 v 6.469 h 8.844 v 5.031 h 1.281 v -5.031 -6.062 -0.406 h -10.125 z"
+ id="rect8962-1"
+ style="fill:#565656" />
+</g>
+</svg> \ No newline at end of file
diff --git a/MLEB/Translate/resources/images/label-page-tick.png b/MLEB/Translate/resources/images/label-page-tick.png
new file mode 100644
index 00000000..da5cd0f2
--- /dev/null
+++ b/MLEB/Translate/resources/images/label-page-tick.png
Binary files differ
diff --git a/MLEB/Translate/resources/images/label-page-tick.svg b/MLEB/Translate/resources/images/label-page-tick.svg
new file mode 100644
index 00000000..bdd25395
--- /dev/null
+++ b/MLEB/Translate/resources/images/label-page-tick.svg
@@ -0,0 +1,40 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ version="1.1"
+ width="15"
+ height="15"
+ viewBox="0 0 15 15"
+ id="svg17805"
+ xml:space="preserve"><metadata
+ id="metadata12"><rdf:RDF><cc:Work
+ rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" /><dc:title></dc:title></cc:Work></rdf:RDF></metadata><defs
+ id="defs10" />
+<g
+ transform="translate(-159.64355,-100.30805)"
+ id="layer1">
+ <g
+ transform="translate(-279.58355,-315.7339)"
+ id="g18113">
+ <path
+ d="m 440.281,419.25 v 0.562 9.656 0.532 h 0.531 9.657 0.531 v -0.531 -9.656 -0.562 h -0.531 -9.657 -0.531 z m 1.063,1.094 h 8.594 v 8.594 h -8.594 v -8.594 z"
+ id="rect8974-9-6-80-1"
+ style="fill:#565656" />
+ <path
+ d="m 447.443,421.423 -2.858,4.925 -1.12,-0.826 -0.878,1.171 1.791,1.326 0.655,0.482 0.413,-0.707 3.254,-5.648 -1.257,-0.723 z"
+ id="path12436-0-1-2-8-1-9-2-0-5-7"
+ style="fill:#565656" />
+ <path
+ d="m 442.438,417.094 v 0.531 2.156 0.531 h 0.562 6.938 v 6.969 0.531 h 0.562 2.156 0.531 v -0.531 -9.656 -0.531 H 452.656 443 442.438 z m 1.093,1.062 h 8.563 v 8.594 h -1.062 v -6.969 -0.531 h -0.531 -6.969 v -1.094 z"
+ id="rect8974-5-0-4-9"
+ style="fill:#565656" />
+ </g>
+</g>
+</svg> \ No newline at end of file
diff --git a/MLEB/Translate/resources/images/label-page.png b/MLEB/Translate/resources/images/label-page.png
new file mode 100644
index 00000000..ccead8ad
--- /dev/null
+++ b/MLEB/Translate/resources/images/label-page.png
Binary files differ
diff --git a/MLEB/Translate/resources/images/label-page.svg b/MLEB/Translate/resources/images/label-page.svg
new file mode 100644
index 00000000..6d95932e
--- /dev/null
+++ b/MLEB/Translate/resources/images/label-page.svg
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ version="1.1"
+ width="15"
+ height="15"
+ viewBox="0 0 15 15"
+ id="svg17805"
+ xml:space="preserve"><metadata
+ id="metadata10"><rdf:RDF><cc:Work
+ rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" /><dc:title></dc:title></cc:Work></rdf:RDF></metadata><defs
+ id="defs8" />
+
+<g
+ transform="translate(-159.64355,-100.30805)"
+ id="layer1">
+ <g
+ transform="translate(-279.14083,-255.12502)"
+ id="g18109">
+
+ <rect
+ width="9.6630001"
+ height="9.6630001"
+ x="440.36801"
+ y="359.19199"
+ id="rect8974-9-6-80-1-7"
+ style="fill:none;stroke:#565656;stroke-width:1.07369995;stroke-linecap:round" />
+
+ <path
+ d="m 442.544,357.012 v 2.156 h 7.5 v 7.5 h 2.156 v -9.656 h -9.656 z"
+ id="rect8974-5-0-4-9-8"
+ style="fill:none;stroke:#565656;stroke-width:1.07369995;stroke-linecap:round" />
+ </g>
+</g>
+</svg> \ No newline at end of file
diff --git a/MLEB/Translate/resources/images/label-pen.png b/MLEB/Translate/resources/images/label-pen.png
new file mode 100644
index 00000000..bda1d7e1
--- /dev/null
+++ b/MLEB/Translate/resources/images/label-pen.png
Binary files differ
diff --git a/MLEB/Translate/resources/images/label-pen.svg b/MLEB/Translate/resources/images/label-pen.svg
new file mode 100644
index 00000000..8e61dd86
--- /dev/null
+++ b/MLEB/Translate/resources/images/label-pen.svg
@@ -0,0 +1,29 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ version="1.1"
+ width="15"
+ height="15"
+ viewBox="0 0 15 15"
+ id="svg17805"
+ xml:space="preserve"><metadata
+ id="metadata8"><rdf:RDF><cc:Work
+ rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" /><dc:title></dc:title></cc:Work></rdf:RDF></metadata><defs
+ id="defs6" />
+
+<g
+ transform="translate(-159.64355,-100.30805)"
+ id="layer1">
+ <path
+ d="m 169.469,102.283 -6.218,8.888 h -0.015 l -0.189,2.163 1.975,-0.921 6.218,-8.888 -1.771,-1.244 v 0.002 z"
+ id="rect8752-2-8-5-49-6-2-0-2-5-4-0-4-5-8-7-6-4-94-6-2-8-0-2-6-8-9"
+ style="fill:#565656" />
+</g>
+</svg> \ No newline at end of file
diff --git a/MLEB/Translate/resources/images/label-tick.png b/MLEB/Translate/resources/images/label-tick.png
new file mode 100644
index 00000000..a729fd4f
--- /dev/null
+++ b/MLEB/Translate/resources/images/label-tick.png
Binary files differ
diff --git a/MLEB/Translate/resources/images/label-tick.svg b/MLEB/Translate/resources/images/label-tick.svg
new file mode 100644
index 00000000..59de0e2a
--- /dev/null
+++ b/MLEB/Translate/resources/images/label-tick.svg
@@ -0,0 +1,29 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ version="1.1"
+ width="15"
+ height="15"
+ viewBox="0 0 15 15"
+ id="svg17805"
+ xml:space="preserve"><metadata
+ id="metadata8"><rdf:RDF><cc:Work
+ rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" /><dc:title></dc:title></cc:Work></rdf:RDF></metadata><defs
+ id="defs6" />
+
+<g
+ transform="translate(-159.64355,-100.30805)"
+ id="layer1">
+ <path
+ d="m 170.409,101.386 -5.188,8.938 -2.031,-1.5 -1.594,2.125 3.25,2.406 1.188,0.875 0.75,-1.281 5.906,-10.25 -2.281,-1.313 z"
+ id="path12436-0-1-2-8-1-9-2-0"
+ style="fill:#565656" />
+</g>
+</svg> \ No newline at end of file
diff --git a/MLEB/Translate/resources/images/loading.gif b/MLEB/Translate/resources/images/loading.gif
new file mode 100644
index 00000000..2212db95
--- /dev/null
+++ b/MLEB/Translate/resources/images/loading.gif
Binary files differ
diff --git a/MLEB/Translate/resources/images/loading.svg b/MLEB/Translate/resources/images/loading.svg
new file mode 100644
index 00000000..92f84cde
--- /dev/null
+++ b/MLEB/Translate/resources/images/loading.svg
@@ -0,0 +1,39 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ version="1.1"
+ width="34"
+ height="34.03125"
+ id="svg9613">
+ <defs
+ id="defs9615" />
+ <metadata
+ id="metadata9618">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ id="g2987">
+ <path
+ d="m 16.977523,0.24095147 c -9.2629169,0 -16.73280045,7.51449143 -16.73280045,16.77740253 0,9.262912 7.46988355,16.777403 16.73280045,16.777403 9.262917,0 16.777413,-7.514491 16.777413,-16.777403 0,-9.2629111 -7.514496,-16.77740253 -16.777413,-16.77740253 z m 0,4.14972823 c 6.966927,0 12.627682,5.6607523 12.627682,12.6276743 0,6.966923 -5.660755,12.583053 -12.627682,12.583053 -6.966937,0 -12.5830596,-5.61613 -12.5830596,-12.583053 0,-6.966922 5.6161226,-12.6276743 12.5830596,-12.6276743 z"
+ id="path15290-7-0-9-5-1-59-0-3-2"
+ style="color:#000000;fill:#000000;fill-opacity:0.08333333;fill-rule:nonzero;stroke:#565656;stroke-width:0.5;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:0.19607843;stroke-dasharray:none;stroke-dashoffset:0;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" />
+ <path
+ d="M 31.677259,17.003529 A 14.680208,14.680199 0 0 1 20.796571,31.183505"
+ id="path15290-6-0-6-1-0-0-16-1-0-06"
+ style="color:#000000;fill:none;stroke:#3366bb;stroke-width:2.2583456;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" />
+ </g>
+</svg>
diff --git a/MLEB/Translate/resources/images/outdated-ltr.png b/MLEB/Translate/resources/images/outdated-ltr.png
new file mode 100644
index 00000000..debc4b24
--- /dev/null
+++ b/MLEB/Translate/resources/images/outdated-ltr.png
Binary files differ
diff --git a/MLEB/Translate/resources/images/outdated-ltr.svg b/MLEB/Translate/resources/images/outdated-ltr.svg
new file mode 100644
index 00000000..c082fda4
--- /dev/null
+++ b/MLEB/Translate/resources/images/outdated-ltr.svg
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ version="1.1"
+ width="33.389"
+ height="22.857"
+ viewBox="0 0 33.389 22.857"
+ id="svg2"
+ xml:space="preserve"><metadata
+ id="metadata10"><rdf:RDF><cc:Work
+ rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" /><dc:title></dc:title></cc:Work></rdf:RDF></metadata><defs
+ id="defs8" />
+<path
+ d="m 0,0 h 25.922 l 7.467,11.429 -7.467,11.429 H 0 V 0 z"
+ id="rect12220-2"
+ style="fill:#fef4ba" />
+<path
+ d="m 17.981,4.357 c -4.06,0 -7.375,3.316 -7.375,7.375 0,4.059 3.315,7.375 7.375,7.375 4.059,0 7.375,-3.316 7.375,-7.375 0,-4.059 -3.316,-7.375 -7.375,-7.375 z m 0,1.768 c 3.104,0 5.607,2.504 5.607,5.607 0,3.103 -2.504,5.607 -5.607,5.607 -3.103,0 -5.607,-2.504 -5.607,-5.607 0,-3.103 2.504,-5.607 5.607,-5.607 z"
+ id="path4660-7-2-3-7-0-0"
+ style="fill:#565656" />
+<path
+ d="m 17.189,7.223 v 4.552 0.764 0.446 h 3.428 v -1.21 H 18.399 V 7.223 h -1.21 z"
+ id="rect4662-1-2-3-7-4-3"
+ style="fill:#565656" />
+</svg> \ No newline at end of file
diff --git a/MLEB/Translate/resources/images/outdated-rtl.png b/MLEB/Translate/resources/images/outdated-rtl.png
new file mode 100644
index 00000000..df66f7e5
--- /dev/null
+++ b/MLEB/Translate/resources/images/outdated-rtl.png
Binary files differ
diff --git a/MLEB/Translate/resources/images/outdated-rtl.svg b/MLEB/Translate/resources/images/outdated-rtl.svg
new file mode 100644
index 00000000..1eeeab78
--- /dev/null
+++ b/MLEB/Translate/resources/images/outdated-rtl.svg
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ version="1.1"
+ width="33.389"
+ height="22.857"
+ viewBox="0 0 33.389 22.857"
+ id="svg2"
+ xml:space="preserve"><metadata
+ id="metadata10"><rdf:RDF><cc:Work
+ rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" /><dc:title></dc:title></cc:Work></rdf:RDF></metadata><defs
+ id="defs8" />
+<path
+ d="M 33.389,0 H 7.467 L 0,11.429 7.467,22.858 H 33.389 V 0 z"
+ id="rect12220-2"
+ style="fill:#fef4ba" />
+<path
+ d="m 15.408,4.357 c -4.06,0 -7.375,3.316 -7.375,7.375 0,4.059 3.315,7.375 7.375,7.375 4.059,0 7.375,-3.316 7.375,-7.375 0,-4.059 -3.316,-7.375 -7.375,-7.375 z m 0,1.768 c 3.104,0 5.607,2.504 5.607,5.607 0,3.103 -2.504,5.607 -5.607,5.607 -3.103,0 -5.607,-2.504 -5.607,-5.607 0,-3.103 2.504,-5.607 5.607,-5.607 z"
+ id="path4660-7-2-3-7-0-0"
+ style="fill:#565656" />
+<path
+ d="m 14.616,7.223 v 4.552 0.764 0.446 h 3.428 v -1.21 H 15.826 V 7.223 h -1.21 z"
+ id="rect4662-1-2-3-7-4-3"
+ style="fill:#565656" />
+</svg> \ No newline at end of file
diff --git a/MLEB/Translate/resources/images/paste.png b/MLEB/Translate/resources/images/paste.png
new file mode 100644
index 00000000..bbade5d4
--- /dev/null
+++ b/MLEB/Translate/resources/images/paste.png
Binary files differ
diff --git a/MLEB/Translate/resources/images/paste.svg b/MLEB/Translate/resources/images/paste.svg
new file mode 100644
index 00000000..38373db2
--- /dev/null
+++ b/MLEB/Translate/resources/images/paste.svg
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Generator: Adobe Illustrator 15.1.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
+<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
+ width="32px" height="32px" viewBox="0 0 32 32" enable-background="new 0 0 32 32" xml:space="preserve">
+<g>
+ <path fill="#6D6E71" d="M29.077,29.012c0,1.061-0.859,1.92-1.92,1.92H4.844c-1.061,0-1.921-0.859-1.921-1.92V4.043
+ c0-1.061,0.86-1.92,1.921-1.92h22.313c1.061,0,1.92,0.859,1.92,1.92V29.012z"/>
+
+ <rect x="5.368" y="4.054" fill="#F1F2F2" stroke="#58595B" stroke-width="0.5" stroke-miterlimit="10" width="21" height="24.349"/>
+ <rect x="7.743" y="8.896" fill="#A7A9AC" width="15.625" height="2.872"/>
+ <rect x="7.743" y="15.09" fill="#A7A9AC" width="15.625" height="2.875"/>
+ <rect x="7.743" y="21.287" fill="#A7A9AC" width="6.125" height="2.873"/>
+ <polygon fill="#414042" points="18.646,2.814 18.646,1.068 13.354,1.068 13.354,2.814 10.459,2.814 10.459,5.152 21.542,5.152
+ 21.542,2.814 "/>
+</g>
+</svg>
diff --git a/MLEB/Translate/resources/images/plus_darkgray.png b/MLEB/Translate/resources/images/plus_darkgray.png
new file mode 100644
index 00000000..4780479e
--- /dev/null
+++ b/MLEB/Translate/resources/images/plus_darkgray.png
Binary files differ
diff --git a/MLEB/Translate/resources/images/plus_darkgray.svg b/MLEB/Translate/resources/images/plus_darkgray.svg
new file mode 100644
index 00000000..abedfc22
--- /dev/null
+++ b/MLEB/Translate/resources/images/plus_darkgray.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1024 768" enable-background="new 0 0 1024 768"><path fill="#555" d="M870.5 445.2v-122.4h-297.3v-297.3h-122.4v297.3h-297.3v122.4h297.3v297.3h122.4v-297.3z"/></svg>
diff --git a/MLEB/Translate/resources/images/prog-1.png b/MLEB/Translate/resources/images/prog-1.png
new file mode 100644
index 00000000..8788c993
--- /dev/null
+++ b/MLEB/Translate/resources/images/prog-1.png
Binary files differ
diff --git a/MLEB/Translate/resources/images/prog-2.png b/MLEB/Translate/resources/images/prog-2.png
new file mode 100644
index 00000000..1e8ff84e
--- /dev/null
+++ b/MLEB/Translate/resources/images/prog-2.png
Binary files differ
diff --git a/MLEB/Translate/resources/images/prog-3.png b/MLEB/Translate/resources/images/prog-3.png
new file mode 100644
index 00000000..f560c348
--- /dev/null
+++ b/MLEB/Translate/resources/images/prog-3.png
Binary files differ
diff --git a/MLEB/Translate/resources/images/prog-4.png b/MLEB/Translate/resources/images/prog-4.png
new file mode 100644
index 00000000..d556b5b3
--- /dev/null
+++ b/MLEB/Translate/resources/images/prog-4.png
Binary files differ
diff --git a/MLEB/Translate/resources/images/prog-5.png b/MLEB/Translate/resources/images/prog-5.png
new file mode 100644
index 00000000..8a12f3d7
--- /dev/null
+++ b/MLEB/Translate/resources/images/prog-5.png
Binary files differ
diff --git a/MLEB/Translate/resources/images/project.png b/MLEB/Translate/resources/images/project.png
new file mode 100644
index 00000000..b8b9462c
--- /dev/null
+++ b/MLEB/Translate/resources/images/project.png
Binary files differ
diff --git a/MLEB/Translate/resources/images/project.svg b/MLEB/Translate/resources/images/project.svg
new file mode 100644
index 00000000..64ec16b2
--- /dev/null
+++ b/MLEB/Translate/resources/images/project.svg
@@ -0,0 +1,66 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ version="1.1"
+ width="32"
+ height="32"
+ viewBox="0 0 32 32"
+ id="svg3945"
+ xml:space="preserve"><metadata
+ id="metadata18"><rdf:RDF><cc:Work
+ rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" /><dc:title></dc:title></cc:Work></rdf:RDF></metadata><defs
+ id="defs16" />
+<g
+ transform="translate(-355.875,-530.20145)"
+ id="layer1">
+ <g
+ id="g3815">
+
+ <rect
+ width="13.336"
+ height="6.4949999"
+ x="373.173"
+ y="532.79199"
+ id="rect4026-0-8-9-6-6-2-1-4-7-7-2-4-7-6"
+ style="fill:#ffffff;fill-opacity:0.675;stroke:#c9c9c9;stroke-width:0.2572;stroke-linecap:round" />
+
+ <linearGradient
+ x1="716.99408"
+ y1="-394.2966"
+ x2="716.99408"
+ y2="-422.53201"
+ id="rect3213-2-4-3-9-5-6-8-3-5-6_1_"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.0287,0,0,-1.0287,-365.6989,126.7675)">
+ <stop
+ id="stop7"
+ style="stop-color:#f4f4f4;stop-opacity:1"
+ offset="0" />
+ <stop
+ id="stop9"
+ style="stop-color:#dddddd;stop-opacity:1"
+ offset="1" />
+ </linearGradient>
+
+ <path
+ d="m 356.261,530.587 h 16.295 l 6.267,6.267 h 8.667 v 24.962 h -31.229 v -31.229 z"
+ id="rect3213-2-4-3-9-5-6-8-3-5-6"
+ style="fill:url(#rect3213-2-4-3-9-5-6-8-3-5-6_1_);stroke:#9d9d9d;stroke-width:0.77149999;stroke-linecap:square" />
+ <path
+ d="m 381.718,548.951 c 0.006,5.437 -4.396,9.848 -9.832,9.854 -5.436,0.006 -9.847,-4.396 -9.854,-9.831 0,-0.008 0,-0.016 0,-0.022 -0.006,-5.436 4.396,-9.847 9.832,-9.854 5.436,-0.006 9.847,4.396 9.854,9.832 0,0.006 0,0.014 0,0.021 z"
+ id="path5753-1-5-3-9-8-2-7-5-8"
+ style="fill:#f0f0f0;stroke:#6d6d6d;stroke-width:0.84439999;stroke-linecap:round" />
+ <path
+ d="m 372.031,541.108 c -0.825,0.023 -2.344,0.219 -2.344,0.219 0,0 0.25,0.477 0.25,0.688 0,0.211 -0.062,0.778 -0.062,1.031 0,0.253 0.925,0.053 1.094,-0.031 0.169,-0.084 1.281,-1.062 1.281,-1.062 0,0 0.408,-0.612 0.281,-0.781 -0.031,-0.044 -0.225,-0.072 -0.5,-0.064 l 0,0 z m -4.469,0.718 c 0.06,0.656 0.844,1.094 0.844,1.094 l 0.125,-0.438 c 0,10e-4 -0.67,-0.656 -0.969,-0.656 z m -0.781,0.438 c 0,0 -0.406,0.347 -1.062,0.406 -0.247,0.022 -0.745,-0.072 -1.281,-0.156 -1.188,1.37 -1.995,3.062 -2.281,4.938 l 0.219,-0.312 c 0,0 0.77,1.381 1.188,1.5 0.418,0.119 0.892,0.543 1.25,0.781 0.358,0.238 0.591,1.472 0.531,2.188 -0.06,0.716 0.483,0.804 0.781,1.281 0.298,0.477 0.949,3.326 1.188,3.625 0.239,0.299 0.475,-1.253 0.594,-1.969 0.119,-0.716 1.688,-2.034 1.688,-2.75 0,-0.716 -1.798,-1.736 -2.156,-2.094 -0.358,-0.358 -1.477,-0.531 -2.312,-0.531 -0.835,0 -0.847,-1.128 -1.562,-1.188 -0.715,-0.06 0.125,-1 0.125,-1 0,0 1.958,-0.312 2.375,-0.312 0.417,0 0.54,-1.182 0.719,-1.719 0.179,-0.537 1.506,-0.486 1.625,-0.844 0.119,-0.358 -0.542,-0.719 -0.781,-0.719 -0.239,0 -1.259,0.364 -1.438,0.125 -0.179,-0.239 1.031,-0.969 1.031,-0.969 l -0.441,-0.281 z m 9.063,0 c -0.197,0.016 -0.374,0.052 -0.438,0.094 -0.127,0.084 -0.467,0.216 -0.594,0.406 -0.127,0.19 -0.272,0.624 -0.125,0.75 0.147,0.126 0.26,0.157 0.344,0.094 0.084,-0.063 0.729,-0.616 0.812,-0.531 0.083,0.085 0.283,0.594 0.156,0.594 -0.127,0 -1.031,0.281 -1.031,0.281 0,0 -0.003,-0.171 -0.062,-0.156 -0.06,0.015 -0.003,0.235 -0.062,0.25 -0.06,0.015 -0.844,0.375 -0.844,0.375 0,0 -0.1,0.088 -0.219,0.188 l -0.25,0.25 c -0.006,0.007 -0.027,0.025 -0.031,0.031 -0.06,0.104 -0.39,0.599 -0.375,0.719 0.016,0.119 -0.07,0.375 0.094,0.375 0.164,0 1.27,-0.682 1.344,-0.562 0.074,0.119 0.188,0.125 0.188,0.125 0,0 -0.074,-0.156 0,-0.156 0.074,0 0.562,0.188 0.562,0.188 0,0 -0.073,-0.312 0.031,-0.281 0.104,0.03 0.583,0.594 0.688,0.594 0.105,0 0.358,-0.007 0.344,-0.156 -0.015,-0.149 -0.068,-0.335 0.125,-0.469 0.193,-0.134 0.787,-0.231 0.906,-0.156 0.119,0.074 0.304,0.16 0.125,0.25 -0.18,0.089 -0.396,-0.014 -0.5,0.031 -0.104,0.044 -0.392,0.333 -0.406,0.438 -0.015,0.104 0.561,0.565 0.531,0.625 -0.029,0.06 -0.326,0.344 -0.625,0.344 -0.299,0 -2.484,-0.546 -2.812,-0.531 -0.328,0.015 -0.615,0.099 -0.75,0.219 -0.135,0.119 -0.707,0.648 -0.781,0.812 -0.074,0.164 -0.398,0.957 -0.219,1.375 0.179,0.418 0.584,1.176 1.031,1.25 0.447,0.074 0.99,0.107 1.125,0.062 0.135,-0.045 0.859,0.76 0.875,1.312 0.015,0.552 -0.039,1.938 0.125,2.281 0.164,0.343 0.291,0.982 0.812,0.938 0.521,-0.044 0.945,-0.168 1.125,-0.406 0.179,-0.238 0.678,-1.455 0.812,-2.156 0.134,-0.701 0.754,-1.754 0.844,-2.156 0.09,-0.402 0.102,-0.631 -0.062,-0.75 -0.164,-0.119 -0.485,-0.116 -0.5,-0.25 -0.016,-0.135 0.209,-0.016 0.344,0 0.135,0.015 0.631,-0.022 0.75,-0.156 0.119,-0.135 0.324,-0.571 0.25,-0.75 -0.074,-0.18 -0.406,-0.562 -0.406,-0.562 0,0 1.338,0.161 1.875,0.594 0.312,0.251 0.564,0.577 0.75,0.844 -0.047,-2.462 -0.994,-4.705 -2.531,-6.406 -0.014,0.002 -0.054,0.031 -0.062,0.031 -0.232,0 -2.031,0.344 -2.031,0.344 0,0 -0.393,-0.447 -0.688,-0.469 -0.149,-0.016 -0.367,-0.021 -0.564,-0.005 l 0,0 z m -2.282,1.312 c 0,0 -0.212,0.865 0.094,0.844 0.306,-0.021 -0.094,-0.844 -0.094,-0.844 z m -0.406,0.375 c 0,0 -0.365,0.187 -0.281,0.281 0.084,0.094 0.26,0.147 0.312,0.062 0.052,-0.085 -0.031,-0.343 -0.031,-0.343 l 0,0 z m 5.719,8.094 c -0.121,0.026 -0.265,0.124 -0.344,0.219 -0.079,0.095 -0.198,0.43 -0.156,0.625 0.042,0.195 0.218,0.459 0.281,0.438 0.063,-0.021 0.229,-0.084 0.25,-0.438 0.021,-0.354 0.078,-0.671 0.031,-0.75 -0.047,-0.079 -0.062,-0.094 -0.062,-0.094 l 0,0 z"
+ id="path6360-91-0-9-0"
+ style="fill:#6d6d6d" />
+ </g>
+</g>
+</svg> \ No newline at end of file
diff --git a/MLEB/Translate/resources/images/remove.png b/MLEB/Translate/resources/images/remove.png
new file mode 100644
index 00000000..9fcfda42
--- /dev/null
+++ b/MLEB/Translate/resources/images/remove.png
Binary files differ
diff --git a/MLEB/Translate/resources/images/search.png b/MLEB/Translate/resources/images/search.png
new file mode 100644
index 00000000..9b58456a
--- /dev/null
+++ b/MLEB/Translate/resources/images/search.png
Binary files differ
diff --git a/MLEB/Translate/resources/images/search.svg b/MLEB/Translate/resources/images/search.svg
new file mode 100644
index 00000000..799cb17e
--- /dev/null
+++ b/MLEB/Translate/resources/images/search.svg
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ version="1.1"
+ width="32"
+ height="32.000031"
+ id="svg2">
+ <defs
+ id="defs4" />
+ <metadata
+ id="metadata7">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <path
+ d="m 3.37703,3.37704 c 4.50273,-4.50274 11.80568,-4.50272 16.3085,6e-5 4.07216,4.07223 4.41687,10.42533 1.12323,14.93559 L 32,29.50385 29.50385,32.00003 18.3126,20.80887 C 13.80244,24.1025 7.44932,23.75797 3.37711,19.68548 -1.1257,15.18284 -1.12568,7.8799 3.37703,3.37704 z m 2.12176,2.12187 c -3.34229,3.34214 -3.38386,8.76418 -0.0416,12.10657 3.34232,3.34223 8.80592,3.34224 12.1482,-2e-5 C 20.94762,14.26307 20.90595,8.84117 17.56369,5.49878 14.22149,2.15665 8.84106,2.15665 5.49878,5.49891 z"
+ id="path3017-6-34-0"
+ style="fill:#555555;fill-opacity:1;stroke:none" />
+</svg>
diff --git a/MLEB/Translate/resources/images/switch.png b/MLEB/Translate/resources/images/switch.png
new file mode 100644
index 00000000..ec988a3f
--- /dev/null
+++ b/MLEB/Translate/resources/images/switch.png
Binary files differ
diff --git a/MLEB/Translate/resources/images/switch.svg b/MLEB/Translate/resources/images/switch.svg
new file mode 100644
index 00000000..40887c79
--- /dev/null
+++ b/MLEB/Translate/resources/images/switch.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1024 768" enable-background="new 0 0 1024 768"><path d="M751.863 131.861l-186.744-1.107h-215.793v-102.917l-221.326 205.833 221.326 188.127v-102.917h215.793v215.793h-102.917l188.127 221.326 204.727-221.326h-102.917v-215.793l-.277-187.021zm-90.467 90.744v4.427h-4.427v-4.427h4.427z" fill="#555"/></svg>
diff --git a/MLEB/Translate/resources/images/translate-ltr.png b/MLEB/Translate/resources/images/translate-ltr.png
new file mode 100644
index 00000000..0182a537
--- /dev/null
+++ b/MLEB/Translate/resources/images/translate-ltr.png
Binary files differ
diff --git a/MLEB/Translate/resources/images/translate-ltr.svg b/MLEB/Translate/resources/images/translate-ltr.svg
new file mode 100644
index 00000000..24e56a34
--- /dev/null
+++ b/MLEB/Translate/resources/images/translate-ltr.svg
@@ -0,0 +1,29 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ version="1.1"
+ width="33.389"
+ height="22.857"
+ viewBox="0 0 33.389 22.857"
+ id="svg2"
+ xml:space="preserve"><metadata
+ id="metadata9"><rdf:RDF><cc:Work
+ rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" /><dc:title></dc:title></cc:Work></rdf:RDF></metadata><defs
+ id="defs7" />
+
+<path
+ d="m 0,0 h 25.922 l 7.467,11.429 -7.467,11.429 H 0 V 0 z"
+ id="rect12220"
+ style="fill:#729fcf" />
+<path
+ d="m 21.324,2.915 -9.343,13.311 -0.022,0.003 -0.284,3.239 2.968,-1.379 9.344,-13.31 -2.663,-1.864 0,0 z"
+ id="rect8752-2-8-5-49-6-2-0-2-5-4-0-4-5-8-7-6-4-9-9-0-3-2-1-1-3-7-4-8-3"
+ style="fill:#ffffff" />
+</svg> \ No newline at end of file
diff --git a/MLEB/Translate/resources/images/translate-rtl.png b/MLEB/Translate/resources/images/translate-rtl.png
new file mode 100644
index 00000000..90a845cb
--- /dev/null
+++ b/MLEB/Translate/resources/images/translate-rtl.png
Binary files differ
diff --git a/MLEB/Translate/resources/images/translate-rtl.svg b/MLEB/Translate/resources/images/translate-rtl.svg
new file mode 100644
index 00000000..5f30aea8
--- /dev/null
+++ b/MLEB/Translate/resources/images/translate-rtl.svg
@@ -0,0 +1,29 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ version="1.1"
+ width="33.389"
+ height="22.857"
+ viewBox="0 0 33.389 22.857"
+ id="svg2"
+ xml:space="preserve"><metadata
+ id="metadata9"><rdf:RDF><cc:Work
+ rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" /><dc:title></dc:title></cc:Work></rdf:RDF></metadata><defs
+ id="defs7" />
+
+<path
+ d="M 33.389,0 H 7.467 L 0,11.429 7.467,22.858 H 33.389 V 0 z"
+ id="rect12220"
+ style="fill:#729fcf" />
+<path
+ d="m 21.051,2.915 -9.343,13.311 -0.022,0.003 -0.284,3.239 2.968,-1.379 9.344,-13.31 -2.663,-1.864 0,0 z"
+ id="rect8752-2-8-5-49-6-2-0-2-5-4-0-4-5-8-7-6-4-9-9-0-3-2-1-1-3-7-4-8-3"
+ style="fill:#ffffff" />
+</svg> \ No newline at end of file
diff --git a/MLEB/Translate/resources/images/trash_darkgray.png b/MLEB/Translate/resources/images/trash_darkgray.png
new file mode 100644
index 00000000..81b2f0cb
--- /dev/null
+++ b/MLEB/Translate/resources/images/trash_darkgray.png
Binary files differ
diff --git a/MLEB/Translate/resources/images/trash_darkgray.svg b/MLEB/Translate/resources/images/trash_darkgray.svg
new file mode 100644
index 00000000..5ac2cf0a
--- /dev/null
+++ b/MLEB/Translate/resources/images/trash_darkgray.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 96 96" enable-background="new 0 0 96 96"><g fill="#555"><path d="M13.5 28.2l8.1 63c.3 2.7 2.4 4.8 5.1 4.8h42.6c2.7 0 4.8-2.1 4.8-4.5l8.1-63h-68.7v-.3zM77.4 6.6c3.6 0 6.6 1.5 6.6 3.3v7.2c0 1.8-3 1.5-6.9 1.5h-58.5c-3.6 0-6.6.3-6.6-1.5v-7.2c0-1.8 3-3.3 6.9-3.3l13.5-1.2 4.8-5.4h21.3l5.1 5.7 13.8.9z"/></g></svg>
diff --git a/MLEB/Translate/resources/images/user-small.png b/MLEB/Translate/resources/images/user-small.png
new file mode 100644
index 00000000..880b035e
--- /dev/null
+++ b/MLEB/Translate/resources/images/user-small.png
Binary files differ
diff --git a/MLEB/Translate/resources/images/user-small.svg b/MLEB/Translate/resources/images/user-small.svg
new file mode 100644
index 00000000..082d0470
--- /dev/null
+++ b/MLEB/Translate/resources/images/user-small.svg
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- Generator: Adobe Illustrator 15.1.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
+<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" width="15px" height="15px" viewBox="0 0 15 15" enable-background="new 0 0 15 15" xml:space="preserve">
+<g>
+ <path fill="#D1D3D4" d="M12.281,4.776c0,2.639-2.142,4.783-4.78,4.783c-2.64,0-4.779-2.144-4.779-4.783 C2.722,2.138,4.861,0,7.501,0C10.14,0,12.281,2.138,12.281,4.776z"/>
+ <path fill="#D1D3D4" d="M13.36,8.609h-0.947c-1.031,1.625-2.844,2.707-4.912,2.707c-2.068,0-3.883-1.082-4.914-2.707H1.645 c-0.445,0-0.799,0.358-0.799,0.801v4.795C0.846,14.641,1.199,15,1.645,15H13.36c0.44,0,0.794-0.359,0.794-0.795V9.41 C14.154,8.968,13.801,8.609,13.36,8.609z"/>
+</g>
+</svg> \ No newline at end of file
diff --git a/MLEB/Translate/resources/images/view-list-hi.png b/MLEB/Translate/resources/images/view-list-hi.png
new file mode 100644
index 00000000..6e7342d0
--- /dev/null
+++ b/MLEB/Translate/resources/images/view-list-hi.png
Binary files differ
diff --git a/MLEB/Translate/resources/images/view-list-hi.svg b/MLEB/Translate/resources/images/view-list-hi.svg
new file mode 100644
index 00000000..a3ea47f2
--- /dev/null
+++ b/MLEB/Translate/resources/images/view-list-hi.svg
@@ -0,0 +1,50 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ version="1.1"
+ width="25"
+ height="15"
+ viewBox="0 0 25 15"
+ id="svg17805"
+ xml:space="preserve"><metadata
+ id="metadata11"><rdf:RDF><cc:Work
+ rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" /><dc:title></dc:title></cc:Work></rdf:RDF></metadata><defs
+ id="defs9" />
+
+<g
+ transform="translate(-159.64355,-100.30805)"
+ id="layer1">
+ <g
+ transform="matrix(0.65003318,0,0,0.65003318,105.65437,41.0619)"
+ id="g3770">
+ <rect
+ width="20.139999"
+ height="4.1040001"
+ x="92.216003"
+ y="93.653"
+ id="rect2996"
+ style="fill:#ffffff" />
+ <rect
+ width="20.139999"
+ height="4.1040001"
+ x="92.216003"
+ y="100.629"
+ id="rect3766"
+ style="fill:#ffffff" />
+ <rect
+ width="20.139999"
+ height="4.1040001"
+ x="92.216003"
+ y="107.606"
+ id="rect3768"
+ style="fill:#ffffff" />
+ </g>
+</g>
+</svg> \ No newline at end of file
diff --git a/MLEB/Translate/resources/images/view-list.png b/MLEB/Translate/resources/images/view-list.png
new file mode 100644
index 00000000..b7f3cf06
--- /dev/null
+++ b/MLEB/Translate/resources/images/view-list.png
Binary files differ
diff --git a/MLEB/Translate/resources/images/view-list.svg b/MLEB/Translate/resources/images/view-list.svg
new file mode 100644
index 00000000..c0585828
--- /dev/null
+++ b/MLEB/Translate/resources/images/view-list.svg
@@ -0,0 +1,53 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ version="1.1"
+ width="25"
+ height="15"
+ id="svg17805">
+ <defs
+ id="defs17807" />
+ <metadata
+ id="metadata17810">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ transform="translate(-159.64355,-100.30805)"
+ id="layer1">
+ <rect
+ width="13.091612"
+ height="2.6675708"
+ x="165.59773"
+ y="101.93939"
+ id="rect2996"
+ style="fill:#252525;fill-opacity:1;stroke:none" />
+ <rect
+ width="13.091612"
+ height="2.6675708"
+ x="165.59775"
+ y="106.47427"
+ id="rect3766"
+ style="fill:#252525;fill-opacity:1;stroke:none" />
+ <rect
+ width="13.091612"
+ height="2.6675708"
+ x="165.59775"
+ y="111.00913"
+ id="rect3768"
+ style="fill:#252525;fill-opacity:1;stroke:none" />
+ </g>
+</svg>
diff --git a/MLEB/Translate/resources/images/view-page-hi.png b/MLEB/Translate/resources/images/view-page-hi.png
new file mode 100644
index 00000000..05b3e28a
--- /dev/null
+++ b/MLEB/Translate/resources/images/view-page-hi.png
Binary files differ
diff --git a/MLEB/Translate/resources/images/view-page-hi.svg b/MLEB/Translate/resources/images/view-page-hi.svg
new file mode 100644
index 00000000..a4143656
--- /dev/null
+++ b/MLEB/Translate/resources/images/view-page-hi.svg
@@ -0,0 +1,40 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ version="1.1"
+ width="25"
+ height="15"
+ id="svg17805">
+ <defs
+ id="defs17807" />
+ <metadata
+ id="metadata17810">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <path
+ d="m 5.96875,1.625 0,2.6875 5.65625,0 0,-2.6875 -5.65625,0 z m 7.40625,0 0,2.6875 5.65625,0 0,-2.6875 -5.65625,0 z"
+ id="rect2996"
+ style="fill:#ffffff;fill-opacity:1;stroke:none" />
+ <path
+ d="m 5.96875,6.15625 0,2.6875 5.65625,0 0,-2.6875 -5.65625,0 z m 7.40625,0 0,2.6875 5.65625,0 0,-2.6875 -5.65625,0 z"
+ id="rect3766"
+ style="fill:#ffffff;fill-opacity:1;stroke:none" />
+ <path
+ d="m 5.96875,10.6875 0,2.6875 5.65625,0 0,-2.6875 -5.65625,0 z m 7.40625,0 0,2.6875 5.65625,0 0,-2.6875 -5.65625,0 z"
+ id="rect3768"
+ style="fill:#ffffff;fill-opacity:1;stroke:none" />
+</svg>
diff --git a/MLEB/Translate/resources/images/view-page.png b/MLEB/Translate/resources/images/view-page.png
new file mode 100644
index 00000000..9a14d86e
--- /dev/null
+++ b/MLEB/Translate/resources/images/view-page.png
Binary files differ
diff --git a/MLEB/Translate/resources/images/view-page.svg b/MLEB/Translate/resources/images/view-page.svg
new file mode 100644
index 00000000..8eb196b2
--- /dev/null
+++ b/MLEB/Translate/resources/images/view-page.svg
@@ -0,0 +1,47 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ version="1.1"
+ width="25"
+ height="15"
+ id="svg17805">
+ <defs
+ id="defs17807" />
+ <metadata
+ id="metadata17810">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ transform="translate(-159.64355,-100.30805)"
+ id="layer1">
+ <path
+ d="m 5.96875,1.625 0,2.6875 5.65625,0 0,-2.6875 -5.65625,0 z m 7.40625,0 0,2.6875 5.65625,0 0,-2.6875 -5.65625,0 z"
+ transform="translate(159.64355,100.30805)"
+ id="rect2996"
+ style="fill:#252525;fill-opacity:1;stroke:none" />
+ <path
+ d="m 5.96875,6.15625 0,2.6875 5.65625,0 0,-2.6875 -5.65625,0 z m 7.40625,0 0,2.6875 5.65625,0 0,-2.6875 -5.65625,0 z"
+ transform="translate(159.64355,100.30805)"
+ id="rect3766"
+ style="fill:#252525;fill-opacity:1;stroke:none" />
+ <path
+ d="m 5.96875,10.6875 0,2.6875 5.65625,0 0,-2.6875 -5.65625,0 z m 7.40625,0 0,2.6875 5.65625,0 0,-2.6875 -5.65625,0 z"
+ transform="translate(159.64355,100.30805)"
+ id="rect3768"
+ style="fill:#252525;fill-opacity:1;stroke:none" />
+ </g>
+</svg>
diff --git a/MLEB/Translate/resources/images/view-proofread-hi.png b/MLEB/Translate/resources/images/view-proofread-hi.png
new file mode 100644
index 00000000..8f385504
--- /dev/null
+++ b/MLEB/Translate/resources/images/view-proofread-hi.png
Binary files differ
diff --git a/MLEB/Translate/resources/images/view-proofread-hi.svg b/MLEB/Translate/resources/images/view-proofread-hi.svg
new file mode 100644
index 00000000..51b8f2a3
--- /dev/null
+++ b/MLEB/Translate/resources/images/view-proofread-hi.svg
@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ version="1.1"
+ width="25"
+ height="15"
+ id="svg17805">
+ <defs
+ id="defs17807" />
+ <metadata
+ id="metadata17810">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ transform="translate(-159.64355,-100.30805)"
+ id="layer1">
+ <path
+ d="m 175.4092,101.38615 -5.1875,8.93751 -2.0313,-1.5 -1.5937,2.125 3.25,2.4063 1.1875,0.875 0.75,-1.2813 5.9062,-10.25001 -2.2812,-1.3125 z"
+ id="path12436-0-1-2-8-1-9-2-0"
+ style="font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;baseline-shift:baseline;color:#000000;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:2.6545198;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;font-family:Sans;-inkscape-font-specification:Sans" />
+ </g>
+</svg>
diff --git a/MLEB/Translate/resources/images/view-proofread.png b/MLEB/Translate/resources/images/view-proofread.png
new file mode 100644
index 00000000..bdb61dcc
--- /dev/null
+++ b/MLEB/Translate/resources/images/view-proofread.png
Binary files differ
diff --git a/MLEB/Translate/resources/images/view-proofread.svg b/MLEB/Translate/resources/images/view-proofread.svg
new file mode 100644
index 00000000..5809b3fe
--- /dev/null
+++ b/MLEB/Translate/resources/images/view-proofread.svg
@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ version="1.1"
+ width="25"
+ height="15"
+ id="svg17805">
+ <defs
+ id="defs17807" />
+ <metadata
+ id="metadata17810">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ transform="translate(-159.64355,-100.30805)"
+ id="layer1">
+ <path
+ d="m 175.4092,101.38615 -5.1875,8.93751 -2.0313,-1.5 -1.5937,2.125 3.25,2.4063 1.1875,0.875 0.75,-1.2813 5.9062,-10.25001 -2.2812,-1.3125 z"
+ id="path12436-0-1-2-8-1-9-2-0"
+ style="font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;baseline-shift:baseline;color:#000000;fill:#252525;fill-opacity:1;stroke:none;stroke-width:2.6545198;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;font-family:Sans;-inkscape-font-specification:Sans" />
+ </g>
+</svg>
diff --git a/MLEB/Translate/resources/js/ext.translate.base.js b/MLEB/Translate/resources/js/ext.translate.base.js
new file mode 100644
index 00000000..4d409f78
--- /dev/null
+++ b/MLEB/Translate/resources/js/ext.translate.base.js
@@ -0,0 +1,184 @@
+( function ( $, mw ) {
+ 'use strict';
+
+ mw.translate = mw.translate || {};
+
+ mw.translate = $.extend( mw.translate, {
+ dirty: false,
+ // A cache for language stats loaded from API,
+ // indexed by language code
+ languagestats: {},
+
+ /**
+ * Checks if the input placeholder attribute
+ * is supported on this element in this browser.
+ * @param {jQuery} element
+ * @return {boolean}
+ */
+ isPlaceholderSupported: function ( element ) {
+ return ( 'placeholder' in element[0] );
+ },
+
+ // Storage for language stats loader functions from API,
+ // indexed by language code
+ languageStatsLoader: {},
+
+ /**
+ * Get language stats for a language from the API.
+ * @param {string} language Language code.
+ * @return {deferred}
+ */
+ loadLanguageStats: function ( language ) {
+ if ( !mw.translate.languageStatsLoader[language] ) {
+ mw.translate.languageStatsLoader[language] = new mw.Api().get( {
+ action: 'query',
+ format: 'json',
+ meta: 'languagestats',
+ lslanguage: language
+ } );
+ }
+
+ mw.translate.languageStatsLoader[language].done( function ( result ) {
+ mw.translate.languagestats[language] = result.query.languagestats;
+ } );
+
+ return mw.translate.languageStatsLoader[language];
+ },
+
+ /**
+ * Load message group information asynchronously.
+ *
+ * @param {string} id Message group id
+ * @param {string|array} [props] List of properties to load
+ * @return {jQuery.Promise} Object containing the requested properties on success.
+ */
+ getMessageGroup: function ( id, props ) {
+ var params,
+ deferred = new $.Deferred();
+
+ if ( $.isArray( props ) ) {
+ props = props.join( '|' );
+ } else if ( props === undefined ) {
+ props = 'id|label|description|icon|priority|prioritylangs|priorityforce|workflowstates';
+ }
+
+ params = {
+ action: 'query',
+ format: 'json',
+ meta: 'messagegroups',
+ mgformat: 'flat',
+ mgprop: props,
+ mgroot: id
+ };
+
+ new mw.Api()
+ .get( params )
+ .done( function ( result ) {
+ deferred.resolve( result.query.messagegroups[0] );
+ } )
+ .fail( deferred.reject );
+
+ return deferred.promise();
+ },
+
+ /**
+ * Find a group from an array of message groups as returned by web api
+ * and recurse it through sub groups.
+ *
+ * @param {string} id Group id to search for.
+ * @param {Array} groups Array of message grous
+ * @return {Object} Message group object
+ */
+ findGroup: function ( id, groups ) {
+ var result = null;
+
+ if ( !id ) {
+ return groups;
+ }
+
+ $.each( groups, function ( index, group ) {
+ if ( group.id === id ) {
+ result = group;
+ return false;
+ }
+
+ if ( group.groups ) {
+ group = mw.translate.findGroup( id, group.groups );
+
+ if ( group ) {
+ result = group;
+ return false;
+ }
+ }
+ } );
+
+ return result;
+ },
+
+ /**
+ * Check if the current user is allowed to translate on this wiki.
+ * @return {boolean}
+ */
+ canTranslate: function () {
+ return mw.config.get( 'TranslateRight' );
+ },
+
+ /**
+ * Check if the current user is allowed to proofread on this wiki.
+ * @return {boolean}
+ */
+ canProofread: function () {
+ return mw.config.get( 'TranslateMessageReviewRight' );
+ },
+
+ /**
+ * Check if the current user can delete translations on this wiki.
+ * @return {boolean}
+ */
+ canDelete: function () {
+ return mw.config.get( 'DeleteRight' ) && mw.config.get( 'TranslateRight' );
+ },
+
+ addDocumentationLanguage: function () {
+ var docLanguageCode = mw.config.get( 'wgTranslateDocumentationLanguageCode' );
+ if ( $.uls.data.languages[docLanguageCode] ) {
+ return;
+ }
+ $.uls.data.addLanguage( docLanguageCode, {
+ script: $.uls.data.getScript( mw.config.get( 'wgContentLanguage' ) ),
+ regions: ['SP'],
+ autonym: mw.msg( 'translate-documentation-language' )
+ } );
+ },
+
+ isDirty: function () {
+ return $( '.mw-ajax-dialog:visible' ).length || // For old Translate
+ // For new Translate, something being typed in the current editor.
+ mw.translate.dirty ||
+ // For new translate, previous editors has some unsaved edits
+ $( '.tux-status-unsaved' ).length;
+ }
+ } );
+
+ function pageShowHandler() {
+ $( window ).on( 'beforeunload.translate', function () {
+ if ( mw.translate.isDirty() ) {
+ // Return our message
+ return mw.msg( 'translate-js-support-unsaved-warning' );
+ }
+ } );
+ }
+
+ /**
+ * A warning to be shown if a user tries to close the page or navigate away
+ * from it without saving the written translation.
+ */
+ function translateOnBeforeUnloadRegister() {
+ pageShowHandler();
+ $( window ).on( 'pageshow.translate', pageShowHandler );
+ }
+
+ $( document ).ready( function () {
+ translateOnBeforeUnloadRegister();
+ } );
+}( jQuery, mediaWiki ) );
diff --git a/MLEB/Translate/resources/js/ext.translate.dropdownmenu.js b/MLEB/Translate/resources/js/ext.translate.dropdownmenu.js
new file mode 100644
index 00000000..0b1eb02d
--- /dev/null
+++ b/MLEB/Translate/resources/js/ext.translate.dropdownmenu.js
@@ -0,0 +1,12 @@
+( function ( $ ) {
+ 'use strict';
+
+ $( document ).ready( function () {
+ // Hide the dropdown menu when clicking outside of it
+ $( 'html' ).on( 'click', function ( e ) {
+ if ( !e.isDefaultPrevented() ) {
+ $( '.tux-dropdown-menu' ).addClass( 'hide' );
+ }
+ } );
+ } );
+} )( jQuery );
diff --git a/MLEB/Translate/resources/js/ext.translate.editor.helpers.js b/MLEB/Translate/resources/js/ext.translate.editor.helpers.js
new file mode 100644
index 00000000..a58f4155
--- /dev/null
+++ b/MLEB/Translate/resources/js/ext.translate.editor.helpers.js
@@ -0,0 +1,528 @@
+/*
+ * Translate editor additional helper functionality
+ */
+( function ( $, mw ) {
+ 'use strict';
+
+ var translateEditorHelpers = {
+
+ showDocumentationEditor: function () {
+ var $infoColumnBlock = this.$editor.find( '.infocolumn-block' ),
+ $editColumn = this.$editor.find( '.editcolumn' ),
+ $messageDescEditor = $infoColumnBlock.find( '.message-desc-editor' ),
+ $messageDescViewer = $infoColumnBlock.find( '.message-desc-viewer' );
+
+ $infoColumnBlock
+ .removeClass( 'five' )
+ .addClass( 'seven' );
+ $editColumn
+ .removeClass( 'seven' )
+ .addClass( 'five' );
+
+ $messageDescViewer.addClass( 'hide' );
+
+ $messageDescEditor
+ .removeClass( 'hide' )
+ .find( '.tux-textarea-documentation' )
+ .focus();
+
+ // So that the link won't be followed
+ return false;
+ },
+
+ hideDocumentationEditor: function () {
+ var $infoColumnBlock = this.$editor.find( '.infocolumn-block' ),
+ $editColumn = this.$editor.find( '.editcolumn' ),
+ $messageDescEditor = $infoColumnBlock.find( '.message-desc-editor' ),
+ $messageDescViewer = $infoColumnBlock.find( '.message-desc-viewer' );
+
+ $infoColumnBlock
+ .removeClass( 'seven' )
+ .addClass( 'five' );
+ $editColumn
+ .removeClass( 'five' )
+ .addClass( 'seven' );
+
+ $messageDescEditor.addClass( 'hide' );
+ $messageDescViewer.removeClass( 'hide' );
+ },
+
+ /**
+ * Save the documentation
+ */
+ saveDocumentation: function () {
+ var translateEditor = this,
+ api = new mw.Api(),
+ deferred = new $.Deferred(),
+ newDocumentation = translateEditor.$editor.find( '.tux-textarea-documentation' ).val();
+
+ deferred = api.post( {
+ action: 'edit',
+ title: translateEditor.message.title
+ .replace( /\/[a-z\-]+$/, '/' + mw.config.get( 'wgTranslateDocumentationLanguageCode' ) ),
+ text: newDocumentation,
+ token: mw.user.tokens.get( 'editToken' )
+ } ).done( function ( response ) {
+ var $messageDesc = translateEditor.$editor.find( '.infocolumn-block .message-desc' );
+
+ if ( response.edit.result === 'Success' ) {
+ api.parse(
+ newDocumentation
+ ).done( function ( parsedDocumentation ) {
+ $messageDesc.html( parsedDocumentation );
+ } ).fail( function ( errorCode, results ) {
+ $messageDesc.html( newDocumentation );
+ mw.log( 'Error parsing documentation ' + errorCode + ' ' + results.error.info );
+ } );
+ // A collapsible element may have been added
+ $( '.mw-identical-title' ).makeCollapsible();
+
+ translateEditor.hideDocumentationEditor();
+ } else {
+ mw.notify( 'Error saving message documentation' );
+ mw.log( 'Error saving documentation', response );
+ }
+ } ).fail( function ( errorCode, results ) {
+ mw.notify( 'Error saving message documentation' );
+ mw.log( 'Error saving documentation', errorCode, results );
+ } );
+ return deferred.promise();
+ },
+
+ /**
+ * Shows the message documentation.
+ * @param {object} documentation A documentation object as returned by API.
+ */
+ showMessageDocumentation: function ( documentation ) {
+ var $descEditLink,
+ documentationDir,
+ expand,
+ $messageDescViewer,
+ $messageDoc,
+ readMore,
+ $readMore = null;
+
+ if ( !mw.config.get( 'wgTranslateDocumentationLanguageCode' ) ) {
+ return;
+ }
+
+ $messageDescViewer = this.$editor.find( '.message-desc-viewer' );
+ $descEditLink = $messageDescViewer.find( '.message-desc-edit' );
+ $messageDoc = $messageDescViewer.find( '.message-desc' );
+
+ // Display the documentation only if it's not empty and
+ // documentation language is configured
+ if ( documentation.error ) {
+ // TODO: better error handling, especially since the presence of documentation
+ // is heavily hinted at in the UI
+ return;
+ } else if ( documentation.value ) {
+ documentationDir = $.uls.data.getDir( documentation.language );
+
+ // Show the documentation and set appropriate
+ // lang and dir attributes.
+ // The message documentation is assumed to be written
+ // in the content language of the wiki.
+ // Possible classes:
+ // * mw-content-ltr
+ // * mw-content-rtl
+ // (The direction classes are needed, because the documentation
+ // is likely to be MediaWiki-formatted text.)
+ $messageDoc
+ .attr( {
+ lang: documentation.language,
+ dir: documentationDir
+ } )
+ .addClass( 'mw-content-' + documentationDir )
+ .html( documentation.html );
+
+ this.$editor.find( '.tux-textarea-documentation' )
+ .attr( {
+ lang: documentation.language,
+ dir: documentationDir
+ } )
+ .val( documentation.value );
+
+ $descEditLink.text( mw.msg( 'tux-editor-edit-desc' ) );
+
+ if ( documentation.html.length > 500 ) {
+ expand = function () {
+ $messageDoc.removeClass( 'compact' );
+ $readMore.text( mw.msg( 'tux-editor-message-desc-less' ) );
+ };
+
+ readMore = function () {
+ if ( $messageDoc.hasClass( 'compact' ) ) {
+ expand();
+ } else {
+ $messageDoc.addClass( 'compact' );
+ $readMore.text( mw.msg( 'tux-editor-message-desc-more' ) );
+ }
+ };
+
+ $readMore = $( '<span>' )
+ .addClass( 'read-more column' )
+ .text( mw.msg( 'tux-editor-message-desc-more' ) )
+ .click( readMore );
+
+ $messageDescViewer.find( '.message-desc-control' )
+ .prepend( $readMore );
+
+ $messageDoc.addClass( 'long compact' ).on( 'mouseenter mouseleave', expand );
+ }
+
+ // Enable the collapsible elements,
+ // used in {{Identical}} on translatewiki.net
+ $( '.mw-identical-title' ).makeCollapsible();
+ } else {
+ $descEditLink.text( mw.msg( 'tux-editor-add-desc' ) );
+ }
+
+ $messageDescViewer.removeClass( 'hide' );
+ },
+
+ /**
+ * Shows uneditable documentation.
+ * @param {Object} documentation A gettext object as returned by API.
+ */
+ showUneditableDocumentation: function ( documentation ) {
+ var dir;
+
+ if ( documentation.error ) {
+ return;
+ }
+
+ dir = $.uls.data.getDir( documentation.language );
+
+ this.$editor.find( '.uneditable-documentation' )
+ .attr( {
+ lang: documentation.language,
+ dir: dir
+ } )
+ .addClass( 'mw-content-' + dir )
+ .html( documentation.html )
+ .removeClass( 'hide' );
+ },
+
+ /**
+ * Shows the translations from other languages
+ * @param {array} translations An inotherlanguages array as returned by the translation helpers API.
+ */
+ showAssistantLanguages: function ( translations ) {
+ var translateEditor = this,
+ $translationTextarea;
+
+ $translationTextarea = this.$editor.find( '.tux-textarea-translation' );
+
+ $.each( translations, function ( index ) {
+ var $otherLanguage,
+ translationDir,
+ translation = translations[index];
+
+ translationDir = $.uls.data.getDir( translation.language );
+
+ $otherLanguage = $( '<div>' )
+ .addClass( 'row in-other-language' )
+ .append(
+ $( '<div>' )
+ .addClass( 'nine columns suggestiontext' )
+ .attr( {
+ lang: translation.language,
+ dir: translationDir
+ } )
+ .text( translation.value ),
+ $( '<div>' )
+ .addClass( 'three columns language text-right' )
+ .attr( {
+ lang: translation.language,
+ dir: translationDir
+ } )
+ .text( $.uls.data.getAutonym( translation.language ) )
+ );
+
+ translateEditor.suggestionAdder( $otherLanguage, translation.value );
+
+ translateEditor.$editor.find( '.in-other-languages-title' )
+ .removeClass( 'hide' )
+ .after( $otherLanguage );
+ } );
+ },
+
+ /**
+ * Shows the translation suggestions from Translation Memory
+ * @param {array} suggestions A ttmserver array as returned by API.
+ */
+ showTranslationMemory: function ( suggestions ) {
+ var $heading, $tmSuggestions,
+ translateEditor = this;
+
+ if ( !suggestions.length ) {
+ return;
+ }
+
+ // Container for the suggestions
+ $tmSuggestions = $( '<div>' ).addClass( 'tm-suggestions' );
+
+ $heading = this.$editor.find( '.tm-suggestions-title' );
+ $heading.after( $tmSuggestions );
+
+ $.each( suggestions, function ( index, translation ) {
+ var $translation,
+ alreadyOnTheList = false;
+
+ if ( translation.local && translation.location === translateEditor.message.title ) {
+ // Do not add self-suggestions
+ return true;
+ }
+
+ // See if it is already listed, and increment use count
+ $tmSuggestions.find( '.tm-suggestion' ).each( function () {
+ var $uses, count,
+ $suggestion = $( this );
+
+ if ( $suggestion.find( '.suggestiontext ' ).text() === translation.target ) {
+ // Update the message and data value
+ $uses = $suggestion.find( '.n-uses' );
+ count = $uses.data( 'n' ) + 1;
+ $uses.data( 'n', count );
+ $uses.text( mw.msg( 'tux-editor-n-uses', count ) + ' 〉' );
+
+ // Halt processing
+ alreadyOnTheList = true;
+ return false;
+ }
+ } );
+
+ if ( alreadyOnTheList ) {
+ // Continue to the next one
+ return true;
+ }
+
+ $translation = $( '<div>' )
+ .addClass( 'row tm-suggestion' )
+ .append(
+ $( '<div>' )
+ .addClass( 'nine columns suggestiontext' )
+ .text( translation.target ),
+ $( '<div>' )
+ .addClass( 'three columns quality text-right' )
+ .text( mw.msg( 'tux-editor-tm-match',
+ Math.round( translation.quality * 100 ) ) ),
+ $( '<div>' )
+ .addClass( 'row text-right' )
+ .append(
+ $( '<a>' )
+ .addClass( 'n-uses' )
+ .data( 'n', 1 )
+ )
+ );
+
+ translateEditor.suggestionAdder( $translation, translation.target );
+
+ $tmSuggestions.append( $translation );
+ } );
+
+ // Show the heading only if we actually have suggestions
+ if ( $tmSuggestions.length ) {
+ $heading.removeClass( 'hide' );
+ }
+ },
+
+ /**
+ * Shows the translation from machine translation systems
+ * @param {array} suggestions
+ */
+ showMachineTranslations: function ( suggestions ) {
+ var $mtSuggestions,
+ translateEditor = this;
+
+ if ( !suggestions.length ) {
+ return;
+ }
+
+ $mtSuggestions = this.$editor.find( '.tm-suggestions' );
+
+ if ( !$mtSuggestions.length ) {
+ $mtSuggestions = $( '<div>' ).addClass( 'tm-suggestions' );
+ }
+
+ this.$editor.find( '.tm-suggestions-title' )
+ .removeClass( 'hide' )
+ .after( $mtSuggestions );
+
+ $.each( suggestions, function ( index, translation ) {
+ var $translation;
+
+ $translation = $( '<div>' )
+ .addClass( 'row tm-suggestion' )
+ .append(
+ $( '<div>' )
+ .addClass( 'nine columns suggestiontext' )
+ .text( translation.target ),
+ $( '<div>' )
+ .addClass( 'three columns text-right service' )
+ .text( translation.service )
+ );
+
+ translateEditor.suggestionAdder( $translation, translation.target );
+
+ $mtSuggestions.append( $translation );
+ } );
+ },
+
+ /**
+ * Makes the $source element clickable and clicking it will replace the
+ * transltion textarea with the given suggestion.
+ *
+ * @param {jQuery} $source
+ * @param {String} suggestion Text to add
+ */
+ suggestionAdder: function ( $source, suggestion ) {
+ var inserter,
+ $target = this.$editor.find( '.tux-textarea-translation' );
+
+ inserter = function () {
+ var selection;
+ if ( window.getSelection ) {
+ selection = window.getSelection().toString();
+ } else if ( document.selection && document.selection.type !== 'Control' ) {
+ selection = document.selection.createRange().text;
+ }
+
+ if ( !selection ) {
+ $target.val( suggestion ).focus().trigger( 'input' );
+ }
+ };
+
+ $source.on( 'click', inserter );
+ $source.addClass( 'shortcut-activated' );
+ },
+
+ /**
+ * Shows the support options for the translator.
+ * @param {object} support A support object as returned by API.
+ */
+ showSupportOptions: function ( support ) {
+ // Support URL
+ if ( support.url ) {
+ this.$editor.find( '.help' )
+ .find( 'a' )
+ .attr( 'href', support.url )
+ .end()
+ .removeClass( 'hide' );
+ }
+ },
+
+ /**
+ * Adds buttons for quickly inserting insertables.
+ * @param {object} insertables A insertables object as returned by API.
+ */
+ addInsertables: function ( insertables ) {
+ var i,
+ count = insertables.length,
+ $sourceMessage = this.$editor.find( '.sourcemessage' ),
+ $buttonArea = this.$editor.find( '.tux-editor-insert-buttons' ),
+ $textarea = this.$editor.find( '.tux-textarea-translation' );
+
+ for ( i = 0; i < count; i++ ) {
+ // The dir and lang attributes must be set here,
+ // because the language of the insertables is the language
+ // of the source message and not of the translation.
+ // The direction may appear confusing, for example,
+ // in tvar strings, which would appear with the dollar sign
+ // on the wrong end.
+ $( '<button>' )
+ .prop( {
+ dir: $sourceMessage.prop( 'dir' ),
+ lang: $sourceMessage.prop( 'lang' )
+ } )
+ .addClass( 'insertable shortcut-activated' )
+ .text( insertables[i].display )
+ .data( 'iid', i )
+ .appendTo( $buttonArea );
+ }
+
+ $buttonArea.on( 'click', '.insertable', function () {
+ var data = insertables[$( this ).data( 'iid' )];
+ $textarea.textSelection( 'encapsulateSelection', {
+ pre: data.pre,
+ post: data.post
+ } );
+ $textarea.focus().trigger( 'input' );
+ } );
+ },
+
+ /**
+ * Loads and shows the translation helpers.
+ */
+ showTranslationHelpers: function () {
+ // API call to get translation suggestions from other languages
+ // callback should render suggestions to the editor's info column
+ var translateEditor = this,
+ api = new mw.Api();
+
+ api.get( {
+ action: 'translationaids',
+ title: this.message.title,
+ format: 'json'
+ } ).done( function ( result ) {
+ translateEditor.$editor.find( '.infocolumn .loading' ).remove();
+
+ if ( !result.helpers ) {
+ mw.log( 'API did not return any translation helpers.' );
+ return false;
+ }
+
+ translateEditor.showMessageDocumentation( result.helpers.documentation );
+ translateEditor.showUneditableDocumentation( result.helpers.gettext );
+ translateEditor.showAssistantLanguages( result.helpers.inotherlanguages );
+ translateEditor.showTranslationMemory( result.helpers.ttmserver );
+ translateEditor.showMachineTranslations( result.helpers.mt );
+ translateEditor.showSupportOptions( result.helpers.support );
+ translateEditor.addDefinitionDiff( result.helpers.definitiondiff );
+ translateEditor.addInsertables( result.helpers.insertables );
+
+ // Load the possible warnings as soon as possible, do not wait
+ // for the user to make changes. Otherwise users might try confirming
+ // translations which fail checks. Confirmation seems to work but
+ // the message will continue to appear outdated.
+ if ( translateEditor.message.properties &&
+ translateEditor.message.properties.status === 'fuzzy'
+ ) {
+ translateEditor.validateTranslation();
+ }
+
+ mw.translateHooks.run( 'showTranslationHelpers', result.helpers, translateEditor.$editor );
+
+ } ).fail( function ( errorCode, results ) {
+ mw.log( 'Error loading translation aids', errorCode, results );
+ } );
+ }
+ };
+
+ mw.translate = mw.translate || {};
+
+ mw.translate = $.extend( mw.translate, {
+ /**
+ * Get the documentation edit URL for a title
+ *
+ * @param {String} title Message title with namespace
+ * @return {String} URL for editing the documentation
+ */
+ getDocumentationEditURL: function ( title ) {
+ var descUri = new mw.Uri( window.location.href );
+
+ descUri.path = mw.config.get( 'wgScript' );
+ descUri.query = {
+ action: 'edit',
+ title: title + '/' + mw.config.get( 'wgTranslateDocumentationLanguageCode' )
+ };
+
+ return descUri.toString();
+ }
+ } );
+
+ // Extend the translate editor
+ $.extend( $.fn.translateeditor.Constructor.prototype, translateEditorHelpers );
+
+}( jQuery, mediaWiki ) );
diff --git a/MLEB/Translate/resources/js/ext.translate.editor.js b/MLEB/Translate/resources/js/ext.translate.editor.js
new file mode 100644
index 00000000..1a61c0d2
--- /dev/null
+++ b/MLEB/Translate/resources/js/ext.translate.editor.js
@@ -0,0 +1,1169 @@
+( function ( $, mw ) {
+ 'use strict';
+
+ /**
+ * TranslateEditor Plugin
+ * Prepare the translation editor UI for a translation unit (message).
+ * This is mainly used with the messagetable plugin,
+ * but it is independent of messagetable.
+ * Example usage:
+ *
+ * $( 'div.messageRow' ).translateeditor( {
+ * message: messageObject // Mandatory message object
+ * } );
+ *
+ * Assumptions: The jquery element to which translateeditor is applied will
+ * internally contain the editor's generated UI. So it is going to have the same width
+ * and inherited properies of the container.
+ * The container can mark the message item with class 'message'. This is not
+ * mandatory, but if found, when editor is opened the message item will be hidden
+ * and the editor will appear as if the message is replaced by the editor.
+ * See the UI of Translate messagetable for demo.
+ * @param {HTMLElement} element
+ * @param {Object} options
+ * @param {Function} [options.beforeSave] Callback to call when translation is going to be saved.
+ * @param {Function} [options.onReady] Callback to call when the editor is ready.
+ * @param {Function} [options.onSave] Callback to call when translation has been saved.
+ * @param {Function} [options.onSkip] Callback to call when a message is skipped.
+ * @param {Object} options.message Object as returned by messagecollection api.
+ * @param {TranslationApiStorage} [options.storage]
+ */
+ function TranslateEditor( element, options ) {
+ this.$editTrigger = $( element );
+ this.$editor = null;
+ this.options = options;
+ this.message = this.options.message;
+ this.$messageItem = this.$editTrigger.find( '.message' );
+ this.shown = false;
+ this.dirty = false;
+ this.saving = false;
+ this.expanded = false;
+ this.listen();
+ this.storage = this.options.storage || new mw.translate.TranslationApiStorage();
+ this.canDelete = mw.translate.canDelete();
+ this.delayValidation = delayer();
+ this.delayResize = delayer();
+ }
+
+ TranslateEditor.prototype = {
+
+ /**
+ * Initialize the plugin
+ */
+ init: function () {
+ // In case we have already created the editor earlier,
+ // don't add a new one. The existing one may have unsaved
+ // changes.
+ if ( this.$editor ) {
+ return;
+ }
+
+ this.render();
+ // onReady callback
+ if ( this.options.onReady ) {
+ this.options.onReady.call( this );
+ }
+ },
+
+ /**
+ * Render the editor UI
+ */
+ render: function () {
+ this.$editor = $( '<div>' )
+ .addClass( 'row tux-message-editor hide' )
+ .append(
+ this.prepareEditorColumn(),
+ this.prepareInfoColumn()
+ );
+
+ this.expanded = false;
+ this.$editTrigger.append( this.$editor );
+
+ if ( this.message.properties && this.message.properties.status === 'fuzzy' ) {
+ this.addWarning(
+ mw.message( 'tux-editor-outdated-warning' ).escaped(),
+ 'fuzzy'
+ );
+ }
+
+ this.showTranslationHelpers();
+ },
+
+ /**
+ * Mark the message as unsaved because of edits, can be resumed later
+ * @param {string} [highlightClass] Class for background highlighting
+ */
+ markUnsaved: function ( highlightClass ) {
+ var $tuxListStatus = this.$editTrigger.find( '.tux-list-status' );
+
+ highlightClass = highlightClass || 'tux-highlight';
+
+ $tuxListStatus.children( '.tux-status-unsaved' ).remove();
+ $tuxListStatus.children().addClass( 'hide' );
+ $( '<span>' )
+ .addClass( 'tux-status-unsaved ' + highlightClass )
+ .text( mw.msg( 'tux-status-unsaved' ) )
+ .appendTo( $tuxListStatus );
+ },
+
+ /**
+ * Mark the message as unsaved because of saving failure.
+ */
+ markUnsavedFailure: function () {
+ this.markUnsaved( 'tux-warning' );
+ },
+
+
+ /**
+ * Mark the message as no longer unsaved
+ */
+ markUnunsaved: function () {
+ var $tuxListStatus = this.$editTrigger.find( '.tux-list-status' );
+
+ $tuxListStatus.children( '.tux-status-unsaved' ).remove();
+ $tuxListStatus.children().removeClass( 'hide' );
+
+ this.dirty = false;
+ mw.translate.dirty = false;
+ },
+
+ /**
+ * Mark the message as being saved
+ */
+ markSaving: function () {
+ var $tuxListStatus = this.$editTrigger.find( '.tux-list-status' );
+
+ // Disable the save button
+ this.$editor.find( '.tux-editor-save-button' )
+ .prop( 'disabled', true );
+
+ // Add a "Saving" indicator
+ $tuxListStatus.empty();
+ $( '<span>' )
+ .addClass( 'tux-status-unsaved' )
+ .text( mw.msg( 'tux-status-saving' ) )
+ .appendTo( $tuxListStatus );
+ },
+
+ /**
+ * Mark the message as translated and successfully saved.
+ */
+ markTranslated: function () {
+ this.$editTrigger.find( '.tux-list-status' )
+ .empty()
+ .append( $( '<span>' )
+ .addClass( 'tux-status-translated' )
+ .text( mw.msg( 'tux-status-translated' ) )
+ );
+
+ this.$messageItem
+ .addClass( 'translated' )
+ .removeClass( 'untranslated' );
+
+ this.dirty = false;
+
+ if ( this.message.properties ) {
+ $( '.tux-action-bar .tux-statsbar' ).trigger(
+ 'change',
+ [ 'translated', this.message.properties.status ]
+ );
+ // TODO: Update any other statsbar for the same group in the page.
+ }
+ },
+
+ /**
+ * Save the translation
+ */
+ save: function () {
+ var translation,
+ translateEditor = this;
+
+ mw.translateHooks.run( 'beforeSubmit', translateEditor.$editor );
+ translation = translateEditor.$editor.find( '.editcolumn textarea' ).val();
+ translateEditor.saving = true;
+
+ // beforeSave callback
+ if ( translateEditor.options.beforeSave ) {
+ translateEditor.options.beforeSave( translation );
+ }
+
+ // For responsiveness and efficiency,
+ // immediately move to the next message.
+ translateEditor.next();
+
+ // Now the message definitely has a history,
+ // so make sure the history menu item is shown
+ translateEditor.$editor.find( '.message-tools-history' )
+ .removeClass( 'hide' );
+
+ // Show the delete menu item if the user can delete
+ if ( this.canDelete ) {
+ translateEditor.$editor.find( '.message-tools-delete' )
+ .removeClass( 'hide' );
+ }
+
+ this.storage.save(
+ translateEditor.message.title,
+ translation
+ ).done( function () {
+ // Update the translation
+ translateEditor.message.translation = translation;
+ translateEditor.onSaveSuccess();
+ } ).fail( function ( errorCode, response ) {
+ translateEditor.onSaveFail( response.error && response.error.info || 'Unknown error' );
+ if ( errorCode === 'assertuserfailed' ) {
+ window.alert( mw.msg( 'tux-session-expired' ) );
+ }
+ } );
+ },
+
+ /**
+ * Success handler for the translation saving.
+ */
+ onSaveSuccess: function () {
+ this.markTranslated();
+ this.$editTrigger.find( '.tux-list-translation' )
+ .text( this.message.translation );
+ this.saving = false;
+
+ // remove warnings if any.
+ this.removeWarning( 'diff' );
+ this.removeWarning( 'fuzzy' );
+ this.removeWarning( 'validation' );
+
+ $( '.tux-editor-clear-translated' )
+ .removeClass( 'hide' )
+ .prop( 'disabled', false );
+
+ // Save callback
+ if ( this.options.onSave ) {
+ this.options.onSave( this.message.translation );
+ }
+
+ mw.translate.dirty = false;
+ mw.translateHooks.run( 'afterSubmit', this.$editor );
+
+ if ( mw.track ) {
+ mw.track( 'ext.translate.event.translation', this.message );
+ }
+ },
+
+ /**
+ * Marks that there was a problem saving a translation.
+ * @param {string} error Strings of warnings to display.
+ */
+ onSaveFail: function ( error ) {
+ this.addWarning(
+ mw.msg( 'tux-editor-save-failed', error ),
+ 'translation-saving'
+ );
+ this.saving = false;
+ this.markUnsavedFailure();
+ },
+
+ /**
+ * Skip the current message.
+ * Record it to mark as hard.
+ */
+ skip: function () {
+ // Only record skips of fuzzy or untranslated as hards
+ // @TODO devise better algorithm
+ if ( this.$messageItem.is( '.fuzzy, .untranslated' ) ) {
+ // We can just ignore the result even if it fails
+ new mw.Api().post( {
+ action: 'hardmessages',
+ title: this.message.title,
+ token: mw.user.tokens.get( 'editToken' )
+ } );
+ }
+ },
+
+ /**
+ * Jump to the next translation editor row.
+ */
+ next: function () {
+ var $next = this.$editTrigger.next( '.tux-message' );
+
+ // Skip if the message is hidden. For example in a filter result.
+ if ( $next.length && $next.hasClass( 'hide' ) ) {
+ this.$editTrigger = $next;
+ return this.next();
+ }
+
+ // If this is the last message, just hide it
+ if ( !$next.length ) {
+ this.hide();
+
+ return;
+ }
+
+ $next.data( 'translateeditor' ).show();
+
+ // Scroll the page a little bit up, slowly.
+ if ( $( document ).height() -
+ ( $( window ).height() + window.pageYOffset + $next.height() ) > 0
+ ) {
+ $( 'html, body' ).stop().animate( {
+ scrollTop: $( '.tux-message-editor:visible' ).offset().top - 85
+ }, 500 );
+ }
+ },
+
+ /**
+ * Creates a menu element for the message tools.
+ *
+ * @param {string} className Used as the element's CSS class
+ * @param {Object} query Used as the query in the mw.Uri object
+ * @param {string} message The message of the label of the menu item
+ * @return {jQuery} The new menu item element
+ */
+ createMessageToolsItem: function ( className, query, message ) {
+ var uri = new mw.Uri();
+
+ uri.path = mw.config.get( 'wgScript' );
+ uri.query = query;
+
+ return $( '<li>' )
+ .addClass( className )
+ .append( $( '<a>' )
+ .attr( {
+ href: uri.toString(),
+ target: '_blank'
+ } )
+ .text( mw.msg( message ) )
+ );
+ },
+
+ /**
+ * Creates an element with a dropdown menu including
+ * tools for the translators.
+ *
+ * @return {jQuery} The new message tools menu element
+ */
+ createMessageTools: function () {
+ var $historyItem, $deleteItem, $translationsItem;
+
+ $historyItem = this.createMessageToolsItem(
+ 'message-tools-history',
+ {
+ title: this.message.title,
+ action: 'history'
+ },
+ 'tux-editor-message-tools-history'
+ );
+
+ $deleteItem = this.createMessageToolsItem(
+ 'message-tools-delete',
+ {
+ title: this.message.title,
+ action: 'delete'
+ },
+ 'tux-editor-message-tools-delete'
+ );
+
+ // Hide these links if the translation doesn't actually exist.
+ // They will be shown when a translation will be created.
+ if ( this.message.translation === null ) {
+ $historyItem.addClass( 'hide' );
+ $deleteItem.addClass( 'hide' );
+ } else if ( !this.canDelete ) {
+ $deleteItem.addClass( 'hide' );
+ }
+
+ // A link to Special:Translations,
+ // with translations of this message to other languages
+ $translationsItem = this.createMessageToolsItem(
+ 'message-tools-translations',
+ {
+ title: 'Special:Translations',
+ message: this.message.title
+ },
+ 'tux-editor-message-tools-translations'
+ );
+
+ return $( '<ul>' )
+ .addClass( 'tux-dropdown-menu tux-message-tools-menu hide' )
+ .append( $historyItem, $deleteItem, $translationsItem );
+ },
+
+ prepareEditorColumn: function () {
+ var translateEditor = this,
+ sourceString,
+ originalTranslation,
+ $editorColumn,
+ $messageKeyLabel,
+ $moreWarningsTab,
+ $warnings,
+ $warningsBlock,
+ $editAreaBlock,
+ $textarea,
+ $controlButtonBlock,
+ $editingButtonBlock,
+ $pasteOriginalButton,
+ $discardChangesButton = $( [] ),
+ $saveButton,
+ $requestRight,
+ $skipButton,
+ $cancelButton,
+ $sourceString,
+ $closeIcon,
+ $layoutActions,
+ $infoToggleIcon,
+ $messageList,
+ targetLangAttrib, targetLangDir, targetLangCode,
+ $messageTools = translateEditor.createMessageTools(),
+ canTranslate = mw.translate.canTranslate();
+
+ $editorColumn = $( '<div>' )
+ .addClass( 'seven columns editcolumn' );
+
+ $messageKeyLabel = $( '<div>' )
+ .addClass( 'ten columns messagekey' )
+ .text( this.message.title )
+ .append(
+ $( '<span>' ).addClass( 'caret' ),
+ $messageTools
+ )
+ .on( 'click', function ( e ) {
+ $messageTools.toggleClass( 'hide' );
+ e.stopPropagation();
+ } );
+
+ $closeIcon = $( '<span>' )
+ .addClass( 'one column close' )
+ .attr( 'title', mw.msg( 'tux-editor-close-tooltip' ) )
+ .on( 'click', function ( e ) {
+ translateEditor.hide();
+ e.stopPropagation();
+ } );
+
+ $infoToggleIcon = $( '<span>' )
+ // Initially the editor column is contracted,
+ // so show the expand button first
+ .addClass( 'one column editor-info-toggle editor-expand' )
+ .attr( 'title', mw.msg( 'tux-editor-expand-tooltip' ) )
+ .on( 'click', function ( e ) {
+ translateEditor.infoToggle( $( this ) );
+ e.stopPropagation();
+ } );
+
+ $layoutActions = $( '<div>' )
+ .addClass( 'two columns layout-actions' )
+ .append( $closeIcon, $infoToggleIcon );
+
+ $editorColumn.append( $( '<div>' )
+ .addClass( 'row' )
+ .append( $messageKeyLabel, $layoutActions )
+ );
+
+ $messageList = $( '.tux-messagelist' );
+ originalTranslation = this.message.translation;
+ sourceString = this.message.definition;
+ $sourceString = $( '<span>' )
+ .addClass( 'eleven column sourcemessage' )
+ .attr( {
+ lang: $messageList.data( 'sourcelangcode' ),
+ dir: $messageList.data( 'sourcelangdir' )
+ } )
+ .text( sourceString );
+
+ // Adjust the font size for the message string based on the length
+ if ( sourceString.length > 100 && sourceString.length < 200 ) {
+ $sourceString.addClass( 'long' );
+ }
+
+ if ( sourceString.length > 200 ) {
+ $sourceString.addClass( 'longer' );
+ }
+
+ $editorColumn.append( $( '<div>' )
+ .addClass( 'row' )
+ .append( $sourceString )
+ );
+
+ $warnings = $( '<div>' )
+ .addClass( 'tux-warning hide' );
+
+ $moreWarningsTab = $( '<div>' )
+ .addClass( 'tux-more-warnings hide' )
+ .on( 'click', function () {
+ var $this = $( this ),
+ $moreWarnings = $warnings.children(),
+ lastWarningIndex = $moreWarnings.length - 1;
+
+ // If the warning list is not open only one warning is shown
+ if ( $this.hasClass( 'open' ) ) {
+ $moreWarnings.each( function ( index, element ) {
+ // The first element must always be shown
+ if ( index ) {
+ $( element ).addClass( 'hide' );
+ }
+ } );
+
+ $this
+ .removeClass( 'open' )
+ .text( mw.msg( 'tux-warnings-more', lastWarningIndex ) );
+ } else {
+ $moreWarnings.each( function ( index, element ) {
+ // The first element must always be shown
+ if ( index ) {
+ $( element ).removeClass( 'hide' );
+ }
+ } );
+
+ $this
+ .addClass( 'open' )
+ .text( mw.msg( 'tux-warnings-hide' ) );
+ }
+ } );
+
+ targetLangCode = $messageList.data( 'targetlangcode' );
+ if ( targetLangCode === mw.config.get( 'wgTranslateDocumentationLanguageCode' ) ) {
+ targetLangAttrib = mw.config.get( 'wgContentLanguage' );
+ targetLangDir = $.uls.data.getDir( targetLangAttrib );
+ } else {
+ targetLangAttrib = targetLangCode;
+ targetLangDir = $messageList.data( 'targetlangdir' );
+ }
+
+ $textarea = $( '<textarea>' )
+ .addClass( 'tux-textarea-translation' )
+ .attr( {
+ lang: targetLangAttrib,
+ dir: targetLangDir
+ } )
+ .val( this.message.translation || '' );
+
+ if ( mw.translate.isPlaceholderSupported( $textarea ) ) {
+ $textarea.prop( 'placeholder', mw.msg( 'tux-editor-placeholder' ) );
+ }
+
+ // The extra newlines is supposed to leave enough space for the
+ // insertion buttons. Seems to work as long as all the buttons
+ // are only in one line.
+ $textarea.autosize( {append: '\n\n\n' } );
+
+ // Shortcuts for various insertable things
+ $textarea.on( 'keyup keydown', function ( e ) {
+ var index, info, direction;
+
+ if ( e.type === 'keydown' && e.altKey === true ) {
+ // Up and down arrows
+ if ( e.keyCode === 38 || e.keyCode === 40 ) {
+ direction = e.keyCode === 40 ? 1 : -1;
+ info = translateEditor.$editor.find( '.infocolumn' );
+ info.scrollTop( info.scrollTop() + 100 * direction );
+ translateEditor.showShortcuts();
+ }
+ }
+
+ // Move zero to last
+ index = e.keyCode - 49;
+ if ( index === -1 ) {
+ index = 9;
+ }
+
+ // 0..9 ~ 48..57
+ if (
+ e.type === 'keydown' &&
+ e.altKey === true &&
+ e.ctrlKey === false &&
+ e.shiftKey === false &&
+ index >= 0 && index < 10
+ ) {
+ e.preventDefault();
+ e.stopPropagation();
+ translateEditor.$editor.find( '.shortcut-activated:visible' ).eq( index ).trigger( 'click' );
+ // Update numbers and locations after trigger should be completed
+ window.setTimeout( function() { translateEditor.showShortcuts(); }, 100 );
+ }
+
+ if ( e.which === 18 && e.type === 'keyup' ) {
+ translateEditor.hideShortcuts();
+ } else if ( e.which === 18 && e.type === 'keydown' ) {
+ translateEditor.showShortcuts();
+ }
+ } );
+
+ $textarea.on( 'textchange', function () {
+ var $textarea = $( this ),
+ $saveButton = translateEditor.$editor.find( '.tux-editor-save-button' ),
+ $pasteSourceButton = translateEditor.$editor.find( '.tux-editor-paste-original-button' ),
+ original = translateEditor.message.translation || '',
+ current = $textarea.val() || '';
+
+ if ( original !== '' ) {
+ $discardChangesButton.removeClass( 'hide' );
+ }
+
+ /* Avoid Unsaved marking when translated message is not changed in content.
+ * - translateEditor.dirty: internal book keeping
+ * - mw.translate.dirty: "you have unchanged edits" warning
+ */
+ if ( original === current ) {
+ translateEditor.markUnunsaved();
+ } else {
+ translateEditor.dirty = true;
+ mw.translate.dirty = true;
+ }
+
+ $saveButton.text( mw.msg( 'tux-editor-save-button-label' ) );
+ // When there is content in the editor enable the button.
+ // But do not enable when some saving is not finished yet.
+ if ( $.trim( current ) && !translateEditor.saving ) {
+ $pasteSourceButton.addClass( 'hide' );
+ $saveButton.prop( 'disabled', false );
+ } else {
+ $saveButton.prop( 'disabled', true );
+ $pasteSourceButton.removeClass( 'hide' );
+ }
+
+ translateEditor.delayValidation( function () {
+ translateEditor.validateTranslation();
+ }, 500 );
+ } );
+
+ $warningsBlock = $( '<div>' )
+ .addClass( 'tux-warnings-block' )
+ .append( $moreWarningsTab, $warnings );
+
+ $editAreaBlock = $( '<div>' )
+ .addClass( 'row tux-editor-editarea-block' )
+ .append( $( '<div>' )
+ .addClass( 'editarea eleven columns' )
+ .append( $warningsBlock, $textarea )
+ );
+
+ $editorColumn.append( $editAreaBlock );
+
+ if ( canTranslate ) {
+ $pasteOriginalButton = $( '<button>' )
+ .addClass( 'tux-editor-paste-original-button' )
+ .text( mw.msg( 'tux-editor-paste-original-button-label' ) )
+ .on( 'click', function () {
+ $textarea
+ .focus()
+ .val( sourceString )
+ .trigger( 'input' );
+
+ $pasteOriginalButton.addClass( 'hide' );
+ } );
+
+ if ( originalTranslation !== null ) {
+ $discardChangesButton = $( '<button>' )
+ .addClass( 'tux-editor-discard-changes-button hide' ) // Initially hidden
+ .text( mw.msg( 'tux-editor-discard-changes-button-label' ) )
+ .on( 'click', function () {
+ // Restore the translation
+ $textarea
+ .focus()
+ .val( originalTranslation );
+
+ // and go back to hiding.
+ $discardChangesButton.addClass( 'hide' );
+
+ // There's nothing new to save
+ $saveButton.prop( 'disabled', true );
+
+ translateEditor.markUnunsaved();
+ } );
+ }
+
+ if ( this.message.translation ) {
+ $pasteOriginalButton.addClass( 'hide' );
+ }
+
+ $editingButtonBlock = $( '<div>' )
+ .addClass( 'ten columns tux-editor-insert-buttons' )
+ .append(
+ $pasteOriginalButton,
+ $discardChangesButton
+ );
+
+ $requestRight = $( [] );
+
+ $saveButton = $( '<button>' )
+ .prop( 'disabled', true )
+ .addClass( 'blue button tux-editor-save-button' )
+ .text( mw.msg( 'tux-editor-save-button-label' ) )
+ .on( 'click', function ( e ) {
+ translateEditor.save();
+ e.stopPropagation();
+ } );
+
+ // When the user opens an outdated translation, the main button should be enabled
+ // and display a "confirm translation" label.
+ if ( this.$messageItem.hasClass( 'fuzzy' ) ) {
+ $saveButton
+ .prop( 'disabled', false )
+ .text( mw.msg( 'tux-editor-confirm-button-label' ) );
+ }
+ } else {
+ $editingButtonBlock = $( [] );
+
+ $requestRight = $( '<span>' )
+ .addClass( 'tux-editor-request-right' )
+ .text( mw.msg( 'translate-edit-nopermission' ) )
+ .append( $( '<a>' )
+ .text( mw.msg( 'translate-edit-askpermission' ) )
+ .addClass( 'tux-editor-ask-permission' )
+ .attr( {
+ href: mw.util.getUrl(
+ mw.config.get( 'wgTranslateUseSandbox' )
+ ? 'Special:TranslationStash'
+ : mw.config.get( 'wgTranslatePermissionUrl' )
+ )
+ } )
+ );
+
+ // Disable the text area if user has no translation rights.
+ // Use readonly to allow copy-pasting (except for placeholders)
+ $textarea.prop( 'readonly', true );
+
+ $saveButton = $( [] );
+ }
+
+ $skipButton = $( '<button>' )
+ .addClass( 'button tux-editor-skip-button' )
+ .text( mw.msg( 'tux-editor-skip-button-label' ) )
+ .on( 'click', function ( e ) {
+ translateEditor.skip();
+ translateEditor.next();
+
+ if ( translateEditor.options.onSkip ) {
+ translateEditor.options.onSkip.call( translateEditor );
+ }
+
+ e.stopPropagation();
+ } );
+
+ // This appears instead of "Skip" on the last message on the page
+ $cancelButton = $( '<button>' )
+ .addClass( 'button tux-editor-cancel-button' )
+ .text( mw.msg( 'tux-editor-cancel-button-label' ) )
+ .on( 'click', function ( e ) {
+ translateEditor.skip();
+ translateEditor.hide();
+
+ e.stopPropagation();
+ } );
+
+ $controlButtonBlock = $( '<div>' )
+ .addClass( 'twelve columns tux-editor-control-buttons' )
+ .append( $requestRight, $saveButton, $skipButton, $cancelButton );
+
+ $editorColumn.append( $( '<div>' )
+ .addClass( 'row tux-editor-actions-block' )
+ .append( $editingButtonBlock, $controlButtonBlock )
+ );
+
+ if ( canTranslate ) {
+ $editorColumn.append( $( '<div>' )
+ .addClass( 'row shortcutinfo' )
+ .text( mw.msg( 'tux-editor-shortcut-info',
+ ( mw.util.tooltipAccessKeyPrefix + 's' ).toUpperCase(),
+ ( mw.util.tooltipAccessKeyPrefix + 'd' ).toUpperCase(),
+ 'ALT' )
+ )
+ );
+ }
+
+ return $editorColumn;
+ },
+
+ /**
+ * Validate the current translation using the API
+ * and show the warnings if necessary.
+ */
+ validateTranslation: function () {
+ var translateEditor = this,
+ url = new mw.Uri( mw.config.get( 'wgScript' ) ),
+ $textarea = translateEditor.$editor.find( '.tux-textarea-translation' );
+
+ // TODO: We need a better API for this
+ url.extend( {
+ title: 'Special:Translate/editpage',
+ suggestions: 'checks',
+ page: translateEditor.message.title,
+ loadgroup: translateEditor.message.group
+ } );
+
+ $.post( url.toString(), {
+ translation: $textarea.val()
+ }, function ( data ) {
+ var warningIndex,
+ warnings = JSON.parse( data );
+
+ translateEditor.removeWarning( 'validation' );
+ if ( !warnings || !warnings.length ) {
+ return;
+ }
+
+ // Remove useless fuzzy warning if we have more details
+ translateEditor.removeWarning( 'fuzzy' );
+
+ // Disable confirm translation button, since fuzzy translations
+ // cannot be confirmed. The check for dirty state can be removed
+ // to prevent translations with warnings.
+ if ( !translateEditor.dirty ) {
+ translateEditor.$editor.find( '.tux-editor-save-button' )
+ .prop( 'disabled', true );
+ }
+
+ for ( warningIndex = 0; warningIndex < warnings.length; warningIndex++ ) {
+ translateEditor.addWarning( warnings[warningIndex], 'validation' );
+ }
+ } );
+ },
+
+ /**
+ * Remove all warning of given type
+ * @param type
+ */
+ removeWarning: function ( type ) {
+ var $tuxWarning = this.$editor.find( '.tux-warning' );
+
+ $tuxWarning.find( '.' + type ).remove();
+ if ( !$tuxWarning.children().length ) {
+ this.$editor.find( '.tux-more-warnings' ).addClass( 'hide' );
+ }
+ },
+
+ /**
+ * Displays the supplied warning from the bottom up near the translation edit area.
+ *
+ * @param {String} warning used as html for the warning display
+ * @param {String} type used to group the warnings.eg: validation, diff, error
+ * @return {jQuery} the new warning element
+ */
+ addWarning: function ( warning, type ) {
+ var warningCount,
+ $warnings = this.$editor.find( '.tux-warning' ),
+ $moreWarningsTab = this.$editor.find( '.tux-more-warnings' ),
+ $newWarning = $( '<div>' )
+ .addClass( 'tux-warning-message hide ' + type )
+ .html( warning );
+
+ $warnings
+ .removeClass( 'hide' )
+ .append( $newWarning );
+
+ warningCount = $warnings.find( '.tux-warning-message' ).length;
+
+ $warnings.find( '.tux-warning-message:first' ).removeClass( 'hide' );
+
+ if ( warningCount > 1 ) {
+ $moreWarningsTab
+ .text( mw.msg( 'tux-warnings-more', warningCount - 1 ) )
+ .removeClass( 'hide' );
+ } else {
+ $moreWarningsTab.addClass( 'hide' );
+ }
+
+ return $newWarning;
+ },
+
+ prepareInfoColumn: function () {
+ var $messageDescEditor, $messageDescTextarea,
+ $messageDescSaveButton, $messageDescCancelButton,
+ $messageDescViewer,
+ $infoColumn = $( '<div>' ).addClass( 'infocolumn' ),
+ translateEditor = this;
+
+ $infoColumn.append( $( '<div>' )
+ .addClass( 'row loading' )
+ .text( mw.msg( 'tux-editor-loading' ) )
+ );
+
+ if ( mw.config.get( 'wgTranslateDocumentationLanguageCode' ) ) {
+ $messageDescSaveButton = $( '<button>' )
+ .addClass( 'blue button tux-editor-savedoc-button' )
+ .prop( 'disabled', true )
+ .text( mw.msg( 'tux-editor-doc-editor-save' ) )
+ .on( 'click', function () {
+ translateEditor.saveDocumentation()
+ .done( function () {
+ var $descEditLink = $messageDescViewer.find( '.message-desc-edit' );
+ $descEditLink.text( mw.msg( 'tux-editor-edit-desc' ) );
+ } );
+ } );
+
+ $messageDescCancelButton = $( '<button>' )
+ .addClass( 'button tux-editor-skipdoc-button' )
+ .text( mw.msg( 'tux-editor-doc-editor-cancel' ) )
+ .on( 'click', function () {
+ translateEditor.hideDocumentationEditor();
+ } );
+
+ $messageDescTextarea = $( '<textarea>' )
+ .addClass( 'tux-textarea-documentation' )
+ .on( 'textchange', function () {
+ $messageDescSaveButton.prop( 'disabled', false );
+ } );
+
+ if ( mw.translate.isPlaceholderSupported( $messageDescTextarea ) ) {
+ $messageDescTextarea.prop( 'placeholder', mw.msg( 'tux-editor-doc-editor-placeholder' ) );
+ }
+
+ $messageDescEditor = $( '<div>' )
+ .addClass( 'row message-desc-editor hide' )
+ .append(
+ $messageDescTextarea,
+ $( '<div>' )
+ .addClass( 'row' )
+ .append(
+ $messageDescSaveButton,
+ $messageDescCancelButton
+ )
+ );
+
+ $messageDescViewer = $( '<div>' )
+ .addClass( 'message-desc-viewer hide' )
+ .append(
+ $( '<div>' )
+ .addClass( 'row message-desc' ),
+ $( '<div>' )
+ .addClass( 'row message-desc-control' )
+ .append( $( '<a>' )
+ .attr( {
+ href: mw.translate.getDocumentationEditURL(
+ this.message.title.replace( /\/[a-z\-]+$/, '' )
+ ),
+ target: '_blank'
+ } )
+ .addClass( 'message-desc-edit' )
+ .on( 'click', $.proxy( this.showDocumentationEditor, this ) )
+ )
+ );
+
+ if ( !mw.translate.canTranslate() ) {
+ $messageDescViewer.find( '.message-desc-control' ).addClass( 'hide' );
+ }
+
+ $infoColumn.append(
+ $messageDescEditor,
+ $messageDescViewer
+ );
+ }
+
+ $infoColumn.append( $( '<div>' )
+ .addClass( 'row uneditable-documentation hide' )
+ );
+
+ $infoColumn.append( $( '<div>' )
+ .addClass( 'row tm-suggestions-title hide' )
+ .text( mw.msg( 'tux-editor-suggestions-title' ) )
+ );
+
+ $infoColumn.append( $( '<div>' )
+ .addClass( 'row in-other-languages-title hide' )
+ .text( mw.msg( 'tux-editor-in-other-languages' ) )
+ );
+
+ // The actual href is set when translationhelpers are loaded
+ $infoColumn.append( $( '<div>' )
+ .addClass( 'row help hide' )
+ .append(
+ $( '<span>' )
+ .text( mw.msg( 'tux-editor-need-more-help' ) ),
+ $( '<a>' )
+ .attr( {
+ href: '#',
+ target: '_blank'
+ } )
+ .text( mw.msg( 'tux-editor-ask-help' ) )
+ )
+ );
+
+ return $( '<div>' )
+ .addClass( 'five columns infocolumn-block' )
+ .append(
+ $( '<span>' ).addClass( 'caret' ),
+ $infoColumn
+ );
+ },
+
+ show: function () {
+ var $next, $textarea;
+
+ if ( !this.$editor ) {
+ this.init();
+ }
+
+ $textarea = this.$editor.find( '.editcolumn textarea' );
+ // Hide all other open editors in the page
+ $( '.tux-message.open' ).each( function () {
+ $( this ).data( 'translateeditor' ).hide();
+ } );
+
+ // The access keys need to be shifted to the editor currently active
+ $( '.tux-editor-save-button, .tux-editor-save-button' ).removeAttr( 'accesskey' );
+ this.$editor.find( '.tux-editor-save-button' ).attr( 'accesskey', 's' );
+ this.$editor.find( '.tux-editor-skip-button' ).attr( 'accesskey', 'd' );
+ // @todo access key for the cancel button
+
+ this.$messageItem.addClass( 'hide' );
+ this.$editor.removeClass( 'hide' );
+ $textarea.focus();
+
+ // Apparently there is still something going on that affects the
+ // layout of the text area after this function. Use very small
+ // delay to have it settle down and have correct results. Otherwise
+ // there will be a size change once the first letter is typed.
+ this.delayResize( function() {
+ $textarea.trigger( 'autosize.resizeIncludeStyle' );
+ }, 1 );
+
+ this.shown = true;
+ this.$editTrigger.addClass( 'open' );
+
+ // don't waste time, get ready with next message
+ $next = this.$editTrigger.next( '.tux-message' );
+
+ if ( $next.length ) {
+ $next.data( 'translateeditor' ).init();
+ }
+
+ return false;
+ },
+
+ hide: function () {
+ // If the user has made changes, make sure they are either
+ // in process of being saved or highlighted as unsaved.
+ if ( this.dirty ) {
+ if ( this.saving ) {
+ this.markSaving();
+ } else {
+ this.markUnsaved();
+ }
+ }
+
+ if ( this.$editor ) {
+ this.$editor.addClass( 'hide' );
+ }
+
+ this.hideShortcuts();
+ this.$editTrigger.removeClass( 'open' );
+ this.$messageItem.removeClass( 'hide' );
+ this.shown = false;
+
+ return false;
+ },
+
+ infoToggle: function ( toggleIcon ) {
+ if ( this.expanded ) {
+ this.contract( toggleIcon );
+ } else {
+ this.expand( toggleIcon );
+ }
+ },
+
+ contract: function ( toggleIcon ) {
+ // Change the icon image
+ toggleIcon
+ .removeClass( 'editor-contract' )
+ .addClass( 'editor-expand' )
+ .attr( 'title', mw.msg( 'tux-editor-expand-tooltip' ) );
+
+ this.$editor.find( '.infocolumn-block' )
+ .removeClass( 'hide' );
+ this.$editor.find( '.editcolumn' )
+ .removeClass( 'twelve' )
+ .addClass( 'seven' );
+
+ this.expanded = false;
+ },
+
+ expand: function ( toggleIcon ) {
+ // Change the icon image
+ toggleIcon
+ .removeClass( 'editor-expand' )
+ .addClass( 'editor-contract' )
+ .attr( 'title', mw.msg( 'tux-editor-collapse-tooltip' ) );
+
+ this.$editor.find( '.infocolumn-block' )
+ .addClass( 'hide' );
+ this.$editor.find( '.editcolumn' )
+ .removeClass( 'seven' )
+ .addClass( 'twelve' );
+
+ this.expanded = true;
+ },
+
+ /**
+ * Adds the diff between old and current definitions to the view.
+ * @param {object} definitiondiff A definitiondiff object as returned by API.
+ */
+ addDefinitionDiff: function ( definitiondiff ) {
+ var $trigger;
+
+ if ( !definitiondiff || definitiondiff.error ) {
+ mw.log( 'Error loading translation diff ' + definitiondiff && definitiondiff.error );
+ return;
+ }
+
+ // Load the diff styles
+ mw.loader.load( 'mediawiki.action.history.diff', undefined, true );
+
+ $trigger = $( '<span>' )
+ .addClass( 'show-diff-link' )
+ .text( mw.msg( 'tux-editor-outdated-warning-diff-link' ) )
+ .on( 'click', function () {
+ $( this ).parent().html( definitiondiff.html );
+ } );
+
+ this.removeWarning( 'fuzzy' );
+ this.addWarning(
+ mw.message( 'tux-editor-outdated-warning' ).escaped(),
+ 'diff'
+ ).append( $trigger );
+ },
+
+ /**
+ * Attach event listeners
+ */
+ listen: function () {
+ var translateEditor = this;
+
+ this.$editTrigger.find( '.tux-message-item' ).click( function () {
+ translateEditor.show();
+
+ return false;
+ } );
+ }
+ };
+
+ /*
+ * translateeditor PLUGIN DEFINITION
+ */
+
+ $.fn.translateeditor = function ( options ) {
+ return this.each( function () {
+ var $this = $( this ),
+ data = $this.data( 'translateeditor' );
+
+ if ( !data ) {
+ $this.data( 'translateeditor',
+ ( data = new TranslateEditor( this, options ) )
+ );
+ }
+
+ if ( typeof options === 'string' ) {
+ data[options].call( $this );
+ }
+ } );
+ };
+
+ $.fn.translateeditor.Constructor = TranslateEditor;
+
+ function delayer() {
+ return (function () {
+ var timer = 0;
+
+ return function ( callback, milliseconds ) {
+ clearTimeout( timer );
+ timer = setTimeout( callback, milliseconds );
+ };
+ } () );
+ }
+}( jQuery, mediaWiki ) );
diff --git a/MLEB/Translate/resources/js/ext.translate.editor.shortcuts.js b/MLEB/Translate/resources/js/ext.translate.editor.shortcuts.js
new file mode 100644
index 00000000..e68b6e3a
--- /dev/null
+++ b/MLEB/Translate/resources/js/ext.translate.editor.shortcuts.js
@@ -0,0 +1,68 @@
+/*
+ * Translate editor shortcuts
+ */
+( function ( $ ) {
+ 'use strict';
+
+ var translateEditorShortcuts = {
+ showShortcuts: function () {
+ var editorOffset, minTop, maxTop, maxLeft, middle, rtl;
+
+ // Any better way?
+ rtl = $( 'body' ).is( '.rtl' );
+
+ editorOffset = this.$editor.offset();
+ minTop = editorOffset.top;
+ maxTop = minTop + this.$editor.outerHeight();
+ middle = minTop + ( maxTop - minTop ) / 2;
+
+ maxLeft = editorOffset.left;
+ if ( !rtl ) {
+ maxLeft += this.$editor.outerWidth();
+ }
+
+ this.hideShortcuts();
+
+ // For scrolling up and down
+ $( '<div>' )
+ .text( '↑' )
+ .offset( { top: middle - 10, left: maxLeft } )
+ .addClass( 'shortcut-popup' )
+ .appendTo( 'body' );
+
+ $( '<div>' )
+ .text( '↓' )
+ .offset( { top: middle + 10, left: maxLeft } )
+ .addClass( 'shortcut-popup' )
+ .appendTo( 'body' );
+
+ this.$editor.find( '.shortcut-activated:visible' ).each( function ( index ) {
+ var $this = $( this ),
+ offset = $this.offset();
+
+ if ( rtl ) {
+ offset.left += $this.outerWidth();
+ }
+
+ // Let's not have numbers appear outside the editor over other content
+ if ( offset.top > maxTop || offset.top < minTop ) {
+ return;
+ }
+
+ $( '<div>' )
+ .text( index + 1 )
+ .offset( offset )
+ .addClass( 'shortcut-popup' )
+ .appendTo( 'body' );
+ } );
+ },
+
+ hideShortcuts: function () {
+ $( '.shortcut-popup' ).remove();
+ }
+ };
+
+ // Extend the translate editor
+ $.extend( $.fn.translateeditor.Constructor.prototype, translateEditorShortcuts );
+
+}( jQuery, mediaWiki ) );
diff --git a/MLEB/Translate/resources/js/ext.translate.groupselector.js b/MLEB/Translate/resources/js/ext.translate.groupselector.js
new file mode 100644
index 00000000..ab8fbbb8
--- /dev/null
+++ b/MLEB/Translate/resources/js/ext.translate.groupselector.js
@@ -0,0 +1,627 @@
+( function ( $, mw ) {
+ 'use strict';
+
+ var groupsLoader, recentGroupsLoader, delay;
+
+ /**
+ * options
+ * - position: accepts same values as jquery.ui.position
+ * - onSelect: callback with message group id when selected
+ * - language: language for statistics.
+ */
+ function TranslateMessageGroupSelector( element, options ) {
+ this.$trigger = $( element );
+ this.$menu = null;
+ this.$search = null;
+ this.$list = null;
+ this.$loader = null;
+
+ this.parentGroupId = null;
+ this.options = $.extend( true, {}, $.fn.msggroupselector.defaults, options );
+ // Store the explicitly given options, which can be passed to subgroup
+ // selectors.
+ this.customOptions = options;
+ this.flatGroupList = null;
+
+ this.init();
+ }
+
+ TranslateMessageGroupSelector.prototype = {
+ constructor: TranslateMessageGroupSelector,
+
+ /**
+ * Initialize the plugin
+ */
+ init: function () {
+ this.parentGroupId = this.$trigger.data( 'msggroupid' );
+ this.prepareSelectorMenu();
+ this.listen();
+ },
+
+ /**
+ * Prepare the selector menu rendering
+ */
+ prepareSelectorMenu: function () {
+ var $groupTitle,
+ $listFilters,
+ $listFiltersGroup,
+ $search,
+ $searchIcon,
+ $searchGroup;
+
+ this.$menu = $( '<div>' )
+ .addClass( 'tux-groupselector' )
+ .addClass( 'grid' );
+
+ $groupTitle = $( '<div>' )
+ .addClass( 'row' )
+ .append(
+ $( '<h3>' )
+ .addClass( 'tux-groupselector__title' )
+ .addClass( 'ten columns' )
+ .text( mw.msg( 'translate-msggroupselector-projects' ) )
+ );
+
+ $searchIcon = $( '<div>' )
+ .addClass( 'two columns tux-groupselector__filter__search__icon' );
+
+ this.$search = $( '<input>' )
+ .prop( 'type', 'text' )
+ .addClass( 'tux-groupselector__filter__search__input' );
+
+ if ( mw.translate.isPlaceholderSupported( this.$search ) ) {
+ this.$search.prop( 'placeholder', mw.msg( 'translate-msggroupselector-search-placeholder' ) );
+ }
+
+ $search = $( '<div>' )
+ .addClass( 'ten columns' )
+ .append( this.$search );
+
+ $listFilters = $( '<div>' )
+ .addClass( 'tux-groupselector__filter__tabs' )
+ .addClass( 'six columns' )
+ .append(
+ $( '<div>' )
+ .addClass( 'tux-grouptab tux-grouptab--all tux-grouptab--selected' )
+ .text( mw.msg( 'translate-msggroupselector-search-all' ) ),
+ $( '<div>' )
+ .addClass( 'tux-grouptab tux-grouptab--recent' )
+ .text( mw.msg( 'translate-msggroupselector-search-recent' ) )
+ );
+
+ $searchGroup = $( '<div>' )
+ .addClass( 'tux-groupselector__filter__search' )
+ .addClass( 'six columns' )
+ .append( $searchIcon, $search );
+
+ $listFiltersGroup = $( '<div>' )
+ .addClass( 'tux-groupselector__filter' )
+ .addClass( 'row' )
+ .append( $listFilters, $searchGroup );
+
+ this.$list = $( '<div>' )
+ .addClass( 'tux-grouplist' )
+ .addClass( 'row' );
+
+ this.$loader = $( '<div>' )
+ .addClass( 'tux-loading-indicator tux-loading-indicator--centered' );
+
+ this.$menu.append( $groupTitle, $listFiltersGroup, this.$loader, this.$list );
+
+ $( 'body' ).append( this.$menu );
+ },
+
+ /**
+ * Show the selector
+ */
+ show: function () {
+ // Hide all other open menus
+ $( '.tux-groupselector.open' )
+ .removeClass( 'open' )
+ .hide();
+ this.$menu.addClass( 'open' ).show();
+ this.position();
+ // Place the focus in the message group search box.
+ this.$search.focus();
+ // Start loading the groups, but assess the situation again after
+ // they are loaded, in case user has made further interactions.
+ this.loadGroups().done( $.proxy( this.showList, this ) );
+ // Hide the selector panel when clicking outside of it
+ $( 'html' ).one( 'click', $.proxy( this.hide, this ) );
+ },
+
+ /**
+ * Hide the selector
+ */
+ hide: function () {
+ this.$menu.hide().removeClass( 'open' );
+ },
+
+ /**
+ * Toggle the menu open/close state
+ */
+ toggle: function () {
+ if ( this.$menu.hasClass( 'open' ) ) {
+ this.hide();
+ } else {
+ this.show();
+ }
+ },
+
+ /**
+ * Attach event listeners
+ */
+ listen: function () {
+ var $tabs,
+ groupSelector = this;
+
+ groupSelector.$trigger.on( 'click', function ( e ) {
+ groupSelector.toggle();
+
+ e.preventDefault();
+ e.stopPropagation();
+ } );
+
+ groupSelector.$menu.on( 'click', function ( e ) {
+ e.preventDefault();
+ e.stopPropagation();
+ } );
+
+ // Handle click on row item. This selects the group, and in case it has
+ // subgroups, also opens a new menu to show them.
+ groupSelector.$menu.on( 'click', '.tux-grouplist__item', function () {
+ var $newLink,
+ messageGroup = $( this ).data( 'msggroup' );
+
+ groupSelector.hide();
+
+ groupSelector.$trigger
+ .removeClass( 'tail' )
+ .nextAll().remove();
+
+ groupSelector.$trigger.addClass( 'expanded' );
+ // FIXME In future, if we are going to have multiple groupselectors per page
+ // this will fail.
+ $( '.tux-breadcrumb .tail' ).remove();
+
+ $newLink = $( '<span>' )
+ .addClass( 'grouptitle grouplink tail' )
+ .text( messageGroup.label );
+ $( '.tux-breadcrumb .grouplink:last' ).after( $newLink );
+ $newLink.data( 'msggroupid', messageGroup.id );
+
+ if ( messageGroup.groups && messageGroup.groups.length > 0 ) {
+ // Pass options for callbacks, language etc. but ignore the position
+ // option unless explicitly given to allow automatic recalculation
+ // of the position compared to the new trigger.
+ $newLink.msggroupselector( groupSelector.customOptions );
+ // Show the new menu immediately
+ $newLink.data( 'msggroupselector' ).show();
+ }
+
+ if ( groupSelector.options.onSelect ) {
+ groupSelector.options.onSelect( messageGroup );
+ }
+ } );
+
+ // Handle the tabs All | Recent
+ $tabs = groupSelector.$menu.find( '.tux-grouptab' );
+ $tabs.on( 'click', function () {
+ var $this = $( this );
+
+ /* Do nothing if user clicks the active tab.
+ * Fixes two things:
+ * - The blue bottom border highlight doesn't jump around
+ * - No flash when clicking recent tab again
+ */
+ if ( $this.hasClass( 'tux-grouptab--selected' ) ) {
+ return;
+ }
+
+ // This is okay as long as we only have two classes
+ $tabs.toggleClass( 'tux-grouptab--selected' );
+ groupSelector.$search.val( '' );
+ groupSelector.showList();
+ } );
+
+ this.$search.on( 'click', $.proxy( this.show, this ) )
+ .on( 'keypress', $.proxy( this.keyup, this ) )
+ .on( 'keyup', $.proxy( this.keyup, this ) );
+
+ if ( this.eventSupported( 'keydown' ) ) {
+ this.$search.on( 'keydown', $.proxy( this.keyup, this ) );
+ }
+ },
+
+ /**
+ * Handle the keypress/keyup events in the message group search box.
+ */
+ keyup: function () {
+ delay( $.proxy( this.showList, this ), 300 );
+ },
+
+ /**
+ * Position the menu
+ */
+ position: function () {
+ if ( this.options.position.of === undefined ) {
+ this.options.position.of = this.$trigger;
+ }
+ this.$menu.position( this.options.position );
+ },
+
+ /**
+ * Shows suitable list for current view, taking possible filter into account
+ */
+ showList: function () {
+ var query = $.trim( this.$search.val() ).toLowerCase();
+
+ if ( query ) {
+ this.filter( query );
+ } else {
+ this.showUnfilteredList();
+ }
+ },
+
+ /**
+ * Shows an unfiltered list of groups depending on the selected tab.
+ */
+ showUnfilteredList: function () {
+ var $selected = this.$menu.find( '.tux-grouptab--selected' );
+
+ if ( $selected.hasClass( 'tux-grouptab--all' ) ) {
+ this.showDefaultGroups();
+ } else if ( $selected.hasClass( 'tux-grouptab--recent' ) ) {
+ this.showRecentGroups();
+ }
+ },
+
+ /**
+ * Shows the list of message groups excluding subgroups.
+ *
+ * In case a parent message group has been given, only subgroups of that
+ * message group are shown, otherwise all top-level message groups are shown.
+ */
+ showDefaultGroups: function () {
+ var groupSelector = this;
+
+ this.$loader.show();
+
+ this.loadGroups().done( function( groups ) {
+ var groupsToShow = mw.translate.findGroup( groupSelector.parentGroupId, groups );
+
+ // We do not want to display the group itself, only its subgroups
+ if ( groupSelector.parentGroupId ) {
+ groupsToShow = groupsToShow.groups;
+ }
+
+ groupSelector.$loader.hide();
+ groupSelector.$list.empty();
+ groupSelector.addGroupRows( groupsToShow );
+ } );
+ },
+
+ /**
+ * Show recent message groups.
+ */
+ showRecentGroups: function () {
+ var groupSelector = this;
+
+ this.$loader.show();
+
+ $.when( this.loadRecentGroups(), this.loadGroups() )
+ .then( function ( recentGroups, allGroups ) {
+ var rows = [];
+
+ $.each( recentGroups, function ( index, id ) {
+ var group = mw.translate.findGroup( id, allGroups );
+
+ if ( group ) {
+ rows.push( groupSelector.prepareMessageGroupRow( group ) );
+ }
+ } );
+
+ groupSelector.$loader.hide();
+ groupSelector.$list.empty();
+ groupSelector.$list.append( rows );
+ } );
+ },
+
+ /**
+ * Flattens a message group tree.
+ * @param {Array} messageGroups An array or data object.
+ * @param {Object} foundIDs The array in which the keys are IDs of message groups that were found already.
+ */
+ flattenGroupList: function ( messageGroups, foundIDs ) {
+ var i;
+
+ if ( messageGroups.groups ) {
+ messageGroups = messageGroups.groups;
+ }
+
+ for ( i = 0; i < messageGroups.length; i++ ) {
+ // Avoid duplicate groups, and add the parent before subgroups
+ if ( !foundIDs[messageGroups[i].id] ) {
+ this.flatGroupList.push( messageGroups[i] );
+ foundIDs[messageGroups[i].id] = true;
+ }
+
+ // In case there are subgroups, add them recursively
+ if ( messageGroups[i].groups ) {
+ this.flattenGroupList( messageGroups[i].groups, foundIDs );
+ }
+ }
+ },
+
+ /**
+ * Search the message groups based on label or id.
+ * Label match is prefix match, while id match is exact match.
+ * @param {string} query
+ */
+ filter: function ( query ) {
+ var self = this;
+
+ this.loadGroups().done( function( groups ) {
+ var currentGroup, index, matcher, foundGroups = [];
+
+ if ( !self.flatGroupList ) {
+ self.flatGroupList = [];
+ currentGroup = mw.translate.findGroup( self.parentGroupId, groups );
+ if ( self.parentGroupId ) {
+ currentGroup = currentGroup.groups;
+ }
+ self.flattenGroupList( currentGroup, {} );
+ }
+
+ // Optimization, assuming that people search the beginning
+ // of the group name.
+ matcher = new RegExp( '\\b' + escapeRegex( query ), 'i' );
+
+ for ( index = 0; index < self.flatGroupList.length; index++ ) {
+ if ( matcher.test( self.flatGroupList[index].label ) ||
+ query === self.flatGroupList[index].id ) {
+ foundGroups.push( self.flatGroupList[index] );
+ }
+ }
+
+ self.$loader.hide();
+ self.$list.empty();
+ self.addGroupRows( foundGroups );
+ } );
+ },
+
+ /**
+ * Load message groups and relevant properties using the API.
+ *
+ * @return {jQuery.promise}
+ */
+ loadGroups: function () {
+ if ( groupsLoader !== undefined ) {
+ return groupsLoader;
+ }
+
+ var params = {
+ action: 'query',
+ format: 'json',
+ meta: 'messagegroups',
+ mgformat: 'tree',
+ mgprop: 'id|label|icon|priority|prioritylangs|priorityforce',
+ mgiconsize: '32'
+ };
+
+ groupsLoader = new mw.Api()
+ .get( params )
+ .then( function( result ) {
+ return result.query.messagegroups;
+ } )
+ .promise();
+
+ return groupsLoader;
+ },
+
+ /**
+ * Returns list of recently used message groups by the user.
+ *
+ * @return {jQuery.promise}
+ */
+ loadRecentGroups: function () {
+ if ( recentGroupsLoader !== undefined ) {
+ return recentGroupsLoader;
+ }
+
+ var params = {
+ action: 'translateuser',
+ format: 'json'
+ };
+
+ recentGroupsLoader = new mw.Api()
+ .get( params )
+ .then( function( result ) {
+ return result.translateuser.recentgroups;
+ } )
+ .promise();
+
+ return recentGroupsLoader;
+ },
+
+ /**
+ * Add rows with message groups to the selector.
+ *
+ * @param {Array} groups Array of message group objects to add.
+ */
+ addGroupRows: function ( groups ) {
+ var groupSelector = this,
+ $msgGroupRows = [],
+ $parent,
+ targetLanguage = this.options.language;
+
+ if ( !groups ) {
+ return;
+ }
+
+ $.each( groups, function ( index, group ) {
+ /* Hide from the selector:
+ * - discouraged groups (the only priority value currently supported).
+ * - groups that are recommended for other languages.
+ */
+ if ( group.priority === 'discouraged' ||
+ ( group.priorityforce &&
+ group.prioritylangs &&
+ $.inArray( targetLanguage, group.prioritylangs ) === -1 )
+ ) {
+ return;
+ }
+
+ $msgGroupRows.push( groupSelector.prepareMessageGroupRow( group ) );
+ } );
+
+ if ( this.parentGroupId ) {
+ $parent = this.$list.find( '.tux-grouplist__item[data-msggroupid="' +
+ this.parentGroupId + '"]' );
+
+ if ( $parent.length ) {
+ $parent.after( $msgGroupRows );
+ return;
+ }
+ }
+
+ this.$list.append( $msgGroupRows );
+ },
+
+ /**
+ * Prepare a message group row in the selector.
+ * @param {Object} messagegroup object.
+ * @returns {Object} a jQuery object with the groups selector row (<div>).
+ */
+ prepareMessageGroupRow: function( messagegroup ) {
+ var $row,
+ $icon,
+ $label,
+ $statsbar,
+ $subGroupsLabel,
+ style = '';
+
+ $row = $( '<div>' )
+ .addClass( 'row tux-grouplist__item' )
+ .attr( 'data-msggroupid', messagegroup.id )
+ .data( 'msggroup', messagegroup );
+
+ $icon = $( '<div>' )
+ .addClass( 'tux-grouplist__item__icon' )
+ .addClass( 'one column' );
+
+ $statsbar = $( '<div>' ).languagestatsbar( {
+ language: this.options.language,
+ group: messagegroup.id
+ } );
+
+ $label = $( '<div>' )
+ .addClass( 'tux-grouplist__item__label' )
+ .addClass( 'seven columns' )
+ .append(
+ $( '<span>' )
+ .prop( { dir: 'auto' } )
+ .text( messagegroup.label ),
+ $statsbar
+ );
+
+ if ( messagegroup.icon && messagegroup.icon.raster ) {
+ style += 'background-image: url(--);';
+ style = style.replace( /--/g, messagegroup.icon.raster );
+ }
+
+ if ( messagegroup.icon && messagegroup.icon.vector ) {
+ style +=
+ 'background-image: -webkit-linear-gradient(transparent, transparent), url(--);' +
+ 'background-image: linear-gradient(transparent, transparent), url(--);';
+ style = style.replace( /--/g, messagegroup.icon.vector );
+ }
+
+ if ( style !== '' ) {
+ $icon.attr( 'style', style );
+ }
+
+ $subGroupsLabel = $( [] );
+
+ if ( messagegroup.groups && messagegroup.groups.length > 0 ) {
+ $subGroupsLabel = $( '<div>' )
+ .addClass( 'tux-grouplist__item__subgroups' )
+ .addClass( 'four columns' )
+ .text( mw.msg( 'translate-msggroupselector-view-subprojects',
+ messagegroup.groups.length ) );
+ }
+
+ return $row.append( $icon, $label, $subGroupsLabel );
+ },
+
+ /**
+ * Check that a DOM event is supported by the $menu jQuery object.
+ *
+ * @param eventName
+ * @returns {boolean}
+ */
+ eventSupported: function ( eventName ) {
+ var $search = this.$menu.find( '.tux-groupselector__filter__search__input' ),
+ isSupported = eventName in $search;
+
+ if ( !isSupported ) {
+ this.$element.setAttribute( eventName, 'return;' );
+ isSupported = typeof this.$element[eventName] === 'function';
+ }
+
+ return isSupported;
+ }
+ };
+
+ /*
+ * msggroupselector PLUGIN DEFINITION
+ */
+
+ $.fn.msggroupselector = function ( options ) {
+ return this.each( function () {
+ var $this = $( this ),
+ data = $this.data( 'msggroupselector' );
+
+ if ( !data ) {
+ $this.data( 'msggroupselector',
+ ( data = new TranslateMessageGroupSelector( this, options ) )
+ );
+ }
+
+ if ( typeof options === 'string' ) {
+ data[options].call( $this );
+ }
+ } );
+ };
+
+ $.fn.msggroupselector.Constructor = TranslateMessageGroupSelector;
+
+ $.fn.msggroupselector.defaults = {
+ language: 'en',
+ position: {
+ my: 'left top',
+ at: 'left-90 bottom+5'
+ }
+ };
+
+ /*
+ * Private functions
+ */
+ /**
+ * Escape the search query for regex match
+ * @param {string} value A search string to be escaped.
+ * @returns {string} Escaped string that is safe to use for a search.
+ */
+ function escapeRegex( value ) {
+ return value.replace( /[\-\[\]{}()*+?.,\\\^$\|#\s]/g, '\\$&' );
+ }
+
+ delay = ( function () {
+ var timer = 0;
+
+ return function ( callback, milliseconds ) {
+ clearTimeout( timer );
+ timer = setTimeout( callback, milliseconds );
+ };
+ } () );
+}( jQuery, mediaWiki ) );
diff --git a/MLEB/Translate/resources/js/ext.translate.hooks.js b/MLEB/Translate/resources/js/ext.translate.hooks.js
new file mode 100644
index 00000000..1155aa9c
--- /dev/null
+++ b/MLEB/Translate/resources/js/ext.translate.hooks.js
@@ -0,0 +1,38 @@
+/**
+ * JavaScript hook framework for Translate (since MediaWiki code doesn't
+ * yet have one. See hooks.txt in Translate directory for how to use hooks.
+ *
+ * @author Harry Burt
+ * @license GPL-2.0+
+ * @since 2012-08-22
+ */
+
+( function ( mw ) {
+ 'use strict';
+
+ var registry = {};
+
+ mw.translateHooks = {
+ add: function ( name, func ) {
+ if ( !registry[name] ) {
+ registry[name] = [];
+ }
+ registry[name].push( func );
+ },
+
+ run: function ( /* infinite list of parameters */ ) {
+ var args, name, length, i;
+
+ args = Array.prototype.slice.call( arguments );
+ name = args.shift();
+
+ if ( registry[name] ) {
+ length = registry[name].length;
+
+ for ( i = 0; i < length; i++ ) {
+ registry[name][i].apply( null, args );
+ }
+ }
+ }
+ };
+}( mediaWiki ) );
diff --git a/MLEB/Translate/resources/js/ext.translate.messagetable.js b/MLEB/Translate/resources/js/ext.translate.messagetable.js
new file mode 100644
index 00000000..bd02fced
--- /dev/null
+++ b/MLEB/Translate/resources/js/ext.translate.messagetable.js
@@ -0,0 +1,823 @@
+( function ( $, mw ) {
+ 'use strict';
+
+ var delay, itemsClass;
+
+ delay = ( function () {
+ var timer = 0;
+
+ return function ( callback, milliseconds ) {
+ clearTimeout( timer );
+ timer = setTimeout( callback, milliseconds );
+ };
+ } () );
+
+ itemsClass = {
+ proofread: '.tux-message-proofread',
+ page: '.tux-message-pagemode',
+ translate: '.tux-message'
+ };
+
+ mw.translate = mw.translate || {};
+ mw.translate = $.extend( mw.translate, {
+ getMessages: function ( messageGroup, language, offset, limit, filter ) {
+ var api = new mw.Api();
+
+ return api.get( {
+ action: 'query',
+ list: 'messagecollection',
+ mcgroup: messageGroup,
+ format: 'json',
+ mclanguage: language,
+ mcoffset: offset,
+ mclimit: limit,
+ mcfilter: filter,
+ mcprop: 'definition|translation|tags|properties'
+ } );
+ },
+
+ loadMessages: function ( changes ) {
+ // FIXME: this should be member method
+ var $container = $( '.tux-messagelist' ),
+ $loader = $( '.tux-messagetable-loader' ),
+ $statsbar = $( '.tux-message-list-statsbar' );
+
+ changes = changes || {};
+
+ // Clear current messages
+ $container.trigger( 'clear' );
+
+ // Change the properties that are provided
+ if ( changes.filter !== undefined ) {
+ $loader.data( 'filter', changes.filter );
+ }
+ if ( changes.group !== undefined ) {
+ $loader.data( 'messagegroup', changes.group );
+ }
+
+ // Reset the number of messages remaining
+ $loader.find( '.tux-messagetable-loader-count' ).text( '' );
+
+ // Reset the statsbar
+ $statsbar
+ .empty()
+ .removeData()
+ .languagestatsbar( {
+ language: $container.data( 'targetlangcode' ),
+ group: $loader.data( 'messagegroup' )
+ } );
+
+ // Reset other info and make visible
+ $loader
+ .removeData( 'offset' )
+ .removeAttr( 'data-offset' )
+ .removeClass( 'hide' );
+
+ // And start loading
+ $loader.trigger( 'appear' );
+ }
+ } );
+
+ function MessageTable( container, options ) {
+ this.$container = $( container );
+ this.options = options;
+ this.options = $.extend( {}, $.fn.messagetable.defaults, options );
+ // mode can be proofread, page or translate
+ this.mode = this.options.mode;
+ this.firstProofreadTipShown = false;
+ this.initialized = false;
+ this.$header = this.$container.siblings( '.tux-messagetable-header' );
+ // Container is between these in the dom.
+ this.$loader = this.$container.siblings( '.tux-messagetable-loader' );
+ this.$actionBar = this.$container.siblings( '.tux-action-bar' );
+ this.messages = [];
+ this.loading = false;
+ this.init();
+ this.listen();
+ }
+
+ MessageTable.prototype = {
+ init: function () {
+ this.switchMode( this.mode );
+ this.initialized = true;
+ },
+
+ listen: function () {
+ var messageTable = this,
+ $filterInput = this.$container.parent().find( '.tux-message-filter-box' );
+
+ // Vector has transitions of 250ms which affect layout. Let those finish.
+ $( window ).on( 'scroll resize', function () {
+ delay( function () {
+ messageTable.scroll();
+ }, 250 );
+ } ).resize( function () {
+ messageTable.resize();
+ } );
+
+ if ( mw.translate.isPlaceholderSupported( $filterInput ) ) {
+ $filterInput.prop( 'placeholder', mw.msg( 'tux-message-filter-placeholder' ) );
+ }
+
+ $filterInput.on( 'textchange', function () {
+ delay( function () {
+ messageTable.search( $filterInput.val() );
+ }, 300 );
+ } );
+
+ this.$container.on( 'clear', $.proxy( messageTable.clear, messageTable ) );
+
+ this.$loader.appear( function () {
+ messageTable.load();
+ }, {
+ // Appear callback need to be called more than once.
+ one: false
+ } );
+
+ this.$actionBar.find( 'button.proofread-mode-button' ).on( 'click', function () {
+ messageTable.switchMode( 'proofread' );
+ } );
+
+ this.$actionBar.find( 'button.translate-mode-button' ).on( 'click', function () {
+ messageTable.switchMode( 'translate' );
+ } );
+
+ this.$actionBar.find( 'button.page-mode-button' ).on( 'click', function () {
+ messageTable.switchMode( 'page' );
+ } );
+ },
+
+ /**
+ * Clear the message table
+ */
+ clear: function () {
+ this.$container.empty();
+ $( '.translate-tipsy' ).remove();
+ this.messages = [];
+ // Any ongoing loading process will notice this and will reject results.
+ this.loading = false;
+ },
+
+ add: function ( message ) {
+ // Prepare the message for display
+ mw.translateHooks.run( 'formatMessageBeforeTable', message );
+
+ if ( this.mode === 'translate' ) {
+ this.addTranslate( message );
+ } else if ( this.mode === 'proofread' ) {
+ this.addProofread( message );
+ } else if ( this.mode === 'page' ) {
+ this.addPageModeMessage( message );
+ }
+ },
+
+ /**
+ * Add a message to the message table for translation.
+ */
+ addTranslate: function ( message ) {
+ var $message,
+ targetLangDir, targetLangAttrib,
+ targetLangCode = this.$container.data( 'targetlangcode' ),
+ sourceLangCode = this.$container.data( 'sourcelangcode' ),
+ sourceLangDir = $.uls.data.getDir( sourceLangCode ),
+ status = message.properties.status,
+ statusClass = 'tux-status-' + status,
+ $messageWrapper = $( '<div>' ).addClass( 'row tux-message' ),
+ statusMsg = '';
+
+ if ( message.tags.length &&
+ $.inArray( 'optional', message.tags ) >= 0 &&
+ status === 'untranslated'
+ ) {
+ status = 'optional';
+ statusClass = 'tux-status-optional';
+ }
+
+ // Fuzzy translations need warning class
+ if ( status === 'fuzzy' ) {
+ statusClass = statusClass + ' tux-warning';
+ }
+
+ // Label the status if it is not untranslated
+ if ( status !== 'untranslated' ) {
+ // Give grep a chance to find the usages:
+ // tux-status-optional, tux-status-fuzzy, tux-status-proofread,
+ // tux-status-translated, tux-status-saving, tux-status-unsaved
+ statusMsg = 'tux-status-' + status;
+ }
+
+ if ( targetLangCode === mw.config.get( 'wgTranslateDocumentationLanguageCode' ) ) {
+ targetLangAttrib = mw.config.get( 'wgContentLanguage' );
+ targetLangDir = $.uls.data.getDir( targetLangAttrib );
+ } else {
+ targetLangAttrib = targetLangCode;
+ targetLangDir = this.$container.data( 'targetlangdir' );
+ }
+
+ $message = $( '<div>' )
+ .addClass( 'row message tux-message-item ' + status )
+ .append(
+ $( '<div>' )
+ .addClass( 'eight columns tux-list-message' )
+ .append(
+ $( '<span>' )
+ .addClass( 'tux-list-source' )
+ .attr( {
+ lang: sourceLangCode,
+ dir: sourceLangDir
+ } )
+ .text( message.definition ),
+ // Bidirectional isolation.
+ // This should be removed some day when proper
+ // unicode-bidi: isolate
+ // is supported everywhere
+ $( '<span>' )
+ .html( $( 'body' ).hasClass( 'rtl' ) ? '&rlm;' : '&lrm;' ),
+ $( '<span>' )
+ .addClass( 'tux-list-translation' )
+ .attr( {
+ lang: targetLangAttrib,
+ dir: targetLangDir
+ } )
+ .text( message.translation || '' )
+ ),
+ $( '<div>' )
+ .addClass( 'two columns tux-list-status text-center' )
+ .append(
+ $( '<span>' )
+ .addClass( statusClass )
+ .text( statusMsg ? mw.msg( statusMsg ) : '' )
+ ),
+ $( '<div>' )
+ .addClass( 'two column tux-list-edit text-right' )
+ .append(
+ $( '<a>' )
+ .attr( {
+ title: mw.msg( 'translate-edit-title', message.key ),
+ href: ( new mw.Uri( mw.util.getUrl( message.title ) ) )
+ .extend( { action: 'edit' } )
+ } )
+ .text( mw.msg( 'tux-edit' ) )
+ )
+ );
+
+ $messageWrapper.append( $message );
+ this.$container.append( $messageWrapper );
+
+ // Attach translate editor to the message
+ $messageWrapper.translateeditor( {
+ message: message
+ } );
+ },
+
+ /**
+ * Add a message to the message table for proofreading.
+ */
+ addProofread: function ( message ) {
+ var icon, $message;
+
+ $message = $( '<div>' ).addClass( 'row tux-message-proofread' );
+
+ this.$container.append( $message );
+ $message.proofread( {
+ message: message,
+ sourcelangcode: this.$container.data( 'sourcelangcode' ),
+ targetlangcode: this.$container.data( 'targetlangcode' )
+ } );
+
+ // Add autotipsy to first available proofread action icon
+ if ( this.firstProofreadTipShown ) {
+ return;
+ }
+
+ icon = $message.find( '.tux-proofread-action' );
+ if ( icon.length === 0 ) {
+ return;
+ }
+
+ this.firstProofreadTipShown = true;
+ icon.addClass( 'autotipsy' );
+
+ // Selectors are not cached in case the element no longer exists
+ setTimeout( function () {
+ var icon = $( '.autotipsy' );
+ if ( icon.length ) { icon.tipsy( 'show' ); }
+ }, 1000 );
+ setTimeout( function () {
+ var icon = $( '.autotipsy' );
+ if ( icon.length ) { icon.tipsy( 'hide' ); }
+ }, 4000 );
+ },
+
+ addPageModeMessage: function ( message ) {
+ var $message;
+
+ $message = $( '<div>' )
+ .addClass( 'row tux-message tux-message-pagemode' );
+
+ this.$container.append( $message );
+ $message.pagemode( {
+ message: message,
+ sourcelangcode: this.$container.data( 'sourcelangcode' ),
+ targetlangcode: this.$container.data( 'targetlangcode' )
+ } );
+ },
+
+ /**
+ * Search the message filter
+ *
+ * @param {String} query
+ */
+ search: function ( query ) {
+ var resultCount = 0,
+ $result,
+ matcher = new RegExp( '(^|\\s|\\b)' + escapeRegex( query ), 'gi' );
+
+ this.$container.find( itemsClass[ this.mode ] ).each( function () {
+ var $message = $( this ),
+ message = ( $message.data( 'translateeditor' ) ||
+ $message.data( 'pagemode' ) ||
+ $message.data( 'proofread' ) ).message;
+
+ if ( matcher.test( message.definition ) || matcher.test( message.translation ) ) {
+ $message.removeClass( 'hide' );
+ resultCount++;
+ } else {
+ $message.addClass( 'hide' );
+ }
+ } );
+
+ $result = this.$container.find( '.tux-message-filter-result' );
+ if ( !$result.length ) {
+ $result = $( '<div>' ).addClass( 'row highlight tux-message-filter-result' )
+ .append(
+ $( '<div>' )
+ .addClass( 'ten columns advanced-search' ),
+ $( '<button>' )
+ .addClass( 'two columns button advanced-search' )
+ .text( mw.msg( 'tux-message-filter-advanced-button' ) )
+ );
+ this.$container.prepend( $result );
+ }
+
+ if ( !query ) {
+ $result.addClass( 'hide' );
+ } else {
+ $result.removeClass( 'hide' )
+ .find( 'div' )
+ .text( mw.msg( 'tux-message-filter-result', resultCount, query ) );
+ $result.find( 'button' ).on( 'click', function () {
+ window.location.href = new mw.Uri( mw.util.getUrl( 'Special:SearchTranslations' ) )
+ .extend( { query: query } );
+ } );
+ }
+
+ this.$loader.trigger( 'appear' );
+ this.updateLastMessage();
+
+ // Trigger a scroll event for the window to make sure all floating toolbars
+ // are in their position.
+ $( window ).trigger( 'scroll' );
+ },
+
+ resize: function () {
+ var actualWidth = 0;
+
+ // Calculate the total width required for the filters
+ $( '.row.tux-message-selector > li' ).each( function () {
+ actualWidth += $( this ).outerWidth( true );
+ } );
+
+ // Grid row has a min width. After that scrollbars will appear.
+ // We are checking whether the message table is wider than the current grid row width.
+ if ( actualWidth >= parseInt( $( '.nine.columns' ).width(), 10 ) ) {
+ $( '.tux-message-selector .more ul' ) // Overflow menu
+ .prepend( $( '.row.tux-message-selector > li.column:last' ).prev() );
+
+ // See if more items to be pushed to the overflow menu
+ this.resize();
+ }
+ },
+
+ load: function () {
+ var remaining,
+ query,
+ messageTable = this,
+ $messageList = $( '.tux-messagelist' ),
+ offset = this.$loader.data( 'offset' ),
+ filter = messageTable.$loader.data( 'filter' ),
+ targetLangCode = $messageList.data( 'targetlangcode' ),
+ messagegroup = messageTable.$loader.data( 'messagegroup' ),
+ pageSize = messageTable.$loader.data( 'pagesize' );
+
+ if ( offset === -1 ) {
+ return;
+ }
+
+ if ( messageTable.loading ) {
+ // Avoid duplicate loading - the offset will be wrong and it will result
+ // in duplicate messages shown in the page
+ return;
+ }
+
+ messageTable.loading = true;
+
+ mw.translate.getMessages( messagegroup, targetLangCode, offset, pageSize, filter )
+ .done( function ( result ) {
+ var messages = result.query.messagecollection,
+ state;
+
+ if ( !messageTable.loading ) {
+ // reject. This was cancelled.
+ return;
+ }
+
+ messageTable.loading = false;
+
+ if ( messages.length === 0 ) {
+ // And this is the first load for the filter...
+ if ( messageTable.$container.children().length === 0 ) {
+ messageTable.displayEmptyListHelp();
+ }
+ }
+
+ $.each( messages, function ( index, message ) {
+ message.group = messagegroup;
+ messageTable.add( message );
+ messageTable.messages.push( message );
+
+ if ( index === 0 && messageTable.mode === 'translate' ) {
+ $( '.tux-message:first' ).data( 'translateeditor' ).init();
+ }
+ } );
+
+ state = result.query.metadata && result.query.metadata.state;
+ $( '.tux-workflow' ).workflowselector( messagegroup, targetLangCode, state );
+
+ // Dynamically loaded messages should pass the search filter if present.
+ query = $( '.tux-message-filter-box' ).val();
+
+ if ( query ) {
+ messageTable.search( query );
+ }
+
+ if ( result['query-continue'] === undefined ) {
+ // End of messages
+ messageTable.$loader.data( 'offset', -1 )
+ .addClass( 'hide' );
+ } else {
+ messageTable.$loader.data( 'offset', result['query-continue'].messagecollection.mcoffset );
+
+ remaining = result.query.metadata.remaining;
+
+ $( '.tux-messagetable-loader-count' ).text(
+ mw.msg( 'tux-messagetable-more-messages', remaining )
+ );
+
+ $( '.tux-messagetable-loader-more' ).text(
+ mw.msg( 'tux-messagetable-loading-messages', Math.min( remaining, pageSize ) )
+ );
+
+ // Make sure the floating toolbars are visible without the need for scroll
+ $( window ).trigger( 'scroll' );
+ }
+
+ messageTable.updateLastMessage();
+ } )
+ .fail( function ( errorCode, response ) {
+ if ( response.error && response.error.code === 'mctranslate-language-disabled' ) {
+ $( '.tux-editor-header .group-warning' )
+ .text( mw.msg( 'translate-language-disabled' ) )
+ .show();
+ }
+ messageTable.$loader.data( 'offset', -1 ).addClass( 'hide' );
+ messageTable.loading = false;
+ } );
+ },
+
+ updateLastMessage: function () {
+ var $messages = this.$container.find( itemsClass[ this.mode ] );
+
+ // If a message was previously marked as "last", restore it to normal state
+ $messages.filter( '.last-message' ).removeClass( 'last-message' );
+
+ // At the class to the current last shown message
+ $messages
+ .not( '.hide' )
+ .last()
+ .addClass( 'last-message' );
+ },
+
+ /**
+ * Creates a uniformly styled button for different actions,
+ * shown when there are no messages to display.
+ * @param {String} labelMsg A message key for the button label.
+ * @param {Function} callback A callback for clicking the button.
+ * @returns {jQuery} A button element.
+ */
+ otherActionButton: function ( labelMsg, callback ) {
+ return $( '<button>' )
+ .addClass( 'green button' )
+ .text( mw.msg( labelMsg ) )
+ .on( 'click', callback );
+ },
+
+ /**
+ * If the user selection doesn't show anything,
+ * give some pointers to other things to do.
+ */
+ displayEmptyListHelp: function () {
+ var messageTable = this,
+ // @todo Ugly! This should be provided somehow
+ selectedTab = $( '.tux-message-selector .selected' ).data( 'title' ),
+ $wrap = $( '<div>' ).addClass( 'tux-empty-list' ),
+ $emptyListHeader = $( '<div>' ).addClass( 'tux-empty-list-header' ),
+ $guide = $( '<div>' ).addClass( 'tux-empty-list-guide' ),
+ $actions = $( '<div>' ).addClass( 'tux-empty-list-actions' );
+
+ if ( messageTable.mode === 'proofread' ) {
+ if ( selectedTab === 'all' ) {
+ $emptyListHeader.text( mw.msg( 'tux-empty-no-messages-to-display' ) );
+ $guide.append(
+ $( '<p>' )
+ .text( mw.msg( 'tux-empty-there-are-optional' ) ),
+ $( '<a>' )
+ .attr( 'href', '#' )
+ .text( mw.msg( 'tux-empty-show-optional-messages' ) )
+ .on( 'click', function ( e ) {
+ $( '#tux-option-optional' ).click();
+ e.preventDefault();
+ } )
+ );
+ } else if ( selectedTab === 'outdated' ) {
+ $emptyListHeader.text( mw.msg( 'tux-empty-no-outdated-messages' ) );
+ $guide.text( mw.msg( 'tux-empty-list-other-guide' ) );
+ $actions.append( messageTable.otherActionButton(
+ 'tux-empty-list-other-action',
+ function () {
+ $( '.tux-tab-unproofread' ).click();
+ // @todo untranslated
+ } )
+ );
+ // @todo View all
+ } else if ( selectedTab === 'translated' ) {
+ $emptyListHeader.text( mw.msg( 'tux-empty-nothing-to-proofread' ) );
+ $guide.text( mw.msg( 'tux-empty-you-can-help-providing' ) );
+ $actions.append( messageTable.otherActionButton(
+ 'tux-empty-list-translated-action',
+ function () {
+ messageTable.switchMode( 'translate' );
+ } )
+ );
+ } else if ( selectedTab === 'unproofread' ) {
+ $emptyListHeader.text( mw.msg( 'tux-empty-nothing-new-to-proofread' ) );
+ $guide.text( mw.msg( 'tux-empty-you-can-help-providing' ) );
+ $actions.append( messageTable.otherActionButton(
+ 'tux-empty-you-can-review-already-proofread',
+ function () {
+ $( '.tux-tab-translated' ).click();
+ } )
+ );
+ }
+ } else {
+ if ( selectedTab === 'all' ) {
+ $emptyListHeader.text( mw.msg( 'tux-empty-list-all' ) );
+ $guide.text( mw.msg( 'tux-empty-list-all-guide' ) );
+ } else if ( selectedTab === 'translated' ) {
+ $emptyListHeader.text( mw.msg( 'tux-empty-list-translated' ) );
+ $guide.text( mw.msg( 'tux-empty-list-translated-guide' ) );
+ $actions.append( messageTable.otherActionButton(
+ 'tux-empty-list-translated-action',
+ function () {
+ mw.translate.changeFilter( $( '.tux-tab-untranslated' ).click() );
+ } )
+ );
+ } else {
+ $emptyListHeader.text( mw.msg( 'tux-empty-list-other' ) );
+
+ if ( mw.translate.canProofread() ) {
+ $guide.text( mw.msg( 'tux-empty-list-other-guide' ) );
+ $actions.append( messageTable.otherActionButton(
+ 'tux-empty-list-other-action',
+ function () {
+ messageTable.switchMode( 'proofread' );
+ } )
+ );
+ }
+
+ $actions.append( $( '<a>' )
+ .text( mw.msg( 'tux-empty-list-other-link' ) )
+ .click( function () {
+ $( '.tux-tab-all' ).click();
+ } )
+ );
+ }
+ }
+
+ $wrap.append( $emptyListHeader, $guide, $actions );
+ this.$container.append( $wrap );
+ },
+
+ /**
+ * Switch the message table mode
+ *
+ * @param {string} mode The message table mode to switch to: translate, page or proofread
+ */
+ switchMode: function ( mode ) {
+ var messageTable = this,
+ filter = messageTable.$loader.data( 'filter' ),
+ userId = mw.config.get( 'wgUserId' ),
+ $tuxTabUntranslated,
+ $tuxTabUnproofread,
+ $controlOwnButton,
+ $hideTranslatedButton;
+
+ messageTable.$actionBar.find( '.down' ).removeClass( 'down' );
+ if ( mode === 'translate' ) {
+ messageTable.$actionBar.find( '.translate-mode-button' ).addClass( 'down' );
+ }
+ if ( mode === 'proofread' ) {
+ messageTable.$actionBar.find( '.proofread-mode-button' ).addClass( 'down' );
+ }
+ if ( mode === 'page' ) {
+ messageTable.$actionBar.find( '.page-mode-button' ).addClass( 'down' );
+ }
+
+ messageTable.firstProofreadTipShown = false;
+
+ messageTable.mode = mode;
+ mw.translate.changeUrl( { action: messageTable.mode } );
+
+ // Emulate clear without clearing loaded messages
+ messageTable.$container.empty();
+ $( '.translate-tipsy' ).remove();
+
+ $tuxTabUntranslated = $( '.tux-message-selector > .tux-tab-untranslated' );
+ $tuxTabUnproofread = $( '.tux-message-selector > .tux-tab-unproofread' );
+ $controlOwnButton = messageTable.$actionBar.find( '.tux-proofread-own-translations-button' );
+ $hideTranslatedButton = messageTable.$actionBar.find( '.tux-editor-clear-translated' );
+
+ if ( messageTable.mode === 'proofread' ) {
+ $tuxTabUntranslated.addClass( 'hide' );
+ $tuxTabUnproofread.removeClass( 'hide' );
+
+ // Fix the filter if it is untranslated. Untranslated does not make sense
+ // for proofread mode. Keep the filter if it is not 'untranslated'
+ if ( !filter || filter.indexOf( '!translated' ) >= 0 ) {
+ messageTable.messages = [];
+ // default filter for proofread mode
+ mw.translate.changeFilter( 'translated|!reviewer:' + userId +
+ '|!last-translator:' + userId );
+ $tuxTabUnproofread.addClass( 'selected' );
+ }
+
+ $controlOwnButton.removeClass( 'hide' );
+ $hideTranslatedButton.addClass( 'hide' );
+ } else {
+ $tuxTabUntranslated.removeClass( 'hide' );
+ $tuxTabUnproofread.addClass( 'hide' );
+ $controlOwnButton.addClass( 'hide' );
+
+ if ( messageTable.$loader.data( 'filter' ).indexOf( '!translated' ) > -1 ) {
+ $hideTranslatedButton.removeClass( 'hide' );
+ }
+
+ if ( filter && filter.indexOf( '!last-translator' ) >= 0 ) {
+ messageTable.messages = [];
+ // default filter for translate mode
+ mw.translate.changeFilter( '!translated' );
+ $tuxTabUntranslated.addClass( 'selected' );
+ }
+ }
+
+ if ( messageTable.messages.length ) {
+ $.each( messageTable.messages, function ( index, message ) {
+ messageTable.add( message );
+ } );
+ } else if ( messageTable.initialized ) {
+ messageTable.displayEmptyListHelp();
+ }
+
+ messageTable.updateLastMessage();
+ },
+
+ /**
+ * The scroll handler
+ */
+ scroll: function () {
+ var $window,
+ isActionBarFloating,
+ needsTableHeaderFloat, needsTableHeaderStick,
+ needsActionBarFloat, needsActionBarStick,
+ windowScrollTop, windowScrollBottom,
+ messageTableRelativePos,
+ messageListOffset,
+ messageListHeight, messageListWidth,
+ messageListTop, messageListBottom;
+
+ $window = $( window );
+
+ windowScrollTop = $window.scrollTop();
+ windowScrollBottom = windowScrollTop + $window.height();
+ messageListOffset = this.$container.offset();
+ messageListHeight = this.$container.height();
+ messageListTop = messageListOffset.top;
+ messageListBottom = messageListTop + messageListHeight;
+ messageListWidth = this.$container.width();
+
+ // Header:
+ messageTableRelativePos = messageListTop - this.$header.height() - windowScrollTop;
+ needsTableHeaderFloat = messageTableRelativePos + 10 < 0;
+ needsTableHeaderStick = messageTableRelativePos - 10 >= 0;
+ if ( needsTableHeaderFloat ) {
+ this.$header.addClass( 'floating' ).width( messageListWidth );
+ } else if ( needsTableHeaderStick ) {
+ // Let the element change width automatically again
+ this.$header.removeClass( 'floating' ).css( 'width', '' );
+ }
+
+ // Action bar:
+ isActionBarFloating = this.$actionBar.hasClass( 'floating' );
+ needsActionBarFloat = windowScrollBottom < messageListBottom;
+ needsActionBarStick = windowScrollBottom > ( messageListBottom + this.$actionBar.height() );
+
+ if ( !isActionBarFloating && needsActionBarFloat ) {
+ this.$actionBar.addClass( 'floating' ).width( messageListWidth );
+ } else if ( isActionBarFloating && needsActionBarStick ) {
+ // Let the element change width automatically again
+ this.$actionBar.removeClass( 'floating' ).css( 'width', '' );
+ } else if ( isActionBarFloating && needsActionBarFloat ) {
+ this.$actionBar.width( messageListWidth );
+ }
+ }
+ };
+
+ /*
+ * messagetable PLUGIN DEFINITION
+ */
+
+ $.fn.messagetable = function ( options ) {
+ return this.each( function () {
+ var $this = $( this ),
+ data = $this.data( 'messagetable' );
+
+ if ( !data ) {
+ $this.data( 'messagetable', ( data = new MessageTable( this, options ) ) );
+ }
+
+ if ( typeof options === 'string' ) {
+ data[options].call( $this );
+ }
+ } );
+ };
+
+ $.fn.messagetable.Constructor = MessageTable;
+
+ $.fn.messagetable.defaults = {
+ mode: new mw.Uri().query.action || 'translate'
+ };
+
+ $( 'document' ).ready( function () {
+ // Currently used only in the pre-TUX editor
+ $( '.mw-translate-messagereviewbutton' ).click( function () {
+ var $b, successFunction, failFunction, params;
+ $b = $( this );
+
+ successFunction = function ( data ) {
+ if ( data.error ) {
+ // Give grep a chance to find the usages:
+ // api-error-invalidrevision, api-error-unknownmessage,
+ // api-error-fuzzymessage, api-error-owntranslation
+ var reason = mw.msg( 'api-error-' + data.error.code );
+ $b.val( mw.msg( 'translate-messagereview-failure', reason ) );
+ } else {
+ $b.val( mw.msg( 'translate-messagereview-done' ) );
+ }
+ };
+
+ failFunction = function ( jqXHR ) {
+ $b.val( mw.msg( 'translate-messagereview-failure', jqXHR.statusText ) );
+ };
+
+ params = {
+ action: 'translationreview',
+ token: $b.data( 'token' ),
+ revision: $b.data( 'revision' ),
+ format: 'json'
+ };
+ $b.val( mw.msg( 'translate-messagereview-progress' ) );
+ $b.prop( 'disabled', true );
+
+ $.post( mw.util.wikiScript( 'api' ), params, successFunction ).fail( failFunction );
+ } );
+ } );
+
+ /**
+ * Escape the search query for regex match
+ * @param {string} value A search string to be escaped.
+ * @returns {string} Escaped string that is safe to use for a search.
+ */
+ function escapeRegex( value ) {
+ return value.replace( /[\-\[\]{}()*+?.,\\\^$\|#\s]/g, '\\$&' );
+ }
+}( jQuery, mediaWiki ) );
diff --git a/MLEB/Translate/resources/js/ext.translate.multiselectautocomplete.js b/MLEB/Translate/resources/js/ext.translate.multiselectautocomplete.js
new file mode 100644
index 00000000..b83c866a
--- /dev/null
+++ b/MLEB/Translate/resources/js/ext.translate.multiselectautocomplete.js
@@ -0,0 +1,87 @@
+/*
+ * @author Santhosh Thottingal
+ * jQuery autocomplete based multiple selector for input box.
+ * Autocompleted values will be available in input filed as comma separated values.
+ * The values for autocompletion is from the language selector in this case.
+ * The input field is created in PHP code.
+ * Credits: http://jqueryui.com/demos/autocomplete/#multiple
+ */
+jQuery( function ( $ ) {
+ 'use strict';
+
+ $.widget( 'ui.multiselectautocomplete', {
+ options: {
+ inputbox: null // a jQuery selector for the input box where selections are written.
+ // TODO can have more options.
+ },
+ _create: function () {
+ var self, select, options, input;
+
+ self = this;
+ select = this.element.hide();
+ options = this.options;
+
+ function split( val ) {
+ return val.split( /,\s*/ );
+ }
+
+ input = this.input = $( options.inputbox ).autocomplete( {
+ delay: 0,
+ minLength: 0,
+ source: function ( request, response ) {
+ var term, matcher;
+
+ term = split( request.term ).pop();
+ matcher = new RegExp( $.ui.autocomplete.escapeRegex( term ), 'i' );
+
+ response( select.children( 'option' ).map( function () {
+ var text = $( this ).text(),
+ value = $( this ).val(),
+ term = split( request.term ).pop();
+
+ if ( this.value && ( !request.term || matcher.test( text ) ) ) {
+ return {
+ label: text.replace(
+ new RegExp(
+ '(?![^&;]+;)(?!<[^<>]*)(' +
+ $.ui.autocomplete.escapeRegex( term ) +
+ ')(?![^<>]*>)(?![^&;]+;)', 'gi'
+ ), '<strong>$1</strong>' ),
+ value: value,
+ option: this
+ };
+ }
+ } ) );
+ },
+ select: function ( event, ui ) {
+ ui.item.option.selected = true;
+ self._trigger( 'selected', event, {
+ item: ui.item.option
+ } );
+ var terms = split( $( this ).val() );
+ // remove the current input
+ terms.pop();
+ // add the selected item
+ terms.push( ui.item.value );
+ // add placeholder to get the comma-and-space at the end
+ terms.push( '' );
+ $( this ).val( terms.join( ', ' ) );
+ return false;
+ }
+ } );
+
+ input.data( 'autocomplete' )._renderItem = function ( ul, item ) {
+ return $( '<li>' )
+ .data( 'item.autocomplete', item )
+ .append( '<a>' + item.label + '</a>' )
+ .appendTo( ul );
+ };
+ }, // End of _create
+
+ destroy: function () {
+ this.input.remove();
+ this.element.show();
+ $.Widget.prototype.destroy.call( this );
+ }
+ } );
+} );
diff --git a/MLEB/Translate/resources/js/ext.translate.navitoggle.js b/MLEB/Translate/resources/js/ext.translate.navitoggle.js
new file mode 100644
index 00000000..6f134560
--- /dev/null
+++ b/MLEB/Translate/resources/js/ext.translate.navitoggle.js
@@ -0,0 +1,47 @@
+/**
+ * Introduces a toggle icon than can be used to hide navigation menu in vector
+ * @author Niklas Laxström
+ * @license GPL-2.0+
+ */
+(function ( mw, $ ) {
+ 'use strict';
+
+ var delay = ( function () {
+ var timer = 0;
+
+ return function ( callback, milliseconds ) {
+ clearTimeout( timer );
+ timer = setTimeout( callback, milliseconds );
+ };
+ } () );
+
+ $( document ).ready( function () {
+ var $miniLogo, $toggle, rtl, delim,
+ $body = $( 'body' );
+
+ rtl = $body.hasClass( 'rtl' );
+ delim = rtl ?
+ $( '#mw-head-base' ).css( 'margin-right' ) :
+ $( '#mw-head-base' ).css( 'margin-left' );
+
+ $miniLogo = $( '#p-logo' )
+ .clone()
+ .removeAttr( 'id' )
+ .addClass( 'tux-navi-minilogo' );
+
+ $toggle = $( '<div>' )
+ .addClass( 'tux-navitoggle' )
+ .css( rtl ? 'right' : 'left' , delim )
+ .click( function () {
+ $body.toggleClass( 'tux-navi-collapsed' );
+ // Allow for animations etc to go
+ delay( function () {
+ $( window ).trigger( 'resize' );
+ $( window ).trigger( 'scroll' );
+ }, 250 );
+ } );
+
+ $( 'body' ).append( $miniLogo, $toggle );
+
+ } );
+}( mediaWiki, jQuery ) );
diff --git a/MLEB/Translate/resources/js/ext.translate.pagemode.js b/MLEB/Translate/resources/js/ext.translate.pagemode.js
new file mode 100644
index 00000000..a091fc10
--- /dev/null
+++ b/MLEB/Translate/resources/js/ext.translate.pagemode.js
@@ -0,0 +1,126 @@
+( function ( $, mw ) {
+ 'use strict';
+ /**
+ * Page mode plugin
+ *
+ * Prepare the page mode UI with all the required actions
+ * for a translation unit (message).
+ * This is mainly used with the messagetable plugin in page mode,
+ * but it is independent of messagetable.
+ * Example usage:
+ *
+ * $( 'div.pagemode' ).pagemode( {
+ * message: messageObject, // Mandatory message object
+ * sourcelangcode: 'en', // Mandatory source language code
+ * targetlangcode: 'hi' // Mandatory target language code
+ * } );
+ */
+ function PageMode( element, options ) {
+ this.$message = $( element );
+ this.options = options;
+ this.message = this.options.message;
+ this.init();
+ this.listen();
+ }
+
+ PageMode.prototype = {
+
+ /**
+ * Initialize the plugin
+ */
+ init: function () {
+ var pagemode = this;
+
+ this.render();
+
+ pagemode.$message.translateeditor( {
+ message: pagemode.message,
+ beforeSave: function ( translation ) {
+ pagemode.$message.find( '.tux-pagemode-translation' )
+ .html( mw.translate.formatMessageGently( translation || '', pagemode.message.key ) )
+ .addClass( 'highlight' );
+ },
+ onSave: function ( translation ) {
+ pagemode.$message.find( '.tux-pagemode-translation' )
+ .removeClass( 'highlight' );
+ pagemode.message.translation = translation;
+ }
+ } );
+
+ },
+
+ render: function () {
+ var targetLangAttrib, targetLangDir,
+ sourceLangDir = $.uls.data.getDir( this.options.sourcelangcode );
+
+ if ( this.options.targetlangcode ===
+ mw.config.get( 'wgTranslateDocumentationLanguageCode' )
+ ) {
+ targetLangAttrib = mw.config.get( 'wgContentLanguage' );
+ } else {
+ targetLangAttrib = this.options.targetlangcode;
+ }
+
+ targetLangDir = $.uls.data.getDir( targetLangAttrib );
+
+ this.$message.append(
+ $( '<div>' )
+ .addClass( 'row tux-message-item-compact message' )
+ .append(
+ $( '<div>' )
+ .addClass( 'one column tux-pagemode-status ' + this.message.properties.status ),
+ $( '<div>' )
+ .addClass( 'five columns tux-pagemode-source' )
+ .attr( {
+ lang: this.options.sourcelangcode,
+ dir: sourceLangDir
+ } )
+ .html( mw.translate.formatMessageGently( this.message.definition, this.message.key ) ),
+ $( '<div>' )
+ .addClass( 'five columns tux-pagemode-translation' )
+ .attr( {
+ lang: targetLangAttrib,
+ dir: targetLangDir
+ } )
+ .html( mw.translate.formatMessageGently( this.message.translation || '', this.message.key ) ),
+ $( '<div>' )
+ .attr( 'title', mw.msg( 'translate-edit-title', this.message.key ) )
+ .addClass( 'tux-pagemode-edit' )
+ )
+ )
+
+ .addClass( this.message.properties.status );
+ },
+
+ /**
+ * Attach event listeners
+ */
+ listen: function () {
+ var pagemode = this;
+
+ this.$message.children( '.message' ).on( 'click', function ( e ) {
+ pagemode.$message.data( 'translateeditor' ).show();
+ e.preventDefault();
+ } );
+ }
+ };
+
+ /*
+ * pagemode PLUGIN DEFINITION
+ */
+ $.fn.pagemode = function ( options ) {
+ return this.each( function () {
+ var $this = $( this ),
+ data = $this.data( 'pagemode' );
+
+ if ( !data ) {
+ $this.data( 'pagemode',
+ ( data = new PageMode( this, options ) )
+ );
+ }
+
+ } );
+ };
+
+ $.fn.pagemode.Constructor = PageMode;
+}( jQuery, mediaWiki ) );
diff --git a/MLEB/Translate/resources/js/ext.translate.pagetranslation.uls.js b/MLEB/Translate/resources/js/ext.translate.pagetranslation.uls.js
new file mode 100644
index 00000000..42504e70
--- /dev/null
+++ b/MLEB/Translate/resources/js/ext.translate.pagetranslation.uls.js
@@ -0,0 +1,21 @@
+( function ( mw ) {
+ 'use strict';
+
+ mw.uls.changeLanguage = function ( language ) {
+ var page, uri;
+
+ page = 'Special:MyLanguage/' + mw.config.get( 'wgPageName' );
+
+ if ( mw.config.get( 'wgTranslatePageTranslation' ) === 'translation' ) {
+ page = page.replace( /\/[^\/]+$/, '' );
+ }
+
+ uri = new mw.Uri( mw.util.getUrl( page ) );
+
+ uri.extend( {
+ setlang: language
+ } );
+
+ location.href = uri.toString();
+ };
+} ( mediaWiki ) );
diff --git a/MLEB/Translate/resources/js/ext.translate.parsers.js b/MLEB/Translate/resources/js/ext.translate.parsers.js
new file mode 100644
index 00000000..171e547e
--- /dev/null
+++ b/MLEB/Translate/resources/js/ext.translate.parsers.js
@@ -0,0 +1,80 @@
+/*
+ * A set of simple tools for partial parsing and formatting of translatable
+ * messages.
+ *
+ * @author Niklas Laxström, 2013
+ * @license GPL-2.0+
+ */
+
+( function ( $, mw ) {
+ 'use strict';
+
+ mw.translate = mw.translate || {};
+ mw.translate = $.extend( mw.translate, {
+ /**
+ * Formats some common wikitext elements
+ * @param {String} text Message text
+ * @param {String} [key] Message key
+ * @return {String} Formatted text in html
+ */
+ formatMessageGently: function ( text, key ) {
+ var externals,
+ protocols = mw.config.get( 'wgUrlProtocols' );
+
+ // Try to keep simple.
+ text = $( '<div>' ).text( text ).html();
+
+ // Hack for page translation page titles
+ if ( text && key && key.match( /\/Page_display_title$/ ) ) {
+ text = '=' + text + '=';
+ }
+
+ text = text.replace( /^(=+)(.*?)(=+)/, function ( match, p1, p2, p3 ) {
+ var len = Math.min( p1.length, p3.length, 6 );
+ return $( '<div>' ).append( $( '<h' + len + '>' ).html( p2 ) ).html();
+ } );
+
+ text = text.replace( /(^\*.*(\n|$))+/gm, function ( match ) {
+ match = match.replace( /^\*(.*)/gm, function ( match, p1 ) {
+ return $( '<div>' ).append( $( '<li>' ).html( p1 ) ).html();
+ } );
+ return $( '<div>' ).append( $( '<ul>' ).html( match ) ).html();
+ } );
+
+ text = text.replace( /(^#.*(\n|$))+/gm, function ( match ) {
+ match = match.replace( /^#(.*)/gm, function ( match, p1 ) {
+ return $( '<div>' ).append( $( '<li>' ).html( p1 ) ).html();
+ } );
+ return $( '<div>' ).append( $( '<ol>' ).html( match ) ).html();
+ } );
+
+ text = text.replace( /\[\[([^\]|]+?)\|(.+?)\]\]/g, function ( match, p1, p2 ) {
+ var link = $( '<a>' ).html( p2 ).prop( 'href', mw.util.getUrl( p1 ) );
+ return $( '<div>' ).append( link ).html();
+ } );
+
+ text = text.replace( /\[\[(.+?)\]\]/g, function ( match, p1 ) {
+ var link = $( '<a>' ).html( p1 ).prop( 'href', mw.util.getUrl( p1 ) );
+ return $( '<div>' ).append( link ).html();
+ } );
+
+ externals = new RegExp( '\\[((' + protocols + ')[^ ]+) (.+?)\\]', 'g');
+ text = text.replace( externals, function ( match, p1, p2, p3 ) {
+ var link = $( '<a>' ).html( p3 ).prop( 'href', p1 );
+ return $( '<div>' ).append( link ).html();
+ } );
+
+ text = text.replace( /'''(.+?)'''/g, function ( match, p1 ) {
+ return $( '<div>' ).append( $( '<strong>' ).html( p1 ) ).html();
+ } );
+
+ text = text.replace( /''(.+?)''/g, function ( match, p1 ) {
+ return $( '<div>' ).append( $( '<em>' ).html( p1 ) ).html();
+ } );
+
+ text = text.replace( /\n\n/gm, '<br />' );
+ return text;
+ }
+ } );
+
+} ( jQuery, mediaWiki ) );
diff --git a/MLEB/Translate/resources/js/ext.translate.proofread.js b/MLEB/Translate/resources/js/ext.translate.proofread.js
new file mode 100644
index 00000000..cac69e6d
--- /dev/null
+++ b/MLEB/Translate/resources/js/ext.translate.proofread.js
@@ -0,0 +1,267 @@
+/*global alert: false*/
+( function ( $, mw ) {
+ 'use strict';
+
+ /**
+ * Proofread Plugin
+ * Prepare a proofread UI with all the required actions
+ * for a translation unit (message).
+ * This is mainly used with the messagetable plugin in proofread mode,
+ * but it is independent of messagetable.
+ * Example usage:
+ *
+ * $( 'div.proofread' ).proofread( {
+ * message: messageObject, // Mandatory message object
+ * sourcelangcode: 'en', // Mandatory source language code
+ * targetlangcode: 'hi' // Mandatory target language code
+ * } );
+ */
+ function Proofread( element, options ) {
+ this.$message = $( element );
+ this.options = options;
+ this.message = this.options.message;
+ this.init();
+ this.listen();
+ }
+
+ Proofread.prototype = {
+
+ /**
+ * Initialize the plugin
+ */
+ init: function () {
+ var proofread = this;
+
+ this.render();
+ // No review before translating.
+ if ( !this.message.translation ) {
+ this.disableProofread();
+ }
+
+ // No review for fuzzy messages.
+ if ( this.message.properties.status === 'fuzzy' ) {
+ this.disableProofread();
+ }
+
+ if ( !mw.translate.canProofread() ) {
+ this.disableProofread();
+ }
+
+ proofread.$message.translateeditor( {
+ message: proofread.message,
+ onSave: function ( translation ) {
+ proofread.$message.find( '.tux-proofread-translation' )
+ .text( translation );
+ proofread.message.translation = translation;
+ proofread.markSelfTranslation();
+ // Update stats - to translated state from current state.
+ $( '.tux-action-bar .tux-statsbar' )
+ .trigger(
+ 'change',
+ [ 'translated', proofread.message.properties.status ]
+ );
+ }
+ } );
+
+ },
+
+ render: function () {
+ var targetLangCode, targetLangDir, targetLangAttrib,
+ sourceLangCode, sourceLangDir,
+ $proofreadAction, $proofreadEdit, userId, reviewers, otherReviewers,
+ translatedBySelf, proofreadBySelf;
+
+ // List of all reviewers
+ reviewers = $( this.message.properties.reviewers );
+ // The id of the current user, converted to string as the are in reviewers
+ userId = mw.config.get( 'wgUserId' ) + '';
+ // List of all reviewers excluding the current user.
+ otherReviewers = reviewers.not( [userId] );
+ /* Whether the current user if the last translator of this message.
+ * Accepting own translations is prohibited. */
+ translatedBySelf = ( this.message.properties['last-translator-text'] === mw.user.getName() );
+ proofreadBySelf = $.inArray( userId, reviewers ) > -1;
+
+ sourceLangCode = this.options.sourcelangcode;
+ sourceLangDir = $.uls.data.getDir( sourceLangCode );
+ targetLangCode = this.options.targetlangcode;
+ targetLangDir = $.uls.data.getDir( targetLangCode );
+
+ $proofreadAction = $( '<div>' )
+ .attr( 'title', mw.msg( 'tux-proofread-action-tooltip' ) )
+ .addClass(
+ 'tux-proofread-action ' + this.message.properties.status + ' ' + ( proofreadBySelf ? 'accepted' : '' )
+ )
+ .tipsy( { gravity: 's', delayIn: 1000, className: 'translate-tipsy' } );
+
+ $proofreadEdit = $( '<div>' )
+ .addClass( 'tux-proofread-edit' )
+ .append( $( '<span>' )
+ .addClass( 'tux-proofread-edit-label hide' )
+ .text( mw.msg( 'tux-proofread-edit-label' ) )
+ )
+ .on( 'mouseover', function () {
+ $( this ).find( '.tux-proofread-edit-label' ).removeClass( 'hide' );
+ } )
+ .on( 'mouseout', function () {
+ $( this ).find( '.tux-proofread-edit-label' ).addClass( 'hide' );
+ } );
+
+ if ( targetLangCode === mw.config.get( 'wgTranslateDocumentationLanguageCode' ) ) {
+ targetLangAttrib = mw.config.get( 'wgContentLanguage' );
+ } else {
+ targetLangAttrib = targetLangCode;
+ }
+ targetLangDir = $.uls.data.getDir( targetLangAttrib );
+
+ this.$message.append(
+ $( '<div>' )
+ .addClass( 'row tux-message-item-compact message' )
+ .append(
+ $( '<div>' )
+ .addClass( 'one column tux-proofread-status ' + this.message.properties.status ),
+ $( '<div>' )
+ .addClass( 'five columns tux-proofread-source' )
+ .attr( {
+ lang: sourceLangCode,
+ dir: sourceLangDir
+ } )
+ .text( this.message.definition ),
+ $( '<div>' )
+ .addClass( 'five columns tux-proofread-translation' )
+ .attr( {
+ lang: targetLangAttrib,
+ dir: targetLangDir
+ } )
+ .text( this.message.translation || '' ),
+ $( '<div>' )
+ .addClass( 'tux-proofread-action-block one column' )
+ .append(
+ $proofreadAction,
+ otherReviewers.length ?
+ $( '<div>' )
+ .addClass( 'tux-proofread-count' )
+ .data( 'reviewCount', reviewers.length ) // To update when accepting
+ .text( mw.language.convertNumber( reviewers.length ) ) :
+ $( [] ),
+ $proofreadEdit
+ )
+ )
+ )
+ .addClass( this.message.properties.status );
+
+ if ( translatedBySelf ) {
+ this.markSelfTranslation();
+ }
+
+ /* Here we need to check that there are reviewers in the first place
+ * before adding review markers */
+ if ( reviewers.length && otherReviewers.length ) {
+ this.$message.addClass( 'proofread-by-others' );
+ }
+ },
+
+ disableProofread: function () {
+ this.$message.find( '.tux-proofread-action' )
+ .remove();
+ },
+
+ /**
+ * Mark the message self translated.
+ */
+ markSelfTranslation: function () {
+ // Own translations cannot be reviewed, so disable proofread
+ this.disableProofread();
+ if ( !this.$message.hasClass( 'own-translation' ) ) {
+ this.$message.addClass( 'own-translation' )
+ .find( '.tux-proofread-action-block' )
+ .append( $( '<div>' )
+ .addClass( 'translated-by-self' )
+ .attr( 'title', mw.msg( 'tux-proofread-translated-by-self' ) )
+ .tipsy( { gravity: 'e', className: 'translate-tipsy' } )
+ );
+ }
+ },
+ /**
+ * Mark this message as proofread.
+ */
+ proofread: function () {
+ var reviews, counter, params,
+ message = this.message,
+ $message = this.$message;
+
+ params = {
+ action: 'translationreview',
+ revision: this.message.properties.revision,
+ };
+
+ if ( !mw.user.isAnon() ) {
+ params.assert = 'user';
+ }
+
+ new mw.Api().postWithToken( 'translationreview', params ).done( function () {
+ $message.find( '.tux-proofread-action' ).addClass( 'accepted' );
+
+ counter = $message.find( '.tux-proofread-count' );
+ reviews = counter.data( 'reviewCount' );
+ counter.text( mw.language.convertNumber( reviews + 1 ) );
+
+ // Update stats
+ $( '.tux-action-bar .tux-statsbar' ).trigger(
+ 'change',
+ [ 'proofread', message.properties.status ]
+ );
+
+ if ( mw.track ) {
+ mw.track( 'ext.translate.event.proofread', message );
+ }
+ } ).fail( function ( errorCode ) {
+ $message.find( '.tux-proofread-action' ).addClass( 'tux-warning' );
+ // In MW 1.24 alpha postWithToken returns token-missing instead of assertuserfailed
+ if ( errorCode === 'assertuserfailed' || errorCode === 'token-missing' ) {
+ alert( mw.msg( 'tux-session-expired' ) );
+ }
+ } );
+ },
+
+ /**
+ * Attach event listeners
+ */
+ listen: function () {
+ var proofread = this;
+
+ this.$message.find( '.tux-proofread-action' ).on( 'click', function () {
+ proofread.proofread();
+ return false;
+ } );
+
+ this.$message.find( '.tux-proofread-edit' ).on( 'click', function () {
+ // Make sure that the tipsy is hidden when going to the editor
+ $( '.translate-tipsy' ).remove();
+ proofread.$message.data( 'translateeditor' ).show();
+
+ return false;
+ } );
+ }
+ };
+
+ /*
+ * proofread PLUGIN DEFINITION
+ */
+ $.fn.proofread = function ( options ) {
+ return this.each( function () {
+ var $this = $( this ),
+ data = $this.data( 'proofread' );
+
+ if ( !data ) {
+ $this.data( 'proofread',
+ ( data = new Proofread( this, options ) )
+ );
+ }
+
+ } );
+ };
+
+ $.fn.proofread.Constructor = Proofread;
+
+}( jQuery, mediaWiki ) );
diff --git a/MLEB/Translate/resources/js/ext.translate.quickedit.js b/MLEB/Translate/resources/js/ext.translate.quickedit.js
new file mode 100644
index 00000000..bc58104b
--- /dev/null
+++ b/MLEB/Translate/resources/js/ext.translate.quickedit.js
@@ -0,0 +1,394 @@
+/**
+ * JavaScript that implements the Ajax translation interface, which was at the
+ * time of writing this probably the biggest usability problem in the extension.
+ * Most importantly, it speeds up translating and keeps the list of translatable
+ * messages open. It also allows multiple translation dialogs, for doing quick
+ * updates to other messages or documentation, or translating multiple languages
+ * simultaneously together with the "In other languages" display included in
+ * translation helpers and implemented by utils/TranslationhHelpers.php.
+ * The form itself is implemented by utils/TranslationEditPage.php, which is
+ * called from Special:Translate/editpage?page=Namespace:pagename.
+ *
+ * TODO list:
+ * * Instead of hc'd onscript, give them a class and use necessary triggers
+ *
+ * @author Niklas Laxström
+ * @copyright Copyright © 2009-2012 Niklas Laxström
+ * @license GPL-2.0+
+ */
+
+(function ( $, mw, undefined ) {
+ 'use strict';
+ var dialogwidth = false,
+ preloads = {};
+
+ mw.translate = mw.translate || {};
+ function MessageCheckUpdater( callback ) {
+ this.act = function () {
+ callback();
+ delete this.timeoutID;
+ };
+
+ this.setup = function () {
+ this.cancel();
+ var self = this;
+ this.timeoutID = window.setTimeout( self.act, 1000 );
+ };
+
+ this.cancel = function () {
+ if ( typeof this.timeoutID === 'number' ) {
+ window.clearTimeout( this.timeoutID );
+ delete this.timeoutID;
+ }
+ };
+ }
+
+ /**
+ * This is JS port same method of TranslateUtils.php
+ */
+ function convertWhiteSpaceToHTML( text ) {
+ return mw.html.escape( text )
+ .replace( /^ /gm, '&#160;' )
+ .replace( / $/gm, '&#160;' )
+ .replace( / {2}/g, '&#160; ' )
+ .replace( /\n/g, '<br />' );
+ }
+
+ function addAccessKeys( dialog ) {
+ var buttons = {
+ a: '.mw-translate-save',
+ s: '.mw-translate-next',
+ d: '.mw-translate-skip',
+ h: '.mw-translate-history'
+ };
+
+ $.each( buttons, function ( key, selector ) {
+ $( selector )
+ .val( function ( i, b ) {
+ return b.replace( / \(.\)$/, '' );
+ } )
+ .removeAttr( 'accesskey' )
+ .attr( 'title', '' );
+
+ dialog.find( selector )
+ .val( function ( i, b ) {
+ return b + ' (_)'.replace( '_', key );
+ } )
+ .attr( 'accesskey', key )
+ .attr( 'title', '[' + mw.util.tooltipAccessKeyPrefix + key + ']' );
+ } );
+ }
+
+ function registerFeatures( callbacks, form, page, group ) {
+ var $identical, textarea, checker;
+
+ // Enable the collapsible element
+ $identical = $( '.mw-identical-title' );
+ if ( $.isFunction( $identical.makeCollapsible ) ) {
+ $identical.makeCollapsible();
+ }
+
+ if ( mw.config.get( 'trlKeys' ) || $( '.tqe-inlineeditable' ).length ) {
+ if ( callbacks.next === undefined ) {
+ form.find( '.mw-translate-next, .mw-translate-skip' ).attr( 'disabled', 'disabled' );
+ } else {
+ form.find( '.mw-translate-next' ).click( function () {
+ if ( callbacks.next ) {
+ callbacks.next();
+ }
+ } );
+ form.find( '.mw-translate-skip' ).click( function () {
+ if ( callbacks.close ) {
+ callbacks.close();
+ }
+ if ( callbacks.next ) {
+ callbacks.next();
+ }
+ } );
+ }
+ } else {
+ form.find( '.mw-translate-next, .mw-translate-skip' )
+ .attr( 'disabled', 'disabled' )
+ .css( 'display', 'none' );
+ }
+ form.find( '.mw-translate-close' ).click( function () {
+ if ( callbacks.close ) {
+ callbacks.close();
+ }
+ } );
+
+ form.find( '.mw-translate-history' ).click( function () {
+ window.open( mw.util.wikiScript( 'index' ) + '?action=history&title=' + form.find( 'input[name=title]' ).val() );
+ return false;
+ } );
+
+ form.find( '.mw-translate-support, .mw-translate-askpermission' ).click( function () {
+ // Can use .data() only with 1.4.3 or newer
+ window.open( $( this ).attr( 'data-load-url' ) );
+ return false;
+ } );
+
+ form.find( 'input, textarea' ).focus( function () {
+ addAccessKeys( form );
+ } );
+
+ form.find( 'input#summary' ).focus( function () {
+ $( this ).css( 'width', '85%' );
+ } );
+
+ textarea = form.find( '.mw-translate-edit-area' );
+ textarea.css( 'display', 'block' );
+ textarea.autosize();
+ textarea[0].focus();
+
+ if ( form.find( '.mw-translate-messagechecks' ) ) {
+ checker = new MessageCheckUpdater( function () {
+ var url = mw.config.get( 'wgScript' ) + '?title=Special:Translate/editpage&suggestions=checks&page=$1&loadgroup=$2';
+ url = url.replace( '$1', encodeURIComponent( page ) ).replace( '$2', encodeURIComponent( group ) );
+ $.post( url, { translation: textarea.val() }, function ( mydata ) {
+ form.find( '.mw-translate-messagechecks' ).replaceWith( mydata );
+ } );
+ } );
+
+ textarea.keyup( function () {
+ checker.setup();
+ } );
+ }
+
+ }
+
+ mw.translate = $.extend( mw.translate, {
+ init: function () {
+ var $inlines, $first, title, group, prev;
+
+ dialogwidth = $( window ).width() * 0.8;
+ $inlines = $( '.tqe-inlineeditable' );
+ $inlines.dblclick( mw.translate.inlineEditor );
+
+ $first = $inlines.first();
+ if ( $first.length ) {
+ title = $first.data( 'title' );
+ group = $first.data( 'group' );
+ mw.translate.loadEditor( null, title, group, $.noop );
+ }
+
+ prev = null;
+ $inlines.each( function () {
+ if ( prev ) {
+ prev.next = this;
+ }
+ prev = this;
+ } );
+ },
+
+ openDialog: function ( page, group ) {
+ var id, dialogElement, dialog, callbacks;
+
+ id = 'jsedit' + page.replace( /[^a-zA-Z0-9_]/g, '_' );
+ dialogElement = $( '#' + id );
+
+ if ( dialogElement.size() > 0 ) {
+ dialogElement.dialog( 'option', 'position', 'top' );
+ dialogElement.dialog( 'open' );
+ return false;
+ }
+
+ dialog = $( '<div>' ).attr( 'id', id ).appendTo( $( 'body' ) );
+
+ callbacks = {};
+ callbacks.close = function () {
+ dialog.dialog( 'close' );
+ };
+ callbacks.next = function () {
+ mw.translate.openNext( page, group );
+ };
+ callbacks.success = function ( text ) {
+ var $td = $( '.tqe-inlineeditable' ).filter( function () {
+ return $( this ).data( 'title' ) === page.replace( '_', ' ' );
+ } );
+ $td
+ .html( convertWhiteSpaceToHTML( text ) )
+ .attr( 'dir', 'auto' ) // (bug 29233) hacky, but better than nothing
+ .removeClass( 'untranslated' )
+ .addClass( 'justtranslated' );
+ };
+ mw.translate.openEditor( dialog, page, group, callbacks );
+
+ dialog.dialog( {
+ bgiframe: true,
+ width: dialogwidth,
+ title: page,
+ position: 'top',
+ resize: function () {
+ $( '#' + id + ' textarea' ).width( '100%' );
+ },
+ resizeStop: function () {
+ dialogwidth = $( '#' + id ).width();
+ }
+ } );
+
+ return false;
+ },
+
+ loadEditor: function ( $target, page, group, callback ) {
+ var id, preload, url, params;
+
+ // Try if it has been cached
+ id = 'preload-' + page.replace( /[^a-zA-Z0-9_]/g, '_' );
+ preload = preloads[id];
+
+ if ( preload !== undefined ) {
+ if ( $target ) {
+ $target.html( preloads[id] );
+ delete preloads[id];
+ }
+ callback();
+ return;
+ }
+
+ // Load the editor into provided target or cache it locally
+ url = mw.util.wikiScript( 'index' );
+ params = {
+ title: 'Special:Translate/editpage',
+ suggestions: 'sync',
+ page: page,
+ loadgroup: group
+ };
+ if ( $target ) {
+ $target.load( url, params, callback );
+ delete preloads[id];
+ } else {
+ $.get( url, params, function ( data ) {
+ preloads[id] = data;
+ } );
+ }
+
+ },
+
+ openEditor: function ( element, page, group, callbacks ) {
+ var $target = $( element ),
+ spinner = $( '<div>' ).attr( 'class', 'mw-ajax-loader' );
+
+ $target.html( $( '<div>' ).attr( 'class', 'mw-ajax-dialog' ).html( spinner ) );
+
+ mw.translate.loadEditor( $target, page, group, function () {
+ if ( callbacks.load ) {
+ callbacks.load( $target );
+ }
+
+ var form = $target.find( 'form' );
+ registerFeatures( callbacks, form, page, group );
+ form.on( 'submit', function () {
+ mw.translateHooks.run( 'beforeSubmit', form );
+ $( this ).ajaxSubmit( {
+ dataType: 'json',
+ success: function ( json ) {
+ mw.translateHooks.run( 'afterSubmit', form );
+ if ( json.error ) {
+ if ( json.error.code === 'emptypage' ) {
+ window.alert( mw.msg( 'api-error-emptypage' ) );
+ } else {
+ window.alert( json.error.info + ' (' + json.error.code + ')' );
+ }
+ } else if ( json.edit.result === 'Failure' ) {
+ window.alert( mw.msg( 'translate-js-save-failed' ) );
+ } else if ( json.edit.result === 'Success' ) {
+ if ( callbacks.close ) {
+ callbacks.close();
+ }
+ if ( callbacks.success ) {
+ callbacks.success( form.find( '.mw-translate-edit-area' ).val() );
+ }
+ } else {
+ window.alert( mw.msg( 'translate-js-save-failed' ) );
+ }
+ }
+ } );
+ return false;
+ } );
+ } );
+ },
+
+ openNext: function ( title, group ) {
+ var messages = mw.config.get( 'trlKeys' ),
+ found = false, key, value;
+
+ for ( key in messages ) {
+ if ( !messages.hasOwnProperty( key ) ) {
+ continue;
+ }
+
+ value = messages[key];
+ if ( found ) {
+ return mw.translate.openDialog( value, group );
+ } else if ( value === title ) {
+ found = true;
+ }
+ }
+ window.alert( mw.msg( 'translate-js-nonext' ) );
+ },
+
+ inlineEditor: function () {
+ var $this, current, page, group, next, callbacks, ntitle, ngroup, sel;
+ $this = $( this );
+
+ if ( $this.hasClass( 'tqe-editor-loaded' ) ) {
+ // Editor is open, do not replace it
+ return;
+ }
+
+ current = $this.html();
+ $this.addClass( 'tqe-editor-loaded' );
+
+ page = $this.data( 'title' );
+ group = $this.data( 'group' );
+ next = $( this.next );
+ callbacks = {};
+
+ callbacks.success = function ( text ) {
+ // Update the cell value with the new translation
+ $this
+ .html( convertWhiteSpaceToHTML( text ) )
+ .attr( 'dir', 'auto' ) // (bug 29233) hacky, but better than nothing
+ .removeClass( 'untranslated' )
+ .addClass( 'justtranslated' );
+ };
+ callbacks.close = function () {
+ $this.html( current );
+ $this.removeClass( 'tqe-editor-loaded' );
+ };
+ callbacks.load = function ( editor ) {
+ var $header = $( '<div class="tqe-fakeheader"></div>' );
+ $header.text( page );
+ $header.append( '<input type=button class="mw-translate-close" value="X" />' );
+
+ $( editor ).find( 'form' ).prepend( $header );
+ };
+ if ( next.length ) {
+ callbacks.next = function () {
+ next.dblclick();
+ };
+ // Preload the next item
+ ntitle = next.data( 'title' );
+ ngroup = next.data( 'group' );
+
+ mw.translate.loadEditor( null, ntitle, ngroup, $.noop );
+ }
+ mw.translate.openEditor( $this, page, group, callbacks );
+
+ // Remove any text selection caused by double clicking
+ sel = window.getSelection ? window.getSelection() : document.selection;
+
+ if ( sel ) {
+ if ( sel.removeAllRanges ) {
+ sel.removeAllRanges();
+ }
+ if ( sel.empty ) {
+ sel.empty();
+ }
+ }
+ }
+ } );
+
+ $( document ).ready( mw.translate.init );
+} )( jQuery, mediaWiki );
diff --git a/MLEB/Translate/resources/js/ext.translate.selecttoinput.js b/MLEB/Translate/resources/js/ext.translate.selecttoinput.js
new file mode 100644
index 00000000..9558ec9e
--- /dev/null
+++ b/MLEB/Translate/resources/js/ext.translate.selecttoinput.js
@@ -0,0 +1,27 @@
+window.appendFromSelect = function ( selectid, targetid ) {
+ 'use strict';
+
+ var select, target, atxt;
+
+ select = document.getElementById( selectid );
+ target = document.getElementById( targetid );
+
+ if ( !target || !select ) {
+ return;
+ }
+
+ atxt = select.options[select.selectedIndex].value;
+
+ if ( !atxt ) {
+ return;
+ }
+
+ /* Ugly hack */
+
+ target.value = target.value.replace( /default/, '' );
+
+ if ( target.value.replace( /[\s\t\n]/ig, '' ) !== '' ) {
+ atxt = ', ' + atxt;
+ }
+ target.value += atxt;
+};
diff --git a/MLEB/Translate/resources/js/ext.translate.special.aggregategroups.js b/MLEB/Translate/resources/js/ext.translate.special.aggregategroups.js
new file mode 100644
index 00000000..e4c1c643
--- /dev/null
+++ b/MLEB/Translate/resources/js/ext.translate.special.aggregategroups.js
@@ -0,0 +1,349 @@
+/*global alert:false */
+
+( function ( $, mw ) {
+ 'use strict';
+
+ function getApiParams( $target ) {
+ return {
+ action: 'aggregategroups',
+ token: $( '#token' ).val(),
+ aggregategroup: $target.parents( '.mw-tpa-group' ).data( 'groupid' ),
+ format: 'json'
+ };
+ }
+
+ function dissociate( event ) {
+ var params,
+ $target = $( event.target );
+
+ function successFunction() {
+ $target.parent( 'li' ).remove();
+ }
+
+ params = $.extend( getApiParams( $target ), {
+ 'do': 'dissociate',
+ group: $target.data( 'groupid' )
+ } );
+ new mw.Api().post( params ).done( successFunction ).fail( function ( code, data ) {
+ window.alert( data.error && data.error.info );
+ } );
+ }
+
+ function associate( event, resp ) {
+ var successFunction, params, subgroupId,
+ $target = $( event.target ),
+ $parent = $target.parents( '.mw-tpa-group' ),
+ parentId = $parent.data( 'id' ),
+ subgroupName = $parent.children( '.tp-group-input' ).val();
+
+ successFunction = function () {
+ var aAttr, $a, spanAttr, $span, $ol;
+
+ aAttr = {
+ href: mw.util.getUrl( subgroupName ),
+ title: subgroupName
+ };
+
+ $a = $( '<a>', aAttr ).text( subgroupName );
+
+ spanAttr = {
+ 'class': 'tp-aggregate-remove-button',
+ 'data-groupid': subgroupId
+ };
+
+ $span = $( '<span>', spanAttr );
+
+ $ol = $( '#mw-tpa-grouplist-' + parentId );
+ $ol.append( $( '<li>' ).append( $a, $span ) );
+ $span.click( dissociate );
+ $parent.children( '.tp-group-input' ).val( '' );
+ };
+
+ // Get the label for the value and make API request if valid
+ subgroupId = '';
+ $.each( resp, function( key, value ) {
+ if ( subgroupName === value.label ) {
+ subgroupId = value.id;
+ }
+ } );
+
+ if ( subgroupId ) {
+ params = $.extend( getApiParams( $target ), {
+ 'do': 'associate',
+ group: subgroupId
+ } );
+ new mw.Api().post( params ).done( successFunction ).fail( function ( code, data ) {
+ window.alert( data.error && data.error.info );
+ } );
+ } else {
+ alert( mw.msg( 'tpt-invalid-group' ) );
+ }
+ }
+
+ function removeGroup( event ) {
+ var params, $target = $( event.target );
+
+ function successFunction() {
+ $( event.target ).parents( '.mw-tpa-group' ).remove();
+ }
+
+ // XXX: 'confirm' is nonstandard.
+ if ( $.isFunction( window.confirm ) &&
+ window.confirm( mw.msg( 'tpt-aggregategroup-remove-confirm' ) ) ) {
+ params = $.extend( getApiParams( $target ), {
+ 'do': 'remove'
+ } );
+ new mw.Api().post( params ).done( successFunction ).fail( function ( code, data ) {
+ window.alert( data.error && data.error.info );
+ } );
+ }
+ }
+
+ function editGroup( event ) {
+ var $target = $( event.target ),
+ $parent = $target.closest( '.mw-tpa-group' ),
+ aggregateGroupId = $parent.data( 'groupid' ),
+ $displayGroup = $parent.children( '.tp-display-group' ),
+ $editGroup = $parent.children( '.tp-edit-group' ),
+ successFunction,
+ params,
+ aggGroupNameInputName = $editGroup.children( 'input.tp-aggregategroup-edit-name' ),
+ aggGroupNameInputDesc = $editGroup.children( 'input.tp-aggregategroup-edit-description' ),
+ aggregateGroupName = aggGroupNameInputName.val(),
+ aggregateGroupDesc = aggGroupNameInputDesc.val(),
+ api = new mw.Api();
+
+ successFunction = function () {
+ // Replace the text by the new text without altering the other 2 span tags
+ $displayGroup.children( '.tp-name' ).contents().filter( function() {
+ return this.nodeType === 3;
+ } ).replaceWith( aggregateGroupName );
+ $displayGroup.children( '.tp-desc' ).text( aggregateGroupDesc );
+ $displayGroup.removeClass( 'hidden' );
+ $editGroup.addClass( 'hidden' );
+ };
+
+ params = {
+ action: 'aggregategroups',
+ 'do': 'update',
+ token: $( '#token' ).val(),
+ groupname: aggregateGroupName,
+ groupdescription: aggregateGroupDesc,
+ aggregategroup: aggregateGroupId,
+ format: 'json'
+ };
+
+ api.post( params ).done( successFunction ).fail( function ( code, data ) {
+ window.alert( data.error.info );
+ } );
+ }
+
+ function cancelEditGroup( event ) {
+ var $parent = $( event.target ).closest( '.mw-tpa-group' );
+
+ $parent.children( '.tp-display-group' ).removeClass( 'hidden' );
+ $parent.children( '.tp-edit-group' ).addClass( 'hidden' );
+ }
+
+ $( document ).ready( function () {
+ var excludeFunction, autocompleteFunction,
+ api = new mw.Api(),
+ exclude = [], resp, groups=[],
+ $input = $( '.tp-group-input' );
+
+ excludeFunction = function( event ) {
+ exclude = [];
+
+ if ( groups.length === 0 ) {
+ // Get list of subgroups using API
+ api.get( {
+ action: 'query',
+ format: 'json',
+ meta: 'messagegroups',
+ mgformat: 'tree',
+ mgroot: 'all',
+ mgprop: 'label|id'
+ } ).done( function( result ) {
+ groups = result.query.messagegroups;
+ } );
+ }
+
+ // Exclude groups already present
+ $( event.target ).closest( '.mw-tpa-group' ).find( 'li' ).each(
+ function ( key, data ) {
+ // Need to trim to remove the trailing whitespace
+ // Can't use innerText not supported by Firefox
+ var groupName = $( data ).text();
+ groupName = $.trim( groupName );
+ exclude.push( groupName );
+ }
+ );
+ };
+
+ autocompleteFunction = function( request, response ) {
+ resp = [];
+
+ // Allow case insensitive search
+ var inp = new RegExp( request.term, 'i' );
+
+ $.each( groups, function ( key, value ) {
+ if ( value.label.match( inp ) && exclude.indexOf( value.label ) === -1 ) {
+ resp.push( value );
+ }
+ } );
+ response( resp );
+ };
+
+ $input.focus( excludeFunction );
+ $input.autocomplete( {
+ source: autocompleteFunction,
+ minLength: 0
+ } ).focus( function () {
+ // Enable showing all groups when nothing is entered
+ $( this ).autocomplete( 'search', $( this ).val() );
+ } );
+
+ $( '.tp-aggregate-add-button' ).click( function( event ) {
+ associate( event, resp );
+ } );
+ $( '.tp-aggregate-remove-button' ).click( dissociate );
+ $( '.tp-aggregate-remove-ag-button' ).click( removeGroup );
+ $( '.tp-aggregategroup-update' ).click( editGroup );
+ $( '.tp-aggregategroup-update-cancel' ).click( cancelEditGroup );
+
+ $( 'a.tpt-add-new-group' ).on( 'click', function ( event ) {
+ $( 'div.tpt-add-new-group' ).removeClass( 'hidden' );
+ // Link has anchor which goes top of the page
+ event.preventDefault();
+ } );
+
+ $( '.tp-aggregate-edit-ag-button' ).on( 'click', function ( event ) {
+ var $parent = $( event.target ).closest( '.mw-tpa-group' );
+
+ $parent.children( '.tp-display-group' ).addClass( 'hidden' );
+ $parent.children( '.tp-edit-group' ).removeClass( 'hidden' );
+ } );
+
+ $( '#tpt-aggregategroups-save' ).on( 'click', function () {
+ var successFunction, params,
+ aggGroupNameInputName = $( 'input.tp-aggregategroup-add-name' ),
+ aggGroupNameInputDesc = $( 'input.tp-aggregategroup-add-description' ),
+ aggregateGroupName = aggGroupNameInputName.val(),
+ aggregateGroupDesc = aggGroupNameInputDesc.val();
+
+ // Empty the fields. If they are not emptied, then when another group
+ // is added, the values will appear again. Bug 36296.
+ aggGroupNameInputName.val( '' );
+ aggGroupNameInputDesc.val( '' );
+
+ successFunction = function ( data ) {
+ var $removeSpan, $editSpan, $displayHeader, $div, $groupSelector, $addButton,
+ $cancelButton, $divDisplay, $divEdit, $saveButton,
+ aggregateGroupId = data.aggregategroups.aggregategroupId;
+
+ $removeSpan = $( '<span>' ).attr( 'id', aggregateGroupId )
+ .addClass( 'tp-aggregate-remove-ag-button' );
+ $editSpan = $( '<span>' ).attr( 'id', aggregateGroupId )
+ .addClass( 'tp-aggregate-edit-ag-button' );
+ // Prints the name and the two spans in a single row
+ $displayHeader = $( '<h2>' ).addClass( 'tp-name' ).text( aggregateGroupName )
+ .append( $editSpan, $removeSpan );
+
+ $divDisplay = $( '<div>' ).addClass( 'tp-display-group' )
+ .append( $displayHeader )
+ .append( $( '<p>' ).addClass( 'tp-desc' ).text( aggregateGroupDesc ) );
+
+ $saveButton = ( $( '<input>' )
+ .attr( {
+ 'type': 'button',
+ 'class': 'tp-aggregategroup-update'
+ } )
+ .val( mw.msg( 'tpt-aggregategroup-update' ) )
+ );
+ $cancelButton = ( $( '<input>' )
+ .attr( {
+ 'type': 'button',
+ 'class': 'tp-aggregategroup-update-cancel'
+ } )
+ .val( mw.msg( 'tpt-aggregategroup-update-cancel' ) )
+ );
+ $divEdit = $( '<div>' )
+ .addClass( 'tp-edit-group hidden' )
+ .append( $( '<label>' )
+ .text( mw.msg( 'tpt-aggregategroup-edit-name' ) ) )
+ .append( $( '<input>' )
+ .attr( {
+ 'class': 'tp-aggregategroup-edit-name',
+ 'id': 'tp-agg-name'
+ } )
+ .val( aggregateGroupName )
+ )
+ .append( $( '<br /><label>' )
+ .text( mw.msg( 'tpt-aggregategroup-edit-description' ) ) )
+ .append( $( '<input>' )
+ .attr( {
+ 'class': 'tp-aggregategroup-edit-description',
+ 'id': 'tp-agg-desc'
+ } )
+ .val( aggregateGroupDesc )
+ )
+ .append( $saveButton, $cancelButton );
+
+ $div = $( '<div>' ).addClass( 'mw-tpa-group' )
+ .append( $divDisplay, $divEdit )
+ .append( $( '<ol id=\'mw-tpa-grouplist-' + aggregateGroupId + '\'>' ) );
+
+ $div.data( 'groupid', aggregateGroupId );
+ $div.data( 'id', aggregateGroupId );
+
+
+ $groupSelector = $( '<input>' ).attr( {
+ 'type': 'text' ,
+ 'class': 'tp-group-input'
+ } );
+ $groupSelector.focus( excludeFunction );
+ $groupSelector.autocomplete( {
+ source: autocompleteFunction,
+ minLength: 0
+ } ).focus( function () {
+ // Enable showing all groups when nothing is entered
+ $( this ).autocomplete( 'search', $( this ).val() );
+ } );
+ $addButton = $( '<input>' )
+ .attr( {
+ 'type': 'button' ,
+ 'class': 'tp-aggregate-add-button',
+ 'id': aggregateGroupId
+ } )
+ .val( mw.msg( 'tpt-aggregategroup-add' ) );
+ $div.append( $groupSelector, $addButton );
+ $addButton.click( function( event ) {
+ associate( event, resp );
+ } );
+ $editSpan.on( 'click', function ( event ) {
+ var $parent = $( event.target ).closest( '.mw-tpa-group' );
+ $parent.children( '.tp-display-group' ).addClass( 'hidden' );
+ $parent.children( '.tp-edit-group' ).removeClass( 'hidden' );
+ } );
+
+ $saveButton.click( editGroup );
+ $cancelButton.click( cancelEditGroup );
+ $removeSpan.click( removeGroup );
+ $( 'div.tpt-add-new-group' ).addClass( 'hidden' );
+ $( 'a.tpt-add-new-group' ).before( $div );
+ };
+
+ params = {
+ action: 'aggregategroups',
+ 'do': 'add',
+ token: $( '#token' ).val(),
+ groupname: aggregateGroupName,
+ groupdescription: aggregateGroupDesc,
+ format: 'json'
+ };
+ new mw.Api().post( params ).done( successFunction ).fail( function ( code, data ) {
+ window.alert( data.error && data.error.info );
+ } );
+ } );
+ } );
+} ( jQuery, mediaWiki ) );
diff --git a/MLEB/Translate/resources/js/ext.translate.special.importtranslations.js b/MLEB/Translate/resources/js/ext.translate.special.importtranslations.js
new file mode 100644
index 00000000..99a34bad
--- /dev/null
+++ b/MLEB/Translate/resources/js/ext.translate.special.importtranslations.js
@@ -0,0 +1,20 @@
+( function ( $ ) {
+ 'use strict';
+
+ function buttoner ( $input ) {
+ if ( $input.val ) {
+ $( 'input[type=submit]' ).prop( 'disabled', false );
+ } else {
+ $( 'input[type=submit]' ).prop( 'disabled', true );
+ }
+ }
+
+ $( document ).ready( function ( ) {
+ var $input = $( '#mw-translate-up-local-input' );
+ $input.on( 'change', function () {
+ buttoner( $input );
+ } );
+
+ buttoner( $input );
+ } );
+} ( jQuery ) );
diff --git a/MLEB/Translate/resources/js/ext.translate.special.languagestats.js b/MLEB/Translate/resources/js/ext.translate.special.languagestats.js
new file mode 100644
index 00000000..0ec2a975
--- /dev/null
+++ b/MLEB/Translate/resources/js/ext.translate.special.languagestats.js
@@ -0,0 +1,156 @@
+/**
+ * Collapsing script for Special:LanguageStats in MediaWiki Extension:Translate
+ * @author Krinkle <krinklemail (at) gmail (dot) com>
+ * @author Niklas Laxström, 2012
+ * @created January 3, 2011
+ * @license GPL-2.0+, CC-BY-SA-3.0
+ */
+/*global mw:false*/
+jQuery( document ).ready( function ( $ ) {
+ 'use strict';
+
+ var $allChildRows, $allTogglesCache, $toggleAllButton,
+ $translateTable = $( '.mw-sp-translate-table' ),
+ $metaRows = $( 'tr.AggregateMessageGroup', $translateTable );
+
+ // Quick return
+ if ( !$metaRows.size() ) {
+ return;
+ }
+
+ $metaRows.each( function () {
+ var $toggler,
+ $parent = $( this ),
+ thisGroupId = $parent.attr( 'data-groupid' ),
+ $children = $( 'tr[data-parentgroup="' + thisGroupId + '"]', $translateTable );
+
+ // Only do the collapse stuff if this Meta-group actually has children on this page
+ if ( !$children.size() ) {
+ return;
+ }
+
+ // Build toggle link
+ $toggler = $( '<span class="groupexpander collapsed">[</span>' )
+ .append( $( '<a href="#"></a>' )
+ .text( mw.msg( 'translate-langstats-expand' ) ) )
+ .append( ']' )
+ .click( function ( e ) {
+ var $el = $( this );
+ // Switch the state and toggle the rows
+ if ( $el.hasClass( 'collapsed' ) ) {
+ $children.fadeIn().trigger( 'show' );
+ $el.removeClass( 'collapsed' ).addClass( 'expanded' );
+ $el.find( '> a' ).text( mw.msg( 'translate-langstats-collapse' ) );
+ } else {
+ $children.fadeOut().trigger( 'hide' );
+ $el.addClass( 'collapsed' ).removeClass( 'expanded' );
+ $el.find( '> a' ).text( mw.msg( 'translate-langstats-expand' ) );
+ }
+
+ e.preventDefault();
+ } );
+
+ // Add the toggle link to the first cell of the meta group table-row
+ $parent.find( ' > td:first' ).append( $toggler );
+
+ // Handle hide/show recursively, so that collapsing parent group
+ // hides all sub groups regardless of nesting level
+ $parent.on( 'hide show', function ( event ) {
+ // Reuse $toggle, $parent and $children from parent scope
+ if ( $toggler.hasClass( 'expanded' ) ) {
+ $children.trigger( event.type )[event.type]();
+ }
+ } );
+ } );
+
+ // Create, bind and append the toggle-all button
+ $allChildRows = $( 'tr[data-parentgroup]', $translateTable );
+ $allTogglesCache = null;
+ $toggleAllButton = $( '<span class="collapsed">[</span>' )
+ .append( $( '<a href="#"></a>' )
+ .text( mw.msg( 'translate-langstats-expandall' ) ) )
+ .append( ']' )
+ .click( function ( e ) {
+ var $el = $( this ),
+ $allToggles = !!$allTogglesCache ? $allTogglesCache : $( '.groupexpander', $translateTable );
+
+ // Switch the state and toggle the rows
+ // and update the local toggles too
+ if ( $el.hasClass( 'collapsed' ) ) {
+ $allChildRows.show();
+ $el.add( $allToggles ).removeClass( 'collapsed' ).addClass( 'expanded' );
+ $el.find( '> a' ).text( mw.msg( 'translate-langstats-collapseall' ) );
+ $allToggles.find( '> a' ).text( mw.msg( 'translate-langstats-collapse' ) );
+ } else {
+ $allChildRows.hide();
+ $el.add( $allToggles ).addClass( 'collapsed' ).removeClass( 'expanded' );
+ $el.find( '> a' ).text( mw.msg( 'translate-langstats-expandall' ) );
+ $allToggles.find( '> a' ).text( mw.msg( 'translate-langstats-expand' ) );
+ }
+
+ e.preventDefault();
+ } );
+
+ // Initially hide them
+ $allChildRows.hide();
+
+ // Add the toggle-all button above the table
+ $( '<p class="groupexpander-all"></p>' ).append( $toggleAllButton ).insertBefore( $translateTable );
+} );
+
+// When hovering a row, adjust brightness of the last two custom-colored cells as well
+// See also translate.langstats.css for the highlighting for the other normal rows
+mw.loader.using( 'jquery.colorUtil', function () {
+ 'use strict';
+ jQuery( document ).ready( function ( $ ) {
+ // It is possible that the first event we get is hover-out, in
+ // which case the colors will get stuck wrong. Ignore it.
+ var seenHoverIn = false;
+
+ $( '.mw-sp-translate-table.wikitable tr' ).hover( function () {
+ seenHoverIn = true;
+ $( '> td.hover-color', this )
+ // 30% more brightness
+ .css( 'background-color', function ( i, val ) {
+ // @codingStandardsIgnoreStart Bug in CodeSniffer?
+ return $.colorUtil.getColorBrightness( val, +0.3 );
+ // codingStandardsIgnoreEnd
+ } );
+ }, function () {
+ if ( !seenHoverIn ) {
+ return;
+ }
+ $( '> td.hover-color', this )
+ // 30% less brightness
+ .css( 'background-color', function ( i, val ) {
+ return $.colorUtil.getColorBrightness( val, -0.3 );
+ } );
+ } );
+ } );
+} );
+
+(function ( mw, $ ) {
+ 'use strict';
+ $( document ).ready( function () {
+ var index,
+ sort = {},
+ re = /#sortable:(\d+)=(asc|desc)/,
+ match = re.exec( window.location.hash ),
+ $tables = $( '.statstable' );
+
+ if ( match ) {
+ index = parseInt( match[1], 10 );
+ sort[index] = match[2];
+ }
+ $tables.tablesorter( {sortList: [sort]} );
+
+ $tables.on( 'sortEnd.tablesorter', function () {
+ var $table = $( this );
+ $table.find( '.headerSortDown, .headerSortUp' ).each( function () {
+ var index = $table.find( 'th' ).index( $( this ) ),
+ dir = $( this ).hasClass( 'headerSortUp' ) ? 'desc' : 'asc';
+ window.location.hash = 'sortable:' + index + '=' + dir;
+ } );
+ } );
+ } );
+}( mediaWiki, jQuery ) );
diff --git a/MLEB/Translate/resources/js/ext.translate.special.managetranslatorsandbox.js b/MLEB/Translate/resources/js/ext.translate.special.managetranslatorsandbox.js
new file mode 100644
index 00000000..3607ea98
--- /dev/null
+++ b/MLEB/Translate/resources/js/ext.translate.special.managetranslatorsandbox.js
@@ -0,0 +1,742 @@
+/**
+ * JS for special page.
+ * @author Niklas Laxström
+ * @author Sucheta Ghoshal
+ * @author Amir E. Aharoni
+ * @author Pau Giner
+ * @license GPL-2.0+
+ */
+
+( function ( $, mw ) {
+ 'use strict';
+
+ var delay;
+
+ /**
+ * A callback for sorting translations
+ * @param {object} translationA Object loaded from translation stash
+ * @param {object} translationB Object loaded from translation stash
+ * @return {number} String comparison of language codes
+ */
+ function sortTranslationsByLanguage( translationA, translationB ) {
+ var a = translationA.title.split( '/' ).pop(),
+ b = translationB.title.split( '/' ).pop();
+
+ return a.localeCompare( b );
+ }
+
+ function doApiAction( options ) {
+ var api = new mw.Api();
+
+ options = $.extend( {}, { action: 'translatesandbox' }, options );
+
+ return api.postWithToken( 'translatesandbox', options )
+ .promise();
+ }
+
+ function removeSelectedRequests() {
+ var $nextRequest,
+ $selectedRequests = $( '.request-selector:checked' );
+
+ $nextRequest = $selectedRequests
+ .first() // First selected request
+ .closest( '.request' ) // The request corresponds that checkbox
+ .prevAll( ':not(.hide)' ) // Go back till a non-hidden request
+ .first(); // The above selecter gives list from bottom to top. Select the bottom one.
+
+ $selectedRequests.closest( '.request' ).remove();
+
+ updateRequestCount();
+
+ if ( !$nextRequest.length ) {
+ // If there's no request above the first checked request,
+ // try to get the first request in the column
+ $nextRequest = $( '.requests .request:not(.hide)' ).first();
+ }
+
+ if ( $nextRequest.length ) {
+ $nextRequest.click();
+ updateSelectedIndicator( 1 );
+ } else {
+ updateSelectedIndicator( 0 );
+ }
+ }
+
+ /**
+ * Display the request details when user clicks on a request item
+ *
+ * @param {Object} request The request data set from backend on request items
+ */
+ function displayRequestDetails( request ) {
+ var storage, reminders,
+ $reminderStatus = $( '<span>' ).addClass( 'reminder-status' ),
+ $detailsPane = $( '.details.pane' );
+
+ reminders = request.reminders ? request.reminders.split( '|' ) : [];
+
+ if ( request.reminderscount ) {
+ $reminderStatus.text( mw.msg(
+ 'tsb-reminder-sent',
+ request.reminderscount,
+ request.lastreminder
+ ) );
+ }
+
+ $detailsPane.empty().append(
+ $( '<div>' )
+ .addClass( 'tsb-header row' )
+ .text( request.username ),
+ $( '<div>' )
+ .addClass( 'reminder-email row' )
+ .append(
+ $( '<span>' ).text( request.email ),
+ $( '<a>' )
+ .prop( 'href', '#' )
+ .addClass( 'send-reminder link' )
+ .text( mw.msg( 'tsb-reminder-link-text' ) )
+ .on( 'click', function ( e ) {
+ e.preventDefault();
+
+ $reminderStatus
+ .text( mw.msg( 'tsb-reminder-sending' ) );
+
+ doApiAction( {
+ 'do': 'remind',
+ userid: request.userid
+ } ).done( function () {
+ $reminderStatus.text( mw.msg( 'tsb-reminder-sent-new' ) );
+ } ).fail( function () {
+ $reminderStatus.text( mw.msg( 'tsb-reminder-failed' ) );
+ } );
+ } ),
+ $reminderStatus
+ ),
+ $( '<div>' )
+ .addClass( 'languages row autonym' ),
+ $( '<div>' )
+ .addClass( 'signup-comment row' ),
+ $( '<div>' )
+ .addClass( 'actions row' )
+ .append(
+ $( '<button>' )
+ .addClass( 'accept primary green button' )
+ .text( mw.msg( 'tsb-accept-button-label' ) )
+ .on( 'click', function () {
+ window.tsbUpdatingUsers = true;
+
+ doApiAction( {
+ userid: request.userid,
+ 'do': 'promote'
+ } ).done( function () {
+ removeSelectedRequests();
+
+ window.tsbUpdatingUsers = false;
+ } );
+ } ),
+ $( '<button>' )
+ .addClass( 'reject destructive button' )
+ .text( mw.msg( 'tsb-reject-button-label' ) )
+ .on( 'click', function () {
+ window.tsbUpdatingUsers = true;
+
+ doApiAction( {
+ userid: request.userid,
+ 'do': 'delete'
+ } ).done( function () {
+ removeSelectedRequests();
+
+ window.tsbUpdatingUsers = false;
+ } );
+ } )
+ ),
+ $( '<div>' )
+ .addClass( 'translations row' )
+ );
+
+ if ( request.languagepreferences ) {
+ if ( request.languagepreferences.languages ) {
+ $.each( request.languagepreferences.languages, function ( index, language ) {
+ $detailsPane.find( '.languages' ).append(
+ $( '<span>' )
+ .prop( {
+ dir: $.uls.data.getDir( language ),
+ lang: language
+ } )
+ .text( $.uls.data.getAutonym( language ) )
+ );
+ } );
+ }
+
+ if ( request.languagepreferences.comment ) {
+ $detailsPane.find( '.signup-comment' ).append(
+ $( '<div>' )
+ .addClass( 'signup-comment-label' )
+ .text( mw.msg( 'tsb-user-posted-a-comment' ) ),
+ $( '<div>' )
+ .addClass( 'signup-comment-text' )
+ .text( request.languagepreferences.comment )
+ );
+ }
+ }
+
+ // @todo: move higher in the tree
+ storage = new mw.translate.TranslationStashStorage();
+ storage.getUserTranslations( request.username ).done( showTranslations );
+ }
+
+ function showTranslations( translations ) {
+ var gender,
+ $target = $( '.translations' );
+
+ $target.empty();
+
+ // Display a message if the user didn't make any translations
+ if ( !translations.translationstash.translations.length ) {
+ $target.append(
+ $( '<div>' )
+ .addClass( 'tsb-details-no-translations' )
+ .text( mw.msg( 'tsb-didnt-make-any-translations' ) )
+ );
+
+ return;
+ }
+
+ gender = $( '.requests-list .request.selected' ).data( 'data' ).gender;
+ $target.append(
+ $( '<div>' )
+ .addClass( 'row title' )
+ .append(
+ $( '<div>' )
+ .text( mw.msg( 'tsb-translations-source' ) )
+ .addClass( 'four columns' ),
+ $( '<div>' )
+ .text( mw.msg( 'tsb-translations-user', gender ) )
+ .addClass( 'four columns' ),
+ $( '<div>' )
+ .text( mw.msg( 'tsb-translations-current' ) )
+ .addClass( 'four columns' )
+ )
+ );
+
+ translations.translationstash.translations.sort( sortTranslationsByLanguage );
+ $.each( translations.translationstash.translations, function( index, translation ) {
+ showTranslation( translation );
+ } );
+ }
+
+ function showTranslation( translation ) {
+ var $target = $( '.translations' ),
+ translationLang = translation.title.split( '/' ).pop();
+
+ $target.append( $( '<div>' )
+ .addClass( 'row' )
+ .append(
+ $( '<div>' )
+ .addClass( 'four columns source' )
+ .text( translation.definition ),
+ $( '<div>' )
+ .addClass( 'four columns translation' )
+ .append(
+ $( '<div>' ).text( translation.translation ),
+ $( '<div>' )
+ .addClass( 'info autonym' )
+ .prop( {
+ dir: $.uls.data.getDir( translationLang ),
+ lang: translationLang
+ } )
+ .text(
+ $.uls.data.getAutonym( translationLang )
+ )
+ ),
+ $( '<div>' )
+ .addClass( 'four columns comparison' )
+ .append(
+ $( '<div>' ).text( translation.comparison || '' ),
+ $( '<div>' )
+ .addClass( 'info' )
+ .text( translation.title )
+ )
+ )
+ );
+ }
+
+ /**
+ * Display when multiple requests are checked
+ */
+ function displayOnMultipleSelection() {
+ var selectedUserIDs = $( '.request-selector:checked' ).map( function ( i, checkedBox ) {
+ return $( checkedBox ).parents( 'div.request' ).data( 'data' ).userid;
+ } );
+
+ selectedUserIDs = selectedUserIDs.toArray().join( '|' );
+
+ $( '.details.pane' ).empty().append(
+ $( '<div>' )
+ .addClass( 'tsb-header row' ),
+ $( '<div>' )
+ .addClass( 'actions row' )
+ .append(
+ $( '<button>' )
+ .addClass( 'accept-all primary green button' )
+ .text( mw.msg( 'tsb-accept-all-button-label' ) )
+ .on( 'click', function () {
+ window.tsbUpdatingUsers = true;
+
+ doApiAction( {
+ userid: selectedUserIDs,
+ 'do': 'promote'
+ } ).done( function () {
+ removeSelectedRequests();
+
+ window.tsbUpdatingUsers = false;
+ } );
+ } ),
+ $( '<button>' )
+ .addClass( 'reject-all destructive button' )
+ .text( mw.msg( 'tsb-reject-all-button-label' ) )
+ .on( 'click', function () {
+ window.tsbUpdatingUsers = true;
+
+ doApiAction( {
+ userid: selectedUserIDs,
+ 'do': 'delete'
+ } ).done( function () {
+ removeSelectedRequests();
+
+ window.tsbUpdatingUsers = false;
+ } );
+ } )
+ )
+ );
+ }
+
+ /**
+ * Updates the counter of the selected users.
+ * @param {number} count The number of selected users
+ */
+ function updateSelectedIndicator( count ) {
+ var text = mw.msg( 'tsb-selected-count', mw.language.convertNumber( count ) );
+
+ $( '.requests.pane .request-footer .selected-counter' ).text( text );
+ if ( count > 1 ) {
+ $( '.details.pane .tsb-header' ).text( text );
+ }
+ }
+
+ /**
+ * Returns older requests with the same number of translations.
+ * @return {jQuery} Older requests
+ */
+ function getOlderRequests() {
+ var $lastSelectedRequest = $( '.row.request.selected' ).last(),
+ currentTranslationCount = $lastSelectedRequest.data( 'data' ).translations;
+
+ return $lastSelectedRequest.nextAll( ':not(.hide)' ).filter( function () {
+ return ( $( this ).data( 'data' ).translations === currentTranslationCount );
+ } );
+ }
+
+ /**
+ * Updates the number of older requests with the same number
+ * of translations at the link in the bottom of the requests row
+ * or hides that link if there are no such requests.
+ */
+ function indicateOlderRequests() {
+ var oldRequestsCount, oldRequestsCountString,
+ $olderRequests = getOlderRequests(),
+ $olderRequestsIndicator = $( '.older-requests-indicator' );
+
+ oldRequestsCount = $olderRequests.length;
+ oldRequestsCountString = mw.language.convertNumber( oldRequestsCount );
+
+ if ( oldRequestsCount ) {
+ $olderRequestsIndicator
+ .text( mw.msg( 'tsb-older-requests', oldRequestsCountString ) )
+ .removeClass( 'hide' );
+ } else {
+ $olderRequestsIndicator
+ .addClass( 'hide' );
+ }
+ }
+
+ /**
+ * Updates the number of requests.
+ */
+ function updateRequestCount() {
+ var $requests = $( '.requests-list .request' ),
+ visibleRequestsCount = $requests.filter( ':not(.hide)' ).length;
+
+ $( '.request-count' ).text(
+ mw.msg( 'tsb-request-count', mw.language.convertNumber( visibleRequestsCount ) )
+ );
+
+ if ( $requests.length === 0 ) {
+ $( '.details.pane' )
+ .empty()
+ .append(
+ $( '<div>' )
+ .addClass( 'tsb-header row' )
+ .text( mw.msg( 'tsb-no-requests-from-new-users' ) )
+ );
+ }
+ }
+
+ /**
+ * Sets the height of the panes to the window height.
+ */
+ function setPanesHeight() {
+ var $detailsPane = $( '.details.pane' ),
+ $requestsPane = $( '.requests.pane' ),
+ detailsHeight = $( window ).height() - $detailsPane.offset().top,
+ requestsHeight = detailsHeight -
+ $requestsPane.find( '.request-footer' ).height() -
+ $requestsPane.find( '.request-header' ).height();
+
+ $detailsPane.css( 'max-height', detailsHeight );
+ $requestsPane.find( '.requests-list' ).css( 'max-height', requestsHeight );
+ }
+
+ function selectAllRequests() {
+ var selectedCount,
+ $requestCheckboxes = $( '.request-selector' ),
+ $detailsPane = $( '.details.pane' ),
+ $selectAll = $( '.request-selector-all' ),
+ $requestRows = $( '.requests .request' ),
+ selectAllChecked = $selectAll.prop( 'checked' ),
+ $visibleRows = $requestRows.not( '.hide' );
+
+ $visibleRows.each( function ( index, row ) {
+ $( row ).find( '.request-selector' ).prop( {
+ checked: selectAllChecked,
+ disabled: false
+ } );
+ } );
+
+ if ( selectAllChecked ) {
+ displayOnMultipleSelection();
+ $visibleRows.addClass( 'selected' );
+ selectedCount = $requestCheckboxes.filter( ':checked' ).length;
+ } else {
+ $detailsPane.empty();
+ $requestRows.removeClass( 'selected' );
+ selectedCount = 0;
+ }
+
+ updateSelectedIndicator( selectedCount );
+ indicateOlderRequests();
+ }
+
+ /**
+ * Handle click on request row
+ * @param {jQuery.Event} e
+ */
+ function onSelectRequest( e ) {
+ var $requestRow = $( e.target ).closest( '.request'),
+ $requestRows = $( '.requests .request' ),
+ $selectAll = $( '.request-selector-all' );
+
+ displayRequestDetails( $requestRow.data( 'data' ) );
+
+ // Clicking a row makes only that row selected and unselects all other rows
+ $requestRows.each( function ( i, row ) {
+ var $row = $( row );
+
+ if ( row === $requestRow[0] ) {
+ $row.addClass( 'selected' )
+ .find( '.request-selector' ).prop( {
+ checked: true,
+ disabled: true
+ } );
+ } else {
+ $row.removeClass( 'selected' )
+ .find( '.request-selector' ).prop( {
+ checked: false,
+ disabled: false
+ } );
+ }
+ } );
+
+ $selectAll.prop( 'indeterminate', true );
+
+ updateSelectedIndicator( 1 );
+ indicateOlderRequests();
+ }
+
+ /**
+ * Event handler for request checkbox selection
+ * @param {jQuery.Event} e
+ */
+ function requestSelectHandler( e ) {
+ var checkedCount, $checkedBoxes,
+ request = e.target,
+ $detailsPane = $( '.details.pane' ),
+ $requestCheckboxes = $( '.request-selector' ),
+ $selectAll = $( '.request-selector-all' ),
+ $thisRequestRow = $( request ).parents( 'div.request' );
+
+ // Uncheck the rows that were selected by clicking the row
+ $requestCheckboxes.filter( ':disabled' ).prop( 'disabled', false );
+
+ if ( request.checked ) {
+ $thisRequestRow.addClass( 'selected' );
+ } else {
+ $thisRequestRow.removeClass( 'selected' );
+ }
+
+ $checkedBoxes = $requestCheckboxes.filter( ':checked' );
+ checkedCount = $checkedBoxes.length;
+
+ if ( checkedCount === $requestCheckboxes.length ) {
+ // All boxes are selected
+ $selectAll.prop( {
+ checked: true,
+ indeterminate: false
+ } );
+
+ displayOnMultipleSelection();
+ } else if ( checkedCount === 0 ) {
+ // No boxes are selected
+ $selectAll.prop( {
+ checked: false,
+ indeterminate: false
+ } );
+
+ $detailsPane.empty();
+ } else if ( checkedCount === 1 ) {
+ $selectAll.prop( {
+ checked: false,
+ indeterminate: true
+ } );
+
+ $checkedBoxes.prop( 'disabled', true );
+
+ // Here we know that only one checkbox is selected,
+ // so it's OK to query the data from it
+ displayRequestDetails( $checkedBoxes.parents( 'div.request' ).data( 'data' ) );
+ } else {
+ $selectAll.prop( {
+ checked: false,
+ indeterminate: true
+ } );
+
+ displayOnMultipleSelection();
+ }
+
+ updateSelectedIndicator( checkedCount );
+ indicateOlderRequests();
+
+ e.stopPropagation();
+ }
+
+ /**
+ * Old request click handler
+ * @param {jQuery.Event} e
+ */
+ function oldRequestSelector( e ) {
+ e.preventDefault();
+
+ getOlderRequests().each( function( index, request ) {
+ $( request ).find( '.request-selector' )
+ .prop( 'checked', true ) // Otherwise the state doesn't actually change
+ .change();
+ } );
+ }
+
+ $( document ).ready( function () {
+ var $requestCheckboxes = $( '.request-selector' ),
+ $selectAll = $( '.request-selector-all' ),
+ $requestRows = $( '.requests .request' );
+
+ // Delay so we get the correct height on page load
+ window.setTimeout( setPanesHeight, 0 );
+ $( window ).on( 'resize', setPanesHeight );
+
+ $( '.request-filter-box' ).translatorSearch();
+ $( '.language-selector' ).languageFilter();
+
+ // Handle clicks for the 'Select all' checkbox
+ $selectAll.on( 'click', selectAllRequests );
+
+ // Handle clicks on request checkboxes.
+ $requestCheckboxes.on( 'click change', requestSelectHandler );
+
+ // Handle clicks on request rows.
+ $requestRows.on( 'click', onSelectRequest );
+
+ $( '.older-requests-indicator' ).on( 'click', oldRequestSelector );
+
+ if ( $requestRows.length ) {
+ $requestRows.first().click();
+ }
+
+ updateRequestCount();
+ } );
+
+ // ======================================
+ // LanguageFilter plugin
+ // ======================================
+ function LanguageFilter( element ) {
+ this.$selector = $( element );
+ this.init();
+ }
+
+ LanguageFilter.prototype.init = function () {
+ var languageFilter = this,
+ $clearButton;
+
+ $clearButton = $( '<button>' )
+ .addClass( 'clear-language-selector hide' )
+ .text( '×' );
+
+ languageFilter.$selector.after( $clearButton );
+ // Activate language selector
+ languageFilter.$selector.uls( {
+ onSelect: function ( language ) {
+ languageFilter.$selector
+ .removeClass( 'unselected' )
+ .addClass( 'selected autonym' )
+ .prop( {
+ dir: $.uls.data.getDir( language ),
+ lang: language
+ } )
+ .text( $.uls.data.getAutonym( language ) );
+
+ languageFilter.filter( language );
+ $clearButton.removeClass( 'hide' );
+ indicateOlderRequests();
+ },
+ quickList: mw.uls.getFrequentLanguageList
+ } );
+
+ $clearButton.on( 'click', function() {
+ var userLang = mw.config.get( 'wgUserLanguage' );
+
+ languageFilter.$selector
+ .removeClass( 'selected autonym' )
+ .prop( {
+ dir: $.uls.data.getDir( userLang ),
+ lang: userLang
+ } )
+ .addClass( 'unselected' )
+ .text( mw.msg( 'tsb-all-languages-button-label' ) );
+
+ languageFilter.filter();
+ $clearButton.addClass( 'hide' );
+ } );
+ };
+
+ /**
+ * Filter the requests by language.
+ * @param {string} [language] Language code
+ */
+ LanguageFilter.prototype.filter = function ( language ) {
+ var $requests = $( '.request' );
+
+ $requests.each( function ( index, request ) {
+ var $request = $( request ),
+ requestData = $request.data( 'data' );
+
+ if ( !language ||
+ ( requestData.languagepreferences &&
+ requestData.languagepreferences.languages &&
+ requestData.languagepreferences.languages.indexOf( language ) > -1 )
+ ) {
+ // Found language
+ $request.removeClass( 'hide' );
+ } else {
+ $request.addClass( 'hide' );
+ }
+ } );
+
+ updateAfterFiltering();
+ };
+
+ $.fn.languageFilter = function () {
+ return this.each( function () {
+ if ( !$.data( this, 'LanguageFilter' ) ) {
+ $.data( this, 'LanguageFilter', new LanguageFilter( this ) );
+ }
+ } );
+ };
+
+ // ======================================
+ // TranslatorSearch plugin
+ // ======================================
+ function TranslatorSearch( element ) {
+ this.$search = $( element );
+ this.init();
+ }
+
+ TranslatorSearch.prototype.init = function () {
+ this.$search.on( 'search keyup', $.proxy( this.keyup, this ) );
+ };
+
+ TranslatorSearch.prototype.keyup = function() {
+ var query,
+ translatorSearch = this;
+
+ // Respond to the keypress events after a small timeout to avoid freeze when typed fast
+ delay( function () {
+ query = $.trim( translatorSearch.$search.val() ).toLowerCase().trim();
+ translatorSearch.filter( query );
+ }, 300 );
+ };
+
+ TranslatorSearch.prototype.filter = function( query ) {
+ var $requests = $( '.request' );
+
+ $requests.each( function ( index, request ) {
+ var $request = $( request ),
+ requestData = $request.data( 'data' );
+
+ if ( query.length === 0 ||
+ requestData.username.toLowerCase().indexOf( query ) === 0 ||
+ requestData.email.toLowerCase().indexOf( query ) === 0
+ ) {
+ $request.removeClass( 'hide' );
+ } else {
+ $request.addClass( 'hide' );
+ }
+ } );
+
+ updateAfterFiltering();
+ };
+
+ function updateAfterFiltering() {
+ var $selectedRequests,
+ $firstVisibleUser = $( '.request:not(.hide)' ).first();
+
+ if ( $firstVisibleUser.length ) {
+ $firstVisibleUser.click();
+ } else {
+ $( '.details.pane' ).empty();
+ $selectedRequests = $( '.request-selector:checked' );
+ $selectedRequests.closest( '.request' ).removeClass( 'selected' );
+ $selectedRequests.prop( {
+ checked: false,
+ disabled: false
+ } );
+
+ updateSelectedIndicator( 0 );
+ }
+
+ updateRequestCount();
+ }
+
+ $.fn.translatorSearch = function () {
+ return this.each( function () {
+ if ( !$.data( this, 'TranslatorSearch' ) ) {
+ $.data( this, 'TranslatorSearch', new TranslatorSearch( this ) );
+ }
+ } );
+ };
+
+ delay = ( function () {
+ var timer = 0;
+
+ return function ( callback, milliseconds ) {
+ clearTimeout( timer );
+ timer = setTimeout( callback, milliseconds );
+ };
+ } () );
+}( jQuery, mediaWiki ) );
diff --git a/MLEB/Translate/resources/js/ext.translate.special.pagemigration.js b/MLEB/Translate/resources/js/ext.translate.special.pagemigration.js
new file mode 100644
index 00000000..90def740
--- /dev/null
+++ b/MLEB/Translate/resources/js/ext.translate.special.pagemigration.js
@@ -0,0 +1,470 @@
+( function ( $, mw ) {
+ 'use strict';
+ var noOfSourceUnits, noOfTranslationUnits,
+ pageName, langCode, sourceUnits = [];
+
+ /**
+ * Create translation pages using content of right hand side blocks
+ * and identifiers from left hand side blocks. Create pages only if
+ * content is not empty.
+ * @return {Function} Returns a function which returns a jQuery.Promise
+ */
+ function createTranslationPage( i, content ) {
+
+ return function () {
+ var api = new mw.Api(),
+ identifier, title, summary,
+ deferred = new $.Deferred();
+
+ identifier = sourceUnits[i].identifier;
+ title = 'Translations:' + pageName + '/' + identifier + '/' + langCode;
+ summary = $( '#pm-summary' ).val();
+
+ deferred = api.postWithEditToken( {
+ action: 'edit',
+ format: 'json',
+ watchlist: 'nochange',
+ title: title,
+ text: content,
+ summary: summary,
+ } );
+ return deferred.promise();
+ };
+ }
+
+ /**
+ * Get the old translations of a given page at given time.
+ * @param {string} fuzzyTimestamp Timestamp in MediaWiki format
+ * @param {string} pageTitle
+ * @return {jQuery.Promise}
+ * @return {Function} return.done
+ * @return {Array} return.done.data Array of old translations
+ */
+ function splitTranslationPage( fuzzyTimestamp, pageTitle ) {
+ var api = new mw.Api();
+
+ return api.get( {
+ action: 'query',
+ prop: 'revisions',
+ format: 'json',
+ rvprop: 'content',
+ rvstart: fuzzyTimestamp,
+ titles: pageTitle
+ } ).then( function ( data ) {
+ var pageContent, oldTranslationUnits, obj, page,
+ errorBox = $( '.mw-tpm-sp-error__message' );
+ for ( page in data.query.pages ) {
+ obj = data.query.pages[page];
+ }
+ if ( typeof obj === undefined ) {
+ // obj was not initialized
+ errorBox.text( mw.msg( 'pm-page-does-not-exist', pageTitle ) ).show( 'fast' );
+ return new $.Deferred().reject();
+ }
+ if ( obj.revisions === undefined ) {
+ // the case of /en subpage where first edit is by FuzzyBot
+ errorBox.text( mw.msg( 'pm-old-translations-missing', pageTitle ) ).show( 'fast' );
+ return new $.Deferred().reject();
+ }
+ pageContent = obj.revisions[0]['*'];
+ oldTranslationUnits = pageContent.split( '\n\n' );
+ return oldTranslationUnits;
+ } ).promise();
+ }
+
+ /**
+ * Get the timestamp before FuzzyBot's first edit on page
+ * @param {string} pageTitle
+ * @return {jQuery.Promise}
+ * @return {Function} return.done
+ * @return {string} return.done.data
+ */
+ function getFuzzyTimestamp( pageTitle ) {
+ var api = new mw.Api();
+
+ // This api call returns the timestamp of FuzzyBot's edit
+ return api.get( {
+ action: 'query',
+ prop: 'revisions',
+ format: 'json',
+ rvprop: 'timestamp',
+ rvuser: 'FuzzyBot',
+ rvdir: 'newer',
+ titles: pageTitle
+ } ).then ( function ( data ) {
+ var timestampFB, dateFB, timestampOld,
+ page, obj,
+ errorBox = $( '.mw-tpm-sp-error__message' );
+ for ( page in data.query.pages ) {
+ obj = data.query.pages[page];
+ }
+ // Page does not exist if missing field is present
+ if ( obj.missing === '' ) {
+ errorBox.text( mw.msg( 'pm-page-does-not-exist', pageTitle ) ).show( 'fast' );
+ return new $.Deferred().reject();
+ }
+ // Page exists, but no edit by FuzzyBot
+ if ( obj.revisions === undefined ) {
+ errorBox.text( mw.msg( 'pm-old-translations-missing', pageTitle ) ).show( 'fast' );
+ return new $.Deferred().reject();
+ } else {
+ // FB over here refers to FuzzyBot
+ timestampFB = obj.revisions[0].timestamp;
+ dateFB = new Date( timestampFB );
+ dateFB.setSeconds( dateFB.getSeconds() - 1 );
+ timestampOld = dateFB.toISOString();
+ mw.log( 'New Timestamp: ' + timestampOld );
+ return timestampOld;
+ }
+ } ).promise();
+ }
+
+ /**
+ * Get the translation units created by Translate extension
+ * @param {string} pageName
+ * return {jQuery.Promise}
+ * return {Function} return.done
+ * return {Array} return.done.data Array of sUnit Objects
+ */
+ function getSourceUnits( pageName ) {
+ var api = new mw.Api();
+
+ return api.get( {
+ action: 'query',
+ list: 'messagecollection',
+ format: 'json',
+ mcgroup: 'page-' + pageName,
+ mclanguage: 'en',
+ mcprop: 'definition'
+ } ).then ( function ( data ) {
+ var result, i, sUnit, key;
+ sourceUnits = [];
+ result = data.query.messagecollection;
+ for ( i = 1; i < result.length; i++ ) {
+ sUnit = {};
+ key = result[i].key;
+ sUnit.identifier = key.slice( key.lastIndexOf( '/' ) + 1 );
+ sUnit.definition = result[i].definition;
+ sourceUnits.push( sUnit );
+ }
+ return sourceUnits;
+ } ).promise();
+ }
+
+ /**
+ * Shift rows up by one unit. This is called after a unit is deleted.
+ * @param {jQuery} $start The starting node
+ */
+ function shiftRowsUp( $start ) {
+ var $current = $start, $next = $start.next(), nextVal;
+ while ( $next.length ) {
+ nextVal = $next.find( '.mw-tpm-sp-unit__target' ).val();
+ $current.find( '.mw-tpm-sp-unit__target' ).val( nextVal );
+ $current = $next;
+ $next = $current.next();
+ }
+ if ( $current.find( '.mw-tpm-sp-unit__source' ).val() ) {
+ $current.find( '.mw-tpm-sp-unit__target' ).val( '' );
+ } else {
+ $current.remove();
+ }
+ }
+
+ /**
+ * Shift rows down by one unit. This is called after a new empty unit is
+ * added.
+ * @param {jQuery} $nextRow The next row to start with
+ * @param {string} text The text of the next row
+ * @return {string} text The text of the last row
+ */
+ function shiftRowsDown( $nextRow, text ) {
+ var oldText;
+
+ while ( $nextRow.length ) {
+ oldText = $nextRow.find( '.mw-tpm-sp-unit__target' ).val();
+ $nextRow.find( '.mw-tpm-sp-unit__target' ).val( text );
+ $nextRow = $nextRow.next();
+ text = oldText;
+ }
+ return text;
+ }
+
+ /**
+ * Create a new row of source text and target text with action icons
+ * @param {string} sourceText
+ * @param {string} targetText
+ * @return {jQuery} newUnit The new row unit object
+ */
+
+ function createNewUnit( sourceText, targetText ) {
+ var newUnit, sourceUnit, targetUnit, actionUnit;
+
+ newUnit = $( '<div>' ).addClass( 'mw-tpm-sp-unit row' );
+ sourceUnit = $( '<textarea>' ).addClass( 'mw-tpm-sp-unit__source five columns' )
+ .prop( 'readonly', 'readonly' ).attr( 'tabindex', '-1' ).val( sourceText );
+ targetUnit = $( '<textarea>' ).addClass( 'mw-tpm-sp-unit__target five columns' )
+ .val( targetText );
+ actionUnit = $( '<div>' ).addClass( 'mw-tpm-sp-unit__actions two columns' );
+ actionUnit.append( $( '<span>' ).addClass( 'mw-tpm-sp-action mw-tpm-sp-action--add' )
+ .attr( 'title', mw.msg( 'pm-add-icon-hover-text' ) ),
+ $( '<span>' ).addClass( 'mw-tpm-sp-action mw-tpm-sp-action--swap' )
+ .attr( 'title', mw.msg( 'pm-swap-icon-hover-text' ) ),
+ $( '<span>' ).addClass( 'mw-tpm-sp-action mw-tpm-sp-action--delete' )
+ .attr( 'title', mw.msg( 'pm-delete-icon-hover-text' ) ) );
+ newUnit.append( sourceUnit, targetUnit, actionUnit );
+ return newUnit;
+ }
+
+ /**
+ * Display the source and target units alongwith the action icons.
+ * @param {Array} sourceUnits
+ * @param {Array} translations
+ */
+ function displayUnits( sourceUnits, translations ) {
+ var i, totalUnits, newUnit, unitListing,
+ sourceText, targetText;
+
+ noOfSourceUnits = sourceUnits.length;
+ noOfTranslationUnits = translations.length;
+ totalUnits = noOfSourceUnits > noOfTranslationUnits ? noOfSourceUnits : noOfTranslationUnits;
+ unitListing = $( '.mw-tpm-sp-unit-listing' );
+ unitListing.html( '' );
+ for ( i = 0; i < totalUnits; i++ ) {
+ sourceText = targetText = '';
+ if ( sourceUnits[i] !== undefined ) {
+ sourceText = sourceUnits[i].definition;
+ }
+ if ( translations[i] !== undefined ) {
+ targetText = translations[i];
+ }
+ newUnit = createNewUnit( sourceText, targetText );
+ unitListing.append( newUnit );
+ }
+ }
+
+ /*
+ * Split headers from remaining text in each translation unit if present.
+ * @param {Array} translations Array of initial units obtained on splitting
+ * @return {string[]} translationUnits Array having the headers split into new unit
+ */
+ function splitHeaders( translations ) {
+ return $.map( translations, function ( elem ) {
+ // Check http://regex101.com/r/oT7fZ2 for details
+ return elem.match( /(^==.+$|(?:(?!^==).+\n?)+)/gm );
+ } );
+ }
+
+ /**
+ * Get the index of next translation unit containing h2 header
+ * @param {Integer} startIndex Index to start the scan from
+ * @return {Integer} i Index of the next unit found, -1 if not
+ */
+ function getHeaderUnit( startIndex, translationUnits ) {
+ var i, regex;
+ regex = new RegExp( /^==[^=]+==$/m );
+ for ( i = startIndex; i < translationUnits.length; i++ ) {
+ if ( regex.test( translationUnits[i] ) ) {
+ return i;
+ }
+ }
+ return -1;
+ }
+
+ /**
+ * Align h2 headers in the order they appear.
+ * Assumption: The source headers and translation headers appear in
+ * the same order.
+ */
+ function alignHeaders( sourceUnits, translationUnits ) {
+ var i, regex, tIndex = 0,
+ matchText, emptyCount, mergeText;
+
+ regex = new RegExp( /^==[^=]+==$/m );
+ for ( i = 0; i < sourceUnits.length; i++ ) {
+ if ( regex.test( sourceUnits[i].definition ) ) {
+ tIndex = getHeaderUnit( tIndex, translationUnits );
+ mergeText = '';
+ // search is over
+ if ( tIndex === -1 ) {
+ break;
+ }
+ // remove the unit
+ matchText = translationUnits.splice( tIndex, 1 ).toString();
+ emptyCount = i - tIndex;
+ if ( emptyCount > 0 ) {
+ // add empty units
+ while ( emptyCount !== 0 ) {
+ translationUnits.splice( tIndex, 0, '' );
+ emptyCount -= 1;
+ }
+ } else if ( emptyCount < 0 ) {
+ // merge units until there is room for tIndex translation unit to
+ // align with ith source unit
+ while ( emptyCount !== 0 ) {
+ mergeText += translationUnits.splice( i, 1 ).toString() + '\n';
+ emptyCount += 1;
+ }
+ if ( i !== 0 ) {
+ translationUnits[i - 1] += '\n' + mergeText;
+ } else {
+ matchText = mergeText + matchText;
+ }
+ }
+ // add the unit back
+ translationUnits.splice( i, 0, matchText );
+ tIndex = i + 1;
+ }
+ }
+ return translationUnits;
+ }
+
+ /**
+ * Handler for 'Save' button click event.
+ */
+ function saveHandler() {
+ var i, list = [], content;
+
+ $( '.mw-tpm-sp-error__message' ).hide( 'fast' );
+ if ( noOfSourceUnits < noOfTranslationUnits ) {
+ $( '.mw-tpm-sp-error__message' ).text( mw.msg( 'pm-extra-units-warning' ) )
+ .show( 'fast' );
+ return;
+ } else {
+ $( 'input' ).attr( 'disabled', 'disabled' );
+ for ( i = 0; i < noOfSourceUnits; i++ ) {
+ content = $( '.mw-tpm-sp-unit__target' ).eq( i ).val();
+ content = $.trim( content );
+ if ( content !== '' ) {
+ list.push( createTranslationPage( i, content ) );
+ }
+ }
+
+ $.ajaxDispatcher( list, 1 ).done( function () {
+ $( '#action-import' ).removeClass( 'hide' );
+ $( 'input' ).removeAttr( 'disabled' );
+ } );
+ }
+ }
+
+ /**
+ * Handler for 'Cancel' button click event.
+ */
+ function cancelHandler() {
+ $( '.mw-tpm-sp-error__message' ).hide( 'fast' );
+ $( '#action-save, #action-cancel' ).addClass( 'hide' );
+ $( '#action-import' ).removeClass( 'hide' );
+ $( '.mw-tpm-sp-unit-listing' ).html( '' );
+ }
+
+ /**
+ * Handler for add new unit icon ('+') click event. Adds a translation unit
+ * below the current unit.
+ */
+ function addHandler( event ) {
+ var nextRow, text, newUnit, targetUnit;
+
+ nextRow = $( event.target ).closest( '.mw-tpm-sp-unit' ).next();
+ targetUnit = nextRow.find( '.mw-tpm-sp-unit__target' );
+ text = targetUnit.val();
+ targetUnit.val( '' );
+ nextRow = nextRow.next();
+ text = shiftRowsDown( nextRow, text );
+ if ( text ) {
+ newUnit = createNewUnit( '', text );
+ $( '.mw-tpm-sp-unit-listing' ).append( newUnit );
+ }
+ noOfTranslationUnits += 1;
+ }
+
+ /**
+ * Handler for delete icon ('-') click event. Deletes the unit and shifts
+ * the units up by one.
+ */
+ function deleteHandler( event ) {
+ var sourceText, rowUnit;
+ rowUnit = $( event.target ).closest( '.mw-tpm-sp-unit' );
+ sourceText = rowUnit.find( '.mw-tpm-sp-unit__source' ).val();
+ if ( !sourceText ) {
+ rowUnit.remove();
+ } else {
+ rowUnit.find( '.mw-tpm-sp-unit__target' ).val( '' );
+ shiftRowsUp( rowUnit );
+ }
+ noOfTranslationUnits -= 1;
+ }
+
+ /**
+ * Handler for swap icon click event. Swaps the text in the current unit
+ * with the text in the unit below.
+ */
+ function swapHandler( event ) {
+ var rowUnit, tempText, nextVal;
+ rowUnit = $( event.target ).closest( '.mw-tpm-sp-unit' );
+ tempText = rowUnit.find( '.mw-tpm-sp-unit__target' ).val();
+ nextVal = rowUnit.next().find( '.mw-tpm-sp-unit__target').val();
+ rowUnit.find( '.mw-tpm-sp-unit__target' ).val( nextVal );
+ rowUnit.next().find( '.mw-tpm-sp-unit__target' ).val( tempText );
+ }
+
+ /**
+ * Handler for 'Import' button click event. Imports source and translation
+ * units and displays them.
+ */
+ function importHandler() {
+ var pageTitle, titleObj, errorBox = $( '.mw-tpm-sp-error__message' );
+ pageName = $.trim( $( '#title' ).val() );
+ langCode = $.trim( $( '#language' ).val() );
+ pageTitle = pageName + '/' + langCode;
+ errorBox.hide( 'fast' );
+ titleObj = mw.Title.newFromText( pageTitle );
+ if ( titleObj === null ) {
+ errorBox.text( mw.msg( 'pm-pagetitle-invalid' ) ).show( 'fast' );
+ return;
+ }
+ pageTitle = titleObj.getPrefixedDb();
+ if ( pageName === '' ) {
+ errorBox.text( mw.msg( 'pm-pagename-missing' ) ).show( 'fast' );
+ return;
+ }
+ if ( langCode === '' ) {
+ errorBox.text( mw.msg( 'pm-langcode-missing' ) ).show( 'fast' );
+ return;
+ }
+ $.when( getSourceUnits( pageName ), getFuzzyTimestamp( pageTitle ) )
+ .then( function ( sourceUnits, fuzzyTimestamp ) {
+ noOfSourceUnits = sourceUnits.length;
+ splitTranslationPage( fuzzyTimestamp, pageTitle ).done( function ( translations ) {
+ var translationUnits = splitHeaders( translations );
+ translationUnits = alignHeaders( sourceUnits, translationUnits );
+ noOfTranslationUnits = translationUnits.length;
+ displayUnits( sourceUnits, translationUnits );
+ $( '#action-save, #action-cancel').removeClass( 'hide' );
+ $( '#action-import' ).addClass( 'hide' );
+ } );
+ } );
+ }
+
+ /**
+ * Listens to various click events
+ */
+ function listen() {
+ var $listing = $( '.mw-tpm-sp-unit-listing' );
+ $( '#action-import' ).click( importHandler );
+ $( '#action-save' ).click( saveHandler );
+ $( '#action-cancel' ).click( cancelHandler );
+ $listing.on( 'click', '.mw-tpm-sp-action--swap', swapHandler );
+ $listing.on( 'click', '.mw-tpm-sp-action--delete', deleteHandler );
+ $listing.on( 'click', '.mw-tpm-sp-action--add', addHandler );
+ }
+
+ $( document ).ready( listen );
+
+ mw.translate = mw.translate || {};
+ mw.translate = $.extend( mw.translate, {
+ getSourceUnits: getSourceUnits,
+ getFuzzyTimestamp: getFuzzyTimestamp,
+ splitTranslationPage: splitTranslationPage,
+ alignHeaders: alignHeaders
+ } );
+
+} ( jQuery, mediaWiki ) );
diff --git a/MLEB/Translate/resources/js/ext.translate.special.pagepreparation.js b/MLEB/Translate/resources/js/ext.translate.special.pagepreparation.js
new file mode 100644
index 00000000..538fefca
--- /dev/null
+++ b/MLEB/Translate/resources/js/ext.translate.special.pagepreparation.js
@@ -0,0 +1,320 @@
+( function ( $, mw ) {
+ 'use strict';
+
+ /**
+ * Save the page with a given page name and given content to the wiki.
+ * @param {string} pageName Page title
+ * @param {string} pageContent Content of the page to be saved
+ * @return {jQuery.promise}
+ */
+ function savePage( pageName, pageContent ) {
+ var api = new mw.Api();
+
+ return api.postWithEditToken( {
+ action: 'edit',
+ format: 'json',
+ title: pageName,
+ text: pageContent,
+ summary: $( '#pp-summary' ).val(),
+ } ).promise();
+ }
+
+ /**
+ * Get the diff between the current revision and the prepared page content
+ * @param {string} pageName Page title
+ * @param {string} pageContent Content of the page to be saved
+ * @return {jQuery.promise}
+ * @return {Function} return.done
+ * @return {string} return.done.data
+ */
+ function getDiff( pageName, pageContent ) {
+ var api = new mw.Api();
+
+ return api.post( {
+ action:'query',
+ prop: 'revisions',
+ format: 'json',
+ rvprop: 'content',
+ rvlimit: '1',
+ titles: pageName,
+ rvdifftotext: pageContent
+ } ).then( function ( data ) {
+ var obj, diff;
+ for ( var page in data.query.pages ) {
+ obj = data.query.pages[page];
+ }
+ diff = obj.revisions[0].diff['*'];
+ return diff;
+ } ).promise();
+ }
+
+ /**
+ * Remove all the <translate> tags before preparing the page. The
+ * tool will add them back wherever needed.
+ * @param {string} pageContent
+ * @return {string}
+ */
+ function cleanupTags( pageContent ) {
+ pageContent = pageContent.replace( /<\/?translate>\n?/gi, '' );
+ return pageContent;
+ }
+
+ /**
+ * Add the <languages/> bar at the top of the page, if not present.
+ * Remove the old {{languages}} template, if present
+ * @param {string} pageContent
+ * @return {string}
+ */
+ function addLanguageBar( pageContent ) {
+ if ( !pageContent.match( /<languages\/>/gi ) ) {
+ pageContent = '<languages/>\n' + pageContent;
+ }
+ pageContent = pageContent.replace( /\{\{languages.*?\}\}/gi, '' );
+ return pageContent;
+ }
+
+ /**
+ * Add the <translate> and </translate> tags at the start and end of the page.
+ * The opening tag is added immediately after the <languages/> tag.
+ * @param {string} pageContent
+ * @return {string}
+ */
+ function addTranslateTags( pageContent ) {
+ pageContent = pageContent.replace( /(<languages\/>\n)/gi, '$1<translate>\n' );
+ pageContent = pageContent + '\n</translate>';
+ return pageContent;
+ }
+
+ /**
+ * Add newlines before and after section headers. Extra newlines resulting after
+ * this operation are cleaned up in postPreparationCleanup() function.
+ * @param {string} pageContent
+ * @return {string}
+ */
+ function addNewLines( pageContent ) {
+ pageContent = pageContent.replace( /^(==.*==)\n*/gm, '\n$1\n\n' );
+ return pageContent;
+ }
+
+ /**
+ * Convert all the links into two-party form and add the 'Special:MyLanguage/' prefix
+ * to links in valid namespaces for the wiki. For example, [[Example]] would be converted
+ * to [[Special:MyLanguage/Example|Example]].
+ * @param {string} pageContent
+ * @return {string}
+ */
+ function fixInternalLinks( pageContent ) {
+ var normalizeRegex, linkPrefixRegex,
+ namespaces, nsString;
+
+ normalizeRegex = new RegExp( /\[\[(?!Category)([^|]*?)\]\]/gi );
+ // First convert all links into two-party form. If a link is not having a pipe,
+ // add a pipe and duplicate the link text
+ // Regex : http://regex101.com/r/pO9nN2
+ pageContent = pageContent.replace( normalizeRegex, '[[$1|$1]]' );
+
+ namespaces = getNamespaces();
+ nsString = namespaces.join( '|' );
+ linkPrefixRegex = new RegExp( '\\[\\[((?:(?:special(?!:MyLanguage\\b)|' + nsString +
+ '):)?[^:]*?)\\]\\]', 'gi' );
+ // Add the 'Special:MyLanguage/' prefix for all internal links of valid namespaces and
+ // mainspace.
+ // Regex : http://regex101.com/r/zZ9jH9
+ pageContent = pageContent.replace( linkPrefixRegex, '[[Special:MyLanguage/$1]]' );
+ return pageContent;
+ }
+
+ /**
+ * Fetch all the aliases for a given namespace on the wiki.
+ * @param {integer} namespaceId
+ * @return {jQuery.promise}
+ * @return {Function} return.done
+ * @return {Array} return.done.data
+ */
+ function getNamespaceAliases( namespaceID ) {
+ var api = new mw.Api();
+
+ return api.get( {
+ action:'query',
+ meta: 'siteinfo',
+ siprop: 'namespacealiases'
+ } ).then( function ( data ) {
+ var aliases = [];
+ for ( var alias in data.query.namespacealiases ) {
+ if ( data.query.namespacealiases[alias].id === namespaceID ) {
+ aliases.push( data.query.namespacealiases[alias]['*'] );
+ }
+ }
+ return aliases;
+ } ).promise();
+ }
+
+ /**
+ * Add translate tags around only translatable content for files and keep everything else
+ * as a part of the page template.
+ * @param {string} pageContent
+ * @return {string}
+ */
+ function doFiles( pageContent ) {
+ var deferred = new $.Deferred();
+
+ $.when( getNamespaceAliases( 6 ) ).then( function ( aliases ) {
+ var aliasList, captionFilesRegex, fileRegex;
+
+ aliases.push( 'file' );
+
+ for ( var i = 0; i < aliases.length; i++ ) {
+ aliases[i] = $.escapeRE( aliases[i] );
+ }
+
+ aliasList = aliases.join( '|' );
+
+ // Add translate tags for files with captions
+ captionFilesRegex = new RegExp( '\\[\\[(' + aliasList + ')(.*\\|)(.*?)\\]\\]', 'gi' );
+ pageContent = pageContent.replace( captionFilesRegex,
+ '</translate>\n[[$1$2<translate>$3</translate>]]\n<translate>' );
+
+ // Add translate tags for files without captions
+ fileRegex = new RegExp( '/\\[\\[((' + aliasList + ')[^\\|]*?)\\]\\]', 'gi' );
+ pageContent = pageContent.replace( fileRegex, '\n</translate>[[$1]]\n<translate>' );
+
+ deferred.resolve( pageContent );
+ } );
+ return deferred.promise();
+ }
+
+ /**
+ * Keep templates outside <translate>....</translate> tags
+ * Does not deal with nested templates, needs manual changes.
+ * @param {string} pageContent
+ * @return {string} pageContent
+ */
+ function doTemplates( pageContent ) {
+ var templateRegex;
+ // Regex: http://regex101.com/r/wA3iX0
+ templateRegex = new RegExp( /^({{[\s\S]*?}})/gm );
+
+ pageContent = pageContent.replace( templateRegex, '</translate>\n$1\n<translate>' );
+ return pageContent;
+ }
+
+ /**
+ * Cleanup done after the page is prepared for translation by the tool.
+ * @param {string} pageContent
+ * @return {string}
+ */
+ function postPreparationCleanup( pageContent ) {
+ // Removes any extra newlines introduced by the tool
+ pageContent = pageContent.replace( /\n\n+/gi, '\n\n' );
+ // Removes redundant <translate> tags
+ pageContent = pageContent.replace( /\n<translate>(\n*?)<\/translate>/gi, '' );
+ return pageContent;
+ }
+
+ /**
+ * Get the current revision for the given page.
+ * @param {string} pageName
+ * @return {jQuery.Promise}
+ * @return {Function} return.done
+ * @return {string} return.done.value The current revision
+ */
+ function getPageContent( pageName ) {
+ var api = new mw.Api(), obj;
+ return api.get( {
+ action:'query',
+ prop: 'revisions',
+ format: 'json',
+ rvprop: 'content',
+ rvlimit: '1',
+ titles: pageName
+ } ).then( function ( data ) {
+
+ for ( var page in data.query.pages ) {
+ obj = data.query.pages[page];
+ }
+ return obj.revisions[0]['*'];
+ } ).promise();
+ }
+
+ /**
+ * Get the list of valid namespaces for the wiki and remove unwanted
+ * ones from the list.
+ * @return {Array} Array of valid namespaces
+ */
+ function getNamespaces() {
+ var namespacesObject, namespaces = [], i;
+
+ namespacesObject = mw.config.get( 'wgNamespaceIds' );
+ for ( var key in namespacesObject ) {
+ namespaces.push( key );
+ }
+
+ // Remove all what has been already handled somewhere else
+ namespaces.splice( $.inArray( '', namespaces), 1 );
+ namespaces.splice( $.inArray( 'category', namespaces), 1 );
+ namespaces.splice( $.inArray( 'category_talk', namespaces), 1 );
+ namespaces.splice( $.inArray( 'special', namespaces), 1 );
+ namespaces.splice( $.inArray( 'file', namespaces), 1 );
+ namespaces.splice( $.inArray( 'file_talk', namespaces), 1 );
+
+ for ( i = 0; i < namespaces.length; i++ ) {
+ namespaces[i] = $.escapeRE( namespaces[i] );
+ }
+ return namespaces;
+ }
+
+ $( document ).ready( function () {
+ var pageContent;
+
+ $( '#action-save' ).click( function () {
+ var serverName, pageUrl = '', pageName;
+ pageName = $.trim( $( '#title' ).val() );
+ serverName = mw.config.get( 'wgServerName' );
+ savePage( pageName, pageContent ).done( function () {
+ pageUrl = mw.Title.newFromText( pageName ).getUrl( { action: 'edit' } );
+ $( '.messageDiv' ).html( mw.message( 'pp-save-message', pageUrl ).parse() ).show();
+ $( '.divDiff' ).hide( 'fast' );
+ $( '#action-prepare' ).show();
+ $( '#title' ).val( '' );
+ $( '#action-save' ).hide();
+ } );
+ } );
+
+ $( '#action-prepare' ).click( function () {
+ var pageName, messageDiv = $( '.messageDiv' );
+ pageName = $.trim( $( '#title' ).val() );
+ messageDiv.hide();
+ if ( pageName === '' ) {
+ window.alert( mw.msg( 'pp-pagename-missing' ) );
+ return;
+ }
+
+ $.when( getPageContent( pageName ) ).done( function ( content ) {
+ pageContent = content;
+ pageContent = $.trim( pageContent );
+ pageContent = cleanupTags( pageContent );
+ pageContent = addLanguageBar( pageContent );
+ pageContent = addTranslateTags( pageContent );
+ pageContent = addNewLines( pageContent );
+ pageContent = fixInternalLinks( pageContent );
+ pageContent = doTemplates( pageContent );
+ doFiles( pageContent ).done( function( pageContent ) {
+ pageContent = postPreparationCleanup( pageContent );
+ pageContent = $.trim( pageContent );
+ getDiff( pageName, pageContent ).done( function ( diff ) {
+ $( '.diff tbody' ).append( diff );
+ $( '.divDiff' ).show( 'fast' );
+ if ( diff !== '' ) {
+ messageDiv.html( mw.msg( 'pp-prepare-message' ) ).show();
+ $( '#action-prepare' ).hide();
+ $( '#action-save' ).show();
+ } else {
+ messageDiv.html( mw.msg( 'pp-already-prepared-message' ) ).show();
+ }
+ } );
+ } );
+ } );
+ } );
+ } );
+
+} ( jQuery, mediaWiki ) );
diff --git a/MLEB/Translate/resources/js/ext.translate.special.pagetranslation.js b/MLEB/Translate/resources/js/ext.translate.special.pagetranslation.js
new file mode 100644
index 00000000..f47de956
--- /dev/null
+++ b/MLEB/Translate/resources/js/ext.translate.special.pagetranslation.js
@@ -0,0 +1,8 @@
+/*
+ * @author Santhosh Thottingal
+ */
+jQuery( function ( $ ) {
+ 'use strict';
+
+ $( '#wpUserLanguage' ).multiselectautocomplete( { inputbox: '#tpt-prioritylangs' } );
+} );
diff --git a/MLEB/Translate/resources/js/ext.translate.special.searchtranslations.js b/MLEB/Translate/resources/js/ext.translate.special.searchtranslations.js
new file mode 100644
index 00000000..7c37e60d
--- /dev/null
+++ b/MLEB/Translate/resources/js/ext.translate.special.searchtranslations.js
@@ -0,0 +1,271 @@
+( function ( $, mw ) {
+ 'use strict';
+
+ var resultGroups;
+
+ $( document ).ready( function () {
+ var $messages = $( '.tux-message' );
+
+ resultGroups = $( '.facet.groups' ).data( 'facets' );
+
+ // Make the whole rows clickable
+ $( '.facet-item' ).click( function () {
+ window.location = $( this ).find( 'a' ).attr( 'href' );
+ } );
+
+ $messages.each( function () {
+ var $this = $( this );
+
+ $this.translateeditor( {
+ message: {
+ title: $this.data( 'title' ),
+ definition: $this.data( 'definition' ),
+ translation: $this.data( 'translation' ),
+ group: $this.data( 'group' )
+ }
+ } );
+ } );
+
+ $messages.last().addClass( 'last-message' );
+
+ showLanguages();
+ showMessageGroups();
+ } );
+
+ // ES5-compatible Chrome, IE 9+, FF 4+, or Safari 5+ has Object.keys.
+ // Make other old browsers happy
+ if ( !Object.keys ) {
+ Object.keys = function ( obj ) {
+ var keys = [],
+ k;
+ for ( k in obj ) {
+ if ( Object.prototype.hasOwnProperty.call( obj, k ) ) {
+ keys.push( k );
+ }
+ }
+ return keys;
+ };
+ }
+
+ function showLanguages() {
+ var $languages,
+ languages,
+ ulslanguages = [],
+ currentLanguage,
+ resultCount,
+ $count,
+ result,
+ i,
+ selectedClasss = '',
+ docLanguageCode,
+ languageCode,
+ quickLanguageList = [],
+ unique = [],
+ regions,
+ $ulsTrigger;
+
+ $languages = $( '.facet.languages' );
+ languages = $languages.data( 'facets' );
+ currentLanguage = $languages.data( 'language' );
+ if ( !languages ) {
+ return;
+ }
+
+ resultCount = Object.keys( languages ).length;
+
+ // If a documentation pseudo-language is defined,
+ // add it to the language selector
+ docLanguageCode = mw.config.get( 'wgTranslateDocumentationLanguageCode' );
+ if ( languages[docLanguageCode] ) {
+ mw.translate.addDocumentationLanguage();
+ mw.config.get( 'wgULSLanguages' )[docLanguageCode] = mw.msg( 'translate-documentation-language' );
+ regions = ['WW', 'SP', 'AM', 'EU', 'ME', 'AF', 'AS', 'PA'];
+ }
+
+ quickLanguageList = quickLanguageList.concat( mw.uls.getFrequentLanguageList() )
+ .concat( Object.keys( languages ) );
+
+ // Remove duplicates from the language list
+ $.each( quickLanguageList, function ( i, v ) {
+ result = languages[v];
+ if ( result && $.inArray( v, unique ) === -1 ) {
+ unique.push( v );
+ }
+ } );
+
+ if ( currentLanguage && $.inArray( currentLanguage, quickLanguageList ) >= 0 ) {
+ quickLanguageList = unique.splice( 0, 5 );
+ quickLanguageList = quickLanguageList.concat( currentLanguage );
+ } else {
+ quickLanguageList = unique.splice( 0, 6 );
+ }
+
+ quickLanguageList.sort( sortLanguages );
+
+ for ( i = 0; i <= quickLanguageList.length; i++ ) {
+ languageCode = quickLanguageList[i];
+ result = languages[languageCode];
+ if ( !result ) {
+ continue;
+ }
+
+ if ( currentLanguage === languageCode ) {
+ selectedClasss = 'selected';
+ } else {
+ selectedClasss = '';
+ }
+
+ $languages.append( $( '<div>')
+ .addClass( 'row facet-item ' + selectedClasss )
+ .append( $( '<span>')
+ .addClass('facet-name')
+ .append( $('<a>')
+ .attr( 'href', result.url )
+ .text( mw.config.get( 'wgULSLanguages' )[languageCode] || languageCode )
+ ),
+ $( '<span>')
+ .addClass('facet-count')
+ .text( result.count )
+ )
+ );
+ }
+
+ $.each( Object.keys( languages ), function ( index, languageCode ) {
+ ulslanguages[languageCode] = mw.config.get( 'wgULSLanguages' )[languageCode];
+ } );
+
+ if ( resultCount > 6 ) {
+ $ulsTrigger = $( '<a>' )
+ .text( '...' )
+ .addClass( 'translate-search-more-languages' );
+ $count = $( '<span>' )
+ .addClass( 'translate-search-more-languages-info' )
+ .text( mw.msg( 'translate-search-more-languages-info', resultCount - quickLanguageList.length ) );
+ $languages.append( $ulsTrigger, $count );
+
+ $ulsTrigger.uls( {
+ onSelect: function ( language ) {
+ window.location = languages[language].url;
+ },
+ compact: true,
+ languages: ulslanguages,
+ top: $languages.offset().top,
+ showRegions: regions
+ } );
+ }
+ }
+
+ function showMessageGroups() {
+ var currentGroup,
+ groupList,
+ $groups;
+
+ $groups = $( '.facet.groups' );
+ currentGroup = $groups.data( 'group' );
+
+ if ( !resultGroups ) {
+ // No search results
+ return;
+ }
+
+ groupList = Object.keys( resultGroups );
+ listGroups( groupList, currentGroup, $groups );
+ }
+
+ function listGroups( groupList, parentGroup, $parent, level ) {
+ var i,
+ $grouSelectorTrigger,
+ selectedClass = '',
+ group,
+ groupId,
+ $groupRow,
+ uri,
+ maxListSize = 10,
+ currentGroup = $( '.facet.groups' ).data( 'group' ),
+ resultCount = groupList.length;
+
+ level = level || 0;
+ groupList = groupList.splice( 0, maxListSize );
+ if ( currentGroup && resultGroups[currentGroup] &&
+ $.inArray( currentGroup, groupList ) < 0
+ ) {
+ // Make sure current selected group is displayed always.
+ groupList = groupList.concat( currentGroup );
+ groupList.sort( sortGroups );
+ }
+ groupList.sort( sortGroups );
+ for ( i = 0; i <= groupList.length; i++ ) {
+ groupId = groupList[i];
+ group = mw.translate.findGroup( groupId, resultGroups );
+ if ( !group ) {
+ continue;
+ }
+ if ( currentGroup === groupId ) {
+ selectedClass = 'selected';
+ } else {
+ selectedClass = '';
+ }
+
+ uri = new mw.Uri( window.location.href );
+ uri.extend( { 'group': groupId } );
+
+ $groupRow = $( '<div>' )
+ .addClass( 'row facet-item ' + ' facet-level-' + level )
+ .append( $( '<span>' )
+ .addClass( 'facet-name ' + selectedClass)
+ .append( $( '<a>' )
+ .attr( 'href', uri.toString() )
+ .text( group.label )
+ ),
+ $( '<span>' )
+ .addClass( 'facet-count ' + selectedClass )
+ .text( group.count )
+ );
+ $parent.append( $groupRow );
+ if ( group.groups && level < 2 ) {
+ listGroups( Object.keys( group.groups ), group, $groupRow, level + 1 );
+ }
+ }
+
+ if ( resultCount > maxListSize ) {
+ $grouSelectorTrigger = $( '<div>')
+ .addClass( 'rowfacet-item ' )
+ .append( $( '<a>' )
+ .text( '...' )
+ .addClass( 'translate-search-more-groups' ),
+ $( '<span>' )
+ .addClass( 'translate-search-more-groups-info' )
+ .text( mw.msg( 'translate-search-more-groups-info',
+ resultCount - groupList.length ) )
+ );
+ $parent.append( $grouSelectorTrigger );
+
+ $grouSelectorTrigger.msggroupselector( {
+ language: mw.config.get( 'wgUserLanguage' ),
+ position: {
+ my: 'left top',
+ at: 'left top'
+ },
+ onSelect: function ( group ) {
+ var uri = new mw.Uri( window.location.href );
+ uri.extend( { 'group': group.id } );
+ window.location.href = uri.toString();
+ }
+ } );
+ }
+ }
+
+ function sortGroups( groupIdA, groupIdB ) {
+ var groupAName = mw.translate.findGroup( groupIdA, resultGroups ).label,
+ groupBName = mw.translate.findGroup( groupIdB, resultGroups ).label;
+
+ return groupAName.localeCompare( groupBName );
+ }
+
+ function sortLanguages( languageA, languageB ) {
+ var languageNameA = mw.config.get( 'wgULSLanguages' )[languageA] || languageA,
+ languageNameB = mw.config.get( 'wgULSLanguages' )[languageB] || languageB;
+
+ return languageNameA.localeCompare( languageNameB );
+ }
+}( jQuery, mediaWiki ) );
diff --git a/MLEB/Translate/resources/js/ext.translate.special.translate.js b/MLEB/Translate/resources/js/ext.translate.special.translate.js
new file mode 100644
index 00000000..940fd3a4
--- /dev/null
+++ b/MLEB/Translate/resources/js/ext.translate.special.translate.js
@@ -0,0 +1,412 @@
+( function ( $, mw ) {
+ 'use strict';
+
+ /* Non-TUX Workflow selector code */
+ function prepareWorkflowSelector() {
+ var $submit, $select, submitFunction;
+
+ $submit = $( '#mw-translate-workflowset' );
+ $select = $( '#mw-sp-translate-workflow' ).find( 'select' );
+
+ $select.find( 'option[value=]' ).prop( 'disabled', true );
+
+ submitFunction = function ( event ) {
+ var successFunction = function ( data ) {
+ if ( data.error ) {
+ $submit.val( mw.msg( 'translate-workflow-set-do' ) );
+ $submit.prop( 'disabled', false );
+ window.alert( data.error.info );
+ } else {
+ $submit.val( mw.msg( 'translate-workflow-set-done' ) );
+ $select.find( 'option[selected]' ).prop( 'selected', false );
+ $select.find( 'option[value=' + event.data.newstate + ']' ).prop( 'selected', true );
+ }
+ };
+
+ $submit.prop( 'disabled', true );
+ $submit.val( mw.msg( 'translate-workflow-set-doing' ) );
+ changeWorkflowStatus( $submit.data( 'group' ),
+ $submit.data( 'language' ),
+ event.data.newstate,
+ $submit.data( 'token' )
+ ).done( successFunction );
+ };
+
+ $select.change( function ( event ) {
+ var current = $( this ).find( 'option[selected]' ).val(),
+ tobe = event.target.value;
+
+ $submit.val( mw.msg( 'translate-workflow-set-do' ) );
+ $submit.unbind( 'click' );
+ if ( current !== tobe ) {
+ $submit.css( 'visibility', 'visible' );
+ $submit.prop( 'disabled', false );
+ $submit.click( { newstate: tobe }, submitFunction );
+ } else {
+ $submit.prop( 'disabled', true );
+ }
+ } );
+ }
+
+ function changeWorkflowStatus ( group, language, state, token ) {
+ var api = new mw.Api(),
+ params = {
+ action: 'groupreview',
+ group: group,
+ language: language,
+ state: state,
+ token: token,
+ format: 'json'
+ };
+
+ return api.post( params );
+ }
+
+ mw.translate = mw.translate || {};
+
+ mw.translate = $.extend( mw.translate, {
+
+ /**
+ * Change the group that is currently displayed
+ * in the TUX translation editor.
+ * @param {Object} group a message group object.
+ */
+ changeGroup: function ( group ) {
+ var changes,
+ api = new mw.Api(),
+ $description = $( '.tux-editor-header .description' );
+
+ if ( !checkDirty() ) {
+ return;
+ }
+
+ changes = {
+ group: group.id
+ };
+
+ // Update the group description in the header
+ api.parse(
+ group.description
+ ).done( function ( parsedDescription ) {
+ // The parsed text is returned in a <p> tag,
+ // so it's removed here.
+ $description.html( $( parsedDescription ).html() );
+ } ).fail( function () {
+ $description.html( group.description );
+ mw.log( 'Error parsing description for group ' + group.id );
+ } );
+
+ mw.translate.changeUrl( changes );
+ mw.translate.updateTabLinks( changes );
+ mw.translate.loadMessages( changes );
+ updateGroupWarning();
+ },
+
+ changeLanguage: function ( language ) {
+ var changes, targetDir, targetLangAttrib,
+ userLanguageCode = mw.config.get( 'wgUserLanguage' );
+
+ if ( !checkDirty() ) {
+ return;
+ }
+
+ changes = {
+ language: language
+ };
+
+ if ( language === mw.config.get( 'wgTranslateDocumentationLanguageCode' ) ) {
+ targetLangAttrib = userLanguageCode;
+ targetDir = $.uls.data.getDir( userLanguageCode );
+ } else {
+ targetLangAttrib = language;
+ targetDir = $.uls.data.getDir( language );
+ }
+
+ // Changes to attributes must also be reflected
+ // when the element is created on the server side
+ $( '.ext-translate-language-selector > .uls' )
+ .text( $.uls.data.getAutonym( language ) )
+ .attr( {
+ lang: targetLangAttrib,
+ dir: targetDir
+ } );
+ $( '.tux-messagelist' ).data( {
+ targetlangcode: language,
+ targetlangdir: targetDir
+ } );
+
+ mw.translate.changeUrl( changes );
+ mw.translate.updateTabLinks( changes );
+ mw.translate.loadMessages();
+ updateGroupWarning();
+ },
+
+ changeFilter: function ( filter ) {
+ var realFilters, uri;
+
+ if ( !checkDirty() ) {
+ return;
+ }
+
+ realFilters = [ '!ignored' ];
+ uri = new mw.Uri( window.location.href );
+ if ( uri.query.optional !== '1' ) {
+ realFilters.push( '!optional' );
+ }
+ if ( filter ) {
+ realFilters.push( filter );
+ }
+
+ mw.translate.changeUrl( { filter: filter } );
+ mw.translate.loadMessages( { filter: realFilters.join( '|' ) } );
+ },
+
+ changeUrl: function ( params ) {
+ var uri = new mw.Uri( window.location.href );
+
+ uri.extend( params );
+
+ if ( uri.toString() === window.location.href ) {
+ return;
+ }
+
+ // Change the URL with this URI, but don't leave the page.
+ if ( history.pushState && $( '.tux-messagelist' ).length ) {
+ // IE<10 does not support pushState. Never mind.
+ history.pushState( uri, null, uri.toString() );
+ } else {
+ // For old browsers, just reload
+ window.location.href = uri.toString();
+ }
+ },
+
+ /**
+ * Updates the navigation tabs.
+ * @param {Object} params Url parameters to update.
+ * @since 2013.05
+ */
+ updateTabLinks: function ( params ) {
+ $( '.tux-tab a' ).each( function () {
+ var $a, uri;
+
+ $a = $( this );
+ uri = new mw.Uri( $a.prop( 'href' ) );
+ uri.extend( params );
+ $a.prop( 'href', uri.toString() );
+ } );
+ }
+ } );
+
+ function checkDirty() {
+ if ( mw.translate.isDirty() ) {
+ return window.confirm( mw.msg( 'translate-js-support-unsaved-warning' ) );
+ }
+ return true;
+ }
+
+ // Returns an array of jQuery objects of rows of translated
+ // and proofread messages in the TUX editors.
+ // Used several times.
+ function getTranslatedMessages( $translateContainer ) {
+ $translateContainer = $translateContainer || $( '.ext-translate-container' );
+ return $translateContainer.find( '.tux-message-item' )
+ .filter( '.translated, .proofread' );
+ }
+
+ function updateGroupWarning() {
+ var $groupWarning = $( '.tux-editor-header .group-warning' ),
+ id = $( '.tux-messagetable-loader' ).data( 'messagegroup' ),
+ props = 'priority|prioritylangs|priorityforce';
+
+ $groupWarning.empty();
+
+ mw.translate.getMessageGroup( id, props ).done( function ( group ) {
+ var preferredLanguages, headerMessage, languagesMessage,
+ targetLanguage = $( '.tux-messagelist' ).data( 'targetlangcode' );
+
+ // Check whether the group has priority languages
+ if ( !group.prioritylangs ) {
+ return;
+ }
+
+ // And if the current language is among them, we can return early
+ if ( $.inArray( targetLanguage, group.prioritylangs ) !== -1 ) {
+ return;
+ }
+
+ // Make a comma-separated list of preferred languages
+ preferredLanguages = $.map( group.prioritylangs, function ( lang ) {
+ // bidi isolation for language names
+ return '<bdi>' + $.uls.data.getAutonym( lang ) + '</bdi>';
+ } ).join( ', ' );
+
+ headerMessage = mw.message( group.priorityforce ?
+ 'tpt-discouraged-language-force-header' :
+ 'tpt-discouraged-language-header',
+ $.uls.data.getAutonym( targetLanguage )
+ ).parse();
+
+ languagesMessage = mw.message( group.priorityforce ?
+ 'tpt-discouraged-language-force-content' :
+ 'tpt-discouraged-language-content',
+ preferredLanguages
+ ).parse();
+
+ $groupWarning.append(
+ $( '<p>' ).append( $( '<strong>' ).text( headerMessage ) ),
+ // html because of the <bdi> and because it's parsed
+ $( '<p>' ).html( languagesMessage )
+ );
+ } );
+ }
+
+ $( document ).ready( function () {
+ var $translateContainer, $hideTranslatedButton, $controlOwnButton, $messageList,
+ targetLanguage, docLanguageAutonym, docLanguageCode, ulsOptions, filter, uri;
+
+ $messageList = $( '.tux-messagelist' );
+ if ( $messageList.length ) {
+ uri = new mw.Uri( window.location.href );
+ filter = uri.query.filter;
+
+ if ( filter === undefined ) {
+ filter = '!translated';
+ }
+
+ mw.translate.changeFilter( filter );
+ $( '.tux-message-selector li' ).each( function () {
+ var $this = $( this );
+
+ if ( $this.data( 'filter' ) === filter ) {
+ $this.addClass( 'selected' );
+ }
+ } );
+ }
+
+ targetLanguage = $messageList.data( 'targetlangcode' ) || // for tux=1
+ mw.config.get( 'wgUserLanguage' ); // for tux=0
+
+ // This is the selector for non-TUX mode
+ prepareWorkflowSelector();
+ $( '.tux-breadcrumb .grouplink' ).msggroupselector( {
+ onSelect: mw.translate.changeGroup,
+ language: targetLanguage
+ } );
+
+ updateGroupWarning();
+
+ $( '.tux-messagelist' ).messagetable();
+ // Use ULS for language selection if it's available
+ ulsOptions = {
+ onSelect: function ( language ) {
+ mw.translate.changeLanguage( language );
+ },
+ languages: mw.config.get( 'wgULSLanguages' ),
+ searchAPI: mw.util.wikiScript( 'api' ) + '?action=languagesearch',
+ quickList: function () {
+ return mw.uls.getFrequentLanguageList();
+ }
+ };
+
+ // If a documentation pseudo-language is defined,
+ // add it to the language selector
+ docLanguageCode = mw.config.get( 'wgTranslateDocumentationLanguageCode' );
+ if ( docLanguageCode ) {
+ docLanguageAutonym = mw.msg( 'translate-documentation-language' );
+ ulsOptions.languages[docLanguageCode] = docLanguageAutonym;
+ mw.translate.addDocumentationLanguage();
+ ulsOptions.showRegions = ['WW', 'SP', 'AM', 'EU', 'ME', 'AF', 'AS', 'PA'];
+ }
+
+ $( '.ext-translate-language-selector .uls' ).uls( ulsOptions );
+
+ if ( $.fn.translateeditor ) {
+ // New translation editor
+ $( '.tux-message' ).translateeditor();
+ }
+
+ $translateContainer = $( '.ext-translate-container' );
+
+ if ( mw.translate.canProofread() ) {
+ $translateContainer.find( '.proofread-mode-button' ).removeClass( 'hide' );
+ }
+
+ $hideTranslatedButton = $translateContainer.find( '.tux-editor-clear-translated' );
+ $hideTranslatedButton
+ .prop( 'disabled', !getTranslatedMessages( $translateContainer ).length )
+ .click( function () {
+ getTranslatedMessages( $translateContainer ).remove();
+ $( this ).prop( 'disabled', true );
+ } );
+
+ $controlOwnButton = $translateContainer.find( '.tux-proofread-own-translations-button' );
+ $controlOwnButton.click( function () {
+ var $this = $( this ),
+ ownTranslatedMessages = $translateContainer.find( '.own-translation' ),
+ hideMessage = mw.msg( 'tux-editor-proofreading-hide-own-translations' ),
+ showMessage = mw.msg( 'tux-editor-proofreading-show-own-translations' );
+
+ if ( $this.hasClass( 'down' ) ) {
+ ownTranslatedMessages.removeClass( 'hide' );
+ $this.removeClass( 'down' ).text( hideMessage );
+ } else {
+ ownTranslatedMessages.addClass( 'hide' );
+ $this.addClass( 'down' ).text( showMessage );
+ }
+ } );
+
+ // Message filter click handler
+ $translateContainer.find( '.row.tux-message-selector > li' ).on( 'click', function () {
+ var newFilter,
+ $this = $( this );
+
+ if ( $this.hasClass( 'more' ) ) {
+ return false;
+ }
+
+ newFilter = $this.data( 'filter' );
+
+ // Remove the 'selected' class from all the items.
+ // Some of them could have been moved to under the "more" menu,
+ // so everything under .row.tux-message-selector is searched.
+ $translateContainer.find( '.row.tux-message-selector .selected' )
+ .removeClass( 'selected' );
+ mw.translate.changeFilter( newFilter );
+ $this.addClass( 'selected' );
+
+ // TODO: this could should be in messagetable
+ if ( newFilter === '!translated' ) {
+ $hideTranslatedButton
+ .removeClass( 'hide' )
+ .prop( 'disabled', !getTranslatedMessages( $translateContainer ).length );
+ } else {
+ $hideTranslatedButton.addClass( 'hide' );
+ }
+
+ return false;
+ } );
+
+ // TODO: this could should be in messagetable
+ if ( $( '.tux-messagetable-loader' ).data( 'filter' ) === '!translated' ) {
+ $hideTranslatedButton.removeClass( 'hide' );
+ } else {
+ $hideTranslatedButton.addClass( 'hide' );
+ }
+
+ // Don't let clicking the items in the "more" menu
+ // affect the rest of it.
+ $( '.row.tux-message-selector .more ul' )
+ .on( 'click', function ( e ) {
+ e.stopPropagation();
+ } );
+
+ $( '#tux-option-optional' ).on( 'change', function () {
+ var uri = new mw.Uri( window.location.href ),
+ checked = $( this ).prop( 'checked' );
+
+ mw.translate.changeUrl( { optional: checked ? 1 : 0 } );
+ mw.translate.changeFilter( uri.query.filter );
+ } );
+ } );
+
+}( jQuery, mediaWiki ) );
diff --git a/MLEB/Translate/resources/js/ext.translate.special.translationstash.js b/MLEB/Translate/resources/js/ext.translate.special.translationstash.js
new file mode 100644
index 00000000..b0ca96e4
--- /dev/null
+++ b/MLEB/Translate/resources/js/ext.translate.special.translationstash.js
@@ -0,0 +1,249 @@
+/**
+ * TranslationStash front-end logic
+ * @author Santhosh Thottingal
+ * @license GPL-2.0+
+ * @since 2013.10
+ */
+
+( function ( $, mw ) {
+ 'use strict';
+
+ mw.translate.canTranslate = function () {
+ // At this page, the new translator can translate
+ return true;
+ };
+
+ var userTranslations = {},
+ translationStashStorage = new mw.translate.TranslationStashStorage();
+
+ function getMessages( messageGroup, language, offset, limit ) {
+ var deferred = new mw.Api().get( {
+ action: 'query',
+ list: 'messagecollection',
+ mcgroup: messageGroup,
+ format: 'json',
+ mclanguage: language,
+ mcoffset: offset,
+ mclimit: limit,
+ mcprop: 'definition'
+ } );
+
+ return deferred.promise();
+ }
+
+ function addMessage( message ) {
+ var $messageWrapper, $message,
+ $messageTable = $( '.tux-messagelist' ),
+ sourceLanguage = $messageTable.data( 'sourcelangcode' ),
+ sourceLanguageDir = $.uls.data.getDir( sourceLanguage ),
+ targetLanguage = $messageTable.data( 'targetlangcode' ),
+ targetLanguageDir = $.uls.data.getDir( targetLanguage ),
+ status = message.properties.status,
+ statusClass = 'tux-status-' + status,
+ statusMsg;
+
+ if ( status === 'translated' ) {
+ // tux-status-translated
+ statusMsg = 'tux-status-' + status;
+ }
+
+ $messageWrapper = $( '<div>' )
+ .addClass( 'row tux-message' );
+
+ $message = $( '<div>' )
+ .addClass( 'row message tux-message-item ' + status )
+ .append(
+ $( '<div>' )
+ .addClass( 'eight columns tux-list-message' )
+ .append(
+ $( '<span>' )
+ .addClass( 'tux-list-source' )
+ .attr( {
+ lang: sourceLanguage,
+ dir: sourceLanguageDir
+ } )
+ .text( message.definition ),
+ // Bidirectional isolation.
+ // This should be removed some day when proper
+ // unicode-bidi: isolate
+ // is supported everywhere
+ $( '<span>' )
+ .html( $( 'body' ).hasClass( 'rtl' ) ? '&rlm;' : '&lrm;' ),
+ $( '<span>' )
+ .addClass( 'tux-list-translation' )
+ .attr( {
+ lang: targetLanguage,
+ dir: targetLanguageDir
+ } )
+ .text( message.translation || '' )
+ ),
+ $( '<div>' )
+ .addClass( 'two columns tux-list-status text-center' )
+ .append(
+ $( '<span>' )
+ .addClass( statusClass )
+ .text( statusMsg ? mw.msg( statusMsg ) : '' )
+ ),
+ $( '<div>' )
+ .addClass( 'two column tux-list-edit text-right' )
+ .append(
+ $( '<a>' )
+ .attr( {
+ title: mw.msg( 'translate-edit-title', message.key )
+ } )
+ .text( mw.msg( 'tux-edit' ) )
+ )
+ );
+
+ $messageWrapper.append( $message );
+ $messageTable.append( $messageWrapper );
+ // Attach translate editor to the message
+ $messageWrapper.translateeditor( {
+ message: message,
+ storage: translationStashStorage,
+ onSave: updateStats,
+ onSkip: function () {
+ var $next = this.$editTrigger.next( '.tux-message' );
+
+ // If there is text in the skipped message, avoid showing the
+ // regular "you have unsaved messages" when navigating away,
+ // because there is no way to get back to these messages.
+ this.markUnunsaved();
+
+ // This can happen when it's
+ // the last message in the translation stash
+ if ( !$next.length ) {
+ // Reload the page to get more messages
+ // when we get to the last one
+ window.location.reload();
+ }
+ },
+ onReady: function () {
+ this.$editor.find( '.tux-editor-skip-button' )
+ .text( mw.msg( 'translate-translationstash-skip-button-label' ) );
+ }
+ } );
+ }
+
+ /**
+ * Updates the translation count at the top of the message list and
+ * displays warning when translation limit has been reached.
+ * Relies on classes stash-stats and tux-status-translated.
+ */
+ function updateStats() {
+ var count,
+ $target = $( '.stash-stats' );
+
+ count = $( '.tux-status-translated' ).length;
+ if ( count === 0 ) {
+ return;
+ }
+
+ $target.text( mw.msg(
+ 'translate-translationstash-translations',
+ mw.language.convertNumber( count )
+ ) );
+
+ if ( count >= mw.config.get( 'wgTranslateSandboxLimit' ) ) {
+ // Remove the untranslated message to disallow translation beyond the limit
+ $( '.tux-message' ).has( '.untranslated' ).remove();
+
+ // Show a message telling that the limit was reached
+ $( '.limit-reached' )
+ .empty()
+ .append( $( '<h1>' ).text( mw.message( 'tsb-limit-reached-title' ) ) )
+ .append( $( '<p>' ).text( mw.message( 'tsb-limit-reached-body' ) ) )
+ .removeClass( 'hide' );
+ }
+ }
+
+ function loadMessages() {
+ var $messageTable = $( '.tux-messagelist' ),
+ messagegroup = '!sandbox';
+
+ $( '<div>' )
+ .addClass( 'tux-loading-indicator' )
+ .appendTo( $messageTable );
+
+ getMessages( messagegroup, $messageTable.data( 'targetlangcode' ) )
+ .done( function ( result ) {
+ var untranslated, messages = result.query.messagecollection;
+
+ $messageTable.empty();
+ $.each( messages, function ( index, message ) {
+ message.properties = {};
+ message.properties.status = 'untranslated';
+
+ message.group = messagegroup;
+ if ( userTranslations[message.title] ) {
+ message.translation = userTranslations[message.title].translation;
+ message.properties.status = 'translated';
+ }
+
+ addMessage( message );
+ } );
+
+ // Show the editor for the first untranslated message.
+ untranslated = $( '.tux-message' )
+ .has( '.tux-message-item.untranslated' )
+ .first();
+ if ( untranslated.length ) {
+ untranslated.data( 'translateeditor' ).show();
+ }
+
+ updateStats();
+ } ).fail( function ( errorCode, response ) {
+ $messageTable.empty().addClass( 'error' )
+ .text( 'Error: ' + errorCode + ' - ' +
+ ( response.error && response.error.info || 'Unknown error' )
+ );
+ } );
+ }
+
+ $( 'document' ).ready( function () {
+ var $messageTable = $( '.tux-messagelist' ),
+ $ulsTrigger = $( '.ext-translate-language-selector > .uls' );
+
+ // Some links in helpers will navigate away by default. But since the messages
+ // will change on this page on every load, we want to avoid that. Force the
+ // links to open on new window/tab.
+ mw.translateHooks.add( 'showTranslationHelpers', function ( helpers, $editor ) {
+ $editor.find( 'a' ).prop( 'target', '_blank' );
+ } );
+
+ $ulsTrigger.uls( {
+ onSelect: function ( language ) {
+ var direction = $.uls.data.getDir( language ),
+ autonym = $.uls.data.getAutonym( language );
+
+ $ulsTrigger
+ .text( autonym )
+ .attr( {
+ lang: language,
+ dir: direction
+ } );
+
+ $messageTable
+ .empty()
+ .data( {
+ targetlangcode: language,
+ targetlangdir: direction
+ } );
+
+ loadMessages();
+ }
+ } );
+ // Get the user translations if any(possibly from an early attempt)
+ // and new messages to try.
+ translationStashStorage.getUserTranslations()
+ .done( function( translations ) {
+ if ( translations.translationstash.translations ) {
+ $.each( translations.translationstash.translations,
+ function ( index, translation ) {
+ userTranslations[translation.title] = translation;
+ } );
+ }
+ loadMessages();
+ } );
+ } );
+}( jQuery, mediaWiki ) );
diff --git a/MLEB/Translate/resources/js/ext.translate.special.translationstats.js b/MLEB/Translate/resources/js/ext.translate.special.translationstats.js
new file mode 100644
index 00000000..69870391
--- /dev/null
+++ b/MLEB/Translate/resources/js/ext.translate.special.translationstats.js
@@ -0,0 +1,36 @@
+/**
+ * JavaScript functions for embedding jQuery controls
+ * into translation notification form.
+ *
+ * @author Amir E. Aharoni
+ * @author Siebrand Mazeland
+ * @copyright Copyright © 2012-2013 Amir E. Aharoni, Siebrand Mazeland
+ * @license GPL-2.0+
+ */
+
+jQuery( document ).ready( function ( $ ) {
+ 'use strict';
+
+ // Based on UploadWizard, TranslationNotifications
+ $( '#start' )
+ .datepicker( {
+ dateFormat: 'yymmdd',
+ constrainInput: false,
+ showOn: 'focus',
+ changeMonth: true,
+ changeYear: true,
+ showAnim: false,
+ showButtonPanel: true,
+ maxDate: new Date(),
+ onClose: function ( dateText, inst ) {
+ // TranslationStats works with the yyyymmddhhmmss format,
+ // so zeros that represents generic hh:mm:ss must be added.
+ // The zeros are added only if a date was actually selected
+ // and is not currently displayed.
+ if ( dateText !== '' && inst.input.val().length < 14 ) {
+ inst.input.val( dateText + '000000' );
+ }
+ }
+ } )
+ .attr( 'autocomplete', 'off' );
+} );
diff --git a/MLEB/Translate/resources/js/ext.translate.statsbar.js b/MLEB/Translate/resources/js/ext.translate.statsbar.js
new file mode 100644
index 00000000..8f14c00a
--- /dev/null
+++ b/MLEB/Translate/resources/js/ext.translate.statsbar.js
@@ -0,0 +1,186 @@
+/**
+ * Translate language statistics bar - jQuery plugin.
+ * @author Niklas Laxström
+ * @author Santhosh Thottingal
+ * @license GPL-2.0+
+ * @since 2012-11-30
+ */
+
+/*
+ * Usage:
+ * $( '<div>' ).languagestatsbar( {
+ * language: 'fi',
+ * group: 'core'
+ * } );
+ * The status bar will be rendered to the newly created div. Or use any container.
+ */
+( function ( mw, $ ) {
+ 'use strict';
+
+ // Use mw.translate namespace for storing the language statistics.
+ mw.translate = mw.translate || {};
+
+ var LanguageStatsBar = function ( container, options ) {
+ this.$container = $( container );
+ this.group = options.group;
+ this.language = options.language;
+ this.$statsBar = null;
+ this.init();
+ };
+
+ LanguageStatsBar.prototype = {
+ init: function () {
+ if ( mw.translate.languagestats[this.language] ) {
+ this.render();
+ } else {
+ mw.translate.loadLanguageStats( this.language )
+ .done( $.proxy( this.render, this ) );
+ }
+ },
+
+ /**
+ * Listen for the change events and update the statsbar
+ */
+ listen: function () {
+ var i,
+ statsbar = this,
+ languageStats = mw.translate.languagestats[this.language];
+
+ statsbar.$statsBar.on( 'change', function ( event, to, from ) {
+ for ( i = 0; i < languageStats.length; i++ ) {
+ if ( languageStats[i].group === statsbar.group ) {
+ if ( to === 'translated' && from === 'untranslated' ) {
+ languageStats[i].translated++;
+ }
+ if ( to === 'proofread' ) {
+ languageStats[i].proofread++;
+ }
+ if ( to === 'fuzzy' ) {
+ languageStats[i].fuzzy++;
+ }
+
+ if ( from === 'fuzzy' ) {
+ languageStats[i].fuzzy--;
+ }
+ if ( from === 'proofread' ) {
+ languageStats[i].proofread--;
+ }
+ if ( from === 'translated' ) {
+ languageStats[i].translated--;
+ }
+ break;
+ }
+ }
+
+ // Update the stats bar
+ statsbar.update();
+ } );
+
+ statsbar.$container.hover( function () {
+ statsbar.$statsBar.find( '.tux-statsbar-info' ).removeClass( 'hide' );
+ }, function () {
+ statsbar.$statsBar.find( '.tux-statsbar-info' ).addClass( 'hide' );
+ } );
+ },
+
+ render: function () {
+ this.$statsBar = $( '<div>' )
+ .addClass( 'tux-statsbar' )
+ .data( 'group', this.group );
+
+ this.$statsBar.append(
+ $( '<span>' ).addClass( 'tux-proofread' ),
+ $( '<span>' ).addClass( 'tux-translated' ),
+ $( '<span>' ).addClass( 'tux-fuzzy' ),
+ $( '<span>' ).addClass( 'tux-untranslated' ),
+ $( '<div>' ).addClass( 'tux-statsbar-info hide' )
+ );
+
+ this.$container.append( this.$statsBar );
+ this.update();
+
+ this.listen();
+ },
+
+ update: function () {
+ var proofread, translated, fuzzy, untranslated, untranslatedCount,
+ stats = this.getStatsForGroup( this.group );
+
+ this.$statsBar.data( 'total', stats.total );
+
+ proofread = 100 * stats.proofread / stats.total;
+ // Proofread messages are also translated, so remove those for
+ // the bar showing only translated count.
+ translated = stats.translated - stats.proofread;
+ translated = 100 * translated / stats.total;
+ fuzzy = 100 * stats.fuzzy / stats.total;
+ untranslated = 100 - proofread - translated - fuzzy;
+ // Again, proofread counts are subset of translated counts
+ untranslatedCount = stats.total - stats.translated - stats.fuzzy;
+
+ this.$statsBar.find( '.tux-proofread' )
+ .data( 'proofread', stats.proofread )
+ .css( 'width', proofread + '%' );
+ this.$statsBar.find( '.tux-translated' )
+ .data( 'translated', stats.translated )
+ .css( 'width', translated + '%' );
+ this.$statsBar.find( '.tux-fuzzy' )
+ .data( 'fuzzy', stats.fuzzy )
+ .css( 'width', fuzzy + '%' );
+ this.$statsBar.find( '.tux-untranslated' )
+ .data( 'untranslated', untranslatedCount )
+ .css( 'width', untranslated + '%' );
+
+ translated = !translated ? 0 : translated + proofread;
+ proofread = !proofread ? 0 : proofread;
+
+ if ( fuzzy ) {
+ this.$statsBar.find( '.tux-statsbar-info' )
+ .text( mw.msg( 'translate-statsbar-tooltip-with-fuzzy',
+ translated.toFixed(), proofread.toFixed(),
+ fuzzy.toFixed() ) );
+ } else {
+ this.$statsBar.find( '.tux-statsbar-info' )
+ .text( mw.msg( 'translate-statsbar-tooltip',
+ translated.toFixed(), proofread.toFixed() ) );
+ }
+ },
+
+ getStatsForGroup: function ( group ) {
+ var i,
+ languageStats = mw.translate.languagestats[this.language];
+
+ for ( i = 0; i < languageStats.length; i++ ) {
+ if ( languageStats[i].group === group ) {
+ return languageStats[i];
+ }
+ }
+
+ return {
+ proofread: 0,
+ total: 0,
+ fuzzy: 0,
+ translated: 0
+ };
+ }
+ };
+
+ /*
+ * languagestatsbar PLUGIN DEFINITION
+ */
+
+ $.fn.languagestatsbar = function ( options ) {
+ return this.each( function () {
+ var $this = $( this ),
+ data = $this.data( 'languagestatsbar' );
+
+ if ( !data ) {
+ $this.data( 'languagestatsbar', ( data = new LanguageStatsBar( this, options ) ) );
+ }
+ } );
+ };
+
+ $.fn.languagestatsbar.Constructor = LanguageStatsBar;
+
+ mw.translate = mw.translate || {};
+} ( mediaWiki, jQuery ) );
diff --git a/MLEB/Translate/resources/js/ext.translate.storage.js b/MLEB/Translate/resources/js/ext.translate.storage.js
new file mode 100644
index 00000000..c6352493
--- /dev/null
+++ b/MLEB/Translate/resources/js/ext.translate.storage.js
@@ -0,0 +1,39 @@
+( function ( mw ) {
+ 'use strict';
+
+ mw.translate = mw.translate || {};
+
+ /**
+ * This class can save a translation into MediaWiki pages using the
+ * MediaWiki edit WebApi.
+ * @since 2013.10
+ */
+ var TranslationApiStorage = function () {
+ // No-op for now. Could take api module as param for example.
+ };
+
+ TranslationApiStorage.prototype = {
+ /**
+ * Save the translation
+ * @param {string} title The title of the page including language code
+ * to store the translation.
+ * @param {string} translation The translation of the message
+ * @return {jQuery.Promise}
+ */
+ save: function ( title, translation ) {
+ var deferred = new mw.Api().postWithEditToken( {
+ action: 'edit',
+ title: title,
+ text: translation,
+ // If the session expires, fail the saving instead of saving it
+ // as an anonymous user (if anonymous can save).
+ // When undefined, the parameter is not included in the request
+ assert: mw.user.isAnon() ? undefined : 'user'
+ } );
+
+ return deferred.promise();
+ }
+ };
+
+ mw.translate.TranslationApiStorage = TranslationApiStorage;
+}( mediaWiki ) );
diff --git a/MLEB/Translate/resources/js/ext.translate.translationstashstorage.js b/MLEB/Translate/resources/js/ext.translate.translationstashstorage.js
new file mode 100644
index 00000000..fb24b36d
--- /dev/null
+++ b/MLEB/Translate/resources/js/ext.translate.translationstashstorage.js
@@ -0,0 +1,51 @@
+( function ( $, mw ) {
+ 'use strict';
+
+ mw.translate = mw.translate || {};
+
+ /**
+ * This class can save translation to translation stash
+ * @since 2013.10
+ */
+ var TranslationStashStorage = function () {
+ // No-op for now. Could take api module as param for example.
+ };
+
+ TranslationStashStorage.prototype = {
+ /**
+ * Save the translation
+ * @param {string} title The title of the page including language code
+ * to store the translation.
+ * @param {string} translation The translation of the message
+ * @return {jQuery.Promise}
+ */
+ save: function ( title, translation ) {
+ var deferred = new mw.Api().postWithToken( 'translationstash', {
+ action: 'translationstash',
+ subaction: 'add',
+ title: title,
+ translation: translation
+ } );
+
+ return deferred.promise();
+ },
+
+ /**
+ * Get the current users translations
+ * @return {jQuery.Promise}
+ */
+ getUserTranslations: function ( user ) {
+ var deferred = new mw.Api().postWithToken( 'translationstash', {
+ action: 'translationstash',
+ subaction: 'query',
+ username: user
+ } );
+
+ return deferred.promise();
+ }
+
+ };
+
+ mw.translate.TranslationStashStorage = TranslationStashStorage;
+
+}( jQuery, mediaWiki ) );
diff --git a/MLEB/Translate/resources/js/ext.translate.workflowselector.js b/MLEB/Translate/resources/js/ext.translate.workflowselector.js
new file mode 100644
index 00000000..5911ce0e
--- /dev/null
+++ b/MLEB/Translate/resources/js/ext.translate.workflowselector.js
@@ -0,0 +1,170 @@
+/*
+ * A jQuery plugin which handles the display and change of message group
+ * workflow sates.
+ *
+ * @author Niklas Laxström
+ * @license GPL-2.0+
+ */
+
+( function ( $, mw ) {
+ 'use strict';
+
+ function WorkflowSelector( container ) {
+ this.$container = $( container );
+
+ // Hide the workflow selector when clicking outside of it
+ $( 'html' ).on( 'click', function ( e ) {
+ if ( !e.isDefaultPrevented() ) {
+ $( container )
+ .find( '.tux-workflow-status-selector' )
+ .addClass( 'hide' );
+ }
+ } );
+ }
+
+ WorkflowSelector.prototype = {
+ /**
+ * Displays the current state and selector if relevant.
+ * @param {String} groupId
+ * @param {String} language
+ * @param {String} state
+ */
+ receiveState: function ( groupId, language, state ) {
+ var instance = this;
+ instance.currentState = state;
+ instance.language = language;
+
+ // Only if groupId changes, fetch the new states
+ if ( instance.groupId === groupId ) {
+ // But update the display
+ instance.display();
+ return;
+ }
+
+ instance.groupId = groupId;
+ mw.translate.getMessageGroup( groupId, 'workflowstates' )
+ .done( function ( group ) {
+ instance.states = group.workflowstates;
+ instance.display();
+ } );
+ },
+
+ /**
+ * Calls the WebApi to change the state to a new value.
+ * @param {String} state
+ * @return {jQuery.Promise}
+ */
+ changeState: function ( state ) {
+ var instance = this,
+ tokenCall, deferred;
+
+ deferred = new $.Deferred();
+ tokenCall = new mw.Api().get( { action: 'tokens', type: 'groupreview' } );
+
+ tokenCall.fail( deferred.reject );
+ tokenCall.done( function ( result ) {
+ var params = {
+ action: 'groupreview',
+ group: instance.groupId,
+ language: instance.language,
+ state: state,
+ token: result.tokens.groupreviewtoken,
+ format: 'json'
+ };
+ new mw.Api().post( params )
+ .done( deferred.resolve )
+ .fail( deferred.reject );
+ } );
+
+ return deferred.promise();
+ },
+
+ /**
+ * Get the text which says that the current state is X.
+ * @param {String} stateName
+ * @return {String} Text which should be escaped.
+ */
+ getStateDisplay: function ( stateName ) {
+ return mw.msg( 'translate-workflowstatus', stateName );
+ },
+
+ /**
+ * Actually constructs the DOM and displays the selector.
+ */
+ display: function () {
+ var instance = this,
+ $display, $list;
+
+ instance.$container.empty();
+ if ( !instance.states ) {
+ return;
+ }
+
+ $list = $( '<ul>' )
+ .addClass( 'tux-dropdown-menu tux-workflow-status-selector hide' );
+
+ $display = $( '<div>' )
+ .addClass( 'tux-workflow-status' )
+ .text( mw.msg( 'translate-workflow-state-' ) )
+ .click( function ( e ) {
+ $list.toggleClass( 'hide' );
+ e.stopPropagation();
+ } );
+
+ $.each( this.states, function ( id, data ) {
+ var $state;
+
+ // Store the id also
+ data.id = id;
+
+ $state = $( '<li>' )
+ .data( 'state', data )
+ .text( data._name );
+
+ if ( data._canchange && id !== instance.currentState ) {
+ $state.addClass( 'changeable' );
+ } else {
+ $state.addClass( 'unchangeable' );
+ }
+
+ if ( id === instance.currentState ) {
+ $display.text( instance.getStateDisplay( data._name ) );
+ $state.addClass( 'selected' );
+ }
+
+ $state.appendTo( $list );
+ } );
+
+ $list.find( '.changeable' ).click( function () {
+ var $this = $( this ), state;
+
+ state = $this.data( 'state' ).id;
+
+ $display.text( mw.msg( 'translate-workflow-set-doing' ) );
+ instance.changeState( state )
+ .done( function () {
+ instance.receiveState( instance.groupId, instance.language, state );
+ } )
+ .fail( function () {
+ window.alert( 'Change of state failed' );
+ } );
+ } );
+ instance.$container.append( $display, $list );
+ }
+ };
+
+ /* workflowselector jQuery definitions */
+ $.fn.workflowselector = function ( groupId, language, state ) {
+ return this.each( function () {
+ var $this = $( this ),
+ data = $this.data( 'workflowselector' );
+
+ if ( !data ) {
+ $this.data( 'workflowselector', ( data = new WorkflowSelector( this ) ) );
+ }
+ $this.data( 'workflowselector' ).receiveState( groupId, language, state );
+ } );
+ };
+ $.fn.workflowselector.Constructor = WorkflowSelector;
+
+}( jQuery, mediaWiki ) );
diff --git a/MLEB/Translate/resources/js/jquery.ajaxdispatcher.js b/MLEB/Translate/resources/js/jquery.ajaxdispatcher.js
new file mode 100644
index 00000000..76b69dca
--- /dev/null
+++ b/MLEB/Translate/resources/js/jquery.ajaxdispatcher.js
@@ -0,0 +1,59 @@
+( function ( $ ) {
+ 'use strict';
+
+ /**
+ * Call list of callbacks returning promises in serial order and returns a list of promises.
+ *
+ * @author Niklas Laxström, 2014
+ *
+ * @param {callable[]} list List of callbacks returning promises.
+ * @return {jQuery.promise}
+ */
+ function ajaxDispatcher( list, maxRetries ) {
+ maxRetries = maxRetries || 0;
+
+ var deferred = $.Deferred();
+ return $.when( helper( list, maxRetries ) )
+ .then( function ( promises ) {
+ return deferred.resolve( promises );
+ } );
+ }
+
+ function helper( list, maxRetries ) {
+ var first, rest, retries, retrier,
+ deferred = $.Deferred();
+
+ if ( list.length === 0 ) {
+ deferred.resolve( [] );
+ return deferred;
+ }
+
+ first = list.slice( 0, 1 )[0];
+ rest = list.slice( 1 );
+
+ retries = 0;
+ retrier = function () {
+ var promise = this;
+
+ if ( promise.state() === 'rejected' ) {
+ if ( retries < maxRetries ) {
+ retries += 1;
+ return first.call().always( retrier );
+ }
+ }
+
+ if ( promise.state() !== 'pending' ) {
+ helper( rest, maxRetries ).always( function ( promises ) {
+ deferred.resolve( [].concat( promise, promises ) );
+ } );
+ }
+ };
+
+ first.call().always( retrier );
+
+ return deferred;
+ }
+
+ $.extend( $, { ajaxDispatcher: ajaxDispatcher } );
+
+}( jQuery ) );
diff --git a/MLEB/Translate/resources/js/jquery.autosize.js b/MLEB/Translate/resources/js/jquery.autosize.js
new file mode 100644
index 00000000..b2264beb
--- /dev/null
+++ b/MLEB/Translate/resources/js/jquery.autosize.js
@@ -0,0 +1,243 @@
+/*!
+ Autosize v1.17.2 - 2013-07-30
+ Automatically adjust textarea height based on user input.
+ (c) 2013 Jack Moore - http://www.jacklmoore.com/autosize
+ license: http://www.opensource.org/licenses/mit-license.php
+ https://raw.github.com/jackmoore/autosize/1.17.2/jquery.autosize.js
+ */
+(function (factory) {
+ if (typeof define === 'function' && define.amd) {
+ // AMD. Register as an anonymous module.
+ define(['jquery'], factory);
+ } else {
+ // Browser globals: jQuery or jQuery-like library, such as Zepto
+ factory(window.jQuery || window.$);
+ }
+}(function ($) {
+ var
+ defaults = {
+ className: 'autosizejs',
+ append: '',
+ callback: false,
+ resizeDelay: 10
+ },
+
+ // border:0 is unnecessary, but avoids a bug in FireFox on OSX
+ copy = '<textarea tabindex="-1" style="position:absolute; top:-999px; left:0; right:auto; bottom:auto; border:0; -moz-box-sizing:content-box; -webkit-box-sizing:content-box; box-sizing:content-box; word-wrap:break-word; height:0 !important; min-height:0 !important; overflow:hidden; transition:none; -webkit-transition:none; -moz-transition:none;"/>',
+
+ // line-height is conditionally included because IE7/IE8/old Opera do not return the correct value.
+ typographyStyles = [
+ 'fontFamily',
+ 'fontSize',
+ 'fontWeight',
+ 'fontStyle',
+ 'letterSpacing',
+ 'textTransform',
+ 'wordSpacing',
+ 'textIndent'
+ ],
+
+ // to keep track which textarea is being mirrored when adjust() is called.
+ mirrored,
+
+ // the mirror element, which is used to calculate what size the mirrored element should be.
+ mirror = $(copy).data('autosize', true)[0];
+
+ // test that line-height can be accurately copied.
+ mirror.style.lineHeight = '99px';
+ if ($(mirror).css('lineHeight') === '99px') {
+ typographyStyles.push('lineHeight');
+ }
+ mirror.style.lineHeight = '';
+
+ $.fn.autosize = function (options) {
+ options = $.extend({}, defaults, options || {});
+
+ if (mirror.parentNode !== document.body) {
+ $(document.body).append(mirror);
+ }
+
+ return this.each(function () {
+ var
+ ta = this,
+ $ta = $(ta),
+ maxHeight,
+ minHeight,
+ boxOffset = 0,
+ callback = $.isFunction(options.callback),
+ originalStyles = {
+ height: ta.style.height,
+ overflow: ta.style.overflow,
+ overflowY: ta.style.overflowY,
+ wordWrap: ta.style.wordWrap,
+ resize: ta.style.resize
+ },
+ timeout,
+ width = $ta.width();
+
+ if ($ta.data('autosize')) {
+ // exit if autosize has already been applied, or if the textarea is the mirror element.
+ return;
+ }
+ $ta.data('autosize', true);
+
+ if ($ta.css('box-sizing') === 'border-box' || $ta.css('-moz-box-sizing') === 'border-box' || $ta.css('-webkit-box-sizing') === 'border-box'){
+ boxOffset = $ta.outerHeight() - $ta.height();
+ }
+
+ // IE8 and lower return 'auto', which parses to NaN, if no min-height is set.
+ minHeight = Math.max(parseInt($ta.css('minHeight'), 10) - boxOffset || 0, $ta.height());
+
+ $ta.css({
+ overflow: 'hidden',
+ overflowY: 'hidden',
+ wordWrap: 'break-word', // horizontal overflow is hidden, so break-word is necessary for handling words longer than the textarea width
+ resize: ($ta.css('resize') === 'none' || $ta.css('resize') === 'vertical') ? 'none' : 'horizontal'
+ });
+
+ function initMirror() {
+ var styles = {}, ignore;
+
+ mirrored = ta;
+ mirror.className = options.className;
+ maxHeight = parseInt($ta.css('maxHeight'), 10);
+
+ // mirror is a duplicate textarea located off-screen that
+ // is automatically updated to contain the same text as the
+ // original textarea. mirror always has a height of 0.
+ // This gives a cross-browser supported way getting the actual
+ // height of the text, through the scrollTop property.
+ $.each(typographyStyles, function(i,val){
+ styles[val] = $ta.css(val);
+ });
+ $(mirror).css(styles);
+
+ // The textarea overflow is probably now hidden, but Chrome doesn't reflow the text to account for the
+ // new space made available by removing the scrollbars. This workaround causes Chrome to reflow the text.
+ if ('oninput' in ta) {
+ var width = ta.style.width;
+ ta.style.width = '0px';
+ ignore = ta.offsetWidth; // This value isn't used, but getting it triggers the necessary reflow
+ ta.style.width = width;
+ }
+ }
+
+ // Using mainly bare JS in this function because it is going
+ // to fire very often while typing, and needs to very efficient.
+ function adjust() {
+ var height, original, width, style;
+
+ if (mirrored !== ta) {
+ initMirror();
+ }
+
+ mirror.value = ta.value + options.append;
+ mirror.style.overflowY = ta.style.overflowY;
+ original = parseInt(ta.style.height,10);
+
+ // window.getComputedStyle, getBoundingClientRect returning a width are unsupported in IE8 and lower.
+ // The mirror width must exactly match the textarea width, so using getBoundingClientRect because it doesn't round the sub-pixel value.
+ if ('getComputedStyle' in window) {
+ style = window.getComputedStyle(ta);
+ width = ta.getBoundingClientRect().width;
+
+ $.each(['paddingLeft', 'paddingRight', 'borderLeftWidth', 'borderRightWidth'], function(i,val){
+ width -= parseInt(style[val],10);
+ });
+
+ mirror.style.width = width + 'px';
+ }
+ else {
+ mirror.style.width = Math.max($ta.width(), 0) + 'px';
+ }
+
+ // Needed for IE8 and lower to reliably return the correct scrollTop
+ mirror.scrollTop = 0;
+
+ mirror.scrollTop = 9e4;
+
+ // Using scrollTop rather than scrollHeight because scrollHeight is non-standard and includes padding.
+ height = mirror.scrollTop;
+
+ if (maxHeight && height > maxHeight) {
+ ta.style.overflowY = 'scroll';
+ height = maxHeight;
+ } else {
+ ta.style.overflowY = 'hidden';
+ if (height < minHeight) {
+ height = minHeight;
+ }
+ }
+
+ height += boxOffset;
+
+ if (original !== height) {
+ ta.style.height = height + 'px';
+ if (callback) {
+ options.callback.call(ta,ta);
+ }
+ }
+ }
+
+ function resize () {
+ clearTimeout(timeout);
+ timeout = setTimeout(function(){
+ if ($ta.width() !== width) {
+ adjust();
+ }
+ }, parseInt(options.resizeDelay,10));
+ }
+
+ if ('onpropertychange' in ta) {
+ if ('oninput' in ta) {
+ // Detects IE9. IE9 does not fire onpropertychange or oninput for deletions,
+ // so binding to onkeyup to catch most of those occasions. There is no way that I
+ // know of to detect something like 'cut' in IE9.
+ $ta.on('input.autosize keyup.autosize', adjust);
+ } else {
+ // IE7 / IE8
+ $ta.on('propertychange.autosize', function(){
+ if(event.propertyName === 'value'){
+ adjust();
+ }
+ });
+ }
+ } else {
+ // Modern Browsers
+ $ta.on('input.autosize', adjust);
+ }
+
+ // Set options.resizeDelay to false if using fixed-width textarea elements.
+ // Uses a timeout and width check to reduce the amount of times adjust needs to be called after window resize.
+
+ if (options.resizeDelay !== false) {
+ $(window).on('resize.autosize', resize);
+ }
+
+ // Event for manual triggering if needed.
+ // Should only be needed when the value of the textarea is changed through JavaScript rather than user input.
+ $ta.on('autosize.resize', adjust);
+
+ // Event for manual triggering that also forces the styles to update as well.
+ // Should only be needed if one of typography styles of the textarea change, and the textarea is already the target of the adjust method.
+ $ta.on('autosize.resizeIncludeStyle', function() {
+ mirrored = null;
+ adjust();
+ });
+
+ $ta.on('autosize.destroy', function(){
+ mirrored = null;
+ clearTimeout(timeout);
+ $(window).off('resize', resize);
+ $ta
+ .off('autosize')
+ .off('.autosize')
+ .css(originalStyles)
+ .removeData('autosize');
+ });
+
+ // Call adjust in case the textarea already contains text.
+ adjust();
+ });
+ };
+}));
diff --git a/MLEB/Translate/resources/js/jquery.textchange.js b/MLEB/Translate/resources/js/jquery.textchange.js
new file mode 100644
index 00000000..6fdeec87
--- /dev/null
+++ b/MLEB/Translate/resources/js/jquery.textchange.js
@@ -0,0 +1,43 @@
+/*
+ * Trigger a textchange event on text change in input fields.
+ * And make it cross browser compatible
+ * @author Santhosh Thottingal, 2013
+ * @see https://gist.github.com/mkelly12/424774
+ */
+( function ( $ ) {
+ 'use strict';
+
+ $.event.special.textchange = {
+
+ setup: function () {
+ $( this )
+ .data( 'lastValue', $( this ).val() )
+ .on( 'keyup.textchange', $.event.special.textchange.handler )
+ .on( 'cut.textchange paste.textchange input.textchange', $.event.special.textchange.delayedHandler );
+ },
+
+ teardown: function () {
+ $( this ).unbind( '.textchange' );
+ },
+
+ handler: function () {
+ $.event.special.textchange.triggerIfChanged( $( this ) );
+ },
+
+ delayedHandler: function () {
+ var element = $( this );
+ setTimeout( function () {
+ $.event.special.textchange.triggerIfChanged( element );
+ }, 25 );
+ },
+
+ triggerIfChanged: function ( element ) {
+ var current = element.val();
+ if ( current !== element.data( 'lastValue' ) ) {
+ element.trigger( 'textchange', [ element.data( 'lastValue' ) ] );
+ element.data( 'lastValue', current );
+ }
+ }
+ };
+
+} )( jQuery );
diff --git a/MLEB/Translate/resources/js/jquery.ui.position.js b/MLEB/Translate/resources/js/jquery.ui.position.js
new file mode 100644
index 00000000..1a88c353
--- /dev/null
+++ b/MLEB/Translate/resources/js/jquery.ui.position.js
@@ -0,0 +1,498 @@
+/*!
+ * jQuery UI Position 1.10.3
+ * http://jqueryui.com
+ *
+ * Copyright 2013 jQuery Foundation and other contributors
+ * Released under the MIT license.
+ * http://jquery.org/license
+ *
+ * http://api.jqueryui.com/position/
+ * @codingStandardsIgnoreFile External lib.
+ */
+(function( $, undefined ) {
+
+$.ui = $.ui || {};
+
+var cachedScrollbarWidth,
+ max = Math.max,
+ abs = Math.abs,
+ round = Math.round,
+ rhorizontal = /left|center|right/,
+ rvertical = /top|center|bottom/,
+ roffset = /[\+\-]\d+(\.[\d]+)?%?/,
+ rposition = /^\w+/,
+ rpercent = /%$/,
+ _position = $.fn.position;
+
+function getOffsets( offsets, width, height ) {
+ return [
+ parseFloat( offsets[ 0 ] ) * ( rpercent.test( offsets[ 0 ] ) ? width / 100 : 1 ),
+ parseFloat( offsets[ 1 ] ) * ( rpercent.test( offsets[ 1 ] ) ? height / 100 : 1 )
+ ];
+}
+
+function parseCss( element, property ) {
+ return parseInt( $.css( element, property ), 10 ) || 0;
+}
+
+function getDimensions( elem ) {
+ var raw = elem[0];
+ if ( raw.nodeType === 9 ) {
+ return {
+ width: elem.width(),
+ height: elem.height(),
+ offset: { top: 0, left: 0 }
+ };
+ }
+ if ( $.isWindow( raw ) ) {
+ return {
+ width: elem.width(),
+ height: elem.height(),
+ offset: { top: elem.scrollTop(), left: elem.scrollLeft() }
+ };
+ }
+ if ( raw.preventDefault ) {
+ return {
+ width: 0,
+ height: 0,
+ offset: { top: raw.pageY, left: raw.pageX }
+ };
+ }
+ return {
+ width: elem.outerWidth(),
+ height: elem.outerHeight(),
+ offset: elem.offset()
+ };
+}
+
+$.position = {
+ scrollbarWidth: function() {
+ if ( cachedScrollbarWidth !== undefined ) {
+ return cachedScrollbarWidth;
+ }
+ var w1, w2,
+ div = $( "<div style='display:block;width:50px;height:50px;overflow:hidden;'><div style='height:100px;width:auto;'></div></div>" ),
+ innerDiv = div.children()[0];
+
+ $( "body" ).append( div );
+ w1 = innerDiv.offsetWidth;
+ div.css( "overflow", "scroll" );
+
+ w2 = innerDiv.offsetWidth;
+
+ if ( w1 === w2 ) {
+ w2 = div[0].clientWidth;
+ }
+
+ div.remove();
+
+ return (cachedScrollbarWidth = w1 - w2);
+ },
+ getScrollInfo: function( within ) {
+ var overflowX = within.isWindow ? "" : within.element.css( "overflow-x" ),
+ overflowY = within.isWindow ? "" : within.element.css( "overflow-y" ),
+ hasOverflowX = overflowX === "scroll" ||
+ ( overflowX === "auto" && within.width < within.element[0].scrollWidth ),
+ hasOverflowY = overflowY === "scroll" ||
+ ( overflowY === "auto" && within.height < within.element[0].scrollHeight );
+ return {
+ width: hasOverflowY ? $.position.scrollbarWidth() : 0,
+ height: hasOverflowX ? $.position.scrollbarWidth() : 0
+ };
+ },
+ getWithinInfo: function( element ) {
+ var withinElement = $( element || window ),
+ isWindow = $.isWindow( withinElement[0] );
+ return {
+ element: withinElement,
+ isWindow: isWindow,
+ offset: withinElement.offset() || { left: 0, top: 0 },
+ scrollLeft: withinElement.scrollLeft(),
+ scrollTop: withinElement.scrollTop(),
+ width: isWindow ? withinElement.width() : withinElement.outerWidth(),
+ height: isWindow ? withinElement.height() : withinElement.outerHeight()
+ };
+ }
+};
+
+$.fn.position = function( options ) {
+ if ( !options || !options.of ) {
+ return _position.apply( this, arguments );
+ }
+
+ // make a copy, we don't want to modify arguments
+ options = $.extend( {}, options );
+
+ var atOffset, targetWidth, targetHeight, targetOffset, basePosition, dimensions,
+ target = $( options.of ),
+ within = $.position.getWithinInfo( options.within ),
+ scrollInfo = $.position.getScrollInfo( within ),
+ collision = ( options.collision || "flip" ).split( " " ),
+ offsets = {};
+
+ dimensions = getDimensions( target );
+ if ( target[0].preventDefault ) {
+ // force left top to allow flipping
+ options.at = "left top";
+ }
+ targetWidth = dimensions.width;
+ targetHeight = dimensions.height;
+ targetOffset = dimensions.offset;
+ // clone to reuse original targetOffset later
+ basePosition = $.extend( {}, targetOffset );
+
+ // force my and at to have valid horizontal and vertical positions
+ // if a value is missing or invalid, it will be converted to center
+ $.each( [ "my", "at" ], function() {
+ var pos = ( options[ this ] || "" ).split( " " ),
+ horizontalOffset,
+ verticalOffset;
+
+ if ( pos.length === 1) {
+ pos = rhorizontal.test( pos[ 0 ] ) ?
+ pos.concat( [ "center" ] ) :
+ rvertical.test( pos[ 0 ] ) ?
+ [ "center" ].concat( pos ) :
+ [ "center", "center" ];
+ }
+ pos[ 0 ] = rhorizontal.test( pos[ 0 ] ) ? pos[ 0 ] : "center";
+ pos[ 1 ] = rvertical.test( pos[ 1 ] ) ? pos[ 1 ] : "center";
+
+ // calculate offsets
+ horizontalOffset = roffset.exec( pos[ 0 ] );
+ verticalOffset = roffset.exec( pos[ 1 ] );
+ offsets[ this ] = [
+ horizontalOffset ? horizontalOffset[ 0 ] : 0,
+ verticalOffset ? verticalOffset[ 0 ] : 0
+ ];
+
+ // reduce to just the positions without the offsets
+ options[ this ] = [
+ rposition.exec( pos[ 0 ] )[ 0 ],
+ rposition.exec( pos[ 1 ] )[ 0 ]
+ ];
+ });
+
+ // normalize collision option
+ if ( collision.length === 1 ) {
+ collision[ 1 ] = collision[ 0 ];
+ }
+
+ if ( options.at[ 0 ] === "right" ) {
+ basePosition.left += targetWidth;
+ } else if ( options.at[ 0 ] === "center" ) {
+ basePosition.left += targetWidth / 2;
+ }
+
+ if ( options.at[ 1 ] === "bottom" ) {
+ basePosition.top += targetHeight;
+ } else if ( options.at[ 1 ] === "center" ) {
+ basePosition.top += targetHeight / 2;
+ }
+
+ atOffset = getOffsets( offsets.at, targetWidth, targetHeight );
+ basePosition.left += atOffset[ 0 ];
+ basePosition.top += atOffset[ 1 ];
+
+ return this.each(function() {
+ var collisionPosition, using,
+ elem = $( this ),
+ elemWidth = elem.outerWidth(),
+ elemHeight = elem.outerHeight(),
+ marginLeft = parseCss( this, "marginLeft" ),
+ marginTop = parseCss( this, "marginTop" ),
+ collisionWidth = elemWidth + marginLeft + parseCss( this, "marginRight" ) + scrollInfo.width,
+ collisionHeight = elemHeight + marginTop + parseCss( this, "marginBottom" ) + scrollInfo.height,
+ position = $.extend( {}, basePosition ),
+ myOffset = getOffsets( offsets.my, elem.outerWidth(), elem.outerHeight() );
+
+ if ( options.my[ 0 ] === "right" ) {
+ position.left -= elemWidth;
+ } else if ( options.my[ 0 ] === "center" ) {
+ position.left -= elemWidth / 2;
+ }
+
+ if ( options.my[ 1 ] === "bottom" ) {
+ position.top -= elemHeight;
+ } else if ( options.my[ 1 ] === "center" ) {
+ position.top -= elemHeight / 2;
+ }
+
+ position.left += myOffset[ 0 ];
+ position.top += myOffset[ 1 ];
+
+ // if the browser doesn't support fractions, then round for consistent results
+ if ( !$.support.offsetFractions ) {
+ position.left = round( position.left );
+ position.top = round( position.top );
+ }
+
+ collisionPosition = {
+ marginLeft: marginLeft,
+ marginTop: marginTop
+ };
+
+ $.each( [ "left", "top" ], function( i, dir ) {
+ if ( $.ui.position[ collision[ i ] ] ) {
+ $.ui.position[ collision[ i ] ][ dir ]( position, {
+ targetWidth: targetWidth,
+ targetHeight: targetHeight,
+ elemWidth: elemWidth,
+ elemHeight: elemHeight,
+ collisionPosition: collisionPosition,
+ collisionWidth: collisionWidth,
+ collisionHeight: collisionHeight,
+ offset: [ atOffset[ 0 ] + myOffset[ 0 ], atOffset [ 1 ] + myOffset[ 1 ] ],
+ my: options.my,
+ at: options.at,
+ within: within,
+ elem : elem
+ });
+ }
+ });
+
+ if ( options.using ) {
+ // adds feedback as second argument to using callback, if present
+ using = function( props ) {
+ var left = targetOffset.left - position.left,
+ right = left + targetWidth - elemWidth,
+ top = targetOffset.top - position.top,
+ bottom = top + targetHeight - elemHeight,
+ feedback = {
+ target: {
+ element: target,
+ left: targetOffset.left,
+ top: targetOffset.top,
+ width: targetWidth,
+ height: targetHeight
+ },
+ element: {
+ element: elem,
+ left: position.left,
+ top: position.top,
+ width: elemWidth,
+ height: elemHeight
+ },
+ horizontal: right < 0 ? "left" : left > 0 ? "right" : "center",
+ vertical: bottom < 0 ? "top" : top > 0 ? "bottom" : "middle"
+ };
+ if ( targetWidth < elemWidth && abs( left + right ) < targetWidth ) {
+ feedback.horizontal = "center";
+ }
+ if ( targetHeight < elemHeight && abs( top + bottom ) < targetHeight ) {
+ feedback.vertical = "middle";
+ }
+ if ( max( abs( left ), abs( right ) ) > max( abs( top ), abs( bottom ) ) ) {
+ feedback.important = "horizontal";
+ } else {
+ feedback.important = "vertical";
+ }
+ options.using.call( this, props, feedback );
+ };
+ }
+
+ elem.offset( $.extend( position, { using: using } ) );
+ });
+};
+
+$.ui.position = {
+ fit: {
+ left: function( position, data ) {
+ var within = data.within,
+ withinOffset = within.isWindow ? within.scrollLeft : within.offset.left,
+ outerWidth = within.width,
+ collisionPosLeft = position.left - data.collisionPosition.marginLeft,
+ overLeft = withinOffset - collisionPosLeft,
+ overRight = collisionPosLeft + data.collisionWidth - outerWidth - withinOffset,
+ newOverRight;
+
+ // element is wider than within
+ if ( data.collisionWidth > outerWidth ) {
+ // element is initially over the left side of within
+ if ( overLeft > 0 && overRight <= 0 ) {
+ newOverRight = position.left + overLeft + data.collisionWidth - outerWidth - withinOffset;
+ position.left += overLeft - newOverRight;
+ // element is initially over right side of within
+ } else if ( overRight > 0 && overLeft <= 0 ) {
+ position.left = withinOffset;
+ // element is initially over both left and right sides of within
+ } else {
+ if ( overLeft > overRight ) {
+ position.left = withinOffset + outerWidth - data.collisionWidth;
+ } else {
+ position.left = withinOffset;
+ }
+ }
+ // too far left -> align with left edge
+ } else if ( overLeft > 0 ) {
+ position.left += overLeft;
+ // too far right -> align with right edge
+ } else if ( overRight > 0 ) {
+ position.left -= overRight;
+ // adjust based on position and margin
+ } else {
+ position.left = max( position.left - collisionPosLeft, position.left );
+ }
+ },
+ top: function( position, data ) {
+ var within = data.within,
+ withinOffset = within.isWindow ? within.scrollTop : within.offset.top,
+ outerHeight = data.within.height,
+ collisionPosTop = position.top - data.collisionPosition.marginTop,
+ overTop = withinOffset - collisionPosTop,
+ overBottom = collisionPosTop + data.collisionHeight - outerHeight - withinOffset,
+ newOverBottom;
+
+ // element is taller than within
+ if ( data.collisionHeight > outerHeight ) {
+ // element is initially over the top of within
+ if ( overTop > 0 && overBottom <= 0 ) {
+ newOverBottom = position.top + overTop + data.collisionHeight - outerHeight - withinOffset;
+ position.top += overTop - newOverBottom;
+ // element is initially over bottom of within
+ } else if ( overBottom > 0 && overTop <= 0 ) {
+ position.top = withinOffset;
+ // element is initially over both top and bottom of within
+ } else {
+ if ( overTop > overBottom ) {
+ position.top = withinOffset + outerHeight - data.collisionHeight;
+ } else {
+ position.top = withinOffset;
+ }
+ }
+ // too far up -> align with top
+ } else if ( overTop > 0 ) {
+ position.top += overTop;
+ // too far down -> align with bottom edge
+ } else if ( overBottom > 0 ) {
+ position.top -= overBottom;
+ // adjust based on position and margin
+ } else {
+ position.top = max( position.top - collisionPosTop, position.top );
+ }
+ }
+ },
+ flip: {
+ left: function( position, data ) {
+ var within = data.within,
+ withinOffset = within.offset.left + within.scrollLeft,
+ outerWidth = within.width,
+ offsetLeft = within.isWindow ? within.scrollLeft : within.offset.left,
+ collisionPosLeft = position.left - data.collisionPosition.marginLeft,
+ overLeft = collisionPosLeft - offsetLeft,
+ overRight = collisionPosLeft + data.collisionWidth - outerWidth - offsetLeft,
+ myOffset = data.my[ 0 ] === "left" ?
+ -data.elemWidth :
+ data.my[ 0 ] === "right" ?
+ data.elemWidth :
+ 0,
+ atOffset = data.at[ 0 ] === "left" ?
+ data.targetWidth :
+ data.at[ 0 ] === "right" ?
+ -data.targetWidth :
+ 0,
+ offset = -2 * data.offset[ 0 ],
+ newOverRight,
+ newOverLeft;
+
+ if ( overLeft < 0 ) {
+ newOverRight = position.left + myOffset + atOffset + offset + data.collisionWidth - outerWidth - withinOffset;
+ if ( newOverRight < 0 || newOverRight < abs( overLeft ) ) {
+ position.left += myOffset + atOffset + offset;
+ }
+ }
+ else if ( overRight > 0 ) {
+ newOverLeft = position.left - data.collisionPosition.marginLeft + myOffset + atOffset + offset - offsetLeft;
+ if ( newOverLeft > 0 || abs( newOverLeft ) < overRight ) {
+ position.left += myOffset + atOffset + offset;
+ }
+ }
+ },
+ top: function( position, data ) {
+ var within = data.within,
+ withinOffset = within.offset.top + within.scrollTop,
+ outerHeight = within.height,
+ offsetTop = within.isWindow ? within.scrollTop : within.offset.top,
+ collisionPosTop = position.top - data.collisionPosition.marginTop,
+ overTop = collisionPosTop - offsetTop,
+ overBottom = collisionPosTop + data.collisionHeight - outerHeight - offsetTop,
+ top = data.my[ 1 ] === "top",
+ myOffset = top ?
+ -data.elemHeight :
+ data.my[ 1 ] === "bottom" ?
+ data.elemHeight :
+ 0,
+ atOffset = data.at[ 1 ] === "top" ?
+ data.targetHeight :
+ data.at[ 1 ] === "bottom" ?
+ -data.targetHeight :
+ 0,
+ offset = -2 * data.offset[ 1 ],
+ newOverTop,
+ newOverBottom;
+ if ( overTop < 0 ) {
+ newOverBottom = position.top + myOffset + atOffset + offset + data.collisionHeight - outerHeight - withinOffset;
+ if ( ( position.top + myOffset + atOffset + offset) > overTop && ( newOverBottom < 0 || newOverBottom < abs( overTop ) ) ) {
+ position.top += myOffset + atOffset + offset;
+ }
+ }
+ else if ( overBottom > 0 ) {
+ newOverTop = position.top - data.collisionPosition.marginTop + myOffset + atOffset + offset - offsetTop;
+ if ( ( position.top + myOffset + atOffset + offset) > overBottom && ( newOverTop > 0 || abs( newOverTop ) < overBottom ) ) {
+ position.top += myOffset + atOffset + offset;
+ }
+ }
+ }
+ },
+ flipfit: {
+ left: function() {
+ $.ui.position.flip.left.apply( this, arguments );
+ $.ui.position.fit.left.apply( this, arguments );
+ },
+ top: function() {
+ $.ui.position.flip.top.apply( this, arguments );
+ $.ui.position.fit.top.apply( this, arguments );
+ }
+ }
+};
+
+// fraction support test
+(function () {
+ var testElement, testElementParent, testElementStyle, offsetLeft, i,
+ body = document.getElementsByTagName( "body" )[ 0 ],
+ div = document.createElement( "div" );
+
+ //Create a "fake body" for testing based on method used in jQuery.support
+ testElement = document.createElement( body ? "div" : "body" );
+ testElementStyle = {
+ visibility: "hidden",
+ width: 0,
+ height: 0,
+ border: 0,
+ margin: 0,
+ background: "none"
+ };
+ if ( body ) {
+ $.extend( testElementStyle, {
+ position: "absolute",
+ left: "-1000px",
+ top: "-1000px"
+ });
+ }
+ for ( i in testElementStyle ) {
+ testElement.style[ i ] = testElementStyle[ i ];
+ }
+ testElement.appendChild( div );
+ testElementParent = body || document.documentElement;
+ testElementParent.insertBefore( testElement, testElementParent.firstChild );
+
+ div.style.cssText = "position: absolute; left: 10.7432222px;";
+
+ offsetLeft = $( div ).offset().left;
+ $.support.offsetFractions = offsetLeft > 10 && offsetLeft < 11;
+
+ testElement.innerHTML = "";
+ testElementParent.removeChild( testElement );
+})();
+
+}( jQuery ) );
diff --git a/MLEB/Translate/scripts/TranslateStatsOutput.php b/MLEB/Translate/scripts/TranslateStatsOutput.php
new file mode 100644
index 00000000..24398b1b
--- /dev/null
+++ b/MLEB/Translate/scripts/TranslateStatsOutput.php
@@ -0,0 +1,25 @@
+<?php
+
+/**
+ * Provides heading, summaryheading and free text addition for stats output in
+ * wiki format.
+ *
+ * @ingroup Stats
+ */
+class TranslateStatsOutput extends WikiStatsOutput {
+ function heading() {
+ echo '{| class="mw-ext-translate-groupstatistics sortable wikitable" border="2" ' .
+ 'cellpadding="4" cellspacing="0" style="background-color: #F9F9F9; border: ' .
+ '1px #AAAAAA solid; border-collapse: collapse; clear:both;" width="100%"' . "\n";
+ }
+
+ function summaryheading() {
+ echo "\n" . '{| class="mw-ext-translate-groupstatistics sortable wikitable" ' .
+ 'border="2" cellpadding="4" cellspacing="0" style="background-color: #F9F9F9; ' .
+ 'border: 1px #AAAAAA solid; border-collapse: collapse; clear:both;"' . "\n";
+ }
+
+ function addFreeText( $freeText ) {
+ echo $freeText;
+ }
+}
diff --git a/MLEB/Translate/scripts/characterEditStats.php b/MLEB/Translate/scripts/characterEditStats.php
new file mode 100644
index 00000000..782d0086
--- /dev/null
+++ b/MLEB/Translate/scripts/characterEditStats.php
@@ -0,0 +1,131 @@
+<?php
+/**
+ * Show number of characters translated over a given period of time.
+ *
+ * @author Santhosh Thottingal
+ * @copyright Copyright 2013 Santhosh Thottingal
+ * @license GPL-2.0+
+ * @file
+ * @ingroup Script Stats
+ */
+
+// Standard boilerplate to define $IP
+if ( getenv( 'MW_INSTALL_PATH' ) !== false ) {
+ $IP = getenv( 'MW_INSTALL_PATH' );
+} else {
+ $dir = __DIR__;
+ $IP = "$dir/../../..";
+}
+require_once "$IP/maintenance/Maintenance.php";
+
+class CharacterEditStats extends Maintenance {
+ public function __construct() {
+ parent::__construct();
+ $this->mDescription = 'Script to show number of characters translated .';
+ $this->addOption(
+ 'top',
+ '(optional) Show given number of language codes (default: show all)',
+ false, /*required*/
+ true /*has arg*/
+ );
+ $this->addOption(
+ 'days',
+ '(optional) Calculate for given number of days (default: 30) ' .
+ '(capped by the max age of recent changes on the wiki)',
+ false, /*required*/
+ true /*has arg*/
+ );
+ $this->addOption(
+ 'bots',
+ '(optional) Include bot edits'
+ );
+ $this->addOption(
+ 'diff',
+ '(optional) Count the edit diffs alone'
+ );
+ $this->addOption(
+ 'ns',
+ '(optional) Comma separated list of namespace IDs',
+ false, /*required*/
+ true /*has arg*/
+ );
+ }
+
+ public function execute() {
+ global $wgTranslateFuzzyBotName, $wgSitename;
+
+ $days = (int)$this->getOption( 'days', 30 );
+ $hours = $days * 24;
+
+ $top = (int)$this->getOption( 'top', -1 );
+
+ $bots = $this->hasOption( 'bots' );
+
+ $namespaces = array();
+ if ( $this->hasOption( 'ns' ) ) {
+ $input = explode( ',', $this->getOption( 'ns' ) );
+
+ foreach ( $input as $namespace ) {
+ if ( is_numeric( $namespace ) ) {
+ $namespaces[] = $namespace;
+ }
+ }
+ }
+
+ // Select set of edits to report on
+
+ // Fetch some extrac fields that normally TranslateUtils::translationChanges wont
+ $extraFields = array( 'rc_old_len', 'rc_new_len' );
+ $rows = TranslateUtils::translationChanges( $hours, $bots, $namespaces, $extraFields );
+ // Get counts for edits per language code after filtering out edits by FuzzyBot
+ $codes = array();
+
+ foreach ( $rows as $_ ) {
+ // Filter out edits by $wgTranslateFuzzyBotName
+ if ( $_->rc_user_text === $wgTranslateFuzzyBotName ) {
+ continue;
+ }
+
+ $handle = new MessageHandle( Title::newFromText( $_->rc_title ) );
+ $code = $handle->getCode();
+
+ if ( !isset( $codes[$code] ) ) {
+ $codes[$code] = 0;
+ }
+
+ if ( $this->hasOption( 'diff' ) ) {
+ $diff = abs( $_->rc_new_len - $_->rc_old_len );
+ } else {
+ $diff = $_->rc_new_len;
+ }
+ $codes[$code] += $diff;
+ }
+
+ // Sort counts and report descending up to $top rows.
+ arsort( $codes );
+ $i = 0;
+ $total = 0;
+ $this->output( "Character edit stats for last $days days in $wgSitename\n" );
+ $this->output( "code\tname\tedit\n" );
+ $this->output( "-----------------------\n" );
+ foreach ( $codes as $code => $num ) {
+ if ( $i++ === $top ) {
+ break;
+ }
+ $language = Language::fetchLanguageName( $code );
+ if ( !$language ) {
+ // this will be very rare, but avoid division by zero in next line
+ continue;
+ }
+ $charRatio = mb_strlen( $language, 'UTF-8' ) / strlen( $language );
+ $num = intval( $num * $charRatio );
+ $total += $num;
+ $this->output( "$code\t$language\t$num\n" );
+ }
+ $this->output( "-----------------------\n" );
+ $this->output( "Total\t\t$total\n" );
+ }
+}
+
+$maintClass = 'CharacterEditStats';
+require_once RUN_MAINTENANCE_IF_MAIN;
diff --git a/MLEB/Translate/scripts/create-language-models.php b/MLEB/Translate/scripts/create-language-models.php
new file mode 100644
index 00000000..91b88081
--- /dev/null
+++ b/MLEB/Translate/scripts/create-language-models.php
@@ -0,0 +1,231 @@
+<?php
+/**
+ * Create language models for https://github.com/crodas/LanguageDetector based
+ * on translation data in your wiki.
+ *
+ * @author Niklas Laxström
+ *
+ * @copyright Copyright © 2013, Niklas Laxström
+ * @license GPL-2.0+
+ * @file
+ */
+
+// Standard boilerplate to define $IP
+if ( getenv( 'MW_INSTALL_PATH' ) !== false ) {
+ $IP = getenv( 'MW_INSTALL_PATH' );
+} else {
+ $dir = __DIR__;
+ $IP = "$dir/../../..";
+}
+require_once "$IP/maintenance/Maintenance.php";
+
+class LanguageModelCreator extends Maintenance {
+ protected $changes = array();
+
+ public function __construct() {
+ parent::__construct();
+ $this->mDescription = <<<TXT
+Create language models for https://github.com/crodas/LanguageDetector based
+on translation data in your wiki. It is safe to kill and restart the script.
+List of pages and filtered language data is cached for 24 hours. Json files
+present will be used, so don't forget to delete before new run.
+TXT;
+ }
+
+ public function execute() {
+ global $wgTranslateMessageNamespaces;
+
+ ini_set( 'memory_limit', -1 );
+
+ // How many messages per language to use.
+ // Language is skipped if it has less than 1000 translations.
+ $messages = 5000;
+
+ $languages = TranslateUtils::getLanguageNames( 'en' );
+ $cache = wfGetCache( CACHE_DB );
+ $key = wfMemckey( __METHOD__, $messages );
+
+ $pages = $cache->get( $key );
+ if ( !is_array( $pages ) ) {
+ $dbr = wfGetDB( DB_SLAVE );
+ $conds = array();
+ $conds[] = 'page_title' . $dbr->buildLike( $dbr->anyString(), '/', $dbr->anyString() );
+ $conds['page_namespace'] = $wgTranslateMessageNamespaces;
+
+ echo "Before query\n";
+ $res = $dbr->select(
+ array( 'page' ),
+ array( 'page_title, page_id' ),
+ $conds,
+ __METHOD__
+ );
+ echo "After query\n";
+
+ $total = $res->numRows();
+ $index = 0;
+
+ foreach ( $res as $row ) {
+ $index++;
+ $code = substr( $row->page_title, strrpos( $row->page_title, '/' ) + 1 );
+ if ( isset( $languages[$code] ) ) {
+ $pages[$code][] = $row->page_id;
+ }
+
+ if ( $index % 10000 === 0 ) {
+ $progress = number_format( $index / $total * 100, 2 );
+ echo "$progress%\n";
+ }
+ }
+
+ echo "\n";
+
+ foreach ( array_keys( $pages ) as $code ) {
+ if ( count( $pages[$code] ) > $messages ) {
+ $pages[$code] = array_slice( $pages[$code], 0, $messages );
+ }
+
+ $pages[$code] = implode( '|', $pages[$code] );
+ }
+
+ echo "After code map\n";
+
+ ksort( $pages );
+
+ echo "After sort map\n";
+
+ $cache->set( $key, $pages, 3600*24 );
+ echo "After set map\n";
+ }
+
+ unset( $pages['qqq'] );
+ unset( $pages['de-formal'] );
+ unset( $pages['nl-informal'] );
+ unset( $pages['en-gb'] );
+
+ $pids = array();
+ $threads = 2;
+ foreach ( $pages as $code => $pageids ) {
+ $pid = ( $threads > 1 ) ? pcntl_fork() : -1;
+
+ if ( $pid === 0 ) {
+ // Child, reseed because there is no bug in PHP:
+ // http://bugs.php.net/bug.php?id=42465
+ mt_srand( getmypid() );
+ $this->analyzeLanguage( $code, $pageids );
+ exit();
+ } elseif ( $pid === -1 ) {
+ // Fork failed or one thread, do it serialized
+ $this->analyzeLanguage( $code, $pageids );
+ } else {
+ // Main thread
+ $pids[] = $pid;
+ }
+
+ // If we hit the thread limit, wait for any child to finish.
+ if ( count( $pids ) >= $threads ) {
+ $status = 0;
+ $pid = pcntl_wait( $status );
+ unset( $pids[$pid] );
+ }
+ }
+
+ foreach ( $pids as $pid ) {
+ $status = 0;
+ pcntl_waitpid( $pid, $status );
+ }
+
+ $this->output( "Combining languages\n" );
+
+ $huge = array();
+ foreach ( glob( "temp-*.json" ) as $file ) {
+ $contents = file_get_contents( $file );
+ $json = FormatJson::decode( $contents, true );
+
+ $huge = array_merge( $json, $huge );
+ $huge['data'] = array_merge( $json['data'], $huge['data'] );
+ }
+
+ $json = FormatJson::encode( $huge, true, FormatJson::ALL_OK );
+ file_put_contents( 'translatewiki.net.json', $json );
+ }
+
+ protected function analyzeLanguage( $code, $ids ) {
+ if ( file_exists( "temp-$code.json" ) ) {
+ $this->output( "$code MODEL EXISTS\n" );
+ return;
+ }
+
+ $text = $this->cacheSourceText( $code, $ids );
+ if ( $text === '' ) {
+ return;
+ }
+
+ $config = new LanguageDetector\Config;
+ $config->useMb( true );
+ $c = new LanguageDetector\Learn( $config );
+ $c->addSample( $code, $text );
+ $c->addStepCallback( function( $lang, $status ) {
+ echo "Learning {$lang}: $status\n";
+ } );
+
+ $target = LanguageDetector\AbstractFormat::initFormatByPath( "temp-$code.json" );
+ $c->save( $target );
+ }
+
+ protected function cacheSourceText( $code, $ids ) {
+ $cache = wfGetCache( CACHE_DB );
+ $key = wfMemckey( __CLASS__, 'cc', $code );
+ $text = $cache->get( $key );
+ if ( !is_string( $text ) ) {
+
+ $snippets = array();
+
+ $ids = explode( '|', $ids );
+
+ $len = count( $ids );
+
+ if ( $len < 1000 ) {
+ $this->output( "$code: $len SKIPPED\n" );
+ return '';
+ } else {
+ $this->output( "$code PROCESSING\n" );
+ }
+
+ $time = microtime( true );
+
+ foreach ( $ids as $id ) {
+ $params = new FauxRequest( array(
+ 'pageid' => $id,
+ 'action' => 'parse',
+ 'prop' => 'text',
+ 'disablepp' => 'true',
+ ) );
+
+ $api = new ApiMain( $params );
+ $api->execute();
+
+ $result = $api->getResultData();
+ $text = $result['parse']['text']['*'];
+ $text = strip_tags( $text );
+ $text = str_replace( '!!FUZZY!!', '', $text );
+ $text = preg_replace( '/\$[0-9]/', '', $text );
+ $text = trim( $text );
+
+ $snippets[] = $text;
+ }
+
+ $text = implode( " ", $snippets );
+ $cache->set( $key, $text, 3600*24 );
+
+ $delta = microtime( true ) - $time;
+ $this->output( "$code TOOK $delta\n" );
+ } else {
+ $this->output( "$code FROM CACHE\n" );
+ }
+
+ return $text;
+ }
+}
+
+$maintClass = 'LanguageModelCreator';
+require_once RUN_MAINTENANCE_IF_MAIN;
diff --git a/MLEB/Translate/scripts/createCheckIndex.php b/MLEB/Translate/scripts/createCheckIndex.php
new file mode 100644
index 00000000..b98318db
--- /dev/null
+++ b/MLEB/Translate/scripts/createCheckIndex.php
@@ -0,0 +1,143 @@
+<?php
+/**
+ * Creates serialised database of messages that need checking for problems.
+ *
+ * @author Niklas Laxström
+ * @author Siebrand Mazeland
+ * @copyright Copyright © 2008-2013, Niklas Laxström, Siebrand Mazeland
+ * @license GPL-2.0+
+ * @file
+ */
+
+// Standard boilerplate to define $IP
+if ( getenv( 'MW_INSTALL_PATH' ) !== false ) {
+ $IP = getenv( 'MW_INSTALL_PATH' );
+} else {
+ $dir = __DIR__;
+ $IP = "$dir/../../..";
+}
+require_once "$IP/maintenance/Maintenance.php";
+
+class CreateCheckIndex extends Maintenance {
+ public function __construct() {
+ parent::__construct();
+ $this->mDescription = 'Creates serialised database of messages that need ' .
+ 'checking for problems.';
+ $this->addOption(
+ 'group',
+ '(optional) Comma separated list of group IDs to process (can use * as wildcard). ' .
+ 'Default: "*"',
+ false, /*required*/
+ true /*has arg*/
+ );
+ }
+
+ public function execute() {
+ $codes = Language::fetchLanguageNames( false );
+
+ // Exclude the documentation language code
+ global $wgTranslateDocumentationLanguageCode;
+ if ( $wgTranslateDocumentationLanguageCode ) {
+ unset( $codes[$wgTranslateDocumentationLanguageCode] );
+ }
+
+ $reqGroups = $this->getOption( 'group' );
+ if ( $reqGroups ) {
+ $reqGroups = explode( ',', $reqGroups );
+ $reqGroups = array_map( 'trim', $reqGroups );
+ $reqGroups = MessageGroups::expandWildcards( $reqGroups );
+ }
+
+ $verbose = isset( $options['verbose'] );
+
+ $groups = MessageGroups::singleton()->getGroups();
+
+ /** @var $g MessageGroup */
+ foreach ( $groups as $g ) {
+ $id = $g->getId();
+ $sourceLanguage = $g->getSourceLanguage();
+
+ // Skip groups that are not requested
+ if ( $reqGroups && !in_array( $id, $reqGroups ) ) {
+ unset( $g );
+ continue;
+ }
+
+ $checker = $g->getChecker();
+ if ( !$checker ) {
+ unset( $g );
+ continue;
+ }
+
+ // Initialise messages, using unique definitions if appropriate
+ $collection = $g->initCollection( $sourceLanguage, true );
+ if ( !count( $collection ) ) {
+ continue;
+ }
+
+ $this->output( "Working with $id: ", $id );
+
+ // Skip source language code
+ $langCodes = $codes;
+ unset( $langCodes[$sourceLanguage] );
+
+ $langCodes = array_keys( $langCodes );
+ sort( $langCodes );
+
+ foreach ( $langCodes as $code ) {
+ $this->output( "$code ", $id );
+
+ $problematic = array();
+
+ $collection->resetForNewLanguage( $code );
+ $collection->loadTranslations();
+
+ global $wgContLang;
+
+ foreach ( $collection as $key => $message ) {
+ $prob = $checker->checkMessageFast( $message, $code );
+ if ( $prob ) {
+
+ if ( $verbose ) {
+ // Print it
+ $nsText = $wgContLang->getNsText( $g->namespaces[0] );
+ $this->output( "# [[$nsText:$key/$code]]\n" );
+ }
+
+ // Add it to the array
+ $problematic[] = array( $g->namespaces[0], "$key/$code" );
+ }
+ }
+
+ self::tagFuzzy( $problematic );
+ }
+ }
+ }
+
+ static function tagFuzzy( $problematic ) {
+ if ( !count( $problematic ) ) {
+ return;
+ }
+
+ $db = wfGetDB( DB_MASTER );
+ foreach ( $problematic as $p ) {
+ $title = Title::makeTitleSafe( $p[0], $p[1] );
+ $titleText = $title->getDBKey();
+ $res = $db->select( 'page', array( 'page_id', 'page_latest' ),
+ array( 'page_namespace' => $p[0], 'page_title' => $titleText ), __METHOD__ );
+
+ $inserts = array();
+ foreach ( $res as $r ) {
+ $inserts = array(
+ 'rt_page' => $r->page_id,
+ 'rt_revision' => $r->page_latest,
+ 'rt_type' => RevTag::getType( 'fuzzy' )
+ );
+ }
+ $db->replace( 'revtag', 'rt_type_page_revision', $inserts, __METHOD__ );
+ }
+ }
+}
+
+$maintClass = 'CreateCheckIndex';
+require_once RUN_MAINTENANCE_IF_MAIN;
diff --git a/MLEB/Translate/scripts/createMessageIndex.php b/MLEB/Translate/scripts/createMessageIndex.php
new file mode 100644
index 00000000..ff1e2ca8
--- /dev/null
+++ b/MLEB/Translate/scripts/createMessageIndex.php
@@ -0,0 +1,34 @@
+<?php
+/**
+ * Creates a database of keys in all groups, so that namespace and key can be
+ * used to get the group they belong to. This is used as a fallback when there
+ * is no other way to know which message group a message belongs to.
+ *
+ * @author Niklas Laxström
+ * @license GPL-2.0+
+ * @file
+ */
+
+// Standard boilerplate to define $IP
+if ( getenv( 'MW_INSTALL_PATH' ) !== false ) {
+ $IP = getenv( 'MW_INSTALL_PATH' );
+} else {
+ $dir = __DIR__;
+ $IP = "$dir/../../..";
+}
+require_once "$IP/maintenance/Maintenance.php";
+
+class CreateMessageIndex extends Maintenance {
+ public function __construct() {
+ parent::__construct();
+ $this->mDescription = 'Creates or updates a message index.';
+ }
+
+ public function execute() {
+ MessageGroups::clearCache();
+ MessageIndex::singleton()->rebuild();
+ }
+}
+
+$maintClass = 'CreateMessageIndex';
+require_once DO_MAINTENANCE;
diff --git a/MLEB/Translate/scripts/export.php b/MLEB/Translate/scripts/export.php
new file mode 100644
index 00000000..6553adc9
--- /dev/null
+++ b/MLEB/Translate/scripts/export.php
@@ -0,0 +1,300 @@
+<?php
+/**
+ * Script to export translations of one message group to file(s).
+ *
+ * @author Niklas Laxström
+ * @author Siebrand Mazeland
+ * @copyright Copyright © 2008-2013, Niklas Laxström, Siebrand Mazeland
+ * @license GPL-2.0+
+ * @file
+ */
+
+// Standard boilerplate to define $IP
+if ( getenv( 'MW_INSTALL_PATH' ) !== false ) {
+ $IP = getenv( 'MW_INSTALL_PATH' );
+} else {
+ $dir = __DIR__;
+ $IP = "$dir/../../..";
+}
+require_once "$IP/maintenance/Maintenance.php";
+
+class CommandlineExport extends Maintenance {
+ public function __construct() {
+ parent::__construct();
+ $this->mDescription = 'Message exporter.';
+ $this->addOption(
+ 'group',
+ 'Comma separated list of group IDs (can use * as wildcard)',
+ true, /*required*/
+ true /*has arg*/
+ );
+ $this->addOption(
+ 'lang',
+ 'Comma separated list of language codes or *',
+ true, /*required*/
+ true /*has arg*/
+ );
+ $this->addOption(
+ 'target',
+ 'Target directory for exported files',
+ true, /*required*/
+ true /*has arg*/
+ );
+ $this->addOption(
+ 'skip',
+ '(optional) Languages to skip, comma separated list',
+ false, /*required*/
+ true /*has arg*/
+ );
+ $this->addOption(
+ 'skipgroup',
+ '(optional) Comma separated list of group IDs that should not be exported',
+ false, /*required*/
+ true /*has arg*/
+ );
+ $this->addOption(
+ 'threshold',
+ '(optional) Do not export under this percentage translated',
+ false, /*required*/
+ true /*has arg*/
+ );
+ $this->addOption(
+ 'hours',
+ '(optional) Only export languages with changes in the last given number of hours',
+ false, /*required*/
+ true /*has arg*/
+ );
+ $this->addOption(
+ 'ppgettext',
+ '(optional) Group root path for checkout of product. "msgmerge" will post ' .
+ 'process on the export result based on the current source file ' .
+ 'in that location (from sourcePattern or definitionFile)',
+ false, /*required*/
+ true /*has arg*/
+ );
+ $this->addOption(
+ 'no-location',
+ '(optional) Only used combined with "ppgettext". This option will rebuild ' .
+ 'the gettext file without location information',
+ false, /*required*/
+ false /*has arg*/
+ );
+ $this->addOption(
+ 'no-fuzzy',
+ '(optional) Do not include any messages marked as fuzzy/outdated',
+ false, /*required*/
+ false /*has arg*/
+ );
+ $this->addOption(
+ 'codemaponly',
+ '(optional) Only export languages that have a codeMap entry',
+ false, /*required*/
+ false /*has arg*/
+ );
+ }
+
+ public function execute() {
+ $target = $this->getOption( 'target' );
+ if ( !is_writable( $target ) ) {
+ $this->error( "Target directory is not writable ($target).", 1 );
+ }
+
+ $threshold = $this->getOption( 'threshold' );
+ $noFuzzy = $this->hasOption( 'no-fuzzy' );
+
+ $noLocation = '';
+ if ( $this->hasOption( 'no-location' ) ) {
+ $noLocation = '--no-location ';
+ };
+
+ $skip = array();
+ if ( $this->hasOption( 'skip' ) ) {
+ $skip = array_map( 'trim', explode( ',', $this->getOption( 'skip' ) ) );
+ }
+
+ $reqLangs = TranslateUtils::parseLanguageCodes( $this->getOption( 'lang' ) );
+ $reqLangs = array_flip( $reqLangs );
+ foreach ( $skip as $skipLang ) {
+ unset( $reqLangs[$skipLang] );
+ }
+ $reqLangs = array_flip( $reqLangs );
+
+ $codemapOnly = $this->hasOption( 'codemaponly' );
+
+ $groupIds = explode( ',', trim( $this->getOption( 'group' ) ) );
+ $groupIds = MessageGroups::expandWildcards( $groupIds );
+ $groups = MessageGroups::getGroupsById( $groupIds );
+
+ /** @var FileBasedMessageGroup $group */
+ foreach ( $groups as $groupId => $group ) {
+ if ( $group->isMeta() ) {
+ $this->output( "Skipping meta message group $groupId.\n" );
+ unset( $groups[$groupId] );
+ continue;
+ }
+
+ if ( !$group instanceof FileBasedMessageGroup ) {
+ $this->output( "EE2: Unexportable message group $groupId.\n" );
+ unset( $groups[$groupId] );
+ continue;
+ }
+ }
+
+ if ( !count( $groups ) ) {
+ $this->error( "EE1: No valid message groups identified.", 1 );
+ }
+
+ $changeFilter = false;
+ $hours = $this->getOption( 'hours' );
+ if ( $hours ) {
+ $namespaces = array();
+
+ /** @var FileBasedMessageGroup $group */
+ foreach ( $groups as $group ) {
+ $namespaces[$group->getNamespace()] = true;
+ }
+
+ $namespaces = array_keys( $namespaces );
+ $bots = true;
+
+ $changeFilter = array();
+ $rows = TranslateUtils::translationChanges( $hours, $bots, $namespaces );
+ foreach ( $rows as $row ) {
+ $title = Title::makeTitle( $row->rc_namespace, $row->rc_title );
+ $handle = new MessageHandle( $title );
+ $code = $handle->getCode();
+ if ( !$code ) {
+ continue;
+ }
+ $groupIds = $handle->getGroupIds();
+ foreach ( $groupIds as $groupId ) {
+ $changeFilter[$groupId][$code] = true;
+ }
+ }
+ }
+
+ $skipGroups = array();
+ if ( $this->hasOption( 'skipgroup' ) ) {
+ $skipGroups = array_map( 'trim', explode( ',', $this->getOption( 'skipgroup' ) ) );
+ }
+
+ foreach ( $groups as $groupId => $group ) {
+ if ( in_array( $groupId, $skipGroups ) ) {
+ $this->output( "Group $groupId is in skipgroup.\n" );
+ continue;
+ }
+
+ // No changes to this group at all
+ if ( is_array( $changeFilter ) && !isset( $changeFilter[$groupId] ) ) {
+ $this->output( "No recent changes to $groupId.\n" );
+ continue;
+ }
+
+ $langs = $reqLangs;
+
+ if ( $codemapOnly ) {
+ foreach ( $langs as $index => $code ) {
+ if ( $group->mapCode( $code ) === $code ) {
+ unset( $langs[$index] );
+ }
+ }
+ }
+
+ if ( $threshold ) {
+ $stats = MessageGroupStats::forGroup( $groupId );
+ foreach ( $langs as $index => $code ) {
+ if ( !isset( $stats[$code] ) ) {
+ unset( $langs[$index] );
+ }
+
+ $total = $stats[$code][MessageGroupStats::TOTAL];
+ $translated = $stats[$code][MessageGroupStats::TRANSLATED];
+ if ( $translated / $total * 100 < $threshold ) {
+ unset( $langs[$index] );
+ }
+ }
+ }
+
+ // Filter out unchanged languages from requested languages
+ if ( is_array( $changeFilter ) ) {
+ $langs = array_intersect( $langs, array_keys( $changeFilter[$groupId] ) );
+ }
+
+ if ( !count( $langs ) ) {
+ continue;
+ }
+
+ $this->output( "Exporting $groupId...\n" );
+
+ $ffs = $group->getFFS();
+ $ffs->setWritePath( $target );
+ $sourceLanguage = $group->getSourceLanguage();
+ $collection = $group->initCollection( $sourceLanguage );
+
+ $definitionFile = false;
+
+ if ( $this->hasOption( 'ppgettext' ) && $ffs instanceof GettextFFS ) {
+ global $wgMaxShellMemory, $wgTranslateGroupRoot;
+
+ // Need more shell memory for msgmerge.
+ $wgMaxShellMemory = 402400;
+
+ $path = $group->getSourceFilePath( $sourceLanguage );
+ $definitionFile = str_replace(
+ $wgTranslateGroupRoot,
+ $this->getOption( 'ppgettext' ),
+ $path
+ );
+ }
+
+ $whitelist = $group->getTranslatableLanguages();
+
+ foreach ( $langs as $lang ) {
+ // Do not export languges that are blacklisted (or not whitelisted).
+ // Also check that whitelist is not null, which means that all
+ // languages are allowed for translation and export.
+ if ( is_array( $whitelist ) && !isset( $whitelist[$lang] ) ) {
+ continue;
+ }
+
+ $collection->resetForNewLanguage( $lang );
+ $collection->loadTranslations();
+ // Don't export ignored, unless it is the source language
+ // or message documentation
+ global $wgTranslateDocumentationLanguageCode;
+ if ( $lang !== $wgTranslateDocumentationLanguageCode
+ && $lang !== $sourceLanguage
+ ) {
+ $collection->filter( 'ignored' );
+ }
+
+ if ( $noFuzzy ) {
+ $collection->filter( 'fuzzy' );
+ }
+
+ $ffs->write( $collection );
+
+ // Do post processing if requested.
+ if ( $definitionFile ) {
+ if ( is_file( $definitionFile ) ) {
+ $targetFileName = $ffs->getWritePath() .
+ "/" . $group->getTargetFilename( $collection->code );
+ $cmd = "msgmerge --quiet " . $noLocation . "--output-file=" .
+ $targetFileName . ' ' . $targetFileName . ' ' . $definitionFile;
+ wfShellExec( $cmd, $ret );
+
+ // Report on errors.
+ if ( $ret ) {
+ $this->error( "ERROR: $ret" );
+ }
+ } else {
+ $this->error( "$definitionFile does not exist.", 1 );
+ }
+ }
+ }
+ }
+ }
+}
+
+$maintClass = 'CommandlineExport';
+require_once RUN_MAINTENANCE_IF_MAIN;
diff --git a/MLEB/Translate/scripts/fallbacks-graph.php b/MLEB/Translate/scripts/fallbacks-graph.php
new file mode 100644
index 00000000..2af3bfcb
--- /dev/null
+++ b/MLEB/Translate/scripts/fallbacks-graph.php
@@ -0,0 +1,83 @@
+<?php
+/**
+ * Script for creating graphml xml file of language fallbacks.
+ *
+ * @author Niklas Laxström
+ *
+ * @copyright Copyright © 2012-2013, Niklas Laxström
+ * @license GPL-2.0+
+ * @file
+ */
+
+// Standard boilerplate to define $IP
+if ( getenv( 'MW_INSTALL_PATH' ) !== false ) {
+ $IP = getenv( 'MW_INSTALL_PATH' );
+} else {
+ $dir = __DIR__;
+ $IP = "$dir/../../..";
+}
+require_once "$IP/maintenance/Maintenance.php";
+
+/// Creates graphml xml file of language fallbacks.
+class FallbacksCompare extends Maintenance {
+ public function __construct() {
+ parent::__construct();
+ $this->mDescription = 'Creates graphml xml file of language fallbacks.';
+ }
+
+ public function execute() {
+ $template = <<<XML
+<?xml version="1.0" encoding="UTF-8"?>
+<graphml
+ xmlns="http://graphml.graphdrawing.org/xmlns"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://graphml.graphdrawing.org/xmlns
+ http://graphml.graphdrawing.org/xmlns/1.0/graphml.xsd"
+ xmlns:y="http://www.yworks.com/xml/graphml">
+
+ <key id="code" for="node" yfiles.type="nodegraphics"/>
+ <graph id="G" edgedefault="directed">
+$1
+ </graph>
+</graphml>
+
+XML;
+
+ $langs = Language::fetchLanguageNames( null, 'mw' );
+ $nodes = $edges = array();
+ foreach ( $langs as $code => $name ) {
+
+ $fallbacks = Language::getFallbacksFor( $code );
+ if ( $fallbacks === array( 'en' ) ) {
+ continue;
+ }
+
+ $nodes[$code] = $this->createNode( $code );
+
+ $prev = $code;
+ foreach ( $fallbacks as $fb ) {
+ $nodes[$fb] = $this->createNode( $fb );
+ $edges[$fb . $prev] = Xml::element( 'edge', array( 'source' => $prev, 'target' => $fb ) );
+ $prev = $fb;
+ }
+ }
+
+ $output = array_merge( $nodes, $edges );
+ $output = "\t\t" . implode( "\n\t\t", $output );
+ echo str_replace( '$1', $output, $template );
+ }
+
+ protected function createNode( $code ) {
+ return
+ Xml::openElement( 'node', array( 'id' => $code ) )
+ . Xml::openElement( 'data', array( 'key' => "code" ) )
+ . Xml::openElement( 'y:Shpapenode' )
+ . Xml::element( 'y:NodeLabel', array(), $code )
+ . Xml::closeElement( 'y:Shpapenode' )
+ . Xml::closeElement( 'data' )
+ . Xml::closeElement( 'node' );
+ }
+}
+
+$maintClass = 'FallbacksCompare';
+require_once DO_MAINTENANCE;
diff --git a/MLEB/Translate/scripts/fuzzy.php b/MLEB/Translate/scripts/fuzzy.php
new file mode 100644
index 00000000..d00c9088
--- /dev/null
+++ b/MLEB/Translate/scripts/fuzzy.php
@@ -0,0 +1,249 @@
+<?php
+/**
+ * Command line script to mark translations fuzzy (similar to gettext fuzzy).
+ *
+ * @file
+ * @author Niklas Laxström
+ * @author Siebrand Mazeland
+ * @copyright Copyright © 2007-2013, Niklas Laxström, Siebrand Mazeland
+ * @license GPL-2.0+
+ */
+
+// Standard boilerplate to define $IP
+if ( getenv( 'MW_INSTALL_PATH' ) !== false ) {
+ $IP = getenv( 'MW_INSTALL_PATH' );
+} else {
+ $dir = __DIR__;
+ $IP = "$dir/../../..";
+}
+require_once "$IP/maintenance/Maintenance.php";
+
+# Override the memory limit for wfShellExec, 100 MB appears to be too little
+$wgMaxShellMemory = 1024 * 200;
+
+class Fuzzy extends Maintenance {
+ public function __construct() {
+ parent::__construct();
+ $this->mDescription = 'Fuzzy bot command line script.';
+ $this->addArg(
+ 'messages',
+ 'Message to fuzzy'
+ );
+ $this->addOption(
+ 'really',
+ '(optional) Really fuzzy, no dry-run'
+ );
+ $this->addOption(
+ 'skiplanguages',
+ '(optional) Skip some languages (comma separated)',
+ false, /*required*/
+ true /*has arg*/
+ );
+ $this->addOption(
+ 'comment',
+ '(optional) Comment for updating',
+ false, /*required*/
+ true /*has arg*/
+ );
+ }
+
+ public function execute() {
+ $bot = new FuzzyScript( $this->getArg( 0 ) );
+
+ if ( $this->hasOption( 'skiplanguages' ) ) {
+ $bot->skipLanguages = array_map(
+ 'trim',
+ explode( ',', $this->getOption( 'skiplanguages' ) )
+ );
+ }
+
+ $bot->comment = $this->getOption( 'comment' );
+ $bot->dryrun = !$this->hasOption( 'really' );
+ $bot->setProgressCallback( array( $this, 'myOutput' ) );
+ $bot->execute();
+ }
+
+ /**
+ * Public alternative for protected Maintenance::output() as we need to get
+ * messages from the ChangeSyncer class to the commandline.
+ * @param string $text The text to show to the user
+ * @param string $channel Unique identifier for the channel.
+ * @param bool $error Whether this is an error message
+ */
+ public function myOutput( $text, $channel = null, $error = false ) {
+ if ( $error ) {
+ $this->error( $text, $channel );
+ } else {
+ $this->output( $text, $channel );
+ }
+ }
+}
+
+/**
+ * Class for marking translation fuzzy.
+ */
+class FuzzyScript {
+ /**
+ /* @var string[] List of patterns to mark.
+ */
+ private $titles = array();
+
+ /**
+ * @var bool Check for configuration problems.
+ */
+ private $allclear = false;
+
+ /** @var callable Function to report progress updates */
+ protected $progressCallback;
+
+ /**
+ * @var bool Dont do anything unless confirmation is given
+ */
+ public $dryrun = true;
+
+ /**
+ * @var string Edit summary.
+ */
+ public $comment = null;
+
+ /**
+ * string[] List of language codes to skip.
+ */
+ public $skipLanguages = array();
+
+ /**
+ * @param string[] $titles
+ */
+ public function __construct( $titles ) {
+ $this->titles = (array)$titles;
+ $this->allclear = true;
+ }
+
+ public function setProgressCallback( $callback ) {
+ $this->progressCallback = $callback;
+ }
+
+ /// @see Maintenance::output for param docs
+ protected function reportProgress( $text, $channel, $severity = 'status' ) {
+ if ( is_callable( $this->progressCallback ) ) {
+ $useErrorOutput = $severity === 'error';
+ call_user_func( $this->progressCallback, $text, $channel, $useErrorOutput );
+ }
+ }
+
+ public function execute() {
+ if ( !$this->allclear ) {
+ return;
+ }
+
+ $msgs = $this->getPages();
+ $count = count( $msgs );
+ $this->reportProgress( "Found $count pages to update.", 'pagecount' );
+
+ foreach ( $msgs as $phpIsStupid ) {
+ list( $title, $text ) = $phpIsStupid;
+ $this->updateMessage( $title, TRANSLATE_FUZZY . $text, $this->dryrun, $this->comment );
+ unset( $phpIsStupid );
+ }
+ }
+
+ /// Searches pages that match given patterns
+ private function getPages() {
+ global $wgTranslateMessageNamespaces;
+ $dbr = wfGetDB( DB_SLAVE );
+
+ $search = array();
+ foreach ( $this->titles as $title ) {
+ $title = Title::newFromText( $title );
+ $ns = $title->getNamespace();
+ if ( !isset( $search[$ns] ) ) {
+ $search[$ns] = array();
+ }
+ $search[$ns][] = 'page_title' . $dbr->buildLike( $title->getDBKey(), $dbr->anyString() );
+ }
+
+ $title_conds = array();
+ foreach ( $search as $ns => $names ) {
+ if ( $ns == NS_MAIN ) {
+ $ns = $wgTranslateMessageNamespaces;
+ }
+ $titles = $dbr->makeList( $names, LIST_OR );
+ $title_conds[] = $dbr->makeList( array( 'page_namespace' => $ns, $titles ), LIST_AND );
+ }
+
+ $conds = array(
+ 'page_latest=rev_id',
+ 'rev_text_id=old_id',
+ $dbr->makeList( $title_conds, LIST_OR ),
+ );
+
+ if ( count( $this->skipLanguages ) ) {
+ $skiplist = $dbr->makeList( $this->skipLanguages );
+ $conds[] = "substring_index(page_title, '/', -1) NOT IN ($skiplist)";
+ }
+
+ $rows = $dbr->select(
+ array( 'page', 'revision', 'text' ),
+ array( 'page_title', 'page_namespace', 'old_text', 'old_flags' ),
+ $conds,
+ __METHOD__
+ );
+
+ $messagesContents = array();
+ foreach ( $rows as $row ) {
+ $title = Title::makeTitle( $row->page_namespace, $row->page_title );
+ $messagesContents[] = array( $title, Revision::getRevisionText( $row ) );
+ }
+
+ $rows->free();
+
+ return $messagesContents;
+ }
+
+ /**
+ * Does the actual edit if possible.
+ * @param Title $title
+ * @param string $text
+ * @param bool $dryrun Whether to really do it or just show what would be done.
+ * @param string $comment Edit summary.
+ */
+ private function updateMessage( $title, $text, $dryrun, $comment = null ) {
+ global $wgTranslateDocumentationLanguageCode;
+
+ $this->reportProgress( "Updating {$title->getPrefixedText()}... ", $title );
+ if ( !$title instanceof Title ) {
+ $this->reportProgress( "INVALID TITLE!", $title );
+
+ return;
+ }
+
+ $items = explode( '/', $title->getText(), 2 );
+ if ( isset( $items[1] ) && $items[1] === $wgTranslateDocumentationLanguageCode ) {
+ $this->reportProgress( "IGNORED!", $title );
+
+ return;
+ }
+
+ if ( $dryrun ) {
+ $this->reportProgress( "DRY RUN!", $title );
+
+ return;
+ }
+
+ $wikipage = new WikiPage( $title );
+ $content = ContentHandler::makeContent( $text, $title );
+ $status = $wikipage->doEditContent(
+ $content,
+ $comment ? $comment : 'Marking as fuzzy',
+ EDIT_FORCE_BOT | EDIT_UPDATE,
+ false, /*base revision id*/
+ FuzzyBot::getUser()
+ );
+
+ $success = $status === true || ( is_object( $status ) && $status->isOK() );
+ $this->reportProgress( $success ? 'OK' : 'FAILED', $title );
+ }
+}
+
+$maintClass = 'Fuzzy';
+require_once RUN_MAINTENANCE_IF_MAIN;
diff --git a/MLEB/Translate/scripts/groupStatistics.php b/MLEB/Translate/scripts/groupStatistics.php
new file mode 100644
index 00000000..d4f560a3
--- /dev/null
+++ b/MLEB/Translate/scripts/groupStatistics.php
@@ -0,0 +1,681 @@
+<?php
+/**
+ * Commandline script to general statistics about the localisation level of
+ * one or more message groups.
+ *
+ * @file
+ * @ingroup Script Stats
+ * @author Niklas Laxström
+ * @author Siebrand Mazeland
+ * @copyright Copyright © 2007-2013, Niklas Laxström, Siebrand Mazeland
+ * @license GPL-2.0+
+ */
+
+// Standard boilerplate to define $IP
+if ( getenv( 'MW_INSTALL_PATH' ) !== false ) {
+ $IP = getenv( 'MW_INSTALL_PATH' );
+} else {
+ $dir = __DIR__;
+ $IP = "$dir/../../..";
+}
+require_once "$IP/maintenance/Maintenance.php";
+
+class GroupStatistics extends Maintenance {
+ /**
+ * Array of the most spoken languages in the world.
+ * Source: http://stats.wikimedia.org/EN/Sitemap.htm.
+ *
+ * Key value pairs of:
+ * [MediaWiki localisation code] => array(
+ * [position in top 50],
+ * [speakers in millions],
+ * [continent where localisation is spoken]
+ * )
+ */
+ public $mostSpokenLanguages = array(
+ 'en' => array( 1, 1500, 'multiple' ),
+ 'zh-hans' => array( 2, 1300, 'asia' ),
+ 'zh-hant' => array( 2, 1300, 'asia' ),
+ 'hi' => array( 3, 550, 'asia' ),
+ 'ar' => array( 4, 530, 'multiple' ),
+ 'es' => array( 5, 500, 'multiple' ),
+ 'ms' => array( 6, 300, 'asia' ),
+ 'pt' => array( 7, 290, 'multiple' ),
+ 'pt-br' => array( 7, 290, 'america' ),
+ 'ru' => array( 8, 278, 'multiple' ),
+ 'id' => array( 9, 250, 'asia' ),
+ 'bn' => array( 10, 230, 'asia' ),
+ 'fr' => array( 11, 200, 'multiple' ),
+ 'de' => array( 12, 185, 'europe' ),
+ 'ja' => array( 13, 132, 'asia' ),
+ 'fa' => array( 14, 107, 'asia' ),
+ 'pnb' => array( 15, 104, 'asia' ), // Most spoken variant
+ 'tl' => array( 16, 90, 'asia' ),
+ 'mr' => array( 17, 90, 'asia' ),
+ 'vi' => array( 18, 80, 'asia' ),
+ 'jv' => array( 19, 80, 'asia' ),
+ 'te' => array( 20, 80, 'asia' ),
+ 'ko' => array( 21, 78, 'asia' ),
+ 'wuu' => array( 22, 77, 'asia' ),
+ 'arz' => array( 23, 76, 'africa' ),
+ 'th' => array( 24, 73, 'asia' ),
+ 'yue' => array( 25, 71, 'asia' ),
+ 'tr' => array( 26, 70, 'multiple' ),
+ 'it' => array( 27, 70, 'europe' ),
+ 'ta' => array( 28, 66, 'asia' ),
+ 'ur' => array( 29, 60, 'asia' ),
+ 'my' => array( 30, 52, 'asia' ),
+ 'sw' => array( 31, 50, 'africa' ),
+ 'nan' => array( 32, 49, 'asia' ),
+ 'kn' => array( 33, 47, 'asia' ),
+ 'gu' => array( 34, 46, 'asia' ),
+ 'uk' => array( 35, 45, 'europe' ),
+ 'pl' => array( 36, 43, 'europe' ),
+ 'sd' => array( 37, 41, 'asia' ),
+ 'ha' => array( 38, 39, 'africa' ),
+ 'ml' => array( 39, 37, 'asia' ),
+ 'gan-hans' => array( 40, 35, 'asia' ),
+ 'gan-hant' => array( 40, 35, 'asia' ),
+ 'hak' => array( 41, 34, 'asia' ),
+ 'or' => array( 42, 31, 'asia' ),
+ 'ne' => array( 43, 30, 'asia' ),
+ 'ro' => array( 44, 28, 'europe' ),
+ 'su' => array( 45, 27, 'asia' ),
+ 'az' => array( 46, 27, 'asia' ),
+ 'nl' => array( 47, 27, 'europe' ),
+ 'zu' => array( 48, 26, 'africa' ),
+ 'ps' => array( 49, 26, 'asia' ),
+ 'ckb' => array( 50, 26, 'asia' ),
+ 'ku-latn' => array( 50, 26, 'asia' ),
+ );
+
+ /**
+ * Variable with key-value pairs with a named index and an array of key-value
+ * pairs where the key is a MessageGroup ID and the value is a weight of the
+ * group in the sum of the values for all the groups in the array.
+ *
+ * Definitions in this variable can be used to report weighted meta localisation
+ * scores for the 50 most spoken languages.
+ *
+ * @todo Allow weighted reporting for all available languges.
+ */
+ public $localisedWeights = array(
+ 'wikimedia' => array(
+ //'core-0-mostused' => 40,
+ 'core' => 50,
+ 'ext-0-wikimedia' => 50
+ ),
+ 'fundraiser' => array(
+ 'ext-di-di' => 16,
+ 'ext-di-pfpg' => 84,
+ ),
+ 'mediawiki' => array(
+ //'core-0-mostused' => 30,
+ 'core' => 50,
+ 'ext-0-wikimedia' => 25,
+ 'ext-0-all' => 25
+ )
+ );
+
+ /**
+ * Code map to map localisation codes to Wikimedia project codes. Only
+ * exclusion and remapping is defined here. It is assumed that the first part
+ * of the localisation code is the WMF project name otherwise (zh-hans -> zh).
+ */
+ public $wikimediaCodeMap = array(
+ // Codes containing a dash
+ 'bat-smg' => 'bat-smg',
+ 'cbk-zam' => 'cbk-zam',
+ 'map-bms' => 'map-bms',
+ 'nds-nl' => 'nds-nl',
+ 'roa-rup' => 'roa-rup',
+ 'roa-tara' => 'roa-tara',
+
+ // Remaps
+ 'be-tarask' => 'be-x-old',
+ 'gsw' => 'als',
+ 'ike-cans' => 'iu',
+ 'ike-latn' => 'iu',
+ 'lzh' => 'zh-classical',
+ 'nan' => 'zh-min-nan',
+ 'vro' => 'fiu-vro',
+ 'yue' => 'zh-yue',
+
+ // Ignored language codes. See reason.
+ 'als' => '', // gsw
+ 'be-x-old' => '', // be-tarask
+ 'crh' => '', // crh-*
+ 'de-at' => '', // de
+ 'de-ch' => '', // de
+ 'de-formal' => '', // de, not reporting formal form
+ 'dk' => '', // da
+ 'en-au' => '', // en
+ 'en-ca' => '', // no MW code
+ 'en-gb' => '', // no MW code
+ 'es-419' => '', // no MW code
+ 'fiu-vro' => '', // vro
+ 'gan' => '', // gan-*
+ 'got' => '', // extinct. not reporting formal form
+ 'hif' => '', // hif-*
+ 'hu-formal' => '', // not reporting
+ 'iu' => '', // ike-*
+ 'kk' => '', // kk-*
+ 'kk-cn' => '', // kk-arab
+ 'kk-kz' => '', // kk-cyrl
+ 'kk-tr' => '', // kk-latn
+ 'ko-kp' => '', // ko
+ 'ku' => '', // ku-*
+ 'ku-arab' => '', // ckb
+ 'nb' => '', // no
+ 'nl-be' => '', // no MW code
+ 'nl-informal' => '', // nl, not reporting informal form
+ 'ruq' => '', // ruq-*
+ 'simple' => '', // en
+ 'sr' => '', // sr-*
+ 'tg' => '', // tg-*
+ 'tp' => '', // tokipona
+ 'tt' => '', // tt-*
+ 'ug' => '', // ug-*
+ 'zh' => '', // zh-*
+ 'zh-classical' => '', // lzh
+ 'zh-cn' => '', // zh
+ 'zh-sg' => '', // zh
+ 'zh-hk' => '', // zh
+ 'zh-min-nan' => '', //
+ 'zh-mo' => '', // zh
+ 'zh-my' => '', // zh
+ 'zh-tw' => '', // zh
+ 'zh-yue' => '', // yue
+ );
+
+ public function __construct() {
+ parent::__construct();
+ $this->mDescription = 'Script to generate statistics about the localisation ' .
+ 'level of one or more message groups.';
+ $this->addOption(
+ 'groups',
+ '(optional) Comma separated list of groups',
+ false, /*required*/
+ true /*has arg*/
+ );
+ $this->addOption(
+ 'output',
+ '(optional) csv: Comma Separated Values, wiki: MediaWiki syntax, ' .
+ 'text: Text with tabs. Default: default',
+ false, /*required*/
+ true /*has arg*/
+ );
+ $this->addOption(
+ 'skiplanguages',
+ '(optional) Comma separated list of languages to be skipped',
+ false, /*required*/
+ true /*has arg*/
+ );
+ $this->addOption(
+ 'skipzero',
+ '(optional) Skip languages that do not have any localisation at all'
+ );
+ $this->addOption(
+ 'legenddetail',
+ '(optional) Page name for legend to be transcluded at the top of the details table',
+ false, /*required*/
+ true /*has arg*/
+ );
+ $this->addOption(
+ 'legendsummary',
+ '(optional) Page name for legend to be transcluded at the top of the summary table',
+ false, /*required*/
+ true /*has arg*/
+ );
+ $this->addOption(
+ 'fuzzy',
+ '(optional) Add column for fuzzy counts'
+ );
+ $this->addOption(
+ 'speakers',
+ '(optional) Add column for number of speakers (est.). ' .
+ 'Only valid when combined with "most"'
+ );
+ $this->addOption(
+ 'nol10n',
+ '(optional) Do not add localised language name if I18ntags is installed'
+ );
+ $this->addOption(
+ 'continent',
+ '(optional) Add a continent column. Only available when output is ' .
+ '"wiki" or not specified.'
+ );
+ $this->addOption(
+ 'summary',
+ '(optional) Add a summary with counts and scores per continent category ' .
+ 'and totals. Only available for a valid "most" value.',
+ false, /*required*/
+ true /*has arg*/
+ );
+ $this->addOption(
+ 'wmfscore',
+ 'Only output WMF language code and weighted score for all ' .
+ 'language codes for weighing group "wikimedia" in CSV. This ' .
+ 'report must keep a stable layout as it is used/will be ' .
+ 'used in the Wikimedia statistics.'
+ );
+ $this->addOption(
+ 'most',
+ '(optional) "mediawiki" or "wikimedia". Report on the 50 most ' .
+ 'spoken languages. Skipzero is ignored. If a valid scope is ' .
+ 'defined, the group list and fuzzy are ignored and the ' .
+ 'localisation levels are weighted and reported.',
+ false, /*required*/
+ true /*has arg*/
+ );
+ }
+
+ public function execute() {
+ $output = $this->getOption( 'output', 'default' );
+
+ // Select an output engine
+ switch ( $output ) {
+ case 'wiki':
+ $out = new WikiStatsOutput();
+ break;
+ case 'text':
+ $out = new TextStatsOutput();
+ break;
+ case 'csv':
+ $out = new CsvStatsOutput();
+ break;
+ default:
+ $out = new TranslateStatsOutput();
+ }
+
+ $skipLanguages = array();
+ if ( $this->hasOption( 'skiplanguages' ) ) {
+ $skipLanguages = array_map(
+ 'trim',
+ explode( ',', $this->getOption( 'skiplanguages' ) )
+ );
+ }
+
+ $reportScore = false;
+ // Check if score should be reported and prepare weights
+ $most = $this->getOption( 'most' );
+ $weights = array();
+ if ( $most && isset( $this->localisedWeights[$most] ) ) {
+ $reportScore = true;
+
+ foreach ( $this->localisedWeights[$most] as $weight ) {
+ $weights[] = $weight;
+ }
+ }
+
+ // check if l10n should be done
+ $l10n = false;
+ if ( ( $output === 'wiki' || $output === 'default' ) &&
+ !$this->hasOption( 'nol10n' )
+ ) {
+ $l10n = true;
+ }
+
+ $wmfscore = $this->hasOption( 'wmfscore' );
+
+ // Get groups from input
+ $groups = array();
+ if ( $reportScore ) {
+ $reqGroups = array_keys( $this->localisedWeights[$most] );
+ } elseif ( $wmfscore ) {
+ $reqGroups = array_keys( $this->localisedWeights['wikimedia'] );
+ } else {
+ $reqGroups = array_map( 'trim', explode( ',', $this->getOption( 'groups' ) ) );
+ }
+
+ // List of all groups
+ $allGroups = MessageGroups::singleton()->getGroups();
+
+ // Get list of valid groups
+ foreach ( $reqGroups as $id ) {
+ // Page translation group ids use spaces which are not nice on command line
+ $id = str_replace( '_', ' ', $id );
+ if ( isset( $allGroups[$id] ) ) {
+ $groups[$id] = $allGroups[$id];
+ } else {
+ $this->output( "Unknown group: $id" );
+ }
+ }
+
+ if ( $wmfscore ) {
+ // Override/set parameters
+ $out = new CsvStatsOutput();
+ $reportScore = true;
+
+ $weights = array();
+ foreach ( $this->localisedWeights['wikimedia'] as $weight ) {
+ $weights[] = $weight;
+ }
+ $wmfscores = array();
+ }
+
+ if ( !count( $groups ) ) {
+ $this->error( 'No groups given', true );
+ }
+
+ // List of all languages.
+ $languages = Language::fetchLanguageNames( false );
+ // Default sorting order by language code, users can sort wiki output.
+ ksort( $languages );
+
+ if ( $this->hasOption( 'legenddetail' ) ) {
+ $out->addFreeText( "{{" . $this->getOption( 'legenddetail' ) . "}}\n" );
+ }
+
+ $totalWeight = 0;
+ if ( $reportScore ) {
+ if ( $wmfscore ) {
+ foreach ( $this->localisedWeights['wikimedia'] as $weight ) {
+ $totalWeight += $weight;
+ }
+ } else {
+ foreach ( $this->localisedWeights[$most] as $weight ) {
+ $totalWeight += $weight;
+ }
+ }
+ }
+
+ $showContinent = $this->getOption( 'continent' );
+ if ( !$wmfscore ) {
+ // Output headers
+ $out->heading();
+
+ $out->blockstart();
+
+ if ( $most ) {
+ $out->element( ( $l10n ? "{{int:translate-gs-pos}}" : 'Pos.' ), true );
+ }
+
+ $out->element( ( $l10n ? "{{int:translate-gs-code}}" : 'Code' ), true );
+ $out->element( ( $l10n ? "{{int:translate-page-language}}" : 'Language' ), true );
+ if ( $showContinent ) {
+ $out->element( ( $l10n ? "{{int:translate-gs-continent}}" : 'Continent' ), true );
+ }
+
+ if ( $most && $this->hasOption( 'speakers' ) ) {
+ $out->element( ( $l10n ? "{{int:translate-gs-speakers}}" : 'Speakers' ), true );
+ }
+
+ if ( $reportScore ) {
+ $out->element(
+ ( $l10n ? "{{int:translate-gs-score}}" : 'Score' ) . ' (' . $totalWeight . ')',
+ true
+ );
+ }
+
+ /**
+ * @var $g MessageGroup
+ */
+ foreach ( $groups as $g ) {
+ // Add unprocessed description of group as heading
+ if ( $reportScore ) {
+ $gid = $g->getId();
+ $heading = $g->getLabel() . " (" . $this->localisedWeights[$most][$gid] . ")";
+ } else {
+ $heading = $g->getLabel();
+ }
+ $out->element( $heading, true );
+ if ( !$reportScore && $this->hasOption( 'fuzzy' ) ) {
+ $out->element( ( $l10n ? "{{int:translate-percentage-fuzzy}}" : 'Fuzzy' ), true );
+ }
+ }
+
+ $out->blockend();
+ }
+
+ $rows = array();
+ foreach ( $languages as $code => $name ) {
+ // Skip list
+ if ( in_array( $code, $skipLanguages ) ) {
+ continue;
+ }
+ $rows[$code] = array();
+ }
+
+ foreach ( $groups as $groupName => $g ) {
+ $stats = MessageGroupStats::forGroup( $groupName );
+
+ // Perform the statistic calculations on every language
+ foreach ( $languages as $code => $name ) {
+ // Skip list
+ if ( !$most && in_array( $code, $skipLanguages ) ) {
+ continue;
+ }
+
+ // Do not calculate if we do not need it for anything.
+ if ( $wmfscore && isset( $this->wikimediaCodeMap[$code] )
+ && $this->wikimediaCodeMap[$code] == ''
+ ) {
+ continue;
+ }
+
+ // If --most is set, skip all other
+ if ( $most && !isset( $this->mostSpokenLanguages[$code] ) ) {
+ continue;
+ }
+
+ $total = $stats[$code][MessageGroupStats::TOTAL];
+ $translated = $stats[$code][MessageGroupStats::TRANSLATED];
+ $fuzzy = $stats[$code][MessageGroupStats::FUZZY];
+
+ $rows[$code][] = array( false, $translated, $total );
+
+ if ( $this->hasOption( 'fuzzy' ) ) {
+ $rows[$code][] = array( true, $fuzzy, $total );
+ }
+ }
+
+ unset( $collection );
+ }
+
+ // init summary array
+ $summarise = false;
+ if ( $this->hasOption( 'summary' ) ) {
+ $summarise = true;
+ $summary = array();
+ }
+
+ foreach ( $languages as $code => $name ) {
+ // Skip list
+ if ( !$most && in_array( $code, $skipLanguages ) ) {
+ continue;
+ }
+
+ // Skip unneeded
+ if ( $wmfscore && isset( $this->wikimediaCodeMap[$code] )
+ && $this->wikimediaCodeMap[$code] == ''
+ ) {
+ continue;
+ }
+
+ // If --most is set, skip all other
+ if ( $most && !isset( $this->mostSpokenLanguages[$code] ) ) {
+ continue;
+ }
+
+ $columns = $rows[$code];
+
+ $allZero = true;
+ foreach ( $columns as $fields ) {
+ if ( intval( $fields[1] ) !== 0 ) {
+ $allZero = false;
+ }
+ }
+
+ // Skip dummy languages if requested
+ if ( $allZero && $this->hasOption( 'skipzero' ) ) {
+ continue;
+ }
+
+ // Output the the row
+ if ( !$wmfscore ) {
+ $out->blockstart();
+ }
+
+ // Fill language position field
+ if ( $most ) {
+ $out->element( $this->mostSpokenLanguages[$code][0] );
+ }
+
+ // Fill language name field
+ if ( !$wmfscore ) {
+ // Fill language code field
+ $out->element( $code );
+
+ if ( $l10n && function_exists( 'efI18nTagsInit' ) ) {
+ $out->element( "{{#languagename:" . $code . "}}" );
+ } else {
+ $out->element( $name );
+ }
+ }
+
+ // Fill continent field
+ if ( $showContinent ) {
+ if ( $this->mostSpokenLanguages[$code][2] == 'multiple' ) {
+ $continent = ( $l10n ? "{{int:translate-gs-multiple}}" : 'Multiple' );
+ } else {
+ $continent = $l10n ?
+ "{{int:timezoneregion-" . $this->mostSpokenLanguages[$code][2] . "}}" :
+ ucfirst( $this->mostSpokenLanguages[$code][2] );
+ }
+
+ $out->element( $continent );
+ }
+
+ // Fill speakers field
+ if ( $most && $this->hasOption( 'speakers' ) ) {
+ $out->element( number_format( $this->mostSpokenLanguages[$code][1] ) );
+ }
+
+ // Fill the score field
+ if ( $reportScore ) {
+ // Keep count
+ $i = 0;
+ // Start with 0 points
+ $score = 0;
+
+ foreach ( $columns as $fields ) {
+ list( , $upper, $total ) = $fields;
+ // Weigh the score and add it to the current score
+ $score += ( $weights[$i] * $upper ) / $total;
+ $i++;
+ }
+
+ // Report a round numbers
+ $score = number_format( $score, 0 );
+
+ if ( $summarise ) {
+ $continent = $this->mostSpokenLanguages[$code][2];
+ if ( isset( $summary[$continent] ) ) {
+ $newcount = $summary[$continent][0] + 1;
+ $newscore = $summary[$continent][1] + (int)$score;
+ } else {
+ $newcount = 1;
+ $newscore = $score;
+ }
+
+ $summary[$continent] = array( $newcount, $newscore );
+ }
+
+ if ( $wmfscore ) {
+ // Multiple variants can be used for the same wiki.
+ // Store the scores in an array and output them later
+ // when they can be averaged.
+ if ( isset( $this->wikimediaCodeMap[$code] ) ) {
+ $wmfcode = $this->wikimediaCodeMap[$code];
+ } else {
+ $codeparts = explode( '-', $code );
+ $wmfcode = $codeparts[0];
+ }
+
+ if ( isset( $wmfscores[$wmfcode] ) ) {
+ $count = $wmfscores[$wmfcode]['count'] + 1;
+ $tmpWmfScore = (int)$wmfscores[$wmfcode]['score'];
+ $tmpWmfCount = (int)$wmfscores[$wmfcode]['count'];
+ $score = ( ( $tmpWmfCount * $tmpWmfScore ) + (int)$score ) / $count;
+ $wmfscores[$wmfcode] = array( 'score' => $score, 'count' => $count );
+ } else {
+ $wmfscores[$wmfcode] = array( 'score' => $score, 'count' => 1 );
+ }
+ } else {
+ $out->element( $score );
+ }
+ }
+
+ // Fill fields for groups
+ if ( !$wmfscore ) {
+ foreach ( $columns as $fields ) {
+ list( $invert, $upper, $total ) = $fields;
+ $c = $out->formatPercent( $upper, $total, $invert );
+ $out->element( $c );
+ }
+
+ $out->blockend();
+ }
+ }
+
+ $out->footer();
+
+ if ( $reportScore && $this->hasOption( 'summary' ) ) {
+ if ( $reportScore && $this->hasOption( 'legendsummary' ) ) {
+ $out->addFreeText( "{{" . $this->getOption( 'legendsummary' ) . "}}\n" );
+ }
+
+ $out->summaryheading();
+
+ $out->blockstart();
+
+ $out->element( $l10n ? "{{int:translate-gs-continent}}" : 'Continent', true );
+ $out->element( $l10n ? "{{int:translate-gs-count}}" : 'Count', true );
+ $out->element( $l10n ? "{{int:translate-gs-avgscore}}" : 'Avg. score', true );
+
+ $out->blockend();
+
+ ksort( $summary );
+
+ $totals = array( 0, 0 );
+
+ foreach ( $summary as $key => $values ) {
+ $out->blockstart();
+
+ if ( $key == 'multiple' ) {
+ $out->element( $l10n ? "{{int:translate-gs-multiple}}" : 'Multiple' );
+ } else {
+ $out->element( $l10n ? "{{int:timezoneregion-" . $key . "}}" : ucfirst( $key ) );
+ }
+ $out->element( $values[0] );
+ $out->element( number_format( $values[1] / $values[0] ) );
+
+ $out->blockend();
+
+ $totals[0] += $values[0];
+ $totals[1] += $values[1];
+ }
+
+ $out->blockstart();
+ $out->element( $l10n ? "{{int:translate-gs-total}}" : 'Total' );
+ $out->element( $totals[0] );
+ $out->element( number_format( $totals[1] / $totals[0] ) );
+ $out->blockend();
+
+ $out->footer();
+ }
+
+ // Custom output
+ if ( $wmfscore ) {
+ ksort( $wmfscores );
+
+ foreach ( $wmfscores as $code => $stats ) {
+ echo $code . ';' . number_format( $stats['score'] ) . ";\n";
+ }
+ }
+ }
+}
+
+$maintClass = 'GroupStatistics';
+require_once RUN_MAINTENANCE_IF_MAIN;
diff --git a/MLEB/Translate/scripts/languageeditstats.php b/MLEB/Translate/scripts/languageeditstats.php
new file mode 100644
index 00000000..053627ad
--- /dev/null
+++ b/MLEB/Translate/scripts/languageeditstats.php
@@ -0,0 +1,111 @@
+<?php
+/**
+ * Shows a top list of language codes with edits in a given time period
+ *
+ * @author Niklas Laxström
+ * @author Siebrand Mazeland
+ * @copyright Copyright © 2008-2010 Niklas Laxström, Siebrand Mazeland
+ * @license GPL-2.0+
+ * @file
+ * @ingroup Script Stats
+ */
+
+// Standard boilerplate to define $IP
+if ( getenv( 'MW_INSTALL_PATH' ) !== false ) {
+ $IP = getenv( 'MW_INSTALL_PATH' );
+} else {
+ $dir = __DIR__;
+ $IP = "$dir/../../..";
+}
+require_once "$IP/maintenance/Maintenance.php";
+
+class LanguageEditStats extends Maintenance {
+ public function __construct() {
+ parent::__construct();
+ $this->mDescription = 'Script to show number of edits per language for all message groups.';
+ $this->addOption(
+ 'top',
+ '(optional) Show given number of language codes (default: 10)',
+ false, /*required*/
+ true /*has arg*/
+ );
+ $this->addOption(
+ 'days',
+ '(optional) Calculate for given number of days (default: 7)',
+ false, /*required*/
+ true /*has arg*/
+ );
+ $this->addOption(
+ 'bots',
+ '(optional) Include bot edits'
+ );
+ $this->addOption(
+ 'ns',
+ '(optional) Comma separated list of namespace IDs',
+ false, /*required*/
+ true /*has arg*/
+ );
+ }
+
+ public function execute() {
+ $hours = (int)$this->getOption( 'days' );
+ $hours = $hours ? $hours * 7 : 7 * 24;
+
+ $top = (int)$this->getOption( 'top' );
+ $top = $top ? $top : 10;
+
+ $bots = $this->hasOption( 'bots' );
+
+ $namespaces = array();
+ if ( $this->hasOption( 'ns' ) ) {
+ $input = explode( ',', $this->getOption( 'ns' ) );
+
+ foreach ( $input as $namespace ) {
+ if ( is_numeric( $namespace ) ) {
+ array_push( $namespaces, $namespace );
+ }
+ }
+ }
+
+ /**
+ * Select set of edits to report on
+ */
+ $rows = TranslateUtils::translationChanges( $hours, $bots, $namespaces );
+
+ /**
+ * Get counts for edits per language code after filtering out edits by FuzzyBot
+ */
+ $codes = array();
+ global $wgTranslateFuzzyBotName;
+ foreach ( $rows as $_ ) {
+ // Filter out edits by $wgTranslateFuzzyBotName
+ if ( $_->rc_user_text === $wgTranslateFuzzyBotName ) {
+ continue;
+ }
+
+ list( , $code ) = TranslateUtils::figureMessage( $_->rc_title );
+
+ if ( !isset( $codes[$code] ) ) {
+ $codes[$code] = 0;
+ }
+
+ $codes[$code]++;
+ }
+
+ /**
+ * Sort counts and report descending up to $top rows.
+ */
+ arsort( $codes );
+ $i = 0;
+ foreach ( $codes as $code => $num ) {
+ if ( $i++ === $top ) {
+ break;
+ }
+
+ $this->output( "$code\t$num\n" );
+ }
+ }
+}
+
+$maintClass = 'LanguageEditStats';
+require_once RUN_MAINTENANCE_IF_MAIN;
diff --git a/MLEB/Translate/scripts/magic-export.php b/MLEB/Translate/scripts/magic-export.php
new file mode 100644
index 00000000..cd3c9a91
--- /dev/null
+++ b/MLEB/Translate/scripts/magic-export.php
@@ -0,0 +1,299 @@
+<?php
+/**
+ * Script to export special page aliases and magic words of extensions.
+ *
+ * @author Robert Leverington <robert@rhl.me.uk>
+ *
+ * @copyright Copyright © 2010 Robert Leverington
+ * @license GPL-2.0+
+ * @file
+ */
+
+require dirname( dirname( dirname( __DIR__ ) ) ) . '/maintenance/Maintenance.php';
+
+/**
+ * Maintenance class for the fast export of special page aliases and magic words.
+ */
+class MagicExport extends Maintenance {
+ protected $type;
+ protected $target;
+
+ protected $handles = array();
+ protected $messagesOld = array();
+
+ public function __construct() {
+ parent::__construct();
+ $this->mDescription = 'Export of aliases and magic words for MediaWiki extensions.';
+ $this->addOption(
+ 'target',
+ 'Target directory for exported files',
+ true, /*required*/
+ true /*has arg*/
+ );
+ $this->addOption(
+ 'type',
+ 'magic or special',
+ true, /*required*/
+ true /*has arg*/
+ );
+ }
+
+ public function execute() {
+ $this->target = $this->getOption( 'target' );
+ $this->type = $this->getOption( 'type' );
+
+ switch ( $this->type ) {
+ case 'special':
+ case 'magic':
+ break;
+ default:
+ $this->error( 'Invalid type.', 1 );
+ }
+
+ $this->openHandles();
+ $this->writeHeaders();
+ $this->writeFiles();
+ $this->writeFooters();
+ $this->closeHandles();
+ }
+
+ /**
+ * Iterate through all groups, loading current data from the existing
+ * extension and opening message files for message output.
+ * - If the group does not define a special page alias file or magic
+ * words file, or that file does not exist, it is ignored silently.
+ * - If the file does contain a data array (e.g. $aliases) then the
+ * program exits.
+ */
+ protected function openHandles() {
+ $this->output( "Opening file handles and loading current data...\n" );
+
+ $groups = MessageGroups::singleton()->getGroups();
+ foreach ( $groups as $group ) {
+ if ( !$group instanceof MediaWikiExtensionMessageGroup ) {
+ continue;
+ }
+
+ $conf = $group->getConfiguration();
+
+ $inFile = $outFile = null;
+
+ if ( $this->type === 'special' && isset( $conf['FILES']['aliasFile'] ) ) {
+ $inFile = $conf['FILES']['aliasFileSource'];
+ $outFile = $conf['FILES']['aliasFile'];
+ }
+
+ if ( $this->type === 'magic' && isset( $conf['FILES']['magicFile'] ) ) {
+ $inFile = $conf['FILES']['magicFileSource'];
+ $outFile = $conf['FILES']['magicFile'];
+ }
+
+ if ( $inFile === null ) {
+ continue;
+ }
+
+ $inFile = $group->replaceVariables( $inFile, 'en' );
+ $outFile = $this->target . '/' . $outFile;
+
+ include $inFile;
+ switch ( $this->type ) {
+ case 'special':
+ if ( isset( $aliases ) ) {
+ $this->messagesOld[$group->getId()] = $aliases;
+ unset( $aliases );
+ } elseif ( isset( $specialPageAliases ) ) {
+ $this->messagesOld[$group->getId()] = $specialPageAliases;
+ unset( $specialPageAliases );
+ } else {
+ $this->error( "File '$inFile' does not contain an aliases array." );
+ continue;
+ }
+ break;
+ case 'magic':
+ if ( !isset( $magicWords ) ) {
+ $this->error( "File '$inFile' does not contain a magic words array." );
+ continue;
+ }
+ $this->messagesOld[$group->getId()] = $magicWords;
+ unset( $magicWords );
+ break;
+ }
+
+ wfMkdirParents( dirname( $outFile ), null, __METHOD__ );
+ $this->handles[$group->getId()] = fopen( $outFile, 'w' );
+ fwrite( $this->handles[$group->getId()], $this->readHeader( $inFile ) );
+
+ $this->output( "\t{$group->getId()}\n" );
+ }
+ }
+
+ protected function readHeader( $file ) {
+ $data = file_get_contents( $file );
+
+ // Seek first '*/'.
+ $end = strpos( $data, '*/' ) + 2;
+
+ if ( $end === false ) {
+ return "<?php\n";
+ }
+
+ // Grab header.
+ return substr( $data, 0, $end );
+ }
+
+ /**
+ * Write the opening of the files for each output file handle.
+ */
+ protected function writeHeaders() {
+ foreach ( $this->handles as $handle ) {
+ switch ( $this->type ) {
+ case 'special':
+ fwrite( $handle, <<<PHP
+
+// @codingStandardsIgnoreFile
+
+\$specialPageAliases = array();
+PHP
+ );
+ break;
+ case 'magic':
+ fwrite( $handle, <<<PHP
+
+
+\$magicWords = array();
+PHP
+ );
+ break;
+ }
+ }
+ }
+
+ /**
+ * Itterate through available languages, loading and parsing the data
+ * message from the MediaWiki namespace and writing the data to its output
+ * file handle.
+ */
+ protected function writeFiles() {
+ $langs = TranslateUtils::parseLanguageCodes( '*' );
+ unset( $langs[array_search( 'en', $langs )] );
+ $langs = array_merge( array( 'en' ), $langs );
+ foreach ( $langs as $l ) {
+ // Load message page.
+ switch ( $this->type ) {
+ case 'special':
+ $title = Title::makeTitleSafe( NS_MEDIAWIKI, 'Sp-translate-data-SpecialPageAliases/' . $l );
+ break;
+ case 'magic':
+ $title = Title::makeTitleSafe( NS_MEDIAWIKI, 'Sp-translate-data-MagicWords/' . $l );
+ break;
+ default:
+ exit( 1 );
+ }
+
+ // Parse message page.
+ if ( !$title || !$title->exists() ) {
+ $this->output( "Skiping $l...\n" );
+
+ $messagesNew = array();
+ } else {
+ $this->output( "Processing $l...\n" );
+
+ $page = WikiPage::factory( $title );
+ $content = $page->getContent();
+ $data = $content->getNativeData();
+
+ // Parse message file.
+ $segments = explode( "\n", $data );
+ array_shift( $segments );
+ array_shift( $segments );
+ unset( $segments[count( $segments ) - 1] );
+ unset( $segments[count( $segments ) - 1] );
+ $messagesNew = array();
+ foreach ( $segments as $segment ) {
+ $parts = explode( ' = ', $segment );
+ $key = array_shift( $parts );
+ $translations = explode( ', ', implode( $parts ) );
+ $messagesNew[$key] = $translations;
+ }
+ }
+
+ // Write data to handles.
+ $namesEn = LanguageNames::getNames( 'en' );
+ $namesNative = Language::fetchLanguageNames();
+
+ foreach ( $this->handles as $group => $handle ) {
+ // Find messages to write to this handle.
+ $messagesOut = array();
+ if ( !isset( $this->messagesOld[$group] ) ) {
+ continue;
+ }
+
+ foreach ( $this->messagesOld[$group]['en'] as $key => $message ) {
+ if ( array_key_exists( $key, $messagesNew ) ) {
+ $messagesOut[$key] = $messagesNew[$key];
+ } elseif ( isset( $this->messagesOld[$group][$l][$key] ) ) {
+ $messagesOut[$key] = $this->messagesOld[$group][$l][$key];
+ }
+ }
+
+ // If there are messages to write, write them.
+ if ( count( $messagesOut ) > 0 ) {
+ $out = '';
+ switch ( $this->type ) {
+ case 'special':
+ $out .= "\n\n/** {$namesEn[$l]} ({$namesNative[$l]}) " .
+ "*/\n\$specialPageAliases['{$l}'] = array(\n";
+ break;
+ case 'magic':
+ $out .= "\n\n/** {$namesEn[$l]} ({$namesNative[$l]}) *" .
+ "/\n\$magicWords['{$l}'] = array(\n";
+ break;
+ }
+ foreach ( $messagesOut as $key => $translations ) {
+ foreach ( $translations as $id => $translation ) {
+ $translations[$id] = addslashes( $translation );
+ if ( $this->type === 'magic' && $translation == '0' ) {
+ unset( $translations[$id] );
+ }
+ }
+ $translations = implode( "', '", $translations );
+ switch ( $this->type ) {
+ case 'special':
+ $out .= "\t'$key' => array( '$translations' ),\n";
+ break;
+ case 'magic':
+ if ( $this->messagesOld[$group]['en'][$key][0] === 0 ) {
+ $out .= "\t'$key' => array( 0, '$translations' ),\n";
+ } else {
+ $out .= "\t'$key' => array( '$translations' ),\n";
+ }
+ break;
+ }
+ }
+ $out .= ");";
+ fwrite( $handle, $out );
+ }
+ }
+ }
+ }
+
+ /**
+ * Do whatever needs doing after writing the primary content.
+ */
+ protected function writeFooters() {
+ $this->output( "Writing file footers...\n" );
+ }
+
+ /**
+ * Close all output file handles.
+ */
+ protected function closeHandles() {
+ $this->output( "Closing file handles...\n" );
+ foreach ( $this->handles as $handle ) {
+ fclose( $handle );
+ }
+ }
+}
+
+$maintClass = "MagicExport";
+require_once DO_MAINTENANCE;
diff --git a/MLEB/Translate/scripts/migrate-schema2.php b/MLEB/Translate/scripts/migrate-schema2.php
new file mode 100644
index 00000000..02abd0be
--- /dev/null
+++ b/MLEB/Translate/scripts/migrate-schema2.php
@@ -0,0 +1,71 @@
+<?php
+/**
+ * Script to convert Translate extension database schema to v2
+ *
+ * @author Niklas Laxström
+ * @copyright Copyright © 2011, Niklas Laxström
+ * @license GPL-2.0+
+ * @file
+ */
+
+// Standard boilerplate to define $IP
+if ( getenv( 'MW_INSTALL_PATH' ) !== false ) {
+ $IP = getenv( 'MW_INSTALL_PATH' );
+} else {
+ $dir = __DIR__;
+ $IP = "$dir/../../..";
+}
+require_once "$IP/maintenance/Maintenance.php";
+
+/**
+ * Script to convert Translate extension database schema to v2.
+ * Essentially gets rid of revtag_type table, which was unnecessary
+ * abstraction.
+ */
+class TSchema2 extends Maintenance {
+
+ public function __construct() {
+ parent::__construct();
+ $this->mDescription = 'Migrates database schema to version 2.';
+ }
+
+ public function execute() {
+ $dbw = wfGetDB( DB_MASTER );
+ if ( !$dbw->tableExists( 'revtag' ) ) {
+ $this->error( "Table revtag doesn't exist. Translate extension is not installed?", 1 );
+ }
+
+ if ( !$dbw->tableExists( 'revtag_type' ) ) {
+ $this->error( "Table revtag_type doesn't exist. Migration is already done.", 1 );
+ }
+
+ if ( $dbw->getType() !== 'mysql' ) {
+ $this->error( "This migration script only supports mysql. Please help " .
+ "us to write routine for {$dbw->getType()}.", 1 );
+ }
+
+ $table = $dbw->tableName( 'revtag' );
+ $dbw->query( "ALTER TABLE $table MODIFY rt_type varbinary(60) not null", __METHOD__ );
+
+ $res = $dbw->select(
+ 'revtag_type',
+ array( 'rtt_id', 'rtt_name' ),
+ array(),
+ __METHOD__
+ );
+
+ foreach ( $res as $row ) {
+ $dbw->update(
+ 'revtag',
+ array( 'rt_type' => $row->rtt_name ),
+ array( 'rt_type' => (string)$row->rtt_id ),
+ __METHOD__
+ );
+ }
+
+ $dbw->dropTable( 'revtag_type', __METHOD__ );
+ }
+}
+
+$maintClass = 'TSchema2';
+require_once DO_MAINTENANCE;
diff --git a/MLEB/Translate/scripts/mwcore-export.php b/MLEB/Translate/scripts/mwcore-export.php
new file mode 100644
index 00000000..668d9fbf
--- /dev/null
+++ b/MLEB/Translate/scripts/mwcore-export.php
@@ -0,0 +1,131 @@
+<?php
+/**
+ * Script to export special core features of %MediaWiki.
+ *
+ * @author Niklas Laxström
+ * @author Siebrand Mazeland
+ * @copyright Copyright © 2009-2013, Niklas Laxström, Siebrand Mazeland
+ * @license GPL-2.0+
+ * @file
+ */
+
+// Standard boilerplate to define $IP
+if ( getenv( 'MW_INSTALL_PATH' ) !== false ) {
+ $IP = getenv( 'MW_INSTALL_PATH' );
+} else {
+ $dir = __DIR__;
+ $IP = "$dir/../../..";
+}
+require_once "$IP/maintenance/Maintenance.php";
+
+class MwCoreExport extends Maintenance {
+ public function __construct() {
+ parent::__construct();
+ $this->mDescription = 'Core special features exporter.';
+ $this->addOption(
+ 'target',
+ 'Target directory for exported files',
+ true, /*required*/
+ true /*has arg*/
+ );
+ $this->addOption(
+ 'lang',
+ '(optional) Comma separated list of language codes. Default: *',
+ false, /*required*/
+ true /*has arg*/
+ );
+ $this->addOption(
+ 'type',
+ 'Export type: "namespace", "special" or "magic"',
+ true, /*required*/
+ true /*has arg*/
+ );
+ }
+
+ public function execute() {
+ if ( !is_writable( $this->getOption( 'target' ) ) ) {
+ $this->error( 'Target directory is not writable.', 1 );
+ }
+
+ $langs = TranslateUtils::parseLanguageCodes( $this->getOption( 'lang' ) );
+ $group = MessageGroups::getGroup( 'core' );
+ $type = $this->getOption( 'type' );
+
+ foreach ( $langs as $l ) {
+ $o = null;
+
+ switch ( $type ) {
+ case 'special':
+ $o = new SpecialPageAliasesCM( $l );
+ break;
+ case 'magic':
+ $o = new MagicWordsCM( $l );
+ break;
+ case 'namespace':
+ $o = new NamespaceCM( $l );
+ break;
+ default:
+ $this->error( 'Invalid type: Must be one of special, magic, namespace.', 1 );
+ }
+
+ $export = $o->export( 'core' );
+ if ( $export === '' ) {
+ continue;
+ }
+
+ $matches = array();
+ preg_match( '~^(\$[a-zA-Z]+)\s*=~m', $export, $matches );
+
+ if ( !isset( $matches[1] ) ) {
+ continue;
+ }
+
+ # remove useles comment
+ $export = preg_replace( "~^# .*$\n~m", '', $export );
+
+ if ( strpos( $export, '#!!' ) !== false ) {
+ $this->error( "There are warnings with $l." );
+ }
+
+ $variable = preg_quote( $matches[1], '~' );
+
+ /**
+ * @var FileBasedMessageGroup $group
+ */
+ $file = $group->getSourceFilePath( $l );
+
+ if ( !file_exists( $file ) ) {
+ $this->error( "File $file does not exist!" );
+ continue;
+ }
+
+ $data = file_get_contents( $file );
+
+ $export = trim( $export ) . "\n";
+ $escExport = addcslashes( $export, '\\$' ); # Darn backreferences
+
+ $outFile = $this->getOption( 'target' ) . '/' . $group->getTargetFilename( $l );
+
+ $count = 0;
+ $data = preg_replace( "~$variable\s*=.*?\n\);\n~s", $escExport, $data, 1, $count );
+ if ( $count ) {
+ file_put_contents( $outFile, $data );
+ } else {
+ $this->error( "Adding new entry to $outFile, please double check location." );
+ $pos = strpos( $data, "*/" );
+ if ( $pos === false ) {
+ $this->error( ". FAILED! Totally new file? No header?" );
+ } else {
+ $pos += 3;
+ }
+
+ $data = substr( $data, 0, $pos ) . "\n" . $export . substr( $data, $pos );
+
+ file_put_contents( $outFile, $data );
+ }
+ }
+ }
+}
+
+$maintClass = 'MwCoreExport';
+require_once RUN_MAINTENANCE_IF_MAIN;
diff --git a/MLEB/Translate/scripts/plural-comparison.php b/MLEB/Translate/scripts/plural-comparison.php
new file mode 100644
index 00000000..dc41b986
--- /dev/null
+++ b/MLEB/Translate/scripts/plural-comparison.php
@@ -0,0 +1,159 @@
+<?php
+/**
+ * Script for comparing different plural implementations.
+ *
+ * @author Niklas Laxström
+ *
+ * @copyright Copyright © 2010, Niklas Laxström
+ * @license GPL-2.0+
+ * @file
+ */
+
+// Standard boilerplate to define $IP
+if ( getenv( 'MW_INSTALL_PATH' ) !== false ) {
+ $IP = getenv( 'MW_INSTALL_PATH' );
+} else {
+ $dir = __DIR__;
+ $IP = "$dir/../../..";
+}
+require_once "$IP/maintenance/Maintenance.php";
+
+/// Script for comparing different plural implementations.
+class PluralCompare extends Maintenance {
+ public function __construct() {
+ parent::__construct();
+ $this->mDescription = 'Script for comparing different plural implementations.';
+ }
+
+ public function execute() {
+ $mwLanguages = $this->loadMediaWiki();
+ $gtLanguages = $this->loadGettext();
+ $clLanguages = $this->loadCLDR();
+
+ $all = Language::fetchLanguageNames( null, 'all' );
+ $allkeys = array_keys( $all + $mwLanguages + $gtLanguages + $clLanguages );
+ sort( $allkeys );
+
+ $this->output( sprintf( "%12s %3s %3s %4s\n", 'Code', 'MW', 'Get', 'CLDR' ) );
+ foreach ( $allkeys as $code ) {
+ $mw = isset( $mwLanguages[$code] ) ? '+' : '';
+ $gt = isset( $gtLanguages[$code] ) ? '+' : '';
+ $cl = isset( $clLanguages[$code] ) ? '+' : '';
+
+ if ( $mw === '' ) {
+ $fallbacks = Language::getFallbacksFor( $code );
+ foreach ( $fallbacks as $fcode ) {
+ if ( $fcode !== 'en' && isset( $mwLanguages[$fcode] ) ) {
+ $mw = '.';
+ }
+ }
+ }
+
+ $error = '';
+ if ( substr_count( sprintf( '%s%s%s', $mw, $gt, $cl ), '+' ) > 1 ) {
+ $error = $this->tryMatch( $code, $mw, $gtLanguages, $clLanguages );
+ }
+
+ $this->output( sprintf( "%12s %-3s %-3s %-4s %s\n", $code, $mw, $gt, $cl, $error ) );
+ }
+ }
+
+ protected function tryMatch( $code, $mws, $gtLanguages, $clLanguages ) {
+ if ( $mws !== '' ) {
+ $mwExp = true;
+ $lang = Language::factory( $code );
+ } else {
+ $mwExp = false;
+ }
+
+ if ( isset( $gtLanguages[$code] ) ) {
+ $gtExp = 'return (int) ' . str_replace( 'n', '$i', $gtLanguages[$code] ) . ';';
+ } else {
+ $gtExp = false;
+ }
+
+ if ( isset( $clLanguages[$code] ) ) {
+ $cldrExp = $clLanguages[$code];
+ } else {
+ $cldrExp = false;
+ }
+
+ for ( $i = 0; $i <= 250; $i++ ) {
+ $mw = $gt = $cl = '?';
+
+ if ( $mwExp ) {
+ $exp = $lang->getCompiledPluralRules();
+ $mw = CLDRPluralRuleEvaluator::evaluateCompiled( $i, $exp );
+ }
+
+ if ( $gtExp ) {
+ $gt = eval( $gtExp );
+ }
+
+ if ( $cldrExp ) {
+ $cl = CLDRPluralRuleEvaluator::evaluate( $i, $cldrExp );
+ }
+
+ if ( self::comp( $mw, $gt ) && self::comp( $gt, $cl ) && self::comp( $cl, $mw ) ) {
+ continue;
+ }
+
+ return "$i: $mw $gt $cl";
+ }
+
+ return '';
+ }
+
+ public static function comp( $a, $b ) {
+ return $a === '?' || $b === '?' || $a === $b;
+ }
+
+ protected function loadPluralFile( $fileName ) {
+ $doc = new DOMDocument;
+ $doc->load( $fileName );
+ $rulesets = $doc->getElementsByTagName( "pluralRules" );
+ $plurals = array();
+ foreach ( $rulesets as $ruleset ) {
+ $codes = $ruleset->getAttribute( 'locales' );
+ $rules = array();
+ $ruleElements = $ruleset->getElementsByTagName( "pluralRule" );
+ foreach ( $ruleElements as $elt ) {
+ $rules[] = $elt->nodeValue;
+ }
+ foreach ( explode( ' ', $codes ) as $code ) {
+ $plurals[$code] = $rules;
+ }
+ }
+
+ return $plurals;
+ }
+
+ public function loadCLDR() {
+ global $IP;
+
+ return $this->loadPluralFile( "$IP/languages/data/plurals.xml" );
+ }
+
+ public function loadMediaWiki() {
+ global $IP;
+ $rules = $this->loadPluralFile( "$IP/languages/data/plurals.xml" );
+ $rulesMW = $this->loadPluralFile( "$IP/languages/data/plurals-mediawiki.xml" );
+
+ return array_merge( $rules, $rulesMW );
+ }
+
+ public function loadGettext() {
+ $gtData = file_get_contents( __DIR__ . '/../data/plural-gettext.txt' );
+ $gtLanguages = array();
+ foreach ( preg_split( '/\n|\r/', $gtData, -1, PREG_SPLIT_NO_EMPTY ) as $line ) {
+ list( $code, $rule ) = explode( "\t", $line );
+ $rule = preg_replace( '/^.*?plural=/', '', $rule );
+ $gtLanguages[$code] = $rule;
+ }
+
+ return $gtLanguages;
+ }
+}
+
+$maintClass = 'PluralCompare';
+require_once DO_MAINTENANCE;
diff --git a/MLEB/Translate/scripts/poimport.php b/MLEB/Translate/scripts/poimport.php
new file mode 100644
index 00000000..da2d058a
--- /dev/null
+++ b/MLEB/Translate/scripts/poimport.php
@@ -0,0 +1,322 @@
+<?php
+/**
+ * Imports gettext files exported from Special:Translate back.
+ *
+ * @author Niklas Laxström
+ * @author Siebrand Mazeland
+ * @copyright Copyright © 2007-2013 Niklas Laxström, Siebrand Mazeland
+ * @license GPL-2.0+
+ * @file
+ */
+
+// Standard boilerplate to define $IP
+if ( getenv( 'MW_INSTALL_PATH' ) !== false ) {
+ $IP = getenv( 'MW_INSTALL_PATH' );
+} else {
+ $dir = __DIR__;
+ $IP = "$dir/../../..";
+}
+require_once "$IP/maintenance/Maintenance.php";
+
+class PoImport extends Maintenance {
+ public function __construct() {
+ parent::__construct();
+ $this->mDescription = 'Po file importer (does not make changes unless specified).';
+ $this->addOption(
+ 'file',
+ 'Gettext file to import (Translate specific formatting)',
+ true, /*required*/
+ true /*has arg*/
+ );
+ $this->addOption(
+ 'user',
+ 'User who makes edits to wiki',
+ true, /*required*/
+ true /*has arg*/
+ );
+ $this->addOption(
+ 'really',
+ '(optional) Actually make changes',
+ false, /*required*/
+ false /*has arg*/
+ );
+ }
+
+ public function execute() {
+ // Parse the po file.
+ $p = new PoImporter( $this->getOption( 'file' ) );
+ $p->setProgressCallback( array( $this, 'myOutput' ) );
+ list( $changes, $group ) = $p->parse();
+
+ if ( !count( $changes ) ) {
+ $this->output( "No changes to import\n" );
+ exit( 0 );
+ }
+
+ // Import changes to wiki.
+ $w = new WikiWriter(
+ $changes,
+ $group,
+ $this->getOption( 'user' ),
+ !$this->hasOption( 'really' )
+ );
+
+ $w->setProgressCallback( array( $this, 'myOutput' ) );
+ $w->execute();
+ }
+
+ /**
+ * Public alternative for protected Maintenance::output() as we need to get
+ * messages from the ChangeSyncer class to the commandline.
+ * @param string $text The text to show to the user
+ * @param string $channel Unique identifier for the channel.
+ * @param bool $error Whether this is an error message
+ */
+ public function myOutput( $text, $channel = null, $error = false ) {
+ if ( $error ) {
+ $this->error( $text, $channel );
+ } else {
+ $this->output( $text, $channel );
+ }
+ }
+}
+
+/**
+ * Parses a po file that has been exported from Mediawiki. Other files are not
+ * supported.
+ */
+class PoImporter {
+ /** @var callable Function to report progress updates */
+ protected $progressCallback;
+
+ /**
+ * Path to file to parse.
+ * @var bool|string
+ */
+ private $file = false;
+
+ /**
+ * @param string $file File to import
+ */
+ public function __construct( $file ) {
+ $this->file = $file;
+ }
+
+ public function setProgressCallback( $callback ) {
+ $this->progressCallback = $callback;
+ }
+
+ /// @see Maintenance::output for param docs
+ protected function reportProgress( $text, $channel = null, $severity = 'status' ) {
+ if ( is_callable( $this->progressCallback ) ) {
+ $useErrorOutput = $severity === 'error';
+ call_user_func( $this->progressCallback, $text, $channel, $useErrorOutput );
+ }
+ }
+
+ /**
+ * Loads translations for comparison.
+ *
+ * @param string $id Id of MessageGroup.
+ * @param string $code Language code.
+ * @return MessageCollection
+ */
+ protected function initMessages( $id, $code ) {
+ $group = MessageGroups::getGroup( $id );
+
+ $messages = $group->initCollection( $code );
+ $messages->loadTranslations();
+
+ return $messages;
+ }
+
+ /**
+ * Parses relevant stuff from the po file.
+ * @return array|bool
+ */
+ public function parse() {
+ $data = file_get_contents( $this->file );
+ $data = str_replace( "\r\n", "\n", $data );
+
+ $matches = array();
+ if ( preg_match( '/X-Language-Code:\s+(.*)\\\n/', $data, $matches ) ) {
+ $code = $matches[1];
+ $this->reportProgress( "Detected language as $code", 'code' );
+ } else {
+ $this->reportProgress( 'Unable to determine language code', 'code', 'error' );
+
+ return false;
+ }
+
+ if ( preg_match( '/X-Message-Group:\s+(.*)\\\n/', $data, $matches ) ) {
+ $groupId = $matches[1];
+ $this->reportProgress( "Detected message group as $groupId", 'group' );
+ } else {
+ $this->reportProgress( 'Unable to determine message group', 'group', 'error' );
+
+ return false;
+ }
+
+ $contents = $this->initMessages( $groupId, $code );
+
+ echo "----\n";
+
+ $poformat = '".*"\n?(^".*"$\n?)*';
+ $quotePattern = '/(^"|"$\n?)/m';
+
+ $sections = preg_split( '/\n{2,}/', $data );
+ $changes = array();
+ foreach ( $sections as $section ) {
+ $matches = array();
+ if ( preg_match( "/^msgctxt\s($poformat)/mx", $section, $matches ) ) {
+ // Remove quoting
+ $key = preg_replace( $quotePattern, '', $matches[1] );
+
+ // Ignore unknown keys
+ if ( !isset( $contents[$key] ) ) {
+ continue;
+ }
+ } else {
+ continue;
+ }
+ $matches = array();
+ if ( preg_match( "/^msgstr\s($poformat)/mx", $section, $matches ) ) {
+ // Remove quoting
+ $translation = preg_replace( $quotePattern, '', $matches[1] );
+ // Restore new lines and remove quoting
+ $translation = stripcslashes( $translation );
+ } else {
+ continue;
+ }
+
+ // Fuzzy messages
+ if ( preg_match( '/^#, fuzzy$/m', $section ) ) {
+ $translation = TRANSLATE_FUZZY . $translation;
+ }
+
+ $oldtranslation = (string)$contents[$key]->translation();
+
+ if ( $translation !== $oldtranslation ) {
+ if ( $translation === '' ) {
+ $this->reportProgress( "Skipping empty translation in the po file for $key!\n" );
+ } else {
+ if ( $oldtranslation === '' ) {
+ $this->reportProgress( "New translation for $key\n" );
+ } else {
+ $this->reportProgress( "Translation of $key differs:\n$translation\n" );
+ }
+ $changes["$key/$code"] = $translation;
+ }
+ }
+ }
+
+ return array( $changes, $groupId );
+ }
+}
+
+/**
+ * Import changes to wiki as given user
+ */
+class WikiWriter {
+ /** @var callable Function to report progress updates */
+ protected $progressCallback;
+
+ protected $user;
+
+ private $changes = array();
+ private $dryrun = true;
+ private $group = null;
+
+ /**
+ * @param array $changes Array of key/langcode => translation.
+ * @param string $groupId Group ID.
+ * @param string $user User who makes the edits in wiki.
+ * @param bool $dryrun Do not do anything that affects the database.
+ */
+ public function __construct( $changes, $groupId, $user, $dryrun = true ) {
+ $this->changes = $changes;
+ $this->group = MessageGroups::getGroup( $groupId );
+ $this->user = User::newFromName( $user );
+ $this->dryrun = $dryrun;
+ }
+
+ public function setProgressCallback( $callback ) {
+ $this->progressCallback = $callback;
+ }
+
+ /// @see Maintenance::output for param docs
+ protected function reportProgress( $text, $channel, $severity = 'status' ) {
+ if ( is_callable( $this->progressCallback ) ) {
+ $useErrorOutput = $severity === 'error';
+ call_user_func( $this->progressCallback, $text, $channel, $useErrorOutput );
+ }
+ }
+
+ /**
+ * Updates pages on by one.
+ */
+ public function execute() {
+ if ( !$this->group ) {
+ $this->reportProgress( "Given group does not exist.", 'groupId', 'error' );
+
+ return;
+ }
+
+ if ( !$this->user->idForName() ) {
+ $this->reportProgress( "Given user does not exist.", 'user', 'error' );
+
+ return;
+ }
+
+ $count = count( $this->changes );
+ $this->reportProgress( "Going to update $count pages.", 'pagecount' );
+
+ $ns = $this->group->getNamespace();
+
+ foreach ( $this->changes as $title => $text ) {
+ $this->updateMessage( $ns, $title, $text );
+ }
+ }
+
+ /**
+ * Actually adds the new translation.
+ * @param int $namespace
+ * @param string $page
+ * @param string $text
+ */
+ private function updateMessage( $namespace, $page, $text ) {
+ $title = Title::makeTitleSafe( $namespace, $page );
+
+ if ( !$title instanceof Title ) {
+ $this->reportProgress( 'INVALID TITLE!', $page, 'error' );
+
+ return;
+ }
+ $this->reportProgress( "Updating {$title->getPrefixedText()}... ", $title );
+
+ if ( $this->dryrun ) {
+ $this->reportProgress( 'DRY RUN!', $title );
+
+ return;
+ }
+
+ $page = WikiPage::factory( $title );
+ $content = ContentHandler::makeContent( $text, $title );
+ $status = $page->doEditContent(
+ $content,
+ 'Updating translation from gettext import',
+ 0,
+ false,
+ $this->user
+ );
+
+ if ( $status === true || ( is_object( $status ) && $status->isOK() ) ) {
+ $this->reportProgress( 'OK!', $title );
+ } else {
+ $this->reportProgress( 'Failed!', $title );
+ }
+ }
+}
+
+$maintClass = 'PoImport';
+require_once RUN_MAINTENANCE_IF_MAIN;
diff --git a/MLEB/Translate/scripts/populateFuzzy.php b/MLEB/Translate/scripts/populateFuzzy.php
new file mode 100644
index 00000000..401e4b4e
--- /dev/null
+++ b/MLEB/Translate/scripts/populateFuzzy.php
@@ -0,0 +1,86 @@
+<?php
+/**
+ * A script to populate fuzzy tags to revtag table.
+ *
+ * @author Niklas Laxström
+ * @copyright Copyright © 2009-2013, Niklas Laxström
+ * @license GPL-2.0+
+ * @file
+ */
+
+// Standard boilerplate to define $IP
+if ( getenv( 'MW_INSTALL_PATH' ) !== false ) {
+ $IP = getenv( 'MW_INSTALL_PATH' );
+} else {
+ $dir = __DIR__;
+ $IP = "$dir/../../..";
+}
+require_once "$IP/maintenance/Maintenance.php";
+
+/// A script to populate fuzzy tags to revtag table.
+class PopulateFuzzy extends Maintenance {
+ public function __construct() {
+ parent::__construct();
+ $this->mDescription = 'A script to populate fuzzy tags to revtag table.';
+ $this->addOption(
+ 'namespace',
+ '(optional) Namepace name or id',
+ /*required*/false,
+ /*has arg*/true
+ );
+ }
+
+ public function execute() {
+ global $wgTranslateMessageNamespaces;
+
+ $namespace = $this->getOption( 'namespace', $wgTranslateMessageNamespaces );
+ if ( is_string( $namespace ) ) {
+ if ( !MWNamespace::exists( $namespace ) ) {
+ $namespace = MWNamespace::getCanonicalIndex( $namespace );
+ if ( $namespace === null ) {
+ $this->error( 'Bad namespace', true );
+ }
+ }
+ }
+
+ $db = wfGetDB( DB_MASTER );
+ $tables = array( 'page', 'text', 'revision' );
+ $fields = array( 'page_id', 'page_title', 'page_namespace', 'rev_id', 'old_text', 'old_flags' );
+ $conds = array(
+ 'page_latest = rev_id',
+ 'old_id = rev_text_id',
+ 'page_namespace' => $namespace,
+ );
+
+ $limit = 100;
+ $offset = 0;
+ while ( true ) {
+ $inserts = array();
+ $this->output( '.', 0 );
+ $options = array( 'LIMIT' => $limit, 'OFFSET' => $offset );
+ $res = $db->select( $tables, $fields, $conds, __METHOD__, $options );
+
+ if ( !$res->numRows() ) {
+ break;
+ }
+
+ foreach ( $res as $r ) {
+ $text = Revision::getRevisionText( $r );
+ if ( strpos( $text, TRANSLATE_FUZZY ) !== false ) {
+ $inserts[] = array(
+ 'rt_page' => $r->page_id,
+ 'rt_revision' => $r->rev_id,
+ 'rt_type' => RevTag::getType( 'fuzzy' ),
+ );
+ }
+ }
+
+ $offset += $limit;
+
+ $db->replace( 'revtag', 'rt_type_page_revision', $inserts, __METHOD__ );
+ }
+ }
+}
+
+$maintClass = 'PopulateFuzzy';
+require_once RUN_MAINTENANCE_IF_MAIN;
diff --git a/MLEB/Translate/scripts/processMessageChanges.php b/MLEB/Translate/scripts/processMessageChanges.php
new file mode 100644
index 00000000..48343bab
--- /dev/null
+++ b/MLEB/Translate/scripts/processMessageChanges.php
@@ -0,0 +1,117 @@
+<?php
+/**
+ * Script for processing message changes in file based message groups.
+ *
+ * @author Niklas Laxström
+ *
+ * @copyright Copyright © 2012-2013, Niklas Laxström
+ * @license GPL-2.0+
+ * @file
+ */
+
+// Standard boilerplate to define $IP
+if ( getenv( 'MW_INSTALL_PATH' ) !== false ) {
+ $IP = getenv( 'MW_INSTALL_PATH' );
+} else {
+ $dir = __DIR__;
+ $IP = "$dir/../../..";
+}
+require_once "$IP/maintenance/Maintenance.php";
+
+/**
+ * Script for processing message changes in file based message groups.
+ *
+ * We used to process changes during web request, but that was too slow. With
+ * this command line script we can do all the work needed even if it takes
+ * some time.
+ *
+ * @since 2012-04-23
+ */
+class ProcessMessageChanges extends Maintenance {
+ protected $changes = array();
+
+ /**
+ * @var int
+ */
+ protected $counter;
+
+ public function __construct() {
+ parent::__construct();
+ $this->mDescription = 'Script for processing message changes in file based message groups';
+ $this->addOption(
+ 'group',
+ '(optional) Comma separated list of group IDs to process (can use * as wildcard). ' .
+ 'Default: "*"',
+ false, /*required*/
+ true /*has arg*/
+ );
+ $this->addOption(
+ 'skipgroup',
+ '(optional) Comma separated list of group IDs to not process (can use * ' .
+ 'as wildcard). Overrides --group parameter.',
+ false, /*required*/
+ true /*has arg*/
+ );
+ }
+
+ public function execute() {
+ $groups = $this->getGroups();
+ $changes = array();
+ $comparator = new ExternalMessageSourceStateComparator();
+
+ /** @var FileBasedMessageGroup $group */
+ foreach ( $groups as $id => $group ) {
+ $this->output( "Processing $id\n" );
+ $changes[$id] = $comparator->processGroup( $group, $comparator::ALL_LANGUAGES );
+ }
+
+ // Remove all groups without changes
+ $changes = array_filter( $changes );
+
+ if ( count( $changes ) ) {
+ ExternalMessageSourceStateComparator::writeChanges( $changes );
+ $url = SpecialPage::getTitleFor( 'ManageMessageGroups' )->getFullUrl();
+ $this->output( "Process changes at $url\n" );
+ } else {
+ $this->output( "No changes found\n" );
+ }
+ }
+
+ /**
+ * Gets list of message groups filtered by user input.
+ * @return MessageGroup[]
+ */
+ protected function getGroups() {
+ /// @var $groups MessageGroup[]
+ $groups = MessageGroups::getGroupsByType( 'FileBasedMessageGroup' );
+
+ // Include all if option not given
+ $include = $this->getOption( 'group', '*' );
+ $include = explode( ',', $include );
+ $include = array_map( 'trim', $include );
+ $include = MessageGroups::expandWildcards( $include );
+
+ // Exclude nothing if option not given
+ $exclude = $this->getOption( 'skipgroup', '' );
+ $exclude = explode( ',', $exclude );
+ $exclude = array_map( 'trim', $exclude );
+ $exclude = MessageGroups::expandWildcards( $exclude );
+
+ // Flip to allow isset
+ $include = array_flip( $include );
+ $exclude = array_flip( $exclude );
+
+ $groups = array_filter( $groups,
+ function ( MessageGroup $group ) use ( $include, $exclude ) {
+ $id = $group->getId();
+
+ return isset( $include[$id] ) && !isset( $exclude[$id] );
+ }
+ );
+
+ return $groups;
+ }
+}
+
+$maintClass = 'ProcessMessageChanges';
+require_once RUN_MAINTENANCE_IF_MAIN;
diff --git a/MLEB/Translate/scripts/refresh-translatable-pages.php b/MLEB/Translate/scripts/refresh-translatable-pages.php
new file mode 100644
index 00000000..37021e12
--- /dev/null
+++ b/MLEB/Translate/scripts/refresh-translatable-pages.php
@@ -0,0 +1,51 @@
+<?php
+/**
+ * Script to ensure all translation pages are up to date.
+ *
+ * @author Niklas Laxström
+ * @license GPL-2.0+
+ * @file
+ */
+
+// Standard boilerplate to define $IP
+if ( getenv( 'MW_INSTALL_PATH' ) !== false ) {
+ $IP = getenv( 'MW_INSTALL_PATH' );
+} else {
+ $dir = __DIR__;
+ $IP = "$dir/../../..";
+}
+require_once "$IP/maintenance/Maintenance.php";
+
+/**
+ * Script to ensure all translation pages are up to date
+ * @since 2013-04
+ */
+class RefreshTranslatablePages extends Maintenance {
+ public function __construct() {
+ parent::__construct();
+ $this->mDescription = 'Ensure all translation pages are up to date.';
+ }
+
+ public function execute() {
+ $groups = MessageGroups::singleton()->getGroups();
+
+ /** @var MessageGroup $group */
+ foreach ( $groups as $group ) {
+ if ( !$group instanceof WikiPageMessageGroup ) {
+ continue;
+ }
+
+ // Get all translation subpages and refresh each one of them
+ $page = TranslatablePage::newFromTitle( $group->getTitle() );
+ $translationPages = $page->getTranslationPages();
+
+ foreach ( $translationPages as $subpage ) {
+ $job = TranslateRenderJob::newJob( $subpage );
+ $job->run();
+ }
+ }
+ }
+}
+
+$maintClass = 'RefreshTranslatablePages';
+require_once RUN_MAINTENANCE_IF_MAIN;
diff --git a/MLEB/Translate/scripts/sync-group.php b/MLEB/Translate/scripts/sync-group.php
new file mode 100644
index 00000000..5990eef1
--- /dev/null
+++ b/MLEB/Translate/scripts/sync-group.php
@@ -0,0 +1,485 @@
+<?php
+/**
+ * Command line script to import/update source messages and translations into
+ * the wiki database.
+ *
+ * @author Niklas Laxström
+ * @author Siebrand Mazeland
+ * @copyright Copyright © 2007-2013, Niklas Laxström
+ * @copyright Copyright © 2009-2013, Siebrand Mazeland
+ * @license GPL-2.0+
+ * @file
+ */
+
+// Standard boilerplate to define $IP
+if ( getenv( 'MW_INSTALL_PATH' ) !== false ) {
+ $IP = getenv( 'MW_INSTALL_PATH' );
+} else {
+ $dir = __DIR__;
+ $IP = "$dir/../../..";
+}
+require_once "$IP/maintenance/Maintenance.php";
+
+# Override the memory limit for wfShellExec, 100 MB seems to be too little for svn
+$wgMaxShellMemory = 1024 * 200;
+
+class SyncGroup extends Maintenance {
+ public function __construct() {
+ parent::__construct();
+ $this->mDescription = 'Import or update source messages and translations into ' .
+ 'the wiki database.';
+ $this->addOption(
+ 'git',
+ '(optional) Use git to retrieve last modified date of i18n files. Will use subversion ' .
+ 'by default and fallback on filesystem timestamp',
+ false, /*required*/
+ false /*has arg*/
+ );
+ $this->addOption(
+ 'group',
+ 'Comma separated list of group IDs (can use * as wildcard).',
+ true, /*required*/
+ true /*has arg*/
+ );
+ $this->addOption(
+ 'lang',
+ '(optional) Comma separated list of language codes or *',
+ false, /*required*/
+ true /*has arg*/
+ );
+ $this->addOption(
+ 'norc',
+ '(optional) Do not add entries to recent changes table',
+ false, /*required*/
+ false /*has arg*/
+ );
+ $this->addOption(
+ 'noask',
+ '(optional) Skip all conflicts',
+ false, /*required*/
+ false /*has arg*/
+ );
+ $this->addOption(
+ 'start',
+ '(optional) Start of the last export (changes in wiki after will conflict)',
+ false, /*required*/
+ true /*has arg*/
+ );
+ $this->addOption(
+ 'end',
+ '(optional) End of the last export (changes in source after will conflict)',
+ false, /*required*/
+ true /*has arg*/
+ );
+ $this->addOption(
+ 'nocolor',
+ '(optional) Without colors',
+ false, /*required*/
+ false /*has arg*/
+ );
+ }
+
+ public function execute() {
+ $groupIds = explode( ',', trim( $this->getOption( 'group' ) ) );
+ $groupIds = MessageGroups::expandWildcards( $groupIds );
+ $groups = MessageGroups::getGroupsById( $groupIds );
+
+ if ( !count( $groups ) ) {
+ $this->error( "ESG2: No valid message groups identified.", 1 );
+ }
+
+ $start = $this->getOption( 'start' ) ? strtotime( $this->getOption( 'start' ) ) : false;
+ $end = $this->getOption( 'end' ) ? strtotime( $this->getOption( 'end' ) ) : false;
+
+ $this->output( "Conflict times: " . wfTimestamp( TS_ISO_8601, $start ) . " - " .
+ wfTimestamp( TS_ISO_8601, $end ) . "\n" );
+
+ $codes = array_filter( array_map( 'trim', explode( ',', $this->getOption( 'lang' ) ) ) );
+
+ $supportedCodes = array_keys( TranslateUtils::getLanguageNames( 'en' ) );
+ ksort( $supportedCodes );
+
+ if ( $codes[0] === '*' ) {
+ $codes = $supportedCodes;
+ }
+
+ /** @var FileBasedMessageGroup $group */
+ foreach ( $groups as $groupId => &$group ) {
+ if ( $group->isMeta() ) {
+ $this->output( "Skipping meta message group $groupId.\n" );
+ continue;
+ }
+
+ $this->output( "{$group->getLabel()} ", $group );
+
+ foreach ( $codes as $code ) {
+ // No sync possible for unsupported language codes.
+ if ( !in_array( $code, $supportedCodes ) ) {
+ $this->output( "Unsupported code " . $code . ": skipping.\n" );
+ continue;
+ }
+
+ $file = $group->getSourceFilePath( $code );
+
+ if ( !$file ) {
+ continue;
+ }
+
+ if ( !file_exists( $file ) ) {
+ continue;
+ }
+
+ $cs = new ChangeSyncer( $group, $this );
+ $cs->setProgressCallback( array( $this, 'myOutput' ) );
+ $cs->interactive = !$this->hasOption( 'noask' );
+ $cs->nocolor = $this->hasOption( 'nocolor' );
+ $cs->norc = $this->hasOption( 'norc' );
+
+ # @todo FIXME: Make this auto detect.
+ # Guess last modified date of the file from either git, svn or filesystem
+ if ( $this->hasOption( 'git' ) ) {
+ $ts = $cs->getTimestampsFromGit( $file );
+ } else {
+ $ts = $cs->getTimestampsFromSvn( $file );
+ }
+ if ( !$ts ) {
+ $ts = $cs->getTimestampsFromFs( $file );
+ }
+
+ $this->output( "Modify time for $code: " . wfTimestamp( TS_ISO_8601, $ts ) . "\n" );
+
+ $cs->checkConflicts( $code, $start, $end, $ts );
+ }
+
+ unset( $group );
+ }
+ // Print timestamp if the user wants to store it
+ $this->output( wfTimestamp( TS_RFC2822 ) . "\n" );
+ }
+
+ /**
+ * Public alternative for protected Maintenance::output() as we need to get
+ * messages from the ChangeSyncer class to the commandline.
+ * @param string $text The text to show to the user
+ * @param string $channel Unique identifier for the channel.
+ * @param bool $error Whether this is an error message
+ */
+ public function myOutput( $text, $channel = null, $error = false ) {
+ if ( $error ) {
+ $this->error( $text, $channel );
+ } else {
+ $this->output( $text, $channel );
+ }
+ }
+}
+
+/**
+ * Simple external changes syncer and conflict resolution.
+ */
+class ChangeSyncer {
+ /** @var callable Function to report progress updates */
+ protected $progressCallback;
+
+ /** @var bool Don't list changes in recent changes table. */
+ public $norc = false;
+
+ /** @var bool Whether the script can ask questions. */
+ public $interactive = true;
+
+ /** @var bool Disable color output. */
+ public $nocolor = false;
+
+ /** @var MessageGroup */
+ protected $group;
+
+ /**
+ * @param MessageGroup $group Message group to synchronise.
+ * can be relayed back.
+ */
+ public function __construct( MessageGroup $group ) {
+ $this->group = $group;
+ }
+
+ public function setProgressCallback( $callback ) {
+ $this->progressCallback = $callback;
+ }
+
+ /// @see Maintenance::output for param docs
+ protected function reportProgress( $text, $channel, $severity = 'status' ) {
+ if ( is_callable( $this->progressCallback ) ) {
+ $useErrorOutput = $severity === 'error';
+ call_user_func( $this->progressCallback, $text, $channel, $useErrorOutput );
+ }
+ }
+
+ // svn component from pecl doesn't seem to have this in quick sight
+ /**
+ * Fetch last changed timestamp for a versioned file for conflict resolution.
+ * @param string $file Filename with full path.
+ * @return string Timestamp or false.
+ */
+ public function getTimestampsFromSvn( $file ) {
+ $file = escapeshellarg( $file );
+ $retval = 0;
+ $output = wfShellExec( "svn info $file 2>/dev/null", $retval );
+
+ if ( $retval ) {
+ return false;
+ }
+
+ $matches = array();
+ // PHP doesn't allow foo || return false;
+ // Thank
+ // you
+ // PHP (for being an ass)!
+ $regex = '^Last Changed Date: (.*) \(';
+ $ok = preg_match( "~$regex~m", $output, $matches );
+ if ( $ok ) {
+ return strtotime( $matches[1] );
+ }
+
+ return false;
+ }
+
+ /**
+ * Fetch last changed timestamp for a versioned file for conflict resolution.
+ * @param string $file Filename with full path.
+ * @return string|bool Timestamp or false.
+ */
+ public function getTimestampsFromGit( $file ) {
+ $file = escapeshellarg( $file );
+ $retval = 0;
+ $output = wfShellExec( "git log -n 1 --format=%cd $file", $retval );
+
+ if ( $retval ) {
+ return false;
+ }
+
+ return strtotime( $output );
+ }
+
+ /**
+ * Fetch last changed timestamp for any file for conflict resolution.
+ * @param string $file Filename with full path.
+ * @return string Timestamp or false.
+ */
+ public function getTimestampsFromFs( $file ) {
+ if ( !file_exists( $file ) ) {
+ return false;
+ }
+
+ $stat = stat( $file );
+
+ return $stat['mtime'];
+ }
+
+ /**
+ * Do some conflict resolution for translations.
+ * @param string $code Language code.
+ * @param bool|int $startTs Time of the last export (changes in wiki after
+ * this will conflict)
+ * @param bool|int $endTs Time of the last export (changes in source before
+ * this won't conflict)
+ * @param bool|int $changeTs When change happened in the source.
+ */
+ public function checkConflicts( $code, $startTs = false, $endTs = false, $changeTs = false ) {
+ $messages = $this->group->load( $code );
+
+ if ( !count( $messages ) ) {
+ return;
+ }
+
+ $collection = $this->group->initCollection( $code );
+ $collection->filter( 'ignored' );
+ $collection->loadTranslations();
+
+ foreach ( $messages as $key => $translation ) {
+ if ( !isset( $collection[$key] ) ) {
+ continue;
+ }
+
+ // @todo Temporary exception. Should be fixed elsewhere more generically.
+ if ( $translation == '{{PLURAL:GETTEXT|}}' ) {
+ return;
+ }
+
+ $title = Title::makeTitleSafe( $this->group->getNamespace(), "$key/$code" );
+
+ $page = $title->getPrefixedText();
+
+ if ( $collection[$key]->translation() === null ) {
+ $this->reportProgress( "Importing $page as a new translation\n", 'importing' );
+ $this->import( $title, $translation, 'Importing a new translation' );
+ continue;
+ }
+
+ $current = str_replace( TRANSLATE_FUZZY, '', $collection[$key]->translation() );
+ $translation = str_replace( TRANSLATE_FUZZY, '', $translation );
+ if ( $translation === $current ) {
+ continue;
+ }
+
+ $this->reportProgress( "Conflict in " . $this->color( 'bold', $page ) . "!", $page );
+
+ $iso = 'xnY-xnm-xnd"T"xnH:xni:xns';
+ $lang = RequestContext::getMain()->getLanguage();
+
+ // Finally all is ok, now lets start comparing timestamps
+ // Make sure we are comparing timestamps in same format
+ $wikiTs = $this->getLastGoodChange( $title, $startTs );
+ if ( $wikiTs ) {
+ $wikiTs = wfTimestamp( TS_UNIX, $wikiTs );
+ $wikiDate = $lang->sprintfDate( $iso, wfTimestamp( TS_MW, $wikiTs ) );
+ } else {
+ $wikiDate = 'Unknown';
+ }
+
+ if ( $startTs ) {
+ $startTs = wfTimestamp( TS_UNIX, $startTs );
+ }
+
+ if ( $endTs ) {
+ $endTs = wfTimestamp( TS_UNIX, $endTs );
+ }
+ if ( $changeTs ) {
+ $changeTs = wfTimestamp( TS_UNIX, $changeTs );
+ $changeDate = $lang->sprintfDate( $iso, wfTimestamp( TS_MW, $changeTs ) );
+ } else {
+ $changeDate = 'Unknown';
+ }
+
+ if ( $changeTs ) {
+ if ( $wikiTs > $startTs && $changeTs <= $endTs ) {
+ $this->reportProgress( " →Changed in wiki after export: IGNORE", $page );
+ continue;
+ } elseif ( !$wikiTs || ( $changeTs > $endTs && $wikiTs < $startTs ) ) {
+ $this->reportProgress( " →Changed in source after export: IMPORT", $page );
+ $this->import(
+ $title,
+ $translation,
+ 'Updating translation from external source'
+ );
+ continue;
+ }
+ }
+
+ if ( !$this->interactive ) {
+ continue;
+ }
+
+ $this->reportProgress( " →Needs manual resolution", $page );
+ $this->reportProgress( "Source translation at $changeDate:", 'source' );
+ $this->reportProgress( $this->color( 'blue', $translation ), 'source' );
+ $this->reportProgress( "Wiki translation at $wikiDate:", 'translation' );
+ $this->reportProgress( $this->color( 'green', $current ), 'translation' );
+
+ do {
+ $this->reportProgress( "Resolution: [S]kip [I]mport [C]onflict: ", 'foo' );
+ // @todo Find an elegant way to use Maintenance::readconsole().
+ $action = fgets( STDIN );
+ $action = strtoupper( trim( $action ) );
+
+ if ( $action === 'S' ) {
+ break;
+ }
+
+ if ( $action === 'I' ) {
+ $this->import(
+ $title,
+ $translation,
+ 'Updating translation from external source'
+ );
+ break;
+ }
+
+ if ( $action === 'C' ) {
+ $this->import(
+ $title,
+ TRANSLATE_FUZZY . $translation,
+ 'Edit conflict between wiki and source'
+ );
+ break;
+ }
+ } while ( true );
+ }
+ }
+
+ /**
+ * Colors text for shell output
+ * @param string $color Either blue, green or bold.
+ * @param string $text
+ * @return string
+ */
+ public function color( $color, $text ) {
+ switch ( $color ) {
+ case 'blue':
+ return "\033[1;34m$text\033[0m";
+ case 'green':
+ return "\033[1;32m$text\033[0m";
+ case 'bold':
+ return "\033[1m$text\033[0m";
+ default:
+ return $text;
+ }
+ }
+
+ /**
+ * Try to identify when the translation was last changed in the wiki.
+ * @param Title $title Title of the page which contains translation.
+ * @param int|bool $startTs Timestamp how far back to go before giving up.
+ * @return int|bool Timestamp or false.
+ */
+ public function getLastGoodChange( $title, $startTs = false ) {
+ global $wgTranslateFuzzyBotName;
+
+ $wikiTs = false;
+ $revision = Revision::newFromTitle( $title );
+ while ( $revision ) {
+ // No need to go back further
+ if ( $startTs && $wikiTs && ( $wikiTs < $startTs ) ) {
+ break;
+ }
+
+ if ( $revision->getRawUserText() === $wgTranslateFuzzyBotName ) {
+ $revision = $revision->getPrevious();
+ continue;
+ }
+
+ $wikiTs = wfTimestamp( TS_UNIX, $revision->getTimestamp() );
+ break;
+ }
+
+ return $wikiTs;
+ }
+
+ /**
+ * Does the actual edit.
+ * @param Title $title
+ * @param string $translation
+ * @param string $comment Edit summary.
+ */
+ public function import( $title, $translation, $comment ) {
+ $flags = EDIT_FORCE_BOT;
+ if ( $this->norc ) {
+ $flags |= EDIT_SUPPRESS_RC;
+ }
+
+ $this->reportProgress( "Importing {$title->getPrefixedText()}: ", $title );
+
+ $wikipage = new WikiPage( $title );
+ $content = ContentHandler::makeContent( $translation, $title );
+ $status = $wikipage->doEditContent(
+ $content,
+ $comment,
+ $flags,
+ false,
+ FuzzyBot::getUser()
+ );
+
+ $success = $status === true || ( is_object( $status ) && $status->isOK() );
+ $this->reportProgress( $success ? 'OK' : 'FAILED', $title );
+ }
+}
+
+$maintClass = 'SyncGroup';
+require_once RUN_MAINTENANCE_IF_MAIN;
diff --git a/MLEB/Translate/scripts/ttmserver-export.php b/MLEB/Translate/scripts/ttmserver-export.php
new file mode 100644
index 00000000..671e4022
--- /dev/null
+++ b/MLEB/Translate/scripts/ttmserver-export.php
@@ -0,0 +1,210 @@
+<?php
+/**
+ * Script to bootstrap TTMServer translation memory
+ *
+ * @author Niklas Laxström
+ * @license GPL-2.0+
+ * @file
+ */
+
+// Standard boilerplate to define $IP
+if ( getenv( 'MW_INSTALL_PATH' ) !== false ) {
+ $IP = getenv( 'MW_INSTALL_PATH' );
+} else {
+ $dir = __DIR__;
+ $IP = "$dir/../../..";
+}
+require_once "$IP/maintenance/Maintenance.php";
+
+/**
+ * Script to bootstrap TTMServer translation memory.
+ * @since 2012-01-26
+ */
+class TTMServerBootstrap extends Maintenance {
+ /// @var Array Configuration of requested TTMServer
+ protected $config;
+
+ public function __construct() {
+ parent::__construct();
+ $this->mDescription = 'Script to bootstrap TTMServer.';
+ $this->addOption(
+ 'threads',
+ '(optional) Number of threads',
+ /*required*/false,
+ /*has arg*/true
+ );
+ $this->addOption(
+ 'ttmserver',
+ '(optional) Server configuration identifier',
+ /*required*/false,
+ /*has arg*/true
+ );
+ $this->setBatchSize( 500 );
+ $this->start = microtime( true );
+ }
+
+ public function statusLine( $text, $channel = null ) {
+ $pid = sprintf( "%5s", getmypid() );
+ $prefix = sprintf( "%6.2f", microtime( true ) - $this->start );
+ $mem = sprintf( "%5.1fM", ( memory_get_usage( true ) / ( 1024 * 1024 ) ) );
+ $this->output( "$pid $prefix $mem $text", $channel );
+ }
+
+ public function execute() {
+ global $wgTranslateTranslationServices;
+
+ // TTMServer is the id of the enabled-by-default instance
+ $configKey = $this->getOption( 'ttmserver', 'TTMServer' );
+ if ( !isset( $wgTranslateTranslationServices[$configKey] ) ) {
+ $this->error( "Translation memory is not configured properly", 1 );
+ }
+
+ $config = $wgTranslateTranslationServices[$configKey];
+
+ // Do as little as possible in the main thread, to not clobber forked processes.
+ // See also #resetStateForFork.
+ $pid = pcntl_fork();
+ if ( $pid === 0 ) {
+ $this->resetStateForFork();
+ $this->beginBootStrap( $config );
+ exit();
+ } elseif ( $pid === -1 ) {
+ // Fork failed do it serialized
+ $this->beginBootStrap( $config );
+ } else {
+ // Main thread
+ $this->statusLine( "Forked thread $pid to handle bootstrapping\n" );
+ $status = 0;
+ pcntl_waitpid( $pid, $status );
+ }
+
+ $threads = $this->getOption( 'threads', 1 );
+ $pids = array();
+
+ $groups = MessageGroups::singleton()->getGroups();
+ foreach ( $groups as $id => $group ) {
+ /** @var MessageGroup $group */
+ if ( $group->isMeta() ) {
+ continue;
+ }
+
+ // Fork to increase speed with parallelism. Also helps with memory usage if there are leaks.
+ $pid = pcntl_fork();
+
+ if ( $pid === 0 ) {
+ $this->resetStateForFork();
+ $this->exportGroup( $group, $config );
+ exit();
+ } elseif ( $pid === -1 ) {
+ // Fork failed do it serialized
+ $this->exportGroup( $group, $config );
+ } else {
+ // Main thread
+ $this->statusLine( "Forked thread $pid to handle $id\n" );
+ $pids[$pid] = true;
+
+ // If we hit the thread limit, wait for any child to finish.
+ if ( count( $pids ) >= $threads ) {
+ $status = 0;
+ $pid = pcntl_wait( $status );
+ unset( $pids[$pid] );
+ }
+ }
+ }
+
+ // Return control after all threads have finished.
+ foreach ( array_keys( $pids ) as $pid ) {
+ $status = 0;
+ pcntl_waitpid( $pid, $status );
+ }
+
+ // It's okay to do this in the main thread as it is the last thing
+ $this->endBootstrap( $config );
+ }
+
+ protected function beginBootStrap( $config ) {
+ $this->statusLine( "Cleaning up old entries...\n" );
+ $server = TTMServer::factory( $config );
+ $server->setLogger( $this );
+ $server->beginBootstrap();
+ }
+
+ protected function endBootstrap( $config ) {
+ $this->statusLine( "Optimizing...\n" );
+ $server = TTMServer::factory( $config );
+ $server->setLogger( $this );
+ $server->endBootstrap();
+ }
+
+ protected function exportGroup( MessageGroup $group, $config ) {
+ $server = TTMServer::factory( $config );
+ $server->setLogger( $this );
+
+ $id = $group->getId();
+ $sourceLanguage = $group->getSourceLanguage();
+
+ $stats = MessageGroupStats::forGroup( $id );
+
+ $collection = $group->initCollection( $sourceLanguage );
+ $collection->filter( 'ignored' );
+ $collection->initMessages();
+
+ $server->beginBatch();
+
+ $inserts = array();
+ foreach ( $collection->keys() as $mkey => $title ) {
+ $handle = new MessageHandle( $title );
+ $inserts[] = array( $handle, $sourceLanguage, $collection[$mkey]->definition() );
+ }
+
+ while ( $inserts !== array() ) {
+ $batch = array_splice( $inserts, 0, $this->mBatchSize );
+ $server->batchInsertDefinitions( $batch );
+ }
+
+ $inserts = array();
+ foreach ( $stats as $targetLanguage => $numbers ) {
+ if ( $targetLanguage === $sourceLanguage ) {
+ continue;
+ }
+ if ( $numbers[MessageGroupStats::TRANSLATED] === 0 ) {
+ continue;
+ }
+
+ $collection->resetForNewLanguage( $targetLanguage );
+ $collection->filter( 'ignored' );
+ $collection->filter( 'translated', false );
+ $collection->loadTranslations();
+
+ foreach ( $collection->keys() as $mkey => $title ) {
+ $handle = new MessageHandle( $title );
+ $inserts[] = array( $handle, $sourceLanguage, $collection[$mkey]->translation() );
+ }
+
+ while ( count( $inserts ) >= $this->mBatchSize ) {
+ $batch = array_splice( $inserts, 0, $this->mBatchSize );
+ $server->batchInsertTranslations( $batch );
+ }
+ }
+
+ while ( $inserts !== array() ) {
+ $batch = array_splice( $inserts, 0, $this->mBatchSize );
+ $server->batchInsertTranslations( $batch );
+ }
+
+ $server->endBatch();
+ }
+
+ protected function resetStateForFork() {
+ // Child, reseed because there is no bug in PHP:
+ // http://bugs.php.net/bug.php?id=42465
+ mt_srand( getmypid() );
+
+ // Make sure all existing connections are dead,
+ // we can't use them in forked children.
+ LBFactory::destroyInstance();
+ }
+}
+
+$maintClass = 'TTMServerBootstrap';
+require_once RUN_MAINTENANCE_IF_MAIN;
diff --git a/MLEB/Translate/scripts/yaml-tests.php b/MLEB/Translate/scripts/yaml-tests.php
new file mode 100644
index 00000000..905b8a71
--- /dev/null
+++ b/MLEB/Translate/scripts/yaml-tests.php
@@ -0,0 +1,96 @@
+<?php
+/**
+ * Script for comparing supported YAML parser implementations
+ *
+ * @author Niklas Laxström
+ *
+ * @copyright Copyright © 2010, Niklas Laxström
+ * @license GPL-2.0+
+ * @file
+ */
+
+// Standard boilerplate to define $IP
+if ( getenv( 'MW_INSTALL_PATH' ) !== false ) {
+ $IP = getenv( 'MW_INSTALL_PATH' );
+} else {
+ $dir = __DIR__;
+ $IP = "$dir/../../..";
+}
+require_once "$IP/maintenance/Maintenance.php";
+
+class YamlTests extends Maintenance {
+ public function __construct() {
+ parent::__construct();
+ $this->mDescription = 'Script for comparing supported YAML parser implementations.';
+ }
+
+ public function execute() {
+ global $wgTranslateGroupFiles, $wgTranslateYamlLibrary;
+ $documents = array();
+ $times = array();
+ $mems = array();
+ $mempeaks = array();
+
+ foreach ( array( 'syck', 'spyc', 'phpyaml' ) as $driver ) {
+ $mempeaks[$driver] = -memory_get_peak_usage( true );
+ $mems[$driver] = -memory_get_usage( true );
+ $times[$driver] = -microtime( true );
+ $wgTranslateYamlLibrary = $driver;
+ $documents[$driver] = array();
+ foreach ( $wgTranslateGroupFiles as $file ) {
+ foreach ( self::parseGroupFile( $file ) as $id => $docu ) {
+ $documents[$driver]["$file-$id"] = $docu;
+ }
+ }
+
+ $times[$driver] += microtime( true );
+ $mems[$driver] += memory_get_usage( true );
+ $mempeaks[$driver] += memory_get_peak_usage( true );
+
+ self::sortNestedArrayAssoc( $documents[$driver] );
+ file_put_contents( "yaml-test-$driver.txt", var_export( $documents[$driver], true ) );
+ file_put_contents( "yaml-output-$driver.txt", TranslateYaml::dump( $documents[$driver] ) );
+ }
+ var_dump( $times );
+ var_dump( $mems );
+ var_dump( $mempeaks );
+ }
+
+ public static function parseGroupFile( $filename ) {
+ $data = file_get_contents( $filename );
+ $documents = preg_split( "/^---$/m", $data, -1, PREG_SPLIT_NO_EMPTY );
+ $groups = array();
+ $template = false;
+ foreach ( $documents as $document ) {
+ $document = TranslateYaml::loadString( $document );
+ if ( isset( $document['TEMPLATE'] ) ) {
+ $template = $document['TEMPLATE'];
+ } else {
+ if ( !isset( $document['BASIC']['id'] ) ) {
+ trigger_error( "No path ./BASIC/id (group id not defined) " .
+ "in yaml document located in $filename" );
+ continue;
+ }
+ $groups[$document['BASIC']['id']] = $document;
+ }
+ }
+
+ foreach ( $groups as $i => $group ) {
+ $groups[$i] = TranslateYaml::mergeTemplate( $template, $group );
+ }
+
+ return $groups;
+ }
+
+ public static function sortNestedArrayAssoc( &$a ) {
+ ksort( $a );
+ foreach ( $a as &$value ) {
+ if ( is_array( $value ) ) {
+ self::sortNestedArrayAssoc( $value );
+ }
+ }
+ }
+}
+
+$maintClass = 'YamlTests';
+require_once RUN_MAINTENANCE_IF_MAIN;
diff --git a/MLEB/Translate/specials/SpecialAggregateGroups.php b/MLEB/Translate/specials/SpecialAggregateGroups.php
new file mode 100644
index 00000000..0eb463b8
--- /dev/null
+++ b/MLEB/Translate/specials/SpecialAggregateGroups.php
@@ -0,0 +1,272 @@
+<?php
+/**
+ * Contains logic for special page Special:AggregateGroups.
+ *
+ * @file
+ * @author Santhosh Thottingal
+ * @author Niklas Laxström
+ * @author Siebrand Mazeland
+ * @author Kunal Grover
+ * @copyright Copyright © 2012 Santhosh Thottingal, Niklas Laxström, Siebrand Mazeland, Kunal Grover
+ * @license GPL-2.0+
+ */
+
+class SpecialAggregateGroups extends TranslateSpecialPage {
+ protected $hasPermission = false;
+
+ function __construct() {
+ parent::__construct( 'AggregateGroups', 'translate-manage' );
+ }
+
+ public function execute( $parameters ) {
+ $this->setHeaders();
+
+ $out = $this->getOutput();
+
+ // Check permissions
+ if ( $this->getUser()->isAllowed( 'translate-manage' ) ) {
+ $this->hasPermission = true;
+ }
+
+ $groups = MessageGroups::getAllGroups();
+ uasort( $groups, array( 'MessageGroups', 'groupLabelSort' ) );
+ $aggregates = array();
+ $pages = array();
+ foreach ( $groups as $group ) {
+ if ( $group instanceof WikiPageMessageGroup ) {
+ $pages[] = $group;
+ } elseif ( $group instanceof AggregateMessageGroup ) {
+ $subgroups = TranslateMetadata::getSubgroups( $group->getId() );
+ if ( $subgroups !== false ) {
+ $aggregates[] = $group;
+ }
+ }
+ }
+
+ if ( !count( $pages ) ) {
+ // @todo Use different message
+ $out->addWikiMsg( 'tpt-list-nopages' );
+
+ return;
+ }
+
+ $this->showAggregateGroups( $aggregates, $pages );
+ }
+
+ /**
+ * @param array $aggregategroup
+ * @param array $pages
+ * @return string
+ */
+ protected function showAggregateGroup( $group, array $pages ) {
+ $out = '';
+ $id = $group->getId();
+ $label = $group->getLabel();
+ $desc = $group->getDescription( $this->getContext() );
+
+ $div = Html::openElement( 'div', array(
+ 'class' => 'mw-tpa-group',
+ 'data-groupid' => $id,
+ 'data-id' => $this->htmlIdForGroup( $group ),
+ ) );
+
+ $out .= $div;
+
+ $edit = '';
+ $remove = '';
+ $editGroup = '';
+ $select = '';
+ $addButton = '';
+
+ // Add divs for editing Aggregate Groups
+ if ( $this->hasPermission ) {
+ // Group edit and remove buttons
+ $edit = Html::element( 'span', array( 'class' => 'tp-aggregate-edit-ag-button' ) );
+ $remove = Html::element( 'span', array( 'class' => 'tp-aggregate-remove-ag-button' ) );
+
+ // Edit group div
+ $editGroupNameLabel = $this->msg( 'tpt-aggregategroup-edit-name' )->escaped();
+ $editGroupName = Html::input(
+ 'tp-agg-name',
+ $label,
+ 'text',
+ array( 'class' => 'tp-aggregategroup-edit-name', 'maxlength' => '200' )
+ );
+ $editGroupDescriptionLabel = $this->msg( 'tpt-aggregategroup-edit-description' )->escaped();
+ $editGroupDescription = Html::input(
+ 'tp-agg-desc',
+ $desc,
+ 'text',
+ array( 'class' => 'tp-aggregategroup-edit-description' )
+ );
+ $saveButton = Xml::submitButton(
+ $this->msg( 'tpt-aggregategroup-update' )->text(),
+ array( 'class' => 'tp-aggregategroup-update' )
+ );
+ $cancelButton = Xml::submitButton(
+ $this->msg( 'tpt-aggregategroup-update-cancel' )->text(),
+ array( 'class' => 'tp-aggregategroup-update-cancel' )
+ );
+ $editGroup = Html::rawElement(
+ 'div',
+ array(
+ 'class' => 'tp-edit-group hidden'
+ ),
+ $editGroupNameLabel .
+ $editGroupName . '<br />' .
+ $editGroupDescriptionLabel .
+ $editGroupDescription .
+ $saveButton .
+ $cancelButton
+ );
+
+ // Subgroups selector
+ $select = Html::input(
+ 'tp-subgroups-input',
+ '',
+ 'text',
+ array( 'class' => 'tp-group-input' )
+ );
+ $addButton = Html::element( 'input',
+ array( 'type' => 'button',
+ 'value' => $this->msg( 'tpt-aggregategroup-add' )->text(),
+ 'class' => 'tp-aggregate-add-button' )
+ );
+ }
+
+ // Aggregate Group info div
+ $groupName = Html::rawElement( 'h2',
+ array( 'class' => 'tp-name' ),
+ htmlspecialchars( $label ) . $edit . $remove
+ );
+ $groupDesc = Html::element( 'p',
+ array( 'class' => 'tp-desc' ),
+ $desc
+ );
+ $groupInfo = Html::rawElement( 'div',
+ array( 'class' => 'tp-display-group' ),
+ $groupName .
+ $groupDesc
+ );
+
+ $out .= $groupInfo;
+ $out .= $editGroup;
+ $out .= $this->listSubgroups( $group );
+ $out .= $select . $addButton;
+ $out .= "</div>";
+
+ return $out;
+ }
+
+ /**
+ * @param array $aggregates
+ * @param array $pages
+ */
+ protected function showAggregateGroups( array $aggregates, array $pages ) {
+ $out = $this->getOutput();
+ $out->addModules( 'ext.translate.special.aggregategroups' );
+
+ /**
+ * @var $group AggregateMessageGroup
+ */
+ foreach ( $aggregates as $group ) {
+ $out->addHTML( $this->showAggregateGroup( $group, $pages ) );
+ }
+
+ // Add new group if user has permissions
+ if ( $this->hasPermission ) {
+ $out->addHtml( Html::element( 'input', array(
+ 'type' => 'hidden',
+ 'id' => 'token',
+ 'value' => ApiAggregateGroups::getToken()
+ ) ) );
+ $out->addHtml( "<br/><a class='tpt-add-new-group' href='#'>" .
+ $this->msg( 'tpt-aggregategroup-add-new' )->escaped() .
+ "</a>" );
+ $newGroupNameLabel = $this->msg( 'tpt-aggregategroup-new-name' )->escaped();
+ $newGroupName = Html::element(
+ 'input',
+ array( 'class' => 'tp-aggregategroup-add-name', 'maxlength' => '200' )
+ );
+ $newGroupDescriptionLabel = $this->msg( 'tpt-aggregategroup-new-description' )->escaped();
+ $newGroupDescription = Html::element( 'input',
+ array( 'class' => 'tp-aggregategroup-add-description' )
+ );
+ $saveButton = Html::element( 'input', array(
+ 'type' => 'button',
+ 'value' => $this->msg( 'tpt-aggregategroup-save' )->text(),
+ 'id' => 'tpt-aggregategroups-save',
+ 'class' => 'tp-aggregate-save-button'
+ ) );
+ $newGroupDiv = Html::rawElement(
+ 'div',
+ array( 'class' => 'tpt-add-new-group hidden' ),
+ "$newGroupNameLabel $newGroupName<br />" .
+ "$newGroupDescriptionLabel $newGroupDescription<br />$saveButton"
+ );
+ $out->addHtml( $newGroupDiv );
+ }
+ }
+
+ /**
+ * @param AggregateMessageGroup $parent
+ * @return string
+ */
+ protected function listSubgroups( AggregateMessageGroup $parent ) {
+ $out = '';
+
+ $id = $this->htmlIdForGroup( $parent, 'mw-tpa-grouplist-' );
+ $out = Html::openElement( 'ol', array( 'id' => $id ) );
+
+ // Not calling $parent->getGroups() because it has done filtering already
+ $subgroupIds = TranslateMetadata::getSubgroups( $parent->getId() );
+
+ // Get the respective groups and sort them
+ $subgroups = MessageGroups::getGroupsById( $subgroupIds );
+ uasort( $subgroups, array( 'MessageGroups', 'groupLabelSort' ) );
+
+ // Add missing invalid group ids back, not returned by getGroupsById
+ foreach ( $subgroupIds as $id ) {
+ if ( !isset( $subgroups[$id] ) ) {
+ $subgroups[$id] = null;
+ }
+ }
+
+ foreach ( $subgroups as $id => $group ) {
+ $remove = '';
+ if ( $this->hasPermission ) {
+ $remove = Html::element( 'span',
+ array(
+ 'class' => 'tp-aggregate-remove-button',
+ 'data-groupid' => $id,
+ )
+ );
+ }
+
+ if ( $group ) {
+ $text = Linker::linkKnown( $group->getTitle() );
+ $note = MessageGroups::getPriority( $id );
+ } else {
+ $text = htmlspecialchars( $id );
+ $note = $this->msg( 'tpt-aggregategroup-invalid-group' )->escaped();
+ }
+
+ $out .= Html::rawElement( 'li', array(), "$text$remove $note" );
+ }
+ $out .= Html::closeElement( 'ol' );
+
+ return $out;
+ }
+
+ /**
+ * @param MessageGroup $group
+ * @param string $prefix
+ * @return string
+ */
+ protected function htmlIdForGroup( MessageGroup $group, $prefix = '' ) {
+ $id = sha1( $group->getId() );
+ $id = substr( $id, 5, 8 );
+
+ return $prefix . $id;
+ }
+}
diff --git a/MLEB/Translate/specials/SpecialImportTranslations.php b/MLEB/Translate/specials/SpecialImportTranslations.php
new file mode 100644
index 00000000..37f50137
--- /dev/null
+++ b/MLEB/Translate/specials/SpecialImportTranslations.php
@@ -0,0 +1,237 @@
+<?php
+/**
+ * Contains logic for special page Special:ImportTranslations.
+ *
+ * @file
+ * @author Niklas Laxström
+ * @author Siebrand Mazeland
+ * @license GPL-2.0+
+ */
+
+/**
+ * Special page to import Gettext (.po) files exported using Translate extension.
+ * Does not support generic Gettext files.
+ *
+ * @ingroup SpecialPage TranslateSpecialPage
+ */
+class SpecialImportTranslations extends TranslateSpecialPage {
+ /**
+ * Set up and fill some dependencies.
+ */
+ public function __construct() {
+ parent::__construct( 'ImportTranslations', 'translate-import' );
+ }
+
+ /**
+ * Special page entry point.
+ */
+ public function execute( $parameters ) {
+ $this->setHeaders();
+
+ // Security and validity checks
+ if ( !$this->userCanExecute( $this->getUser() ) ) {
+ $this->displayRestrictionError();
+
+ return;
+ }
+
+ if ( !$this->getRequest()->wasPosted() ) {
+ $this->outputForm();
+
+ return;
+ }
+
+ if ( !$this->getUser()->matchEditToken( $this->getRequest()->getVal( 'token' ) ) ) {
+ $this->getOutput()->addWikiMsg( 'session_fail_preview' );
+ $this->outputForm();
+
+ return;
+ }
+
+ if ( $this->getRequest()->getCheck( 'process' ) ) {
+ $data = $this->getCachedData();
+ if ( !$data ) {
+ $this->getOutput()->addWikiMsg( 'session_fail_preview' );
+ $this->outputForm();
+
+ return;
+ }
+ } else {
+ /**
+ * Proceed to loading and parsing if possible
+ * @todo: use a Status object instead?
+ */
+ $file = null;
+ $msg = $this->loadFile( $file );
+ if ( $this->checkError( $msg ) ) {
+ return;
+ }
+
+ $msg = $this->parseFile( $file );
+ if ( $this->checkError( $msg ) ) {
+ return;
+ }
+
+ $data = $msg[1];
+ $this->setCachedData( $data );
+ }
+
+ $messages = $data['MESSAGES'];
+ $group = $data['METADATA']['group'];
+ $code = $data['METADATA']['code'];
+
+ if ( !MessageGroups::exists( $group ) ) {
+ $errorWrap = "<div class='error'>\n$1\n</div>";
+ $this->getOutput()->wrapWikiMsg( $errorWrap, 'translate-import-err-stale-group' );
+
+ return;
+ }
+
+ $importer = new MessageWebImporter( $this->getTitle(), $group, $code );
+ $alldone = $importer->execute( $messages );
+
+ if ( $alldone ) {
+ $this->deleteCachedData();
+ }
+ }
+
+ /**
+ * Checks for error state from the return value of loadFile and parseFile
+ * functions. Prints the error and the form and returns true if there is an
+ * error. Returns false and does nothing if there is no error.
+ * @param $msg array
+ * @return bool
+ */
+ protected function checkError( $msg ) {
+ // Give grep a chance to find the usages:
+ // translate-import-err-dl-failed, translate-import-err-ul-failed,
+ // translate-import-err-invalid-title, translate-import-err-no-such-file,
+ // translate-import-err-stale-group, translate-import-err-no-headers,
+ // translate-import-err-warnings
+ if ( $msg[0] !== 'ok' ) {
+ $errorWrap = "<div class='error'>\n$1\n</div>";
+ $msg[0] = 'translate-import-err-' . $msg[0];
+ $this->getOutput()->wrapWikiMsg( $errorWrap, $msg );
+ $this->outputForm();
+
+ return true;
+ }
+
+ return false;
+ }
+
+ /**
+ * Constructs and outputs file input form with supported methods.
+ */
+ protected function outputForm() {
+ $this->getOutput()->addModules( 'ext.translate.special.importtranslations' );
+ TranslateUtils::addSpecialHelpLink(
+ $this->getOutput(),
+ 'Help:Extension:Translate/Off-line_translation'
+ );
+ /**
+ * Ugly but necessary form building ahead, ohoy
+ */
+ $this->getOutput()->addHTML(
+ Xml::openElement( 'form', array(
+ 'action' => $this->getTitle()->getLocalUrl(),
+ 'method' => 'post',
+ 'enctype' => 'multipart/form-data',
+ 'id' => 'mw-translate-import',
+ ) ) .
+ Html::hidden( 'token', $this->getUser()->getEditToken() ) .
+ Html::hidden( 'title', $this->getTitle()->getPrefixedText() ) .
+ Xml::inputLabel(
+ $this->msg( 'translate-import-from-local' )->text(),
+ 'upload-local', // name
+ 'mw-translate-up-local-input', // id
+ 50, // size
+ $this->getRequest()->getText( 'upload-local' ),
+ array( 'type' => 'file' )
+ ) .
+ Xml::submitButton( $this->msg( 'translate-import-load' )->text() ) .
+ Xml::closeElement( 'form' )
+ );
+ }
+
+ /**
+ * Try to get the file data from any of the supported methods.
+ * @param $filedata
+ * @return array
+ */
+ protected function loadFile( &$filedata ) {
+ $filename = $this->getRequest()->getFileTempname( 'upload-local' );
+
+ if ( !is_uploaded_file( $filename ) ) {
+ return array( 'ul-failed' );
+ }
+
+ $filedata = file_get_contents( $filename );
+
+ return array( 'ok' );
+ }
+
+ /**
+ * Try parsing file.
+ * @param $data
+ * @return array
+ */
+ protected function parseFile( $data ) {
+ /** Construct a dummy group for us...
+ * @todo Time to rethink the interface again?
+ * @var FileBasedMessageGroup $group
+ */
+ $group = MessageGroupBase::factory( array(
+ 'FILES' => array(
+ 'class' => 'GettextFFS',
+ 'CtxtAsKey' => true,
+ ),
+ 'BASIC' => array(
+ 'class' => 'FileBasedMessageGroup',
+ 'namespace' => -1,
+ )
+ ) );
+
+ $ffs = new GettextFFS( $group );
+ $data = $ffs->readFromVariable( $data );
+
+ /**
+ * Special data added by GettextFFS
+ */
+ $metadata = $data['METADATA'];
+
+ /**
+ * This should catch everything that is not a gettext file exported from us
+ */
+ if ( !isset( $metadata['code'] ) || !isset( $metadata['group'] ) ) {
+ return array( 'no-headers' );
+ }
+
+ /**
+ * And check for stupid editors that drop msgctxt which
+ * unfortunately breaks submission.
+ */
+ if ( isset( $metadata['warnings'] ) ) {
+ return array( 'warnings', $this->getLanguage()->commaList( $metadata['warnings'] ) );
+ }
+
+ return array( 'ok', $data );
+ }
+
+ protected function setCachedData( $data ) {
+ $key = wfMemcKey( 'translate', 'webimport', $this->getUser()->getId() );
+ wfGetCache( CACHE_DB )->set( $key, $data, 60 * 30 );
+ }
+
+ protected function getCachedData() {
+ $key = wfMemcKey( 'translate', 'webimport', $this->getUser()->getId() );
+
+ return wfGetCache( CACHE_DB )->get( $key );
+ }
+
+ protected function deleteCachedData() {
+ $key = wfMemcKey( 'translate', 'webimport', $this->getUser()->getId() );
+
+ return wfGetCache( CACHE_DB )->delete( $key );
+ }
+}
diff --git a/MLEB/Translate/specials/SpecialLanguageStats.php b/MLEB/Translate/specials/SpecialLanguageStats.php
new file mode 100644
index 00000000..a6901655
--- /dev/null
+++ b/MLEB/Translate/specials/SpecialLanguageStats.php
@@ -0,0 +1,532 @@
+<?php
+/**
+ * Contains logic for special page Special:LanguageStats.
+ *
+ * @file
+ * @author Siebrand Mazeland
+ * @author Niklas Laxström
+ * @copyright Copyright © 2008-2013 Siebrand Mazeland, Niklas Laxström
+ * @license GPL-2.0+
+ */
+
+/**
+ * Implements includable special page Special:LanguageStats which provides
+ * translation statistics for all defined message groups.
+ *
+ * Loosely based on the statistics code in phase3/maintenance/language
+ *
+ * Use {{Special:LanguageStats/nl/1}} to show for 'nl' and suppress completely
+ * translated groups.
+ *
+ * @ingroup SpecialPage TranslateSpecialPage Stats
+ */
+class SpecialLanguageStats extends TranslateSpecialPage {
+ /**
+ * @var StatsTable
+ */
+ protected $table;
+
+ /**
+ * @var Array
+ */
+ protected $targetValueName = array( 'code', 'language' );
+
+ /**
+ * Most of the displayed numbers added together at the bottom of the table.
+ */
+ protected $totals;
+
+ /**
+ * How long spend time calculating missing numbers, before
+ * bailing out.
+ * @var int
+ */
+ protected $timelimit = 8;
+
+ /**
+ * Flag to set if nothing to show.
+ * @var bool
+ */
+ protected $nothing = false;
+
+ /**
+ * Flag to set if not all numbers are available.
+ * @var bool
+ */
+ protected $incomplete = false;
+
+ /**
+ * Whether to hide rows which are fully translated.
+ * @var bool
+ */
+ protected $noComplete = true;
+
+ /**
+ * Whether to hide rows which are fully untranslated.
+ * @var bool
+ */
+ protected $noEmpty = false;
+
+ /**
+ * The target of stats, language code or group id.
+ */
+ protected $target;
+
+ /**
+ * Whether to regenerate stats. Activated by action=purge in query params.
+ * @var bool
+ */
+ protected $purge;
+
+ /**
+ * Helper variable to avoid overcounting message groups that appear
+ * multiple times in the list with different parents. Aggregate message
+ * group stats are always excluded from totals.
+ *
+ * @var array
+ */
+ protected $statsCounted = array();
+
+ /**
+ * @var array
+ */
+ protected $states;
+
+ public function __construct() {
+ parent::__construct( 'LanguageStats' );
+
+ $this->target = $this->getLanguage()->getCode();
+ $this->totals = MessageGroupStats::getEmptyStats();
+ }
+
+ public function isIncludable() {
+ return true;
+ }
+
+ function execute( $par ) {
+ $request = $this->getRequest();
+
+ $this->purge = $request->getVal( 'action' ) === 'purge';
+ $this->table = new StatsTable();
+
+ $this->setHeaders();
+ $this->outputHeader();
+
+ $out = $this->getOutput();
+
+ $out->addModules( 'ext.translate.special.languagestats' );
+ $out->addModuleStyles( 'ext.translate.messagetable' );
+
+ $params = explode( '/', $par );
+
+ if ( isset( $params[0] ) && trim( $params[0] ) ) {
+ $this->target = $params[0];
+ }
+
+ if ( isset( $params[1] ) ) {
+ $this->noComplete = (bool)$params[1];
+ }
+
+ if ( isset( $params[2] ) ) {
+ $this->noEmpty = (bool)$params[2];
+ }
+
+ // Whether the form has been submitted, only relevant if not including
+ $submitted = !$this->including() && $request->getVal( 'x' ) === 'D';
+
+ // Default booleans to false if the form was submitted
+ foreach ( $this->targetValueName as $key ) {
+ $this->target = $request->getVal( $key, $this->target );
+ }
+ $this->noComplete = $request->getBool(
+ 'suppresscomplete',
+ $this->noComplete && !$submitted
+ );
+ $this->noEmpty = $request->getBool( 'suppressempty', $this->noEmpty && !$submitted );
+
+ if ( !$this->including() ) {
+ TranslateUtils::addSpecialHelpLink(
+ $out,
+ 'Help:Extension:Translate/Statistics_and_reporting'
+ );
+ $out->addHTML( $this->getForm() );
+ }
+
+ if ( $this->isValidValue( $this->target ) ) {
+ $this->outputIntroduction();
+ $output = $this->getTable();
+ if ( $this->incomplete ) {
+ $out->wrapWikiMsg(
+ "<div class='error'>$1</div>",
+ 'translate-langstats-incomplete'
+ );
+ }
+ if ( $this->nothing ) {
+ $out->wrapWikiMsg( "<div class='error'>$1</div>", 'translate-mgs-nothing' );
+ }
+ $out->addHTML( $output );
+ } elseif ( $submitted ) {
+ $this->invalidTarget();
+ }
+ }
+
+ /**
+ * Return the list of allowed values for target here.
+ * @param $value
+ * @return array
+ */
+ protected function isValidValue( $value ) {
+ $langs = Language::fetchLanguageNames();
+
+ return isset( $langs[$value] );
+ }
+
+ /// Called when the target is unknown.
+ protected function invalidTarget() {
+ $this->getOutput()->wrapWikiMsg(
+ "<div class='error'>$1</div>",
+ 'translate-page-no-such-language'
+ );
+ }
+
+ /**
+ * HTML for the top form.
+ * @return \string HTML
+ * @todo duplicated code
+ */
+ protected function getForm() {
+ global $wgScript;
+
+ $out = Html::openElement( 'div' );
+ $out .= Html::openElement( 'form', array( 'method' => 'get', 'action' => $wgScript ) );
+ $out .= Html::hidden( 'title', $this->getTitle()->getPrefixedText() );
+ $out .= Html::hidden( 'x', 'D' ); // To detect submission
+ $out .= Html::openElement( 'fieldset' );
+ $out .= Html::element(
+ 'legend',
+ array(),
+ $this->msg( 'translate-language-code' )->text()
+ );
+ $out .= Html::openElement( 'table' );
+
+ $out .= Html::openElement( 'tr' );
+ $out .= Html::openElement( 'td', array( 'class' => 'mw-label' ) );
+ $out .= Xml::label(
+ $this->msg( 'translate-language-code-field-name' )->text(),
+ 'language'
+ );
+ $out .= Html::closeElement( 'td' );
+ $out .= Html::openElement( 'td', array( 'class' => 'mw-input' ) );
+ $out .= Xml::input( 'language', 10, $this->target, array( 'id' => 'language' ) );
+ $out .= Html::closeElement( 'td' );
+ $out .= Html::closeElement( 'tr' );
+
+ $out .= Html::openElement( 'tr' );
+ $out .= Html::openElement( 'td', array( 'colspan' => 2 ) );
+ $out .= Xml::checkLabel(
+ $this->msg( 'translate-suppress-complete' )->text(),
+ 'suppresscomplete',
+ 'suppresscomplete',
+ $this->noComplete
+ );
+ $out .= Html::closeElement( 'td' );
+ $out .= Html::closeElement( 'tr' );
+
+ $out .= Html::openElement( 'tr' );
+ $out .= Html::openElement( 'td', array( 'colspan' => 2 ) );
+ $out .= Xml::checkLabel(
+ $this->msg( 'translate-ls-noempty' )->text(),
+ 'suppressempty',
+ 'suppressempty',
+ $this->noEmpty
+ );
+ $out .= Html::closeElement( 'td' );
+ $out .= Html::closeElement( 'tr' );
+
+ $out .= Html::openElement( 'tr' );
+ $out .= Html::openElement( 'td', array( 'class' => 'mw-input', 'colspan' => 2 ) );
+ $out .= Xml::submitButton( $this->msg( 'translate-ls-submit' )->text() );
+ $out .= Html::closeElement( 'td' );
+ $out .= Html::closeElement( 'tr' );
+
+ $out .= Html::closeElement( 'table' );
+ $out .= Html::closeElement( 'fieldset' );
+ /* Since these pages are in the tabgroup with Special:Translate,
+ * it makes sense to retain the selected group/language parameter
+ * on post requests even when not relevant to the current page. */
+ $val = $this->getRequest()->getVal( 'group' );
+ if ( $val !== null ) {
+ $out .= Html::hidden( 'group', $val );
+ }
+ $out .= Html::closeElement( 'form' );
+ $out .= Html::closeElement( 'div' );
+
+ return $out;
+ }
+
+ /**
+ * Output something helpful to guide the confused user.
+ */
+ protected function outputIntroduction() {
+ $languageName = TranslateUtils::getLanguageName(
+ $this->target,
+ $this->getLanguage()->getCode()
+ );
+
+ $rcInLangLink = Linker::link(
+ SpecialPage::getTitleFor( 'Translate', '!recent' ),
+ $this->msg( 'languagestats-recenttranslations' )->escaped(),
+ array(),
+ array(
+ 'action' => 'proofread',
+ 'language' => $this->target
+ )
+ );
+
+ $out = $this->msg( 'languagestats-stats-for', $languageName )->rawParams( $rcInLangLink )
+ ->parseAsBlock();
+ $this->getOutput()->addHTML( $out );
+ }
+
+ /**
+ * If workflow states are configured, adds a workflow states column
+ */
+ function addWorkflowStatesColumn() {
+ global $wgTranslateWorkflowStates;
+
+ if ( $wgTranslateWorkflowStates ) {
+ $this->states = $this->getWorkflowStates();
+
+ // An array where keys are state names and values are numbers
+ $this->table->addExtraColumn( $this->msg( 'translate-stats-workflow' ) );
+ }
+
+ return;
+ }
+
+ protected function getWorkflowStateValue( $target ) {
+ return isset( $this->states[$target] ) ? $this->states[$target] : '';
+ }
+
+ /**
+ * If workflow states are configured, adds a cell with the workflow state to the row,
+ * @param String $target Whose workflow state do we want, such as language code or group id.
+ * @param String $state The workflow state id
+ * @return string Html
+ */
+ protected function getWorkflowStateCell( $target, $state ) {
+ // This will be set by addWorkflowStatesColumn if needed
+ if ( !isset( $this->states ) ) {
+ return '';
+ }
+
+ if ( $state === '' ) {
+ return "\n\t\t" . $this->table->element( '', '', -1 );
+ }
+
+ if ( $this instanceof SpecialMessageGroupStats ) {
+ // Same for every language
+ $group = MessageGroups::getGroup( $this->target );
+ $stateConfig = $group->getMessageGroupStates()->getStates();
+ } else {
+ // The message group for this row
+ $group = MessageGroups::getGroup( $target );
+ $stateConfig = $group->getMessageGroupStates()->getStates();
+ }
+
+ $sortValue = -1;
+ $stateColor = '';
+ if ( isset( $stateConfig[$state] ) ) {
+ $sortIndex = array_flip( array_keys( $stateConfig ) );
+ $sortValue = $sortIndex[$state] + 1;
+
+ if ( is_string( $stateConfig[$state] ) ) {
+ // BC for old configuration format
+ $stateColor = $stateConfig[$state];
+ } elseif ( isset( $stateConfig[$state]['color'] ) ) {
+ $stateColor = $stateConfig[$state]['color'];
+ }
+ }
+
+ $stateMessage = $this->msg( "translate-workflow-state-$state" );
+ $stateText = $stateMessage->isBlank() ? $state : $stateMessage->text();
+
+ return "\n\t\t" . $this->table->element(
+ $stateText,
+ $stateColor,
+ $sortValue
+ );
+ }
+
+ /**
+ * Returns the table itself.
+ * @return \string HTML
+ */
+ function getTable() {
+ $table = $this->table;
+
+ $this->addWorkflowStatesColumn();
+ $out = '';
+
+ MessageGroupStats::setTimeLimit( $this->timelimit );
+ $cache = MessageGroupStats::forLanguage( $this->target );
+
+ if ( $this->purge ) {
+ MessageGroupStats::clearLanguage( $this->target );
+ }
+
+ $structure = MessageGroups::getGroupStructure();
+ foreach ( $structure as $item ) {
+ $out .= $this->makeGroupGroup( $item, $cache );
+ }
+
+ if ( $out ) {
+ $table->setMainColumnHeader( $this->msg( 'translate-ls-column-group' ) );
+ $out = $table->createHeader() . "\n" . $out;
+ $out .= Html::closeElement( 'tbody' );
+
+ $out .= Html::openElement( 'tfoot' );
+ $out .= $table->makeTotalRow(
+ $this->msg( 'translate-languagestats-overall' ),
+ $this->totals
+ );
+ $out .= Html::closeElement( 'tfoot' );
+
+ $out .= Html::closeElement( 'table' );
+
+ return $out;
+ } else {
+ $this->nothing = true;
+
+ return '';
+ }
+
+ /// @todo Allow extra message here, once total translated volume goes
+ /// over a certain percentage? (former live hack at translatewiki)
+ /// if ( $this->totals['2'] && ( $this->totals['1'] / $this->totals['2'] ) > 0.95 ) {
+ /// $out .= $this->msg( 'translate-somekey' );
+ /// }
+ }
+
+ /**
+ * Creates a html table row for given (top-level) message group.
+ * If $item is an array, meaning that the first group is an
+ * AggregateMessageGroup and the latter are its children, it will recurse
+ * and create rows for them too.
+ * @param $item Array|MessageGroup
+ * @param $cache Array Cache as returned by MessageGroupStats::forLanguage
+ * @param $parent MessageGroup (do not use, used internally only)
+ * @return string
+ */
+ protected function makeGroupGroup( $item, array $cache, MessageGroup $parent = null ) {
+ if ( !is_array( $item ) ) {
+ return $this->makeGroupRow( $item, $cache, $parent );
+ }
+
+ // The first group in the array is the parent AggregateMessageGroup
+ $out = '';
+ $top = array_shift( $item );
+ $out .= $this->makeGroupRow( $top, $cache, $parent );
+
+ // Rest are children
+ foreach ( $item as $subgroup ) {
+ $out .= $this->makeGroupGroup( $subgroup, $cache, $top );
+ }
+
+ return $out;
+ }
+
+ /**
+ * Actually creates the table for single message group, unless it
+ * is blacklisted or hidden by filters.
+ * @param MessageGroup $group
+ * @param array $cache
+ * @param MessageGroup $parent
+ * @return string
+ */
+ protected function makeGroupRow( MessageGroup $group, array $cache,
+ MessageGroup $parent = null
+ ) {
+ $groupId = $group->getId();
+
+ if ( $this->table->isBlacklisted( $groupId, $this->target ) !== null ) {
+ return '';
+ }
+
+ $stats = $cache[$groupId];
+ $total = $stats[MessageGroupStats::TOTAL];
+ $translated = $stats[MessageGroupStats::TRANSLATED];
+ $fuzzy = $stats[MessageGroupStats::FUZZY];
+
+ // Quick checks to see whether filters apply
+ if ( $this->noComplete && $fuzzy === 0 && $translated === $total ) {
+ return '';
+ }
+ if ( $this->noEmpty && $translated === 0 && $fuzzy === 0 ) {
+ return '';
+ }
+
+ // Calculation of summary row values
+ if ( !$group instanceof AggregateMessageGroup ) {
+ if ( !isset( $this->statsCounted[$groupId] ) ) {
+ $this->totals = MessageGroupStats::multiAdd( $this->totals, $stats );
+ $this->statsCounted[$groupId] = true;
+ }
+ }
+
+ $state = $this->getWorkflowStateValue( $groupId );
+
+ $params = $stats;
+ $params[] = $state;
+ $params[] = $groupId;
+ $params[] = $this->getLanguage()->getCode();
+ $params[] = $this->target;
+ $cachekey = wfMemcKey( __METHOD__, implode( '-', $params ) );
+ $cacheval = wfGetCache( CACHE_ANYTHING )->get( $cachekey );
+ if ( !$this->purge && is_string( $cacheval ) ) {
+ return $cacheval;
+ }
+
+ $extra = array();
+ if ( $total === null ) {
+ $this->incomplete = true;
+ } elseif ( $translated === $total ) {
+ $extra = array( 'action' => 'proofread' );
+ }
+
+ $rowParams = array();
+ $rowParams['data-groupid'] = $groupId;
+ $rowParams['class'] = get_class( $group );
+ if ( $parent ) {
+ $rowParams['data-parentgroup'] = $parent->getId();
+ }
+
+ $out = "\t" . Html::openElement( 'tr', $rowParams );
+ $out .= "\n\t\t" . Html::rawElement( 'td', array(),
+ $this->table->makeGroupLink( $group, $this->target, $extra ) );
+ $out .= $this->table->makeNumberColumns( $stats );
+ $out .= $this->getWorkflowStateCell( $groupId, $state );
+ $out .= "\n\t" . Html::closeElement( 'tr' ) . "\n";
+
+ wfGetCache( CACHE_ANYTHING )->set( $cachekey, $out, 3600 * 24 );
+
+ return $out;
+ }
+
+ protected function getWorkflowStates( $field = 'tgr_group', $filter = 'tgr_lang' ) {
+ $db = wfGetDB( DB_SLAVE );
+ $res = $db->select(
+ 'translate_groupreviews',
+ array( 'tgr_state', $field ),
+ array( $filter => $this->target ),
+ __METHOD__
+ );
+
+ $states = array();
+ foreach ( $res as $row ) {
+ $states[$row->$field] = $row->tgr_state;
+ }
+
+ return $states;
+ }
+}
diff --git a/MLEB/Translate/specials/SpecialMagic.php b/MLEB/Translate/specials/SpecialMagic.php
new file mode 100644
index 00000000..b63114f1
--- /dev/null
+++ b/MLEB/Translate/specials/SpecialMagic.php
@@ -0,0 +1,236 @@
+<?php
+/**
+ * Contains logic for special page Special:AdvancedTranslate
+ *
+ * @file
+ * @author Niklas Laxström
+ * @author Siebrand Mazeland
+ * @copyright Copyright © 2008-2013, Niklas Laxström, Siebrand Mazeland
+ * @license GPL-2.0+
+ */
+
+/**
+ * This special page helps with the translations of %MediaWiki features that are
+ * not in the main messages array (special page aliases, magic words, namespace names).
+ *
+ * @ingroup SpecialPage TranslateSpecialPage
+ */
+class SpecialMagic extends TranslateSpecialPage {
+ const MODULE_MAGIC = 'words';
+ const MODULE_SPECIAL = 'special';
+ const MODULE_NAMESPACE = 'namespace';
+
+ /**
+ * List of supported modules
+ */
+ private $aModules = array(
+ self::MODULE_SPECIAL,
+ self::MODULE_NAMESPACE,
+ self::MODULE_MAGIC
+ );
+
+ /**
+ * Page options
+ */
+ private $options = array();
+ private $defaults = array();
+ private $nondefaults = array();
+
+ public function __construct() {
+ parent::__construct( 'Magic' );
+ }
+
+ /**
+ * @see SpecialPage::getDescription
+ *
+ * @return string
+ */
+ function getDescription() {
+ return $this->msg( 'translate-magic-pagename' )->text();
+ }
+
+ /**
+ * Returns HTML5 output of the form
+ * GLOBALS: $wgScript
+ * @return string
+ */
+ protected function getForm() {
+ global $wgScript;
+
+ $form = Xml::tags( 'form',
+ array(
+ 'action' => $wgScript,
+ 'method' => 'get'
+ ),
+
+ '<table><tr><td>' .
+ $this->msg( 'translate-page-language' )->escaped() .
+ '</td><td>' .
+ TranslateUtils::languageSelector(
+ $this->getLanguage()->getCode(),
+ $this->options['language']
+ ) .
+ '</td></tr><tr><td>' .
+ $this->msg( 'translate-magic-module' )->escaped() .
+ '</td><td>' .
+ $this->moduleSelector( $this->options['module'] ) .
+ '</td></tr><tr><td colspan="2">' .
+ Xml::submitButton( $this->msg( 'translate-magic-submit' )->text() ) . ' ' .
+ Xml::submitButton(
+ $this->msg( 'translate-magic-cm-export' )->text(),
+ array( 'name' => 'export' )
+ ) .
+ '</td></tr></table>' .
+ Html::hidden( 'title', $this->getTitle()->getPrefixedText() )
+ );
+
+ return $form;
+ }
+
+ /**
+ * Helper function get module selector.
+ *
+ * @param string $selectedId Which value should be selected by default
+ * @return string HTML5-compatible select-element.
+ */
+ protected function moduleSelector( $selectedId ) {
+ // Give grep a chance to find the usages:
+ // translate-magic-words, translate-magic-special, translate-magic-namespace
+ $selector = new XmlSelect( 'module', 'module', $selectedId );
+ foreach ( $this->aModules as $code ) {
+ $selector->addOption( $this->msg( 'translate-magic-' . $code )->text(), $code );
+ }
+
+ return $selector->getHTML();
+ }
+
+ protected function setup( $parameters ) {
+ $defaults = array(
+ /* str */'module' => '',
+ /* str */'language' => $this->getUser()->getOption( 'language' ),
+ /* bool */'export' => false,
+ /* bool */'savetodb' => false,
+ );
+
+ /**
+ * Place where all non default variables will end.
+ */
+ $nondefaults = array();
+
+ /**
+ * Temporary store possible values parsed from parameters.
+ */
+ $options = $defaults;
+ $request = $this->getRequest();
+ foreach ( $options as $v => $t ) {
+ if ( is_bool( $t ) ) {
+ $r = $request->getBool( $v, $options[$v] );
+ } elseif ( is_int( $t ) ) {
+ $r = $request->getInt( $v, $options[$v] );
+ } elseif ( is_string( $t ) ) {
+ $r = $request->getText( $v, $options[$v] );
+ }
+
+ if ( !isset( $r ) ) {
+ throw new MWException( '$r was not set' );
+ }
+
+ wfAppendToArrayIfNotDefault( $v, $r, $defaults, $nondefaults );
+ }
+
+ $this->defaults = $defaults;
+ $this->nondefaults = $nondefaults;
+ $this->options = $nondefaults + $defaults;
+ }
+
+ /**
+ * The special page running code
+ */
+ public function execute( $parameters ) {
+ $this->setup( $parameters );
+ $this->setHeaders();
+
+ $out = $this->getOutput();
+ TranslateUtils::addSpecialHelpLink(
+ $out,
+ '//translatewiki.net/wiki/FAQ#Special:AdvancedTranslate', true
+ );
+
+ $out->addHTML( $this->getForm() );
+
+ if ( !$this->options['module'] ) {
+ return;
+ }
+ switch ( $this->options['module'] ) {
+ case 'alias':
+ case self::MODULE_SPECIAL:
+ $o = new SpecialPageAliasesCM( $this->options['language'] );
+ break;
+ case self::MODULE_MAGIC:
+ $o = new MagicWordsCM( $this->options['language'] );
+ break;
+ case self::MODULE_NAMESPACE:
+ $o = new NamespaceCM( $this->options['language'] );
+ break;
+ default:
+ throw new MWException( "Unknown module {$this->options['module']}" );
+ }
+
+ $request = $this->getRequest();
+ if ( $request->wasPosted() && $this->options['savetodb'] ) {
+ if ( !$this->getUser()->isAllowed( 'translate' ) ) {
+ throw new PermissionsError( 'translate' );
+ }
+
+ $errors = array();
+ $o->loadFromRequest( $request );
+ $o->validate( $errors );
+ if ( $errors ) {
+ $out->wrapWikiMsg( '<div class="error">$1</div>',
+ 'translate-magic-notsaved' );
+ $this->outputErrors( $errors );
+ $out->addHTML( $o->output() );
+
+ return;
+ } else {
+ $o->save( $request );
+ $out->wrapWikiMsg( '<strong>$1</strong>', 'translate-magic-saved' );
+ $out->addHTML( $o->output() );
+
+ return;
+ }
+ }
+
+ if ( $this->options['export'] ) {
+ $output = $o->export();
+ if ( $output === '' ) {
+ $out->addWikiMsg( 'translate-magic-nothing-to-export' );
+
+ return;
+ }
+ $result = Xml::element( 'textarea', array( 'rows' => '30' ), $output );
+ $out->addHTML( $result );
+
+ return;
+ }
+
+ $out->addWikiMsg( 'translate-magic-help' );
+ $errors = array();
+ $o->validate( $errors );
+ if ( $errors ) {
+ $this->outputErrors( $errors );
+ }
+ $out->addHTML( $o->output() );
+ }
+
+ protected function outputErrors( $errors ) {
+ $count = $this->getLanguage()->formatNum( count( $errors ) );
+ $out = $this->getOutput();
+ $out->addWikiMsg( 'translate-magic-errors', $count );
+ $out->addHTML( '<ol>' );
+ foreach ( $errors as $error ) {
+ $out->addHTML( "<li>$error</li>" );
+ }
+ $out->addHTML( '</ol>' );
+ }
+}
diff --git a/MLEB/Translate/specials/SpecialManageGroups.php b/MLEB/Translate/specials/SpecialManageGroups.php
new file mode 100644
index 00000000..0d80dfee
--- /dev/null
+++ b/MLEB/Translate/specials/SpecialManageGroups.php
@@ -0,0 +1,364 @@
+<?php
+/**
+ * Implements special page for group management, where file based message
+ * groups are be managed.
+ *
+ * @file
+ * @author Niklas Laxström
+ * @author Siebrand Mazeland
+ * @copyright Copyright © 2009-2013, Niklas Laxström, Siebrand Mazeland
+ * @license GPL-2.0+
+ */
+
+/**
+ * Class for special page Special:ManageMessageGroups. On this special page
+ * file based message groups can be managed (FileBasedMessageGroup). This page
+ * allows updating of the file cache, import and fuzzy for source language
+ * messages, as well as import/update of messages in other languages.
+ *
+ * @ingroup SpecialPage TranslateSpecialPage
+ * Rewritten in 2012-04-23
+ */
+class SpecialManageGroups extends TranslateSpecialPage {
+ const CHANGEFILE = 'translate_messagechanges.cdb';
+ const RIGHT = 'translate-manage';
+
+ /**
+ * @var DifferenceEngine
+ */
+ protected $diff;
+
+ public function __construct() {
+ // Anyone is allowed to see, but actions are restricted
+ parent::__construct( 'ManageMessageGroups' );
+ }
+
+ protected function getGroupName() {
+ return 'wiki';
+ }
+
+ public function execute( $par ) {
+ $this->setHeaders();
+ $out = $this->getOutput();
+ $out->addModules( 'ext.translate.special.managegroups' );
+ TranslateUtils::addSpecialHelpLink( $out, 'Help:Extension:Translate/Group_management' );
+
+ $changefile = TranslateUtils::cacheFile( self::CHANGEFILE );
+ if ( !file_exists( $changefile ) ) {
+ // @todo Tell them when changes was last checked/process
+ // or how to initiate recheck.
+ $out->addWikiMsg( 'translate-smg-nochanges' );
+
+ return;
+ }
+
+ $user = $this->getUser();
+ $allowed = $user->isAllowed( self::RIGHT );
+
+ $req = $this->getRequest();
+ if ( !$req->wasPosted() ) {
+ $this->showChanges( $allowed, $this->getLimit() );
+
+ return;
+ }
+
+ $token = $req->getVal( 'token' );
+ if ( !$allowed || !$user->matchEditToken( $token ) ) {
+ throw new PermissionsError( self::RIGHT );
+ }
+
+ $this->processSubmit();
+ }
+
+ /**
+ * How many changes can be shown per page.
+ * @return int
+ */
+ protected function getLimit() {
+ $limits = array(
+ 1000, // Default max
+ ini_get( 'max_input_vars' ),
+ ini_get( 'suhosin.post.max_vars' ),
+ ini_get( 'suhosin.request.max_vars' )
+ );
+ // Ignore things not set
+ $limits = array_filter( $limits );
+ return min( $limits );
+ }
+
+ protected function getLegend() {
+ $text = $this->diff->addHeader(
+ '',
+ $this->msg( 'translate-smg-left' )->escaped(),
+ $this->msg( 'translate-smg-right' )->escaped()
+ );
+
+ return Html::rawElement( 'div', array( 'class' => "mw-translate-smg-header" ), $text );
+ }
+
+ protected function showChanges( $allowed, $limit ) {
+ global $wgContLang;
+
+ $diff = new DifferenceEngine( $this->getContext() );
+ $diff->showDiffStyle();
+ $diff->setReducedLineNumbers();
+ $this->diff = $diff;
+
+ $out = $this->getOutput();
+ $out->addHtml(
+ '' .
+ Html::openElement( 'form', array( 'method' => 'post' ) ) .
+ Html::hidden( 'title', $this->getTitle()->getPrefixedText() ) .
+ Html::hidden( 'token', $this->getUser()->getEditToken() ) .
+ $this->getLegend()
+ );
+
+ // The above count as two
+ $limit = $limit - 2;
+
+ $changefile = TranslateUtils::cacheFile( self::CHANGEFILE );
+ $reader = CdbReader::open( $changefile );
+ $groups = unserialize( $reader->get( '#keys' ) );
+ foreach ( $groups as $id ) {
+ $group = MessageGroups::getGroup( $id );
+ if ( !$group ) {
+ continue;
+ }
+
+ $changes = unserialize( $reader->get( $id ) );
+ $out->addHtml( Html::element( 'h2', array(), $group->getLabel() ) );
+
+ // Reduce page existance queries to one per group
+ $lb = new LinkBatch();
+ $ns = $group->getNamespace();
+ $isCap = MWNamespace::isCapitalized( $ns );
+ foreach ( $changes as $code => $subchanges ) {
+ foreach ( $subchanges as $messages ) {
+ foreach ( $messages as $params ) {
+ // Constructing title objects is way slower
+ $key = $params['key'];
+ if ( $isCap ) {
+ $key = $wgContLang->ucfirst( $key );
+ }
+ $lb->add( $ns, "$key/$code" );
+ }
+ }
+ }
+ $lb->execute();
+
+ foreach ( $changes as $code => $subchanges ) {
+ foreach ( $subchanges as $type => $messages ) {
+ foreach ( $messages as $params ) {
+ $change = $this->formatChange( $group, $code, $type, $params, $limit );
+ $out->addHtml( $change );
+
+ if ( $limit <= 0 ) {
+ // We need to restrict the changes per page per form submission
+ // limitations as well as performance.
+ $out->wrapWikiMsg( "<div class=warning>\n$1\n</div>", 'translate-smg-more' );
+ break 4;
+ }
+ }
+ }
+ }
+ }
+
+ $attribs = array( 'type' => 'submit', 'class' => 'mw-translate-smg-submit' );
+ if ( !$allowed ) {
+ $attribs['disabled'] = 'disabled';
+ $attribs['title'] = $this->msg( 'translate-smg-notallowed' )->text();
+ }
+ $button = Html::element( 'button', $attribs, $this->msg( 'translate-smg-submit' )->text() );
+ $out->addHtml( $button );
+ $out->addHtml( Html::closeElement( 'form' ) );
+ }
+
+ /**
+ * @param MessageGroup $group
+ * @param string $code
+ * @param string $type
+ * @param array $params
+ * @param int $limit
+ * @return string HTML
+ */
+ protected function formatChange( MessageGroup $group, $code, $type, $params, &$limit ) {
+ $key = $params['key'];
+ $title = Title::makeTitleSafe( $group->getNamespace(), "$key/$code" );
+ $id = self::changeId( $group->getId(), $code, $type, $key );
+
+ if ( $title && $title->exists() && $type === 'addition' ) {
+ // The message has for some reason dropped out from cache
+ // or perhaps it is being reused. In any case treat it
+ // as a change for display, so the admin can see if
+ // action is needed and let the message be processed.
+ // Otherwise it will end up in the postponed category
+ // forever and will prevent rebuilding the cache, which
+ // leads to many other annoying problems.
+ $type = 'change';
+ } elseif ( $title && !$title->exists() && ( $type === 'deletion' || $type === 'change' ) ) {
+ return '';
+ }
+
+ $text = '';
+ if ( $type === 'deletion' ) {
+ $wiki = ContentHandler::getContentText( Revision::newFromTitle( $title )->getContent() );
+ $oldContent = ContentHandler::makeContent( $wiki, $title );
+ $newContent = ContentHandler::makeContent( '', $title );
+
+ $this->diff->setContent( $oldContent, $newContent );
+
+ $text = $this->diff->getDiff( Linker::link( $title ), '' );
+ } elseif ( $type === 'addition' ) {
+ $oldContent = ContentHandler::makeContent( '', $title );
+ $newContent = ContentHandler::makeContent( $params['content'], $title );
+
+ $this->diff->setContent( $oldContent, $newContent );
+
+ $text = $this->diff->getDiff( '', Linker::link( $title ) );
+ } elseif ( $type === 'change' ) {
+ $wiki = ContentHandler::getContentText( Revision::newFromTitle( $title )->getContent() );
+
+ $handle = new MessageHandle( $title );
+ if ( $handle->isFuzzy() ) {
+ $wiki = '!!FUZZY!!' . str_replace( TRANSLATE_FUZZY, '', $wiki );
+ }
+
+ $label = $this->msg( 'translate-manage-action-ignore' )->text();
+ $actions = Xml::checkLabel( $label, "i/$id", "i/$id" );
+ $limit--;
+
+ if ( $group->getSourceLanguage() === $code ) {
+ $label = $this->msg( 'translate-manage-action-fuzzy' )->text();
+ $actions .= ' ' . Xml::checkLabel( $label, "f/$id", "f/$id" );
+ $limit--;
+ }
+
+ $oldContent = ContentHandler::makeContent( $wiki, $title );
+ $newContent = ContentHandler::makeContent( $params['content'], $title );
+
+ $this->diff->setContent( $oldContent, $newContent );
+ $text .= $this->diff->getDiff( Linker::link( $title ), $actions );
+ }
+
+ $hidden = Html::hidden( $id, 1 );
+ $limit--;
+ $text .= $hidden;
+ $classes = "mw-translate-smg-change smg-change-$type";
+
+ if ( $limit < 0 ) {
+ // Don't add if one of the fields might get dropped of at submission
+ return '';
+ }
+
+ return Html::rawElement( 'div', array( 'class' => $classes ), $text );
+ }
+
+ protected function processSubmit() {
+ $req = $this->getRequest();
+ $out = $this->getOutput();
+
+ $jobs = array();
+ $jobs[] = MessageIndexRebuildJob::newJob();
+
+ $changefile = TranslateUtils::cacheFile( self::CHANGEFILE );
+ $reader = CdbReader::open( $changefile );
+ $groups = unserialize( $reader->get( '#keys' ) );
+
+ $postponed = array();
+
+ foreach ( $groups as $groupId ) {
+ $group = MessageGroups::getGroup( $groupId );
+ $changes = unserialize( $reader->get( $groupId ) );
+
+ foreach ( $changes as $code => $subchanges ) {
+ foreach ( $subchanges as $type => $messages ) {
+ foreach ( $messages as $index => $params ) {
+ $id = self::changeId( $groupId, $code, $type, $params['key'] );
+ if ( $req->getVal( $id ) === null ) {
+ // We probably hit the limit with number of post parameters.
+ $postponed[$groupId][$code][$type][$index] = $params;
+ continue;
+ }
+
+ if ( $type === 'deletion' || $req->getCheck( "i/$id" ) ) {
+ continue;
+ }
+
+ $fuzzy = $req->getCheck( "f/$id" ) ? 'fuzzy' : false;
+ $key = $params['key'];
+ $title = Title::makeTitleSafe( $group->getNamespace(), "$key/$code" );
+ $jobs[] = MessageUpdateJob::newJob( $title, $params['content'], $fuzzy );
+ }
+ }
+
+ if ( !isset( $postponed[$groupId][$code] ) ) {
+ $cache = new MessageGroupCache( $groupId, $code );
+ $cache->create();
+ }
+ }
+ }
+
+ JobQueueGroup::singleton()->push( $jobs );
+
+ $reader->close();
+ rename( $changefile, $changefile . '-' . wfTimestamp() );
+
+ if ( count( $postponed ) ) {
+ $changefile = TranslateUtils::cacheFile( self::CHANGEFILE );
+ $writer = CdbWriter::open( $changefile );
+ $keys = array_keys( $postponed );
+ $writer->set( '#keys', serialize( $keys ) );
+ foreach ( $postponed as $groupId => $changes ) {
+ $writer->set( $groupId, serialize( $changes ) );
+ }
+ $writer->close();
+ $this->showChanges( true, $this->getLimit() );
+ } else {
+ $out->addWikiMsg( 'translate-smg-submitted' );
+ }
+ }
+
+ protected static function changeId( $groupId, $code, $type, $key ) {
+ return 'smg/' . substr( sha1( "$groupId/$code/$type/$key" ), 0, 7 );
+ }
+
+ /**
+ * Adds the task-based tabs on Special:Translate and few other special pages.
+ * Hook: SkinTemplateNavigation::SpecialPage
+ * @since 2012-05-14
+ */
+ static function tabify( Skin $skin, array &$tabs ) {
+ $title = $skin->getTitle();
+ list( $alias, ) = SpecialPageFactory::resolveAlias( $title->getText() );
+
+ $pagesInGroup = array(
+ 'ManageMessageGroups' => 'namespaces',
+ 'AggregateGroups' => 'namespaces',
+ 'SupportedLanguages' => 'views',
+ 'TranslationStats' => 'views',
+ );
+ if ( !isset( $pagesInGroup[$alias] ) ) {
+ return true;
+ }
+
+ $skin->getOutput()->addModules( 'ext.translate.tabgroup' );
+
+ $tabs['namespaces'] = array();
+ foreach ( $pagesInGroup as $spName => $section ) {
+ $spClass = SpecialPageFactory::getPage( $spName );
+ if ( $spClass === null ) {
+ continue; // Page explicitly disabled
+ }
+ // @todo Change to getPageTitle() when lowest supported version is 1.23.
+ $spTitle = $spClass->getTitle();
+
+ $tabs[$section][strtolower( $spName )] = array(
+ 'text' => $spClass->getDescription(),
+ 'href' => $spTitle->getLocalUrl(),
+ 'class' => $alias === $spName ? 'selected' : '',
+ );
+ }
+
+ return true;
+ }
+}
diff --git a/MLEB/Translate/specials/SpecialManageTranslatorSandbox.php b/MLEB/Translate/specials/SpecialManageTranslatorSandbox.php
new file mode 100644
index 00000000..b3bac886
--- /dev/null
+++ b/MLEB/Translate/specials/SpecialManageTranslatorSandbox.php
@@ -0,0 +1,317 @@
+<?php
+/**
+ * Contains logic for Special:ManageTranslatorSandbox
+ *
+ * @file
+ * @author Niklas Laxström
+ * @author Amir E. Aharoni
+ * @license GPL-2.0+
+ */
+
+/**
+ * Special page for managing sandboxed users.
+ *
+ * @ingroup SpecialPage TranslateSpecialPage
+ */
+class SpecialManageTranslatorSandbox extends TranslateSpecialPage {
+ /** @var TranslationStashStorage */
+ protected $stash;
+
+ function __construct() {
+ global $wgTranslateUseSandbox;
+ parent::__construct(
+ 'ManageTranslatorSandbox',
+ 'translate-sandboxmanage',
+ $wgTranslateUseSandbox
+ );
+ }
+
+ protected function getGroupName() {
+ return 'users';
+ }
+
+ public function execute( $params ) {
+ $this->setHeaders();
+ $this->checkPermissions();
+ $out = $this->getOutput();
+ $out->addModules( 'ext.translate.special.managetranslatorsandbox' );
+ $this->stash = new TranslationStashStorage( wfGetDB( DB_MASTER ) );
+
+ $this->prepareForTests();
+ $this->showPage();
+ }
+
+ /**
+ * Deletes a user page if it exists.
+ * This is needed especially when deleting sandbox users
+ * that were created as part of the integration tests.
+ * @param User $user
+ */
+ protected function deleteUserPage( $user ) {
+ $userpage = WikiPage::factory( $user->getUserPage() );
+ if ( $userpage->exists() ) {
+ $dummyError = '';
+ $userpage->doDeleteArticleReal(
+ wfMessage( 'tsb-delete-userpage-summary' )->inContentLanguage()->text(),
+ false,
+ 0,
+ true,
+ $dummyError,
+ $this->getUser()
+ );
+ }
+ }
+
+ /**
+ * Add users to the sandbox or delete them to facilitate browsers tests.
+ * Use with caution!
+ */
+ public function prepareForTests() {
+ global $wgTranslateTestUsers;
+
+ $user = $this->getUser();
+ $request = $this->getRequest();
+
+ if ( !in_array( $user->getName(), $wgTranslateTestUsers, true ) ) {
+ return;
+ }
+
+ if ( $request->getVal( 'integrationtesting' ) === 'populate' ) {
+ // Empty all the users, even if they were created manually
+ // to ensure the number of users is what the tests expect
+ $this->emptySandbox();
+
+ $textUsernamePrefixes = array( 'Pupu', 'Orava' );
+ $testLanguages = array( 'fi', 'uk', 'nl', 'he', 'bn' );
+ $testLanguagesCount = count( $testLanguages );
+
+ foreach ( $textUsernamePrefixes as $prefix ) {
+ for ( $i = 0; $i < $testLanguagesCount; $i++ ) {
+ $name = "$prefix$i";
+
+ // Get rid of users, even if promoted during tests
+ $userToDelete = User::newFromName( $name, false );
+ $this->deleteUserPage( $userToDelete );
+ TranslateSandbox::deleteUser( $userToDelete, 'force' );
+
+ $user = TranslateSandbox::addUser( $name, "$name@blackhole.io", 'porkkana' );
+ $user->setOption(
+ 'translate-sandbox',
+ FormatJson::encode( array(
+ 'languages' => array( $testLanguages[$i] ),
+ 'comment' => '',
+ ) )
+ );
+
+ $reminders = array();
+ for ( $reminderIndex = 0; $reminderIndex < $i; $reminderIndex++ ) {
+ $reminders[] = wfTimestamp() - $reminderIndex * $i * 10000;
+ }
+
+ $user->setOption(
+ 'translate-sandbox-reminders',
+ implode( '|', $reminders )
+ );
+ $user->saveSettings();
+
+ for ( $j = 0; $j < $i; $j++ ) {
+ $title = Title::makeTitle(
+ NS_MEDIAWIKI,
+ wfRandomString( 24 ) . '/' . $testLanguages[$i]
+ );
+ $translation = 'plop';
+ $stashedTranslation = new StashedTranslation( $user, $title, $translation );
+ $this->stash->addTranslation( $stashedTranslation );
+ }
+ }
+ }
+
+ // Another account for testing a translator to multiple languages
+ $oldPolyglotUser = User::newFromName( 'Kissa', false );
+ $this->deleteUserPage( $oldPolyglotUser );
+ TranslateSandbox::deleteUser( $oldPolyglotUser, 'force' );
+
+ $polyglotUser = TranslateSandbox::addUser( 'Kissa', 'kissa@blackhole.io', 'porkkana' );
+ $polyglotUser->setOption(
+ 'translate-sandbox',
+ FormatJson::encode( array(
+ 'languages' => $testLanguages,
+ 'comment' => "I know some languages, and I'm a developer.",
+ ) )
+ );
+ $polyglotUser->saveSettings();
+ for ( $polyglotLang = 0; $polyglotLang < $testLanguagesCount; $polyglotLang++ ) {
+ $title = Title::makeTitle(
+ NS_MEDIAWIKI,
+ wfRandomString( 24 ) . '/' . $testLanguages[$polyglotLang]
+ );
+ $translation = "plop in $testLanguages[$polyglotLang]";
+ $stashedTranslation = new StashedTranslation( $polyglotUser, $title, $translation );
+ $this->stash->addTranslation( $stashedTranslation );
+ }
+ } elseif ( $request->getVal( 'integrationtesting' ) === 'empty' ) {
+ $this->emptySandbox();
+ }
+ }
+
+ /**
+ * Delete all the users in the sandbox.
+ * Use with caution!
+ * To facilitate browsers tests.
+ */
+ protected function emptySandbox() {
+ $users = TranslateSandbox::getUsers();
+ foreach ( $users as $user ) {
+ TranslateSandbox::deleteUser( $user );
+ }
+ }
+
+ /**
+ * Generates the whole page html and appends it to output
+ */
+ protected function showPage() {
+ $out = $this->getOutput();
+ $out->addHtml( <<<HTML
+<div class="grid">
+ <div class="row">
+ <div class="nine columns pane filter">{$this->makeFilter()}</div>
+ <div class="three columns pane search">{$this->makeSearchBox()}</div>
+ </div>
+ <div class="row tsb-body">
+ <div class="four columns pane requests">
+ {$this->makeList()}
+ <div class="request-footer">
+ <span class="selected-counter">
+ {$this->msg( 'tsb-selected-count' )->numParams( 0 )->escaped()}
+ </span>
+ &nbsp;
+ <a href="#" class="older-requests-indicator"></a>
+ </div>
+ </div>
+ <div class="eight columns pane details"></div>
+ </div>
+</div>
+HTML
+ );
+ }
+
+ protected function makeFilter() {
+ return $this->msg( 'tsb-filter-pending' )->escaped();
+ }
+
+ protected function makeSearchBox() {
+ return <<<HTML
+<input class="request-filter-box right"
+ placeholder="{$this->msg( 'tsb-search-requests' )->escaped()}" type="search">
+</input>
+HTML;
+ }
+
+ protected function makeList() {
+ $items = array();
+ $requests = array();
+ $users = TranslateSandbox::getUsers();
+
+ /** @var User $user */
+ foreach ( $users as $user ) {
+ $reminders = $user->getOption( 'translate-sandbox-reminders' );
+ $reminders = $reminders ? explode( '|', $reminders ) : array();
+ $remindersCount = count( $reminders );
+ if ( $remindersCount ) {
+ $lastReminderTimestamp = new MWTimestamp( end( $reminders ) );
+ $lastReminderAgo = htmlspecialchars(
+ $lastReminderTimestamp->getHumanTimestamp()
+ );
+ } else {
+ $lastReminderAgo = '';
+ }
+
+ $requests[] = array(
+ 'username' => $user->getName(),
+ 'email' => $user->getEmail(),
+ 'gender' => $user->getOption( 'gender' ),
+ 'registrationdate' => $user->getRegistration(),
+ 'translations' => count( $this->stash->getTranslations( $user ) ),
+ 'languagepreferences' => FormatJson::decode( $user->getOption( 'translate-sandbox' ) ),
+ 'userid' => $user->getId(),
+ 'reminderscount' => $remindersCount,
+ 'lastreminder' => $lastReminderAgo,
+ );
+ }
+
+ // Sort the requests based on translations and registration date
+ usort( $requests, array( __CLASS__, 'translatorRequestSort' ) );
+
+ foreach ( $requests as $request ) {
+ $items[] = $this->makeRequestItem( $request );
+ }
+
+ $requestsList = implode( "\n", $items );
+
+ return <<<HTML
+<div class="row request-header">
+ <div class="four columns">
+ <button class="language-selector unselected">
+ {$this->msg( "tsb-all-languages-button-label" )->escaped()}
+ </button>
+ </div>
+ <div class="five columns request-count"></div>
+ <div class="three columns center">
+ <input class="request-selector-all" name="request" type="checkbox" />
+ </div>
+</div>
+<div class="requests-list">
+ {$requestsList}
+</div>
+HTML;
+ }
+
+ protected function makeRequestItem( $request ) {
+ $requestdataEnc = htmlspecialchars( FormatJson::encode( $request ) );
+ $nameEnc = htmlspecialchars( $request['username'] );
+ $nameEncForId = htmlspecialchars( Sanitizer::escapeId( $request['username'] ) );
+ $emailEnc = htmlspecialchars( $request['email'] );
+ $countEnc = htmlspecialchars( $request['translations'] );
+ $timestamp = new MWTimestamp( $request['registrationdate'] );
+ $agoEnc = htmlspecialchars( $timestamp->getHumanTimestamp() );
+
+ return <<<HTML
+<div class="row request" data-data="$requestdataEnc" id="tsb-request-$nameEncForId">
+ <div class="two columns amount">
+ <div class="translation-count">$countEnc</div>
+ </div>
+ <div class="seven columns request-info">
+ <div class="row username">$nameEnc</div>
+ <div class="row email">$emailEnc</div>
+ </div>
+ <div class="three columns approval center">
+ <input class="row request-selector" name="request" type="checkbox" />
+ <div class="row signup-age">$agoEnc</div>
+ </div>
+</div>
+HTML;
+ }
+
+ /**
+ * Sorts groups by descending order of number of translations,
+ * registration date and username
+ *
+ * @since 1.23
+ * @param array $a Translation request
+ * @param array $b Translation request
+ * @return int comparison result
+ */
+ public static function translatorRequestSort( $a, $b ) {
+ $translationCountDiff = $b['translations'] - $a['translations'];
+ if ( $translationCountDiff !== 0 ) {
+ return $translationCountDiff;
+ }
+
+ $registrationDateDiff = $b['registrationdate'] - $a['registrationdate'];
+ if ( $registrationDateDiff !== 0 ) {
+ return $registrationDateDiff;
+ }
+
+ return strcmp( $a['username'], $b['username'] );
+ }
+}
diff --git a/MLEB/Translate/specials/SpecialMessageGroupStats.php b/MLEB/Translate/specials/SpecialMessageGroupStats.php
new file mode 100644
index 00000000..901b7233
--- /dev/null
+++ b/MLEB/Translate/specials/SpecialMessageGroupStats.php
@@ -0,0 +1,316 @@
+<?php
+/**
+ * Contains logic for special page Special:MessageGroupStats.
+ *
+ * @file
+ * @author Niklas Laxström
+ * @author Siebrand Mazeland
+ * @copyright Copyright © 2011-2013 Niklas Laxström, Siebrand Mazeland
+ * @license GPL-2.0+
+ */
+
+/**
+ * Implements includable special page Special:MessageGroupStats which provides
+ * translation statistics for all languages for a group.
+ *
+ * @ingroup SpecialPage TranslateSpecialPage Stats
+ */
+class SpecialMessageGroupStats extends SpecialLanguageStats {
+ /// Overwritten from SpecialLanguageStats
+ protected $targetValueName = array( 'group' );
+ /// Overwritten from SpecialLanguageStats
+ protected $noComplete = false;
+ /// Overwritten from SpecialLanguageStats
+ protected $noEmpty = true;
+
+ protected $names;
+
+ protected $translate;
+
+ public function __construct() {
+ SpecialPage::__construct( 'MessageGroupStats' );
+ $this->totals = MessageGroupStats::getEmptyStats();
+ }
+
+ /// Overwritten from SpecialPage
+ public function getDescription() {
+ return $this->msg( 'translate-mgs-pagename' )->text();
+ }
+
+ protected function getGroupName() {
+ return 'wiki';
+ }
+
+ /// Overwritten from SpecialLanguageStats
+ protected function isValidValue( $value ) {
+ $group = MessageGroups::getGroup( $value );
+ if ( $group ) {
+ if ( MessageGroups::isDynamic( $group ) ) {
+ /* Dynamic groups are not listed, but it is possible to end up
+ * on this page with a dynamic group by navigating from
+ * translation or proofreading activity or by giving group id
+ * of dynamic group explicitly. Ignore dynamic group to avoid
+ * throwing exceptions later. */
+ $group = false;
+ } else {
+ $this->target = $group->getId();
+ }
+ }
+
+ return (bool)$group;
+ }
+
+ /// Overwritten from SpecialLanguageStats
+ protected function invalidTarget() {
+ $this->getOutput()->wrapWikiMsg(
+ "<div class='error'>$1</div>",
+ array( 'translate-mgs-invalid-group', $this->target )
+ );
+ }
+
+ /// Overwritten from SpecialLanguageStats
+ protected function outputIntroduction() {
+ $group = $this->getRequest()->getVal( 'group' );
+ $priorityLangs = TranslateMetadata::get( $group, 'prioritylangs' );
+ if ( $priorityLangs ) {
+ $this->getOutput()->addWikiMsg( 'tpt-priority-languages', $priorityLangs );
+ }
+ }
+
+ /// Overwriten from SpecialLanguageStats
+ function getform() {
+ global $wgScript;
+
+ $out = Html::openElement( 'div' );
+ $out .= Html::openElement( 'form', array( 'method' => 'get', 'action' => $wgScript ) );
+ $out .= Html::hidden( 'title', $this->getTitle()->getPrefixedText() );
+ $out .= Html::hidden( 'x', 'D' ); // To detect submission
+ $out .= Html::openElement( 'fieldset' );
+ $out .= Html::element( 'legend', array(), $this->msg( 'translate-mgs-fieldset' )->text() );
+ $out .= Html::openElement( 'table' );
+
+ $out .= Html::openElement( 'tr' );
+ $out .= Html::openElement( 'td', array( 'class' => 'mw-label' ) );
+ $out .= Xml::label( $this->msg( 'translate-mgs-group' )->text(), 'group' );
+ $out .= Html::closeElement( 'td' );
+ $out .= Html::openElement( 'td', array( 'class' => 'mw-input' ) );
+ $out .= $this->getGroupSelector( $this->target )->getHTML();
+ $out .= Html::closeElement( 'td' );
+ $out .= Html::closeElement( 'tr' );
+
+ $out .= Html::openElement( 'tr' );
+ $out .= Html::openElement( 'td', array( 'colspan' => 2 ) );
+ $out .= Xml::checkLabel(
+ $this->msg( 'translate-mgs-nocomplete' )->text(),
+ 'suppresscomplete',
+ 'suppresscomplete',
+ $this->noComplete
+ );
+ $out .= Html::closeElement( 'td' );
+ $out .= Html::closeElement( 'tr' );
+
+ $out .= Html::openElement( 'tr' );
+ $out .= Html::openElement( 'td', array( 'colspan' => 2 ) );
+ $out .= Xml::checkLabel(
+ $this->msg( 'translate-mgs-noempty' )->text(),
+ 'suppressempty',
+ 'suppressempty',
+ $this->noEmpty
+ );
+ $out .= Html::closeElement( 'td' );
+ $out .= Html::closeElement( 'tr' );
+
+ $out .= Html::openElement( 'tr' );
+ $out .= Html::openElement( 'td', array( 'class' => 'mw-input', 'colspan' => 2 ) );
+ $out .= Xml::submitButton( $this->msg( 'translate-mgs-submit' )->text() );
+ $out .= Html::closeElement( 'td' );
+ $out .= Html::closeElement( 'tr' );
+
+ $out .= Html::closeElement( 'table' );
+ $out .= Html::closeElement( 'fieldset' );
+ /* Since these pages are in the tabgroup with Special:Translate,
+ * it makes sense to retain the selected group/language parameter
+ * on post requests even when not relevant to the current page. */
+ $val = $this->getRequest()->getVal( 'language' );
+ if ( $val !== null ) {
+ $out .= Html::hidden( 'language', $val );
+ }
+ $out .= Html::closeElement( 'form' );
+ $out .= Html::closeElement( 'div' );
+
+ return $out;
+ }
+
+ /**
+ * Overwriten from SpecialLanguageStats
+ *
+ * @return string
+ */
+ function getTable() {
+ $table = $this->table;
+
+ $this->addWorkflowStatesColumn();
+ $out = '';
+
+ if ( $this->purge ) {
+ MessageGroupStats::clearGroup( $this->target );
+ }
+
+ MessageGroupStats::setTimeLimit( $this->timelimit );
+ $cache = MessageGroupStats::forGroup( $this->target );
+
+ $languages = array_keys( Language::fetchLanguageNames() );
+ sort( $languages );
+ $this->filterPriorityLangs( $languages, $this->target, $cache );
+ foreach ( $languages as $code ) {
+ if ( $table->isBlacklisted( $this->target, $code ) !== null ) {
+ continue;
+ }
+ $out .= $this->makeRow( $code, $cache );
+ }
+
+ if ( $out ) {
+ $table->setMainColumnHeader( $this->msg( 'translate-mgs-column-language' ) );
+ $out = $table->createHeader() . "\n" . $out;
+ $out .= Html::closeElement( 'tbody' );
+
+ $out .= Html::openElement( 'tfoot' );
+ $out .= $table->makeTotalRow( $this->msg( 'translate-mgs-totals' ), $this->totals );
+ $out .= Html::closeElement( 'tfoot' );
+
+ $out .= Html::closeElement( 'table' );
+
+ return $out;
+ } else {
+ $this->nothing = true;
+
+ return '';
+ }
+ }
+
+ /**
+ * Filter an array of languages based on whether a priority set of
+ * languages present for the passed group. If priority languages are
+ * present, to that list add languages with more than 0% translation.
+ * @param $languages Array of Languages to be filtered
+ * @param $group
+ * @param $cache
+ */
+ protected function filterPriorityLangs( &$languages, $group, $cache ) {
+ $filterLangs = TranslateMetadata::get( $group, 'prioritylangs' );
+ if ( strlen( $filterLangs ) === 0 ) {
+ // No restrictions, keep everything
+ return;
+ }
+ $filter = array_flip( explode( ',', $filterLangs ) );
+ foreach ( $languages as $id => $code ) {
+ if ( isset( $filter[$code] ) ) {
+ continue;
+ }
+ $translated = $cache[$code][1];
+ if ( $translated === 0 ) {
+ unset( $languages[$id] );
+ }
+ }
+ }
+
+ /**
+ * @param $code
+ * @param $cache
+ * @return string
+ */
+ protected function makeRow( $code, $cache ) {
+ $stats = $cache[$code];
+ $total = $stats[MessageGroupStats::TOTAL];
+ $translated = $stats[MessageGroupStats::TRANSLATED];
+ $fuzzy = $stats[MessageGroupStats::FUZZY];
+
+ if ( $total === null ) {
+ $this->incomplete = true;
+ $extra = array();
+ } else {
+ if ( $this->noComplete && $fuzzy === 0 && $translated === $total ) {
+ return '';
+ }
+
+ if ( $this->noEmpty && $translated === 0 && $fuzzy === 0 ) {
+ return '';
+ }
+
+ // Skip below 2% if "don't show without translations" is checked.
+ if ( $this->noEmpty && ( $translated / $total ) < 0.02 ) {
+ return '';
+ }
+
+ if ( $translated === $total ) {
+ $extra = array( 'action' => 'proofread' );
+ } else {
+ $extra = array();
+ }
+ }
+
+ $this->totals = MessageGroupStats::multiAdd( $this->totals, $stats );
+
+ $out = "\t" . Html::openElement( 'tr' );
+ $out .= "\n\t\t" . $this->getMainColumnCell( $code, $extra );
+ $out .= $this->table->makeNumberColumns( $stats );
+ $state = $this->getWorkflowStateValue( $code );
+ $out .= $this->getWorkflowStateCell( $code, $state );
+
+ $out .= "\n\t" . Html::closeElement( 'tr' ) . "\n";
+
+ return $out;
+ }
+
+ /**
+ * @param $code
+ * @param $params
+ * @return string
+ */
+ protected function getMainColumnCell( $code, $params ) {
+ if ( !isset( $this->names ) ) {
+ $this->names = TranslateUtils::getLanguageNames( $this->getLanguage()->getCode() );
+ $this->translate = SpecialPage::getTitleFor( 'Translate' );
+ }
+
+ $queryParameters = $params + array(
+ 'group' => $this->target,
+ 'language' => $code
+ );
+
+ $text = htmlspecialchars( "$code: {$this->names[$code]}" );
+ $link = Linker::link( $this->translate, $text, array(), $queryParameters );
+
+ return Html::rawElement( 'td', array(), $link );
+ }
+
+ // @codingStandardsIgnoreStart PHP CodeSniffer warns "Useless method overriding
+ // detected", but that's not the case.
+ /**
+ * @param string $field
+ * @param string $filter
+ * @return array
+ */
+ protected function getWorkflowStates( $field = 'tgr_lang', $filter = 'tgr_group' ) {
+ return parent::getWorkflowStates( $field, $filter );
+ } // @codingStandardsIgnoreEnd
+
+ /**
+ * Creates a simple message group selector.
+ *
+ * @param string $default Group id of the group chosen by default. Optional.
+ * @return XmlSelect
+ */
+ protected function getGroupSelector( $default = false ) {
+ $groups = MessageGroups::getAllGroups();
+ $selector = new XmlSelect( 'group', 'group', $default );
+
+ foreach ( $groups as $id => $class ) {
+ if ( MessageGroups::getGroup( $id )->exists() ) {
+ $selector->addOption( $class->getLabel(), $id );
+ }
+ }
+
+ return $selector;
+ }
+}
diff --git a/MLEB/Translate/specials/SpecialMyLanguage.php b/MLEB/Translate/specials/SpecialMyLanguage.php
new file mode 100644
index 00000000..c3e2505c
--- /dev/null
+++ b/MLEB/Translate/specials/SpecialMyLanguage.php
@@ -0,0 +1,78 @@
+<?php
+/**
+ * Contains logic for special page Special:MyLanguage
+ *
+ * @file
+ * @author Niklas Laxström
+ * @author Siebrand Mazeland
+ * @copyright Copyright © 2010-2013 Niklas Laxström, Siebrand Mazeland
+ * @license GPL-2.0+
+ */
+
+/**
+ * Unlisted special page just to redirect the user to the translated version of
+ * a page, if it exists.
+ *
+ * Usage: [[Special:MyLanguage/Page name|link text]]
+ *
+ * @ingroup SpecialPage TranslateSpecialPage
+ */
+class SpecialMyLanguage extends TranslateSpecialPage {
+ public function __construct() {
+ parent::__construct( 'MyLanguage' );
+ }
+
+ public function isListed() {
+ return false;
+ }
+
+ /// Only takes arguments from $par
+ public function execute( $par ) {
+ $title = $this->findTitle( $par );
+ // Go to the main page if given invalid title.
+ if ( !$title ) {
+ $title = Title::newMainPage();
+ }
+
+ $this->getOutput()->redirect( $title->getLocalURL() );
+ }
+
+ /**
+ * Assuming the user's interface language is fi. Given input Page, it
+ * returns Page/fi if it exists, otherwise Page. Given input Page/de,
+ * it returns Page/fi if it exists, otherwise Page/de if it exists,
+ * otherwise Page.
+ * @param $par
+ * @return Title|null
+ */
+ protected function findTitle( $par ) {
+ global $wgLanguageCode;
+ // base = title without language code suffix
+ // provided = the title as it was given
+ $base = $provided = Title::newFromText( $par );
+
+ if ( strpos( $par, '/' ) !== false ) {
+ $pos = strrpos( $par, '/' );
+ $basepage = substr( $par, 0, $pos );
+ $code = substr( $par, $pos + 1 );
+ $codes = Language::fetchLanguageNames();
+ if ( isset( $codes[$code] ) ) {
+ $base = Title::newFromText( $basepage );
+ }
+ }
+
+ if ( !$base ) {
+ return null;
+ }
+
+ $uiCode = $this->getLanguage()->getCode();
+ $proposed = Title::newFromText( $base->getPrefixedText() . "/$uiCode" );
+ if ( $uiCode !== $wgLanguageCode && $proposed && $proposed->exists() ) {
+ return $proposed;
+ } elseif ( $provided && $provided->exists() ) {
+ return $provided;
+ } else {
+ return $base;
+ }
+ }
+}
diff --git a/MLEB/Translate/specials/SpecialPageMigration.php b/MLEB/Translate/specials/SpecialPageMigration.php
new file mode 100644
index 00000000..098c056f
--- /dev/null
+++ b/MLEB/Translate/specials/SpecialPageMigration.php
@@ -0,0 +1,58 @@
+<?php
+/**
+ * Contains code for special page Special:PageMigration
+ *
+ * @file
+ * @author Pratik Lahoti
+ * @copyright Copyright © 2014-2015 Pratik Lahoti
+ * @license GPL-2.0+
+ */
+
+class SpecialPageMigration extends SpecialPage {
+ function __construct() {
+ parent::__construct( 'PageMigration', 'pagetranslation' );
+ }
+
+ function execute( $par ) {
+ $request = $this->getRequest();
+ $output = $this->getOutput();
+ $this->setHeaders();
+ $this->checkPermissions();
+ $output->addModules( 'ext.translate.special.pagemigration' );
+ $output->addModuleStyles( 'jquery.uls.grid' );
+ # Get request data from, e.g.
+ $param = $request->getText( 'param' );
+ # Do stuff
+ # ...
+ $out = '';
+ $out .= Html::openElement( 'div', array( 'class' => 'grid' ) );
+ $out .= Html::openElement( 'div', array( 'class' => 'mw-tpm-sp-error row',
+ 'id' => 'mw-tpm-sp-error-div' ) );
+ $out .= Html::element( 'div',
+ array( 'class' => 'mw-tpm-sp-error__message five columns hide' ) );
+ $out .= Html::closeElement( 'div' );
+ $out .= Html::openElement( 'form', array( 'class' => 'mw-tpm-sp-form row',
+ 'id' => 'mw-tpm-sp-primary-form' ) );
+ $out .= Html::element( 'input', array( 'id' => 'pm-summary', 'type' => 'hidden',
+ 'value' => $this->msg( 'pm-summary-import' )->inContentLanguage()->text() ) );
+ $out .= Html::element( 'input', array( 'id' => 'title', 'class' => 'mw-searchInput',
+ 'placeholder' => $this->msg( 'pm-pagename-placeholder' )->text() ) );
+ $out .= Html::element( 'input', array( 'id' => 'language', 'type' => 'text',
+ 'placeholder' => $this->msg( 'pm-langcode-placeholder' )->text() ) );
+ $out .= Html::element( 'input', array( 'id' => 'action-import',
+ 'class' => 'mw-ui-button mw-ui-primary', 'type' => 'button',
+ 'value' => $this->msg( 'pm-import-button-label' )->text() ) );
+ $out .= Html::element( 'input', array( 'id' => 'action-save',
+ 'class' => 'mw-ui-button mw-ui-constructive hide', 'type' => 'button',
+ 'value' => $this->msg( 'pm-savepages-button-label' )->text() ) );
+ $out .= Html::element( 'input', array( 'id' => 'action-cancel',
+ 'class' => 'mw-ui-button mw-ui-quiet hide', 'type' => 'button',
+ 'value' => $this->msg( 'pm-cancel-button-label' )->text() ) );
+ $out .= Html::closeElement( 'form' );
+ $out .= Html::openElement( 'div', array( 'class' => 'mw-tpm-sp-unit-listing' ) );
+ $out .= Html::closeElement( 'div' );
+ $out .= Html::closeElement( 'div' );
+
+ $output->addHTML( $out );
+ }
+}
diff --git a/MLEB/Translate/specials/SpecialPagePreparation.php b/MLEB/Translate/specials/SpecialPagePreparation.php
new file mode 100644
index 00000000..278a5cef
--- /dev/null
+++ b/MLEB/Translate/specials/SpecialPagePreparation.php
@@ -0,0 +1,53 @@
+<?php
+/**
+ * Contains code for special page Special:PagePreparation
+ *
+ * @file
+ * @author Pratik Lahoti
+ * @copyright Copyright © 2014 Pratik Lahoti
+ * @license GPL-2.0+
+ */
+
+class SpecialPagePreparation extends SpecialPage {
+ function __construct() {
+ parent::__construct( 'PagePreparation', 'pagetranslation' );
+ }
+
+ function execute( $par ) {
+ $request = $this->getRequest();
+ $output = $this->getOutput();
+ $this->setHeaders();
+ $this->checkPermissions();
+ $pagenamePlaceholder = $this->msg( 'pp-pagename-placeholder' )->escaped();
+ $prepareButtonValue = $this->msg( 'pp-prepare-button-label' )->escaped();
+ $saveButtonValue = $this->msg( 'pp-save-button-label' )->escaped();
+ $summaryValue = $this->msg( 'pp-save-summary' )->inContentLanguage()->escaped();
+ $output->addModules( 'ext.translate.special.pagepreparation' );
+ $output->addModuleStyles( 'jquery.uls.grid' );
+ $param = $request->getText( 'param' );
+
+ $out = '';
+ $diff = new DifferenceEngine( $this->getContext() );
+ $diffHeader = $diff->addHeader( " ", $this->msg( 'pp-diff-old-header' )->escaped(),
+ $this->msg( 'pp-diff-new-header' )->escaped() );
+
+ $out = <<<HTML
+<div class="grid">
+ <form class="mw-tpp-sp-form row" name="mw-tpp-sp-input-form">
+ <input id="pp-summary" type="hidden" value="{$summaryValue}" />
+ <input name="title" id="title" class="mw-searchInput mw-ui-input"
+ placeholder="{$pagenamePlaceholder}" />
+ <button id="action-prepare" class="mw-ui-button mw-ui-primary" type="button">
+ {$prepareButtonValue}</button>
+ <button id="action-save" class="mw-ui-button mw-ui-constructive hide" type="button">
+ {$saveButtonValue}</button>
+ </form>
+ <div class="messageDiv hide"></div>
+ <div class="divDiff hide">
+ {$diffHeader}
+ </div>
+</div>
+HTML;
+ $output->addHTML( $out );
+ }
+}
diff --git a/MLEB/Translate/specials/SpecialSearchTranslations.php b/MLEB/Translate/specials/SpecialSearchTranslations.php
new file mode 100644
index 00000000..1336f438
--- /dev/null
+++ b/MLEB/Translate/specials/SpecialSearchTranslations.php
@@ -0,0 +1,325 @@
+<?php
+/**
+ * Contains logic for special page ...
+ *
+ * @file
+ * @author Niklas Laxström
+ * @copyright Copyright © 2013 Niklas Laxström
+ * @license GPL-2.0+
+ */
+
+/**
+ * ...
+ *
+ * @ingroup SpecialPage TranslateSpecialPage
+ */
+class SpecialSearchTranslations extends TranslateSpecialPage {
+ /** @var FormOptions */
+ protected $opts;
+
+ /**
+ * Placeholders used for highlighting. Solr can mark the beginning and
+ * end but we need to run htmlspecialchars on the result first and then
+ * replace the placeholders with the html. It is assumed placeholders
+ * don't contain any chars that are escaped in html.
+ * @var array
+ */
+ protected $hl = array();
+
+ /**
+ * How many search results to display per page
+ * @var int
+ */
+ protected $limit = 25;
+
+ public function __construct() {
+ parent::__construct( 'SearchTranslations' );
+ $this->hl = array(
+ TranslateUtils::getPlaceholder(),
+ TranslateUtils::getPlaceholder(),
+ );
+ }
+
+ public function setHeaders() {
+ // Overwritten the parent because it sucks!
+ // We want to set <title> but not <h1>
+ $out = $this->getOutput();
+ $out->setArticleRelated( false );
+ $out->setRobotPolicy( 'noindex,nofollow' );
+ $name = $this->msg( 'searchtranslations' );
+ $name = Sanitizer::stripAllTags( $name );
+ $out->setHTMLTitle( $this->msg( 'pagetitle' )->rawParams( $name ) );
+ }
+
+ public function execute( $par ) {
+ $this->setHeaders();
+ $this->checkPermissions();
+
+ $server = TTMServer::primary();
+ if ( !$server instanceof SearchableTTMServer ) {
+ throw new ErrorPageError( 'tux-sst-nosolr-title', 'tux-sst-nosolr-body' );
+ }
+
+ $out = $this->getOutput();
+ $out->addModules( 'ext.translate.special.searchtranslations' );
+
+ $this->opts = $opts = new FormOptions();
+ $opts->add( 'query', '' );
+ $opts->add( 'language', '' );
+ $opts->add( 'group', '' );
+ $opts->add( 'grouppath', '' );
+ $opts->add( 'limit', $this->limit );
+ $opts->add( 'offset', 0 );
+
+ $opts->fetchValuesFromRequest( $this->getRequest() );
+
+ $queryString = $opts->getValue( 'query' );
+
+ if ( $queryString === '' ) {
+ $this->showEmptySearch();
+
+ return;
+ }
+
+ try {
+ $resultset = $server->search( $queryString, $opts, $this->hl );
+ } catch ( TTMServerException $e ) {
+ error_log( 'Translation search server unavailable:' . $e->getMessage() );
+ throw new ErrorPageError( 'tux-sst-solr-offline-title', 'tux-sst-solr-offline-body' );
+ }
+
+ // Part 1: facets
+ $facets = $server->getFacets( $resultset );
+
+ $facetHtml = Html::element( 'div',
+ array( 'class' => 'row facet languages',
+ 'data-facets' => FormatJson::encode( $this->getLanguages( $facets['language'] ) ),
+ 'data-language' => $opts->getValue( 'language' ),
+ ),
+ $this->msg( 'tux-sst-facet-language' )
+ );
+
+ $facetHtml .= Html::element( 'div',
+ array( 'class' => 'row facet groups',
+ 'data-facets' => FormatJson::encode( $this->getGroups( $facets['group'] ) ),
+ 'data-group' => $opts->getValue( 'group' ) ),
+ $this->msg( 'tux-sst-facet-group' )
+ );
+
+ // Part 2: results
+ $resultsHtml = '';
+ $documents = $server->getDocuments( $resultset );
+
+ foreach ( $documents as $document ) {
+ $text = $document['content'];
+ $text = TranslateUtils::convertWhiteSpaceToHTML( $text );
+
+ list( $pre, $post ) = $this->hl;
+ $text = str_replace( $pre, '<strong class="tux-highlight">', $text );
+ $text = str_replace( $post, '</strong>', $text );
+
+ $title = Title::newFromText( $document['localid'] . '/' . $document['language'] );
+ if ( !$title ) {
+ // Should not ever happen but who knows...
+ continue;
+ }
+
+ $resultAttribs = array(
+ 'class' => 'row tux-message',
+ 'data-title' => $title->getPrefixedText(),
+ 'data-language' => $document['language'],
+ );
+
+ $handle = new MessageHandle( $title );
+
+ $edit = '';
+ if ( $handle->isValid() ) {
+ $groupId = $handle->getGroup()->getId();
+ $helpers = new TranslationHelpers( $title, $groupId );
+ $resultAttribs['data-definition'] = $helpers->getDefinition();
+ $resultAttribs['data-translation'] = $helpers->getTranslation();
+ $resultAttribs['data-group'] = $groupId;
+
+ $uri = wfAppendQuery( $document['uri'], array( 'action' => 'edit' ) );
+ $link = Html::element( 'a', array(
+ 'href' => $uri,
+ ), $this->msg( 'tux-sst-edit' )->text() );
+ $edit = Html::rawElement(
+ 'div',
+ array( 'class' => 'row tux-edit tux-message-item' ),
+ $link
+ );
+ }
+
+ $titleText = $title->getPrefixedText();
+
+ $resultsHtml = $resultsHtml
+ . Html::openElement( 'div', $resultAttribs )
+ . Html::rawElement( 'div', array( 'class' => 'row tux-text' ), $text )
+ . Html::element( 'div', array( 'class' => 'row tux-title' ), $titleText )
+ . $edit
+ . Html::closeElement( 'div' );
+ }
+
+ $prev = $next = '';
+ $total = $server->getTotalHits( $resultset );
+ $offset = $this->opts->getValue( 'offset' );
+ $params = $this->opts->getChangedValues();
+
+ if ( $total - $offset > $this->limit ) {
+ $newParams = array( 'offset' => $offset + $this->limit ) + $params;
+ $attribs = array(
+ 'class' => 'pager-next',
+ 'href' => $this->getTitle()->getLocalUrl( $newParams ),
+ );
+ $next = Html::element( 'a', $attribs, $this->msg( 'tux-sst-next' )->text() );
+ }
+ if ( $offset ) {
+ $newParams = array( 'offset' => max( 0, $offset - $this->limit ) ) + $params;
+ $attribs = array(
+ 'class' => 'pager-prev',
+ 'href' => $this->getTitle()->getLocalUrl( $newParams ),
+ );
+ $prev = Html::element( 'a', $attribs, $this->msg( 'tux-sst-prev' )->text() );
+ }
+
+ $resultsHtml .= Html::rawElement( 'div', array(), "$prev $next" );
+
+ $search = $this->getSearchInput( $queryString );
+ $count = $this->msg( 'tux-sst-count' )->numParams( $total );
+
+ $this->showSearch( $search, $count, $facetHtml, $resultsHtml );
+ }
+
+ protected function getLanguages( array $facet ) {
+ $output = array();
+
+ $nondefaults = $this->opts->getChangedValues();
+ $selected = $this->opts->getValue( 'language' );
+
+ foreach ( $facet as $key => $value ) {
+ if ( $key === $selected ) {
+ unset( $nondefaults['language'] );
+ } else {
+ $nondefaults['language'] = $key;
+ }
+
+ $url = $this->getTitle()->getLocalUrl( $nondefaults );
+ $value = $this->getLanguage()->formatNum( $value );
+
+ $output[$key] = array(
+ 'count' => $value,
+ 'url' => $url
+ );
+ }
+
+ return $output;
+ }
+
+ protected function getGroups( array $facet ) {
+ $structure = MessageGroups::getGroupStructure();
+ return $this->makeGroupFacetRows( $structure, $facet );
+ }
+
+ protected function makeGroupFacetRows( array $groups, $counts, $level = 0, $pathString = '' ) {
+ $output = array();
+
+ $nondefaults = $this->opts->getChangedValues();
+ $selected = $this->opts->getValue( 'group' );
+ $path = explode( '|', $this->opts->getValue( 'grouppath' ) );
+
+ foreach ( $groups as $mixed ) {
+ $subgroups = $group = $mixed;
+
+ if ( is_array( $mixed ) ) {
+ $group = array_shift( $subgroups );
+ } else {
+ $subgroups = array();
+ }
+
+ $id = $group->getId();
+
+ if ( $id !== $selected && !isset( $counts[$id] ) ) {
+ continue;
+ }
+
+ if ( $id === $selected ) {
+ unset( $nondefaults['group'] );
+ $nondefaults['grouppath'] = $pathString;
+ } else {
+ $nondefaults['group'] = $id;
+ $nondefaults['grouppath'] = $pathString . $id;
+ }
+
+ $value = isset( $counts[$id] ) ? $counts[$id] : 0;
+ $count = $this->getLanguage()->formatNum( $value );
+
+ $output[$id] = array(
+ 'id' => $id,
+ 'count' => $count,
+ 'label' => $group->getLabel(),
+ );
+
+ if ( isset( $path[$level] ) && $path[$level] === $id ) {
+ $output[$id]['groups'] = $this->makeGroupFacetRows(
+ $subgroups,
+ $counts,
+ $level + 1,
+ "$pathString$id|"
+ );
+ }
+ }
+
+ return $output;
+ }
+
+ protected function showSearch( $search, $count, $facets, $results ) {
+ $this->getOutput()->addHtml( <<<HTML
+<div class="grid tux-searchpage">
+ <div class="row searchinput">
+ <div class="nine columns offset-by-three">$search</div>
+ </div>
+ <div class="row count">
+ <div class="nine columns offset-by-three">$count</div>
+ </div>
+ <div class="row searchcontent">
+ <div class="three columns facets">$facets</div>
+ <div class="nine columns results">$results</div>
+ </div>
+</div>
+HTML
+ );
+ }
+
+ protected function showEmptySearch() {
+ $search = $this->getSearchInput( '' );
+ $this->getOutput()->addHtml( <<<HTML
+<div class="grid tux-searchpage">
+ <div class="row searchinput">
+ <div class="nine columns offset-by-three">$search</div>
+ </div>
+</div>
+HTML
+ );
+ }
+
+ protected function getSearchInput( $query ) {
+ $attribs = array(
+ 'placeholder' => $this->msg( 'tux-sst-search-ph' ),
+ 'class' => 'searchinputbox',
+ 'dir' => $this->getLanguage()->getDir(),
+ );
+
+ $title = Html::hidden( 'title', $this->getTitle()->getPrefixedText() );
+ $input = Xml::input( 'query', false, $query, $attribs );
+ $submit = Xml::submitButton( $this->msg( 'tux-sst-search' ), array( 'class' => 'button' ) );
+ $lang = $this->getRequest()->getVal( 'language' );
+ $language = is_null( $lang ) ? '' : Html::hidden( 'language', $lang );
+
+ $form = Html::rawElement( 'form', array( 'action' => wfScript() ),
+ $title . $input . $submit . $language
+ );
+
+ return $form;
+ }
+}
diff --git a/MLEB/Translate/specials/SpecialSupportedLanguages.php b/MLEB/Translate/specials/SpecialSupportedLanguages.php
new file mode 100644
index 00000000..b1bf422f
--- /dev/null
+++ b/MLEB/Translate/specials/SpecialSupportedLanguages.php
@@ -0,0 +1,455 @@
+<?php
+/**
+ * Contains logic for special page Special:SupportedLanguages
+ *
+ * @file
+ * @author Niklas Laxström
+ * @author Siebrand Mazeland
+ * @copyright Copyright © 2012-2013, Niklas Laxström, Siebrand Mazeland
+ * @license GPL-2.0+
+ */
+
+/**
+ * Implements special page Special:SupportedLanguages. The wiki administrator
+ * must define NS_PORTAL, otherwise this page does not work. This page displays
+ * a list of language portals for all portals corresponding with a language
+ * code defined for MediaWiki and a subpage called "translators". The subpage
+ * "translators" must contain the template [[:{{ns:template}}:User|User]],
+ * taking a user name as parameter.
+ *
+ * @ingroup SpecialPage TranslateSpecialPage Stats
+ */
+class SpecialSupportedLanguages extends TranslateSpecialPage {
+ /// Whether to skip and regenerate caches
+ protected $purge = false;
+
+ /// Cutoff time for inactivity in days
+ protected $period = 180;
+
+ public function __construct() {
+ parent::__construct( 'SupportedLanguages' );
+ }
+
+ public function execute( $par ) {
+ $out = $this->getOutput();
+ $lang = $this->getLanguage();
+
+ $this->purge = $this->getRequest()->getVal( 'action' ) === 'purge';
+
+ $this->setHeaders();
+ $out->addModules( 'ext.translate.special.supportedlanguages' );
+
+ // Do not add html content to OutputPage before this block of code!
+ $cache = wfGetCache( CACHE_ANYTHING );
+ $cachekey = wfMemcKey( 'translate-supportedlanguages', $lang->getCode() );
+ $data = $cache->get( $cachekey );
+ if ( !$this->purge && is_string( $data ) ) {
+ TranslateUtils::addSpecialHelpLink(
+ $out,
+ 'Help:Extension:Translate/Statistics_and_reporting#List_of_languages_and_translators'
+ );
+ $out->addHtml( $data );
+
+ return;
+ }
+
+ TranslateUtils::addSpecialHelpLink(
+ $out,
+ 'Help:Extension:Translate/Statistics_and_reporting#List_of_languages_and_translators'
+ );
+
+ $this->outputHeader();
+ $dbr = wfGetDB( DB_SLAVE );
+ if ( $dbr->getType() === 'sqlite' ) {
+ $out->addWikiText( '<div class=errorbox>SQLite is not supported.</div>' );
+
+ return;
+ }
+
+ $out->addWikiMsg( 'supportedlanguages-colorlegend', $this->getColorLegend() );
+ $out->addWikiMsg( 'supportedlanguages-localsummary' );
+
+ // Check if CLDR extension has been installed.
+ $cldrInstalled = class_exists( 'LanguageNames' );
+
+ $locals = array();
+ if ( $cldrInstalled ) {
+ $locals = LanguageNames::getNames( $lang->getCode(),
+ LanguageNames::FALLBACK_NORMAL,
+ LanguageNames::LIST_MW_AND_CLDR
+ );
+ }
+
+ $natives = Language::fetchLanguageNames();
+ ksort( $natives );
+
+ $this->outputLanguageCloud( $natives );
+
+ if ( !defined( 'NS_PORTAL' ) ) {
+ $users = $this->fetchTranslatorsAuto();
+ } else {
+ $users = $this->fetchTranslatorsPortal( $natives );
+ }
+
+ if ( $users === array() ) {
+ return;
+ }
+
+ $this->preQueryUsers( $users );
+
+ $usernames = array_keys( call_user_func_array( 'array_merge', array_values( $users ) ) );
+ $userStats = $this->getUserStats( $usernames );
+
+ // Information to be used inside the foreach loop.
+ $linkInfo['rc']['title'] = SpecialPage::getTitleFor( 'Recentchanges' );
+ $linkInfo['rc']['msg'] = $this->msg( 'supportedlanguages-recenttranslations' )->escaped();
+ $linkInfo['stats']['title'] = SpecialPage::getTitleFor( 'LanguageStats' );
+ $linkInfo['stats']['msg'] = $this->msg( 'languagestats' )->escaped();
+
+ foreach ( array_keys( $natives ) as $code ) {
+ if ( !isset( $users[$code] ) ) {
+ continue;
+ }
+
+ // If CLDR is installed, add localised header and link title.
+ if ( $cldrInstalled ) {
+ $headerText = $this->msg( 'supportedlanguages-portallink' )
+ ->params( $code, $locals[$code], $natives[$code] )->escaped();
+ } else {
+ // No CLDR, so a less localised header and link title.
+ $headerText = $this->msg( 'supportedlanguages-portallink-nocldr' )
+ ->params( $code, $natives[$code] )->escaped();
+ }
+
+ $headerText = htmlspecialchars( $headerText );
+
+ $out->addHtml( Html::openElement( 'h2', array( 'id' => $code ) ) );
+ if ( defined( 'NS_PORTAL' ) ) {
+ $portalTitle = Title::makeTitleSafe( NS_PORTAL, $code );
+ $out->addHtml( Linker::linkKnown( $portalTitle, $headerText ) );
+ } else {
+ $out->addHtml( $headerText );
+ }
+
+ $out->addHTML( "</h2>" );
+
+ // Add useful links for language stats and recent changes for the language.
+ $links = array();
+ $links[] = Linker::link(
+ $linkInfo['stats']['title'],
+ $linkInfo['stats']['msg'],
+ array(),
+ array(
+ 'code' => $code,
+ 'suppresscomplete' => '1'
+ ),
+ array( 'known', 'noclasses' )
+ );
+ $links[] = Linker::link(
+ $linkInfo['rc']['title'],
+ $linkInfo['rc']['msg'],
+ array(),
+ array(
+ 'translations' => 'only',
+ 'trailer' => "/" . $code
+ ),
+ array( 'known', 'noclasses' )
+ );
+ $linkList = $lang->listToText( $links );
+
+ $out->addHTML( "<p>" . $linkList . "</p>\n" );
+ $this->makeUserList( $users[$code], $userStats );
+ }
+
+ $out->addHtml( Html::element( 'hr' ) );
+ $out->addWikiMsg( 'supportedlanguages-count', $lang->formatNum( count( $users ) ) );
+
+ $cache->set( $cachekey, $out->getHTML(), 3600 );
+ }
+
+ protected function languageCloud() {
+ global $wgTranslateMessageNamespaces;
+
+ $cache = wfGetCache( CACHE_ANYTHING );
+ $cachekey = wfMemcKey( 'translate-supportedlanguages-language-cloud' );
+ $data = $cache->get( $cachekey );
+ if ( !$this->purge && is_array( $data ) ) {
+ return $data;
+ }
+
+ $dbr = wfGetDB( DB_SLAVE );
+ $tables = array( 'recentchanges' );
+ $fields = array( 'substring_index(rc_title, \'/\', -1) as lang', 'count(*) as count' );
+ $timestamp = $dbr->timestamp( TS_DB, wfTimeStamp( TS_UNIX ) - 60 * 60 * 24 * $this->period );
+ $conds = array(
+ 'rc_title' . $dbr->buildLike( $dbr->anyString(), '/', $dbr->anyString() ),
+ 'rc_namespace' => $wgTranslateMessageNamespaces,
+ 'rc_timestamp > ' . $timestamp,
+ );
+ $options = array( 'GROUP BY' => 'lang', 'HAVING' => 'count > 20' );
+
+ $res = $dbr->select( $tables, $fields, $conds, __METHOD__, $options );
+
+ $data = array();
+ foreach ( $res as $row ) {
+ $data[$row->lang] = $row->count;
+ }
+
+ $cache->set( $cachekey, $data, 3600 );
+
+ return $data;
+ }
+
+ protected function fetchTranslatorsAuto() {
+ global $wgTranslateMessageNamespaces;
+
+ $cache = wfGetCache( CACHE_ANYTHING );
+ $cachekey = wfMemcKey( 'translate-supportedlanguages-translator-list' );
+ $data = $cache->get( $cachekey );
+ if ( !$this->purge && is_array( $data ) ) {
+ return $data;
+ }
+
+ $dbr = wfGetDB( DB_SLAVE );
+ $tables = array( 'page', 'revision' );
+ $fields = array(
+ 'rev_user_text',
+ 'substring_index(page_title, \'/\', -1) as lang',
+ 'count(page_id) as count'
+ );
+ $conds = array(
+ 'page_title' . $dbr->buildLike( $dbr->anyString(), '/', $dbr->anyString() ),
+ 'page_namespace' => $wgTranslateMessageNamespaces,
+ 'page_id=rev_page',
+ );
+ $options = array( 'GROUP BY' => 'rev_user_text, lang' );
+
+ $res = $dbr->select( $tables, $fields, $conds, __METHOD__, $options );
+
+ $data = array();
+ foreach ( $res as $row ) {
+ $data[$row->lang][$row->rev_user_text] = $row->count;
+ }
+
+ $cache->set( $cachekey, $data, 3600 );
+
+ return $data;
+ }
+
+ public function fetchTranslatorsPortal( $natives ) {
+ $titles = array();
+ foreach ( $natives as $code => $_ ) {
+ $titles[] = Title::capitalize( $code, NS_PORTAL ) . '/translators';
+ }
+
+ $dbr = wfGetDB( DB_SLAVE );
+ $tables = array( 'page', 'revision', 'text' );
+ $vars = array_merge(
+ Revision::selectTextFields(),
+ array( 'page_title', 'page_namespace' ),
+ Revision::selectFields()
+ );
+ $conds = array(
+ 'page_latest = rev_id',
+ 'rev_text_id = old_id',
+ 'page_namespace' => NS_PORTAL,
+ 'page_title' => $titles,
+ );
+
+ $res = $dbr->select( $tables, $vars, $conds, __METHOD__ );
+
+ $users = array();
+ $lb = new LinkBatch;
+
+ foreach ( $res as $row ) {
+ $rev = new Revision( $row );
+ $text = ContentHandler::getContentText( $rev->getContent() );
+ $code = strtolower( preg_replace( '!/translators$!', '', $row->page_title ) );
+
+ preg_match_all( '!{{[Uu]ser\|([^}|]+)!', $text, $matches, PREG_SET_ORDER );
+ foreach ( $matches as $match ) {
+ $user = Title::capitalize( $match[1], NS_USER );
+ $lb->add( NS_USER, $user );
+ $lb->add( NS_USER_TALK, $user );
+ if ( !isset( $users[$code] ) ) {
+ $users[$code] = array();
+ }
+ $users[$code][strtr( $user, '_', ' ' )] = -1;
+ }
+ }
+
+ $lb->execute();
+
+ return $users;
+ }
+
+ protected function outputLanguageCloud( $names ) {
+ $out = $this->getOutput();
+
+ $langs = $this->languageCloud();
+ $out->addHtml( '<div class="tagcloud autonym">' );
+ $langs = $this->shuffle_assoc( $langs );
+ foreach ( $langs as $k => $v ) {
+ $name = isset( $names[$k] ) ? $names[$k] : $k;
+ $size = round( log( $v ) * 20 ) + 10;
+
+ $params = array(
+ 'href' => "#$k",
+ 'class' => 'tag',
+ 'style' => "font-size:$size%",
+ 'lang' => $k,
+ );
+
+ $tag = Html::element( 'a', $params, $name );
+ $out->addHtml( $tag . "\n" );
+ }
+ $out->addHtml( '</div>' );
+ }
+
+ protected function makeUserList( $users, $stats ) {
+ $day = 60 * 60 * 24;
+
+ // Scale of the activity colors, anything
+ // longer than this is just inactive
+ $period = $this->period;
+
+ $links = array();
+ $statsTable = new StatsTable();
+
+ foreach ( $users as $username => $count ) {
+ $title = Title::makeTitleSafe( NS_USER, $username );
+ $enc = htmlspecialchars( $username );
+
+ $attribs = array();
+ $styles = array();
+ if ( isset( $stats[$username][0] ) ) {
+ if ( $count === -1 ) {
+ $count = $stats[$username][0];
+ }
+
+ $styles['font-size'] = round( log( $count, 10 ) * 30 ) + 70 . '%';
+
+ $last = wfTimestamp( TS_UNIX ) - wfTimeStamp( TS_UNIX, $stats[$username][1] );
+ $last = round( $last / $day );
+ $attribs['title'] = $this->msg( 'supportedlanguages-activity', $username )
+ ->numParams( $count, $last )->text();
+ $last = max( 1, min( $period, $last ) );
+ $styles['border-bottom'] = '3px solid #' .
+ $statsTable->getBackgroundColor( $period - $last, $period );
+ } else {
+ $enc = "<del>$enc</del>";
+ }
+
+ $stylestr = $this->formatStyle( $styles );
+ if ( $stylestr ) {
+ $attribs['style'] = $stylestr;
+ }
+
+ $links[] = Linker::link( $title, $enc, $attribs );
+ }
+
+ // for GENDER support
+ $username = '';
+ if ( count( $users ) === 1 ) {
+ $keys = array_keys( $users );
+ $username = $keys[0];
+ }
+
+ $linkList = $this->getLanguage()->listToText( $links );
+ $html = "<p class='mw-translate-spsl-translators'>";
+ $html .= $this->msg(
+ 'supportedlanguages-translators',
+ $linkList,
+ count( $links ),
+ $username
+ )->text();
+ $html .= "</p>\n";
+ $this->getOutput()->addHTML( $html );
+ }
+
+ protected function getUserStats( $users ) {
+ $cache = wfGetCache( CACHE_ANYTHING );
+ $dbr = wfGetDB( DB_SLAVE );
+ $keys = array();
+
+ foreach ( $users as $username ) {
+ $keys[] = wfMemcKey( 'translate', 'sl-usertats', $username );
+ }
+
+ $cached = $cache->getMulti( $keys );
+ $data = array();
+
+ foreach ( $users as $index => $username ) {
+ $cachekey = $keys[$index];
+
+ if ( !$this->purge && isset( $cached[$cachekey] ) ) {
+ $data[$username] = $cached[$cachekey];
+ continue;
+ }
+
+ $tables = array( 'user', 'revision' );
+ $fields = array( 'user_name', 'user_editcount', 'MAX(rev_timestamp) as lastedit' );
+ $conds = array(
+ 'user_name' => $username,
+ 'user_id = rev_user',
+ );
+
+ $res = $dbr->selectRow( $tables, $fields, $conds, __METHOD__ );
+ $data[$username] = array( $res->user_editcount, $res->lastedit );
+
+ $cache->set( $cachekey, $data[$username], 3600 );
+ }
+
+ return $data;
+ }
+
+ protected function formatStyle( $styles ) {
+ $stylestr = '';
+ foreach ( $styles as $key => $value ) {
+ $stylestr .= "$key:$value;";
+ }
+
+ return $stylestr;
+ }
+
+ function shuffle_assoc( $list ) {
+ if ( !is_array( $list ) ) {
+ return $list;
+ }
+
+ $keys = array_keys( $list );
+ shuffle( $keys );
+ $random = array();
+ foreach ( $keys as $key )
+ $random[$key] = $list[$key];
+
+ return $random;
+ }
+
+ protected function preQueryUsers( $users ) {
+ $lb = new LinkBatch;
+ foreach ( $users as $translators ) {
+ foreach ( $translators as $user => $count ) {
+ $user = Title::capitalize( $user, NS_USER );
+ $lb->add( NS_USER, $user );
+ $lb->add( NS_USER_TALK, $user );
+ }
+ }
+ $lb->execute();
+ }
+
+ protected function getColorLegend() {
+ $legend = '';
+ $period = $this->period;
+ $statsTable = new StatsTable();
+
+ for ( $i = 0; $i <= $period; $i += 30 ) {
+ $iFormatted = htmlspecialchars( $this->getLanguage()->formatNum( $i ) );
+ $legend .= '<span style="background-color:#' .
+ $statsTable->getBackgroundColor( $period - $i, $period ) .
+ "\"> $iFormatted</span>";
+ }
+
+ return $legend;
+ }
+}
diff --git a/MLEB/Translate/specials/SpecialTranslate.php b/MLEB/Translate/specials/SpecialTranslate.php
new file mode 100644
index 00000000..3d5f13d8
--- /dev/null
+++ b/MLEB/Translate/specials/SpecialTranslate.php
@@ -0,0 +1,991 @@
+<?php
+/**
+ * Contains logic for special page Special:Translate.
+ *
+ * @file
+ * @author Niklas Laxström
+ * @author Siebrand Mazeland
+ * @copyright Copyright © 2006-2013 Niklas Laxström, Siebrand Mazeland
+ * @license GPL-2.0+
+ */
+
+/**
+ * Implements the core of Translate extension - a special page which shows
+ * a list of messages in a format defined by Tasks.
+ *
+ * @ingroup SpecialPage TranslateSpecialPage
+ */
+class SpecialTranslate extends TranslateSpecialPage {
+ /** @var TranslateTask */
+ protected $task = null;
+
+ /** @var MessageGroup */
+ protected $group = null;
+
+ protected $defaults = null;
+ protected $nondefaults = array();
+ protected $options = null;
+
+ function __construct() {
+ parent::__construct( 'Translate' );
+ }
+
+ /**
+ * Access point for this special page.
+ */
+ public function execute( $parameters ) {
+ global $wgTranslateBlacklist, $wgContLang;
+
+ $out = $this->getOutput();
+ $out->addModules( 'ext.translate.special.translate' );
+
+ $this->setHeaders();
+
+ $request = $this->getRequest();
+ // @todo Move to api or so
+ if ( $parameters === 'editpage' ) {
+ $editpage = TranslationEditPage::newFromRequest( $request );
+
+ if ( $editpage ) {
+ $editpage->execute();
+
+ return;
+ }
+ }
+
+ if ( !defined( 'ULS_VERSION' ) ) {
+ throw new ErrorPageError(
+ 'translate-ulsdep-title',
+ 'translate-ulsdep-body'
+ );
+ }
+
+ $this->setup( $parameters );
+ $isBeta = self::isBeta( $request );
+
+ if ( $this->options['group'] === '' || ( $isBeta && !$this->group ) ) {
+ $this->groupInformation();
+
+ return;
+ }
+
+ $errors = $this->getFormErrors();
+
+ if ( $isBeta && $this->options['taction'] !== 'export' ) {
+ $out->addHTML( Html::openElement( 'div', array(
+ 'class' => 'grid ext-translate-container',
+ ) ) );
+
+ $out->addHTML( $this->tuxSettingsForm( $errors ) );
+ $out->addHTML( $this->messageSelector() );
+ } else {
+ TranslateUtils::addSpecialHelpLink( $out, 'Help:Extension:Translate/Translation_example' );
+ // Show errors nicely.
+ $out->addHTML( $this->settingsForm( $errors ) );
+ }
+
+ if ( count( $errors ) ) {
+ return;
+ } else {
+ $checks = array(
+ $this->options['group'],
+ strtok( $this->options['group'], '-' ),
+ '*'
+ );
+
+ foreach ( $checks as $check ) {
+ if ( isset( $wgTranslateBlacklist[$check][$this->options['language']] ) ) {
+ $reason = $wgTranslateBlacklist[$check][$this->options['language']];
+ $out->addWikiMsg( 'translate-page-disabled', $reason );
+ if ( $isBeta ) {
+ // Close div.ext-translate-container
+ $out->addHTML( Html::closeElement( 'div' ) );
+ }
+ return;
+ }
+ }
+ }
+
+ $params = array( $this->getContext(), $this->task, $this->group, $this->options );
+ if ( !wfRunHooks( 'SpecialTranslate::executeTask', $params ) ) {
+ return;
+ }
+
+ // Initialise and get output.
+ if ( !$this->task ) {
+ return;
+ }
+
+ $this->task->init( $this->group, $this->options, $this->nondefaults, $this->getContext() );
+ $output = $this->task->execute();
+
+ if ( $this->task->plainOutput() ) {
+ $out->disable();
+ header( 'Content-type: text/plain; charset=UTF-8' );
+ echo $output;
+ } else {
+ $description = $this->getGroupDescription( $this->group );
+
+ $taskid = $this->options['task'];
+ if ( in_array( $taskid, array( 'untranslated', 'reviewall' ), true ) ) {
+ $hasOptional = count( $this->group->getTags( 'optional' ) );
+ if ( $hasOptional ) {
+ $linktext = $this->msg( 'translate-page-description-hasoptional-open' )->escaped();
+ $params = array( 'task' => 'optional' ) + $this->nondefaults;
+ $link = Linker::link( $this->getTitle(), $linktext, array(), $params );
+ $note = $this->msg( 'translate-page-description-hasoptional' )
+ ->rawParams( $link )->parseAsBlock();
+
+ if ( $description ) {
+ $description .= '<br />' . $note;
+ } else {
+ $description = $note;
+ }
+ }
+ }
+
+ $status = $this->getWorkflowStatus();
+ if ( $status !== false ) {
+ $description = $status . $description;
+ }
+
+ $groupId = $this->group->getId();
+ // PHP is such an awesome language
+ $priorityLangs = TranslateMetadata::get( $groupId, 'prioritylangs' );
+ $priorityLangs = array_flip( array_filter( explode( ',', $priorityLangs ) ) );
+ $priorityLangsCount = count( $priorityLangs );
+ if ( $priorityLangsCount && !isset( $priorityLangs[$this->options['language']] ) ) {
+ $priorityForce = TranslateMetadata::get( $groupId, 'priorityforce' );
+ if ( $priorityForce === 'on' ) {
+ // Hide table
+ $priorityMessageClass = 'errorbox';
+ $priorityMessageKey = 'tpt-discouraged-language-force';
+ } else {
+ $priorityMessageClass = 'warningbox';
+ $priorityMessageKey = 'tpt-discouraged-language';
+ }
+
+ $priorityLanguageNames = array();
+ $languageNames = TranslateUtils::getLanguageNames( $this->getLanguage()->getCode() );
+ foreach ( array_keys( $priorityLangs ) as $langCode ) {
+ $priorityLanguageNames[] = $languageNames[$langCode];
+ }
+
+ $priorityReason = TranslateMetadata::get( $groupId, 'priorityreason' );
+ if ( $priorityReason !== '' ) {
+ $priorityReason = "\n\n" . $this->msg(
+ 'tpt-discouraged-language-reason',
+ Xml::element( 'span',
+ // The reason is probably written in the content language
+ array(
+ 'lang' => $wgContLang->getCode(),
+ 'dir' => $wgContLang->getDir(),
+ ),
+ $priorityReason
+ )
+ )->parse();
+ }
+
+ $description .= Html::RawElement( 'div',
+ array( 'class' => $priorityMessageClass ),
+ $this->msg(
+ $priorityMessageKey,
+ '', // param formerly used for reason, now empty
+ $languageNames[$this->options['language']],
+ $this->getLanguage()->listToText( $priorityLanguageNames )
+ )->parseAsBlock() . $priorityReason
+ );
+ }
+
+ if ( $description ) {
+ $description = Xml::fieldset(
+ $this->msg( 'translate-page-description-legend' )->text(),
+ $description,
+ array( 'class' => 'mw-sp-translate-description' )
+ );
+ }
+
+ if ( $isBeta ) {
+ $out->addHTML( $output );
+ } else {
+ $out->addHTML( $description . $output );
+ }
+
+ ApiTranslateUser::trackGroup( $this->group, $this->getUser() );
+ }
+
+ if ( $isBeta ) {
+ $out->addHTML( Html::closeElement( 'div' ) );
+ }
+ }
+
+ /**
+ * Returns array of errors in the form parameters.
+ */
+ protected function getFormErrors() {
+ $errors = array();
+
+ $codes = TranslateUtils::getLanguageNames( 'en' );
+ if ( !$this->options['language'] || !isset( $codes[$this->options['language']] ) ) {
+ $errors['language'] = $this->msg( 'translate-page-no-such-language' )->text();
+ $this->options['language'] = $this->defaults['language'];
+ }
+
+ if ( !$this->group instanceof MessageGroup ) {
+ $errors['group'] = $this->msg( 'translate-page-no-such-group' )->text();
+ $this->options['group'] = $this->defaults['group'];
+ } else {
+ $languages = $this->group->getTranslatableLanguages();
+
+ if ( $languages !== null && !isset( $languages[$this->options['language']] ) ) {
+ $errors['language'] = $this->msg( 'translate-language-disabled' )->text();
+ }
+ }
+
+ return $errors;
+ }
+
+ protected function setup( $parameters ) {
+ $request = $this->getRequest();
+ $isBeta = self::isBeta( $request );
+
+ $defaults = array(
+ /* str */'taction' => 'translate',
+ /* str */'task' => $isBeta ? 'custom' : 'untranslated',
+ /* str */'language' => $this->getLanguage()->getCode(),
+ /* str */'group' => $isBeta ? '!additions' : '',
+ /* str */'offset' => '', // Used to be int, now str
+ /* int */'limit' => $isBeta ? 0 : 100,
+ /* int */'optional' => '0',
+ );
+
+ // Dump everything here
+ $nondefaults = array();
+
+ $parameters = array_map( 'trim', explode( ';', $parameters ) );
+ $pars = array();
+
+ foreach ( $parameters as $_ ) {
+ if ( $_ === '' ) {
+ continue;
+ }
+
+ if ( strpos( $_, '=' ) !== false ) {
+ list( $key, $value ) = array_map( 'trim', explode( '=', $_, 2 ) );
+ } else {
+ $key = 'group';
+ $value = $_;
+ }
+
+ $pars[$key] = $value;
+ }
+
+ foreach ( $defaults as $v => $t ) {
+ if ( is_bool( $t ) ) {
+ $r = isset( $pars[$v] ) ? (bool)$pars[$v] : $defaults[$v];
+ $r = $request->getBool( $v, $r );
+ } elseif ( is_int( $t ) ) {
+ $r = isset( $pars[$v] ) ? (int)$pars[$v] : $defaults[$v];
+ $r = $request->getInt( $v, $r );
+ } elseif ( is_string( $t ) ) {
+ $r = isset( $pars[$v] ) ? (string)$pars[$v] : $defaults[$v];
+ $r = $request->getText( $v, $r );
+ }
+
+ if ( !isset( $r ) ) {
+ throw new MWException( '$r was not set' );
+ }
+
+ wfAppendToArrayIfNotDefault( $v, $r, $defaults, $nondefaults );
+ }
+
+ // Fix defaults based on what we got
+ if ( isset( $nondefaults['taction'] ) ) {
+ if ( $nondefaults['taction'] === 'proofread' ) {
+ if ( $this->getUser()->isAllowed( 'translate-messagereview' ) ) {
+ $defaults['task'] = 'acceptqueue';
+ } else {
+ $defaults['task'] = 'reviewall';
+ }
+ } elseif ( $nondefaults['taction'] === 'export' ) {
+ $defaults['task'] = '';
+ }
+ }
+
+ if ( $isBeta ) {
+ /* @todo fix all the places in Translate to create correct links.
+ * The least effort way is to change them once we totally drop the
+ * old UI. The penalty is only http redirect in some cases. More
+ * effort would be to create utilities like makeTranslationLink
+ * and makeProofreadLink.
+ */
+ $this->rewriteLegacyUrls( $nondefaults );
+ }
+
+ $this->defaults = $defaults;
+ $this->nondefaults = $nondefaults;
+ wfRunHooks( 'TranslateGetSpecialTranslateOptions', array( &$defaults, &$nondefaults ) );
+
+ $this->options = $nondefaults + $defaults;
+ $this->group = MessageGroups::getGroup( $this->options['group'] );
+ if ( $this->group ) {
+ $this->options['group'] = $this->group->getId();
+ }
+ $this->task = TranslateTasks::getTask( $this->options['task'] );
+
+ if ( $this->group && MessageGroups::isDynamic( $this->group ) ) {
+ $this->group->setLanguage( $this->options['language'] );
+ }
+ }
+
+ protected function rewriteLegacyUrls( $params ) {
+ if (
+ !isset( $params['task'] ) &&
+ isset( $params['taction'] ) && $params['taction'] === 'proofread'
+ ) {
+ $params['task'] = 'acceptqueue';
+ }
+
+ if ( !isset( $params['task'] ) || $params['task'] === 'custom' ) {
+ return;
+ }
+
+ // Not used in TUX
+ unset( $params['taction'], $params['limit'], $params['offset'] );
+
+ $out = $this->getOutput();
+
+ switch ( $params['task'] ) {
+ case 'reviewall':
+ case 'acceptqueue':
+ // @todo handle these two separately
+ unset( $params['task'] );
+ $params['action'] = 'proofread';
+ $out->redirect( $this->getTitle()->getLocalUrl( $params ) );
+ break;
+
+ case 'view':
+ unset( $params['task'] );
+ $params['filter'] = '';
+ $out->redirect( $this->getTitle()->getLocalUrl( $params ) );
+ break;
+
+ // Optional does not directly map to the new UI.
+ // Handle it as untranslated with optional filter.
+ case 'optional':
+ $params['optional'] = 1;
+ case 'untranslated':
+ unset( $params['task'] );
+ $params['filter'] = '!translated';
+ $out->redirect( $this->getTitle()->getLocalUrl( $params ) );
+ break;
+ }
+ }
+
+ protected function settingsForm( $errors ) {
+ global $wgScript;
+
+ $taction = $this->options['taction'];
+
+ $selectors = array(
+ 'group' => $this->groupSelector(),
+ 'language' => $this->languageSelector(),
+ 'limit' => $this->limitSelector(),
+ );
+
+ if ( $taction === 'export' ) {
+ unset( $selectors['limit'] );
+ }
+
+ $options = array();
+ foreach ( $selectors as $g => $selector ) {
+ // Give grep a chance to find the usages:
+ // translate-page-group, translate-page-language, translate-page-limit
+ $options[] = self::optionRow(
+ $this->msg( 'translate-page-' . $g )->escaped(),
+ $selector,
+ array_key_exists( $g, $errors ) ? $errors[$g] : null
+ );
+ }
+
+ if ( $taction === 'proofread' ) {
+ $extra = $this->taskLinks( array( 'acceptqueue', 'reviewall' ) );
+ } elseif ( $taction === 'translate' ) {
+ $extra = $this->taskLinks( array( 'view', 'untranslated', 'optional' ) );
+ } elseif ( $taction === 'export' ) {
+ $extra = $this->taskLinks( array( 'export-as-po', 'export-to-file' ) );
+ } else {
+ $extra = '';
+ }
+
+ $nonEssential = Html::rawElement(
+ 'span',
+ array( 'class' => 'mw-sp-translate-nonessential' ),
+ implode( "", $options )
+ );
+
+ $button = Xml::submitButton( $this->msg( 'translate-submit' )->text() );
+
+ $formAttributes = array( 'class' => 'mw-sp-translate-settings' );
+ if ( $this->group ) {
+ $formAttributes['data-grouptype'] = get_class( $this->group );
+ }
+ $form =
+ Html::openElement( 'fieldset', $formAttributes ) .
+ Html::element( 'legend', array(), $this->msg( 'translate-page-settings-legend' )->text() ) .
+ Html::openElement( 'form', array( 'action' => $wgScript, 'method' => 'get' ) ) .
+ Html::hidden( 'title', $this->getTitle()->getPrefixedText() ) .
+ Html::hidden( 'taction', $this->options['taction'] ) .
+ "$nonEssential\n$extra\n$button\n" .
+ Html::closeElement( 'form' ) .
+ Html::closeElement( 'fieldset' );
+
+ return $form;
+ }
+
+ protected function tuxSettingsForm() {
+ $attrs = array( 'class' => 'row tux-editor-header' );
+ $selectors = $this->tuxGroupSelector() .
+ $this->tuxLanguageSelector() .
+ $this->tuxGroupDescription() .
+ $this->tuxWorkflowSelector() .
+ $this->tuxGroupWarning();
+
+ return Html::rawElement( 'div', $attrs, $selectors );
+ }
+
+ protected function messageSelector() {
+ $output = Html::openElement( 'div', array( 'class' => 'row tux-messagetable-header' ) );
+ $output .= Html::openElement( 'div', array( 'class' => 'nine columns' ) );
+ $output .= Html::openElement( 'ul', array( 'class' => 'row tux-message-selector' ) );
+ $userId = $this->getUser()->getId();
+ $tabs = array(
+ 'all' => '',
+ 'untranslated' => '!translated',
+ //'Hardest',
+ 'outdated' => 'fuzzy',
+ 'translated' => 'translated',
+ 'unproofread' => "translated|!reviewer:$userId|!last-translator:$userId",
+ );
+
+ $params = $this->nondefaults;
+ $params['task'] = 'custom';
+
+ foreach ( $tabs as $tab => $filter ) {
+ // Possible classes and messages, for grepping:
+ // tux-tab-all
+ // tux-tab-untranslated
+ // tux-tab-outdated
+ // tux-tab-translated
+ // tux-tab-unproofread
+ $tabClass = "tux-tab-$tab";
+ $taskParams = array( 'filter' => $filter ) + $params;
+ ksort( $taskParams );
+ $href = $this->getTitle()->getLocalUrl( $taskParams );
+ $link = Html::element( 'a', array( 'href' => $href ), $this->msg( $tabClass ) );
+ $output .= Html::rawElement( 'li', array(
+ 'class' => 'column ' . $tabClass,
+ 'data-filter' => $filter,
+ 'data-title' => $tab,
+ ), $link );
+ }
+
+ // Check boxes for the "more" tab.
+ // The array keys are used as the name attribute of the checkbox.
+ // in the id attribute as tux-option-KEY,
+ // and and also for the data-filter attribute.
+ // The message is shown as the check box's label.
+ $options = array(
+ 'optional' => $this->msg( 'tux-message-filter-optional-messages-label' )->escaped(),
+ );
+
+ $container = Html::openElement( 'ul', array( 'class' => 'column tux-message-selector' ) );
+ foreach ( $options as $optFilter => $optLabel ) {
+ $container .= Html::rawElement( 'li',
+ array( 'class' => 'column' ),
+ Xml::checkLabel(
+ $optLabel,
+ $optFilter,
+ "tux-option-$optFilter",
+ isset( $this->nondefaults[$optFilter] ),
+ array( 'data-filter' => $optFilter )
+ )
+ );
+ }
+
+ $container .= Html::closeElement( 'ul' );
+
+ // @todo FIXME: Hard coded "ellipsis".
+ $output .= Html::openElement( 'li', array( 'class' => 'column more' ) ) .
+ '...' .
+ $container .
+ Html::closeElement( 'li' );
+
+ $output .= Html::closeElement( 'ul' );
+ $output .= Html::closeElement( 'div' ); //close nine columns
+ $output .= Html::openElement( 'div', array( 'class' => 'three columns' ) );
+ $output .= Html::openElement( 'div', array( 'class' => 'two columns' ) );
+ $output .= Html::element( 'div', array( 'class' => 'tux-message-filter-box-icon' ) );
+ $output .= Html::closeElement( 'div' ); // close two columns
+ $output .= Html::openElement( 'div', array( 'class' => 'ten columns' ) );
+ $output .= Html::element( 'input', array(
+ 'class' => 'tux-message-filter-box',
+ 'type' => 'search',
+ ) );
+ $output .= Html::closeElement( 'div' ); // close ten columns
+
+ $output .= Html::closeElement( 'div' ); // close three columns
+
+ $output .= Html::closeElement( 'div' ); // close the row
+
+ return $output;
+ }
+
+ protected function tuxGroupSelector() {
+ $group = MessageGroups::getGroup( $this->options['group'] );
+
+ // @todo FIXME The selector should have expanded parent-child lists
+ $output = Html::openElement( 'div', array(
+ 'class' => 'eight columns tux-breadcrumb',
+ 'data-language' => $this->options['language'],
+ ) ) .
+ Html::element( 'span',
+ array( 'class' => 'grouptitle' ),
+ $this->msg( 'translate-msggroupselector-projects' )->escaped()
+ ) .
+ Html::element( 'span',
+ array( 'class' => 'grouptitle grouplink expanded' ),
+ $this->msg( 'translate-msggroupselector-search-all' )->escaped()
+ ) .
+ Html::element( 'span',
+ array(
+ 'class' => 'grouptitle grouplink tail',
+ 'data-msggroupid' => $this->options['group'],
+ ),
+ $group->getLabel()
+ ) .
+ Html::closeElement( 'div' );
+
+ return $output;
+ }
+
+ protected function tuxLanguageSelector() {
+ // Changes here must also be reflected when the language
+ // changes on the client side
+ global $wgTranslateDocumentationLanguageCode;
+
+ if ( $this->options['language'] === $wgTranslateDocumentationLanguageCode ) {
+ // The name will be displayed in the UI language,
+ // so use for lang and dir
+ $targetLangCode = $this->getLanguage()->getCode();
+ $targetLangDir = $this->getLanguage()->getDir();
+ $targetLangName = $this->msg( 'translate-documentation-language' )->text();
+ } else {
+ $targetLangCode = $this->options['language'];
+ $targetLangDir = Language::factory( $this->options['language'] )->getDir();
+ $targetLangName = Language::fetchLanguageName( $this->options['language'] );
+ }
+
+ // No-break space is added for spacing after the label
+ // and to ensure separation of words (in Arabic, for example)
+ return Html::rawElement( 'div',
+ array( 'class' => 'four columns ext-translate-language-selector' ),
+ Html::element( 'span',
+ array( 'class' => 'ext-translate-language-selector-label' ),
+ $this->msg( 'tux-languageselector' )->text()
+ ) .
+ '&#160;' . // nbsp
+ Html::element( 'span',
+ array(
+ 'class' => 'uls',
+ 'lang' => $targetLangCode,
+ 'dir' => $targetLangDir,
+ ),
+ $targetLangName
+ )
+ );
+ }
+
+ protected function tuxGroupDescription() {
+ return Html::rawElement(
+ 'div',
+ array( 'class' => 'twelve columns description' ),
+ $this->getGroupDescription( $this->group )
+ );
+ }
+
+ protected function tuxGroupWarning() {
+ // Initialize an empty warning box to be filled client-side.
+ return Html::element(
+ 'div',
+ array( 'class' => 'twelve columns group-warning' ),
+ ''
+ );
+ }
+
+ /**
+ * @param $label string
+ * @param $option string
+ * @param $error string Html
+ * @return string
+ */
+ private static function optionRow( $label, $option, $error = null ) {
+ return "<label>$label&nbsp;$option</label>" .
+ ( $error ?
+ Html::rawElement( 'span', array( 'class' => 'mw-sp-translate-error' ), $error ) :
+ ''
+ ) . ' ';
+ }
+
+ protected function taskLinks( $tasks ) {
+ $user = $this->getUser();
+
+ foreach ( $tasks as $index => $id ) {
+ $task = TranslateTasks::getTask( $id );
+
+ if ( !$task ) {
+ unset( $tasks[$index] );
+ continue;
+ }
+
+ if ( !$task->isAllowedFor( $user ) ) {
+ unset( $tasks[$index] );
+ continue;
+ }
+ }
+
+ $sep = Html::element( 'br' );
+ $count = count( $tasks );
+ if ( $count === 0 ) {
+ return $sep . $this->msg( 'translate-taction-disabled' )->escaped();
+ } elseif ( $count === 1 ) {
+ $id = array_pop( $tasks );
+
+ // If there is only one task, and it is the default task, hide it.
+ // If someone disables the default task for action, we will show
+ // a list of alternative task(s), but not showing anything
+ // by default. */
+ if ( $this->defaults['task'] === $id ) {
+ return '';
+ }
+
+ // Give grep a chance to find the usages:
+ // translate-taskui-view, translate-taskui-untranslated, translate-taskui-optional,
+ // translate-taskui-acceptqueue, translate-taskui-reviewall,
+ // translate-taskui-export-to-file, translate-taskui-export-as-po
+ return $sep . Html::rawElement( 'label', array(),
+ Xml::radio( 'task', $id, true ) . ' ' .
+ $this->msg( "translate-taskui-$id" )->escaped()
+ );
+ } else {
+ $output = '';
+
+ foreach ( $tasks as $id ) {
+ // Give grep a chance to find the usages:
+ // translate-taskui-view, translate-taskui-untranslated, translate-taskui-optional,
+ // translate-taskui-acceptqueue, translate-taskui-reviewall,
+ // translate-taskui-export-to-file, translate-taskui-export-as-po
+ $output .= Html::rawElement( 'label', array(),
+ Xml::radio( 'task', $id, $this->options['task'] === $id ) . ' ' .
+ $this->msg( "translate-taskui-$id" )->escaped()
+ ) . ' ';
+ }
+
+ return $sep . $output;
+ }
+ }
+
+ protected function groupSelector() {
+ $groups = MessageGroups::getAllGroups();
+ uasort( $groups, array( 'MessageGroups', 'groupLabelSort' ) );
+ $dynamic = MessageGroups::getDynamicGroups();
+ $groups = array_keys( array_merge( $dynamic, $groups ) );
+
+ $selected = $this->options['group'];
+
+ $selector = new XmlSelect( 'group', 'group' );
+ $selector->setDefault( $selected );
+
+ foreach ( $groups as $id ) {
+ $group = MessageGroups::getGroup( $id );
+ $hide = MessageGroups::getPriority( $group ) === 'discouraged';
+
+ if ( !$group->exists() || ( $hide && $id !== $selected ) ) {
+ continue;
+ }
+
+ $selector->addOption( $group->getLabel(), $id );
+ }
+
+ return $selector->getHTML();
+ }
+
+ protected function languageSelector() {
+ return TranslateUtils::languageSelector(
+ $this->getLanguage()->getCode(),
+ $this->options['language']
+ );
+ }
+
+ protected function limitSelector() {
+ $items = array( 100, 1000, 5000 );
+ $selector = new XmlSelect( 'limit', 'limit' );
+ $selector->setDefault( $this->options['limit'] );
+
+ foreach ( $items as $count ) {
+ $selector->addOption(
+ $this->msg( 'translate-page-limit-option' )->numParams( $count )->text(),
+ $count
+ );
+ }
+
+ return $selector->getHTML();
+ }
+
+ protected function getGroupDescription( MessageGroup $group ) {
+ $description = $group->getDescription( $this->getContext() );
+ if ( $description !== null ) {
+ return $this->getOutput()->parse( $description, false );
+ }
+
+ return '';
+ }
+
+ /**
+ * This function renders the default list of groups when no parameters
+ * are passed.
+ */
+ public function groupInformation() {
+ $output = $this->getOutput();
+
+ // If we get here in the TUX mode, it means that invalid group
+ // was requested. There is default group for no params case.
+ if ( self::isBeta( $this->getRequest() ) ) {
+ $output->addHtml( Html::rawElement(
+ 'div',
+ array( 'class' => 'twelve columns group-warning' ),
+ $this->msg( 'tux-translate-page-no-such-group' )->parse()
+ ) );
+ }
+
+ $output->addHtml(
+ Html::openElement( 'div', array(
+ 'class' => 'eight columns tux-breadcrumb',
+ 'data-language' => $this->options['language'],
+ ) ) .
+ '<span class="grouptitle">' .
+ $this->msg( 'translate-msggroupselector-projects' )->escaped() .
+ '</span>
+ <span class="grouptitle grouplink tail">' .
+ $this->msg( 'translate-msggroupselector-search-all' )->escaped() .
+ '</span>
+ </div>'
+ );
+ }
+
+ protected function tuxWorkflowSelector() {
+ return Html::element( 'div', array( 'class' => 'tux-workflow twelve columns' ) );
+ }
+
+ protected function getWorkflowStatus() {
+ $stateConfig = $this->group->getMessageGroupStates()->getStates();
+ if ( !$stateConfig ) {
+ return false;
+ }
+
+ if ( MessageGroups::isDynamic( $this->group ) ) {
+ return false;
+ }
+
+ $dbr = wfGetDB( DB_SLAVE );
+ $current = $dbr->selectField(
+ 'translate_groupreviews',
+ 'tgr_state',
+ array( 'tgr_group' => $this->options['group'], 'tgr_lang' => $this->options['language'] ),
+ __METHOD__
+ );
+
+ $options = array();
+ $stateConfig = array_merge(
+ array( '' => array( 'right' => 'impossible-right' ) ),
+ $stateConfig
+ );
+
+ $user = $this->getUser();
+ if ( $user->isAllowed( 'translate-groupreview' ) ) {
+ // Add an option for every state
+ foreach ( $stateConfig as $state => $config ) {
+ $stateMessage = $this->msg( "translate-workflow-state-$state" );
+ $stateText = $stateMessage->isBlank() ? $state : $stateMessage->text();
+
+ $attributes = array(
+ 'value' => $state,
+ );
+
+ if ( $state === strval( $current ) ) {
+ $attributes['selected'] = 'selected';
+ }
+
+ if ( is_array( $config ) && isset( $config['right'] )
+ && !$user->isAllowed( $config['right'] )
+ ) {
+ // Grey out the forbidden option
+ $attributes['disabled'] = 'disabled';
+ }
+
+ $options[] = Html::element( 'option', $attributes, $stateText );
+ }
+ $stateIndicator = Html::rawElement( 'select',
+ array(
+ 'class' => 'mw-translate-workflowselector',
+ 'name' => 'workflow',
+ ),
+ implode( "\n", $options )
+ );
+
+ $setButtonAttributes = array(
+ 'type' => 'button',
+ 'id' => 'mw-translate-workflowset',
+ 'data-token' => ApiGroupReview::getToken( 0, '' ),
+ 'data-group' => $this->options['group'],
+ 'data-language' => $this->options['language'],
+ 'style' => 'visibility: hidden;',
+ 'value' => 'Set',
+ );
+ $stateIndicator .= Html::element( 'input', $setButtonAttributes );
+ } elseif ( strval( $current ) !== '' ) {
+ $stateIndicator = $current;
+ } else {
+ $stateIndicator = $this->msg( 'translate-workflow-state-' )->escaped();
+ }
+
+ $message = $this->msg( 'translate-workflowstatus' )->rawParams( $stateIndicator );
+ $box = Html::rawElement(
+ 'div',
+ array( 'id' => 'mw-sp-translate-workflow' ),
+ $message->escaped()
+ );
+
+ return $box;
+ }
+
+ /**
+ * Adds the task-based tabs on Special:Translate and few other special pages.
+ * Hook: SkinTemplateNavigation::SpecialPage
+ * @since 2012-02-10
+ */
+ static function tabify( Skin $skin, array &$tabs ) {
+ $title = $skin->getTitle();
+ list( $alias, $sub ) = SpecialPageFactory::resolveAlias( $title->getText() );
+
+ $pagesInGroup = array( 'Translate', 'LanguageStats', 'MessageGroupStats' );
+ if ( !in_array( $alias, $pagesInGroup, true ) ) {
+ return true;
+ }
+
+ $skin->getOutput()->addModules( 'ext.translate.tabgroup' );
+
+ // Extract subpage syntax, otherwise the values are not passed forward
+ $params = array();
+ if ( trim( $sub ) !== '' ) {
+ if ( $alias === 'Translate' || $alias === 'MessageGroupStats' ) {
+ $params['group'] = $sub;
+ } elseif ( $alias === 'LanguageStats' ) {
+ // Breaks if additional parameters besides language are code provided
+ $params['language'] = $sub;
+ }
+ }
+
+ $request = $skin->getRequest();
+ // However, query string params take precedence
+ $params['language'] = $request->getVal( 'language' );
+ $params['group'] = $request->getVal( 'group' );
+
+ $taction = $request->getVal( 'taction', 'translate' );
+
+ $translate = SpecialPage::getTitleFor( 'Translate' );
+ $languagestats = SpecialPage::getTitleFor( 'LanguageStats' );
+ $messagegroupstats = SpecialPage::getTitleFor( 'MessageGroupStats' );
+
+ // Clear the special page tab that might be there already
+ $tabs['namespaces'] = array();
+
+ $tabs['namespaces']['translate'] = array(
+ 'text' => wfMessage( 'translate-taction-translate' )->text(),
+ 'href' => $translate->getLocalUrl( $params ),
+ 'class' => 'tux-tab',
+ );
+
+ if ( $alias === 'Translate' && $taction === 'translate' ) {
+ $tabs['namespaces']['translate']['class'] .= ' selected';
+ }
+
+ if ( !self::isBeta( $request ) ) {
+ $tabs['namespaces']['proofread'] = array(
+ 'text' => wfMessage( 'translate-taction-proofread' )->text(),
+ 'href' => $translate->getLocalUrl( array( 'taction' => 'proofread' ) + $params ),
+ 'class' => 'tux-tab',
+ );
+
+ if ( $alias === 'Translate' && $taction === 'proofread' ) {
+ $tabs['namespaces']['proofread']['class'] .= ' selected';
+ }
+ }
+
+ $tabs['views']['lstats'] = array(
+ 'text' => wfMessage( 'translate-taction-lstats' )->text(),
+ 'href' => $languagestats->getLocalUrl( $params ),
+ 'class' => 'tux-tab',
+ );
+ if ( $alias === 'LanguageStats' ) {
+ $tabs['views']['lstats']['class'] .= ' selected';
+ }
+
+ $tabs['views']['mstats'] = array(
+ 'text' => wfMessage( 'translate-taction-mstats' )->text(),
+ 'href' => $messagegroupstats->getLocalUrl( $params ),
+ 'class' => 'tux-tab',
+ );
+
+ if ( $alias === 'MessageGroupStats' ) {
+ $tabs['views']['mstats']['class'] .= ' selected';
+ }
+
+ // Kind of hackish, but works for now
+ global $wgTranslateTasks;
+ foreach ( array_keys( $wgTranslateTasks ) as $taskname ) {
+ if ( !preg_match( '/^export-/', $taskname ) ) {
+ continue;
+ }
+
+ $tabs['views']['export'] = array(
+ 'text' => wfMessage( 'translate-taction-export' )->text(),
+ 'href' => $translate->getLocalUrl( array( 'taction' => 'export' ) + $params ),
+ 'class' => 'tux-tab',
+ );
+
+ if ( $alias === 'Translate' && $taction === 'export' ) {
+ $tabs['views']['export']['class'] .= ' selected';
+ }
+
+ // We only need the tab to apper once ;)
+ break;
+ }
+
+ return true;
+ }
+
+ public static function isBeta( WebRequest $request ) {
+ $tux = $request->getVal( 'tux', null );
+
+ if ( $tux === null ) {
+ $tux = $request->getCookie( 'tux', null, true );
+ } elseif ( $tux ) {
+ $request->response()->setCookie( 'tux', 1 );
+ } else {
+ $request->response()->setCookie( 'tux', 0 );
+ }
+
+ return $tux;
+ }
+}
diff --git a/MLEB/Translate/specials/SpecialTranslationStash.php b/MLEB/Translate/specials/SpecialTranslationStash.php
new file mode 100644
index 00000000..11ed0628
--- /dev/null
+++ b/MLEB/Translate/specials/SpecialTranslationStash.php
@@ -0,0 +1,203 @@
+<?php
+/**
+ * TranslationStash - Translator screening page
+ *
+ * @file
+ * @author Santhosh Thottingal
+ * @license GPL-2.0+
+ */
+
+/**
+ * Special page for new users to translate example messages.
+ *
+ * @ingroup SpecialPage TranslateSpecialPage
+ */
+class SpecialTranslationStash extends TranslateSpecialPage {
+ /** @var TranslationStashStorage */
+ protected $stash;
+
+ function __construct() {
+ parent::__construct( 'TranslationStash' );
+ }
+
+ public function execute( $params ) {
+ global $wgTranslateSandboxLimit, $wgTranslateSecondaryPermissionUrl;
+
+ $this->setHeaders();
+ $out = $this->getOutput();
+
+ $this->stash = new TranslationStashStorage( wfGetDB( DB_MASTER ) );
+
+ if ( !$this->hasPermissionToUse() ) {
+ if ( $this->getUser()->isLoggedIn() ) {
+ $out->redirect(
+ Title::newFromText( $wgTranslateSecondaryPermissionUrl )->getLocalUrl()
+ );
+
+ return;
+ }
+
+ $out->redirect( Title::newMainPage()->getLocalUrl() );
+
+ return;
+ }
+
+ $out->addJsConfigVars( 'wgTranslateSandboxLimit', $wgTranslateSandboxLimit );
+ $out->addModules( 'ext.translate.special.translationstash' );
+ $this->showPage();
+ }
+
+ /**
+ * Checks that the user is in the sandbox. Also handles special overrides
+ * mainly used for integration testing.
+ *
+ * @return bool
+ */
+ protected function hasPermissionToUse() {
+ global $wgTranslateTestUsers;
+
+ $request = $this->getRequest();
+ $user = $this->getUser();
+
+ if ( in_array( $user->getName(), $wgTranslateTestUsers, true ) ) {
+ if ( $request->getVal( 'integrationtesting' ) === 'activatestash' ) {
+ $user->addGroup( 'translate-sandboxed' );
+
+ return true;
+ } elseif ( $request->getVal( 'integrationtesting' ) === 'deactivatestash' ) {
+ $user->removeGroup( 'translate-sandboxed' );
+ $this->stash->deleteTranslations( $user );
+
+ return false;
+ }
+ }
+
+ if ( !TranslateSandbox::isSandboxed( $user ) ) {
+ return false;
+ }
+
+ return true;
+ }
+
+ /**
+ * Generates the whole page html and appends it to output
+ */
+ protected function showPage() {
+ $out = $this->getOutput();
+ $user = $this->getUser();
+
+ $count = count( $this->stash->getTranslations( $user ) );
+ if ( $count === 0 ) {
+ $progress = $this->msg( 'translate-translationstash-initialtranslation' )->parse();
+ } else {
+ $progress = $this->msg( 'translate-translationstash-translations' )
+ ->numParams( $count )->parse();
+ }
+
+ $out->addHtml( <<<HTML
+<div class="grid">
+ <div class="row translate-welcome-header">
+ <h1>
+ {$this->msg( 'translate-translationstash-welcome', $user->getName() )->parse()}
+ </h1>
+ <p>
+ {$this->msg( 'translate-translationstash-welcome-note' )->parse()}
+ </p>
+ </div>
+ <div class="row translate-stash-control">
+ <div class="six columns stash-stats">
+ {$progress}
+ </div>
+ <div class="six columns ext-translate-language-selector right">
+ {$this->tuxLanguageSelector()}
+ </div>
+ </div>
+ {$this->getMessageTable()}
+ <div class="row limit-reached hide"></div>
+</div>
+HTML
+ );
+ }
+
+ protected function getMessageTable() {
+ $sourceLang = $this->getSourceLanguage();
+ $targetLang = $this->getTargetLanguage();
+
+ $list = Html::element( 'div', array(
+ 'class' => 'row tux-messagelist',
+ 'data-sourcelangcode' => $sourceLang->getCode(),
+ 'data-sourcelangdir' => $sourceLang->getDir(),
+ 'data-targetlangcode' => $targetLang->getCode(),
+ 'data-targetlangdir' => $targetLang->getDir(),
+ ) );
+
+ return $list;
+ }
+
+ protected function tuxLanguageSelector() {
+ // The name will be displayed in the UI language,
+ // so use for lang and dir
+ $language = $this->getTargetLanguage();
+ $targetLangName = Language::fetchLanguageName( $language->getCode() );
+
+ $label = Html::element(
+ 'span',
+ array( 'class' => 'ext-translate-language-selector-label' ),
+ $this->msg( 'tux-languageselector' )->text()
+ );
+
+ $trigger = Html::element(
+ 'span',
+ array(
+ 'class' => 'uls',
+ 'lang' => $language->getCode(),
+ 'dir' => $language->getDir(),
+ ),
+ $targetLangName
+ );
+
+ // No-break space is added for spacing after the label
+ // and to ensure separation of words (in Arabic, for example)
+ return "$label&#160;$trigger";
+ }
+
+ /**
+ * Returns the source language for messages.
+ * @return Language
+ */
+ protected function getSourceLanguage() {
+ // Bad
+ return Language::factory( 'en' );
+ }
+
+ /**
+ * Returns the default target language for messages.
+ * @return Language
+ */
+ protected function getTargetLanguage() {
+ $ui = $this->getLanguage();
+ $source = $this->getSourceLanguage();
+ if ( $ui->getCode() !== $source->getCode() ) {
+ return $ui;
+ }
+
+ $options = FormatJson::decode( $this->getUser()->getOption( 'translate-sandbox' ), true );
+ $supported = TranslateUtils::getLanguageNames( 'en' );
+
+ if ( isset( $options['languages' ] ) ) {
+ foreach ( $options['languages'] as $code ) {
+ if ( !isset( $supported[$code] ) ) {
+ continue;
+ }
+
+ if ( $code !== $source->getCode() ) {
+ return Language::factory( $code );
+ }
+ }
+ }
+
+ // User has not chosen any valid language. Pick one at random.
+ $codes = array_keys( $supported );
+ return Language::factory( $codes[rand( 0, count( $codes ) - 1 )] );
+ }
+}
diff --git a/MLEB/Translate/specials/SpecialTranslationStats.php b/MLEB/Translate/specials/SpecialTranslationStats.php
new file mode 100644
index 00000000..40e35e64
--- /dev/null
+++ b/MLEB/Translate/specials/SpecialTranslationStats.php
@@ -0,0 +1,1114 @@
+<?php
+/**
+ * Contains logic for special page Special:TranslationStats.
+ *
+ * @file
+ * @author Niklas Laxström
+ * @author Siebrand Mazeland
+ * @copyright Copyright © 2008-2013, Niklas Laxström, Siebrand Mazeland
+ * @license GPL-2.0+
+ */
+
+/**
+ * @defgroup Stats Statistics
+ * Collection of code to produce various kinds of statistics.
+ */
+
+/**
+ * Includable special page for generating graphs on translations.
+ *
+ * @ingroup SpecialPage TranslateSpecialPage Stats
+ */
+class SpecialTranslationStats extends TranslateSpecialPage {
+ /// @since 2012-03-05
+ protected static $graphs = array(
+ 'edits' => 'TranslatePerLanguageStats',
+ 'users' => 'TranslatePerLanguageStats',
+ 'registrations' => 'TranslateRegistrationStats',
+ 'reviews' => 'ReviewPerLanguageStats',
+ 'reviewers' => 'ReviewPerLanguageStats',
+ );
+
+ public function __construct() {
+ parent::__construct( 'TranslationStats' );
+ }
+
+ public function isIncludable() {
+ return true;
+ }
+
+ /**
+ * @since 2012-03-05
+ * @return array List of graph types
+ */
+ public function getGraphTypes() {
+ return array_keys( self::$graphs );
+ }
+
+ /**
+ * @since 2012-03-05
+ * @param string $type
+ * @return string
+ */
+ public function getGraphClass( $type ) {
+ return self::$graphs[$type];
+ }
+
+ public function execute( $par ) {
+ $this->getOutput()->addModules( 'ext.translate.special.translationstats' );
+
+ $opts = new FormOptions();
+ $opts->add( 'graphit', false );
+ $opts->add( 'preview', false );
+ $opts->add( 'language', '' );
+ $opts->add( 'count', 'edits' );
+ $opts->add( 'scale', 'days' );
+ $opts->add( 'days', 30 );
+ $opts->add( 'width', 600 );
+ $opts->add( 'height', 400 );
+ $opts->add( 'group', '' );
+ $opts->add( 'uselang', '' );
+ $opts->add( 'start', '' );
+ $opts->fetchValuesFromRequest( $this->getRequest() );
+
+ $pars = explode( ';', $par );
+
+ foreach ( $pars as $item ) {
+ if ( strpos( $item, '=' ) === false ) {
+ continue;
+ }
+
+ list( $key, $value ) = array_map( 'trim', explode( '=', $item, 2 ) );
+ if ( isset( $opts[$key] ) ) {
+ $opts[$key] = $value;
+ }
+ }
+
+ $opts->validateIntBounds( 'days', 1, 10000 );
+ $opts->validateIntBounds( 'width', 200, 1000 );
+ $opts->validateIntBounds( 'height', 200, 1000 );
+
+ if ( $opts['start'] !== '' ) {
+ $opts['start'] = strval( wfTimestamp( TS_MW, $opts['start'] ) );
+ }
+
+ $validScales = array( 'months', 'weeks', 'days', 'hours' );
+ if ( !in_array( $opts['scale'], $validScales ) ) {
+ $opts['scale'] = 'days';
+ }
+
+ if ( $opts['scale'] === 'hours' ) {
+ $opts->validateIntBounds( 'days', 1, 4 );
+ }
+
+ $validCounts = $this->getGraphTypes();
+ if ( !in_array( $opts['count'], $validCounts ) ) {
+ $opts['count'] = 'edits';
+ }
+
+ foreach ( array( 'group', 'language' ) as $t ) {
+ $values = array_map( 'trim', explode( ',', $opts[$t] ) );
+ $values = array_splice( $values, 0, 4 );
+ if ( $t === 'group' ) {
+ // BC for old syntax which replaced _ to | which was not allowed
+ $values = preg_replace( '~^page_~', 'page-', $values );
+ }
+ $opts[$t] = implode( ',', $values );
+ }
+
+ if ( $this->including() ) {
+ $this->getOutput()->addHTML( $this->image( $opts ) );
+ } elseif ( $opts['graphit'] ) {
+
+ if ( !class_exists( 'PHPlot' ) ) {
+ header( "HTTP/1.0 500 Multi fail" );
+ echo "PHPlot not found";
+ }
+
+ if ( !$this->getRequest()->getBool( 'debug' ) ) {
+ $this->getOutput()->disable();
+ header( 'Content-Type: image/png' );
+ header( 'Cache-Control: private, max-age=3600' );
+ header( 'Expires: ' . wfTimestamp( TS_RFC2822, time() + 3600 ) );
+ }
+ $this->draw( $opts );
+ } else {
+ $this->form( $opts );
+ }
+ }
+
+ /**
+ * Constructs the form which can be used to generate custom graphs.
+ * @param FormOptions $opts
+ */
+ protected function form( FormOptions $opts ) {
+ global $wgScript;
+
+ $this->setHeaders();
+ $out = $this->getOutput();
+ TranslateUtils::addSpecialHelpLink( $out, 'Help:Extension:Translate/Statistics_and_reporting' );
+ $out->addWikiMsg( 'translate-statsf-intro' );
+
+ $out->addHTML(
+ Xml::fieldset( $this->msg( 'translate-statsf-options' )->text() ) .
+ Html::openElement( 'form', array( 'action' => $wgScript ) ) .
+ Html::hidden( 'title', $this->getTitle()->getPrefixedText() ) .
+ Html::hidden( 'preview', 1 ) .
+ '<table>'
+ );
+
+ $submit = Xml::submitButton( $this->msg( 'translate-statsf-submit' )->text() );
+
+ $out->addHTML(
+ $this->eInput( 'width', $opts ) .
+ $this->eInput( 'height', $opts ) .
+ '<tr><td colspan="2"><hr /></td></tr>' .
+ $this->eInput( 'start', $opts, 16 ) . // Should fit yyyymmddhhmmss
+ $this->eInput( 'days', $opts ) .
+ $this->eRadio( 'scale', $opts, array( 'months', 'weeks', 'days', 'hours' ) ) .
+ $this->eRadio( 'count', $opts, $this->getGraphTypes() ) .
+ '<tr><td colspan="2"><hr /></td></tr>' .
+ $this->eLanguage( 'language', $opts ) .
+ $this->eGroup( 'group', $opts ) .
+ '<tr><td colspan="2"><hr /></td></tr>' .
+ '<tr><td colspan="2">' . $submit . '</td></tr>'
+ );
+
+ $out->addHTML(
+ '</table>' .
+ '</form>' .
+ '</fieldset>'
+ );
+
+ if ( !$opts['preview'] ) {
+ return;
+ }
+
+ $spiParams = '';
+ foreach ( $opts->getChangedValues() as $key => $v ) {
+ if ( $key === 'preview' ) {
+ continue;
+ }
+
+ if ( $spiParams !== '' ) {
+ $spiParams .= ';';
+ }
+
+ $spiParams .= wfEscapeWikiText( "$key=$v" );
+ }
+
+ if ( $spiParams !== '' ) {
+ $spiParams = '/' . $spiParams;
+ }
+
+ $titleText = $this->getTitle()->getPrefixedText();
+
+ $out->addHTML(
+ Html::element( 'hr' ) .
+ Html::element( 'pre', array(), "{{{$titleText}{$spiParams}}}" )
+ );
+
+ $out->addHTML(
+ Html::element( 'hr' ) .
+ Html::rawElement(
+ 'div',
+ array( 'style' => 'margin: 1em auto; text-align: center;' ),
+ $this->image( $opts )
+ )
+ );
+ }
+
+ /**
+ * Constructs a table row with label and input in two columns.
+ * @param string $name Option name.
+ * @param FormOptions $opts
+ * @param int $width
+ * @return string Html.
+ */
+ protected function eInput( $name, FormOptions $opts, $width = 4 ) {
+ $value = $opts[$name];
+
+ return
+ '<tr><td>' . $this->eLabel( $name ) . '</td><td>' .
+ Xml::input( $name, $width, $value, array( 'id' => $name ) ) .
+ '</td></tr>' . "\n";
+ }
+
+ /**
+ * Constructs a label for option.
+ * @param string $name Option name.
+ * @return string Html.
+ */
+ protected function eLabel( $name ) {
+ // Give grep a chance to find the usages:
+ // translate-statsf-width, translate-statsf-height, translate-statsf-start,
+ // translate-statsf-days, translate-statsf-scale, translate-statsf-count,
+ // translate-statsf-language, translate-statsf-group
+ $label = 'translate-statsf-' . $name;
+ $label = $this->msg( $label )->escaped();
+
+ return Xml::tags( 'label', array( 'for' => $name ), $label );
+ }
+
+ /**
+ * Constructs a table row with label and radio input in two columns.
+ * @param string $name Option name.
+ * @param FormOptions $opts
+ * @param string[] $alts List of alternatives.
+ * @return string Html.
+ */
+ protected function eRadio( $name, FormOptions $opts, array $alts ) {
+ // Give grep a chance to find the usages:
+ // translate-statsf-scale, translate-statsf-count
+ $label = 'translate-statsf-' . $name;
+ $label = $this->msg( $label )->escaped();
+ $s = '<tr><td>' . $label . '</td><td>';
+
+ $options = array();
+ foreach ( $alts as $alt ) {
+ $id = "$name-$alt";
+ $radio = Xml::radio( $name, $alt, $alt === $opts[$name],
+ array( 'id' => $id ) ) . ' ';
+ $options[] = $radio . ' ' . $this->eLabel( $id );
+ }
+
+ $s .= implode( ' ', $options );
+ $s .= '</td></tr>' . "\n";
+
+ return $s;
+ }
+
+ /**
+ * Constructs a table row with label and language selector in two columns.
+ * @param string $name Option name.
+ * @param FormOptions $opts
+ * @return string Html.
+ */
+ protected function eLanguage( $name, FormOptions $opts ) {
+ $value = $opts[$name];
+
+ $select = $this->languageSelector();
+ $select->setTargetId( 'language' );
+
+ return
+ '<tr><td>' . $this->eLabel( $name ) . '</td><td>' .
+ $select->getHtmlAndPrepareJs() . '<br />' .
+ Xml::input( $name, 20, $value, array( 'id' => $name ) ) .
+ '</td></tr>' . "\n";
+ }
+
+ /**
+ * Constructs a JavaScript enhanced language selector.
+ * @return JsSelectToInput
+ */
+ protected function languageSelector() {
+ if ( is_callable( array( 'LanguageNames', 'getNames' ) ) ) {
+ $languages = LanguageNames::getNames( $this->getLanguage()->getCode(),
+ LanguageNames::FALLBACK_NORMAL,
+ LanguageNames::LIST_MW_AND_CLDR
+ );
+ } else {
+ $languages = Language::fetchLanguageNames();
+ }
+
+ ksort( $languages );
+
+ $selector = new XmlSelect( 'mw-language-selector', 'mw-language-selector' );
+ foreach ( $languages as $code => $name ) {
+ $selector->addOption( "$code - $name", $code );
+ }
+
+ $jsSelect = new JsSelectToInput( $selector );
+ $jsSelect->setSourceId( 'mw-language-selector' );
+
+ return $jsSelect;
+ }
+
+ /**
+ * Constructs a table row with label and group selector in two columns.
+ * @param string $name Option name.
+ * @param FormOptions $opts
+ * @return string Html.
+ */
+ protected function eGroup( $name, FormOptions $opts ) {
+ $value = $opts[$name];
+
+ $select = $this->groupSelector();
+ $select->setTargetId( 'group' );
+
+ return
+ '<tr><td>' . $this->eLabel( $name ) . '</td><td>' .
+ $select->getHtmlAndPrepareJs() . '<br />' .
+ Xml::input( $name, 20, $value, array( 'id' => $name ) ) .
+ '</td></tr>' . "\n";
+ }
+
+ /**
+ * Constructs a JavaScript enhanced group selector.
+ * @return JsSelectToInput
+ */
+ protected function groupSelector() {
+ $groups = MessageGroups::singleton()->getGroups();
+ /**
+ * @var $group MessageGroup
+ */
+ foreach ( $groups as $key => $group ) {
+ if ( !$group->exists() ) {
+ unset( $groups[$key] );
+ continue;
+ }
+ }
+
+ ksort( $groups );
+
+ $selector = new XmlSelect( 'mw-group-selector', 'mw-group-selector' );
+ /**
+ * @var MessageGroup $name
+ */
+ foreach ( $groups as $code => $name ) {
+ $selector->addOption( $name->getLabel(), $code );
+ }
+
+ $jsSelect = new JsSelectToInput( $selector );
+ $jsSelect->setSourceId( 'mw-group-selector' );
+
+ return $jsSelect;
+ }
+
+ /**
+ * Returns an \<img> tag for graph.
+ * @param FormOptions $opts
+ * @return string Html.
+ */
+ protected function image( FormOptions $opts ) {
+ $title = $this->getTitle();
+ $cgiparams = wfArrayToCgi( array( 'graphit' => true ), $opts->getAllValues() );
+ $href = $title->getLocalUrl( $cgiparams );
+
+ return Xml::element( 'img',
+ array(
+ 'src' => $href,
+ 'width' => $opts['width'],
+ 'height' => $opts['height'],
+ )
+ );
+ }
+
+ /**
+ * Fetches and preprocesses graph data that can be fed to graph drawer.
+ * @param FormOptions $opts
+ * @return array ( string => array ) Data indexed by their date labels.
+ */
+ protected function getData( FormOptions $opts ) {
+ $dbr = wfGetDB( DB_SLAVE );
+
+ $class = $this->getGraphClass( $opts['count'] );
+ $so = new $class( $opts );
+
+ $fixedStart = $opts->getValue( 'start' ) !== '';
+
+ $now = time();
+ $period = 3600 * 24 * $opts->getValue( 'days' );
+
+ if ( $fixedStart ) {
+ $cutoff = wfTimestamp( TS_UNIX, $opts->getValue( 'start' ) );
+ } else {
+ $cutoff = $now - $period;
+ }
+ $cutoff = self::roundTimestampToCutoff( $opts['scale'], $cutoff, 'earlier' );
+
+ $start = $cutoff;
+
+ if ( $fixedStart ) {
+ $end = self::roundTimestampToCutoff( $opts['scale'], $start + $period, 'later' ) - 1;
+ } else {
+ $end = null;
+ }
+
+ $tables = array();
+ $fields = array();
+ $conds = array();
+ $type = __METHOD__;
+ $options = array();
+
+ $so->preQuery( $tables, $fields, $conds, $type, $options, $start, $end );
+ $res = $dbr->select( $tables, $fields, $conds, $type, $options );
+ wfDebug( __METHOD__ . "-queryend\n" );
+
+ // Start processing the data
+ $dateFormat = $so->getDateFormat();
+ $increment = self::getIncrement( $opts['scale'] );
+
+ $labels = $so->labels();
+ $keys = array_keys( $labels );
+ $values = array_pad( array(), count( $labels ), 0 );
+ $defaults = array_combine( $keys, $values );
+
+ $data = array();
+ // Allow 10 seconds in the future for processing time
+ $lastValue = $end !== null ? $end : $now + 10;
+ $lang = $this->getLanguage();
+ while ( $cutoff <= $lastValue ) {
+ $date = $lang->sprintfDate( $dateFormat, wfTimestamp( TS_MW, $cutoff ) );
+ $cutoff += $increment;
+ $data[$date] = $defaults;
+ }
+
+ // Processing
+ $labelToIndex = array_flip( $labels );
+
+ foreach ( $res as $row ) {
+ $indexLabels = $so->indexOf( $row );
+ if ( $indexLabels === false ) {
+ continue;
+ }
+
+ foreach ( (array)$indexLabels as $i ) {
+ if ( !isset( $labelToIndex[$i] ) ) {
+ continue;
+ }
+ $date = $lang->sprintfDate( $dateFormat, $so->getTimestamp( $row ) );
+ // Ignore values outside range
+ if ( !isset( $data[$date] ) ) {
+ continue;
+ }
+
+ $data[$date][$labelToIndex[$i]]++;
+ }
+ }
+
+ // Don't display dummy label
+ if ( count( $labels ) === 1 && $labels[0] === 'all' ) {
+ $labels = array();
+ }
+
+ foreach ( $labels as &$label ) {
+ if ( strpos( $label, '@' ) === false ) {
+ continue;
+ }
+ list( $groupId, $code ) = explode( '@', $label, 2 );
+ if ( $code && $groupId ) {
+ $code = TranslateUtils::getLanguageName( $code, $lang->getCode() ) . " ($code)";
+ $group = MessageGroups::getGroup( $groupId );
+ $group = $group ? $group->getLabel() : $groupId;
+ $label = "$group @ $code";
+ } elseif ( $code ) {
+ $label = TranslateUtils::getLanguageName( $code, $lang->getCode() ) . " ($code)";
+ } elseif ( $groupId ) {
+ $group = MessageGroups::getGroup( $groupId );
+ $label = $group ? $group->getLabel() : $groupId;
+ }
+ }
+
+ if ( $end == null ) {
+ $last = array_splice( $data, -1, 1 );
+ // Indicator that the last value is not full
+ $data[key( $last ) . '*'] = current( $last );
+ }
+
+ return array( $labels, $data );
+ }
+
+ /**
+ * Gets the closest earlieast timestamp that corresponds to start of a
+ * period in given scale, like, midnight, monday or first day of the month.
+ * @param string $scale One of hours, days, weeks, months
+ * @param int $cutoff Timestamp in unix format.
+ * @param string $direction One of earlier, later
+ * @return int
+ */
+ protected static function roundTimestampToCutoff( $scale, $cutoff, $direction = 'earlier' ) {
+ $dir = $direction === 'earlier' ? -1 : 1;
+
+ /* Ensure that the first item in the graph has full data even
+ * if it doesn't align with the given 'days' boundary */
+ if ( $scale === 'hours' ) {
+ $cutoff += self::roundingAddition( $cutoff, 3600, $dir );
+ } elseif ( $scale === 'days' ) {
+ $cutoff += self::roundingAddition( $cutoff, 86400, $dir );
+ } elseif ( $scale === 'weeks' ) {
+ /* Here we assume that week starts on monday, which does not
+ * always hold true. Go Xwards day by day until we are on monday */
+ while ( date( 'D', $cutoff ) !== "Mon" ) {
+ $cutoff += $dir * 86400;
+ }
+ // Round to nearest day
+ $cutoff -= ( $cutoff % 86400 );
+ } elseif ( $scale === 'months' ) {
+ // Go Xwards/ day by day until we are on the first day of the month
+ while ( date( 'j', $cutoff ) !== "1" ) {
+ $cutoff += $dir * 86400;
+ }
+ // Round to nearest day
+ $cutoff -= ( $cutoff % 86400 );
+ }
+
+ return $cutoff;
+ }
+
+ /**
+ * @param int $ts
+ * @param int $amount
+ * @param int $dir
+ * @return int
+ */
+ protected static function roundingAddition( $ts, $amount, $dir ) {
+ if ( $dir === -1 ) {
+ return -1 * ( $ts % $amount );
+ } else {
+ return $amount - ( $ts % $amount );
+ }
+ }
+
+ /**
+ * Adds raw image data of the graph to the output.
+ * @param FormOptions $opts
+ */
+ public function draw( FormOptions $opts ) {
+ global $wgTranslatePHPlotFont;
+
+ $width = $opts->getValue( 'width' );
+ $height = $opts->getValue( 'height' );
+ // Define the object
+ $plot = new PHPlot( $width, $height );
+
+ list( $legend, $resData ) = $this->getData( $opts );
+ $count = count( $resData );
+ $skip = intval( $count / ( $width / 60 ) - 1 );
+ $i = $count;
+ $data = array();
+
+ foreach ( $resData as $date => $edits ) {
+ if ( $skip > 0 ) {
+ if ( ( $count - $i ) % $skip !== 0 ) {
+ $date = '';
+ }
+ }
+
+ if ( strpos( $date, ';' ) !== false ) {
+ list( , $date ) = explode( ';', $date, 2 );
+ }
+
+ array_unshift( $edits, $date );
+ $data[] = $edits;
+ $i--;
+ }
+
+ $font = FCFontFinder::findFile( $this->getLanguage()->getCode() );
+
+ if ( $font ) {
+ $plot->SetDefaultTTFont( $font );
+ } else {
+ $plot->SetDefaultTTFont( $wgTranslatePHPlotFont );
+ }
+ $plot->SetDataValues( $data );
+
+ if ( $legend !== null ) {
+ $plot->SetLegend( $legend );
+ }
+
+ $numberFont = FCFontFinder::findFile( 'en' );
+
+ $plot->setFont( 'x_label', $numberFont, 8 );
+ $plot->setFont( 'y_label', $numberFont, 8 );
+ // Give grep a chance to find the usages:
+ // translate-stats-edits, translate-stats-users, translate-stats-registrations,
+ // translate-stats-reviews, translate-stats-reviewers
+ $yTitle = $this->msg( 'translate-stats-' . $opts['count'] )->escaped();
+
+ // Turn off X axis ticks and labels because they get in the way:
+ $plot->SetYTitle( $yTitle );
+ $plot->SetXTickLabelPos( 'none' );
+ $plot->SetXTickPos( 'none' );
+ $plot->SetXLabelAngle( 45 );
+
+ $max = max( array_map( 'max', $resData ) );
+ $max = self::roundToSignificant( $max, 1 );
+ $max = round( $max, intval( -log( $max, 10 ) ) );
+
+ $yTick = 10;
+ while ( $max / $yTick > $height / 20 ) {
+ $yTick *= 2;
+ }
+
+ // If we have very small case, ensure that there is at least one tick
+ $yTick = min( $max, $yTick );
+ $yTick = self::roundToSignificant( $yTick );
+ $plot->SetYTickIncrement( $yTick );
+ $plot->SetPlotAreaWorld( null, 0, null, max( $max, 10 ) );
+
+ $plot->SetTransparentColor( 'white' );
+ $plot->SetBackgroundColor( 'white' );
+
+ // Draw it
+ $plot->DrawGraph();
+ }
+
+ /**
+ * Enhanced version of round that supports rounding up to a given scale
+ * relative to the number itself. Examples:
+ * - roundToSignificant( 1234, 0 ) = 10000
+ * - roundToSignificant( 1234, 1 ) = 2000
+ * - roundToSignificant( 1234, 2 ) = 1300
+ * - roundToSignificant( 1234, 3 ) = 1240
+ *
+ * @param int $number Number to round.
+ * @param int $significant How many signficant numbers to keep.
+ * @return int Rounded number.
+ */
+ public static function roundToSignificant( $number, $significant = 1 ) {
+ $log = (int)log( $number, 10 );
+ $nonSignificant = max( 0, $log - $significant + 1 );
+ $factor = pow( 10, $nonSignificant );
+
+ return intval( ceil( $number / $factor ) * $factor );
+ }
+
+ /**
+ * Returns an increment in seconds for a given scale.
+ * The increment must be small enough that we will hit every item in the
+ * scale when using different multiples of the increment. It should be
+ * large enough to avoid hitting the same item multiple times.
+ * @param string $scale Either months, weeks, days or hours.
+ * @return int Number of seconds in the increment.
+ */
+ public static function getIncrement( $scale ) {
+ $increment = 3600 * 24;
+ if ( $scale === 'months' ) {
+ /* We use increment to fill up the values. Use number small enough
+ * to ensure we hit each month */
+ $increment = 3600 * 24 * 15;
+ } elseif ( $scale === 'weeks' ) {
+ $increment = 3600 * 24 * 7;
+ } elseif ( $scale === 'hours' ) {
+ $increment = 3600;
+ }
+
+ return $increment;
+ }
+}
+
+/**
+ * Interface for producing different kinds of graphs.
+ * The graphs are based on data queried from the database.
+ * @ingroup Stats
+ */
+interface TranslationStatsInterface {
+ /**
+ * Constructor. The implementation can access the graph options, but not
+ * define new ones.
+ * @param FormOptions $opts
+ */
+ public function __construct( FormOptions $opts );
+
+ /**
+ * Query details that the graph must fill.
+ * @param array $tables Empty list. Append table names.
+ * @param array $fields Empty list. Append field names.
+ * @param array $conds Empty array. Append select conditions.
+ * @param string $type Append graph type (used to identify queries).
+ * @param array $options Empty array. Append extra query options.
+ * @param string $start Precalculated start cutoff timestamp
+ * @param string $end Precalculated end cutoff timestamp
+ */
+ public function preQuery( &$tables, &$fields, &$conds, &$type, &$options, $start, $end );
+
+ /**
+ * Return the indexes which this result contributes to.
+ * Return 'all' if only one variable is measured. Return false if none.
+ * @param array $row Database Result Row
+ */
+ public function indexOf( $row );
+
+ /**
+ * Return the names of the variables being measured.
+ * Return 'all' if only one variable is measured. Must match indexes
+ * returned by indexOf() and contain them all.
+ * @return string[]
+ */
+ public function labels();
+
+ /**
+ * Return the timestamp associated with this result row.
+ * @param array $row Database Result Row
+ * @return \string Timestamp.
+ */
+ public function getTimestamp( $row );
+
+ /**
+ * Return time formatting string.
+ * @see Language::sprintfDate()
+ * @return string
+ */
+ public function getDateFormat();
+}
+
+/**
+ * Provides some hand default implementations for TranslationStatsInterface.
+ * @ingroup Stats
+ */
+abstract class TranslationStatsBase implements TranslationStatsInterface {
+ /**
+ * @var FormOptions Graph options.
+ */
+ protected $opts;
+
+ public function __construct( FormOptions $opts ) {
+ $this->opts = $opts;
+ }
+
+ public function indexOf( $row ) {
+ return array( 'all' );
+ }
+
+ public function labels() {
+ return array( 'all' );
+ }
+
+ public function getDateFormat() {
+ $dateFormat = 'Y-m-d';
+ if ( $this->opts['scale'] === 'months' ) {
+ $dateFormat = 'Y-m';
+ } elseif ( $this->opts['scale'] === 'weeks' ) {
+ $dateFormat = 'Y-\WW';
+ } elseif ( $this->opts['scale'] === 'hours' ) {
+ $dateFormat .= ';H';
+ }
+
+ return $dateFormat;
+ }
+
+ protected static function makeTimeCondition( $field, $start, $end ) {
+ $db = wfGetDB( DB_SLAVE );
+
+ $conds = array();
+ if ( $start !== null ) {
+ $conds[] = "$field >= '{$db->timestamp( $start )}'";
+ }
+ if ( $end !== null ) {
+ $conds[] = "$field <= '{$db->timestamp( $end )}'";
+ }
+
+ return $conds;
+ }
+
+ /// @since 2012-03-05
+ protected static function namespacesFromGroups( $groupIds ) {
+ $namespaces = array();
+ foreach ( $groupIds as $id ) {
+ $group = MessageGroups::getGroup( $id );
+ if ( $group ) {
+ $namespace = $group->getNamespace();
+ $namespaces[$namespace] = true;
+ }
+ }
+
+ return array_keys( $namespaces );
+ }
+}
+
+/**
+ * Graph which provides statistics on active users and number of translations.
+ * @ingroup Stats
+ */
+class TranslatePerLanguageStats extends TranslationStatsBase {
+ /// array ( string => bool ) Cache used to count active users only once per day.
+ protected $usercache;
+
+ protected $codes, $groups;
+
+ public function __construct( FormOptions $opts ) {
+ parent::__construct( $opts );
+ // This query is slow... ensure a lower limit.
+ $opts->validateIntBounds( 'days', 1, 200 );
+ }
+
+ public function preQuery( &$tables, &$fields, &$conds, &$type, &$options, $start, $end ) {
+ global $wgTranslateMessageNamespaces;
+
+ $db = wfGetDB( DB_SLAVE );
+
+ $tables = array( 'recentchanges' );
+ $fields = array( 'rc_timestamp' );
+
+ $conds = array(
+ 'rc_namespace' => $wgTranslateMessageNamespaces,
+ 'rc_bot' => 0,
+ 'rc_type != ' . RC_LOG,
+ );
+
+ $timeConds = self::makeTimeCondition( 'rc_timestamp', $start, $end );
+ $conds = array_merge( $conds, $timeConds );
+
+ $options = array( 'ORDER BY' => 'rc_timestamp' );
+
+ $this->groups = array_filter( array_map( 'trim', explode( ',', $this->opts['group'] ) ) );
+ $this->codes = array_filter( array_map( 'trim', explode( ',', $this->opts['language'] ) ) );
+
+ $namespaces = self::namespacesFromGroups( $this->groups );
+ if ( count( $namespaces ) ) {
+ $conds['rc_namespace'] = $namespaces;
+ }
+
+ $languages = array();
+ foreach ( $this->codes as $code ) {
+ $languages[] = 'rc_title ' . $db->buildLike( $db->anyString(), "/$code" );
+ }
+ if ( count( $languages ) ) {
+ $conds[] = $db->makeList( $languages, LIST_OR );
+ }
+
+ $fields[] = 'rc_title';
+
+ if ( $this->groups ) {
+ $fields[] = 'rc_namespace';
+ }
+
+ if ( $this->opts['count'] === 'users' ) {
+ $fields[] = 'rc_user_text';
+ }
+
+ $type .= '-perlang';
+ }
+
+ public function indexOf( $row ) {
+ // We need to check that there is only one user per day.
+ if ( $this->opts['count'] === 'users' ) {
+ $date = $this->formatTimestamp( $row->rc_timestamp );
+
+ if ( isset( $this->usercache[$date][$row->rc_user_text] ) ) {
+ return -1;
+ } else {
+ $this->usercache[$date][$row->rc_user_text] = 1;
+ }
+ }
+
+ // Do not consider language-less pages.
+ if ( strpos( $row->rc_title, '/' ) === false ) {
+ return false;
+ }
+
+ // No filters, just one key to track.
+ if ( !$this->groups && !$this->codes ) {
+ return 'all';
+ }
+
+ // The key-building needs to be in sync with ::labels().
+ list( $key, $code ) = TranslateUtils::figureMessage( $row->rc_title );
+
+ $groups = array();
+ $codes = array();
+
+ if ( $this->groups ) {
+ /*
+ * Get list of keys that the message belongs to, and filter
+ * out those which are not requested.
+ */
+ $groups = TranslateUtils::messageKeyToGroups( $row->rc_namespace, $key );
+ $groups = array_intersect( $this->groups, $groups );
+ }
+
+ if ( $this->codes ) {
+ $codes = array( $code );
+ }
+
+ return $this->combineTwoArrays( $groups, $codes );
+ }
+
+ public function labels() {
+ return $this->combineTwoArrays( $this->groups, $this->codes );
+ }
+
+ public function getTimestamp( $row ) {
+ return $row->rc_timestamp;
+ }
+
+ /**
+ * Makes a label for variable. If group or language code filters, or both
+ * are used, combine those in a pretty way.
+ * @param string $group Group name.
+ * @param string $code Language code.
+ * @return string Label.
+ */
+ protected function makeLabel( $group, $code ) {
+ if ( $group || $code ) {
+ return "$group@$code";
+ } else {
+ return 'all';
+ }
+ }
+
+ /**
+ * Cross-product of two lists with string results, where either
+ * list can be empty.
+ * @param string[] $groups Group names.
+ * @param string[] $codes Language codes.
+ * @return string[] Labels.
+ */
+ protected function combineTwoArrays( $groups, $codes ) {
+ if ( !count( $groups ) ) {
+ $groups[] = false;
+ }
+
+ if ( !count( $codes ) ) {
+ $codes[] = false;
+ }
+
+ $items = array();
+ foreach ( $groups as $group ) {
+ foreach ( $codes as $code ) {
+ $items[] = $this->makeLabel( $group, $code );
+ }
+ }
+
+ return $items;
+ }
+
+ /**
+ * Returns unique index for given item in the scale being used.
+ * Called a lot, so performance intensive.
+ * @param string $timestamp Timestamp in mediawiki format.
+ * @return string
+ */
+ protected function formatTimestamp( $timestamp ) {
+ global $wgContLang;
+
+ switch ( $this->opts['scale'] ) {
+ case 'hours' :
+ $cut = 4;
+ break;
+ case 'days' :
+ $cut = 6;
+ break;
+ case 'months':
+ $cut = 8;
+ break;
+ default :
+ return $wgContLang->sprintfDate( $this->getDateFormat(), $timestamp );
+ }
+
+ return substr( $timestamp, 0, -$cut );
+ }
+}
+
+/**
+ * Graph which provides statistics about amount of registered users in a given time.
+ * @ingroup Stats
+ */
+class TranslateRegistrationStats extends TranslationStatsBase {
+ public function preQuery( &$tables, &$fields, &$conds, &$type, &$options, $start, $end ) {
+ $tables = 'user';
+ $fields = 'user_registration';
+ $conds = self::makeTimeCondition( 'user_registration', $start, $end );
+ $type .= '-registration';
+ $options = array();
+ }
+
+ public function getTimestamp( $row ) {
+ return $row->user_registration;
+ }
+}
+
+/**
+ * Graph which provides statistics on number of reviews and reviewers.
+ * @since 2012-03-05
+ * @ingroup Stats
+ */
+class ReviewPerLanguageStats extends TranslatePerLanguageStats {
+ public function preQuery( &$tables, &$fields, &$conds, &$type, &$options, $start, $end ) {
+ global $wgTranslateMessageNamespaces;
+
+ $db = wfGetDB( DB_SLAVE );
+
+ $tables = array( 'logging' );
+ $fields = array( 'log_timestamp' );
+
+ $conds = array(
+ 'log_namespace' => $wgTranslateMessageNamespaces,
+ 'log_action' => 'message',
+ );
+
+ $timeConds = self::makeTimeCondition( 'log_timestamp', $start, $end );
+ $conds = array_merge( $conds, $timeConds );
+
+ $options = array( 'ORDER BY' => 'log_timestamp' );
+
+ $this->groups = array_filter( array_map( 'trim', explode( ',', $this->opts['group'] ) ) );
+ $this->codes = array_filter( array_map( 'trim', explode( ',', $this->opts['language'] ) ) );
+
+ $namespaces = self::namespacesFromGroups( $this->groups );
+ if ( count( $namespaces ) ) {
+ $conds['log_namespace'] = $namespaces;
+ }
+
+ $languages = array();
+ foreach ( $this->codes as $code ) {
+ $languages[] = 'log_title ' . $db->buildLike( $db->anyString(), "/$code" );
+ }
+ if ( count( $languages ) ) {
+ $conds[] = $db->makeList( $languages, LIST_OR );
+ }
+
+ $fields[] = 'log_title';
+
+ if ( $this->groups ) {
+ $fields[] = 'log_namespace';
+ }
+
+ if ( $this->opts['count'] === 'reviewers' ) {
+ $fields[] = 'log_user_text';
+ }
+
+ $type .= '-reviews';
+ }
+
+ public function indexOf( $row ) {
+ // We need to check that there is only one user per day.
+ if ( $this->opts['count'] === 'reviewers' ) {
+ $date = $this->formatTimestamp( $row->log_timestamp );
+
+ if ( isset( $this->usercache[$date][$row->log_user_text] ) ) {
+ return -1;
+ } else {
+ $this->usercache[$date][$row->log_user_text] = 1;
+ }
+ }
+
+ // Do not consider language-less pages.
+ if ( strpos( $row->log_title, '/' ) === false ) {
+ return false;
+ }
+
+ // No filters, just one key to track.
+ if ( !$this->groups && !$this->codes ) {
+ return 'all';
+ }
+
+ // The key-building needs to be in sync with ::labels().
+ list( $key, $code ) = TranslateUtils::figureMessage( $row->log_title );
+
+ $groups = array();
+ $codes = array();
+
+ if ( $this->groups ) {
+ /* Get list of keys that the message belongs to, and filter
+ * out those which are not requested. */
+ $groups = TranslateUtils::messageKeyToGroups( $row->log_namespace, $key );
+ $groups = array_intersect( $this->groups, $groups );
+ }
+
+ if ( $this->codes ) {
+ $codes = array( $code );
+ }
+
+ return $this->combineTwoArrays( $groups, $codes );
+ }
+
+ public function labels() {
+ return $this->combineTwoArrays( $this->groups, $this->codes );
+ }
+
+ public function getTimestamp( $row ) {
+ return $row->log_timestamp;
+ }
+}
diff --git a/MLEB/Translate/specials/SpecialTranslations.php b/MLEB/Translate/specials/SpecialTranslations.php
new file mode 100644
index 00000000..973ead9a
--- /dev/null
+++ b/MLEB/Translate/specials/SpecialTranslations.php
@@ -0,0 +1,309 @@
+<?php
+/**
+ * Contains logic for special page Special:Translations.
+ *
+ * @file
+ * @author Siebrand Mazeland
+ * @author Niklas Laxstörm
+ * @copyright Copyright © 2008-2013 Niklas Laxström, Siebrand Mazeland
+ * @license GPL-2.0+
+ */
+
+/**
+ * Implements a special page which shows all translations for a message.
+ * Bits taken from SpecialPrefixindex.php and TranslateTasks.php
+ *
+ * @ingroup SpecialPage TranslateSpecialPage
+ */
+class SpecialTranslations extends SpecialAllpages {
+ function __construct() {
+ parent::__construct( 'Translations' );
+ }
+
+ protected function getGroupName() {
+ return 'pages';
+ }
+
+ /**
+ * Entry point : initialise variables and call subfunctions.
+ * @param string $par Message key. Becomes "MediaWiki:Allmessages" when called like
+ * Special:Translations/MediaWiki:Allmessages (default null)
+ */
+ function execute( $par ) {
+ $this->setHeaders();
+ $this->outputHeader();
+ $this->includeAssets();
+
+ $out = $this->getOutput();
+
+ if ( $this->including() ) {
+ $title = Title::newFromText( $par );
+ if ( !$title ) {
+ $out->addWikiMsg( 'translate-translations-including-no-param' );
+ } else {
+ $this->showTranslations( $title );
+ }
+
+ return;
+ }
+
+ /**
+ * GET values.
+ */
+ $request = $this->getRequest();
+ $message = $request->getText( 'message' );
+ $namespace = $request->getInt( 'namespace', NS_MAIN );
+
+ if ( $message !== '' ) {
+ $title = Title::newFromText( $message, $namespace );
+ } else {
+ $title = Title::newFromText( $par, $namespace );
+ }
+
+ TranslateUtils::addSpecialHelpLink(
+ $out,
+ 'Help:Extension:Translate/Statistics_and_reporting#Translations_in_all_languages'
+ );
+
+ if ( !$title ) {
+ $title = Title::makeTitle( NS_MEDIAWIKI, '' );
+ $out->addHTML( $this->namespaceMessageForm( $title ) );
+ } else {
+ $out->addHTML( $this->namespaceMessageForm( $title ) . '<br />' );
+ $this->showTranslations( $title );
+ }
+ }
+
+ /**
+ * Message input fieldset
+ *
+ * @param Title $title (default: null)
+ * @return string HTML for fieldset.
+ */
+ function namespaceMessageForm( Title $title = null ) {
+ global $wgScript;
+
+ $namespaces = new XmlSelect( 'namespace', 'namespace' );
+ $namespaces->setDefault( $title->getNamespace() );
+
+ foreach ( $this->getSortedNamespaces() as $text => $index ) {
+ $namespaces->addOption( $text, $index );
+ }
+
+ $out = Xml::openElement( 'div', array( 'class' => 'namespaceoptions' ) );
+ $out .= Xml::openElement( 'form', array( 'method' => 'get', 'action' => $wgScript ) );
+ $out .= Html::hidden( 'title', $this->getTitle()->getPrefixedText() );
+ $out .= Xml::openElement( 'fieldset' );
+ $out .= Xml::element(
+ 'legend',
+ null,
+ $this->msg( 'translate-translations-fieldset-title' )->text()
+ );
+ $out .= Xml::openElement( 'table', array( 'id' => 'nsselect', 'class' => 'allpages' ) );
+ $out .= "<tr>
+ <td class='mw-label'>" .
+ Xml::label( $this->msg( 'translate-translations-messagename' )->text(), 'message' ) .
+ "</td>
+ <td class='mw-input'>" .
+ Xml::input( 'message', 30, $title->getText(), array( 'id' => 'message' ) ) .
+ "</td>
+ </tr>
+ <tr>
+ <td class='mw-label'>" .
+ Xml::label( $this->msg( 'translate-translations-project' )->text(), 'namespace' ) .
+ "</td>
+ <td class='mw-input'>" .
+ $namespaces->getHTML() . ' ' .
+ Xml::submitButton( $this->msg( 'allpagessubmit' )->text() ) .
+ "</td>
+ </tr>";
+ $out .= Xml::closeElement( 'table' );
+ $out .= Xml::closeElement( 'fieldset' );
+ $out .= Xml::closeElement( 'form' );
+ $out .= Xml::closeElement( 'div' );
+
+ return $out;
+ }
+
+ /**
+ * Returns sorted array of namespaces.
+ *
+ * @return array ( string => int )
+ */
+ public function getSortedNamespaces() {
+ global $wgTranslateMessageNamespaces, $wgContLang;
+
+ $nslist = array();
+ foreach ( $wgTranslateMessageNamespaces as $ns ) {
+ $nslist[$wgContLang->getFormattedNsText( $ns )] = $ns;
+ }
+ ksort( $nslist );
+
+ return $nslist;
+ }
+
+ /**
+ * Builds a table with all translations of $title.
+ *
+ * @param Title $title (default: null)
+ */
+ function showTranslations( Title $title ) {
+ $handle = new MessageHandle( $title );
+ $namespace = $title->getNamespace();
+ $message = $handle->getKey();
+
+ if ( !$handle->isValid() ) {
+ $this->getOutput()->addWikiMsg( 'translate-translations-no-message', $title->getPrefixedText() );
+
+ return;
+ }
+
+ $dbr = wfGetDB( DB_SLAVE );
+
+ $res = $dbr->select( 'page',
+ array( 'page_namespace', 'page_title' ),
+ array(
+ 'page_namespace' => $namespace,
+ 'page_title ' . $dbr->buildLike( "$message/", $dbr->anyString() ),
+ ),
+ __METHOD__,
+ array(
+ 'ORDER BY' => 'page_title',
+ 'USE INDEX' => 'name_title',
+ )
+ );
+
+ if ( !$res->numRows() ) {
+ $this->getOutput()->addWikiMsg(
+ 'translate-translations-no-message',
+ $title->getPrefixedText()
+ );
+
+ return;
+ } else {
+ $this->getOutput()->addWikiMsg(
+ 'translate-translations-count',
+ $this->getLanguage()->formatNum( $res->numRows() )
+ );
+ }
+
+ // Normal output.
+ $titles = array();
+
+ foreach ( $res as $s ) {
+ $titles[] = $s->page_title;
+ }
+
+ $pageInfo = TranslateUtils::getContents( $titles, $namespace );
+
+ $tableheader = Xml::openElement( 'table', array(
+ 'class' => 'mw-sp-translate-table sortable'
+ ) );
+
+ $tableheader .= Xml::openElement( 'tr' );
+ $tableheader .= Xml::element( 'th', null, $this->msg( 'allmessagesname' )->text() );
+ $tableheader .= Xml::element( 'th', null, $this->msg( 'allmessagescurrent' )->text() );
+ $tableheader .= Xml::closeElement( 'tr' );
+
+ // Adapted version of TranslateUtils:makeListing() by Nikerabbit.
+ $out = $tableheader;
+
+ $canTranslate = $this->getUser()->isAllowed( 'translate' );
+
+ $ajaxPageList = array();
+ $historyText = "&#160;<sup>" .
+ $this->msg( 'translate-translations-history-short' )->escaped() .
+ "</sup>&#160;";
+ $separator = $this->msg( 'word-separator' )->plain();
+
+ foreach ( $res as $s ) {
+ $key = $s->page_title;
+ $tTitle = Title::makeTitle( $s->page_namespace, $key );
+ $ajaxPageList[] = $tTitle->getPrefixedDBkey();
+ $tHandle = new MessageHandle( $tTitle );
+
+ $code = $tHandle->getCode();
+
+ $text = TranslateUtils::getLanguageName( $code, $this->getLanguage()->getCode() );
+ $text .= $separator;
+ $text .= $this->msg( 'parentheses' )->params( $code )->plain();
+ $text = htmlspecialchars( $text );
+
+ if ( $canTranslate ) {
+ $tools['edit'] = TranslationHelpers::ajaxEditLink(
+ $tTitle,
+ $text
+ );
+ } else {
+ $tools['edit'] = Linker::link( $tTitle, $text );
+ }
+
+ $tools['history'] = Linker::link(
+ $tTitle,
+ $historyText,
+ array(
+ 'action',
+ 'title' => $this->msg( 'history-title', $tTitle->getPrefixedDBkey() )->text()
+ ),
+ array( 'action' => 'history' )
+ );
+
+ if ( MessageHandle::hasFuzzyString( $pageInfo[$key][0] ) || $tHandle->isFuzzy() ) {
+ $class = 'orig';
+ } else {
+ $class = 'def';
+ }
+
+ $leftColumn = $tools['history'] . $tools['edit'];
+ $out .= Xml::tags( 'tr', array( 'class' => $class ),
+ Xml::tags( 'td', null, $leftColumn ) .
+ Xml::tags( 'td', array( 'lang' => $code, 'dir' => Language::factory( $code )->getDir() ),
+ TranslateUtils::convertWhiteSpaceToHTML( $pageInfo[$key][0] ) )
+ );
+ }
+
+ $out .= Xml::closeElement( 'table' );
+ $this->getOutput()->addHTML( $out );
+
+ $vars = array( 'trlKeys' => $ajaxPageList );
+ $this->getOutput()->addScript( Skin::makeVariablesScript( $vars ) );
+ }
+
+ /**
+ * Get a self-referential title object
+ *
+ * For backward compatibility for https://gerrit.wikimedia.org/r/#/c/103587.
+ * Should be removed when the lowest supported version is MediaWiki 1.23.
+ *
+ * @param string|bool $subpage
+ * @return Title|void
+ */
+ public function getTitle( $subpage = false ) {
+ if ( method_exists( $this, 'getPageTitle' ) ) {
+ return $this->getPageTitle();
+ } else {
+ return self::getTitleFor( $this->mName, $subpage );
+ }
+ }
+
+ /**
+ * Get code for a page name
+ *
+ * @param string $name Page title (f.e. "MediaWiki:Main_page/nl").
+ * @return string Language code
+ */
+ private function getCode( $name ) {
+ $from = strrpos( $name, '/' );
+
+ return substr( $name, $from + 1 );
+ }
+
+ /**
+ * Add JavaScript assets
+ */
+ private function includeAssets() {
+ $out = $this->getOutput();
+ TranslationHelpers::addModules( $out );
+ $out->addModules( 'ext.translate.messagetable' );
+ }
+}
diff --git a/MLEB/Translate/specials/TranslateSpecialPage.php b/MLEB/Translate/specials/TranslateSpecialPage.php
new file mode 100644
index 00000000..8d8f9e34
--- /dev/null
+++ b/MLEB/Translate/specials/TranslateSpecialPage.php
@@ -0,0 +1,37 @@
+<?php
+/**
+ * Contains logic for all special pages of the Translate extension
+ *
+ * @file
+ * @author Siebrand Mazeland
+ * @copyright Copyright © 2013 Siebrand Mazeland
+ * @license GPL-2.0+
+ */
+
+/**
+ * A special page that all special pages of the Translate extension should use.
+ *
+ * @ingroup SpecialPage TranslateSpecialPage
+ */
+class TranslateSpecialPage extends SpecialPage {
+ /**
+ * Get a self-referential title object
+ *
+ * For backward compatibility for https://gerrit.wikimedia.org/r/#/c/103587.
+ * Should be removed when the lowest supported version is MediaWiki 1.23.
+ *
+ * @param string|bool $subpage
+ * @return Title|void
+ */
+ public function getTitle( $subpage = false ) {
+ if ( method_exists( $this, 'getPageTitle' ) ) {
+ return $this->getPageTitle();
+ } else {
+ return self::getTitleFor( $this->mName, $subpage );
+ }
+ }
+
+ protected function getGroupName() {
+ return 'wiki';
+ }
+}
diff --git a/MLEB/Translate/sql/revtag.sql b/MLEB/Translate/sql/revtag.sql
new file mode 100644
index 00000000..0a05bf61
--- /dev/null
+++ b/MLEB/Translate/sql/revtag.sql
@@ -0,0 +1,19 @@
+-- These tables could go into core someday, but not likely
+
+-- Revision tags
+CREATE TABLE /*$wgDBprefix*/revtag (
+ rt_type varbinary(60) NOT NULL,
+
+ -- Link to page.page_id
+ rt_page int NOT NULL,
+
+ -- Link to revision.rev_id
+ rt_revision int NOT NULL,
+
+ rt_value blob NULL
+) /*$wgDBTableOptions*/;
+-- Index for finding all revisions in a page with a given tag
+CREATE UNIQUE INDEX /*i*/rt_type_page_revision ON /*$wgDBprefix*/revtag
+(rt_type, rt_page, rt_revision);
+-- Index for finding the tags on a given revision
+CREATE INDEX /*i*/rt_revision_type ON /*$wgDBprefix*/revtag (rt_revision, rt_type);
diff --git a/MLEB/Translate/sql/translate_groupreviews.sql b/MLEB/Translate/sql/translate_groupreviews.sql
new file mode 100644
index 00000000..f7574b8f
--- /dev/null
+++ b/MLEB/Translate/sql/translate_groupreviews.sql
@@ -0,0 +1,13 @@
+-- Message group workflow states
+CREATE TABLE /*$wgDBprefix*/translate_groupreviews (
+ -- The length we need to accommodate "page-" + the full pagename including
+ -- prefix. That could be 255 + prefix (length not limited), but page
+ -- translation section pages limit that to shorter, because it needs to
+ -- accommodate /sectionname/languagecode suffix to the page name.
+ tgr_group varchar(200) binary NOT NULL,
+ tgr_lang varchar(20) binary NOT NULL,
+ -- Any of user configured values from $wgTranslateWorkflowStates
+ tgr_state varbinary(32) NOT NULL,
+
+ PRIMARY KEY (tgr_group, tgr_lang)
+) /*$wgDBTableOptions*/;
diff --git a/MLEB/Translate/sql/translate_groupstats-indexchange.sql b/MLEB/Translate/sql/translate_groupstats-indexchange.sql
new file mode 100644
index 00000000..5d6f1b18
--- /dev/null
+++ b/MLEB/Translate/sql/translate_groupstats-indexchange.sql
@@ -0,0 +1 @@
+CREATE INDEX /*i*/tgs_lang on /*_*/translate_groupstats (tgs_lang);
diff --git a/MLEB/Translate/sql/translate_groupstats-proofread.sql b/MLEB/Translate/sql/translate_groupstats-proofread.sql
new file mode 100644
index 00000000..ae3e0202
--- /dev/null
+++ b/MLEB/Translate/sql/translate_groupstats-proofread.sql
@@ -0,0 +1,2 @@
+ALTER TABLE /*_*/translate_groupstats
+ ADD tgs_proofread int(5) unsigned;
diff --git a/MLEB/Translate/sql/translate_groupstats.sql b/MLEB/Translate/sql/translate_groupstats.sql
new file mode 100644
index 00000000..34a73047
--- /dev/null
+++ b/MLEB/Translate/sql/translate_groupstats.sql
@@ -0,0 +1,10 @@
+CREATE TABLE /*_*/translate_groupstats (
+ tgs_group varchar(100) binary NOT NULL,
+ tgs_lang varchar(20) binary NOT NULL,
+ tgs_total int(5) unsigned,
+ tgs_translated int(5) unsigned,
+ tgs_fuzzy int(5) unsigned,
+ tgs_proofread int(5) unsigned,
+ PRIMARY KEY (tgs_group, tgs_lang)
+) /*$wgDBTableOptions*/;
+CREATE INDEX /*i*/tgs_lang on /*_*/translate_groupstats (tgs_lang);
diff --git a/MLEB/Translate/sql/translate_messageindex.sql b/MLEB/Translate/sql/translate_messageindex.sql
new file mode 100644
index 00000000..7f3ec816
--- /dev/null
+++ b/MLEB/Translate/sql/translate_messageindex.sql
@@ -0,0 +1,7 @@
+CREATE TABLE /*$wgDBprefix*/translate_messageindex (
+ tmi_key varchar(255) binary NOT NULL,
+ tmi_value varchar(255) binary NOT NULL
+) /*$wgDBTableOptions*/;
+
+CREATE UNIQUE INDEX /*i*/tmi_key ON /*$wgDBprefix*/translate_messageindex
+(tmi_key);
diff --git a/MLEB/Translate/sql/translate_metadata.sql b/MLEB/Translate/sql/translate_metadata.sql
new file mode 100644
index 00000000..68a539ee
--- /dev/null
+++ b/MLEB/Translate/sql/translate_metadata.sql
@@ -0,0 +1,8 @@
+-- Translate group metadata
+CREATE TABLE /*$wgDBprefix*/translate_metadata (
+ tmd_group varchar(200) binary NOT NULL,
+ tmd_key varchar(20) binary NOT NULL,
+ tmd_value mediumblob NOT NULL,
+
+ PRIMARY KEY (tmd_group, tmd_key)
+) /*$wgDBTableOptions*/;
diff --git a/MLEB/Translate/sql/translate_reviews.sql b/MLEB/Translate/sql/translate_reviews.sql
new file mode 100644
index 00000000..28bee7d9
--- /dev/null
+++ b/MLEB/Translate/sql/translate_reviews.sql
@@ -0,0 +1,13 @@
+-- Translation reviews; to store reviews of a page revision by a user.
+CREATE TABLE /*$wgDBprefix*/translate_reviews (
+ trr_user int NOT NULL,
+
+ -- Link to page.page_id
+ trr_page int NOT NULL,
+
+ -- Link to revision.rev_id
+ trr_revision int NOT NULL
+) /*$wgDBTableOptions*/;
+
+CREATE UNIQUE INDEX /*i*/trr_user_page_revision ON /*$wgDBprefix*/translate_reviews
+(trr_user, trr_page, trr_revision);
diff --git a/MLEB/Translate/sql/translate_sections-indexchange.sql b/MLEB/Translate/sql/translate_sections-indexchange.sql
new file mode 100644
index 00000000..98ed1491
--- /dev/null
+++ b/MLEB/Translate/sql/translate_sections-indexchange.sql
@@ -0,0 +1 @@
+CREATE INDEX /*i*/trs_page_order on /*_*/translate_sections (trs_page, trs_order);
diff --git a/MLEB/Translate/sql/translate_sections-indexchange2.sql b/MLEB/Translate/sql/translate_sections-indexchange2.sql
new file mode 100644
index 00000000..223b75a5
--- /dev/null
+++ b/MLEB/Translate/sql/translate_sections-indexchange2.sql
@@ -0,0 +1 @@
+DROP INDEX /*i*/trs_page on /*_*/translate_sections;
diff --git a/MLEB/Translate/sql/translate_sections-trs_order.patch.sql b/MLEB/Translate/sql/translate_sections-trs_order.patch.sql
new file mode 100644
index 00000000..6e56e3fa
--- /dev/null
+++ b/MLEB/Translate/sql/translate_sections-trs_order.patch.sql
@@ -0,0 +1,2 @@
+ALTER TABLE /*_*/translate_sections
+ ADD trs_order int unsigned;
diff --git a/MLEB/Translate/sql/translate_sections.sql b/MLEB/Translate/sql/translate_sections.sql
new file mode 100644
index 00000000..6207ca68
--- /dev/null
+++ b/MLEB/Translate/sql/translate_sections.sql
@@ -0,0 +1,20 @@
+-- SQL tables for Translate extension
+
+-- List of each section which has a name and text
+CREATE TABLE /*_*/translate_sections (
+ -- Key to page_id
+ trs_page int unsigned NOT NULL,
+
+ -- Customizable section name
+ trs_key varchar(255) binary NOT NULL,
+
+ -- Section contents
+ trs_text mediumblob NOT NULL,
+
+ -- Section order
+ trs_order int unsigned,
+
+ PRIMARY KEY (trs_page, trs_key)
+) /*$wgDBTableOptions*/;
+
+CREATE INDEX /*i*/trs_page_order on /*_*/translate_sections (trs_page, trs_order);
diff --git a/MLEB/Translate/sql/translate_stash.sql b/MLEB/Translate/sql/translate_stash.sql
new file mode 100644
index 00000000..b0a651f4
--- /dev/null
+++ b/MLEB/Translate/sql/translate_stash.sql
@@ -0,0 +1,10 @@
+-- Translate translation stash
+CREATE TABLE /*$wgDBprefix*/translate_stash (
+ ts_user int NOT NULL,
+ ts_namespace int(11) NOT NULL,
+ ts_title varchar(255) binary NOT NULL,
+ ts_value mediumblob NOT NULL,
+ ts_metadata mediumblob NOT NULL,
+
+ PRIMARY KEY (ts_user, ts_namespace, ts_title)
+) /*$wgDBTableOptions*/;
diff --git a/MLEB/Translate/sql/translate_tm.sql b/MLEB/Translate/sql/translate_tm.sql
new file mode 100644
index 00000000..6e3a44c2
--- /dev/null
+++ b/MLEB/Translate/sql/translate_tm.sql
@@ -0,0 +1,38 @@
+-- Since these tables only store secondary data,
+-- it should be safe to drop them from time to time.
+-- MediaWiki itself guarantees sure that this file is run only once.
+
+-- Source texts
+DROP TABLE IF EXISTS /*_*/translate_tms;
+CREATE TABLE /*_*/translate_tms (
+ tms_sid int unsigned NOT NULL PRIMARY KEY AUTO_INCREMENT,
+ -- Language code
+ tms_lang varchar(20) binary NOT NULL,
+ -- Lenght of the string in characters
+ tms_len int unsigned NOT NULL,
+ -- The actual text
+ tms_text mediumblob NOT NULL,
+ -- Identifier where this text came from
+ tms_context mediumblob NOT NULL default ''
+) /*$wgDBTableOptions*/;
+
+CREATE INDEX /*i*/tms_lang_len ON /*_*/translate_tms (tms_lang, tms_len);
+
+-- Stored translations
+DROP TABLE IF EXISTS /*_*/translate_tmt;
+CREATE TABLE /*_*/translate_tmt (
+ tmt_sid int unsigned NOT NULL,
+ tmt_lang varchar(20) binary NOT NULL,
+ tmt_text mediumblob NOT NULL
+) /*$wgDBTableOptions*/;
+
+CREATE UNIQUE INDEX /*i*/tmt_sid_lang ON /*_*/translate_tmt (tmt_sid, tmt_lang);
+
+-- Fulltext search index
+DROP TABLE IF EXISTS /*_*/translate_tmf;
+CREATE TABLE /*_*/translate_tmf (
+ tmf_sid int unsigned NOT NULL,
+ tmf_text text
+) ENGINE=MYISAM;
+
+CREATE FULLTEXT INDEX /*i*/tmf_text ON /*_*/translate_tmf (tmf_text);
diff --git a/MLEB/Translate/stash/StashedTranslation.php b/MLEB/Translate/stash/StashedTranslation.php
new file mode 100644
index 00000000..c2c05bda
--- /dev/null
+++ b/MLEB/Translate/stash/StashedTranslation.php
@@ -0,0 +1,46 @@
+<?php
+/**
+ * Value object for stashed translation.
+ *
+ * @file
+ * @author Niklas Laxström
+ * @license GPL-2.0+
+ */
+
+/**
+ * Value object for stashed translation which you can construct.
+ * @since 2013.06
+ */
+class StashedTranslation {
+ protected $user;
+ protected $title;
+ protected $value;
+ protected $metadata;
+
+ public function __construct( User $user, Title $title, $value, array $metadata = null ) {
+ $this->user = $user;
+ $this->title = $title;
+ $this->value = $value;
+ $this->metadata = $metadata;
+ }
+
+ /// @return User
+ public function getUser() {
+ return $this->user;
+ }
+
+ /// @return Title
+ public function getTitle() {
+ return $this->title;
+ }
+
+ /// @return string
+ public function getValue() {
+ return $this->value;
+ }
+
+ /// @return array
+ public function getMetadata() {
+ return $this->metadata;
+ }
+}
diff --git a/MLEB/Translate/stash/TranslationStashStorage.php b/MLEB/Translate/stash/TranslationStashStorage.php
new file mode 100644
index 00000000..6b9ea358
--- /dev/null
+++ b/MLEB/Translate/stash/TranslationStashStorage.php
@@ -0,0 +1,77 @@
+<?php
+/**
+ * Storage class for stashed translations.
+ *
+ * @file
+ * @author Niklas Laxström
+ * @license GPL-2.0+
+ */
+
+/**
+ * Storage class for stashed translations. This one uses sql tables as storage.
+ * @since 2013.06
+ */
+class TranslationStashStorage {
+ protected $db;
+ protected $dbTable;
+
+ public function __construct( DatabaseBase $db, $table = 'translate_stash' ) {
+ $this->db = $db;
+ $this->dbTable = $table;
+ }
+
+ /**
+ * Adds a new translation to the stash. If the same key already exists, the
+ * previous translation and metadata will be replaced with the new one.
+ */
+ public function addTranslation( StashedTranslation $item ) {
+ $row = array(
+ 'ts_user' => $item->getUser()->getId(),
+ 'ts_title' => $item->getTitle()->getDBKey(),
+ 'ts_namespace' => $item->getTitle()->getNamespace(),
+ 'ts_value' => $item->getValue(),
+ 'ts_metadata' => serialize( $item->getMetadata() ),
+ );
+
+ $indexes = array(
+ array( 'ts_user', 'ts_namespace', 'ts_title' )
+ );
+
+ $this->db->replace( $this->dbTable, $indexes, $row, __METHOD__ );
+ }
+
+
+ /**
+ * Gets all stashed translations for the given user.
+ * @param User $user
+ * @return StashedTranslation[]
+ */
+ public function getTranslations( User $user ) {
+ $conds = array( 'ts_user' => $user->getId() );
+ $fields = array( 'ts_namespace', 'ts_title', 'ts_value', 'ts_metadata' );
+
+ $res = $this->db->select( $this->dbTable, $fields, $conds, __METHOD__ );
+
+ $objects = array();
+ foreach ( $res as $row ) {
+ $objects[] = new StashedTranslation(
+ $user,
+ Title::makeTitle( $row->ts_namespace, $row->ts_title ),
+ $row->ts_value,
+ unserialize( $row->ts_metadata )
+ );
+ }
+
+ return $objects;
+ }
+
+ /**
+ * Delete all stashed translations for the given user.
+ * @param User $user
+ * @since 2013.10
+ */
+ public function deleteTranslations( User $user ) {
+ $conds = array( 'ts_user' => $user->getId() );
+ $this->db->delete( $this->dbTable, $conds, __METHOD__ );
+ }
+}
diff --git a/MLEB/Translate/stringmangler/StringMangler.php b/MLEB/Translate/stringmangler/StringMangler.php
new file mode 100644
index 00000000..9215f6f2
--- /dev/null
+++ b/MLEB/Translate/stringmangler/StringMangler.php
@@ -0,0 +1,50 @@
+<?php
+/**
+ * StringMangler interface.
+ * @file
+ * @author Niklas Laxström
+ * @license GPL-2.0+
+ */
+
+/**
+ * Interface that key-mangling classes must implement. Mangling is done to:
+ * - converting characters which would be invalid in titles to something valid
+ * - prefixing a set of messages to avoid conflicts when sharing a namespace
+ * with multiple message groups.
+ *
+ * The operations have to be reversible so that
+ * x equals unMangle( mangle( x ) ).
+ *
+ */
+interface StringMangler {
+ /// @todo Does this really need to be in the interface???
+ public static function EmptyMatcher();
+
+ /**
+ * General way to pass configuration to the mangler.
+ * @param array $configuration
+ */
+ public function setConf( $configuration );
+
+ /**
+ * Match strings against a pattern.
+ * If string matches, mangle() should mangle the key.
+ * @param string $string Message key.
+ * @return \bool
+ */
+ public function match( $string );
+
+ /**
+ * Mangles a list of message keys.
+ * @param string|string[] $data Unmangled message keys.
+ * @return string|string[] Mangled message keys.
+ */
+ public function mangle( $data );
+
+ /**
+ * Reverses the operation mangle() did.
+ * @param string|string[] $data Mangled message keys.
+ * @return string|string[] Umangled message keys.
+ */
+ public function unMangle( $data );
+}
diff --git a/MLEB/Translate/stringmangler/StringMatcher.php b/MLEB/Translate/stringmangler/StringMatcher.php
new file mode 100644
index 00000000..f58d8af1
--- /dev/null
+++ b/MLEB/Translate/stringmangler/StringMatcher.php
@@ -0,0 +1,221 @@
+<?php
+/**
+ * Default StringMangler implementation.
+ * @file
+ * @author Niklas Laxström
+ * @license GPL-2.0+
+ */
+
+/**
+ * The versatile default implementation of StringMangler interface.
+ * It supports exact matches and patterns with any-wildcard (*).
+ * All matching strings are prefixed with the same prefix.
+ */
+class StringMatcher implements StringMangler {
+ /// Prefix for mangled message keys
+ protected $sPrefix = '';
+ /// Exact message keys
+ protected $aExact = array();
+ /// Patterns of type foo*
+ protected $aPrefix = array();
+ /// Patterns that contain wildcard anywhere else than in the end
+ protected $aRegex = array();
+
+ /**
+ * Alias for making NO-OP string mangler.
+ * @return StringMatcher
+ */
+ public static function EmptyMatcher() {
+ return new StringMatcher;
+ }
+
+ /**
+ * Constructor, see EmptyMatcher();
+ */
+ public function __construct( $prefix = '', $patterns = array() ) {
+ $this->sPrefix = $prefix;
+ $this->init( $patterns );
+ }
+
+ protected static function getValidKeyChars() {
+ static $valid = null;
+ if ( $valid === null ) {
+ global $wgLegalTitleChars;
+ $valid = strtr( $wgLegalTitleChars, array(
+ '=' => '', // equals sign, which is itself usef for escaping
+ '&' => '', // ampersand, for entities
+ '%' => '', // percent sign, which is used in URL encoding
+ ) );
+ }
+
+ return $valid;
+ }
+
+ public function setConf( $conf ) {
+ $this->sPrefix = $conf['prefix'];
+ $this->init( $conf['patterns'] );
+ }
+
+ /**
+ * Preprocesses the patterns.
+ * They are split into exact keys, prefix matches and pattern matches to
+ * speed up matching process.
+ * @param string[] $strings Key patterns.
+ */
+ protected function init( array $strings ) {
+ foreach ( $strings as $string ) {
+ $pos = strpos( $string, '*' );
+ if ( $pos === false ) {
+ $this->aExact[] = $string;
+ } elseif ( $pos + 1 === strlen( $string ) ) {
+ $prefix = substr( $string, 0, -1 );
+ $this->aPrefix[$prefix] = strlen( $prefix );
+ } else {
+ $string = str_replace( '\\*', '.+', preg_quote( $string ) );
+ $this->aRegex[] = "/^$string$/";
+ }
+ }
+ }
+
+ /**
+ * @param string $string
+ * @return bool
+ */
+ public function match( $string ) {
+ if ( in_array( $string, $this->aExact ) ) {
+ return true;
+ }
+
+ foreach ( $this->aPrefix as $prefix => $len ) {
+ if ( strncmp( $string, $prefix, $len ) === 0 ) {
+ return true;
+ }
+ }
+
+ foreach ( $this->aRegex as $regex ) {
+ if ( preg_match( $regex, $string ) ) {
+ return true;
+ }
+ }
+
+ return false;
+ }
+
+ /**
+ * Mangles the input. Input can either be a plain string, a list of strings
+ * or an associative array. In the last case the keys of the array are
+ * mangled.
+ *
+ * @param string|string[]|array $data
+ * @return string|string[]|array
+ * @throws MWException
+ */
+ public function mangle( $data ) {
+ if ( is_array( $data ) ) {
+ return $this->mangleArray( $data );
+ } elseif ( is_string( $data ) ) {
+ return $this->mangleString( $data );
+ } elseif ( $data === null ) {
+ return $data;
+ } else {
+ throw new MWException( __METHOD__ . ": Unsupported datatype" );
+ }
+ }
+
+ public function unMangle( $data ) {
+ if ( is_array( $data ) ) {
+ return $this->mangleArray( $data, true );
+ } elseif ( is_string( $data ) ) {
+ return $this->mangleString( $data, true );
+ } elseif ( $data === null ) {
+ return $data;
+ } else {
+ throw new MWException( __METHOD__ . ": Unsupported datatype" );
+ }
+ }
+
+ /**
+ * Mangles or unmangles single string.
+ * @param string $string Message key.
+ * @param bool $reverse Direction of mangling or unmangling.
+ * @return string
+ */
+ protected function mangleString( $string, $reverse = false ) {
+ if ( $reverse ) {
+ return $this->unMangleString( $string );
+ }
+
+ if ( $this->match( $string ) ) {
+ $string = $this->sPrefix . $string;
+ }
+
+ // Apply a "quoted-printable"-like escaping
+ $valid = self::getValidKeyChars();
+ $escapedString = preg_replace_callback( "/[^$valid]/",
+ function ( $match ) {
+ return '=' . sprintf( '%02X', ord( $match[0] ) );
+ },
+ $string
+ );
+
+ return $escapedString;
+ }
+
+ /**
+ * Unmangles the message key by removing the prefix it it exists.
+ * @param string $string Message key.
+ * @return string Unmangled message key.
+ */
+ protected function unMangleString( $string ) {
+ // Unescape the "quoted-printable"-like escaping,
+ // which is applied in mangleString.
+ $unescapedString = preg_replace_callback( "/=([A-F0-9]{2})/",
+ function ( $match ) {
+ return chr( hexdec( $match[0] ) );
+ },
+ $string
+ );
+
+ if ( strncmp( $unescapedString, $this->sPrefix, strlen( $this->sPrefix ) ) === 0 ) {
+ return substr( $unescapedString, strlen( $this->sPrefix ) );
+ } else {
+ return $unescapedString;
+ }
+ }
+
+ /**
+ * Mangles or unmangles list of strings. If an associative array is given,
+ * the keys of the array will be mangled. For lists the values are mangled.
+ *
+ * @param string[]|array $array Strings.
+ * @param bool $reverse Direction of mangling or unmangling.
+ * @return string[]|array (Un)mangled strings.
+ */
+ protected function mangleArray( array $array, $reverse = false ) {
+ $temp = array();
+
+ if ( !$this->isAssoc( $array ) ) {
+ foreach ( $array as $key => &$value ) {
+ $value = $this->mangleString( $value, $reverse );
+ $temp[$key] = $value; // Assign a reference
+ }
+ } else {
+ foreach ( $array as $key => &$value ) {
+ $key = $this->mangleString( $key, $reverse );
+ $temp[$key] = $value; // Assign a reference
+ }
+ }
+
+ return $temp;
+ }
+
+ protected function isAssoc( array $array ) {
+ $assoc = (bool)count( array_filter( array_keys( $array ), 'is_string' ) );
+ if ( $assoc ) {
+ return true;
+ }
+
+ // Also check that the indexing starts from zero
+ return !array_key_exists( 0, $array );
+ }
+}
diff --git a/MLEB/Translate/tag/PageTranslationHooks.php b/MLEB/Translate/tag/PageTranslationHooks.php
new file mode 100644
index 00000000..dce67e76
--- /dev/null
+++ b/MLEB/Translate/tag/PageTranslationHooks.php
@@ -0,0 +1,938 @@
+<?php
+/**
+ * Contains class with page translation feature hooks.
+ *
+ * @file
+ * @author Niklas Laxström
+ * @copyright Copyright © 2008-2013, Niklas Laxström
+ * @license GPL-2.0+
+ */
+
+/**
+ * Hooks for page translation.
+ *
+ * @ingroup PageTranslation
+ */
+class PageTranslationHooks {
+ // Uuugly hacks
+ public static $allowTargetEdit = false;
+
+ // Check if job queue is running
+ public static $jobQueueRunning = false;
+
+ /**
+ * Hook: ParserBeforeStrip
+ * @param $parser Parser
+ * @param $text
+ * @param $state
+ * @return bool
+ */
+ public static function renderTagPage( $parser, &$text, $state ) {
+ $title = $parser->getTitle();
+
+ if ( strpos( $text, '<translate>' ) !== false ) {
+ try {
+ $parse = TranslatablePage::newFromText( $parser->getTitle(), $text )->getParse();
+ $text = $parse->getTranslationPageText( null );
+ } catch ( TPException $e ) {
+ // Show ugly preview without processed <translate> tags
+ wfDebug( 'TPException caught; expected' );
+ }
+ }
+
+ // Set display title
+ $page = TranslatablePage::isTranslationPage( $title );
+ if ( !$page ) {
+ return true;
+ }
+
+ list( , $code ) = TranslateUtils::figureMessage( $title->getText() );
+ $name = $page->getPageDisplayTitle( $code );
+
+ if ( $name ) {
+ $name = $parser->recursivePreprocess( $name );
+ $parser->getOutput()->setDisplayTitle( $name );
+ }
+
+ // Disable edit section links
+ $parser->getOptions()->setEditSection( false );
+
+ return true;
+ }
+
+ /**
+ * Set the right page content language for translated pages ("Page/xx").
+ * Hook: PageContentLanguage
+ */
+ public static function onPageContentLanguage( Title $title, /*string*/&$pageLang ) {
+ // For translation pages, parse plural, grammar etc with correct language,
+ // and set the right direction
+ if ( TranslatablePage::isTranslationPage( $title ) ) {
+ list( , $code ) = TranslateUtils::figureMessage( $title->getText() );
+ $pageLang = $code;
+ }
+
+ return true;
+ }
+
+ /// Hook: OutputPageBeforeHTML
+ public static function injectCss( OutputPage $out, /*string*/$text ) {
+ global $wgTranslatePageTranslationULS;
+
+ $title = $out->getTitle();
+ $isSource = TranslatablePage::isSourcePage( $title );
+ $isTranslation = TranslatablePage::isTranslationPage( $title );
+
+ if ( $isSource || $isTranslation ) {
+ $out->addModules( 'ext.translate' );
+ if ( $wgTranslatePageTranslationULS ) {
+ $out->addModules( 'ext.translate.pagetranslation.uls' );
+ }
+
+ // Per bug 61331
+ $type = $isSource ? 'source' : 'translation';
+ $out->addJsConfigVars( 'wgTranslatePageTranslation', $type );
+ }
+
+ return true;
+ }
+
+ /**
+ * Hook: PageContentSaveComplete
+ */
+ public static function onSectionSave( WikiPage $wikiPage, User $user, $content, $summary,
+ $minor, $_, $_, $flags, $revision
+ ) {
+ $title = $wikiPage->getTitle();
+
+ if ( $content instanceof TextContent ) {
+ $text = $content->getNativeData();
+ } else {
+ // Screw it, not interested
+ return true;
+ }
+
+ // Some checks
+ $handle = new MessageHandle( $title );
+
+ // We are only interested in the translations namespace
+ if ( !$handle->isPageTranslation() || !$handle->isValid() ) {
+ return true;
+ }
+
+ // Do not trigger renders for fuzzy
+ if ( strpos( $text, TRANSLATE_FUZZY ) !== false ) {
+ return true;
+ }
+
+ $group = $handle->getGroup();
+ if ( !$group instanceof WikiPageMessageGroup ) {
+ return true;
+ }
+
+ // Finally we know the title and can construct a Translatable page
+ $page = TranslatablePage::newFromTitle( $group->getTitle() );
+
+ // Update the target translation page
+ if ( !$handle->isDoc() ) {
+ $code = $handle->getCode();
+ self::updateTranslationPage( $page, $code, $user, $flags, $summary );
+ }
+
+ return true;
+ }
+
+ public static function updateTranslationPage( TranslatablePage $page,
+ $code, $user, $flags, $summary
+ ) {
+ $source = $page->getTitle();
+ $target = Title::makeTitle( $source->getNamespace(), $source->getDBkey() . "/$code" );
+
+ // We don't know and don't care
+ $flags &= ~EDIT_NEW & ~EDIT_UPDATE;
+
+ // Update the target page
+ $job = TranslateRenderJob::newJob( $target );
+ $job->setUser( $user );
+ $job->setSummary( $summary );
+ $job->setFlags( $flags );
+ $job->run();
+
+ // Regenerate translation caches
+ $page->getTranslationPercentages( 'force' );
+
+ // Invalidate caches
+ $pages = $page->getTranslationPages();
+ foreach ( $pages as $title ) {
+ $wikiPage = WikiPage::factory( $title );
+ $wikiPage->doPurge();
+ }
+
+ // And the source page itself too
+ $wikiPage = WikiPage::factory( $page->getTitle() );
+ $wikiPage->doPurge();
+ }
+
+ /**
+ * @param $data
+ * @param $params
+ * @param $parser Parser
+ * @return string
+ */
+ public static function languages( $data, $params, $parser ) {
+ $currentTitle = $parser->getTitle();
+
+ // Check if this is a source page or a translation page
+ $page = TranslatablePage::newFromTitle( $currentTitle );
+ if ( $page->getMarkedTag() === false ) {
+ $page = TranslatablePage::isTranslationPage( $currentTitle );
+ }
+
+ if ( $page === false || $page->getMarkedTag() === false ) {
+ return '';
+ }
+
+ $status = $page->getTranslationPercentages();
+ if ( !$status ) {
+ return '';
+ }
+
+ // If priority languages have been set always show those languages
+ $priorityLangs = TranslateMetadata::get( $page->getMessageGroupId(), 'prioritylangs' );
+ $priorityForce = TranslateMetadata::get( $page->getMessageGroupId(), 'priorityforce' );
+ $filter = null;
+ if ( strlen( $priorityLangs ) > 0 ) {
+ $filter = array_flip( explode( ',', $priorityLangs ) );
+ }
+ if ( $filter !== null ) {
+ // If translation is restricted to some languages, only show them
+ if ( $priorityForce === 'on' ) {
+ // Do not filter the source language link
+ $filter[$page->getMessageGroup()->getSourceLanguage()] = true;
+ $status = array_intersect_key( $status, $filter );
+ }
+ foreach ( $filter as $langCode => $value ) {
+ if ( !isset( $status[$langCode] ) ) {
+ // We need to show all priority languages even if no translation started
+ $status[$langCode] = 0;
+ }
+ }
+ }
+
+ // Fix title
+ $pageTitle = $page->getTitle();
+
+ // Sort by language code, which seems to be the only sane method
+ ksort( $status );
+
+ // This way the parser knows to fragment the parser cache by language code
+ $userLangCode = $parser->getOptions()->getUserLang();
+ $userLangDir = $parser->getOptions()->getUserLangObj()->getDir();
+ // Should call $page->getMessageGroup()->getSourceLanguage(), but
+ // group is sometimes null on WMF during page moves, reason unknown.
+ // This should do the same thing for now.
+ $sourceLanguage = $pageTitle->getPageLanguage()->getCode();
+
+ $languages = array();
+ foreach ( $status as $code => $percent ) {
+ // Get autonyms
+ $name = TranslateUtils::getLanguageName( $code, $code );
+ $name = htmlspecialchars( $name ); // Unlikely, but better safe
+
+ // Add links to other languages
+ $suffix = ( $code === $sourceLanguage ) ? '' : "/$code";
+ $targetTitleString = $pageTitle->getDBkey() . $suffix;
+ $subpage = Title::makeTitle( $pageTitle->getNamespace(), $targetTitleString );
+
+ $classes = array();
+ if ( $code === $userLangCode ) {
+ $classes[] = 'mw-pt-languages-ui';
+ }
+
+ if ( $currentTitle->equals( $subpage ) ) {
+ $classes[] = 'mw-pt-languages-selected';
+ $classes = array_merge( $classes, self::tpProgressIcon( $percent ) );
+ $name = Html::rawElement( 'span', array( 'class' => $classes ), $name );
+ } elseif ( $subpage->isKnown() ) {
+ $pagename = $page->getPageDisplayTitle( $code );
+ if ( !is_string( $pagename ) ) {
+ $pagename = $subpage->getPrefixedText();
+ }
+
+ $classes = array_merge( $classes, self::tpProgressIcon( $percent ) );
+
+ $title = wfMessage( 'tpt-languages-nonzero' )
+ ->params( $pagename )
+ ->numParams( 100 * $percent )
+ ->text();
+ $attribs = array(
+ 'title' => $title,
+ 'class' => $classes,
+ );
+
+ $name = Linker::linkKnown( $subpage, $name, $attribs );
+ } else {
+ /* When language is included because it is a priority language,
+ * but translation does not yet exists, link directly to the
+ * translation view. */
+ $specialTranslateTitle = SpecialPage::getTitleFor( 'Translate' );
+ $params = array(
+ 'group' => $page->getMessageGroupId(),
+ 'language' => $code,
+ 'task' => 'view'
+ );
+
+ $classes[] = 'new'; // For red link color
+ $attribs = array(
+ 'title' => wfMessage( 'tpt-languages-zero' )->text(),
+ 'class' => $classes,
+ );
+ $name = Linker::link( $specialTranslateTitle, $name, $attribs, $params );
+ }
+
+ $languages[] = $name;
+ }
+
+ // dirmark (rlm/lrm) is added, because languages with RTL names can
+ // mess the display
+ $lang = Language::factory( $userLangCode );
+ $sep = wfMessage( 'tpt-languages-separator' )->inLanguage( $lang )->plain();
+ $sep .= $lang->getDirMark();
+ $languages = implode( $sep, $languages );
+
+ $out = Html::openElement( 'div', array(
+ 'class' => 'mw-pt-languages noprint',
+ 'lang' => $userLangCode,
+ 'dir' => $userLangDir
+ ) );
+ $out .= Html::rawElement( 'div', array( 'class' => 'mw-pt-languages-label' ),
+ wfMessage( 'tpt-languages-legend' )->escaped()
+ );
+ $out .= Html::rawElement(
+ 'div',
+ array( 'class' => 'mw-pt-languages-list autonym' ),
+ $languages
+ );
+ $out .= Html::closeElement( 'div' );
+
+ return $out;
+ }
+
+ /**
+ * Return icon CSS class for given progress status: percentages
+ * are too accurate and take more space than simple images.
+ * @param $percent float
+ * @return string[]
+ */
+ protected static function tpProgressIcon( $percent ) {
+ $classes = array( 'mw-pt-progress' );
+ $percent *= 100;
+ if ( $percent < 20 ) {
+ $classes[] = 'mw-pt-progress--stub';
+ } elseif ( $percent < 40 ) {
+ $classes[] = 'mw-pt-progress--low';
+ } elseif ( $percent < 60 ) {
+ $classes[] = 'mw-pt-progress--med';
+ } elseif ( $percent < 80 ) {
+ $classes[] = 'mw-pt-progress--high';
+ } else {
+ $classes[] = 'mw-pt-progress--complete';
+ }
+ return $classes;
+ }
+
+ /**
+ * Display nice error when editing content.
+ * Hook: EditFilterMergedContent
+ */
+ public static function tpSyntaxCheckForEditContent( $context, $content, $status, $summary ) {
+ if ( !$content instanceof TextContent ) {
+ return true; // whatever.
+ }
+
+ $text = $content->getNativeData();
+ $title = $context->getTitle();
+
+ $e = self::tpSyntaxError( $title, $text );
+
+ if ( $e ) {
+ $msg = $e->getMsg();
+ //$msg is an array containing a message key followed by any parameters.
+ //todo: use Message object instead.
+
+ call_user_func_array( array( $status, 'fatal' ), $msg );
+ }
+
+ return true;
+ }
+
+ /**
+ * Returns any syntax error.
+ */
+ protected static function tpSyntaxError( $title, $text ) {
+ if ( strpos( $text, '<translate>' ) === false ) {
+ return null;
+ }
+
+ $page = TranslatablePage::newFromText( $title, $text );
+ try {
+ $page->getParse();
+
+ return null;
+ } catch ( TPException $e ) {
+ return $e;
+ }
+ }
+
+ /**
+ * When attempting to save, last resort. Edit page would only display
+ * edit conflict if there wasn't tpSyntaxCheckForEditPage.
+ * Hook: PageContentSave
+ */
+ public static function tpSyntaxCheck( $wikiPage, $user, $content, $summary,
+ $minor, $_, $_, $flags, $status
+ ) {
+ if ( $content instanceof TextContent ) {
+ $text = $content->getNativeData();
+ } else {
+ // Screw it, not interested
+ return true;
+ }
+
+ // Quick escape on normal pages
+ if ( strpos( $text, '<translate>' ) === false ) {
+ return true;
+ }
+
+ $page = TranslatablePage::newFromText( $wikiPage->getTitle(), $text );
+ try {
+ $page->getParse();
+ } catch ( TPException $e ) {
+ call_user_func_array( array( $status, 'fatal' ), $e->getMsg() );
+
+ return false;
+ }
+
+ return true;
+ }
+
+ /**
+ * Hook: PageContentSaveComplete
+ */
+ public static function addTranstag( $wikiPage, $user, $content, $summary,
+ $minor, $_, $_, $flags, $revision
+ ) {
+ // We are not interested in null revisions
+ if ( $revision === null ) {
+ return true;
+ }
+
+ if ( $content instanceof TextContent ) {
+ $text = $content->getNativeData();
+ } else {
+ // Screw it, not interested
+ return true;
+ }
+
+ // Quick escape on normal pages
+ if ( strpos( $text, '</translate>' ) === false ) {
+ return true;
+ }
+
+ // Add the ready tag
+ $page = TranslatablePage::newFromTitle( $wikiPage->getTitle() );
+ $page->addReadyTag( $revision->getId() );
+
+ return true;
+ }
+
+ /**
+ * Page moving and page protection (and possibly other things) creates null
+ * revisions. These revisions re-use the previous text already stored in
+ * the database. Those however do not trigger re-parsing of the page and
+ * thus the ready tag is not updated. This watches for new revisions,
+ * checks if they reuse existing text, checks whether the parent version
+ * is the latest version and has a ready tag. If that is the case,
+ * also adds a ready tag for the new revision (which is safe, because
+ * the text hasn't changed). The interface will say that there has been
+ * a change, but shows no change in the content. This lets the user to
+ * update the translation pages in the case, the non-text changes affect
+ * the rendering of translation pages. I'm not aware of any such cases
+ * at the moment.
+ * Hook: RevisionInsertComplete
+ * @since 2012-05-08
+ */
+ public static function updateTranstagOnNullRevisions( Revision $rev, $text, $flags ) {
+ $title = $rev->getTitle();
+
+ /* Title might be null when using replicated databases.
+ * Even in that case null revisions should have valid
+ * titles since e778bf8. See bug 32983. */
+ if ( !$title ) {
+ return true;
+ }
+
+ $newRevId = $rev->getId();
+ $oldRevId = $rev->getParentId();
+ $newTextId = $rev->getTextId();
+
+ /* This hook doesn't provide any way to detech null revisions
+ * without extra query */
+ $dbw = wfGetDB( DB_MASTER );
+ $table = 'revision';
+ $field = 'rev_text_id';
+ $conds = array(
+ 'rev_page' => $rev->getPage(),
+ 'rev_id' => $oldRevId,
+ );
+ // FIXME: optimize away this query. Bug 36588.
+ $oldTextId = $dbw->selectField( $table, $field, $conds, __METHOD__ );
+
+ if ( strval( $newTextId ) !== strval( $oldTextId ) ) {
+ // Not a null revision, bail out.
+ return true;
+ }
+
+ $page = TranslatablePage::newFromTitle( $title );
+ if ( $page->getReadyTag() === $oldRevId ) {
+ $page->addReadyTag( $newRevId );
+ }
+
+ return true;
+ }
+
+ /**
+ * Prevent editing of unknown pages in Translations namespace.
+ * Hook: getUserPermissionsErrorsExpensive
+ */
+ public static function preventUnknownTranslations( Title $title, User $user,
+ $action, &$result
+ ) {
+ $handle = new MessageHandle( $title );
+ if ( $handle->isPageTranslation() && $action === 'edit' ) {
+ if ( !$handle->isValid() ) {
+ $result = array( 'tpt-unknown-page' );
+
+ return false;
+ }
+ }
+
+ return true;
+ }
+
+ /**
+ * Prevent editing of restricted languages.
+ * Hook: getUserPermissionsErrorsExpensive
+ * @since 2012-03-01
+ */
+ public static function preventRestrictedTranslations( Title $title, User $user,
+ $action, &$result
+ ) {
+ global $wgTranslateDocumentationLanguageCode;
+ // Preventing editing (includes creation) should be enough
+ if ( $action !== 'edit' ) {
+ return true;
+ }
+
+ $handle = new MessageHandle( $title );
+ if ( !$handle->isValid() ) {
+ return true;
+ }
+
+ // Get the primary group id
+ $ids = $handle->getGroupIds();
+ $groupId = $ids[0];
+
+ // Check if anything is prevented for the group in the first place
+ $force = TranslateMetadata::get( $groupId, 'priorityforce' );
+ if ( $force !== 'on' ) {
+ return true;
+ }
+
+ // Allow adding message documentation even when translation is restricted
+ if ( $handle->getCode() === $wgTranslateDocumentationLanguageCode ) {
+ return true;
+ }
+
+ // And finally check whether the language is not included in whitelist
+ $languages = TranslateMetadata::get( $groupId, 'prioritylangs' );
+ $filter = array_flip( explode( ',', $languages ) );
+ if ( !isset( $filter[$handle->getCode()] ) ) {
+ // @todo Default reason if none provided
+ $reason = TranslateMetadata::get( $groupId, 'priorityreason' );
+ $result = array( 'tpt-translation-restricted', $reason );
+
+ return false;
+ }
+
+ return true;
+ }
+
+ /**
+ * Prevent editing of translation pages directly.
+ * Hook: getUserPermissionsErrorsExpensive
+ */
+ public static function preventDirectEditing( Title $title, User $user, $action, &$result ) {
+ $page = TranslatablePage::isTranslationPage( $title );
+ $whitelist = array(
+ 'read' => true,
+ 'delete' => true,
+ 'review' => true, // FlaggedRevs
+ );
+
+ if ( $page !== false && !isset( $whitelist[$action] ) ) {
+ if ( self::$allowTargetEdit ) {
+ return true;
+ }
+
+ if ( $page->getMarkedTag() ) {
+ list( , $code ) = TranslateUtils::figureMessage( $title->getText() );
+ $result = array(
+ 'tpt-target-page',
+ ':' . $page->getTitle()->getPrefixedText(),
+ // This url shouldn't get cached
+ wfExpandUrl( $page->getTranslationUrl( $code ) )
+ );
+
+ return false;
+ }
+ }
+
+ return true;
+ }
+
+ /**
+ * Redirects the delete action to our own for translatable pages.
+ * Hook: ArticleConfirmDelete
+ *
+ * @param $article Article
+ * @param $out OutputPage
+ * @param $reason
+ *
+ * @return bool
+ */
+ public static function disableDelete( $article, $out, &$reason ) {
+ $title = $article->getTitle();
+ if ( TranslatablePage::isSourcePage( $title ) ||
+ TranslatablePage::isTranslationPage( $title )
+ ) {
+ $new = SpecialPage::getTitleFor(
+ 'PageTranslationDeletePage',
+ $title->getPrefixedText()
+ );
+ $out->redirect( $new->getFullUrl() );
+ }
+
+ return true;
+ }
+
+ /**
+ * Hook: ArticleViewHeader
+ *
+ * @param $article Article
+ * @param $outputDone
+ * @param $pcache
+ * @return bool
+ */
+ public static function translatablePageHeader( &$article, &$outputDone, &$pcache ) {
+ if ( $article->getOldID() ) {
+ return true;
+ }
+
+ $title = $article->getTitle();
+
+ if ( TranslatablePage::isTranslationPage( $title ) ) {
+ self::translationPageHeader( $title );
+ } else {
+ // Check for pages that are tagged or marked
+ self::sourcePageHeader( $title );
+ }
+
+ return true;
+ }
+
+ protected static function sourcePageHeader( Title $title ) {
+ $context = RequestContext::getMain();
+
+ $page = TranslatablePage::newFromTitle( $title );
+
+ $marked = $page->getMarkedTag();
+ $ready = $page->getReadyTag();
+
+ $title = $page->getTitle();
+
+ $latest = $title->getLatestRevId();
+ $canmark = $ready === $latest && $marked !== $latest;
+
+ $actions = array();
+
+ if ( $marked && $context->getUser()->isAllowed( 'translate' ) ) {
+ $par = array(
+ 'group' => $page->getMessageGroupId(),
+ 'language' => $context->getLanguage()->getCode(),
+ 'action' => 'page',
+ 'filter' => '',
+ );
+
+ $translate = SpecialPage::getTitleFor( 'Translate' );
+ $linkDesc = $context->msg( 'translate-tag-translate-link-desc' )->escaped();
+ $actions[] = Linker::link( $translate, $linkDesc, array(), $par );
+ }
+
+ if ( $canmark ) {
+ $diffUrl = $title->getFullUrl( array( 'oldid' => $marked, 'diff' => $latest ) );
+ $par = array( 'target' => $title->getPrefixedText() );
+ $translate = SpecialPage::getTitleFor( 'PageTranslation' );
+
+ if ( $context->getUser()->isAllowed( 'pagetranslation' ) ) {
+ // This page has never been marked
+ if ( $marked === false ) {
+ $linkDesc = $context->msg( 'translate-tag-markthis' )->escaped();
+ $actions[] = Linker::link( $translate, $linkDesc, array(), $par );
+ } else {
+ $markUrl = $translate->getFullUrl( $par );
+ $actions[] = $context->msg( 'translate-tag-markthisagain', $diffUrl, $markUrl )
+ ->parse();
+ }
+ } else {
+ $actions[] = $context->msg( 'translate-tag-hasnew', $diffUrl )->parse();
+ }
+ }
+
+ if ( !count( $actions ) ) {
+ return;
+ }
+
+ $language = $context->getLanguage();
+ $legend = Html::rawElement(
+ 'div',
+ array(
+ 'class' => 'mw-pt-translate-header noprint nomobile',
+ 'dir' => $language->getDir(),
+ 'lang' => $language->getCode(),
+ ),
+ $context->getLanguage()->semicolonList( $actions )
+ ) . Html::element( 'hr' );
+
+ $context->getOutput()->addHTML( $legend );
+ }
+
+ protected static function translationPageHeader( Title $title ) {
+ if ( !$title->exists() ) {
+ return;
+ }
+
+ // Check if applicable
+ $page = TranslatablePage::isTranslationPage( $title );
+ if ( $page === false ) {
+ return;
+ }
+
+ list( , $code ) = TranslateUtils::figureMessage( $title->getText() );
+
+ // Get the translation percentage
+ $pers = $page->getTranslationPercentages();
+ $per = 0;
+ if ( isset( $pers[$code] ) ) {
+ $per = $pers[$code] * 100;
+ }
+ $titleText = $page->getTitle()->getPrefixedText();
+
+ // This url might get cached
+ $url = wfExpandUrl( $page->getTranslationUrl( $code ), PROTO_RELATIVE );
+
+ // Output
+ $context = RequestContext::getMain();
+ $language = $context->getLanguage();
+ $wrap = Html::rawElement(
+ 'div',
+ array(
+ 'class' => 'mw-translate-page-info',
+ 'lang' => $language->getCode(),
+ 'dir' => $language->getDir(),
+ ),
+ '$1'
+ );
+
+ $out = $context->getOutput();
+
+ $out->wrapWikiMsg(
+ $wrap,
+ array(
+ 'tpt-translation-intro',
+ $url,
+ ':' . $titleText,
+ $language->formatNum( $per )
+ )
+ );
+ $out->addHTML( '<hr />' );
+ }
+
+ /// Hook: SpecialPage_initList
+ public static function replaceMovePage( &$list ) {
+ $list['Movepage'] = 'SpecialPageTranslationMovePage';
+
+ return true;
+ }
+
+ /// Hook: getUserPermissionsErrorsExpensive
+ public static function lockedPagesCheck( Title $title, User $user, $action, &$result ) {
+ if ( $action == 'read' ) {
+ return true;
+ }
+
+ $cache = wfGetCache( CACHE_ANYTHING );
+ $key = wfMemcKey( 'pt-lock', sha1( $title->getPrefixedText() ) );
+ // At least memcached mangles true to "1"
+ if ( $cache->get( $key ) == true ) {
+ $result = array( 'pt-locked-page' );
+
+ return false;
+ }
+
+ return true;
+ }
+
+ /// Hook: SkinSubPageSubtitle
+ public static function replaceSubtitle( &$subpages, $skin = null, OutputPage $out ) {
+ if ( !TranslatablePage::isTranslationPage( $out->getTitle() )
+ && !TranslatablePage::isSourcePage( $out->getTitle() )
+ ) {
+ return true;
+ }
+
+ // Copied from Skin::subPageSubtitle()
+ if ( $out->isArticle() && MWNamespace::hasSubpages( $out->getTitle()->getNamespace() ) ) {
+ $ptext = $out->getTitle()->getPrefixedText();
+ if ( preg_match( '/\//', $ptext ) ) {
+ $links = explode( '/', $ptext );
+ array_pop( $links );
+ // Also pop of one extra for language code is needed
+ if ( TranslatablePage::isTranslationPage( $out->getTitle() ) ) {
+ array_pop( $links );
+ }
+ $c = 0;
+ $growinglink = '';
+ $display = '';
+
+ foreach ( $links as $link ) {
+ $growinglink .= $link;
+ $display .= $link;
+ $linkObj = Title::newFromText( $growinglink );
+
+ if ( is_object( $linkObj ) && $linkObj->exists() ) {
+ $getlink = Linker::linkKnown(
+ SpecialPage::getTitleFor( 'MyLanguage', $growinglink ),
+ htmlspecialchars( $display )
+ );
+
+ $c++;
+
+ if ( $c > 1 ) {
+ $subpages .= wfMessage( 'pipe-separator' )->plain();
+ } else {
+ // This one is stupid imho, doesn't work with chihuahua
+ // $subpages .= '&lt; ';
+ }
+
+ $subpages .= $getlink;
+ $display = '';
+ } else {
+ $display .= '/';
+ }
+
+ $growinglink .= '/';
+ }
+ }
+
+ return false;
+ }
+
+ return true;
+ }
+
+ /// Hook: SpecialTranslate::executeTask
+ public static function sourceExport( RequestContext $context,
+ TranslateTask $task = null, MessageGroup $group, array $options
+ ) {
+ if ( $task || $options['taction'] !== 'export'
+ || !$group instanceof WikiPageMessageGroup
+ ) {
+ return true;
+ }
+
+ $page = TranslatablePage::newFromTitle( $group->getTitle() );
+ $collection = $group->initCollection( $options['language'] );
+ $collection->loadTranslations( DB_MASTER );
+ $text = $page->getParse()->getTranslationPageText( $collection );
+ $display = $page->getPageDisplayTitle( $options['language'] );
+ if ( $display ) {
+ $text = "{{DISPLAYTITLE:$display}}$text";
+ }
+ $output = Html::element( 'textarea', array( 'rows' => 25 ), $text );
+ $context->getOutput()->addHtml( $output );
+
+ return false;
+ }
+
+ /**
+ * Converts the edit tab (if exists) for translation pages to translate tab.
+ * Hook: SkinTemplateNavigation
+ * @since 2013.06
+ */
+ static function translateTab( Skin $skin, array &$tabs ) {
+ $title = $skin->getTitle();
+ // Set display title
+ $page = TranslatablePage::isTranslationPage( $title );
+ if ( !$page ) {
+ return true;
+ }
+
+ $handle = new MessageHandle( $title );
+ $code = $handle->getCode();
+
+ if ( isset( $tabs['views']['edit'] ) ) {
+ $tabs['views']['edit']['text'] = $skin->msg( 'tpt-tab-translate' )->text();
+ $tabs['views']['edit']['href'] = $page->getTranslationUrl( $code );
+ }
+
+ return true;
+ }
+
+ /**
+ * Hook to update source and destination translation pages on moving translation units
+ * Hook: TitleMoveComplete
+ * @since 2014.08
+ */
+ public static function onMoveTranslationUnits( Title &$ot, Title &$nt, User &$user,
+ $oldid, $newid, $reason
+ ) {
+ // Do the update only once. In case running by job queue, the update is not done here
+ if ( self::$jobQueueRunning ) {
+ return;
+ }
+
+ $groupLast = null;
+ foreach ( array( $ot, $nt ) as $title ) {
+ $handle = new MessageHandle( $title );
+ if ( !$handle->isValid() ) {
+ continue;
+ }
+
+ $group = $handle->getGroup();
+ if ( !$group instanceof WikiPageMessageGroup ) {
+ continue;
+ }
+
+ $language = $handle->getCode();
+
+ // Update the page only once if source and destination units
+ // belong to the same page
+ if ( $group !== $groupLast ) {
+ $groupLast = $group;
+ $page = TranslatablePage::newFromTitle( $group->getTitle() );
+ self::updateTranslationPage( $page, $language, $user, 0, $reason );
+ }
+ }
+ }
+}
diff --git a/MLEB/Translate/tag/PageTranslationLogFormatter.php b/MLEB/Translate/tag/PageTranslationLogFormatter.php
new file mode 100644
index 00000000..4008223c
--- /dev/null
+++ b/MLEB/Translate/tag/PageTranslationLogFormatter.php
@@ -0,0 +1,95 @@
+<?php
+/**
+ * Class for formatting Translate page translation logs.
+ *
+ * @file
+ * @author Niklas Laxström
+ * @copyright Copyright © 2013, Niklas Laxström
+ * @license GPL-2.0+
+ */
+
+/**
+ * Class for formatting Translate page translation logs.
+ */
+class PageTranslationLogFormatter extends LogFormatter {
+ public function getMessageParameters() {
+ $params = parent::getMessageParameters();
+ $legacy = $this->entry->getParameters();
+
+ $type = $this->entry->getFullType();
+ switch ( $type ) {
+ case 'pagetranslation/mark':
+ $revision = $legacy['revision'];
+
+ $targetPage = $this->makePageLink(
+ $this->entry->getTarget(),
+ array( 'oldid' => $revision )
+ );
+
+ $params[2] = Message::rawParam( $targetPage );
+ break;
+
+ case 'pagetranslation/moveok':
+ case 'pagetranslation/movenok':
+ case 'pagetranslation/deletefnok':
+ case 'pagetranslation/deletelnok':
+ $target = $legacy['target'];
+
+ $moveTarget = $this->makePageLink( Title::newFromText( $target ) );
+ $params[3] = Message::rawParam( $moveTarget );
+ break;
+
+ case 'pagetranslation/prioritylanguages':
+ $params[3] = $legacy['force'];
+ $languages = $legacy['languages'];
+ if ( $languages !== false ) {
+ $lang = $this->context->getLanguage();
+
+ $languages = array_map(
+ 'trim',
+ preg_split( '/,/', $languages, -1, PREG_SPLIT_NO_EMPTY )
+ );
+ $languages = array_map( function ( $code ) use ( $lang ) {
+ return TranslateUtils::getLanguageName( $code, $lang->getCode() );
+ }, $languages );
+
+ $params[4] = $lang->listToText( $languages );
+ }
+ break;
+
+ case 'pagetranslation/associate':
+ case 'pagetranslation/dissociate':
+ $params[3] = $legacy['aggregategroup'];
+ break;
+ }
+
+ return $params;
+ }
+
+ public function getComment() {
+ $legacy = $this->entry->getParameters();
+ if ( isset( $legacy['reason'] ) ) {
+ $comment = Linker::commentBlock( $legacy['reason'] );
+
+ // No hard coded spaces thanx
+ return ltrim( $comment );
+ }
+
+ return parent::getComment();
+ }
+
+ protected function getMessageKey() {
+ $key = parent::getMessageKey();
+ $type = $this->entry->getFullType();
+ if ( $type === 'pagetranslation/prioritylanguages' ) {
+ $params = $this->getMessageParameters();
+ if ( !isset( $params[4] ) ) {
+ $key .= '-unset';
+ } elseif ( $params['3'] === 'on' ) {
+ $key .= '-force';
+ }
+ }
+
+ return $key;
+ }
+}
diff --git a/MLEB/Translate/tag/SpecialPageTranslation.php b/MLEB/Translate/tag/SpecialPageTranslation.php
new file mode 100644
index 00000000..7efbfd0f
--- /dev/null
+++ b/MLEB/Translate/tag/SpecialPageTranslation.php
@@ -0,0 +1,978 @@
+<?php
+/**
+ * Contains logic for special page Special:ImportTranslations.
+ *
+ * @file
+ * @author Niklas Laxström
+ * @author Siebrand Mazeland
+ * @copyright Copyright © 2008-2013 Niklas Laxström, Siebrand Mazeland
+ * @license GPL-2.0+
+ */
+
+/**
+ * A special page for marking revisions of pages for translation.
+ *
+ * This page is the main tool for translation administrators in the wiki.
+ * It will list all pages in their various states and provides actions
+ * that are suitable for given translatable page.
+ *
+ * @ingroup SpecialPage PageTranslation
+ */
+class SpecialPageTranslation extends TranslateSpecialPage {
+ function __construct() {
+ parent::__construct( 'PageTranslation' );
+ }
+
+ public function execute( $parameters ) {
+ $this->setHeaders();
+
+ $user = $this->getUser();
+ $request = $this->getRequest();
+
+ $target = $request->getText( 'target', $parameters );
+ $revision = $request->getInt( 'revision', 0 );
+ $action = $request->getVal( 'do' );
+ $out = $this->getOutput();
+
+ TranslateUtils::addSpecialHelpLink(
+ $out,
+ 'Help:Extension:Translate/Page_translation_example'
+ );
+
+ // No specific page or invalid input
+ $title = Title::newFromText( $target );
+ if ( !$title ) {
+ if ( $target !== '' ) {
+ $out->addWikiMsg( 'tpt-badtitle' );
+ } else {
+ $this->listPages();
+ }
+
+ return;
+ }
+
+ // Check permissions
+ if ( !$user->isAllowed( 'pagetranslation' ) ) {
+ throw new PermissionsError( 'pagetranslation' );
+ }
+
+ // Check permissions
+ if ( $request->wasPosted() && !$user->matchEditToken( $request->getText( 'token' ) ) ) {
+ throw new PermissionsError( 'pagetranslation' );
+ }
+
+ // We are processing some specific page
+ if ( !$title->exists() ) {
+ $out->addWikiMsg( 'tpt-nosuchpage', $title->getPrefixedText() );
+
+ return;
+ }
+
+ if ( $action === 'discourage' || $action === 'encourage' ) {
+ $id = TranslatablePage::getMessageGroupIdFromTitle( $title );
+ $current = MessageGroups::getPriority( $id );
+
+ if ( $action === 'encourage' ) {
+ $new = '';
+ } else {
+ $new = 'discouraged';
+ }
+
+ if ( $new !== $current ) {
+ MessageGroups::setPriority( $id, $new );
+ $entry = new ManualLogEntry( 'pagetranslation', $action );
+ $entry->setPerformer( $user );
+ $entry->setTarget( $title );
+ $logid = $entry->insert();
+ $entry->publish( $logid );
+ }
+
+ $this->listPages();
+
+ $group = MessageGroups::getGroup( $id );
+ $parents = MessageGroups::getSharedGroups( $group );
+ MessageGroupStats::clearGroup( $parents );
+
+ return;
+ }
+
+ if ( $action === 'unlink' ) {
+ if ( !$request->wasPosted() ) {
+ $this->showUnlinkConfirmation( $title );
+
+ return;
+ } else {
+ $page = TranslatablePage::newFromTitle( $title );
+ $content = ContentHandler::makeContent(
+ self::getStrippedSourcePageText( $page->getParse() ),
+ $title
+ );
+
+ $status = WikiPage::factory( $title )->doEditContent(
+ $content,
+ $this->msg( 'tpt-unlink-summary' )->inContentLanguage()->text(),
+ EDIT_FORCE_BOT | EDIT_UPDATE
+ );
+
+ if ( !$status->isOK() ) {
+ $out->wrapWikiMsg(
+ '<div class="errorbox">$1</div>',
+ array( 'tpt-edit-failed', $status->getWikiText() )
+ );
+
+ return;
+ }
+
+ $page = TranslatablePage::newFromTitle( $title );
+ $this->unmarkPage( $page, $user );
+ $out->wrapWikiMsg(
+ '<div class="successbox">$1</div>',
+ array( 'tpt-unmarked', $title->getPrefixedText() )
+ );
+ $this->listPages();
+
+ return;
+ }
+ }
+
+ if ( $action === 'unmark' ) {
+ $page = TranslatablePage::newFromTitle( $title );
+ $this->unmarkPage( $page, $user );
+ $out->wrapWikiMsg(
+ '<div class="successbox">$1</div>',
+ array( 'tpt-unmarked', $title->getPrefixedText() )
+ );
+ $this->listPages();
+
+ return;
+ }
+
+ if ( $revision === 0 ) {
+ // Get the latest revision
+ $revision = intval( $title->getLatestRevID() );
+ }
+
+ $page = TranslatablePage::newFromRevision( $title, $revision );
+ if ( !$page instanceof TranslatablePage ) {
+ $out->wrapWikiMsg(
+ '<div class="errorbox">$1</div>',
+ array( 'tpt-notsuitable', $title->getPrefixedText(), $revision )
+ );
+
+ return;
+ }
+
+ if ( $revision !== intval( $title->getLatestRevID() ) ) {
+ // We do want to notify the reviewer if the underlying page changes during review
+ $target = $title->getFullUrl( array( 'oldid' => $revision ) );
+ $link = "<span class='plainlinks'>[$target $revision]</span>";
+ $out->wrapWikiMsg(
+ '<div class="warningbox">$1</div>',
+ array( 'tpt-oldrevision', $title->getPrefixedText(), $link )
+ );
+ $this->listPages();
+
+ return;
+ }
+
+ $lastrev = $page->getMarkedTag();
+ if ( $lastrev !== false && $lastrev === $revision ) {
+ $out->wrapWikiMsg(
+ '<div class="warningbox">$1</div>',
+ array( 'tpt-already-marked' )
+ );
+ $this->listPages();
+
+ return;
+ }
+
+ // This will modify the sections to include name property
+ $error = false;
+ $sections = $this->checkInput( $page, $error );
+
+ // Non-fatal error which prevents saving
+ if ( $error === false && $request->wasPosted() ) {
+ // Check if user wants to translate title
+ // If not, remove it from the list of sections
+ if ( !$request->getCheck( 'translatetitle' ) ) {
+ $sections = array_filter( $sections, function( $s ) {
+ return $s->id !== 'Page display title';
+ } );
+ }
+
+ $err = $this->markForTranslation( $page, $sections );
+
+ if ( $err ) {
+ call_user_func_array( array( $out, 'addWikiMsg' ), $err );
+ } else {
+ $this->showSuccess( $page );
+ $this->listPages();
+ }
+
+ return;
+ }
+
+ $this->showPage( $page, $sections );
+ }
+
+ /**
+ * @param TranslatablePage $page
+ */
+ public function showSuccess( TranslatablePage $page ) {
+ $titleText = $page->getTitle()->getPrefixedText();
+ $num = $this->getLanguage()->formatNum( $page->getParse()->countSections() );
+ $link = SpecialPage::getTitleFor( 'Translate' )->getFullUrl( array(
+ 'group' => $page->getMessageGroupId(),
+ 'action' => 'page',
+ 'filter' => '',
+ ) );
+
+ $this->getOutput()->wrapWikiMsg(
+ '<div class="successbox">$1</div>',
+ array( 'tpt-saveok', $titleText, $num, $link )
+ );
+
+ // If TranslationNotifications is installed, and the user can notify
+ // translators, add a convenience link.
+ if ( method_exists( 'SpecialNotifyTranslators', 'execute' ) &&
+ $this->getUser()->isAllowed( SpecialNotifyTranslators::$right )
+ ) {
+ $link = SpecialPage::getTitleFor( 'NotifyTranslators' )->getFullUrl(
+ array( 'tpage' => $page->getTitle()->getArticleID() ) );
+ $this->getOutput()->addWikiMsg( 'tpt-offer-notify', $link );
+ }
+ }
+
+ protected function showUnlinkConfirmation( Title $target ) {
+ $formParams = array(
+ 'method' => 'post',
+ 'action' => $this->getTitle()->getFullURL(),
+ );
+
+ $this->getOutput()->addHtml(
+ Html::openElement( 'form', $formParams ) .
+ Html::hidden( 'do', 'unlink' ) .
+ Html::hidden( 'title', $this->getTitle()->getPrefixedText() ) .
+ Html::hidden( 'target', $target->getPrefixedText() ) .
+ Html::hidden( 'token', $this->getUser()->getEditToken() ) .
+ $this->msg( 'tpt-unlink-confirm', $target->getPrefixedtext() )->parseAsBlock() .
+ Xml::submitButton(
+ $this->msg( 'tpt-unlink-button' )->text(),
+ array( 'class' => 'mw-ui-button mw-ui-destructive' )
+ ) .
+ Html::closeElement( 'form' )
+ );
+ }
+
+ protected function unmarkPage( TranslatablePage $page, $user ) {
+ $page->unmarkTranslatablePage();
+ $page->getTitle()->invalidateCache();
+
+ $entry = new ManualLogEntry( 'pagetranslation', 'unmark' );
+ $entry->setPerformer( $user );
+ $entry->setTarget( $page->getTitle() );
+ $logid = $entry->insert();
+ $entry->publish( $logid );
+ }
+
+ public function loadPagesFromDB() {
+ $dbr = wfGetDB( DB_MASTER );
+ $tables = array( 'page', 'revtag' );
+ $vars = array(
+ 'page_id',
+ 'page_title',
+ 'page_namespace',
+ 'page_latest',
+ 'MAX(rt_revision) AS rt_revision',
+ 'rt_type'
+ );
+ $conds = array(
+ 'page_id=rt_page',
+ 'rt_type' => array( RevTag::getType( 'tp:mark' ), RevTag::getType( 'tp:tag' ) ),
+ );
+ $options = array(
+ 'ORDER BY' => 'page_namespace, page_title',
+ 'GROUP BY' => 'page_id, rt_type',
+ );
+ $res = $dbr->select( $tables, $vars, $conds, __METHOD__, $options );
+
+ return $res;
+ }
+
+ protected function buildPageArray( /*db result*/$res ) {
+ $pages = array();
+ foreach ( $res as $r ) {
+ // We have multiple rows for same page, because of different tags
+ if ( !isset( $pages[$r->page_id] ) ) {
+ $pages[$r->page_id] = array();
+ $title = Title::newFromRow( $r );
+ $pages[$r->page_id]['title'] = $title;
+ $pages[$r->page_id]['latest'] = intval( $title->getLatestRevID() );
+ }
+
+ $tag = RevTag::typeToTag( $r->rt_type );
+ $pages[$r->page_id][$tag] = intval( $r->rt_revision );
+ }
+
+ return $pages;
+ }
+
+ /**
+ * @param array $in
+ * @return array
+ */
+ protected function classifyPages( array $in ) {
+ $out = array(
+ 'proposed' => array(),
+ 'active' => array(),
+ 'broken' => array(),
+ 'discouraged' => array(),
+ );
+
+ foreach ( $in as $index => $page ) {
+ if ( !isset( $page['tp:mark'] ) ) {
+ // Never marked, check that the latest version is ready
+ if ( $page['tp:tag'] === $page['latest'] ) {
+ $out['proposed'][$index] = $page;
+ } // Otherwise ignore such pages
+ } elseif ( $page['tp:tag'] === $page['latest'] ) {
+ // Marked and latest version if fine
+ $out['active'][$index] = $page;
+ } else {
+ // Marked but latest version if not fine
+ $out['broken'][$index] = $page;
+ }
+ }
+
+ // broken and proposed take preference over discouraged status
+ foreach ( $out['active'] as $index => $page ) {
+ $id = TranslatablePage::getMessageGroupIdFromTitle( $page['title'] );
+ $group = MessageGroups::getGroup( $id );
+ if ( MessageGroups::getPriority( $group ) === 'discouraged' ) {
+ $out['discouraged'][$index] = $page;
+ unset( $out['active'][$index] );
+ }
+ }
+
+ return $out;
+ }
+
+ public function listPages() {
+ $out = $this->getOutput();
+
+ $res = $this->loadPagesFromDB();
+ $allpages = $this->buildPageArray( $res );
+ if ( !count( $allpages ) ) {
+ $out->addWikiMsg( 'tpt-list-nopages' );
+
+ return;
+ }
+ $types = $this->classifyPages( $allpages );
+
+ $pages = $types['proposed'];
+ if ( count( $pages ) ) {
+ $out->wrapWikiMsg( '== $1 ==', 'tpt-new-pages-title' );
+ $out->addWikiMsg( 'tpt-new-pages', count( $pages ) );
+ $out->addHtml( '<ol>' );
+ foreach ( $pages as $page ) {
+ $link = Linker::link( $page['title'] );
+ $acts = $this->actionLinks( $page, 'proposed' );
+ $out->addHtml( "<li>$link $acts</li>" );
+ }
+ $out->addHtml( '</ol>' );
+ }
+
+ $pages = $types['active'];
+ if ( count( $pages ) ) {
+ $out->wrapWikiMsg( '== $1 ==', 'tpt-old-pages-title' );
+ $out->addWikiMsg( 'tpt-old-pages', count( $pages ) );
+ $out->addHtml( '<ol>' );
+ foreach ( $pages as $page ) {
+ $link = Linker::link( $page['title'] );
+ if ( $page['tp:mark'] !== $page['tp:tag'] ) {
+ $link = "<strong>$link</strong>";
+ }
+
+ $acts = $this->actionLinks( $page, 'active' );
+ $out->addHtml( "<li>$link $acts</li>" );
+ }
+ $out->addHtml( '</ol>' );
+ }
+
+ $pages = $types['broken'];
+ if ( count( $pages ) ) {
+ $out->wrapWikiMsg( '== $1 ==', 'tpt-other-pages-title' );
+ $out->addWikiMsg( 'tpt-other-pages', count( $pages ) );
+ $out->addHtml( '<ol>' );
+ foreach ( $pages as $page ) {
+ $link = Linker::link( $page['title'] );
+ $acts = $this->actionLinks( $page, 'broken' );
+ $out->addHtml( "<li>$link $acts</li>" );
+ }
+ $out->addHtml( '</ol>' );
+ }
+
+ $pages = $types['discouraged'];
+ if ( count( $pages ) ) {
+ $out->wrapWikiMsg( '== $1 ==', 'tpt-discouraged-pages-title' );
+ $out->addWikiMsg( 'tpt-discouraged-pages', count( $pages ) );
+ $out->addHtml( '<ol>' );
+ foreach ( $pages as $page ) {
+ $link = Linker::link( $page['title'] );
+ if ( $page['tp:mark'] !== $page['tp:tag'] ) {
+ $link = "<strong>$link</strong>";
+ }
+
+ $acts = $this->actionLinks( $page, 'discouraged' );
+ $out->addHtml( "<li>$link $acts</li>" );
+ }
+ $out->addHtml( '</ol>' );
+ }
+ }
+
+ /**
+ * @param array $page
+ * @param string $type
+ * @return string
+ */
+ protected function actionLinks( array $page, $type ) {
+ $actions = array();
+ /**
+ * @var Title $title
+ */
+ $title = $page['title'];
+ $user = $this->getUser();
+
+ if ( $user->isAllowed( 'pagetranslation' ) ) {
+ $token = $user->getEditToken();
+
+ $pending = $type === 'active' && $page['latest'] !== $page['tp:mark'];
+ if ( $type === 'proposed' || $pending ) {
+ $actions[] = Linker::link(
+ $this->getTitle(),
+ $this->msg( 'tpt-rev-mark' )->escaped(),
+ array( 'title' => $this->msg( 'tpt-rev-mark-tooltip' )->text() ),
+ array(
+ 'do' => 'mark',
+ 'target' => $title->getPrefixedText(),
+ 'revision' => $title->getLatestRevId(),
+ 'token' => $token,
+ )
+ );
+ }
+
+ if ( $type === 'active' ) {
+ $actions[] = Linker::link(
+ $this->getTitle(),
+ $this->msg( 'tpt-rev-discourage' )->escaped(),
+ array( 'title' => $this->msg( 'tpt-rev-discourage-tooltip' )->text() ),
+ array(
+ 'do' => 'discourage',
+ 'target' => $title->getPrefixedText(),
+ 'revision' => -1,
+ 'token' => $token,
+ )
+ );
+ } elseif ( $type === 'discouraged' ) {
+ $actions[] = Linker::link(
+ $this->getTitle(),
+ $this->msg( 'tpt-rev-encourage' )->escaped(),
+ array( 'title' => $this->msg( 'tpt-rev-encourage-tooltip' )->text() ),
+ array(
+ 'do' => 'encourage',
+ 'target' => $title->getPrefixedText(),
+ 'revision' => -1,
+ 'token' => $token,
+ )
+ );
+ }
+
+ if ( $type !== 'proposed' ) {
+ $actions[] = Linker::link(
+ $this->getTitle(),
+ $this->msg( 'tpt-rev-unmark' )->escaped(),
+ array( 'title' => $this->msg( 'tpt-rev-unmark-tooltip' )->text() ),
+ array(
+ 'do' => $type === 'broken' ? 'unmark' : 'unlink',
+ 'target' => $title->getPrefixedText(),
+ 'revision' => -1,
+ 'token' => $token,
+ )
+ );
+ }
+ }
+
+ if ( !count( $actions ) ) {
+ return '';
+ }
+
+ $flattened = $this->getLanguage()->semicolonList( $actions );
+
+ return Html::rawElement(
+ 'span',
+ array( 'class' => 'mw-tpt-actions' ),
+ $this->msg( 'parentheses' )->rawParams( $flattened )->escaped()
+ );
+ }
+
+ /**
+ * @param TranslatablePage $page
+ * @param bool $error
+ * @return array
+ */
+ public function checkInput( TranslatablePage $page, &$error = false ) {
+ $usedNames = array();
+ $highest = intval( TranslateMetadata::get( $page->getMessageGroupId(), 'maxid' ) );
+ $parse = $page->getParse();
+ $sections = $parse->getSectionsForSave( $highest );
+
+ foreach ( $sections as $s ) {
+ // We need to do checks for both new and existing sections.
+ // Someone might have tampered with the page source adding
+ // duplicate or invalid markers.
+ if ( isset( $usedNames[$s->id] ) ) {
+ $this->getOutput()->addWikiMsg( 'tpt-duplicate', $s->id );
+ $error = true;
+ }
+ $usedNames[$s->id] = true;
+ $s->name = $s->id;
+ }
+
+ return $sections;
+ }
+
+ /**
+ * Displays the sections and changes for the user to review
+ * @param TranslatablePage $page
+ * @param array $sections
+ */
+ public function showPage( TranslatablePage $page, array $sections ) {
+ global $wgContLang;
+
+ $out = $this->getOutput();
+
+ $out->setSubtitle( Linker::link( $page->getTitle() ) );
+ $out->addModules( 'ext.translate.special.pagetranslation' );
+
+ $out->addWikiMsg( 'tpt-showpage-intro' );
+
+ $formParams = array(
+ 'method' => 'post',
+ 'action' => $this->getTitle()->getFullURL(),
+ 'class' => 'mw-tpt-sp-markform',
+ );
+
+ $out->addHTML(
+ Xml::openElement( 'form', $formParams ) .
+ Html::hidden( 'title', $this->getTitle()->getPrefixedText() ) .
+ Html::hidden( 'revision', $page->getRevision() ) .
+ Html::hidden( 'target', $page->getTitle()->getPrefixedtext() ) .
+ Html::hidden( 'token', $this->getUser()->getEditToken() )
+ );
+
+ $out->wrapWikiMsg( '==$1==', 'tpt-sections-oldnew' );
+
+ $diffOld = $this->msg( 'tpt-diff-old' )->escaped();
+ $diffNew = $this->msg( 'tpt-diff-new' )->escaped();
+ $hasChanges = false;
+
+ // Check whether page title was previously marked for translation.
+ // If the page is marked for translation the first time, default to checked.
+ $defaultChecked = $page->hasPageDisplayTitle();
+
+ /**
+ * @var TPSection $s
+ */
+ foreach ( $sections as $s ) {
+ if ( $s->name === 'Page display title' ) {
+ // Set section type as new if title previously unchecked
+ $s->type = $defaultChecked ? $s->type : 'new';
+
+ // Checkbox for page title optional translation
+ $this->getOutput()->addHTML ( Xml::checkLabel(
+ $this->msg( 'tpt-translate-title' )->text(),
+ 'translatetitle',
+ 'mw-translate-title',
+ $defaultChecked
+ ) );
+ }
+
+ if ( $s->type === 'new' ) {
+ $hasChanges = true;
+ $name = $this->msg( 'tpt-section-new', $s->name )->escaped();
+ } else {
+ $name = $this->msg( 'tpt-section', $s->name )->escaped();
+ }
+
+ if ( $s->type === 'changed' ) {
+ $hasChanges = true;
+ $diff = new DifferenceEngine;
+ if ( method_exists( 'DifferenceEngine', 'setTextLanguage' ) ) {
+ $diff->setTextLanguage( $wgContLang );
+ }
+ $diff->setReducedLineNumbers();
+
+ $oldContent = ContentHandler::makeContent( $s->getOldText(), $diff->getTitle() );
+ $newContent = ContentHandler::makeContent( $s->getText(), $diff->getTitle() );
+
+ $diff->setContent( $oldContent, $newContent );
+
+ $text = $diff->getDiff( $diffOld, $diffNew );
+ $diffOld = $diffNew = null;
+ $diff->showDiffStyle();
+
+ $id = "tpt-sect-{$s->id}-action-nofuzzy";
+ $checkLabel = Xml::checkLabel(
+ $this->msg( 'tpt-action-nofuzzy' )->text(),
+ $id,
+ $id,
+ false
+ );
+ $text = $checkLabel . $text;
+ } else {
+ $text = TranslateUtils::convertWhiteSpaceToHTML( $s->getText() );
+ }
+
+ # For changed text, the language is set by $diff->setTextLanguage()
+ $lang = $s->type === 'changed' ? null : $wgContLang;
+ $out->addHTML( MessageWebImporter::makeSectionElement(
+ $name,
+ $s->type,
+ $text, $lang
+ ) );
+ }
+
+ $deletedSections = $page->getParse()->getDeletedSections();
+ if ( count( $deletedSections ) ) {
+ $hasChanges = true;
+ $out->wrapWikiMsg( '==$1==', 'tpt-sections-deleted' );
+
+ /**
+ * @var TPSection $s
+ */
+ foreach ( $deletedSections as $s ) {
+ $name = $this->msg( 'tpt-section-deleted', $s->id )->escaped();
+ $text = TranslateUtils::convertWhiteSpaceToHTML( $s->getText() );
+ $out->addHTML( MessageWebImporter::makeSectionElement(
+ $name,
+ $s->type,
+ $text,
+ $wgContLang
+ ) );
+ }
+ }
+
+ // Display template changes if applicable
+ if ( $page->getMarkedTag() !== false ) {
+ $hasChanges = true;
+ $newTemplate = $page->getParse()->getTemplatePretty();
+ $oldPage = TranslatablePage::newFromRevision(
+ $page->getTitle(),
+ $page->getMarkedTag()
+ );
+ $oldTemplate = $oldPage->getParse()->getTemplatePretty();
+
+ if ( $oldTemplate !== $newTemplate ) {
+ $out->wrapWikiMsg( '==$1==', 'tpt-sections-template' );
+
+ $diff = new DifferenceEngine;
+ if ( method_exists( 'DifferenceEngine', 'setTextLanguage' ) ) {
+ $diff->setTextLanguage( $wgContLang );
+ }
+
+ $oldContent = ContentHandler::makeContent( $oldTemplate, $diff->getTitle() );
+ $newContent = ContentHandler::makeContent( $newTemplate, $diff->getTitle() );
+
+ $diff->setContent( $oldContent, $newContent );
+
+ $text = $diff->getDiff(
+ $this->msg( 'tpt-diff-old' )->escaped(),
+ $this->msg( 'tpt-diff-new' )->escaped()
+ );
+ $diff->showDiffStyle();
+ $diff->setReducedLineNumbers();
+
+ $contentParams = array( 'class' => 'mw-tpt-sp-content' );
+ $out->addHTML( Xml::tags( 'div', $contentParams, $text ) );
+ }
+ }
+
+ if ( !$hasChanges ) {
+ $out->wrapWikiMsg( '<div class="successbox">$1</div>', 'tpt-mark-nochanges' );
+ }
+
+ $this->priorityLanguagesForm( $page );
+
+ $out->addHTML(
+ Xml::submitButton( $this->msg( 'tpt-submit' )->text() ) .
+ Xml::closeElement( 'form' )
+ );
+ }
+
+ /**
+ * @param TranslatablePage $page
+ */
+ protected function priorityLanguagesForm( TranslatablePage $page ) {
+ global $wgContLang;
+
+ $groupId = $page->getMessageGroupId();
+ $this->getOutput()->wrapWikiMsg( '==$1==', 'tpt-sections-prioritylangs' );
+
+ $langSelector = Xml::languageSelector(
+ $wgContLang->getCode(),
+ false,
+ $this->getLanguage()->getCode()
+ );
+
+ $hLangs = Xml::inputLabelSep(
+ $this->msg( 'tpt-select-prioritylangs' )->text(),
+ 'prioritylangs', // name
+ 'tpt-prioritylangs', // id
+ 50,
+ TranslateMetadata::get( $groupId, 'prioritylangs' )
+ );
+
+ $hForce = Xml::checkLabel(
+ $this->msg( 'tpt-select-prioritylangs-force' )->text(),
+ 'forcelimit', // name
+ 'tpt-priority-forcelimit', // id
+ TranslateMetadata::get( $groupId, 'priorityforce' ) === 'on'
+ );
+
+ $hReason = Xml::inputLabelSep(
+ $this->msg( 'tpt-select-prioritylangs-reason' )->text(),
+ 'priorityreason', // name
+ 'tpt-priority-reason', // id
+ 50, // size
+ TranslateMetadata::get( $groupId, 'priorityreason' )
+ );
+
+ $this->getOutput()->addHTML(
+ "<table>" .
+ "<tr>" .
+ "<td class='mw-label'>$hLangs[0]</td>" .
+ "<td class='mw-input'>$hLangs[1]$langSelector[1]</td>" .
+ "</tr>" .
+ "<tr><td></td><td class='mw-inout'>$hForce</td></tr>" .
+ "<tr>" .
+ "<td class='mw-label'>$hReason[0]</td>" .
+ "<td class='mw-input'>$hReason[1]</td>" .
+ "</tr>" .
+ "</table>"
+ );
+ }
+
+ /**
+ * This function does the heavy duty of marking a page.
+ * - Updates the source page with section markers.
+ * - Updates translate_sections table
+ * - Updates revtags table
+ * - Setups renderjobs to update the translation pages
+ * - Invalidates caches
+ * @param TranslatablePage $page
+ * @param array $sections
+ * @return array|bool
+ */
+ public function markForTranslation( TranslatablePage $page, array $sections ) {
+ // Add the section markers to the source page
+ $wikiPage = WikiPage::factory( $page->getTitle() );
+ $content = ContentHandler::makeContent(
+ $page->getParse()->getSourcePageText(),
+ $page->getTitle()
+ );
+
+ $status = $wikiPage->doEditContent(
+ $content,
+ $this->msg( 'tpt-mark-summary' )->inContentLanguage()->text(),
+ EDIT_FORCE_BOT | EDIT_UPDATE
+ );
+
+ if ( !$status->isOK() ) {
+ return array( 'tpt-edit-failed', $status->getWikiText() );
+ }
+
+ $newrevision = $status->value['revision'];
+
+ // In theory it is either null or Revision object,
+ // never revision object with null id, but who knows
+ if ( $newrevision instanceof Revision ) {
+ $newrevision = $newrevision->getId();
+ }
+
+ if ( $newrevision === null ) {
+ // Probably a no-change edit, so no new revision was assigned.
+ // Get the latest revision manually
+ $newrevision = $page->getTitle()->getLatestRevId();
+ }
+
+ $inserts = array();
+ $changed = array();
+ $maxid = intval( TranslateMetadata::get( $page->getMessageGroupId(), 'maxid' ) );
+
+ $pageId = $page->getTitle()->getArticleID();
+ /**
+ * @var TPSection $s
+ */
+ foreach ( array_values( $sections ) as $index => $s ) {
+ $maxid = max( $maxid, intval( $s->name ) );
+ $changed[] = $s->name;
+
+ if ( $this->getRequest()->getCheck( "tpt-sect-{$s->id}-action-nofuzzy" ) ) {
+ // This will be checked by getTranslationUnitJobs
+ $s->type = 'old';
+ }
+
+ $inserts[] = array(
+ 'trs_page' => $pageId,
+ 'trs_key' => $s->name,
+ 'trs_text' => $s->getText(),
+ 'trs_order' => $index
+ );
+ }
+
+ $dbw = wfGetDB( DB_MASTER );
+ $dbw->delete(
+ 'translate_sections',
+ array( 'trs_page' => $page->getTitle()->getArticleID() ),
+ __METHOD__
+ );
+ $dbw->insert( 'translate_sections', $inserts, __METHOD__ );
+ TranslateMetadata::set( $page->getMessageGroupId(), 'maxid', $maxid );
+
+ $page->addMarkedTag( $newrevision );
+ MessageGroups::clearCache();
+
+ $jobs = self::getRenderJobs( $page );
+ JobQueueGroup::singleton()->push( $jobs );
+
+ $jobs = self::getTranslationUnitJobs( $page, $sections );
+ JobQueueGroup::singleton()->push( $jobs );
+
+ // Logging
+ $this->handlePriorityLanguages( $this->getRequest(), $page );
+
+ $entry = new ManualLogEntry( 'pagetranslation', 'mark' );
+ $entry->setPerformer( $this->getUser() );
+ $entry->setTarget( $page->getTitle() );
+ $entry->setParameters( array(
+ 'revision' => $newrevision,
+ 'changed' => count( $changed ),
+ ) );
+ $logid = $entry->insert();
+ $entry->publish( $logid );
+
+ // Clear more caches
+ $page->getTitle()->invalidateCache();
+ MessageIndexRebuildJob::newJob()->run();
+
+ return false;
+ }
+
+ /**
+ * @param WebRequest $request
+ * @param TranslatablePage $page
+ */
+ protected function handlePriorityLanguages( WebRequest $request, TranslatablePage $page ) {
+ // new priority languages
+ $npLangs = rtrim( trim( $request->getVal( 'prioritylangs' ) ), ',' );
+ $npForce = $request->getCheck( 'forcelimit' ) ? 'on' : 'off';
+ $npReason = trim( $request->getText( 'priorityreason' ) );
+
+ // Normalize
+ $npLangs = array_map( 'trim', explode( ',', $npLangs ) );
+ $npLangs = array_unique( $npLangs );
+ // Remove invalid language codes.
+ $languages = Language::fetchLanguageNames();
+ foreach ( $npLangs as $index => $language ) {
+ if ( !array_key_exists( $language, $languages ) ) {
+ unset( $npLangs[$index] );
+ }
+ }
+ $npLangs = implode( ',', $npLangs );
+ if ( $npLangs === '' ) {
+ $npLangs = false;
+ $npForce = false;
+ $npReason = false;
+ }
+
+ $groupId = $page->getMessageGroupId();
+ // old priority languages
+ $opLangs = TranslateMetadata::get( $groupId, 'prioritylangs' );
+ $opForce = TranslateMetadata::get( $groupId, 'priorityforce' );
+ $opReason = TranslateMetadata::get( $groupId, 'priorityreason' );
+
+ TranslateMetadata::set( $groupId, 'prioritylangs', $npLangs );
+ TranslateMetadata::set( $groupId, 'priorityforce', $npForce );
+ TranslateMetadata::set( $groupId, 'priorityreason', $npReason );
+
+ if ( $opLangs !== $npLangs || $opForce !== $npForce || $opReason !== $npReason ) {
+ $params = array(
+ 'languages' => $npLangs,
+ 'force' => $npForce,
+ 'reason' => $npReason,
+ );
+
+ $entry = new ManualLogEntry( 'pagetranslation', 'prioritylanguages' );
+ $entry->setPerformer( $this->getUser() );
+ $entry->setTarget( $page->getTitle() );
+ $entry->setParameters( $params );
+ $entry->setComment( $npReason );
+ $logid = $entry->insert();
+ $entry->publish( $logid );
+ }
+ }
+
+ /**
+ * Creates jobs needed to create or update all translation pages.
+ * @param TranslatablePage $page
+ * @return Job[]
+ * @since 2013-01-28
+ */
+ public static function getRenderJobs( TranslatablePage $page ) {
+ $jobs = array();
+
+ $titles = $page->getTranslationPages();
+ foreach ( $titles as $t ) {
+ $jobs[] = TranslateRenderJob::newJob( $t );
+ }
+
+ return $jobs;
+ }
+
+ /**
+ * Creates jobs needed to create or update all translation page definitions.
+ * @param TranslatablePage $page
+ * @param array $sections
+ * @return Job[]
+ * @since 2013-01-28
+ */
+ public static function getTranslationUnitJobs( TranslatablePage $page, array $sections ) {
+ $jobs = array();
+
+ $code = $page->getSourceLanguageCode();
+ $prefix = $page->getTitle()->getPrefixedText();
+
+ foreach ( $sections as $s ) {
+ $unit = $s->name;
+ $title = Title::makeTitle( NS_TRANSLATIONS, "$prefix/$unit/$code" );
+
+ $fuzzy = $s->type === 'changed';
+ $jobs[] = MessageUpdateJob::newJob( $title, $s->getTextWithVariables(), $fuzzy );
+ }
+
+ return $jobs;
+ }
+
+ /**
+ * Returns the source page without any translation markup.
+ *
+ * @param TPParse $parse
+ * @return string
+ * @since 2014.09
+ */
+ public static function getStrippedSourcePageText( TPParse $parse ) {
+ $text = $parse->getTranslationPageText( array() );
+ $text = preg_replace( '~<languages\s*/>\n?~s', '', $text );
+ return $text;
+ }
+}
diff --git a/MLEB/Translate/tag/SpecialPageTranslationDeletePage.php b/MLEB/Translate/tag/SpecialPageTranslationDeletePage.php
new file mode 100644
index 00000000..f4ea6fda
--- /dev/null
+++ b/MLEB/Translate/tag/SpecialPageTranslationDeletePage.php
@@ -0,0 +1,466 @@
+<?php
+/**
+ * Special page which enables deleting translations of translatable pages
+ *
+ * @file
+ * @author Niklas Laxström
+ * @copyright Copyright © 2012-2013, Niklas Laxström
+ * @license GPL-2.0+
+ */
+
+/**
+ * Special page which enables deleting translations of translatable pages
+ *
+ * @ingroup SpecialPage PageTranslation
+ */
+class SpecialPageTranslationDeletePage extends TranslateSpecialPage {
+ // Basic form parameters both as text and as titles
+ protected $text;
+
+ /**
+ * @var Title
+ */
+ protected $title;
+
+ // Other form parameters
+ /// 'check' or 'perform'
+ protected $subaction;
+
+ /// There must be reason for everything.
+ protected $reason;
+
+ /// Allow skipping non-translation subpages.
+ protected $doSubpages = false;
+
+ /**
+ * @var TranslatablePage
+ */
+ protected $page;
+
+ /// Contains the language code if we are working with translation page
+ protected $code;
+
+ protected $sectionPages;
+
+ protected $translationPages;
+
+ public function __construct() {
+ parent::__construct( 'PageTranslationDeletePage', 'pagetranslation' );
+ }
+
+ public function isListed() {
+ return false;
+ }
+
+ public function execute( $par ) {
+ $request = $this->getRequest();
+
+ // Yes, the use of getVal() and getText() is wanted, see bug 20365
+ $this->text = $request->getVal( 'wpTitle', $par );
+ $this->title = Title::newFromText( $this->text );
+ $this->reason = $request->getText( 'reason' );
+ // Checkboxes that default being checked are tricky
+ $this->doSubpages = $request->getBool( 'subpages', !$request->wasPosted() );
+
+ $user = $this->getUser();
+
+ if ( $this->doBasicChecks() !== true ) {
+ return;
+ }
+
+ $out = $this->getOutput();
+
+ // Real stuff starts here
+ if ( TranslatablePage::isSourcePage( $this->title ) ) {
+ $title = $this->msg( 'pt-deletepage-full-title', $this->title->getPrefixedText() );
+ $out->setPagetitle( $title );
+
+ $this->code = '';
+ $this->page = TranslatablePage::newFromTitle( $this->title );
+ } else {
+ $page = TranslatablePage::isTranslationPage( $this->title );
+ if ( $page ) {
+ $title = $this->msg( 'pt-deletepage-lang-title', $this->title->getPrefixedText() );
+ $out->setPagetitle( $title );
+
+ list( , $this->code ) = TranslateUtils::figureMessage( $this->title->getText() );
+ $this->page = $page;
+ } else {
+ throw new ErrorPageError(
+ 'pt-deletepage-invalid-title',
+ 'pt-deletepage-invalid-text'
+ );
+ }
+ }
+
+ if ( !$user->isAllowed( 'pagetranslation' ) ) {
+ throw new PermissionsError( 'pagetranslation' );
+ }
+
+ // Is there really no better way to do this?
+ $subactionText = $request->getText( 'subaction' );
+ switch ( $subactionText ) {
+ case $this->msg( 'pt-deletepage-action-check' )->text():
+ $subaction = 'check';
+ break;
+ case $this->msg( 'pt-deletepage-action-perform' )->text():
+ $subaction = 'perform';
+ break;
+ case $this->msg( 'pt-deletepage-action-other' )->text():
+ $subaction = '';
+ break;
+ default:
+ $subaction = '';
+ }
+
+ if ( $subaction === 'check' && $this->checkToken() && $request->wasPosted() ) {
+ $this->showConfirmation();
+ } elseif ( $subaction === 'perform' && $this->checkToken() && $request->wasPosted() ) {
+ $this->performAction();
+ } else {
+ $this->showForm();
+ }
+ }
+
+ /**
+ * Do the basic checks whether moving is possible and whether
+ * the input looks anywhere near sane.
+ * @throws PermissionsError|ErrorPageError|ReadOnlyError
+ * @return bool
+ */
+ protected function doBasicChecks() {
+ # Check rights
+ if ( !$this->userCanExecute( $this->getUser() ) ) {
+ $this->displayRestrictionError();
+ return;
+ }
+
+ if ( $this->title === null ) {
+ throw new ErrorPageError( 'notargettitle', 'notargettext' );
+ }
+
+ if ( !$this->title->exists() ) {
+ throw new ErrorPageError( 'nopagetitle', 'nopagetext' );
+ }
+
+ $permissionErrors = $this->title->getUserPermissionsErrors( 'delete', $this->getUser() );
+ if ( count( $permissionErrors ) ) {
+ throw new PermissionsError( 'delete', $permissionErrors );
+ }
+
+ # Check for database lock
+ if ( wfReadOnly() ) {
+ throw new ReadOnlyError;
+ }
+
+ // Let the caller know it's safe to continue
+ return true;
+ }
+
+ /**
+ * Checks token. Use before real actions happen. Have to use wpEditToken
+ * for compatibility for SpecialMovepage.php.
+ * @return bool
+ */
+ protected function checkToken() {
+ return $this->getUser()->matchEditToken( $this->getRequest()->getVal( 'wpEditToken' ) );
+ }
+
+ /**
+ * The query form.
+ */
+ protected function showForm() {
+ $this->getOutput()->addWikiMsg( 'pt-deletepage-intro' );
+
+ $subaction = array( 'name' => 'subaction' );
+ $formParams = array(
+ 'method' => 'post',
+ 'action' => $this->getTitle( $this->text )->getLocalURL()
+ );
+
+ $form = array();
+ $form[] = Xml::fieldset( $this->msg( 'pt-deletepage-any-legend' )->text() );
+ $form[] = Html::openElement( 'form', $formParams );
+ $form[] = Html::hidden( 'wpEditToken', $this->getUser()->getEditToken() );
+ $this->addInputLabel(
+ $form,
+ $this->msg( 'pt-deletepage-current' )->text(),
+ 'wpTitle',
+ 30,
+ $this->text
+ );
+ $this->addInputLabel(
+ $form,
+ $this->msg( 'pt-deletepage-reason' )->text(),
+ 'reason',
+ 60,
+ $this->reason
+ );
+ $form[] = Xml::submitButton(
+ $this->msg( 'pt-deletepage-action-check' )->text(),
+ $subaction
+ );
+ $form[] = Xml::closeElement( 'form' );
+ $form[] = Xml::closeElement( 'fieldset' );
+ $this->getOutput()->addHTML( implode( "\n", $form ) );
+ }
+
+ /**
+ * Shortcut for keeping the code at least a bit readable. Adds label and
+ * input into $form array.
+ *
+ * @param array $form \list{String} Array where input element and label is appended.
+ * @param string $label Label text.
+ * @param string $name Name attribute.
+ * @param int|bool $size Size attribute of the input element. Default false.
+ * @param string|bool $text Text of the value attribute. Default false.
+ * @param array $attribs Extra attributes. Default empty array.
+ */
+ protected function addInputLabel( &$form, $label, $name, $size = false, $text = false,
+ $attribs = array()
+ ) {
+ $br = Html::element( 'br' );
+ list( $label, $input ) = Xml::inputLabelSep( $label, $name, $name, $size, $text, $attribs );
+ $form[] = $label . $br;
+ $form[] = $input . $br;
+ }
+
+ /**
+ * The second form, which still allows changing some things.
+ * Lists all the action which would take place.
+ */
+ protected function showConfirmation() {
+ $out = $this->getOutput();
+
+ $out->addWikiMsg( 'pt-deletepage-intro' );
+
+ $count = 1; // Base page
+
+ $out->wrapWikiMsg( '== $1 ==', 'pt-deletepage-list-pages' );
+ if ( !$this->singleLanguage() ) {
+ $this->printChangeLine( $this->title );
+ }
+
+ $out->wrapWikiMsg( '=== $1 ===', 'pt-deletepage-list-translation' );
+ $translationPages = $this->getTranslationPages();
+ foreach ( $translationPages as $old ) {
+ $count++;
+ $this->printChangeLine( $old );
+ }
+
+ $out->wrapWikiMsg( '=== $1 ===', 'pt-deletepage-list-section' );
+ $sectionPages = $this->getSectionPages();
+ foreach ( $sectionPages as $old ) {
+ $count++;
+ $this->printChangeLine( $old );
+ }
+
+ $out->wrapWikiMsg( '=== $1 ===', 'pt-deletepage-list-other' );
+ $subpages = $this->getSubpages();
+ foreach ( $subpages as $old ) {
+ if ( TranslatablePage::isTranslationPage( $old ) ) {
+ continue;
+ }
+
+ if ( $this->doSubpages ) {
+ $count++;
+ }
+
+ $this->printChangeLine( $old, $this->doSubpages );
+ }
+
+ $out->addWikiText( "----\n" );
+ $out->addWikiMsg( 'pt-deletepage-list-count', $this->getLanguage()->formatNum( $count ) );
+
+ $br = Html::element( 'br' );
+ $readonly = array( 'readonly' => 'readonly' );
+
+ $subaction = array( 'name' => 'subaction' );
+ $formParams = array(
+ 'method' => 'post',
+ 'action' => $this->getTitle( $this->text )->getLocalURL()
+ );
+
+ $form = array();
+ if ( $this->singleLanguage() ) {
+ $form[] = Xml::fieldset( $this->msg( 'pt-deletepage-lang-legend' )->text() );
+ } else {
+ $form[] = Xml::fieldset( $this->msg( 'pt-deletepage-full-legend' )->text() );
+ }
+ $form[] = Html::openElement( 'form', $formParams );
+ $form[] = Html::hidden( 'wpEditToken', $this->getUser()->getEditToken() );
+ $this->addInputLabel(
+ $form,
+ $this->msg( 'pt-deletepage-current' )->text(),
+ 'wpTitle',
+ 30,
+ $this->text, $readonly );
+ $this->addInputLabel(
+ $form,
+ $this->msg( 'pt-deletepage-reason' )->text(),
+ 'reason',
+ 60,
+ $this->reason );
+ $form[] = Xml::checkLabel(
+ $this->msg( 'pt-deletepage-subpages' )->text(),
+ 'subpages',
+ 'mw-subpages',
+ $this->doSubpages,
+ $readonly
+ ) . $br;
+ $form[] = Xml::submitButton(
+ $this->msg( 'pt-deletepage-action-perform' )->text(),
+ $subaction
+ );
+ $form[] = Xml::submitButton(
+ $this->msg( 'pt-deletepage-action-other' )->text(),
+ $subaction
+ );
+ $form[] = Xml::closeElement( 'form' );
+ $form[] = Xml::closeElement( 'fieldset' );
+ $out->addHTML( implode( "\n", $form ) );
+ }
+
+ /**
+ * @param $title Title
+ * @param $enabled bool
+ */
+ protected function printChangeLine( $title, $enabled = true ) {
+ if ( $enabled ) {
+ $this->getOutput()->addWikiText( '* ' . $title->getPrefixedText() );
+ } else {
+ $this->getOutput()->addWikiText( '* <s>' . $title->getPrefixedText() . '</s>' );
+ }
+ }
+
+ protected function performAction() {
+ $jobs = array();
+ $target = $this->title;
+ $base = $this->title->getPrefixedText();
+
+ $translationPages = $this->getTranslationPages();
+ $user = $this->getUser();
+ foreach ( $translationPages as $old ) {
+ $jobs[$old->getPrefixedText()] = TranslateDeleteJob::newJob(
+ $old,
+ $base,
+ !$this->singleLanguage(),
+ $user
+ );
+ }
+
+ $sectionPages = $this->getSectionPages();
+ foreach ( $sectionPages as $old ) {
+ $jobs[$old->getPrefixedText()] = TranslateDeleteJob::newJob(
+ $old,
+ $base,
+ !$this->singleLanguage(),
+ $user
+ );
+ }
+
+ if ( !$this->doSubpages ) {
+ $subpages = $this->getSubpages();
+ foreach ( $subpages as $old ) {
+ if ( TranslatablePage::isTranslationPage( $old ) ) {
+ continue;
+ }
+
+ $jobs[$old->getPrefixedText()] = TranslateDeleteJob::newJob(
+ $old,
+ $base,
+ !$this->singleLanguage(),
+ $user
+ );
+ }
+ }
+
+ JobQueueGroup::singleton()->push( $jobs );
+
+ $cache = wfGetCache( CACHE_DB );
+ $cache->set(
+ wfMemcKey( 'pt-base', $target->getPrefixedText() ),
+ array_keys( $jobs ),
+ 60 * 60 * 6
+ );
+
+ if ( !$this->singleLanguage() ) {
+ $this->page->unmarkTranslatablePage();
+ }
+
+ $this->clearMetadata();
+ MessageGroups::clearCache();
+ MessageIndexRebuildJob::newJob()->insert();
+
+ $this->getOutput()->addWikiMsg( 'pt-deletepage-started' );
+ }
+
+ protected function clearMetadata() {
+ // remove the entries from metadata table.
+ $groupId = $this->page->getMessageGroupId();
+ TranslateMetadata::set( $groupId, 'prioritylangs', false );
+ TranslateMetadata::set( $groupId, 'priorityforce', false );
+ TranslateMetadata::set( $groupId, 'priorityreason', false );
+ // remove the page from aggregate groups, if present in any of them.
+ $groups = MessageGroups::getAllGroups();
+ foreach ( $groups as $group ) {
+ if ( $group instanceof AggregateMessageGroup ) {
+ $subgroups = TranslateMetadata::get( $group->getId(), 'subgroups' );
+ if ( $subgroups !== false ) {
+ $subgroups = explode( ',', $subgroups );
+ $subgroups = array_flip( $subgroups );
+ if ( isset( $subgroups[$groupId] ) ) {
+ unset( $subgroups[$groupId] );
+ $subgroups = array_flip( $subgroups );
+ TranslateMetadata::set(
+ $group->getId(),
+ 'subgroups',
+ implode( ',', $subgroups )
+ );
+ }
+ }
+ }
+ }
+ }
+
+ /**
+ * Returns all section pages, including those which are currently not active.
+ * @return Array of titles.
+ */
+ protected function getSectionPages() {
+ $code = $this->singleLanguage() ? $this->code : false;
+
+ return $this->page->getTranslationUnitPages( 'all', $code );
+ }
+
+ /**
+ * Returns only translation subpages.
+ * @return Array of titles.
+ */
+ protected function getTranslationPages() {
+ if ( $this->singleLanguage() ) {
+ return array( $this->title );
+ }
+
+ if ( !isset( $this->translationPages ) ) {
+ $this->translationPages = $this->page->getTranslationPages();
+ }
+
+ return $this->translationPages;
+ }
+
+ /**
+ * Returns all subpages, if the namespace has them enabled.
+ * @return array|TitleArray Empty array or TitleArray.
+ */
+ protected function getSubpages() {
+ return $this->title->getSubpages();
+ }
+
+ /**
+ * @return bool
+ */
+ protected function singleLanguage() {
+ return $this->code !== '';
+ }
+}
diff --git a/MLEB/Translate/tag/SpecialPageTranslationMovePage.php b/MLEB/Translate/tag/SpecialPageTranslationMovePage.php
new file mode 100644
index 00000000..aeb39997
--- /dev/null
+++ b/MLEB/Translate/tag/SpecialPageTranslationMovePage.php
@@ -0,0 +1,682 @@
+<?php
+/**
+ * Contains class to override Special:MovePage for page translation.
+ *
+ * @file
+ * @author Niklas Laxström
+ * @copyright Copyright © 2010-2013, Niklas Laxström
+ * @license GPL-2.0+
+ */
+
+/**
+ * Overrides Special:Movepage to to allow renaming a page translation page and
+ * all related translations and derivative pages.
+ *
+ * @ingroup SpecialPage PageTranslation
+ */
+class SpecialPageTranslationMovePage extends TranslateSpecialPage {
+ // Basic form parameters both as text and as titles
+ protected $newText, $oldText;
+
+ /**
+ * @var Title
+ */
+ protected $newTitle, $oldTitle;
+
+ // Other form parameters
+ /**
+ * 'check' or 'perform'
+ */
+ protected $subaction;
+
+ /**
+ * There must be reason for everything.
+ */
+ protected $reason;
+
+ /**
+ * Allow skipping non-translation subpages.
+ */
+ protected $moveSubpages;
+
+ /**
+ * @var TranslatablePage instance.
+ */
+ protected $page;
+
+ /**
+ * Whether MovePageForm extends SpecialPage
+ */
+ protected $old;
+
+ /**
+ * @var Title[] Cached list of translation pages. Not yet loaded if null.
+ */
+ protected $translationPages = null;
+
+ /**
+ * @var Title[] Cached list of section pages. Not yet loaded if null.
+ */
+ protected $sectionPages = null;
+
+ public function __construct() {
+ parent::__construct( 'Movepage' );
+ }
+
+ public function isListed() {
+ return false;
+ }
+
+ /**
+ * Partially copies from SpecialMovepage.php, because it cannot be
+ * extended in other ways.
+ */
+ public function execute( $par ) {
+ $request = $this->getRequest();
+ $user = $this->getUser();
+
+ // Yes, the use of getVal() and getText() is wanted, see bug 20365
+ $this->oldText = $request->getVal( 'wpOldTitle', $request->getVal( 'target', $par ) );
+ $this->newText = $request->getText( 'wpNewTitle' );
+
+ $this->oldTitle = Title::newFromText( $this->oldText );
+ $this->newTitle = Title::newFromText( $this->newText );
+
+ $this->reason = $request->getText( 'reason' );
+ // Checkboxes that default being checked are tricky
+ $this->moveSubpages = $request->getBool( 'subpages', !$request->wasPosted() );
+
+ if ( $this->doBasicChecks() !== true ) {
+ return;
+ }
+
+ // Real stuff starts here
+ $page = TranslatablePage::newFromTitle( $this->oldTitle );
+ if ( $page->getMarkedTag() !== false ) {
+ $this->page = $page;
+
+ $this->getOutput()->setPagetitle( $this->msg( 'pt-movepage-title', $this->oldText ) );
+
+ if ( !$user->isAllowed( 'pagetranslation' ) ) {
+ throw new PermissionsError( 'pagetranslation' );
+ }
+
+ // Is there really no better way to do this?
+ $subactionText = $request->getText( 'subaction' );
+ switch ( $subactionText ) {
+ case $this->msg( 'pt-movepage-action-check' )->text():
+ $subaction = 'check';
+ break;
+ case $this->msg( 'pt-movepage-action-perform' )->text():
+ $subaction = 'perform';
+ break;
+ case $this->msg( 'pt-movepage-action-other' )->text():
+ $subaction = '';
+ break;
+ default:
+ $subaction = '';
+ }
+
+ if ( $subaction === 'check' && $this->checkToken() && $request->wasPosted() ) {
+ $blockers = $this->checkMoveBlockers();
+ if ( count( $blockers ) ) {
+ $this->showErrors( $blockers );
+ $this->showForm();
+ } else {
+ $this->showConfirmation();
+ }
+ } elseif ( $subaction === 'perform' && $this->checkToken() && $request->wasPosted() ) {
+ $this->performAction();
+ } else {
+ $this->showForm();
+ }
+ } else {
+ // Delegate... don't want to reimplement this
+ $sp = new MovePageForm();
+ $sp->execute( $par );
+ }
+ }
+
+ /**
+ * Do the basic checks whether moving is possible and whether
+ * the input looks anywhere near sane.
+ * @throws PermissionsError|ErrorPageError|ReadOnlyError
+ * @return bool
+ */
+ protected function doBasicChecks() {
+ # Check for database lock
+ if ( wfReadOnly() ) {
+ throw new ReadOnlyError;
+ }
+
+ if ( $this->oldTitle === null ) {
+ throw new ErrorPageError( 'notargettitle', 'notargettext' );
+ }
+
+ if ( !$this->oldTitle->exists() ) {
+ throw new ErrorPageError( 'nopagetitle', 'nopagetext' );
+ }
+
+ # Check rights
+ $permErrors = $this->oldTitle->getUserPermissionsErrors( 'move', $this->getUser() );
+ if ( !empty( $permErrors ) ) {
+ throw new PermissionsError( 'move', $permErrors );
+ }
+
+ // Let the caller know it's safe to continue
+ return true;
+ }
+
+ /**
+ * Checks token. Use before real actions happen. Have to use wpEditToken
+ * for compatibility for SpecialMovepage.php.
+ *
+ * @return bool
+ */
+ protected function checkToken() {
+ return $this->getUser()->matchEditToken( $this->getRequest()->getVal( 'wpEditToken' ) );
+ }
+
+ /**
+ * Pretty-print the list of errors.
+ * @param array $errors Array with message key and parameters
+ */
+ protected function showErrors( array $errors ) {
+ if ( count( $errors ) ) {
+ $out = $this->getOutput();
+
+ $out->addHTML( Html::openElement( 'div', array( 'class' => 'error' ) ) );
+ $out->addWikiMsg(
+ 'pt-movepage-blockers',
+ $this->getLanguage()->formatNum( count( $errors ) )
+ );
+ $out->addHTML( '<ul>' );
+ foreach ( $errors as $error ) {
+ // I have no idea what the parser is doing, but this is mad.
+ // <li>$1</li> doesn't work.
+ $out->wrapWikiMsg( "<li>$1", $error );
+ }
+ $out->addHTML( '</ul></div>' );
+ }
+ }
+
+ /**
+ * The query form.
+ */
+ protected function showForm() {
+ $this->getOutput()->addWikiMsg( 'pt-movepage-intro' );
+
+ $br = Html::element( 'br' );
+ $subaction = array( 'name' => 'subaction' );
+ $readonly = array( 'readonly' => 'readonly' );
+ $formParams = array(
+ 'method' => 'post',
+ 'action' => $this->getTitle( $this->oldText )->getLocalURL()
+ );
+
+ $form = array();
+ $form[] = Xml::fieldset( $this->msg( 'pt-movepage-legend' )->text() );
+ $form[] = Html::openElement( 'form', $formParams );
+ $form[] = Html::hidden( 'wpEditToken', $this->getUser()->getEditToken() );
+ $this->addInputLabel(
+ $form,
+ $this->msg( 'pt-movepage-current' )->text(),
+ 'wpOldTitle',
+ 30,
+ $this->oldText,
+ $readonly
+ );
+ $this->addInputLabel(
+ $form,
+ $this->msg( 'pt-movepage-new' )->text(),
+ 'wpNewTitle',
+ 30,
+ $this->newText
+ );
+ $this->addInputLabel(
+ $form,
+ $this->msg( 'pt-movepage-reason' )->text(),
+ 'reason',
+ 45,
+ $this->reason
+ );
+ $form[] = Xml::checkLabel(
+ $this->msg( 'pt-movepage-subpages' )->text(),
+ 'subpages',
+ 'mw-subpages',
+ $this->moveSubpages
+ ) . $br;
+ $form[] = Xml::submitButton( $this->msg( 'pt-movepage-action-check' )->text(), $subaction );
+ $form[] = Xml::closeElement( 'form' );
+ $form[] = Xml::closeElement( 'fieldset' );
+ $this->getOutput()->addHTML( implode( "\n", $form ) );
+ }
+
+ /**
+ * Shortcut for keeping the code at least a bit readable. Adds label and
+ * input into $form array.
+ *
+ * @param string[] $form Array where input element and label is appended.
+ * @param string $label Label text.
+ * @param string $name Name attribute.
+ * @param bool|int $size Size attribute of the input element. Default false.
+ * @param bool|string $text Text of the value attribute. Default false.
+ * @param array $attribs Extra attributes. Default empty array.
+ */
+ protected function addInputLabel( &$form, $label, $name, $size = false, $text = false,
+ $attribs = array()
+ ) {
+ $br = Html::element( 'br' );
+ list( $label, $input ) = Xml::inputLabelSep(
+ $label,
+ $name,
+ $name,
+ $size,
+ $text,
+ $attribs
+ );
+ $form[] = $label . $br;
+ $form[] = $input . $br;
+ }
+
+ /**
+ * The second form, which still allows changing some things.
+ * Lists all the action which would take place.
+ */
+ protected function showConfirmation() {
+ $out = $this->getOutput();
+
+ $out->addWikiMsg( 'pt-movepage-intro' );
+
+ $base = $this->oldTitle->getPrefixedText();
+ $target = $this->newTitle;
+ $count = 0;
+
+ $types = array(
+ 'pt-movepage-list-pages' => array( $this->oldTitle ),
+ 'pt-movepage-list-translation' => $this->getTranslationPages(),
+ 'pt-movepage-list-section' => $this->getSectionPages(),
+ 'pt-movepage-list-other' => $this->getSubpages(),
+ );
+
+ foreach ( $types as $type => $pages ) {
+ $out->wrapWikiMsg( '=== $1 ===', array( $type, count( $pages ) ) );
+
+ $lines = array();
+ foreach ( $pages as $old ) {
+ $toBeMoved = true;
+
+ // These pages need specific checks
+ if ( $type === 'pt-movepage-list-other' ) {
+ $toBeMoved = $this->moveSubpages;
+
+ if ( TranslatablePage::isTranslationPage( $old ) ) {
+ continue;
+ }
+ }
+
+ if ( $toBeMoved ) {
+ $count++;
+ }
+
+ $lines[] = $this->getChangeLine( $base, $old, $target, $toBeMoved );
+ }
+
+ $out->addWikiText( implode( "\n", $lines ) );
+ }
+
+ $out->addWikiText( "----\n" );
+ $out->addWikiMsg( 'pt-movepage-list-count', $this->getLanguage()->formatNum( $count ) );
+
+ $br = Html::element( 'br' );
+ $readonly = array( 'readonly' => 'readonly' );
+ $subaction = array( 'name' => 'subaction' );
+ $formParams = array(
+ 'method' => 'post',
+ 'action' => $this->getTitle( $this->oldText )->getLocalURL()
+ );
+
+ $form = array();
+ $form[] = Xml::fieldset( $this->msg( 'pt-movepage-legend' )->text() );
+ $form[] = Html::openElement( 'form', $formParams );
+ $form[] = Html::hidden( 'wpEditToken', $this->getUser()->getEditToken() );
+ $this->addInputLabel(
+ $form,
+ $this->msg( 'pt-movepage-current' )->text(),
+ 'wpOldTitle',
+ 30,
+ $this->oldText,
+ $readonly
+ );
+ $this->addInputLabel(
+ $form,
+ $this->msg( 'pt-movepage-new' )->text(),
+ 'wpNewTitle',
+ 30,
+ $this->newText,
+ $readonly
+ );
+ $this->addInputLabel(
+ $form,
+ $this->msg( 'pt-movepage-reason' )->text(),
+ 'reason',
+ 60,
+ $this->reason
+ );
+ $form[] = Html::hidden( 'subpages', $this->moveSubpages );
+ $form[] = Xml::checkLabel(
+ $this->msg( 'pt-movepage-subpages' )->text(),
+ 'subpagesFake',
+ 'mw-subpages',
+ $this->moveSubpages,
+ $readonly
+ ) . $br;
+ $form[] = Xml::submitButton( $this->msg( 'pt-movepage-action-perform' )->text(), $subaction );
+ $form[] = Xml::submitButton( $this->msg( 'pt-movepage-action-other' )->text(), $subaction );
+ $form[] = Xml::closeElement( 'form' );
+ $form[] = Xml::closeElement( 'fieldset' );
+ $out->addHTML( implode( "\n", $form ) );
+ }
+
+ /**
+ * @param string $base
+ * @param Title $old
+ * @param Title $target
+ * @param bool $enabled
+ * @return string
+ */
+ protected function getChangeLine( $base, Title $old, Title $target, $enabled = true ) {
+ $to = $this->newPageTitle( $base, $old, $target );
+
+ if ( $enabled ) {
+ return '* ' . $old->getPrefixedText() . ' → ' . $to;
+ } else {
+ return '* ' . $old->getPrefixedText();
+ }
+ }
+
+ protected function performAction() {
+ $jobs = array();
+ $user = $this->getUser();
+ $target = $this->newTitle;
+ $base = $this->oldTitle->getPrefixedText();
+ $oldLatest = $this->oldTitle->getLatestRevId();
+
+ $params = array(
+ 'base-source' => $this->oldTitle->getPrefixedText(),
+ 'base-target' => $this->newTitle->getPrefixedText(),
+ );
+
+ $translationPages = $this->getTranslationPages();
+ foreach ( $translationPages as $old ) {
+ $to = $this->newPageTitle( $base, $old, $target );
+ $jobs[$old->getPrefixedText()] = TranslateMoveJob::newJob( $old, $to, $params, $user );
+ }
+
+ $sectionPages = $this->getSectionPages();
+ foreach ( $sectionPages as $old ) {
+ $to = $this->newPageTitle( $base, $old, $target );
+ $jobs[$old->getPrefixedText()] = TranslateMoveJob::newJob( $old, $to, $params, $user );
+ }
+
+ if ( $this->moveSubpages ) {
+ $subpages = $this->getSubpages();
+ foreach ( $subpages as $old ) {
+ if ( TranslatablePage::isTranslationPage( $old ) ) {
+ continue;
+ }
+
+ $to = $this->newPageTitle( $base, $old, $target );
+ $jobs[$old->getPrefixedText()] = TranslateMoveJob::newJob(
+ $old,
+ $to,
+ $params,
+ $user
+ );
+ }
+ }
+
+ // This is used by TranslateMoveJob
+ wfGetCache( CACHE_ANYTHING )->set( wfMemcKey( 'translate-pt-move', $base ), count( $jobs ) );
+ JobQueueGroup::singleton()->push( $jobs );
+
+ TranslateMoveJob::forceRedirects( false );
+
+ $errors = $this->oldTitle->moveTo( $this->newTitle, true, $this->reason, false );
+ if ( is_array( $errors ) ) {
+ $this->showErrors( $errors );
+ }
+
+ TranslateMoveJob::forceRedirects( true );
+
+ $newTpage = TranslatablePage::newFromTitle( $this->newTitle );
+ $newTpage->addReadyTag( $this->newTitle->getLatestRevId( Title::GAID_FOR_UPDATE ) );
+
+ if ( $newTpage->getMarkedTag() === $oldLatest ) {
+ $newTpage->addMarkedTag( $this->newTitle->getLatestRevId( Title::GAID_FOR_UPDATE ) );
+ }
+
+ // remove the entries from metadata table.
+ $oldGroupId = $this->page->getMessageGroupId();
+ $newGroupId = $newTpage->getMessageGroupId();
+ $this->moveMetadata( $oldGroupId, $newGroupId );
+
+ MessageGroups::clearCache();
+ MessageIndexRebuildJob::newJob()->insert();
+
+ $this->getOutput()->addWikiMsg( 'pt-movepage-started' );
+ }
+
+ protected function moveMetadata( $oldGroupId, $newGroupId ) {
+ $prioritylangs = TranslateMetadata::get( $oldGroupId, 'prioritylangs' );
+ $priorityforce = TranslateMetadata::get( $oldGroupId, 'priorityforce' );
+ $priorityreason = TranslateMetadata::get( $oldGroupId, 'priorityreason' );
+ TranslateMetadata::set( $oldGroupId, 'prioritylangs', false );
+ TranslateMetadata::set( $oldGroupId, 'priorityforce', false );
+ TranslateMetadata::set( $oldGroupId, 'priorityreason', false );
+ if ( $prioritylangs ) {
+ TranslateMetadata::set( $newGroupId, 'prioritylangs', $prioritylangs );
+ }
+ if ( $priorityforce ) {
+ TranslateMetadata::set( $newGroupId, 'priorityforce', $priorityforce );
+ }
+ if ( $priorityreason !== false ) {
+ TranslateMetadata::set( $newGroupId, 'priorityreason', $priorityreason );
+ }
+ // make the changes in aggregate groups metadata, if present in any of them.
+ $groups = MessageGroups::getAllGroups();
+ foreach ( $groups as $group ) {
+ if ( $group instanceof AggregateMessageGroup ) {
+ $subgroups = TranslateMetadata::get( $group->getId(), 'subgroups' );
+ if ( $subgroups !== false ) {
+ $subgroups = explode( ',', $subgroups );
+ $subgroups = array_flip( $subgroups );
+ if ( isset( $subgroups[$oldGroupId] ) ) {
+ $subgroups[$newGroupId] = $subgroups[$oldGroupId];
+ unset( $subgroups[$oldGroupId] );
+ $subgroups = array_flip( $subgroups );
+ TranslateMetadata::set(
+ $group->getId(),
+ 'subgroups',
+ implode( ',', $subgroups )
+ );
+ }
+ }
+ }
+ }
+ }
+
+ protected function checkMoveBlockers() {
+ $blockers = array();
+
+ $target = $this->newTitle;
+
+ if ( !$target ) {
+ $blockers[] = array( 'pt-movepage-block-base-invalid' );
+
+ return $blockers;
+ }
+
+ if ( $target->getNamespace() == NS_MEDIAWIKI ||
+ $target->getNamespace() == NS_TRANSLATIONS
+ ) {
+ $blockers[] = array( 'immobile-target-namespace', $target->getNsText() );
+
+ return $blockers;
+ }
+
+ $base = $this->oldTitle->getPrefixedText();
+
+ if ( $target->exists() ) {
+ $blockers[] = array( 'pt-movepage-block-base-exists', $target->getPrefixedText() );
+ } else {
+ $errors = $this->oldTitle->isValidMoveOperation( $target, true, $this->reason );
+ if ( is_array( $errors ) ) {
+ $blockers = array_merge( $blockers, $errors );
+ }
+ }
+
+ // Don't spam the same errors for all pages if base page fails
+ if ( $blockers ) {
+ return $blockers;
+ }
+
+ // Collect all the old and new titles for checcks
+ $titles = array();
+
+ $pages = $this->getTranslationPages();
+ foreach ( $pages as $old ) {
+ $titles['tp'][] = array( $old, $this->newPageTitle( $base, $old, $target ) );
+ }
+
+ $pages = $this->getSectionPages();
+ foreach ( $pages as $old ) {
+ $titles['section'][] = array( $old, $this->newPageTitle( $base, $old, $target ) );
+ }
+
+ $subpages = array();
+ if ( $this->moveSubpages ) {
+ $subpages = $this->getSubpages();
+ }
+ foreach ( $subpages as $old ) {
+ if ( !TranslatablePage::isTranslationPage( $old ) ) {
+ $titles['subpage'][] = array( $old, $this->newPageTitle( $base, $old, $target ) );
+ }
+ }
+
+ // Check that all new titles are valid
+ $lb = new LinkBatch();
+ foreach ( $titles as $type => $list ) {
+ // Give grep a chance to find the usages:
+ // pt-movepage-block-tp-invalid, pt-movepage-block-section-invalid,
+ // pt-movepage-block-subpage-invalid
+ foreach ( $list as $pair ) {
+ list( $old, $new ) = $pair;
+ if ( $new === null ) {
+ $blockers[] = array(
+ "pt-movepage-block-$type-invalid",
+ $old->getPrefixedText()
+ );
+ continue;
+ }
+ $lb->addObj( $old );
+ $lb->addObj( $new );
+ }
+ }
+
+ if ( $blockers ) {
+ return $blockers;
+ }
+
+ // Check that there are no move blockers
+ $lb->execute();
+ foreach ( $titles as $type => $list ) {
+ // Give grep a chance to find the usages:
+ // pt-movepage-block-tp-exists, pt-movepage-block-section-exists,
+ // pt-movepage-block-subpage-exists
+ foreach ( $list as $pair ) {
+ list( $old, $new ) = $pair;
+ if ( $new->exists() ) {
+ $blockers[] = array(
+ "pt-movepage-block-$type-exists",
+ $old->getPrefixedText(),
+ $new->getPrefixedText()
+ );
+ } else {
+ /* This method has terrible performance:
+ * - 2 queries by core
+ * - 3 queries by lqt
+ * - and no obvious way to preload the data! */
+ $errors = $old->isValidMoveOperation( $target, false );
+ if ( is_array( $errors ) ) {
+ $blockers = array_merge( $blockers, $errors );
+ }
+
+ /* Because of the above, check only one of the possibly thousands
+ * of section pages and assume rest are fine. */
+ if ( $type === 'section' ) {
+ break;
+ }
+ }
+ }
+ }
+
+ return $blockers;
+ }
+
+ /**
+ * Makes old title into a new title by replacing $base part of old title
+ * with $target.
+ * @param string $base Title::getPrefixedText() of the base page.
+ * @param Title $old The title to convert.
+ * @param Title $target The target title for the base page.
+ * @return Title
+ */
+ protected function newPageTitle( $base, Title $old, Title $target ) {
+ $search = preg_quote( $base, '~' );
+
+ if ( $old->getNamespace() == NS_TRANSLATIONS ) {
+ $new = $old->getText();
+ $new = preg_replace( "~^$search~", $target->getPrefixedText(), $new, 1 );
+
+ return Title::makeTitleSafe( NS_TRANSLATIONS, $new );
+ } else {
+ $new = $old->getPrefixedText();
+ $new = preg_replace( "~^$search~", $target->getPrefixedText(), $new, 1 );
+
+ return Title::newFromText( $new );
+ }
+ }
+
+ /**
+ * Returns all section pages, including those which are currently not active.
+ * @return TitleArray.
+ */
+ protected function getSectionPages() {
+ if ( !isset( $this->sectionPages ) ) {
+ $this->sectionPages = $this->page->getTranslationUnitPages( 'all' );
+ }
+
+ return $this->sectionPages;
+ }
+
+ /**
+ * Returns only translation subpages.
+ * @return Array of titles.
+ */
+ protected function getTranslationPages() {
+ if ( !isset( $this->translationPages ) ) {
+ $this->translationPages = $this->page->getTranslationPages();
+ }
+
+ return $this->translationPages;
+ }
+
+ /**
+ * Returns all subpages, if the namespace has them enabled.
+ * @return mixed TitleArray, or empty array if this page's namespace doesn't allow subpages
+ */
+ protected function getSubpages() {
+ return $this->page->getTitle()->getSubpages();
+ }
+}
diff --git a/MLEB/Translate/tag/TPException.php b/MLEB/Translate/tag/TPException.php
new file mode 100644
index 00000000..c08a1f5d
--- /dev/null
+++ b/MLEB/Translate/tag/TPException.php
@@ -0,0 +1,36 @@
+<?php
+/**
+ * Translatable page parse exception.
+ *
+ * @file
+ * @author Niklas Laxström
+ * @copyright Copyright © 2009-2013 Niklas Laxström
+ * @license GPL-2.0+
+ */
+
+/**
+ * Class to signal syntax errors in translatable pages.
+ *
+ * @ingroup PageTranslation
+ */
+class TPException extends MWException {
+ protected $msg = null;
+
+ /**
+ * @todo Pass around Messages when Status class doesn't suck
+ * @param array $msg Message key with parameters
+ */
+ public function __construct( array $msg ) {
+ $this->msg = $msg;
+ // Using ->plain() instead of ->text() due to bug 56226
+ $wikitext = call_user_func_array( 'wfMessage', $msg )->plain();
+ parent::__construct( $wikitext );
+ }
+
+ /**
+ * @return array
+ */
+ public function getMsg() {
+ return $this->msg;
+ }
+}
diff --git a/MLEB/Translate/tag/TPParse.php b/MLEB/Translate/tag/TPParse.php
new file mode 100644
index 00000000..ebe9378e
--- /dev/null
+++ b/MLEB/Translate/tag/TPParse.php
@@ -0,0 +1,231 @@
+<?php
+/**
+ * Helper code for TranslatablePage.
+ *
+ * @file
+ * @author Niklas Laxström
+ * @copyright Copyright © 2009-2013 Niklas Laxström
+ * @license GPL-2.0+
+ */
+
+/**
+ * This class represents the results of parsed source page, that is, the
+ * extracted sections and a template.
+ *
+ * @ingroup PageTranslation
+ */
+class TPParse {
+ /// \type{Title} Title of the page.
+ protected $title = null;
+
+ /** \arrayof{String,TPSection} Parsed sections indexed with placeholder.
+ * @todo Encapsulate
+ */
+ public $sections = array();
+ /** \string Page source with content replaced with placeholders.
+ * @todo Encapsulate
+ */
+ public $template = null;
+ /**
+ * @var null|array Sections saved in the database. array( string => TPSection, ... )
+ */
+ protected $dbSections = null;
+
+ /// Constructor
+ public function __construct( Title $title ) {
+ $this->title = $title;
+ }
+
+ /**
+ * Returns the number of sections in this page.
+ * @return \int
+ */
+ public function countSections() {
+ return count( $this->sections );
+ }
+
+ /**
+ * Returns the page template where translatable content is replaced with
+ * placeholders.
+ * @return \string
+ */
+ public function getTemplate() {
+ return $this->template;
+ }
+
+ /**
+ * Returns the page template where the ugly placeholders are replaced with
+ * section markers. Sections which previously had no number will get one
+ * assigned now.
+ * @return \string
+ */
+ public function getTemplatePretty() {
+ $text = $this->template;
+ $sections = $this->getSectionsForSave();
+ foreach ( $sections as $ph => $s ) {
+ $text = str_replace( $ph, "<!--T:{$s->id}-->", $text );
+ }
+
+ return $text;
+ }
+
+ /**
+ * Gets the sections and assigns section id for new sections
+ * @param int $highest The largest used integer id (Since 2012-08-02)
+ * @return array array( string => TPSection, ... )
+ */
+ public function getSectionsForSave( $highest = 0 ) {
+ $this->loadFromDatabase();
+
+ $sections = $this->sections;
+ foreach ( array_keys( $this->dbSections ) as $key ) {
+ $highest = max( $highest, intval( $key ) );
+ }
+
+ foreach ( $sections as $_ ) {
+ $highest = max( $highest, intval( $_->id ) );
+ }
+
+ foreach ( $sections as $s ) {
+ $s->type = 'old';
+
+ if ( $s->id === -1 ) {
+ $s->type = 'new';
+ $s->id = ++$highest;
+ } else {
+ if ( isset( $this->dbSections[$s->id] ) ) {
+ $storedText = $this->dbSections[$s->id]->text;
+ if ( $s->text !== $storedText ) {
+ $s->type = 'changed';
+ $s->oldText = $storedText;
+ }
+ }
+ }
+ }
+
+ return $sections;
+ }
+
+ /**
+ * Returns list of deleted sections.
+ * @return array List of sections indexed by id. array( string => TPsection, ... )
+ */
+ public function getDeletedSections() {
+ $sections = $this->getSectionsForSave();
+ $deleted = $this->dbSections;
+
+ foreach ( $sections as $s ) {
+ if ( isset( $deleted[$s->id] ) ) {
+ unset( $deleted[$s->id] );
+ }
+ }
+
+ return $deleted;
+ }
+
+ /**
+ * Load section saved in the database. Populates dbSections.
+ */
+ protected function loadFromDatabase() {
+ if ( $this->dbSections !== null ) {
+ return;
+ }
+
+ $this->dbSections = array();
+
+ $db = wfGetDB( DB_SLAVE );
+ $tables = 'translate_sections';
+ $vars = array( 'trs_key', 'trs_text' );
+ $conds = array( 'trs_page' => $this->title->getArticleID() );
+
+ $res = $db->select( $tables, $vars, $conds, __METHOD__ );
+ foreach ( $res as $r ) {
+ $section = new TPSection;
+ $section->id = $r->trs_key;
+ $section->text = $r->trs_text;
+ $section->type = 'db';
+ $this->dbSections[$r->trs_key] = $section;
+ }
+ }
+
+ /**
+ * Returns the source page with translation section mark-up added.
+ *
+ * @return string Wikitext.
+ */
+ public function getSourcePageText() {
+ $text = $this->template;
+
+ foreach ( $this->sections as $ph => $s ) {
+ $text = str_replace( $ph, $s->getMarkedText(), $text );
+ }
+
+ return $text;
+ }
+
+ /**
+ * Returns translation page with all possible translations replaced in
+ * and ugly translation tags removed.
+ *
+ * @param MessageCollection $collection Collection that holds translated messages.
+ * @return string Whole page as wikitext.
+ */
+ public function getTranslationPageText( $collection ) {
+ $text = $this->template; // The source
+
+ // For finding the messages
+ $prefix = $this->title->getPrefixedDBKey() . '/';
+
+ if ( $collection instanceof MessageCollection ) {
+ $collection->loadTranslations( DB_MASTER );
+ $collection->filter( 'translated', false );
+ }
+
+ foreach ( $this->sections as $ph => $s ) {
+ $sectiontext = null;
+
+ if ( isset( $collection[$prefix . $s->id] ) ) {
+ /**
+ * @var TMessage $msg
+ */
+ $msg = $collection[$prefix . $s->id];
+ $sectiontext = $msg->translation();
+ }
+
+ // Use the original text if no translation is available.
+
+ // For the source language, this will actually be the source, which
+ // contains variable declarations (tvar) instead of variables ($1).
+ // The getTextWithVariables will convert declarations to normal variables
+ // for us so that the variable substitutions below will also work
+ // for the source language.
+ if ( $sectiontext === null || $sectiontext === $s->getText() ) {
+ $sectiontext = $s->getTextWithVariables();
+ }
+
+ // Substitute variables into section text and substitute text into document
+ $sectiontext = strtr( $sectiontext, $s->getVariables() );
+ $text = str_replace( $ph, $sectiontext, $text );
+ }
+
+ $nph = array();
+ $text = TranslatablePage::armourNowiki( $nph, $text );
+
+ // Remove translation markup from the template to produce final text
+ $cb = array( __CLASS__, 'replaceTagCb' );
+ $text = preg_replace_callback( '~(<translate>)(.*)(</translate>)~sU', $cb, $text );
+ $text = TranslatablePage::unArmourNowiki( $nph, $text );
+
+ return $text;
+ }
+
+ /**
+ * Chops of trailing or preceeding whitespace intelligently to avoid
+ * build up of unintented whitespace.
+ * @param array $matches
+ * @return string
+ */
+ protected static function replaceTagCb( $matches ) {
+ return preg_replace( '~^\n|\n\z~', '', $matches[2] );
+ }
+}
diff --git a/MLEB/Translate/tag/TPSection.php b/MLEB/Translate/tag/TPSection.php
new file mode 100644
index 00000000..d662fb3d
--- /dev/null
+++ b/MLEB/Translate/tag/TPSection.php
@@ -0,0 +1,102 @@
+<?php
+/**
+ * Helper for TPParse.
+ *
+ * @file
+ * @author Niklas Laxström
+ * @copyright Copyright © 2009-2013 Niklas Laxström
+ * @license GPL-2.0+
+ */
+
+/**
+ * This class represents one individual section in translatable page.
+ *
+ * @ingroup PageTranslation
+ */
+class TPSection {
+ /// @var string Section name
+ public $id;
+ /// @var string New name of the section, that will be saved to database.
+ public $name;
+ /// @var string Section text.
+ public $text;
+ /// @var string Is this new, existing, changed or deleted section.
+ public $type;
+ /// @var string Text of previous version of this section.
+ public $oldText;
+
+ /**
+ * Returns section text unmodified.
+ * @return string Wikitext.
+ */
+ public function getText() {
+ return $this->text;
+ }
+
+ /**
+ * Returns the text with tvars replaces with placeholders.
+ * @return string Wikitext.
+ * @since 2014.07
+ */
+ public function getTextWithVariables() {
+ $re = '~<tvar\|([^>]+)>(.*?)</>~u';
+
+ return preg_replace( $re, '$\1', $this->text );
+ }
+
+ /**
+ * Returns section text with variables replaced.
+ * @return string Wikitext.
+ */
+ public function getTextForTrans() {
+ $re = '~<tvar\|([^>]+)>(.*?)</>~u';
+
+ return preg_replace( $re, '\2', $this->text );
+ }
+
+ /**
+ * Returns the section text with updated or added section marker.
+ * @return string Wikitext.
+ */
+ public function getMarkedText() {
+ $id = isset( $this->name ) ? $this->name : $this->id;
+ $header = "<!--T:{$id}-->";
+ $re = '~^(=+.*?=+\s*?$)~m';
+ $rep = "\\1 $header";
+ $count = 0;
+
+ $text = preg_replace( $re, $rep, $this->text, 1, $count );
+
+ if ( $count === 0 ) {
+ $text = $header . "\n" . $this->text;
+ }
+
+ return $text;
+ }
+
+ /**
+ * Returns oldtext, or current text if not available.
+ * @return string Wikitext.
+ */
+ public function getOldText() {
+ return isset( $this->oldText ) ? $this->oldText : $this->text;
+ }
+
+ /**
+ * Returns array of variables defined on this section.
+ * @return array ( string => string ) Values indexed with keys which are
+ * prefixed with a dollar sign.
+ */
+ public function getVariables() {
+ $re = '~<tvar\|([^>]+)>(.*?)</>~u';
+ $matches = array();
+ preg_match_all( $re, $this->text, $matches, PREG_SET_ORDER );
+ $vars = array();
+
+ foreach ( $matches as $m ) {
+ $vars['$' . $m[1]] = $m[2];
+ }
+
+ return $vars;
+ }
+}
diff --git a/MLEB/Translate/tag/TranslatablePage.php b/MLEB/Translate/tag/TranslatablePage.php
new file mode 100644
index 00000000..97e14315
--- /dev/null
+++ b/MLEB/Translate/tag/TranslatablePage.php
@@ -0,0 +1,881 @@
+<?php
+/**
+ * Translatable page model.
+ *
+ * @file
+ * @author Niklas Laxström
+ * @license GPL-2.0+
+ */
+
+/**
+ * Class to parse translatable wiki pages.
+ *
+ * @ingroup PageTranslation
+ */
+class TranslatablePage {
+ /**
+ * Title of the page.
+ */
+ protected $title = null;
+
+ /**
+ * Text contents of the page.
+ */
+ protected $text = null;
+
+ /**
+ * Revision of the page, if applicaple.
+ *
+ * @var int
+ */
+ protected $revision = null;
+
+ /**
+ * From which source this object was constructed.
+ * Can be: text, revision, title
+ */
+ protected $source = null;
+
+ /**
+ * Whether the page contents is already loaded.
+ */
+ protected $init = false;
+
+ /**
+ * Name of the section which contains the translated page title.
+ */
+ protected $displayTitle = 'Page display title';
+
+ /**
+ * Whether the title should be translated
+ * @var bool
+ */
+ protected $pageDisplayTitle = null;
+
+ protected $cachedParse;
+
+ /**
+ * @param Title $title Title object for the page
+ */
+ protected function __construct( Title $title ) {
+ $this->title = $title;
+ }
+
+ // Public constructors //
+
+ /**
+ * Constructs a translatable page from given text.
+ * Some functions will fail unless you set revision
+ * parameter manually.
+ *
+ * @param Title $title
+ * @param string $text
+ *
+ * @return TranslatablePage
+ */
+ public static function newFromText( Title $title, $text ) {
+ $obj = new self( $title );
+ $obj->text = $text;
+ $obj->source = 'text';
+
+ return $obj;
+ }
+
+ /**
+ * Constructs a translatable page from given revision.
+ * The revision must belong to the title given or unspecified
+ * behavior will happen.
+ *
+ * @param Title $title
+ * @param integer $revision Revision number
+ * @throws MWException
+ * @return TranslatablePage
+ */
+ public static function newFromRevision( Title $title, $revision ) {
+ $rev = Revision::newFromTitle( $title, $revision );
+ if ( $rev === null ) {
+ throw new MWException( 'Revision is null' );
+ }
+
+ $obj = new self( $title );
+ $obj->source = 'revision';
+ $obj->revision = $revision;
+
+ return $obj;
+ }
+
+ /**
+ * Constructs a translatable page from title.
+ * The text of last marked revision is loaded when neded.
+ *
+ * @param Title $title
+ * @return TranslatablePage
+ */
+ public static function newFromTitle( Title $title ) {
+ $obj = new self( $title );
+ $obj->source = 'title';
+
+ return $obj;
+ }
+
+ // Getters //
+
+ /**
+ * Returns the title for this translatable page.
+ * @return Title
+ */
+ public function getTitle() {
+ return $this->title;
+ }
+
+ /**
+ * Returns the text for this translatable page.
+ * @throws MWException
+ * @return string
+ */
+ public function getText() {
+ if ( $this->init === false ) {
+ switch ( $this->source ) {
+ case 'text':
+ break;
+ case 'title':
+ $this->revision = $this->getMarkedTag();
+ // There is no break statement here on purpose
+ case 'revision':
+ $rev = Revision::newFromTitle( $this->getTitle(), $this->revision );
+ $this->text = ContentHandler::getContentText( $rev->getContent() );
+ break;
+ }
+ }
+
+ if ( !is_string( $this->text ) ) {
+ throw new MWException( 'We have no text' );
+ }
+
+ $this->init = true;
+
+ return $this->text;
+ }
+
+ /**
+ * Revision is null if object was constructed using newFromText.
+ * @return null or integer
+ */
+ public function getRevision() {
+ return $this->revision;
+ }
+
+ /**
+ * Manually set a revision number to use loading page text.
+ * @param integer $revision
+ */
+ public function setRevision( $revision ) {
+ $this->revision = $revision;
+ $this->source = 'revision';
+ $this->init = false;
+ }
+
+ // Public functions //
+
+ /**
+ * Returns the source language of this translatable page. In other words
+ * the language in which the page without language code is written.
+ * @return string
+ * @since 2013-01-28
+ */
+ public function getSourceLanguageCode() {
+ return $this->getTitle()->getPageLanguage()->getCode();
+ }
+
+ /**
+ * Returns MessageGroup id (to be) used for translating this page.
+ * @return string
+ */
+ public function getMessageGroupId() {
+ return self::getMessageGroupIdFromTitle( $this->getTitle() );
+ }
+
+ /**
+ * Constructs MessageGroup id for any title.
+ * @param Title $title
+ * @return string
+ */
+ public static function getMessageGroupIdFromTitle( Title $title ) {
+ return 'page-' . $title->getPrefixedText();
+ }
+
+ /**
+ * Returns MessageGroup used for translating this page. It may still be empty
+ * if the page has not been ever marked.
+ * @return WikiPageMessageGroup
+ */
+ public function getMessageGroup() {
+ return MessageGroups::getGroup( $this->getMessageGroupId() );
+ }
+
+ /**
+ * Check whether title is marked for translation
+ * @return bool
+ * @return 2014.06
+ */
+ public function hasPageDisplayTitle() {
+ // Cached value
+ if ( $this->pageDisplayTitle !== null ) {
+ return $this->pageDisplayTitle;
+ }
+
+ $this->pageDisplayTitle = true;
+
+ // Check if title section exists in list of sections
+ $previous = $this->getSections();
+ if ( $previous && !in_array( $this->displayTitle, $previous ) ) {
+ $this->pageDisplayTitle = false;
+ }
+
+ return $this->pageDisplayTitle;
+ }
+
+ /**
+ * Get translated page title.
+ * @param string $code Language code.
+ * @return string|null
+ */
+ public function getPageDisplayTitle( $code ) {
+ // Return null if title not marked for translation
+ if ( !$this->hasPageDisplayTitle() ) {
+ return null;
+ }
+
+ // Display title from DB
+ $section = str_replace( ' ', '_', $this->displayTitle );
+ $page = $this->getTitle()->getPrefixedDBKey();
+
+ $group = $this->getMessageGroup();
+ // Sanity check, seems to happen during moves
+ if ( !$group instanceof WikiPageMessageGroup ) {
+ return null;
+ }
+
+ return $group->getMessage( "$page/$section", $code );
+ }
+
+ /**
+ * Returns a TPParse object which represents the parsed page.
+ *
+ * @throws TPException
+ * @return TPParse
+ */
+ public function getParse() {
+ if ( isset( $this->cachedParse ) ) {
+ return $this->cachedParse;
+ }
+
+ $text = $this->getText();
+
+ $nowiki = array();
+ $text = self::armourNowiki( $nowiki, $text );
+
+ $sections = array();
+
+ // Add section to allow translating the page name
+ $displaytitle = new TPSection;
+ $displaytitle->id = $this->displayTitle;
+ $displaytitle->text = $this->getTitle()->getPrefixedText();
+ $sections[TranslateUtils::getPlaceholder()] = $displaytitle;
+
+ $tagPlaceHolders = array();
+
+ while ( true ) {
+ $re = '~(<translate>)\s*(.*?)(</translate>)~s';
+ $matches = array();
+ $ok = preg_match_all( $re, $text, $matches, PREG_OFFSET_CAPTURE );
+
+ if ( $ok === 0 ) {
+ break; // No matches
+ }
+
+ // Do-placehold for the whole stuff
+ $ph = TranslateUtils::getPlaceholder();
+ $start = $matches[0][0][1];
+ $len = strlen( $matches[0][0][0] );
+ $end = $start + $len;
+ $text = self::index_replace( $text, $ph, $start, $end );
+
+ // Sectionise the contents
+ // Strip the surrounding tags
+ $contents = $matches[0][0][0]; // full match
+ $start = $matches[2][0][1] - $matches[0][0][1]; // bytes before actual content
+ $len = strlen( $matches[2][0][0] ); // len of the content
+ $end = $start + $len;
+
+ $sectiontext = substr( $contents, $start, $len );
+
+ if ( strpos( $sectiontext, '<translate>' ) !== false ) {
+ throw new TPException( array( 'pt-parse-nested', $sectiontext ) );
+ }
+
+ $sectiontext = self::unArmourNowiki( $nowiki, $sectiontext );
+
+ $ret = $this->sectionise( $sections, $sectiontext );
+
+ $tagPlaceHolders[$ph] =
+ self::index_replace( $contents, $ret, $start, $end );
+ }
+
+ $prettyTemplate = $text;
+ foreach ( $tagPlaceHolders as $ph => $value ) {
+ $prettyTemplate = str_replace( $ph, '[...]', $prettyTemplate );
+ }
+
+ if ( strpos( $text, '<translate>' ) !== false ) {
+ throw new TPException( array( 'pt-parse-open', $prettyTemplate ) );
+ } elseif ( strpos( $text, '</translate>' ) !== false ) {
+ throw new TPException( array( 'pt-parse-close', $prettyTemplate ) );
+ }
+
+ foreach ( $tagPlaceHolders as $ph => $value ) {
+ $text = str_replace( $ph, $value, $text );
+ }
+
+ if ( count( $sections ) === 1 ) {
+ // Don't return display title for pages which have no sections
+ $sections = array();
+ }
+
+ $text = self::unArmourNowiki( $nowiki, $text );
+
+ $parse = new TPParse( $this->getTitle() );
+ $parse->template = $text;
+ $parse->sections = $sections;
+
+ // Cache it
+ $this->cachedParse = $parse;
+
+ return $parse;
+ }
+
+ // Inner functionality //
+
+ /**
+ * @param array $holders
+ * @param string $text
+ * @return string
+ */
+ public static function armourNowiki( &$holders, $text ) {
+ $re = '~(<nowiki>)(.*?)(</nowiki>)~s';
+
+ while ( preg_match( $re, $text, $matches ) ) {
+ $ph = TranslateUtils::getPlaceholder();
+ $text = str_replace( $matches[0], $ph, $text );
+ $holders[$ph] = $matches[0];
+ }
+
+ return $text;
+ }
+
+ /**
+ * @param $holders
+ * @param string $text
+ * @return mixed
+ */
+ public static function unArmourNowiki( $holders, $text ) {
+ foreach ( $holders as $ph => $value ) {
+ $text = str_replace( $ph, $value, $text );
+ }
+
+ return $text;
+ }
+
+ /**
+ * @param string $string
+ * @param string $rep
+ * @param int $start
+ * @param int $end
+ * @return string
+ */
+ protected static function index_replace( $string, $rep, $start, $end ) {
+ return substr( $string, 0, $start ) . $rep . substr( $string, $end );
+ }
+
+ /**
+ * Splits the content marked with \<translate> tags into sections, which
+ * are separated with with two or more newlines. Extra whitespace is captured
+ * in the template and not included in the sections.
+ * @param array $sections Array of placeholder => TPSection.
+ * @param string $text Contents of one pair of \<translate> tags.
+ * @return string Template with placeholders for sections, which itself are added to $sections.
+ */
+ protected function sectionise( &$sections, $text ) {
+ $flags = PREG_SPLIT_NO_EMPTY | PREG_SPLIT_DELIM_CAPTURE;
+ $parts = preg_split( '~(\s*\n\n\s*|\s*$)~', $text, -1, $flags );
+
+ $template = '';
+ foreach ( $parts as $_ ) {
+ if ( trim( $_ ) === '' ) {
+ $template .= $_;
+ } else {
+ $ph = TranslateUtils::getPlaceholder();
+ $sections[$ph] = $this->shakeSection( $_ );
+ $template .= $ph;
+ }
+ }
+
+ return $template;
+ }
+
+ /**
+ * Checks if this section already contains a section marker. If there
+ * is not, a new one will be created. Marker will have the value of
+ * -1, which will later be replaced with a real value.
+ *
+ * May throw a TPException if there is error with existing section
+ * markers.
+ *
+ * @param string $content Content of one section
+ * @throws TPException
+ * @return TPSection
+ */
+ protected function shakeSection( $content ) {
+ $re = '~<!--T:(.*?)-->~';
+ $matches = array();
+ $count = preg_match_all( $re, $content, $matches, PREG_SET_ORDER );
+
+ if ( $count > 1 ) {
+ throw new TPException( array( 'pt-shake-multiple', $content ) );
+ }
+
+ $section = new TPSection;
+ if ( $count === 1 ) {
+ foreach ( $matches as $match ) {
+ list( /*full*/, $id ) = $match;
+ $section->id = $id;
+
+ // Currently handle only these two standard places.
+ // Is this too strict?
+ $rer1 = '~^<!--T:(.*?)-->\n~'; // Normal sections
+ $rer2 = '~\s*<!--T:(.*?)-->$~m'; // Sections with title
+ $content = preg_replace( $rer1, '', $content );
+ $content = preg_replace( $rer2, '', $content );
+
+ if ( preg_match( $re, $content ) === 1 ) {
+ throw new TPException( array( 'pt-shake-position', $content ) );
+ } elseif ( trim( $content ) === '' ) {
+ throw new TPException( array( 'pt-shake-empty', $id ) );
+ }
+ }
+ } else {
+ // New section
+ $section->id = -1;
+ }
+
+ $section->text = $content;
+
+ return $section;
+ }
+
+ // Tag methods //
+
+ protected static $tagCache = array();
+
+ /**
+ * Adds a tag which indicates that this page is
+ * suitable for translation.
+ * @param integer $revision
+ * @param null|string $value
+ */
+ public function addMarkedTag( $revision, $value = null ) {
+ $this->addTag( 'tp:mark', $revision, $value );
+ MessageGroups::clearCache();
+ }
+
+ /**
+ * Adds a tag which indicates that this page source is
+ * ready for marking for translation.
+ * @param integer $revision
+ */
+ public function addReadyTag( $revision ) {
+ $this->addTag( 'tp:tag', $revision );
+ }
+
+ /**
+ * @param string $tag Tag name
+ * @param int $revision Revision ID to add tag for
+ * @param mixed $value Optional. Value to be stored as serialized with | as separator
+ * @throws MWException
+ */
+ protected function addTag( $tag, $revision, $value = null ) {
+ $dbw = wfGetDB( DB_MASTER );
+
+ $aid = $this->getTitle()->getArticleID();
+
+ if ( is_object( $revision ) ) {
+ throw new MWException( 'Got object, expected id' );
+ }
+
+ $conds = array(
+ 'rt_page' => $aid,
+ 'rt_type' => RevTag::getType( $tag ),
+ 'rt_revision' => $revision
+ );
+ $dbw->delete( 'revtag', $conds, __METHOD__ );
+
+ if ( $value !== null ) {
+ $conds['rt_value'] = serialize( implode( '|', $value ) );
+ }
+
+ $dbw->insert( 'revtag', $conds, __METHOD__ );
+
+ self::$tagCache[$aid][$tag] = $revision;
+ }
+
+ /**
+ * Returns the latest revision which has marked tag, if any.
+ * @return integer|bool false
+ */
+ public function getMarkedTag() {
+ return $this->getTag( 'tp:mark' );
+ }
+
+ /**
+ * Returns the latest revision which has ready tag, if any.
+ * @return int|bool false
+ */
+ public function getReadyTag() {
+ return $this->getTag( 'tp:tag' );
+ }
+
+ /**
+ * Removes all page translation feature data from the database.
+ * Does not remove translated sections or translation pages.
+ */
+ public function unmarkTranslatablePage() {
+ $aid = $this->getTitle()->getArticleID();
+
+ $dbw = wfGetDB( DB_MASTER );
+ $conds = array(
+ 'rt_page' => $aid,
+ 'rt_type' => array(
+ RevTag::getType( 'tp:mark' ),
+ RevTag::getType( 'tp:tag' ),
+ ),
+ );
+
+ $dbw->delete( 'revtag', $conds, __METHOD__ );
+ $dbw->delete( 'translate_sections', array( 'trs_page' => $aid ), __METHOD__ );
+ unset( self::$tagCache[$aid] );
+ }
+
+ /**
+ * @param $tag
+ * @param int $dbt
+ * @return array|bool False if tag is not found
+ */
+ protected function getTag( $tag, $dbt = DB_SLAVE ) {
+ if ( !$this->getTitle()->exists() ) {
+ return false;
+ }
+
+ $aid = $this->getTitle()->getArticleID();
+
+ if ( isset( self::$tagCache[$aid][$tag] ) ) {
+ return self::$tagCache[$aid][$tag];
+ }
+
+ $db = wfGetDB( $dbt );
+
+ $conds = array(
+ 'rt_page' => $aid,
+ 'rt_type' => RevTag::getType( $tag ),
+ );
+
+ $options = array( 'ORDER BY' => 'rt_revision DESC' );
+
+ // Tag values are not stored, only the associated revision
+ $tagRevision = $db->selectField( 'revtag', 'rt_revision', $conds, __METHOD__, $options );
+ if ( $tagRevision !== false ) {
+ return self::$tagCache[$aid][$tag] = intval( $tagRevision );
+ } else {
+ return self::$tagCache[$aid][$tag] = false;
+ }
+ }
+
+ /**
+ * Produces a link to translation view of a translation page.
+ * @param string|bool $code MediaWiki language code. Default: false.
+ * @return string Relative url
+ */
+ public function getTranslationUrl( $code = false ) {
+ $params = array(
+ 'group' => $this->getMessageGroupId(),
+ 'action' => 'page',
+ 'filter' => '',
+ 'language' => $code,
+ );
+
+ $translate = SpecialPage::getTitleFor( 'Translate' );
+
+ return $translate->getLocalURL( $params );
+ }
+
+ public function getMarkedRevs() {
+ // Avoid replication lag issues
+ $db = wfGetDB( DB_MASTER );
+
+ $fields = array( 'rt_revision', 'rt_value' );
+ $conds = array(
+ 'rt_page' => $this->getTitle()->getArticleID(),
+ 'rt_type' => RevTag::getType( 'tp:mark' ),
+ );
+ $options = array( 'ORDER BY' => 'rt_revision DESC' );
+
+ return $db->select( 'revtag', $fields, $conds, __METHOD__, $options );
+ }
+
+ /**
+ * Fetch the available translation pages from database
+ * @return Title[]
+ */
+ public function getTranslationPages() {
+ // Avoid replication lag issues
+ $dbr = wfGetDB( DB_MASTER );
+ $prefix = $this->getTitle()->getDBkey() . '/';
+ $likePattern = $dbr->buildLike( $prefix, $dbr->anyString() );
+ $res = $dbr->select(
+ 'page',
+ array( 'page_namespace', 'page_title' ),
+ array(
+ 'page_namespace' => $this->getTitle()->getNamespace(),
+ "page_title $likePattern"
+ ),
+ __METHOD__
+ );
+
+ $titles = TitleArray::newFromResult( $res );
+ $filtered = array();
+
+ // Make sure we only get translation subpages while ignoring others
+ $codes = Language::fetchLanguageNames();
+ $prefix = $this->getTitle()->getText();
+ /** @var Title $title */
+ foreach ( $titles as $title ) {
+ list( $name, $code ) = TranslateUtils::figureMessage( $title->getText() );
+ if ( !isset( $codes[$code] ) || $name !== $prefix ) {
+ continue;
+ }
+ $filtered[] = $title;
+ }
+
+ return $filtered;
+ }
+
+ /**
+ * Returns a list section ids.
+ * @return string[] List of string
+ * @since 2012-08-06
+ */
+ protected function getSections() {
+ $dbw = wfGetDB( DB_MASTER );
+ $conds = array( 'trs_page' => $this->getTitle()->getArticleID() );
+ $res = $dbw->select( 'translate_sections', 'trs_key', $conds, __METHOD__ );
+
+ $sections = array();
+ foreach ( $res as $row ) {
+ $sections[] = $row->trs_key;
+ }
+
+ return $sections;
+ }
+
+ /**
+ * Returns a list of translation unit pages.
+ * @param string $set Can be either 'all', or 'active'
+ * @param string|bool $code Only list unit pages in given language.
+ * @return Title[] List of Titles.
+ * @since 2012-08-06
+ */
+ public function getTranslationUnitPages( $set = 'active', $code = false ) {
+ $dbw = wfGetDB( DB_MASTER );
+ $base = $this->getTitle()->getPrefixedDBKey();
+ // Including the / used as separator
+ $baseLength = strlen( $base ) + 1;
+
+ if ( $code !== false ) {
+ $like = $dbw->buildLike( "$base/", $dbw->anyString(), "/$code" );
+ } else {
+ $like = $dbw->buildLike( "$base/", $dbw->anyString() );
+ }
+
+ $fields = array( 'page_namespace', 'page_title' );
+ $conds = array(
+ 'page_namespace' => NS_TRANSLATIONS,
+ 'page_title ' . $like
+ );
+ $res = $dbw->select( 'page', $fields, $conds, __METHOD__ );
+
+ // Only include pages which belong to this translatable page.
+ // Problematic cases are when pages Foo and Foo/bar are both
+ // translatable. Then when querying for Foo, we also get units
+ // belonging to Foo/bar.
+ $sections = array_flip( $this->getSections() );
+ $units = array();
+ foreach ( $res as $row ) {
+ $title = Title::newFromRow( $row );
+
+ // Strip the language code and the name of the
+ // translatable to get plain section key
+ $handle = new MessageHandle( $title );
+ $key = substr( $handle->getKey(), $baseLength );
+ if ( strpos( $key, '/' ) !== false ) {
+ // Probably belongs to translatable subpage
+ continue;
+ }
+
+ // Check against list of sections if requested
+ if ( $set === 'active' && !isset( $sections[$key] ) ) {
+ continue;
+ }
+
+ // We have a match :)
+ $units[] = $title;
+ }
+
+ return $units;
+ }
+
+ /**
+ *
+ * @return array
+ */
+ public function getTranslationPercentages() {
+ // Calculate percentages for the available translations
+ $group = $this->getMessageGroup();
+ if ( !$group instanceof WikiPageMessageGroup ) {
+ return array();
+ }
+
+ $titles = $this->getTranslationPages();
+ $temp = MessageGroupStats::forGroup( $this->getMessageGroupId() );
+ $stats = array();
+
+ foreach ( $titles as $t ) {
+ $handle = new MessageHandle( $t );
+ $code = $handle->getCode();
+
+ // Sometimes we want to display 0.00 for pages for which translation
+ // hasn't started yet.
+ $stats[$code] = 0.00;
+ if ( isset( $temp[$code] ) && $temp[$code][MessageGroupStats::TOTAL] > 0 ) {
+ $total = $temp[$code][MessageGroupStats::TOTAL];
+ $translated = $temp[$code][MessageGroupStats::TRANSLATED];
+ $percentage = $translated / $total;
+ $stats[$code] = sprintf( '%.2f', $percentage );
+ }
+ }
+
+ // Content language is always up-to-date
+ $stats[$this->getSourceLanguageCode()] = 1.00;
+
+ return $stats;
+ }
+
+ public function getTransRev( $suffix ) {
+ $title = Title::makeTitle( NS_TRANSLATIONS, $suffix );
+
+ // Avoid replication lag issues
+ $db = wfGetDB( DB_MASTER );
+ $fields = 'rt_value';
+ $conds = array(
+ 'rt_page' => $title->getArticleID(),
+ 'rt_type' => RevTag::getType( 'tp:transver' ),
+ );
+ $options = array( 'ORDER BY' => 'rt_revision DESC' );
+
+ return $db->selectField( 'revtag', $fields, $conds, __METHOD__, $options );
+ }
+
+ /**
+ * @param Title $title
+ * @return bool|TranslatablePage
+ */
+ public static function isTranslationPage( Title $title ) {
+ $handle = new MessageHandle( $title );
+ $key = $handle->getKey();
+ $code = $handle->getCode();
+
+ if ( $key === '' || $code === '' ) {
+ return false;
+ }
+
+ $codes = Language::fetchLanguageNames();
+ global $wgTranslateDocumentationLanguageCode;
+ unset( $codes[$wgTranslateDocumentationLanguageCode] );
+
+ if ( !isset( $codes[$code] ) ) {
+ return false;
+ }
+
+ $newtitle = self::changeTitleText( $title, $key );
+
+ if ( !$newtitle ) {
+ return false;
+ }
+
+ $page = TranslatablePage::newFromTitle( $newtitle );
+
+ if ( $page->getMarkedTag() === false ) {
+ return false;
+ }
+
+ return $page;
+ }
+
+ protected static function changeTitleText( Title $title, $text ) {
+ return Title::makeTitleSafe( $title->getNamespace(), $text );
+ }
+
+ /**
+ * @param Title $title
+ * @return bool
+ */
+ public static function isSourcePage( Title $title ) {
+ static $cache = null;
+
+ $cacheObj = wfGetCache( CACHE_ANYTHING );
+ $cacheKey = wfMemcKey( 'pagetranslation', 'sourcepages' );
+
+ if ( $cache === null ) {
+ $cache = $cacheObj->get( $cacheKey );
+ }
+ if ( !is_array( $cache ) ) {
+ $cache = self::getTranslatablePages();
+ $cacheObj->set( $cacheKey, $cache, 60 * 5 );
+ }
+
+ return in_array( $title->getArticleID(), $cache );
+ }
+
+ /**
+ * Get a list of page ids where the latest revision is either tagged or marked
+ */
+ public static function getTranslatablePages() {
+ // Avoid replication lag issues
+ $dbr = wfGetDB( DB_MASTER );
+
+ $tables = array( 'revtag', 'page' );
+ $fields = 'rt_page';
+ $conds = array(
+ 'rt_page = page_id',
+ 'rt_revision = page_latest',
+ 'rt_type' => array( RevTag::getType( 'tp:mark' ), RevTag::getType( 'tp:tag' ) ),
+ );
+ $options = array( 'GROUP BY' => 'rt_page' );
+
+ $res = $dbr->select( $tables, $fields, $conds, __METHOD__, $options );
+ $results = array();
+ foreach ( $res as $row ) {
+ $results[] = $row->rt_page;
+ }
+
+ return $results;
+ }
+}
diff --git a/MLEB/Translate/tag/TranslateDeleteJob.php b/MLEB/Translate/tag/TranslateDeleteJob.php
new file mode 100644
index 00000000..177721d0
--- /dev/null
+++ b/MLEB/Translate/tag/TranslateDeleteJob.php
@@ -0,0 +1,152 @@
+<?php
+/**
+ * Contains class with job for deleting translatable and translation pages.
+ *
+ * @file
+ * @author Niklas Laxström
+ * @copyright Copyright © 2008-2013, Niklas Laxström
+ * @license GPL-2.0+
+ */
+
+/**
+ * Contains class with job for deleting translatable and translation pages.
+ *
+ * @ingroup PageTranslation JobQueue
+ */
+class TranslateDeleteJob extends Job {
+ /**
+ * @param $target Title
+ * @param $base
+ * @param $full
+ * @param $performer
+ * @return TranslateDeleteJob
+ */
+ public static function newJob( Title $target, $base, $full, /*User*/$performer ) {
+ $job = new self( $target );
+ $job->setUser( FuzzyBot::getUser() );
+ $job->setFull( $full );
+ $job->setBase( $base );
+ $msg = $job->getFull() ? 'pt-deletepage-full-logreason' : 'pt-deletepage-lang-logreason';
+ $job->setSummary( wfMessage( $msg, $base )->inContentLanguage()->text() );
+ $job->setPerformer( $performer );
+
+ return $job;
+ }
+
+ function __construct( $title, $params = array(), $id = 0 ) {
+ parent::__construct( __CLASS__, $title, $params, $id );
+ }
+
+ function run() {
+ // Initialization
+ $title = $this->title;
+ // Other stuff
+ $user = $this->getUser();
+ $summary = $this->getSummary();
+ $base = $this->getBase();
+ $doer = User::newFromName( $this->getPerformer() );
+
+ PageTranslationHooks::$allowTargetEdit = true;
+
+ $error = '';
+ $wikipage = new WikiPage( $title );
+ $ok = $wikipage->doDeleteArticle( $summary, false, 0, true, $error, $user );
+ if ( !$ok ) {
+ $params = array(
+ 'target' => $base,
+ 'error' => $ok,
+ );
+
+ $type = $this->getFull() ? 'deletefnok' : 'deletelnok';
+ $entry = new ManualLogEntry( 'pagetranslation', $type );
+ $entry->setPerformer( $doer );
+ $entry->setTarget( $title );
+ $entry->setParameters( $params );
+ $logid = $entry->insert();
+ $entry->publish( $logid );
+ }
+
+ PageTranslationHooks::$allowTargetEdit = false;
+
+ $cache = wfGetCache( CACHE_DB );
+ $pages = (array)$cache->get( wfMemcKey( 'pt-base', $base ) );
+ $lastitem = array_pop( $pages );
+ if ( $title->getPrefixedText() === $lastitem ) {
+ $cache->delete( wfMemcKey( 'pt-base', $base ) );
+
+ $type = $this->getFull() ? 'deletefok' : 'deletelok';
+ $entry = new ManualLogEntry( 'pagetranslation', $type );
+ $entry->setPerformer( $doer );
+ $entry->setTarget( Title::newFromText( $base ) );
+ $logid = $entry->insert();
+ $entry->publish( $logid );
+
+ $tpage = TranslatablePage::newFromTitle( $title );
+ $tpage->getTranslationPercentages( true );
+ foreach ( $tpage->getTranslationPages() as $page ) {
+ $page->invalidateCache();
+ }
+ $title->invalidateCache();
+ }
+
+ return true;
+ }
+
+ public function setSummary( $summary ) {
+ $this->params['summary'] = $summary;
+ }
+
+ public function getSummary() {
+ return $this->params['summary'];
+ }
+
+ public function setFull( $full ) {
+ $this->params['full'] = $full;
+ }
+
+ public function getFull() {
+ return $this->params['full'];
+ }
+
+ /**
+ * @param $performer User|string
+ */
+ public function setPerformer( $performer ) {
+ if ( is_object( $performer ) ) {
+ $this->params['performer'] = $performer->getName();
+ } else {
+ $this->params['performer'] = $performer;
+ }
+ }
+
+ public function getPerformer() {
+ return $this->params['performer'];
+ }
+
+ /**
+ * @param $user User|string
+ */
+ public function setUser( $user ) {
+ if ( is_object( $user ) ) {
+ $this->params['user'] = $user->getName();
+ } else {
+ $this->params['user'] = $user;
+ }
+ }
+
+ public function setBase( $base ) {
+ $this->params['base'] = $base;
+ }
+
+ public function getBase() {
+ return $this->params['base'];
+ }
+
+ /**
+ * Get a user object for doing edits.
+ * @return User
+ */
+ public function getUser() {
+ return User::newFromName( $this->params['user'], false );
+ }
+}
diff --git a/MLEB/Translate/tag/TranslateMoveJob.php b/MLEB/Translate/tag/TranslateMoveJob.php
new file mode 100644
index 00000000..59bc47c8
--- /dev/null
+++ b/MLEB/Translate/tag/TranslateMoveJob.php
@@ -0,0 +1,213 @@
+<?php
+/**
+ * Contains class with job for moving translation pages.
+ *
+ * @file
+ * @author Niklas Laxström
+ * @copyright Copyright © 2008-2010, Niklas Laxström
+ * @license GPL-2.0+
+ */
+
+/**
+ * Contains class with job for moving translation pages. Used together with
+ * PageTranslationMovePage class.
+ *
+ * @ingroup PageTranslation JobQueue
+ */
+class TranslateMoveJob extends Job {
+ /**
+ * @param $source Title
+ * @param $target Title
+ * @param $params array, should include base-source and base-target
+ * @param $performer
+ * @return TranslateMoveJob
+ */
+ public static function newJob( Title $source, Title $target, array $params,
+ /*User*/$performer
+ ) {
+ $job = new self( $source );
+ $job->setUser( FuzzyBot::getUser() );
+ $job->setTarget( $target->getPrefixedText() );
+ $summary = wfMessage( 'pt-movepage-logreason', $params['base-source'] );
+ $summary = $summary->inContentLanguage()->text();
+ $job->setSummary( $summary );
+ $job->setParams( $params );
+ $job->setPerformer( $performer );
+ $job->lock();
+
+ return $job;
+ }
+
+ function __construct( $title, $params = array(), $id = 0 ) {
+ parent::__construct( __CLASS__, $title, $params, $id );
+ }
+
+ function run() {
+ // Unfortunately the global is needed until bug is fixed:
+ // https://bugzilla.wikimedia.org/show_bug.cgi?id=49086
+ global $wgUser;
+
+ // Initialization
+ $title = $this->title;
+ // Other stuff
+ $user = $this->getUser();
+ $summary = $this->getSummary();
+ $target = $this->getTarget();
+ $base = $this->params['base-source'];
+ $doer = User::newFromName( $this->getPerformer() );
+
+ PageTranslationHooks::$allowTargetEdit = true;
+ PageTranslationHooks::$jobQueueRunning = true;
+ $oldUser = $wgUser;
+ $wgUser = $user;
+ self::forceRedirects( false );
+
+ // Don't check perms, don't leave a redirect
+ $ok = $title->moveTo( $target, false, $summary, false );
+ if ( !$ok ) {
+ $params = array(
+ 'target' => $target->getPrefixedText(),
+ 'error' => $ok,
+ );
+
+ $entry = new ManualLogEntry( 'pagetranslation', 'movenok' );
+ $entry->setPerformer( $doer );
+ $entry->setTarget( $title );
+ $entry->setParameters( $params );
+ $logid = $entry->insert();
+ $entry->publish( $logid );
+ }
+
+ self::forceRedirects( true );
+ PageTranslationHooks::$allowTargetEdit = false;
+
+ $this->unlock();
+
+ $cache = wfGetCache( CACHE_ANYTHING );
+ $key = wfMemcKey( 'translate-pt-move', $base );
+
+ $count = $cache->decr( $key );
+ $last = strval( $count ) === '0';
+
+ if ( $last ) {
+ $cache->delete( $key );
+
+ $params = array(
+ 'target' => $this->params['base-target'],
+ );
+
+ $entry = new ManualLogEntry( 'pagetranslation', 'moveok' );
+ $entry->setPerformer( $doer );
+ $entry->setParameters( $params );
+ $entry->setTarget( Title::newFromText( $base ) );
+ $logid = $entry->insert();
+ $entry->publish( $logid );
+
+ PageTranslationHooks::$jobQueueRunning = false;
+ }
+
+ $wgUser = $oldUser;
+
+ return true;
+ }
+
+ public function setSummary( $summary ) {
+ $this->params['summary'] = $summary;
+ }
+
+ public function getSummary() {
+ return $this->params['summary'];
+ }
+
+ public function setPerformer( $performer ) {
+ if ( is_object( $performer ) ) {
+ $this->params['performer'] = $performer->getName();
+ } else {
+ $this->params['performer'] = $performer;
+ }
+ }
+
+ public function getPerformer() {
+ return $this->params['performer'];
+ }
+
+ public function setTarget( $target ) {
+ if ( $target instanceof Title ) {
+ $this->params['target'] = $target->getPrefixedText();
+ } else {
+ $this->params['target'] = $target;
+ }
+ }
+
+ public function getTarget() {
+ return Title::newFromText( $this->params['target'] );
+ }
+
+ public function setUser( $user ) {
+ if ( is_object( $user ) ) {
+ $this->params['user'] = $user->getName();
+ } else {
+ $this->params['user'] = $user;
+ }
+ }
+
+ /**
+ * Get a user object for doing edits.
+ * @return User
+ */
+ public function getUser() {
+ return User::newFromName( $this->params['user'], false );
+ }
+
+ public function setParams( array $params ) {
+ foreach ( $params as $k => $v ) {
+ $this->params[$k] = $v;
+ }
+ }
+
+ public function lock() {
+ $cache = wfGetCache( CACHE_ANYTHING );
+ $cache->set( wfMemcKey( 'pt-lock', sha1( $this->title->getPrefixedText() ) ), true );
+ $cache->set( wfMemcKey( 'pt-lock', sha1( $this->getTarget()->getPrefixedText() ) ), true );
+ }
+
+ public function unlock() {
+ $cache = wfGetCache( CACHE_ANYTHING );
+ $cache->delete( wfMemcKey( 'pt-lock', sha1( $this->title->getPrefixedText() ) ) );
+ $cache->delete( wfMemcKey( 'pt-lock', sha1( $this->getTarget()->getPrefixedText() ) ) );
+ }
+
+ /**
+ * Adapted from wfSuppressWarnings to allow not leaving redirects.
+ * @param $end bool
+ */
+ public static function forceRedirects( $end = false ) {
+ static $suppressCount = 0;
+ static $originalLevel = null;
+
+ global $wgGroupPermissions;
+ global $wgUser;
+
+ if ( $end ) {
+ if ( $suppressCount ) {
+ --$suppressCount;
+ if ( !$suppressCount ) {
+ if ( $originalLevel === null ) {
+ unset( $wgGroupPermissions['*']['suppressredirect'] );
+ } else {
+ $wgGroupPermissions['*']['suppressredirect'] = $originalLevel;
+ }
+ }
+ }
+ } else {
+ if ( !$suppressCount ) {
+ $originalLevel = isset( $wgGroupPermissions['*']['suppressredirect'] ) ?
+ $wgGroupPermissions['*']['suppressredirect'] :
+ null;
+ $wgGroupPermissions['*']['suppressredirect'] = true;
+ }
+ ++$suppressCount;
+ }
+ $wgUser->clearInstanceCache();
+ }
+}
diff --git a/MLEB/Translate/tag/TranslateRenderJob.php b/MLEB/Translate/tag/TranslateRenderJob.php
new file mode 100644
index 00000000..89736e7e
--- /dev/null
+++ b/MLEB/Translate/tag/TranslateRenderJob.php
@@ -0,0 +1,106 @@
+<?php
+/**
+ * Job for updating translation pages.
+ *
+ * @file
+ * @author Niklas Laxström
+ * @license GPL-2.0+
+ */
+
+/**
+ * Job for updating translation pages when translation or template changes.
+ *
+ * @ingroup PageTranslation JobQueue
+ */
+class TranslateRenderJob extends Job {
+
+ /**
+ * @param $target Title
+ * @return TranslateRenderJob
+ */
+ public static function newJob( Title $target ) {
+ $job = new self( $target );
+ $job->setUser( FuzzyBot::getUser() );
+ $job->setFlags( EDIT_FORCE_BOT );
+ $job->setSummary( wfMessage( 'tpt-render-summary' )->inContentLanguage()->text() );
+
+ return $job;
+ }
+
+ function __construct( $title, $params = array(), $id = 0 ) {
+ parent::__construct( __CLASS__, $title, $params, $id );
+ $this->params = $params;
+ $this->removeDuplicates = true;
+ }
+
+ function run() {
+ // Initialization
+ $title = $this->title;
+ list( , $code ) = TranslateUtils::figureMessage( $title->getPrefixedText() );
+
+ // Return the actual translation page...
+ $page = TranslatablePage::isTranslationPage( $title );
+ if ( !$page ) {
+ var_dump( $this->params );
+ var_dump( $title );
+ throw new MWException( "Oops, this should not happen!" );
+ }
+
+ $group = $page->getMessageGroup();
+ $collection = $group->initCollection( $code );
+
+ $text = $page->getParse()->getTranslationPageText( $collection );
+
+ // Other stuff
+ $user = $this->getUser();
+ $summary = $this->getSummary();
+ $flags = $this->getFlags();
+
+ $page = WikiPage::factory( $title );
+
+ // @todo FuzzyBot hack
+ PageTranslationHooks::$allowTargetEdit = true;
+ $content = ContentHandler::makeContent( $text, $page->getTitle() );
+ $page->doEditContent( $content, $summary, $flags, false, $user );
+
+ PageTranslationHooks::$allowTargetEdit = false;
+
+ return true;
+ }
+
+ public function setFlags( $flags ) {
+ $this->params['flags'] = $flags;
+ }
+
+ public function getFlags() {
+ return $this->params['flags'];
+ }
+
+ public function setSummary( $summary ) {
+ $this->params['summary'] = $summary;
+ }
+
+ public function getSummary() {
+ return $this->params['summary'];
+ }
+
+ /**
+ * @param $user User|string
+ */
+ public function setUser( $user ) {
+ if ( $user instanceof User ) {
+ $this->params['user'] = $user->getName();
+ } else {
+ $this->params['user'] = $user;
+ }
+ }
+
+ /**
+ * Get a user object for doing edits.
+ *
+ * @return User
+ */
+ public function getUser() {
+ return User::newFromName( $this->params['user'], false );
+ }
+}
diff --git a/MLEB/Translate/tests/browser/README.md b/MLEB/Translate/tests/browser/README.md
new file mode 100644
index 00000000..36319498
--- /dev/null
+++ b/MLEB/Translate/tests/browser/README.md
@@ -0,0 +1 @@
+Please see https://github.com/wikimedia/mediawiki-selenium for instructions on how to run tests.
diff --git a/MLEB/Translate/tests/browser/features/manage_translator_sandbox.feature b/MLEB/Translate/tests/browser/features/manage_translator_sandbox.feature
new file mode 100644
index 00000000..29d33d82
--- /dev/null
+++ b/MLEB/Translate/tests/browser/features/manage_translator_sandbox.feature
@@ -0,0 +1,287 @@
+@firefox @login @sandbox.translatewiki.net
+Feature: Manage translator sandbox
+
+ As a translation administrator,
+ I can review translations submitted by sandboxed users and pass or fail them,
+ so that I can promote sandboxed translators to full translators.
+
+ Design:
+ - http://commons.wikimedia.org/wiki/File:Translate_UX_Onboarding_designs.pdf
+
+ These scenarios test the Special:TranslatorSandbox page.
+
+ Background:
+ Given I am logged in as a translation administrator
+ And I have reset my preferences
+
+ Scenario: There are no users in the sandbox
+ Given I am on the Translator sandbox management page with no users in the sandbox
+ Then no users are displayed in the first column
+ And I should see "0 requests" at the top of the first column
+ And I should see "0 users selected" at the bottom of the first column
+ And I should see "No requests from new users" in the header of the second column
+ And I should not see the older requests link at the bottom of the first column
+
+ Scenario: Existing users can be searched on the list
+ Given I am on the Translator sandbox management page with users in the sandbox
+ When I search for "pupu" in the sandboxed users search field
+ Then only users whose name begins with "pupu" are displayed in the first column
+ And I should see "5 requests" at the top of the first column
+
+ Scenario: Searching for non-existing users displays no results
+ Given I am on the Translator sandbox management page with users in the sandbox
+ When I search for "nosuchuser" in the sandboxed users search field
+ Then no users are displayed in the first column
+ And I should see "0 requests" at the top of the first column
+
+ Scenario: Emptying the search field shows all the users
+ Given I am on the Translator sandbox management page with users in the sandbox
+ When I search for "pupu" in the sandboxed users search field
+ And I search for "" in the sandboxed users search field
+ Then a user whose name begins with "pupu" is displayed in the first column
+ And a user whose name begins with "orava" is displayed in the first column
+
+ Scenario: Selecting the last request should make the older requests counter disappear
+ Given I am on the Translator sandbox management page with users in the sandbox
+ When I click on "Pupu0" in the first column
+ Then I should not see the older requests link at the bottom of the first column
+
+ Scenario: Selecting older requests
+ Given I am on the Translator sandbox management page with users in the sandbox
+ When I click on "Orava3" in the first column
+ And I click on the link that says "1 older requests" at the bottom of the first column
+ Then I should see the checkbox next to the request from "Pupu3" checked
+ And I should see the checkbox next to the request from "Pupu3" enabled
+ And I should see the checkbox next to the request from "Orava3" checked
+ And I should see the checkbox next to the request from "Orava3" enabled
+ And I should see the checkbox next to the request from "Pupu2" unchecked
+ And I should see "2 users selected" at the bottom of the first column
+ And I should see "2 users selected" in the header of the second column
+
+ Scenario: Selecting all users
+ Given I am on the Translator sandbox management page with users in the sandbox
+ And I click the checkbox to select all users
+ Then I should not see the older requests link at the bottom of the first column
+ And I should see "11 users selected" at the bottom of the first column
+ And I should see "11 users selected" in the header of the second column
+
+ Scenario: Searching for a user by language
+ Given I am on the Translator sandbox management page with users in the sandbox
+ When I click the sandboxed users language filter button
+ And I type "he" in the language filter
+ Then only users who translate to language "he" are displayed in the first column
+ And I should see "3 requests" at the top of the first column
+ And I should see "1 user selected" at the bottom of the first column
+ And I should see the name of the first user in the first column in the header of the second column
+ And I should see the button that clears language selection
+ And the direction of the users language filter button is "rtl"
+ And the language code of the users language filter button is "he"
+
+ Scenario: Searching for a user by language and selecting all users
+ Given I am on the Translator sandbox management page with users in the sandbox
+ When I click the sandboxed users language filter button
+ And I type "uk" in the language filter
+ And I click the checkbox to select all users
+ Then only users who translate to language "uk" are displayed in the first column
+ And I should see "3 requests" at the top of the first column
+ And I should see "3 users selected" at the bottom of the first column
+ And I should see "3 users selected" in the header of the second column
+
+ Scenario: Showing users who translate to all languages
+ Given I am on the Translator sandbox management page with users in the sandbox
+ When I click the sandboxed users language filter button
+ And I type "nl" in the language filter
+ And I click the button that clears language selection
+ Then I should see the checkbox next to the request from "Kissa" checked
+ And I should see the checkbox next to the request from "Kissa" disabled
+ And I should see "11 requests" at the top of the first column
+ And I should see "1 user selected" at the bottom of the first column
+ And I should not see the button that clears language selection
+ And the direction of the users language filter button is "ltr"
+ And the language code of the users language filter button is "en"
+
+ Scenario: Searching for languages to which nobody translates
+ Given I am on the Translator sandbox management page with users in the sandbox
+ When I click the sandboxed users language filter button
+ And I type "be" in the language filter
+ Then no users are displayed in the first column
+ And I should see "0 requests" at the top of the first column
+ And I should see "0 users selected" at the bottom of the first column
+ And I should not see the older requests link at the bottom of the first column
+
+ Scenario: Translation Administrator should be able to see a list of pending requests with usernames in the first column, sorted by the number of translations and the most recent within them, and the first user should be selected
+ Given I am on the Translator sandbox management page with users in the sandbox
+ Then I should see the userlist in the first column sorted by the number of translations and the most recent within them
+ And I should see the checkbox next to the request from "Kissa" checked
+ And I should see the checkbox next to the request from "Kissa" disabled
+ And I should see the name of the first user in the first column in the header of the second column
+ And I should see that the user's translations are sorted by the language code
+ And I should see the "Accept" button displayed in the second column
+ And I should see the "Reject" button displayed in the second column
+ And I should see "1 user selected" at the bottom of the first column
+ And I should not see the older requests link at the bottom of the first column
+
+ Scenario: Clicking on a name of a user who didn't make any translations shows the user information and the action buttons and doesn't show translations
+ Given I am on the Translator sandbox management page with users in the sandbox
+ When I click on "Orava0" in the first column
+ Then I should see the checkbox next to the request from "Orava0" checked
+ And I should see the checkbox next to the request from "Orava0" disabled
+ And I should not see any users except "Orava0" selected
+ And I should see "Orava0" in the header of the second column
+ And I should not see any translations done by the user in the second column
+ And I should see the "Accept" button displayed in the second column
+ And I should see the "Reject" button displayed in the second column
+ And I should see "1 user selected" at the bottom of the first column
+ And I should see "11 requests" at the top of the first column
+ And I should see that no reminders have been sent to the user
+
+ Scenario: Clicking a username when another user is selected selects only the new user; Clicking on a name of a user who made some translations shows the user information and the action buttons and some translations
+ Given I am on the Translator sandbox management page with users in the sandbox
+ When I click on "Orava0" in the first column
+ And I click on "Orava3" in the first column
+ Then I should see the checkbox next to the request from "Orava3" checked
+ And I should see the checkbox next to the request from "Orava3" disabled
+ And I should not see any users except "Orava3" selected
+ And I should see "Orava3" in the header of the second column
+ And I should see the details of 3 sandboxed translations done by the user in the second column
+ And I should see the "Accept" button displayed in the second column
+ And I should see the "Reject" button displayed in the second column
+ And I should see "1 user selected" at the bottom of the first column
+ And I should see that 3 reminders were sent to the user
+
+ Scenario: Selecting multiple users
+ Given I am on the Translator sandbox management page with users in the sandbox
+ When I click on "Orava4" in the first column
+ And I click on the checkbox near "Pupu3" in the first column
+ Then I should see the checkbox next to the request from "Orava4" checked
+ And I should see the checkbox next to the request from "Orava4" enabled
+ And I should see the checkbox next to the request from "Pupu3" checked
+ And I should see the checkbox next to the request from "Pupu3" enabled
+ And I should see "2 users selected" in the header of the second column
+ And I should see "2 users selected" at the bottom of the first column
+ And I should not see any translations done by the users in the second column
+ And I should see the "Accept all" button displayed in the second column
+ And I should see the "Reject all" button displayed in the second column
+
+ Scenario: Selecting multiple users and then one user again
+ Given I am on the Translator sandbox management page with users in the sandbox
+ When I click on "Pupu3" in the first column
+ And I click on the checkbox near "Pupu2" in the first column
+ And I click on "Orava2" in the first column
+ Then I should see the checkbox next to the request from "Pupu3" unchecked
+ And I should see the checkbox next to the request from "Pupu3" enabled
+ And I should see the checkbox next to the request from "Pupu2" unchecked
+ And I should see the checkbox next to the request from "Pupu2" enabled
+ And I should see the checkbox next to the request from "Orava2" checked
+ And I should see the checkbox next to the request from "Orava2" disabled
+ And I should see "Orava2" in the header of the second column
+ And I should see "1 user selected" at the bottom of the first column
+ And I should see the details of 2 sandboxed translations done by the user in the second column
+ And I should see the "Accept" button displayed in the second column
+ And I should see the "Reject" button displayed in the second column
+ And I should see the name of language "Nederlands" in the second column
+ And I should see that the language of the first translation is "Nederlands"
+
+ Scenario: Selecting a second user with translations and deselecting it
+ Given I am on the Translator sandbox management page with users in the sandbox
+ When I click on the checkbox near "Pupu4" in the first column
+ And I click on the checkbox near "Pupu4" in the first column
+ Then I should see the checkbox next to the request from "Pupu4" unchecked
+ And I should see the checkbox next to the request from "Pupu4" enabled
+ And I should see the checkbox next to the request from "Kissa" checked
+ And I should see the checkbox next to the request from "Kissa" disabled
+ And I should see the details of 5 sandboxed translations done by the user in the second column
+
+ Scenario: Selecting a second user without translations and deselecting it
+ Given I am on the Translator sandbox management page with users in the sandbox
+ When I click on "Pupu0" in the first column
+ And I click on the checkbox near "Orava0" in the first column
+ And I click on the checkbox near "Orava0" in the first column
+ Then I should see the checkbox next to the request from "Orava0" unchecked
+ And I should see the checkbox next to the request from "Orava0" enabled
+ And I should see the checkbox next to the request from "Pupu0" checked
+ And I should see the checkbox next to the request from "Pupu0" disabled
+ And I should not see any translations done by the user in the second column
+
+ Scenario: Selecting a user who wrote a comment when signing up
+ Given I am on the Translator sandbox management page with users in the sandbox
+ When I click on "Kissa" in the first column
+ Then I should see that the user wrote a comment that says "I know some languages, and I'm a developer."
+
+ Scenario: Selecting a user who didn't write a comment when signing up
+ Given I am on the Translator sandbox management page with users in the sandbox
+ When I click on "Pupu2" in the first column
+ Then I should not see that the user wrote a comment
+
+ Scenario: Accepting one user
+ Given I am on the Translator sandbox management page with users in the sandbox
+ When I click on "Pupu2" in the first column
+ And I click the "Accept" button
+ Then I should not see user "Pupu2" in the first column
+ And I should see "Orava2" in the header of the second column
+ And I should see the checkbox next to the request from "Orava2" checked
+ And I should see the checkbox next to the request from "Orava2" disabled
+ And I should see "1 user selected" at the bottom of the first column
+ And I should see "10 requests" at the top of the first column
+
+ Scenario: Rejecting one user
+ Given I am on the Translator sandbox management page with users in the sandbox
+ When I click on "Pupu2" in the first column
+ And I click the "Reject" button
+ Then I should not see user "Pupu2" in the first column
+ And I should see "Orava2" in the header of the second column
+ And I should see the checkbox next to the request from "Orava2" checked
+ And I should see the checkbox next to the request from "Orava2" disabled
+ And I should see "1 user selected" at the bottom of the first column
+ And I should see "10 requests" at the top of the first column
+
+ Scenario: Accepting multiple users
+ Given I am on the Translator sandbox management page with users in the sandbox
+ When I click on "Pupu2" in the first column
+ And I click on the checkbox near "Orava3" in the first column
+ And I click the "Accept all" button
+ Then I should not see user "Pupu2" in the first column
+ And I should not see user "Orava3" in the first column
+ And I should see "Pupu4" in the header of the second column
+ And I should see the checkbox next to the request from "Pupu4" checked
+ And I should see the checkbox next to the request from "Pupu4" disabled
+ And I should see "1 user selected" at the bottom of the first column
+ And I should see "9 requests" at the top of the first column
+
+ Scenario: Rejecting multiple users
+ Given I am on the Translator sandbox management page with users in the sandbox
+ When I click on "Pupu2" in the first column
+ And I click on the checkbox near "Orava3" in the first column
+ And I click the "Reject all" button
+ Then I should not see user "Pupu2" in the first column
+ And I should not see user "Orava3" in the first column
+ And I should see "Pupu4" in the header of the second column
+ And I should see the checkbox next to the request from "Pupu4" checked
+ And I should see the checkbox next to the request from "Pupu4" disabled
+ And I should see "1 user selected" at the bottom of the first column
+ And I should see "9 requests" at the top of the first column
+
+ Scenario: Accepting all users
+ Given I am on the Translator sandbox management page with users in the sandbox
+ When I click the checkbox to select all users
+ And I click the "Accept all" button
+ Then no users are displayed in the first column
+ And I should see "0 requests" at the top of the first column
+
+ Scenario: Search for users and accept the first user
+ Given I am on the Translator sandbox management page with users in the sandbox
+ When I search for "pupu" in the sandboxed users search field
+ And I click on "Pupu4" in the first column
+ And I click the "Accept" button
+ Then I should see "Pupu3" in the header of the second column
+ And I should see the checkbox next to the request from "Pupu3" checked
+ And I should see the checkbox next to the request from "Pupu3" disabled
+ And I should see "1 user selected" at the bottom of the first column
+ And I should see "4 requests" at the top of the first column
+
+ Scenario: Accepting a user creates a user page
+ Given I am on the Translator sandbox management page with users in the sandbox
+ When I click on "Kissa" in the first column
+ And I click the "Accept" button
+ And I go to the userpage of user "Kissa"
+ Then I should see a babel box with languages "bn, he, uk, nl, fi"
diff --git a/MLEB/Translate/tests/browser/features/special_translate.feature b/MLEB/Translate/tests/browser/features/special_translate.feature
new file mode 100644
index 00000000..17c5b737
--- /dev/null
+++ b/MLEB/Translate/tests/browser/features/special_translate.feature
@@ -0,0 +1,25 @@
+@firefox @meta.wikimedia.org
+Feature: Special:Translate
+
+ This page is the primary web translation interface for users.
+
+ https://www.mediawiki.org/wiki/Help:Extension:Translate/Quality_assurance#Workflows
+ describes how the workflow state selector can be used.
+ https://commons.wikimedia.org/wiki/File:Translate-workflow-spec.pdf?page=10
+ describes how it is meant to look and behave.
+
+ @sandbox.translatewiki.net
+ Scenario: Workflow selector not being visible
+ Given I am translating a message group which doesn't have workflow states
+ Then I should not see a workflow state
+
+ @custom-setup-needed
+ Scenario: Workflow selector being visible
+ Given I am translating a message group which has workflow states
+ Then I should see a workflow state
+
+ @custom-setup-needed
+ Scenario: Workflow selector being clickable
+ Given I am translating a message group which has workflow states
+ When I click the workflow state
+ Then I should see a list of states
diff --git a/MLEB/Translate/tests/browser/features/step_definitions/manage_translator_sandbox_steps.rb b/MLEB/Translate/tests/browser/features/step_definitions/manage_translator_sandbox_steps.rb
new file mode 100644
index 00000000..6fb29990
--- /dev/null
+++ b/MLEB/Translate/tests/browser/features/step_definitions/manage_translator_sandbox_steps.rb
@@ -0,0 +1,214 @@
+Given(/^I am logged in as a translation administrator$/) do
+ step "I am logged in"
+end
+
+Given(/^I am on the Translator sandbox management page with no users in the sandbox$/) do
+ visit(ManageTranslatorSandboxPage, :using_params => {:extra => "integrationtesting=empty"})
+end
+
+Given(/^I am on the Translator sandbox management page with users in the sandbox$/) do
+ visit(ManageTranslatorSandboxPage, :using_params => {:extra => "integrationtesting=populate"})
+end
+
+When(/^I search for "(.*)" in the sandboxed users search field$/) do |string|
+ on(ManageTranslatorSandboxPage) do |page|
+ page.search = string
+ page.search_element.send_keys :enter
+ end
+end
+
+When(/^I click the sandboxed users language filter button$/) do
+ on(ManageTranslatorSandboxPage).language_selector_button
+end
+
+When(/^I type "(.+)" in the language filter$/) do |text|
+ on(ManageTranslatorSandboxPage) do |page|
+ page.language_filter = text
+ page.language_filter_element.send_keys [:enter, "\n"]
+ end
+end
+
+When(/^I click the button that clears language selection$/) do
+ on(ManageTranslatorSandboxPage).clear_language_selector_element.click
+end
+
+When(/^I click the checkbox to select all users$/) do
+ on(ManageTranslatorSandboxPage).select_all_checkbox_element.click
+end
+
+When(/^I click the "(.+)" button$/) do |label|
+ on(ManageTranslatorSandboxPage).click_button(label)
+end
+
+When(/^I click on "(.+)" in the first column$/) do |username|
+ on(ManageTranslatorSandboxPage).request_with_username(username).click
+end
+
+When(/^I click on the checkbox near "(.+)" in the first column$/) do |username|
+ on(ManageTranslatorSandboxPage).checkbox_for_request_with_username(username).click
+end
+
+When(/^I click on the link that says "\d+ older requests?" at the bottom of the first column$/) do
+ on(ManageTranslatorSandboxPage).older_requests_indicator_element.click
+end
+
+When(/^I go to the userpage of user "(.*?)"$/) do |username|
+ visit(UserPage, :using_params => {:extra => username})
+end
+
+Then(/^I should see a babel box with languages "(.*?)"$/) do |languages|
+ on(UserPage).babel_box_has_languages?(languages).should be_true
+end
+
+Then(/^I should not see the older requests link at the bottom of the first column$/) do
+ on(ManageTranslatorSandboxPage).older_requests_indicator_element.should_not be_visible
+end
+
+Then(/^I should not see any users except "(.+)" selected$/) do |username|
+ on(ManageTranslatorSandboxPage).only_request_with_username_is_selected?(username).should be_true
+end
+
+Then(/^I should not see any translations done by the user in the second column$/) do
+ on(ManageTranslatorSandboxPage) do |page|
+ page.translation_elements.size.should == 0
+ page.details_no_translations.size.should == 1
+ page.details_no_translations[0].should be_visible
+ end
+end
+
+Then(/^I should not see any translations done by the users in the second column$/) do
+ on(ManageTranslatorSandboxPage).translation_elements.length.should == 0
+end
+
+Then(/^I should see the details of (\d+) sandboxed translations done by the user in the second column$/) do |translations|
+ on(ManageTranslatorSandboxPage) do |page|
+ page.translation_elements.size.should == translations.to_i
+ page.details_no_translations.size.should == 0
+ end
+end
+
+Then(/^I should not see user "(.+)" in the first column$/) do |username|
+ on(ManageTranslatorSandboxPage) do |page|
+ Watir::Wait.until { page.visible_requests_element.size < 11 }
+ page.request_with_username(username).should_not exist
+ end
+end
+
+Then(/^I should see that (\d+) reminders were sent to the user$/) do |count|
+ on(ManageTranslatorSandboxPage) do |page|
+ page.reminder_status_element.should be_visible
+ page.reminder_status.should match(/^Sent #{count} reminders/i)
+ end
+end
+
+Then(/^I should see that no reminders have been sent to the user$/) do
+ on(ManageTranslatorSandboxPage).reminder_status.should == ""
+end
+
+Then(/^the direction of the users language filter button is "(.+)"$/) do |dir_value|
+ on(ManageTranslatorSandboxPage).language_selector_button_element.attribute("dir").should == dir_value
+end
+
+Then(/^the language code of the users language filter button is "(.+)"$/) do |lang_value|
+ on(ManageTranslatorSandboxPage).language_selector_button_element.attribute("lang").should == lang_value
+end
+
+Then(/^usernames are visible in the first column$/) do
+ on(ManageTranslatorSandboxPage).visible_users_element.size.should_not == 0
+end
+
+Then(/^I should see the name of language "(.+)" in the second column$/) do |language|
+ on(ManageTranslatorSandboxPage).details_autonym.text.should == language
+end
+
+Then(/^I should see that the language of the first translation is "(.+)"$/) do |language|
+ on(ManageTranslatorSandboxPage).translations_autonyms[0].text.should == language
+end
+
+Then(/^only users whose name begins with "(.*)" are displayed in the first column$/) do |prefix|
+ on(ManageTranslatorSandboxPage).visible_users_start_with?(prefix).should be_true
+end
+
+Then(/^a user whose name begins with "(.*)" is displayed in the first column$/) do |prefix|
+ on(ManageTranslatorSandboxPage).the_first_column_has_username_starting_with?(prefix).should be_true
+end
+
+Then(/^no users are displayed in the first column$/) do
+ on(ManageTranslatorSandboxPage) do |page|
+ Watir::Wait.until { page.visible_requests_element.size < 11 }
+ page.visible_users_element.length.should == 0
+ end
+end
+
+Then(/^I should see "(.+)" at the top of the first column$/) do |text|
+ on(ManageTranslatorSandboxPage).request_count.should == text
+end
+
+Then(/^I should see the button that clears language selection$/) do
+ on(ManageTranslatorSandboxPage).clear_language_selector_element.should be_visible
+end
+
+Then(/^I should not see the button that clears language selection$/) do
+ on(ManageTranslatorSandboxPage).clear_language_selector_element.should_not be_visible
+end
+
+Then(/^only users who translate to language "(.+)" are displayed in the first column$/) do |language|
+ on(ManageTranslatorSandboxPage).all_visible_requests_translate_to?(language).should be_true
+end
+
+Then(/^I should see "(.+)" at the bottom of the first column$/) do |text|
+ on(ManageTranslatorSandboxPage).selected_counter.should == text
+end
+
+Then(/^I should see that the user wrote a comment that says "(.*?)"$/) do |text|
+ on(ManageTranslatorSandboxPage).signup_comment_text.should == text
+end
+
+Then(/^I should not see that the user wrote a comment$/) do
+ on(ManageTranslatorSandboxPage).signup_comment_text_element.should_not exist
+end
+
+Then(/^I should see the name of the first user in the first column in the header of the second column$/) do
+ on(ManageTranslatorSandboxPage) do |page|
+ page.details_header.text.should == page.username_in_request(0)
+ end
+end
+
+Then(/^I should see "(.+)" in the header of the second column$/) do |text|
+ on(ManageTranslatorSandboxPage).details_header.text.should == text
+end
+
+Then(/^I should see the userlist in the first column sorted by the number of translations and the most recent within them$/) do
+ on(ManageTranslatorSandboxPage).requests_are_sorted_by_translation_count_and_date?.should be_true
+end
+
+Then(/^I should see the checkbox next to the request from "(.+)" checked$/) do |user|
+ on(ManageTranslatorSandboxPage).checkbox_for_request_with_username(user).should be_checked
+end
+
+Then(/^I should see the checkbox next to the request from "(.+)" unchecked$/) do |user|
+ on(ManageTranslatorSandboxPage).checkbox_for_request_with_username(user).should_not be_checked
+end
+
+Then(/^I should see the checkbox next to the request from "(.+)" disabled$/) do |user|
+ on(ManageTranslatorSandboxPage).checkbox_for_request_with_username(user).should be_disabled
+end
+
+Then(/^I should see the checkbox next to the request from "(.+)" enabled$/) do |user|
+ on(ManageTranslatorSandboxPage).checkbox_for_request_with_username(user).should_not be_disabled
+end
+
+Then(/^I should see the "(.+)" button displayed in the second column$/) do |label|
+ on(ManageTranslatorSandboxPage).details_button(label).should be_visible
+end
+
+Then(/^I should see "(.+)" in the older requests link at the bottom of the first column$/) do |text|
+ on(ManageTranslatorSandboxPage) do |page|
+ page.older_requests_indicator_element.should be_visible
+ page.older_requests_indicator_element.text.should == text
+ end
+end
+
+Then(/^I should see that the user's translations are sorted by the language code$/) do
+ on(ManageTranslatorSandboxPage).translations_languages_are_sorted?.should be_true
+end
diff --git a/MLEB/Translate/tests/browser/features/step_definitions/special_translate_steps.rb b/MLEB/Translate/tests/browser/features/step_definitions/special_translate_steps.rb
new file mode 100644
index 00000000..a0c861b2
--- /dev/null
+++ b/MLEB/Translate/tests/browser/features/step_definitions/special_translate_steps.rb
@@ -0,0 +1,23 @@
+Given(/^I am translating a message group which doesn't have workflow states$/) do
+ visit(TranslatePage, :using_params => {:extra => "language=fi"})
+end
+
+Given(/^I am translating a message group which has workflow states$/) do
+ visit(TranslatePage, :using_params => {:extra => "language=fi&group=page-Language+committee"})
+end
+
+When(/^I click the workflow state$/) do
+ on(TranslatePage).workflow_state_element.when_present.click
+end
+
+Then(/^I should see a workflow state$/) do
+ on(TranslatePage).workflow_state_element.when_present.should be_visible
+end
+
+Then(/^I should not see a workflow state$/) do
+ on(TranslatePage).workflow_state_element.should_not be_visible
+end
+
+Then(/^I should see a list of states$/) do
+ on(TranslatePage).workflow_state_selector_element.should be_visible
+end
diff --git a/MLEB/Translate/tests/browser/features/step_definitions/translation_stash_steps.rb b/MLEB/Translate/tests/browser/features/step_definitions/translation_stash_steps.rb
new file mode 100644
index 00000000..94943330
--- /dev/null
+++ b/MLEB/Translate/tests/browser/features/step_definitions/translation_stash_steps.rb
@@ -0,0 +1,68 @@
+Given(/^I am logged in at sandbox$/) do
+ visit(LoginPage).login_with(ENV["MEDIAWIKI_USER"], ENV["MEDIAWIKI_PASSWORD"], false)
+end
+
+Given(/^I am a sandboxed user on the stash page$/) do
+ visit(StashPage, :using_params => {:extra => "integrationtesting=activatestash"})
+end
+
+Then(/^I should see a language selector$/) do
+ on(StashPage).language_selector_element.should be_visible
+end
+
+Then(/^I should be able to select a language$/) do
+ on(StashPage).select_language("fi")
+end
+
+Then(/^I should see the save button$/) do
+ on(StashPage).save_button_element.when_present.should be_visible
+end
+
+Then(/^I should see the skip button$/) do
+ on(StashPage).skip_button_element.when_present.should be_visible
+end
+
+When(/^I make a translation$/) do
+ on(StashPage).make_a_translation
+end
+
+Then(/^I should see my translation saved$/) do
+ on(StashPage).status_saved_element.when_present.should be_visible
+end
+
+Then(/^I should see the next message open for translation$/) do
+ on(StashPage) do |page|
+ page.translation_element(1).when_present.should be_visible
+ page.translation_element(1).value.should == ""
+ end
+end
+
+When(/^I reload the page$/) do
+ visit StashPage
+end
+
+Then(/^I can open and see my earlier translation$/) do
+ pending("Does not work because of random language selection on reload.") do
+ on(StashPage) do |page|
+ page.edit_element.when_present(10).click
+ page.translation_element.when_present.value.should == "Pupu"
+ end
+ end
+end
+
+Then(/^I should see a message indicating I have one completed translation$/) do
+ on(StashPage).translation_stats.should match(/1/)
+end
+
+When(/^I translate all the messages in the sandbox$/) do
+ # Sandbox needs to get enough messages
+ pending
+ (0..19).each do |i|
+ on(StashPage).make_a_translation(i)
+ step "I should see my translation saved"
+ end
+end
+
+Then(/^I can see a message that maximum number of translations has been reached$/) do
+ on(StashPage).limit_message_element.should be_visible
+end
diff --git a/MLEB/Translate/tests/browser/features/support/env.rb b/MLEB/Translate/tests/browser/features/support/env.rb
new file mode 100644
index 00000000..8ac08eab
--- /dev/null
+++ b/MLEB/Translate/tests/browser/features/support/env.rb
@@ -0,0 +1 @@
+require "mediawiki_selenium"
diff --git a/MLEB/Translate/tests/browser/features/support/hooks.rb b/MLEB/Translate/tests/browser/features/support/hooks.rb
new file mode 100644
index 00000000..ce657f4e
--- /dev/null
+++ b/MLEB/Translate/tests/browser/features/support/hooks.rb
@@ -0,0 +1,3 @@
+After("@stash") do |scenario|
+ visit(StashPage, :using_params => {:extra => "integrationtesting=deactivatestash"})
+end
diff --git a/MLEB/Translate/tests/browser/features/support/pages/manage_translator_sandbox_page.rb b/MLEB/Translate/tests/browser/features/support/pages/manage_translator_sandbox_page.rb
new file mode 100644
index 00000000..e3b01710
--- /dev/null
+++ b/MLEB/Translate/tests/browser/features/support/pages/manage_translator_sandbox_page.rb
@@ -0,0 +1,144 @@
+require "json"
+
+class ManageTranslatorSandboxPage
+ include PageObject
+
+ include URL
+ page_url URL.url("Special:ManageTranslatorSandbox?<%=params[:extra]%>")
+
+ button(:clear_language_selector, class: "clear-language-selector")
+
+ div(:details, class: "details")
+
+ text_field(:language_filter, id: "languagefilter")
+ button(:language_selector_button, class: "language-selector")
+
+ a(:older_requests_indicator, class: "older-requests-indicator")
+
+ div(:request_count, class: "request-count")
+ span(:reminder_status, class: "reminder-status")
+
+ span(:selected_counter, class: "selected-counter")
+
+ text_field(:search, class: "request-filter-box")
+
+ checkbox(:select_all_checkbox, class: "request-selector-all")
+
+ div(:signup_comment_text, class: "signup-comment-text")
+
+ # This must be reloaded every time, because it may change during the test
+ def details_header
+ @browser.element(class: "tsb-header")
+ end
+
+ def details_button(label)
+ button_class = label.downcase.gsub(" ", "-")
+ @browser.button(class: button_class)
+ end
+
+ def details_no_translations
+ @browser.divs(class: "tsb-details-no-translations")
+ end
+
+ def visible_request_selectors_element
+ @browser.elements(css: ".row.request:not(.hide) .request-selector")
+ end
+
+ def visible_users_element
+ @browser.elements(css: ".row.request:not(.hide) .username")
+ end
+
+ def visible_requests_element
+ @browser.elements(css: ".row.request:not(.hide)")
+ end
+
+ def hidden_users_element
+ @browser.elements(css: ".requests .request.hide")
+ end
+
+ def request_with_username(username)
+ @browser.div(id: "tsb-request-#{username}")
+ end
+
+ def requests_without_username(username)
+ @browser.elements(css: ".row.request:not(#tsb-request-#{username})")
+ end
+
+ def translation_elements
+ @browser.elements(css: ".details .translation")
+ end
+
+ def checkbox_for_request_with_username(username)
+ @browser.div(id: "tsb-request-#{username}").checkbox(class: "request-selector")
+ end
+
+ def visible_users_start_with?(prefix)
+ Watir::Wait.until { hidden_users_element.size > 0 }
+ visible_users_element.all? do |element|
+ element.text.match(/^#{prefix}/i)
+ end
+ end
+
+ def the_first_column_has_username_starting_with?(prefix)
+ visible_users_element.any? do |element|
+ element.text.match(/^#{prefix}/i)
+ end
+ end
+
+ def all_visible_requests_translate_to?(language)
+ Watir::Wait.until { hidden_users_element.size > 0 }
+ visible_requests_element.all? do |element|
+ user_data = JSON.parse(element.attribute_value("data-data"))
+ user_data["languagepreferences"]["languages"].include?(language)
+ end
+ end
+
+ def username_in_request(index)
+ visible_users_element[index].text
+ end
+
+ def requests_are_sorted_by_translation_count_and_date?
+ expected_usernames = []
+ Array(0..4).each do |num|
+ %w{Pupu Orava}.each do |name|
+ expected_usernames.unshift("#{name}#{num}")
+ end
+ end
+ expected_usernames.unshift("Kissa")
+ usernames = visible_users_element.collect { |element| element.text }
+
+ expected_usernames == usernames
+ end
+
+ def details_autonym
+ @browser.elements(css: ".details.pane .languages span")[0]
+ end
+
+ def translations_languages_are_sorted?
+ expected_langs = ["bn", "fi", "he", "nl", "uk"]
+ langs = translations_autonyms.collect { |element| element.attribute_value("lang") }
+
+ expected_langs == langs
+ end
+
+ def translations_autonyms
+ @browser.elements(css: ".details.pane .translations .info.autonym")
+ end
+
+ def click_button(label)
+ initial_header_text = details_header.text
+
+ details_button(label).click
+
+ # It takes a few moments until Accept and Reject buttons
+ # finish performing the action, and this action always
+ # removes the currently displayed users and changes the header
+ Watir::Wait.while { @browser.execute_script "return window.tsbUpdatingUsers" }
+ end
+
+ def only_request_with_username_is_selected?(username)
+ requests_without_username(username).all? do |element|
+ not element.attribute_value("class").split(" ").include?("selected")
+ end
+ end
+end
diff --git a/MLEB/Translate/tests/browser/features/support/pages/stash_page.rb b/MLEB/Translate/tests/browser/features/support/pages/stash_page.rb
new file mode 100644
index 00000000..a058efbf
--- /dev/null
+++ b/MLEB/Translate/tests/browser/features/support/pages/stash_page.rb
@@ -0,0 +1,34 @@
+class StashPage
+ include PageObject
+
+ include URL
+ page_url URL.url("Special:TranslationStash?<%=params[:extra]%>")
+
+ a(:edit, text: "Edit")
+
+ a(:language_selector, :class => "uls-trigger")
+ text_field(:language_filter, :id => "uls-languagefilter")
+
+ button(:skip_button, :class => "tux-editor-skip-button")
+
+ span(:status_saved, :class => "tux-status-translated")
+
+ div(:translation_stats, :class => "stash-stats")
+ div(:limit_message, :class => "limit-reached")
+
+ def make_a_translation(index = 0)
+ translation_element(index).when_present.set "Pupu"
+ save_button_element(index).click
+ end
+ def save_button_element(index = 0)
+ @browser.button(:class => "tux-editor-save-button", :index => index)
+ end
+ def select_language(language)
+ self.language_selector_element.click
+ self.language_filter = language
+ self.language_filter_element.send_keys :enter
+ end
+ def translation_element(index = 0)
+ @browser.text_field(:class => "tux-textarea-translation", :index => index)
+ end
+end
diff --git a/MLEB/Translate/tests/browser/features/support/pages/translate_page.rb b/MLEB/Translate/tests/browser/features/support/pages/translate_page.rb
new file mode 100644
index 00000000..5cf59479
--- /dev/null
+++ b/MLEB/Translate/tests/browser/features/support/pages/translate_page.rb
@@ -0,0 +1,9 @@
+class TranslatePage
+ include PageObject
+
+ include URL
+ page_url URL.url("Special:Translate?<%=params[:extra]%>")
+
+ div(:workflow_state, class: "tux-workflow-status")
+ ul(:workflow_state_selector, class: "tux-workflow-status-selector")
+end
diff --git a/MLEB/Translate/tests/browser/features/support/pages/user_page.rb b/MLEB/Translate/tests/browser/features/support/pages/user_page.rb
new file mode 100644
index 00000000..b6a7a035
--- /dev/null
+++ b/MLEB/Translate/tests/browser/features/support/pages/user_page.rb
@@ -0,0 +1,13 @@
+class UserPage
+ include PageObject
+
+ include URL
+ page_url URL.url("User:<%=params[:extra]%>")
+
+ def babel_box_has_languages?(languages)
+ languages.split(/, /).all? do |language|
+ @browser.element(css: ".mw-babel-box td[lang=#{language}]").visible?
+ end
+ end
+
+end
diff --git a/MLEB/Translate/tests/browser/features/translation_stash.feature b/MLEB/Translate/tests/browser/features/translation_stash.feature
new file mode 100644
index 00000000..8bfcc732
--- /dev/null
+++ b/MLEB/Translate/tests/browser/features/translation_stash.feature
@@ -0,0 +1,44 @@
+@firefox @login @sandbox.translatewiki.net @stash
+Feature: Translation stash
+
+ As a new translator, I can make translations in sandbox mode so that a translation administrator
+ can check them and give me translator rights, so that I do not have to register and wait for
+ approval before contributing translation for the site.
+
+ Design:
+ - http://commons.wikimedia.org/wiki/File:Translate_UX_Onboarding_designs.pdf
+
+ These scenarios test the Special:TranslationStash page. User needs to be inside the sandbox
+ to access this page.
+ The easiest way to achieve this is to add the test username to $wgTranslateTestUsers[].
+
+ Background:
+ Given I am logged in at sandbox
+ And I am a sandboxed user on the stash page
+
+ Scenario: Can select a language to translate into
+ Then I should see a language selector
+ And I should be able to select a language
+
+ Scenario: Common elements in translation widget
+
+ The first message is automatically opened for editing
+
+ Then I should see the save button
+ And I should see the skip button
+
+ Scenario: Can make a translation
+ When I make a translation
+ Then I should see my translation saved
+ And I should see the next message open for translation
+ And I should see a message indicating I have one completed translation
+
+ Scenario: Can improve own earlier translation
+ When I make a translation
+ Then I should see my translation saved
+ And I reload the page
+ And I can open and see my earlier translation
+
+ Scenario: User is displayed a message when all messages have been translated
+ When I translate all the messages in the sandbox
+ Then I can see a message that maximum number of translations has been reached
diff --git a/MLEB/Translate/tests/generateRandomSandboxData.php b/MLEB/Translate/tests/generateRandomSandboxData.php
new file mode 100644
index 00000000..2b3208c4
--- /dev/null
+++ b/MLEB/Translate/tests/generateRandomSandboxData.php
@@ -0,0 +1,112 @@
+<?php
+/**
+ * Script to generate some random data to help testing sandbox.
+ *
+ * @author Niklas Laxström
+ * @license GPL-2.0+
+ * @file
+ */
+
+// Standard boilerplate to define $IP
+if ( getenv( 'MW_INSTALL_PATH' ) !== false ) {
+ $IP = getenv( 'MW_INSTALL_PATH' );
+} else {
+ $dir = __DIR__;
+ $IP = "$dir/../../..";
+}
+require_once "$IP/maintenance/Maintenance.php";
+
+class TranslateGenerateRandomSandboxData extends Maintenance {
+
+ public function execute() {
+ $users = 10;
+
+ // For number of translations, limited to [0,20]
+ $mean = 15;
+ $stddev = 20;
+
+ $stash = new TranslationStashStorage( wfGetDB( DB_MASTER ) );
+
+ $languages = array_keys( Language::fetchLanguageNames() );
+
+ for ( $i = 0; $i < $users; $i++ ) {
+ $username = 'Pupu' . wfRandomString( 6 );
+ $password = wfRandomString( 12 );
+ $email = "$username.$password@blackhole.io";
+ $user = TranslateSandbox::addUser( $username, $password, $email );
+
+ $language = $languages[rand( 0, count( $languages ) - 1 )];
+
+ $count = gauss_ms( $mean, $stddev );
+ $count = min( 20, $count );
+ $count = max( 0, $count );
+
+ for ( $j = 0; $j < $count; $j++ ) {
+ $title = Title::makeTitle( NS_MEDIAWIKI, wfRandomString( 24 ) . '/' . $language );
+
+ $value = array( 'Pupu söi' );
+ for ( $k = rand( 0, 20 ); $k > 0; $k-- ) {
+ $value[] = wfRandomString( rand( 1, 28 ) );
+ }
+
+ $value = implode( "\n", $value );
+ $translation = new StashedTranslation( $user, $title, $value );
+ $stash->addTranslation( $translation );
+ }
+ }
+ }
+}
+
+/*
+ * Gauss functions are based on Mark Baker's code from
+ * http://stackoverflow.com/questions/5188900/bell-curve-algorithm-with-php
+ */
+
+function gauss() {
+ static $useExists = false;
+ static $useValue;
+
+ if ( $useExists ) {
+ // Use value from a previous call to this function
+ //
+ $useExists = false;
+ return $useValue;
+ } else {
+ // Polar form of the Box-Muller transformation
+ //
+ $w = 2.0;
+ while ( ( $w >= 1.0 ) || ( $w == 0.0 ) ) {
+ $x = random_PN();
+ $y = random_PN();
+ $w = ($x * $x) + ($y * $y);
+ }
+ $w = sqrt( ( -2.0 * log( $w ) ) / $w );
+
+ // Set value for next call to this function
+ //
+ $useValue = $y * $w;
+ $useExists = true;
+
+ return $x * $w;
+ }
+}
+
+function gauss_ms( $mean, $stddev ) {
+ // Adjust our gaussian random to fit the mean and standard deviation.
+ // The division by 4 is an arbitrary value to help fit the distribution
+ // within our required range, and gives a best fit for $stddev = 1.0.
+ return gauss() * ( $stddev / 4 ) + $mean;
+}
+
+function random_0_1() {
+ // Returns random number using mt_rand() with a flat distribution from 0 to 1 inclusive
+ return (float) mt_rand() / (float) mt_getrandmax();
+}
+
+function random_PN() {
+ // Returns random number using mt_rand() with a flat distribution from -1 to 1 inclusive
+ return (2.0 * random_0_1()) - 1.0;
+}
+
+$maintClass = 'TranslateGenerateRandomSandboxData';
+require_once RUN_MAINTENANCE_IF_MAIN;
diff --git a/MLEB/Translate/tests/parser/translateParserTests.txt b/MLEB/Translate/tests/parser/translateParserTests.txt
new file mode 100644
index 00000000..db494101
--- /dev/null
+++ b/MLEB/Translate/tests/parser/translateParserTests.txt
@@ -0,0 +1,34 @@
+!! functionhooks
+translation
+!! endfunctionhooks
+
+!! test
+#translation as magic word for valid language code
+!! options
+title=[[Test/mr]]
+!! input
+{{#translation:}}
+!!result
+<p>/mr
+</p>
+!! end
+
+!! test
+#translation as magic word for source page
+!! options
+title=[[Test]]
+!! input
+{{#translation:}}
+!!result
+
+!! end
+
+!! test
+#translation as magic word for invalid language code
+!! options
+title=[[Test/ugaaa]]
+!! input
+{{#translation:}}
+!!result
+
+!! end \ No newline at end of file
diff --git a/MLEB/Translate/tests/phpunit/BlackListTest.php b/MLEB/Translate/tests/phpunit/BlackListTest.php
new file mode 100644
index 00000000..19806b3e
--- /dev/null
+++ b/MLEB/Translate/tests/phpunit/BlackListTest.php
@@ -0,0 +1,92 @@
+<?php
+/**
+ * Unit tests.
+ *
+ * @file
+ * @author Santhosh Thottingal
+ * @copyright Copyright © 2012-2013, Santhosh Thottingal
+ * @license GPL-2.0+
+ */
+
+/**
+ * Unit tests for blacklisting/whitelisting languages for a message group
+ */
+class BlackListTest extends MediaWikiTestCase {
+
+ /**
+ * @var MessageGroup
+ */
+ protected $group;
+ protected $codes;
+ protected $groupConfiguration = array(
+ 'BASIC' => array(
+ 'class' => 'FileBasedMessageGroup',
+ 'id' => 'test-id',
+ 'label' => 'Test Label',
+ 'namespace' => 'NS_MEDIAWIKI',
+ 'description' => 'Test description',
+ ),
+ 'FILES' => array(
+ 'class' => 'TestFFS',
+ ),
+ );
+
+ protected function setUp() {
+ parent::setUp();
+ $this->group = MessageGroupBase::factory( $this->groupConfiguration );
+ $this->codes = array_flip( array_keys( TranslateUtils::getLanguageNames( 'en' ) ) );
+ }
+
+ protected function tearDown() {
+ unset( $this->group );
+ parent::tearDown();
+ }
+
+ public function testNoLanguageConf() {
+ $translatableLanguages = $this->group->getTranslatableLanguages();
+ $this->assertNull( $translatableLanguages );
+ }
+
+ public function testAllBlackList() {
+ $conf = $this->groupConfiguration;
+ $conf['LANGUAGES'] = array(
+ 'blacklist' => '*',
+ );
+ $group = MessageGroupBase::factory( $conf );
+ $translatableLanguages = $group->getTranslatableLanguages();
+ $this->assertEquals( count( $translatableLanguages ), 0 );
+ }
+
+ public function testAllWhiteList() {
+ $conf = $this->groupConfiguration;
+ $conf['LANGUAGES'] = array(
+ 'whitelist' => '*',
+ );
+ $group = MessageGroupBase::factory( $conf );
+ $translatableLanguages = $group->getTranslatableLanguages();
+ $this->assertNull( $translatableLanguages );
+ }
+
+ public function testWhiteListOverrideBlackList() {
+ $conf = $this->groupConfiguration;
+ $conf['LANGUAGES'] = array(
+ 'whitelist' => array( 'en', 'hi', 'ta' ),
+ 'blacklist' => array( 'ta' ),
+ );
+ $group = MessageGroupBase::factory( $conf );
+ $translatableLanguages = $group->getTranslatableLanguages();
+ $this->assertTrue( isset( $translatableLanguages['ta'] ) );
+ $this->assertTrue( isset( $translatableLanguages['hi'] ) );
+ }
+
+ public function testSomeBlackList() {
+ $conf = $this->groupConfiguration;
+ $conf['LANGUAGES'] = array(
+ 'blacklist' => array( 'or', 'hi' ),
+ );
+ $group = MessageGroupBase::factory( $conf );
+ $translatableLanguages = $group->getTranslatableLanguages();
+ $this->assertTrue( !isset( $translatableLanguages['hi'] ) );
+ $this->assertTrue( isset( $translatableLanguages['he'] ) );
+ }
+}
diff --git a/MLEB/Translate/tests/phpunit/HookDocTest.php b/MLEB/Translate/tests/phpunit/HookDocTest.php
new file mode 100644
index 00000000..f6bc77cd
--- /dev/null
+++ b/MLEB/Translate/tests/phpunit/HookDocTest.php
@@ -0,0 +1,147 @@
+<?php
+/**
+ * Checks hook documentation is up to date.
+ *
+ * @file
+ * @author Niklas Laxström
+ * @copyright Copyright © 2012-2013, Niklas Laxström
+ * @license GPL-2.0+
+ */
+
+class HookDocTest extends MediaWikiTestCase {
+ protected $documented = array();
+ protected $used = array();
+ protected $paths = array(
+ 'php' => array(
+ '',
+ 'api',
+ 'ffs',
+ 'messagegroups',
+ 'specials',
+ 'tag',
+ 'translationaids',
+ 'ttmserver',
+ 'utils',
+ 'webservices',
+ ),
+ 'js' => array(
+ 'resources/js',
+ ),
+ );
+
+ protected function setUp() {
+ parent::setUp();
+ $contents = file_get_contents( __DIR__ . '/../../hooks.txt' );
+ $blocks = preg_split( '/\n\n/', $contents );
+ $type = false;
+
+ foreach ( $blocks as $block ) {
+ if ( $block === '=== PHP events ===' ) {
+ $type = 'php';
+ continue;
+ } elseif ( $block === '=== JavaScript events ===' ) {
+ $type = 'js';
+ continue;
+ } elseif ( !$type ) {
+ continue;
+ }
+
+ if ( $type ) {
+ list( $name, $params ) = self::parseDocBlock( $block );
+ $this->documented[$type][$name] = $params;
+ }
+ }
+
+ $prefix = __DIR__ . '/../..';
+ foreach ( $this->paths['php'] as $path ) {
+ $path = "$prefix/$path/";
+ $hooks = self::getHooksFromPath( $path, 'self::getPHPHooksFromFile' );
+ foreach ( $hooks as $name => $params ) {
+ $this->used['php'][$name] = $params;
+ }
+ }
+
+ foreach ( $this->paths['js'] as $path ) {
+ $path = "$prefix/$path/";
+ $hooks = self::getHooksFromPath( $path, 'self::getJSHooksFromFile' );
+ foreach ( $hooks as $name => $params ) {
+ $this->used['js'][$name] = $params;
+ }
+ }
+ }
+
+ protected static function getJSHooksFromFile( $file ) {
+ $content = file_get_contents( $file );
+ $m = array();
+ preg_match_all( '/(?:mw\.translateHooks\.run)\(\s*([\'"])(.*?)\1/', $content, $m );
+ $hooks = array();
+ foreach ( $m[2] as $hook ) {
+ $hooks[$hook] = array();
+ }
+
+ return $hooks;
+ }
+
+ protected static function getPHPHooksFromFile( $file ) {
+ $content = file_get_contents( $file );
+ $m = array();
+ preg_match_all( '/(?:wfRunHooks|Hooks\:\:run)\(\s*([\'"])(.*?)\1/', $content, $m );
+ $hooks = array();
+ foreach ( $m[2] as $hook ) {
+ $hooks[$hook] = array();
+ }
+
+ return $hooks;
+ }
+
+ protected static function getHooksFromPath( $path, $callback ) {
+ $hooks = array();
+ $dh = opendir( $path );
+ if ( $dh ) {
+ while ( ( $file = readdir( $dh ) ) !== false ) {
+ if ( filetype( $path . $file ) == 'file' ) {
+ $hooks = array_merge( $hooks, call_user_func( $callback, $path . $file ) );
+ }
+ }
+ closedir( $dh );
+ }
+
+ return $hooks;
+ }
+
+ protected static function parseDocBlock( $block ) {
+ preg_match( '/^;([^ ]+):/', $block, $match );
+ $name = $match[1];
+ preg_match_all( '/^ ([^ ]+)\s+([ ^])/', $block, $matches, PREG_SET_ORDER );
+ $params = array();
+ foreach ( $matches as $match ) {
+ $params[$match[2]] = $match[1];
+ }
+
+ return array( $name, $params );
+ }
+
+ public function testHookIsDocumentedPHP() {
+ foreach ( $this->used['php'] as $hook => $params ) {
+ $this->assertArrayHasKey( $hook, $this->documented['php'], "PHP hook $hook is documented" );
+ }
+ }
+
+ public function testHookExistsPHP() {
+ foreach ( $this->documented['php'] as $hook => $params ) {
+ $this->assertArrayHasKey( $hook, $this->used['php'], "Documented php hook $hook exists" );
+ }
+ }
+
+ public function testHookIsDocumentedJS() {
+ foreach ( $this->used['js'] as $hook => $params ) {
+ $this->assertArrayHasKey( $hook, $this->documented['js'], "Js hook $hook is documented" );
+ }
+ }
+
+ public function testHookExistsJS() {
+ foreach ( $this->documented['js'] as $hook => $params ) {
+ $this->assertArrayHasKey( $hook, $this->used['js'], "Documented js hook $hook exists" );
+ }
+ }
+}
diff --git a/MLEB/Translate/tests/phpunit/Makefile b/MLEB/Translate/tests/phpunit/Makefile
new file mode 100644
index 00000000..2435061e
--- /dev/null
+++ b/MLEB/Translate/tests/phpunit/Makefile
@@ -0,0 +1,12 @@
+ifndef MW_INSTALL_PATH
+ MW_INSTALL_PATH=../../../..
+endif
+
+DIRS = api ffs insertables
+
+default:
+ php ${MW_INSTALL_PATH}/tests/phpunit/phpunit.php .
+
+.PHONY: *Test.php $(DIRS)
+*Test.php $(DIRS):
+ php ${MW_INSTALL_PATH}/tests/phpunit/phpunit.php $@
diff --git a/MLEB/Translate/tests/phpunit/MediaWikiExtensionTest.php b/MLEB/Translate/tests/phpunit/MediaWikiExtensionTest.php
new file mode 100644
index 00000000..b94167b4
--- /dev/null
+++ b/MLEB/Translate/tests/phpunit/MediaWikiExtensionTest.php
@@ -0,0 +1,40 @@
+<?php
+/**
+ * Tests for MediaWikiExtension
+ * @author Niklas Laxström
+ * @file
+ * @copyright Copyright © 2012-2013, Niklas Laxström
+ * @license GPL-2.0+
+ */
+
+/**
+ * Tests that the special definition file is parsed properly.
+ */
+class MediaWikiExtensionTest extends MediaWikiTestCase {
+ public function testParsing() {
+ $defs = __DIR__ . '/data/mediawiki-extensions.txt';
+ $path = '%GROUPROOT%/mediawiki-extensions/extensions';
+ $foo = new PremadeMediawikiExtensionGroups( $defs, $path );
+ $list = $deps = $autoload = array();
+ $foo->register( $list, $deps, $autoload );
+
+ $this->assertEquals( 1, count( $deps ), 'A dependency to definition file was added' );
+ $this->assertEquals( 4, count( $list ), 'Four groups were created' );
+
+ $this->assertArrayHasKey( 'ext-exampleextension', $list );
+ $expected = TranslateYaml::load( __DIR__ . '/data/MediaWikiExtensionTest-conf1.yaml' );
+ $this->assertEquals( $expected, $list['ext-exampleextension']->getConfiguration() );
+
+ $this->assertArrayHasKey( 'ext-wikimediamessages', $list );
+ $expected = TranslateYaml::load( __DIR__ . '/data/MediaWikiExtensionTest-conf2.yaml' );
+ $this->assertEquals( $expected, $list['ext-wikimediamessages']->getConfiguration() );
+
+ $this->assertArrayHasKey( 'ext-examplejsonextension', $list );
+ $expected = TranslateYaml::load( __DIR__ . '/data/MediaWikiExtensionTest-conf3.yaml' );
+ $this->assertEquals( $expected, $list['ext-examplejsonextension']->getConfiguration() );
+
+ $this->assertArrayHasKey( 'ext-exampleextension2', $list );
+ $expected = TranslateYaml::load( __DIR__ . '/data/MediaWikiExtensionTest-conf4.yaml' );
+ $this->assertEquals( $expected, $list['ext-exampleextension2']->getConfiguration() );
+ }
+}
diff --git a/MLEB/Translate/tests/phpunit/MediaWikiMessageCheckerTest.php b/MLEB/Translate/tests/phpunit/MediaWikiMessageCheckerTest.php
new file mode 100644
index 00000000..539e9a4c
--- /dev/null
+++ b/MLEB/Translate/tests/phpunit/MediaWikiMessageCheckerTest.php
@@ -0,0 +1,121 @@
+<?php
+/**
+ * Unit tests.
+ *
+ * @file
+ * @author Niklas Laxström
+ * @copyright Copyright © 2012-2013, Niklas Laxström
+ * @license GPL-2.0+
+ */
+
+/**
+ * Unit tests for MediaWikiMessageCheckerTest class.
+ */
+class MediaWikiMessageCheckerTest extends MediaWikiTestCase {
+
+ /**
+ * @dataProvider getPluralFormCountProvider
+ */
+ public function testGetPluralFormCount( $expected, $code, $comment ) {
+ $provided = MediaWikiMessageChecker::GetPluralFormCount( $code );
+ $this->assertEquals( $expected, $provided, $comment );
+ }
+
+ public function getPluralFormCountProvider() {
+ return array(
+ array( 2, 'en', 'English has two plural forms' ),
+ array( 3, 'ro', 'Romanian has three plural forms' ),
+ array( 5, 'br', 'Breton has five plural forms' ),
+ );
+ }
+
+ /**
+ * @dataProvider getPluralFormsProvider
+ */
+ public function testGetPluralForms( $expected, $string, $comment ) {
+ $provided = MediaWikiMessageChecker::getPluralForms( $string );
+ $this->assertSame( $expected, $provided, $comment );
+ }
+
+ public function getPluralFormsProvider() {
+ return array(
+ array(
+ array( array( '1', '2' ) ),
+ 'a{{PLURAL:#|1|2}}b',
+ 'one plural magic word is parsed correctly'
+ ),
+
+ array(
+ array( array( '1', '2' ), array( '3', '4' ) ),
+ '{{PLURAL:#|1|2}}{{PLURAL:#|3|4}}',
+ 'two plural magic words are parsed correctly'
+ ),
+
+ array(
+ array( array( '1', '2{{car}}3' ) ),
+ 'a{{PLURAL:#|1|2{{car}}3}}',
+ 'one plural magic word with curlies inside is parsed correctly'
+ ),
+
+ array(
+ array( array( '0=0', '1=one', '1', '2' ) ),
+ 'a{{PLURAL:#|0=0|1=one|1|2}}',
+ 'one plural magic word with explicit forms is parsed correctly'
+ ),
+ array(
+ array(),
+ 'a{{PLURAL:#|0=0|1=one|1|2}',
+ 'unclosed plural tag is ignored'
+ ),
+ array(
+ array( array( '1=foo', '{{GENDER:#|he}}' ) ),
+ 'a{{PLURAL:#|1=foo|{{GENDER:#|he}}}}',
+ 'pipes in subtemplates are ignored'
+ ),
+ array(
+ array( array( '[[Special:A|письмо]]', '[[Special:A|писем]]', '[[Special:A|письма]]' ) ),
+ '{{PLURAL:#|[[Special:A|письмо]]|[[Special:A|писем]]|[[Special:A|письма]]}}',
+ 'pipes in links are ignored'
+ ),
+ array(
+ array(
+ array( 'a', 'b' ),
+ array( 'c', 'd' ),
+ array( '{{PLURAL:#|a|b}}', '{{PLURAL:#|c|d}}' ),
+ ),
+ '{{PLURAL:#|{{PLURAL:#|a|b}}|{{PLURAL:#|c|d}}}}',
+ 'nested plurals are handled correctly'
+ )
+ );
+ }
+
+ /**
+ * @dataProvider removeExplicitPluralFormsProvider
+ */
+ public function testRemoveExplicitPluralForms( $expected, $forms, $comment ) {
+ $provided = MediaWikiMessageChecker::removeExplicitPluralForms( $forms );
+ $this->assertEquals( $expected, $provided, $comment );
+ }
+
+ public function removeExplicitPluralFormsProvider() {
+ return array(
+ array(
+ array( '1', '2' ),
+ array( '1', '2' ),
+ 'default forms are not removed',
+ ),
+
+ array(
+ array( '1', '2' ),
+ array( '0=0', '1', '0=0', '2', '1=one' ),
+ 'explicit forms are removed regardless of position',
+ ),
+
+ array(
+ array( '1', '2' ),
+ array( '1', '2', '500=lots' ),
+ 'works for any number',
+ ),
+ );
+ }
+}
diff --git a/MLEB/Translate/tests/phpunit/MessageCollectionTest.php b/MLEB/Translate/tests/phpunit/MessageCollectionTest.php
new file mode 100644
index 00000000..9362f67b
--- /dev/null
+++ b/MLEB/Translate/tests/phpunit/MessageCollectionTest.php
@@ -0,0 +1,88 @@
+<?php
+/**
+ * Tests for MessageCollection.
+ * @author Niklas Laxström
+ * @file
+ * @copyright Copyright © 2013, Niklas Laxström
+ * @license GPL-2.0+
+ */
+
+/**
+ * Tests for MessageCollection.
+ * @group Database
+ * @group medium
+ */
+class MessageCollectionTest extends MediaWikiTestCase {
+ protected function setUp() {
+ parent::setUp();
+
+ global $wgHooks;
+ $this->setMwGlobals( array(
+ 'wgHooks' => $wgHooks,
+ 'wgTranslateCC' => array(),
+ 'wgTranslateMessageIndex' => array( 'DatabaseMessageIndex' ),
+ 'wgTranslateWorkflowStates' => false,
+ 'wgTranslateGroupFiles' => array(),
+ 'wgTranslateTranslationServices' => array(),
+ ) );
+ $wgHooks['TranslatePostInitGroups'] = array( array( $this, 'getTestGroups' ) );
+ MessageGroups::clearCache();
+ MessageIndexRebuildJob::newJob()->run();
+ }
+
+ public function getTestGroups( &$list ) {
+ $messages = array(
+ 'translated' => 'bunny',
+ 'untranslated' => 'fanny',
+ );
+ $list['test-group'] = new MockWikiMessageGroup( 'test-group', $messages );
+
+ return false;
+ }
+
+ public function testMessage() {
+ $user = new MockSuperUser();
+ $user->setId( 123 );
+ $title = Title::newFromText( 'MediaWiki:translated/fi' );
+ $page = WikiPage::factory( $title );
+ $content = ContentHandler::makeContent( 'pupuliini', $title );
+
+ $status = $page->doEditContent( $content, __METHOD__, 0, false, $user );
+
+ $value = $status->getValue();
+ $rev = $value['revision'];
+ $revision = $rev->getId();
+
+ $group = MessageGroups::getGroup( 'test-group' );
+ $collection = $group->initCollection( 'fi' );
+ $collection->loadTranslations();
+
+ /** @var TMessage $translated */
+ $translated = $collection['translated'];
+ $this->assertInstanceof( 'TMessage', $translated );
+ $this->assertEquals( 'translated', $translated->key() );
+ $this->assertEquals( 'bunny', $translated->definition() );
+ $this->assertEquals( 'pupuliini', $translated->translation() );
+ $this->assertEquals( 'SuperUser', $translated->getProperty( 'last-translator-text' ) );
+ $this->assertEquals( 123, $translated->getProperty( 'last-translator-id' ) );
+ $this->assertEquals(
+ 'translated',
+ $translated->getProperty( 'status' ),
+ 'message status is translated'
+ );
+ $this->assertEquals( $revision, $translated->getProperty( 'revision' ) );
+
+ /** @var TMessage $untranslated */
+ $untranslated = $collection['untranslated'];
+ $this->assertInstanceof( 'TMessage', $untranslated );
+ $this->assertEquals( null, $untranslated->translation(), 'no translation is null' );
+ $this->assertEquals( false, $untranslated->getProperty( 'last-translator-text' ) );
+ $this->assertEquals( false, $untranslated->getProperty( 'last-translator-id' ) );
+ $this->assertEquals(
+ 'untranslated',
+ $untranslated->getProperty( 'status' ),
+ 'message status is untranslated'
+ );
+ $this->assertEquals( false, $untranslated->getProperty( 'revision' ) );
+ }
+}
diff --git a/MLEB/Translate/tests/phpunit/MessageGroupBaseTest.php b/MLEB/Translate/tests/phpunit/MessageGroupBaseTest.php
new file mode 100644
index 00000000..e7688bad
--- /dev/null
+++ b/MLEB/Translate/tests/phpunit/MessageGroupBaseTest.php
@@ -0,0 +1,95 @@
+<?php
+
+class MessageGroupBaseTest extends MediaWikiTestCase {
+
+ /**
+ * @var MessageGroup
+ */
+ protected $group;
+
+ protected $groupConfiguration = array(
+ 'BASIC' => array(
+ 'class' => 'FileBasedMessageGroup',
+ 'id' => 'test-id',
+ 'label' => 'Test Label',
+ 'namespace' => 'NS_MEDIAWIKI',
+ 'description' => 'Test description',
+ ),
+ );
+
+ protected function setUp() {
+ parent::setUp();
+ $this->group = MessageGroupBase::factory( $this->groupConfiguration );
+ }
+
+ protected function tearDown() {
+ unset( $this->group );
+ parent::tearDown();
+ }
+
+ public function testGetConfiguration() {
+ $this->assertEquals(
+ $this->groupConfiguration,
+ $this->group->getConfiguration(),
+ "configuration should not change."
+ );
+ }
+
+ public function testGetId() {
+ $this->assertEquals(
+ $this->groupConfiguration['BASIC']['id'],
+ $this->group->getId(),
+ "id comes from config."
+ );
+ }
+
+ public function testGetSourceLanguage() {
+ $this->assertEquals(
+ 'en',
+ $this->group->getSourceLanguage(),
+ "source language defaults to en."
+ );
+ }
+
+ public function testGetNamespaceConstant() {
+ $this->assertEquals(
+ NS_MEDIAWIKI,
+ $this->group->getNamespace(),
+ "should parse string namespace contant."
+ );
+ }
+
+ public function testGetNamespaceNumber() {
+ $conf = $this->groupConfiguration;
+ $conf['BASIC']['namespace'] = NS_IMAGE;
+ $this->group = MessageGroupBase::factory( $conf );
+
+ $this->assertEquals(
+ NS_IMAGE,
+ $this->group->getNamespace(),
+ "should parse integer namespace number."
+ );
+ }
+
+ public function testGetNamespaceString() {
+ $conf = $this->groupConfiguration;
+ $conf['BASIC']['namespace'] = 'image';
+ $this->group = MessageGroupBase::factory( $conf );
+
+ $this->assertEquals(
+ NS_IMAGE,
+ $this->group->getNamespace(),
+ "should parse string namespace name."
+ );
+ }
+
+ /**
+ * @expectedException MWException
+ * @expectedExceptionMessage No valid namespace defined
+ */
+ public function testGetNamespaceInvalid() {
+ $conf = $this->groupConfiguration;
+ $conf['BASIC']['namespace'] = 'ergweofijwef';
+ MessageGroupBase::factory( $conf );
+ }
+}
diff --git a/MLEB/Translate/tests/phpunit/MessageGroupStatesUpdaterJobTest.php b/MLEB/Translate/tests/phpunit/MessageGroupStatesUpdaterJobTest.php
new file mode 100644
index 00000000..8815b018
--- /dev/null
+++ b/MLEB/Translate/tests/phpunit/MessageGroupStatesUpdaterJobTest.php
@@ -0,0 +1,218 @@
+<?php
+
+/**
+ * @group Database
+ * @group medium
+ */
+class MessageGroupStatesUpdaterJobTest extends MediaWikiTestCase {
+ protected function setUp() {
+ parent::setUp();
+
+ global $wgHooks;
+ $this->setMwGlobals( array(
+ 'wgHooks' => $wgHooks,
+ 'wgTranslateCC' => array(),
+ 'wgTranslateMessageIndex' => array( 'DatabaseMessageIndex' ),
+ 'wgTranslateWorkflowStates' => false,
+ 'wgTranslateGroupFiles' => array(),
+ 'wgTranslateTranslationServices' => array(),
+ 'wgTranslateMessageNamespaces' => array( NS_MEDIAWIKI ),
+ ) );
+ $wgHooks['TranslatePostInitGroups'] = array( array( $this, 'getTestGroups' ) );
+ MessageGroups::clearCache();
+ MessageIndexRebuildJob::newJob()->run();
+ }
+
+ public function getTestGroups( &$list ) {
+ $messages = array( 'key1' => 'msg1', 'key2' => 'msg2' );
+ $list['group-trans'] = new MessageGroupWithTransitions( 'group-trans', $messages );
+ $list['group-notrans'] = new MessageGroupWithoutTransitions( 'group-notrans', array() );
+
+ return false;
+ }
+
+ public function testGetGroupsWithTransitions() {
+ $handle = new MockMessageHandle();
+ $groups = MessageGroupStatesUpdaterJob::getGroupsWithTransitions( $handle );
+ foreach ( $groups as $id => $transitions ) {
+ $this->assertEquals( 'group-trans', $id );
+ }
+ }
+
+ /**
+ * @dataProvider provideStatValues
+ */
+ public function testGetStatValue( $type, $expected ) {
+ $stats = array(
+ MessageGroupStats::TOTAL => 666,
+ MessageGroupStats::FUZZY => 111,
+ MessageGroupStats::TRANSLATED => 222,
+ MessageGroupStats::PROOFREAD => 111,
+ );
+ $actual = MessageGroupStatesUpdaterJob::getStatValue( $stats, $type );
+ $this->assertEquals( $expected, $actual );
+ }
+
+ public static function provideStatValues() {
+ return array(
+ array( 'UNTRANSLATED', 333 ),
+ array( 'OUTDATED', 111 ),
+ array( 'TRANSLATED', 222 ),
+ array( 'PROOFREAD', 111 ),
+ );
+ }
+
+ /**
+ * @dataProvider provideMatchCondition
+ */
+ public function testMatchCondition( $expected, $value, $condition, $max ) {
+ $actual = MessageGroupStatesUpdaterJob::matchCondition( $value, $condition, $max );
+ $this->assertEquals( $expected, $actual );
+ }
+
+ public static function provideMatchCondition() {
+ return array(
+ array( true, 0, 'ZERO', 666 ),
+ array( false, 1, 'ZERO', 666 ),
+ array( true, 1, 'NONZERO', 666 ),
+ array( false, 0, 'NONZERO', 666 ),
+ array( true, 666, 'MAX', 666 ),
+ array( false, 0, 'MAX', 666 ),
+ array( false, 12, 'MAX', 666 ),
+ );
+ }
+
+ public function testGetNewState() {
+ $group = MessageGroups::getGroup( 'group-trans' );
+ $transitions = $group->getMessageGroupStates()->getConditions();
+
+ $stats = array( 5, 0, 0, 0 );
+ $newstate = MessageGroupStatesUpdaterJob::getNewState( $stats, $transitions );
+ $this->assertEquals( 'unset', $newstate, 'all zero, should be unset' );
+
+ $stats = array( 5, 1, 0, 0 );
+ $newstate = MessageGroupStatesUpdaterJob::getNewState( $stats, $transitions );
+ $this->assertEquals( 'inprogress', $newstate, 'one translated message' );
+
+ $stats = array( 5, 0, 1, 0 );
+ $newstate = MessageGroupStatesUpdaterJob::getNewState( $stats, $transitions );
+ $this->assertEquals( 'inprogress', $newstate, 'one outdated message' );
+
+ $stats = array( 5, 1, 1, 0 );
+ $newstate = MessageGroupStatesUpdaterJob::getNewState( $stats, $transitions );
+ $this->assertEquals( 'inprogress', $newstate, 'one translated and one outdated message' );
+
+ $stats = array( 5, 5, 0, 0 );
+ $newstate = MessageGroupStatesUpdaterJob::getNewState( $stats, $transitions );
+ $this->assertEquals( 'proofreading', $newstate, 'all translated' );
+ }
+
+ public function testHooks() {
+ $user = new MockSuperUser();
+ $group = MessageGroups::getGroup( 'group-trans' );
+
+ // In the beginning...
+ $currentState = ApiGroupReview::getState( $group, 'fi' );
+ $this->assertEquals( false, $currentState, 'groups start from unset state' );
+
+ // First translation
+ $title = Title::newFromText( 'MediaWiki:key1/fi' );
+ $page = WikiPage::factory( $title );
+ $content = ContentHandler::makeContent( 'trans1', $title );
+
+ $status = $page->doEditContent( $content, __METHOD__, 0, false, $user );
+
+ self::runJobs();
+ $currentState = ApiGroupReview::getState( $group, 'fi' );
+ $this->assertEquals( 'inprogress', $currentState, 'in progress after first translation' );
+
+ // First review
+ ApiTranslationReview::doReview( $user, self::getRevision( $status ), __METHOD__ );
+ self::runJobs();
+ $currentState = ApiGroupReview::getState( $group, 'fi' );
+ $this->assertEquals( 'inprogress', $currentState, 'in progress while untranslated messages' );
+
+ // Second translation
+ $title = Title::newFromText( 'MediaWiki:key2/fi' );
+ $page = WikiPage::factory( $title );
+ $content = ContentHandler::makeContent( 'trans2', $title );
+
+ $status = $page->doEditContent( $content, __METHOD__, 0, false, $user );
+
+ self::runJobs();
+ $currentState = ApiGroupReview::getState( $group, 'fi' );
+ $this->assertEquals( 'proofreading', $currentState, 'proofreading after second translation' );
+
+ // Second review
+ ApiTranslationReview::doReview( $user, self::getRevision( $status ), __METHOD__ );
+ self::runJobs();
+ $currentState = ApiGroupReview::getState( $group, 'fi' );
+ $this->assertEquals( 'ready', $currentState, 'ready when all proofread' );
+
+ // Change to translation
+ $title = Title::newFromText( 'MediaWiki:key1/fi' );
+ $page = WikiPage::factory( $title );
+ $content = ContentHandler::makeContent( 'trans1 updated', $title );
+
+ $page->doEditContent( $content, __METHOD__, 0, false, $user );
+
+ self::runJobs();
+ $currentState = ApiGroupReview::getState( $group, 'fi' );
+ $this->assertEquals(
+ 'proofreading',
+ $currentState,
+ 'back to proofreading after translation changed'
+ );
+ }
+
+ protected static function getRevision( Status $s ) {
+ $value = $s->getValue();
+
+ return $value['revision'];
+ }
+
+ protected static function runJobs() {
+ do {
+ $job = JobQueueGroup::singleton()->pop();
+ if ( !$job ) {
+ break;
+ }
+ $job->run();
+ } while ( true );
+ }
+}
+
+class MockMessageHandle extends MessageHandle {
+ public function __construct() {
+ }
+
+ public function getGroupIds() {
+ return array( 'group-trans', 'group-notrans' );
+ }
+}
+
+class MessageGroupWithoutTransitions extends MockWikiMessageGroup {
+ public function getMessageGroupStates() {
+ return new MessageGroupStates();
+ }
+}
+
+class MessageGroupWithTransitions extends MockWikiMessageGroup {
+ public function getMessageGroupStates() {
+ return new MessageGroupStates( array(
+ 'state conditions' => array(
+ array( 'ready', array( 'PROOFREAD' => 'MAX' ) ),
+ array( 'proofreading', array( 'TRANSLATED' => 'MAX' ) ),
+ array(
+ 'unset',
+ array(
+ 'UNTRANSLATED' => 'MAX',
+ 'OUTDATED' => 'ZERO',
+ 'TRANSLATED' => 'ZERO'
+ )
+ ),
+ array( 'inprogress', array( 'UNTRANSLATED' => 'NONZERO' ) ),
+ )
+ ) );
+ }
+}
diff --git a/MLEB/Translate/tests/phpunit/MessageGroupsTest.php b/MLEB/Translate/tests/phpunit/MessageGroupsTest.php
new file mode 100644
index 00000000..a2543fa6
--- /dev/null
+++ b/MLEB/Translate/tests/phpunit/MessageGroupsTest.php
@@ -0,0 +1,88 @@
+<?php
+/**
+ * Unit tests.
+ *
+ * @author Niklas Laxström
+ * @copyright Copyright © 2012 Niklas Laxström
+ * @file
+ * @license GPL-2.0+
+ */
+
+/**
+ * @group Database
+ */
+class MessageGroupsTest extends MediaWikiTestCase {
+ protected function setUp() {
+ parent::setUp();
+
+ $conf = array(
+ __DIR__ . '/data/ParentGroups.yaml',
+ );
+
+ global $wgHooks;
+ $this->setMwGlobals( array(
+ 'wgHooks' => $wgHooks,
+ 'wgTranslateCC' => array(),
+ 'wgTranslateMessageIndex' => array( 'DatabaseMessageIndex' ),
+ 'wgTranslateWorkflowStates' => false,
+ 'wgEnablePageTranslation' => false,
+ 'wgTranslateGroupFiles' => $conf,
+ 'wgTranslateTranslationServices' => array(),
+ ) );
+ $wgHooks['TranslatePostInitGroups'] = array();
+ MessageGroups::clearCache();
+ MessageIndexRebuildJob::newJob()->run();
+ }
+
+ /**
+ * @dataProvider provideGroups
+ */
+ public function testGetParentGroups( $expected, $target ) {
+ $group = MessageGroups::getGroup( $target );
+ $got = MessageGroups::getParentGroups( $group );
+ $this->assertEquals( $expected, $got );
+ }
+
+ public static function provideGroups() {
+ $cases = array();
+ $cases[] = array(
+ array( array( 'root1' ), array( 'root2' ) ),
+ 'twoparents'
+ );
+
+ $cases[] = array(
+ array( array( 'root3', 'sub1' ), array( 'root3', 'sub2' ) ),
+ 'oneparent-twopaths'
+ );
+
+ $cases[] = array(
+ array(
+ array( 'root4' ),
+ array( 'root4', 'nested1' ),
+ array( 'root4', 'nested1', 'nested2' ),
+ array( 'root4', 'nested2' ),
+ ),
+ 'multilevelnested'
+ );
+
+ return $cases;
+ }
+
+ public function testHaveSingleSourceLanguage() {
+ $this->setMwGlobals( array(
+ 'wgTranslateGroupFiles' => array( __DIR__ . '/data/MixedSourceLanguageGroups.yaml' ),
+ ) );
+ MessageGroups::clearCache();
+
+ $enGroup1 = MessageGroups::getGroup( 'EnglishGroup1' );
+ $enGroup2 = MessageGroups::getGroup( 'EnglishGroup2' );
+ $teGroup1 = MessageGroups::getGroup( 'TeluguGroup1' );
+
+ $this->assertEquals( 'en', MessageGroups::haveSingleSourceLanguage(
+ array( $enGroup1, $enGroup2 ) )
+ );
+ $this->assertEquals( '', MessageGroups::haveSingleSourceLanguage(
+ array( $enGroup1, $enGroup2, $teGroup1 ) )
+ );
+ }
+}
diff --git a/MLEB/Translate/tests/phpunit/MessageIndexRebuildJobTest.php b/MLEB/Translate/tests/phpunit/MessageIndexRebuildJobTest.php
new file mode 100644
index 00000000..f1aa1fd1
--- /dev/null
+++ b/MLEB/Translate/tests/phpunit/MessageIndexRebuildJobTest.php
@@ -0,0 +1,53 @@
+<?php
+/**
+ * Unit tests.
+ *
+ * @file
+ * @author Niklas Laxström
+ * @license GPL-2.0+
+ */
+
+/**
+ * Unit tests for MessageIndexRebuildJob class.
+ * @group Database
+ * @group medium
+ */
+class MessageIndexRebuildJobTest extends MediaWikiTestCase {
+ protected $config = array();
+
+ public function setUp() {
+ parent::setUp();
+ $this->setMwGlobals( array(
+ 'wgTranslateCC' => array(),
+ 'wgTranslateMessageIndex' => array( 'DatabaseMessageIndex' ),
+ 'wgTranslateWorkflowStates' => false,
+ 'wgEnablePageTranslation' => false,
+ 'wgTranslateGroupFiles' => array(),
+ 'wgTranslateTranslationServices' => array(),
+ 'wgTranslateDelayedMessageIndexRebuild' => false
+ ) );
+ }
+
+ public function testInsertImmediate() {
+ global $wgTranslateDelayedMessageIndexRebuild;
+ $wgTranslateDelayedMessageIndexRebuild = false;
+ MessageIndexRebuildJob::newJob()->insert();
+ $this->assertFalse(
+ JobQueueGroup::singleton()->get( 'MessageIndexRebuildJob' )->pop(),
+ 'There is no job in the JobQueue'
+ );
+ }
+
+ public function testInsertDelayed() {
+ global $wgTranslateDelayedMessageIndexRebuild;
+ $wgTranslateDelayedMessageIndexRebuild = true;
+ MessageIndexRebuildJob::newJob()->insert();
+ $job = JobQueueGroup::singleton()->get( 'MessageIndexRebuildJob' )->pop();
+ $this->assertInstanceOf(
+ 'MessageIndexRebuildJob',
+ $job,
+ 'There is a job in the JobQueue'
+ );
+ $this->assertTrue( $job->run(), 'Job is executed succesfully' );
+ }
+}
diff --git a/MLEB/Translate/tests/phpunit/MessageIndexTest.php b/MLEB/Translate/tests/phpunit/MessageIndexTest.php
new file mode 100644
index 00000000..54df4f59
--- /dev/null
+++ b/MLEB/Translate/tests/phpunit/MessageIndexTest.php
@@ -0,0 +1,113 @@
+<?php
+/**
+ * Tests for different MessageIndex backends.
+ *
+ * @file
+ * @author Niklas Laxström
+ * @copyright Copyright © 2012-2013, Niklas Laxström
+ * @license GPL-2.0+
+ */
+
+/**
+ * @group Database
+ * @group large
+ */
+class MessageIndexTest extends MediaWikiTestCase {
+ protected function setUp() {
+ parent::setUp();
+ $this->setMwGlobals( array(
+ 'wgTranslateCacheDirectory' => $this->getNewTempDirectory(),
+ 'wgTranslateTranslationServices' => array(),
+ ) );
+ }
+
+ protected static function getTestData() {
+ static $data = null;
+ if ( $data === null ) {
+ $data = unserialize( file_get_contents( __DIR__ . '/messageindexdata.ser' ) );
+ }
+
+ return $data;
+ }
+
+ /**
+ * @dataProvider provideMessageIndexImplementation
+ */
+ public function testMessageIndexImplementation( $mi ) {
+ $data = self::getTestData();
+ /** @var TestableDatabaseMessageIndex|TestableCDBMessageIndex|TestableSerializedMessageIndex */
+ $mi->store( $data );
+
+ $tests = array_rand( $data, 10 );
+ foreach ( $tests as $key ) {
+ $this->assertSame(
+ $data[$key],
+ $mi->get( $key ),
+ "Values are preserved for random key $key"
+ );
+ }
+
+ $cached = $mi->retrieve();
+
+ $tests = array_rand( $data, 10 );
+ foreach ( $tests as $key ) {
+ $this->assertSame(
+ $data[$key],
+ $mi->get( $key ),
+ "Values are preserved after retrieve for random key $key"
+ );
+ }
+
+ $this->assertEquals(
+ count( $data ),
+ count( $cached ),
+ 'Cache has same number of elements'
+ );
+ $this->assertEquals( $data, $cached, 'Cache is preserved' );
+ }
+
+ public static function provideMessageIndexImplementation() {
+ return array(
+ array( new TestableDatabaseMessageIndex() ),
+ array( new TestableCDBMessageIndex() ),
+ array( new TestableSerializedMessageIndex() ),
+ // Not testing CachedMessageIndex because there is no easy way to mockup those.
+ );
+ }
+}
+
+class TestableDatabaseMessageIndex extends DatabaseMessageIndex {
+ // @codingStandardsIgnoreStart PHP CodeSniffer warns "Useless method overriding
+ // detected", but store() and get() are protected in parent.
+ public function store( array $a ) {
+ parent::store( $a );
+ }
+
+ public function get( $a ) {
+ return parent::get( $a );
+ } // @codingStandardsIgnoreEnd
+}
+
+class TestableCDBMessageIndex extends CDBMessageIndex {
+ // @codingStandardsIgnoreStart PHP CodeSniffer warns "Useless method overriding
+ // detected", but store() and get() are protected in parent.
+ public function store( array $a ) {
+ parent::store( $a );
+ }
+
+ public function get( $a ) {
+ return parent::get( $a );
+ } // @codingStandardsIgnoreEnd
+}
+
+class TestableSerializedMessageIndex extends SerializedMessageIndex {
+ // @codingStandardsIgnoreStart PHP CodeSniffer warns "Useless method overriding
+ // detected", but store() and get() are protected in parent.
+ public function store( array $a ) {
+ parent::store( $a );
+ }
+
+ public function get( $a ) {
+ return parent::get( $a );
+ } // @codingStandardsIgnoreEnd
+}
diff --git a/MLEB/Translate/tests/phpunit/MockFileBasedMessageGroup.php b/MLEB/Translate/tests/phpunit/MockFileBasedMessageGroup.php
new file mode 100644
index 00000000..6685505a
--- /dev/null
+++ b/MLEB/Translate/tests/phpunit/MockFileBasedMessageGroup.php
@@ -0,0 +1,23 @@
+<?php
+/**
+ * This file contains a managed message group implementation mock object.
+ *
+ * @file
+ * @author Niklas Laxström
+ * @copyright Copyright © 2012-2013, Niklas Laxström
+ * @license GPL-2.0+
+ */
+
+class MockFileBasedMessageGroup extends FileBasedMessageGroup {
+ public function load( $code ) {
+ return array( $this->getId() . '-messagekey' => 'üga' );
+ }
+
+ public function exists() {
+ return true;
+ }
+
+ public function getKeys() {
+ return array_keys( $this->load( 'en' ) );
+ }
+}
diff --git a/MLEB/Translate/tests/phpunit/MockMessageCollectionForExport.php b/MLEB/Translate/tests/phpunit/MockMessageCollectionForExport.php
new file mode 100644
index 00000000..d7f40459
--- /dev/null
+++ b/MLEB/Translate/tests/phpunit/MockMessageCollectionForExport.php
@@ -0,0 +1,41 @@
+<?php
+/**
+ * Mock class for unit tests
+ * @author Niklas Laxström
+ * @file
+ * @copyright Copyright © 2012-2013, Niklas Laxström
+ * @license GPL-2.0+
+ */
+
+/**
+ * This class can be used to test exporting of message groups.
+ */
+class MockMessageCollectionForExport extends MessageCollection {
+ public function __construct() {
+ $msg = new FatMessage( 'translatedmsg', 'definition' );
+ $msg->setTranslation( 'translation' );
+ $this->messages['translatedmsg'] = $msg;
+
+ $msg = new FatMessage( 'fuzzymsg', 'definition' );
+ $msg->addTag( 'fuzzy' );
+ $msg->setTranslation( '!!FUZZY!!translation' );
+ $this->messages['fuzzymsg'] = $msg;
+
+ $msg = new FatMessage( 'untranslatedmsg', 'definition' );
+ $this->messages['untranslatedmsg'] = $msg;
+
+ $this->tags = array(
+ 'fuzzy' => array( 'fuzzymsg' ),
+ );
+
+ $this->keys = array_flip( array_keys( $this->messages ) );
+ }
+
+ public function getAuthors() {
+ return array( 'Nike the bunny' );
+ }
+
+ public function getLanguage() {
+ return 'fi';
+ }
+}
diff --git a/MLEB/Translate/tests/phpunit/MockSuperUser.php b/MLEB/Translate/tests/phpunit/MockSuperUser.php
new file mode 100644
index 00000000..0ebe1356
--- /dev/null
+++ b/MLEB/Translate/tests/phpunit/MockSuperUser.php
@@ -0,0 +1,24 @@
+<?php
+
+/**
+ * Just call SuperUser when you need to be able to do everything.
+ */
+class MockSuperUser extends User {
+ protected $id = 666;
+
+ public function setId( $id ) {
+ $this->id = $id;
+ }
+
+ public function getId() {
+ return $this->id;
+ }
+
+ public function getName() {
+ return 'SuperUser';
+ }
+
+ public function isAllowed( $right = '' ) {
+ return true;
+ }
+}
diff --git a/MLEB/Translate/tests/phpunit/MockWikiMessageGroup.php b/MLEB/Translate/tests/phpunit/MockWikiMessageGroup.php
new file mode 100644
index 00000000..5801bbe3
--- /dev/null
+++ b/MLEB/Translate/tests/phpunit/MockWikiMessageGroup.php
@@ -0,0 +1,22 @@
+<?php
+/**
+ * This file contains an unmanaged message group implementation.
+ *
+ * @file
+ * @author Niklas Laxström
+ * @author Siebrand Mazeland
+ * @copyright Copyright © 2008-2013, Niklas Laxström, Siebrand Mazeland
+ * @license GPL-2.0+
+ */
+
+class MockWikiMessageGroup extends WikiMessageGroup {
+ public function __construct( $id, array $messages ) {
+ parent::__construct( $id, 'unused' );
+ $this->id = $id;
+ $this->messages = $messages;
+ }
+
+ public function getDefinitions() {
+ return $this->messages;
+ }
+}
diff --git a/MLEB/Translate/tests/phpunit/PageTranslationParserTest.php b/MLEB/Translate/tests/phpunit/PageTranslationParserTest.php
new file mode 100644
index 00000000..8abd4976
--- /dev/null
+++ b/MLEB/Translate/tests/phpunit/PageTranslationParserTest.php
@@ -0,0 +1,67 @@
+<?php
+/**
+ * Unit tests for page translation parser
+ *
+ * @author Niklas Laxström
+ * @copyright Copyright © 2010-2013, Niklas Laxström
+ * @license GPL-2.0+
+ * @file
+ */
+
+/**
+ * Custom testing framework for page translation parser.
+ * @ingroup PageTranslation
+ * @group Database
+ */
+class PageTranslationParserTest extends MediaWikiTestCase {
+ public static function provideTestFiles() {
+ $dir = __DIR__;
+ $testFiles = glob( "$dir/pagetranslation/*.ptfile" );
+ foreach ( $testFiles as $i => $file ) {
+ $testFiles[$i] = array( $file );
+ }
+
+ return $testFiles;
+ }
+
+ /**
+ * @dataProvider provideTestFiles
+ */
+ public function testParsing( $file ) {
+
+ $filename = basename( $file );
+ list( $pagename, ) = explode( '.', $filename, 2 );
+ $title = Title::newFromText( $pagename );
+ $translatablePage = TranslatablePage::newFromText( $title, file_get_contents( $file ) );
+
+ $pattern = $file;
+
+ if ( $filename === 'FailNotAtomic.ptfile' ) {
+ $this->markTestSkipped( 'Extended validation not yet implemented' );
+ }
+
+ $failureExpected = strpos( $pagename, 'Fail' ) === 0;
+
+ if ( $failureExpected ) {
+ $this->setExpectedException( 'TPException' );
+ }
+
+ $parse = $translatablePage->getParse();
+ $this->assertInstanceOf( 'TPParse', $parse );
+
+ if ( file_exists( "$pattern.ptsource" ) ) {
+ $source = $parse->getSourcePageText();
+ $this->assertEquals( $source, file_get_contents( "$pattern.ptsource" ) );
+ }
+
+ if ( file_exists( "$pattern.pttarget" ) ) {
+ $target = $parse->getTranslationPageText( MessageCollection::newEmpty( 'foo' ) );
+ $this->assertEquals( $target, file_get_contents( "$pattern.pttarget" ) );
+ }
+
+ // Custom tests written in php
+ if ( file_exists( "$pattern.pttest" ) ) {
+ require "$pattern.pttest";
+ }
+ }
+}
diff --git a/MLEB/Translate/tests/phpunit/PageTranslationTaggingTest.php b/MLEB/Translate/tests/phpunit/PageTranslationTaggingTest.php
new file mode 100644
index 00000000..e4b5b6db
--- /dev/null
+++ b/MLEB/Translate/tests/phpunit/PageTranslationTaggingTest.php
@@ -0,0 +1,126 @@
+<?php
+
+/**
+ * @group Database
+ * @group medium
+ */
+class PageTranslationTaggingText extends MediaWikiTestCase {
+ protected function setUp() {
+ parent::setUp();
+
+ global $wgHooks;
+ $this->setMwGlobals( array(
+ 'wgHooks' => $wgHooks,
+ 'wgTranslateCC' => array(),
+ 'wgTranslateMessageIndex' => array( 'DatabaseMessageIndex' ),
+ 'wgTranslateWorkflowStates' => false,
+ 'wgEnablePageTranslation' => true,
+ 'wgTranslateGroupFiles' => array(),
+ 'wgTranslateTranslationServices' => array(),
+ ) );
+ TranslateHooks::setupTranslate();
+ $wgHooks['TranslatePostInitGroups'] = array();
+ MessageGroups::clearCache();
+ MessageIndexRebuildJob::newJob()->run();
+ }
+
+ public function testNormalPage() {
+ $title = Title::newFromText( 'Fréttinga' );
+ $this->assertNotNull( $title, 'Title is valid' );
+ $page = WikiPage::factory( $title );
+ $this->assertNotNull( $page, 'WikiPage is valid' );
+ $translatablePage = TranslatablePage::newFromTitle( $title );
+ $content = ContentHandler::makeContent( 'kissa', $title );
+
+ $page->doEditContent( $content, 'Test case' );
+
+ $this->assertFalse( $translatablePage->getReadyTag(), 'No ready tag was added' );
+ $this->assertFalse( $translatablePage->getMarkedTag(), 'No marked tag was added' );
+ }
+
+ public function testTranslatablePage() {
+ $title = Title::newFromText( 'Fréttinga' );
+ $this->assertNotNull( $title, 'Title is valid' );
+ $page = WikiPage::factory( $title );
+ $this->assertNotNull( $page, 'WikiPage is valid' );
+ $translatablePage = TranslatablePage::newFromTitle( $title );
+
+ $content = ContentHandler::makeContent( '<translate>kissa</translate>', $title );
+ $status = $page->doEditContent( $content, 'Test case' );
+ $latest = $status->value['revision']->getId();
+
+ $this->assertSame( $latest, $translatablePage->getReadyTag(), 'Ready tag was added' );
+ $this->assertFalse( $translatablePage->getMarkedTag(), 'No marked tag was added' );
+ }
+
+ public function testTranslatablePageWithMarked() {
+ $title = Title::newFromText( 'Fréttinga' );
+ $this->assertNotNull( $title, 'Title is valid' );
+ $page = WikiPage::factory( $title );
+ $this->assertNotNull( $page, 'WikiPage is valid' );
+ $translatablePage = TranslatablePage::newFromTitle( $title );
+
+ $content = ContentHandler::makeContent( '<translate>koira</translate>', $title );
+ $status = $page->doEditContent( $content, 'Test case' );
+ $latest = $status->value['revision']->getId();
+
+ $translatablePage->addMarkedTag( $latest, array( 'foo' ) );
+ $this->assertSame( $latest, $translatablePage->getReadyTag(), 'Ready tag was added' );
+ $this->assertSame( $latest, $translatablePage->getMarkedTag(), 'Marked tag was added' );
+
+ global $wgUser;
+ $cascade = false;
+ $page->doUpdateRestrictions(
+ array( 'edit' => 'sysop' ),
+ array(),
+ $cascade,
+ 'Test case',
+ $wgUser
+ );
+
+ $newLatest = $latest + 1;
+ $this->assertSame(
+ $newLatest,
+ $translatablePage->getReadyTag(),
+ 'Ready tag was updated after protection'
+ );
+ $this->assertSame(
+ $latest,
+ $translatablePage->getMarkedTag(),
+ 'Marked tag was not updated after protection'
+ );
+ }
+
+ public function testTranslationPageRestrictions() {
+ $superUser = new MockSuperUser();
+ $title = Title::newFromText( 'Translatable page' );
+ $page = WikiPage::factory( $title );
+ $content = ContentHandler::makeContent( '<translate>Hello</translate>', $title );
+
+ $status = $page->doEditContent(
+ $content,
+ 'New page',
+ 0,
+ false,
+ $superUser
+ );
+
+ $revision = $status->value['revision']->getId();
+ $translatablePage = TranslatablePage::newFromRevision( $title, $revision );
+ $translatablePage->addMarkedTag( $revision );
+ MessageGroups::clearCache();
+
+ $translationPage = Title::newFromText( 'Translatable page/fi' );
+ TranslateRenderJob::newJob( $translationPage )->run();
+ $this->assertTrue( $translationPage->userCan( 'read', $superUser ),
+ 'Users can read existing translation pages' );
+ $this->assertFalse( $translationPage->userCan( 'edit', $superUser ),
+ 'Users can not edit existing translation pages' );
+
+ $translationPage = Title::newFromText( 'Translatable page/ab' );
+ $this->assertTrue( $translationPage->userCan( 'read', $superUser ),
+ 'Users can read non-existing translation pages' );
+ $this->assertFalse( $translationPage->userCan( 'edit', $superUser ),
+ 'Users can not edit non-existing translation pages' );
+ }
+}
diff --git a/MLEB/Translate/tests/phpunit/ResourcesOrderTest.php b/MLEB/Translate/tests/phpunit/ResourcesOrderTest.php
new file mode 100644
index 00000000..cd7f3c26
--- /dev/null
+++ b/MLEB/Translate/tests/phpunit/ResourcesOrderTest.php
@@ -0,0 +1,29 @@
+<?php
+/**
+ * Code hygiene test.
+ *
+ * @file
+ * @author Niklas Laxström
+ * @copyright Copyright © 2012-2013, Niklas Laxström
+ * @license GPL-2.0+
+ */
+
+class ResourcesOrderTest extends MediaWikiTestCase {
+ public function setUp() {
+ parent::setUp();
+ $this->setMwGlobals( 'wgResourceModules', array() );
+ }
+
+ public function testAlphabeticalOrder() {
+ require __DIR__ . '/../../Resources.php';
+
+ $sorted = $wgResourceModules;
+ ksort( $sorted );
+
+ $this->assertEquals(
+ array_keys( $sorted ),
+ array_keys( $wgResourceModules ),
+ "Modules are defined in alphabetical order."
+ );
+ }
+}
diff --git a/MLEB/Translate/tests/phpunit/SolrTTMServerTest.php b/MLEB/Translate/tests/phpunit/SolrTTMServerTest.php
new file mode 100644
index 00000000..a3f5dffc
--- /dev/null
+++ b/MLEB/Translate/tests/phpunit/SolrTTMServerTest.php
@@ -0,0 +1,179 @@
+<?php
+/**
+ * Tests for SolrTTMServer
+ *
+ * @file
+ * @author Niklas Laxström
+ * @copyright Copyright © 2013, Niklas Laxström
+ * @license GPL-2.0+
+ */
+
+/**
+ * @group large
+ * @group Database
+ */
+class SolrTTMServerTest extends MediaWikiTestCase {
+ protected function setUp() {
+ parent::setUp();
+
+ global $wgHooks, $wgTranslateTranslationServices, $wgTranslateTestTTMServer;
+ $this->setMwGlobals( array(
+ 'wgHooks' => $wgHooks,
+ 'wgTranslateCC' => array(),
+ 'wgTranslateMessageIndex' => array( 'DatabaseMessageIndex' ),
+ 'wgTranslateWorkflowStates' => false,
+ 'wgEnablePageTranslation' => false,
+ 'wgTranslateGroupFiles' => array(),
+ 'wgTranslateTranslationServices' => array(),
+ ) );
+ $wgTranslateTranslationServices['TTMServer'] = $wgTranslateTestTTMServer;
+
+ $wgHooks['TranslatePostInitGroups'] = array( array( $this, 'addGroups' ) );
+ MessageGroups::clearCache();
+ MessageIndexRebuildJob::newJob()->run();
+ // Also clear the "old" value when running multiple tests together
+ MessageIndexRebuildJob::newJob()->run();
+ self::runJobs();
+ }
+
+ public function addGroups( &$list ) {
+ $list['ttmserver-test'] = new MockWikiMessageGroup( 'ttmserver-test', array(
+ 'one' => '1', 'two' => 'kaksi', 'three' => '3' ) );
+
+ return true;
+ }
+
+ public function testSearchableTTMServer() {
+ global $wgTranslateTestTTMServer;
+ if ( !$wgTranslateTestTTMServer ) {
+ $this->markTestSkipped( 'No test TTMServer available' );
+ }
+
+ $server = TTMServer::factory( $wgTranslateTestTTMServer );
+ $solarium = $server->getSolarium();
+
+ // Empty it
+ $update = $solarium->createUpdate();
+ $update->addDeleteQuery( '*:*' );
+ $update->addCommit();
+ $solarium->update( $update );
+
+ // Check that it is empty indeed
+ $select = $solarium->createSelect();
+ $select->setRows( 0 );
+ $select->setQuery( '*:*' );
+ $result = $solarium->select( $select );
+ $this->assertEquals( 0, $result->getNumFound() );
+
+ // Add one definition
+ $title = Title::newFromText( 'MediaWiki:one/en' );
+ $page = WikiPage::factory( $title );
+ $content = ContentHandler::makeContent( '1', $title );
+ $page->doEditContent( $content, __METHOD__ );
+
+ $select = $solarium->createSelect();
+ $select->setRows( 1 );
+ $select->setQuery( '*:*' );
+ $result = $solarium->select( $select );
+ $this->assertEquals( 1, $result->getNumFound() );
+ $doc = null;
+ foreach ( $result as $doc ) {
+ // @todo FIXME Empty foreach statement.
+ }
+ $this->assertEquals( wfWikiId(), $doc->wiki );
+ $this->assertEquals( 'en', $doc->language );
+ $this->assertEquals( '1', $doc->content );
+ $this->assertEquals( array( 'ttmserver-test' ), $doc->group );
+
+ // Add one translation
+ $title = Title::newFromText( 'MediaWiki:one/fi' );
+ $page = WikiPage::factory( $title );
+ $content = ContentHandler::makeContent( 'yksi', $title );
+ $page->doEditContent( $content, __METHOD__ );
+
+ $select = $solarium->createSelect();
+ $select->setRows( 1 );
+ $select->setQuery( 'language:fi' );
+ $result = $solarium->select( $select );
+ $this->assertEquals( 1, $result->getNumFound() );
+ $doc = null;
+ foreach ( $result as $doc ) {
+ // @todo FIXME Empty foreach statement.
+ }
+ $this->assertEquals( 'yksi', $doc->content );
+ $this->assertEquals( array( 'ttmserver-test' ), $doc->group );
+
+ // Update definition
+ $title = Title::newFromText( 'MediaWiki:one/en' );
+ $page = WikiPage::factory( $title );
+ $content = ContentHandler::makeContent( '1-updated', $title );
+ $page->doEditContent( $content, __METHOD__ );
+
+ $select = $solarium->createSelect();
+ $select->setQuery( 'language:en' );
+ $result = $solarium->select( $select );
+ $this->assertEquals( 2, $result->getNumFound(), 'Old and new definition exists' );
+
+ // Translation is fuzzied
+ $title = Title::newFromText( 'MediaWiki:one/fi' );
+ $page = WikiPage::factory( $title );
+ $content = ContentHandler::makeContent( '!!FUZZY!!yksi', $title );
+ $page->doEditContent( $content, __METHOD__ );
+
+ $select = $solarium->createSelect();
+ $select->setQuery( 'language:fi' );
+ $result = $solarium->select( $select );
+ $this->assertEquals( 0, $result->getNumFound() );
+
+ // Translation is udpated
+ $title = Title::newFromText( 'MediaWiki:one/fi' );
+ $page = WikiPage::factory( $title );
+ $content = ContentHandler::makeContent( 'yksi-päiv', $title );
+ $page->doEditContent( $content, __METHOD__ );
+
+ $select = $solarium->createSelect();
+ $select->setQuery( 'language:fi' );
+ $result = $solarium->select( $select );
+ $this->assertEquals( 1, $result->getNumFound() );
+ $doc = null;
+ foreach ( $result as $doc ) {
+ // @todo FIXME Empty foreach statement.
+ }
+ $this->assertEquals( 'yksi-päiv', $doc->content );
+
+ // And now the messages should be orphaned
+ global $wgHooks;
+ $wgHooks['TranslatePostInitGroups'] = array();
+ MessageGroups::clearCache();
+ MessageIndexRebuildJob::newJob()->run();
+ self::runJobs();
+
+ $select = $solarium->createSelect();
+ $select->setQuery( '*:*' );
+ $result = $solarium->select( $select );
+ $this->assertEquals( 2, $result->getNumFound(), 'One definition and one translation exists' );
+ foreach ( $result as $doc ) {
+ $this->assertEquals( null, $doc->group, 'Messages are orphaned' );
+ }
+
+ // And message deletion
+ $title = Title::newFromText( 'MediaWiki:one/fi' );
+ $page = WikiPage::factory( $title );
+ $page->doDeleteArticle( __METHOD__ );
+
+ $select = $solarium->createSelect();
+ $select->setQuery( 'language:fi' );
+ $result = $solarium->select( $select );
+ $this->assertEquals( 0, $result->getNumFound() );
+ }
+
+ protected static function runJobs() {
+ do {
+ $job = JobQueueGroup::singleton()->pop();
+ if ( !$job ) {
+ break;
+ }
+ $job->run();
+ } while ( true );
+ }
+}
diff --git a/MLEB/Translate/tests/phpunit/SpecialPagesTest.php b/MLEB/Translate/tests/phpunit/SpecialPagesTest.php
new file mode 100644
index 00000000..0521cb1c
--- /dev/null
+++ b/MLEB/Translate/tests/phpunit/SpecialPagesTest.php
@@ -0,0 +1,79 @@
+<?php
+/**
+ * General integration test for special pages.
+ *
+ * @file
+ * @author Niklas Laxström
+ * @license GPL-2.0+
+ */
+
+/**
+ * Integration tests for making sure special pages do not fail in unexpected ways when viewed
+ * without parameters as anonymous or logged in user.
+ * @group Database
+ * @group large
+ */
+class SpecialPagesTest extends MediaWikiTestCase {
+ protected function setUp() {
+ parent::setUp();
+
+ $this->setMwGlobals( array(
+ 'wgTranslateCacheDirectory' => $this->getNewTempDirectory(),
+ 'wgTranslateMessageIndex' => array( 'DatabaseMessageIndex' ),
+ 'wgDeprecationReleaseLimit' => 1.22,
+ 'wgTranslateTranslationServices' => array(),
+ ) );
+ }
+
+ public static function provideSpecialPages() {
+ require __DIR__ . '/../../Autoload.php';
+ global $wgSpecialPages;
+
+ $pages = array();
+ foreach ( $wgSpecialPages as $name => $class ) {
+ if ( is_string( $class ) && isset( $al[$class] ) ) {
+ $pages[] = array( $name );
+ }
+ }
+
+ return $pages;
+ }
+
+ /**
+ * @dataProvider provideSpecialPages
+ */
+ public function testSpecialPage( $name ) {
+ $page = SpecialPageFactory::getPage( $name );
+ // @todo Change to getPageTitle() when lowest supported version is 1.23.
+ $title = $page->getTitle();
+
+ $context = RequestContext::newExtraneousContext( $title );
+ $page->setContext( $context );
+
+ try {
+ $page->run( null );
+ } catch ( PermissionsError $e ) {
+ // This is okay
+ wfDebug( 'Permissions error caught; expected.' );
+ } catch ( ErrorPageError $e ) {
+ // This is okay as well
+ wfDebug( 'Page error caught; expected.' );
+ }
+
+ $this->assertTrue( true, "Special page $name was executed succesfully with anon user" );
+
+ $user = new MockSuperUser();
+ $context->setUser( $user );
+ $page->setContext( $context );
+
+ // This should not throw permission errors
+ try {
+ $page->run( null );
+ } catch ( ErrorPageError $e ) {
+ // This is okay here
+ wfDebug( 'Page error caught; expected.' );
+ }
+
+ $this->assertTrue( true, "Special page $name was executed succesfully with super user" );
+ }
+}
diff --git a/MLEB/Translate/tests/phpunit/StringMatcherTest.php b/MLEB/Translate/tests/phpunit/StringMatcherTest.php
new file mode 100644
index 00000000..cf93ad47
--- /dev/null
+++ b/MLEB/Translate/tests/phpunit/StringMatcherTest.php
@@ -0,0 +1,101 @@
+<?php
+/**
+ * The StringMatcher class is responsible for making sure message keys
+ * from external sources are valid titles in MediaWiki.
+ * @author Niklas Laxström
+ * @file
+ */
+
+class StringMatcherTest extends MediaWikiTestCase {
+ /**
+ * @dataProvider messageKeyProvider
+ */
+ public function testKeyPrefixing( $key, $expected, $prefix, $rules, $comment ) {
+ $matcher = new StringMatcher( $prefix, $rules );
+ $mangled = $matcher->mangle( $key );
+ $title = Title::makeTitleSafe( NS_MEDIAWIKI, $mangled );
+ $this->assertInstanceOf( 'Title', $title, "Key '$mangled' did not produce valid title" );
+ $unmangled = $matcher->unMangle( $mangled );
+ $this->assertEquals( $key, $unmangled, 'Mangling is reversable' );
+ $this->assertEquals( $expected, $mangled, 'Message is prefixed correctly' );
+ }
+
+ public function messageKeyProvider() {
+ // The fourth parameter causes the key to be prefixed or unprefixed
+ $keys = array(
+ array( 'key', 'p-key', 'p-', array( 'key' ), 'Exact match' ),
+ array( 'key', 'key', 'p-', array( 'bar' ), 'Exact not match' ),
+ array( 'key', 'p-key', 'p-', array( 'k*' ), 'Prefix match' ),
+ array( 'key', 'key', 'p-', array( 'b*' ), 'Prefix not match' ),
+ array( 'key', 'p-key', 'p-', array( '*y' ), 'Suffix match' ),
+ array( 'key', 'key', 'p-', array( '*r' ), 'Suffix not match' ),
+ array( 'key', 'p-key', 'p-', array( 'k*y' ), 'Wildcard match' ),
+ array( 'key', 'key', 'p-', array( '*a*' ), 'Wildcard not match' ),
+ array( 'key', 'p-key', 'p-', array( 'key', '*ey', 'ke*' ), 'Multiple rules match' ),
+ array( 'key', 'key', 'p-', array( '*a*', '*ar', 'ba*' ), 'Multiple rules not match' ),
+ array( 'key', 'p-key', 'p-', array( '*' ), 'All match' ),
+ array(
+ '[k.ssa]', 'p-=5Bk.ssa=5D', 'p-', array( '[k.s*' ),
+ 'Message key with special chars'
+ ),
+ array(
+ '[kissa]', '=5Bkissa=5D', 'p-', array( '[k.s*' ),
+ 'Message key with special chars'
+ ),
+ );
+
+ return $keys;
+ }
+
+ /**
+ * @dataProvider problematicMessageKeyProvider
+ */
+ public function testKeyMangling( $key, $comment ) {
+ $matcher = StringMatcher::emptyMatcher();
+ $mangled = $matcher->mangle( $key );
+
+ $title = Title::makeTitleSafe( NS_MEDIAWIKI, $mangled );
+ $this->assertInstanceOf( 'Title', $title, "Key '$mangled' did not produce a valid title" );
+ $unmangled = $matcher->unMangle( $mangled );
+ $this->assertEquals( $key, $unmangled, 'Mangling is reversible' );
+ }
+
+ /**
+ * @dataProvider problematicMessageKeyProvider
+ */
+ public function testKeyManglingWithPrefixing( $key, $comment ) {
+ $matcher = new StringMatcher( 'prefix', array( '*' ) );
+ $mangled = $matcher->mangle( $key );
+ $title = Title::makeTitleSafe( NS_MEDIAWIKI, $mangled );
+ $this->assertInstanceOf( 'Title', $title, "Key '$mangled' did not produce a valid title" );
+
+ $unmangled = $matcher->unMangle( $mangled );
+ $this->assertEquals( $key, $unmangled, 'Mangling is reversible' );
+ }
+
+ public function problematicMessageKeyProvider() {
+ $keys = array(
+ array( 'key', 'simple string' ),
+ array( 'key[]', 'string with brackets' ),
+ array( 'key%AB', 'string with invalid url encoding' ),
+ array( 'key&amp;', 'string with html entity' ),
+ array( 'key=2A', 'string with fake escaping' ),
+ array( 'abcdefgh', 'string with fake escaping' ),
+ array( 'общегосударственные', 'Unicode string' ),
+ );
+
+ // Add tests for ranges of exotic ASCII characters
+ foreach ( range( 0, 7 ) as $k ) {
+ $key = '';
+ foreach ( range( 0, 15 ) as $c ) {
+ $key .= chr( $c + 16 * $k );
+ }
+
+ $start = $k * 16;
+ $end = $start + 16;
+ $keys[] = array( $key, "ASCII range $start..$end" );
+ }
+
+ return $keys;
+ }
+}
diff --git a/MLEB/Translate/tests/phpunit/TPParseTest.php b/MLEB/Translate/tests/phpunit/TPParseTest.php
new file mode 100644
index 00000000..f5a9f385
--- /dev/null
+++ b/MLEB/Translate/tests/phpunit/TPParseTest.php
@@ -0,0 +1,61 @@
+<?php
+/**
+ * Unit tests for class TPParse
+ *
+ * @author Niklas Laxström
+ * @license GPL-2.0+
+ * @file
+ */
+
+/**
+ * Unit tests for class TPParse
+ * @ingroup PageTranslation
+ */
+class TPParseTest extends MediaWikiTestCase {
+ public function testGetTranslationPageText() {
+ $title = Title::newFromText( __CLASS__ );
+ $page = TranslatablePage::newFromText(
+ $title,
+ '<translate>Hello <tvar|abc>peter!</></translate>'
+ );
+ $prefix = $title->getPrefixedDBKey() . '/';
+ $parse = $page->getParse();
+
+ $collection = array();
+ $expected = 'Hello peter!';
+
+ $actual = $parse->getTranslationPageText( $collection );
+ $this->assertEquals(
+ $expected,
+ $actual,
+ 'Variable declarations are substituted when no translation'
+ );
+
+ foreach ( $parse->sections as $section ) {
+ $key = $prefix . $section->id;
+ $message = new FatMessage( $key, $section->getText() );
+ $message->setTranslation( $section->getText() );
+ $collection[$key] = $message;
+ }
+
+ $actual = $parse->getTranslationPageText( $collection );
+ $this->assertEquals(
+ $expected,
+ $actual,
+ 'Variable declarations are substituted in source language'
+ );
+
+ foreach ( $parse->sections as $section ) {
+ $key = $prefix . $section->id;
+ $message = new FatMessage( $key, $section->getText() );
+ $message->setTranslation( $section->getTextForTrans() );
+ $collection[$key] = $message;
+ }
+ $actual = $parse->getTranslationPageText( $collection );
+ $this->assertEquals(
+ $expected,
+ $actual,
+ 'Variable declarations are substituted in translation'
+ );
+ }
+}
diff --git a/MLEB/Translate/tests/phpunit/TTMServerTest.php b/MLEB/Translate/tests/phpunit/TTMServerTest.php
new file mode 100644
index 00000000..c5869ce2
--- /dev/null
+++ b/MLEB/Translate/tests/phpunit/TTMServerTest.php
@@ -0,0 +1,83 @@
+<?php
+/**
+ * Tests for TTMServer
+ *
+ * @file
+ * @author Niklas Laxström
+ * @copyright Copyright © 2012-2013, Niklas Laxström
+ * @license GPL-2.0+
+ */
+
+class TTMServerTest extends MediaWikiTestCase {
+ protected $config;
+
+ protected function setUp() {
+ global $wgTranslateTranslationServices;
+ $this->config = $wgTranslateTranslationServices;
+ parent::setUp();
+
+ $wgTranslateTranslationServices = array();
+ $wgTranslateTranslationServices['localtm'] = array(
+ 'url' => 'http://example.com/sandwiki/api.php',
+ 'displayname' => 'example.com',
+ 'cutoff' => 0.75,
+ 'type' => 'ttmserver',
+ );
+
+ $wgTranslateTranslationServices['apitm'] = array(
+ 'url' => 'http://example.com/w/api.php',
+ 'displayname' => 'example.com',
+ 'cutoff' => 0.75,
+ 'timeout-sync' => 4,
+ 'timeout-async' => 4,
+ 'type' => 'ttmserver',
+ 'class' => 'RemoteTTMServer',
+ );
+ }
+
+ protected function tearDown() {
+ global $wgTranslateTranslationServices;
+ $wgTranslateTranslationServices = $this->config;
+ parent::tearDown();
+ }
+
+ public function testConstruct() {
+ $server = TTMServer::primary();
+ $this->assertEquals(
+ 'FakeTTMServer',
+ get_class( $server ),
+ 'Fake server given when default server is disabled'
+ );
+ global $wgTranslateTranslationServices;
+ $wgTranslateTranslationServices['TTMServer'] = array(
+ 'database' => false, // Passed to wfGetDB
+ 'cutoff' => 0.75,
+ 'type' => 'ttmserver',
+ 'public' => false,
+ );
+ $server = TTMServer::primary();
+ $this->assertEquals(
+ 'DatabaseTTMServer',
+ get_class( $server ),
+ 'Real server given when default server is enabled'
+ );
+ unset( $wgTranslateTranslationServices['TTMServer'] );
+ }
+
+ public function testFakeTTMServer() {
+ $server = new FakeTTMServer();
+ $this->assertEquals(
+ array(),
+ $server->query( 'en', 'fi', 'daa' ),
+ 'FakeTTMServer returns no suggestions for all queries'
+ );
+
+ $title = new Title();
+ $handle = new MessageHandle( $title );
+
+ $this->assertNull(
+ $server->update( $handle, 'text' ),
+ 'FakeTTMServer returns null on update'
+ );
+ }
+}
diff --git a/MLEB/Translate/tests/phpunit/TranslateHooksTest.php b/MLEB/Translate/tests/phpunit/TranslateHooksTest.php
new file mode 100644
index 00000000..98e4d983
--- /dev/null
+++ b/MLEB/Translate/tests/phpunit/TranslateHooksTest.php
@@ -0,0 +1,93 @@
+<?php
+/**
+ * Test for various code using hooks.
+ *
+ * @file
+ * @author Niklas Laxström
+ * @copyright Copyright © 2012-2013, Niklas Laxström
+ * @license GPL-2.0+
+ */
+
+/**
+ * @group Database
+ * @group medium
+ */
+class TranslateHooksTest extends MediaWikiLangTestCase {
+ protected function setUp() {
+ parent::setUp();
+
+ global $wgHooks;
+ $this->setMwGlobals( array(
+ 'wgHooks' => $wgHooks,
+ 'wgTranslateCC' => array(),
+ 'wgTranslateMessageIndex' => array( 'DatabaseMessageIndex' ),
+ 'wgTranslateWorkflowStates' => false,
+ 'wgEnablePageTranslation' => false,
+ 'wgTranslateGroupFiles' => array(),
+ 'wgTranslateDocumentationLanguageCode' => 'qqq',
+ 'wgTranslateTranslationServices' => array(),
+ 'wgTranslateMessageNamespaces' => array( NS_MEDIAWIKI ),
+ ) );
+ $wgHooks['TranslatePostInitGroups'] = array( array( $this, 'getTestGroups' ) );
+ MessageGroups::clearCache();
+ MessageIndexRebuildJob::newJob()->run();
+ }
+
+ public function getTestGroups( &$list ) {
+ $messages = array(
+ 'ugakey1' => 'value1',
+ 'ugakey2' => 'value2',
+ );
+
+ $list['testgroup'] = new MockWikiMessageGroup( 'testgroup', $messages );
+
+ return false;
+ }
+
+ public function testPreventCategorization() {
+ $user = new MockSuperUser();
+ $title = Title::makeTitle( NS_MEDIAWIKI, 'ugakey1/fi' );
+ $wikipage = WikiPage::factory( $title );
+ $content = ContentHandler::makeContent( '[[Category:Shouldnotbe]]', $title );
+
+ $wikipage->doEditContent( $content, __METHOD__, 0, false, $user );
+ $this->assertEquals(
+ array(),
+ $title->getParentCategories(),
+ 'translation of known message'
+ );
+
+ $title = Title::makeTitle( NS_MEDIAWIKI, 'ugakey2/qqq' );
+ $wikipage = WikiPage::factory( $title );
+ $content = ContentHandler::makeContent( '[[Category:Shouldbe]]', $title );
+
+ $wikipage->doEditContent( $content, __METHOD__, 0, false, $user );
+ $this->assertEquals(
+ array( 'Category:Shouldbe' => 'MediaWiki:ugakey2/qqq' ),
+ $title->getParentCategories(),
+ 'message docs'
+ );
+
+ $title = Title::makeTitle( NS_MEDIAWIKI, 'ugakey3/no' );
+ $wikipage = WikiPage::factory( $title );
+ $content = ContentHandler::makeContent( '[[Category:Shouldbealso]]', $title );
+
+ $wikipage->doEditContent( $content, __METHOD__, 0, false, $user );
+ $this->assertEquals( array(), $title->getParentCategories(), 'unknown message' );
+ }
+
+ public function testSearchProfile() {
+ $profiles = array(
+ 'files' => array(),
+ 'all' => array(),
+ 'advanced' => array()
+ );
+
+ $expected = array( 'files', 'translation', 'all', 'advanced' );
+
+ TranslateHooks::searchProfile( $profiles );
+
+ $this->assertEquals( $expected, array_keys( $profiles ) );
+ }
+
+}
diff --git a/MLEB/Translate/tests/phpunit/TranslateSandboxTest.php b/MLEB/Translate/tests/phpunit/TranslateSandboxTest.php
new file mode 100644
index 00000000..c8cdb9c8
--- /dev/null
+++ b/MLEB/Translate/tests/phpunit/TranslateSandboxTest.php
@@ -0,0 +1,103 @@
+<?php
+/**
+ * Test for the utilities for the sandbox feature of Translate.
+ *
+ * @file
+ * @author Niklas Laxström
+ * @license GPL-2.0+
+ */
+
+/**
+ * @group Database
+ */
+class TranslateSandboxTest extends MediaWikiTestCase {
+ protected function setUp() {
+ parent::setUp();
+ $this->setMwGlobals( array(
+ 'wgTranslateUseSandbox' => true,
+ 'wgTranslateSandboxPromotedGroup' => 'translator',
+ ) );
+ }
+
+ public function testAddUser() {
+ $user = TranslateSandbox::addUser( 'Test user', 'test@blackhole.io', 'test password' );
+ $this->assertTrue( $user->isLoggedIn(), 'User exists' );
+
+ // Work around for https://bugzilla.wikimedia.org/46844
+ $groups = array_unique( $user->getGroups() );
+ $this->assertSame( array( 'translate-sandboxed' ), $groups, 'User is in the sandboxed group' );
+ }
+
+ public function testDeleteUser() {
+ $user = TranslateSandbox::addUser( 'Test user2', 'test@blackhole.io', 'test password' );
+ TranslateSandbox::deleteUser( $user );
+ $this->assertFalse( $user->isLoggedIn(), 'User no longer exists' );
+ }
+
+ /**
+ * @expectedException MWException
+ * @expectedExceptionMessage Not a sandboxed user
+ */
+ public function testDeleteUserPromoted() {
+ $user = TranslateSandbox::addUser( 'Test user3', 'test@blackhole.io', 'test password' );
+ TranslateSandbox::promoteUser( $user );
+ TranslateSandbox::deleteUser( $user );
+ }
+
+ public function testGetUsers() {
+ $atStart = TranslateSandbox::getUsers()->count();
+
+ $user = TranslateSandbox::addUser( 'Test user4', 'test@blackhole.io', 'test password' );
+
+ $this->assertEquals(
+ $atStart + 1, TranslateSandbox::getUsers()->count(),
+ 'One sandboxed user created'
+ );
+
+ TranslateSandbox::deleteUser( $user );
+ $this->assertEquals(
+ $atStart, TranslateSandbox::getUsers()->count(),
+ 'No sandboxed users after deleted'
+ );
+ }
+
+ public function testGetUsersPromotion() {
+ $atStart = TranslateSandbox::getUsers()->count();
+
+ $user = TranslateSandbox::addUser( 'Test user5', 'test@blackhole.io', 'test password' );
+ $this->assertEquals(
+ $atStart + 1,
+ TranslateSandbox::getUsers()->count(),
+ 'One sandboxed user created'
+ );
+
+ TranslateSandbox::promoteUser( $user );
+ $this->assertEquals(
+ $atStart,
+ TranslateSandbox::getUsers()->count(),
+ 'No sandboxed users after promotion'
+ );
+ }
+
+ public function testPromoteUser() {
+ $user = TranslateSandbox::addUser( 'Test user6', 'test@blackhole.io', 'test password' );
+ TranslateSandbox::promoteUser( $user );
+
+ $this->assertContains( 'translator', $user->getGroups() );
+ }
+
+ public function testPermissions() {
+ $user = TranslateSandbox::addUser( 'Test user7', 'test@blackhole.io', 'test password' );
+ $title = Title::makeTitle( NS_USER_TALK, $user->getName() );
+
+ $this->assertFalse(
+ $title->userCan( 'edit', $user ),
+ 'Sandboxed users cannot edit their own talk page'
+ );
+ TranslateSandbox::promoteUser( $user );
+ $this->assertTrue(
+ $title->userCan( 'edit', $user ),
+ 'Promoted users can edit their own talk page'
+ );
+ }
+}
diff --git a/MLEB/Translate/tests/phpunit/TranslationFuzzyUpdaterTest.php b/MLEB/Translate/tests/phpunit/TranslationFuzzyUpdaterTest.php
new file mode 100644
index 00000000..c06f25e5
--- /dev/null
+++ b/MLEB/Translate/tests/phpunit/TranslationFuzzyUpdaterTest.php
@@ -0,0 +1,80 @@
+<?php
+/**
+ * Tests for fuzzy flag change on edits.
+ * @author Niklas Laxström
+ * @file
+ * @copyright Copyright © 2012-2013, Niklas Laxström
+ * @license GPL-2.0+
+ */
+
+/**
+ * Tests for fuzzy flag change on edits.
+ * @group Database
+ * @group medium
+ */
+class TranslationFuzzyUpdaterTest extends MediaWikiTestCase {
+ protected function setUp() {
+ parent::setUp();
+
+ global $wgHooks;
+ $this->setMwGlobals( array(
+ 'wgHooks' => $wgHooks,
+ 'wgTranslateCC' => array(),
+ 'wgTranslateMessageIndex' => array( 'DatabaseMessageIndex' ),
+ 'wgTranslateWorkflowStates' => false,
+ 'wgTranslateGroupFiles' => array(),
+ 'wgTranslateTranslationServices' => array(),
+ 'wgTranslateMessageNamespaces' => array( NS_MEDIAWIKI ),
+ ) );
+ $wgHooks['TranslatePostInitGroups'] = array( array( $this, 'getTestGroups' ) );
+ MessageGroups::clearCache();
+ MessageIndexRebuildJob::newJob()->run();
+ }
+
+ public function getTestGroups( &$list ) {
+ $messages = array( 'ugakey' => '$1 of $2', );
+ $list['test-group'] = new MockWikiMessageGroup( 'test-group', $messages );
+
+ return false;
+ }
+
+ public function testParsing() {
+ $title = Title::newFromText( 'MediaWiki:Ugakey/nl' );
+ $page = WikiPage::factory( $title );
+ $content = ContentHandler::makeContent( '$1 van $2', $title );
+ $status = $page->doEditContent( $content, __METHOD__ );
+ $value = $status->getValue();
+ /**
+ * @var Revision $rev
+ */
+ $rev = $value['revision'];
+ $revision = $rev->getId();
+
+ $dbw = wfGetDB( DB_MASTER );
+ $conds = array(
+ 'rt_page' => $title->getArticleID(),
+ 'rt_type' => RevTag::getType( 'fuzzy' ),
+ 'rt_revision' => $revision
+ );
+
+ $index = array_keys( $conds );
+ $dbw->replace( 'revtag', array( $index ), $conds, __METHOD__ );
+
+ $handle = new MessageHandle( $title );
+ $this->assertTrue( $handle->isValid(), 'Message is known' );
+ $this->assertTrue( $handle->isFuzzy(), 'Message is fuzzy after database fuzzying' );
+ // Update the translation without the fuzzy string
+ $content = ContentHandler::makeContent( '$1 van $2', $title );
+ $page->doEditContent( $content, __METHOD__ );
+ $this->assertFalse( $handle->isFuzzy(), 'Message is unfuzzy after edit' );
+
+ $content = ContentHandler::makeContent( '!!FUZZY!!$1 van $2', $title );
+ $page->doEditContent( $content, __METHOD__ );
+ $this->assertTrue( $handle->isFuzzy(), 'Message is fuzzy after manual fuzzying' );
+
+ // Update the translation without the fuzzy string
+ $content = ContentHandler::makeContent( '$1 van $2', $title );
+ $page->doEditContent( $content, __METHOD__ );
+ $this->assertFalse( $handle->isFuzzy(), 'Message is unfuzzy after edit' );
+ }
+}
diff --git a/MLEB/Translate/tests/phpunit/TranslationStashStorageTest.php b/MLEB/Translate/tests/phpunit/TranslationStashStorageTest.php
new file mode 100644
index 00000000..3208ab01
--- /dev/null
+++ b/MLEB/Translate/tests/phpunit/TranslationStashStorageTest.php
@@ -0,0 +1,39 @@
+<?php
+/**
+ * @file
+ * @author Niklas Laxström
+ * @license GPL-2.0+
+ */
+
+/**
+ * @group Database
+ */
+class TranslationStashStorageTest extends MediaWikiTestCase {
+
+ public function testAdd() {
+ $storage = new TranslationStashStorage( wfGetDB( DB_MASTER ) );
+
+ $translation1 = new StashedTranslation(
+ User::newFromId( 1 ),
+ Title::makeTitle( NS_MAIN, __METHOD__ ),
+ 'test value',
+ array( 'kissa', 'kala' )
+ );
+
+ $translation2 = new StashedTranslation(
+ User::newFromId( 2 ),
+ Title::makeTitle( NS_MAIN, __METHOD__ ),
+ 'test value 2',
+ array( 'kissa', 'kala' )
+ );
+
+ $storage->addTranslation( $translation1 );
+ $storage->addTranslation( $translation2 );
+
+ $ret = $storage->getTranslations( User::newFromId( 1 ) );
+ $this->assertCount( 1, $ret, 'One stashed translation for this user' );
+
+ // AssertSame required same reference, assert equals only same content
+ $this->assertEquals( $translation1, $ret[0], 'Data roundtrips' );
+ }
+}
diff --git a/MLEB/Translate/tests/phpunit/api/ApiGroupReviewTest.php b/MLEB/Translate/tests/phpunit/api/ApiGroupReviewTest.php
new file mode 100644
index 00000000..6da4016b
--- /dev/null
+++ b/MLEB/Translate/tests/phpunit/api/ApiGroupReviewTest.php
@@ -0,0 +1,37 @@
+<?php
+/**
+ * Unit tests for message group state change api.
+ *
+ * @file
+ * @author Niklas Laxström
+ * @copyright Copyright © 2012-2013, Niklas Laxström
+ * @license GPL-2.0+
+ */
+
+/**
+ * @group Database
+ */
+class ApiGroupReviewTest extends MediaWikiTestCase {
+ protected function setUp() {
+ parent::setUp();
+
+ $this->setMwGlobals( array(
+ 'wgTranslateMessageIndex' => array( 'DatabaseMessageIndex' ),
+ 'wgTranslateWorkflowStates' => false,
+ 'wgTranslateTranslationServices' => array(),
+ ) );
+ }
+
+ public function testGetSetState() {
+ $group = new WikiMessageGroup( 'testgroup', 'wewgweg' );
+
+ $ok = ApiGroupReview::changeState( $group, 'fi', 'newstate', FuzzyBot::getUser() );
+ $this->assertTrue( $ok, 'state was changed' );
+
+ $state = ApiGroupReview::getState( $group, 'fi' );
+ $this->assertEquals( 'newstate', $state, 'state was changed to expected value' );
+
+ $ok = ApiGroupReview::changeState( $group, 'fi', 'newstate', FuzzyBot::getUser() );
+ $this->assertFalse( $ok, 'state was not changed again' );
+ }
+}
diff --git a/MLEB/Translate/tests/phpunit/api/ApiQueryMessageGroupsTest.php b/MLEB/Translate/tests/phpunit/api/ApiQueryMessageGroupsTest.php
new file mode 100644
index 00000000..3882d392
--- /dev/null
+++ b/MLEB/Translate/tests/phpunit/api/ApiQueryMessageGroupsTest.php
@@ -0,0 +1,162 @@
+<?php
+/**
+ * Unit tests for api module.
+ *
+ * @file
+ * @author Harry Burt
+ * @copyright Copyright © 2012-2013, Harry Burt
+ * @license GPL-2.0+
+ */
+
+/**
+ * @group Database
+ * @group medium
+ */
+class ApiQueryMessageGroupsTest extends ApiTestCase {
+
+ protected function setUp() {
+ parent::setUp();
+
+ global $wgHooks;
+ $this->setMwGlobals( array(
+ 'wgHooks' => $wgHooks,
+ 'wgTranslateCC' => array(),
+ 'wgTranslateMessageIndex' => array( 'DatabaseMessageIndex' ),
+ 'wgTranslateWorkflowStates' => false,
+ 'wgTranslateGroupFiles' => array(),
+ 'wgEnablePageTranslation' => false,
+ 'wgTranslateTranslationServices' => array(),
+ ) );
+ $wgHooks['TranslatePostInitGroups'] = array( array( $this, 'getTestGroups' ) );
+ MessageGroups::clearCache();
+ MessageIndexRebuildJob::newJob()->run();
+ }
+
+ public function getTestGroups( &$list ) {
+ $exampleMessageGroup = new WikiMessageGroup( 'theid', 'thesource' );
+ $exampleMessageGroup->setLabel( 'thelabel' ); // Example
+ $exampleMessageGroup->setNamespace( 5 ); // Example
+ $list['theid'] = $exampleMessageGroup;
+
+ $anotherExampleMessageGroup = new WikiMessageGroup( 'anotherid', 'thesource' );
+ $anotherExampleMessageGroup->setLabel( 'thelabel' ); // Example
+ $anotherExampleMessageGroup->setNamespace( 5 ); // Example
+ $list['anotherid'] = $anotherExampleMessageGroup;
+
+ return false;
+ }
+
+ public function testAPIAccuracy() {
+ list( $data ) = $this->doApiRequest(
+ array(
+ 'action' => 'query',
+ 'meta' => 'messagegroups',
+ 'mgprop' => 'id|label|class|namespace|exists',
+ // @see https://gerrit.wikimedia.org/r/#/c/160222/
+ 'continue' => ''
+ )
+ );
+
+ // Check structure
+ $this->assertArrayNotHasKey( 'warnings', $data );
+ $this->assertArrayHasKey( 'query', $data );
+ $this->assertCount( 1, $data['query'] );
+ $this->assertArrayHasKey( 'messagegroups', $data['query'] );
+
+ // Basic content checks
+ $items = $data['query']['messagegroups'];
+
+ // Ignore dynamic groups
+ foreach ( $items as $index => $group ) {
+ if ( $group['id'][0] === '!' ) {
+ unset( $items[$index] );
+ }
+ }
+
+ // Renumber keys
+ $items = array_values( $items );
+
+ $this->assertCount( 2, $items, 'Only the two groups specified are in the api' );
+ $this->assertStringEndsWith( 'id', $items[0]['id'] );
+ $this->assertStringEndsWith( 'id', $items[1]['id'] );
+ $this->assertSame( $items[0]['label'], 'thelabel' );
+ $this->assertSame( $items[1]['label'], 'thelabel' );
+ $this->assertSame( $items[0]['exists'], true );
+ $this->assertSame( $items[1]['exists'], true );
+ $this->assertSame( $items[0]['namespace'], 5 );
+ $this->assertSame( $items[1]['namespace'], 5 );
+ $this->assertSame( $items[0]['class'], 'WikiMessageGroup' );
+ $this->assertSame( $items[1]['class'], 'WikiMessageGroup' );
+ }
+
+ public function testAPIFilterAccuracy() {
+ $ids = array( 'MadeUpGroup' );
+ $ids += array_keys( MessageGroups::getAllGroups() );
+
+ foreach ( $ids as $id ) {
+ list( $data ) = $this->doApiRequest(
+ array(
+ 'action' => 'query',
+ 'meta' => 'messagegroups',
+ 'mgprop' => 'id|label|class|namespace|exists',
+ 'mgfilter' => $id,
+ // @see https://gerrit.wikimedia.org/r/#/c/160222/
+ 'continue' => ''
+ )
+ );
+
+ if ( $id === 'MadeUpGroup' ) {
+ // Check structure (shouldn't find anything)
+ $this->assertArrayNotHasKey( 'warnings', $data );
+ $this->assertArrayHasKey( 'query', $data );
+ $this->assertCount( 1, $data['query'] );
+ $this->assertArrayHasKey( 'messagegroups', $data['query'] );
+ $this->assertCount( 0, $data['query']['messagegroups'] );
+ continue;
+ }
+
+ // Check structure (filter is unique given these names)
+ $this->assertArrayNotHasKey( 'warnings', $data );
+ $this->assertArrayHasKey( 'query', $data );
+ $this->assertCount( 1, $data['query'] );
+ $this->assertArrayHasKey( 'messagegroups', $data['query'] );
+ $this->assertCount( 1, $data['query']['messagegroups'] );
+
+ // Check content
+ $item = $data['query']['messagegroups'][0];
+ $this->assertCount( 5, $item );
+
+ $this->assertSame( $item['id'], $id );
+ $this->assertSame( $item['label'], 'thelabel' );
+ $this->assertSame( $item['exists'], true );
+ $this->assertStringEndsWith( 'id', $item['id'] ); // theid, anotherid
+ $this->assertSame( $item['namespace'], 5 );
+ $this->assertSame( $item['class'], 'WikiMessageGroup' );
+ }
+ }
+
+ public function testBadProperty() {
+ list( $data ) = $this->doApiRequest(
+ array(
+ 'action' => 'query',
+ 'meta' => 'messagegroups',
+ 'mgprop' => 'madeupproperty',
+ // @see https://gerrit.wikimedia.org/r/#/c/160222/
+ 'continue' => ''
+ )
+ );
+
+ $this->assertArrayHasKey( 'query', $data );
+ $this->assertCount( 1, $data['query'] );
+ $this->assertArrayHasKey( 'messagegroups', $data['query'] );
+ // This doesn't work. invalid properties are only warnings,
+ // so we ged empty groups listed
+ // $this->assertCount( 0, $data['query']['messagegroups'] );
+
+ $this->assertArrayHasKey( 'warnings', $data );
+ $this->assertCount( 1, $data['warnings'] );
+ $this->assertArrayHasKey( 'messagegroups', $data['warnings'] );
+ $this->assertCount( 1, $data['warnings']['messagegroups'] );
+ $this->assertArrayHasKey( '*', $data['warnings']['messagegroups'] );
+ }
+}
diff --git a/MLEB/Translate/tests/phpunit/api/ApiTokensTest.php b/MLEB/Translate/tests/phpunit/api/ApiTokensTest.php
new file mode 100644
index 00000000..0e2bba57
--- /dev/null
+++ b/MLEB/Translate/tests/phpunit/api/ApiTokensTest.php
@@ -0,0 +1,51 @@
+<?php
+/**
+ * Unit tests.
+ *
+ * @file
+ * @author Niklas Laxström
+ * @copyright Copyright © 2012-2013, Niklas Laxström
+ * @license GPL-2.0+
+ */
+
+/**
+ * Unit tests for api token retrieval.
+ */
+class ApiTokensTranslateTest extends MediaWikiTestCase {
+ /** @dataProvider provideTokenClasses */
+ public function testTokenRetrieval( $id, $class ) {
+ // Make sure we have the right to get the token
+ global $wgGroupPermissions;
+ $wgGroupPermissions['*'][$class::getRight()] = true;
+ RequestContext::getMain()->getUser()->clearInstanceCache(); // Reread above global
+
+ // We should be getting anonymous user token
+ $expected = $class::getToken();
+ $this->assertNotSame( false, $expected, 'We did not get a valid token' );
+
+ $actionString = TranslateUtils::getTokenAction( $id );
+ $params = wfCgiToArray( $actionString );
+
+ $req = new FauxRequest( $params );
+ $api = new ApiMain( $req );
+ $api->execute();
+
+ $data = $api->getResultData();
+ if ( isset( $data['query'] ) ) {
+ foreach ( $data['query']['pages'] as $page ) {
+ $this->assertSame( $expected, $page[$id . 'token'] );
+ }
+ } else {
+ $this->assertArrayHasKey( 'tokens', $data, 'Result has tokens' );
+ $this->assertSame( $expected, $data['tokens'][$id . 'token'] );
+ }
+ }
+
+ public static function provideTokenClasses() {
+ return array(
+ array( 'groupreview', 'ApiGroupReview' ),
+ array( 'translationreview', 'ApiTranslationReview' ),
+ array( 'aggregategroups', 'ApiAggregateGroups' ),
+ );
+ }
+}
diff --git a/MLEB/Translate/tests/phpunit/api/ApiTranslationReviewTest.php b/MLEB/Translate/tests/phpunit/api/ApiTranslationReviewTest.php
new file mode 100644
index 00000000..47c85efe
--- /dev/null
+++ b/MLEB/Translate/tests/phpunit/api/ApiTranslationReviewTest.php
@@ -0,0 +1,106 @@
+<?php
+/**
+ *
+ * @file
+ * @author Niklas Laxström
+ * @copyright Copyright © 2012-2013, Niklas Laxström
+ * @license GPL-2.0+
+ */
+
+/**
+ * @group Database
+ */
+class ApiTranslationReviewTest extends MediaWikiTestCase {
+ protected function setUp() {
+ parent::setUp();
+
+ global $wgHooks;
+ $this->setMwGlobals( array(
+ 'wgHooks' => $wgHooks,
+ 'wgTranslateCC' => array(),
+ 'wgTranslateMessageIndex' => array( 'DatabaseMessageIndex' ),
+ 'wgTranslateWorkflowStates' => false,
+ 'wgEnablePageTranslation' => false,
+ 'wgTranslateGroupFiles' => array(),
+ 'wgGroupPermissions' => array(),
+ 'wgTranslateTranslationServices' => array(),
+ 'wgTranslateMessageNamespaces' => array( NS_MEDIAWIKI ),
+ ) );
+ $wgHooks['TranslatePostInitGroups'] = array( array( $this, 'getTestGroups' ) );
+ MessageGroups::clearCache();
+ MessageIndexRebuildJob::newJob()->run();
+ }
+
+ public function getTestGroups( &$list ) {
+ $messages = array(
+ 'ugakey1' => 'value1',
+ 'ugakey2' => 'value2',
+ );
+
+ $list['testgroup'] = new MockWikiMessageGroup( 'testgroup', $messages );
+
+ return false;
+ }
+
+ public function testgetReviewBlockers() {
+ $superUser1 = new MockSuperUser();
+ $superUser1->setId( 1 );
+
+ $superUser2 = new MockSuperUser();
+ $superUser2->setId( 2 );
+
+ $plainUser = User::newFromName( 'PlainUser' );
+
+ $title = Title::makeTitle( NS_MEDIAWIKI, 'Ugakey1/fi' );
+ $content = ContentHandler::makeContent( 'trans1', $title );
+ WikiPage::factory( $title )->doEditContent( $content, __METHOD__, 0, false, $superUser1 );
+
+ $title = Title::makeTitle( NS_MEDIAWIKI, 'Ugakey2/fi' );
+ $content = ContentHandler::makeContent( '!!FUZZY!!trans2', $title );
+ WikiPage::factory( $title )->doEditContent( $content, __METHOD__, 0, false, $superUser2 );
+
+ $title = Title::makeTitle( NS_MEDIAWIKI, 'Ugakey3/fi' );
+ $content = ContentHandler::makeContent( 'unknown message', $title );
+ WikiPage::factory( $title )->doEditContent( $content, __METHOD__, 0, false, $superUser1 );
+
+ $testcases = array(
+ array(
+ 'permissiondenied',
+ $plainUser,
+ 'Ugakey1/fi',
+ 'Unpriviledged user is not allowed to change state'
+ ),
+ array(
+ 'owntranslation',
+ $superUser1,
+ 'Ugakey1/fi',
+ 'Cannot approve own translation'
+ ),
+ array(
+ 'fuzzymessage',
+ $superUser1,
+ 'Ugakey2/fi',
+ 'Cannot approve fuzzy translation'
+ ),
+ array(
+ 'unknownmessage',
+ $superUser1,
+ 'Ugakey3/fi',
+ 'Cannot approve unknown translation'
+ ),
+ array(
+ '',
+ $superUser2,
+ 'Ugakey1/fi',
+ 'Can approve non-fuzzy known non-own translation'
+ ),
+ );
+
+ foreach ( $testcases as $case ) {
+ list( $expected, $user, $page, $comment ) = $case;
+ $revision = Revision::newFromTitle( Title::makeTitle( NS_MEDIAWIKI, $page ) );
+ $ok = ApiTranslationReview::getReviewBlockers( $user, $revision );
+ $this->assertEquals( $expected, $ok, $comment );
+ }
+ }
+}
diff --git a/MLEB/Translate/tests/phpunit/data/AppleFFSTest1.strings b/MLEB/Translate/tests/phpunit/data/AppleFFSTest1.strings
new file mode 100644
index 00000000..305ac2ff
--- /dev/null
+++ b/MLEB/Translate/tests/phpunit/data/AppleFFSTest1.strings
@@ -0,0 +1,30 @@
+
+/* Class = "IBUIButton"; normalTitle = "Save"; ObjectID = "7Wa-ox-cAd"; */
+"7Wa-ox-cAd.normalTitle" = "Save";
+
+/* Class = "IBUIButton"; normalTitle = "◃"; ObjectID = "8HR-Gs-iaC"; */
+"8HR-Gs-iaC.normalTitle" = "◃";
+
+/* Class = "IBUITextField"; placeholder = "Enter captcha text from image above"; ObjectID = "AIA-vO-cLI"; */
+"AIA-vO-cLI.placeholder" = "Enter captcha text from image above";
+
+/* Class = "IBUIButton"; normalTitle = "Cancel"; ObjectID = "P0o-I6-RDJ"; */
+"P0o-I6-RDJ.normalTitle" = "Cancel";
+
+/* Class = "IBUIButton"; normalTitle = "Show another captcha"; ObjectID = "QGI-DM-j1P"; */
+"QGI-DM-j1P.normalTitle" = "Show another captcha";
+
+/* Class = "IBUIButton"; normalTitle = "≣"; ObjectID = "UVB-P9-soS"; */
+"UVB-P9-soS.normalTitle" = "≣";
+
+/* Class = "IBUILabel"; text = "Canonical Language"; ObjectID = "Vkd-3W-cSt"; */
+"Vkd-3W-cSt.text" = "Canonical Language";
+
+/* Class = "IBUIButton"; normalTitle = "Aあ"; ObjectID = "atP-34-Uka"; */
+"atP-34-Uka.normalTitle" = "Aあ";
+
+/* Class = "IBUIButton"; normalTitle = "◃"; ObjectID = "cq9-Zs-YsN"; */
+"cq9-Zs-YsN.normalTitle" = "◃";
+
+/* Class = "IBUILabel"; text = "Language"; ObjectID = "djd-0J-VZY"; */
+"djd-0J-VZY.text" = "Language";
diff --git a/MLEB/Translate/tests/phpunit/data/Example-result.i18n.php b/MLEB/Translate/tests/phpunit/data/Example-result.i18n.php
new file mode 100644
index 00000000..51b4f49f
--- /dev/null
+++ b/MLEB/Translate/tests/phpunit/data/Example-result.i18n.php
@@ -0,0 +1,55 @@
+<?php
+/**
+ * Internationalisation file for extension ....
+ *
+ * @file
+ * @ingroup Extensions
+*/
+
+$messages = array();
+
+$messages['en'] = array(
+ 'translatedmessage' => 'The database has been automatically locked due to inactivity from the administrators.',
+ 'fuzzymessage' => 'Auto-locks the wiki database if the sysops are all inactive for some time',
+);
+
+/** Message documentation (Message documentation)
+ * @author Purodha
+ * @author The Evil IP address
+ */
+$messages['qqq'] = array(
+ 'fuzzymessage' => '{{desc}}',
+);
+
+/** Afrikaans (Afrikaans)
+ * @author Naudefj
+ */
+$messages['af'] = array(
+ 'translatedmessage' => 'Die databasis is outomaties gesluit omdat die administrateurs nie aktief is nie.',
+ 'fuzzymessage' => "Sluit die wiki outomaties as die administrateurs vir 'n geruime tyd nie aktief is nie",
+);
+
+/** Gheg Albanian (Gegë)
+ * @author Bresta
+ */
+$messages['aln'] = array(
+ 'translatedmessage' => 'Baza e të dhânave âsht bllokue automatikisht për shkak të mosaktivitetit të administruesve.',
+ 'fuzzymessage' => 'E vetë-bllokon bazën e të dhânave nëse administruesit janë joaktiv për nji kohë të caktueme.',
+);
+
+/** Arabic (العربية)
+ * @author Meno25
+ * @author OsamaK
+ */
+$messages['ar'] = array(
+ 'translatedmessage' => 'تم غلق قاعدة البيانات تلقائيا نظرا لعدم نشاط مدراء النظام.',
+ 'fuzzymessage' => 'قفل قاعدة بيانات الويكي تلقائيا إذا كان كل مدراء النظام غير نشطين لبعض الوقت',
+);
+
+/** Finnish (suomi)
+ * @author Nike the bunny
+ */
+$messages['fi'] = array(
+ 'translatedmsg' => 'translation',
+ 'fuzzymsg' => 'translation', # Fuzzy
+);
diff --git a/MLEB/Translate/tests/phpunit/data/Example.i18n.php b/MLEB/Translate/tests/phpunit/data/Example.i18n.php
new file mode 100644
index 00000000..b27e428d
--- /dev/null
+++ b/MLEB/Translate/tests/phpunit/data/Example.i18n.php
@@ -0,0 +1,47 @@
+<?php
+/**
+ * Internationalisation file for extension ....
+ *
+ * @file
+ * @ingroup Extensions
+*/
+
+$messages = array();
+
+$messages['en'] = array(
+ 'translatedmessage' => 'The database has been automatically locked due to inactivity from the administrators.',
+ 'fuzzymessage' => 'Auto-locks the wiki database if the sysops are all inactive for some time',
+);
+
+/** Message documentation (Message documentation)
+ * @author Purodha
+ * @author The Evil IP address
+ */
+$messages['qqq'] = array(
+ 'fuzzymessage' => '{{desc}}',
+);
+
+/** Afrikaans (Afrikaans)
+ * @author Naudefj
+ */
+$messages['af'] = array(
+ 'translatedmessage' => 'Die databasis is outomaties gesluit omdat die administrateurs nie aktief is nie.',
+ 'fuzzymessage' => "Sluit die wiki outomaties as die administrateurs vir 'n geruime tyd nie aktief is nie",
+);
+
+/** Gheg Albanian (Gegë)
+ * @author Bresta
+ */
+$messages['aln'] = array(
+ 'translatedmessage' => 'Baza e të dhânave âsht bllokue automatikisht për shkak të mosaktivitetit të administruesve.',
+ 'fuzzymessage' => 'E vetë-bllokon bazën e të dhânave nëse administruesit janë joaktiv për nji kohë të caktueme.',
+);
+
+/** Arabic (العربية)
+ * @author Meno25
+ * @author OsamaK
+ */
+$messages['ar'] = array(
+ 'translatedmessage' => 'تم غلق قاعدة البيانات تلقائيا نظرا لعدم نشاط مدراء النظام.',
+ 'fuzzymessage' => 'قفل قاعدة بيانات الويكي تلقائيا إذا كان كل مدراء النظام غير نشطين لبعض الوقت',
+);
diff --git a/MLEB/Translate/tests/phpunit/data/IniFFSTest1.ini b/MLEB/Translate/tests/phpunit/data/IniFFSTest1.ini
new file mode 100644
index 00000000..372cef48
--- /dev/null
+++ b/MLEB/Translate/tests/phpunit/data/IniFFSTest1.ini
@@ -0,0 +1,8 @@
+; Author: The king of very small kingdom
+[fi]
+hello = Hello
+world = World!
+all = all = all
+
+foo.bar = bar
+quote = We're having fun? \ No newline at end of file
diff --git a/MLEB/Translate/tests/phpunit/data/IniFFSTest2.ini b/MLEB/Translate/tests/phpunit/data/IniFFSTest2.ini
new file mode 100644
index 00000000..96a93c79
--- /dev/null
+++ b/MLEB/Translate/tests/phpunit/data/IniFFSTest2.ini
@@ -0,0 +1,6 @@
+; Exported from $wgSitename
+; Author: Nike the bunny
+[fi]
+translatedmsg = translation
+; Fuzzy
+fuzzymsg = translation
diff --git a/MLEB/Translate/tests/phpunit/data/MediaWikiExtensionTest-conf1.yaml b/MLEB/Translate/tests/phpunit/data/MediaWikiExtensionTest-conf1.yaml
new file mode 100644
index 00000000..04488702
--- /dev/null
+++ b/MLEB/Translate/tests/phpunit/data/MediaWikiExtensionTest-conf1.yaml
@@ -0,0 +1,26 @@
+BASIC:
+ class: MediaWikiExtensionMessageGroup
+ id: ext-exampleextension
+ namespace: 8
+ label: Example Extension
+ descriptionmsg: exampleextension-desc
+ extensionurl: false
+
+FILES:
+ class: MediaWikiExtensionFFS
+ sourcePattern: %GROUPROOT%/mediawiki-extensions/extensions/ExampleExtension/ExampleExtension.i18n.php
+
+CHECKER:
+ class: MediaWikiMessageChecker
+ checks:
+ - pluralCheck
+ - pluralFormsCheck
+ - wikiParameterCheck
+ - wikiLinksCheck
+ - XhtmlCheck
+ - braceBalanceCheck
+ - pagenameMessagesCheck
+ - miscMWChecks
+
+INSERTABLES:
+ class: MediaWikiInsertablesSuggester
diff --git a/MLEB/Translate/tests/phpunit/data/MediaWikiExtensionTest-conf2.yaml b/MLEB/Translate/tests/phpunit/data/MediaWikiExtensionTest-conf2.yaml
new file mode 100644
index 00000000..3c49ebc3
--- /dev/null
+++ b/MLEB/Translate/tests/phpunit/data/MediaWikiExtensionTest-conf2.yaml
@@ -0,0 +1,45 @@
+BASIC:
+ class: MediaWikiExtensionMessageGroup
+ id: ext-wikimediamessages
+ namespace: 8
+ label: Wikimedia Messages
+ description: Plop
+
+FILES:
+ class: MediaWikiExtensionFFS
+ sourcePattern: %GROUPROOT%/mediawiki-extensions/extensions/WikimediaMessages/WikimediaMessages.i18n.php
+ aliasFile: FooBar.alias.php
+ magicFile: FooBar.magic.php
+ aliasFileSource: %GROUPROOT%/mediawiki-extensions/extensions/FooBar.alias.php
+ magicFileSource: %GROUPROOT%/mediawiki-extensions/extensions/FooBar.magic.php
+
+CHECKER:
+ class: MediaWikiMessageChecker
+ checks:
+ - pluralCheck
+ - pluralFormsCheck
+ - wikiParameterCheck
+ - wikiLinksCheck
+ - XhtmlCheck
+ - braceBalanceCheck
+ - pagenameMessagesCheck
+ - miscMWChecks
+
+INSERTABLES:
+ class: MediaWikiInsertablesSuggester
+
+MANGLER:
+ class: StringMatcher
+ prefix: wmf-
+ patterns:
+ - sidebar
+ - grouppage-Staff
+ - group-Staff
+ - group-Staff-member
+
+TAGS:
+ optional:
+ - grouppage-recursive-export
+ ignored:
+ - wmf-sidebar
+ - robots.txt
diff --git a/MLEB/Translate/tests/phpunit/data/MediaWikiExtensionTest-conf3.yaml b/MLEB/Translate/tests/phpunit/data/MediaWikiExtensionTest-conf3.yaml
new file mode 100644
index 00000000..e6f409c3
--- /dev/null
+++ b/MLEB/Translate/tests/phpunit/data/MediaWikiExtensionTest-conf3.yaml
@@ -0,0 +1,26 @@
+BASIC:
+ class: MediaWikiExtensionMessageGroup
+ id: ext-examplejsonextension
+ namespace: 8
+ label: Example JsonExtension
+ descriptionmsg: examplejsonextension-desc
+ extensionurl: false
+
+FILES:
+ class: JsonFFS
+ sourcePattern: %GROUPROOT%/mediawiki-extensions/extensions/ExampleJsonExtension/i18n/%CODE%.json
+
+CHECKER:
+ class: MediaWikiMessageChecker
+ checks:
+ - pluralCheck
+ - pluralFormsCheck
+ - wikiParameterCheck
+ - wikiLinksCheck
+ - XhtmlCheck
+ - braceBalanceCheck
+ - pagenameMessagesCheck
+ - miscMWChecks
+
+INSERTABLES:
+ class: MediaWikiInsertablesSuggester
diff --git a/MLEB/Translate/tests/phpunit/data/MediaWikiExtensionTest-conf4.yaml b/MLEB/Translate/tests/phpunit/data/MediaWikiExtensionTest-conf4.yaml
new file mode 100644
index 00000000..88fc2380
--- /dev/null
+++ b/MLEB/Translate/tests/phpunit/data/MediaWikiExtensionTest-conf4.yaml
@@ -0,0 +1,26 @@
+BASIC:
+ class: MediaWikiExtensionMessageGroup
+ id: ext-exampleextension2
+ namespace: 8
+ label: Example Extension 2
+ descriptionmsg: exampleextension2-desc
+ extensionurl: false
+
+FILES:
+ class: MediaWikiExtensionFFS
+ sourcePattern: %GROUPROOT%/mediawiki-extensions/extensions/foo
+
+CHECKER:
+ class: MediaWikiMessageChecker
+ checks:
+ - pluralCheck
+ - pluralFormsCheck
+ - wikiParameterCheck
+ - wikiLinksCheck
+ - XhtmlCheck
+ - braceBalanceCheck
+ - pagenameMessagesCheck
+ - miscMWChecks
+
+INSERTABLES:
+ class: MediaWikiInsertablesSuggester
diff --git a/MLEB/Translate/tests/phpunit/data/MixedSourceLanguageGroups.yaml b/MLEB/Translate/tests/phpunit/data/MixedSourceLanguageGroups.yaml
new file mode 100644
index 00000000..16d6ff41
--- /dev/null
+++ b/MLEB/Translate/tests/phpunit/data/MixedSourceLanguageGroups.yaml
@@ -0,0 +1,31 @@
+# This is for testing groups with different source languages
+
+BASIC:
+ id: EnglishGroup1
+ namespace: 8
+ label: English Group 1
+ class: FileBasedMessageGroup
+ sourcelanguage: en
+
+FILES:
+ class: SimpleFFS
+---
+BASIC:
+ id: EnglishGroup2
+ namespace: 8
+ label: English Group 2
+ class: FileBasedMessageGroup
+ sourcelanguage: en
+
+FILES:
+ class: SimpleFFS
+---
+BASIC:
+ id: TeluguGroup1
+ namespace: 8
+ label: Telugu Group 1
+ class: FileBasedMessageGroup
+ sourcelanguage: te
+
+FILES:
+ class: SimpleFFS
diff --git a/MLEB/Translate/tests/phpunit/data/ParentGroups.yaml b/MLEB/Translate/tests/phpunit/data/ParentGroups.yaml
new file mode 100644
index 00000000..f9bf36ad
--- /dev/null
+++ b/MLEB/Translate/tests/phpunit/data/ParentGroups.yaml
@@ -0,0 +1,95 @@
+TEMPLATE:
+ BASIC:
+ label: TestGroup
+ meta: yes
+ class: AggregateMessageGroup
+ namespace: 8
+
+# Test case 1 starts
+---
+BASIC:
+ id: root1
+
+GROUPS:
+ - twoparents
+
+---
+BASIC:
+ id: root2
+
+GROUPS:
+ - twoparents
+
+---
+BASIC:
+ class: MockFileBasedMessageGroup
+ id: twoparents
+
+GROUPS:
+ -
+
+# Test case 2 starts
+---
+BASIC:
+ class: MockFileBasedMessageGroup
+ id: oneparent-twopaths
+
+GROUPS:
+ -
+
+---
+BASIC:
+ id: root3
+
+GROUPS:
+ - sub1
+ - sub2
+
+---
+BASIC:
+ id: sub1
+
+GROUPS:
+ - oneparent-twopaths
+
+---
+BASIC:
+ id: sub2
+
+GROUPS:
+ - oneparent-twopaths
+
+
+# Test case 3 starts
+---
+BASIC:
+ class: MockFileBasedMessageGroup
+ id: multilevelnested
+
+GROUPS:
+ -
+
+---
+BASIC:
+ id: root4
+
+GROUPS:
+ - multilevelnested
+ - nested1
+ - nested2
+
+---
+BASIC:
+ id: nested1
+
+GROUPS:
+ - multilevelnested
+ - nested2
+
+---
+BASIC:
+ id: nested2
+
+GROUPS:
+ - multilevelnested
+
diff --git a/MLEB/Translate/tests/phpunit/data/jsontest_fi.json b/MLEB/Translate/tests/phpunit/data/jsontest_fi.json
new file mode 100644
index 00000000..7c3daec8
--- /dev/null
+++ b/MLEB/Translate/tests/phpunit/data/jsontest_fi.json
@@ -0,0 +1,7 @@
+{
+ "@metadata": {
+ "metakey": "metavalue"
+ },
+ "translatedmsg": "käännös",
+ "fuzzymsg": "väännös"
+}
diff --git a/MLEB/Translate/tests/phpunit/data/mediawiki-extensions.txt b/MLEB/Translate/tests/phpunit/data/mediawiki-extensions.txt
new file mode 100644
index 00000000..af963a8b
--- /dev/null
+++ b/MLEB/Translate/tests/phpunit/data/mediawiki-extensions.txt
@@ -0,0 +1,17 @@
+Wikimedia Messages
+format = php
+desc = Plop
+ignored = sidebar, robots.txt
+optional = grouppage-recursive-export
+prefix = wmf- | sidebar, grouppage-Staff, group-Staff, group-Staff-member
+aliasfile = FooBar.alias.php
+magicfile = FooBar.magic.php
+
+Example Extension
+format = php
+
+Example JsonExtension
+
+Example Extension 2
+format = php
+file = foo
diff --git a/MLEB/Translate/tests/phpunit/data/minimal.xlf b/MLEB/Translate/tests/phpunit/data/minimal.xlf
new file mode 100644
index 00000000..d8013cc8
--- /dev/null
+++ b/MLEB/Translate/tests/phpunit/data/minimal.xlf
@@ -0,0 +1,19 @@
+<?xml version="1.0"?>
+<xliff xmlns="urn:oasis:names:tc:xliff:document:1.2" version="1.2">
+<file source-language="EN" datatype="plaintext" original="file.ext">
+<body>
+<trans-unit id="1">
+<source>Hello world</source>
+<target>Hei maailma</target>
+</trans-unit>
+<trans-unit id="2">
+<source>Fuzzy message</source>
+<target state="needs-l10n">Fuzzy translation</target>
+</trans-unit>
+<trans-unit id="3">
+<source>This is <g id="1" ctype="bold">bold</g>.</source>
+<target>Tämä on <g id="1" ctype="bold">paksu</g>.</target>
+</trans-unit>
+</body>
+</file>
+</xliff>
diff --git a/MLEB/Translate/tests/phpunit/data/pythontest.py b/MLEB/Translate/tests/phpunit/data/pythontest.py
new file mode 100644
index 00000000..921383db
--- /dev/null
+++ b/MLEB/Translate/tests/phpunit/data/pythontest.py
@@ -0,0 +1,13 @@
+# -*- coding: utf-8 -*-
+msg = {
+ 'en': {
+ 'user': u'Users',
+ },
+ 'qqq': {
+ 'user': u'The people who report bugs and request features.',
+ },
+ # Author: Nike
+ 'encrypted': {
+ 'user': u'Käyttäjät',
+ }
+}
diff --git a/MLEB/Translate/tests/phpunit/ffs/AndroidXmlFFSTest.php b/MLEB/Translate/tests/phpunit/ffs/AndroidXmlFFSTest.php
new file mode 100644
index 00000000..8737d7b6
--- /dev/null
+++ b/MLEB/Translate/tests/phpunit/ffs/AndroidXmlFFSTest.php
@@ -0,0 +1,91 @@
+<?php
+/**
+ * Tests for AndroidXmlFFS
+ *
+ * @file
+ * @author Niklas Laxström
+ * @license GPL-2.0+
+ */
+
+class AndroidXmlFFSTest extends MediaWikiTestCase {
+
+ protected $groupConfiguration = array(
+ 'BASIC' => array(
+ 'class' => 'FileBasedMessageGroup',
+ 'id' => 'test-id',
+ 'label' => 'Test Label',
+ 'namespace' => 'NS_MEDIAWIKI',
+ 'description' => 'Test description',
+ ),
+ 'FILES' => array(
+ 'class' => 'AndroidXmlFFS',
+ 'sourcePattern' => '',
+ ),
+ );
+
+ public function testParsing() {
+ $file =
+<<<XML
+<?xml version="1.0" encoding="utf-8"?>
+<resources>
+ <string name="wpt_voicerec">Voice recording</string>
+ <string name="wpt_stillimage" fuzzy="true">Picture</string>
+ <plurals name="alot">
+ <item quantity="one">bunny</item>
+ <item quantity="other">bunnies</item>
+ </plurals>
+</resources>
+XML;
+
+ /**
+ * @var FileBasedMessageGroup $group
+ */
+ $group = MessageGroupBase::factory( $this->groupConfiguration );
+ $ffs = new AndroidXmlFFS( $group );
+ $parsed = $ffs->readFromVariable( $file );
+ $expected = array(
+ 'wpt_voicerec' => 'Voice recording',
+ 'wpt_stillimage' => '!!FUZZY!!Picture',
+ 'alot' => '{{PLURAL|one=bunny|other=bunnies}}',
+ );
+ $expected = array( 'MESSAGES' => $expected, 'AUTHORS' => array() );
+ $this->assertEquals( $expected, $parsed );
+ }
+
+ public function testWrite() {
+ /**
+ * @var FileBasedMessageGroup $group
+ */
+ $group = MessageGroupBase::factory( $this->groupConfiguration );
+ $ffs = new AndroidXmlFFS( $group );
+
+ $messages = array(
+ 'ko=26ra' => 'wawe',
+ 'foobar' => '!!FUZZY!!Kissa kala <koira> "a\'b',
+ 'amuch' => '{{PLURAL|one=bunny|other=bunnies}}',
+ );
+ $collection = new MockMessageCollection( $messages );
+
+ $xml = $ffs->writeIntoVariable( $collection );
+ $parsed = $ffs->readFromVariable( $xml );
+ $expected = array( 'MESSAGES' => $messages, 'AUTHORS' => array() );
+ $this->assertEquals( $expected, $parsed );
+ }
+}
+
+class MockMessageCollection extends MessageCollection {
+ public function __construct( $messages ) {
+ $keys = array_keys( $messages );
+ $this->keys = array_combine( $keys, $keys );
+ foreach ( $messages as $key => $value ) {
+ $m = new FatMessage( $key, $value );
+ $m->setTranslation( $value );
+ $this->messages[$key] = $m;
+ }
+
+ $this->messages['foobar']->addTag( 'fuzzy' );
+ }
+
+ public function filter( $type, $condition = true, $value = null ) {
+ }
+}
diff --git a/MLEB/Translate/tests/phpunit/ffs/AppleFFSTest.php b/MLEB/Translate/tests/phpunit/ffs/AppleFFSTest.php
new file mode 100644
index 00000000..7254752c
--- /dev/null
+++ b/MLEB/Translate/tests/phpunit/ffs/AppleFFSTest.php
@@ -0,0 +1,112 @@
+<?php
+/**
+ * The AppleFFS class is responsible for loading messages from .strings
+ * files, which are used in many iOS and Mac OS X projects.
+ * These tests check that the message keys are loaded, mangled and unmangled
+ * correctly.
+ * @author Brion Vibber
+ * @author Niklas Laxström
+ * @file
+ */
+
+class AppleFFSTest extends MediaWikiTestCase {
+
+ protected $groupConfiguration = array(
+ 'BASIC' => array(
+ 'class' => 'FileBasedMessageGroup',
+ 'id' => 'test-id',
+ 'label' => 'Test Label',
+ 'namespace' => 'NS_MEDIAWIKI',
+ 'description' => 'Test description',
+ ),
+ 'FILES' => array(
+ 'class' => 'AppleFFS',
+ ),
+ );
+
+ public function testParsing() {
+ $file =
+ <<<STRINGS
+// aslkfjlkasdfjklfsj
+/* You are reading the ".strings" entry. */
+/* It's all for fun and fun for all.
+On two lines! */
+// Author: Testy McTesterson
+"website" = "<nowiki>http://en.wikipedia.org/</nowiki>";
+"language" = "English";
+// Add spaces to the key
+"key with spaces" = "Value that can be looked up with \"key with spaces\".";
+"key-with-{curlies}" = "Value that can be looked up with \"key-with-{curlies}\".";
+STRINGS;
+
+ /**
+ * @var FileBasedMessageGroup $group
+ */
+ $group = MessageGroupBase::factory( $this->groupConfiguration );
+ $ffs = new AppleFFS( $group );
+ $parsed = $ffs->readFromVariable( $file );
+ $expected = array(
+ 'website' => '<nowiki>http://en.wikipedia.org/</nowiki>',
+ 'language' => 'English',
+ 'key with spaces' => 'Value that can be looked up with "key with spaces".',
+ // We expect this one to be mangled for storage
+ 'key-with-=7Bcurlies=7D' => 'Value that can be looked up with "key-with-{curlies}".',
+ );
+ $authors = array(
+ 'Testy McTesterson',
+ );
+ $expected = array( 'MESSAGES' => $expected, 'AUTHORS' => $authors );
+ $this->assertEquals( $expected, $parsed );
+ }
+
+ /**
+ * @dataProvider rowValuesProvider
+ */
+ public function testRowRoundtrip( $key, $value, $comment ) {
+ $write = AppleFFS::writeRow( $key, $value );
+ // Trim the trailing newline
+ $write = rtrim( $write );
+ list( $newkey, $newvalue ) = AppleFFS::readRow( $write );
+
+ $this->assertSame( $key, $newkey, "Key survives roundtrip in testdata: $comment" );
+ $this->assertSame( $value, $newvalue, "Value survives roundtrip in testdata: $comment" );
+ }
+
+ public function testFileRoundtrip() {
+ $infile = file_get_contents( __DIR__ . '/../data/AppleFFSTest1.strings' );
+ $group = MessageGroupBase::factory( $this->groupConfiguration );
+ $ffs = new AppleFFS( $group );
+ $parsed = $ffs->readFromVariable( $infile );
+
+ $outfile = '';
+ foreach( $parsed['MESSAGES'] as $key => $value ) {
+ $outfile .= AppleFFS::writeRow( $key, $value );
+ }
+ $reparsed = $ffs->readFromVariable( $outfile );
+
+ $this->assertSame( $parsed['MESSAGES'], $reparsed['MESSAGES'],
+ "Messages survive roundtrip through write and read" );
+ }
+
+ public function rowValuesProvider() {
+ return array(
+ array( 'key', 'value', 'simple row' ),
+ array( 'key', 'value', 'row with different sep' ),
+ array( 'key', 'val=ue', 'row with sep inside value' ),
+ array( 'k=ey', 'value', 'row with sep inside key' ),
+ array( '!key', 'value', 'row with ! at the beginning of key' ),
+ array( 'k!ey', 'value', 'row with ! inside key' ),
+ array( '#key', 'value', 'row with # at the beginning of key' ),
+ array( 'k#ey', 'value', 'row with # inside key' ),
+ array( 'k{ey}', 'value', 'row with { and } inside key' ),
+ array( 'k\\tey', 'value\\', 'row with escapes' ),
+ array( '01234', '13.34', 'row with numbers' ),
+ array( '\\n\\tкая', 'кая', 'row with annoying characteres' ),
+ array( '=', '', 'row with empty value' ),
+ array( '#k e\\=y#', '=v!\\=alue\\ \\\\', 'complex row' ),
+ array( 'Key with "quotes"', 'Value "with quotes" also', 'row with double-quotes' ),
+ array( 'Key with \\"quotes\\"', 'Value \\"with quotes\\" also',
+ 'row with double-quotes AND backslashes' ),
+ );
+ }
+}
diff --git a/MLEB/Translate/tests/phpunit/ffs/DtdFFSTest.php b/MLEB/Translate/tests/phpunit/ffs/DtdFFSTest.php
new file mode 100644
index 00000000..bb44c21c
--- /dev/null
+++ b/MLEB/Translate/tests/phpunit/ffs/DtdFFSTest.php
@@ -0,0 +1,54 @@
+<?php
+/**
+ * The DtdFFS class is responsible for loading messages from .dtd
+ * files.
+ * These tests check that the message keys are loaded and saved correctly.
+ * @author Niklas Laxström
+ * @author Amir E. Aharoni
+ * @file
+ * @license GPL-2.0+
+ */
+
+class DtdFFSTest extends MediaWikiTestCase {
+
+ protected $groupConfiguration = array(
+ 'BASIC' => array(
+ 'class' => 'FileBasedMessageGroup',
+ 'id' => 'test-id',
+ 'label' => 'Test Label',
+ 'namespace' => 'NS_MEDIAWIKI',
+ 'description' => 'Test description',
+ ),
+ 'FILES' => array(
+ 'class' => 'DtdFFS',
+ ),
+ );
+
+ public function testParsing() {
+ $file =
+ <<<DTD
+ <!--
+# Messages for Interlingua (interlingua)
+# Exported from translatewiki.net
+
+# Author: McDutchie
+-->
+<!ENTITY okawix.title "Okawix &okawix.vernum; - Navigator de Wikipedia">
+<!ENTITY okawix.back
+"Retro">
+DTD;
+
+ /**
+ * @var FileBasedMessageGroup $group
+ */
+ $group = MessageGroupBase::factory( $this->groupConfiguration );
+ $ffs = new DtdFFS( $group );
+ $parsed = $ffs->readFromVariable( $file );
+ $expected = array(
+ 'okawix.title' => 'Okawix &okawix.vernum; - Navigator de Wikipedia',
+ 'okawix.back' => 'Retro',
+ );
+ $expected = array( 'MESSAGES' => $expected, 'AUTHORS' => array( 'McDutchie' ) );
+ $this->assertEquals( $expected, $parsed );
+ }
+}
diff --git a/MLEB/Translate/tests/phpunit/ffs/GettextFFSTest.php b/MLEB/Translate/tests/phpunit/ffs/GettextFFSTest.php
new file mode 100644
index 00000000..f4e7a1f8
--- /dev/null
+++ b/MLEB/Translate/tests/phpunit/ffs/GettextFFSTest.php
@@ -0,0 +1,158 @@
+<?php
+/**
+ * Tests for Gettext message file format.
+ *
+ * @file
+ * @author Niklas Laxström
+ * @copyright Copyright © 2012-2013, Niklas Laxström
+ * @license GPL-2.0+
+ */
+
+/**
+ * @see GettextFFS
+ */
+class GettextFFSTest extends MediaWikiTestCase {
+ protected $groupConfiguration;
+
+ public function setUp() {
+ parent::setUp();
+ $this->groupConfiguration = array(
+ 'BASIC' => array(
+ 'class' => 'FileBasedMessageGroup',
+ 'id' => 'test-id',
+ 'label' => 'Test Label',
+ 'namespace' => 'NS_MEDIAWIKI',
+ 'description' => 'Test description',
+ ),
+ 'FILES' => array(
+ 'class' => 'GettextFFS',
+ 'sourcePattern' => __DIR__ . '/../data/gettext.po',
+ ),
+ );
+ }
+
+ /**
+ * @dataProvider provideMangling
+ */
+ public function testMangling( $expected, $item, $algo ) {
+ $this->assertEquals( $expected, GettextFFS::generateKeyFromItem( $item, $algo ) );
+ }
+
+ public static function provideMangling() {
+ return array(
+ array(
+ '3f9999051ce0bc6e98f43224fe6ee1c220e34e49-Hello!_world_loooooooooooooooo',
+ array( 'id' => 'Hello! world loooooooooooooooooooooooooooooooooooooooooong', 'ctxt' => 'baa' ),
+ 'legacy'
+ ),
+ array(
+ '3f9999-Hello!_world_loooooooooooooooo',
+ array( 'id' => 'Hello! world loooooooooooooooooooooooooooooooooooooooooong', 'ctxt' => 'baa' ),
+ 'simple'
+ ),
+
+ array(
+ '1437e478b59e220640bf530f7e3bac93950eb8ae-"¤_=FJQ"_¤r_£_ab',
+ array( 'id' => '"¤#=FJQ"<>¤r £}[]}%ab', 'ctxt' => false ),
+ 'legacy'
+ ),
+ array(
+ '1437e4-"¤#=FJQ"<>¤r_£}[]}%ab',
+ array( 'id' => '"¤#=FJQ"<>¤r £}[]}%ab', 'ctxt' => false ),
+ 'simple'
+ ),
+
+ );
+ }
+
+ public function testHashing() {
+ $item1 = array(
+ 'id' => 'a',
+ 'str' => 'b',
+ 'ctxt' => false,
+ );
+
+ $item2 = array(
+ 'id' => 'a',
+ 'str' => 'b',
+ 'ctxt' => '',
+ );
+
+ $this->assertNotEquals(
+ GettextFFS::generateKeyFromItem( $item1, 'legacy' ),
+ GettextFFS::generateKeyFromItem( $item2, 'legacy' ),
+ 'Empty msgctxt is different from no msgctxt'
+ );
+
+ $this->assertNotEquals(
+ GettextFFS::generateKeyFromItem( $item1, 'simple' ),
+ GettextFFS::generateKeyFromItem( $item2, 'simple' ),
+ 'Empty msgctxt is different from no msgctxt'
+ );
+
+ $this->assertEquals(
+ sha1( $item1['id'] ) . '-' . $item1['id'],
+ GettextFFS::generateKeyFromItem( $item1, 'legacy' )
+ );
+
+ $this->assertEquals(
+ substr( sha1( $item1['id'] ), 0, 6 ) . '-' . $item1['id'],
+ GettextFFS::generateKeyFromItem( $item1, 'simple' )
+ );
+ }
+
+ public function testMsgctxtExport() {
+ /** @var FileBasedMessageGroup $group */
+ $group = MessageGroupBase::factory( $this->groupConfiguration );
+ $ffs = new GettextFFS( $group );
+
+ $object = new ReflectionObject( $ffs );
+ $method = $object->getMethod( 'formatMessageBlock' );
+ $method->setAccessible( true );
+
+ $key = 'key';
+ $m = new FatMessage( 'key', 'definition' );
+ $m->setTranslation( 'translation' );
+ $trans = array();
+ $pot = array();
+ $pluralCount = 0;
+
+ $results = <<<GETTEXT
+#
+msgid "definition"
+msgstr "translation"
+
+#
+msgctxt ""
+msgid "definition"
+msgstr "translation"
+
+#
+msgctxt "context"
+msgid "definition"
+msgstr "translation"
+GETTEXT;
+
+ $results = preg_split( '/\n\n/', $results );
+
+ // Case 1: no context
+ $this->assertEquals(
+ $results[0],
+ trim( $method->invoke( $ffs, $key, $m, $trans, $pot, $pluralCount ) )
+ );
+
+ // Case 2: empty context
+ $pot['ctxt'] = '';
+ $this->assertEquals(
+ $results[1],
+ trim( $method->invoke( $ffs, $key, $m, $trans, $pot, $pluralCount ) )
+ );
+
+ // Case 3: context
+ $pot['ctxt'] = 'context';
+ $this->assertEquals(
+ $results[2],
+ trim( $method->invoke( $ffs, $key, $m, $trans, $pot, $pluralCount ) )
+ );
+ }
+}
diff --git a/MLEB/Translate/tests/phpunit/ffs/IniFFSTest.php b/MLEB/Translate/tests/phpunit/ffs/IniFFSTest.php
new file mode 100644
index 00000000..05250b20
--- /dev/null
+++ b/MLEB/Translate/tests/phpunit/ffs/IniFFSTest.php
@@ -0,0 +1,66 @@
+<?php
+/**
+ * The IniFFS class is responsible for loading messages from .ini
+ * files, which are sometimes used for translations.
+ * @author Niklas Laxström
+ * @copyright Copyright © 2012-2013, Niklas Laxström
+ * @license GPL-2.0+
+ * @file
+ */
+
+class IniFFSTest extends MediaWikiTestCase {
+
+ protected $groupConfiguration = array(
+ 'BASIC' => array(
+ 'class' => 'FileBasedMessageGroup',
+ 'id' => 'test-id',
+ 'label' => 'Test Label',
+ 'namespace' => 'NS_MEDIAWIKI',
+ 'description' => 'Test description',
+ ),
+ 'FILES' => array(
+ 'class' => 'IniFFS',
+ 'sourcePattern' => 'ignored',
+ ),
+ );
+
+ public function testParsing() {
+ $file = file_get_contents( __DIR__ . '/../data/IniFFSTest1.ini' );
+
+ /**
+ * @var FileBasedMessageGroup $group
+ */
+ $group = MessageGroupBase::factory( $this->groupConfiguration );
+ $ffs = new IniFFS( $group );
+
+ $this->assertTrue( IniFFS::isValid( $file ) );
+
+ $parsed = $ffs->readFromVariable( $file );
+ $expected = array(
+ 'hello' => 'Hello',
+ 'world' => 'World!',
+ 'all' => 'all = all',
+ 'foo.bar' => 'bar',
+ 'quote' => "We're having fun?",
+ );
+ $expected = array(
+ 'MESSAGES' => $expected,
+ 'AUTHORS' => array( 'The king of very small kingdom' )
+ );
+ $this->assertEquals( $expected, $parsed );
+ }
+
+ public function testExport() {
+ global $wgSitename;
+ $file = file_get_contents( __DIR__ . '/../data/IniFFSTest2.ini' );
+ $file = str_replace( '$wgSitename', $wgSitename, $file );
+
+ $collection = new MockMessageCollectionForExport();
+ /**
+ * @var FileBasedMessageGroup $group
+ */
+ $group = MessageGroupBase::factory( $this->groupConfiguration );
+ $ffs = new IniFFS( $group );
+ $this->assertEquals( $file, $ffs->writeIntoVariable( $collection ) );
+ }
+}
diff --git a/MLEB/Translate/tests/phpunit/ffs/JavaFFSTest.php b/MLEB/Translate/tests/phpunit/ffs/JavaFFSTest.php
new file mode 100644
index 00000000..f6e7d4e7
--- /dev/null
+++ b/MLEB/Translate/tests/phpunit/ffs/JavaFFSTest.php
@@ -0,0 +1,91 @@
+<?php
+/**
+ * The JavaFFS class is responsible for loading messages from .properties
+ * files, which are used in many JavaScript and Java projects.
+ * These tests check that the message keys are loaded, mangled and unmangled
+ * correctly.
+ * @author Niklas Laxström
+ * @file
+ */
+
+class JavaFFSTest extends MediaWikiTestCase {
+
+ protected $groupConfiguration = array(
+ 'BASIC' => array(
+ 'class' => 'FileBasedMessageGroup',
+ 'id' => 'test-id',
+ 'label' => 'Test Label',
+ 'namespace' => 'NS_MEDIAWIKI',
+ 'description' => 'Test description',
+ ),
+ 'FILES' => array(
+ 'class' => 'JavaFFS',
+ ),
+ );
+
+ public function testParsing() {
+ $file =
+ <<<PROPERTIES
+ # You are reading the ".properties" entry.
+! The exclamation mark can also mark text as comments.
+website = <nowiki>http://en.wikipedia.org/</nowiki>
+language = English
+# The backslash below tells the application to continue reading
+# the value onto the next line.
+message = Welcome to \
+ Wikipedia!
+# Add spaces to the key
+key\ with\ spaces = Value that can be looked up with "key with spaces".
+key-with-{curlies} = Value that can be looked up with "key-with-{curlies}".
+PROPERTIES;
+
+ /**
+ * @var FileBasedMessageGroup $group
+ */
+ $group = MessageGroupBase::factory( $this->groupConfiguration );
+ $ffs = new JavaFFS( $group );
+ $parsed = $ffs->readFromVariable( $file );
+ $expected = array(
+ 'website' => '<nowiki>http://en.wikipedia.org/</nowiki>',
+ 'language' => 'English',
+ 'message' => 'Welcome to Wikipedia!',
+ 'key with spaces' => 'Value that can be looked up with "key with spaces".',
+ // We expect this one to be mangled for storage
+ 'key-with-=7Bcurlies=7D' => 'Value that can be looked up with "key-with-{curlies}".',
+ );
+ $expected = array( 'MESSAGES' => $expected, 'AUTHORS' => array() );
+ $this->assertEquals( $expected, $parsed );
+ }
+
+ /**
+ * @dataProvider rowValuesProvider
+ */
+ public function testRowRoundtrip( $key, $sep, $value, $comment ) {
+ $write = JavaFFS::writeRow( $key, $sep, $value );
+ // Trim the trailing newline
+ $write = rtrim( $write );
+ list( $newkey, $newvalue ) = JavaFFS::readRow( $write, $sep );
+
+ $this->assertSame( $key, $newkey, "Key survives roundtrip in testdata: $comment" );
+ $this->assertSame( $value, $newvalue, "Value survives roundtrip in testdata: $comment" );
+ }
+
+ public function rowValuesProvider() {
+ return array(
+ array( 'key', '=', 'value', 'simple row' ),
+ array( 'key', ':', 'value', 'row with different sep' ),
+ array( 'key', '=', 'val=ue', 'row with sep inside value' ),
+ array( 'k=ey', '=', 'value', 'row with sep inside key' ),
+ array( '!key', '=', 'value', 'row with ! at the beginning of key' ),
+ array( 'k!ey', '=', 'value', 'row with ! inside key' ),
+ array( '#key', '=', 'value', 'row with # at the beginning of key' ),
+ array( 'k#ey', '=', 'value', 'row with # inside key' ),
+ array( 'k{ey}', '=', 'value', 'row with { and } inside key' ),
+ array( 'k\\tey', '=', 'value\\', 'row with escapes' ),
+ array( '01234', '=', '13.34', 'row with numbers' ),
+ array( '\\n\\tкая', '=', 'кая', 'row with annoying characteres' ),
+ array( '=', '=', '', 'row with empty value' ),
+ array( '#k e\\=y#', '=', '=v!\\=alue\\ \\\\', 'complex row' ),
+ );
+ }
+}
diff --git a/MLEB/Translate/tests/phpunit/ffs/JsonFFSTest.php b/MLEB/Translate/tests/phpunit/ffs/JsonFFSTest.php
new file mode 100644
index 00000000..0431fe49
--- /dev/null
+++ b/MLEB/Translate/tests/phpunit/ffs/JsonFFSTest.php
@@ -0,0 +1,144 @@
+<?php
+/**
+ * Tests for JSON message file format.
+ *
+ * @file
+ * @author Niklas Laxström
+ * @copyright Copyright © 2012-2013, Niklas Laxström
+ * @license GPL-2.0+
+ */
+
+/**
+ * @see JsonFFS
+ */
+class JsonFFSTest extends MediaWikiTestCase {
+
+ public function setUp() {
+ parent::setUp();
+ $this->groupConfiguration = array(
+ 'BASIC' => array(
+ 'class' => 'FileBasedMessageGroup',
+ 'id' => 'test-id',
+ 'label' => 'Test Label',
+ 'namespace' => 'NS_MEDIAWIKI',
+ 'description' => 'Test description',
+ ),
+ 'FILES' => array(
+ 'class' => 'JsonFFS',
+ 'sourcePattern' => __DIR__ . '/../data/jsontest_%CODE%.json',
+ 'targetPattern' => 'jsontest_%CODE%.json',
+ ),
+ );
+ }
+
+ protected $groupConfiguration;
+
+ /**
+ * @dataProvider jsonProvider
+ */
+ public function testParsing( $messages, $authors, $file ) {
+ /**
+ * @var FileBasedMessageGroup $group
+ */
+ $group = MessageGroupBase::factory( $this->groupConfiguration );
+ $ffs = new JsonFFS( $group );
+ $parsed = $ffs->readFromVariable( $file );
+ $expected = array(
+ 'MESSAGES' => $messages,
+ 'AUTHORS' => $authors,
+ 'METADATA' => array(),
+ );
+ $this->assertEquals( $expected, $parsed );
+
+ if ( $messages === array() ) {
+ $this->assertFalse( JsonFFS::isValid( $file ) );
+ } else {
+ $this->assertTrue( JsonFFS::isValid( $file ) );
+ }
+ }
+
+ public function jsonProvider() {
+ $values = array();
+
+ $file1 =
+ <<<JSON
+ {
+ "one": "jeden",
+ "two": "dwa",
+ "three": "trzy"
+}
+JSON;
+
+ $values[] = array(
+ array(
+ 'one' => 'jeden',
+ 'two' => 'dwa',
+ 'three' => 'trzy',
+ ),
+ array(),
+ $file1,
+ );
+
+ $file2 =
+ <<<JSON
+ {
+ "@metadata": {
+ "authors": ["Niklas", "Amir"]
+ },
+ "word": "слово"
+}
+JSON;
+
+ $values[] = array(
+ array( 'word' => 'слово' ),
+ array( 'Niklas', 'Amir' ),
+ $file2,
+ );
+
+ $file3 =
+ <<<JSON
+ <This is not
+Json!>@£0 file
+JSON;
+
+ $values[] = array(
+ array(),
+ array(),
+ $file3,
+ );
+
+ return $values;
+ }
+
+ public function testExport() {
+ $collection = new MockMessageCollectionForExport();
+ /**
+ * @var FileBasedMessageGroup $group
+ */
+ $group = MessageGroupBase::factory( $this->groupConfiguration );
+ $ffs = new JsonFFS( $group );
+ $data = $ffs->writeIntoVariable( $collection );
+ $parsed = $ffs->readFromVariable( $data );
+
+ $this->assertEquals(
+ array( 'Nike the bunny' ),
+ $parsed['AUTHORS'],
+ 'Authors are exported'
+ );
+ $this->assertArrayHasKey( 'fuzzymsg', $parsed['MESSAGES'], 'fuzzy message is exported' );
+ $this->assertArrayHasKey(
+ 'translatedmsg',
+ $parsed['MESSAGES'],
+ 'translated message is exported'
+ );
+ if ( array_key_exists( 'untranslatedmsg', $parsed['MESSAGES'] ) ) {
+ $this->fail( 'Untranslated messages should not be exported' );
+ }
+
+ $this->assertEquals(
+ 'metavalue',
+ $parsed['METADATA']['metakey'],
+ 'metadata is preserved'
+ );
+ }
+}
diff --git a/MLEB/Translate/tests/phpunit/ffs/MediaWikiExtensionFFSTest.php b/MLEB/Translate/tests/phpunit/ffs/MediaWikiExtensionFFSTest.php
new file mode 100644
index 00000000..98a6c847
--- /dev/null
+++ b/MLEB/Translate/tests/phpunit/ffs/MediaWikiExtensionFFSTest.php
@@ -0,0 +1,110 @@
+<?php
+/**
+ * Tests for MediaWikiExtensionFFS
+ * @author Niklas Laxström
+ * @file
+ * @copyright Copyright © 2012-2013, Niklas Laxström
+ * @license GPL-2.0+
+ */
+
+/**
+ * @see MediaWikiExtensionFFS
+ */
+class MediaWikiExtensionFFSTest extends MediaWikiTestCase {
+ protected $conf = array(
+ 'BASIC' => array(
+ 'class' => 'MediaWikiExtensionMessageGroup',
+ 'id' => 'test-id',
+ 'label' => 'Test Label',
+ 'namespace' => 'NS_MEDIAWIKI',
+ 'description' => 'Test description',
+ ),
+ 'FILES' => array(
+ 'class' => 'MediaWikiExtensionFFS',
+ ),
+ );
+
+ protected function setUp() {
+ parent::setUp();
+ $this->setMwGlobals( array(
+ 'wgTranslateDocumentationLanguageCode' => 'qqq',
+ ) );
+ }
+
+ public function testWriteReal() {
+ if ( !method_exists( 'LanguageNames', 'getNames' ) ) {
+ $this->markTestSkipped( 'Cldr extension is not installed' );
+ }
+
+ $this->conf['FILES']['sourcePattern'] = __DIR__ . '/../data/Example.i18n.php';
+ $ffs = MessageGroupBase::factory( $this->conf )->getFFS();
+ $obj = new ReflectionObject( $ffs );
+ $method = $obj->getMethod( 'writeReal' );
+ $method->setAccessible( true );
+ $collection = new MockMessageCollectionForExport();
+ $result = $method->invoke( $ffs, $collection );
+
+ $expected = file_get_contents( __DIR__ . '/../data/Example-result.i18n.php' );
+ $this->assertEquals( $expected, $result );
+ }
+
+ public function testGenerateMessageBlock() {
+ $ffs = MessageGroupBase::factory( $this->conf )->getFFS();
+ $obj = new ReflectionObject( $ffs );
+ $method = $obj->getMethod( 'generateMessageBlock' );
+ $method->setAccessible( true );
+ $collection = new MockMessageCollectionForExport();
+ $mangler = StringMatcher::emptyMatcher();
+
+ $result = $method->invoke( $ffs, $collection, $mangler );
+
+ $expected = "\n\t'translatedmsg' => 'translation',\n\t'fuzzymsg' => 'translation', # Fuzzy\n";
+ $this->assertEquals( $expected, $result );
+ }
+
+ /**
+ * @dataProvider provideQuotableStrings
+ */
+ public function testQuote( $source, $expected ) {
+ $class = new ReflectionClass( 'MediaWikiExtensionFFS' );
+ $method = $class->getMethod( 'quote' );
+ $method->setAccessible( true );
+ $result = $method->invoke( null, $source );
+ $this->assertEquals( $expected, $result );
+ }
+
+ public static function provideQuotableStrings() {
+ return array(
+ array( 'key', "'key'" ),
+ array( 'normal $1 variable', "'normal $1 variable'" ),
+ array( 'abnormal $foo variable', "'abnormal \$foo variable'" ),
+ array( 'quote " and quote \'', "'quote \" and quote \\''" ),
+ array( 'quote " and quote \' twice \'', "\"quote \\\" and quote ' twice '\"" ),
+ );
+ }
+
+ /**
+ * @dataProvider provideComments
+ */
+ public function testParseAuthorsFromString( $source, $expected ) {
+ $class = new ReflectionClass( 'MediaWikiExtensionFFS' );
+ $method = $class->getMethod( 'parseAuthorsFromString' );
+ $method->setAccessible( true );
+ $result = $method->invoke( null, $source );
+ $this->assertEquals( $expected, $result );
+ }
+
+ public static function provideComments() {
+ $comment =
+ <<<PHP
+ /** Message documentation (Message documentation)
+ * @author Purodha
+ * @author The Evil IP address
+ */
+PHP;
+
+ return array(
+ array( $comment, array( 'Purodha', 'The Evil IP address' ) ),
+ );
+ }
+}
diff --git a/MLEB/Translate/tests/phpunit/ffs/RubyYamlFFSTest.php b/MLEB/Translate/tests/phpunit/ffs/RubyYamlFFSTest.php
new file mode 100644
index 00000000..3629b2e9
--- /dev/null
+++ b/MLEB/Translate/tests/phpunit/ffs/RubyYamlFFSTest.php
@@ -0,0 +1,125 @@
+<?php
+
+class RubyYamlFFSTest extends MediaWikiTestCase {
+ /** @var MessageGroup */
+ protected $group;
+
+ /** @var FFS */
+ protected $ffs;
+
+ protected $groupConfiguration = array(
+ 'BASIC' => array(
+ 'class' => 'FileBasedMessageGroup',
+ 'id' => 'test-id',
+ 'label' => 'Test Label',
+ 'namespace' => 'NS_MEDIAWIKI',
+ 'description' => 'Test description',
+ ),
+ 'FILES' => array(
+ 'class' => 'RubyYamlFFS',
+ ),
+ );
+
+ protected function setUp() {
+ parent::setUp();
+ $group = MessageGroupBase::factory( $this->groupConfiguration );
+ /** @var YamlFFS $ffs */
+ $this->ffs = $group->getFFS();
+ }
+
+ public function testFlattenPluralWithNoPlurals() {
+ $input = array(
+ 'much' => 'a lot',
+ 'less' => 'not so much',
+ );
+ $output = false;
+ $this->assertEquals( $output, $this->ffs->flattenPlural( $input ) );
+ }
+
+ public function testFlattenPluralWithPlurals() {
+ $input = array(
+ 'one' => 'just a tiny bit',
+ 'two' => 'not so much',
+ 'other' => 'maybe a lot',
+ );
+ $output = '{{PLURAL|one=just a tiny bit|two=not so much|maybe a lot}}';
+ $this->assertEquals( $output, $this->ffs->flattenPlural( $input ) );
+ }
+
+ public function testFlattenPluralWithArrays() {
+ $input = array(
+ 'one' => array(
+ 'multi' => 'he lives in a multistorey house',
+ 'row' => 'he lives in a row house',
+ ),
+ 'other' => array(
+ 'multi' => 'he lives in mountain cave',
+ 'row' => 'he lives in a cave near the river',
+ ),
+ );
+ $output = false;
+ $this->assertEquals( $output, $this->ffs->flattenPlural( $input ) );
+ }
+
+ /**
+ * @expectedException MWException
+ * @expectedExceptionMessage Reserved plural keywords mixed with other keys
+ * @dataProvider flattenPluralsWithMixedKeywordsProvider
+ */
+
+ public function testFlattenPluralsWithMixedKeywords( $input, $comment ) {
+ $this->ffs->flattenPlural( $input );
+ }
+
+ public function flattenPluralsWithMixedKeywordsProvider() {
+ return array(
+ array(
+ array(
+ 'carrot' => 'I like carrots',
+ 'other' => 'I like milk',
+ ),
+ 'reserved keyword at the end',
+ ),
+ array(
+ array(
+ 'one' => 'I am the one leader',
+ 'club' => 'I am the club leader',
+ ),
+ 'reserved keyword at the beginning',
+ )
+ );
+ }
+
+ /**
+ * @dataProvider unflattenDataProvider
+ */
+ public function testUnflattenPural( $key, $value, $result ) {
+ $this->assertEquals(
+ $result,
+ $this->ffs->unflattenPlural( $key, $value )
+ );
+ }
+
+ public function unflattenDataProvider() {
+ return array(
+ array( 'key', '{{PLURAL}}', false ),
+ array( 'key', 'value', array( 'key' => 'value' ) ),
+ array( 'key', '{{PLURAL|one=cat|other=cats}}',
+ array( 'key.one' => 'cat', 'key.other' => 'cats' )
+ ),
+ array( 'key', '{{PLURAL|one=шляху %{related_ways}|шляхоў %{related_ways}}}',
+ array(
+ 'key.one' => 'шляху %{related_ways}',
+ 'key.other' => 'шляхоў %{related_ways}'
+ )
+ ),
+ array( 'key', '{{PLURAL|foo=cat}}',
+ array( 'key.other' => 'foo=cat' )
+ ),
+ array( 'key', '{{PLURAL|zero=0|one=1|two=2|few=3|many=160|other=898}}',
+ array( 'key.zero' => '0', 'key.one' => '1', 'key.two' => '2',
+ 'key.few' => '3', 'key.many' => '160', 'key.other' => '898' )
+ ),
+ );
+ }
+}
diff --git a/MLEB/Translate/tests/phpunit/ffs/XliffFFSTest.php b/MLEB/Translate/tests/phpunit/ffs/XliffFFSTest.php
new file mode 100644
index 00000000..3974338f
--- /dev/null
+++ b/MLEB/Translate/tests/phpunit/ffs/XliffFFSTest.php
@@ -0,0 +1,48 @@
+<?php
+/**
+ * Tests for XliffFFS
+ *
+ * @file
+ * @author Niklas Laxström
+ * @license GPL-2.0+
+ */
+
+class XliffFFSTest extends MediaWikiTestCase {
+ protected $groupConfiguration = array(
+ 'BASIC' => array(
+ 'class' => 'FileBasedMessageGroup',
+ 'id' => 'test-id',
+ 'label' => 'Test Label',
+ 'namespace' => 'NS_MEDIAWIKI',
+ 'description' => 'Test description',
+ ),
+ 'FILES' => array(
+ 'class' => 'XliffFFS',
+ 'sourcePattern' => '',
+ ),
+ );
+
+ public function testParsing() {
+ $group = MessageGroupBase::factory( $this->groupConfiguration );
+ $ffs = new XliffFFS( $group );
+
+ $file = file_get_contents( __DIR__ . '/../data/minimal.xlf' );
+ $parsed = $ffs->readFromVariable( $file, 'target' );
+ $expected = array(
+ '1' => 'Hei maailma',
+ '2' => TRANSLATE_FUZZY . 'Fuzzy translation',
+ '3' => 'Tämä on <g id="1" ctype="bold">paksu</g>.',
+ );
+ $expected = array( 'MESSAGES' => $expected );
+ $this->assertEquals( $expected, $parsed );
+
+ $parsed = $ffs->readFromVariable( $file, 'source' );
+ $expected = array(
+ '1' => 'Hello world',
+ '2' => 'Fuzzy message',
+ '3' => 'This is <g id="1" ctype="bold">bold</g>.',
+ );
+ $expected = array( 'MESSAGES' => $expected );
+ $this->assertEquals( $expected, $parsed );
+ }
+}
diff --git a/MLEB/Translate/tests/phpunit/insertables/MediaWikiInsertablesSuggesterTest.php b/MLEB/Translate/tests/phpunit/insertables/MediaWikiInsertablesSuggesterTest.php
new file mode 100644
index 00000000..a96eca2a
--- /dev/null
+++ b/MLEB/Translate/tests/phpunit/insertables/MediaWikiInsertablesSuggesterTest.php
@@ -0,0 +1,35 @@
+<?php
+/**
+ * Tests for class MediaWikiInsertablesSuggester
+ *
+ * @file
+ * @author Niklas Laxström
+ * @license GPL-2.0+
+ */
+
+class MediaWikiInsertablesSuggesterTest extends MediaWikiTestCase {
+
+ /**
+ * @dataProvider getInsertablesProvider
+ */
+ public function testGetInsertables( $input, $expected ) {
+ $suggester = new MediaWikiInsertablesSuggester();
+ $this->assertEquals( $expected, $suggester->getInsertables( $input ) );
+ }
+
+ public function getInsertablesProvider() {
+ return array(
+ array( 'Hi $1', array(
+ new Insertable( '$1', '$1', '' )
+ ) ),
+ array( '{{GENDER:$1|he|she}}', array(
+ new Insertable( '$1', '$1', '' ),
+ new Insertable( 'GENDER:$1', '{{GENDER:$1|', '}}' ),
+ ) ),
+ // Parameterless gender
+ array( '{{GENDER:|he|she}}', array(
+ new Insertable( 'GENDER:', '{{GENDER:|', '}}' ),
+ ) ),
+ );
+ }
+}
diff --git a/MLEB/Translate/tests/phpunit/insertables/TranslatablePageInsertablesSuggesterTest.php b/MLEB/Translate/tests/phpunit/insertables/TranslatablePageInsertablesSuggesterTest.php
new file mode 100644
index 00000000..c5089873
--- /dev/null
+++ b/MLEB/Translate/tests/phpunit/insertables/TranslatablePageInsertablesSuggesterTest.php
@@ -0,0 +1,38 @@
+<?php
+/**
+ * Tests for class TranslatablePageInsertablesSuggester
+ *
+ * @file
+ * @author Niklas Laxström
+ * @license GPL-2.0+
+ */
+
+class TranslatablePageInsertablesSuggesterTest extends MediaWikiInsertablesSuggesterTest {
+ /**
+ * @dataProvider getInsertablesProvider
+ */
+ public function testGetInsertables( $input, $expected ) {
+ $suggester = new TranslatablePageInsertablesSuggester();
+ $this->assertEquals( $expected, $suggester->getInsertables( $input ) );
+ }
+
+ public function getInsertablesProvider() {
+ return array(
+ array(
+ 'Hi $1, I am $myname $myLastName.',
+ array(
+ new Insertable( '$1', '$1', '' ),
+ new Insertable( '$myname', '$myname', '' ),
+ new Insertable( '$myLastName', '$myLastName', '' ),
+ )
+ ),
+ array(
+ 'Insertables can $have-hyphens and $number9',
+ array(
+ new Insertable( '$have-hyphens', '$have-hyphens', '' ),
+ new Insertable( '$number9', '$number9', '' ),
+ )
+ ),
+ );
+ }
+}
diff --git a/MLEB/Translate/tests/phpunit/messageindexdata.ser b/MLEB/Translate/tests/phpunit/messageindexdata.ser
new file mode 100644
index 00000000..a28d8793
--- /dev/null
+++ b/MLEB/Translate/tests/phpunit/messageindexdata.ser
@@ -0,0 +1 @@
+a:49286:{s:19:"8:filereadonlyerror";s:4:"core";s:20:"8:userlogout-summary";R:2;s:15:"8:emaildisabled";R:2;s:21:"8:changeemail-summary";R:2;s:10:"8:creating";R:2;s:20:"8:defaultmessagetext";R:2;s:24:"8:changepassword-summary";R:2;s:35:"8:upload-copy-upload-invalid-domain";R:2;s:22:"8:backend-fail-maxsize";R:2;s:28:"8:filejournal-fail-dbconnect";R:2;s:26:"8:filejournal-fail-dbquery";R:2;s:24:"8:sharedupload-desc-edit";R:2;s:26:"8:sharedupload-desc-create";R:2;s:26:"8:unusedcategories-summary";R:2;s:22:"8:unusedimages-summary";R:2;s:25:"8:allpages-hide-redirects";R:2;s:30:"8:deletedcontributions-summary";R:2;s:20:"8:linksearch-summary";R:2;s:19:"8:emailuser-summary";R:2;s:19:"8:watchlist-summary";R:2;s:18:"8:undelete-summary";R:2;s:23:"8:contributions-summary";R:2;s:33:"8:sp-contributions-footer-newbies";R:2;s:17:"8:unblock-summary";R:2;s:18:"8:movepage-summary";R:2;s:16:"8:export-summary";R:2;s:16:"8:import-summary";R:2;s:23:"8:editwatchlist-summary";R:2;s:17:"8:version-summary";R:2;s:14:"8:tags-summary";R:2;s:22:"8:comparepages-summary";R:2;s:49:"1242:website-activity_logs.community_activity_log";s:12:"out-eol-site";s:47:"1242:website-activity_logs.curator_activity_log";R:3;s:37:"1202:freecol.desktopentry.genericname";s:11:"out-freecol";s:33:"1202:freecol.desktopentry.comment";R:4;s:7:"1202:ok";R:4;s:11:"1202:cancel";R:4;s:10:"1202:reset";R:4;s:9:"1202:save";R:4;s:12:"1202:display";R:4;s:8:"1202:yes";R:4;s:7:"1202:no";R:4;s:10:"1202:close";R:4;s:12:"1202:options";R:4;s:8:"1202:and";R:4;s:9:"1202:load";R:4;s:11:"1202:unload";R:4;s:9:"1202:fill";R:4;s:11:"1202:rename";R:4;s:14:"1202:abilities";R:4;s:14:"1202:modifiers";R:4;s:9:"1202:true";R:4;s:10:"1202:false";R:4;s:9:"1202:more";R:4;s:9:"1202:none";R:4;s:12:"1202:nothing";R:4;s:8:"1202:all";R:4;s:24:"1202:notapplicable.short";R:4;s:10:"1202:rules";R:4;s:15:"1202:difficulty";R:4;s:9:"1202:test";R:4;s:10:"1202:music";R:4;s:12:"1202:current";R:4;s:9:"1202:help";R:4;s:13:"1202:list.add";R:4;s:16:"1202:list.remove";R:4;s:12:"1202:list.up";R:4;s:14:"1202:list.down";R:4;s:14:"1202:list.edit";R:4;s:16:"1202:file.browse";R:4;s:18:"1202:option.remove";R:4;s:10:"1202:width";R:4;s:11:"1202:height";R:4;s:21:"1202:integerabovezero";R:4;s:24:"1202:newlanguageselected";R:4;s:31:"1202:autodetectlanguageselected";R:4;s:21:"1202:singleplayergame";R:4;s:24:"1202:joinmultiplayergame";R:4;s:25:"1202:startmultiplayergame";R:4;s:9:"1202:name";R:4;s:9:"1202:host";R:4;s:9:"1202:port";R:4;s:12:"1202:players";R:4;s:17:"1202:playernation";R:4;s:14:"1202:gamestate";R:4;s:22:"1202:startserveronport";R:4;s:17:"1202:publicserver";R:4;s:22:"1202:defaultplayername";R:4;s:18:"1202:getserverlist";R:4;s:12:"1202:connect";R:4;s:17:"1202:availability";R:4;s:26:"1202:nationstate.available";R:4;s:24:"1202:nationstate.ai_only";R:4;s:30:"1202:nationstate.not_available";R:4;s:14:"1202:verysmall";R:4;s:10:"1202:small";R:4;s:11:"1202:medium";R:4;s:10:"1202:large";R:4;s:14:"1202:verylarge";R:4;s:12:"1202:verydry";R:4;s:8:"1202:dry";R:4;s:11:"1202:normal";R:4;s:8:"1202:wet";R:4;s:12:"1202:verywet";R:4;s:9:"1202:cold";R:4;s:11:"1202:chilly";R:4;s:14:"1202:temperate";R:4;s:9:"1202:warm";R:4;s:8:"1202:hot";R:4;s:14:"1202:startgame";R:4;s:16:"1202:gameoptions";R:4;s:24:"1202:mapgeneratoroptions";R:4;s:13:"1202:iamready";R:4;s:32:"1202:playeroptions.selectplayers";R:4;s:34:"1202:playeroptions.europeanplayers";R:4;s:32:"1202:playeroptions.nativeplayers";R:4;s:23:"1202:playeroptions.none";R:4;s:24:"1202:playeroptions.fixed";R:4;s:29:"1202:playeroptions.selectable";R:4;s:31:"1202:playeroptions.selectcolors";R:4;s:37:"1202:playeroptions.nationaladvantages";R:4;s:11:"1202:player";R:4;s:11:"1202:nation";R:4;s:10:"1202:color";R:4;s:14:"1202:advantage";R:4;s:10:"1202:moves";R:4;s:18:"1202:sonsofliberty";R:4;s:13:"1202:building";R:4;s:10:"1202:goods";R:4;s:15:"1202:goldamount";R:4;s:19:"1202:cargooncarrier";R:4;s:23:"1202:cargooncarrierlong";R:4;s:18:"1202:outsidecolony";R:4;s:28:"1202:colonypanel.buybuilding";R:4;s:27:"1202:colonypanel.rebellabel";R:4;s:30:"1202:colonypanel.royalistlabel";R:4;s:27:"1202:colonypanel.bonuslabel";R:4;s:32:"1202:colonypanel.populationlabel";R:4;s:34:"1202:colonypanel.minimumcolonysize";R:4;s:34:"1202:colonypanel.currentlybuilding";R:4;s:27:"1202:colonypanel.buildqueue";R:4;s:29:"1202:colonypanel.clicktobuild";R:4;s:28:"1202:colonypanel.compactview";R:4;s:24:"1202:colonypanel.showall";R:4;s:28:"1202:colonypanel.unbuildable";R:4;s:28:"1202:colonypanel.notbesttile";R:4;s:33:"1202:colonypanel.reducepopulation";R:4;s:25:"1202:colonypanel.requires";R:4;s:35:"1202:colonypanel.populationtoosmall";R:4;s:22:"1202:colonypanel.units";R:4;s:26:"1202:colonypanel.buildings";R:4;s:10:"1202:turns";R:4;s:26:"1202:turnstocomplete.short";R:4;s:25:"1202:turnstocomplete.long";R:4;s:15:"1202:waitingfor";R:4;s:20:"1202:chooseimmigrant";R:4;s:17:"1202:abstractunit";R:4;s:13:"1202:colonist";R:4;s:14:"1202:colonists";R:4;s:11:"1202:tories";R:4;s:12:"1202:crosses";R:4;s:12:"1202:mission";R:4;s:11:"1202:spring";R:4;s:11:"1202:autumn";R:4;s:14:"1202:year.year";R:4;s:16:"1202:year.spring";R:4;s:16:"1202:year.autumn";R:4;s:43:"1202:warofindependence.independencedeclared";R:4;s:27:"1202:purchasedialog.clickon";R:4;s:26:"1202:recruitdialog.clickon";R:4;s:24:"1202:traindialog.clickon";R:4;s:21:"1202:traindialog.done";R:4;s:31:"1202:quitdialog.areyousure.text";R:4;s:33:"1202:retiredialog.areyousure.text";R:4;s:34:"1202:foundingfatherdialog.nominate";R:4;s:29:"1202:errormessage.showlogfile";R:4;s:21:"1202:tradeitem.colony";R:4;s:26:"1202:tradeitem.colony.long";R:4;s:19:"1202:tradeitem.gold";R:4;s:24:"1202:tradeitem.gold.long";R:4;s:20:"1202:tradeitem.goods";R:4;s:21:"1202:tradeitem.stance";R:4;s:19:"1202:tradeitem.unit";R:4;s:28:"1202:negotiationdialog.offer";R:4;s:29:"1202:negotiationdialog.demand";R:4;s:31:"1202:negotiationdialog.exchange";R:4;s:30:"1202:negotiationdialog.summary";R:4;s:29:"1202:negotiationdialog.accept";R:4;s:29:"1202:negotiationdialog.cancel";R:4;s:27:"1202:negotiationdialog.send";R:4;s:26:"1202:negotiationdialog.add";R:4;s:30:"1202:negotiationdialog.nothing";R:4;s:36:"1202:negotiationdialog.offeraccepted";R:4;s:36:"1202:negotiationdialog.offerrejected";R:4;s:25:"1202:transaction.purchase";R:4;s:22:"1202:transaction.price";R:4;s:21:"1202:transaction.sale";R:4;s:20:"1202:transaction.tax";R:4;s:20:"1202:transaction.net";R:4;s:17:"1202:tension.wary";R:4;s:18:"1202:tension.happy";R:4;s:20:"1202:tension.content";R:4;s:23:"1202:tension.displeased";R:4;s:18:"1202:tension.angry";R:4;s:20:"1202:tension.hateful";R:4;s:12:"1202:tension";R:4;s:15:"1202:nosuchfile";R:4;s:17:"1202:gotothistile";R:4;s:15:"1202:gotoeurope";R:4;s:19:"1202:attacktileodds";R:4;s:14:"1202:dumpcargo";R:4;s:9:"1202:tile";R:4;s:22:"1202:filter.savedgames";R:4;s:23:"1202:filter.gameoptions";R:4;s:36:"1202:filter.gameoptionsandsavedgames";R:4;s:15:"1202:filter.xml";R:4;s:16:"1202:underrepair";R:4;s:33:"1202:eventpanel.meeting_europeans";R:4;s:31:"1202:eventpanel.meeting_natives";R:4;s:29:"1202:eventpanel.meeting_aztec";R:4;s:28:"1202:eventpanel.meeting_inca";R:4;s:23:"1202:tutorial.startgame";R:4;s:25:"1202:tutorial.buildcolony";R:4;s:11:"1202:colony";R:4;s:15:"1202:settlement";R:4;s:13:"1202:newworld";R:4;s:26:"1202:loadingsavegame.title";R:4;s:33:"1202:loadingsavegame.singleplayer";R:4;s:39:"1202:loadingsavegame.privatemultiplayer";R:4;s:38:"1202:loadingsavegame.publicmultiplayer";R:4;s:31:"1202:loadingsavegame.servername";R:4;s:25:"1202:loadingsavegame.port";R:4;s:20:"1202:editor.resource";R:4;s:28:"1202:editor.removesettlement";R:4;s:33:"1202:editor.removesettlement.text";R:4;s:19:"1202:editor.mapsize";R:4;s:29:"1202:buildingtooltip.breeding";R:4;s:17:"1202:menubar.game";R:4;s:17:"1202:menubar.view";R:4;s:18:"1202:menubar.tools";R:4;s:19:"1202:menubar.orders";R:4;s:22:"1202:menubar.colopedia";R:4;s:20:"1202:menubar.teacher";R:4;s:18:"1202:menubar.debug";R:4;s:34:"1202:menubar.debug.showcoordinates";R:4;s:34:"1202:menubar.debug.showcolonyvalue";R:4;s:41:"1202:menubar.debug.showcommonoutpostvalue";R:4;s:28:"1202:menubar.debug.skipturns";R:4;s:36:"1202:menubar.debug.stopskippingturns";R:4;s:30:"1202:menubar.debug.addbuilding";R:4;s:36:"1202:menubar.debug.addfoundingfather";R:4;s:29:"1202:menubar.debug.runmonarch";R:4;s:26:"1202:menubar.debug.addgold";R:4;s:33:"1202:menubar.debug.addimmigration";R:4;s:29:"1202:menubar.debug.addliberty";R:4;s:44:"1202:menubar.debug.steprandomnumbergenerator";R:4;s:30:"1202:menubar.debug.randomvalue";R:4;s:32:"1202:menubar.debug.displaypanels";R:4;s:38:"1202:menubar.debug.displaymonarchpanel";R:4;s:38:"1202:menubar.debug.displayvictorypanel";R:4;s:38:"1202:menubar.debug.displayeuropestatus";R:4;s:38:"1202:menubar.debug.displayerrormessage";R:4;s:24:"1202:menubar.debug.useai";R:4;s:34:"1202:menubar.debug.revealentiremap";R:4;s:30:"1202:menubar.debug.comparemaps";R:4;s:44:"1202:menubar.debug.comparemaps.checkcomplete";R:4;s:38:"1202:menubar.debug.comparemaps.problem";R:4;s:35:"1202:menubar.debug.showresourcekeys";R:4;s:29:"1202:menubar.debug.statistics";R:4;s:32:"1202:menubar.debug.memorymanager";R:4;s:43:"1202:menubar.debug.memorymanager.freememory";R:4;s:44:"1202:menubar.debug.memorymanager.totalmemory";R:4;s:42:"1202:menubar.debug.memorymanager.maxmemory";R:4;s:35:"1202:menubar.debug.memorymanager.gc";R:4;s:19:"1202:menubar.report";R:4;s:23:"1202:menubar.statusline";R:4;s:30:"1202:findsettlementdialog.name";R:4;s:31:"1202:metaserver.couldnotconnect";R:4;s:34:"1202:metaserver.communicationerror";R:4;s:32:"1202:infopanel.endturnpanel.text";R:4;s:23:"1202:endturndialog.name";R:4;s:29:"1202:endturndialog.areyousure";R:4;s:59:"1202:menubar.tools.determinehighseas.disttolandfromhighseas";R:4;s:54:"1202:menubar.tools.determinehighseas.maxdistancetoedge";R:4;s:25:"1202:stopcurrentgame.text";R:4;s:24:"1202:stopcurrentgame.yes";R:4;s:23:"1202:stopcurrentgame.no";R:4;s:20:"1202:stopserver.text";R:4;s:19:"1202:stopserver.yes";R:4;s:18:"1202:stopserver.no";R:4;s:35:"1202:connectcontroller.choiceplayer";R:4;s:19:"1202:reconnect.text";R:4;s:18:"1202:reconnect.yes";R:4;s:17:"1202:reconnect.no";R:4;s:17:"1202:failedtosave";R:4;s:21:"1202:couldnotsavegame";R:4;s:21:"1202:couldnotloadgame";R:4;s:17:"1202:filenotfound";R:4;s:25:"1202:incompatibleversions";R:4;s:27:"1202:opengame.unimplemented";R:4;s:16:"1202:direction.n";R:4;s:17:"1202:direction.ne";R:4;s:16:"1202:direction.e";R:4;s:17:"1202:direction.se";R:4;s:16:"1202:direction.s";R:4;s:17:"1202:direction.sw";R:4;s:16:"1202:direction.w";R:4;s:17:"1202:direction.nw";R:4;s:18:"1202:server.reject";R:4;s:25:"1202:server.trade.nogoods";R:4;s:23:"1202:cli.arg.debuglevel";R:4;s:21:"1202:cli.arg.debugrun";R:4;s:23:"1202:cli.arg.dimensions";R:4;s:22:"1202:cli.arg.directory";R:4;s:17:"1202:cli.arg.file";R:4;s:17:"1202:cli.arg.font";R:4;s:19:"1202:cli.arg.locale";R:4;s:21:"1202:cli.arg.loglevel";R:4;s:17:"1202:cli.arg.name";R:4;s:17:"1202:cli.arg.port";R:4;s:17:"1202:cli.arg.seed";R:4;s:20:"1202:cli.arg.timeout";R:4;s:23:"1202:cli.check-savegame";R:4;s:31:"1202:cli.check-savegame.success";R:4;s:31:"1202:cli.check-savegame.failure";R:4;s:14:"1202:cli.debug";R:4;s:18:"1202:cli.debug-run";R:4;s:23:"1202:cli.default-locale";R:4;s:19:"1202:cli.error.port";R:4;s:29:"1202:cli.error.home.notexists";R:4;s:26:"1202:cli.error.home.noread";R:4;s:27:"1202:cli.error.home.nowrite";R:4;s:21:"1202:cli.freecol-data";R:4;s:13:"1202:cli.font";R:4;s:13:"1202:cli.help";R:4;s:23:"1202:cli.home-directory";R:4;s:22:"1202:cli.load-savegame";R:4;s:20:"1202:cli.log-console";R:4;s:17:"1202:cli.log-file";R:4;s:18:"1202:cli.log-level";R:4;s:22:"1202:cli.no-java-check";R:4;s:24:"1202:cli.no-memory-check";R:4;s:17:"1202:cli.no-intro";R:4;s:17:"1202:cli.no-sound";R:4;s:16:"1202:cli.private";R:4;s:13:"1202:cli.seed";R:4;s:20:"1202:cli.server-name";R:4;s:15:"1202:cli.server";R:4;s:15:"1202:cli.splash";R:4;s:11:"1202:cli.tc";R:4;s:16:"1202:cli.timeout";R:4;s:16:"1202:cli.version";R:4;s:17:"1202:cli.windowed";R:4;s:21:"1202:gameoptions.name";R:4;s:33:"1202:gameoptions.shortdescription";R:4;s:25:"1202:gameoptions.map.name";R:4;s:37:"1202:gameoptions.map.shortdescription";R:4;s:31:"1202:model.option.fogofwar.name";R:4;s:43:"1202:model.option.fogofwar.shortdescription";R:4;s:40:"1202:model.option.explorationpoints.name";R:4;s:52:"1202:model.option.explorationpoints.shortdescription";R:4;s:34:"1202:model.option.turnstosail.name";R:4;s:46:"1202:model.option.turnstosail.shortdescription";R:4;s:38:"1202:model.option.amphibiousmoves.name";R:4;s:50:"1202:model.option.amphibiousmoves.shortdescription";R:4;s:52:"1202:model.option.settlementactionscontactchief.name";R:4;s:64:"1202:model.option.settlementactionscontactchief.shortdescription";R:4;s:43:"1202:model.option.enhancedmissionaries.name";R:4;s:55:"1202:model.option.enhancedmissionaries.shortdescription";R:4;s:56:"1202:model.option.continuefoundingfatherrecruitment.name";R:4;s:68:"1202:model.option.continuefoundingfatherrecruitment.shortdescription";R:4;s:46:"1202:model.option.settlementlimitmodifier.name";R:4;s:58:"1202:model.option.settlementlimitmodifier.shortdescription";R:4;s:40:"1202:model.option.startingpositions.name";R:4;s:52:"1202:model.option.startingpositions.shortdescription";R:4;s:43:"1202:model.option.startingpositions.classic";R:4;s:42:"1202:model.option.startingpositions.random";R:4;s:46:"1202:model.option.startingpositions.historical";R:4;s:28:"1202:gameoptions.colony.name";R:4;s:40:"1202:gameoptions.colony.shortdescription";R:4;s:42:"1202:model.option.customignoreboycott.name";R:4;s:54:"1202:model.option.customignoreboycott.shortdescription";R:4;s:45:"1202:model.option.expertshaveconnections.name";R:4;s:57:"1202:model.option.expertshaveconnections.shortdescription";R:4;s:45:"1202:model.option.saveproductionoverflow.name";R:4;s:57:"1202:model.option.saveproductionoverflow.shortdescription";R:4;s:44:"1202:model.option.allowstudentselection.name";R:4;s:56:"1202:model.option.allowstudentselection.shortdescription";R:4;s:39:"1202:gameoptions.victoryconditions.name";R:4;s:51:"1202:gameoptions.victoryconditions.shortdescription";R:4;s:39:"1202:model.option.victorydefeatref.name";R:4;s:51:"1202:model.option.victorydefeatref.shortdescription";R:4;s:45:"1202:model.option.victorydefeateuropeans.name";R:4;s:57:"1202:model.option.victorydefeateuropeans.shortdescription";R:4;s:42:"1202:model.option.victorydefeathumans.name";R:4;s:54:"1202:model.option.victorydefeathumans.shortdescription";R:4;s:27:"1202:gameoptions.years.name";R:4;s:39:"1202:gameoptions.years.shortdescription";R:4;s:35:"1202:model.option.startingyear.name";R:4;s:47:"1202:model.option.startingyear.shortdescription";R:4;s:33:"1202:model.option.seasonyear.name";R:4;s:45:"1202:model.option.seasonyear.shortdescription";R:4;s:31:"1202:model.option.lastyear.name";R:4;s:42:"1202:model.option.mandatorycolonyyear.name";R:4;s:54:"1202:model.option.mandatorycolonyyear.shortdescription";R:4;s:43:"1202:model.option.lastyear.shortdescription";R:4;s:39:"1202:model.option.lastcolonialyear.name";R:4;s:51:"1202:model.option.lastcolonialyear.shortdescription";R:4;s:36:"1202:model.option.startingmoney.name";R:4;s:48:"1202:model.option.startingmoney.shortdescription";R:4;s:39:"1202:model.option.crossesincrement.name";R:4;s:51:"1202:model.option.crossesincrement.shortdescription";R:4;s:41:"1202:model.option.badgovernmentlimit.name";R:4;s:53:"1202:model.option.badgovernmentlimit.shortdescription";R:4;s:45:"1202:model.option.verybadgovernmentlimit.name";R:4;s:57:"1202:model.option.verybadgovernmentlimit.shortdescription";R:4;s:38:"1202:model.option.landpricefactor.name";R:4;s:50:"1202:model.option.landpricefactor.shortdescription";R:4;s:43:"1202:model.option.foundingfatherfactor.name";R:4;s:55:"1202:model.option.foundingfatherfactor.shortdescription";R:4;s:36:"1202:model.option.arrearsfactor.name";R:4;s:48:"1202:model.option.arrearsfactor.shortdescription";R:4;s:47:"1202:model.option.nativeconvertprobability.name";R:4;s:59:"1202:model.option.nativeconvertprobability.shortdescription";R:4;s:38:"1202:model.option.burnprobability.name";R:4;s:50:"1202:model.option.burnprobability.shortdescription";R:4;s:43:"1202:model.option.recruitpriceincrease.name";R:4;s:55:"1202:model.option.recruitpriceincrease.shortdescription";R:4;s:39:"1202:model.option.lowercapincrease.name";R:4;s:51:"1202:model.option.lowercapincrease.shortdescription";R:4;s:43:"1202:model.option.priceincreasepertype.name";R:4;s:55:"1202:model.option.priceincreasepertype.shortdescription";R:4;s:46:"1202:model.option.priceincrease.artillery.name";R:4;s:58:"1202:model.option.priceincrease.artillery.shortdescription";R:4;s:34:"1202:model.option.refstrength.name";R:4;s:46:"1202:model.option.refstrength.shortdescription";R:4;s:38:"1202:model.option.monarchmeddling.name";R:4;s:50:"1202:model.option.monarchmeddling.shortdescription";R:4;s:36:"1202:model.option.taxadjustment.name";R:4;s:48:"1202:model.option.taxadjustment.shortdescription";R:4;s:37:"1202:model.option.mercenaryprice.name";R:4;s:49:"1202:model.option.mercenaryprice.shortdescription";R:4;s:33:"1202:model.option.maximumtax.name";R:4;s:45:"1202:model.option.maximumtax.shortdescription";R:4;s:36:"1202:model.option.nativedemands.name";R:4;s:48:"1202:model.option.nativedemands.shortdescription";R:4;s:40:"1202:model.option.recruitable.slot0.name";R:4;s:52:"1202:model.option.recruitable.slot0.shortdescription";R:4;s:40:"1202:model.option.recruitable.slot1.name";R:4;s:52:"1202:model.option.recruitable.slot1.shortdescription";R:4;s:40:"1202:model.option.recruitable.slot2.name";R:4;s:52:"1202:model.option.recruitable.slot2.shortdescription";R:4;s:37:"1202:model.option.tileproduction.name";R:4;s:49:"1202:model.option.tileproduction.shortdescription";R:4;s:40:"1202:model.option.buildonnativeland.name";R:4;s:52:"1202:model.option.buildonnativeland.shortdescription";R:4;s:47:"1202:model.option.buildonnativeland.always.name";R:4;s:59:"1202:model.option.buildonnativeland.always.shortdescription";R:4;s:46:"1202:model.option.buildonnativeland.first.name";R:4;s:58:"1202:model.option.buildonnativeland.first.shortdescription";R:4;s:60:"1202:model.option.buildonnativeland.firstanduncontacted.name";R:4;s:72:"1202:model.option.buildonnativeland.firstanduncontacted.shortdescription";R:4;s:46:"1202:model.option.buildonnativeland.never.name";R:4;s:58:"1202:model.option.buildonnativeland.never.shortdescription";R:4;s:42:"1202:model.option.expertstartingunits.name";R:4;s:54:"1202:model.option.expertstartingunits.shortdescription";R:4;s:42:"1202:model.option.unitsthatusenobells.name";R:4;s:54:"1202:model.option.unitsthatusenobells.shortdescription";R:4;s:37:"1202:model.option.monarchsupport.name";R:4;s:49:"1202:model.option.monarchsupport.shortdescription";R:4;s:39:"1202:model.option.rumourdifficulty.name";R:4;s:51:"1202:model.option.rumourdifficulty.shortdescription";R:4;s:43:"1202:model.option.treasuretransportfee.name";R:4;s:55:"1202:model.option.treasuretransportfee.shortdescription";R:4;s:34:"1202:model.option.teleportref.name";R:4;s:46:"1202:model.option.teleportref.shortdescription";R:4;s:39:"1202:model.option.shiptradepenalty.name";R:4;s:51:"1202:model.option.shiptradepenalty.shortdescription";R:4;s:30:"1202:model.option.refsize.name";R:4;s:42:"1202:model.option.refsize.shortdescription";R:4;s:39:"1202:model.option.refsize.soldiers.name";R:4;s:51:"1202:model.option.refsize.soldiers.shortdescription";R:4;s:39:"1202:model.option.refsize.dragoons.name";R:4;s:51:"1202:model.option.refsize.dragoons.shortdescription";R:4;s:39:"1202:model.option.refsize.menofwar.name";R:4;s:51:"1202:model.option.refsize.menofwar.shortdescription";R:4;s:40:"1202:model.option.refsize.artillery.name";R:4;s:52:"1202:model.option.refsize.artillery.shortdescription";R:4;s:33:"1202:model.option.immigrants.name";R:4;s:45:"1202:model.option.immigrants.shortdescription";R:4;s:17:"1202:verylow.name";R:4;s:13:"1202:low.name";R:4;s:16:"1202:medium.name";R:4;s:14:"1202:high.name";R:4;s:18:"1202:veryhigh.name";R:4;s:30:"1202:model.difficulty.veryeasy";R:4;s:26:"1202:model.difficulty.easy";R:4;s:28:"1202:model.difficulty.medium";R:4;s:26:"1202:model.difficulty.hard";R:4;s:30:"1202:model.difficulty.veryhard";R:4;s:28:"1202:model.difficulty.custom";R:4;s:23:"1202:clientoptions.name";R:4;s:35:"1202:clientoptions.shortdescription";R:4;s:33:"1202:model.option.autoscroll.name";R:4;s:45:"1202:model.option.autoscroll.shortdescription";R:4;s:23:"1202:actionmanager.name";R:4;s:35:"1202:actionmanager.shortdescription";R:4;s:28:"1202:clientoptions.mods.name";R:4;s:40:"1202:clientoptions.mods.shortdescription";R:4;s:18:"1202:usermods.name";R:4;s:30:"1202:usermods.shortdescription";R:4;s:27:"1202:clientoptions.gui.name";R:4;s:39:"1202:clientoptions.gui.shortdescription";R:4;s:37:"1202:model.option.languageoption.name";R:4;s:49:"1202:model.option.languageoption.shortdescription";R:4;s:56:"1202:clientoptions.gui.languageoption.autodetectlanguage";R:4;s:49:"1202:model.option.guiminnumbertodisplaygoods.name";R:4;s:61:"1202:model.option.guiminnumbertodisplaygoods.shortdescription";R:4;s:54:"1202:model.option.guiminnumbertodisplaygoodscount.name";R:4;s:66:"1202:model.option.guiminnumbertodisplaygoodscount.shortdescription";R:4;s:38:"1202:model.option.mapscrollondrag.name";R:4;s:50:"1202:model.option.mapscrollondrag.shortdescription";R:4;s:41:"1202:model.option.displaycompassrose.name";R:4;s:53:"1202:model.option.displaycompassrose.shortdescription";R:4;s:41:"1202:model.option.displaymapcontrols.name";R:4;s:53:"1202:model.option.displaymapcontrols.shortdescription";R:4;s:34:"1202:model.option.mapcontrols.name";R:4;s:46:"1202:model.option.mapcontrols.shortdescription";R:4;s:27:"1202:cornermapcontrols.name";R:4;s:39:"1202:cornermapcontrols.shortdescription";R:4;s:28:"1202:classicmapcontrols.name";R:4;s:40:"1202:classicmapcontrols.shortdescription";R:4;s:38:"1202:model.option.displaytiletext.name";R:4;s:50:"1202:model.option.displaytiletext.shortdescription";R:4;s:44:"1202:clientoptions.gui.displaytiletext.empty";R:4;s:44:"1202:clientoptions.gui.displaytiletext.names";R:4;s:45:"1202:clientoptions.gui.displaytiletext.owners";R:4;s:46:"1202:clientoptions.gui.displaytiletext.regions";R:4;s:42:"1202:model.option.displaycolonylabels.name";R:4;s:54:"1202:model.option.displaycolonylabels.shortdescription";R:4;s:47:"1202:clientoptions.gui.displaycolonylabels.none";R:4;s:50:"1202:clientoptions.gui.displaycolonylabels.classic";R:4;s:49:"1202:clientoptions.gui.displaycolonylabels.modern";R:4;s:37:"1202:model.option.displayborders.name";R:4;s:49:"1202:model.option.displayborders.shortdescription";R:4;s:34:"1202:model.option.displaygrid.name";R:4;s:46:"1202:model.option.displaygrid.shortdescription";R:4;s:40:"1202:model.option.unitlastmovedelay.name";R:4;s:52:"1202:model.option.unitlastmovedelay.shortdescription";R:4;s:33:"1202:model.option.usepixmaps.name";R:4;s:45:"1202:model.option.usepixmaps.shortdescription";R:4;s:45:"1202:model.option.rememberpanelpositions.name";R:4;s:57:"1202:model.option.rememberpanelpositions.shortdescription";R:4;s:41:"1202:model.option.moveanimationspeed.name";R:4;s:53:"1202:model.option.moveanimationspeed.shortdescription";R:4;s:45:"1202:clientoptions.gui.moveanimationspeed.off";R:4;s:46:"1202:clientoptions.gui.moveanimationspeed.slow";R:4;s:48:"1202:clientoptions.gui.moveanimationspeed.normal";R:4;s:46:"1202:clientoptions.gui.moveanimationspeed.fast";R:4;s:46:"1202:model.option.enemymoveanimationspeed.name";R:4;s:58:"1202:model.option.enemymoveanimationspeed.shortdescription";R:4;s:50:"1202:clientoptions.gui.enemymoveanimationspeed.off";R:4;s:51:"1202:clientoptions.gui.enemymoveanimationspeed.slow";R:4;s:53:"1202:clientoptions.gui.enemymoveanimationspeed.normal";R:4;s:51:"1202:clientoptions.gui.enemymoveanimationspeed.fast";R:4;s:38:"1202:model.option.smoothrendering.name";R:4;s:50:"1202:model.option.smoothrendering.shortdescription";R:4;s:39:"1202:model.option.defaultzoomlevel.name";R:4;s:51:"1202:model.option.defaultzoomlevel.shortdescription";R:4;s:39:"1202:model.option.color.background.name";R:4;s:51:"1202:model.option.color.background.shortdescription";R:4;s:49:"1202:clientoptions.minimap.color.background.black";R:4;s:58:"1202:clientoptions.minimap.color.background.gray.dark.very";R:4;s:53:"1202:clientoptions.minimap.color.background.gray.dark";R:4;s:48:"1202:clientoptions.minimap.color.background.gray";R:4;s:54:"1202:clientoptions.minimap.color.background.gray.light";R:4;s:59:"1202:clientoptions.minimap.color.background.gray.light.very";R:4;s:54:"1202:clientoptions.minimap.color.background.blue.light";R:4;s:32:"1202:clientoptions.messages.name";R:4;s:44:"1202:clientoptions.messages.shortdescription";R:4;s:39:"1202:model.option.jumptoactiveunit.name";R:4;s:51:"1202:model.option.jumptoactiveunit.shortdescription";R:4;s:35:"1202:model.option.alwayscenter.name";R:4;s:47:"1202:model.option.alwayscenter.shortdescription";R:4;s:48:"1202:model.option.guimaxnumberofgoodsimages.name";R:4;s:60:"1202:model.option.guimaxnumberofgoodsimages.shortdescription";R:4;s:37:"1202:model.option.guishowwarning.name";R:4;s:49:"1202:model.option.guishowwarning.shortdescription";R:4;s:43:"1202:model.option.guishowsonsofliberty.name";R:4;s:55:"1202:model.option.guishowsonsofliberty.shortdescription";R:4;s:50:"1202:model.option.guishowgovernmentefficiency.name";R:4;s:62:"1202:model.option.guishowgovernmentefficiency.shortdescription";R:4;s:47:"1202:model.option.guishowwarehousecapacity.name";R:4;s:59:"1202:model.option.guishowwarehousecapacity.shortdescription";R:4;s:42:"1202:model.option.guishowunitimproved.name";R:4;s:54:"1202:model.option.guishowunitimproved.shortdescription";R:4;s:41:"1202:model.option.guishowunitdemoted.name";R:4;s:53:"1202:model.option.guishowunitdemoted.shortdescription";R:4;s:47:"1202:model.option.guishowbuildingcompleted.name";R:4;s:59:"1202:model.option.guishowbuildingcompleted.shortdescription";R:4;s:39:"1202:model.option.guishowunitadded.name";R:4;s:51:"1202:model.option.guishowunitadded.shortdescription";R:4;s:38:"1202:model.option.guishowunitlost.name";R:4;s:50:"1202:model.option.guishowunitlost.shortdescription";R:4;s:46:"1202:model.option.guishowforeigndiplomacy.name";R:4;s:58:"1202:model.option.guishowforeigndiplomacy.shortdescription";R:4;s:42:"1202:model.option.guishowmarketprices.name";R:4;s:54:"1202:model.option.guishowmarketprices.shortdescription";R:4;s:42:"1202:model.option.guishowmissinggoods.name";R:4;s:54:"1202:model.option.guishowmissinggoods.shortdescription";R:4;s:35:"1202:model.option.guishowgifts.name";R:4;s:47:"1202:model.option.guishowgifts.shortdescription";R:4;s:37:"1202:model.option.guishowdemands.name";R:4;s:49:"1202:model.option.guishowdemands.shortdescription";R:4;s:43:"1202:model.option.guishowgoodsmovement.name";R:4;s:55:"1202:model.option.guishowgoodsmovement.shortdescription";R:4;s:39:"1202:model.option.guishowprecombat.name";R:4;s:51:"1202:model.option.guishowprecombat.shortdescription";R:4;s:41:"1202:model.option.guishownotbesttile.name";R:4;s:53:"1202:model.option.guishownotbesttile.shortdescription";R:4;s:44:"1202:model.option.guishowcolonywarnings.name";R:4;s:56:"1202:model.option.guishowcolonywarnings.shortdescription";R:4;s:41:"1202:model.option.guimessagesgroupby.name";R:4;s:53:"1202:model.option.guimessagesgroupby.shortdescription";R:4;s:54:"1202:clientoptions.messages.guimessagesgroupby.nothing";R:4;s:51:"1202:clientoptions.messages.guimessagesgroupby.type";R:4;s:53:"1202:clientoptions.messages.guimessagesgroupby.source";R:4;s:39:"1202:model.option.colonycomparator.name";R:4;s:51:"1202:model.option.colonycomparator.shortdescription";R:4;s:46:"1202:clientoptions.gui.colonycomparator.byname";R:4;s:45:"1202:clientoptions.gui.colonycomparator.byage";R:4;s:50:"1202:clientoptions.gui.colonycomparator.byposition";R:4;s:46:"1202:clientoptions.gui.colonycomparator.bysize";R:4;s:45:"1202:clientoptions.gui.colonycomparator.bysol";R:4;s:29:"1202:clientoptions.audio.name";R:4;s:41:"1202:clientoptions.audio.shortdescription";R:4;s:45:"1202:clientoptions.audio.audiomixer.automatic";R:4;s:33:"1202:model.option.audiomixer.name";R:4;s:45:"1202:model.option.audiomixer.shortdescription";R:4;s:34:"1202:model.option.audiovolume.name";R:4;s:46:"1202:model.option.audiovolume.shortdescription";R:4;s:34:"1202:model.option.audioalerts.name";R:4;s:46:"1202:model.option.audioalerts.shortdescription";R:4;s:33:"1202:clientoptions.savegames.name";R:4;s:45:"1202:clientoptions.savegames.shortdescription";R:4;s:43:"1202:model.option.showsavegamesettings.name";R:4;s:55:"1202:model.option.showsavegamesettings.shortdescription";R:4;s:55:"1202:clientoptions.savegames.showsavegamesettings.never";R:4;s:61:"1202:clientoptions.savegames.showsavegamesettings.multiplayer";R:4;s:56:"1202:clientoptions.savegames.showsavegamesettings.always";R:4;s:48:"1202:clientoptions.savegames.autosave.fileprefix";R:4;s:46:"1202:clientoptions.savegames.autosave.lastturn";R:4;s:52:"1202:clientoptions.savegames.autosave.beforelastturn";R:4;s:37:"1202:model.option.autosaveperiod.name";R:4;s:49:"1202:model.option.autosaveperiod.shortdescription";R:4;s:42:"1202:model.option.autosavegenerations.name";R:4;s:54:"1202:model.option.autosavegenerations.shortdescription";R:4;s:39:"1202:model.option.autosavevalidity.name";R:4;s:51:"1202:model.option.autosavevalidity.shortdescription";R:4;s:37:"1202:model.option.autosavedelete.name";R:4;s:49:"1202:model.option.autosavedelete.shortdescription";R:4;s:33:"1202:clientoptions.warehouse.name";R:4;s:45:"1202:clientoptions.warehouse.shortdescription";R:4;s:34:"1202:model.option.customstock.name";R:4;s:46:"1202:model.option.customstock.shortdescription";R:4;s:31:"1202:model.option.lowlevel.name";R:4;s:43:"1202:model.option.lowlevel.shortdescription";R:4;s:32:"1202:model.option.highlevel.name";R:4;s:44:"1202:model.option.highlevel.shortdescription";R:4;s:29:"1202:clientoptions.other.name";R:4;s:41:"1202:clientoptions.other.shortdescription";R:4;s:40:"1202:model.option.autoloademigrants.name";R:4;s:52:"1202:model.option.autoloademigrants.shortdescription";R:4;s:34:"1202:model.option.autoendturn.name";R:4;s:46:"1202:model.option.autoendturn.shortdescription";R:4;s:40:"1202:model.option.showendturndialog.name";R:4;s:52:"1202:model.option.showendturndialog.shortdescription";R:4;s:42:"1202:model.option.compactcolonyreport.name";R:4;s:54:"1202:model.option.compactcolonyreport.shortdescription";R:4;s:35:"1202:model.option.labourreport.name";R:4;s:39:"1202:clientoptions.labourreport.classic";R:4;s:39:"1202:clientoptions.labourreport.compact";R:4;s:35:"1202:model.option.colonyreport.name";R:4;s:39:"1202:clientoptions.colonyreport.classic";R:4;s:39:"1202:clientoptions.colonyreport.compact";R:4;s:43:"1202:model.option.indiandemandresponse.name";R:4;s:55:"1202:model.option.indiandemandresponse.shortdescription";R:4;s:43:"1202:clientoptions.indiandemandresponse.ask";R:4;s:46:"1202:clientoptions.indiandemandresponse.accept";R:4;s:46:"1202:clientoptions.indiandemandresponse.reject";R:4;s:45:"1202:model.option.unloadoverflowresponse.name";R:4;s:57:"1202:model.option.unloadoverflowresponse.shortdescription";R:4;s:45:"1202:clientoptions.unloadoverflowresponse.ask";R:4;s:47:"1202:clientoptions.unloadoverflowresponse.never";R:4;s:48:"1202:clientoptions.unloadoverflowresponse.always";R:4;s:29:"1202:mapgeneratoroptions.name";R:4;s:41:"1202:mapgeneratoroptions.shortdescription";R:4;s:31:"1202:model.option.mapwidth.name";R:4;s:43:"1202:model.option.mapwidth.shortdescription";R:4;s:32:"1202:model.option.mapheight.name";R:4;s:44:"1202:model.option.mapheight.shortdescription";R:4;s:31:"1202:model.option.landmass.name";R:4;s:43:"1202:model.option.landmass.shortdescription";R:4;s:40:"1202:model.option.landgeneratortype.name";R:4;s:52:"1202:model.option.landgeneratortype.shortdescription";R:4;s:46:"1202:model.option.preferreddistancetoedge.name";R:4;s:58:"1202:model.option.preferreddistancetoedge.shortdescription";R:4;s:44:"1202:model.option.maximumdistancetoedge.name";R:4;s:56:"1202:model.option.maximumdistancetoedge.shortdescription";R:4;s:40:"1202:model.option.distancetohighsea.name";R:4;s:52:"1202:model.option.distancetohighsea.shortdescription";R:4;s:34:"1202:model.option.rivernumber.name";R:4;s:46:"1202:model.option.rivernumber.shortdescription";R:4;s:37:"1202:model.option.mountainnumber.name";R:4;s:49:"1202:model.option.mountainnumber.shortdescription";R:4;s:35:"1202:model.option.rumournumber.name";R:4;s:47:"1202:model.option.rumournumber.shortdescription";R:4;s:39:"1202:model.option.settlementnumber.name";R:4;s:51:"1202:model.option.settlementnumber.shortdescription";R:4;s:35:"1202:model.option.forestnumber.name";R:4;s:47:"1202:model.option.forestnumber.shortdescription";R:4;s:34:"1202:model.option.bonusnumber.name";R:4;s:46:"1202:model.option.bonusnumber.shortdescription";R:4;s:31:"1202:model.option.humidity.name";R:4;s:43:"1202:model.option.humidity.shortdescription";R:4;s:34:"1202:model.option.temperature.name";R:4;s:46:"1202:model.option.temperature.shortdescription";R:4;s:33:"1202:model.option.importfile.name";R:4;s:45:"1202:model.option.importfile.shortdescription";R:4;s:36:"1202:model.option.importterrain.name";R:4;s:48:"1202:model.option.importterrain.shortdescription";R:4;s:36:"1202:model.option.importbonuses.name";R:4;s:48:"1202:model.option.importbonuses.shortdescription";R:4;s:36:"1202:model.option.importrumours.name";R:4;s:48:"1202:model.option.importrumours.shortdescription";R:4;s:40:"1202:model.option.importsettlements.name";R:4;s:52:"1202:model.option.importsettlements.shortdescription";R:4;s:38:"1202:model.option.minimumlatitude.name";R:4;s:50:"1202:model.option.minimumlatitude.shortdescription";R:4;s:38:"1202:model.option.maximumlatitude.name";R:4;s:50:"1202:model.option.maximumlatitude.shortdescription";R:4;s:36:"1202:mapgeneratoroptions.import.name";R:4;s:48:"1202:mapgeneratoroptions.import.shortdescription";R:4;s:43:"1202:mapgeneratoroptions.landgenerator.name";R:4;s:55:"1202:mapgeneratoroptions.landgenerator.shortdescription";R:4;s:46:"1202:mapgeneratoroptions.terraingenerator.name";R:4;s:58:"1202:mapgeneratoroptions.terraingenerator.shortdescription";R:4;s:31:"1202:model.settlement.camp.name";R:4;s:33:"1202:model.settlement.camp.plural";R:4;s:39:"1202:model.settlement.camp.capital.name";R:4;s:34:"1202:model.settlement.village.name";R:4;s:36:"1202:model.settlement.village.plural";R:4;s:42:"1202:model.settlement.village.capital.name";R:4;s:31:"1202:model.settlement.inca.name";R:4;s:33:"1202:model.settlement.inca.plural";R:4;s:39:"1202:model.settlement.inca.capital.name";R:4;s:32:"1202:model.settlement.aztec.name";R:4;s:34:"1202:model.settlement.aztec.plural";R:4;s:40:"1202:model.settlement.aztec.capital.name";R:4;s:23:"1202:event.firstlanding";R:4;s:25:"1202:event.meetingnatives";R:4;s:27:"1202:event.meetingeuropeans";R:4;s:23:"1202:event.meetingaztec";R:4;s:22:"1202:event.meetinginca";R:4;s:23:"1202:goodstransfer.text";R:4;s:18:"1202:entersometext";R:4;s:29:"1202:tradeproposition.welcome";R:4;s:27:"1202:tradeproposition.tobuy";R:4;s:28:"1202:tradeproposition.tosell";R:4;s:28:"1202:tradeproposition.togift";R:4;s:28:"1202:tradeproposition.cancel";R:4;s:24:"1202:buyproposition.text";R:4;s:27:"1202:buyproposition.nothing";R:4;s:26:"1202:buyproposition.cancel";R:4;s:25:"1202:sellproposition.text";R:4;s:28:"1202:sellproposition.nothing";R:4;s:27:"1202:sellproposition.cancel";R:4;s:24:"1202:trade.nothingtosell";R:4;s:23:"1202:trade.notradegoods";R:4;s:18:"1202:trade.notrade";R:4;s:24:"1202:trade.notradehaggle";R:4;s:25:"1202:trade.notradehostile";R:4;s:21:"1202:trade.notradewar";R:4;s:13:"1202:buy.text";R:4;s:18:"1202:buy.takeoffer";R:4;s:17:"1202:buy.moregold";R:4;s:14:"1202:sell.text";R:4;s:19:"1202:sell.takeoffer";R:4;s:18:"1202:sell.moregold";R:4;s:14:"1202:sell.gift";R:4;s:14:"1202:gift.text";R:4;s:24:"1202:boycottedgoods.text";R:4;s:30:"1202:boycottedgoods.payarrears";R:4;s:29:"1202:boycottedgoods.dumpgoods";R:4;s:40:"1202:declareindependence.areyousure.text";R:4;s:39:"1202:declareindependence.areyousure.yes";R:4;s:38:"1202:declareindependence.areyousure.no";R:4;s:38:"1202:declareindependence.defaultnation";R:4;s:39:"1202:declareindependence.defaultcountry";R:4;s:37:"1202:declareindependence.entercountry";R:4;s:36:"1202:declareindependence.enternation";R:4;s:33:"1202:declareindependence.announce";R:4;s:42:"1202:declareindependence.interventionforce";R:4;s:49:"1202:declareindependence.interventionforcearrives";R:4;s:20:"1202:indianland.text";R:4;s:19:"1202:indianland.pay";R:4;s:20:"1202:indianland.take";R:4;s:22:"1202:indianland.cancel";R:4;s:27:"1202:indiandemand.food.text";R:4;s:26:"1202:indiandemand.food.yes";R:4;s:25:"1202:indiandemand.food.no";R:4;s:27:"1202:indiandemand.gold.text";R:4;s:26:"1202:indiandemand.gold.yes";R:4;s:25:"1202:indiandemand.gold.no";R:4;s:28:"1202:indiandemand.other.text";R:4;s:27:"1202:indiandemand.other.yes";R:4;s:26:"1202:indiandemand.other.no";R:4;s:31:"1202:explorelostcityrumour.text";R:4;s:29:"1202:exploremoundsrumour.text";R:4;s:30:"1202:explorelostcityrumour.yes";R:4;s:29:"1202:explorelostcityrumour.no";R:4;s:25:"1202:warehousedialog.name";R:4;s:27:"1202:warehousedialog.export";R:4;s:44:"1202:warehousedialog.export.shortdescription";R:4;s:46:"1202:warehousedialog.lowlevel.shortdescription";R:4;s:47:"1202:warehousedialog.highlevel.shortdescription";R:4;s:49:"1202:warehousedialog.exportlevel.shortdescription";R:4;s:26:"1202:traderoutedialog.name";R:4;s:30:"1202:traderoutedialog.newroute";R:4;s:31:"1202:traderoutedialog.editroute";R:4;s:33:"1202:traderoutedialog.removeroute";R:4;s:35:"1202:traderoutedialog.deassignroute";R:4;s:38:"1202:traderoutedialog.deassign.tooltip";R:4;s:29:"1202:traderoutedialog.addstop";R:4;s:32:"1202:traderoutedialog.removestop";R:4;s:31:"1202:traderoutedialog.namelabel";R:4;s:38:"1202:traderoutedialog.destinationlabel";R:4;s:35:"1202:traderoutedialog.duplicatename";R:4;s:36:"1202:traderoutedialog.notenoughstops";R:4;s:22:"1202:traderoute.broken";R:4;s:22:"1202:traderoute.nowork";R:4;s:22:"1202:traderoute.nopath";R:4;s:24:"1202:traderoute.skipstop";R:4;s:33:"1202:traderoute.warehousecapacity";R:4;s:29:"1202:traderoute.reassignroute";R:4;s:20:"1202:traderoute.load";R:4;s:33:"1202:traderoute.loadimportlimited";R:4;s:33:"1202:traderoute.loadexportlimited";R:4;s:22:"1202:traderoute.unload";R:4;s:24:"1202:traderoute.overflow";R:4;s:24:"1202:traderoute.nounload";R:4;s:17:"1202:customs.sale";R:4;s:18:"1202:europe.nogame";R:4;s:26:"1202:europe.leavecolonists";R:4;s:18:"1202:highseas.text";R:4;s:17:"1202:highseas.yes";R:4;s:16:"1202:highseas.no";R:4;s:19:"1202:disembark.text";R:4;s:21:"1202:disembark.cancel";R:4;s:16:"1202:embark.text";R:4;s:18:"1202:embark.cancel";R:4;s:25:"1202:amessagefromthecrown";R:4;s:30:"1202:cashintreasuretrain.order";R:4;s:29:"1202:cashintreasuretrain.free";R:4;s:28:"1202:cashintreasuretrain.pay";R:4;s:28:"1202:cashintreasuretrain.yes";R:4;s:27:"1202:cashintreasuretrain.no";R:4;s:21:"1202:disbandunit.text";R:4;s:20:"1202:disbandunit.yes";R:4;s:19:"1202:disbandunit.no";R:4;s:21:"1202:lootcargo.header";R:4;s:17:"1202:newland.text";R:4;s:16:"1202:newland.yes";R:4;s:22:"1202:welcomeoffer.text";R:4;s:23:"1202:welcomesimple.text";R:4;s:16:"1202:welcome.yes";R:4;s:15:"1202:welcome.no";R:4;s:26:"1202:noclaimreason.terrain";R:4;s:25:"1202:noclaimreason.rumour";R:4;s:24:"1202:noclaimreason.water";R:4;s:29:"1202:noclaimreason.settlement";R:4;s:25:"1202:noclaimreason.worked";R:4;s:28:"1202:noclaimreason.europeans";R:4;s:26:"1202:noclaimreason.natives";R:4;s:32:"1202:noaddreason.already_present";R:4;s:27:"1202:noaddreason.wrong_type";R:4;s:34:"1202:noaddreason.capacity_exceeded";R:4;s:34:"1202:noaddreason.occupied_by_enemy";R:4;s:31:"1202:noaddreason.owned_by_enemy";R:4;s:31:"1202:noaddreason.another_colony";R:4;s:30:"1202:noaddreason.colony_center";R:4;s:32:"1202:noaddreason.missing_ability";R:4;s:30:"1202:noaddreason.missing_skill";R:4;s:31:"1202:noaddreason.claim_required";R:4;s:24:"1202:buildcolony.badunit";R:4;s:27:"1202:buildcolony.landlocked";R:4;s:23:"1202:buildcolony.nofood";R:4;s:36:"1202:buildcolony.nobuildingmaterials";R:4;s:27:"1202:buildcolony.indianland";R:4;s:29:"1202:buildcolony.europeanland";R:4;s:24:"1202:buildcolony.ownland";R:4;s:20:"1202:buildcolony.yes";R:4;s:19:"1202:buildcolony.no";R:4;s:20:"1202:nameregion.text";R:4;s:20:"1202:namecolony.text";R:4;s:19:"1202:namecolony.yes";R:4;s:18:"1202:namecolony.no";R:4;s:25:"1202:namecolony.notunique";R:4;s:22:"1202:renamecolony.text";R:4;s:21:"1202:renamecolony.yes";R:4;s:20:"1202:renamecolony.no";R:4;s:20:"1202:renameunit.text";R:4;s:19:"1202:renameunit.yes";R:4;s:18:"1202:renameunit.no";R:4;s:23:"1202:abandoncolony.text";R:4;s:22:"1202:abandoncolony.yes";R:4;s:21:"1202:abandoncolony.no";R:4;s:18:"1202:defeated.text";R:4;s:17:"1202:defeated.yes";R:4;s:16:"1202:defeated.no";R:4;s:30:"1202:defeatedsingleplayer.text";R:4;s:29:"1202:defeatedsingleplayer.yes";R:4;s:28:"1202:defeatedsingleplayer.no";R:4;s:17:"1202:victory.text";R:4;s:16:"1202:victory.yes";R:4;s:21:"1202:victory.continue";R:4;s:24:"1202:victory.noeuropeans";R:4;s:19:"1202:highscores.yes";R:4;s:18:"1202:highscores.no";R:4;s:27:"1202:selectdestination.text";R:4;s:29:"1202:selectdestination.cancel";R:4;s:29:"1202:selectdestination.failed";R:4;s:37:"1202:selectdestination.onlymycolonies";R:4;s:39:"1202:selectdestination.destinationturns";R:4;s:34:"1202:selectdestination.sortbyowner";R:4;s:33:"1202:selectdestination.sortbyname";R:4;s:37:"1202:selectdestination.sortbydistance";R:4;s:29:"1202:choosethisfoundingfather";R:4;s:18:"1202:notenoughgold";R:4;s:25:"1202:move.noaccessbeached";R:4;s:25:"1202:move.noaccesscontact";R:4;s:23:"1202:move.noaccessgoods";R:4;s:23:"1202:move.noaccessskill";R:4;s:23:"1202:move.noaccesstrade";R:4;s:28:"1202:move.noaccesssettlement";R:4;s:21:"1202:move.noaccesswar";R:4;s:23:"1202:move.noaccesswater";R:4;s:23:"1202:move.noattackwater";R:4;s:16:"1202:notyourturn";R:4;s:20:"1202:twoturnsperyear";R:4;s:24:"1202:payforbuilding.text";R:4;s:23:"1202:payforbuilding.yes";R:4;s:22:"1202:payforbuilding.no";R:4;s:33:"1202:indiansettlement.nameunknown";R:4;s:36:"1202:indiansettlement.learnableskill";R:4;s:34:"1202:indiansettlement.highlywanted";R:4;s:33:"1202:indiansettlement.otherwanted";R:4;s:34:"1202:indiansettlement.mostalarming";R:4;s:33:"1202:indiansettlement.nomoreskill";R:4;s:36:"1202:indiansettlement.cantlearnskill";R:4;s:34:"1202:indiansettlement.skillunknown";R:4;s:31:"1202:indiansettlement.skillnone";R:4;s:36:"1202:indiansettlement.tensionunknown";R:4;s:40:"1202:indiansettlement.wantedgoodsunknown";R:4;s:37:"1202:indiansettlement.wantedgoodsnone";R:4;s:33:"1202:indiansettlement.alarm.happy";R:4;s:35:"1202:indiansettlement.alarm.content";R:4;s:38:"1202:indiansettlement.alarm.displeased";R:4;s:33:"1202:indiansettlement.alarm.angry";R:4;s:35:"1202:indiansettlement.alarm.hateful";R:4;s:35:"1202:indiansettlement.mission.happy";R:4;s:37:"1202:indiansettlement.mission.content";R:4;s:40:"1202:indiansettlement.mission.displeased";R:4;s:35:"1202:indiansettlement.mission.angry";R:4;s:37:"1202:indiansettlement.mission.hateful";R:4;s:43:"1202:indiansettlement.mission.enemydenounce";R:4;s:40:"1202:indiansettlement.mission.nodenounce";R:4;s:39:"1202:indiansettlement.mission.denounced";R:4;s:35:"1202:indiansettlement.capitalburned";R:4;s:20:"1202:learnskill.text";R:4;s:19:"1202:learnskill.yes";R:4;s:18:"1202:learnskill.no";R:4;s:19:"1202:learnskill.die";R:4;s:21:"1202:learnskill.leave";R:4;s:30:"1202:scoutsettlement.greetings";R:4;s:26:"1202:scoutsettlement.skill";R:4;s:28:"1202:scoutsettlement.trade.1";R:4;s:28:"1202:scoutsettlement.trade.2";R:4;s:28:"1202:scoutsettlement.trade.3";R:4;s:26:"1202:scoutsettlement.speak";R:4;s:28:"1202:scoutsettlement.tribute";R:4;s:27:"1202:scoutsettlement.attack";R:4;s:31:"1202:scoutsettlement.speaktales";R:4;s:31:"1202:scoutsettlement.speakbeads";R:4;s:33:"1202:scoutsettlement.speaknothing";R:4;s:29:"1202:scoutsettlement.speakdie";R:4;s:33:"1202:scoutsettlement.tributeagree";R:4;s:36:"1202:scoutsettlement.tributedisagree";R:4;s:32:"1202:scoutsettlement.expertscout";R:4;s:21:"1202:scoutcolony.text";R:4;s:26:"1202:scoutcolony.negotiate";R:4;s:20:"1202:scoutcolony.spy";R:4;s:23:"1202:scoutcolony.attack";R:4;s:34:"1202:missionarysettlement.question";R:4;s:35:"1202:missionarysettlement.establish";R:4;s:32:"1202:missionarysettlement.heresy";R:4;s:32:"1202:missionarysettlement.incite";R:4;s:40:"1202:missionarysettlement.incitequestion";R:4;s:39:"1202:missionarysettlement.inciteconfirm";R:4;s:40:"1202:missionarysettlement.incitegoldfail";R:4;s:32:"1202:missionarysettlement.cancel";R:4;s:27:"1202:server.noroutetoserver";R:4;s:27:"1202:server.couldnotconnect";R:4;s:25:"1202:server.couldnotstart";R:4;s:26:"1202:server.alreadystarted";R:4;s:26:"1202:server.maximumplayers";R:4;s:25:"1202:server.usernameinuse";R:4;s:23:"1202:server.notallready";R:4;s:31:"1202:server.wrongfreecolversion";R:4;s:30:"1202:server.onlyadmincanlaunch";R:4;s:32:"1202:server.invalidplayernations";R:4;s:19:"1202:server.timeout";R:4;s:29:"1202:server.errorstartinggame";R:4;s:37:"1202:displaytiletextaction.empty.name";R:4;s:37:"1202:displaytiletextaction.names.name";R:4;s:38:"1202:displaytiletextaction.owners.name";R:4;s:39:"1202:displaytiletextaction.regions.name";R:4;s:21:"1202:debugaction.name";R:4;s:21:"1202:aboutaction.name";R:4;s:22:"1202:activeaction.name";R:4;s:32:"1202:assigntraderouteaction.name";R:4;s:39:"1202:assigntraderouteaction.accelerator";R:4;s:27:"1202:buildcolonyaction.name";R:4;s:34:"1202:buildcolonyaction.accelerator";R:4;s:22:"1202:centeraction.name";R:4;s:29:"1202:centeraction.accelerator";R:4;s:34:"1202:changewindowedmodeaction.name";R:4;s:41:"1202:changewindowedmodeaction.accelerator";R:4;s:20:"1202:chataction.name";R:4;s:27:"1202:chataction.accelerator";R:4;s:27:"1202:clearforestaction.name";R:4;s:34:"1202:clearforestaction.accelerator";R:4;s:27:"1202:clearordersaction.name";R:4;s:34:"1202:clearordersaction.accelerator";R:4;s:25:"1202:colopediaaction.name";R:4;s:33:"1202:colopediaaction.terrain.name";R:4;s:35:"1202:colopediaaction.resources.name";R:4;s:31:"1202:colopediaaction.units.name";R:4;s:31:"1202:colopediaaction.goods.name";R:4;s:32:"1202:colopediaaction.skills.name";R:4;s:35:"1202:colopediaaction.buildings.name";R:4;s:33:"1202:colopediaaction.fathers.name";R:4;s:33:"1202:colopediaaction.nations.name";R:4;s:38:"1202:colopediaaction.nation_types.name";R:4;s:34:"1202:colopediaaction.concepts.name";R:4;s:24:"1202:continueaction.name";R:4;s:31:"1202:continueaction.accelerator";R:4;s:35:"1202:declareindependenceaction.name";R:4;s:33:"1202:determinehighseasaction.name";R:4;s:27:"1202:disbandunitaction.name";R:4;s:34:"1202:disbandunitaction.accelerator";R:4;s:30:"1202:displaybordersaction.name";R:4;s:37:"1202:displaybordersaction.accelerator";R:4;s:27:"1202:displaygridaction.name";R:4;s:34:"1202:displaygridaction.accelerator";R:4;s:23:"1202:endturnaction.name";R:4;s:30:"1202:endturnaction.accelerator";R:4;s:22:"1202:europeaction.name";R:4;s:29:"1202:europeaction.accelerator";R:4;s:33:"1202:executegotoordersaction.name";R:4;s:40:"1202:executegotoordersaction.accelerator";R:4;s:29:"1202:changeaction.accelerator";R:4;s:34:"1202:changeaction.entercolony.name";R:4;s:36:"1202:changeaction.selectcarrier.name";R:4;s:37:"1202:changeaction.nextunitontile.name";R:4;s:22:"1202:changeaction.name";R:4;s:30:"1202:findsettlementaction.name";R:4;s:37:"1202:findsettlementaction.accelerator";R:4;s:23:"1202:fortifyaction.name";R:4;s:30:"1202:fortifyaction.accelerator";R:4;s:20:"1202:gotoaction.name";R:4;s:27:"1202:gotoaction.accelerator";R:4;s:24:"1202:gototileaction.name";R:4;s:31:"1202:gototileaction.accelerator";R:4;s:20:"1202:loadaction.name";R:4;s:27:"1202:loadaction.accelerator";R:4;s:27:"1202:mapcontrolsaction.name";R:4;s:34:"1202:mapcontrolsaction.accelerator";R:4;s:25:"1202:mapeditoraction.name";R:4;s:29:"1202:minimapzoominaction.name";R:4;s:36:"1202:minimapzoominaction.accelerator";R:4;s:39:"1202:minimapzoominaction.secondary.name";R:4;s:46:"1202:minimapzoominaction.secondary.accelerator";R:4;s:30:"1202:minimapzoomoutaction.name";R:4;s:37:"1202:minimapzoomoutaction.accelerator";R:4;s:40:"1202:minimapzoomoutaction.secondary.name";R:4;s:47:"1202:minimapzoomoutaction.secondary.accelerator";R:4;s:29:"1202:moveaction.e.accelerator";R:4;s:22:"1202:moveaction.e.name";R:4;s:39:"1202:moveaction.e.secondary.accelerator";R:4;s:32:"1202:moveaction.e.secondary.name";R:4;s:29:"1202:moveaction.n.accelerator";R:4;s:22:"1202:moveaction.n.name";R:4;s:39:"1202:moveaction.n.secondary.accelerator";R:4;s:32:"1202:moveaction.n.secondary.name";R:4;s:30:"1202:moveaction.ne.accelerator";R:4;s:23:"1202:moveaction.ne.name";R:4;s:40:"1202:moveaction.ne.secondary.accelerator";R:4;s:33:"1202:moveaction.ne.secondary.name";R:4;s:30:"1202:moveaction.nw.accelerator";R:4;s:23:"1202:moveaction.nw.name";R:4;s:40:"1202:moveaction.nw.secondary.accelerator";R:4;s:33:"1202:moveaction.nw.secondary.name";R:4;s:29:"1202:moveaction.s.accelerator";R:4;s:22:"1202:moveaction.s.name";R:4;s:39:"1202:moveaction.s.secondary.accelerator";R:4;s:32:"1202:moveaction.s.secondary.name";R:4;s:30:"1202:moveaction.se.accelerator";R:4;s:23:"1202:moveaction.se.name";R:4;s:40:"1202:moveaction.se.secondary.accelerator";R:4;s:33:"1202:moveaction.se.secondary.name";R:4;s:30:"1202:moveaction.sw.accelerator";R:4;s:23:"1202:moveaction.sw.name";R:4;s:40:"1202:moveaction.sw.secondary.accelerator";R:4;s:33:"1202:moveaction.sw.secondary.name";R:4;s:29:"1202:moveaction.w.accelerator";R:4;s:22:"1202:moveaction.w.name";R:4;s:39:"1202:moveaction.w.secondary.accelerator";R:4;s:32:"1202:moveaction.w.secondary.name";R:4;s:19:"1202:newaction.name";R:4;s:26:"1202:newaction.accelerator";R:4;s:27:"1202:newemptymapaction.name";R:4;s:20:"1202:openaction.name";R:4;s:27:"1202:openaction.accelerator";R:4;s:20:"1202:plowaction.name";R:4;s:27:"1202:plowaction.accelerator";R:4;s:27:"1202:preferencesaction.name";R:4;s:34:"1202:preferencesaction.accelerator";R:4;s:20:"1202:quitaction.name";R:4;s:27:"1202:quitaction.accelerator";R:4;s:25:"1202:reconnectaction.name";R:4;s:32:"1202:reconnectaction.accelerator";R:4;s:22:"1202:renameaction.name";R:4;s:29:"1202:renameaction.accelerator";R:4;s:30:"1202:reportreligionaction.name";R:4;s:37:"1202:reportreligionaction.accelerator";R:4;s:28:"1202:reportlabouraction.name";R:4;s:35:"1202:reportlabouraction.accelerator";R:4;s:28:"1202:reportcolonyaction.name";R:4;s:35:"1202:reportcolonyaction.accelerator";R:4;s:29:"1202:reportforeignaction.name";R:4;s:36:"1202:reportforeignaction.accelerator";R:4;s:28:"1202:reportindianaction.name";R:4;s:35:"1202:reportindianaction.accelerator";R:4;s:30:"1202:reportcongressaction.name";R:4;s:37:"1202:reportcongressaction.accelerator";R:4;s:30:"1202:reportmilitaryaction.name";R:4;s:37:"1202:reportmilitaryaction.accelerator";R:4;s:27:"1202:reportnavalaction.name";R:4;s:34:"1202:reportnavalaction.accelerator";R:4;s:27:"1202:reporttradeaction.name";R:4;s:34:"1202:reporttradeaction.accelerator";R:4;s:26:"1202:reportturnaction.name";R:4;s:33:"1202:reportturnaction.accelerator";R:4;s:34:"1202:reportrequirementsaction.name";R:4;s:41:"1202:reportrequirementsaction.accelerator";R:4;s:31:"1202:reporteducationaction.name";R:4;s:38:"1202:reporteducationaction.accelerator";R:4;s:27:"1202:reportcargoaction.name";R:4;s:34:"1202:reportcargoaction.accelerator";R:4;s:33:"1202:reportexplorationaction.name";R:4;s:40:"1202:reportexplorationaction.accelerator";R:4;s:29:"1202:reporthistoryaction.name";R:4;s:36:"1202:reporthistoryaction.accelerator";R:4;s:32:"1202:reportproductionaction.name";R:4;s:39:"1202:reportproductionaction.accelerator";R:4;s:32:"1202:reporthighscoresaction.name";R:4;s:20:"1202:roadaction.name";R:4;s:27:"1202:roadaction.accelerator";R:4;s:26:"1202:difficultyaction.name";R:4;s:33:"1202:difficultyaction.accelerator";R:4;s:27:"1202:gameoptionsaction.name";R:4;s:34:"1202:gameoptionsaction.accelerator";R:4;s:24:"1202:showmainaction.name";R:4;s:35:"1202:mapgeneratoroptionsaction.name";R:4;s:42:"1202:mapgeneratoroptionsaction.accelerator";R:4;s:22:"1202:retireaction.name";R:4;s:20:"1202:saveaction.name";R:4;s:27:"1202:saveaction.accelerator";R:4;s:27:"1202:saveandquitaction.name";R:4;s:34:"1202:saveandquitaction.accelerator";R:4;s:24:"1202:scalemapaction.name";R:4;s:22:"1202:sentryaction.name";R:4;s:29:"1202:sentryaction.accelerator";R:4;s:25:"1202:tilepopupaction.name";R:4;s:32:"1202:tilepopupaction.accelerator";R:4;s:24:"1202:skipunitaction.name";R:4;s:31:"1202:skipunitaction.accelerator";R:4;s:30:"1202:toggleviewmodeaction.name";R:4;s:37:"1202:toggleviewmodeaction.accelerator";R:4;s:26:"1202:traderouteaction.name";R:4;s:33:"1202:traderouteaction.accelerator";R:4;s:22:"1202:unloadaction.name";R:4;s:29:"1202:unloadaction.accelerator";R:4;s:20:"1202:waitaction.name";R:4;s:27:"1202:waitaction.accelerator";R:4;s:22:"1202:zoominaction.name";R:4;s:29:"1202:zoominaction.accelerator";R:4;s:23:"1202:zoomoutaction.name";R:4;s:30:"1202:zoomoutaction.accelerator";R:4;s:17:"1202:activateunit";R:4;s:21:"1202:activateallunits";R:4;s:16:"1202:fortifyunit";R:4;s:15:"1202:sentryunit";R:4;s:20:"1202:clearunitorders";R:4;s:14:"1202:leavetown";R:4;s:20:"1202:clearspeciality";R:4;s:31:"1202:clearspeciality.areyousure";R:4;s:31:"1202:clearspeciality.impossible";R:4;s:20:"1202:assigntoteacher";R:4;s:21:"1202:assigntraderoute";R:4;s:25:"1202:menu.unit.apprentice";R:4;s:25:"1202:menu.unit.experience";R:4;s:19:"1202:showproduction";R:4;s:21:"1202:showproductivity";R:4;s:24:"1202:status.startinggame";R:4;s:23:"1202:status.loadinggame";R:4;s:22:"1202:status.savinggame";R:4;s:16:"1202:gamestate.0";R:4;s:16:"1202:gamestate.1";R:4;s:16:"1202:gamestate.2";R:4;s:12:"1202:recruit";R:4;s:13:"1202:purchase";R:4;s:10:"1202:train";R:4;s:19:"1202:goingtoamerica";R:4;s:18:"1202:goingtoeurope";R:4;s:9:"1202:sail";R:4;s:11:"1202:inport";R:4;s:10:"1202:docks";R:4;s:10:"1202:cargo";R:4;s:10:"1202:sales";R:4;s:12:"1202:onboard";R:4;s:12:"1202:goingto";R:4;s:17:"1202:nearlocation";R:4;s:17:"1202:namelocation";R:4;s:15:"1202:inlocation";R:4;s:21:"1202:indiansettlement";R:4;s:18:"1202:indiancapital";R:4;s:26:"1202:indiansettlementowner";R:4;s:23:"1202:indiancapitalowner";R:4;s:12:"1202:capital";R:4;s:14:"1202:goldtitle";R:4;s:8:"1202:tax";R:4;s:9:"1202:gold";R:4;s:36:"1202:model.ability.capturegoods.name";R:4;s:48:"1202:model.ability.capturegoods.shortdescription";R:4;s:34:"1202:model.ability.carrygoods.name";R:4;s:46:"1202:model.ability.carrygoods.shortdescription";R:4;s:34:"1202:model.ability.carryunits.name";R:4;s:46:"1202:model.ability.carryunits.shortdescription";R:4;s:35:"1202:model.ability.foundcolony.name";R:4;s:47:"1202:model.ability.foundcolony.shortdescription";R:4;s:33:"1202:model.ability.navalunit.name";R:4;s:45:"1202:model.ability.navalunit.shortdescription";R:4;s:43:"1202:model.ability.electfoundingfather.name";R:4;s:55:"1202:model.ability.electfoundingfather.shortdescription";R:4;s:38:"1202:model.ability.canrecruitunit.name";R:4;s:50:"1202:model.ability.canrecruitunit.shortdescription";R:4;s:47:"1202:model.ability.royalexpeditionaryforce.name";R:4;s:59:"1202:model.ability.royalexpeditionaryforce.shortdescription";R:4;s:37:"1202:model.ability.ambushpenalty.name";R:4;s:49:"1202:model.ability.ambushpenalty.shortdescription";R:4;s:31:"1202:model.ability.hasport.name";R:4;s:43:"1202:model.ability.hasport.shortdescription";R:4;s:44:"1202:model.ability.independencedeclared.name";R:4;s:56:"1202:model.ability.independencedeclared.shortdescription";R:4;s:30:"1202:model.ability.native.name";R:4;s:42:"1202:model.ability.native.shortdescription";R:4;s:36:"1202:model.ability.movetoeurope.name";R:4;s:48:"1202:model.ability.movetoeurope.shortdescription";R:4;s:30:"1202:model.ability.undead.name";R:4;s:42:"1202:model.ability.undead.shortdescription";R:4;s:38:"1202:model.ability.plundernatives.name";R:4;s:50:"1202:model.ability.plundernatives.shortdescription";R:4;s:45:"1202:model.ability.avoidexcessproduction.name";R:4;s:57:"1202:model.ability.avoidexcessproduction.shortdescription";R:4;s:29:"1202:model.ability.build.name";R:4;s:41:"1202:model.ability.build.shortdescription";R:4;s:38:"1202:model.ability.autoproduction.name";R:4;s:50:"1202:model.ability.autoproduction.shortdescription";R:4;s:45:"1202:model.ability.expertsuseconnections.name";R:4;s:57:"1202:model.ability.expertsuseconnections.shortdescription";R:4;s:29:"1202:model.ability.teach.name";R:4;s:41:"1202:model.ability.teach.shortdescription";R:4;s:36:"1202:model.ability.bombardships.name";R:4;s:48:"1202:model.ability.bombardships.shortdescription";R:4;s:38:"1202:model.ability.produceinwater.name";R:4;s:50:"1202:model.ability.produceinwater.shortdescription";R:4;s:35:"1202:model.ability.repairunits.name";R:4;s:47:"1202:model.ability.repairunits.shortdescription";R:4;s:30:"1202:model.ability.export.name";R:4;s:42:"1202:model.ability.export.shortdescription";R:4;s:39:"1202:model.ability.dressmissionary.name";R:4;s:51:"1202:model.ability.dressmissionary.shortdescription";R:4;s:35:"1202:model.modifier.tradebonus.name";R:4;s:47:"1202:model.modifier.tradebonus.shortdescription";R:4;s:44:"1202:model.modifier.nativealarmmodifier.name";R:4;s:56:"1202:model.modifier.nativealarmmodifier.shortdescription";R:4;s:45:"1202:model.modifier.religiousunrestbonus.name";R:4;s:57:"1202:model.modifier.religiousunrestbonus.shortdescription";R:4;s:43:"1202:model.modifier.nativeconvertbonus.name";R:4;s:55:"1202:model.modifier.nativeconvertbonus.shortdescription";R:4;s:38:"1202:model.modifier.movementbonus.name";R:4;s:50:"1202:model.modifier.movementbonus.shortdescription";R:4;s:37:"1202:model.modifier.bombardbonus.name";R:4;s:49:"1202:model.modifier.bombardbonus.shortdescription";R:4;s:32:"1202:model.modifier.defence.name";R:4;s:44:"1202:model.modifier.defence.shortdescription";R:4;s:41:"1202:model.modifier.warehousestorage.name";R:4;s:53:"1202:model.modifier.warehousestorage.shortdescription";R:4;s:48:"1202:model.modifier.warehousestorage.description";R:4;s:42:"1202:model.modifier.minimumcolonysize.name";R:4;s:54:"1202:model.modifier.minimumcolonysize.shortdescription";R:4;s:40:"1202:model.modifier.breedingdivisor.name";R:4;s:52:"1202:model.modifier.breedingdivisor.shortdescription";R:4;s:39:"1202:model.modifier.breedingfactor.name";R:4;s:51:"1202:model.modifier.breedingfactor.shortdescription";R:4;s:53:"1202:model.modifier.consumeonlysurplusproduction.name";R:4;s:65:"1202:model.modifier.consumeonlysurplusproduction.shortdescription";R:4;s:39:"1202:model.modifier.offenceagainst.name";R:4;s:51:"1202:model.modifier.offenceagainst.shortdescription";R:4;s:33:"1202:model.colony.coloniststarved";R:4;s:31:"1202:model.colony.colonystarved";R:4;s:30:"1202:model.colony.faminefeared";R:4;s:30:"1202:model.colony.buildneedpop";R:4;s:37:"1202:model.colony.buildableneedsgoods";R:4;s:40:"1202:model.colony.insufficientproduction";R:4;s:29:"1202:model.colony.cannotbuild";R:4;s:31:"1202:model.colony.buildingready";R:4;s:37:"1202:model.colony.notbuildinganything";R:4;s:29:"1202:model.colony.newcolonist";R:4;s:28:"1202:model.colony.newconvert";R:4;s:27:"1202:model.colony.unitready";R:4;s:28:"1202:model.colony.unitchange";R:4;s:29:"1202:model.colony.solincrease";R:4;s:29:"1202:model.colony.soldecrease";R:4;s:24:"1202:model.colony.sol100";R:4;s:23:"1202:model.colony.sol50";R:4;s:28:"1202:model.colony.lostsol100";R:4;s:27:"1202:model.colony.lostsol50";R:4;s:35:"1202:model.colony.verybadgovernment";R:4;s:31:"1202:model.colony.badgovernment";R:4;s:37:"1202:model.colony.governmentimproved1";R:4;s:37:"1202:model.colony.governmentimproved2";R:4;s:31:"1202:model.colony.workerevicted";R:4;s:30:"1202:model.unit.arriveineurope";R:4;s:30:"1202:model.unit.indiantreasure";R:4;s:26:"1202:model.unit.indianraid";R:4;s:30:"1202:model.unit.indiansurprise";R:4;s:30:"1202:model.unit.colonycaptured";R:4;s:32:"1202:model.unit.colonycapturedby";R:4;s:29:"1202:model.unit.colonyburning";R:4;s:35:"1202:model.unit.colonyburning.other";R:4;s:28:"1202:model.unit.unitpromoted";R:4;s:28:"1202:model.unit.uniteducated";R:4;s:33:"1202:model.unit.equipmentcaptured";R:4;s:26:"1202:model.unit.experience";R:4;s:45:"1202:model.unit.enemyshipdamagedbybombardment";R:4;s:40:"1202:model.unit.shipdamagedbybombardment";R:4;s:26:"1202:model.unit.shipevaded";R:4;s:31:"1202:model.unit.enemyshipevaded";R:4;s:27:"1202:model.unit.shipdamaged";R:4;s:32:"1202:model.unit.enemyshipdamaged";R:4;s:24:"1202:model.unit.shipsunk";R:4;s:29:"1202:model.unit.enemyshipsunk";R:4;s:37:"1202:model.unit.shipevadedbombardment";R:4;s:37:"1202:model.unit.shipsunkbybombardment";R:4;s:28:"1202:model.unit.unitrepaired";R:4;s:22:"1202:model.unit.slowed";R:4;s:31:"1202:model.unit.unitslaughtered";R:4;s:29:"1202:model.unit.unitwincolony";R:4;s:33:"1202:model.unit.unitloseautoequip";R:4;s:27:"1202:model.unit.unitdemoted";R:4;s:36:"1202:model.unit.unitdemotedtounarmed";R:4;s:29:"1202:model.unit.unitdestroyed";R:4;s:28:"1202:model.unit.unitcaptured";R:4;s:36:"1202:model.unit.newconvertfromattack";R:4;s:44:"1202:model.unit.cashintreasuretrain.colonial";R:4;s:47:"1202:model.unit.cashintreasuretrain.independent";R:4;s:50:"1202:model.unit.cashintreasuretrain.other.colonial";R:4;s:53:"1202:model.unit.cashintreasuretrain.other.independent";R:4;s:20:"1202:model.unit.gift";R:4;s:27:"1202:model.unit.nomoretools";R:4;s:31:"1202:model.unit.buildingdamaged";R:4;s:27:"1202:model.unit.goodsstolen";R:4;s:29:"1202:model.unit.indianplunder";R:4;s:28:"1202:model.unit.burnmissions";R:4;s:32:"1202:model.unit.automaticdefence";R:4;s:25:"1202:model.unit.attrition";R:4;s:33:"1202:model.unit.confirmcancelwork";R:4;s:33:"1202:model.unit.occupation.active";R:4;s:44:"1202:model.unit.occupation.activenomovesleft";R:4;s:36:"1202:model.unit.occupation.fortified";R:4;s:37:"1202:model.unit.occupation.fortifying";R:4;s:33:"1202:model.unit.occupation.sentry";R:4;s:36:"1202:model.unit.occupation.in_colony";R:4;s:36:"1202:model.unit.occupation.improving";R:4;s:38:"1202:model.unit.occupation.underrepair";R:4;s:34:"1202:model.unit.occupation.skipped";R:4;s:39:"1202:model.unit.occupation.intraderoute";R:4;s:41:"1202:model.unit.occupation.goingsomewhere";R:4;s:36:"1202:model.unit.occupation.to_europe";R:4;s:37:"1202:model.unit.occupation.to_america";R:4;s:34:"1202:model.unit.occupation.unknown";R:4;s:34:"1202:model.building.warehouseempty";R:4;s:33:"1202:model.building.warehousefull";R:4;s:37:"1202:model.building.warehouseoverfull";R:4;s:34:"1202:model.building.warehousewaste";R:4;s:37:"1202:model.building.warehousesoonfull";R:4;s:34:"1202:model.building.notenoughinput";R:4;s:29:"1202:model.building.nostudent";R:4;s:26:"1202:model.europe.emigrate";R:4;s:28:"1202:model.europe.payarrears";R:4;s:32:"1202:model.europe.cantpayarrears";R:4;s:46:"1202:model.player.foundingfatherjoinedcongress";R:4;s:29:"1202:model.player.solincrease";R:4;s:29:"1202:model.player.soldecrease";R:4;s:30:"1202:model.player.independence";R:4;s:39:"1202:model.player.independence.announce";R:4;s:42:"1202:model.player.independence.unitsseized";R:4;s:44:"1202:model.player.independence.unitsacquired";R:4;s:39:"1202:model.player.continentalarmymuster";R:4;s:41:"1202:model.event.declareindependence.name";R:4;s:21:"1202:model.stance.war";R:4;s:23:"1202:model.stance.peace";R:4;s:28:"1202:model.stance.cease_fire";R:4;s:26:"1202:model.stance.alliance";R:4;s:31:"1202:model.market.priceincrease";R:4;s:31:"1202:model.market.pricedecrease";R:4;s:29:"1202:model.market.independent";R:4;s:39:"1202:model.monarch.action.raise_tax_war";R:4;s:43:"1202:model.monarch.action.raise_tax_war.yes";R:4;s:42:"1202:model.monarch.action.raise_tax_war.no";R:4;s:39:"1202:model.monarch.action.raise_tax_act";R:4;s:43:"1202:model.monarch.action.raise_tax_act.yes";R:4;s:42:"1202:model.monarch.action.raise_tax_act.no";R:4;s:43:"1202:model.monarch.colonygoodsparty.harbour";R:4;s:46:"1202:model.monarch.colonygoodsparty.landlocked";R:4;s:39:"1202:model.monarch.action.lower_tax_war";R:4;s:42:"1202:model.monarch.action.lower_tax_war.no";R:4;s:41:"1202:model.monarch.action.lower_tax_other";R:4;s:44:"1202:model.monarch.action.lower_tax_other.no";R:4;s:35:"1202:model.monarch.action.lower_tax";R:4;s:38:"1202:model.monarch.action.lower_tax.no";R:4;s:35:"1202:model.monarch.action.waive_tax";R:4;s:38:"1202:model.monarch.action.waive_tax.no";R:4;s:35:"1202:model.monarch.action.force_tax";R:4;s:38:"1202:model.monarch.action.force_tax.no";R:4;s:36:"1202:model.monarch.action.add_to_ref";R:4;s:39:"1202:model.monarch.action.add_to_ref.no";R:4;s:37:"1202:model.monarch.action.declare_war";R:4;s:40:"1202:model.monarch.action.declare_war.no";R:4;s:38:"1202:model.monarch.action.support_land";R:4;s:41:"1202:model.monarch.action.support_land.no";R:4;s:37:"1202:model.monarch.action.support_sea";R:4;s:40:"1202:model.monarch.action.support_sea.no";R:4;s:43:"1202:model.monarch.action.offer_mercenaries";R:4;s:47:"1202:model.monarch.action.offer_mercenaries.yes";R:4;s:46:"1202:model.monarch.action.offer_mercenaries.no";R:4;s:37:"1202:model.monarch.action.displeasure";R:4;s:40:"1202:model.monarch.action.displeasure.no";R:4;s:26:"1202:model.message.default";R:4;s:26:"1202:model.message.warning";R:4;s:34:"1202:model.message.sons_of_liberty";R:4;s:40:"1202:model.message.government_efficiency";R:4;s:37:"1202:model.message.warehouse_capacity";R:4;s:32:"1202:model.message.unit_improved";R:4;s:31:"1202:model.message.unit_demoted";R:4;s:28:"1202:model.message.unit_lost";R:4;s:29:"1202:model.message.unit_added";R:4;s:37:"1202:model.message.building_completed";R:4;s:36:"1202:model.message.foreign_diplomacy";R:4;s:32:"1202:model.message.market_prices";R:4;s:35:"1202:model.message.lost_city_rumour";R:4;s:32:"1202:model.message.missing_goods";R:4;s:27:"1202:model.message.tutorial";R:4;s:32:"1202:model.message.combat_result";R:4;s:29:"1202:model.message.gift_goods";R:4;s:26:"1202:model.message.demands";R:4;s:33:"1202:model.message.goods_movement";R:4;s:25:"1202:model.message.ignore";R:4;s:25:"1202:model.message.filter";R:4;s:40:"1202:model.ability.buildcustomhouse.name";R:4;s:36:"1202:model.ability.buildfactory.name";R:4;s:27:"1202:model.tile.plains.name";R:4;s:30:"1202:model.tile.grassland.name";R:4;s:28:"1202:model.tile.prairie.name";R:4;s:29:"1202:model.tile.savannah.name";R:4;s:26:"1202:model.tile.marsh.name";R:4;s:26:"1202:model.tile.swamp.name";R:4;s:27:"1202:model.tile.desert.name";R:4;s:27:"1202:model.tile.tundra.name";R:4;s:32:"1202:model.tile.mixedforest.name";R:4;s:34:"1202:model.tile.coniferforest.name";R:4;s:36:"1202:model.tile.broadleafforest.name";R:4;s:35:"1202:model.tile.tropicalforest.name";R:4;s:34:"1202:model.tile.wetlandforest.name";R:4;s:31:"1202:model.tile.rainforest.name";R:4;s:32:"1202:model.tile.scrubforest.name";R:4;s:33:"1202:model.tile.borealforest.name";R:4;s:27:"1202:model.tile.arctic.name";R:4;s:26:"1202:model.tile.ocean.name";R:4;s:25:"1202:model.tile.lake.name";R:4;s:29:"1202:model.tile.highseas.name";R:4;s:26:"1202:model.tile.hills.name";R:4;s:30:"1202:model.tile.mountains.name";R:4;s:31:"1202:model.tile.greatriver.name";R:4;s:33:"1202:model.tile.resourceexhausted";R:4;s:15:"1202:unexplored";R:4;s:10:"1202:river";R:4;s:15:"1202:minorriver";R:4;s:15:"1202:majorriver";R:4;s:38:"1202:model.option.guishowtutorial.name";R:4;s:50:"1202:model.option.guishowtutorial.shortdescription";R:4;s:34:"1202:model.tile.plains.description";R:4;s:37:"1202:model.tile.grassland.description";R:4;s:35:"1202:model.tile.prairie.description";R:4;s:36:"1202:model.tile.savannah.description";R:4;s:33:"1202:model.tile.marsh.description";R:4;s:33:"1202:model.tile.swamp.description";R:4;s:34:"1202:model.tile.desert.description";R:4;s:34:"1202:model.tile.tundra.description";R:4;s:39:"1202:model.tile.mixedforest.description";R:4;s:41:"1202:model.tile.coniferforest.description";R:4;s:43:"1202:model.tile.broadleafforest.description";R:4;s:42:"1202:model.tile.tropicalforest.description";R:4;s:41:"1202:model.tile.wetlandforest.description";R:4;s:38:"1202:model.tile.rainforest.description";R:4;s:39:"1202:model.tile.scrubforest.description";R:4;s:40:"1202:model.tile.borealforest.description";R:4;s:34:"1202:model.tile.arctic.description";R:4;s:33:"1202:model.tile.ocean.description";R:4;s:36:"1202:model.tile.highseas.description";R:4;s:33:"1202:model.tile.hills.description";R:4;s:37:"1202:model.tile.mountains.description";R:4;s:38:"1202:model.tile.greatriver.description";R:4;s:32:"1202:model.tile.lake.description";R:4;s:29:"1202:model.resource.game.name";R:4;s:33:"1202:model.resource.minerals.name";R:4;s:28:"1202:model.resource.ore.name";R:4;s:31:"1202:model.resource.silver.name";R:4;s:31:"1202:model.resource.lumber.name";R:4;s:29:"1202:model.resource.furs.name";R:4;s:32:"1202:model.resource.tobacco.name";R:4;s:30:"1202:model.resource.sugar.name";R:4;s:31:"1202:model.resource.cotton.name";R:4;s:30:"1202:model.resource.oasis.name";R:4;s:30:"1202:model.resource.grain.name";R:4;s:29:"1202:model.resource.fish.name";R:4;s:36:"1202:model.resource.game.description";R:4;s:40:"1202:model.resource.minerals.description";R:4;s:35:"1202:model.resource.ore.description";R:4;s:38:"1202:model.resource.silver.description";R:4;s:38:"1202:model.resource.lumber.description";R:4;s:36:"1202:model.resource.furs.description";R:4;s:39:"1202:model.resource.tobacco.description";R:4;s:37:"1202:model.resource.sugar.description";R:4;s:38:"1202:model.resource.cotton.description";R:4;s:37:"1202:model.resource.oasis.description";R:4;s:37:"1202:model.resource.grain.description";R:4;s:36:"1202:model.resource.fish.description";R:4;s:20:"1202:model.unit.type";R:4;s:33:"1202:model.unit.freecolonist.name";R:4;s:33:"1202:model.unit.expertfarmer.name";R:4;s:36:"1202:model.unit.expertfisherman.name";R:4;s:37:"1202:model.unit.expertfurtrapper.name";R:4;s:38:"1202:model.unit.expertsilverminer.name";R:4;s:37:"1202:model.unit.expertlumberjack.name";R:4;s:35:"1202:model.unit.expertoreminer.name";R:4;s:39:"1202:model.unit.mastersugarplanter.name";R:4;s:40:"1202:model.unit.mastercottonplanter.name";R:4;s:41:"1202:model.unit.mastertobaccoplanter.name";R:4;s:38:"1202:model.unit.firebrandpreacher.name";R:4;s:36:"1202:model.unit.mastercarpenter.name";R:4;s:36:"1202:model.unit.masterdistiller.name";R:4;s:33:"1202:model.unit.masterweaver.name";R:4;s:38:"1202:model.unit.mastertobacconist.name";R:4;s:36:"1202:model.unit.masterfurtrader.name";R:4;s:37:"1202:model.unit.masterblacksmith.name";R:4;s:35:"1202:model.unit.mastergunsmith.name";R:4;s:34:"1202:model.unit.seasonedscout.name";R:4;s:33:"1202:model.unit.hardypioneer.name";R:4;s:36:"1202:model.unit.hardypioneer.pioneer";R:4;s:35:"1202:model.unit.veteransoldier.name";R:4;s:38:"1202:model.unit.veteransoldier.soldier";R:4;s:38:"1202:model.unit.veteransoldier.dragoon";R:4;s:37:"1202:model.unit.jesuitmissionary.name";R:4;s:43:"1202:model.unit.jesuitmissionary.missionary";R:4;s:38:"1202:model.unit.indenturedservant.name";R:4;s:34:"1202:model.unit.pettycriminal.name";R:4;s:34:"1202:model.unit.indianconvert.name";R:4;s:26:"1202:model.unit.brave.name";R:4;s:29:"1202:model.unit.brave.soldier";R:4;s:29:"1202:model.unit.brave.dragoon";R:4;s:36:"1202:model.unit.colonialregular.name";R:4;s:39:"1202:model.unit.colonialregular.soldier";R:4;s:39:"1202:model.unit.colonialregular.dragoon";R:4;s:33:"1202:model.unit.kingsregular.name";R:4;s:36:"1202:model.unit.kingsregular.soldier";R:4;s:36:"1202:model.unit.kingsregular.dragoon";R:4;s:28:"1202:model.unit.caravel.name";R:4;s:28:"1202:model.unit.frigate.name";R:4;s:28:"1202:model.unit.galleon.name";R:4;s:28:"1202:model.unit.manowar.name";R:4;s:32:"1202:model.unit.merchantman.name";R:4;s:30:"1202:model.unit.privateer.name";R:4;s:37:"1202:model.unit.damagedartillery.name";R:4;s:34:"1202:model.unit.treasuretrain.name";R:4;s:31:"1202:model.unit.wagontrain.name";R:4;s:29:"1202:model.unit.milkmaid.name";R:4;s:35:"1202:model.unit.elderstatesman.name";R:4;s:40:"1202:model.unit.hardypioneer.nomoretools";R:4;s:39:"1202:model.unit.veteransoldier.captured";R:4;s:30:"1202:model.unit.artillery.name";R:4;s:33:"1202:model.unit.artillery.demoted";R:4;s:42:"1202:model.unit.damagedartillery.destroyed";R:4;s:29:"1202:model.unit.revenger.name";R:4;s:35:"1202:model.unit.flyingdutchman.name";R:4;s:27:"1202:model.unit.undead.name";R:4;s:26:"1202:model.unit.scout.name";R:4;s:28:"1202:model.unit.pioneer.name";R:4;s:28:"1202:model.unit.soldier.name";R:4;s:28:"1202:model.unit.dragoon.name";R:4;s:31:"1202:model.unit.missionary.name";R:4;s:25:"1202:model.unit.role.name";R:4;s:28:"1202:model.unit.role.default";R:4;s:26:"1202:model.unit.role.scout";R:4;s:28:"1202:model.unit.role.pioneer";R:4;s:28:"1202:model.unit.role.soldier";R:4;s:28:"1202:model.unit.role.dragoon";R:4;s:31:"1202:model.unit.role.missionary";R:4;s:28:"1202:model.unit.unarmed.name";R:4;s:26:"1202:model.unit.armed.name";R:4;s:28:"1202:model.unit.mounted.name";R:4;s:26:"1202:model.unit.nationunit";R:4;s:25:"1202:model.unit.workingas";R:4;s:38:"1202:model.unit.expertfarmer.workingas";R:4;s:41:"1202:model.unit.expertfisherman.workingas";R:4;s:42:"1202:model.unit.expertfurtrapper.workingas";R:4;s:43:"1202:model.unit.expertsilverminer.workingas";R:4;s:42:"1202:model.unit.expertlumberjack.workingas";R:4;s:40:"1202:model.unit.expertoreminer.workingas";R:4;s:44:"1202:model.unit.mastersugarplanter.workingas";R:4;s:45:"1202:model.unit.mastercottonplanter.workingas";R:4;s:46:"1202:model.unit.mastertobaccoplanter.workingas";R:4;s:43:"1202:model.unit.firebrandpreacher.workingas";R:4;s:40:"1202:model.unit.elderstatesman.workingas";R:4;s:41:"1202:model.unit.mastercarpenter.workingas";R:4;s:41:"1202:model.unit.masterdistiller.workingas";R:4;s:38:"1202:model.unit.masterweaver.workingas";R:4;s:43:"1202:model.unit.mastertobacconist.workingas";R:4;s:41:"1202:model.unit.masterfurtrader.workingas";R:4;s:42:"1202:model.unit.masterblacksmith.workingas";R:4;s:40:"1202:model.unit.mastergunsmith.workingas";R:4;s:39:"1202:model.unit.seasonedscout.workingas";R:4;s:38:"1202:model.unit.hardypioneer.workingas";R:4;s:40:"1202:model.unit.veteransoldier.workingas";R:4;s:42:"1202:model.unit.jesuitmissionary.workingas";R:4;s:40:"1202:model.unit.freecolonist.description";R:4;s:40:"1202:model.unit.expertfarmer.description";R:4;s:43:"1202:model.unit.expertfisherman.description";R:4;s:44:"1202:model.unit.expertfurtrapper.description";R:4;s:45:"1202:model.unit.expertsilverminer.description";R:4;s:44:"1202:model.unit.expertlumberjack.description";R:4;s:42:"1202:model.unit.expertoreminer.description";R:4;s:46:"1202:model.unit.mastersugarplanter.description";R:4;s:47:"1202:model.unit.mastercottonplanter.description";R:4;s:48:"1202:model.unit.mastertobaccoplanter.description";R:4;s:45:"1202:model.unit.firebrandpreacher.description";R:4;s:42:"1202:model.unit.elderstatesman.description";R:4;s:43:"1202:model.unit.mastercarpenter.description";R:4;s:43:"1202:model.unit.masterdistiller.description";R:4;s:40:"1202:model.unit.masterweaver.description";R:4;s:45:"1202:model.unit.mastertobacconist.description";R:4;s:43:"1202:model.unit.masterfurtrader.description";R:4;s:44:"1202:model.unit.masterblacksmith.description";R:4;s:42:"1202:model.unit.mastergunsmith.description";R:4;s:41:"1202:model.unit.seasonedscout.description";R:4;s:40:"1202:model.unit.hardypioneer.description";R:4;s:42:"1202:model.unit.veteransoldier.description";R:4;s:44:"1202:model.unit.jesuitmissionary.description";R:4;s:45:"1202:model.unit.indenturedservant.description";R:4;s:41:"1202:model.unit.pettycriminal.description";R:4;s:41:"1202:model.unit.indianconvert.description";R:4;s:33:"1202:model.unit.brave.description";R:4;s:43:"1202:model.unit.colonialregular.description";R:4;s:40:"1202:model.unit.kingsregular.description";R:4;s:35:"1202:model.unit.caravel.description";R:4;s:35:"1202:model.unit.frigate.description";R:4;s:35:"1202:model.unit.galleon.description";R:4;s:35:"1202:model.unit.manowar.description";R:4;s:39:"1202:model.unit.merchantman.description";R:4;s:37:"1202:model.unit.privateer.description";R:4;s:37:"1202:model.unit.artillery.description";R:4;s:44:"1202:model.unit.damagedartillery.description";R:4;s:41:"1202:model.unit.treasuretrain.description";R:4;s:38:"1202:model.unit.wagontrain.description";R:4;s:36:"1202:model.unit.milkmaid.description";R:4;s:36:"1202:model.unit.revenger.description";R:4;s:42:"1202:model.unit.flyingdutchman.description";R:4;s:34:"1202:model.unit.undead.description";R:4;s:35:"1202:model.unit.pioneer.description";R:4;s:35:"1202:model.unit.soldier.description";R:4;s:35:"1202:model.unit.dragoon.description";R:4;s:33:"1202:model.unit.scout.description";R:4;s:38:"1202:model.unit.missionary.description";R:4;s:26:"1202:model.goods.food.name";R:4;s:28:"1202:model.goods.food.workas";R:4;s:31:"1202:model.goods.food.workingas";R:4;s:27:"1202:model.goods.grain.name";R:4;s:29:"1202:model.goods.grain.workas";R:4;s:32:"1202:model.goods.grain.workingas";R:4;s:26:"1202:model.goods.meat.name";R:4;s:28:"1202:model.goods.meat.workas";R:4;s:31:"1202:model.goods.meat.workingas";R:4;s:26:"1202:model.goods.fish.name";R:4;s:28:"1202:model.goods.fish.workas";R:4;s:31:"1202:model.goods.fish.workingas";R:4;s:27:"1202:model.goods.sugar.name";R:4;s:29:"1202:model.goods.sugar.workas";R:4;s:32:"1202:model.goods.sugar.workingas";R:4;s:29:"1202:model.goods.tobacco.name";R:4;s:31:"1202:model.goods.tobacco.workas";R:4;s:34:"1202:model.goods.tobacco.workingas";R:4;s:28:"1202:model.goods.cotton.name";R:4;s:30:"1202:model.goods.cotton.workas";R:4;s:33:"1202:model.goods.cotton.workingas";R:4;s:26:"1202:model.goods.furs.name";R:4;s:28:"1202:model.goods.furs.workas";R:4;s:31:"1202:model.goods.furs.workingas";R:4;s:28:"1202:model.goods.lumber.name";R:4;s:30:"1202:model.goods.lumber.workas";R:4;s:33:"1202:model.goods.lumber.workingas";R:4;s:25:"1202:model.goods.ore.name";R:4;s:27:"1202:model.goods.ore.workas";R:4;s:30:"1202:model.goods.ore.workingas";R:4;s:28:"1202:model.goods.silver.name";R:4;s:30:"1202:model.goods.silver.workas";R:4;s:33:"1202:model.goods.silver.workingas";R:4;s:25:"1202:model.goods.rum.name";R:4;s:27:"1202:model.goods.rum.workas";R:4;s:30:"1202:model.goods.rum.workingas";R:4;s:28:"1202:model.goods.cigars.name";R:4;s:30:"1202:model.goods.cigars.workas";R:4;s:33:"1202:model.goods.cigars.workingas";R:4;s:27:"1202:model.goods.cloth.name";R:4;s:29:"1202:model.goods.cloth.workas";R:4;s:32:"1202:model.goods.cloth.workingas";R:4;s:27:"1202:model.goods.coats.name";R:4;s:29:"1202:model.goods.coats.workas";R:4;s:32:"1202:model.goods.coats.workingas";R:4;s:27:"1202:model.goods.tools.name";R:4;s:29:"1202:model.goods.tools.workas";R:4;s:32:"1202:model.goods.tools.workingas";R:4;s:29:"1202:model.goods.muskets.name";R:4;s:31:"1202:model.goods.muskets.workas";R:4;s:34:"1202:model.goods.muskets.workingas";R:4;s:27:"1202:model.goods.bells.name";R:4;s:29:"1202:model.goods.bells.workas";R:4;s:32:"1202:model.goods.bells.workingas";R:4;s:29:"1202:model.goods.crosses.name";R:4;s:31:"1202:model.goods.crosses.workas";R:4;s:34:"1202:model.goods.crosses.workingas";R:4;s:29:"1202:model.goods.hammers.name";R:4;s:31:"1202:model.goods.hammers.workas";R:4;s:34:"1202:model.goods.hammers.workingas";R:4;s:32:"1202:model.goods.tradegoods.name";R:4;s:28:"1202:model.goods.horses.name";R:4;s:33:"1202:model.goods.horses.destroyed";R:4;s:24:"1202:model.goods.unknown";R:4;s:26:"1202:model.goods.boycotted";R:4;s:31:"1202:model.goods.goodsboycotted";R:4;s:28:"1202:model.goods.goodsamount";R:4;s:33:"1202:model.goods.food.description";R:4;s:34:"1202:model.goods.grain.description";R:4;s:33:"1202:model.goods.meat.description";R:4;s:34:"1202:model.goods.sugar.description";R:4;s:36:"1202:model.goods.tobacco.description";R:4;s:35:"1202:model.goods.cotton.description";R:4;s:33:"1202:model.goods.furs.description";R:4;s:35:"1202:model.goods.lumber.description";R:4;s:32:"1202:model.goods.ore.description";R:4;s:35:"1202:model.goods.silver.description";R:4;s:35:"1202:model.goods.horses.description";R:4;s:32:"1202:model.goods.rum.description";R:4;s:35:"1202:model.goods.cigars.description";R:4;s:34:"1202:model.goods.cloth.description";R:4;s:34:"1202:model.goods.coats.description";R:4;s:39:"1202:model.goods.tradegoods.description";R:4;s:34:"1202:model.goods.tools.description";R:4;s:36:"1202:model.goods.muskets.description";R:4;s:33:"1202:model.goods.fish.description";R:4;s:34:"1202:model.goods.bells.description";R:4;s:36:"1202:model.goods.crosses.description";R:4;s:36:"1202:model.goods.hammers.description";R:4;s:33:"1202:model.improvement.river.name";R:4;s:40:"1202:model.improvement.river.description";R:4;s:32:"1202:model.improvement.road.name";R:4;s:39:"1202:model.improvement.road.description";R:4;s:34:"1202:model.improvement.road.action";R:4;s:44:"1202:model.improvement.road.occupationstring";R:4;s:32:"1202:model.improvement.plow.name";R:4;s:39:"1202:model.improvement.plow.description";R:4;s:34:"1202:model.improvement.plow.action";R:4;s:44:"1202:model.improvement.plow.occupationstring";R:4;s:39:"1202:model.improvement.clearforest.name";R:4;s:41:"1202:model.improvement.clearforest.action";R:4;s:51:"1202:model.improvement.clearforest.occupationstring";R:4;s:41:"1202:model.improvement.fishbonusland.name";R:4;s:48:"1202:model.improvement.fishbonusland.description";R:4;s:42:"1202:model.improvement.fishbonusriver.name";R:4;s:49:"1202:model.improvement.fishbonusriver.description";R:4;s:29:"1202:model.nation.apache.name";R:4;s:30:"1202:model.nation.apache.ruler";R:4;s:29:"1202:model.nation.arawak.name";R:4;s:30:"1202:model.nation.arawak.ruler";R:4;s:28:"1202:model.nation.aztec.name";R:4;s:29:"1202:model.nation.aztec.ruler";R:4;s:31:"1202:model.nation.cherokee.name";R:4;s:32:"1202:model.nation.cherokee.ruler";R:4;s:27:"1202:model.nation.inca.name";R:4;s:28:"1202:model.nation.inca.ruler";R:4;s:31:"1202:model.nation.iroquois.name";R:4;s:32:"1202:model.nation.iroquois.ruler";R:4;s:28:"1202:model.nation.sioux.name";R:4;s:29:"1202:model.nation.sioux.ruler";R:4;s:27:"1202:model.nation.tupi.name";R:4;s:28:"1202:model.nation.tupi.ruler";R:4;s:31:"1202:model.nation.danish.europe";R:4;s:29:"1202:model.nation.danish.name";R:4;s:36:"1202:model.nation.danish.newlandname";R:4;s:30:"1202:model.nation.danish.ruler";R:4;s:32:"1202:model.nation.danishref.name";R:4;s:33:"1202:model.nation.danishref.ruler";R:4;s:30:"1202:model.nation.dutch.europe";R:4;s:28:"1202:model.nation.dutch.name";R:4;s:35:"1202:model.nation.dutch.newlandname";R:4;s:29:"1202:model.nation.dutch.ruler";R:4;s:31:"1202:model.nation.dutchref.name";R:4;s:32:"1202:model.nation.dutchref.ruler";R:4;s:32:"1202:model.nation.english.europe";R:4;s:30:"1202:model.nation.english.name";R:4;s:37:"1202:model.nation.english.newlandname";R:4;s:31:"1202:model.nation.english.ruler";R:4;s:33:"1202:model.nation.englishref.name";R:4;s:34:"1202:model.nation.englishref.ruler";R:4;s:31:"1202:model.nation.french.europe";R:4;s:29:"1202:model.nation.french.name";R:4;s:36:"1202:model.nation.french.newlandname";R:4;s:30:"1202:model.nation.french.ruler";R:4;s:32:"1202:model.nation.frenchref.name";R:4;s:33:"1202:model.nation.frenchref.ruler";R:4;s:35:"1202:model.nation.portuguese.europe";R:4;s:33:"1202:model.nation.portuguese.name";R:4;s:40:"1202:model.nation.portuguese.newlandname";R:4;s:34:"1202:model.nation.portuguese.ruler";R:4;s:36:"1202:model.nation.portugueseref.name";R:4;s:37:"1202:model.nation.portugueseref.ruler";R:4;s:32:"1202:model.nation.russian.europe";R:4;s:30:"1202:model.nation.russian.name";R:4;s:37:"1202:model.nation.russian.newlandname";R:4;s:31:"1202:model.nation.russian.ruler";R:4;s:33:"1202:model.nation.russianref.name";R:4;s:34:"1202:model.nation.russianref.ruler";R:4;s:32:"1202:model.nation.spanish.europe";R:4;s:30:"1202:model.nation.spanish.name";R:4;s:37:"1202:model.nation.spanish.newlandname";R:4;s:31:"1202:model.nation.spanish.ruler";R:4;s:33:"1202:model.nation.spanishref.name";R:4;s:34:"1202:model.nation.spanishref.ruler";R:4;s:32:"1202:model.nation.swedish.europe";R:4;s:30:"1202:model.nation.swedish.name";R:4;s:37:"1202:model.nation.swedish.newlandname";R:4;s:31:"1202:model.nation.swedish.ruler";R:4;s:33:"1202:model.nation.swedishref.name";R:4;s:34:"1202:model.nation.swedishref.ruler";R:4;s:30:"1202:model.nation.turkish.name";R:4;s:29:"1202:model.nation.german.name";R:4;s:31:"1202:model.nation.prussian.name";R:4;s:31:"1202:model.nation.austrian.name";R:4;s:35:"1202:model.nation.unknownenemy.name";R:4;s:31:"1202:model.nationtype.none.name";R:4;s:43:"1202:model.nationtype.none.shortdescription";R:4;s:34:"1202:model.nationtype.default.name";R:4;s:46:"1202:model.nationtype.default.shortdescription";R:4;s:32:"1202:model.nationtype.trade.name";R:4;s:44:"1202:model.nationtype.trade.shortdescription";R:4;s:38:"1202:model.nationtype.cooperation.name";R:4;s:50:"1202:model.nationtype.cooperation.shortdescription";R:4;s:38:"1202:model.nationtype.immigration.name";R:4;s:50:"1202:model.nationtype.immigration.shortdescription";R:4;s:35:"1202:model.nationtype.conquest.name";R:4;s:47:"1202:model.nationtype.conquest.shortdescription";R:4;s:32:"1202:model.nationtype.naval.name";R:4;s:44:"1202:model.nationtype.naval.shortdescription";R:4;s:35:"1202:model.nationtype.building.name";R:4;s:47:"1202:model.nationtype.building.shortdescription";R:4;s:38:"1202:model.nationtype.furtrapping.name";R:4;s:50:"1202:model.nationtype.furtrapping.shortdescription";R:4;s:38:"1202:model.nationtype.agriculture.name";R:4;s:50:"1202:model.nationtype.agriculture.shortdescription";R:4;s:30:"1202:model.nationtype.ref.name";R:4;s:42:"1202:model.nationtype.ref.shortdescription";R:4;s:33:"1202:model.nationtype.apache.name";R:4;s:40:"1202:model.nationtype.apache.description";R:4;s:33:"1202:model.nationtype.arawak.name";R:4;s:40:"1202:model.nationtype.arawak.description";R:4;s:32:"1202:model.nationtype.aztec.name";R:4;s:39:"1202:model.nationtype.aztec.description";R:4;s:35:"1202:model.nationtype.cherokee.name";R:4;s:42:"1202:model.nationtype.cherokee.description";R:4;s:31:"1202:model.nationtype.inca.name";R:4;s:38:"1202:model.nationtype.inca.description";R:4;s:35:"1202:model.nationtype.iroquois.name";R:4;s:42:"1202:model.nationtype.iroquois.description";R:4;s:32:"1202:model.nationtype.sioux.name";R:4;s:39:"1202:model.nationtype.sioux.description";R:4;s:31:"1202:model.nationtype.tupi.name";R:4;s:38:"1202:model.nationtype.tupi.description";R:4;s:37:"1202:model.history.discover_new_world";R:4;s:34:"1202:model.history.discover_region";R:4;s:30:"1202:model.history.meet_nation";R:4;s:31:"1202:model.history.city_of_gold";R:4;s:31:"1202:model.history.found_colony";R:4;s:33:"1202:model.history.abandon_colony";R:4;s:33:"1202:model.history.conquer_colony";R:4;s:35:"1202:model.history.colony_destroyed";R:4;s:35:"1202:model.history.colony_conquered";R:4;s:37:"1202:model.history.destroy_settlement";R:4;s:33:"1202:model.history.destroy_nation";R:4;s:35:"1202:model.history.nation_destroyed";R:4;s:34:"1202:model.history.founding_father";R:4;s:39:"1202:model.history.declare_independence";R:4;s:31:"1202:model.history.independence";R:4;s:37:"1202:model.history.spanish_succession";R:4;s:37:"1202:model.diplomacy.attack.ceasefire";R:4;s:33:"1202:model.diplomacy.attack.peace";R:4;s:36:"1202:model.diplomacy.attack.alliance";R:4;s:35:"1202:model.diplomacy.attack.confirm";R:4;s:33:"1202:model.diplomacy.war.declared";R:4;s:31:"1202:model.diplomacy.war.others";R:4;s:40:"1202:model.diplomacy.cease_fire.declared";R:4;s:38:"1202:model.diplomacy.cease_fire.others";R:4;s:35:"1202:model.diplomacy.peace.declared";R:4;s:33:"1202:model.diplomacy.peace.others";R:4;s:38:"1202:model.diplomacy.alliance.declared";R:4;s:36:"1202:model.diplomacy.alliance.others";R:4;s:38:"1202:model.diplomacy.spanishsuccession";R:4;s:34:"1202:model.diplomacy.dead.european";R:4;s:32:"1202:model.diplomacy.dead.native";R:4;s:32:"1202:lostcityrumour.burialground";R:4;s:26:"1202:lostcityrumour.cibola";R:4;s:28:"1202:lostcityrumour.colonist";R:4;s:38:"1202:lostcityrumour.expeditionvanishes";R:4;s:35:"1202:lostcityrumour.fountainofyouth";R:4;s:48:"1202:lostcityrumour.fountainofyouthwithouteurope";R:4;s:25:"1202:lostcityrumour.learn";R:4;s:26:"1202:lostcityrumour.mayans";R:4;s:33:"1202:lostcityrumour.moundsnothing";R:4;s:34:"1202:lostcityrumour.moundstreasure";R:4;s:34:"1202:lostcityrumour.moundstrinkets";R:4;s:29:"1202:lostcityrumour.nothing.0";R:4;s:25:"1202:lostcityrumour.ruins";R:4;s:31:"1202:lostcityrumour.tribalchief";R:4;s:30:"1202:lostcityrumour.cityname.0";R:4;s:30:"1202:lostcityrumour.cityname.1";R:4;s:30:"1202:lostcityrumour.cityname.2";R:4;s:30:"1202:lostcityrumour.cityname.3";R:4;s:30:"1202:lostcityrumour.cityname.4";R:4;s:30:"1202:lostcityrumour.cityname.5";R:4;s:30:"1202:lostcityrumour.cityname.6";R:4;s:37:"1202:model.buildabletype.nothing.name";R:4;s:33:"1202:model.building.townhall.name";R:4;s:39:"1202:model.building.carpenterhouse.name";R:4;s:35:"1202:model.building.lumbermill.name";R:4;s:40:"1202:model.building.blacksmithhouse.name";R:4;s:39:"1202:model.building.blacksmithshop.name";R:4;s:34:"1202:model.building.ironworks.name";R:4;s:41:"1202:model.building.tobacconisthouse.name";R:4;s:40:"1202:model.building.tobacconistshop.name";R:4;s:37:"1202:model.building.cigarfactory.name";R:4;s:36:"1202:model.building.weaverhouse.name";R:4;s:35:"1202:model.building.weavershop.name";R:4;s:36:"1202:model.building.textilemill.name";R:4;s:39:"1202:model.building.distillerhouse.name";R:4;s:38:"1202:model.building.rumdistillery.name";R:4;s:35:"1202:model.building.rumfactory.name";R:4;s:39:"1202:model.building.furtraderhouse.name";R:4;s:39:"1202:model.building.furtradingpost.name";R:4;s:35:"1202:model.building.furfactory.name";R:4;s:36:"1202:model.building.schoolhouse.name";R:4;s:32:"1202:model.building.college.name";R:4;s:35:"1202:model.building.university.name";R:4;s:31:"1202:model.building.armory.name";R:4;s:33:"1202:model.building.magazine.name";R:4;s:32:"1202:model.building.arsenal.name";R:4;s:31:"1202:model.building.chapel.name";R:4;s:31:"1202:model.building.church.name";R:4;s:34:"1202:model.building.cathedral.name";R:4;s:33:"1202:model.building.stockade.name";R:4;s:29:"1202:model.building.fort.name";R:4;s:33:"1202:model.building.fortress.name";R:4;s:30:"1202:model.building.depot.name";R:4;s:34:"1202:model.building.warehouse.name";R:4;s:43:"1202:model.building.warehouseexpansion.name";R:4;s:32:"1202:model.building.country.name";R:4;s:32:"1202:model.building.stables.name";R:4;s:30:"1202:model.building.docks.name";R:4;s:32:"1202:model.building.drydock.name";R:4;s:33:"1202:model.building.shipyard.name";R:4;s:38:"1202:model.building.printingpress.name";R:4;s:34:"1202:model.building.newspaper.name";R:4;s:36:"1202:model.building.customhouse.name";R:4;s:40:"1202:model.building.townhall.description";R:4;s:46:"1202:model.building.carpenterhouse.description";R:4;s:42:"1202:model.building.lumbermill.description";R:4;s:47:"1202:model.building.blacksmithhouse.description";R:4;s:46:"1202:model.building.blacksmithshop.description";R:4;s:41:"1202:model.building.ironworks.description";R:4;s:48:"1202:model.building.tobacconisthouse.description";R:4;s:47:"1202:model.building.tobacconistshop.description";R:4;s:44:"1202:model.building.cigarfactory.description";R:4;s:43:"1202:model.building.weaverhouse.description";R:4;s:42:"1202:model.building.weavershop.description";R:4;s:43:"1202:model.building.textilemill.description";R:4;s:46:"1202:model.building.distillerhouse.description";R:4;s:45:"1202:model.building.rumdistillery.description";R:4;s:42:"1202:model.building.rumfactory.description";R:4;s:46:"1202:model.building.furtraderhouse.description";R:4;s:46:"1202:model.building.furtradingpost.description";R:4;s:42:"1202:model.building.furfactory.description";R:4;s:43:"1202:model.building.schoolhouse.description";R:4;s:39:"1202:model.building.college.description";R:4;s:42:"1202:model.building.university.description";R:4;s:38:"1202:model.building.armory.description";R:4;s:40:"1202:model.building.magazine.description";R:4;s:39:"1202:model.building.arsenal.description";R:4;s:38:"1202:model.building.chapel.description";R:4;s:38:"1202:model.building.church.description";R:4;s:41:"1202:model.building.cathedral.description";R:4;s:40:"1202:model.building.stockade.description";R:4;s:36:"1202:model.building.fort.description";R:4;s:40:"1202:model.building.fortress.description";R:4;s:37:"1202:model.building.depot.description";R:4;s:41:"1202:model.building.warehouse.description";R:4;s:50:"1202:model.building.warehouseexpansion.description";R:4;s:39:"1202:model.building.country.description";R:4;s:39:"1202:model.building.stables.description";R:4;s:37:"1202:model.building.docks.description";R:4;s:39:"1202:model.building.drydock.description";R:4;s:40:"1202:model.building.shipyard.description";R:4;s:45:"1202:model.building.printingpress.description";R:4;s:41:"1202:model.building.newspaper.description";R:4;s:43:"1202:model.building.customhouse.description";R:4;s:40:"1202:model.foundingfather.adamsmith.name";R:4;s:47:"1202:model.foundingfather.adamsmith.description";R:4;s:40:"1202:model.foundingfather.adamsmith.text";R:4;s:49:"1202:model.foundingfather.adamsmith.birthanddeath";R:4;s:42:"1202:model.foundingfather.jacobfugger.name";R:4;s:49:"1202:model.foundingfather.jacobfugger.description";R:4;s:42:"1202:model.foundingfather.jacobfugger.text";R:4;s:51:"1202:model.foundingfather.jacobfugger.birthanddeath";R:4;s:42:"1202:model.foundingfather.peterminuit.name";R:4;s:49:"1202:model.foundingfather.peterminuit.description";R:4;s:42:"1202:model.foundingfather.peterminuit.text";R:4;s:51:"1202:model.foundingfather.peterminuit.birthanddeath";R:4;s:46:"1202:model.foundingfather.peterstuyvesant.name";R:4;s:53:"1202:model.foundingfather.peterstuyvesant.description";R:4;s:46:"1202:model.foundingfather.peterstuyvesant.text";R:4;s:55:"1202:model.foundingfather.peterstuyvesant.birthanddeath";R:4;s:40:"1202:model.foundingfather.jandewitt.name";R:4;s:47:"1202:model.foundingfather.jandewitt.description";R:4;s:40:"1202:model.foundingfather.jandewitt.text";R:4;s:49:"1202:model.foundingfather.jandewitt.birthanddeath";R:4;s:48:"1202:model.foundingfather.ferdinandmagellan.name";R:4;s:55:"1202:model.foundingfather.ferdinandmagellan.description";R:4;s:48:"1202:model.foundingfather.ferdinandmagellan.text";R:4;s:57:"1202:model.foundingfather.ferdinandmagellan.birthanddeath";R:4;s:50:"1202:model.foundingfather.franciscodecoronado.name";R:4;s:57:"1202:model.foundingfather.franciscodecoronado.description";R:4;s:50:"1202:model.foundingfather.franciscodecoronado.text";R:4;s:59:"1202:model.foundingfather.franciscodecoronado.birthanddeath";R:4;s:45:"1202:model.foundingfather.hernandodesoto.name";R:4;s:52:"1202:model.foundingfather.hernandodesoto.description";R:4;s:45:"1202:model.foundingfather.hernandodesoto.text";R:4;s:54:"1202:model.foundingfather.hernandodesoto.birthanddeath";R:4;s:42:"1202:model.foundingfather.henryhudson.name";R:4;s:49:"1202:model.foundingfather.henryhudson.description";R:4;s:42:"1202:model.foundingfather.henryhudson.text";R:4;s:51:"1202:model.foundingfather.henryhudson.birthanddeath";R:4;s:38:"1202:model.foundingfather.lasalle.name";R:4;s:45:"1202:model.foundingfather.lasalle.description";R:4;s:38:"1202:model.foundingfather.lasalle.text";R:4;s:47:"1202:model.foundingfather.lasalle.birthanddeath";R:4;s:43:"1202:model.foundingfather.hernancortes.name";R:4;s:50:"1202:model.foundingfather.hernancortes.description";R:4;s:43:"1202:model.foundingfather.hernancortes.text";R:4;s:52:"1202:model.foundingfather.hernancortes.birthanddeath";R:4;s:47:"1202:model.foundingfather.georgewashington.name";R:4;s:54:"1202:model.foundingfather.georgewashington.description";R:4;s:47:"1202:model.foundingfather.georgewashington.text";R:4;s:56:"1202:model.foundingfather.georgewashington.birthanddeath";R:4;s:41:"1202:model.foundingfather.paulrevere.name";R:4;s:48:"1202:model.foundingfather.paulrevere.description";R:4;s:41:"1202:model.foundingfather.paulrevere.text";R:4;s:50:"1202:model.foundingfather.paulrevere.birthanddeath";R:4;s:43:"1202:model.foundingfather.francisdrake.name";R:4;s:50:"1202:model.foundingfather.francisdrake.description";R:4;s:43:"1202:model.foundingfather.francisdrake.text";R:4;s:52:"1202:model.foundingfather.francisdrake.birthanddeath";R:4;s:44:"1202:model.foundingfather.johnpauljones.name";R:4;s:51:"1202:model.foundingfather.johnpauljones.description";R:4;s:44:"1202:model.foundingfather.johnpauljones.text";R:4;s:53:"1202:model.foundingfather.johnpauljones.birthanddeath";R:4;s:46:"1202:model.foundingfather.thomasjefferson.name";R:4;s:53:"1202:model.foundingfather.thomasjefferson.description";R:4;s:46:"1202:model.foundingfather.thomasjefferson.text";R:4;s:55:"1202:model.foundingfather.thomasjefferson.birthanddeath";R:4;s:41:"1202:model.foundingfather.pocahontas.name";R:4;s:48:"1202:model.foundingfather.pocahontas.description";R:4;s:41:"1202:model.foundingfather.pocahontas.text";R:4;s:50:"1202:model.foundingfather.pocahontas.birthanddeath";R:4;s:42:"1202:model.foundingfather.thomaspaine.name";R:4;s:49:"1202:model.foundingfather.thomaspaine.description";R:4;s:42:"1202:model.foundingfather.thomaspaine.text";R:4;s:51:"1202:model.foundingfather.thomaspaine.birthanddeath";R:4;s:43:"1202:model.foundingfather.simonbolivar.name";R:4;s:50:"1202:model.foundingfather.simonbolivar.description";R:4;s:43:"1202:model.foundingfather.simonbolivar.text";R:4;s:52:"1202:model.foundingfather.simonbolivar.birthanddeath";R:4;s:47:"1202:model.foundingfather.benjaminfranklin.name";R:4;s:54:"1202:model.foundingfather.benjaminfranklin.description";R:4;s:47:"1202:model.foundingfather.benjaminfranklin.text";R:4;s:56:"1202:model.foundingfather.benjaminfranklin.birthanddeath";R:4;s:46:"1202:model.foundingfather.williambrewster.name";R:4;s:53:"1202:model.foundingfather.williambrewster.description";R:4;s:46:"1202:model.foundingfather.williambrewster.text";R:4;s:55:"1202:model.foundingfather.williambrewster.birthanddeath";R:4;s:42:"1202:model.foundingfather.williampenn.name";R:4;s:49:"1202:model.foundingfather.williampenn.description";R:4;s:42:"1202:model.foundingfather.williampenn.text";R:4;s:51:"1202:model.foundingfather.williampenn.birthanddeath";R:4;s:50:"1202:model.foundingfather.fatherjeandebrebeuf.name";R:4;s:57:"1202:model.foundingfather.fatherjeandebrebeuf.description";R:4;s:50:"1202:model.foundingfather.fatherjeandebrebeuf.text";R:4;s:59:"1202:model.foundingfather.fatherjeandebrebeuf.birthanddeath";R:4;s:46:"1202:model.foundingfather.juandesepulveda.name";R:4;s:53:"1202:model.foundingfather.juandesepulveda.description";R:4;s:46:"1202:model.foundingfather.juandesepulveda.text";R:4;s:55:"1202:model.foundingfather.juandesepulveda.birthanddeath";R:4;s:50:"1202:model.foundingfather.bartolomedelascasas.name";R:4;s:57:"1202:model.foundingfather.bartolomedelascasas.description";R:4;s:50:"1202:model.foundingfather.bartolomedelascasas.text";R:4;s:59:"1202:model.foundingfather.bartolomedelascasas.birthanddeath";R:4;s:31:"1202:model.foundingfather.trade";R:4;s:37:"1202:model.foundingfather.exploration";R:4;s:34:"1202:model.foundingfather.military";R:4;s:35:"1202:model.foundingfather.political";R:4;s:35:"1202:model.foundingfather.religious";R:4;s:26:"1202:model.role.scout.name";R:4;s:28:"1202:model.role.soldier.name";R:4;s:28:"1202:model.role.dragoon.name";R:4;s:28:"1202:model.role.pioneer.name";R:4;s:31:"1202:model.role.missionary.name";R:4;s:29:"1202:model.role.infantry.name";R:4;s:28:"1202:model.role.cavalry.name";R:4;s:33:"1202:model.role.mountedbrave.name";R:4;s:31:"1202:model.role.armedbrave.name";R:4;s:34:"1202:model.role.nativedragoon.name";R:4;s:39:"1202:model.equipment.indian.horses.name";R:4;s:38:"1202:model.equipment.indian.horses.add";R:4;s:41:"1202:model.equipment.indian.horses.remove";R:4;s:39:"1202:model.equipment.indian.horses.none";R:4;s:32:"1202:model.equipment.horses.name";R:4;s:31:"1202:model.equipment.horses.add";R:4;s:34:"1202:model.equipment.horses.remove";R:4;s:32:"1202:model.equipment.horses.none";R:4;s:40:"1202:model.equipment.indian.muskets.name";R:4;s:39:"1202:model.equipment.indian.muskets.add";R:4;s:42:"1202:model.equipment.indian.muskets.remove";R:4;s:40:"1202:model.equipment.indian.muskets.none";R:4;s:33:"1202:model.equipment.muskets.name";R:4;s:32:"1202:model.equipment.muskets.add";R:4;s:35:"1202:model.equipment.muskets.remove";R:4;s:33:"1202:model.equipment.muskets.none";R:4;s:31:"1202:model.equipment.tools.name";R:4;s:30:"1202:model.equipment.tools.add";R:4;s:33:"1202:model.equipment.tools.remove";R:4;s:31:"1202:model.equipment.tools.none";R:4;s:36:"1202:model.equipment.missionary.name";R:4;s:35:"1202:model.equipment.missionary.add";R:4;s:38:"1202:model.equipment.missionary.remove";R:4;s:36:"1202:model.equipment.missionary.none";R:4;s:30:"1202:model.equipment.removeall";R:4;s:28:"1202:model.equipment.dragoon";R:4;s:33:"1202:model.limit.wagontrains.name";R:4;s:40:"1202:model.limit.wagontrains.description";R:4;s:41:"1202:model.limit.independence.rebels.name";R:4;s:48:"1202:model.limit.independence.rebels.description";R:4;s:43:"1202:model.limit.independence.colonies.name";R:4;s:50:"1202:model.limit.independence.colonies.description";R:4;s:39:"1202:model.limit.independence.year.name";R:4;s:46:"1202:model.limit.independence.year.description";R:4;s:30:"1202:model.scope.isindian.name";R:4;s:33:"1202:colopedia.buildings.requires";R:4;s:29:"1202:colopedia.buildings.cost";R:4;s:35:"1202:colopedia.buildings.specialist";R:4;s:35:"1202:colopedia.buildings.production";R:4;s:32:"1202:colopedia.buildings.teaches";R:4;s:30:"1202:colopedia.buildings.notes";R:4;s:34:"1202:colopedia.buildings.autobuilt";R:4;s:34:"1202:colopedia.buildings.modifiers";R:4;s:35:"1202:colopedia.buildings.workplaces";R:4;s:35:"1202:colopedia.terrain.terrainimage";R:4;s:35:"1202:colopedia.terrain.defensebonus";R:4;s:35:"1202:colopedia.terrain.movementcost";R:4;s:31:"1202:colopedia.terrain.resource";R:4;s:33:"1202:colopedia.terrain.production";R:4;s:34:"1202:colopedia.terrain.description";R:4;s:39:"1202:colopedia.resource.bonusproduction";R:4;s:35:"1202:colopedia.resource.description";R:4;s:34:"1202:colopedia.unit.offensivepower";R:4;s:34:"1202:colopedia.unit.defensivepower";R:4;s:25:"1202:colopedia.unit.price";R:4;s:33:"1202:colopedia.unit.goodsrequired";R:4;s:31:"1202:colopedia.unit.description";R:4;s:25:"1202:colopedia.unit.skill";R:4;s:26:"1202:colopedia.unit.school";R:4;s:27:"1202:colopedia.unit.natives";R:4;s:28:"1202:colopedia.unit.capacity";R:4;s:28:"1202:colopedia.unit.movement";R:4;s:35:"1202:colopedia.unit.productionbonus";R:4;s:32:"1202:colopedia.unit.requirements";R:4;s:29:"1202:colopedia.goods.isfarmed";R:4;s:31:"1202:colopedia.goods.improvedby";R:4;s:32:"1202:colopedia.goods.improvement";R:4;s:30:"1202:colopedia.goods.buildings";R:4;s:33:"1202:colopedia.goods.allbuildings";R:4;s:26:"1202:colopedia.goods.units";R:4;s:29:"1202:colopedia.goods.allunits";R:4;s:30:"1202:colopedia.goods.equipment";R:4;s:29:"1202:colopedia.goods.madefrom";R:4;s:26:"1202:colopedia.goods.makes";R:4;s:32:"1202:colopedia.goods.description";R:4;s:35:"1202:colopedia.goods.breedingnumber";R:4;s:41:"1202:colopedia.foundingfather.description";R:4;s:27:"1202:colopedia.nation.ruler";R:4;s:38:"1202:colopedia.nation.defaultadvantage";R:4;s:38:"1202:colopedia.nation.currentadvantage";R:4;s:31:"1202:colopedia.nationtype.units";R:4;s:36:"1202:colopedia.nationtype.aggression";R:4;s:40:"1202:colopedia.nationtype.aggression.low";R:4;s:44:"1202:colopedia.nationtype.aggression.average";R:4;s:41:"1202:colopedia.nationtype.aggression.high";R:4;s:45:"1202:colopedia.nationtype.numberofsettlements";R:4;s:49:"1202:colopedia.nationtype.numberofsettlements.low";R:4;s:53:"1202:colopedia.nationtype.numberofsettlements.average";R:4;s:50:"1202:colopedia.nationtype.numberofsettlements.high";R:4;s:43:"1202:colopedia.nationtype.typeofsettlements";R:4;s:33:"1202:colopedia.nationtype.regions";R:4;s:32:"1202:colopedia.nationtype.skills";R:4;s:34:"1202:colopedia.concepts.taxes.name";R:4;s:41:"1202:colopedia.concepts.taxes.description";R:4;s:39:"1202:colopedia.concepts.efficiency.name";R:4;s:46:"1202:colopedia.concepts.efficiency.description";R:4;s:41:"1202:colopedia.concepts.independence.name";R:4;s:48:"1202:colopedia.concepts.independence.description";R:4;s:37:"1202:report.continentalcongress.title";R:4;s:36:"1202:report.continentalcongress.none";R:4;s:42:"1202:report.continentalcongress.recruiting";R:4;s:39:"1202:report.continentalcongress.elected";R:4;s:28:"1202:report.indian.chieftain";R:4;s:36:"1202:report.indian.typeofsettlements";R:4;s:38:"1202:report.indian.numberofsettlements";R:4;s:31:"1202:report.indian.tribetension";R:4;s:31:"1202:report.indian.mostalarming";R:4;s:37:"1202:report.indian.noknownsettlements";R:4;s:26:"1202:report.indian.tension";R:4;s:30:"1202:report.indian.skilltaught";R:4;s:33:"1202:report.indian.tradeinterests";R:4;s:18:"1202:report.labour";R:4;s:26:"1202:report.labour.details";R:4;s:31:"1202:report.labour.allcolonists";R:4;s:26:"1202:report.labour.summary";R:4;s:37:"1202:report.labour.notcounted.tooltip";R:4;s:37:"1202:report.labour.subtracted.tooltip";R:4;s:36:"1202:report.labour.unittotal.tooltip";R:4;s:46:"1202:report.labour.potentialproduction.tooltip";R:4;s:40:"1202:report.labour.netproduction.tooltip";R:4;s:26:"1202:report.labour.teacher";R:4;s:26:"1202:report.labour.sutdent";R:4;s:27:"1202:report.labour.learning";R:4;s:32:"1202:report.labour.learningother";R:4;s:32:"1202:report.labour.otherunittype";R:4;s:33:"1202:report.labour.workingasother";R:4;s:29:"1202:report.labour.notworking";R:4;s:37:"1202:report.labour.notworking.tooltip";R:4;s:33:"1202:report.labour.expertsworking";R:4;s:34:"1202:report.labour.amateursworking";R:4;s:27:"1202:report.labour.cantrain";R:4;s:30:"1202:report.colony.name.header";R:4;s:35:"1202:report.colony.name.description";R:4;s:33:"1202:report.colony.explore.header";R:4;s:38:"1202:report.colony.explore.description";R:4;s:40:"1202:report.colony.exploring.description";R:4;s:30:"1202:report.colony.plow.header";R:4;s:35:"1202:report.colony.plow.description";R:4;s:38:"1202:report.colony.plowing.description";R:4;s:30:"1202:report.colony.road.header";R:4;s:35:"1202:report.colony.road.description";R:4;s:43:"1202:report.colony.roadbuilding.description";R:4;s:36:"1202:report.colony.production.header";R:4;s:41:"1202:report.colony.production.description";R:4;s:45:"1202:report.colony.production.low.description";R:4;s:46:"1202:report.colony.production.high.description";R:4;s:47:"1202:report.colony.production.waste.description";R:4;s:48:"1202:report.colony.production.export.description";R:4;s:36:"1202:report.colony.birth.description";R:4;s:39:"1202:report.colony.arriving.description";R:4;s:39:"1202:report.colony.starving.description";R:4;s:32:"1202:report.colony.making.header";R:4;s:37:"1202:report.colony.making.description";R:4;s:52:"1202:report.colony.making.noconstruction.description";R:4;s:50:"1202:report.colony.making.constructing.description";R:4;s:46:"1202:report.colony.making.blocking.description";R:4;s:45:"1202:report.colony.making.noteach.description";R:4;s:47:"1202:report.colony.making.educating.description";R:4;s:33:"1202:report.colony.improve.header";R:4;s:38:"1202:report.colony.improve.description";R:4;s:40:"1202:report.colony.improving.description";R:4;s:30:"1202:report.colony.grow.header";R:4;s:35:"1202:report.colony.grow.description";R:4;s:38:"1202:report.colony.growing.description";R:4;s:40:"1202:report.colony.shrinking.description";R:4;s:32:"1202:report.colony.wanted.header";R:4;s:37:"1202:report.colony.wanted.description";R:4;s:38:"1202:report.colony.wanting.description";R:4;s:27:"1202:report.trade.unitssold";R:4;s:29:"1202:report.trade.beforetaxes";R:4;s:28:"1202:report.trade.aftertaxes";R:4;s:28:"1202:report.trade.cargounits";R:4;s:28:"1202:report.trade.totalunits";R:4;s:28:"1202:report.trade.totaldelta";R:4;s:32:"1202:report.trade.hascustomhouse";R:4;s:27:"1202:report.military.forces";R:4;s:23:"1202:report.allcolonies";R:4;s:22:"1202:report.production";R:4;s:17:"1202:report.units";R:4;s:17:"1202:report.atsea";R:4;s:18:"1202:report.onland";R:4;s:28:"1202:report.numberofcolonies";R:4;s:25:"1202:report.numberofunits";R:4;s:28:"1202:report.militarystrength";R:4;s:25:"1202:report.navalstrength";R:4;s:25:"1202:report.sonsofliberty";R:4;s:18:"1202:report.stance";R:4;s:21:"1202:report.50percent";R:4;s:22:"1202:report.100percent";R:4;s:22:"1202:report.nextmember";R:4;s:38:"1202:report.requirements.badassignment";R:4;s:33:"1202:report.requirements.noexpert";R:4;s:37:"1202:report.requirements.missinggoods";R:4;s:32:"1202:report.requirements.surplus";R:4;s:39:"1202:report.requirements.misusedexperts";R:4;s:39:"1202:report.requirements.severalexperts";R:4;s:40:"1202:report.requirements.cantrainexperts";R:4;s:28:"1202:report.requirements.met";R:4;s:36:"1202:report.requirements.exploretile";R:4;s:34:"1202:report.requirements.cleartile";R:4;s:35:"1202:report.requirements.plowcenter";R:4;s:33:"1202:report.requirements.plowtile";R:4;s:33:"1202:report.requirements.roadtile";R:4;s:36:"1202:report.exploration.nameofregion";R:4;s:36:"1202:report.exploration.typeofregion";R:4;s:36:"1202:report.exploration.discoveredin";R:4;s:36:"1202:report.exploration.discoveredby";R:4;s:37:"1202:report.exploration.valueofregion";R:4;s:32:"1202:report.highscores.president";R:4;s:31:"1202:report.highscores.governor";R:4;s:35:"1202:report.highscores.independence";R:4;s:28:"1202:report.highscores.units";R:4;s:31:"1202:report.highscores.colonies";R:4;s:28:"1202:report.highscores.score";R:4;s:33:"1202:report.highscores.difficulty";R:4;s:29:"1202:report.highscores.nation";R:4;s:33:"1202:report.highscores.nationtype";R:4;s:30:"1202:report.highscores.retired";R:4;s:27:"1202:report.highscores.turn";R:4;s:28:"1202:report.production.title";R:4;s:34:"1202:report.production.selectgoods";R:4;s:29:"1202:report.production.update";R:4;s:33:"1202:report.foreignaffairs.notice";R:4;s:30:"1202:report.education.students";R:4;s:30:"1202:report.education.teachers";R:4;s:23:"1202:aboutpanel.version";R:4;s:28:"1202:aboutpanel.officialsite";R:4;s:25:"1202:aboutpanel.sfproject";R:4;s:31:"1202:aboutpanel.legaldisclaimer";R:4;s:25:"1202:aboutpanel.copyright";R:4;s:34:"1202:model.source.baseoffence.name";R:4;s:35:"1202:model.source.cargopenalty.name";R:4;s:34:"1202:model.source.attackbonus.name";R:4;s:38:"1202:model.source.movementpenalty.name";R:4;s:34:"1202:model.source.ambushbonus.name";R:4;s:41:"1202:model.source.artilleryintheopen.name";R:4;s:34:"1202:model.source.finalresult.name";R:4;s:34:"1202:model.source.basedefence.name";R:4;s:32:"1202:model.source.fortified.name";R:4;s:43:"1202:model.source.artilleryagainstraid.name";R:4;s:39:"1202:model.source.amphibiousattack.name";R:4;s:34:"1202:model.source.solmodifier.name";R:4;s:39:"1202:model.source.colonygoodsparty.name";R:4;s:34:"1202:model.source.shiptradepenalty";R:4;s:17:"1202:shipname.0.0";R:4;s:17:"1202:shipname.1.0";R:4;s:17:"1202:shipname.2.0";R:4;s:17:"1202:shipname.3.0";R:4;s:40:"1202:model.nation.dutch.settlementname.0";R:4;s:40:"1202:model.nation.dutch.settlementname.1";R:4;s:40:"1202:model.nation.dutch.settlementname.2";R:4;s:40:"1202:model.nation.dutch.settlementname.3";R:4;s:40:"1202:model.nation.dutch.settlementname.4";R:4;s:40:"1202:model.nation.dutch.settlementname.5";R:4;s:40:"1202:model.nation.dutch.settlementname.6";R:4;s:40:"1202:model.nation.dutch.settlementname.7";R:4;s:40:"1202:model.nation.dutch.settlementname.8";R:4;s:40:"1202:model.nation.dutch.settlementname.9";R:4;s:41:"1202:model.nation.dutch.settlementname.10";R:4;s:41:"1202:model.nation.dutch.settlementname.11";R:4;s:41:"1202:model.nation.dutch.settlementname.12";R:4;s:41:"1202:model.nation.dutch.settlementname.13";R:4;s:41:"1202:model.nation.dutch.settlementname.14";R:4;s:41:"1202:model.nation.dutch.settlementname.15";R:4;s:41:"1202:model.nation.dutch.settlementname.16";R:4;s:41:"1202:model.nation.dutch.settlementname.17";R:4;s:41:"1202:model.nation.dutch.settlementname.18";R:4;s:41:"1202:model.nation.dutch.settlementname.19";R:4;s:41:"1202:model.nation.dutch.settlementname.20";R:4;s:41:"1202:model.nation.dutch.settlementname.21";R:4;s:41:"1202:model.nation.dutch.settlementname.22";R:4;s:41:"1202:model.nation.dutch.settlementname.23";R:4;s:41:"1202:model.nation.dutch.settlementname.24";R:4;s:41:"1202:model.nation.dutch.settlementname.25";R:4;s:41:"1202:model.nation.dutch.settlementname.26";R:4;s:41:"1202:model.nation.dutch.settlementname.27";R:4;s:41:"1202:model.nation.dutch.settlementname.28";R:4;s:41:"1202:model.nation.dutch.settlementname.29";R:4;s:41:"1202:model.nation.dutch.settlementname.30";R:4;s:41:"1202:model.nation.dutch.settlementname.31";R:4;s:38:"1202:model.nation.dutch.region.river.1";R:4;s:38:"1202:model.nation.dutch.region.river.2";R:4;s:38:"1202:model.nation.dutch.region.river.3";R:4;s:38:"1202:model.nation.dutch.region.river.4";R:4;s:38:"1202:model.nation.dutch.region.river.5";R:4;s:38:"1202:model.nation.dutch.region.river.6";R:4;s:38:"1202:model.nation.dutch.region.river.7";R:4;s:38:"1202:model.nation.dutch.region.river.8";R:4;s:41:"1202:model.nation.dutch.region.mountain.1";R:4;s:41:"1202:model.nation.dutch.region.mountain.2";R:4;s:41:"1202:model.nation.dutch.region.mountain.3";R:4;s:41:"1202:model.nation.dutch.region.mountain.4";R:4;s:41:"1202:model.nation.dutch.region.mountain.5";R:4;s:41:"1202:model.nation.dutch.region.mountain.6";R:4;s:41:"1202:model.nation.dutch.region.mountain.7";R:4;s:41:"1202:model.nation.dutch.region.mountain.8";R:4;s:41:"1202:model.nation.dutch.region.mountain.9";R:4;s:37:"1202:model.nation.dutch.region.land.1";R:4;s:37:"1202:model.nation.dutch.region.land.2";R:4;s:37:"1202:model.nation.dutch.region.land.3";R:4;s:37:"1202:model.nation.dutch.region.land.4";R:4;s:37:"1202:model.nation.dutch.region.land.5";R:4;s:37:"1202:model.nation.dutch.region.land.6";R:4;s:37:"1202:model.nation.dutch.region.land.7";R:4;s:37:"1202:model.nation.dutch.region.land.8";R:4;s:37:"1202:model.nation.dutch.region.land.9";R:4;s:38:"1202:model.nation.dutch.region.land.10";R:4;s:42:"1202:model.nation.english.settlementname.0";R:4;s:42:"1202:model.nation.english.settlementname.1";R:4;s:42:"1202:model.nation.english.settlementname.2";R:4;s:42:"1202:model.nation.english.settlementname.3";R:4;s:42:"1202:model.nation.english.settlementname.4";R:4;s:42:"1202:model.nation.english.settlementname.5";R:4;s:42:"1202:model.nation.english.settlementname.6";R:4;s:42:"1202:model.nation.english.settlementname.7";R:4;s:42:"1202:model.nation.english.settlementname.8";R:4;s:42:"1202:model.nation.english.settlementname.9";R:4;s:43:"1202:model.nation.english.settlementname.10";R:4;s:43:"1202:model.nation.english.settlementname.11";R:4;s:43:"1202:model.nation.english.settlementname.12";R:4;s:43:"1202:model.nation.english.settlementname.13";R:4;s:43:"1202:model.nation.english.settlementname.14";R:4;s:43:"1202:model.nation.english.settlementname.15";R:4;s:43:"1202:model.nation.english.settlementname.16";R:4;s:43:"1202:model.nation.english.settlementname.17";R:4;s:43:"1202:model.nation.english.settlementname.18";R:4;s:43:"1202:model.nation.english.settlementname.19";R:4;s:43:"1202:model.nation.english.settlementname.20";R:4;s:43:"1202:model.nation.english.settlementname.21";R:4;s:43:"1202:model.nation.english.settlementname.22";R:4;s:43:"1202:model.nation.english.settlementname.23";R:4;s:43:"1202:model.nation.english.settlementname.24";R:4;s:43:"1202:model.nation.english.settlementname.25";R:4;s:43:"1202:model.nation.english.settlementname.26";R:4;s:43:"1202:model.nation.english.settlementname.27";R:4;s:43:"1202:model.nation.english.settlementname.28";R:4;s:43:"1202:model.nation.english.settlementname.29";R:4;s:43:"1202:model.nation.english.settlementname.30";R:4;s:43:"1202:model.nation.english.settlementname.31";R:4;s:43:"1202:model.nation.english.settlementname.32";R:4;s:43:"1202:model.nation.english.settlementname.33";R:4;s:43:"1202:model.nation.english.settlementname.34";R:4;s:43:"1202:model.nation.english.settlementname.35";R:4;s:39:"1202:model.nation.english.region.land.1";R:4;s:39:"1202:model.nation.english.region.land.2";R:4;s:39:"1202:model.nation.english.region.land.3";R:4;s:39:"1202:model.nation.english.region.land.4";R:4;s:39:"1202:model.nation.english.region.land.5";R:4;s:39:"1202:model.nation.english.region.land.6";R:4;s:39:"1202:model.nation.english.region.land.7";R:4;s:39:"1202:model.nation.english.region.land.8";R:4;s:39:"1202:model.nation.english.region.land.9";R:4;s:40:"1202:model.nation.english.region.land.10";R:4;s:40:"1202:model.nation.english.region.river.1";R:4;s:40:"1202:model.nation.english.region.river.2";R:4;s:40:"1202:model.nation.english.region.river.3";R:4;s:40:"1202:model.nation.english.region.river.4";R:4;s:40:"1202:model.nation.english.region.river.5";R:4;s:40:"1202:model.nation.english.region.river.6";R:4;s:40:"1202:model.nation.english.region.river.7";R:4;s:40:"1202:model.nation.english.region.river.8";R:4;s:40:"1202:model.nation.english.region.river.9";R:4;s:41:"1202:model.nation.english.region.river.10";R:4;s:43:"1202:model.nation.english.region.mountain.1";R:4;s:43:"1202:model.nation.english.region.mountain.2";R:4;s:43:"1202:model.nation.english.region.mountain.3";R:4;s:43:"1202:model.nation.english.region.mountain.4";R:4;s:43:"1202:model.nation.english.region.mountain.5";R:4;s:43:"1202:model.nation.english.region.mountain.6";R:4;s:43:"1202:model.nation.english.region.mountain.7";R:4;s:43:"1202:model.nation.english.region.mountain.8";R:4;s:43:"1202:model.nation.english.region.mountain.9";R:4;s:41:"1202:model.nation.french.settlementname.0";R:4;s:41:"1202:model.nation.french.settlementname.1";R:4;s:41:"1202:model.nation.french.settlementname.2";R:4;s:41:"1202:model.nation.french.settlementname.3";R:4;s:41:"1202:model.nation.french.settlementname.4";R:4;s:41:"1202:model.nation.french.settlementname.5";R:4;s:41:"1202:model.nation.french.settlementname.6";R:4;s:41:"1202:model.nation.french.settlementname.7";R:4;s:41:"1202:model.nation.french.settlementname.8";R:4;s:41:"1202:model.nation.french.settlementname.9";R:4;s:42:"1202:model.nation.french.settlementname.10";R:4;s:42:"1202:model.nation.french.settlementname.11";R:4;s:42:"1202:model.nation.french.settlementname.12";R:4;s:42:"1202:model.nation.french.settlementname.13";R:4;s:42:"1202:model.nation.french.settlementname.14";R:4;s:42:"1202:model.nation.french.settlementname.15";R:4;s:42:"1202:model.nation.french.settlementname.16";R:4;s:42:"1202:model.nation.french.settlementname.17";R:4;s:42:"1202:model.nation.french.settlementname.18";R:4;s:42:"1202:model.nation.french.settlementname.19";R:4;s:42:"1202:model.nation.french.settlementname.20";R:4;s:42:"1202:model.nation.french.settlementname.21";R:4;s:42:"1202:model.nation.french.settlementname.22";R:4;s:42:"1202:model.nation.french.settlementname.23";R:4;s:42:"1202:model.nation.french.settlementname.24";R:4;s:42:"1202:model.nation.french.settlementname.25";R:4;s:42:"1202:model.nation.french.settlementname.26";R:4;s:42:"1202:model.nation.french.settlementname.27";R:4;s:42:"1202:model.nation.french.settlementname.28";R:4;s:42:"1202:model.nation.french.settlementname.29";R:4;s:42:"1202:model.nation.french.settlementname.30";R:4;s:42:"1202:model.nation.french.settlementname.31";R:4;s:42:"1202:model.nation.french.settlementname.32";R:4;s:42:"1202:model.nation.french.settlementname.33";R:4;s:42:"1202:model.nation.french.settlementname.34";R:4;s:42:"1202:model.nation.french.settlementname.35";R:4;s:42:"1202:model.nation.french.settlementname.36";R:4;s:42:"1202:model.nation.french.settlementname.37";R:4;s:42:"1202:model.nation.french.settlementname.38";R:4;s:42:"1202:model.nation.french.settlementname.39";R:4;s:42:"1202:model.nation.french.settlementname.40";R:4;s:42:"1202:model.nation.french.settlementname.41";R:4;s:42:"1202:model.nation.french.settlementname.42";R:4;s:42:"1202:model.nation.french.settlementname.43";R:4;s:42:"1202:model.nation.french.settlementname.44";R:4;s:42:"1202:model.nation.french.settlementname.45";R:4;s:42:"1202:model.nation.french.settlementname.46";R:4;s:42:"1202:model.nation.french.settlementname.47";R:4;s:42:"1202:model.nation.french.settlementname.48";R:4;s:42:"1202:model.nation.french.settlementname.49";R:4;s:42:"1202:model.nation.french.settlementname.50";R:4;s:42:"1202:model.nation.french.settlementname.51";R:4;s:42:"1202:model.nation.french.settlementname.52";R:4;s:42:"1202:model.nation.french.settlementname.53";R:4;s:42:"1202:model.nation.french.settlementname.54";R:4;s:42:"1202:model.nation.french.settlementname.55";R:4;s:42:"1202:model.nation.french.settlementname.56";R:4;s:42:"1202:model.nation.french.settlementname.57";R:4;s:42:"1202:model.nation.french.settlementname.58";R:4;s:42:"1202:model.nation.french.settlementname.59";R:4;s:42:"1202:model.nation.french.settlementname.60";R:4;s:42:"1202:model.nation.french.settlementname.61";R:4;s:42:"1202:model.nation.french.settlementname.62";R:4;s:42:"1202:model.nation.french.settlementname.63";R:4;s:42:"1202:model.nation.french.settlementname.64";R:4;s:42:"1202:model.nation.french.settlementname.65";R:4;s:38:"1202:model.nation.french.region.land.1";R:4;s:38:"1202:model.nation.french.region.land.2";R:4;s:38:"1202:model.nation.french.region.land.3";R:4;s:38:"1202:model.nation.french.region.land.4";R:4;s:38:"1202:model.nation.french.region.land.5";R:4;s:38:"1202:model.nation.french.region.land.6";R:4;s:38:"1202:model.nation.french.region.land.7";R:4;s:39:"1202:model.nation.french.region.river.1";R:4;s:39:"1202:model.nation.french.region.river.2";R:4;s:39:"1202:model.nation.french.region.river.3";R:4;s:39:"1202:model.nation.french.region.river.4";R:4;s:39:"1202:model.nation.french.region.river.5";R:4;s:39:"1202:model.nation.french.region.river.6";R:4;s:39:"1202:model.nation.french.region.river.7";R:4;s:39:"1202:model.nation.french.region.river.8";R:4;s:39:"1202:model.nation.french.region.river.9";R:4;s:40:"1202:model.nation.french.region.river.10";R:4;s:42:"1202:model.nation.french.region.mountain.1";R:4;s:42:"1202:model.nation.french.region.mountain.2";R:4;s:42:"1202:model.nation.french.region.mountain.3";R:4;s:42:"1202:model.nation.french.region.mountain.4";R:4;s:42:"1202:model.nation.french.region.mountain.5";R:4;s:42:"1202:model.nation.french.region.mountain.6";R:4;s:42:"1202:model.nation.french.region.mountain.7";R:4;s:42:"1202:model.nation.french.region.mountain.8";R:4;s:42:"1202:model.nation.french.region.mountain.9";R:4;s:43:"1202:model.nation.french.region.mountain.10";R:4;s:42:"1202:model.nation.spanish.settlementname.0";R:4;s:42:"1202:model.nation.spanish.settlementname.1";R:4;s:42:"1202:model.nation.spanish.settlementname.2";R:4;s:42:"1202:model.nation.spanish.settlementname.3";R:4;s:42:"1202:model.nation.spanish.settlementname.4";R:4;s:42:"1202:model.nation.spanish.settlementname.5";R:4;s:42:"1202:model.nation.spanish.settlementname.6";R:4;s:42:"1202:model.nation.spanish.settlementname.7";R:4;s:42:"1202:model.nation.spanish.settlementname.8";R:4;s:42:"1202:model.nation.spanish.settlementname.9";R:4;s:43:"1202:model.nation.spanish.settlementname.10";R:4;s:43:"1202:model.nation.spanish.settlementname.11";R:4;s:43:"1202:model.nation.spanish.settlementname.12";R:4;s:43:"1202:model.nation.spanish.settlementname.13";R:4;s:43:"1202:model.nation.spanish.settlementname.14";R:4;s:43:"1202:model.nation.spanish.settlementname.15";R:4;s:43:"1202:model.nation.spanish.settlementname.16";R:4;s:43:"1202:model.nation.spanish.settlementname.17";R:4;s:43:"1202:model.nation.spanish.settlementname.18";R:4;s:43:"1202:model.nation.spanish.settlementname.19";R:4;s:43:"1202:model.nation.spanish.settlementname.20";R:4;s:43:"1202:model.nation.spanish.settlementname.21";R:4;s:43:"1202:model.nation.spanish.settlementname.22";R:4;s:43:"1202:model.nation.spanish.settlementname.23";R:4;s:43:"1202:model.nation.spanish.settlementname.24";R:4;s:43:"1202:model.nation.spanish.settlementname.25";R:4;s:43:"1202:model.nation.spanish.settlementname.26";R:4;s:43:"1202:model.nation.spanish.settlementname.27";R:4;s:43:"1202:model.nation.spanish.settlementname.28";R:4;s:43:"1202:model.nation.spanish.settlementname.29";R:4;s:43:"1202:model.nation.spanish.settlementname.30";R:4;s:43:"1202:model.nation.spanish.settlementname.31";R:4;s:43:"1202:model.nation.spanish.settlementname.32";R:4;s:43:"1202:model.nation.spanish.settlementname.33";R:4;s:43:"1202:model.nation.spanish.settlementname.34";R:4;s:43:"1202:model.nation.spanish.settlementname.35";R:4;s:43:"1202:model.nation.spanish.settlementname.36";R:4;s:43:"1202:model.nation.spanish.settlementname.37";R:4;s:43:"1202:model.nation.spanish.settlementname.38";R:4;s:39:"1202:model.nation.spanish.region.land.1";R:4;s:39:"1202:model.nation.spanish.region.land.2";R:4;s:39:"1202:model.nation.spanish.region.land.3";R:4;s:39:"1202:model.nation.spanish.region.land.4";R:4;s:39:"1202:model.nation.spanish.region.land.5";R:4;s:40:"1202:model.nation.spanish.region.river.1";R:4;s:40:"1202:model.nation.spanish.region.river.2";R:4;s:40:"1202:model.nation.spanish.region.river.3";R:4;s:40:"1202:model.nation.spanish.region.river.4";R:4;s:40:"1202:model.nation.spanish.region.river.5";R:4;s:43:"1202:model.nation.spanish.region.mountain.1";R:4;s:43:"1202:model.nation.spanish.region.mountain.2";R:4;s:43:"1202:model.nation.spanish.region.mountain.3";R:4;s:43:"1202:model.nation.spanish.region.mountain.4";R:4;s:43:"1202:model.nation.spanish.region.mountain.5";R:4;s:45:"1202:model.nation.portuguese.settlementname.0";R:4;s:45:"1202:model.nation.portuguese.settlementname.1";R:4;s:45:"1202:model.nation.portuguese.settlementname.2";R:4;s:45:"1202:model.nation.portuguese.settlementname.3";R:4;s:45:"1202:model.nation.portuguese.settlementname.4";R:4;s:45:"1202:model.nation.portuguese.settlementname.5";R:4;s:45:"1202:model.nation.portuguese.settlementname.6";R:4;s:45:"1202:model.nation.portuguese.settlementname.7";R:4;s:45:"1202:model.nation.portuguese.settlementname.8";R:4;s:45:"1202:model.nation.portuguese.settlementname.9";R:4;s:46:"1202:model.nation.portuguese.settlementname.10";R:4;s:46:"1202:model.nation.portuguese.settlementname.11";R:4;s:46:"1202:model.nation.portuguese.settlementname.12";R:4;s:46:"1202:model.nation.portuguese.settlementname.13";R:4;s:46:"1202:model.nation.portuguese.settlementname.14";R:4;s:46:"1202:model.nation.portuguese.settlementname.15";R:4;s:46:"1202:model.nation.portuguese.settlementname.16";R:4;s:46:"1202:model.nation.portuguese.settlementname.17";R:4;s:46:"1202:model.nation.portuguese.settlementname.18";R:4;s:46:"1202:model.nation.portuguese.settlementname.19";R:4;s:46:"1202:model.nation.portuguese.settlementname.20";R:4;s:46:"1202:model.nation.portuguese.settlementname.21";R:4;s:46:"1202:model.nation.portuguese.settlementname.22";R:4;s:46:"1202:model.nation.portuguese.settlementname.23";R:4;s:46:"1202:model.nation.portuguese.settlementname.24";R:4;s:46:"1202:model.nation.portuguese.settlementname.25";R:4;s:46:"1202:model.nation.portuguese.settlementname.26";R:4;s:46:"1202:model.nation.portuguese.settlementname.27";R:4;s:46:"1202:model.nation.portuguese.settlementname.28";R:4;s:46:"1202:model.nation.portuguese.settlementname.29";R:4;s:42:"1202:model.nation.portuguese.region.land.1";R:4;s:42:"1202:model.nation.portuguese.region.land.2";R:4;s:42:"1202:model.nation.portuguese.region.land.3";R:4;s:42:"1202:model.nation.portuguese.region.land.4";R:4;s:42:"1202:model.nation.portuguese.region.land.5";R:4;s:42:"1202:model.nation.portuguese.region.land.6";R:4;s:42:"1202:model.nation.portuguese.region.land.7";R:4;s:42:"1202:model.nation.portuguese.region.land.8";R:4;s:42:"1202:model.nation.portuguese.region.land.9";R:4;s:43:"1202:model.nation.portuguese.region.land.10";R:4;s:43:"1202:model.nation.portuguese.region.land.11";R:4;s:43:"1202:model.nation.portuguese.region.river.1";R:4;s:43:"1202:model.nation.portuguese.region.river.2";R:4;s:43:"1202:model.nation.portuguese.region.river.3";R:4;s:43:"1202:model.nation.portuguese.region.river.4";R:4;s:43:"1202:model.nation.portuguese.region.river.5";R:4;s:43:"1202:model.nation.portuguese.region.river.6";R:4;s:43:"1202:model.nation.portuguese.region.river.7";R:4;s:43:"1202:model.nation.portuguese.region.river.8";R:4;s:43:"1202:model.nation.portuguese.region.river.9";R:4;s:44:"1202:model.nation.portuguese.region.river.10";R:4;s:44:"1202:model.nation.portuguese.region.river.11";R:4;s:44:"1202:model.nation.portuguese.region.river.12";R:4;s:44:"1202:model.nation.portuguese.region.river.13";R:4;s:44:"1202:model.nation.portuguese.region.river.14";R:4;s:44:"1202:model.nation.portuguese.region.river.15";R:4;s:44:"1202:model.nation.portuguese.region.river.16";R:4;s:44:"1202:model.nation.portuguese.region.river.17";R:4;s:44:"1202:model.nation.portuguese.region.river.18";R:4;s:44:"1202:model.nation.portuguese.region.river.19";R:4;s:44:"1202:model.nation.portuguese.region.river.20";R:4;s:46:"1202:model.nation.portuguese.region.mountain.1";R:4;s:46:"1202:model.nation.portuguese.region.mountain.2";R:4;s:46:"1202:model.nation.portuguese.region.mountain.3";R:4;s:46:"1202:model.nation.portuguese.region.mountain.4";R:4;s:46:"1202:model.nation.portuguese.region.mountain.5";R:4;s:46:"1202:model.nation.portuguese.region.mountain.6";R:4;s:46:"1202:model.nation.portuguese.region.mountain.7";R:4;s:46:"1202:model.nation.portuguese.region.mountain.8";R:4;s:46:"1202:model.nation.portuguese.region.mountain.9";R:4;s:42:"1202:model.nation.russian.settlementname.0";R:4;s:42:"1202:model.nation.russian.settlementname.1";R:4;s:42:"1202:model.nation.russian.settlementname.2";R:4;s:42:"1202:model.nation.russian.settlementname.3";R:4;s:42:"1202:model.nation.russian.settlementname.4";R:4;s:42:"1202:model.nation.russian.settlementname.5";R:4;s:42:"1202:model.nation.russian.settlementname.6";R:4;s:42:"1202:model.nation.russian.settlementname.7";R:4;s:42:"1202:model.nation.russian.settlementname.8";R:4;s:42:"1202:model.nation.russian.settlementname.9";R:4;s:43:"1202:model.nation.russian.settlementname.10";R:4;s:43:"1202:model.nation.russian.settlementname.11";R:4;s:43:"1202:model.nation.russian.settlementname.12";R:4;s:43:"1202:model.nation.russian.settlementname.13";R:4;s:43:"1202:model.nation.russian.settlementname.14";R:4;s:43:"1202:model.nation.russian.settlementname.15";R:4;s:43:"1202:model.nation.russian.settlementname.16";R:4;s:43:"1202:model.nation.russian.settlementname.17";R:4;s:43:"1202:model.nation.russian.settlementname.18";R:4;s:43:"1202:model.nation.russian.settlementname.19";R:4;s:43:"1202:model.nation.russian.settlementname.20";R:4;s:43:"1202:model.nation.russian.settlementname.21";R:4;s:43:"1202:model.nation.russian.settlementname.22";R:4;s:43:"1202:model.nation.russian.settlementname.23";R:4;s:39:"1202:model.nation.russian.region.land.1";R:4;s:39:"1202:model.nation.russian.region.land.2";R:4;s:39:"1202:model.nation.russian.region.land.3";R:4;s:39:"1202:model.nation.russian.region.land.4";R:4;s:39:"1202:model.nation.russian.region.land.5";R:4;s:40:"1202:model.nation.russian.region.river.1";R:4;s:40:"1202:model.nation.russian.region.river.2";R:4;s:40:"1202:model.nation.russian.region.river.3";R:4;s:40:"1202:model.nation.russian.region.river.4";R:4;s:43:"1202:model.nation.russian.region.mountain.1";R:4;s:43:"1202:model.nation.russian.region.mountain.2";R:4;s:43:"1202:model.nation.russian.region.mountain.3";R:4;s:43:"1202:model.nation.russian.region.mountain.4";R:4;s:43:"1202:model.nation.russian.region.mountain.5";R:4;s:42:"1202:model.nation.swedish.settlementname.0";R:4;s:42:"1202:model.nation.swedish.settlementname.1";R:4;s:42:"1202:model.nation.swedish.settlementname.2";R:4;s:42:"1202:model.nation.swedish.settlementname.3";R:4;s:42:"1202:model.nation.swedish.settlementname.4";R:4;s:42:"1202:model.nation.swedish.settlementname.5";R:4;s:42:"1202:model.nation.swedish.settlementname.6";R:4;s:42:"1202:model.nation.swedish.settlementname.7";R:4;s:42:"1202:model.nation.swedish.settlementname.8";R:4;s:42:"1202:model.nation.swedish.settlementname.9";R:4;s:43:"1202:model.nation.swedish.settlementname.10";R:4;s:43:"1202:model.nation.swedish.settlementname.11";R:4;s:43:"1202:model.nation.swedish.settlementname.12";R:4;s:43:"1202:model.nation.swedish.settlementname.13";R:4;s:43:"1202:model.nation.swedish.settlementname.14";R:4;s:43:"1202:model.nation.swedish.settlementname.15";R:4;s:43:"1202:model.nation.swedish.settlementname.16";R:4;s:43:"1202:model.nation.swedish.settlementname.17";R:4;s:43:"1202:model.nation.swedish.settlementname.18";R:4;s:43:"1202:model.nation.swedish.settlementname.19";R:4;s:43:"1202:model.nation.swedish.settlementname.20";R:4;s:43:"1202:model.nation.swedish.settlementname.21";R:4;s:39:"1202:model.nation.swedish.region.land.1";R:4;s:39:"1202:model.nation.swedish.region.land.2";R:4;s:39:"1202:model.nation.swedish.region.land.3";R:4;s:40:"1202:model.nation.swedish.region.river.1";R:4;s:40:"1202:model.nation.swedish.region.river.2";R:4;s:40:"1202:model.nation.swedish.region.river.3";R:4;s:40:"1202:model.nation.swedish.region.river.4";R:4;s:41:"1202:model.nation.danish.settlementname.0";R:4;s:41:"1202:model.nation.danish.settlementname.1";R:4;s:41:"1202:model.nation.danish.settlementname.2";R:4;s:41:"1202:model.nation.danish.settlementname.3";R:4;s:41:"1202:model.nation.danish.settlementname.4";R:4;s:41:"1202:model.nation.danish.settlementname.5";R:4;s:41:"1202:model.nation.danish.settlementname.6";R:4;s:41:"1202:model.nation.danish.settlementname.7";R:4;s:41:"1202:model.nation.danish.settlementname.8";R:4;s:41:"1202:model.nation.danish.settlementname.9";R:4;s:42:"1202:model.nation.danish.settlementname.10";R:4;s:42:"1202:model.nation.danish.settlementname.11";R:4;s:38:"1202:model.nation.danish.region.land.1";R:4;s:38:"1202:model.nation.danish.region.land.2";R:4;s:38:"1202:model.nation.danish.region.land.3";R:4;s:38:"1202:model.nation.danish.region.land.4";R:4;s:38:"1202:model.nation.danish.region.land.5";R:4;s:38:"1202:model.nation.danish.region.land.6";R:4;s:39:"1202:model.nation.danish.region.river.1";R:4;s:39:"1202:model.nation.danish.region.river.2";R:4;s:39:"1202:model.nation.danish.region.river.3";R:4;s:42:"1202:model.nation.danish.region.mountain.1";R:4;s:42:"1202:model.nation.danish.region.mountain.2";R:4;s:42:"1202:model.nation.danish.region.mountain.3";R:4;s:42:"1202:model.nation.danish.region.mountain.4";R:4;s:42:"1202:model.nation.danish.region.mountain.5";R:4;s:42:"1202:model.nation.danish.region.mountain.6";R:4;s:24:"1202:model.region.arctic";R:4;s:27:"1202:model.region.antarctic";R:4;s:29:"1202:model.region.inlandlakes";R:4;s:25:"1202:model.region.pacific";R:4;s:34:"1202:model.region.pacific.discover";R:4;s:30:"1202:model.region.northpacific";R:4;s:30:"1202:model.region.southpacific";R:4;s:26:"1202:model.region.atlantic";R:4;s:31:"1202:model.region.northatlantic";R:4;s:31:"1202:model.region.southatlantic";R:4;s:28:"1202:model.region.ocean.name";R:4;s:31:"1202:model.region.ocean.unknown";R:4;s:28:"1202:model.region.coast.name";R:4;s:31:"1202:model.region.coast.unknown";R:4;s:27:"1202:model.region.lake.name";R:4;s:30:"1202:model.region.lake.unknown";R:4;s:28:"1202:model.region.river.name";R:4;s:31:"1202:model.region.river.unknown";R:4;s:27:"1202:model.region.land.name";R:4;s:30:"1202:model.region.land.unknown";R:4;s:31:"1202:model.region.mountain.name";R:4;s:34:"1202:model.region.mountain.unknown";R:4;s:29:"1202:model.region.desert.name";R:4;s:32:"1202:model.region.desert.unknown";R:4;s:28:"1202:model.region.north.name";R:4;s:32:"1202:model.region.northeast.name";R:4;s:27:"1202:model.region.east.name";R:4;s:32:"1202:model.region.southeast.name";R:4;s:28:"1202:model.region.south.name";R:4;s:32:"1202:model.region.southwest.name";R:4;s:27:"1202:model.region.west.name";R:4;s:32:"1202:model.region.northwest.name";R:4;s:29:"1202:model.region.center.name";R:4;s:25:"1202:model.region.default";R:4;s:41:"1202:model.nation.apache.settlementname.0";R:4;s:41:"1202:model.nation.apache.settlementname.1";R:4;s:41:"1202:model.nation.apache.settlementname.2";R:4;s:41:"1202:model.nation.apache.settlementname.3";R:4;s:41:"1202:model.nation.apache.settlementname.4";R:4;s:41:"1202:model.nation.apache.settlementname.5";R:4;s:41:"1202:model.nation.apache.settlementname.6";R:4;s:41:"1202:model.nation.apache.settlementname.7";R:4;s:41:"1202:model.nation.apache.settlementname.8";R:4;s:41:"1202:model.nation.apache.settlementname.9";R:4;s:42:"1202:model.nation.apache.settlementname.10";R:4;s:42:"1202:model.nation.apache.settlementname.11";R:4;s:42:"1202:model.nation.apache.settlementname.12";R:4;s:42:"1202:model.nation.apache.settlementname.13";R:4;s:42:"1202:model.nation.apache.settlementname.14";R:4;s:42:"1202:model.nation.apache.settlementname.15";R:4;s:42:"1202:model.nation.apache.settlementname.16";R:4;s:42:"1202:model.nation.apache.settlementname.17";R:4;s:42:"1202:model.nation.apache.settlementname.18";R:4;s:42:"1202:model.nation.apache.settlementname.19";R:4;s:42:"1202:model.nation.apache.settlementname.20";R:4;s:42:"1202:model.nation.apache.settlementname.21";R:4;s:42:"1202:model.nation.apache.settlementname.22";R:4;s:42:"1202:model.nation.apache.settlementname.23";R:4;s:42:"1202:model.nation.apache.settlementname.24";R:4;s:42:"1202:model.nation.apache.settlementname.25";R:4;s:42:"1202:model.nation.apache.settlementname.26";R:4;s:42:"1202:model.nation.apache.settlementname.27";R:4;s:42:"1202:model.nation.apache.settlementname.28";R:4;s:42:"1202:model.nation.apache.settlementname.29";R:4;s:42:"1202:model.nation.apache.settlementname.30";R:4;s:42:"1202:model.nation.apache.settlementname.31";R:4;s:42:"1202:model.nation.apache.settlementname.32";R:4;s:42:"1202:model.nation.apache.settlementname.33";R:4;s:42:"1202:model.nation.apache.settlementname.34";R:4;s:42:"1202:model.nation.apache.settlementname.35";R:4;s:42:"1202:model.nation.apache.settlementname.36";R:4;s:42:"1202:model.nation.apache.settlementname.37";R:4;s:42:"1202:model.nation.apache.settlementname.38";R:4;s:42:"1202:model.nation.apache.settlementname.39";R:4;s:42:"1202:model.nation.apache.settlementname.40";R:4;s:42:"1202:model.nation.apache.settlementname.41";R:4;s:42:"1202:model.nation.apache.settlementname.42";R:4;s:42:"1202:model.nation.apache.settlementname.43";R:4;s:42:"1202:model.nation.apache.settlementname.44";R:4;s:42:"1202:model.nation.apache.settlementname.45";R:4;s:42:"1202:model.nation.apache.settlementname.46";R:4;s:42:"1202:model.nation.apache.settlementname.47";R:4;s:42:"1202:model.nation.apache.settlementname.48";R:4;s:42:"1202:model.nation.apache.settlementname.49";R:4;s:41:"1202:model.nation.arawak.settlementname.0";R:4;s:41:"1202:model.nation.arawak.settlementname.1";R:4;s:41:"1202:model.nation.arawak.settlementname.2";R:4;s:41:"1202:model.nation.arawak.settlementname.3";R:4;s:41:"1202:model.nation.arawak.settlementname.4";R:4;s:41:"1202:model.nation.arawak.settlementname.5";R:4;s:41:"1202:model.nation.arawak.settlementname.6";R:4;s:41:"1202:model.nation.arawak.settlementname.7";R:4;s:41:"1202:model.nation.arawak.settlementname.8";R:4;s:41:"1202:model.nation.arawak.settlementname.9";R:4;s:42:"1202:model.nation.arawak.settlementname.10";R:4;s:42:"1202:model.nation.arawak.settlementname.11";R:4;s:42:"1202:model.nation.arawak.settlementname.12";R:4;s:42:"1202:model.nation.arawak.settlementname.13";R:4;s:42:"1202:model.nation.arawak.settlementname.14";R:4;s:42:"1202:model.nation.arawak.settlementname.15";R:4;s:42:"1202:model.nation.arawak.settlementname.16";R:4;s:42:"1202:model.nation.arawak.settlementname.17";R:4;s:42:"1202:model.nation.arawak.settlementname.18";R:4;s:42:"1202:model.nation.arawak.settlementname.19";R:4;s:42:"1202:model.nation.arawak.settlementname.20";R:4;s:42:"1202:model.nation.arawak.settlementname.21";R:4;s:42:"1202:model.nation.arawak.settlementname.22";R:4;s:42:"1202:model.nation.arawak.settlementname.23";R:4;s:42:"1202:model.nation.arawak.settlementname.24";R:4;s:42:"1202:model.nation.arawak.settlementname.25";R:4;s:42:"1202:model.nation.arawak.settlementname.26";R:4;s:42:"1202:model.nation.arawak.settlementname.27";R:4;s:42:"1202:model.nation.arawak.settlementname.28";R:4;s:42:"1202:model.nation.arawak.settlementname.29";R:4;s:42:"1202:model.nation.arawak.settlementname.30";R:4;s:42:"1202:model.nation.arawak.settlementname.31";R:4;s:42:"1202:model.nation.arawak.settlementname.32";R:4;s:42:"1202:model.nation.arawak.settlementname.33";R:4;s:42:"1202:model.nation.arawak.settlementname.34";R:4;s:42:"1202:model.nation.arawak.settlementname.35";R:4;s:42:"1202:model.nation.arawak.settlementname.36";R:4;s:42:"1202:model.nation.arawak.settlementname.37";R:4;s:42:"1202:model.nation.arawak.settlementname.38";R:4;s:42:"1202:model.nation.arawak.settlementname.39";R:4;s:42:"1202:model.nation.arawak.settlementname.40";R:4;s:42:"1202:model.nation.arawak.settlementname.41";R:4;s:42:"1202:model.nation.arawak.settlementname.42";R:4;s:42:"1202:model.nation.arawak.settlementname.43";R:4;s:42:"1202:model.nation.arawak.settlementname.44";R:4;s:42:"1202:model.nation.arawak.settlementname.45";R:4;s:42:"1202:model.nation.arawak.settlementname.46";R:4;s:42:"1202:model.nation.arawak.settlementname.47";R:4;s:42:"1202:model.nation.arawak.settlementname.48";R:4;s:42:"1202:model.nation.arawak.settlementname.49";R:4;s:42:"1202:model.nation.arawak.settlementname.50";R:4;s:42:"1202:model.nation.arawak.settlementname.51";R:4;s:42:"1202:model.nation.arawak.settlementname.52";R:4;s:42:"1202:model.nation.arawak.settlementname.53";R:4;s:42:"1202:model.nation.arawak.settlementname.54";R:4;s:42:"1202:model.nation.arawak.settlementname.55";R:4;s:42:"1202:model.nation.arawak.settlementname.56";R:4;s:42:"1202:model.nation.arawak.settlementname.57";R:4;s:42:"1202:model.nation.arawak.settlementname.58";R:4;s:40:"1202:model.nation.aztec.settlementname.0";R:4;s:40:"1202:model.nation.aztec.settlementname.1";R:4;s:40:"1202:model.nation.aztec.settlementname.2";R:4;s:40:"1202:model.nation.aztec.settlementname.3";R:4;s:40:"1202:model.nation.aztec.settlementname.4";R:4;s:40:"1202:model.nation.aztec.settlementname.5";R:4;s:40:"1202:model.nation.aztec.settlementname.6";R:4;s:40:"1202:model.nation.aztec.settlementname.7";R:4;s:40:"1202:model.nation.aztec.settlementname.8";R:4;s:40:"1202:model.nation.aztec.settlementname.9";R:4;s:41:"1202:model.nation.aztec.settlementname.10";R:4;s:41:"1202:model.nation.aztec.settlementname.11";R:4;s:41:"1202:model.nation.aztec.settlementname.12";R:4;s:41:"1202:model.nation.aztec.settlementname.13";R:4;s:41:"1202:model.nation.aztec.settlementname.14";R:4;s:41:"1202:model.nation.aztec.settlementname.15";R:4;s:41:"1202:model.nation.aztec.settlementname.16";R:4;s:41:"1202:model.nation.aztec.settlementname.17";R:4;s:41:"1202:model.nation.aztec.settlementname.18";R:4;s:41:"1202:model.nation.aztec.settlementname.19";R:4;s:41:"1202:model.nation.aztec.settlementname.20";R:4;s:41:"1202:model.nation.aztec.settlementname.21";R:4;s:41:"1202:model.nation.aztec.settlementname.22";R:4;s:41:"1202:model.nation.aztec.settlementname.23";R:4;s:41:"1202:model.nation.aztec.settlementname.24";R:4;s:41:"1202:model.nation.aztec.settlementname.25";R:4;s:41:"1202:model.nation.aztec.settlementname.26";R:4;s:41:"1202:model.nation.aztec.settlementname.27";R:4;s:41:"1202:model.nation.aztec.settlementname.28";R:4;s:41:"1202:model.nation.aztec.settlementname.29";R:4;s:41:"1202:model.nation.aztec.settlementname.30";R:4;s:41:"1202:model.nation.aztec.settlementname.31";R:4;s:41:"1202:model.nation.aztec.settlementname.32";R:4;s:41:"1202:model.nation.aztec.settlementname.33";R:4;s:41:"1202:model.nation.aztec.settlementname.34";R:4;s:41:"1202:model.nation.aztec.settlementname.35";R:4;s:41:"1202:model.nation.aztec.settlementname.36";R:4;s:41:"1202:model.nation.aztec.settlementname.37";R:4;s:41:"1202:model.nation.aztec.settlementname.38";R:4;s:41:"1202:model.nation.aztec.settlementname.39";R:4;s:41:"1202:model.nation.aztec.settlementname.40";R:4;s:41:"1202:model.nation.aztec.settlementname.41";R:4;s:41:"1202:model.nation.aztec.settlementname.42";R:4;s:41:"1202:model.nation.aztec.settlementname.43";R:4;s:41:"1202:model.nation.aztec.settlementname.44";R:4;s:41:"1202:model.nation.aztec.settlementname.45";R:4;s:41:"1202:model.nation.aztec.settlementname.46";R:4;s:41:"1202:model.nation.aztec.settlementname.47";R:4;s:41:"1202:model.nation.aztec.settlementname.48";R:4;s:41:"1202:model.nation.aztec.settlementname.49";R:4;s:41:"1202:model.nation.aztec.settlementname.50";R:4;s:41:"1202:model.nation.aztec.settlementname.51";R:4;s:41:"1202:model.nation.aztec.settlementname.52";R:4;s:41:"1202:model.nation.aztec.settlementname.53";R:4;s:41:"1202:model.nation.aztec.settlementname.54";R:4;s:41:"1202:model.nation.aztec.settlementname.55";R:4;s:41:"1202:model.nation.aztec.settlementname.56";R:4;s:41:"1202:model.nation.aztec.settlementname.57";R:4;s:41:"1202:model.nation.aztec.settlementname.58";R:4;s:41:"1202:model.nation.aztec.settlementname.59";R:4;s:41:"1202:model.nation.aztec.settlementname.60";R:4;s:41:"1202:model.nation.aztec.settlementname.61";R:4;s:41:"1202:model.nation.aztec.settlementname.62";R:4;s:41:"1202:model.nation.aztec.settlementname.63";R:4;s:41:"1202:model.nation.aztec.settlementname.64";R:4;s:41:"1202:model.nation.aztec.settlementname.65";R:4;s:41:"1202:model.nation.aztec.settlementname.66";R:4;s:41:"1202:model.nation.aztec.settlementname.67";R:4;s:41:"1202:model.nation.aztec.settlementname.68";R:4;s:41:"1202:model.nation.aztec.settlementname.69";R:4;s:41:"1202:model.nation.aztec.settlementname.70";R:4;s:41:"1202:model.nation.aztec.settlementname.71";R:4;s:41:"1202:model.nation.aztec.settlementname.72";R:4;s:41:"1202:model.nation.aztec.settlementname.73";R:4;s:41:"1202:model.nation.aztec.settlementname.74";R:4;s:41:"1202:model.nation.aztec.settlementname.75";R:4;s:43:"1202:model.nation.cherokee.settlementname.0";R:4;s:43:"1202:model.nation.cherokee.settlementname.1";R:4;s:43:"1202:model.nation.cherokee.settlementname.2";R:4;s:43:"1202:model.nation.cherokee.settlementname.3";R:4;s:43:"1202:model.nation.cherokee.settlementname.4";R:4;s:43:"1202:model.nation.cherokee.settlementname.5";R:4;s:43:"1202:model.nation.cherokee.settlementname.6";R:4;s:43:"1202:model.nation.cherokee.settlementname.7";R:4;s:43:"1202:model.nation.cherokee.settlementname.8";R:4;s:43:"1202:model.nation.cherokee.settlementname.9";R:4;s:44:"1202:model.nation.cherokee.settlementname.10";R:4;s:44:"1202:model.nation.cherokee.settlementname.11";R:4;s:44:"1202:model.nation.cherokee.settlementname.12";R:4;s:44:"1202:model.nation.cherokee.settlementname.13";R:4;s:44:"1202:model.nation.cherokee.settlementname.14";R:4;s:44:"1202:model.nation.cherokee.settlementname.15";R:4;s:44:"1202:model.nation.cherokee.settlementname.16";R:4;s:44:"1202:model.nation.cherokee.settlementname.17";R:4;s:44:"1202:model.nation.cherokee.settlementname.18";R:4;s:44:"1202:model.nation.cherokee.settlementname.19";R:4;s:44:"1202:model.nation.cherokee.settlementname.20";R:4;s:44:"1202:model.nation.cherokee.settlementname.21";R:4;s:44:"1202:model.nation.cherokee.settlementname.22";R:4;s:44:"1202:model.nation.cherokee.settlementname.23";R:4;s:44:"1202:model.nation.cherokee.settlementname.24";R:4;s:44:"1202:model.nation.cherokee.settlementname.25";R:4;s:44:"1202:model.nation.cherokee.settlementname.26";R:4;s:44:"1202:model.nation.cherokee.settlementname.27";R:4;s:44:"1202:model.nation.cherokee.settlementname.28";R:4;s:44:"1202:model.nation.cherokee.settlementname.29";R:4;s:44:"1202:model.nation.cherokee.settlementname.30";R:4;s:44:"1202:model.nation.cherokee.settlementname.31";R:4;s:44:"1202:model.nation.cherokee.settlementname.32";R:4;s:44:"1202:model.nation.cherokee.settlementname.33";R:4;s:44:"1202:model.nation.cherokee.settlementname.34";R:4;s:44:"1202:model.nation.cherokee.settlementname.35";R:4;s:44:"1202:model.nation.cherokee.settlementname.36";R:4;s:44:"1202:model.nation.cherokee.settlementname.37";R:4;s:44:"1202:model.nation.cherokee.settlementname.38";R:4;s:44:"1202:model.nation.cherokee.settlementname.39";R:4;s:44:"1202:model.nation.cherokee.settlementname.40";R:4;s:44:"1202:model.nation.cherokee.settlementname.41";R:4;s:44:"1202:model.nation.cherokee.settlementname.42";R:4;s:44:"1202:model.nation.cherokee.settlementname.43";R:4;s:44:"1202:model.nation.cherokee.settlementname.44";R:4;s:44:"1202:model.nation.cherokee.settlementname.45";R:4;s:44:"1202:model.nation.cherokee.settlementname.46";R:4;s:44:"1202:model.nation.cherokee.settlementname.47";R:4;s:44:"1202:model.nation.cherokee.settlementname.48";R:4;s:44:"1202:model.nation.cherokee.settlementname.49";R:4;s:39:"1202:model.nation.inca.settlementname.0";R:4;s:39:"1202:model.nation.inca.settlementname.1";R:4;s:39:"1202:model.nation.inca.settlementname.2";R:4;s:39:"1202:model.nation.inca.settlementname.3";R:4;s:39:"1202:model.nation.inca.settlementname.4";R:4;s:39:"1202:model.nation.inca.settlementname.5";R:4;s:39:"1202:model.nation.inca.settlementname.6";R:4;s:39:"1202:model.nation.inca.settlementname.7";R:4;s:39:"1202:model.nation.inca.settlementname.8";R:4;s:39:"1202:model.nation.inca.settlementname.9";R:4;s:40:"1202:model.nation.inca.settlementname.10";R:4;s:40:"1202:model.nation.inca.settlementname.11";R:4;s:40:"1202:model.nation.inca.settlementname.12";R:4;s:40:"1202:model.nation.inca.settlementname.13";R:4;s:40:"1202:model.nation.inca.settlementname.14";R:4;s:40:"1202:model.nation.inca.settlementname.15";R:4;s:40:"1202:model.nation.inca.settlementname.16";R:4;s:40:"1202:model.nation.inca.settlementname.17";R:4;s:40:"1202:model.nation.inca.settlementname.18";R:4;s:40:"1202:model.nation.inca.settlementname.19";R:4;s:40:"1202:model.nation.inca.settlementname.20";R:4;s:40:"1202:model.nation.inca.settlementname.21";R:4;s:40:"1202:model.nation.inca.settlementname.22";R:4;s:40:"1202:model.nation.inca.settlementname.23";R:4;s:40:"1202:model.nation.inca.settlementname.24";R:4;s:40:"1202:model.nation.inca.settlementname.25";R:4;s:40:"1202:model.nation.inca.settlementname.26";R:4;s:40:"1202:model.nation.inca.settlementname.27";R:4;s:40:"1202:model.nation.inca.settlementname.28";R:4;s:40:"1202:model.nation.inca.settlementname.29";R:4;s:40:"1202:model.nation.inca.settlementname.30";R:4;s:40:"1202:model.nation.inca.settlementname.31";R:4;s:40:"1202:model.nation.inca.settlementname.32";R:4;s:40:"1202:model.nation.inca.settlementname.33";R:4;s:40:"1202:model.nation.inca.settlementname.34";R:4;s:40:"1202:model.nation.inca.settlementname.35";R:4;s:40:"1202:model.nation.inca.settlementname.36";R:4;s:40:"1202:model.nation.inca.settlementname.37";R:4;s:40:"1202:model.nation.inca.settlementname.38";R:4;s:40:"1202:model.nation.inca.settlementname.39";R:4;s:40:"1202:model.nation.inca.settlementname.40";R:4;s:40:"1202:model.nation.inca.settlementname.41";R:4;s:40:"1202:model.nation.inca.settlementname.42";R:4;s:40:"1202:model.nation.inca.settlementname.43";R:4;s:40:"1202:model.nation.inca.settlementname.44";R:4;s:40:"1202:model.nation.inca.settlementname.45";R:4;s:40:"1202:model.nation.inca.settlementname.46";R:4;s:40:"1202:model.nation.inca.settlementname.47";R:4;s:40:"1202:model.nation.inca.settlementname.48";R:4;s:40:"1202:model.nation.inca.settlementname.49";R:4;s:40:"1202:model.nation.inca.settlementname.50";R:4;s:40:"1202:model.nation.inca.settlementname.51";R:4;s:40:"1202:model.nation.inca.settlementname.52";R:4;s:40:"1202:model.nation.inca.settlementname.53";R:4;s:40:"1202:model.nation.inca.settlementname.54";R:4;s:40:"1202:model.nation.inca.settlementname.55";R:4;s:40:"1202:model.nation.inca.settlementname.56";R:4;s:40:"1202:model.nation.inca.settlementname.57";R:4;s:40:"1202:model.nation.inca.settlementname.58";R:4;s:40:"1202:model.nation.inca.settlementname.59";R:4;s:40:"1202:model.nation.inca.settlementname.60";R:4;s:40:"1202:model.nation.inca.settlementname.61";R:4;s:40:"1202:model.nation.inca.settlementname.62";R:4;s:40:"1202:model.nation.inca.settlementname.63";R:4;s:40:"1202:model.nation.inca.settlementname.64";R:4;s:40:"1202:model.nation.inca.settlementname.65";R:4;s:40:"1202:model.nation.inca.settlementname.66";R:4;s:40:"1202:model.nation.inca.settlementname.67";R:4;s:40:"1202:model.nation.inca.settlementname.68";R:4;s:40:"1202:model.nation.inca.settlementname.69";R:4;s:40:"1202:model.nation.inca.settlementname.70";R:4;s:40:"1202:model.nation.inca.settlementname.71";R:4;s:40:"1202:model.nation.inca.settlementname.72";R:4;s:40:"1202:model.nation.inca.settlementname.73";R:4;s:40:"1202:model.nation.inca.settlementname.74";R:4;s:40:"1202:model.nation.inca.settlementname.75";R:4;s:40:"1202:model.nation.inca.settlementname.76";R:4;s:40:"1202:model.nation.inca.settlementname.77";R:4;s:40:"1202:model.nation.inca.settlementname.78";R:4;s:40:"1202:model.nation.inca.settlementname.79";R:4;s:40:"1202:model.nation.inca.settlementname.80";R:4;s:40:"1202:model.nation.inca.settlementname.81";R:4;s:40:"1202:model.nation.inca.settlementname.82";R:4;s:40:"1202:model.nation.inca.settlementname.83";R:4;s:40:"1202:model.nation.inca.settlementname.84";R:4;s:40:"1202:model.nation.inca.settlementname.85";R:4;s:43:"1202:model.nation.iroquois.settlementname.0";R:4;s:43:"1202:model.nation.iroquois.settlementname.1";R:4;s:43:"1202:model.nation.iroquois.settlementname.2";R:4;s:43:"1202:model.nation.iroquois.settlementname.3";R:4;s:43:"1202:model.nation.iroquois.settlementname.4";R:4;s:43:"1202:model.nation.iroquois.settlementname.5";R:4;s:43:"1202:model.nation.iroquois.settlementname.6";R:4;s:43:"1202:model.nation.iroquois.settlementname.7";R:4;s:43:"1202:model.nation.iroquois.settlementname.8";R:4;s:43:"1202:model.nation.iroquois.settlementname.9";R:4;s:44:"1202:model.nation.iroquois.settlementname.10";R:4;s:44:"1202:model.nation.iroquois.settlementname.11";R:4;s:44:"1202:model.nation.iroquois.settlementname.12";R:4;s:44:"1202:model.nation.iroquois.settlementname.13";R:4;s:44:"1202:model.nation.iroquois.settlementname.14";R:4;s:44:"1202:model.nation.iroquois.settlementname.15";R:4;s:44:"1202:model.nation.iroquois.settlementname.16";R:4;s:44:"1202:model.nation.iroquois.settlementname.17";R:4;s:44:"1202:model.nation.iroquois.settlementname.18";R:4;s:44:"1202:model.nation.iroquois.settlementname.19";R:4;s:44:"1202:model.nation.iroquois.settlementname.20";R:4;s:44:"1202:model.nation.iroquois.settlementname.21";R:4;s:44:"1202:model.nation.iroquois.settlementname.22";R:4;s:44:"1202:model.nation.iroquois.settlementname.23";R:4;s:44:"1202:model.nation.iroquois.settlementname.24";R:4;s:44:"1202:model.nation.iroquois.settlementname.25";R:4;s:44:"1202:model.nation.iroquois.settlementname.26";R:4;s:44:"1202:model.nation.iroquois.settlementname.27";R:4;s:44:"1202:model.nation.iroquois.settlementname.28";R:4;s:44:"1202:model.nation.iroquois.settlementname.29";R:4;s:44:"1202:model.nation.iroquois.settlementname.30";R:4;s:44:"1202:model.nation.iroquois.settlementname.31";R:4;s:44:"1202:model.nation.iroquois.settlementname.32";R:4;s:44:"1202:model.nation.iroquois.settlementname.33";R:4;s:44:"1202:model.nation.iroquois.settlementname.34";R:4;s:44:"1202:model.nation.iroquois.settlementname.35";R:4;s:44:"1202:model.nation.iroquois.settlementname.36";R:4;s:44:"1202:model.nation.iroquois.settlementname.37";R:4;s:44:"1202:model.nation.iroquois.settlementname.38";R:4;s:44:"1202:model.nation.iroquois.settlementname.39";R:4;s:44:"1202:model.nation.iroquois.settlementname.40";R:4;s:44:"1202:model.nation.iroquois.settlementname.41";R:4;s:44:"1202:model.nation.iroquois.settlementname.42";R:4;s:44:"1202:model.nation.iroquois.settlementname.43";R:4;s:44:"1202:model.nation.iroquois.settlementname.44";R:4;s:44:"1202:model.nation.iroquois.settlementname.45";R:4;s:44:"1202:model.nation.iroquois.settlementname.46";R:4;s:44:"1202:model.nation.iroquois.settlementname.47";R:4;s:44:"1202:model.nation.iroquois.settlementname.48";R:4;s:44:"1202:model.nation.iroquois.settlementname.49";R:4;s:44:"1202:model.nation.iroquois.settlementname.50";R:4;s:44:"1202:model.nation.iroquois.settlementname.51";R:4;s:44:"1202:model.nation.iroquois.settlementname.52";R:4;s:44:"1202:model.nation.iroquois.settlementname.53";R:4;s:44:"1202:model.nation.iroquois.settlementname.54";R:4;s:44:"1202:model.nation.iroquois.settlementname.55";R:4;s:44:"1202:model.nation.iroquois.settlementname.56";R:4;s:44:"1202:model.nation.iroquois.settlementname.57";R:4;s:44:"1202:model.nation.iroquois.settlementname.58";R:4;s:40:"1202:model.nation.sioux.settlementname.0";R:4;s:40:"1202:model.nation.sioux.settlementname.1";R:4;s:40:"1202:model.nation.sioux.settlementname.2";R:4;s:40:"1202:model.nation.sioux.settlementname.3";R:4;s:40:"1202:model.nation.sioux.settlementname.4";R:4;s:40:"1202:model.nation.sioux.settlementname.5";R:4;s:40:"1202:model.nation.sioux.settlementname.6";R:4;s:40:"1202:model.nation.sioux.settlementname.7";R:4;s:40:"1202:model.nation.sioux.settlementname.8";R:4;s:40:"1202:model.nation.sioux.settlementname.9";R:4;s:41:"1202:model.nation.sioux.settlementname.10";R:4;s:41:"1202:model.nation.sioux.settlementname.11";R:4;s:41:"1202:model.nation.sioux.settlementname.12";R:4;s:41:"1202:model.nation.sioux.settlementname.13";R:4;s:41:"1202:model.nation.sioux.settlementname.14";R:4;s:41:"1202:model.nation.sioux.settlementname.15";R:4;s:41:"1202:model.nation.sioux.settlementname.16";R:4;s:41:"1202:model.nation.sioux.settlementname.17";R:4;s:41:"1202:model.nation.sioux.settlementname.18";R:4;s:41:"1202:model.nation.sioux.settlementname.19";R:4;s:41:"1202:model.nation.sioux.settlementname.20";R:4;s:41:"1202:model.nation.sioux.settlementname.21";R:4;s:41:"1202:model.nation.sioux.settlementname.22";R:4;s:41:"1202:model.nation.sioux.settlementname.23";R:4;s:41:"1202:model.nation.sioux.settlementname.24";R:4;s:41:"1202:model.nation.sioux.settlementname.25";R:4;s:41:"1202:model.nation.sioux.settlementname.26";R:4;s:41:"1202:model.nation.sioux.settlementname.27";R:4;s:41:"1202:model.nation.sioux.settlementname.28";R:4;s:41:"1202:model.nation.sioux.settlementname.29";R:4;s:41:"1202:model.nation.sioux.settlementname.30";R:4;s:41:"1202:model.nation.sioux.settlementname.31";R:4;s:41:"1202:model.nation.sioux.settlementname.32";R:4;s:41:"1202:model.nation.sioux.settlementname.33";R:4;s:41:"1202:model.nation.sioux.settlementname.34";R:4;s:41:"1202:model.nation.sioux.settlementname.35";R:4;s:41:"1202:model.nation.sioux.settlementname.36";R:4;s:41:"1202:model.nation.sioux.settlementname.37";R:4;s:41:"1202:model.nation.sioux.settlementname.38";R:4;s:41:"1202:model.nation.sioux.settlementname.39";R:4;s:41:"1202:model.nation.sioux.settlementname.40";R:4;s:41:"1202:model.nation.sioux.settlementname.41";R:4;s:41:"1202:model.nation.sioux.settlementname.42";R:4;s:41:"1202:model.nation.sioux.settlementname.43";R:4;s:41:"1202:model.nation.sioux.settlementname.44";R:4;s:41:"1202:model.nation.sioux.settlementname.45";R:4;s:41:"1202:model.nation.sioux.settlementname.46";R:4;s:39:"1202:model.nation.tupi.settlementname.0";R:4;s:39:"1202:model.nation.tupi.settlementname.1";R:4;s:39:"1202:model.nation.tupi.settlementname.2";R:4;s:39:"1202:model.nation.tupi.settlementname.3";R:4;s:39:"1202:model.nation.tupi.settlementname.4";R:4;s:39:"1202:model.nation.tupi.settlementname.5";R:4;s:39:"1202:model.nation.tupi.settlementname.6";R:4;s:39:"1202:model.nation.tupi.settlementname.7";R:4;s:39:"1202:model.nation.tupi.settlementname.8";R:4;s:39:"1202:model.nation.tupi.settlementname.9";R:4;s:40:"1202:model.nation.tupi.settlementname.10";R:4;s:40:"1202:model.nation.tupi.settlementname.11";R:4;s:40:"1202:model.nation.tupi.settlementname.12";R:4;s:40:"1202:model.nation.tupi.settlementname.13";R:4;s:40:"1202:model.nation.tupi.settlementname.14";R:4;s:40:"1202:model.nation.tupi.settlementname.15";R:4;s:40:"1202:model.nation.tupi.settlementname.16";R:4;s:40:"1202:model.nation.tupi.settlementname.17";R:4;s:40:"1202:model.nation.tupi.settlementname.18";R:4;s:40:"1202:model.nation.tupi.settlementname.19";R:4;s:40:"1202:model.nation.tupi.settlementname.20";R:4;s:40:"1202:model.nation.tupi.settlementname.21";R:4;s:40:"1202:model.nation.tupi.settlementname.22";R:4;s:40:"1202:model.nation.tupi.settlementname.23";R:4;s:40:"1202:model.nation.tupi.settlementname.24";R:4;s:40:"1202:model.nation.tupi.settlementname.25";R:4;s:40:"1202:model.nation.tupi.settlementname.26";R:4;s:40:"1202:model.nation.tupi.settlementname.27";R:4;s:40:"1202:model.nation.tupi.settlementname.28";R:4;s:40:"1202:model.nation.tupi.settlementname.29";R:4;s:40:"1202:model.nation.tupi.settlementname.30";R:4;s:40:"1202:model.nation.tupi.settlementname.31";R:4;s:40:"1202:model.nation.tupi.settlementname.32";R:4;s:40:"1202:model.nation.tupi.settlementname.33";R:4;s:40:"1202:model.nation.tupi.settlementname.34";R:4;s:40:"1202:model.nation.tupi.settlementname.35";R:4;s:40:"1202:model.nation.tupi.settlementname.36";R:4;s:40:"1202:model.nation.tupi.settlementname.37";R:4;s:40:"1202:model.nation.tupi.settlementname.38";R:4;s:40:"1202:model.nation.tupi.settlementname.39";R:4;s:40:"1202:model.nation.tupi.settlementname.40";R:4;s:40:"1202:model.nation.tupi.settlementname.41";R:4;s:40:"1202:model.nation.tupi.settlementname.42";R:4;s:40:"1202:model.nation.tupi.settlementname.43";R:4;s:40:"1202:model.nation.tupi.settlementname.44";R:4;s:40:"1202:model.nation.tupi.settlementname.45";R:4;s:40:"1202:model.nation.tupi.settlementname.46";R:4;s:40:"1202:model.nation.tupi.settlementname.47";R:4;s:40:"1202:model.nation.tupi.settlementname.48";R:4;s:40:"1202:model.nation.tupi.settlementname.49";R:4;s:40:"1202:model.nation.tupi.settlementname.50";R:4;s:40:"1202:model.nation.tupi.settlementname.51";R:4;s:40:"1202:model.nation.tupi.settlementname.52";R:4;s:40:"1202:model.nation.tupi.settlementname.53";R:4;s:22:"1202:installer.freecol";R:4;s:34:"1202:installer.freecol.description";R:4;s:25:"1202:installer.gamemanual";R:4;s:37:"1202:installer.gamemanual.description";R:4;s:25:"1202:installer.sourcecode";R:4;s:37:"1202:installer.sourcecode.description";R:4;s:20:"1202:installer.music";R:4;s:32:"1202:installer.music.description";R:4;s:27:"1202:installer.soundeffects";R:4;s:39:"1202:installer.soundeffects.description";R:4;s:25:"1202:installer.movieclips";R:4;s:37:"1202:installer.movieclips.description";R:4;s:38:"1202:installer.movieclips.description2";R:4;s:27:"1202:installer.location.web";R:4;s:30:"1202:installer.freecollanguage";R:4;s:41:"1202:installer.freecollanguage.autodetect";R:4;s:42:"1202:installer.freecollanguage.description";R:4;s:24:"1202:installer.userfiles";R:4;s:29:"1202:installer.userfiles.home";R:4;s:32:"1202:installer.userfiles.freecol";R:4;s:30:"1202:installer.userfiles.other";R:4;s:11:"1218:action";s:12:"out-fudforum";s:22:"1218:add_to_buddy_list";R:5;s:10:"1218:admin";R:5;s:24:"1218:admin_control_panel";R:5;s:18:"1218:administrator";R:5;s:15:"1218:attachment";R:5;s:11:"1218:avatar";R:5;s:23:"1218:average_post_count";R:5;s:14:"1218:biography";R:5;s:15:"1218:birth_date";R:5;s:7:"1218:by";R:5;s:11:"1218:by_mod";R:5;s:17:"1218:current_time";R:5;s:24:"1218:custom_avatar_queue";R:5;s:16:"1218:date_posted";R:5;s:20:"1218:date_registered";R:5;s:21:"1218:download_counter";R:5;s:26:"1218:pmsg_download_counter";R:5;s:10:"1218:email";R:5;s:20:"1218:email_to_friend";R:5;s:25:"1218:email_to_friend_desc";R:5;s:15:"1218:email_user";R:5;s:8:"1218:faq";R:5;s:21:"1218:first_unread_msg";R:5;s:26:"1218:first_unread_msg_desc";R:5;s:14:"1218:flat_view";R:5;s:10:"1218:forum";R:5;s:15:"1218:forum_icon";R:5;s:23:"1218:forum_new_messages";R:5;s:24:"1218:forum_none_messages";R:5;s:23:"1218:forum_old_messages";R:5;s:9:"1218:from";R:5;s:11:"1218:gender";R:5;s:7:"1218:go";R:5;s:18:"1218:goto_next_msg";R:5;s:18:"1218:goto_prev_msg";R:5;s:9:"1218:home";R:5;s:13:"1218:homepage";R:5;s:22:"1218:icq_control_panel";R:5;s:21:"1218:icq_message_form";R:5;s:16:"1218:ignore_user";R:5;s:11:"1218:im_aim";R:5;s:12:"1218:im_msnm";R:5;s:13:"1218:im_yahoo";R:5;s:10:"1218:image";R:5;s:16:"1218:index_forum";R:5;s:20:"1218:index_new_posts";R:5;s:23:"1218:index_no_new_posts";R:5;s:26:"1218:index_url_redirection";R:5;s:14:"1218:interests";R:5;s:14:"1218:last_post";R:5;s:20:"1218:last_thread_msg";R:5;s:11:"1218:legend";R:5;s:13:"1218:location";R:5;s:16:"1218:lock_thread";R:5;s:11:"1218:locked";R:5;s:26:"1218:locked_with_new_posts";R:5;s:19:"1218:logged_in_list";R:5;s:10:"1218:login";R:5;s:17:"1218:login_header";R:5;s:11:"1218:logout";R:5;s:18:"1218:mark_all_read";R:5;s:23:"1218:mark_all_read_desc";R:5;s:12:"1218:members";R:5;s:13:"1218:calendar";R:5;s:18:"1218:cal_goto_date";R:5;s:20:"1218:cal_day_heading";R:5;s:18:"1218:cal_no_events";R:5;s:15:"1218:cal_update";R:5;s:17:"1218:cal_birthday";R:5;s:21:"1218:cal_birthday_age";R:5;s:12:"1218:message";R:5;s:20:"1218:message_counter";R:5;s:18:"1218:message_index";R:5;s:23:"1218:message_index_desc";R:5;s:22:"1218:minimize_category";R:5;s:21:"1218:minimize_message";R:5;s:21:"1218:moderation_queue";R:5;s:14:"1218:moderator";R:5;s:17:"1218:moderator_of";R:5;s:22:"1218:moderator_options";R:5;s:15:"1218:moderators";R:5;s:25:"1218:more_unread_messages";R:5;s:30:"1218:more_unread_messages_desc";R:5;s:16:"1218:move_thread";R:5;s:10:"1218:moved";R:5;s:25:"1218:moved_thread_message";R:5;s:7:"1218:na";R:5;s:14:"1218:new_posts";R:5;s:25:"1218:new_private_messages";R:5;s:15:"1218:new_thread";R:5;s:16:"1218:newest_user";R:5;s:14:"1218:next_page";R:5;s:16:"1218:next_thread";R:5;s:16:"1218:no_messages";R:5;s:16:"1218:no_msg_body";R:5;s:17:"1218:no_new_posts";R:5;s:13:"1218:no_posts";R:5;s:25:"1218:no_subscribed_forums";R:5;s:26:"1218:no_subscribed_threads";R:5;s:26:"1218:no_bookmarked_threads";R:5;s:21:"1218:no_unread_locked";R:5;s:18:"1218:no_unread_msg";R:5;s:24:"1218:no_unread_msg_unreg";R:5;s:14:"1218:num_pages";R:5;s:14:"1218:num_votes";R:5;s:15:"1218:occupation";R:5;s:8:"1218:off";R:5;s:7:"1218:on";R:5;s:17:"1218:page_timings";R:5;s:7:"1218:pm";R:5;s:9:"1218:poll";R:5;s:15:"1218:post_count";R:5;s:17:"1218:post_count_l";R:5;s:10:"1218:posts";R:5;s:12:"1218:posts_c";R:5;s:16:"1218:prev_thread";R:5;s:28:"1218:usrinfo_private_message";R:5;s:12:"1218:profile";R:5;s:17:"1218:profile_desc";R:5;s:16:"1218:rate_thread";R:5;s:11:"1218:rating";R:5;s:17:"1218:rating_track";R:5;s:17:"1218:refresh_list";R:5;s:13:"1218:register";R:5;s:15:"1218:registered";R:5;s:18:"1218:registered_on";R:5;s:12:"1218:replies";R:5;s:18:"1218:report_to_mod";R:5;s:22:"1218:reported_messages";R:5;s:21:"1218:reveal_all_posts";R:5;s:16:"1218:reveal_post";R:5;s:11:"1218:search";R:5;s:21:"1218:sel_todays_posts";R:5;s:26:"1218:sel_todays_posts_desc";R:5;s:25:"1218:sel_unanswered_posts";R:5;s:30:"1218:sel_unanswered_posts_desc";R:5;s:24:"1218:sel_unread_messages";R:5;s:29:"1218:sel_unread_messages_desc";R:5;s:9:"1218:send";R:5;s:17:"1218:send_pm_desc";R:5;s:17:"1218:sender_email";R:5;s:16:"1218:sender_name";R:5;s:18:"1218:show_posts_by";R:5;s:9:"1218:size";R:5;s:11:"1218:status";R:5;s:16:"1218:status_line";R:5;s:11:"1218:sticky";R:5;s:18:"1218:stop_ignoring";R:5;s:18:"1218:sub_to_thread";R:5;s:23:"1218:sub_to_thread_desc";R:5;s:20:"1218:bookmark_thread";R:5;s:25:"1218:bookmark_thread_desc";R:5;s:12:"1218:subject";R:5;s:14:"1218:subscribe";R:5;s:19:"1218:subscribe_desc";R:5;s:22:"1218:subscribed_forums";R:5;s:27:"1218:subscribed_forums_desc";R:5;s:23:"1218:subscribed_threads";R:5;s:28:"1218:subscribed_threads_desc";R:5;s:23:"1218:bookmarked_threads";R:5;s:26:"1218:switch_to_thread_view";R:5;s:11:"1218:thread";R:5;s:24:"1218:thread_announcement";R:5;s:28:"1218:thread_first_unread_msg";R:5;s:18:"1218:thread_thread";R:5;s:12:"1218:threads";R:5;s:9:"1218:time";R:5;s:17:"1218:todays_posts";R:5;s:22:"1218:todays_posts_desc";R:5;s:19:"1218:un_ignore_user";R:5;s:21:"1218:unanswered_posts";R:5;s:26:"1218:unanswered_posts_desc";R:5;s:18:"1218:unlock_thread";R:5;s:15:"1218:unread_msg";R:5;s:22:"1218:unread_msg_locked";R:5;s:17:"1218:unread_posts";R:5;s:22:"1218:unread_posts_desc";R:5;s:22:"1218:unsub_from_thread";R:5;s:27:"1218:unsub_from_thread_desc";R:5;s:22:"1218:unbookmark_thread";R:5;s:27:"1218:unbookmark_thread_desc";R:5;s:16:"1218:unsubscribe";R:5;s:21:"1218:unsubscribe_desc";R:5;s:15:"1218:updated_on";R:5;s:9:"1218:user";R:5;s:17:"1218:user_counter";R:5;s:14:"1218:user_info";R:5;s:16:"1218:user_info_l";R:5;s:17:"1218:user_offline";R:5;s:16:"1218:user_online";R:5;s:22:"1218:usrinfo_last_post";R:5;s:17:"1218:view_results";R:5;s:10:"1218:views";R:5;s:9:"1218:vote";R:5;s:16:"1218:vote_button";R:5;s:20:"1218:vote_for_thread";R:5;s:18:"1218:was_moved_msg";R:5;s:20:"1218:welcome_message";R:5;s:19:"1218:what_ppl_doing";R:5;s:24:"1218:reported_del_report";R:5;s:20:"1218:reported_reason";R:5;s:16:"1218:reported_on";R:5;s:25:"1218:reported_reported_by";R:5;s:26:"1218:reported_reported_msg";R:5;s:28:"1218:modque_pending_approval";R:5;s:19:"1218:modque_approve";R:5;s:18:"1218:modque_delete";R:5;s:22:"1218:modque_no_message";R:5;s:22:"1218:pmsg_new_messages";R:5;s:22:"1218:pmsg_old_messages";R:5;s:16:"1218:deny_recipt";R:5;s:21:"1218:deny_recipt_desc";R:5;s:15:"1218:restore_to";R:5;s:12:"1218:move_to";R:5;s:27:"1218:list_referes_referrals";R:5;s:25:"1218:list_referes_members";R:5;s:24:"1218:list_referes_member";R:5;s:18:"1218:referals_none";R:5;s:24:"1218:referals_refered_by";R:5;s:24:"1218:referals_post_count";R:5;s:27:"1218:referals_registered_on";R:5;s:20:"1218:referals_action";R:5;s:13:"1218:pmsg_all";R:5;s:14:"1218:pmsg_none";R:5;s:11:"1218:folder";R:5;s:17:"1218:pmsg_replied";R:5;s:19:"1218:pmsg_forwarded";R:5;s:17:"1218:pmsg_subject";R:5;s:16:"1218:pmsg_author";R:5;s:14:"1218:pmsg_time";R:5;s:18:"1218:pmsg_selected";R:5;s:16:"1218:pmsg_delete";R:5;s:17:"1218:cur_ppage_pm";R:5;s:15:"1218:writing_pm";R:5;s:20:"1218:browsing_folder";R:5;s:10:"1218:inbox";R:5;s:10:"1218:draft";R:5;s:9:"1218:sent";R:5;s:10:"1218:trash";R:5;s:15:"1218:msg_author";R:5;s:20:"1218:avatar_sel_form";R:5;s:15:"1218:no_avatars";R:5;s:12:"1218:month_1";R:5;s:12:"1218:month_2";R:5;s:12:"1218:month_3";R:5;s:12:"1218:month_4";R:5;s:12:"1218:month_5";R:5;s:12:"1218:month_6";R:5;s:12:"1218:month_7";R:5;s:12:"1218:month_8";R:5;s:12:"1218:month_9";R:5;s:13:"1218:month_10";R:5;s:13:"1218:month_11";R:5;s:13:"1218:month_12";R:5;s:11:"1218:sunday";R:5;s:17:"1218:sunday_short";R:5;s:11:"1218:monday";R:5;s:17:"1218:monday_short";R:5;s:12:"1218:tuesday";R:5;s:18:"1218:tuesday_short";R:5;s:14:"1218:wednesday";R:5;s:20:"1218:wednesday_short";R:5;s:13:"1218:thursday";R:5;s:19:"1218:thursday_short";R:5;s:11:"1218:friday";R:5;s:17:"1218:friday_short";R:5;s:13:"1218:saturday";R:5;s:19:"1218:saturday_short";R:5;s:9:"1218:male";R:5;s:11:"1218:female";R:5;s:16:"1218:unspecified";R:5;s:23:"1218:register_tree_view";R:5;s:27:"1218:register_msg_tree_view";R:5;s:27:"1218:register_tree_msg_view";R:5;s:23:"1218:register_flat_view";R:5;s:22:"1218:use_forum_default";R:5;s:23:"1218:finduser_user_info";R:5;s:22:"1218:finduser_by_login";R:5;s:20:"1218:finduser_submit";R:5;s:26:"1218:finduser_no_such_user";R:5;s:18:"1218:finduser_user";R:5;s:23:"1218:finduser_postcount";R:5;s:22:"1218:finduser_joindate";R:5;s:20:"1218:finduser_action";R:5;s:8:"1218:yes";R:5;s:7:"1218:no";R:5;s:19:"1218:register_email";R:5;s:20:"1218:edit_time_limit";R:5;s:23:"1218:no_edit_time_limit";R:5;s:20:"1218:pmuserloc_login";R:5;s:21:"1218:pmuserloc_submit";R:5;s:19:"1218:pmuserloc_user";R:5;s:24:"1218:pmuserloc_no_result";R:5;s:21:"1218:register_builtin";R:5;s:25:"1218:register_specify_url";R:5;s:22:"1218:register_uploaded";R:5;s:19:"1218:register_login";R:5;s:22:"1218:register_password";R:5;s:23:"1218:register_conf_pass";R:5;s:24:"1218:register_email_desc";R:5;s:18:"1218:register_name";R:5;s:23:"1218:register_your_pass";R:5;s:20:"1218:register_update";R:5;s:25:"1218:register_avatar_type";R:5;s:24:"1218:register_del_avatar";R:5;s:20:"1218:register_avatar";R:5;s:24:"1218:register_sel_avatar";R:5;s:33:"1218:register_custom_avatar_rules";R:5;s:31:"1218:register_custom_avatar_url";R:5;s:21:"1218:register_preview";R:5;s:34:"1218:register_custom_avatar_upload";R:5;s:22:"1218:register_register";R:5;s:22:"1218:register_required";R:5;s:27:"1218:register_required_desc";R:5;s:22:"1218:register_optional";R:5;s:27:"1218:register_optional_desc";R:5;s:22:"1218:register_location";R:5;s:24:"1218:register_occupation";R:5;s:23:"1218:register_interests";R:5;s:19:"1218:register_image";R:5;s:17:"1218:register_icq";R:5;s:17:"1218:register_aim";R:5;s:19:"1218:register_yahoo";R:5;s:18:"1218:register_msnm";R:5;s:22:"1218:register_homepage";R:5;s:18:"1218:register_bday";R:5;s:23:"1218:register_bday_desc";R:5;s:17:"1218:register_day";R:5;s:19:"1218:register_month";R:5;s:18:"1218:register_year";R:5;s:20:"1218:register_gender";R:5;s:17:"1218:register_bio";R:5;s:22:"1218:register_bio_desc";R:5;s:19:"1218:register_prefs";R:5;s:17:"1218:register_sig";R:5;s:22:"1218:register_sig_desc";R:5;s:19:"1218:register_reset";R:5;s:29:"1218:register_def_thread_view";R:5;s:26:"1218:register_msg_per_page";R:5;s:22:"1218:register_show_sig";R:5;s:27:"1218:register_show_sig_desc";R:5;s:29:"1218:register_use_sig_default";R:5;s:34:"1218:register_use_sig_default_desc";R:5;s:22:"1218:register_timezone";R:5;s:26:"1218:register_ignore_admin";R:5;s:28:"1218:register_invisible_mode";R:5;s:33:"1218:register_invisible_mode_desc";R:5;s:24:"1218:register_show_email";R:5;s:29:"1218:register_show_email_desc";R:5;s:26:"1218:register_notification";R:5;s:31:"1218:register_notification_desc";R:5;s:27:"1218:register_notify_method";R:5;s:32:"1218:register_notify_method_desc";R:5;s:29:"1218:register_allow_email_msg";R:5;s:34:"1218:register_allow_email_msg_desc";R:5;s:17:"1218:buddy_status";R:5;s:15:"1218:my_buddies";R:5;s:14:"1218:add_buddy";R:5;s:8:"1218:add";R:5;s:17:"1218:buddy_search";R:5;s:18:"1218:member_search";R:5;s:17:"1218:buddy_remove";R:5;s:16:"1218:post_normal";R:5;s:16:"1218:post_sticky";R:5;s:21:"1218:post_annoncement";R:5;s:14:"1218:post_size";R:5;s:15:"1218:post_color";R:5;s:14:"1218:post_font";R:5;s:18:"1218:create_thread";R:5;s:17:"1218:submit_reply";R:5;s:17:"1218:edit_message";R:5;s:24:"1218:apply_spell_changes";R:5;s:17:"1218:post_preview";R:5;s:22:"1218:post_logedin_user";R:5;s:16:"1218:post_logout";R:5;s:16:"1218:post_passwd";R:5;s:14:"1218:post_poll";R:5;s:21:"1218:post_create_poll";R:5;s:21:"1218:post_poll_delete";R:5;s:19:"1218:post_poll_edit";R:5;s:17:"1218:post_mod_opt";R:5;s:21:"1218:post_thread_type";R:5;s:23:"1218:post_thread_expiry";R:5;s:16:"1218:post_locked";R:5;s:15:"1218:post_icons";R:5;s:17:"1218:post_no_icon";R:5;s:16:"1218:post_smiley";R:5;s:22:"1218:post_format_tools";R:5;s:21:"1218:post_upload_file";R:5;s:18:"1218:post_file_del";R:5;s:19:"1218:post_file_name";R:5;s:19:"1218:post_file_size";R:5;s:21:"1218:file_attachments";R:5;s:18:"1218:allowed_files";R:5;s:18:"1218:max_file_size";R:5;s:22:"1218:max_files_per_msg";R:5;s:22:"1218:post_notification";R:5;s:16:"1218:include_sig";R:5;s:21:"1218:include_sig_desc";R:5;s:20:"1218:disable_smilies";R:5;s:20:"1218:spell_check_msg";R:5;s:14:"1218:post_form";R:5;s:15:"1218:post_forum";R:5;s:15:"1218:post_title";R:5;s:14:"1218:post_body";R:5;s:17:"1218:post_options";R:5;s:21:"1218:post_preview_btn";R:5;s:20:"1218:post_cancel_btn";R:5;s:17:"1218:ignore_users";R:5;s:15:"1218:add_ignore";R:5;s:16:"1218:forum_terms";R:5;s:16:"1218:forum_rules";R:5;s:19:"1218:forum_rules_13";R:5;s:15:"1218:coppa_conf";R:5;s:17:"1218:coppa_before";R:5;s:16:"1218:coppa_after";R:5;s:15:"1218:coppa_link";R:5;s:10:"1218:coppa";R:5;s:16:"1218:prereg_info";R:5;s:17:"1218:prereg_agree";R:5;s:20:"1218:prereg_disagree";R:5;s:18:"1218:prereg_update";R:5;s:27:"1218:coppa_fax_instructions";R:5;s:28:"1218:coppa_fax_instructions2";R:5;s:23:"1218:coppa_fax_reg_form";R:5;s:19:"1218:coppa_fax_sign";R:5;s:19:"1218:coppa_fax_conf";R:5;s:25:"1218:coppa_fax_permission";R:5;s:28:"1218:coppa_fax_no_permission";R:5;s:26:"1218:coppa_fax_parent_name";R:5;s:23:"1218:coppa_fax_relation";R:5;s:24:"1218:coppa_fax_telephone";R:5;s:20:"1218:coppa_fax_email";R:5;s:19:"1218:coppa_fax_date";R:5;s:24:"1218:coppa_fax_questions";R:5;s:20:"1218:coppa_fax_login";R:5;s:21:"1218:coppa_fax_passwd";R:5;s:21:"1218:coppa_fax_remail";R:5;s:19:"1218:coppa_fax_name";R:5;s:22:"1218:login_not_logedin";R:5;s:25:"1218:login_cookie_expired";R:5;s:22:"1218:login_perm_denied";R:5;s:27:"1218:login_want_to_register";R:5;s:24:"1218:login_forgot_passwd";R:5;s:21:"1218:login_use_cookie";R:5;s:16:"1218:login_login";R:5;s:20:"1218:login_login_btn";R:5;s:24:"1218:login_name_required";R:5;s:26:"1218:login_passwd_required";R:5;s:25:"1218:login_invalid_radius";R:5;s:23:"1218:reset_confirmation";R:5;s:16:"1218:reset_reset";R:5;s:27:"1218:rpasswd_invalid_passwd";R:5;s:27:"1218:rpasswd_passwd_nomatch";R:5;s:26:"1218:rpasswd_passwd_length";R:5;s:22:"1218:reset_remind_pass";R:5;s:21:"1218:reset_reset_conf";R:5;s:16:"1218:reset_error";R:5;s:24:"1218:rpasswd_change_pass";R:5;s:18:"1218:rpasswd_login";R:5;s:21:"1218:rpasswd_cur_pass";R:5;s:21:"1218:rpasswd_new_pass";R:5;s:22:"1218:rpasswd_conf_pass";R:5;s:16:"1218:ruser_title";R:5;s:22:"1218:ruser_change_user";R:5;s:20:"1218:ruser_cur_login";R:5;s:20:"1218:ruser_new_login";R:5;s:19:"1218:ruser_cur_pass";R:5;s:17:"1218:login_passwd";R:5;s:16:"1218:reset_email";R:5;s:23:"1218:reset_reset_button";R:5;s:21:"1218:rate_this_thread";R:5;s:27:"1218:report_reporting_about";R:5;s:19:"1218:report_subject";R:5;s:14:"1218:report_by";R:5;s:21:"1218:report_posted_on";R:5;s:23:"1218:report_give_reason";R:5;s:25:"1218:report_submit_report";R:5;s:22:"1218:search_entire_msg";R:5;s:24:"1218:search_subject_only";R:5;s:17:"1218:search_forum";R:5;s:21:"1218:search_posted_on";R:5;s:22:"1218:search_no_results";R:5;s:22:"1218:search_all_forums";R:5;s:20:"1218:search_in_forum";R:5;s:24:"1218:search_forum_search";R:5;s:19:"1218:move_thread_to";R:5;s:23:"1218:remail_email_topic";R:5;s:21:"1218:remail_your_name";R:5;s:22:"1218:remail_your_email";R:5;s:24:"1218:remail_friends_name";R:5;s:25:"1218:remail_friends_email";R:5;s:20:"1218:remail_required";R:5;s:19:"1218:remail_subject";R:5;s:19:"1218:remail_message";R:5;s:20:"1218:remail_send_now";R:5;s:20:"1218:remail_anon_opt";R:5;s:16:"1218:remail_done";R:5;s:21:"1218:remail_sent_conf";R:5;s:17:"1218:remail_error";R:5;s:16:"1218:mklist_type";R:5;s:18:"1218:mklist_option";R:5;s:19:"1218:mklist_additem";R:5;s:17:"1218:mklist_apply";R:5;s:18:"1218:mklist_delete";R:5;s:19:"1218:qbud_nick_name";R:5;s:22:"1218:qbud_add_selected";R:5;s:18:"1218:qbud_selected";R:5;s:20:"1218:qbud_no_buddies";R:5;s:21:"1218:mklist_numerical";R:5;s:17:"1218:mklist_aplha";R:5;s:18:"1218:mklist_square";R:5;s:16:"1218:mklist_disc";R:5;s:18:"1218:mklist_circle";R:5;s:17:"1218:mklist_close";R:5;s:13:"1218:email_to";R:5;s:19:"1218:email_pg_title";R:5;s:18:"1218:email_subject";R:5;s:15:"1218:email_body";R:5;s:17:"1218:email_submit";R:5;s:20:"1218:ppost_quote_msg";R:5;s:16:"1218:ppost_quote";R:5;s:13:"1218:ppost_to";R:5;s:26:"1218:ppost_from_buddy_list";R:5;s:20:"1218:ppost_find_user";R:5;s:20:"1218:ppost_track_msg";R:5;s:25:"1218:ppost_track_msg_desc";R:5;s:15:"1218:ppost_send";R:5;s:21:"1218:ppost_save_draft";R:5;s:22:"1218:poll_blank_option";R:5;s:18:"1218:poll_del_conf";R:5;s:14:"1218:poll_name";R:5;s:19:"1218:poll_timelimit";R:5;s:21:"1218:poll_maxiumvotes";R:5;s:16:"1218:poll_create";R:5;s:16:"1218:poll_update";R:5;s:24:"1218:poll_disablesmilies";R:5;s:21:"1218:poll_create_poll";R:5;s:21:"1218:poll_update_poll";R:5;s:16:"1218:poll_delete";R:5;s:22:"1218:poll_updateoption";R:5;s:19:"1218:poll_addoption";R:5;s:19:"1218:poll_unlimited";R:5;s:13:"1218:poll_day";R:5;s:14:"1218:poll_days";R:5;s:14:"1218:poll_hour";R:5;s:15:"1218:poll_hours";R:5;s:15:"1218:poll_month";R:5;s:14:"1218:poll_year";R:5;s:14:"1218:poll_week";R:5;s:18:"1218:tabs_register";R:5;s:23:"1218:tabs_subscriptions";R:5;s:20:"1218:tabs_bookmarkes";R:5;s:19:"1218:tabs_referrals";R:5;s:20:"1218:tabs_buddy_list";R:5;s:21:"1218:tabs_ignore_list";R:5;s:27:"1218:tabs_private_messaging";R:5;s:22:"1218:single_msg_delete";R:5;s:18:"1218:thread_delete";R:5;s:19:"1218:delete_proceed";R:5;s:15:"1218:delete_yes";R:5;s:14:"1218:delete_no";R:5;s:21:"1218:error_invalidurl";R:5;s:16:"1218:error_error";R:5;s:20:"1218:usrinfo_profile";R:5;s:27:"1218:usrinfo_show_all_posts";R:5;s:19:"1218:actions_update";R:5;s:13:"1218:err_info";R:5;s:27:"1218:buddy_list_err_cantadd";R:5;s:23:"1218:buddy_list_err_dup";R:5;s:26:"1218:buddy_list_err_nouser";R:5;s:32:"1218:buddy_list_err_nouser_title";R:5;s:26:"1218:buddy_list_err_ignore";R:5;s:22:"1218:buddy_list_update";R:5;s:26:"1218:core_err_invinp_title";R:5;s:24:"1218:core_err_invinp_err";R:5;s:23:"1218:core_adm_login_msg";R:5;s:34:"1218:email_err_unabletoemail_title";R:5;s:32:"1218:email_err_unabletoemail_msg";R:5;s:32:"1218:email_error_unabletolocaddr";R:5;s:21:"1218:email_error_body";R:5;s:24:"1218:email_error_subject";R:5;s:29:"1218:email_error_namerequired";R:5;s:28:"1218:email_error_invaliduser";R:5;s:31:"1218:emailconf_err_invkey_title";R:5;s:29:"1218:emailconf_err_invkey_msg";R:5;s:26:"1218:err_inc_criticaltitle";R:5;s:24:"1218:err_inc_criticalmsg";R:5;s:20:"1218:finduser_update";R:5;s:22:"1218:help_index_update";R:5;s:23:"1218:iemail_thr_subject";R:5;s:25:"1218:iemail_thr_bodyemail";R:5;s:23:"1218:iemail_frm_subject";R:5;s:25:"1218:iemail_frm_bodyemail";R:5;s:23:"1218:iemail_participate";R:5;s:31:"1218:ignore_list_err_info_title";R:5;s:28:"1218:ignore_list_err_dup_msg";R:5;s:29:"1218:ignore_list_err_nu_title";R:5;s:27:"1218:ignore_list_err_nu_msg";R:5;s:28:"1218:ignore_list_cantign_msg";R:5;s:23:"1218:ignore_list_update";R:5;s:17:"1218:index_update";R:5;s:25:"1218:list_referers_update";R:5;s:17:"1218:login_update";R:5;s:15:"1218:msg_update";R:5;s:22:"1218:pm_err_nopm_title";R:5;s:20:"1218:pm_err_nopm_msg";R:5;s:14:"1218:pm_update";R:5;s:32:"1218:post_err_lockedthread_title";R:5;s:30:"1218:post_err_lockedthread_msg";R:5;s:20:"1218:err_coppa_title";R:5;s:18:"1218:err_coppa_msg";R:5;s:26:"1218:err_banned_acct_title";R:5;s:24:"1218:err_banned_acct_msg";R:5;s:32:"1218:post_err_edttimelimit_title";R:5;s:30:"1218:post_err_edttimelimit_msg";R:5;s:32:"1218:post_err_noannontopics_msg2";R:5;s:31:"1218:post_err_noannonposts_msg2";R:5;s:29:"1218:post_err_floodtrig_title";R:5;s:27:"1218:post_err_floodtrig_msg";R:5;s:25:"1218:post_err_attach_size";R:5;s:24:"1218:post_err_attach_ext";R:5;s:30:"1218:post_err_attach_filelimit";R:5;s:20:"1218:post_err_passwd";R:5;s:22:"1218:post_reply_update";R:5;s:22:"1218:post_topic_update";R:5;s:23:"1218:post_error_generic";R:5;s:29:"1218:postcheck_max_images_err";R:5;s:31:"1218:postcheck_no_links_allowed";R:5;s:26:"1218:postcheck_subj_needed";R:5;s:27:"1218:postcheck_no_such_user";R:5;s:22:"1218:postcheck_ignored";R:5;s:27:"1218:postcheck_no_recepient";R:5;s:28:"1218:postcheck_invalid_email";R:5;s:28:"1218:postcheck_email_subject";R:5;s:25:"1218:postcheck_email_body";R:5;s:28:"1218:private_msg_notify_subj";R:5;s:28:"1218:private_msg_notify_body";R:5;s:20:"1218:referals_update";R:5;s:29:"1218:register_err_short_login";R:5;s:34:"1218:register_err_login_notallowed";R:5;s:29:"1218:register_err_loginunique";R:5;s:29:"1218:register_err_emailexists";R:5;s:29:"1218:register_err_shortpasswd";R:5;s:31:"1218:register_err_passwdnomatch";R:5;s:30:"1218:register_err_invalidemail";R:5;s:26:"1218:register_err_needname";R:5;s:29:"1218:register_err_enterpasswd";R:5;s:29:"1218:register_err_adminpasswd";R:5;s:30:"1218:register_err_notyouremail";R:5;s:29:"1218:register_err_avatartobig";R:5;s:34:"1218:register_err_avatarnotallowed";R:5;s:26:"1218:register_conf_subject";R:5;s:22:"1218:register_conf_msg";R:5;s:29:"1218:register_welcome_subject";R:5;s:25:"1218:register_welcome_msg";R:5;s:31:"1218:register_err_cantreg_title";R:5;s:29:"1218:regsiter_err_cantreg_msg";R:5;s:28:"1218:register_profile_update";R:5;s:29:"1218:register_register_update";R:5;s:31:"1218:report_err_nosuchmsg_title";R:5;s:29:"1218:report_err_nosuchmsg_msg";R:5;s:31:"1218:reset_err_invalidkey_title";R:5;s:29:"1218:reset_err_invalidkey_msg";R:5;s:28:"1218:reset_err_rstconf_title";R:5;s:26:"1218:reset_err_rstconf_msg";R:5;s:24:"1218:reset_newpass_title";R:5;s:22:"1218:reset_newpass_msg";R:5;s:23:"1218:reset_login_notify";R:5;s:18:"1218:search_update";R:5;s:18:"1218:selmsg_update";R:5;s:21:"1218:showposts_update";R:5;s:22:"1218:subscribed_update";R:5;s:22:"1218:bookmarked_update";R:5;s:18:"1218:thread_update";R:5;s:16:"1218:tree_update";R:5;s:20:"1218:userinfo_update";R:5;s:19:"1218:err_login_msg2";R:5;s:21:"1218:err_disabled_ttl";R:5;s:21:"1218:err_disabled_msg";R:5;s:19:"1218:err_access_ttl";R:5;s:19:"1218:err_access_msg";R:5;s:34:"1218:err_registration_disabled_ttl";R:5;s:34:"1218:err_registration_disabled_msg";R:5;s:22:"1218:err_emailconf_ttl";R:5;s:22:"1218:err_emailconf_msg";R:5;s:17:"1218:err_user_ttl";R:5;s:17:"1218:err_user_msg";R:5;s:22:"1218:err_systemerr_ttl";R:5;s:22:"1218:err_systemerr_msg";R:5;s:16:"1218:email_title";R:5;s:19:"1218:finduser_title";R:5;s:15:"1218:help_title";R:5;s:16:"1218:login_title";R:5;s:14:"1218:msg_title";R:5;s:15:"1218:poll_title";R:5;s:19:"1218:register_title";R:5;s:16:"1218:reset_title";R:5;s:18:"1218:rpasswd_title";R:5;s:16:"1218:error_title";R:5;s:16:"1218:index_title";R:5;s:17:"1218:search_title";R:5;s:17:"1218:thread_title";R:5;s:15:"1218:tree_title";R:5;s:21:"1218:remail_emailsent";R:5;s:17:"1218:remail_email";R:5;s:20:"1218:poll_add_option";R:5;s:21:"1218:post_opt_html_on";R:5;s:20:"1218:post_opt_fud_on";R:5;s:23:"1218:post_opt_images_on";R:5;s:24:"1218:post_opt_smilies_on";R:5;s:22:"1218:post_opt_html_off";R:5;s:21:"1218:post_opt_fud_off";R:5;s:24:"1218:post_opt_images_off";R:5;s:25:"1218:post_opt_smilies_off";R:5;s:13:"1218:post_opt";R:5;s:27:"1218:register_change_passwd";R:5;s:26:"1218:register_change_login";R:5;s:26:"1218:approved_avatar_title";R:5;s:24:"1218:approved_avatar_msg";R:5;s:28:"1218:unapproved_avatar_title";R:5;s:26:"1218:unapproved_avatar_msg";R:5;s:26:"1218:mvthread_request_move";R:5;s:24:"1218:move_request_reason";R:5;s:24:"1218:mvthread_submit_req";R:5;s:20:"1218:thread_exchange";R:5;s:20:"1218:move_request_by";R:5;s:16:"1218:move_reason";R:5;s:20:"1218:thr_exch_accept";R:5;s:21:"1218:thr_exch_decline";R:5;s:24:"1218:thr_exch_orig_forum";R:5;s:24:"1218:thr_exch_dest_forum";R:5;s:24:"1218:thr_exch_no_threads";R:5;s:25:"1218:thr_exch_decl_reason";R:5;s:20:"1218:thr_exch_submit";R:5;s:21:"1218:exch_decline_ttl";R:5;s:23:"1218:ppost_original_msg";R:5;s:17:"1218:split_thread";R:5;s:21:"1218:groupmgr_no_user";R:5;s:28:"1218:groupmgr_already_exists";R:5;s:17:"1218:groupmgr_yes";R:5;s:16:"1218:groupmgr_no";R:5;s:20:"1218:groupmgr_action";R:5;s:20:"1218:groupmgr_member";R:5;s:20:"1218:groupmgr_cancel";R:5;s:24:"1218:groupmgr_add_member";R:5;s:27:"1218:groupmgr_update_member";R:5;s:18:"1218:groupmgr_edit";R:5;s:20:"1218:groupmgr_delete";R:5;s:19:"1218:group_mgr_anon";R:5;s:20:"1218:group_mgr_reged";R:5;s:14:"1218:show_show";R:5;s:14:"1218:group_mgr";R:5;s:23:"1218:group_mgr_edit_btn";R:5;s:22:"1218:group_mgr_heading";R:5;s:20:"1218:group_mgr_group";R:5;s:28:"1218:permission_denied_title";R:5;s:26:"1218:permission_denied_msg";R:5;s:11:"1218:p_read";R:5;s:11:"1218:p_post";R:5;s:12:"1218:p_reply";R:5;s:11:"1218:p_edit";R:5;s:10:"1218:p_del";R:5;s:13:"1218:p_sticky";R:5;s:11:"1218:p_poll";R:5;s:11:"1218:p_file";R:5;s:11:"1218:p_vote";R:5;s:11:"1218:p_rate";R:5;s:12:"1218:p_split";R:5;s:11:"1218:p_lock";R:5;s:11:"1218:p_move";R:5;s:10:"1218:p_sml";R:5;s:10:"1218:p_img";R:5;s:13:"1218:p_search";R:5;s:21:"1218:group_mgr_search";R:5;s:24:"1218:group_mgr_indicator";R:5;s:15:"1218:rate_worst";R:5;s:14:"1218:rate_best";R:5;s:19:"1218:post_quote_msg";R:5;s:15:"1218:post_quote";R:5;s:24:"1218:post_quote_selected";R:5;s:22:"1218:userinfo_referals";R:5;s:28:"1218:userinfo_referals_count";R:5;s:22:"1218:pm_no_space_title";R:5;s:20:"1218:pm_no_space_msg";R:5;s:23:"1218:pm_space_indct_msg";R:5;s:18:"1218:th_expr_never";R:5;s:19:"1218:th_expr_one_hr";R:5;s:21:"1218:th_expr_three_hr";R:5;s:20:"1218:th_expr_four_hr";R:5;s:21:"1218:th_expr_eight_hr";R:5;s:23:"1218:th_expr_sixteen_hr";R:5;s:20:"1218:th_expr_one_day";R:5;s:20:"1218:th_expr_two_day";R:5;s:21:"1218:th_expr_four_day";R:5;s:21:"1218:th_expr_one_week";R:5;s:21:"1218:th_expr_two_week";R:5;s:22:"1218:th_expr_one_month";R:5;s:22:"1218:th_expr_two_month";R:5;s:23:"1218:th_expr_four_month";R:5;s:21:"1218:th_expr_one_year";R:5;s:22:"1218:thread_mod_delete";R:5;s:14:"1218:action_ip";R:5;s:23:"1218:action_latest_post";R:5;s:28:"1218:online_today_last_visit";R:5;s:24:"1218:online_today_update";R:5;s:28:"1218:logedin_todays_visitors";R:5;s:24:"1218:logedin_latest_post";R:5;s:25:"1218:register_show_avatar";R:5;s:30:"1218:register_show_avatar_desc";R:5;s:27:"1218:drawmsg_view_rest_post";R:5;s:12:"1218:post_re";R:5;s:24:"1218:forumsel_goto_forum";R:5;s:24:"1218:minimsg_thread_view";R:5;s:21:"1218:split_th_post_by";R:5;s:23:"1218:split_th_posted_on";R:5;s:21:"1218:split_th_subject";R:5;s:30:"1218:split_th_new_thread_title";R:5;s:19:"1218:split_th_forum";R:5;s:23:"1218:split_th_split_sel";R:5;s:25:"1218:split_th_split_unsel";R:5;s:22:"1218:split_th_messages";R:5;s:20:"1218:split_th_select";R:5;s:23:"1218:report_report_post";R:5;s:21:"1218:quicklogin_login";R:5;s:24:"1218:quicklogin_password";R:5;s:27:"1218:quicklogin_use_cookies";R:5;s:25:"1218:quicklogin_login_btn";R:5;s:16:"1218:quick_reply";R:5;s:21:"1218:quick_reply_post";R:5;s:24:"1218:quick_reply_preview";R:5;s:27:"1218:post_notification_desc";R:5;s:25:"1218:post_all_ext_allowed";R:5;s:22:"1218:maximize_category";R:5;s:21:"1218:maximize_message";R:5;s:17:"1218:no_view_perm";R:5;s:24:"1218:report_empty_report";R:5;s:34:"1218:report_already_reported_title";R:5;s:32:"1218:report_already_reported_msg";R:5;s:31:"1218:register_err_toomanyimages";R:5;s:18:"1218:pmsg_next_msg";R:5;s:18:"1218:pmsg_prev_msg";R:5;s:29:"1218:post_proc_reveal_spoiler";R:5;s:20:"1218:register_jabber";R:5;s:19:"1218:register_skype";R:5;s:21:"1218:register_twitter";R:5;s:20:"1218:register_google";R:5;s:14:"1218:im_jabber";R:5;s:14:"1218:im_google";R:5;s:13:"1218:im_skype";R:5;s:15:"1218:im_twitter";R:5;s:18:"1218:forum_contact";R:5;s:15:"1218:forum_home";R:5;s:22:"1218:post_cur_attached";R:5;s:22:"1218:ignored_anon_post";R:5;s:22:"1218:ignored_user_post";R:5;s:24:"1218:smladd_close_window";R:5;s:22:"1218:post_list_smilies";R:5;s:14:"1218:p_visible";R:5;s:23:"1218:reported_in_thread";R:5;s:21:"1218:help_back_to_top";R:5;s:25:"1218:help_return_to_index";R:5;s:27:"1218:imsg_err_message_title";R:5;s:25:"1218:imsg_err_message_msg";R:5;s:14:"1218:poll_edit";R:5;s:31:"1218:register_err_not_valid_img";R:5;s:19:"1218:pmsg_recepient";R:5;s:29:"1218:register_err_taken_alias";R:5;s:19:"1218:register_alias";R:5;s:24:"1218:register_alias_desc";R:5;s:26:"1218:register_allow_pm_msg";R:5;s:31:"1218:register_allow_pm_msg_desc";R:5;s:26:"1218:postcheck_pm_disabled";R:5;s:18:"1218:polllist_vote";R:5;s:26:"1218:polllist_view_results";R:5;s:18:"1218:polllist_name";R:5;s:18:"1218:polllist_date";R:5;s:19:"1218:polllist_owner";R:5;s:19:"1218:polllist_votes";R:5;s:20:"1218:polllist_action";R:5;s:20:"1218:polllist_update";R:5;s:19:"1218:userinfo_polls";R:5;s:17:"1218:show_pollist";R:5;s:15:"1218:search_and";R:5;s:14:"1218:search_or";R:5;s:22:"1218:search_desc_order";R:5;s:21:"1218:search_asc_order";R:5;s:17:"1218:search_logic";R:5;s:19:"1218:search_sorting";R:5;s:18:"1218:search_attach";R:5;s:22:"1218:search_attach_all";R:5;s:23:"1218:search_attach_with";R:5;s:17:"1218:post_proceed";R:5;s:25:"1218:post_moderated_forum";R:5;s:29:"1218:post_moderated_forum_ttl";R:5;s:20:"1218:buddy_list_bday";R:5;s:22:"1218:email_warning_msg";R:5;s:21:"1218:register_show_im";R:5;s:26:"1218:register_show_im_desc";R:5;s:19:"1218:unread_message";R:5;s:17:"1218:read_message";R:5;s:17:"1218:threadt_more";R:5;s:25:"1218:threadt_disabled_ttl";R:5;s:26:"1218:threadt_disabled_desc";R:5;s:19:"1218:threadt_update";R:5;s:27:"1218:mmod_delete_cofirm_ttl";R:5;s:15:"1218:spell_alts";R:5;s:26:"1218:insert_uploaded_image";R:5;s:18:"1218:finduser_help";R:5;s:16:"1218:back_to_top";R:5;s:26:"1218:pm_err_disabled_title";R:5;s:24:"1218:pm_err_disabled_msg";R:5;s:20:"1218:err_mod_acc_ttl";R:5;s:20:"1218:err_mod_acc_msg";R:5;s:30:"1218:accounts_pending_approval";R:5;s:10:"1218:saved";R:5;s:28:"1218:register_err_time_limit";R:5;s:20:"1218:register_affero";R:5;s:14:"1218:im_affero";R:5;s:32:"1218:register_err_avatardimtobig";R:5;s:18:"1218:buddy_offline";R:5;s:17:"1218:buddy_online";R:5;s:19:"1218:sml_no_smilies";R:5;s:33:"1218:login_unapproved_account_ttl";R:5;s:33:"1218:login_unapproved_account_msg";R:5;s:27:"1218:remove_from_buddy_list";R:5;s:22:"1218:iemail_msg_author";R:5;s:23:"1218:iemail_msg_subject";R:5;s:20:"1218:iemail_msg_date";R:5;s:21:"1218:iemail_msg_reply";R:5;s:21:"1218:iemail_msg_quote";R:5;s:20:"1218:iemail_msg_view";R:5;s:19:"1218:threadt_sticky";R:5;s:21:"1218:threadt_announce";R:5;s:25:"1218:reported_no_messages";R:5;s:18:"1218:poll_no_polls";R:5;s:23:"1218:no_unread_messages";R:5;s:25:"1218:thread_mark_all_read";R:5;s:30:"1218:thread_mark_all_read_desc";R:5;s:24:"1218:private_no_messages";R:5;s:34:"1218:register_email_change_subject";R:5;s:30:"1218:register_email_change_msg";R:5;s:24:"1218:iemail_thread_unsub";R:5;s:23:"1218:iemail_forum_unsub";R:5;s:25:"1218:primary_group_prefix";R:5;s:20:"1218:group_resources";R:5;s:33:"1218:register_admin_newuser_title";R:5;s:31:"1218:register_admin_newuser_msg";R:5;s:30:"1218:post_mod_msg_notify_title";R:5;s:28:"1218:post_mod_msg_notify_msg";R:5;s:25:"1218:thread_printable_pdf";R:5;s:21:"1218:thread_syndicate";R:5;s:19:"1218:reg_conf_title";R:5;s:19:"1218:reg_conf_email";R:5;s:21:"1218:reg_conf_account";R:5;s:22:"1218:forum_banned_user";R:5;s:21:"1218:mnav_description";R:5;s:20:"1218:mnav_date_limit";R:5;s:21:"1218:mnav_forum_limit";R:5;s:20:"1218:mnav_all_forums";R:5;s:16:"1218:mnav_submit";R:5;s:18:"1218:mnav_no_range";R:5;s:22:"1218:mnav_invalid_unit";R:5;s:22:"1218:mnav_invalid_date";R:5;s:20:"1218:mnav_no_results";R:5;s:19:"1218:mnav_posted_by";R:5;s:14:"1218:mnav_more";R:5;s:16:"1218:mnav_minute";R:5;s:14:"1218:mnav_hour";R:5;s:13:"1218:mnav_day";R:5;s:14:"1218:mnav_week";R:5;s:15:"1218:mnav_month";R:5;s:15:"1218:mnav_title";R:5;s:16:"1218:mnav_update";R:5;s:22:"1218:pm_notify_subject";R:5;s:25:"1218:pm_notify_body_email";R:5;s:29:"1218:register_pm_notification";R:5;s:34:"1218:register_pm_notification_desc";R:5;s:28:"1218:findu_admin_opts_header";R:5;s:16:"1218:findu_unban";R:5;s:14:"1218:findu_ban";R:5;s:15:"1218:findu_edit";R:5;s:17:"1218:findu_delete";R:5;s:18:"1218:dmsg_reply_to";R:5;s:19:"1218:dmsg_reply_num";R:5;s:17:"1218:merge_topics";R:5;s:20:"1218:merge_topics_cp";R:5;s:21:"1218:merge_topics_tpl";R:5;s:16:"1218:merge_merge";R:5;s:15:"1218:merge_next";R:5;s:15:"1218:merge_prev";R:5;s:18:"1218:merge_another";R:5;s:13:"1218:split_cp";R:5;s:24:"1218:groups_perms_header";R:5;s:30:"1218:register_err_sig_too_long";R:5;s:23:"1218:register_sig_limit";R:5;s:25:"1218:adm_account_accepted";R:5;s:27:"1218:adm_account_accepted_s";R:5;s:25:"1218:adm_account_rejected";R:5;s:27:"1218:adm_account_rejected_s";R:5;s:14:"1218:thread_on";R:5;s:19:"1218:userinfo_buddy";R:5;s:24:"1218:register_email_addr";R:5;s:17:"1218:reset_suffix";R:5;s:23:"1218:usrinfo_last_visit";R:5;s:15:"1218:mnav_newer";R:5;s:15:"1218:mnav_older";R:5;s:20:"1218:ip_search_by_ip";R:5;s:21:"1218:ip_search_syntax";R:5;s:14:"1218:ip_search";R:5;s:21:"1218:ip_analyze_usage";R:5;s:27:"1218:ip_analyze_usage_descr";R:5;s:19:"1218:ip_users_using";R:5;s:15:"1218:ip_all_ips";R:5;s:13:"1218:ip_title";R:5;s:23:"1218:userinfo_real_name";R:5;s:34:"1218:register_err_alias_notallowed";R:5;s:32:"1218:post_err_mod_forum_edit_ttl";R:5;s:32:"1218:post_err_mod_forum_edit_msg";R:5;s:13:"1218:dmsg_num";R:5;s:30:"1218:postcheck_session_invalid";R:5;s:30:"1218:delete_message_extra_desc";R:5;s:30:"1218:delete_message_extra_body";R:5;s:27:"1218:delete_msg_removed_ttl";R:5;s:23:"1218:delete_msg_pm_body";R:5;s:26:"1218:delete_msg_pm_subject";R:5;s:16:"1218:ip_no_whois";R:5;s:19:"1218:ip_whois_title";R:5;s:19:"1218:register_theme";R:5;s:15:"1218:pmsg_trash";R:5;s:14:"1218:uc_new_pm";R:5;s:17:"1218:uc_new_topic";R:5;s:21:"1218:uc_new_cat_forum";R:5;s:17:"1218:uc_cat_forum";R:5;s:18:"1218:uc_sub_topics";R:5;s:18:"1218:uc_page_title";R:5;s:19:"1218:search_options";R:5;s:23:"1218:search_user_filter";R:5;s:18:"1218:register_none";R:5;s:18:"1218:findu_no_conf";R:5;s:25:"1218:register_max_sig_len";R:5;s:20:"1218:register_turing";R:5;s:24:"1218:register_err_turing";R:5;s:15:"1218:modque_cat";R:5;s:17:"1218:modque_forum";R:5;s:26:"1218:idx_compact_forum_row";R:5;s:18:"1218:mmd_del_title";R:5;s:18:"1218:mmd_mov_title";R:5;s:24:"1218:mmd_move_threads_to";R:5;s:19:"1218:mmd_abort_move";R:5;s:13:"1218:mmd_move";R:5;s:17:"1218:pmsg_pdf_btn";R:5;s:23:"1218:search_results_hdr";R:5;s:19:"1218:thread_del_all";R:5;s:19:"1218:thread_mov_all";R:5;s:21:"1218:thread_merge_all";R:5;s:19:"1218:thread_loc_all";R:5;s:12:"1218:dmsg_ip";R:5;s:27:"1218:err_blockedaccnt_title";R:5;s:25:"1218:err_blockedaccnt_msg";R:5;s:23:"1218:merge_th_page_list";R:5;s:22:"1218:most_users_online";R:5;s:25:"1218:sub_unsub_all_forums";R:5;s:25:"1218:sub_unsub_all_topics";R:5;s:26:"1218:unbookmark_all_topics";R:5;s:19:"1218:tabs_own_posts";R:5;s:17:"1218:sml_emoticon";R:5;s:13:"1218:sml_code";R:5;s:18:"1218:mnav_sub_only";R:5;s:29:"1218:register_topics_per_page";R:5;s:19:"1218:login_min_time";R:5;s:23:"1218:post_not_logged_in";R:5;s:21:"1218:post_common_bold";R:5;s:24:"1218:post_common_italics";R:5;s:26:"1218:post_common_underline";R:5;s:27:"1218:post_common_align_left";R:5;s:29:"1218:post_common_align_center";R:5;s:28:"1218:post_common_align_right";R:5;s:21:"1218:post_common_link";R:5;s:27:"1218:post_common_link_popup";R:5;s:22:"1218:post_common_email";R:5;s:28:"1218:post_common_email_popup";R:5;s:22:"1218:post_common_image";R:5;s:28:"1218:post_common_image_popup";R:5;s:22:"1218:post_common_nlist";R:5;s:22:"1218:post_common_blist";R:5;s:22:"1218:post_common_quote";R:5;s:21:"1218:post_common_code";R:5;s:18:"1218:rating_delete";R:5;s:23:"1218:post_always_on_top";R:5;s:17:"1218:topic_rating";R:5;s:22:"1218:topic_list_rating";R:5;s:23:"1218:tabs_notifications";R:5;s:18:"1218:finduser_flag";R:5;s:15:"1218:post_descr";R:5;s:12:"1218:pmsg_on";R:5;s:23:"1218:pmsg_download_dump";R:5;s:18:"1218:move_messages";R:5;s:17:"1218:move_msg_btn";R:5;s:21:"1218:move_msg_th_expl";R:5;s:20:"1218:captcha_img_alt";R:5;s:21:"1218:captcha_img_help";R:5;s:15:"1218:powered-by";R:5;s:14:"1218:copyright";R:5;s:15:"1218:code_title";R:5;s:20:"1218:code_select_all";R:5;s:19:"1218:code_show_hide";R:5;s:17:"1218:social_sites";R:5;s:26:"1218:postcheck_min_len_err";R:5;s:22:"1218:postcheck_dup_err";R:5;s:18:"1218:btn_new_topic";R:5;s:15:"1218:btn_new_pm";R:5;s:19:"1218:btn_post_reply";R:5;s:18:"1218:btn_tree_view";R:5;s:18:"1218:btn_flat_view";R:5;s:14:"1218:btn_about";R:5;s:17:"1218:btn_small_pm";R:5;s:15:"1218:btn_delete";R:5;s:13:"1218:btn_edit";R:5;s:14:"1218:btn_reply";R:5;s:16:"1218:btn_forward";R:5;s:14:"1218:btn_quote";R:5;s:14:"1218:btn_email";R:5;s:19:"1218:btn_show_posts";R:5;s:17:"1218:btn_homepage";R:5;s:17:"1218:feed_no_data";R:5;s:13:"1218:feed_rdf";R:5;s:13:"1218:feed_rss";R:5;s:14:"1218:feed_atom";R:5;s:25:"1218:ip_whois_connect_err";R:5;s:26:"1218:custom_filed_required";R:5;s:10:"1218:pages";R:5;s:22:"1218:page_list_heading";R:5;s:20:"1218:page_list_total";R:5;s:16:"1218:page_update";R:5;s:21:"1218:pm_export_header";R:5;s:21:"1218:pm_export_footer";R:5;s:25:"1244:ui.main.cssdirection";s:9:"out-kiwix";s:17:"1244:ui.main.file";R:6;s:27:"1244:ui.main.file.accesskey";R:6;s:21:"1244:ui.main.openfile";R:6;s:31:"1244:ui.main.openfile.accesskey";R:6;s:26:"1244:ui.main.browselibrary";R:6;s:36:"1244:ui.main.browselibrary.accesskey";R:6;s:21:"1244:ui.main.lastopen";R:6;s:21:"1244:ui.main.savefile";R:6;s:31:"1244:ui.main.savefile.accesskey";R:6;s:18:"1244:ui.main.print";R:6;s:28:"1244:ui.main.print.accesskey";R:6;s:21:"1244:ui.main.printpdf";R:6;s:31:"1244:ui.main.printpdf.accesskey";R:6;s:17:"1244:ui.main.quit";R:6;s:27:"1244:ui.main.quit.accesskey";R:6;s:17:"1244:ui.main.edit";R:6;s:27:"1244:ui.main.edit.accesskey";R:6;s:17:"1244:ui.main.find";R:6;s:27:"1244:ui.main.find.accesskey";R:6;s:22:"1244:ui.main.selectall";R:6;s:32:"1244:ui.main.selectall.accesskey";R:6;s:17:"1244:ui.main.copy";R:6;s:27:"1244:ui.main.copy.accesskey";R:6;s:17:"1244:ui.main.mute";R:6;s:20:"1244:ui.main.audible";R:6;s:28:"1244:ui.main.transliteration";R:6;s:38:"1244:ui.main.transliteration.accesskey";R:6;s:24:"1244:ui.main.preferences";R:6;s:34:"1244:ui.main.preferences.accesskey";R:6;s:20:"1244:ui.main.display";R:6;s:30:"1244:ui.main.display.accesskey";R:6;s:17:"1244:ui.main.zoom";R:6;s:27:"1244:ui.main.zoom.accesskey";R:6;s:19:"1244:ui.main.zoomin";R:6;s:29:"1244:ui.main.zoomin.accesskey";R:6;s:20:"1244:ui.main.zoomout";R:6;s:30:"1244:ui.main.zoomout.accesskey";R:6;s:21:"1244:ui.main.zoomorig";R:6;s:31:"1244:ui.main.zoomorig.accesskey";R:6;s:21:"1244:ui.main.language";R:6;s:31:"1244:ui.main.language.accesskey";R:6;s:17:"1244:ui.main.skin";R:6;s:27:"1244:ui.main.skin.accesskey";R:6;s:22:"1244:ui.main.statusbar";R:6;s:32:"1244:ui.main.statusbar.accesskey";R:6;s:23:"1244:ui.main.resultsbar";R:6;s:33:"1244:ui.main.resultsbar.accesskey";R:6;s:17:"1244:ui.main.tabs";R:6;s:27:"1244:ui.main.tabs.accesskey";R:6;s:23:"1244:ui.main.fullscreen";R:6;s:33:"1244:ui.main.fullscreen.accesskey";R:6;s:18:"1244:ui.main.tools";R:6;s:28:"1244:ui.main.tools.accesskey";R:6;s:26:"1244:ui.main.randomarticle";R:6;s:36:"1244:ui.main.randomarticle.accesskey";R:6;s:27:"1244:ui.main.checkintegrity";R:6;s:37:"1244:ui.main.checkintegrity.accesskey";R:6;s:25:"1244:ui.main.purgehistory";R:6;s:35:"1244:ui.main.purgehistory.accesskey";R:6;s:17:"1244:ui.main.help";R:6;s:27:"1244:ui.main.help.accesskey";R:6;s:21:"1244:ui.main.feedback";R:6;s:23:"1244:ui.main.reportabug";R:6;s:28:"1244:ui.main.requestafeature";R:6;s:18:"1244:ui.main.about";R:6;s:28:"1244:ui.main.about.accesskey";R:6;s:17:"1244:ui.main.back";R:6;s:20:"1244:ui.main.forward";R:6;s:17:"1244:ui.main.home";R:6;s:22:"1244:ui.main.searchbar";R:6;s:19:"1244:ui.main.search";R:6;s:23:"1244:ui.main.findintext";R:6;s:24:"1244:ui.main.nosearchbar";R:6;s:22:"1244:ui.main.bookmarks";R:6;s:26:"1244:ui.main.results.title";R:6;s:21:"1244:ui.main.bmklabel";R:6;s:23:"1244:ui.main.noteslabel";R:6;s:20:"1244:ui.main.loadbmk";R:6;s:19:"1244:ui.main.newbmk";R:6;s:17:"1244:ui.main.mark";R:6;s:19:"1244:ui.main.unmark";R:6;s:19:"1244:ui.main.reload";R:6;s:23:"1244:ui.main.defaultset";R:6;s:24:"1244:ui.main.saveimageas";R:6;s:29:"1244:ui.main.openlinkinnewtab";R:6;s:22:"1244:ui.main.searchfor";R:6;s:28:"1244:ui.main.copylinkaddress";R:6;s:18:"1244:ui.main.close";R:6;s:30:"1244:ui.main.library.mylibrary";R:6;s:32:"1244:ui.main.library.getnewfiles";R:6;s:35:"1244:ui.main.library.searchzimfiles";R:6;s:27:"1244:ui.main.library.sortby";R:6;s:33:"1244:ui.main.library.sortby.title";R:6;s:32:"1244:ui.main.library.sortby.size";R:6;s:32:"1244:ui.main.library.sortby.date";R:6;s:34:"1244:ui.main.library.sortby.author";R:6;s:37:"1244:ui.main.library.sortby.publisher";R:6;s:29:"1244:ui.main.library.filterby";R:6;s:38:"1244:ui.main.library.filterby.filesize";R:6;s:38:"1244:ui.main.library.filterby.language";R:6;s:42:"1244:ui.main.library.filterby.language.all";R:6;s:36:"1244:ui.main.library.filterby.author";R:6;s:40:"1244:ui.main.library.filterby.author.all";R:6;s:39:"1244:ui.main.library.filterby.publisher";R:6;s:43:"1244:ui.main.library.filterby.publisher.all";R:6;s:31:"1244:ui.preferences.preferences";R:6;s:24:"1244:ui.preferences.save";R:6;s:26:"1244:ui.preferences.cancel";R:6;s:36:"1244:ui.preferences.profiledirectory";R:6;s:26:"1244:ui.preferences.browse";R:6;s:24:"1244:ui.preferences.tabs";R:6;s:33:"1244:ui.messages.loadzimfileerror";R:6;s:37:"1244:ui.messages.alreadyindexingerror";R:6;s:31:"1244:ui.messages.noresultserror";R:6;s:33:"1244:ui.messages.loadarticleerror";R:6;s:32:"1244:ui.messages.noactivezimfile";R:6;s:36:"1244:ui.messages.indexzimfileconfirm";R:6;s:37:"1244:ui.messages.abortindexingconfirm";R:6;s:31:"1244:ui.messages.restartconfirm";R:6;s:30:"1244:ui.messages.endofindexing";R:6;s:37:"1244:ui.messages.removeprofileconfirm";R:6;s:35:"1244:ui.messages.dontdisplayanymore";R:6;s:38:"1244:ui.messages.changeskinneedrestart";R:6;s:24:"1244:ui.messages.confirm";R:6;s:19:"1244:ui.messages.no";R:6;s:20:"1244:ui.messages.yes";R:6;s:19:"1244:ui.messages.ok";R:6;s:23:"1244:ui.messages.cancel";R:6;s:22:"1244:ui.messages.error";R:6;s:28:"1244:ui.messages.information";R:6;s:25:"1244:ui.messages.indexing";R:6;s:34:"1244:ui.messages.selectbookmarkset";R:6;s:32:"1244:ui.messages.namebookmarkset";R:6;s:36:"1244:ui.messages.newcontentavailable";R:6;s:46:"1244:ui.messages.newcontentavailableinvitation";R:6;s:41:"1244:ui.messages.preparingcontentdownload";R:6;s:40:"1244:ui.messages.contentdownloadfinished";R:6;s:25:"1244:ui.messages.feedback";R:6;s:22:"1230:accounts-postedby";a:4:{i:0;s:18:"out-mifos-accounts";i:1;R:8;i:2;s:15:"out-mifos-0-all";i:3;R:9;}s:24:"1230:client-client.total";a:4:{i:0;s:16:"out-mifos-client";i:1;R:11;i:2;R:9;i:3;R:9;}s:23:"1230:cui-customer.notes";a:4:{i:0;s:13:"out-mifos-cui";i:1;R:13;i:2;R:9;i:3;R:9;}s:24:"1230:cui-customer.submit";a:4:{i:0;R:13;i:1;R:13;i:2;R:9;i:3;R:9;}s:30:"1230:group-group.externalidmsg";a:4:{i:0;s:15:"out-mifos-group";i:1;R:16;i:2;R:9;i:3;R:9;}s:18:"1230:group-group.s";a:4:{i:0;R:16;i:1;R:16;i:2;R:9;i:3;R:9;}s:22:"1230:loan-loan.account";a:4:{i:0;s:14:"out-mifos-loan";i:1;R:19;i:2;R:9;i:3;R:9;}s:24:"1230:loan-loan.repayloan";a:4:{i:0;R:19;i:1;R:19;i:2;R:9;i:3;R:9;}s:24:"1230:pd-product.ratetype";a:4:{i:0;s:12:"out-mifos-pd";i:1;R:22;i:2;R:9;i:3;R:9;}s:35:"1230:savings-savings.accountdetails";a:4:{i:0;s:17:"out-mifos-savings";i:1;R:24;i:2;R:9;i:3;R:9;}s:32:"1230:savings-savings.clicksubmit";a:4:{i:0;R:24;i:1;R:24;i:2;R:9;i:3;R:9;}s:51:"1212:c2df9b932637fe9d32a0f16da1c11873398f873d-index";s:11:"out-mwlibrl";s:52:"1212:922acd282cc0f3bb9e6dffb4c4b3c4fe33787051-source";R:26;s:53:"1212:de13bf1ab0b419f34cb1b3b43e094c84009a42db-license";R:26;s:58:"1212:8086adb5746e504bbe3902757baf1389e8c9f958-contributors";R:26;s:62:"1212:c6fd44c26d69d3f0bdc9fc330e6d3e374c7e1864-article_licenses";R:26;s:51:"1212:768e0c1c69573fb588f61f1308a015c11468e05f-title";R:26;s:54:"1212:348f58bb37475a0ba3af0146618edd3f56b7670f-subtitle";R:26;s:52:"1212:2ac3b2c1e8255d7e59c590a5c2a7b212fc7a61e0-editor";R:26;s:56:"1212:b6c547219461223b18ad062c2b008fbd3c6db732-created_on";R:26;s:54:"1212:f5cbdf6bfb51439be085b5c6b7460a7c91eabc3c-contents";R:26;s:54:"1212:7c422841b7e3951946583038790545c4ed38481b-articles";R:26;s:57:"1212:7353ebbd0ea80835e74115f7c8745c7ac6eee566-produced_by";R:26;s:64:"1212:23f4fa6b4b10346efecdf182e7db2ab66361596f-pdf_writer_version";R:26;s:59:"1212:02fe1b4ec74e6bf61a352860112c734bab31b356-mwlib_version";R:26;s:63:"1212:9730d4326a7b8a0d13c2be3b7fe29b80ad152bf6-table_of_contents";R:26;s:64:"1212:db62184ffb843335b1453da07008e2cd1f3ce4b5-skipping_articles!";R:26;s:76:"1212:8e008f7ef9ddd79c20e6e04b5b026561a2921e29-please_note_this_is_only_a_pre";R:26;s:76:"1212:8ce32d99eff94a00e843b2752f5fb7bc842de286-please_note_this_is_only_a_pre";R:26;s:56:"1212:5d20d0fee3b91643dd8d272ac33d01ca95179d82-references";R:26;s:54:"1212:f3f60044b06335eb6c4230e3c39f5e0218445878-appendix";R:26;s:76:"1212:7a52fe0d95011bad549a790093cb5ccacff3ab0b-the_following_sections_list_th";R:26;s:76:"1212:26875919e39c4fbe0fc97edcb83ac923e4f05efe-the_sources_listed_for_each_ar";R:26;s:76:"1212:7a4d831d36aff213376ccf66e5df4c80e0c9f778-the_sources_listed_for_each_im";R:26;s:76:"1212:596398b4ea013ec6ee221a7a4e8d204ee9006042-article_sources_and_contributo";R:26;s:76:"1212:30ddbe904d4b5884ec80afef5abf87f821eaeb80-image_sources,_licenses_and_co";R:26;s:51:"1212:50e19fda0d5b4b74a4a1a1d584e56578693a4ea4-image";R:26;s:61:"1212:afd53a06b2158d197fad6e9f04247fafa6727513-anonymous_edits";R:26;s:52:"1212:1f20e66b17a6eb7c2baf1ab68337d91eaf6f4f80-figure";R:26;s:54:"1212:2d8243a2c0e464492c9d563c4f92c56ae3421bcc-see_also";R:26;s:76:"1212:5b2f462ed3eebb86d222fa517c31cd4c78209843-pdf_generated_using_the_open_s";R:26;s:74:"1212:1fb0d5d743eab271ab38d50ef25beb91777c58e8-mwlib.ext_version_(version)s";R:26;s:76:"1212:29e6a20aa1fcd2b6f5463bb7136de4a033bc31fe-mwlib_version_(mwlibversion)s,";R:26;s:52:"1212:6da13addb000b67d42a6d66391713819e634149f-source";R:26;s:58:"1212:a60a223c98b2c36522f0b7f89f57ae14e144678a-contributors";R:26;s:53:"1212:50d8b4a941c26b89482c94ab324b5a274f9ced66-unknown";R:26;s:53:"1212:3229609e15436ec51bcf00818a69a84dbc58a0c2-license";R:26;s:74:"1212:9796f10eab3b22287b619a0d6e55fb7a94ce8102-strong_warning_article_could";R:26;s:13:"1206:text_dir";s:13:"out-wikiblame";s:30:"1206:messages\x5b'january'\x5d";R:27;s:31:"1206:messages\x5b'february'\x5d";R:27;s:28:"1206:messages\x5b'march'\x5d";R:27;s:28:"1206:messages\x5b'april'\x5d";R:27;s:26:"1206:messages\x5b'may'\x5d";R:27;s:27:"1206:messages\x5b'june'\x5d";R:27;s:27:"1206:messages\x5b'july'\x5d";R:27;s:29:"1206:messages\x5b'august'\x5d";R:27;s:32:"1206:messages\x5b'september'\x5d";R:27;s:30:"1206:messages\x5b'october'\x5d";R:27;s:31:"1206:messages\x5b'november'\x5d";R:27;s:31:"1206:messages\x5b'december'\x5d";R:27;s:30:"1206:messages\x5b'ui_lang'\x5d";R:27;s:27:"1206:messages\x5b'lang'\x5d";R:27;s:35:"1206:messages\x5b'lang_example'\x5d";R:27;s:30:"1206:messages\x5b'project'\x5d";R:27;s:38:"1206:messages\x5b'project_example'\x5d";R:27;s:30:"1206:messages\x5b'article'\x5d";R:27;s:29:"1206:messages\x5b'needle'\x5d";R:27;s:35:"1206:messages\x5b'skipversions'\x5d";R:27;s:34:"1206:messages\x5b'ignorefirst'\x5d";R:27;s:28:"1206:messages\x5b'limit'\x5d";R:27;s:33:"1206:messages\x5b'start_date'\x5d";R:27;s:34:"1206:messages\x5b'date_format'\x5d";R:27;s:28:"1206:messages\x5b'order'\x5d";R:27;s:35:"1206:messages\x5b'newest_first'\x5d";R:27;s:35:"1206:messages\x5b'oldest_first'\x5d";R:27;s:44:"1206:messages\x5b'binary_search_inverse'\x5d";R:27;s:36:"1206:messages\x5b'search_method'\x5d";R:27;s:29:"1206:messages\x5b'binary'\x5d";R:27;s:35:"1206:messages\x5b'binary_in_wp'\x5d";R:27;s:29:"1206:messages\x5b'linear'\x5d";R:27;s:35:"1206:messages\x5b'interpolated'\x5d";R:27;s:36:"1206:messages\x5b'ignore_minors'\x5d";R:27;s:37:"1206:messages\x5b'force_wikitags'\x5d";R:27;s:28:"1206:messages\x5b'start'\x5d";R:27;s:28:"1206:messages\x5b'reset'\x5d";R:27;s:29:"1206:messages\x5b'manual'\x5d";R:27;s:34:"1206:messages\x5b'manual_link'\x5d";R:27;s:30:"1206:messages\x5b'contact'\x5d";R:27;s:35:"1206:messages\x5b'contact_link'\x5d";R:27;s:40:"1206:messages\x5b'get_less_versions'\x5d";R:27;s:34:"1206:messages\x5b'wrong_skips'\x5d";R:27;s:46:"1206:messages\x5b'search_in_progress_text'\x5d";R:27;s:50:"1206:messages\x5b'search_in_progress_wikitags'\x5d";R:27;s:37:"1206:messages\x5b'no_differences'\x5d";R:27;s:36:"1206:messages\x5b'first_version'\x5d";R:27;s:44:"1206:messages\x5b'first_version_present'\x5d";R:27;s:49:"1206:messages\x5b'earlier_versions_available'\x5d";R:27;s:37:"1206:messages\x5b'execution_time'\x5d";R:27;s:37:"1206:messages\x5b'versions_found'\x5d";R:27;s:34:"1206:messages\x5b'please_wait'\x5d";R:27;s:34:"1206:messages\x5b'binary_test'\x5d";R:27;s:31:"1206:messages\x5b'dead_end'\x5d";R:27;s:32:"1206:messages\x5b'once_more'\x5d";R:27;s:36:"1206:messages\x5b'binary_enough'\x5d";R:27;s:38:"1206:messages\x5b'insertion_found'\x5d";R:27;s:37:"1206:messages\x5b'deletion_found'\x5d";R:27;s:39:"1206:messages\x5b'help_translating'\x5d";R:27;s:33:"1206:messages\x5b'start_here'\x5d";R:27;s:40:"1206:messages\x5b'too_much_versions'\x5d";R:27;s:39:"1206:messages\x5b'not_found_at_all'\x5d";R:27;s:23:"1206:mobileapp-sitename";s:20:"out-wikipedia-mobile";s:30:"1206:mobileapp-spinner-loading";R:28;s:33:"1206:mobileapp-spinner-retrieving";R:28;s:36:"1206:mobileapp-saved-pages-clear-all";R:28;s:32:"1206:mobileapp-saved-pages-close";R:28;s:38:"1206:mobileapp-saved-pages-max-warning";R:28;s:25:"1206:mobileapp-page-saved";R:28;s:33:"1206:mobileapp-page-already-saved";R:28;s:39:"1206:mobileapp-saved-page-remove-prompt";R:28;s:39:"1206:mobileapp-clear-all-history-prompt";R:28;s:43:"1206:mobileapp-clear-all-saved-pages-prompt";R:28;s:33:"1206:mobileapp-saved-page-removed";R:28;s:32:"1206:mobileapp-saved-pages-title";R:28;s:24:"1206:mobileapp-menu-home";R:28;s:28:"1206:mobileapp-menu-language";R:28;s:28:"1206:mobileapp-menu-savepage";R:28;s:30:"1206:mobileapp-menu-savedpages";R:28;s:27:"1206:mobileapp-menu-history";R:28;s:24:"1206:mobileapp-menu-back";R:28;s:27:"1206:mobileapp-menu-forward";R:28;s:26:"1206:mobileapp-menu-nearby";R:28;s:28:"1206:mobileapp-menu-settings";R:28;s:30:"1206:mobileapp-menu-selecttext";R:28;s:29:"1206:mobileapp-menu-sharepage";R:28;s:25:"1206:mobileapp-menu-about";R:28;s:26:"1206:mobileapp-menu-cancel";R:28;s:26:"1206:mobileapp-menu-output";R:28;s:27:"1206:mobileapp-menu-sources";R:28;s:33:"1206:mobileapp-menu-share-twitter";R:28;s:28:"1206:mobileapp-menu-share-fb";R:28;s:29:"1206:mobileapp-menu-share-ril";R:28;s:35:"1206:mobileapp-menu-ios-open-safari";R:28;s:29:"1206:mobileapp-settings-close";R:28;s:29:"1206:mobileapp-settings-title";R:28;s:41:"1206:mobileapp-settings-app-version-label";R:28;s:45:"1206:mobileapp-settings-android-version-label";R:28;s:46:"1206:mobileapp-settings-phonegap-version-label";R:28;s:38:"1206:mobileapp-settings-language-label";R:28;s:37:"1206:mobileapp-settings-language-desc";R:28;s:39:"1206:mobileapp-settings-font-size-label";R:28;s:38:"1206:mobileapp-settings-font-size-desc";R:28;s:41:"1206:mobileapp-settings-font-size-smaller";R:28;s:40:"1206:mobileapp-settings-font-size-normal";R:28;s:40:"1206:mobileapp-settings-font-size-larger";R:28;s:30:"1206:mobileapp-langlinks-close";R:28;s:30:"1206:mobileapp-langlinks-title";R:28;s:34:"1206:mobileapp-error-not-available";R:28;s:28:"1206:mobileapp-error-offline";R:28;s:35:"1206:mobileapp-error-offline-prompt";R:28;s:36:"1206:mobileapp-error-saved-or-online";R:28;s:30:"1206:mobileapp-error-not-found";R:28;s:37:"1206:mobileapp-error-not-found-reason";R:28;s:33:"1206:mobileapp-error-search-again";R:28;s:31:"1206:mobileapp-about-page-label";R:28;s:32:"1206:mobileapp-history-clear-all";R:28;s:28:"1206:mobileapp-history-close";R:28;s:28:"1206:mobileapp-history-title";R:28;s:29:"1206:mobileapp-expand-section";R:28;s:31:"1206:mobileapp-collapse-section";R:28;s:26:"1206:mobileapp-about-close";R:28;s:31:"1206:mobileapp-about-page-title";R:28;s:28:"1206:mobileapp-about-version";R:28;s:30:"1206:mobileapp-about-copyright";R:28;s:28:"1206:mobileapp-about-license";R:28;s:33:"1206:mobileapp-about-contributors";R:28;s:28:"1206:mobileapp-about-credits";R:28;s:27:"1206:mobileapp-nearby-close";R:28;s:27:"1206:mobileapp-nearby-title";R:28;s:30:"1206:mobileapp-app-description";R:28;s:48:"1206:mobileapp-search-results-did-you-mean-label";R:28;s:40:"1206:mobileapp-search-results-no-results";R:28;s:35:"1206:mobileapp-search-results-close";R:28;s:28:"1206:mobileapp-search-button";R:28;s:33:"1206:mobileapp-search-placeholder";R:28;s:33:"1206:mobileapp-do-fulltext-search";R:28;s:33:"1206:mobileapp-share-open-browser";R:28;s:35:"1206:mobileapp-attribution-mapquest";R:28;s:30:"1206:mobileapp-attribution-osm";R:28;s:36:"1206:mobileapp-twitter-not-available";R:28;s:14:"1224:wiki_name";s:14:"out-wikireader";s:20:"1224:appro:wiki_name";R:29;s:20:"1224:books:wiki_name";R:29;s:19:"1224:dict:wiki_name";R:29;s:20:"1224:guten:wiki_name";R:29;s:18:"1224:how:wiki_name";R:29;s:20:"1224:pedia:wiki_name";R:29;s:20:"1224:quote:wiki_name";R:29;s:20:"1224:starw:wiki_name";R:29;s:19:"1224:trav:wiki_name";R:29;s:17:"1224:license_text";R:29;s:23:"1224:appro:license_text";R:29;s:22:"1224:dict:license_text";R:29;s:23:"1224:guten:license_text";R:29;s:21:"1224:how:license_text";R:29;s:23:"1224:quote:license_text";R:29;s:22:"1224:trav:license_text";R:29;s:16:"1224:type_a_word";R:29;s:22:"1224:guten:type_a_word";R:29;s:15:"1224:no_results";R:29;s:14:"1224:searching";R:29;s:16:"1224:select_wiki";R:29;s:18:"1224:history_title";R:29;s:15:"1224:no_history";R:29;s:16:"1224:please_wait";R:29;s:18:"1224:clear_history";R:29;s:8:"1224:yes";R:29;s:7:"1224:no";R:29;s:15:"1224:protection";R:29;s:21:"1224:guten:protection";R:29;s:15:"1224:restricted";R:29;s:17:"1224:set_password";R:29;s:7:"1224:ok";R:29;s:15:"1224:set_filter";R:29;s:19:"1224:keep_filter_on";R:29;s:20:"1224:keep_filter_off";R:29;s:19:"1224:filter_options";R:29;s:19:"1224:turn_filter_on";R:29;s:20:"1224:turn_filter_off";R:29;s:20:"1224:change_password";R:29;s:22:"1224:re_enter_password";R:29;s:26:"1224:re_enter_new_password";R:29;s:24:"1224:passwords_not_match";R:29;s:23:"1224:enter_old_password";R:29;s:19:"1224:enter_password";R:29;s:14:"1224:try_again";R:29;s:23:"1224:enter_new_password";R:29;s:22:"1224:parental_controls";R:29;s:6:"1224:r";R:29;s:72:"1198:user:markahershberger/blog-rtl-developers-wanted/page_display_title";s:53:"page-User:MarkAHershberger/blog-RTL-Developers-wanted";s:63:"1198:user:markahershberger/blog-rtl-developers-wanted/1-caption";R:30;s:60:"1198:user:markahershberger/blog-rtl-developers-wanted/2-para";R:30;s:60:"1198:user:markahershberger/blog-rtl-developers-wanted/3-para";R:30;s:60:"1198:user:markahershberger/blog-rtl-developers-wanted/4-para";R:30;s:60:"1198:user:markahershberger/blog-rtl-developers-wanted/5-para";R:30;s:60:"1198:user:markahershberger/blog-rtl-developers-wanted/6-para";R:30;s:63:"1198:user:markahershberger/blog-rtl-developers-wanted/7-bugdesc";R:30;s:63:"1198:user:markahershberger/blog-rtl-developers-wanted/8-bugdesc";R:30;s:63:"1198:user:markahershberger/blog-rtl-developers-wanted/9-bugdesc";R:30;s:64:"1198:user:markahershberger/blog-rtl-developers-wanted/12-seealso";R:30;s:64:"1198:user:markahershberger/blog-rtl-developers-wanted/10-bugdesc";R:30;s:61:"1198:user:markahershberger/blog-rtl-developers-wanted/11-para";R:30;s:70:"1198:user:raymond/wmde-wikipedia_for_world_heritage/page_display_title";s:51:"page-User:Raymond/WMDE-Wikipedia for World Heritage";s:53:"1198:user:raymond/wmde-wikipedia_for_world_heritage/1";R:31;s:66:"1198:user:santhosh.thottingal/translatetestpage/page_display_title";s:47:"page-User:Santhosh.thottingal/TranslateTestPage";s:49:"1198:user:santhosh.thottingal/translatetestpage/1";R:32;s:42:"1198:user:siebrand/test/page_display_title";s:23:"page-User:Siebrand/test";s:25:"1198:user:siebrand/test/1";R:33;s:17:"8:bw-sidebar-news";s:13:"wiki-betawiki";s:21:"8:bw-sidebar-projects";R:34;s:27:"8:bw-mainpage-support-title";R:34;s:26:"8:bw-sidebar-documentation";R:34;s:24:"8:bw-sidebar-translators";R:34;s:18:"8:bw-sidebar-intro";R:34;s:19:"8:bw-sidebar-portal";R:34;s:22:"8:bw-sidebar-languages";R:34;s:22:"8:bw-sidebar-translate";R:34;s:25:"8:bw-sidebar-changes-lang";R:34;s:29:"8:bw-sidebar-changes-lang-all";R:34;s:25:"8:bw-sidebar-changes-wiki";R:34;s:20:"8:bw-sidebar-inother";R:34;s:18:"8:group-translator";R:34;s:25:"8:group-translator-member";R:34;s:15:"8:group-offline";R:34;s:22:"8:group-offline-member";R:34;s:13:"8:group-staff";R:34;s:20:"8:group-staff-member";R:34;s:14:"8:nstab-portal";R:34;s:19:"8:nstab-translating";R:34;s:27:"8:bw-recentchanges-language";R:34;s:15:"8:bw-groupstats";R:34;s:20:"8:bw-portal-none-iso";R:34;s:28:"8:bw-portal-none-translators";R:34;s:20:"8:bw-portal-language";R:34;s:18:"8:bw-portal-script";R:34;s:25:"8:bw-portal-script-plural";R:34;s:20:"8:bw-portal-variants";R:34;s:21:"8:bw-portal-wikimedia";R:34;s:21:"8:bw-portal-wikipedia";R:34;s:22:"8:bw-portal-wiktionary";R:34;s:21:"8:bw-portal-wikiquote";R:34;s:21:"8:bw-portal-wikibooks";R:34;s:22:"8:bw-portal-wikisource";R:34;s:20:"8:bw-portal-wikinews";R:34;s:23:"8:bw-portal-wikiversity";R:34;s:21:"8:bw-portal-incubator";R:34;s:22:"8:bw-portal-statistics";R:34;s:23:"8:bw-portal-translators";R:34;s:17:"8:bw-portal-notes";R:34;s:18:"8:bw-user-homewiki";R:34;s:13:"8:bw-user-irc";R:34;s:15:"8:bw-user-skype";R:34;s:29:"8:bw-request-translator-intro";R:34;s:36:"8:bw-request-translator-prereq-title";R:34;s:28:"8:bw-request-translator-link";R:34;s:22:"8:bw-edittools-lead-in";R:34;s:22:"8:bw-edittools-tooltip";R:34;s:30:"8:gadget-section-functionality";R:34;s:23:"8:gadget-section-design";R:34;s:20:"8:gadget-hide-search";R:34;s:20:"8:gadget-bidibuttons";R:34;s:14:"8:gadget-prota";R:34;s:22:"8:gadget-dynamic-menus";R:34;s:22:"8:gadget-setuserrights";R:34;s:25:"8:gadget-google-translate";R:34;s:16:"8:gadget-symbols";R:34;s:19:"8:gadget-background";R:34;s:33:"8:gadget-translucent-category-box";R:34;s:32:"8:bw-desc-translatewiki-messages";R:34;s:24:"8:bw-add-yourself-to-map";R:34;s:29:"8:editnotice-0-main_page-text";R:34;s:19:"8:twn-mainpage-desc";s:17:"wiki-twn-mainpage";s:23:"8:twn-mainpage-startnow";R:35;s:21:"8:twn-mainpage-slogan";R:35;s:29:"8:twn-mainpage-keyword-online";R:35;s:26:"8:twn-mainpage-desc-online";R:35;s:26:"8:twn-mainpage-more-online";R:35;s:31:"8:twn-mainpage-keyword-projects";R:35;s:28:"8:twn-mainpage-desc-projects";R:35;s:28:"8:twn-mainpage-more-projects";R:35;s:32:"8:twn-mainpage-keyword-languages";R:35;s:29:"8:twn-mainpage-desc-languages";R:35;s:29:"8:twn-mainpage-more-languages";R:35;s:27:"8:twn-mainpage-keyword-tech";R:35;s:24:"8:twn-mainpage-desc-tech";R:35;s:24:"8:twn-mainpage-more-tech";R:35;s:27:"8:twn-mainpage-keyword-help";R:35;s:24:"8:twn-mainpage-desc-help";R:35;s:24:"8:twn-mainpage-more-help";R:35;s:27:"8:twn-mainpage-keyword-join";R:35;s:24:"8:twn-mainpage-desc-join";R:35;s:24:"8:twn-mainpage-more-join";R:35;s:28:"8:twn-mainpage-keyword-about";R:35;s:25:"8:twn-mainpage-desc-about";R:35;s:25:"8:twn-mainpage-more-about";R:35;s:26:"8:twn-mainpage-projectlist";R:35;s:23:"8:twn-project-mediawiki";R:35;s:21:"8:twn-project-freecol";R:35;s:22:"8:twn-project-mantisbt";R:35;s:23:"8:twn-project-statusnet";R:35;s:19:"8:twn-project-wikia";R:35;s:24:"8:twn-project-pediapress";R:35;s:17:"8:twn-project-osm";R:35;s:17:"8:twn-project-eol";R:35;s:22:"8:twn-project-fudforum";R:35;s:20:"8:twn-project-okawix";R:35;s:23:"8:twn-project-wikiblame";R:35;s:24:"8:twn-project-wikireader";R:35;s:21:"8:twn-project-shapado";R:35;s:19:"8:twn-project-kiwix";R:35;s:19:"8:twn-project-ihris";R:35;s:19:"8:twn-project-mifos";R:35;s:24:"8:twn-project-openimages";R:35;s:25:"8:twn-project-pywikipedia";R:35;s:24:"8:twn-project-toolserver";R:35;s:29:"8:twn-project-wikipediamobile";R:35;s:10:"8:mainpage";a:5:{i:0;R:2;i:1;s:15:"core-0-mostused";i:2;s:9:"core-1.17";i:3;s:9:"core-1.18";i:4;s:9:"core-1.19";}s:16:"8:red-link-title";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:17:"8:editsectionhint";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:18:"8:talkpagelinktext";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:11:"8:aboutsite";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:6:"8:talk";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:13:"8:editsection";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:8:"8:search";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:9:"8:january";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:10:"8:february";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:7:"8:march";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:7:"8:april";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:10:"8:may_long";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:6:"8:june";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:6:"8:july";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:8:"8:august";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:11:"8:september";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:9:"8:october";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:10:"8:november";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:10:"8:december";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:20:"8:search-result-size";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:12:"8:nstab-main";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:14:"8:contribslink";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:9:"8:privacy";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:13:"8:disclaimers";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:16:"8:tooltip-search";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:24:"8:tooltip-t-specialpages";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:25:"8:tooltip-search-fulltext";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:16:"8:tooltip-p-logo";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:25:"8:tooltip-n-recentchanges";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:16:"8:tooltip-n-help";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:12:"8:navigation";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:18:"8:tooltip-n-portal";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:22:"8:tooltip-n-randompage";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:18:"8:tooltip-pt-login";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:8:"8:nbytes";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:16:"8:bad_image_list";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:6:"8:help";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:15:"8:recentchanges";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:12:"8:randompage";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:8:"8:portal";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:12:"8:portal-url";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:10:"8:helppage";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:10:"8:editundo";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:17:"8:tooltip-ca-talk";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:25:"8:tooltip-t-whatlinkshere";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:25:"8:tooltip-n-currentevents";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:18:"8:tooltip-t-upload";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:32:"8:tooltip-n-mainpage-description";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:17:"8:tooltip-ca-edit";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:14:"8:searchbutton";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:11:"8:aboutpage";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:22:"8:mainpage-description";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:15:"8:currentevents";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:19:"8:currentevents-url";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:16:"8:disclaimerpage";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:18:"8:printableversion";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:23:"8:tooltip-ca-nstab-main";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:20:"8:tooltip-ca-history";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:31:"8:tooltip-t-recentchangeslinked";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:6:"8:edit";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:18:"8:vector-view-view";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:14:"8:specialpages";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:13:"8:privacypage";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:9:"8:tagline";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:7:"8:views";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:9:"8:toolbox";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:15:"8:retrievedfrom";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:15:"8:personaltools";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:18:"8:jumptonavigation";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:14:"8:jumptosearch";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:16:"8:site-atom-feed";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:8:"8:jumpto";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:21:"8:tooltip-t-permalink";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:11:"8:permalink";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:12:"8:namespaces";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:10:"8:variants";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:9:"8:actions";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:17:"8:tooltip-t-print";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:25:"8:nav-login-createaccount";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:16:"8:blanknamespace";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:15:"8:whatlinkshere";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:13:"8:shown-title";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:8:"8:upload";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:15:"8:nstab-special";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:15:"8:searchresults";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:21:"8:searchresults-title";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:5:"8:jan";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:5:"8:feb";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:5:"8:mar";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:5:"8:apr";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:5:"8:may";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:5:"8:jun";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:5:"8:jul";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:5:"8:aug";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:5:"8:sep";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:5:"8:oct";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:5:"8:nov";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:5:"8:dec";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:20:"8:tooltip-n-mainpage";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:15:"8:history_short";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:29:"8:recentchangeslinked-toolbox";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:21:"8:vector-view-history";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:16:"8:lastmodifiedat";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:17:"8:missing-article";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:16:"8:pagecategories";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:18:"8:vector-view-edit";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:16:"8:thumbnail-more";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:16:"8:search-section";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:8:"8:lineno";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:16:"8:otherlanguages";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:14:"8:rollbacklink";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:18:"8:tooltip-rollback";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:13:"8:nstab-image";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:6:"8:hist";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:14:"8:revisionasof";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:10:"8:newpages";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:14:"8:tooltip-undo";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:11:"8:blocklink";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:19:"8:hidden-categories";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:13:"8:january-gen";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:14:"8:february-gen";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:11:"8:march-gen";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:11:"8:april-gen";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:9:"8:may-gen";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:10:"8:june-gen";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:10:"8:july-gen";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:12:"8:august-gen";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:15:"8:september-gen";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:13:"8:october-gen";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:14:"8:november-gen";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:14:"8:december-gen";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:16:"8:viewsourcelink";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:9:"8:editold";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:20:"8:template-protected";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:26:"8:searchprofile-everything";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:32:"8:searchprofile-articles-tooltip";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:30:"8:searchprofile-images-tooltip";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:34:"8:searchprofile-everything-tooltip";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:22:"8:searchprofile-images";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:23:"8:searchprofile-project";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:32:"8:searchprofile-advanced-tooltip";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:24:"8:searchprofile-advanced";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:31:"8:searchprofile-project-tooltip";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:24:"8:searchprofile-articles";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:11:"8:searchall";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:5:"8:toc";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:6:"8:diff";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:14:"8:viewprevnext";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:23:"8:tooltip-ca-viewsource";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:15:"8:noarticletext";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:7:"8:nextn";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:7:"8:prevn";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:13:"8:prevn-title";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:22:"8:tooltip-pt-mycontris";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:5:"8:mon";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:5:"8:tue";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:5:"8:wed";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:5:"8:thu";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:5:"8:fri";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:5:"8:sat";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:5:"8:sun";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:19:"8:tooltip-pt-logout";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:13:"8:nextn-title";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:22:"8:tooltip-pt-watchlist";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:24:"8:tooltip-pt-preferences";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:19:"8:tooltip-pt-mytalk";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:21:"8:tooltip-pt-userpage";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:22:"8:showingresultsheader";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:16:"8:nstab-category";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:17:"8:search-redirect";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:24:"8:tooltip-ca-nstab-image";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:12:"8:imagelinks";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:10:"8:filehist";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:12:"8:revertmove";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:16:"8:revdel-restore";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:14:"8:undeletelink";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:24:"8:revdel-restore-visible";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:18:"8:change-blocklink";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:16:"8:nstab-template";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:13:"8:revertmerge";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:13:"8:unblocklink";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:24:"8:revdel-restore-deleted";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:16:"8:protect_change";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:18:"8:undeleteviewlink";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:16:"8:deletedarticle";a:4:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;}s:19:"8:tooltip-feed-atom";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:8:"8:create";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:20:"8:vector-view-create";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:18:"8:previousrevision";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:18:"8:tooltip-ca-watch";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:29:"8:recentchangeslinked-summary";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:16:"8:searchmenu-new";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:17:"8:tooltip-summary";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:20:"8:filehist-thumbtext";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:8:"8:export";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:41:"8:post-expand-template-inclusion-category";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:40:"8:post-expand-template-inclusion-warning";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:12:"8:viewsource";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:16:"8:allpagessubmit";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:6:"8:show";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:6:"8:hide";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:24:"8:vector-view-viewsource";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:17:"8:currentrev-asof";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:5:"8:faq";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:25:"8:searchmenu-new-nocreate";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:24:"8:sharedupload-desc-here";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:17:"8:tooltip-ca-move";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:7:"8:watch";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:11:"8:namespace";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:15:"8:mypreferences";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:12:"8:ipboptions";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:10:"8:editlink";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:15:"8:namespacesall";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:10:"8:metadata";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:12:"8:userlogout";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:8:"8:mytalk";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:13:"8:mywatchlist";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:11:"8:mycontris";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:27:"8:tooltip-ca-nstab-category";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:16:"8:redirectedfrom";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:19:"8:filehist-datetime";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:15:"8:filehist-user";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:18:"8:filehist-current";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:16:"8:filehist-thumb";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:21:"8:filehist-dimensions";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:18:"8:file-anchor-link";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:18:"8:filehist-comment";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:15:"8:filehist-help";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:16:"8:search-suggest";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:27:"8:tooltip-ca-nstab-template";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:12:"8:nstab-user";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:5:"8:cur";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:6:"8:last";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:16:"8:page-atom-feed";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:16:"8:file-info-size";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:23:"8:tooltip-ca-addsection";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:13:"8:savearticle";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:18:"8:search-nonefound";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:14:"8:tooltip-save";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:16:"8:alphaindexline";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:14:"8:linkstoimage";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:8:"8:cancel";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:10:"8:showdiff";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:13:"8:showpreview";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:14:"8:edithelppage";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:11:"8:minoredit";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:9:"8:sig_tip";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:10:"8:edithelp";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:15:"8:italic_sample";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:17:"8:tooltip-preview";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:15:"8:copyrightpage";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:17:"8:headline_sample";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:11:"8:watchthis";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:15:"8:nowiki_sample";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:12:"8:italic_tip";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:16:"8:extlink_sample";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:11:"8:newwindow";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:13:"8:extlink_tip";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:13:"8:bold_sample";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:11:"8:image_tip";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:8:"8:hr_tip";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:12:"8:nowiki_tip";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:10:"8:link_tip";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:14:"8:tooltip-diff";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:13:"8:link_sample";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:9:"8:summary";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:10:"8:bold_tip";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:14:"8:headline_tip";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:11:"8:media_tip";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:12:"8:tag-filter";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:28:"8:noarticletext-nopermission";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:19:"8:tooltip-search-go";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:15:"8:nstab-project";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:6:"8:move";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:16:"8:rcshowhidebots";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:16:"8:show-big-image";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:9:"8:history";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:17:"8:rcshowhideanons";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:15:"8:rcshowhideliu";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:17:"8:minoreditletter";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:8:"8:invert";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:24:"8:category-article-count";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:17:"8:rcshowhideminor";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:16:"8:rcshowhidemine";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:23:"8:category-subcat-count";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:9:"8:editing";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:14:"8:rev-delundel";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:12:"8:categories";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:9:"8:license";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:17:"8:anoneditwarning";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:15:"8:boteditletter";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:15:"8:newpageletter";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:27:"8:recentchanges-label-minor";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:29:"8:recentchanges-label-newpage";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:25:"8:recentchanges-label-bot";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:33:"8:recentchanges-label-unpatrolled";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:15:"8:metadata-help";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:9:"8:rclinks";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:22:"8:recentchanges-legend";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:12:"8:rclistfrom";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:18:"8:rc-enhanced-hide";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:27:"8:recentchangeslinked-title";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:21:"8:recentchangeslinked";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:20:"8:rc-enhanced-expand";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:10:"8:filedesc";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:24:"8:recentchangeslinked-to";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:26:"8:recentchangeslinked-page";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:23:"8:tooltip-ca-nstab-user";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:25:"8:tooltip-t-contributions";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:20:"8:tooltip-ca-unwatch";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:8:"8:monday";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:9:"8:tuesday";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:11:"8:wednesday";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:10:"8:thursday";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:8:"8:friday";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:10:"8:saturday";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:8:"8:sunday";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:10:"8:nmembers";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:26:"8:whatlinkshere-hideredirs";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:20:"8:vector-action-move";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:21:"8:whatlinkshere-title";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:20:"8:whatlinkshere-page";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:25:"8:whatlinkshere-hidetrans";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:25:"8:whatlinkshere-hidelinks";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:23:"8:whatlinkshere-filters";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:33:"8:tooltip-compareselectedversions";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:26:"8:vector-action-addsection";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:25:"8:compareselectedversions";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:17:"8:metadata-fields";a:4:{i:0;R:2;i:1;R:37;i:2;R:39;i:3;R:40;}s:14:"8:file-nohires";a:3:{i:0;R:2;i:1;R:37;i:2;R:40;}s:17:"8:category_header";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:22:"8:edit-externally-help";a:4:{i:0;R:2;i:1;R:37;i:2;R:39;i:3;R:40;}s:17:"8:edit-externally";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:16:"8:newarticletext";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:11:"8:userlogin";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:24:"8:template-semiprotected";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:11:"8:linkshere";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:20:"8:whatlinkshere-next";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:12:"8:isredirect";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:9:"8:isimage";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:15:"8:contributions";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:20:"8:whatlinkshere-prev";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:21:"8:whatlinkshere-links";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:12:"8:istemplate";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:15:"8:viewsourceold";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:15:"8:searcharticle";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:26:"8:tooltip-ca-nstab-project";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:9:"8:unwatch";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:24:"8:listingcontinuesabbrev";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:14:"8:badtitletext";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:6:"8:year";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:11:"8:monthsall";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:7:"8:month";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:7:"8:login";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:22:"8:history-show-deleted";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:17:"8:linksearch-line";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:12:"8:dellogpage";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:19:"8:tooltip-minoredit";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:15:"8:tooltip-watch";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:19:"8:searchmenu-exists";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:15:"8:subcategories";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:16:"8:actioncomplete";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:14:"8:actionfailed";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:5:"8:log";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:16:"8:nolinkstoimage";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:15:"8:history-title";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:10:"8:returnto";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:14:"8:viewpagelogs";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:30:"8:recentchangeslinked-noresult";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:24:"8:history-fieldset-title";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:12:"8:histlegend";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:17:"8:thumbnail_error";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:40:"8:post-expand-template-argument-category";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:39:"8:post-expand-template-argument-warning";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:16:"8:errorpagetitle";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:13:"8:booksources";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:14:"8:yourpassword";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:10:"8:yourname";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:20:"8:remembermypassword";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:13:"8:allarticles";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:9:"8:preview";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:17:"8:allmessagesname";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:18:"8:noindex-category";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:20:"8:allmessagesdefault";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:19:"8:tooltip-ca-delete";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:25:"8:newuserlog-create-entry";a:4:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;}s:11:"8:1movedto2";a:4:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;}s:20:"8:tooltip-ca-protect";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:11:"8:watchlist";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:10:"8:badtitle";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:9:"8:nologin";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:20:"8:loginlanguagelabel";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:13:"8:nologinlink";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:9:"8:newpage";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:23:"8:revdelete-log-message";a:4:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;}s:20:"8:revdelete-logentry";a:4:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;}s:15:"8:revdelete-hid";a:4:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;}s:15:"8:templatesused";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:19:"8:revdelete-content";a:4:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;}s:13:"8:movelogpage";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:16:"8:editingsection";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:18:"8:hiddencategories";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:15:"8:svg-long-desc";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:8:"8:delete";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:13:"8:loginprompt";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:16:"8:mailmypassword";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:12:"8:difference";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:15:"8:pager-older-n";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:14:"8:previousdiff";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:15:"8:pager-newer-n";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:11:"8:histfirst";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:10:"8:histlast";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:23:"8:category-media-header";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:16:"8:newuserlogpage";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:21:"8:category-file-count";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:21:"8:disambiguationspage";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:16:"8:protectlogpage";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:26:"8:tooltip-ca-nstab-special";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:10:"8:allpages";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:21:"8:moveddeleted-notice";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:32:"8:recentchanges-feed-description";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:26:"8:sp-contributions-uploads";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:21:"8:contributions-title";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:23:"8:sp-contributions-talk";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:12:"8:newarticle";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:23:"8:sp-contributions-logs";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:7:"8:uctop";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:13:"8:usercreated";a:3:{i:0;R:2;i:1;R:37;i:2;R:40;}s:27:"8:booksources-search-legend";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:27:"8:sp-contributions-blocklog";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:16:"8:booksources-go";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:28:"8:recreate-moveddeleted-warn";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:13:"8:contribsub2";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:20:"8:youhavenewmessages";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:15:"8:createaccount";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:26:"8:sp-contributions-toponly";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:21:"8:newmessagesdifflink";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:25:"8:sp-contributions-submit";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:17:"8:newmessageslink";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:15:"8:blocklogentry";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:20:"8:missingarticle-rev";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:26:"8:sp-contributions-newbies";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:25:"8:sp-contributions-search";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:27:"8:sp-contributions-username";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:13:"8:nolinkshere";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:12:"8:rcnotefrom";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:21:"8:tooltip-t-emailuser";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:9:"8:protect";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:26:"8:external_image_whitelist";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:13:"8:prefixindex";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:12:"8:statistics";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:14:"8:nextrevision";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:26:"8:whatlinkshere-hideimages";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:12:"8:diff-multi";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:21:"8:currentrevisionlink";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:14:"8:blocklogpage";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:15:"8:uploadedimage";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:15:"8:uploadlogpage";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:18:"8:protectedarticle";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:16:"8:category-empty";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:10:"8:nchanges";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:13:"8:previewnote";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:20:"8:watchlisttools-raw";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:17:"8:patrol-log-line";a:4:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;}s:21:"8:watchlisttools-view";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:12:"8:wlshowlast";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:17:"8:patrol-log-diff";a:4:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;}s:19:"8:watchlist-options";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:15:"8:watchlistfor2";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:21:"8:watchlisttools-edit";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:19:"8:watchlist-details";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:15:"8:watchlistall2";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:19:"8:recentchangestext";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:8:"8:rcnote";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:29:"8:search-result-category-size";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:15:"8:revision-info";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:25:"8:listgrouprights-members";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:15:"8:searchrelated";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:10:"8:nextdiff";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:17:"8:filehist-revert";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:11:"8:youremail";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:21:"8:userlogin-resetlink";a:4:{i:0;R:2;i:1;R:37;i:2;R:39;i:3;R:40;}s:12:"8:gotaccount";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:19:"8:yourpasswordagain";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:16:"8:rcshowhidepatr";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:23:"8:duplicate-defaultsort";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:16:"8:gotaccountlink";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:22:"8:vector-action-delete";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:29:"8:history-feed-item-nocomment";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:11:"8:emailuser";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:26:"8:block-log-flags-nocreate";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:18:"8:prefs-help-email";a:4:{i:0;R:2;i:1;R:37;i:2;R:39;i:3;R:40;}s:25:"8:prefs-help-email-others";a:4:{i:0;R:2;i:1;R:37;i:2;R:39;i:3;R:40;}s:14:"8:yourrealname";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:7:"8:about";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:34:"8:permissionserrorstext-withaction";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:13:"8:ipblocklist";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:23:"8:vector-action-protect";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:17:"8:1movedto2_redir";a:4:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;}s:13:"8:action-edit";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:16:"8:license-header";a:5:{i:0;R:2;i:1;R:37;i:2;R:38;i:3;R:39;i:4;R:40;}s:9:"8:sidebar";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:15:"8:tog-underline";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:13:"8:tog-justify";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:15:"8:tog-hideminor";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:19:"8:tog-hidepatrolled";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:27:"8:tog-newpageshidepatrolled";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:21:"8:tog-extendwatchlist";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:14:"8:tog-usenewrc";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:20:"8:tog-numberheadings";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:17:"8:tog-showtoolbar";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:20:"8:tog-editondblclick";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:17:"8:tog-editsection";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:29:"8:tog-editsectiononrightclick";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:13:"8:tog-showtoc";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:22:"8:tog-rememberpassword";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:20:"8:tog-watchcreations";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:18:"8:tog-watchdefault";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:16:"8:tog-watchmoves";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:19:"8:tog-watchdeletion";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:18:"8:tog-minordefault";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:18:"8:tog-previewontop";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:20:"8:tog-previewonfirst";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:13:"8:tog-nocache";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:26:"8:tog-enotifwatchlistpages";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:25:"8:tog-enotifusertalkpages";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:22:"8:tog-enotifminoredits";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:22:"8:tog-enotifrevealaddr";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:25:"8:tog-shownumberswatching";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:12:"8:tog-oldsig";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:14:"8:tog-fancysig";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:33:"8:mw-core-1.17-tog-externaleditor";R:38;s:31:"8:mw-core-1.17-tog-externaldiff";R:38;s:19:"8:tog-showjumplinks";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:20:"8:tog-uselivepreview";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:22:"8:tog-forceeditsummary";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:22:"8:tog-watchlisthideown";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:23:"8:tog-watchlisthidebots";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:24:"8:tog-watchlisthideminor";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:22:"8:tog-watchlisthideliu";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:24:"8:tog-watchlisthideanons";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:28:"8:tog-watchlisthidepatrolled";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:22:"8:tog-nolangconversion";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:18:"8:tog-ccmeonemails";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:14:"8:tog-diffonly";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:20:"8:tog-showhiddencats";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:19:"8:tog-noconvertlink";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:20:"8:tog-norollbackdiff";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:18:"8:underline-always";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:17:"8:underline-never";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:19:"8:underline-default";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:16:"8:editfont-style";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:18:"8:editfont-default";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:20:"8:editfont-monospace";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:20:"8:editfont-sansserif";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:16:"8:editfont-serif";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:20:"8:pagecategorieslink";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:26:"8:hidden-category-category";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:31:"8:category-subcat-count-limited";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:32:"8:category-article-count-limited";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:29:"8:category-file-count-limited";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:16:"8:index-category";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:12:"8:linkprefix";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:14:"8:mainpagetext";R:38;s:32:"8:mw-core-1.17-mainpagedocfooter";R:38;s:9:"8:article";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:15:"8:moredotdotdot";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:8:"8:mypage";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:10:"8:anontalk";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:5:"8:and";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:8:"8:qbfind";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:10:"8:qbbrowse";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:8:"8:qbedit";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:15:"8:qbpageoptions";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:12:"8:qbpageinfo";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:13:"8:qbmyoptions";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:16:"8:qbspecialpages";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:9:"8:faqpage";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:11:"8:sitetitle";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:14:"8:sitesubtitle";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:24:"8:vector-action-undelete";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:25:"8:vector-action-unprotect";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:32:"8:vector-simplesearch-preference";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:4:"8:go";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:15:"8:updatedmarker";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:12:"8:info_short";R:38;s:7:"8:print";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:14:"8:editthispage";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:18:"8:create-this-page";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:16:"8:deletethispage";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:16:"8:undelete_short";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:17:"8:protectthispage";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:11:"8:unprotect";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:19:"8:unprotectthispage";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:10:"8:talkpage";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:13:"8:specialpage";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:13:"8:postcomment";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:12:"8:addsection";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:13:"8:articlepage";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:10:"8:userpage";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:13:"8:projectpage";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:11:"8:imagepage";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:15:"8:mediawikipage";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:14:"8:templatepage";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:14:"8:viewhelppage";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:14:"8:categorypage";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:14:"8:viewtalkpage";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:17:"8:redirectpagesub";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:16:"8:talkpageheader";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:11:"8:viewcount";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:15:"8:protectedpage";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:17:"8:view-pool-error";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:14:"8:pool-timeout";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:16:"8:pool-queuefull";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:19:"8:pool-errorunknown";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:11:"8:copyright";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:12:"8:policy-url";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:11:"8:badaccess";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:18:"8:badaccess-group0";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:18:"8:badaccess-groups";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:17:"8:versionrequired";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:21:"8:versionrequiredtext";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:4:"8:ok";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:11:"8:pagetitle";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:25:"8:pagetitle-view-mainpage";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:25:"8:youhavenewmessagesmulti";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:18:"8:newtalkseparator";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:22:"8:editsection-brackets";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:9:"8:showtoc";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:9:"8:hidetoc";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:15:"8:thisisdeleted";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:13:"8:viewdeleted";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:13:"8:restorelink";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:11:"8:feedlinks";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:14:"8:feed-invalid";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:18:"8:feed-unavailable";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:15:"8:site-rss-feed";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:15:"8:page-rss-feed";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:11:"8:feed-atom";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:10:"8:feed-rss";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:12:"8:sitenotice";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:12:"8:anonnotice";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:30:"8:newsectionheaderdefaultlevel";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:13:"8:nstab-media";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:17:"8:nstab-mediawiki";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:12:"8:nstab-help";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:14:"8:nosuchaction";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:18:"8:nosuchactiontext";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:19:"8:nosuchspecialpage";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:19:"8:nospecialpagetext";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:7:"8:error";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:15:"8:databaseerror";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:13:"8:dberrortext";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:15:"8:dberrortextcl";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:17:"8:laggedslavemode";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:10:"8:readonly";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:17:"8:enterlockreason";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:14:"8:readonlytext";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:21:"8:missingarticle-diff";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:14:"8:readonly_lag";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:15:"8:internalerror";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:20:"8:internalerror_info";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:21:"8:fileappenderrorread";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:17:"8:fileappenderror";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:15:"8:filecopyerror";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:17:"8:filerenameerror";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:17:"8:filedeleteerror";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:22:"8:directorycreateerror";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:14:"8:filenotfound";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:17:"8:fileexistserror";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:12:"8:unexpected";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:11:"8:formerror";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:17:"8:badarticleerror";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:14:"8:cannotdelete";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:25:"8:mw-core-1.17-perfcached";R:38;s:27:"8:mw-core-1.17-perfcachedts";R:38;s:22:"8:querypage-no-updates";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:22:"8:wrong_wfquery_params";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:17:"8:actionthrottled";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:21:"8:actionthrottledtext";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:19:"8:protectedpagetext";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:16:"8:viewsourcetext";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:20:"8:protectedinterface";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:31:"8:mw-core-1.17-editinginterface";R:38;s:11:"8:sqlhidden";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:18:"8:cascadeprotected";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:20:"8:namespaceprotected";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:22:"8:customcssjsprotected";R:38;s:21:"8:ns-specialprotected";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:16:"8:titleprotected";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:18:"8:virus-badscanner";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:18:"8:virus-scanfailed";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:22:"8:virus-unknownscanner";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:12:"8:logouttext";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:17:"8:welcomecreation";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:25:"8:securelogin-stick-https";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:16:"8:yourdomainname";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:17:"8:externaldberror";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:19:"8:userloginnocreate";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:8:"8:logout";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:13:"8:notloggedin";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:19:"8:createaccountmail";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:21:"8:createaccountreason";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:11:"8:badretype";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:12:"8:userexists";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:12:"8:loginerror";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:20:"8:createaccounterror";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:14:"8:nocookiesnew";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:16:"8:nocookieslogin";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:8:"8:noname";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:19:"8:loginsuccesstitle";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:14:"8:loginsuccess";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:12:"8:nosuchuser";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:30:"8:mw-core-1.17-nosuchusershort";R:38;s:17:"8:nouserspecified";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:19:"8:login-userblocked";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:15:"8:wrongpassword";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:20:"8:wrongpasswordempty";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:18:"8:passwordtooshort";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:21:"8:password-name-match";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:26:"8:password-login-forbidden";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:23:"8:passwordremindertitle";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:22:"8:passwordremindertext";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:9:"8:noemail";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:15:"8:noemailcreate";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:14:"8:passwordsent";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:22:"8:blocked-mailpassword";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:14:"8:eauthentsent";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:24:"8:throttled-mailpassword";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:12:"8:loginstart";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:10:"8:loginend";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:13:"8:signupstart";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:11:"8:signupend";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:11:"8:mailerror";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:28:"8:acct_creation_throttle_hit";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:20:"8:emailauthenticated";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:23:"8:emailnotauthenticated";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:14:"8:noemailprefs";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:18:"8:emailconfirmlink";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:21:"8:invalidemailaddress";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:16:"8:accountcreated";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:20:"8:accountcreatedtext";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:21:"8:createaccount-title";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:20:"8:createaccount-text";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:19:"8:usernamehasherror";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:17:"8:login-throttled";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:20:"8:loginlanguagelinks";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:23:"8:suspicious-userlogout";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:17:"8:pear-mail-error";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:16:"8:php-mail-error";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:24:"8:php-mail-error-unknown";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:11:"8:resetpass";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:20:"8:resetpass_announce";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:16:"8:resetpass_text";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:18:"8:resetpass_header";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:13:"8:oldpassword";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:13:"8:newpassword";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:11:"8:retypenew";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:18:"8:resetpass_submit";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:19:"8:resetpass_success";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:21:"8:resetpass_forbidden";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:19:"8:resetpass-no-info";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:27:"8:resetpass-submit-loggedin";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:25:"8:resetpass-submit-cancel";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:25:"8:resetpass-wrong-oldpass";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:25:"8:resetpass-temp-password";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:13:"8:math_sample";a:3:{i:0;s:8:"ext-math";i:1;R:38;i:2;s:9:"ext-0-all";}s:10:"8:math_tip";a:3:{i:0;R:798;i:1;R:38;i:2;R:799;}s:14:"8:image_sample";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:14:"8:media_sample";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:9:"8:subject";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:17:"8:showlivepreview";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:20:"8:anonpreviewwarning";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:16:"8:missingsummary";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:20:"8:missingcommenttext";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:22:"8:missingcommentheader";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:17:"8:summary-preview";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:17:"8:subject-preview";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:14:"8:blockedtitle";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:13:"8:blockedtext";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:17:"8:autoblockedtext";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:17:"8:blockednoreason";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:19:"8:whitelistedittext";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:17:"8:confirmedittext";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:20:"8:nosuchsectiontitle";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:19:"8:nosuchsectiontext";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:15:"8:loginreqtitle";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:14:"8:loginreqlink";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:18:"8:loginreqpagetext";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:14:"8:accmailtitle";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:13:"8:accmailtext";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:20:"8:newarticletextanon";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:14:"8:talkpagetext";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:18:"8:anontalkpagetext";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:19:"8:noarticletextanon";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:40:"8:mw-core-1.17-userpage-userdoesnotexist";R:38;s:32:"8:userpage-userdoesnotexist-view";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:27:"8:blocked-notice-logextract";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:16:"8:clearyourcache";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:22:"8:usercssyoucanpreview";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:21:"8:userjsyoucanpreview";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:16:"8:usercsspreview";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:15:"8:userjspreview";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:16:"8:sitecsspreview";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:15:"8:sitejspreview";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:23:"8:userinvalidcssjstitle";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:9:"8:updated";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:6:"8:note";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:17:"8:previewconflict";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:22:"8:session_fail_preview";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:27:"8:session_fail_preview_html";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:23:"8:token_suffix_mismatch";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:16:"8:editingcomment";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:14:"8:editconflict";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:17:"8:explainconflict";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:10:"8:yourtext";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:15:"8:storedversion";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:19:"8:nonunicodebrowser";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:12:"8:editingold";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:10:"8:yourdiff";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:18:"8:copyrightwarning";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:19:"8:copyrightwarning2";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:22:"8:editpage-tos-summary";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:15:"8:longpage-hint";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:28:"8:mw-core-1.17-longpageerror";R:38;s:17:"8:readonlywarning";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:22:"8:protectedpagewarning";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:26:"8:semiprotectedpagewarning";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:25:"8:cascadeprotectedwarning";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:23:"8:titleprotectedwarning";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:22:"8:templatesusedpreview";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:22:"8:templatesusedsection";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:11:"8:edittools";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:15:"8:nocreatetitle";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:14:"8:nocreatetext";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:19:"8:nocreate-loggedin";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:31:"8:sectioneditnotsupported-title";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:30:"8:sectioneditnotsupported-text";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:19:"8:permissionserrors";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:23:"8:permissionserrorstext";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:13:"8:log-fulllog";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:19:"8:edit-hook-aborted";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:19:"8:edit-gone-missing";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:15:"8:edit-conflict";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:16:"8:edit-no-change";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:21:"8:edit-already-exists";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:20:"8:addsection-preload";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:22:"8:addsection-editintro";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:34:"8:expensive-parserfunction-warning";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:35:"8:expensive-parserfunction-category";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:30:"8:parser-template-loop-warning";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:41:"8:parser-template-recursion-depth-warning";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:34:"8:language-converter-depth-warning";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:14:"8:undo-success";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:14:"8:undo-failure";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:12:"8:undo-norev";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:14:"8:undo-summary";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:24:"8:cantcreateaccounttitle";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:24:"8:cantcreateaccount-text";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:11:"8:nohistory";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:12:"8:currentrev";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:23:"8:revision-info-current";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:14:"8:revision-nav";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:6:"8:next";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:12:"8:page_first";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:11:"8:page_last";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:19:"8:history_copyright";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:13:"8:historysize";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:14:"8:historyempty";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:20:"8:history-feed-title";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:26:"8:history-feed-description";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:20:"8:history-feed-empty";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:21:"8:rev-deleted-comment";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:18:"8:rev-deleted-user";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:19:"8:rev-deleted-event";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:27:"8:rev-deleted-user-contribs";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:29:"8:rev-deleted-text-permission";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:25:"8:rev-deleted-text-unhide";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:28:"8:rev-suppressed-text-unhide";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:23:"8:rev-deleted-text-view";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:26:"8:rev-suppressed-text-view";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:21:"8:rev-deleted-no-diff";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:24:"8:rev-suppressed-no-diff";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:25:"8:rev-deleted-unhide-diff";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:28:"8:rev-suppressed-unhide-diff";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:23:"8:rev-deleted-diff-view";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:26:"8:rev-suppressed-diff-view";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:17:"8:rev-showdeleted";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:16:"8:revisiondelete";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:25:"8:revdelete-nooldid-title";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:24:"8:revdelete-nooldid-text";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:27:"8:revdelete-nologtype-title";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:26:"8:revdelete-nologtype-text";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:25:"8:revdelete-nologid-title";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:24:"8:revdelete-nologid-text";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:19:"8:revdelete-no-file";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:29:"8:revdelete-show-file-confirm";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:28:"8:revdelete-show-file-submit";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:20:"8:revdelete-selected";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:20:"8:logdelete-selected";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:16:"8:revdelete-text";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:19:"8:revdelete-confirm";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:25:"8:revdelete-suppress-text";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:18:"8:revdelete-legend";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:21:"8:revdelete-hide-text";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:22:"8:revdelete-hide-image";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:21:"8:revdelete-hide-name";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:24:"8:revdelete-hide-comment";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:21:"8:revdelete-hide-user";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:27:"8:revdelete-hide-restricted";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:22:"8:revdelete-radio-same";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:21:"8:revdelete-radio-set";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:23:"8:revdelete-radio-unset";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:20:"8:revdelete-suppress";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:22:"8:revdelete-unsuppress";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:15:"8:revdelete-log";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:18:"8:revdelete-submit";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:20:"8:logdelete-logentry";a:3:{i:0;R:2;i:1;R:38;i:2;R:39;}s:19:"8:revdelete-success";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:19:"8:revdelete-failure";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:19:"8:logdelete-success";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:19:"8:logdelete-failure";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:10:"8:pagehist";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:13:"8:deletedhist";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:19:"8:revdelete-summary";a:3:{i:0;R:2;i:1;R:38;i:2;R:39;}s:17:"8:revdelete-uname";a:3:{i:0;R:2;i:1;R:38;i:2;R:39;}s:22:"8:revdelete-restricted";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:24:"8:revdelete-unrestricted";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:17:"8:revdelete-unhid";a:3:{i:0;R:2;i:1;R:38;i:2;R:39;}s:23:"8:logdelete-log-message";a:3:{i:0;R:2;i:1;R:38;i:2;R:39;}s:24:"8:revdelete-hide-current";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:26:"8:revdelete-show-no-access";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:28:"8:revdelete-modify-no-access";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:26:"8:revdelete-modify-missing";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:21:"8:revdelete-no-change";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:29:"8:revdelete-concurrent-change";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:27:"8:revdelete-only-restricted";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:27:"8:revdelete-reason-dropdown";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:23:"8:revdelete-otherreason";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:27:"8:revdelete-reasonotherlist";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:27:"8:revdelete-edit-reasonlist";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:20:"8:revdelete-offender";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:16:"8:suppressionlog";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:20:"8:suppressionlogtext";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:14:"8:mergehistory";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:21:"8:mergehistory-header";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:18:"8:mergehistory-box";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:19:"8:mergehistory-from";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:19:"8:mergehistory-into";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:19:"8:mergehistory-list";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:20:"8:mergehistory-merge";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:17:"8:mergehistory-go";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:21:"8:mergehistory-submit";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:20:"8:mergehistory-empty";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:22:"8:mergehistory-success";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:19:"8:mergehistory-fail";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:24:"8:mergehistory-no-source";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:29:"8:mergehistory-no-destination";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:29:"8:mergehistory-invalid-source";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:34:"8:mergehistory-invalid-destination";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:26:"8:mergehistory-autocomment";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:22:"8:mergehistory-comment";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:31:"8:mergehistory-same-destination";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:21:"8:mergehistory-reason";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:10:"8:mergelog";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:20:"8:pagemerge-logentry";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:18:"8:mergelogpagetext";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:22:"8:difference-multipage";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:26:"8:showhideselectedversions";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:22:"8:diff-multi-manyusers";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:16:"8:search-summary";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:18:"8:searchresulttext";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:16:"8:searchsubtitle";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:23:"8:searchsubtitleinvalid";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:16:"8:toomanymatches";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:14:"8:titlematches";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:16:"8:notitlematches";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:13:"8:textmatches";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:15:"8:notextmatches";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:19:"8:searchmenu-legend";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:16:"8:searchhelp-url";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:19:"8:searchmenu-prefix";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:17:"8:searchmenu-help";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:21:"8:search-result-score";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:26:"8:search-interwiki-caption";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:26:"8:search-interwiki-default";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:25:"8:search-interwiki-custom";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:23:"8:search-interwiki-more";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:26:"8:search-mwsuggest-enabled";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:27:"8:search-mwsuggest-disabled";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:23:"8:search-relatedarticle";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:19:"8:mwsuggest-disable";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:25:"8:searcheverything-enable";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:16:"8:showingresults";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:19:"8:showingresultsnum";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:11:"8:nonefound";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:13:"8:powersearch";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:20:"8:powersearch-legend";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:16:"8:powersearch-ns";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:19:"8:powersearch-redir";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:19:"8:powersearch-field";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:25:"8:powersearch-togglelabel";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:23:"8:powersearch-toggleall";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:24:"8:powersearch-togglenone";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:17:"8:search-external";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:16:"8:searchdisabled";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:27:"8:mw-core-1.17-googlesearch";R:38;s:17:"8:opensearch-desc";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:12:"8:qbsettings";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:17:"8:qbsettings-none";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:22:"8:qbsettings-fixedleft";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:23:"8:qbsettings-fixedright";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:25:"8:qbsettings-floatingleft";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:26:"8:qbsettings-floatingright";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:13:"8:preferences";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:21:"8:preferences-summary";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:13:"8:prefs-edits";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:14:"8:prefsnologin";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:18:"8:prefsnologintext";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:16:"8:changepassword";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:12:"8:prefs-skin";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:14:"8:skin-preview";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:12:"8:prefs-math";a:3:{i:0;R:798;i:1;R:38;i:2;R:799;}s:13:"8:datedefault";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:16:"8:prefs-datetime";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:16:"8:prefs-personal";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:10:"8:prefs-rc";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:17:"8:prefs-watchlist";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:22:"8:prefs-watchlist-days";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:39:"8:mw-core-1.17-prefs-watchlist-days-max";R:38;s:23:"8:prefs-watchlist-edits";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:27:"8:prefs-watchlist-edits-max";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:23:"8:prefs-watchlist-token";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:12:"8:prefs-misc";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:17:"8:prefs-resetpass";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:13:"8:prefs-email";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:17:"8:prefs-rendering";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:11:"8:saveprefs";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:12:"8:resetprefs";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:14:"8:restoreprefs";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:15:"8:prefs-editing";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:20:"8:prefs-edit-boxsize";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:6:"8:rows";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:9:"8:columns";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:19:"8:searchresultshead";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:16:"8:resultsperpage";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:14:"8:contextlines";R:38;s:14:"8:contextchars";R:38;s:16:"8:stub-threshold";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:25:"8:stub-threshold-disabled";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:19:"8:recentchangesdays";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:23:"8:recentchangesdays-max";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:20:"8:recentchangescount";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:31:"8:prefs-help-recentchangescount";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:28:"8:prefs-help-watchlist-token";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:12:"8:savedprefs";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:16:"8:timezonelegend";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:11:"8:localtime";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:39:"8:mw-core-1.17-timezoneuseserverdefault";R:38;s:19:"8:timezoneuseoffset";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:16:"8:timezoneoffset";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:12:"8:servertime";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:15:"8:guesstimezone";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:23:"8:timezoneregion-africa";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:24:"8:timezoneregion-america";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:27:"8:timezoneregion-antarctica";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:23:"8:timezoneregion-arctic";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:21:"8:timezoneregion-asia";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:25:"8:timezoneregion-atlantic";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:26:"8:timezoneregion-australia";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:23:"8:timezoneregion-europe";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:23:"8:timezoneregion-indian";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:24:"8:timezoneregion-pacific";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:12:"8:allowemail";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:21:"8:prefs-searchoptions";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:18:"8:prefs-namespaces";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:11:"8:defaultns";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:9:"8:default";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:13:"8:prefs-files";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:18:"8:prefs-custom-css";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:17:"8:prefs-custom-js";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:21:"8:prefs-common-css-js";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:19:"8:prefs-reset-intro";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:26:"8:prefs-emailconfirm-label";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:19:"8:prefs-textboxsize";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:10:"8:username";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:5:"8:uid";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:22:"8:prefs-memberingroups";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:27:"8:prefs-memberingroups-type";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:20:"8:prefs-registration";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:30:"8:prefs-registration-date-time";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:14:"8:yourlanguage";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:13:"8:yourvariant";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:10:"8:yournick";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:22:"8:prefs-help-signature";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:8:"8:badsig";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:14:"8:badsiglength";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:12:"8:yourgender";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:16:"8:gender-unknown";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:13:"8:gender-male";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:15:"8:gender-female";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:19:"8:prefs-help-gender";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:7:"8:email";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:21:"8:prefs-help-realname";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:31:"8:mw-core-1.17-prefs-help-email";R:38;s:27:"8:prefs-help-email-required";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:12:"8:prefs-info";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:12:"8:prefs-i18n";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:17:"8:prefs-signature";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:18:"8:prefs-dateformat";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:18:"8:prefs-timeoffset";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:23:"8:prefs-advancedediting";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:18:"8:prefs-advancedrc";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:25:"8:prefs-advancedrendering";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:29:"8:prefs-advancedsearchoptions";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:25:"8:prefs-advancedwatchlist";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:17:"8:prefs-displayrc";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:28:"8:prefs-displaysearchoptions";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:24:"8:prefs-displaywatchlist";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:13:"8:prefs-diffs";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:30:"8:email-address-validity-valid";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:32:"8:email-address-validity-invalid";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:12:"8:userrights";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:20:"8:userrights-summary";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:24:"8:userrights-lookup-user";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:26:"8:userrights-user-editname";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:15:"8:editusergroup";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:26:"8:mw-core-1.17-editinguser";R:38;s:26:"8:userrights-editusergroup";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:16:"8:saveusergroups";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:25:"8:userrights-groupsmember";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:30:"8:userrights-groupsmember-auto";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:24:"8:userrights-groups-help";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:19:"8:userrights-reason";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:25:"8:userrights-no-interwiki";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:23:"8:userrights-nodatabase";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:20:"8:userrights-nologin";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:23:"8:userrights-notallowed";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:27:"8:userrights-changeable-col";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:29:"8:userrights-unchangeable-col";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:32:"8:userrights-irreversible-marker";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:7:"8:group";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:12:"8:group-user";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:21:"8:group-autoconfirmed";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:11:"8:group-bot";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:13:"8:group-sysop";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:18:"8:group-bureaucrat";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:16:"8:group-suppress";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:11:"8:group-all";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:32:"8:mw-core-1.17-group-user-member";R:38;s:41:"8:mw-core-1.17-group-autoconfirmed-member";R:38;s:31:"8:mw-core-1.17-group-bot-member";R:38;s:33:"8:mw-core-1.17-group-sysop-member";R:38;s:38:"8:mw-core-1.17-group-bureaucrat-member";R:38;s:36:"8:mw-core-1.17-group-suppress-member";R:38;s:16:"8:grouppage-user";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:25:"8:grouppage-autoconfirmed";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:15:"8:grouppage-bot";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:17:"8:grouppage-sysop";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:22:"8:grouppage-bureaucrat";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:20:"8:grouppage-suppress";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:12:"8:right-read";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:12:"8:right-edit";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:18:"8:right-createpage";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:18:"8:right-createtalk";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:21:"8:right-createaccount";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:17:"8:right-minoredit";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:12:"8:right-move";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:21:"8:right-move-subpages";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:26:"8:right-move-rootuserpages";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:16:"8:right-movefile";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:24:"8:right-suppressredirect";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:14:"8:right-upload";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:16:"8:right-reupload";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:20:"8:right-reupload-own";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:23:"8:right-reupload-shared";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:21:"8:right-upload_by_url";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:13:"8:right-purge";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:21:"8:right-autoconfirmed";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:11:"8:right-bot";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:22:"8:right-nominornewtalk";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:21:"8:right-apihighlimits";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:16:"8:right-writeapi";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:14:"8:right-delete";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:17:"8:right-bigdelete";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:22:"8:right-deleterevision";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:22:"8:right-deletedhistory";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:19:"8:right-deletedtext";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:21:"8:right-browsearchive";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:16:"8:right-undelete";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:24:"8:right-suppressrevision";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:22:"8:right-suppressionlog";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:13:"8:right-block";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:18:"8:right-blockemail";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:16:"8:right-hideuser";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:22:"8:right-ipblock-exempt";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:23:"8:right-proxyunbannable";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:19:"8:right-unblockself";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:15:"8:right-protect";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:21:"8:right-editprotected";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:21:"8:right-editinterface";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:21:"8:right-editusercssjs";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:19:"8:right-editusercss";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:18:"8:right-edituserjs";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:16:"8:right-rollback";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:20:"8:right-markbotedits";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:19:"8:right-noratelimit";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:14:"8:right-import";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:20:"8:right-importupload";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:14:"8:right-patrol";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:18:"8:right-autopatrol";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:19:"8:right-patrolmarks";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:22:"8:right-unwatchedpages";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:20:"8:right-mergehistory";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:18:"8:right-userrights";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:28:"8:right-userrights-interwiki";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:17:"8:right-siteadmin";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:23:"8:right-reset-passwords";R:38;s:29:"8:right-override-export-depth";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:17:"8:right-sendemail";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:11:"8:rightslog";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:15:"8:rightslogtext";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:16:"8:rightslogentry";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:12:"8:rightsnone";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:13:"8:action-read";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:19:"8:action-createpage";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:19:"8:action-createtalk";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:22:"8:action-createaccount";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:18:"8:action-minoredit";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:13:"8:action-move";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:22:"8:action-move-subpages";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:27:"8:action-move-rootuserpages";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:17:"8:action-movefile";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:15:"8:action-upload";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:17:"8:action-reupload";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:24:"8:action-reupload-shared";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:22:"8:action-upload_by_url";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:17:"8:action-writeapi";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:15:"8:action-delete";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:23:"8:action-deleterevision";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:23:"8:action-deletedhistory";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:22:"8:action-browsearchive";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:17:"8:action-undelete";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:25:"8:action-suppressrevision";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:23:"8:action-suppressionlog";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:14:"8:action-block";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:16:"8:action-protect";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:15:"8:action-import";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:21:"8:action-importupload";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:15:"8:action-patrol";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:19:"8:action-autopatrol";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:23:"8:action-unwatchedpages";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:21:"8:action-mergehistory";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:19:"8:action-userrights";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:29:"8:action-userrights-interwiki";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:18:"8:action-siteadmin";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:19:"8:recentchanges-url";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:19:"8:unpatrolledletter";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:33:"8:number_of_watching_users_rcview";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:35:"8:number_of_watching_users_pageview";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:15:"8:rc_categories";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:19:"8:rc_categories_any";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:16:"8:rc-change-size";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:19:"8:newsectionsummary";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:26:"8:recentchangeslinked-feed";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:11:"8:uploadbtn";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:14:"8:reuploaddesc";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:17:"8:upload-tryagain";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:15:"8:uploadnologin";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:19:"8:uploadnologintext";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:26:"8:upload_directory_missing";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:28:"8:upload_directory_read_only";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:13:"8:uploaderror";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:16:"8:upload-summary";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:25:"8:upload-recreate-warning";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:12:"8:uploadtext";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:18:"8:upload-permitted";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:18:"8:upload-preferred";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:19:"8:upload-prohibited";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:14:"8:uploadfooter";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:11:"8:uploadlog";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:19:"8:uploadlogpagetext";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:10:"8:filename";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:19:"8:fileuploadsummary";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:21:"8:filereuploadsummary";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:12:"8:filestatus";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:12:"8:filesource";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:15:"8:uploadedfiles";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:15:"8:ignorewarning";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:16:"8:ignorewarnings";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:12:"8:minlength1";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:17:"8:illegalfilename";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:13:"8:badfilename";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:37:"8:mw-core-1.17-filetype-mime-mismatch";R:38;s:18:"8:filetype-badmime";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:22:"8:filetype-bad-ie-mime";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:24:"8:filetype-unwanted-type";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:35:"8:mw-core-1.17-filetype-banned-type";R:38;s:18:"8:filetype-missing";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:12:"8:empty-file";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:16:"8:file-too-large";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:19:"8:filename-tooshort";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:17:"8:filetype-banned";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:20:"8:verification-error";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:13:"8:hookaborted";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:18:"8:illegal-filename";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:11:"8:overwrite";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:15:"8:unknown-error";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:18:"8:tmp-create-error";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:17:"8:tmp-write-error";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:12:"8:large-file";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:17:"8:largefileserver";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:11:"8:emptyfile";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:12:"8:fileexists";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:16:"8:filepageexists";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:22:"8:fileexists-extension";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:26:"8:fileexists-thumbnail-yes";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:19:"8:file-thumbnail-no";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:22:"8:fileexists-forbidden";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:29:"8:fileexists-shared-forbidden";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:23:"8:file-exists-duplicate";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:24:"8:file-deleted-duplicate";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:15:"8:uploadwarning";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:20:"8:uploadwarning-text";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:10:"8:savefile";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:16:"8:overwroteimage";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:16:"8:uploaddisabled";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:20:"8:copyuploaddisabled";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:22:"8:uploadfromurl-queued";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:20:"8:uploaddisabledtext";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:24:"8:php-uploaddisabledtext";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:16:"8:uploadscripted";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:13:"8:uploadvirus";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:15:"8:upload-source";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:16:"8:sourcefilename";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:11:"8:sourceurl";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:14:"8:destfilename";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:20:"8:upload-maxfilesize";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:20:"8:upload-description";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:16:"8:upload-options";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:17:"8:watchthisupload";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:16:"8:filewasdeleted";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:19:"8:upload-wasdeleted";R:38;s:21:"8:filename-bad-prefix";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:27:"8:filename-prefix-blacklist";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:21:"8:upload-success-subj";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:20:"8:upload-success-msg";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:21:"8:upload-failure-subj";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:20:"8:upload-failure-msg";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:21:"8:upload-warning-subj";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:20:"8:upload-warning-msg";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:20:"8:upload-proto-error";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:25:"8:upload-proto-error-text";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:19:"8:upload-file-error";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:24:"8:upload-file-error-text";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:19:"8:upload-misc-error";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:24:"8:upload-misc-error-text";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:27:"8:upload-too-many-redirects";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:21:"8:upload-unknown-size";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:19:"8:upload-http-error";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:23:"8:img-auth-accessdenied";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:34:"8:mw-core-1.17-img-auth-nopathinfo";R:38;s:19:"8:img-auth-notindir";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:19:"8:img-auth-badtitle";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:21:"8:img-auth-nologinnwl";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:17:"8:img-auth-nofile";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:16:"8:img-auth-isdir";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:20:"8:img-auth-streaming";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:17:"8:img-auth-public";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:17:"8:img-auth-noread";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:27:"8:img-auth-bad-query-string";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:18:"8:http-invalid-url";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:21:"8:http-invalid-scheme";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:20:"8:http-request-error";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:17:"8:http-read-error";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:16:"8:http-timed-out";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:17:"8:http-curl-error";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:23:"8:http-host-unreachable";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:17:"8:http-bad-status";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:20:"8:upload-curl-error6";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:25:"8:upload-curl-error6-text";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:21:"8:upload-curl-error28";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:26:"8:upload-curl-error28-text";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:11:"8:nolicense";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:10:"8:licenses";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:19:"8:license-nopreview";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:19:"8:upload_source_url";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:20:"8:upload_source_file";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:19:"8:listfiles-summary";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:22:"8:listfiles_search_for";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:9:"8:imgfile";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:11:"8:listfiles";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:17:"8:listfiles_thumb";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:16:"8:listfiles_date";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:16:"8:listfiles_name";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:16:"8:listfiles_user";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:16:"8:listfiles_size";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:23:"8:listfiles_description";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:17:"8:listfiles_count";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:20:"8:filehist-deleteall";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:20:"8:filehist-deleteone";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:18:"8:filehist-nothumb";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:19:"8:filehist-filesize";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:18:"8:filehist-missing";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:19:"8:linkstoimage-more";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:18:"8:morelinkstoimage";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:17:"8:redirectstofile";R:38;s:18:"8:duplicatesoffile";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:14:"8:sharedupload";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:25:"8:sharedupload-desc-there";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:26:"8:shareddescriptionfollows";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:17:"8:filepage-nofile";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:22:"8:filepage-nofile-link";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:27:"8:uploadnewversion-linktext";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:18:"8:shared-repo-from";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:13:"8:shared-repo";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:35:"8:shared-repo-name-wikimediacommons";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:14:"8:filepage.css";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:12:"8:filerevert";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:19:"8:filerevert-legend";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:18:"8:filerevert-intro";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:20:"8:filerevert-comment";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:27:"8:filerevert-defaultcomment";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:19:"8:filerevert-submit";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:20:"8:filerevert-success";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:23:"8:filerevert-badversion";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:12:"8:filedelete";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:19:"8:filedelete-legend";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:18:"8:filedelete-intro";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:22:"8:filedelete-intro-old";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:20:"8:filedelete-comment";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:19:"8:filedelete-submit";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:20:"8:filedelete-success";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:24:"8:filedelete-success-old";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:19:"8:filedelete-nofile";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:23:"8:filedelete-nofile-old";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:24:"8:filedelete-otherreason";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:29:"8:filedelete-reason-otherlist";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:28:"8:filedelete-reason-dropdown";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:28:"8:filedelete-edit-reasonlist";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:24:"8:filedelete-maintenance";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:12:"8:mimesearch";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:20:"8:mimesearch-summary";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:10:"8:mimetype";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:10:"8:download";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:16:"8:unwatchedpages";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:24:"8:unwatchedpages-summary";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:15:"8:listredirects";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:23:"8:listredirects-summary";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:17:"8:unusedtemplates";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:25:"8:unusedtemplates-summary";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:21:"8:unusedtemplatestext";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:20:"8:unusedtemplateswlh";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:20:"8:randompage-nopages";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:16:"8:randompage-url";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:16:"8:randomredirect";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:24:"8:randomredirect-nopages";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:20:"8:statistics-summary";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:25:"8:statistics-header-pages";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:25:"8:statistics-header-edits";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:25:"8:statistics-header-views";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:25:"8:statistics-header-users";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:25:"8:statistics-header-hooks";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:21:"8:statistics-articles";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:18:"8:statistics-pages";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:23:"8:statistics-pages-desc";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:18:"8:statistics-files";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:18:"8:statistics-edits";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:26:"8:statistics-edits-average";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:24:"8:statistics-views-total";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:29:"8:statistics-views-total-desc";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:26:"8:statistics-views-peredit";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:18:"8:statistics-users";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:25:"8:statistics-users-active";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:30:"8:statistics-users-active-desc";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:24:"8:statistics-mostpopular";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:19:"8:statistics-footer";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:17:"8:disambiguations";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:25:"8:disambiguations-summary";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:22:"8:disambiguations-text";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:17:"8:doubleredirects";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:25:"8:doubleredirects-summary";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:21:"8:doubleredirectstext";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:28:"8:double-redirect-fixed-move";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:23:"8:double-redirect-fixer";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:17:"8:brokenredirects";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:25:"8:brokenredirects-summary";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:21:"8:brokenredirectstext";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:22:"8:brokenredirects-edit";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:24:"8:brokenredirects-delete";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:18:"8:withoutinterwiki";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:26:"8:withoutinterwiki-summary";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:25:"8:withoutinterwiki-legend";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:25:"8:withoutinterwiki-submit";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:17:"8:fewestrevisions";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:25:"8:fewestrevisions-summary";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:13:"8:ncategories";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:8:"8:nlinks";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:12:"8:nrevisions";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:8:"8:nviews";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:13:"8:nimagelinks";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:16:"8:ntransclusions";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:19:"8:specialpage-empty";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:13:"8:lonelypages";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:21:"8:lonelypages-summary";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:17:"8:lonelypagestext";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:20:"8:uncategorizedpages";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:28:"8:uncategorizedpages-summary";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:25:"8:uncategorizedcategories";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:33:"8:uncategorizedcategories-summary";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:21:"8:uncategorizedimages";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:29:"8:uncategorizedimages-summary";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:24:"8:uncategorizedtemplates";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:32:"8:uncategorizedtemplates-summary";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:18:"8:unusedcategories";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:14:"8:unusedimages";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:14:"8:popularpages";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:22:"8:popularpages-summary";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:18:"8:wantedcategories";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:26:"8:wantedcategories-summary";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:13:"8:wantedpages";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:21:"8:wantedpages-summary";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:22:"8:wantedpages-badtitle";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:13:"8:wantedfiles";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:21:"8:wantedfiles-summary";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:17:"8:wantedtemplates";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:25:"8:wantedtemplates-summary";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:12:"8:mostlinked";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:20:"8:mostlinked-summary";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:22:"8:mostlinkedcategories";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:30:"8:mostlinkedcategories-summary";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:21:"8:mostlinkedtemplates";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:29:"8:mostlinkedtemplates-summary";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:16:"8:mostcategories";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:24:"8:mostcategories-summary";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:12:"8:mostimages";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:20:"8:mostimages-summary";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:15:"8:mostrevisions";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:23:"8:mostrevisions-summary";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:21:"8:prefixindex-summary";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:12:"8:shortpages";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:20:"8:shortpages-summary";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:11:"8:longpages";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:19:"8:longpages-summary";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:14:"8:deadendpages";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:22:"8:deadendpages-summary";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:18:"8:deadendpagestext";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:16:"8:protectedpages";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:22:"8:protectedpages-indef";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:24:"8:protectedpages-summary";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:24:"8:protectedpages-cascade";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:20:"8:protectedpagestext";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:21:"8:protectedpagesempty";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:17:"8:protectedtitles";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:25:"8:protectedtitles-summary";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:21:"8:protectedtitlestext";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:22:"8:protectedtitlesempty";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:11:"8:listusers";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:19:"8:listusers-summary";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:21:"8:listusers-editsonly";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:24:"8:listusers-creationsort";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:15:"8:usereditcount";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:26:"8:mw-core-1.17-usercreated";R:38;s:18:"8:newpages-summary";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:19:"8:newpages-username";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:14:"8:ancientpages";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:22:"8:ancientpages-summary";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:14:"8:movethispage";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:18:"8:unusedimagestext";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:22:"8:unusedcategoriestext";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:15:"8:notargettitle";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:14:"8:notargettext";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:13:"8:nopagetitle";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:12:"8:nopagetext";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:10:"8:suppress";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:21:"8:booksources-summary";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:18:"8:booksources-isbn";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:18:"8:booksources-text";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:26:"8:booksources-invalid-isbn";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:21:"8:mw-core-1.17-rfcurl";R:38;s:24:"8:mw-core-1.17-pubmedurl";R:38;s:21:"8:specialloguserlabel";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:22:"8:speciallogtitlelabel";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:15:"8:all-logs-page";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:13:"8:alllogstext";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:10:"8:logempty";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:20:"8:log-title-wildcard";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:18:"8:allpages-summary";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:10:"8:nextpage";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:10:"8:prevpage";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:14:"8:allpagesfrom";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:12:"8:allpagesto";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:16:"8:allinnamespace";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:19:"8:allnotinnamespace";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:14:"8:allpagesprev";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:14:"8:allpagesnext";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:16:"8:allpagesprefix";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:18:"8:allpagesbadtitle";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:17:"8:allpages-bad-ns";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:20:"8:categories-summary";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:20:"8:categoriespagetext";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:16:"8:categoriesfrom";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:31:"8:special-categories-sort-count";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:29:"8:special-categories-sort-abc";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:22:"8:deletedcontributions";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:28:"8:deletedcontributions-title";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:34:"8:sp-deletedcontributions-contribs";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:12:"8:linksearch";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:16:"8:linksearch-pat";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:15:"8:linksearch-ns";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:15:"8:linksearch-ok";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:17:"8:linksearch-text";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:18:"8:linksearch-error";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:15:"8:listusersfrom";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:18:"8:listusers-submit";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:20:"8:listusers-noresult";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:19:"8:listusers-blocked";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:13:"8:activeusers";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:21:"8:activeusers-summary";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:19:"8:activeusers-intro";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:19:"8:activeusers-count";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:18:"8:activeusers-from";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:22:"8:activeusers-hidebots";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:24:"8:activeusers-hidesysops";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:22:"8:activeusers-noresult";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:20:"8:newuserlogpagetext";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:20:"8:newuserlog-byemail";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:26:"8:newuserlog-create2-entry";a:3:{i:0;R:2;i:1;R:38;i:2;R:39;}s:29:"8:newuserlog-autocreate-entry";a:3:{i:0;R:2;i:1;R:38;i:2;R:39;}s:17:"8:listgrouprights";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:25:"8:listgrouprights-summary";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:21:"8:listgrouprights-key";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:23:"8:listgrouprights-group";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:24:"8:listgrouprights-rights";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:26:"8:listgrouprights-helppage";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:31:"8:listgrouprights-right-display";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:31:"8:listgrouprights-right-revoked";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:26:"8:listgrouprights-addgroup";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:29:"8:listgrouprights-removegroup";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:30:"8:listgrouprights-addgroup-all";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:33:"8:listgrouprights-removegroup-all";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:31:"8:listgrouprights-addgroup-self";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:34:"8:listgrouprights-removegroup-self";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:35:"8:listgrouprights-addgroup-self-all";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:38:"8:listgrouprights-removegroup-self-all";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:13:"8:mailnologin";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:17:"8:mailnologintext";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:11:"8:emailpage";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:15:"8:emailpagetext";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:17:"8:usermailererror";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:30:"8:mw-core-1.17-defemailsubject";R:38;s:18:"8:usermaildisabled";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:22:"8:usermaildisabledtext";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:14:"8:noemailtitle";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:13:"8:noemailtext";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:18:"8:nowikiemailtitle";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:17:"8:nowikiemailtext";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:14:"8:email-legend";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:11:"8:emailfrom";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:9:"8:emailto";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:14:"8:emailsubject";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:14:"8:emailmessage";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:11:"8:emailsend";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:11:"8:emailccme";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:16:"8:emailccsubject";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:11:"8:emailsent";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:15:"8:emailsenttext";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:17:"8:emailuserfooter";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:21:"8:usermessage-summary";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:20:"8:usermessage-editor";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:22:"8:usermessage-template";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:13:"8:nowatchlist";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:19:"8:watchlistanontext";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:14:"8:watchnologin";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:18:"8:watchnologintext";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:12:"8:addedwatch";R:38;s:16:"8:addedwatchtext";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:14:"8:removedwatch";R:38;s:18:"8:removedwatchtext";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:15:"8:watchthispage";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:17:"8:unwatchthispage";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:14:"8:notanarticle";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:15:"8:notvisiblerev";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:15:"8:watchnochange";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:17:"8:wlheader-enotif";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:22:"8:wlheader-showupdated";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:20:"8:watchmethod-recent";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:18:"8:watchmethod-list";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:19:"8:watchlistcontains";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:17:"8:iteminvalidname";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:21:"8:mw-core-1.17-wlnote";R:38;s:10:"8:watching";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:12:"8:unwatching";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:15:"8:enotif_mailer";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:14:"8:enotif_reset";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:20:"8:enotif_newpagetext";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:30:"8:enotif_impersonal_salutation";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:9:"8:changed";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:9:"8:created";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:16:"8:enotif_subject";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:20:"8:enotif_lastvisited";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:17:"8:enotif_lastdiff";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:20:"8:enotif_anon_editor";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:26:"8:mw-core-1.17-enotif_body";R:38;s:12:"8:deletepage";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:9:"8:confirm";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:11:"8:excontent";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:17:"8:excontentauthor";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:15:"8:exbeforeblank";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:9:"8:exblank";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:16:"8:delete-confirm";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:15:"8:delete-legend";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:16:"8:historywarning";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:19:"8:confirmdeletetext";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:26:"8:mw-core-1.17-deletedtext";R:38;s:19:"8:suppressedarticle";a:3:{i:0;R:2;i:1;R:38;i:2;R:39;}s:16:"8:dellogpagetext";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:13:"8:deletionlog";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:10:"8:reverted";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:15:"8:deletecomment";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:19:"8:deleteotherreason";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:23:"8:deletereasonotherlist";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:23:"8:deletereason-dropdown";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:24:"8:delete-edit-reasonlist";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:15:"8:delete-toobig";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:23:"8:delete-warning-toobig";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:10:"8:rollback";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:16:"8:rollback_short";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:16:"8:rollbackfailed";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:14:"8:cantrollback";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:15:"8:alreadyrolled";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:13:"8:editcomment";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:12:"8:revertpage";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:19:"8:revertpage-nouser";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:18:"8:rollback-success";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:22:"8:sessionfailure-title";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:16:"8:sessionfailure";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:16:"8:protectlogtext";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:27:"8:modifiedarticleprotection";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:20:"8:unprotectedarticle";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:24:"8:movedarticleprotection";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:15:"8:protect-title";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:16:"8:prot_1movedto2";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:16:"8:protect-legend";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:16:"8:protectcomment";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:15:"8:protectexpiry";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:24:"8:protect_expiry_invalid";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:20:"8:protect_expiry_old";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:29:"8:protect-unchain-permissions";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:27:"8:mw-core-1.17-protect-text";R:38;s:24:"8:protect-locked-blocked";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:23:"8:protect-locked-dblock";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:23:"8:protect-locked-access";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:19:"8:protect-cascadeon";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:17:"8:protect-default";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:18:"8:protect-fallback";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:29:"8:protect-level-autoconfirmed";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:21:"8:protect-level-sysop";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:25:"8:protect-summary-cascade";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:18:"8:protect-expiring";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:27:"8:protect-expiry-indefinite";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:17:"8:protect-cascade";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:18:"8:protect-cantedit";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:19:"8:protect-othertime";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:22:"8:protect-othertime-op";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:25:"8:protect-existing-expiry";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:21:"8:protect-otherreason";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:24:"8:protect-otherreason-op";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:18:"8:protect-dropdown";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:25:"8:protect-edit-reasonlist";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:24:"8:protect-expiry-options";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:18:"8:restriction-type";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:19:"8:restriction-level";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:14:"8:minimum-size";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:14:"8:maximum-size";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:10:"8:pagesize";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:18:"8:restriction-edit";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:18:"8:restriction-move";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:20:"8:restriction-create";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:20:"8:restriction-upload";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:25:"8:restriction-level-sysop";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:33:"8:restriction-level-autoconfirmed";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:23:"8:restriction-level-all";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:10:"8:undelete";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:14:"8:undeletepage";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:19:"8:undeletepagetitle";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:17:"8:viewdeletedpage";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:18:"8:undeletepagetext";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:25:"8:undelete-fieldset-title";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:32:"8:mw-core-1.17-undeleteextrahelp";R:38;s:19:"8:undeleterevisions";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:17:"8:undeletehistory";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:16:"8:undeleterevdel";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:24:"8:undeletehistorynoadmin";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:19:"8:undelete-revision";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:26:"8:undeleterevision-missing";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:17:"8:undelete-nodiff";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:13:"8:undeletebtn";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:15:"8:undeletereset";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:16:"8:undeleteinvert";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:17:"8:undeletecomment";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:18:"8:undeletedarticle";a:3:{i:0;R:2;i:1;R:38;i:2;R:39;}s:20:"8:undeletedrevisions";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:26:"8:undeletedrevisions-files";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:16:"8:undeletedfiles";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:16:"8:cannotundelete";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:15:"8:undeletedpage";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:17:"8:undelete-header";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:21:"8:undelete-search-box";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:24:"8:undelete-search-prefix";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:24:"8:undelete-search-submit";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:21:"8:undelete-no-results";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:28:"8:undelete-filename-mismatch";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:24:"8:undelete-bad-store-key";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:24:"8:undelete-cleanup-error";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:30:"8:undelete-missing-filearchive";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:22:"8:undelete-error-short";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:21:"8:undelete-error-long";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:28:"8:undelete-show-file-confirm";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:27:"8:undelete-show-file-submit";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:12:"8:nocontribs";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:30:"8:sp-contributions-newbies-sub";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:32:"8:sp-contributions-newbies-title";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:26:"8:sp-contributions-deleted";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:29:"8:sp-contributions-userrights";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:33:"8:sp-contributions-blocked-notice";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:38:"8:sp-contributions-blocked-notice-anon";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:26:"8:sp-contributions-explain";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:25:"8:sp-contributions-footer";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:30:"8:sp-contributions-footer-anon";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:23:"8:whatlinkshere-summary";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:16:"8:nolinkshere-ns";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:9:"8:blockip";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:15:"8:blockip-title";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:16:"8:blockip-legend";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:13:"8:blockiptext";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:11:"8:ipaddress";R:38;s:20:"8:ipadressorusername";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:11:"8:ipbexpiry";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:11:"8:ipbreason";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:20:"8:ipbreasonotherlist";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:20:"8:ipbreason-dropdown";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:13:"8:ipbanononly";R:38;s:18:"8:ipbcreateaccount";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:13:"8:ipbemailban";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:20:"8:ipbenableautoblock";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:11:"8:ipbsubmit";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:10:"8:ipbother";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:16:"8:ipbotheroption";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:16:"8:ipbotherreason";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:13:"8:ipbhidename";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:14:"8:ipbwatchuser";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:18:"8:ipballowusertalk";R:38;s:18:"8:ipb-change-block";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:14:"8:badipaddress";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:19:"8:blockipsuccesssub";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:20:"8:blockipsuccesstext";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:19:"8:ipb-edit-dropdown";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:18:"8:ipb-unblock-addr";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:13:"8:ipb-unblock";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:15:"8:ipb-blocklist";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:24:"8:ipb-blocklist-contribs";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:11:"8:unblockip";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:15:"8:unblockiptext";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:11:"8:ipusubmit";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:11:"8:unblocked";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:14:"8:unblocked-id";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:20:"8:ipblocklist-legend";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:22:"8:ipblocklist-username";R:38;s:27:"8:ipblocklist-sh-userblocks";R:38;s:27:"8:ipblocklist-sh-tempblocks";R:38;s:30:"8:ipblocklist-sh-addressblocks";R:38;s:21:"8:ipblocklist-summary";R:38;s:20:"8:ipblocklist-submit";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:24:"8:ipblocklist-localblock";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:25:"8:ipblocklist-otherblocks";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:15:"8:blocklistline";R:38;s:15:"8:infiniteblock";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:15:"8:expiringblock";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:15:"8:anononlyblock";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:18:"8:noautoblockblock";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:20:"8:createaccountblock";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:12:"8:emailblock";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:22:"8:blocklist-nousertalk";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:19:"8:ipblocklist-empty";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:24:"8:ipblocklist-no-results";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:13:"8:autoblocker";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:18:"8:blocklog-showlog";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:26:"8:blocklog-showsuppresslog";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:18:"8:reblock-logentry";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:14:"8:blocklogtext";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:17:"8:unblocklogentry";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:26:"8:block-log-flags-anononly";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:29:"8:block-log-flags-noautoblock";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:25:"8:block-log-flags-noemail";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:28:"8:block-log-flags-nousertalk";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:33:"8:block-log-flags-angry-autoblock";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:28:"8:block-log-flags-hiddenname";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:22:"8:range_block_disabled";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:20:"8:ipb_expiry_invalid";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:17:"8:ipb_expiry_temp";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:18:"8:ipb_hide_invalid";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:21:"8:ipb_already_blocked";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:30:"8:mw-core-1.17-ipb-needreblock";R:38;s:24:"8:ipb-otherblocks-header";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:18:"8:ipb_cant_unblock";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:22:"8:ipb_blocked_as_range";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:18:"8:ip_range_invalid";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:19:"8:ip_range_toolarge";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:9:"8:blockme";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:14:"8:proxyblocker";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:23:"8:proxyblocker-disabled";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:18:"8:proxyblockreason";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:19:"8:proxyblocksuccess";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:7:"8:sorbs";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:13:"8:sorbsreason";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:29:"8:sorbs_create_account_reason";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:26:"8:cant-block-while-blocked";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:22:"8:cant-see-hidden-user";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:12:"8:ipbblocked";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:18:"8:ipbnounblockself";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:8:"8:lockdb";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:10:"8:unlockdb";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:12:"8:lockdbtext";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:14:"8:unlockdbtext";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:13:"8:lockconfirm";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:15:"8:unlockconfirm";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:9:"8:lockbtn";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:11:"8:unlockbtn";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:15:"8:locknoconfirm";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:18:"8:lockdbsuccesssub";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:20:"8:unlockdbsuccesssub";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:19:"8:lockdbsuccesstext";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:21:"8:unlockdbsuccesstext";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:21:"8:lockfilenotwritable";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:19:"8:databasenotlocked";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:11:"8:move-page";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:20:"8:move-page-backlink";R:38;s:18:"8:move-page-legend";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:14:"8:movepagetext";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:30:"8:movepagetext-noredirectfixer";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:18:"8:movepagetalktext";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:13:"8:movearticle";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:22:"8:moveuserpage-warning";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:13:"8:movenologin";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:17:"8:movenologintext";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:16:"8:movenotallowed";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:20:"8:movenotallowedfile";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:21:"8:cant-move-user-page";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:24:"8:cant-move-to-user-page";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:10:"8:newtitle";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:12:"8:move-watch";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:13:"8:movepagebtn";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:14:"8:pagemovedsub";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:16:"8:movepage-moved";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:25:"8:movepage-moved-redirect";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:27:"8:movepage-moved-noredirect";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:15:"8:articleexists";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:25:"8:cantmove-titleprotected";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:12:"8:talkexists";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:9:"8:movedto";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:10:"8:movetalk";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:15:"8:move-subpages";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:20:"8:move-talk-subpages";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:22:"8:movepage-page-exists";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:21:"8:movepage-page-moved";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:23:"8:movepage-page-unmoved";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:20:"8:movepage-max-pages";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:26:"8:move-redirect-suppressed";a:3:{i:0;R:2;i:1;R:38;i:2;R:39;}s:17:"8:movelogpagetext";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:13:"8:movesubpage";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:17:"8:movesubpagetext";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:15:"8:movenosubpage";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:12:"8:movereason";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:17:"8:delete_and_move";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:22:"8:delete_and_move_text";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:25:"8:delete_and_move_confirm";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:37:"8:mw-core-1.17-delete_and_move_reason";R:38;s:10:"8:selfmove";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:27:"8:immobile-source-namespace";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:27:"8:immobile-target-namespace";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:30:"8:immobile-target-namespace-iw";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:22:"8:immobile-source-page";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:22:"8:immobile-target-page";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:23:"8:imagenocrossnamespace";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:29:"8:nonfile-cannot-move-to-file";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:19:"8:imagetypemismatch";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:22:"8:imageinvalidfilename";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:22:"8:fix-double-redirects";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:21:"8:move-leave-redirect";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:26:"8:protectedpagemovewarning";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:30:"8:semiprotectedpagemovewarning";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:22:"8:move-over-sharedrepo";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:24:"8:file-exists-sharedrepo";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:12:"8:exporttext";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:15:"8:exportcuronly";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:17:"8:exportnohistory";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:15:"8:export-submit";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:19:"8:export-addcattext";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:15:"8:export-addcat";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:18:"8:export-addnstext";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:14:"8:export-addns";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:17:"8:export-download";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:18:"8:export-templates";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:18:"8:export-pagelinks";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:13:"8:allmessages";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:20:"8:allmessagescurrent";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:30:"8:mw-core-1.17-allmessagestext";R:38;s:27:"8:allmessagesnotsupporteddb";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:27:"8:allmessages-filter-legend";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:20:"8:allmessages-filter";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:31:"8:allmessages-filter-unmodified";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:24:"8:allmessages-filter-all";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:29:"8:allmessages-filter-modified";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:20:"8:allmessages-prefix";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:22:"8:allmessages-language";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:27:"8:allmessages-filter-submit";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:13:"8:filemissing";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:17:"8:djvu_page_error";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:13:"8:djvu_no_xml";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:26:"8:thumbnail_invalid_params";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:26:"8:thumbnail_dest_directory";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:22:"8:thumbnail_image-type";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:22:"8:thumbnail_gd-library";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:25:"8:thumbnail_image-missing";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:8:"8:import";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:17:"8:importinterwiki";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:23:"8:import-interwiki-text";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:25:"8:import-interwiki-source";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:26:"8:import-interwiki-history";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:28:"8:import-interwiki-templates";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:25:"8:import-interwiki-submit";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:28:"8:import-interwiki-namespace";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:24:"8:import-upload-filename";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:16:"8:import-comment";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:12:"8:importtext";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:13:"8:importstart";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:23:"8:import-revision-count";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:15:"8:importnopages";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:22:"8:imported-log-entries";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:14:"8:importfailed";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:21:"8:importunknownsource";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:16:"8:importcantopen";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:20:"8:importbadinterwiki";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:14:"8:importnotext";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:15:"8:importsuccess";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:23:"8:importhistoryconflict";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:17:"8:importnosources";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:14:"8:importnofile";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:23:"8:importuploaderrorsize";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:26:"8:importuploaderrorpartial";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:23:"8:importuploaderrortemp";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:22:"8:import-parse-failure";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:18:"8:import-noarticle";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:23:"8:import-nonewrevisions";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:18:"8:xml-error-string";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:15:"8:import-upload";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:23:"8:import-token-mismatch";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:26:"8:import-invalid-interwiki";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:15:"8:importlogpage";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:19:"8:importlogpagetext";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:24:"8:import-logentry-upload";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:31:"8:import-logentry-upload-detail";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:27:"8:import-logentry-interwiki";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:34:"8:import-logentry-interwiki-detail";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:23:"8:accesskey-pt-userpage";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:27:"8:accesskey-pt-anonuserpage";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:21:"8:accesskey-pt-mytalk";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:23:"8:accesskey-pt-anontalk";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:26:"8:accesskey-pt-preferences";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:24:"8:accesskey-pt-watchlist";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:24:"8:accesskey-pt-mycontris";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:20:"8:accesskey-pt-login";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:24:"8:accesskey-pt-anonlogin";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:21:"8:accesskey-pt-logout";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:19:"8:accesskey-ca-talk";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:19:"8:accesskey-ca-edit";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:25:"8:accesskey-ca-addsection";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:25:"8:accesskey-ca-viewsource";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:22:"8:accesskey-ca-history";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:22:"8:accesskey-ca-protect";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:24:"8:accesskey-ca-unprotect";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:21:"8:accesskey-ca-delete";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:23:"8:accesskey-ca-undelete";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:19:"8:accesskey-ca-move";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:20:"8:accesskey-ca-watch";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:22:"8:accesskey-ca-unwatch";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:18:"8:accesskey-search";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:21:"8:accesskey-search-go";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:27:"8:accesskey-search-fulltext";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:18:"8:accesskey-p-logo";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:22:"8:accesskey-n-mainpage";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:34:"8:accesskey-n-mainpage-description";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:20:"8:accesskey-n-portal";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:27:"8:accesskey-n-currentevents";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:27:"8:accesskey-n-recentchanges";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:24:"8:accesskey-n-randompage";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:18:"8:accesskey-n-help";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:27:"8:accesskey-t-whatlinkshere";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:33:"8:accesskey-t-recentchangeslinked";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:20:"8:accesskey-feed-rss";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:21:"8:accesskey-feed-atom";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:27:"8:accesskey-t-contributions";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:23:"8:accesskey-t-emailuser";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:23:"8:accesskey-t-permalink";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:19:"8:accesskey-t-print";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:20:"8:accesskey-t-upload";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:26:"8:accesskey-t-specialpages";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:25:"8:accesskey-ca-nstab-main";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:25:"8:accesskey-ca-nstab-user";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:26:"8:accesskey-ca-nstab-media";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:28:"8:accesskey-ca-nstab-special";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:28:"8:accesskey-ca-nstab-project";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:26:"8:accesskey-ca-nstab-image";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:30:"8:accesskey-ca-nstab-mediawiki";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:29:"8:accesskey-ca-nstab-template";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:25:"8:accesskey-ca-nstab-help";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:29:"8:accesskey-ca-nstab-category";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:21:"8:accesskey-minoredit";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:16:"8:accesskey-save";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:19:"8:accesskey-preview";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:16:"8:accesskey-diff";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:35:"8:accesskey-compareselectedversions";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:17:"8:accesskey-watch";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:18:"8:accesskey-upload";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:28:"8:accesskey-preferences-save";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:19:"8:accesskey-summary";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:26:"8:accesskey-userrights-set";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:25:"8:accesskey-blockip-block";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:18:"8:accesskey-export";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:18:"8:accesskey-import";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:25:"8:tooltip-pt-anonuserpage";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:21:"8:tooltip-pt-anontalk";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:22:"8:tooltip-pt-anonlogin";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:22:"8:tooltip-ca-unprotect";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:21:"8:tooltip-ca-undelete";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:18:"8:tooltip-feed-rss";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:24:"8:tooltip-ca-nstab-media";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:28:"8:tooltip-ca-nstab-mediawiki";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:23:"8:tooltip-ca-nstab-help";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:18:"8:tooltip-recreate";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:16:"8:tooltip-upload";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:26:"8:tooltip-preferences-save";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:12:"8:common.css";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:14:"8:standard.css";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:15:"8:nostalgia.css";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:17:"8:cologneblue.css";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:14:"8:monobook.css";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:12:"8:myskin.css";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:11:"8:chick.css";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:12:"8:simple.css";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:12:"8:modern.css";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:12:"8:vector.css";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:11:"8:print.css";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:14:"8:handheld.css";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:11:"8:common.js";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:13:"8:standard.js";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:14:"8:nostalgia.js";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:16:"8:cologneblue.js";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:13:"8:monobook.js";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:11:"8:myskin.js";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:10:"8:chick.js";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:11:"8:simple.js";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:11:"8:modern.js";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:11:"8:vector.js";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:14:"8:nodublincore";R:38;s:19:"8:nocreativecommons";R:38;s:15:"8:notacceptable";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:11:"8:anonymous";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:10:"8:siteuser";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:10:"8:anonuser";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:18:"8:lastmodifiedatby";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:15:"8:othercontribs";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:8:"8:others";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:11:"8:siteusers";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:11:"8:anonusers";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:13:"8:creditspage";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:11:"8:nocredits";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:21:"8:spamprotectiontitle";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:20:"8:spamprotectiontext";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:21:"8:spamprotectionmatch";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:18:"8:spambot_username";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:16:"8:spam_reverting";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:15:"8:spam_blanking";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:14:"8:infosubtitle";R:38;s:10:"8:numedits";R:38;s:14:"8:numtalkedits";R:38;s:13:"8:numwatchers";R:38;s:12:"8:numauthors";R:38;s:16:"8:numtalkauthors";R:38;s:19:"8:skinname-standard";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:20:"8:skinname-nostalgia";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:22:"8:skinname-cologneblue";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:19:"8:skinname-monobook";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:17:"8:skinname-myskin";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:16:"8:skinname-chick";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:17:"8:skinname-simple";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:17:"8:skinname-modern";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:17:"8:skinname-vector";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:13:"8:mw_math_png";a:3:{i:0;R:798;i:1;R:38;i:2;R:799;}s:16:"8:mw_math_simple";R:38;s:14:"8:mw_math_html";R:38;s:16:"8:mw_math_source";a:3:{i:0;R:798;i:1;R:38;i:2;R:799;}s:16:"8:mw_math_modern";R:38;s:16:"8:mw_math_mathml";R:38;s:14:"8:math_failure";a:3:{i:0;R:798;i:1;R:38;i:2;R:799;}s:20:"8:math_unknown_error";a:3:{i:0;R:798;i:1;R:38;i:2;R:799;}s:23:"8:math_unknown_function";a:3:{i:0;R:798;i:1;R:38;i:2;R:799;}s:19:"8:math_lexing_error";a:3:{i:0;R:798;i:1;R:38;i:2;R:799;}s:19:"8:math_syntax_error";a:3:{i:0;R:798;i:1;R:38;i:2;R:799;}s:18:"8:math_image_error";a:3:{i:0;R:798;i:1;R:38;i:2;R:799;}s:17:"8:math_bad_tmpdir";a:3:{i:0;R:798;i:1;R:38;i:2;R:799;}s:17:"8:math_bad_output";a:3:{i:0;R:798;i:1;R:38;i:2;R:799;}s:14:"8:math_notexvc";a:3:{i:0;R:798;i:1;R:38;i:2;R:799;}s:21:"8:markaspatrolleddiff";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:21:"8:markaspatrolledlink";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:21:"8:markaspatrolledtext";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:19:"8:markedaspatrolled";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:23:"8:markedaspatrolledtext";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:18:"8:rcpatroldisabled";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:22:"8:rcpatroldisabledtext";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:24:"8:markedaspatrollederror";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:28:"8:markedaspatrollederrortext";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:37:"8:markedaspatrollederror-noautopatrol";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:17:"8:patrol-log-page";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:19:"8:patrol-log-header";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:17:"8:patrol-log-auto";a:3:{i:0;R:2;i:1;R:38;i:2;R:39;}s:22:"8:log-show-hide-patrol";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:17:"8:deletedrevision";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:23:"8:filedeleteerror-short";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:22:"8:filedeleteerror-long";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:20:"8:filedelete-missing";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:29:"8:filedelete-old-unregistered";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:33:"8:filedelete-current-unregistered";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:30:"8:filedelete-archive-read-only";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:14:"8:mediawarning";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:14:"8:imagemaxsize";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:11:"8:thumbsize";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:13:"8:widthheight";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:17:"8:widthheightpage";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:11:"8:file-info";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:27:"8:mw-core-1.17-file-nohires";R:38;s:22:"8:show-big-image-thumb";R:38;s:22:"8:file-info-gif-looped";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:22:"8:file-info-gif-frames";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:22:"8:file-info-png-looped";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:22:"8:file-info-png-repeat";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:22:"8:file-info-png-frames";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:11:"8:newimages";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:15:"8:imagelisttext";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:19:"8:newimages-summary";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:18:"8:newimages-legend";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:17:"8:newimages-label";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:14:"8:showhidebots";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:10:"8:noimages";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:10:"8:ilsubmit";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:8:"8:bydate";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:23:"8:sp-newimages-showfrom";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:12:"8:video-dims";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:29:"8:mw-core-1.17-seconds-abbrev";R:38;s:29:"8:mw-core-1.17-minutes-abbrev";R:38;s:27:"8:mw-core-1.17-hours-abbrev";R:38;s:21:"8:variantname-zh-hans";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:21:"8:variantname-zh-hant";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:19:"8:variantname-zh-cn";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:19:"8:variantname-zh-tw";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:19:"8:variantname-zh-hk";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:19:"8:variantname-zh-mo";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:19:"8:variantname-zh-sg";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:19:"8:variantname-zh-my";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:16:"8:variantname-zh";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:22:"8:variantname-gan-hans";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:22:"8:variantname-gan-hant";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:17:"8:variantname-gan";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:19:"8:variantname-sr-ec";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:19:"8:variantname-sr-el";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:16:"8:variantname-sr";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:19:"8:variantname-kk-kz";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:19:"8:variantname-kk-tr";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:19:"8:variantname-kk-cn";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:21:"8:variantname-kk-cyrl";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:21:"8:variantname-kk-latn";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:21:"8:variantname-kk-arab";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:16:"8:variantname-kk";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:21:"8:variantname-ku-arab";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:21:"8:variantname-ku-latn";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:16:"8:variantname-ku";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:21:"8:variantname-tg-cyrl";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:21:"8:variantname-tg-latn";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:16:"8:variantname-tg";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:17:"8:metadata-expand";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:19:"8:metadata-collapse";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:30:"8:mw-core-1.17-metadata-fields";R:38;s:17:"8:exif-imagewidth";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:18:"8:exif-imagelength";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:20:"8:exif-bitspersample";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:18:"8:exif-compression";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:32:"8:exif-photometricinterpretation";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:18:"8:exif-orientation";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:22:"8:exif-samplesperpixel";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:26:"8:exif-planarconfiguration";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:23:"8:exif-ycbcrsubsampling";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:23:"8:exif-ycbcrpositioning";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:18:"8:exif-xresolution";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:18:"8:exif-yresolution";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:21:"8:exif-resolutionunit";R:38;s:19:"8:exif-stripoffsets";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:19:"8:exif-rowsperstrip";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:22:"8:exif-stripbytecounts";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:28:"8:exif-jpeginterchangeformat";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:34:"8:exif-jpeginterchangeformatlength";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:23:"8:exif-transferfunction";R:38;s:17:"8:exif-whitepoint";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:28:"8:exif-primarychromaticities";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:24:"8:exif-ycbcrcoefficients";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:26:"8:exif-referenceblackwhite";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:15:"8:exif-datetime";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:23:"8:exif-imagedescription";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:11:"8:exif-make";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:12:"8:exif-model";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:15:"8:exif-software";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:13:"8:exif-artist";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:16:"8:exif-copyright";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:18:"8:exif-exifversion";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:22:"8:exif-flashpixversion";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:17:"8:exif-colorspace";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:30:"8:exif-componentsconfiguration";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:29:"8:exif-compressedbitsperpixel";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:22:"8:exif-pixelydimension";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:22:"8:exif-pixelxdimension";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:16:"8:exif-makernote";R:38;s:18:"8:exif-usercomment";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:23:"8:exif-relatedsoundfile";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:23:"8:exif-datetimeoriginal";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:24:"8:exif-datetimedigitized";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:17:"8:exif-subsectime";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:25:"8:exif-subsectimeoriginal";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:26:"8:exif-subsectimedigitized";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:19:"8:exif-exposuretime";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:26:"8:exif-exposuretime-format";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:14:"8:exif-fnumber";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:21:"8:exif-fnumber-format";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:22:"8:exif-exposureprogram";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:26:"8:exif-spectralsensitivity";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:22:"8:exif-isospeedratings";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:11:"8:exif-oecf";R:38;s:24:"8:exif-shutterspeedvalue";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:20:"8:exif-aperturevalue";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:22:"8:exif-brightnessvalue";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:24:"8:exif-exposurebiasvalue";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:23:"8:exif-maxaperturevalue";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:22:"8:exif-subjectdistance";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:19:"8:exif-meteringmode";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:18:"8:exif-lightsource";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:12:"8:exif-flash";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:18:"8:exif-focallength";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:25:"8:exif-focallength-format";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:18:"8:exif-subjectarea";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:18:"8:exif-flashenergy";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:31:"8:exif-spatialfrequencyresponse";R:38;s:28:"8:exif-focalplanexresolution";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:28:"8:exif-focalplaneyresolution";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:31:"8:exif-focalplaneresolutionunit";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:22:"8:exif-subjectlocation";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:20:"8:exif-exposureindex";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:20:"8:exif-sensingmethod";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:17:"8:exif-filesource";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:16:"8:exif-scenetype";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:17:"8:exif-cfapattern";R:38;s:21:"8:exif-customrendered";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:19:"8:exif-exposuremode";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:19:"8:exif-whitebalance";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:23:"8:exif-digitalzoomratio";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:28:"8:exif-focallengthin35mmfilm";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:23:"8:exif-scenecapturetype";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:18:"8:exif-gaincontrol";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:15:"8:exif-contrast";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:17:"8:exif-saturation";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:16:"8:exif-sharpness";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:31:"8:exif-devicesettingdescription";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:27:"8:exif-subjectdistancerange";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:20:"8:exif-imageuniqueid";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:19:"8:exif-gpsversionid";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:21:"8:exif-gpslatituderef";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:18:"8:exif-gpslatitude";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:22:"8:exif-gpslongituderef";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:19:"8:exif-gpslongitude";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:21:"8:exif-gpsaltituderef";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:18:"8:exif-gpsaltitude";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:19:"8:exif-gpstimestamp";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:20:"8:exif-gpssatellites";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:16:"8:exif-gpsstatus";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:21:"8:exif-gpsmeasuremode";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:13:"8:exif-gpsdop";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:18:"8:exif-gpsspeedref";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:15:"8:exif-gpsspeed";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:18:"8:exif-gpstrackref";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:15:"8:exif-gpstrack";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:25:"8:exif-gpsimgdirectionref";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:22:"8:exif-gpsimgdirection";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:18:"8:exif-gpsmapdatum";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:25:"8:exif-gpsdestlatituderef";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:22:"8:exif-gpsdestlatitude";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:26:"8:exif-gpsdestlongituderef";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:23:"8:exif-gpsdestlongitude";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:24:"8:exif-gpsdestbearingref";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:21:"8:exif-gpsdestbearing";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:25:"8:exif-gpsdestdistanceref";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:22:"8:exif-gpsdestdistance";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:26:"8:exif-gpsprocessingmethod";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:25:"8:exif-gpsareainformation";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:19:"8:exif-gpsdatestamp";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:22:"8:exif-gpsdifferential";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:17:"8:exif-objectname";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:17:"8:exif-make-value";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:18:"8:exif-model-value";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:21:"8:exif-software-value";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:20:"8:exif-compression-1";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:33:"8:mw-core-1.17-exif-compression-6";R:38;s:34:"8:exif-photometricinterpretation-2";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:34:"8:exif-photometricinterpretation-6";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:18:"8:exif-unknowndate";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:20:"8:exif-orientation-1";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:20:"8:exif-orientation-2";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:20:"8:exif-orientation-3";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:20:"8:exif-orientation-4";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:20:"8:exif-orientation-5";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:20:"8:exif-orientation-6";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:20:"8:exif-orientation-7";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:20:"8:exif-orientation-8";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:28:"8:exif-planarconfiguration-1";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:28:"8:exif-planarconfiguration-2";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:21:"8:exif-xyresolution-i";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:21:"8:exif-xyresolution-c";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:19:"8:exif-colorspace-1";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:24:"8:exif-colorspace-ffff.h";R:38;s:32:"8:exif-componentsconfiguration-0";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:32:"8:exif-componentsconfiguration-1";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:32:"8:exif-componentsconfiguration-2";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:32:"8:exif-componentsconfiguration-3";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:32:"8:exif-componentsconfiguration-4";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:32:"8:exif-componentsconfiguration-5";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:32:"8:exif-componentsconfiguration-6";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:24:"8:exif-exposureprogram-0";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:24:"8:exif-exposureprogram-1";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:24:"8:exif-exposureprogram-2";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:24:"8:exif-exposureprogram-3";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:24:"8:exif-exposureprogram-4";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:24:"8:exif-exposureprogram-5";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:24:"8:exif-exposureprogram-6";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:24:"8:exif-exposureprogram-7";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:24:"8:exif-exposureprogram-8";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:28:"8:exif-subjectdistance-value";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:21:"8:exif-meteringmode-0";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:21:"8:exif-meteringmode-1";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:21:"8:exif-meteringmode-2";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:21:"8:exif-meteringmode-3";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:21:"8:exif-meteringmode-4";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:21:"8:exif-meteringmode-5";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:21:"8:exif-meteringmode-6";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:23:"8:exif-meteringmode-255";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:20:"8:exif-lightsource-0";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:20:"8:exif-lightsource-1";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:20:"8:exif-lightsource-2";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:20:"8:exif-lightsource-3";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:20:"8:exif-lightsource-4";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:20:"8:exif-lightsource-9";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:21:"8:exif-lightsource-10";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:21:"8:exif-lightsource-11";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:21:"8:exif-lightsource-12";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:21:"8:exif-lightsource-13";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:21:"8:exif-lightsource-14";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:21:"8:exif-lightsource-15";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:21:"8:exif-lightsource-17";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:21:"8:exif-lightsource-18";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:21:"8:exif-lightsource-19";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:21:"8:exif-lightsource-20";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:21:"8:exif-lightsource-21";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:21:"8:exif-lightsource-22";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:21:"8:exif-lightsource-23";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:21:"8:exif-lightsource-24";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:22:"8:exif-lightsource-255";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:20:"8:exif-flash-fired-0";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:20:"8:exif-flash-fired-1";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:21:"8:exif-flash-return-0";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:21:"8:exif-flash-return-2";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:21:"8:exif-flash-return-3";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:19:"8:exif-flash-mode-1";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:19:"8:exif-flash-mode-2";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:19:"8:exif-flash-mode-3";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:23:"8:exif-flash-function-1";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:21:"8:exif-flash-redeye-1";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:33:"8:exif-focalplaneresolutionunit-2";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:22:"8:exif-sensingmethod-1";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:22:"8:exif-sensingmethod-2";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:22:"8:exif-sensingmethod-3";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:22:"8:exif-sensingmethod-4";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:22:"8:exif-sensingmethod-5";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:22:"8:exif-sensingmethod-7";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:22:"8:exif-sensingmethod-8";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:19:"8:exif-filesource-3";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:18:"8:exif-scenetype-1";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:23:"8:exif-customrendered-0";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:23:"8:exif-customrendered-1";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:21:"8:exif-exposuremode-0";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:21:"8:exif-exposuremode-1";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:21:"8:exif-exposuremode-2";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:21:"8:exif-whitebalance-0";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:21:"8:exif-whitebalance-1";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:25:"8:exif-scenecapturetype-0";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:25:"8:exif-scenecapturetype-1";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:25:"8:exif-scenecapturetype-2";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:25:"8:exif-scenecapturetype-3";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:20:"8:exif-gaincontrol-0";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:20:"8:exif-gaincontrol-1";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:20:"8:exif-gaincontrol-2";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:20:"8:exif-gaincontrol-3";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:20:"8:exif-gaincontrol-4";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:17:"8:exif-contrast-0";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:17:"8:exif-contrast-1";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:17:"8:exif-contrast-2";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:19:"8:exif-saturation-0";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:19:"8:exif-saturation-1";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:19:"8:exif-saturation-2";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:18:"8:exif-sharpness-0";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:18:"8:exif-sharpness-1";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:18:"8:exif-sharpness-2";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:29:"8:exif-subjectdistancerange-0";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:29:"8:exif-subjectdistancerange-1";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:29:"8:exif-subjectdistancerange-2";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:29:"8:exif-subjectdistancerange-3";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:20:"8:exif-gpslatitude-n";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:20:"8:exif-gpslatitude-s";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:21:"8:exif-gpslongitude-e";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:21:"8:exif-gpslongitude-w";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:18:"8:exif-gpsstatus-a";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:18:"8:exif-gpsstatus-v";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:23:"8:exif-gpsmeasuremode-2";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:23:"8:exif-gpsmeasuremode-3";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:17:"8:exif-gpsspeed-k";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:17:"8:exif-gpsspeed-m";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:17:"8:exif-gpsspeed-n";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:21:"8:exif-gpsdirection-t";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:21:"8:exif-gpsdirection-m";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:35:"8:mw-core-1.17-edit-externally-help";R:38;s:18:"8:recentchangesall";R:38;s:14:"8:imagelistall";R:38;s:10:"8:limitall";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:14:"8:confirmemail";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:22:"8:confirmemail_noemail";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:19:"8:confirmemail_text";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:22:"8:confirmemail_pending";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:19:"8:confirmemail_send";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:19:"8:confirmemail_sent";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:23:"8:confirmemail_oncreate";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:25:"8:confirmemail_sendfailed";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:22:"8:confirmemail_invalid";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:24:"8:confirmemail_needlogin";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:22:"8:confirmemail_success";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:23:"8:confirmemail_loggedin";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:20:"8:confirmemail_error";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:22:"8:confirmemail_subject";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:19:"8:confirmemail_body";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:27:"8:confirmemail_body_changed";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:23:"8:confirmemail_body_set";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:26:"8:confirmemail_invalidated";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:17:"8:invalidateemail";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:25:"8:scarytranscludedisabled";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:23:"8:scarytranscludefailed";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:24:"8:scarytranscludetoolong";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:21:"8:deletedwhileediting";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:17:"8:confirmrecreate";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:10:"8:recreate";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:12:"8:unit-pixel";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:22:"8:confirm_purge_button";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:19:"8:confirm-purge-top";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:22:"8:confirm-purge-bottom";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:14:"8:catseparator";R:38;s:21:"8:semicolon-separator";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:17:"8:comma-separator";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:17:"8:colon-separator";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:20:"8:autocomment-prefix";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:16:"8:pipe-separator";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:16:"8:word-separator";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:10:"8:ellipsis";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:9:"8:percent";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:13:"8:parentheses";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:18:"8:imgmultipageprev";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:18:"8:imgmultipagenext";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:12:"8:imgmultigo";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:14:"8:imgmultigoto";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:18:"8:ascending_abbrev";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:19:"8:descending_abbrev";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:18:"8:table_pager_next";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:18:"8:table_pager_prev";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:19:"8:table_pager_first";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:18:"8:table_pager_last";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:19:"8:table_pager_limit";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:25:"8:table_pager_limit_label";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:26:"8:table_pager_limit_submit";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:19:"8:table_pager_empty";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:16:"8:autosumm-blank";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:18:"8:autosumm-replace";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:18:"8:autoredircomment";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:14:"8:autosumm-new";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:21:"8:autoblock_whitelist";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:12:"8:size-bytes";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:16:"8:size-kilobytes";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:16:"8:size-megabytes";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:16:"8:size-gigabytes";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:21:"8:livepreview-loading";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:19:"8:livepreview-ready";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:20:"8:livepreview-failed";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:19:"8:livepreview-error";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:17:"8:lag-warn-normal";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:15:"8:lag-warn-high";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:24:"8:watchlistedit-numitems";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:23:"8:watchlistedit-noitems";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:28:"8:watchlistedit-normal-title";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:29:"8:watchlistedit-normal-legend";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:43:"8:mw-core-1.17-watchlistedit-normal-explain";R:38;s:29:"8:watchlistedit-normal-submit";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:27:"8:watchlistedit-normal-done";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:25:"8:watchlistedit-raw-title";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:26:"8:watchlistedit-raw-legend";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:40:"8:mw-core-1.17-watchlistedit-raw-explain";R:38;s:26:"8:watchlistedit-raw-titles";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:26:"8:watchlistedit-raw-submit";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:24:"8:watchlistedit-raw-done";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:25:"8:watchlistedit-raw-added";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:27:"8:watchlistedit-raw-removed";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:21:"8:iranian-calendar-m1";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:21:"8:iranian-calendar-m2";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:21:"8:iranian-calendar-m3";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:21:"8:iranian-calendar-m4";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:21:"8:iranian-calendar-m5";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:21:"8:iranian-calendar-m6";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:21:"8:iranian-calendar-m7";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:21:"8:iranian-calendar-m8";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:21:"8:iranian-calendar-m9";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:22:"8:iranian-calendar-m10";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:22:"8:iranian-calendar-m11";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:22:"8:iranian-calendar-m12";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:19:"8:hijri-calendar-m1";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:19:"8:hijri-calendar-m2";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:19:"8:hijri-calendar-m3";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:19:"8:hijri-calendar-m4";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:19:"8:hijri-calendar-m5";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:19:"8:hijri-calendar-m6";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:19:"8:hijri-calendar-m7";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:19:"8:hijri-calendar-m8";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:19:"8:hijri-calendar-m9";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:20:"8:hijri-calendar-m10";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:20:"8:hijri-calendar-m11";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:20:"8:hijri-calendar-m12";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:20:"8:hebrew-calendar-m1";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:20:"8:hebrew-calendar-m2";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:20:"8:hebrew-calendar-m3";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:20:"8:hebrew-calendar-m4";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:20:"8:hebrew-calendar-m5";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:20:"8:hebrew-calendar-m6";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:21:"8:hebrew-calendar-m6a";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:21:"8:hebrew-calendar-m6b";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:20:"8:hebrew-calendar-m7";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:20:"8:hebrew-calendar-m8";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:20:"8:hebrew-calendar-m9";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:21:"8:hebrew-calendar-m10";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:21:"8:hebrew-calendar-m11";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:21:"8:hebrew-calendar-m12";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:24:"8:hebrew-calendar-m1-gen";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:24:"8:hebrew-calendar-m2-gen";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:24:"8:hebrew-calendar-m3-gen";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:24:"8:hebrew-calendar-m4-gen";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:24:"8:hebrew-calendar-m5-gen";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:24:"8:hebrew-calendar-m6-gen";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:25:"8:hebrew-calendar-m6a-gen";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:25:"8:hebrew-calendar-m6b-gen";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:24:"8:hebrew-calendar-m7-gen";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:24:"8:hebrew-calendar-m8-gen";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:24:"8:hebrew-calendar-m9-gen";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:25:"8:hebrew-calendar-m10-gen";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:25:"8:hebrew-calendar-m11-gen";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:25:"8:hebrew-calendar-m12-gen";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:24:"8:mw-core-1.17-signature";R:38;s:16:"8:signature-anon";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:14:"8:timezone-utc";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:23:"8:unknown_extension_tag";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:9:"8:version";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:20:"8:version-extensions";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:22:"8:version-specialpages";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:21:"8:version-parserhooks";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:19:"8:version-variables";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:15:"8:version-skins";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:15:"8:version-other";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:23:"8:version-mediahandlers";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:15:"8:version-hooks";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:29:"8:version-extension-functions";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:30:"8:version-parser-extensiontags";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:31:"8:version-parser-function-hooks";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:34:"8:version-skin-extension-functions";R:38;s:19:"8:version-hook-name";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:27:"8:version-hook-subscribedby";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:17:"8:version-version";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:22:"8:version-svn-revision";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:17:"8:version-license";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:40:"8:mw-core-1.17-version-poweredby-credits";R:38;s:26:"8:version-poweredby-others";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:35:"8:mw-core-1.17-version-license-info";R:38;s:18:"8:version-software";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:26:"8:version-software-product";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:26:"8:version-software-version";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:10:"8:filepath";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:15:"8:filepath-page";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:17:"8:filepath-submit";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:31:"8:mw-core-1.17-filepath-summary";R:38;s:21:"8:fileduplicatesearch";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:42:"8:mw-core-1.17-fileduplicatesearch-summary";R:38;s:28:"8:fileduplicatesearch-legend";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:30:"8:fileduplicatesearch-filename";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:28:"8:fileduplicatesearch-submit";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:26:"8:fileduplicatesearch-info";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:30:"8:fileduplicatesearch-result-1";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:30:"8:fileduplicatesearch-result-n";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:22:"8:specialpages-summary";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:32:"8:mw-core-1.17-specialpages-note";R:38;s:32:"8:specialpages-group-maintenance";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:26:"8:specialpages-group-other";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:26:"8:specialpages-group-login";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:28:"8:specialpages-group-changes";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:26:"8:specialpages-group-media";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:26:"8:specialpages-group-users";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:28:"8:specialpages-group-highuse";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:26:"8:specialpages-group-pages";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:30:"8:specialpages-group-pagetools";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:25:"8:specialpages-group-wiki";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:30:"8:specialpages-group-redirects";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:25:"8:specialpages-group-spam";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:11:"8:blankpage";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:24:"8:intentionallyblankpage";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:6:"8:tags";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:19:"8:tag-filter-submit";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:12:"8:tags-title";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:12:"8:tags-intro";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:10:"8:tags-tag";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:21:"8:tags-display-header";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:25:"8:tags-description-header";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:22:"8:tags-hitcount-header";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:11:"8:tags-edit";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:15:"8:tags-hitcount";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:14:"8:comparepages";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:18:"8:compare-selector";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:15:"8:compare-page1";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:15:"8:compare-page2";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:14:"8:compare-rev1";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:14:"8:compare-rev2";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:16:"8:compare-submit";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:14:"8:dberr-header";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:16:"8:dberr-problems";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:13:"8:dberr-again";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:12:"8:dberr-info";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:17:"8:dberr-usegoogle";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:17:"8:dberr-outofdate";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:19:"8:dberr-cachederror";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:24:"8:htmlform-invalid-input";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:27:"8:htmlform-select-badoption";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:22:"8:htmlform-int-invalid";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:24:"8:htmlform-float-invalid";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:21:"8:htmlform-int-toolow";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:22:"8:htmlform-int-toohigh";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:19:"8:htmlform-required";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:17:"8:htmlform-submit";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:16:"8:htmlform-reset";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:30:"8:htmlform-selectorother-other";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:16:"8:sqlite-has-fts";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:15:"8:sqlite-no-fts";a:4:{i:0;R:2;i:1;R:38;i:2;R:39;i:3;R:40;}s:21:"8:tog-highlightbroken";a:3:{i:0;R:38;i:1;R:39;i:2;R:40;}s:20:"8:tog-externaleditor";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:18:"8:tog-externaldiff";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:22:"8:broken-file-category";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:6:"8:view";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:19:"8:viewdeleted_short";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:22:"8:collapsible-collapse";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:20:"8:collapsible-expand";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:17:"8:sort-descending";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:16:"8:sort-ascending";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:16:"8:mainpage-nstab";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:25:"8:mw-core-1.18-perfcached";R:39;s:27:"8:mw-core-1.18-perfcachedts";R:39;s:15:"8:viewsourcefor";a:2:{i:0;R:38;i:1;R:39;}s:18:"8:editinginterface";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:20:"8:customcssprotected";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:19:"8:customjsprotected";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:17:"8:nocookiesfornew";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:19:"8:nocookiesforlogin";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:17:"8:nosuchusershort";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:16:"8:loginend-https";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:17:"8:signupend-https";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:21:"8:login-abort-generic";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:15:"8:passwordreset";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:20:"8:passwordreset-text";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:22:"8:passwordreset-legend";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:24:"8:passwordreset-disabled";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:23:"8:passwordreset-pretext";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:24:"8:passwordreset-username";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:22:"8:passwordreset-domain";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:21:"8:passwordreset-email";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:26:"8:passwordreset-emailtitle";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:28:"8:passwordreset-emailtext-ip";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:30:"8:passwordreset-emailtext-user";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:28:"8:passwordreset-emailelement";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:25:"8:passwordreset-emailsent";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:23:"8:blockedoriginalsource";a:2:{i:0;R:38;i:1;R:39;}s:19:"8:blockededitsource";a:2:{i:0;R:38;i:1;R:39;}s:20:"8:whitelistedittitle";a:2:{i:0;R:38;i:1;R:39;}s:27:"8:userpage-userdoesnotexist";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:22:"8:edit_form_incomplete";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:28:"8:mw-core-1.18-longpageerror";R:39;s:18:"8:edittools-upload";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:14:"8:googlesearch";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:27:"8:qbsettings-directionality";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:12:"8:prefs-beta";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:12:"8:prefs-labs";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:39:"8:mw-core-1.18-prefs-watchlist-days-max";R:39;s:26:"8:timezoneuseserverdefault";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:26:"8:mw-core-1.18-editinguser";R:39;s:19:"8:group-user-member";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:28:"8:group-autoconfirmed-member";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:18:"8:group-bot-member";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:20:"8:group-sysop-member";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:25:"8:group-bureaucrat-member";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:23:"8:group-suppress-member";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:17:"8:right-trackback";a:2:{i:0;R:38;i:1;R:39;}s:28:"8:rightslogentry-autopromote";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:18:"8:action-trackback";a:2:{i:0;R:38;i:1;R:39;}s:13:"8:sectionlink";a:2:{i:0;R:38;i:1;R:39;}s:30:"8:recentchangeslinked-backlink";a:2:{i:0;R:38;i:1;R:39;}s:24:"8:filetype-mime-mismatch";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:22:"8:filetype-banned-type";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:27:"8:windows-nonascii-filename";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:12:"8:uploadjava";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:21:"8:zip-file-open-error";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:18:"8:zip-wrong-format";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:9:"8:zip-bad";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:17:"8:zip-unsupported";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:13:"8:uploadstash";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:21:"8:uploadstash-summary";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:19:"8:uploadstash-clear";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:21:"8:uploadstash-nofiles";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:22:"8:uploadstash-badtoken";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:22:"8:uploadstash-errclear";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:21:"8:uploadstash-refresh";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:21:"8:img-auth-nopathinfo";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:23:"8:linkstoimage-redirect";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:21:"8:filerevert-backlink";a:2:{i:0;R:38;i:1;R:39;}s:21:"8:filedelete-backlink";a:2:{i:0;R:38;i:1;R:39;}s:35:"8:double-redirect-fixed-maintenance";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:26:"8:mw-core-1.18-usercreated";R:39;s:20:"8:querypage-disabled";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:8:"8:rfcurl";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:11:"8:pubmedurl";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:17:"8:newuserlogentry";a:2:{i:0;R:38;i:1;R:39;}s:30:"8:mw-core-1.18-defemailsubject";R:39;s:15:"8:emailnotarget";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:13:"8:emailtarget";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:15:"8:emailusername";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:21:"8:emailusernamesubmit";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:10:"8:addwatch";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:13:"8:removewatch";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:21:"8:mw-core-1.18-wlnote";R:39;s:16:"8:watcherrortext";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:13:"8:enotif_body";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:17:"8:delete-backlink";a:2:{i:0;R:38;i:1;R:39;}s:13:"8:deletedtext";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:18:"8:protect-backlink";a:2:{i:0;R:38;i:1;R:39;}s:14:"8:protect-text";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:19:"8:undeleteextrahelp";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:16:"8:tooltip-invert";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:23:"8:namespace_association";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:31:"8:tooltip-namespace_association";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:24:"8:whatlinkshere-backlink";a:2:{i:0;R:38;i:1;R:39;}s:13:"8:autoblockid";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:7:"8:block";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:9:"8:unblock";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:15:"8:ipb-hardblock";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:21:"8:ipb-disableusertalk";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:13:"8:ipb-confirm";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:18:"8:ipb-blockingself";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:21:"8:ipb-confirmhideuser";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:17:"8:unblocked-range";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:11:"8:blocklist";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:22:"8:blocklist-userblocks";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:22:"8:blocklist-tempblocks";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:25:"8:blocklist-addressblocks";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:21:"8:blocklist-timestamp";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:18:"8:blocklist-target";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:18:"8:blocklist-expiry";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:14:"8:blocklist-by";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:18:"8:blocklist-params";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:18:"8:blocklist-reason";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:19:"8:blocklist-summary";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:17:"8:ipb-needreblock";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:18:"8:unblock-hideuser";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:17:"8:lockedbyandtime";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:37:"8:mw-core-1.18-delete_and_move_reason";R:39;s:17:"8:allmessagestext";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:14:"8:noscript.css";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:25:"8:group-autoconfirmed.css";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:15:"8:group-bot.css";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:17:"8:group-sysop.css";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:22:"8:group-bureaucrat.css";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:24:"8:group-autoconfirmed.js";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:14:"8:group-bot.js";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:16:"8:group-sysop.js";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:21:"8:group-bureaucrat.js";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:16:"8:pageinfo-title";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:23:"8:pageinfo-header-edits";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:27:"8:pageinfo-header-watchlist";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:23:"8:pageinfo-header-views";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:22:"8:pageinfo-subjectpage";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:19:"8:pageinfo-talkpage";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:19:"8:pageinfo-watchers";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:16:"8:pageinfo-edits";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:18:"8:pageinfo-authors";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:16:"8:pageinfo-views";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:23:"8:pageinfo-viewsperedit";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:22:"8:file-info-size-pages";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:27:"8:mw-core-1.18-file-nohires";R:39;s:37:"8:mw-core-1.18-show-big-image-preview";R:39;s:35:"8:mw-core-1.18-show-big-image-other";R:39;s:21:"8:show-big-image-size";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:29:"8:mw-core-1.18-seconds-abbrev";R:39;s:29:"8:mw-core-1.18-minutes-abbrev";R:39;s:27:"8:mw-core-1.18-hours-abbrev";R:39;s:26:"8:mw-core-1.18-days-abbrev";R:39;s:22:"8:variantname-ike-cans";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:22:"8:variantname-ike-latn";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:16:"8:variantname-iu";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:19:"8:metadata-langitem";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:27:"8:metadata-langitem-default";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:24:"8:exif-coordinate-format";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:22:"8:exif-jpegfilecomment";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:15:"8:exif-keywords";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:25:"8:exif-worldregioncreated";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:21:"8:exif-countrycreated";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:25:"8:exif-countrycodecreated";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:29:"8:exif-provinceorstatecreated";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:18:"8:exif-citycreated";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:25:"8:exif-sublocationcreated";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:22:"8:exif-worldregiondest";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:18:"8:exif-countrydest";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:22:"8:exif-countrycodedest";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:26:"8:exif-provinceorstatedest";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:15:"8:exif-citydest";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:22:"8:exif-sublocationdest";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:26:"8:exif-specialinstructions";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:15:"8:exif-headline";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:13:"8:exif-credit";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:13:"8:exif-source";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:17:"8:exif-editstatus";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:14:"8:exif-urgency";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:24:"8:exif-fixtureidentifier";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:19:"8:exif-locationdest";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:23:"8:exif-locationdestcode";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:18:"8:exif-objectcycle";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:14:"8:exif-contact";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:13:"8:exif-writer";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:19:"8:exif-languagecode";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:17:"8:exif-iimversion";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:18:"8:exif-iimcategory";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:30:"8:exif-iimsupplementalcategory";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:22:"8:exif-datetimeexpires";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:23:"8:exif-datetimereleased";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:30:"8:exif-originaltransmissionref";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:17:"8:exif-identifier";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:11:"8:exif-lens";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:19:"8:exif-serialnumber";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:22:"8:exif-cameraownername";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:12:"8:exif-label";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:23:"8:exif-datetimemetadata";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:15:"8:exif-nickname";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:13:"8:exif-rating";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:24:"8:exif-rightscertificate";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:18:"8:exif-copyrighted";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:21:"8:exif-copyrightowner";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:17:"8:exif-usageterms";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:19:"8:exif-webstatement";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:25:"8:exif-originaldocumentid";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:17:"8:exif-licenseurl";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:25:"8:exif-morepermissionsurl";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:21:"8:exif-attributionurl";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:31:"8:exif-preferredattributionname";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:21:"8:exif-pngfilecomment";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:17:"8:exif-disclaimer";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:21:"8:exif-contentwarning";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:21:"8:exif-giffilecomment";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:24:"8:exif-intellectualgenre";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:22:"8:exif-subjectnewscode";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:16:"8:exif-scenecode";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:12:"8:exif-event";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:26:"8:exif-organisationinimage";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:20:"8:exif-personinimage";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:26:"8:exif-originalimageheight";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:25:"8:exif-originalimagewidth";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:29:"8:exif-software-version-value";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:20:"8:exif-contact-value";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:28:"8:exif-subjectnewscode-value";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:20:"8:exif-compression-2";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:20:"8:exif-compression-3";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:20:"8:exif-compression-4";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:20:"8:exif-compression-5";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:20:"8:exif-compression-6";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:20:"8:exif-compression-7";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:20:"8:exif-compression-8";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:24:"8:exif-compression-32773";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:24:"8:exif-compression-32946";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:24:"8:exif-compression-34712";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:23:"8:exif-copyrighted-true";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:24:"8:exif-copyrighted-false";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:23:"8:exif-colorspace-65535";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:33:"8:exif-gpsaltitude-above-sealevel";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:33:"8:exif-gpsaltitude-below-sealevel";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:24:"8:exif-gpsdestdistance-k";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:24:"8:exif-gpsdestdistance-m";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:24:"8:exif-gpsdestdistance-n";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:23:"8:exif-gpsdop-excellent";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:18:"8:exif-gpsdop-good";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:22:"8:exif-gpsdop-moderate";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:18:"8:exif-gpsdop-fair";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:18:"8:exif-gpsdop-poor";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:20:"8:exif-objectcycle-a";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:20:"8:exif-objectcycle-p";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:20:"8:exif-objectcycle-b";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:25:"8:exif-ycbcrpositioning-1";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:25:"8:exif-ycbcrpositioning-2";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:21:"8:exif-dc-contributor";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:18:"8:exif-dc-coverage";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:14:"8:exif-dc-date";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:19:"8:exif-dc-publisher";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:18:"8:exif-dc-relation";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:16:"8:exif-dc-rights";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:16:"8:exif-dc-source";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:14:"8:exif-dc-type";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:22:"8:exif-rating-rejected";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:31:"8:exif-isospeedratings-overflow";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:29:"8:exif-maxaperturevalue-value";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:22:"8:exif-iimcategory-ace";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:22:"8:exif-iimcategory-clj";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:22:"8:exif-iimcategory-dis";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:22:"8:exif-iimcategory-fin";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:22:"8:exif-iimcategory-edu";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:22:"8:exif-iimcategory-evn";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:22:"8:exif-iimcategory-hth";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:22:"8:exif-iimcategory-hum";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:22:"8:exif-iimcategory-lab";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:22:"8:exif-iimcategory-lif";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:22:"8:exif-iimcategory-pol";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:22:"8:exif-iimcategory-rel";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:22:"8:exif-iimcategory-sci";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:22:"8:exif-iimcategory-soi";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:22:"8:exif-iimcategory-spo";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:22:"8:exif-iimcategory-war";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:22:"8:exif-iimcategory-wea";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:21:"8:exif-urgency-normal";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:18:"8:exif-urgency-low";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:19:"8:exif-urgency-high";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:20:"8:exif-urgency-other";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:14:"8:trackbackbox";a:2:{i:0;R:38;i:1;R:39;}s:11:"8:trackback";a:2:{i:0;R:38;i:1;R:39;}s:18:"8:trackbackexcerpt";a:2:{i:0;R:38;i:1;R:39;}s:17:"8:trackbackremove";a:2:{i:0;R:38;i:1;R:39;}s:15:"8:trackbacklink";a:2:{i:0;R:38;i:1;R:39;}s:19:"8:trackbackdeleteok";a:2:{i:0;R:38;i:1;R:39;}s:26:"8:confirmrecreate-noreason";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:22:"8:confirm-watch-button";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:19:"8:confirm-watch-top";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:24:"8:confirm-unwatch-button";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:21:"8:confirm-unwatch-top";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:30:"8:watchlistedit-normal-explain";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:27:"8:watchlistedit-raw-explain";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:24:"8:mw-core-1.18-signature";R:39;s:18:"8:version-antispam";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:13:"8:version-api";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:27:"8:version-poweredby-credits";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:22:"8:version-license-info";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:18:"8:filepath-summary";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:29:"8:fileduplicatesearch-summary";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:31:"8:fileduplicatesearch-noresults";a:3:{i:0;R:2;i:1;R:39;i:2;R:40;}s:32:"8:mw-core-1.18-specialpages-note";R:39;s:18:"8:backlinksubtitle";a:2:{i:0;R:2;i:1;R:40;}s:20:"8:cannotdelete-title";a:2:{i:0;R:2;i:1;R:40;}s:12:"8:perfcached";a:2:{i:0;R:2;i:1;R:40;}s:14:"8:perfcachedts";a:2:{i:0;R:2;i:1;R:40;}s:18:"8:viewsource-title";a:2:{i:0;R:2;i:1;R:40;}s:14:"8:viewyourtext";a:2:{i:0;R:2;i:1;R:40;}s:19:"8:cannotchangeemail";a:2:{i:0;R:2;i:1;R:40;}s:19:"8:user-mail-no-addy";a:2:{i:0;R:2;i:1;R:40;}s:23:"8:passwordreset-capture";a:2:{i:0;R:2;i:1;R:40;}s:28:"8:passwordreset-capture-help";a:2:{i:0;R:2;i:1;R:40;}s:33:"8:passwordreset-emailsent-capture";a:2:{i:0;R:2;i:1;R:40;}s:34:"8:passwordreset-emailerror-capture";a:2:{i:0;R:2;i:1;R:40;}s:13:"8:changeemail";a:2:{i:0;R:2;i:1;R:40;}s:20:"8:changeemail-header";a:2:{i:0;R:2;i:1;R:40;}s:18:"8:changeemail-text";a:2:{i:0;R:2;i:1;R:40;}s:21:"8:changeemail-no-info";a:2:{i:0;R:2;i:1;R:40;}s:22:"8:changeemail-oldemail";a:2:{i:0;R:2;i:1;R:40;}s:22:"8:changeemail-newemail";a:2:{i:0;R:2;i:1;R:40;}s:18:"8:changeemail-none";a:2:{i:0;R:2;i:1;R:40;}s:20:"8:changeemail-submit";a:2:{i:0;R:2;i:1;R:40;}s:20:"8:changeemail-cancel";a:2:{i:0;R:2;i:1;R:40;}s:15:"8:longpageerror";a:2:{i:0;R:2;i:1;R:40;}s:26:"8:prefs-watchlist-days-max";a:2:{i:0;R:2;i:1;R:40;}s:19:"8:prefs-changeemail";a:2:{i:0;R:2;i:1;R:40;}s:16:"8:prefs-setemail";a:2:{i:0;R:2;i:1;R:40;}s:20:"8:prefs-help-variant";a:2:{i:0;R:2;i:1;R:40;}s:13:"8:editinguser";a:2:{i:0;R:2;i:1;R:40;}s:21:"8:right-passwordreset";a:2:{i:0;R:2;i:1;R:40;}s:17:"8:action-rollback";a:2:{i:0;R:2;i:1;R:40;}s:18:"8:action-sendemail";a:2:{i:0;R:2;i:1;R:40;}s:20:"8:rc-change-size-new";a:2:{i:0;R:2;i:1;R:40;}s:14:"8:rc-old-title";a:2:{i:0;R:2;i:1;R:40;}s:18:"8:filename-toolong";a:2:{i:0;R:2;i:1;R:40;}s:21:"8:backend-fail-stream";a:2:{i:0;R:2;i:1;R:40;}s:21:"8:backend-fail-backup";a:2:{i:0;R:2;i:1;R:40;}s:24:"8:backend-fail-notexists";a:2:{i:0;R:2;i:1;R:40;}s:21:"8:backend-fail-hashes";a:2:{i:0;R:2;i:1;R:40;}s:22:"8:backend-fail-notsame";a:2:{i:0;R:2;i:1;R:40;}s:26:"8:backend-fail-invalidpath";a:2:{i:0;R:2;i:1;R:40;}s:21:"8:backend-fail-delete";a:2:{i:0;R:2;i:1;R:40;}s:28:"8:backend-fail-alreadyexists";a:2:{i:0;R:2;i:1;R:40;}s:20:"8:backend-fail-store";a:2:{i:0;R:2;i:1;R:40;}s:19:"8:backend-fail-copy";a:2:{i:0;R:2;i:1;R:40;}s:19:"8:backend-fail-move";a:2:{i:0;R:2;i:1;R:40;}s:23:"8:backend-fail-opentemp";a:2:{i:0;R:2;i:1;R:40;}s:24:"8:backend-fail-writetemp";a:2:{i:0;R:2;i:1;R:40;}s:24:"8:backend-fail-closetemp";a:2:{i:0;R:2;i:1;R:40;}s:19:"8:backend-fail-read";a:2:{i:0;R:2;i:1;R:40;}s:21:"8:backend-fail-create";a:2:{i:0;R:2;i:1;R:40;}s:23:"8:backend-fail-readonly";a:2:{i:0;R:2;i:1;R:40;}s:21:"8:backend-fail-synced";a:2:{i:0;R:2;i:1;R:40;}s:22:"8:backend-fail-connect";a:2:{i:0;R:2;i:1;R:40;}s:23:"8:backend-fail-internal";a:2:{i:0;R:2;i:1;R:40;}s:26:"8:backend-fail-contenttype";a:2:{i:0;R:2;i:1;R:40;}s:24:"8:backend-fail-batchsize";a:2:{i:0;R:2;i:1;R:40;}s:23:"8:lockmanager-notlocked";a:2:{i:0;R:2;i:1;R:40;}s:28:"8:lockmanager-fail-closelock";a:2:{i:0;R:2;i:1;R:40;}s:29:"8:lockmanager-fail-deletelock";a:2:{i:0;R:2;i:1;R:40;}s:30:"8:lockmanager-fail-acquirelock";a:2:{i:0;R:2;i:1;R:40;}s:27:"8:lockmanager-fail-openlock";a:2:{i:0;R:2;i:1;R:40;}s:30:"8:lockmanager-fail-releaselock";a:2:{i:0;R:2;i:1;R:40;}s:28:"8:lockmanager-fail-db-bucket";a:2:{i:0;R:2;i:1;R:40;}s:29:"8:lockmanager-fail-db-release";a:2:{i:0;R:2;i:1;R:40;}s:30:"8:lockmanager-fail-svr-release";a:2:{i:0;R:2;i:1;R:40;}s:22:"8:invalid-chunk-offset";a:2:{i:0;R:2;i:1;R:40;}s:30:"8:filedelete-maintenance-title";a:2:{i:0;R:2;i:1;R:40;}s:20:"8:wantedfiletext-cat";a:2:{i:0;R:2;i:1;R:40;}s:22:"8:wantedfiletext-nocat";a:2:{i:0;R:2;i:1;R:40;}s:23:"8:prefixindex-namespace";a:2:{i:0;R:2;i:1;R:40;}s:17:"8:defemailsubject";a:2:{i:0;R:2;i:1;R:40;}s:8:"8:wlnote";a:2:{i:0;R:2;i:1;R:40;}s:26:"8:protect-title-notallowed";a:2:{i:0;R:2;i:1;R:40;}s:28:"8:protect-badnamespace-title";a:2:{i:0;R:2;i:1;R:40;}s:27:"8:protect-badnamespace-text";a:2:{i:0;R:2;i:1;R:40;}s:24:"8:protect-expiring-local";a:2:{i:0;R:2;i:1;R:40;}s:23:"8:undelete-search-title";a:2:{i:0;R:2;i:1;R:40;}s:16:"8:undelete-error";a:2:{i:0;R:2;i:1;R:40;}s:23:"8:blocklist-rangeblocks";a:2:{i:0;R:2;i:1;R:40;}s:11:"8:emaillink";a:2:{i:0;R:2;i:1;R:40;}s:24:"8:delete_and_move_reason";a:2:{i:0;R:2;i:1;R:40;}s:11:"8:exportall";a:2:{i:0;R:2;i:1;R:40;}s:19:"8:exportlistauthors";a:2:{i:0;R:2;i:1;R:40;}s:23:"8:thumbnail-temp-create";a:2:{i:0;R:2;i:1;R:40;}s:23:"8:thumbnail-dest-create";a:2:{i:0;R:2;i:1;R:40;}s:19:"8:import-error-edit";a:2:{i:0;R:2;i:1;R:40;}s:21:"8:import-error-create";a:2:{i:0;R:2;i:1;R:40;}s:24:"8:import-error-interwiki";a:2:{i:0;R:2;i:1;R:40;}s:22:"8:import-error-special";a:2:{i:0;R:2;i:1;R:40;}s:22:"8:import-error-invalid";a:2:{i:0;R:2;i:1;R:40;}s:16:"8:javascripttest";a:2:{i:0;R:2;i:1;R:40;}s:25:"8:javascripttest-backlink";a:2:{i:0;R:2;i:1;R:40;}s:25:"8:javascripttest-disabled";a:2:{i:0;R:2;i:1;R:40;}s:22:"8:javascripttest-title";a:2:{i:0;R:2;i:1;R:40;}s:37:"8:javascripttest-pagetext-noframework";a:2:{i:0;R:2;i:1;R:40;}s:42:"8:javascripttest-pagetext-unknownframework";a:2:{i:0;R:2;i:1;R:40;}s:36:"8:javascripttest-pagetext-frameworks";a:2:{i:0;R:2;i:1;R:40;}s:31:"8:javascripttest-pagetext-skins";a:2:{i:0;R:2;i:1;R:40;}s:27:"8:javascripttest-qunit-name";a:2:{i:0;R:2;i:1;R:40;}s:28:"8:javascripttest-qunit-intro";a:2:{i:0;R:2;i:1;R:40;}s:30:"8:javascripttest-qunit-heading";a:2:{i:0;R:2;i:1;R:40;}s:39:"8:accesskey-watchlistedit-normal-submit";a:2:{i:0;R:2;i:1;R:40;}s:36:"8:accesskey-watchlistedit-raw-submit";a:2:{i:0;R:2;i:1;R:40;}s:37:"8:tooltip-watchlistedit-normal-submit";a:2:{i:0;R:2;i:1;R:40;}s:34:"8:tooltip-watchlistedit-raw-submit";a:2:{i:0;R:2;i:1;R:40;}s:24:"8:show-big-image-preview";a:2:{i:0;R:2;i:1;R:40;}s:22:"8:show-big-image-other";a:2:{i:0;R:2;i:1;R:40;}s:16:"8:seconds-abbrev";a:2:{i:0;R:2;i:1;R:40;}s:16:"8:minutes-abbrev";a:2:{i:0;R:2;i:1;R:40;}s:14:"8:hours-abbrev";a:2:{i:0;R:2;i:1;R:40;}s:13:"8:days-abbrev";a:2:{i:0;R:2;i:1;R:40;}s:9:"8:seconds";a:2:{i:0;R:2;i:1;R:40;}s:9:"8:minutes";a:2:{i:0;R:2;i:1;R:40;}s:7:"8:hours";a:2:{i:0;R:2;i:1;R:40;}s:6:"8:days";a:2:{i:0;R:2;i:1;R:40;}s:5:"8:ago";a:2:{i:0;R:2;i:1;R:40;}s:22:"8:variantname-shi-tfng";a:2:{i:0;R:2;i:1;R:40;}s:22:"8:variantname-shi-latn";a:2:{i:0;R:2;i:1;R:40;}s:17:"8:variantname-shi";a:2:{i:0;R:2;i:1;R:40;}s:16:"8:size-terabytes";a:2:{i:0;R:2;i:1;R:40;}s:16:"8:size-petabytes";a:2:{i:0;R:2;i:1;R:40;}s:15:"8:size-exabytes";a:2:{i:0;R:2;i:1;R:40;}s:16:"8:size-zetabytes";a:2:{i:0;R:2;i:1;R:40;}s:17:"8:size-yottabytes";a:2:{i:0;R:2;i:1;R:40;}s:14:"8:bitrate-bits";a:2:{i:0;R:2;i:1;R:40;}s:18:"8:bitrate-kilobits";a:2:{i:0;R:2;i:1;R:40;}s:18:"8:bitrate-megabits";a:2:{i:0;R:2;i:1;R:40;}s:18:"8:bitrate-gigabits";a:2:{i:0;R:2;i:1;R:40;}s:18:"8:bitrate-terabits";a:2:{i:0;R:2;i:1;R:40;}s:18:"8:bitrate-petabits";a:2:{i:0;R:2;i:1;R:40;}s:17:"8:bitrate-exabits";a:2:{i:0;R:2;i:1;R:40;}s:18:"8:bitrate-zetabits";a:2:{i:0;R:2;i:1;R:40;}s:19:"8:bitrate-yottabits";a:2:{i:0;R:2;i:1;R:40;}s:11:"8:signature";a:2:{i:0;R:2;i:1;R:40;}s:19:"8:specialpages-note";a:2:{i:0;R:2;i:1;R:40;}s:23:"8:compare-invalid-title";a:2:{i:0;R:2;i:1;R:40;}s:26:"8:compare-title-not-exists";a:2:{i:0;R:2;i:1;R:40;}s:29:"8:compare-revision-not-exists";a:2:{i:0;R:2;i:1;R:40;}s:24:"8:logentry-delete-delete";a:2:{i:0;R:2;i:1;R:40;}s:25:"8:logentry-delete-restore";a:2:{i:0;R:2;i:1;R:40;}s:23:"8:logentry-delete-event";a:2:{i:0;R:2;i:1;R:40;}s:26:"8:logentry-delete-revision";a:2:{i:0;R:2;i:1;R:40;}s:30:"8:logentry-delete-event-legacy";a:2:{i:0;R:2;i:1;R:40;}s:33:"8:logentry-delete-revision-legacy";a:2:{i:0;R:2;i:1;R:40;}s:26:"8:logentry-suppress-delete";a:2:{i:0;R:2;i:1;R:40;}s:25:"8:logentry-suppress-event";a:2:{i:0;R:2;i:1;R:40;}s:28:"8:logentry-suppress-revision";a:2:{i:0;R:2;i:1;R:40;}s:32:"8:logentry-suppress-event-legacy";a:2:{i:0;R:2;i:1;R:40;}s:35:"8:logentry-suppress-revision-legacy";a:2:{i:0;R:2;i:1;R:40;}s:23:"8:revdelete-content-hid";a:2:{i:0;R:2;i:1;R:40;}s:23:"8:revdelete-summary-hid";a:2:{i:0;R:2;i:1;R:40;}s:21:"8:revdelete-uname-hid";a:2:{i:0;R:2;i:1;R:40;}s:25:"8:revdelete-content-unhid";a:2:{i:0;R:2;i:1;R:40;}s:25:"8:revdelete-summary-unhid";a:2:{i:0;R:2;i:1;R:40;}s:23:"8:revdelete-uname-unhid";a:2:{i:0;R:2;i:1;R:40;}s:20:"8:logentry-move-move";a:2:{i:0;R:2;i:1;R:40;}s:31:"8:logentry-move-move-noredirect";a:2:{i:0;R:2;i:1;R:40;}s:26:"8:logentry-move-move_redir";a:2:{i:0;R:2;i:1;R:40;}s:37:"8:logentry-move-move_redir-noredirect";a:2:{i:0;R:2;i:1;R:40;}s:24:"8:logentry-patrol-patrol";a:2:{i:0;R:2;i:1;R:40;}s:29:"8:logentry-patrol-patrol-auto";a:2:{i:0;R:2;i:1;R:40;}s:28:"8:logentry-newusers-newusers";a:2:{i:0;R:2;i:1;R:40;}s:26:"8:logentry-newusers-create";a:2:{i:0;R:2;i:1;R:40;}s:27:"8:logentry-newusers-create2";a:2:{i:0;R:2;i:1;R:40;}s:30:"8:logentry-newusers-autocreate";a:2:{i:0;R:2;i:1;R:40;}s:20:"8:feedback-bugornote";a:2:{i:0;R:2;i:1;R:40;}s:18:"8:feedback-subject";a:2:{i:0;R:2;i:1;R:40;}s:18:"8:feedback-message";a:2:{i:0;R:2;i:1;R:40;}s:17:"8:feedback-cancel";a:2:{i:0;R:2;i:1;R:40;}s:17:"8:feedback-submit";a:2:{i:0;R:2;i:1;R:40;}s:17:"8:feedback-adding";a:2:{i:0;R:2;i:1;R:40;}s:17:"8:feedback-error1";a:2:{i:0;R:2;i:1;R:40;}s:17:"8:feedback-error2";a:2:{i:0;R:2;i:1;R:40;}s:17:"8:feedback-error3";a:2:{i:0;R:2;i:1;R:40;}s:17:"8:feedback-thanks";a:2:{i:0;R:2;i:1;R:40;}s:16:"8:feedback-close";a:2:{i:0;R:2;i:1;R:40;}s:19:"8:feedback-bugcheck";a:2:{i:0;R:2;i:1;R:40;}s:17:"8:feedback-bugnew";a:2:{i:0;R:2;i:1;R:40;}s:28:"8:api-error-badaccess-groups";a:2:{i:0;R:2;i:1;R:40;}s:20:"8:api-error-badtoken";a:2:{i:0;R:2;i:1;R:40;}s:30:"8:api-error-copyuploaddisabled";a:2:{i:0;R:2;i:1;R:40;}s:21:"8:api-error-duplicate";a:2:{i:0;R:2;i:1;R:40;}s:29:"8:api-error-duplicate-archive";a:2:{i:0;R:2;i:1;R:40;}s:41:"8:api-error-duplicate-archive-popup-title";a:2:{i:0;R:2;i:1;R:40;}s:33:"8:api-error-duplicate-popup-title";a:2:{i:0;R:2;i:1;R:40;}s:22:"8:api-error-empty-file";a:2:{i:0;R:2;i:1;R:40;}s:21:"8:api-error-emptypage";a:2:{i:0;R:2;i:1;R:40;}s:26:"8:api-error-fetchfileerror";a:2:{i:0;R:2;i:1;R:40;}s:26:"8:api-error-file-too-large";a:2:{i:0;R:2;i:1;R:40;}s:29:"8:api-error-filename-tooshort";a:2:{i:0;R:2;i:1;R:40;}s:27:"8:api-error-filetype-banned";a:2:{i:0;R:2;i:1;R:40;}s:28:"8:api-error-filetype-missing";a:2:{i:0;R:2;i:1;R:40;}s:23:"8:api-error-hookaborted";a:2:{i:0;R:2;i:1;R:40;}s:16:"8:api-error-http";a:2:{i:0;R:2;i:1;R:40;}s:28:"8:api-error-illegal-filename";a:2:{i:0;R:2;i:1;R:40;}s:26:"8:api-error-internal-error";a:2:{i:0;R:2;i:1;R:40;}s:28:"8:api-error-invalid-file-key";a:2:{i:0;R:2;i:1;R:40;}s:24:"8:api-error-missingparam";a:2:{i:0;R:2;i:1;R:40;}s:25:"8:api-error-missingresult";a:2:{i:0;R:2;i:1;R:40;}s:26:"8:api-error-mustbeloggedin";a:2:{i:0;R:2;i:1;R:40;}s:24:"8:api-error-mustbeposted";a:2:{i:0;R:2;i:1;R:40;}s:23:"8:api-error-noimageinfo";a:2:{i:0;R:2;i:1;R:40;}s:20:"8:api-error-nomodule";a:2:{i:0;R:2;i:1;R:40;}s:24:"8:api-error-ok-but-empty";a:2:{i:0;R:2;i:1;R:40;}s:21:"8:api-error-overwrite";a:2:{i:0;R:2;i:1;R:40;}s:23:"8:api-error-stashfailed";a:2:{i:0;R:2;i:1;R:40;}s:19:"8:api-error-timeout";a:2:{i:0;R:2;i:1;R:40;}s:24:"8:api-error-unclassified";a:2:{i:0;R:2;i:1;R:40;}s:24:"8:api-error-unknown-code";a:2:{i:0;R:2;i:1;R:40;}s:25:"8:api-error-unknown-error";a:2:{i:0;R:2;i:1;R:40;}s:27:"8:api-error-unknown-warning";a:2:{i:0;R:2;i:1;R:40;}s:24:"8:api-error-unknownerror";a:2:{i:0;R:2;i:1;R:40;}s:26:"8:api-error-uploaddisabled";a:2:{i:0;R:2;i:1;R:40;}s:30:"8:api-error-verification-error";a:2:{i:0;R:2;i:1;R:40;}s:16:"8:antispoof-desc";a:4:{i:0;s:13:"ext-antispoof";i:1;R:799;i:2;s:15:"ext-0-wikimedia";i:3;s:20:"ext-0-wikimedia-main";}s:24:"8:antispoof-conflict-top";a:4:{i:0;R:3233;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:25:"8:antispoof-conflict-item";a:4:{i:0;R:3233;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:27:"8:antispoof-conflict-bottom";a:4:{i:0;R:3233;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:24:"8:antispoof-name-illegal";a:4:{i:0;R:3233;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:20:"8:antispoof-bad-char";a:4:{i:0;R:3233;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:34:"8:antispoof-bad-char-non-printable";a:4:{i:0;R:3233;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:19:"8:antispoof-badtype";a:4:{i:0;R:3233;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:17:"8:antispoof-empty";a:4:{i:0;R:3233;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:23:"8:antispoof-blacklisted";a:4:{i:0;R:3233;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:21:"8:antispoof-combining";a:4:{i:0;R:3233;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:22:"8:antispoof-unassigned";a:4:{i:0;R:3233;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:22:"8:antispoof-deprecated";a:4:{i:0;R:3233;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:21:"8:antispoof-noletters";a:4:{i:0;R:3233;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:24:"8:antispoof-mixedscripts";a:4:{i:0;R:3233;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:20:"8:antispoof-tooshort";a:4:{i:0;R:3233;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:18:"8:antispoof-ignore";a:4:{i:0;R:3233;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:26:"8:right-override-antispoof";a:4:{i:0;R:3233;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:19:"8:assert_edit_title";a:4:{i:0;s:14:"ext-assertedit";i:1;R:799;i:2;R:3234;i:3;R:3235;}s:17:"8:assertedit-desc";a:4:{i:0;R:3254;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:21:"8:assert_edit_message";a:4:{i:0;R:3254;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:7:"8:babel";a:4:{i:0;s:9:"ext-babel";i:1;R:799;i:2;R:3234;i:3;R:3235;}s:12:"8:babel-desc";a:4:{i:0;R:3258;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:11:"8:babel-url";a:4:{i:0;R:3258;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:18:"8:babel-footer-url";a:4:{i:0;R:3258;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:24:"8:babel-autocreate-abort";a:4:{i:0;R:3258;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:25:"8:babel-autocreate-reason";a:4:{i:0;R:3258;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:30:"8:babel-autocreate-text-levels";a:4:{i:0;R:3258;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:28:"8:babel-autocreate-text-main";a:4:{i:0;R:3258;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:23:"8:babel-autocreate-user";a:4:{i:0;R:3258;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:9:"8:babel-0";a:4:{i:0;R:3258;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:9:"8:babel-1";a:4:{i:0;R:3258;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:9:"8:babel-2";a:4:{i:0;R:3258;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:9:"8:babel-3";a:4:{i:0;R:3258;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:9:"8:babel-4";a:4:{i:0;R:3258;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:9:"8:babel-5";a:4:{i:0;R:3258;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:9:"8:babel-n";a:4:{i:0;R:3258;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:11:"8:babel-0-n";a:4:{i:0;R:3258;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:11:"8:babel-1-n";a:4:{i:0;R:3258;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:11:"8:babel-2-n";a:4:{i:0;R:3258;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:11:"8:babel-3-n";a:4:{i:0;R:3258;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:11:"8:babel-4-n";a:4:{i:0;R:3258;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:11:"8:babel-5-n";a:4:{i:0;R:3258;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:11:"8:babel-n-n";a:4:{i:0;R:3258;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:23:"8:babel-box-cellspacing";a:4:{i:0;R:3258;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:23:"8:babel-box-cellpadding";a:4:{i:0;R:3258;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:19:"8:babel-cellspacing";a:4:{i:0;R:3258;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:19:"8:babel-cellpadding";a:4:{i:0;R:3258;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:14:"8:babel-portal";a:4:{i:0;R:3258;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:16:"8:babel-template";a:4:{i:0;R:3258;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:14:"8:babel-footer";a:4:{i:0;R:3258;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:14:"8:categorytree";a:4:{i:0;s:16:"ext-categorytree";i:1;R:799;i:2;R:3234;i:3;R:3235;}s:22:"8:categorytree-portlet";a:4:{i:0;R:3289;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:21:"8:categorytree-legend";a:4:{i:0;R:3289;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:19:"8:categorytree-desc";a:4:{i:0;R:3289;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:21:"8:categorytree-header";a:4:{i:0;R:3289;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:23:"8:categorytree-category";a:4:{i:0;R:3289;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:17:"8:categorytree-go";a:4:{i:0;R:3289;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:22:"8:categorytree-parents";a:4:{i:0;R:3289;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:30:"8:categorytree-mode-categories";a:4:{i:0;R:3289;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:25:"8:categorytree-mode-pages";a:4:{i:0;R:3289;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:23:"8:categorytree-mode-all";a:4:{i:0;R:3289;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:23:"8:categorytree-collapse";a:4:{i:0;R:3289;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:21:"8:categorytree-expand";a:4:{i:0;R:3289;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:30:"8:categorytree-collapse-bullet";a:4:{i:0;R:3289;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:28:"8:categorytree-expand-bullet";a:4:{i:0;R:3289;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:27:"8:categorytree-empty-bullet";a:4:{i:0;R:3289;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:26:"8:categorytree-page-bullet";a:4:{i:0;R:3289;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:28:"8:categorytree-member-counts";a:4:{i:0;R:3289;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:25:"8:categorytree-member-num";a:4:{i:0;R:3289;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:29:"8:categorytree-num-categories";a:4:{i:0;R:3289;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:24:"8:categorytree-num-pages";a:4:{i:0;R:3289;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:24:"8:categorytree-num-files";a:4:{i:0;R:3289;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:24:"8:categorytree-num-empty";a:4:{i:0;R:3289;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:19:"8:categorytree-load";a:4:{i:0;R:3289;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:22:"8:categorytree-loading";a:4:{i:0;R:3289;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:28:"8:categorytree-nothing-found";a:4:{i:0;R:3289;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:31:"8:categorytree-no-subcategories";a:4:{i:0;R:3289;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:35:"8:categorytree-no-parent-categories";a:4:{i:0;R:3289;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:23:"8:categorytree-no-pages";a:4:{i:0;R:3289;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:24:"8:categorytree-not-found";a:4:{i:0;R:3289;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:20:"8:categorytree-error";a:4:{i:0;R:3289;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:20:"8:categorytree-retry";a:4:{i:0;R:3289;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:14:"8:mergeaccount";a:4:{i:0;s:15:"ext-centralauth";i:1;R:799;i:2;R:3234;i:3;R:3235;}s:23:"8:centralauth-groupname";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:18:"8:centralauth-desc";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:28:"8:centralauth-antispoof-desc";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:31:"8:centralauth-mergeaccount-desc";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:26:"8:centralauth-merge-denied";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:29:"8:centralauth-merge-notlogged";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:27:"8:centralauth-merge-welcome";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:31:"8:centralauth-merge-step1-title";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:32:"8:centralauth-merge-step1-detail";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:32:"8:centralauth-merge-step1-submit";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:31:"8:centralauth-merge-step2-title";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:32:"8:centralauth-merge-step2-detail";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:32:"8:centralauth-merge-step2-submit";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:35:"8:centralauth-merge-dryrun-complete";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:37:"8:centralauth-merge-dryrun-incomplete";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:29:"8:centralauth-merge-dryrun-or";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:31:"8:centralauth-merge-dryrun-home";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:31:"8:centralauth-merge-step3-title";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:32:"8:centralauth-merge-step3-detail";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:32:"8:centralauth-merge-step3-submit";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:31:"8:centralauth-merge-no-accounts";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:33:"8:centralauth-merge-home-password";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:22:"8:centralauth-complete";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:24:"8:centralauth-incomplete";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:27:"8:centralauth-complete-text";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:29:"8:centralauth-incomplete-text";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:28:"8:centralauth-not-owner-text";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:26:"8:centralauth-blocked-text";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:27:"8:centralauth-notice-dryrun";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:29:"8:centralauth-disabled-dryrun";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:26:"8:centralauth-error-locked";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:27:"8:centralauth-readmore-text";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:29:"8:centralauth-list-home-title";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:30:"8:centralauth-list-home-dryrun";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:33:"8:centralauth-list-attached-title";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:27:"8:centralauth-list-attached";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:34:"8:centralauth-list-attached-dryrun";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:35:"8:centralauth-list-unattached-title";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:29:"8:centralauth-list-unattached";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:26:"8:centralauth-foreign-link";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:35:"8:centralauth-foreign-contributions";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:34:"8:centralauth-merge-method-primary";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:32:"8:centralauth-merge-method-empty";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:31:"8:centralauth-merge-method-mail";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:35:"8:centralauth-merge-method-password";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:32:"8:centralauth-merge-method-admin";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:30:"8:centralauth-merge-method-new";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:32:"8:centralauth-merge-method-login";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:39:"8:centralauth-merge-method-primary-desc";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:37:"8:centralauth-merge-method-empty-desc";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:36:"8:centralauth-merge-method-mail-desc";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:40:"8:centralauth-merge-method-password-desc";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:37:"8:centralauth-merge-method-admin-desc";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:35:"8:centralauth-merge-method-new-desc";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:37:"8:centralauth-merge-method-login-desc";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:26:"8:centralauth-finish-title";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:25:"8:centralauth-finish-text";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:29:"8:centralauth-finish-password";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:26:"8:centralauth-finish-login";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:38:"8:centralauth-finish-send-confirmation";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:29:"8:centralauth-finish-problems";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:31:"8:centralauth-finish-noconfirms";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:31:"8:centralauth-finish-incomplete";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:27:"8:centralauth-merge-attempt";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:34:"8:centralauth-attach-list-attached";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:26:"8:centralauth-attach-title";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:25:"8:centralauth-attach-text";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:27:"8:centralauth-attach-submit";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:28:"8:centralauth-attach-success";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:13:"8:centralauth";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:25:"8:centralauth-admin-intro";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:26:"8:centralauth-admin-manage";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:28:"8:centralauth-admin-username";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:29:"8:centralauth-admin-lookup-ro";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:29:"8:centralauth-admin-lookup-rw";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:30:"8:centralauth-admin-permission";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:30:"8:centralauth-admin-no-unified";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:31:"8:centralauth-admin-info-header";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:27:"8:centralauth-admin-info-id";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:35:"8:centralauth-admin-info-registered";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:29:"8:centralauth-admin-info-home";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:34:"8:centralauth-admin-info-editcount";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:31:"8:centralauth-admin-info-locked";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:31:"8:centralauth-admin-info-hidden";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:26:"8:centralauth-admin-nohome";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:23:"8:centralauth-admin-yes";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:22:"8:centralauth-admin-no";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:31:"8:centralauth-admin-hidden-list";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:36:"8:centralauth-admin-hidden-oversight";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:34:"8:centralauth-admin-list-legend-ro";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:34:"8:centralauth-admin-list-legend-rw";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:30:"8:centralauth-admin-unattached";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:30:"8:centralauth-admin-notblocked";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:27:"8:centralauth-admin-blocked";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:33:"8:centralauth-admin-blocked-indef";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:28:"8:centralauth-admin-blocklog";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:34:"8:centralauth-admin-list-localwiki";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:36:"8:centralauth-admin-list-attached-on";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:31:"8:centralauth-admin-list-method";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:34:"8:centralauth-admin-list-editcount";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:32:"8:centralauth-admin-list-blocked";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:27:"8:centralauth-admin-unmerge";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:25:"8:centralauth-admin-merge";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:29:"8:centralauth-admin-bad-input";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:33:"8:centralauth-admin-none-selected";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:36:"8:centralauth-admin-already-unmerged";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:35:"8:centralauth-admin-unmerge-success";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:32:"8:centralauth-admin-delete-title";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:38:"8:centralauth-admin-delete-description";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:33:"8:centralauth-admin-delete-button";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:34:"8:centralauth-admin-delete-success";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:31:"8:centralauth-admin-nonexistent";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:38:"8:centralauth-admin-delete-nonexistent";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:28:"8:centralauth-token-mismatch";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:26:"8:centralauth-admin-reason";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:32:"8:centralauth-admin-reason-other";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:38:"8:centralauth-admin-unhide-nonexistent";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:26:"8:centralauth-admin-status";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:32:"8:centralauth-admin-status-intro";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:33:"8:centralauth-admin-status-locked";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:36:"8:centralauth-admin-status-locked-no";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:37:"8:centralauth-admin-status-locked-yes";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:33:"8:centralauth-admin-status-hidden";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:36:"8:centralauth-admin-status-hidden-no";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:38:"8:centralauth-admin-status-hidden-list";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:43:"8:centralauth-admin-status-hidden-oversight";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:33:"8:centralauth-admin-status-submit";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:38:"8:centralauth-admin-status-nonexistent";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:37:"8:centralauth-admin-setstatus-success";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:34:"8:centralauth-admin-status-reasons";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:30:"8:centralauth-admin-logsnippet";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:34:"8:centralauth-admin-suppressreason";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:13:"8:globalusers";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:30:"8:centralauth-listusers-locked";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:32:"8:centralauth-listusers-attached";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:28:"8:centralauth-listusers-item";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:31:"8:centralauth-listusers-nolocal";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:25:"8:centralauth-seconds-ago";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:25:"8:centralauth-minutes-ago";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:23:"8:centralauth-hours-ago";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:22:"8:centralauth-days-ago";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:24:"8:centralauth-months-ago";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:23:"8:centralauth-years-ago";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:26:"8:centralauth-prefs-status";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:31:"8:centralauth-prefs-not-managed";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:30:"8:centralauth-prefs-unattached";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:28:"8:centralauth-prefs-complete";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:29:"8:centralauth-prefs-migration";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:34:"8:centralauth-prefs-count-attached";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:36:"8:centralauth-prefs-count-unattached";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:37:"8:centralauth-prefs-detail-unattached";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:26:"8:centralauth-prefs-manage";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:24:"8:centralauth-prefs-view";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:31:"8:centralauth-renameuser-merged";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:33:"8:centralauth-renameuser-reserved";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:26:"8:centralauth-invalid-wiki";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:28:"8:centralauth-account-exists";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:34:"8:centralauth-account-exists-reset";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:28:"8:centralauth-login-progress";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:29:"8:centralauth-logout-progress";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:29:"8:centralauth-login-no-others";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:30:"8:centralauth-logout-no-others";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:32:"8:centralauth-hidden-blockreason";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:22:"8:centralauth-log-name";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:24:"8:centralauth-log-header";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:30:"8:centralauth-log-entry-delete";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:28:"8:centralauth-log-entry-lock";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:30:"8:centralauth-log-entry-unlock";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:28:"8:centralauth-log-entry-hide";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:30:"8:centralauth-log-entry-unhide";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:35:"8:centralauth-log-entry-lockandhide";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:33:"8:centralauth-log-entry-chgstatus";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:31:"8:centralauth-log-status-locked";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:31:"8:centralauth-log-status-hidden";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:36:"8:centralauth-log-status-oversighted";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:29:"8:centralauth-log-status-none";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:28:"8:centralauth-rightslog-name";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:40:"8:centralauth-rightslog-entry-usergroups";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:40:"8:centralauth-rightslog-entry-groupperms";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:41:"8:centralauth-rightslog-entry-groupperms2";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:41:"8:centralauth-rightslog-entry-groupperms3";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:30:"8:centralauth-rightslog-header";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:36:"8:centralauth-rightslog-entry-newset";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:39:"8:centralauth-rightslog-entry-setrename";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:40:"8:centralauth-rightslog-entry-setnewtype";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:39:"8:centralauth-rightslog-entry-setchange";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:39:"8:centralauth-rightslog-entry-deleteset";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:33:"8:centralauth-rightslog-set-optin";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:34:"8:centralauth-rightslog-set-optout";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:11:"8:autologin";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:28:"8:centralauth-autologin-desc";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:23:"8:globalgroupmembership";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:24:"8:globalgrouppermissions";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:40:"8:centralauth-globalgroupperms-grouplist";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:44:"8:centralauth-globalgroupperms-grouplistitem";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:39:"8:centralauth-globalgroupperms-nogroups";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:34:"8:centralauth-existinggroup-legend";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:29:"8:centralauth-newgroup-legend";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:28:"8:centralauth-newgroup-intro";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:43:"8:centralauth-globalgroupperms-newgroupname";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:49:"8:centralauth-globalgroupperms-creategroup-submit";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:32:"8:centralauth-editgroup-subtitle";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:32:"8:centralauth-editgroup-fieldset";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:28:"8:centralauth-editgroup-name";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:31:"8:centralauth-editgroup-display";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:36:"8:centralauth-editgroup-display-edit";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:30:"8:centralauth-editgroup-member";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:35:"8:centralauth-editgroup-member-edit";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:31:"8:centralauth-editgroup-members";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:36:"8:centralauth-editgroup-members-link";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:36:"8:centralauth-editgroup-restrictions";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:29:"8:centralauth-editgroup-noset";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:30:"8:centralauth-editgroup-submit";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:29:"8:centralauth-editgroup-perms";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:30:"8:centralauth-editgroup-reason";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:31:"8:centralauth-editgroup-success";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:36:"8:centralauth-editgroup-success-text";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:32:"8:centralauth-editgroup-editsets";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:46:"8:centralauth-globalgrouppermissions-knownwiki";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:48:"8:centralauth-globalgroupmembership-badknownwiki";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:21:"8:centralauth-editset";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:31:"8:centralauth-editset-legend-rw";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:31:"8:centralauth-editset-legend-ro";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:30:"8:centralauth-editset-intro-rw";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:30:"8:centralauth-editset-intro-ro";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:29:"8:centralauth-editset-item-rw";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:29:"8:centralauth-editset-item-ro";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:25:"8:centralauth-editset-new";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:30:"8:centralauth-editset-notfound";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:27:"8:centralauth-editset-optin";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:28:"8:centralauth-editset-optout";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:33:"8:centralauth-editset-legend-edit";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:33:"8:centralauth-editset-legend-view";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:32:"8:centralauth-editset-legend-new";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:35:"8:centralauth-editset-legend-delete";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:30:"8:centralauth-editset-subtitle";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:26:"8:centralauth-editset-name";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:26:"8:centralauth-editset-type";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:27:"8:centralauth-editset-wikis";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:31:"8:centralauth-editset-restwikis";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:28:"8:centralauth-editset-reason";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:28:"8:centralauth-editset-submit";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:35:"8:centralauth-editset-submit-delete";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:29:"8:centralauth-editset-badname";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:29:"8:centralauth-editset-badtype";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:31:"8:centralauth-editset-setexists";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:29:"8:centralauth-editset-nowikis";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:31:"8:centralauth-editset-grouplink";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:27:"8:centralauth-editset-nouse";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:27:"8:centralauth-editset-usage";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:30:"8:centralauth-editset-badwikis";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:29:"8:centralauth-editset-success";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:36:"8:centralauth-editset-success-delete";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:28:"8:centralauth-editset-return";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:22:"8:centralauth-readonly";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:26:"8:centralauth-readonlytext";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:29:"8:right-globalgroupmembership";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:31:"8:right-centralauth-autoaccount";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:27:"8:right-centralauth-unmerge";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:24:"8:right-centralauth-lock";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:29:"8:right-centralauth-oversight";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:25:"8:right-centralauth-merge";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:30:"8:right-globalgrouppermissions";a:4:{i:0;R:3322;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:15:"8:centralnotice";a:4:{i:0;s:17:"ext-centralnotice";i:1;R:799;i:2;R:3234;i:3;R:3235;}s:16:"8:noticetemplate";a:4:{i:0;R:3587;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:18:"8:bannerallocation";a:4:{i:0;R:3587;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:19:"8:centralnoticelogs";a:4:{i:0;R:3587;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:27:"8:right-centralnotice-admin";a:4:{i:0;R:3587;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:28:"8:action-centralnotice-admin";a:4:{i:0;R:3587;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:20:"8:centralnotice-desc";a:4:{i:0;R:3587;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:23:"8:centralnotice-summary";a:4:{i:0;R:3587;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:21:"8:centralnotice-query";a:4:{i:0;R:3587;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:27:"8:centralnotice-notice-name";a:4:{i:0;R:3587;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:24:"8:centralnotice-end-date";a:4:{i:0;R:3587;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:23:"8:centralnotice-enabled";a:4:{i:0;R:3587;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:22:"8:centralnotice-modify";a:4:{i:0;R:3587;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:20:"8:centralnotice-view";a:4:{i:0;R:3587;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:27:"8:centralnotice-save-banner";a:4:{i:0;R:3587;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:23:"8:centralnotice-preview";a:4:{i:0;R:3587;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:25:"8:centralnotice-nopreview";a:4:{i:0;R:3587;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:23:"8:centralnotice-add-new";a:4:{i:0;R:3587;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:22:"8:centralnotice-remove";a:4:{i:0;R:3587;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:33:"8:centralnotice-translate-heading";a:4:{i:0;R:3587;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:22:"8:centralnotice-manage";a:4:{i:0;R:3587;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:32:"8:centralnotice-manage-templates";a:4:{i:0;R:3587;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:19:"8:centralnotice-add";a:4:{i:0;R:3587;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:26:"8:centralnotice-add-notice";a:4:{i:0;R:3587;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:27:"8:centralnotice-edit-notice";a:4:{i:0;R:3587;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:28:"8:centralnotice-add-template";a:4:{i:0;R:3587;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:28:"8:centralnotice-show-notices";a:4:{i:0;R:3587;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:30:"8:centralnotice-list-templates";a:4:{i:0;R:3587;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:33:"8:centralnotice-multiple-projects";a:4:{i:0;R:3587;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:34:"8:centralnotice-multiple-languages";a:4:{i:0;R:3587;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:34:"8:centralnotice-multiple-countries";a:4:{i:0;R:3587;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:28:"8:centralnotice-all-projects";a:4:{i:0;R:3587;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:32:"8:centralnotice-language-listing";a:4:{i:0;R:3587;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:28:"8:centralnotice-translations";a:4:{i:0;R:3587;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:28:"8:centralnotice-translate-to";a:4:{i:0;R:3587;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:25:"8:centralnotice-translate";a:4:{i:0;R:3587;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:23:"8:centralnotice-english";a:4:{i:0;R:3587;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:27:"8:centralnotice-banner-name";a:4:{i:0;R:3587;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:22:"8:centralnotice-banner";a:4:{i:0;R:3587;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:30:"8:centralnotice-banner-heading";a:4:{i:0;R:3587;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:25:"8:centralnotice-templates";a:4:{i:0;R:3587;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:22:"8:centralnotice-weight";a:4:{i:0;R:3587;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:22:"8:centralnotice-locked";a:4:{i:0;R:3587;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:22:"8:centralnotice-notice";a:4:{i:0;R:3587;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:30:"8:centralnotice-notice-heading";a:4:{i:0;R:3587;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:23:"8:centralnotice-notices";a:4:{i:0;R:3587;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:29:"8:centralnotice-notice-exists";a:4:{i:0;R:3587;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:27:"8:centralnotice-no-language";a:4:{i:0;R:3587;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:26:"8:centralnotice-no-project";a:4:{i:0;R:3587;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:31:"8:centralnotice-template-exists";a:4:{i:0;R:3587;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:35:"8:centralnotice-notice-doesnt-exist";a:4:{i:0;R:3587;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:42:"8:centralnotice-remove-notice-doesnt-exist";a:4:{i:0;R:3587;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:35:"8:centralnotice-banner-doesnt-exist";a:4:{i:0;R:3587;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:36:"8:centralnotice-template-still-bound";a:4:{i:0;R:3587;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:29:"8:centralnotice-template-body";a:4:{i:0;R:3587;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:19:"8:centralnotice-day";a:4:{i:0;R:3587;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:20:"8:centralnotice-year";a:4:{i:0;R:3587;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:21:"8:centralnotice-month";a:4:{i:0;R:3587;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:21:"8:centralnotice-hours";a:4:{i:0;R:3587;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:19:"8:centralnotice-min";a:4:{i:0;R:3587;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:28:"8:centralnotice-project-lang";a:4:{i:0;R:3587;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:22:"8:centralnotice-select";a:4:{i:0;R:3587;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:33:"8:centralnotice-top-ten-languages";a:4:{i:0;R:3587;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:28:"8:centralnotice-project-name";a:4:{i:0;R:3587;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:26:"8:centralnotice-start-date";a:4:{i:0;R:3587;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:26:"8:centralnotice-start-time";a:4:{i:0;R:3587;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:24:"8:centralnotice-end-time";a:4:{i:0;R:3587;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:34:"8:centralnotice-assigned-templates";a:4:{i:0;R:3587;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:28:"8:centralnotice-no-templates";a:4:{i:0;R:3587;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:37:"8:centralnotice-no-templates-assigned";a:4:{i:0;R:3587;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:35:"8:centralnotice-available-templates";a:4:{i:0;R:3587;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:39:"8:centralnotice-template-already-exists";a:4:{i:0;R:3587;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:32:"8:centralnotice-preview-template";a:4:{i:0;R:3587;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:27:"8:centralnotice-change-lang";a:4:{i:0;R:3587;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:23:"8:centralnotice-weights";a:4:{i:0;R:3587;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:32:"8:centralnotice-notice-is-locked";a:4:{i:0;R:3587;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:23:"8:centralnotice-overlap";a:4:{i:0;R:3587;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:34:"8:centralnotice-invalid-date-range";a:4:{i:0;R:3587;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:27:"8:centralnotice-null-string";a:4:{i:0;R:3587;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:30:"8:centralnotice-confirm-delete";a:4:{i:0;R:3587;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:32:"8:centralnotice-no-notices-exist";a:4:{i:0;R:3587;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:38:"8:centralnotice-no-templates-translate";a:4:{i:0;R:3587;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:27:"8:centralnotice-number-uses";a:4:{i:0;R:3587;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:24:"8:centralnotice-settings";a:4:{i:0;R:3587;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:29:"8:centralnotice-edit-template";a:4:{i:0;R:3587;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:37:"8:centralnotice-edit-template-summary";a:4:{i:0;R:3587;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:23:"8:centralnotice-message";a:4:{i:0;R:3587;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:31:"8:centralnotice-message-not-set";a:4:{i:0;R:3587;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:21:"8:centralnotice-clone";a:4:{i:0;R:3587;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:28:"8:centralnotice-clone-notice";a:4:{i:0;R:3587;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:26:"8:centralnotice-clone-name";a:4:{i:0;R:3587;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:49:"8:centralnotice-preview-all-template-translations";a:4:{i:0;R:3587;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:22:"8:centralnotice-insert";a:4:{i:0;R:3587;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:27:"8:centralnotice-hide-button";a:4:{i:0;R:3587;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:31:"8:centralnotice-collapse-button";a:4:{i:0;R:3587;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:29:"8:centralnotice-expand-button";a:4:{i:0;R:3587;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:28:"8:centralnotice-close-button";a:4:{i:0;R:3587;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:27:"8:centralnotice-close-title";a:4:{i:0;R:3587;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:32:"8:centralnotice-translate-button";a:4:{i:0;R:3587;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:29:"8:centralnotice-donate-button";a:4:{i:0;R:3587;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:30:"8:centralnotice-banner-display";a:4:{i:0;R:3587;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:32:"8:centralnotice-banner-anonymous";a:4:{i:0;R:3587;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:32:"8:centralnotice-banner-logged-in";a:4:{i:0;R:3587;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:27:"8:centralnotice-banner-type";a:4:{i:0;R:3587;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:30:"8:centralnotice-banner-hidable";a:4:{i:0;R:3587;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:34:"8:centralnotice-banner-collapsible";a:4:{i:0;R:3587;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:34:"8:centralnotice-banner-fundraising";a:4:{i:0;R:3587;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:31:"8:centralnotice-banner-autolink";a:4:{i:0;R:3587;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:36:"8:centralnotice-banner-autolink-help";a:4:{i:0;R:3587;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:36:"8:centralnotice-banner-landing-pages";a:4:{i:0;R:3587;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:19:"8:centralnotice-geo";a:4:{i:0;R:3587;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:25:"8:centralnotice-countries";a:4:{i:0;R:3587;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:26:"8:centralnotice-allocation";a:4:{i:0;R:3587;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:31:"8:centralnotice-view-allocation";a:4:{i:0;R:3587;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:39:"8:centralnotice-allocation-instructions";a:4:{i:0;R:3587;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:25:"8:centralnotice-languages";a:4:{i:0;R:3587;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:24:"8:centralnotice-language";a:4:{i:0;R:3587;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:24:"8:centralnotice-projects";a:4:{i:0;R:3587;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:23:"8:centralnotice-country";a:4:{i:0;R:3587;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:29:"8:centralnotice-no-allocation";a:4:{i:0;R:3587;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:38:"8:centralnotice-allocation-description";a:4:{i:0;R:3587;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:26:"8:centralnotice-percentage";a:4:{i:0;R:3587;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:35:"8:centralnotice-documentwrite-error";a:4:{i:0;R:3587;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:25:"8:centralnotice-preferred";a:4:{i:0;R:3587;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:20:"8:centralnotice-logs";a:4:{i:0;R:3587;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:25:"8:centralnotice-view-logs";a:4:{i:0;R:3587;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:25:"8:centralnotice-timestamp";a:4:{i:0;R:3587;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:20:"8:centralnotice-user";a:4:{i:0;R:3587;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:22:"8:centralnotice-action";a:4:{i:0;R:3587;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:30:"8:centralnotice-action-created";a:4:{i:0;R:3587;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:31:"8:centralnotice-action-modified";a:4:{i:0;R:3587;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:30:"8:centralnotice-action-removed";a:4:{i:0;R:3587;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:23:"8:centralnotice-changed";a:4:{i:0;R:3587;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:18:"8:centralnotice-on";a:4:{i:0;R:3587;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:19:"8:centralnotice-off";a:4:{i:0;R:3587;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:21:"8:centralnotice-added";a:4:{i:0;R:3587;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:23:"8:centralnotice-removed";a:4:{i:0;R:3587;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:30:"8:centralnotice-no-assignments";a:4:{i:0;R:3587;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:25:"8:centralnotice-talk-link";a:4:{i:0;R:3587;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:26:"8:centralnotice-user-links";a:4:{i:0;R:3587;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:25:"8:centralnotice-log-label";a:4:{i:0;R:3587;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:33:"8:centralnotice-campaign-settings";a:4:{i:0;R:3587;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:31:"8:centralnotice-banner-settings";a:4:{i:0;R:3587;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:20:"8:centralnotice-anon";a:4:{i:0;R:3587;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:23:"8:centralnotice-account";a:4:{i:0;R:3587;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:27:"8:centralnotice-fundraising";a:4:{i:0;R:3587;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:24:"8:centralnotice-autolink";a:4:{i:0;R:3587;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:28:"8:centralnotice-landingpages";a:4:{i:0;R:3587;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:30:"8:centralnotice-banner-content";a:4:{i:0;R:3587;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:38:"8:centralnotice-banner-content-changed";a:4:{i:0;R:3587;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:23:"8:centralnotice-filters";a:4:{i:0;R:3587;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:20:"8:centralnotice-date";a:4:{i:0;R:3587;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:29:"8:centralnotice-apply-filters";a:4:{i:0;R:3587;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:29:"8:centralnotice-clear-filters";a:4:{i:0;R:3587;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:31:"8:centralnotice-banner-messages";a:4:{i:0;R:3587;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:11:"8:cite-desc";a:4:{i:0;s:8:"ext-cite";i:1;R:799;i:2;R:3234;i:3;R:3235;}s:12:"8:cite_croak";a:4:{i:0;R:3743;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:28:"8:cite_error_key_str_invalid";a:4:{i:0;R:3743;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:32:"8:cite_error_stack_invalid_input";a:4:{i:0;R:3743;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:12:"8:cite_error";a:4:{i:0;R:3743;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:28:"8:cite_error_ref_numeric_key";a:4:{i:0;R:3743;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:23:"8:cite_error_ref_no_key";a:4:{i:0;R:3743;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:30:"8:cite_error_ref_too_many_keys";a:4:{i:0;R:3743;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:25:"8:cite_error_ref_no_input";a:4:{i:0;R:3743;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:42:"8:cite_error_references_invalid_parameters";a:4:{i:0;R:3743;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:48:"8:cite_error_references_invalid_parameters_group";a:4:{i:0;R:3743;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:41:"8:cite_error_references_no_backlink_label";a:4:{i:0;R:3743;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:32:"8:cite_error_no_link_label_group";a:4:{i:0;R:3743;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:31:"8:cite_error_references_no_text";a:4:{i:0;R:3743;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:25:"8:cite_error_included_ref";a:4:{i:0;R:3743;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:36:"8:cite_error_refs_without_references";a:4:{i:0;R:3743;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:42:"8:cite_error_group_refs_without_references";a:4:{i:0;R:3743;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:38:"8:cite_error_references_group_mismatch";a:4:{i:0;R:3743;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:37:"8:cite_error_references_missing_group";a:4:{i:0;R:3743;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:35:"8:cite_error_references_missing_key";a:4:{i:0;R:3743;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:30:"8:cite_error_references_no_key";a:4:{i:0;R:3743;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:36:"8:cite_error_empty_references_define";a:4:{i:0;R:3743;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:34:"8:cite_reference_link_key_with_num";a:4:{i:0;R:3743;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:28:"8:cite_reference_link_prefix";a:4:{i:0;R:3743;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:28:"8:cite_reference_link_suffix";a:4:{i:0;R:3743;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:29:"8:cite_references_link_prefix";a:4:{i:0;R:3743;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:29:"8:cite_references_link_suffix";a:4:{i:0;R:3743;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:21:"8:cite_reference_link";a:4:{i:0;R:3743;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:25:"8:cite_references_no_link";a:4:{i:0;R:3743;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:26:"8:cite_references_link_one";a:4:{i:0;R:3743;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:27:"8:cite_references_link_many";a:4:{i:0;R:3743;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:34:"8:cite_references_link_many_format";a:4:{i:0;R:3743;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:50:"8:cite_references_link_many_format_backlink_labels";a:4:{i:0;R:3743;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:31:"8:cite_references_link_many_sep";a:4:{i:0;R:3743;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:31:"8:cite_references_link_many_and";a:4:{i:0;R:3743;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:24:"8:cite_references_prefix";a:4:{i:0;R:3743;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:24:"8:cite_references_suffix";a:4:{i:0;R:3743;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:19:"8:cite_article_desc";a:4:{i:0;s:15:"ext-citespecial";i:1;R:799;i:2;R:3234;i:3;R:3235;}s:19:"8:cite_article_link";a:4:{i:0;R:3781;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:22:"8:tooltip-cite-article";a:4:{i:0;R:3781;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:24:"8:accesskey-cite-article";a:4:{i:0;R:3781;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:6:"8:cite";a:4:{i:0;R:3781;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:14:"8:cite-summary";a:4:{i:0;R:3781;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:11:"8:cite_page";a:4:{i:0;R:3781;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:13:"8:cite_submit";a:4:{i:0;R:3781;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:11:"8:cite_text";a:4:{i:0;R:3781;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:14:"8:captcha-edit";a:4:{i:0;s:15:"ext-confirmedit";i:1;R:799;i:2;R:3234;i:3;R:3235;}s:14:"8:captcha-desc";a:4:{i:0;R:3791;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:16:"8:captcha-addurl";a:4:{i:0;R:3791;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:18:"8:captcha-badlogin";a:4:{i:0;R:3791;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:23:"8:captcha-createaccount";a:4:{i:0;R:3791;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:28:"8:captcha-createaccount-fail";a:4:{i:0;R:3791;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:16:"8:captcha-create";a:4:{i:0;R:3791;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:19:"8:captcha-sendemail";a:4:{i:0;R:3791;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:24:"8:captcha-sendemail-fail";a:4:{i:0;R:3791;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:23:"8:captcha-disabledinapi";a:4:{i:0;R:3791;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:19:"8:captchahelp-title";a:4:{i:0;R:3791;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:28:"8:captchahelp-cookies-needed";a:4:{i:0;R:3791;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:18:"8:captchahelp-text";a:4:{i:0;R:3791;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:26:"8:captcha-addurl-whitelist";a:4:{i:0;R:3791;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:19:"8:right-skipcaptcha";a:4:{i:0;R:3791;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:19:"8:fancycaptcha-desc";a:4:{i:0;s:27:"ext-confirmeditfancycaptcha";i:1;R:799;i:2;R:3234;i:3;R:3235;}s:21:"8:fancycaptcha-addurl";a:4:{i:0;R:3807;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:23:"8:fancycaptcha-badlogin";a:4:{i:0;R:3807;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:28:"8:fancycaptcha-createaccount";a:4:{i:0;R:3807;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:21:"8:fancycaptcha-create";a:4:{i:0;R:3807;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:19:"8:fancycaptcha-edit";a:4:{i:0;R:3807;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:24:"8:fancycaptcha-sendemail";a:4:{i:0;R:3807;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:15:"8:sitenotice_id";a:4:{i:0;s:25:"ext-dismissablesitenotice";i:1;R:799;i:2;R:3234;i:3;R:3235;}s:18:"8:sitenotice_close";a:4:{i:0;R:3815;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:17:"8:sitenotice-desc";a:4:{i:0;R:3815;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:23:"8:dontswitchmeover-desc";a:4:{i:0;s:20:"ext-dontswitchmeover";i:1;R:799;i:2;R:3234;i:3;R:3235;}s:23:"8:dontswitchmeover-pref";a:4:{i:0;R:3819;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:12:"8:ffeed-desc";a:4:{i:0;s:17:"ext-featuredfeeds";i:1;R:799;i:2;R:3234;i:3;R:3235;}s:15:"8:ffeed-no-feed";a:4:{i:0;R:3822;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:22:"8:ffeed-feed-not-found";a:4:{i:0;R:3822;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:23:"8:ffeed-entry-not-found";a:4:{i:0;R:3822;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:23:"8:ffeed-sidebar-section";a:4:{i:0;R:3822;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:25:"8:ffeed-invalid-timestamp";a:4:{i:0;R:3822;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:28:"8:ffeed-enable-sidebar-links";a:4:{i:0;R:3822;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:21:"8:ffeed-featured-page";a:4:{i:0;R:3822;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:22:"8:ffeed-featured-title";a:4:{i:0;R:3822;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:28:"8:ffeed-featured-short-title";a:4:{i:0;R:3822;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:21:"8:ffeed-featured-desc";a:4:{i:0;R:3822;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:22:"8:ffeed-featured-entry";a:4:{i:0;R:3822;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:17:"8:ffeed-good-page";a:4:{i:0;R:3822;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:18:"8:ffeed-good-title";a:4:{i:0;R:3822;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:24:"8:ffeed-good-short-title";a:4:{i:0;R:3822;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:17:"8:ffeed-good-desc";a:4:{i:0;R:3822;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:18:"8:ffeed-good-entry";a:4:{i:0;R:3822;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:22:"8:ffeed-onthisday-page";a:4:{i:0;R:3822;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:23:"8:ffeed-onthisday-title";a:4:{i:0;R:3822;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:29:"8:ffeed-onthisday-short-title";a:4:{i:0;R:3822;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:22:"8:ffeed-onthisday-desc";a:4:{i:0;R:3822;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:23:"8:ffeed-onthisday-entry";a:4:{i:0;R:3822;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:16:"8:ffeed-dyk-page";a:4:{i:0;R:3822;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:17:"8:ffeed-dyk-title";a:4:{i:0;R:3822;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:23:"8:ffeed-dyk-short-title";a:4:{i:0;R:3822;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:16:"8:ffeed-dyk-desc";a:4:{i:0;R:3822;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:17:"8:ffeed-dyk-entry";a:4:{i:0;R:3822;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:17:"8:ffeed-motd-page";a:4:{i:0;R:3822;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:18:"8:ffeed-motd-title";a:4:{i:0;R:3822;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:24:"8:ffeed-motd-short-title";a:4:{i:0;R:3822;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:17:"8:ffeed-motd-desc";a:4:{i:0;R:3822;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:18:"8:ffeed-motd-entry";a:4:{i:0;R:3822;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:17:"8:ffeed-potd-page";a:4:{i:0;R:3822;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:18:"8:ffeed-potd-title";a:4:{i:0;R:3822;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:24:"8:ffeed-potd-short-title";a:4:{i:0;R:3822;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:17:"8:ffeed-potd-desc";a:4:{i:0;R:3822;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:18:"8:ffeed-potd-entry";a:4:{i:0;R:3822;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:17:"8:ffeed-qotd-page";a:4:{i:0;R:3822;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:18:"8:ffeed-qotd-title";a:4:{i:0;R:3822;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:24:"8:ffeed-qotd-short-title";a:4:{i:0;R:3822;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:17:"8:ffeed-qotd-desc";a:4:{i:0;R:3822;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:18:"8:ffeed-qotd-entry";a:4:{i:0;R:3822;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:26:"8:ffeed-featuredtexts-page";a:4:{i:0;R:3822;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:27:"8:ffeed-featuredtexts-title";a:4:{i:0;R:3822;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:33:"8:ffeed-featuredtexts-short-title";a:4:{i:0;R:3822;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:26:"8:ffeed-featuredtexts-desc";a:4:{i:0;R:3822;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:27:"8:ffeed-featuredtexts-entry";a:4:{i:0;R:3822;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:14:"8:gadgets-desc";a:4:{i:0;s:11:"ext-gadgets";i:1;R:799;i:2;R:3234;i:3;R:3235;}s:15:"8:prefs-gadgets";a:4:{i:0;R:3870;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:19:"8:gadgets-prefstext";a:4:{i:0;R:3870;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:9:"8:gadgets";a:4:{i:0;R:3870;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:20:"8:gadgets-definition";a:4:{i:0;R:3870;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:15:"8:gadgets-title";a:4:{i:0;R:3870;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:18:"8:gadgets-pagetext";a:4:{i:0;R:3870;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:14:"8:gadgets-uses";a:4:{i:0;R:3870;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:25:"8:gadgets-required-rights";a:4:{i:0;R:3870;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:24:"8:gadgets-required-skins";a:4:{i:0;R:3870;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:17:"8:gadgets-default";a:4:{i:0;R:3870;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:16:"8:gadgets-export";a:4:{i:0;R:3870;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:22:"8:gadgets-export-title";a:4:{i:0;R:3870;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:19:"8:gadgets-not-found";a:4:{i:0;R:3870;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:21:"8:gadgets-export-text";a:4:{i:0;R:3870;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:25:"8:gadgets-export-download";a:4:{i:0;R:3870;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:21:"8:globalblocking-desc";a:4:{i:0;s:18:"ext-globalblocking";i:1;R:799;i:2;R:3234;i:3;R:3235;}s:22:"8:globalblocking-block";a:4:{i:0;R:3887;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:31:"8:globalblocking-expiry-options";a:4:{i:0;R:3887;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:29:"8:globalblocking-modify-intro";a:4:{i:0;R:3887;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:28:"8:globalblocking-block-intro";a:4:{i:0;R:3887;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:29:"8:globalblocking-block-reason";a:4:{i:0;R:3887;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:34:"8:globalblocking-block-otherreason";a:4:{i:0;R:3887;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:38:"8:globalblocking-block-reasonotherlist";a:4:{i:0;R:3887;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:38:"8:globalblocking-block-reason-dropdown";a:4:{i:0;R:3887;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:36:"8:globalblocking-block-edit-dropdown";a:4:{i:0;R:3887;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:29:"8:globalblocking-block-expiry";a:4:{i:0;R:3887;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:35:"8:globalblocking-block-expiry-other";a:4:{i:0;R:3887;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:40:"8:globalblocking-block-expiry-otherfield";a:4:{i:0;R:3887;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:29:"8:globalblocking-block-legend";a:4:{i:0;R:3887;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:30:"8:globalblocking-block-options";a:4:{i:0;R:3887;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:26:"8:globalblocking-ipaddress";a:4:{i:0;R:3887;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:28:"8:globalblocking-ipbanononly";a:4:{i:0;R:3887;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:29:"8:globalblocking-block-errors";a:4:{i:0;R:3887;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:32:"8:globalblocking-block-ipinvalid";a:4:{i:0;R:3887;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:36:"8:globalblocking-block-expiryinvalid";a:4:{i:0;R:3887;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:29:"8:globalblocking-block-submit";a:4:{i:0;R:3887;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:30:"8:globalblocking-modify-submit";a:4:{i:0;R:3887;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:30:"8:globalblocking-block-success";a:4:{i:0;R:3887;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:31:"8:globalblocking-modify-success";a:4:{i:0;R:3887;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:33:"8:globalblocking-block-successsub";a:4:{i:0;R:3887;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:34:"8:globalblocking-modify-successsub";a:4:{i:0;R:3887;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:37:"8:globalblocking-block-alreadyblocked";a:4:{i:0;R:3887;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:31:"8:globalblocking-block-bigrange";a:4:{i:0;R:3887;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:27:"8:globalblocking-list-intro";a:4:{i:0;R:3887;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:21:"8:globalblocking-list";a:4:{i:0;R:3887;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:30:"8:globalblocking-search-legend";a:4:{i:0;R:3887;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:26:"8:globalblocking-search-ip";a:4:{i:0;R:3887;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:30:"8:globalblocking-search-submit";a:4:{i:0;R:3887;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:31:"8:globalblocking-list-ipinvalid";a:4:{i:0;R:3887;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:30:"8:globalblocking-search-errors";a:4:{i:0;R:3887;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:31:"8:globalblocking-list-blockitem";a:4:{i:0;R:3887;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:28:"8:globalblocking-list-expiry";a:4:{i:0;R:3887;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:30:"8:globalblocking-list-anononly";a:4:{i:0;R:3887;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:29:"8:globalblocking-list-unblock";a:4:{i:0;R:3887;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:33:"8:globalblocking-list-whitelisted";a:4:{i:0;R:3887;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:31:"8:globalblocking-list-whitelist";a:4:{i:0;R:3887;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:28:"8:globalblocking-list-modify";a:4:{i:0;R:3887;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:31:"8:globalblocking-list-noresults";a:4:{i:0;R:3887;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:27:"8:globalblocking-goto-block";a:4:{i:0;R:3887;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:29:"8:globalblocking-goto-unblock";a:4:{i:0;R:3887;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:28:"8:globalblocking-goto-status";a:4:{i:0;R:3887;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:23:"8:globalblocking-return";a:4:{i:0;R:3887;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:27:"8:globalblocking-notblocked";a:4:{i:0;R:3887;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:24:"8:globalblocking-unblock";a:4:{i:0;R:3887;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:34:"8:globalblocking-unblock-ipinvalid";a:4:{i:0;R:3887;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:31:"8:globalblocking-unblock-legend";a:4:{i:0;R:3887;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:31:"8:globalblocking-unblock-submit";a:4:{i:0;R:3887;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:31:"8:globalblocking-unblock-reason";a:4:{i:0;R:3887;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:34:"8:globalblocking-unblock-unblocked";a:4:{i:0;R:3887;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:31:"8:globalblocking-unblock-errors";a:4:{i:0;R:3887;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:35:"8:globalblocking-unblock-successsub";a:4:{i:0;R:3887;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:33:"8:globalblocking-unblock-subtitle";a:4:{i:0;R:3887;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:30:"8:globalblocking-unblock-intro";a:4:{i:0;R:3887;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:26:"8:globalblocking-whitelist";a:4:{i:0;R:3887;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:37:"8:globalblocking-whitelist-notapplied";a:4:{i:0;R:3887;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:33:"8:globalblocking-whitelist-legend";a:4:{i:0;R:3887;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:33:"8:globalblocking-whitelist-reason";a:4:{i:0;R:3887;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:33:"8:globalblocking-whitelist-status";a:4:{i:0;R:3887;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:38:"8:globalblocking-whitelist-statuslabel";a:4:{i:0;R:3887;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:33:"8:globalblocking-whitelist-submit";a:4:{i:0;R:3887;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:38:"8:globalblocking-whitelist-whitelisted";a:4:{i:0;R:3887;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:40:"8:globalblocking-whitelist-dewhitelisted";a:4:{i:0;R:3887;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:37:"8:globalblocking-whitelist-successsub";a:4:{i:0;R:3887;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:35:"8:globalblocking-whitelist-nochange";a:4:{i:0;R:3887;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:33:"8:globalblocking-whitelist-errors";a:4:{i:0;R:3887;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:32:"8:globalblocking-whitelist-intro";a:4:{i:0;R:3887;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:26:"8:globalblocking-ipblocked";a:4:{i:0;R:3887;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:36:"8:globalblocking-blocked-nopassreset";a:4:{i:0;R:3887;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:24:"8:globalblocking-logpage";a:4:{i:0;R:3887;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:28:"8:globalblocking-logpagetext";a:4:{i:0;R:3887;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:31:"8:globalblocking-block-logentry";a:4:{i:0;R:3887;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:32:"8:globalblocking-block2-logentry";a:4:{i:0;R:3887;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:33:"8:globalblocking-unblock-logentry";a:4:{i:0;R:3887;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:35:"8:globalblocking-whitelist-logentry";a:4:{i:0;R:3887;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:37:"8:globalblocking-dewhitelist-logentry";a:4:{i:0;R:3887;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:32:"8:globalblocking-modify-logentry";a:4:{i:0;R:3887;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:32:"8:globalblocking-logentry-expiry";a:4:{i:0;R:3887;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:34:"8:globalblocking-logentry-noexpiry";a:4:{i:0;R:3887;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:24:"8:globalblocking-loglink";a:4:{i:0;R:3887;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:24:"8:globalblocking-showlog";a:4:{i:0;R:3887;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:17:"8:globalblocklist";a:4:{i:0;R:3887;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:13:"8:globalblock";a:4:{i:0;R:3887;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:19:"8:globalblockstatus";a:4:{i:0;R:3887;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:19:"8:removeglobalblock";a:4:{i:0;R:3887;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:19:"8:right-globalblock";a:4:{i:0;R:3887;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:20:"8:action-globalblock";a:4:{i:0;R:3887;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:21:"8:right-globalunblock";a:4:{i:0;R:3887;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:22:"8:action-globalunblock";a:4:{i:0;R:3887;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:29:"8:right-globalblock-whitelist";a:4:{i:0;R:3887;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:30:"8:action-globalblock-whitelist";a:4:{i:0;R:3887;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:26:"8:right-globalblock-exempt";a:4:{i:0;R:3887;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:27:"8:action-globalblock-exempt";a:4:{i:0;R:3887;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:13:"8:globalusage";a:4:{i:0;s:15:"ext-globalusage";i:1;R:799;i:2;R:3234;i:3;R:3235;}s:17:"8:globalusage-for";a:4:{i:0;R:3985;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:18:"8:globalusage-desc";a:4:{i:0;R:3985;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:16:"8:globalusage-ok";a:4:{i:0;R:3985;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:18:"8:globalusage-text";a:4:{i:0;R:3985;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:24:"8:globalusage-no-results";a:4:{i:0;R:3985;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:21:"8:globalusage-on-wiki";a:4:{i:0;R:3985;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:21:"8:globalusage-of-file";a:4:{i:0;R:3985;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:18:"8:globalusage-more";a:4:{i:0;R:3985;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:25:"8:globalusage-filterlocal";a:4:{i:0;R:3985;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:15:"8:imagemap_desc";a:4:{i:0;s:12:"ext-imagemap";i:1;R:799;i:2;R:3234;i:3;R:3235;}s:19:"8:imagemap_no_image";a:4:{i:0;R:3996;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:24:"8:imagemap_invalid_image";a:4:{i:0;R:3996;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:20:"8:imagemap_bad_image";a:4:{i:0;R:3996;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:18:"8:imagemap_no_link";a:4:{i:0;R:3996;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:24:"8:imagemap_invalid_title";a:4:{i:0;R:3996;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:24:"8:imagemap_missing_coord";a:4:{i:0;R:3996;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:29:"8:imagemap_unrecognised_shape";a:4:{i:0;R:3996;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:24:"8:imagemap_invalid_coord";a:4:{i:0;R:3996;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:23:"8:imagemap_invalid_desc";a:4:{i:0;R:3996;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:22:"8:imagemap_description";a:4:{i:0;R:3996;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:21:"8:imagemap_desc_types";a:4:{i:0;R:3996;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:19:"8:imagemap_poly_odd";a:4:{i:0;R:3996;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:15:"8:inputbox-desc";a:4:{i:0;s:12:"ext-inputbox";i:1;R:799;i:2;R:3234;i:3;R:3235;}s:24:"8:inputbox-error-no-type";a:4:{i:0;R:4010;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:25:"8:inputbox-error-bad-type";a:4:{i:0;R:4010;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:10:"8:tryexact";a:4:{i:0;R:4010;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:16:"8:searchfulltext";a:4:{i:0;R:4010;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:15:"8:createarticle";a:4:{i:0;R:4010;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:18:"8:inputbox-ns-main";a:4:{i:0;R:4010;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:19:"8:intersection-desc";a:4:{i:0;s:16:"ext-intersection";i:1;R:799;i:2;R:3234;i:3;R:3235;}s:26:"8:intersection_toomanycats";a:4:{i:0;R:4018;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:24:"8:intersection_noresults";a:4:{i:0;R:4018;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:28:"8:intersection_noincludecats";a:4:{i:0;R:4018;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:22:"8:mobile-frontend-desc";a:4:{i:0;s:18:"ext-mobilefrontend";i:1;R:799;i:2;R:3234;i:3;R:3235;}s:31:"8:mobile-frontend-search-submit";a:4:{i:0;R:4023;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:32:"8:mobile-frontend-search-results";a:4:{i:0;R:4023;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:34:"8:mobile-frontend-no-article-found";a:4:{i:0;R:4023;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:34:"8:mobile-frontend-featured-article";a:4:{i:0;R:4023;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:29:"8:mobile-frontend-in-the-news";a:4:{i:0;R:4023;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:29:"8:mobile-frontend-home-button";a:4:{i:0;R:4023;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:31:"8:mobile-frontend-random-button";a:4:{i:0;R:4023;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:40:"8:mobile-frontend-back-to-top-of-section";a:4:{i:0;R:4023;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:29:"8:mobile-frontend-show-button";a:4:{i:0;R:4023;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:29:"8:mobile-frontend-hide-button";a:4:{i:0;R:4023;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:32:"8:mobile-frontend-empty-homepage";a:4:{i:0;R:4023;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:32:"8:mobile-frontend-disable-button";a:4:{i:0;R:4023;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:29:"8:mobile-frontend-back-button";a:4:{i:0;R:4023;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:30:"8:mobile-frontend-regular-site";a:4:{i:0;R:4023;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:34:"8:mobile-frontend-error-page-title";a:4:{i:0;R:4023;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:33:"8:mobile-frontend-error-page-text";a:4:{i:0;R:4023;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:30:"8:mobile-frontend-are-you-sure";a:4:{i:0;R:4023;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:33:"8:mobile-frontend-explain-disable";a:4:{i:0;R:4023;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:25:"8:mobile-frontend-nav-end";a:4:{i:0;R:4023;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:25:"8:mobile-frontend-nav-top";a:4:{i:0;R:4023;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:26:"8:mobile-frontend-nav-edit";a:4:{i:0;R:4023;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:29:"8:mobile-frontend-nav-history";a:4:{i:0;R:4023;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:29:"8:mobile-frontend-search-text";a:4:{i:0;R:4023;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:28:"8:mobile-frontend-contact-us";a:4:{i:0;R:4023;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:29:"8:mobile-frontend-author-link";a:4:{i:0;R:4023;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:39:"8:mobile-frontend-download-full-version";a:4:{i:0;R:4023;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:32:"8:mobile-frontend-file-namespace";a:4:{i:0;R:4023;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:30:"8:mobile-frontend-wml-continue";a:4:{i:0;R:4023;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:26:"8:mobile-frontend-wml-back";a:4:{i:0;R:4023;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:22:"8:mobile-frontend-view";a:4:{i:0;R:4023;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:32:"8:mobile-frontend-opt-in-message";a:4:{i:0;R:4023;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:35:"8:mobile-frontend-opt-in-yes-button";a:4:{i:0;R:4023;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:34:"8:mobile-frontend-opt-in-no-button";a:4:{i:0;R:4023;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:30:"8:mobile-frontend-opt-in-title";a:4:{i:0;R:4023;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:32:"8:mobile-frontend-opt-in-explain";a:4:{i:0;R:4023;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:33:"8:mobile-frontend-opt-out-message";a:4:{i:0;R:4023;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:36:"8:mobile-frontend-opt-out-yes-button";a:4:{i:0;R:4023;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:35:"8:mobile-frontend-opt-out-no-button";a:4:{i:0;R:4023;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:31:"8:mobile-frontend-opt-out-title";a:4:{i:0;R:4023;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:33:"8:mobile-frontend-opt-out-explain";a:4:{i:0;R:4023;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:32:"8:mobile-frontend-disable-images";a:4:{i:0;R:4023;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:31:"8:mobile-frontend-enable-images";a:4:{i:0;R:4023;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:28:"8:mobile-frontend-news-items";a:4:{i:0;R:4023;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:38:"8:mobile-frontend-leave-feedback-title";a:4:{i:0;R:4023;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:39:"8:mobile-frontend-leave-feedback-notice";a:4:{i:0;R:4023;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:40:"8:mobile-frontend-leave-feedback-subject";a:4:{i:0;R:4023;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:40:"8:mobile-frontend-leave-feedback-message";a:4:{i:0;R:4023;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:39:"8:mobile-frontend-leave-feedback-cancel";a:4:{i:0;R:4023;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:39:"8:mobile-frontend-leave-feedback-submit";a:4:{i:0;R:4023;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:42:"8:mobile-frontend-leave-feedback-link-text";a:4:{i:0;R:4023;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:32:"8:mobile-frontend-leave-feedback";a:4:{i:0;R:4023;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:31:"8:mobile-frontend-feedback-page";a:4:{i:0;R:4023;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:39:"8:mobile-frontend-leave-feedback-thanks";a:4:{i:0;R:4023;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:26:"8:mobile-frontend-language";a:4:{i:0;R:4023;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:26:"8:mobile-frontend-username";a:4:{i:0;R:4023;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:26:"8:mobile-frontend-password";a:4:{i:0;R:4023;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:23:"8:mobile-frontend-login";a:4:{i:0;R:4023;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:29:"8:mobile-frontend-placeholder";a:4:{i:0;R:4023;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:38:"8:mobile-frontend-dismiss-notification";a:4:{i:0;R:4023;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:29:"8:mobile-frontend-sopa-notice";a:4:{i:0;R:4023;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:30:"8:mobile-frontend-clear-search";a:4:{i:0;R:4023;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:35:"8:mobile-frontend-privacy-link-text";a:4:{i:0;R:4023;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:33:"8:mobile-frontend-about-link-text";a:4:{i:0;R:4023;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:29:"8:mobile-frontend-footer-more";a:4:{i:0;R:4023;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:29:"8:mobile-frontend-footer-less";a:4:{i:0;R:4023;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:33:"8:mobile-frontend-footer-sitename";a:4:{i:0;R:4023;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:32:"8:mobile-frontend-footer-license";a:4:{i:0;R:4023;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:32:"8:mobile-frontend-footer-contact";a:4:{i:0;R:4023;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:21:"8:newusermessage-desc";a:4:{i:0;s:18:"ext-newusermessage";i:1;R:799;i:2;R:3234;i:3;R:3235;}s:21:"8:newuseredit-summary";a:4:{i:0;R:4093;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:25:"8:newusermessage-template";a:4:{i:0;R:4093;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:33:"8:newusermessage-template-subject";a:4:{i:0;R:4093;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:30:"8:newusermessage-template-body";a:4:{i:0;R:4093;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:23:"8:newusermessage-editor";a:4:{i:0;R:4093;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:27:"8:newusermessage-substitute";a:4:{i:0;R:4093;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:10:"8:ogg-desc";a:4:{i:0;s:14:"ext-ogghandler";i:1;R:799;i:2;R:3234;i:3;R:3235;}s:17:"8:ogg-short-audio";a:4:{i:0;R:4101;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:17:"8:ogg-short-video";a:4:{i:0;R:4101;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:19:"8:ogg-short-general";a:4:{i:0;R:4101;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:16:"8:ogg-long-audio";a:4:{i:0;R:4101;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:16:"8:ogg-long-video";a:4:{i:0;R:4101;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:22:"8:ogg-long-multiplexed";a:4:{i:0;R:4101;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:18:"8:ogg-long-general";a:4:{i:0;R:4101;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:16:"8:ogg-long-error";a:4:{i:0;R:4101;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:10:"8:ogg-play";a:4:{i:0;R:4101;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:11:"8:ogg-pause";a:4:{i:0;R:4101;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:10:"8:ogg-stop";a:4:{i:0;R:4101;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:16:"8:ogg-play-video";a:4:{i:0;R:4101;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:16:"8:ogg-play-sound";a:4:{i:0;R:4101;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:15:"8:ogg-no-player";a:4:{i:0;R:4101;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:15:"8:ogg-no-xiphqt";a:4:{i:0;R:4101;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:25:"8:ogg-player-videoelement";a:4:{i:0;R:4101;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:22:"8:ogg-player-oggplugin";a:4:{i:0;R:4101;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:20:"8:ogg-player-cortado";a:4:{i:0;R:4101;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:24:"8:ogg-player-vlc-mozilla";a:4:{i:0;R:4101;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:24:"8:ogg-player-vlc-activex";a:4:{i:0;R:4101;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:30:"8:ogg-player-quicktime-mozilla";a:4:{i:0;R:4101;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:30:"8:ogg-player-quicktime-activex";a:4:{i:0;R:4101;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:18:"8:ogg-player-totem";a:4:{i:0;R:4101;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:21:"8:ogg-player-kmplayer";a:4:{i:0;R:4101;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:21:"8:ogg-player-kaffeine";a:4:{i:0;R:4101;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:27:"8:ogg-player-mplayerplug-in";a:4:{i:0;R:4101;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:22:"8:ogg-player-thumbnail";a:4:{i:0;R:4101;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:23:"8:ogg-player-soundthumb";a:4:{i:0;R:4101;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:21:"8:ogg-player-selected";a:4:{i:0;R:4101;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:16:"8:ogg-use-player";a:4:{i:0;R:4101;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:10:"8:ogg-more";a:4:{i:0;R:4101;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:13:"8:ogg-dismiss";a:4:{i:0;R:4101;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:14:"8:ogg-download";a:4:{i:0;R:4101;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:15:"8:ogg-desc-link";a:4:{i:0;R:4101;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:22:"8:ogg-oggthumb-version";a:4:{i:0;R:4101;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:21:"8:ogg-oggthumb-failed";a:4:{i:0;R:4101;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:10:"8:pdf-desc";a:4:{i:0;s:14:"ext-pdfhandler";i:1;R:799;i:2;R:3234;i:3;R:3235;}s:17:"8:pdf_no_metadata";a:4:{i:0;R:4139;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:16:"8:pdf_page_error";a:4:{i:0;R:4139;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:18:"8:poolcounter-desc";a:4:{i:0;s:15:"ext-poolcounter";i:1;R:799;i:2;R:3234;i:3;R:3235;}s:30:"8:poolcounter-connection-error";a:4:{i:0;R:4143;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:24:"8:poolcounter-read-error";a:4:{i:0;R:4143;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:25:"8:poolcounter-write-error";a:4:{i:0;R:4143;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:26:"8:poolcounter-remote-error";a:4:{i:0;R:4143;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:11:"8:quiz_desc";a:4:{i:0;s:8:"ext-quiz";i:1;R:799;i:2;R:3234;i:3;R:3235;}s:18:"8:quiz_addedpoints";a:4:{i:0;R:4149;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:19:"8:quiz_cutoffpoints";a:4:{i:0;R:4149;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:17:"8:quiz_ignorecoef";a:4:{i:0;R:4149;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:14:"8:quiz_shuffle";a:4:{i:0;R:4149;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:17:"8:quiz_colorright";a:4:{i:0;R:4149;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:17:"8:quiz_colorwrong";a:4:{i:0;R:4149;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:14:"8:quiz_colorna";a:4:{i:0;R:4149;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:17:"8:quiz_colorerror";a:4:{i:0;R:4149;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:17:"8:quiz_correction";a:4:{i:0;R:4149;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:12:"8:quiz_score";a:4:{i:0;R:4149;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:13:"8:quiz_points";a:4:{i:0;R:4149;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:12:"8:quiz_reset";a:4:{i:0;R:4149;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:12:"8:renameuser";a:4:{i:0;s:14:"ext-renameuser";i:1;R:799;i:2;R:3234;i:3;R:3235;}s:27:"8:renameuser-linkoncontribs";a:4:{i:0;R:4163;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:32:"8:renameuser-linkoncontribs-text";a:4:{i:0;R:4163;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:17:"8:renameuser-desc";a:4:{i:0;R:4163;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:20:"8:renameuser-summary";a:4:{i:0;R:4163;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:15:"8:renameuserold";a:4:{i:0;R:4163;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:15:"8:renameusernew";a:4:{i:0;R:4163;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:18:"8:renameuserreason";a:4:{i:0;R:4163;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:16:"8:renameusermove";a:4:{i:0;R:4163;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:20:"8:renameusersuppress";a:4:{i:0;R:4163;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:19:"8:renameuserreserve";a:4:{i:0;R:4163;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:20:"8:renameuserwarnings";a:4:{i:0;R:4163;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:19:"8:renameuserconfirm";a:4:{i:0;R:4163;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:18:"8:renameusersubmit";a:4:{i:0;R:4163;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:29:"8:renameusererrordoesnotexist";a:4:{i:0;R:4163;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:23:"8:renameusererrorexists";a:4:{i:0;R:4163;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:24:"8:renameusererrorinvalid";a:4:{i:0;R:4163;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:26:"8:renameuser-error-request";a:4:{i:0;R:4163;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:28:"8:renameuser-error-same-user";a:4:{i:0;R:4163;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:19:"8:renameusersuccess";a:4:{i:0;R:4163;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:24:"8:renameuser-page-exists";a:4:{i:0;R:4163;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:23:"8:renameuser-page-moved";a:4:{i:0;R:4163;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:25:"8:renameuser-page-unmoved";a:4:{i:0;R:4163;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:19:"8:renameuserlogpage";a:4:{i:0;R:4163;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:23:"8:renameuserlogpagetext";a:4:{i:0;R:4163;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:20:"8:renameuserlogentry";a:4:{i:0;R:4163;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:16:"8:renameuser-log";a:4:{i:0;R:4163;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:21:"8:renameuser-move-log";a:4:{i:0;R:4163;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:19:"8:action-renameuser";a:4:{i:0;R:4163;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:18:"8:right-renameuser";a:4:{i:0;R:4163;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:27:"8:renameuser-renamed-notice";a:4:{i:0;R:4163;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:12:"8:securepoll";a:4:{i:0;s:14:"ext-securepoll";i:1;R:799;i:2;R:3234;i:3;R:3235;}s:17:"8:securepoll-desc";a:4:{i:0;R:4195;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:25:"8:securepoll-invalid-page";a:4:{i:0;R:4195;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:23:"8:securepoll-need-admin";a:4:{i:0;R:4195;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:27:"8:securepoll-too-few-params";a:4:{i:0;R:4195;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:29:"8:securepoll-invalid-election";a:4:{i:0;R:4195;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:20:"8:securepoll-welcome";a:4:{i:0;R:4195;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:24:"8:securepoll-not-started";a:4:{i:0;R:4195;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:21:"8:securepoll-finished";a:4:{i:0;R:4195;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:26:"8:securepoll-not-qualified";a:4:{i:0;R:4195;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:30:"8:securepoll-change-disallowed";a:4:{i:0;R:4195;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:27:"8:securepoll-change-allowed";a:4:{i:0;R:4195;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:19:"8:securepoll-submit";a:4:{i:0;R:4195;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:24:"8:securepoll-gpg-receipt";a:4:{i:0;R:4195;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:19:"8:securepoll-thanks";a:4:{i:0;R:4195;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:19:"8:securepoll-return";a:4:{i:0;R:4195;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:26:"8:securepoll-encrypt-error";a:4:{i:0;R:4195;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:24:"8:securepoll-no-gpg-home";a:4:{i:0;R:4195;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:29:"8:securepoll-secret-gpg-error";a:4:{i:0;R:4195;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:27:"8:securepoll-full-gpg-error";a:4:{i:0;R:4195;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:29:"8:securepoll-gpg-config-error";a:4:{i:0;R:4195;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:28:"8:securepoll-gpg-parse-error";a:4:{i:0;R:4195;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:30:"8:securepoll-no-decryption-key";a:4:{i:0;R:4195;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:17:"8:securepoll-jump";a:4:{i:0;R:4195;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:34:"8:securepoll-bad-ballot-submission";a:4:{i:0;R:4195;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:33:"8:securepoll-unanswered-questions";a:4:{i:0;R:4195;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:25:"8:securepoll-invalid-rank";a:4:{i:0;R:4195;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:29:"8:securepoll-unranked-options";a:4:{i:0;R:4195;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:26:"8:securepoll-invalid-score";a:4:{i:0;R:4195;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:31:"8:securepoll-unanswered-options";a:4:{i:0;R:4195;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:30:"8:securepoll-remote-auth-error";a:4:{i:0;R:4195;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:31:"8:securepoll-remote-parse-error";a:4:{i:0;R:4195;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:31:"8:securepoll-api-invalid-params";a:4:{i:0;R:4195;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:24:"8:securepoll-api-no-user";a:4:{i:0;R:4195;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:31:"8:securepoll-api-token-mismatch";a:4:{i:0;R:4195;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:26:"8:securepoll-not-logged-in";a:4:{i:0;R:4195;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:26:"8:securepoll-too-few-edits";a:4:{i:0;R:4195;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:20:"8:securepoll-too-new";a:4:{i:0;R:4195;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:20:"8:securepoll-blocked";a:4:{i:0;R:4195;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:30:"8:securepoll-blocked-centrally";a:4:{i:0;R:4195;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:16:"8:securepoll-bot";a:4:{i:0;R:4195;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:25:"8:securepoll-not-in-group";a:4:{i:0;R:4195;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:24:"8:securepoll-not-in-list";a:4:{i:0;R:4195;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:31:"8:securepoll-custom-unqualified";a:4:{i:0;R:4195;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:23:"8:securepoll-list-title";a:4:{i:0;R:4195;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:29:"8:securepoll-header-timestamp";a:4:{i:0;R:4195;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:30:"8:securepoll-header-voter-name";a:4:{i:0;R:4195;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:32:"8:securepoll-header-voter-domain";a:4:{i:0;R:4195;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:22:"8:securepoll-header-ip";a:4:{i:0;R:4195;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:23:"8:securepoll-header-xff";a:4:{i:0;R:4195;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:22:"8:securepoll-header-ua";a:4:{i:0;R:4195;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:31:"8:securepoll-header-token-match";a:4:{i:0;R:4195;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:30:"8:securepoll-header-cookie-dup";a:4:{i:0;R:4195;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:26:"8:securepoll-header-strike";a:4:{i:0;R:4195;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:27:"8:securepoll-header-details";a:4:{i:0;R:4195;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:26:"8:securepoll-strike-button";a:4:{i:0;R:4195;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:28:"8:securepoll-unstrike-button";a:4:{i:0;R:4195;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:26:"8:securepoll-strike-reason";a:4:{i:0;R:4195;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:26:"8:securepoll-strike-cancel";a:4:{i:0;R:4195;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:25:"8:securepoll-strike-error";a:4:{i:0;R:4195;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:34:"8:securepoll-strike-token-mismatch";a:4:{i:0;R:4195;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:25:"8:securepoll-details-link";a:4:{i:0;R:4195;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:29:"8:securepoll-voter-name-local";a:4:{i:0;R:4195;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:30:"8:securepoll-voter-name-remote";a:4:{i:0;R:4195;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:26:"8:securepoll-details-title";a:4:{i:0;R:4195;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:25:"8:securepoll-invalid-vote";a:4:{i:0;R:4195;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:22:"8:securepoll-header-id";a:4:{i:0;R:4195;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:30:"8:securepoll-header-voter-type";a:4:{i:0;R:4195;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:23:"8:securepoll-header-url";a:4:{i:0;R:4195;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:29:"8:securepoll-voter-properties";a:4:{i:0;R:4195;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:23:"8:securepoll-strike-log";a:4:{i:0;R:4195;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:26:"8:securepoll-header-action";a:4:{i:0;R:4195;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:26:"8:securepoll-header-reason";a:4:{i:0;R:4195;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:25:"8:securepoll-header-admin";a:4:{i:0;R:4195;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:28:"8:securepoll-cookie-dup-list";a:4:{i:0;R:4195;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:23:"8:securepoll-dump-title";a:4:{i:0;R:4195;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:26:"8:securepoll-dump-no-crypt";a:4:{i:0;R:4195;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:30:"8:securepoll-dump-not-finished";a:4:{i:0;R:4195;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:28:"8:securepoll-dump-no-urandom";a:4:{i:0;R:4195;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:34:"8:securepoll-urandom-not-supported";a:4:{i:0;R:4195;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:28:"8:securepoll-translate-title";a:4:{i:0;R:4195;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:29:"8:securepoll-invalid-language";a:4:{i:0;R:4195;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:28:"8:securepoll-header-trans-id";a:4:{i:0;R:4195;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:29:"8:securepoll-submit-translate";a:4:{i:0;R:4195;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:27:"8:securepoll-language-label";a:4:{i:0;R:4195;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:31:"8:securepoll-submit-select-lang";a:4:{i:0;R:4195;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:23:"8:securepoll-entry-text";a:4:{i:0;R:4195;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:25:"8:securepoll-header-title";a:4:{i:0;R:4195;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:30:"8:securepoll-header-start-date";a:4:{i:0;R:4195;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:28:"8:securepoll-header-end-date";a:4:{i:0;R:4195;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:25:"8:securepoll-subpage-vote";a:4:{i:0;R:4195;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:30:"8:securepoll-subpage-translate";a:4:{i:0;R:4195;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:25:"8:securepoll-subpage-list";a:4:{i:0;R:4195;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:25:"8:securepoll-subpage-dump";a:4:{i:0;R:4195;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:26:"8:securepoll-subpage-tally";a:4:{i:0;R:4195;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:24:"8:securepoll-tally-title";a:4:{i:0;R:4195;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:31:"8:securepoll-tally-not-finished";a:4:{i:0;R:4195;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:24:"8:securepoll-can-decrypt";a:4:{i:0;R:4195;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:25:"8:securepoll-tally-no-key";a:4:{i:0;R:4195;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:31:"8:securepoll-tally-local-legend";a:4:{i:0;R:4195;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:31:"8:securepoll-tally-local-submit";a:4:{i:0;R:4195;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:32:"8:securepoll-tally-upload-legend";a:4:{i:0;R:4195;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:32:"8:securepoll-tally-upload-submit";a:4:{i:0;R:4195;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:24:"8:securepoll-tally-error";a:4:{i:0;R:4195;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:22:"8:securepoll-no-upload";a:4:{i:0;R:4195;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:25:"8:securepoll-dump-corrupt";a:4:{i:0;R:4195;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:31:"8:securepoll-tally-upload-error";a:4:{i:0;R:4195;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:31:"8:securepoll-pairwise-victories";a:4:{i:0;R:4195;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:28:"8:securepoll-strength-matrix";a:4:{i:0;R:4195;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:18:"8:securepoll-ranks";a:4:{i:0;R:4195;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:26:"8:securepoll-average-score";a:4:{i:0;R:4195;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:18:"8:securepoll-round";a:4:{i:0;R:4195;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:19:"8:securepoll-spoilt";a:4:{i:0;R:4195;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:22:"8:securepoll-exhausted";a:4:{i:0;R:4195;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:16:"8:simpleantispam";a:4:{i:0;s:18:"ext-simpleantispam";i:1;R:799;i:2;R:3234;i:3;R:3235;}s:22:"8:simpleantispam-label";a:4:{i:0;R:4310;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:21:"8:simpleantispam-desc";a:4:{i:0;R:4310;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:12:"8:sitematrix";a:4:{i:0;s:14:"ext-sitematrix";i:1;R:799;i:2;R:3234;i:3;R:3235;}s:20:"8:sitematrix-summary";a:4:{i:0;R:4314;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:17:"8:sitematrix-desc";a:4:{i:0;R:4314;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:21:"8:sitematrix-language";a:4:{i:0;R:4314;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:20:"8:sitematrix-project";a:4:{i:0;R:4314;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:19:"8:sitematrix-others";a:4:{i:0;R:4314;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:27:"8:sitematrix-other-projects";a:4:{i:0;R:4314;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:18:"8:sitematrix-total";a:4:{i:0;R:4314;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:22:"8:sitematrix-sitetotal";a:4:{i:0;R:4314;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:20:"8:sitematrix-private";a:4:{i:0;R:4314;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:21:"8:sitematrix-fishbowl";a:4:{i:0;R:4314;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:16:"8:spam-blacklist";a:4:{i:0;s:17:"ext-spamblacklist";i:1;R:799;i:2;R:3234;i:3;R:3235;}s:16:"8:spam-whitelist";a:4:{i:0;R:4326;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:17:"8:email-blacklist";a:4:{i:0;R:4326;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:17:"8:email-whitelist";a:4:{i:0;R:4326;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:24:"8:spam-blacklisted-email";a:4:{i:0;R:4326;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:29:"8:spam-blacklisted-email-text";a:4:{i:0;R:4326;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:31:"8:spam-blacklisted-email-signup";a:4:{i:0;R:4326;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:20:"8:spam-invalid-lines";a:4:{i:0;R:4326;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:21:"8:spam-blacklist-desc";a:4:{i:0;R:4326;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:15:"8:timeline-desc";a:4:{i:0;s:12:"ext-timeline";i:1;R:799;i:2;R:3234;i:3;R:3235;}s:21:"8:timeline-invalidmap";a:4:{i:0;R:4336;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:21:"8:titleblacklist-desc";a:4:{i:0;s:18:"ext-titleblacklist";i:1;R:799;i:2;R:3234;i:3;R:3235;}s:16:"8:titleblacklist";a:4:{i:0;R:4339;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:16:"8:titlewhitelist";a:4:{i:0;R:4339;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:31:"8:titleblacklist-forbidden-edit";a:4:{i:0;R:4339;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:31:"8:titleblacklist-forbidden-move";a:4:{i:0;R:4339;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:33:"8:titleblacklist-forbidden-upload";a:4:{i:0;R:4339;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:38:"8:titleblacklist-forbidden-new-account";a:4:{i:0;R:4339;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:24:"8:titleblacklist-invalid";a:4:{i:0;R:4339;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:25:"8:titleblacklist-override";a:4:{i:0;R:4339;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:18:"8:right-tboverride";a:4:{i:0;R:4339;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:26:"8:right-tboverride-account";a:4:{i:0;R:4339;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:15:"8:torblock-desc";a:4:{i:0;s:12:"ext-torblock";i:1;R:799;i:2;R:3234;i:3;R:3235;}s:18:"8:torblock-blocked";a:4:{i:0;R:4351;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:21:"8:torblock-isexitnode";a:4:{i:0;R:4351;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:20:"8:right-torunblocked";a:4:{i:0;R:4351;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:21:"8:tag-tor-description";a:4:{i:0;R:4351;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:9:"8:tag-tor";a:4:{i:0;R:4351;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:45:"8:abusefilter-edit-builder-vars-tor-exit-node";a:4:{i:0;R:4351;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:14:"8:uploadwizard";a:4:{i:0;s:16:"ext-uploadwizard";i:1;R:799;i:2;R:3234;i:3;R:3235;}s:19:"8:uploadwizard-desc";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:27:"8:mwe-upwiz-uploadcampaigns";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:26:"8:mwe-upwiz-uploadcampaign";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:22:"8:right-upwizcampaigns";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:23:"8:action-upwizcampaigns";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:24:"8:group-upwizcampeditors";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:31:"8:group-upwizcampeditors-member";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:28:"8:grouppage-upwizcampeditors";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:28:"8:group-upwizcampeditors.css";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:27:"8:group-upwizcampeditors.js";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:18:"8:mwe-upwiz-js-off";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:30:"8:mwe-upwiz-extension-disabled";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:24:"8:mwe-upwiz-code-unknown";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:25:"8:mwe-upwiz-step-tutorial";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:21:"8:mwe-upwiz-step-file";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:22:"8:mwe-upwiz-step-deeds";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:24:"8:mwe-upwiz-step-details";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:23:"8:mwe-upwiz-step-thanks";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:30:"8:mwe-upwiz-api-warning-exists";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:35:"8:mwe-upwiz-api-warning-was-deleted";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:49:"8:mwe-upwiz-tutorial-error-localized-file-missing";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:39:"8:mwe-upwiz-tutorial-error-file-missing";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:43:"8:mwe-upwiz-tutorial-error-cannot-transform";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:21:"8:mwe-upwiz-help-desk";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:25:"8:mwe-upwiz-help-desk-url";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:22:"8:mwe-upwiz-add-file-n";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:27:"8:mwe-upwiz-add-file-0-free";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:29:"8:mwe-upwiz-transport-started";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:21:"8:mwe-upwiz-uploading";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:23:"8:mwe-upwiz-transported";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:26:"8:mwe-upwiz-stashed-upload";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:28:"8:mwe-upwiz-getting-metadata";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:30:"8:mwe-upwiz-submitting-details";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:21:"8:mwe-upwiz-published";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:18:"8:mwe-upwiz-failed";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:18:"8:mwe-upwiz-remove";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:25:"8:mwe-upwiz-remove-upload";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:22:"8:mwe-upwiz-show-thumb";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:26:"8:mwe-upwiz-show-thumb-tip";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:30:"8:mwe-upwiz-remove-description";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:18:"8:mwe-upwiz-upload";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:23:"8:mwe-upwiz-file-all-ok";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:28:"8:mwe-upwiz-file-some-failed";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:22:"8:mwe-upwiz-file-retry";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:38:"8:mwe-upwiz-next-file-despite-failures";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:32:"8:mwe-upwiz-skip-tutorial-future";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:27:"8:mwe-upwiz-file-all-failed";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:24:"8:mwe-upwiz-upload-count";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:33:"8:mwe-upwiz-progressbar-uploading";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:20:"8:mwe-upwiz-finished";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:26:"8:mwe-upwiz-secs-remaining";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:31:"8:mwe-upwiz-mins-secs-remaining";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:35:"8:mwe-upwiz-hrs-mins-secs-remaining";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:30:"8:mwe-upwiz-deeds-macro-prompt";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:31:"8:mwe-upwiz-deeds-custom-prompt";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:26:"8:mwe-upwiz-source-ownwork";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:45:"8:mwe-upwiz-source-ownwork-assert-any-license";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:33:"8:mwe-upwiz-source-ownwork-assert";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:46:"8:mwe-upwiz-source-ownwork-assert-cc-by-sa-3.0";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:47:"8:mwe-upwiz-source-ownwork-cc-by-sa-3.0-explain";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:43:"8:mwe-upwiz-source-ownwork-assert-cc-by-3.0";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:44:"8:mwe-upwiz-source-ownwork-cc-by-3.0-explain";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:41:"8:mwe-upwiz-source-ownwork-assert-cc-zero";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:42:"8:mwe-upwiz-source-ownwork-cc-zero-explain";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:40:"8:mwe-upwiz-source-ownwork-assert-custom";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:38:"8:mwe-upwiz-source-ownwork-assert-note";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:29:"8:mwe-upwiz-source-permission";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:29:"8:mwe-upwiz-source-thirdparty";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:35:"8:mwe-upwiz-source-thirdparty-intro";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:51:"8:mwe-upwiz-source-thirdparty-custom-multiple-intro";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:37:"8:mwe-upwiz-source-thirdparty-license";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:35:"8:mwe-upwiz-source-thirdparty-cases";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:36:"8:mwe-upwiz-source-thirdparty-accept";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:25:"8:mwe-upwiz-source-custom";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:24:"8:mwe-upwiz-more-options";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:25:"8:mwe-upwiz-fewer-options";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:16:"8:mwe-upwiz-desc";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:22:"8:mwe-upwiz-desc-add-n";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:22:"8:mwe-upwiz-desc-add-0";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:17:"8:mwe-upwiz-title";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:22:"8:mwe-upwiz-media-type";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:24:"8:mwe-upwiz-date-created";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:20:"8:mwe-upwiz-location";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:24:"8:mwe-upwiz-location-lat";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:24:"8:mwe-upwiz-location-lon";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:24:"8:mwe-upwiz-location-alt";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:26:"8:mwe-upwiz-copyright-info";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:18:"8:mwe-upwiz-author";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:25:"8:mwe-upwiz-autoconverted";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:17:"8:mwe-upwiz-other";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:18:"8:mwe-upwiz-source";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:24:"8:mwe-upwiz-thanks-intro";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:26:"8:mwe-upwiz-thanks-explain";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:27:"8:mwe-upwiz-thanks-wikitext";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:22:"8:mwe-upwiz-thanks-url";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:47:"8:mwe-upwiz-upload-error-bad-filename-extension";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:53:"8:mwe-upwiz-upload-error-bad-extension-video-firefogg";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:50:"8:mwe-upwiz-upload-error-bad-filename-no-extension";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:49:"8:mwe-upwiz-upload-error-duplicate-filename-error";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:39:"8:mwe-upwiz-allowed-filename-extensions";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:44:"8:mwe-upwiz-help-allowed-filename-extensions";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:34:"8:mwe-upwiz-upload-error-duplicate";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:39:"8:mwe-upwiz-upload-error-stashed-anyway";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:47:"8:mwe-upwiz-upload-error-unknown-filename-error";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:14:"8:mwe-upwiz-ok";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:18:"8:mwe-upwiz-cancel";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:30:"8:mwe-upwiz-fileexists-replace";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:22:"8:mwe-upwiz-fileexists";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:38:"8:mwe-upwiz-fileexists-replace-on-page";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:38:"8:mwe-upwiz-fileexists-replace-no-link";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:23:"8:mwe-upwiz-blacklisted";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:26:"8:mwe-upwiz-thumbnail-more";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:21:"8:mwe-upwiz-overwrite";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:16:"8:mwe-upwiz-next";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:21:"8:mwe-upwiz-next-file";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:22:"8:mwe-upwiz-next-deeds";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:24:"8:mwe-upwiz-next-details";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:16:"8:mwe-upwiz-home";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:26:"8:mwe-upwiz-upload-another";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:19:"8:mwe-prevent-close";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:25:"8:mwe-upwiz-prevent-close";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:26:"8:mwe-upwiz-files-complete";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:26:"8:mwe-upwiz-tooltip-author";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:26:"8:mwe-upwiz-tooltip-source";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:24:"8:mwe-upwiz-tooltip-sign";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:25:"8:mwe-upwiz-tooltip-title";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:31:"8:mwe-upwiz-tooltip-description";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:24:"8:mwe-upwiz-tooltip-date";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:30:"8:mwe-upwiz-tooltip-categories";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:25:"8:mwe-upwiz-tooltip-other";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:28:"8:mwe-upwiz-tooltip-location";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:29:"8:mwe-upwiz-tooltip-more-info";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:26:"8:mwe-upwiz-file-need-file";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:27:"8:mwe-upwiz-deeds-need-deed";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:30:"8:mwe-upwiz-deeds-need-license";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:28:"8:mwe-upwiz-license-show-all";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:36:"8:mwe-upwiz-license-show-recommended";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:33:"8:mwe-upwiz-error-signature-blank";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:26:"8:mwe-upwiz-error-latitude";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:27:"8:mwe-upwiz-error-longitude";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:26:"8:mwe-upwiz-error-altitude";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:36:"8:mwe-upwiz-error-signature-too-long";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:37:"8:mwe-upwiz-error-signature-too-short";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:37:"8:mwe-upwiz-error-signature-bad-chars";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:23:"8:mwe-upwiz-error-blank";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:26:"8:mwe-upwiz-error-too-long";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:27:"8:mwe-upwiz-error-too-short";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:27:"8:mwe-upwiz-error-bad-chars";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:22:"8:mwe-upwiz-error-date";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:35:"8:mwe-upwiz-error-title-blacklisted";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:32:"8:mwe-upwiz-error-title-badchars";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:42:"8:mwe-upwiz-error-title-senselessimagename";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:31:"8:mwe-upwiz-error-title-hosting";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:33:"8:mwe-upwiz-error-title-thumbnail";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:51:"8:mwe-upwiz-error-title-fileexists-shared-forbidden";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:41:"8:mwe-upwiz-error-title-double-apostrophe";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:33:"8:mwe-upwiz-error-title-extension";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:42:"8:mwe-upwiz-error-license-wikitext-missing";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:44:"8:mwe-upwiz-error-license-wikitext-too-short";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:43:"8:mwe-upwiz-error-license-wikitext-too-long";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:42:"8:mwe-upwiz-error-license-wikitext-invalid";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:31:"8:mwe-upwiz-details-error-count";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:29:"8:mwe-upwiz-too-many-files-ok";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:31:"8:mwe-upwiz-too-many-files-text";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:26:"8:mwe-upwiz-too-many-files";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:32:"8:mwe-upwiz-license-cc-by-sa-3.0";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:35:"8:mwe-upwiz-license-cc-by-sa-3.0-at";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:35:"8:mwe-upwiz-license-cc-by-sa-3.0-de";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:35:"8:mwe-upwiz-license-cc-by-sa-3.0-ee";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:35:"8:mwe-upwiz-license-cc-by-sa-3.0-es";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:35:"8:mwe-upwiz-license-cc-by-sa-3.0-hr";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:35:"8:mwe-upwiz-license-cc-by-sa-3.0-lu";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:35:"8:mwe-upwiz-license-cc-by-sa-3.0-nl";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:35:"8:mwe-upwiz-license-cc-by-sa-3.0-no";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:35:"8:mwe-upwiz-license-cc-by-sa-3.0-pl";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:35:"8:mwe-upwiz-license-cc-by-sa-3.0-ro";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:29:"8:mwe-upwiz-license-cc-by-3.0";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:32:"8:mwe-upwiz-license-cc-by-sa-2.5";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:29:"8:mwe-upwiz-license-cc-by-2.5";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:32:"8:mwe-upwiz-license-cc-by-sa-2.0";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:29:"8:mwe-upwiz-license-cc-by-2.0";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:27:"8:mwe-upwiz-license-cc-zero";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:26:"8:mwe-upwiz-license-custom";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:23:"8:mwe-upwiz-license-fal";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:26:"8:mwe-upwiz-license-own-pd";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:30:"8:mwe-upwiz-license-pd-old-100";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:26:"8:mwe-upwiz-license-pd-old";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:26:"8:mwe-upwiz-license-pd-art";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:25:"8:mwe-upwiz-license-pd-us";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:28:"8:mwe-upwiz-license-pd-usgov";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:33:"8:mwe-upwiz-license-pd-usgov-nasa";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:42:"8:mwe-upwiz-license-pd-usgov-military-navy";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:33:"8:mwe-upwiz-license-pd-ineligible";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:38:"8:mwe-upwiz-license-pd-ineligible-help";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:31:"8:mwe-upwiz-license-pd-textlogo";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:40:"8:mwe-upwiz-license-copyrighted-free-use";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:31:"8:mwe-upwiz-license-attribution";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:24:"8:mwe-upwiz-license-gfdl";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:37:"8:mwe-upwiz-license-cc-by-sa-3.0-gfdl";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:27:"8:mwe-upwiz-license-cc-head";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:30:"8:mwe-upwiz-license-cc-subhead";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:31:"8:mwe-upwiz-license-flickr-head";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:34:"8:mwe-upwiz-license-flickr-subhead";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:42:"8:mwe-upwiz-license-public-domain-usa-head";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:45:"8:mwe-upwiz-license-public-domain-usa-subhead";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:30:"8:mwe-upwiz-license-usgov-head";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:24:"8:mwe-upwiz-license-misc";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:31:"8:mwe-upwiz-license-custom-head";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:34:"8:mwe-upwiz-license-custom-preview";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:29:"8:mwe-upwiz-license-none-head";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:24:"8:mwe-upwiz-license-none";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:34:"8:mwe-upwiz-license-confirm-remove";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:40:"8:mwe-upwiz-license-confirm-remove-title";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:28:"8:mwe-upwiz-license-external";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:36:"8:mwe-upwiz-license-external-invalid";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:22:"8:mwe-upwiz-categories";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:26:"8:mwe-upwiz-categories-add";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:27:"8:mwe-upwiz-category-remove";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:26:"8:mwe-upwiz-thanks-caption";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:28:"8:mwe-upwiz-thumbnail-failed";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:32:"8:mwe-upwiz-unparseable-filename";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:25:"8:mwe-upwiz-image-preview";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:27:"8:mwe-upwiz-subhead-message";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:24:"8:mwe-upwiz-subhead-bugs";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:29:"8:mwe-upwiz-subhead-translate";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:30:"8:mwe-upwiz-subhead-alt-upload";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:27:"8:mwe-upwiz-feedback-prompt";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:26:"8:mwe-upwiz-feedback-title";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:44:"8:mwe-upwiz-feedback-blacklist-report-prompt";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:42:"8:mwe-upwiz-feedback-blacklist-info-prompt";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:41:"8:mwe-upwiz-feedback-blacklist-line-intro";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:38:"8:mwe-upwiz-feedback-blacklist-subject";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:29:"8:mwe-upwiz-errordialog-title";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:26:"8:mwe-upwiz-errordialog-ok";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:32:"8:mwe-upwiz-error-nosuchcampaign";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:34:"8:mwe-upwiz-error-campaigndisabled";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:26:"8:mwe-upwiz-campaigns-name";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:28:"8:mwe-upwiz-campaigns-status";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:29:"8:mwe-upwiz-campaigns-enabled";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:30:"8:mwe-upwiz-campaigns-disabled";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:26:"8:mwe-upwiz-campaigns-edit";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:25:"8:mwe-upwiz-campaigns-add";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:28:"8:mwe-upwiz-campaigns-addnew";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:29:"8:mwe-upwiz-campaigns-newname";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:29:"8:mwe-upwiz-campaigns-namedoc";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:30:"8:mwe-upwiz-campaigns-existing";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:29:"8:mwe-upwiz-campaigns-editing";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:28:"8:mwe-upwiz-campaigns-delete";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:29:"8:mwe-upwiz-campaigns-confdel";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:35:"8:mwe-upwiz-campaigns-delete-failed";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:36:"8:mwe-upwiz-campaigns-confirm-delete";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:23:"8:uploadcampaign-legend";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:21:"8:uploadcampaign-text";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:25:"8:mwe-upwiz-campaign-name";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:28:"8:mwe-upwiz-campaign-enabled";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:38:"8:mwe-upwiz-campaign-conf-skiptutorial";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:40:"8:mwe-upwiz-campaign-conf-autocategories";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:43:"8:mwe-upwiz-campaign-conf-defaultcategories";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:38:"8:mwe-upwiz-campaign-conf-autowikitext";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:39:"8:mwe-upwiz-campaign-conf-ownworkoption";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:33:"8:mwe-upwiz-campaign-owner-choice";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:30:"8:mwe-upwiz-campaign-owner-own";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:33:"8:mwe-upwiz-campaign-owner-notown";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:41:"8:mwe-upwiz-campaign-conf-licensesownwork";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:42:"8:mwe-upwiz-campaign-conf-tutorialtemplate";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:39:"8:mwe-upwiz-campaign-conf-tutorialwidth";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:48:"8:mwe-upwiz-campaign-conf-tutorialhelpdeskcoords";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:47:"8:mwe-upwiz-campaign-conf-defaultownworklicence";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:33:"8:mwe-upwiz-campaign-conf-idfield";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:38:"8:mwe-upwiz-campaign-conf-idfieldlabel";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:42:"8:mwe-upwiz-campaign-conf-idfieldlabelpage";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:45:"8:mwe-upwiz-campaign-conf-idfieldinitialvalue";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:41:"8:mwe-upwiz-campaign-conf-headerlabelpage";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:41:"8:mwe-upwiz-campaign-conf-thankslabelpage";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:42:"8:mwe-upwiz-campaign-conf-idfieldmaxlength";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:36:"8:mwe-upwiz-campaign-conf-defaultlat";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:36:"8:mwe-upwiz-campaign-conf-defaultlon";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:36:"8:mwe-upwiz-campaign-conf-defaultalt";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:44:"8:mwe-upwiz-campaign-conf-defaultdescription";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:31:"8:mw-coolcats-confirm-new-title";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:25:"8:mw-coolcats-confirm-new";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:28:"8:mw-coolcats-confirm-new-ok";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:32:"8:mw-coolcats-confirm-new-cancel";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:15:"8:prefs-uploads";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:29:"8:mwe-upwiz-prefs-def-license";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:33:"8:mwe-upwiz-prefs-def-license-def";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:29:"8:mwe-upwiz-prefs-license-own";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:36:"8:mwe-upwiz-prefs-license-thirdparty";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:20:"8:languagehandler.js";a:4:{i:0;R:4359;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:8:"8:vector";a:4:{i:0;s:10:"ext-vector";i:1;R:799;i:2;R:3234;i:3;R:3235;}s:13:"8:vector-desc";a:4:{i:0;R:4650;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:34:"8:vector-collapsiblenav-preference";a:4:{i:0;R:4650;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:28:"8:vector-collapsiblenav-more";a:4:{i:0;R:4650;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:28:"8:vector-editwarning-warning";a:4:{i:0;R:4650;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:31:"8:vector-editwarning-preference";a:4:{i:0;R:4650;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:28:"8:vector-simplesearch-search";a:4:{i:0;R:4650;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:32:"8:vector-simplesearch-containing";a:4:{i:0;R:4650;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:33:"8:vector-noexperiments-preference";a:4:{i:0;R:4650;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:35:"8:vector-footercleanup-transclusion";a:4:{i:0;R:4650;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:10:"8:webfonts";a:4:{i:0;s:12:"ext-webfonts";i:1;R:799;i:2;R:3234;i:3;R:3235;}s:15:"8:webfonts-desc";a:4:{i:0;R:4661;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:15:"8:webfonts-load";a:4:{i:0;R:4661;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:16:"8:webfonts-reset";a:4:{i:0;R:4661;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:28:"8:webfonts-enable-preference";a:4:{i:0;R:4661;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:23:"8:webfonts-menu-tooltip";a:4:{i:0;R:4661;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:15:"8:webfonts-help";a:4:{i:0;R:4661;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:20:"8:webfonts-help-page";a:4:{i:0;R:4661;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:24:"8:webfonts-preview-intro";a:4:{i:0;R:4661;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:24:"8:webfonts-preview-title";a:4:{i:0;R:4661;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:27:"8:webfonts-preview-download";a:4:{i:0;R:4661;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:29:"8:webfonts-preview-sampletext";a:4:{i:0;R:4661;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:41:"8:webfonts-preview-installing-fonts-title";a:4:{i:0;R:4661;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:40:"8:webfonts-preview-installing-fonts-text";a:4:{i:0;R:4661;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:12:"8:wikieditor";a:4:{i:0;s:14:"ext-wikieditor";i:1;R:799;i:2;R:3234;i:3;R:3235;}s:17:"8:wikieditor-desc";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:25:"8:wikieditor-wikitext-tab";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:20:"8:wikieditor-loading";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:31:"8:wikieditor-preview-preference";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:24:"8:wikieditor-preview-tab";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:32:"8:wikieditor-preview-changes-tab";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:28:"8:wikieditor-preview-loading";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:37:"8:wikieditor-previewdialog-preference";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:30:"8:wikieditor-previewdialog-tab";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:34:"8:wikieditor-previewdialog-loading";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:31:"8:wikieditor-publish-preference";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:35:"8:wikieditor-publish-button-publish";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:34:"8:wikieditor-publish-button-cancel";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:33:"8:wikieditor-publish-dialog-title";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:35:"8:wikieditor-publish-dialog-summary";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:33:"8:wikieditor-publish-dialog-minor";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:33:"8:wikieditor-publish-dialog-watch";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:35:"8:wikieditor-publish-dialog-publish";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:34:"8:wikieditor-publish-dialog-goback";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:39:"8:wikieditor-template-editor-preference";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:41:"8:wikieditor-template-editor-dialog-title";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:42:"8:wikieditor-template-editor-dialog-submit";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:42:"8:wikieditor-template-editor-dialog-cancel";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:33:"8:wikieditor-templates-preference";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:27:"8:wikieditor-toc-preference";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:21:"8:wikieditor-toc-show";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:21:"8:wikieditor-toc-hide";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:20:"8:wikieditor-toolbar";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:25:"8:wikieditor-toolbar-desc";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:28:"8:wikieditor-toolbar-hidesig";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:28:"8:wikieditor-toolbar-loading";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:30:"8:wikieditor-toolbar-tool-bold";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:38:"8:wikieditor-toolbar-tool-bold-example";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:32:"8:wikieditor-toolbar-tool-italic";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:40:"8:wikieditor-toolbar-tool-italic-example";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:31:"8:wikieditor-toolbar-tool-ilink";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:39:"8:wikieditor-toolbar-tool-ilink-example";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:31:"8:wikieditor-toolbar-tool-xlink";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:39:"8:wikieditor-toolbar-tool-xlink-example";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:30:"8:wikieditor-toolbar-tool-link";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:36:"8:wikieditor-toolbar-tool-link-title";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:34:"8:wikieditor-toolbar-tool-link-int";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:41:"8:wikieditor-toolbar-tool-link-int-target";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:49:"8:wikieditor-toolbar-tool-link-int-target-tooltip";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:39:"8:wikieditor-toolbar-tool-link-int-text";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:47:"8:wikieditor-toolbar-tool-link-int-text-tooltip";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:34:"8:wikieditor-toolbar-tool-link-ext";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:41:"8:wikieditor-toolbar-tool-link-ext-target";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:39:"8:wikieditor-toolbar-tool-link-ext-text";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:37:"8:wikieditor-toolbar-tool-link-insert";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:37:"8:wikieditor-toolbar-tool-link-cancel";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:55:"8:wikieditor-toolbar-tool-link-int-target-status-exists";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:58:"8:wikieditor-toolbar-tool-link-int-target-status-notexists";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:56:"8:wikieditor-toolbar-tool-link-int-target-status-invalid";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:57:"8:wikieditor-toolbar-tool-link-int-target-status-external";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:56:"8:wikieditor-toolbar-tool-link-int-target-status-loading";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:42:"8:wikieditor-toolbar-tool-link-int-invalid";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:48:"8:wikieditor-toolbar-tool-link-lookslikeinternal";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:52:"8:wikieditor-toolbar-tool-link-lookslikeinternal-int";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:52:"8:wikieditor-toolbar-tool-link-lookslikeinternal-ext";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:36:"8:wikieditor-toolbar-tool-link-empty";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:30:"8:wikieditor-toolbar-tool-file";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:38:"8:wikieditor-toolbar-tool-file-example";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:35:"8:wikieditor-toolbar-tool-reference";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:43:"8:wikieditor-toolbar-tool-reference-example";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:42:"8:wikieditor-toolbar-tool-reference-cancel";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:41:"8:wikieditor-toolbar-tool-reference-title";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:42:"8:wikieditor-toolbar-tool-reference-insert";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:40:"8:wikieditor-toolbar-tool-reference-text";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:35:"8:wikieditor-toolbar-tool-signature";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:37:"8:wikieditor-toolbar-section-advanced";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:33:"8:wikieditor-toolbar-tool-heading";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:35:"8:wikieditor-toolbar-tool-heading-1";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:35:"8:wikieditor-toolbar-tool-heading-2";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:35:"8:wikieditor-toolbar-tool-heading-3";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:35:"8:wikieditor-toolbar-tool-heading-4";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:35:"8:wikieditor-toolbar-tool-heading-5";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:41:"8:wikieditor-toolbar-tool-heading-example";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:33:"8:wikieditor-toolbar-group-format";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:31:"8:wikieditor-toolbar-tool-ulist";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:39:"8:wikieditor-toolbar-tool-ulist-example";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:31:"8:wikieditor-toolbar-tool-olist";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:39:"8:wikieditor-toolbar-tool-olist-example";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:32:"8:wikieditor-toolbar-tool-indent";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:40:"8:wikieditor-toolbar-tool-indent-example";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:32:"8:wikieditor-toolbar-tool-nowiki";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:40:"8:wikieditor-toolbar-tool-nowiki-example";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:34:"8:wikieditor-toolbar-tool-redirect";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:42:"8:wikieditor-toolbar-tool-redirect-example";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:29:"8:wikieditor-toolbar-tool-big";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:37:"8:wikieditor-toolbar-tool-big-example";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:31:"8:wikieditor-toolbar-tool-small";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:39:"8:wikieditor-toolbar-tool-small-example";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:37:"8:wikieditor-toolbar-tool-superscript";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:45:"8:wikieditor-toolbar-tool-superscript-example";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:35:"8:wikieditor-toolbar-tool-subscript";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:43:"8:wikieditor-toolbar-tool-subscript-example";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:33:"8:wikieditor-toolbar-group-insert";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:33:"8:wikieditor-toolbar-tool-gallery";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:41:"8:wikieditor-toolbar-tool-gallery-example";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:33:"8:wikieditor-toolbar-tool-newline";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:31:"8:wikieditor-toolbar-tool-table";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:43:"8:wikieditor-toolbar-tool-table-example-old";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:49:"8:wikieditor-toolbar-tool-table-example-cell-text";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:46:"8:wikieditor-toolbar-tool-table-example-header";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:37:"8:wikieditor-toolbar-tool-table-title";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:47:"8:wikieditor-toolbar-tool-table-dimensions-rows";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:50:"8:wikieditor-toolbar-tool-table-dimensions-columns";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:49:"8:wikieditor-toolbar-tool-table-dimensions-header";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:41:"8:wikieditor-toolbar-tool-table-wikitable";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:40:"8:wikieditor-toolbar-tool-table-sortable";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:39:"8:wikieditor-toolbar-tool-table-example";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:39:"8:wikieditor-toolbar-tool-table-preview";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:38:"8:wikieditor-toolbar-tool-table-insert";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:38:"8:wikieditor-toolbar-tool-table-cancel";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:44:"8:wikieditor-toolbar-tool-table-example-text";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:39:"8:wikieditor-toolbar-tool-table-toomany";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:45:"8:wikieditor-toolbar-tool-table-invalidnumber";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:36:"8:wikieditor-toolbar-tool-table-zero";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:33:"8:wikieditor-toolbar-tool-replace";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:39:"8:wikieditor-toolbar-tool-replace-title";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:40:"8:wikieditor-toolbar-tool-replace-search";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:41:"8:wikieditor-toolbar-tool-replace-replace";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:38:"8:wikieditor-toolbar-tool-replace-case";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:39:"8:wikieditor-toolbar-tool-replace-regex";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:49:"8:wikieditor-toolbar-tool-replace-button-findnext";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:48:"8:wikieditor-toolbar-tool-replace-button-replace";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:51:"8:wikieditor-toolbar-tool-replace-button-replaceall";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:39:"8:wikieditor-toolbar-tool-replace-close";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:41:"8:wikieditor-toolbar-tool-replace-nomatch";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:41:"8:wikieditor-toolbar-tool-replace-success";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:45:"8:wikieditor-toolbar-tool-replace-emptysearch";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:46:"8:wikieditor-toolbar-tool-replace-invalidregex";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:39:"8:wikieditor-toolbar-section-characters";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:42:"8:wikieditor-toolbar-characters-page-latin";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:50:"8:wikieditor-toolbar-characters-page-latinextended";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:40:"8:wikieditor-toolbar-characters-page-ipa";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:44:"8:wikieditor-toolbar-characters-page-symbols";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:42:"8:wikieditor-toolbar-characters-page-greek";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:45:"8:wikieditor-toolbar-characters-page-cyrillic";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:43:"8:wikieditor-toolbar-characters-page-arabic";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:51:"8:wikieditor-toolbar-characters-page-arabicextended";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:44:"8:wikieditor-toolbar-characters-page-persian";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:43:"8:wikieditor-toolbar-characters-page-hebrew";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:43:"8:wikieditor-toolbar-characters-page-bangla";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:43:"8:wikieditor-toolbar-characters-page-telugu";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:44:"8:wikieditor-toolbar-characters-page-sinhala";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:45:"8:wikieditor-toolbar-characters-page-gujarati";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:41:"8:wikieditor-toolbar-characters-page-thai";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:40:"8:wikieditor-toolbar-characters-page-lao";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:42:"8:wikieditor-toolbar-characters-page-khmer";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:33:"8:wikieditor-toolbar-section-help";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:45:"8:wikieditor-toolbar-help-heading-description";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:40:"8:wikieditor-toolbar-help-heading-syntax";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:40:"8:wikieditor-toolbar-help-heading-result";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:37:"8:wikieditor-toolbar-help-page-format";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:35:"8:wikieditor-toolbar-help-page-link";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:38:"8:wikieditor-toolbar-help-page-heading";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:35:"8:wikieditor-toolbar-help-page-list";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:35:"8:wikieditor-toolbar-help-page-file";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:40:"8:wikieditor-toolbar-help-page-reference";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:41:"8:wikieditor-toolbar-help-page-discussion";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:52:"8:wikieditor-toolbar-help-content-italic-description";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:47:"8:wikieditor-toolbar-help-content-italic-syntax";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:47:"8:wikieditor-toolbar-help-content-italic-result";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:50:"8:wikieditor-toolbar-help-content-bold-description";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:45:"8:wikieditor-toolbar-help-content-bold-syntax";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:45:"8:wikieditor-toolbar-help-content-bold-result";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:56:"8:wikieditor-toolbar-help-content-bolditalic-description";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:51:"8:wikieditor-toolbar-help-content-bolditalic-syntax";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:51:"8:wikieditor-toolbar-help-content-bolditalic-result";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:51:"8:wikieditor-toolbar-help-content-ilink-description";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:46:"8:wikieditor-toolbar-help-content-ilink-syntax";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:46:"8:wikieditor-toolbar-help-content-ilink-result";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:51:"8:wikieditor-toolbar-help-content-xlink-description";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:46:"8:wikieditor-toolbar-help-content-xlink-syntax";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:46:"8:wikieditor-toolbar-help-content-xlink-result";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:54:"8:wikieditor-toolbar-help-content-heading2-description";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:49:"8:wikieditor-toolbar-help-content-heading2-syntax";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:49:"8:wikieditor-toolbar-help-content-heading2-result";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:54:"8:wikieditor-toolbar-help-content-heading3-description";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:49:"8:wikieditor-toolbar-help-content-heading3-syntax";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:49:"8:wikieditor-toolbar-help-content-heading3-result";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:54:"8:wikieditor-toolbar-help-content-heading4-description";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:49:"8:wikieditor-toolbar-help-content-heading4-syntax";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:49:"8:wikieditor-toolbar-help-content-heading4-result";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:54:"8:wikieditor-toolbar-help-content-heading5-description";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:49:"8:wikieditor-toolbar-help-content-heading5-syntax";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:49:"8:wikieditor-toolbar-help-content-heading5-result";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:51:"8:wikieditor-toolbar-help-content-ulist-description";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:46:"8:wikieditor-toolbar-help-content-ulist-syntax";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:46:"8:wikieditor-toolbar-help-content-ulist-result";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:51:"8:wikieditor-toolbar-help-content-olist-description";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:46:"8:wikieditor-toolbar-help-content-olist-syntax";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:46:"8:wikieditor-toolbar-help-content-olist-result";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:50:"8:wikieditor-toolbar-help-content-file-description";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:45:"8:wikieditor-toolbar-help-content-file-syntax";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:45:"8:wikieditor-toolbar-help-content-file-result";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:55:"8:wikieditor-toolbar-help-content-reference-description";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:50:"8:wikieditor-toolbar-help-content-reference-syntax";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:50:"8:wikieditor-toolbar-help-content-reference-result";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:57:"8:wikieditor-toolbar-help-content-rereference-description";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:52:"8:wikieditor-toolbar-help-content-rereference-syntax";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:52:"8:wikieditor-toolbar-help-content-rereference-result";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:60:"8:wikieditor-toolbar-help-content-showreferences-description";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:55:"8:wikieditor-toolbar-help-content-showreferences-syntax";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:55:"8:wikieditor-toolbar-help-content-showreferences-result";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:64:"8:wikieditor-toolbar-help-content-signaturetimestamp-description";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:59:"8:wikieditor-toolbar-help-content-signaturetimestamp-syntax";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:59:"8:wikieditor-toolbar-help-content-signaturetimestamp-result";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:55:"8:wikieditor-toolbar-help-content-signature-description";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:50:"8:wikieditor-toolbar-help-content-signature-syntax";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:50:"8:wikieditor-toolbar-help-content-signature-result";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:52:"8:wikieditor-toolbar-help-content-indent-description";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:47:"8:wikieditor-toolbar-help-content-indent-syntax";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:47:"8:wikieditor-toolbar-help-content-indent-result";a:4:{i:0;R:4676;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:28:"8:wikimedialicensetexts-desc";a:4:{i:0;s:25:"ext-wikimedialicensetexts";i:1;R:799;i:2;R:3234;i:3;R:3235;}s:41:"8:wm-license-attribution-with-author-text";a:4:{i:0;R:4894;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:44:"8:wm-license-attribution-without-author-text";a:4:{i:0;R:4894;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:27:"8:wm-license-artwork-artist";a:4:{i:0;R:4894;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:26:"8:wm-license-artwork-title";a:4:{i:0;R:4894;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:27:"8:wm-license-artwork-medium";a:4:{i:0;R:4894;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:31:"8:wm-license-artwork-dimensions";a:4:{i:0;R:4894;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:37:"8:wm-license-artwork-current-location";a:4:{i:0;R:4894;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:35:"8:wm-license-artwork-object-history";a:4:{i:0;R:4894;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:32:"8:wm-license-artwork-credit-line";a:4:{i:0;R:4894;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:31:"8:wm-license-artwork-references";a:4:{i:0;R:4894;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:33:"8:wm-license-artwork-inscriptions";a:4:{i:0;R:4894;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:26:"8:wm-license-artwork-notes";a:4:{i:0;R:4894;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:23:"8:wm-license-artwork-id";a:4:{i:0;R:4894;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:27:"8:wm-license-artwork-source";a:4:{i:0;R:4894;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:25:"8:wm-license-book-edition";a:4:{i:0;R:4894;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:24:"8:wm-license-book-editor";a:4:{i:0;R:4894;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:29:"8:wm-license-book-illustrator";a:4:{i:0;R:4894;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:26:"8:wm-license-book-language";a:4:{i:0;R:4894;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:31:"8:wm-license-book-page-overview";a:4:{i:0;R:4894;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:38:"8:wm-license-book-place-of-publication";a:4:{i:0;R:4894;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:25:"8:wm-license-book-printer";a:4:{i:0;R:4894;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:27:"8:wm-license-book-publisher";a:4:{i:0;R:4894;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:30:"8:wm-license-book-series-title";a:4:{i:0;R:4894;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:33:"8:wm-license-book-start-this-book";a:4:{i:0;R:4894;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:26:"8:wm-license-book-subtitle";a:4:{i:0;R:4894;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:23:"8:wm-license-book-title";a:4:{i:0;R:4894;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:28:"8:wm-license-book-translator";a:4:{i:0;R:4894;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:24:"8:wm-license-book-volume";a:4:{i:0;R:4894;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:37:"8:wm-license-book-year-of-publication";a:4:{i:0;R:4894;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:24:"8:wm-license-cecill-text";a:4:{i:0;R:4894;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:29:"8:wm-license-cecill-wiki-link";a:4:{i:0;R:4894;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:29:"8:wm-license-cecill-full-link";a:4:{i:0;R:4894;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:38:"8:wm-license-creator-alternative-names";a:4:{i:0;R:4894;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:32:"8:wm-license-creator-description";a:4:{i:0;R:4894;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:34:"8:wm-license-creator-date-of-birth";a:4:{i:0;R:4894;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:44:"8:wm-license-creator-date-of-birth-and-death";a:4:{i:0;R:4894;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:38:"8:wm-license-creator-location-of-birth";a:4:{i:0;R:4894;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:48:"8:wm-license-creator-location-of-birth-and-death";a:4:{i:0;R:4894;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:32:"8:wm-license-creator-work-period";a:4:{i:0;R:4894;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:34:"8:wm-license-creator-work-location";a:4:{i:0;R:4894;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:29:"8:wm-license-creator-linkback";a:4:{i:0;R:4894;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:21:"8:wm-license-fal-text";a:4:{i:0;R:4894;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:26:"8:wm-license-fal-wiki-link";a:4:{i:0;R:4894;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:26:"8:wm-license-fal-full-link";a:4:{i:0;R:4894;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:26:"8:wm-license-fsf-wiki-link";a:4:{i:0;R:4894;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:36:"8:wm-license-free-software-wiki-link";a:4:{i:0;R:4894;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:31:"8:wm-license-gfdl-1.2-and-later";a:4:{i:0;R:4894;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:26:"8:wm-license-gfdl-1.2-only";a:4:{i:0;R:4894;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:33:"8:wm-license-gfdl-1.2-only-header";a:4:{i:0;R:4894;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:31:"8:wm-license-gfdl-1.3-and-later";a:4:{i:0;R:4894;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:26:"8:wm-license-gfdl-1.3-only";a:4:{i:0;R:4894;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:27:"8:wm-license-gfdl-wiki-link";a:4:{i:0;R:4894;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:31:"8:wm-license-gfdl-full-1.2-link";a:4:{i:0;R:4894;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:31:"8:wm-license-gfdl-full-1.3-link";a:4:{i:0;R:4894;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:21:"8:wm-license-gpl-text";a:4:{i:0;R:4894;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:26:"8:wm-license-gpl-wiki-link";a:4:{i:0;R:4894;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:28:"8:wm-license-gpl-2-full-link";a:4:{i:0;R:4894;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:28:"8:wm-license-gpl-3-full-link";a:4:{i:0;R:4894;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:38:"8:wm-license-information-table-summary";a:4:{i:0;R:4894;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:36:"8:wm-license-information-description";a:4:{i:0;R:4894;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:44:"8:wm-license-information-description-missing";a:4:{i:0;R:4894;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:52:"8:wm-license-information-description-missing-request";a:4:{i:0;R:4894;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:31:"8:wm-license-information-source";a:4:{i:0;R:4894;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:39:"8:wm-license-information-source-missing";a:4:{i:0;R:4894;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:47:"8:wm-license-information-source-missing-request";a:4:{i:0;R:4894;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:29:"8:wm-license-information-date";a:4:{i:0;R:4894;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:31:"8:wm-license-information-author";a:4:{i:0;R:4894;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:39:"8:wm-license-information-author-missing";a:4:{i:0;R:4894;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:35:"8:wm-license-information-permission";a:4:{i:0;R:4894;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:48:"8:wm-license-information-permission-reusing-link";a:4:{i:0;R:4894;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:48:"8:wm-license-information-permission-reusing-text";a:4:{i:0;R:4894;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:45:"8:wm-license-information-permission-see-below";a:4:{i:0;R:4894;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:39:"8:wm-license-information-other-versions";a:4:{i:0;R:4894;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:22:"8:wm-license-lgpl-text";a:4:{i:0;R:4894;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:27:"8:wm-license-lgpl-wiki-link";a:4:{i:0;R:4894;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:31:"8:wm-license-lgpl-2.1-full-link";a:4:{i:0;R:4894;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:29:"8:wm-license-lgpl-3-full-link";a:4:{i:0;R:4894;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:34:"8:wm-license-licensing-update-text";a:4:{i:0;R:4894;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:39:"8:wm-license-licensing-update-wiki-link";a:4:{i:0;R:4894;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:32:"8:wm-license-original-upload-log";a:4:{i:0;R:4894;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:21:"8:wm-license-own-work";a:4:{i:0;R:4894;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:32:"8:wm-license-pd-author-self-text";a:4:{i:0;R:4894;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:39:"8:wm-license-pd-author-with-author-text";a:4:{i:0;R:4894;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:43:"8:wm-license-pd-author-not-legally-possible";a:4:{i:0;R:4894;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:39:"8:wm-license-pd-author-self-any-purpose";a:4:{i:0;R:4894;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:46:"8:wm-license-pd-author-with-author-any-purpose";a:4:{i:0;R:4894;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:31:"8:wm-license-pd-usgov-wiki-link";a:4:{i:0;R:4894;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:36:"8:wm-license-pd-usgov-work-wiki-link";a:4:{i:0;R:4894;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:31:"8:wm-license-pd-usgov-fema-text";a:4:{i:0;R:4894;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:36:"8:wm-license-pd-usgov-fema-wiki-link";a:4:{i:0;R:4894;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:35:"8:wm-license-pd-usgov-military-text";a:4:{i:0;R:4894;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:53:"8:wm-license-pd-usgov-military-armed-forces-wiki-link";a:4:{i:0;R:4894;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:44:"8:wm-license-pd-usgov-military-dod-wiki-link";a:4:{i:0;R:4894;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:45:"8:wm-license-pd-usgov-military-air-force-text";a:4:{i:0;R:4894;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:50:"8:wm-license-pd-usgov-military-air-force-wiki-link";a:4:{i:0;R:4894;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:40:"8:wm-license-pd-usgov-military-army-text";a:4:{i:0;R:4894;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:45:"8:wm-license-pd-usgov-military-army-wiki-link";a:4:{i:0;R:4894;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:40:"8:wm-license-pd-usgov-military-navy-text";a:4:{i:0;R:4894;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:45:"8:wm-license-pd-usgov-military-navy-wiki-link";a:4:{i:0;R:4894;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:31:"8:wm-license-pd-usgov-noaa-text";a:4:{i:0;R:4894;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:36:"8:wm-license-pd-usgov-noaa-wiki-link";a:4:{i:0;R:4894;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:25:"8:wm-license-pd-wiki-link";a:4:{i:0;R:4894;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:29:"8:wm-license-self-one-license";a:4:{i:0;R:4894;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:41:"8:wm-license-self-one-license-with-author";a:4:{i:0;R:4894;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:35:"8:wm-license-self-multiple-licenses";a:4:{i:0;R:4894;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:47:"8:wm-license-self-multiple-licenses-with-author";a:4:{i:0;R:4894;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:42:"8:wm-license-self-multiple-licenses-select";a:4:{i:0;R:4894;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:24:"8:wikimediamessages-desc";a:4:{i:0;s:21:"ext-wikimediamessages";i:1;R:799;i:2;R:3234;i:3;R:3235;}s:17:"8:sitesupport-url";a:4:{i:0;R:5003;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:13:"8:sitesupport";a:4:{i:0;R:5003;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:23:"8:tooltip-n-sitesupport";a:4:{i:0;R:5003;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:13:"8:wmf-sidebar";a:4:{i:0;R:5003;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:33:"8:specialpages-group-contribution";a:4:{i:0;R:5003;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:12:"8:robots.txt";a:4:{i:0;R:5003;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:15:"8:nstab-creator";a:4:{i:0;R:5003;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:19:"8:nstab-institution";a:4:{i:0;R:5003;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:16:"8:nstab-sequence";a:4:{i:0;R:5003;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:17:"8:nstab-timedtext";a:4:{i:0;R:5003;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:19:"8:group-abusefilter";a:4:{i:0;R:5003;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:22:"8:group-accountcreator";a:4:{i:0;R:5003;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:14:"8:group-arbcom";a:4:{i:0;R:5003;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:21:"8:group-autopatrolled";a:4:{i:0;R:5003;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:20:"8:group-autoreviewer";a:4:{i:0;R:5003;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:17:"8:group-bigexport";a:4:{i:0;R:5003;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:16:"8:group-botadmin";a:4:{i:0;R:5003;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:17:"8:group-confirmed";a:4:{i:0;R:5003;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:21:"8:group-editprotected";a:4:{i:0;R:5003;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:24:"8:group-ex_administrator";a:4:{i:0;R:5003;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:21:"8:group-ex_bureaucrat";a:4:{i:0;R:5003;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:18:"8:group-eliminator";a:4:{i:0;R:5003;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:17:"8:group-filemover";a:4:{i:0;R:5003;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:13:"8:group-flood";a:4:{i:0;R:5003;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:15:"8:group-founder";a:4:{i:0;R:5003;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:22:"8:group-image-reviewer";a:4:{i:0;R:5003;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:14:"8:group-import";a:4:{i:0;R:5003;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:24:"8:group-interface_editor";a:4:{i:0;R:5003;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:22:"8:group-ipblock-exempt";a:4:{i:0;R:5003;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:19:"8:group-otrs-member";a:4:{i:0;R:5003;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:21:"8:wmf-group-patroller";a:4:{i:0;R:5003;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:18:"8:group-researcher";a:4:{i:0;R:5003;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:18:"8:group-rollbacker";a:4:{i:0;R:5003;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:17:"8:group-transwiki";a:4:{i:0;R:5003;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:15:"8:group-trusted";a:4:{i:0;R:5003;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:26:"8:group-abusefilter-member";a:4:{i:0;R:5003;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:29:"8:group-accountcreator-member";a:4:{i:0;R:5003;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:21:"8:group-arbcom-member";a:4:{i:0;R:5003;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:28:"8:group-autopatrolled-member";a:4:{i:0;R:5003;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:27:"8:group-autoreviewer-member";a:4:{i:0;R:5003;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:24:"8:group-bigexport-member";a:4:{i:0;R:5003;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:23:"8:group-botadmin-member";a:4:{i:0;R:5003;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:24:"8:group-confirmed-member";a:4:{i:0;R:5003;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:28:"8:group-editprotected-member";a:4:{i:0;R:5003;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:25:"8:group-eliminator-member";a:4:{i:0;R:5003;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:31:"8:group-ex_administrator-member";a:4:{i:0;R:5003;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:28:"8:group-ex_bureaucrat-member";a:4:{i:0;R:5003;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:24:"8:group-filemover-member";a:4:{i:0;R:5003;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:20:"8:group-flood-member";a:4:{i:0;R:5003;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:22:"8:group-founder-member";a:4:{i:0;R:5003;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:29:"8:group-image-reviewer-member";a:4:{i:0;R:5003;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:21:"8:group-import-member";a:4:{i:0;R:5003;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:31:"8:group-interface_editor-member";a:4:{i:0;R:5003;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:29:"8:group-ipblock-exempt-member";a:4:{i:0;R:5003;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:26:"8:group-otrs-member-member";a:4:{i:0;R:5003;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:28:"8:wmf-group-patroller-member";a:4:{i:0;R:5003;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:25:"8:group-researcher-member";a:4:{i:0;R:5003;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:25:"8:group-rollbacker-member";a:4:{i:0;R:5003;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:24:"8:group-transwiki-member";a:4:{i:0;R:5003;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:22:"8:group-trusted-member";a:4:{i:0;R:5003;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:23:"8:grouppage-abusefilter";a:4:{i:0;R:5003;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:26:"8:grouppage-accountcreator";a:4:{i:0;R:5003;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:18:"8:grouppage-arbcom";a:4:{i:0;R:5003;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:25:"8:grouppage-autopatrolled";a:4:{i:0;R:5003;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:24:"8:grouppage-autoreviewer";a:4:{i:0;R:5003;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:21:"8:grouppage-bigexport";a:4:{i:0;R:5003;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:20:"8:grouppage-botadmin";a:4:{i:0;R:5003;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:21:"8:grouppage-confirmed";a:4:{i:0;R:5003;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:25:"8:grouppage-editprotected";a:4:{i:0;R:5003;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:22:"8:grouppage-eliminator";a:4:{i:0;R:5003;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:28:"8:grouppage-ex_administrator";a:4:{i:0;R:5003;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:25:"8:grouppage-ex_bureaucrat";a:4:{i:0;R:5003;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:21:"8:grouppage-filemover";a:4:{i:0;R:5003;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:17:"8:grouppage-flood";a:4:{i:0;R:5003;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:19:"8:grouppage-founder";a:4:{i:0;R:5003;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:26:"8:grouppage-image-reviewer";a:4:{i:0;R:5003;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:18:"8:grouppage-import";a:4:{i:0;R:5003;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:28:"8:grouppage-interface_editor";a:4:{i:0;R:5003;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:26:"8:grouppage-ipblock-exempt";a:4:{i:0;R:5003;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:23:"8:grouppage-otrs-member";a:4:{i:0;R:5003;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:22:"8:grouppage-researcher";a:4:{i:0;R:5003;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:22:"8:grouppage-rollbacker";a:4:{i:0;R:5003;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:21:"8:grouppage-transwiki";a:4:{i:0;R:5003;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:19:"8:grouppage-trusted";a:4:{i:0;R:5003;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:15:"8:group-steward";a:4:{i:0;R:5003;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:16:"8:group-sysadmin";a:4:{i:0;R:5003;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:21:"8:group-editinterface";a:4:{i:0;R:5003;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:18:"8:group-global_bot";a:4:{i:0;R:5003;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:23:"8:group-global_rollback";a:4:{i:0;R:5003;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:21:"8:group-global_sysops";a:4:{i:0;R:5003;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:17:"8:group-ombudsmen";a:4:{i:0;R:5003;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:17:"8:wmf-group-staff";a:4:{i:0;R:5003;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:22:"8:group-steward-member";a:4:{i:0;R:5003;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:23:"8:group-sysadmin-member";a:4:{i:0;R:5003;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:28:"8:group-editinterface-member";a:4:{i:0;R:5003;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:25:"8:group-global_bot-member";a:4:{i:0;R:5003;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:30:"8:group-global_rollback-member";a:4:{i:0;R:5003;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:28:"8:group-global_sysops-member";a:4:{i:0;R:5003;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:24:"8:group-ombudsmen-member";a:4:{i:0;R:5003;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:24:"8:wmf-group-staff-member";a:4:{i:0;R:5003;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:19:"8:grouppage-steward";a:4:{i:0;R:5003;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:20:"8:grouppage-sysadmin";a:4:{i:0;R:5003;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:22:"8:grouppage-global_bot";a:4:{i:0;R:5003;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:27:"8:grouppage-global_rollback";a:4:{i:0;R:5003;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:25:"8:grouppage-global_sysops";a:4:{i:0;R:5003;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:21:"8:grouppage-ombudsmen";a:4:{i:0;R:5003;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:21:"8:wmf-grouppage-staff";a:4:{i:0;R:5003;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:24:"8:group-translationadmin";a:4:{i:0;R:5003;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:31:"8:group-translationadmin-member";a:4:{i:0;R:5003;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:28:"8:grouppage-translationadmin";a:4:{i:0;R:5003;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:13:"8:group-coder";a:4:{i:0;R:5003;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:20:"8:group-coder-member";a:4:{i:0;R:5003;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:17:"8:grouppage-coder";a:4:{i:0;R:5003;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:16:"8:group-inactive";a:4:{i:0;R:5003;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:23:"8:group-inactive-member";a:4:{i:0;R:5003;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:20:"8:grouppage-inactive";a:4:{i:0;R:5003;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:25:"8:shared-repo-name-shared";a:4:{i:0;R:5003;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:21:"8:wikimedia-copyright";a:4:{i:0;R:5003;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:28:"8:wikimedia-copyrightwarning";a:4:{i:0;R:5003;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:32:"8:wikimedia-editpage-tos-summary";a:4:{i:0;R:5003;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:23:"8:cant-delete-main-page";a:4:{i:0;R:5003;i:1;R:799;i:2;R:3234;i:3;R:3235;}s:18:"8:abusefilter-desc";a:3:{i:0;s:15:"ext-abusefilter";i:1;R:799;i:2;R:3234;}s:13:"8:abusefilter";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:10:"8:abuselog";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:19:"8:abusefilter-intro";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:26:"8:abusefilter-mustbeeditor";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:21:"8:abusefilter-warning";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:24:"8:abusefilter-disallowed";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:29:"8:abusefilter-blocked-display";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:23:"8:abusefilter-degrouped";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:33:"8:abusefilter-autopromote-blocked";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:21:"8:abusefilter-blocker";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:25:"8:abusefilter-blockreason";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:27:"8:abusefilter-degroupreason";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:29:"8:abusefilter-accountreserved";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:26:"8:right-abusefilter-modify";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:24:"8:right-abusefilter-view";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:23:"8:right-abusefilter-log";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:30:"8:right-abusefilter-log-detail";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:27:"8:right-abusefilter-private";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:37:"8:right-abusefilter-modify-restricted";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:26:"8:right-abusefilter-revert";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:32:"8:right-abusefilter-view-private";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:28:"8:right-abusefilter-hide-log";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:30:"8:right-abusefilter-hidden-log";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:27:"8:action-abusefilter-modify";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:25:"8:action-abusefilter-view";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:24:"8:action-abusefilter-log";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:31:"8:action-abusefilter-log-detail";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:28:"8:action-abusefilter-private";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:38:"8:action-abusefilter-modify-restricted";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:27:"8:action-abusefilter-revert";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:33:"8:action-abusefilter-view-private";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:17:"8:abusefilter-log";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:25:"8:abusefilter-log-summary";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:24:"8:abusefilter-log-search";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:29:"8:abusefilter-log-search-user";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:31:"8:abusefilter-log-search-filter";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:30:"8:abusefilter-log-search-title";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:31:"8:abusefilter-log-search-submit";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:23:"8:abusefilter-log-entry";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:36:"8:abusefilter-log-detailedentry-meta";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:38:"8:abusefilter-log-detailedentry-global";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:37:"8:abusefilter-log-detailedentry-local";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:29:"8:abusefilter-log-detailslink";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:26:"8:abusefilter-log-hidelink";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:32:"8:abusefilter-log-details-legend";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:29:"8:abusefilter-log-details-var";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:29:"8:abusefilter-log-details-val";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:30:"8:abusefilter-log-details-vars";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:33:"8:abusefilter-log-details-private";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:28:"8:abusefilter-log-details-ip";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:27:"8:abusefilter-log-noactions";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:30:"8:abusefilter-log-details-diff";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:32:"8:abusefilter-log-linkoncontribs";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:37:"8:abusefilter-log-linkoncontribs-text";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:24:"8:abusefilter-log-hidden";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:22:"8:abusefilter-log-hide";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:36:"8:abusefilter-log-cannot-see-details";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:32:"8:abusefilter-log-details-hidden";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:29:"8:abusefilter-log-hide-legend";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:25:"8:abusefilter-log-hide-id";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:29:"8:abusefilter-log-hide-hidden";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:29:"8:abusefilter-log-hide-reason";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:32:"8:abusefilter-log-hide-forbidden";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:31:"8:abusefilter-logentry-suppress";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:33:"8:abusefilter-logentry-unsuppress";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:24:"8:abusefilter-management";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:18:"8:abusefilter-list";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:21:"8:abusefilter-list-id";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:25:"8:abusefilter-list-status";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:25:"8:abusefilter-list-public";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:31:"8:abusefilter-list-consequences";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:29:"8:abusefilter-list-visibility";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:27:"8:abusefilter-list-hitcount";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:23:"8:abusefilter-list-edit";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:26:"8:abusefilter-list-details";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:24:"8:abusefilter-list-limit";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:31:"8:abusefilter-list-lastmodified";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:20:"8:abusefilter-hidden";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:22:"8:abusefilter-unhidden";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:21:"8:abusefilter-enabled";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:21:"8:abusefilter-deleted";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:22:"8:abusefilter-disabled";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:22:"8:abusefilter-hitcount";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:17:"8:abusefilter-new";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:20:"8:abusefilter-return";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:27:"8:abusefilter-status-global";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:26:"8:abusefilter-list-options";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:34:"8:abusefilter-list-options-deleted";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:39:"8:abusefilter-list-options-deleted-only";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:39:"8:abusefilter-list-options-deleted-hide";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:39:"8:abusefilter-list-options-deleted-show";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:35:"8:abusefilter-list-options-disabled";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:39:"8:abusefilter-list-options-hidedisabled";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:33:"8:abusefilter-list-options-submit";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:24:"8:abusefilter-tools-text";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:24:"8:abusefilter-tools-expr";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:30:"8:abusefilter-tools-submitexpr";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:33:"8:abusefilter-tools-reautoconfirm";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:38:"8:abusefilter-tools-reautoconfirm-user";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:40:"8:abusefilter-tools-reautoconfirm-submit";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:32:"8:abusefilter-reautoconfirm-none";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:38:"8:abusefilter-reautoconfirm-notallowed";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:32:"8:abusefilter-reautoconfirm-done";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:20:"8:abusefilter-status";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:27:"8:abusefilter-edit-subtitle";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:29:"8:abusefilter-edit-oldwarning";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:31:"8:abusefilter-edit-status-label";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:25:"8:abusefilter-edit-status";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:28:"8:abusefilter-edit-throttled";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:22:"8:abusefilter-edit-new";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:23:"8:abusefilter-edit-save";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:21:"8:abusefilter-edit-id";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:30:"8:abusefilter-edit-description";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:24:"8:abusefilter-edit-flags";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:26:"8:abusefilter-edit-enabled";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:26:"8:abusefilter-edit-deleted";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:25:"8:abusefilter-edit-hidden";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:24:"8:abusefilter-edit-rules";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:24:"8:abusefilter-edit-notes";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:26:"8:abusefilter-edit-lastmod";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:31:"8:abusefilter-edit-lastmod-text";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:27:"8:abusefilter-edit-hitcount";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:31:"8:abusefilter-edit-consequences";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:30:"8:abusefilter-edit-action-warn";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:34:"8:abusefilter-edit-action-disallow";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:30:"8:abusefilter-edit-action-flag";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:42:"8:abusefilter-edit-action-blockautopromote";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:33:"8:abusefilter-edit-action-degroup";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:31:"8:abusefilter-edit-action-block";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:34:"8:abusefilter-edit-action-throttle";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:36:"8:abusefilter-edit-action-rangeblock";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:29:"8:abusefilter-edit-action-tag";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:33:"8:abusefilter-edit-throttle-count";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:34:"8:abusefilter-edit-throttle-period";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:35:"8:abusefilter-edit-throttle-seconds";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:34:"8:abusefilter-edit-throttle-groups";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:31:"8:abusefilter-edit-warn-message";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:29:"8:abusefilter-edit-warn-other";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:35:"8:abusefilter-edit-warn-other-label";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:31:"8:abusefilter-edit-warn-actions";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:31:"8:abusefilter-edit-warn-preview";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:28:"8:abusefilter-edit-warn-edit";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:26:"8:abusefilter-edit-tag-tag";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:25:"8:abusefilter-edit-denied";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:23:"8:abusefilter-edit-main";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:32:"8:abusefilter-edit-done-subtitle";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:23:"8:abusefilter-edit-done";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:28:"8:abusefilter-edit-badsyntax";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:29:"8:abusefilter-edit-restricted";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:30:"8:abusefilter-edit-viewhistory";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:26:"8:abusefilter-edit-history";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:24:"8:abusefilter-edit-check";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:28:"8:abusefilter-edit-badfilter";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:25:"8:abusefilter-edit-revert";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:24:"8:abusefilter-edit-tools";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:28:"8:abusefilter-edit-test-link";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:25:"8:abusefilter-edit-export";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:27:"8:abusefilter-edit-syntaxok";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:28:"8:abusefilter-edit-syntaxerr";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:27:"8:abusefilter-edit-bad-tags";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:29:"8:abusefilter-edit-notallowed";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:33:"8:abusefilter-edit-builder-select";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:46:"8:abusefilter-edit-builder-group-op-arithmetic";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:49:"8:abusefilter-edit-builder-op-arithmetic-addition";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:52:"8:abusefilter-edit-builder-op-arithmetic-subtraction";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:55:"8:abusefilter-edit-builder-op-arithmetic-multiplication";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:47:"8:abusefilter-edit-builder-op-arithmetic-divide";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:47:"8:abusefilter-edit-builder-op-arithmetic-modulo";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:44:"8:abusefilter-edit-builder-op-arithmetic-pow";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:46:"8:abusefilter-edit-builder-group-op-comparison";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:46:"8:abusefilter-edit-builder-op-comparison-equal";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:49:"8:abusefilter-edit-builder-op-comparison-notequal";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:43:"8:abusefilter-edit-builder-op-comparison-lt";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:43:"8:abusefilter-edit-builder-op-comparison-gt";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:44:"8:abusefilter-edit-builder-op-comparison-lte";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:44:"8:abusefilter-edit-builder-op-comparison-gte";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:40:"8:abusefilter-edit-builder-group-op-bool";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:38:"8:abusefilter-edit-builder-op-bool-not";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:38:"8:abusefilter-edit-builder-op-bool-and";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:37:"8:abusefilter-edit-builder-op-bool-or";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:38:"8:abusefilter-edit-builder-op-bool-xor";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:37:"8:abusefilter-edit-builder-group-misc";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:34:"8:abusefilter-edit-builder-misc-in";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:36:"8:abusefilter-edit-builder-misc-like";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:37:"8:abusefilter-edit-builder-misc-rlike";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:38:"8:abusefilter-edit-builder-misc-irlike";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:40:"8:abusefilter-edit-builder-misc-contains";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:41:"8:abusefilter-edit-builder-misc-stringlit";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:36:"8:abusefilter-edit-builder-misc-tern";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:36:"8:abusefilter-edit-builder-misc-cond";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:38:"8:abusefilter-edit-builder-group-funcs";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:39:"8:abusefilter-edit-builder-funcs-length";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:38:"8:abusefilter-edit-builder-funcs-lcase";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:39:"8:abusefilter-edit-builder-funcs-ccnorm";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:42:"8:abusefilter-edit-builder-funcs-rmdoubles";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:45:"8:abusefilter-edit-builder-funcs-specialratio";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:37:"8:abusefilter-edit-builder-funcs-norm";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:38:"8:abusefilter-edit-builder-funcs-count";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:39:"8:abusefilter-edit-builder-funcs-rcount";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:45:"8:abusefilter-edit-builder-funcs-rmwhitespace";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:43:"8:abusefilter-edit-builder-funcs-rmspecials";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:44:"8:abusefilter-edit-builder-funcs-ip_in_range";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:45:"8:abusefilter-edit-builder-funcs-contains-any";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:39:"8:abusefilter-edit-builder-funcs-substr";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:39:"8:abusefilter-edit-builder-funcs-strpos";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:44:"8:abusefilter-edit-builder-funcs-str_replace";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:40:"8:abusefilter-edit-builder-funcs-rescape";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:40:"8:abusefilter-edit-builder-funcs-set_var";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:37:"8:abusefilter-edit-builder-group-vars";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:43:"8:abusefilter-edit-builder-vars-accountname";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:41:"8:abusefilter-edit-builder-vars-timestamp";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:38:"8:abusefilter-edit-builder-vars-action";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:42:"8:abusefilter-edit-builder-vars-addedlines";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:37:"8:abusefilter-edit-builder-vars-delta";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:36:"8:abusefilter-edit-builder-vars-diff";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:39:"8:abusefilter-edit-builder-vars-newsize";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:39:"8:abusefilter-edit-builder-vars-oldsize";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:44:"8:abusefilter-edit-builder-vars-removedlines";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:39:"8:abusefilter-edit-builder-vars-summary";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:42:"8:abusefilter-edit-builder-vars-article-id";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:42:"8:abusefilter-edit-builder-vars-article-ns";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:44:"8:abusefilter-edit-builder-vars-article-text";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:52:"8:abusefilter-edit-builder-vars-article-prefixedtext";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:44:"8:abusefilter-edit-builder-vars-movedfrom-id";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:44:"8:abusefilter-edit-builder-vars-movedfrom-ns";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:46:"8:abusefilter-edit-builder-vars-movedfrom-text";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:54:"8:abusefilter-edit-builder-vars-movedfrom-prefixedtext";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:42:"8:abusefilter-edit-builder-vars-movedto-id";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:42:"8:abusefilter-edit-builder-vars-movedto-ns";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:44:"8:abusefilter-edit-builder-vars-movedto-text";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:52:"8:abusefilter-edit-builder-vars-movedto-prefixedtext";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:46:"8:abusefilter-edit-builder-vars-user-editcount";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:40:"8:abusefilter-edit-builder-vars-user-age";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:41:"8:abusefilter-edit-builder-vars-user-name";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:43:"8:abusefilter-edit-builder-vars-user-groups";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:49:"8:abusefilter-edit-builder-vars-user-emailconfirm";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:51:"8:abusefilter-edit-builder-vars-recent-contributors";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:41:"8:abusefilter-edit-builder-vars-all-links";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:43:"8:abusefilter-edit-builder-vars-added-links";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:45:"8:abusefilter-edit-builder-vars-removed-links";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:40:"8:abusefilter-edit-builder-vars-old-text";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:40:"8:abusefilter-edit-builder-vars-new-text";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:49:"8:abusefilter-edit-builder-vars-new-text-stripped";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:40:"8:abusefilter-edit-builder-vars-new-html";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:49:"8:abusefilter-edit-builder-vars-restrictions-edit";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:49:"8:abusefilter-edit-builder-vars-restrictions-move";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:49:"8:abusefilter-edit-builder-vars-old-text-stripped";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:41:"8:abusefilter-edit-builder-vars-old-links";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:40:"8:abusefilter-edit-builder-vars-old-html";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:42:"8:abusefilter-edit-builder-vars-minor-edit";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:41:"8:abusefilter-edit-builder-vars-file-sha1";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:24:"8:abusefilter-filter-log";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:21:"8:abusefilter-history";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:29:"8:abusefilter-history-foruser";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:28:"8:abusefilter-history-hidden";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:29:"8:abusefilter-history-enabled";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:28:"8:abusefilter-history-global";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:31:"8:abusefilter-history-timestamp";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:26:"8:abusefilter-history-user";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:28:"8:abusefilter-history-public";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:27:"8:abusefilter-history-flags";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:28:"8:abusefilter-history-filter";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:30:"8:abusefilter-history-comments";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:29:"8:abusefilter-history-actions";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:30:"8:abusefilter-history-backedit";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:29:"8:abusefilter-history-deleted";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:30:"8:abusefilter-history-filterid";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:35:"8:abusefilter-history-select-legend";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:33:"8:abusefilter-history-select-user";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:35:"8:abusefilter-history-select-submit";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:26:"8:abusefilter-history-diff";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:34:"8:abusefilter-history-error-hidden";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:39:"8:abusefilter-exception-unexpectedatend";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:40:"8:abusefilter-exception-expectednotfound";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:43:"8:abusefilter-exception-unrecognisedkeyword";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:39:"8:abusefilter-exception-unexpectedtoken";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:38:"8:abusefilter-exception-unclosedstring";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:39:"8:abusefilter-exception-invalidoperator";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:41:"8:abusefilter-exception-unrecognisedtoken";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:32:"8:abusefilter-exception-noparams";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:36:"8:abusefilter-exception-dividebyzero";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:39:"8:abusefilter-exception-unrecognisedvar";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:37:"8:abusefilter-exception-notenoughargs";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:36:"8:abusefilter-exception-regexfailure";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:39:"8:abusefilter-exception-overridebuiltin";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:35:"8:abusefilter-exception-outofbounds";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:31:"8:abusefilter-exception-notlist";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:24:"8:abusefilter-action-tag";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:29:"8:abusefilter-action-throttle";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:25:"8:abusefilter-action-warn";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:37:"8:abusefilter-action-blockautopromote";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:26:"8:abusefilter-action-block";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:28:"8:abusefilter-action-degroup";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:31:"8:abusefilter-action-rangeblock";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:29:"8:abusefilter-action-disallow";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:26:"8:abusefilter-revert-title";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:26:"8:abusefilter-revert-intro";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:33:"8:abusefilter-revert-preview-item";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:34:"8:abusefilter-revert-search-legend";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:32:"8:abusefilter-revert-periodstart";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:30:"8:abusefilter-revert-periodend";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:27:"8:abusefilter-revert-search";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:27:"8:abusefilter-revert-filter";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:34:"8:abusefilter-revert-preview-intro";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:28:"8:abusefilter-revert-confirm";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:28:"8:abusefilter-revert-success";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:27:"8:abusefilter-revert-reason";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:32:"8:abusefilter-revert-reasonfield";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:18:"8:abusefilter-test";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:24:"8:abusefilter-test-intro";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:25:"8:abusefilter-test-legend";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:30:"8:abusefilter-test-load-filter";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:25:"8:abusefilter-test-submit";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:23:"8:abusefilter-test-load";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:23:"8:abusefilter-test-user";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:31:"8:abusefilter-test-period-start";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:29:"8:abusefilter-test-period-end";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:23:"8:abusefilter-test-page";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:31:"8:abusefilter-test-shownegative";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:28:"8:abusefilter-test-syntaxerr";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:33:"8:abusefilter-changeslist-examine";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:21:"8:abusefilter-examine";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:27:"8:abusefilter-examine-intro";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:28:"8:abusefilter-examine-legend";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:26:"8:abusefilter-examine-diff";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:26:"8:abusefilter-examine-user";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:27:"8:abusefilter-examine-title";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:28:"8:abusefilter-examine-submit";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:26:"8:abusefilter-examine-vars";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:26:"8:abusefilter-examine-test";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:33:"8:abusefilter-examine-test-button";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:27:"8:abusefilter-examine-match";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:29:"8:abusefilter-examine-nomatch";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:33:"8:abusefilter-examine-syntaxerror";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:30:"8:abusefilter-examine-notfound";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:34:"8:abusefilter-examine-incompatible";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:31:"8:abusefilter-examine-noresults";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:20:"8:abusefilter-topnav";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:25:"8:abusefilter-topnav-home";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:25:"8:abusefilter-topnav-test";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:28:"8:abusefilter-topnav-examine";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:24:"8:abusefilter-topnav-log";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:26:"8:abusefilter-topnav-tools";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:27:"8:abusefilter-topnav-import";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:22:"8:abusefilter-log-name";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:24:"8:abusefilter-log-header";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:30:"8:abusefilter-log-entry-modify";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:27:"8:abusefilter-log-noresults";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:24:"8:abusefilter-diff-title";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:23:"8:abusefilter-diff-item";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:26:"8:abusefilter-diff-version";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:23:"8:abusefilter-diff-info";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:26:"8:abusefilter-diff-pattern";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:26:"8:abusefilter-diff-invalid";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:30:"8:abusefilter-diff-backhistory";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:26:"8:abusefilter-import-intro";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:27:"8:abusefilter-import-submit";a:3:{i:0;R:5126;i:1;R:799;i:2;R:3234;}s:14:"8:antibot-desc";a:3:{i:0;s:11:"ext-antibot";i:1;R:799;i:2;R:3234;}s:12:"8:apisb-desc";a:3:{i:0;s:14:"ext-apisandbox";i:1;R:799;i:2;R:3234;}s:12:"8:apisandbox";a:3:{i:0;R:5487;i:1;R:799;i:2;R:3234;}s:13:"8:apisb-no-js";a:3:{i:0;R:5487;i:1;R:799;i:2;R:3234;}s:13:"8:apisb-intro";a:3:{i:0;R:5487;i:1;R:799;i:2;R:3234;}s:20:"8:apisb-api-disabled";a:3:{i:0;R:5487;i:1;R:799;i:2;R:3234;}s:25:"8:apisb-legend-parameters";a:3:{i:0;R:5487;i:1;R:799;i:2;R:3234;}s:21:"8:apisb-legend-result";a:3:{i:0;R:5487;i:1;R:799;i:2;R:3234;}s:33:"8:apisb-legend-generic-parameters";a:3:{i:0;R:5487;i:1;R:799;i:2;R:3234;}s:35:"8:apisb-legend-generator-parameters";a:3:{i:0;R:5487;i:1;R:799;i:2;R:3234;}s:26:"8:apisb-result-request-url";a:3:{i:0;R:5487;i:1;R:799;i:2;R:3234;}s:27:"8:apisb-result-request-post";a:3:{i:0;R:5487;i:1;R:799;i:2;R:3234;}s:20:"8:apisb-label-format";a:3:{i:0;R:5487;i:1;R:799;i:2;R:3234;}s:20:"8:apisb-label-action";a:3:{i:0;R:5487;i:1;R:799;i:2;R:3234;}s:17:"8:apisb-label-doc";a:3:{i:0;R:5487;i:1;R:799;i:2;R:3234;}s:21:"8:apisb-select-action";a:3:{i:0;R:5487;i:1;R:799;i:2;R:3234;}s:20:"8:apisb-select-query";a:3:{i:0;R:5487;i:1;R:799;i:2;R:3234;}s:20:"8:apisb-select-value";a:3:{i:0;R:5487;i:1;R:799;i:2;R:3234;}s:17:"8:apisb-docs-more";a:3:{i:0;R:5487;i:1;R:799;i:2;R:3234;}s:20:"8:apisb-params-param";a:3:{i:0;R:5487;i:1;R:799;i:2;R:3234;}s:20:"8:apisb-params-input";a:3:{i:0;R:5487;i:1;R:799;i:2;R:3234;}s:19:"8:apisb-params-desc";a:3:{i:0;R:5487;i:1;R:799;i:2;R:3234;}s:15:"8:apisb-loading";a:3:{i:0;R:5487;i:1;R:799;i:2;R:3234;}s:18:"8:apisb-load-error";a:3:{i:0;R:5487;i:1;R:799;i:2;R:3234;}s:21:"8:apisb-request-error";a:3:{i:0;R:5487;i:1;R:799;i:2;R:3234;}s:24:"8:apisb-namespaces-error";a:3:{i:0;R:5487;i:1;R:799;i:2;R:3234;}s:15:"8:apisb-ns-main";a:3:{i:0;R:5487;i:1;R:799;i:2;R:3234;}s:14:"8:apisb-submit";a:3:{i:0;R:5487;i:1;R:799;i:2;R:3234;}s:18:"8:apisb-query-prop";a:3:{i:0;R:5487;i:1;R:799;i:2;R:3234;}s:18:"8:apisb-query-list";a:3:{i:0;R:5487;i:1;R:799;i:2;R:3234;}s:18:"8:apisb-query-meta";a:3:{i:0;R:5487;i:1;R:799;i:2;R:3234;}s:15:"8:apisb-example";a:3:{i:0;R:5487;i:1;R:799;i:2;R:3234;}s:16:"8:apisb-examples";a:3:{i:0;R:5487;i:1;R:799;i:2;R:3234;}s:13:"8:apisb-clear";a:3:{i:0;R:5487;i:1;R:799;i:2;R:3234;}s:20:"8:apisb-request-time";a:3:{i:0;R:5487;i:1;R:799;i:2;R:3234;}s:17:"8:articlefeedback";a:3:{i:0;s:19:"ext-articlefeedback";i:1;R:799;i:2;R:3234;}s:22:"8:articlefeedback-desc";a:3:{i:0;R:5522;i:1;R:799;i:2;R:3234;}s:40:"8:articlefeedback-survey-question-origin";a:3:{i:0;R:5522;i:1;R:799;i:2;R:3234;}s:42:"8:articlefeedback-survey-question-whyrated";a:3:{i:0;R:5522;i:1;R:799;i:2;R:3234;}s:58:"8:articlefeedback-survey-answer-whyrated-contribute-rating";a:3:{i:0;R:5522;i:1;R:799;i:2;R:3234;}s:52:"8:articlefeedback-survey-answer-whyrated-development";a:3:{i:0;R:5522;i:1;R:799;i:2;R:3234;}s:56:"8:articlefeedback-survey-answer-whyrated-contribute-wiki";a:3:{i:0;R:5522;i:1;R:799;i:2;R:3234;}s:56:"8:articlefeedback-survey-answer-whyrated-sharing-opinion";a:3:{i:0;R:5522;i:1;R:799;i:2;R:3234;}s:50:"8:articlefeedback-survey-answer-whyrated-didntrate";a:3:{i:0;R:5522;i:1;R:799;i:2;R:3234;}s:46:"8:articlefeedback-survey-answer-whyrated-other";a:3:{i:0;R:5522;i:1;R:799;i:2;R:3234;}s:40:"8:articlefeedback-survey-question-useful";a:3:{i:0;R:5522;i:1;R:799;i:2;R:3234;}s:48:"8:articlefeedback-survey-question-useful-iffalse";a:3:{i:0;R:5522;i:1;R:799;i:2;R:3234;}s:42:"8:articlefeedback-survey-question-comments";a:3:{i:0;R:5522;i:1;R:799;i:2;R:3234;}s:31:"8:articlefeedback-survey-submit";a:3:{i:0;R:5522;i:1;R:799;i:2;R:3234;}s:30:"8:articlefeedback-survey-title";a:3:{i:0;R:5522;i:1;R:799;i:2;R:3234;}s:31:"8:articlefeedback-survey-thanks";a:3:{i:0;R:5522;i:1;R:799;i:2;R:3234;}s:35:"8:articlefeedback-survey-disclaimer";a:3:{i:0;R:5522;i:1;R:799;i:2;R:3234;}s:39:"8:articlefeedback-survey-disclaimerlink";a:3:{i:0;R:5522;i:1;R:799;i:2;R:3234;}s:23:"8:articlefeedback-error";a:3:{i:0;R:5522;i:1;R:799;i:2;R:3234;}s:35:"8:articlefeedback-form-switch-label";a:3:{i:0;R:5522;i:1;R:799;i:2;R:3234;}s:34:"8:articlefeedback-form-panel-title";a:3:{i:0;R:5522;i:1;R:799;i:2;R:3234;}s:40:"8:articlefeedback-form-panel-explanation";a:3:{i:0;R:5522;i:1;R:799;i:2;R:3234;}s:45:"8:articlefeedback-form-panel-explanation-link";a:3:{i:0;R:5522;i:1;R:799;i:2;R:3234;}s:34:"8:articlefeedback-form-panel-clear";a:3:{i:0;R:5522;i:1;R:799;i:2;R:3234;}s:38:"8:articlefeedback-form-panel-expertise";a:3:{i:0;R:5522;i:1;R:799;i:2;R:3234;}s:46:"8:articlefeedback-form-panel-expertise-studies";a:3:{i:0;R:5522;i:1;R:799;i:2;R:3234;}s:49:"8:articlefeedback-form-panel-expertise-profession";a:3:{i:0;R:5522;i:1;R:799;i:2;R:3234;}s:44:"8:articlefeedback-form-panel-expertise-hobby";a:3:{i:0;R:5522;i:1;R:799;i:2;R:3234;}s:44:"8:articlefeedback-form-panel-expertise-other";a:3:{i:0;R:5522;i:1;R:799;i:2;R:3234;}s:40:"8:articlefeedback-form-panel-helpimprove";a:3:{i:0;R:5522;i:1;R:799;i:2;R:3234;}s:45:"8:articlefeedback-form-panel-helpimprove-note";a:3:{i:0;R:5522;i:1;R:799;i:2;R:3234;}s:58:"8:articlefeedback-form-panel-helpimprove-email-placeholder";a:3:{i:0;R:5522;i:1;R:799;i:2;R:3234;}s:48:"8:articlefeedback-form-panel-helpimprove-privacy";a:3:{i:0;R:5522;i:1;R:799;i:2;R:3234;}s:35:"8:articlefeedback-form-panel-submit";a:3:{i:0;R:5522;i:1;R:799;i:2;R:3234;}s:36:"8:articlefeedback-form-panel-pending";a:3:{i:0;R:5522;i:1;R:799;i:2;R:3234;}s:36:"8:articlefeedback-form-panel-success";a:3:{i:0;R:5522;i:1;R:799;i:2;R:3234;}s:41:"8:articlefeedback-form-panel-expiry-title";a:3:{i:0;R:5522;i:1;R:799;i:2;R:3234;}s:43:"8:articlefeedback-form-panel-expiry-message";a:3:{i:0;R:5522;i:1;R:799;i:2;R:3234;}s:37:"8:articlefeedback-report-switch-label";a:3:{i:0;R:5522;i:1;R:799;i:2;R:3234;}s:36:"8:articlefeedback-report-panel-title";a:3:{i:0;R:5522;i:1;R:799;i:2;R:3234;}s:42:"8:articlefeedback-report-panel-description";a:3:{i:0;R:5522;i:1;R:799;i:2;R:3234;}s:30:"8:articlefeedback-report-empty";a:3:{i:0;R:5522;i:1;R:799;i:2;R:3234;}s:32:"8:articlefeedback-report-ratings";a:3:{i:0;R:5522;i:1;R:799;i:2;R:3234;}s:41:"8:articlefeedback-field-trustworthy-label";a:3:{i:0;R:5522;i:1;R:799;i:2;R:3234;}s:39:"8:articlefeedback-field-trustworthy-tip";a:3:{i:0;R:5522;i:1;R:799;i:2;R:3234;}s:45:"8:articlefeedback-field-trustworthy-tooltip-1";a:3:{i:0;R:5522;i:1;R:799;i:2;R:3234;}s:45:"8:articlefeedback-field-trustworthy-tooltip-2";a:3:{i:0;R:5522;i:1;R:799;i:2;R:3234;}s:45:"8:articlefeedback-field-trustworthy-tooltip-3";a:3:{i:0;R:5522;i:1;R:799;i:2;R:3234;}s:45:"8:articlefeedback-field-trustworthy-tooltip-4";a:3:{i:0;R:5522;i:1;R:799;i:2;R:3234;}s:45:"8:articlefeedback-field-trustworthy-tooltip-5";a:3:{i:0;R:5522;i:1;R:799;i:2;R:3234;}s:38:"8:articlefeedback-field-complete-label";a:3:{i:0;R:5522;i:1;R:799;i:2;R:3234;}s:36:"8:articlefeedback-field-complete-tip";a:3:{i:0;R:5522;i:1;R:799;i:2;R:3234;}s:42:"8:articlefeedback-field-complete-tooltip-1";a:3:{i:0;R:5522;i:1;R:799;i:2;R:3234;}s:42:"8:articlefeedback-field-complete-tooltip-2";a:3:{i:0;R:5522;i:1;R:799;i:2;R:3234;}s:42:"8:articlefeedback-field-complete-tooltip-3";a:3:{i:0;R:5522;i:1;R:799;i:2;R:3234;}s:42:"8:articlefeedback-field-complete-tooltip-4";a:3:{i:0;R:5522;i:1;R:799;i:2;R:3234;}s:42:"8:articlefeedback-field-complete-tooltip-5";a:3:{i:0;R:5522;i:1;R:799;i:2;R:3234;}s:39:"8:articlefeedback-field-objective-label";a:3:{i:0;R:5522;i:1;R:799;i:2;R:3234;}s:37:"8:articlefeedback-field-objective-tip";a:3:{i:0;R:5522;i:1;R:799;i:2;R:3234;}s:43:"8:articlefeedback-field-objective-tooltip-1";a:3:{i:0;R:5522;i:1;R:799;i:2;R:3234;}s:43:"8:articlefeedback-field-objective-tooltip-2";a:3:{i:0;R:5522;i:1;R:799;i:2;R:3234;}s:43:"8:articlefeedback-field-objective-tooltip-3";a:3:{i:0;R:5522;i:1;R:799;i:2;R:3234;}s:43:"8:articlefeedback-field-objective-tooltip-4";a:3:{i:0;R:5522;i:1;R:799;i:2;R:3234;}s:43:"8:articlefeedback-field-objective-tooltip-5";a:3:{i:0;R:5522;i:1;R:799;i:2;R:3234;}s:41:"8:articlefeedback-field-wellwritten-label";a:3:{i:0;R:5522;i:1;R:799;i:2;R:3234;}s:39:"8:articlefeedback-field-wellwritten-tip";a:3:{i:0;R:5522;i:1;R:799;i:2;R:3234;}s:45:"8:articlefeedback-field-wellwritten-tooltip-1";a:3:{i:0;R:5522;i:1;R:799;i:2;R:3234;}s:45:"8:articlefeedback-field-wellwritten-tooltip-2";a:3:{i:0;R:5522;i:1;R:799;i:2;R:3234;}s:45:"8:articlefeedback-field-wellwritten-tooltip-3";a:3:{i:0;R:5522;i:1;R:799;i:2;R:3234;}s:45:"8:articlefeedback-field-wellwritten-tooltip-4";a:3:{i:0;R:5522;i:1;R:799;i:2;R:3234;}s:45:"8:articlefeedback-field-wellwritten-tooltip-5";a:3:{i:0;R:5522;i:1;R:799;i:2;R:3234;}s:30:"8:articlefeedback-pitch-reject";a:3:{i:0;R:5522;i:1;R:799;i:2;R:3234;}s:26:"8:articlefeedback-pitch-or";a:3:{i:0;R:5522;i:1;R:799;i:2;R:3234;}s:30:"8:articlefeedback-pitch-thanks";a:3:{i:0;R:5522;i:1;R:799;i:2;R:3234;}s:38:"8:articlefeedback-pitch-survey-message";a:3:{i:0;R:5522;i:1;R:799;i:2;R:3234;}s:35:"8:articlefeedback-pitch-survey-body";a:3:{i:0;R:5522;i:1;R:799;i:2;R:3234;}s:37:"8:articlefeedback-pitch-survey-accept";a:3:{i:0;R:5522;i:1;R:799;i:2;R:3234;}s:36:"8:articlefeedback-pitch-join-message";a:3:{i:0;R:5522;i:1;R:799;i:2;R:3234;}s:33:"8:articlefeedback-pitch-join-body";a:3:{i:0;R:5522;i:1;R:799;i:2;R:3234;}s:35:"8:articlefeedback-pitch-join-accept";a:3:{i:0;R:5522;i:1;R:799;i:2;R:3234;}s:34:"8:articlefeedback-pitch-join-login";a:3:{i:0;R:5522;i:1;R:799;i:2;R:3234;}s:36:"8:articlefeedback-pitch-edit-message";a:3:{i:0;R:5522;i:1;R:799;i:2;R:3234;}s:33:"8:articlefeedback-pitch-edit-body";a:3:{i:0;R:5522;i:1;R:799;i:2;R:3234;}s:35:"8:articlefeedback-pitch-edit-accept";a:3:{i:0;R:5522;i:1;R:799;i:2;R:3234;}s:40:"8:articlefeedback-survey-message-success";a:3:{i:0;R:5522;i:1;R:799;i:2;R:3234;}s:38:"8:articlefeedback-survey-message-error";a:3:{i:0;R:5522;i:1;R:799;i:2;R:3234;}s:28:"8:articlefeedback-privacyurl";a:3:{i:0;R:5522;i:1;R:799;i:2;R:3234;}s:49:"8:articlefeedback-table-caption-dailyhighsandlows";a:3:{i:0;R:5522;i:1;R:799;i:2;R:3234;}s:42:"8:articlefeedback-table-caption-dailyhighs";a:3:{i:0;R:5522;i:1;R:799;i:2;R:3234;}s:41:"8:articlefeedback-table-caption-dailylows";a:3:{i:0;R:5522;i:1;R:799;i:2;R:3234;}s:49:"8:articlefeedback-table-caption-weeklymostchanged";a:3:{i:0;R:5522;i:1;R:799;i:2;R:3234;}s:42:"8:articlefeedback-table-caption-recentlows";a:3:{i:0;R:5522;i:1;R:799;i:2;R:3234;}s:36:"8:articlefeedback-table-heading-page";a:3:{i:0;R:5522;i:1;R:799;i:2;R:3234;}s:39:"8:articlefeedback-table-heading-average";a:3:{i:0;R:5522;i:1;R:799;i:2;R:3234;}s:33:"8:articlefeedback-table-noratings";a:3:{i:0;R:5522;i:1;R:799;i:2;R:3234;}s:43:"8:articlefeedback-copy-above-highlow-tables";a:3:{i:0;R:5522;i:1;R:799;i:2;R:3234;}s:34:"8:articlefeedback-dashboard-bottom";a:3:{i:0;R:5522;i:1;R:799;i:2;R:3234;}s:36:"8:articlefeedback-disable-preference";a:3:{i:0;R:5522;i:1;R:799;i:2;R:3234;}s:44:"8:articlefeedback-emailcapture-response-body";a:3:{i:0;R:5522;i:1;R:799;i:2;R:3234;}s:30:"8:articlefeedbackv5-cta-thanks";a:3:{i:0;s:21:"ext-articlefeedbackv5";i:1;R:799;i:2;R:3234;}s:45:"8:articlefeedbackv5-cta-confirmation-followup";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:43:"8:articlefeedbackv5-cta1-confirmation-title";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:42:"8:articlefeedbackv5-cta1-confirmation-call";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:34:"8:articlefeedbackv5-cta1-learn-how";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:38:"8:articlefeedbackv5-cta1-learn-how-url";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:38:"8:articlefeedbackv5-cta1-edit-linktext";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:43:"8:articlefeedbackv5-cta2-confirmation-title";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:42:"8:articlefeedbackv5-cta2-confirmation-call";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:36:"8:articlefeedbackv5-cta2-button-text";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:43:"8:articlefeedbackv5-cta3-confirmation-title";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:42:"8:articlefeedbackv5-cta3-confirmation-call";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:36:"8:articlefeedbackv5-cta3-button-text";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:25:"8:articlefeedbackv5-error";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:33:"8:articlefeedbackv5-page-disabled";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:31:"8:articlefeedbackv5-error-email";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:33:"8:articlefeedbackv5-error-blocked";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:36:"8:articlefeedbackv5-error-validation";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:31:"8:articlefeedbackv5-error-abuse";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:40:"8:articlefeedbackv5-error-abuse-linktext";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:36:"8:articlefeedbackv5-error-abuse-link";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:33:"8:articlefeedbackv5-error-unknown";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:32:"8:articlefeedbackv5-error-submit";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:36:"8:articlefeedbackv5-error-nofeedback";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:34:"8:articlefeedbackv5-error-flagging";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:36:"8:articlefeedbackv5-form-tools-label";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:38:"8:articlefeedbackv5-form-helpful-label";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:42:"8:articlefeedbackv5-form-helpful-yes-label";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:41:"8:articlefeedbackv5-form-helpful-no-label";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:38:"8:articlefeedbackv5-form-helpful-votes";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:40:"8:articlefeedbackv5-special-add-feedback";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:38:"8:articlefeedbackv5-special-filter-all";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:45:"8:articlefeedbackv5-special-filter-notdeleted";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:42:"8:articlefeedbackv5-special-filter-comment";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:42:"8:articlefeedbackv5-special-filter-abusive";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:42:"8:articlefeedbackv5-special-filter-helpful";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:44:"8:articlefeedbackv5-special-filter-unhelpful";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:49:"8:articlefeedbackv5-special-filter-needsoversight";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:42:"8:articlefeedbackv5-special-filter-visible";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:44:"8:articlefeedbackv5-special-filter-invisible";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:42:"8:articlefeedbackv5-special-filter-deleted";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:44:"8:articlefeedbackv5-special-filter-undeleted";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:43:"8:articlefeedbackv5-special-filter-declined";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:43:"8:articlefeedbackv5-special-filter-unhidden";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:36:"8:articlefeedbackv5-special-sort-age";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:40:"8:articlefeedbackv5-special-sort-helpful";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:39:"8:articlefeedbackv5-special-sort-rating";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:45:"8:articlefeedbackv5-special-sort-label-before";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:44:"8:articlefeedbackv5-special-sort-label-after";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:47:"8:articlefeedbackv5-special-filter-label-before";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:46:"8:articlefeedbackv5-special-filter-label-after";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:35:"8:articlefeedbackv5-special-showing";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:31:"8:articlefeedbackv5-comment-ago";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:33:"8:articlefeedbackv5-updates-since";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:33:"8:articlefeedbackv5-revision-link";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:32:"8:articlefeedbackv5-special-more";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:37:"8:articlefeedbackv5-special-pagetitle";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:33:"8:articlefeedbackv5-form-optionid";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:26:"8:articlefeedbackv5-hidden";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:27:"8:articlefeedbackv5-deleted";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:29:"8:articlefeedbackv5-form-hide";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:31:"8:articlefeedbackv5-form-unhide";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:32:"8:articlefeedbackv5-form-helpful";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:30:"8:articlefeedbackv5-form-abuse";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:37:"8:articlefeedbackv5-form-abuse-masked";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:31:"8:articlefeedbackv5-form-delete";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:34:"8:articlefeedbackv5-form-oversight";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:36:"8:articlefeedbackv5-form-unoversight";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:33:"8:articlefeedbackv5-form-undelete";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:32:"8:articlefeedbackv5-form-decline";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:31:"8:articlefeedbackv5-form-header";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:38:"8:articlefeedbackv5-form1-header-found";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:42:"8:articlefeedbackv5-form1-header-not-found";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:45:"8:articlefeedbackv5-form1-header-left-comment";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:39:"8:articlefeedbackv5-form2-header-praise";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:40:"8:articlefeedbackv5-form2-header-problem";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:41:"8:articlefeedbackv5-form2-header-question";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:43:"8:articlefeedbackv5-form2-header-suggestion";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:32:"8:articlefeedbackv5-form3-header";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:32:"8:articlefeedbackv5-form4-header";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:32:"8:articlefeedbackv5-form5-header";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:34:"8:articlefeedbackv5-form-not-shown";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:32:"8:articlefeedbackv5-form-invalid";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:31:"8:articlefeedbackv5-abuse-saved";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:38:"8:articlefeedbackv5-abuse-saved-masked";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:35:"8:articlefeedbackv5-oversight-saved";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:37:"8:articlefeedbackv5-unoversight-saved";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:42:"8:articlefeedbackv5-error-loading-feedback";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:39:"8:articlefeedbackv5-invalid-feedback-id";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:41:"8:articlefeedbackv5-invalid-feedback-flag";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:33:"8:articlefeedbackv5-go-to-article";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:35:"8:articlefeedbackv5-discussion-page";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:30:"8:articlefeedbackv5-whats-this";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:35:"8:articlefeedbackv5-invalid-page-id";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:33:"8:articlefeedbackv5-percent-found";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:34:"8:articlefeedbackv5-overall-rating";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:33:"8:articlefeedbackv5-special-title";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:51:"8:articlefeedbackv5-table-caption-dailyhighsandlows";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:44:"8:articlefeedbackv5-table-caption-dailyhighs";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:43:"8:articlefeedbackv5-table-caption-dailylows";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:51:"8:articlefeedbackv5-table-caption-weeklymostchanged";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:44:"8:articlefeedbackv5-table-caption-recentlows";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:38:"8:articlefeedbackv5-table-heading-page";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:41:"8:articlefeedbackv5-table-heading-average";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:35:"8:articlefeedbackv5-table-noratings";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:45:"8:articlefeedbackv5-copy-above-highlow-tables";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:36:"8:articlefeedbackv5-dashboard-bottom";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:19:"8:articlefeedbackv5";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:24:"8:articlefeedbackv5-desc";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:32:"8:articlefeedbackv5-comment-more";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:32:"8:articlefeedbackv5-comment-less";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:31:"8:articlefeedbackv5-beta-notice";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:32:"8:articlefeedbackv5-viewactivity";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:35:"8:articlefeedbackv5-timestamp-years";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:36:"8:articlefeedbackv5-timestamp-months";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:35:"8:articlefeedbackv5-timestamp-weeks";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:37:"8:articlefeedbackv5-timestamp-seconds";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:36:"8:articlefeedbackv5-mask-text-hidden";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:39:"8:articlefeedbackv5-mask-text-oversight";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:35:"8:articlefeedbackv5-mask-postnumber";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:38:"8:articlefeedbackv5-special-disclaimer";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:34:"8:articlefeedbackv5-special-goback";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:44:"8:articlefeedbackv5-noteflyover-hide-caption";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:42:"8:articlefeedbackv5-noteflyover-hide-label";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:48:"8:articlefeedbackv5-noteflyover-hide-placeholder";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:43:"8:articlefeedbackv5-noteflyover-hide-submit";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:41:"8:articlefeedbackv5-noteflyover-hide-help";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:46:"8:articlefeedbackv5-noteflyover-hide-help-link";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:44:"8:articlefeedbackv5-noteflyover-show-caption";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:42:"8:articlefeedbackv5-noteflyover-show-label";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:48:"8:articlefeedbackv5-noteflyover-show-placeholder";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:43:"8:articlefeedbackv5-noteflyover-show-submit";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:41:"8:articlefeedbackv5-noteflyover-show-help";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:46:"8:articlefeedbackv5-noteflyover-show-help-link";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:56:"8:articlefeedbackv5-noteflyover-requestoversight-caption";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:54:"8:articlefeedbackv5-noteflyover-requestoversight-label";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:60:"8:articlefeedbackv5-noteflyover-requestoversight-placeholder";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:55:"8:articlefeedbackv5-noteflyover-requestoversight-submit";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:53:"8:articlefeedbackv5-noteflyover-requestoversight-help";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:58:"8:articlefeedbackv5-noteflyover-requestoversight-help-link";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:58:"8:articlefeedbackv5-noteflyover-unrequestoversight-caption";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:56:"8:articlefeedbackv5-noteflyover-unrequestoversight-label";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:62:"8:articlefeedbackv5-noteflyover-unrequestoversight-placeholder";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:57:"8:articlefeedbackv5-noteflyover-unrequestoversight-submit";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:55:"8:articlefeedbackv5-noteflyover-unrequestoversight-help";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:60:"8:articlefeedbackv5-noteflyover-unrequestoversight-help-link";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:49:"8:articlefeedbackv5-noteflyover-oversight-caption";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:47:"8:articlefeedbackv5-noteflyover-oversight-label";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:53:"8:articlefeedbackv5-noteflyover-oversight-placeholder";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:48:"8:articlefeedbackv5-noteflyover-oversight-submit";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:46:"8:articlefeedbackv5-noteflyover-oversight-help";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:51:"8:articlefeedbackv5-noteflyover-oversight-help-link";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:51:"8:articlefeedbackv5-noteflyover-unoversight-caption";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:49:"8:articlefeedbackv5-noteflyover-unoversight-label";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:55:"8:articlefeedbackv5-noteflyover-unoversight-placeholder";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:50:"8:articlefeedbackv5-noteflyover-unoversight-submit";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:48:"8:articlefeedbackv5-noteflyover-unoversight-help";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:53:"8:articlefeedbackv5-noteflyover-unoversight-help-link";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:56:"8:articlefeedbackv5-noteflyover-declineoversight-caption";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:54:"8:articlefeedbackv5-noteflyover-declineoversight-label";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:60:"8:articlefeedbackv5-noteflyover-declineoversight-placeholder";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:55:"8:articlefeedbackv5-noteflyover-declineoversight-submit";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:53:"8:articlefeedbackv5-noteflyover-declineoversight-help";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:58:"8:articlefeedbackv5-noteflyover-declineoversight-help-link";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:33:"8:articlefeedbackv5-bucket1-title";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:43:"8:articlefeedbackv5-bucket1-question-toggle";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:44:"8:articlefeedbackv5-bucket1-toggle-found-yes";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:43:"8:articlefeedbackv5-bucket1-toggle-found-no";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:49:"8:articlefeedbackv5-bucket1-toggle-found-yes-full";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:48:"8:articlefeedbackv5-bucket1-toggle-found-no-full";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:48:"8:articlefeedbackv5-bucket1-question-comment-yes";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:47:"8:articlefeedbackv5-bucket1-question-comment-no";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:39:"8:articlefeedbackv5-bucket1-form-submit";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:33:"8:articlefeedbackv5-bucket2-title";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:44:"8:articlefeedbackv5-bucket2-suggestion-label";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:42:"8:articlefeedbackv5-bucket2-question-label";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:41:"8:articlefeedbackv5-bucket2-problem-label";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:40:"8:articlefeedbackv5-bucket2-praise-label";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:54:"8:articlefeedbackv5-bucket2-suggestion-comment-default";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:52:"8:articlefeedbackv5-bucket2-question-comment-default";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:51:"8:articlefeedbackv5-bucket2-problem-comment-default";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:50:"8:articlefeedbackv5-bucket2-praise-comment-default";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:39:"8:articlefeedbackv5-bucket2-form-submit";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:33:"8:articlefeedbackv5-bucket3-title";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:43:"8:articlefeedbackv5-bucket3-rating-question";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:44:"8:articlefeedbackv5-bucket3-rating-tooltip-1";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:44:"8:articlefeedbackv5-bucket3-rating-tooltip-2";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:44:"8:articlefeedbackv5-bucket3-rating-tooltip-3";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:44:"8:articlefeedbackv5-bucket3-rating-tooltip-4";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:44:"8:articlefeedbackv5-bucket3-rating-tooltip-5";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:40:"8:articlefeedbackv5-bucket3-clear-rating";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:43:"8:articlefeedbackv5-bucket3-comment-default";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:39:"8:articlefeedbackv5-bucket3-form-submit";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:33:"8:articlefeedbackv5-bucket4-title";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:35:"8:articlefeedbackv5-bucket4-subhead";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:40:"8:articlefeedbackv5-bucket4-teaser-line1";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:40:"8:articlefeedbackv5-bucket4-teaser-line2";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:41:"8:articlefeedbackv5-bucket4-learn-to-edit";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:39:"8:articlefeedbackv5-bucket4-form-submit";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:45:"8:articlefeedbackv5-bucket4-help-tooltip-info";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:45:"8:articlefeedbackv5-bucket5-form-switch-label";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:44:"8:articlefeedbackv5-bucket5-form-panel-title";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:50:"8:articlefeedbackv5-bucket5-form-panel-explanation";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:55:"8:articlefeedbackv5-bucket5-form-panel-explanation-link";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:44:"8:articlefeedbackv5-bucket5-form-panel-clear";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:48:"8:articlefeedbackv5-bucket5-form-panel-expertise";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:56:"8:articlefeedbackv5-bucket5-form-panel-expertise-studies";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:59:"8:articlefeedbackv5-bucket5-form-panel-expertise-profession";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:54:"8:articlefeedbackv5-bucket5-form-panel-expertise-hobby";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:54:"8:articlefeedbackv5-bucket5-form-panel-expertise-other";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:50:"8:articlefeedbackv5-bucket5-form-panel-helpimprove";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:55:"8:articlefeedbackv5-bucket5-form-panel-helpimprove-note";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:68:"8:articlefeedbackv5-bucket5-form-panel-helpimprove-email-placeholder";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:58:"8:articlefeedbackv5-bucket5-form-panel-helpimprove-privacy";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:45:"8:articlefeedbackv5-bucket5-form-panel-submit";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:46:"8:articlefeedbackv5-bucket5-form-panel-pending";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:46:"8:articlefeedbackv5-bucket5-form-panel-success";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:51:"8:articlefeedbackv5-bucket5-form-panel-expiry-title";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:53:"8:articlefeedbackv5-bucket5-form-panel-expiry-message";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:47:"8:articlefeedbackv5-bucket5-report-switch-label";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:46:"8:articlefeedbackv5-bucket5-report-panel-title";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:52:"8:articlefeedbackv5-bucket5-report-panel-description";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:40:"8:articlefeedbackv5-bucket5-report-empty";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:42:"8:articlefeedbackv5-bucket5-report-ratings";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:45:"8:articlefeedbackv5-bucket5-trustworthy-label";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:43:"8:articlefeedbackv5-bucket5-trustworthy-tip";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:49:"8:articlefeedbackv5-bucket5-trustworthy-tooltip-1";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:49:"8:articlefeedbackv5-bucket5-trustworthy-tooltip-2";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:49:"8:articlefeedbackv5-bucket5-trustworthy-tooltip-3";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:49:"8:articlefeedbackv5-bucket5-trustworthy-tooltip-4";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:49:"8:articlefeedbackv5-bucket5-trustworthy-tooltip-5";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:42:"8:articlefeedbackv5-bucket5-complete-label";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:40:"8:articlefeedbackv5-bucket5-complete-tip";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:46:"8:articlefeedbackv5-bucket5-complete-tooltip-1";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:46:"8:articlefeedbackv5-bucket5-complete-tooltip-2";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:46:"8:articlefeedbackv5-bucket5-complete-tooltip-3";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:46:"8:articlefeedbackv5-bucket5-complete-tooltip-4";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:46:"8:articlefeedbackv5-bucket5-complete-tooltip-5";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:43:"8:articlefeedbackv5-bucket5-objective-label";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:41:"8:articlefeedbackv5-bucket5-objective-tip";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:47:"8:articlefeedbackv5-bucket5-objective-tooltip-1";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:47:"8:articlefeedbackv5-bucket5-objective-tooltip-2";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:47:"8:articlefeedbackv5-bucket5-objective-tooltip-3";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:47:"8:articlefeedbackv5-bucket5-objective-tooltip-4";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:47:"8:articlefeedbackv5-bucket5-objective-tooltip-5";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:45:"8:articlefeedbackv5-bucket5-wellwritten-label";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:43:"8:articlefeedbackv5-bucket5-wellwritten-tip";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:49:"8:articlefeedbackv5-bucket5-wellwritten-tooltip-1";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:49:"8:articlefeedbackv5-bucket5-wellwritten-tooltip-2";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:49:"8:articlefeedbackv5-bucket5-wellwritten-tooltip-3";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:49:"8:articlefeedbackv5-bucket5-wellwritten-tooltip-4";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:49:"8:articlefeedbackv5-bucket5-wellwritten-tooltip-5";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:44:"8:articlefeedbackv5-bucket5-toolbox-linktext";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:38:"8:articlefeedbackv5-shared-on-feedback";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:47:"8:articlefeedbackv5-shared-on-feedback-linktext";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:38:"8:articlefeedbackv5-help-tooltip-title";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:37:"8:articlefeedbackv5-help-tooltip-info";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:41:"8:articlefeedbackv5-help-tooltip-linktext";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:40:"8:articlefeedbackv5-help-tooltip-linkurl";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:38:"8:articlefeedbackv5-transparency-terms";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:47:"8:articlefeedbackv5-transparency-terms-linktext";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:42:"8:articlefeedbackv5-transparency-terms-url";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:36:"8:articlefeedbackv5-sitesub-linktext";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:37:"8:articlefeedbackv5-titlebar-linktext";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:37:"8:articlefeedbackv5-fixedtab-linktext";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:43:"8:articlefeedbackv5-bottomrighttab-linktext";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:36:"8:articlefeedbackv5-section-linktext";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:36:"8:articlefeedbackv5-toolbox-linktext";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:30:"8:articlefeedbackv5-privacyurl";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:38:"8:articlefeedbackv5-disable-preference";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:27:"8:right-aftv5-hide-feedback";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:29:"8:right-aftv5-delete-feedback";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:34:"8:right-aftv5-see-deleted-feedback";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:33:"8:right-aftv5-see-hidden-feedback";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:28:"8:articlefeedbackv5-log-name";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:30:"8:articlefeedbackv5-log-header";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:33:"8:articlefeedbackv5-log-oversight";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:35:"8:articlefeedbackv5-log-unoversight";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:30:"8:articlefeedbackv5-log-hidden";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:32:"8:articlefeedbackv5-log-unhidden";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:31:"8:articlefeedbackv5-log-decline";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:31:"8:articlefeedbackv5-log-request";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:33:"8:articlefeedbackv5-log-unrequest";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:28:"8:articlefeedbackv5-log-flag";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:30:"8:articlefeedbackv5-log-unflag";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:40:"8:articlefeedbackv5-activity-pane-header";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:42:"8:articlefeedbackv5-activity-feedback-info";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:42:"8:articlefeedbackv5-activity-feedback-date";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:38:"8:articlefeedbackv5-activity-permalink";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:36:"8:articlefeedbackv5-activity-request";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:38:"8:articlefeedbackv5-activity-unrequest";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:36:"8:articlefeedbackv5-activity-decline";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:35:"8:articlefeedbackv5-activity-hidden";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:33:"8:articlefeedbackv5-activity-flag";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:37:"8:articlefeedbackv5-activity-unhidden";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:35:"8:articlefeedbackv5-activity-unflag";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:38:"8:articlefeedbackv5-activity-oversight";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:40:"8:articlefeedbackv5-activity-unoversight";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:34:"8:articlefeedbackv5-activity-count";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:33:"8:articlefeedbackv5-activity-more";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:41:"8:articlefeedbackv5-activity-item-comment";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:33:"8:articlefeedbackv5-activity-item";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:32:"8:articlefeedbackv5-default-user";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:46:"8:articlefeedbackv5-emailcapture-response-body";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:51:"8:articlefeedbackv5-email-request-oversight-subject";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:48:"8:articlefeedbackv5-email-request-oversight-body";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:41:"8:articlefeedbackv5-disable-flyover-title";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:40:"8:articlefeedbackv5-disable-flyover-help";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:54:"8:articlefeedbackv5-disable-flyover-help-emphasis-text";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:49:"8:articlefeedbackv5-disable-flyover-help-location";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:46:"8:articlefeedbackv5-disable-flyover-prefbutton";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:40:"8:abusefilter-edit-action-aftv5flagabuse";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:51:"8:articlefeedbackv5-abusefilter-note-aftv5flagabuse";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:35:"8:abusefilter-edit-action-aftv5hide";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:46:"8:articlefeedbackv5-abusefilter-note-aftv5hide";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:47:"8:abusefilter-edit-action-aftv5requestoversight";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:58:"8:articlefeedbackv5-abusefilter-note-aftv5requestoversight";a:3:{i:0;R:5622;i:1;R:799;i:2;R:3234;}s:17:"8:charinsert-desc";a:3:{i:0;s:14:"ext-charinsert";i:1;R:799;i:2;R:3234;}s:19:"8:checkuser-summary";a:3:{i:0;s:13:"ext-checkuser";i:1;R:799;i:2;R:3234;}s:16:"8:checkuser-desc";a:3:{i:0;R:5942;i:1;R:799;i:2;R:3234;}s:19:"8:checkuser-logcase";a:3:{i:0;R:5942;i:1;R:799;i:2;R:3234;}s:11:"8:checkuser";a:3:{i:0;R:5942;i:1;R:799;i:2;R:3234;}s:14:"8:checkuserlog";a:3:{i:0;R:5942;i:1;R:799;i:2;R:3234;}s:20:"8:checkuser-contribs";a:3:{i:0;R:5942;i:1;R:799;i:2;R:3234;}s:17:"8:group-checkuser";a:3:{i:0;R:5942;i:1;R:799;i:2;R:3234;}s:24:"8:group-checkuser-member";a:3:{i:0;R:5942;i:1;R:799;i:2;R:3234;}s:17:"8:right-checkuser";a:3:{i:0;R:5942;i:1;R:799;i:2;R:3234;}s:21:"8:right-checkuser-log";a:3:{i:0;R:5942;i:1;R:799;i:2;R:3234;}s:18:"8:action-checkuser";a:3:{i:0;R:5942;i:1;R:799;i:2;R:3234;}s:22:"8:action-checkuser-log";a:3:{i:0;R:5942;i:1;R:799;i:2;R:3234;}s:21:"8:grouppage-checkuser";a:3:{i:0;R:5942;i:1;R:799;i:2;R:3234;}s:18:"8:checkuser-reason";a:3:{i:0;R:5942;i:1;R:799;i:2;R:3234;}s:22:"8:checkuser-reason-api";a:3:{i:0;R:5942;i:1;R:799;i:2;R:3234;}s:19:"8:checkuser-showlog";a:3:{i:0;R:5942;i:1;R:799;i:2;R:3234;}s:17:"8:checkuser-query";a:3:{i:0;R:5942;i:1;R:799;i:2;R:3234;}s:18:"8:checkuser-target";a:3:{i:0;R:5942;i:1;R:799;i:2;R:3234;}s:17:"8:checkuser-users";a:3:{i:0;R:5942;i:1;R:799;i:2;R:3234;}s:17:"8:checkuser-edits";a:3:{i:0;R:5942;i:1;R:799;i:2;R:3234;}s:15:"8:checkuser-ips";a:3:{i:0;R:5942;i:1;R:799;i:2;R:3234;}s:18:"8:checkuser-search";a:3:{i:0;R:5942;i:1;R:799;i:2;R:3234;}s:18:"8:checkuser-period";a:3:{i:0;R:5942;i:1;R:799;i:2;R:3234;}s:18:"8:checkuser-week-1";a:3:{i:0;R:5942;i:1;R:799;i:2;R:3234;}s:18:"8:checkuser-week-2";a:3:{i:0;R:5942;i:1;R:799;i:2;R:3234;}s:17:"8:checkuser-month";a:3:{i:0;R:5942;i:1;R:799;i:2;R:3234;}s:15:"8:checkuser-all";a:3:{i:0;R:5942;i:1;R:799;i:2;R:3234;}s:22:"8:checkuser-cidr-label";a:3:{i:0;R:5942;i:1;R:799;i:2;R:3234;}s:20:"8:checkuser-cidr-res";a:3:{i:0;R:5942;i:1;R:799;i:2;R:3234;}s:17:"8:checkuser-empty";a:3:{i:0;R:5942;i:1;R:799;i:2;R:3234;}s:19:"8:checkuser-nomatch";a:3:{i:0;R:5942;i:1;R:799;i:2;R:3234;}s:25:"8:checkuser-nomatch-edits";a:3:{i:0;R:5942;i:1;R:799;i:2;R:3234;}s:17:"8:checkuser-check";a:3:{i:0;R:5942;i:1;R:799;i:2;R:3234;}s:20:"8:checkuser-log-fail";a:3:{i:0;R:5942;i:1;R:799;i:2;R:3234;}s:17:"8:checkuser-nolog";a:3:{i:0;R:5942;i:1;R:799;i:2;R:3234;}s:19:"8:checkuser-blocked";a:3:{i:0;R:5942;i:1;R:799;i:2;R:3234;}s:20:"8:checkuser-gblocked";a:3:{i:0;R:5942;i:1;R:799;i:2;R:3234;}s:18:"8:checkuser-locked";a:3:{i:0;R:5942;i:1;R:799;i:2;R:3234;}s:22:"8:checkuser-wasblocked";a:3:{i:0;R:5942;i:1;R:799;i:2;R:3234;}s:21:"8:checkuser-localonly";a:3:{i:0;R:5942;i:1;R:799;i:2;R:3234;}s:21:"8:checkuser-massblock";a:3:{i:0;R:5942;i:1;R:799;i:2;R:3234;}s:26:"8:checkuser-massblock-text";a:3:{i:0;R:5942;i:1;R:799;i:2;R:3234;}s:20:"8:checkuser-blocktag";a:3:{i:0;R:5942;i:1;R:799;i:2;R:3234;}s:25:"8:checkuser-blocktag-talk";a:3:{i:0;R:5942;i:1;R:799;i:2;R:3234;}s:28:"8:checkuser-massblock-commit";a:3:{i:0;R:5942;i:1;R:799;i:2;R:3234;}s:25:"8:checkuser-block-success";a:3:{i:0;R:5942;i:1;R:799;i:2;R:3234;}s:25:"8:checkuser-block-failure";a:3:{i:0;R:5942;i:1;R:799;i:2;R:3234;}s:23:"8:checkuser-block-limit";a:3:{i:0;R:5942;i:1;R:799;i:2;R:3234;}s:26:"8:checkuser-block-noreason";a:3:{i:0;R:5942;i:1;R:799;i:2;R:3234;}s:20:"8:checkuser-noreason";a:3:{i:0;R:5942;i:1;R:799;i:2;R:3234;}s:20:"8:checkuser-accounts";a:3:{i:0;R:5942;i:1;R:799;i:2;R:3234;}s:20:"8:checkuser-too-many";a:3:{i:0;R:5942;i:1;R:799;i:2;R:3234;}s:28:"8:checkuser-user-nonexistent";a:3:{i:0;R:5942;i:1;R:799;i:2;R:3234;}s:23:"8:checkuser-search-form";a:3:{i:0;R:5942;i:1;R:799;i:2;R:3234;}s:25:"8:checkuser-search-submit";a:3:{i:0;R:5942;i:1;R:799;i:2;R:3234;}s:28:"8:checkuser-search-initiator";a:3:{i:0;R:5942;i:1;R:799;i:2;R:3234;}s:25:"8:checkuser-search-target";a:3:{i:0;R:5942;i:1;R:799;i:2;R:3234;}s:23:"8:checkuser-ipeditcount";a:3:{i:0;R:5942;i:1;R:799;i:2;R:3234;}s:22:"8:checkuser-log-return";a:3:{i:0;R:5942;i:1;R:799;i:2;R:3234;}s:19:"8:checkuser-limited";a:3:{i:0;R:5942;i:1;R:799;i:2;R:3234;}s:23:"8:checkuser-log-userips";a:3:{i:0;R:5942;i:1;R:799;i:2;R:3234;}s:23:"8:checkuser-log-ipedits";a:3:{i:0;R:5942;i:1;R:799;i:2;R:3234;}s:23:"8:checkuser-log-ipusers";a:3:{i:0;R:5942;i:1;R:799;i:2;R:3234;}s:27:"8:checkuser-log-ipedits-xff";a:3:{i:0;R:5942;i:1;R:799;i:2;R:3234;}s:27:"8:checkuser-log-ipusers-xff";a:3:{i:0;R:5942;i:1;R:799;i:2;R:3234;}s:25:"8:checkuser-log-useredits";a:3:{i:0;R:5942;i:1;R:799;i:2;R:3234;}s:29:"8:checkuser-autocreate-action";a:3:{i:0;R:5942;i:1;R:799;i:2;R:3234;}s:25:"8:checkuser-create-action";a:3:{i:0;R:5942;i:1;R:799;i:2;R:3234;}s:24:"8:checkuser-email-action";a:3:{i:0;R:5942;i:1;R:799;i:2;R:3234;}s:24:"8:checkuser-reset-action";a:3:{i:0;R:5942;i:1;R:799;i:2;R:3234;}s:21:"8:checkuser-toollinks";a:3:{i:0;R:5942;i:1;R:799;i:2;R:3234;}s:21:"8:group-checkuser.css";a:3:{i:0;R:5942;i:1;R:799;i:2;R:3234;}s:20:"8:group-checkuser.js";a:3:{i:0;R:5942;i:1;R:799;i:2;R:3234;}s:11:"8:cldr-desc";a:3:{i:0;s:8:"ext-cldr";i:1;R:799;i:2;R:3234;}s:15:"8:clicktracking";a:3:{i:0;s:17:"ext-clicktracking";i:1;R:799;i:2;R:3234;}s:20:"8:clicktracking-desc";a:3:{i:0;R:6018;i:1;R:799;i:2;R:3234;}s:17:"8:clientside-desc";a:3:{i:0;s:14:"ext-clientside";i:1;R:799;i:2;R:3234;}s:6:"8:code";a:3:{i:0;s:14:"ext-codereview";i:1;R:799;i:2;R:3234;}s:13:"8:code-rev-id";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:16:"8:code-rev-title";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:15:"8:code-comments";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:17:"8:code-references";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:17:"8:code-referenced";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:20:"8:code-change-status";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:18:"8:code-change-tags";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:21:"8:code-change-removed";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:19:"8:code-change-added";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:17:"8:code-old-status";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:17:"8:code-new-status";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:19:"8:code-prop-changes";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:17:"8:codereview-desc";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:14:"8:code-no-repo";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:18:"8:code-create-repo";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:28:"8:code-need-repoadmin-rights";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:29:"8:code-need-group-with-rights";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:21:"8:code-repo-not-found";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:16:"8:code-load-diff";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:12:"8:code-notes";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:20:"8:code-statuschanges";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:16:"8:code-mycommits";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:17:"8:code-mycomments";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:14:"8:code-authors";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:13:"8:code-status";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:11:"8:code-tags";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:19:"8:code-tags-no-tags";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:19:"8:code-authors-text";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:21:"8:code-author-haslink";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:20:"8:code-author-orphan";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:20:"8:code-author-dolink";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:23:"8:code-author-alterlink";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:22:"8:code-author-orunlink";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:18:"8:code-author-name";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:21:"8:code-author-success";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:18:"8:code-author-link";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:20:"8:code-author-unlink";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:27:"8:code-author-unlinksuccess";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:22:"8:code-author-badtoken";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:19:"8:code-author-total";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:24:"8:code-author-lastcommit";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:20:"8:code-browsing-path";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:15:"8:code-field-id";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:19:"8:code-field-author";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:17:"8:code-field-user";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:20:"8:code-field-message";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:19:"8:code-field-status";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:31:"8:code-field-status-description";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:22:"8:code-field-timestamp";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:21:"8:code-field-comments";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:17:"8:code-field-path";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:17:"8:code-field-text";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:19:"8:code-field-select";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:23:"8:code-reference-remove";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:26:"8:code-reference-associate";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:33:"8:code-reference-associate-submit";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:17:"8:code-rev-author";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:15:"8:code-rev-date";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:18:"8:code-rev-message";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:15:"8:code-rev-repo";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:14:"8:code-rev-rev";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:21:"8:code-rev-rev-viewvc";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:16:"8:code-rev-paths";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:21:"8:code-rev-modified-a";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:21:"8:code-rev-modified-r";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:21:"8:code-rev-modified-d";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:21:"8:code-rev-modified-m";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:20:"8:code-rev-imagediff";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:17:"8:code-rev-status";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:21:"8:code-rev-status-set";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:15:"8:code-rev-tags";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:18:"8:code-rev-tag-add";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:21:"8:code-rev-tag-remove";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:21:"8:code-rev-comment-by";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:26:"8:code-rev-comment-preview";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:36:"8:code-rev-comment-preview-accesskey";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:25:"8:code-rev-inline-preview";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:15:"8:code-rev-diff";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:20:"8:code-rev-diff-link";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:25:"8:code-rev-diff-too-large";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:21:"8:code-rev-purge-link";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:16:"8:code-rev-total";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:20:"8:code-rev-not-found";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:23:"8:code-rev-history-link";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:17:"8:code-status-new";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:22:"8:code-status-desc-new";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:19:"8:code-status-fixme";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:24:"8:code-status-desc-fixme";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:22:"8:code-status-reverted";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:27:"8:code-status-desc-reverted";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:22:"8:code-status-resolved";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:27:"8:code-status-desc-resolved";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:16:"8:code-status-ok";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:21:"8:code-status-desc-ok";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:22:"8:code-status-deferred";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:27:"8:code-status-desc-deferred";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:17:"8:code-status-old";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:22:"8:code-status-desc-old";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:15:"8:code-signoffs";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:21:"8:code-signoff-legend";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:21:"8:code-signoff-submit";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:21:"8:code-signoff-strike";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:22:"8:code-signoff-signoff";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:29:"8:code-signoff-flag-inspected";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:26:"8:code-signoff-flag-tested";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:25:"8:code-signoff-field-user";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:25:"8:code-signoff-field-flag";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:25:"8:code-signoff-field-date";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:25:"8:code-signoff-struckdate";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:24:"8:code-pathsearch-legend";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:22:"8:code-pathsearch-path";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:24:"8:code-pathsearch-filter";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:26:"8:code-revfilter-cr_status";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:26:"8:code-revfilter-cr_author";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:23:"8:code-revfilter-ct_tag";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:22:"8:code-revfilter-clear";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:17:"8:code-rev-submit";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:27:"8:code-rev-submit-accesskey";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:22:"8:code-rev-submit-next";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:32:"8:code-rev-submit-next-accesskey";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:15:"8:code-rev-next";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:25:"8:code-rev-next-accesskey";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:19:"8:code-batch-status";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:17:"8:code-batch-tags";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:24:"8:codereview-batch-title";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:25:"8:codereview-batch-submit";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:19:"8:code-releasenotes";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:21:"8:code-release-legend";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:23:"8:code-release-startrev";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:21:"8:code-release-endrev";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:21:"8:codereview-subtitle";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:23:"8:codereview-reply-link";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:27:"8:codereview-overview-title";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:26:"8:codereview-overview-desc";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:23:"8:codereview-email-subj";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:23:"8:codereview-email-body";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:24:"8:codereview-email-subj2";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:24:"8:codereview-email-body2";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:24:"8:codereview-email-subj3";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:24:"8:codereview-email-body3";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:24:"8:codereview-email-subj4";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:24:"8:codereview-email-body4";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:12:"8:code-stats";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:19:"8:code-stats-header";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:17:"8:code-stats-main";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:29:"8:code-stats-status-breakdown";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:28:"8:code-stats-fixme-breakdown";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:33:"8:code-stats-fixme-breakdown-path";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:23:"8:code-stats-fixme-path";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:26:"8:code-stats-new-breakdown";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:31:"8:code-stats-new-breakdown-path";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:21:"8:code-stats-new-path";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:18:"8:code-stats-count";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:26:"8:code-tooltip-withsummary";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:29:"8:code-tooltip-withoutsummary";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:11:"8:repoadmin";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:22:"8:repoadmin-new-legend";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:21:"8:repoadmin-new-label";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:22:"8:repoadmin-new-button";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:23:"8:repoadmin-edit-legend";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:21:"8:repoadmin-edit-path";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:20:"8:repoadmin-edit-bug";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:21:"8:repoadmin-edit-view";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:23:"8:repoadmin-edit-button";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:23:"8:repoadmin-edit-sucess";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:15:"8:repoadmin-nav";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:17:"8:right-repoadmin";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:22:"8:right-codereview-use";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:26:"8:right-codereview-add-tag";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:29:"8:right-codereview-remove-tag";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:31:"8:right-codereview-post-comment";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:29:"8:right-codereview-set-status";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:26:"8:right-codereview-signoff";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:28:"8:right-codereview-link-user";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:28:"8:right-codereview-associate";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:29:"8:right-codereview-review-own";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:18:"8:action-repoadmin";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:23:"8:action-codereview-use";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:27:"8:action-codereview-add-tag";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:30:"8:action-codereview-remove-tag";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:32:"8:action-codereview-post-comment";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:30:"8:action-codereview-set-status";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:27:"8:action-codereview-signoff";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:29:"8:action-codereview-link-user";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:29:"8:action-codereview-associate";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:30:"8:action-codereview-review-own";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:30:"8:specialpages-group-developer";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:17:"8:group-svnadmins";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:24:"8:group-svnadmins-member";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:21:"8:grouppage-svnadmins";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:21:"8:group-svnadmins.css";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:20:"8:group-svnadmins.js";a:3:{i:0;R:6023;i:1;R:799;i:2;R:3234;}s:19:"8:coll-print_export";a:4:{i:0;s:19:"ext-collection-core";i:1;R:799;i:2;R:3234;i:3;s:20:"ext-collection-0-all";}s:20:"8:coll-create_a_book";a:4:{i:0;R:6217;i:1;R:799;i:2;R:3234;i:3;R:6218;}s:28:"8:coll-create_a_book_tooltip";a:4:{i:0;R:6217;i:1;R:799;i:2;R:3234;i:3;R:6218;}s:19:"8:coll-book_creator";a:4:{i:0;R:6217;i:1;R:799;i:2;R:3234;i:3;R:6218;}s:18:"8:coll-download_as";a:4:{i:0;R:6217;i:1;R:799;i:2;R:3234;i:3;R:6218;}s:26:"8:coll-download_as_tooltip";a:4:{i:0;R:6217;i:1;R:799;i:2;R:3234;i:3;R:6218;}s:14:"8:coll-disable";a:4:{i:0;R:6217;i:1;R:799;i:2;R:3234;i:3;R:6218;}s:27:"8:coll-book_creator_disable";a:4:{i:0;R:6217;i:1;R:799;i:2;R:3234;i:3;R:6218;}s:35:"8:coll-book_creator_disable_tooltip";a:4:{i:0;R:6217;i:1;R:799;i:2;R:3234;i:3;R:6218;}s:25:"8:coll-add_linked_article";a:4:{i:0;R:6217;i:1;R:799;i:2;R:3234;i:3;R:6218;}s:28:"8:coll-remove_linked_article";a:4:{i:0;R:6217;i:1;R:799;i:2;R:3234;i:3;R:6218;}s:19:"8:coll-add_category";a:4:{i:0;R:6217;i:1;R:799;i:2;R:3234;i:3;R:6218;}s:27:"8:coll-add_category_tooltip";a:4:{i:0;R:6217;i:1;R:799;i:2;R:3234;i:3;R:6218;}s:20:"8:coll-add_this_page";a:4:{i:0;R:6217;i:1;R:799;i:2;R:3234;i:3;R:6218;}s:23:"8:coll-add_page_tooltip";a:4:{i:0;R:6217;i:1;R:799;i:2;R:3234;i:3;R:6218;}s:20:"8:coll-bookscategory";a:4:{i:0;R:6217;i:1;R:799;i:2;R:3234;i:3;R:6218;}s:23:"8:coll-clear_collection";a:4:{i:0;R:6217;i:1;R:799;i:2;R:3234;i:3;R:6218;}s:31:"8:coll-clear_collection_confirm";a:4:{i:0;R:6217;i:1;R:799;i:2;R:3234;i:3;R:6218;}s:31:"8:coll-clear_collection_tooltip";a:4:{i:0;R:6217;i:1;R:799;i:2;R:3234;i:3;R:6218;}s:11:"8:coll-help";a:4:{i:0;R:6217;i:1;R:799;i:2;R:3234;i:3;R:6218;}s:19:"8:coll-help_tooltip";a:4:{i:0;R:6217;i:1;R:799;i:2;R:3234;i:3;R:6218;}s:15:"8:coll-helppage";a:4:{i:0;R:6217;i:1;R:799;i:2;R:3234;i:3;R:6218;}s:22:"8:coll-load_collection";a:4:{i:0;R:6217;i:1;R:799;i:2;R:3234;i:3;R:6218;}s:30:"8:coll-load_collection_tooltip";a:4:{i:0;R:6217;i:1;R:799;i:2;R:3234;i:3;R:6218;}s:14:"8:coll-n_pages";a:4:{i:0;R:6217;i:1;R:799;i:2;R:3234;i:3;R:6218;}s:28:"8:coll-printable_version_pdf";a:4:{i:0;R:6217;i:1;R:799;i:2;R:3234;i:3;R:6218;}s:23:"8:coll-remove_this_page";a:4:{i:0;R:6217;i:1;R:799;i:2;R:3234;i:3;R:6218;}s:26:"8:coll-remove_page_tooltip";a:4:{i:0;R:6217;i:1;R:799;i:2;R:3234;i:3;R:6218;}s:22:"8:coll-show_collection";a:4:{i:0;R:6217;i:1;R:799;i:2;R:3234;i:3;R:6218;}s:30:"8:coll-show_collection_tooltip";a:4:{i:0;R:6217;i:1;R:799;i:2;R:3234;i:3;R:6218;}s:18:"8:coll-not_addable";a:4:{i:0;R:6217;i:1;R:799;i:2;R:3234;i:3;R:6218;}s:23:"8:coll-make_suggestions";a:4:{i:0;R:6217;i:1;R:799;i:2;R:3234;i:3;R:6218;}s:31:"8:coll-make_suggestions_tooltip";a:4:{i:0;R:6217;i:1;R:799;i:2;R:3234;i:3;R:6218;}s:22:"8:coll-suggest_enabled";a:4:{i:0;R:6217;i:1;R:799;i:2;R:3234;i:3;R:6218;}s:20:"8:coll-suggest_empty";a:4:{i:0;R:6217;i:1;R:799;i:2;R:3234;i:3;R:6218;}s:23:"8:coll-user_book_prefix";a:4:{i:0;R:6217;i:1;R:799;i:2;R:3234;i:3;R:6218;}s:28:"8:coll-community_book_prefix";a:4:{i:0;R:6217;i:1;R:799;i:2;R:3234;i:3;R:6218;}s:11:"8:coll-desc";a:4:{i:0;s:20:"ext-collection-other";i:1;R:799;i:2;R:3234;i:3;R:6218;}s:25:"8:coll-book_creator_intro";a:4:{i:0;R:6256;i:1;R:799;i:2;R:3234;i:3;R:6218;}s:23:"8:coll-manage_your_book";a:4:{i:0;R:6256;i:1;R:799;i:2;R:3234;i:3;R:6218;}s:24:"8:coll-book_creator_help";a:4:{i:0;R:6256;i:1;R:799;i:2;R:3234;i:3;R:6218;}s:25:"8:coll-start_book_creator";a:4:{i:0;R:6256;i:1;R:799;i:2;R:3234;i:3;R:6218;}s:28:"8:coll-book_creator_continue";a:4:{i:0;R:6256;i:1;R:799;i:2;R:3234;i:3;R:6218;}s:32:"8:coll-book_creator_disable_text";a:4:{i:0;R:6256;i:1;R:799;i:2;R:3234;i:3;R:6218;}s:32:"8:coll-book_creator_text_article";a:4:{i:0;R:6256;i:1;R:799;i:2;R:3234;i:3;R:6218;}s:17:"8:coll-collection";a:4:{i:0;R:6256;i:1;R:799;i:2;R:3234;i:3;R:6218;}s:18:"8:coll-collections";a:4:{i:0;R:6256;i:1;R:799;i:2;R:3234;i:3;R:6218;}s:31:"8:coll-exclusion_category_title";a:4:{i:0;R:6256;i:1;R:799;i:2;R:3234;i:3;R:6218;}s:31:"8:coll-template_blacklist_title";a:4:{i:0;R:6256;i:1;R:799;i:2;R:3234;i:3;R:6218;}s:28:"8:coll-print_template_prefix";a:4:{i:0;R:6256;i:1;R:799;i:2;R:3234;i:3;R:6218;}s:29:"8:coll-print_template_pattern";a:4:{i:0;R:6256;i:1;R:799;i:2;R:3234;i:3;R:6218;}s:28:"8:coll-unknown_subpage_title";a:4:{i:0;R:6256;i:1;R:799;i:2;R:3234;i:3;R:6218;}s:27:"8:coll-unknown_subpage_text";a:4:{i:0;R:6256;i:1;R:799;i:2;R:3234;i:3;R:6218;}s:31:"8:coll-couldnotaddarticle_title";a:4:{i:0;R:6256;i:1;R:799;i:2;R:3234;i:3;R:6218;}s:29:"8:coll-couldnotaddarticle_msg";a:4:{i:0;R:6256;i:1;R:799;i:2;R:3234;i:3;R:6218;}s:34:"8:coll-couldnotremovearticle_title";a:4:{i:0;R:6256;i:1;R:799;i:2;R:3234;i:3;R:6218;}s:32:"8:coll-couldnotremovearticle_msg";a:4:{i:0;R:6256;i:1;R:799;i:2;R:3234;i:3;R:6218;}s:20:"8:coll-noscript_text";a:4:{i:0;R:6256;i:1;R:799;i:2;R:3234;i:3;R:6218;}s:25:"8:coll-savedbook_template";a:4:{i:0;R:6256;i:1;R:799;i:2;R:3234;i:3;R:6218;}s:16:"8:coll-your_book";a:4:{i:0;R:6256;i:1;R:799;i:2;R:3234;i:3;R:6218;}s:21:"8:coll-download_title";a:4:{i:0;R:6256;i:1;R:799;i:2;R:3234;i:3;R:6218;}s:20:"8:coll-download_text";a:4:{i:0;R:6256;i:1;R:799;i:2;R:3234;i:3;R:6218;}s:23:"8:coll-download_as_text";a:4:{i:0;R:6256;i:1;R:799;i:2;R:3234;i:3;R:6218;}s:15:"8:coll-download";a:4:{i:0;R:6256;i:1;R:799;i:2;R:3234;i:3;R:6218;}s:19:"8:coll-format_label";a:4:{i:0;R:6256;i:1;R:799;i:2;R:3234;i:3;R:6218;}s:13:"8:coll-remove";a:4:{i:0;R:6256;i:1;R:799;i:2;R:3234;i:3;R:6218;}s:11:"8:coll-show";a:4:{i:0;R:6256;i:1;R:799;i:2;R:3234;i:3;R:6218;}s:18:"8:coll-move_to_top";a:4:{i:0;R:6256;i:1;R:799;i:2;R:3234;i:3;R:6218;}s:14:"8:coll-move_up";a:4:{i:0;R:6256;i:1;R:799;i:2;R:3234;i:3;R:6218;}s:16:"8:coll-move_down";a:4:{i:0;R:6256;i:1;R:799;i:2;R:3234;i:3;R:6218;}s:21:"8:coll-move_to_bottom";a:4:{i:0;R:6256;i:1;R:799;i:2;R:3234;i:3;R:6218;}s:12:"8:coll-title";a:4:{i:0;R:6256;i:1;R:799;i:2;R:3234;i:3;R:6218;}s:15:"8:coll-subtitle";a:4:{i:0;R:6256;i:1;R:799;i:2;R:3234;i:3;R:6218;}s:15:"8:coll-contents";a:4:{i:0;R:6256;i:1;R:799;i:2;R:3234;i:3;R:6218;}s:20:"8:coll-drag_and_drop";a:4:{i:0;R:6256;i:1;R:799;i:2;R:3234;i:3;R:6218;}s:21:"8:coll-create_chapter";a:4:{i:0;R:6256;i:1;R:799;i:2;R:3234;i:3;R:6218;}s:26:"8:coll-sort_alphabetically";a:4:{i:0;R:6256;i:1;R:799;i:2;R:3234;i:3;R:6218;}s:13:"8:coll-rename";a:4:{i:0;R:6256;i:1;R:799;i:2;R:3234;i:3;R:6218;}s:18:"8:coll-new_chapter";a:4:{i:0;R:6256;i:1;R:799;i:2;R:3234;i:3;R:6218;}s:21:"8:coll-rename_chapter";a:4:{i:0;R:6256;i:1;R:799;i:2;R:3234;i:3;R:6218;}s:23:"8:coll-no_such_category";a:4:{i:0;R:6256;i:1;R:799;i:2;R:3234;i:3;R:6218;}s:20:"8:coll-notitle_title";a:4:{i:0;R:6256;i:1;R:799;i:2;R:3234;i:3;R:6218;}s:24:"8:coll-post_failed_title";a:4:{i:0;R:6256;i:1;R:799;i:2;R:3234;i:3;R:6218;}s:22:"8:coll-post_failed_msg";a:4:{i:0;R:6256;i:1;R:799;i:2;R:3234;i:3;R:6218;}s:27:"8:coll-mwserve_failed_title";a:4:{i:0;R:6256;i:1;R:799;i:2;R:3234;i:3;R:6218;}s:25:"8:coll-mwserve_failed_msg";a:4:{i:0;R:6256;i:1;R:799;i:2;R:3234;i:3;R:6218;}s:20:"8:coll-error_reponse";a:4:{i:0;R:6256;i:1;R:799;i:2;R:3234;i:3;R:6218;}s:23:"8:coll-empty_collection";a:4:{i:0;R:6256;i:1;R:799;i:2;R:3234;i:3;R:6218;}s:15:"8:coll-revision";a:4:{i:0;R:6256;i:1;R:799;i:2;R:3234;i:3;R:6218;}s:28:"8:coll-save_collection_title";a:4:{i:0;R:6256;i:1;R:799;i:2;R:3234;i:3;R:6218;}s:27:"8:coll-save_collection_text";a:4:{i:0;R:6256;i:1;R:799;i:2;R:3234;i:3;R:6218;}s:20:"8:coll-login_to_save";a:4:{i:0;R:6256;i:1;R:799;i:2;R:3234;i:3;R:6218;}s:32:"8:coll-personal_collection_label";a:4:{i:0;R:6256;i:1;R:799;i:2;R:3234;i:3;R:6218;}s:33:"8:coll-community_collection_label";a:4:{i:0;R:6256;i:1;R:799;i:2;R:3234;i:3;R:6218;}s:22:"8:coll-save_collection";a:4:{i:0;R:6256;i:1;R:799;i:2;R:3234;i:3;R:6218;}s:20:"8:coll-save_category";a:4:{i:0;R:6256;i:1;R:799;i:2;R:3234;i:3;R:6218;}s:22:"8:coll-overwrite_title";a:4:{i:0;R:6256;i:1;R:799;i:2;R:3234;i:3;R:6218;}s:21:"8:coll-overwrite_text";a:4:{i:0;R:6256;i:1;R:799;i:2;R:3234;i:3;R:6218;}s:10:"8:coll-yes";a:4:{i:0;R:6256;i:1;R:799;i:2;R:3234;i:3;R:6218;}s:9:"8:coll-no";a:4:{i:0;R:6256;i:1;R:799;i:2;R:3234;i:3;R:6218;}s:26:"8:coll-load_overwrite_text";a:4:{i:0;R:6256;i:1;R:799;i:2;R:3234;i:3;R:6218;}s:16:"8:coll-overwrite";a:4:{i:0;R:6256;i:1;R:799;i:2;R:3234;i:3;R:6218;}s:13:"8:coll-append";a:4:{i:0;R:6256;i:1;R:799;i:2;R:3234;i:3;R:6218;}s:13:"8:coll-cancel";a:4:{i:0;R:6256;i:1;R:799;i:2;R:3234;i:3;R:6218;}s:13:"8:coll-update";a:4:{i:0;R:6256;i:1;R:799;i:2;R:3234;i:3;R:6218;}s:27:"8:coll-limit_exceeded_title";a:4:{i:0;R:6256;i:1;R:799;i:2;R:3234;i:3;R:6218;}s:26:"8:coll-limit_exceeded_text";a:4:{i:0;R:6256;i:1;R:799;i:2;R:3234;i:3;R:6218;}s:22:"8:coll-rendering_title";a:4:{i:0;R:6256;i:1;R:799;i:2;R:3234;i:3;R:6218;}s:21:"8:coll-rendering_text";a:4:{i:0;R:6256;i:1;R:799;i:2;R:3234;i:3;R:6218;}s:23:"8:coll-rendering_status";a:4:{i:0;R:6256;i:1;R:799;i:2;R:3234;i:3;R:6218;}s:24:"8:coll-rendering_article";a:4:{i:0;R:6256;i:1;R:799;i:2;R:3234;i:3;R:6218;}s:21:"8:coll-rendering_page";a:4:{i:0;R:6256;i:1;R:799;i:2;R:3234;i:3;R:6218;}s:39:"8:coll-rendering_page_info_text_article";a:4:{i:0;R:6256;i:1;R:799;i:2;R:3234;i:3;R:6218;}s:45:"8:coll-rendering_collection_info_text_article";a:4:{i:0;R:6256;i:1;R:799;i:2;R:3234;i:3;R:6218;}s:31:"8:coll-rendering_finished_title";a:4:{i:0;R:6256;i:1;R:799;i:2;R:3234;i:3;R:6218;}s:30:"8:coll-rendering_finished_text";a:4:{i:0;R:6256;i:1;R:799;i:2;R:3234;i:3;R:6218;}s:38:"8:coll-finished_page_info_text_article";a:4:{i:0;R:6256;i:1;R:799;i:2;R:3234;i:3;R:6218;}s:44:"8:coll-finished_collection_info_text_article";a:4:{i:0;R:6256;i:1;R:799;i:2;R:3234;i:3;R:6218;}s:21:"8:coll-notfound_title";a:4:{i:0;R:6256;i:1;R:799;i:2;R:3234;i:3;R:6218;}s:20:"8:coll-notfound_text";a:4:{i:0;R:6256;i:1;R:799;i:2;R:3234;i:3;R:6218;}s:30:"8:coll-download_notfound_title";a:4:{i:0;R:6256;i:1;R:799;i:2;R:3234;i:3;R:6218;}s:29:"8:coll-download_notfound_text";a:4:{i:0;R:6256;i:1;R:799;i:2;R:3234;i:3;R:6218;}s:28:"8:coll-download_failed_title";a:4:{i:0;R:6256;i:1;R:799;i:2;R:3234;i:3;R:6218;}s:27:"8:coll-download_failed_text";a:4:{i:0;R:6256;i:1;R:799;i:2;R:3234;i:3;R:6218;}s:16:"8:coll-is_cached";a:4:{i:0;R:6256;i:1;R:799;i:2;R:3234;i:3;R:6218;}s:25:"8:coll-excluded-templates";a:4:{i:0;R:6256;i:1;R:799;i:2;R:3234;i:3;R:6218;}s:28:"8:coll-blacklisted-templates";a:4:{i:0;R:6256;i:1;R:799;i:2;R:3234;i:3;R:6218;}s:27:"8:coll-return_to_collection";a:4:{i:0;R:6256;i:1;R:799;i:2;R:3234;i:3;R:6218;}s:17:"8:coll-book_title";a:4:{i:0;R:6256;i:1;R:799;i:2;R:3234;i:3;R:6218;}s:16:"8:coll-book_text";a:4:{i:0;R:6256;i:1;R:799;i:2;R:3234;i:3;R:6218;}s:20:"8:coll-order_from_pp";a:4:{i:0;R:6256;i:1;R:799;i:2;R:3234;i:3;R:6218;}s:15:"8:coll-about_pp";a:4:{i:0;R:6256;i:1;R:799;i:2;R:3234;i:3;R:6218;}s:31:"8:coll-invalid_podpartner_title";a:4:{i:0;R:6256;i:1;R:799;i:2;R:3234;i:3;R:6218;}s:29:"8:coll-invalid_podpartner_msg";a:4:{i:0;R:6256;i:1;R:799;i:2;R:3234;i:3;R:6218;}s:14:"8:coll-license";a:4:{i:0;R:6256;i:1;R:799;i:2;R:3234;i:3;R:6218;}s:18:"8:coll-license_url";a:4:{i:0;R:6256;i:1;R:799;i:2;R:3234;i:3;R:6218;}s:16:"8:coll-return_to";a:4:{i:0;R:6256;i:1;R:799;i:2;R:3234;i:3;R:6218;}s:25:"8:coll-order_info_article";a:4:{i:0;R:6256;i:1;R:799;i:2;R:3234;i:3;R:6218;}s:20:"8:coll-suggest_title";a:4:{i:0;R:6256;i:1;R:799;i:2;R:3234;i:3;R:6218;}s:25:"8:coll-suggest_intro_text";a:4:{i:0;R:6256;i:1;R:799;i:2;R:3234;i:3;R:6218;}s:25:"8:coll-suggested_articles";a:4:{i:0;R:6256;i:1;R:799;i:2;R:3234;i:3;R:6218;}s:25:"8:coll-suggest_reset_bans";a:4:{i:0;R:6256;i:1;R:799;i:2;R:3234;i:3;R:6218;}s:33:"8:coll-suggest_reset_bans_tooltip";a:4:{i:0;R:6256;i:1;R:799;i:2;R:3234;i:3;R:6218;}s:27:"8:coll-suggest_add_selected";a:4:{i:0;R:6256;i:1;R:799;i:2;R:3234;i:3;R:6218;}s:27:"8:coll-suggest_ban_selected";a:4:{i:0;R:6256;i:1;R:799;i:2;R:3234;i:3;R:6218;}s:24:"8:coll-suggest_your_book";a:4:{i:0;R:6256;i:1;R:799;i:2;R:3234;i:3;R:6218;}s:19:"8:coll-suggest_show";a:4:{i:0;R:6256;i:1;R:799;i:2;R:3234;i:3;R:6218;}s:26:"8:coll-suggest_ban_tooltip";a:4:{i:0;R:6256;i:1;R:799;i:2;R:3234;i:3;R:6218;}s:26:"8:coll-suggest_article_ban";a:4:{i:0;R:6256;i:1;R:799;i:2;R:3234;i:3;R:6218;}s:26:"8:coll-suggest_article_add";a:4:{i:0;R:6256;i:1;R:799;i:2;R:3234;i:3;R:6218;}s:29:"8:coll-suggest_article_remove";a:4:{i:0;R:6256;i:1;R:799;i:2;R:3234;i:3;R:6218;}s:27:"8:coll-suggest_undo_tooltip";a:4:{i:0;R:6256;i:1;R:799;i:2;R:3234;i:3;R:6218;}s:19:"8:coll-suggest_undo";a:4:{i:0;R:6256;i:1;R:799;i:2;R:3234;i:3;R:6218;}s:22:"8:coll-load_local_book";a:4:{i:0;R:6256;i:1;R:799;i:2;R:3234;i:3;R:6218;}s:32:"8:right-collectionsaveasuserpage";a:4:{i:0;R:6256;i:1;R:799;i:2;R:3234;i:3;R:6218;}s:37:"8:right-collectionsaveascommunitypage";a:4:{i:0;R:6256;i:1;R:799;i:2;R:3234;i:3;R:6218;}s:16:"8:communityvoice";a:3:{i:0;s:18:"ext-communityvoice";i:1;R:799;i:2;R:3234;}s:21:"8:communityvoice-desc";a:3:{i:0;R:6376;i:1;R:799;i:2;R:3234;}s:24:"8:communityvoice-ratings";a:3:{i:0;R:6376;i:1;R:799;i:2;R:3234;}s:45:"8:communityvoice-ratings-scale-status-sending";a:3:{i:0;R:6376;i:1;R:799;i:2;R:3234;}s:43:"8:communityvoice-ratings-scale-status-error";a:3:{i:0;R:6376;i:1;R:799;i:2;R:3234;}s:44:"8:communityvoice-ratings-scale-status-thanks";a:3:{i:0;R:6376;i:1;R:799;i:2;R:3234;}s:36:"8:communityvoice-ratings-scale-stats";a:3:{i:0;R:6376;i:1;R:799;i:2;R:3234;}s:42:"8:communityvoice-ratings-error-no-category";a:3:{i:0;R:6376;i:1;R:799;i:2;R:3234;}s:39:"8:communityvoice-ratings-error-no-title";a:3:{i:0;R:6376;i:1;R:799;i:2;R:3234;}s:13:"8:contactpage";a:3:{i:0;s:15:"ext-contactpage";i:1;R:799;i:2;R:3234;}s:18:"8:contactpage-desc";a:3:{i:0;R:6386;i:1;R:799;i:2;R:3234;}s:19:"8:contactpage-title";a:3:{i:0;R:6386;i:1;R:799;i:2;R:3234;}s:22:"8:contactpage-pagetext";a:3:{i:0;R:6386;i:1;R:799;i:2;R:3234;}s:20:"8:contactpage-legend";a:3:{i:0;R:6386;i:1;R:799;i:2;R:3234;}s:24:"8:contactpage-defsubject";a:3:{i:0;R:6386;i:1;R:799;i:2;R:3234;}s:32:"8:contactpage-subject-and-sender";a:3:{i:0;R:6386;i:1;R:799;i:2;R:3234;}s:39:"8:contactpage-subject-and-sender-withip";a:3:{i:0;R:6386;i:1;R:799;i:2;R:3234;}s:22:"8:contactpage-fromname";a:3:{i:0;R:6386;i:1;R:799;i:2;R:3234;}s:25:"8:contactpage-fromaddress";a:3:{i:0;R:6386;i:1;R:799;i:2;R:3234;}s:27:"8:contactpage-formfootnotes";a:3:{i:0;R:6386;i:1;R:799;i:2;R:3234;}s:31:"8:contactpage-fromname-required";a:3:{i:0;R:6386;i:1;R:799;i:2;R:3234;}s:34:"8:contactpage-fromaddress-required";a:3:{i:0;R:6386;i:1;R:799;i:2;R:3234;}s:36:"8:contactpage-formfootnotes-required";a:3:{i:0;R:6386;i:1;R:799;i:2;R:3234;}s:21:"8:contactpage-captcha";a:3:{i:0;R:6386;i:1;R:799;i:2;R:3234;}s:28:"8:contactpage-captcha-failed";a:3:{i:0;R:6386;i:1;R:799;i:2;R:3234;}s:23:"8:contactpage-includeip";a:3:{i:0;R:6386;i:1;R:799;i:2;R:3234;}s:14:"8:contest-desc";a:3:{i:0;s:11:"ext-contest";i:1;R:799;i:2;R:3234;}s:17:"8:contest-toplink";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:20:"8:right-contestadmin";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:18:"8:right-contestant";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:20:"8:right-contestjudge";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:21:"8:action-contestadmin";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:19:"8:action-contestant";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:21:"8:action-contestjudge";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:20:"8:group-contestadmin";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:27:"8:group-contestadmin-member";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:24:"8:grouppage-contestadmin";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:18:"8:group-contestant";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:25:"8:group-contestant-member";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:22:"8:grouppage-contestant";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:20:"8:group-contestjudge";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:27:"8:group-contestjudge-member";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:24:"8:grouppage-contestjudge";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:24:"8:group-contestadmin.css";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:23:"8:group-contestadmin.js";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:22:"8:group-contestant.css";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:21:"8:group-contestant.js";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:24:"8:group-contestjudge.css";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:23:"8:group-contestjudge.js";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:15:"8:prefs-contest";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:27:"8:contest-prefs-showtoplink";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:22:"8:contest-status-draft";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:23:"8:contest-status-active";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:24:"8:contest-status-expired";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:25:"8:contest-status-finished";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:17:"8:special-contest";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:18:"8:special-contests";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:23:"8:special-contestsignup";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:24:"8:special-contestwelcome";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:21:"8:special-editcontest";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:20:"8:special-mycontests";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:28:"8:specialpages-group-contest";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:22:"8:contest-nav-contests";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:25:"8:contest-nav-editcontest";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:21:"8:contest-nav-contest";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:28:"8:contest-nav-contestwelcome";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:27:"8:contest-nav-contestsignup";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:24:"8:contest-special-addnew";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:25:"8:contest-special-namedoc";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:25:"8:contest-special-newname";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:21:"8:contest-special-add";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:26:"8:contest-special-existing";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:22:"8:contest-special-name";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:24:"8:contest-special-status";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:33:"8:contest-special-submissioncount";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:22:"8:contest-special-edit";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:24:"8:contest-special-delete";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:32:"8:contest-special-confirm-delete";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:31:"8:contest-special-delete-failed";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:18:"8:editcontest-text";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:20:"8:editcontest-legend";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:19:"8:contest-edit-name";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:21:"8:contest-edit-status";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:20:"8:contest-edit-intro";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:28:"8:contest-edit-opportunities";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:24:"8:contest-edit-rulespage";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:19:"8:contest-edit-help";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:21:"8:contest-edit-signup";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:23:"8:contest-edit-reminder";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:18:"8:contest-edit-end";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:29:"8:contest-edit-exists-already";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:21:"8:contest-edit-submit";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:25:"8:contest-edit-challenges";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:21:"8:contest-edit-delete";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:24:"8:contest-edit-add-first";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:26:"8:contest-edit-add-another";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:29:"8:contest-edit-confirm-delete";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:30:"8:contest-edit-challenge-title";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:29:"8:contest-edit-challenge-text";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:32:"8:contest-edit-challenge-oneline";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:25:"8:contest-welcome-unknown";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:23:"8:contest-welcome-rules";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:24:"8:contest-welcome-signup";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:24:"8:contest-welcome-js-off";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:34:"8:contest-welcome-accept-challenge";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:31:"8:contest-welcome-select-header";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:33:"8:contest-welcome-active-contests";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:36:"8:contest-welcome-no-contests-active";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:24:"8:contest-signup-unknown";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:23:"8:contest-signup-submit";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:23:"8:contest-signup-header";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:22:"8:contest-signup-email";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:25:"8:contest-signup-realname";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:26:"8:contest-signup-volunteer";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:20:"8:contest-signup-wmf";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:19:"8:contest-signup-cv";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:26:"8:contest-signup-readrules";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:26:"8:contest-signup-challenge";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:25:"8:contest-signup-finished";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:22:"8:contest-signup-draft";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:24:"8:contest-signup-country";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:26:"8:contest-signup-emailwarn";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:30:"8:contest-signup-require-rules";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:32:"8:contest-signup-require-country";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:30:"8:contest-signup-invalid-email";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:29:"8:contest-signup-invalid-name";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:34:"8:contest-signup-require-challenge";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:27:"8:contest-signup-invalid-cv";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:23:"8:contest-contest-title";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:28:"8:contest-contest-no-results";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:22:"8:contest-contest-name";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:24:"8:contest-contest-status";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:33:"8:contest-contest-submissioncount";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:21:"8:contest-contest-end";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:26:"8:contest-contest-days-ago";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:27:"8:contest-contest-days-left";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:29:"8:contest-contest-contestants";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:34:"8:contest-contest-contestants-text";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:31:"8:contest-contest-reminder-mail";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:31:"8:contest-contest-reminder-page";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:31:"8:contest-contest-send-reminder";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:20:"8:contest-contest-go";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:23:"8:contest-contest-clear";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:26:"8:contest-contest-showonly";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:21:"8:contest-contest-yes";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:20:"8:contest-contest-no";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:22:"8:contest-contest-none";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:22:"8:contest-contest-some";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:34:"8:contest-contest-filter-challenge";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:34:"8:contest-contest-filter-volunteer";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:28:"8:contest-contest-filter-wmf";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:33:"8:contest-contest-filter-comments";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:37:"8:contest-contest-filter-rating_count";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:35:"8:contest-contest-filter-submission";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:34:"8:contest-contest-reminder-preview";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:32:"8:contest-contest-reminder-title";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:31:"8:contest-contest-reminder-send";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:33:"8:contest-contest-reminder-cancel";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:34:"8:contest-contest-reminder-sending";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:34:"8:contest-contest-reminder-success";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:32:"8:contest-contest-reminder-close";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:32:"8:contest-contest-reminder-retry";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:33:"8:contest-contest-reminder-failed";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:34:"8:contest-contest-reminder-subject";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:23:"8:contest-contestant-id";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:35:"8:contest-contestant-challenge-name";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:30:"8:contest-contestant-volunteer";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:24:"8:contest-contestant-wmf";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:23:"8:contest-contestant-no";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:24:"8:contest-contestant-yes";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:33:"8:contest-contestant-commentcount";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:34:"8:contest-contestant-overallrating";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:27:"8:contest-contestant-rating";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:31:"8:contest-contestant-submission";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:26:"8:contest-contestant-title";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:30:"8:contest-contestant-header-id";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:35:"8:contest-contestant-header-contest";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:37:"8:contest-contestant-header-challenge";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:38:"8:contest-contestant-header-submission";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:35:"8:contest-contestant-header-country";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:31:"8:contest-contestant-header-wmf";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:37:"8:contest-contestant-header-volunteer";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:34:"8:contest-contestant-header-rating";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:36:"8:contest-contestant-header-comments";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:35:"8:contest-contestant-submission-url";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:33:"8:contest-contestant-notsubmitted";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:29:"8:contest-contestant-comments";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:27:"8:contest-contestant-submit";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:31:"8:contest-contestant-comment-by";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:25:"8:contest-contestant-rate";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:30:"8:contest-contestant-not-voted";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:26:"8:contest-contestant-voted";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:30:"8:contest-contestant-permalink";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:28:"8:contest-email-signup-title";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:30:"8:contest-email-reminder-title";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:28:"8:contest-mycontests-toplink";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:32:"8:contest-mycontests-no-contests";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:34:"8:contest-mycontests-active-header";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:36:"8:contest-mycontests-finished-header";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:32:"8:contest-mycontests-active-text";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:34:"8:contest-mycontests-finished-text";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:35:"8:contest-mycontests-header-contest";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:37:"8:contest-mycontests-header-challenge";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:35:"8:contest-mycontests-signup-success";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:37:"8:contest-mycontests-addition-success";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:36:"8:contest-mycontests-updated-success";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:32:"8:contest-mycontests-sessionfail";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:27:"8:contest-submission-submit";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:28:"8:contest-submission-unknown";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:27:"8:contest-submission-header";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:29:"8:contest-submission-finished";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:31:"8:contest-submission-submission";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:32:"8:contest-submission-invalid-url";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:35:"8:contest-submission-new-submission";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:39:"8:contest-submission-current-submission";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:30:"8:contest-submission-challenge";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:42:"8:contest-submission-challenge-description";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:28:"8:contest-submission-domains";a:3:{i:0;R:6404;i:1;R:799;i:2;R:3234;}s:28:"8:contributionreporting-desc";a:3:{i:0;s:25:"ext-contributionreporting";i:1;R:799;i:2;R:3234;}s:19:"8:contributiontotal";a:3:{i:0;R:6597;i:1;R:799;i:2;R:3234;}s:12:"8:dailytotal";a:3:{i:0;R:6597;i:1;R:799;i:2;R:3234;}s:21:"8:contribstats-header";a:3:{i:0;R:6597;i:1;R:799;i:2;R:3234;}s:21:"8:contribstats-footer";a:3:{i:0;R:6597;i:1;R:799;i:2;R:3234;}s:16:"8:disablednotice";a:3:{i:0;R:6597;i:1;R:799;i:2;R:3234;}s:25:"8:disablednotice-disabled";a:3:{i:0;R:6597;i:1;R:799;i:2;R:3234;}s:21:"8:contributionhistory";a:3:{i:0;R:6597;i:1;R:799;i:2;R:3234;}s:21:"8:contrib-hist-header";a:3:{i:0;R:6597;i:1;R:799;i:2;R:3234;}s:19:"8:contrib-hist-name";a:3:{i:0;R:6597;i:1;R:799;i:2;R:3234;}s:19:"8:contrib-hist-date";a:3:{i:0;R:6597;i:1;R:799;i:2;R:3234;}s:21:"8:contrib-hist-amount";a:3:{i:0;R:6597;i:1;R:799;i:2;R:3234;}s:19:"8:contrib-hist-next";a:3:{i:0;R:6597;i:1;R:799;i:2;R:3234;}s:23:"8:contrib-hist-previous";a:3:{i:0;R:6597;i:1;R:799;i:2;R:3234;}s:24:"8:contrib-hist-anonymous";a:3:{i:0;R:6597;i:1;R:799;i:2;R:3234;}s:24:"8:contributionstatistics";a:3:{i:0;R:6597;i:1;R:799;i:2;R:3234;}s:19:"8:contribstats-desc";a:3:{i:0;R:6597;i:1;R:799;i:2;R:3234;}s:27:"8:contribstats-daily-totals";a:3:{i:0;R:6597;i:1;R:799;i:2;R:3234;}s:29:"8:contribstats-monthly-totals";a:3:{i:0;R:6597;i:1;R:799;i:2;R:3234;}s:33:"8:contribstats-month-range-totals";a:3:{i:0;R:6597;i:1;R:799;i:2;R:3234;}s:36:"8:contribstats-currency-range-totals";a:3:{i:0;R:6597;i:1;R:799;i:2;R:3234;}s:43:"8:contribstats-contribution-range-breakdown";a:3:{i:0;R:6597;i:1;R:799;i:2;R:3234;}s:30:"8:contribstats-currency-totals";a:3:{i:0;R:6597;i:1;R:799;i:2;R:3234;}s:37:"8:contribstats-contribution-breakdown";a:3:{i:0;R:6597;i:1;R:799;i:2;R:3234;}s:18:"8:contribstats-day";a:3:{i:0;R:6597;i:1;R:799;i:2;R:3234;}s:20:"8:contribstats-month";a:3:{i:0;R:6597;i:1;R:799;i:2;R:3234;}s:23:"8:contribstats-currency";a:3:{i:0;R:6597;i:1;R:799;i:2;R:3234;}s:21:"8:contribstats-amount";a:3:{i:0;R:6597;i:1;R:799;i:2;R:3234;}s:28:"8:contribstats-contributions";a:3:{i:0;R:6597;i:1;R:799;i:2;R:3234;}s:20:"8:contribstats-total";a:3:{i:0;R:6597;i:1;R:799;i:2;R:3234;}s:18:"8:contribstats-avg";a:3:{i:0;R:6597;i:1;R:799;i:2;R:3234;}s:18:"8:contribstats-max";a:3:{i:0;R:6597;i:1;R:799;i:2;R:3234;}s:29:"8:contribstats-percentage-ytd";a:3:{i:0;R:6597;i:1;R:799;i:2;R:3234;}s:24:"8:contribstats-total-ytd";a:3:{i:0;R:6597;i:1;R:799;i:2;R:3234;}s:28:"8:contribstats-value-exactly";a:3:{i:0;R:6597;i:1;R:799;i:2;R:3234;}s:26:"8:contribstats-value-under";a:3:{i:0;R:6597;i:1;R:799;i:2;R:3234;}s:25:"8:contribstats-value-from";a:3:{i:0;R:6597;i:1;R:799;i:2;R:3234;}s:25:"8:contribstats-value-over";a:3:{i:0;R:6597;i:1;R:799;i:2;R:3234;}s:32:"8:contributiontrackingstatistics";a:3:{i:0;R:6597;i:1;R:799;i:2;R:3234;}s:25:"8:contribstats-day-totals";a:3:{i:0;R:6597;i:1;R:799;i:2;R:3234;}s:19:"8:contribstats-week";a:3:{i:0;R:6597;i:1;R:799;i:2;R:3234;}s:28:"8:contribstats-weekly-totals";a:3:{i:0;R:6597;i:1;R:799;i:2;R:3234;}s:27:"8:contribstats-payment-type";a:3:{i:0;R:6597;i:1;R:799;i:2;R:3234;}s:21:"8:contribstats-banner";a:3:{i:0;R:6597;i:1;R:799;i:2;R:3234;}s:32:"8:contribstats-payment-type-hits";a:3:{i:0;R:6597;i:1;R:799;i:2;R:3234;}s:21:"8:contribstats-clicks";a:3:{i:0;R:6597;i:1;R:799;i:2;R:3234;}s:24:"8:contribstats-donations";a:3:{i:0;R:6597;i:1;R:799;i:2;R:3234;}s:25:"8:contribstats-conversion";a:3:{i:0;R:6597;i:1;R:799;i:2;R:3234;}s:23:"8:contribstats-template";a:3:{i:0;R:6597;i:1;R:799;i:2;R:3234;}s:21:"8:contribstats-nodata";a:3:{i:0;R:6597;i:1;R:799;i:2;R:3234;}s:26:"8:contribstats-landingpage";a:3:{i:0;R:6597;i:1;R:799;i:2;R:3234;}s:25:"8:contribstats-donatepage";a:3:{i:0;R:6597;i:1;R:799;i:2;R:3234;}s:22:"8:contribstats-average";a:3:{i:0;R:6597;i:1;R:799;i:2;R:3234;}s:29:"8:contribstats-imperfect-data";a:3:{i:0;R:6597;i:1;R:799;i:2;R:3234;}s:31:"8:contribstats-paypal-donations";a:3:{i:0;R:6597;i:1;R:799;i:2;R:3234;}s:26:"8:contribstats-credit-card";a:3:{i:0;R:6597;i:1;R:799;i:2;R:3234;}s:25:"8:contribstats-fraud-note";a:3:{i:0;R:6597;i:1;R:799;i:2;R:3234;}s:24:"8:contribstats-unaudited";a:3:{i:0;R:6597;i:1;R:799;i:2;R:3234;}s:22:"8:fundraiserstatistics";a:3:{i:0;R:6597;i:1;R:799;i:2;R:3234;}s:22:"8:fundraiserstats-date";a:3:{i:0;R:6597;i:1;R:799;i:2;R:3234;}s:21:"8:fundraiserstats-day";a:3:{i:0;R:6597;i:1;R:799;i:2;R:3234;}s:31:"8:fundraiserstats-contributions";a:3:{i:0;R:6597;i:1;R:799;i:2;R:3234;}s:23:"8:fundraiserstats-total";a:3:{i:0;R:6597;i:1;R:799;i:2;R:3234;}s:21:"8:fundraiserstats-avg";a:3:{i:0;R:6597;i:1;R:799;i:2;R:3234;}s:21:"8:fundraiserstats-ytd";a:3:{i:0;R:6597;i:1;R:799;i:2;R:3234;}s:21:"8:fundraiserstats-max";a:3:{i:0;R:6597;i:1;R:799;i:2;R:3234;}s:28:"8:fundraiserstats-tab-totals";a:3:{i:0;R:6597;i:1;R:799;i:2;R:3234;}s:35:"8:fundraiserstats-tab-contributions";a:3:{i:0;R:6597;i:1;R:799;i:2;R:3234;}s:30:"8:fundraiserstats-tab-averages";a:3:{i:0;R:6597;i:1;R:799;i:2;R:3234;}s:30:"8:fundraiserstats-tab-maximums";a:3:{i:0;R:6597;i:1;R:799;i:2;R:3234;}s:25:"8:fundraiserstats-tab-ytd";a:3:{i:0;R:6597;i:1;R:799;i:2;R:3234;}s:30:"8:fundraiserstats-instructions";a:3:{i:0;R:6597;i:1;R:799;i:2;R:3234;}s:27:"8:fundraiserstats-customize";a:3:{i:0;R:6597;i:1;R:799;i:2;R:3234;}s:28:"8:fundraiserstats-show-years";a:3:{i:0;R:6597;i:1;R:799;i:2;R:3234;}s:27:"8:fundraiserstats-time-zone";a:3:{i:0;R:6597;i:1;R:799;i:2;R:3234;}s:21:"8:fundraiserstats-utc";a:3:{i:0;R:6597;i:1;R:799;i:2;R:3234;}s:27:"8:contributiontracking-desc";a:3:{i:0;s:24:"ext-contributiontracking";i:1;R:799;i:2;R:3234;}s:22:"8:contributiontracking";a:3:{i:0;R:6674;i:1;R:799;i:2;R:3234;}s:24:"8:contrib-tracking-error";a:3:{i:0;R:6674;i:1;R:799;i:2;R:3234;}s:29:"8:contrib-tracking-error-text";a:3:{i:0;R:6674;i:1;R:799;i:2;R:3234;}s:29:"8:contrib-tracking-submitting";a:3:{i:0;R:6674;i:1;R:799;i:2;R:3234;}s:27:"8:contrib-tracking-continue";a:3:{i:0;R:6674;i:1;R:799;i:2;R:3234;}s:27:"8:contrib-tracking-redirect";a:3:{i:0;R:6674;i:1;R:799;i:2;R:3234;}s:25:"8:contrib-tracking-button";a:3:{i:0;R:6674;i:1;R:799;i:2;R:3234;}s:36:"8:contrib-tracking-item-name-onetime";a:3:{i:0;R:6674;i:1;R:799;i:2;R:3234;}s:38:"8:contrib-tracking-item-name-recurring";a:3:{i:0;R:6674;i:1;R:799;i:2;R:3234;}s:18:"8:customusersignup";a:3:{i:0;s:20:"ext-customusersignup";i:1;R:799;i:2;R:3234;}s:23:"8:customusersignup-desc";a:3:{i:0;R:6685;i:1;R:799;i:2;R:3234;}s:18:"8:donate_interface";a:3:{i:0;s:9:"ext-di-gc";i:1;R:799;i:2;R:3234;}s:23:"8:donate_interface-desc";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:32:"8:donate_interface-langonly-desc";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:24:"8:donate_interface-intro";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:25:"8:donate_interface-amount";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:31:"8:donate_interface-other-amount";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:27:"8:donate_interface-currency";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:26:"8:donate_interface-gateway";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:32:"8:donate_interface-submit-button";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:34:"8:donate_interface-comment-message";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:32:"8:donate_interface-comment-label";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:31:"8:donate_interface-anon-message";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:34:"8:donate_interface-email-agreement";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:32:"8:donate_interface-comment-title";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:37:"8:donate_interface-big-amount-display";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:40:"8:donate_interface-medium-amount-display";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:39:"8:donate_interface-small-amount-display";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:35:"8:donate_interface-big-amount-value";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:38:"8:donate_interface-medium-amount-value";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:37:"8:donate_interface-small-amount-value";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:31:"8:donate_interface-amount-error";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:36:"8:donate_interface-smallamount-error";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:34:"8:donate_interface-bigamount-error";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:35:"8:donate_interface-processing-error";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:22:"8:donate_interface-aed";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:22:"8:donate_interface-ars";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:22:"8:donate_interface-aud";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:22:"8:donate_interface-bbd";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:22:"8:donate_interface-bdt";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:22:"8:donate_interface-bgn";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:22:"8:donate_interface-bhd";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:22:"8:donate_interface-bmd";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:22:"8:donate_interface-bnd";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:22:"8:donate_interface-bob";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:22:"8:donate_interface-brl";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:22:"8:donate_interface-bsd";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:22:"8:donate_interface-bzd";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:22:"8:donate_interface-cad";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:22:"8:donate_interface-chf";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:22:"8:donate_interface-clp";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:22:"8:donate_interface-cny";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:22:"8:donate_interface-cop";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:22:"8:donate_interface-crc";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:22:"8:donate_interface-czk";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:22:"8:donate_interface-dkk";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:22:"8:donate_interface-dop";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:22:"8:donate_interface-dzd";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:22:"8:donate_interface-eek";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:22:"8:donate_interface-egp";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:22:"8:donate_interface-eur";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:22:"8:donate_interface-gbp";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:22:"8:donate_interface-gtq";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:22:"8:donate_interface-hkd";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:22:"8:donate_interface-hnl";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:22:"8:donate_interface-hrk";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:22:"8:donate_interface-huf";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:22:"8:donate_interface-idr";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:22:"8:donate_interface-ils";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:22:"8:donate_interface-inr";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:22:"8:donate_interface-jmd";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:22:"8:donate_interface-jod";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:22:"8:donate_interface-jpy";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:22:"8:donate_interface-kes";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:22:"8:donate_interface-krw";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:22:"8:donate_interface-kyd";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:22:"8:donate_interface-kzt";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:22:"8:donate_interface-lbp";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:22:"8:donate_interface-lkr";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:22:"8:donate_interface-ltl";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:22:"8:donate_interface-lvl";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:22:"8:donate_interface-mad";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:22:"8:donate_interface-mkd";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:22:"8:donate_interface-mur";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:22:"8:donate_interface-mvr";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:22:"8:donate_interface-mxn";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:22:"8:donate_interface-myr";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:22:"8:donate_interface-nok";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:22:"8:donate_interface-nzd";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:22:"8:donate_interface-omr";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:22:"8:donate_interface-pab";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:22:"8:donate_interface-pen";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:22:"8:donate_interface-php";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:22:"8:donate_interface-pkr";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:22:"8:donate_interface-pln";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:22:"8:donate_interface-pyg";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:22:"8:donate_interface-qar";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:22:"8:donate_interface-ron";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:22:"8:donate_interface-rub";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:22:"8:donate_interface-sar";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:22:"8:donate_interface-sek";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:22:"8:donate_interface-sgd";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:22:"8:donate_interface-svc";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:22:"8:donate_interface-thb";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:22:"8:donate_interface-tjs";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:22:"8:donate_interface-tnd";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:22:"8:donate_interface-try";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:22:"8:donate_interface-ttd";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:22:"8:donate_interface-twd";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:22:"8:donate_interface-uah";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:22:"8:donate_interface-usd";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:22:"8:donate_interface-uyu";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:22:"8:donate_interface-uzs";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:22:"8:donate_interface-vnd";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:22:"8:donate_interface-xaf";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:22:"8:donate_interface-xcd";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:22:"8:donate_interface-xof";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:22:"8:donate_interface-zar";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:35:"8:donate_interface-currency-display";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:29:"8:donate_interface-accessible";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:32:"8:donate_interface-paypal-button";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:34:"8:donate_interface-paypal-redirect";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:28:"8:donate_interface-cc-button";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:30:"8:donate_interface-ccdc-button";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:28:"8:donate_interface-dd-button";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:28:"8:donate_interface-bt-button";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:28:"8:donate_interface-rt-button";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:33:"8:donate_interface-ewallet-button";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:31:"8:donate_interface-donor-legend";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:30:"8:donate_interface-card-legend";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:32:"8:donate_interface-amount-legend";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:27:"8:donate_interface-cvv-link";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:31:"8:donate_interface-donor-amount";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:39:"8:donate_interface-donor-currency-label";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:30:"8:donate_interface-donor-email";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:33:"8:donate_interface-donor-emailadd";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:29:"8:donate_interface-donor-name";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:30:"8:donate_interface-donor-fname";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:34:"8:donate_interface-donor-fname-alt";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:32:"8:donate_interface-donor-address";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:30:"8:donate_interface-donor-mname";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:30:"8:donate_interface-donor-lname";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:34:"8:donate_interface-donor-lname-alt";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:31:"8:donate_interface-donor-street";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:38:"8:donate_interface-donor-street-number";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:29:"8:donate_interface-donor-city";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:31:"8:donate_interface-donor-county";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:31:"8:donate_interface-donor-island";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:30:"8:donate_interface-donor-state";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:28:"8:donate_interface-donor-zip";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:31:"8:donate_interface-donor-postal";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:33:"8:donate_interface-donor-postcode";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:32:"8:donate_interface-donor-country";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:29:"8:donate_interface-donor-zone";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:30:"8:donate_interface-donor-pobox";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:29:"8:donate_interface-donor-card";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:33:"8:donate_interface-donor-card-num";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:35:"8:donate_interface-donor-expiration";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:33:"8:donate_interface-donor-security";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:31:"8:donate_interface-donor-submit";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:37:"8:donate_interface-donor-currency-msg";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:33:"8:donate_interface-card-name-amex";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:33:"8:donate_interface-card-name-visa";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:31:"8:donate_interface-card-name-mc";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:37:"8:donate_interface-card-name-discover";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:36:"8:donate_interface-error-msg-general";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:37:"8:donate_interface-error-msg-nopaypal";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:28:"8:donate_interface-error-msg";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:31:"8:donate_interface-error-msg-js";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:39:"8:donate_interface-error-msg-validation";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:43:"8:donate_interface-error-msg-invalid-amount";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:34:"8:donate_interface-error-msg-email";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:37:"8:donate_interface-error-msg-card-num";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:33:"8:donate_interface-error-msg-amex";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:31:"8:donate_interface-error-msg-mc";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:33:"8:donate_interface-error-msg-visa";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:37:"8:donate_interface-error-msg-discover";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:35:"8:donate_interface-error-msg-amount";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:37:"8:donate_interface-error-msg-emailadd";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:34:"8:donate_interface-error-msg-fname";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:34:"8:donate_interface-error-msg-lname";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:35:"8:donate_interface-error-msg-street";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:33:"8:donate_interface-error-msg-city";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:34:"8:donate_interface-error-msg-state";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:32:"8:donate_interface-error-msg-zip";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:35:"8:donate_interface-error-msg-postal";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:36:"8:donate_interface-error-msg-country";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:38:"8:donate_interface-error-msg-card_type";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:37:"8:donate_interface-error-msg-card_num";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:39:"8:donate_interface-error-msg-expiration";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:32:"8:donate_interface-error-msg-cvv";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:36:"8:donate_interface-error-msg-captcha";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:43:"8:donate_interface-error-msg-captcha-please";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:36:"8:donate_interface-error-msg-cookies";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:44:"8:donate_interface-error-msg-genaricrequired";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:52:"8:donate_interface-donate-error-try-a-different-card";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:58:"8:donate_interface-donate-error-thank-you-for-your-support";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:23:"8:php-response-declined";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:27:"8:donate_interface-thankyou";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:35:"8:donate_interface-post-transaction";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:30:"8:donate_interface-cvv-explain";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:35:"8:donate_interface-question-comment";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:29:"8:donate_interface-easydonate";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:35:"8:donate_interface-problemsdonating";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:31:"8:donate_interface-donate-click";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:28:"8:donate_interface-otherways";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:32:"8:donate_interface-otherways-alt";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:34:"8:donate_interface-otherways-short";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:25:"8:donate_interface-paypal";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:44:"8:donate_interface-credit-storage-processing";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:33:"8:donate_interface-token-mismatch";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:42:"8:donate_interface-cc-form-header-personal";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:41:"8:donate_interface-cc-form-header-payment";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:37:"8:donate_interface-make-your-donation";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:30:"8:donate_interface-state-in-us";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:26:"8:donate_interface-comment";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:24:"8:donate_interface-first";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:25:"8:donate_interface-middle";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:23:"8:donate_interface-last";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:24:"8:donate_interface-other";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:31:"8:donate_interface-noscript-msg";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:40:"8:donate_interface-noscript-redirect-msg";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:35:"8:donate_interface-donate-wikipedia";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:21:"8:donate_interface-or";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:35:"8:donate_interface-your-information";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:34:"8:donate_interface-mailing-address";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:34:"8:donate_interface-billing-address";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:31:"8:donate_interface-billing-name";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:24:"8:donate_interface-title";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:31:"8:donate_interface-company-name";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:28:"8:donate_interface-address-1";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:28:"8:donate_interface-address-2";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:32:"8:donate_interface-address-lines";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:33:"8:donate_interface-address-line-2";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:33:"8:donate_interface-street-address";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:40:"8:donate_interface-street-address-line-2";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:27:"8:donate_interface-street-1";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:27:"8:donate_interface-street-2";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:35:"8:donate_interface-apartment-number";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:28:"8:donate_interface-city-town";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:28:"8:donate_interface-town-city";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:33:"8:donate_interface-state-province";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:22:"8:donate_interface-zip";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:27:"8:donate_interface-zip-code";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:29:"8:donate_interface-zip-postal";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:34:"8:donate_interface-zip-postal-code";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:31:"8:donate_interface-billing-code";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:26:"8:donate_interface-country";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:33:"8:donate_interface-select-country";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:32:"8:donate_interface-confirm-email";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:24:"8:donate_interface-phone";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:28:"8:donate_interface-telephone";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:33:"8:donate_interface-telephone-home";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:39:"8:donate_interface-billing-phone-number";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:39:"8:donate_interface-donation-information";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:41:"8:donate_interface-cc-billing-information";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:37:"8:donate_interface-pay-by-credit-card";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:29:"8:donate_interface-which-card";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:41:"8:donate_interface-choose-donation-method";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:35:"8:donate_interface-cardholders-name";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:31:"8:donate_interface-name-on-card";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:31:"8:donate_interface-type-of-card";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:33:"8:donate_interface-cards-accepted";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:28:"8:donate_interface-card-type";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:35:"8:donate_interface-credit-card-type";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:37:"8:donate_interface-credit-card-number";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:49:"8:donate_interface-credit-card-number-abbreviated";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:41:"8:donate_interface-credit-card-expiration";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:34:"8:donate_interface-card-expiration";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:45:"8:donate_interface-select-month-of-expiration";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:44:"8:donate_interface-select-year-of-expiration";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:35:"8:donate_interface-expires-question";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:26:"8:donate_interface-expires";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:37:"8:donate_interface-card-security-code";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:22:"8:donate_interface-cvv";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:41:"8:donate_interface-cvv-number-abbreviated";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:23:"8:donate_interface-cvv2";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:29:"8:donate_interface-cvv-number";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:38:"8:donate_interface-verification-number";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:31:"8:donate_interface-what-is-this";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:40:"8:donate_interface-do-not-include-dashes";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:38:"8:donate_interface-please-donate-today";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:29:"8:donate_interface-donate-now";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:44:"8:donate_interface-please-select-gift-amount";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:37:"8:donate_interface-select-gift-amount";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:32:"8:donate_interface-select-amount";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:34:"8:donate_interface-make-a-donation";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:36:"8:donate_interface-enter-your-amount";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:41:"8:donate_interface-will-support-with-gift";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:48:"8:donate_interface-will-make-tax-deductible-gift";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:44:"8:donate_interface-submit-my-secure-donation";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:23:"8:donate_interface-next";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:27:"8:donate_interface-continue";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:25:"8:donate_interface-cancel";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:26:"8:donate_interface-payment";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:31:"8:donate_interface-payment-type";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:24:"8:donate_interface-month";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:34:"8:donate_interface-please-complete";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:30:"8:donate_interface-description";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:27:"8:donate_interface-donation";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:32:"8:donate_interface-email-receipt";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:35:"8:donate_interface-monthly-donation";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:29:"8:donate_interface-via-paypal";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:29:"8:donate_interface-shirt-size";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:31:"8:donate_interface-shirt-size-2";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:27:"8:donate_interface-language";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:24:"8:donate_interface-front";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:23:"8:donate_interface-back";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:33:"8:donate_interface-front-of-shirt";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:32:"8:donate_interface-back-of-shirt";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:32:"8:donate_interface-select-a-size";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:25:"8:donate_interface-select";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:35:"8:donate_interface-shipping-address";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:45:"8:donate_interface-shipping-address-different";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:40:"8:donate_interface-shipping-address-same";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:39:"8:donate_interface-only-billing-address";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:38:"8:donate_interface-donation-must-equal";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:28:"8:donate_interface-thank-you";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:40:"8:donate_interface-wikipedia-translation";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:30:"8:donate_interface-on-the-back";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:38:"8:donate_interface-tshirt-confirmation";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:34:"8:donate_interface-donation-tshirt";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:25:"8:donate_interface-change";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:37:"8:donate_interface-select-credit-card";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:27:"8:donate_interface-optional";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:36:"8:donate_interface-state-dropdown-yy";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:36:"8:donate_interface-state-dropdown-xx";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:36:"8:donate_interface-bt-account_holder";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:41:"8:donate_interface-bt-bank_account_number";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:41:"8:donate_interface-bt-country_description";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:39:"8:donate_interface-bt-payment_reference";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:32:"8:donate_interface-bt-swift_code";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:32:"8:donate_interface-bt-special_id";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:33:"8:donate_interface-bt-information";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:30:"8:donate_interface-bt-finished";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:32:"8:donate_interface-obt-biller_id";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:49:"8:donate_interface-obt-customer_payment_reference";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:34:"8:donate_interface-obt-information";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:47:"8:donate_interface-online_bank_transfer_message";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:33:"8:donate_interface-rtbt-issuer_id";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:42:"8:donate_interface-rtbt-issuer_id-longlist";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:34:"8:donate_interface-dd-account_name";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:36:"8:donate_interface-dd-account_number";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:38:"8:donate_interface-dd-authorization_id";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:38:"8:donate_interface-dd-bank_check_digit";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:31:"8:donate_interface-dd-bank_code";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:31:"8:donate_interface-dd-bank_name";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:33:"8:donate_interface-dd-branch_code";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:39:"8:donate_interface-dd-direct_debit_text";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:26:"8:donate_interface-dd-iban";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:28:"8:donate_interface-pm-alipay";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:26:"8:donate_interface-pm-bpay";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:29:"8:donate_interface-pm-boletus";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:36:"8:donate_interface-pm-directebanking";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:25:"8:donate_interface-pm-eps";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:27:"8:donate_interface-pm-enets";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:29:"8:donate_interface-pm-giropay";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:27:"8:donate_interface-pm-ideal";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:28:"8:donate_interface-pm-nordea";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:28:"8:donate_interface-pm-skrill";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:28:"8:donate_interface-pm-sofort";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:30:"8:donate_interface-pm-webmoney";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:34:"8:donate_interface-pm-westernunion";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:28:"8:donate_interface-pm-yandex";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:37:"8:donate_interface-translate-bluelink";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:37:"8:donate_interface-translate-redlink1";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:37:"8:donate_interface-translate-redlink2";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:37:"8:donate_interface-email-fallbackname";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:32:"8:donate_interface-email-subject";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:36:"8:donate_interface-email-unsub-title";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:37:"8:donate_interface-email-unsub-button";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:38:"8:donate_interface-email-unsub-success";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:36:"8:donate_interface-email-unsub-delay";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:35:"8:donate_interface-email-unsub-fail";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:38:"8:donate_interface-email-unsub-confirm";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:38:"8:donate_interface-email-unsub-warning";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:23:"8:donate_interface-faqs";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:27:"8:donate_interface-tax-info";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:37:"8:donate_interface-informationsharing";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:34:"8:donate_interface-currency-change";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:40:"8:donate_interface-bank_transfer_message";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:34:"8:donate_interface-taxded-link-int";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:33:"8:donate_interface-taxded-link-us";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:33:"8:donate_interface-taxded-msg-int";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:32:"8:donate_interface-taxded-msg-us";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:33:"8:donate_interface-legal-original";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:36:"8:donate_interface-legal-donorpolicy";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:35:"8:donate_interface-monthlybox-title";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:37:"8:donate_interface-monthlybox-content";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:36:"8:donate_interface-monthlybox-amount";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:33:"8:donate_interface-monthlybox-yes";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:32:"8:donate_interface-monthlybox-no";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:36:"8:donate_interface-monthlybox-bottom";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:33:"8:donate_interface-monthly-cancel";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:26:"8:donate_interface-onetime";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:32:"8:donate_interface-monthly-short";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:32:"8:donate_interface-onetime-short";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:35:"8:donate_interface-securelogo-title";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:34:"8:donate_interface-securelogo-text";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:33:"8:donate_interface-error-http-403";a:3:{i:0;R:6688;i:1;R:799;i:2;R:3234;}s:19:"8:payflowprogateway";a:3:{i:0;s:11:"ext-di-pfpg";i:1;R:799;i:2;R:3234;}s:25:"8:payflowpro_gateway-desc";a:3:{i:0;R:7078;i:1;R:799;i:2;R:3234;}s:31:"8:payflowpro_gateway-response-0";a:3:{i:0;R:7078;i:1;R:799;i:2;R:3234;}s:33:"8:payflowpro_gateway-response-126";a:3:{i:0;R:7078;i:1;R:799;i:2;R:3234;}s:35:"8:payflowpro_gateway-response-126-2";a:3:{i:0;R:7078;i:1;R:799;i:2;R:3234;}s:32:"8:payflowpro_gateway-response-12";a:3:{i:0;R:7078;i:1;R:799;i:2;R:3234;}s:32:"8:payflowpro_gateway-response-13";a:3:{i:0;R:7078;i:1;R:799;i:2;R:3234;}s:33:"8:payflowpro_gateway-response-114";a:3:{i:0;R:7078;i:1;R:799;i:2;R:3234;}s:32:"8:payflowpro_gateway-response-23";a:3:{i:0;R:7078;i:1;R:799;i:2;R:3234;}s:31:"8:payflowpro_gateway-response-4";a:3:{i:0;R:7078;i:1;R:799;i:2;R:3234;}s:32:"8:payflowpro_gateway-response-24";a:3:{i:0;R:7078;i:1;R:799;i:2;R:3234;}s:33:"8:payflowpro_gateway-response-112";a:3:{i:0;R:7078;i:1;R:799;i:2;R:3234;}s:33:"8:payflowpro_gateway-response-125";a:3:{i:0;R:7078;i:1;R:799;i:2;R:3234;}s:35:"8:payflowpro_gateway-response-125-2";a:3:{i:0;R:7078;i:1;R:799;i:2;R:3234;}s:37:"8:payflowpro_gateway-response-default";a:3:{i:0;R:7078;i:1;R:799;i:2;R:3234;}s:21:"8:disableaccount-desc";a:3:{i:0;s:18:"ext-disableaccount";i:1;R:799;i:2;R:3234;}s:22:"8:right-disableaccount";a:3:{i:0;R:7094;i:1;R:799;i:2;R:3234;}s:16:"8:disableaccount";a:3:{i:0;R:7094;i:1;R:799;i:2;R:3234;}s:21:"8:disableaccount-user";a:3:{i:0;R:7094;i:1;R:799;i:2;R:3234;}s:24:"8:disableaccount-confirm";a:3:{i:0;R:7094;i:1;R:799;i:2;R:3234;}s:28:"8:disableaccount-mustconfirm";a:3:{i:0;R:7094;i:1;R:799;i:2;R:3234;}s:27:"8:disableaccount-nosuchuser";a:3:{i:0;R:7094;i:1;R:799;i:2;R:3234;}s:24:"8:disableaccount-success";a:3:{i:0;R:7094;i:1;R:799;i:2;R:3234;}s:17:"8:doublewiki-desc";a:3:{i:0;s:14:"ext-doublewiki";i:1;R:799;i:2;R:3234;}s:23:"8:editpagetracking-desc";a:3:{i:0;s:20:"ext-editpagetracking";i:1;R:799;i:2;R:3234;}s:14:"8:emailcapture";a:3:{i:0;s:16:"ext-emailcapture";i:1;R:799;i:2;R:3234;}s:19:"8:emailcapture-desc";a:3:{i:0;R:7107;i:1;R:799;i:2;R:3234;}s:22:"8:emailcapture-failure";a:3:{i:0;R:7107;i:1;R:799;i:2;R:3234;}s:27:"8:emailcapture-invalid-code";a:3:{i:0;R:7107;i:1;R:799;i:2;R:3234;}s:32:"8:emailcapture-already-confirmed";a:3:{i:0;R:7107;i:1;R:799;i:2;R:3234;}s:31:"8:emailcapture-response-subject";a:3:{i:0;R:7107;i:1;R:799;i:2;R:3234;}s:28:"8:emailcapture-response-body";a:3:{i:0;R:7107;i:1;R:799;i:2;R:3234;}s:22:"8:emailcapture-success";a:3:{i:0;R:7107;i:1;R:799;i:2;R:3234;}s:27:"8:emailcapture-instructions";a:3:{i:0;R:7107;i:1;R:799;i:2;R:3234;}s:21:"8:emailcapture-verify";a:3:{i:0;R:7107;i:1;R:799;i:2;R:3234;}s:21:"8:emailcapture-submit";a:3:{i:0;R:7107;i:1;R:799;i:2;R:3234;}s:17:"8:expandtemplates";a:3:{i:0;s:19:"ext-expandtemplates";i:1;R:799;i:2;R:3234;}s:22:"8:expandtemplates-desc";a:3:{i:0;R:7119;i:1;R:799;i:2;R:3234;}s:24:"8:expand_templates_intro";a:3:{i:0;R:7119;i:1;R:799;i:2;R:3234;}s:24:"8:expand_templates_title";a:3:{i:0;R:7119;i:1;R:799;i:2;R:3234;}s:24:"8:expand_templates_input";a:3:{i:0;R:7119;i:1;R:799;i:2;R:3234;}s:25:"8:expand_templates_output";a:3:{i:0;R:7119;i:1;R:799;i:2;R:3234;}s:29:"8:expand_templates_xml_output";a:3:{i:0;R:7119;i:1;R:799;i:2;R:3234;}s:21:"8:expand_templates_ok";a:3:{i:0;R:7119;i:1;R:799;i:2;R:3234;}s:34:"8:expand_templates_remove_comments";a:3:{i:0;R:7119;i:1;R:799;i:2;R:3234;}s:32:"8:expand_templates_remove_nowiki";a:3:{i:0;R:7119;i:1;R:799;i:2;R:3234;}s:31:"8:expand_templates_generate_xml";a:3:{i:0;R:7119;i:1;R:799;i:2;R:3234;}s:26:"8:expand_templates_preview";a:3:{i:0;R:7119;i:1;R:799;i:2;R:3234;}s:22:"8:extensiondistributor";a:3:{i:0;s:24:"ext-extensiondistributor";i:1;R:799;i:2;R:3234;}s:27:"8:extensiondistributor-desc";a:3:{i:0;R:7132;i:1;R:799;i:2;R:3234;}s:24:"8:extdist-not-configured";a:3:{i:0;R:7132;i:1;R:799;i:2;R:3234;}s:20:"8:extdist-wc-missing";a:3:{i:0;R:7132;i:1;R:799;i:2;R:3234;}s:27:"8:extdist-no-such-extension";a:3:{i:0;R:7132;i:1;R:799;i:2;R:3234;}s:25:"8:extdist-no-such-version";a:3:{i:0;R:7132;i:1;R:799;i:2;R:3234;}s:26:"8:extdist-choose-extension";a:3:{i:0;R:7132;i:1;R:799;i:2;R:3234;}s:18:"8:extdist-wc-empty";a:3:{i:0;R:7132;i:1;R:799;i:2;R:3234;}s:26:"8:extdist-submit-extension";a:3:{i:0;R:7132;i:1;R:799;i:2;R:3234;}s:25:"8:extdist-current-version";a:3:{i:0;R:7132;i:1;R:799;i:2;R:3234;}s:24:"8:extdist-choose-version";a:3:{i:0;R:7132;i:1;R:799;i:2;R:3234;}s:21:"8:extdist-no-versions";a:3:{i:0;R:7132;i:1;R:799;i:2;R:3234;}s:24:"8:extdist-submit-version";a:3:{i:0;R:7132;i:1;R:799;i:2;R:3234;}s:19:"8:extdist-no-remote";a:3:{i:0;R:7132;i:1;R:799;i:2;R:3234;}s:22:"8:extdist-remote-error";a:3:{i:0;R:7132;i:1;R:799;i:2;R:3234;}s:33:"8:extdist-remote-invalid-response";a:3:{i:0;R:7132;i:1;R:799;i:2;R:3234;}s:19:"8:extdist-svn-error";a:3:{i:0;R:7132;i:1;R:799;i:2;R:3234;}s:25:"8:extdist-svn-parse-error";a:3:{i:0;R:7132;i:1;R:799;i:2;R:3234;}s:19:"8:extdist-git-error";a:3:{i:0;R:7132;i:1;R:799;i:2;R:3234;}s:25:"8:extdist-git-invalidsha1";a:3:{i:0;R:7132;i:1;R:799;i:2;R:3234;}s:19:"8:extdist-tar-error";a:3:{i:0;R:7132;i:1;R:799;i:2;R:3234;}s:17:"8:extdist-created";a:3:{i:0;R:7132;i:1;R:799;i:2;R:3234;}s:19:"8:extdist-want-more";a:3:{i:0;R:7132;i:1;R:799;i:2;R:3234;}s:25:"8:extdist-vcs-unsupported";a:3:{i:0;R:7132;i:1;R:799;i:2;R:3234;}s:25:"8:extdist-git-invalid-dir";a:3:{i:0;R:7132;i:1;R:799;i:2;R:3234;}s:17:"8:configuredpages";a:4:{i:0;s:31:"ext-flaggedrevs-configuredpages";i:1;R:799;i:2;R:3234;i:3;s:21:"ext-flaggedrevs-0-all";}s:22:"8:configuredpages-list";a:4:{i:0;R:7158;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:22:"8:configuredpages-none";a:4:{i:0;R:7158;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:24:"8:configuredpages-config";a:4:{i:0;R:7158;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:27:"8:configuredpages-def-draft";a:4:{i:0;R:7158;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:28:"8:configuredpages-def-stable";a:4:{i:0;R:7158;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:15:"8:action-review";a:4:{i:0;s:27:"ext-flaggedrevs-flaggedrevs";i:1;R:799;i:2;R:3234;i:3;R:7159;}s:8:"8:editor";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:13:"8:flaggedrevs";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:29:"8:flaggedrevs-watched-pending";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:18:"8:flaggedrevs-desc";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:21:"8:flaggedrevs-pref-ui";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:23:"8:flaggedrevs-pref-ui-0";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:23:"8:flaggedrevs-pref-ui-1";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:31:"8:flaggedrevs-stable-categories";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:19:"8:prefs-flaggedrevs";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:22:"8:prefs-flaggedrevs-ui";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:26:"8:flaggedrevs-prefs-stable";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:27:"8:flaggedrevs-pref-stable-0";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:27:"8:flaggedrevs-pref-stable-1";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:27:"8:flaggedrevs-pref-stable-2";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:25:"8:flaggedrevs-prefs-watch";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:29:"8:flaggedrevs-prefs-editdiffs";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:29:"8:flaggedrevs-prefs-viewdiffs";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:26:"8:flaggedrevs-hidereviewed";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:22:"8:flaggedrevs-diffonly";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:14:"8:group-editor";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:21:"8:group-editor-member";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:16:"8:group-reviewer";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:23:"8:group-reviewer-member";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:18:"8:grouppage-editor";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:20:"8:grouppage-reviewer";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:18:"8:group-autoreview";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:25:"8:group-autoreview-member";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:22:"8:grouppage-autoreview";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:18:"8:group-editor.css";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:17:"8:group-editor.js";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:20:"8:group-reviewer.css";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:19:"8:group-reviewer.js";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:22:"8:group-autoreview.css";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:21:"8:group-autoreview.js";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:22:"8:revreview-hist-draft";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:24:"8:revreview-hist-pending";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:24:"8:revreview-hist-quality";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:22:"8:revreview-hist-basic";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:29:"8:revreview-hist-quality-user";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:27:"8:revreview-hist-basic-user";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:29:"8:revreview-hist-quality-auto";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:27:"8:revreview-hist-basic-auto";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:33:"8:revreview-hist-pending-difflink";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:18:"8:review-edit-diff";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:28:"8:revreview-diff-toggle-show";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:28:"8:revreview-diff-toggle-hide";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:29:"8:revreview-diff-toggle-title";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:27:"8:revreview-log-toggle-show";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:27:"8:revreview-log-toggle-hide";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:28:"8:revreview-log-toggle-title";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:28:"8:revreview-log-details-show";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:28:"8:revreview-log-details-hide";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:29:"8:revreview-log-details-title";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:20:"8:review-diff2stable";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:21:"8:review-logentry-app";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:21:"8:review-logentry-dis";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:20:"8:review-logentry-id";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:22:"8:review-logentry-diff";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:23:"8:review-logentry-diff2";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:16:"8:review-logpage";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:20:"8:review-logpagetext";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:10:"8:reviewer";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:20:"8:revreview-accuracy";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:22:"8:revreview-accuracy-0";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:22:"8:revreview-accuracy-1";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:22:"8:revreview-accuracy-2";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:22:"8:revreview-accuracy-3";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:22:"8:revreview-accuracy-4";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:16:"8:revreview-auto";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:17:"8:revreview-basic";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:19:"8:revreview-basic-i";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:21:"8:revreview-basic-old";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:22:"8:revreview-basic-same";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:24:"8:revreview-basic-source";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:19:"8:revreview-current";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:17:"8:revreview-depth";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:19:"8:revreview-depth-0";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:19:"8:revreview-depth-1";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:19:"8:revreview-depth-2";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:19:"8:revreview-depth-3";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:19:"8:revreview-depth-4";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:23:"8:revreview-draft-title";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:16:"8:revreview-edit";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:22:"8:revreview-editnotice";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:22:"8:revreview-submitedit";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:28:"8:revreview-submitedit-title";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:18:"8:revreview-edited";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:26:"8:revreview-edited-section";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:24:"8:revreview-newest-basic";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:26:"8:revreview-newest-basic-i";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:26:"8:revreview-newest-quality";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:28:"8:revreview-newest-quality-i";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:25:"8:revreview-pending-basic";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:27:"8:revreview-pending-quality";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:29:"8:revreview-pending-nosection";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:21:"8:revreview-noflagged";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:21:"8:revreview-oldrating";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:19:"8:revreview-quality";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:21:"8:revreview-quality-i";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:23:"8:revreview-quality-old";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:24:"8:revreview-quality-same";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:26:"8:revreview-quality-source";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:25:"8:revreview-quality-title";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:23:"8:revreview-quick-basic";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:27:"8:revreview-quick-basic-old";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:28:"8:revreview-quick-basic-same";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:25:"8:revreview-quick-invalid";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:22:"8:revreview-quick-none";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:25:"8:revreview-quick-quality";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:29:"8:revreview-quick-quality-old";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:30:"8:revreview-quick-quality-same";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:27:"8:revreview-quick-see-basic";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:29:"8:revreview-quick-see-quality";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:18:"8:revreview-source";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:23:"8:revreview-basic-title";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:17:"8:revreview-style";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:19:"8:revreview-style-0";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:19:"8:revreview-style-1";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:19:"8:revreview-style-2";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:19:"8:revreview-style-3";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:19:"8:revreview-style-4";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:23:"8:revreview-toggle-show";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:23:"8:revreview-toggle-hide";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:24:"8:revreview-toggle-title";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:29:"8:revreview-visibility-synced";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:31:"8:revreview-visibility-outdated";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:31:"8:revreview-visibility-nostable";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:23:"8:revreview-revnotfound";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:18:"8:right-autoreview";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:25:"8:right-autoreviewrestore";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:18:"8:right-movestable";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:14:"8:right-review";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:22:"8:right-stablesettings";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:16:"8:right-validate";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:23:"8:right-unreviewedpages";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:22:"8:rights-editor-revoke";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:28:"8:specialpages-group-quality";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:24:"8:stable-logentry-config";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:24:"8:stable-logentry-modify";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:23:"8:stable-logentry-reset";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:24:"8:stable-log-restriction";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:16:"8:stable-logpage";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:20:"8:stable-logpagetext";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:22:"8:revreview-filter-all";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:25:"8:revreview-filter-stable";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:24:"8:revreview-statusfilter";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:27:"8:revreview-filter-approved";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:29:"8:revreview-filter-reapproved";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:29:"8:revreview-filter-unapproved";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:22:"8:revreview-typefilter";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:23:"8:revreview-filter-auto";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:25:"8:revreview-filter-manual";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:23:"8:revreview-levelfilter";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:19:"8:revreview-lev-all";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:21:"8:revreview-lev-basic";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:23:"8:revreview-lev-quality";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:24:"8:revreview-lev-pristine";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:25:"8:revreview-defaultfilter";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:19:"8:revreview-def-all";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:21:"8:revreview-def-draft";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:22:"8:revreview-def-stable";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:26:"8:revreview-restrictfilter";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:27:"8:revreview-restriction-any";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:28:"8:revreview-restriction-none";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:22:"8:revreview-reviewlink";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:28:"8:revreview-reviewlink-title";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:26:"8:revreview-unreviewedpage";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:20:"8:tooltip-ca-current";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:19:"8:tooltip-ca-stable";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:20:"8:tooltip-ca-default";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:28:"8:flaggedrevs-protect-legend";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:26:"8:flaggedrevs-protect-none";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:26:"8:flaggedrevs-categoryview";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:24:"8:revreview-locked-title";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:26:"8:revreview-unlocked-title";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:18:"8:revreview-locked";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:20:"8:revreview-unlocked";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:21:"8:revreview-ak-review";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:22:"8:accesskey-ca-current";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:21:"8:accesskey-ca-stable";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:22:"8:log-show-hide-review";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:16:"8:validationpage";a:4:{i:0;R:7166;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:16:"8:pendingchanges";a:4:{i:0;s:30:"ext-flaggedrevs-pendingchanges";i:1;R:799;i:2;R:3234;i:3;R:7159;}s:23:"8:pendingchanges-legend";a:4:{i:0;R:7350;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:21:"8:pendingchanges-list";a:4:{i:0;R:7350;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:21:"8:pendingchanges-none";a:4:{i:0;R:7350;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:22:"8:pendingchanges-hours";a:4:{i:0;R:7350;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:21:"8:pendingchanges-days";a:4:{i:0;R:7350;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:23:"8:pendingchanges-recent";a:4:{i:0;R:7350;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:25:"8:pendingchanges-category";a:4:{i:0;R:7350;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:28:"8:pendingchanges-onwatchlist";a:4:{i:0;R:7350;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:23:"8:pendingchanges-stable";a:4:{i:0;R:7350;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:21:"8:pendingchanges-diff";a:4:{i:0;R:7350;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:21:"8:pendingchanges-size";a:4:{i:0;R:7350;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:26:"8:pendingchanges-unwatched";a:4:{i:0;R:7350;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:24:"8:pendingchanges-watched";a:4:{i:0;R:7350;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:24:"8:pendingchanges-viewing";a:4:{i:0;R:7350;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:16:"8:problemchanges";a:4:{i:0;s:30:"ext-flaggedrevs-problemchanges";i:1;R:799;i:2;R:3234;i:3;R:7159;}s:21:"8:problemchanges-list";a:4:{i:0;R:7366;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:23:"8:problemchanges-legend";a:4:{i:0;R:7366;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:21:"8:problemchanges-none";a:4:{i:0;R:7366;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:25:"8:problemchanges-category";a:4:{i:0;R:7366;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:18:"8:qualityoversight";a:4:{i:0;s:32:"ext-flaggedrevs-qualityoversight";i:1;R:799;i:2;R:3234;i:3;R:7159;}s:23:"8:qualityoversight-list";a:4:{i:0;R:7372;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:25:"8:qualityoversight-legend";a:4:{i:0;R:7372;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:15:"8:reviewedpages";a:4:{i:0;s:29:"ext-flaggedrevs-reviewedpages";i:1;R:799;i:2;R:3234;i:3;R:7159;}s:19:"8:reviewedpages-leg";a:4:{i:0;R:7376;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:20:"8:reviewedpages-list";a:4:{i:0;R:7376;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:20:"8:reviewedpages-none";a:4:{i:0;R:7376;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:21:"8:reviewedpages-lev-0";a:4:{i:0;R:7376;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:21:"8:reviewedpages-lev-1";a:4:{i:0;R:7376;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:21:"8:reviewedpages-lev-2";a:4:{i:0;R:7376;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:19:"8:reviewedpages-all";a:4:{i:0;R:7376;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:20:"8:reviewedpages-best";a:4:{i:0;R:7376;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:18:"8:reviewedversions";a:4:{i:0;s:32:"ext-flaggedrevs-reviewedversions";i:1;R:799;i:2;R:3234;i:3;R:7159;}s:23:"8:reviewedversions-leg1";a:4:{i:0;R:7386;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:23:"8:reviewedversions-page";a:4:{i:0;R:7386;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:23:"8:reviewedversions-none";a:4:{i:0;R:7386;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:23:"8:reviewedversions-list";a:4:{i:0;R:7386;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:25:"8:reviewedversions-review";a:4:{i:0;R:7386;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:16:"8:revisionreview";a:4:{i:0;s:30:"ext-flaggedrevs-revisionreview";i:1;R:799;i:2;R:3234;i:3;R:7159;}s:18:"8:revreview-failed";a:4:{i:0;R:7393;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:30:"8:revreview-submission-invalid";a:4:{i:0;R:7393;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:21:"8:review_page_invalid";a:4:{i:0;R:7393;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:23:"8:review_page_notexists";a:4:{i:0;R:7393;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:26:"8:review_page_unreviewable";a:4:{i:0;R:7393;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:17:"8:review_no_oldid";a:4:{i:0;R:7393;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:18:"8:review_bad_oldid";a:4:{i:0;R:7393;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:23:"8:review_conflict_oldid";a:4:{i:0;R:7393;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:20:"8:review_not_flagged";a:4:{i:0;R:7393;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:16:"8:review_too_low";a:4:{i:0;R:7393;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:16:"8:review_bad_key";a:4:{i:0;R:7393;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:17:"8:review_bad_tags";a:4:{i:0;R:7393;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:15:"8:review_denied";a:4:{i:0;R:7393;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:22:"8:review_param_missing";a:4:{i:0;R:7393;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:20:"8:review_cannot_undo";a:4:{i:0;R:7393;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:22:"8:review_cannot_reject";a:4:{i:0;R:7393;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:25:"8:review_reject_excessive";a:4:{i:0;R:7393;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:25:"8:review_reject_nulledits";a:4:{i:0;R:7393;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:24:"8:revreview-check-flag-p";a:4:{i:0;R:7393;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:30:"8:revreview-check-flag-p-title";a:4:{i:0;R:7393;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:24:"8:revreview-check-flag-u";a:4:{i:0;R:7393;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:30:"8:revreview-check-flag-u-title";a:4:{i:0;R:7393;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:24:"8:revreview-check-flag-y";a:4:{i:0;R:7393;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:30:"8:revreview-check-flag-y-title";a:4:{i:0;R:7393;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:16:"8:revreview-flag";a:4:{i:0;R:7393;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:18:"8:revreview-reflag";a:4:{i:0;R:7393;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:19:"8:revreview-invalid";a:4:{i:0;R:7393;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:15:"8:revreview-log";a:4:{i:0;R:7393;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:16:"8:revreview-main";a:4:{i:0;R:7393;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:19:"8:revreview-stable1";a:4:{i:0;R:7393;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:19:"8:revreview-stable2";a:4:{i:0;R:7393;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:18:"8:revreview-submit";a:4:{i:0;R:7393;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:22:"8:revreview-submitting";a:4:{i:0;R:7393;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:25:"8:revreview-submit-review";a:4:{i:0;R:7393;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:27:"8:revreview-submit-unreview";a:4:{i:0;R:7393;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:25:"8:revreview-submit-reject";a:4:{i:0;R:7393;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:27:"8:revreview-submit-reviewed";a:4:{i:0;R:7393;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:29:"8:revreview-submit-unreviewed";a:4:{i:0;R:7393;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:22:"8:revreview-successful";a:4:{i:0;R:7393;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:23:"8:revreview-successful2";a:4:{i:0;R:7393;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:27:"8:revreview-poss-conflict-p";a:4:{i:0;R:7393;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:27:"8:revreview-poss-conflict-c";a:4:{i:0;R:7393;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:27:"8:revreview-adv-reviewing-p";a:4:{i:0;R:7393;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:27:"8:revreview-adv-reviewing-c";a:4:{i:0;R:7393;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:28:"8:revreview-sadv-reviewing-p";a:4:{i:0;R:7393;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:28:"8:revreview-sadv-reviewing-c";a:4:{i:0;R:7393;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:26:"8:revreview-adv-start-link";a:4:{i:0;R:7393;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:25:"8:revreview-adv-stop-link";a:4:{i:0;R:7393;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:18:"8:revreview-toolow";a:4:{i:0;R:7393;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:18:"8:revreview-update";a:4:{i:0;R:7393;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:25:"8:revreview-update-edited";a:4:{i:0;R:7393;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:30:"8:revreview-update-edited-prev";a:4:{i:0;R:7393;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:27:"8:revreview-update-includes";a:4:{i:0;R:7393;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:28:"8:revreview-reject-text-list";a:4:{i:0;R:7393;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:29:"8:revreview-reject-text-revto";a:4:{i:0;R:7393;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:26:"8:revreview-reject-summary";a:4:{i:0;R:7393;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:26:"8:revreview-reject-confirm";a:4:{i:0;R:7393;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:25:"8:revreview-reject-cancel";a:4:{i:0;R:7393;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:30:"8:revreview-reject-summary-cur";a:4:{i:0;R:7393;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:30:"8:revreview-reject-summary-old";a:4:{i:0;R:7393;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:36:"8:revreview-reject-summary-cur-short";a:4:{i:0;R:7393;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:36:"8:revreview-reject-summary-old-short";a:4:{i:0;R:7393;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:19:"8:revreview-tt-flag";a:4:{i:0;R:7393;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:21:"8:revreview-tt-unflag";a:4:{i:0;R:7393;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:21:"8:revreview-tt-reject";a:4:{i:0;R:7393;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:19:"8:stabilization-tab";a:4:{i:0;s:29:"ext-flaggedrevs-stabilization";i:1;R:799;i:2;R:3234;i:3;R:7159;}s:15:"8:stabilization";a:4:{i:0;R:7460;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:20:"8:stabilization-text";a:4:{i:0;R:7460;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:20:"8:stabilization-perm";a:4:{i:0;R:7460;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:20:"8:stabilization-page";a:4:{i:0;R:7460;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:19:"8:stabilization-leg";a:4:{i:0;R:7460;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:19:"8:stabilization-def";a:4:{i:0;R:7460;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:20:"8:stabilization-def1";a:4:{i:0;R:7460;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:20:"8:stabilization-def2";a:4:{i:0;R:7460;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:24:"8:stabilization-restrict";a:4:{i:0;R:7460;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:29:"8:stabilization-restrict-none";a:4:{i:0;R:7460;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:22:"8:stabilization-submit";a:4:{i:0;R:7460;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:25:"8:stabilization-notexists";a:4:{i:0;R:7460;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:26:"8:stabilization-notcontent";a:4:{i:0;R:7460;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:23:"8:stabilization-comment";a:4:{i:0;R:7460;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:27:"8:stabilization-otherreason";a:4:{i:0;R:7460;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:22:"8:stabilization-expiry";a:4:{i:0;R:7460;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:25:"8:stabilization-othertime";a:4:{i:0;R:7460;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:25:"8:stabilization-def-short";a:4:{i:0;R:7460;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:27:"8:stabilization-def-short-0";a:4:{i:0;R:7460;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:27:"8:stabilization-def-short-1";a:4:{i:0;R:7460;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:24:"8:stabilize_page_invalid";a:4:{i:0;R:7460;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:26:"8:stabilize_page_notexists";a:4:{i:0;R:7460;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:29:"8:stabilize_page_unreviewable";a:4:{i:0;R:7460;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:30:"8:stabilize_invalid_autoreview";a:4:{i:0;R:7460;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:25:"8:stabilize_invalid_level";a:4:{i:0;R:7460;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:26:"8:stabilize_expiry_invalid";a:4:{i:0;R:7460;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:22:"8:stabilize_expiry_old";a:4:{i:0;R:7460;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:18:"8:stabilize_denied";a:4:{i:0;R:7460;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:25:"8:stabilize_protect_quota";a:4:{i:0;R:7460;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:20:"8:stabilize-expiring";a:4:{i:0;R:7460;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:22:"8:stabilization-review";a:4:{i:0;R:7460;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:13:"8:stablepages";a:4:{i:0;s:27:"ext-flaggedrevs-stablepages";i:1;R:799;i:2;R:3234;i:3;R:7159;}s:18:"8:stablepages-list";a:4:{i:0;R:7493;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:18:"8:stablepages-none";a:4:{i:0;R:7493;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:20:"8:stablepages-config";a:4:{i:0;R:7493;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:19:"8:stablepages-indef";a:4:{i:0;R:7493;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:17:"8:unreviewedpages";a:4:{i:0;s:31:"ext-flaggedrevs-unreviewedpages";i:1;R:799;i:2;R:3234;i:3;R:7159;}s:24:"8:unreviewedpages-legend";a:4:{i:0;R:7499;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:26:"8:unreviewedpages-category";a:4:{i:0;R:7499;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:22:"8:unreviewedpages-diff";a:4:{i:0;R:7499;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:27:"8:unreviewedpages-unwatched";a:4:{i:0;R:7499;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:25:"8:unreviewedpages-watched";a:4:{i:0;R:7499;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:22:"8:unreviewedpages-list";a:4:{i:0;R:7499;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:22:"8:unreviewedpages-none";a:4:{i:0;R:7499;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:25:"8:unreviewedpages-viewing";a:4:{i:0;R:7499;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:23:"8:unreviewedpages-hours";a:4:{i:0;R:7499;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:22:"8:unreviewedpages-days";a:4:{i:0;R:7499;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:24:"8:unreviewedpages-recent";a:4:{i:0;R:7499;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:22:"8:validationstatistics";a:4:{i:0;s:36:"ext-flaggedrevs-validationstatistics";i:1;R:799;i:2;R:3234;i:3;R:7159;}s:28:"8:validationstatistics-users";a:4:{i:0;R:7512;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:33:"8:validationstatistics-lastupdate";a:4:{i:0;R:7512;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:30:"8:validationstatistics-pndtime";a:4:{i:0;R:7512;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:30:"8:validationstatistics-revtime";a:4:{i:0;R:7512;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:28:"8:validationstatistics-table";a:4:{i:0;R:7512;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:25:"8:validationstatistics-ns";a:4:{i:0;R:7512;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:28:"8:validationstatistics-total";a:4:{i:0;R:7512;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:29:"8:validationstatistics-stable";a:4:{i:0;R:7512;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:29:"8:validationstatistics-latest";a:4:{i:0;R:7512;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:29:"8:validationstatistics-synced";a:4:{i:0;R:7512;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:26:"8:validationstatistics-old";a:4:{i:0;R:7512;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:29:"8:validationstatistics-utable";a:4:{i:0;R:7512;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:27:"8:validationstatistics-user";a:4:{i:0;R:7512;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:30:"8:validationstatistics-reviews";a:4:{i:0;R:7512;i:1;R:799;i:2;R:3234;i:3;R:7159;}s:28:"8:fundraiserlandingpage-desc";a:3:{i:0;s:25:"ext-fundraiserlandingpage";i:1;R:799;i:2;R:3234;}s:19:"8:googlenewssitemap";a:3:{i:0;s:21:"ext-googlenewssitemap";i:1;R:799;i:2;R:3234;}s:24:"8:googlenewssitemap-desc";a:3:{i:0;R:7530;i:1;R:799;i:2;R:3234;}s:31:"8:googlenewssitemap_categorymap";a:3:{i:0;R:7530;i:1;R:799;i:2;R:3234;}s:31:"8:googlenewssitemap_toomanycats";a:3:{i:0;R:7530;i:1;R:799;i:2;R:3234;}s:29:"8:googlenewssitemap_feedtitle";a:3:{i:0;R:7530;i:1;R:799;i:2;R:3234;}s:10:"8:lst-desc";a:3:{i:0;s:30:"ext-labeledsectiontransclusion";i:1;R:799;i:2;R:3234;}s:19:"8:landingcheck-desc";a:3:{i:0;s:16:"ext-landingcheck";i:1;R:799;i:2;R:3234;}s:14:"8:landingcheck";a:3:{i:0;R:7538;i:1;R:799;i:2;R:3234;}s:21:"8:landingcheck-nopage";a:3:{i:0;R:7538;i:1;R:799;i:2;R:3234;}s:25:"8:ldapauthentication-desc";a:3:{i:0;s:22:"ext-ldapauthentication";i:1;R:799;i:2;R:3234;}s:10:"8:lqt-desc";a:3:{i:0;s:17:"ext-liquidthreads";i:1;R:799;i:2;R:3234;}s:16:"8:lqt_movethread";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:18:"8:lqt_deletethread";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:20:"8:lqt_contents_title";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:22:"8:lqt_toc_thread_title";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:23:"8:lqt_toc_thread_author";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:27:"8:lqt_toc_thread_replycount";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:25:"8:lqt_toc_thread_modified";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:16:"8:lqt_add_header";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:16:"8:lqt_new_thread";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:21:"8:lqt_invalid_subject";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:16:"8:lqt-empty-text";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:19:"8:lqt_empty_subject";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:11:"8:lqt_reply";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:12:"8:lqt-parent";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:12:"8:lqt_delete";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:14:"8:lqt_undelete";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:15:"8:lqt_permalink";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:14:"8:lqt_fragment";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:21:"8:lqt_discussion_link";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:15:"8:lqt_from_talk";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:19:"8:lqt-history-title";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:25:"8:lqt_hist_comment_edited";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:26:"8:lqt_hist_summary_changed";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:24:"8:lqt_hist_reply_created";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:25:"8:lqt_hist_thread_created";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:18:"8:lqt_hist_deleted";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:20:"8:lqt_hist_undeleted";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:25:"8:lqt_hist_moved_talkpage";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:27:"8:lqt_hist_listing_subtitle";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:28:"8:lqt_hist_view_whole_thread";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:29:"8:lqt_hist_no_revisions_error";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:31:"8:lqt_hist_past_last_page_error";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:33:"8:lqt_hist_tooltip_newer_disabled";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:33:"8:lqt_hist_tooltip_older_disabled";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:16:"8:lqt_hist_split";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:25:"8:lqt_hist_edited_subject";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:33:"8:lqt_hist_edited_subject_corrupt";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:22:"8:lqt_hist_merged_from";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:20:"8:lqt_hist_merged_to";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:21:"8:lqt_hist_split_from";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:23:"8:lqt_hist_root_blanked";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:27:"8:lqt_hist_adjusted_sortkey";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:20:"8:lqt_revision_as_of";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:23:"8:lqt_change_new_thread";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:26:"8:lqt_change_reply_created";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:24:"8:lqt_change_edited_root";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:27:"8:lqt_change_edited_summary";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:20:"8:lqt_change_deleted";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:22:"8:lqt_change_undeleted";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:18:"8:lqt_change_moved";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:18:"8:lqt_change_split";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:27:"8:lqt_change_edited_subject";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:24:"8:lqt_change_merged_from";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:22:"8:lqt_change_merged_to";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:23:"8:lqt_change_split_from";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:25:"8:lqt_change_root_blanked";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:24:"8:lqt_youhavenewmessages";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:24:"8:lqt_protectedfromreply";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:29:"8:lqt_protectedfromreply_link";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:13:"8:lqt_subject";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:14:"8:lqt_noreason";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:22:"8:lqt_move_placeholder";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:31:"8:lqt_thread_deleted_for_sysops";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:20:"8:lqt_thread_deleted";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:20:"8:lqt_summary_notice";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:25:"8:lqt_summary_notice_link";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:19:"8:lqt_summary_label";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:22:"8:lqt_summary_subtitle";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:20:"8:lqt_nosuchrevision";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:18:"8:lqt_nosuchthread";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:24:"8:lqt_nosuchthread_title";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:20:"8:lqt_threadrequired";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:23:"8:lqt_move_movingthread";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:19:"8:lqt_move_torename";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:24:"8:lqt_move_torename_edit";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:27:"8:lqt_move_destinationtitle";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:15:"8:lqt_move_move";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:24:"8:lqt_move_nodestination";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:33:"8:lqt_move_thread_bad_destination";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:26:"8:lqt_move_samedestination";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:19:"8:lqt_move_noreason";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:18:"8:lqt_move_success";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:33:"8:lqt_talkpage_autocreate_summary";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:31:"8:lqt_header_warning_before_big";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:24:"8:lqt_header_warning_big";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:30:"8:lqt_header_warning_after_big";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:25:"8:lqt_header_warning_bold";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:35:"8:lqt_header_warning_new_discussion";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:19:"8:lqt_sorting_order";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:25:"8:lqt_sort_newest_changes";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:25:"8:lqt_sort_newest_threads";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:25:"8:lqt_sort_oldest_threads";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:11:"8:lqt-title";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:13:"8:lqt-summary";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:15:"8:lqt-searching";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:18:"8:lqt-read-message";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:26:"8:lqt-read-message-tooltip";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:14:"8:lqt-read-all";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:22:"8:lqt-read-all-tooltip";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:17:"8:lqt-marked-read";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:23:"8:lqt-count-marked-read";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:16:"8:lqt-email-undo";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:21:"8:lqt-no-new-messages";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:18:"8:lqt-new-messages";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:21:"8:lqt-email-info-undo";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:15:"8:lqt-date-info";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:25:"8:lqt-newmessages-context";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:20:"8:lqt-thread-created";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:18:"8:lqt-history-time";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:18:"8:lqt-history-user";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:20:"8:lqt-history-action";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:21:"8:lqt-history-comment";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:20:"8:lqt-history-thread";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:26:"8:lqt-thread-edited-author";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:26:"8:lqt-thread-edited-others";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:20:"8:lqt-header-actions";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:20:"8:lqt_summarize_link";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:21:"8:lqt-summarize-intro";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:18:"8:lqt-thread-split";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:19:"8:lqt-split-success";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:18:"8:lqt_split_thread";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:26:"8:lqt-thread-split-subject";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:25:"8:lqt-thread-split-thread";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:18:"8:lqt-split-submit";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:22:"8:lqt_split_badsubject";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:16:"8:lqt-no-threads";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:27:"8:lqt-delete-parent-warning";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:27:"8:lqt-delete-parent-deleted";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:25:"8:lqt-delete-replies-done";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:16:"8:lqt-movethread";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:18:"8:lqt-menu-trigger";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:22:"8:lqt-newmessages-from";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:16:"8:lqt-hot-topics";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:15:"8:lqt-add-reply";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:23:"8:lqt_rc_new_discussion";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:18:"8:lqt_rc_new_reply";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:17:"8:right-lqt-split";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:17:"8:right-lqt-merge";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:17:"8:right-lqt-react";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:18:"8:lqt-thread-merge";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:21:"8:lqt-thread-merge-to";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:18:"8:lqt_merge_thread";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:25:"8:lqt-thread-merge-source";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:23:"8:lqt-thread-merge-dest";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:18:"8:lqt-merge-submit";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:19:"8:lqt-merge-success";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:14:"8:lqt-log-name";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:16:"8:lqt-log-header";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:21:"8:lqt-log-action-move";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:22:"8:lqt-log-action-split";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:29:"8:lqt-log-action-merge-across";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:27:"8:lqt-log-action-merge-down";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:28:"8:lqt-log-action-subjectedit";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:23:"8:lqt-log-action-resort";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:28:"8:lqt-preference-notify-talk";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:30:"8:lqt-preference-watch-threads";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:11:"8:prefs-lqt";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:30:"8:lqt-preference-display-depth";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:30:"8:lqt-preference-display-count";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:34:"8:lqt-preference-custom-signatures";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:26:"8:lqt-enotif-subject-reply";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:30:"8:lqt-enotif-subject-newthread";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:22:"8:lqt-enotif-newthread";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:18:"8:lqt-enotif-reply";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:17:"8:lqt-quote-intro";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:11:"8:lqt-quote";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:19:"8:lqt-search-legend";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:18:"8:lqt-search-label";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:19:"8:lqt-search-button";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:23:"8:searchprofile-threads";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:31:"8:searchprofile-threads-tooltip";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:18:"8:lqt-ajax-updated";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:22:"8:lqt-ajax-update-link";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:25:"8:lqt-thread-show-replies";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:22:"8:lqt-thread-show-more";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:21:"8:lqt-thread-link-url";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:23:"8:lqt-thread-link-title";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:22:"8:lqt-thread-link-copy";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:24:"8:lqt-sign-not-necessary";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:32:"8:lqt-marked-as-read-placeholder";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:20:"8:lqt-change-subject";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:18:"8:lqt-save-subject";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:25:"8:lqt-save-subject-failed";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:26:"8:lqt-ajax-invalid-subject";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:21:"8:lqt-ajax-no-subject";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:32:"8:lqt-save-subject-error-unknown";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:25:"8:lqt-cancel-subject-edit";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:19:"8:lqt-drag-activate";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:20:"8:lqt-drag-drop-zone";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:18:"8:lqt-drag-confirm";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:19:"8:lqt-drag-reparent";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:16:"8:lqt-drag-split";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:21:"8:lqt-drag-setsortkey";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:15:"8:lqt-drag-bump";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:15:"8:lqt-drag-save";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:16:"8:lqt-drag-title";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:17:"8:lqt-drag-reason";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:18:"8:lqt-drag-subject";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:20:"8:lqt-edit-signature";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:23:"8:lqt-preview-signature";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:20:"8:lqt-feed-title-all";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:25:"8:lqt-feed-title-all-from";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:28:"8:lqt-feed-title-new-threads";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:33:"8:lqt-feed-title-new-threads-from";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:24:"8:lqt-feed-title-replies";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:29:"8:lqt-feed-title-replies-from";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:27:"8:lqt-feed-new-thread-intro";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:22:"8:lqt-feed-reply-intro";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:24:"8:tooltip-pt-newmessages";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:19:"8:lqt-newmessages-n";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:17:"8:lqt_newmessages";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:23:"8:lqt_newmessages-title";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:21:"8:lqt-newpost-summary";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:19:"8:lqt-reply-summary";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:28:"8:lqt-talkpage-history-title";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:31:"8:lqt-talkpage-history-subtitle";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:26:"8:lqt-talkpage-history-tab";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:19:"8:restriction-reply";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:23:"8:restriction-newthread";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:28:"8:lqt-protected-reply-thread";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:30:"8:lqt-protected-reply-talkpage";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:25:"8:lqt-protected-newthread";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:15:"8:lqt-edit-bump";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:23:"8:lqt-edit-bump-tooltip";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:30:"8:lqt-historicalrevision-error";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:19:"8:lqt-reply-subpage";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:14:"8:nstab-thread";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:15:"8:nstab-summary";a:3:{i:0;R:7544;i:1;R:799;i:2;R:3234;}s:20:"8:markashelpful-desc";a:3:{i:0;s:17:"ext-markashelpful";i:1;R:799;i:2;R:3234;}s:15:"8:mah-mark-text";a:3:{i:0;R:7774;i:1;R:799;i:2;R:3234;}s:21:"8:mah-you-marked-text";a:3:{i:0;R:7774;i:1;R:799;i:2;R:3234;}s:25:"8:mah-someone-marked-text";a:3:{i:0;R:7774;i:1;R:799;i:2;R:3234;}s:20:"8:mah-undo-mark-text";a:3:{i:0;R:7774;i:1;R:799;i:2;R:3234;}s:18:"8:mah-action-error";a:3:{i:0;R:7774;i:1;R:799;i:2;R:3234;}s:14:"8:moodbar-desc";a:3:{i:0;s:11:"ext-moodbar";i:1;R:799;i:2;R:3234;}s:26:"8:moodbar-trigger-feedback";a:3:{i:0;R:7781;i:1;R:799;i:2;R:3234;}s:23:"8:moodbar-trigger-share";a:3:{i:0;R:7781;i:1;R:799;i:2;R:3234;}s:25:"8:moodbar-trigger-editing";a:3:{i:0;R:7781;i:1;R:799;i:2;R:3234;}s:36:"8:tooltip-p-moodbar-trigger-feedback";a:3:{i:0;R:7781;i:1;R:799;i:2;R:3234;}s:33:"8:tooltip-p-moodbar-trigger-share";a:3:{i:0;R:7781;i:1;R:799;i:2;R:3234;}s:35:"8:tooltip-p-moodbar-trigger-editing";a:3:{i:0;R:7781;i:1;R:799;i:2;R:3234;}s:15:"8:moodbar-weeks";a:3:{i:0;R:7781;i:1;R:799;i:2;R:3234;}s:16:"8:moodbar-months";a:3:{i:0;R:7781;i:1;R:799;i:2;R:3234;}s:15:"8:moodbar-years";a:3:{i:0;R:7781;i:1;R:799;i:2;R:3234;}s:17:"8:moodbar-seconds";a:3:{i:0;R:7781;i:1;R:799;i:2;R:3234;}s:15:"8:moodbar-close";a:3:{i:0;R:7781;i:1;R:799;i:2;R:3234;}s:24:"8:moodbar-intro-feedback";a:3:{i:0;R:7781;i:1;R:799;i:2;R:3234;}s:21:"8:moodbar-intro-share";a:3:{i:0;R:7781;i:1;R:799;i:2;R:3234;}s:23:"8:moodbar-intro-editing";a:3:{i:0;R:7781;i:1;R:799;i:2;R:3234;}s:26:"8:moodbar-type-happy-title";a:3:{i:0;R:7781;i:1;R:799;i:2;R:3234;}s:24:"8:moodbar-type-sad-title";a:3:{i:0;R:7781;i:1;R:799;i:2;R:3234;}s:29:"8:moodbar-type-confused-title";a:3:{i:0;R:7781;i:1;R:799;i:2;R:3234;}s:22:"8:tooltip-moodbar-what";a:3:{i:0;R:7781;i:1;R:799;i:2;R:3234;}s:21:"8:moodbar-what-target";a:3:{i:0;R:7781;i:1;R:799;i:2;R:3234;}s:20:"8:moodbar-what-label";a:3:{i:0;R:7781;i:1;R:799;i:2;R:3234;}s:24:"8:moodbar-what-collapsed";a:3:{i:0;R:7781;i:1;R:799;i:2;R:3234;}s:23:"8:moodbar-what-expanded";a:3:{i:0;R:7781;i:1;R:799;i:2;R:3234;}s:27:"8:moodbar-respond-collapsed";a:3:{i:0;R:7781;i:1;R:799;i:2;R:3234;}s:26:"8:moodbar-respond-expanded";a:3:{i:0;R:7781;i:1;R:799;i:2;R:3234;}s:22:"8:moodbar-respond-text";a:3:{i:0;R:7781;i:1;R:799;i:2;R:3234;}s:22:"8:moodbar-response-add";a:3:{i:0;R:7781;i:1;R:799;i:2;R:3234;}s:23:"8:moodbar-response-desc";a:3:{i:0;R:7781;i:1;R:799;i:2;R:3234;}s:22:"8:moodbar-response-btn";a:3:{i:0;R:7781;i:1;R:799;i:2;R:3234;}s:22:"8:moodbar-what-content";a:3:{i:0;R:7781;i:1;R:799;i:2;R:3234;}s:19:"8:moodbar-what-link";a:3:{i:0;R:7781;i:1;R:799;i:2;R:3234;}s:17:"8:moodbar-privacy";a:3:{i:0;R:7781;i:1;R:799;i:2;R:3234;}s:22:"8:moodbar-privacy-link";a:3:{i:0;R:7781;i:1;R:799;i:2;R:3234;}s:28:"8:moodbar-privacy-link-title";a:3:{i:0;R:7781;i:1;R:799;i:2;R:3234;}s:24:"8:moodbar-fbd-link-title";a:3:{i:0;R:7781;i:1;R:799;i:2;R:3234;}s:22:"8:moodbar-disable-link";a:3:{i:0;R:7781;i:1;R:799;i:2;R:3234;}s:20:"8:moodbar-form-title";a:3:{i:0;R:7781;i:1;R:799;i:2;R:3234;}s:19:"8:moodbar-form-note";a:3:{i:0;R:7781;i:1;R:799;i:2;R:3234;}s:27:"8:moodbar-form-note-dynamic";a:3:{i:0;R:7781;i:1;R:799;i:2;R:3234;}s:21:"8:moodbar-form-submit";a:3:{i:0;R:7781;i:1;R:799;i:2;R:3234;}s:26:"8:moodbar-form-policy-text";a:3:{i:0;R:7781;i:1;R:799;i:2;R:3234;}s:27:"8:moodbar-form-policy-label";a:3:{i:0;R:7781;i:1;R:799;i:2;R:3234;}s:23:"8:moodbar-loading-title";a:3:{i:0;R:7781;i:1;R:799;i:2;R:3234;}s:23:"8:moodbar-success-title";a:3:{i:0;R:7781;i:1;R:799;i:2;R:3234;}s:21:"8:moodbar-error-title";a:3:{i:0;R:7781;i:1;R:799;i:2;R:3234;}s:26:"8:moodbar-loading-subtitle";a:3:{i:0;R:7781;i:1;R:799;i:2;R:3234;}s:26:"8:moodbar-success-subtitle";a:3:{i:0;R:7781;i:1;R:799;i:2;R:3234;}s:24:"8:moodbar-error-subtitle";a:3:{i:0;R:7781;i:1;R:799;i:2;R:3234;}s:23:"8:moodbar-blocked-title";a:3:{i:0;R:7781;i:1;R:799;i:2;R:3234;}s:26:"8:moodbar-blocked-subtitle";a:3:{i:0;R:7781;i:1;R:799;i:2;R:3234;}s:27:"8:moodbar-ratelimited-title";a:3:{i:0;R:7781;i:1;R:799;i:2;R:3234;}s:30:"8:moodbar-ratelimited-subtitle";a:3:{i:0;R:7781;i:1;R:799;i:2;R:3234;}s:21:"8:moodbar-abuse-title";a:3:{i:0;R:7781;i:1;R:799;i:2;R:3234;}s:24:"8:moodbar-abuse-subtitle";a:3:{i:0;R:7781;i:1;R:799;i:2;R:3234;}s:21:"8:moodbar-email-title";a:3:{i:0;R:7781;i:1;R:799;i:2;R:3234;}s:21:"8:moodbar-email-input";a:3:{i:0;R:7781;i:1;R:799;i:2;R:3234;}s:20:"8:moodbar-email-desc";a:3:{i:0;R:7781;i:1;R:799;i:2;R:3234;}s:22:"8:moodbar-email-submit";a:3:{i:0;R:7781;i:1;R:799;i:2;R:3234;}s:24:"8:moodbar-updating-title";a:3:{i:0;R:7781;i:1;R:799;i:2;R:3234;}s:27:"8:moodbar-updating-subtitle";a:3:{i:0;R:7781;i:1;R:799;i:2;R:3234;}s:29:"8:moodbar-email-confirm-title";a:3:{i:0;R:7781;i:1;R:799;i:2;R:3234;}s:28:"8:moodbar-email-confirm-desc";a:3:{i:0;R:7781;i:1;R:799;i:2;R:3234;}s:35:"8:moodbar-email-resend-confirmation";a:3:{i:0;R:7781;i:1;R:799;i:2;R:3234;}s:22:"8:moodbar-email-optout";a:3:{i:0;R:7781;i:1;R:799;i:2;R:3234;}s:23:"8:moodbar-tooltip-title";a:3:{i:0;R:7781;i:1;R:799;i:2;R:3234;}s:20:"8:right-moodbar-view";a:3:{i:0;R:7781;i:1;R:799;i:2;R:3234;}s:21:"8:right-moodbar-admin";a:3:{i:0;R:7781;i:1;R:799;i:2;R:3234;}s:21:"8:moodbar-admin-title";a:3:{i:0;R:7781;i:1;R:799;i:2;R:3234;}s:21:"8:moodbar-admin-intro";a:3:{i:0;R:7781;i:1;R:799;i:2;R:3234;}s:21:"8:moodbar-admin-empty";a:3:{i:0;R:7781;i:1;R:799;i:2;R:3234;}s:19:"8:moodbar-header-id";a:3:{i:0;R:7781;i:1;R:799;i:2;R:3234;}s:26:"8:moodbar-header-timestamp";a:3:{i:0;R:7781;i:1;R:799;i:2;R:3234;}s:21:"8:moodbar-header-type";a:3:{i:0;R:7781;i:1;R:799;i:2;R:3234;}s:21:"8:moodbar-header-page";a:3:{i:0;R:7781;i:1;R:799;i:2;R:3234;}s:25:"8:moodbar-header-usertype";a:3:{i:0;R:7781;i:1;R:799;i:2;R:3234;}s:21:"8:moodbar-header-user";a:3:{i:0;R:7781;i:1;R:799;i:2;R:3234;}s:25:"8:moodbar-header-editmode";a:3:{i:0;R:7781;i:1;R:799;i:2;R:3234;}s:23:"8:moodbar-header-bucket";a:3:{i:0;R:7781;i:1;R:799;i:2;R:3234;}s:23:"8:moodbar-header-system";a:3:{i:0;R:7781;i:1;R:799;i:2;R:3234;}s:23:"8:moodbar-header-locale";a:3:{i:0;R:7781;i:1;R:799;i:2;R:3234;}s:26:"8:moodbar-header-useragent";a:3:{i:0;R:7781;i:1;R:799;i:2;R:3234;}s:24:"8:moodbar-header-comment";a:3:{i:0;R:7781;i:1;R:799;i:2;R:3234;}s:31:"8:moodbar-header-user-editcount";a:3:{i:0;R:7781;i:1;R:799;i:2;R:3234;}s:26:"8:moodbar-header-namespace";a:3:{i:0;R:7781;i:1;R:799;i:2;R:3234;}s:25:"8:moodbar-header-own-talk";a:3:{i:0;R:7781;i:1;R:799;i:2;R:3234;}s:24:"8:moodbar-feedback-title";a:3:{i:0;R:7781;i:1;R:799;i:2;R:3234;}s:30:"8:moodbar-feedback-description";a:3:{i:0;R:7781;i:1;R:799;i:2;R:3234;}s:33:"8:moodbar-feedback-response-title";a:3:{i:0;R:7781;i:1;R:799;i:2;R:3234;}s:28:"8:moodbar-feedback-view-link";a:3:{i:0;R:7781;i:1;R:799;i:2;R:3234;}s:26:"8:moodbar-feedback-filters";a:3:{i:0;R:7781;i:1;R:799;i:2;R:3234;}s:31:"8:moodbar-feedback-filters-type";a:3:{i:0;R:7781;i:1;R:799;i:2;R:3234;}s:37:"8:moodbar-feedback-filters-type-happy";a:3:{i:0;R:7781;i:1;R:799;i:2;R:3234;}s:40:"8:moodbar-feedback-filters-type-confused";a:3:{i:0;R:7781;i:1;R:799;i:2;R:3234;}s:35:"8:moodbar-feedback-filters-type-sad";a:3:{i:0;R:7781;i:1;R:799;i:2;R:3234;}s:35:"8:moodbar-feedback-filters-username";a:3:{i:0;R:7781;i:1;R:799;i:2;R:3234;}s:38:"8:moodbar-feedback-filters-my-response";a:3:{i:0;R:7781;i:1;R:799;i:2;R:3234;}s:42:"8:moodbar-feedback-filters-show-unanswered";a:3:{i:0;R:7781;i:1;R:799;i:2;R:3234;}s:33:"8:moodbar-feedback-filters-button";a:3:{i:0;R:7781;i:1;R:799;i:2;R:3234;}s:25:"8:moodbar-feedback-whatis";a:3:{i:0;R:7781;i:1;R:799;i:2;R:3234;}s:28:"8:moodbar-feedback-permalink";a:3:{i:0;R:7781;i:1;R:799;i:2;R:3234;}s:28:"8:moodbar-feedback-noresults";a:3:{i:0;R:7781;i:1;R:799;i:2;R:3234;}s:23:"8:moodbar-feedback-more";a:3:{i:0;R:7781;i:1;R:799;i:2;R:3234;}s:25:"8:moodbar-feedback-nomore";a:3:{i:0;R:7781;i:1;R:799;i:2;R:3234;}s:24:"8:moodbar-feedback-newer";a:3:{i:0;R:7781;i:1;R:799;i:2;R:3234;}s:24:"8:moodbar-feedback-older";a:3:{i:0;R:7781;i:1;R:799;i:2;R:3234;}s:28:"8:moodbar-feedback-ajaxerror";a:3:{i:0;R:7781;i:1;R:799;i:2;R:3234;}s:36:"8:moodbar-feedback-load-record-error";a:3:{i:0;R:7781;i:1;R:799;i:2;R:3234;}s:21:"8:moodbar-user-hidden";a:3:{i:0;R:7781;i:1;R:799;i:2;R:3234;}s:24:"8:moodbar-comment-hidden";a:3:{i:0;R:7781;i:1;R:799;i:2;R:3234;}s:23:"8:moodbar-feedback-show";a:3:{i:0;R:7781;i:1;R:799;i:2;R:3234;}s:23:"8:moodbar-feedback-hide";a:3:{i:0;R:7781;i:1;R:799;i:2;R:3234;}s:33:"8:moodbar-feedback-action-confirm";a:3:{i:0;R:7781;i:1;R:799;i:2;R:3234;}s:32:"8:moodbar-feedback-action-cancel";a:3:{i:0;R:7781;i:1;R:799;i:2;R:3234;}s:23:"8:moodbar-hidden-footer";a:3:{i:0;R:7781;i:1;R:799;i:2;R:3234;}s:35:"8:moodbar-hidden-footer-without-log";a:3:{i:0;R:7781;i:1;R:799;i:2;R:3234;}s:26:"8:moodbar-feedback-restore";a:3:{i:0;R:7781;i:1;R:799;i:2;R:3234;}s:21:"8:moodbar-action-item";a:3:{i:0;R:7781;i:1;R:799;i:2;R:3234;}s:23:"8:moodbar-action-reason";a:3:{i:0;R:7781;i:1;R:799;i:2;R:3234;}s:32:"8:moodbar-action-reason-required";a:3:{i:0;R:7781;i:1;R:799;i:2;R:3234;}s:21:"8:moodbar-hide-header";a:3:{i:0;R:7781;i:1;R:799;i:2;R:3234;}s:20:"8:moodbar-hide-intro";a:3:{i:0;R:7781;i:1;R:799;i:2;R:3234;}s:24:"8:moodbar-restore-header";a:3:{i:0;R:7781;i:1;R:799;i:2;R:3234;}s:23:"8:moodbar-restore-intro";a:3:{i:0;R:7781;i:1;R:799;i:2;R:3234;}s:22:"8:moodbar-invalid-item";a:3:{i:0;R:7781;i:1;R:799;i:2;R:3234;}s:31:"8:moodbar-feedback-action-error";a:3:{i:0;R:7781;i:1;R:799;i:2;R:3234;}s:35:"8:moodbar-feedback-response-summary";a:3:{i:0;R:7781;i:1;R:799;i:2;R:3234;}s:43:"8:moodbar-feedback-response-helpful-summary";a:3:{i:0;R:7781;i:1;R:799;i:2;R:3234;}s:31:"8:moodbar-feedback-edit-summary";a:3:{i:0;R:7781;i:1;R:799;i:2;R:3234;}s:39:"8:moodbar-feedback-top-responders-title";a:3:{i:0;R:7781;i:1;R:799;i:2;R:3234;}s:20:"8:moodbar-type-happy";a:3:{i:0;R:7781;i:1;R:799;i:2;R:3234;}s:18:"8:moodbar-type-sad";a:3:{i:0;R:7781;i:1;R:799;i:2;R:3234;}s:23:"8:moodbar-type-confused";a:3:{i:0;R:7781;i:1;R:799;i:2;R:3234;}s:20:"8:moodbar-type-stats";a:3:{i:0;R:7781;i:1;R:799;i:2;R:3234;}s:25:"8:moodbar-user-anonymized";a:3:{i:0;R:7781;i:1;R:799;i:2;R:3234;}s:17:"8:moodbar-user-ip";a:3:{i:0;R:7781;i:1;R:799;i:2;R:3234;}s:19:"8:moodbar-user-user";a:3:{i:0;R:7781;i:1;R:799;i:2;R:3234;}s:18:"8:moodbar-log-name";a:3:{i:0;R:7781;i:1;R:799;i:2;R:3234;}s:20:"8:moodbar-log-header";a:3:{i:0;R:7781;i:1;R:799;i:2;R:3234;}s:18:"8:moodbar-log-hide";a:3:{i:0;R:7781;i:1;R:799;i:2;R:3234;}s:22:"8:moodbar-log-feedback";a:3:{i:0;R:7781;i:1;R:799;i:2;R:3234;}s:21:"8:moodbar-log-restore";a:3:{i:0;R:7781;i:1;R:799;i:2;R:3234;}s:20:"8:moodbar-log-reason";a:3:{i:0;R:7781;i:1;R:799;i:2;R:3234;}s:24:"8:moodbar-response-terms";a:3:{i:0;R:7781;i:1;R:799;i:2;R:3234;}s:23:"8:moodbar-response-link";a:3:{i:0;R:7781;i:1;R:799;i:2;R:3234;}s:22:"8:moodbar-response-url";a:3:{i:0;R:7781;i:1;R:799;i:2;R:3234;}s:20:"8:response-back-text";a:3:{i:0;R:7781;i:1;R:799;i:2;R:3234;}s:23:"8:response-preview-text";a:3:{i:0;R:7781;i:1;R:799;i:2;R:3234;}s:27:"8:response-ajax-action-head";a:3:{i:0;R:7781;i:1;R:799;i:2;R:3234;}s:27:"8:response-ajax-action-body";a:3:{i:0;R:7781;i:1;R:799;i:2;R:3234;}s:28:"8:response-ajax-success-head";a:3:{i:0;R:7781;i:1;R:799;i:2;R:3234;}s:28:"8:response-ajax-success-body";a:3:{i:0;R:7781;i:1;R:799;i:2;R:3234;}s:26:"8:response-ajax-error-head";a:3:{i:0;R:7781;i:1;R:799;i:2;R:3234;}s:26:"8:response-ajax-error-body";a:3:{i:0;R:7781;i:1;R:799;i:2;R:3234;}s:35:"8:response-concurrency-notification";a:3:{i:0;R:7781;i:1;R:799;i:2;R:3234;}s:24:"8:moodbar-enotif-subject";a:3:{i:0;R:7781;i:1;R:799;i:2;R:3234;}s:21:"8:moodbar-enotif-body";a:3:{i:0;R:7781;i:1;R:799;i:2;R:3234;}s:15:"8:mwsearch-desc";a:3:{i:0;s:12:"ext-mwsearch";i:1;R:799;i:2;R:3234;}s:14:"8:narayam-desc";a:3:{i:0;s:11:"ext-narayam";i:1;R:799;i:2;R:3234;}s:20:"8:narayam-toggle-ime";a:3:{i:0;R:7940;i:1;R:799;i:2;R:3234;}s:14:"8:narayam-menu";a:3:{i:0;R:7940;i:1;R:799;i:2;R:3234;}s:22:"8:narayam-menu-tooltip";a:3:{i:0;R:7940;i:1;R:799;i:2;R:3234;}s:14:"8:narayam-help";a:3:{i:0;R:7940;i:1;R:799;i:2;R:3234;}s:19:"8:narayam-help-page";a:3:{i:0;R:7940;i:1;R:799;i:2;R:3234;}s:26:"8:narayam-checkbox-tooltip";a:3:{i:0;R:7940;i:1;R:799;i:2;R:3234;}s:27:"8:narayam-enable-preference";a:3:{i:0;R:7940;i:1;R:799;i:2;R:3234;}s:19:"8:narayam-more-imes";a:3:{i:0;R:7940;i:1;R:799;i:2;R:3234;}s:13:"8:narayam-ahr";a:3:{i:0;R:7940;i:1;R:799;i:2;R:3234;}s:22:"8:narayam-ahr-inscript";a:3:{i:0;R:7940;i:1;R:799;i:2;R:3234;}s:12:"8:narayam-am";a:3:{i:0;R:7940;i:1;R:799;i:2;R:3234;}s:12:"8:narayam-as";a:3:{i:0;R:7940;i:1;R:799;i:2;R:3234;}s:17:"8:narayam-as-avro";a:3:{i:0;R:7940;i:1;R:799;i:2;R:3234;}s:20:"8:narayam-as-bornona";a:3:{i:0;R:7940;i:1;R:799;i:2;R:3234;}s:21:"8:narayam-as-inscript";a:3:{i:0;R:7940;i:1;R:799;i:2;R:3234;}s:18:"8:narayam-ber-tfng";a:3:{i:0;R:7940;i:1;R:799;i:2;R:3234;}s:22:"8:narayam-brx-inscript";a:3:{i:0;R:7940;i:1;R:799;i:2;R:3234;}s:12:"8:narayam-eo";a:3:{i:0;R:7940;i:1;R:799;i:2;R:3234;}s:12:"8:narayam-hi";a:3:{i:0;R:7940;i:1;R:799;i:2;R:3234;}s:21:"8:narayam-hi-inscript";a:3:{i:0;R:7940;i:1;R:799;i:2;R:3234;}s:12:"8:narayam-kn";a:3:{i:0;R:7940;i:1;R:799;i:2;R:3234;}s:21:"8:narayam-kn-inscript";a:3:{i:0;R:7940;i:1;R:799;i:2;R:3234;}s:12:"8:narayam-ml";a:3:{i:0;R:7940;i:1;R:799;i:2;R:3234;}s:21:"8:narayam-ml-inscript";a:3:{i:0;R:7940;i:1;R:799;i:2;R:3234;}s:12:"8:narayam-mr";a:3:{i:0;R:7940;i:1;R:799;i:2;R:3234;}s:21:"8:narayam-mr-inscript";a:3:{i:0;R:7940;i:1;R:799;i:2;R:3234;}s:12:"8:narayam-ne";a:3:{i:0;R:7940;i:1;R:799;i:2;R:3234;}s:22:"8:narayam-new-inscript";a:3:{i:0;R:7940;i:1;R:799;i:2;R:3234;}s:13:"8:narayam-new";a:3:{i:0;R:7940;i:1;R:799;i:2;R:3234;}s:21:"8:narayam-ne-inscript";a:3:{i:0;R:7940;i:1;R:799;i:2;R:3234;}s:12:"8:narayam-or";a:3:{i:0;R:7940;i:1;R:799;i:2;R:3234;}s:20:"8:narayam-or-lekhani";a:3:{i:0;R:7940;i:1;R:799;i:2;R:3234;}s:21:"8:narayam-or-inscript";a:3:{i:0;R:7940;i:1;R:799;i:2;R:3234;}s:12:"8:narayam-pa";a:3:{i:0;R:7940;i:1;R:799;i:2;R:3234;}s:21:"8:narayam-pa-phonetic";a:3:{i:0;R:7940;i:1;R:799;i:2;R:3234;}s:21:"8:narayam-pa-inscript";a:3:{i:0;R:7940;i:1;R:799;i:2;R:3234;}s:12:"8:narayam-sa";a:3:{i:0;R:7940;i:1;R:799;i:2;R:3234;}s:21:"8:narayam-sa-inscript";a:3:{i:0;R:7940;i:1;R:799;i:2;R:3234;}s:21:"8:narayam-si-singlish";a:3:{i:0;R:7940;i:1;R:799;i:2;R:3234;}s:23:"8:narayam-si-wijesekara";a:3:{i:0;R:7940;i:1;R:799;i:2;R:3234;}s:15:"8:narayam-ta-99";a:3:{i:0;R:7940;i:1;R:799;i:2;R:3234;}s:21:"8:narayam-ta-inscript";a:3:{i:0;R:7940;i:1;R:799;i:2;R:3234;}s:12:"8:narayam-ta";a:3:{i:0;R:7940;i:1;R:799;i:2;R:3234;}s:19:"8:narayam-ta-bamini";a:3:{i:0;R:7940;i:1;R:799;i:2;R:3234;}s:13:"8:narayam-tcy";a:3:{i:0;R:7940;i:1;R:799;i:2;R:3234;}s:12:"8:narayam-te";a:3:{i:0;R:7940;i:1;R:799;i:2;R:3234;}s:21:"8:narayam-te-inscript";a:3:{i:0;R:7940;i:1;R:799;i:2;R:3234;}s:13:"8:narayam-bho";a:3:{i:0;R:7940;i:1;R:799;i:2;R:3234;}s:22:"8:narayam-bho-inscript";a:3:{i:0;R:7940;i:1;R:799;i:2;R:3234;}s:17:"8:narayam-bn-avro";a:3:{i:0;R:7940;i:1;R:799;i:2;R:3234;}s:21:"8:narayam-bn-inscript";a:3:{i:0;R:7940;i:1;R:799;i:2;R:3234;}s:16:"8:narayam-bn-nkb";a:3:{i:0;R:7940;i:1;R:799;i:2;R:3234;}s:12:"8:narayam-ur";a:3:{i:0;R:7940;i:1;R:799;i:2;R:3234;}s:12:"8:narayam-de";a:3:{i:0;R:7940;i:1;R:799;i:2;R:3234;}s:12:"8:narayam-gu";a:3:{i:0;R:7940;i:1;R:799;i:2;R:3234;}s:21:"8:narayam-gu-inscript";a:3:{i:0;R:7940;i:1;R:799;i:2;R:3234;}s:21:"8:narayam-ru-standard";a:3:{i:0;R:7940;i:1;R:799;i:2;R:3234;}s:22:"8:narayam-sah-standard";a:3:{i:0;R:7940;i:1;R:799;i:2;R:3234;}s:22:"8:narayam-hne-inscript";a:3:{i:0;R:7940;i:1;R:799;i:2;R:3234;}s:22:"8:narayam-mai-inscript";a:3:{i:0;R:7940;i:1;R:799;i:2;R:3234;}s:18:"8:narayam-gom-deva";a:3:{i:0;R:7940;i:1;R:799;i:2;R:3234;}s:27:"8:narayam-gom-deva-inscript";a:3:{i:0;R:7940;i:1;R:799;i:2;R:3234;}s:34:"8:narayam-he-standard-2011-extonly";a:3:{i:0;R:7940;i:1;R:799;i:2;R:3234;}s:26:"8:narayam-he-standard-2011";a:3:{i:0;R:7940;i:1;R:799;i:2;R:3234;}s:6:"8:nuke";a:3:{i:0;s:8:"ext-nuke";i:1;R:799;i:2;R:3234;}s:13:"8:action-nuke";a:3:{i:0;R:8006;i:1;R:799;i:2;R:3234;}s:11:"8:nuke-desc";a:3:{i:0;R:8006;i:1;R:799;i:2;R:3234;}s:14:"8:nuke-nopages";a:3:{i:0;R:8006;i:1;R:799;i:2;R:3234;}s:11:"8:nuke-list";a:3:{i:0;R:8006;i:1;R:799;i:2;R:3234;}s:20:"8:nuke-list-multiple";a:3:{i:0;R:8006;i:1;R:799;i:2;R:3234;}s:20:"8:nuke-defaultreason";a:3:{i:0;R:8006;i:1;R:799;i:2;R:3234;}s:21:"8:nuke-multiplepeople";a:3:{i:0;R:8006;i:1;R:799;i:2;R:3234;}s:12:"8:nuke-tools";a:3:{i:0;R:8006;i:1;R:799;i:2;R:3234;}s:18:"8:nuke-submit-user";a:3:{i:0;R:8006;i:1;R:799;i:2;R:3234;}s:20:"8:nuke-submit-delete";a:3:{i:0;R:8006;i:1;R:799;i:2;R:3234;}s:12:"8:right-nuke";a:3:{i:0;R:8006;i:1;R:799;i:2;R:3234;}s:13:"8:nuke-select";a:3:{i:0;R:8006;i:1;R:799;i:2;R:3234;}s:15:"8:nuke-userorip";a:3:{i:0;R:8006;i:1;R:799;i:2;R:3234;}s:15:"8:nuke-maxpages";a:3:{i:0;R:8006;i:1;R:799;i:2;R:3234;}s:13:"8:nuke-editby";a:3:{i:0;R:8006;i:1;R:799;i:2;R:3234;}s:14:"8:nuke-deleted";a:3:{i:0;R:8006;i:1;R:799;i:2;R:3234;}s:18:"8:nuke-not-deleted";a:3:{i:0;R:8006;i:1;R:799;i:2;R:3234;}s:18:"8:nuke-delete-more";a:3:{i:0;R:8006;i:1;R:799;i:2;R:3234;}s:14:"8:nuke-pattern";a:3:{i:0;R:8006;i:1;R:799;i:2;R:3234;}s:21:"8:nuke-nopages-global";a:3:{i:0;R:8006;i:1;R:799;i:2;R:3234;}s:18:"8:nuke-viewchanges";a:3:{i:0;R:8006;i:1;R:799;i:2;R:3234;}s:10:"8:oai-desc";a:3:{i:0;s:7:"ext-oai";i:1;R:799;i:2;R:3234;}s:15:"8:oairepository";a:3:{i:0;R:8029;i:1;R:799;i:2;R:3234;}s:20:"8:opensearchxml-desc";a:3:{i:0;s:17:"ext-opensearchxml";i:1;R:799;i:2;R:3234;}s:23:"8:openstackmanager-desc";a:3:{i:0;s:20:"ext-openstackmanager";i:1;R:799;i:2;R:3234;}s:18:"8:openstackmanager";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:27:"8:openstackmanager-instance";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:24:"8:openstackmanager-title";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:34:"8:openstackmanager-badresourcename";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:25:"8:specialpages-group-nova";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:13:"8:novaaddress";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:12:"8:novadomain";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:14:"8:novainstance";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:9:"8:novakey";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:13:"8:novaproject";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:19:"8:novasecuritygroup";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:10:"8:novarole";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:12:"8:novavolume";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:12:"8:novasudoer";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:17:"8:novapuppetgroup";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:29:"8:openstackmanager-novadomain";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:31:"8:openstackmanager-novainstance";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:26:"8:openstackmanager-novakey";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:30:"8:openstackmanager-novaproject";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:25:"8:openstackmanager-delete";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:28:"8:openstackmanager-configure";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:25:"8:openstackmanager-modify";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:25:"8:openstackmanager-rename";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:25:"8:openstackmanager-reboot";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:26:"8:openstackmanager-actions";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:30:"8:openstackmanager-notloggedin";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:33:"8:openstackmanager-mustbeloggedin";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:29:"8:openstackmanager-nonovacred";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:41:"8:openstackmanager-nonovacred-admincreate";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:28:"8:openstackmanager-noaccount";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:29:"8:openstackmanager-noaccount2";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:38:"8:openstackmanager-nonexistentresource";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:31:"8:openstackmanager-createdomain";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:31:"8:openstackmanager-deletedomain";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:39:"8:openstackmanager-deletedomain-confirm";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:36:"8:openstackmanager-novadomain-domain";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:37:"8:openstackmanager-createdomainfailed";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:32:"8:openstackmanager-createddomain";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:29:"8:openstackmanager-domainlist";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:33:"8:openstackmanager-backdomainlist";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:38:"8:openstackmanager-addadditionaldomain";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:32:"8:openstackmanager-deleteddomain";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:36:"8:openstackmanager-failedeletedomain";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:29:"8:openstackmanager-domainname";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:23:"8:openstackmanager-fqdn";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:27:"8:openstackmanager-location";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:32:"8:openstackmanager-location-help";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:40:"8:openstackmanager-novainstance-instance";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:36:"8:openstackmanager-configureinstance";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:34:"8:openstackmanager-nonexistanthost";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:28:"8:openstackmanager-dnsdomain";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:32:"8:openstackmanager-puppetclasses";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:36:"8:openstackmanager-novainstance-info";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:42:"8:openstackmanager-novainstance-puppetinfo";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:39:"8:openstackmanager-novainstance-project";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:38:"8:openstackmanager-novainstance-global";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:33:"8:openstackmanager-deleteinstance";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:41:"8:openstackmanager-deleteinstancequestion";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:31:"8:openstackmanager-instancelist";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:31:"8:openstackmanager-instancename";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:29:"8:openstackmanager-instanceid";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:32:"8:openstackmanager-instancestate";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:31:"8:openstackmanager-instancetype";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:29:"8:openstackmanager-instanceip";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:35:"8:openstackmanager-instancepublicip";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:33:"8:openstackmanager-securitygroups";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:35:"8:openstackmanager-availabilityzone";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:26:"8:openstackmanager-imageid";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:28:"8:openstackmanager-imagetype";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:36:"8:openstackmanager-instancetypelabel";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:33:"8:openstackmanager-rebootinstance";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:41:"8:openstackmanager-rebootinstancequestion";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:35:"8:openstackmanager-rebootedinstance";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:39:"8:openstackmanager-rebootinstancefailed";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:29:"8:openstackmanager-launchtime";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:33:"8:openstackmanager-createinstance";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:46:"8:openstackmanager-createinstancepuppetwarning";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:32:"8:openstackmanager-invaliddomain";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:34:"8:openstackmanager-createdinstance";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:35:"8:openstackmanager-createfailedldap";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:39:"8:openstackmanager-createinstancefailed";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:35:"8:openstackmanager-backinstancelist";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:34:"8:openstackmanager-deletedinstance";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:44:"8:openstackmanager-deletedinstance-faileddns";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:35:"8:openstackmanager-modifiedinstance";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:39:"8:openstackmanager-modifyinstancefailed";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:39:"8:openstackmanager-deleteinstancefailed";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:32:"8:openstackmanager-consoleoutput";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:35:"8:openstackmanager-getconsoleoutput";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:31:"8:openstackmanager-createvolume";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:29:"8:openstackmanager-volumename";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:27:"8:openstackmanager-volumeid";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:36:"8:openstackmanager-volumedescription";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:30:"8:openstackmanager-volumestate";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:43:"8:openstackmanager-volumeattachmentinstance";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:41:"8:openstackmanager-volumeattachmentdevice";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:29:"8:openstackmanager-volumesize";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:41:"8:openstackmanager-volumeattachmentstatus";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:45:"8:openstackmanager-volumedeleteonvolumedelete";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:37:"8:openstackmanager-volumecreationtime";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:25:"8:openstackmanager-attach";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:25:"8:openstackmanager-detach";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:31:"8:openstackmanager-deletevolume";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:39:"8:openstackmanager-deletevolumequestion";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:29:"8:openstackmanager-volumelist";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:36:"8:openstackmanager-novavolume-volume";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:34:"8:openstackmanager-novavolume-info";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:32:"8:openstackmanager-createdvolume";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:38:"8:openstackmanager-createevolumefailed";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:32:"8:openstackmanager-deletedvolume";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:37:"8:openstackmanager-deletevolumefailed";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:33:"8:openstackmanager-backvolumelist";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:31:"8:openstackmanager-attachvolume";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:25:"8:openstackmanager-device";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:33:"8:openstackmanager-attachedvolume";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:37:"8:openstackmanager-attachvolumefailed";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:31:"8:openstackmanager-detachvolume";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:34:"8:openstackmanager-forcedetachment";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:38:"8:openstackmanager-forcedetachmenthelp";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:33:"8:openstackmanager-detachedvolume";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:37:"8:openstackmanager-detachvolumefailed";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:32:"8:openstackmanager-novapublickey";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:30:"8:openstackmanager-novakey-key";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:28:"8:openstackmanager-deletekey";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:35:"8:openstackmanager-deletekeyconfirm";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:26:"8:openstackmanager-keylist";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:23:"8:openstackmanager-name";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:30:"8:openstackmanager-fingerprint";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:23:"8:openstackmanager-keys";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:33:"8:openstackmanager-invalidkeypair";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:38:"8:openstackmanager-keypairimportfailed";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:34:"8:openstackmanager-keypairimported";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:45:"8:openstackmanager-keypairimportedfingerprint";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:37:"8:openstackmanager-keypairformatwrong";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:41:"8:openstackmanager-keypairformatconverted";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:30:"8:openstackmanager-backkeylist";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:35:"8:openstackmanager-addadditionalkey";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:29:"8:openstackmanager-deletedkey";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:35:"8:openstackmanager-deletedkeyfailed";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:28:"8:openstackmanager-addmember";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:31:"8:openstackmanager-removemember";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:39:"8:openstackmanager-removeprojectconfirm";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:32:"8:openstackmanager-createproject";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:30:"8:openstackmanager-projectname";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:26:"8:openstackmanager-members";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:25:"8:openstackmanager-member";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:25:"8:openstackmanager-action";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:38:"8:openstackmanager-createprojectfailed";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:33:"8:openstackmanager-createdproject";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:30:"8:openstackmanager-projectlist";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:34:"8:openstackmanager-backprojectlist";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:39:"8:openstackmanager-addadditionalproject";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:32:"8:openstackmanager-deleteproject";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:33:"8:openstackmanager-deletedproject";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:38:"8:openstackmanager-deleteprojectfailed";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:26:"8:openstackmanager-addedto";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:30:"8:openstackmanager-failedtoadd";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:30:"8:openstackmanager-removedfrom";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:33:"8:openstackmanager-failedtoremove";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:38:"8:openstackmanager-novaproject-project";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:50:"8:openstackmanager-novaprojectfilter-projectfilter";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:27:"8:openstackmanager-projects";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:30:"8:openstackmanager-setprojects";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:35:"8:openstackmanager-setprojectfilter";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:32:"8:openstackmanager-toggleproject";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:24:"8:openstackmanager-roles";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:27:"8:openstackmanager-rolename";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:35:"8:openstackmanager-removerolemember";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:32:"8:openstackmanager-addrolemember";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:27:"8:openstackmanager-rolelist";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:33:"8:openstackmanager-nomemberstoadd";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:36:"8:openstackmanager-nomemberstoremove";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:32:"8:openstackmanager-novarole-role";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:32:"8:openstackmanager-novarole-info";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:35:"8:openstackmanager-shellaccountname";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:39:"8:openstackmanager-shellaccountnamehelp";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:30:"8:openstackmanager-addresslist";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:26:"8:openstackmanager-address";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:34:"8:openstackmanager-allocateaddress";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:33:"8:openstackmanager-releaseaddress";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:35:"8:openstackmanager-associateaddress";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:37:"8:openstackmanager-reassociateaddress";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:38:"8:openstackmanager-disassociateaddress";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:40:"8:openstackmanager-allocateaddressfailed";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:35:"8:openstackmanager-allocatedaddress";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:34:"8:openstackmanager-backaddresslist";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:42:"8:openstackmanager-allocateaddress-confirm";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:34:"8:openstackmanager-releasedaddress";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:39:"8:openstackmanager-releaseaddressfailed";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:39:"8:openstackmanager-cannotreleaseaddress";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:36:"8:openstackmanager-associatedaddress";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:41:"8:openstackmanager-associateaddressfailed";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:39:"8:openstackmanager-disassociatedaddress";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:44:"8:openstackmanager-disassociateaddressfailed";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:46:"8:openstackmanager-disassociateaddress-confirm";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:41:"8:openstackmanager-releaseaddress-confirm";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:33:"8:openstackmanager-invalidaddress";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:43:"8:openstackmanager-invalidaddressforproject";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:28:"8:openstackmanager-addedhost";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:32:"8:openstackmanager-addhostfailed";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:27:"8:openstackmanager-hostname";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:28:"8:openstackmanager-hostnames";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:26:"8:openstackmanager-addhost";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:29:"8:openstackmanager-removehost";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:36:"8:openstackmanager-removehost-action";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:37:"8:openstackmanager-removehost-confirm";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:30:"8:openstackmanager-removedhost";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:35:"8:openstackmanager-removehostfailed";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:34:"8:openstackmanager-nonexistenthost";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:35:"8:openstackmanager-needsysadminrole";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:36:"8:openstackmanager-needsysadminrole2";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:35:"8:openstackmanager-neednetadminrole";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:36:"8:openstackmanager-neednetadminrole2";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:37:"8:openstackmanager-needcloudadminrole";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:38:"8:openstackmanager-needcloudadminrole2";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:38:"8:openstackmanager-createsecuritygroup";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:36:"8:openstackmanager-securitygroupname";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:43:"8:openstackmanager-securitygroupdescription";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:41:"8:openstackmanager-configuresecuritygroup";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:38:"8:openstackmanager-deletesecuritygroup";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:46:"8:openstackmanager-deletesecuritygroup-confirm";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:36:"8:openstackmanager-securitygrouplist";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:36:"8:openstackmanager-securitygrouprule";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:41:"8:openstackmanager-novasecuritygroup-rule";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:47:"8:openstackmanager-novasecuritygroup-singlerule";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:42:"8:openstackmanager-novasecuritygroup-group";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:52:"8:openstackmanager-securitygrouprule-group-exclusive";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:43:"8:openstackmanager-securitygrouprule-toport";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:45:"8:openstackmanager-securitygrouprule-fromport";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:45:"8:openstackmanager-securitygrouprule-protocol";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:45:"8:openstackmanager-securitygrouprule-ipranges";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:43:"8:openstackmanager-securitygrouprule-groups";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:41:"8:openstackmanager-createnewsecuritygroup";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:33:"8:openstackmanager-addrule-action";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:36:"8:openstackmanager-removerule-action";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:32:"8:openstackmanager-modifiedgroup";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:36:"8:openstackmanager-modifygroupfailed";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:35:"8:openstackmanager-nonexistantgroup";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:40:"8:openstackmanager-backsecuritygrouplist";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:39:"8:openstackmanager-createdsecuritygroup";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:44:"8:openstackmanager-createsecuritygroupfailed";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:43:"8:openstackmanager-nonexistantsecuritygroup";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:39:"8:openstackmanager-deletedsecuritygroup";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:44:"8:openstackmanager-deletesecuritygroupfailed";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:29:"8:openstackmanager-removerule";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:37:"8:openstackmanager-removerule-confirm";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:30:"8:openstackmanager-removedrule";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:35:"8:openstackmanager-removerulefailed";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:26:"8:openstackmanager-addrule";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:43:"8:openstackmanager-securitygrouprule-ranges";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:48:"8:openstackmanager-securitygrouprule-ranges-help";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:48:"8:openstackmanager-securitygrouprule-groups-help";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:28:"8:openstackmanager-addedrule";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:32:"8:openstackmanager-addrulefailed";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:31:"8:openstackmanager-createsudoer";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:36:"8:openstackmanager-novasudoer-sudoer";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:34:"8:openstackmanager-novasudoer-info";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:29:"8:openstackmanager-sudoername";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:33:"8:openstackmanager-commadelimiter";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:30:"8:openstackmanager-sudoerusers";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:30:"8:openstackmanager-sudoerhosts";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:33:"8:openstackmanager-sudoercommands";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:32:"8:openstackmanager-sudoeroptions";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:31:"8:openstackmanager-deletesudoer";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:39:"8:openstackmanager-deletesudoer-confirm";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:37:"8:openstackmanager-createsudoerfailed";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:32:"8:openstackmanager-createdsudoer";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:33:"8:openstackmanager-backsudoerlist";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:38:"8:openstackmanager-addadditionalsudoer";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:32:"8:openstackmanager-deletedsudoer";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:37:"8:openstackmanager-failedeletedsudoer";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:29:"8:openstackmanager-sudoerlist";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:31:"8:openstackmanager-modifysudoer";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:37:"8:openstackmanager-modifysudoerfailed";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:33:"8:openstackmanager-modifiedsudoer";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:36:"8:openstackmanager-nonexistantsudoer";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:34:"8:openstackmanager-novapuppetgroup";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:34:"8:openstackmanager-puppetgrouplist";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:36:"8:openstackmanager-puppetallprojects";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:36:"8:openstackmanager-createpuppetgroup";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:37:"8:openstackmanager-createdpuppetgroup";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:42:"8:openstackmanager-createpuppetgroupfailed";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:38:"8:openstackmanager-backpuppetgrouplist";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:33:"8:openstackmanager-addpuppetclass";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:35:"8:openstackmanager-addedpuppetclass";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:41:"8:openstackmanager-failedtoaddpuppetclass";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:34:"8:openstackmanager-puppetclassname";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:43:"8:openstackmanager-removepuppetgroupconfirm";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:36:"8:openstackmanager-deletepuppetgroup";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:37:"8:openstackmanager-deletedpuppetgroup";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:42:"8:openstackmanager-deletepuppetgroupfailed";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:36:"8:openstackmanager-modifypuppetgroup";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:38:"8:openstackmanager-modifiedpuppetgroup";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:44:"8:openstackmanager-failedtomodifypuppetgroup";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:29:"8:openstackmanager-puppetvars";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:31:"8:openstackmanager-addpuppetvar";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:32:"8:openstackmanager-puppetvarname";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:36:"8:openstackmanager-puppetvarposition";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:33:"8:openstackmanager-addedpuppetvar";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:39:"8:openstackmanager-failedtoaddpuppetvar";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:34:"8:openstackmanager-modifypuppetvar";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:36:"8:openstackmanager-modifiedpuppetvar";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:42:"8:openstackmanager-failedtomodifypuppetvar";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:34:"8:openstackmanager-puppetgroupname";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:38:"8:openstackmanager-puppetgroupposition";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:36:"8:openstackmanager-modifypuppetclass";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:44:"8:openstackmanager-failedtomodifypuppetclass";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:38:"8:openstackmanager-puppetclassposition";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:30:"8:openstackmanager-puppetgroup";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:38:"8:openstackmanager-modifiedpuppetclass";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:36:"8:openstackmanager-removepuppetclass";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:43:"8:openstackmanager-removepuppetclassconfirm";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:37:"8:openstackmanager-deletedpuppetclass";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:44:"8:openstackmanager-failedtodeletepuppetclass";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:34:"8:openstackmanager-removepuppetvar";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:41:"8:openstackmanager-removepuppetvarconfirm";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:35:"8:openstackmanager-deletedpuppetvar";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:42:"8:openstackmanager-failedtodeletepuppetvar";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:32:"8:openstackmanager-email-subject";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:29:"8:openstackmanager-email-body";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:21:"8:right-manageproject";a:3:{i:0;R:8034;i:1;R:799;i:2;R:3234;}s:11:"8:poem-desc";a:3:{i:0;s:8:"ext-poem";i:1;R:799;i:2;R:3234;}s:12:"8:indexpages";a:3:{i:0;s:17:"ext-proofreadpage";i:1;R:799;i:2;R:3234;}s:19:"8:pageswithoutscans";a:3:{i:0;R:8359;i:1;R:799;i:2;R:3234;}s:20:"8:proofreadpage_desc";a:3:{i:0;R:8359;i:1;R:799;i:2;R:3234;}s:25:"8:proofreadpage_namespace";a:3:{i:0;R:8359;i:1;R:799;i:2;R:3234;}s:31:"8:proofreadpage_index_namespace";a:3:{i:0;R:8359;i:1;R:799;i:2;R:3234;}s:21:"8:proofreadpage_image";a:3:{i:0;R:8359;i:1;R:799;i:2;R:3234;}s:21:"8:proofreadpage_index";a:3:{i:0;R:8359;i:1;R:799;i:2;R:3234;}s:30:"8:proofreadpage_index_expected";a:3:{i:0;R:8359;i:1;R:799;i:2;R:3234;}s:28:"8:proofreadpage_nosuch_index";a:3:{i:0;R:8359;i:1;R:799;i:2;R:3234;}s:27:"8:proofreadpage_nosuch_file";a:3:{i:0;R:8359;i:1;R:799;i:2;R:3234;}s:23:"8:proofreadpage_badpage";a:3:{i:0;R:8359;i:1;R:799;i:2;R:3234;}s:27:"8:proofreadpage_badpagetext";a:3:{i:0;R:8359;i:1;R:799;i:2;R:3234;}s:25:"8:proofreadpage_indexdupe";a:3:{i:0;R:8359;i:1;R:799;i:2;R:3234;}s:29:"8:proofreadpage_indexdupetext";a:3:{i:0;R:8359;i:1;R:799;i:2;R:3234;}s:23:"8:proofreadpage_nologin";a:3:{i:0;R:8359;i:1;R:799;i:2;R:3234;}s:27:"8:proofreadpage_nologintext";a:3:{i:0;R:8359;i:1;R:799;i:2;R:3234;}s:26:"8:proofreadpage_notallowed";a:3:{i:0;R:8359;i:1;R:799;i:2;R:3234;}s:30:"8:proofreadpage_notallowedtext";a:3:{i:0;R:8359;i:1;R:799;i:2;R:3234;}s:31:"8:proofreadpage_number_expected";a:3:{i:0;R:8359;i:1;R:799;i:2;R:3234;}s:34:"8:proofreadpage_interval_too_large";a:3:{i:0;R:8359;i:1;R:799;i:2;R:3234;}s:32:"8:proofreadpage_invalid_interval";a:3:{i:0;R:8359;i:1;R:799;i:2;R:3234;}s:24:"8:proofreadpage_nextpage";a:3:{i:0;R:8359;i:1;R:799;i:2;R:3234;}s:24:"8:proofreadpage_prevpage";a:3:{i:0;R:8359;i:1;R:799;i:2;R:3234;}s:22:"8:proofreadpage_header";a:3:{i:0;R:8359;i:1;R:799;i:2;R:3234;}s:20:"8:proofreadpage_body";a:3:{i:0;R:8359;i:1;R:799;i:2;R:3234;}s:22:"8:proofreadpage_footer";a:3:{i:0;R:8359;i:1;R:799;i:2;R:3234;}s:29:"8:proofreadpage_toggleheaders";a:3:{i:0;R:8359;i:1;R:799;i:2;R:3234;}s:33:"8:proofreadpage_quality0_category";a:3:{i:0;R:8359;i:1;R:799;i:2;R:3234;}s:33:"8:proofreadpage_quality1_category";a:3:{i:0;R:8359;i:1;R:799;i:2;R:3234;}s:33:"8:proofreadpage_quality2_category";a:3:{i:0;R:8359;i:1;R:799;i:2;R:3234;}s:33:"8:proofreadpage_quality3_category";a:3:{i:0;R:8359;i:1;R:799;i:2;R:3234;}s:33:"8:proofreadpage_quality4_category";a:3:{i:0;R:8359;i:1;R:799;i:2;R:3234;}s:32:"8:proofreadpage_quality0_message";a:3:{i:0;R:8359;i:1;R:799;i:2;R:3234;}s:32:"8:proofreadpage_quality1_message";a:3:{i:0;R:8359;i:1;R:799;i:2;R:3234;}s:32:"8:proofreadpage_quality2_message";a:3:{i:0;R:8359;i:1;R:799;i:2;R:3234;}s:32:"8:proofreadpage_quality3_message";a:3:{i:0;R:8359;i:1;R:799;i:2;R:3234;}s:32:"8:proofreadpage_quality4_message";a:3:{i:0;R:8359;i:1;R:799;i:2;R:3234;}s:33:"8:proofreadpage_index_listofpages";a:3:{i:0;R:8359;i:1;R:799;i:2;R:3234;}s:29:"8:proofreadpage_image_message";a:3:{i:0;R:8359;i:1;R:799;i:2;R:3234;}s:27:"8:proofreadpage_page_status";a:3:{i:0;R:8359;i:1;R:799;i:2;R:3234;}s:29:"8:proofreadpage_js_attributes";a:3:{i:0;R:8359;i:1;R:799;i:2;R:3234;}s:32:"8:proofreadpage_index_attributes";a:3:{i:0;R:8359;i:1;R:799;i:2;R:3234;}s:30:"8:proofreadpage_default_header";a:3:{i:0;R:8359;i:1;R:799;i:2;R:3234;}s:30:"8:proofreadpage_default_footer";a:3:{i:0;R:8359;i:1;R:799;i:2;R:3234;}s:21:"8:proofreadpage_pages";a:3:{i:0;R:8359;i:1;R:799;i:2;R:3234;}s:32:"8:proofreadpage_specialpage_text";a:3:{i:0;R:8359;i:1;R:799;i:2;R:3234;}s:34:"8:proofreadpage_specialpage_legend";a:3:{i:0;R:8359;i:1;R:799;i:2;R:3234;}s:22:"8:proofreadpage_source";a:3:{i:0;R:8359;i:1;R:799;i:2;R:3234;}s:30:"8:proofreadpage_source_message";a:3:{i:0;R:8359;i:1;R:799;i:2;R:3234;}s:19:"8:right-pagequality";a:3:{i:0;R:8359;i:1;R:799;i:2;R:3234;}s:29:"8:proofreadpage-section-tools";a:3:{i:0;R:8359;i:1;R:799;i:2;R:3234;}s:26:"8:proofreadpage-group-zoom";a:3:{i:0;R:8359;i:1;R:799;i:2;R:3234;}s:27:"8:proofreadpage-group-other";a:3:{i:0;R:8359;i:1;R:799;i:2;R:3234;}s:46:"8:proofreadpage-button-toggle-visibility-label";a:3:{i:0;R:8359;i:1;R:799;i:2;R:3234;}s:37:"8:proofreadpage-button-zoom-out-label";a:3:{i:0;R:8359;i:1;R:799;i:2;R:3234;}s:39:"8:proofreadpage-button-reset-zoom-label";a:3:{i:0;R:8359;i:1;R:799;i:2;R:3234;}s:36:"8:proofreadpage-button-zoom-in-label";a:3:{i:0;R:8359;i:1;R:799;i:2;R:3234;}s:42:"8:proofreadpage-button-toggle-layout-label";a:3:{i:0;R:8359;i:1;R:799;i:2;R:3234;}s:45:"8:proofreadpage-preferences-showheaders-label";a:3:{i:0;R:8359;i:1;R:799;i:2;R:3234;}s:12:"8:ratedpages";a:4:{i:0;s:29:"ext-readerfeedback-ratedpages";i:1;R:799;i:2;R:3234;i:3;s:24:"ext-readerfeedback-0-all";}s:16:"8:ratedpages-leg";a:4:{i:0;R:8419;i:1;R:799;i:2;R:3234;i:3;R:8420;}s:17:"8:ratedpages-list";a:4:{i:0;R:8419;i:1;R:799;i:2;R:3234;i:3;R:8420;}s:17:"8:ratedpages-none";a:4:{i:0;R:8419;i:1;R:799;i:2;R:3234;i:3;R:8420;}s:19:"8:ratedpages-graphs";a:4:{i:0;R:8419;i:1;R:799;i:2;R:3234;i:3;R:8420;}s:18:"8:ratedpages-count";a:4:{i:0;R:8419;i:1;R:799;i:2;R:3234;i:3;R:8420;}s:15:"8:ratinghistory";a:4:{i:0;s:32:"ext-readerfeedback-ratinghistory";i:1;R:799;i:2;R:3234;i:3;R:8420;}s:19:"8:ratinghistory-leg";a:4:{i:0;R:8427;i:1;R:799;i:2;R:3234;i:3;R:8420;}s:19:"8:ratinghistory-tab";a:4:{i:0;R:8427;i:1;R:799;i:2;R:3234;i:3;R:8420;}s:20:"8:ratinghistory-link";a:4:{i:0;R:8427;i:1;R:799;i:2;R:3234;i:3;R:8420;}s:22:"8:ratinghistory-thanks";a:4:{i:0;R:8427;i:1;R:799;i:2;R:3234;i:3;R:8420;}s:22:"8:ratinghistory-period";a:4:{i:0;R:8427;i:1;R:799;i:2;R:3234;i:3;R:8420;}s:21:"8:ratinghistory-month";a:4:{i:0;R:8427;i:1;R:799;i:2;R:3234;i:3;R:8420;}s:23:"8:ratinghistory-3months";a:4:{i:0;R:8427;i:1;R:799;i:2;R:3234;i:3;R:8420;}s:20:"8:ratinghistory-year";a:4:{i:0;R:8427;i:1;R:799;i:2;R:3234;i:3;R:8420;}s:22:"8:ratinghistory-3years";a:4:{i:0;R:8427;i:1;R:799;i:2;R:3234;i:3;R:8420;}s:19:"8:ratinghistory-ave";a:4:{i:0;R:8427;i:1;R:799;i:2;R:3234;i:3;R:8420;}s:21:"8:ratinghistory-chart";a:4:{i:0;R:8427;i:1;R:799;i:2;R:3234;i:3;R:8420;}s:21:"8:ratinghistory-purge";a:4:{i:0;R:8427;i:1;R:799;i:2;R:3234;i:3;R:8420;}s:21:"8:ratinghistory-table";a:4:{i:0;R:8427;i:1;R:799;i:2;R:3234;i:3;R:8420;}s:21:"8:ratinghistory-users";a:4:{i:0;R:8427;i:1;R:799;i:2;R:3234;i:3;R:8420;}s:21:"8:ratinghistory-graph";a:4:{i:0;R:8427;i:1;R:799;i:2;R:3234;i:3;R:8420;}s:19:"8:ratinghistory-svg";a:4:{i:0;R:8427;i:1;R:799;i:2;R:3234;i:3;R:8420;}s:28:"8:ratinghistory-table-rating";a:4:{i:0;R:8427;i:1;R:799;i:2;R:3234;i:3;R:8420;}s:27:"8:ratinghistory-table-votes";a:4:{i:0;R:8427;i:1;R:799;i:2;R:3234;i:3;R:8420;}s:20:"8:ratinghistory-none";a:4:{i:0;R:8427;i:1;R:799;i:2;R:3234;i:3;R:8420;}s:23:"8:ratinghistory-ratings";a:4:{i:0;R:8427;i:1;R:799;i:2;R:3234;i:3;R:8420;}s:22:"8:ratinghistory-legend";a:4:{i:0;R:8427;i:1;R:799;i:2;R:3234;i:3;R:8420;}s:27:"8:ratinghistory-graph-scale";a:4:{i:0;R:8427;i:1;R:799;i:2;R:3234;i:3;R:8420;}s:16:"8:right-feedback";a:4:{i:0;R:8427;i:1;R:799;i:2;R:3234;i:3;R:8420;}s:21:"8:readerfeedback-desc";a:4:{i:0;s:33:"ext-readerfeedback-readerfeedback";i:1;R:799;i:2;R:3234;i:3;R:8420;}s:16:"8:readerfeedback";a:4:{i:0;R:8452;i:1;R:799;i:2;R:3234;i:3;R:8420;}s:21:"8:readerfeedback-text";a:4:{i:0;R:8452;i:1;R:799;i:2;R:3234;i:3;R:8420;}s:28:"8:readerfeedback-reliability";a:4:{i:0;R:8452;i:1;R:799;i:2;R:3234;i:3;R:8420;}s:29:"8:readerfeedback-completeness";a:4:{i:0;R:8452;i:1;R:799;i:2;R:3234;i:3;R:8420;}s:21:"8:readerfeedback-npov";a:4:{i:0;R:8452;i:1;R:799;i:2;R:3234;i:3;R:8420;}s:29:"8:readerfeedback-presentation";a:4:{i:0;R:8452;i:1;R:799;i:2;R:3234;i:3;R:8420;}s:24:"8:readerfeedback-overall";a:4:{i:0;R:8452;i:1;R:799;i:2;R:3234;i:3;R:8420;}s:27:"8:readerfeedback-level-none";a:4:{i:0;R:8452;i:1;R:799;i:2;R:3234;i:3;R:8420;}s:24:"8:readerfeedback-level-0";a:4:{i:0;R:8452;i:1;R:799;i:2;R:3234;i:3;R:8420;}s:24:"8:readerfeedback-level-1";a:4:{i:0;R:8452;i:1;R:799;i:2;R:3234;i:3;R:8420;}s:24:"8:readerfeedback-level-2";a:4:{i:0;R:8452;i:1;R:799;i:2;R:3234;i:3;R:8420;}s:24:"8:readerfeedback-level-3";a:4:{i:0;R:8452;i:1;R:799;i:2;R:3234;i:3;R:8420;}s:24:"8:readerfeedback-level-4";a:4:{i:0;R:8452;i:1;R:799;i:2;R:3234;i:3;R:8420;}s:23:"8:readerfeedback-submit";a:4:{i:0;R:8452;i:1;R:799;i:2;R:3234;i:3;R:8420;}s:21:"8:readerfeedback-main";a:4:{i:0;R:8452;i:1;R:799;i:2;R:3234;i:3;R:8420;}s:24:"8:readerfeedback-success";a:4:{i:0;R:8452;i:1;R:799;i:2;R:3234;i:3;R:8420;}s:22:"8:readerfeedback-voted";a:4:{i:0;R:8452;i:1;R:799;i:2;R:3234;i:3;R:8420;}s:22:"8:readerfeedback-error";a:4:{i:0;R:8452;i:1;R:799;i:2;R:3234;i:3;R:8420;}s:27:"8:readerfeedback-submitting";a:4:{i:0;R:8452;i:1;R:799;i:2;R:3234;i:3;R:8420;}s:25:"8:readerfeedback-finished";a:4:{i:0;R:8452;i:1;R:799;i:2;R:3234;i:3;R:8420;}s:26:"8:readerfeedback-tagfilter";a:4:{i:0;R:8452;i:1;R:799;i:2;R:3234;i:3;R:8420;}s:27:"8:readerfeedback-tierfilter";a:4:{i:0;R:8452;i:1;R:799;i:2;R:3234;i:3;R:8420;}s:26:"8:readerfeedback-tier-high";a:4:{i:0;R:8452;i:1;R:799;i:2;R:3234;i:3;R:8420;}s:28:"8:readerfeedback-tier-medium";a:4:{i:0;R:8452;i:1;R:799;i:2;R:3234;i:3;R:8420;}s:26:"8:readerfeedback-tier-poor";a:4:{i:0;R:8452;i:1;R:799;i:2;R:3234;i:3;R:8420;}s:23:"8:tooltip-ca-ratinghist";a:4:{i:0;R:8452;i:1;R:799;i:2;R:3234;i:3;R:8420;}s:29:"8:specialpages-group-feedback";a:4:{i:0;R:8452;i:1;R:799;i:2;R:3234;i:3;R:8420;}s:26:"8:readerfeedback-ak-review";a:4:{i:0;R:8452;i:1;R:799;i:2;R:3234;i:3;R:8420;}s:26:"8:readerfeedback-tt-review";a:4:{i:0;R:8452;i:1;R:799;i:2;R:3234;i:3;R:8420;}s:10:"8:rss-desc";a:3:{i:0;s:7:"ext-rss";i:1;R:799;i:2;R:3234;}s:11:"8:rss-error";a:3:{i:0;R:8483;i:1;R:799;i:2;R:3234;}s:11:"8:rss-empty";a:3:{i:0;R:8483;i:1;R:799;i:2;R:3234;}s:17:"8:rss-fetch-nourl";a:3:{i:0;R:8483;i:1;R:799;i:2;R:3234;}s:17:"8:rss-invalid-url";a:3:{i:0;R:8483;i:1;R:799;i:2;R:3234;}s:17:"8:rss-parse-error";a:3:{i:0;R:8483;i:1;R:799;i:2;R:3234;}s:19:"8:rss-ns-permission";a:3:{i:0;R:8483;i:1;R:799;i:2;R:3234;}s:20:"8:rss-url-permission";a:3:{i:0;R:8483;i:1;R:799;i:2;R:3234;}s:10:"8:rss-item";a:3:{i:0;R:8483;i:1;R:799;i:2;R:3234;}s:10:"8:rss-feed";a:3:{i:0;R:8483;i:1;R:799;i:2;R:3234;}s:14:"8:scanset-desc";a:3:{i:0;s:11:"ext-scanset";i:1;R:799;i:2;R:3234;}s:17:"8:scanset_no_name";a:3:{i:0;R:8494;i:1;R:799;i:2;R:3234;}s:22:"8:scanset_invalid_name";a:3:{i:0;R:8494;i:1;R:799;i:2;R:3234;}s:35:"8:scanset_unrecognised_index_format";a:3:{i:0;R:8494;i:1;R:799;i:2;R:3234;}s:23:"8:scanset_opendir_error";a:3:{i:0;R:8494;i:1;R:799;i:2;R:3234;}s:18:"8:scanset_no_files";a:3:{i:0;R:8494;i:1;R:799;i:2;R:3234;}s:20:"8:scanset_no_volumes";a:3:{i:0;R:8494;i:1;R:799;i:2;R:3234;}s:28:"8:scanset_missing_index_file";a:3:{i:0;R:8494;i:1;R:799;i:2;R:3234;}s:26:"8:scanset_index_file_error";a:3:{i:0;R:8494;i:1;R:799;i:2;R:3234;}s:24:"8:scanset_invalid_volume";a:3:{i:0;R:8494;i:1;R:799;i:2;R:3234;}s:14:"8:scanset_next";a:3:{i:0;R:8494;i:1;R:799;i:2;R:3234;}s:14:"8:scanset_prev";a:3:{i:0;R:8494;i:1;R:799;i:2;R:3234;}s:10:"8:shorturl";a:3:{i:0;s:12:"ext-shorturl";i:1;R:799;i:2;R:3234;}s:15:"8:shorturl-desc";a:3:{i:0;R:8507;i:1;R:799;i:2;R:3234;}s:26:"8:shorturl-not-found-title";a:3:{i:0;R:8507;i:1;R:799;i:2;R:3234;}s:28:"8:shorturl-not-found-message";a:3:{i:0;R:8507;i:1;R:799;i:2;R:3234;}s:24:"8:shorturl-toolbox-title";a:3:{i:0;R:8507;i:1;R:799;i:2;R:3234;}s:23:"8:shorturl-toolbox-text";a:3:{i:0;R:8507;i:1;R:799;i:2;R:3234;}s:18:"8:skinperpage-desc";a:3:{i:0;s:15:"ext-skinperpage";i:1;R:799;i:2;R:3234;}s:16:"8:activestrategy";a:3:{i:0;s:31:"ext-strategywiki-activestrategy";i:1;R:799;i:2;R:3234;}s:22:"8:active-strategy-desc";a:3:{i:0;R:8516;i:1;R:799;i:2;R:3234;}s:23:"8:active-strategy-intro";a:3:{i:0;R:8516;i:1;R:799;i:2;R:3234;}s:8:"8:nedits";a:3:{i:0;R:8516;i:1;R:799;i:2;R:3234;}s:11:"8:spl3-desc";a:3:{i:0;s:16:"ext-subpagelist3";i:1;R:799;i:2;R:3234;}s:12:"8:spl3_debug";a:3:{i:0;R:8521;i:1;R:799;i:2;R:3234;}s:17:"8:spl3_nosubpages";a:3:{i:0;R:8521;i:1;R:799;i:2;R:3234;}s:22:"8:swiftcloudfiles-desc";a:3:{i:0;s:19:"ext-swiftcloudfiles";i:1;R:799;i:2;R:3234;}s:22:"8:syntaxhighlight-desc";a:3:{i:0;s:24:"ext-syntaxhighlightgeshi";i:1;R:799;i:2;R:3234;}s:25:"8:syntaxhighlight-specify";a:3:{i:0;R:8527;i:1;R:799;i:2;R:3234;}s:27:"8:syntaxhighlight-supported";a:3:{i:0;R:8527;i:1;R:799;i:2;R:3234;}s:29:"8:syntaxhighlight-err-loading";a:3:{i:0;R:8527;i:1;R:799;i:2;R:3234;}s:30:"8:syntaxhighlight-err-language";a:3:{i:0;R:8527;i:1;R:799;i:2;R:3234;}s:11:"8:geshi.css";a:3:{i:0;R:8527;i:1;R:799;i:2;R:3234;}s:15:"8:titlekey-desc";a:3:{i:0;s:12:"ext-titlekey";i:1;R:799;i:2;R:3234;}s:11:"8:translate";a:4:{i:0;s:18:"ext-translate-core";i:1;R:799;i:2;R:3234;i:3;s:19:"ext-translate-0-all";}s:16:"8:translate-desc";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:19:"8:translate-showsub";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:24:"8:translate-grouplisting";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:30:"8:translate-grouplisting-empty";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:23:"8:translate-taskui-view";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:31:"8:translate-taskui-untranslated";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:27:"8:translate-taskui-optional";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:30:"8:translate-taskui-suggestions";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:30:"8:translate-taskui-acceptqueue";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:28:"8:translate-taskui-reviewall";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:33:"8:translate-taskui-export-to-file";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:31:"8:translate-taskui-export-as-po";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:29:"8:translate-taction-translate";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:29:"8:translate-taction-proofread";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:26:"8:translate-taction-lstats";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:26:"8:translate-taction-mstats";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:26:"8:translate-taction-export";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:28:"8:translate-taction-disabled";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:33:"8:translate-page-no-such-language";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:30:"8:translate-page-no-such-group";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:25:"8:translate-page-disabled";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:32:"8:translate-page-settings-legend";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:22:"8:translate-page-group";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:25:"8:translate-page-language";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:22:"8:translate-page-limit";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:29:"8:translate-page-limit-option";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:18:"8:translate-submit";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:34:"8:translate-page-navigation-legend";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:24:"8:translate-page-showing";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:28:"8:translate-page-showing-all";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:29:"8:translate-page-showing-none";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:29:"8:translate-page-paging-links";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:16:"8:translate-next";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:16:"8:translate-prev";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:35:"8:translate-page-description-legend";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:40:"8:translate-page-description-hasoptional";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:45:"8:translate-page-description-hasoptional-open";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:21:"8:translate-page-edit";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:19:"8:translate-ext-url";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:20:"8:translate-optional";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:19:"8:translate-ignored";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:23:"8:translate-edit-jsopen";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:22:"8:translate-edit-title";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:27:"8:translate-edit-definition";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:28:"8:translate-edit-translation";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:27:"8:translate-edit-contribute";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:31:"8:translate-edit-no-information";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:28:"8:translate-edit-information";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:35:"8:translate-edit-in-other-languages";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:26:"8:translate-edit-committed";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:25:"8:translate-edit-warnings";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:23:"8:translate-edit-tmsugs";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:31:"8:translate-edit-tmmatch-source";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:24:"8:translate-edit-tmmatch";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:26:"8:translate-use-suggestion";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:25:"8:translate-edit-tab-prev";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:25:"8:translate-edit-tab-next";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:25:"8:translate-edit-tab-list";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:29:"8:translate-edit-nopermission";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:30:"8:translate-edit-askpermission";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:28:"8:translate-edit-tag-warning";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:26:"8:translate-magic-pagename";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:22:"8:translate-magic-help";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:24:"8:translate-magic-module";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:24:"8:translate-magic-submit";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:27:"8:translate-magic-cm-export";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:35:"8:translate-magic-nothing-to-export";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:26:"8:translate-magic-cm-to-be";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:28:"8:translate-magic-cm-current";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:29:"8:translate-magic-cm-original";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:28:"8:translate-magic-cm-comment";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:25:"8:translate-magic-cm-save";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:33:"8:translate-magic-cm-updatedusing";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:31:"8:translate-magic-cm-savefailed";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:25:"8:translate-magic-special";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:23:"8:translate-magic-words";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:27:"8:translate-magic-namespace";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:26:"8:translate-magic-notsaved";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:24:"8:translate-magic-errors";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:23:"8:translate-magic-saved";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:29:"8:translate-checks-parameters";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:37:"8:translate-checks-parameters-unknown";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:26:"8:translate-checks-balance";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:24:"8:translate-checks-links";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:32:"8:translate-checks-links-missing";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:24:"8:translate-checks-xhtml";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:25:"8:translate-checks-plural";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:27:"8:translate-checks-pagename";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:25:"8:translate-checks-format";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:25:"8:translate-checks-escape";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:37:"8:translate-checks-parametersnotequal";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:28:"8:translate-checks-malformed";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:34:"8:translate-checks-fudforum-syntax";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:29:"8:translate-pref-nonewsletter";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:31:"8:translate-pref-editassistlang";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:17:"8:prefs-translate";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:36:"8:translate-pref-editassistlang-help";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:35:"8:translate-pref-editassistlang-bad";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:23:"8:translate-pref-jsedit";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:17:"8:right-translate";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:24:"8:right-translate-manage";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:25:"8:action-translate-manage";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:24:"8:right-translate-import";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:25:"8:action-translate-import";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:31:"8:right-translate-messagereview";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:29:"8:right-translate-groupreview";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:33:"8:translate-rc-translation-filter";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:36:"8:translate-rc-translation-filter-no";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:38:"8:translate-rc-translation-filter-only";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:40:"8:translate-rc-translation-filter-filter";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:38:"8:translate-rc-translation-filter-site";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:18:"8:translationstats";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:23:"8:translate-stats-edits";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:23:"8:translate-stats-users";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:31:"8:translate-stats-registrations";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:25:"8:translate-stats-reviews";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:27:"8:translate-stats-reviewers";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:24:"8:translate-statsf-intro";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:26:"8:translate-statsf-options";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:24:"8:translate-statsf-width";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:25:"8:translate-statsf-height";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:23:"8:translate-statsf-days";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:24:"8:translate-statsf-start";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:24:"8:translate-statsf-scale";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:31:"8:translate-statsf-scale-months";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:30:"8:translate-statsf-scale-weeks";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:29:"8:translate-statsf-scale-days";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:30:"8:translate-statsf-scale-hours";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:24:"8:translate-statsf-count";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:30:"8:translate-statsf-count-edits";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:30:"8:translate-statsf-count-users";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:38:"8:translate-statsf-count-registrations";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:32:"8:translate-statsf-count-reviews";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:34:"8:translate-statsf-count-reviewers";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:27:"8:translate-statsf-language";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:24:"8:translate-statsf-group";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:25:"8:translate-statsf-submit";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:24:"8:translate-tag-category";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:25:"8:translate-tag-page-desc";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:29:"8:translate-tag-fuzzy-comment";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:28:"8:translate-tag-fuzzy-reason";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:28:"8:translate-sidebar-alltrans";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:14:"8:translations";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:22:"8:translations-summary";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:35:"8:translate-translations-no-message";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:29:"8:translate-translations-none";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:30:"8:translate-translations-count";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:39:"8:translate-translations-fieldset-title";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:36:"8:translate-translations-messagename";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:32:"8:translate-translations-project";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:43:"8:translate-translations-including-no-param";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:38:"8:translate-translations-history-short";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:15:"8:languagestats";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:23:"8:languagestats-summary";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:25:"8:languagestats-stats-for";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:34:"8:languagestats-recenttranslations";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:32:"8:translate-langstats-incomplete";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:28:"8:translate-langstats-expand";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:30:"8:translate-langstats-collapse";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:31:"8:translate-langstats-expandall";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:33:"8:translate-langstats-collapseall";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:25:"8:translate-language-code";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:36:"8:translate-language-code-field-name";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:29:"8:translate-suppress-complete";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:22:"8:translate-ls-noempty";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:20:"8:translate-language";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:17:"8:translate-total";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:24:"8:translate-untranslated";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:31:"8:translate-percentage-complete";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:28:"8:translate-percentage-fuzzy";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:25:"8:translate-nothing-to-do";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:33:"8:translate-languagestats-overall";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:21:"8:translate-ls-submit";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:27:"8:translate-ls-column-group";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:24:"8:translate-mgs-pagename";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:24:"8:translate-mgs-fieldset";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:21:"8:translate-mgs-group";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:26:"8:translate-mgs-nocomplete";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:23:"8:translate-mgs-noempty";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:22:"8:translate-mgs-submit";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:31:"8:translate-mgs-column-language";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:22:"8:translate-mgs-totals";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:29:"8:translate-mgs-invalid-group";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:23:"8:translate-mgs-nothing";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:20:"8:supportedlanguages";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:28:"8:supportedlanguages-summary";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:32:"8:supportedlanguages-colorlegend";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:33:"8:supportedlanguages-localsummary";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:31:"8:supportedlanguages-portallink";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:38:"8:supportedlanguages-portallink-nocldr";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:32:"8:supportedlanguages-translators";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:39:"8:supportedlanguages-recenttranslations";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:26:"8:supportedlanguages-count";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:29:"8:supportedlanguages-activity";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:16:"8:translate-save";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:21:"8:translate-jssti-add";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:21:"8:managemessagegroups";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:25:"8:translate-manage-groups";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:29:"8:translate-manage-listgroups";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:33:"8:translate-manage-listgroups-old";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:24:"8:translate-managegroups";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:27:"8:translate-manage-newgroup";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:26:"8:translate-manage-cacheat";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:34:"8:translate-manage-return-to-group";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:27:"8:translate-manage-modlangs";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:30:"8:translate-manage-modlang-new";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:30:"8:translate-manage-import-diff";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:29:"8:translate-manage-import-new";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:33:"8:translate-manage-import-deleted";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:32:"8:translate-manage-action-import";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:34:"8:translate-manage-action-conflict";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:32:"8:translate-manage-action-ignore";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:31:"8:translate-manage-action-fuzzy";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:25:"8:translate-manage-submit";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:28:"8:translate-manage-nochanges";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:34:"8:translate-manage-nochanges-other";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:31:"8:translate-manage-inconsistent";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:26:"8:translate-manage-toolong";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:28:"8:translate-manage-import-ok";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:30:"8:translate-manage-import-noks";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:32:"8:translate-manage-import-ignore";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:33:"8:translate-manage-import-summary";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:35:"8:translate-manage-conflict-summary";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:32:"8:translate-manage-fuzzy-summary";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:31:"8:translate-manage-import-fuzzy";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:30:"8:translate-manage-import-done";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:33:"8:translate-manage-import-rebuild";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:27:"8:translate-manage-intro-en";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:30:"8:translate-manage-intro-other";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:27:"8:translate-manage-subtitle";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:37:"8:translate-manage-import-rebuild-all";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:20:"8:importtranslations";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:27:"8:translate-import-from-url";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:28:"8:translate-import-from-wiki";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:29:"8:translate-import-from-local";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:23:"8:translate-import-load";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:41:"8:translate-import-err-type-not-supported";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:32:"8:translate-import-err-dl-failed";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:32:"8:translate-import-err-ul-failed";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:36:"8:translate-import-err-invalid-title";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:35:"8:translate-import-err-no-such-file";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:34:"8:translate-import-err-stale-group";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:33:"8:translate-import-err-no-headers";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:31:"8:translate-import-err-warnings";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:22:"8:translate-js-summary";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:19:"8:translate-js-save";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:19:"8:translate-js-next";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:21:"8:translate-js-nonext";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:19:"8:translate-js-skip";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:26:"8:translate-js-save-failed";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:22:"8:translate-js-history";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:22:"8:translate-js-support";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:28:"8:translate-js-support-title";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:18:"8:translate-gs-pos";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:19:"8:translate-gs-code";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:24:"8:translate-gs-continent";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:23:"8:translate-gs-speakers";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:20:"8:translate-gs-score";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:23:"8:translate-gs-multiple";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:20:"8:translate-gs-count";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:20:"8:translate-gs-total";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:23:"8:translate-gs-avgscore";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:34:"8:translate-documentation-language";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:25:"8:translate-searchprofile";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:33:"8:translate-searchprofile-tooltip";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:33:"8:translate-search-languagefilter";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:27:"8:translate-search-nofilter";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:32:"8:translate-messagereview-submit";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:34:"8:translate-messagereview-progress";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:33:"8:translate-messagereview-failure";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:30:"8:translate-messagereview-done";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:33:"8:translate-messagereview-reviews";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:40:"8:translate-messagereview-reviewswithyou";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:36:"8:translate-messagereview-reviewsyou";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:27:"8:api-error-invalidrevision";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:26:"8:api-error-unknownmessage";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:24:"8:api-error-fuzzymessage";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:26:"8:api-error-owntranslation";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:34:"8:translate-messagereview-no-fuzzy";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:32:"8:translate-messagereview-no-own";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:30:"8:translate-messagereview-doit";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:24:"8:group-translate-proofr";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:31:"8:group-translate-proofr-member";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:28:"8:grouppage-translate-proofr";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:28:"8:group-translate-proofr.css";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:27:"8:group-translate-proofr.js";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:28:"8:log-name-translationreview";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:35:"8:log-description-translationreview";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:36:"8:logentry-translationreview-message";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:30:"8:logentry-groupreview-message";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:27:"8:translate-workflow-state-";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:26:"8:translate-workflowstatus";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:27:"8:translate-workflow-set-do";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:30:"8:translate-workflow-set-doing";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:29:"8:translate-workflow-set-done";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:41:"8:translate-workflow-set-error-alreadyset";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:40:"8:translate-workflow-autocreated-summary";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:26:"8:translate-stats-workflow";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:31:"8:translate-workflowgroup-label";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:30:"8:translate-workflowgroup-desc";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:34:"8:translate-dynagroup-recent-label";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:33:"8:translate-dynagroup-recent-desc";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:24:"8:translate-dynagroup-by";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:25:"8:translate-dynagroup-byc";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:26:"8:translate-dynagroup-last";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:27:"8:translate-dynagroup-lastc";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:19:"8:translate-gethelp";a:4:{i:0;R:8536;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:17:"8:pagetranslation";a:4:{i:0;s:29:"ext-translate-pagetranslation";i:1;R:799;i:2;R:3234;i:3;R:8537;}s:23:"8:right-pagetranslation";a:4:{i:0;R:8846;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:10:"8:tpt-desc";a:4:{i:0;R:8846;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:13:"8:tpt-section";a:4:{i:0;R:8846;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:17:"8:tpt-section-new";a:4:{i:0;R:8846;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:21:"8:tpt-section-deleted";a:4:{i:0;R:8846;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:14:"8:tpt-template";a:4:{i:0;R:8846;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:18:"8:tpt-templatediff";a:4:{i:0;R:8846;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:14:"8:tpt-diff-old";a:4:{i:0;R:8846;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:14:"8:tpt-diff-new";a:4:{i:0;R:8846;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:12:"8:tpt-submit";a:4:{i:0;R:8846;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:21:"8:tpt-sections-oldnew";a:4:{i:0;R:8846;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:22:"8:tpt-sections-deleted";a:4:{i:0;R:8846;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:23:"8:tpt-sections-template";a:4:{i:0;R:8846;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:20:"8:tpt-action-nofuzzy";a:4:{i:0;R:8846;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:14:"8:tpt-badtitle";a:4:{i:0;R:8846;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:16:"8:tpt-nosuchpage";a:4:{i:0;R:8846;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:17:"8:tpt-oldrevision";a:4:{i:0;R:8846;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:17:"8:tpt-notsuitable";a:4:{i:0;R:8846;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:12:"8:tpt-saveok";a:4:{i:0;R:8846;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:13:"8:tpt-badsect";a:4:{i:0;R:8846;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:20:"8:tpt-showpage-intro";a:4:{i:0;R:8846;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:18:"8:tpt-mark-summary";a:4:{i:0;R:8846;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:17:"8:tpt-edit-failed";a:4:{i:0;R:8846;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:15:"8:tpt-duplicate";a:4:{i:0;R:8846;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:20:"8:tpt-already-marked";a:4:{i:0;R:8846;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:14:"8:tpt-unmarked";a:4:{i:0;R:8846;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:18:"8:tpt-list-nopages";a:4:{i:0;R:8846;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:21:"8:tpt-new-pages-title";a:4:{i:0;R:8846;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:21:"8:tpt-old-pages-title";a:4:{i:0;R:8846;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:23:"8:tpt-other-pages-title";a:4:{i:0;R:8846;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:29:"8:tpt-discouraged-pages-title";a:4:{i:0;R:8846;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:15:"8:tpt-new-pages";a:4:{i:0;R:8846;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:15:"8:tpt-old-pages";a:4:{i:0;R:8846;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:17:"8:tpt-other-pages";a:4:{i:0;R:8846;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:23:"8:tpt-discouraged-pages";a:4:{i:0;R:8846;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:26:"8:tpt-select-prioritylangs";a:4:{i:0;R:8846;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:32:"8:tpt-select-prioritylangs-force";a:4:{i:0;R:8846;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:33:"8:tpt-select-prioritylangs-reason";a:4:{i:0;R:8846;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:28:"8:tpt-sections-prioritylangs";a:4:{i:0;R:8846;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:14:"8:tpt-rev-mark";a:4:{i:0;R:8846;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:16:"8:tpt-rev-unmark";a:4:{i:0;R:8846;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:20:"8:tpt-rev-discourage";a:4:{i:0;R:8846;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:19:"8:tpt-rev-encourage";a:4:{i:0;R:8846;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:22:"8:tpt-rev-mark-tooltip";a:4:{i:0;R:8846;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:24:"8:tpt-rev-unmark-tooltip";a:4:{i:0;R:8846;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:28:"8:tpt-rev-discourage-tooltip";a:4:{i:0;R:8846;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:27:"8:tpt-rev-encourage-tooltip";a:4:{i:0;R:8846;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:35:"8:translate-tag-translate-link-desc";a:4:{i:0;R:8846;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:24:"8:translate-tag-markthis";a:4:{i:0;R:8846;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:29:"8:translate-tag-markthisagain";a:4:{i:0;R:8846;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:22:"8:translate-tag-hasnew";a:4:{i:0;R:8846;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:23:"8:tpt-translation-intro";a:4:{i:0;R:8846;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:29:"8:tpt-translation-intro-fuzzy";a:4:{i:0;R:8846;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:22:"8:tpt-languages-legend";a:4:{i:0;R:8846;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:25:"8:tpt-languages-separator";a:4:{i:0;R:8846;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:20:"8:tpt-languages-zero";a:4:{i:0;R:8846;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:17:"8:tpt-target-page";a:4:{i:0;R:8846;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:18:"8:tpt-unknown-page";a:4:{i:0;R:8846;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:28:"8:tpt-translation-restricted";a:4:{i:0;R:8846;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:32:"8:tpt-discouraged-language-force";a:4:{i:0;R:8846;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:26:"8:tpt-discouraged-language";a:4:{i:0;R:8846;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:24:"8:tpt-priority-languages";a:4:{i:0;R:8846;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:20:"8:tpt-render-summary";a:4:{i:0;R:8846;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:19:"8:tpt-download-page";a:4:{i:0;R:8846;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:17:"8:aggregategroups";a:4:{i:0;R:8846;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:24:"8:tpt-aggregategroup-add";a:4:{i:0;R:8846;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:25:"8:tpt-aggregategroup-save";a:4:{i:0;R:8846;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:28:"8:tpt-aggregategroup-add-new";a:4:{i:0;R:8846;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:29:"8:tpt-aggregategroup-new-name";a:4:{i:0;R:8846;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:36:"8:tpt-aggregategroup-new-description";a:4:{i:0;R:8846;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:35:"8:tpt-aggregategroup-remove-confirm";a:4:{i:0;R:8846;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:15:"8:pt-parse-open";a:4:{i:0;R:8846;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:16:"8:pt-parse-close";a:4:{i:0;R:8846;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:17:"8:pt-parse-nested";a:4:{i:0;R:8846;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:19:"8:pt-shake-multiple";a:4:{i:0;R:8846;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:19:"8:pt-shake-position";a:4:{i:0;R:8846;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:16:"8:pt-shake-empty";a:4:{i:0;R:8846;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:15:"8:pt-log-header";a:4:{i:0;R:8846;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:13:"8:pt-log-name";a:4:{i:0;R:8846;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:13:"8:pt-log-mark";a:4:{i:0;R:8846;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:15:"8:pt-log-unmark";a:4:{i:0;R:8846;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:15:"8:pt-log-moveok";a:4:{i:0;R:8846;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:16:"8:pt-log-movenok";a:4:{i:0;R:8846;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:23:"8:pt-log-delete-full-ok";a:4:{i:0;R:8846;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:24:"8:pt-log-delete-full-nok";a:4:{i:0;R:8846;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:23:"8:pt-log-delete-lang-ok";a:4:{i:0;R:8846;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:24:"8:pt-log-delete-lang-nok";a:4:{i:0;R:8846;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:18:"8:pt-log-encourage";a:4:{i:0;R:8846;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:19:"8:pt-log-discourage";a:4:{i:0;R:8846;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:29:"8:pt-log-priority-langs-unset";a:4:{i:0;R:8846;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:23:"8:pt-log-priority-langs";a:4:{i:0;R:8846;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:29:"8:pt-log-priority-langs-force";a:4:{i:0;R:8846;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:33:"8:pt-log-aggregategroup-associate";a:4:{i:0;R:8846;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:34:"8:pt-log-aggregategroup-dissociate";a:4:{i:0;R:8846;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:19:"8:pt-movepage-title";a:4:{i:0;R:8846;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:22:"8:pt-movepage-blockers";a:4:{i:0;R:8846;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:31:"8:pt-movepage-block-base-exists";a:4:{i:0;R:8846;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:32:"8:pt-movepage-block-base-invalid";a:4:{i:0;R:8846;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:29:"8:pt-movepage-block-tp-exists";a:4:{i:0;R:8846;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:30:"8:pt-movepage-block-tp-invalid";a:4:{i:0;R:8846;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:34:"8:pt-movepage-block-section-exists";a:4:{i:0;R:8846;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:35:"8:pt-movepage-block-section-invalid";a:4:{i:0;R:8846;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:34:"8:pt-movepage-block-subpage-exists";a:4:{i:0;R:8846;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:35:"8:pt-movepage-block-subpage-invalid";a:4:{i:0;R:8846;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:24:"8:pt-movepage-list-pages";a:4:{i:0;R:8846;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:30:"8:pt-movepage-list-translation";a:4:{i:0;R:8846;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:26:"8:pt-movepage-list-section";a:4:{i:0;R:8846;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:24:"8:pt-movepage-list-other";a:4:{i:0;R:8846;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:24:"8:pt-movepage-list-count";a:4:{i:0;R:8846;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:20:"8:pt-movepage-legend";a:4:{i:0;R:8846;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:21:"8:pt-movepage-current";a:4:{i:0;R:8846;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:17:"8:pt-movepage-new";a:4:{i:0;R:8846;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:20:"8:pt-movepage-reason";a:4:{i:0;R:8846;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:22:"8:pt-movepage-subpages";a:4:{i:0;R:8846;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:26:"8:pt-movepage-action-check";a:4:{i:0;R:8846;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:28:"8:pt-movepage-action-perform";a:4:{i:0;R:8846;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:26:"8:pt-movepage-action-other";a:4:{i:0;R:8846;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:19:"8:pt-movepage-intro";a:4:{i:0;R:8846;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:23:"8:pt-movepage-logreason";a:4:{i:0;R:8846;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:21:"8:pt-movepage-started";a:4:{i:0;R:8846;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:16:"8:pt-locked-page";a:4:{i:0;R:8846;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:26:"8:pt-deletepage-lang-title";a:4:{i:0;R:8846;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:26:"8:pt-deletepage-full-title";a:4:{i:0;R:8846;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:29:"8:pt-deletepage-invalid-title";a:4:{i:0;R:8846;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:28:"8:pt-deletepage-invalid-text";a:4:{i:0;R:8846;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:28:"8:pt-deletepage-action-check";a:4:{i:0;R:8846;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:30:"8:pt-deletepage-action-perform";a:4:{i:0;R:8846;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:28:"8:pt-deletepage-action-other";a:4:{i:0;R:8846;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:27:"8:pt-deletepage-lang-legend";a:4:{i:0;R:8846;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:27:"8:pt-deletepage-full-legend";a:4:{i:0;R:8846;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:26:"8:pt-deletepage-any-legend";a:4:{i:0;R:8846;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:23:"8:pt-deletepage-current";a:4:{i:0;R:8846;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:22:"8:pt-deletepage-reason";a:4:{i:0;R:8846;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:24:"8:pt-deletepage-subpages";a:4:{i:0;R:8846;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:26:"8:pt-deletepage-list-pages";a:4:{i:0;R:8846;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:32:"8:pt-deletepage-list-translation";a:4:{i:0;R:8846;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:28:"8:pt-deletepage-list-section";a:4:{i:0;R:8846;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:26:"8:pt-deletepage-list-other";a:4:{i:0;R:8846;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:26:"8:pt-deletepage-list-count";a:4:{i:0;R:8846;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:30:"8:pt-deletepage-full-logreason";a:4:{i:0;R:8846;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:30:"8:pt-deletepage-lang-logreason";a:4:{i:0;R:8846;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:23:"8:pt-deletepage-started";a:4:{i:0;R:8846;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:21:"8:pt-deletepage-intro";a:4:{i:0;R:8846;i:1;R:799;i:2;R:3234;i:3;R:8537;}s:17:"8:trustedxff-desc";a:3:{i:0;s:14:"ext-trustedxff";i:1;R:799;i:2;R:3234;}s:22:"8:uploadblacklist-desc";a:3:{i:0;s:19:"ext-uploadblacklist";i:1;R:799;i:2;R:3234;}s:24:"8:userdailycontribs-desc";a:3:{i:0;s:21:"ext-userdailycontribs";i:1;R:799;i:2;R:3234;}s:10:"8:vipstest";a:3:{i:0;s:14:"ext-vipsscaler";i:1;R:799;i:2;R:3234;}s:17:"8:vipsscaler-desc";a:3:{i:0;R:8997;i:1;R:799;i:2;R:3234;}s:25:"8:vipsscaler-invalid-file";a:3:{i:0;R:8997;i:1;R:799;i:2;R:3234;}s:26:"8:vipsscaler-invalid-width";a:3:{i:0;R:8997;i:1;R:799;i:2;R:3234;}s:28:"8:vipsscaler-invalid-sharpen";a:3:{i:0;R:8997;i:1;R:799;i:2;R:3234;}s:24:"8:vipsscaler-thumb-error";a:3:{i:0;R:8997;i:1;R:799;i:2;R:3234;}s:24:"8:vipsscaler-form-legend";a:3:{i:0;R:8997;i:1;R:799;i:2;R:3234;}s:23:"8:vipsscaler-form-width";a:3:{i:0;R:8997;i:1;R:799;i:2;R:3234;}s:22:"8:vipsscaler-form-file";a:3:{i:0;R:8997;i:1;R:799;i:2;R:3234;}s:32:"8:vipsscaler-form-sharpen-radius";a:3:{i:0;R:8997;i:1;R:799;i:2;R:3234;}s:26:"8:vipsscaler-form-bilinear";a:3:{i:0;R:8997;i:1;R:799;i:2;R:3234;}s:24:"8:vipsscaler-form-submit";a:3:{i:0;R:8997;i:1;R:799;i:2;R:3234;}s:26:"8:vipsscaler-thumbs-legend";a:3:{i:0;R:8997;i:1;R:799;i:2;R:3234;}s:24:"8:vipsscaler-thumbs-help";a:3:{i:0;R:8997;i:1;R:799;i:2;R:3234;}s:32:"8:vipsscaler-thumbs-switch-label";a:3:{i:0;R:8997;i:1;R:799;i:2;R:3234;}s:26:"8:vipsscaler-default-thumb";a:3:{i:0;R:8997;i:1;R:799;i:2;R:3234;}s:23:"8:vipsscaler-vips-thumb";a:3:{i:0;R:8997;i:1;R:799;i:2;R:3234;}s:22:"8:vipsscaler-show-both";a:3:{i:0;R:8997;i:1;R:799;i:2;R:3234;}s:25:"8:vipsscaler-show-default";a:3:{i:0;R:8997;i:1;R:799;i:2;R:3234;}s:22:"8:vipsscaler-show-vips";a:3:{i:0;R:8997;i:1;R:799;i:2;R:3234;}s:23:"8:right-vipsscaler-test";a:3:{i:0;R:8997;i:1;R:799;i:2;R:3234;}s:14:"8:visualeditor";a:3:{i:0;s:16:"ext-visualeditor";i:1;R:799;i:2;R:3234;}s:21:"8:visualeditorsandbox";a:3:{i:0;R:9019;i:1;R:799;i:2;R:3234;}s:19:"8:visualeditor-desc";a:3:{i:0;R:9019;i:1;R:799;i:2;R:3234;}s:28:"8:visualeditor-sandbox-title";a:3:{i:0;R:9019;i:1;R:799;i:2;R:3234;}s:31:"8:visualeditor-tooltip-wikitext";a:3:{i:0;R:9019;i:1;R:799;i:2;R:3234;}s:27:"8:visualeditor-tooltip-json";a:3:{i:0;R:9019;i:1;R:799;i:2;R:3234;}s:27:"8:visualeditor-tooltip-html";a:3:{i:0;R:9019;i:1;R:799;i:2;R:3234;}s:29:"8:visualeditor-tooltip-render";a:3:{i:0;R:9019;i:1;R:799;i:2;R:3234;}s:30:"8:visualeditor-tooltip-history";a:3:{i:0;R:9019;i:1;R:799;i:2;R:3234;}s:27:"8:visualeditor-tooltip-help";a:3:{i:0;R:9019;i:1;R:799;i:2;R:3234;}s:30:"8:visualeditor-feedback-prompt";a:3:{i:0;R:9019;i:1;R:799;i:2;R:3234;}s:36:"8:visualeditor-feedback-dialog-title";a:3:{i:0;R:9019;i:1;R:799;i:2;R:3234;}s:16:"8:wikihiero-desc";a:3:{i:0;s:13:"ext-wikihiero";i:1;R:799;i:2;R:3234;}s:13:"8:hieroglyphs";a:3:{i:0;R:9032;i:1;R:799;i:2;R:3234;}s:29:"8:wikihiero-special-page-text";a:3:{i:0;R:9032;i:1;R:799;i:2;R:3234;}s:17:"8:wikihiero-input";a:3:{i:0;R:9032;i:1;R:799;i:2;R:3234;}s:18:"8:wikihiero-result";a:3:{i:0;R:9032;i:1;R:799;i:2;R:3234;}s:18:"8:wikihiero-syntax";a:3:{i:0;R:9032;i:1;R:799;i:2;R:3234;}s:19:"8:wikihiero-th-code";a:3:{i:0;R:9032;i:1;R:799;i:2;R:3234;}s:22:"8:wikihiero-th-meaning";a:3:{i:0;R:9032;i:1;R:799;i:2;R:3234;}s:22:"8:wikihiero-th-example";a:3:{i:0;R:9032;i:1;R:799;i:2;R:3234;}s:21:"8:wikihiero-th-result";a:3:{i:0;R:9032;i:1;R:799;i:2;R:3234;}s:21:"8:wikihiero-separator";a:3:{i:0;R:9032;i:1;R:799;i:2;R:3234;}s:15:"8:wikihiero-eol";a:3:{i:0;R:9032;i:1;R:799;i:2;R:3234;}s:25:"8:wikihiero-superposition";a:3:{i:0;R:9032;i:1;R:799;i:2;R:3234;}s:25:"8:wikihiero-juxtaposition";a:3:{i:0;R:9032;i:1;R:799;i:2;R:3234;}s:18:"8:wikihiero-mirror";a:3:{i:0;R:9032;i:1;R:799;i:2;R:3234;}s:16:"8:wikihiero-void";a:3:{i:0;R:9032;i:1;R:799;i:2;R:3234;}s:21:"8:wikihiero-half-void";a:3:{i:0;R:9032;i:1;R:799;i:2;R:3234;}s:19:"8:wikihiero-comment";a:3:{i:0;R:9032;i:1;R:799;i:2;R:3234;}s:22:"8:wikihiero-load-error";a:3:{i:0;R:9032;i:1;R:799;i:2;R:3234;}s:22:"8:wikihiero-category-a";a:3:{i:0;R:9032;i:1;R:799;i:2;R:3234;}s:22:"8:wikihiero-category-b";a:3:{i:0;R:9032;i:1;R:799;i:2;R:3234;}s:22:"8:wikihiero-category-c";a:3:{i:0;R:9032;i:1;R:799;i:2;R:3234;}s:22:"8:wikihiero-category-d";a:3:{i:0;R:9032;i:1;R:799;i:2;R:3234;}s:22:"8:wikihiero-category-e";a:3:{i:0;R:9032;i:1;R:799;i:2;R:3234;}s:22:"8:wikihiero-category-f";a:3:{i:0;R:9032;i:1;R:799;i:2;R:3234;}s:22:"8:wikihiero-category-g";a:3:{i:0;R:9032;i:1;R:799;i:2;R:3234;}s:22:"8:wikihiero-category-h";a:3:{i:0;R:9032;i:1;R:799;i:2;R:3234;}s:22:"8:wikihiero-category-i";a:3:{i:0;R:9032;i:1;R:799;i:2;R:3234;}s:22:"8:wikihiero-category-k";a:3:{i:0;R:9032;i:1;R:799;i:2;R:3234;}s:22:"8:wikihiero-category-l";a:3:{i:0;R:9032;i:1;R:799;i:2;R:3234;}s:22:"8:wikihiero-category-m";a:3:{i:0;R:9032;i:1;R:799;i:2;R:3234;}s:22:"8:wikihiero-category-n";a:3:{i:0;R:9032;i:1;R:799;i:2;R:3234;}s:22:"8:wikihiero-category-o";a:3:{i:0;R:9032;i:1;R:799;i:2;R:3234;}s:22:"8:wikihiero-category-p";a:3:{i:0;R:9032;i:1;R:799;i:2;R:3234;}s:22:"8:wikihiero-category-q";a:3:{i:0;R:9032;i:1;R:799;i:2;R:3234;}s:22:"8:wikihiero-category-r";a:3:{i:0;R:9032;i:1;R:799;i:2;R:3234;}s:22:"8:wikihiero-category-s";a:3:{i:0;R:9032;i:1;R:799;i:2;R:3234;}s:22:"8:wikihiero-category-t";a:3:{i:0;R:9032;i:1;R:799;i:2;R:3234;}s:22:"8:wikihiero-category-u";a:3:{i:0;R:9032;i:1;R:799;i:2;R:3234;}s:22:"8:wikihiero-category-v";a:3:{i:0;R:9032;i:1;R:799;i:2;R:3234;}s:22:"8:wikihiero-category-w";a:3:{i:0;R:9032;i:1;R:799;i:2;R:3234;}s:22:"8:wikihiero-category-x";a:3:{i:0;R:9032;i:1;R:799;i:2;R:3234;}s:22:"8:wikihiero-category-y";a:3:{i:0;R:9032;i:1;R:799;i:2;R:3234;}s:22:"8:wikihiero-category-z";a:3:{i:0;R:9032;i:1;R:799;i:2;R:3234;}s:23:"8:wikihiero-category-aa";a:3:{i:0;R:9032;i:1;R:799;i:2;R:3234;}s:15:"8:wikilove-desc";a:3:{i:0;s:12:"ext-wikilove";i:1;R:799;i:2;R:3234;}s:10:"8:wikilove";a:3:{i:0;R:9078;i:1;R:799;i:2;R:3234;}s:28:"8:wikilove-enable-preference";a:3:{i:0;R:9078;i:1;R:799;i:2;R:3234;}s:19:"8:wikilove-tab-text";a:3:{i:0;R:9078;i:1;R:799;i:2;R:3234;}s:21:"8:tooltip-ca-wikilove";a:3:{i:0;R:9078;i:1;R:799;i:2;R:3234;}s:23:"8:wikilove-dialog-title";a:3:{i:0;R:9078;i:1;R:799;i:2;R:3234;}s:22:"8:wikilove-select-type";a:3:{i:0;R:9078;i:1;R:799;i:2;R:3234;}s:29:"8:wikilove-get-started-header";a:3:{i:0;R:9078;i:1;R:799;i:2;R:3234;}s:29:"8:wikilove-get-started-list-1";a:3:{i:0;R:9078;i:1;R:799;i:2;R:3234;}s:29:"8:wikilove-get-started-list-2";a:3:{i:0;R:9078;i:1;R:799;i:2;R:3234;}s:29:"8:wikilove-get-started-list-3";a:3:{i:0;R:9078;i:1;R:799;i:2;R:3234;}s:22:"8:wikilove-add-details";a:3:{i:0;R:9078;i:1;R:799;i:2;R:3234;}s:16:"8:wikilove-image";a:3:{i:0;R:9078;i:1;R:799;i:2;R:3234;}s:23:"8:wikilove-select-image";a:3:{i:0;R:9078;i:1;R:799;i:2;R:3234;}s:17:"8:wikilove-header";a:3:{i:0;R:9078;i:1;R:799;i:2;R:3234;}s:16:"8:wikilove-title";a:3:{i:0;R:9078;i:1;R:799;i:2;R:3234;}s:24:"8:wikilove-enter-message";a:3:{i:0;R:9078;i:1;R:799;i:2;R:3234;}s:19:"8:wikilove-omit-sig";a:3:{i:0;R:9078;i:1;R:799;i:2;R:3234;}s:24:"8:wikilove-image-example";a:3:{i:0;R:9078;i:1;R:799;i:2;R:3234;}s:25:"8:wikilove-button-preview";a:3:{i:0;R:9078;i:1;R:799;i:2;R:3234;}s:18:"8:wikilove-preview";a:3:{i:0;R:9078;i:1;R:799;i:2;R:3234;}s:17:"8:wikilove-notify";a:3:{i:0;R:9078;i:1;R:799;i:2;R:3234;}s:22:"8:wikilove-button-send";a:3:{i:0;R:9078;i:1;R:799;i:2;R:3234;}s:25:"8:wikilove-type-barnstars";a:3:{i:0;R:9078;i:1;R:799;i:2;R:3234;}s:26:"8:wikilove-barnstar-header";a:3:{i:0;R:9078;i:1;R:799;i:2;R:3234;}s:26:"8:wikilove-barnstar-select";a:3:{i:0;R:9078;i:1;R:799;i:2;R:3234;}s:35:"8:wikilove-barnstar-original-option";a:3:{i:0;R:9078;i:1;R:799;i:2;R:3234;}s:33:"8:wikilove-barnstar-original-desc";a:3:{i:0;R:9078;i:1;R:799;i:2;R:3234;}s:34:"8:wikilove-barnstar-original-title";a:3:{i:0;R:9078;i:1;R:799;i:2;R:3234;}s:33:"8:wikilove-barnstar-admins-option";a:3:{i:0;R:9078;i:1;R:799;i:2;R:3234;}s:31:"8:wikilove-barnstar-admins-desc";a:3:{i:0;R:9078;i:1;R:799;i:2;R:3234;}s:32:"8:wikilove-barnstar-admins-title";a:3:{i:0;R:9078;i:1;R:799;i:2;R:3234;}s:40:"8:wikilove-barnstar-antivandalism-option";a:3:{i:0;R:9078;i:1;R:799;i:2;R:3234;}s:38:"8:wikilove-barnstar-antivandalism-desc";a:3:{i:0;R:9078;i:1;R:799;i:2;R:3234;}s:39:"8:wikilove-barnstar-antivandalism-title";a:3:{i:0;R:9078;i:1;R:799;i:2;R:3234;}s:36:"8:wikilove-barnstar-diligence-option";a:3:{i:0;R:9078;i:1;R:799;i:2;R:3234;}s:34:"8:wikilove-barnstar-diligence-desc";a:3:{i:0;R:9078;i:1;R:799;i:2;R:3234;}s:35:"8:wikilove-barnstar-diligence-title";a:3:{i:0;R:9078;i:1;R:799;i:2;R:3234;}s:36:"8:wikilove-barnstar-diplomacy-option";a:3:{i:0;R:9078;i:1;R:799;i:2;R:3234;}s:34:"8:wikilove-barnstar-diplomacy-desc";a:3:{i:0;R:9078;i:1;R:799;i:2;R:3234;}s:35:"8:wikilove-barnstar-diplomacy-title";a:3:{i:0;R:9078;i:1;R:799;i:2;R:3234;}s:36:"8:wikilove-barnstar-goodhumor-option";a:3:{i:0;R:9078;i:1;R:799;i:2;R:3234;}s:34:"8:wikilove-barnstar-goodhumor-desc";a:3:{i:0;R:9078;i:1;R:799;i:2;R:3234;}s:35:"8:wikilove-barnstar-goodhumor-title";a:3:{i:0;R:9078;i:1;R:799;i:2;R:3234;}s:36:"8:wikilove-barnstar-brilliant-option";a:3:{i:0;R:9078;i:1;R:799;i:2;R:3234;}s:34:"8:wikilove-barnstar-brilliant-desc";a:3:{i:0;R:9078;i:1;R:799;i:2;R:3234;}s:35:"8:wikilove-barnstar-brilliant-title";a:3:{i:0;R:9078;i:1;R:799;i:2;R:3234;}s:35:"8:wikilove-barnstar-citation-option";a:3:{i:0;R:9078;i:1;R:799;i:2;R:3234;}s:33:"8:wikilove-barnstar-citation-desc";a:3:{i:0;R:9078;i:1;R:799;i:2;R:3234;}s:34:"8:wikilove-barnstar-citation-title";a:3:{i:0;R:9078;i:1;R:799;i:2;R:3234;}s:35:"8:wikilove-barnstar-civility-option";a:3:{i:0;R:9078;i:1;R:799;i:2;R:3234;}s:33:"8:wikilove-barnstar-civility-desc";a:3:{i:0;R:9078;i:1;R:799;i:2;R:3234;}s:34:"8:wikilove-barnstar-civility-title";a:3:{i:0;R:9078;i:1;R:799;i:2;R:3234;}s:37:"8:wikilove-barnstar-copyeditor-option";a:3:{i:0;R:9078;i:1;R:799;i:2;R:3234;}s:35:"8:wikilove-barnstar-copyeditor-desc";a:3:{i:0;R:9078;i:1;R:799;i:2;R:3234;}s:36:"8:wikilove-barnstar-copyeditor-title";a:3:{i:0;R:9078;i:1;R:799;i:2;R:3234;}s:35:"8:wikilove-barnstar-defender-option";a:3:{i:0;R:9078;i:1;R:799;i:2;R:3234;}s:33:"8:wikilove-barnstar-defender-desc";a:3:{i:0;R:9078;i:1;R:799;i:2;R:3234;}s:34:"8:wikilove-barnstar-defender-title";a:3:{i:0;R:9078;i:1;R:799;i:2;R:3234;}s:34:"8:wikilove-barnstar-editors-option";a:3:{i:0;R:9078;i:1;R:799;i:2;R:3234;}s:32:"8:wikilove-barnstar-editors-desc";a:3:{i:0;R:9078;i:1;R:799;i:2;R:3234;}s:33:"8:wikilove-barnstar-editors-title";a:3:{i:0;R:9078;i:1;R:799;i:2;R:3234;}s:36:"8:wikilove-barnstar-designers-option";a:3:{i:0;R:9078;i:1;R:799;i:2;R:3234;}s:34:"8:wikilove-barnstar-designers-desc";a:3:{i:0;R:9078;i:1;R:799;i:2;R:3234;}s:35:"8:wikilove-barnstar-designers-title";a:3:{i:0;R:9078;i:1;R:799;i:2;R:3234;}s:31:"8:wikilove-barnstar-half-option";a:3:{i:0;R:9078;i:1;R:799;i:2;R:3234;}s:29:"8:wikilove-barnstar-half-desc";a:3:{i:0;R:9078;i:1;R:799;i:2;R:3234;}s:30:"8:wikilove-barnstar-half-title";a:3:{i:0;R:9078;i:1;R:799;i:2;R:3234;}s:32:"8:wikilove-barnstar-minor-option";a:3:{i:0;R:9078;i:1;R:799;i:2;R:3234;}s:30:"8:wikilove-barnstar-minor-desc";a:3:{i:0;R:9078;i:1;R:799;i:2;R:3234;}s:31:"8:wikilove-barnstar-minor-title";a:3:{i:0;R:9078;i:1;R:799;i:2;R:3234;}s:35:"8:wikilove-barnstar-antispam-option";a:3:{i:0;R:9078;i:1;R:799;i:2;R:3234;}s:33:"8:wikilove-barnstar-antispam-desc";a:3:{i:0;R:9078;i:1;R:799;i:2;R:3234;}s:34:"8:wikilove-barnstar-antispam-title";a:3:{i:0;R:9078;i:1;R:799;i:2;R:3234;}s:40:"8:wikilove-barnstar-photographers-option";a:3:{i:0;R:9078;i:1;R:799;i:2;R:3234;}s:38:"8:wikilove-barnstar-photographers-desc";a:3:{i:0;R:9078;i:1;R:799;i:2;R:3234;}s:39:"8:wikilove-barnstar-photographers-title";a:3:{i:0;R:9078;i:1;R:799;i:2;R:3234;}s:35:"8:wikilove-barnstar-kindness-option";a:3:{i:0;R:9078;i:1;R:799;i:2;R:3234;}s:33:"8:wikilove-barnstar-kindness-desc";a:3:{i:0;R:9078;i:1;R:799;i:2;R:3234;}s:34:"8:wikilove-barnstar-kindness-title";a:3:{i:0;R:9078;i:1;R:799;i:2;R:3234;}s:35:"8:wikilove-barnstar-reallife-option";a:3:{i:0;R:9078;i:1;R:799;i:2;R:3234;}s:33:"8:wikilove-barnstar-reallife-desc";a:3:{i:0;R:9078;i:1;R:799;i:2;R:3234;}s:34:"8:wikilove-barnstar-reallife-title";a:3:{i:0;R:9078;i:1;R:799;i:2;R:3234;}s:36:"8:wikilove-barnstar-resilient-option";a:3:{i:0;R:9078;i:1;R:799;i:2;R:3234;}s:34:"8:wikilove-barnstar-resilient-desc";a:3:{i:0;R:9078;i:1;R:799;i:2;R:3234;}s:35:"8:wikilove-barnstar-resilient-title";a:3:{i:0;R:9078;i:1;R:799;i:2;R:3234;}s:34:"8:wikilove-barnstar-rosetta-option";a:3:{i:0;R:9078;i:1;R:799;i:2;R:3234;}s:32:"8:wikilove-barnstar-rosetta-desc";a:3:{i:0;R:9078;i:1;R:799;i:2;R:3234;}s:33:"8:wikilove-barnstar-rosetta-title";a:3:{i:0;R:9078;i:1;R:799;i:2;R:3234;}s:34:"8:wikilove-barnstar-special-option";a:3:{i:0;R:9078;i:1;R:799;i:2;R:3234;}s:32:"8:wikilove-barnstar-special-desc";a:3:{i:0;R:9078;i:1;R:799;i:2;R:3234;}s:33:"8:wikilove-barnstar-special-title";a:3:{i:0;R:9078;i:1;R:799;i:2;R:3234;}s:34:"8:wikilove-barnstar-surreal-option";a:3:{i:0;R:9078;i:1;R:799;i:2;R:3234;}s:32:"8:wikilove-barnstar-surreal-desc";a:3:{i:0;R:9078;i:1;R:799;i:2;R:3234;}s:33:"8:wikilove-barnstar-surreal-title";a:3:{i:0;R:9078;i:1;R:799;i:2;R:3234;}s:35:"8:wikilove-barnstar-teamwork-option";a:3:{i:0;R:9078;i:1;R:799;i:2;R:3234;}s:33:"8:wikilove-barnstar-teamwork-desc";a:3:{i:0;R:9078;i:1;R:799;i:2;R:3234;}s:34:"8:wikilove-barnstar-teamwork-title";a:3:{i:0;R:9078;i:1;R:799;i:2;R:3234;}s:36:"8:wikilove-barnstar-technical-option";a:3:{i:0;R:9078;i:1;R:799;i:2;R:3234;}s:34:"8:wikilove-barnstar-technical-desc";a:3:{i:0;R:9078;i:1;R:799;i:2;R:3234;}s:35:"8:wikilove-barnstar-technical-title";a:3:{i:0;R:9078;i:1;R:799;i:2;R:3234;}s:35:"8:wikilove-barnstar-tireless-option";a:3:{i:0;R:9078;i:1;R:799;i:2;R:3234;}s:33:"8:wikilove-barnstar-tireless-desc";a:3:{i:0;R:9078;i:1;R:799;i:2;R:3234;}s:34:"8:wikilove-barnstar-tireless-title";a:3:{i:0;R:9078;i:1;R:799;i:2;R:3234;}s:34:"8:wikilove-barnstar-writers-option";a:3:{i:0;R:9078;i:1;R:799;i:2;R:3234;}s:32:"8:wikilove-barnstar-writers-desc";a:3:{i:0;R:9078;i:1;R:799;i:2;R:3234;}s:33:"8:wikilove-barnstar-writers-title";a:3:{i:0;R:9078;i:1;R:799;i:2;R:3234;}s:20:"8:wikilove-type-food";a:3:{i:0;R:9078;i:1;R:799;i:2;R:3234;}s:22:"8:wikilove-food-select";a:3:{i:0;R:9078;i:1;R:799;i:2;R:3234;}s:30:"8:wikilove-food-baklava-option";a:3:{i:0;R:9078;i:1;R:799;i:2;R:3234;}s:28:"8:wikilove-food-baklava-desc";a:3:{i:0;R:9078;i:1;R:799;i:2;R:3234;}s:30:"8:wikilove-food-baklava-header";a:3:{i:0;R:9078;i:1;R:799;i:2;R:3234;}s:27:"8:wikilove-food-beer-option";a:3:{i:0;R:9078;i:1;R:799;i:2;R:3234;}s:25:"8:wikilove-food-beer-desc";a:3:{i:0;R:9078;i:1;R:799;i:2;R:3234;}s:27:"8:wikilove-food-beer-header";a:3:{i:0;R:9078;i:1;R:799;i:2;R:3234;}s:30:"8:wikilove-food-brownie-option";a:3:{i:0;R:9078;i:1;R:799;i:2;R:3234;}s:28:"8:wikilove-food-brownie-desc";a:3:{i:0;R:9078;i:1;R:799;i:2;R:3234;}s:30:"8:wikilove-food-brownie-header";a:3:{i:0;R:9078;i:1;R:799;i:2;R:3234;}s:32:"8:wikilove-food-bubbletea-option";a:3:{i:0;R:9078;i:1;R:799;i:2;R:3234;}s:30:"8:wikilove-food-bubbletea-desc";a:3:{i:0;R:9078;i:1;R:799;i:2;R:3234;}s:32:"8:wikilove-food-bubbletea-header";a:3:{i:0;R:9078;i:1;R:799;i:2;R:3234;}s:35:"8:wikilove-food-cheeseburger-option";a:3:{i:0;R:9078;i:1;R:799;i:2;R:3234;}s:33:"8:wikilove-food-cheeseburger-desc";a:3:{i:0;R:9078;i:1;R:799;i:2;R:3234;}s:35:"8:wikilove-food-cheeseburger-header";a:3:{i:0;R:9078;i:1;R:799;i:2;R:3234;}s:29:"8:wikilove-food-cookie-option";a:3:{i:0;R:9078;i:1;R:799;i:2;R:3234;}s:27:"8:wikilove-food-cookie-desc";a:3:{i:0;R:9078;i:1;R:799;i:2;R:3234;}s:29:"8:wikilove-food-cookie-header";a:3:{i:0;R:9078;i:1;R:799;i:2;R:3234;}s:29:"8:wikilove-food-coffee-option";a:3:{i:0;R:9078;i:1;R:799;i:2;R:3234;}s:27:"8:wikilove-food-coffee-desc";a:3:{i:0;R:9078;i:1;R:799;i:2;R:3234;}s:29:"8:wikilove-food-coffee-header";a:3:{i:0;R:9078;i:1;R:799;i:2;R:3234;}s:26:"8:wikilove-food-tea-option";a:3:{i:0;R:9078;i:1;R:799;i:2;R:3234;}s:24:"8:wikilove-food-tea-desc";a:3:{i:0;R:9078;i:1;R:799;i:2;R:3234;}s:26:"8:wikilove-food-tea-header";a:3:{i:0;R:9078;i:1;R:799;i:2;R:3234;}s:30:"8:wikilove-food-cupcake-option";a:3:{i:0;R:9078;i:1;R:799;i:2;R:3234;}s:28:"8:wikilove-food-cupcake-desc";a:3:{i:0;R:9078;i:1;R:799;i:2;R:3234;}s:30:"8:wikilove-food-cupcake-header";a:3:{i:0;R:9078;i:1;R:799;i:2;R:3234;}s:26:"8:wikilove-food-pie-option";a:3:{i:0;R:9078;i:1;R:799;i:2;R:3234;}s:24:"8:wikilove-food-pie-desc";a:3:{i:0;R:9078;i:1;R:799;i:2;R:3234;}s:26:"8:wikilove-food-pie-header";a:3:{i:0;R:9078;i:1;R:799;i:2;R:3234;}s:35:"8:wikilove-food-strawberries-option";a:3:{i:0;R:9078;i:1;R:799;i:2;R:3234;}s:33:"8:wikilove-food-strawberries-desc";a:3:{i:0;R:9078;i:1;R:799;i:2;R:3234;}s:35:"8:wikilove-food-strawberries-header";a:3:{i:0;R:9078;i:1;R:799;i:2;R:3234;}s:35:"8:wikilove-food-stroopwafels-option";a:3:{i:0;R:9078;i:1;R:799;i:2;R:3234;}s:33:"8:wikilove-food-stroopwafels-desc";a:3:{i:0;R:9078;i:1;R:799;i:2;R:3234;}s:35:"8:wikilove-food-stroopwafels-header";a:3:{i:0;R:9078;i:1;R:799;i:2;R:3234;}s:23:"8:wikilove-type-kittens";a:3:{i:0;R:9078;i:1;R:799;i:2;R:3234;}s:25:"8:wikilove-kittens-header";a:3:{i:0;R:9078;i:1;R:799;i:2;R:3234;}s:27:"8:wikilove-type-makeyourown";a:3:{i:0;R:9078;i:1;R:799;i:2;R:3234;}s:21:"8:wikilove-err-header";a:3:{i:0;R:9078;i:1;R:799;i:2;R:3234;}s:20:"8:wikilove-err-title";a:3:{i:0;R:9078;i:1;R:799;i:2;R:3234;}s:18:"8:wikilove-err-msg";a:3:{i:0;R:9078;i:1;R:799;i:2;R:3234;}s:20:"8:wikilove-err-image";a:3:{i:0;R:9078;i:1;R:799;i:2;R:3234;}s:24:"8:wikilove-err-image-bad";a:3:{i:0;R:9078;i:1;R:799;i:2;R:3234;}s:24:"8:wikilove-err-image-api";a:3:{i:0;R:9078;i:1;R:799;i:2;R:3234;}s:18:"8:wikilove-err-sig";a:3:{i:0;R:9078;i:1;R:799;i:2;R:3234;}s:22:"8:wikilove-err-gallery";a:3:{i:0;R:9078;i:1;R:799;i:2;R:3234;}s:28:"8:wikilove-err-gallery-again";a:3:{i:0;R:9078;i:1;R:799;i:2;R:3234;}s:26:"8:wikilove-err-preview-api";a:3:{i:0;R:9078;i:1;R:799;i:2;R:3234;}s:23:"8:wikilove-err-send-api";a:3:{i:0;R:9078;i:1;R:799;i:2;R:3234;}s:18:"8:wikilove-summary";a:3:{i:0;R:9078;i:1;R:799;i:2;R:3234;}s:23:"8:wikilove-what-is-this";a:3:{i:0;R:9078;i:1;R:799;i:2;R:3234;}s:28:"8:wikilove-what-is-this-link";a:3:{i:0;R:9078;i:1;R:799;i:2;R:3234;}s:23:"8:wikilove-anon-warning";a:3:{i:0;R:9078;i:1;R:799;i:2;R:3234;}s:23:"8:wikilove-commons-text";a:3:{i:0;R:9078;i:1;R:799;i:2;R:3234;}s:23:"8:wikilove-commons-link";a:3:{i:0;R:9078;i:1;R:799;i:2;R:3234;}s:22:"8:wikilove-commons-url";a:3:{i:0;R:9078;i:1;R:799;i:2;R:3234;}s:16:"8:wikilove-terms";a:3:{i:0;R:9078;i:1;R:799;i:2;R:3234;}s:21:"8:wikilove-terms-link";a:3:{i:0;R:9078;i:1;R:799;i:2;R:3234;}s:20:"8:wikilove-terms-url";a:3:{i:0;R:9078;i:1;R:799;i:2;R:3234;}s:13:"8:wikilove.js";a:3:{i:0;R:9078;i:1;R:799;i:2;R:3234;}s:12:"8:wminc-desc";a:3:{i:0;s:22:"ext-wikimediaincubator";i:1;R:799;i:2;R:3234;}s:14:"8:wminc-manual";a:3:{i:0;R:9249;i:1;R:799;i:2;R:3234;}s:17:"8:wminc-listwikis";a:3:{i:0;R:9249;i:1;R:799;i:2;R:3234;}s:16:"8:wminc-testwiki";a:3:{i:0;R:9249;i:1;R:799;i:2;R:3234;}s:21:"8:wminc-testwiki-code";a:3:{i:0;R:9249;i:1;R:799;i:2;R:3234;}s:21:"8:wminc-testwiki-none";a:3:{i:0;R:9249;i:1;R:799;i:2;R:3234;}s:25:"8:wminc-recentchanges-all";a:3:{i:0;R:9249;i:1;R:799;i:2;R:3234;}s:25:"8:wminc-prefinfo-language";a:3:{i:0;R:9249;i:1;R:799;i:2;R:3234;}s:21:"8:wminc-prefinfo-code";a:3:{i:0;R:9249;i:1;R:799;i:2;R:3234;}s:24:"8:wminc-prefinfo-project";a:3:{i:0;R:9249;i:1;R:799;i:2;R:3234;}s:22:"8:wminc-prefinfo-error";a:3:{i:0;R:9249;i:1;R:799;i:2;R:3234;}s:18:"8:wminc-error-help";a:3:{i:0;R:9249;i:1;R:799;i:2;R:3234;}s:29:"8:wminc-error-move-unprefixed";a:3:{i:0;R:9249;i:1;R:799;i:2;R:3234;}s:27:"8:wminc-error-wronglangcode";a:3:{i:0;R:9249;i:1;R:799;i:2;R:3234;}s:24:"8:wminc-error-unprefixed";a:3:{i:0;R:9249;i:1;R:799;i:2;R:3234;}s:32:"8:wminc-error-unprefixed-suggest";a:3:{i:0;R:9249;i:1;R:799;i:2;R:3234;}s:25:"8:wminc-error-wiki-exists";a:3:{i:0;R:9249;i:1;R:799;i:2;R:3234;}s:25:"8:wminc-error-wiki-sister";a:3:{i:0;R:9249;i:1;R:799;i:2;R:3234;}s:14:"8:randombytest";a:3:{i:0;R:9249;i:1;R:799;i:2;R:3234;}s:22:"8:randombytest-nopages";a:3:{i:0;R:9249;i:1;R:799;i:2;R:3234;}s:20:"8:wminc-viewuserlang";a:3:{i:0;R:9249;i:1;R:799;i:2;R:3234;}s:25:"8:wminc-viewuserlang-user";a:3:{i:0;R:9249;i:1;R:799;i:2;R:3234;}s:23:"8:wminc-viewuserlang-go";a:3:{i:0;R:9249;i:1;R:799;i:2;R:3234;}s:24:"8:wminc-userdoesnotexist";a:3:{i:0;R:9249;i:1;R:799;i:2;R:3234;}s:10:"8:wminc-ip";a:3:{i:0;R:9249;i:1;R:799;i:2;R:3234;}s:20:"8:right-viewuserlang";a:3:{i:0;R:9249;i:1;R:799;i:2;R:3234;}s:18:"8:group-test-sysop";a:3:{i:0;R:9249;i:1;R:799;i:2;R:3234;}s:25:"8:group-test-sysop-member";a:3:{i:0;R:9249;i:1;R:799;i:2;R:3234;}s:22:"8:grouppage-test-sysop";a:3:{i:0;R:9249;i:1;R:799;i:2;R:3234;}s:22:"8:group-test-sysop.css";a:3:{i:0;R:9249;i:1;R:799;i:2;R:3234;}s:21:"8:group-test-sysop.js";a:3:{i:0;R:9249;i:1;R:799;i:2;R:3234;}s:26:"8:wminc-code-macrolanguage";a:3:{i:0;R:9249;i:1;R:799;i:2;R:3234;}s:23:"8:wminc-code-collective";a:3:{i:0;R:9249;i:1;R:799;i:2;R:3234;}s:20:"8:wminc-code-retired";a:3:{i:0;R:9249;i:1;R:799;i:2;R:3234;}s:26:"8:wminc-listusers-testwiki";a:3:{i:0;R:9249;i:1;R:799;i:2;R:3234;}s:30:"8:wminc-search-nocreate-nopref";a:3:{i:0;R:9249;i:1;R:799;i:2;R:3234;}s:31:"8:wminc-search-nocreate-suggest";a:3:{i:0;R:9249;i:1;R:799;i:2;R:3234;}s:18:"8:wminc-searchwiki";a:3:{i:0;R:9249;i:1;R:799;i:2;R:3234;}s:28:"8:wminc-searchwiki-noproject";a:3:{i:0;R:9249;i:1;R:799;i:2;R:3234;}s:28:"8:wminc-searchwiki-noresults";a:3:{i:0;R:9249;i:1;R:799;i:2;R:3234;}s:32:"8:wminc-searchwiki-selectproject";a:3:{i:0;R:9249;i:1;R:799;i:2;R:3234;}s:32:"8:wminc-searchwiki-inputlanguage";a:3:{i:0;R:9249;i:1;R:799;i:2;R:3234;}s:21:"8:wminc-searchwiki-go";a:3:{i:0;R:9249;i:1;R:799;i:2;R:3234;}s:34:"8:wminc-searchwiki-multiplematches";a:3:{i:0;R:9249;i:1;R:799;i:2;R:3234;}s:33:"8:wminc-searchwiki-match-langcode";a:3:{i:0;R:9249;i:1;R:799;i:2;R:3234;}s:37:"8:wminc-searchwiki-match-userlangname";a:3:{i:0;R:9249;i:1;R:799;i:2;R:3234;}s:36:"8:wminc-searchwiki-match-englishname";a:3:{i:0;R:9249;i:1;R:799;i:2;R:3234;}s:35:"8:wminc-searchwiki-match-nativename";a:3:{i:0;R:9249;i:1;R:799;i:2;R:3234;}s:23:"8:wminc-searchwiki-goto";a:3:{i:0;R:9249;i:1;R:799;i:2;R:3234;}s:31:"8:wminc-searchwiki-gotoinfopage";a:3:{i:0;R:9249;i:1;R:799;i:2;R:3234;}s:22:"8:wminc-infopage-enter";a:3:{i:0;s:30:"ext-wikimediaincubatorinfopage";i:1;R:799;i:2;R:3234;}s:19:"8:wminc-unknownlang";a:3:{i:0;R:9300;i:1;R:799;i:2;R:3234;}s:22:"8:wminc-logo-wikipedia";a:3:{i:0;R:9300;i:1;R:799;i:2;R:3234;}s:23:"8:wminc-logo-wiktionary";a:3:{i:0;R:9300;i:1;R:799;i:2;R:3234;}s:22:"8:wminc-logo-wikibooks";a:3:{i:0;R:9300;i:1;R:799;i:2;R:3234;}s:21:"8:wminc-logo-wikinews";a:3:{i:0;R:9300;i:1;R:799;i:2;R:3234;}s:22:"8:wminc-logo-wikiquote";a:3:{i:0;R:9300;i:1;R:799;i:2;R:3234;}s:23:"8:wminc-logo-wikisource";a:3:{i:0;R:9300;i:1;R:799;i:2;R:3234;}s:24:"8:wminc-logo-wikiversity";a:3:{i:0;R:9300;i:1;R:799;i:2;R:3234;}s:22:"8:wminc-logo-meta-wiki";a:3:{i:0;R:9300;i:1;R:799;i:2;R:3234;}s:30:"8:wminc-logo-wikimedia-commons";a:3:{i:0;R:9300;i:1;R:799;i:2;R:3234;}s:24:"8:wminc-logo-wikispecies";a:3:{i:0;R:9300;i:1;R:799;i:2;R:3234;}s:22:"8:wminc-logo-mediawiki";a:3:{i:0;R:9300;i:1;R:799;i:2;R:3234;}s:18:"8:wminc-manual-url";a:3:{i:0;R:9300;i:1;R:799;i:2;R:3234;}s:24:"8:wminc-infopage-title-p";a:3:{i:0;R:9300;i:1;R:799;i:2;R:3234;}s:24:"8:wminc-infopage-title-b";a:3:{i:0;R:9300;i:1;R:799;i:2;R:3234;}s:24:"8:wminc-infopage-title-t";a:3:{i:0;R:9300;i:1;R:799;i:2;R:3234;}s:24:"8:wminc-infopage-title-q";a:3:{i:0;R:9300;i:1;R:799;i:2;R:3234;}s:24:"8:wminc-infopage-title-n";a:3:{i:0;R:9300;i:1;R:799;i:2;R:3234;}s:24:"8:wminc-infopage-title-s";a:3:{i:0;R:9300;i:1;R:799;i:2;R:3234;}s:24:"8:wminc-infopage-title-v";a:3:{i:0;R:9300;i:1;R:799;i:2;R:3234;}s:24:"8:wminc-infopage-welcome";a:3:{i:0;R:9300;i:1;R:799;i:2;R:3234;}s:33:"8:wminc-infopage-missingwiki-text";a:3:{i:0;R:9300;i:1;R:799;i:2;R:3234;}s:33:"8:wminc-infopage-option-startwiki";a:3:{i:0;R:9300;i:1;R:799;i:2;R:3234;}s:35:"8:wminc-infopage-option-startsister";a:3:{i:0;R:9300;i:1;R:799;i:2;R:3234;}s:42:"8:wminc-infopage-option-languages-existing";a:3:{i:0;R:9300;i:1;R:799;i:2;R:3234;}s:47:"8:wminc-infopage-option-sisterprojects-existing";a:3:{i:0;R:9300;i:1;R:799;i:2;R:3234;}s:44:"8:wminc-infopage-option-sisterprojects-other";a:3:{i:0;R:9300;i:1;R:799;i:2;R:3234;}s:36:"8:wminc-infopage-option-multilingual";a:3:{i:0;R:9300;i:1;R:799;i:2;R:3234;}s:31:"8:wminc-infopage-createmainpage";a:3:{i:0;R:9300;i:1;R:799;i:2;R:3234;}s:24:"8:wminc-infopage-prefill";a:3:{i:0;R:9300;i:1;R:799;i:2;R:3234;}s:27:"8:wminc-infopage-contribute";a:3:{i:0;R:9300;i:1;R:799;i:2;R:3234;}s:32:"8:wminc-infopage-status-imported";a:3:{i:0;R:9300;i:1;R:799;i:2;R:3234;}s:36:"8:wminc-infopage-status-closedsister";a:3:{i:0;R:9300;i:1;R:799;i:2;R:3234;}s:31:"8:wminc-infopage-status-created";a:3:{i:0;R:9300;i:1;R:799;i:2;R:3234;}s:39:"8:wminc-infopage-status-beforeincubator";a:3:{i:0;R:9300;i:1;R:799;i:2;R:3234;}s:23:"8:zeroratedmobileaccess";a:3:{i:0;s:25:"ext-zeroratedmobileaccess";i:1;R:799;i:2;R:3234;}s:31:"8:zero-rated-mobile-access-desc";a:3:{i:0;R:9337;i:1;R:799;i:2;R:3234;}s:33:"8:zero-rated-mobile-access-search";a:3:{i:0;R:9337;i:1;R:799;i:2;R:3234;}s:53:"8:zero-rated-mobile-access-language-options-wiki-page";a:3:{i:0;R:9337;i:1;R:799;i:2;R:3234;}s:52:"8:zero-rated-mobile-access-carrier-options-wiki-page";a:3:{i:0;R:9337;i:1;R:799;i:2;R:3234;}s:45:"8:zero-rated-mobile-access-language-selection";a:3:{i:0;R:9337;i:1;R:799;i:2;R:3234;}s:46:"8:zero-rated-mobile-access-home-page-selection";a:3:{i:0;R:9337;i:1;R:799;i:2;R:3234;}s:51:"8:zero-rated-mobile-access-home-page-selection-text";a:3:{i:0;R:9337;i:1;R:799;i:2;R:3234;}s:38:"8:zero-rated-mobile-access-banner-text";a:3:{i:0;R:9337;i:1;R:799;i:2;R:3234;}s:43:"8:zero-rated-mobile-access-banner-text-digi";a:3:{i:0;R:9337;i:1;R:799;i:2;R:3234;}s:48:"8:zero-rated-mobile-access-banner-text-wikimedia";a:3:{i:0;R:9337;i:1;R:799;i:2;R:3234;}s:51:"8:zero-rated-mobile-access-banner-text-data-charges";a:3:{i:0;R:9337;i:1;R:799;i:2;R:3234;}s:55:"8:zero-rated-mobile-access-banner-text-data-charges-yes";a:3:{i:0;R:9337;i:1;R:799;i:2;R:3234;}s:54:"8:zero-rated-mobile-access-banner-text-data-charges-no";a:3:{i:0;R:9337;i:1;R:799;i:2;R:3234;}s:46:"8:zero-rated-mobile-access-click-to-view-image";a:3:{i:0;R:9337;i:1;R:799;i:2;R:3234;}s:10:"8:abc-desc";a:2:{i:0;s:7:"ext-abc";i:1;R:799;}s:13:"8:abcdownload";a:2:{i:0;R:9353;i:1;R:799;}s:8:"8:abcabc";a:2:{i:0;R:9353;i:1;R:799;}s:8:"8:abcpdf";a:2:{i:0;R:9353;i:1;R:799;}s:7:"8:abcps";a:2:{i:0;R:9353;i:1;R:799;}s:9:"8:abcmidi";a:2:{i:0;R:9353;i:1;R:799;}s:11:"8:abcvorbis";a:2:{i:0;R:9353;i:1;R:799;}s:25:"8:absenteelandlord-reason";a:2:{i:0;s:20:"ext-absenteelandlord";i:1;R:799;}s:23:"8:absenteelandlord-desc";a:2:{i:0;R:9361;i:1;R:799;}s:21:"8:addmediawizard-desc";a:2:{i:0;s:18:"ext-addmediawizard";i:1;R:799;}s:24:"8:addmediawizard-loading";a:2:{i:0;R:9364;i:1;R:799;}s:31:"8:mwe-upload-stats-fileprogress";a:2:{i:0;s:27:"ext-addmediawizard-addmedia";i:1;R:799;}s:25:"8:mwe-upload-unknown-size";a:2:{i:0;R:9367;i:1;R:799;}s:19:"8:mwe-cancel-confim";a:2:{i:0;R:9367;i:1;R:799;}s:22:"8:mwe-successfulupload";a:2:{i:0;R:9367;i:1;R:799;}s:17:"8:mwe-uploaderror";a:2:{i:0;R:9367;i:1;R:799;}s:19:"8:mwe-uploadwarning";a:2:{i:0;R:9367;i:1;R:799;}s:19:"8:mwe-unknown-error";a:2:{i:0;R:9367;i:1;R:799;}s:20:"8:mwe-return-to-form";a:2:{i:0;R:9367;i:1;R:799;}s:27:"8:mwe-file-exists-duplicate";a:2:{i:0;R:9367;i:1;R:799;}s:16:"8:mwe-fileexists";a:2:{i:0;R:9367;i:1;R:799;}s:22:"8:mwe-fileexists-thumb";a:2:{i:0;R:9367;i:1;R:799;}s:19:"8:mwe-ignorewarning";a:2:{i:0;R:9367;i:1;R:799;}s:23:"8:mwe-file-thumbnail-no";a:2:{i:0;R:9367;i:1;R:799;}s:20:"8:mwe-go-to-resource";a:2:{i:0;R:9367;i:1;R:799;}s:23:"8:mwe-upload-misc-error";a:2:{i:0;R:9367;i:1;R:799;}s:34:"8:mwe-wgfogg_warning_bad_extension";a:2:{i:0;R:9367;i:1;R:799;}s:20:"8:mwe-thumbnail-more";a:2:{i:0;R:9367;i:1;R:799;}s:20:"8:mwe-license-header";a:2:{i:0;R:9367;i:1;R:799;}s:14:"8:mwe-filedesc";a:2:{i:0;R:9367;i:1;R:799;}s:16:"8:mwe-filesource";a:2:{i:0;R:9367;i:1;R:799;}s:16:"8:mwe-filestatus";a:2:{i:0;R:9367;i:1;R:799;}s:27:"8:mwe-loading-add-media-wiz";a:2:{i:0;R:9367;i:1;R:799;}s:19:"8:mwe-imported_from";a:2:{i:0;R:9367;i:1;R:799;}s:24:"8:mwe-import-description";a:2:{i:0;R:9367;i:1;R:799;}s:17:"8:mwe-select_file";a:2:{i:0;R:9367;i:1;R:799;}s:22:"8:mwe-license_cc-by-sa";a:2:{i:0;R:9367;i:1;R:799;}s:12:"8:mwe-upload";a:2:{i:0;R:9367;i:1;R:799;}s:18:"8:mwe-destfilename";a:2:{i:0;R:9367;i:1;R:799;}s:13:"8:mwe-summary";a:2:{i:0;R:9367;i:1;R:799;}s:18:"8:mwe-date-of-work";a:2:{i:0;R:9367;i:1;R:799;}s:24:"8:mwe-error_not_loggedin";a:2:{i:0;R:9367;i:1;R:799;}s:29:"8:mwe-error-not-loggedin-file";a:2:{i:0;R:9367;i:1;R:799;}s:24:"8:mwe-upload-in-progress";a:2:{i:0;R:9367;i:1;R:799;}s:21:"8:mwe-uploaded-status";a:2:{i:0;R:9367;i:1;R:799;}s:23:"8:mwe-transcoded-status";a:2:{i:0;R:9367;i:1;R:799;}s:29:"8:mwe-uploaded-time-remaining";a:2:{i:0;R:9367;i:1;R:799;}s:17:"8:mwe-upload-done";a:2:{i:0;R:9367;i:1;R:799;}s:22:"8:mwe-add_media_wizard";a:2:{i:0;R:9367;i:1;R:799;}s:18:"8:mwe-media_search";a:2:{i:0;R:9367;i:1;R:799;}s:19:"8:mwe-am-box_layout";a:2:{i:0;R:9367;i:1;R:799;}s:20:"8:mwe-am-list_layout";a:2:{i:0;R:9367;i:1;R:799;}s:21:"8:mwe-am-results_desc";a:2:{i:0;R:9367;i:1;R:799;}s:27:"8:mwe-am-results_desc_total";a:2:{i:0;R:9367;i:1;R:799;}s:21:"8:mwe-am-results_next";a:2:{i:0;R:9367;i:1;R:799;}s:21:"8:mwe-am-results_prev";a:2:{i:0;R:9367;i:1;R:799;}s:19:"8:mwe-am-no_results";a:2:{i:0;R:9367;i:1;R:799;}s:16:"8:mwe-upload_tab";a:2:{i:0;R:9367;i:1;R:799;}s:15:"8:mwe-am-layout";a:2:{i:0;R:9367;i:1;R:799;}s:22:"8:mwe-am-resource_edit";a:2:{i:0;R:9367;i:1;R:799;}s:31:"8:mwe-resource_description_page";a:2:{i:0;R:9367;i:1;R:799;}s:10:"8:mwe-link";a:2:{i:0;R:9367;i:1;R:799;}s:18:"8:mwe-am-do_insert";a:2:{i:0;R:9367;i:1;R:799;}s:14:"8:mwe-cc_title";a:2:{i:0;R:9367;i:1;R:799;}s:17:"8:mwe-cc_by_title";a:2:{i:0;R:9367;i:1;R:799;}s:17:"8:mwe-cc_nc_title";a:2:{i:0;R:9367;i:1;R:799;}s:17:"8:mwe-cc_nd_title";a:2:{i:0;R:9367;i:1;R:799;}s:17:"8:mwe-cc_sa_title";a:2:{i:0;R:9367;i:1;R:799;}s:17:"8:mwe-cc_pd_title";a:2:{i:0;R:9367;i:1;R:799;}s:21:"8:mwe-unknown_license";a:2:{i:0;R:9367;i:1;R:799;}s:22:"8:mwe-no-import-by-url";a:2:{i:0;R:9367;i:1;R:799;}s:31:"8:mwe-no-import-by-url-linktext";a:2:{i:0;R:9367;i:1;R:799;}s:18:"8:mwe-results_from";a:2:{i:0;R:9367;i:1;R:799;}s:29:"8:mwe-missing_desc_see_source";a:2:{i:0;R:9367;i:1;R:799;}s:21:"8:mwe-am-config_error";a:2:{i:0;R:9367;i:1;R:799;}s:25:"8:mwe-your-recent-uploads";a:2:{i:0;R:9367;i:1;R:799;}s:28:"8:mwe-your-recent-uploads-to";a:2:{i:0;R:9367;i:1;R:799;}s:23:"8:mwe-no_recent_uploads";a:2:{i:0;R:9367;i:1;R:799;}s:27:"8:mwe-not-logged-in-uploads";a:2:{i:0;R:9367;i:1;R:799;}s:22:"8:mwe-ie-eye-permision";a:2:{i:0;R:9367;i:1;R:799;}s:19:"8:mwe-upload-a-file";a:2:{i:0;R:9367;i:1;R:799;}s:22:"8:mwe-upload-a-file-to";a:2:{i:0;R:9367;i:1;R:799;}s:24:"8:mwe-resource_page_desc";a:2:{i:0;R:9367;i:1;R:799;}s:24:"8:mwe-edit_resource_desc";a:2:{i:0;R:9367;i:1;R:799;}s:26:"8:mwe-local_resource_title";a:2:{i:0;R:9367;i:1;R:799;}s:21:"8:mwe-watch_this_page";a:2:{i:0;R:9367;i:1;R:799;}s:24:"8:mwe-do_import_resource";a:2:{i:0;R:9367;i:1;R:799;}s:20:"8:mwe-update_preview";a:2:{i:0;R:9367;i:1;R:799;}s:27:"8:mwe-return-search-results";a:2:{i:0;R:9367;i:1;R:799;}s:21:"8:mwe-importing_asset";a:2:{i:0;R:9367;i:1;R:799;}s:29:"8:mwe-preview_insert_resource";a:2:{i:0;R:9367;i:1;R:799;}s:26:"8:mwe-do-more-modification";a:2:{i:0;R:9367;i:1;R:799;}s:23:"8:mwe-checking-resource";a:2:{i:0;R:9367;i:1;R:799;}s:27:"8:mwe-resource-needs-import";a:2:{i:0;R:9367;i:1;R:799;}s:31:"8:mwe-warning-upload-to-commons";a:2:{i:0;R:9367;i:1;R:799;}s:30:"8:mwe-local-upload-policy-link";a:2:{i:0;R:9367;i:1;R:799;}s:15:"8:mwe-ftype-svg";a:2:{i:0;R:9367;i:1;R:799;}s:15:"8:mwe-ftype-jpg";a:2:{i:0;R:9367;i:1;R:799;}s:15:"8:mwe-ftype-png";a:2:{i:0;R:9367;i:1;R:799;}s:15:"8:mwe-ftype-oga";a:2:{i:0;R:9367;i:1;R:799;}s:15:"8:mwe-ftype-ogg";a:2:{i:0;R:9367;i:1;R:799;}s:15:"8:mwe-ftype-unk";a:2:{i:0;R:9367;i:1;R:799;}s:22:"8:mwe-am-commons-title";a:2:{i:0;R:9367;i:1;R:799;}s:16:"8:mwe-am-commons";a:2:{i:0;R:9367;i:1;R:799;}s:22:"8:mwe-am-kaltura-title";a:2:{i:0;R:9367;i:1;R:799;}s:16:"8:mwe-am-kaltura";a:2:{i:0;R:9367;i:1;R:799;}s:24:"8:mwe-am-this_wiki-title";a:2:{i:0;R:9367;i:1;R:799;}s:23:"8:mwe-am-this_wiki-desc";a:2:{i:0;R:9367;i:1;R:799;}s:26:"8:mwe-am-archive_org-title";a:2:{i:0;R:9367;i:1;R:799;}s:25:"8:mwe-am-archive_org-desc";a:2:{i:0;R:9367;i:1;R:799;}s:21:"8:mwe-am-flickr-title";a:2:{i:0;R:9367;i:1;R:799;}s:20:"8:mwe-am-flickr-desc";a:2:{i:0;R:9367;i:1;R:799;}s:22:"8:mwe-am-metavid-title";a:2:{i:0;R:9367;i:1;R:799;}s:21:"8:mwe-am-metavid-desc";a:2:{i:0;R:9367;i:1;R:799;}s:23:"8:mwe-am-search-timeout";a:2:{i:0;R:9367;i:1;R:799;}s:30:"8:mwe-upload-transcoded-status";a:2:{i:0;R:9367;i:1;R:799;}s:34:"8:mwe-upload-transcode-in-progress";a:2:{i:0;R:9367;i:1;R:799;}s:18:"8:mwe-upload-multi";a:2:{i:0;R:9367;i:1;R:799;}s:19:"8:mwe-review-upload";a:2:{i:0;R:9367;i:1;R:799;}s:19:"8:mwe-clipedit-crop";a:2:{i:0;s:27:"ext-addmediawizard-clipedit";i:1;R:799;}s:25:"8:mwe-clipedit-apply_crop";a:2:{i:0;R:9476;i:1;R:799;}s:25:"8:mwe-clipedit-reset_crop";a:2:{i:0;R:9476;i:1;R:799;}s:32:"8:mwe-clipedit-insert_image_page";a:2:{i:0;R:9476;i:1;R:799;}s:35:"8:mwe-clipedit-insert_into_sequence";a:2:{i:0;R:9476;i:1;R:799;}s:29:"8:mwe-clipedit-preview_insert";a:2:{i:0;R:9476;i:1;R:799;}s:34:"8:mwe-clipedit-cancel_image_insert";a:2:{i:0;R:9476;i:1;R:799;}s:28:"8:mwe-clipedit-sc_attributes";a:2:{i:0;R:9476;i:1;R:799;}s:29:"8:mwe-clipedit-sc_inoutpoints";a:2:{i:0;R:9476;i:1;R:799;}s:26:"8:mwe-clipedit-sc_overlays";a:2:{i:0;R:9476;i:1;R:799;}s:23:"8:mwe-clipedit-sc_audio";a:2:{i:0;R:9476;i:1;R:799;}s:26:"8:mwe-clipedit-sc_duration";a:2:{i:0;R:9476;i:1;R:799;}s:34:"8:mwe-clipedit-template_properties";a:2:{i:0;R:9476;i:1;R:799;}s:27:"8:mwe-clipedit-custom_title";a:2:{i:0;R:9476;i:1;R:799;}s:30:"8:mwe-clipedit-edit_properties";a:2:{i:0;R:9476;i:1;R:799;}s:31:"8:mwe-clipedit-other_properties";a:2:{i:0;R:9476;i:1;R:799;}s:28:"8:mwe-clipedit-resource_page";a:2:{i:0;R:9476;i:1;R:799;}s:32:"8:mwe-clipedit-set_in_out_points";a:2:{i:0;R:9476;i:1;R:799;}s:25:"8:mwe-clipedit-start_time";a:2:{i:0;R:9476;i:1;R:799;}s:23:"8:mwe-clipedit-end_time";a:2:{i:0;R:9476;i:1;R:799;}s:28:"8:mwe-clipedit-preview_inout";a:2:{i:0;R:9476;i:1;R:799;}s:25:"8:mwe-clipedit-edit-tools";a:2:{i:0;R:9476;i:1;R:799;}s:33:"8:mwe-clipedit-inline-description";a:2:{i:0;R:9476;i:1;R:799;}s:31:"8:mwe-clipedit-edit-video-tools";a:2:{i:0;R:9476;i:1;R:799;}s:23:"8:mwe-clipedit-duration";a:2:{i:0;R:9476;i:1;R:799;}s:21:"8:mwe-clipedit-layout";a:2:{i:0;R:9476;i:1;R:799;}s:27:"8:mwe-clipedit-layout_right";a:2:{i:0;R:9476;i:1;R:799;}s:26:"8:mwe-clipedit-layout_left";a:2:{i:0;R:9476;i:1;R:799;}s:28:"8:fogg-wont-upload-to-server";a:2:{i:0;s:30:"ext-addmediawizard-firefogggui";i:1;R:799;}s:22:"8:fogg-save_local_file";a:2:{i:0;R:9505;i:1;R:799;}s:18:"8:fogg-help-sticky";a:2:{i:0;R:9505;i:1;R:799;}s:16:"8:fogg-cg-preset";a:2:{i:0;R:9505;i:1;R:799;}s:17:"8:fogg-cg-quality";a:2:{i:0;R:9505;i:1;R:799;}s:14:"8:fogg-cg-meta";a:2:{i:0;R:9505;i:1;R:799;}s:15:"8:fogg-cg-range";a:2:{i:0;R:9505;i:1;R:799;}s:18:"8:fogg-cg-advvideo";a:2:{i:0;R:9505;i:1;R:799;}s:18:"8:fogg-cg-advaudio";a:2:{i:0;R:9505;i:1;R:799;}s:20:"8:fogg-preset-custom";a:2:{i:0;R:9505;i:1;R:799;}s:20:"8:fogg-webvideo-desc";a:2:{i:0;R:9505;i:1;R:799;}s:25:"8:fogg-savebandwidth-desc";a:2:{i:0;R:9505;i:1;R:799;}s:23:"8:fogg-highquality-desc";a:2:{i:0;R:9505;i:1;R:799;}s:25:"8:fogg-webvideo-webm-desc";a:2:{i:0;R:9505;i:1;R:799;}s:28:"8:fogg-highquality-webm-desc";a:2:{i:0;R:9505;i:1;R:799;}s:25:"8:fogg-videoquality-title";a:2:{i:0;R:9505;i:1;R:799;}s:24:"8:fogg-videoquality-help";a:2:{i:0;R:9505;i:1;R:799;}s:22:"8:fogg-starttime-title";a:2:{i:0;R:9505;i:1;R:799;}s:21:"8:fogg-starttime-help";a:2:{i:0;R:9505;i:1;R:799;}s:20:"8:fogg-endtime-title";a:2:{i:0;R:9505;i:1;R:799;}s:19:"8:fogg-endtime-help";a:2:{i:0;R:9505;i:1;R:799;}s:25:"8:fogg-audioquality-title";a:2:{i:0;R:9505;i:1;R:799;}s:24:"8:fogg-audioquality-help";a:2:{i:0;R:9505;i:1;R:799;}s:23:"8:fogg-videocodec-title";a:2:{i:0;R:9505;i:1;R:799;}s:22:"8:fogg-videocodec-help";a:2:{i:0;R:9505;i:1;R:799;}s:23:"8:fogg-audiocodec-title";a:2:{i:0;R:9505;i:1;R:799;}s:22:"8:fogg-audiocodec-help";a:2:{i:0;R:9505;i:1;R:799;}s:18:"8:fogg-width-title";a:2:{i:0;R:9505;i:1;R:799;}s:17:"8:fogg-width-help";a:2:{i:0;R:9505;i:1;R:799;}s:19:"8:fogg-height-title";a:2:{i:0;R:9505;i:1;R:799;}s:18:"8:fogg-height-help";a:2:{i:0;R:9505;i:1;R:799;}s:25:"8:fogg-videobitrate-title";a:2:{i:0;R:9505;i:1;R:799;}s:24:"8:fogg-videobitrate-help";a:2:{i:0;R:9505;i:1;R:799;}s:20:"8:fogg-twopass-title";a:2:{i:0;R:9505;i:1;R:799;}s:19:"8:fogg-twopass-help";a:2:{i:0;R:9505;i:1;R:799;}s:22:"8:fogg-framerate-title";a:2:{i:0;R:9505;i:1;R:799;}s:21:"8:fogg-framerate-help";a:2:{i:0;R:9505;i:1;R:799;}s:19:"8:fogg-aspect-title";a:2:{i:0;R:9505;i:1;R:799;}s:18:"8:fogg-aspect-help";a:2:{i:0;R:9505;i:1;R:799;}s:29:"8:fogg-keyframeinterval-title";a:2:{i:0;R:9505;i:1;R:799;}s:28:"8:fogg-keyframeinterval-help";a:2:{i:0;R:9505;i:1;R:799;}s:20:"8:fogg-denoise-title";a:2:{i:0;R:9505;i:1;R:799;}s:19:"8:fogg-denoise-help";a:2:{i:0;R:9505;i:1;R:799;}s:20:"8:fogg-novideo-title";a:2:{i:0;R:9505;i:1;R:799;}s:19:"8:fogg-novideo-help";a:2:{i:0;R:9505;i:1;R:799;}s:25:"8:fogg-audiobitrate-title";a:2:{i:0;R:9505;i:1;R:799;}s:23:"8:fogg-samplerate-title";a:2:{i:0;R:9505;i:1;R:799;}s:22:"8:fogg-samplerate-help";a:2:{i:0;R:9505;i:1;R:799;}s:20:"8:fogg-noaudio-title";a:2:{i:0;R:9505;i:1;R:799;}s:19:"8:fogg-noaudio-help";a:2:{i:0;R:9505;i:1;R:799;}s:18:"8:fogg-title-title";a:2:{i:0;R:9505;i:1;R:799;}s:17:"8:fogg-title-help";a:2:{i:0;R:9505;i:1;R:799;}s:19:"8:fogg-artist-title";a:2:{i:0;R:9505;i:1;R:799;}s:18:"8:fogg-artist-help";a:2:{i:0;R:9505;i:1;R:799;}s:17:"8:fogg-date-title";a:2:{i:0;R:9505;i:1;R:799;}s:16:"8:fogg-date-help";a:2:{i:0;R:9505;i:1;R:799;}s:21:"8:fogg-location-title";a:2:{i:0;R:9505;i:1;R:799;}s:20:"8:fogg-location-help";a:2:{i:0;R:9505;i:1;R:799;}s:25:"8:fogg-organization-title";a:2:{i:0;R:9505;i:1;R:799;}s:24:"8:fogg-organization-help";a:2:{i:0;R:9505;i:1;R:799;}s:22:"8:fogg-copyright-title";a:2:{i:0;R:9505;i:1;R:799;}s:21:"8:fogg-copyright-help";a:2:{i:0;R:9505;i:1;R:799;}s:20:"8:fogg-license-title";a:2:{i:0;R:9505;i:1;R:799;}s:19:"8:fogg-license-help";a:2:{i:0;R:9505;i:1;R:799;}s:20:"8:fogg-contact-title";a:2:{i:0;R:9505;i:1;R:799;}s:19:"8:fogg-contact-help";a:2:{i:0;R:9505;i:1;R:799;}s:27:"8:fogg-missing-webm-support";a:2:{i:0;R:9505;i:1;R:799;}s:16:"8:fogg-gui-title";a:2:{i:0;R:9505;i:1;R:799;}s:18:"8:fogg-transcoding";a:2:{i:0;R:9505;i:1;R:799;}s:18:"8:fogg-select_file";a:2:{i:0;R:9505;i:1;R:799;}s:22:"8:fogg-select_new_file";a:2:{i:0;R:9505;i:1;R:799;}s:17:"8:fogg-select_url";a:2:{i:0;R:9505;i:1;R:799;}s:25:"8:fogg-check_for_firefogg";a:2:{i:0;R:9505;i:1;R:799;}s:16:"8:fogg-installed";a:2:{i:0;R:9505;i:1;R:799;}s:20:"8:fogg-not-installed";a:2:{i:0;R:9505;i:1;R:799;}s:27:"8:fogg-for_improved_uploads";a:2:{i:0;R:9505;i:1;R:799;}s:21:"8:fogg-please-install";a:2:{i:0;R:9505;i:1;R:799;}s:38:"8:fogg-please-install-install-linktext";a:2:{i:0;R:9505;i:1;R:799;}s:36:"8:fogg-please-install-about-linktext";a:2:{i:0;R:9505;i:1;R:799;}s:25:"8:fogg-use_latest_firefox";a:2:{i:0;R:9505;i:1;R:799;}s:21:"8:fogg-latest-firefox";a:2:{i:0;R:9505;i:1;R:799;}s:23:"8:fogg-passthrough_mode";a:2:{i:0;R:9505;i:1;R:799;}s:20:"8:fogg-encoding-done";a:2:{i:0;R:9505;i:1;R:799;}s:15:"8:fogg-badtoken";a:2:{i:0;R:9505;i:1;R:799;}s:14:"8:fogg-preview";a:2:{i:0;R:9505;i:1;R:799;}s:18:"8:fogg-hidepreview";a:2:{i:0;R:9505;i:1;R:799;}s:22:"8:fogg-warning-firebug";a:2:{i:0;R:9505;i:1;R:799;}s:9:"8:addthis";a:2:{i:0;s:11:"ext-addthis";i:1;R:799;}s:14:"8:addthis-desc";a:2:{i:0;R:9593;i:1;R:799;}s:11:"8:admanager";a:2:{i:0;s:13:"ext-admanager";i:1;R:799;}s:16:"8:admanagerzones";a:2:{i:0;R:9596;i:1;R:799;}s:16:"8:admanager-desc";a:2:{i:0;R:9596;i:1;R:799;}s:16:"8:admanager_docu";a:2:{i:0;R:9596;i:1;R:799;}s:21:"8:admanagerzones_docu";a:2:{i:0;R:9596;i:1;R:799;}s:29:"8:admanager_invalidtargetpage";a:2:{i:0;R:9596;i:1;R:799;}s:33:"8:admanager_invalidtargetcategory";a:2:{i:0;R:9596;i:1;R:799;}s:19:"8:admanager_notable";a:2:{i:0;R:9596;i:1;R:799;}s:28:"8:admanager_noadmanagerzones";a:2:{i:0;R:9596;i:1;R:799;}s:21:"8:admanager_labelpage";a:2:{i:0;R:9596;i:1;R:799;}s:25:"8:admanager_labelcategory";a:2:{i:0;R:9596;i:1;R:799;}s:18:"8:admanager_submit";a:2:{i:0;R:9596;i:1;R:799;}s:17:"8:admanager_noads";a:2:{i:0;R:9596;i:1;R:799;}s:16:"8:admanager_page";a:2:{i:0;R:9596;i:1;R:799;}s:20:"8:admanager_category";a:2:{i:0;R:9596;i:1;R:799;}s:17:"8:admanager_added";a:2:{i:0;R:9596;i:1;R:799;}s:20:"8:admanager_noadsset";a:2:{i:0;R:9596;i:1;R:799;}s:21:"8:admanager_addedzone";a:2:{i:0;R:9596;i:1;R:799;}s:19:"8:admanager_zonenum";a:2:{i:0;R:9596;i:1;R:799;}s:25:"8:admanager_zonenotnumber";a:2:{i:0;R:9596;i:1;R:799;}s:18:"8:admanager_return";a:2:{i:0;R:9596;i:1;R:799;}s:19:"8:admanager_gotoads";a:2:{i:0;R:9596;i:1;R:799;}s:21:"8:admanager_gotozones";a:2:{i:0;R:9596;i:1;R:799;}s:17:"8:right-admanager";a:2:{i:0;R:9596;i:1;R:799;}s:12:"8:adminlinks";a:2:{i:0;s:14:"ext-adminlinks";i:1;R:799;}s:17:"8:adminlinks-desc";a:2:{i:0;R:9621;i:1;R:799;}s:26:"8:adminlinks_documentation";a:2:{i:0;R:9621;i:1;R:799;}s:20:"8:adminlinks_general";a:2:{i:0;R:9621;i:1;R:799;}s:24:"8:adminlinks_editsidebar";a:2:{i:0;R:9621;i:1;R:799;}s:20:"8:adminlinks_editcss";a:2:{i:0;R:9621;i:1;R:799;}s:29:"8:adminlinks_editmainpagename";a:2:{i:0;R:9621;i:1;R:799;}s:18:"8:adminlinks_users";a:2:{i:0;R:9621;i:1;R:799;}s:23:"8:adminlinks_createuser";a:2:{i:0;R:9621;i:1;R:799;}s:25:"8:adminlinks_browsesearch";a:2:{i:0;R:9621;i:1;R:799;}s:25:"8:adminlinks_importexport";a:2:{i:0;R:9621;i:1;R:799;}s:18:"8:right-adminlinks";a:2:{i:0;R:9621;i:1;R:799;}s:12:"8:ameta-desc";a:2:{i:0;s:16:"ext-advancedmeta";i:1;R:799;}s:20:"8:ameta-metasettings";a:2:{i:0;R:9634;i:1;R:799;}s:18:"8:ameta-titlealias";a:2:{i:0;R:9634;i:1;R:799;}s:19:"8:ameta-keywordsadd";a:2:{i:0;R:9634;i:1;R:799;}s:22:"8:ameta-keywordsmodify";a:2:{i:0;R:9634;i:1;R:799;}s:16:"8:advancedrandom";a:2:{i:0;s:18:"ext-advancedrandom";i:1;R:799;}s:21:"8:advancedrandom-desc";a:2:{i:0;R:9640;i:1;R:799;}s:16:"8:ajaxlogin-desc";a:2:{i:0;s:13:"ext-ajaxlogin";i:1;R:799;}s:12:"8:ajaxlogin1";a:2:{i:0;R:9643;i:1;R:799;}s:12:"8:ajaxlogin2";a:2:{i:0;R:9643;i:1;R:799;}s:18:"8:ajaxlogin-create";a:2:{i:0;R:9643;i:1;R:799;}s:15:"8:al-nosuchuser";a:2:{i:0;R:9643;i:1;R:799;}s:18:"8:al-createblocked";a:2:{i:0;R:9643;i:1;R:799;}s:14:"8:al-throttled";a:2:{i:0;R:9643;i:1;R:799;}s:15:"8:ajaxpoll-desc";a:2:{i:0;s:12:"ext-ajaxpoll";i:1;R:799;}s:28:"8:ajaxpoll-tracking-category";a:2:{i:0;R:9651;i:1;R:799;}s:22:"8:ajaxpoll-vote-update";a:2:{i:0;R:9651;i:1;R:799;}s:19:"8:ajaxpoll-vote-add";a:2:{i:0;R:9651;i:1;R:799;}s:21:"8:ajaxpoll-vote-error";a:2:{i:0;R:9651;i:1;R:799;}s:24:"8:ajaxpoll-percent-votes";a:2:{i:0;R:9651;i:1;R:799;}s:20:"8:ajaxpoll-your-vote";a:2:{i:0;R:9651;i:1;R:799;}s:18:"8:ajaxpoll-no-vote";a:2:{i:0;R:9651;i:1;R:799;}s:15:"8:ajaxpoll-info";a:2:{i:0;R:9651;i:1;R:799;}s:21:"8:ajaxpoll-submitting";a:2:{i:0;R:9651;i:1;R:799;}s:26:"8:ajaxpoll-vote-permission";a:2:{i:0;R:9651;i:1;R:799;}s:22:"8:ajaxpoll-revoke-vote";a:2:{i:0;R:9651;i:1;R:799;}s:23:"8:ajaxpoll-vote-revoked";a:2:{i:0;R:9651;i:1;R:799;}s:21:"8:right-ajaxpoll-vote";a:2:{i:0;R:9651;i:1;R:799;}s:21:"8:ajaxquerypages-desc";a:2:{i:0;s:18:"ext-ajaxquerypages";i:1;R:799;}s:22:"8:ajaxshoweditors-desc";a:2:{i:0;s:19:"ext-ajaxshoweditors";i:1;R:799;}s:15:"8:ajax-se-title";a:2:{i:0;R:9668;i:1;R:799;}s:17:"8:ajax-se-pending";a:2:{i:0;R:9668;i:1;R:799;}s:16:"8:ajax-se-idling";a:2:{i:0;R:9668;i:1;R:799;}s:26:"8:ajax-se-pagedoesnotexist";a:2:{i:0;R:9668;i:1;R:799;}s:21:"8:ajax-se-userinvalid";a:2:{i:0;R:9668;i:1;R:799;}s:22:"8:ajax-se-usernotfound";a:2:{i:0;R:9668;i:1;R:799;}s:17:"8:amazonplus-desc";a:2:{i:0;s:14:"ext-amazonplus";i:1;R:799;}s:18:"8:amazonplus-nores";a:2:{i:0;R:9676;i:1;R:799;}s:20:"8:amazonplus-noidres";a:2:{i:0;R:9676;i:1;R:799;}s:19:"8:amazonplus-fgcerr";a:2:{i:0;R:9676;i:1;R:799;}s:19:"8:amazonplus-slserr";a:2:{i:0;R:9676;i:1;R:799;}s:17:"8:amazonplus-used";a:2:{i:0;R:9676;i:1;R:799;}s:19:"8:amazonplus-german";a:2:{i:0;R:9676;i:1;R:799;}s:19:"8:amazonplus-french";a:2:{i:0;R:9676;i:1;R:799;}s:21:"8:amazonplus-japanese";a:2:{i:0;R:9676;i:1;R:799;}s:20:"8:amazonplus-english";a:2:{i:0;R:9676;i:1;R:799;}s:19:"8:amazonplus-amazon";a:2:{i:0;R:9676;i:1;R:799;}s:16:"8:amazonplus-new";a:2:{i:0;R:9676;i:1;R:799;}s:19:"8:amazonplus-status";a:2:{i:0;R:9676;i:1;R:799;}s:17:"8:amazonplus-none";a:2:{i:0;R:9676;i:1;R:799;}s:21:"8:amazonplus-currency";a:2:{i:0;R:9676;i:1;R:799;}s:20:"8:amazonplus-cp-none";a:2:{i:0;R:9676;i:1;R:799;}s:19:"8:amazonplus-cp-usd";a:2:{i:0;R:9676;i:1;R:799;}s:19:"8:amazonplus-cp-cad";a:2:{i:0;R:9676;i:1;R:799;}s:19:"8:amazonplus-cp-gbp";a:2:{i:0;R:9676;i:1;R:799;}s:19:"8:amazonplus-cp-eur";a:2:{i:0;R:9676;i:1;R:799;}s:19:"8:amazonplus-cp-jpy";a:2:{i:0;R:9676;i:1;R:799;}s:17:"8:amazonplus-more";a:2:{i:0;R:9676;i:1;R:799;}s:17:"8:amazonplus-less";a:2:{i:0;R:9676;i:1;R:799;}s:5:"8:apc";a:2:{i:0;s:7:"ext-apc";i:1;R:799;}s:10:"8:apc-desc";a:2:{i:0;R:9700;i:1;R:799;}s:11:"8:right-apc";a:2:{i:0;R:9700;i:1;R:799;}s:27:"8:viewapc-apc-not-available";a:2:{i:0;R:9700;i:1;R:799;}s:23:"8:viewapc-clear-confirm";a:2:{i:0;R:9700;i:1;R:799;}s:26:"8:viewapc-clear-user-cache";a:2:{i:0;R:9700;i:1;R:799;}s:26:"8:viewapc-clear-code-cache";a:2:{i:0;R:9700;i:1;R:799;}s:20:"8:viewapc-mode-stats";a:2:{i:0;R:9700;i:1;R:799;}s:27:"8:viewapc-mode-system-cache";a:2:{i:0;R:9700;i:1;R:799;}s:31:"8:viewapc-mode-system-cache-dir";a:2:{i:0;R:9700;i:1;R:799;}s:25:"8:viewapc-mode-user-cache";a:2:{i:0;R:9700;i:1;R:799;}s:28:"8:viewapc-mode-version-check";a:2:{i:0;R:9700;i:1;R:799;}s:22:"8:viewapc-info-general";a:2:{i:0;R:9700;i:1;R:799;}s:21:"8:viewapc-apc-version";a:2:{i:0;R:9700;i:1;R:799;}s:21:"8:viewapc-php-version";a:2:{i:0;R:9700;i:1;R:799;}s:23:"8:viewapc-shared-memory";a:2:{i:0;R:9700;i:1;R:799;}s:31:"8:viewapc-shared-memory-details";a:2:{i:0;R:9700;i:1;R:799;}s:20:"8:viewapc-start-time";a:2:{i:0;R:9700;i:1;R:799;}s:16:"8:viewapc-uptime";a:2:{i:0;R:9700;i:1;R:799;}s:24:"8:viewapc-upload-support";a:2:{i:0;R:9700;i:1;R:799;}s:24:"8:viewapc-filecache-info";a:2:{i:0;R:9700;i:1;R:799;}s:24:"8:viewapc-usercache-info";a:2:{i:0;R:9700;i:1;R:799;}s:22:"8:viewapc-cached-files";a:2:{i:0;R:9700;i:1;R:799;}s:24:"8:viewapc-cached-files-d";a:2:{i:0;R:9700;i:1;R:799;}s:14:"8:viewapc-hits";a:2:{i:0;R:9700;i:1;R:799;}s:16:"8:viewapc-misses";a:2:{i:0;R:9700;i:1;R:799;}s:18:"8:viewapc-requests";a:2:{i:0;R:9700;i:1;R:799;}s:17:"8:viewapc-hitrate";a:2:{i:0;R:9700;i:1;R:799;}s:18:"8:viewapc-missrate";a:2:{i:0;R:9700;i:1;R:799;}s:20:"8:viewapc-insertrate";a:2:{i:0;R:9700;i:1;R:799;}s:19:"8:viewapc-cachefull";a:2:{i:0;R:9700;i:1;R:799;}s:13:"8:viewapc-rps";a:2:{i:0;R:9700;i:1;R:799;}s:22:"8:viewapc-info-runtime";a:2:{i:0;R:9700;i:1;R:799;}s:21:"8:viewapc-info-memory";a:2:{i:0;R:9700;i:1;R:799;}s:31:"8:viewapc-memory-usage-detailed";a:2:{i:0;R:9700;i:1;R:799;}s:22:"8:viewapc-memory-usage";a:2:{i:0;R:9700;i:1;R:799;}s:26:"8:viewapc-cache-efficiency";a:2:{i:0;R:9700;i:1;R:799;}s:21:"8:viewapc-memory-free";a:2:{i:0;R:9700;i:1;R:799;}s:21:"8:viewapc-memory-used";a:2:{i:0;R:9700;i:1;R:799;}s:21:"8:viewapc-memory-hits";a:2:{i:0;R:9700;i:1;R:799;}s:21:"8:viewapc-memory-miss";a:2:{i:0;R:9700;i:1;R:799;}s:29:"8:viewapc-memoryfragmentation";a:2:{i:0;R:9700;i:1;R:799;}s:28:"8:viewapc-fragmentation-info";a:2:{i:0;R:9700;i:1;R:799;}s:28:"8:viewapc-fragmentation-none";a:2:{i:0;R:9700;i:1;R:799;}s:27:"8:viewapc-display-attribute";a:2:{i:0;R:9700;i:1;R:799;}s:23:"8:viewapc-display-value";a:2:{i:0;R:9700;i:1;R:799;}s:26:"8:viewapc-display-filename";a:2:{i:0;R:9700;i:1;R:799;}s:24:"8:viewapc-display-device";a:2:{i:0;R:9700;i:1;R:799;}s:22:"8:viewapc-display-info";a:2:{i:0;R:9700;i:1;R:799;}s:21:"8:viewapc-display-ttl";a:2:{i:0;R:9700;i:1;R:799;}s:23:"8:viewapc-display-inode";a:2:{i:0;R:9700;i:1;R:799;}s:22:"8:viewapc-display-type";a:2:{i:0;R:9700;i:1;R:799;}s:27:"8:viewapc-display-type-file";a:2:{i:0;R:9700;i:1;R:799;}s:27:"8:viewapc-display-type-user";a:2:{i:0;R:9700;i:1;R:799;}s:26:"8:viewapc-display-num_hits";a:2:{i:0;R:9700;i:1;R:799;}s:23:"8:viewapc-display-mtime";a:2:{i:0;R:9700;i:1;R:799;}s:31:"8:viewapc-display-creation_time";a:2:{i:0;R:9700;i:1;R:799;}s:31:"8:viewapc-display-deletion_time";a:2:{i:0;R:9700;i:1;R:799;}s:27:"8:viewapc-display-no-delete";a:2:{i:0;R:9700;i:1;R:799;}s:29:"8:viewapc-display-access_time";a:2:{i:0;R:9700;i:1;R:799;}s:27:"8:viewapc-display-ref_count";a:2:{i:0;R:9700;i:1;R:799;}s:26:"8:viewapc-display-mem_size";a:2:{i:0;R:9700;i:1;R:799;}s:30:"8:viewapc-display-stored-value";a:2:{i:0;R:9700;i:1;R:799;}s:25:"8:viewapc-display-too-big";a:2:{i:0;R:9700;i:1;R:799;}s:27:"8:viewapc-ls-options-legend";a:2:{i:0;R:9700;i:1;R:799;}s:20:"8:viewapc-ls-options";a:2:{i:0;R:9700;i:1;R:799;}s:19:"8:viewapc-ls-submit";a:2:{i:0;R:9700;i:1;R:799;}s:24:"8:viewapc-ls-header-name";a:2:{i:0;R:9700;i:1;R:799;}s:24:"8:viewapc-ls-header-hits";a:2:{i:0;R:9700;i:1;R:799;}s:24:"8:viewapc-ls-header-size";a:2:{i:0;R:9700;i:1;R:799;}s:28:"8:viewapc-ls-header-accessed";a:2:{i:0;R:9700;i:1;R:799;}s:28:"8:viewapc-ls-header-modified";a:2:{i:0;R:9700;i:1;R:799;}s:27:"8:viewapc-ls-header-created";a:2:{i:0;R:9700;i:1;R:799;}s:27:"8:viewapc-ls-header-deleted";a:2:{i:0;R:9700;i:1;R:799;}s:27:"8:viewapc-ls-header-timeout";a:2:{i:0;R:9700;i:1;R:799;}s:19:"8:viewapc-ls-delete";a:2:{i:0;R:9700;i:1;R:799;}s:25:"8:viewapc-ls-scope-active";a:2:{i:0;R:9700;i:1;R:799;}s:26:"8:viewapc-ls-scope-deleted";a:2:{i:0;R:9700;i:1;R:799;}s:23:"8:viewapc-ls-scope-both";a:2:{i:0;R:9700;i:1;R:799;}s:22:"8:viewapc-ls-sort-hits";a:2:{i:0;R:9700;i:1;R:799;}s:22:"8:viewapc-ls-sort-size";a:2:{i:0;R:9700;i:1;R:799;}s:22:"8:viewapc-ls-sort-name";a:2:{i:0;R:9700;i:1;R:799;}s:26:"8:viewapc-ls-sort-accessed";a:2:{i:0;R:9700;i:1;R:799;}s:26:"8:viewapc-ls-sort-modified";a:2:{i:0;R:9700;i:1;R:799;}s:25:"8:viewapc-ls-sort-created";a:2:{i:0;R:9700;i:1;R:799;}s:25:"8:viewapc-ls-sort-deleted";a:2:{i:0;R:9700;i:1;R:799;}s:25:"8:viewapc-ls-sort-timeout";a:2:{i:0;R:9700;i:1;R:799;}s:23:"8:viewapc-ls-limit-none";a:2:{i:0;R:9700;i:1;R:799;}s:17:"8:viewapc-ls-more";a:2:{i:0;R:9700;i:1;R:799;}s:19:"8:viewapc-ls-nodata";a:2:{i:0;R:9700;i:1;R:799;}s:19:"8:viewapc-delete-ok";a:2:{i:0;R:9700;i:1;R:799;}s:23:"8:viewapc-delete-failed";a:2:{i:0;R:9700;i:1;R:799;}s:22:"8:viewapc-version-info";a:2:{i:0;R:9700;i:1;R:799;}s:27:"8:viewapc-version-changelog";a:2:{i:0;R:9700;i:1;R:799;}s:24:"8:viewapc-version-failed";a:2:{i:0;R:9700;i:1;R:799;}s:20:"8:viewapc-version-ok";a:2:{i:0;R:9700;i:1;R:799;}s:21:"8:viewapc-version-old";a:2:{i:0;R:9700;i:1;R:799;}s:27:"8:viewapc-filecache-cleared";a:2:{i:0;R:9700;i:1;R:799;}s:27:"8:viewapc-usercache-cleared";a:2:{i:0;R:9700;i:1;R:799;}s:13:"8:apiexplorer";a:2:{i:0;s:15:"ext-apiexplorer";i:1;R:799;}s:18:"8:apiexplorer-desc";a:2:{i:0;R:9800;i:1;R:799;}s:19:"8:apiexplorer-intro";a:2:{i:0;R:9800;i:1;R:799;}s:21:"8:apiexplorer-loading";a:2:{i:0;R:9800;i:1;R:799;}s:18:"8:apisvgproxy-desc";a:2:{i:0;s:15:"ext-apisvgproxy";i:1;R:799;}s:19:"8:approvedrevs-desc";a:2:{i:0;s:16:"ext-approvedrevs";i:1;R:799;}s:22:"8:approvedrevs-logname";a:2:{i:0;R:9807;i:1;R:799;}s:22:"8:approvedrevs-logdesc";a:2:{i:0;R:9807;i:1;R:799;}s:22:"8:approvedrevs-approve";a:2:{i:0;R:9807;i:1;R:799;}s:24:"8:approvedrevs-unapprove";a:2:{i:0;R:9807;i:1;R:799;}s:29:"8:approvedrevs-approvesuccess";a:2:{i:0;R:9807;i:1;R:799;}s:31:"8:approvedrevs-unapprovesuccess";a:2:{i:0;R:9807;i:1;R:799;}s:32:"8:approvedrevs-unapprovesuccess2";a:2:{i:0;R:9807;i:1;R:799;}s:28:"8:approvedrevs-approveaction";a:2:{i:0;R:9807;i:1;R:799;}s:30:"8:approvedrevs-unapproveaction";a:2:{i:0;R:9807;i:1;R:799;}s:24:"8:approvedrevs-notlatest";a:2:{i:0;R:9807;i:1;R:799;}s:32:"8:approvedrevs-approvedandlatest";a:2:{i:0;R:9807;i:1;R:799;}s:29:"8:approvedrevs-blankpageshown";a:2:{i:0;R:9807;i:1;R:799;}s:26:"8:approvedrevs-editwarning";a:2:{i:0;R:9807;i:1;R:799;}s:14:"8:approvedrevs";a:2:{i:0;R:9807;i:1;R:799;}s:28:"8:approvedrevs-approvedpages";a:2:{i:0;R:9807;i:1;R:799;}s:29:"8:approvedrevs-notlatestpages";a:2:{i:0;R:9807;i:1;R:799;}s:30:"8:approvedrevs-unapprovedpages";a:2:{i:0;R:9807;i:1;R:799;}s:19:"8:approvedrevs-view";a:2:{i:0;R:9807;i:1;R:799;}s:29:"8:approvedrevs-revisionnumber";a:2:{i:0;R:9807;i:1;R:799;}s:25:"8:approvedrevs-approvedby";a:2:{i:0;R:9807;i:1;R:799;}s:29:"8:approvedrevs-difffromlatest";a:2:{i:0;R:9807;i:1;R:799;}s:28:"8:approvedrevs-approvelatest";a:2:{i:0;R:9807;i:1;R:799;}s:29:"8:approvedrevs-approvethisrev";a:2:{i:0;R:9807;i:1;R:799;}s:28:"8:approvedrevs-viewlatestrev";a:2:{i:0;R:9807;i:1;R:799;}s:24:"8:right-approverevisions";a:2:{i:0;R:9807;i:1;R:799;}s:24:"8:right-viewlinktolatest";a:2:{i:0;R:9807;i:1;R:799;}s:13:"8:arrays-desc";a:2:{i:0;s:10:"ext-arrays";i:1;R:799;}s:23:"8:article-comments-desc";a:2:{i:0;s:19:"ext-articlecomments";i:1;R:799;}s:31:"8:article-comments-title-string";a:2:{i:0;R:9837;i:1;R:799;}s:30:"8:article-comments-name-string";a:2:{i:0;R:9837;i:1;R:799;}s:29:"8:article-comments-name-field";a:2:{i:0;R:9837;i:1;R:799;}s:28:"8:article-comments-url-field";a:2:{i:0;R:9837;i:1;R:799;}s:29:"8:article-comments-url-string";a:2:{i:0;R:9837;i:1;R:799;}s:33:"8:article-comments-comment-string";a:2:{i:0;R:9837;i:1;R:799;}s:32:"8:article-comments-comment-field";a:2:{i:0;R:9837;i:1;R:799;}s:32:"8:article-comments-submit-button";a:2:{i:0;R:9837;i:1;R:799;}s:37:"8:article-comments-leave-comment-link";a:2:{i:0;R:9837;i:1;R:799;}s:32:"8:article-comments-invalid-field";a:2:{i:0;R:9837;i:1;R:799;}s:33:"8:article-comments-required-field";a:2:{i:0;R:9837;i:1;R:799;}s:36:"8:article-comments-submission-failed";a:2:{i:0;R:9837;i:1;R:799;}s:34:"8:article-comments-failure-reasons";a:2:{i:0;R:9837;i:1;R:799;}s:30:"8:article-comments-no-comments";a:2:{i:0;R:9837;i:1;R:799;}s:36:"8:article-comments-talk-page-starter";a:2:{i:0;R:9837;i:1;R:799;}s:33:"8:article-comments-commenter-said";a:2:{i:0;R:9837;i:1;R:799;}s:26:"8:article-comments-summary";a:2:{i:0;R:9837;i:1;R:799;}s:39:"8:article-comments-submission-succeeded";a:2:{i:0;R:9837;i:1;R:799;}s:37:"8:article-comments-submission-success";a:2:{i:0;R:9837;i:1;R:799;}s:38:"8:article-comments-submission-view-all";a:2:{i:0;R:9837;i:1;R:799;}s:41:"8:article-comments-prefilled-comment-text";a:2:{i:0;R:9837;i:1;R:799;}s:34:"8:article-comments-user-is-blocked";a:2:{i:0;R:9837;i:1;R:799;}s:38:"8:article-comments-new-comment-heading";a:2:{i:0;R:9837;i:1;R:799;}s:35:"8:article-comments-comment-bad-mode";a:2:{i:0;R:9837;i:1;R:799;}s:35:"8:article-comments-comment-contents";a:2:{i:0;R:9837;i:1;R:799;}s:49:"8:article-comments-comment-missing-name-parameter";a:2:{i:0;R:9837;i:1;R:799;}s:49:"8:article-comments-comment-missing-date-parameter";a:2:{i:0;R:9837;i:1;R:799;}s:26:"8:article-comments-no-spam";a:2:{i:0;R:9837;i:1;R:799;}s:16:"8:processcomment";a:2:{i:0;R:9837;i:1;R:799;}s:25:"8:articletocategory2-desc";a:2:{i:0;s:22:"ext-articletocategory2";i:1;R:799;}s:55:"8:articletocategory2-create-article-under-category-text";a:2:{i:0;R:9868;i:1;R:799;}s:57:"8:articletocategory2-create-article-under-category-button";a:2:{i:0;R:9868;i:1;R:799;}s:56:"8:articletocategory2-create-category-under-category-text";a:2:{i:0;R:9868;i:1;R:799;}s:58:"8:articletocategory2-create-category-under-category-button";a:2:{i:0;R:9868;i:1;R:799;}s:26:"8:right-articletocategory2";a:2:{i:0;R:9868;i:1;R:799;}s:32:"8:right-articletocategory2addcat";a:2:{i:0;R:9868;i:1;R:799;}s:8:"8:asksql";a:2:{i:0;s:10:"ext-asksql";i:1;R:799;}s:13:"8:asksql-desc";a:2:{i:0;R:9876;i:1;R:799;}s:12:"8:asksqltext";a:2:{i:0;R:9876;i:1;R:799;}s:13:"8:sqlislogged";a:2:{i:0;R:9876;i:1;R:799;}s:10:"8:sqlquery";a:2:{i:0;R:9876;i:1;R:799;}s:10:"8:querybtn";a:2:{i:0;R:9876;i:1;R:799;}s:12:"8:selectonly";a:2:{i:0;R:9876;i:1;R:799;}s:17:"8:querysuccessful";a:2:{i:0;R:9876;i:1;R:799;}s:14:"8:right-asksql";a:2:{i:0;R:9876;i:1;R:799;}s:15:"8:authorprotect";a:2:{i:0;s:17:"ext-authorprotect";i:1;R:799;}s:20:"8:authorprotect-desc";a:2:{i:0;R:9886;i:1;R:799;}s:25:"8:authorprotect-notauthor";a:2:{i:0;R:9886;i:1;R:799;}s:23:"8:authorprotect-confirm";a:2:{i:0;R:9886;i:1;R:799;}s:20:"8:authorprotect-edit";a:2:{i:0;R:9886;i:1;R:799;}s:20:"8:authorprotect-move";a:2:{i:0;R:9886;i:1;R:799;}s:21:"8:authorprotect-intro";a:2:{i:0;R:9886;i:1;R:799;}s:23:"8:authorprotect-success";a:2:{i:0;R:9886;i:1;R:799;}s:23:"8:authorprotect-failure";a:2:{i:0;R:9886;i:1;R:799;}s:22:"8:protect-level-author";a:2:{i:0;R:9886;i:1;R:799;}s:26:"8:restriction-level-author";a:2:{i:0;R:9886;i:1;R:799;}s:21:"8:right-authorprotect";a:2:{i:0;R:9886;i:1;R:799;}s:14:"8:right-author";a:2:{i:0;R:9886;i:1;R:799;}s:20:"8:autoincrement-desc";a:2:{i:0;s:17:"ext-autoincrement";i:1;R:799;}s:28:"8:automaticboardwelcome-desc";a:2:{i:0;s:25:"ext-automaticboardwelcome";i:1;R:799;}s:16:"8:backforth-next";a:2:{i:0;s:16:"ext-backandforth";i:1;R:799;}s:19:"8:backandforth-desc";a:2:{i:0;R:9904;i:1;R:799;}s:16:"8:backforth-prev";a:2:{i:0;R:9904;i:1;R:799;}s:11:"8:badimages";a:2:{i:0;s:12:"ext-badimage";i:1;R:799;}s:15:"8:badimage-desc";a:2:{i:0;R:9908;i:1;R:799;}s:19:"8:badimages-add-btn";a:2:{i:0;R:9908;i:1;R:799;}s:17:"8:badimages-added";a:2:{i:0;R:9908;i:1;R:799;}s:17:"8:badimages-count";a:2:{i:0;R:9908;i:1;R:799;}s:16:"8:badimages-name";a:2:{i:0;R:9908;i:1;R:799;}s:21:"8:badimages-not-added";a:2:{i:0;R:9908;i:1;R:799;}s:23:"8:badimages-not-removed";a:2:{i:0;R:9908;i:1;R:799;}s:18:"8:badimages-reason";a:2:{i:0;R:9908;i:1;R:799;}s:18:"8:badimages-remove";a:2:{i:0;R:9908;i:1;R:799;}s:22:"8:badimages-remove-btn";a:2:{i:0;R:9908;i:1;R:799;}s:26:"8:badimages-remove-confirm";a:2:{i:0;R:9908;i:1;R:799;}s:19:"8:badimages-removed";a:2:{i:0;R:9908;i:1;R:799;}s:22:"8:badimages-subheading";a:2:{i:0;R:9908;i:1;R:799;}s:24:"8:badimages-unprivileged";a:2:{i:0;R:9908;i:1;R:799;}s:20:"8:badimages-log-name";a:2:{i:0;R:9908;i:1;R:799;}s:22:"8:badimages-log-header";a:2:{i:0;R:9908;i:1;R:799;}s:19:"8:badimages-log-add";a:2:{i:0;R:9908;i:1;R:799;}s:22:"8:badimages-log-remove";a:2:{i:0;R:9908;i:1;R:799;}s:16:"8:badimages-page";a:2:{i:0;R:9908;i:1;R:799;}s:17:"8:right-badimages";a:2:{i:0;R:9908;i:1;R:799;}s:17:"8:batchuserrights";a:2:{i:0;s:19:"ext-batchuserrights";i:1;R:799;}s:22:"8:batchuserrights-desc";a:2:{i:0;R:9930;i:1;R:799;}s:23:"8:batchuserrights-names";a:2:{i:0;R:9930;i:1;R:799;}s:23:"8:batchuserrights-intro";a:2:{i:0;R:9930;i:1;R:799;}s:40:"8:batchuserrights-single-progress-update";a:2:{i:0;R:9930;i:1;R:799;}s:28:"8:batchuserrights-add-groups";a:2:{i:0;R:9930;i:1;R:799;}s:32:"8:batchuserrights-userload-error";a:2:{i:0;R:9930;i:1;R:799;}s:27:"8:batchuserrights-no-groups";a:2:{i:0;R:9930;i:1;R:799;}s:23:"8:right-batchuserrights";a:2:{i:0;R:9930;i:1;R:799;}s:30:"8:block_title_error_page_title";a:2:{i:0;s:15:"ext-blocktitles";i:1;R:799;}s:18:"8:blocktitles-desc";a:2:{i:0;R:9940;i:1;R:799;}s:19:"8:block_title_error";a:2:{i:0;R:9940;i:1;R:799;}s:17:"8:bookinfo-header";a:2:{i:0;s:19:"ext-bookinformation";i:1;R:799;}s:22:"8:bookinformation-desc";a:2:{i:0;R:9944;i:1;R:799;}s:23:"8:bookinfo-result-title";a:2:{i:0;R:9944;i:1;R:799;}s:24:"8:bookinfo-result-author";a:2:{i:0;R:9944;i:1;R:799;}s:27:"8:bookinfo-result-publisher";a:2:{i:0;R:9944;i:1;R:799;}s:22:"8:bookinfo-result-year";a:2:{i:0;R:9944;i:1;R:799;}s:28:"8:bookinfo-error-invalidisbn";a:2:{i:0;R:9944;i:1;R:799;}s:27:"8:bookinfo-error-nosuchitem";a:2:{i:0;R:9944;i:1;R:799;}s:25:"8:bookinfo-error-nodriver";a:2:{i:0;R:9944;i:1;R:799;}s:27:"8:bookinfo-error-noresponse";a:2:{i:0;R:9944;i:1;R:799;}s:19:"8:bookinfo-purchase";a:2:{i:0;R:9944;i:1;R:799;}s:19:"8:bookinfo-provider";a:2:{i:0;R:9944;i:1;R:799;}s:18:"8:bookmanager-desc";a:2:{i:0;s:15:"ext-bookmanager";i:1;R:799;}s:22:"8:bm-booktools-section";a:2:{i:0;R:9957;i:1;R:799;}s:23:"8:bm-randomchapter-link";a:2:{i:0;R:9957;i:1;R:799;}s:17:"8:bm-printversion";a:2:{i:0;R:9957;i:1;R:799;}s:22:"8:bm-printversion-desc";a:2:{i:0;R:9957;i:1;R:799;}s:25:"8:bm-printversion-no-book";a:2:{i:0;R:9957;i:1;R:799;}s:33:"8:bm-printversion-inexistent-book";a:2:{i:0;R:9957;i:1;R:799;}s:18:"8:breadcrumbs-desc";a:2:{i:0;s:15:"ext-breadcrumbs";i:1;R:799;}s:6:"8:call";a:2:{i:0;s:8:"ext-call";i:1;R:799;}s:11:"8:call-desc";a:2:{i:0;R:9967;i:1;R:799;}s:11:"8:call-text";a:2:{i:0;R:9967;i:1;R:799;}s:11:"8:call-save";a:2:{i:0;R:9967;i:1;R:799;}s:19:"8:call-save-success";a:2:{i:0;R:9967;i:1;R:799;}s:18:"8:call-save-failed";a:2:{i:0;R:9967;i:1;R:799;}s:16:"8:cassandra-desc";a:2:{i:0;s:13:"ext-cassandra";i:1;R:799;}s:17:"8:categorize-desc";a:2:{i:0;s:14:"ext-categorize";i:1;R:799;}s:18:"8:categorize-title";a:2:{i:0;R:9976;i:1;R:799;}s:21:"8:categorize-subtitle";a:2:{i:0;R:9976;i:1;R:799;}s:19:"8:categorize-footer";a:2:{i:0;R:9976;i:1;R:799;}s:19:"8:categorize-advice";a:2:{i:0;R:9976;i:1;R:799;}s:17:"8:categorybrowser";a:2:{i:0;s:19:"ext-categorybrowser";i:1;R:799;}s:22:"8:categorybrowser-desc";a:2:{i:0;R:9982;i:1;R:799;}s:24:"8:cb_requires_javascript";a:2:{i:0;R:9982;i:1;R:799;}s:16:"8:cb_ie6_warning";a:2:{i:0;R:9982;i:1;R:799;}s:25:"8:cb_show_no_parents_only";a:2:{i:0;R:9982;i:1;R:799;}s:20:"8:cb_cat_name_filter";a:2:{i:0;R:9982;i:1;R:799;}s:26:"8:cb_cat_name_filter_clear";a:2:{i:0;R:9982;i:1;R:799;}s:23:"8:cb_cat_name_filter_ci";a:2:{i:0;R:9982;i:1;R:799;}s:19:"8:cb_copy_line_hint";a:2:{i:0;R:9982;i:1;R:799;}s:22:"8:cb_has_subcategories";a:2:{i:0;R:9982;i:1;R:799;}s:14:"8:cb_has_pages";a:2:{i:0;R:9982;i:1;R:799;}s:14:"8:cb_has_files";a:2:{i:0;R:9982;i:1;R:799;}s:25:"8:cb_has_parentcategories";a:2:{i:0;R:9982;i:1;R:799;}s:24:"8:cb_previous_items_link";a:2:{i:0;R:9982;i:1;R:799;}s:25:"8:cb_previous_items_stats";a:2:{i:0;R:9982;i:1;R:799;}s:24:"8:cb_previous_items_line";a:2:{i:0;R:9982;i:1;R:799;}s:20:"8:cb_next_items_link";a:2:{i:0;R:9982;i:1;R:799;}s:21:"8:cb_next_items_stats";a:2:{i:0;R:9982;i:1;R:799;}s:20:"8:cb_next_items_line";a:2:{i:0;R:9982;i:1;R:799;}s:16:"8:cb_cat_subcats";a:2:{i:0;R:9982;i:1;R:799;}s:14:"8:cb_cat_pages";a:2:{i:0;R:9982;i:1;R:799;}s:14:"8:cb_cat_files";a:2:{i:0;R:9982;i:1;R:799;}s:17:"8:cb_apply_button";a:2:{i:0;R:9982;i:1;R:799;}s:17:"8:cb_op1_template";a:2:{i:0;R:9982;i:1;R:799;}s:17:"8:cb_op2_template";a:2:{i:0;R:9982;i:1;R:799;}s:11:"8:cb_all_op";a:2:{i:0;R:9982;i:1;R:799;}s:16:"8:cb_lbracket_op";a:2:{i:0;R:9982;i:1;R:799;}s:16:"8:cb_rbracket_op";a:2:{i:0;R:9982;i:1;R:799;}s:10:"8:cb_or_op";a:2:{i:0;R:9982;i:1;R:799;}s:11:"8:cb_and_op";a:2:{i:0;R:9982;i:1;R:799;}s:10:"8:cb_ge_op";a:2:{i:0;R:9982;i:1;R:799;}s:10:"8:cb_le_op";a:2:{i:0;R:9982;i:1;R:799;}s:10:"8:cb_eq_op";a:2:{i:0;R:9982;i:1;R:799;}s:19:"8:cb_edit_left_hint";a:2:{i:0;R:9982;i:1;R:799;}s:20:"8:cb_edit_right_hint";a:2:{i:0;R:9982;i:1;R:799;}s:21:"8:cb_edit_remove_hint";a:2:{i:0;R:9982;i:1;R:799;}s:19:"8:cb_edit_copy_hint";a:2:{i:0;R:9982;i:1;R:799;}s:21:"8:cb_edit_append_hint";a:2:{i:0;R:9982;i:1;R:799;}s:20:"8:cb_edit_clear_hint";a:2:{i:0;R:9982;i:1;R:799;}s:20:"8:cb_edit_paste_hint";a:2:{i:0;R:9982;i:1;R:799;}s:26:"8:cb_edit_paste_right_hint";a:2:{i:0;R:9982;i:1;R:799;}s:22:"8:categoryintersection";a:2:{i:0;s:24:"ext-categoryintersection";i:1;R:799;}s:27:"8:categoryintersection-desc";a:2:{i:0;R:10024;i:1;R:799;}s:27:"8:categoryintersection-doit";a:2:{i:0;R:10024;i:1;R:799;}s:36:"8:categoryintersection-maxcategories";a:2:{i:0;R:10024;i:1;R:799;}s:36:"8:categoryintersection-mincategories";a:2:{i:0;R:10024;i:1;R:799;}s:30:"8:categoryintersection-results";a:2:{i:0;R:10024;i:1;R:799;}s:31:"8:categorymembersonsidebar-desc";a:2:{i:0;s:28:"ext-categorymembersonsidebar";i:1;R:799;}s:24:"8:categorymultisort-desc";a:2:{i:0;s:21:"ext-categorymultisort";i:1;R:799;}s:39:"8:categorymultisort-defaultsortkey-name";a:2:{i:0;R:10033;i:1;R:799;}s:27:"8:categorymultisort-sortkey";a:2:{i:0;R:10033;i:1;R:799;}s:22:"8:categorymultisort-go";a:2:{i:0;R:10033;i:1;R:799;}s:35:"8:categorymultisort-default-sortkey";a:2:{i:0;R:10033;i:1;R:799;}s:16:"8:prefs-category";a:2:{i:0;R:10033;i:1;R:799;}s:31:"8:categorymultisortchinese-desc";a:2:{i:0;s:28:"ext-categorymultisortchinese";i:1;R:799;}s:48:"8:categorymultisort-sortkey-name-mandarin-pinyin";a:2:{i:0;R:10040;i:1;R:799;}s:50:"8:categorymultisort-sortkey-name-mandarin-bopomofo";a:2:{i:0;R:10040;i:1;R:799;}s:51:"8:categorymultisort-sortkey-name-mandarin-wadegiles";a:2:{i:0;R:10040;i:1;R:799;}s:46:"8:categorymultisort-sortkey-name-mandarin-mps2";a:2:{i:0;R:10040;i:1;R:799;}s:50:"8:categorymultisort-sortkey-name-mandarin-tongyong";a:2:{i:0;R:10040;i:1;R:799;}s:51:"8:categorymultisort-sortkey-name-cantonese-jyutping";a:2:{i:0;R:10040;i:1;R:799;}s:39:"8:categorymultisort-sortkey-name-stroke";a:2:{i:0;R:10040;i:1;R:799;}s:50:"8:categorymultisort-sortkey-name-stroke-simplified";a:2:{i:0;R:10040;i:1;R:799;}s:51:"8:categorymultisort-sortkey-name-stroke-traditional";a:2:{i:0;R:10040;i:1;R:799;}s:40:"8:categorymultisort-sortkey-name-radical";a:2:{i:0;R:10040;i:1;R:799;}s:51:"8:categorymultisort-sortkey-name-radical-simplified";a:2:{i:0;R:10040;i:1;R:799;}s:52:"8:categorymultisort-sortkey-name-radical-traditional";a:2:{i:0;R:10040;i:1;R:799;}s:23:"8:categoryonupload-desc";a:2:{i:0;s:20:"ext-categoryonupload";i:1;R:799;}s:24:"8:categoryonupload-label";a:2:{i:0;R:10054;i:1;R:799;}s:23:"8:categoryonupload-none";a:2:{i:0;R:10054;i:1;R:799;}s:26:"8:categorysortheaders-desc";a:2:{i:0;s:23:"ext-categorysortheaders";i:1;R:799;}s:17:"8:categorystepper";a:2:{i:0;s:19:"ext-categorystepper";i:1;R:799;}s:22:"8:categorystepper-desc";a:2:{i:0;R:10060;i:1;R:799;}s:21:"8:categorystepper-end";a:2:{i:0;R:10060;i:1;R:799;}s:23:"8:categorystepper-start";a:2:{i:0;R:10060;i:1;R:799;}s:20:"8:categorytests-desc";a:2:{i:0;s:17:"ext-categorytests";i:1;R:799;}s:20:"8:categorywatch-desc";a:2:{i:0;s:17:"ext-categorywatch";i:1;R:799;}s:28:"8:categorywatch-emailsubject";a:2:{i:0;R:10067;i:1;R:799;}s:25:"8:categorywatch-catmovein";a:2:{i:0;R:10067;i:1;R:799;}s:26:"8:categorywatch-catmoveout";a:2:{i:0;R:10067;i:1;R:799;}s:22:"8:categorywatch-catadd";a:2:{i:0;R:10067;i:1;R:799;}s:22:"8:categorywatch-catsub";a:2:{i:0;R:10067;i:1;R:799;}s:23:"8:categorywatch-autocat";a:2:{i:0;R:10067;i:1;R:799;}s:14:"8:changeauthor";a:2:{i:0;s:16:"ext-changeauthor";i:1;R:799;}s:19:"8:changeauthor-desc";a:2:{i:0;R:10075;i:1;R:799;}s:20:"8:changeauthor-title";a:2:{i:0;R:10075;i:1;R:799;}s:25:"8:changeauthor-search-box";a:2:{i:0;R:10075;i:1;R:799;}s:32:"8:changeauthor-pagename-or-revid";a:2:{i:0;R:10075;i:1;R:799;}s:30:"8:changeauthor-pagenameform-go";a:2:{i:0;R:10075;i:1;R:799;}s:22:"8:changeauthor-comment";a:2:{i:0;R:10075;i:1;R:799;}s:34:"8:changeauthor-changeauthors-multi";a:2:{i:0;R:10075;i:1;R:799;}s:32:"8:changeauthor-explanation-multi";a:2:{i:0;R:10075;i:1;R:799;}s:35:"8:changeauthor-changeauthors-single";a:2:{i:0;R:10075;i:1;R:799;}s:33:"8:changeauthor-explanation-single";a:2:{i:0;R:10075;i:1;R:799;}s:31:"8:changeauthor-invalid-username";a:2:{i:0;R:10075;i:1;R:799;}s:25:"8:changeauthor-nosuchuser";a:2:{i:0;R:10075;i:1;R:799;}s:22:"8:changeauthor-revview";a:2:{i:0;R:10075;i:1;R:799;}s:26:"8:changeauthor-nosuchtitle";a:2:{i:0;R:10075;i:1;R:799;}s:25:"8:changeauthor-weirderror";a:2:{i:0;R:10075;i:1;R:799;}s:26:"8:changeauthor-invalidform";a:2:{i:0;R:10075;i:1;R:799;}s:22:"8:changeauthor-success";a:2:{i:0;R:10075;i:1;R:799;}s:23:"8:changeauthor-logentry";a:2:{i:0;R:10075;i:1;R:799;}s:26:"8:changeauthor-logpagename";a:2:{i:0;R:10075;i:1;R:799;}s:26:"8:changeauthor-logpagetext";a:2:{i:0;R:10075;i:1;R:799;}s:18:"8:changeauthor-rev";a:2:{i:0;R:10075;i:1;R:799;}s:20:"8:right-changeauthor";a:2:{i:0;R:10075;i:1;R:799;}s:12:"8:checkpoint";a:2:{i:0;s:14:"ext-checkpoint";i:1;R:799;}s:17:"8:checkpoint-desc";a:2:{i:0;R:10099;i:1;R:799;}s:20:"8:checkpoint-tooltip";a:2:{i:0;R:10099;i:1;R:799;}s:19:"8:checkpoint-notice";a:2:{i:0;R:10099;i:1;R:799;}s:17:"8:chemicalsources";a:2:{i:0;s:13:"ext-chemistry";i:1;R:799;}s:21:"8:chemicalsource-desc";a:2:{i:0;R:10104;i:1;R:799;}s:22:"8:chemicalsources-desc";a:2:{i:0;R:10104;i:1;R:799;}s:24:"8:chemfunctions_listpage";a:2:{i:0;R:10104;i:1;R:799;}s:24:"8:chemfunctions_datalist";a:2:{i:0;R:10104;i:1;R:799;}s:19:"8:chemfunctions_cas";a:2:{i:0;R:10104;i:1;R:799;}s:22:"8:chemfunctions_einecs";a:2:{i:0;R:10104;i:1;R:799;}s:21:"8:chemfunctions_chebi";a:2:{i:0;R:10104;i:1;R:799;}s:23:"8:chemfunctions_pubchem";a:2:{i:0;R:10104;i:1;R:799;}s:22:"8:chemfunctions_smiles";a:2:{i:0;R:10104;i:1;R:799;}s:21:"8:chemfunctions_inchi";a:2:{i:0;R:10104;i:1;R:799;}s:21:"8:chemfunctions_rtecs";a:2:{i:0;R:10104;i:1;R:799;}s:20:"8:chemfunctions_kegg";a:2:{i:0;R:10104;i:1;R:799;}s:23:"8:chemfunctions_atccode";a:2:{i:0;R:10104;i:1;R:799;}s:24:"8:chemfunctions_drugbank";a:2:{i:0;R:10104;i:1;R:799;}s:24:"8:chemfunctions_ecnumber";a:2:{i:0;R:10104;i:1;R:799;}s:23:"8:chemfunctions_formula";a:2:{i:0;R:10104;i:1;R:799;}s:20:"8:chemfunctions_name";a:2:{i:0;R:10104;i:1;R:799;}s:34:"8:chemfunctions_chemforminputerror";a:2:{i:0;R:10104;i:1;R:799;}s:33:"8:chemfunctions_searchexplanation";a:2:{i:0;R:10104;i:1;R:799;}s:31:"8:cleanchanges-changerightslink";a:2:{i:0;s:16:"ext-cleanchanges";i:1;R:799;}s:19:"8:cleanchanges-desc";a:2:{i:0;R:10125;i:1;R:799;}s:23:"8:cleanchanges-language";a:2:{i:0;R:10125;i:1;R:799;}s:26:"8:cleanchanges-language-na";a:2:{i:0;R:10125;i:1;R:799;}s:20:"8:cleanchanges-users";a:2:{i:0;R:10125;i:1;R:799;}s:28:"8:cleanchanges-showuserlinks";a:2:{i:0;R:10125;i:1;R:799;}s:17:"8:closewikis-desc";a:2:{i:0;s:14:"ext-closewikis";i:1;R:799;}s:19:"8:closewikis-closed";a:2:{i:0;R:10132;i:1;R:799;}s:17:"8:closewikis-page";a:2:{i:0;R:10132;i:1;R:799;}s:23:"8:closewikis-page-close";a:2:{i:0;R:10132;i:1;R:799;}s:28:"8:closewikis-page-close-wiki";a:2:{i:0;R:10132;i:1;R:799;}s:31:"8:closewikis-page-close-dreason";a:2:{i:0;R:10132;i:1;R:799;}s:30:"8:closewikis-page-close-reason";a:2:{i:0;R:10132;i:1;R:799;}s:30:"8:closewikis-page-close-submit";a:2:{i:0;R:10132;i:1;R:799;}s:31:"8:closewikis-page-close-success";a:2:{i:0;R:10132;i:1;R:799;}s:24:"8:closewikis-page-reopen";a:2:{i:0;R:10132;i:1;R:799;}s:29:"8:closewikis-page-reopen-wiki";a:2:{i:0;R:10132;i:1;R:799;}s:31:"8:closewikis-page-reopen-reason";a:2:{i:0;R:10132;i:1;R:799;}s:31:"8:closewikis-page-reopen-submit";a:2:{i:0;R:10132;i:1;R:799;}s:32:"8:closewikis-page-reopen-success";a:2:{i:0;R:10132;i:1;R:799;}s:28:"8:closewikis-page-err-nowiki";a:2:{i:0;R:10132;i:1;R:799;}s:28:"8:closewikis-page-err-closed";a:2:{i:0;R:10132;i:1;R:799;}s:28:"8:closewikis-page-err-opened";a:2:{i:0;R:10132;i:1;R:799;}s:17:"8:closewikis-list";a:2:{i:0;R:10132;i:1;R:799;}s:23:"8:closewikis-list-intro";a:2:{i:0;R:10132;i:1;R:799;}s:29:"8:closewikis-list-header-wiki";a:2:{i:0;R:10132;i:1;R:799;}s:27:"8:closewikis-list-header-by";a:2:{i:0;R:10132;i:1;R:799;}s:34:"8:closewikis-list-header-timestamp";a:2:{i:0;R:10132;i:1;R:799;}s:35:"8:closewikis-list-header-dispreason";a:2:{i:0;R:10132;i:1;R:799;}s:16:"8:closewikis-log";a:2:{i:0;R:10132;i:1;R:799;}s:23:"8:closewikis-log-header";a:2:{i:0;R:10132;i:1;R:799;}s:22:"8:closewikis-log-close";a:2:{i:0;R:10132;i:1;R:799;}s:23:"8:closewikis-log-reopen";a:2:{i:0;R:10132;i:1;R:799;}s:23:"8:right-editclosedwikis";a:2:{i:0;R:10132;i:1;R:799;}s:18:"8:right-closewikis";a:2:{i:0;R:10132;i:1;R:799;}s:17:"8:codeeditor-desc";a:2:{i:0;s:14:"ext-codeeditor";i:1;R:799;}s:27:"8:codeeditor-toolbar-toggle";a:2:{i:0;R:10162;i:1;R:799;}s:17:"8:collabwatchlist";a:2:{i:0;s:19:"ext-collabwatchlist";i:1;R:799;}s:22:"8:collabwatchlist-desc";a:2:{i:0;R:10165;i:1;R:799;}s:24:"8:specialcollabwatchlist";a:2:{i:0;R:10165;i:1;R:799;}s:25:"8:collabwatchlist-details";a:2:{i:0;R:10165;i:1;R:799;}s:26:"8:collabwatchlisttagselect";a:2:{i:0;R:10165;i:1;R:799;}s:27:"8:collabwatchlisttagcomment";a:2:{i:0;R:10165;i:1;R:799;}s:29:"8:collabwatchlistsettagbutton";a:2:{i:0;R:10165;i:1;R:799;}s:27:"8:collabwatchlist-unset-tag";a:2:{i:0;R:10165;i:1;R:799;}s:27:"8:collabwatchlisttools-view";a:2:{i:0;R:10165;i:1;R:799;}s:27:"8:collabwatchlisttools-edit";a:2:{i:0;R:10165;i:1;R:799;}s:36:"8:collabwatchlisttools-rawcategories";a:2:{i:0;R:10165;i:1;R:799;}s:30:"8:collabwatchlisttools-rawtags";a:2:{i:0;R:10165;i:1;R:799;}s:31:"8:collabwatchlisttools-rawusers";a:2:{i:0;R:10165;i:1;R:799;}s:29:"8:collabwatchlisttools-delete";a:2:{i:0;R:10165;i:1;R:799;}s:21:"8:collabwatchlistsall";a:2:{i:0;R:10165;i:1;R:799;}s:27:"8:collabwatchlistfiltertags";a:2:{i:0;R:10165;i:1;R:799;}s:38:"8:collabwatchlistedit-users-raw-submit";a:2:{i:0;R:10165;i:1;R:799;}s:31:"8:collabwatchlistedit-raw-title";a:2:{i:0;R:10165;i:1;R:799;}s:36:"8:collabwatchlistedit-tags-raw-title";a:2:{i:0;R:10165;i:1;R:799;}s:37:"8:collabwatchlistedit-users-raw-title";a:2:{i:0;R:10165;i:1;R:799;}s:38:"8:collabwatchlistedit-users-last-owner";a:2:{i:0;R:10165;i:1;R:799;}s:30:"8:collabwatchlistedit-numitems";a:2:{i:0;R:10165;i:1;R:799;}s:29:"8:collabwatchlistedit-noitems";a:2:{i:0;R:10165;i:1;R:799;}s:35:"8:collabwatchlistedit-tags-numitems";a:2:{i:0;R:10165;i:1;R:799;}s:34:"8:collabwatchlistedit-tags-noitems";a:2:{i:0;R:10165;i:1;R:799;}s:36:"8:collabwatchlistedit-users-numitems";a:2:{i:0;R:10165;i:1;R:799;}s:35:"8:collabwatchlistedit-users-noitems";a:2:{i:0;R:10165;i:1;R:799;}s:32:"8:collabwatchlistedit-raw-legend";a:2:{i:0;R:10165;i:1;R:799;}s:38:"8:collabwatchlistedit-users-raw-legend";a:2:{i:0;R:10165;i:1;R:799;}s:37:"8:collabwatchlistedit-tags-raw-legend";a:2:{i:0;R:10165;i:1;R:799;}s:33:"8:collabwatchlistedit-raw-explain";a:2:{i:0;R:10165;i:1;R:799;}s:38:"8:collabwatchlistedit-tags-raw-explain";a:2:{i:0;R:10165;i:1;R:799;}s:39:"8:collabwatchlistedit-users-raw-explain";a:2:{i:0;R:10165;i:1;R:799;}s:32:"8:collabwatchlistedit-raw-titles";a:2:{i:0;R:10165;i:1;R:799;}s:37:"8:collabwatchlistedit-tags-raw-titles";a:2:{i:0;R:10165;i:1;R:799;}s:38:"8:collabwatchlistedit-users-raw-titles";a:2:{i:0;R:10165;i:1;R:799;}s:34:"8:collabwatchlistedit-normal-title";a:2:{i:0;R:10165;i:1;R:799;}s:35:"8:collabwatchlistedit-normal-legend";a:2:{i:0;R:10165;i:1;R:799;}s:36:"8:collabwatchlistedit-normal-explain";a:2:{i:0;R:10165;i:1;R:799;}s:37:"8:collabwatchlistedit-tags-raw-submit";a:2:{i:0;R:10165;i:1;R:799;}s:33:"8:collabwatchlistedit-normal-done";a:2:{i:0;R:10165;i:1;R:799;}s:35:"8:collabwatchlistedit-tags-raw-done";a:2:{i:0;R:10165;i:1;R:799;}s:36:"8:collabwatchlistedit-users-raw-done";a:2:{i:0;R:10165;i:1;R:799;}s:36:"8:collabwatchlistedit-tags-raw-added";a:2:{i:0;R:10165;i:1;R:799;}s:37:"8:collabwatchlistedit-users-raw-added";a:2:{i:0;R:10165;i:1;R:799;}s:38:"8:collabwatchlistedit-tags-raw-removed";a:2:{i:0;R:10165;i:1;R:799;}s:39:"8:collabwatchlistedit-users-raw-removed";a:2:{i:0;R:10165;i:1;R:799;}s:27:"8:collabwatchlistinverttags";a:2:{i:0;R:10165;i:1;R:799;}s:23:"8:collabwatchlistpatrol";a:2:{i:0;R:10165;i:1;R:799;}s:30:"8:collabwatchlisttools-newlist";a:2:{i:0;R:10165;i:1;R:799;}s:30:"8:collabwatchlistdelete-legend";a:2:{i:0;R:10165;i:1;R:799;}s:31:"8:collabwatchlistdelete-explain";a:2:{i:0;R:10165;i:1;R:799;}s:30:"8:collabwatchlistdelete-submit";a:2:{i:0;R:10165;i:1;R:799;}s:29:"8:collabwatchlistdelete-title";a:2:{i:0;R:10165;i:1;R:799;}s:39:"8:collabwatchlistedit-set-tags-numitems";a:2:{i:0;R:10165;i:1;R:799;}s:38:"8:collabwatchlistedit-set-tags-noitems";a:2:{i:0;R:10165;i:1;R:799;}s:27:"8:collabwatchlistnew-legend";a:2:{i:0;R:10165;i:1;R:799;}s:28:"8:collabwatchlistnew-explain";a:2:{i:0;R:10165;i:1;R:799;}s:25:"8:collabwatchlistnew-name";a:2:{i:0;R:10165;i:1;R:799;}s:27:"8:collabwatchlistnew-submit";a:2:{i:0;R:10165;i:1;R:799;}s:30:"8:collabwatchlistedit-raw-done";a:2:{i:0;R:10165;i:1;R:799;}s:31:"8:collabwatchlistedit-raw-added";a:2:{i:0;R:10165;i:1;R:799;}s:33:"8:collabwatchlistedit-raw-removed";a:2:{i:0;R:10165;i:1;R:799;}s:35:"8:collabwatchlistedit-normal-submit";a:2:{i:0;R:10165;i:1;R:799;}s:34:"8:collabwatchlistshowhidelistusers";a:2:{i:0;R:10165;i:1;R:799;}s:34:"8:tog-collabwatchlisthidelistusers";a:2:{i:0;R:10165;i:1;R:799;}s:17:"8:commentbox-desc";a:2:{i:0;s:14:"ext-commentbox";i:1;R:799;}s:20:"8:commentbox-prefill";a:2:{i:0;R:10232;i:1;R:799;}s:18:"8:commentbox-intro";a:2:{i:0;R:10232;i:1;R:799;}s:23:"8:commentbox-savebutton";a:2:{i:0;R:10232;i:1;R:799;}s:17:"8:commentbox-name";a:2:{i:0;R:10232;i:1;R:799;}s:29:"8:commentbox-name-explanation";a:2:{i:0;R:10232;i:1;R:799;}s:16:"8:commentbox-log";a:2:{i:0;R:10232;i:1;R:799;}s:34:"8:commentbox-first-comment-heading";a:2:{i:0;R:10232;i:1;R:799;}s:18:"8:commentbox-regex";a:2:{i:0;R:10232;i:1;R:799;}s:28:"8:commentbox-errorpage-title";a:2:{i:0;R:10232;i:1;R:799;}s:35:"8:commentbox-error-page-nonexistent";a:2:{i:0;R:10232;i:1;R:799;}s:28:"8:commentbox-error-namespace";a:2:{i:0;R:10232;i:1;R:799;}s:32:"8:commentbox-error-empty-comment";a:2:{i:0;R:10232;i:1;R:799;}s:19:"8:commentpages-desc";a:2:{i:0;s:16:"ext-commentpages";i:1;R:799;}s:22:"8:commenttab-editintro";a:2:{i:0;R:10246;i:1;R:799;}s:20:"8:commenttab-preload";a:2:{i:0;R:10246;i:1;R:799;}s:16:"8:nstab-comments";a:2:{i:0;R:10246;i:1;R:799;}s:29:"8:commentspammer-save-blocked";a:2:{i:0;s:18:"ext-commentspammer";i:1;R:799;}s:21:"8:commentspammer-desc";a:2:{i:0;R:10251;i:1;R:799;}s:24:"8:commentspammer-log-msg";a:2:{i:0;R:10251;i:1;R:799;}s:29:"8:commentspammer-log-msg-info";a:2:{i:0;R:10251;i:1;R:799;}s:21:"8:cspammerlogpagetext";a:2:{i:0;R:10251;i:1;R:799;}s:19:"8:cspammer-log-page";a:2:{i:0;R:10251;i:1;R:799;}s:29:"8:conditionalshowsection-desc";a:2:{i:0;s:26:"ext-conditionalshowsection";i:1;R:799;}s:11:"8:configure";a:2:{i:0;s:13:"ext-configure";i:1;R:799;}s:16:"8:configure-desc";a:2:{i:0;R:10260;i:1;R:799;}s:22:"8:configure-desc-group";a:2:{i:0;R:10260;i:1;R:799;}s:20:"8:configure-desc-key";a:2:{i:0;R:10260;i:1;R:799;}s:19:"8:configure-desc-ns";a:2:{i:0;R:10260;i:1;R:799;}s:20:"8:configure-desc-val";a:2:{i:0;R:10260;i:1;R:799;}s:21:"8:configure-edit-core";a:2:{i:0;R:10260;i:1;R:799;}s:20:"8:configure-edit-ext";a:2:{i:0;R:10260;i:1;R:799;}s:35:"8:configure-viewconfig-default-diff";a:2:{i:0;R:10260;i:1;R:799;}s:32:"8:configure-ext-ext-dependencies";a:2:{i:0;R:10260;i:1;R:799;}s:34:"8:configure-ext-ext-dependency-err";a:2:{i:0;R:10260;i:1;R:799;}s:19:"8:configure-ext-doc";a:2:{i:0;R:10260;i:1;R:799;}s:28:"8:configure-ext-schemachange";a:2:{i:0;R:10260;i:1;R:799;}s:24:"8:configure-ext-settings";a:2:{i:0;R:10260;i:1;R:799;}s:35:"8:configure-ext-settings-dep-errors";a:2:{i:0;R:10260;i:1;R:799;}s:34:"8:configure-ext-settings-dep-error";a:2:{i:0;R:10260;i:1;R:799;}s:29:"8:configure-ext-use-extension";a:2:{i:0;R:10260;i:1;R:799;}s:19:"8:configure-ext-use";a:2:{i:0;R:10260;i:1;R:799;}s:23:"8:configure-form-reason";a:2:{i:0;R:10260;i:1;R:799;}s:22:"8:configure-customised";a:2:{i:0;R:10260;i:1;R:799;}s:33:"8:configure-arrayinput-oneperline";a:2:{i:0;R:10260;i:1;R:799;}s:19:"8:configure-summary";a:2:{i:0;R:10260;i:1;R:799;}s:20:"8:configure-btn-save";a:2:{i:0;R:10260;i:1;R:799;}s:20:"8:configure-db-error";a:2:{i:0;R:10260;i:1;R:799;}s:26:"8:configure-db-table-error";a:2:{i:0;R:10260;i:1;R:799;}s:34:"8:configure-directory-not-writable";a:2:{i:0;R:10260;i:1;R:799;}s:20:"8:configure-edit-old";a:2:{i:0;R:10260;i:1;R:799;}s:17:"8:configure-error";a:2:{i:0;R:10260;i:1;R:799;}s:18:"8:configure-js-add";a:2:{i:0;R:10260;i:1;R:799;}s:27:"8:configure-js-group-exists";a:2:{i:0;R:10260;i:1;R:799;}s:27:"8:configure-js-prompt-group";a:2:{i:0;R:10260;i:1;R:799;}s:21:"8:configure-js-remove";a:2:{i:0;R:10260;i:1;R:799;}s:25:"8:configure-js-remove-row";a:2:{i:0;R:10260;i:1;R:799;}s:28:"8:configure-js-get-image-url";a:2:{i:0;R:10260;i:1;R:799;}s:26:"8:configure-js-image-error";a:2:{i:0;R:10260;i:1;R:799;}s:28:"8:configure-js-biglist-shown";a:2:{i:0;R:10260;i:1;R:799;}s:29:"8:configure-js-biglist-hidden";a:2:{i:0;R:10260;i:1;R:799;}s:27:"8:configure-js-biglist-show";a:2:{i:0;R:10260;i:1;R:799;}s:27:"8:configure-js-biglist-hide";a:2:{i:0;R:10260;i:1;R:799;}s:27:"8:configure-js-summary-none";a:2:{i:0;R:10260;i:1;R:799;}s:28:"8:configure-js-search-legend";a:2:{i:0;R:10260;i:1;R:799;}s:28:"8:configure-js-search-prompt";a:2:{i:0;R:10260;i:1;R:799;}s:19:"8:configure-no-diff";a:2:{i:0;R:10260;i:1;R:799;}s:24:"8:configure-no-directory";a:2:{i:0;R:10260;i:1;R:799;}s:18:"8:configure-no-old";a:2:{i:0;R:10260;i:1;R:799;}s:20:"8:configure-no-setup";a:2:{i:0;R:10260;i:1;R:799;}s:24:"8:configure-no-transwiki";a:2:{i:0;R:10260;i:1;R:799;}s:15:"8:configure-old";a:2:{i:0;R:10260;i:1;R:799;}s:24:"8:configure-old-versions";a:2:{i:0;R:10260;i:1;R:799;}s:29:"8:configure-old-not-available";a:2:{i:0;R:10260;i:1;R:799;}s:23:"8:configure-old-changes";a:2:{i:0;R:10260;i:1;R:799;}s:23:"8:configure-old-summary";a:2:{i:0;R:10260;i:1;R:799;}s:32:"8:configure-old-summary-datetime";a:2:{i:0;R:10260;i:1;R:799;}s:17:"8:configure-saved";a:2:{i:0;R:10260;i:1;R:799;}s:20:"8:configure-backlink";a:2:{i:0;R:10260;i:1;R:799;}s:33:"8:configure-image-url-explanation";a:2:{i:0;R:10260;i:1;R:799;}s:26:"8:configure-section-robots";a:2:{i:0;R:10260;i:1;R:799;}s:28:"8:configure-section-features";a:2:{i:0;R:10260;i:1;R:799;}s:27:"8:configure-section-general";a:2:{i:0;R:10260;i:1;R:799;}s:25:"8:configure-section-pages";a:2:{i:0;R:10260;i:1;R:799;}s:25:"8:configure-section-paths";a:2:{i:0;R:10260;i:1;R:799;}s:22:"8:configure-section-db";a:2:{i:0;R:10260;i:1;R:799;}s:34:"8:configure-section-load-balancing";a:2:{i:0;R:10260;i:1;R:799;}s:25:"8:configure-section-mysql";a:2:{i:0;R:10260;i:1;R:799;}s:28:"8:configure-section-postgres";a:2:{i:0;R:10260;i:1;R:799;}s:26:"8:configure-section-sqlite";a:2:{i:0;R:10260;i:1;R:799;}s:25:"8:configure-section-email";a:2:{i:0;R:10260;i:1;R:799;}s:26:"8:configure-section-enotif";a:2:{i:0;R:10260;i:1;R:799;}s:32:"8:configure-section-localization";a:2:{i:0;R:10260;i:1;R:799;}s:28:"8:configure-section-timezone";a:2:{i:0;R:10260;i:1;R:799;}s:24:"8:configure-section-html";a:2:{i:0;R:10260;i:1;R:799;}s:25:"8:configure-section-debug";a:2:{i:0;R:10260;i:1;R:799;}s:29:"8:configure-section-profiling";a:2:{i:0;R:10260;i:1;R:799;}s:24:"8:configure-section-site";a:2:{i:0;R:10260;i:1;R:799;}s:24:"8:configure-section-ajax";a:2:{i:0;R:10260;i:1;R:799;}s:26:"8:configure-section-css-js";a:2:{i:0;R:10260;i:1;R:799;}s:34:"8:configure-section-resourceloader";a:2:{i:0;R:10260;i:1;R:799;}s:30:"8:configure-section-namespaces";a:2:{i:0;R:10260;i:1;R:799;}s:25:"8:configure-section-stats";a:2:{i:0;R:10260;i:1;R:799;}s:24:"8:configure-section-skin";a:2:{i:0;R:10260;i:1;R:799;}s:26:"8:configure-section-vector";a:2:{i:0;R:10260;i:1;R:799;}s:28:"8:configure-section-category";a:2:{i:0;R:10260;i:1;R:799;}s:25:"8:configure-section-cache";a:2:{i:0;R:10260;i:1;R:799;}s:26:"8:configure-section-pcache";a:2:{i:0;R:10260;i:1;R:799;}s:32:"8:configure-section-messagecache";a:2:{i:0;R:10260;i:1;R:799;}s:29:"8:configure-section-memcached";a:2:{i:0;R:10260;i:1;R:799;}s:29:"8:configure-section-interwiki";a:2:{i:0;R:10260;i:1;R:799;}s:26:"8:configure-section-access";a:2:{i:0;R:10260;i:1;R:799;}s:26:"8:configure-section-groups";a:2:{i:0;R:10260;i:1;R:799;}s:25:"8:configure-section-block";a:2:{i:0;R:10260;i:1;R:799;}s:25:"8:configure-section-rates";a:2:{i:0;R:10260;i:1;R:799;}s:25:"8:configure-section-proxy";a:2:{i:0;R:10260;i:1;R:799;}s:25:"8:configure-section-squid";a:2:{i:0;R:10260;i:1;R:799;}s:26:"8:configure-section-cookie";a:2:{i:0;R:10260;i:1;R:799;}s:31:"8:configure-section-performance";a:2:{i:0;R:10260;i:1;R:799;}s:24:"8:configure-section-test";a:2:{i:0;R:10260;i:1;R:799;}s:26:"8:configure-section-upload";a:2:{i:0;R:10260;i:1;R:799;}s:32:"8:configure-section-sharedupload";a:2:{i:0;R:10260;i:1;R:799;}s:24:"8:configure-section-mime";a:2:{i:0;R:10260;i:1;R:799;}s:26:"8:configure-section-images";a:2:{i:0;R:10260;i:1;R:799;}s:24:"8:configure-section-djvu";a:2:{i:0;R:10260;i:1;R:799;}s:31:"8:configure-section-imagemagick";a:2:{i:0;R:10260;i:1;R:799;}s:23:"8:configure-section-svg";a:2:{i:0;R:10260;i:1;R:799;}s:29:"8:configure-section-antivirus";a:2:{i:0;R:10260;i:1;R:799;}s:26:"8:configure-section-parser";a:2:{i:0;R:10260;i:1;R:799;}s:24:"8:configure-section-tidy";a:2:{i:0;R:10260;i:1;R:799;}s:32:"8:configure-section-specialpages";a:2:{i:0;R:10260;i:1;R:799;}s:33:"8:configure-section-recentchanges";a:2:{i:0;R:10260;i:1;R:799;}s:25:"8:configure-section-users";a:2:{i:0;R:10260;i:1;R:799;}s:32:"8:configure-section-externalauth";a:2:{i:0;R:10260;i:1;R:799;}s:24:"8:configure-section-feed";a:2:{i:0;R:10260;i:1;R:799;}s:23:"8:configure-section-job";a:2:{i:0;R:10260;i:1;R:799;}s:26:"8:configure-section-search";a:2:{i:0;R:10260;i:1;R:799;}s:29:"8:configure-section-copyright";a:2:{i:0;R:10260;i:1;R:799;}s:24:"8:configure-section-htcp";a:2:{i:0;R:10260;i:1;R:799;}s:24:"8:configure-section-misc";a:2:{i:0;R:10260;i:1;R:799;}s:26:"8:configure-section-filter";a:2:{i:0;R:10260;i:1;R:799;}s:33:"8:configure-section-mw-extensions";a:2:{i:0;R:10260;i:1;R:799;}s:34:"8:configure-section-external-tools";a:2:{i:0;R:10260;i:1;R:799;}s:30:"8:configure-section-filesystem";a:2:{i:0;R:10260;i:1;R:799;}s:29:"8:configure-section-thumbnail";a:2:{i:0;R:10260;i:1;R:799;}s:26:"8:configure-section-output";a:2:{i:0;R:10260;i:1;R:799;}s:23:"8:configure-select-wiki";a:2:{i:0;R:10260;i:1;R:799;}s:28:"8:configure-select-wiki-desc";a:2:{i:0;R:10260;i:1;R:799;}s:33:"8:configure-select-wiki-view-desc";a:2:{i:0;R:10260;i:1;R:799;}s:32:"8:configure-select-wiki-view-all";a:2:{i:0;R:10260;i:1;R:799;}s:37:"8:configure-select-wiki-view-specific";a:2:{i:0;R:10260;i:1;R:799;}s:30:"8:configure-select-wiki-submit";a:2:{i:0;R:10260;i:1;R:799;}s:33:"8:configure-setting-not-available";a:2:{i:0;R:10260;i:1;R:799;}s:34:"8:configure-transwiki-not-in-range";a:2:{i:0;R:10260;i:1;R:799;}s:16:"8:configure-view";a:2:{i:0;R:10260;i:1;R:799;}s:29:"8:configure-view-all-versions";a:2:{i:0;R:10260;i:1;R:799;}s:24:"8:configure-view-default";a:2:{i:0;R:10260;i:1;R:799;}s:28:"8:configure-view-not-allowed";a:2:{i:0;R:10260;i:1;R:799;}s:27:"8:configure-viewconfig-line";a:2:{i:0;R:10260;i:1;R:799;}s:12:"8:extensions";a:2:{i:0;R:10260;i:1;R:799;}s:17:"8:right-configure";a:2:{i:0;R:10260;i:1;R:799;}s:21:"8:right-configure-all";a:2:{i:0;R:10260;i:1;R:799;}s:27:"8:right-configure-interwiki";a:2:{i:0;R:10260;i:1;R:799;}s:18:"8:right-extensions";a:2:{i:0;R:10260;i:1;R:799;}s:22:"8:right-extensions-all";a:2:{i:0;R:10260;i:1;R:799;}s:28:"8:right-extensions-interwiki";a:2:{i:0;R:10260;i:1;R:799;}s:18:"8:right-viewconfig";a:2:{i:0;R:10260;i:1;R:799;}s:22:"8:right-viewconfig-all";a:2:{i:0;R:10260;i:1;R:799;}s:28:"8:right-viewconfig-interwiki";a:2:{i:0;R:10260;i:1;R:799;}s:12:"8:viewconfig";a:2:{i:0;R:10260;i:1;R:799;}s:32:"8:configure-throttle-action-edit";a:2:{i:0;R:10260;i:1;R:799;}s:32:"8:configure-throttle-action-move";a:2:{i:0;R:10260;i:1;R:799;}s:36:"8:configure-throttle-action-rollback";a:2:{i:0;R:10260;i:1;R:799;}s:40:"8:configure-throttle-action-mailpassword";a:2:{i:0;R:10260;i:1;R:799;}s:37:"8:configure-throttle-action-emailuser";a:2:{i:0;R:10260;i:1;R:799;}s:31:"8:configure-throttle-group-anon";a:2:{i:0;R:10260;i:1;R:799;}s:31:"8:configure-throttle-group-user";a:2:{i:0;R:10260;i:1;R:799;}s:33:"8:configure-throttle-group-newbie";a:2:{i:0;R:10260;i:1;R:799;}s:29:"8:configure-throttle-group-ip";a:2:{i:0;R:10260;i:1;R:799;}s:33:"8:configure-throttle-group-subnet";a:2:{i:0;R:10260;i:1;R:799;}s:26:"8:configure-throttle-count";a:2:{i:0;R:10260;i:1;R:799;}s:27:"8:configure-throttle-period";a:2:{i:0;R:10260;i:1;R:799;}s:28:"8:configure-throttle-summary";a:2:{i:0;R:10260;i:1;R:799;}s:26:"8:configure-throttle-group";a:2:{i:0;R:10260;i:1;R:799;}s:26:"8:configure-throttle-limit";a:2:{i:0;R:10260;i:1;R:799;}s:25:"8:configure-throttle-none";a:2:{i:0;R:10260;i:1;R:799;}s:30:"8:configure-condition-operator";a:2:{i:0;R:10260;i:1;R:799;}s:33:"8:configure-condition-operator-or";a:2:{i:0;R:10260;i:1;R:799;}s:34:"8:configure-condition-operator-and";a:2:{i:0;R:10260;i:1;R:799;}s:34:"8:configure-condition-operator-xor";a:2:{i:0;R:10260;i:1;R:799;}s:34:"8:configure-condition-operator-not";a:2:{i:0;R:10260;i:1;R:799;}s:26:"8:configure-condition-name";a:2:{i:0;R:10260;i:1;R:799;}s:33:"8:configure-condition-requirement";a:2:{i:0;R:10260;i:1;R:799;}s:28:"8:configure-condition-name-1";a:2:{i:0;R:10260;i:1;R:799;}s:28:"8:configure-condition-name-2";a:2:{i:0;R:10260;i:1;R:799;}s:28:"8:configure-condition-name-3";a:2:{i:0;R:10260;i:1;R:799;}s:28:"8:configure-condition-name-4";a:2:{i:0;R:10260;i:1;R:799;}s:28:"8:configure-condition-name-5";a:2:{i:0;R:10260;i:1;R:799;}s:28:"8:configure-condition-name-6";a:2:{i:0;R:10260;i:1;R:799;}s:28:"8:configure-condition-name-7";a:2:{i:0;R:10260;i:1;R:799;}s:31:"8:configure-autopromote-noconds";a:2:{i:0;R:10260;i:1;R:799;}s:35:"8:configure-condition-description-1";a:2:{i:0;R:10260;i:1;R:799;}s:35:"8:configure-condition-description-2";a:2:{i:0;R:10260;i:1;R:799;}s:35:"8:configure-condition-description-3";a:2:{i:0;R:10260;i:1;R:799;}s:35:"8:configure-condition-description-4";a:2:{i:0;R:10260;i:1;R:799;}s:35:"8:configure-condition-description-5";a:2:{i:0;R:10260;i:1;R:799;}s:35:"8:configure-condition-description-6";a:2:{i:0;R:10260;i:1;R:799;}s:35:"8:configure-condition-description-7";a:2:{i:0;R:10260;i:1;R:799;}s:34:"8:configure-boolop-description-and";a:2:{i:0;R:10260;i:1;R:799;}s:33:"8:configure-boolop-description-or";a:2:{i:0;R:10260;i:1;R:799;}s:34:"8:configure-boolop-description-xor";a:2:{i:0;R:10260;i:1;R:799;}s:34:"8:configure-boolop-description-not";a:2:{i:0;R:10260;i:1;R:799;}s:27:"8:configure-farmer-settings";a:2:{i:0;R:10260;i:1;R:799;}s:29:"8:configure-farmer-extensions";a:2:{i:0;R:10260;i:1;R:799;}s:34:"8:configure-farmer-extensions-list";a:2:{i:0;R:10260;i:1;R:799;}s:24:"8:configure-setting-desc";a:2:{i:0;s:21:"ext-configuresettings";i:1;R:799;}s:30:"8:configure-setting-wgsitename";a:2:{i:0;R:10452;i:1;R:799;}s:33:"8:configure-setting-wgactionpaths";a:2:{i:0;R:10452;i:1;R:799;}s:37:"8:configure-setting-wgactionpaths-key";a:2:{i:0;R:10452;i:1;R:799;}s:39:"8:configure-setting-wgactionpaths-value";a:2:{i:0;R:10452;i:1;R:799;}s:40:"8:configure-setting-wgalldbsarelocalhost";a:2:{i:0;R:10452;i:1;R:799;}s:37:"8:configure-setting-wgdbavgstatuspoll";a:2:{i:0;R:10452;i:1;R:799;}s:32:"8:configure-setting-wgdberrorlog";a:2:{i:0;R:10452;i:1;R:799;}s:28:"8:configure-setting-wgdbname";a:2:{i:0;R:10452;i:1;R:799;}s:32:"8:configure-setting-wgdbpassword";a:2:{i:0;R:10452;i:1;R:799;}s:37:"8:configure-setting-wgdbadminpassword";a:2:{i:0;R:10452;i:1;R:799;}s:28:"8:configure-setting-wgdbport";a:2:{i:0;R:10452;i:1;R:799;}s:30:"8:configure-setting-wgdbserver";a:2:{i:0;R:10452;i:1;R:799;}s:28:"8:configure-setting-wgdbtype";a:2:{i:0;R:10452;i:1;R:799;}s:28:"8:configure-setting-wgdbuser";a:2:{i:0;R:10452;i:1;R:799;}s:33:"8:configure-setting-wgdbadminuser";a:2:{i:0;R:10452;i:1;R:799;}s:36:"8:configure-setting-wglocaldatabases";a:2:{i:0;R:10452;i:1;R:799;}s:32:"8:configure-setting-wgsearchtype";a:2:{i:0;R:10452;i:1;R:799;}s:30:"8:configure-setting-wgshareddb";a:2:{i:0;R:10452;i:1;R:799;}s:34:"8:configure-setting-wgsharedprefix";a:2:{i:0;R:10452;i:1;R:799;}s:34:"8:configure-setting-wgsharedtables";a:2:{i:0;R:10452;i:1;R:799;}s:38:"8:configure-setting-wgallowimagemoving";a:2:{i:0;R:10452;i:1;R:799;}s:42:"8:configure-setting-wgcustomconvertcommand";a:2:{i:0;R:10452;i:1;R:799;}s:46:"8:configure-setting-wggeneratethumbnailonparse";a:2:{i:0;R:10452;i:1;R:799;}s:43:"8:configure-setting-wgshowarchivethumbnails";a:2:{i:0;R:10452;i:1;R:799;}s:39:"8:configure-setting-wgignoreimageerrors";a:2:{i:0;R:10452;i:1;R:799;}s:38:"8:configure-setting-wgillegalfilechars";a:2:{i:0;R:10452;i:1;R:799;}s:33:"8:configure-setting-wgimagelimits";a:2:{i:0;R:10452;i:1;R:799;}s:40:"8:configure-setting-wgmaxanimatedgifarea";a:2:{i:0;R:10452;i:1;R:799;}s:34:"8:configure-setting-wgmaximagearea";a:2:{i:0;R:10452;i:1;R:799;}s:35:"8:configure-setting-wgmediahandlers";a:2:{i:0;R:10452;i:1;R:799;}s:39:"8:configure-setting-wgmediahandlers-key";a:2:{i:0;R:10452;i:1;R:799;}s:41:"8:configure-setting-wgmediahandlers-value";a:2:{i:0;R:10452;i:1;R:799;}s:41:"8:configure-setting-wgthumbnailscriptpath";a:2:{i:0;R:10452;i:1;R:799;}s:34:"8:configure-setting-wgthumbupright";a:2:{i:0;R:10452;i:1;R:799;}s:30:"8:configure-setting-wgshowexif";a:2:{i:0;R:10452;i:1;R:799;}s:33:"8:configure-setting-wgthumblimits";a:2:{i:0;R:10452;i:1;R:799;}s:47:"8:configure-setting-wgexcludefromthumbnailpurge";a:2:{i:0;R:10452;i:1;R:799;}s:36:"8:configure-setting-wguseimageresize";a:2:{i:0;R:10452;i:1;R:799;}s:40:"8:configure-setting-wgenableautorotation";a:2:{i:0;R:10452;i:1;R:799;}s:41:"8:configure-setting-wgtrustedmediaformats";a:2:{i:0;R:10452;i:1;R:799;}s:36:"8:configure-setting-wgimgauthdetails";a:2:{i:0;R:10452;i:1;R:799;}s:39:"8:configure-setting-wgimgauthpublictest";a:2:{i:0;R:10452;i:1;R:799;}s:39:"8:configure-setting-wgtiffthumbnailtype";a:2:{i:0;R:10452;i:1;R:799;}s:35:"8:configure-setting-wgmaincachetype";a:2:{i:0;R:10452;i:1;R:799;}s:32:"8:configure-setting-wgdbahandler";a:2:{i:0;R:10452;i:1;R:799;}s:32:"8:configure-setting-wgcacheepoch";a:2:{i:0;R:10452;i:1;R:799;}s:32:"8:configure-setting-wgcachepages";a:2:{i:0;R:10452;i:1;R:799;}s:33:"8:configure-setting-wgcacheprefix";a:2:{i:0;R:10452;i:1;R:799;}s:36:"8:configure-setting-wgclockskewfudge";a:2:{i:0;R:10452;i:1;R:799;}s:58:"8:configure-setting-wginvalidatecacheonlocalsettingschange";a:2:{i:0;R:10452;i:1;R:799;}s:40:"8:configure-setting-wgfilecachedirectory";a:2:{i:0;R:10452;i:1;R:799;}s:36:"8:configure-setting-wgfilecachedepth";a:2:{i:0;R:10452;i:1;R:799;}s:38:"8:configure-setting-wgforcedrawsmaxage";a:2:{i:0;R:10452;i:1;R:799;}s:37:"8:configure-setting-wgquerycachelimit";a:2:{i:0;R:10452;i:1;R:799;}s:41:"8:configure-setting-wgrevisioncacheexpiry";a:2:{i:0;R:10452;i:1;R:799;}s:36:"8:configure-setting-wgthumbnailepoch";a:2:{i:0;R:10452;i:1;R:799;}s:43:"8:configure-setting-wgtranscludecacheexpiry";a:2:{i:0;R:10452;i:1;R:799;}s:34:"8:configure-setting-wgusefilecache";a:2:{i:0;R:10452;i:1;R:799;}s:29:"8:configure-setting-wgusegzip";a:2:{i:0;R:10452;i:1;R:799;}s:39:"8:configure-setting-wgallowdisplaytitle";a:2:{i:0;R:10452;i:1;R:799;}s:41:"8:configure-setting-wgallowexternalimages";a:2:{i:0;R:10452;i:1;R:799;}s:45:"8:configure-setting-wgallowexternalimagesfrom";a:2:{i:0;R:10452;i:1;R:799;}s:42:"8:configure-setting-wgenableimagewhitelist";a:2:{i:0;R:10452;i:1;R:799;}s:35:"8:configure-setting-wgallowimagetag";a:2:{i:0;R:10452;i:1;R:799;}s:50:"8:configure-setting-wgexpensiveparserfunctionlimit";a:2:{i:0;R:10452;i:1;R:799;}s:40:"8:configure-setting-wgexternallinktarget";a:2:{i:0;R:10452;i:1;R:799;}s:37:"8:configure-setting-wgcleansignatures";a:2:{i:0;R:10452;i:1;R:799;}s:36:"8:configure-setting-wggalleryoptions";a:2:{i:0;R:10452;i:1;R:799;}s:34:"8:configure-setting-wggrammarforms";a:2:{i:0;R:10452;i:1;R:799;}s:41:"8:configure-setting-wglinkholderbatchsize";a:2:{i:0;R:10452;i:1;R:799;}s:38:"8:configure-setting-wgmaxppexpanddepth";a:2:{i:0;R:10452;i:1;R:799;}s:36:"8:configure-setting-wgmaxppnodecount";a:2:{i:0;R:10452;i:1;R:799;}s:38:"8:configure-setting-wgmaxtemplatedepth";a:2:{i:0;R:10452;i:1;R:799;}s:33:"8:configure-setting-wgmaxtoclevel";a:2:{i:0;R:10452;i:1;R:799;}s:32:"8:configure-setting-wgparserconf";a:2:{i:0;R:10452;i:1;R:799;}s:43:"8:configure-setting-wgparsercacheexpiretime";a:2:{i:0;R:10452;i:1;R:799;}s:38:"8:configure-setting-wgparsertestremote";a:2:{i:0;R:10452;i:1;R:799;}s:48:"8:configure-setting-wgpreprocessorcachethreshold";a:2:{i:0;R:10452;i:1;R:799;}s:47:"8:configure-setting-wgregisterinternalexternals";a:2:{i:0;R:10452;i:1;R:799;}s:42:"8:configure-setting-wgrestrictdisplaytitle";a:2:{i:0;R:10452;i:1;R:799;}s:35:"8:configure-setting-wgamericandates";a:2:{i:0;R:10452;i:1;R:799;}s:43:"8:configure-setting-wgdisablelangconversion";a:2:{i:0;R:10452;i:1;R:799;}s:44:"8:configure-setting-wgdisabletitleconversion";a:2:{i:0;R:10452;i:1;R:799;}s:44:"8:configure-setting-wgforceuimsgascontentmsg";a:2:{i:0;R:10452;i:1;R:799;}s:36:"8:configure-setting-wginterwikimagic";a:2:{i:0;R:10452;i:1;R:799;}s:34:"8:configure-setting-wglanguagecode";a:2:{i:0;R:10452;i:1;R:799;}s:36:"8:configure-setting-wglegacyencoding";a:2:{i:0;R:10452;i:1;R:799;}s:43:"8:configure-setting-wgloginlanguageselector";a:2:{i:0;R:10452;i:1;R:799;}s:39:"8:configure-setting-wgtranslatenumerals";a:2:{i:0;R:10452;i:1;R:799;}s:41:"8:configure-setting-wgusedatabasemessages";a:2:{i:0;R:10452;i:1;R:799;}s:37:"8:configure-setting-wgusedynamicdates";a:2:{i:0;R:10452;i:1;R:799;}s:42:"8:configure-setting-wgarticlerobotpolicies";a:2:{i:0;R:10452;i:1;R:799;}s:46:"8:configure-setting-wgarticlerobotpolicies-key";a:2:{i:0;R:10452;i:1;R:799;}s:48:"8:configure-setting-wgarticlerobotpolicies-value";a:2:{i:0;R:10452;i:1;R:799;}s:33:"8:configure-setting-wgbreakframes";a:2:{i:0;R:10452;i:1;R:799;}s:42:"8:configure-setting-wgeditpageframeoptions";a:2:{i:0;R:10452;i:1;R:799;}s:34:"8:configure-setting-wgcapitallinks";a:2:{i:0;R:10452;i:1;R:799;}s:42:"8:configure-setting-wgcapitallinkoverrides";a:2:{i:0;R:10452;i:1;R:799;}s:44:"8:configure-setting-wgdefaultlanguagevariant";a:2:{i:0;R:10452;i:1;R:799;}s:40:"8:configure-setting-wgdefaultrobotpolicy";a:2:{i:0;R:10452;i:1;R:799;}s:49:"8:configure-setting-wgexemptfromuserrobotscontrol";a:2:{i:0;R:10452;i:1;R:799;}s:40:"8:configure-setting-wgextralanguagenames";a:2:{i:0;R:10452;i:1;R:799;}s:44:"8:configure-setting-wgextralanguagenames-key";a:2:{i:0;R:10452;i:1;R:799;}s:46:"8:configure-setting-wgextralanguagenames-value";a:2:{i:0;R:10452;i:1;R:799;}s:38:"8:configure-setting-wgdisabledvariants";a:2:{i:0;R:10452;i:1;R:799;}s:42:"8:configure-setting-wgbetterdirectionality";a:2:{i:0;R:10452;i:1;R:799;}s:44:"8:configure-setting-wgcanonicallanguagelinks";a:2:{i:0;R:10452;i:1;R:799;}s:40:"8:configure-setting-wgextrarandompagesql";a:2:{i:0;R:10452;i:1;R:799;}s:35:"8:configure-setting-wgextrasubtitle";a:2:{i:0;R:10452;i:1;R:799;}s:44:"8:configure-setting-wghideinterlanguagelinks";a:2:{i:0;R:10452;i:1;R:799;}s:37:"8:configure-setting-wglegaltitlechars";a:2:{i:0;R:10452;i:1;R:799;}s:36:"8:configure-setting-wgmaxarticlesize";a:2:{i:0;R:10452;i:1;R:799;}s:34:"8:configure-setting-wgmaxredirects";a:2:{i:0;R:10452;i:1;R:799;}s:35:"8:configure-setting-wgnofollowlinks";a:2:{i:0;R:10452;i:1;R:799;}s:46:"8:configure-setting-wgnofollowdomainexceptions";a:2:{i:0;R:10452;i:1;R:799;}s:43:"8:configure-setting-wgpageshowwatchingusers";a:2:{i:0;R:10452;i:1;R:799;}s:39:"8:configure-setting-wgrestrictionlevels";a:2:{i:0;R:10452;i:1;R:799;}s:32:"8:configure-setting-wgsitenotice";a:2:{i:0;R:10452;i:1;R:799;}s:37:"8:configure-setting-wgsitesupportpage";a:2:{i:0;R:10452;i:1;R:799;}s:34:"8:configure-setting-wgstyleversion";a:2:{i:0;R:10452;i:1;R:799;}s:41:"8:configure-setting-wguniversaleditbutton";a:2:{i:0;R:10452;i:1;R:799;}s:34:"8:configure-setting-wgurlprotocols";a:2:{i:0;R:10452;i:1;R:799;}s:39:"8:configure-setting-wguseexternaleditor";a:2:{i:0;R:10452;i:1;R:799;}s:40:"8:configure-setting-wgajaxlicensepreview";a:2:{i:0;R:10452;i:1;R:799;}s:38:"8:configure-setting-wgallowcopyuploads";a:2:{i:0;R:10452;i:1;R:799;}s:43:"8:configure-setting-wgallowasynccopyuploads";a:2:{i:0;R:10452;i:1;R:799;}s:41:"8:configure-setting-wgcheckfileextensions";a:2:{i:0;R:10452;i:1;R:799;}s:40:"8:configure-setting-wgcopyuploadsdomains";a:2:{i:0;R:10452;i:1;R:799;}s:35:"8:configure-setting-wgenableuploads";a:2:{i:0;R:10452;i:1;R:799;}s:39:"8:configure-setting-wguploadmaintenance";a:2:{i:0;R:10452;i:1;R:799;}s:35:"8:configure-setting-wgfileblacklist";a:2:{i:0;R:10452;i:1;R:799;}s:36:"8:configure-setting-wgfileextensions";a:2:{i:0;R:10452;i:1;R:799;}s:31:"8:configure-setting-wgfilestore";a:2:{i:0;R:10452;i:1;R:799;}s:43:"8:configure-setting-wghasheduploaddirectory";a:2:{i:0;R:10452;i:1;R:799;}s:35:"8:configure-setting-wglocalfilerepo";a:2:{i:0;R:10452;i:1;R:799;}s:42:"8:configure-setting-wgstrictfileextensions";a:2:{i:0;R:10452;i:1;R:799;}s:39:"8:configure-setting-wguploadsizewarning";a:2:{i:0;R:10452;i:1;R:799;}s:35:"8:configure-setting-wgmaxuploadsize";a:2:{i:0;R:10452;i:1;R:799;}s:39:"8:configure-setting-wguploadstashmaxage";a:2:{i:0;R:10452;i:1;R:799;}s:33:"8:configure-setting-wghttptimeout";a:2:{i:0;R:10452;i:1;R:799;}s:31:"8:configure-setting-wghttpproxy";a:2:{i:0;R:10452;i:1;R:799;}s:38:"8:configure-setting-wgasynchttptimeout";a:2:{i:0;R:10452;i:1;R:799;}s:29:"8:configure-setting-wgversion";a:2:{i:0;R:10452;i:1;R:799;}s:43:"8:configure-setting-wgallowspecialinclusion";a:2:{i:0;R:10452;i:1;R:799;}s:36:"8:configure-setting-wgexportallowall";a:2:{i:0;R:10452;i:1;R:799;}s:40:"8:configure-setting-wgexportallowhistory";a:2:{i:0;R:10452;i:1;R:799;}s:49:"8:configure-setting-wgexportallowlistcontributors";a:2:{i:0;R:10452;i:1;R:799;}s:42:"8:configure-setting-wgexportfromnamespaces";a:2:{i:0;R:10452;i:1;R:799;}s:38:"8:configure-setting-wgexportmaxhistory";a:2:{i:0;R:10452;i:1;R:799;}s:40:"8:configure-setting-wgexportmaxlinkdepth";a:2:{i:0;R:10452;i:1;R:799;}s:36:"8:configure-setting-wgfilterlogtypes";a:2:{i:0;R:10452;i:1;R:799;}s:43:"8:configure-setting-wgimporttargetnamespace";a:2:{i:0;R:10452;i:1;R:799;}s:37:"8:configure-setting-wglogrestrictions";a:2:{i:0;R:10452;i:1;R:799;}s:41:"8:configure-setting-wglogrestrictions-key";a:2:{i:0;R:10452;i:1;R:799;}s:43:"8:configure-setting-wglogrestrictions-value";a:2:{i:0;R:10452;i:1;R:799;}s:47:"8:configure-setting-wgmaxredirectlinksretrieved";a:2:{i:0;R:10452;i:1;R:799;}s:43:"8:configure-setting-wgquerypagedefaultlimit";a:2:{i:0;R:10452;i:1;R:799;}s:37:"8:configure-setting-wgredirectonlogin";a:2:{i:0;R:10452;i:1;R:799;}s:33:"8:configure-setting-wgsecurelogin";a:2:{i:0;R:10452;i:1;R:799;}s:38:"8:configure-setting-wgsortspecialpages";a:2:{i:0;R:10452;i:1;R:799;}s:39:"8:configure-setting-wgspecialpagegroups";a:2:{i:0;R:10452;i:1;R:799;}s:43:"8:configure-setting-wgspecialpagegroups-key";a:2:{i:0;R:10452;i:1;R:799;}s:45:"8:configure-setting-wgspecialversionshowhooks";a:2:{i:0;R:10452;i:1;R:799;}s:33:"8:configure-setting-wgusenppatrol";a:2:{i:0;R:10452;i:1;R:799;}s:33:"8:configure-setting-wgautopromote";a:2:{i:0;R:10452;i:1;R:799;}s:39:"8:configure-setting-wgautopromote-value";a:2:{i:0;R:10452;i:1;R:799;}s:37:"8:configure-setting-wgautopromoteonce";a:2:{i:0;R:10452;i:1;R:799;}s:45:"8:configure-setting-wgaccountcreationthrottle";a:2:{i:0;R:10452;i:1;R:799;}s:35:"8:configure-setting-wgallowpageinfo";a:2:{i:0;R:10452;i:1;R:799;}s:36:"8:configure-setting-wgblockcidrlimit";a:2:{i:0;R:10452;i:1;R:799;}s:37:"8:configure-setting-wgautoblockexpiry";a:2:{i:0;R:10452;i:1;R:799;}s:42:"8:configure-setting-wgdeleterevisionslimit";a:2:{i:0;R:10452;i:1;R:799;}s:37:"8:configure-setting-wgdisabledactions";a:2:{i:0;R:10452;i:1;R:799;}s:39:"8:configure-setting-wgnewpasswordexpiry";a:2:{i:0;R:10452;i:1;R:799;}s:40:"8:configure-setting-wgemailconfirmtoedit";a:2:{i:0;R:10452;i:1;R:799;}s:31:"8:configure-setting-wgenableapi";a:2:{i:0;R:10452;i:1;R:799;}s:36:"8:configure-setting-wgenablewriteapi";a:2:{i:0;R:10452;i:1;R:799;}s:36:"8:configure-setting-wgimplicitgroups";a:2:{i:0;R:10452;i:1;R:799;}s:45:"8:configure-setting-wgpasswordattemptthrottle";a:2:{i:0;R:10452;i:1;R:799;}s:34:"8:configure-setting-wgpasswordsalt";a:2:{i:0;R:10452;i:1;R:799;}s:30:"8:configure-setting-wgreadonly";a:2:{i:0;R:10452;i:1;R:799;}s:34:"8:configure-setting-wgreadonlyfile";a:2:{i:0;R:10452;i:1;R:799;}s:38:"8:configure-setting-wgrestrictiontypes";a:2:{i:0;R:10452;i:1;R:799;}s:31:"8:configure-setting-wgspamregex";a:2:{i:0;R:10452;i:1;R:799;}s:38:"8:configure-setting-wgsummaryspamregex";a:2:{i:0;R:10452;i:1;R:799;}s:35:"8:configure-setting-wgwhitelistread";a:2:{i:0;R:10452;i:1;R:799;}s:41:"8:configure-setting-wgemailauthentication";a:2:{i:0;R:10452;i:1;R:799;}s:38:"8:configure-setting-wgemergencycontact";a:2:{i:0;R:10452;i:1;R:799;}s:33:"8:configure-setting-wgenableemail";a:2:{i:0;R:10452;i:1;R:799;}s:37:"8:configure-setting-wgenableuseremail";a:2:{i:0;R:10452;i:1;R:799;}s:36:"8:configure-setting-wgnoreplyaddress";a:2:{i:0;R:10452;i:1;R:799;}s:36:"8:configure-setting-wgpasswordsender";a:2:{i:0;R:10452;i:1;R:799;}s:40:"8:configure-setting-wgpasswordsendername";a:2:{i:0;R:10452;i:1;R:799;}s:48:"8:configure-setting-wgpasswordreminderresendtime";a:2:{i:0;R:10452;i:1;R:799;}s:42:"8:configure-setting-wgadditionalmailparams";a:2:{i:0;R:10452;i:1;R:799;}s:26:"8:configure-setting-wgsmtp";a:2:{i:0;R:10452;i:1;R:799;}s:41:"8:configure-setting-wguseremailusereplyto";a:2:{i:0;R:10452;i:1;R:799;}s:54:"8:configure-setting-wguseremailconfirmationtokenexpiry";a:2:{i:0;R:10452;i:1;R:799;}s:35:"8:configure-setting-wgapirequestlog";a:2:{i:0;R:10452;i:1;R:799;}s:35:"8:configure-setting-wgdebugcomments";a:2:{i:0;R:10452;i:1;R:799;}s:34:"8:configure-setting-wgdebugdumpsql";a:2:{i:0;R:10452;i:1;R:799;}s:34:"8:configure-setting-wgdebuglogfile";a:2:{i:0;R:10452;i:1;R:799;}s:36:"8:configure-setting-wgdebugloggroups";a:2:{i:0;R:10452;i:1;R:799;}s:40:"8:configure-setting-wgdebugloggroups-key";a:2:{i:0;R:10452;i:1;R:799;}s:42:"8:configure-setting-wgdebugloggroups-value";a:2:{i:0;R:10452;i:1;R:799;}s:34:"8:configure-setting-wgdebugrawpage";a:2:{i:0;R:10452;i:1;R:799;}s:36:"8:configure-setting-wgdebuglogprefix";a:2:{i:0;R:10452;i:1;R:799;}s:36:"8:configure-setting-wgdebugredirects";a:2:{i:0;R:10452;i:1;R:799;}s:43:"8:configure-setting-wgdebugprinthttpheaders";a:2:{i:0;R:10452;i:1;R:799;}s:37:"8:configure-setting-wgdebugtimestamps";a:2:{i:0;R:10452;i:1;R:799;}s:34:"8:configure-setting-wgdebugtoolbar";a:2:{i:0;R:10452;i:1;R:799;}s:41:"8:configure-setting-wgdevelopmentwarnings";a:2:{i:0;R:10452;i:1;R:799;}s:45:"8:configure-setting-wgdeprecationreleaselimit";a:2:{i:0;R:10452;i:1;R:799;}s:42:"8:configure-setting-wgshowexceptiondetails";a:2:{i:0;R:10452;i:1;R:799;}s:42:"8:configure-setting-wgshowdberrorbacktrace";a:2:{i:0;R:10452;i:1;R:799;}s:31:"8:configure-setting-wgshowdebug";a:2:{i:0;R:10452;i:1;R:799;}s:35:"8:configure-setting-wgshowsqlerrors";a:2:{i:0;R:10452;i:1;R:799;}s:33:"8:configure-setting-wgstatsmethod";a:2:{i:0;R:10452;i:1;R:799;}s:38:"8:configure-setting-wgaggregatestatsid";a:2:{i:0;R:10452;i:1;R:799;}s:32:"8:configure-setting-wgjobrunrate";a:2:{i:0;R:10452;i:1;R:799;}s:32:"8:configure-setting-wgjobclasses";a:2:{i:0;R:10452;i:1;R:799;}s:38:"8:configure-setting-wgupdaterowsperjob";a:2:{i:0;R:10452;i:1;R:799;}s:37:"8:configure-setting-wgpoolcounterconf";a:2:{i:0;R:10452;i:1;R:799;}s:36:"8:configure-setting-wgenableselenium";a:2:{i:0;R:10452;i:1;R:799;}s:40:"8:configure-setting-wgseleniumconfigfile";a:2:{i:0;R:10452;i:1;R:799;}s:32:"8:configure-setting-wgdbtestuser";a:2:{i:0;R:10452;i:1;R:799;}s:36:"8:configure-setting-wgdbtestpassword";a:2:{i:0;R:10452;i:1;R:799;}s:42:"8:configure-setting-wgenablejavascripttest";a:2:{i:0;R:10452;i:1;R:799;}s:42:"8:configure-setting-wgjavascripttestconfig";a:2:{i:0;R:10452;i:1;R:799;}s:41:"8:configure-setting-wgapicachehelptimeout";a:2:{i:0;R:10452;i:1;R:799;}s:34:"8:configure-setting-wgapimaxdbrows";a:2:{i:0;R:10452;i:1;R:799;}s:38:"8:configure-setting-wgapimaxresultsize";a:2:{i:0;R:10452;i:1;R:799;}s:41:"8:configure-setting-wgapimaxuncacheddiffs";a:2:{i:0;R:10452;i:1;R:799;}s:39:"8:configure-setting-wgdisablequerypages";a:2:{i:0;R:10452;i:1;R:799;}s:44:"8:configure-setting-wgdisablequerypageupdate";a:2:{i:0;R:10452;i:1;R:799;}s:41:"8:configure-setting-wgdisablesearchupdate";a:2:{i:0;R:10452;i:1;R:799;}s:39:"8:configure-setting-wgdisabletextsearch";a:2:{i:0;R:10452;i:1;R:799;}s:30:"8:configure-setting-wgedititis";a:2:{i:0;R:10452;i:1;R:799;}s:37:"8:configure-setting-wgallunicodefixes";a:2:{i:0;R:10452;i:1;R:799;}s:38:"8:configure-setting-wgfixarabicunicode";a:2:{i:0;R:10452;i:1;R:799;}s:41:"8:configure-setting-wgfixmalayalamunicode";a:2:{i:0;R:10452;i:1;R:799;}s:40:"8:configure-setting-wgfixdoubleredirects";a:2:{i:0;R:10452;i:1;R:799;}s:44:"8:configure-setting-wginvalidredirecttargets";a:2:{i:0;R:10452;i:1;R:799;}s:39:"8:configure-setting-wgmaximummovedpages";a:2:{i:0;R:10452;i:1;R:799;}s:33:"8:configure-setting-wgmemorylimit";a:2:{i:0;R:10452;i:1;R:799;}s:31:"8:configure-setting-wgmisermode";a:2:{i:0;R:10452;i:1;R:799;}s:35:"8:configure-setting-wgshowhostnames";a:2:{i:0;R:10452;i:1;R:799;}s:39:"8:configure-setting-wgusedumblinkupdate";a:2:{i:0;R:10452;i:1;R:799;}s:38:"8:configure-setting-wgcachevarycookies";a:2:{i:0;R:10452;i:1;R:799;}s:34:"8:configure-setting-wgcookiedomain";a:2:{i:0;R:10452;i:1;R:799;}s:38:"8:configure-setting-wgcookieexpiration";a:2:{i:0;R:10452;i:1;R:799;}s:36:"8:configure-setting-wgcookiehttponly";a:2:{i:0;R:10452;i:1;R:799;}s:32:"8:configure-setting-wgcookiepath";a:2:{i:0;R:10452;i:1;R:799;}s:34:"8:configure-setting-wgcookieprefix";a:2:{i:0;R:10452;i:1;R:799;}s:34:"8:configure-setting-wgcookiesecure";a:2:{i:0;R:10452;i:1;R:799;}s:40:"8:configure-setting-wgdisablecookiecheck";a:2:{i:0;R:10452;i:1;R:799;}s:39:"8:configure-setting-wghttponlyblacklist";a:2:{i:0;R:10452;i:1;R:799;}s:36:"8:configure-setting-wgsessionhandler";a:2:{i:0;R:10452;i:1;R:799;}s:33:"8:configure-setting-wgsessionname";a:2:{i:0;R:10452;i:1;R:799;}s:36:"8:configure-setting-wginternalserver";a:2:{i:0;R:10452;i:1;R:799;}s:41:"8:configure-setting-wgmaxsquidpurgetitles";a:2:{i:0;R:10452;i:1;R:799;}s:33:"8:configure-setting-wgsquidmaxage";a:2:{i:0;R:10452;i:1;R:799;}s:34:"8:configure-setting-wgsquidservers";a:2:{i:0;R:10452;i:1;R:799;}s:41:"8:configure-setting-wgsquidserversnopurge";a:2:{i:0;R:10452;i:1;R:799;}s:28:"8:configure-setting-wguseesi";a:2:{i:0;R:10452;i:1;R:799;}s:30:"8:configure-setting-wgusesquid";a:2:{i:0;R:10452;i:1;R:799;}s:28:"8:configure-setting-wgusexvo";a:2:{i:0;R:10452;i:1;R:799;}s:31:"8:configure-setting-wgvaryonxfp";a:2:{i:0;R:10452;i:1;R:799;}s:46:"8:configure-setting-wgallowslowparserfunctions";a:2:{i:0;R:10452;i:1;R:799;}s:43:"8:configure-setting-wgdisableinternalsearch";a:2:{i:0;R:10452;i:1;R:799;}s:41:"8:configure-setting-wgextensionassetspath";a:2:{i:0;R:10452;i:1;R:799;}s:36:"8:configure-setting-wgexternalstores";a:2:{i:0;R:10452;i:1;R:799;}s:29:"8:configure-setting-wgsqlmode";a:2:{i:0;R:10452;i:1;R:799;}s:40:"8:configure-setting-wgallowschemaupdates";a:2:{i:0;R:10452;i:1;R:799;}s:45:"8:configure-setting-wgspecialpagecacheupdates";a:2:{i:0;R:10452;i:1;R:799;}s:34:"8:configure-setting-wgspecialpages";a:2:{i:0;R:10452;i:1;R:799;}s:44:"8:configure-setting-wgskinextensionfunctions";a:2:{i:0;R:10452;i:1;R:799;}s:38:"8:configure-setting-wggrouppermissions";a:2:{i:0;R:10452;i:1;R:799;}s:44:"8:configure-setting-wggrouppermissions-value";a:2:{i:0;R:10452;i:1;R:799;}s:39:"8:configure-setting-wgrevokepermissions";a:2:{i:0;R:10452;i:1;R:799;}s:45:"8:configure-setting-wgrevokepermissions-value";a:2:{i:0;R:10452;i:1;R:799;}s:31:"8:configure-setting-wgaddgroups";a:2:{i:0;R:10452;i:1;R:799;}s:37:"8:configure-setting-wgaddgroups-value";a:2:{i:0;R:10452;i:1;R:799;}s:34:"8:configure-setting-wgremovegroups";a:2:{i:0;R:10452;i:1;R:799;}s:40:"8:configure-setting-wgremovegroups-value";a:2:{i:0;R:10452;i:1;R:799;}s:37:"8:configure-setting-wggroupsaddtoself";a:2:{i:0;R:10452;i:1;R:799;}s:43:"8:configure-setting-wggroupsaddtoself-value";a:2:{i:0;R:10452;i:1;R:799;}s:42:"8:configure-setting-wggroupsremovefromself";a:2:{i:0;R:10452;i:1;R:799;}s:48:"8:configure-setting-wggroupsremovefromself-value";a:2:{i:0;R:10452;i:1;R:799;}s:34:"8:configure-setting-wgratelimitlog";a:2:{i:0;R:10452;i:1;R:799;}s:32:"8:configure-setting-wgratelimits";a:2:{i:0;R:10452;i:1;R:799;}s:46:"8:configure-setting-wgratelimitsexcludedgroups";a:2:{i:0;R:10452;i:1;R:799;}s:43:"8:configure-setting-wgratelimitsexcludedips";a:2:{i:0;R:10452;i:1;R:799;}s:26:"8:configure-setting-wgfeed";a:2:{i:0;R:10452;i:1;R:799;}s:41:"8:configure-setting-wgadvertisedfeedtypes";a:2:{i:0;R:10452;i:1;R:799;}s:38:"8:configure-setting-wgfeedcachetimeout";a:2:{i:0;R:10452;i:1;R:799;}s:36:"8:configure-setting-wgfeeddiffcutoff";a:2:{i:0;R:10452;i:1;R:799;}s:31:"8:configure-setting-wgfeedlimit";a:2:{i:0;R:10452;i:1;R:799;}s:38:"8:configure-setting-wgoverridesitefeed";a:2:{i:0;R:10452;i:1;R:799;}s:48:"8:configure-setting-wgadvancedsearchhighlighting";a:2:{i:0;R:10452;i:1;R:799;}s:37:"8:configure-setting-wgenablemwsuggest";a:2:{i:0;R:10452;i:1;R:799;}s:45:"8:configure-setting-wgenableopensearchsuggest";a:2:{i:0;R:10452;i:1;R:799;}s:50:"8:configure-setting-wgenablesearchcontributorsbyip";a:2:{i:0;R:10452;i:1;R:799;}s:30:"8:configure-setting-wggotoedit";a:2:{i:0;R:10452;i:1;R:799;}s:39:"8:configure-setting-wgmwsuggesttemplate";a:2:{i:0;R:10452;i:1;R:799;}s:40:"8:configure-setting-wgopensearchtemplate";a:2:{i:0;R:10452;i:1;R:799;}s:38:"8:configure-setting-wgsearchforwardurl";a:2:{i:0;R:10452;i:1;R:799;}s:50:"8:configure-setting-wgsearcheverythingonlyloggedin";a:2:{i:0;R:10452;i:1;R:799;}s:47:"8:configure-setting-wgsearchhighlightboundaries";a:2:{i:0;R:10452;i:1;R:799;}s:46:"8:configure-setting-wgsearchsuggestcacheexpiry";a:2:{i:0;R:10452;i:1;R:799;}s:42:"8:configure-setting-wgcounttotalsearchhits";a:2:{i:0;R:10452;i:1;R:799;}s:45:"8:configure-setting-wgusetwobuttonssearchform";a:2:{i:0;R:10452;i:1;R:799;}s:50:"8:configure-setting-wgcountcategorizedimagesasused";a:2:{i:0;R:10452;i:1;R:799;}s:36:"8:configure-setting-wgactiveuserdays";a:2:{i:0;R:10452;i:1;R:799;}s:37:"8:configure-setting-wgdisablecounters";a:2:{i:0;R:10452;i:1;R:799;}s:42:"8:configure-setting-wghitcounterupdatefreq";a:2:{i:0;R:10452;i:1;R:799;}s:40:"8:configure-setting-wgarticlecountmethod";a:2:{i:0;R:10452;i:1;R:799;}s:35:"8:configure-setting-wgusecommacount";a:2:{i:0;R:10452;i:1;R:799;}s:42:"8:configure-setting-wgwantedpagesthreshold";a:2:{i:0;R:10452;i:1;R:799;}s:33:"8:configure-setting-wgdefaultskin";a:2:{i:0;R:10452;i:1;R:799;}s:30:"8:configure-setting-wgskipskin";a:2:{i:0;R:10452;i:1;R:799;}s:31:"8:configure-setting-wgskipskins";a:2:{i:0;R:10452;i:1;R:799;}s:36:"8:configure-setting-wgvalidskinnames";a:2:{i:0;R:10452;i:1;R:799;}s:40:"8:configure-setting-wgvalidskinnames-key";a:2:{i:0;R:10452;i:1;R:799;}s:42:"8:configure-setting-wgvalidskinnames-value";a:2:{i:0;R:10452;i:1;R:799;}s:40:"8:configure-setting-wgvectoruseiconwatch";a:2:{i:0;R:10452;i:1;R:799;}s:43:"8:configure-setting-wgvectorusesimplesearch";a:2:{i:0;R:10452;i:1;R:799;}s:43:"8:configure-setting-wgvectorshowvariantname";a:2:{i:0;R:10452;i:1;R:799;}s:39:"8:configure-setting-wgcontentnamespaces";a:2:{i:0;R:10452;i:1;R:799;}s:37:"8:configure-setting-wgextranamespaces";a:2:{i:0;R:10452;i:1;R:799;}s:41:"8:configure-setting-wgextranamespaces-key";a:2:{i:0;R:10452;i:1;R:799;}s:43:"8:configure-setting-wgextranamespaces-value";a:2:{i:0;R:10452;i:1;R:799;}s:43:"8:configure-setting-wgextragendernamespaces";a:2:{i:0;R:10452;i:1;R:799;}s:35:"8:configure-setting-wgmetanamespace";a:2:{i:0;R:10452;i:1;R:799;}s:39:"8:configure-setting-wgmetanamespacetalk";a:2:{i:0;R:10452;i:1;R:799;}s:38:"8:configure-setting-wgnamespacealiases";a:2:{i:0;R:10452;i:1;R:799;}s:42:"8:configure-setting-wgnamespacealiases-key";a:2:{i:0;R:10452;i:1;R:799;}s:44:"8:configure-setting-wgnamespacealiases-value";a:2:{i:0;R:10452;i:1;R:799;}s:41:"8:configure-setting-wgnamespaceprotection";a:2:{i:0;R:10452;i:1;R:799;}s:47:"8:configure-setting-wgnamespaceprotection-value";a:2:{i:0;R:10452;i:1;R:799;}s:44:"8:configure-setting-wgnamespacerobotpolicies";a:2:{i:0;R:10452;i:1;R:799;}s:50:"8:configure-setting-wgnamespacerobotpolicies-value";a:2:{i:0;R:10452;i:1;R:799;}s:51:"8:configure-setting-wgnamespacestobesearcheddefault";a:2:{i:0;R:10452;i:1;R:799;}s:48:"8:configure-setting-wgnamespacestobesearchedhelp";a:2:{i:0;R:10452;i:1;R:799;}s:44:"8:configure-setting-wgnamespaceswithsubpages";a:2:{i:0;R:10452;i:1;R:799;}s:42:"8:configure-setting-wgnofollownsexceptions";a:2:{i:0;R:10452;i:1;R:799;}s:45:"8:configure-setting-wgnonincludablenamespaces";a:2:{i:0;R:10452;i:1;R:799;}s:45:"8:configure-setting-wgpreviewonopennamespaces";a:2:{i:0;R:10452;i:1;R:799;}s:39:"8:configure-setting-wgsitemapnamespaces";a:2:{i:0;R:10452;i:1;R:799;}s:49:"8:configure-setting-wgsitemapnamespacespriorities";a:2:{i:0;R:10452;i:1;R:799;}s:42:"8:configure-setting-wgcategorymagicgallery";a:2:{i:0;R:10452;i:1;R:799;}s:41:"8:configure-setting-wgcategorypaginglimit";a:2:{i:0;R:10452;i:1;R:799;}s:40:"8:configure-setting-wgusecategorybrowser";a:2:{i:0;R:10452;i:1;R:799;}s:39:"8:configure-setting-wgcategorycollation";a:2:{i:0;R:10452;i:1;R:799;}s:42:"8:configure-setting-wghtcpmulticastaddress";a:2:{i:0;R:10452;i:1;R:799;}s:38:"8:configure-setting-wghtcpmulticastttl";a:2:{i:0;R:10452;i:1;R:799;}s:30:"8:configure-setting-wghtcpport";a:2:{i:0;R:10452;i:1;R:799;}s:35:"8:configure-setting-wgcopyrighticon";a:2:{i:0;R:10452;i:1;R:799;}s:46:"8:configure-setting-wgenablecreativecommonsrdf";a:2:{i:0;R:10452;i:1;R:799;}s:41:"8:configure-setting-wgenabledublincorerdf";a:2:{i:0;R:10452;i:1;R:799;}s:34:"8:configure-setting-wglicenseterms";a:2:{i:0;R:10452;i:1;R:799;}s:32:"8:configure-setting-wgmaxcredits";a:2:{i:0;R:10452;i:1;R:799;}s:32:"8:configure-setting-wgrightsicon";a:2:{i:0;R:10452;i:1;R:799;}s:32:"8:configure-setting-wgrightspage";a:2:{i:0;R:10452;i:1;R:799;}s:32:"8:configure-setting-wgrightstext";a:2:{i:0;R:10452;i:1;R:799;}s:31:"8:configure-setting-wgrightsurl";a:2:{i:0;R:10452;i:1;R:799;}s:38:"8:configure-setting-wgshowcreditsifmax";a:2:{i:0;R:10452;i:1;R:799;}s:40:"8:configure-setting-wgusecopyrightupload";a:2:{i:0;R:10452;i:1;R:799;}s:36:"8:configure-setting-wgautoconfirmage";a:2:{i:0;R:10452;i:1;R:799;}s:38:"8:configure-setting-wgautoconfirmcount";a:2:{i:0;R:10452;i:1;R:799;}s:35:"8:configure-setting-wgallowrealname";a:2:{i:0;R:10452;i:1;R:799;}s:35:"8:configure-setting-wgallowuserskin";a:2:{i:0;R:10452;i:1;R:799;}s:39:"8:configure-setting-wgallowusercssprefs";a:2:{i:0;R:10452;i:1;R:799;}s:38:"8:configure-setting-wgautocreatepolicy";a:2:{i:0;R:10452;i:1;R:799;}s:37:"8:configure-setting-wgallowprefchange";a:2:{i:0;R:10452;i:1;R:799;}s:41:"8:configure-setting-wgallowprefchange-key";a:2:{i:0;R:10452;i:1;R:799;}s:38:"8:configure-setting-wgexternalauthtype";a:2:{i:0;R:10452;i:1;R:799;}s:38:"8:configure-setting-wgexternalauthconf";a:2:{i:0;R:10452;i:1;R:799;}s:40:"8:configure-setting-wgdefaultuseroptions";a:2:{i:0;R:10452;i:1;R:799;}s:37:"8:configure-setting-wgdisableanontalk";a:2:{i:0;R:10452;i:1;R:799;}s:33:"8:configure-setting-wghiddenprefs";a:2:{i:0;R:10452;i:1;R:799;}s:47:"8:configure-setting-wginvalidusernamecharacters";a:2:{i:0;R:10452;i:1;R:799;}s:50:"8:configure-setting-wguserrightsinterwikidelimiter";a:2:{i:0;R:10452;i:1;R:799;}s:34:"8:configure-setting-wgmaxnamechars";a:2:{i:0;R:10452;i:1;R:799;}s:33:"8:configure-setting-wgmaxsigchars";a:2:{i:0;R:10452;i:1;R:799;}s:43:"8:configure-setting-wgminimalpasswordlength";a:2:{i:0;R:10452;i:1;R:799;}s:48:"8:configure-setting-wglivepasswordstrengthchecks";a:2:{i:0;R:10452;i:1;R:799;}s:32:"8:configure-setting-wgnewuserlog";a:2:{i:0;R:10452;i:1;R:799;}s:41:"8:configure-setting-wgpasswordresetroutes";a:2:{i:0;R:10452;i:1;R:799;}s:39:"8:configure-setting-wgreservedusernames";a:2:{i:0;R:10452;i:1;R:799;}s:36:"8:configure-setting-wgshowipinheader";a:2:{i:0;R:10452;i:1;R:799;}s:38:"8:configure-setting-wgbrowserblacklist";a:2:{i:0;R:10452;i:1;R:799;}s:35:"8:configure-setting-wgantilockflags";a:2:{i:0;R:10452;i:1;R:799;}s:39:"8:configure-setting-wgcommandlinedarkbg";a:2:{i:0;R:10452;i:1;R:799;}s:32:"8:configure-setting-wgupgradekey";a:2:{i:0;R:10452;i:1;R:799;}s:39:"8:configure-setting-wgcompressrevisions";a:2:{i:0;R:10452;i:1;R:799;}s:46:"8:configure-setting-wgdisableoutputcompression";a:2:{i:0;R:10452;i:1;R:799;}s:33:"8:configure-setting-wgsend404code";a:2:{i:0;R:10452;i:1;R:799;}s:40:"8:configure-setting-wgexternaldiffengine";a:2:{i:0;R:10452;i:1;R:799;}s:38:"8:configure-setting-wgmaxshellfilesize";a:2:{i:0;R:10452;i:1;R:799;}s:36:"8:configure-setting-wgmaxshellmemory";a:2:{i:0;R:10452;i:1;R:799;}s:34:"8:configure-setting-wgmaxshelltime";a:2:{i:0;R:10452;i:1;R:799;}s:33:"8:configure-setting-wgshelllocale";a:2:{i:0;R:10452;i:1;R:799;}s:40:"8:configure-setting-wgupdaterowsperquery";a:2:{i:0;R:10452;i:1;R:799;}s:47:"8:configure-setting-wguseautomaticeditsummaries";a:2:{i:0;R:10452;i:1;R:799;}s:42:"8:configure-setting-wgusecombinedloginlink";a:2:{i:0;R:10452;i:1;R:799;}s:35:"8:configure-setting-wgusetrackbacks";a:2:{i:0;R:10452;i:1;R:799;}s:34:"8:configure-setting-wgusetagfilter";a:2:{i:0;R:10452;i:1;R:799;}s:42:"8:configure-setting-wgdisablehardredirects";a:2:{i:0;R:10452;i:1;R:799;}s:45:"8:configure-setting-wgenablescarytranscluding";a:2:{i:0;R:10452;i:1;R:799;}s:35:"8:configure-setting-wgimportsources";a:2:{i:0;R:10452;i:1;R:799;}s:36:"8:configure-setting-wginterwikicache";a:2:{i:0;R:10452;i:1;R:799;}s:37:"8:configure-setting-wginterwikiexpiry";a:2:{i:0;R:10452;i:1;R:799;}s:43:"8:configure-setting-wginterwikifallbacksite";a:2:{i:0;R:10452;i:1;R:799;}s:37:"8:configure-setting-wginterwikiscopes";a:2:{i:0;R:10452;i:1;R:799;}s:36:"8:configure-setting-wglocalinterwiki";a:2:{i:0;R:10452;i:1;R:799;}s:37:"8:configure-setting-wgredirectsources";a:2:{i:0;R:10452;i:1;R:799;}s:38:"8:configure-setting-wgblockopenproxies";a:2:{i:0;R:10452;i:1;R:799;}s:40:"8:configure-setting-wgenablednsblacklist";a:2:{i:0;R:10452;i:1;R:799;}s:31:"8:configure-setting-wgproxylist";a:2:{i:0;R:10452;i:1;R:799;}s:37:"8:configure-setting-wgproxymemcexpiry";a:2:{i:0;R:10452;i:1;R:799;}s:32:"8:configure-setting-wgproxyports";a:2:{i:0;R:10452;i:1;R:799;}s:37:"8:configure-setting-wgproxyscriptpath";a:2:{i:0;R:10452;i:1;R:799;}s:36:"8:configure-setting-wgproxywhitelist";a:2:{i:0;R:10452;i:1;R:799;}s:31:"8:configure-setting-wgsecretkey";a:2:{i:0;R:10452;i:1;R:799;}s:38:"8:configure-setting-wgdnsblacklisturls";a:2:{i:0;R:10452;i:1;R:799;}s:35:"8:configure-setting-wguseprivateips";a:2:{i:0;R:10452;i:1;R:799;}s:35:"8:configure-setting-wgsqlitedatadir";a:2:{i:0;R:10452;i:1;R:799;}s:32:"8:configure-setting-wgdbmwschema";a:2:{i:0;R:10452;i:1;R:799;}s:30:"8:configure-setting-wgdbmysql5";a:2:{i:0;R:10452;i:1;R:799;}s:30:"8:configure-setting-wgdbprefix";a:2:{i:0;R:10452;i:1;R:799;}s:36:"8:configure-setting-wgdbtableoptions";a:2:{i:0;R:10452;i:1;R:799;}s:36:"8:configure-setting-wgdbtransactions";a:2:{i:0;R:10452;i:1;R:799;}s:38:"8:configure-setting-wgdbclustertimeout";a:2:{i:0;R:10452;i:1;R:799;}s:31:"8:configure-setting-wgdbservers";a:2:{i:0;R:10452;i:1;R:799;}s:42:"8:configure-setting-wgdefaultexternalstore";a:2:{i:0;R:10452;i:1;R:799;}s:37:"8:configure-setting-wgexternalservers";a:2:{i:0;R:10452;i:1;R:799;}s:35:"8:configure-setting-wglbfactoryconf";a:2:{i:0;R:10452;i:1;R:799;}s:39:"8:configure-setting-wgmasterwaittimeout";a:2:{i:0;R:10452;i:1;R:799;}s:38:"8:configure-setting-wgslavelagcritical";a:2:{i:0;R:10452;i:1;R:799;}s:37:"8:configure-setting-wgslavelagwarning";a:2:{i:0;R:10452;i:1;R:799;}s:31:"8:configure-setting-wgantivirus";a:2:{i:0;R:10452;i:1;R:799;}s:39:"8:configure-setting-wgantivirusrequired";a:2:{i:0;R:10452;i:1;R:799;}s:36:"8:configure-setting-wgantivirussetup";a:2:{i:0;R:10452;i:1;R:799;}s:38:"8:configure-setting-wgallowtitlesinsvg";a:2:{i:0;R:10452;i:1;R:799;}s:34:"8:configure-setting-wgsvgconverter";a:2:{i:0;R:10452;i:1;R:799;}s:38:"8:configure-setting-wgsvgconverterpath";a:2:{i:0;R:10452;i:1;R:799;}s:35:"8:configure-setting-wgsvgconverters";a:2:{i:0;R:10452;i:1;R:799;}s:39:"8:configure-setting-wgsvgconverters-key";a:2:{i:0;R:10452;i:1;R:799;}s:41:"8:configure-setting-wgsvgconverters-value";a:2:{i:0;R:10452;i:1;R:799;}s:32:"8:configure-setting-wgsvgmaxsize";a:2:{i:0;R:10452;i:1;R:799;}s:39:"8:configure-setting-wgsvgmetadatacutoff";a:2:{i:0;R:10452;i:1;R:799;}s:47:"8:configure-setting-wgimagemagickconvertcommand";a:2:{i:0;R:10452;i:1;R:799;}s:48:"8:configure-setting-wgimagemagickidentifycommand";a:2:{i:0;R:10452;i:1;R:799;}s:40:"8:configure-setting-wgimagemagicktempdir";a:2:{i:0;R:10452;i:1;R:799;}s:38:"8:configure-setting-wgsharpenparameter";a:2:{i:0;R:10452;i:1;R:799;}s:47:"8:configure-setting-wgsharpenreductionthreshold";a:2:{i:0;R:10452;i:1;R:799;}s:36:"8:configure-setting-wguseimagemagick";a:2:{i:0;R:10452;i:1;R:799;}s:30:"8:configure-setting-wgdjvudump";a:2:{i:0;R:10452;i:1;R:799;}s:41:"8:configure-setting-wgdjvuoutputextension";a:2:{i:0;R:10452;i:1;R:799;}s:39:"8:configure-setting-wgdjvupostprocessor";a:2:{i:0;R:10452;i:1;R:799;}s:34:"8:configure-setting-wgdjvurenderer";a:2:{i:0;R:10452;i:1;R:799;}s:31:"8:configure-setting-wgdjvutoxml";a:2:{i:0;R:10452;i:1;R:799;}s:29:"8:configure-setting-wgdjvutxt";a:2:{i:0;R:10452;i:1;R:799;}s:41:"8:configure-setting-wgmemcachedpersistent";a:2:{i:0;R:10452;i:1;R:799;}s:38:"8:configure-setting-wgmemcachedservers";a:2:{i:0;R:10452;i:1;R:799;}s:38:"8:configure-setting-wgmemcachedtimeout";a:2:{i:0;R:10452;i:1;R:799;}s:41:"8:configure-setting-wgsessionsinmemcached";a:2:{i:0;R:10452;i:1;R:799;}s:36:"8:configure-setting-wgcachedirectory";a:2:{i:0;R:10452;i:1;R:799;}s:38:"8:configure-setting-wgmessagecachetype";a:2:{i:0;R:10452;i:1;R:799;}s:43:"8:configure-setting-wglocalisationcacheconf";a:2:{i:0;R:10452;i:1;R:799;}s:42:"8:configure-setting-wguselocalmessagecache";a:2:{i:0;R:10452;i:1;R:799;}s:49:"8:configure-setting-wglocalmessagecacheserialized";a:2:{i:0;R:10452;i:1;R:799;}s:42:"8:configure-setting-wgadaptivemessagecache";a:2:{i:0;R:10452;i:1;R:799;}s:36:"8:configure-setting-wgmsgcacheexpiry";a:2:{i:0;R:10452;i:1;R:799;}s:42:"8:configure-setting-wgmaxmsgcacheentrysize";a:2:{i:0;R:10452;i:1;R:799;}s:37:"8:configure-setting-wgparsercachetype";a:2:{i:0;R:10452;i:1;R:799;}s:39:"8:configure-setting-wgenableparsercache";a:2:{i:0;R:10452;i:1;R:799;}s:40:"8:configure-setting-wgenablesidebarcache";a:2:{i:0;R:10452;i:1;R:799;}s:38:"8:configure-setting-wgrenderhashappend";a:2:{i:0;R:10452;i:1;R:799;}s:40:"8:configure-setting-wgsidebarcacheexpiry";a:2:{i:0;R:10452;i:1;R:799;}s:29:"8:configure-setting-wguseetag";a:2:{i:0;R:10452;i:1;R:799;}s:35:"8:configure-setting-wgalwaysusetidy";a:2:{i:0;R:10452;i:1;R:799;}s:31:"8:configure-setting-wgdebugtidy";a:2:{i:0;R:10452;i:1;R:799;}s:29:"8:configure-setting-wgtidybin";a:2:{i:0;R:10452;i:1;R:799;}s:30:"8:configure-setting-wgtidyconf";a:2:{i:0;R:10452;i:1;R:799;}s:34:"8:configure-setting-wgtidyinternal";a:2:{i:0;R:10452;i:1;R:799;}s:30:"8:configure-setting-wgtidyopts";a:2:{i:0;R:10452;i:1;R:799;}s:29:"8:configure-setting-wgusetidy";a:2:{i:0;R:10452;i:1;R:799;}s:37:"8:configure-setting-wgvalidateallhtml";a:2:{i:0;R:10452;i:1;R:799;}s:29:"8:configure-setting-wgrawhtml";a:2:{i:0;R:10452;i:1;R:799;}s:47:"8:configure-setting-wgdisableuploadscriptchecks";a:2:{i:0;R:10452;i:1;R:799;}s:38:"8:configure-setting-wgallowjavauploads";a:2:{i:0;R:10452;i:1;R:799;}s:34:"8:configure-setting-wgxmlmimetypes";a:2:{i:0;R:10452;i:1;R:799;}s:38:"8:configure-setting-wgxmlmimetypes-key";a:2:{i:0;R:10452;i:1;R:799;}s:53:"8:configure-setting-wgcleanuppresentationalattributes";a:2:{i:0;R:10452;i:1;R:799;}s:49:"8:configure-setting-wgenabletooltipsandaccesskeys";a:2:{i:0;R:10452;i:1;R:799;}s:27:"8:configure-setting-wghtml5";a:2:{i:0;R:10452;i:1;R:799;}s:34:"8:configure-setting-wghtml5version";a:2:{i:0;R:10452;i:1;R:799;}s:35:"8:configure-setting-wgwellformedxml";a:2:{i:0;R:10452;i:1;R:799;}s:29:"8:configure-setting-wgdoctype";a:2:{i:0;R:10452;i:1;R:799;}s:25:"8:configure-setting-wgdtd";a:2:{i:0;R:10452;i:1;R:799;}s:30:"8:configure-setting-wgmimetype";a:2:{i:0;R:10452;i:1;R:799;}s:43:"8:configure-setting-wgxhtmldefaultnamespace";a:2:{i:0;R:10452;i:1;R:799;}s:37:"8:configure-setting-wgxhtmlnamespaces";a:2:{i:0;R:10452;i:1;R:799;}s:41:"8:configure-setting-wgxhtmlnamespaces-key";a:2:{i:0;R:10452;i:1;R:799;}s:46:"8:configure-setting-wgallowmicrodataattributes";a:2:{i:0;R:10452;i:1;R:799;}s:41:"8:configure-setting-wgallowrdfaattributes";a:2:{i:0;R:10452;i:1;R:799;}s:35:"8:configure-setting-wglocaltimezone";a:2:{i:0;R:10452;i:1;R:799;}s:35:"8:configure-setting-wglocaltzoffset";a:2:{i:0;R:10452;i:1;R:799;}s:34:"8:configure-setting-wgallowusercss";a:2:{i:0;R:10452;i:1;R:799;}s:33:"8:configure-setting-wgallowuserjs";a:2:{i:0;R:10452;i:1;R:799;}s:32:"8:configure-setting-wgusesitecss";a:2:{i:0;R:10452;i:1;R:799;}s:31:"8:configure-setting-wgusesitejs";a:2:{i:0;R:10452;i:1;R:799;}s:35:"8:configure-setting-wghandheldstyle";a:2:{i:0;R:10452;i:1;R:799;}s:39:"8:configure-setting-wghandheldforiphone";a:2:{i:0;R:10452;i:1;R:799;}s:45:"8:configure-setting-wgincludelegacyjavascript";a:2:{i:0;R:10452;i:1;R:799;}s:45:"8:configure-setting-wglegacyjavascriptglobals";a:2:{i:0;R:10452;i:1;R:799;}s:38:"8:configure-setting-wgresourcebasepath";a:2:{i:0;R:10452;i:1;R:799;}s:41:"8:configure-setting-wgresourceloaderdebug";a:2:{i:0;R:10452;i:1;R:799;}s:56:"8:configure-setting-wgresourceloaderinlineprivatemodules";a:2:{i:0;R:10452;i:1;R:799;}s:42:"8:configure-setting-wgresourceloadermaxage";a:2:{i:0;R:10452;i:1;R:799;}s:50:"8:configure-setting-wgresourceloadermaxquerylength";a:2:{i:0;R:10452;i:1;R:799;}s:57:"8:configure-setting-wgresourceloaderminifiermaxlinelength";a:2:{i:0;R:10452;i:1;R:799;}s:63:"8:configure-setting-wgresourceloaderminifierstatementsonownline";a:2:{i:0;R:10452;i:1;R:799;}s:42:"8:configure-setting-wgresourceloaderuseesi";a:2:{i:0;R:10452;i:1;R:799;}s:46:"8:configure-setting-wgresourceloadervalidatejs";a:2:{i:0;R:10452;i:1;R:799;}s:52:"8:configure-setting-wgresourceloadervalidatestaticjs";a:2:{i:0;R:10452;i:1;R:799;}s:29:"8:configure-setting-wguseajax";a:2:{i:0;R:10452;i:1;R:799;}s:36:"8:configure-setting-wgajaxexportlist";a:2:{i:0;R:10452;i:1;R:799;}s:32:"8:configure-setting-wgajaxsearch";a:2:{i:0;R:10452;i:1;R:799;}s:41:"8:configure-setting-wgajaxuploaddestcheck";a:2:{i:0;R:10452;i:1;R:799;}s:31:"8:configure-setting-wgajaxwatch";a:2:{i:0;R:10452;i:1;R:799;}s:42:"8:configure-setting-wgcrosssiteajaxdomains";a:2:{i:0;R:10452;i:1;R:799;}s:51:"8:configure-setting-wgcrosssiteajaxdomainexceptions";a:2:{i:0;R:10452;i:1;R:799;}s:33:"8:configure-setting-wglivepreview";a:2:{i:0;R:10452;i:1;R:799;}s:32:"8:configure-setting-wgjsmimetype";a:2:{i:0;R:10452;i:1;R:799;}s:43:"8:configure-setting-wgloadfileinfoextension";a:2:{i:0;R:10452;i:1;R:799;}s:41:"8:configure-setting-wgmimedetectorcommand";a:2:{i:0;R:10452;i:1;R:799;}s:34:"8:configure-setting-wgmimeinfofile";a:2:{i:0;R:10452;i:1;R:799;}s:34:"8:configure-setting-wgmimetypefile";a:2:{i:0;R:10452;i:1;R:799;}s:36:"8:configure-setting-wgverifymimetype";a:2:{i:0;R:10452;i:1;R:799;}s:39:"8:configure-setting-wgmimetypeblacklist";a:2:{i:0;R:10452;i:1;R:799;}s:40:"8:configure-setting-wgcacheshareduploads";a:2:{i:0;R:10452;i:1;R:799;}s:38:"8:configure-setting-wgforeignfilerepos";a:2:{i:0;R:10452;i:1;R:799;}s:39:"8:configure-setting-wguseinstantcommons";a:2:{i:0;R:10452;i:1;R:799;}s:46:"8:configure-setting-wgfetchcommonsdescriptions";a:2:{i:0;R:10452;i:1;R:799;}s:49:"8:configure-setting-wghashedshareduploaddirectory";a:2:{i:0;R:10452;i:1;R:799;}s:39:"8:configure-setting-wgrepositorybaseurl";a:2:{i:0;R:10452;i:1;R:799;}s:47:"8:configure-setting-wgsharedthumbnailscriptpath";a:2:{i:0;R:10452;i:1;R:799;}s:40:"8:configure-setting-wgshareduploaddbname";a:2:{i:0;R:10452;i:1;R:799;}s:42:"8:configure-setting-wgshareduploaddbprefix";a:2:{i:0;R:10452;i:1;R:799;}s:43:"8:configure-setting-wgshareduploaddirectory";a:2:{i:0;R:10452;i:1;R:799;}s:38:"8:configure-setting-wgshareduploadpath";a:2:{i:0;R:10452;i:1;R:799;}s:38:"8:configure-setting-wguseshareduploads";a:2:{i:0;R:10452;i:1;R:799;}s:36:"8:configure-setting-wgappletouchicon";a:2:{i:0;R:10452;i:1;R:799;}s:33:"8:configure-setting-wgarticlepath";a:2:{i:0;R:10452;i:1;R:799;}s:37:"8:configure-setting-wgcanonicalserver";a:2:{i:0;R:10452;i:1;R:799;}s:38:"8:configure-setting-wgdeleteddirectory";a:2:{i:0;R:10452;i:1;R:799;}s:35:"8:configure-setting-wgdirectorymode";a:2:{i:0;R:10452;i:1;R:799;}s:26:"8:configure-setting-wgdiff";a:2:{i:0;R:10452;i:1;R:799;}s:27:"8:configure-setting-wgdiff3";a:2:{i:0;R:10452;i:1;R:799;}s:29:"8:configure-setting-wgfavicon";a:2:{i:0;R:10452;i:1;R:799;}s:33:"8:configure-setting-wgfootericons";a:2:{i:0;R:10452;i:1;R:799;}s:26:"8:configure-setting-wglogo";a:2:{i:0;R:10452;i:1;R:799;}s:32:"8:configure-setting-wgloadscript";a:2:{i:0;R:10452;i:1;R:799;}s:36:"8:configure-setting-wgredirectscript";a:2:{i:0;R:10452;i:1;R:799;}s:28:"8:configure-setting-wgphpcli";a:2:{i:0;R:10452;i:1;R:799;}s:34:"8:configure-setting-wgexiv2command";a:2:{i:0;R:10452;i:1;R:799;}s:28:"8:configure-setting-wgscript";a:2:{i:0;R:10452;i:1;R:799;}s:37:"8:configure-setting-wgscriptextension";a:2:{i:0;R:10452;i:1;R:799;}s:32:"8:configure-setting-wgscriptpath";a:2:{i:0;R:10452;i:1;R:799;}s:28:"8:configure-setting-wgserver";a:2:{i:0;R:10452;i:1;R:799;}s:32:"8:configure-setting-wgservername";a:2:{i:0;R:10452;i:1;R:799;}s:36:"8:configure-setting-wgstyledirectory";a:2:{i:0;R:10452;i:1;R:799;}s:31:"8:configure-setting-wgstylepath";a:2:{i:0;R:10452;i:1;R:799;}s:36:"8:configure-setting-wglocalstylepath";a:2:{i:0;R:10452;i:1;R:799;}s:36:"8:configure-setting-wgstylesheetpath";a:2:{i:0;R:10452;i:1;R:799;}s:34:"8:configure-setting-wgtmpdirectory";a:2:{i:0;R:10452;i:1;R:799;}s:35:"8:configure-setting-wguploadbaseurl";a:2:{i:0;R:10452;i:1;R:799;}s:33:"8:configure-setting-wgusepathinfo";a:2:{i:0;R:10452;i:1;R:799;}s:37:"8:configure-setting-wguploaddirectory";a:2:{i:0;R:10452;i:1;R:799;}s:41:"8:configure-setting-wguploadnavigationurl";a:2:{i:0;R:10452;i:1;R:799;}s:42:"8:configure-setting-wguploadmissingfileurl";a:2:{i:0;R:10452;i:1;R:799;}s:32:"8:configure-setting-wguploadpath";a:2:{i:0;R:10452;i:1;R:799;}s:40:"8:configure-setting-wgvariantarticlepath";a:2:{i:0;R:10452;i:1;R:799;}s:46:"8:configure-setting-wguploadstashscalerbaseurl";a:2:{i:0;R:10452;i:1;R:799;}s:51:"8:configure-setting-wgallowcategorizedrecentchanges";a:2:{i:0;R:10452;i:1;R:799;}s:31:"8:configure-setting-wgputipinrc";a:2:{i:0;R:10452;i:1;R:799;}s:44:"8:configure-setting-wgautopromoteonceloginrc";a:2:{i:0;R:10452;i:1;R:799;}s:44:"8:configure-setting-wgrcchangedsizethreshold";a:2:{i:0;R:10452;i:1;R:799;}s:35:"8:configure-setting-wgrcfilterbyage";a:2:{i:0;R:10452;i:1;R:799;}s:34:"8:configure-setting-wgrclinklimits";a:2:{i:0;R:10452;i:1;R:799;}s:32:"8:configure-setting-wgrclinkdays";a:2:{i:0;R:10452;i:1;R:799;}s:30:"8:configure-setting-wgrcmaxage";a:2:{i:0;R:10452;i:1;R:799;}s:39:"8:configure-setting-wgrcshowchangedsize";a:2:{i:0;R:10452;i:1;R:799;}s:41:"8:configure-setting-wgrcshowwatchingusers";a:2:{i:0;R:10452;i:1;R:799;}s:39:"8:configure-setting-wgshowupdatedmarker";a:2:{i:0;R:10452;i:1;R:799;}s:33:"8:configure-setting-wgusercpatrol";a:2:{i:0;R:10452;i:1;R:799;}s:35:"8:configure-setting-wgrc2udpaddress";a:2:{i:0;R:10452;i:1;R:799;}s:43:"8:configure-setting-wgrc2udpinterwikiprefix";a:2:{i:0;R:10452;i:1;R:799;}s:36:"8:configure-setting-wgrc2udpomitbots";a:2:{i:0;R:10452;i:1;R:799;}s:32:"8:configure-setting-wgrc2udpport";a:2:{i:0;R:10452;i:1;R:799;}s:34:"8:configure-setting-wgrc2udpprefix";a:2:{i:0;R:10452;i:1;R:799;}s:39:"8:configure-setting-wgblockallowsutedit";a:2:{i:0;R:10452;i:1;R:799;}s:40:"8:configure-setting-wgblockdisableslogin";a:2:{i:0;R:10452;i:1;R:799;}s:36:"8:configure-setting-wgsysopemailbans";a:2:{i:0;R:10452;i:1;R:799;}s:38:"8:configure-setting-wgenotiffromeditor";a:2:{i:0;R:10452;i:1;R:799;}s:38:"8:configure-setting-wgenotifimpersonal";a:2:{i:0;R:10452;i:1;R:799;}s:37:"8:configure-setting-wgenotifmaxrecips";a:2:{i:0;R:10452;i:1;R:799;}s:38:"8:configure-setting-wgenotifminoredits";a:2:{i:0;R:10452;i:1;R:799;}s:47:"8:configure-setting-wgenotifrevealeditoraddress";a:2:{i:0;R:10452;i:1;R:799;}s:35:"8:configure-setting-wgenotifusejobq";a:2:{i:0;R:10452;i:1;R:799;}s:39:"8:configure-setting-wgenotifuserealname";a:2:{i:0;R:10452;i:1;R:799;}s:36:"8:configure-setting-wgenotifusertalk";a:2:{i:0;R:10452;i:1;R:799;}s:37:"8:configure-setting-wgenotifwatchlist";a:2:{i:0;R:10452;i:1;R:799;}s:47:"8:configure-setting-wgusersnotifiedonallchanges";a:2:{i:0;R:10452;i:1;R:799;}s:40:"8:configure-setting-wgdebugfunctionentry";a:2:{i:0;R:10452;i:1;R:799;}s:36:"8:configure-setting-wgdebugprofiling";a:2:{i:0;R:10452;i:1;R:799;}s:37:"8:configure-setting-wgprofilecalltree";a:2:{i:0;R:10452;i:1;R:799;}s:34:"8:configure-setting-wgprofilelimit";a:2:{i:0;R:10452;i:1;R:799;}s:33:"8:configure-setting-wgprofileonly";a:2:{i:0;R:10452;i:1;R:799;}s:36:"8:configure-setting-wgprofileperhost";a:2:{i:0;R:10452;i:1;R:799;}s:39:"8:configure-setting-wgprofiletodatabase";a:2:{i:0;R:10452;i:1;R:799;}s:37:"8:configure-setting-wgudpprofilerhost";a:2:{i:0;R:10452;i:1;R:799;}s:37:"8:configure-setting-wgudpprofilerport";a:2:{i:0;R:10452;i:1;R:799;}s:28:"8:confirmaccount-newrequests";a:2:{i:0;s:18:"ext-confirmaccount";i:1;R:799;}s:28:"8:requestaccount-loginnotice";a:2:{i:0;R:11080;i:1;R:799;}s:22:"8:right-confirmaccount";a:2:{i:0;R:11080;i:1;R:799;}s:18:"8:right-requestips";a:2:{i:0;R:11080;i:1;R:799;}s:25:"8:right-lookupcredentials";a:2:{i:0;R:11080;i:1;R:799;}s:17:"8:confirmaccounts";a:2:{i:0;s:23:"ext-confirmaccount-page";i:1;R:799;}s:18:"8:confirmedit-desc";a:2:{i:0;R:11086;i:1;R:799;}s:25:"8:confirmaccount-maintext";a:2:{i:0;R:11086;i:1;R:799;}s:21:"8:confirmaccount-list";a:2:{i:0;R:11086;i:1;R:799;}s:22:"8:confirmaccount-list2";a:2:{i:0;R:11086;i:1;R:799;}s:22:"8:confirmaccount-list3";a:2:{i:0;R:11086;i:1;R:799;}s:21:"8:confirmaccount-text";a:2:{i:0;R:11086;i:1;R:799;}s:23:"8:confirmaccount-none-o";a:2:{i:0;R:11086;i:1;R:799;}s:23:"8:confirmaccount-none-h";a:2:{i:0;R:11086;i:1;R:799;}s:23:"8:confirmaccount-none-r";a:2:{i:0;R:11086;i:1;R:799;}s:23:"8:confirmaccount-none-e";a:2:{i:0;R:11086;i:1;R:799;}s:23:"8:confirmaccount-real-q";a:2:{i:0;R:11086;i:1;R:799;}s:24:"8:confirmaccount-email-q";a:2:{i:0;R:11086;i:1;R:799;}s:22:"8:confirmaccount-bio-q";a:2:{i:0;R:11086;i:1;R:799;}s:25:"8:confirmaccount-showopen";a:2:{i:0;R:11086;i:1;R:799;}s:24:"8:confirmaccount-showrej";a:2:{i:0;R:11086;i:1;R:799;}s:25:"8:confirmaccount-showheld";a:2:{i:0;R:11086;i:1;R:799;}s:24:"8:confirmaccount-showexp";a:2:{i:0;R:11086;i:1;R:799;}s:23:"8:confirmaccount-review";a:2:{i:0;R:11086;i:1;R:799;}s:22:"8:confirmaccount-types";a:2:{i:0;R:11086;i:1;R:799;}s:20:"8:confirmaccount-all";a:2:{i:0;R:11086;i:1;R:799;}s:21:"8:confirmaccount-type";a:2:{i:0;R:11086;i:1;R:799;}s:23:"8:confirmaccount-type-0";a:2:{i:0;R:11086;i:1;R:799;}s:23:"8:confirmaccount-type-1";a:2:{i:0;R:11086;i:1;R:799;}s:23:"8:confirmaccount-q-open";a:2:{i:0;R:11086;i:1;R:799;}s:23:"8:confirmaccount-q-held";a:2:{i:0;R:11086;i:1;R:799;}s:22:"8:confirmaccount-q-rej";a:2:{i:0;R:11086;i:1;R:799;}s:24:"8:confirmaccount-q-stale";a:2:{i:0;R:11086;i:1;R:799;}s:22:"8:confirmaccount-badid";a:2:{i:0;R:11086;i:1;R:799;}s:25:"8:confirmaccount-leg-user";a:2:{i:0;R:11086;i:1;R:799;}s:26:"8:confirmaccount-leg-areas";a:2:{i:0;R:11086;i:1;R:799;}s:27:"8:confirmaccount-leg-person";a:2:{i:0;R:11086;i:1;R:799;}s:26:"8:confirmaccount-leg-other";a:2:{i:0;R:11086;i:1;R:799;}s:21:"8:confirmaccount-name";a:2:{i:0;R:11086;i:1;R:799;}s:21:"8:confirmaccount-real";a:2:{i:0;R:11086;i:1;R:799;}s:22:"8:confirmaccount-email";a:2:{i:0;R:11086;i:1;R:799;}s:24:"8:confirmaccount-reqtype";a:2:{i:0;R:11086;i:1;R:799;}s:22:"8:confirmaccount-pos-0";a:2:{i:0;R:11086;i:1;R:799;}s:22:"8:confirmaccount-pos-1";a:2:{i:0;R:11086;i:1;R:799;}s:20:"8:confirmaccount-bio";a:2:{i:0;R:11086;i:1;R:799;}s:23:"8:confirmaccount-attach";a:2:{i:0;R:11086;i:1;R:799;}s:22:"8:confirmaccount-notes";a:2:{i:0;R:11086;i:1;R:799;}s:21:"8:confirmaccount-urls";a:2:{i:0;R:11086;i:1;R:799;}s:23:"8:confirmaccount-none-p";a:2:{i:0;R:11086;i:1;R:799;}s:24:"8:confirmaccount-confirm";a:2:{i:0;R:11086;i:1;R:799;}s:22:"8:confirmaccount-econf";a:2:{i:0;R:11086;i:1;R:799;}s:23:"8:confirmaccount-reject";a:2:{i:0;R:11086;i:1;R:799;}s:25:"8:confirmaccount-rational";a:2:{i:0;R:11086;i:1;R:799;}s:25:"8:confirmaccount-noreason";a:2:{i:0;R:11086;i:1;R:799;}s:24:"8:confirmaccount-autorej";a:2:{i:0;R:11086;i:1;R:799;}s:21:"8:confirmaccount-held";a:2:{i:0;R:11086;i:1;R:799;}s:23:"8:confirmaccount-create";a:2:{i:0;R:11086;i:1;R:799;}s:21:"8:confirmaccount-deny";a:2:{i:0;R:11086;i:1;R:799;}s:21:"8:confirmaccount-hold";a:2:{i:0;R:11086;i:1;R:799;}s:21:"8:confirmaccount-spam";a:2:{i:0;R:11086;i:1;R:799;}s:23:"8:confirmaccount-reason";a:2:{i:0;R:11086;i:1;R:799;}s:19:"8:confirmaccount-ip";a:2:{i:0;R:11086;i:1;R:799;}s:23:"8:confirmaccount-legend";a:2:{i:0;R:11086;i:1;R:799;}s:23:"8:confirmaccount-submit";a:2:{i:0;R:11086;i:1;R:799;}s:27:"8:confirmaccount-needreason";a:2:{i:0;R:11086;i:1;R:799;}s:25:"8:confirmaccount-canthold";a:2:{i:0;R:11086;i:1;R:799;}s:26:"8:confirmaccount-badaction";a:2:{i:0;R:11086;i:1;R:799;}s:20:"8:confirmaccount-acc";a:2:{i:0;R:11086;i:1;R:799;}s:20:"8:confirmaccount-rej";a:2:{i:0;R:11086;i:1;R:799;}s:24:"8:confirmaccount-viewing";a:2:{i:0;R:11086;i:1;R:799;}s:24:"8:confirmaccount-summary";a:2:{i:0;R:11086;i:1;R:799;}s:21:"8:confirmaccount-welc";a:2:{i:0;R:11086;i:1;R:799;}s:21:"8:confirmaccount-wsum";a:2:{i:0;R:11086;i:1;R:799;}s:27:"8:confirmaccount-email-subj";a:2:{i:0;R:11086;i:1;R:799;}s:27:"8:confirmaccount-email-body";a:2:{i:0;R:11086;i:1;R:799;}s:28:"8:confirmaccount-email-body2";a:2:{i:0;R:11086;i:1;R:799;}s:28:"8:confirmaccount-email-body3";a:2:{i:0;R:11086;i:1;R:799;}s:28:"8:confirmaccount-email-body4";a:2:{i:0;R:11086;i:1;R:799;}s:28:"8:confirmaccount-email-body5";a:2:{i:0;R:11086;i:1;R:799;}s:16:"8:requestaccount";a:2:{i:0;s:33:"ext-confirmaccount-requestaccount";i:1;R:799;}s:21:"8:requestaccount-text";a:2:{i:0;R:11161;i:1;R:799;}s:23:"8:requestaccount-footer";a:2:{i:0;R:11161;i:1;R:799;}s:21:"8:requestaccount-page";a:2:{i:0;R:11161;i:1;R:799;}s:20:"8:requestaccount-dup";a:2:{i:0;R:11161;i:1;R:799;}s:25:"8:requestaccount-leg-user";a:2:{i:0;R:11161;i:1;R:799;}s:26:"8:requestaccount-leg-areas";a:2:{i:0;R:11161;i:1;R:799;}s:27:"8:requestaccount-leg-person";a:2:{i:0;R:11161;i:1;R:799;}s:26:"8:requestaccount-leg-other";a:2:{i:0;R:11161;i:1;R:799;}s:24:"8:requestaccount-leg-tos";a:2:{i:0;R:11161;i:1;R:799;}s:25:"8:requestaccount-acc-text";a:2:{i:0;R:11161;i:1;R:799;}s:22:"8:requestaccount-areas";a:2:{i:0;R:11161;i:1;R:799;}s:27:"8:requestaccount-areas-text";a:2:{i:0;R:11161;i:1;R:799;}s:25:"8:requestaccount-ext-text";a:2:{i:0;R:11161;i:1;R:799;}s:25:"8:requestaccount-bio-text";a:2:{i:0;R:11161;i:1;R:799;}s:27:"8:requestaccount-bio-text-i";a:2:{i:0;R:11161;i:1;R:799;}s:21:"8:requestaccount-real";a:2:{i:0;R:11161;i:1;R:799;}s:21:"8:requestaccount-same";a:2:{i:0;R:11161;i:1;R:799;}s:22:"8:requestaccount-email";a:2:{i:0;R:11161;i:1;R:799;}s:24:"8:requestaccount-reqtype";a:2:{i:0;R:11161;i:1;R:799;}s:24:"8:requestaccount-level-0";a:2:{i:0;R:11161;i:1;R:799;}s:24:"8:requestaccount-level-1";a:2:{i:0;R:11161;i:1;R:799;}s:21:"8:requestaccount-info";a:2:{i:0;R:11161;i:1;R:799;}s:20:"8:requestaccount-bio";a:2:{i:0;R:11161;i:1;R:799;}s:23:"8:requestaccount-attach";a:2:{i:0;R:11161;i:1;R:799;}s:22:"8:requestaccount-notes";a:2:{i:0;R:11161;i:1;R:799;}s:21:"8:requestaccount-urls";a:2:{i:0;R:11161;i:1;R:799;}s:22:"8:requestaccount-agree";a:2:{i:0;R:11161;i:1;R:799;}s:22:"8:requestaccount-inuse";a:2:{i:0;R:11161;i:1;R:799;}s:25:"8:requestaccount-tooshort";a:2:{i:0;R:11161;i:1;R:799;}s:25:"8:requestaccount-emaildup";a:2:{i:0;R:11161;i:1;R:799;}s:21:"8:requestaccount-exts";a:2:{i:0;R:11161;i:1;R:799;}s:22:"8:requestaccount-resub";a:2:{i:0;R:11161;i:1;R:799;}s:20:"8:requestaccount-tos";a:2:{i:0;R:11161;i:1;R:799;}s:23:"8:requestaccount-submit";a:2:{i:0;R:11161;i:1;R:799;}s:21:"8:requestaccount-sent";a:2:{i:0;R:11161;i:1;R:799;}s:23:"8:request-account-econf";a:2:{i:0;R:11161;i:1;R:799;}s:27:"8:requestaccount-email-subj";a:2:{i:0;R:11161;i:1;R:799;}s:27:"8:requestaccount-email-body";a:2:{i:0;R:11161;i:1;R:799;}s:33:"8:requestaccount-email-subj-admin";a:2:{i:0;R:11161;i:1;R:799;}s:33:"8:requestaccount-email-body-admin";a:2:{i:0;R:11161;i:1;R:799;}s:27:"8:acct_request_throttle_hit";a:2:{i:0;R:11161;i:1;R:799;}s:17:"8:usercredentials";a:2:{i:0;s:34:"ext-confirmaccount-usercredentials";i:1;R:799;}s:21:"8:usercredentials-leg";a:2:{i:0;R:11204;i:1;R:799;}s:22:"8:usercredentials-user";a:2:{i:0;R:11204;i:1;R:799;}s:22:"8:usercredentials-text";a:2:{i:0;R:11204;i:1;R:799;}s:26:"8:usercredentials-leg-user";a:2:{i:0;R:11204;i:1;R:799;}s:27:"8:usercredentials-leg-areas";a:2:{i:0;R:11204;i:1;R:799;}s:28:"8:usercredentials-leg-person";a:2:{i:0;R:11204;i:1;R:799;}s:27:"8:usercredentials-leg-other";a:2:{i:0;R:11204;i:1;R:799;}s:23:"8:usercredentials-email";a:2:{i:0;R:11204;i:1;R:799;}s:22:"8:usercredentials-real";a:2:{i:0;R:11204;i:1;R:799;}s:21:"8:usercredentials-bio";a:2:{i:0;R:11204;i:1;R:799;}s:24:"8:usercredentials-attach";a:2:{i:0;R:11204;i:1;R:799;}s:23:"8:usercredentials-notes";a:2:{i:0;R:11204;i:1;R:799;}s:22:"8:usercredentials-urls";a:2:{i:0;R:11204;i:1;R:799;}s:20:"8:usercredentials-ip";a:2:{i:0;R:11204;i:1;R:799;}s:24:"8:usercredentials-member";a:2:{i:0;R:11204;i:1;R:799;}s:23:"8:usercredentials-badid";a:2:{i:0;R:11204;i:1;R:799;}s:13:"8:asirra-desc";a:2:{i:0;s:21:"ext-confirmeditasirra";i:1;R:799;}s:13:"8:asirra-edit";a:2:{i:0;R:11222;i:1;R:799;}s:15:"8:asirra-addurl";a:2:{i:0;R:11222;i:1;R:799;}s:16:"8:asirra-badpass";a:2:{i:0;R:11222;i:1;R:799;}s:22:"8:asirra-createaccount";a:2:{i:0;R:11222;i:1;R:799;}s:27:"8:asirra-createaccount-fail";a:2:{i:0;R:11222;i:1;R:799;}s:15:"8:asirra-create";a:2:{i:0;R:11222;i:1;R:799;}s:13:"8:asirra-nojs";a:2:{i:0;R:11222;i:1;R:799;}s:15:"8:asirra-failed";a:2:{i:0;R:11222;i:1;R:799;}s:20:"8:questycaptcha-desc";a:2:{i:0;s:28:"ext-confirmeditquestycaptcha";i:1;R:799;}s:22:"8:questycaptcha-addurl";a:2:{i:0;R:11232;i:1;R:799;}s:24:"8:questycaptcha-badlogin";a:2:{i:0;R:11232;i:1;R:799;}s:29:"8:questycaptcha-createaccount";a:2:{i:0;R:11232;i:1;R:799;}s:22:"8:questycaptcha-create";a:2:{i:0;R:11232;i:1;R:799;}s:20:"8:questycaptcha-edit";a:2:{i:0;R:11232;i:1;R:799;}s:25:"8:questycaptcha-sendemail";a:2:{i:0;R:11232;i:1;R:799;}s:24:"8:questycaptchahelp-text";a:2:{i:0;R:11232;i:1;R:799;}s:16:"8:recaptcha-desc";a:2:{i:0;s:24:"ext-confirmeditrecaptcha";i:1;R:799;}s:16:"8:recaptcha-edit";a:2:{i:0;R:11241;i:1;R:799;}s:18:"8:recaptcha-addurl";a:2:{i:0;R:11241;i:1;R:799;}s:19:"8:recaptcha-badpass";a:2:{i:0;R:11241;i:1;R:799;}s:25:"8:recaptcha-createaccount";a:2:{i:0;R:11241;i:1;R:799;}s:30:"8:recaptcha-createaccount-fail";a:2:{i:0;R:11241;i:1;R:799;}s:18:"8:recaptcha-create";a:2:{i:0;R:11241;i:1;R:799;}s:20:"8:contributionscores";a:2:{i:0;s:22:"ext-contributionscores";i:1;R:799;}s:25:"8:contributionscores-desc";a:2:{i:0;R:11249;i:1;R:799;}s:25:"8:contributionscores-info";a:2:{i:0;R:11249;i:1;R:799;}s:24:"8:contributionscores-top";a:2:{i:0;R:11249;i:1;R:799;}s:25:"8:contributionscores-days";a:2:{i:0;R:11249;i:1;R:799;}s:33:"8:contributionscores-allrevisions";a:2:{i:0;R:11249;i:1;R:799;}s:26:"8:contributionscores-score";a:2:{i:0;R:11249;i:1;R:799;}s:26:"8:contributionscores-pages";a:2:{i:0;R:11249;i:1;R:799;}s:28:"8:contributionscores-changes";a:2:{i:0;R:11249;i:1;R:799;}s:29:"8:contributionscores-username";a:2:{i:0;R:11249;i:1;R:799;}s:36:"8:contributionscores-invalidusername";a:2:{i:0;R:11249;i:1;R:799;}s:34:"8:contributionscores-invalidmetric";a:2:{i:0;R:11249;i:1;R:799;}s:24:"8:contributionseditcount";a:2:{i:0;s:26:"ext-contributionseditcount";i:1;R:799;}s:29:"8:contributionseditcount-desc";a:2:{i:0;R:11262;i:1;R:799;}s:14:"8:contributors";a:2:{i:0;s:16:"ext-contributors";i:1;R:799;}s:19:"8:contributors-desc";a:2:{i:0;R:11265;i:1;R:799;}s:22:"8:contributors-toolbox";a:2:{i:0;R:11265;i:1;R:799;}s:21:"8:contributors-legend";a:2:{i:0;R:11265;i:1;R:799;}s:21:"8:contributors-target";a:2:{i:0;R:11265;i:1;R:799;}s:21:"8:contributors-submit";a:2:{i:0;R:11265;i:1;R:799;}s:23:"8:contributors-subtitle";a:2:{i:0;R:11265;i:1;R:799;}s:26:"8:contributors-others-long";a:2:{i:0;R:11265;i:1;R:799;}s:21:"8:contributors-others";a:2:{i:0;R:11265;i:1;R:799;}s:23:"8:contributors-badtitle";a:2:{i:0;R:11265;i:1;R:799;}s:25:"8:contributors-nosuchpage";a:2:{i:0;R:11265;i:1;R:799;}s:24:"8:contributorsaddon-desc";a:2:{i:0;s:21:"ext-contributorsaddon";i:1;R:799;}s:23:"8:cooperationstatistics";a:2:{i:0;s:25:"ext-cooperationstatistics";i:1;R:799;}s:28:"8:cooperationstatistics-desc";a:2:{i:0;R:11279;i:1;R:799;}s:28:"8:cooperationstatistics-text";a:2:{i:0;R:11279;i:1;R:799;}s:36:"8:cooperationstatistics-tablearticle";a:2:{i:0;R:11279;i:1;R:799;}s:34:"8:cooperationstatistics-tablevalue";a:2:{i:0;R:11279;i:1;R:799;}s:32:"8:cooperationstatistics-articles";a:2:{i:0;R:11279;i:1;R:799;}s:31:"8:cooperationstatistics-nbusers";a:2:{i:0;R:11279;i:1;R:799;}s:35:"8:cooperationstatistics-nblessusers";a:2:{i:0;R:11279;i:1;R:799;}s:35:"8:cooperationstatistics-nbmoreusers";a:2:{i:0;R:11279;i:1;R:799;}s:34:"8:cooperationstatistics-legendmore";a:2:{i:0;R:11279;i:1;R:799;}s:29:"8:cooperationstatistics-users";a:2:{i:0;R:11279;i:1;R:799;}s:42:"8:cooperationstatistics-limit-few-revisors";a:2:{i:0;R:11279;i:1;R:799;}s:43:"8:cooperationstatistics-limit-many-revisors";a:2:{i:0;R:11279;i:1;R:799;}s:12:"8:countedits";a:2:{i:0;s:14:"ext-countedits";i:1;R:799;}s:17:"8:countedits-desc";a:2:{i:0;R:11293;i:1;R:799;}s:20:"8:countedits-warning";a:2:{i:0;R:11293;i:1;R:799;}s:21:"8:countedits-username";a:2:{i:0;R:11293;i:1;R:799;}s:15:"8:countedits-ok";a:2:{i:0;R:11293;i:1;R:799;}s:23:"8:countedits-nosuchuser";a:2:{i:0;R:11293;i:1;R:799;}s:25:"8:countedits-resultheader";a:2:{i:0;R:11293;i:1;R:799;}s:23:"8:countedits-resulttext";a:2:{i:0;R:11293;i:1;R:799;}s:23:"8:countedits-mostactive";a:2:{i:0;R:11293;i:1;R:799;}s:23:"8:countedits-nocontribs";a:2:{i:0;R:11293;i:1;R:799;}s:16:"8:createbox-desc";a:2:{i:0;s:13:"ext-createbox";i:1;R:799;}s:18:"8:createbox-create";a:2:{i:0;R:11304;i:1;R:799;}s:18:"8:createbox-exists";a:2:{i:0;R:11304;i:1;R:799;}s:9:"8:cp-desc";a:2:{i:0;s:14:"ext-createpage";i:1;R:799;}s:11:"8:cp-create";a:2:{i:0;R:11308;i:1;R:799;}s:16:"8:createredirect";a:2:{i:0;s:18:"ext-createredirect";i:1;R:799;}s:21:"8:createredirect-desc";a:2:{i:0;R:11311;i:1;R:799;}s:22:"8:createredirect-error";a:2:{i:0;R:11311;i:1;R:799;}s:29:"8:createredirect-instructions";a:2:{i:0;R:11311;i:1;R:799;}s:27:"8:createredirect-page-title";a:2:{i:0;R:11311;i:1;R:799;}s:30:"8:createredirect-redirect-done";a:2:{i:0;R:11311;i:1;R:799;}s:28:"8:createredirect-redirect-to";a:2:{i:0;R:11311;i:1;R:799;}s:21:"8:createredirect-save";a:2:{i:0;R:11311;i:1;R:799;}s:25:"8:creativecommonsrdf-desc";a:2:{i:0;s:22:"ext-creativecommonsrdf";i:1;R:799;}s:14:"8:credits-desc";a:2:{i:0;s:13:"ext-credittab";i:1;R:799;}s:13:"8:credits-tab";a:2:{i:0;R:11322;i:1;R:799;}s:19:"8:credits-tab-title";a:2:{i:0;R:11322;i:1;R:799;}s:21:"8:crossnamespacelinks";a:2:{i:0;s:23:"ext-crossnamespacelinks";i:1;R:799;}s:26:"8:crossnamespacelinks-desc";a:2:{i:0;R:11326;i:1;R:799;}s:29:"8:crossnamespacelinks-summary";a:2:{i:0;R:11326;i:1;R:799;}s:25:"8:crossnamespacelinkstext";a:2:{i:0;R:11326;i:1;R:799;}s:21:"8:crosswikiblock-desc";a:2:{i:0;s:18:"ext-crosswikiblock";i:1;R:799;}s:16:"8:crosswikiblock";a:2:{i:0;R:11331;i:1;R:799;}s:23:"8:crosswikiblock-header";a:2:{i:0;R:11331;i:1;R:799;}s:23:"8:crosswikiblock-target";a:2:{i:0;R:11331;i:1;R:799;}s:23:"8:crosswikiblock-expiry";a:2:{i:0;R:11331;i:1;R:799;}s:23:"8:crosswikiblock-reason";a:2:{i:0;R:11331;i:1;R:799;}s:23:"8:crosswikiblock-submit";a:2:{i:0;R:11331;i:1;R:799;}s:25:"8:crosswikiblock-anononly";a:2:{i:0;R:11331;i:1;R:799;}s:25:"8:crosswikiblock-nocreate";a:2:{i:0;R:11331;i:1;R:799;}s:26:"8:crosswikiblock-autoblock";a:2:{i:0;R:11331;i:1;R:799;}s:24:"8:crosswikiblock-noemail";a:2:{i:0;R:11331;i:1;R:799;}s:18:"8:crosswikiunblock";a:2:{i:0;R:11331;i:1;R:799;}s:25:"8:crosswikiunblock-header";a:2:{i:0;R:11331;i:1;R:799;}s:23:"8:crosswikiunblock-user";a:2:{i:0;R:11331;i:1;R:799;}s:25:"8:crosswikiunblock-reason";a:2:{i:0;R:11331;i:1;R:799;}s:25:"8:crosswikiunblock-submit";a:2:{i:0;R:11331;i:1;R:799;}s:26:"8:crosswikiunblock-success";a:2:{i:0;R:11331;i:1;R:799;}s:27:"8:crosswikiblock-nousername";a:2:{i:0;R:11331;i:1;R:799;}s:22:"8:crosswikiblock-local";a:2:{i:0;R:11331;i:1;R:799;}s:27:"8:crosswikiblock-dbnotfound";a:2:{i:0;R:11331;i:1;R:799;}s:23:"8:crosswikiblock-noname";a:2:{i:0;R:11331;i:1;R:799;}s:23:"8:crosswikiblock-nouser";a:2:{i:0;R:11331;i:1;R:799;}s:25:"8:crosswikiblock-noexpiry";a:2:{i:0;R:11331;i:1;R:799;}s:25:"8:crosswikiblock-noreason";a:2:{i:0;R:11331;i:1;R:799;}s:24:"8:crosswikiblock-notoken";a:2:{i:0;R:11331;i:1;R:799;}s:31:"8:crosswikiblock-alreadyblocked";a:2:{i:0;R:11331;i:1;R:799;}s:24:"8:crosswikiblock-noblock";a:2:{i:0;R:11331;i:1;R:799;}s:24:"8:crosswikiblock-success";a:2:{i:0;R:11331;i:1;R:799;}s:24:"8:crosswikiunblock-local";a:2:{i:0;R:11331;i:1;R:799;}s:22:"8:right-crosswikiblock";a:2:{i:0;R:11331;i:1;R:799;}s:26:"8:crowdauthentication-desc";a:2:{i:0;s:23:"ext-crowdauthentication";i:1;R:799;}s:10:"8:css-desc";a:2:{i:0;s:7:"ext-css";i:1;R:799;}s:23:"8:datatransclusion-desc";a:2:{i:0;s:20:"ext-datatransclusion";i:1;R:799;}s:32:"8:datatransclusion-test-wikitext";a:2:{i:0;R:11366;i:1;R:799;}s:33:"8:datatransclusion-test-evil-html";a:2:{i:0;R:11366;i:1;R:799;}s:30:"8:datatransclusion-test-nowiki";a:2:{i:0;R:11366;i:1;R:799;}s:33:"8:datatransclusion-missing-source";a:2:{i:0;R:11366;i:1;R:799;}s:33:"8:datatransclusion-unknown-source";a:2:{i:0;R:11366;i:1;R:799;}s:30:"8:datatransclusion-missing-key";a:2:{i:0;R:11366;i:1;R:799;}s:34:"8:datatransclusion-bad-argument-by";a:2:{i:0;R:11366;i:1;R:799;}s:39:"8:datatransclusion-missing-argument-key";a:2:{i:0;R:11366;i:1;R:799;}s:44:"8:datatransclusion-missing-argument-template";a:2:{i:0;R:11366;i:1;R:799;}s:35:"8:datatransclusion-record-not-found";a:2:{i:0;R:11366;i:1;R:799;}s:36:"8:datatransclusion-bad-template-name";a:2:{i:0;R:11366;i:1;R:799;}s:35:"8:datatransclusion-unknown-template";a:2:{i:0;R:11366;i:1;R:799;}s:19:"8:datatransfer-desc";a:2:{i:0;s:16:"ext-datatransfer";i:1;R:799;}s:9:"8:viewxml";a:2:{i:0;R:11380;i:1;R:799;}s:17:"8:dt_viewxml_docu";a:2:{i:0;R:11380;i:1;R:799;}s:23:"8:dt_viewxml_categories";a:2:{i:0;R:11380;i:1;R:799;}s:23:"8:dt_viewxml_namespaces";a:2:{i:0;R:11380;i:1;R:799;}s:29:"8:dt_viewxml_simplifiedformat";a:2:{i:0;R:11380;i:1;R:799;}s:18:"8:dt_xml_namespace";a:2:{i:0;R:11380;i:1;R:799;}s:14:"8:dt_xml_pages";a:2:{i:0;R:11380;i:1;R:799;}s:13:"8:dt_xml_page";a:2:{i:0;R:11380;i:1;R:799;}s:17:"8:dt_xml_template";a:2:{i:0;R:11380;i:1;R:799;}s:14:"8:dt_xml_field";a:2:{i:0;R:11380;i:1;R:799;}s:13:"8:dt_xml_name";a:2:{i:0;R:11380;i:1;R:799;}s:14:"8:dt_xml_title";a:2:{i:0;R:11380;i:1;R:799;}s:11:"8:dt_xml_id";a:2:{i:0;R:11380;i:1;R:799;}s:17:"8:dt_xml_freetext";a:2:{i:0;R:11380;i:1;R:799;}s:11:"8:importxml";a:2:{i:0;R:11380;i:1;R:799;}s:22:"8:dt_import_selectfile";a:2:{i:0;R:11380;i:1;R:799;}s:24:"8:dt_import_encodingtype";a:2:{i:0;R:11380;i:1;R:799;}s:23:"8:dt_import_forexisting";a:2:{i:0;R:11380;i:1;R:799;}s:29:"8:dt_import_overwriteexisting";a:2:{i:0;R:11380;i:1;R:799;}s:24:"8:dt_import_skipexisting";a:2:{i:0;R:11380;i:1;R:799;}s:28:"8:dt_import_appendtoexisting";a:2:{i:0;R:11380;i:1;R:799;}s:23:"8:dt_import_summarydesc";a:2:{i:0;R:11380;i:1;R:799;}s:23:"8:dt_import_editsummary";a:2:{i:0;R:11380;i:1;R:799;}s:21:"8:dt_import_importing";a:2:{i:0;R:11380;i:1;R:799;}s:19:"8:dt_import_success";a:2:{i:0;R:11380;i:1;R:799;}s:11:"8:importcsv";a:2:{i:0;R:11380;i:1;R:799;}s:24:"8:dt_importcsv_badheader";a:2:{i:0;R:11380;i:1;R:799;}s:26:"8:right-datatransferimport";a:2:{i:0;R:11380;i:1;R:799;}s:15:"8:datediff-desc";a:2:{i:0;s:12:"ext-datediff";i:1;R:799;}s:24:"8:delayeddefinition-desc";a:2:{i:0;s:21:"ext-delayeddefinition";i:1;R:799;}s:28:"8:delaydef-error-missing-def";a:2:{i:0;R:11412;i:1;R:799;}s:24:"8:delaydef-error-no-name";a:2:{i:0;R:11412;i:1;R:799;}s:22:"8:delaydef-error-redef";a:2:{i:0;R:11412;i:1;R:799;}s:13:"8:deletebatch";a:2:{i:0;s:15:"ext-deletebatch";i:1;R:799;}s:18:"8:deletebatch-desc";a:2:{i:0;R:11417;i:1;R:799;}s:18:"8:deletebatch-help";a:2:{i:0;R:11417;i:1;R:799;}s:21:"8:deletebatch-caption";a:2:{i:0;R:11417;i:1;R:799;}s:19:"8:deletebatch-title";a:2:{i:0;R:11417;i:1;R:799;}s:23:"8:deletebatch-link-back";a:2:{i:0;R:11417;i:1;R:799;}s:16:"8:deletebatch-as";a:2:{i:0;R:11417;i:1;R:799;}s:24:"8:deletebatch-both-modes";a:2:{i:0;R:11417;i:1;R:799;}s:16:"8:deletebatch-or";a:2:{i:0;R:11417;i:1;R:799;}s:20:"8:deletebatch-delete";a:2:{i:0;R:11417;i:1;R:799;}s:18:"8:deletebatch-page";a:2:{i:0;R:11417;i:1;R:799;}s:34:"8:deletebatch-processing-from-file";a:2:{i:0;R:11417;i:1;R:799;}s:34:"8:deletebatch-processing-from-form";a:2:{i:0;R:11417;i:1;R:799;}s:34:"8:deletebatch-omitting-nonexistant";a:2:{i:0;R:11417;i:1;R:799;}s:30:"8:deletebatch-omitting-invalid";a:2:{i:0;R:11417;i:1;R:799;}s:29:"8:deletebatch-file-bad-format";a:2:{i:0;R:11417;i:1;R:799;}s:26:"8:deletebatch-file-missing";a:2:{i:0;R:11417;i:1;R:799;}s:27:"8:deletebatch-select-script";a:2:{i:0;R:11417;i:1;R:799;}s:29:"8:deletebatch-select-yourself";a:2:{i:0;R:11417;i:1;R:799;}s:21:"8:deletebatch-no-page";a:2:{i:0;R:11417;i:1;R:799;}s:19:"8:right-deletebatch";a:2:{i:0;R:11417;i:1;R:799;}s:18:"8:deletequeue-desc";a:2:{i:0;s:15:"ext-deletequeue";i:1;R:799;}s:27:"8:deletequeue-action-queued";a:2:{i:0;R:11439;i:1;R:799;}s:20:"8:deletequeue-action";a:2:{i:0;R:11439;i:1;R:799;}s:26:"8:deletequeue-action-title";a:2:{i:0;R:11439;i:1;R:799;}s:25:"8:deletequeue-action-text";a:2:{i:0;R:11439;i:1;R:799;}s:32:"8:deletequeue-action-text-queued";a:2:{i:0;R:11439;i:1;R:799;}s:32:"8:deletequeue-permissions-noedit";a:2:{i:0;R:11439;i:1;R:799;}s:29:"8:deletequeue-generic-reasons";a:2:{i:0;R:11439;i:1;R:799;}s:31:"8:deletequeue-nom-alreadyqueued";a:2:{i:0;R:11439;i:1;R:799;}s:26:"8:deletequeue-speedy-title";a:2:{i:0;R:11439;i:1;R:799;}s:25:"8:deletequeue-speedy-text";a:2:{i:0;R:11439;i:1;R:799;}s:28:"8:deletequeue-speedy-reasons";a:2:{i:0;R:11439;i:1;R:799;}s:24:"8:deletequeue-prod-title";a:2:{i:0;R:11439;i:1;R:799;}s:23:"8:deletequeue-prod-text";a:2:{i:0;R:11439;i:1;R:799;}s:26:"8:deletequeue-prod-reasons";a:2:{i:0;R:11439;i:1;R:799;}s:27:"8:deletequeue-delnom-reason";a:2:{i:0;R:11439;i:1;R:799;}s:32:"8:deletequeue-delnom-otherreason";a:2:{i:0;R:11439;i:1;R:799;}s:26:"8:deletequeue-delnom-extra";a:2:{i:0;R:11439;i:1;R:799;}s:27:"8:deletequeue-delnom-submit";a:2:{i:0;R:11439;i:1;R:799;}s:26:"8:deletequeue-log-nominate";a:2:{i:0;R:11439;i:1;R:799;}s:26:"8:deletequeue-log-rmspeedy";a:2:{i:0;R:11439;i:1;R:799;}s:25:"8:deletequeue-log-requeue";a:2:{i:0;R:11439;i:1;R:799;}s:25:"8:deletequeue-log-dequeue";a:2:{i:0;R:11439;i:1;R:799;}s:23:"8:right-speedy-nominate";a:2:{i:0;R:11439;i:1;R:799;}s:21:"8:right-speedy-review";a:2:{i:0;R:11439;i:1;R:799;}s:21:"8:right-prod-nominate";a:2:{i:0;R:11439;i:1;R:799;}s:19:"8:right-prod-review";a:2:{i:0;R:11439;i:1;R:799;}s:30:"8:right-deletediscuss-nominate";a:2:{i:0;R:11439;i:1;R:799;}s:28:"8:right-deletediscuss-review";a:2:{i:0;R:11439;i:1;R:799;}s:24:"8:right-deletequeue-vote";a:2:{i:0;R:11439;i:1;R:799;}s:26:"8:deletequeue-queue-speedy";a:2:{i:0;R:11439;i:1;R:799;}s:24:"8:deletequeue-queue-prod";a:2:{i:0;R:11439;i:1;R:799;}s:33:"8:deletequeue-queue-deletediscuss";a:2:{i:0;R:11439;i:1;R:799;}s:25:"8:deletequeue-page-speedy";a:2:{i:0;R:11439;i:1;R:799;}s:23:"8:deletequeue-page-prod";a:2:{i:0;R:11439;i:1;R:799;}s:32:"8:deletequeue-page-deletediscuss";a:2:{i:0;R:11439;i:1;R:799;}s:23:"8:deletequeue-notqueued";a:2:{i:0;R:11439;i:1;R:799;}s:27:"8:deletequeue-review-action";a:2:{i:0;R:11439;i:1;R:799;}s:27:"8:deletequeue-review-delete";a:2:{i:0;R:11439;i:1;R:799;}s:27:"8:deletequeue-review-change";a:2:{i:0;R:11439;i:1;R:799;}s:28:"8:deletequeue-review-requeue";a:2:{i:0;R:11439;i:1;R:799;}s:28:"8:deletequeue-review-dequeue";a:2:{i:0;R:11439;i:1;R:799;}s:27:"8:deletequeue-review-reason";a:2:{i:0;R:11439;i:1;R:799;}s:30:"8:deletequeue-review-newreason";a:2:{i:0;R:11439;i:1;R:799;}s:29:"8:deletequeue-review-newextra";a:2:{i:0;R:11439;i:1;R:799;}s:27:"8:deletequeue-review-submit";a:2:{i:0;R:11439;i:1;R:799;}s:29:"8:deletequeue-review-original";a:2:{i:0;R:11439;i:1;R:799;}s:37:"8:deletequeue-actiondisabled-involved";a:2:{i:0;R:11439;i:1;R:799;}s:39:"8:deletequeue-actiondisabled-notexpired";a:2:{i:0;R:11439;i:1;R:799;}s:30:"8:deletequeue-review-badaction";a:2:{i:0;R:11439;i:1;R:799;}s:33:"8:deletequeue-review-actiondenied";a:2:{i:0;R:11439;i:1;R:799;}s:31:"8:deletequeue-review-objections";a:2:{i:0;R:11439;i:1;R:799;}s:30:"8:deletequeue-reviewspeedy-tab";a:2:{i:0;R:11439;i:1;R:799;}s:32:"8:deletequeue-reviewspeedy-title";a:2:{i:0;R:11439;i:1;R:799;}s:31:"8:deletequeue-reviewspeedy-text";a:2:{i:0;R:11439;i:1;R:799;}s:28:"8:deletequeue-reviewprod-tab";a:2:{i:0;R:11439;i:1;R:799;}s:30:"8:deletequeue-reviewprod-title";a:2:{i:0;R:11439;i:1;R:799;}s:29:"8:deletequeue-reviewprod-text";a:2:{i:0;R:11439;i:1;R:799;}s:37:"8:deletequeue-reviewdeletediscuss-tab";a:2:{i:0;R:11439;i:1;R:799;}s:39:"8:deletequeue-reviewdeletediscuss-title";a:2:{i:0;R:11439;i:1;R:799;}s:38:"8:deletequeue-reviewdeletediscuss-text";a:2:{i:0;R:11439;i:1;R:799;}s:28:"8:deletequeue-review-success";a:2:{i:0;R:11439;i:1;R:799;}s:34:"8:deletequeue-review-success-title";a:2:{i:0;R:11439;i:1;R:799;}s:42:"8:deletequeue-deletediscuss-discussionpage";a:2:{i:0;R:11439;i:1;R:799;}s:35:"8:deletequeue-discusscreate-summary";a:2:{i:0;R:11439;i:1;R:799;}s:32:"8:deletequeue-discusscreate-text";a:2:{i:0;R:11439;i:1;R:799;}s:28:"8:deletequeue-role-nominator";a:2:{i:0;R:11439;i:1;R:799;}s:31:"8:deletequeue-role-vote-endorse";a:2:{i:0;R:11439;i:1;R:799;}s:30:"8:deletequeue-role-vote-object";a:2:{i:0;R:11439;i:1;R:799;}s:22:"8:deletequeue-vote-tab";a:2:{i:0;R:11439;i:1;R:799;}s:24:"8:deletequeue-vote-title";a:2:{i:0;R:11439;i:1;R:799;}s:23:"8:deletequeue-vote-text";a:2:{i:0;R:11439;i:1;R:799;}s:25:"8:deletequeue-vote-legend";a:2:{i:0;R:11439;i:1;R:799;}s:25:"8:deletequeue-vote-action";a:2:{i:0;R:11439;i:1;R:799;}s:26:"8:deletequeue-vote-endorse";a:2:{i:0;R:11439;i:1;R:799;}s:25:"8:deletequeue-vote-object";a:2:{i:0;R:11439;i:1;R:799;}s:25:"8:deletequeue-vote-reason";a:2:{i:0;R:11439;i:1;R:799;}s:25:"8:deletequeue-vote-submit";a:2:{i:0;R:11439;i:1;R:799;}s:34:"8:deletequeue-vote-success-endorse";a:2:{i:0;R:11439;i:1;R:799;}s:33:"8:deletequeue-vote-success-object";a:2:{i:0;R:11439;i:1;R:799;}s:27:"8:deletequeue-vote-requeued";a:2:{i:0;R:11439;i:1;R:799;}s:23:"8:deletequeue-showvotes";a:2:{i:0;R:11439;i:1;R:799;}s:28:"8:deletequeue-showvotes-text";a:2:{i:0;R:11439;i:1;R:799;}s:40:"8:deletequeue-showvotes-restrict-endorse";a:2:{i:0;R:11439;i:1;R:799;}s:39:"8:deletequeue-showvotes-restrict-object";a:2:{i:0;R:11439;i:1;R:799;}s:37:"8:deletequeue-showvotes-restrict-none";a:2:{i:0;R:11439;i:1;R:799;}s:36:"8:deletequeue-showvotes-vote-endorse";a:2:{i:0;R:11439;i:1;R:799;}s:35:"8:deletequeue-showvotes-vote-object";a:2:{i:0;R:11439;i:1;R:799;}s:43:"8:deletequeue-showvotes-showingonly-endorse";a:2:{i:0;R:11439;i:1;R:799;}s:42:"8:deletequeue-showvotes-showingonly-object";a:2:{i:0;R:11439;i:1;R:799;}s:28:"8:deletequeue-showvotes-none";a:2:{i:0;R:11439;i:1;R:799;}s:36:"8:deletequeue-showvotes-none-endorse";a:2:{i:0;R:11439;i:1;R:799;}s:35:"8:deletequeue-showvotes-none-object";a:2:{i:0;R:11439;i:1;R:799;}s:13:"8:deletequeue";a:2:{i:0;R:11439;i:1;R:799;}s:23:"8:deletequeue-list-text";a:2:{i:0;R:11439;i:1;R:799;}s:32:"8:deletequeue-list-search-legend";a:2:{i:0;R:11439;i:1;R:799;}s:24:"8:deletequeue-list-queue";a:2:{i:0;R:11439;i:1;R:799;}s:25:"8:deletequeue-list-status";a:2:{i:0;R:11439;i:1;R:799;}s:26:"8:deletequeue-list-expired";a:2:{i:0;R:11439;i:1;R:799;}s:25:"8:deletequeue-list-search";a:2:{i:0;R:11439;i:1;R:799;}s:27:"8:deletequeue-list-anyqueue";a:2:{i:0;R:11439;i:1;R:799;}s:24:"8:deletequeue-list-votes";a:2:{i:0;R:11439;i:1;R:799;}s:28:"8:deletequeue-list-votecount";a:2:{i:0;R:11439;i:1;R:799;}s:30:"8:deletequeue-list-header-page";a:2:{i:0;R:11439;i:1;R:799;}s:31:"8:deletequeue-list-header-queue";a:2:{i:0;R:11439;i:1;R:799;}s:31:"8:deletequeue-list-header-votes";a:2:{i:0;R:11439;i:1;R:799;}s:32:"8:deletequeue-list-header-expiry";a:2:{i:0;R:11439;i:1;R:799;}s:37:"8:deletequeue-list-header-discusspage";a:2:{i:0;R:11439;i:1;R:799;}s:24:"8:deletequeue-case-intro";a:2:{i:0;R:11439;i:1;R:799;}s:32:"8:deletequeue-list-header-reason";a:2:{i:0;R:11439;i:1;R:799;}s:24:"8:deletequeue-case-votes";a:2:{i:0;R:11439;i:1;R:799;}s:24:"8:deletequeue-case-title";a:2:{i:0;R:11439;i:1;R:799;}s:26:"8:deletequeue-case-details";a:2:{i:0;R:11439;i:1;R:799;}s:23:"8:deletequeue-case-page";a:2:{i:0;R:11439;i:1;R:799;}s:25:"8:deletequeue-case-reason";a:2:{i:0;R:11439;i:1;R:799;}s:25:"8:deletequeue-case-expiry";a:2:{i:0;R:11439;i:1;R:799;}s:31:"8:deletequeue-case-needs-review";a:2:{i:0;R:11439;i:1;R:799;}s:19:"8:description2-desc";a:2:{i:0;s:16:"ext-description2";i:1;R:799;}s:22:"8:globalcollectgateway";a:2:{i:0;s:10:"ext-di-gcg";i:1;R:799;}s:28:"8:globalcollect_gateway-desc";a:2:{i:0;R:11559;i:1;R:799;}s:37:"8:globalcollect_gateway-response-9130";a:2:{i:0;R:11559;i:1;R:799;}s:37:"8:globalcollect_gateway-response-9140";a:2:{i:0;R:11559;i:1;R:799;}s:37:"8:globalcollect_gateway-response-9150";a:2:{i:0;R:11559;i:1;R:799;}s:39:"8:globalcollect_gateway-response-400530";a:2:{i:0;R:11559;i:1;R:799;}s:39:"8:globalcollect_gateway-response-430306";a:2:{i:0;R:11559;i:1;R:799;}s:39:"8:globalcollect_gateway-response-430330";a:2:{i:0;R:11559;i:1;R:799;}s:39:"8:globalcollect_gateway-response-430421";a:2:{i:0;R:11559;i:1;R:799;}s:39:"8:globalcollect_gateway-response-430360";a:2:{i:0;R:11559;i:1;R:799;}s:39:"8:globalcollect_gateway-response-430285";a:2:{i:0;R:11559;i:1;R:799;}s:41:"8:globalcollect_gateway-response-21000150";a:2:{i:0;R:11559;i:1;R:799;}s:41:"8:globalcollect_gateway-response-21000155";a:2:{i:0;R:11559;i:1;R:799;}s:41:"8:globalcollect_gateway-response-21000160";a:2:{i:0;R:11559;i:1;R:799;}s:40:"8:globalcollect_gateway-response-default";a:2:{i:0;R:11559;i:1;R:799;}s:17:"8:didyoumean-desc";a:2:{i:0;s:14:"ext-didyoumean";i:1;R:799;}s:26:"8:discussionthreading-desc";a:2:{i:0;s:23:"ext-discussionthreading";i:1;R:799;}s:34:"8:discussionthreading-replysection";a:2:{i:0;R:11577;i:1;R:799;}s:38:"8:discussionthreading-replysectionhint";a:2:{i:0;R:11577;i:1;R:799;}s:38:"8:discussionthreading-threadnewsection";a:2:{i:0;R:11577;i:1;R:799;}s:42:"8:discussionthreading-threadnewsectionhint";a:2:{i:0;R:11577;i:1;R:799;}s:15:"8:dplforum-desc";a:2:{i:0;s:12:"ext-dplforum";i:1;R:799;}s:13:"8:dplforum-by";a:2:{i:0;R:11583;i:1;R:799;}s:17:"8:dplforum-edited";a:2:{i:0;R:11583;i:1;R:799;}s:16:"8:dplforum-never";a:2:{i:0;R:11583;i:1;R:799;}s:17:"8:dplforum-toofew";a:2:{i:0;R:11583;i:1;R:799;}s:18:"8:dplforum-toomany";a:2:{i:0;R:11583;i:1;R:799;}s:8:"8:drafts";a:2:{i:0;s:10:"ext-drafts";i:1;R:799;}s:13:"8:drafts-desc";a:2:{i:0;R:11590;i:1;R:799;}s:13:"8:drafts-view";a:2:{i:0;R:11590;i:1;R:799;}s:21:"8:drafts-view-summary";a:2:{i:0;R:11590;i:1;R:799;}s:21:"8:drafts-view-article";a:2:{i:0;R:11590;i:1;R:799;}s:22:"8:drafts-view-existing";a:2:{i:0;R:11590;i:1;R:799;}s:19:"8:drafts-view-saved";a:2:{i:0;R:11590;i:1;R:799;}s:21:"8:drafts-view-discard";a:2:{i:0;R:11590;i:1;R:799;}s:23:"8:drafts-view-nonesaved";a:2:{i:0;R:11590;i:1;R:799;}s:20:"8:drafts-view-notice";a:2:{i:0;R:11590;i:1;R:799;}s:25:"8:drafts-view-notice-link";a:2:{i:0;R:11590;i:1;R:799;}s:18:"8:drafts-view-warn";a:2:{i:0;R:11590;i:1;R:799;}s:13:"8:drafts-save";a:2:{i:0;R:11590;i:1;R:799;}s:18:"8:drafts-save-save";a:2:{i:0;R:11590;i:1;R:799;}s:19:"8:drafts-save-saved";a:2:{i:0;R:11590;i:1;R:799;}s:20:"8:drafts-save-saving";a:2:{i:0;R:11590;i:1;R:799;}s:19:"8:drafts-save-error";a:2:{i:0;R:11590;i:1;R:799;}s:21:"8:tooltip-drafts-save";a:2:{i:0;R:11590;i:1;R:799;}s:23:"8:accesskey-drafts-save";a:2:{i:0;R:11590;i:1;R:799;}s:20:"8:dublincorerdf-desc";a:2:{i:0;s:17:"ext-dublincorerdf";i:1;R:799;}s:12:"8:duplicator";a:2:{i:0;s:14:"ext-duplicator";i:1;R:799;}s:17:"8:duplicator-desc";a:2:{i:0;R:11612;i:1;R:799;}s:20:"8:duplicator-toolbox";a:2:{i:0;R:11612;i:1;R:799;}s:19:"8:duplicator-header";a:2:{i:0;R:11612;i:1;R:799;}s:20:"8:duplicator-options";a:2:{i:0;R:11612;i:1;R:799;}s:19:"8:duplicator-source";a:2:{i:0;R:11612;i:1;R:799;}s:17:"8:duplicator-dest";a:2:{i:0;R:11612;i:1;R:799;}s:19:"8:duplicator-dotalk";a:2:{i:0;R:11612;i:1;R:799;}s:19:"8:duplicator-submit";a:2:{i:0;R:11612;i:1;R:799;}s:20:"8:duplicator-summary";a:2:{i:0;R:11612;i:1;R:799;}s:20:"8:duplicator-success";a:2:{i:0;R:11612;i:1;R:799;}s:30:"8:duplicator-success-revisions";a:2:{i:0;R:11612;i:1;R:799;}s:31:"8:duplicator-success-talkcopied";a:2:{i:0;R:11612;i:1;R:799;}s:34:"8:duplicator-success-talknotcopied";a:2:{i:0;R:11612;i:1;R:799;}s:19:"8:duplicator-failed";a:2:{i:0;R:11612;i:1;R:799;}s:27:"8:duplicator-source-invalid";a:2:{i:0;R:11612;i:1;R:799;}s:28:"8:duplicator-source-notexist";a:2:{i:0;R:11612;i:1;R:799;}s:25:"8:duplicator-dest-invalid";a:2:{i:0;R:11612;i:1;R:799;}s:24:"8:duplicator-dest-exists";a:2:{i:0;R:11612;i:1;R:799;}s:29:"8:duplicator-toomanyrevisions";a:2:{i:0;R:11612;i:1;R:799;}s:17:"8:right-duplicate";a:2:{i:0;R:11612;i:1;R:799;}s:21:"8:dynamicsidebar-desc";a:2:{i:0;s:18:"ext-dynamicsidebar";i:1;R:799;}s:11:"8:editcount";a:2:{i:0;s:13:"ext-editcount";i:1;R:799;}s:16:"8:editcount-desc";a:2:{i:0;R:11636;i:1;R:799;}s:20:"8:editcount_username";a:2:{i:0;R:11636;i:1;R:799;}s:18:"8:editcount_submit";a:2:{i:0;R:11636;i:1;R:799;}s:17:"8:editcount_total";a:2:{i:0;R:11636;i:1;R:799;}s:19:"8:editmessages-desc";a:2:{i:0;s:16:"ext-editmessages";i:1;R:799;}s:14:"8:editmessages";a:2:{i:0;R:11642;i:1;R:799;}s:16:"8:editmsg-target";a:2:{i:0;R:11642;i:1;R:799;}s:16:"8:editmsg-search";a:2:{i:0;R:11642;i:1;R:799;}s:19:"8:editmsg-show-list";a:2:{i:0;R:11642;i:1;R:799;}s:19:"8:editmsg-get-patch";a:2:{i:0;R:11642;i:1;R:799;}s:20:"8:editmsg-new-search";a:2:{i:0;R:11642;i:1;R:799;}s:24:"8:editmsg-warning-parse1";a:2:{i:0;R:11642;i:1;R:799;}s:24:"8:editmsg-warning-parse2";a:2:{i:0;R:11642;i:1;R:799;}s:24:"8:editmsg-warning-parse3";a:2:{i:0;R:11642;i:1;R:799;}s:22:"8:editmsg-warning-file";a:2:{i:0;R:11642;i:1;R:799;}s:26:"8:editmsg-warning-mismatch";a:2:{i:0;R:11642;i:1;R:799;}s:21:"8:editmsg-apply-patch";a:2:{i:0;R:11642;i:1;R:799;}s:18:"8:editmsg-no-patch";a:2:{i:0;R:11642;i:1;R:799;}s:22:"8:editmsg-patch-failed";a:2:{i:0;R:11642;i:1;R:799;}s:23:"8:editmsg-patch-success";a:2:{i:0;R:11642;i:1;R:799;}s:14:"8:editown-desc";a:2:{i:0;s:11:"ext-editown";i:1;R:799;}s:29:"8:editsectionclearerlink-desc";a:2:{i:0;s:26:"ext-editsectionclearerlink";i:1;R:799;}s:28:"8:editsectionhilitelink-desc";a:2:{i:0;s:25:"ext-editsectionhilitelink";i:1;R:799;}s:18:"8:editsimilar-desc";a:2:{i:0;s:15:"ext-editsimilar";i:1;R:799;}s:20:"8:editsimilar-thanks";a:2:{i:0;R:11665;i:1;R:799;}s:31:"8:editsimilar-thanks-notsimilar";a:2:{i:0;R:11665;i:1;R:799;}s:22:"8:editsimilar-thankyou";a:2:{i:0;R:11665;i:1;R:799;}s:26:"8:editsimilar-link-disable";a:2:{i:0;R:11665;i:1;R:799;}s:18:"8:tog-edit-similar";a:2:{i:0;R:11665;i:1;R:799;}s:19:"8:editsubpages-desc";a:2:{i:0;s:16:"ext-editsubpages";i:1;R:799;}s:15:"8:unlockedpages";a:2:{i:0;R:11672;i:1;R:799;}s:15:"8:edituser-desc";a:2:{i:0;s:12:"ext-edituser";i:1;R:799;}s:10:"8:edituser";a:2:{i:0;R:11675;i:1;R:799;}s:19:"8:edituser-username";a:2:{i:0;R:11675;i:1;R:799;}s:19:"8:edituser-dosearch";a:2:{i:0;R:11675;i:1;R:799;}s:17:"8:edituser-nouser";a:2:{i:0;R:11675;i:1;R:799;}s:17:"8:edituser-exempt";a:2:{i:0;R:11675;i:1;R:799;}s:16:"8:right-edituser";a:2:{i:0;R:11675;i:1;R:799;}s:23:"8:right-edituser-exempt";a:2:{i:0;R:11675;i:1;R:799;}s:18:"8:elm-easyref-desc";a:2:{i:0;s:14:"ext-elmeasyref";i:1;R:799;}s:17:"8:elm-easyref-ref";a:2:{i:0;R:11684;i:1;R:799;}s:19:"8:elm-easyref-close";a:2:{i:0;R:11684;i:1;R:799;}s:24:"8:emailaddressimage-desc";a:2:{i:0;s:21:"ext-emailaddressimage";i:1;R:799;}s:12:"8:e-mailpage";a:2:{i:0;s:13:"ext-emailpage";i:1;R:799;}s:9:"8:ea-desc";a:2:{i:0;R:11690;i:1;R:799;}s:12:"8:ea-heading";a:2:{i:0;R:11690;i:1;R:799;}s:15:"8:ea-group-info";a:2:{i:0;R:11690;i:1;R:799;}s:13:"8:ea-pagesend";a:2:{i:0;R:11690;i:1;R:799;}s:11:"8:ea-nopage";a:2:{i:0;R:11690;i:1;R:799;}s:17:"8:ea-norecipients";a:2:{i:0;R:11690;i:1;R:799;}s:19:"8:ea-listrecipients";a:2:{i:0;R:11690;i:1;R:799;}s:10:"8:ea-error";a:2:{i:0;R:11690;i:1;R:799;}s:11:"8:ea-denied";a:2:{i:0;R:11690;i:1;R:799;}s:9:"8:ea-sent";a:2:{i:0;R:11690;i:1;R:799;}s:12:"8:ea-compose";a:2:{i:0;R:11690;i:1;R:799;}s:9:"8:ea-show";a:2:{i:0;R:11690;i:1;R:799;}s:9:"8:ea-from";a:2:{i:0;R:11690;i:1;R:799;}s:7:"8:ea-to";a:2:{i:0;R:11690;i:1;R:799;}s:12:"8:ea-to-info";a:2:{i:0;R:11690;i:1;R:799;}s:7:"8:ea-cc";a:2:{i:0;R:11690;i:1;R:799;}s:9:"8:ea-send";a:2:{i:0;R:11690;i:1;R:799;}s:12:"8:ea-subject";a:2:{i:0;R:11690;i:1;R:799;}s:12:"8:ea-message";a:2:{i:0;R:11690;i:1;R:799;}s:17:"8:ea-message-info";a:2:{i:0;R:11690;i:1;R:799;}s:10:"8:ea-style";a:2:{i:0;R:11690;i:1;R:799;}s:14:"8:ea-selectcss";a:2:{i:0;R:11690;i:1;R:799;}s:9:"8:ea-data";a:2:{i:0;R:11690;i:1;R:799;}s:17:"8:ea-selectrecord";a:2:{i:0;R:11690;i:1;R:799;}s:13:"8:ea-allusers";a:2:{i:0;R:11690;i:1;R:799;}s:17:"8:emailusers-desc";a:2:{i:0;s:14:"ext-emailusers";i:1;R:799;}s:22:"8:right-sendbatchemail";a:2:{i:0;R:11717;i:1;R:799;}s:12:"8:emailusers";a:2:{i:0;R:11717;i:1;R:799;}s:27:"8:emailusers-target-reverse";a:2:{i:0;R:11717;i:1;R:799;}s:24:"8:emailusers-norecipient";a:2:{i:0;R:11717;i:1;R:799;}s:32:"8:emailusers-norecipientselected";a:2:{i:0;R:11717;i:1;R:799;}s:38:"8:emailusers-toomanyrecipientsselected";a:2:{i:0;R:11717;i:1;R:799;}s:18:"8:emergencydesysop";a:2:{i:0;s:20:"ext-emergencydesysop";i:1;R:799;}s:23:"8:emergencydesysop-desc";a:2:{i:0;R:11725;i:1;R:799;}s:24:"8:emergencydesysop-title";a:2:{i:0;R:11725;i:1;R:799;}s:29:"8:emergencydesysop-otheradmin";a:2:{i:0;R:11725;i:1;R:799;}s:25:"8:emergencydesysop-reason";a:2:{i:0;R:11725;i:1;R:799;}s:25:"8:emergencydesysop-submit";a:2:{i:0;R:11725;i:1;R:799;}s:29:"8:emergencydesysop-incomplete";a:2:{i:0;R:11725;i:1;R:799;}s:28:"8:emergencydesysop-notasysop";a:2:{i:0;R:11725;i:1;R:799;}s:27:"8:emergencydesysop-nogroups";a:2:{i:0;R:11725;i:1;R:799;}s:23:"8:emergencydesysop-done";a:2:{i:0;R:11725;i:1;R:799;}s:32:"8:emergencydesysop-invalidtarget";a:2:{i:0;R:11725;i:1;R:799;}s:26:"8:emergencydesysop-blocked";a:2:{i:0;R:11725;i:1;R:799;}s:26:"8:emergencydesysop-noright";a:2:{i:0;R:11725;i:1;R:799;}s:24:"8:right-emergencydesysop";a:2:{i:0;R:11725;i:1;R:799;}s:19:"8:errorhandler-desc";a:2:{i:0;s:16:"ext-errorhandler";i:1;R:799;}s:21:"8:errorhandler-errors";a:2:{i:0;R:11740;i:1;R:799;}s:26:"8:errorhandler-error-fatal";a:2:{i:0;R:11740;i:1;R:799;}s:28:"8:errorhandler-error-warning";a:2:{i:0;R:11740;i:1;R:799;}s:26:"8:errorhandler-error-parse";a:2:{i:0;R:11740;i:1;R:799;}s:27:"8:errorhandler-error-notice";a:2:{i:0;R:11740;i:1;R:799;}s:31:"8:errorhandler-error-deprecated";a:2:{i:0;R:11740;i:1;R:799;}s:31:"8:errorhandler-error-core-error";a:2:{i:0;R:11740;i:1;R:799;}s:33:"8:errorhandler-error-core-warning";a:2:{i:0;R:11740;i:1;R:799;}s:34:"8:errorhandler-error-compile-error";a:2:{i:0;R:11740;i:1;R:799;}s:36:"8:errorhandler-error-compile-warning";a:2:{i:0;R:11740;i:1;R:799;}s:31:"8:errorhandler-error-user-error";a:2:{i:0;R:11740;i:1;R:799;}s:33:"8:errorhandler-error-user-warning";a:2:{i:0;R:11740;i:1;R:799;}s:32:"8:errorhandler-error-user-notice";a:2:{i:0;R:11740;i:1;R:799;}s:36:"8:errorhandler-error-user-deprecated";a:2:{i:0;R:11740;i:1;R:799;}s:27:"8:errorhandler-error-strict";a:2:{i:0;R:11740;i:1;R:799;}s:32:"8:errorhandler-error-recoverable";a:2:{i:0;R:11740;i:1;R:799;}s:23:"8:errorhandler-msg-text";a:2:{i:0;R:11740;i:1;R:799;}s:23:"8:errorhandler-msg-html";a:2:{i:0;R:11740;i:1;R:799;}s:20:"8:errorhandler-trace";a:2:{i:0;R:11740;i:1;R:799;}s:25:"8:errorhandler-trace-line";a:2:{i:0;R:11740;i:1;R:799;}s:34:"8:errorhandler-trace-line-internal";a:2:{i:0;R:11740;i:1;R:799;}s:19:"8:etherpadlite-desc";a:2:{i:0;s:16:"ext-etherpadlite";i:1;R:799;}s:32:"8:etherpadlite-tracking-category";a:2:{i:0;R:11763;i:1;R:799;}s:30:"8:etherpadlite-invalid-pad-url";a:2:{i:0;R:11763;i:1;R:799;}s:37:"8:etherpadlite-url-is-not-whitelisted";a:2:{i:0;R:11763;i:1;R:799;}s:30:"8:etherpadlite-empty-whitelist";a:2:{i:0;R:11763;i:1;R:799;}s:38:"8:etherpadlite-pad-used-more-than-once";a:2:{i:0;R:11763;i:1;R:799;}s:9:"8:getdata";a:2:{i:0;s:16:"ext-externaldata";i:1;R:799;}s:19:"8:externaldata-desc";a:2:{i:0;R:11770;i:1;R:799;}s:33:"8:externaldata-web-invalid-format";a:2:{i:0;R:11770;i:1;R:799;}s:37:"8:externaldata-ldap-unable-to-connect";a:2:{i:0;R:11770;i:1;R:799;}s:24:"8:externaldata-xml-error";a:2:{i:0;R:11770;i:1;R:799;}s:40:"8:externaldata-db-incomplete-information";a:2:{i:0;R:11770;i:1;R:799;}s:35:"8:externaldata-db-could-not-get-url";a:2:{i:0;R:11770;i:1;R:799;}s:30:"8:externaldata-db-unknown-type";a:2:{i:0;R:11770;i:1;R:799;}s:35:"8:externaldata-db-could-not-connect";a:2:{i:0;R:11770;i:1;R:799;}s:34:"8:externaldata-db-no-return-values";a:2:{i:0;R:11770;i:1;R:799;}s:31:"8:externaldata-db-invalid-query";a:2:{i:0;R:11770;i:1;R:799;}s:36:"8:externaldata-db-option-unsupported";a:2:{i:0;R:11770;i:1;R:799;}s:15:"8:externalpages";a:2:{i:0;s:17:"ext-externalpages";i:1;R:799;}s:20:"8:externalpages-desc";a:2:{i:0;R:11783;i:1;R:799;}s:24:"8:externalpages-bad-page";a:2:{i:0;R:11783;i:1;R:799;}s:23:"8:externalpages-no-page";a:2:{i:0;R:11783;i:1;R:799;}s:8:"8:farmer";a:2:{i:0;s:10:"ext-farmer";i:1;R:799;}s:13:"8:farmer-desc";a:2:{i:0;R:11788;i:1;R:799;}s:23:"8:farmercantcreatewikis";a:2:{i:0;R:11788;i:1;R:799;}s:17:"8:farmercreateurl";a:2:{i:0;R:11788;i:1;R:799;}s:22:"8:farmercreatesitename";a:2:{i:0;R:11788;i:1;R:799;}s:22:"8:farmercreatenextstep";a:2:{i:0;R:11788;i:1;R:799;}s:23:"8:farmernewwikimainpage";a:2:{i:0;R:11788;i:1;R:799;}s:15:"8:farmerwikiurl";a:2:{i:0;R:11788;i:1;R:799;}s:20:"8:farmerinterwikiurl";a:2:{i:0;R:11788;i:1;R:799;}s:14:"8:farmer-about";a:2:{i:0;R:11788;i:1;R:799;}s:19:"8:farmer-about-text";a:2:{i:0;R:11788;i:1;R:799;}s:18:"8:farmer-list-wiki";a:2:{i:0;R:11788;i:1;R:799;}s:23:"8:farmer-list-wiki-text";a:2:{i:0;R:11788;i:1;R:799;}s:19:"8:farmer-createwiki";a:2:{i:0;R:11788;i:1;R:799;}s:24:"8:farmer-createwiki-text";a:2:{i:0;R:11788;i:1;R:799;}s:23:"8:farmer-administration";a:2:{i:0;R:11788;i:1;R:799;}s:33:"8:farmer-administration-extension";a:2:{i:0;R:11788;i:1;R:799;}s:38:"8:farmer-administration-extension-text";a:2:{i:0;R:11788;i:1;R:799;}s:34:"8:farmer-admimistration-listupdate";a:2:{i:0;R:11788;i:1;R:799;}s:39:"8:farmer-admimistration-listupdate-text";a:2:{i:0;R:11788;i:1;R:799;}s:30:"8:farmer-administration-delete";a:2:{i:0;R:11788;i:1;R:799;}s:35:"8:farmer-administration-delete-text";a:2:{i:0;R:11788;i:1;R:799;}s:28:"8:farmer-administer-thiswiki";a:2:{i:0;R:11788;i:1;R:799;}s:33:"8:farmer-administer-thiswiki-text";a:2:{i:0;R:11788;i:1;R:799;}s:21:"8:farmer-notavailable";a:2:{i:0;R:11788;i:1;R:799;}s:26:"8:farmer-notavailable-text";a:2:{i:0;R:11788;i:1;R:799;}s:20:"8:farmer-wikicreated";a:2:{i:0;R:11788;i:1;R:799;}s:25:"8:farmer-wikicreated-text";a:2:{i:0;R:11788;i:1;R:799;}s:16:"8:farmer-default";a:2:{i:0;R:11788;i:1;R:799;}s:19:"8:farmer-wikiexists";a:2:{i:0;R:11788;i:1;R:799;}s:24:"8:farmer-wikiexists-text";a:2:{i:0;R:11788;i:1;R:799;}s:23:"8:farmer-confirmsetting";a:2:{i:0;R:11788;i:1;R:799;}s:28:"8:farmer-confirmsetting-name";a:2:{i:0;R:11788;i:1;R:799;}s:29:"8:farmer-confirmsetting-title";a:2:{i:0;R:11788;i:1;R:799;}s:35:"8:farmer-confirmsetting-description";a:2:{i:0;R:11788;i:1;R:799;}s:30:"8:farmer-confirmsetting-reason";a:2:{i:0;R:11788;i:1;R:799;}s:20:"8:farmer-description";a:2:{i:0;R:11788;i:1;R:799;}s:28:"8:farmer-confirmsetting-text";a:2:{i:0;R:11788;i:1;R:799;}s:23:"8:farmer-button-confirm";a:2:{i:0;R:11788;i:1;R:799;}s:22:"8:farmer-button-submit";a:2:{i:0;R:11788;i:1;R:799;}s:30:"8:farmer-createwiki-form-title";a:2:{i:0;R:11788;i:1;R:799;}s:30:"8:farmer-createwiki-form-text1";a:2:{i:0;R:11788;i:1;R:799;}s:29:"8:farmer-createwiki-form-help";a:2:{i:0;R:11788;i:1;R:799;}s:30:"8:farmer-createwiki-form-text2";a:2:{i:0;R:11788;i:1;R:799;}s:30:"8:farmer-createwiki-form-text3";a:2:{i:0;R:11788;i:1;R:799;}s:30:"8:farmer-createwiki-form-text4";a:2:{i:0;R:11788;i:1;R:799;}s:24:"8:farmer-createwiki-user";a:2:{i:0;R:11788;i:1;R:799;}s:24:"8:farmer-createwiki-name";a:2:{i:0;R:11788;i:1;R:799;}s:25:"8:farmer-createwiki-title";a:2:{i:0;R:11788;i:1;R:799;}s:31:"8:farmer-createwiki-description";a:2:{i:0;R:11788;i:1;R:799;}s:26:"8:farmer-createwiki-reason";a:2:{i:0;R:11788;i:1;R:799;}s:20:"8:farmer-updatedlist";a:2:{i:0;R:11788;i:1;R:799;}s:22:"8:farmer-notaccessible";a:2:{i:0;R:11788;i:1;R:799;}s:27:"8:farmer-notaccessible-test";a:2:{i:0;R:11788;i:1;R:799;}s:25:"8:farmer-permissiondenied";a:2:{i:0;R:11788;i:1;R:799;}s:30:"8:farmer-permissiondenied-text";a:2:{i:0;R:11788;i:1;R:799;}s:31:"8:farmer-permissiondenied-text1";a:2:{i:0;R:11788;i:1;R:799;}s:17:"8:farmer-deleting";a:2:{i:0;R:11788;i:1;R:799;}s:23:"8:farmer-delete-confirm";a:2:{i:0;R:11788;i:1;R:799;}s:28:"8:farmer-delete-confirm-wiki";a:2:{i:0;R:11788;i:1;R:799;}s:22:"8:farmer-delete-reason";a:2:{i:0;R:11788;i:1;R:799;}s:21:"8:farmer-delete-title";a:2:{i:0;R:11788;i:1;R:799;}s:20:"8:farmer-delete-text";a:2:{i:0;R:11788;i:1;R:799;}s:20:"8:farmer-delete-form";a:2:{i:0;R:11788;i:1;R:799;}s:27:"8:farmer-delete-form-submit";a:2:{i:0;R:11788;i:1;R:799;}s:20:"8:farmer-listofwikis";a:2:{i:0;R:11788;i:1;R:799;}s:17:"8:farmer-mainpage";a:2:{i:0;R:11788;i:1;R:799;}s:20:"8:farmer-basic-title";a:2:{i:0;R:11788;i:1;R:799;}s:21:"8:farmer-basic-title1";a:2:{i:0;R:11788;i:1;R:799;}s:26:"8:farmer-basic-title1-text";a:2:{i:0;R:11788;i:1;R:799;}s:26:"8:farmer-basic-description";a:2:{i:0;R:11788;i:1;R:799;}s:31:"8:farmer-basic-description-text";a:2:{i:0;R:11788;i:1;R:799;}s:25:"8:farmer-basic-permission";a:2:{i:0;R:11788;i:1;R:799;}s:30:"8:farmer-basic-permission-text";a:2:{i:0;R:11788;i:1;R:799;}s:33:"8:farmer-basic-permission-visitor";a:2:{i:0;R:11788;i:1;R:799;}s:38:"8:farmer-basic-permission-visitor-text";a:2:{i:0;R:11788;i:1;R:799;}s:12:"8:farmer-yes";a:2:{i:0;R:11788;i:1;R:799;}s:11:"8:farmer-no";a:2:{i:0;R:11788;i:1;R:799;}s:30:"8:farmer-basic-permission-user";a:2:{i:0;R:11788;i:1;R:799;}s:35:"8:farmer-basic-permission-user-text";a:2:{i:0;R:11788;i:1;R:799;}s:22:"8:farmer-setpermission";a:2:{i:0;R:11788;i:1;R:799;}s:20:"8:farmer-defaultskin";a:2:{i:0;R:11788;i:1;R:799;}s:27:"8:farmer-defaultskin-button";a:2:{i:0;R:11788;i:1;R:799;}s:19:"8:farmer-extensions";a:2:{i:0;R:11788;i:1;R:799;}s:26:"8:farmer-extensions-button";a:2:{i:0;R:11788;i:1;R:799;}s:36:"8:farmer-extensions-extension-denied";a:2:{i:0;R:11788;i:1;R:799;}s:27:"8:farmer-extensions-invalid";a:2:{i:0;R:11788;i:1;R:799;}s:32:"8:farmer-extensions-invalid-text";a:2:{i:0;R:11788;i:1;R:799;}s:29:"8:farmer-extensions-available";a:2:{i:0;R:11788;i:1;R:799;}s:31:"8:farmer-extensions-noavailable";a:2:{i:0;R:11788;i:1;R:799;}s:28:"8:farmer-extensions-register";a:2:{i:0;R:11788;i:1;R:799;}s:34:"8:farmer-extensions-register-text1";a:2:{i:0;R:11788;i:1;R:799;}s:34:"8:farmer-extensions-register-text2";a:2:{i:0;R:11788;i:1;R:799;}s:34:"8:farmer-extensions-register-text3";a:2:{i:0;R:11788;i:1;R:799;}s:34:"8:farmer-extensions-register-text4";a:2:{i:0;R:11788;i:1;R:799;}s:33:"8:farmer-extensions-register-name";a:2:{i:0;R:11788;i:1;R:799;}s:40:"8:farmer-extensions-register-includefile";a:2:{i:0;R:11788;i:1;R:799;}s:21:"8:farmer-error-exists";a:2:{i:0;R:11788;i:1;R:799;}s:25:"8:farmer-error-noextwrite";a:2:{i:0;R:11788;i:1;R:799;}s:17:"8:farmer-log-name";a:2:{i:0;R:11788;i:1;R:799;}s:19:"8:farmer-log-header";a:2:{i:0;R:11788;i:1;R:799;}s:19:"8:farmer-log-create";a:2:{i:0;R:11788;i:1;R:799;}s:19:"8:farmer-log-delete";a:2:{i:0;R:11788;i:1;R:799;}s:19:"8:right-farmeradmin";a:2:{i:0;R:11788;i:1;R:799;}s:18:"8:right-createwiki";a:2:{i:0;R:11788;i:1;R:799;}s:16:"8:favorites-desc";a:2:{i:0;s:13:"ext-favorites";i:1;R:799;}s:14:"8:favoritethis";a:2:{i:0;R:11894;i:1;R:799;}s:20:"8:prefs-favoritelist";a:2:{i:0;R:11894;i:1;R:799;}s:26:"8:prefs-favoritelist-token";a:2:{i:0;R:11894;i:1;R:799;}s:28:"8:prefs-advancedfavoritelist";a:2:{i:0;R:11894;i:1;R:799;}s:14:"8:favoritelist";a:2:{i:0;R:11894;i:1;R:799;}s:16:"8:myfavoritelist";a:2:{i:0;R:11894;i:1;R:799;}s:17:"8:favoritelistfor";a:2:{i:0;R:11894;i:1;R:799;}s:16:"8:nofavoritelist";a:2:{i:0;R:11894;i:1;R:799;}s:22:"8:favoritelistanontext";a:2:{i:0;R:11894;i:1;R:799;}s:17:"8:favoritenologin";a:2:{i:0;R:11894;i:1;R:799;}s:21:"8:favoritenologintext";a:2:{i:0;R:11894;i:1;R:799;}s:15:"8:addedfavorite";a:2:{i:0;R:11894;i:1;R:799;}s:19:"8:addedfavoritetext";a:2:{i:0;R:11894;i:1;R:799;}s:17:"8:removedfavorite";a:2:{i:0;R:11894;i:1;R:799;}s:21:"8:removedfavoritetext";a:2:{i:0;R:11894;i:1;R:799;}s:10:"8:favorite";a:2:{i:0;R:11894;i:1;R:799;}s:18:"8:favoritethispage";a:2:{i:0;R:11894;i:1;R:799;}s:12:"8:unfavorite";a:2:{i:0;R:11894;i:1;R:799;}s:20:"8:unfavoritethispage";a:2:{i:0;R:11894;i:1;R:799;}s:22:"8:favoritelist-options";a:2:{i:0;R:11894;i:1;R:799;}s:13:"8:favoriteing";a:2:{i:0;R:11894;i:1;R:799;}s:15:"8:unfavoriteing";a:2:{i:0;R:11894;i:1;R:799;}s:27:"8:accesskey-pt-favoritelist";a:2:{i:0;R:11894;i:1;R:799;}s:23:"8:accesskey-ca-favorite";a:2:{i:0;R:11894;i:1;R:799;}s:25:"8:accesskey-ca-unfavorite";a:2:{i:0;R:11894;i:1;R:799;}s:20:"8:accesskey-favorite";a:2:{i:0;R:11894;i:1;R:799;}s:25:"8:tooltip-pt-favoritelist";a:2:{i:0;R:11894;i:1;R:799;}s:21:"8:tooltip-ca-favorite";a:2:{i:0;R:11894;i:1;R:799;}s:23:"8:tooltip-ca-unfavorite";a:2:{i:0;R:11894;i:1;R:799;}s:18:"8:tooltip-favorite";a:2:{i:0;R:11894;i:1;R:799;}s:18:"8:favoritelistall2";a:2:{i:0;R:11894;i:1;R:799;}s:27:"8:favoritelistedit-numitems";a:2:{i:0;R:11894;i:1;R:799;}s:26:"8:favoritelistedit-noitems";a:2:{i:0;R:11894;i:1;R:799;}s:31:"8:favoritelistedit-normal-title";a:2:{i:0;R:11894;i:1;R:799;}s:32:"8:favoritelistedit-normal-legend";a:2:{i:0;R:11894;i:1;R:799;}s:33:"8:favoritelistedit-normal-explain";a:2:{i:0;R:11894;i:1;R:799;}s:32:"8:favoritelistedit-normal-submit";a:2:{i:0;R:11894;i:1;R:799;}s:30:"8:favoritelistedit-normal-done";a:2:{i:0;R:11894;i:1;R:799;}s:28:"8:favoritelistedit-raw-title";a:2:{i:0;R:11894;i:1;R:799;}s:29:"8:favoritelistedit-raw-legend";a:2:{i:0;R:11894;i:1;R:799;}s:30:"8:favoritelistedit-raw-explain";a:2:{i:0;R:11894;i:1;R:799;}s:29:"8:favoritelistedit-raw-titles";a:2:{i:0;R:11894;i:1;R:799;}s:29:"8:favoritelistedit-raw-submit";a:2:{i:0;R:11894;i:1;R:799;}s:27:"8:favoritelistedit-raw-done";a:2:{i:0;R:11894;i:1;R:799;}s:28:"8:favoritelistedit-raw-added";a:2:{i:0;R:11894;i:1;R:799;}s:30:"8:favoritelistedit-raw-removed";a:2:{i:0;R:11894;i:1;R:799;}s:24:"8:favoritelisttools-view";a:2:{i:0;R:11894;i:1;R:799;}s:24:"8:favoritelisttools-edit";a:2:{i:0;R:11894;i:1;R:799;}s:23:"8:favoritelisttools-raw";a:2:{i:0;R:11894;i:1;R:799;}s:17:"8:fileattach-desc";a:2:{i:0;s:14:"ext-fileattach";i:1;R:799;}s:24:"8:fileattach-attachments";a:2:{i:0;R:11945;i:1;R:799;}s:23:"8:fileattach-attachfile";a:2:{i:0;R:11945;i:1;R:799;}s:26:"8:fileattach-uploadheading";a:2:{i:0;R:11945;i:1;R:799;}s:24:"8:fileattach-editcomment";a:2:{i:0;R:11945;i:1;R:799;}s:22:"8:filepagemasking-desc";a:2:{i:0;s:19:"ext-filepagemasking";i:1;R:799;}s:22:"8:filterlistusers-desc";a:2:{i:0;s:19:"ext-filterlistusers";i:1;R:799;}s:19:"8:listusers-showall";a:2:{i:0;R:11953;i:1;R:799;}s:20:"8:right-viewallusers";a:2:{i:0;R:11953;i:1;R:799;}s:10:"8:findspam";a:2:{i:0;s:12:"ext-findspam";i:1;R:799;}s:15:"8:findspam-desc";a:2:{i:0;R:11957;i:1;R:799;}s:13:"8:findspam-ip";a:2:{i:0;R:11957;i:1;R:799;}s:13:"8:findspam-ok";a:2:{i:0;R:11957;i:1;R:799;}s:22:"8:findspam-notextfound";a:2:{i:0;R:11957;i:1;R:799;}s:16:"8:right-findspam";a:2:{i:0;R:11957;i:1;R:799;}s:17:"8:fixedimage-desc";a:2:{i:0;s:14:"ext-fixedimage";i:1;R:799;}s:10:"8:flagpage";a:2:{i:0;s:12:"ext-flagpage";i:1;R:799;}s:15:"8:flagpage-desc";a:2:{i:0;R:11966;i:1;R:799;}s:23:"8:flagpage-templatelist";a:2:{i:0;R:11966;i:1;R:799;}s:30:"8:flagpage-nopageselectedtitle";a:2:{i:0;R:11966;i:1;R:799;}s:25:"8:flagpage-nopageselected";a:2:{i:0;R:11966;i:1;R:799;}s:25:"8:flagpage-emptylisttitle";a:2:{i:0;R:11966;i:1;R:799;}s:20:"8:flagpage-emptylist";a:2:{i:0;R:11966;i:1;R:799;}s:18:"8:flagpage-preview";a:2:{i:0;R:11966;i:1;R:799;}s:22:"8:flagpage-confirmsave";a:2:{i:0;R:11966;i:1;R:799;}s:23:"8:flagpage-submitbutton";a:2:{i:0;R:11966;i:1;R:799;}s:22:"8:flagpage-nonexistent";a:2:{i:0;R:11966;i:1;R:799;}s:18:"8:flagpage-summary";a:2:{i:0;R:11966;i:1;R:799;}s:18:"8:flagpage-success";a:2:{i:0;R:11966;i:1;R:799;}s:14:"8:flagpage-tab";a:2:{i:0;R:11966;i:1;R:799;}s:17:"8:flvhandler_desc";a:2:{i:0;s:14:"ext-flvhandler";i:1;R:799;}s:15:"8:flv-long-desc";a:2:{i:0;R:11981;i:1;R:799;}s:19:"8:folktagcloud-desc";a:2:{i:0;s:16:"ext-folktagcloud";i:1;R:799;}s:14:"8:forcepreview";a:2:{i:0;s:16:"ext-forcepreview";i:1;R:799;}s:19:"8:forcepreview-desc";a:2:{i:0;R:11986;i:1;R:799;}s:26:"8:right-forcepreviewexempt";a:2:{i:0;R:11986;i:1;R:799;}s:11:"8:form-desc";a:2:{i:0;s:8:"ext-form";i:1;R:799;}s:6:"8:form";a:2:{i:0;R:11990;i:1;R:799;}s:12:"8:formnoname";a:2:{i:0;R:11990;i:1;R:799;}s:16:"8:formnonametext";a:2:{i:0;R:11990;i:1;R:799;}s:13:"8:formbadname";a:2:{i:0;R:11990;i:1;R:799;}s:17:"8:formbadnametext";a:2:{i:0;R:11990;i:1;R:799;}s:13:"8:formpattern";a:2:{i:0;R:11990;i:1;R:799;}s:21:"8:formtemplatepattern";a:2:{i:0;R:11990;i:1;R:799;}s:18:"8:formtitlepattern";a:2:{i:0;R:11990;i:1;R:799;}s:10:"8:formsave";a:2:{i:0;R:11990;i:1;R:799;}s:25:"8:formindexmismatch-title";a:2:{i:0;R:11990;i:1;R:799;}s:19:"8:formindexmismatch";a:2:{i:0;R:11990;i:1;R:799;}s:19:"8:formarticleexists";a:2:{i:0;R:11990;i:1;R:799;}s:23:"8:formarticleexiststext";a:2:{i:0;R:11990;i:1;R:799;}s:17:"8:formbadpagename";a:2:{i:0;R:11990;i:1;R:799;}s:18:"8:formbadrecaptcha";a:2:{i:0;R:11990;i:1;R:799;}s:21:"8:formbadpagenametext";a:2:{i:0;R:11990;i:1;R:799;}s:24:"8:formrequiredfielderror";a:2:{i:0;R:11990;i:1;R:799;}s:17:"8:formsavesummary";a:2:{i:0;R:11990;i:1;R:799;}s:15:"8:formsaveerror";a:2:{i:0;R:11990;i:1;R:799;}s:19:"8:formsaveerrortext";a:2:{i:0;R:11990;i:1;R:799;}s:12:"8:email-desc";a:2:{i:0;s:15:"ext-formatemail";i:1;R:799;}s:14:"8:email_header";a:2:{i:0;R:12012;i:1;R:799;}s:14:"8:email_footer";a:2:{i:0;R:12012;i:1;R:799;}s:16:"8:formatnum-desc";a:2:{i:0;s:13:"ext-formatnum";i:1;R:799;}s:27:"8:framedvideo_default_width";a:2:{i:0;s:15:"ext-framedvideo";i:1;R:799;}s:32:"8:framedvideo_force_default_size";a:2:{i:0;R:12018;i:1;R:799;}s:23:"8:framedvideo_max_width";a:2:{i:0;R:12018;i:1;R:799;}s:24:"8:framedvideo_max_height";a:2:{i:0;R:12018;i:1;R:799;}s:31:"8:framedvideo_allow_full_screen";a:2:{i:0;R:12018;i:1;R:799;}s:37:"8:framedvideo_force_allow_full_screen";a:2:{i:0;R:12018;i:1;R:799;}s:20:"8:framedvideo_frames";a:2:{i:0;R:12018;i:1;R:799;}s:26:"8:framedvideo_force_frames";a:2:{i:0;R:12018;i:1;R:799;}s:28:"8:framedvideo_force_position";a:2:{i:0;R:12018;i:1;R:799;}s:22:"8:framedvideo_position";a:2:{i:0;R:12018;i:1;R:799;}s:20:"8:framedvideo_errors";a:2:{i:0;R:12018;i:1;R:799;}s:19:"8:framedvideo_error";a:2:{i:0;R:12018;i:1;R:799;}s:32:"8:framedvideo_error_unknown_type";a:2:{i:0;R:12018;i:1;R:799;}s:31:"8:framedvideo_error_no_id_given";a:2:{i:0;R:12018;i:1;R:799;}s:35:"8:framedvideo_error_height_required";a:2:{i:0;R:12018;i:1;R:799;}s:50:"8:framedvideo_error_height_required_not_only_width";a:2:{i:0;R:12018;i:1;R:799;}s:33:"8:framedvideo_error_width_too_big";a:2:{i:0;R:12018;i:1;R:799;}s:34:"8:framedvideo_error_height_too_big";a:2:{i:0;R:12018;i:1;R:799;}s:30:"8:framedvideo_error_no_integer";a:2:{i:0;R:12018;i:1;R:799;}s:25:"8:framedvideo_error_limit";a:2:{i:0;R:12018;i:1;R:799;}s:41:"8:framedvideo_error_full_size_not_allowed";a:2:{i:0;R:12018;i:1;R:799;}s:22:"8:framedvideo_helppage";a:2:{i:0;R:12018;i:1;R:799;}s:28:"8:framedvideo_error_see_help";a:2:{i:0;R:12018;i:1;R:799;}s:45:"8:framedvideo_error_height_and_width_required";a:2:{i:0;R:12018;i:1;R:799;}s:18:"8:framedvideo-desc";a:2:{i:0;R:12018;i:1;R:799;}s:21:"8:freqpatterntagcloud";a:2:{i:0;s:23:"ext-freqpatterntagcloud";i:1;R:799;}s:32:"8:freqpatterntagcloudmaintenance";a:2:{i:0;R:12044;i:1;R:799;}s:26:"8:freqpatterntagcloud-desc";a:2:{i:0;R:12044;i:1;R:799;}s:19:"8:fptc-categoryname";a:2:{i:0;R:12044;i:1;R:799;}s:26:"8:fptc-context-menu-browse";a:2:{i:0;R:12044;i:1;R:799;}s:32:"8:fptc-context-menu-similar-tags";a:2:{i:0;R:12044;i:1;R:799;}s:26:"8:fptc-form-attribute-name";a:2:{i:0;R:12044;i:1;R:799;}s:25:"8:fptc-form-submit-button";a:2:{i:0;R:12044;i:1;R:799;}s:24:"8:fptc-invalid-attribute";a:2:{i:0;R:12044;i:1;R:799;}s:42:"8:fptc-insufficient-rights-for-maintenance";a:2:{i:0;R:12044;i:1;R:799;}s:32:"8:fptc-refresh-frequent-patterns";a:2:{i:0;R:12044;i:1;R:799;}s:34:"8:fptc-refreshed-frequent-patterns";a:2:{i:0;R:12044;i:1;R:799;}s:28:"8:fptc-search-attribute-name";a:2:{i:0;R:12044;i:1;R:799;}s:20:"8:fptc-search-button";a:2:{i:0;R:12044;i:1;R:799;}s:30:"8:fptc-search-suggestion-value";a:2:{i:0;R:12044;i:1;R:799;}s:17:"8:fptc-suggestion";a:2:{i:0;R:12044;i:1;R:799;}s:20:"8:fptc-no-suggestion";a:2:{i:0;R:12044;i:1;R:799;}s:22:"8:frontbackforced-desc";a:2:{i:0;s:34:"ext-frontbackmatterforcedwikilinks";i:1;R:799;}s:23:"8:frontbackforced-front";a:2:{i:0;R:12062;i:1;R:799;}s:22:"8:frontbackforced-back";a:2:{i:0;R:12062;i:1;R:799;}s:24:"8:frontbackforced-forced";a:2:{i:0;R:12062;i:1;R:799;}s:15:"8:geequbox-desc";a:2:{i:0;s:12:"ext-geequbox";i:1;R:799;}s:16:"8:genderize-desc";a:2:{i:0;s:13:"ext-genderize";i:1;R:799;}s:14:"8:geodata-desc";a:2:{i:0;s:11:"ext-geodata";i:1;R:799;}s:19:"8:geodata-bad-input";a:2:{i:0;R:12071;i:1;R:799;}s:22:"8:geodata-bad-latitude";a:2:{i:0;R:12071;i:1;R:799;}s:23:"8:geodata-bad-longitude";a:2:{i:0;R:12071;i:1;R:799;}s:18:"8:geodata-bad-type";a:2:{i:0;R:12071;i:1;R:799;}s:19:"8:geodata-bad-globe";a:2:{i:0;R:12071;i:1;R:799;}s:20:"8:geodata-bad-region";a:2:{i:0;R:12071;i:1;R:799;}s:26:"8:geodata-multiple-primary";a:2:{i:0;R:12071;i:1;R:799;}s:24:"8:geodata-limit-exceeded";a:2:{i:0;R:12071;i:1;R:799;}s:30:"8:geodata-broken-tags-category";a:2:{i:0;R:12071;i:1;R:799;}s:31:"8:geodata-unknown-type-category";a:2:{i:0;R:12071;i:1;R:799;}s:32:"8:geodata-unknown-globe-category";a:2:{i:0;R:12071;i:1;R:799;}s:33:"8:geodata-unknown-region-category";a:2:{i:0;R:12071;i:1;R:799;}s:28:"8:geodata-primary-coordinate";a:2:{i:0;R:12071;i:1;R:799;}s:14:"8:geolite-desc";a:2:{i:0;s:11:"ext-geolite";i:1;R:799;}s:9:"8:geolite";a:2:{i:0;R:12086;i:1;R:799;}s:16:"8:getfamily-desc";a:2:{i:0;s:13:"ext-getfamily";i:1;R:799;}s:11:"8:getfamily";a:2:{i:0;R:12089;i:1;R:799;}s:26:"8:getfamily-interwikierror";a:2:{i:0;R:12089;i:1;R:799;}s:17:"8:right-getfamily";a:2:{i:0;R:12089;i:1;R:799;}s:23:"8:globalusergroups-desc";a:2:{i:0;s:20:"ext-globalusergroups";i:1;R:799;}s:18:"8:globaluserrights";a:2:{i:0;s:20:"ext-globaluserrights";i:1;R:799;}s:10:"8:gur-desc";a:2:{i:0;R:12096;i:1;R:799;}s:20:"8:gur-rightslog-name";a:2:{i:0;R:12096;i:1;R:799;}s:22:"8:gur-rightslog-header";a:2:{i:0;R:12096;i:1;R:799;}s:21:"8:gur-rightslog-entry";a:2:{i:0;R:12096;i:1;R:799;}s:25:"8:right-userrights-global";a:2:{i:0;R:12096;i:1;R:799;}s:14:"8:gnuplot-desc";a:2:{i:0;s:11:"ext-gnuplot";i:1;R:799;}s:15:"8:googleadsense";a:2:{i:0;s:17:"ext-googleadsense";i:1;R:799;}s:20:"8:googleadsense-desc";a:2:{i:0;R:12105;i:1;R:799;}s:22:"8:googleanalytics-desc";a:2:{i:0;s:19:"ext-googleanalytics";i:1;R:799;}s:17:"8:googlemaps-desc";a:2:{i:0;s:14:"ext-googlemaps";i:1;R:799;}s:33:"8:googlemaps-incompatible-browser";a:2:{i:0;R:12110;i:1;R:799;}s:38:"8:googlemaps-incompatible-browser-link";a:2:{i:0;R:12110;i:1;R:799;}s:22:"8:googlemaps-no-editor";a:2:{i:0;R:12110;i:1;R:799;}s:26:"8:googlemaps-balloon-title";a:2:{i:0;R:12110;i:1;R:799;}s:33:"8:googlemaps-balloon-link-article";a:2:{i:0;R:12110;i:1;R:799;}s:24:"8:googlemaps-make-marker";a:2:{i:0;R:12110;i:1;R:799;}s:19:"8:googlemaps-remove";a:2:{i:0;R:12110;i:1;R:799;}s:20:"8:googlemaps-caption";a:2:{i:0;R:12110;i:1;R:799;}s:22:"8:googlemaps-tab-title";a:2:{i:0;R:12110;i:1;R:799;}s:16:"8:googlemaps-tab";a:2:{i:0;R:12110;i:1;R:799;}s:23:"8:googlemaps-start-path";a:2:{i:0;R:12110;i:1;R:799;}s:23:"8:googlemaps-trace-area";a:2:{i:0;R:12110;i:1;R:799;}s:23:"8:googlemaps-save-point";a:2:{i:0;R:12110;i:1;R:799;}s:34:"8:googlemaps-load-map-from-article";a:2:{i:0;R:12110;i:1;R:799;}s:20:"8:googlemaps-no-maps";a:2:{i:0;R:12110;i:1;R:799;}s:25:"8:googlemaps-refresh-list";a:2:{i:0;R:12110;i:1;R:799;}s:21:"8:googlemaps-load-map";a:2:{i:0;R:12110;i:1;R:799;}s:24:"8:googlemaps-clip-result";a:2:{i:0;R:12110;i:1;R:799;}s:23:"8:googlemaps-no-results";a:2:{i:0;R:12110;i:1;R:799;}s:22:"8:googlemaps-searching";a:2:{i:0;R:12110;i:1;R:799;}s:16:"8:googlemaps-map";a:2:{i:0;R:12110;i:1;R:799;}s:17:"8:googlemaps-note";a:2:{i:0;R:12110;i:1;R:799;}s:25:"8:googlemaps-instructions";a:2:{i:0;R:12110;i:1;R:799;}s:25:"8:googlemaps-are-you-sure";a:2:{i:0;R:12110;i:1;R:799;}s:29:"8:googlemaps-clear-all-points";a:2:{i:0;R:12110;i:1;R:799;}s:27:"8:googlemaps-refresh-points";a:2:{i:0;R:12110;i:1;R:799;}s:18:"8:googlemaps-width";a:2:{i:0;R:12110;i:1;R:799;}s:19:"8:googlemaps-height";a:2:{i:0;R:12110;i:1;R:799;}s:26:"8:googlemaps-scale-control";a:2:{i:0;R:12110;i:1;R:799;}s:29:"8:googlemaps-overview-control";a:2:{i:0;R:12110;i:1;R:799;}s:29:"8:googlemaps-selector-control";a:2:{i:0;R:12110;i:1;R:799;}s:25:"8:googlemaps-zoom-control";a:2:{i:0;R:12110;i:1;R:799;}s:18:"8:googlemaps-large";a:2:{i:0;R:12110;i:1;R:799;}s:19:"8:googlemaps-medium";a:2:{i:0;R:12110;i:1;R:799;}s:18:"8:googlemaps-small";a:2:{i:0;R:12110;i:1;R:799;}s:28:"8:googlemaps-no-zoom-control";a:2:{i:0;R:12110;i:1;R:799;}s:16:"8:googlemaps-yes";a:2:{i:0;R:12110;i:1;R:799;}s:15:"8:googlemaps-no";a:2:{i:0;R:12110;i:1;R:799;}s:27:"8:googlemaps-search-preface";a:2:{i:0;R:12110;i:1;R:799;}s:28:"8:googlemaps-geocode-preface";a:2:{i:0;R:12110;i:1;R:799;}s:30:"8:googlemaps-no-search-preface";a:2:{i:0;R:12110;i:1;R:799;}s:19:"8:googlemaps-search";a:2:{i:0;R:12110;i:1;R:799;}s:25:"8:googlemaps-clear-search";a:2:{i:0;R:12110;i:1;R:799;}s:19:"8:googlemaps-meters";a:2:{i:0;R:12110;i:1;R:799;}s:18:"8:googlemaps-miles";a:2:{i:0;R:12110;i:1;R:799;}s:25:"8:googlemaps-editing-path";a:2:{i:0;R:12110;i:1;R:799;}s:22:"8:googlemaps-save-path";a:2:{i:0;R:12110;i:1;R:799;}s:22:"8:googlemaps-edit-path";a:2:{i:0;R:12110;i:1;R:799;}s:22:"8:googlemaps-show-path";a:2:{i:0;R:12110;i:1;R:799;}s:23:"8:googlemaps-color-path";a:2:{i:0;R:12110;i:1;R:799;}s:23:"8:googlemaps-color-fill";a:2:{i:0;R:12110;i:1;R:799;}s:21:"8:googlemaps-add-fill";a:2:{i:0;R:12110;i:1;R:799;}s:24:"8:googlemaps-remove-fill";a:2:{i:0;R:12110;i:1;R:799;}s:23:"8:googlemaps-fill-color";a:2:{i:0;R:12110;i:1;R:799;}s:23:"8:googlemaps-line-color";a:2:{i:0;R:12110;i:1;R:799;}s:20:"8:googlemaps-opacity";a:2:{i:0;R:12110;i:1;R:799;}s:23:"8:googlemaps-line-width";a:2:{i:0;R:12110;i:1;R:799;}s:21:"8:googlemaps-make-map";a:2:{i:0;R:12110;i:1;R:799;}s:21:"8:googlemaps-hide-map";a:2:{i:0;R:12110;i:1;R:799;}s:17:"8:googlemaps-back";a:2:{i:0;R:12110;i:1;R:799;}s:24:"8:googlemaps-kml-include";a:2:{i:0;R:12110;i:1;R:799;}s:29:"8:googlemaps-kml-include-link";a:2:{i:0;R:12110;i:1;R:799;}s:24:"8:googlemaps-kml-loading";a:2:{i:0;R:12110;i:1;R:799;}s:23:"8:googlemaps-kml-export";a:2:{i:0;R:12110;i:1;R:799;}s:18:"8:googlemaps-earth";a:2:{i:0;R:12110;i:1;R:799;}s:17:"8:googlemaps-moon";a:2:{i:0;R:12110;i:1;R:799;}s:17:"8:googlemaps-mars";a:2:{i:0;R:12110;i:1;R:799;}s:19:"8:gotocategory-desc";a:2:{i:0;s:16:"ext-gotocategory";i:1;R:799;}s:15:"8:graphviz-desc";a:2:{i:0;s:12:"ext-graphviz";i:1;R:799;}s:20:"8:groupssidebar-desc";a:2:{i:0;s:17:"ext-groupssidebar";i:1;R:799;}s:17:"8:hashtables-desc";a:2:{i:0;s:14:"ext-hashtables";i:1;R:799;}s:17:"8:headertabs-desc";a:2:{i:0;s:14:"ext-headertabs";i:1;R:799;}s:20:"8:headertabs-edittab";a:2:{i:0;R:12187;i:1;R:799;}s:25:"8:headertabs-edittab-hint";a:2:{i:0;R:12187;i:1;R:799;}s:24:"8:headertabs-edittab-key";a:2:{i:0;R:12187;i:1;R:799;}s:17:"8:helloworld-desc";a:2:{i:0;s:14:"ext-helloworld";i:1;R:799;}s:12:"8:helloworld";a:2:{i:0;R:12192;i:1;R:799;}s:18:"8:helloworld-hello";a:2:{i:0;R:12192;i:1;R:799;}s:18:"8:helpcommons-desc";a:2:{i:0;s:15:"ext-helpcommons";i:1;R:799;}s:20:"8:helpcommons-create";a:2:{i:0;R:12196;i:1;R:799;}s:18:"8:helpcommons-edit";a:2:{i:0;R:12196;i:1;R:799;}s:24:"8:helpcommons-discussion";a:2:{i:0;R:12196;i:1;R:799;}s:18:"8:helpcommons-info";a:2:{i:0;R:12196;i:1;R:799;}s:13:"8:hidens-desc";a:2:{i:0;s:17:"ext-hidenamespace";i:1;R:799;}s:17:"8:hideprefix-desc";a:2:{i:0;s:14:"ext-hideprefix";i:1;R:799;}s:15:"8:honeypot-desc";a:2:{i:0;s:23:"ext-honeypotintegration";i:1;R:799;}s:51:"8:abusefilter-edit-builder-vars-honeypot-list-count";a:2:{i:0;R:12206;i:1;R:799;}s:14:"8:htmlets-desc";a:2:{i:0;s:11:"ext-htmlets";i:1;R:799;}s:22:"8:htmlets-filenotfound";a:2:{i:0;R:12209;i:1;R:799;}s:20:"8:htmlets-loadfailed";a:2:{i:0;R:12209;i:1;R:799;}s:15:"8:i18ntags-desc";a:2:{i:0;s:12:"ext-i18ntags";i:1;R:799;}s:15:"8:icon-badimage";a:2:{i:0;s:8:"ext-icon";i:1;R:799;}s:15:"8:icon-badwidth";a:2:{i:0;R:12215;i:1;R:799;}s:11:"8:icon-desc";a:2:{i:0;R:12215;i:1;R:799;}s:14:"8:taggedimages";a:2:{i:0;s:16:"ext-imagetagging";i:1;R:799;}s:19:"8:imagetagging-desc";a:2:{i:0;R:12219;i:1;R:799;}s:26:"8:imagetagging-addimagetag";a:2:{i:0;R:12219;i:1;R:799;}s:22:"8:imagetagging-article";a:2:{i:0;R:12219;i:1;R:799;}s:27:"8:imagetagging-articletotag";a:2:{i:0;R:12219;i:1;R:799;}s:35:"8:imagetagging-canteditothermessage";a:2:{i:0;R:12219;i:1;R:799;}s:25:"8:imagetagging-imghistory";a:2:{i:0;R:12219;i:1;R:799;}s:21:"8:imagetagging-images";a:2:{i:0;R:12219;i:1;R:799;}s:26:"8:imagetagging-inthisimage";a:2:{i:0;R:12219;i:1;R:799;}s:23:"8:imagetagging-logentry";a:2:{i:0;R:12219;i:1;R:799;}s:25:"8:imagetagging-log-tagged";a:2:{i:0;R:12219;i:1;R:799;}s:18:"8:imagetagging-new";a:2:{i:0;R:12219;i:1;R:799;}s:24:"8:imagetagging-removetag";a:2:{i:0;R:12219;i:1;R:799;}s:26:"8:imagetagging-done-button";a:2:{i:0;R:12219;i:1;R:799;}s:25:"8:imagetagging-tag-button";a:2:{i:0;R:12219;i:1;R:799;}s:31:"8:imagetagging-tagcancel-button";a:2:{i:0;R:12219;i:1;R:799;}s:35:"8:imagetagging-tagging-instructions";a:2:{i:0;R:12219;i:1;R:799;}s:24:"8:imagetagging-addingtag";a:2:{i:0;R:12219;i:1;R:799;}s:26:"8:imagetagging-removingtag";a:2:{i:0;R:12219;i:1;R:799;}s:28:"8:imagetagging-addtagsuccess";a:2:{i:0;R:12219;i:1;R:799;}s:31:"8:imagetagging-removetagsuccess";a:2:{i:0;R:12219;i:1;R:799;}s:39:"8:imagetagging-canteditneedloginmessage";a:2:{i:0;R:12219;i:1;R:799;}s:38:"8:imagetagging-oneactionatatimemessage";a:2:{i:0;R:12219;i:1;R:799;}s:34:"8:imagetagging-oneuniquetagmessage";a:2:{i:0;R:12219;i:1;R:799;}s:37:"8:imagetagging-imagetag-seemoreimages";a:2:{i:0;R:12219;i:1;R:799;}s:33:"8:imagetagging-taggedimages-title";a:2:{i:0;R:12219;i:1;R:799;}s:38:"8:imagetagging-taggedimages-displaying";a:2:{i:0;R:12219;i:1;R:799;}s:17:"8:tag-logpagename";a:2:{i:0;R:12219;i:1;R:799;}s:17:"8:tag-logpagetext";a:2:{i:0;R:12219;i:1;R:799;}s:18:"8:importfreeimages";a:2:{i:0;s:20:"ext-importfreeimages";i:1;R:799;}s:23:"8:importfreeimages-desc";a:2:{i:0;R:12249;i:1;R:799;}s:30:"8:importfreeimages_description";a:2:{i:0;R:12249;i:1;R:799;}s:32:"8:importfreeimages_nophotosfound";a:2:{i:0;R:12249;i:1;R:799;}s:24:"8:importfreeimages_owner";a:2:{i:0;R:12249;i:1;R:799;}s:29:"8:importfreeimages_importthis";a:2:{i:0;R:12249;i:1;R:799;}s:23:"8:importfreeimages_next";a:2:{i:0;R:12249;i:1;R:799;}s:30:"8:importfreeimages_size_square";a:2:{i:0;R:12249;i:1;R:799;}s:33:"8:importfreeimages_size_thumbnail";a:2:{i:0;R:12249;i:1;R:799;}s:29:"8:importfreeimages_size_small";a:2:{i:0;R:12249;i:1;R:799;}s:30:"8:importfreeimages_size_medium";a:2:{i:0;R:12249;i:1;R:799;}s:29:"8:importfreeimages_size_large";a:2:{i:0;R:12249;i:1;R:799;}s:32:"8:importfreeimages_size_original";a:2:{i:0;R:12249;i:1;R:799;}s:13:"8:importusers";a:2:{i:0;s:15:"ext-importusers";i:1;R:799;}s:18:"8:importusers-desc";a:2:{i:0;R:12263;i:1;R:799;}s:24:"8:importusers-uploadfile";a:2:{i:0;R:12263;i:1;R:799;}s:26:"8:importusers-form-caption";a:2:{i:0;R:12263;i:1;R:799;}s:23:"8:importusers-form-file";a:2:{i:0;R:12263;i:1;R:799;}s:34:"8:importusers-form-replace-present";a:2:{i:0;R:12263;i:1;R:799;}s:25:"8:importusers-form-button";a:2:{i:0;R:12263;i:1;R:799;}s:24:"8:importusers-user-added";a:2:{i:0;R:12263;i:1;R:799;}s:33:"8:importusers-user-present-update";a:2:{i:0;R:12263;i:1;R:799;}s:37:"8:importusers-user-present-not-update";a:2:{i:0;R:12263;i:1;R:799;}s:33:"8:importusers-user-invalid-format";a:2:{i:0;R:12263;i:1;R:799;}s:17:"8:importusers-log";a:2:{i:0;R:12263;i:1;R:799;}s:25:"8:importusers-log-summary";a:2:{i:0;R:12263;i:1;R:799;}s:29:"8:importusers-log-summary-all";a:2:{i:0;R:12263;i:1;R:799;}s:31:"8:importusers-log-summary-added";a:2:{i:0;R:12263;i:1;R:799;}s:33:"8:importusers-log-summary-updated";a:2:{i:0;R:12263;i:1;R:799;}s:24:"8:importusers-login-name";a:2:{i:0;R:12263;i:1;R:799;}s:22:"8:importusers-password";a:2:{i:0;R:12263;i:1;R:799;}s:19:"8:importusers-email";a:2:{i:0;R:12263;i:1;R:799;}s:22:"8:importusers-realname";a:2:{i:0;R:12263;i:1;R:799;}s:20:"8:right-import_users";a:2:{i:0;R:12263;i:1;R:799;}s:15:"8:imstatus-desc";a:2:{i:0;s:12:"ext-imstatus";i:1;R:799;}s:17:"8:imstatus_syntax";a:2:{i:0;R:12285;i:1;R:799;}s:18:"8:imstatus_default";a:2:{i:0;R:12285;i:1;R:799;}s:18:"8:imstatus_example";a:2:{i:0;R:12285;i:1;R:799;}s:23:"8:imstatus_possible_val";a:2:{i:0;R:12285;i:1;R:799;}s:14:"8:imstatus_max";a:2:{i:0;R:12285;i:1;R:799;}s:14:"8:imstatus_min";a:2:{i:0;R:12285;i:1;R:799;}s:13:"8:imstatus_or";a:2:{i:0;R:12285;i:1;R:799;}s:16:"8:imstatus_style";a:2:{i:0;R:12285;i:1;R:799;}s:17:"8:imstatus_action";a:2:{i:0;R:12285;i:1;R:799;}s:22:"8:imstatus_details_saa";a:2:{i:0;R:12285;i:1;R:799;}s:20:"8:imstatus_your_name";a:2:{i:0;R:12285;i:1;R:799;}s:23:"8:imstatus_aim_presence";a:2:{i:0;R:12285;i:1;R:799;}s:18:"8:imstatus_aim_api";a:2:{i:0;R:12285;i:1;R:799;}s:21:"8:imstatus_gtalk_code";a:2:{i:0;R:12285;i:1;R:799;}s:25:"8:imstatus_gtalk_get_code";a:2:{i:0;R:12285;i:1;R:799;}s:23:"8:imstatus_gtalk_height";a:2:{i:0;R:12285;i:1;R:799;}s:22:"8:imstatus_gtalk_width";a:2:{i:0;R:12285;i:1;R:799;}s:17:"8:imstatus_icq_id";a:2:{i:0;R:12285;i:1;R:799;}s:20:"8:imstatus_icq_style";a:2:{i:0;R:12285;i:1;R:799;}s:20:"8:imstatus_live_code";a:2:{i:0;R:12285;i:1;R:799;}s:24:"8:imstatus_live_get_code";a:2:{i:0;R:12285;i:1;R:799;}s:24:"8:imstatus_skype_nbstyle";a:2:{i:0;R:12285;i:1;R:799;}s:21:"8:imstatus_xfire_size";a:2:{i:0;R:12285;i:1;R:799;}s:22:"8:imstatus_yahoo_style";a:2:{i:0;R:12285;i:1;R:799;}s:16:"8:includewp-desc";a:2:{i:0;s:13:"ext-includewp";i:1;R:799;}s:24:"8:includewp-loading-page";a:2:{i:0;R:12311;i:1;R:799;}s:26:"8:includewp-show-full-page";a:2:{i:0;R:12311;i:1;R:799;}s:25:"8:includewp-show-fragment";a:2:{i:0;R:12311;i:1;R:799;}s:26:"8:includewp-loading-failed";a:2:{i:0;R:12311;i:1;R:799;}s:26:"8:includewp-licence-notice";a:2:{i:0;R:12311;i:1;R:799;}s:27:"8:includewp-parserhook-desc";a:2:{i:0;R:12311;i:1;R:799;}s:28:"8:includewp-include-par-page";a:2:{i:0;R:12311;i:1;R:799;}s:28:"8:includewp-include-par-wiki";a:2:{i:0;R:12311;i:1;R:799;}s:34:"8:includewp-include-par-paragraphs";a:2:{i:0;R:12311;i:1;R:799;}s:30:"8:includewp-include-par-height";a:2:{i:0;R:12311;i:1;R:799;}s:16:"8:indexfunc-desc";a:2:{i:0;s:17:"ext-indexfunction";i:1;R:799;}s:20:"8:indexfunc-badtitle";a:2:{i:0;R:12323;i:1;R:799;}s:23:"8:indexfunc-editwarning";a:2:{i:0;R:12323;i:1;R:799;}s:24:"8:indexfunc-index-exists";a:2:{i:0;R:12323;i:1;R:799;}s:20:"8:indexfunc-movewarn";a:2:{i:0;R:12323;i:1;R:799;}s:7:"8:index";a:2:{i:0;R:12323;i:1;R:799;}s:14:"8:index-legend";a:2:{i:0;R:12323;i:1;R:799;}s:14:"8:index-search";a:2:{i:0;R:12323;i:1;R:799;}s:14:"8:index-submit";a:2:{i:0;R:12323;i:1;R:799;}s:22:"8:index-disambig-start";a:2:{i:0;R:12323;i:1;R:799;}s:26:"8:index-exclude-categories";a:2:{i:0;R:12323;i:1;R:799;}s:17:"8:index-emptylist";a:2:{i:0;R:12323;i:1;R:799;}s:21:"8:index-expand-detail";a:2:{i:0;R:12323;i:1;R:799;}s:19:"8:index-hide-detail";a:2:{i:0;R:12323;i:1;R:799;}s:18:"8:index-no-results";a:2:{i:0;R:12323;i:1;R:799;}s:22:"8:index-search-explain";a:2:{i:0;R:12323;i:1;R:799;}s:23:"8:index-details-explain";a:2:{i:0;R:12323;i:1;R:799;}s:24:"8:inlinecategorizer-desc";a:2:{i:0;s:21:"ext-inlinecategorizer";i:1;R:799;}s:32:"8:inlinecategorizer-add-category";a:2:{i:0;R:12341;i:1;R:799;}s:39:"8:inlinecategorizer-add-category-submit";a:2:{i:0;R:12341;i:1;R:799;}s:40:"8:inlinecategorizer-add-category-summary";a:2:{i:0;R:12341;i:1;R:799;}s:29:"8:inlinecategorizer-api-error";a:2:{i:0;R:12341;i:1;R:799;}s:37:"8:inlinecategorizer-api-unknown-error";a:2:{i:0;R:12341;i:1;R:799;}s:26:"8:inlinecategorizer-cancel";a:2:{i:0;R:12341;i:1;R:799;}s:30:"8:inlinecategorizer-cancel-all";a:2:{i:0;R:12341;i:1;R:799;}s:44:"8:inlinecategorizer-category-already-present";a:2:{i:0;R:12341;i:1;R:799;}s:39:"8:inlinecategorizer-category-hook-error";a:2:{i:0;R:12341;i:1;R:799;}s:37:"8:inlinecategorizer-category-question";a:2:{i:0;R:12341;i:1;R:799;}s:30:"8:inlinecategorizer-confirm-ok";a:2:{i:0;R:12341;i:1;R:799;}s:32:"8:inlinecategorizer-confirm-save";a:2:{i:0;R:12341;i:1;R:799;}s:36:"8:inlinecategorizer-confirm-save-all";a:2:{i:0;R:12341;i:1;R:799;}s:33:"8:inlinecategorizer-confirm-title";a:2:{i:0;R:12341;i:1;R:799;}s:33:"8:inlinecategorizer-edit-category";a:2:{i:0;R:12341;i:1;R:799;}s:39:"8:inlinecategorizer-edit-category-error";a:2:{i:0;R:12341;i:1;R:799;}s:41:"8:inlinecategorizer-edit-category-summary";a:2:{i:0;R:12341;i:1;R:799;}s:31:"8:inlinecategorizer-error-title";a:2:{i:0;R:12341;i:1;R:799;}s:35:"8:inlinecategorizer-remove-category";a:2:{i:0;R:12341;i:1;R:799;}s:41:"8:inlinecategorizer-remove-category-error";a:2:{i:0;R:12341;i:1;R:799;}s:43:"8:inlinecategorizer-remove-category-summary";a:2:{i:0;R:12341;i:1;R:799;}s:14:"8:inspectcache";a:2:{i:0;s:16:"ext-inspectcache";i:1;R:799;}s:19:"8:inspectcache-desc";a:2:{i:0;R:12364;i:1;R:799;}s:22:"8:inspectcache-general";a:2:{i:0;R:12364;i:1;R:799;}s:21:"8:inspectcache-parser";a:2:{i:0;R:12364;i:1;R:799;}s:22:"8:inspectcache-message";a:2:{i:0;R:12364;i:1;R:799;}s:18:"8:inspectcache-get";a:2:{i:0;R:12364;i:1;R:799;}s:21:"8:inspectcache-delete";a:2:{i:0;R:12364;i:1;R:799;}s:22:"8:inspectcache-deleted";a:2:{i:0;R:12364;i:1;R:799;}s:19:"8:inspectcache-list";a:2:{i:0;R:12364;i:1;R:799;}s:20:"8:right-inspectcache";a:2:{i:0;R:12364;i:1;R:799;}s:30:"8:interactiveblockmessage-desc";a:2:{i:0;s:27:"ext-interactiveblockmessage";i:1;R:799;}s:27:"8:interfaceconcurrency-desc";a:2:{i:0;s:24:"ext-interfaceconcurrency";i:1;R:799;}s:20:"8:interlanguage-desc";a:2:{i:0;s:17:"ext-interlanguage";i:1;R:799;}s:36:"8:interlanguage-pagelinksexplanation";a:2:{i:0;R:12379;i:1;R:799;}s:25:"8:interlanguage-editlinks";a:2:{i:0;R:12379;i:1;R:799;}s:11:"8:interwiki";a:2:{i:0;s:13:"ext-interwiki";i:1;R:799;}s:26:"8:interwiki-title-norights";a:2:{i:0;R:12383;i:1;R:799;}s:16:"8:interwiki-desc";a:2:{i:0;R:12383;i:1;R:799;}s:17:"8:interwiki_intro";a:2:{i:0;R:12383;i:1;R:799;}s:18:"8:interwiki_prefix";a:2:{i:0;R:12383;i:1;R:799;}s:24:"8:interwiki-prefix-label";a:2:{i:0;R:12383;i:1;R:799;}s:24:"8:interwiki_prefix_intro";a:2:{i:0;R:12383;i:1;R:799;}s:15:"8:interwiki_url";a:2:{i:0;R:12383;i:1;R:799;}s:21:"8:interwiki-url-label";a:2:{i:0;R:12383;i:1;R:799;}s:21:"8:interwiki_url_intro";a:2:{i:0;R:12383;i:1;R:799;}s:17:"8:interwiki_local";a:2:{i:0;R:12383;i:1;R:799;}s:23:"8:interwiki-local-label";a:2:{i:0;R:12383;i:1;R:799;}s:23:"8:interwiki_local_intro";a:2:{i:0;R:12383;i:1;R:799;}s:25:"8:interwiki_local_0_intro";a:2:{i:0;R:12383;i:1;R:799;}s:25:"8:interwiki_local_1_intro";a:2:{i:0;R:12383;i:1;R:799;}s:17:"8:interwiki_trans";a:2:{i:0;R:12383;i:1;R:799;}s:23:"8:interwiki-trans-label";a:2:{i:0;R:12383;i:1;R:799;}s:23:"8:interwiki_trans_intro";a:2:{i:0;R:12383;i:1;R:799;}s:25:"8:interwiki_trans_1_intro";a:2:{i:0;R:12383;i:1;R:799;}s:25:"8:interwiki_trans_0_intro";a:2:{i:0;R:12383;i:1;R:799;}s:24:"8:interwiki_intro_footer";a:2:{i:0;R:12383;i:1;R:799;}s:13:"8:interwiki_1";a:2:{i:0;R:12383;i:1;R:799;}s:13:"8:interwiki_0";a:2:{i:0;R:12383;i:1;R:799;}s:17:"8:interwiki_error";a:2:{i:0;R:12383;i:1;R:799;}s:18:"8:interwiki-cached";a:2:{i:0;R:12383;i:1;R:799;}s:16:"8:interwiki_edit";a:2:{i:0;R:12383;i:1;R:799;}s:23:"8:interwiki_reasonfield";a:2:{i:0;R:12383;i:1;R:799;}s:23:"8:interwiki_delquestion";a:2:{i:0;R:12383;i:1;R:799;}s:20:"8:interwiki_deleting";a:2:{i:0;R:12383;i:1;R:799;}s:19:"8:interwiki_deleted";a:2:{i:0;R:12383;i:1;R:799;}s:21:"8:interwiki_delfailed";a:2:{i:0;R:12383;i:1;R:799;}s:19:"8:interwiki_addtext";a:2:{i:0;R:12383;i:1;R:799;}s:20:"8:interwiki_addintro";a:2:{i:0;R:12383;i:1;R:799;}s:21:"8:interwiki_addbutton";a:2:{i:0;R:12383;i:1;R:799;}s:17:"8:interwiki_added";a:2:{i:0;R:12383;i:1;R:799;}s:21:"8:interwiki_addfailed";a:2:{i:0;R:12383;i:1;R:799;}s:22:"8:interwiki-defaulturl";a:2:{i:0;R:12383;i:1;R:799;}s:20:"8:interwiki_edittext";a:2:{i:0;R:12383;i:1;R:799;}s:21:"8:interwiki_editintro";a:2:{i:0;R:12383;i:1;R:799;}s:18:"8:interwiki_edited";a:2:{i:0;R:12383;i:1;R:799;}s:21:"8:interwiki_editerror";a:2:{i:0;R:12383;i:1;R:799;}s:21:"8:interwiki-badprefix";a:2:{i:0;R:12383;i:1;R:799;}s:24:"8:interwiki-submit-empty";a:2:{i:0;R:12383;i:1;R:799;}s:23:"8:interwiki_logpagename";a:2:{i:0;R:12383;i:1;R:799;}s:27:"8:logentry-interwiki-iw_add";a:2:{i:0;R:12383;i:1;R:799;}s:28:"8:logentry-interwiki-iw_edit";a:2:{i:0;R:12383;i:1;R:799;}s:30:"8:logentry-interwiki-iw_delete";a:2:{i:0;R:12383;i:1;R:799;}s:23:"8:interwiki_logpagetext";a:2:{i:0;R:12383;i:1;R:799;}s:30:"8:logentry-interwiki-interwiki";a:2:{i:0;R:12383;i:1;R:799;}s:17:"8:right-interwiki";a:2:{i:0;R:12383;i:1;R:799;}s:18:"8:action-interwiki";a:2:{i:0;R:12383;i:1;R:799;}s:15:"8:interwikilist";a:2:{i:0;s:17:"ext-interwikilist";i:1;R:799;}s:20:"8:interwikilist-desc";a:2:{i:0;R:12435;i:1;R:799;}s:24:"8:interwikilist-linkname";a:2:{i:0;R:12435;i:1;R:799;}s:22:"8:interwikilist-target";a:2:{i:0;R:12435;i:1;R:799;}s:22:"8:interwikilist-filter";a:2:{i:0;R:12435;i:1;R:799;}s:22:"8:interwikilist-prefix";a:2:{i:0;R:12435;i:1;R:799;}s:13:"8:ipauth-desc";a:2:{i:0;s:10:"ext-ipauth";i:1;R:799;}s:20:"8:jsbreadcrumbs-desc";a:2:{i:0;s:17:"ext-jsbreadcrumbs";i:1;R:799;}s:25:"8:jsbreadcrumbs-separator";a:2:{i:0;R:12444;i:1;R:799;}s:35:"8:jsbreadcrumbs-leading-description";a:2:{i:0;R:12444;i:1;R:799;}s:21:"8:prefs-jsbreadcrumbs";a:2:{i:0;R:12444;i:1;R:799;}s:30:"8:prefs-jsbreadcrumbs-showsite";a:2:{i:0;R:12444;i:1;R:799;}s:32:"8:prefs-jsbreadcrumbs-showcrumbs";a:2:{i:0;R:12444;i:1;R:799;}s:36:"8:prefs-jsbreadcrumbs-numberofcrumbs";a:2:{i:0;R:12444;i:1;R:799;}s:40:"8:prefs-jsbreadcrumbs-numberofcrumbs-max";a:2:{i:0;R:12444;i:1;R:799;}s:12:"8:jskit-desc";a:2:{i:0;s:9:"ext-jskit";i:1;R:799;}s:18:"8:languageselector";a:2:{i:0;s:20:"ext-languageselector";i:1;R:799;}s:23:"8:languageselector-desc";a:2:{i:0;R:12455;i:1;R:799;}s:26:"8:languageselector-setlang";a:2:{i:0;R:12455;i:1;R:799;}s:19:"8:lastmodified-desc";a:2:{i:0;s:16:"ext-lastmodified";i:1;R:799;}s:14:"8:lastmodified";a:2:{i:0;R:12459;i:1;R:799;}s:28:"8:lastmodified-label-seconds";a:2:{i:0;R:12459;i:1;R:799;}s:28:"8:lastmodified-label-minutes";a:2:{i:0;R:12459;i:1;R:799;}s:26:"8:lastmodified-label-hours";a:2:{i:0;R:12459;i:1;R:799;}s:25:"8:lastmodified-label-days";a:2:{i:0;R:12459;i:1;R:799;}s:27:"8:lastmodified-label-months";a:2:{i:0;R:12459;i:1;R:799;}s:26:"8:lastmodified-label-years";a:2:{i:0;R:12459;i:1;R:799;}s:22:"8:lastmodified-options";a:2:{i:0;R:12459;i:1;R:799;}s:22:"8:lastmodified-display";a:2:{i:0;R:12459;i:1;R:799;}s:34:"8:lastmodified-display-range-value";a:2:{i:0;R:12459;i:1;R:799;}s:24:"8:lastmodified-title-tag";a:2:{i:0;R:12459;i:1;R:799;}s:22:"8:lastmodified-seconds";a:2:{i:0;R:12459;i:1;R:799;}s:22:"8:lastmodified-minutes";a:2:{i:0;R:12459;i:1;R:799;}s:20:"8:lastmodified-hours";a:2:{i:0;R:12459;i:1;R:799;}s:19:"8:lastmodified-days";a:2:{i:0;R:12459;i:1;R:799;}s:21:"8:lastmodified-months";a:2:{i:0;R:12459;i:1;R:799;}s:20:"8:lastmodified-years";a:2:{i:0;R:12459;i:1;R:799;}s:15:"8:lastuserlogin";a:2:{i:0;s:17:"ext-lastuserlogin";i:1;R:799;}s:20:"8:lastuserlogin-desc";a:2:{i:0;R:12478;i:1;R:799;}s:22:"8:lastuserlogin_userid";a:2:{i:0;R:12478;i:1;R:799;}s:24:"8:lastuserlogin_username";a:2:{i:0;R:12478;i:1;R:799;}s:25:"8:lastuserlogin_useremail";a:2:{i:0;R:12478;i:1;R:799;}s:25:"8:lastuserlogin_lastlogin";a:2:{i:0;R:12478;i:1;R:799;}s:23:"8:lastuserlogin_daysago";a:2:{i:0;R:12478;i:1;R:799;}s:17:"8:right-lastlogin";a:2:{i:0;R:12478;i:1;R:799;}s:18:"8:latexdoc_no_text";a:2:{i:0;s:12:"ext-latexdoc";i:1;R:799;}s:26:"8:latexdoc_cant_create_dir";a:2:{i:0;R:12487;i:1;R:799;}s:21:"8:latexdoc_cant_write";a:2:{i:0;R:12487;i:1;R:799;}s:16:"8:latexdoc_error";a:2:{i:0;R:12487;i:1;R:799;}s:18:"8:latexdoc_get_dvi";a:2:{i:0;R:12487;i:1;R:799;}s:18:"8:latexdoc_get_pdf";a:2:{i:0;R:12487;i:1;R:799;}s:15:"8:latexdoc-desc";a:2:{i:0;R:12487;i:1;R:799;}s:12:"8:lingo-desc";a:2:{i:0;s:9:"ext-lingo";i:1;R:799;}s:27:"8:lingo-terminologypagename";a:2:{i:0;R:12495;i:1;R:799;}s:25:"8:lingo-noterminologypage";a:2:{i:0;R:12495;i:1;R:799;}s:31:"8:lingo-terminologypagenotlocal";a:2:{i:0;R:12495;i:1;R:799;}s:17:"8:linkopenid-desc";a:2:{i:0;s:14:"ext-linkopenid";i:1;R:799;}s:18:"8:linkopenid-prefs";a:2:{i:0;R:12500;i:1;R:799;}s:26:"8:linkopenid-prefstext-pre";a:2:{i:0;R:12500;i:1;R:799;}s:29:"8:linkopenid-prefstext-openid";a:2:{i:0;R:12500;i:1;R:799;}s:28:"8:linkopenid-prefstext-v1url";a:2:{i:0;R:12500;i:1;R:799;}s:28:"8:linkopenid-prefstext-v2url";a:2:{i:0;R:12500;i:1;R:799;}s:30:"8:linkopenid-prefstext-xrdsurl";a:2:{i:0;R:12500;i:1;R:799;}s:18:"8:linksuggest-desc";a:2:{i:0;s:15:"ext-linksuggest";i:1;R:799;}s:24:"8:tog-disablelinksuggest";a:2:{i:0;R:12508;i:1;R:799;}s:15:"8:livelets-desc";a:2:{i:0;s:12:"ext-livelets";i:1;R:799;}s:20:"8:livetranslate-desc";a:2:{i:0;s:17:"ext-livetranslate";i:1;R:799;}s:17:"8:right-managetms";a:2:{i:0;R:12513;i:1;R:799;}s:18:"8:action-managetms";a:2:{i:0;R:12513;i:1;R:799;}s:16:"8:group-tmxadmin";a:2:{i:0;R:12513;i:1;R:799;}s:23:"8:group-tmxadmin-member";a:2:{i:0;R:12513;i:1;R:799;}s:20:"8:grouppage-tmxadmin";a:2:{i:0;R:12513;i:1;R:799;}s:20:"8:group-tmxadmin.css";a:2:{i:0;R:12513;i:1;R:799;}s:19:"8:group-tmxadmin.js";a:2:{i:0;R:12513;i:1;R:799;}s:28:"8:livetranslate-translate-to";a:2:{i:0;R:12513;i:1;R:799;}s:32:"8:livetranslate-button-translate";a:2:{i:0;R:12513;i:1;R:799;}s:34:"8:livetranslate-button-translating";a:2:{i:0;R:12513;i:1;R:799;}s:29:"8:livetranslate-button-revert";a:2:{i:0;R:12513;i:1;R:799;}s:32:"8:livetranslate-dictionary-error";a:2:{i:0;R:12513;i:1;R:799;}s:32:"8:livetranslate-dictionary-empty";a:2:{i:0;R:12513;i:1;R:799;}s:32:"8:livetranslate-dictionary-count";a:2:{i:0;R:12513;i:1;R:799;}s:42:"8:livetranslate-dictionary-unallowed-langs";a:2:{i:0;R:12513;i:1;R:799;}s:36:"8:livetranslate-dictionary-goto-edit";a:2:{i:0;R:12513;i:1;R:799;}s:23:"8:special-livetranslate";a:2:{i:0;R:12513;i:1;R:799;}s:26:"8:livetranslate-tmtype-ltf";a:2:{i:0;R:12513;i:1;R:799;}s:26:"8:livetranslate-tmtype-tmx";a:2:{i:0;R:12513;i:1;R:799;}s:27:"8:livetranslate-tmtype-gcsv";a:2:{i:0;R:12513;i:1;R:799;}s:34:"8:livetranslate-special-no-tms-yet";a:2:{i:0;R:12513;i:1;R:799;}s:30:"8:livetranslate-special-button";a:2:{i:0;R:12513;i:1;R:799;}s:28:"8:livetranslate-special-type";a:2:{i:0;R:12513;i:1;R:799;}s:32:"8:livetranslate-special-location";a:2:{i:0;R:12513;i:1;R:799;}s:30:"8:livetranslate-special-remove";a:2:{i:0;R:12513;i:1;R:799;}s:29:"8:livetranslate-special-local";a:2:{i:0;R:12513;i:1;R:799;}s:30:"8:livetranslate-special-add-tm";a:2:{i:0;R:12513;i:1;R:799;}s:35:"8:livetranslate-special-current-tms";a:2:{i:0;R:12513;i:1;R:799;}s:34:"8:livetranslate-special-tms-update";a:2:{i:0;R:12513;i:1;R:799;}s:30:"8:livetranslate-special-update";a:2:{i:0;R:12513;i:1;R:799;}s:41:"8:livetranslate-importtms-param-miscmatch";a:2:{i:0;R:12513;i:1;R:799;}s:25:"8:localisationupdate-desc";a:2:{i:0;s:22:"ext-localisationupdate";i:1;R:799;}s:18:"8:localjquery-desc";a:2:{i:0;s:15:"ext-localjquery";i:1;R:799;}s:15:"8:lockdown-desc";a:2:{i:0;s:12:"ext-lockdown";i:1;R:799;}s:17:"8:logentry-append";a:2:{i:0;s:12:"ext-logentry";i:1;R:799;}s:26:"8:logentry-parserhook-desc";a:2:{i:0;R:12552;i:1;R:799;}s:27:"8:logentry-specialpage-desc";a:2:{i:0;R:12552;i:1;R:799;}s:10:"8:logentry";a:2:{i:0;R:12552;i:1;R:799;}s:22:"8:logentry-invalidpage";a:2:{i:0;R:12552;i:1;R:799;}s:23:"8:logentry-invalidtoken";a:2:{i:0;R:12552;i:1;R:799;}s:20:"8:logofunctions-desc";a:2:{i:0;s:17:"ext-logofunctions";i:1;R:799;}s:28:"8:logofunctions-filenotexist";a:2:{i:0;R:12559;i:1;R:799;}s:12:"8:lookupuser";a:2:{i:0;s:14:"ext-lookupuser";i:1;R:799;}s:17:"8:lookupuser-desc";a:2:{i:0;R:12562;i:1;R:799;}s:18:"8:lookupuser-intro";a:2:{i:0;R:12562;i:1;R:799;}s:24:"8:lookupuser-nonexistent";a:2:{i:0;R:12562;i:1;R:799;}s:26:"8:lookupuser-authenticated";a:2:{i:0;R:12562;i:1;R:799;}s:30:"8:lookupuser-not-authenticated";a:2:{i:0;R:12562;i:1;R:799;}s:15:"8:lookupuser-id";a:2:{i:0;R:12562;i:1;R:799;}s:18:"8:lookupuser-email";a:2:{i:0;R:12562;i:1;R:799;}s:21:"8:lookupuser-no-email";a:2:{i:0;R:12562;i:1;R:799;}s:21:"8:lookupuser-realname";a:2:{i:0;R:12562;i:1;R:799;}s:25:"8:lookupuser-registration";a:2:{i:0;R:12562;i:1;R:799;}s:28:"8:lookupuser-no-registration";a:2:{i:0;R:12562;i:1;R:799;}s:20:"8:lookupuser-touched";a:2:{i:0;R:12562;i:1;R:799;}s:31:"8:lookupuser-info-authenticated";a:2:{i:0;R:12562;i:1;R:799;}s:24:"8:lookupuser-useroptions";a:2:{i:0;R:12562;i:1;R:799;}s:27:"8:lookupuser-foundmoreusers";a:2:{i:0;R:12562;i:1;R:799;}s:18:"8:right-lookupuser";a:2:{i:0;R:12562;i:1;R:799;}s:12:"8:loops-desc";a:2:{i:0;s:9:"ext-loops";i:1;R:799;}s:11:"8:loops_max";a:2:{i:0;R:12580;i:1;R:799;}s:10:"8:lua_desc";a:2:{i:0;s:7:"ext-lua";i:1;R:799;}s:11:"8:lua_error";a:2:{i:0;R:12583;i:1;R:799;}s:24:"8:lua_extension_notfound";a:2:{i:0;R:12583;i:1;R:799;}s:21:"8:lua_interp_notfound";a:2:{i:0;R:12583;i:1;R:799;}s:20:"8:lua_error_internal";a:2:{i:0;R:12583;i:1;R:799;}s:24:"8:lua_overflow_recursion";a:2:{i:0;R:12583;i:1;R:799;}s:18:"8:lua_overflow_loc";a:2:{i:0;R:12583;i:1;R:799;}s:19:"8:lua_overflow_time";a:2:{i:0;R:12583;i:1;R:799;}s:30:"8:magicnonumberedheadings-desc";a:2:{i:0;s:27:"ext-magicnonumberedheadings";i:1;R:799;}s:13:"8:maintenance";a:2:{i:0;s:15:"ext-maintenance";i:1;R:799;}s:18:"8:maintenance-desc";a:2:{i:0;R:12594;i:1;R:799;}s:19:"8:right-maintenance";a:2:{i:0;R:12594;i:1;R:799;}s:22:"8:maintenance-backlink";a:2:{i:0;R:12594;i:1;R:799;}s:20:"8:maintenance-header";a:2:{i:0;R:12594;i:1;R:799;}s:26:"8:maintenance-error-badini";a:2:{i:0;R:12594;i:1;R:799;}s:31:"8:maintenance-error-invalidtype";a:2:{i:0;R:12594;i:1;R:799;}s:27:"8:maintenance-error-badargs";a:2:{i:0;R:12594;i:1;R:799;}s:26:"8:maintenance-generic-done";a:2:{i:0;R:12594;i:1;R:799;}s:30:"8:maintenance-generic-username";a:2:{i:0;R:12594;i:1;R:799;}s:30:"8:maintenance-generic-password";a:2:{i:0;R:12594;i:1;R:799;}s:28:"8:maintenance-generic-reason";a:2:{i:0;R:12594;i:1;R:799;}s:29:"8:maintenance-generic-notrans";a:2:{i:0;R:12594;i:1;R:799;}s:34:"8:maintenance-cleanuptable-dry-run";a:2:{i:0;R:12594;i:1;R:799;}s:32:"8:maintenance-cleanuptable-check";a:2:{i:0;R:12594;i:1;R:799;}s:35:"8:maintenance-cleanuptable-checkfix";a:2:{i:0;R:12594;i:1;R:799;}s:35:"8:maintenance-cleanuptable-progress";a:2:{i:0;R:12594;i:1;R:799;}s:39:"8:maintenance-cleanuptable-missingparam";a:2:{i:0;R:12594;i:1;R:799;}s:37:"8:maintenance-cleanuptable-processing";a:2:{i:0;R:12594;i:1;R:799;}s:35:"8:maintenance-cleanuptable-finished";a:2:{i:0;R:12594;i:1;R:799;}s:26:"8:maintenance-option-quiet";a:2:{i:0;R:12594;i:1;R:799;}s:28:"8:maintenance-option-globals";a:2:{i:0;R:12594;i:1;R:799;}s:28:"8:maintenance-option-confirm";a:2:{i:0;R:12594;i:1;R:799;}s:31:"8:maintenance-option-batch-size";a:2:{i:0;R:12594;i:1;R:799;}s:29:"8:maintenance-option-required";a:2:{i:0;R:12594;i:1;R:799;}s:29:"8:maintenance-option-optional";a:2:{i:0;R:12594;i:1;R:799;}s:28:"8:maintenance-output-success";a:2:{i:0;R:12594;i:1;R:799;}s:28:"8:maintenance-output-failure";a:2:{i:0;R:12594;i:1;R:799;}s:26:"8:maintenance-attachlatest";a:2:{i:0;R:12594;i:1;R:799;}s:31:"8:maintenance-attachlatest-desc";a:2:{i:0;R:12594;i:1;R:799;}s:37:"8:maintenance-attachlatest-option-fix";a:2:{i:0;R:12594;i:1;R:799;}s:39:"8:maintenance-attachlatest-output-begin";a:2:{i:0;R:12594;i:1;R:799;}s:40:"8:maintenance-attachlatest-output-notime";a:2:{i:0;R:12594;i:1;R:799;}s:39:"8:maintenance-attachlatest-output-norev";a:2:{i:0;R:12594;i:1;R:799;}s:39:"8:maintenance-attachlatest-output-found";a:2:{i:0;R:12594;i:1;R:799;}s:38:"8:maintenance-attachlatest-output-done";a:2:{i:0;R:12594;i:1;R:799;}s:40:"8:maintenance-attachlatest-output-dryrun";a:2:{i:0;R:12594;i:1;R:799;}s:28:"8:maintenance-benchmarkpurge";a:2:{i:0;R:12594;i:1;R:799;}s:33:"8:maintenance-benchmarkpurge-desc";a:2:{i:0;R:12594;i:1;R:799;}s:41:"8:maintenance-benchmarkpurge-option-count";a:2:{i:0;R:12594;i:1;R:799;}s:42:"8:maintenance-benchmarkpurge-error-nosquid";a:2:{i:0;R:12594;i:1;R:799;}s:45:"8:maintenance-benchmarkpurge-output-numsquids";a:2:{i:0;R:12594;i:1;R:799;}s:41:"8:maintenance-benchmarkpurge-output-trial";a:2:{i:0;R:12594;i:1;R:799;}s:28:"8:maintenance-changepassword";a:2:{i:0;R:12594;i:1;R:799;}s:33:"8:maintenance-changepassword-desc";a:2:{i:0;R:12594;i:1;R:799;}s:40:"8:maintenance-changepassword-option-user";a:2:{i:0;R:12594;i:1;R:799;}s:44:"8:maintenance-changepassword-option-password";a:2:{i:0;R:12594;i:1;R:799;}s:41:"8:maintenance-changepassword-error-nouser";a:2:{i:0;R:12594;i:1;R:799;}s:39:"8:maintenance-changepassword-output-set";a:2:{i:0;R:12594;i:1;R:799;}s:29:"8:maintenance-checkautoloader";a:2:{i:0;R:12594;i:1;R:799;}s:34:"8:maintenance-checkautoloader-desc";a:2:{i:0;R:12594;i:1;R:799;}s:42:"8:maintenance-checkautoloader-output-list1";a:2:{i:0;R:12594;i:1;R:799;}s:42:"8:maintenance-checkautoloader-output-list2";a:2:{i:0;R:12594;i:1;R:799;}s:31:"8:maintenance-checkbadredirects";a:2:{i:0;R:12594;i:1;R:799;}s:36:"8:maintenance-checkbadredirects-desc";a:2:{i:0;R:12594;i:1;R:799;}s:45:"8:maintenance-checkbadredirects-output-header";a:2:{i:0;R:12594;i:1;R:799;}s:44:"8:maintenance-checkbadredirects-output-found";a:2:{i:0;R:12594;i:1;R:799;}s:45:"8:maintenance-checkbadredirects-output-footer";a:2:{i:0;R:12594;i:1;R:799;}s:25:"8:maintenance-checkimages";a:2:{i:0;R:12594;i:1;R:799;}s:30:"8:maintenance-checkimages-desc";a:2:{i:0;R:12594;i:1;R:799;}s:41:"8:maintenance-checkimages-output-noaccess";a:2:{i:0;R:12594;i:1;R:799;}s:40:"8:maintenance-checkimages-output-missing";a:2:{i:0;R:12594;i:1;R:799;}s:38:"8:maintenance-checkimages-output-isdir";a:2:{i:0;R:12594;i:1;R:799;}s:42:"8:maintenance-checkimages-output-truncated";a:2:{i:0;R:12594;i:1;R:799;}s:41:"8:maintenance-checkimages-output-mismatch";a:2:{i:0;R:12594;i:1;R:799;}s:37:"8:maintenance-checkimages-output-good";a:2:{i:0;R:12594;i:1;R:799;}s:25:"8:maintenance-checksyntax";a:2:{i:0;R:12594;i:1;R:799;}s:30:"8:maintenance-checksyntax-desc";a:2:{i:0;R:12594;i:1;R:799;}s:48:"8:maintenance-checksyntax-option-with-extensions";a:2:{i:0;R:12594;i:1;R:799;}s:37:"8:maintenance-checksyntax-option-path";a:2:{i:0;R:12594;i:1;R:799;}s:42:"8:maintenance-checksyntax-option-list-file";a:2:{i:0;R:12594;i:1;R:799;}s:41:"8:maintenance-checksyntax-option-modified";a:2:{i:0;R:12594;i:1;R:799;}s:44:"8:maintenance-checksyntax-option-syntax-only";a:2:{i:0;R:12594;i:1;R:799;}s:41:"8:maintenance-checksyntax-output-parsekit";a:2:{i:0;R:12594;i:1;R:799;}s:37:"8:maintenance-checksyntax-output-phpl";a:2:{i:0;R:12594;i:1;R:799;}s:39:"8:maintenance-checksyntax-output-footer";a:2:{i:0;R:12594;i:1;R:799;}s:40:"8:maintenance-checksyntax-output-svnlist";a:2:{i:0;R:12594;i:1;R:799;}s:37:"8:maintenance-checksyntax-output-done";a:2:{i:0;R:12594;i:1;R:799;}s:42:"8:maintenance-checksyntax-output-buildlist";a:2:{i:0;R:12594;i:1;R:799;}s:38:"8:maintenance-checksyntax-output-error";a:2:{i:0;R:12594;i:1;R:799;}s:40:"8:maintenance-checksyntax-output-warning";a:2:{i:0;R:12594;i:1;R:799;}s:38:"8:maintenance-checksyntax-error-nofile";a:2:{i:0;R:12594;i:1;R:799;}s:40:"8:maintenance-checksyntax-error-cantopen";a:2:{i:0;R:12594;i:1;R:799;}s:38:"8:maintenance-checksyntax-error-svnerr";a:2:{i:0;R:12594;i:1;R:799;}s:28:"8:maintenance-checkusernames";a:2:{i:0;R:12594;i:1;R:799;}s:33:"8:maintenance-checkusernames-desc";a:2:{i:0;R:12594;i:1;R:799;}s:43:"8:maintenance-checkusernames-error-notvalid";a:2:{i:0;R:12594;i:1;R:799;}s:25:"8:maintenance-cleanupcaps";a:2:{i:0;R:12594;i:1;R:799;}s:30:"8:maintenance-cleanupcaps-desc";a:2:{i:0;R:12594;i:1;R:799;}s:40:"8:maintenance-cleanupcaps-option-dry-run";a:2:{i:0;R:12594;i:1;R:799;}s:42:"8:maintenance-cleanupcaps-option-namespace";a:2:{i:0;R:12594;i:1;R:799;}s:40:"8:maintenance-cleanupcaps-output-islower";a:2:{i:0;R:12594;i:1;R:799;}s:38:"8:maintenance-cleanupcaps-output-clash";a:2:{i:0;R:12594;i:1;R:799;}s:39:"8:maintenance-cleanupcaps-output-dryrun";a:2:{i:0;R:12594;i:1;R:799;}s:38:"8:maintenance-cleanupcaps-output-moved";a:2:{i:0;R:12594;i:1;R:799;}s:38:"8:maintenance-cleanupcaps-output-check";a:2:{i:0;R:12594;i:1;R:799;}s:41:"8:maintenance-cleanupcaps-output-checkfix";a:2:{i:0;R:12594;i:1;R:799;}s:41:"8:maintenance-cleanupcaps-output-progress";a:2:{i:0;R:12594;i:1;R:799;}s:43:"8:maintenance-cleanupcaps-output-processing";a:2:{i:0;R:12594;i:1;R:799;}s:41:"8:maintenance-cleanupcaps-output-finished";a:2:{i:0;R:12594;i:1;R:799;}s:44:"8:maintenance-cleanupcaps-error-missingparam";a:2:{i:0;R:12594;i:1;R:799;}s:38:"8:maintenance-cleanupcaps-error-noneed";a:2:{i:0;R:12594;i:1;R:799;}s:25:"8:maintenance-cleanupspam";a:2:{i:0;R:12594;i:1;R:799;}s:30:"8:maintenance-cleanupspam-desc";a:2:{i:0;R:12594;i:1;R:799;}s:41:"8:maintenance-cleanupspam-option-hostname";a:2:{i:0;R:12594;i:1;R:799;}s:38:"8:maintenance-cleanupspam-output-found";a:2:{i:0;R:12594;i:1;R:799;}s:37:"8:maintenance-cleanupspam-output-done";a:2:{i:0;R:12594;i:1;R:799;}s:38:"8:maintenance-cleanupspam-output-false";a:2:{i:0;R:12594;i:1;R:799;}s:41:"8:maintenance-cleanupspam-output-blanking";a:2:{i:0;R:12594;i:1;R:799;}s:42:"8:maintenance-cleanupspam-output-reverting";a:2:{i:0;R:12594;i:1;R:799;}s:37:"8:maintenance-cleanupspam-output-page";a:2:{i:0;R:12594;i:1;R:799;}s:39:"8:maintenance-cleanupspam-error-invalid";a:2:{i:0;R:12594;i:1;R:799;}s:36:"8:maintenance-cleanupspam-error-noid";a:2:{i:0;R:12594;i:1;R:799;}s:35:"8:maintenance-clear_interwiki_cache";a:2:{i:0;R:12594;i:1;R:799;}s:40:"8:maintenance-clear_interwiki_cache-desc";a:2:{i:0;R:12594;i:1;R:799;}s:40:"8:maintenance-clear_interwiki_cache-done";a:2:{i:0;R:12594;i:1;R:799;}s:38:"8:maintenance-clear_interwiki_cache-db";a:2:{i:0;R:12594;i:1;R:799;}s:30:"8:maintenance-createandpromote";a:2:{i:0;R:12594;i:1;R:799;}s:35:"8:maintenance-createandpromote-desc";a:2:{i:0;R:12594;i:1;R:799;}s:48:"8:maintenance-createandpromote-option-bureaucrat";a:2:{i:0;R:12594;i:1;R:799;}s:46:"8:maintenance-createandpromote-option-username";a:2:{i:0;R:12594;i:1;R:799;}s:46:"8:maintenance-createandpromote-option-password";a:2:{i:0;R:12594;i:1;R:799;}s:46:"8:maintenance-createandpromote-output-creating";a:2:{i:0;R:12594;i:1;R:799;}s:42:"8:maintenance-createandpromote-output-done";a:2:{i:0;R:12594;i:1;R:799;}s:44:"8:maintenance-createandpromote-error-invalid";a:2:{i:0;R:12594;i:1;R:799;}s:43:"8:maintenance-createandpromote-error-exists";a:2:{i:0;R:12594;i:1;R:799;}s:45:"8:maintenance-createandpromote-error-password";a:2:{i:0;R:12594;i:1;R:799;}s:25:"8:maintenance-deletebatch";a:2:{i:0;R:12594;i:1;R:799;}s:30:"8:maintenance-deletebatch-desc";a:2:{i:0;R:12594;i:1;R:799;}s:28:"8:maintenance-deleterevision";a:2:{i:0;R:12594;i:1;R:799;}s:33:"8:maintenance-deleterevision-desc";a:2:{i:0;R:12594;i:1;R:799;}s:27:"8:maintenance-initeditcount";a:2:{i:0;R:12594;i:1;R:799;}s:32:"8:maintenance-initeditcount-desc";a:2:{i:0;R:12594;i:1;R:799;}s:23:"8:maintenance-initstats";a:2:{i:0;R:12594;i:1;R:799;}s:28:"8:maintenance-initstats-desc";a:2:{i:0;R:12594;i:1;R:799;}s:23:"8:maintenance-movebatch";a:2:{i:0;R:12594;i:1;R:799;}s:28:"8:maintenance-movebatch-desc";a:2:{i:0;R:12594;i:1;R:799;}s:32:"8:maintenance-reassignedits-desc";a:2:{i:0;R:12594;i:1;R:799;}s:21:"8:maintenance-runjobs";a:2:{i:0;R:12594;i:1;R:799;}s:26:"8:maintenance-runjobs-desc";a:2:{i:0;R:12594;i:1;R:799;}s:36:"8:maintenance-runjobs-option-maxjobs";a:2:{i:0;R:12594;i:1;R:799;}s:33:"8:maintenance-runjobs-option-type";a:2:{i:0;R:12594;i:1;R:799;}s:34:"8:maintenance-runjobs-option-procs";a:2:{i:0;R:12594;i:1;R:799;}s:38:"8:maintenance-runjobs-option-exclusive";a:2:{i:0;R:12594;i:1;R:799;}s:32:"8:maintenance-runjobs-output-job";a:2:{i:0;R:12594;i:1;R:799;}s:40:"8:maintenance-runjobs-error-invalidprocs";a:2:{i:0;R:12594;i:1;R:799;}s:22:"8:maintenance-showjobs";a:2:{i:0;R:12594;i:1;R:799;}s:27:"8:maintenance-showjobs-desc";a:2:{i:0;R:12594;i:1;R:799;}s:35:"8:maintenance-showjobs-option-group";a:2:{i:0;R:12594;i:1;R:799;}s:33:"8:maintenance-showjobs-output-job";a:2:{i:0;R:12594;i:1;R:799;}s:17:"8:maintenance-sql";a:2:{i:0;R:12594;i:1;R:799;}s:22:"8:maintenance-sql-desc";a:2:{i:0;R:12594;i:1;R:799;}s:29:"8:maintenance-sql-option-file";a:2:{i:0;R:12594;i:1;R:799;}s:28:"8:maintenance-sql-output-row";a:2:{i:0;R:12594;i:1;R:799;}s:28:"8:maintenance-sql-output-aff";a:2:{i:0;R:12594;i:1;R:799;}s:32:"8:maintenance-sql-error-cantopen";a:2:{i:0;R:12594;i:1;R:799;}s:27:"8:maintenance-sql-error-sql";a:2:{i:0;R:12594;i:1;R:799;}s:19:"8:maintenance-stats";a:2:{i:0;R:12594;i:1;R:799;}s:24:"8:maintenance-stats-desc";a:2:{i:0;R:12594;i:1;R:799;}s:18:"8:maintenance-eval";a:2:{i:0;R:12594;i:1;R:799;}s:23:"8:maintenance-eval-desc";a:2:{i:0;R:12594;i:1;R:799;}s:20:"8:maintenance-update";a:2:{i:0;R:12594;i:1;R:799;}s:21:"8:maintenance-noviews";a:2:{i:0;R:12594;i:1;R:799;}s:25:"8:maintenance-invalidname";a:2:{i:0;R:12594;i:1;R:799;}s:24:"8:maintenance-userexists";a:2:{i:0;R:12594;i:1;R:799;}s:26:"8:maintenance-invalidtitle";a:2:{i:0;R:12594;i:1;R:799;}s:26:"8:maintenance-titlenoexist";a:2:{i:0;R:12594;i:1;R:799;}s:20:"8:maintenance-failed";a:2:{i:0;R:12594;i:1;R:799;}s:21:"8:maintenance-deleted";a:2:{i:0;R:12594;i:1;R:799;}s:23:"8:maintenance-revdelete";a:2:{i:0;R:12594;i:1;R:799;}s:25:"8:maintenance-revnotfound";a:2:{i:0;R:12594;i:1;R:799;}s:25:"8:maintenance-stats-edits";a:2:{i:0;R:12594;i:1;R:799;}s:28:"8:maintenance-stats-articles";a:2:{i:0;R:12594;i:1;R:799;}s:25:"8:maintenance-stats-pages";a:2:{i:0;R:12594;i:1;R:799;}s:25:"8:maintenance-stats-users";a:2:{i:0;R:12594;i:1;R:799;}s:26:"8:maintenance-stats-admins";a:2:{i:0;R:12594;i:1;R:799;}s:26:"8:maintenance-stats-images";a:2:{i:0;R:12594;i:1;R:799;}s:25:"8:maintenance-stats-views";a:2:{i:0;R:12594;i:1;R:799;}s:26:"8:maintenance-stats-update";a:2:{i:0;R:12594;i:1;R:799;}s:18:"8:maintenance-move";a:2:{i:0;R:12594;i:1;R:799;}s:22:"8:maintenance-movefail";a:2:{i:0;R:12594;i:1;R:799;}s:19:"8:maintenance-error";a:2:{i:0;R:12594;i:1;R:799;}s:23:"8:maintenance-memc-fake";a:2:{i:0;R:12594;i:1;R:799;}s:27:"8:maintenance-memc-requests";a:2:{i:0;R:12594;i:1;R:799;}s:30:"8:maintenance-memc-withsession";a:2:{i:0;R:12594;i:1;R:799;}s:33:"8:maintenance-memc-withoutsession";a:2:{i:0;R:12594;i:1;R:799;}s:24:"8:maintenance-memc-total";a:2:{i:0;R:12594;i:1;R:799;}s:30:"8:maintenance-memc-parsercache";a:2:{i:0;R:12594;i:1;R:799;}s:23:"8:maintenance-memc-hits";a:2:{i:0;R:12594;i:1;R:799;}s:26:"8:maintenance-memc-invalid";a:2:{i:0;R:12594;i:1;R:799;}s:26:"8:maintenance-memc-expired";a:2:{i:0;R:12594;i:1;R:799;}s:25:"8:maintenance-memc-absent";a:2:{i:0;R:12594;i:1;R:799;}s:23:"8:maintenance-memc-stub";a:2:{i:0;R:12594;i:1;R:799;}s:29:"8:maintenance-memc-imagecache";a:2:{i:0;R:12594;i:1;R:799;}s:25:"8:maintenance-memc-misses";a:2:{i:0;R:12594;i:1;R:799;}s:26:"8:maintenance-memc-updates";a:2:{i:0;R:12594;i:1;R:799;}s:30:"8:maintenance-memc-uncacheable";a:2:{i:0;R:12594;i:1;R:799;}s:28:"8:maintenance-memc-diffcache";a:2:{i:0;R:12594;i:1;R:799;}s:27:"8:maintenance-reassignedits";a:2:{i:0;R:12594;i:1;R:799;}s:21:"8:maintenance-re-from";a:2:{i:0;R:12594;i:1;R:799;}s:19:"8:maintenance-re-to";a:2:{i:0;R:12594;i:1;R:799;}s:22:"8:maintenance-re-force";a:2:{i:0;R:12594;i:1;R:799;}s:19:"8:maintenance-re-rc";a:2:{i:0;R:12594;i:1;R:799;}s:23:"8:maintenance-re-report";a:2:{i:0;R:12594;i:1;R:799;}s:19:"8:maintenance-re-nf";a:2:{i:0;R:12594;i:1;R:799;}s:19:"8:maintenance-re-rr";a:2:{i:0;R:12594;i:1;R:799;}s:19:"8:maintenance-re-ce";a:2:{i:0;R:12594;i:1;R:799;}s:19:"8:maintenance-re-de";a:2:{i:0;R:12594;i:1;R:799;}s:20:"8:maintenance-re-rce";a:2:{i:0;R:12594;i:1;R:799;}s:22:"8:maintenance-re-total";a:2:{i:0;R:12594;i:1;R:799;}s:19:"8:maintenance-re-re";a:2:{i:0;R:12594;i:1;R:799;}s:11:"8:maps-desc";a:2:{i:0;s:8:"ext-maps";i:1;R:799;}s:15:"8:right-geocode";a:2:{i:0;R:12806;i:1;R:799;}s:10:"8:maps_map";a:2:{i:0;R:12806;i:1;R:799;}s:18:"8:maps-loading-map";a:2:{i:0;R:12806;i:1;R:799;}s:18:"8:maps-load-failed";a:2:{i:0;R:12806;i:1;R:799;}s:14:"8:maps-markers";a:2:{i:0;R:12806;i:1;R:799;}s:24:"8:maps-copycoords-prompt";a:2:{i:0;R:12806;i:1;R:799;}s:36:"8:maps-clustering-unsupportedservice";a:2:{i:0;R:12806;i:1;R:799;}s:13:"8:maps-others";a:2:{i:0;R:12806;i:1;R:799;}s:15:"8:maps-ns-layer";a:2:{i:0;R:12806;i:1;R:799;}s:20:"8:maps-ns-layer-talk";a:2:{i:0;R:12806;i:1;R:799;}s:21:"8:maps-layer-property";a:2:{i:0;R:12806;i:1;R:799;}s:18:"8:maps-layer-value";a:2:{i:0;R:12806;i:1;R:799;}s:19:"8:maps-layer-errors";a:2:{i:0;R:12806;i:1;R:799;}s:29:"8:maps-error-invalid-layerdef";a:2:{i:0;R:12806;i:1;R:799;}s:30:"8:maps-error-invalid-layertype";a:2:{i:0;R:12806;i:1;R:799;}s:25:"8:maps-error-no-layertype";a:2:{i:0;R:12806;i:1;R:799;}s:32:"8:validation-error-invalid-layer";a:2:{i:0;R:12806;i:1;R:799;}s:33:"8:validation-error-invalid-layers";a:2:{i:0;R:12806;i:1;R:799;}s:20:"8:maps-layer-of-type";a:2:{i:0;R:12806;i:1;R:799;}s:30:"8:maps-layer-type-supported-by";a:2:{i:0;R:12806;i:1;R:799;}s:30:"8:maps-coordinates-description";a:2:{i:0;R:12806;i:1;R:799;}s:29:"8:maps-displaymap-description";a:2:{i:0;R:12806;i:1;R:799;}s:31:"8:maps-displaypoint-description";a:2:{i:0;R:12806;i:1;R:799;}s:27:"8:maps-distance-description";a:2:{i:0;R:12806;i:1;R:799;}s:34:"8:maps-finddestination-description";a:2:{i:0;R:12806;i:1;R:799;}s:26:"8:maps-geocode-description";a:2:{i:0;R:12806;i:1;R:799;}s:30:"8:maps-geodistance-description";a:2:{i:0;R:12806;i:1;R:799;}s:26:"8:maps-mapsdoc-description";a:2:{i:0;R:12806;i:1;R:799;}s:26:"8:maps-mapsdoc-par-service";a:2:{i:0;R:12806;i:1;R:799;}s:27:"8:maps-mapsdoc-par-language";a:2:{i:0;R:12806;i:1;R:799;}s:31:"8:maps-coordinates-par-location";a:2:{i:0;R:12806;i:1;R:799;}s:29:"8:maps-coordinates-par-format";a:2:{i:0;R:12806;i:1;R:799;}s:34:"8:maps-coordinates-par-directional";a:2:{i:0;R:12806;i:1;R:799;}s:28:"8:maps-distance-par-distance";a:2:{i:0;R:12806;i:1;R:799;}s:28:"8:maps-distance-par-decimals";a:2:{i:0;R:12806;i:1;R:799;}s:24:"8:maps-distance-par-unit";a:2:{i:0;R:12806;i:1;R:799;}s:35:"8:maps-finddestination-par-location";a:2:{i:0;R:12806;i:1;R:799;}s:34:"8:maps-finddestination-par-bearing";a:2:{i:0;R:12806;i:1;R:799;}s:35:"8:maps-finddestination-par-distance";a:2:{i:0;R:12806;i:1;R:799;}s:33:"8:maps-finddestination-par-format";a:2:{i:0;R:12806;i:1;R:799;}s:38:"8:maps-finddestination-par-directional";a:2:{i:0;R:12806;i:1;R:799;}s:43:"8:maps-finddestination-par-allowcoordinates";a:2:{i:0;R:12806;i:1;R:799;}s:37:"8:maps-finddestination-par-geoservice";a:2:{i:0;R:12806;i:1;R:799;}s:41:"8:maps-finddestination-par-mappingservice";a:2:{i:0;R:12806;i:1;R:799;}s:27:"8:maps-geocode-par-location";a:2:{i:0;R:12806;i:1;R:799;}s:33:"8:maps-geocode-par-mappingservice";a:2:{i:0;R:12806;i:1;R:799;}s:29:"8:maps-geocode-par-geoservice";a:2:{i:0;R:12806;i:1;R:799;}s:35:"8:maps-geocode-par-allowcoordinates";a:2:{i:0;R:12806;i:1;R:799;}s:25:"8:maps-geocode-par-format";a:2:{i:0;R:12806;i:1;R:799;}s:30:"8:maps-geocode-par-directional";a:2:{i:0;R:12806;i:1;R:799;}s:32:"8:maps-geodistance-par-location1";a:2:{i:0;R:12806;i:1;R:799;}s:32:"8:maps-geodistance-par-location2";a:2:{i:0;R:12806;i:1;R:799;}s:27:"8:maps-geodistance-par-unit";a:2:{i:0;R:12806;i:1;R:799;}s:31:"8:maps-geodistance-par-decimals";a:2:{i:0;R:12806;i:1;R:799;}s:37:"8:maps-geodistance-par-mappingservice";a:2:{i:0;R:12806;i:1;R:799;}s:33:"8:maps-geodistance-par-geoservice";a:2:{i:0;R:12806;i:1;R:799;}s:36:"8:maps-displaymap-par-mappingservice";a:2:{i:0;R:12806;i:1;R:799;}s:33:"8:maps-displaymap-par-coordinates";a:2:{i:0;R:12806;i:1;R:799;}s:29:"8:maps-displaypoints-par-zoom";a:2:{i:0;R:12806;i:1;R:799;}s:39:"8:maps-displaypoints-par-mappingservice";a:2:{i:0;R:12806;i:1;R:799;}s:36:"8:maps-displaypoints-par-coordinates";a:2:{i:0;R:12806;i:1;R:799;}s:31:"8:maps-displaypoints-par-centre";a:2:{i:0;R:12806;i:1;R:799;}s:30:"8:maps-displaypoints-par-title";a:2:{i:0;R:12806;i:1;R:799;}s:30:"8:maps-displaypoints-par-label";a:2:{i:0;R:12806;i:1;R:799;}s:29:"8:maps-displaypoints-par-icon";a:2:{i:0;R:12806;i:1;R:799;}s:35:"8:validation-error-invalid-location";a:2:{i:0;R:12806;i:1;R:799;}s:36:"8:validation-error-invalid-locations";a:2:{i:0;R:12806;i:1;R:799;}s:32:"8:validation-error-invalid-width";a:2:{i:0;R:12806;i:1;R:799;}s:33:"8:validation-error-invalid-height";a:2:{i:0;R:12806;i:1;R:799;}s:35:"8:validation-error-invalid-distance";a:2:{i:0;R:12806;i:1;R:799;}s:36:"8:validation-error-invalid-distances";a:2:{i:0;R:12806;i:1;R:799;}s:32:"8:validation-error-invalid-image";a:2:{i:0;R:12806;i:1;R:799;}s:33:"8:validation-error-invalid-images";a:2:{i:0;R:12806;i:1;R:799;}s:35:"8:validation-error-invalid-goverlay";a:2:{i:0;R:12806;i:1;R:799;}s:36:"8:validation-error-invalid-goverlays";a:2:{i:0;R:12806;i:1;R:799;}s:37:"8:validation-error-invalid-line-param";a:2:{i:0;R:12806;i:1;R:799;}s:41:"8:validation-error-invalid-polyline-param";a:2:{i:0;R:12806;i:1;R:799;}s:16:"8:maps-abb-north";a:2:{i:0;R:12806;i:1;R:799;}s:15:"8:maps-abb-east";a:2:{i:0;R:12806;i:1;R:799;}s:16:"8:maps-abb-south";a:2:{i:0;R:12806;i:1;R:799;}s:15:"8:maps-abb-west";a:2:{i:0;R:12806;i:1;R:799;}s:15:"8:maps-latitude";a:2:{i:0;R:12806;i:1;R:799;}s:16:"8:maps-longitude";a:2:{i:0;R:12806;i:1;R:799;}s:26:"8:maps-invalid-coordinates";a:2:{i:0;R:12806;i:1;R:799;}s:26:"8:maps_coordinates_missing";a:2:{i:0;R:12806;i:1;R:799;}s:23:"8:maps_geocoding_failed";a:2:{i:0;R:12806;i:1;R:799;}s:27:"8:maps_geocoding_failed_for";a:2:{i:0;R:12806;i:1;R:799;}s:26:"8:maps_unrecognized_coords";a:2:{i:0;R:12806;i:1;R:799;}s:30:"8:maps_unrecognized_coords_for";a:2:{i:0;R:12806;i:1;R:799;}s:30:"8:maps_map_cannot_be_displayed";a:2:{i:0;R:12806;i:1;R:799;}s:29:"8:maps-geocoder-not-available";a:2:{i:0;R:12806;i:1;R:799;}s:18:"8:maps_googlemaps2";a:2:{i:0;R:12806;i:1;R:799;}s:18:"8:maps_googlemaps3";a:2:{i:0;R:12806;i:1;R:799;}s:16:"8:maps_yahoomaps";a:2:{i:0;R:12806;i:1;R:799;}s:17:"8:maps_openlayers";a:2:{i:0;R:12806;i:1;R:799;}s:10:"8:maps_osm";a:2:{i:0;R:12806;i:1;R:799;}s:24:"8:maps_click_to_activate";a:2:{i:0;R:12806;i:1;R:799;}s:17:"8:maps_centred_on";a:2:{i:0;R:12806;i:1;R:799;}s:20:"8:maps-par-resizable";a:2:{i:0;R:12806;i:1;R:799;}s:21:"8:maps-par-geoservice";a:2:{i:0;R:12806;i:1;R:799;}s:15:"8:maps-par-zoom";a:2:{i:0;R:12806;i:1;R:799;}s:16:"8:maps-par-width";a:2:{i:0;R:12806;i:1;R:799;}s:17:"8:maps-par-height";a:2:{i:0;R:12806;i:1;R:799;}s:34:"8:maps-googlemaps2-incompatbrowser";a:2:{i:0;R:12806;i:1;R:799;}s:15:"8:maps_overlays";a:2:{i:0;R:12806;i:1;R:799;}s:13:"8:maps_photos";a:2:{i:0;R:12806;i:1;R:799;}s:13:"8:maps_videos";a:2:{i:0;R:12806;i:1;R:799;}s:16:"8:maps_wikipedia";a:2:{i:0;R:12806;i:1;R:799;}s:14:"8:maps_webcams";a:2:{i:0;R:12806;i:1;R:799;}s:27:"8:maps-googlemaps2-par-type";a:2:{i:0;R:12806;i:1;R:799;}s:28:"8:maps-googlemaps2-par-types";a:2:{i:0;R:12806;i:1;R:799;}s:31:"8:maps-googlemaps2-par-controls";a:2:{i:0;R:12806;i:1;R:799;}s:31:"8:maps-googlemaps2-par-autozoom";a:2:{i:0;R:12806;i:1;R:799;}s:26:"8:maps-googlemaps2-par-kml";a:2:{i:0;R:12806;i:1;R:799;}s:31:"8:maps-googlemaps2-par-overlays";a:2:{i:0;R:12806;i:1;R:799;}s:34:"8:maps-googlemaps3-incompatbrowser";a:2:{i:0;R:12806;i:1;R:799;}s:27:"8:maps-googlemaps3-par-type";a:2:{i:0;R:12806;i:1;R:799;}s:28:"8:maps-googlemaps3-par-types";a:2:{i:0;R:12806;i:1;R:799;}s:29:"8:maps-googlemaps3-par-layers";a:2:{i:0;R:12806;i:1;R:799;}s:31:"8:maps-googlemaps3-par-controls";a:2:{i:0;R:12806;i:1;R:799;}s:32:"8:maps-googlemaps3-par-zoomstyle";a:2:{i:0;R:12806;i:1;R:799;}s:32:"8:maps-googlemaps3-par-typestyle";a:2:{i:0;R:12806;i:1;R:799;}s:38:"8:maps-googlemaps3-par-autoinfowindows";a:2:{i:0;R:12806;i:1;R:799;}s:26:"8:maps-googlemaps3-par-kml";a:2:{i:0;R:12806;i:1;R:799;}s:27:"8:maps-googlemaps3-par-gkml";a:2:{i:0;R:12806;i:1;R:799;}s:35:"8:maps-googlemaps3-par-fusiontables";a:2:{i:0;R:12806;i:1;R:799;}s:27:"8:maps-googlemaps3-par-tilt";a:2:{i:0;R:12806;i:1;R:799;}s:32:"8:maps-googlemaps3-par-kmlrezoom";a:2:{i:0;R:12806;i:1;R:799;}s:26:"8:maps-googlemaps3-par-poi";a:2:{i:0;R:12806;i:1;R:799;}s:30:"8:maps-openlayers-par-controls";a:2:{i:0;R:12806;i:1;R:799;}s:28:"8:maps-openlayers-par-layers";a:2:{i:0;R:12806;i:1;R:799;}s:21:"8:maps-osm-par-thumbs";a:2:{i:0;R:12806;i:1;R:799;}s:21:"8:maps-osm-par-photos";a:2:{i:0;R:12806;i:1;R:799;}s:25:"8:maps-yahoomaps-par-type";a:2:{i:0;R:12806;i:1;R:799;}s:26:"8:maps-yahoomaps-par-types";a:2:{i:0;R:12806;i:1;R:799;}s:29:"8:maps-yahoomaps-par-controls";a:2:{i:0;R:12806;i:1;R:799;}s:29:"8:maps-yahoomaps-par-autozoom";a:2:{i:0;R:12806;i:1;R:799;}s:11:"8:massblank";a:2:{i:0;s:13:"ext-massblank";i:1;R:799;}s:16:"8:massblank-desc";a:2:{i:0;R:12945;i:1;R:799;}s:19:"8:massblank-nopages";a:2:{i:0;R:12945;i:1;R:799;}s:16:"8:massblank-list";a:2:{i:0;R:12945;i:1;R:799;}s:25:"8:massblank-defaultreason";a:2:{i:0;R:12945;i:1;R:799;}s:17:"8:massblank-tools";a:2:{i:0;R:12945;i:1;R:799;}s:23:"8:massblank-submit-user";a:2:{i:0;R:12945;i:1;R:799;}s:24:"8:massblank-submit-blank";a:2:{i:0;R:12945;i:1;R:799;}s:24:"8:massblank-blankcomment";a:2:{i:0;R:12945;i:1;R:799;}s:17:"8:right-massblank";a:2:{i:0;R:12945;i:1;R:799;}s:22:"8:action-masseditregex";a:2:{i:0;s:17:"ext-masseditregex";i:1;R:799;}s:15:"8:masseditregex";a:2:{i:0;R:12956;i:1;R:799;}s:20:"8:masseditregex-desc";a:2:{i:0;R:12956;i:1;R:799;}s:19:"8:masseditregextext";a:2:{i:0;R:12956;i:1;R:799;}s:27:"8:masseditregex-pagelisttxt";a:2:{i:0;R:12956;i:1;R:799;}s:24:"8:masseditregex-matchtxt";a:2:{i:0;R:12956;i:1;R:799;}s:26:"8:masseditregex-replacetxt";a:2:{i:0;R:12956;i:1;R:799;}s:26:"8:masseditregex-executebtn";a:2:{i:0;R:12956;i:1;R:799;}s:27:"8:masseditregex-err-nopages";a:2:{i:0;R:12956;i:1;R:799;}s:22:"8:masseditregex-before";a:2:{i:0;R:12956;i:1;R:799;}s:21:"8:masseditregex-after";a:2:{i:0;R:12956;i:1;R:799;}s:33:"8:masseditregex-max-preview-diffs";a:2:{i:0;R:12956;i:1;R:799;}s:27:"8:masseditregex-num-changes";a:2:{i:0;R:12956;i:1;R:799;}s:31:"8:masseditregex-page-not-exists";a:2:{i:0;R:12956;i:1;R:799;}s:36:"8:masseditregex-num-articles-changed";a:2:{i:0;R:12956;i:1;R:799;}s:33:"8:masseditregex-view-full-summary";a:2:{i:0;R:12956;i:1;R:799;}s:26:"8:masseditregex-hint-intro";a:2:{i:0;R:12956;i:1;R:799;}s:30:"8:masseditregex-hint-headmatch";a:2:{i:0;R:12956;i:1;R:799;}s:32:"8:masseditregex-hint-headreplace";a:2:{i:0;R:12956;i:1;R:799;}s:31:"8:masseditregex-hint-headeffect";a:2:{i:0;R:12956;i:1;R:799;}s:29:"8:masseditregex-hint-toappend";a:2:{i:0;R:12956;i:1;R:799;}s:27:"8:masseditregex-hint-remove";a:2:{i:0;R:12956;i:1;R:799;}s:30:"8:masseditregex-hint-removecat";a:2:{i:0;R:12956;i:1;R:799;}s:30:"8:masseditregex-listtype-intro";a:2:{i:0;R:12956;i:1;R:799;}s:34:"8:masseditregex-listtype-pagenames";a:2:{i:0;R:12956;i:1;R:799;}s:42:"8:masseditregex-listtype-pagename-prefixes";a:2:{i:0;R:12956;i:1;R:799;}s:35:"8:masseditregex-listtype-categories";a:2:{i:0;R:12956;i:1;R:799;}s:34:"8:masseditregex-listtype-backlinks";a:2:{i:0;R:12956;i:1;R:799;}s:31:"8:masseditregex-namespace-intro";a:2:{i:0;R:12956;i:1;R:799;}s:27:"8:masseditregex-exprnomatch";a:2:{i:0;R:12956;i:1;R:799;}s:24:"8:masseditregex-badregex";a:2:{i:0;R:12956;i:1;R:799;}s:26:"8:masseditregex-editfailed";a:2:{i:0;R:12956;i:1;R:799;}s:31:"8:masseditregex-tooltip-execute";a:2:{i:0;R:12956;i:1;R:799;}s:21:"8:right-masseditregex";a:2:{i:0;R:12956;i:1;R:799;}s:11:"8:math-desc";a:2:{i:0;R:798;i:1;R:799;}s:17:"8:mw_math_mathjax";a:2:{i:0;R:798;i:1;R:799;}s:13:"8:msfunc_desc";a:2:{i:0;s:21:"ext-mathstatfunctions";i:1;R:799;}s:12:"8:msfunc_nan";a:2:{i:0;R:12993;i:1;R:799;}s:12:"8:msfunc_inf";a:2:{i:0;R:12993;i:1;R:799;}s:17:"8:msfunc_div_zero";a:2:{i:0;R:12993;i:1;R:799;}s:21:"8:mediafunctions-desc";a:2:{i:0;s:18:"ext-mediafunctions";i:1;R:799;}s:30:"8:mediafunctions-invalid-title";a:2:{i:0;R:12998;i:1;R:799;}s:26:"8:mediafunctions-not-exist";a:2:{i:0;R:12998;i:1;R:799;}s:19:"8:metadataedit-desc";a:2:{i:0;s:16:"ext-metadataedit";i:1;R:799;}s:15:"8:metadata_help";a:2:{i:0;R:13002;i:1;R:799;}s:19:"8:metakeywords-desc";a:2:{i:0;s:16:"ext-metakeywords";i:1;R:799;}s:14:"8:metakeywords";a:2:{i:0;R:13005;i:1;R:799;}s:17:"8:metadescription";a:2:{i:0;R:13005;i:1;R:799;}s:9:"8:mv-desc";a:2:{i:0;s:15:"ext-metavidwiki";i:1;R:799;}s:9:"8:mvadmin";a:2:{i:0;R:13009;i:1;R:799;}s:9:"8:metavid";a:2:{i:0;R:13009;i:1;R:799;}s:19:"8:mv_missing_stream";a:2:{i:0;R:13009;i:1;R:799;}s:29:"8:specialpages-group-mv_group";a:2:{i:0;R:13009;i:1;R:799;}s:17:"8:mv_warning_wiki";a:2:{i:0;R:13009;i:1;R:799;}s:20:"8:mv_ogg_low_quality";a:2:{i:0;R:13009;i:1;R:799;}s:21:"8:mv_ogg_high_quality";a:2:{i:0;R:13009;i:1;R:799;}s:22:"8:mv_flash_low_quality";a:2:{i:0;R:13009;i:1;R:799;}s:20:"8:mv_archive_org_mp4";a:2:{i:0;R:13009;i:1;R:799;}s:21:"8:mv_archive_org_link";a:2:{i:0;R:13009;i:1;R:799;}s:20:"8:ao_file_64kb_mpeg4";a:2:{i:0;R:13009;i:1;R:799;}s:21:"8:ao_file_256kb_mpeg4";a:2:{i:0;R:13009;i:1;R:799;}s:21:"8:ao_file_512kb_mpeg4";a:2:{i:0;R:13009;i:1;R:799;}s:15:"8:ao_file_mpeg1";a:2:{i:0;R:13009;i:1;R:799;}s:15:"8:ao_file_mpeg2";a:2:{i:0;R:13009;i:1;R:799;}s:19:"8:ao_file_flash_flv";a:2:{i:0;R:13009;i:1;R:799;}s:19:"8:ao_file_ogg_video";a:2:{i:0;R:13009;i:1;R:799;}s:25:"8:mv_error_stream_missing";a:2:{i:0;R:13009;i:1;R:799;}s:17:"8:mv_stream_added";a:2:{i:0;R:13009;i:1;R:799;}s:16:"8:mv_stream_meta";a:2:{i:0;R:13009;i:1;R:799;}s:15:"8:mv_add_stream";a:2:{i:0;R:13009;i:1;R:799;}s:16:"8:mv_edit_stream";a:2:{i:0;R:13009;i:1;R:799;}s:16:"8:mvexportsearch";a:2:{i:0;R:13009;i:1;R:799;}s:18:"8:mvexportsequence";a:2:{i:0;R:13009;i:1;R:799;}s:16:"8:mvexportstream";a:2:{i:0;R:13009;i:1;R:799;}s:20:"8:mv_move_delete_msg";a:2:{i:0;R:13009;i:1;R:799;}s:20:"8:mv_add_stream_page";a:2:{i:0;R:13009;i:1;R:799;}s:20:"8:mv_edit_strea_docu";a:2:{i:0;R:13009;i:1;R:799;}s:20:"8:mv_add_stream_docu";a:2:{i:0;R:13009;i:1;R:799;}s:22:"8:mv_add_stream_submit";a:2:{i:0;R:13009;i:1;R:799;}s:20:"8:mv_no_stream_files";a:2:{i:0;R:13009;i:1;R:799;}s:22:"8:mv_edit_stream_files";a:2:{i:0;R:13009;i:1;R:799;}s:22:"8:mv_path_type_url_anx";a:2:{i:0;R:13009;i:1;R:799;}s:25:"8:mv_path_type_wiki_title";a:2:{i:0;R:13009;i:1;R:799;}s:23:"8:mv_path_type_url_file";a:2:{i:0;R:13009;i:1;R:799;}s:25:"8:mv_path_type_mp4_stream";a:2:{i:0;R:13009;i:1;R:799;}s:20:"8:mv_path_type_label";a:2:{i:0;R:13009;i:1;R:799;}s:22:"8:mv_base_offset_label";a:2:{i:0;R:13009;i:1;R:799;}s:19:"8:mv_duration_label";a:2:{i:0;R:13009;i:1;R:799;}s:20:"8:mv_file_desc_label";a:2:{i:0;R:13009;i:1;R:799;}s:23:"8:mv_delete_stream_file";a:2:{i:0;R:13009;i:1;R:799;}s:17:"8:mv_save_changes";a:2:{i:0;R:13009;i:1;R:799;}s:24:"8:mv_file_with_same_desc";a:2:{i:0;R:13009;i:1;R:799;}s:25:"8:mv_updated_stream_files";a:2:{i:0;R:13009;i:1;R:799;}s:24:"8:mv_removed_file_stream";a:2:{i:0;R:13009;i:1;R:799;}s:24:"8:mv_missing_stream_text";a:2:{i:0;R:13009;i:1;R:799;}s:19:"8:mv_user_cant_edit";a:2:{i:0;R:13009;i:1;R:799;}s:20:"8:mv_add_stream_file";a:2:{i:0;R:13009;i:1;R:799;}s:15:"8:mv_media_path";a:2:{i:0;R:13009;i:1;R:799;}s:14:"8:mv_file_list";a:2:{i:0;R:13009;i:1;R:799;}s:22:"8:mv_label_stream_name";a:2:{i:0;R:13009;i:1;R:799;}s:22:"8:mv_label_stream_desc";a:2:{i:0;R:13009;i:1;R:799;}s:23:"8:add_stream_permission";a:2:{i:0;R:13009;i:1;R:799;}s:21:"8:edit_stream_missing";a:2:{i:0;R:13009;i:1;R:799;}s:21:"8:mv_missing_req_time";a:2:{i:0;R:13009;i:1;R:799;}s:16:"8:mv_missing_cat";a:2:{i:0;R:13009;i:1;R:799;}s:26:"8:mv_stream_already_exists";a:2:{i:0;R:13009;i:1;R:799;}s:23:"8:mv_summary_add_stream";a:2:{i:0;R:13009;i:1;R:799;}s:24:"8:mv_error_stream_insert";a:2:{i:0;R:13009;i:1;R:799;}s:31:"8:mv_redirect_and_delete_reason";a:2:{i:0;R:13009;i:1;R:799;}s:18:"8:mv_remove_reason";a:2:{i:0;R:13009;i:1;R:799;}s:27:"8:mv_stream_delete_warrning";a:2:{i:0;R:13009;i:1;R:799;}s:22:"8:mv_label_stream_type";a:2:{i:0;R:13009;i:1;R:799;}s:17:"8:mv_metavid_file";a:2:{i:0;R:13009;i:1;R:799;}s:17:"8:mv_metavid_live";a:2:{i:0;R:13009;i:1;R:799;}s:16:"8:mv_upload_file";a:2:{i:0;R:13009;i:1;R:799;}s:18:"8:mv_external_file";a:2:{i:0;R:13009;i:1;R:799;}s:16:"8:mv_tool_search";a:2:{i:0;R:13009;i:1;R:799;}s:22:"8:mv_tool_search_title";a:2:{i:0;R:13009;i:1;R:799;}s:27:"8:mv_search_transcripts_for";a:2:{i:0;R:13009;i:1;R:799;}s:18:"8:mv_tool_navigate";a:2:{i:0;R:13009;i:1;R:799;}s:24:"8:mv_tool_navigate_title";a:2:{i:0;R:13009;i:1;R:799;}s:16:"8:mv_tool_export";a:2:{i:0;R:13009;i:1;R:799;}s:22:"8:mv_tool_export_title";a:2:{i:0;R:13009;i:1;R:799;}s:15:"8:mv_tool_embed";a:2:{i:0;R:13009;i:1;R:799;}s:21:"8:mv_tool_embed_title";a:2:{i:0;R:13009;i:1;R:799;}s:17:"8:mv_tool_overlay";a:2:{i:0;R:13009;i:1;R:799;}s:23:"8:mv_tool_overlay_title";a:2:{i:0;R:13009;i:1;R:799;}s:18:"8:mv_results_found";a:2:{i:0;R:13009;i:1;R:799;}s:21:"8:mv_tool_mang_layers";a:2:{i:0;R:13009;i:1;R:799;}s:18:"8:mv_update_layers";a:2:{i:0;R:13009;i:1;R:799;}s:15:"8:mv_watch_clip";a:2:{i:0;R:13009;i:1;R:799;}s:15:"8:mv_close_clip";a:2:{i:0;R:13009;i:1;R:799;}s:23:"8:mv_improve_transcript";a:2:{i:0;R:13009;i:1;R:799;}s:19:"8:mv_people_matches";a:2:{i:0;R:13009;i:1;R:799;}s:21:"8:mv_category_matches";a:2:{i:0;R:13009;i:1;R:799;}s:17:"8:mv_bill_matches";a:2:{i:0;R:13009;i:1;R:799;}s:27:"8:mv_interest_group_matches";a:2:{i:0;R:13009;i:1;R:799;}s:18:"8:mv_click_to_edit";a:2:{i:0;R:13009;i:1;R:799;}s:7:"8:ht_en";a:2:{i:0;R:13009;i:1;R:799;}s:12:"8:ht_en_desc";a:2:{i:0;R:13009;i:1;R:799;}s:9:"8:anno_en";a:2:{i:0;R:13009;i:1;R:799;}s:14:"8:anno_en_desc";a:2:{i:0;R:13009;i:1;R:799;}s:11:"8:thomas_en";a:2:{i:0;R:13009;i:1;R:799;}s:16:"8:thomas_en_desc";a:2:{i:0;R:13009;i:1;R:799;}s:22:"8:mvd_default_mismatch";a:2:{i:0;R:13009;i:1;R:799;}s:27:"8:mvd_default_mismatch_text";a:2:{i:0;R:13009;i:1;R:799;}s:20:"8:mv_data_page_title";a:2:{i:0;R:13009;i:1;R:799;}s:19:"8:mv_time_separator";a:2:{i:0;R:13009;i:1;R:799;}s:17:"8:mv_list_streams";a:2:{i:0;R:13009;i:1;R:799;}s:22:"8:mv_list_streams_page";a:2:{i:0;R:13009;i:1;R:799;}s:22:"8:mv_list_streams_docu";a:2:{i:0;R:13009;i:1;R:799;}s:22:"8:mv_list_streams_none";a:2:{i:0;R:13009;i:1;R:799;}s:13:"8:mvvideofeed";a:2:{i:0;R:13009;i:1;R:799;}s:13:"8:mvexportask";a:2:{i:0;R:13009;i:1;R:799;}s:16:"8:video_feed_cat";a:2:{i:0;R:13009;i:1;R:799;}s:20:"8:mv_cat_search_note";a:2:{i:0;R:13009;i:1;R:799;}s:25:"8:mv-category-media-count";a:2:{i:0;R:13009;i:1;R:799;}s:17:"8:mv_mvd_linkback";a:2:{i:0;R:13009;i:1;R:799;}s:15:"8:mvbadmvdtitle";a:2:{i:0;R:13009;i:1;R:799;}s:13:"8:mvmvdformat";a:2:{i:0;R:13009;i:1;R:799;}s:9:"8:mv_play";a:2:{i:0;R:13009;i:1;R:799;}s:9:"8:mv_edit";a:2:{i:0;R:13009;i:1;R:799;}s:12:"8:mv_history";a:2:{i:0;R:13009;i:1;R:799;}s:18:"8:mv_history_title";a:2:{i:0;R:13009;i:1;R:799;}s:15:"8:mv_edit_title";a:2:{i:0;R:13009;i:1;R:799;}s:22:"8:mv_edit_adjust_title";a:2:{i:0;R:13009;i:1;R:799;}s:11:"8:mv_remove";a:2:{i:0;R:13009;i:1;R:799;}s:17:"8:mv_remove_title";a:2:{i:0;R:13009;i:1;R:799;}s:11:"8:mv_adjust";a:2:{i:0;R:13009;i:1;R:799;}s:18:"8:mv_adjust_submit";a:2:{i:0;R:13009;i:1;R:799;}s:17:"8:mv_adjust_title";a:2:{i:0;R:13009;i:1;R:799;}s:19:"8:mv_adjust_preview";a:2:{i:0;R:13009;i:1;R:799;}s:24:"8:mv_adjust_preview_stop";a:2:{i:0;R:13009;i:1;R:799;}s:26:"8:mv_adjust_default_reason";a:2:{i:0;R:13009;i:1;R:799;}s:29:"8:mv_adjust_old_title_missing";a:2:{i:0;R:13009;i:1;R:799;}s:19:"8:mv_adjust_ok_move";a:2:{i:0;R:13009;i:1;R:799;}s:15:"8:mv_start_desc";a:2:{i:0;R:13009;i:1;R:799;}s:13:"8:mv_end_desc";a:2:{i:0;R:13009;i:1;R:799;}s:18:"8:mv_edit_metadata";a:2:{i:0;R:13009;i:1;R:799;}s:18:"8:mv_advanced_edit";a:2:{i:0;R:13009;i:1;R:799;}s:15:"8:mv_basic_edit";a:2:{i:0;R:13009;i:1;R:799;}s:20:"8:mv_remove_category";a:2:{i:0;R:13009;i:1;R:799;}s:24:"8:mv_existing_categories";a:2:{i:0;R:13009;i:1;R:799;}s:17:"8:mv_add_category";a:2:{i:0;R:13009;i:1;R:799;}s:20:"8:mv_basic_text_desc";a:2:{i:0;R:13009;i:1;R:799;}s:13:"8:mv_viewnext";a:2:{i:0;R:13009;i:1;R:799;}s:17:"8:mv_viewprevnext";a:2:{i:0;R:13009;i:1;R:799;}s:13:"8:mediasearch";a:2:{i:0;R:13009;i:1;R:799;}s:17:"8:mv_search_sel_t";a:2:{i:0;R:13009;i:1;R:799;}s:20:"8:mv_do_media_search";a:2:{i:0;R:13009;i:1;R:799;}s:16:"8:mv_results_for";a:2:{i:0;R:13009;i:1;R:799;}s:17:"8:mv_video_search";a:2:{i:0;R:13009;i:1;R:799;}s:16:"8:mv_page_search";a:2:{i:0;R:13009;i:1;R:799;}s:15:"8:mv_add_filter";a:2:{i:0;R:13009;i:1;R:799;}s:17:"8:mv_search_match";a:2:{i:0;R:13009;i:1;R:799;}s:21:"8:mv_search_spoken_by";a:2:{i:0;R:13009;i:1;R:799;}s:22:"8:mv_search_categories";a:2:{i:0;R:13009;i:1;R:799;}s:17:"8:mv_search_bills";a:2:{i:0;R:13009;i:1;R:799;}s:16:"8:mv_search_bill";a:2:{i:0;R:13009;i:1;R:799;}s:9:"8:mv_bill";a:2:{i:0;R:13009;i:1;R:799;}s:20:"8:mv_search_category";a:2:{i:0;R:13009;i:1;R:799;}s:24:"8:mv_search_smw_property";a:2:{i:0;R:13009;i:1;R:799;}s:32:"8:mv_search_smw_property_numeric";a:2:{i:0;R:13009;i:1;R:799;}s:15:"8:mv_search_and";a:2:{i:0;R:13009;i:1;R:799;}s:14:"8:mv_search_or";a:2:{i:0;R:13009;i:1;R:799;}s:15:"8:mv_search_not";a:2:{i:0;R:13009;i:1;R:799;}s:23:"8:mv_search_stream_name";a:2:{i:0;R:13009;i:1;R:799;}s:22:"8:mv_search_date_range";a:2:{i:0;R:13009;i:1;R:799;}s:16:"8:mv_stream_name";a:2:{i:0;R:13009;i:1;R:799;}s:15:"8:mv_date_range";a:2:{i:0;R:13009;i:1;R:799;}s:19:"8:mv_date_last_week";a:2:{i:0;R:13009;i:1;R:799;}s:21:"8:mv_category_results";a:2:{i:0;R:13009;i:1;R:799;}s:19:"8:mv_people_results";a:2:{i:0;R:13009;i:1;R:799;}s:17:"8:mv_bill_results";a:2:{i:0;R:13009;i:1;R:799;}s:26:"8:mv_intrest_group_results";a:2:{i:0;R:13009;i:1;R:799;}s:18:"8:mv_most_relevant";a:2:{i:0;R:13009;i:1;R:799;}s:16:"8:mv_most_recent";a:2:{i:0;R:13009;i:1;R:799;}s:16:"8:mv_most_viewed";a:2:{i:0;R:13009;i:1;R:799;}s:14:"8:mv_spoken_by";a:2:{i:0;R:13009;i:1;R:799;}s:14:"8:mv_speech_by";a:2:{i:0;R:13009;i:1;R:799;}s:13:"8:mv_category";a:2:{i:0;R:13009;i:1;R:799;}s:22:"8:mv_search_no_results";a:2:{i:0;R:13009;i:1;R:799;}s:18:"8:mv_media_matches";a:2:{i:0;R:13009;i:1;R:799;}s:18:"8:mv_remove_filter";a:2:{i:0;R:13009;i:1;R:799;}s:19:"8:mv_advaced_search";a:2:{i:0;R:13009;i:1;R:799;}s:16:"8:mv_expand_play";a:2:{i:0;R:13009;i:1;R:799;}s:16:"8:mv_play_inline";a:2:{i:0;R:13009;i:1;R:799;}s:29:"8:mv_view_in_stream_interface";a:2:{i:0;R:13009;i:1;R:799;}s:19:"8:mv_view_wiki_page";a:2:{i:0;R:13009;i:1;R:799;}s:24:"8:mv_error_mvd_not_found";a:2:{i:0;R:13009;i:1;R:799;}s:18:"8:mv_edit_sequence";a:2:{i:0;R:13009;i:1;R:799;}s:26:"8:mv_sequence_player_title";a:2:{i:0;R:13009;i:1;R:799;}s:23:"8:mv_resource_not_found";a:2:{i:0;R:13009;i:1;R:799;}s:27:"8:mv_resource_not_supported";a:2:{i:0;R:13009;i:1;R:799;}s:21:"8:mv_resource_locator";a:2:{i:0;R:13009;i:1;R:799;}s:29:"8:mv_unknown_clipboard_action";a:2:{i:0;R:13009;i:1;R:799;}s:17:"8:mv_media_search";a:2:{i:0;R:13009;i:1;R:799;}s:19:"8:mv_editor_options";a:2:{i:0;R:13009;i:1;R:799;}s:16:"8:mv_editor_mode";a:2:{i:0;R:13009;i:1;R:799;}s:23:"8:mv_simple_editor_desc";a:2:{i:0;R:13009;i:1;R:799;}s:25:"8:mv_advanced_editor_desc";a:2:{i:0;R:13009;i:1;R:799;}s:16:"8:mv_transitions";a:2:{i:0;R:13009;i:1;R:799;}s:18:"8:mv_save_sequence";a:2:{i:0;R:13009;i:1;R:799;}s:23:"8:mv_sequence_page_desc";a:2:{i:0;R:13009;i:1;R:799;}s:17:"8:mv_sequence_add";a:2:{i:0;R:13009;i:1;R:799;}s:24:"8:mv_sequence_add_manual";a:2:{i:0;R:13009;i:1;R:799;}s:29:"8:mv_sequence_add_manual_desc";a:2:{i:0;R:13009;i:1;R:799;}s:24:"8:mv_sequence_add_search";a:2:{i:0;R:13009;i:1;R:799;}s:29:"8:mv_sequence_add_search_desc";a:2:{i:0;R:13009;i:1;R:799;}s:16:"8:mv_seq_add_end";a:2:{i:0;R:13009;i:1;R:799;}s:23:"8:mv_sequence_edit_text";a:2:{i:0;R:13009;i:1;R:799;}s:32:"8:mv_sequence_edit_visual_editor";a:2:{i:0;R:13009;i:1;R:799;}s:18:"8:mv_other_options";a:2:{i:0;R:13009;i:1;R:799;}s:20:"8:mv_contextmenu_opt";a:2:{i:0;R:13009;i:1;R:799;}s:9:"8:mv_days";a:2:{i:0;R:13009;i:1;R:799;}s:10:"8:mv_hours";a:2:{i:0;R:13009;i:1;R:799;}s:19:"8:mv_hours_singular";a:2:{i:0;R:13009;i:1;R:799;}s:12:"8:mv_minutes";a:2:{i:0;R:13009;i:1;R:799;}s:21:"8:mv_minutes_singular";a:2:{i:0;R:13009;i:1;R:799;}s:12:"8:mv_seconds";a:2:{i:0;R:13009;i:1;R:799;}s:21:"8:mv_seconds_singular";a:2:{i:0;R:13009;i:1;R:799;}s:18:"8:mv_stream_length";a:2:{i:0;R:13009;i:1;R:799;}s:22:"8:mv_sequence_timeline";a:2:{i:0;R:13009;i:1;R:799;}s:28:"8:mv_edit_sequence_desc_help";a:2:{i:0;R:13009;i:1;R:799;}s:21:"8:mv_edithelpsequence";a:2:{i:0;R:13009;i:1;R:799;}s:16:"8:mv_seq_summary";a:2:{i:0;R:13009;i:1;R:799;}s:21:"8:mv_add_clip_by_name";a:2:{i:0;R:13009;i:1;R:799;}s:27:"8:mv_stream_resource_export";a:2:{i:0;R:13009;i:1;R:799;}s:16:"8:mv_export_cmml";a:2:{i:0;R:13009;i:1;R:799;}s:20:"8:mv_navigate_stream";a:2:{i:0;R:13009;i:1;R:799;}s:20:"8:mv_stream_overview";a:2:{i:0;R:13009;i:1;R:799;}s:14:"8:mv_edit_time";a:2:{i:0;R:13009;i:1;R:799;}s:18:"8:mv_embed_options";a:2:{i:0;R:13009;i:1;R:799;}s:12:"8:mv_overlay";a:2:{i:0;R:13009;i:1;R:799;}s:24:"8:mv_stream_tool_heading";a:2:{i:0;R:13009;i:1;R:799;}s:17:"8:mv_tool_missing";a:2:{i:0;R:13009;i:1;R:799;}s:21:"8:mv_bad_tool_request";a:2:{i:0;R:13009;i:1;R:799;}s:16:"8:mv_prev_speech";a:2:{i:0;R:13009;i:1;R:799;}s:16:"8:mv_next_speech";a:2:{i:0;R:13009;i:1;R:799;}s:14:"8:mv_prev_bill";a:2:{i:0;R:13009;i:1;R:799;}s:14:"8:mv_next_bill";a:2:{i:0;R:13009;i:1;R:799;}s:13:"8:mv_prev_cat";a:2:{i:0;R:13009;i:1;R:799;}s:13:"8:mv_next_cat";a:2:{i:0;R:13009;i:1;R:799;}s:18:"8:mv_search_stream";a:2:{i:0;R:13009;i:1;R:799;}s:24:"8:mv_search_stream_title";a:2:{i:0;R:13009;i:1;R:799;}s:14:"8:mv_new_ht_en";a:2:{i:0;R:13009;i:1;R:799;}s:16:"8:mv_new_anno_en";a:2:{i:0;R:13009;i:1;R:799;}s:16:"8:mv_mang_layers";a:2:{i:0;R:13009;i:1;R:799;}s:22:"8:mv_mang_layers_title";a:2:{i:0;R:13009;i:1;R:799;}s:28:"8:mv_protect_source_material";a:2:{i:0;R:13009;i:1;R:799;}s:21:"8:right-mv_delete_mvd";a:2:{i:0;R:13009;i:1;R:799;}s:22:"8:action-mv_delete_mvd";a:2:{i:0;R:13009;i:1;R:799;}s:22:"8:right-mv_edit_stream";a:2:{i:0;R:13009;i:1;R:799;}s:14:"8:microid-desc";a:2:{i:0;s:11:"ext-microid";i:1;R:799;}s:13:"8:tog-microid";a:2:{i:0;R:13255;i:1;R:799;}s:19:"8:donationform-desc";a:2:{i:0;s:16:"ext-minidonation";i:1;R:799;}s:21:"8:donationform-submit";a:2:{i:0;R:13258;i:1;R:799;}s:21:"8:minnamelength-error";a:2:{i:0;s:21:"ext-minimumnamelength";i:1;R:799;}s:20:"8:minnamelength-desc";a:2:{i:0;R:13261;i:1;R:799;}s:18:"8:minipreview-desc";a:2:{i:0;s:15:"ext-minipreview";i:1;R:799;}s:31:"8:minipreview-files_in_category";a:2:{i:0;R:13264;i:1;R:799;}s:30:"8:minipreview-files_in_gallery";a:2:{i:0;R:13264;i:1;R:799;}s:32:"8:minipreview-no_more_files_here";a:2:{i:0;R:13264;i:1;R:799;}s:33:"8:minipreview-no_category_gallery";a:2:{i:0;R:13264;i:1;R:799;}s:31:"8:minipreview-ignore_categories";a:2:{i:0;R:13264;i:1;R:799;}s:13:"8:mirrortools";a:2:{i:0;s:15:"ext-mirrortools";i:1;R:799;}s:18:"8:mirrortools-desc";a:2:{i:0;R:13271;i:1;R:799;}s:18:"8:right-mirroredit";a:2:{i:0;R:13271;i:1;R:799;}s:19:"8:group-mirrortools";a:2:{i:0;R:13271;i:1;R:799;}s:26:"8:group-mirrortools-member";a:2:{i:0;R:13271;i:1;R:799;}s:23:"8:grouppage-mirrortools";a:2:{i:0;R:13271;i:1;R:799;}s:23:"8:group-mirrortools.css";a:2:{i:0;R:13271;i:1;R:799;}s:22:"8:group-mirrortools.js";a:2:{i:0;R:13271;i:1;R:799;}s:14:"8:mostrevisors";a:2:{i:0;s:16:"ext-mostrevisors";i:1;R:799;}s:19:"8:mostrevisors-desc";a:2:{i:0;R:13280;i:1;R:799;}s:21:"8:mostrevisors-header";a:2:{i:0;R:13280;i:1;R:799;}s:25:"8:mostrevisors-limitlinks";a:2:{i:0;R:13280;i:1;R:799;}s:24:"8:mostrevisors-namespace";a:2:{i:0;R:13280;i:1;R:799;}s:19:"8:mostrevisors-none";a:2:{i:0;R:13280;i:1;R:799;}s:24:"8:mostrevisors-ns-header";a:2:{i:0;R:13280;i:1;R:799;}s:22:"8:mostrevisors-showing";a:2:{i:0;R:13280;i:1;R:799;}s:21:"8:mostrevisors-submit";a:2:{i:0;R:13280;i:1;R:799;}s:24:"8:mostrevisors-showredir";a:2:{i:0;R:13280;i:1;R:799;}s:24:"8:mostrevisors-hideredir";a:2:{i:0;R:13280;i:1;R:799;}s:20:"8:mostrevisors-users";a:2:{i:0;R:13280;i:1;R:799;}s:31:"8:mostrevisors-viewcontributors";a:2:{i:0;R:13280;i:1;R:799;}s:33:"8:mostrevisors-limit-few-revisors";a:2:{i:0;R:13280;i:1;R:799;}s:18:"8:multiboilerplate";a:2:{i:0;s:20:"ext-multiboilerplate";i:1;R:799;}s:23:"8:multiboilerplate-desc";a:2:{i:0;R:13295;i:1;R:799;}s:24:"8:multiboilerplate-label";a:2:{i:0;R:13295;i:1;R:799;}s:25:"8:multiboilerplate-legend";a:2:{i:0;R:13295;i:1;R:799;}s:25:"8:multiboilerplate-submit";a:2:{i:0;R:13295;i:1;R:799;}s:14:"8:boilerplates";a:2:{i:0;R:13295;i:1;R:799;}s:35:"8:multiboilerplate-special-pagetext";a:2:{i:0;R:13295;i:1;R:799;}s:50:"8:multiboilerplate-special-define-in-localsettings";a:2:{i:0;R:13295;i:1;R:799;}s:46:"8:multiboilerplate-special-define-in-interface";a:2:{i:0;R:13295;i:1;R:799;}s:16:"8:multipleupload";a:2:{i:0;s:15:"ext-multiupload";i:1;R:799;}s:18:"8:multiupload-desc";a:2:{i:0;R:13305;i:1;R:799;}s:34:"8:multipleupload-ignoreallwarnings";a:2:{i:0;R:13305;i:1;R:799;}s:29:"8:multipleupload-saveallfiles";a:2:{i:0;R:13305;i:1;R:799;}s:32:"8:multipleupload-addresswarnings";a:2:{i:0;R:13305;i:1;R:799;}s:21:"8:multipleupload-page";a:2:{i:0;R:13305;i:1;R:799;}s:21:"8:multipleupload-text";a:2:{i:0;R:13305;i:1;R:799;}s:26:"8:multiupload-fileuploaded";a:2:{i:0;R:13305;i:1;R:799;}s:21:"8:multiupload-toolbox";a:2:{i:0;R:13305;i:1;R:799;}s:22:"8:multiupload-no-files";a:2:{i:0;R:13305;i:1;R:799;}s:19:"8:multiupload-blank";a:2:{i:0;R:13305;i:1;R:799;}s:14:"8:mwembed-desc";a:2:{i:0;s:18:"ext-mwembedsupport";i:1;R:799;}s:13:"8:mwe-loading";a:2:{i:0;s:33:"ext-mwembedsupport-mwembedsupport";i:1;R:799;}s:20:"8:mwe-size-gigabytes";a:2:{i:0;R:13319;i:1;R:799;}s:20:"8:mwe-size-megabytes";a:2:{i:0;R:13319;i:1;R:799;}s:20:"8:mwe-size-kilobytes";a:2:{i:0;R:13319;i:1;R:799;}s:16:"8:mwe-size-bytes";a:2:{i:0;R:13319;i:1;R:799;}s:20:"8:mwe-error_load_lib";a:2:{i:0;R:13319;i:1;R:799;}s:20:"8:mwe-apiproxy-setup";a:2:{i:0;R:13319;i:1;R:799;}s:20:"8:mwe-load-drag-item";a:2:{i:0;R:13319;i:1;R:799;}s:8:"8:mwe-ok";a:2:{i:0;R:13319;i:1;R:799;}s:12:"8:mwe-cancel";a:2:{i:0;R:13319;i:1;R:799;}s:19:"8:mwe-enable-gadget";a:2:{i:0;R:13319;i:1;R:799;}s:24:"8:mwe-enable-gadget-done";a:2:{i:0;R:13319;i:1;R:799;}s:23:"8:mwe-must-login-gadget";a:2:{i:0;R:13319;i:1;R:799;}s:17:"8:mwe-test-plural";a:2:{i:0;R:13319;i:1;R:799;}s:21:"8:namespacepaths-desc";a:2:{i:0;s:18:"ext-namespacepaths";i:1;R:799;}s:10:"8:nll-desc";a:2:{i:0;s:23:"ext-naturallanguagelist";i:1;R:799;}s:16:"8:nll-itemoutput";a:2:{i:0;R:13336;i:1;R:799;}s:15:"8:nll-separator";a:2:{i:0;R:13336;i:1;R:799;}s:19:"8:nll-lastseparator";a:2:{i:0;R:13336;i:1;R:799;}s:23:"8:navigationpopups-desc";a:2:{i:0;s:20:"ext-navigationpopups";i:1;R:799;}s:13:"8:negref-desc";a:2:{i:0;s:10:"ext-negref";i:1;R:799;}s:18:"8:networkauth-desc";a:2:{i:0;s:15:"ext-networkauth";i:1;R:799;}s:18:"8:networkauth-name";a:2:{i:0;R:13345;i:1;R:799;}s:22:"8:networkauth-purltext";a:2:{i:0;R:13345;i:1;R:799;}s:13:"8:newestpages";a:2:{i:0;s:15:"ext-newestpages";i:1;R:799;}s:18:"8:newestpages-desc";a:2:{i:0;R:13349;i:1;R:799;}s:20:"8:newestpages-header";a:2:{i:0;R:13349;i:1;R:799;}s:24:"8:newestpages-limitlinks";a:2:{i:0;R:13349;i:1;R:799;}s:23:"8:newestpages-namespace";a:2:{i:0;R:13349;i:1;R:799;}s:18:"8:newestpages-none";a:2:{i:0;R:13349;i:1;R:799;}s:23:"8:newestpages-ns-header";a:2:{i:0;R:13349;i:1;R:799;}s:21:"8:newestpages-showing";a:2:{i:0;R:13349;i:1;R:799;}s:20:"8:newestpages-submit";a:2:{i:0;R:13349;i:1;R:799;}s:23:"8:newestpages-showredir";a:2:{i:0;R:13349;i:1;R:799;}s:23:"8:newestpages-hideredir";a:2:{i:0;R:13349;i:1;R:799;}s:20:"8:newsextension-desc";a:2:{i:0;s:8:"ext-news";i:1;R:799;}s:13:"8:newschannel";a:2:{i:0;s:15:"ext-newschannel";i:1;R:799;}s:18:"8:newschannel-desc";a:2:{i:0;R:13363;i:1;R:799;}s:20:"8:newschannel_format";a:2:{i:0;R:13363;i:1;R:799;}s:19:"8:newschannel_limit";a:2:{i:0;R:13363;i:1;R:799;}s:30:"8:newschannel_include_category";a:2:{i:0;R:13363;i:1;R:799;}s:30:"8:newschannel_exclude_category";a:2:{i:0;R:13363;i:1;R:799;}s:27:"8:newschannel_submit_button";a:2:{i:0;R:13363;i:1;R:799;}s:18:"8:newusernotifsubj";a:2:{i:0;s:23:"ext-newusernotification";i:1;R:799;}s:19:"8:newusernotif-desc";a:2:{i:0;R:13371;i:1;R:799;}s:18:"8:newusernotifbody";a:2:{i:0;R:13371;i:1;R:799;}s:19:"8:newuserslist-desc";a:2:{i:0;s:16:"ext-newuserslist";i:1;R:799;}s:11:"8:morewikis";a:2:{i:0;s:10:"ext-nimbus";i:1;R:799;}s:13:"8:nimbus-desc";a:2:{i:0;R:13377;i:1;R:799;}s:18:"8:nimbus-advertise";a:2:{i:0;R:13377;i:1;R:799;}s:22:"8:nimbus-advertise-url";a:2:{i:0;R:13377;i:1;R:799;}s:19:"8:nimbus-contribute";a:2:{i:0;R:13377;i:1;R:799;}s:19:"8:nimbus-didyouknow";a:2:{i:0;R:13377;i:1;R:799;}s:22:"8:nimbus-featuredimage";a:2:{i:0;R:13377;i:1;R:799;}s:21:"8:nimbus-featureduser";a:2:{i:0;R:13377;i:1;R:799;}s:14:"8:nimbus-login";a:2:{i:0;R:13377;i:1;R:799;}s:15:"8:nimbus-logout";a:2:{i:0;R:13377;i:1;R:799;}s:21:"8:nimbus-more-actions";a:2:{i:0;R:13377;i:1;R:799;}s:19:"8:nimbus-more-wikis";a:2:{i:0;R:13377;i:1;R:799;}s:28:"8:nimbus-pages-can-be-edited";a:2:{i:0;R:13377;i:1;R:799;}s:16:"8:nimbus-profile";a:2:{i:0;R:13377;i:1;R:799;}s:28:"8:nimbus-recent-contributors";a:2:{i:0;R:13377;i:1;R:799;}s:33:"8:nimbus-recent-contributors-info";a:2:{i:0;R:13377;i:1;R:799;}s:15:"8:nimbus-search";a:2:{i:0;R:13377;i:1;R:799;}s:15:"8:nimbus-signup";a:2:{i:0;R:13377;i:1;R:799;}s:16:"8:nimbus-welcome";a:2:{i:0;R:13377;i:1;R:799;}s:23:"8:nobogususerpages-desc";a:2:{i:0;s:20:"ext-nobogususerpages";i:1;R:799;}s:25:"8:badaccess-bogususerpage";a:2:{i:0;R:13397;i:1;R:799;}s:27:"8:right-createbogususerpage";a:2:{i:0;R:13397;i:1;R:799;}s:13:"8:notificator";a:2:{i:0;s:15:"ext-notificator";i:1;R:799;}s:18:"8:notificator-desc";a:2:{i:0;R:13401;i:1;R:799;}s:37:"8:notificator-db-table-does-not-exist";a:2:{i:0;R:13401;i:1;R:799;}s:28:"8:notificator-e-mail-address";a:2:{i:0;R:13401;i:1;R:799;}s:20:"8:notificator-notify";a:2:{i:0;R:13401;i:1;R:799;}s:36:"8:notificator-notify-address-or-name";a:2:{i:0;R:13401;i:1;R:799;}s:38:"8:notificator-revs-not-from-same-title";a:2:{i:0;R:13401;i:1;R:799;}s:23:"8:notificator-return-to";a:2:{i:0;R:13401;i:1;R:799;}s:44:"8:notificator-special-page-accessed-directly";a:2:{i:0;R:13401;i:1;R:799;}s:36:"8:notificator-e-mail-address-invalid";a:2:{i:0;R:13401;i:1;R:799;}s:35:"8:notificator-notification-not-sent";a:2:{i:0;R:13401;i:1;R:799;}s:24:"8:notificator-change-tag";a:2:{i:0;R:13401;i:1;R:799;}s:21:"8:notificator-new-tag";a:2:{i:0;R:13401;i:1;R:799;}s:39:"8:notificator-notification-text-changes";a:2:{i:0;R:13401;i:1;R:799;}s:35:"8:notificator-notification-text-new";a:2:{i:0;R:13401;i:1;R:799;}s:38:"8:notificator-following-e-mail-sent-to";a:2:{i:0;R:13401;i:1;R:799;}s:21:"8:notificator-subject";a:2:{i:0;R:13401;i:1;R:799;}s:34:"8:notificator-error-sending-e-mail";a:2:{i:0;R:13401;i:1;R:799;}s:37:"8:notificator-error-parameter-missing";a:2:{i:0;R:13401;i:1;R:799;}s:30:"8:notificator-notified-already";a:2:{i:0;R:13401;i:1;R:799;}s:17:"8:nsfilerepo-desc";a:2:{i:0;s:14:"ext-nsfilerepo";i:1;R:799;}s:16:"8:accountmanager";a:2:{i:0;s:16:"ext-nssmysqlauth";i:1;R:799;}s:13:"8:am-username";a:2:{i:0;R:13424;i:1;R:799;}s:10:"8:am-email";a:2:{i:0;R:13424;i:1;R:799;}s:11:"8:am-active";a:2:{i:0;R:13424;i:1;R:799;}s:12:"8:am-updated";a:2:{i:0;R:13424;i:1;R:799;}s:10:"8:nss-desc";a:2:{i:0;R:13424;i:1;R:799;}s:12:"8:nss-rights";a:2:{i:0;R:13424;i:1;R:799;}s:18:"8:nss-save-changes";a:2:{i:0;R:13424;i:1;R:799;}s:27:"8:nss-create-account-header";a:2:{i:0;R:13424;i:1;R:799;}s:20:"8:nss-create-account";a:2:{i:0;R:13424;i:1;R:799;}s:13:"8:nss-no-mail";a:2:{i:0;R:13424;i:1;R:799;}s:18:"8:nss-welcome-mail";a:2:{i:0;R:13424;i:1;R:799;}s:26:"8:nss-welcome-mail-subject";a:2:{i:0;R:13424;i:1;R:799;}s:14:"8:nss-db-error";a:2:{i:0;R:13424;i:1;R:799;}s:19:"8:onlinestatus-desc";a:2:{i:0;s:16:"ext-onlinestatus";i:1;R:799;}s:22:"8:onlinestatus-js-anon";a:2:{i:0;R:13439;i:1;R:799;}s:25:"8:onlinestatus-js-changed";a:2:{i:0;R:13439;i:1;R:799;}s:23:"8:onlinestatus-js-error";a:2:{i:0;R:13439;i:1;R:799;}s:21:"8:onlinestatus-levels";a:2:{i:0;R:13439;i:1;R:799;}s:31:"8:onlinestatus-subtitle-offline";a:2:{i:0;R:13439;i:1;R:799;}s:30:"8:onlinestatus-subtitle-online";a:2:{i:0;R:13439;i:1;R:799;}s:18:"8:onlinestatus-tab";a:2:{i:0;R:13439;i:1;R:799;}s:27:"8:onlinestatus-toggles-desc";a:2:{i:0;R:13439;i:1;R:799;}s:30:"8:onlinestatus-toggles-explain";a:2:{i:0;R:13439;i:1;R:799;}s:27:"8:onlinestatus-toggles-show";a:2:{i:0;R:13439;i:1;R:799;}s:29:"8:onlinestatus-toggle-offline";a:2:{i:0;R:13439;i:1;R:799;}s:28:"8:onlinestatus-toggle-online";a:2:{i:0;R:13439;i:1;R:799;}s:33:"8:onlinestatus-pref-onlineonlogin";a:2:{i:0;R:13439;i:1;R:799;}s:35:"8:onlinestatus-pref-offlineonlogout";a:2:{i:0;R:13439;i:1;R:799;}s:22:"8:onlinestatusbar-desc";a:2:{i:0;s:19:"ext-onlinestatusbar";i:1;R:799;}s:22:"8:onlinestatusbar-line";a:2:{i:0;R:13455;i:1;R:799;}s:22:"8:onlinestatusbar-used";a:2:{i:0;R:13455;i:1;R:799;}s:27:"8:onlinestatusbar-away-time";a:2:{i:0;R:13455;i:1;R:799;}s:24:"8:onlinestatusbar-status";a:2:{i:0;R:13455;i:1;R:799;}s:22:"8:onlinestatusbar-away";a:2:{i:0;R:13455;i:1;R:799;}s:23:"8:onlinestatusbar-purge";a:2:{i:0;R:13455;i:1;R:799;}s:20:"8:prefs-onlinestatus";a:2:{i:0;R:13455;i:1;R:799;}s:22:"8:onlinestatusbar-hide";a:2:{i:0;R:13455;i:1;R:799;}s:31:"8:onlinestatusbar-status-online";a:2:{i:0;R:13455;i:1;R:799;}s:29:"8:onlinestatusbar-status-busy";a:2:{i:0;R:13455;i:1;R:799;}s:29:"8:onlinestatusbar-status-away";a:2:{i:0;R:13455;i:1;R:799;}s:32:"8:onlinestatusbar-status-offline";a:2:{i:0;R:13455;i:1;R:799;}s:31:"8:onlinestatusbar-status-uknown";a:2:{i:0;R:13455;i:1;R:799;}s:31:"8:onlinestatusbar-status-hidden";a:2:{i:0;R:13455;i:1;R:799;}s:20:"8:opengraphmeta-desc";a:2:{i:0;s:17:"ext-opengraphmeta";i:1;R:799;}s:13:"8:openid-desc";a:2:{i:0;s:10:"ext-openid";i:1;R:799;}s:13:"8:openidlogin";a:2:{i:0;R:13473;i:1;R:799;}s:14:"8:openidserver";a:2:{i:0;R:13473;i:1;R:799;}s:12:"8:openidxrds";a:2:{i:0;R:13473;i:1;R:799;}s:15:"8:openidconvert";a:2:{i:0;R:13473;i:1;R:799;}s:13:"8:openiderror";a:2:{i:0;R:13473;i:1;R:799;}s:17:"8:openiderrortext";a:2:{i:0;R:13473;i:1;R:799;}s:19:"8:openidconfigerror";a:2:{i:0;R:13473;i:1;R:799;}s:23:"8:openidconfigerrortext";a:2:{i:0;R:13473;i:1;R:799;}s:18:"8:openidpermission";a:2:{i:0;R:13473;i:1;R:799;}s:22:"8:openidpermissiontext";a:2:{i:0;R:13473;i:1;R:799;}s:14:"8:openidcancel";a:2:{i:0;R:13473;i:1;R:799;}s:18:"8:openidcanceltext";a:2:{i:0;R:13473;i:1;R:799;}s:15:"8:openidfailure";a:2:{i:0;R:13473;i:1;R:799;}s:19:"8:openidfailuretext";a:2:{i:0;R:13473;i:1;R:799;}s:15:"8:openidsuccess";a:2:{i:0;R:13473;i:1;R:799;}s:19:"8:openidsuccesstext";a:2:{i:0;R:13473;i:1;R:799;}s:22:"8:openidusernameprefix";a:2:{i:0;R:13473;i:1;R:799;}s:31:"8:openidserverlogininstructions";a:2:{i:0;R:13473;i:1;R:799;}s:25:"8:openidtrustinstructions";a:2:{i:0;R:13473;i:1;R:799;}s:18:"8:openidallowtrust";a:2:{i:0;R:13473;i:1;R:799;}s:16:"8:openidnopolicy";a:2:{i:0;R:13473;i:1;R:799;}s:14:"8:openidpolicy";a:2:{i:0;R:13473;i:1;R:799;}s:16:"8:openidoptional";a:2:{i:0;R:13473;i:1;R:799;}s:16:"8:openidrequired";a:2:{i:0;R:13473;i:1;R:799;}s:16:"8:openidnickname";a:2:{i:0;R:13473;i:1;R:799;}s:16:"8:openidfullname";a:2:{i:0;R:13473;i:1;R:799;}s:13:"8:openidemail";a:2:{i:0;R:13473;i:1;R:799;}s:16:"8:openidlanguage";a:2:{i:0;R:13473;i:1;R:799;}s:16:"8:openidtimezone";a:2:{i:0;R:13473;i:1;R:799;}s:20:"8:openidchooselegend";a:2:{i:0;R:13473;i:1;R:799;}s:26:"8:openidchooseinstructions";a:2:{i:0;R:13473;i:1;R:799;}s:18:"8:openidchoosenick";a:2:{i:0;R:13473;i:1;R:799;}s:18:"8:openidchoosefull";a:2:{i:0;R:13473;i:1;R:799;}s:17:"8:openidchooseurl";a:2:{i:0;R:13473;i:1;R:799;}s:18:"8:openidchooseauto";a:2:{i:0;R:13473;i:1;R:799;}s:20:"8:openidchoosemanual";a:2:{i:0;R:13473;i:1;R:799;}s:22:"8:openidchooseexisting";a:2:{i:0;R:13473;i:1;R:799;}s:22:"8:openidchooseusername";a:2:{i:0;R:13473;i:1;R:799;}s:22:"8:openidchoosepassword";a:2:{i:0;R:13473;i:1;R:799;}s:27:"8:openidconvertinstructions";a:2:{i:0;R:13473;i:1;R:799;}s:27:"8:openidconvertoraddmoreids";a:2:{i:0;R:13473;i:1;R:799;}s:22:"8:openidconvertsuccess";a:2:{i:0;R:13473;i:1;R:799;}s:26:"8:openidconvertsuccesstext";a:2:{i:0;R:13473;i:1;R:799;}s:24:"8:openidconvertyourstext";a:2:{i:0;R:13473;i:1;R:799;}s:24:"8:openidconvertothertext";a:2:{i:0;R:13473;i:1;R:799;}s:23:"8:openidalreadyloggedin";a:2:{i:0;R:13473;i:1;R:799;}s:27:"8:openidalreadyloggedintext";a:2:{i:0;R:13473;i:1;R:799;}s:18:"8:openidnousername";a:2:{i:0;R:13473;i:1;R:799;}s:19:"8:openidbadusername";a:2:{i:0;R:13473;i:1;R:799;}s:18:"8:openidautosubmit";a:2:{i:0;R:13473;i:1;R:799;}s:22:"8:openidclientonlytext";a:2:{i:0;R:13473;i:1;R:799;}s:18:"8:openidloginlabel";a:2:{i:0;R:13473;i:1;R:799;}s:25:"8:openidlogininstructions";a:2:{i:0;R:13473;i:1;R:799;}s:41:"8:openidlogininstructions-openidloginonly";a:2:{i:0;R:13473;i:1;R:799;}s:46:"8:openidlogininstructions-passwordloginallowed";a:2:{i:0;R:13473;i:1;R:799;}s:22:"8:openidupdateuserinfo";a:2:{i:0;R:13473;i:1;R:799;}s:14:"8:openiddelete";a:2:{i:0;R:13473;i:1;R:799;}s:19:"8:openiddelete-text";a:2:{i:0;R:13473;i:1;R:799;}s:21:"8:openiddelete-button";a:2:{i:0;R:13473;i:1;R:799;}s:29:"8:openiddeleteerrornopassword";a:2:{i:0;R:13473;i:1;R:799;}s:29:"8:openiddeleteerroropenidonly";a:2:{i:0;R:13473;i:1;R:799;}s:21:"8:openiddelete-sucess";a:2:{i:0;R:13473;i:1;R:799;}s:20:"8:openiddelete-error";a:2:{i:0;R:13473;i:1;R:799;}s:32:"8:openid-openids-were-not-merged";a:2:{i:0;R:13473;i:1;R:799;}s:14:"8:prefs-openid";a:2:{i:0;R:13473;i:1;R:799;}s:18:"8:openid-prefstext";a:2:{i:0;R:13473;i:1;R:799;}s:18:"8:openid-pref-hide";a:2:{i:0;R:13473;i:1;R:799;}s:38:"8:openid-pref-update-userinfo-on-login";a:2:{i:0;R:13473;i:1;R:799;}s:18:"8:openid-urls-desc";a:2:{i:0;R:13473;i:1;R:799;}s:17:"8:openid-urls-url";a:2:{i:0;R:13473;i:1;R:799;}s:20:"8:openid-urls-action";a:2:{i:0;R:13473;i:1;R:799;}s:26:"8:openid-urls-registration";a:2:{i:0;R:13473;i:1;R:799;}s:36:"8:openid-urls-registration-date-time";a:2:{i:0;R:13473;i:1;R:799;}s:20:"8:openid-urls-delete";a:2:{i:0;R:13473;i:1;R:799;}s:16:"8:openid-add-url";a:2:{i:0;R:13473;i:1;R:799;}s:32:"8:openid-login-or-create-account";a:2:{i:0;R:13473;i:1;R:799;}s:30:"8:openid-provider-label-openid";a:2:{i:0;R:13473;i:1;R:799;}s:30:"8:openid-provider-label-google";a:2:{i:0;R:13473;i:1;R:799;}s:29:"8:openid-provider-label-yahoo";a:2:{i:0;R:13473;i:1;R:799;}s:27:"8:openid-provider-label-aol";a:2:{i:0;R:13473;i:1;R:799;}s:38:"8:openid-provider-label-other-username";a:2:{i:0;R:13473;i:1;R:799;}s:27:"8:specialpages-group-openid";a:2:{i:0;R:13473;i:1;R:799;}s:31:"8:right-openid-converter-access";a:2:{i:0;R:13473;i:1;R:799;}s:31:"8:right-openid-dashboard-access";a:2:{i:0;R:13473;i:1;R:799;}s:30:"8:right-openid-dashboard-admin";a:2:{i:0;R:13473;i:1;R:799;}s:24:"8:openid-dashboard-title";a:2:{i:0;R:13473;i:1;R:799;}s:30:"8:openid-dashboard-title-admin";a:2:{i:0;R:13473;i:1;R:799;}s:31:"8:openid-dashboard-introduction";a:2:{i:0;R:13473;i:1;R:799;}s:38:"8:openid-dashboard-number-openid-users";a:2:{i:0;R:13473;i:1;R:799;}s:45:"8:openid-dashboard-number-openids-in-database";a:2:{i:0;R:13473;i:1;R:799;}s:46:"8:openid-dashboard-number-users-without-openid";a:2:{i:0;R:13473;i:1;R:799;}s:18:"8:oracletextsearch";a:2:{i:0;s:20:"ext-oracletextsearch";i:1;R:799;}s:23:"8:oracletextsearch-desc";a:2:{i:0;R:13566;i:1;R:799;}s:12:"8:othersites";a:2:{i:0;s:14:"ext-othersites";i:1;R:799;}s:17:"8:othersites-desc";a:2:{i:0;R:13569;i:1;R:799;}s:14:"8:packageforce";a:2:{i:0;s:16:"ext-packageforce";i:1;R:799;}s:19:"8:packageforceadmin";a:2:{i:0;R:13572;i:1;R:799;}s:9:"8:pf-desc";a:2:{i:0;R:13572;i:1;R:799;}s:24:"8:pf-only-admins-allowed";a:2:{i:0;R:13572;i:1;R:799;}s:23:"8:pf-admin-menu-default";a:2:{i:0;R:13572;i:1;R:799;}s:33:"8:pf-admin-menu-unsortedtemplates";a:2:{i:0;R:13572;i:1;R:799;}s:34:"8:pf-admin-link-view-documentation";a:2:{i:0;R:13572;i:1;R:799;}s:29:"8:pf-admin-link-editlink-page";a:2:{i:0;R:13572;i:1;R:799;}s:23:"8:pf-admin-link-approve";a:2:{i:0;R:13572;i:1;R:799;}s:25:"8:pf-header-documentation";a:2:{i:0;R:13572;i:1;R:799;}s:23:"8:pf-header-in_packages";a:2:{i:0;R:13572;i:1;R:799;}s:16:"8:pf-header-edit";a:2:{i:0;R:13572;i:1;R:799;}s:16:"8:pf-header-type";a:2:{i:0;R:13572;i:1;R:799;}s:22:"8:pf-header-page_title";a:2:{i:0;R:13572;i:1;R:799;}s:19:"8:pf-header-approve";a:2:{i:0;R:13572;i:1;R:799;}s:13:"8:pageby-desc";a:2:{i:0;s:10:"ext-pageby";i:1;R:799;}s:14:"8:pageby-first";a:2:{i:0;R:13588;i:1;R:799;}s:13:"8:pageby-last";a:2:{i:0;R:13588;i:1;R:799;}s:21:"8:pageby-contributors";a:2:{i:0;R:13588;i:1;R:799;}s:13:"8:pageby-anon";a:2:{i:0;R:13588;i:1;R:799;}s:11:"8:tiff-desc";a:2:{i:0;s:20:"ext-pagedtiffhandler";i:1;R:799;}s:18:"8:tiff_no_metadata";a:2:{i:0;R:13594;i:1;R:799;}s:17:"8:tiff_page_error";a:2:{i:0;R:13594;i:1;R:799;}s:27:"8:tiff_too_many_embed_files";a:2:{i:0;R:13594;i:1;R:799;}s:27:"8:tiff_sourcefile_too_large";a:2:{i:0;R:13594;i:1;R:799;}s:27:"8:tiff_targetfile_too_large";a:2:{i:0;R:13594;i:1;R:799;}s:21:"8:tiff_file_too_large";a:2:{i:0;R:13594;i:1;R:799;}s:21:"8:tiff_out_of_service";a:2:{i:0;R:13594;i:1;R:799;}s:20:"8:tiff_too_much_meta";a:2:{i:0;R:13594;i:1;R:799;}s:19:"8:tiff_error_cached";a:2:{i:0;R:13594;i:1;R:799;}s:17:"8:tiff_size_error";a:2:{i:0;R:13594;i:1;R:799;}s:22:"8:tiff_script_detected";a:2:{i:0;R:13594;i:1;R:799;}s:15:"8:tiff_bad_file";a:2:{i:0;R:13594;i:1;R:799;}s:21:"8:tiff-file-info-size";a:2:{i:0;R:13594;i:1;R:799;}s:16:"8:pageincat-desc";a:2:{i:0;s:13:"ext-pageincat";i:1;R:799;}s:22:"8:pageincat-wrong-warn";a:2:{i:0;R:13609;i:1;R:799;}s:27:"8:pageincat-very-wrong-warn";a:2:{i:0;R:13609;i:1;R:799;}s:22:"8:pageobjectmodel-desc";a:2:{i:0;s:19:"ext-pageobjectmodel";i:1;R:799;}s:9:"8:ps-desc";a:2:{i:0;s:15:"ext-pageschemas";i:1;R:799;}s:23:"8:ps-schema-description";a:2:{i:0;R:13615;i:1;R:799;}s:15:"8:generatepages";a:2:{i:0;R:13615;i:1;R:799;}s:23:"8:ps-generatepages-desc";a:2:{i:0;R:13615;i:1;R:799;}s:26:"8:ps-generatepages-success";a:2:{i:0;R:13615;i:1;R:799;}s:27:"8:ps-generatepages-noschema";a:2:{i:0;R:13615;i:1;R:799;}s:30:"8:ps-generatepages-editsummary";a:2:{i:0;R:13615;i:1;R:799;}s:28:"8:ps-page-desc-cat-not-exist";a:2:{i:0;R:13615;i:1;R:799;}s:27:"8:ps-page-desc-ps-not-exist";a:2:{i:0;R:13615;i:1;R:799;}s:26:"8:ps-page-desc-edit-schema";a:2:{i:0;R:13615;i:1;R:799;}s:20:"8:ps-delimiter-label";a:2:{i:0;R:13615;i:1;R:799;}s:24:"8:ps-multiple-temp-label";a:2:{i:0;R:13615;i:1;R:799;}s:21:"8:ps-field-list-label";a:2:{i:0;R:13615;i:1;R:799;}s:13:"8:ps-template";a:2:{i:0;R:13615;i:1;R:799;}s:17:"8:ps-add-template";a:2:{i:0;R:13615;i:1;R:799;}s:20:"8:ps-remove-template";a:2:{i:0;R:13615;i:1;R:799;}s:10:"8:ps-field";a:2:{i:0;R:13615;i:1;R:799;}s:14:"8:ps-namelabel";a:2:{i:0;R:13615;i:1;R:799;}s:17:"8:ps-displaylabel";a:2:{i:0;R:13615;i:1;R:799;}s:14:"8:ps-add-field";a:2:{i:0;R:13615;i:1;R:799;}s:17:"8:ps-remove-field";a:2:{i:0;R:13615;i:1;R:799;}s:18:"8:ps-add-xml-label";a:2:{i:0;R:13615;i:1;R:799;}s:18:"8:ps-optional-name";a:2:{i:0;R:13615;i:1;R:799;}s:12:"8:editschema";a:2:{i:0;R:13615;i:1;R:799;}s:14:"8:createschema";a:2:{i:0;R:13615;i:1;R:799;}s:21:"8:right-generatepages";a:2:{i:0;R:13615;i:1;R:799;}s:22:"8:action-generatepages";a:2:{i:0;R:13615;i:1;R:799;}s:16:"8:parserfun-desc";a:2:{i:0;s:13:"ext-parserfun";i:1;R:799;}s:31:"8:parserfun-invalid-caller-mode";a:2:{i:0;R:13643;i:1;R:799;}s:17:"8:parserwiki-desc";a:2:{i:0;s:14:"ext-parserwiki";i:1;R:799;}s:8:"8:patrol";a:2:{i:0;s:13:"ext-patroller";i:1;R:799;}s:13:"8:patrol-desc";a:2:{i:0;R:13648;i:1;R:799;}s:16:"8:patrol-endorse";a:2:{i:0;R:13648;i:1;R:799;}s:15:"8:patrol-revert";a:2:{i:0;R:13648;i:1;R:799;}s:22:"8:patrol-revert-reason";a:2:{i:0;R:13648;i:1;R:799;}s:13:"8:patrol-skip";a:2:{i:0;R:13648;i:1;R:799;}s:18:"8:patrol-reverting";a:2:{i:0;R:13648;i:1;R:799;}s:18:"8:patrol-nonefound";a:2:{i:0;R:13648;i:1;R:799;}s:20:"8:patrol-endorsed-ok";a:2:{i:0;R:13648;i:1;R:799;}s:24:"8:patrol-endorsed-failed";a:2:{i:0;R:13648;i:1;R:799;}s:20:"8:patrol-reverted-ok";a:2:{i:0;R:13648;i:1;R:799;}s:24:"8:patrol-reverted-failed";a:2:{i:0;R:13648;i:1;R:799;}s:19:"8:patrol-skipped-ok";a:2:{i:0;R:13648;i:1;R:799;}s:16:"8:patrol-reasons";a:2:{i:0;R:13648;i:1;R:799;}s:16:"8:patrol-another";a:2:{i:0;R:13648;i:1;R:799;}s:16:"8:patrol-stopped";a:2:{i:0;R:13648;i:1;R:799;}s:15:"8:patrol-resume";a:2:{i:0;R:13648;i:1;R:799;}s:17:"8:group-patroller";a:2:{i:0;R:13648;i:1;R:799;}s:24:"8:group-patroller-member";a:2:{i:0;R:13648;i:1;R:799;}s:21:"8:grouppage-patroller";a:2:{i:0;R:13648;i:1;R:799;}s:17:"8:right-patroller";a:2:{i:0;R:13648;i:1;R:799;}s:21:"8:group-patroller.css";a:2:{i:0;R:13648;i:1;R:799;}s:20:"8:group-patroller.js";a:2:{i:0;R:13648;i:1;R:799;}s:16:"8:pdfbook-action";a:2:{i:0;s:11:"ext-pdfbook";i:1;R:799;}s:13:"8:pdfbook-log";a:2:{i:0;R:13672;i:1;R:799;}s:14:"8:pdfbook-desc";a:2:{i:0;R:13672;i:1;R:799;}s:23:"8:peoplecategories-desc";a:2:{i:0;s:20:"ext-peoplecategories";i:1;R:799;}s:17:"8:pipeescape-desc";a:2:{i:0;s:14:"ext-pipeescape";i:1;R:799;}s:12:"8:piwik-desc";a:2:{i:0;s:9:"ext-piwik";i:1;R:799;}s:7:"8:piwik";a:2:{i:0;R:13680;i:1;R:799;}s:18:"8:piwik-lastvisits";a:2:{i:0;R:13680;i:1;R:799;}s:17:"8:piwik-countries";a:2:{i:0;R:13680;i:1;R:799;}s:16:"8:piwik-browsers";a:2:{i:0;R:13680;i:1;R:799;}s:17:"8:right-viewpiwik";a:2:{i:0;R:13680;i:1;R:799;}s:8:"8:player";a:2:{i:0;s:10:"ext-player";i:1;R:799;}s:13:"8:player-desc";a:2:{i:0;R:13687;i:1;R:799;}s:14:"8:player-title";a:2:{i:0;R:13687;i:1;R:799;}s:20:"8:player-playertitle";a:2:{i:0;R:13687;i:1;R:799;}s:17:"8:player-pagetext";a:2:{i:0;R:13687;i:1;R:799;}s:13:"8:player-file";a:2:{i:0;R:13687;i:1;R:799;}s:13:"8:player-play";a:2:{i:0;R:13687;i:1;R:799;}s:25:"8:player-imagepage-header";a:2:{i:0;R:13687;i:1;R:799;}s:20:"8:player-not-allowed";a:2:{i:0;R:13687;i:1;R:799;}s:18:"8:player-not-found";a:2:{i:0;R:13687;i:1;R:799;}s:22:"8:player-invalid-title";a:2:{i:0;R:13687;i:1;R:799;}s:20:"8:player-clicktoplay";a:2:{i:0;R:13687;i:1;R:799;}s:20:"8:player-goto-player";a:2:{i:0;R:13687;i:1;R:799;}s:18:"8:player-goto-page";a:2:{i:0;R:13687;i:1;R:799;}s:18:"8:player-goto-file";a:2:{i:0;R:13687;i:1;R:799;}s:15:"8:plotters-desc";a:2:{i:0;s:12:"ext-plotters";i:1;R:799;}s:10:"8:plotters";a:2:{i:0;R:13703;i:1;R:799;}s:16:"8:plotters-title";a:2:{i:0;R:13703;i:1;R:799;}s:19:"8:plotters-pagetext";a:2:{i:0;R:13703;i:1;R:799;}s:15:"8:plotters-uses";a:2:{i:0;R:13703;i:1;R:799;}s:25:"8:plotters-missing-script";a:2:{i:0;R:13703;i:1;R:799;}s:28:"8:plotters-missing-arguments";a:2:{i:0;R:13703;i:1;R:799;}s:38:"8:plotters-excessively-long-scriptname";a:2:{i:0;R:13703;i:1;R:799;}s:44:"8:plotters-excessively-long-preprocessorname";a:2:{i:0;R:13703;i:1;R:799;}s:32:"8:plotters-excessively-long-name";a:2:{i:0;R:13703;i:1;R:799;}s:38:"8:plotters-excessively-long-tableclass";a:2:{i:0;R:13703;i:1;R:799;}s:18:"8:plotters-no-data";a:2:{i:0;R:13703;i:1;R:799;}s:27:"8:plotters-invalid-renderer";a:2:{i:0;R:13703;i:1;R:799;}s:17:"8:plotters-errors";a:2:{i:0;R:13703;i:1;R:799;}s:10:"8:povwatch";a:2:{i:0;s:12:"ext-povwatch";i:1;R:799;}s:15:"8:povwatch_desc";a:2:{i:0;R:13718;i:1;R:799;}s:21:"8:povwatch_no_session";a:2:{i:0;R:13718;i:1;R:799;}s:27:"8:povwatch_not_allowed_push";a:2:{i:0;R:13718;i:1;R:799;}s:29:"8:povwatch_already_subscribed";a:2:{i:0;R:13718;i:1;R:799;}s:21:"8:povwatch_subscribed";a:2:{i:0;R:13718;i:1;R:799;}s:25:"8:povwatch_not_subscribed";a:2:{i:0;R:13718;i:1;R:799;}s:23:"8:povwatch_unsubscribed";a:2:{i:0;R:13718;i:1;R:799;}s:24:"8:povwatch_invalid_title";a:2:{i:0;R:13718;i:1;R:799;}s:17:"8:povwatch_pushed";a:2:{i:0;R:13718;i:1;R:799;}s:16:"8:povwatch_intro";a:2:{i:0;R:13718;i:1;R:799;}s:26:"8:povwatch_subscriber_list";a:2:{i:0;R:13718;i:1;R:799;}s:32:"8:povwatch_subscriber_list_intro";a:2:{i:0;R:13718;i:1;R:799;}s:34:"8:povwatch_not_allowed_subscribers";a:2:{i:0;R:13718;i:1;R:799;}s:26:"8:povwatch_unknown_subpage";a:2:{i:0;R:13718;i:1;R:799;}s:15:"8:povwatch_push";a:2:{i:0;R:13718;i:1;R:799;}s:21:"8:povwatch_push_intro";a:2:{i:0;R:13718;i:1;R:799;}s:16:"8:povwatch_title";a:2:{i:0;R:13718;i:1;R:799;}s:18:"8:povwatch_comment";a:2:{i:0;R:13718;i:1;R:799;}s:17:"8:povwatch_no_log";a:2:{i:0;R:13718;i:1;R:799;}s:25:"8:povwatch_no_subscribers";a:2:{i:0;R:13718;i:1;R:799;}s:28:"8:povwatch_unsubscribe_intro";a:2:{i:0;R:13718;i:1;R:799;}s:22:"8:povwatch_unsubscribe";a:2:{i:0;R:13718;i:1;R:799;}s:26:"8:povwatch_subscribe_intro";a:2:{i:0;R:13718;i:1;R:799;}s:20:"8:povwatch_subscribe";a:2:{i:0;R:13718;i:1;R:799;}s:16:"8:povwatch_added";a:2:{i:0;R:13718;i:1;R:799;}s:22:"8:right-povwatch_admin";a:2:{i:0;R:13718;i:1;R:799;}s:21:"8:right-povwatch_user";a:2:{i:0;R:13718;i:1;R:799;}s:23:"8:action-povwatch_admin";a:2:{i:0;R:13718;i:1;R:799;}s:22:"8:action-povwatch_user";a:2:{i:0;R:13718;i:1;R:799;}s:11:"8:prefstats";a:2:{i:0;s:13:"ext-prefstats";i:1;R:799;}s:16:"8:prefstats-desc";a:2:{i:0;R:13749;i:1;R:799;}s:17:"8:prefstats-title";a:2:{i:0;R:13749;i:1;R:799;}s:22:"8:prefstats-list-intro";a:2:{i:0;R:13749;i:1;R:799;}s:21:"8:prefstats-list-elem";a:2:{i:0;R:13749;i:1;R:799;}s:19:"8:prefstats-noprefs";a:2:{i:0;R:13749;i:1;R:799;}s:20:"8:prefstats-counters";a:2:{i:0;R:13749;i:1;R:799;}s:30:"8:prefstats-counters-expensive";a:2:{i:0;R:13749;i:1;R:799;}s:17:"8:prefstats-xaxis";a:2:{i:0;R:13749;i:1;R:799;}s:19:"8:prefstats-factors";a:2:{i:0;R:13749;i:1;R:799;}s:23:"8:prefstats-factor-hour";a:2:{i:0;R:13749;i:1;R:799;}s:27:"8:prefstats-factor-sixhours";a:2:{i:0;R:13749;i:1;R:799;}s:22:"8:prefstats-factor-day";a:2:{i:0;R:13749;i:1;R:799;}s:23:"8:prefstats-factor-week";a:2:{i:0;R:13749;i:1;R:799;}s:27:"8:prefstats-factor-twoweeks";a:2:{i:0;R:13749;i:1;R:799;}s:28:"8:prefstats-factor-fourweeks";a:2:{i:0;R:13749;i:1;R:799;}s:26:"8:prefstats-factor-default";a:2:{i:0;R:13749;i:1;R:799;}s:22:"8:prefstats-legend-out";a:2:{i:0;R:13749;i:1;R:799;}s:21:"8:prefstats-legend-in";a:2:{i:0;R:13749;i:1;R:799;}s:16:"8:preloader-desc";a:2:{i:0;s:13:"ext-preloader";i:1;R:799;}s:23:"8:previewfunctions-desc";a:2:{i:0;s:20:"ext-previewfunctions";i:1;R:799;}s:31:"8:privatedomains-nomanageaccess";a:2:{i:0;s:18:"ext-privatedomains";i:1;R:799;}s:16:"8:privatedomains";a:2:{i:0;R:13773;i:1;R:799;}s:31:"8:privatedomains-ifemailcontact";a:2:{i:0;R:13773;i:1;R:799;}s:28:"8:saveprivatedomains-success";a:2:{i:0;R:13773;i:1;R:799;}s:29:"8:privatedomains-invalidemail";a:2:{i:0;R:13773;i:1;R:799;}s:35:"8:privatedomains-affiliatenamelabel";a:2:{i:0;R:13773;i:1;R:799;}s:32:"8:privatedomains-emailadminlabel";a:2:{i:0;R:13773;i:1;R:799;}s:29:"8:privatedomains-instructions";a:2:{i:0;R:13773;i:1;R:799;}s:22:"8:right-privatedomains";a:2:{i:0;R:13773;i:1;R:799;}s:16:"8:privatepp-desc";a:2:{i:0;s:25:"ext-privatepageprotection";i:1;R:799;}s:29:"8:privatepp-lockout-prevented";a:2:{i:0;R:13783;i:1;R:799;}s:11:"8:profiling";a:2:{i:0;s:18:"ext-profilemonitor";i:1;R:799;}s:16:"8:profiling-desc";a:2:{i:0;R:13786;i:1;R:799;}s:19:"8:profiling-process";a:2:{i:0;R:13786;i:1;R:799;}s:20:"8:profiling-wildcard";a:2:{i:0;R:13786;i:1;R:799;}s:14:"8:profiling-ok";a:2:{i:0;R:13786;i:1;R:799;}s:16:"8:profiling-data";a:2:{i:0;R:13786;i:1;R:799;}s:24:"8:profiling-data-process";a:2:{i:0;R:13786;i:1;R:799;}s:22:"8:profiling-data-count";a:2:{i:0;R:13786;i:1;R:799;}s:21:"8:profiling-data-time";a:2:{i:0;R:13786;i:1;R:799;}s:24:"8:profiling-data-average";a:2:{i:0;R:13786;i:1;R:799;}s:19:"8:profiling-no-data";a:2:{i:0;R:13786;i:1;R:799;}s:21:"8:protectsection_desc";a:2:{i:0;s:18:"ext-protectsection";i:1;R:799;}s:27:"8:protectsection_add_remove";a:2:{i:0;R:13798;i:1;R:799;}s:23:"8:protectsection_modify";a:2:{i:0;R:13798;i:1;R:799;}s:26:"8:protectsection_add_above";a:2:{i:0;R:13798;i:1;R:799;}s:26:"8:protectsection_forbidden";a:2:{i:0;R:13798;i:1;R:799;}s:22:"8:right-protectsection";a:2:{i:0;R:13798;i:1;R:799;}s:13:"8:protectsite";a:2:{i:0;s:15:"ext-protectsite";i:1;R:799;}s:18:"8:protectsite-desc";a:2:{i:0;R:13805;i:1;R:799;}s:26:"8:protectsite-text-protect";a:2:{i:0;R:13805;i:1;R:799;}s:28:"8:protectsite-text-unprotect";a:2:{i:0;R:13805;i:1;R:799;}s:19:"8:protectsite-title";a:2:{i:0;R:13805;i:1;R:799;}s:22:"8:protectsite-allowall";a:2:{i:0;R:13805;i:1;R:799;}s:28:"8:protectsite-allowusersysop";a:2:{i:0;R:13805;i:1;R:799;}s:24:"8:protectsite-allowsysop";a:2:{i:0;R:13805;i:1;R:799;}s:27:"8:protectsite-createaccount";a:2:{i:0;R:13805;i:1;R:799;}s:24:"8:protectsite-createpage";a:2:{i:0;R:13805;i:1;R:799;}s:18:"8:protectsite-edit";a:2:{i:0;R:13805;i:1;R:799;}s:18:"8:protectsite-move";a:2:{i:0;R:13805;i:1;R:799;}s:20:"8:protectsite-upload";a:2:{i:0;R:13805;i:1;R:799;}s:21:"8:protectsite-timeout";a:2:{i:0;R:13805;i:1;R:799;}s:27:"8:protectsite-timeout-error";a:2:{i:0;R:13805;i:1;R:799;}s:24:"8:protectsite-maxtimeout";a:2:{i:0;R:13805;i:1;R:799;}s:21:"8:protectsite-comment";a:2:{i:0;R:13805;i:1;R:799;}s:22:"8:protectsite-ucomment";a:2:{i:0;R:13805;i:1;R:799;}s:19:"8:protectsite-until";a:2:{i:0;R:13805;i:1;R:799;}s:21:"8:protectsite-protect";a:2:{i:0;R:13805;i:1;R:799;}s:23:"8:protectsite-unprotect";a:2:{i:0;R:13805;i:1;R:799;}s:29:"8:protectsite-createaccount-0";a:2:{i:0;R:13805;i:1;R:799;}s:29:"8:protectsite-createaccount-1";a:2:{i:0;R:13805;i:1;R:799;}s:29:"8:protectsite-createaccount-2";a:2:{i:0;R:13805;i:1;R:799;}s:26:"8:protectsite-createpage-0";a:2:{i:0;R:13805;i:1;R:799;}s:26:"8:protectsite-createpage-1";a:2:{i:0;R:13805;i:1;R:799;}s:26:"8:protectsite-createpage-2";a:2:{i:0;R:13805;i:1;R:799;}s:20:"8:protectsite-edit-0";a:2:{i:0;R:13805;i:1;R:799;}s:20:"8:protectsite-edit-1";a:2:{i:0;R:13805;i:1;R:799;}s:20:"8:protectsite-edit-2";a:2:{i:0;R:13805;i:1;R:799;}s:20:"8:protectsite-move-0";a:2:{i:0;R:13805;i:1;R:799;}s:20:"8:protectsite-move-1";a:2:{i:0;R:13805;i:1;R:799;}s:22:"8:protectsite-upload-0";a:2:{i:0;R:13805;i:1;R:799;}s:22:"8:protectsite-upload-1";a:2:{i:0;R:13805;i:1;R:799;}s:19:"8:right-protectsite";a:2:{i:0;R:13805;i:1;R:799;}s:19:"8:proxyconnect-desc";a:2:{i:0;s:16:"ext-proxyconnect";i:1;R:799;}s:18:"8:psinotocnum-desc";a:2:{i:0;s:15:"ext-psinotocnum";i:1;R:799;}s:18:"8:purewikideletion";a:2:{i:0;s:20:"ext-purewikideletion";i:1;R:799;}s:20:"8:randomexcludeblank";a:2:{i:0;R:13845;i:1;R:799;}s:27:"8:populateblankedpagestable";a:2:{i:0;R:13845;i:1;R:799;}s:23:"8:purewikideletion-desc";a:2:{i:0;R:13845;i:1;R:799;}s:34:"8:purewikideletion-pref-watchblank";a:2:{i:0;R:13845;i:1;R:799;}s:36:"8:purewikideletion-pref-watchunblank";a:2:{i:0;R:13845;i:1;R:799;}s:26:"8:purewikideletion-blanked";a:2:{i:0;R:13845;i:1;R:799;}s:11:"8:blank-log";a:2:{i:0;R:13845;i:1;R:799;}s:16:"8:blank-log-name";a:2:{i:0;R:13845;i:1;R:799;}s:18:"8:blank-log-header";a:2:{i:0;R:13845;i:1;R:799;}s:23:"8:blank-log-entry-blank";a:2:{i:0;R:13845;i:1;R:799;}s:25:"8:blank-log-entry-unblank";a:2:{i:0;R:13845;i:1;R:799;}s:16:"8:blank-log-link";a:2:{i:0;R:13845;i:1;R:799;}s:31:"8:purewikideletion-blanknologin";a:2:{i:0;R:13845;i:1;R:799;}s:35:"8:purewikideletion-blanknologintext";a:2:{i:0;R:13845;i:1;R:799;}s:37:"8:purewikideletion-unblanknologintext";a:2:{i:0;R:13845;i:1;R:799;}s:30:"8:purewikideletion-blankedtext";a:2:{i:0;R:13845;i:1;R:799;}s:34:"8:purewikideletion-population-done";a:2:{i:0;R:13845;i:1;R:799;}s:24:"8:right-purewikideletion";a:2:{i:0;R:13845;i:1;R:799;}s:7:"8:purge";a:2:{i:0;s:9:"ext-purge";i:1;R:799;}s:12:"8:purge-desc";a:2:{i:0;R:13865;i:1;R:799;}s:12:"8:purgecache";a:2:{i:0;s:14:"ext-purgecache";i:1;R:799;}s:17:"8:purgecache-desc";a:2:{i:0;R:13868;i:1;R:799;}s:20:"8:purgecache-warning";a:2:{i:0;R:13868;i:1;R:799;}s:19:"8:purgecache-purged";a:2:{i:0;R:13868;i:1;R:799;}s:19:"8:purgecache-button";a:2:{i:0;R:13868;i:1;R:799;}s:18:"8:right-purgecache";a:2:{i:0;R:13868;i:1;R:799;}s:11:"8:push-desc";a:2:{i:0;s:8:"ext-push";i:1;R:799;}s:12:"8:right-push";a:2:{i:0;R:13875;i:1;R:799;}s:16:"8:right-bulkpush";a:2:{i:0;R:13875;i:1;R:799;}s:17:"8:right-pushadmin";a:2:{i:0;R:13875;i:1;R:799;}s:13:"8:action-push";a:2:{i:0;R:13875;i:1;R:799;}s:17:"8:action-bulkpush";a:2:{i:0;R:13875;i:1;R:799;}s:18:"8:action-pushadmin";a:2:{i:0;R:13875;i:1;R:799;}s:14:"8:group-pusher";a:2:{i:0;R:13875;i:1;R:799;}s:21:"8:group-pusher-member";a:2:{i:0;R:13875;i:1;R:799;}s:18:"8:grouppage-pusher";a:2:{i:0;R:13875;i:1;R:799;}s:18:"8:group-bulkpusher";a:2:{i:0;R:13875;i:1;R:799;}s:25:"8:group-bulkpusher-member";a:2:{i:0;R:13875;i:1;R:799;}s:22:"8:grouppage-bulkpusher";a:2:{i:0;R:13875;i:1;R:799;}s:18:"8:group-filepusher";a:2:{i:0;R:13875;i:1;R:799;}s:25:"8:group-filepusher-member";a:2:{i:0;R:13875;i:1;R:799;}s:22:"8:grouppage-filepusher";a:2:{i:0;R:13875;i:1;R:799;}s:18:"8:group-pusher.css";a:2:{i:0;R:13875;i:1;R:799;}s:17:"8:group-pusher.js";a:2:{i:0;R:13875;i:1;R:799;}s:22:"8:group-bulkpusher.css";a:2:{i:0;R:13875;i:1;R:799;}s:21:"8:group-bulkpusher.js";a:2:{i:0;R:13875;i:1;R:799;}s:22:"8:group-filepusher.css";a:2:{i:0;R:13875;i:1;R:799;}s:21:"8:group-filepusher.js";a:2:{i:0;R:13875;i:1;R:799;}s:19:"8:push-err-captacha";a:2:{i:0;R:13875;i:1;R:799;}s:23:"8:push-err-captcha-page";a:2:{i:0;R:13875;i:1;R:799;}s:25:"8:push-err-authentication";a:2:{i:0;R:13875;i:1;R:799;}s:15:"8:push-tab-text";a:2:{i:0;R:13875;i:1;R:799;}s:18:"8:push-button-text";a:2:{i:0;R:13875;i:1;R:799;}s:15:"8:push-tab-desc";a:2:{i:0;R:13875;i:1;R:799;}s:21:"8:push-button-pushing";a:2:{i:0;R:13875;i:1;R:799;}s:27:"8:push-button-pushing-files";a:2:{i:0;R:13875;i:1;R:799;}s:23:"8:push-button-completed";a:2:{i:0;R:13875;i:1;R:799;}s:20:"8:push-button-failed";a:2:{i:0;R:13875;i:1;R:799;}s:16:"8:push-tab-title";a:2:{i:0;R:13875;i:1;R:799;}s:14:"8:push-targets";a:2:{i:0;R:13875;i:1;R:799;}s:17:"8:push-add-target";a:2:{i:0;R:13875;i:1;R:799;}s:30:"8:push-import-revision-message";a:2:{i:0;R:13875;i:1;R:799;}s:21:"8:push-tab-no-targets";a:2:{i:0;R:13875;i:1;R:799;}s:18:"8:push-tab-push-to";a:2:{i:0;R:13875;i:1;R:799;}s:19:"8:push-remote-pages";a:2:{i:0;R:13875;i:1;R:799;}s:23:"8:push-remote-page-link";a:2:{i:0;R:13875;i:1;R:799;}s:28:"8:push-remote-page-link-full";a:2:{i:0;R:13875;i:1;R:799;}s:20:"8:push-targets-total";a:2:{i:0;R:13875;i:1;R:799;}s:17:"8:push-button-all";a:2:{i:0;R:13875;i:1;R:799;}s:20:"8:push-tab-last-edit";a:2:{i:0;R:13875;i:1;R:799;}s:22:"8:push-tab-not-created";a:2:{i:0;R:13875;i:1;R:799;}s:23:"8:push-tab-push-options";a:2:{i:0;R:13875;i:1;R:799;}s:24:"8:push-tab-inc-templates";a:2:{i:0;R:13875;i:1;R:799;}s:25:"8:push-tab-used-templates";a:2:{i:0;R:13875;i:1;R:799;}s:28:"8:push-tab-no-used-templates";a:2:{i:0;R:13875;i:1;R:799;}s:20:"8:push-tab-inc-files";a:2:{i:0;R:13875;i:1;R:799;}s:23:"8:push-tab-err-fileinfo";a:2:{i:0;R:13875;i:1;R:799;}s:31:"8:push-tab-err-filepush-unknown";a:2:{i:0;R:13875;i:1;R:799;}s:23:"8:push-tab-err-filepush";a:2:{i:0;R:13875;i:1;R:799;}s:25:"8:push-tab-embedded-files";a:2:{i:0;R:13875;i:1;R:799;}s:28:"8:push-tab-no-embedded-files";a:2:{i:0;R:13875;i:1;R:799;}s:25:"8:push-tab-files-override";a:2:{i:0;R:13875;i:1;R:799;}s:28:"8:push-tab-template-override";a:2:{i:0;R:13875;i:1;R:799;}s:29:"8:push-tab-err-uploaddisabled";a:2:{i:0;R:13875;i:1;R:799;}s:14:"8:special-push";a:2:{i:0;R:13875;i:1;R:799;}s:26:"8:push-special-description";a:2:{i:0;R:13875;i:1;R:799;}s:27:"8:push-special-pushing-desc";a:2:{i:0;R:13875;i:1;R:799;}s:26:"8:push-special-button-text";a:2:{i:0;R:13875;i:1;R:799;}s:24:"8:push-special-target-is";a:2:{i:0;R:13875;i:1;R:799;}s:29:"8:push-special-select-targets";a:2:{i:0;R:13875;i:1;R:799;}s:27:"8:push-special-item-pushing";a:2:{i:0;R:13875;i:1;R:799;}s:29:"8:push-special-item-completed";a:2:{i:0;R:13875;i:1;R:799;}s:26:"8:push-special-item-failed";a:2:{i:0;R:13875;i:1;R:799;}s:24:"8:push-special-push-done";a:2:{i:0;R:13875;i:1;R:799;}s:31:"8:push-special-err-token-failed";a:2:{i:0;R:13875;i:1;R:799;}s:33:"8:push-special-err-pageget-failed";a:2:{i:0;R:13875;i:1;R:799;}s:30:"8:push-special-err-push-failed";a:2:{i:0;R:13875;i:1;R:799;}s:24:"8:push-special-inc-files";a:2:{i:0;R:13875;i:1;R:799;}s:33:"8:push-special-err-imginfo-failed";a:2:{i:0;R:13875;i:1;R:799;}s:33:"8:push-special-obtaining-fileinfo";a:2:{i:0;R:13875;i:1;R:799;}s:27:"8:push-special-pushing-file";a:2:{i:0;R:13875;i:1;R:799;}s:21:"8:push-special-return";a:2:{i:0;R:13875;i:1;R:799;}s:21:"8:push-api-err-nocurl";a:2:{i:0;R:13875;i:1;R:799;}s:28:"8:push-api-err-nofilesupport";a:2:{i:0;R:13875;i:1;R:799;}s:13:"8:pollresults";a:2:{i:0;s:9:"ext-qpoll";i:1;R:799;}s:17:"8:qpollwebinstall";a:2:{i:0;R:13954;i:1;R:799;}s:16:"8:qp_parentheses";a:2:{i:0;R:13954;i:1;R:799;}s:23:"8:qp_full_category_name";a:2:{i:0;R:13954;i:1;R:799;}s:9:"8:qp_desc";a:2:{i:0;R:13954;i:1;R:799;}s:12:"8:qp_desc-sp";a:2:{i:0;R:13954;i:1;R:799;}s:14:"8:qp_result_na";a:2:{i:0;R:13954;i:1;R:799;}s:17:"8:qp_result_error";a:2:{i:0;R:13954;i:1;R:799;}s:16:"8:qp_vote_button";a:2:{i:0;R:13954;i:1;R:799;}s:22:"8:qp_vote_again_button";a:2:{i:0;R:13954;i:1;R:799;}s:25:"8:qp_submit_attempts_left";a:2:{i:0;R:13954;i:1;R:799;}s:15:"8:qp_polls_list";a:2:{i:0;R:13954;i:1;R:799;}s:15:"8:qp_users_list";a:2:{i:0;R:13954;i:1;R:799;}s:19:"8:qp_browse_to_poll";a:2:{i:0;R:13954;i:1;R:799;}s:19:"8:qp_browse_to_user";a:2:{i:0;R:13954;i:1;R:799;}s:29:"8:qp_browse_to_interpretation";a:2:{i:0;R:13954;i:1;R:799;}s:16:"8:qp_votes_count";a:2:{i:0;R:13954;i:1;R:799;}s:16:"8:qp_source_link";a:2:{i:0;R:13954;i:1;R:799;}s:15:"8:qp_stats_link";a:2:{i:0;R:13954;i:1;R:799;}s:15:"8:qp_users_link";a:2:{i:0;R:13954;i:1;R:799;}s:15:"8:qp_voice_link";a:2:{i:0;R:13954;i:1;R:799;}s:19:"8:qp_voice_link_inv";a:2:{i:0;R:13954;i:1;R:799;}s:20:"8:qp_user_polls_link";a:2:{i:0;R:13954;i:1;R:799;}s:28:"8:qp_user_missing_polls_link";a:2:{i:0;R:13954;i:1;R:799;}s:26:"8:qp_not_participated_link";a:2:{i:0;R:13954;i:1;R:799;}s:22:"8:qp_order_by_username";a:2:{i:0;R:13954;i:1;R:799;}s:25:"8:qp_order_by_polls_count";a:2:{i:0;R:13954;i:1;R:799;}s:22:"8:qp_results_line_qupl";a:2:{i:0;R:13954;i:1;R:799;}s:21:"8:qp_results_line_qpl";a:2:{i:0;R:13954;i:1;R:799;}s:21:"8:qp_header_line_qpul";a:2:{i:0;R:13954;i:1;R:799;}s:22:"8:qp_results_line_qpul";a:2:{i:0;R:13954;i:1;R:799;}s:21:"8:qp_header_line_qucl";a:2:{i:0;R:13954;i:1;R:799;}s:22:"8:qp_results_line_qucl";a:2:{i:0;R:13954;i:1;R:799;}s:28:"8:qp_results_submit_attempts";a:2:{i:0;R:13954;i:1;R:799;}s:34:"8:qp_results_interpretation_header";a:2:{i:0;R:13954;i:1;R:799;}s:33:"8:qp_results_short_interpretation";a:2:{i:0;R:13954;i:1;R:799;}s:32:"8:qp_results_long_interpretation";a:2:{i:0;R:13954;i:1;R:799;}s:38:"8:qp_results_structured_interpretation";a:2:{i:0;R:13954;i:1;R:799;}s:31:"8:qp_poll_has_no_interpretation";a:2:{i:0;R:13954;i:1;R:799;}s:31:"8:qp_interpetation_wrong_answer";a:2:{i:0;R:13954;i:1;R:799;}s:18:"8:qp_export_to_xls";a:2:{i:0;R:13954;i:1;R:799;}s:18:"8:qp_voices_to_xls";a:2:{i:0;R:13954;i:1;R:799;}s:34:"8:qp_interpretation_results_to_xls";a:2:{i:0;R:13954;i:1;R:799;}s:29:"8:qp_users_answered_questions";a:2:{i:0;R:13954;i:1;R:799;}s:22:"8:qp_func_no_such_poll";a:2:{i:0;R:13954;i:1;R:799;}s:29:"8:qp_func_missing_question_id";a:2:{i:0;R:13954;i:1;R:799;}s:29:"8:qp_func_invalid_question_id";a:2:{i:0;R:13954;i:1;R:799;}s:29:"8:qp_func_missing_proposal_id";a:2:{i:0;R:13954;i:1;R:799;}s:29:"8:qp_func_invalid_proposal_id";a:2:{i:0;R:13954;i:1;R:799;}s:23:"8:qp_error_no_such_poll";a:2:{i:0;R:13954;i:1;R:799;}s:29:"8:qp_error_in_question_header";a:2:{i:0;R:13954;i:1;R:799;}s:27:"8:qp_error_id_in_stats_mode";a:2:{i:0;R:13954;i:1;R:799;}s:35:"8:qp_error_dependance_in_stats_mode";a:2:{i:0;R:13954;i:1;R:799;}s:19:"8:qp_error_no_stats";a:2:{i:0;R:13954;i:1;R:799;}s:31:"8:qp_error_address_in_decl_mode";a:2:{i:0;R:13954;i:1;R:799;}s:35:"8:qp_error_question_not_implemented";a:2:{i:0;R:13954;i:1;R:799;}s:30:"8:qp_error_question_empty_body";a:2:{i:0;R:13954;i:1;R:799;}s:32:"8:qp_error_question_no_proposals";a:2:{i:0;R:13954;i:1;R:799;}s:32:"8:qp_error_invalid_question_type";a:2:{i:0;R:13954;i:1;R:799;}s:32:"8:qp_error_invalid_question_name";a:2:{i:0;R:13954;i:1;R:799;}s:29:"8:qp_error_type_in_stats_mode";a:2:{i:0;R:13954;i:1;R:799;}s:21:"8:qp_error_no_poll_id";a:2:{i:0;R:13954;i:1;R:799;}s:26:"8:qp_error_invalid_poll_id";a:2:{i:0;R:13954;i:1;R:799;}s:31:"8:qp_error_already_used_poll_id";a:2:{i:0;R:13954;i:1;R:799;}s:36:"8:qp_error_too_long_dependance_value";a:2:{i:0;R:13954;i:1;R:799;}s:35:"8:qp_error_invalid_dependance_value";a:2:{i:0;R:13954;i:1;R:799;}s:34:"8:qp_error_missed_dependance_title";a:2:{i:0;R:13954;i:1;R:799;}s:33:"8:qp_error_missed_dependance_poll";a:2:{i:0;R:13954;i:1;R:799;}s:31:"8:qp_error_vote_dependance_poll";a:2:{i:0;R:13954;i:1;R:799;}s:25:"8:qp_error_too_many_spans";a:2:{i:0;R:13954;i:1;R:799;}s:26:"8:qp_error_unanswered_span";a:2:{i:0;R:13954;i:1;R:799;}s:28:"8:qp_error_non_unique_choice";a:2:{i:0;R:13954;i:1;R:799;}s:30:"8:qp_error_category_name_empty";a:2:{i:0;R:13954;i:1;R:799;}s:30:"8:qp_error_proposal_text_empty";a:2:{i:0;R:13954;i:1;R:799;}s:41:"8:qp_error_too_long_category_option_value";a:2:{i:0;R:13954;i:1;R:799;}s:43:"8:qp_error_too_long_category_options_values";a:2:{i:0;R:13954;i:1;R:799;}s:33:"8:qp_error_too_long_proposal_text";a:2:{i:0;R:13954;i:1;R:799;}s:33:"8:qp_error_too_long_proposal_name";a:2:{i:0;R:13954;i:1;R:799;}s:34:"8:qp_error_multiline_proposal_name";a:2:{i:0;R:13954;i:1;R:799;}s:32:"8:qp_error_numeric_proposal_name";a:2:{i:0;R:13954;i:1;R:799;}s:29:"8:qp_error_too_few_categories";a:2:{i:0;R:13954;i:1;R:799;}s:24:"8:qp_error_too_few_spans";a:2:{i:0;R:13954;i:1;R:799;}s:20:"8:qp_error_no_answer";a:2:{i:0;R:13954;i:1;R:799;}s:41:"8:qp_error_not_enough_categories_answered";a:2:{i:0;R:13954;i:1;R:799;}s:17:"8:qp_error_unique";a:2:{i:0;R:13954;i:1;R:799;}s:27:"8:qp_error_no_more_attempts";a:2:{i:0;R:13954;i:1;R:799;}s:28:"8:qp_error_no_interpretation";a:2:{i:0;R:13954;i:1;R:799;}s:35:"8:qp_error_interpretation_no_return";a:2:{i:0;R:13954;i:1;R:799;}s:48:"8:qp_error_structured_interpretation_is_too_long";a:2:{i:0;R:13954;i:1;R:799;}s:25:"8:qp_error_no_json_decode";a:2:{i:0;R:13954;i:1;R:799;}s:32:"8:qp_error_eval_missed_lang_attr";a:2:{i:0;R:13954;i:1;R:799;}s:29:"8:qp_error_eval_mix_languages";a:2:{i:0;R:13954;i:1;R:799;}s:36:"8:qp_error_eval_unsupported_language";a:2:{i:0;R:13954;i:1;R:799;}s:29:"8:qp_error_eval_illegal_token";a:2:{i:0;R:13954;i:1;R:799;}s:35:"8:qp_error_eval_illegal_superglobal";a:2:{i:0;R:13954;i:1;R:799;}s:37:"8:qp_error_eval_illegal_function_call";a:2:{i:0;R:13954;i:1;R:799;}s:40:"8:qp_error_eval_variable_variable_access";a:2:{i:0;R:13954;i:1;R:799;}s:37:"8:qp_error_eval_illegal_variable_name";a:2:{i:0;R:13954;i:1;R:799;}s:38:"8:qp_error_eval_variable_function_call";a:2:{i:0;R:13954;i:1;R:799;}s:26:"8:qp_error_eval_self_check";a:2:{i:0;R:13954;i:1;R:799;}s:30:"8:qp_error_eval_unable_to_lint";a:2:{i:0;R:13954;i:1;R:799;}s:13:"8:qrcode-desc";a:2:{i:0;s:10:"ext-qrcode";i:1;R:799;}s:18:"8:randomimage-desc";a:2:{i:0;s:15:"ext-randomimage";i:1;R:799;}s:18:"8:randomincategory";a:2:{i:0;s:20:"ext-randomincategory";i:1;R:799;}s:23:"8:randomincategory-desc";a:2:{i:0;R:14060;i:1;R:799;}s:26:"8:randomincategory-toolbox";a:2:{i:0;R:14060;i:1;R:799;}s:29:"8:randomincategory-nocategory";a:2:{i:0;R:14060;i:1;R:799;}s:24:"8:randomincategory-label";a:2:{i:0;R:14060;i:1;R:799;}s:25:"8:randomincategory-submit";a:2:{i:0;R:14060;i:1;R:799;}s:16:"8:randomrootpage";a:2:{i:0;s:18:"ext-randomrootpage";i:1;R:799;}s:21:"8:randomrootpage-desc";a:2:{i:0;R:14067;i:1;R:799;}s:28:"8:random-users-avatars-title";a:2:{i:0;s:26:"ext-randomuserswithavatars";i:1;R:799;}s:27:"8:random-users-avatars-desc";a:2:{i:0;R:14070;i:1;R:799;}s:14:"8:ratings-desc";a:2:{i:0;s:11:"ext-ratings";i:1;R:799;}s:12:"8:right-rate";a:2:{i:0;R:14073;i:1;R:799;}s:27:"8:ratings-starsratings-desc";a:2:{i:0;R:14073;i:1;R:799;}s:18:"8:ratings-par-page";a:2:{i:0;R:14073;i:1;R:799;}s:17:"8:ratings-par-tag";a:2:{i:0;R:14073;i:1;R:799;}s:26:"8:ratings-par-showdisabled";a:2:{i:0;R:14073;i:1;R:799;}s:24:"8:ratings-par-incsummary";a:2:{i:0;R:14073;i:1;R:799;}s:26:"8:ratings-votesummary-desc";a:2:{i:0;R:14073;i:1;R:799;}s:23:"8:ratings-current-score";a:2:{i:0;R:14073;i:1;R:799;}s:22:"8:ratings-no-votes-yet";a:2:{i:0;R:14073;i:1;R:799;}s:12:"8:rdfio-desc";a:2:{i:0;s:9:"ext-rdfio";i:1;R:799;}s:11:"8:rdfimport";a:2:{i:0;R:14084;i:1;R:799;}s:22:"8:rdfio-arc2admin-desc";a:2:{i:0;R:14084;i:1;R:799;}s:22:"8:rdfio-rdfimport-desc";a:2:{i:0;R:14084;i:1;R:799;}s:27:"8:rdfio-sparqlendpoint-desc";a:2:{i:0;R:14084;i:1;R:799;}s:16:"8:sparqlendpoint";a:2:{i:0;R:14084;i:1;R:799;}s:18:"8:specialarc2admin";a:2:{i:0;R:14084;i:1;R:799;}s:15:"8:reassignedits";a:2:{i:0;s:17:"ext-reassignedits";i:1;R:799;}s:20:"8:reassignedits-desc";a:2:{i:0;R:14092;i:1;R:799;}s:29:"8:reassignedits-error-invalid";a:2:{i:0;R:14092;i:1;R:799;}s:19:"8:reassignedits-new";a:2:{i:0;R:14092;i:1;R:799;}s:19:"8:reassignedits-old";a:2:{i:0;R:14092;i:1;R:799;}s:22:"8:reassignedits-submit";a:2:{i:0;R:14092;i:1;R:799;}s:23:"8:reassignedits-success";a:2:{i:0;R:14092;i:1;R:799;}s:23:"8:reassignedits-summary";a:2:{i:0;R:14092;i:1;R:799;}s:31:"8:reassignedits-updatelog-title";a:2:{i:0;R:14092;i:1;R:799;}s:30:"8:reassignedits-updatelog-user";a:2:{i:0;R:14092;i:1;R:799;}s:21:"8:right-reassignedits";a:2:{i:0;R:14092;i:1;R:799;}s:13:"8:recordadmin";a:2:{i:0;s:15:"ext-recordadmin";i:1;R:799;}s:18:"8:recordadmin-desc";a:2:{i:0;R:14104;i:1;R:799;}s:25:"8:recordadmin-specialdesc";a:2:{i:0;R:14104;i:1;R:799;}s:21:"8:recordadmin-noforms";a:2:{i:0;R:14104;i:1;R:799;}s:20:"8:recordadmin-select";a:2:{i:0;R:14104;i:1;R:799;}s:24:"8:recordadmin-createtype";a:2:{i:0;R:14104;i:1;R:799;}s:24:"8:recordadmin-recordtype";a:2:{i:0;R:14104;i:1;R:799;}s:23:"8:recordadmin-newsearch";a:2:{i:0;R:14104;i:1;R:799;}s:23:"8:recordadmin-newrecord";a:2:{i:0;R:14104;i:1;R:799;}s:20:"8:recordadmin-submit";a:2:{i:0;R:14104;i:1;R:799;}s:20:"8:recordadmin-create";a:2:{i:0;R:14104;i:1;R:799;}s:26:"8:recordadmin-alreadyexist";a:2:{i:0;R:14104;i:1;R:799;}s:27:"8:recordadmin-createsuccess";a:2:{i:0;R:14104;i:1;R:799;}s:25:"8:recordadmin-createerror";a:2:{i:0;R:14104;i:1;R:799;}s:22:"8:recordadmin-badtitle";a:2:{i:0;R:14104;i:1;R:799;}s:22:"8:recordadmin-recordid";a:2:{i:0;R:14104;i:1;R:799;}s:20:"8:recordadmin-invert";a:2:{i:0;R:14104;i:1;R:799;}s:26:"8:recordadmin-buttonsearch";a:2:{i:0;R:14104;i:1;R:799;}s:26:"8:recordadmin-buttoncreate";a:2:{i:0;R:14104;i:1;R:799;}s:25:"8:recordadmin-buttonreset";a:2:{i:0;R:14104;i:1;R:799;}s:26:"8:recordadmin-searchresult";a:2:{i:0;R:14104;i:1;R:799;}s:21:"8:recordadmin-nomatch";a:2:{i:0;R:14104;i:1;R:799;}s:25:"8:recordadmin-typeupdated";a:2:{i:0;R:14104;i:1;R:799;}s:24:"8:recordadmin-buttonsave";a:2:{i:0;R:14104;i:1;R:799;}s:20:"8:recordadmin-noform";a:2:{i:0;R:14104;i:1;R:799;}s:24:"8:recordadmin-createlink";a:2:{i:0;R:14104;i:1;R:799;}s:24:"8:recordadmin-newcreated";a:2:{i:0;R:14104;i:1;R:799;}s:33:"8:recordadmin-summary-typecreated";a:2:{i:0;R:14104;i:1;R:799;}s:22:"8:recordadmin-viewlink";a:2:{i:0;R:14104;i:1;R:799;}s:22:"8:recordadmin-editlink";a:2:{i:0;R:14104;i:1;R:799;}s:19:"8:recordadmin-title";a:2:{i:0;R:14104;i:1;R:799;}s:21:"8:recordadmin-created";a:2:{i:0;R:14104;i:1;R:799;}s:22:"8:recordadmin-modified";a:2:{i:0;R:14104;i:1;R:799;}s:21:"8:recordadmin-actions";a:2:{i:0;R:14104;i:1;R:799;}s:26:"8:recordadmin-needscontent";a:2:{i:0;R:14104;i:1;R:799;}s:19:"8:right-recordadmin";a:2:{i:0;R:14104;i:1;R:799;}s:24:"8:recordadmin-export-csv";a:2:{i:0;R:14104;i:1;R:799;}s:24:"8:recordadmin-export-pdf";a:2:{i:0;R:14104;i:1;R:799;}s:20:"8:recordadmin-notset";a:2:{i:0;R:14104;i:1;R:799;}s:23:"8:recordadmin-edit-info";a:2:{i:0;R:14104;i:1;R:799;}s:24:"8:recordadmin-properties";a:2:{i:0;R:14104;i:1;R:799;}s:15:"8:redirect-desc";a:2:{i:0;s:12:"ext-redirect";i:1;R:799;}s:24:"8:redirect-addnewaccount";a:2:{i:0;R:14146;i:1;R:799;}s:29:"8:redirect-userlogoutcomplete";a:2:{i:0;R:14146;i:1;R:799;}s:11:"8:refhelper";a:2:{i:0;s:13:"ext-refhelper";i:1;R:799;}s:11:"8:refsearch";a:2:{i:0;R:14150;i:1;R:799;}s:16:"8:refhelper-desc";a:2:{i:0;R:14150;i:1;R:799;}s:21:"8:refhelper-refsearch";a:2:{i:0;R:14150;i:1;R:799;}s:28:"8:refhelper-refcreate_legend";a:2:{i:0;R:14150;i:1;R:799;}s:28:"8:refhelper-refsearch_legend";a:2:{i:0;R:14150;i:1;R:799;}s:29:"8:refhelper-refcreate_another";a:2:{i:0;R:14150;i:1;R:799;}s:33:"8:refhelper-refcreate_autocomment";a:2:{i:0;R:14150;i:1;R:799;}s:29:"8:refhelper-refcreate_success";a:2:{i:0;R:14150;i:1;R:799;}s:29:"8:refhelper-refcreate_failure";a:2:{i:0;R:14150;i:1;R:799;}s:27:"8:refhelper-label_workspace";a:2:{i:0;R:14150;i:1;R:799;}s:32:"8:refhelper-label_authorforename";a:2:{i:0;R:14150;i:1;R:799;}s:31:"8:refhelper-label_authorsurname";a:2:{i:0;R:14150;i:1;R:799;}s:17:"8:refhelper-title";a:2:{i:0;R:14150;i:1;R:799;}s:19:"8:refhelper-journal";a:2:{i:0;R:14150;i:1;R:799;}s:18:"8:refhelper-volume";a:2:{i:0;R:14150;i:1;R:799;}s:17:"8:refhelper-pages";a:2:{i:0;R:14150;i:1;R:799;}s:16:"8:refhelper-year";a:2:{i:0;R:14150;i:1;R:799;}s:19:"8:refhelper-refname";a:2:{i:0;R:14150;i:1;R:799;}s:20:"8:refhelper-category";a:2:{i:0;R:14150;i:1;R:799;}s:18:"8:refhelper-create";a:2:{i:0;R:14150;i:1;R:799;}s:18:"8:refhelper-search";a:2:{i:0;R:14150;i:1;R:799;}s:31:"8:refhelper-toolbox_link_create";a:2:{i:0;R:14150;i:1;R:799;}s:31:"8:refhelper-toolbox_link_search";a:2:{i:0;R:14150;i:1;R:799;}s:33:"8:refhelper-newarticle_nocitation";a:2:{i:0;R:14150;i:1;R:799;}s:34:"8:refhelper-newarticle_suggestions";a:2:{i:0;R:14150;i:1;R:799;}s:36:"8:refhelper-newarticle_nosuggestions";a:2:{i:0;R:14150;i:1;R:799;}s:14:"8:reflect-desc";a:2:{i:0;s:11:"ext-reflect";i:1;R:799;}s:18:"8:reflect-bulleted";a:2:{i:0;R:14178;i:1;R:799;}s:26:"8:reflect-bulleted-subject";a:2:{i:0;R:14178;i:1;R:799;}s:19:"8:reflect-responded";a:2:{i:0;R:14178;i:1;R:799;}s:27:"8:reflect-responded-subject";a:2:{i:0;R:14178;i:1;R:799;}s:16:"8:refreshspecial";a:2:{i:0;s:18:"ext-refreshspecial";i:1;R:799;}s:21:"8:refreshspecial-desc";a:2:{i:0;R:14184;i:1;R:799;}s:22:"8:refreshspecial-title";a:2:{i:0;R:14184;i:1;R:799;}s:21:"8:refreshspecial-help";a:2:{i:0;R:14184;i:1;R:799;}s:23:"8:refreshspecial-button";a:2:{i:0;R:14184;i:1;R:799;}s:21:"8:refreshspecial-fail";a:2:{i:0;R:14184;i:1;R:799;}s:27:"8:refreshspecial-refreshing";a:2:{i:0;R:14184;i:1;R:799;}s:24:"8:refreshspecial-skipped";a:2:{i:0;R:14184;i:1;R:799;}s:23:"8:refreshspecial-choice";a:2:{i:0;R:14184;i:1;R:799;}s:28:"8:refreshspecial-js-disabled";a:2:{i:0;R:14184;i:1;R:799;}s:33:"8:refreshspecial-select-all-pages";a:2:{i:0;R:14184;i:1;R:799;}s:26:"8:refreshspecial-link-back";a:2:{i:0;R:14184;i:1;R:799;}s:30:"8:refreshspecial-none-selected";a:2:{i:0;R:14184;i:1;R:799;}s:25:"8:refreshspecial-db-error";a:2:{i:0;R:14184;i:1;R:799;}s:24:"8:refreshspecial-no-page";a:2:{i:0;R:14184;i:1;R:799;}s:29:"8:refreshspecial-slave-lagged";a:2:{i:0;R:14184;i:1;R:799;}s:28:"8:refreshspecial-reconnected";a:2:{i:0;R:14184;i:1;R:799;}s:29:"8:refreshspecial-reconnecting";a:2:{i:0;R:14184;i:1;R:799;}s:28:"8:refreshspecial-page-result";a:2:{i:0;R:14184;i:1;R:799;}s:30:"8:refreshspecial-total-display";a:2:{i:0;R:14184;i:1;R:799;}s:22:"8:right-refreshspecial";a:2:{i:0;R:14184;i:1;R:799;}s:12:"8:regexblock";a:2:{i:0;s:14:"ext-regexblock";i:1;R:799;}s:28:"8:regexblock-already-blocked";a:2:{i:0;R:14206;i:1;R:799;}s:22:"8:regexblock-block-log";a:2:{i:0;R:14206;i:1;R:799;}s:26:"8:regexblock-block-success";a:2:{i:0;R:14206;i:1;R:799;}s:30:"8:regexblock-currently-blocked";a:2:{i:0;R:14206;i:1;R:799;}s:17:"8:regexblock-desc";a:2:{i:0;R:14206;i:1;R:799;}s:28:"8:regexblock-expire-duration";a:2:{i:0;R:14206;i:1;R:799;}s:23:"8:regexblock-page-title";a:2:{i:0;R:14206;i:1;R:799;}s:17:"8:regexblockstats";a:2:{i:0;R:14206;i:1;R:799;}s:17:"8:regexblock-help";a:2:{i:0;R:14206;i:1;R:799;}s:25:"8:regexblock-page-title-1";a:2:{i:0;R:14206;i:1;R:799;}s:22:"8:regexblock-reason-ip";a:2:{i:0;R:14206;i:1;R:799;}s:24:"8:regexblock-reason-name";a:2:{i:0;R:14206;i:1;R:799;}s:25:"8:regexblock-reason-regex";a:2:{i:0;R:14206;i:1;R:799;}s:26:"8:regexblock-form-username";a:2:{i:0;R:14206;i:1;R:799;}s:24:"8:regexblock-form-reason";a:2:{i:0;R:14206;i:1;R:799;}s:24:"8:regexblock-form-expiry";a:2:{i:0;R:14206;i:1;R:799;}s:23:"8:regexblock-form-match";a:2:{i:0;R:14206;i:1;R:799;}s:31:"8:regexblock-form-account-block";a:2:{i:0;R:14206;i:1;R:799;}s:24:"8:regexblock-form-submit";a:2:{i:0;R:14206;i:1;R:799;}s:30:"8:regexblock-form-submit-empty";a:2:{i:0;R:14206;i:1;R:799;}s:30:"8:regexblock-form-submit-regex";a:2:{i:0;R:14206;i:1;R:799;}s:31:"8:regexblock-form-submit-expiry";a:2:{i:0;R:14206;i:1;R:799;}s:17:"8:regexblock-link";a:2:{i:0;R:14206;i:1;R:799;}s:31:"8:regexblock-match-stats-record";a:2:{i:0;R:14206;i:1;R:799;}s:25:"8:regexblock-nodata-found";a:2:{i:0;R:14206;i:1;R:799;}s:24:"8:regexblock-stats-title";a:2:{i:0;R:14206;i:1;R:799;}s:28:"8:regexblock-unblock-success";a:2:{i:0;R:14206;i:1;R:799;}s:24:"8:regexblock-unblock-log";a:2:{i:0;R:14206;i:1;R:799;}s:26:"8:regexblock-unblock-error";a:2:{i:0;R:14206;i:1;R:799;}s:25:"8:regexblock-regex-filter";a:2:{i:0;R:14206;i:1;R:799;}s:25:"8:regexblock-view-blocked";a:2:{i:0;R:14206;i:1;R:799;}s:21:"8:regexblock-view-all";a:2:{i:0;R:14206;i:1;R:799;}s:20:"8:regexblock-view-go";a:2:{i:0;R:14206;i:1;R:799;}s:23:"8:regexblock-view-match";a:2:{i:0;R:14206;i:1;R:799;}s:23:"8:regexblock-view-regex";a:2:{i:0;R:14206;i:1;R:799;}s:25:"8:regexblock-view-account";a:2:{i:0;R:14206;i:1;R:799;}s:24:"8:regexblock-view-reason";a:2:{i:0;R:14206;i:1;R:799;}s:32:"8:regexblock-view-reason-default";a:2:{i:0;R:14206;i:1;R:799;}s:32:"8:regexblock-view-block-infinite";a:2:{i:0;R:14206;i:1;R:799;}s:26:"8:regexblock-view-block-by";a:2:{i:0;R:14206;i:1;R:799;}s:31:"8:regexblock-view-block-unblock";a:2:{i:0;R:14206;i:1;R:799;}s:23:"8:regexblock-view-stats";a:2:{i:0;R:14206;i:1;R:799;}s:23:"8:regexblock-view-empty";a:2:{i:0;R:14206;i:1;R:799;}s:22:"8:regexblock-view-time";a:2:{i:0;R:14206;i:1;R:799;}s:18:"8:right-regexblock";a:2:{i:0;R:14206;i:1;R:799;}s:15:"8:regexfun-desc";a:2:{i:0;s:12:"ext-regexfun";i:1;R:799;}s:18:"8:regexfun-invalid";a:2:{i:0;R:14253;i:1;R:799;}s:23:"8:regexfun-limit-exceed";a:2:{i:0;R:14253;i:1;R:799;}s:21:"8:regexfunctions-desc";a:2:{i:0;s:18:"ext-regexfunctions";i:1;R:799;}s:20:"8:relationlinks-desc";a:2:{i:0;s:17:"ext-relationlinks";i:1;R:799;}s:17:"8:replaceset-desc";a:2:{i:0;s:14:"ext-replaceset";i:1;R:799;}s:28:"8:replaceset-error-calllimit";a:2:{i:0;R:14261;i:1;R:799;}s:29:"8:replaceset-error-regexnoend";a:2:{i:0;R:14261;i:1;R:799;}s:35:"8:replaceset-error-regexbadmodifier";a:2:{i:0;R:14261;i:1;R:799;}s:13:"8:replacetext";a:2:{i:0;s:15:"ext-replacetext";i:1;R:799;}s:18:"8:replacetext-desc";a:2:{i:0;R:14266;i:1;R:799;}s:18:"8:replacetext_docu";a:2:{i:0;R:14266;i:1;R:799;}s:26:"8:replacetext_originaltext";a:2:{i:0;R:14266;i:1;R:799;}s:29:"8:replacetext_replacementtext";a:2:{i:0;R:14266;i:1;R:799;}s:22:"8:replacetext_useregex";a:2:{i:0;R:14266;i:1;R:799;}s:23:"8:replacetext_regexdocu";a:2:{i:0;R:14266;i:1;R:799;}s:29:"8:replacetext_optionalfilters";a:2:{i:0;R:14266;i:1;R:799;}s:28:"8:replacetext_categorysearch";a:2:{i:0;R:14266;i:1;R:799;}s:26:"8:replacetext_prefixsearch";a:2:{i:0;R:14266;i:1;R:799;}s:23:"8:replacetext_editpages";a:2:{i:0;R:14266;i:1;R:799;}s:23:"8:replacetext_movepages";a:2:{i:0;R:14266;i:1;R:799;}s:24:"8:replacetext_givetarget";a:2:{i:0;R:14266;i:1;R:799;}s:25:"8:replacetext_nonamespace";a:2:{i:0;R:14266;i:1;R:799;}s:24:"8:replacetext_editormove";a:2:{i:0;R:14266;i:1;R:799;}s:32:"8:replacetext_choosepagesforedit";a:2:{i:0;R:14266;i:1;R:799;}s:32:"8:replacetext_choosepagesformove";a:2:{i:0;R:14266;i:1;R:799;}s:24:"8:replacetext_cannotmove";a:2:{i:0;R:14266;i:1;R:799;}s:27:"8:replacetext_formovedpages";a:2:{i:0;R:14266;i:1;R:799;}s:28:"8:replacetext_savemovedpages";a:2:{i:0;R:14266;i:1;R:799;}s:29:"8:replacetext_watchmovedpages";a:2:{i:0;R:14266;i:1;R:799;}s:30:"8:replacetext_invertselections";a:2:{i:0;R:14266;i:1;R:799;}s:21:"8:replacetext_replace";a:2:{i:0;R:14266;i:1;R:799;}s:21:"8:replacetext_success";a:2:{i:0;R:14266;i:1;R:799;}s:27:"8:replacetext_noreplacement";a:2:{i:0;R:14266;i:1;R:799;}s:20:"8:replacetext_nomove";a:2:{i:0;R:14266;i:1;R:799;}s:28:"8:replacetext_nosuchcategory";a:2:{i:0;R:14266;i:1;R:799;}s:20:"8:replacetext_return";a:2:{i:0;R:14266;i:1;R:799;}s:21:"8:replacetext_warning";a:2:{i:0;R:14266;i:1;R:799;}s:26:"8:replacetext_blankwarning";a:2:{i:0;R:14266;i:1;R:799;}s:22:"8:replacetext_continue";a:2:{i:0;R:14266;i:1;R:799;}s:25:"8:replacetext_editsummary";a:2:{i:0;R:14266;i:1;R:799;}s:19:"8:right-replacetext";a:2:{i:0;R:14266;i:1;R:799;}s:15:"8:researchtools";a:2:{i:0;s:17:"ext-researchtools";i:1;R:799;}s:20:"8:researchtools-desc";a:2:{i:0;R:14300;i:1;R:799;}s:30:"8:researchtools-page-dashboard";a:2:{i:0;R:14300;i:1;R:799;}s:28:"8:researchtools-page-surveys";a:2:{i:0;R:14300;i:1;R:799;}s:27:"8:researchtools-page-clicks";a:2:{i:0;R:14300;i:1;R:799;}s:26:"8:researchtools-page-prefs";a:2:{i:0;R:14300;i:1;R:799;}s:22:"8:resumableupload-desc";a:2:{i:0;s:19:"ext-resumableupload";i:1;R:799;}s:21:"8:rightfunctions-desc";a:2:{i:0;s:18:"ext-rightfunctions";i:1;R:799;}s:22:"8:rightfunctions-rest1";a:2:{i:0;R:14309;i:1;R:799;}s:22:"8:rightfunctions-rest2";a:2:{i:0;R:14309;i:1;R:799;}s:22:"8:rightfunctions-rest3";a:2:{i:0;R:14309;i:1;R:799;}s:20:"8:rightfunctions-sep";a:2:{i:0;R:14309;i:1;R:799;}s:21:"8:rightfunctions-casc";a:2:{i:0;R:14309;i:1;R:799;}s:22:"8:rightfunctions-local";a:2:{i:0;R:14309;i:1;R:799;}s:19:"8:rightfunctions-ns";a:2:{i:0;R:14309;i:1;R:799;}s:6:"8:rped";a:2:{i:0;s:8:"ext-rped";i:1;R:799;}s:11:"8:rped-desc";a:2:{i:0;R:14318;i:1;R:799;}s:20:"8:rped-wikipedia-url";a:2:{i:0;R:14318;i:1;R:799;}s:9:"8:rt-desc";a:2:{i:0;s:6:"ext-rt";i:1;R:799;}s:13:"8:rt-inactive";a:2:{i:0;R:14322;i:1;R:799;}s:13:"8:rt-badquery";a:2:{i:0;R:14322;i:1;R:799;}s:13:"8:rt-badlimit";a:2:{i:0;R:14322;i:1;R:799;}s:15:"8:rt-badorderby";a:2:{i:0;R:14322;i:1;R:799;}s:14:"8:rt-badstatus";a:2:{i:0;R:14322;i:1;R:799;}s:14:"8:rt-badcfield";a:2:{i:0;R:14322;i:1;R:799;}s:13:"8:rt-badqueue";a:2:{i:0;R:14322;i:1;R:799;}s:13:"8:rt-badowner";a:2:{i:0;R:14322;i:1;R:799;}s:14:"8:rt-nomatches";a:2:{i:0;R:14322;i:1;R:799;}s:27:"8:score-abc2lynotexecutable";a:2:{i:0;s:9:"ext-score";i:1;R:799;}s:24:"8:score-abcconversionerr";a:2:{i:0;R:14333;i:1;R:799;}s:16:"8:score-chdirerr";a:2:{i:0;R:14333;i:1;R:799;}s:16:"8:score-cleanerr";a:2:{i:0;R:14333;i:1;R:799;}s:19:"8:score-compilererr";a:2:{i:0;R:14333;i:1;R:799;}s:12:"8:score-desc";a:2:{i:0;R:14333;i:1;R:799;}s:17:"8:score-getcwderr";a:2:{i:0;R:14333;i:1;R:799;}s:19:"8:score-invalidlang";a:2:{i:0;R:14333;i:1;R:799;}s:26:"8:score-invalidoggoverride";a:2:{i:0;R:14333;i:1;R:799;}s:28:"8:score-midioverridenotfound";a:2:{i:0;R:14333;i:1;R:799;}s:18:"8:score-noabcinput";a:2:{i:0;R:14333;i:1;R:799;}s:16:"8:score-noimages";a:2:{i:0;R:14333;i:1;R:799;}s:15:"8:score-noinput";a:2:{i:0;R:14333;i:1;R:799;}s:20:"8:score-noogghandler";a:2:{i:0;R:14333;i:1;R:799;}s:14:"8:score-nomidi";a:2:{i:0;R:14333;i:1;R:799;}s:16:"8:score-nooutput";a:2:{i:0;R:14333;i:1;R:799;}s:21:"8:score-notexecutable";a:2:{i:0;R:14333;i:1;R:799;}s:20:"8:score-novorbislink";a:2:{i:0;R:14333;i:1;R:799;}s:24:"8:score-oggconversionerr";a:2:{i:0;R:14333;i:1;R:799;}s:27:"8:score-oggoverridenotfound";a:2:{i:0;R:14333;i:1;R:799;}s:12:"8:score-page";a:2:{i:0;R:14333;i:1;R:799;}s:22:"8:score-pregreplaceerr";a:2:{i:0;R:14333;i:1;R:799;}s:15:"8:score-readerr";a:2:{i:0;R:14333;i:1;R:799;}s:29:"8:score-timiditynotexecutable";a:2:{i:0;R:14333;i:1;R:799;}s:17:"8:score-renameerr";a:2:{i:0;R:14333;i:1;R:799;}s:15:"8:score-trimerr";a:2:{i:0;R:14333;i:1;R:799;}s:18:"8:score-versionerr";a:2:{i:0;R:14333;i:1;R:799;}s:25:"8:score-vorbisoverrideogg";a:2:{i:0;R:14333;i:1;R:799;}s:16:"8:searchbox-desc";a:2:{i:0;s:13:"ext-searchbox";i:1;R:799;}s:18:"8:searchbox-search";a:2:{i:0;R:14362;i:1;R:799;}s:14:"8:searchbox-go";a:2:{i:0;R:14362;i:1;R:799;}s:22:"8:searchbox-namespaces";a:2:{i:0;R:14362;i:1;R:799;}s:22:"8:securepasswords-desc";a:2:{i:0;s:19:"ext-securepasswords";i:1;R:799;}s:23:"8:securepasswords-valid";a:2:{i:0;R:14367;i:1;R:799;}s:27:"8:securepasswords-minlength";a:2:{i:0;R:14367;i:1;R:799;}s:27:"8:securepasswords-lowercase";a:2:{i:0;R:14367;i:1;R:799;}s:27:"8:securepasswords-uppercase";a:2:{i:0;R:14367;i:1;R:799;}s:23:"8:securepasswords-digit";a:2:{i:0;R:14367;i:1;R:799;}s:25:"8:securepasswords-special";a:2:{i:0;R:14367;i:1;R:799;}s:26:"8:securepasswords-username";a:2:{i:0;R:14367;i:1;R:799;}s:22:"8:securepasswords-word";a:2:{i:0;R:14367;i:1;R:799;}s:9:"8:seealso";a:2:{i:0;s:11:"ext-seealso";i:1;R:799;}s:14:"8:seealso-desc";a:2:{i:0;R:14377;i:1;R:799;}s:11:"8:sacl-desc";a:2:{i:0;s:15:"ext-semanticacl";i:1;R:799;}s:13:"8:sacl-denied";a:2:{i:0;R:14380;i:1;R:799;}s:19:"8:right-sacl-exempt";a:2:{i:0;R:14380;i:1;R:799;}s:26:"8:sacl-property-visibility";a:2:{i:0;R:14380;i:1;R:799;}s:35:"8:sacl-property-visibility-wl-group";a:2:{i:0;R:14380;i:1;R:799;}s:34:"8:sacl-property-visibility-wl-user";a:2:{i:0;R:14380;i:1;R:799;}s:24:"8:sacl-property-editable";a:2:{i:0;R:14380;i:1;R:799;}s:33:"8:sacl-property-editable-wl-group";a:2:{i:0;R:14380;i:1;R:799;}s:32:"8:sacl-property-editable-wl-user";a:2:{i:0;R:14380;i:1;R:799;}s:30:"8:semanticcompoundqueries-desc";a:2:{i:0;s:27:"ext-semanticcompoundqueries";i:1;R:799;}s:10:"8:sdt-desc";a:2:{i:0;s:21:"ext-semanticdatatypes";i:1;R:799;}s:14:"8:sdt-duration";a:2:{i:0;R:14392;i:1;R:799;}s:24:"8:semanticdrilldown-desc";a:2:{i:0;s:21:"ext-semanticdrilldown";i:1;R:799;}s:29:"8:specialpages-group-sd_group";a:2:{i:0;R:14395;i:1;R:799;}s:12:"8:browsedata";a:2:{i:0;R:14395;i:1;R:799;}s:30:"8:sd_browsedata_choosecategory";a:2:{i:0;R:14395;i:1;R:799;}s:28:"8:sd_browsedata_viewcategory";a:2:{i:0;R:14395;i:1;R:799;}s:20:"8:sd_browsedata_docu";a:2:{i:0;R:14395;i:1;R:799;}s:27:"8:sd_browsedata_subcategory";a:2:{i:0;R:14395;i:1;R:799;}s:21:"8:sd_browsedata_other";a:2:{i:0;R:14395;i:1;R:799;}s:20:"8:sd_browsedata_none";a:2:{i:0;R:14395;i:1;R:799;}s:29:"8:sd_browsedata_filterbyvalue";a:2:{i:0;R:14395;i:1;R:799;}s:35:"8:sd_browsedata_filterbysubcategory";a:2:{i:0;R:14395;i:1;R:799;}s:27:"8:sd_browsedata_otherfilter";a:2:{i:0;R:14395;i:1;R:799;}s:26:"8:sd_browsedata_nonefilter";a:2:{i:0;R:14395;i:1;R:799;}s:18:"8:sd_browsedata_or";a:2:{i:0;R:14395;i:1;R:799;}s:28:"8:sd_browsedata_removefilter";a:2:{i:0;R:14395;i:1;R:799;}s:39:"8:sd_browsedata_removesubcategoryfilter";a:2:{i:0;R:14395;i:1;R:799;}s:28:"8:sd_browsedata_resetfilters";a:2:{i:0;R:14395;i:1;R:799;}s:31:"8:sd_browsedata_addanothervalue";a:2:{i:0;R:14395;i:1;R:799;}s:30:"8:sd_browsedata_daterangestart";a:2:{i:0;R:14395;i:1;R:799;}s:28:"8:sd_browsedata_daterangeend";a:2:{i:0;R:14395;i:1;R:799;}s:24:"8:sd_browsedata_novalues";a:2:{i:0;R:14395;i:1;R:799;}s:9:"8:filters";a:2:{i:0;R:14395;i:1;R:799;}s:17:"8:sd_filters_docu";a:2:{i:0;R:14395;i:1;R:799;}s:14:"8:createfilter";a:2:{i:0;R:14395;i:1;R:799;}s:22:"8:sd_createfilter_name";a:2:{i:0;R:14395;i:1;R:799;}s:26:"8:sd_createfilter_property";a:2:{i:0;R:14395;i:1;R:799;}s:35:"8:sd_createfilter_usepropertyvalues";a:2:{i:0;R:14395;i:1;R:799;}s:35:"8:sd_createfilter_usecategoryvalues";a:2:{i:0;R:14395;i:1;R:799;}s:31:"8:sd_createfilter_usedatevalues";a:2:{i:0;R:14395;i:1;R:799;}s:29:"8:sd_createfilter_entervalues";a:2:{i:0;R:14395;i:1;R:799;}s:27:"8:sd_createfilter_inputtype";a:2:{i:0;R:14395;i:1;R:799;}s:30:"8:sd_createfilter_listofvalues";a:2:{i:0;R:14395;i:1;R:799;}s:31:"8:sd_createfilter_requirefilter";a:2:{i:0;R:14395;i:1;R:799;}s:23:"8:sd_createfilter_label";a:2:{i:0;R:14395;i:1;R:799;}s:16:"8:sd_blank_error";a:2:{i:0;R:14395;i:1;R:799;}s:23:"8:sd-pageschemas-filter";a:2:{i:0;R:14395;i:1;R:799;}s:23:"8:sd-pageschemas-values";a:2:{i:0;R:14395;i:1;R:799;}s:26:"8:sd_filter_coversproperty";a:2:{i:0;R:14395;i:1;R:799;}s:34:"8:sd_filter_getsvaluesfromcategory";a:2:{i:0;R:14395;i:1;R:799;}s:26:"8:sd_filter_usestimeperiod";a:2:{i:0;R:14395;i:1;R:799;}s:16:"8:sd_filter_year";a:2:{i:0;R:14395;i:1;R:799;}s:17:"8:sd_filter_month";a:2:{i:0;R:14395;i:1;R:799;}s:21:"8:sd_filter_hasvalues";a:2:{i:0;R:14395;i:1;R:799;}s:24:"8:sd_filter_hasinputtype";a:2:{i:0;R:14395;i:1;R:799;}s:20:"8:sd_filter_combobox";a:2:{i:0;R:14395;i:1;R:799;}s:20:"8:sd_filter_freetext";a:2:{i:0;R:14395;i:1;R:799;}s:21:"8:sd_filter_daterange";a:2:{i:0;R:14395;i:1;R:799;}s:26:"8:sd_filter_requiresfilter";a:2:{i:0;R:14395;i:1;R:799;}s:20:"8:sd_filter_haslabel";a:2:{i:0;R:14395;i:1;R:799;}s:20:"8:semanticforms-desc";a:2:{i:0;s:17:"ext-semanticforms";i:1;R:799;}s:29:"8:specialpages-group-sf_group";a:2:{i:0;R:14445;i:1;R:799;}s:16:"8:createproperty";a:2:{i:0;R:14445;i:1;R:799;}s:30:"8:sf_createproperty_linktoform";a:2:{i:0;R:14445;i:1;R:799;}s:36:"8:sf_createproperty_allowedvalsinput";a:2:{i:0;R:14445;i:1;R:799;}s:28:"8:sf_createproperty_propname";a:2:{i:0;R:14445;i:1;R:799;}s:28:"8:sf_createproperty_proptype";a:2:{i:0;R:14445;i:1;R:799;}s:11:"8:templates";a:2:{i:0;R:14445;i:1;R:799;}s:19:"8:sf_templates_docu";a:2:{i:0;R:14445;i:1;R:799;}s:25:"8:sf_templates_definescat";a:2:{i:0;R:14445;i:1;R:799;}s:16:"8:createtemplate";a:2:{i:0;R:14445;i:1;R:799;}s:29:"8:sf_createtemplate_namelabel";a:2:{i:0;R:14445;i:1;R:799;}s:33:"8:sf_createtemplate_categorylabel";a:2:{i:0;R:14445;i:1;R:799;}s:34:"8:sf_createtemplate_templatefields";a:2:{i:0;R:14445;i:1;R:799;}s:30:"8:sf_createtemplate_fieldsdesc";a:2:{i:0;R:14445;i:1;R:799;}s:29:"8:sf_createtemplate_fieldname";a:2:{i:0;R:14445;i:1;R:799;}s:32:"8:sf_createtemplate_displaylabel";a:2:{i:0;R:14445;i:1;R:799;}s:36:"8:sf_createtemplate_semanticproperty";a:2:{i:0;R:14445;i:1;R:799;}s:31:"8:sf_createtemplate_fieldislist";a:2:{i:0;R:14445;i:1;R:799;}s:31:"8:sf_createtemplate_aggregation";a:2:{i:0;R:14445;i:1;R:799;}s:35:"8:sf_createtemplate_aggregationdesc";a:2:{i:0;R:14445;i:1;R:799;}s:36:"8:sf_createtemplate_aggregationlabel";a:2:{i:0;R:14445;i:1;R:799;}s:32:"8:sf_createtemplate_outputformat";a:2:{i:0;R:14445;i:1;R:799;}s:34:"8:sf_createtemplate_standardformat";a:2:{i:0;R:14445;i:1;R:799;}s:33:"8:sf_createtemplate_infoboxformat";a:2:{i:0;R:14445;i:1;R:799;}s:28:"8:sf_createtemplate_addfield";a:2:{i:0;R:14445;i:1;R:799;}s:31:"8:sf_createtemplate_deletefield";a:2:{i:0;R:14445;i:1;R:799;}s:41:"8:sf_createtemplate_addtemplatebeforesave";a:2:{i:0;R:14445;i:1;R:799;}s:7:"8:forms";a:2:{i:0;R:14445;i:1;R:799;}s:15:"8:sf_forms_docu";a:2:{i:0;R:14445;i:1;R:799;}s:25:"8:sf_forminputs_mandatory";a:2:{i:0;R:14445;i:1;R:799;}s:26:"8:sf_forminputs_restricted";a:2:{i:0;R:14445;i:1;R:799;}s:21:"8:sf_forminputs_class";a:2:{i:0;R:14445;i:1;R:799;}s:23:"8:sf_forminputs_default";a:2:{i:0;R:14445;i:1;R:799;}s:23:"8:sf_forminputs_preload";a:2:{i:0;R:14445;i:1;R:799;}s:24:"8:sf_forminputs_property";a:2:{i:0;R:14445;i:1;R:799;}s:20:"8:sf_forminputs_size";a:2:{i:0;R:14445;i:1;R:799;}s:25:"8:sf_forminputs_maxlength";a:2:{i:0;R:14445;i:1;R:799;}s:27:"8:sf_forminputs_placeholder";a:2:{i:0;R:14445;i:1;R:799;}s:26:"8:sf_forminputs_uploadable";a:2:{i:0;R:14445;i:1;R:799;}s:31:"8:sf_forminputs_defaultfilename";a:2:{i:0;R:14445;i:1;R:799;}s:20:"8:sf_forminputs_rows";a:2:{i:0;R:14445;i:1;R:799;}s:20:"8:sf_forminputs_cols";a:2:{i:0;R:14445;i:1;R:799;}s:24:"8:sf_forminputs_autogrow";a:2:{i:0;R:14445;i:1;R:799;}s:34:"8:sf_forminputs_valuesfromproperty";a:2:{i:0;R:14445;i:1;R:799;}s:34:"8:sf_forminputs_valuesfromcategory";a:2:{i:0;R:14445;i:1;R:799;}s:35:"8:sf_forminputs_valuesfromnamespace";a:2:{i:0;R:14445;i:1;R:799;}s:33:"8:sf_forminputs_valuesfromconcept";a:2:{i:0;R:14445;i:1;R:799;}s:29:"8:sf_forminputs_valuesfromurl";a:2:{i:0;R:14445;i:1;R:799;}s:22:"8:sf_forminputs_values";a:2:{i:0;R:14445;i:1;R:799;}s:20:"8:sf_forminputs_list";a:2:{i:0;R:14445;i:1;R:799;}s:25:"8:sf_forminputs_delimiter";a:2:{i:0;R:14445;i:1;R:799;}s:36:"8:sf_forminputs_remoteautocompletion";a:2:{i:0;R:14445;i:1;R:799;}s:34:"8:sf_forminputs_existingvaluesonly";a:2:{i:0;R:14445;i:1;R:799;}s:28:"8:sf_forminputs_showonselect";a:2:{i:0;R:14445;i:1;R:799;}s:27:"8:sf_forminputs_listboxsize";a:2:{i:0;R:14445;i:1;R:799;}s:31:"8:sf_forminputs_includetimezone";a:2:{i:0;R:14445;i:1;R:799;}s:27:"8:sf_forminputs_topcategory";a:2:{i:0;R:14445;i:1;R:799;}s:24:"8:sf_forminputs_hideroot";a:2:{i:0;R:14445;i:1;R:799;}s:21:"8:sf_forminputs_depth";a:2:{i:0;R:14445;i:1;R:799;}s:22:"8:sf_forminputs_height";a:2:{i:0;R:14445;i:1;R:799;}s:21:"8:sf_forminputs_width";a:2:{i:0;R:14445;i:1;R:799;}s:12:"8:createform";a:2:{i:0;R:14445;i:1;R:799;}s:25:"8:sf_createform_nameinput";a:2:{i:0;R:14445;i:1;R:799;}s:29:"8:sf_createform_nameinputdesc";a:2:{i:0;R:14445;i:1;R:799;}s:24:"8:sf_createform_template";a:2:{i:0;R:14445;i:1;R:799;}s:34:"8:sf_createform_templatelabelinput";a:2:{i:0;R:14445;i:1;R:799;}s:29:"8:sf_createform_allowmultiple";a:2:{i:0;R:14445;i:1;R:799;}s:21:"8:sf_createform_field";a:2:{i:0;R:14445;i:1;R:799;}s:25:"8:sf_createform_fieldprop";a:2:{i:0;R:14445;i:1;R:799;}s:29:"8:sf_createform_fieldproplist";a:2:{i:0;R:14445;i:1;R:799;}s:36:"8:sf_createform_fieldpropunknowntype";a:2:{i:0;R:14445;i:1;R:799;}s:25:"8:sf_createform_inputtype";a:2:{i:0;R:14445;i:1;R:799;}s:32:"8:sf_createform_inputtypedefault";a:2:{i:0;R:14445;i:1;R:799;}s:25:"8:sf_createform_formlabel";a:2:{i:0;R:14445;i:1;R:799;}s:22:"8:sf_createform_hidden";a:2:{i:0;R:14445;i:1;R:799;}s:30:"8:sf_createform_removetemplate";a:2:{i:0;R:14445;i:1;R:799;}s:27:"8:sf_createform_addtemplate";a:2:{i:0;R:14445;i:1;R:799;}s:30:"8:sf_createform_beforetemplate";a:2:{i:0;R:14445;i:1;R:799;}s:21:"8:sf_createform_atend";a:2:{i:0;R:14445;i:1;R:799;}s:19:"8:sf_createform_add";a:2:{i:0;R:14445;i:1;R:799;}s:27:"8:sf_createform_choosefield";a:2:{i:0;R:14445;i:1;R:799;}s:16:"8:createcategory";a:2:{i:0;R:14445;i:1;R:799;}s:24:"8:sf_createcategory_name";a:2:{i:0;R:14445;i:1;R:799;}s:31:"8:sf_createcategory_defaultform";a:2:{i:0;R:14445;i:1;R:799;}s:35:"8:sf_createcategory_makesubcategory";a:2:{i:0;R:14445;i:1;R:799;}s:13:"8:createclass";a:2:{i:0;R:14445;i:1;R:799;}s:21:"8:sf_createclass_docu";a:2:{i:0;R:14445;i:1;R:799;}s:30:"8:sf_createclass_allowedvalues";a:2:{i:0;R:14445;i:1;R:799;}s:29:"8:sf_createclass_listofvalues";a:2:{i:0;R:14445;i:1;R:799;}s:32:"8:sf_createclass_leavefieldblank";a:2:{i:0;R:14445;i:1;R:799;}s:26:"8:sf_createclass_nameinput";a:2:{i:0;R:14445;i:1;R:799;}s:30:"8:sf_createclass_missingvalues";a:2:{i:0;R:14445;i:1;R:799;}s:24:"8:sf_createclass_success";a:2:{i:0;R:14445;i:1;R:799;}s:23:"8:sf_createclass_create";a:2:{i:0;R:14445;i:1;R:799;}s:11:"8:formstart";a:2:{i:0;R:14445;i:1;R:799;}s:22:"8:sf_formstart_badform";a:2:{i:0;R:14445;i:1;R:799;}s:23:"8:sf_formstart_badtitle";a:2:{i:0;R:14445;i:1;R:799;}s:19:"8:sf_formstart_docu";a:2:{i:0;R:14445;i:1;R:799;}s:26:"8:sf_formstart_noform_docu";a:2:{i:0;R:14445;i:1;R:799;}s:27:"8:sf_formstart_createoredit";a:2:{i:0;R:14445;i:1;R:799;}s:10:"8:formedit";a:2:{i:0;R:14445;i:1;R:799;}s:25:"8:sf_formedit_createtitle";a:2:{i:0;R:14445;i:1;R:799;}s:33:"8:sf_formedit_createtitlenotarget";a:2:{i:0;R:14445;i:1;R:799;}s:20:"8:sf_formedit_badurl";a:2:{i:0;R:14445;i:1;R:799;}s:22:"8:sf_formedit_altforms";a:2:{i:0;R:14445;i:1;R:799;}s:26:"8:sf_formedit_altformsonly";a:2:{i:0;R:14445;i:1;R:799;}s:15:"8:sf_formcreate";a:2:{i:0;R:14445;i:1;R:799;}s:13:"8:sf_viewform";a:2:{i:0;R:14445;i:1;R:799;}s:15:"8:sf_editsource";a:2:{i:0;R:14445;i:1;R:799;}s:23:"8:sf_formedit_edittitle";a:2:{i:0;R:14445;i:1;R:799;}s:29:"8:sf_formedit_morethanoneform";a:2:{i:0;R:14445;i:1;R:799;}s:25:"8:sf_formedit_formwarning";a:2:{i:0;R:14445;i:1;R:799;}s:32:"8:sf_formedit_mismatchedbrackets";a:2:{i:0;R:14445;i:1;R:799;}s:20:"8:sf_formedit_remove";a:2:{i:0;R:14445;i:1;R:799;}s:24:"8:sf_formedit_addanother";a:2:{i:0;R:14445;i:1;R:799;}s:18:"8:sf_formedit_none";a:2:{i:0;R:14445;i:1;R:799;}s:24:"8:sf_formedit_emptytitle";a:2:{i:0;R:14445;i:1;R:799;}s:23:"8:sf_formedit_hookerror";a:2:{i:0;R:14445;i:1;R:799;}s:36:"8:sf_formedit_saveandcontinueediting";a:2:{i:0;R:14445;i:1;R:799;}s:37:"8:sf_formedit_saveandcontinue_summary";a:2:{i:0;R:14445;i:1;R:799;}s:44:"8:sf_formedit_tooltip_saveandcontinueediting";a:2:{i:0;R:14445;i:1;R:799;}s:46:"8:sf_formedit_accesskey_saveandcontinueediting";a:2:{i:0;R:14445;i:1;R:799;}s:29:"8:sf_autoedit_anoneditwarning";a:2:{i:0;R:14445;i:1;R:799;}s:21:"8:sf_autoedit_success";a:2:{i:0;R:14445;i:1;R:799;}s:31:"8:sf_autoedit_notargetspecified";a:2:{i:0;R:14445;i:1;R:799;}s:25:"8:sf_autoedit_noformfound";a:2:{i:0;R:14445;i:1;R:799;}s:31:"8:sf_autoedit_toomanyformsfound";a:2:{i:0;R:14445;i:1;R:799;}s:22:"8:sf_autoedit_readonly";a:2:{i:0;R:14445;i:1;R:799;}s:28:"8:sf_autoedit_nosemanticform";a:2:{i:0;R:14445;i:1;R:799;}s:21:"8:sf_autoedit_summary";a:2:{i:0;R:14445;i:1;R:799;}s:10:"8:runquery";a:2:{i:0;R:14445;i:1;R:799;}s:20:"8:sf_runquery_badurl";a:2:{i:0;R:14445;i:1;R:799;}s:19:"8:sf_runquery_title";a:2:{i:0;R:14445;i:1;R:799;}s:29:"8:sf_runquery_additionalquery";a:2:{i:0;R:14445;i:1;R:799;}s:22:"8:sf_formerrors_header";a:2:{i:0;R:14445;i:1;R:799;}s:16:"8:sf_blank_error";a:2:{i:0;R:14445;i:1;R:799;}s:18:"8:sf_bad_url_error";a:2:{i:0;R:14445;i:1;R:799;}s:20:"8:sf_bad_email_error";a:2:{i:0;R:14445;i:1;R:799;}s:21:"8:sf_bad_number_error";a:2:{i:0;R:14445;i:1;R:799;}s:22:"8:sf_bad_integer_error";a:2:{i:0;R:14445;i:1;R:799;}s:19:"8:sf_bad_date_error";a:2:{i:0;R:14445;i:1;R:799;}s:14:"8:uploadwindow";a:2:{i:0;R:14445;i:1;R:799;}s:16:"8:sf_deletionlog";a:2:{i:0;R:14445;i:1;R:799;}s:19:"8:sf-preview-header";a:2:{i:0;R:14445;i:1;R:799;}s:17:"8:sf-preview-note";a:2:{i:0;R:14445;i:1;R:799;}s:32:"8:sf-pageschemas-pagenameformula";a:2:{i:0;R:14445;i:1;R:799;}s:28:"8:sf-pageschemas-createtitle";a:2:{i:0;R:14445;i:1;R:799;}s:26:"8:sf-pageschemas-edittitle";a:2:{i:0;R:14445;i:1;R:799;}s:26:"8:sf-pageschemas-inputtype";a:2:{i:0;R:14445;i:1;R:799;}s:24:"8:sf_property_isproperty";a:2:{i:0;R:14445;i:1;R:799;}s:25:"8:sf_property_linkstoform";a:2:{i:0;R:14445;i:1;R:799;}s:25:"8:sf_property_allowedvals";a:2:{i:0;R:14445;i:1;R:799;}s:18:"8:sf_template_docu";a:2:{i:0;R:14445;i:1;R:799;}s:24:"8:sf_template_docufooter";a:2:{i:0;R:14445;i:1;R:799;}s:14:"8:sf_form_docu";a:2:{i:0;R:14445;i:1;R:799;}s:23:"8:sf_form_freetextlabel";a:2:{i:0;R:14445;i:1;R:799;}s:28:"8:sf_category_hasdefaultform";a:2:{i:0;R:14445;i:1;R:799;}s:18:"8:sf_category_desc";a:2:{i:0;R:14445;i:1;R:799;}s:20:"8:sf_blank_namespace";a:2:{i:0;R:14445;i:1;R:799;}s:19:"8:right-viewedittab";a:2:{i:0;R:14445;i:1;R:799;}s:28:"8:right-editrestrictedfields";a:2:{i:0;R:14445;i:1;R:799;}s:19:"8:right-createclass";a:2:{i:0;R:14445;i:1;R:799;}s:20:"8:action-createclass";a:2:{i:0;R:14445;i:1;R:799;}s:29:"8:action-editrestrictedfields";a:2:{i:0;R:14445;i:1;R:799;}s:20:"8:action-viewedittab";a:2:{i:0;R:14445;i:1;R:799;}s:26:"8:semanticformsinputs-desc";a:2:{i:0;s:23:"ext-semanticformsinputs";i:1;R:799;}s:33:"8:semanticformsinputs-wrongformat";a:2:{i:0;R:14612;i:1;R:799;}s:27:"8:semanticformsinputs-close";a:2:{i:0;R:14612;i:1;R:799;}s:26:"8:semanticformsinputs-prev";a:2:{i:0;R:14612;i:1;R:799;}s:26:"8:semanticformsinputs-next";a:2:{i:0;R:14612;i:1;R:799;}s:27:"8:semanticformsinputs-today";a:2:{i:0;R:14612;i:1;R:799;}s:36:"8:semanticformsinputs-dateformatlong";a:2:{i:0;R:14612;i:1;R:799;}s:37:"8:semanticformsinputs-dateformatshort";a:2:{i:0;R:14612;i:1;R:799;}s:36:"8:semanticformsinputs-firstdayofweek";a:2:{i:0;R:14612;i:1;R:799;}s:37:"8:semanticformsinputs-malformedregexp";a:2:{i:0;R:14612;i:1;R:799;}s:43:"8:semanticformsinputs-datepicker-dateformat";a:2:{i:0;R:14612;i:1;R:799;}s:42:"8:semanticformsinputs-datepicker-weekstart";a:2:{i:0;R:14612;i:1;R:799;}s:42:"8:semanticformsinputs-datepicker-firstdate";a:2:{i:0;R:14612;i:1;R:799;}s:41:"8:semanticformsinputs-datepicker-lastdate";a:2:{i:0;R:14612;i:1;R:799;}s:50:"8:semanticformsinputs-datepicker-disabledaysofweek";a:2:{i:0;R:14612;i:1;R:799;}s:52:"8:semanticformsinputs-datepicker-highlightdaysofweek";a:2:{i:0;R:14612;i:1;R:799;}s:45:"8:semanticformsinputs-datepicker-disabledates";a:2:{i:0;R:14612;i:1;R:799;}s:47:"8:semanticformsinputs-datepicker-highlightdates";a:2:{i:0;R:14612;i:1;R:799;}s:48:"8:semanticformsinputs-datepicker-showweeknumbers";a:2:{i:0;R:14612;i:1;R:799;}s:49:"8:semanticformsinputs-datepicker-enableinputfield";a:2:{i:0;R:14612;i:1;R:799;}s:48:"8:semanticformsinputs-datepicker-showresetbutton";a:2:{i:0;R:14612;i:1;R:799;}s:40:"8:semanticformsinputs-timepicker-mintime";a:2:{i:0;R:14612;i:1;R:799;}s:40:"8:semanticformsinputs-timepicker-maxtime";a:2:{i:0;R:14612;i:1;R:799;}s:41:"8:semanticformsinputs-timepicker-interval";a:2:{i:0;R:14612;i:1;R:799;}s:49:"8:semanticformsinputs-timepicker-enableinputfield";a:2:{i:0;R:14612;i:1;R:799;}s:48:"8:semanticformsinputs-timepicker-showresetbutton";a:2:{i:0;R:14612;i:1;R:799;}s:35:"8:semanticformsinputs-regexp-regexp";a:2:{i:0;R:14612;i:1;R:799;}s:37:"8:semanticformsinputs-regexp-basetype";a:2:{i:0;R:14612;i:1;R:799;}s:39:"8:semanticformsinputs-regexp-baseprefix";a:2:{i:0;R:14612;i:1;R:799;}s:35:"8:semanticformsinputs-regexp-orchar";a:2:{i:0;R:14612;i:1;R:799;}s:36:"8:semanticformsinputs-regexp-inverse";a:2:{i:0;R:14612;i:1;R:799;}s:36:"8:semanticformsinputs-regexp-message";a:2:{i:0;R:14612;i:1;R:799;}s:42:"8:semanticformsinputs-menuselect-structure";a:2:{i:0;R:14612;i:1;R:799;}s:49:"8:semanticformsinputs-menuselect-enableinputfield";a:2:{i:0;R:14612;i:1;R:799;}s:23:"8:semanticglossary-desc";a:2:{i:0;s:20:"ext-semanticglossary";i:1;R:799;}s:35:"8:semanticglossary-termdefinedtwice";a:2:{i:0;R:14647;i:1;R:799;}s:27:"8:semanticglossary-prop-glt";a:2:{i:0;R:14647;i:1;R:799;}s:27:"8:semanticglossary-prop-gld";a:2:{i:0;R:14647;i:1;R:799;}s:27:"8:semanticglossary-prop-gll";a:2:{i:0;R:14647;i:1;R:799;}s:10:"8:sii-desc";a:2:{i:0;s:22:"ext-semanticimageinput";i:1;R:799;}s:24:"8:sii-imageinput-loading";a:2:{i:0;R:14653;i:1;R:799;}s:30:"8:semanticinternalobjects-desc";a:2:{i:0;s:27:"ext-semanticinternalobjects";i:1;R:799;}s:42:"8:semanticinternalobjects-internalproperty";a:2:{i:0;R:14656;i:1;R:799;}s:19:"8:semanticmaps-desc";a:2:{i:0;s:16:"ext-semanticmaps";i:1;R:799;}s:35:"8:semanticmaps-unrecognizeddistance";a:2:{i:0;R:14659;i:1;R:799;}s:23:"8:semanticmaps-kml-link";a:2:{i:0;R:14659;i:1;R:799;}s:18:"8:semanticmaps-kml";a:2:{i:0;R:14659;i:1;R:799;}s:35:"8:semanticmaps-default-kml-pagelink";a:2:{i:0;R:14659;i:1;R:799;}s:23:"8:semanticmaps-latitude";a:2:{i:0;R:14659;i:1;R:799;}s:24:"8:semanticmaps-longitude";a:2:{i:0;R:14659;i:1;R:799;}s:23:"8:semanticmaps-altitude";a:2:{i:0;R:14659;i:1;R:799;}s:32:"8:semanticmaps-loading-forminput";a:2:{i:0;R:14659;i:1;R:799;}s:32:"8:semanticmaps_lookupcoordinates";a:2:{i:0;R:14659;i:1;R:799;}s:31:"8:semanticmaps_enteraddresshere";a:2:{i:0;R:14659;i:1;R:799;}s:24:"8:semanticmaps-updatemap";a:2:{i:0;R:14659;i:1;R:799;}s:31:"8:semanticmaps-forminput-remove";a:2:{i:0;R:14659;i:1;R:799;}s:28:"8:semanticmaps-forminput-add";a:2:{i:0;R:14659;i:1;R:799;}s:34:"8:semanticmaps-forminput-locations";a:2:{i:0;R:14659;i:1;R:799;}s:34:"8:semanticmaps-par-staticlocations";a:2:{i:0;R:14659;i:1;R:799;}s:28:"8:semanticmaps-par-forceshow";a:2:{i:0;R:14659;i:1;R:799;}s:28:"8:semanticmaps-par-showtitle";a:2:{i:0;R:14659;i:1;R:799;}s:25:"8:semanticmaps-par-centre";a:2:{i:0;R:14659;i:1;R:799;}s:27:"8:semanticmaps-par-template";a:2:{i:0;R:14659;i:1;R:799;}s:33:"8:semanticmaps-par-geocodecontrol";a:2:{i:0;R:14659;i:1;R:799;}s:23:"8:semanticmaps-kml-text";a:2:{i:0;R:14659;i:1;R:799;}s:24:"8:semanticmaps-kml-title";a:2:{i:0;R:14659;i:1;R:799;}s:31:"8:semanticmaps-kml-linkabsolute";a:2:{i:0;R:14659;i:1;R:799;}s:31:"8:semanticmaps-kml-pagelinktext";a:2:{i:0;R:14659;i:1;R:799;}s:10:"8:smw-desc";a:2:{i:0;s:21:"ext-semanticmediawiki";i:1;R:799;}s:15:"8:smw_viewasrdf";a:2:{i:0;R:14685;i:1;R:799;}s:23:"8:smw_finallistconjunct";a:2:{i:0;R:14685;i:1;R:799;}s:18:"8:smw_factbox_head";a:2:{i:0;R:14685;i:1;R:799;}s:16:"8:smw_isspecprop";a:2:{i:0;R:14685;i:1;R:799;}s:17:"8:smw_isknowntype";a:2:{i:0;R:14685;i:1;R:799;}s:17:"8:smw_isaliastype";a:2:{i:0;R:14685;i:1;R:799;}s:14:"8:smw_isnotype";a:2:{i:0;R:14685;i:1;R:799;}s:25:"8:smw_concept_description";a:2:{i:0;R:14685;i:1;R:799;}s:26:"8:smw_no_concept_namespace";a:2:{i:0;R:14685;i:1;R:799;}s:23:"8:smw_multiple_concepts";a:2:{i:0;R:14685;i:1;R:799;}s:24:"8:smw_concept_cache_miss";a:2:{i:0;R:14685;i:1;R:799;}s:16:"8:smw_noinvannot";a:2:{i:0;R:14685;i:1;R:799;}s:18:"8:version-semantic";a:2:{i:0;R:14685;i:1;R:799;}s:19:"8:smw_uri_blacklist";a:2:{i:0;R:14685;i:1;R:799;}s:12:"8:smw_baduri";a:2:{i:0;R:14685;i:1;R:799;}s:14:"8:smw_rss_link";a:2:{i:0;R:14685;i:1;R:799;}s:14:"8:smw_csv_link";a:2:{i:0;R:14685;i:1;R:799;}s:14:"8:smw_dsv_link";a:2:{i:0;R:14685;i:1;R:799;}s:15:"8:smw_json_link";a:2:{i:0;R:14685;i:1;R:799;}s:14:"8:smw_rdf_link";a:2:{i:0;R:14685;i:1;R:799;}s:22:"8:smw_printername_auto";a:2:{i:0;R:14685;i:1;R:799;}s:23:"8:smw_printername_count";a:2:{i:0;R:14685;i:1;R:799;}s:21:"8:smw_printername_csv";a:2:{i:0;R:14685;i:1;R:799;}s:21:"8:smw_printername_dsv";a:2:{i:0;R:14685;i:1;R:799;}s:23:"8:smw_printername_debug";a:2:{i:0;R:14685;i:1;R:799;}s:26:"8:smw_printername_embedded";a:2:{i:0;R:14685;i:1;R:799;}s:22:"8:smw_printername_json";a:2:{i:0;R:14685;i:1;R:799;}s:22:"8:smw_printername_list";a:2:{i:0;R:14685;i:1;R:799;}s:20:"8:smw_printername_ol";a:2:{i:0;R:14685;i:1;R:799;}s:20:"8:smw_printername_ul";a:2:{i:0;R:14685;i:1;R:799;}s:21:"8:smw_printername_rss";a:2:{i:0;R:14685;i:1;R:799;}s:23:"8:smw_printername_table";a:2:{i:0;R:14685;i:1;R:799;}s:28:"8:smw_printername_broadtable";a:2:{i:0;R:14685;i:1;R:799;}s:26:"8:smw_printername_template";a:2:{i:0;R:14685;i:1;R:799;}s:21:"8:smw_printername_rdf";a:2:{i:0;R:14685;i:1;R:799;}s:26:"8:smw_printername_category";a:2:{i:0;R:14685;i:1;R:799;}s:21:"8:smw_paramdesc_limit";a:2:{i:0;R:14685;i:1;R:799;}s:22:"8:smw_paramdesc_offset";a:2:{i:0;R:14685;i:1;R:799;}s:23:"8:smw_paramdesc_headers";a:2:{i:0;R:14685;i:1;R:799;}s:25:"8:smw_paramdesc_mainlabel";a:2:{i:0;R:14685;i:1;R:799;}s:20:"8:smw_paramdesc_link";a:2:{i:0;R:14685;i:1;R:799;}s:21:"8:smw_paramdesc_intro";a:2:{i:0;R:14685;i:1;R:799;}s:21:"8:smw_paramdesc_outro";a:2:{i:0;R:14685;i:1;R:799;}s:23:"8:smw_paramdesc_default";a:2:{i:0;R:14685;i:1;R:799;}s:27:"8:smw_paramdesc_searchlabel";a:2:{i:0;R:14685;i:1;R:799;}s:19:"8:smw_paramdesc_sep";a:2:{i:0;R:14685;i:1;R:799;}s:28:"8:smw-paramdesc-distribution";a:2:{i:0;R:14685;i:1;R:799;}s:32:"8:smw-paramdesc-distributionsort";a:2:{i:0;R:14685;i:1;R:799;}s:33:"8:smw-paramdesc-distributionlimit";a:2:{i:0;R:14685;i:1;R:799;}s:24:"8:smw_paramdesc_template";a:2:{i:0;R:14685;i:1;R:799;}s:23:"8:smw_paramdesc_columns";a:2:{i:0;R:14685;i:1;R:799;}s:25:"8:smw_paramdesc_userparam";a:2:{i:0;R:14685;i:1;R:799;}s:29:"8:smw_paramdesc_introtemplate";a:2:{i:0;R:14685;i:1;R:799;}s:29:"8:smw_paramdesc_outrotemplate";a:2:{i:0;R:14685;i:1;R:799;}s:27:"8:smw_paramdesc_embedformat";a:2:{i:0;R:14685;i:1;R:799;}s:25:"8:smw_paramdesc_embedonly";a:2:{i:0;R:14685;i:1;R:799;}s:27:"8:smw-paramdesc-table-class";a:2:{i:0;R:14685;i:1;R:799;}s:24:"8:smw_paramdesc_rsstitle";a:2:{i:0;R:14685;i:1;R:799;}s:30:"8:smw_paramdesc_rssdescription";a:2:{i:0;R:14685;i:1;R:799;}s:25:"8:smw_paramdesc_rdfsyntax";a:2:{i:0;R:14685;i:1;R:799;}s:23:"8:smw-paramdesc-csv-sep";a:2:{i:0;R:14685;i:1;R:799;}s:29:"8:smw-paramdesc-dsv-separator";a:2:{i:0;R:14685;i:1;R:799;}s:28:"8:smw-paramdesc-dsv-filename";a:2:{i:0;R:14685;i:1;R:799;}s:24:"8:smw-smwdoc-description";a:2:{i:0;R:14685;i:1;R:799;}s:23:"8:smw-smwdoc-par-format";a:2:{i:0;R:14685;i:1;R:799;}s:27:"8:smw-smwdoc-par-parameters";a:2:{i:0;R:14685;i:1;R:799;}s:20:"8:smw-paramdesc-sort";a:2:{i:0;R:14685;i:1;R:799;}s:21:"8:smw-paramdesc-order";a:2:{i:0;R:14685;i:1;R:799;}s:27:"8:smw-paramdesc-searchlabel";a:2:{i:0;R:14685;i:1;R:799;}s:26:"8:smw_paramdesc_named_args";a:2:{i:0;R:14685;i:1;R:799;}s:17:"8:smw_iq_disabled";a:2:{i:0;R:14685;i:1;R:799;}s:20:"8:smw_iq_moreresults";a:2:{i:0;R:14685;i:1;R:799;}s:25:"8:smw_nonright_importtype";a:2:{i:0;R:14685;i:1;R:799;}s:22:"8:smw_wrong_importtype";a:2:{i:0;R:14685;i:1;R:799;}s:22:"8:smw_no_importelement";a:2:{i:0;R:14685;i:1;R:799;}s:16:"8:smw_parseerror";a:2:{i:0;R:14685;i:1;R:799;}s:18:"8:smw_decseparator";a:2:{i:0;R:14685;i:1;R:799;}s:19:"8:smw_kiloseparator";a:2:{i:0;R:14685;i:1;R:799;}s:13:"8:smw_notitle";a:2:{i:0;R:14685;i:1;R:799;}s:16:"8:smw_noproperty";a:2:{i:0;R:14685;i:1;R:799;}s:21:"8:smw_wrong_namespace";a:2:{i:0;R:14685;i:1;R:799;}s:17:"8:smw_unknowntype";a:2:{i:0;R:14685;i:1;R:799;}s:15:"8:smw_manytypes";a:2:{i:0;R:14685;i:1;R:799;}s:17:"8:smw_emptystring";a:2:{i:0;R:14685;i:1;R:799;}s:15:"8:smw_maxstring";a:2:{i:0;R:14685;i:1;R:799;}s:15:"8:smw_notinenum";a:2:{i:0;R:14685;i:1;R:799;}s:15:"8:smw_noboolean";a:2:{i:0;R:14685;i:1;R:799;}s:16:"8:smw_true_words";a:2:{i:0;R:14685;i:1;R:799;}s:17:"8:smw_false_words";a:2:{i:0;R:14685;i:1;R:799;}s:13:"8:smw_nofloat";a:2:{i:0;R:14685;i:1;R:799;}s:14:"8:smw_infinite";a:2:{i:0;R:14685;i:1;R:799;}s:20:"8:smw_unitnotallowed";a:2:{i:0;R:14685;i:1;R:799;}s:21:"8:smw_nounitsdeclared";a:2:{i:0;R:14685;i:1;R:799;}s:14:"8:smw_novalues";a:2:{i:0;R:14685;i:1;R:799;}s:16:"8:smw_nodatetime";a:2:{i:0;R:14685;i:1;R:799;}s:20:"8:smw_toomanyclosing";a:2:{i:0;R:14685;i:1;R:799;}s:23:"8:smw_noclosingbrackets";a:2:{i:0;R:14685;i:1;R:799;}s:21:"8:smw_misplacedsymbol";a:2:{i:0;R:14685;i:1;R:799;}s:20:"8:smw_unexpectedpart";a:2:{i:0;R:14685;i:1;R:799;}s:19:"8:smw_emptysubquery";a:2:{i:0;R:14685;i:1;R:799;}s:23:"8:smw_misplacedsubquery";a:2:{i:0;R:14685;i:1;R:799;}s:19:"8:smw_valuesubquery";a:2:{i:0;R:14685;i:1;R:799;}s:18:"8:smw_badqueryatom";a:2:{i:0;R:14685;i:1;R:799;}s:22:"8:smw_propvalueproblem";a:2:{i:0;R:14685;i:1;R:799;}s:20:"8:smw_noqueryfeature";a:2:{i:0;R:14685;i:1;R:799;}s:20:"8:smw_noconjunctions";a:2:{i:0;R:14685;i:1;R:799;}s:20:"8:smw_nodisjunctions";a:2:{i:0;R:14685;i:1;R:799;}s:19:"8:smw_querytoolarge";a:2:{i:0;R:14685;i:1;R:799;}s:21:"8:smw_notemplategiven";a:2:{i:0;R:14685;i:1;R:799;}s:27:"8:smw_db_sparqlqueryproblem";a:2:{i:0;R:14685;i:1;R:799;}s:30:"8:smw_db_sparqlqueryincomplete";a:2:{i:0;R:14685;i:1;R:799;}s:17:"8:smw_type_header";a:2:{i:0;R:14685;i:1;R:799;}s:22:"8:smw_typearticlecount";a:2:{i:0;R:14685;i:1;R:799;}s:22:"8:smw_attribute_header";a:2:{i:0;R:14685;i:1;R:799;}s:27:"8:smw_attributearticlecount";a:2:{i:0;R:14685;i:1;R:799;}s:24:"8:smw_subproperty_header";a:2:{i:0;R:14685;i:1;R:799;}s:29:"8:smw_subpropertyarticlecount";a:2:{i:0;R:14685;i:1;R:799;}s:20:"8:smw_concept_header";a:2:{i:0;R:14685;i:1;R:799;}s:25:"8:smw_conceptarticlecount";a:2:{i:0;R:14685;i:1;R:799;}s:21:"8:smw_rss_description";a:2:{i:0;R:14685;i:1;R:799;}s:30:"8:specialpages-group-smw_group";a:2:{i:0;R:14685;i:1;R:799;}s:11:"8:exportrdf";a:2:{i:0;R:14685;i:1;R:799;}s:20:"8:smw_exportrdf_docu";a:2:{i:0;R:14685;i:1;R:799;}s:25:"8:smw_exportrdf_recursive";a:2:{i:0;R:14685;i:1;R:799;}s:25:"8:smw_exportrdf_backlinks";a:2:{i:0;R:14685;i:1;R:799;}s:24:"8:smw_exportrdf_lastdate";a:2:{i:0;R:14685;i:1;R:799;}s:22:"8:smw_exportrdf_submit";a:2:{i:0;R:14685;i:1;R:799;}s:13:"8:uriresolver";a:2:{i:0;R:14685;i:1;R:799;}s:12:"8:properties";a:2:{i:0;R:14685;i:1;R:799;}s:21:"8:smw_properties_docu";a:2:{i:0;R:14685;i:1;R:799;}s:23:"8:smw_property_template";a:2:{i:0;R:14685;i:1;R:799;}s:30:"8:smw_property_template_notype";a:2:{i:0;R:14685;i:1;R:799;}s:23:"8:smw_propertylackspage";a:2:{i:0;R:14685;i:1;R:799;}s:23:"8:smw_propertylackstype";a:2:{i:0;R:14685;i:1;R:799;}s:24:"8:smw_propertyhardlyused";a:2:{i:0;R:14685;i:1;R:799;}s:18:"8:unusedproperties";a:2:{i:0;R:14685;i:1;R:799;}s:27:"8:smw_unusedproperties_docu";a:2:{i:0;R:14685;i:1;R:799;}s:29:"8:smw_unusedproperty_template";a:2:{i:0;R:14685;i:1;R:799;}s:18:"8:wantedproperties";a:2:{i:0;R:14685;i:1;R:799;}s:27:"8:smw_wantedproperties_docu";a:2:{i:0;R:14685;i:1;R:799;}s:29:"8:smw_wantedproperty_template";a:2:{i:0;R:14685;i:1;R:799;}s:11:"8:smw_purge";a:2:{i:0;R:14685;i:1;R:799;}s:7:"8:types";a:2:{i:0;R:14685;i:1;R:799;}s:16:"8:smw_types_docu";a:2:{i:0;R:14685;i:1;R:799;}s:15:"8:smw_typeunits";a:2:{i:0;R:14685;i:1;R:799;}s:20:"8:semanticstatistics";a:2:{i:0;R:14685;i:1;R:799;}s:19:"8:smw_semstats_text";a:2:{i:0;R:14685;i:1;R:799;}s:13:"8:smw_uri_doc";a:2:{i:0;R:14685;i:1;R:799;}s:5:"8:ask";a:2:{i:0;R:14685;i:1;R:799;}s:18:"8:smw_ask_doculink";a:2:{i:0;R:14685;i:1;R:799;}s:16:"8:smw_ask_sortby";a:2:{i:0;R:14685;i:1;R:799;}s:18:"8:smw_ask_ascorder";a:2:{i:0;R:14685;i:1;R:799;}s:19:"8:smw_ask_descorder";a:2:{i:0;R:14685;i:1;R:799;}s:16:"8:smw_ask_submit";a:2:{i:0;R:14685;i:1;R:799;}s:19:"8:smw_ask_editquery";a:2:{i:0;R:14685;i:1;R:799;}s:23:"8:smw_add_sortcondition";a:2:{i:0;R:14685;i:1;R:799;}s:19:"8:smw_ask_hidequery";a:2:{i:0;R:14685;i:1;R:799;}s:14:"8:smw_ask_help";a:2:{i:0;R:14685;i:1;R:799;}s:19:"8:smw_ask_queryhead";a:2:{i:0;R:14685;i:1;R:799;}s:19:"8:smw_ask_printhead";a:2:{i:0;R:14685;i:1;R:799;}s:19:"8:smw_ask_printdesc";a:2:{i:0;R:14685;i:1;R:799;}s:19:"8:smw_ask_format_as";a:2:{i:0;R:14685;i:1;R:799;}s:23:"8:smw_ask_defaultformat";a:2:{i:0;R:14685;i:1;R:799;}s:22:"8:smw_ask_otheroptions";a:2:{i:0;R:14685;i:1;R:799;}s:20:"8:smw_ask_show_embed";a:2:{i:0;R:14685;i:1;R:799;}s:20:"8:smw_ask_hide_embed";a:2:{i:0;R:14685;i:1;R:799;}s:21:"8:smw_ask_embed_instr";a:2:{i:0;R:14685;i:1;R:799;}s:14:"8:querycreator";a:2:{i:0;R:14685;i:1;R:799;}s:21:"8:smw_qc_addmainlabel";a:2:{i:0;R:14685;i:1;R:799;}s:25:"8:smw_qc_show_addnal_opts";a:2:{i:0;R:14685;i:1;R:799;}s:25:"8:smw_qc_hide_addnal_opts";a:2:{i:0;R:14685;i:1;R:799;}s:17:"8:smw_qc_otheropt";a:2:{i:0;R:14685;i:1;R:799;}s:14:"8:smw_qc_intro";a:2:{i:0;R:14685;i:1;R:799;}s:14:"8:smw_qc_outro";a:2:{i:0;R:14685;i:1;R:799;}s:16:"8:smw_qc_default";a:2:{i:0;R:14685;i:1;R:799;}s:18:"8:smw_qc_formatopt";a:2:{i:0;R:14685;i:1;R:799;}s:19:"8:smw_qc_query_help";a:2:{i:0;R:14685;i:1;R:799;}s:18:"8:smw_qui_property";a:2:{i:0;R:14685;i:1;R:799;}s:14:"8:smw_qui_prop";a:2:{i:0;R:14685;i:1;R:799;}s:14:"8:smw_qui_labl";a:2:{i:0;R:14685;i:1;R:799;}s:15:"8:smw_qui_formt";a:2:{i:0;R:14685;i:1;R:799;}s:14:"8:smw_qui_limt";a:2:{i:0;R:14685;i:1;R:799;}s:22:"8:smw_qui_shownresults";a:2:{i:0;R:14685;i:1;R:799;}s:17:"8:smw_qui_noquery";a:2:{i:0;R:14685;i:1;R:799;}s:21:"8:smw_qui_invalidprop";a:2:{i:0;R:14685;i:1;R:799;}s:23:"8:smw_qui_invalidformat";a:2:{i:0;R:14685;i:1;R:799;}s:16:"8:smw_qui_nosort";a:2:{i:0;R:14685;i:1;R:799;}s:18:"8:smw_qui_ascorder";a:2:{i:0;R:14685;i:1;R:799;}s:19:"8:smw_qui_descorder";a:2:{i:0;R:14685;i:1;R:799;}s:19:"8:smw_qui_randorder";a:2:{i:0;R:14685;i:1;R:799;}s:18:"8:smw_qui_addnprop";a:2:{i:0;R:14685;i:1;R:799;}s:16:"8:smw_qui_delete";a:2:{i:0;R:14685;i:1;R:799;}s:16:"8:smw_qui_rescol";a:2:{i:0;R:14685;i:1;R:799;}s:17:"8:smw_qui_options";a:2:{i:0;R:14685;i:1;R:799;}s:21:"8:smw_qui_addcategory";a:2:{i:0;R:14685;i:1;R:799;}s:19:"8:smw_qui_addrescol";a:2:{i:0;R:14685;i:1;R:799;}s:12:"8:smw_qui_ok";a:2:{i:0;R:14685;i:1;R:799;}s:16:"8:smw_qui_cancel";a:2:{i:0;R:14685;i:1;R:799;}s:18:"8:smw_qui_category";a:2:{i:0;R:14685;i:1;R:799;}s:15:"8:smw_qui_label";a:2:{i:0;R:14685;i:1;R:799;}s:17:"8:smw_prp_options";a:2:{i:0;R:14685;i:1;R:799;}s:17:"8:smw_qui_catopts";a:2:{i:0;R:14685;i:1;R:799;}s:21:"8:smw_qui_mainlabopts";a:2:{i:0;R:14685;i:1;R:799;}s:16:"8:smw_qui_dlabel";a:2:{i:0;R:14685;i:1;R:799;}s:19:"8:smw_qui_dcategory";a:2:{i:0;R:14685;i:1;R:799;}s:17:"8:smw_qui_dcatyes";a:2:{i:0;R:14685;i:1;R:799;}s:16:"8:smw_qui_dcatno";a:2:{i:0;R:14685;i:1;R:799;}s:18:"8:searchbyproperty";a:2:{i:0;R:14685;i:1;R:799;}s:14:"8:smw_sbv_docu";a:2:{i:0;R:14685;i:1;R:799;}s:17:"8:smw_sbv_novalue";a:2:{i:0;R:14685;i:1;R:799;}s:23:"8:smw_sbv_displayresult";a:2:{i:0;R:14685;i:1;R:799;}s:28:"8:smw_sbv_displayresultfuzzy";a:2:{i:0;R:14685;i:1;R:799;}s:18:"8:smw_sbv_property";a:2:{i:0;R:14685;i:1;R:799;}s:15:"8:smw_sbv_value";a:2:{i:0;R:14685;i:1;R:799;}s:16:"8:smw_sbv_submit";a:2:{i:0;R:14685;i:1;R:799;}s:8:"8:browse";a:2:{i:0;R:14685;i:1;R:799;}s:16:"8:smw_browselink";a:2:{i:0;R:14685;i:1;R:799;}s:20:"8:smw_browse_article";a:2:{i:0;R:14685;i:1;R:799;}s:15:"8:smw_browse_go";a:2:{i:0;R:14685;i:1;R:799;}s:17:"8:smw_browse_more";a:2:{i:0;R:14685;i:1;R:799;}s:26:"8:smw_browse_show_incoming";a:2:{i:0;R:14685;i:1;R:799;}s:26:"8:smw_browse_hide_incoming";a:2:{i:0;R:14685;i:1;R:799;}s:24:"8:smw_browse_no_outgoing";a:2:{i:0;R:14685;i:1;R:799;}s:24:"8:smw_browse_no_incoming";a:2:{i:0;R:14685;i:1;R:799;}s:27:"8:smw_inverse_label_default";a:2:{i:0;R:14685;i:1;R:799;}s:28:"8:smw_inverse_label_property";a:2:{i:0;R:14685;i:1;R:799;}s:14:"8:pageproperty";a:2:{i:0;R:14685;i:1;R:799;}s:13:"8:smw_pp_docu";a:2:{i:0;R:14685;i:1;R:799;}s:13:"8:smw_pp_from";a:2:{i:0;R:14685;i:1;R:799;}s:13:"8:smw_pp_type";a:2:{i:0;R:14685;i:1;R:799;}s:15:"8:smw_pp_submit";a:2:{i:0;R:14685;i:1;R:799;}s:17:"8:smw_result_prev";a:2:{i:0;R:14685;i:1;R:799;}s:17:"8:smw_result_next";a:2:{i:0;R:14685;i:1;R:799;}s:20:"8:smw_result_results";a:2:{i:0;R:14685;i:1;R:799;}s:22:"8:smw_result_noresults";a:2:{i:0;R:14685;i:1;R:799;}s:10:"8:smwadmin";a:2:{i:0;R:14685;i:1;R:799;}s:27:"8:smw_smwadmin_setupsuccess";a:2:{i:0;R:14685;i:1;R:799;}s:21:"8:smw_smwadmin_return";a:2:{i:0;R:14685;i:1;R:799;}s:28:"8:smw_smwadmin_updatestarted";a:2:{i:0;R:14685;i:1;R:799;}s:31:"8:smw_smwadmin_updatenotstarted";a:2:{i:0;R:14685;i:1;R:799;}s:28:"8:smw_smwadmin_updatestopped";a:2:{i:0;R:14685;i:1;R:799;}s:31:"8:smw_smwadmin_updatenotstopped";a:2:{i:0;R:14685;i:1;R:799;}s:19:"8:smw_smwadmin_docu";a:2:{i:0;R:14685;i:1;R:799;}s:17:"8:smw_smwadmin_db";a:2:{i:0;R:14685;i:1;R:799;}s:21:"8:smw_smwadmin_dbdocu";a:2:{i:0;R:14685;i:1;R:799;}s:30:"8:smw_smwadmin_permissionswarn";a:2:{i:0;R:14685;i:1;R:799;}s:23:"8:smw_smwadmin_dbbutton";a:2:{i:0;R:14685;i:1;R:799;}s:23:"8:smw_smwadmin_announce";a:2:{i:0;R:14685;i:1;R:799;}s:27:"8:smw_smwadmin_announcedocu";a:2:{i:0;R:14685;i:1;R:799;}s:29:"8:smw_smwadmin_announcebutton";a:2:{i:0;R:14685;i:1;R:799;}s:26:"8:smw_smwadmin_datarefresh";a:2:{i:0;R:14685;i:1;R:799;}s:30:"8:smw_smwadmin_datarefreshdocu";a:2:{i:0;R:14685;i:1;R:799;}s:34:"8:smw_smwadmin_datarefreshprogress";a:2:{i:0;R:14685;i:1;R:799;}s:32:"8:smw_smwadmin_datarefreshbutton";a:2:{i:0;R:14685;i:1;R:799;}s:30:"8:smw_smwadmin_datarefreshstop";a:2:{i:0;R:14685;i:1;R:799;}s:37:"8:smw_smwadmin_datarefreshstopconfirm";a:2:{i:0;R:14685;i:1;R:799;}s:22:"8:smw_smwadmin_support";a:2:{i:0;R:14685;i:1;R:799;}s:26:"8:smw_smwadmin_supportdocu";a:2:{i:0;R:14685;i:1;R:799;}s:26:"8:smw_smwadmin_installfile";a:2:{i:0;R:14685;i:1;R:799;}s:26:"8:smw_smwadmin_smwhomepage";a:2:{i:0;R:14685;i:1;R:799;}s:25:"8:smw_smwadmin_mediazilla";a:2:{i:0;R:14685;i:1;R:799;}s:24:"8:smw_smwadmin_questions";a:2:{i:0;R:14685;i:1;R:799;}s:30:"8:smw_adminlinks_datastructure";a:2:{i:0;R:14685;i:1;R:799;}s:31:"8:smw_adminlinks_displayingdata";a:2:{i:0;R:14685;i:1;R:799;}s:34:"8:smw_adminlinks_inlinequerieshelp";a:2:{i:0;R:14685;i:1;R:799;}s:31:"8:smw-createproperty-isproperty";a:2:{i:0;R:14685;i:1;R:799;}s:32:"8:smw-createproperty-allowedvals";a:2:{i:0;R:14685;i:1;R:799;}s:30:"8:smw-paramdesc-category-delim";a:2:{i:0;R:14685;i:1;R:799;}s:33:"8:smw-paramdesc-category-template";a:2:{i:0;R:14685;i:1;R:799;}s:34:"8:smw-paramdesc-category-userparam";a:2:{i:0;R:14685;i:1;R:799;}s:22:"8:smw-info-par-message";a:2:{i:0;R:14685;i:1;R:799;}s:19:"8:smw-info-par-icon";a:2:{i:0;R:14685;i:1;R:799;}s:25:"8:semanticpageseries-desc";a:2:{i:0;s:22:"ext-semanticpageseries";i:1;R:799;}s:17:"8:spssuccesstitle";a:2:{i:0;R:14959;i:1;R:799;}s:12:"8:spssuccess";a:2:{i:0;R:14959;i:1;R:799;}s:27:"8:spssuccess-returntoorigin";a:2:{i:0;R:14959;i:1;R:799;}s:10:"8:spserror";a:2:{i:0;R:14959;i:1;R:799;}s:27:"8:spserror-diffnotsupported";a:2:{i:0;R:14959;i:1;R:799;}s:30:"8:spserror-previewnotsupported";a:2:{i:0;R:14959;i:1;R:799;}s:25:"8:spserror-noiteratorname";a:2:{i:0;R:14959;i:1;R:799;}s:26:"8:spserror-iteratorunknown";a:2:{i:0;R:14959;i:1;R:799;}s:21:"8:spserror-noformname";a:2:{i:0;R:14959;i:1;R:799;}s:22:"8:spserror-formunknown";a:2:{i:0;R:14959;i:1;R:799;}s:27:"8:spserror-notargetformname";a:2:{i:0;R:14959;i:1;R:799;}s:28:"8:spserror-notargetfieldname";a:2:{i:0;R:14959;i:1;R:799;}s:31:"8:spserror-iteratorparammissing";a:2:{i:0;R:14959;i:1;R:799;}s:25:"8:spserror-noiteratordata";a:2:{i:0;R:14959;i:1;R:799;}s:37:"8:spserror-pagegenerationlimitexeeded";a:2:{i:0;R:14959;i:1;R:799;}s:32:"8:spserror-date-startdatemissing";a:2:{i:0;R:14959;i:1;R:799;}s:29:"8:spserror-date-internalerror";a:2:{i:0;R:14959;i:1;R:799;}s:36:"8:spserror-count-startvaluemalformed";a:2:{i:0;R:14959;i:1;R:799;}s:34:"8:spserror-count-endvaluemalformed";a:2:{i:0;R:14959;i:1;R:799;}s:35:"8:spserror-count-stepvaluemalformed";a:2:{i:0;R:14959;i:1;R:799;}s:37:"8:spserror-count-digitsvaluemalformed";a:2:{i:0;R:14959;i:1;R:799;}s:14:"8:spm_wbs_link";a:2:{i:0;s:29:"ext-semanticprojectmanagement";i:1;R:799;}s:21:"8:spm_printername_wbs";a:2:{i:0;R:14982;i:1;R:799;}s:10:"8:spm-name";a:2:{i:0;R:14982;i:1;R:799;}s:32:"8:semanticprojectmanagement-desc";a:2:{i:0;R:14982;i:1;R:799;}s:27:"8:semanticprojectmanagement";a:2:{i:0;R:14982;i:1;R:799;}s:16:"8:right-spmsetup";a:2:{i:0;R:14982;i:1;R:799;}s:10:"8:srf-desc";a:2:{i:0;s:25:"ext-semanticresultformats";i:1;R:799;}s:10:"8:srf-name";a:2:{i:0;R:14989;i:1;R:799;}s:20:"8:srfc_previousmonth";a:2:{i:0;R:14989;i:1;R:799;}s:16:"8:srfc_nextmonth";a:2:{i:0;R:14989;i:1;R:799;}s:12:"8:srfc_today";a:2:{i:0;R:14989;i:1;R:799;}s:16:"8:srfc_gotomonth";a:2:{i:0;R:14989;i:1;R:799;}s:26:"8:srf_printername_calendar";a:2:{i:0;R:14989;i:1;R:799;}s:28:"8:srf_paramdesc_calendarlang";a:2:{i:0;R:14989;i:1;R:799;}s:30:"8:srf_paramdesc_calendarcolors";a:2:{i:0;R:14989;i:1;R:799;}s:16:"8:srf_vcard_link";a:2:{i:0;R:14989;i:1;R:799;}s:23:"8:srf_printername_vcard";a:2:{i:0;R:14989;i:1;R:799;}s:20:"8:srf_icalendar_link";a:2:{i:0;R:14989;i:1;R:799;}s:27:"8:srf_printername_icalendar";a:2:{i:0;R:14989;i:1;R:799;}s:30:"8:srf_paramdesc_icalendartitle";a:2:{i:0;R:14989;i:1;R:799;}s:36:"8:srf_paramdesc_icalendardescription";a:2:{i:0;R:14989;i:1;R:799;}s:17:"8:srf_bibtex_link";a:2:{i:0;R:14989;i:1;R:799;}s:24:"8:srf_printername_bibtex";a:2:{i:0;R:14989;i:1;R:799;}s:21:"8:srf_outline_novalue";a:2:{i:0;R:14989;i:1;R:799;}s:25:"8:srf_printername_outline";a:2:{i:0;R:14989;i:1;R:799;}s:33:"8:srf_paramdesc_outlineproperties";a:2:{i:0;R:14989;i:1;R:799;}s:24:"8:srf_printername_d3line";a:2:{i:0;R:14989;i:1;R:799;}s:23:"8:srf_printername_d3bar";a:2:{i:0;R:14989;i:1;R:799;}s:27:"8:srf_printername_d3treemap";a:2:{i:0;R:14989;i:1;R:799;}s:21:"8:srf_printername_sum";a:2:{i:0;R:14989;i:1;R:799;}s:25:"8:srf_printername_average";a:2:{i:0;R:14989;i:1;R:799;}s:21:"8:srf_printername_max";a:2:{i:0;R:14989;i:1;R:799;}s:21:"8:srf_printername_min";a:2:{i:0;R:14989;i:1;R:799;}s:21:"8:srf_paramdesc_limit";a:2:{i:0;R:14989;i:1;R:799;}s:25:"8:srf_printername_product";a:2:{i:0;R:14989;i:1;R:799;}s:24:"8:srf_printername_median";a:2:{i:0;R:14989;i:1;R:799;}s:23:"8:srf-paramdesc-default";a:2:{i:0;R:14989;i:1;R:799;}s:26:"8:srf_printername_earliest";a:2:{i:0;R:14989;i:1;R:799;}s:24:"8:srf_printername_latest";a:2:{i:0;R:14989;i:1;R:799;}s:26:"8:srf_printername_timeline";a:2:{i:0;R:14989;i:1;R:799;}s:27:"8:srf_printername_eventline";a:2:{i:0;R:14989;i:1;R:799;}s:29:"8:srf_paramdesc_timelinebands";a:2:{i:0;R:14989;i:1;R:799;}s:32:"8:srf_paramdesc_timelineposition";a:2:{i:0;R:14989;i:1;R:799;}s:29:"8:srf_paramdesc_timelinestart";a:2:{i:0;R:14989;i:1;R:799;}s:27:"8:srf_paramdesc_timelineend";a:2:{i:0;R:14989;i:1;R:799;}s:28:"8:srf_paramdesc_timelinesize";a:2:{i:0;R:14989;i:1;R:799;}s:25:"8:srf-timeline-allresults";a:2:{i:0;R:14989;i:1;R:799;}s:19:"8:srf-timeline-nojs";a:2:{i:0;R:14989;i:1;R:799;}s:21:"8:srf_paramdesc_views";a:2:{i:0;R:14989;i:1;R:799;}s:22:"8:srf_paramdesc_facets";a:2:{i:0;R:14989;i:1;R:799;}s:20:"8:srf_paramdesc_lens";a:2:{i:0;R:14989;i:1;R:799;}s:19:"8:srf-error-feature";a:2:{i:0;R:14989;i:1;R:799;}s:26:"8:srf-error-resourceloader";a:2:{i:0;R:14989;i:1;R:799;}s:28:"8:srf-error-missing-renderer";a:2:{i:0;R:14989;i:1;R:799;}s:25:"8:srf-error-missing-label";a:2:{i:0;R:14989;i:1;R:799;}s:26:"8:srf-error-missing-number";a:2:{i:0;R:14989;i:1;R:799;}s:27:"8:srf_printername_googlebar";a:2:{i:0;R:14989;i:1;R:799;}s:27:"8:srf_printername_googlepie";a:2:{i:0;R:14989;i:1;R:799;}s:27:"8:srf_printername_jqplotbar";a:2:{i:0;R:14989;i:1;R:799;}s:27:"8:srf_printername_jqplotpie";a:2:{i:0;R:14989;i:1;R:799;}s:30:"8:srf_printername_jqplotseries";a:2:{i:0;R:14989;i:1;R:799;}s:27:"8:srf_paramdesc_chartheight";a:2:{i:0;R:14989;i:1;R:799;}s:26:"8:srf_paramdesc_chartwidth";a:2:{i:0;R:14989;i:1;R:799;}s:26:"8:srf_paramdesc_charttitle";a:2:{i:0;R:14989;i:1;R:799;}s:24:"8:srf_paramdesc_barcolor";a:2:{i:0;R:14989;i:1;R:799;}s:28:"8:srf_paramdesc_bardirection";a:2:{i:0;R:14989;i:1;R:799;}s:35:"8:srf_paramdesc_barnumbersaxislabel";a:2:{i:0;R:14989;i:1;R:799;}s:24:"8:srf-paramdesc-minvalue";a:2:{i:0;R:14989;i:1;R:799;}s:27:"8:srf-paramdesc-pointlabels";a:2:{i:0;R:14989;i:1;R:799;}s:27:"8:srf-paramdesc-chartlegend";a:2:{i:0;R:14989;i:1;R:799;}s:26:"8:srf-paramdesc-datalabels";a:2:{i:0;R:14989;i:1;R:799;}s:25:"8:srf-paramdesc-charttext";a:2:{i:0;R:14989;i:1;R:799;}s:26:"8:srf-paramdesc-chartclass";a:2:{i:0;R:14989;i:1;R:799;}s:24:"8:srf-paramdesc-renderer";a:2:{i:0;R:14989;i:1;R:799;}s:23:"8:srf-paramdesc-filling";a:2:{i:0;R:14989;i:1;R:799;}s:21:"8:srf-paramdesc-theme";a:2:{i:0;R:14989;i:1;R:799;}s:26:"8:srf-paramdesc-chartcolor";a:2:{i:0;R:14989;i:1;R:799;}s:27:"8:srf-paramdesc-colorscheme";a:2:{i:0;R:14989;i:1;R:799;}s:27:"8:srf-paramdesc-valueformat";a:2:{i:0;R:14989;i:1;R:799;}s:27:"8:srf-paramdesc-highlighter";a:2:{i:0;R:14989;i:1;R:799;}s:27:"8:srf-paramdesc-smoothlines";a:2:{i:0;R:14989;i:1;R:799;}s:27:"8:srf-paramdesc-stackseries";a:2:{i:0;R:14989;i:1;R:799;}s:27:"8:srf-paramdesc-seriesgroup";a:2:{i:0;R:14989;i:1;R:799;}s:27:"8:srf-paramdesc-serieslabel";a:2:{i:0;R:14989;i:1;R:799;}s:25:"8:srf_printername_gallery";a:2:{i:0;R:14989;i:1;R:799;}s:22:"8:srf_paramdesc_perrow";a:2:{i:0;R:14989;i:1;R:799;}s:22:"8:srf_paramdesc_widths";a:2:{i:0;R:14989;i:1;R:799;}s:23:"8:srf_paramdesc_heights";a:2:{i:0;R:14989;i:1;R:799;}s:28:"8:srf_paramdesc_autocaptions";a:2:{i:0;R:14989;i:1;R:799;}s:30:"8:srf_paramdesc_fileextensions";a:2:{i:0;R:14989;i:1;R:799;}s:31:"8:srf_paramdesc_captionproperty";a:2:{i:0;R:14989;i:1;R:799;}s:29:"8:srf_paramdesc_imageproperty";a:2:{i:0;R:14989;i:1;R:799;}s:29:"8:srf_paramdesc_galleryformat";a:2:{i:0;R:14989;i:1;R:799;}s:26:"8:srf_printername_tagcloud";a:2:{i:0;R:14989;i:1;R:799;}s:30:"8:srf_paramdesc_includesubject";a:2:{i:0;R:14989;i:1;R:799;}s:24:"8:srf_paramdesc_increase";a:2:{i:0;R:14989;i:1;R:799;}s:24:"8:srf_paramdesc_tagorder";a:2:{i:0;R:14989;i:1;R:799;}s:24:"8:srf_paramdesc_mincount";a:2:{i:0;R:14989;i:1;R:799;}s:23:"8:srf_paramdesc_minsize";a:2:{i:0;R:14989;i:1;R:799;}s:23:"8:srf_paramdesc_maxsize";a:2:{i:0;R:14989;i:1;R:799;}s:23:"8:srf_paramdesc_maxtags";a:2:{i:0;R:14989;i:1;R:799;}s:27:"8:srf_printername_valuerank";a:2:{i:0;R:14989;i:1;R:799;}s:23:"8:srf_printername_array";a:2:{i:0;R:14989;i:1;R:799;}s:25:"8:srf_paramdesc_pagetitle";a:2:{i:0;R:14989;i:1;R:799;}s:24:"8:srf_paramdesc_hidegaps";a:2:{i:0;R:14989;i:1;R:799;}s:25:"8:srf_paramdesc_arrayname";a:2:{i:0;R:14989;i:1;R:799;}s:23:"8:srf_paramdesc_propsep";a:2:{i:0;R:14989;i:1;R:799;}s:23:"8:srf_paramdesc_manysep";a:2:{i:0;R:14989;i:1;R:799;}s:25:"8:srf_paramdesc_recordsep";a:2:{i:0;R:14989;i:1;R:799;}s:25:"8:srf_paramdesc_headersep";a:2:{i:0;R:14989;i:1;R:799;}s:22:"8:srf_printername_hash";a:2:{i:0;R:14989;i:1;R:799;}s:24:"8:srf_paramdesc_hashname";a:2:{i:0;R:14989;i:1;R:799;}s:23:"8:srf-printername-graph";a:2:{i:0;R:14989;i:1;R:799;}s:30:"8:srf-paramdesc-graph-relation";a:2:{i:0;R:14989;i:1;R:799;}s:30:"8:srf-paramdesc-graph-nameprop";a:2:{i:0;R:14989;i:1;R:799;}s:31:"8:srf-paramdesc-graph-nodeshape";a:2:{i:0;R:14989;i:1;R:799;}s:25:"8:srf_paramdesc_graphname";a:2:{i:0;R:14989;i:1;R:799;}s:25:"8:srf_paramdesc_graphsize";a:2:{i:0;R:14989;i:1;R:799;}s:27:"8:srf_paramdesc_graphlegend";a:2:{i:0;R:14989;i:1;R:799;}s:26:"8:srf_paramdesc_graphlabel";a:2:{i:0;R:14989;i:1;R:799;}s:23:"8:srf_paramdesc_rankdir";a:2:{i:0;R:14989;i:1;R:799;}s:25:"8:srf_paramdesc_graphlink";a:2:{i:0;R:14989;i:1;R:799;}s:26:"8:srf_paramdesc_graphcolor";a:2:{i:0;R:14989;i:1;R:799;}s:25:"8:srf-paramdesc-graph-wwl";a:2:{i:0;R:14989;i:1;R:799;}s:21:"8:srf-warn-empy-chart";a:2:{i:0;R:14989;i:1;R:799;}s:28:"8:srf_printername_datatables";a:2:{i:0;R:14989;i:1;R:799;}s:24:"8:srf-paramdesc-rowindex";a:2:{i:0;R:14989;i:1;R:799;}s:29:"8:srf-paramdesc-displaylength";a:2:{i:0;R:14989;i:1;R:799;}s:22:"8:srf_printername_tree";a:2:{i:0;R:14989;i:1;R:799;}s:24:"8:srf_printername_ultree";a:2:{i:0;R:14989;i:1;R:799;}s:24:"8:srf_printername_oltree";a:2:{i:0;R:14989;i:1;R:799;}s:18:"8:srf-noparentprop";a:2:{i:0;R:14989;i:1;R:799;}s:22:"8:srf-paramdesc-parent";a:2:{i:0;R:14989;i:1;R:799;}s:16:"8:semanticsignup";a:2:{i:0;s:18:"ext-semanticsignup";i:1;R:799;}s:10:"8:ses-desc";a:2:{i:0;R:15117;i:1;R:799;}s:16:"8:ses-nousername";a:2:{i:0;R:15117;i:1;R:799;}s:16:"8:ses-nopwdmatch";a:2:{i:0;R:15117;i:1;R:799;}s:16:"8:ses-norealname";a:2:{i:0;R:15117;i:1;R:799;}s:16:"8:ses-userexists";a:2:{i:0;R:15117;i:1;R:799;}s:17:"8:ses-emailfailed";a:2:{i:0;R:15117;i:1;R:799;}s:21:"8:ses-createforbidden";a:2:{i:0;R:15117;i:1;R:799;}s:17:"8:ses-throttlehit";a:2:{i:0;R:15117;i:1;R:799;}s:20:"8:semantictasks-desc";a:2:{i:0;s:17:"ext-semantictasks";i:1;R:799;}s:23:"8:semantictasks-newtask";a:2:{i:0;R:15127;i:1;R:799;}s:28:"8:semantictasks-taskassigned";a:2:{i:0;R:15127;i:1;R:799;}s:27:"8:semantictasks-taskupdated";a:2:{i:0;R:15127;i:1;R:799;}s:26:"8:semantictasks-taskclosed";a:2:{i:0;R:15127;i:1;R:799;}s:27:"8:semantictasks-newtask-msg";a:2:{i:0;R:15127;i:1;R:799;}s:30:"8:semantictasks-taskclosed-msg";a:2:{i:0;R:15127;i:1;R:799;}s:34:"8:semantictasks-assignedtoyou-msg2";a:2:{i:0;R:15127;i:1;R:799;}s:33:"8:semantictasks-updatedtoyou-msg2";a:2:{i:0;R:15127;i:1;R:799;}s:24:"8:semantictasks-reminder";a:2:{i:0;R:15127;i:1;R:799;}s:33:"8:semantictasks-reminder-message2";a:2:{i:0;R:15127;i:1;R:799;}s:28:"8:semantictasks-text-message";a:2:{i:0;R:15127;i:1;R:799;}s:28:"8:semantictasks-diff-message";a:2:{i:0;R:15127;i:1;R:799;}s:20:"8:semantictitle-desc";a:2:{i:0;s:17:"ext-semantictitle";i:1;R:799;}s:11:"8:suop-desc";a:2:{i:0;s:25:"ext-semanticupdateonpurge";i:1;R:799;}s:24:"8:semanticwatchlist-desc";a:2:{i:0;s:21:"ext-semanticwatchlist";i:1;R:799;}s:21:"8:right-semanticwatch";a:2:{i:0;R:15145;i:1;R:799;}s:27:"8:right-semanticwatchgroups";a:2:{i:0;R:15145;i:1;R:799;}s:27:"8:special-semanticwatchlist";a:2:{i:0;R:15145;i:1;R:799;}s:29:"8:special-watchlistconditions";a:2:{i:0;R:15145;i:1;R:799;}s:17:"8:group-swladmins";a:2:{i:0;R:15145;i:1;R:799;}s:24:"8:group-swladmins-member";a:2:{i:0;R:15145;i:1;R:799;}s:21:"8:grouppage-swladmins";a:2:{i:0;R:15145;i:1;R:799;}s:21:"8:group-swladmins.css";a:2:{i:0;R:15145;i:1;R:799;}s:20:"8:group-swladmins.js";a:2:{i:0;R:15145;i:1;R:799;}s:16:"8:swl-group-name";a:2:{i:0;R:15145;i:1;R:799;}s:22:"8:swl-group-properties";a:2:{i:0;R:15145;i:1;R:799;}s:27:"8:swl-group-remove-property";a:2:{i:0;R:15145;i:1;R:799;}s:24:"8:swl-group-add-property";a:2:{i:0;R:15145;i:1;R:799;}s:26:"8:swl-group-page-selection";a:2:{i:0;R:15145;i:1;R:799;}s:16:"8:swl-group-save";a:2:{i:0;R:15145;i:1;R:799;}s:17:"8:swl-group-saved";a:2:{i:0;R:15145;i:1;R:799;}s:18:"8:swl-group-saving";a:2:{i:0;R:15145;i:1;R:799;}s:18:"8:swl-group-delete";a:2:{i:0;R:15145;i:1;R:799;}s:20:"8:swl-group-category";a:2:{i:0;R:15145;i:1;R:799;}s:21:"8:swl-group-namespace";a:2:{i:0;R:15145;i:1;R:799;}s:19:"8:swl-group-concept";a:2:{i:0;R:15145;i:1;R:799;}s:25:"8:swl-group-confirmdelete";a:2:{i:0;R:15145;i:1;R:799;}s:20:"8:swl-group-save-all";a:2:{i:0;R:15145;i:1;R:799;}s:25:"8:swl-group-add-new-group";a:2:{i:0;R:15145;i:1;R:799;}s:21:"8:swl-group-add-group";a:2:{i:0;R:15145;i:1;R:799;}s:24:"8:swl-watchlist-position";a:2:{i:0;R:15145;i:1;R:799;}s:26:"8:swl-watchlist-insertions";a:2:{i:0;R:15145;i:1;R:799;}s:25:"8:swl-watchlist-deletions";a:2:{i:0;R:15145;i:1;R:799;}s:28:"8:swl-watchlist-pagincontrol";a:2:{i:0;R:15145;i:1;R:799;}s:22:"8:swl-watchlist-firstn";a:2:{i:0;R:15145;i:1;R:799;}s:28:"8:swl-watchlist-firstn-title";a:2:{i:0;R:15145;i:1;R:799;}s:24:"8:swl-watchlist-no-items";a:2:{i:0;R:15145;i:1;R:799;}s:30:"8:swl-watchlist-can-mod-groups";a:2:{i:0;R:15145;i:1;R:799;}s:29:"8:swl-watchlist-can-mod-prefs";a:2:{i:0;R:15145;i:1;R:799;}s:25:"8:swl-watchlist-no-groups";a:2:{i:0;R:15145;i:1;R:799;}s:24:"8:swl-email-propschanged";a:2:{i:0;R:15145;i:1;R:799;}s:29:"8:swl-email-propschanged-long";a:2:{i:0;R:15145;i:1;R:799;}s:19:"8:swl-email-changes";a:2:{i:0;R:15145;i:1;R:799;}s:11:"8:prefs-swl";a:2:{i:0;R:15145;i:1;R:799;}s:16:"8:prefs-swlgroup";a:2:{i:0;R:15145;i:1;R:799;}s:17:"8:prefs-swlglobal";a:2:{i:0;R:15145;i:1;R:799;}s:23:"8:swl-prefs-emailnofity";a:2:{i:0;R:15145;i:1;R:799;}s:28:"8:swl-prefs-watchlisttoplink";a:2:{i:0;R:15145;i:1;R:799;}s:26:"8:swl-prefs-category-label";a:2:{i:0;R:15145;i:1;R:799;}s:27:"8:swl-prefs-namespace-label";a:2:{i:0;R:15145;i:1;R:799;}s:25:"8:swl-prefs-concept-label";a:2:{i:0;R:15145;i:1;R:799;}s:29:"8:swl-err-userid-xor-groupids";a:2:{i:0;R:15145;i:1;R:799;}s:12:"8:browsewiki";a:2:{i:0;s:22:"ext-semanticwebbrowser";i:1;R:799;}s:10:"8:swb_desc";a:2:{i:0;R:15194;i:1;R:799;}s:20:"8:swb_browse_article";a:2:{i:0;R:15194;i:1;R:799;}s:15:"8:swb_browse_go";a:2:{i:0;R:15194;i:1;R:799;}s:26:"8:swb_browse_show_incoming";a:2:{i:0;R:15194;i:1;R:799;}s:26:"8:swb_browse_hide_incoming";a:2:{i:0;R:15194;i:1;R:799;}s:24:"8:swb_browse_no_outgoing";a:2:{i:0;R:15194;i:1;R:799;}s:24:"8:swb_browse_no_incoming";a:2:{i:0;R:15194;i:1;R:799;}s:28:"8:swb_inverse_label_property";a:2:{i:0;R:15194;i:1;R:799;}s:27:"8:swb_inverse_label_default";a:2:{i:0;R:15194;i:1;R:799;}s:17:"8:swb_browse_more";a:2:{i:0;R:15194;i:1;R:799;}s:16:"8:sendmailtowiki";a:2:{i:0;s:18:"ext-sendmailtowiki";i:1;R:799;}s:21:"8:sendmailtowiki-desc";a:2:{i:0;R:15206;i:1;R:799;}s:22:"8:prefs-sendmailtowiki";a:2:{i:0;R:15206;i:1;R:799;}s:24:"8:sendmailtowiki-inemail";a:2:{i:0;R:15206;i:1;R:799;}s:22:"8:sendmailtowiki-inpin";a:2:{i:0;R:15206;i:1;R:799;}s:31:"8:prefs-help-sendmailtowiki_pin";a:2:{i:0;R:15206;i:1;R:799;}s:30:"8:sendmailtowiki-err-pinlength";a:2:{i:0;R:15206;i:1;R:799;}s:32:"8:sendmailtowiki-err-wrongprefix";a:2:{i:0;R:15206;i:1;R:799;}s:35:"8:sendmailtowiki-err-invalidaccount";a:2:{i:0;R:15206;i:1;R:799;}s:34:"8:sendmailtowiki-err-invalidsender";a:2:{i:0;R:15206;i:1;R:799;}s:31:"8:sendmailtowiki-err-invalidpin";a:2:{i:0;R:15206;i:1;R:799;}s:30:"8:sendmailtowiki-err-onlyplain";a:2:{i:0;R:15206;i:1;R:799;}s:18:"8:sharedcssjs-desc";a:2:{i:0;s:15:"ext-sharedcssjs";i:1;R:799;}s:19:"8:sharedcssjs-error";a:2:{i:0;R:15219;i:1;R:799;}s:12:"8:global.css";a:2:{i:0;R:15219;i:1;R:799;}s:11:"8:global.js";a:2:{i:0;R:15219;i:1;R:799;}s:18:"8:shareduserrights";a:2:{i:0;s:20:"ext-shareduserrights";i:1;R:799;}s:16:"8:gblrights-desc";a:2:{i:0;R:15224;i:1;R:799;}s:19:"8:gblrights-logpage";a:2:{i:0;R:15224;i:1;R:799;}s:20:"8:gblrights-pagetext";a:2:{i:0;R:15224;i:1;R:799;}s:24:"8:gblrights-rights-entry";a:2:{i:0;R:15224;i:1;R:799;}s:25:"8:right-userrights-shared";a:2:{i:0;R:15224;i:1;R:799;}s:15:"8:shoutbox-desc";a:2:{i:0;s:12:"ext-shoutbox";i:1;R:799;}s:25:"8:shoutbox-missing-params";a:2:{i:0;R:15231;i:1;R:799;}s:21:"8:shoutbox-bad-params";a:2:{i:0;R:15231;i:1;R:799;}s:34:"8:shoutbox-unparsable-param-string";a:2:{i:0;R:15231;i:1;R:799;}s:17:"8:shoutbox-bad-id";a:2:{i:0;R:15231;i:1;R:799;}s:24:"8:shoutbox-illegal-width";a:2:{i:0;R:15231;i:1;R:799;}s:25:"8:shoutbox-illegal-height";a:2:{i:0;R:15231;i:1;R:799;}s:14:"8:shoutbox-url";a:2:{i:0;R:15231;i:1;R:799;}s:23:"8:shoutbox-url-with-css";a:2:{i:0;R:15231;i:1;R:799;}s:17:"8:showprocesslist";a:2:{i:0;s:19:"ext-showprocesslist";i:1;R:799;}s:22:"8:showprocesslist-desc";a:2:{i:0;R:15241;i:1;R:799;}s:20:"8:showprocesslist-id";a:2:{i:0;R:15241;i:1;R:799;}s:22:"8:showprocesslist-user";a:2:{i:0;R:15241;i:1;R:799;}s:22:"8:showprocesslist-host";a:2:{i:0;R:15241;i:1;R:799;}s:20:"8:showprocesslist-db";a:2:{i:0;R:15241;i:1;R:799;}s:25:"8:showprocesslist-command";a:2:{i:0;R:15241;i:1;R:799;}s:22:"8:showprocesslist-time";a:2:{i:0;R:15241;i:1;R:799;}s:23:"8:showprocesslist-state";a:2:{i:0;R:15241;i:1;R:799;}s:22:"8:showprocesslist-info";a:2:{i:0;R:15241;i:1;R:799;}s:23:"8:sidebardonatebox-desc";a:2:{i:0;s:20:"ext-sidebardonatebox";i:1;R:799;}s:8:"8:donate";a:2:{i:0;R:15252;i:1;R:799;}s:18:"8:sidebarmenu-desc";a:2:{i:0;s:15:"ext-sidebarmenu";i:1;R:799;}s:32:"8:sidebarmenu-parser-input-error";a:2:{i:0;R:15255;i:1;R:799;}s:33:"8:sidebarmenu-parser-syntax-error";a:2:{i:0;R:15255;i:1;R:799;}s:27:"8:sidebarmenu-js-init-error";a:2:{i:0;R:15255;i:1;R:799;}s:43:"8:sidebarmenu-parser-menuitem-expanded-null";a:2:{i:0;R:15255;i:1;R:799;}s:18:"8:sidebarmenu-edit";a:2:{i:0;R:15255;i:1;R:799;}s:18:"8:signaturelogpage";a:2:{i:0;s:16:"ext-signdocument";i:1;R:799;}s:16:"8:signature-desc";a:2:{i:0;R:15262;i:1;R:799;}s:22:"8:signaturelogpagetext";a:2:{i:0;R:15262;i:1;R:799;}s:19:"8:signaturelogentry";a:2:{i:0;R:15262;i:1;R:799;}s:16:"8:right-sigadmin";a:2:{i:0;R:15262;i:1;R:799;}s:26:"8:right-createsigndocument";a:2:{i:0;R:15262;i:1;R:799;}s:14:"8:signdocument";a:2:{i:0;s:23:"ext-signdocumentspecial";i:1;R:799;}s:20:"8:sign-nodocselected";a:2:{i:0;R:15269;i:1;R:799;}s:16:"8:sign-selectdoc";a:2:{i:0;R:15269;i:1;R:799;}s:16:"8:sign-docheader";a:2:{i:0;R:15269;i:1;R:799;}s:22:"8:sign-error-nosuchdoc";a:2:{i:0;R:15269;i:1;R:799;}s:15:"8:sign-realname";a:2:{i:0;R:15269;i:1;R:799;}s:14:"8:sign-address";a:2:{i:0;R:15269;i:1;R:799;}s:11:"8:sign-city";a:2:{i:0;R:15269;i:1;R:799;}s:12:"8:sign-state";a:2:{i:0;R:15269;i:1;R:799;}s:10:"8:sign-zip";a:2:{i:0;R:15269;i:1;R:799;}s:14:"8:sign-country";a:2:{i:0;R:15269;i:1;R:799;}s:12:"8:sign-phone";a:2:{i:0;R:15269;i:1;R:799;}s:11:"8:sign-bday";a:2:{i:0;R:15269;i:1;R:799;}s:12:"8:sign-email";a:2:{i:0;R:15269;i:1;R:799;}s:20:"8:sign-indicates-req";a:2:{i:0;R:15269;i:1;R:799;}s:16:"8:sign-hide-note";a:2:{i:0;R:15269;i:1;R:799;}s:21:"8:sign-list-anonymous";a:2:{i:0;R:15269;i:1;R:799;}s:23:"8:sign-list-hideaddress";a:2:{i:0;R:15269;i:1;R:799;}s:26:"8:sign-list-hideextaddress";a:2:{i:0;R:15269;i:1;R:799;}s:21:"8:sign-list-hidephone";a:2:{i:0;R:15269;i:1;R:799;}s:20:"8:sign-list-hidebday";a:2:{i:0;R:15269;i:1;R:799;}s:21:"8:sign-list-hideemail";a:2:{i:0;R:15269;i:1;R:799;}s:13:"8:sign-submit";a:2:{i:0;R:15269;i:1;R:799;}s:18:"8:sign-information";a:2:{i:0;R:15269;i:1;R:799;}s:13:"8:sig-success";a:2:{i:0;R:15269;i:1;R:799;}s:24:"8:sign-view-selectfields";a:2:{i:0;R:15269;i:1;R:799;}s:24:"8:sign-viewfield-entryid";a:2:{i:0;R:15269;i:1;R:799;}s:26:"8:sign-viewfield-timestamp";a:2:{i:0;R:15269;i:1;R:799;}s:25:"8:sign-viewfield-realname";a:2:{i:0;R:15269;i:1;R:799;}s:24:"8:sign-viewfield-address";a:2:{i:0;R:15269;i:1;R:799;}s:21:"8:sign-viewfield-city";a:2:{i:0;R:15269;i:1;R:799;}s:22:"8:sign-viewfield-state";a:2:{i:0;R:15269;i:1;R:799;}s:24:"8:sign-viewfield-country";a:2:{i:0;R:15269;i:1;R:799;}s:20:"8:sign-viewfield-zip";a:2:{i:0;R:15269;i:1;R:799;}s:19:"8:sign-viewfield-ip";a:2:{i:0;R:15269;i:1;R:799;}s:22:"8:sign-viewfield-agent";a:2:{i:0;R:15269;i:1;R:799;}s:22:"8:sign-viewfield-phone";a:2:{i:0;R:15269;i:1;R:799;}s:22:"8:sign-viewfield-email";a:2:{i:0;R:15269;i:1;R:799;}s:20:"8:sign-viewfield-age";a:2:{i:0;R:15269;i:1;R:799;}s:24:"8:sign-viewfield-options";a:2:{i:0;R:15269;i:1;R:799;}s:21:"8:sign-viewsigs-intro";a:2:{i:0;R:15269;i:1;R:799;}s:29:"8:sign-sigadmin-currentlyopen";a:2:{i:0;R:15269;i:1;R:799;}s:21:"8:sign-sigadmin-close";a:2:{i:0;R:15269;i:1;R:799;}s:31:"8:sign-sigadmin-currentlyclosed";a:2:{i:0;R:15269;i:1;R:799;}s:20:"8:sign-sigadmin-open";a:2:{i:0;R:15269;i:1;R:799;}s:17:"8:sign-signatures";a:2:{i:0;R:15269;i:1;R:799;}s:28:"8:sign-sigadmin-closesuccess";a:2:{i:0;R:15269;i:1;R:799;}s:27:"8:sign-sigadmin-opensuccess";a:2:{i:0;R:15269;i:1;R:799;}s:21:"8:sign-viewsignatures";a:2:{i:0;R:15269;i:1;R:799;}s:13:"8:sign-closed";a:2:{i:0;R:15269;i:1;R:799;}s:19:"8:sign-error-closed";a:2:{i:0;R:15269;i:1;R:799;}s:15:"8:sig-anonymous";a:2:{i:0;R:15269;i:1;R:799;}s:13:"8:sig-private";a:2:{i:0;R:15269;i:1;R:799;}s:17:"8:sign-sigdetails";a:2:{i:0;R:15269;i:1;R:799;}s:14:"8:sign-emailto";a:2:{i:0;R:15269;i:1;R:799;}s:14:"8:sign-iptools";a:2:{i:0;R:15269;i:1;R:799;}s:25:"8:sign-viewfield-stricken";a:2:{i:0;R:15269;i:1;R:799;}s:27:"8:sign-viewfield-reviewedby";a:2:{i:0;R:15269;i:1;R:799;}s:30:"8:sign-viewfield-reviewcomment";a:2:{i:0;R:15269;i:1;R:799;}s:25:"8:sign-detail-uniquequery";a:2:{i:0;R:15269;i:1;R:799;}s:29:"8:sign-detail-uniquequery-run";a:2:{i:0;R:15269;i:1;R:799;}s:20:"8:sign-detail-strike";a:2:{i:0;R:15269;i:1;R:799;}s:16:"8:sign-reviewsig";a:2:{i:0;R:15269;i:1;R:799;}s:21:"8:sign-review-comment";a:2:{i:0;R:15269;i:1;R:799;}s:19:"8:sign-submitreview";a:2:{i:0;R:15269;i:1;R:799;}s:30:"8:sign-uniquequery-similarname";a:2:{i:0;R:15269;i:1;R:799;}s:33:"8:sign-uniquequery-similaraddress";a:2:{i:0;R:15269;i:1;R:799;}s:31:"8:sign-uniquequery-similarphone";a:2:{i:0;R:15269;i:1;R:799;}s:31:"8:sign-uniquequery-similaremail";a:2:{i:0;R:15269;i:1;R:799;}s:27:"8:sign-uniquequery-1signed2";a:2:{i:0;R:15269;i:1;R:799;}s:20:"8:createsigndocument";a:2:{i:0;s:29:"ext-signdocumentspecialcreate";i:1;R:799;}s:20:"8:createsigndoc-head";a:2:{i:0;R:15340;i:1;R:799;}s:24:"8:createsigndoc-pagename";a:2:{i:0;R:15340;i:1;R:799;}s:28:"8:createsigndoc-allowedgroup";a:2:{i:0;R:15340;i:1;R:799;}s:21:"8:createsigndoc-email";a:2:{i:0;R:15340;i:1;R:799;}s:23:"8:createsigndoc-address";a:2:{i:0;R:15340;i:1;R:799;}s:26:"8:createsigndoc-extaddress";a:2:{i:0;R:15340;i:1;R:799;}s:21:"8:createsigndoc-phone";a:2:{i:0;R:15340;i:1;R:799;}s:20:"8:createsigndoc-bday";a:2:{i:0;R:15340;i:1;R:799;}s:22:"8:createsigndoc-minage";a:2:{i:0;R:15340;i:1;R:799;}s:25:"8:createsigndoc-introtext";a:2:{i:0;R:15340;i:1;R:799;}s:22:"8:createsigndoc-hidden";a:2:{i:0;R:15340;i:1;R:799;}s:24:"8:createsigndoc-optional";a:2:{i:0;R:15340;i:1;R:799;}s:22:"8:createsigndoc-create";a:2:{i:0;R:15340;i:1;R:799;}s:29:"8:createsigndoc-error-generic";a:2:{i:0;R:15340;i:1;R:799;}s:33:"8:createsigndoc-error-pagenoexist";a:2:{i:0;R:15340;i:1;R:799;}s:23:"8:createsigndoc-success";a:2:{i:0;R:15340;i:1;R:799;}s:36:"8:createsigndoc-error-alreadycreated";a:2:{i:0;R:15340;i:1;R:799;}s:12:"8:usersignup";a:2:{i:0;s:13:"ext-signupapi";i:1;R:799;}s:16:"8:signupapi-desc";a:2:{i:0;R:15359;i:1;R:799;}s:14:"8:signupapi-ok";a:2:{i:0;R:15359;i:1;R:799;}s:18:"8:signupapi-noname";a:2:{i:0;R:15359;i:1;R:799;}s:22:"8:signupapi-userexists";a:2:{i:0;R:15359;i:1;R:799;}s:25:"8:signupapi-enterpassword";a:2:{i:0;R:15359;i:1;R:799;}s:28:"8:signupapi-passwordtooshort";a:2:{i:0;R:15359;i:1;R:799;}s:16:"8:signupapi-weak";a:2:{i:0;R:15359;i:1;R:799;}s:18:"8:signupapi-medium";a:2:{i:0;R:15359;i:1;R:799;}s:18:"8:signupapi-strong";a:2:{i:0;R:15359;i:1;R:799;}s:21:"8:signupapi-badretype";a:2:{i:0;R:15359;i:1;R:799;}s:26:"8:signupapi-passwordsmatch";a:2:{i:0;R:15359;i:1;R:799;}s:31:"8:signupapi-invalidemailaddress";a:2:{i:0;R:15359;i:1;R:799;}s:27:"8:signupapi-invalidusername";a:2:{i:0;R:15359;i:1;R:799;}s:17:"8:simplefarm-desc";a:2:{i:0;s:14:"ext-simplefarm";i:1;R:799;}s:10:"8:security";a:2:{i:0;s:18:"ext-simplesecurity";i:1;R:799;}s:15:"8:security-desc";a:2:{i:0;R:15376;i:1;R:799;}s:18:"8:security-logpage";a:2:{i:0;R:15376;i:1;R:799;}s:22:"8:security-logpagetext";a:2:{i:0;R:15376;i:1;R:799;}s:19:"8:security-logentry";a:2:{i:0;R:15376;i:1;R:799;}s:16:"8:badaccess-read";a:2:{i:0;R:15376;i:1;R:799;}s:15:"8:security-info";a:2:{i:0;R:15376;i:1;R:799;}s:22:"8:security-info-toggle";a:2:{i:0;R:15376;i:1;R:799;}s:23:"8:security-inforestrict";a:2:{i:0;R:15376;i:1;R:799;}s:18:"8:security-desc-ls";a:2:{i:0;R:15376;i:1;R:799;}s:18:"8:security-desc-pr";a:2:{i:0;R:15376;i:1;R:799;}s:21:"8:security-infosysops";a:2:{i:0;R:15376;i:1;R:799;}s:21:"8:security-manygroups";a:2:{i:0;R:15376;i:1;R:799;}s:18:"8:security-unchain";a:2:{i:0;R:15376;i:1;R:799;}s:24:"8:security-type-category";a:2:{i:0;R:15376;i:1;R:799;}s:25:"8:security-type-namespace";a:2:{i:0;R:15376;i:1;R:799;}s:26:"8:security-restricttogroup";a:2:{i:0;R:15376;i:1;R:799;}s:18:"8:restriction-read";a:2:{i:0;R:15376;i:1;R:799;}s:23:"8:skinpernamespace-desc";a:2:{i:0;s:20:"ext-skinpernamespace";i:1;R:799;}s:20:"8:slimboxthumbs-desc";a:2:{i:0;s:17:"ext-slimboxthumbs";i:1;R:799;}s:16:"8:slippymap_desc";a:2:{i:0;s:13:"ext-slippymap";i:1;R:799;}s:19:"8:slippymap_extname";a:2:{i:0;R:15399;i:1;R:799;}s:19:"8:slippymap_tagname";a:2:{i:0;R:15399;i:1;R:799;}s:17:"8:slippymap_error";a:2:{i:0;R:15399;i:1;R:799;}s:18:"8:slippymap_errors";a:2:{i:0;R:15399;i:1;R:799;}s:35:"8:slippymap_error_tag_content_given";a:2:{i:0;R:15399;i:1;R:799;}s:35:"8:slippymap_error_missing_arguments";a:2:{i:0;R:15399;i:1;R:799;}s:39:"8:slippymap_error_missing_attribute_lat";a:2:{i:0;R:15399;i:1;R:799;}s:39:"8:slippymap_error_missing_attribute_lon";a:2:{i:0;R:15399;i:1;R:799;}s:40:"8:slippymap_error_missing_attribute_zoom";a:2:{i:0;R:15399;i:1;R:799;}s:49:"8:slippymap_error_invalid_attribute_lat_value_nan";a:2:{i:0;R:15399;i:1;R:799;}s:49:"8:slippymap_error_invalid_attribute_lon_value_nan";a:2:{i:0;R:15399;i:1;R:799;}s:50:"8:slippymap_error_invalid_attribute_zoom_value_nan";a:2:{i:0;R:15399;i:1;R:799;}s:51:"8:slippymap_error_invalid_attribute_width_value_nan";a:2:{i:0;R:15399;i:1;R:799;}s:52:"8:slippymap_error_invalid_attribute_height_value_nan";a:2:{i:0;R:15399;i:1;R:799;}s:57:"8:slippymap_error_invalid_attribute_mode_value_not_a_mode";a:2:{i:0;R:15399;i:1;R:799;}s:59:"8:slippymap_error_invalid_attribute_layer_value_not_a_layer";a:2:{i:0;R:15399;i:1;R:799;}s:61:"8:slippymap_error_invalid_attribute_marker_value_not_a_marker";a:2:{i:0;R:15399;i:1;R:799;}s:35:"8:slippymap_error_unknown_attribute";a:2:{i:0;R:15399;i:1;R:799;}s:58:"8:slippymap_error_invalid_attribute_lat_value_out_of_range";a:2:{i:0;R:15399;i:1;R:799;}s:58:"8:slippymap_error_invalid_attribute_lon_value_out_of_range";a:2:{i:0;R:15399;i:1;R:799;}s:59:"8:slippymap_error_invalid_attribute_zoom_value_out_of_range";a:2:{i:0;R:15399;i:1;R:799;}s:60:"8:slippymap_error_invalid_attribute_width_value_out_of_range";a:2:{i:0;R:15399;i:1;R:799;}s:61:"8:slippymap_error_invalid_attribute_height_value_out_of_range";a:2:{i:0;R:15399;i:1;R:799;}s:16:"8:slippymap_code";a:2:{i:0;R:15399;i:1;R:799;}s:23:"8:slippymap_button_code";a:2:{i:0;R:15399;i:1;R:799;}s:21:"8:slippymap_resetview";a:2:{i:0;R:15399;i:1;R:799;}s:27:"8:slippymap_clicktoactivate";a:2:{i:0;R:15399;i:1;R:799;}s:15:"8:smoothgallery";a:2:{i:0;s:17:"ext-smoothgallery";i:1;R:799;}s:20:"8:smoothgallery-desc";a:2:{i:0;R:15428;i:1;R:799;}s:21:"8:smoothgallery-title";a:2:{i:0;R:15428;i:1;R:799;}s:34:"8:smoothgallery-smoothgallerytitle";a:2:{i:0;R:15428;i:1;R:799;}s:24:"8:smoothgallery-pagetext";a:2:{i:0;R:15428;i:1;R:799;}s:21:"8:smoothgallery-error";a:2:{i:0;R:15428;i:1;R:799;}s:33:"8:smoothgallery-gallery-not-found";a:2:{i:0;R:15428;i:1;R:799;}s:25:"8:smoothgallery-not-found";a:2:{i:0;R:15428;i:1;R:799;}s:25:"8:smoothgallery-no-images";a:2:{i:0;R:15428;i:1;R:799;}s:30:"8:smoothgallery-invalid-images";a:2:{i:0;R:15428;i:1;R:799;}s:32:"8:smoothgallery-unexpected-error";a:2:{i:0;R:15428;i:1;R:799;}s:35:"8:smoothgallery-javascript-disabled";a:2:{i:0;R:15428;i:1;R:799;}s:16:"8:snmpquery-desc";a:2:{i:0;s:13:"ext-snmpquery";i:1;R:799;}s:16:"8:solrstore-desc";a:2:{i:0;s:13:"ext-solrstore";i:1;R:799;}s:12:"8:solrsearch";a:2:{i:0;R:15443;i:1;R:799;}s:18:"8:solrsearch-title";a:2:{i:0;R:15443;i:1;R:799;}s:17:"8:solrstore-error";a:2:{i:0;R:15443;i:1;R:799;}s:27:"8:solrstore-searchfieldsets";a:2:{i:0;R:15443;i:1;R:799;}s:34:"8:solrstore-searchfieldsets-select";a:2:{i:0;R:15443;i:1;R:799;}s:33:"8:solrstore-searchfieldsets-title";a:2:{i:0;R:15443;i:1;R:799;}s:26:"8:soundmanager2button-desc";a:2:{i:0;s:23:"ext-soundmanager2button";i:1;R:799;}s:26:"8:soundmanager2button-play";a:2:{i:0;R:15451;i:1;R:799;}s:14:"8:spamdifftool";a:2:{i:0;s:16:"ext-spamdifftool";i:1;R:799;}s:19:"8:spamdifftool-desc";a:2:{i:0;R:15454;i:1;R:799;}s:23:"8:spamdifftool_cantedit";a:2:{i:0;R:15454;i:1;R:799;}s:23:"8:spamdifftool-no-title";a:2:{i:0;R:15454;i:1;R:799;}s:21:"8:spamdifftool_notext";a:2:{i:0;R:15454;i:1;R:799;}s:22:"8:spamdifftool_confirm";a:2:{i:0;R:15454;i:1;R:799;}s:22:"8:spamdifftool_summary";a:2:{i:0;R:15454;i:1;R:799;}s:28:"8:spamdifftool_urls_detected";a:2:{i:0;R:15454;i:1;R:799;}s:31:"8:spamdifftool_no_urls_detected";a:2:{i:0;R:15454;i:1;R:799;}s:29:"8:spamdifftool_spam_link_text";a:2:{i:0;R:15454;i:1;R:799;}s:28:"8:spamdifftool_option_domain";a:2:{i:0;R:15454;i:1;R:799;}s:31:"8:spamdifftool_option_subdomain";a:2:{i:0;R:15454;i:1;R:799;}s:31:"8:spamdifftool_option_directory";a:2:{i:0;R:15454;i:1;R:799;}s:26:"8:spamdifftool_option_none";a:2:{i:0;R:15454;i:1;R:799;}s:20:"8:spamdifftool_block";a:2:{i:0;R:15454;i:1;R:799;}s:28:"8:spamdifftool_submit_buttom";a:2:{i:0;R:15454;i:1;R:799;}s:11:"8:spamregex";a:2:{i:0;s:13:"ext-spamregex";i:1;R:799;}s:16:"8:spamregex-desc";a:2:{i:0;R:15471;i:1;R:799;}s:28:"8:spamregex-error-unblocking";a:2:{i:0;R:15471;i:1;R:799;}s:19:"8:spamregex-summary";a:2:{i:0;R:15471;i:1;R:799;}s:17:"8:spamregex-intro";a:2:{i:0;R:15471;i:1;R:799;}s:22:"8:spamregex-page-title";a:2:{i:0;R:15471;i:1;R:799;}s:29:"8:spamregex-currently-blocked";a:2:{i:0;R:15471;i:1;R:799;}s:16:"8:spamregex-move";a:2:{i:0;R:15471;i:1;R:799;}s:32:"8:spamregex-no-currently-blocked";a:2:{i:0;R:15471;i:1;R:799;}s:15:"8:spamregex-log";a:2:{i:0;R:15471;i:1;R:799;}s:24:"8:spamregex-page-title-1";a:2:{i:0;R:15471;i:1;R:799;}s:27:"8:spamregex-unblock-success";a:2:{i:0;R:15471;i:1;R:799;}s:27:"8:spamregex-unblock-message";a:2:{i:0;R:15471;i:1;R:799;}s:24:"8:spamregex-page-title-2";a:2:{i:0;R:15471;i:1;R:799;}s:25:"8:spamregex-block-success";a:2:{i:0;R:15471;i:1;R:799;}s:25:"8:spamregex-block-message";a:2:{i:0;R:15471;i:1;R:799;}s:21:"8:spamregex-warning-1";a:2:{i:0;R:15471;i:1;R:799;}s:19:"8:spamregex-error-1";a:2:{i:0;R:15471;i:1;R:799;}s:21:"8:spamregex-warning-2";a:2:{i:0;R:15471;i:1;R:799;}s:27:"8:spamregex-already-blocked";a:2:{i:0;R:15471;i:1;R:799;}s:24:"8:spamregex-phrase-block";a:2:{i:0;R:15471;i:1;R:799;}s:29:"8:spamregex-phrase-block-text";a:2:{i:0;R:15471;i:1;R:799;}s:32:"8:spamregex-phrase-block-summary";a:2:{i:0;R:15471;i:1;R:799;}s:24:"8:spamregex-block-submit";a:2:{i:0;R:15471;i:1;R:799;}s:16:"8:spamregex-text";a:2:{i:0;R:15471;i:1;R:799;}s:23:"8:spamregex-summary-log";a:2:{i:0;R:15471;i:1;R:799;}s:17:"8:right-spamregex";a:2:{i:0;R:15471;i:1;R:799;}s:12:"8:spark-desc";a:2:{i:0;s:9:"ext-spark";i:1;R:799;}s:21:"8:spark-missing-query";a:2:{i:0;R:15499;i:1;R:799;}s:17:"8:special404-desc";a:2:{i:0;s:14:"ext-special404";i:1;R:799;}s:10:"8:error404";a:2:{i:0;R:15502;i:1;R:799;}s:17:"8:special404-body";a:2:{i:0;R:15502;i:1;R:799;}s:10:"8:filelist";a:2:{i:0;s:19:"ext-specialfilelist";i:1;R:799;}s:15:"8:filelist-desc";a:2:{i:0;R:15506;i:1;R:799;}s:20:"8:filelist-show-list";a:2:{i:0;R:15506;i:1;R:799;}s:23:"8:filelist-show-gallery";a:2:{i:0;R:15506;i:1;R:799;}s:21:"8:filelist-image-desc";a:2:{i:0;R:15506;i:1;R:799;}s:18:"8:specialtalk-desc";a:2:{i:0;s:15:"ext-specialtalk";i:1;R:799;}s:19:"8:sphinxsearch-desc";a:2:{i:0;s:16:"ext-sphinxsearch";i:1;R:799;}s:15:"8:sphinxpowered";a:2:{i:0;R:15514;i:1;R:799;}s:20:"8:sphinxclientfailed";a:2:{i:0;R:15514;i:1;R:799;}s:20:"8:sphinxsearchfailed";a:2:{i:0;R:15514;i:1;R:799;}s:19:"8:sphinxpspellerror";a:2:{i:0;R:15514;i:1;R:799;}s:10:"8:sql2wiki";a:2:{i:0;s:12:"ext-sql2wiki";i:1;R:799;}s:15:"8:sql2wiki-desc";a:2:{i:0;R:15520;i:1;R:799;}s:18:"8:sql2wiki-special";a:2:{i:0;R:15520;i:1;R:799;}s:24:"8:sql2wiki-cache_refresh";a:2:{i:0;R:15520;i:1;R:799;}s:28:"8:sql2wiki-err-invalid_db_id";a:2:{i:0;R:15520;i:1;R:799;}s:27:"8:sql2wiki-err-invalid_type";a:2:{i:0;R:15520;i:1;R:799;}s:32:"8:sql2wiki-err-failed_to_connect";a:2:{i:0;R:15520;i:1;R:799;}s:32:"8:sql2wiki-err-failed_to_execute";a:2:{i:0;R:15520;i:1;R:799;}s:36:"8:sql2wiki-err-feature_not_supported";a:2:{i:0;R:15520;i:1;R:799;}s:12:"8:stalepages";a:2:{i:0;s:14:"ext-stalepages";i:1;R:799;}s:17:"8:stalepages-desc";a:2:{i:0;R:15530;i:1;R:799;}s:20:"8:stalepages-summary";a:2:{i:0;R:15530;i:1;R:799;}s:17:"8:stalkerlog-desc";a:2:{i:0;s:14:"ext-stalkerlog";i:1;R:799;}s:22:"8:stalkerlog-log-login";a:2:{i:0;R:15534;i:1;R:799;}s:23:"8:stalkerlog-log-logout";a:2:{i:0;R:15534;i:1;R:799;}s:21:"8:stalkerlog-log-type";a:2:{i:0;R:15534;i:1;R:799;}s:21:"8:stalkerlog-log-text";a:2:{i:0;R:15534;i:1;R:799;}s:18:"8:sternograph-desc";a:2:{i:0;s:15:"ext-sternograph";i:1;R:799;}s:19:"8:sternograph-empty";a:2:{i:0;R:15540;i:1;R:799;}s:20:"8:sternograph-nested";a:2:{i:0;R:15540;i:1;R:799;}s:24:"8:sternograph-speaker-is";a:2:{i:0;R:15540;i:1;R:799;}s:25:"8:sternograph-speaker-pre";a:2:{i:0;R:15540;i:1;R:799;}s:26:"8:sternograph-speaker-post";a:2:{i:0;R:15540;i:1;R:799;}s:23:"8:sternograph-block-pre";a:2:{i:0;R:15540;i:1;R:799;}s:24:"8:sternograph-block-post";a:2:{i:0;R:15540;i:1;R:799;}s:24:"8:sternograph-inline-pre";a:2:{i:0;R:15540;i:1;R:799;}s:25:"8:sternograph-inline-post";a:2:{i:0;R:15540;i:1;R:799;}s:25:"8:sternograph-context-pre";a:2:{i:0;R:15540;i:1;R:799;}s:26:"8:sternograph-context-post";a:2:{i:0;R:15540;i:1;R:799;}s:18:"8:stockcharts-desc";a:2:{i:0;s:15:"ext-stockcharts";i:1;R:799;}s:27:"8:stockcharts-missingticker";a:2:{i:0;R:15553;i:1;R:799;}s:17:"8:storyboard-name";a:2:{i:0;s:14:"ext-storyboard";i:1;R:799;}s:17:"8:storyboard-desc";a:2:{i:0;R:15556;i:1;R:799;}s:19:"8:right-storyreview";a:2:{i:0;R:15556;i:1;R:799;}s:27:"8:storyboard-anerroroccured";a:2:{i:0;R:15556;i:1;R:799;}s:24:"8:storyboard-unpublished";a:2:{i:0;R:15556;i:1;R:799;}s:22:"8:storyboard-published";a:2:{i:0;R:15556;i:1;R:799;}s:19:"8:storyboard-hidden";a:2:{i:0;R:15556;i:1;R:799;}s:22:"8:storyboard-unpublish";a:2:{i:0;R:15556;i:1;R:799;}s:20:"8:storyboard-publish";a:2:{i:0;R:15556;i:1;R:799;}s:17:"8:storyboard-hide";a:2:{i:0;R:15556;i:1;R:799;}s:31:"8:storyboard-option-unpublished";a:2:{i:0;R:15556;i:1;R:799;}s:29:"8:storyboard-option-published";a:2:{i:0;R:15556;i:1;R:799;}s:26:"8:storyboard-option-hidden";a:2:{i:0;R:15556;i:1;R:799;}s:7:"8:story";a:2:{i:0;R:15556;i:1;R:799;}s:26:"8:storyboard-submittedbyon";a:2:{i:0;R:15556;i:1;R:799;}s:24:"8:storyboard-viewstories";a:2:{i:0;R:15556;i:1;R:799;}s:24:"8:storyboard-nosuchstory";a:2:{i:0;R:15556;i:1;R:799;}s:29:"8:storyboard-storyunpublished";a:2:{i:0;R:15556;i:1;R:799;}s:25:"8:storyboard-nostorytitle";a:2:{i:0;R:15556;i:1;R:799;}s:21:"8:storyboard-cantedit";a:2:{i:0;R:15556;i:1;R:799;}s:20:"8:storyboard-canedit";a:2:{i:0;R:15556;i:1;R:799;}s:31:"8:storyboard-createdandmodified";a:2:{i:0;R:15556;i:1;R:799;}s:23:"8:storyboard-authorname";a:2:{i:0;R:15556;i:1;R:799;}s:27:"8:storyboard-authorlocation";a:2:{i:0;R:15556;i:1;R:799;}s:29:"8:storyboard-authoroccupation";a:2:{i:0;R:15556;i:1;R:799;}s:24:"8:storyboard-authoremail";a:2:{i:0;R:15556;i:1;R:799;}s:21:"8:storyboard-thestory";a:2:{i:0;R:15556;i:1;R:799;}s:23:"8:storyboard-storystate";a:2:{i:0;R:15556;i:1;R:799;}s:21:"8:storyboard-language";a:2:{i:0;R:15556;i:1;R:799;}s:26:"8:storyboard-storymetadata";a:2:{i:0;R:15556;i:1;R:799;}s:30:"8:storyboard-storymetadatafrom";a:2:{i:0;R:15556;i:1;R:799;}s:21:"8:storyboard-yourname";a:2:{i:0;R:15556;i:1;R:799;}s:21:"8:storyboard-location";a:2:{i:0;R:15556;i:1;R:799;}s:23:"8:storyboard-occupation";a:2:{i:0;R:15556;i:1;R:799;}s:18:"8:storyboard-story";a:2:{i:0;R:15556;i:1;R:799;}s:18:"8:storyboard-photo";a:2:{i:0;R:15556;i:1;R:799;}s:18:"8:storyboard-email";a:2:{i:0;R:15556;i:1;R:799;}s:23:"8:storyboard-storytitle";a:2:{i:0;R:15556;i:1;R:799;}s:22:"8:storyboard-agreement";a:2:{i:0;R:15556;i:1;R:799;}s:22:"8:storyboard-charsleft";a:2:{i:0;R:15556;i:1;R:799;}s:27:"8:storyboard-cannotbelonger";a:2:{i:0;R:15556;i:1;R:799;}s:24:"8:storyboard-charsneeded";a:2:{i:0;R:15556;i:1;R:799;}s:24:"8:storyboard-needtoagree";a:2:{i:0;R:15556;i:1;R:799;}s:31:"8:storyboard-submissioncomplete";a:2:{i:0;R:15556;i:1;R:799;}s:33:"8:storyboard-submissionincomplete";a:2:{i:0;R:15556;i:1;R:799;}s:26:"8:storyboard-alreadyexists";a:2:{i:0;R:15556;i:1;R:799;}s:32:"8:storyboard-alreadyexistschange";a:2:{i:0;R:15556;i:1;R:799;}s:24:"8:storyboard-changetitle";a:2:{i:0;R:15556;i:1;R:799;}s:25:"8:storyboard-notsubmitted";a:2:{i:0;R:15556;i:1;R:799;}s:24:"8:storyboard-charstomany";a:2:{i:0;R:15556;i:1;R:799;}s:28:"8:storyboard-morecharsneeded";a:2:{i:0;R:15556;i:1;R:799;}s:27:"8:storyboard-charactersleft";a:2:{i:0;R:15556;i:1;R:799;}s:32:"8:storyboard-createdsuccessfully";a:2:{i:0;R:15556;i:1;R:799;}s:23:"8:storyboard-emailtitle";a:2:{i:0;R:15556;i:1;R:799;}s:22:"8:storyboard-emailbody";a:2:{i:0;R:15556;i:1;R:799;}s:13:"8:storyreview";a:2:{i:0;R:15556;i:1;R:799;}s:24:"8:storyboard-deleteimage";a:2:{i:0;R:15556;i:1;R:799;}s:17:"8:storyboard-done";a:2:{i:0;R:15556;i:1;R:799;}s:20:"8:storyboard-working";a:2:{i:0;R:15556;i:1;R:799;}s:33:"8:storyboard-imagedeletionconfirm";a:2:{i:0;R:15556;i:1;R:799;}s:25:"8:storyboard-imagedeleted";a:2:{i:0;R:15556;i:1;R:799;}s:22:"8:storyboard-showimage";a:2:{i:0;R:15556;i:1;R:799;}s:22:"8:storyboard-hideimage";a:2:{i:0;R:15556;i:1;R:799;}s:24:"8:storyboard-deletestory";a:2:{i:0;R:15556;i:1;R:799;}s:33:"8:storyboard-storydeletionconfirm";a:2:{i:0;R:15556;i:1;R:799;}s:22:"8:stringfunctions-desc";a:2:{i:0;s:19:"ext-stringfunctions";i:1;R:799;}s:17:"8:subpagefun-desc";a:2:{i:0;s:14:"ext-subpagefun";i:1;R:799;}s:10:"8:spl-desc";a:2:{i:0;s:15:"ext-subpagelist";i:1;R:799;}s:16:"8:spl-nosubpages";a:2:{i:0;R:15626;i:1;R:799;}s:18:"8:spl-noparentpage";a:2:{i:0;R:15626;i:1;R:799;}s:13:"8:spl-nopages";a:2:{i:0;R:15626;i:1;R:799;}s:23:"8:spl-subpages-par-sort";a:2:{i:0;R:15626;i:1;R:799;}s:25:"8:spl-subpages-par-sortby";a:2:{i:0;R:15626;i:1;R:799;}s:25:"8:spl-subpages-par-format";a:2:{i:0;R:15626;i:1;R:799;}s:23:"8:spl-subpages-par-page";a:2:{i:0;R:15626;i:1;R:799;}s:27:"8:spl-subpages-par-showpage";a:2:{i:0;R:15626;i:1;R:799;}s:28:"8:spl-subpages-par-pathstyle";a:2:{i:0;R:15626;i:1;R:799;}s:27:"8:spl-subpages-par-kidsonly";a:2:{i:0;R:15626;i:1;R:799;}s:24:"8:spl-subpages-par-limit";a:2:{i:0;R:15626;i:1;R:799;}s:26:"8:spl-subpages-par-element";a:2:{i:0;R:15626;i:1;R:799;}s:24:"8:spl-subpages-par-class";a:2:{i:0;R:15626;i:1;R:799;}s:24:"8:spl-subpages-par-intro";a:2:{i:0;R:15626;i:1;R:799;}s:24:"8:spl-subpages-par-outro";a:2:{i:0;R:15626;i:1;R:799;}s:26:"8:spl-subpages-par-default";a:2:{i:0;R:15626;i:1;R:799;}s:28:"8:spl-subpages-par-separator";a:2:{i:0;R:15626;i:1;R:799;}s:27:"8:spl-subpages-par-template";a:2:{i:0;R:15626;i:1;R:799;}s:24:"8:spl-subpages-par-links";a:2:{i:0;R:15626;i:1;R:799;}s:21:"8:subpagesortkey-desc";a:2:{i:0;s:18:"ext-subpagesortkey";i:1;R:799;}s:6:"8:sudo";a:2:{i:0;s:8:"ext-sudo";i:1;R:799;}s:8:"8:unsudo";a:2:{i:0;R:15649;i:1;R:799;}s:11:"8:sudo-desc";a:2:{i:0;R:15649;i:1;R:799;}s:22:"8:sudo-personal-unsudo";a:2:{i:0;R:15649;i:1;R:799;}s:11:"8:sudo-form";a:2:{i:0;R:15649;i:1;R:799;}s:11:"8:sudo-user";a:2:{i:0;R:15649;i:1;R:799;}s:13:"8:sudo-reason";a:2:{i:0;R:15649;i:1;R:799;}s:13:"8:sudo-submit";a:2:{i:0;R:15649;i:1;R:799;}s:13:"8:sudo-unsudo";a:2:{i:0;R:15649;i:1;R:799;}s:20:"8:sudo-unsudo-submit";a:2:{i:0;R:15649;i:1;R:799;}s:14:"8:sudo-success";a:2:{i:0;R:15649;i:1;R:799;}s:12:"8:sudo-error";a:2:{i:0;R:15649;i:1;R:799;}s:29:"8:sudo-error-sudo-invaliduser";a:2:{i:0;R:15649;i:1;R:799;}s:20:"8:sudo-error-sudo-ip";a:2:{i:0;R:15649;i:1;R:799;}s:29:"8:sudo-error-sudo-nonexistent";a:2:{i:0;R:15649;i:1;R:799;}s:22:"8:sudo-error-sudo-self";a:2:{i:0;R:15649;i:1;R:799;}s:19:"8:sudo-error-nosudo";a:2:{i:0;R:15649;i:1;R:799;}s:18:"8:sudo-logpagename";a:2:{i:0;R:15649;i:1;R:799;}s:18:"8:sudo-logpagetext";a:2:{i:0;R:15649;i:1;R:799;}s:15:"8:sudo-logentry";a:2:{i:0;R:15649;i:1;R:799;}s:12:"8:right-sudo";a:2:{i:0;R:15649;i:1;R:799;}s:14:"8:suhosin-desc";a:2:{i:0;s:11:"ext-suhosin";i:1;R:799;}s:13:"8:survey-desc";a:2:{i:0;s:10:"ext-survey";i:1;R:799;}s:19:"8:right-surveyadmin";a:2:{i:0;R:15673;i:1;R:799;}s:20:"8:right-surveysubmit";a:2:{i:0;R:15673;i:1;R:799;}s:20:"8:action-surveyadmin";a:2:{i:0;R:15673;i:1;R:799;}s:21:"8:action-surveysubmit";a:2:{i:0;R:15673;i:1;R:799;}s:19:"8:group-surveyadmin";a:2:{i:0;R:15673;i:1;R:799;}s:26:"8:group-surveyadmin-member";a:2:{i:0;R:15673;i:1;R:799;}s:23:"8:grouppage-surveyadmin";a:2:{i:0;R:15673;i:1;R:799;}s:20:"8:group-surveysubmit";a:2:{i:0;R:15673;i:1;R:799;}s:27:"8:group-surveysubmit-member";a:2:{i:0;R:15673;i:1;R:799;}s:24:"8:grouppage-surveysubmit";a:2:{i:0;R:15673;i:1;R:799;}s:23:"8:group-surveyadmin.css";a:2:{i:0;R:15673;i:1;R:799;}s:22:"8:group-surveyadmin.js";a:2:{i:0;R:15673;i:1;R:799;}s:24:"8:group-surveysubmit.css";a:2:{i:0;R:15673;i:1;R:799;}s:23:"8:group-surveysubmit.js";a:2:{i:0;R:15673;i:1;R:799;}s:20:"8:special-editsurvey";a:2:{i:0;R:15673;i:1;R:799;}s:17:"8:special-surveys";a:2:{i:0;R:15673;i:1;R:799;}s:21:"8:special-surveystats";a:2:{i:0;R:15673;i:1;R:799;}s:20:"8:special-takesurvey";a:2:{i:0;R:15673;i:1;R:799;}s:24:"8:survey-err-id-xor-name";a:2:{i:0;R:15673;i:1;R:799;}s:32:"8:survey-err-survey-name-unknown";a:2:{i:0;R:15673;i:1;R:799;}s:27:"8:survey-err-duplicate-name";a:2:{i:0;R:15673;i:1;R:799;}s:26:"8:survey-err-ids-xor-names";a:2:{i:0;R:15673;i:1;R:799;}s:27:"8:survey-question-type-text";a:2:{i:0;R:15673;i:1;R:799;}s:29:"8:survey-question-type-number";a:2:{i:0;R:15673;i:1;R:799;}s:29:"8:survey-question-type-select";a:2:{i:0;R:15673;i:1;R:799;}s:28:"8:survey-question-type-radio";a:2:{i:0;R:15673;i:1;R:799;}s:31:"8:survey-question-type-textarea";a:2:{i:0;R:15673;i:1;R:799;}s:28:"8:survey-question-type-check";a:2:{i:0;R:15673;i:1;R:799;}s:22:"8:survey-user-type-all";a:2:{i:0;R:15673;i:1;R:799;}s:27:"8:survey-user-type-loggedin";a:2:{i:0;R:15673;i:1;R:799;}s:28:"8:survey-user-type-confirmed";a:2:{i:0;R:15673;i:1;R:799;}s:25:"8:survey-user-type-editor";a:2:{i:0;R:15673;i:1;R:799;}s:23:"8:survey-user-type-anon";a:2:{i:0;R:15673;i:1;R:799;}s:24:"8:survey-navigation-edit";a:2:{i:0;R:15673;i:1;R:799;}s:24:"8:survey-navigation-take";a:2:{i:0;R:15673;i:1;R:799;}s:24:"8:survey-navigation-list";a:2:{i:0;R:15673;i:1;R:799;}s:25:"8:survey-navigation-stats";a:2:{i:0;R:15673;i:1;R:799;}s:24:"8:surveys-special-addnew";a:2:{i:0;R:15673;i:1;R:799;}s:25:"8:surveys-special-namedoc";a:2:{i:0;R:15673;i:1;R:799;}s:25:"8:surveys-special-newname";a:2:{i:0;R:15673;i:1;R:799;}s:21:"8:surveys-special-add";a:2:{i:0;R:15673;i:1;R:799;}s:26:"8:surveys-special-existing";a:2:{i:0;R:15673;i:1;R:799;}s:23:"8:surveys-special-title";a:2:{i:0;R:15673;i:1;R:799;}s:24:"8:surveys-special-status";a:2:{i:0;R:15673;i:1;R:799;}s:23:"8:surveys-special-stats";a:2:{i:0;R:15673;i:1;R:799;}s:22:"8:surveys-special-edit";a:2:{i:0;R:15673;i:1;R:799;}s:22:"8:surveys-special-save";a:2:{i:0;R:15673;i:1;R:799;}s:24:"8:surveys-special-delete";a:2:{i:0;R:15673;i:1;R:799;}s:25:"8:surveys-special-enabled";a:2:{i:0;R:15673;i:1;R:799;}s:26:"8:surveys-special-disabled";a:2:{i:0;R:15673;i:1;R:799;}s:32:"8:surveys-special-confirm-delete";a:2:{i:0;R:15673;i:1;R:799;}s:31:"8:surveys-special-delete-failed";a:2:{i:0;R:15673;i:1;R:799;}s:31:"8:survey-special-label-usertype";a:2:{i:0;R:15673;i:1;R:799;}s:31:"8:survey-special-label-minpages";a:2:{i:0;R:15673;i:1;R:799;}s:28:"8:surveys-takesurvey-loading";a:2:{i:0;R:15673;i:1;R:799;}s:33:"8:surveys-takesurvey-nosuchsurvey";a:2:{i:0;R:15673;i:1;R:799;}s:36:"8:surveys-takesurvey-warn-notenabled";a:2:{i:0;R:15673;i:1;R:799;}s:37:"8:surveys-takesurvey-surveynotenabled";a:2:{i:0;R:15673;i:1;R:799;}s:34:"8:surveys-surveystats-nosuchsurvey";a:2:{i:0;R:15673;i:1;R:799;}s:26:"8:surveys-surveystats-name";a:2:{i:0;R:15673;i:1;R:799;}s:27:"8:surveys-surveystats-title";a:2:{i:0;R:15673;i:1;R:799;}s:28:"8:surveys-surveystats-status";a:2:{i:0;R:15673;i:1;R:799;}s:35:"8:surveys-surveystats-questioncount";a:2:{i:0;R:15673;i:1;R:799;}s:37:"8:surveys-surveystats-submissioncount";a:2:{i:0;R:15673;i:1;R:799;}s:29:"8:surveys-surveystats-enabled";a:2:{i:0;R:15673;i:1;R:799;}s:30:"8:surveys-surveystats-disabled";a:2:{i:0;R:15673;i:1;R:799;}s:31:"8:surveys-surveystats-questions";a:2:{i:0;R:15673;i:1;R:799;}s:33:"8:surveys-surveystats-question-nr";a:2:{i:0;R:15673;i:1;R:799;}s:32:"8:surveys-surveystats-question-#";a:2:{i:0;R:15673;i:1;R:799;}s:35:"8:surveys-surveystats-question-type";a:2:{i:0;R:15673;i:1;R:799;}s:35:"8:surveys-surveystats-question-text";a:2:{i:0;R:15673;i:1;R:799;}s:42:"8:surveys-surveystats-question-answercount";a:2:{i:0;R:15673;i:1;R:799;}s:38:"8:surveys-surveystats-question-answers";a:2:{i:0;R:15673;i:1;R:799;}s:37:"8:surveys-surveystats-question-answer";a:2:{i:0;R:15673;i:1;R:799;}s:31:"8:surveys-surveystats-unchecked";a:2:{i:0;R:15673;i:1;R:799;}s:29:"8:surveys-surveystats-checked";a:2:{i:0;R:15673;i:1;R:799;}s:30:"8:surveys-special-unknown-name";a:2:{i:0;R:15673;i:1;R:799;}s:27:"8:survey-special-label-name";a:2:{i:0;R:15673;i:1;R:799;}s:28:"8:survey-special-label-title";a:2:{i:0;R:15673;i:1;R:799;}s:30:"8:survey-special-label-enabled";a:2:{i:0;R:15673;i:1;R:799;}s:28:"8:survey-special-label-ratio";a:2:{i:0;R:15673;i:1;R:799;}s:32:"8:survey-special-label-add-first";a:2:{i:0;R:15673;i:1;R:799;}s:34:"8:survey-special-label-add-another";a:2:{i:0;R:15673;i:1;R:799;}s:34:"8:survey-special-label-addquestion";a:2:{i:0;R:15673;i:1;R:799;}s:26:"8:survey-question-label-nr";a:2:{i:0;R:15673;i:1;R:799;}s:31:"8:survey-special-label-required";a:2:{i:0;R:15673;i:1;R:799;}s:27:"8:survey-special-label-type";a:2:{i:0;R:15673;i:1;R:799;}s:27:"8:survey-special-label-text";a:2:{i:0;R:15673;i:1;R:799;}s:23:"8:survey-special-remove";a:2:{i:0;R:15673;i:1;R:799;}s:31:"8:survey-special-remove-confirm";a:2:{i:0;R:15673;i:1;R:799;}s:29:"8:survey-special-label-header";a:2:{i:0;R:15673;i:1;R:799;}s:29:"8:survey-special-label-footer";a:2:{i:0;R:15673;i:1;R:799;}s:29:"8:survey-special-label-thanks";a:2:{i:0;R:15673;i:1;R:799;}s:30:"8:survey-special-label-answers";a:2:{i:0;R:15673;i:1;R:799;}s:22:"8:survey-jquery-submit";a:2:{i:0;R:15673;i:1;R:799;}s:22:"8:survey-jquery-finish";a:2:{i:0;R:15673;i:1;R:799;}s:27:"8:survey-jquery-load-failed";a:2:{i:0;R:15673;i:1;R:799;}s:25:"8:svgedit-editbutton-edit";a:2:{i:0;s:11:"ext-svgedit";i:1;R:799;}s:23:"8:svgedit-summary-label";a:2:{i:0;R:15772;i:1;R:799;}s:25:"8:svgedit-summary-default";a:2:{i:0;R:15772;i:1;R:799;}s:27:"8:svgedit-editor-save-close";a:2:{i:0;R:15772;i:1;R:799;}s:22:"8:svgedit-editor-close";a:2:{i:0;R:15772;i:1;R:799;}s:14:"8:svgedit-desc";a:2:{i:0;R:15772;i:1;R:799;}s:18:"8:svgedit-edit-tab";a:2:{i:0;R:15772;i:1;R:799;}s:26:"8:svgedit-edit-tab-tooltip";a:2:{i:0;R:15772;i:1;R:799;}s:24:"8:svgedit-toolbar-insert";a:2:{i:0;R:15772;i:1;R:799;}s:9:"8:svgzoom";a:2:{i:0;s:11:"ext-svgzoom";i:1;R:799;}s:14:"8:svgzoom-desc";a:2:{i:0;R:15782;i:1;R:799;}s:11:"8:tab0-desc";a:2:{i:0;s:8:"ext-tab0";i:1;R:799;}s:15:"8:talkhere-desc";a:2:{i:0;s:12:"ext-talkhere";i:1;R:799;}s:16:"8:talkhere-title";a:2:{i:0;R:15787;i:1;R:799;}s:19:"8:talkhere-headtext";a:2:{i:0;R:15787;i:1;R:799;}s:19:"8:talkhere-foottext";a:2:{i:0;R:15787;i:1;R:799;}s:19:"8:talkhere-talkpage";a:2:{i:0;R:15787;i:1;R:799;}s:17:"8:talkhere-notalk";a:2:{i:0;R:15787;i:1;R:799;}s:21:"8:talkhere-addcomment";a:2:{i:0;R:15787;i:1;R:799;}s:22:"8:talkhere-beforeinput";a:2:{i:0;R:15787;i:1;R:799;}s:21:"8:talkhere-afterinput";a:2:{i:0;R:15787;i:1;R:799;}s:20:"8:talkhere-afterform";a:2:{i:0;R:15787;i:1;R:799;}s:18:"8:talkhere-loading";a:2:{i:0;R:15787;i:1;R:799;}s:19:"8:talkhere-collapse";a:2:{i:0;R:15787;i:1;R:799;}s:7:"8:tasks";a:2:{i:0;s:9:"ext-tasks";i:1;R:799;}s:12:"8:tasks_desc";a:2:{i:0;R:15800;i:1;R:799;}s:11:"8:tasks_tab";a:2:{i:0;R:15800;i:1;R:799;}s:13:"8:tasks_title";a:2:{i:0;R:15800;i:1;R:799;}s:16:"8:tasks_form_new";a:2:{i:0;R:15800;i:1;R:799;}s:20:"8:tasks_form_comment";a:2:{i:0;R:15800;i:1;R:799;}s:14:"8:tasks_error1";a:2:{i:0;R:15800;i:1;R:799;}s:11:"8:tasks_ok1";a:2:{i:0;R:15800;i:1;R:799;}s:21:"8:tasks_create_header";a:2:{i:0;R:15800;i:1;R:799;}s:23:"8:tasks_existing_header";a:2:{i:0;R:15800;i:1;R:799;}s:29:"8:tasks_existing_table_header";a:2:{i:0;R:15800;i:1;R:799;}s:13:"8:tasks_noone";a:2:{i:0;R:15800;i:1;R:799;}s:17:"8:tasks_assign_me";a:2:{i:0;R:15800;i:1;R:799;}s:17:"8:tasks_assign_to";a:2:{i:0;R:15800;i:1;R:799;}s:19:"8:tasks_unassign_me";a:2:{i:0;R:15800;i:1;R:799;}s:13:"8:tasks_close";a:2:{i:0;R:15800;i:1;R:799;}s:15:"8:tasks_wontfix";a:2:{i:0;R:15800;i:1;R:799;}s:14:"8:tasks_delete";a:2:{i:0;R:15800;i:1;R:799;}s:28:"8:tasks_no_task_delete_title";a:2:{i:0;R:15800;i:1;R:799;}s:27:"8:tasks_no_task_delete_texe";a:2:{i:0;R:15800;i:1;R:799;}s:21:"8:tasks_action_delete";a:2:{i:0;R:15800;i:1;R:799;}s:24:"8:tasks_task_was_deleted";a:2:{i:0;R:15800;i:1;R:799;}s:14:"8:tasks_reopen";a:2:{i:0;R:15800;i:1;R:799;}s:18:"8:tasks_assignedto";a:2:{i:0;R:15800;i:1;R:799;}s:18:"8:tasks_created_by";a:2:{i:0;R:15800;i:1;R:799;}s:28:"8:tasks_discussion_page_link";a:2:{i:0;R:15800;i:1;R:799;}s:16:"8:tasks_closedby";a:2:{i:0;R:15800;i:1;R:799;}s:27:"8:tasks_assigned_myself_log";a:2:{i:0;R:15800;i:1;R:799;}s:27:"8:tasks_discussion_page_for";a:2:{i:0;R:15800;i:1;R:799;}s:21:"8:tasks_sidebar_title";a:2:{i:0;R:15800;i:1;R:799;}s:12:"8:tasks_here";a:2:{i:0;R:15800;i:1;R:799;}s:16:"8:tasks_returnto";a:2:{i:0;R:15800;i:1;R:799;}s:22:"8:tasks_see_page_tasks";a:2:{i:0;R:15800;i:1;R:799;}s:24:"8:tasks_task_is_assigned";a:2:{i:0;R:15800;i:1;R:799;}s:23:"8:tasks_plain_text_only";a:2:{i:0;R:15800;i:1;R:799;}s:17:"8:tasks_help_page";a:2:{i:0;R:15800;i:1;R:799;}s:22:"8:tasks_help_page_link";a:2:{i:0;R:15800;i:1;R:799;}s:22:"8:tasks_help_separator";a:2:{i:0;R:15800;i:1;R:799;}s:20:"8:tasks_more_like_it";a:2:{i:0;R:15800;i:1;R:799;}s:18:"8:tasks_task_types";a:2:{i:0;R:15800;i:1;R:799;}s:26:"8:tasks_significance_order";a:2:{i:0;R:15800;i:1;R:799;}s:22:"8:tasks_creation_tasks";a:2:{i:0;R:15800;i:1;R:799;}s:25:"8:tasks_event_on_creation";a:2:{i:0;R:15800;i:1;R:799;}s:30:"8:tasks_event_on_creation_anon";a:2:{i:0;R:15800;i:1;R:799;}s:27:"8:tasks_on_creation_comment";a:2:{i:0;R:15800;i:1;R:799;}s:29:"8:tasks_link_your_assignments";a:2:{i:0;R:15800;i:1;R:799;}s:28:"8:tasks_see_your_assignments";a:2:{i:0;R:15800;i:1;R:799;}s:22:"8:tasks_my_assignments";a:2:{i:0;R:15800;i:1;R:799;}s:25:"8:tasks_table_header_page";a:2:{i:0;R:15800;i:1;R:799;}s:31:"8:tasks_you_have_no_assignments";a:2:{i:0;R:15800;i:1;R:799;}s:25:"8:tasks_search_form_title";a:2:{i:0;R:15800;i:1;R:799;}s:20:"8:tasks_search_tasks";a:2:{i:0;R:15800;i:1;R:799;}s:21:"8:tasks_search_status";a:2:{i:0;R:15800;i:1;R:799;}s:35:"8:tasks_search_no_tasks_chosen_note";a:2:{i:0;R:15800;i:1;R:799;}s:22:"8:tasks_search_results";a:2:{i:0;R:15800;i:1;R:799;}s:16:"8:tasks_previous";a:2:{i:0;R:15800;i:1;R:799;}s:12:"8:tasks_next";a:2:{i:0;R:15800;i:1;R:799;}s:12:"8:tasks_sort";a:2:{i:0;R:15800;i:1;R:799;}s:17:"8:tasks_ascending";a:2:{i:0;R:15800;i:1;R:799;}s:20:"8:tasks_search_limit";a:2:{i:0;R:15800;i:1;R:799;}s:19:"8:tasks_status_open";a:2:{i:0;R:15800;i:1;R:799;}s:23:"8:tasks_status_assigned";a:2:{i:0;R:15800;i:1;R:799;}s:21:"8:tasks_status_closed";a:2:{i:0;R:15800;i:1;R:799;}s:22:"8:tasks_status_wontfix";a:2:{i:0;R:15800;i:1;R:799;}s:19:"8:tasks_action_open";a:2:{i:0;R:15800;i:1;R:799;}s:23:"8:tasks_action_assigned";a:2:{i:0;R:15800;i:1;R:799;}s:21:"8:tasks_action_closed";a:2:{i:0;R:15800;i:1;R:799;}s:22:"8:tasks_action_wontfix";a:2:{i:0;R:15800;i:1;R:799;}s:19:"8:tasks_sign_delete";a:2:{i:0;R:15800;i:1;R:799;}s:15:"8:tasks_logpage";a:2:{i:0;R:15800;i:1;R:799;}s:19:"8:tasks_logpagetext";a:2:{i:0;R:15800;i:1;R:799;}s:16:"8:tasks_logentry";a:2:{i:0;R:15800;i:1;R:799;}s:29:"8:tasks-pref-showtaskcomments";a:2:{i:0;R:15800;i:1;R:799;}s:19:"8:templateinfo-desc";a:2:{i:0;s:16:"ext-templateinfo";i:1;R:799;}s:21:"8:templateinfo-header";a:2:{i:0;R:15874;i:1;R:799;}s:14:"8:templatelink";a:2:{i:0;s:16:"ext-templatelink";i:1;R:799;}s:19:"8:templatelink_desc";a:2:{i:0;R:15877;i:1;R:799;}s:20:"8:templatelink_empty";a:2:{i:0;R:15877;i:1;R:799;}s:23:"8:templatelink_newtitle";a:2:{i:0;R:15877;i:1;R:799;}s:11:"8:tidy-desc";a:2:{i:0;s:11:"ext-tidytab";i:1;R:799;}s:6:"8:tidy";a:2:{i:0;R:15882;i:1;R:799;}s:8:"8:untidy";a:2:{i:0;R:15882;i:1;R:799;}s:17:"8:timedmedia-desc";a:2:{i:0;s:21:"ext-timedmediahandler";i:1;R:799;}s:28:"8:timedmedia-ogg-short-audio";a:2:{i:0;R:15886;i:1;R:799;}s:28:"8:timedmedia-ogg-short-video";a:2:{i:0;R:15886;i:1;R:799;}s:30:"8:timedmedia-ogg-short-general";a:2:{i:0;R:15886;i:1;R:799;}s:27:"8:timedmedia-ogg-long-audio";a:2:{i:0;R:15886;i:1;R:799;}s:27:"8:timedmedia-ogg-long-video";a:2:{i:0;R:15886;i:1;R:799;}s:33:"8:timedmedia-ogg-long-multiplexed";a:2:{i:0;R:15886;i:1;R:799;}s:29:"8:timedmedia-ogg-long-general";a:2:{i:0;R:15886;i:1;R:799;}s:27:"8:timedmedia-ogg-long-error";a:2:{i:0;R:15886;i:1;R:799;}s:29:"8:timedmedia-webm-short-video";a:2:{i:0;R:15886;i:1;R:799;}s:28:"8:timedmedia-webm-long-video";a:2:{i:0;R:15886;i:1;R:799;}s:25:"8:timedmedia-no-player-js";a:2:{i:0;R:15886;i:1;R:799;}s:17:"8:timedmedia-more";a:2:{i:0;R:15886;i:1;R:799;}s:20:"8:timedmedia-dismiss";a:2:{i:0;R:15886;i:1;R:799;}s:21:"8:timedmedia-download";a:2:{i:0;R:15886;i:1;R:799;}s:23:"8:timedmedia-play-media";a:2:{i:0;R:15886;i:1;R:799;}s:22:"8:timedmedia-desc-link";a:2:{i:0;R:15886;i:1;R:799;}s:29:"8:timedmedia-oggthumb-version";a:2:{i:0;R:15886;i:1;R:799;}s:28:"8:timedmedia-oggthumb-failed";a:2:{i:0;R:15886;i:1;R:799;}s:26:"8:timedmedia-status-header";a:2:{i:0;R:15886;i:1;R:799;}s:26:"8:timedmedia-update-status";a:2:{i:0;R:15886;i:1;R:799;}s:19:"8:timedmedia-status";a:2:{i:0;R:15886;i:1;R:799;}s:27:"8:timedmedia-status-unknown";a:2:{i:0;R:15886;i:1;R:799;}s:26:"8:timedmedia-transcodeinfo";a:2:{i:0;R:15886;i:1;R:799;}s:20:"8:timedmedia-actions";a:2:{i:0;R:15886;i:1;R:799;}s:24:"8:timedmedia-direct-link";a:2:{i:0;R:15886;i:1;R:799;}s:22:"8:timedmedia-not-ready";a:2:{i:0;R:15886;i:1;R:799;}s:25:"8:timedmedia-completed-on";a:2:{i:0;R:15886;i:1;R:799;}s:21:"8:timedmedia-error-on";a:2:{i:0;R:15886;i:1;R:799;}s:30:"8:timedmedia-started-transcode";a:2:{i:0;R:15886;i:1;R:799;}s:25:"8:timedmedia-percent-done";a:2:{i:0;R:15886;i:1;R:799;}s:25:"8:timedmedia-in-job-queue";a:2:{i:0;R:15886;i:1;R:799;}s:32:"8:timedmedia-unknown-target-size";a:2:{i:0;R:15886;i:1;R:799;}s:17:"8:timedmedia-days";a:2:{i:0;R:15886;i:1;R:799;}s:18:"8:timedmedia-hours";a:2:{i:0;R:15886;i:1;R:799;}s:20:"8:timedmedia-minutes";a:2:{i:0;R:15886;i:1;R:799;}s:20:"8:timedmedia-seconds";a:2:{i:0;R:15886;i:1;R:799;}s:32:"8:timedmedia-time-4-measurements";a:2:{i:0;R:15886;i:1;R:799;}s:32:"8:timedmedia-time-3-measurements";a:2:{i:0;R:15886;i:1;R:799;}s:32:"8:timedmedia-time-2-measurements";a:2:{i:0;R:15886;i:1;R:799;}s:32:"8:timedmedia-time-1-measurements";a:2:{i:0;R:15886;i:1;R:799;}s:23:"8:timedmedia-show-error";a:2:{i:0;R:15886;i:1;R:799;}s:18:"8:timedmedia-reset";a:2:{i:0;R:15886;i:1;R:799;}s:26:"8:timedmedia-reset-confirm";a:2:{i:0;R:15886;i:1;R:799;}s:24:"8:timedmedia-reset-error";a:2:{i:0;R:15886;i:1;R:799;}s:16:"8:timedmedia-ogg";a:2:{i:0;R:15886;i:1;R:799;}s:17:"8:timedmedia-webm";a:2:{i:0;R:15886;i:1;R:799;}s:24:"8:timedmedia-source-file";a:2:{i:0;R:15886;i:1;R:799;}s:29:"8:timedmedia-source-file-desc";a:2:{i:0;R:15886;i:1;R:799;}s:32:"8:timedmedia-derivative-160p.ogv";a:2:{i:0;R:15886;i:1;R:799;}s:37:"8:timedmedia-derivative-desc-160p.ogv";a:2:{i:0;R:15886;i:1;R:799;}s:32:"8:timedmedia-derivative-360p.ogv";a:2:{i:0;R:15886;i:1;R:799;}s:37:"8:timedmedia-derivative-desc-360p.ogv";a:2:{i:0;R:15886;i:1;R:799;}s:32:"8:timedmedia-derivative-480p.ogv";a:2:{i:0;R:15886;i:1;R:799;}s:37:"8:timedmedia-derivative-desc-480p.ogv";a:2:{i:0;R:15886;i:1;R:799;}s:32:"8:timedmedia-derivative-720p.ogv";a:2:{i:0;R:15886;i:1;R:799;}s:37:"8:timedmedia-derivative-desc-720p.ogv";a:2:{i:0;R:15886;i:1;R:799;}s:33:"8:timedmedia-derivative-360p.webm";a:2:{i:0;R:15886;i:1;R:799;}s:38:"8:timedmedia-derivative-desc-360p.webm";a:2:{i:0;R:15886;i:1;R:799;}s:33:"8:timedmedia-derivative-480p.webm";a:2:{i:0;R:15886;i:1;R:799;}s:38:"8:timedmedia-derivative-desc-480p.webm";a:2:{i:0;R:15886;i:1;R:799;}s:33:"8:timedmedia-derivative-720p.webm";a:2:{i:0;R:15886;i:1;R:799;}s:38:"8:timedmedia-derivative-desc-720p.webm";a:2:{i:0;R:15886;i:1;R:799;}s:30:"8:timedmedia-subtitle-language";a:2:{i:0;R:15886;i:1;R:799;}s:30:"8:timedmedia-subtitle-no-video";a:2:{i:0;R:15886;i:1;R:799;}s:34:"8:timedmedia-subtitle-no-subtitles";a:2:{i:0;R:15886;i:1;R:799;}s:30:"8:mwe-embedplayer-credit-title";a:2:{i:0;s:33:"ext-timedmediahandler-embedplayer";i:1;R:799;}s:29:"8:mwe-embedplayer-credit-date";a:2:{i:0;R:15953;i:1;R:799;}s:31:"8:mwe-embedplayer-credit-author";a:2:{i:0;R:15953;i:1;R:799;}s:32:"8:mwe-embedplayer-loading_plugin";a:2:{i:0;R:15953;i:1;R:799;}s:33:"8:mwe-embedplayer-select_playback";a:2:{i:0;R:15953;i:1;R:799;}s:27:"8:mwe-embedplayer-link_back";a:2:{i:0;R:15953;i:1;R:799;}s:32:"8:mwe-embedplayer-error_swap_vid";a:2:{i:0;R:15953;i:1;R:799;}s:40:"8:mwe-embedplayer-add_to_end_of_sequence";a:2:{i:0;R:15953;i:1;R:799;}s:38:"8:mwe-embedplayer-missing_video_stream";a:2:{i:0;R:15953;i:1;R:799;}s:27:"8:mwe-embedplayer-play_clip";a:2:{i:0;R:15953;i:1;R:799;}s:28:"8:mwe-embedplayer-pause_clip";a:2:{i:0;R:15953;i:1;R:799;}s:32:"8:mwe-embedplayer-volume_control";a:2:{i:0;R:15953;i:1;R:799;}s:32:"8:mwe-embedplayer-player_options";a:2:{i:0;R:15953;i:1;R:799;}s:28:"8:mwe-embedplayer-timed_text";a:2:{i:0;R:15953;i:1;R:799;}s:35:"8:mwe-embedplayer-player_fullscreen";a:2:{i:0;R:15953;i:1;R:799;}s:31:"8:mwe-embedplayer-next_clip_msg";a:2:{i:0;R:15953;i:1;R:799;}s:31:"8:mwe-embedplayer-prev_clip_msg";a:2:{i:0;R:15953;i:1;R:799;}s:34:"8:mwe-embedplayer-current_clip_msg";a:2:{i:0;R:15953;i:1;R:799;}s:25:"8:mwe-embedplayer-seek_to";a:2:{i:0;R:15953;i:1;R:799;}s:24:"8:mwe-embedplayer-paused";a:2:{i:0;R:15953;i:1;R:799;}s:34:"8:mwe-embedplayer-download_segment";a:2:{i:0;R:15953;i:1;R:799;}s:31:"8:mwe-embedplayer-download_full";a:2:{i:0;R:15953;i:1;R:799;}s:38:"8:mwe-embedplayer-download_right_click";a:2:{i:0;R:15953;i:1;R:799;}s:31:"8:mwe-embedplayer-download_clip";a:2:{i:0;R:15953;i:1;R:799;}s:31:"8:mwe-embedplayer-download_text";a:2:{i:0;R:15953;i:1;R:799;}s:26:"8:mwe-embedplayer-download";a:2:{i:0;R:15953;i:1;R:799;}s:23:"8:mwe-embedplayer-share";a:2:{i:0;R:15953;i:1;R:799;}s:25:"8:mwe-embedplayer-credits";a:2:{i:0;R:15953;i:1;R:799;}s:31:"8:mwe-embedplayer-about-library";a:2:{i:0;R:15953;i:1;R:799;}s:36:"8:mwe-embedplayer-about-library-desc";a:2:{i:0;R:15953;i:1;R:799;}s:31:"8:mwe-embedplayer-clip_linkback";a:2:{i:0;R:15953;i:1;R:799;}s:31:"8:mwe-embedplayer-choose_player";a:2:{i:0;R:15953;i:1;R:799;}s:27:"8:mwe-embedplayer-no-player";a:2:{i:0;R:15953;i:1;R:799;}s:34:"8:mwe-embedplayer-share_this_video";a:2:{i:0;R:15953;i:1;R:799;}s:31:"8:mwe-embedplayer-video_credits";a:2:{i:0;R:15953;i:1;R:799;}s:34:"8:mwe-embedplayer-no-video_credits";a:2:{i:0;R:15953;i:1;R:799;}s:40:"8:mwe-embedplayer-kaltura-platform-title";a:2:{i:0;R:15953;i:1;R:799;}s:26:"8:mwe-embedplayer-menu_btn";a:2:{i:0;R:15953;i:1;R:799;}s:27:"8:mwe-embedplayer-close_btn";a:2:{i:0;R:15953;i:1;R:799;}s:39:"8:mwe-embedplayer-ogg-player-vlc-player";a:2:{i:0;R:15953;i:1;R:799;}s:38:"8:mwe-embedplayer-ogg-player-oggnative";a:2:{i:0;R:15953;i:1;R:799;}s:39:"8:mwe-embedplayer-ogg-player-h264native";a:2:{i:0;R:15953;i:1;R:799;}s:39:"8:mwe-embedplayer-ogg-player-webmnative";a:2:{i:0;R:15953;i:1;R:799;}s:38:"8:mwe-embedplayer-ogg-player-oggplugin";a:2:{i:0;R:15953;i:1;R:799;}s:46:"8:mwe-embedplayer-ogg-player-quicktime-mozilla";a:2:{i:0;R:15953;i:1;R:799;}s:46:"8:mwe-embedplayer-ogg-player-quicktime-activex";a:2:{i:0;R:15953;i:1;R:799;}s:36:"8:mwe-embedplayer-ogg-player-cortado";a:2:{i:0;R:15953;i:1;R:799;}s:39:"8:mwe-embedplayer-ogg-player-flowplayer";a:2:{i:0;R:15953;i:1;R:799;}s:36:"8:mwe-embedplayer-ogg-player-kplayer";a:2:{i:0;R:15953;i:1;R:799;}s:37:"8:mwe-embedplayer-ogg-player-selected";a:2:{i:0;R:15953;i:1;R:799;}s:39:"8:mwe-embedplayer-ogg-player-omtkplayer";a:2:{i:0;R:15953;i:1;R:799;}s:37:"8:mwe-embedplayer-for_best_experience";a:2:{i:0;R:15953;i:1;R:799;}s:31:"8:mwe-embedplayer-download-warn";a:2:{i:0;R:15953;i:1;R:799;}s:32:"8:mwe-embedplayer-fullscreen-tip";a:2:{i:0;R:15953;i:1;R:799;}s:36:"8:mwe-embedplayer-fullscreen-tip-osx";a:2:{i:0;R:15953;i:1;R:799;}s:35:"8:mwe-embedplayer-do_not_warn_again";a:2:{i:0;R:15953;i:1;R:799;}s:30:"8:mwe-embedplayer-playerselect";a:2:{i:0;R:15953;i:1;R:799;}s:35:"8:mwe-embedplayer-read_before_embed";a:2:{i:0;R:15953;i:1;R:799;}s:36:"8:mwe-embedplayer-embed_site_or_blog";a:2:{i:0;R:15953;i:1;R:799;}s:32:"8:mwe-embedplayer-related_videos";a:2:{i:0;R:15953;i:1;R:799;}s:25:"8:mwe-embedplayer-seeking";a:2:{i:0;R:15953;i:1;R:799;}s:27:"8:mwe-embedplayer-buffering";a:2:{i:0;R:15953;i:1;R:799;}s:27:"8:mwe-embedplayer-copy-code";a:2:{i:0;R:15953;i:1;R:799;}s:28:"8:mwe-embedplayer-video-h264";a:2:{i:0;R:15953;i:1;R:799;}s:28:"8:mwe-embedplayer-video-webm";a:2:{i:0;R:15953;i:1;R:799;}s:27:"8:mwe-embedplayer-video-flv";a:2:{i:0;R:15953;i:1;R:799;}s:27:"8:mwe-embedplayer-video-ogg";a:2:{i:0;R:15953;i:1;R:799;}s:29:"8:mwe-embedplayer-video-audio";a:2:{i:0;R:15953;i:1;R:799;}s:28:"8:mwe-embedplayer-audio-mpeg";a:2:{i:0;R:15953;i:1;R:799;}s:27:"8:mwe-embedplayer-video-3gp";a:2:{i:0;R:15953;i:1;R:799;}s:28:"8:mwe-embedplayer-video-mpeg";a:2:{i:0;R:15953;i:1;R:799;}s:31:"8:mwe-embedplayer-video-msvideo";a:2:{i:0;R:15953;i:1;R:799;}s:32:"8:mwe-embedplayer-missing-source";a:2:{i:0;R:15953;i:1;R:799;}s:22:"8:mwe-timedtext-editor";a:2:{i:0;s:31:"ext-timedmediahandler-timedtext";i:1;R:799;}s:32:"8:mwe-timedtext-stage-transcribe";a:2:{i:0;R:16027;i:1;R:799;}s:26:"8:mwe-timedtext-stage-sync";a:2:{i:0;R:16027;i:1;R:799;}s:31:"8:mwe-timedtext-stage-translate";a:2:{i:0;R:16027;i:1;R:799;}s:28:"8:mwe-timedtext-stage-upload";a:2:{i:0;R:16027;i:1;R:799;}s:31:"8:mwe-timedtext-select-language";a:2:{i:0;R:16027;i:1;R:799;}s:29:"8:mwe-timedtext-file-language";a:2:{i:0;R:16027;i:1;R:799;}s:27:"8:mwe-timedtext-upload-text";a:2:{i:0;R:16027;i:1;R:799;}s:30:"8:mwe-timedtext-uploading-text";a:2:{i:0;R:16027;i:1;R:799;}s:38:"8:mwe-timedtext-upload-text-desc-title";a:2:{i:0;R:16027;i:1;R:799;}s:37:"8:mwe-timedtext-upload-text-desc-help";a:2:{i:0;R:16027;i:1;R:799;}s:44:"8:mwe-timedtext-upload-text-desc-help-browse";a:2:{i:0;R:16027;i:1;R:799;}s:44:"8:mwe-timedtext-upload-text-desc-help-select";a:2:{i:0;R:16027;i:1;R:799;}s:44:"8:mwe-timedtext-upload-text-desc-help-review";a:2:{i:0;R:16027;i:1;R:799;}s:35:"8:mwe-timedtext-upload-text-preview";a:2:{i:0;R:16027;i:1;R:799;}s:35:"8:mwe-timedtext-upload-text-success";a:2:{i:0;R:16027;i:1;R:799;}s:32:"8:mwe-timedtext-upload-text-done";a:2:{i:0;R:16027;i:1;R:799;}s:37:"8:mwe-timedtext-upload-text-fail-desc";a:2:{i:0;R:16027;i:1;R:799;}s:38:"8:mwe-timedtext-upload-text-fail-title";a:2:{i:0;R:16027;i:1;R:799;}s:35:"8:mwe-timedtext-upload-text-another";a:2:{i:0;R:16027;i:1;R:799;}s:42:"8:mwe-timedtext-upload-text-done-uploading";a:2:{i:0;R:16027;i:1;R:799;}s:24:"8:mwe-timedtext-back-btn";a:2:{i:0;R:16027;i:1;R:799;}s:27:"8:mwe-timedtext-choose-text";a:2:{i:0;R:16027;i:1;R:799;}s:33:"8:mwe-timedtext-upload-timed-text";a:2:{i:0;R:16027;i:1;R:799;}s:33:"8:mwe-timedtext-loading-text-edit";a:2:{i:0;R:16027;i:1;R:799;}s:22:"8:mwe-timedtext-search";a:2:{i:0;R:16027;i:1;R:799;}s:22:"8:mwe-timedtext-layout";a:2:{i:0;R:16027;i:1;R:799;}s:28:"8:mwe-timedtext-layout-ontop";a:2:{i:0;R:16027;i:1;R:799;}s:28:"8:mwe-timedtext-layout-below";a:2:{i:0;R:16027;i:1;R:799;}s:26:"8:mwe-timedtext-layout-off";a:2:{i:0;R:16027;i:1;R:799;}s:28:"8:mwe-timedtext-loading-text";a:2:{i:0;R:16027;i:1;R:799;}s:28:"8:mwe-timedtext-key-language";a:2:{i:0;R:16027;i:1;R:799;}s:26:"8:mwe-timedtext-textcat-cc";a:2:{i:0;R:16027;i:1;R:799;}s:27:"8:mwe-timedtext-textcat-sub";a:2:{i:0;R:16027;i:1;R:799;}s:27:"8:mwe-timedtext-textcat-tad";a:2:{i:0;R:16027;i:1;R:799;}s:27:"8:mwe-timedtext-textcat-ktv";a:2:{i:0;R:16027;i:1;R:799;}s:27:"8:mwe-timedtext-textcat-tik";a:2:{i:0;R:16027;i:1;R:799;}s:26:"8:mwe-timedtext-textcat-ar";a:2:{i:0;R:16027;i:1;R:799;}s:26:"8:mwe-timedtext-textcat-nb";a:2:{i:0;R:16027;i:1;R:799;}s:28:"8:mwe-timedtext-textcat-meta";a:2:{i:0;R:16027;i:1;R:799;}s:27:"8:mwe-timedtext-textcat-trx";a:2:{i:0;R:16027;i:1;R:799;}s:27:"8:mwe-timedtext-textcat-lrc";a:2:{i:0;R:16027;i:1;R:799;}s:27:"8:mwe-timedtext-textcat-lin";a:2:{i:0;R:16027;i:1;R:799;}s:27:"8:mwe-timedtext-textcat-cue";a:2:{i:0;R:16027;i:1;R:799;}s:43:"8:mwe-timedtext-language-subtitles-for-clip";a:2:{i:0;R:16027;i:1;R:799;}s:46:"8:mwe-timedtext-language-no-subtitles-for-clip";a:2:{i:0;R:16027;i:1;R:799;}s:28:"8:mwe-timedtext-request-subs";a:2:{i:0;R:16027;i:1;R:799;}s:23:"8:mwe-timedtext-no-subs";a:2:{i:0;R:16027;i:1;R:799;}s:33:"8:mwe-timedtext-request-subs-desc";a:2:{i:0;R:16027;i:1;R:799;}s:33:"8:mwe-timedtext-request-subs-done";a:2:{i:0;R:16027;i:1;R:799;}s:33:"8:mwe-timedtext-request-subs-fail";a:2:{i:0;R:16027;i:1;R:799;}s:36:"8:mwe-timedtext-request-already-done";a:2:{i:0;R:16027;i:1;R:799;}s:6:"8:todo";a:2:{i:0;s:8:"ext-todo";i:1;R:799;}s:11:"8:todo-desc";a:2:{i:0;R:16080;i:1;R:799;}s:10:"8:todo-tab";a:2:{i:0;R:16080;i:1;R:799;}s:16:"8:todo-new-queue";a:2:{i:0;R:16080;i:1;R:799;}s:19:"8:todo-mail-subject";a:2:{i:0;R:16080;i:1;R:799;}s:16:"8:todo-mail-body";a:2:{i:0;R:16080;i:1;R:799;}s:19:"8:todo-invalid-item";a:2:{i:0;R:16080;i:1;R:799;}s:23:"8:todo-update-else-item";a:2:{i:0;R:16080;i:1;R:799;}s:23:"8:todo-unrecognize-type";a:2:{i:0;R:16080;i:1;R:799;}s:20:"8:todo-user-invalide";a:2:{i:0;R:16080;i:1;R:799;}s:16:"8:todo-item-list";a:2:{i:0;R:16080;i:1;R:799;}s:14:"8:todo-no-item";a:2:{i:0;R:16080;i:1;R:799;}s:20:"8:todo-invalid-owner";a:2:{i:0;R:16080;i:1;R:799;}s:16:"8:todo-add-queue";a:2:{i:0;R:16080;i:1;R:799;}s:17:"8:todo-move-queue";a:2:{i:0;R:16080;i:1;R:799;}s:15:"8:todo-list-for";a:2:{i:0;R:16080;i:1;R:799;}s:18:"8:todo-list-change";a:2:{i:0;R:16080;i:1;R:799;}s:18:"8:todo-list-cancel";a:2:{i:0;R:16080;i:1;R:799;}s:15:"8:todo-new-item";a:2:{i:0;R:16080;i:1;R:799;}s:18:"8:todo-not-updated";a:2:{i:0;R:16080;i:1;R:799;}s:20:"8:todo-issue-summary";a:2:{i:0;R:16080;i:1;R:799;}s:19:"8:todo-form-details";a:2:{i:0;R:16080;i:1;R:799;}s:17:"8:todo-form-email";a:2:{i:0;R:16080;i:1;R:799;}s:18:"8:todo-form-submit";a:2:{i:0;R:16080;i:1;R:799;}s:12:"8:right-todo";a:2:{i:0;R:16080;i:1;R:799;}s:18:"8:right-todosubmit";a:2:{i:0;R:16080;i:1;R:799;}s:10:"8:tasklist";a:2:{i:0;s:13:"ext-todotasks";i:1;R:799;}s:22:"8:tasklist-parser-desc";a:2:{i:0;R:16107;i:1;R:799;}s:23:"8:tasklist-special-desc";a:2:{i:0;R:16107;i:1;R:799;}s:19:"8:tasklistbyproject";a:2:{i:0;R:16107;i:1;R:799;}s:24:"8:tasklistunknownproject";a:2:{i:0;R:16107;i:1;R:799;}s:20:"8:tasklistunspecuser";a:2:{i:0;R:16107;i:1;R:799;}s:23:"8:tasklistincorrectuser";a:2:{i:0;R:16107;i:1;R:799;}s:15:"8:tasklistemail";a:2:{i:0;R:16107;i:1;R:799;}s:22:"8:tasklistemailsubject";a:2:{i:0;R:16107;i:1;R:799;}s:17:"8:tasklistmytasks";a:2:{i:0;R:16107;i:1;R:799;}s:22:"8:tasklistbyprojectbad";a:2:{i:0;R:16107;i:1;R:799;}s:20:"8:tasklistbyprojname";a:2:{i:0;R:16107;i:1;R:799;}s:20:"8:tasklistchooseproj";a:2:{i:0;R:16107;i:1;R:799;}s:18:"8:tasklistprojdisp";a:2:{i:0;R:16107;i:1;R:799;}s:16:"8:tasklistbyname";a:2:{i:0;R:16107;i:1;R:799;}s:25:"8:tasklistnowguseprojects";a:2:{i:0;R:16107;i:1;R:799;}s:20:"8:tasklistnoprojects";a:2:{i:0;R:16107;i:1;R:799;}s:19:"8:tasklistemailbody";a:2:{i:0;R:16107;i:1;R:799;}s:24:"8:todotasksvalidprojects";a:2:{i:0;R:16107;i:1;R:799;}s:14:"8:tooltip-desc";a:2:{i:0;s:11:"ext-tooltip";i:1;R:799;}s:12:"8:firststeps";a:3:{i:0;s:24:"ext-translate-firststeps";i:1;R:799;i:2;R:8537;}s:17:"8:firststeps-desc";a:3:{i:0;R:16129;i:1;R:799;i:2;R:8537;}s:29:"8:translate-fs-pagetitle-done";a:3:{i:0;R:16129;i:1;R:799;i:2;R:8537;}s:32:"8:translate-fs-pagetitle-pending";a:3:{i:0;R:16129;i:1;R:799;i:2;R:8537;}s:24:"8:translate-fs-pagetitle";a:3:{i:0;R:16129;i:1;R:799;i:2;R:8537;}s:27:"8:translate-fs-signup-title";a:3:{i:0;R:16129;i:1;R:799;i:2;R:8537;}s:29:"8:translate-fs-settings-title";a:3:{i:0;R:16129;i:1;R:799;i:2;R:8537;}s:29:"8:translate-fs-userpage-title";a:3:{i:0;R:16129;i:1;R:799;i:2;R:8537;}s:32:"8:translate-fs-permissions-title";a:3:{i:0;R:16129;i:1;R:799;i:2;R:8537;}s:27:"8:translate-fs-target-title";a:3:{i:0;R:16129;i:1;R:799;i:2;R:8537;}s:26:"8:translate-fs-email-title";a:3:{i:0;R:16129;i:1;R:799;i:2;R:8537;}s:20:"8:translate-fs-intro";a:3:{i:0;R:16129;i:1;R:799;i:2;R:8537;}s:29:"8:translate-fs-selectlanguage";a:3:{i:0;R:16129;i:1;R:799;i:2;R:8537;}s:33:"8:translate-fs-settings-planguage";a:3:{i:0;R:16129;i:1;R:799;i:2;R:8537;}s:38:"8:translate-fs-settings-planguage-desc";a:3:{i:0;R:16129;i:1;R:799;i:2;R:8537;}s:33:"8:translate-fs-settings-slanguage";a:3:{i:0;R:16129;i:1;R:799;i:2;R:8537;}s:38:"8:translate-fs-settings-slanguage-desc";a:3:{i:0;R:16129;i:1;R:799;i:2;R:8537;}s:30:"8:translate-fs-settings-submit";a:3:{i:0;R:16129;i:1;R:799;i:2;R:8537;}s:31:"8:translate-fs-userpage-level-n";a:3:{i:0;R:16129;i:1;R:799;i:2;R:8537;}s:31:"8:translate-fs-userpage-level-5";a:3:{i:0;R:16129;i:1;R:799;i:2;R:8537;}s:31:"8:translate-fs-userpage-level-4";a:3:{i:0;R:16129;i:1;R:799;i:2;R:8537;}s:31:"8:translate-fs-userpage-level-3";a:3:{i:0;R:16129;i:1;R:799;i:2;R:8537;}s:31:"8:translate-fs-userpage-level-2";a:3:{i:0;R:16129;i:1;R:799;i:2;R:8537;}s:31:"8:translate-fs-userpage-level-1";a:3:{i:0;R:16129;i:1;R:799;i:2;R:8537;}s:28:"8:translate-fs-userpage-help";a:3:{i:0;R:16129;i:1;R:799;i:2;R:8537;}s:30:"8:translate-fs-userpage-submit";a:3:{i:0;R:16129;i:1;R:799;i:2;R:8537;}s:28:"8:translate-fs-userpage-done";a:3:{i:0;R:16129;i:1;R:799;i:2;R:8537;}s:36:"8:translate-fs-permissions-planguage";a:3:{i:0;R:16129;i:1;R:799;i:2;R:8537;}s:31:"8:translate-fs-permissions-help";a:3:{i:0;R:16129;i:1;R:799;i:2;R:8537;}s:34:"8:translate-fs-permissions-pending";a:3:{i:0;R:16129;i:1;R:799;i:2;R:8537;}s:33:"8:translate-fs-permissions-submit";a:3:{i:0;R:16129;i:1;R:799;i:2;R:8537;}s:26:"8:translate-fs-target-text";a:3:{i:0;R:16129;i:1;R:799;i:2;R:8537;}s:25:"8:translate-fs-email-text";a:3:{i:0;R:16129;i:1;R:799;i:2;R:8537;}s:33:"8:translategroupdescriptions-desc";a:2:{i:0;s:31:"ext-translate-groupdescriptions";i:1;R:799;}s:29:"8:translate-group-desc-nodesc";a:2:{i:0;R:16163;i:1;R:799;}s:36:"8:translate-group-desc-mediawikicore";a:2:{i:0;R:16163;i:1;R:799;}s:40:"8:translate-group-desc-mediawikimostused";a:2:{i:0;R:16163;i:1;R:799;}s:42:"8:translate-group-desc-mediawikiextensions";a:2:{i:0;R:16163;i:1;R:799;}s:33:"8:translate-group-desc-collection";a:2:{i:0;R:16163;i:1;R:799;}s:34:"8:translate-group-desc-flaggedrevs";a:2:{i:0;R:16163;i:1;R:799;}s:37:"8:translate-group-desc-readerfeedback";a:2:{i:0;R:16163;i:1;R:799;}s:31:"8:translate-group-desc-semantic";a:2:{i:0;R:16163;i:1;R:799;}s:36:"8:translate-group-desc-socialprofile";a:2:{i:0;R:16163;i:1;R:799;}s:32:"8:translate-group-desc-translate";a:2:{i:0;R:16163;i:1;R:799;}s:38:"8:translate-group-desc-wikiaextensions";a:2:{i:0;R:16163;i:1;R:799;}s:42:"8:translate-group-desc-wikimediaextensions";a:2:{i:0;R:16163;i:1;R:799;}s:47:"8:translate-group-desc-wikimediaextensions-main";a:2:{i:0;R:16163;i:1;R:799;}s:30:"8:translate-group-desc-uniwiki";a:2:{i:0;R:16163;i:1;R:799;}s:25:"8:translate-group-desc-ui";a:2:{i:0;R:16163;i:1;R:799;}s:40:"8:translate-group-desc-translatablepages";a:2:{i:0;R:16163;i:1;R:799;}s:17:"8:bw-desc-freecol";a:2:{i:0;R:16163;i:1;R:799;}s:18:"8:bw-desc-fudforum";a:2:{i:0;R:16163;i:1;R:799;}s:18:"8:bw-desc-mantisbt";a:2:{i:0;R:16163;i:1;R:799;}s:26:"8:translate-group-desc-eol";a:2:{i:0;R:16163;i:1;R:799;}s:28:"8:translate-group-desc-ihris";a:2:{i:0;R:16163;i:1;R:799;}s:35:"8:translate-group-desc-ihris-common";a:2:{i:0;R:16163;i:1;R:799;}s:33:"8:translate-group-desc-ihris-i2ce";a:2:{i:0;R:16163;i:1;R:799;}s:35:"8:translate-group-desc-ihris-manage";a:2:{i:0;R:16163;i:1;R:799;}s:36:"8:translate-group-desc-ihris-qualify";a:2:{i:0;R:16163;i:1;R:799;}s:28:"8:translate-group-desc-kiwix";a:2:{i:0;R:16163;i:1;R:799;}s:43:"8:translate-group-desc-mantisbt-plugin-core";a:2:{i:0;R:16163;i:1;R:799;}s:44:"8:translate-group-desc-mediawiki-core-branch";a:2:{i:0;R:16163;i:1;R:799;}s:28:"8:translate-group-desc-mifos";a:2:{i:0;R:16163;i:1;R:799;}s:17:"8:bw-desc-mwlibrl";a:2:{i:0;R:16163;i:1;R:799;}s:14:"8:bw-desc-nocc";a:2:{i:0;R:16163;i:1;R:799;}s:29:"8:translate-group-desc-okawix";a:2:{i:0;R:16163;i:1;R:799;}s:20:"8:bw-desc-openimages";a:2:{i:0;R:16163;i:1;R:799;}s:53:"8:translate-group-desc-openimages-verifyemailtemplate";a:2:{i:0;R:16163;i:1;R:799;}s:37:"8:translate-group-desc-openimages-all";a:2:{i:0;R:16163;i:1;R:799;}s:20:"8:bw-desc-openlayers";a:2:{i:0;R:16163;i:1;R:799;}s:23:"8:bw-desc-openstreetmap";a:2:{i:0;R:16163;i:1;R:799;}s:18:"8:bw-desc-osm-site";a:2:{i:0;R:16163;i:1;R:799;}s:32:"8:translate-group-desc-potlatch2";a:2:{i:0;R:16163;i:1;R:799;}s:34:"8:translate-group-desc-pywikipedia";a:2:{i:0;R:16163;i:1;R:799;}s:17:"8:bw-desc-shapado";a:2:{i:0;R:16163;i:1;R:799;}s:19:"8:bw-desc-statusnet";a:2:{i:0;R:16163;i:1;R:799;}s:39:"8:translate-group-desc-statusnet-plugin";a:2:{i:0;R:16163;i:1;R:799;}s:28:"8:translate-group-desc-tsint";a:2:{i:0;R:16163;i:1;R:799;}s:19:"8:bw-desc-wikiblame";a:2:{i:0;R:16163;i:1;R:799;}s:20:"8:bw-desc-wikireader";a:2:{i:0;R:16163;i:1;R:799;}s:38:"8:translate-group-desc-wikipediamobile";a:2:{i:0;R:16163;i:1;R:799;}s:14:"8:translatesvg";a:2:{i:0;s:16:"ext-translatesvg";i:1;R:799;}s:19:"8:translatesvg-desc";a:2:{i:0;R:16212;i:1;R:799;}s:21:"8:translatesvg-legend";a:2:{i:0;R:16212;i:1;R:799;}s:19:"8:translatesvg-page";a:2:{i:0;R:16212;i:1;R:799;}s:21:"8:translatesvg-submit";a:2:{i:0;R:16212;i:1;R:799;}s:22:"8:translatesvg-summary";a:2:{i:0;R:16212;i:1;R:799;}s:18:"8:translatesvg-add";a:2:{i:0;R:16212;i:1;R:799;}s:30:"8:translatesvg-xcoordinate-pre";a:2:{i:0;R:16212;i:1;R:799;}s:30:"8:translatesvg-ycoordinate-pre";a:2:{i:0;R:16212;i:1;R:799;}s:22:"8:translatesvg-specify";a:2:{i:0;R:16212;i:1;R:799;}s:27:"8:translatesvg-fallbackdesc";a:2:{i:0;R:16212;i:1;R:799;}s:22:"8:translatesvg-qqqdesc";a:2:{i:0;R:16212;i:1;R:799;}s:21:"8:translatesvg-nodesc";a:2:{i:0;R:16212;i:1;R:799;}s:21:"8:translatesvg-remove";a:2:{i:0;R:16212;i:1;R:799;}s:27:"8:translatesvg-unsuccessful";a:2:{i:0;R:16212;i:1;R:799;}s:26:"8:translatesvg-toggle-view";a:2:{i:0;R:16212;i:1;R:799;}s:26:"8:translatesvg-toggle-hide";a:2:{i:0;R:16212;i:1;R:799;}s:18:"8:translatorsignup";a:2:{i:0;s:28:"ext-translationnotifications";i:1;R:799;}s:31:"8:translationnotifications-desc";a:2:{i:0;R:16230;i:1;R:799;}s:31:"8:translationnotifications-info";a:2:{i:0;R:16230;i:1;R:799;}s:35:"8:translationnotifications-username";a:2:{i:0;R:16230;i:1;R:799;}s:38:"8:translationnotifications-emailstatus";a:2:{i:0;R:16230;i:1;R:799;}s:42:"8:translationnotifications-email-confirmed";a:2:{i:0;R:16230;i:1;R:799;}s:44:"8:translationnotifications-email-unconfirmed";a:2:{i:0;R:16230;i:1;R:799;}s:39:"8:translationnotifications-email-notset";a:2:{i:0;R:16230;i:1;R:799;}s:36:"8:translationnotifications-languages";a:2:{i:0;R:16230;i:1;R:799;}s:31:"8:translationnotifications-lang";a:2:{i:0;R:16230;i:1;R:799;}s:33:"8:translationnotifications-nolang";a:2:{i:0;R:16230;i:1;R:799;}s:34:"8:translationnotifications-contact";a:2:{i:0;R:16230;i:1;R:799;}s:40:"8:translationnotifications-cmethod-email";a:2:{i:0;R:16230;i:1;R:799;}s:43:"8:translationnotifications-cmethod-talkpage";a:2:{i:0;R:16230;i:1;R:799;}s:53:"8:translationnotifications-cmethod-talkpage-elsewhere";a:2:{i:0;R:16230;i:1;R:799;}s:39:"8:translationnotifications-cmethod-feed";a:2:{i:0;R:16230;i:1;R:799;}s:37:"8:translationnotifications-cmethod-no";a:2:{i:0;R:16230;i:1;R:799;}s:36:"8:translationnotifications-frequency";a:2:{i:0;R:16230;i:1;R:799;}s:38:"8:translationnotifications-freq-always";a:2:{i:0;R:16230;i:1;R:799;}s:36:"8:translationnotifications-freq-week";a:2:{i:0;R:16230;i:1;R:799;}s:37:"8:translationnotifications-freq-month";a:2:{i:0;R:16230;i:1;R:799;}s:38:"8:translationnotifications-freq-weekly";a:2:{i:0;R:16230;i:1;R:799;}s:39:"8:translationnotifications-freq-monthly";a:2:{i:0;R:16230;i:1;R:799;}s:33:"8:translationnotifications-submit";a:2:{i:0;R:16230;i:1;R:799;}s:19:"8:notifytranslators";a:2:{i:0;R:16230;i:1;R:799;}s:51:"8:translationnotifications-send-notification-button";a:2:{i:0;R:16230;i:1;R:799;}s:41:"8:translationnotifications-deadline-label";a:2:{i:0;R:16230;i:1;R:799;}s:52:"8:translationnotifications-languages-to-notify-label";a:2:{i:0;R:16230;i:1;R:799;}s:35:"8:translationnotifications-priority";a:2:{i:0;R:16230;i:1;R:799;}s:40:"8:translationnotifications-priority-high";a:2:{i:0;R:16230;i:1;R:799;}s:42:"8:translationnotifications-priority-medium";a:2:{i:0;R:16230;i:1;R:799;}s:39:"8:translationnotifications-priority-low";a:2:{i:0;R:16230;i:1;R:799;}s:41:"8:translationnotifications-priority-unset";a:2:{i:0;R:16230;i:1;R:799;}s:49:"8:translationnotifications-translatablepage-title";a:2:{i:0;R:16230;i:1;R:799;}s:54:"8:translationnotifications-error-no-translatable-pages";a:2:{i:0;R:16230;i:1;R:799;}s:40:"8:translationnotifications-email-subject";a:2:{i:0;R:16230;i:1;R:799;}s:37:"8:translationnotifications-email-body";a:2:{i:0;R:16230;i:1;R:799;}s:41:"8:translationnotifications-email-priority";a:2:{i:0;R:16230;i:1;R:799;}s:41:"8:translationnotifications-email-deadline";a:2:{i:0;R:16230;i:1;R:799;}s:40:"8:logentry-translationnotifications-sent";a:2:{i:0;R:16230;i:1;R:799;}s:28:"8:log-name-notifytranslators";a:2:{i:0;R:16230;i:1;R:799;}s:37:"8:translationnotifications-sent-title";a:2:{i:0;R:16230;i:1;R:799;}s:36:"8:translationnotifications-sent-body";a:2:{i:0;R:16230;i:1;R:799;}s:21:"8:transliterator-desc";a:2:{i:0;s:18:"ext-transliterator";i:1;R:799;}s:32:"8:transliterator-error-ambiguous";a:2:{i:0;R:16274;i:1;R:799;}s:29:"8:transliterator-error-syntax";a:2:{i:0;R:16274;i:1;R:799;}s:32:"8:transliterator-error-rulecount";a:2:{i:0;R:16274;i:1;R:799;}s:31:"8:transliterator-error-rulesize";a:2:{i:0;R:16274;i:1;R:799;}s:29:"8:transliterator-error-prefix";a:2:{i:0;R:16274;i:1;R:799;}s:18:"8:treeandmenu-desc";a:2:{i:0;s:15:"ext-treeandmenu";i:1;R:799;}s:18:"8:trustedmath-desc";a:2:{i:0;s:15:"ext-trustedmath";i:1;R:799;}s:30:"8:trustedmath-permission-error";a:2:{i:0;R:16283;i:1;R:799;}s:24:"8:trustedmath-path-error";a:2:{i:0;R:16283;i:1;R:799;}s:27:"8:trustedmath-convert-error";a:2:{i:0;R:16283;i:1;R:799;}s:23:"8:trustedmath-not-found";a:2:{i:0;R:16283;i:1;R:799;}s:18:"8:ts-citegen-title";a:2:{i:0;s:14:"ext-ts-citegen";i:1;R:799;}s:17:"8:ts-citegen-send";a:2:{i:0;R:16289;i:1;R:799;}s:24:"8:ts-citegen-input-title";a:2:{i:0;R:16289;i:1;R:799;}s:23:"8:ts-citegen-input-text";a:2:{i:0;R:16289;i:1;R:799;}s:38:"8:ts-citegen-option-append-author-link";a:2:{i:0;R:16289;i:1;R:799;}s:35:"8:ts-citegen-option-append-newlines";a:2:{i:0;R:16289;i:1;R:799;}s:34:"8:ts-citegen-option-add-references";a:2:{i:0;R:16289;i:1;R:799;}s:28:"8:ts-citegen-option-add-list";a:2:{i:0;R:16289;i:1;R:799;}s:25:"8:ts-citegen-output-title";a:2:{i:0;R:16289;i:1;R:799;}s:37:"8:ts-citegen-output-select-disclaimer";a:2:{i:0;R:16289;i:1;R:799;}s:24:"8:ts-citegen-wrong-input";a:2:{i:0;R:16289;i:1;R:799;}s:20:"8:ts-citegen-parsers";a:2:{i:0;R:16289;i:1;R:799;}s:18:"8:ts-citegen-skins";a:2:{i:0;R:16289;i:1;R:799;}s:23:"8:ts-citegen-skin-skins";a:2:{i:0;R:16289;i:1;R:799;}s:30:"8:ts-citegen-skin-outputformat";a:2:{i:0;R:16289;i:1;R:799;}s:26:"8:ts-citegen-template-lang";a:2:{i:0;R:16289;i:1;R:799;}s:26:"8:ts-citegen-sources-title";a:2:{i:0;R:16289;i:1;R:799;}s:25:"8:ts-citegen-sources-text";a:2:{i:0;R:16289;i:1;R:799;}s:26:"8:ts-citegen-sidebar-title";a:2:{i:0;R:16289;i:1;R:799;}s:32:"8:ts-citegen-sidebar-add-firefox";a:2:{i:0;R:16289;i:1;R:799;}s:30:"8:ts-citegen-sidebar-add-opera";a:2:{i:0;R:16289;i:1;R:799;}s:31:"8:ts-citegen-sidebar-add-ie-mac";a:2:{i:0;R:16289;i:1;R:799;}s:39:"8:ts-citegen-sidebar-add-ie-mac-details";a:2:{i:0;R:16289;i:1;R:799;}s:18:"8:ts-citegen-tools";a:2:{i:0;R:16289;i:1;R:799;}s:28:"8:ts-citegen-other-languages";a:2:{i:0;R:16289;i:1;R:799;}s:20:"8:ts-citegen-save-it";a:2:{i:0;R:16289;i:1;R:799;}s:25:"8:ts-citegen-errors-title";a:2:{i:0;R:16289;i:1;R:799;}s:28:"8:ts-citegen-unavailable-sql";a:2:{i:0;R:16289;i:1;R:799;}s:26:"8:ts-citegen-base-disabled";a:2:{i:0;R:16289;i:1;R:799;}s:22:"8:ts-kml-on-ol-options";a:2:{i:0;s:14:"ext-ts-kmlonol";i:1;R:799;}s:24:"8:ts-kml-on-ol-languages";a:2:{i:0;R:16319;i:1;R:799;}s:25:"8:ts-kml-on-ol-thumbnails";a:2:{i:0;R:16319;i:1;R:799;}s:19:"8:ts-kml-on-ol-help";a:2:{i:0;R:16319;i:1;R:799;}s:18:"8:ts-kml-on-ol-all";a:2:{i:0;R:16319;i:1;R:799;}s:21:"8:ts-kml-on-ol-map-by";a:2:{i:0;R:16319;i:1;R:799;}s:28:"8:ts-kml-on-ol-openstreetmap";a:2:{i:0;R:16319;i:1;R:799;}s:24:"8:ts-kml-on-ol-wikipedia";a:2:{i:0;R:16319;i:1;R:799;}s:23:"8:toolbase-header-title";a:2:{i:0;s:22:"ext-ts-soxred-toolbase";i:1;R:799;}s:22:"8:toolbase-header-bugs";a:2:{i:0;R:16328;i:1;R:799;}s:25:"8:toolbase-header-twitter";a:2:{i:0;R:16328;i:1;R:799;}s:28:"8:toolbase-header-sitenotice";a:2:{i:0;R:16328;i:1;R:799;}s:17:"8:toolbase-replag";a:2:{i:0;R:16328;i:1;R:799;}s:23:"8:toolbase-replag-years";a:2:{i:0;R:16328;i:1;R:799;}s:24:"8:toolbase-replag-months";a:2:{i:0;R:16328;i:1;R:799;}s:23:"8:toolbase-replag-weeks";a:2:{i:0;R:16328;i:1;R:799;}s:22:"8:toolbase-replag-days";a:2:{i:0;R:16328;i:1;R:799;}s:23:"8:toolbase-replag-hours";a:2:{i:0;R:16328;i:1;R:799;}s:25:"8:toolbase-replag-minutes";a:2:{i:0;R:16328;i:1;R:799;}s:25:"8:toolbase-replag-seconds";a:2:{i:0;R:16328;i:1;R:799;}s:26:"8:toolbase-footer-exectime";a:2:{i:0;R:16328;i:1;R:799;}s:24:"8:toolbase-footer-source";a:2:{i:0;R:16328;i:1;R:799;}s:26:"8:toolbase-footer-language";a:2:{i:0;R:16328;i:1;R:799;}s:27:"8:toolbase-footer-translate";a:2:{i:0;R:16328;i:1;R:799;}s:21:"8:toolbase-navigation";a:2:{i:0;R:16328;i:1;R:799;}s:30:"8:toolbase-navigation-homepage";a:2:{i:0;R:16328;i:1;R:799;}s:25:"8:toolbase-navigation-api";a:2:{i:0;R:16328;i:1;R:799;}s:29:"8:toolbase-navigation-user_id";a:2:{i:0;R:16328;i:1;R:799;}s:31:"8:toolbase-navigation-autoedits";a:2:{i:0;R:16328;i:1;R:799;}s:24:"8:toolbase-userid-submit";a:2:{i:0;R:16328;i:1;R:799;}s:23:"8:toolbase-userid-title";a:2:{i:0;R:16328;i:1;R:799;}s:24:"8:toolbase-userid-result";a:2:{i:0;R:16328;i:1;R:799;}s:26:"8:toolbase-autoedits-title";a:2:{i:0;R:16328;i:1;R:799;}s:27:"8:toolbase-autoedits-submit";a:2:{i:0;R:16328;i:1;R:799;}s:32:"8:toolbase-autoedits-approximate";a:2:{i:0;R:16328;i:1;R:799;}s:30:"8:toolbase-autoedits-totalauto";a:2:{i:0;R:16328;i:1;R:799;}s:29:"8:toolbase-autoedits-totalall";a:2:{i:0;R:16328;i:1;R:799;}s:24:"8:toolbase-autoedits-pct";a:2:{i:0;R:16328;i:1;R:799;}s:21:"8:toolbase-main-title";a:2:{i:0;R:16328;i:1;R:799;}s:23:"8:toolbase-main-content";a:2:{i:0;R:16328;i:1;R:799;}s:19:"8:toolbase-main-404";a:2:{i:0;R:16328;i:1;R:799;}s:27:"8:toolbase-main-404-content";a:2:{i:0;R:16328;i:1;R:799;}s:20:"8:toolbase-form-wiki";a:2:{i:0;R:16328;i:1;R:799;}s:23:"8:toolbase-error-nouser";a:2:{i:0;R:16328;i:1;R:799;}s:23:"8:toolbase-error-nowiki";a:2:{i:0;R:16328;i:1;R:799;}s:29:"8:toolbase-error-toomanyedits";a:2:{i:0;R:16328;i:1;R:799;}s:13:"8:tspoll-desc";a:2:{i:0;s:10:"ext-tspoll";i:1;R:799;}s:20:"8:tspoll-fetch-error";a:2:{i:0;R:16367;i:1;R:799;}s:17:"8:tspoll-id-error";a:2:{i:0;R:16367;i:1;R:799;}s:16:"8:tweetanew-desc";a:2:{i:0;s:13:"ext-tweetanew";i:1;R:799;}s:21:"8:tweetanew-accesskey";a:2:{i:0;R:16371;i:1;R:799;}s:21:"8:tweetanew-newaction";a:2:{i:0;R:16371;i:1;R:799;}s:22:"8:tweetanew-newtooltip";a:2:{i:0;R:16371;i:1;R:799;}s:22:"8:tweetanew-editaction";a:2:{i:0;R:16371;i:1;R:799;}s:23:"8:tweetanew-edittooltip";a:2:{i:0;R:16371;i:1;R:799;}s:21:"8:tweetanew-minoredit";a:2:{i:0;R:16371;i:1;R:799;}s:24:"8:tweetanew-authorcredit";a:2:{i:0;R:16371;i:1;R:799;}s:22:"8:tweetanew-newdefault";a:2:{i:0;R:16371;i:1;R:799;}s:16:"8:tweetanew-new1";a:2:{i:0;R:16371;i:1;R:799;}s:16:"8:tweetanew-new2";a:2:{i:0;R:16371;i:1;R:799;}s:16:"8:tweetanew-new3";a:2:{i:0;R:16371;i:1;R:799;}s:23:"8:tweetanew-editdefault";a:2:{i:0;R:16371;i:1;R:799;}s:17:"8:tweetanew-edit1";a:2:{i:0;R:16371;i:1;R:799;}s:17:"8:tweetanew-edit2";a:2:{i:0;R:16371;i:1;R:799;}s:17:"8:tweetanew-edit3";a:2:{i:0;R:16371;i:1;R:799;}s:18:"8:ukgeocoding-desc";a:2:{i:0;s:22:"ext-ukgeocodingformaps";i:1;R:799;}s:18:"8:ukgeocoding_name";a:2:{i:0;R:16388;i:1;R:799;}s:29:"8:ukgeocoding_couldnotgeocode";a:2:{i:0;R:16388;i:1;R:799;}s:18:"8:unicodeconverter";a:2:{i:0;s:20:"ext-unicodeconverter";i:1;R:799;}s:23:"8:unicodeconverter-desc";a:2:{i:0;R:16392;i:1;R:799;}s:21:"8:unicodeconverter-ok";a:2:{i:0;R:16392;i:1;R:799;}s:26:"8:unicodeconverter-oldtext";a:2:{i:0;R:16392;i:1;R:799;}s:26:"8:unicodeconverter-newtext";a:2:{i:0;R:16392;i:1;R:799;}s:14:"8:authors-desc";a:3:{i:0;s:19:"ext-uniwiki-authors";i:1;R:799;i:2;s:17:"ext-uniwiki-0-all";}s:17:"8:authors_authors";a:3:{i:0;R:16398;i:1;R:799;i:2;R:16399;}s:19:"8:authors_anonymous";a:3:{i:0;R:16398;i:1;R:799;i:2;R:16399;}s:30:"8:autocreatecategorypages-desc";a:3:{i:0;s:35:"ext-uniwiki-autocreatecategorypages";i:1;R:799;i:2;R:16399;}s:30:"8:autocreatecategorypages-stub";a:3:{i:0;R:16403;i:1;R:799;i:2;R:16399;}s:35:"8:autocreatecategorypages-createdby";a:3:{i:0;R:16403;i:1;R:799;i:2;R:16399;}s:32:"8:autocreatecategorypages-editor";a:3:{i:0;R:16403;i:1;R:799;i:2;R:16399;}s:18:"8:catboxattop-desc";a:3:{i:0;s:23:"ext-uniwiki-catboxattop";i:1;R:799;i:2;R:16399;}s:24:"8:catboxattop-categories";a:3:{i:0;R:16408;i:1;R:799;i:2;R:16399;}s:12:"8:createpage";a:3:{i:0;s:22:"ext-uniwiki-createpage";i:1;R:799;i:2;R:16399;}s:19:"8:uwcreatepage-desc";a:3:{i:0;R:16411;i:1;R:799;i:2;R:16399;}s:25:"8:createpage_submitbutton";a:3:{i:0;R:16411;i:1;R:799;i:2;R:16399;}s:25:"8:createpage_instructions";a:3:{i:0;R:16411;i:1;R:799;i:2;R:16399;}s:23:"8:createpage_entertitle";a:3:{i:0;R:16411;i:1;R:799;i:2;R:16399;}s:24:"8:createpage_titleexists";a:3:{i:0;R:16411;i:1;R:799;i:2;R:16399;}s:21:"8:createpage_tryagain";a:3:{i:0;R:16411;i:1;R:799;i:2;R:16399;}s:25:"8:createpage_editexisting";a:3:{i:0;R:16411;i:1;R:799;i:2;R:16399;}s:21:"8:createpage-badtitle";a:3:{i:0;R:16411;i:1;R:799;i:2;R:16399;}s:15:"8:csshooks-desc";a:3:{i:0;s:20:"ext-uniwiki-csshooks";i:1;R:799;i:2;R:16399;}s:9:"8:ct-desc";a:3:{i:0;s:25:"ext-uniwiki-customtoolbar";i:1;R:799;i:2;R:16399;}s:16:"8:ct_bold_sample";a:3:{i:0;R:16423;i:1;R:799;i:2;R:16399;}s:17:"8:ct_bold_tip_ins";a:3:{i:0;R:16423;i:1;R:799;i:2;R:16399;}s:18:"8:ct_bold_tip_wrap";a:3:{i:0;R:16423;i:1;R:799;i:2;R:16399;}s:17:"8:ct_bold_caption";a:3:{i:0;R:16423;i:1;R:799;i:2;R:16399;}s:18:"8:ct_italic_sample";a:3:{i:0;R:16423;i:1;R:799;i:2;R:16399;}s:19:"8:ct_italic_tip_ins";a:3:{i:0;R:16423;i:1;R:799;i:2;R:16399;}s:20:"8:ct_italic_tip_wrap";a:3:{i:0;R:16423;i:1;R:799;i:2;R:16399;}s:19:"8:ct_italic_caption";a:3:{i:0;R:16423;i:1;R:799;i:2;R:16399;}s:20:"8:ct_internal_sample";a:3:{i:0;R:16423;i:1;R:799;i:2;R:16399;}s:21:"8:ct_internal_tip_ins";a:3:{i:0;R:16423;i:1;R:799;i:2;R:16399;}s:22:"8:ct_internal_tip_wrap";a:3:{i:0;R:16423;i:1;R:799;i:2;R:16399;}s:21:"8:ct_internal_caption";a:3:{i:0;R:16423;i:1;R:799;i:2;R:16399;}s:20:"8:ct_external_sample";a:3:{i:0;R:16423;i:1;R:799;i:2;R:16399;}s:21:"8:ct_external_tip_ins";a:3:{i:0;R:16423;i:1;R:799;i:2;R:16399;}s:22:"8:ct_external_tip_wrap";a:3:{i:0;R:16423;i:1;R:799;i:2;R:16399;}s:21:"8:ct_external_caption";a:3:{i:0;R:16423;i:1;R:799;i:2;R:16399;}s:14:"8:ct_image_tip";a:3:{i:0;R:16423;i:1;R:799;i:2;R:16399;}s:18:"8:ct_image_caption";a:3:{i:0;R:16423;i:1;R:799;i:2;R:16399;}s:19:"8:ct_attachment_tip";a:3:{i:0;R:16423;i:1;R:799;i:2;R:16399;}s:23:"8:ct_attachment_caption";a:3:{i:0;R:16423;i:1;R:799;i:2;R:16399;}s:16:"8:ct_math_sample";a:3:{i:0;R:16423;i:1;R:799;i:2;R:16399;}s:17:"8:ct_math_tip_ins";a:3:{i:0;R:16423;i:1;R:799;i:2;R:16399;}s:18:"8:ct_math_tip_wrap";a:3:{i:0;R:16423;i:1;R:799;i:2;R:16399;}s:17:"8:ct_math_caption";a:3:{i:0;R:16423;i:1;R:799;i:2;R:16399;}s:18:"8:ct_nowiki_sample";a:3:{i:0;R:16423;i:1;R:799;i:2;R:16399;}s:19:"8:ct_nowiki_tip_ins";a:3:{i:0;R:16423;i:1;R:799;i:2;R:16399;}s:20:"8:ct_nowiki_tip_wrap";a:3:{i:0;R:16423;i:1;R:799;i:2;R:16399;}s:19:"8:ct_nowiki_caption";a:3:{i:0;R:16423;i:1;R:799;i:2;R:16399;}s:19:"8:ct_horizontal_tip";a:3:{i:0;R:16423;i:1;R:799;i:2;R:16399;}s:23:"8:ct_horizontal_caption";a:3:{i:0;R:16423;i:1;R:799;i:2;R:16399;}s:11:"8:ct_upload";a:3:{i:0;R:16423;i:1;R:799;i:2;R:16399;}s:11:"8:ct_select";a:3:{i:0;R:16423;i:1;R:799;i:2;R:16399;}s:12:"8:ct_caption";a:3:{i:0;R:16423;i:1;R:799;i:2;R:16399;}s:9:"8:ct_link";a:3:{i:0;R:16423;i:1;R:799;i:2;R:16399;}s:11:"8:ct_submit";a:3:{i:0;R:16423;i:1;R:799;i:2;R:16399;}s:10:"8:ct_close";a:3:{i:0;R:16423;i:1;R:799;i:2;R:16399;}s:12:"8:ct_success";a:3:{i:0;R:16423;i:1;R:799;i:2;R:16399;}s:17:"8:ct_popupblocked";a:3:{i:0;R:16423;i:1;R:799;i:2;R:16399;}s:14:"8:ct_user_user";a:3:{i:0;R:16423;i:1;R:799;i:2;R:16399;}s:13:"8:ct_user_tip";a:3:{i:0;R:16423;i:1;R:799;i:2;R:16399;}s:17:"8:ct_user_caption";a:3:{i:0;R:16423;i:1;R:799;i:2;R:16399;}s:16:"8:ct_user_sample";a:3:{i:0;R:16423;i:1;R:799;i:2;R:16399;}s:20:"8:formatchanges-desc";a:3:{i:0;s:25:"ext-uniwiki-formatchanges";i:1;R:799;i:2;R:16399;}s:25:"8:formatchanges-anonymous";a:3:{i:0;R:16467;i:1;R:799;i:2;R:16399;}s:25:"8:formatchanges-createdby";a:3:{i:0;R:16467;i:1;R:799;i:2;R:16399;}s:24:"8:formatchanges-editedby";a:3:{i:0;R:16467;i:1;R:799;i:2;R:16399;}s:19:"8:formatsearch-desc";a:3:{i:0;s:24:"ext-uniwiki-formatsearch";i:1;R:799;i:2;R:16399;}s:10:"8:gep-desc";a:3:{i:0;s:27:"ext-uniwiki-genericeditpage";i:1;R:799;i:2;R:16399;}s:18:"8:gep-emailsubject";a:3:{i:0;R:16474;i:1;R:799;i:2;R:16399;}s:15:"8:gep-emailbody";a:3:{i:0;R:16474;i:1;R:799;i:2;R:16399;}s:18:"8:gep-emailfailure";a:3:{i:0;R:16474;i:1;R:799;i:2;R:16399;}s:18:"8:gep-emailsuccess";a:3:{i:0;R:16474;i:1;R:799;i:2;R:16399;}s:16:"8:gep-categories";a:3:{i:0;R:16474;i:1;R:799;i:2;R:16399;}s:17:"8:gep-addcategory";a:3:{i:0;R:16474;i:1;R:799;i:2;R:16399;}s:23:"8:gep-addcategorybutton";a:3:{i:0;R:16474;i:1;R:799;i:2;R:16399;}s:21:"8:gep-suggestcategory";a:3:{i:0;R:16474;i:1;R:799;i:2;R:16399;}s:27:"8:gep-suggestcategorybutton";a:3:{i:0;R:16474;i:1;R:799;i:2;R:16399;}s:14:"8:gep-sections";a:3:{i:0;R:16474;i:1;R:799;i:2;R:16399;}s:24:"8:gep-sectionnotdisabled";a:3:{i:0;R:16474;i:1;R:799;i:2;R:16399;}s:16:"8:gep-addsection";a:3:{i:0;R:16474;i:1;R:799;i:2;R:16399;}s:22:"8:gep-addsectionbutton";a:3:{i:0;R:16474;i:1;R:799;i:2;R:16399;}s:17:"8:gep-classicmode";a:3:{i:0;R:16474;i:1;R:799;i:2;R:16399;}s:17:"8:gep-genericmode";a:3:{i:0;R:16474;i:1;R:799;i:2;R:16399;}s:27:"8:gep-nosectioninstructions";a:3:{i:0;R:16474;i:1;R:799;i:2;R:16399;}s:18:"8:gep-nocategories";a:3:{i:0;R:16474;i:1;R:799;i:2;R:16399;}s:18:"8:gep-categorypage";a:3:{i:0;R:16474;i:1;R:799;i:2;R:16399;}s:17:"8:javascript-desc";a:3:{i:0;s:22:"ext-uniwiki-javascript";i:1;R:799;i:2;R:16399;}s:14:"8:layouts-desc";a:3:{i:0;s:19:"ext-uniwiki-layouts";i:1;R:799;i:2;R:16399;}s:15:"8:layouts_title";a:3:{i:0;R:16496;i:1;R:799;i:2;R:16399;}s:22:"8:layouts_chooselayout";a:3:{i:0;R:16496;i:1;R:799;i:2;R:16399;}s:18:"8:layouts_nolayout";a:3:{i:0;R:16496;i:1;R:799;i:2;R:16399;}s:18:"8:layouts_continue";a:3:{i:0;R:16496;i:1;R:799;i:2;R:16399;}s:24:"8:layouts_choosecategory";a:3:{i:0;R:16496;i:1;R:799;i:2;R:16399;}s:17:"8:layouts_unknown";a:3:{i:0;R:16496;i:1;R:799;i:2;R:16399;}s:17:"8:layouts_tagline";a:3:{i:0;R:16496;i:1;R:799;i:2;R:16399;}s:28:"8:layouts-layoutcategorypage";a:3:{i:0;R:16496;i:1;R:799;i:2;R:16399;}s:21:"8:mootools12core-desc";a:3:{i:0;s:26:"ext-uniwiki-mootools12core";i:1;R:799;i:2;R:16399;}s:18:"8:specialuserstats";a:2:{i:0;s:19:"ext-usagestatistics";i:1;R:799;}s:17:"8:usagestatistics";a:2:{i:0;R:16508;i:1;R:799;}s:22:"8:usagestatistics-desc";a:2:{i:0;R:16508;i:1;R:799;}s:20:"8:usagestatisticsfor";a:2:{i:0;R:16508;i:1;R:799;}s:28:"8:usagestatisticsforallusers";a:2:{i:0;R:16508;i:1;R:799;}s:25:"8:usagestatisticsinterval";a:2:{i:0;R:16508;i:1;R:799;}s:26:"8:usagestatisticsnamespace";a:2:{i:0;R:16508;i:1;R:799;}s:33:"8:usagestatisticsexcluderedirects";a:2:{i:0;R:16508;i:1;R:799;}s:27:"8:usagestatistics-namespace";a:2:{i:0;R:16508;i:1;R:799;}s:29:"8:usagestatistics-noredirects";a:2:{i:0;R:16508;i:1;R:799;}s:21:"8:usagestatisticstype";a:2:{i:0;R:16508;i:1;R:799;}s:22:"8:usagestatisticsstart";a:2:{i:0;R:16508;i:1;R:799;}s:20:"8:usagestatisticsend";a:2:{i:0;R:16508;i:1;R:799;}s:23:"8:usagestatisticssubmit";a:2:{i:0;R:16508;i:1;R:799;}s:24:"8:usagestatisticsnostart";a:2:{i:0;R:16508;i:1;R:799;}s:22:"8:usagestatisticsnoend";a:2:{i:0;R:16508;i:1;R:799;}s:28:"8:usagestatisticsbadstartend";a:2:{i:0;R:16508;i:1;R:799;}s:28:"8:usagestatisticsintervalday";a:2:{i:0;R:16508;i:1;R:799;}s:29:"8:usagestatisticsintervalweek";a:2:{i:0;R:16508;i:1;R:799;}s:30:"8:usagestatisticsintervalmonth";a:2:{i:0;R:16508;i:1;R:799;}s:28:"8:usagestatisticsincremental";a:2:{i:0;R:16508;i:1;R:799;}s:33:"8:usagestatisticsincremental-text";a:2:{i:0;R:16508;i:1;R:799;}s:27:"8:usagestatisticscumulative";a:2:{i:0;R:16508;i:1;R:799;}s:32:"8:usagestatisticscumulative-text";a:2:{i:0;R:16508;i:1;R:799;}s:26:"8:usagestatisticscalselect";a:2:{i:0;R:16508;i:1;R:799;}s:32:"8:usagestatistics-editindividual";a:2:{i:0;R:16508;i:1;R:799;}s:27:"8:usagestatistics-editpages";a:2:{i:0;R:16508;i:1;R:799;}s:23:"8:right-viewsystemstats";a:2:{i:0;R:16508;i:1;R:799;}s:25:"8:usercontactlink-baduser";a:2:{i:0;s:20:"ext-usercontactlinks";i:1;R:799;}s:23:"8:usercontactlinks-desc";a:2:{i:0;R:16537;i:1;R:799;}s:15:"8:userdebuginfo";a:2:{i:0;s:17:"ext-userdebuginfo";i:1;R:799;}s:20:"8:userdebuginfo-desc";a:2:{i:0;R:16540;i:1;R:799;}s:25:"8:userdebuginfo-useragent";a:2:{i:0;R:16540;i:1;R:799;}s:26:"8:userdebuginfo-remotehost";a:2:{i:0;R:16540;i:1;R:799;}s:26:"8:userdebuginfo-remoteaddr";a:2:{i:0;R:16540;i:1;R:799;}s:19:"8:userdebuginfo-key";a:2:{i:0;R:16540;i:1;R:799;}s:21:"8:userdebuginfo-value";a:2:{i:0;R:16540;i:1;R:799;}s:24:"8:userdebuginfo-language";a:2:{i:0;R:16540;i:1;R:799;}s:20:"8:userfunctions-desc";a:2:{i:0;s:17:"ext-userfunctions";i:1;R:799;}s:17:"8:userimages-desc";a:2:{i:0;s:14:"ext-userimages";i:1;R:799;}s:20:"8:userimages-caption";a:2:{i:0;R:16551;i:1;R:799;}s:19:"8:userimages-noname";a:2:{i:0;R:16551;i:1;R:799;}s:21:"8:userimages-noimages";a:2:{i:0;R:16551;i:1;R:799;}s:11:"8:usermerge";a:2:{i:0;s:13:"ext-usermerge";i:1;R:799;}s:16:"8:usermerge-desc";a:2:{i:0;R:16556;i:1;R:799;}s:22:"8:usermerge-badolduser";a:2:{i:0;R:16556;i:1;R:799;}s:22:"8:usermerge-badnewuser";a:2:{i:0;R:16556;i:1;R:799;}s:21:"8:usermerge-nonewuser";a:2:{i:0;R:16556;i:1;R:799;}s:21:"8:usermerge-noolduser";a:2:{i:0;R:16556;i:1;R:799;}s:20:"8:usermerge-fieldset";a:2:{i:0;R:16556;i:1;R:799;}s:19:"8:usermerge-olduser";a:2:{i:0;R:16556;i:1;R:799;}s:19:"8:usermerge-newuser";a:2:{i:0;R:16556;i:1;R:799;}s:25:"8:usermerge-deleteolduser";a:2:{i:0;R:16556;i:1;R:799;}s:18:"8:usermerge-submit";a:2:{i:0;R:16556;i:1;R:799;}s:20:"8:usermerge-badtoken";a:2:{i:0;R:16556;i:1;R:799;}s:23:"8:usermerge-userdeleted";a:2:{i:0;R:16556;i:1;R:799;}s:27:"8:usermerge-userdeleted-log";a:2:{i:0;R:16556;i:1;R:799;}s:20:"8:usermerge-updating";a:2:{i:0;R:16556;i:1;R:799;}s:19:"8:usermerge-success";a:2:{i:0;R:16556;i:1;R:799;}s:23:"8:usermerge-success-log";a:2:{i:0;R:16556;i:1;R:799;}s:19:"8:usermerge-logpage";a:2:{i:0;R:16556;i:1;R:799;}s:23:"8:usermerge-logpagetext";a:2:{i:0;R:16556;i:1;R:799;}s:24:"8:usermerge-noselfdelete";a:2:{i:0;R:16556;i:1;R:799;}s:22:"8:usermerge-unmergable";a:2:{i:0;R:16556;i:1;R:799;}s:26:"8:usermerge-protectedgroup";a:2:{i:0;R:16556;i:1;R:799;}s:17:"8:right-usermerge";a:2:{i:0;R:16556;i:1;R:799;}s:21:"8:usermerge-editcount";a:2:{i:0;R:16556;i:1;R:799;}s:29:"8:usermerge-editcount-success";a:2:{i:0;R:16556;i:1;R:799;}s:26:"8:usermerge-autopagedelete";a:2:{i:0;R:16556;i:1;R:799;}s:24:"8:usermerge-page-unmoved";a:2:{i:0;R:16556;i:1;R:799;}s:22:"8:usermerge-page-moved";a:2:{i:0;R:16556;i:1;R:799;}s:20:"8:usermerge-move-log";a:2:{i:0;R:16556;i:1;R:799;}s:24:"8:usermerge-page-deleted";a:2:{i:0;R:16556;i:1;R:799;}s:17:"8:useroptionstats";a:2:{i:0;s:19:"ext-useroptionstats";i:1;R:799;}s:22:"8:useroptionstats-desc";a:2:{i:0;R:16587;i:1;R:799;}s:10:"8:uos-warn";a:2:{i:0;R:16587;i:1;R:799;}s:12:"8:uos-choose";a:2:{i:0;R:16587;i:1;R:799;}s:19:"8:uos-choose-hidden";a:2:{i:0;R:16587;i:1;R:799;}s:13:"8:uos-unknown";a:2:{i:0;R:16587;i:1;R:799;}s:11:"8:uos-other";a:2:{i:0;R:16587;i:1;R:799;}s:11:"8:uos-title";a:2:{i:0;R:16587;i:1;R:799;}s:29:"8:userpageeditprotection-desc";a:2:{i:0;s:26:"ext-userpageeditprotection";i:1;R:799;}s:24:"8:right-editalluserpages";a:2:{i:0;R:16596;i:1;R:799;}s:25:"8:userrightsnotifysubject";a:2:{i:0;s:19:"ext-userrightsnotif";i:1;R:799;}s:22:"8:userrightsnotifybody";a:2:{i:0;R:16599;i:1;R:799;}s:22:"8:userrightsnotif-desc";a:2:{i:0;R:16599;i:1;R:799;}s:19:"8:userthrottle-desc";a:2:{i:0;s:16:"ext-userthrottle";i:1;R:799;}s:40:"8:acct_creation_global_hard_throttle_hit";a:2:{i:0;R:16603;i:1;R:799;}s:16:"8:validator-desc";a:2:{i:0;s:13:"ext-validator";i:1;R:799;}s:19:"8:validator-warning";a:2:{i:0;R:16606;i:1;R:799;}s:17:"8:validator-error";a:2:{i:0;R:16606;i:1;R:799;}s:23:"8:validator-fatal-error";a:2:{i:0;R:16606;i:1;R:799;}s:28:"8:validator_error_parameters";a:2:{i:0;R:16606;i:1;R:799;}s:30:"8:validator_warning_parameters";a:2:{i:0;R:16606;i:1;R:799;}s:37:"8:validator-warning-adittional-errors";a:2:{i:0;R:16606;i:1;R:799;}s:25:"8:validator-error-omitted";a:2:{i:0;R:16606;i:1;R:799;}s:25:"8:validator-error-problem";a:2:{i:0;R:16606;i:1;R:799;}s:34:"8:validator_error_unknown_argument";a:2:{i:0;R:16606;i:1;R:799;}s:34:"8:validator_error_required_missing";a:2:{i:0;R:16606;i:1;R:799;}s:35:"8:validator-error-override-argument";a:2:{i:0;R:16606;i:1;R:799;}s:23:"8:validator-type-string";a:2:{i:0;R:16606;i:1;R:799;}s:23:"8:validator-type-number";a:2:{i:0;R:16606;i:1;R:799;}s:24:"8:validator-type-integer";a:2:{i:0;R:16606;i:1;R:799;}s:22:"8:validator-type-float";a:2:{i:0;R:16606;i:1;R:799;}s:24:"8:validator-type-boolean";a:2:{i:0;R:16606;i:1;R:799;}s:21:"8:validator-type-char";a:2:{i:0;R:16606;i:1;R:799;}s:29:"8:validator-listerrors-errors";a:2:{i:0;R:16606;i:1;R:799;}s:39:"8:validator-listerrors-severity-message";a:2:{i:0;R:16606;i:1;R:799;}s:28:"8:validator-listerrors-minor";a:2:{i:0;R:16606;i:1;R:799;}s:26:"8:validator-listerrors-low";a:2:{i:0;R:16606;i:1;R:799;}s:29:"8:validator-listerrors-normal";a:2:{i:0;R:16606;i:1;R:799;}s:27:"8:validator-listerrors-high";a:2:{i:0;R:16606;i:1;R:799;}s:28:"8:validator-listerrors-fatal";a:2:{i:0;R:16606;i:1;R:799;}s:34:"8:validator-listerrors-description";a:2:{i:0;R:16606;i:1;R:799;}s:38:"8:validator-listerrors-par-minseverity";a:2:{i:0;R:16606;i:1;R:799;}s:32:"8:validator-describe-description";a:2:{i:0;R:16606;i:1;R:799;}s:29:"8:validator-describe-notfound";a:2:{i:0;R:16606;i:1;R:799;}s:35:"8:validator-describe-descriptionmsg";a:2:{i:0;R:16606;i:1;R:799;}s:28:"8:validator-describe-aliases";a:2:{i:0;R:16606;i:1;R:799;}s:35:"8:validator-describe-parserfunction";a:2:{i:0;R:16606;i:1;R:799;}s:33:"8:validator-describe-tagextension";a:2:{i:0;R:16606;i:1;R:799;}s:30:"8:validator-describe-bothhooks";a:2:{i:0;R:16606;i:1;R:799;}s:30:"8:validator-describe-par-hooks";a:2:{i:0;R:16606;i:1;R:799;}s:28:"8:validator-describe-par-pre";a:2:{i:0;R:16606;i:1;R:799;}s:33:"8:validator-describe-par-language";a:2:{i:0;R:16606;i:1;R:799;}s:29:"8:validator-describe-listtype";a:2:{i:0;R:16606;i:1;R:799;}s:26:"8:validator-describe-empty";a:2:{i:0;R:16606;i:1;R:799;}s:29:"8:validator-describe-required";a:2:{i:0;R:16606;i:1;R:799;}s:37:"8:validator-describe-header-parameter";a:2:{i:0;R:16606;i:1;R:799;}s:35:"8:validator-describe-header-aliases";a:2:{i:0;R:16606;i:1;R:799;}s:32:"8:validator-describe-header-type";a:2:{i:0;R:16606;i:1;R:799;}s:35:"8:validator-describe-header-default";a:2:{i:0;R:16606;i:1;R:799;}s:39:"8:validator-describe-header-description";a:2:{i:0;R:16606;i:1;R:799;}s:31:"8:validator-describe-parameters";a:2:{i:0;R:16606;i:1;R:799;}s:27:"8:validator-describe-syntax";a:2:{i:0;R:16606;i:1;R:799;}s:27:"8:validator-describe-tagmin";a:2:{i:0;R:16606;i:1;R:799;}s:27:"8:validator-describe-tagmax";a:2:{i:0;R:16606;i:1;R:799;}s:31:"8:validator-describe-tagdefault";a:2:{i:0;R:16606;i:1;R:799;}s:26:"8:validator-describe-pfmin";a:2:{i:0;R:16606;i:1;R:799;}s:26:"8:validator-describe-pfmax";a:2:{i:0;R:16606;i:1;R:799;}s:30:"8:validator-describe-pfdefault";a:2:{i:0;R:16606;i:1;R:799;}s:28:"8:validator-describe-autogen";a:2:{i:0;R:16606;i:1;R:799;}s:32:"8:validator_error_empty_argument";a:2:{i:0;R:16606;i:1;R:799;}s:32:"8:validator_error_must_be_number";a:2:{i:0;R:16606;i:1;R:799;}s:33:"8:validator_error_must_be_integer";a:2:{i:0;R:16606;i:1;R:799;}s:31:"8:validator_error_must_be_title";a:2:{i:0;R:16606;i:1;R:799;}s:40:"8:validator_error_must_be_existing_title";a:2:{i:0;R:16606;i:1;R:799;}s:31:"8:validator-error-must-be-float";a:2:{i:0;R:16606;i:1;R:799;}s:31:"8:validator_error_invalid_range";a:2:{i:0;R:16606;i:1;R:799;}s:31:"8:validator-error-invalid-regex";a:2:{i:0;R:16606;i:1;R:799;}s:32:"8:validator-error-invalid-length";a:2:{i:0;R:16606;i:1;R:799;}s:38:"8:validator-error-invalid-length-range";a:2:{i:0;R:16606;i:1;R:799;}s:34:"8:validator_error_invalid_argument";a:2:{i:0;R:16606;i:1;R:799;}s:37:"8:validator_list_error_empty_argument";a:2:{i:0;R:16606;i:1;R:799;}s:37:"8:validator_list_error_must_be_number";a:2:{i:0;R:16606;i:1;R:799;}s:38:"8:validator_list_error_must_be_integer";a:2:{i:0;R:16606;i:1;R:799;}s:36:"8:validator_list_error_must_be_title";a:2:{i:0;R:16606;i:1;R:799;}s:45:"8:validator_list_error_must_be_existing_title";a:2:{i:0;R:16606;i:1;R:799;}s:36:"8:validator-list-error-must-be-float";a:2:{i:0;R:16606;i:1;R:799;}s:36:"8:validator_list_error_invalid_range";a:2:{i:0;R:16606;i:1;R:799;}s:36:"8:validator-list-error-invalid-regex";a:2:{i:0;R:16606;i:1;R:799;}s:39:"8:validator_list_error_invalid_argument";a:2:{i:0;R:16606;i:1;R:799;}s:35:"8:validator-list-error-accepts-only";a:2:{i:0;R:16606;i:1;R:799;}s:43:"8:validator-list-error-accepts-only-omitted";a:2:{i:0;R:16606;i:1;R:799;}s:30:"8:validator_error_accepts_only";a:2:{i:0;R:16606;i:1;R:799;}s:38:"8:validator-error-accepts-only-omitted";a:2:{i:0;R:16606;i:1;R:799;}s:24:"8:validator_list_omitted";a:2:{i:0;R:16606;i:1;R:799;}s:14:"8:variablepage";a:2:{i:0;s:16:"ext-variablepage";i:1;R:799;}s:27:"8:variablepage-navlink_text";a:2:{i:0;R:16686;i:1;R:799;}s:19:"8:variablepage-desc";a:2:{i:0;R:16686;i:1;R:799;}s:16:"8:variables-desc";a:2:{i:0;s:13:"ext-variables";i:1;R:799;}s:6:"8:vote";a:2:{i:0;s:8:"ext-vote";i:1;R:799;}s:11:"8:vote-desc";a:2:{i:0;R:16692;i:1;R:799;}s:13:"8:vote-header";a:2:{i:0;R:16692;i:1;R:799;}s:14:"8:vote-current";a:2:{i:0;R:16692;i:1;R:799;}s:13:"8:vote-legend";a:2:{i:0;R:16692;i:1;R:799;}s:14:"8:vote-caption";a:2:{i:0;R:16692;i:1;R:799;}s:14:"8:vote-choices";a:2:{i:0;R:16692;i:1;R:799;}s:13:"8:vote-submit";a:2:{i:0;R:16692;i:1;R:799;}s:17:"8:vote-registered";a:2:{i:0;R:16692;i:1;R:799;}s:19:"8:vote-view-results";a:2:{i:0;R:16692;i:1;R:799;}s:14:"8:vote-results";a:2:{i:0;R:16692;i:1;R:799;}s:21:"8:vote-results-choice";a:2:{i:0;R:16692;i:1;R:799;}s:20:"8:vote-results-count";a:2:{i:0;R:16692;i:1;R:799;}s:19:"8:vote-results-none";a:2:{i:0;R:16692;i:1;R:799;}s:12:"8:vote-login";a:2:{i:0;R:16692;i:1;R:799;}s:21:"8:vote-invalid-choice";a:2:{i:0;R:16692;i:1;R:799;}s:12:"8:right-vote";a:2:{i:0;R:16692;i:1;R:799;}s:17:"8:right-voteadmin";a:2:{i:0;R:16692;i:1;R:799;}s:10:"8:watchers";a:2:{i:0;s:12:"ext-watchers";i:1;R:799;}s:15:"8:watchers-desc";a:2:{i:0;R:16711;i:1;R:799;}s:21:"8:watchers_link_title";a:2:{i:0;R:16711;i:1;R:799;}s:24:"8:watchers_error_article";a:2:{i:0;R:16711;i:1;R:799;}s:29:"8:watchers-error-invalid-page";a:2:{i:0;R:16711;i:1;R:799;}s:17:"8:watchers_header";a:2:{i:0;R:16711;i:1;R:799;}s:24:"8:watchers_noone_watches";a:2:{i:0;R:16711;i:1;R:799;}s:20:"8:watchers_x_or_more";a:2:{i:0;R:16711;i:1;R:799;}s:22:"8:watchers_less_than_x";a:2:{i:0;R:16711;i:1;R:799;}s:14:"8:watchers-num";a:2:{i:0;R:16711;i:1;R:799;}s:21:"8:right-watchers-list";a:2:{i:0;R:16711;i:1;R:799;}s:15:"8:watchsubpages";a:2:{i:0;s:17:"ext-watchsubpages";i:1;R:799;}s:32:"8:watchsubpages-addedtowatchlist";a:2:{i:0;R:16723;i:1;R:799;}s:25:"8:watchsubpages-addtitles";a:2:{i:0;R:16723;i:1;R:799;}s:36:"8:watchsubpages-addtitlestowatchlist";a:2:{i:0;R:16723;i:1;R:799;}s:20:"8:watchsubpages-desc";a:2:{i:0;R:16723;i:1;R:799;}s:20:"8:watchsubpages-form";a:2:{i:0;R:16723;i:1;R:799;}s:9:"8:webchat";a:2:{i:0;s:11:"ext-webchat";i:1;R:799;}s:14:"8:webchat-desc";a:2:{i:0;R:16730;i:1;R:799;}s:16:"8:webchat-header";a:2:{i:0;R:16730;i:1;R:799;}s:15:"8:right-webchat";a:2:{i:0;R:16730;i:1;R:799;}s:25:"8:inplace_access_disabled";a:2:{i:0;s:12:"ext-webstore";i:1;R:799;}s:23:"8:inplace_access_denied";a:2:{i:0;R:16735;i:1;R:799;}s:24:"8:inplace_scaler_no_temp";a:2:{i:0;R:16735;i:1;R:799;}s:34:"8:inplace_scaler_not_enough_params";a:2:{i:0;R:16735;i:1;R:799;}s:30:"8:inplace_scaler_invalid_image";a:2:{i:0;R:16735;i:1;R:799;}s:23:"8:inplace_scaler_failed";a:2:{i:0;R:16735;i:1;R:799;}s:27:"8:inplace_scaler_no_handler";a:2:{i:0;R:16735;i:1;R:799;}s:26:"8:inplace_scaler_no_output";a:2:{i:0;R:16735;i:1;R:799;}s:26:"8:inplace_scaler_zero_size";a:2:{i:0;R:16735;i:1;R:799;}s:15:"8:webstore-desc";a:2:{i:0;R:16735;i:1;R:799;}s:17:"8:webstore_access";a:2:{i:0;R:16735;i:1;R:799;}s:23:"8:webstore_path_invalid";a:2:{i:0;R:16735;i:1;R:799;}s:20:"8:webstore_dest_open";a:2:{i:0;R:16735;i:1;R:799;}s:20:"8:webstore_dest_lock";a:2:{i:0;R:16735;i:1;R:799;}s:21:"8:webstore_dest_mkdir";a:2:{i:0;R:16735;i:1;R:799;}s:23:"8:webstore_archive_lock";a:2:{i:0;R:16735;i:1;R:799;}s:24:"8:webstore_archive_mkdir";a:2:{i:0;R:16735;i:1;R:799;}s:19:"8:webstore_src_open";a:2:{i:0;R:16735;i:1;R:799;}s:20:"8:webstore_src_close";a:2:{i:0;R:16735;i:1;R:799;}s:21:"8:webstore_src_delete";a:2:{i:0;R:16735;i:1;R:799;}s:17:"8:webstore_rename";a:2:{i:0;R:16735;i:1;R:799;}s:20:"8:webstore_lock_open";a:2:{i:0;R:16735;i:1;R:799;}s:21:"8:webstore_lock_close";a:2:{i:0;R:16735;i:1;R:799;}s:22:"8:webstore_dest_exists";a:2:{i:0;R:16735;i:1;R:799;}s:20:"8:webstore_temp_open";a:2:{i:0;R:16735;i:1;R:799;}s:20:"8:webstore_temp_copy";a:2:{i:0;R:16735;i:1;R:799;}s:21:"8:webstore_temp_close";a:2:{i:0;R:16735;i:1;R:799;}s:20:"8:webstore_temp_lock";a:2:{i:0;R:16735;i:1;R:799;}s:21:"8:webstore_no_archive";a:2:{i:0;R:16735;i:1;R:799;}s:18:"8:webstore_no_file";a:2:{i:0;R:16735;i:1;R:799;}s:24:"8:webstore_move_uploaded";a:2:{i:0;R:16735;i:1;R:799;}s:23:"8:webstore_invalid_zone";a:2:{i:0;R:16735;i:1;R:799;}s:21:"8:webstore_no_deleted";a:2:{i:0;R:16735;i:1;R:799;}s:15:"8:webstore_curl";a:2:{i:0;R:16735;i:1;R:799;}s:14:"8:webstore_404";a:2:{i:0;R:16735;i:1;R:799;}s:22:"8:webstore_php_warning";a:2:{i:0;R:16735;i:1;R:799;}s:29:"8:webstore_metadata_not_found";a:2:{i:0;R:16735;i:1;R:799;}s:29:"8:webstore_postfile_not_found";a:2:{i:0;R:16735;i:1;R:799;}s:32:"8:webstore_scaler_empty_response";a:2:{i:0;R:16735;i:1;R:799;}s:27:"8:webstore_invalid_response";a:2:{i:0;R:16735;i:1;R:799;}s:22:"8:webstore_no_response";a:2:{i:0;R:16735;i:1;R:799;}s:24:"8:webstore_backend_error";a:2:{i:0;R:16735;i:1;R:799;}s:20:"8:webstore_php_error";a:2:{i:0;R:16735;i:1;R:799;}s:21:"8:webstore_no_handler";a:2:{i:0;R:16735;i:1;R:799;}s:12:"8:whatismyip";a:2:{i:0;s:14:"ext-whatismyip";i:1;R:799;}s:17:"8:whatismyip-desc";a:2:{i:0;R:16780;i:1;R:799;}s:16:"8:whatismyip-out";a:2:{i:0;R:16780;i:1;R:799;}s:18:"8:right-whatismyip";a:2:{i:0;R:16780;i:1;R:799;}s:20:"8:whitelistedit-desc";a:2:{i:0;s:17:"ext-whitelistedit";i:1;R:799;}s:15:"8:whitelistedit";a:2:{i:0;R:16785;i:1;R:799;}s:11:"8:whitelist";a:2:{i:0;R:16785;i:1;R:799;}s:18:"8:mywhitelistpages";a:2:{i:0;R:16785;i:1;R:799;}s:14:"8:whitelistfor";a:2:{i:0;R:16785;i:1;R:799;}s:22:"8:whitelisttablemodify";a:2:{i:0;R:16785;i:1;R:799;}s:25:"8:whitelisttablemodifyall";a:2:{i:0;R:16785;i:1;R:799;}s:26:"8:whitelisttablemodifynone";a:2:{i:0;R:16785;i:1;R:799;}s:20:"8:whitelisttablepage";a:2:{i:0;R:16785;i:1;R:799;}s:20:"8:whitelisttabletype";a:2:{i:0;R:16785;i:1;R:799;}s:23:"8:whitelisttableexpires";a:2:{i:0;R:16785;i:1;R:799;}s:21:"8:whitelisttablemodby";a:2:{i:0;R:16785;i:1;R:799;}s:21:"8:whitelisttablemodon";a:2:{i:0;R:16785;i:1;R:799;}s:20:"8:whitelisttableedit";a:2:{i:0;R:16785;i:1;R:799;}s:20:"8:whitelisttableview";a:2:{i:0;R:16785;i:1;R:799;}s:23:"8:whitelisttablenewdate";a:2:{i:0;R:16785;i:1;R:799;}s:26:"8:whitelisttablechangedate";a:2:{i:0;R:16785;i:1;R:799;}s:23:"8:whitelisttablesetedit";a:2:{i:0;R:16785;i:1;R:799;}s:23:"8:whitelisttablesetview";a:2:{i:0;R:16785;i:1;R:799;}s:22:"8:whitelisttableremove";a:2:{i:0;R:16785;i:1;R:799;}s:22:"8:whitelistnewpagesfor";a:2:{i:0;R:16785;i:1;R:799;}s:23:"8:whitelistnewtabledate";a:2:{i:0;R:16785;i:1;R:799;}s:23:"8:whitelistnewtableedit";a:2:{i:0;R:16785;i:1;R:799;}s:23:"8:whitelistnewtableview";a:2:{i:0;R:16785;i:1;R:799;}s:29:"8:whitelistnowhitelistedusers";a:2:{i:0;R:16785;i:1;R:799;}s:26:"8:whitelistnewtableprocess";a:2:{i:0;R:16785;i:1;R:799;}s:25:"8:whitelistnewtablereview";a:2:{i:0;R:16785;i:1;R:799;}s:27:"8:whitelistselectrestricted";a:2:{i:0;R:16785;i:1;R:799;}s:19:"8:whitelistpagelist";a:2:{i:0;R:16785;i:1;R:799;}s:21:"8:whitelistnocalendar";a:2:{i:0;R:16785;i:1;R:799;}s:19:"8:whitelistoverview";a:2:{i:0;R:16785;i:1;R:799;}s:21:"8:whitelistoverviewcd";a:2:{i:0;R:16785;i:1;R:799;}s:21:"8:whitelistoverviewsa";a:2:{i:0;R:16785;i:1;R:799;}s:21:"8:whitelistoverviewrm";a:2:{i:0;R:16785;i:1;R:799;}s:21:"8:whitelistoverviewna";a:2:{i:0;R:16785;i:1;R:799;}s:18:"8:whitelistrequest";a:2:{i:0;R:16785;i:1;R:799;}s:21:"8:whitelistrequestmsg";a:2:{i:0;R:16785;i:1;R:799;}s:22:"8:whitelistrequestconf";a:2:{i:0;R:16785;i:1;R:799;}s:24:"8:whitelistnonrestricted";a:2:{i:0;R:16785;i:1;R:799;}s:16:"8:whitelistnever";a:2:{i:0;R:16785;i:1;R:799;}s:21:"8:whitelistnummatches";a:2:{i:0;R:16785;i:1;R:799;}s:21:"8:right-editwhitelist";a:2:{i:0;R:16785;i:1;R:799;}s:27:"8:right-restricttowhitelist";a:2:{i:0;R:16785;i:1;R:799;}s:22:"8:action-editwhitelist";a:2:{i:0;R:16785;i:1;R:799;}s:28:"8:action-restricttowhitelist";a:2:{i:0;R:16785;i:1;R:799;}s:18:"8:group-restricted";a:2:{i:0;R:16785;i:1;R:799;}s:25:"8:group-restricted-member";a:2:{i:0;R:16785;i:1;R:799;}s:15:"8:group-manager";a:2:{i:0;R:16785;i:1;R:799;}s:22:"8:group-manager-member";a:2:{i:0;R:16785;i:1;R:799;}s:21:"8:whitelistpages-desc";a:2:{i:0;s:18:"ext-whitelistpages";i:1;R:799;}s:23:"8:public_read_whitelist";a:2:{i:0;R:16835;i:1;R:799;}s:15:"8:whoiswatching";a:2:{i:0;s:17:"ext-whoiswatching";i:1;R:799;}s:20:"8:whoiswatching-desc";a:2:{i:0;R:16838;i:1;R:799;}s:29:"8:specialwhoiswatchingthepage";a:2:{i:0;R:16838;i:1;R:799;}s:27:"8:specialwhoiswatchingusage";a:2:{i:0;R:16838;i:1;R:799;}s:30:"8:specialwhoiswatchingaddusers";a:2:{i:0;R:16838;i:1;R:799;}s:28:"8:specialwhoiswatchingaddbtn";a:2:{i:0;R:16838;i:1;R:799;}s:12:"8:whosonline";a:2:{i:0;s:14:"ext-whosonline";i:1;R:799;}s:17:"8:whosonline-desc";a:2:{i:0;R:16845;i:1;R:799;}s:14:"8:widgets-desc";a:2:{i:0;s:11:"ext-widgets";i:1;R:799;}s:15:"8:widgets-error";a:2:{i:0;R:16848;i:1;R:799;}s:20:"8:group-widgeteditor";a:2:{i:0;R:16848;i:1;R:799;}s:27:"8:group-widgeteditor-member";a:2:{i:0;R:16848;i:1;R:799;}s:24:"8:grouppage-widgeteditor";a:2:{i:0;R:16848;i:1;R:799;}s:19:"8:right-editwidgets";a:2:{i:0;R:16848;i:1;R:799;}s:24:"8:group-widgeteditor.css";a:2:{i:0;R:16848;i:1;R:799;}s:23:"8:group-widgeteditor.js";a:2:{i:0;R:16848;i:1;R:799;}s:23:"8:wikiarticlefeeds-desc";a:2:{i:0;s:20:"ext-wikiarticlefeeds";i:1;R:799;}s:36:"8:wikiarticlefeeds-tracking-category";a:2:{i:0;R:16857;i:1;R:799;}s:39:"8:wikiarticlefeeds_combined_description";a:2:{i:0;R:16857;i:1;R:799;}s:19:"8:specialwikiathome";a:2:{i:0;s:14:"ext-wikiathome";i:1;R:799;}s:10:"8:wah-desc";a:2:{i:0;R:16861;i:1;R:799;}s:15:"8:wah-user-desc";a:2:{i:0;R:16861;i:1;R:799;}s:17:"8:wah-short-audio";a:2:{i:0;R:16861;i:1;R:799;}s:17:"8:wah-short-video";a:2:{i:0;R:16861;i:1;R:799;}s:19:"8:wah-short-general";a:2:{i:0;R:16861;i:1;R:799;}s:16:"8:wah-long-audio";a:2:{i:0;R:16861;i:1;R:799;}s:16:"8:wah-long-video";a:2:{i:0;R:16861;i:1;R:799;}s:22:"8:wah-long-multiplexed";a:2:{i:0;R:16861;i:1;R:799;}s:18:"8:wah-long-general";a:2:{i:0;R:16861;i:1;R:799;}s:16:"8:wah-long-error";a:2:{i:0;R:16861;i:1;R:799;}s:23:"8:wah-transcode-working";a:2:{i:0;R:16861;i:1;R:799;}s:23:"8:wah-transcode-helpout";a:2:{i:0;R:16861;i:1;R:799;}s:20:"8:wah-transcode-fail";a:2:{i:0;R:16861;i:1;R:799;}s:20:"8:wah-javascript-off";a:2:{i:0;R:16861;i:1;R:799;}s:13:"8:wah-loading";a:2:{i:0;R:16861;i:1;R:799;}s:15:"8:wah-menu-jobs";a:2:{i:0;R:16861;i:1;R:799;}s:16:"8:wah-menu-stats";a:2:{i:0;R:16861;i:1;R:799;}s:15:"8:wah-menu-pref";a:2:{i:0;R:16861;i:1;R:799;}s:19:"8:wah-lookingforjob";a:2:{i:0;R:16861;i:1;R:799;}s:20:"8:wah-start-on-visit";a:2:{i:0;R:16861;i:1;R:799;}s:21:"8:wah-jobs-while-away";a:2:{i:0;R:16861;i:1;R:799;}s:16:"8:wah-nojobfound";a:2:{i:0;R:16861;i:1;R:799;}s:19:"8:wah-notoken-login";a:2:{i:0;R:16861;i:1;R:799;}s:12:"8:wah-apioff";a:2:{i:0;R:16861;i:1;R:799;}s:15:"8:wah-doing-job";a:2:{i:0;R:16861;i:1;R:799;}s:17:"8:wah-downloading";a:2:{i:0;R:16861;i:1;R:799;}s:14:"8:wah-encoding";a:2:{i:0;R:16861;i:1;R:799;}s:19:"8:wah-encoding-fail";a:2:{i:0;R:16861;i:1;R:799;}s:15:"8:wah-uploading";a:2:{i:0;R:16861;i:1;R:799;}s:16:"8:wah-uploadfail";a:2:{i:0;R:16861;i:1;R:799;}s:19:"8:wah-doneuploading";a:2:{i:0;R:16861;i:1;R:799;}s:20:"8:wah-needs-firefogg";a:2:{i:0;R:16861;i:1;R:799;}s:15:"8:wah-api-error";a:2:{i:0;R:16861;i:1;R:799;}s:12:"8:wikibhasha";a:2:{i:0;s:14:"ext-wikibhasha";i:1;R:799;}s:17:"8:wikibhasha-desc";a:2:{i:0;R:16896;i:1;R:799;}s:16:"8:wikibhashalink";a:2:{i:0;R:16896;i:1;R:799;}s:15:"8:wikidata-desc";a:2:{i:0;s:12:"ext-wikidata";i:1;R:799;}s:39:"8:wikidata-handler-namespace-move-error";a:2:{i:0;R:16900;i:1;R:799;}s:11:"8:languages";a:2:{i:0;R:16900;i:1;R:799;}s:14:"8:langman-desc";a:2:{i:0;R:16900;i:1;R:799;}s:15:"8:langman_title";a:2:{i:0;R:16900;i:1;R:799;}s:21:"8:langman_not_allowed";a:2:{i:0;R:16900;i:1;R:799;}s:16:"8:langman_header";a:2:{i:0;R:16900;i:1;R:799;}s:20:"8:langman_req_fields";a:2:{i:0;R:16900;i:1;R:799;}s:16:"8:langman_adding";a:2:{i:0;R:16900;i:1;R:799;}s:18:"8:langman_langname";a:2:{i:0;R:16900;i:1;R:799;}s:18:"8:langman_iso639-3";a:2:{i:0;R:16900;i:1;R:799;}s:18:"8:langman_iso639-2";a:2:{i:0;R:16900;i:1;R:799;}s:19:"8:langman_wikimedia";a:2:{i:0;R:16900;i:1;R:799;}s:24:"8:langman_field_optional";a:2:{i:0;R:16900;i:1;R:799;}s:17:"8:langman_addlang";a:2:{i:0;R:16900;i:1;R:799;}s:17:"8:importlangnames";a:2:{i:0;R:16900;i:1;R:799;}s:23:"8:importlangnames_title";a:2:{i:0;R:16900;i:1;R:799;}s:29:"8:importlangnames_not_allowed";a:2:{i:0;R:16900;i:1;R:799;}s:23:"8:importlangnames_added";a:2:{i:0;R:16900;i:1;R:799;}s:27:"8:importlangnames_not_found";a:2:{i:0;R:16900;i:1;R:799;}s:12:"8:datasearch";a:2:{i:0;R:16900;i:1;R:799;}s:21:"8:datasearch_language";a:2:{i:0;R:16900;i:1;R:799;}s:23:"8:datasearch_found_word";a:2:{i:0;R:16900;i:1;R:799;}s:20:"8:datasearch_meaning";a:2:{i:0;R:16900;i:1;R:799;}s:27:"8:datasearch_ext_identifier";a:2:{i:0;R:16900;i:1;R:799;}s:24:"8:datasearch_search_text";a:2:{i:0;R:16900;i:1;R:799;}s:25:"8:datasearch_within_words";a:2:{i:0;R:16900;i:1;R:799;}s:27:"8:datasearch_within_ext_ids";a:2:{i:0;R:16900;i:1;R:799;}s:25:"8:datasearch_showing_only";a:2:{i:0;R:16900;i:1;R:799;}s:26:"8:datasearch_match_ext_ids";a:2:{i:0;R:16900;i:1;R:799;}s:24:"8:datasearch_match_words";a:2:{i:0;R:16900;i:1;R:799;}s:29:"8:datasearch_match_words_lang";a:2:{i:0;R:16900;i:1;R:799;}s:11:"8:importtsv";a:2:{i:0;R:16900;i:1;R:799;}s:21:"8:ow_importtsv_title1";a:2:{i:0;R:16900;i:1;R:799;}s:21:"8:ow_importtsv_title2";a:2:{i:0;R:16900;i:1;R:799;}s:21:"8:ow_importtsv_header";a:2:{i:0;R:16900;i:1;R:799;}s:26:"8:ow_importtsv_not_allowed";a:2:{i:0;R:16900;i:1;R:799;}s:24:"8:ow_importtsv_importing";a:2:{i:0;R:16900;i:1;R:799;}s:28:"8:ow_importtsv_import_failed";a:2:{i:0;R:16900;i:1;R:799;}s:19:"8:ow_importtsv_file";a:2:{i:0;R:16900;i:1;R:799;}s:23:"8:ow_importtsv_test_run";a:2:{i:0;R:16900;i:1;R:799;}s:23:"8:ow_importtsv_not_utf8";a:2:{i:0;R:16900;i:1;R:799;}s:22:"8:ow_importtsv_not_tsv";a:2:{i:0;R:16900;i:1;R:799;}s:26:"8:ow_importtsv_bad_columns";a:2:{i:0;R:16900;i:1;R:799;}s:29:"8:ow_importtsv_test_run_title";a:2:{i:0;R:16900;i:1;R:799;}s:28:"8:ow_importtsv_nothing_added";a:2:{i:0;R:16900;i:1;R:799;}s:33:"8:ow_importtsv_nothing_added_test";a:2:{i:0;R:16900;i:1;R:799;}s:22:"8:ow_importtsv_results";a:2:{i:0;R:16900;i:1;R:799;}s:27:"8:ow_impexptsv_unknown_lang";a:2:{i:0;R:16900;i:1;R:799;}s:11:"8:exporttsv";a:2:{i:0;R:16900;i:1;R:799;}s:20:"8:ow_exporttsv_title";a:2:{i:0;R:16900;i:1;R:799;}s:21:"8:ow_exporttsv_header";a:2:{i:0;R:16900;i:1;R:799;}s:24:"8:ow_exporttsv_languages";a:2:{i:0;R:16900;i:1;R:799;}s:26:"8:ow_exporttsv_not_allowed";a:2:{i:0;R:16900;i:1;R:799;}s:28:"8:ow_exporttsv_export_failed";a:2:{i:0;R:16900;i:1;R:799;}s:15:"8:addcollection";a:2:{i:0;R:16900;i:1;R:799;}s:19:"8:ow_searchnoresult";a:2:{i:0;R:16900;i:1;R:799;}s:9:"8:ow_save";a:2:{i:0;R:16900;i:1;R:799;}s:12:"8:ow_history";a:2:{i:0;R:16900;i:1;R:799;}s:13:"8:ow_datasets";a:2:{i:0;R:16900;i:1;R:799;}s:17:"8:ow_noedit_title";a:2:{i:0;R:16900;i:1;R:799;}s:11:"8:ow_noedit";a:2:{i:0;R:16900;i:1;R:799;}s:23:"8:ow_editing_policy_url";a:2:{i:0;R:16900;i:1;R:799;}s:20:"8:ow_uipref_datasets";a:2:{i:0;R:16900;i:1;R:799;}s:12:"8:ow_uiprefs";a:2:{i:0;R:16900;i:1;R:799;}s:18:"8:ow_none_selected";a:2:{i:0;R:16900;i:1;R:799;}s:13:"8:transaction";a:2:{i:0;R:16900;i:1;R:799;}s:33:"8:ow_transaction_from_transaction";a:2:{i:0;R:16900;i:1;R:799;}s:22:"8:ow_transaction_count";a:2:{i:0;R:16900;i:1;R:799;}s:21:"8:ow_transaction_user";a:2:{i:0;R:16900;i:1;R:799;}s:30:"8:ow_transaction_show_rollback";a:2:{i:0;R:16900;i:1;R:799;}s:32:"8:ow_transaction_rollback_button";a:2:{i:0;R:16900;i:1;R:799;}s:32:"8:ow_transaction_rollback_header";a:2:{i:0;R:16900;i:1;R:799;}s:26:"8:ow_transaction_no_action";a:2:{i:0;R:16900;i:1;R:799;}s:33:"8:ow_transaction_previous_version";a:2:{i:0;R:16900;i:1;R:799;}s:24:"8:ow_transaction_restore";a:2:{i:0;R:16900;i:1;R:799;}s:23:"8:ow_transaction_remove";a:2:{i:0;R:16900;i:1;R:799;}s:26:"8:ow_transaction_operation";a:2:{i:0;R:16900;i:1;R:799;}s:26:"8:ow_transaction_is_latest";a:2:{i:0;R:16900;i:1;R:799;}s:29:"8:ow_transaction_class_member";a:2:{i:0;R:16900;i:1;R:799;}s:23:"8:ow_transaction_object";a:2:{i:0;R:16900;i:1;R:799;}s:25:"8:ow_transaction_first_dm";a:2:{i:0;R:16900;i:1;R:799;}s:26:"8:ow_transaction_second_dm";a:2:{i:0;R:16900;i:1;R:799;}s:24:"8:ow_transaction_summary";a:2:{i:0;R:16900;i:1;R:799;}s:16:"8:conceptmapping";a:2:{i:0;R:16900;i:1;R:799;}s:25:"8:ow_conceptmapping_title";a:2:{i:0;R:16900;i:1;R:799;}s:24:"8:ow_conceptmapping_help";a:2:{i:0;R:16900;i:1;R:799;}s:26:"8:ow_conceptmapping_uitext";a:2:{i:0;R:16900;i:1;R:799;}s:39:"8:ow_conceptmapping_no_action_specified";a:2:{i:0;R:16900;i:1;R:799;}s:10:"8:ow_dm_ok";a:2:{i:0;R:16900;i:1;R:799;}s:19:"8:ow_dm_not_present";a:2:{i:0;R:16900;i:1;R:799;}s:17:"8:ow_dm_not_found";a:2:{i:0;R:16900;i:1;R:799;}s:23:"8:ow_mapping_successful";a:2:{i:0;R:16900;i:1;R:799;}s:25:"8:ow_mapping_unsuccessful";a:2:{i:0;R:16900;i:1;R:799;}s:16:"8:ow_will_insert";a:2:{i:0;R:16900;i:1;R:799;}s:24:"8:ow_contents_of_mapping";a:2:{i:0;R:16900;i:1;R:799;}s:23:"8:ow_available_contexts";a:2:{i:0;R:16900;i:1;R:799;}s:21:"8:ow_add_concept_link";a:2:{i:0;R:16900;i:1;R:799;}s:18:"8:ow_concept_panel";a:2:{i:0;R:16900;i:1;R:799;}s:16:"8:ow_dm_badtitle";a:2:{i:0;R:16900;i:1;R:799;}s:15:"8:ow_dm_missing";a:2:{i:0;R:16900;i:1;R:799;}s:12:"8:ow_addhint";a:2:{i:0;R:16900;i:1;R:799;}s:26:"8:ow_alternativedefinition";a:2:{i:0;R:16900;i:1;R:799;}s:27:"8:ow_alternativedefinitions";a:2:{i:0;R:16900;i:1;R:799;}s:15:"8:ow_annotation";a:2:{i:0;R:16900;i:1;R:799;}s:24:"8:ow_approximatemeanings";a:2:{i:0;R:16900;i:1;R:799;}s:10:"8:ow_class";a:2:{i:0;R:16900;i:1;R:799;}s:28:"8:ow_classattributeattribute";a:2:{i:0;R:16900;i:1;R:799;}s:20:"8:ow_classattributes";a:2:{i:0;R:16900;i:1;R:799;}s:24:"8:ow_classattributelevel";a:2:{i:0;R:16900;i:1;R:799;}s:23:"8:ow_classattributetype";a:2:{i:0;R:16900;i:1;R:799;}s:20:"8:ow_classmembership";a:2:{i:0;R:16900;i:1;R:799;}s:15:"8:ow_collection";a:2:{i:0;R:16900;i:1;R:799;}s:21:"8:ow_collection_colon";a:2:{i:0;R:16900;i:1;R:799;}s:21:"8:ow_collectionmember";a:2:{i:0;R:16900;i:1;R:799;}s:25:"8:ow_collectionmembership";a:2:{i:0;R:16900;i:1;R:799;}s:15:"8:ow_definition";a:2:{i:0;R:16900;i:1;R:799;}s:29:"8:ow_definedmeaningattributes";a:2:{i:0;R:16900;i:1;R:799;}s:19:"8:ow_definedmeaning";a:2:{i:0;R:16900;i:1;R:799;}s:28:"8:ow_definedmeaningreference";a:2:{i:0;R:16900;i:1;R:799;}s:18:"8:ow_exactmeanings";a:2:{i:0;R:16900;i:1;R:799;}s:15:"8:ow_expression";a:2:{i:0;R:16900;i:1;R:799;}s:23:"8:ow_expressionmeanings";a:2:{i:0;R:16900;i:1;R:799;}s:16:"8:ow_expressions";a:2:{i:0;R:16900;i:1;R:799;}s:21:"8:ow_identicalmeaning";a:2:{i:0;R:16900;i:1;R:799;}s:22:"8:ow_incomingrelations";a:2:{i:0;R:16900;i:1;R:799;}s:15:"8:ow_gotosource";a:2:{i:0;R:16900;i:1;R:799;}s:7:"8:ow_id";a:2:{i:0;R:16900;i:1;R:799;}s:13:"8:ow_language";a:2:{i:0;R:16900;i:1;R:799;}s:20:"8:ow_levelannotation";a:2:{i:0;R:16900;i:1;R:799;}s:24:"8:ow_linkattributeheader";a:2:{i:0;R:16900;i:1;R:799;}s:22:"8:ow_multiple_meanings";a:2:{i:0;R:16900;i:1;R:799;}s:20:"8:ow_newexactmeaning";a:2:{i:0;R:16900;i:1;R:799;}s:20:"8:ow_optionattribute";a:2:{i:0;R:16900;i:1;R:799;}s:26:"8:ow_optionattributeheader";a:2:{i:0;R:16900;i:1;R:799;}s:26:"8:ow_optionattributeoption";a:2:{i:0;R:16900;i:1;R:799;}s:27:"8:ow_optionattributeoptions";a:2:{i:0;R:16900;i:1;R:799;}s:26:"8:ow_optionattributevalues";a:2:{i:0;R:16900;i:1;R:799;}s:24:"8:ow_otherdefinedmeaning";a:2:{i:0;R:16900;i:1;R:799;}s:20:"8:ow_popupannotation";a:2:{i:0;R:16900;i:1;R:799;}s:19:"8:ow_recordlifespan";a:2:{i:0;R:16900;i:1;R:799;}s:14:"8:ow_relations";a:2:{i:0;R:16900;i:1;R:799;}s:17:"8:ow_relationtype";a:2:{i:0;R:16900;i:1;R:799;}s:11:"8:ow_remove";a:2:{i:0;R:16900;i:1;R:799;}s:15:"8:ow_removehint";a:2:{i:0;R:16900;i:1;R:799;}s:13:"8:ow_spelling";a:2:{i:0;R:16900;i:1;R:799;}s:16:"8:ow_suggesthint";a:2:{i:0;R:16900;i:1;R:799;}s:13:"8:ow_synonyms";a:2:{i:0;R:16900;i:1;R:799;}s:28:"8:ow_synonymsandtranslations";a:2:{i:0;R:16900;i:1;R:799;}s:11:"8:ow_source";a:2:{i:0;R:16900;i:1;R:799;}s:21:"8:ow_sourceidentifier";a:2:{i:0;R:16900;i:1;R:799;}s:9:"8:ow_text";a:2:{i:0;R:16900;i:1;R:799;}s:18:"8:ow_textattribute";a:2:{i:0;R:16900;i:1;R:799;}s:24:"8:ow_textattributeheader";a:2:{i:0;R:16900;i:1;R:799;}s:24:"8:ow_textattributevalues";a:2:{i:0;R:16900;i:1;R:799;}s:9:"8:ow_time";a:2:{i:0;R:16900;i:1;R:799;}s:28:"8:ow_translatedtextattribute";a:2:{i:0;R:16900;i:1;R:799;}s:19:"8:ow_translatedtext";a:2:{i:0;R:16900;i:1;R:799;}s:33:"8:ow_translatedtextattributevalue";a:2:{i:0;R:16900;i:1;R:799;}s:34:"8:ow_translatedtextattributevalues";a:2:{i:0;R:16900;i:1;R:799;}s:10:"8:ow_label";a:2:{i:0;R:16900;i:1;R:799;}s:9:"8:ow_link";a:2:{i:0;R:16900;i:1;R:799;}s:18:"8:ow_linkattribute";a:2:{i:0;R:16900;i:1;R:799;}s:24:"8:ow_linkattributevalues";a:2:{i:0;R:16900;i:1;R:799;}s:8:"8:ow_url";a:2:{i:0;R:16900;i:1;R:799;}s:9:"8:ow_user";a:2:{i:0;R:16900;i:1;R:799;}s:13:"8:ow_property";a:2:{i:0;R:16900;i:1;R:799;}s:10:"8:ow_value";a:2:{i:0;R:16900;i:1;R:799;}s:10:"8:ow_added";a:2:{i:0;R:16900;i:1;R:799;}s:12:"8:ow_removed";a:2:{i:0;R:16900;i:1;R:799;}s:20:"8:ow_meaningsoftitle";a:2:{i:0;R:16900;i:1;R:799;}s:23:"8:ow_meaningsofsubtitle";a:2:{i:0;R:16900;i:1;R:799;}s:22:"8:ow_permission_denied";a:2:{i:0;R:16900;i:1;R:799;}s:6:"8:copy";a:2:{i:0;R:16900;i:1;R:799;}s:29:"8:ow_copy_no_action_specified";a:2:{i:0;R:16900;i:1;R:799;}s:14:"8:ow_copy_help";a:2:{i:0;R:16900;i:1;R:799;}s:23:"8:ow_please_proved_dmid";a:2:{i:0;R:16900;i:1;R:799;}s:22:"8:ow_please_proved_dc1";a:2:{i:0;R:16900;i:1;R:799;}s:22:"8:ow_please_proved_dc2";a:2:{i:0;R:16900;i:1;R:799;}s:20:"8:ow_copy_successful";a:2:{i:0;R:16900;i:1;R:799;}s:22:"8:ow_copy_unsuccessful";a:2:{i:0;R:16900;i:1;R:799;}s:24:"8:ow_no_action_specified";a:2:{i:0;R:16900;i:1;R:799;}s:29:"8:ow_db_consistency_not_found";a:2:{i:0;R:16900;i:1;R:799;}s:24:"8:ow_history_transaction";a:2:{i:0;R:16900;i:1;R:799;}s:27:"8:ow_history_show_life_span";a:2:{i:0;R:16900;i:1;R:799;}s:23:"8:ow_class_attr_type_dm";a:2:{i:0;R:16900;i:1;R:799;}s:26:"8:ow_class_attr_type_xlate";a:2:{i:0;R:16900;i:1;R:799;}s:26:"8:ow_class_attr_type_plain";a:2:{i:0;R:16900;i:1;R:799;}s:25:"8:ow_class_attr_type_link";a:2:{i:0;R:16900;i:1;R:799;}s:27:"8:ow_class_attr_type_option";a:2:{i:0;R:16900;i:1;R:799;}s:18:"8:needstranslation";a:2:{i:0;R:16900;i:1;R:799;}s:24:"8:ow_needs_xlation_title";a:2:{i:0;R:16900;i:1;R:799;}s:30:"8:ow_needs_xlation_source_lang";a:2:{i:0;R:16900;i:1;R:799;}s:28:"8:ow_needs_xlation_dest_lang";a:2:{i:0;R:16900;i:1;R:799;}s:31:"8:ow_needs_xlation_no_dest_lang";a:2:{i:0;R:16900;i:1;R:799;}s:15:"8:ow_statistics";a:2:{i:0;R:16900;i:1;R:799;}s:9:"8:ow_show";a:2:{i:0;R:16900;i:1;R:799;}s:11:"8:ow_upload";a:2:{i:0;R:16900;i:1;R:799;}s:11:"8:ow_create";a:2:{i:0;R:16900;i:1;R:799;}s:21:"8:ow_collection_added";a:2:{i:0;R:16900;i:1;R:799;}s:21:"8:ow_suggest_previous";a:2:{i:0;R:16900;i:1;R:799;}s:17:"8:ow_suggest_next";a:2:{i:0;R:16900;i:1;R:799;}s:18:"8:ow_suggest_clear";a:2:{i:0;R:16900;i:1;R:799;}s:25:"8:ow_nstab_definedmeaning";a:2:{i:0;R:16900;i:1;R:799;}s:20:"8:ow_nstab_edit_copy";a:2:{i:0;R:16900;i:1;R:799;}s:19:"8:right-addlanguage";a:2:{i:0;R:16900;i:1;R:799;}s:19:"8:ow_shown_datasets";a:2:{i:0;R:16900;i:1;R:799;}s:17:"8:prefs-omegawiki";a:2:{i:0;R:16900;i:1;R:799;}s:16:"8:wikiforum-desc";a:2:{i:0;s:13:"ext-wikiforum";i:1;R:799;}s:11:"8:wikiforum";a:2:{i:0;R:17109;i:1;R:799;}s:30:"8:wikiforum-day-definition-new";a:2:{i:0;R:17109;i:1;R:799;}s:32:"8:wikiforum-max-threads-per-page";a:2:{i:0;R:17109;i:1;R:799;}s:32:"8:wikiforum-max-replies-per-page";a:2:{i:0;R:17109;i:1;R:799;}s:21:"8:wikiforum-anonymous";a:2:{i:0;R:17109;i:1;R:799;}s:41:"8:wikiforum-announcement-only-description";a:2:{i:0;R:17109;i:1;R:799;}s:14:"8:wikiforum-by";a:2:{i:0;R:17109;i:1;R:799;}s:23:"8:wikiforum-description";a:2:{i:0;R:17109;i:1;R:799;}s:26:"8:wikiforum-forum-is-empty";a:2:{i:0;R:17109;i:1;R:799;}s:22:"8:wikiforum-forum-name";a:2:{i:0;R:17109;i:1;R:799;}s:16:"8:wikiforum-name";a:2:{i:0;R:17109;i:1;R:799;}s:26:"8:wikiforum-button-preview";a:2:{i:0;R:17109;i:1;R:799;}s:19:"8:wikiforum-preview";a:2:{i:0;R:17109;i:1;R:799;}s:30:"8:wikiforum-preview-with-title";a:2:{i:0;R:17109;i:1;R:799;}s:16:"8:wikiforum-save";a:2:{i:0;R:17109;i:1;R:799;}s:24:"8:wikiforum-error-search";a:2:{i:0;R:17109;i:1;R:799;}s:38:"8:wikiforum-error-search-missing-query";a:2:{i:0;R:17109;i:1;R:799;}s:23:"8:wikiforum-search-hits";a:2:{i:0;R:17109;i:1;R:799;}s:25:"8:wikiforum-search-thread";a:2:{i:0;R:17109;i:1;R:799;}s:26:"8:wikiforum-thread-deleted";a:2:{i:0;R:17109;i:1;R:799;}s:22:"8:wikiforum-topic-name";a:2:{i:0;R:17109;i:1;R:799;}s:19:"8:wikiforum-updates";a:2:{i:0;R:17109;i:1;R:799;}s:24:"8:wikiforum-write-thread";a:2:{i:0;R:17109;i:1;R:799;}s:19:"8:wikiforum-replies";a:2:{i:0;R:17109;i:1;R:799;}s:17:"8:wikiforum-views";a:2:{i:0;R:17109;i:1;R:799;}s:18:"8:wikiforum-thread";a:2:{i:0;R:17109;i:1;R:799;}s:19:"8:wikiforum-threads";a:2:{i:0;R:17109;i:1;R:799;}s:24:"8:wikiforum-latest-reply";a:2:{i:0;R:17109;i:1;R:799;}s:25:"8:wikiforum-latest-thread";a:2:{i:0;R:17109;i:1;R:799;}s:17:"8:wikiforum-forum";a:2:{i:0;R:17109;i:1;R:799;}s:20:"8:wikiforum-overview";a:2:{i:0;R:17109;i:1;R:799;}s:17:"8:wikiforum-pages";a:2:{i:0;R:17109;i:1;R:799;}s:25:"8:wikiforum-thread-closed";a:2:{i:0;R:17109;i:1;R:799;}s:22:"8:wikiforum-new-thread";a:2:{i:0;R:17109;i:1;R:799;}s:23:"8:wikiforum-edit-thread";a:2:{i:0;R:17109;i:1;R:799;}s:25:"8:wikiforum-delete-thread";a:2:{i:0;R:17109;i:1;R:799;}s:24:"8:wikiforum-close-thread";a:2:{i:0;R:17109;i:1;R:799;}s:25:"8:wikiforum-reopen-thread";a:2:{i:0;R:17109;i:1;R:799;}s:23:"8:wikiforum-write-reply";a:2:{i:0;R:17109;i:1;R:799;}s:22:"8:wikiforum-edit-reply";a:2:{i:0;R:17109;i:1;R:799;}s:24:"8:wikiforum-delete-reply";a:2:{i:0;R:17109;i:1;R:799;}s:23:"8:wikiforum-save-thread";a:2:{i:0;R:17109;i:1;R:799;}s:22:"8:wikiforum-save-reply";a:2:{i:0;R:17109;i:1;R:799;}s:24:"8:wikiforum-thread-title";a:2:{i:0;R:17109;i:1;R:799;}s:22:"8:wikiforum-no-threads";a:2:{i:0;R:17109;i:1;R:799;}s:18:"8:wikiforum-posted";a:2:{i:0;R:17109;i:1;R:799;}s:18:"8:wikiforum-edited";a:2:{i:0;R:17109;i:1;R:799;}s:23:"8:wikiforum-closed-text";a:2:{i:0;R:17109;i:1;R:799;}s:25:"8:wikiforum-cat-not-found";a:2:{i:0;R:17109;i:1;R:799;}s:30:"8:wikiforum-cat-not-found-text";a:2:{i:0;R:17109;i:1;R:799;}s:27:"8:wikiforum-forum-not-found";a:2:{i:0;R:17109;i:1;R:799;}s:32:"8:wikiforum-forum-not-found-text";a:2:{i:0;R:17109;i:1;R:799;}s:28:"8:wikiforum-thread-not-found";a:2:{i:0;R:17109;i:1;R:799;}s:33:"8:wikiforum-thread-not-found-text";a:2:{i:0;R:17109;i:1;R:799;}s:31:"8:wikiforum-error-thread-reopen";a:2:{i:0;R:17109;i:1;R:799;}s:30:"8:wikiforum-error-thread-close";a:2:{i:0;R:17109;i:1;R:799;}s:25:"8:wikiforum-error-general";a:2:{i:0;R:17109;i:1;R:799;}s:27:"8:wikiforum-error-no-rights";a:2:{i:0;R:17109;i:1;R:799;}s:27:"8:wikiforum-error-not-found";a:2:{i:0;R:17109;i:1;R:799;}s:34:"8:wikiforum-error-no-text-or-title";a:2:{i:0;R:17109;i:1;R:799;}s:26:"8:wikiforum-error-no-reply";a:2:{i:0;R:17109;i:1;R:799;}s:29:"8:wikiforum-error-double-post";a:2:{i:0;R:17109;i:1;R:799;}s:31:"8:wikiforum-error-thread-closed";a:2:{i:0;R:17109;i:1;R:799;}s:24:"8:wikiforum-error-delete";a:2:{i:0;R:17109;i:1;R:799;}s:24:"8:wikiforum-error-sticky";a:2:{i:0;R:17109;i:1;R:799;}s:29:"8:wikiforum-error-move-thread";a:2:{i:0;R:17109;i:1;R:799;}s:21:"8:wikiforum-error-add";a:2:{i:0;R:17109;i:1;R:799;}s:22:"8:wikiforum-error-edit";a:2:{i:0;R:17109;i:1;R:799;}s:24:"8:wikiforum-add-category";a:2:{i:0;R:17109;i:1;R:799;}s:25:"8:wikiforum-edit-category";a:2:{i:0;R:17109;i:1;R:799;}s:27:"8:wikiforum-delete-category";a:2:{i:0;R:17109;i:1;R:799;}s:21:"8:wikiforum-add-forum";a:2:{i:0;R:17109;i:1;R:799;}s:22:"8:wikiforum-edit-forum";a:2:{i:0;R:17109;i:1;R:799;}s:24:"8:wikiforum-delete-forum";a:2:{i:0;R:17109;i:1;R:799;}s:19:"8:wikiforum-sort-up";a:2:{i:0;R:17109;i:1;R:799;}s:21:"8:wikiforum-sort-down";a:2:{i:0;R:17109;i:1;R:799;}s:25:"8:wikiforum-remove-sticky";a:2:{i:0;R:17109;i:1;R:799;}s:23:"8:wikiforum-make-sticky";a:2:{i:0;R:17109;i:1;R:799;}s:23:"8:wikiforum-move-thread";a:2:{i:0;R:17109;i:1;R:799;}s:24:"8:wikiforum-paste-thread";a:2:{i:0;R:17109;i:1;R:799;}s:17:"8:wikiforum-quote";a:2:{i:0;R:17109;i:1;R:799;}s:23:"8:right-wikiforum-admin";a:2:{i:0;R:17109;i:1;R:799;}s:27:"8:right-wikiforum-moderator";a:2:{i:0;R:17109;i:1;R:799;}s:18:"8:group-forumadmin";a:2:{i:0;R:17109;i:1;R:799;}s:25:"8:group-forumadmin-member";a:2:{i:0;R:17109;i:1;R:799;}s:22:"8:grouppage-forumadmin";a:2:{i:0;R:17109;i:1;R:799;}s:22:"8:group-forumadmin.css";a:2:{i:0;R:17109;i:1;R:799;}s:21:"8:group-forumadmin.js";a:2:{i:0;R:17109;i:1;R:799;}s:14:"8:wikilog-desc";a:2:{i:0;s:11:"ext-wikilog";i:1;R:799;}s:14:"8:wikilog-auto";a:2:{i:0;R:17199;i:1;R:799;}s:14:"8:wikilog-help";a:2:{i:0;R:17199;i:1;R:799;}s:22:"8:right-wl-postcomment";a:2:{i:0;R:17199;i:1;R:799;}s:21:"8:right-wl-moderation";a:2:{i:0;R:17199;i:1;R:799;}s:30:"8:wikilog-specialwikilog-title";a:2:{i:0;R:17199;i:1;R:799;}s:22:"8:wikilog-log-pagename";a:2:{i:0;R:17199;i:1;R:799;}s:22:"8:wikilog-log-pagetext";a:2:{i:0;R:17199;i:1;R:799;}s:25:"8:wikilog-log-cmt-approve";a:2:{i:0;R:17199;i:1;R:799;}s:24:"8:wikilog-log-cmt-reject";a:2:{i:0;R:17199;i:1;R:799;}s:24:"8:wikilog-log-cmt-rejdel";a:2:{i:0;R:17199;i:1;R:799;}s:13:"8:wikilog-tab";a:2:{i:0;R:17199;i:1;R:799;}s:19:"8:wikilog-tab-title";a:2:{i:0;R:17199;i:1;R:799;}s:25:"8:wikilog-missing-wikilog";a:2:{i:0;R:17199;i:1;R:799;}s:21:"8:wikilog-information";a:2:{i:0;R:17199;i:1;R:799;}s:30:"8:wikilog-post-count-published";a:2:{i:0;R:17199;i:1;R:799;}s:27:"8:wikilog-post-count-drafts";a:2:{i:0;R:17199;i:1;R:799;}s:24:"8:wikilog-post-count-all";a:2:{i:0;R:17199;i:1;R:799;}s:18:"8:wikilog-new-item";a:2:{i:0;R:17199;i:1;R:799;}s:21:"8:wikilog-new-item-go";a:2:{i:0;R:17199;i:1;R:799;}s:19:"8:wikilog-item-name";a:2:{i:0;R:17199;i:1;R:799;}s:19:"8:wikilog-published";a:2:{i:0;R:17199;i:1;R:799;}s:17:"8:wikilog-updated";a:2:{i:0;R:17199;i:1;R:799;}s:15:"8:wikilog-draft";a:2:{i:0;R:17199;i:1;R:799;}s:17:"8:wikilog-authors";a:2:{i:0;R:17199;i:1;R:799;}s:17:"8:wikilog-wikilog";a:2:{i:0;R:17199;i:1;R:799;}s:15:"8:wikilog-title";a:2:{i:0;R:17199;i:1;R:799;}s:17:"8:wikilog-actions";a:2:{i:0;R:17199;i:1;R:799;}s:18:"8:wikilog-comments";a:2:{i:0;R:17199;i:1;R:799;}s:17:"8:wikilog-replies";a:2:{i:0;R:17199;i:1;R:799;}s:23:"8:wikilog-view-archives";a:2:{i:0;R:17199;i:1;R:799;}s:22:"8:wikilog-view-summary";a:2:{i:0;R:17199;i:1;R:799;}s:26:"8:wikilog-draft-title-mark";a:2:{i:0;R:17199;i:1;R:799;}s:24:"8:wikilog-anonymous-mark";a:2:{i:0;R:17199;i:1;R:799;}s:22:"8:wikilog-pager-newest";a:2:{i:0;R:17199;i:1;R:799;}s:22:"8:wikilog-pager-oldest";a:2:{i:0;R:17199;i:1;R:799;}s:20:"8:wikilog-pager-prev";a:2:{i:0;R:17199;i:1;R:799;}s:20:"8:wikilog-pager-next";a:2:{i:0;R:17199;i:1;R:799;}s:21:"8:wikilog-pager-first";a:2:{i:0;R:17199;i:1;R:799;}s:20:"8:wikilog-pager-last";a:2:{i:0;R:17199;i:1;R:799;}s:21:"8:wikilog-pager-empty";a:2:{i:0;R:17199;i:1;R:799;}s:21:"8:wikilog-no-comments";a:2:{i:0;R:17199;i:1;R:799;}s:22:"8:wikilog-has-comments";a:2:{i:0;R:17199;i:1;R:799;}s:24:"8:wikilog-summary-header";a:2:{i:0;R:17199;i:1;R:799;}s:24:"8:wikilog-summary-footer";a:2:{i:0;R:17199;i:1;R:799;}s:31:"8:wikilog-summary-header-single";a:2:{i:0;R:17199;i:1;R:799;}s:31:"8:wikilog-summary-footer-single";a:2:{i:0;R:17199;i:1;R:799;}s:31:"8:wikilog-summary-uncategorized";a:2:{i:0;R:17199;i:1;R:799;}s:28:"8:wikilog-summary-categories";a:2:{i:0;R:17199;i:1;R:799;}s:22:"8:wikilog-summary-more";a:2:{i:0;R:17199;i:1;R:799;}s:19:"8:wikilog-entry-sub";a:2:{i:0;R:17199;i:1;R:799;}s:22:"8:wikilog-entry-header";a:2:{i:0;R:17199;i:1;R:799;}s:22:"8:wikilog-entry-footer";a:2:{i:0;R:17199;i:1;R:799;}s:26:"8:wikilog-author-signature";a:2:{i:0;R:17199;i:1;R:799;}s:26:"8:wikilog-simple-signature";a:2:{i:0;R:17199;i:1;R:799;}s:19:"8:wikilog-edit-hint";a:2:{i:0;R:17199;i:1;R:799;}s:30:"8:wikilog-edit-fieldset-legend";a:2:{i:0;R:17199;i:1;R:799;}s:22:"8:wikilog-edit-signpub";a:2:{i:0;R:17199;i:1;R:799;}s:30:"8:wikilog-edit-signpub-tooltip";a:2:{i:0;R:17199;i:1;R:799;}s:24:"8:wikilog-comment-header";a:2:{i:0;R:17199;i:1;R:799;}s:24:"8:wikilog-comment-footer";a:2:{i:0;R:17199;i:1;R:799;}s:27:"8:wikilog-comment-permalink";a:2:{i:0;R:17199;i:1;R:799;}s:27:"8:wikilog-comment-note-item";a:2:{i:0;R:17199;i:1;R:799;}s:29:"8:wikilog-comment-note-edited";a:2:{i:0;R:17199;i:1;R:799;}s:25:"8:wikilog-comment-anonsig";a:2:{i:0;R:17199;i:1;R:799;}s:25:"8:wikilog-comment-pending";a:2:{i:0;R:17199;i:1;R:799;}s:25:"8:wikilog-comment-deleted";a:2:{i:0;R:17199;i:1;R:799;}s:27:"8:wikilog-comment-omitted-x";a:2:{i:0;R:17199;i:1;R:799;}s:26:"8:wikilog-comment-autosumm";a:2:{i:0;R:17199;i:1;R:799;}s:26:"8:wikilog-reply-to-comment";a:2:{i:0;R:17199;i:1;R:799;}s:22:"8:wikilog-comment-page";a:2:{i:0;R:17199;i:1;R:799;}s:22:"8:wikilog-comment-edit";a:2:{i:0;R:17199;i:1;R:799;}s:24:"8:wikilog-comment-delete";a:2:{i:0;R:17199;i:1;R:799;}s:25:"8:wikilog-comment-history";a:2:{i:0;R:17199;i:1;R:799;}s:25:"8:wikilog-comment-approve";a:2:{i:0;R:17199;i:1;R:799;}s:24:"8:wikilog-comment-reject";a:2:{i:0;R:17199;i:1;R:799;}s:22:"8:wikilog-newtalk-text";a:2:{i:0;R:17199;i:1;R:799;}s:25:"8:wikilog-newtalk-summary";a:2:{i:0;R:17199;i:1;R:799;}s:20:"8:wikilog-feed-title";a:2:{i:0;R:17199;i:1;R:799;}s:23:"8:wikilog-feed-ns-title";a:2:{i:0;R:17199;i:1;R:799;}s:26:"8:wikilog-feed-description";a:2:{i:0;R:17199;i:1;R:799;}s:29:"8:wikilog-comment-feed-title1";a:2:{i:0;R:17199;i:1;R:799;}s:29:"8:wikilog-comment-feed-title2";a:2:{i:0;R:17199;i:1;R:799;}s:34:"8:wikilog-comment-feed-description";a:2:{i:0;R:17199;i:1;R:799;}s:25:"8:wikilog-title-item-full";a:2:{i:0;R:17199;i:1;R:799;}s:24:"8:wikilog-title-comments";a:2:{i:0;R:17199;i:1;R:799;}s:19:"8:wikilog-error-msg";a:2:{i:0;R:17199;i:1;R:799;}s:21:"8:wikilog-error-title";a:2:{i:0;R:17199;i:1;R:799;}s:23:"8:wikilog-invalid-param";a:2:{i:0;R:17199;i:1;R:799;}s:24:"8:wikilog-invalid-author";a:2:{i:0;R:17199;i:1;R:799;}s:22:"8:wikilog-invalid-date";a:2:{i:0;R:17199;i:1;R:799;}s:21:"8:wikilog-invalid-tag";a:2:{i:0;R:17199;i:1;R:799;}s:22:"8:wikilog-invalid-file";a:2:{i:0;R:17199;i:1;R:799;}s:24:"8:wikilog-file-not-found";a:2:{i:0;R:17199;i:1;R:799;}s:22:"8:wikilog-not-an-image";a:2:{i:0;R:17199;i:1;R:799;}s:24:"8:wikilog-out-of-context";a:2:{i:0;R:17199;i:1;R:799;}s:26:"8:wikilog-too-many-authors";a:2:{i:0;R:17199;i:1;R:799;}s:23:"8:wikilog-too-many-tags";a:2:{i:0;R:17199;i:1;R:799;}s:26:"8:wikilog-comment-is-empty";a:2:{i:0;R:17199;i:1;R:799;}s:26:"8:wikilog-comment-too-long";a:2:{i:0;R:17199;i:1;R:799;}s:30:"8:wikilog-comment-invalid-name";a:2:{i:0;R:17199;i:1;R:799;}s:25:"8:wikilog-no-such-article";a:2:{i:0;R:17199;i:1;R:799;}s:23:"8:wikilog-reading-draft";a:2:{i:0;R:17199;i:1;R:799;}s:29:"8:wikilog-posting-anonymously";a:2:{i:0;R:17199;i:1;R:799;}s:29:"8:wikilog-anonymous-moderated";a:2:{i:0;R:17199;i:1;R:799;}s:22:"8:wikilog-post-comment";a:2:{i:0;R:17199;i:1;R:799;}s:20:"8:wikilog-post-reply";a:2:{i:0;R:17199;i:1;R:799;}s:21:"8:wikilog-form-legend";a:2:{i:0;R:17199;i:1;R:799;}s:22:"8:wikilog-form-wikilog";a:2:{i:0;R:17199;i:1;R:799;}s:23:"8:wikilog-form-category";a:2:{i:0;R:17199;i:1;R:799;}s:19:"8:wikilog-form-name";a:2:{i:0;R:17199;i:1;R:799;}s:21:"8:wikilog-form-author";a:2:{i:0;R:17199;i:1;R:799;}s:18:"8:wikilog-form-tag";a:2:{i:0;R:17199;i:1;R:799;}s:19:"8:wikilog-form-date";a:2:{i:0;R:17199;i:1;R:799;}s:21:"8:wikilog-form-status";a:2:{i:0;R:17199;i:1;R:799;}s:22:"8:wikilog-form-preview";a:2:{i:0;R:17199;i:1;R:799;}s:22:"8:wikilog-form-comment";a:2:{i:0;R:17199;i:1;R:799;}s:18:"8:wikilog-show-all";a:2:{i:0;R:17199;i:1;R:799;}s:24:"8:wikilog-show-published";a:2:{i:0;R:17199;i:1;R:799;}s:21:"8:wikilog-show-drafts";a:2:{i:0;R:17199;i:1;R:799;}s:16:"8:wikilog-submit";a:2:{i:0;R:17199;i:1;R:799;}s:17:"8:wikilog-preview";a:2:{i:0;R:17199;i:1;R:799;}s:17:"8:wikilog-edit-lc";a:2:{i:0;R:17199;i:1;R:799;}s:18:"8:wikilog-reply-lc";a:2:{i:0;R:17199;i:1;R:799;}s:19:"8:wikilog-delete-lc";a:2:{i:0;R:17199;i:1;R:799;}s:20:"8:wikilog-approve-lc";a:2:{i:0;R:17199;i:1;R:799;}s:19:"8:wikilog-reject-lc";a:2:{i:0;R:17199;i:1;R:799;}s:17:"8:wikilog-page-lc";a:2:{i:0;R:17199;i:1;R:799;}s:20:"8:wikilog-history-lc";a:2:{i:0;R:17199;i:1;R:799;}s:28:"8:wikilog-doc-import-comment";a:2:{i:0;R:17199;i:1;R:799;}s:17:"8:wikilog-summary";a:2:{i:0;R:17199;i:1;R:799;}s:18:"8:wikilog-backlink";a:2:{i:0;R:17199;i:1;R:799;}s:18:"8:wikilog-brackets";a:2:{i:0;R:17199;i:1;R:799;}s:13:"8:wlfeed-desc";a:2:{i:0;s:15:"ext-wikilogfeed";i:1;R:799;}s:25:"8:wm-license-cc-wiki-link";a:2:{i:0;s:40:"ext-wikimediacreativecommonslicensetexts";i:1;R:799;}s:27:"8:wm-license-cc-attribution";a:2:{i:0;R:17335;i:1;R:799;}s:27:"8:wm-license-cc-by-1.0-text";a:2:{i:0;R:17335;i:1;R:799;}s:30:"8:wm-license-cc-by-1.0-fi-text";a:2:{i:0;R:17335;i:1;R:799;}s:30:"8:wm-license-cc-by-1.0-il-text";a:2:{i:0;R:17335;i:1;R:799;}s:30:"8:wm-license-cc-by-1.0-nl-text";a:2:{i:0;R:17335;i:1;R:799;}s:27:"8:wm-license-cc-by-2.0-text";a:2:{i:0;R:17335;i:1;R:799;}s:30:"8:wm-license-cc-by-2.0-at-text";a:2:{i:0;R:17335;i:1;R:799;}s:30:"8:wm-license-cc-by-2.0-au-text";a:2:{i:0;R:17335;i:1;R:799;}s:30:"8:wm-license-cc-by-2.0-be-text";a:2:{i:0;R:17335;i:1;R:799;}s:30:"8:wm-license-cc-by-2.0-br-text";a:2:{i:0;R:17335;i:1;R:799;}s:30:"8:wm-license-cc-by-2.0-ca-text";a:2:{i:0;R:17335;i:1;R:799;}s:30:"8:wm-license-cc-by-2.0-cl-text";a:2:{i:0;R:17335;i:1;R:799;}s:30:"8:wm-license-cc-by-2.0-de-text";a:2:{i:0;R:17335;i:1;R:799;}s:30:"8:wm-license-cc-by-2.0-es-text";a:2:{i:0;R:17335;i:1;R:799;}s:30:"8:wm-license-cc-by-2.0-fr-text";a:2:{i:0;R:17335;i:1;R:799;}s:30:"8:wm-license-cc-by-2.0-hr-text";a:2:{i:0;R:17335;i:1;R:799;}s:30:"8:wm-license-cc-by-2.0-it-text";a:2:{i:0;R:17335;i:1;R:799;}s:30:"8:wm-license-cc-by-2.0-jp-text";a:2:{i:0;R:17335;i:1;R:799;}s:30:"8:wm-license-cc-by-2.0-kr-text";a:2:{i:0;R:17335;i:1;R:799;}s:30:"8:wm-license-cc-by-2.0-nl-text";a:2:{i:0;R:17335;i:1;R:799;}s:30:"8:wm-license-cc-by-2.0-pl-text";a:2:{i:0;R:17335;i:1;R:799;}s:30:"8:wm-license-cc-by-2.0-tw-text";a:2:{i:0;R:17335;i:1;R:799;}s:30:"8:wm-license-cc-by-2.0-uk-text";a:2:{i:0;R:17335;i:1;R:799;}s:30:"8:wm-license-cc-by-2.0-za-text";a:2:{i:0;R:17335;i:1;R:799;}s:30:"8:wm-license-cc-by-2.1-au-text";a:2:{i:0;R:17335;i:1;R:799;}s:30:"8:wm-license-cc-by-2.1-es-text";a:2:{i:0;R:17335;i:1;R:799;}s:30:"8:wm-license-cc-by-2.1-jp-text";a:2:{i:0;R:17335;i:1;R:799;}s:27:"8:wm-license-cc-by-2.5-text";a:2:{i:0;R:17335;i:1;R:799;}s:30:"8:wm-license-cc-by-2.5-ar-text";a:2:{i:0;R:17335;i:1;R:799;}s:30:"8:wm-license-cc-by-2.5-au-text";a:2:{i:0;R:17335;i:1;R:799;}s:30:"8:wm-license-cc-by-2.5-bg-text";a:2:{i:0;R:17335;i:1;R:799;}s:30:"8:wm-license-cc-by-2.5-br-text";a:2:{i:0;R:17335;i:1;R:799;}s:30:"8:wm-license-cc-by-2.5-ca-text";a:2:{i:0;R:17335;i:1;R:799;}s:30:"8:wm-license-cc-by-2.5-ch-text";a:2:{i:0;R:17335;i:1;R:799;}s:30:"8:wm-license-cc-by-2.5-cn-text";a:2:{i:0;R:17335;i:1;R:799;}s:30:"8:wm-license-cc-by-2.5-co-text";a:2:{i:0;R:17335;i:1;R:799;}s:30:"8:wm-license-cc-by-2.5-dk-text";a:2:{i:0;R:17335;i:1;R:799;}s:30:"8:wm-license-cc-by-2.5-es-text";a:2:{i:0;R:17335;i:1;R:799;}s:30:"8:wm-license-cc-by-2.5-hr-text";a:2:{i:0;R:17335;i:1;R:799;}s:30:"8:wm-license-cc-by-2.5-hu-text";a:2:{i:0;R:17335;i:1;R:799;}s:30:"8:wm-license-cc-by-2.5-il-text";a:2:{i:0;R:17335;i:1;R:799;}s:30:"8:wm-license-cc-by-2.5-in-text";a:2:{i:0;R:17335;i:1;R:799;}s:30:"8:wm-license-cc-by-2.5-it-text";a:2:{i:0;R:17335;i:1;R:799;}s:30:"8:wm-license-cc-by-2.5-mk-text";a:2:{i:0;R:17335;i:1;R:799;}s:30:"8:wm-license-cc-by-2.5-mt-text";a:2:{i:0;R:17335;i:1;R:799;}s:30:"8:wm-license-cc-by-2.5-mx-text";a:2:{i:0;R:17335;i:1;R:799;}s:30:"8:wm-license-cc-by-2.5-my-text";a:2:{i:0;R:17335;i:1;R:799;}s:30:"8:wm-license-cc-by-2.5-nl-text";a:2:{i:0;R:17335;i:1;R:799;}s:30:"8:wm-license-cc-by-2.5-pe-text";a:2:{i:0;R:17335;i:1;R:799;}s:30:"8:wm-license-cc-by-2.5-pl-text";a:2:{i:0;R:17335;i:1;R:799;}s:30:"8:wm-license-cc-by-2.5-pt-text";a:2:{i:0;R:17335;i:1;R:799;}s:36:"8:wm-license-cc-by-2.5-scotland-text";a:2:{i:0;R:17335;i:1;R:799;}s:30:"8:wm-license-cc-by-2.5-se-text";a:2:{i:0;R:17335;i:1;R:799;}s:30:"8:wm-license-cc-by-2.5-si-text";a:2:{i:0;R:17335;i:1;R:799;}s:30:"8:wm-license-cc-by-2.5-tw-text";a:2:{i:0;R:17335;i:1;R:799;}s:30:"8:wm-license-cc-by-2.5-za-text";a:2:{i:0;R:17335;i:1;R:799;}s:27:"8:wm-license-cc-by-3.0-text";a:2:{i:0;R:17335;i:1;R:799;}s:39:"8:wm-license-cc-by-3.0-2.5-2.0-1.0-text";a:2:{i:0;R:17335;i:1;R:799;}s:30:"8:wm-license-cc-by-3.0-at-text";a:2:{i:0;R:17335;i:1;R:799;}s:30:"8:wm-license-cc-by-3.0-au-text";a:2:{i:0;R:17335;i:1;R:799;}s:30:"8:wm-license-cc-by-3.0-br-text";a:2:{i:0;R:17335;i:1;R:799;}s:30:"8:wm-license-cc-by-3.0-cl-text";a:2:{i:0;R:17335;i:1;R:799;}s:30:"8:wm-license-cc-by-3.0-cr-text";a:2:{i:0;R:17335;i:1;R:799;}s:30:"8:wm-license-cc-by-3.0-cz-text";a:2:{i:0;R:17335;i:1;R:799;}s:30:"8:wm-license-cc-by-3.0-de-text";a:2:{i:0;R:17335;i:1;R:799;}s:30:"8:wm-license-cc-by-3.0-ec-text";a:2:{i:0;R:17335;i:1;R:799;}s:30:"8:wm-license-cc-by-3.0-ee-text";a:2:{i:0;R:17335;i:1;R:799;}s:30:"8:wm-license-cc-by-3.0-es-text";a:2:{i:0;R:17335;i:1;R:799;}s:30:"8:wm-license-cc-by-3.0-gr-text";a:2:{i:0;R:17335;i:1;R:799;}s:30:"8:wm-license-cc-by-3.0-gt-text";a:2:{i:0;R:17335;i:1;R:799;}s:30:"8:wm-license-cc-by-3.0-hr-text";a:2:{i:0;R:17335;i:1;R:799;}s:30:"8:wm-license-cc-by-3.0-hk-text";a:2:{i:0;R:17335;i:1;R:799;}s:30:"8:wm-license-cc-by-3.0-it-text";a:2:{i:0;R:17335;i:1;R:799;}s:30:"8:wm-license-cc-by-3.0-lu-text";a:2:{i:0;R:17335;i:1;R:799;}s:30:"8:wm-license-cc-by-3.0-nl-text";a:2:{i:0;R:17335;i:1;R:799;}s:30:"8:wm-license-cc-by-3.0-no-text";a:2:{i:0;R:17335;i:1;R:799;}s:30:"8:wm-license-cc-by-3.0-nz-text";a:2:{i:0;R:17335;i:1;R:799;}s:30:"8:wm-license-cc-by-3.0-ph-text";a:2:{i:0;R:17335;i:1;R:799;}s:30:"8:wm-license-cc-by-3.0-pl-text";a:2:{i:0;R:17335;i:1;R:799;}s:30:"8:wm-license-cc-by-3.0-pr-text";a:2:{i:0;R:17335;i:1;R:799;}s:30:"8:wm-license-cc-by-3.0-ro-text";a:2:{i:0;R:17335;i:1;R:799;}s:30:"8:wm-license-cc-by-3.0-rs-text";a:2:{i:0;R:17335;i:1;R:799;}s:30:"8:wm-license-cc-by-3.0-sg-text";a:2:{i:0;R:17335;i:1;R:799;}s:30:"8:wm-license-cc-by-3.0-th-text";a:2:{i:0;R:17335;i:1;R:799;}s:30:"8:wm-license-cc-by-3.0-tw-text";a:2:{i:0;R:17335;i:1;R:799;}s:30:"8:wm-license-cc-by-3.0-us-text";a:2:{i:0;R:17335;i:1;R:799;}s:30:"8:wm-license-cc-by-sa-1.0-text";a:2:{i:0;R:17335;i:1;R:799;}s:33:"8:wm-license-cc-by-sa-1.0-fi-text";a:2:{i:0;R:17335;i:1;R:799;}s:33:"8:wm-license-cc-by-sa-1.0-il-text";a:2:{i:0;R:17335;i:1;R:799;}s:33:"8:wm-license-cc-by-sa-1.0-nl-text";a:2:{i:0;R:17335;i:1;R:799;}s:30:"8:wm-license-cc-by-sa-2.0-text";a:2:{i:0;R:17335;i:1;R:799;}s:33:"8:wm-license-cc-by-sa-2.0-at-text";a:2:{i:0;R:17335;i:1;R:799;}s:33:"8:wm-license-cc-by-sa-2.0-au-text";a:2:{i:0;R:17335;i:1;R:799;}s:33:"8:wm-license-cc-by-sa-2.0-be-text";a:2:{i:0;R:17335;i:1;R:799;}s:33:"8:wm-license-cc-by-sa-2.0-br-text";a:2:{i:0;R:17335;i:1;R:799;}s:33:"8:wm-license-cc-by-sa-2.0-ca-text";a:2:{i:0;R:17335;i:1;R:799;}s:33:"8:wm-license-cc-by-sa-2.0-cl-text";a:2:{i:0;R:17335;i:1;R:799;}s:33:"8:wm-license-cc-by-sa-2.0-de-text";a:2:{i:0;R:17335;i:1;R:799;}s:33:"8:wm-license-cc-by-sa-2.0-es-text";a:2:{i:0;R:17335;i:1;R:799;}s:33:"8:wm-license-cc-by-sa-2.0-fr-text";a:2:{i:0;R:17335;i:1;R:799;}s:33:"8:wm-license-cc-by-sa-2.0-hr-text";a:2:{i:0;R:17335;i:1;R:799;}s:33:"8:wm-license-cc-by-sa-2.0-it-text";a:2:{i:0;R:17335;i:1;R:799;}s:33:"8:wm-license-cc-by-sa-2.0-jp-text";a:2:{i:0;R:17335;i:1;R:799;}s:33:"8:wm-license-cc-by-sa-2.0-kr-text";a:2:{i:0;R:17335;i:1;R:799;}s:33:"8:wm-license-cc-by-sa-2.0-nl-text";a:2:{i:0;R:17335;i:1;R:799;}s:33:"8:wm-license-cc-by-sa-2.0-pl-text";a:2:{i:0;R:17335;i:1;R:799;}s:33:"8:wm-license-cc-by-sa-2.0-tw-text";a:2:{i:0;R:17335;i:1;R:799;}s:33:"8:wm-license-cc-by-sa-2.0-uk-text";a:2:{i:0;R:17335;i:1;R:799;}s:33:"8:wm-license-cc-by-sa-2.0-za-text";a:2:{i:0;R:17335;i:1;R:799;}s:33:"8:wm-license-cc-by-sa-2.1-au-text";a:2:{i:0;R:17335;i:1;R:799;}s:33:"8:wm-license-cc-by-sa-2.1-es-text";a:2:{i:0;R:17335;i:1;R:799;}s:33:"8:wm-license-cc-by-sa-2.1-jp-text";a:2:{i:0;R:17335;i:1;R:799;}s:30:"8:wm-license-cc-by-sa-2.5-text";a:2:{i:0;R:17335;i:1;R:799;}s:38:"8:wm-license-cc-by-sa-2.5-2.0-1.0-text";a:2:{i:0;R:17335;i:1;R:799;}s:33:"8:wm-license-cc-by-sa-2.5-ar-text";a:2:{i:0;R:17335;i:1;R:799;}s:33:"8:wm-license-cc-by-sa-2.5-au-text";a:2:{i:0;R:17335;i:1;R:799;}s:33:"8:wm-license-cc-by-sa-2.5-bg-text";a:2:{i:0;R:17335;i:1;R:799;}s:33:"8:wm-license-cc-by-sa-2.5-br-text";a:2:{i:0;R:17335;i:1;R:799;}s:33:"8:wm-license-cc-by-sa-2.5-ca-text";a:2:{i:0;R:17335;i:1;R:799;}s:33:"8:wm-license-cc-by-sa-2.5-ch-text";a:2:{i:0;R:17335;i:1;R:799;}s:33:"8:wm-license-cc-by-sa-2.5-cn-text";a:2:{i:0;R:17335;i:1;R:799;}s:33:"8:wm-license-cc-by-sa-2.5-co-text";a:2:{i:0;R:17335;i:1;R:799;}s:33:"8:wm-license-cc-by-sa-2.5-dk-text";a:2:{i:0;R:17335;i:1;R:799;}s:33:"8:wm-license-cc-by-sa-2.5-es-text";a:2:{i:0;R:17335;i:1;R:799;}s:33:"8:wm-license-cc-by-sa-2.5-hr-text";a:2:{i:0;R:17335;i:1;R:799;}s:33:"8:wm-license-cc-by-sa-2.5-hu-text";a:2:{i:0;R:17335;i:1;R:799;}s:33:"8:wm-license-cc-by-sa-2.5-il-text";a:2:{i:0;R:17335;i:1;R:799;}s:33:"8:wm-license-cc-by-sa-2.5-in-text";a:2:{i:0;R:17335;i:1;R:799;}s:33:"8:wm-license-cc-by-sa-2.5-it-text";a:2:{i:0;R:17335;i:1;R:799;}s:33:"8:wm-license-cc-by-sa-2.5-mk-text";a:2:{i:0;R:17335;i:1;R:799;}s:33:"8:wm-license-cc-by-sa-2.5-mt-text";a:2:{i:0;R:17335;i:1;R:799;}s:33:"8:wm-license-cc-by-sa-2.5-mx-text";a:2:{i:0;R:17335;i:1;R:799;}s:33:"8:wm-license-cc-by-sa-2.5-my-text";a:2:{i:0;R:17335;i:1;R:799;}s:33:"8:wm-license-cc-by-sa-2.5-nl-text";a:2:{i:0;R:17335;i:1;R:799;}s:33:"8:wm-license-cc-by-sa-2.5-pe-text";a:2:{i:0;R:17335;i:1;R:799;}s:33:"8:wm-license-cc-by-sa-2.5-pl-text";a:2:{i:0;R:17335;i:1;R:799;}s:33:"8:wm-license-cc-by-sa-2.5-pt-text";a:2:{i:0;R:17335;i:1;R:799;}s:39:"8:wm-license-cc-by-sa-2.5-scotland-text";a:2:{i:0;R:17335;i:1;R:799;}s:33:"8:wm-license-cc-by-sa-2.5-se-text";a:2:{i:0;R:17335;i:1;R:799;}s:33:"8:wm-license-cc-by-sa-2.5-si-text";a:2:{i:0;R:17335;i:1;R:799;}s:33:"8:wm-license-cc-by-sa-2.5-tw-text";a:2:{i:0;R:17335;i:1;R:799;}s:33:"8:wm-license-cc-by-sa-2.5-za-text";a:2:{i:0;R:17335;i:1;R:799;}s:30:"8:wm-license-cc-by-sa-3.0-text";a:2:{i:0;R:17335;i:1;R:799;}s:42:"8:wm-license-cc-by-sa-3.0-2.5-2.0-1.0-text";a:2:{i:0;R:17335;i:1;R:799;}s:33:"8:wm-license-cc-by-sa-3.0-at-text";a:2:{i:0;R:17335;i:1;R:799;}s:33:"8:wm-license-cc-by-sa-3.0-au-text";a:2:{i:0;R:17335;i:1;R:799;}s:33:"8:wm-license-cc-by-sa-3.0-br-text";a:2:{i:0;R:17335;i:1;R:799;}s:33:"8:wm-license-cc-by-sa-3.0-cl-text";a:2:{i:0;R:17335;i:1;R:799;}s:33:"8:wm-license-cc-by-sa-3.0-cr-text";a:2:{i:0;R:17335;i:1;R:799;}s:33:"8:wm-license-cc-by-sa-3.0-cz-text";a:2:{i:0;R:17335;i:1;R:799;}s:33:"8:wm-license-cc-by-sa-3.0-de-text";a:2:{i:0;R:17335;i:1;R:799;}s:33:"8:wm-license-cc-by-sa-3.0-ec-text";a:2:{i:0;R:17335;i:1;R:799;}s:33:"8:wm-license-cc-by-sa-3.0-ee-text";a:2:{i:0;R:17335;i:1;R:799;}s:33:"8:wm-license-cc-by-sa-3.0-es-text";a:2:{i:0;R:17335;i:1;R:799;}s:33:"8:wm-license-cc-by-sa-3.0-gr-text";a:2:{i:0;R:17335;i:1;R:799;}s:33:"8:wm-license-cc-by-sa-3.0-gt-text";a:2:{i:0;R:17335;i:1;R:799;}s:33:"8:wm-license-cc-by-sa-3.0-hk-text";a:2:{i:0;R:17335;i:1;R:799;}s:33:"8:wm-license-cc-by-sa-3.0-hr-text";a:2:{i:0;R:17335;i:1;R:799;}s:33:"8:wm-license-cc-by-sa-3.0-it-text";a:2:{i:0;R:17335;i:1;R:799;}s:33:"8:wm-license-cc-by-sa-3.0-lu-text";a:2:{i:0;R:17335;i:1;R:799;}s:33:"8:wm-license-cc-by-sa-3.0-nl-text";a:2:{i:0;R:17335;i:1;R:799;}s:33:"8:wm-license-cc-by-sa-3.0-no-text";a:2:{i:0;R:17335;i:1;R:799;}s:33:"8:wm-license-cc-by-sa-3.0-nz-text";a:2:{i:0;R:17335;i:1;R:799;}s:33:"8:wm-license-cc-by-sa-3.0-ph-text";a:2:{i:0;R:17335;i:1;R:799;}s:33:"8:wm-license-cc-by-sa-3.0-pl-text";a:2:{i:0;R:17335;i:1;R:799;}s:33:"8:wm-license-cc-by-sa-3.0-pr-text";a:2:{i:0;R:17335;i:1;R:799;}s:33:"8:wm-license-cc-by-sa-3.0-ro-text";a:2:{i:0;R:17335;i:1;R:799;}s:33:"8:wm-license-cc-by-sa-3.0-rs-text";a:2:{i:0;R:17335;i:1;R:799;}s:33:"8:wm-license-cc-by-sa-3.0-sg-text";a:2:{i:0;R:17335;i:1;R:799;}s:33:"8:wm-license-cc-by-sa-3.0-th-text";a:2:{i:0;R:17335;i:1;R:799;}s:33:"8:wm-license-cc-by-sa-3.0-tw-text";a:2:{i:0;R:17335;i:1;R:799;}s:33:"8:wm-license-cc-by-sa-3.0-us-text";a:2:{i:0;R:17335;i:1;R:799;}s:27:"8:wm-license-cc-sa-1.0-text";a:2:{i:0;R:17335;i:1;R:799;}s:30:"8:wm-license-cc-sa-1.0-fi-text";a:2:{i:0;R:17335;i:1;R:799;}s:30:"8:wm-license-cc-sa-1.0-nl-text";a:2:{i:0;R:17335;i:1;R:799;}s:30:"8:wm-license-cc-sa-2.0-jp-text";a:2:{i:0;R:17335;i:1;R:799;}s:25:"8:wm-license-cc-zero-text";a:2:{i:0;R:17335;i:1;R:799;}s:32:"8:wm-license-cc-zero-explanation";a:2:{i:0;R:17335;i:1;R:799;}s:20:"8:wm-license-cc-free";a:2:{i:0;R:17335;i:1;R:799;}s:36:"8:wm-license-cc-free-to-share-header";a:2:{i:0;R:17335;i:1;R:799;}s:34:"8:wm-license-cc-free-to-share-text";a:2:{i:0;R:17335;i:1;R:799;}s:36:"8:wm-license-cc-free-to-remix-header";a:2:{i:0;R:17335;i:1;R:799;}s:34:"8:wm-license-cc-free-to-remix-text";a:2:{i:0;R:17335;i:1;R:799;}s:26:"8:wm-license-cc-conditions";a:2:{i:0;R:17335;i:1;R:799;}s:45:"8:wm-license-cc-conditions-attribution-header";a:2:{i:0;R:17335;i:1;R:799;}s:43:"8:wm-license-cc-conditions-attribution-text";a:2:{i:0;R:17335;i:1;R:799;}s:45:"8:wm-license-cc-conditions-share_alike-header";a:2:{i:0;R:17335;i:1;R:799;}s:43:"8:wm-license-cc-conditions-share_alike-text";a:2:{i:0;R:17335;i:1;R:799;}s:28:"8:wm-license-cc-pd-mark-link";a:2:{i:0;R:17335;i:1;R:799;}s:28:"8:wm-license-cc-pd-mark-text";a:2:{i:0;R:17335;i:1;R:799;}s:14:"8:objecteditor";a:2:{i:0;s:19:"ext-wikiobjectmodel";i:1;R:799;}s:12:"8:wom_editor";a:2:{i:0;R:17527;i:1;R:799;}s:10:"8:wom-desc";a:2:{i:0;R:17527;i:1;R:799;}s:10:"8:wikisync";a:2:{i:0;s:12:"ext-wikisync";i:1;R:799;}s:15:"8:wikisync-desc";a:2:{i:0;R:17531;i:1;R:799;}s:20:"8:wikisync_direction";a:2:{i:0;R:17531;i:1;R:799;}s:21:"8:wikisync_local_root";a:2:{i:0;R:17531;i:1;R:799;}s:22:"8:wikisync_remote_root";a:2:{i:0;R:17531;i:1;R:799;}s:21:"8:wikisync_remote_log";a:2:{i:0;R:17531;i:1;R:799;}s:20:"8:wikisync_clear_log";a:2:{i:0;R:17531;i:1;R:799;}s:31:"8:wikisync_login_to_remote_wiki";a:2:{i:0;R:17531;i:1;R:799;}s:27:"8:wikisync_remote_wiki_root";a:2:{i:0;R:17531;i:1;R:799;}s:30:"8:wikisync_remote_wiki_example";a:2:{i:0;R:17531;i:1;R:799;}s:27:"8:wikisync_remote_wiki_user";a:2:{i:0;R:17531;i:1;R:799;}s:27:"8:wikisync_remote_wiki_pass";a:2:{i:0;R:17531;i:1;R:799;}s:30:"8:wikisync_remote_login_button";a:2:{i:0;R:17531;i:1;R:799;}s:21:"8:wikisync_sync_files";a:2:{i:0;R:17531;i:1;R:799;}s:25:"8:wikisync_store_password";a:2:{i:0;R:17531;i:1;R:799;}s:35:"8:wikisync_storing_password_warning";a:2:{i:0;R:17531;i:1;R:799;}s:33:"8:wikisync_synchronization_button";a:2:{i:0;R:17531;i:1;R:799;}s:24:"8:wikisync_scheduler_log";a:2:{i:0;R:17531;i:1;R:799;}s:26:"8:wikisync_scheduler_setup";a:2:{i:0;R:17531;i:1;R:799;}s:28:"8:wikisync_scheduler_turn_on";a:2:{i:0;R:17531;i:1;R:799;}s:37:"8:wikisync_scheduler_switch_direction";a:2:{i:0;R:17531;i:1;R:799;}s:34:"8:wikisync_scheduler_time_interval";a:2:{i:0;R:17531;i:1;R:799;}s:23:"8:wikisync_apply_button";a:2:{i:0;R:17531;i:1;R:799;}s:26:"8:wikisync_log_imported_by";a:2:{i:0;R:17531;i:1;R:799;}s:26:"8:wikisync_log_uploaded_by";a:2:{i:0;R:17531;i:1;R:799;}s:27:"8:wikisync_unsupported_user";a:2:{i:0;R:17531;i:1;R:799;}s:36:"8:wikisync_api_result_unknown_action";a:2:{i:0;R:17531;i:1;R:799;}s:31:"8:wikisync_api_result_exception";a:2:{i:0;R:17531;i:1;R:799;}s:30:"8:wikisync_api_result_noaccess";a:2:{i:0;R:17531;i:1;R:799;}s:39:"8:wikisync_api_result_invalid_parameter";a:2:{i:0;R:17531;i:1;R:799;}s:26:"8:wikisync_api_result_http";a:2:{i:0;R:17531;i:1;R:799;}s:33:"8:wikisync_api_result_unsupported";a:2:{i:0;R:17531;i:1;R:799;}s:28:"8:wikisync_api_result_noname";a:2:{i:0;R:17531;i:1;R:799;}s:29:"8:wikisync_api_result_illegal";a:2:{i:0;R:17531;i:1;R:799;}s:31:"8:wikisync_api_result_notexists";a:2:{i:0;R:17531;i:1;R:799;}s:31:"8:wikisync_api_result_emptypass";a:2:{i:0;R:17531;i:1;R:799;}s:31:"8:wikisync_api_result_wrongpass";a:2:{i:0;R:17531;i:1;R:799;}s:37:"8:wikisync_api_result_wrongpluginpass";a:2:{i:0;R:17531;i:1;R:799;}s:35:"8:wikisync_api_result_createblocked";a:2:{i:0;R:17531;i:1;R:799;}s:31:"8:wikisync_api_result_throttled";a:2:{i:0;R:17531;i:1;R:799;}s:29:"8:wikisync_api_result_blocked";a:2:{i:0;R:17531;i:1;R:799;}s:34:"8:wikisync_api_result_mustbeposted";a:2:{i:0;R:17531;i:1;R:799;}s:31:"8:wikisync_api_result_needtoken";a:2:{i:0;R:17531;i:1;R:799;}s:38:"8:wikisync_api_result_no_import_rights";a:2:{i:0;R:17531;i:1;R:799;}s:29:"8:wikisync_api_result_success";a:2:{i:0;R:17531;i:1;R:799;}s:27:"8:wikisync_js_last_op_error";a:2:{i:0;R:17531;i:1;R:799;}s:42:"8:wikisync_js_synchronization_confirmation";a:2:{i:0;R:17531;i:1;R:799;}s:37:"8:wikisync_js_synchronization_success";a:2:{i:0;R:17531;i:1;R:799;}s:34:"8:wikisync_js_already_synchronized";a:2:{i:0;R:17531;i:1;R:799;}s:28:"8:wikisync_js_sync_to_itself";a:2:{i:0;R:17531;i:1;R:799;}s:25:"8:wikisync_js_diff_search";a:2:{i:0;R:17531;i:1;R:799;}s:22:"8:wikisync_js_revision";a:2:{i:0;R:17531;i:1;R:799;}s:32:"8:wikisync_js_file_size_mismatch";a:2:{i:0;R:17531;i:1;R:799;}s:36:"8:wikisync_js_invalid_scheduler_time";a:2:{i:0;R:17531;i:1;R:799;}s:33:"8:wikisync_js_scheduler_countdown";a:2:{i:0;R:17531;i:1;R:799;}s:28:"8:wikisync_js_sync_start_ltr";a:2:{i:0;R:17531;i:1;R:799;}s:28:"8:wikisync_js_sync_start_rtl";a:2:{i:0;R:17531;i:1;R:799;}s:26:"8:wikisync_js_sync_end_ltr";a:2:{i:0;R:17531;i:1;R:799;}s:26:"8:wikisync_js_sync_end_rtl";a:2:{i:0;R:17531;i:1;R:799;}s:26:"8:wikitextloggedinout-desc";a:2:{i:0;s:23:"ext-wikitextloggedinout";i:1;R:799;}s:16:"8:wikitweet-desc";a:2:{i:0;s:13:"ext-wikitweet";i:1;R:799;}s:16:"8:wikitweet-name";a:2:{i:0;R:17593;i:1;R:799;}s:23:"8:wikitweet-pleaselogin";a:2:{i:0;R:17593;i:1;R:799;}s:22:"8:wikitweet-moretweets";a:2:{i:0;R:17593;i:1;R:799;}s:20:"8:wikitweet-infoajax";a:2:{i:0;R:17593;i:1;R:799;}s:18:"8:wikitweet-submit";a:2:{i:0;R:17593;i:1;R:799;}s:25:"8:wikitweet-submitandmail";a:2:{i:0;R:17593;i:1;R:799;}s:21:"8:wikitweet-intheroom";a:2:{i:0;R:17593;i:1;R:799;}s:21:"8:wikitweet-subscribe";a:2:{i:0;R:17593;i:1;R:799;}s:22:"8:wikitweet-subscribed";a:2:{i:0;R:17593;i:1;R:799;}s:23:"8:wikitweet-unsubscribe";a:2:{i:0;R:17593;i:1;R:799;}s:18:"8:wikitweet-delete";a:2:{i:0;R:17593;i:1;R:799;}s:18:"8:wikitweet-inform";a:2:{i:0;R:17593;i:1;R:799;}s:19:"8:wikitweet-private";a:2:{i:0;R:17593;i:1;R:799;}s:18:"8:wikitweet-answer";a:2:{i:0;R:17593;i:1;R:799;}s:21:"8:wikitweet-anonymous";a:2:{i:0;R:17593;i:1;R:799;}s:25:"8:wikitweet-tweets-tagged";a:2:{i:0;R:17593;i:1;R:799;}s:25:"8:wikitweet-back-timeline";a:2:{i:0;R:17593;i:1;R:799;}s:28:"8:wikitweet-tweets-from-room";a:2:{i:0;R:17593;i:1;R:799;}s:19:"8:wikitweet-timeago";a:2:{i:0;R:17593;i:1;R:799;}s:23:"8:wikitweet-inthefuture";a:2:{i:0;R:17593;i:1;R:799;}s:25:"8:wikitweet-fewsecondsago";a:2:{i:0;R:17593;i:1;R:799;}s:18:"8:wikitweet-status";a:2:{i:0;R:17593;i:1;R:799;}s:19:"8:wikitweet-status0";a:2:{i:0;R:17593;i:1;R:799;}s:19:"8:wikitweet-status1";a:2:{i:0;R:17593;i:1;R:799;}s:19:"8:wikitweet-status2";a:2:{i:0;R:17593;i:1;R:799;}s:19:"8:wikitweet-status3";a:2:{i:0;R:17593;i:1;R:799;}s:19:"8:wikitweet-resolve";a:2:{i:0;R:17593;i:1;R:799;}s:20:"8:wikitweet-concerns";a:2:{i:0;R:17593;i:1;R:799;}s:19:"8:wikitweet-comment";a:2:{i:0;R:17593;i:1;R:799;}s:23:"8:wikitweet-subscribers";a:2:{i:0;R:17593;i:1;R:799;}s:18:"8:wikitweet-hourly";a:2:{i:0;R:17593;i:1;R:799;}s:21:"8:wikitweet-perperson";a:2:{i:0;R:17593;i:1;R:799;}s:24:"8:wikitweet-inresponseto";a:2:{i:0;R:17593;i:1;R:799;}s:16:"8:wikitweet-from";a:2:{i:0;R:17593;i:1;R:799;}s:14:"8:wikitweet-in";a:2:{i:0;R:17593;i:1;R:799;}s:22:"8:wikitweet-directlink";a:2:{i:0;R:17593;i:1;R:799;}s:20:"8:wikitweet-mailsent";a:2:{i:0;R:17593;i:1;R:799;}s:19:"8:wikitweet-viaroom";a:2:{i:0;R:17593;i:1;R:799;}s:23:"8:wikitweet-alertsolved";a:2:{i:0;R:17593;i:1;R:799;}s:23:"8:wikitweet-cannotparse";a:2:{i:0;R:17593;i:1;R:799;}s:22:"8:windowsazuresdk-desc";a:2:{i:0;s:19:"ext-windowsazuresdk";i:1;R:799;}s:26:"8:windowsazurestorage-desc";a:2:{i:0;s:23:"ext-windowsazurestorage";i:1;R:799;}s:13:"8:woopra-desc";a:2:{i:0;s:10:"ext-woopra";i:1;R:799;}s:12:"8:xmlrc-desc";a:2:{i:0;s:9:"ext-xmlrc";i:1;R:799;}s:14:"8:youtube-desc";a:2:{i:0;s:11:"ext-youtube";i:1;R:799;}s:16:"8:youtubeauthsub";a:2:{i:0;s:18:"ext-youtubeauthsub";i:1;R:799;}s:21:"8:youtubeauthsub-desc";a:2:{i:0;R:17645;i:1;R:799;}s:21:"8:youtubeauthsub_info";a:2:{i:0;R:17645;i:1;R:799;}s:22:"8:youtubeauthsub_title";a:2:{i:0;R:17645;i:1;R:799;}s:28:"8:youtubeauthsub_description";a:2:{i:0;R:17645;i:1;R:799;}s:25:"8:youtubeauthsub_password";a:2:{i:0;R:17645;i:1;R:799;}s:25:"8:youtubeauthsub_username";a:2:{i:0;R:17645;i:1;R:799;}s:25:"8:youtubeauthsub_keywords";a:2:{i:0;R:17645;i:1;R:799;}s:25:"8:youtubeauthsub_category";a:2:{i:0;R:17645;i:1;R:799;}s:23:"8:youtubeauthsub_submit";a:2:{i:0;R:17645;i:1;R:799;}s:26:"8:youtubeauthsub_clickhere";a:2:{i:0;R:17645;i:1;R:799;}s:27:"8:youtubeauthsub_tokenerror";a:2:{i:0;R:17645;i:1;R:799;}s:24:"8:youtubeauthsub_success";a:2:{i:0;R:17645;i:1;R:799;}s:36:"8:youtubeauthsub_authsubinstructions";a:2:{i:0;R:17645;i:1;R:799;}s:27:"8:youtubeauthsub_uploadhere";a:2:{i:0;R:17645;i:1;R:799;}s:29:"8:youtubeauthsub_uploadbutton";a:2:{i:0;R:17645;i:1;R:799;}s:21:"8:youtubeauthsub_code";a:2:{i:0;R:17645;i:1;R:799;}s:24:"8:youtubeauthsub_summary";a:2:{i:0;R:17645;i:1;R:799;}s:26:"8:youtubeauthsub_uploading";a:2:{i:0;R:17645;i:1;R:799;}s:25:"8:youtubeauthsub_viewpage";a:2:{i:0;R:17645;i:1;R:799;}s:35:"8:youtubeauthsub_jserror_nokeywords";a:2:{i:0;R:17645;i:1;R:799;}s:32:"8:youtubeauthsub_jserror_notitle";a:2:{i:0;R:17645;i:1;R:799;}s:31:"8:youtubeauthsub_jserror_nodesc";a:2:{i:0;R:17645;i:1;R:799;}s:55:"1242:database-translated_activities-name-activity_id-19";a:2:{i:0;s:16:"out-eol-database";i:1;s:13:"out-eol-0-all";}s:55:"1242:database-translated_activities-name-activity_id-50";a:2:{i:0;R:17669;i:1;R:17670;}s:55:"1242:database-translated_activities-name-activity_id-51";a:2:{i:0;R:17669;i:1;R:17670;}s:55:"1242:database-translated_activities-name-activity_id-52";a:2:{i:0;R:17669;i:1;R:17670;}s:55:"1242:database-translated_activities-name-activity_id-53";a:2:{i:0;R:17669;i:1;R:17670;}s:55:"1242:database-translated_activities-name-activity_id-54";a:2:{i:0;R:17669;i:1;R:17670;}s:55:"1242:database-translated_activities-name-activity_id-55";a:2:{i:0;R:17669;i:1;R:17670;}s:55:"1242:database-translated_activities-name-activity_id-56";a:2:{i:0;R:17669;i:1;R:17670;}s:55:"1242:database-translated_activities-name-activity_id-57";a:2:{i:0;R:17669;i:1;R:17670;}s:55:"1242:database-translated_activities-name-activity_id-58";a:2:{i:0;R:17669;i:1;R:17670;}s:55:"1242:database-translated_activities-name-activity_id-59";a:2:{i:0;R:17669;i:1;R:17670;}s:55:"1242:database-translated_activities-name-activity_id-63";a:2:{i:0;R:17669;i:1;R:17670;}s:55:"1242:database-translated_activities-name-activity_id-64";a:2:{i:0;R:17669;i:1;R:17670;}s:59:"1242:database-translated_agent_roles-label-agent_role_id-10";a:2:{i:0;R:17669;i:1;R:17670;}s:59:"1242:database-translated_agent_roles-label-agent_role_id-11";a:2:{i:0;R:17669;i:1;R:17670;}s:59:"1242:database-translated_agent_roles-label-agent_role_id-12";a:2:{i:0;R:17669;i:1;R:17670;}s:59:"1242:database-translated_agent_roles-label-agent_role_id-13";a:2:{i:0;R:17669;i:1;R:17670;}s:59:"1242:database-translated_agent_roles-label-agent_role_id-14";a:2:{i:0;R:17669;i:1;R:17670;}s:59:"1242:database-translated_agent_roles-label-agent_role_id-15";a:2:{i:0;R:17669;i:1;R:17670;}s:59:"1242:database-translated_agent_roles-label-agent_role_id-16";a:2:{i:0;R:17669;i:1;R:17670;}s:58:"1242:database-translated_agent_roles-label-agent_role_id-1";a:2:{i:0;R:17669;i:1;R:17670;}s:59:"1242:database-translated_agent_roles-label-agent_role_id-21";a:2:{i:0;R:17669;i:1;R:17670;}s:59:"1242:database-translated_agent_roles-label-agent_role_id-22";a:2:{i:0;R:17669;i:1;R:17670;}s:59:"1242:database-translated_agent_roles-label-agent_role_id-23";a:2:{i:0;R:17669;i:1;R:17670;}s:59:"1242:database-translated_agent_roles-label-agent_role_id-24";a:2:{i:0;R:17669;i:1;R:17670;}s:58:"1242:database-translated_agent_roles-label-agent_role_id-2";a:2:{i:0;R:17669;i:1;R:17670;}s:58:"1242:database-translated_agent_roles-label-agent_role_id-3";a:2:{i:0;R:17669;i:1;R:17670;}s:58:"1242:database-translated_agent_roles-label-agent_role_id-4";a:2:{i:0;R:17669;i:1;R:17670;}s:58:"1242:database-translated_agent_roles-label-agent_role_id-5";a:2:{i:0;R:17669;i:1;R:17670;}s:58:"1242:database-translated_agent_roles-label-agent_role_id-6";a:2:{i:0;R:17669;i:1;R:17670;}s:58:"1242:database-translated_agent_roles-label-agent_role_id-7";a:2:{i:0;R:17669;i:1;R:17670;}s:58:"1242:database-translated_agent_roles-label-agent_role_id-8";a:2:{i:0;R:17669;i:1;R:17670;}s:58:"1242:database-translated_agent_roles-label-agent_role_id-9";a:2:{i:0;R:17669;i:1;R:17670;}s:54:"1242:database-translated_audiences-label-audience_id-1";a:2:{i:0;R:17669;i:1;R:17670;}s:54:"1242:database-translated_audiences-label-audience_id-2";a:2:{i:0;R:17669;i:1;R:17670;}s:54:"1242:database-translated_audiences-label-audience_id-3";a:2:{i:0;R:17669;i:1;R:17670;}s:69:"1242:database-translated_collection_types-label-collection_type_id-10";a:2:{i:0;R:17669;i:1;R:17670;}s:69:"1242:database-translated_collection_types-label-collection_type_id-11";a:2:{i:0;R:17669;i:1;R:17670;}s:69:"1242:database-translated_collection_types-label-collection_type_id-12";a:2:{i:0;R:17669;i:1;R:17670;}s:69:"1242:database-translated_collection_types-label-collection_type_id-13";a:2:{i:0;R:17669;i:1;R:17670;}s:69:"1242:database-translated_collection_types-label-collection_type_id-14";a:2:{i:0;R:17669;i:1;R:17670;}s:69:"1242:database-translated_collection_types-label-collection_type_id-15";a:2:{i:0;R:17669;i:1;R:17670;}s:69:"1242:database-translated_collection_types-label-collection_type_id-16";a:2:{i:0;R:17669;i:1;R:17670;}s:69:"1242:database-translated_collection_types-label-collection_type_id-17";a:2:{i:0;R:17669;i:1;R:17670;}s:69:"1242:database-translated_collection_types-label-collection_type_id-18";a:2:{i:0;R:17669;i:1;R:17670;}s:69:"1242:database-translated_collection_types-label-collection_type_id-19";a:2:{i:0;R:17669;i:1;R:17670;}s:68:"1242:database-translated_collection_types-label-collection_type_id-1";a:2:{i:0;R:17669;i:1;R:17670;}s:69:"1242:database-translated_collection_types-label-collection_type_id-20";a:2:{i:0;R:17669;i:1;R:17670;}s:69:"1242:database-translated_collection_types-label-collection_type_id-21";a:2:{i:0;R:17669;i:1;R:17670;}s:69:"1242:database-translated_collection_types-label-collection_type_id-22";a:2:{i:0;R:17669;i:1;R:17670;}s:69:"1242:database-translated_collection_types-label-collection_type_id-23";a:2:{i:0;R:17669;i:1;R:17670;}s:69:"1242:database-translated_collection_types-label-collection_type_id-24";a:2:{i:0;R:17669;i:1;R:17670;}s:68:"1242:database-translated_collection_types-label-collection_type_id-2";a:2:{i:0;R:17669;i:1;R:17670;}s:68:"1242:database-translated_collection_types-label-collection_type_id-3";a:2:{i:0;R:17669;i:1;R:17670;}s:68:"1242:database-translated_collection_types-label-collection_type_id-4";a:2:{i:0;R:17669;i:1;R:17670;}s:68:"1242:database-translated_collection_types-label-collection_type_id-5";a:2:{i:0;R:17669;i:1;R:17670;}s:68:"1242:database-translated_collection_types-label-collection_type_id-6";a:2:{i:0;R:17669;i:1;R:17670;}s:68:"1242:database-translated_collection_types-label-collection_type_id-7";a:2:{i:0;R:17669;i:1;R:17670;}s:68:"1242:database-translated_collection_types-label-collection_type_id-8";a:2:{i:0;R:17669;i:1;R:17670;}s:68:"1242:database-translated_collection_types-label-collection_type_id-9";a:2:{i:0;R:17669;i:1;R:17670;}s:62:"1242:database-translated_contact_roles-label-contact_role_id-1";a:2:{i:0;R:17669;i:1;R:17670;}s:62:"1242:database-translated_contact_roles-label-contact_role_id-2";a:2:{i:0;R:17669;i:1;R:17670;}s:62:"1242:database-translated_contact_roles-label-contact_role_id-3";a:2:{i:0;R:17669;i:1;R:17670;}s:69:"1242:database-translated_contact_subjects-title-contact_subject_id-24";a:2:{i:0;R:17669;i:1;R:17670;}s:69:"1242:database-translated_contact_subjects-title-contact_subject_id-25";a:2:{i:0;R:17669;i:1;R:17670;}s:69:"1242:database-translated_contact_subjects-title-contact_subject_id-26";a:2:{i:0;R:17669;i:1;R:17670;}s:69:"1242:database-translated_contact_subjects-title-contact_subject_id-27";a:2:{i:0;R:17669;i:1;R:17670;}s:69:"1242:database-translated_contact_subjects-title-contact_subject_id-28";a:2:{i:0;R:17669;i:1;R:17670;}s:69:"1242:database-translated_contact_subjects-title-contact_subject_id-29";a:2:{i:0;R:17669;i:1;R:17670;}s:69:"1242:database-translated_contact_subjects-title-contact_subject_id-30";a:2:{i:0;R:17669;i:1;R:17670;}s:69:"1242:database-translated_contact_subjects-title-contact_subject_id-31";a:2:{i:0;R:17669;i:1;R:17670;}s:69:"1242:database-translated_contact_subjects-title-contact_subject_id-32";a:2:{i:0;R:17669;i:1;R:17670;}s:69:"1242:database-translated_contact_subjects-title-contact_subject_id-33";a:2:{i:0;R:17669;i:1;R:17670;}s:69:"1242:database-translated_contact_subjects-title-contact_subject_id-34";a:2:{i:0;R:17669;i:1;R:17670;}s:69:"1242:database-translated_contact_subjects-title-contact_subject_id-35";a:2:{i:0;R:17669;i:1;R:17670;}s:83:"1242:database-translated_content_partner_statuses-label-content_partner_status_id-1";a:2:{i:0;R:17669;i:1;R:17670;}s:83:"1242:database-translated_content_partner_statuses-label-content_partner_status_id-2";a:2:{i:0;R:17669;i:1;R:17670;}s:83:"1242:database-translated_content_partner_statuses-label-content_partner_status_id-3";a:2:{i:0;R:17669;i:1;R:17670;}s:83:"1242:database-translated_content_partner_statuses-label-content_partner_status_id-4";a:2:{i:0;R:17669;i:1;R:17670;}s:64:"1242:database-translated_content_tables-label-content_table_id-1";a:2:{i:0;R:17669;i:1;R:17670;}s:57:"1242:database-translated_data_types-label-data_type_id-10";a:2:{i:0;R:17669;i:1;R:17670;}s:56:"1242:database-translated_data_types-label-data_type_id-1";a:2:{i:0;R:17669;i:1;R:17670;}s:56:"1242:database-translated_data_types-label-data_type_id-2";a:2:{i:0;R:17669;i:1;R:17670;}s:56:"1242:database-translated_data_types-label-data_type_id-3";a:2:{i:0;R:17669;i:1;R:17670;}s:56:"1242:database-translated_data_types-label-data_type_id-4";a:2:{i:0;R:17669;i:1;R:17670;}s:56:"1242:database-translated_data_types-label-data_type_id-5";a:2:{i:0;R:17669;i:1;R:17670;}s:56:"1242:database-translated_data_types-label-data_type_id-6";a:2:{i:0;R:17669;i:1;R:17670;}s:56:"1242:database-translated_data_types-label-data_type_id-7";a:2:{i:0;R:17669;i:1;R:17670;}s:56:"1242:database-translated_data_types-label-data_type_id-8";a:2:{i:0;R:17669;i:1;R:17670;}s:58:"1242:database-translated_licenses-description-license_id-1";a:2:{i:0;R:17669;i:1;R:17670;}s:59:"1242:database-translated_licenses-description-license_id-29";a:2:{i:0;R:17669;i:1;R:17670;}s:58:"1242:database-translated_licenses-description-license_id-2";a:2:{i:0;R:17669;i:1;R:17670;}s:59:"1242:database-translated_licenses-description-license_id-30";a:2:{i:0;R:17669;i:1;R:17670;}s:59:"1242:database-translated_licenses-description-license_id-31";a:2:{i:0;R:17669;i:1;R:17670;}s:59:"1242:database-translated_licenses-description-license_id-32";a:2:{i:0;R:17669;i:1;R:17670;}s:59:"1242:database-translated_licenses-description-license_id-33";a:2:{i:0;R:17669;i:1;R:17670;}s:59:"1242:database-translated_licenses-description-license_id-34";a:2:{i:0;R:17669;i:1;R:17670;}s:59:"1242:database-translated_licenses-description-license_id-35";a:2:{i:0;R:17669;i:1;R:17670;}s:59:"1242:database-translated_licenses-description-license_id-36";a:2:{i:0;R:17669;i:1;R:17670;}s:59:"1242:database-translated_licenses-description-license_id-37";a:2:{i:0;R:17669;i:1;R:17670;}s:59:"1242:database-translated_licenses-description-license_id-38";a:2:{i:0;R:17669;i:1;R:17670;}s:59:"1242:database-translated_licenses-description-license_id-39";a:2:{i:0;R:17669;i:1;R:17670;}s:58:"1242:database-translated_licenses-description-license_id-3";a:2:{i:0;R:17669;i:1;R:17670;}s:59:"1242:database-translated_licenses-description-license_id-42";a:2:{i:0;R:17669;i:1;R:17670;}s:59:"1242:database-translated_licenses-description-license_id-43";a:2:{i:0;R:17669;i:1;R:17670;}s:58:"1242:database-translated_licenses-description-license_id-4";a:2:{i:0;R:17669;i:1;R:17670;}s:58:"1242:database-translated_licenses-description-license_id-5";a:2:{i:0;R:17669;i:1;R:17670;}s:58:"1242:database-translated_licenses-description-license_id-6";a:2:{i:0;R:17669;i:1;R:17670;}s:58:"1242:database-translated_licenses-description-license_id-7";a:2:{i:0;R:17669;i:1;R:17670;}s:58:"1242:database-translated_licenses-description-license_id-8";a:2:{i:0;R:17669;i:1;R:17670;}s:58:"1242:database-translated_licenses-description-license_id-9";a:2:{i:0;R:17669;i:1;R:17670;}s:48:"1242:database-translated_ranks-label-rank_id-106";a:2:{i:0;R:17669;i:1;R:17670;}s:48:"1242:database-translated_ranks-label-rank_id-107";a:2:{i:0;R:17669;i:1;R:17670;}s:48:"1242:database-translated_ranks-label-rank_id-112";a:2:{i:0;R:17669;i:1;R:17670;}s:48:"1242:database-translated_ranks-label-rank_id-113";a:2:{i:0;R:17669;i:1;R:17670;}s:48:"1242:database-translated_ranks-label-rank_id-118";a:2:{i:0;R:17669;i:1;R:17670;}s:48:"1242:database-translated_ranks-label-rank_id-169";a:2:{i:0;R:17669;i:1;R:17670;}s:48:"1242:database-translated_ranks-label-rank_id-175";a:2:{i:0;R:17669;i:1;R:17670;}s:48:"1242:database-translated_ranks-label-rank_id-183";a:2:{i:0;R:17669;i:1;R:17670;}s:48:"1242:database-translated_ranks-label-rank_id-266";a:2:{i:0;R:17669;i:1;R:17670;}s:48:"1242:database-translated_ranks-label-rank_id-280";a:2:{i:0;R:17669;i:1;R:17670;}s:48:"1242:database-translated_ranks-label-rank_id-313";a:2:{i:0;R:17669;i:1;R:17670;}s:48:"1242:database-translated_ranks-label-rank_id-314";a:2:{i:0;R:17669;i:1;R:17670;}s:48:"1242:database-translated_ranks-label-rank_id-317";a:2:{i:0;R:17669;i:1;R:17670;}s:48:"1242:database-translated_ranks-label-rank_id-324";a:2:{i:0;R:17669;i:1;R:17670;}s:48:"1242:database-translated_ranks-label-rank_id-332";a:2:{i:0;R:17669;i:1;R:17670;}s:48:"1242:database-translated_ranks-label-rank_id-333";a:2:{i:0;R:17669;i:1;R:17670;}s:48:"1242:database-translated_ranks-label-rank_id-335";a:2:{i:0;R:17669;i:1;R:17670;}s:48:"1242:database-translated_ranks-label-rank_id-352";a:2:{i:0;R:17669;i:1;R:17670;}s:48:"1242:database-translated_ranks-label-rank_id-370";a:2:{i:0;R:17669;i:1;R:17670;}s:48:"1242:database-translated_ranks-label-rank_id-375";a:2:{i:0;R:17669;i:1;R:17670;}s:48:"1242:database-translated_ranks-label-rank_id-383";a:2:{i:0;R:17669;i:1;R:17670;}s:48:"1242:database-translated_ranks-label-rank_id-390";a:2:{i:0;R:17669;i:1;R:17670;}s:48:"1242:database-translated_ranks-label-rank_id-391";a:2:{i:0;R:17669;i:1;R:17670;}s:48:"1242:database-translated_ranks-label-rank_id-394";a:2:{i:0;R:17669;i:1;R:17670;}s:48:"1242:database-translated_ranks-label-rank_id-396";a:2:{i:0;R:17669;i:1;R:17670;}s:48:"1242:database-translated_ranks-label-rank_id-399";a:2:{i:0;R:17669;i:1;R:17670;}s:48:"1242:database-translated_ranks-label-rank_id-401";a:2:{i:0;R:17669;i:1;R:17670;}s:48:"1242:database-translated_ranks-label-rank_id-408";a:2:{i:0;R:17669;i:1;R:17670;}s:48:"1242:database-translated_ranks-label-rank_id-411";a:2:{i:0;R:17669;i:1;R:17670;}s:48:"1242:database-translated_ranks-label-rank_id-413";a:2:{i:0;R:17669;i:1;R:17670;}s:48:"1242:database-translated_ranks-label-rank_id-414";a:2:{i:0;R:17669;i:1;R:17670;}s:48:"1242:database-translated_ranks-label-rank_id-415";a:2:{i:0;R:17669;i:1;R:17670;}s:48:"1242:database-translated_ranks-label-rank_id-422";a:2:{i:0;R:17669;i:1;R:17670;}s:48:"1242:database-translated_ranks-label-rank_id-463";a:2:{i:0;R:17669;i:1;R:17670;}s:48:"1242:database-translated_ranks-label-rank_id-472";a:2:{i:0;R:17669;i:1;R:17670;}s:48:"1242:database-translated_ranks-label-rank_id-494";a:2:{i:0;R:17669;i:1;R:17670;}s:48:"1242:database-translated_ranks-label-rank_id-503";a:2:{i:0;R:17669;i:1;R:17670;}s:48:"1242:database-translated_ranks-label-rank_id-512";a:2:{i:0;R:17669;i:1;R:17670;}s:48:"1242:database-translated_ranks-label-rank_id-513";a:2:{i:0;R:17669;i:1;R:17670;}s:48:"1242:database-translated_ranks-label-rank_id-517";a:2:{i:0;R:17669;i:1;R:17670;}s:48:"1242:database-translated_ranks-label-rank_id-518";a:2:{i:0;R:17669;i:1;R:17670;}s:47:"1242:database-translated_ranks-label-rank_id-51";a:2:{i:0;R:17669;i:1;R:17670;}s:48:"1242:database-translated_ranks-label-rank_id-562";a:2:{i:0;R:17669;i:1;R:17670;}s:48:"1242:database-translated_ranks-label-rank_id-563";a:2:{i:0;R:17669;i:1;R:17670;}s:48:"1242:database-translated_ranks-label-rank_id-564";a:2:{i:0;R:17669;i:1;R:17670;}s:48:"1242:database-translated_ranks-label-rank_id-565";a:2:{i:0;R:17669;i:1;R:17670;}s:47:"1242:database-translated_ranks-label-rank_id-74";a:2:{i:0;R:17669;i:1;R:17670;}s:47:"1242:database-translated_ranks-label-rank_id-85";a:2:{i:0;R:17669;i:1;R:17670;}s:47:"1242:database-translated_ranks-label-rank_id-86";a:2:{i:0;R:17669;i:1;R:17670;}s:47:"1242:database-translated_ranks-label-rank_id-91";a:2:{i:0;R:17669;i:1;R:17670;}s:47:"1242:database-translated_ranks-label-rank_id-92";a:2:{i:0;R:17669;i:1;R:17670;}s:47:"1242:database-translated_ranks-label-rank_id-99";a:2:{i:0;R:17669;i:1;R:17670;}s:70:"1242:database-translated_resource_statuses-label-resource_status_id-10";a:2:{i:0;R:17669;i:1;R:17670;}s:70:"1242:database-translated_resource_statuses-label-resource_status_id-11";a:2:{i:0;R:17669;i:1;R:17670;}s:70:"1242:database-translated_resource_statuses-label-resource_status_id-12";a:2:{i:0;R:17669;i:1;R:17670;}s:70:"1242:database-translated_resource_statuses-label-resource_status_id-13";a:2:{i:0;R:17669;i:1;R:17670;}s:69:"1242:database-translated_resource_statuses-label-resource_status_id-1";a:2:{i:0;R:17669;i:1;R:17670;}s:69:"1242:database-translated_resource_statuses-label-resource_status_id-2";a:2:{i:0;R:17669;i:1;R:17670;}s:69:"1242:database-translated_resource_statuses-label-resource_status_id-3";a:2:{i:0;R:17669;i:1;R:17670;}s:69:"1242:database-translated_resource_statuses-label-resource_status_id-4";a:2:{i:0;R:17669;i:1;R:17670;}s:69:"1242:database-translated_resource_statuses-label-resource_status_id-5";a:2:{i:0;R:17669;i:1;R:17670;}s:69:"1242:database-translated_resource_statuses-label-resource_status_id-6";a:2:{i:0;R:17669;i:1;R:17670;}s:69:"1242:database-translated_resource_statuses-label-resource_status_id-7";a:2:{i:0;R:17669;i:1;R:17670;}s:69:"1242:database-translated_resource_statuses-label-resource_status_id-8";a:2:{i:0;R:17669;i:1;R:17670;}s:69:"1242:database-translated_resource_statuses-label-resource_status_id-9";a:2:{i:0;R:17669;i:1;R:17670;}s:62:"1242:database-translated_service_types-label-service_type_id-1";a:2:{i:0;R:17669;i:1;R:17670;}s:62:"1242:database-translated_service_types-label-service_type_id-2";a:2:{i:0;R:17669;i:1;R:17670;}s:57:"1242:database-translated_sort_styles-name-sort_style_id-1";a:2:{i:0;R:17669;i:1;R:17670;}s:57:"1242:database-translated_sort_styles-name-sort_style_id-2";a:2:{i:0;R:17669;i:1;R:17670;}s:57:"1242:database-translated_sort_styles-name-sort_style_id-3";a:2:{i:0;R:17669;i:1;R:17670;}s:57:"1242:database-translated_sort_styles-name-sort_style_id-4";a:2:{i:0;R:17669;i:1;R:17670;}s:57:"1242:database-translated_sort_styles-name-sort_style_id-5";a:2:{i:0;R:17669;i:1;R:17670;}s:57:"1242:database-translated_sort_styles-name-sort_style_id-6";a:2:{i:0;R:17669;i:1;R:17670;}s:51:"1242:database-translated_statuses-label-status_id-1";a:2:{i:0;R:17669;i:1;R:17670;}s:51:"1242:database-translated_statuses-label-status_id-2";a:2:{i:0;R:17669;i:1;R:17670;}s:51:"1242:database-translated_statuses-label-status_id-3";a:2:{i:0;R:17669;i:1;R:17670;}s:51:"1242:database-translated_statuses-label-status_id-4";a:2:{i:0;R:17669;i:1;R:17670;}s:71:"1242:database-translated_synonym_relations-label-synonym_relation_id-10";a:2:{i:0;R:17669;i:1;R:17670;}s:71:"1242:database-translated_synonym_relations-label-synonym_relation_id-11";a:2:{i:0;R:17669;i:1;R:17670;}s:71:"1242:database-translated_synonym_relations-label-synonym_relation_id-12";a:2:{i:0;R:17669;i:1;R:17670;}s:71:"1242:database-translated_synonym_relations-label-synonym_relation_id-13";a:2:{i:0;R:17669;i:1;R:17670;}s:71:"1242:database-translated_synonym_relations-label-synonym_relation_id-14";a:2:{i:0;R:17669;i:1;R:17670;}s:71:"1242:database-translated_synonym_relations-label-synonym_relation_id-15";a:2:{i:0;R:17669;i:1;R:17670;}s:71:"1242:database-translated_synonym_relations-label-synonym_relation_id-16";a:2:{i:0;R:17669;i:1;R:17670;}s:71:"1242:database-translated_synonym_relations-label-synonym_relation_id-17";a:2:{i:0;R:17669;i:1;R:17670;}s:71:"1242:database-translated_synonym_relations-label-synonym_relation_id-18";a:2:{i:0;R:17669;i:1;R:17670;}s:71:"1242:database-translated_synonym_relations-label-synonym_relation_id-19";a:2:{i:0;R:17669;i:1;R:17670;}s:70:"1242:database-translated_synonym_relations-label-synonym_relation_id-1";a:2:{i:0;R:17669;i:1;R:17670;}s:71:"1242:database-translated_synonym_relations-label-synonym_relation_id-20";a:2:{i:0;R:17669;i:1;R:17670;}s:71:"1242:database-translated_synonym_relations-label-synonym_relation_id-21";a:2:{i:0;R:17669;i:1;R:17670;}s:71:"1242:database-translated_synonym_relations-label-synonym_relation_id-22";a:2:{i:0;R:17669;i:1;R:17670;}s:71:"1242:database-translated_synonym_relations-label-synonym_relation_id-23";a:2:{i:0;R:17669;i:1;R:17670;}s:71:"1242:database-translated_synonym_relations-label-synonym_relation_id-24";a:2:{i:0;R:17669;i:1;R:17670;}s:71:"1242:database-translated_synonym_relations-label-synonym_relation_id-25";a:2:{i:0;R:17669;i:1;R:17670;}s:71:"1242:database-translated_synonym_relations-label-synonym_relation_id-26";a:2:{i:0;R:17669;i:1;R:17670;}s:71:"1242:database-translated_synonym_relations-label-synonym_relation_id-27";a:2:{i:0;R:17669;i:1;R:17670;}s:71:"1242:database-translated_synonym_relations-label-synonym_relation_id-28";a:2:{i:0;R:17669;i:1;R:17670;}s:71:"1242:database-translated_synonym_relations-label-synonym_relation_id-29";a:2:{i:0;R:17669;i:1;R:17670;}s:70:"1242:database-translated_synonym_relations-label-synonym_relation_id-2";a:2:{i:0;R:17669;i:1;R:17670;}s:71:"1242:database-translated_synonym_relations-label-synonym_relation_id-30";a:2:{i:0;R:17669;i:1;R:17670;}s:71:"1242:database-translated_synonym_relations-label-synonym_relation_id-31";a:2:{i:0;R:17669;i:1;R:17670;}s:71:"1242:database-translated_synonym_relations-label-synonym_relation_id-32";a:2:{i:0;R:17669;i:1;R:17670;}s:71:"1242:database-translated_synonym_relations-label-synonym_relation_id-33";a:2:{i:0;R:17669;i:1;R:17670;}s:71:"1242:database-translated_synonym_relations-label-synonym_relation_id-34";a:2:{i:0;R:17669;i:1;R:17670;}s:71:"1242:database-translated_synonym_relations-label-synonym_relation_id-35";a:2:{i:0;R:17669;i:1;R:17670;}s:71:"1242:database-translated_synonym_relations-label-synonym_relation_id-36";a:2:{i:0;R:17669;i:1;R:17670;}s:71:"1242:database-translated_synonym_relations-label-synonym_relation_id-37";a:2:{i:0;R:17669;i:1;R:17670;}s:71:"1242:database-translated_synonym_relations-label-synonym_relation_id-38";a:2:{i:0;R:17669;i:1;R:17670;}s:71:"1242:database-translated_synonym_relations-label-synonym_relation_id-39";a:2:{i:0;R:17669;i:1;R:17670;}s:70:"1242:database-translated_synonym_relations-label-synonym_relation_id-3";a:2:{i:0;R:17669;i:1;R:17670;}s:71:"1242:database-translated_synonym_relations-label-synonym_relation_id-40";a:2:{i:0;R:17669;i:1;R:17670;}s:71:"1242:database-translated_synonym_relations-label-synonym_relation_id-41";a:2:{i:0;R:17669;i:1;R:17670;}s:71:"1242:database-translated_synonym_relations-label-synonym_relation_id-42";a:2:{i:0;R:17669;i:1;R:17670;}s:71:"1242:database-translated_synonym_relations-label-synonym_relation_id-43";a:2:{i:0;R:17669;i:1;R:17670;}s:71:"1242:database-translated_synonym_relations-label-synonym_relation_id-44";a:2:{i:0;R:17669;i:1;R:17670;}s:71:"1242:database-translated_synonym_relations-label-synonym_relation_id-45";a:2:{i:0;R:17669;i:1;R:17670;}s:71:"1242:database-translated_synonym_relations-label-synonym_relation_id-46";a:2:{i:0;R:17669;i:1;R:17670;}s:71:"1242:database-translated_synonym_relations-label-synonym_relation_id-47";a:2:{i:0;R:17669;i:1;R:17670;}s:71:"1242:database-translated_synonym_relations-label-synonym_relation_id-48";a:2:{i:0;R:17669;i:1;R:17670;}s:71:"1242:database-translated_synonym_relations-label-synonym_relation_id-49";a:2:{i:0;R:17669;i:1;R:17670;}s:70:"1242:database-translated_synonym_relations-label-synonym_relation_id-4";a:2:{i:0;R:17669;i:1;R:17670;}s:71:"1242:database-translated_synonym_relations-label-synonym_relation_id-50";a:2:{i:0;R:17669;i:1;R:17670;}s:71:"1242:database-translated_synonym_relations-label-synonym_relation_id-51";a:2:{i:0;R:17669;i:1;R:17670;}s:71:"1242:database-translated_synonym_relations-label-synonym_relation_id-52";a:2:{i:0;R:17669;i:1;R:17670;}s:71:"1242:database-translated_synonym_relations-label-synonym_relation_id-53";a:2:{i:0;R:17669;i:1;R:17670;}s:71:"1242:database-translated_synonym_relations-label-synonym_relation_id-54";a:2:{i:0;R:17669;i:1;R:17670;}s:71:"1242:database-translated_synonym_relations-label-synonym_relation_id-55";a:2:{i:0;R:17669;i:1;R:17670;}s:71:"1242:database-translated_synonym_relations-label-synonym_relation_id-56";a:2:{i:0;R:17669;i:1;R:17670;}s:71:"1242:database-translated_synonym_relations-label-synonym_relation_id-57";a:2:{i:0;R:17669;i:1;R:17670;}s:71:"1242:database-translated_synonym_relations-label-synonym_relation_id-58";a:2:{i:0;R:17669;i:1;R:17670;}s:71:"1242:database-translated_synonym_relations-label-synonym_relation_id-59";a:2:{i:0;R:17669;i:1;R:17670;}s:70:"1242:database-translated_synonym_relations-label-synonym_relation_id-5";a:2:{i:0;R:17669;i:1;R:17670;}s:71:"1242:database-translated_synonym_relations-label-synonym_relation_id-60";a:2:{i:0;R:17669;i:1;R:17670;}s:71:"1242:database-translated_synonym_relations-label-synonym_relation_id-61";a:2:{i:0;R:17669;i:1;R:17670;}s:71:"1242:database-translated_synonym_relations-label-synonym_relation_id-62";a:2:{i:0;R:17669;i:1;R:17670;}s:71:"1242:database-translated_synonym_relations-label-synonym_relation_id-63";a:2:{i:0;R:17669;i:1;R:17670;}s:71:"1242:database-translated_synonym_relations-label-synonym_relation_id-64";a:2:{i:0;R:17669;i:1;R:17670;}s:71:"1242:database-translated_synonym_relations-label-synonym_relation_id-65";a:2:{i:0;R:17669;i:1;R:17670;}s:71:"1242:database-translated_synonym_relations-label-synonym_relation_id-66";a:2:{i:0;R:17669;i:1;R:17670;}s:71:"1242:database-translated_synonym_relations-label-synonym_relation_id-67";a:2:{i:0;R:17669;i:1;R:17670;}s:71:"1242:database-translated_synonym_relations-label-synonym_relation_id-68";a:2:{i:0;R:17669;i:1;R:17670;}s:70:"1242:database-translated_synonym_relations-label-synonym_relation_id-6";a:2:{i:0;R:17669;i:1;R:17670;}s:70:"1242:database-translated_synonym_relations-label-synonym_relation_id-7";a:2:{i:0;R:17669;i:1;R:17670;}s:70:"1242:database-translated_synonym_relations-label-synonym_relation_id-8";a:2:{i:0;R:17669;i:1;R:17670;}s:70:"1242:database-translated_synonym_relations-label-synonym_relation_id-9";a:2:{i:0;R:17669;i:1;R:17670;}s:72:"1242:database-translated_table_of_contents-label-table_of_contents_id-13";a:2:{i:0;R:17669;i:1;R:17670;}s:72:"1242:database-translated_table_of_contents-label-table_of_contents_id-14";a:2:{i:0;R:17669;i:1;R:17670;}s:72:"1242:database-translated_table_of_contents-label-table_of_contents_id-17";a:2:{i:0;R:17669;i:1;R:17670;}s:73:"1242:database-translated_table_of_contents-label-table_of_contents_id-194";a:2:{i:0;R:17669;i:1;R:17670;}s:71:"1242:database-translated_table_of_contents-label-table_of_contents_id-1";a:2:{i:0;R:17669;i:1;R:17670;}s:73:"1242:database-translated_table_of_contents-label-table_of_contents_id-218";a:2:{i:0;R:17669;i:1;R:17670;}s:73:"1242:database-translated_table_of_contents-label-table_of_contents_id-221";a:2:{i:0;R:17669;i:1;R:17670;}s:73:"1242:database-translated_table_of_contents-label-table_of_contents_id-225";a:2:{i:0;R:17669;i:1;R:17670;}s:73:"1242:database-translated_table_of_contents-label-table_of_contents_id-226";a:2:{i:0;R:17669;i:1;R:17670;}s:73:"1242:database-translated_table_of_contents-label-table_of_contents_id-227";a:2:{i:0;R:17669;i:1;R:17670;}s:73:"1242:database-translated_table_of_contents-label-table_of_contents_id-242";a:2:{i:0;R:17669;i:1;R:17670;}s:73:"1242:database-translated_table_of_contents-label-table_of_contents_id-244";a:2:{i:0;R:17669;i:1;R:17670;}s:72:"1242:database-translated_table_of_contents-label-table_of_contents_id-24";a:2:{i:0;R:17669;i:1;R:17670;}s:73:"1242:database-translated_table_of_contents-label-table_of_contents_id-251";a:2:{i:0;R:17669;i:1;R:17670;}s:73:"1242:database-translated_table_of_contents-label-table_of_contents_id-267";a:2:{i:0;R:17669;i:1;R:17670;}s:73:"1242:database-translated_table_of_contents-label-table_of_contents_id-278";a:2:{i:0;R:17669;i:1;R:17670;}s:73:"1242:database-translated_table_of_contents-label-table_of_contents_id-285";a:2:{i:0;R:17669;i:1;R:17670;}s:73:"1242:database-translated_table_of_contents-label-table_of_contents_id-286";a:2:{i:0;R:17669;i:1;R:17670;}s:73:"1242:database-translated_table_of_contents-label-table_of_contents_id-289";a:2:{i:0;R:17669;i:1;R:17670;}s:73:"1242:database-translated_table_of_contents-label-table_of_contents_id-292";a:2:{i:0;R:17669;i:1;R:17670;}s:73:"1242:database-translated_table_of_contents-label-table_of_contents_id-293";a:2:{i:0;R:17669;i:1;R:17670;}s:73:"1242:database-translated_table_of_contents-label-table_of_contents_id-296";a:2:{i:0;R:17669;i:1;R:17670;}s:73:"1242:database-translated_table_of_contents-label-table_of_contents_id-297";a:2:{i:0;R:17669;i:1;R:17670;}s:73:"1242:database-translated_table_of_contents-label-table_of_contents_id-299";a:2:{i:0;R:17669;i:1;R:17670;}s:71:"1242:database-translated_table_of_contents-label-table_of_contents_id-2";a:2:{i:0;R:17669;i:1;R:17670;}s:73:"1242:database-translated_table_of_contents-label-table_of_contents_id-300";a:2:{i:0;R:17669;i:1;R:17670;}s:73:"1242:database-translated_table_of_contents-label-table_of_contents_id-303";a:2:{i:0;R:17669;i:1;R:17670;}s:73:"1242:database-translated_table_of_contents-label-table_of_contents_id-304";a:2:{i:0;R:17669;i:1;R:17670;}s:73:"1242:database-translated_table_of_contents-label-table_of_contents_id-305";a:2:{i:0;R:17669;i:1;R:17670;}s:73:"1242:database-translated_table_of_contents-label-table_of_contents_id-306";a:2:{i:0;R:17669;i:1;R:17670;}s:73:"1242:database-translated_table_of_contents-label-table_of_contents_id-307";a:2:{i:0;R:17669;i:1;R:17670;}s:73:"1242:database-translated_table_of_contents-label-table_of_contents_id-308";a:2:{i:0;R:17669;i:1;R:17670;}s:73:"1242:database-translated_table_of_contents-label-table_of_contents_id-309";a:2:{i:0;R:17669;i:1;R:17670;}s:73:"1242:database-translated_table_of_contents-label-table_of_contents_id-310";a:2:{i:0;R:17669;i:1;R:17670;}s:73:"1242:database-translated_table_of_contents-label-table_of_contents_id-311";a:2:{i:0;R:17669;i:1;R:17670;}s:73:"1242:database-translated_table_of_contents-label-table_of_contents_id-312";a:2:{i:0;R:17669;i:1;R:17670;}s:73:"1242:database-translated_table_of_contents-label-table_of_contents_id-313";a:2:{i:0;R:17669;i:1;R:17670;}s:73:"1242:database-translated_table_of_contents-label-table_of_contents_id-314";a:2:{i:0;R:17669;i:1;R:17670;}s:73:"1242:database-translated_table_of_contents-label-table_of_contents_id-315";a:2:{i:0;R:17669;i:1;R:17670;}s:73:"1242:database-translated_table_of_contents-label-table_of_contents_id-316";a:2:{i:0;R:17669;i:1;R:17670;}s:73:"1242:database-translated_table_of_contents-label-table_of_contents_id-317";a:2:{i:0;R:17669;i:1;R:17670;}s:73:"1242:database-translated_table_of_contents-label-table_of_contents_id-318";a:2:{i:0;R:17669;i:1;R:17670;}s:73:"1242:database-translated_table_of_contents-label-table_of_contents_id-319";a:2:{i:0;R:17669;i:1;R:17670;}s:73:"1242:database-translated_table_of_contents-label-table_of_contents_id-320";a:2:{i:0;R:17669;i:1;R:17670;}s:73:"1242:database-translated_table_of_contents-label-table_of_contents_id-321";a:2:{i:0;R:17669;i:1;R:17670;}s:73:"1242:database-translated_table_of_contents-label-table_of_contents_id-322";a:2:{i:0;R:17669;i:1;R:17670;}s:73:"1242:database-translated_table_of_contents-label-table_of_contents_id-323";a:2:{i:0;R:17669;i:1;R:17670;}s:73:"1242:database-translated_table_of_contents-label-table_of_contents_id-324";a:2:{i:0;R:17669;i:1;R:17670;}s:73:"1242:database-translated_table_of_contents-label-table_of_contents_id-325";a:2:{i:0;R:17669;i:1;R:17670;}s:73:"1242:database-translated_table_of_contents-label-table_of_contents_id-326";a:2:{i:0;R:17669;i:1;R:17670;}s:73:"1242:database-translated_table_of_contents-label-table_of_contents_id-327";a:2:{i:0;R:17669;i:1;R:17670;}s:73:"1242:database-translated_table_of_contents-label-table_of_contents_id-328";a:2:{i:0;R:17669;i:1;R:17670;}s:73:"1242:database-translated_table_of_contents-label-table_of_contents_id-329";a:2:{i:0;R:17669;i:1;R:17670;}s:73:"1242:database-translated_table_of_contents-label-table_of_contents_id-330";a:2:{i:0;R:17669;i:1;R:17670;}s:73:"1242:database-translated_table_of_contents-label-table_of_contents_id-331";a:2:{i:0;R:17669;i:1;R:17670;}s:73:"1242:database-translated_table_of_contents-label-table_of_contents_id-332";a:2:{i:0;R:17669;i:1;R:17670;}s:73:"1242:database-translated_table_of_contents-label-table_of_contents_id-333";a:2:{i:0;R:17669;i:1;R:17670;}s:73:"1242:database-translated_table_of_contents-label-table_of_contents_id-334";a:2:{i:0;R:17669;i:1;R:17670;}s:73:"1242:database-translated_table_of_contents-label-table_of_contents_id-335";a:2:{i:0;R:17669;i:1;R:17670;}s:73:"1242:database-translated_table_of_contents-label-table_of_contents_id-336";a:2:{i:0;R:17669;i:1;R:17670;}s:73:"1242:database-translated_table_of_contents-label-table_of_contents_id-337";a:2:{i:0;R:17669;i:1;R:17670;}s:73:"1242:database-translated_table_of_contents-label-table_of_contents_id-338";a:2:{i:0;R:17669;i:1;R:17670;}s:73:"1242:database-translated_table_of_contents-label-table_of_contents_id-339";a:2:{i:0;R:17669;i:1;R:17670;}s:72:"1242:database-translated_table_of_contents-label-table_of_contents_id-33";a:2:{i:0;R:17669;i:1;R:17670;}s:73:"1242:database-translated_table_of_contents-label-table_of_contents_id-340";a:2:{i:0;R:17669;i:1;R:17670;}s:73:"1242:database-translated_table_of_contents-label-table_of_contents_id-341";a:2:{i:0;R:17669;i:1;R:17670;}s:73:"1242:database-translated_table_of_contents-label-table_of_contents_id-342";a:2:{i:0;R:17669;i:1;R:17670;}s:73:"1242:database-translated_table_of_contents-label-table_of_contents_id-343";a:2:{i:0;R:17669;i:1;R:17670;}s:73:"1242:database-translated_table_of_contents-label-table_of_contents_id-344";a:2:{i:0;R:17669;i:1;R:17670;}s:73:"1242:database-translated_table_of_contents-label-table_of_contents_id-345";a:2:{i:0;R:17669;i:1;R:17670;}s:73:"1242:database-translated_table_of_contents-label-table_of_contents_id-346";a:2:{i:0;R:17669;i:1;R:17670;}s:73:"1242:database-translated_table_of_contents-label-table_of_contents_id-347";a:2:{i:0;R:17669;i:1;R:17670;}s:73:"1242:database-translated_table_of_contents-label-table_of_contents_id-348";a:2:{i:0;R:17669;i:1;R:17670;}s:72:"1242:database-translated_table_of_contents-label-table_of_contents_id-34";a:2:{i:0;R:17669;i:1;R:17670;}s:71:"1242:database-translated_table_of_contents-label-table_of_contents_id-3";a:2:{i:0;R:17669;i:1;R:17670;}s:72:"1242:database-translated_table_of_contents-label-table_of_contents_id-41";a:2:{i:0;R:17669;i:1;R:17670;}s:71:"1242:database-translated_table_of_contents-label-table_of_contents_id-4";a:2:{i:0;R:17669;i:1;R:17670;}s:71:"1242:database-translated_table_of_contents-label-table_of_contents_id-5";a:2:{i:0;R:17669;i:1;R:17670;}s:71:"1242:database-translated_table_of_contents-label-table_of_contents_id-6";a:2:{i:0;R:17669;i:1;R:17670;}s:71:"1242:database-translated_table_of_contents-label-table_of_contents_id-7";a:2:{i:0;R:17669;i:1;R:17670;}s:71:"1242:database-translated_table_of_contents-label-table_of_contents_id-8";a:2:{i:0;R:17669;i:1;R:17670;}s:66:"1242:database-translated_untrust_reasons-label-untrust_reason_id-1";a:2:{i:0;R:17669;i:1;R:17670;}s:66:"1242:database-translated_untrust_reasons-label-untrust_reason_id-2";a:2:{i:0;R:17669;i:1;R:17670;}s:66:"1242:database-translated_untrust_reasons-label-untrust_reason_id-3";a:2:{i:0;R:17669;i:1;R:17670;}s:66:"1242:database-translated_untrust_reasons-label-untrust_reason_id-4";a:2:{i:0;R:17669;i:1;R:17670;}s:66:"1242:database-translated_untrust_reasons-label-untrust_reason_id-5";a:2:{i:0;R:17669;i:1;R:17670;}s:65:"1242:database-translated_user_identities-label-user_identity_id-1";a:2:{i:0;R:17669;i:1;R:17670;}s:65:"1242:database-translated_user_identities-label-user_identity_id-2";a:2:{i:0;R:17669;i:1;R:17670;}s:65:"1242:database-translated_user_identities-label-user_identity_id-3";a:2:{i:0;R:17669;i:1;R:17670;}s:65:"1242:database-translated_user_identities-label-user_identity_id-4";a:2:{i:0;R:17669;i:1;R:17670;}s:65:"1242:database-translated_user_identities-label-user_identity_id-5";a:2:{i:0;R:17669;i:1;R:17670;}s:49:"1242:database-translated_vetted-label-vetted_id-0";a:2:{i:0;R:17669;i:1;R:17670;}s:49:"1242:database-translated_vetted-label-vetted_id-4";a:2:{i:0;R:17669;i:1;R:17670;}s:49:"1242:database-translated_vetted-label-vetted_id-5";a:2:{i:0;R:17669;i:1;R:17670;}s:49:"1242:database-translated_vetted-label-vetted_id-6";a:2:{i:0;R:17669;i:1;R:17670;}s:57:"1242:database-translated_view_styles-name-view_style_id-1";a:2:{i:0;R:17669;i:1;R:17670;}s:57:"1242:database-translated_view_styles-name-view_style_id-2";a:2:{i:0;R:17669;i:1;R:17670;}s:57:"1242:database-translated_view_styles-name-view_style_id-3";a:2:{i:0;R:17669;i:1;R:17670;}s:59:"1242:database-translated_visibilities-label-visibility_id-0";a:2:{i:0;R:17669;i:1;R:17670;}s:59:"1242:database-translated_visibilities-label-visibility_id-1";a:2:{i:0;R:17669;i:1;R:17670;}s:59:"1242:database-translated_visibilities-label-visibility_id-2";a:2:{i:0;R:17669;i:1;R:17670;}s:33:"1242:website-date.formats.default";a:2:{i:0;R:3;i:1;R:17670;}s:31:"1242:website-date.formats.short";a:2:{i:0;R:3;i:1;R:17670;}s:30:"1242:website-date.formats.long";a:2:{i:0;R:3;i:1;R:17670;}s:29:"1242:website-date.day_names.0";a:2:{i:0;R:3;i:1;R:17670;}s:29:"1242:website-date.day_names.1";a:2:{i:0;R:3;i:1;R:17670;}s:29:"1242:website-date.day_names.2";a:2:{i:0;R:3;i:1;R:17670;}s:29:"1242:website-date.day_names.3";a:2:{i:0;R:3;i:1;R:17670;}s:29:"1242:website-date.day_names.4";a:2:{i:0;R:3;i:1;R:17670;}s:29:"1242:website-date.day_names.5";a:2:{i:0;R:3;i:1;R:17670;}s:29:"1242:website-date.day_names.6";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-date.abbr_day_names.0";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-date.abbr_day_names.1";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-date.abbr_day_names.2";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-date.abbr_day_names.3";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-date.abbr_day_names.4";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-date.abbr_day_names.5";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-date.abbr_day_names.6";a:2:{i:0;R:3;i:1;R:17670;}s:31:"1242:website-date.month_names.0";a:2:{i:0;R:3;i:1;R:17670;}s:31:"1242:website-date.month_names.1";a:2:{i:0;R:3;i:1;R:17670;}s:31:"1242:website-date.month_names.2";a:2:{i:0;R:3;i:1;R:17670;}s:31:"1242:website-date.month_names.3";a:2:{i:0;R:3;i:1;R:17670;}s:31:"1242:website-date.month_names.4";a:2:{i:0;R:3;i:1;R:17670;}s:31:"1242:website-date.month_names.5";a:2:{i:0;R:3;i:1;R:17670;}s:31:"1242:website-date.month_names.6";a:2:{i:0;R:3;i:1;R:17670;}s:31:"1242:website-date.month_names.7";a:2:{i:0;R:3;i:1;R:17670;}s:31:"1242:website-date.month_names.8";a:2:{i:0;R:3;i:1;R:17670;}s:31:"1242:website-date.month_names.9";a:2:{i:0;R:3;i:1;R:17670;}s:32:"1242:website-date.month_names.10";a:2:{i:0;R:3;i:1;R:17670;}s:32:"1242:website-date.month_names.11";a:2:{i:0;R:3;i:1;R:17670;}s:32:"1242:website-date.month_names.12";a:2:{i:0;R:3;i:1;R:17670;}s:36:"1242:website-date.abbr_month_names.0";a:2:{i:0;R:3;i:1;R:17670;}s:36:"1242:website-date.abbr_month_names.1";a:2:{i:0;R:3;i:1;R:17670;}s:36:"1242:website-date.abbr_month_names.2";a:2:{i:0;R:3;i:1;R:17670;}s:36:"1242:website-date.abbr_month_names.3";a:2:{i:0;R:3;i:1;R:17670;}s:36:"1242:website-date.abbr_month_names.4";a:2:{i:0;R:3;i:1;R:17670;}s:36:"1242:website-date.abbr_month_names.5";a:2:{i:0;R:3;i:1;R:17670;}s:36:"1242:website-date.abbr_month_names.6";a:2:{i:0;R:3;i:1;R:17670;}s:36:"1242:website-date.abbr_month_names.7";a:2:{i:0;R:3;i:1;R:17670;}s:36:"1242:website-date.abbr_month_names.8";a:2:{i:0;R:3;i:1;R:17670;}s:36:"1242:website-date.abbr_month_names.9";a:2:{i:0;R:3;i:1;R:17670;}s:37:"1242:website-date.abbr_month_names.10";a:2:{i:0;R:3;i:1;R:17670;}s:37:"1242:website-date.abbr_month_names.11";a:2:{i:0;R:3;i:1;R:17670;}s:37:"1242:website-date.abbr_month_names.12";a:2:{i:0;R:3;i:1;R:17670;}s:25:"1242:website-date.order.0";a:2:{i:0;R:3;i:1;R:17670;}s:25:"1242:website-date.order.1";a:2:{i:0;R:3;i:1;R:17670;}s:25:"1242:website-date.order.2";a:2:{i:0;R:3;i:1;R:17670;}s:33:"1242:website-time.formats.default";a:2:{i:0;R:3;i:1;R:17670;}s:31:"1242:website-time.formats.short";a:2:{i:0;R:3;i:1;R:17670;}s:30:"1242:website-time.formats.long";a:2:{i:0;R:3;i:1;R:17670;}s:20:"1242:website-time.am";a:2:{i:0;R:3;i:1;R:17670;}s:20:"1242:website-time.pm";a:2:{i:0;R:3;i:1;R:17670;}s:42:"1242:website-support.array.words_connector";a:2:{i:0;R:3;i:1;R:17670;}s:46:"1242:website-support.array.two_words_connector";a:2:{i:0;R:3;i:1;R:17670;}s:46:"1242:website-support.array.last_word_connector";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-support.select.prompt";a:2:{i:0;R:3;i:1;R:17670;}s:36:"1242:website-number.format.separator";a:2:{i:0;R:3;i:1;R:17670;}s:36:"1242:website-number.format.delimiter";a:2:{i:0;R:3;i:1;R:17670;}s:36:"1242:website-number.format.precision";a:2:{i:0;R:3;i:1;R:17670;}s:38:"1242:website-number.format.significant";a:2:{i:0;R:3;i:1;R:17670;}s:52:"1242:website-number.format.strip_insignificant_zeros";a:2:{i:0;R:3;i:1;R:17670;}s:42:"1242:website-number.currency.format.format";a:2:{i:0;R:3;i:1;R:17670;}s:40:"1242:website-number.currency.format.unit";a:2:{i:0;R:3;i:1;R:17670;}s:45:"1242:website-number.currency.format.separator";a:2:{i:0;R:3;i:1;R:17670;}s:45:"1242:website-number.currency.format.delimiter";a:2:{i:0;R:3;i:1;R:17670;}s:45:"1242:website-number.currency.format.precision";a:2:{i:0;R:3;i:1;R:17670;}s:47:"1242:website-number.currency.format.significant";a:2:{i:0;R:3;i:1;R:17670;}s:61:"1242:website-number.currency.format.strip_insignificant_zeros";a:2:{i:0;R:3;i:1;R:17670;}s:47:"1242:website-number.percentage.format.delimiter";a:2:{i:0;R:3;i:1;R:17670;}s:46:"1242:website-number.precision.format.delimiter";a:2:{i:0;R:3;i:1;R:17670;}s:42:"1242:website-number.human.format.delimiter";a:2:{i:0;R:3;i:1;R:17670;}s:42:"1242:website-number.human.format.precision";a:2:{i:0;R:3;i:1;R:17670;}s:44:"1242:website-number.human.format.significant";a:2:{i:0;R:3;i:1;R:17670;}s:58:"1242:website-number.human.format.strip_insignificant_zeros";a:2:{i:0;R:3;i:1;R:17670;}s:46:"1242:website-number.human.storage_units.format";a:2:{i:0;R:3;i:1;R:17670;}s:50:"1242:website-number.human.storage_units.units.byte";a:2:{i:0;R:3;i:1;R:17670;}s:48:"1242:website-number.human.storage_units.units.kb";a:2:{i:0;R:3;i:1;R:17670;}s:48:"1242:website-number.human.storage_units.units.mb";a:2:{i:0;R:3;i:1;R:17670;}s:48:"1242:website-number.human.storage_units.units.gb";a:2:{i:0;R:3;i:1;R:17670;}s:48:"1242:website-number.human.storage_units.units.tb";a:2:{i:0;R:3;i:1;R:17670;}s:46:"1242:website-number.human.decimal_units.format";a:2:{i:0;R:3;i:1;R:17670;}s:50:"1242:website-number.human.decimal_units.units.unit";a:2:{i:0;R:3;i:1;R:17670;}s:54:"1242:website-number.human.decimal_units.units.thousand";a:2:{i:0;R:3;i:1;R:17670;}s:53:"1242:website-number.human.decimal_units.units.million";a:2:{i:0;R:3;i:1;R:17670;}s:53:"1242:website-number.human.decimal_units.units.billion";a:2:{i:0;R:3;i:1;R:17670;}s:54:"1242:website-number.human.decimal_units.units.trillion";a:2:{i:0;R:3;i:1;R:17670;}s:57:"1242:website-number.human.decimal_units.units.quadrillion";a:2:{i:0;R:3;i:1;R:17670;}s:53:"1242:website-datetime.distance_in_words.half_a_minute";a:2:{i:0;R:3;i:1;R:17670;}s:59:"1242:website-datetime.distance_in_words.less_than_x_seconds";a:2:{i:0;R:3;i:1;R:17670;}s:49:"1242:website-datetime.distance_in_words.x_seconds";a:2:{i:0;R:3;i:1;R:17670;}s:59:"1242:website-datetime.distance_in_words.less_than_x_minutes";a:2:{i:0;R:3;i:1;R:17670;}s:49:"1242:website-datetime.distance_in_words.x_minutes";a:2:{i:0;R:3;i:1;R:17670;}s:53:"1242:website-datetime.distance_in_words.about_x_hours";a:2:{i:0;R:3;i:1;R:17670;}s:46:"1242:website-datetime.distance_in_words.x_days";a:2:{i:0;R:3;i:1;R:17670;}s:54:"1242:website-datetime.distance_in_words.about_x_months";a:2:{i:0;R:3;i:1;R:17670;}s:48:"1242:website-datetime.distance_in_words.x_months";a:2:{i:0;R:3;i:1;R:17670;}s:53:"1242:website-datetime.distance_in_words.about_x_years";a:2:{i:0;R:3;i:1;R:17670;}s:52:"1242:website-datetime.distance_in_words.over_x_years";a:2:{i:0;R:3;i:1;R:17670;}s:54:"1242:website-datetime.distance_in_words.almost_x_years";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-datetime.prompts.year";a:2:{i:0;R:3;i:1;R:17670;}s:35:"1242:website-datetime.prompts.month";a:2:{i:0;R:3;i:1;R:17670;}s:33:"1242:website-datetime.prompts.day";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-datetime.prompts.hour";a:2:{i:0;R:3;i:1;R:17670;}s:36:"1242:website-datetime.prompts.minute";a:2:{i:0;R:3;i:1;R:17670;}s:36:"1242:website-datetime.prompts.second";a:2:{i:0;R:3;i:1;R:17670;}s:37:"1242:website-activerecord.models.user";a:2:{i:0;R:3;i:1;R:17670;}s:52:"1242:website-activerecord.attributes.collection.name";a:2:{i:0;R:3;i:1;R:17670;}s:59:"1242:website-activerecord.attributes.collection.description";a:2:{i:0;R:3;i:1;R:17670;}s:61:"1242:website-activerecord.attributes.collection.sort_style_id";a:2:{i:0;R:3;i:1;R:17670;}s:52:"1242:website-activerecord.attributes.collection.logo";a:2:{i:0;R:3;i:1;R:17670;}s:76:"1242:website-activerecord.attributes.collection.additional_annotation_fields";a:2:{i:0;R:3;i:1;R:17670;}s:63:"1242:website-activerecord.attributes.collection.show_references";a:2:{i:0;R:3;i:1;R:17670;}s:63:"1242:website-activerecord.attributes.collection_item.annotation";a:2:{i:0;R:3;i:1;R:17670;}s:63:"1242:website-activerecord.attributes.collection_item.sort_field";a:2:{i:0;R:3;i:1;R:17670;}s:57:"1242:website-activerecord.attributes.collection_item.refs";a:2:{i:0;R:3;i:1;R:17670;}s:49:"1242:website-activerecord.attributes.comment.body";a:2:{i:0;R:3;i:1;R:17670;}s:51:"1242:website-activerecord.attributes.community.name";a:2:{i:0;R:3;i:1;R:17670;}s:58:"1242:website-activerecord.attributes.community.description";a:2:{i:0;R:3;i:1;R:17670;}s:51:"1242:website-activerecord.attributes.community.logo";a:2:{i:0;R:3;i:1;R:17670;}s:59:"1242:website-activerecord.attributes.content_page.page_name";a:2:{i:0;R:3;i:1;R:17670;}s:60:"1242:website-activerecord.attributes.content_page.sort_order";a:2:{i:0;R:3;i:1;R:17670;}s:56:"1242:website-activerecord.attributes.content_page.active";a:2:{i:0;R:3;i:1;R:17670;}s:60:"1242:website-activerecord.attributes.content_partner.acronym";a:2:{i:0;R:3;i:1;R:17670;}s:65:"1242:website-activerecord.attributes.content_partner.auto_publish";a:2:{i:0;R:3;i:1;R:17670;}s:64:"1242:website-activerecord.attributes.content_partner.admin_notes";a:2:{i:0;R:3;i:1;R:17670;}s:75:"1242:website-activerecord.attributes.content_partner.content_partner_status";a:2:{i:0;R:3;i:1;R:17670;}s:63:"1242:website-activerecord.attributes.content_partner.created_at";a:2:{i:0;R:3;i:1;R:17670;}s:64:"1242:website-activerecord.attributes.content_partner.description";a:2:{i:0;R:3;i:1;R:17670;}s:65:"1242:website-activerecord.attributes.content_partner.display_name";a:2:{i:0;R:3;i:1;R:17670;}s:62:"1242:website-activerecord.attributes.content_partner.full_name";a:2:{i:0;R:3;i:1;R:17670;}s:61:"1242:website-activerecord.attributes.content_partner.homepage";a:2:{i:0;R:3;i:1;R:17670;}s:55:"1242:website-activerecord.attributes.content_partner.id";a:2:{i:0;R:3;i:1;R:17670;}s:58:"1242:website-activerecord.attributes.content_partner.notes";a:2:{i:0;R:3;i:1;R:17670;}s:59:"1242:website-activerecord.attributes.content_partner.public";a:2:{i:0;R:3;i:1;R:17670;}s:62:"1242:website-activerecord.attributes.content_partner.resources";a:2:{i:0;R:3;i:1;R:17670;}s:60:"1242:website-activerecord.attributes.content_partner.user_id";a:2:{i:0;R:3;i:1;R:17670;}s:59:"1242:website-activerecord.attributes.content_partner.vetted";a:2:{i:0;R:3;i:1;R:17670;}s:73:"1242:website-activerecord.attributes.content_partner_agreement.created_at";a:2:{i:0;R:3;i:1;R:17670;}s:72:"1242:website-activerecord.attributes.content_partner_agreement.signed_by";a:2:{i:0;R:3;i:1;R:17670;}s:77:"1242:website-activerecord.attributes.content_partner_agreement.signed_on_date";a:2:{i:0;R:3;i:1;R:17670;}s:90:"1242:website-activerecord.attributes.content_partner_contact.email_reports_frequency_hours";a:2:{i:0;R:3;i:1;R:17670;}s:71:"1242:website-activerecord.attributes.data_object.bibliographic_citation";a:2:{i:0;R:3;i:1;R:17670;}s:60:"1242:website-activerecord.attributes.data_object.description";a:2:{i:0;R:3;i:1;R:17670;}s:61:"1242:website-activerecord.attributes.data_object.object_title";a:2:{i:0;R:3;i:1;R:17670;}s:62:"1242:website-activerecord.attributes.data_object.rights_holder";a:2:{i:0;R:3;i:1;R:17670;}s:65:"1242:website-activerecord.attributes.data_object.rights_statement";a:2:{i:0;R:3;i:1;R:17670;}s:59:"1242:website-activerecord.attributes.data_object.source_url";a:2:{i:0;R:3;i:1;R:17670;}s:61:"1242:website-activerecord.attributes.eol_statistic.created_at";a:2:{i:0;R:3;i:1;R:17670;}s:64:"1242:website-activerecord.attributes.eol_statistic.members_count";a:2:{i:0;R:3;i:1;R:17670;}s:68:"1242:website-activerecord.attributes.eol_statistic.communities_count";a:2:{i:0;R:3;i:1;R:17670;}s:68:"1242:website-activerecord.attributes.eol_statistic.collections_count";a:2:{i:0;R:3;i:1;R:17670;}s:62:"1242:website-activerecord.attributes.eol_statistic.pages_count";a:2:{i:0;R:3;i:1;R:17670;}s:69:"1242:website-activerecord.attributes.eol_statistic.pages_with_content";a:2:{i:0;R:3;i:1;R:17670;}s:66:"1242:website-activerecord.attributes.eol_statistic.pages_with_text";a:2:{i:0;R:3;i:1;R:17670;}s:67:"1242:website-activerecord.attributes.eol_statistic.pages_with_image";a:2:{i:0;R:3;i:1;R:17670;}s:65:"1242:website-activerecord.attributes.eol_statistic.pages_with_map";a:2:{i:0;R:3;i:1;R:17670;}s:67:"1242:website-activerecord.attributes.eol_statistic.pages_with_video";a:2:{i:0;R:3;i:1;R:17670;}s:67:"1242:website-activerecord.attributes.eol_statistic.pages_with_sound";a:2:{i:0;R:3;i:1;R:17670;}s:69:"1242:website-activerecord.attributes.eol_statistic.pages_without_text";a:2:{i:0;R:3;i:1;R:17670;}s:70:"1242:website-activerecord.attributes.eol_statistic.pages_without_image";a:2:{i:0;R:3;i:1;R:17670;}s:75:"1242:website-activerecord.attributes.eol_statistic.pages_with_image_no_text";a:2:{i:0;R:3;i:1;R:17670;}s:75:"1242:website-activerecord.attributes.eol_statistic.pages_with_text_no_image";a:2:{i:0;R:3;i:1;R:17670;}s:61:"1242:website-activerecord.attributes.eol_statistic.base_pages";a:2:{i:0;R:3;i:1;R:17670;}s:87:"1242:website-activerecord.attributes.eol_statistic.pages_with_at_least_a_trusted_object";a:2:{i:0;R:3;i:1;R:17670;}s:90:"1242:website-activerecord.attributes.eol_statistic.pages_with_at_least_a_curatorial_action";a:2:{i:0;R:3;i:1;R:17670;}s:71:"1242:website-activerecord.attributes.eol_statistic.pages_with_bhl_links";a:2:{i:0;R:3;i:1;R:17670;}s:79:"1242:website-activerecord.attributes.eol_statistic.pages_with_bhl_links_no_text";a:2:{i:0;R:3;i:1;R:17670;}s:76:"1242:website-activerecord.attributes.eol_statistic.pages_with_bhl_links_only";a:2:{i:0;R:3;i:1;R:17670;}s:63:"1242:website-activerecord.attributes.eol_statistic.data_objects";a:2:{i:0;R:3;i:1;R:17670;}s:69:"1242:website-activerecord.attributes.eol_statistic.data_objects_texts";a:2:{i:0;R:3;i:1;R:17670;}s:70:"1242:website-activerecord.attributes.eol_statistic.data_objects_images";a:2:{i:0;R:3;i:1;R:17670;}s:70:"1242:website-activerecord.attributes.eol_statistic.data_objects_videos";a:2:{i:0;R:3;i:1;R:17670;}s:70:"1242:website-activerecord.attributes.eol_statistic.data_objects_sounds";a:2:{i:0;R:3;i:1;R:17670;}s:68:"1242:website-activerecord.attributes.eol_statistic.data_objects_maps";a:2:{i:0;R:3;i:1;R:17670;}s:71:"1242:website-activerecord.attributes.eol_statistic.data_objects_trusted";a:2:{i:0;R:3;i:1;R:17670;}s:74:"1242:website-activerecord.attributes.eol_statistic.data_objects_unreviewed";a:2:{i:0;R:3;i:1;R:17670;}s:73:"1242:website-activerecord.attributes.eol_statistic.data_objects_untrusted";a:2:{i:0;R:3;i:1;R:17670;}s:96:"1242:website-activerecord.attributes.eol_statistic.data_objects_trusted_or_unreviewed_but_hidden";a:2:{i:0;R:3;i:1;R:17670;}s:64:"1242:website-activerecord.attributes.eol_statistic.udo_published";a:2:{i:0;R:3;i:1;R:17670;}s:76:"1242:website-activerecord.attributes.eol_statistic.udo_published_by_curators";a:2:{i:0;R:3;i:1;R:17670;}s:80:"1242:website-activerecord.attributes.eol_statistic.udo_published_by_non_curators";a:2:{i:0;R:3;i:1;R:17670;}s:67:"1242:website-activerecord.attributes.eol_statistic.content_partners";a:2:{i:0;R:3;i:1;R:17670;}s:92:"1242:website-activerecord.attributes.eol_statistic.content_partners_with_published_resources";a:2:{i:0;R:3;i:1;R:17670;}s:100:"1242:website-activerecord.attributes.eol_statistic.content_partners_with_published_trusted_resources";a:2:{i:0;R:3;i:1;R:17670;}s:70:"1242:website-activerecord.attributes.eol_statistic.published_resources";a:2:{i:0;R:3;i:1;R:17670;}s:78:"1242:website-activerecord.attributes.eol_statistic.published_trusted_resources";a:2:{i:0;R:3;i:1;R:17670;}s:81:"1242:website-activerecord.attributes.eol_statistic.published_unreviewed_resources";a:2:{i:0;R:3;i:1;R:17670;}s:96:"1242:website-activerecord.attributes.eol_statistic.newly_published_resources_in_the_last_30_days";a:2:{i:0;R:3;i:1;R:17670;}s:63:"1242:website-activerecord.attributes.eol_statistic.marine_pages";a:2:{i:0;R:3;i:1;R:17670;}s:70:"1242:website-activerecord.attributes.eol_statistic.marine_pages_in_col";a:2:{i:0;R:3;i:1;R:17670;}s:76:"1242:website-activerecord.attributes.eol_statistic.marine_pages_with_objects";a:2:{i:0;R:3;i:1;R:17670;}s:83:"1242:website-activerecord.attributes.eol_statistic.marine_pages_with_objects_vetted";a:2:{i:0;R:3;i:1;R:17670;}s:59:"1242:website-activerecord.attributes.eol_statistic.curators";a:2:{i:0;R:3;i:1;R:17670;}s:69:"1242:website-activerecord.attributes.eol_statistic.curators_assistant";a:2:{i:0;R:3;i:1;R:17670;}s:64:"1242:website-activerecord.attributes.eol_statistic.curators_full";a:2:{i:0;R:3;i:1;R:17670;}s:66:"1242:website-activerecord.attributes.eol_statistic.curators_master";a:2:{i:0;R:3;i:1;R:17670;}s:66:"1242:website-activerecord.attributes.eol_statistic.active_curators";a:2:{i:0;R:3;i:1;R:17670;}s:83:"1242:website-activerecord.attributes.eol_statistic.pages_curated_by_active_curators";a:2:{i:0;R:3;i:1;R:17670;}s:86:"1242:website-activerecord.attributes.eol_statistic.objects_curated_in_the_last_30_days";a:2:{i:0;R:3;i:1;R:17670;}s:86:"1242:website-activerecord.attributes.eol_statistic.curator_actions_in_the_last_30_days";a:2:{i:0;R:3;i:1;R:17670;}s:61:"1242:website-activerecord.attributes.eol_statistic.rich_pages";a:2:{i:0;R:3;i:1;R:17670;}s:64:"1242:website-activerecord.attributes.eol_statistic.hotlist_pages";a:2:{i:0;R:3;i:1;R:17670;}s:69:"1242:website-activerecord.attributes.eol_statistic.rich_hotlist_pages";a:2:{i:0;R:3;i:1;R:17670;}s:67:"1242:website-activerecord.attributes.eol_statistic.redhotlist_pages";a:2:{i:0;R:3;i:1;R:17670;}s:72:"1242:website-activerecord.attributes.eol_statistic.rich_redhotlist_pages";a:2:{i:0;R:3;i:1;R:17670;}s:76:"1242:website-activerecord.attributes.eol_statistic.pages_with_score_10_to_39";a:2:{i:0;R:3;i:1;R:17670;}s:80:"1242:website-activerecord.attributes.eol_statistic.pages_with_score_less_than_10";a:2:{i:0;R:3;i:1;R:17670;}s:64:"1242:website-activerecord.attributes.eol_statistic.lifedesk_taxa";a:2:{i:0;R:3;i:1;R:17670;}s:72:"1242:website-activerecord.attributes.eol_statistic.lifedesk_data_objects";a:2:{i:0;R:3;i:1;R:17670;}s:59:"1242:website-activerecord.attributes.harvest_event.resource";a:2:{i:0;R:3;i:1;R:17670;}s:56:"1242:website-activerecord.attributes.hierarchy.browsable";a:2:{i:0;R:3;i:1;R:17670;}s:55:"1242:website-activerecord.attributes.hierarchy.complete";a:2:{i:0;R:3;i:1;R:17670;}s:58:"1242:website-activerecord.attributes.hierarchy.description";a:2:{i:0;R:3;i:1;R:17670;}s:64:"1242:website-activerecord.attributes.hierarchy.descriptive_label";a:2:{i:0;R:3;i:1;R:17670;}s:52:"1242:website-activerecord.attributes.hierarchy.label";a:2:{i:0;R:3;i:1;R:17670;}s:62:"1242:website-activerecord.attributes.hierarchy.request_publish";a:2:{i:0;R:3;i:1;R:17670;}s:48:"1242:website-activerecord.attributes.name.string";a:2:{i:0;R:3;i:1;R:17670;}s:66:"1242:website-activerecord.attributes.notification.reply_to_comment";a:2:{i:0;R:3;i:1;R:17670;}s:71:"1242:website-activerecord.attributes.notification.comment_on_my_profile";a:2:{i:0;R:3;i:1;R:17670;}s:76:"1242:website-activerecord.attributes.notification.comment_on_my_contribution";a:2:{i:0;R:3;i:1;R:17670;}s:74:"1242:website-activerecord.attributes.notification.comment_on_my_collection";a:2:{i:0;R:3;i:1;R:17670;}s:73:"1242:website-activerecord.attributes.notification.comment_on_my_community";a:2:{i:0;R:3;i:1;R:17670;}s:73:"1242:website-activerecord.attributes.notification.invitation_to_community";a:2:{i:0;R:3;i:1;R:17670;}s:67:"1242:website-activerecord.attributes.notification.made_me_a_manager";a:2:{i:0;R:3;i:1;R:17670;}s:76:"1242:website-activerecord.attributes.notification.member_joined_my_community";a:2:{i:0;R:3;i:1;R:17670;}s:76:"1242:website-activerecord.attributes.notification.comment_on_my_watched_item";a:2:{i:0;R:3;i:1;R:17670;}s:77:"1242:website-activerecord.attributes.notification.curation_on_my_watched_item";a:2:{i:0;R:3;i:1;R:17670;}s:77:"1242:website-activerecord.attributes.notification.new_data_on_my_watched_item";a:2:{i:0;R:3;i:1;R:17670;}s:82:"1242:website-activerecord.attributes.notification.changes_to_my_watched_collection";a:2:{i:0;R:3;i:1;R:17670;}s:81:"1242:website-activerecord.attributes.notification.changes_to_my_watched_community";a:2:{i:0;R:3;i:1;R:17670;}s:84:"1242:website-activerecord.attributes.notification.member_joined_my_watched_community";a:2:{i:0;R:3;i:1;R:17670;}s:74:"1242:website-activerecord.attributes.notification.member_left_my_community";a:2:{i:0;R:3;i:1;R:17670;}s:77:"1242:website-activerecord.attributes.notification.new_manager_in_my_community";a:2:{i:0;R:3;i:1;R:17670;}s:68:"1242:website-activerecord.attributes.notification.i_am_being_watched";a:2:{i:0;R:3;i:1;R:17670;}s:64:"1242:website-activerecord.attributes.notification.eol_newsletter";a:2:{i:0;R:3;i:1;R:17670;}s:61:"1242:website-activerecord.attributes.resource.accesspoint_url";a:2:{i:0;R:3;i:1;R:17670;}s:58:"1242:website-activerecord.attributes.resource.auto_publish";a:2:{i:0;R:3;i:1;R:17670;}s:68:"1242:website-activerecord.attributes.resource.bibliographic_citation";a:2:{i:0;R:3;i:1;R:17670;}s:53:"1242:website-activerecord.attributes.resource.dataset";a:2:{i:0;R:3;i:1;R:17670;}s:57:"1242:website-activerecord.attributes.resource.description";a:2:{i:0;R:3;i:1;R:17670;}s:61:"1242:website-activerecord.attributes.resource.dwc_archive_url";a:2:{i:0;R:3;i:1;R:17670;}s:60:"1242:website-activerecord.attributes.resource.harvest_events";a:2:{i:0;R:3;i:1;R:17670;}s:55:"1242:website-activerecord.attributes.resource.hierarchy";a:2:{i:0;R:3;i:1;R:17670;}s:57:"1242:website-activerecord.attributes.resource.language_id";a:2:{i:0;R:3;i:1;R:17670;}s:56:"1242:website-activerecord.attributes.resource.license_id";a:2:{i:0;R:3;i:1;R:17670;}s:51:"1242:website-activerecord.attributes.resource.notes";a:2:{i:0;R:3;i:1;R:17670;}s:64:"1242:website-activerecord.attributes.resource.resource_status_id";a:2:{i:0;R:3;i:1;R:17670;}s:59:"1242:website-activerecord.attributes.resource.rights_holder";a:2:{i:0;R:3;i:1;R:17670;}s:62:"1242:website-activerecord.attributes.resource.rights_statement";a:2:{i:0;R:3;i:1;R:17670;}s:51:"1242:website-activerecord.attributes.resource.title";a:2:{i:0;R:3;i:1;R:17670;}s:52:"1242:website-activerecord.attributes.resource.vetted";a:2:{i:0;R:3;i:1;R:17670;}s:79:"1242:website-activerecord.attributes.translated_content_page.active_translation";a:2:{i:0;R:3;i:1;R:17670;}s:73:"1242:website-activerecord.attributes.translated_content_page.left_content";a:2:{i:0;R:3;i:1;R:17670;}s:73:"1242:website-activerecord.attributes.translated_content_page.main_content";a:2:{i:0;R:3;i:1;R:17670;}s:74:"1242:website-activerecord.attributes.translated_content_page.meta_keywords";a:2:{i:0;R:3;i:1;R:17670;}s:77:"1242:website-activerecord.attributes.translated_content_page.meta_description";a:2:{i:0;R:3;i:1;R:17670;}s:66:"1242:website-activerecord.attributes.translated_content_page.title";a:2:{i:0;R:3;i:1;R:17670;}s:59:"1242:website-activerecord.attributes.user.agreed_with_terms";a:2:{i:0;R:3;i:1;R:17670;}s:49:"1242:website-activerecord.attributes.user.api_key";a:2:{i:0;R:3;i:1;R:17670;}s:45:"1242:website-activerecord.attributes.user.bio";a:2:{i:0;R:3;i:1;R:17670;}s:53:"1242:website-activerecord.attributes.user.credentials";a:2:{i:0;R:3;i:1;R:17670;}s:55:"1242:website-activerecord.attributes.user.curator_level";a:2:{i:0;R:3;i:1;R:17670;}s:55:"1242:website-activerecord.attributes.user.curator_scope";a:2:{i:0;R:3;i:1;R:17670;}s:69:"1242:website-activerecord.attributes.user.disable_email_notifications";a:2:{i:0;R:3;i:1;R:17670;}s:47:"1242:website-activerecord.attributes.user.email";a:2:{i:0;R:3;i:1;R:17670;}s:58:"1242:website-activerecord.attributes.user.entered_password";a:2:{i:0;R:3;i:1;R:17670;}s:71:"1242:website-activerecord.attributes.user.entered_password_confirmation";a:2:{i:0;R:3;i:1;R:17670;}s:53:"1242:website-activerecord.attributes.user.family_name";a:2:{i:0;R:3;i:1;R:17670;}s:51:"1242:website-activerecord.attributes.user.full_name";a:2:{i:0;R:3;i:1;R:17670;}s:52:"1242:website-activerecord.attributes.user.given_name";a:2:{i:0;R:3;i:1;R:17670;}s:55:"1242:website-activerecord.attributes.user.language_abbr";a:2:{i:0;R:3;i:1;R:17670;}s:68:"1242:website-activerecord.attributes.user.requested_curator_level_id";a:2:{i:0;R:3;i:1;R:17670;}s:50:"1242:website-activerecord.attributes.user.tag_line";a:2:{i:0;R:3;i:1;R:17670;}s:50:"1242:website-activerecord.attributes.user.username";a:2:{i:0;R:3;i:1;R:17670;}s:39:"1242:website-activerecord.errors.format";a:2:{i:0;R:3;i:1;R:17670;}s:48:"1242:website-activerecord.errors.template.header";a:2:{i:0;R:3;i:1;R:17670;}s:46:"1242:website-activerecord.errors.template.body";a:2:{i:0;R:3;i:1;R:17670;}s:47:"1242:website-activerecord.errors.messages.taken";a:2:{i:0;R:3;i:1;R:17670;}s:56:"1242:website-activerecord.errors.messages.record_invalid";a:2:{i:0;R:3;i:1;R:17670;}s:51:"1242:website-activerecord.errors.messages.inclusion";a:2:{i:0;R:3;i:1;R:17670;}s:51:"1242:website-activerecord.errors.messages.exclusion";a:2:{i:0;R:3;i:1;R:17670;}s:49:"1242:website-activerecord.errors.messages.invalid";a:2:{i:0;R:3;i:1;R:17670;}s:54:"1242:website-activerecord.errors.messages.confirmation";a:2:{i:0;R:3;i:1;R:17670;}s:50:"1242:website-activerecord.errors.messages.accepted";a:2:{i:0;R:3;i:1;R:17670;}s:47:"1242:website-activerecord.errors.messages.empty";a:2:{i:0;R:3;i:1;R:17670;}s:47:"1242:website-activerecord.errors.messages.blank";a:2:{i:0;R:3;i:1;R:17670;}s:50:"1242:website-activerecord.errors.messages.too_long";a:2:{i:0;R:3;i:1;R:17670;}s:51:"1242:website-activerecord.errors.messages.too_short";a:2:{i:0;R:3;i:1;R:17670;}s:54:"1242:website-activerecord.errors.messages.wrong_length";a:2:{i:0;R:3;i:1;R:17670;}s:54:"1242:website-activerecord.errors.messages.not_a_number";a:2:{i:0;R:3;i:1;R:17670;}s:56:"1242:website-activerecord.errors.messages.not_an_integer";a:2:{i:0;R:3;i:1;R:17670;}s:54:"1242:website-activerecord.errors.messages.greater_than";a:2:{i:0;R:3;i:1;R:17670;}s:66:"1242:website-activerecord.errors.messages.greater_than_or_equal_to";a:2:{i:0;R:3;i:1;R:17670;}s:50:"1242:website-activerecord.errors.messages.equal_to";a:2:{i:0;R:3;i:1;R:17670;}s:51:"1242:website-activerecord.errors.messages.less_than";a:2:{i:0;R:3;i:1;R:17670;}s:63:"1242:website-activerecord.errors.messages.less_than_or_equal_to";a:2:{i:0;R:3;i:1;R:17670;}s:45:"1242:website-activerecord.errors.messages.odd";a:2:{i:0;R:3;i:1;R:17670;}s:46:"1242:website-activerecord.errors.messages.even";a:2:{i:0;R:3;i:1;R:17670;}s:54:"1242:website-activerecord.errors.messages.inaccessible";a:2:{i:0;R:3;i:1;R:17670;}s:52:"1242:website-activerecord.errors.messages.wrong_type";a:2:{i:0;R:3;i:1;R:17670;}s:53:"1242:website-activerecord.errors.full_messages.format";a:2:{i:0;R:3;i:1;R:17670;}s:82:"1242:website-activerecord.errors.models.harvest_event.attributes.publish.inclusion";a:2:{i:0;R:3;i:1;R:17670;}s:81:"1242:website-activerecord.errors.models.resource.attributes.accesspoint_url.blank";a:2:{i:0;R:3;i:1;R:17670;}s:88:"1242:website-activerecord.errors.models.resource.attributes.accesspoint_url.inaccessible";a:2:{i:0;R:3;i:1;R:17670;}s:83:"1242:website-activerecord.errors.models.resource.attributes.accesspoint_url.invalid";a:2:{i:0;R:3;i:1;R:17670;}s:73:"1242:website-activerecord.errors.models.resource.attributes.dataset.blank";a:2:{i:0;R:3;i:1;R:17670;}s:78:"1242:website-activerecord.errors.models.resource.attributes.dataset.wrong_type";a:2:{i:0;R:3;i:1;R:17670;}s:88:"1242:website-activerecord.errors.models.resource.attributes.dwc_archive_url.inaccessible";a:2:{i:0;R:3;i:1;R:17670;}s:83:"1242:website-activerecord.errors.models.resource.attributes.dwc_archive_url.invalid";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-helpers.select.prompt";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-helpers.submit.create";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-helpers.submit.update";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-helpers.submit.submit";a:2:{i:0;R:3;i:1;R:17670;}s:50:"1242:website-helpers.submit.collection_item.update";a:2:{i:0;R:3;i:1;R:17670;}s:47:"1242:website-helpers.submit.content_page.create";a:2:{i:0;R:3;i:1;R:17670;}s:45:"1242:website-helpers.submit.content_page.edit";a:2:{i:0;R:3;i:1;R:17670;}s:48:"1242:website-helpers.submit.content_page.preview";a:2:{i:0;R:3;i:1;R:17670;}s:47:"1242:website-helpers.submit.content_page.update";a:2:{i:0;R:3;i:1;R:17670;}s:50:"1242:website-helpers.submit.content_partner.create";a:2:{i:0;R:3;i:1;R:17670;}s:50:"1242:website-helpers.submit.content_partner.update";a:2:{i:0;R:3;i:1;R:17670;}s:60:"1242:website-helpers.submit.content_partner_agreement.create";a:2:{i:0;R:3;i:1;R:17670;}s:60:"1242:website-helpers.submit.content_partner_agreement.update";a:2:{i:0;R:3;i:1;R:17670;}s:59:"1242:website-helpers.submit.content_partner_agreement.agree";a:2:{i:0;R:3;i:1;R:17670;}s:58:"1242:website-helpers.submit.content_partner_contact.create";a:2:{i:0;R:3;i:1;R:17670;}s:58:"1242:website-helpers.submit.content_partner_contact.update";a:2:{i:0;R:3;i:1;R:17670;}s:59:"1242:website-helpers.submit.content_partner_contact.destroy";a:2:{i:0;R:3;i:1;R:17670;}s:46:"1242:website-helpers.submit.data_object.create";a:2:{i:0;R:3;i:1;R:17670;}s:51:"1242:website-helpers.submit.data_object.create_text";a:2:{i:0;R:3;i:1;R:17670;}s:46:"1242:website-helpers.submit.data_object.update";a:2:{i:0;R:3;i:1;R:17670;}s:49:"1242:website-helpers.submit.harvest_event.publish";a:2:{i:0;R:3;i:1;R:17670;}s:44:"1242:website-helpers.submit.hierarchy.update";a:2:{i:0;R:3;i:1;R:17670;}s:53:"1242:website-helpers.submit.hierarchy.request_publish";a:2:{i:0;R:3;i:1;R:17670;}s:39:"1242:website-helpers.submit.name.create";a:2:{i:0;R:3;i:1;R:17670;}s:39:"1242:website-helpers.submit.name.update";a:2:{i:0;R:3;i:1;R:17670;}s:43:"1242:website-helpers.submit.resource.create";a:2:{i:0;R:3;i:1;R:17670;}s:43:"1242:website-helpers.submit.resource.update";a:2:{i:0;R:3;i:1;R:17670;}s:52:"1242:website-helpers.submit.resource.update_settings";a:2:{i:0;R:3;i:1;R:17670;}s:50:"1242:website-helpers.submit.resource.force_harvest";a:2:{i:0;R:3;i:1;R:17670;}s:42:"1242:website-helpers.submit.session.create";a:2:{i:0;R:3;i:1;R:17670;}s:58:"1242:website-helpers.submit.translated_content_page.create";a:2:{i:0;R:3;i:1;R:17670;}s:58:"1242:website-helpers.submit.translated_content_page.update";a:2:{i:0;R:3;i:1;R:17670;}s:39:"1242:website-helpers.submit.user.create";a:2:{i:0;R:3;i:1;R:17670;}s:39:"1242:website-helpers.submit.user.update";a:2:{i:0;R:3;i:1;R:17670;}s:48:"1242:website-helpers.submit.user.forgot_password";a:2:{i:0;R:3;i:1;R:17670;}s:49:"1242:website-helpers.submit.user.generate_api_key";a:2:{i:0;R:3;i:1;R:17670;}s:53:"1242:website-helpers.submit.user.curation_application";a:2:{i:0;R:3;i:1;R:17670;}s:52:"1242:website-helpers.submit.user.curation_privileges";a:2:{i:0;R:3;i:1;R:17670;}s:54:"1242:website-helpers.submit.user.notification_settings";a:2:{i:0;R:3;i:1;R:17670;}s:50:"1242:website-helpers.submit.wikipedia_queue.create";a:2:{i:0;R:3;i:1;R:17670;}s:51:"1242:website-helpers.label.collection.view_style_id";a:2:{i:0;R:3;i:1;R:17670;}s:53:"1242:website-helpers.label.collection_item.annotation";a:2:{i:0;R:3;i:1;R:17670;}s:47:"1242:website-helpers.label.collection_item.refs";a:2:{i:0;R:3;i:1;R:17670;}s:53:"1242:website-helpers.label.collection_item.sort_field";a:2:{i:0;R:3;i:1;R:17670;}s:58:"1242:website-helpers.label.collection_item.sort_field_show";a:2:{i:0;R:3;i:1;R:17670;}s:44:"1242:website-helpers.label.comment.body_edit";a:2:{i:0;R:3;i:1;R:17670;}s:46:"1242:website-helpers.label.content_page.active";a:2:{i:0;R:3;i:1;R:17670;}s:51:"1242:website-helpers.label.content_page.active_more";a:2:{i:0;R:3;i:1;R:17670;}s:49:"1242:website-helpers.label.content_page.page_name";a:2:{i:0;R:3;i:1;R:17670;}s:54:"1242:website-helpers.label.content_page.page_name_more";a:2:{i:0;R:3;i:1;R:17670;}s:62:"1242:website-helpers.label.content_page.parent_content_page_id";a:2:{i:0;R:3;i:1;R:17670;}s:67:"1242:website-helpers.label.content_page.parent_content_page_id_more";a:2:{i:0;R:3;i:1;R:17670;}s:53:"1242:website-helpers.label.content_partner.created_at";a:2:{i:0;R:3;i:1;R:17670;}s:60:"1242:website-helpers.label.content_partner.current_agreement";a:2:{i:0;R:3;i:1;R:17670;}s:55:"1242:website-helpers.label.content_partner.display_name";a:2:{i:0;R:3;i:1;R:17670;}s:60:"1242:website-helpers.label.content_partner.display_name_more";a:2:{i:0;R:3;i:1;R:17670;}s:62:"1242:website-helpers.label.content_partner.description_of_data";a:2:{i:0;R:3;i:1;R:17670;}s:67:"1242:website-helpers.label.content_partner.description_of_data_more";a:2:{i:0;R:3;i:1;R:17670;}s:54:"1242:website-helpers.label.content_partner.last_action";a:2:{i:0;R:3;i:1;R:17670;}s:73:"1242:website-helpers.label.content_partner.latest_published_harvest_event";a:2:{i:0;R:3;i:1;R:17670;}s:55:"1242:website-helpers.label.content_partner.logo_current";a:2:{i:0;R:3;i:1;R:17670;}s:51:"1242:website-helpers.label.content_partner.logo_new";a:2:{i:0;R:3;i:1;R:17670;}s:48:"1242:website-helpers.label.content_partner.notes";a:2:{i:0;R:3;i:1;R:17670;}s:73:"1242:website-helpers.label.content_partner.oldest_published_harvest_event";a:2:{i:0;R:3;i:1;R:17670;}s:54:"1242:website-helpers.label.content_partner.public_more";a:2:{i:0;R:3;i:1;R:17670;}s:50:"1242:website-helpers.label.content_partner.user_id";a:2:{i:0;R:3;i:1;R:17670;}s:60:"1242:website-helpers.label.content_partner_agreement.mou_url";a:2:{i:0;R:3;i:1;R:17670;}s:65:"1242:website-helpers.label.content_partner_agreement.mou_url_more";a:2:{i:0;R:3;i:1;R:17670;}s:85:"1242:website-helpers.label.content_partner_contact.email_reports_frequency_hours_more";a:2:{i:0;R:3;i:1;R:17670;}s:61:"1242:website-helpers.label.data_object.bibliographic_citation";a:2:{i:0;R:3;i:1;R:17670;}s:50:"1242:website-helpers.label.data_object.description";a:2:{i:0;R:3;i:1;R:17670;}s:49:"1242:website-helpers.label.data_object.license_id";a:2:{i:0;R:3;i:1;R:17670;}s:54:"1242:website-helpers.label.data_object.license_id_more";a:2:{i:0;R:3;i:1;R:17670;}s:51:"1242:website-helpers.label.data_object.object_title";a:2:{i:0;R:3;i:1;R:17670;}s:47:"1242:website-helpers.label.data_object.toc_item";a:2:{i:0;R:3;i:1;R:17670;}s:43:"1242:website-helpers.label.data_object.refs";a:2:{i:0;R:3;i:1;R:17670;}s:52:"1242:website-helpers.label.data_object.rights_holder";a:2:{i:0;R:3;i:1;R:17670;}s:55:"1242:website-helpers.label.data_object.rights_statement";a:2:{i:0;R:3;i:1;R:17670;}s:49:"1242:website-helpers.label.data_object.source_url";a:2:{i:0;R:3;i:1;R:17670;}s:53:"1242:website-helpers.label.eol_statistic.download_all";a:2:{i:0;R:3;i:1;R:17670;}s:72:"1242:website-helpers.label.google_analytics_partner_summaries.taxa_pages";a:2:{i:0;R:3;i:1;R:17670;}s:79:"1242:website-helpers.label.google_analytics_partner_summaries.taxa_pages_viewed";a:2:{i:0;R:3;i:1;R:17670;}s:79:"1242:website-helpers.label.google_analytics_partner_summaries.unique_page_views";a:2:{i:0;R:3;i:1;R:17670;}s:72:"1242:website-helpers.label.google_analytics_partner_summaries.page_views";a:2:{i:0;R:3;i:1;R:17670;}s:74:"1242:website-helpers.label.google_analytics_partner_summaries.time_on_page";a:2:{i:0;R:3;i:1;R:17670;}s:49:"1242:website-helpers.label.harvest_event.began_at";a:2:{i:0;R:3;i:1;R:17670;}s:53:"1242:website-helpers.label.harvest_event.completed_at";a:2:{i:0;R:3;i:1;R:17670;}s:59:"1242:website-helpers.label.harvest_event.first_published_at";a:2:{i:0;R:3;i:1;R:17670;}s:53:"1242:website-helpers.label.harvest_event.publish_more";a:2:{i:0;R:3;i:1;R:17670;}s:53:"1242:website-helpers.label.harvest_event.published_at";a:2:{i:0;R:3;i:1;R:17670;}s:57:"1242:website-helpers.label.harvest_event.published_status";a:2:{i:0;R:3;i:1;R:17670;}s:51:"1242:website-helpers.label.hierarchy.browsable_more";a:2:{i:0;R:3;i:1;R:17670;}s:64:"1242:website-helpers.label.hierarchy.browsable_status_with_colon";a:2:{i:0;R:3;i:1;R:17670;}s:45:"1242:website-helpers.label.hierarchy.complete";a:2:{i:0;R:3;i:1;R:17670;}s:50:"1242:website-helpers.label.hierarchy.complete_more";a:2:{i:0;R:3;i:1;R:17670;}s:52:"1242:website-helpers.label.hierarchy.request_publish";a:2:{i:0;R:3;i:1;R:17670;}s:57:"1242:website-helpers.label.hierarchy.request_publish_more";a:2:{i:0;R:3;i:1;R:17670;}s:59:"1242:website-helpers.label.resource.administration_settings";a:2:{i:0;R:3;i:1;R:17670;}s:51:"1242:website-helpers.label.resource.accesspoint_url";a:2:{i:0;R:3;i:1;R:17670;}s:67:"1242:website-helpers.label.resource.accesspoint_url_existing_remove";a:2:{i:0;R:3;i:1;R:17670;}s:43:"1242:website-helpers.label.resource.dataset";a:2:{i:0;R:3;i:1;R:17670;}s:60:"1242:website-helpers.label.resource.dataset_existing_replace";a:2:{i:0;R:3;i:1;R:17670;}s:59:"1242:website-helpers.label.resource.dataset_existing_remove";a:2:{i:0;R:3;i:1;R:17670;}s:51:"1242:website-helpers.label.resource.dwc_archive_url";a:2:{i:0;R:3;i:1;R:17670;}s:45:"1242:website-helpers.label.resource.hierarchy";a:2:{i:0;R:3;i:1;R:17670;}s:66:"1242:website-helpers.label.resource.oldest_published_harvest_event";a:2:{i:0;R:3;i:1;R:17670;}s:66:"1242:website-helpers.label.resource.latest_published_harvest_event";a:2:{i:0;R:3;i:1;R:17670;}s:56:"1242:website-helpers.label.resource.latest_harvest_event";a:2:{i:0;R:3;i:1;R:17670;}s:56:"1242:website-helpers.label.resource.refresh_period_hours";a:2:{i:0;R:3;i:1;R:17670;}s:54:"1242:website-helpers.label.resource.resource_status_id";a:2:{i:0;R:3;i:1;R:17670;}s:51:"1242:website-helpers.label.resource.resource_status";a:2:{i:0;R:3;i:1;R:17670;}s:56:"1242:website-helpers.label.resource.resource_url_or_file";a:2:{i:0;R:3;i:1;R:17670;}s:60:"1242:website-helpers.label.resource.resource_url_or_file_url";a:2:{i:0;R:3;i:1;R:17670;}s:63:"1242:website-helpers.label.resource.resource_url_or_file_upload";a:2:{i:0;R:3;i:1;R:17670;}s:41:"1242:website-helpers.label.resource.title";a:2:{i:0;R:3;i:1;R:17670;}s:43:"1242:website-helpers.label.session.password";a:2:{i:0;R:3;i:1;R:17670;}s:46:"1242:website-helpers.label.session.remember_me";a:2:{i:0;R:3;i:1;R:17670;}s:52:"1242:website-helpers.label.session.username_or_email";a:2:{i:0;R:3;i:1;R:17670;}s:69:"1242:website-helpers.label.translated_content_page.active_translation";a:2:{i:0;R:3;i:1;R:17670;}s:74:"1242:website-helpers.label.translated_content_page.active_translation_more";a:2:{i:0;R:3;i:1;R:17670;}s:62:"1242:website-helpers.label.translated_content_page.language_id";a:2:{i:0;R:3;i:1;R:17670;}s:68:"1242:website-helpers.label.translated_content_page.left_content_more";a:2:{i:0;R:3;i:1;R:17670;}s:68:"1242:website-helpers.label.translated_content_page.main_content_more";a:2:{i:0;R:3;i:1;R:17670;}s:72:"1242:website-helpers.label.translated_content_page.meta_description_more";a:2:{i:0;R:3;i:1;R:17670;}s:69:"1242:website-helpers.label.translated_content_page.meta_keywords_more";a:2:{i:0;R:3;i:1;R:17670;}s:61:"1242:website-helpers.label.translated_content_page.title_more";a:2:{i:0;R:3;i:1;R:17670;}s:49:"1242:website-helpers.label.user.agreed_with_terms";a:2:{i:0;R:3;i:1;R:17670;}s:44:"1242:website-helpers.label.user.api_key_more";a:2:{i:0;R:3;i:1;R:17670;}s:35:"1242:website-helpers.label.user.bio";a:2:{i:0;R:3;i:1;R:17670;}s:43:"1242:website-helpers.label.user.credentials";a:2:{i:0;R:3;i:1;R:17670;}s:48:"1242:website-helpers.label.user.credentials_more";a:2:{i:0;R:3;i:1;R:17670;}s:57:"1242:website-helpers.label.user.credentials_more_academic";a:2:{i:0;R:3;i:1;R:17670;}s:55:"1242:website-helpers.label.user.credentials_more_author";a:2:{i:0;R:3;i:1;R:17670;}s:61:"1242:website-helpers.label.user.credentials_more_professional";a:2:{i:0;R:3;i:1;R:17670;}s:77:"1242:website-helpers.label.user.credentials_more_successful_assistant_curator";a:2:{i:0;R:3;i:1;R:17670;}s:57:"1242:website-helpers.label.user.credentials_more_referral";a:2:{i:0;R:3;i:1;R:17670;}s:52:"1242:website-helpers.label.user.curation_application";a:2:{i:0;R:3;i:1;R:17670;}s:57:"1242:website-helpers.label.user.curation_application_more";a:2:{i:0;R:3;i:1;R:17670;}s:45:"1242:website-helpers.label.user.curator_level";a:2:{i:0;R:3;i:1;R:17670;}s:45:"1242:website-helpers.label.user.curator_scope";a:2:{i:0;R:3;i:1;R:17670;}s:50:"1242:website-helpers.label.user.curator_scope_more";a:2:{i:0;R:3;i:1;R:17670;}s:61:"1242:website-helpers.label.user.email_reports_frequency_hours";a:2:{i:0;R:3;i:1;R:17670;}s:53:"1242:website-helpers.label.user.email_settings_submit";a:2:{i:0;R:3;i:1;R:17670;}s:48:"1242:website-helpers.label.user.entered_password";a:2:{i:0;R:3;i:1;R:17670;}s:48:"1242:website-helpers.label.user.generate_api_key";a:2:{i:0;R:3;i:1;R:17670;}s:53:"1242:website-helpers.label.user.generate_api_key_more";a:2:{i:0;R:3;i:1;R:17670;}s:36:"1242:website-helpers.label.user.logo";a:2:{i:0;R:3;i:1;R:17670;}s:44:"1242:website-helpers.label.user.new_password";a:2:{i:0;R:3;i:1;R:17670;}s:57:"1242:website-helpers.label.user.new_password_confirmation";a:2:{i:0;R:3;i:1;R:17670;}s:53:"1242:website-helpers.label.user.notification_settings";a:2:{i:0;R:3;i:1;R:17670;}s:58:"1242:website-helpers.label.user.notification_settings_more";a:2:{i:0;R:3;i:1;R:17670;}s:55:"1242:website-helpers.label.user.requested_curator_level";a:2:{i:0;R:3;i:1;R:17670;}s:63:"1242:website-helpers.label.user.requested_curator_level_id_more";a:2:{i:0;R:3;i:1;R:17670;}s:40:"1242:website-helpers.label.user.tag_line";a:2:{i:0;R:3;i:1;R:17670;}s:47:"1242:website-helpers.label.user.user_identities";a:2:{i:0;R:3;i:1;R:17670;}s:40:"1242:website-helpers.label.user.username";a:2:{i:0;R:3;i:1;R:17670;}s:49:"1242:website-helpers.label.user.username_or_email";a:2:{i:0;R:3;i:1;R:17670;}s:55:"1242:website-helpers.label.wikipedia_queue.revision_url";a:2:{i:0;R:3;i:1;R:17670;}s:60:"1242:website-helpers.label.wikipedia_queue.revision_url_more";a:2:{i:0;R:3;i:1;R:17670;}s:41:"1242:website-will_paginate.previous_label";a:2:{i:0;R:3;i:1;R:17670;}s:37:"1242:website-will_paginate.next_label";a:2:{i:0;R:3;i:1;R:17670;}s:35:"1242:website-will_paginate.page_gap";a:2:{i:0;R:3;i:1;R:17670;}s:32:"1242:website-faker.lorem.words.0";a:2:{i:0;R:3;i:1;R:17670;}s:32:"1242:website-faker.lorem.words.1";a:2:{i:0;R:3;i:1;R:17670;}s:32:"1242:website-faker.lorem.words.2";a:2:{i:0;R:3;i:1;R:17670;}s:32:"1242:website-faker.lorem.words.3";a:2:{i:0;R:3;i:1;R:17670;}s:32:"1242:website-faker.lorem.words.4";a:2:{i:0;R:3;i:1;R:17670;}s:32:"1242:website-faker.lorem.words.5";a:2:{i:0;R:3;i:1;R:17670;}s:32:"1242:website-faker.lorem.words.6";a:2:{i:0;R:3;i:1;R:17670;}s:32:"1242:website-faker.lorem.words.7";a:2:{i:0;R:3;i:1;R:17670;}s:32:"1242:website-faker.lorem.words.8";a:2:{i:0;R:3;i:1;R:17670;}s:32:"1242:website-faker.lorem.words.9";a:2:{i:0;R:3;i:1;R:17670;}s:33:"1242:website-faker.lorem.words.10";a:2:{i:0;R:3;i:1;R:17670;}s:33:"1242:website-faker.lorem.words.11";a:2:{i:0;R:3;i:1;R:17670;}s:33:"1242:website-faker.lorem.words.12";a:2:{i:0;R:3;i:1;R:17670;}s:33:"1242:website-faker.lorem.words.13";a:2:{i:0;R:3;i:1;R:17670;}s:33:"1242:website-faker.lorem.words.14";a:2:{i:0;R:3;i:1;R:17670;}s:33:"1242:website-faker.lorem.words.15";a:2:{i:0;R:3;i:1;R:17670;}s:33:"1242:website-faker.lorem.words.16";a:2:{i:0;R:3;i:1;R:17670;}s:33:"1242:website-faker.lorem.words.17";a:2:{i:0;R:3;i:1;R:17670;}s:33:"1242:website-faker.lorem.words.18";a:2:{i:0;R:3;i:1;R:17670;}s:33:"1242:website-faker.lorem.words.19";a:2:{i:0;R:3;i:1;R:17670;}s:33:"1242:website-faker.lorem.words.20";a:2:{i:0;R:3;i:1;R:17670;}s:33:"1242:website-faker.lorem.words.21";a:2:{i:0;R:3;i:1;R:17670;}s:33:"1242:website-faker.lorem.words.22";a:2:{i:0;R:3;i:1;R:17670;}s:33:"1242:website-faker.lorem.words.23";a:2:{i:0;R:3;i:1;R:17670;}s:33:"1242:website-faker.lorem.words.24";a:2:{i:0;R:3;i:1;R:17670;}s:33:"1242:website-faker.lorem.words.25";a:2:{i:0;R:3;i:1;R:17670;}s:33:"1242:website-faker.lorem.words.26";a:2:{i:0;R:3;i:1;R:17670;}s:33:"1242:website-faker.lorem.words.27";a:2:{i:0;R:3;i:1;R:17670;}s:33:"1242:website-faker.lorem.words.28";a:2:{i:0;R:3;i:1;R:17670;}s:33:"1242:website-faker.lorem.words.29";a:2:{i:0;R:3;i:1;R:17670;}s:33:"1242:website-faker.lorem.words.30";a:2:{i:0;R:3;i:1;R:17670;}s:33:"1242:website-faker.lorem.words.31";a:2:{i:0;R:3;i:1;R:17670;}s:33:"1242:website-faker.lorem.words.32";a:2:{i:0;R:3;i:1;R:17670;}s:33:"1242:website-faker.lorem.words.33";a:2:{i:0;R:3;i:1;R:17670;}s:33:"1242:website-faker.lorem.words.34";a:2:{i:0;R:3;i:1;R:17670;}s:33:"1242:website-faker.lorem.words.35";a:2:{i:0;R:3;i:1;R:17670;}s:33:"1242:website-faker.lorem.words.36";a:2:{i:0;R:3;i:1;R:17670;}s:33:"1242:website-faker.lorem.words.37";a:2:{i:0;R:3;i:1;R:17670;}s:33:"1242:website-faker.lorem.words.38";a:2:{i:0;R:3;i:1;R:17670;}s:33:"1242:website-faker.lorem.words.39";a:2:{i:0;R:3;i:1;R:17670;}s:33:"1242:website-faker.lorem.words.40";a:2:{i:0;R:3;i:1;R:17670;}s:33:"1242:website-faker.lorem.words.41";a:2:{i:0;R:3;i:1;R:17670;}s:33:"1242:website-faker.lorem.words.42";a:2:{i:0;R:3;i:1;R:17670;}s:33:"1242:website-faker.lorem.words.43";a:2:{i:0;R:3;i:1;R:17670;}s:33:"1242:website-faker.lorem.words.44";a:2:{i:0;R:3;i:1;R:17670;}s:33:"1242:website-faker.lorem.words.45";a:2:{i:0;R:3;i:1;R:17670;}s:33:"1242:website-faker.lorem.words.46";a:2:{i:0;R:3;i:1;R:17670;}s:33:"1242:website-faker.lorem.words.47";a:2:{i:0;R:3;i:1;R:17670;}s:33:"1242:website-faker.lorem.words.48";a:2:{i:0;R:3;i:1;R:17670;}s:33:"1242:website-faker.lorem.words.49";a:2:{i:0;R:3;i:1;R:17670;}s:33:"1242:website-faker.lorem.words.50";a:2:{i:0;R:3;i:1;R:17670;}s:33:"1242:website-faker.lorem.words.51";a:2:{i:0;R:3;i:1;R:17670;}s:33:"1242:website-faker.lorem.words.52";a:2:{i:0;R:3;i:1;R:17670;}s:33:"1242:website-faker.lorem.words.53";a:2:{i:0;R:3;i:1;R:17670;}s:33:"1242:website-faker.lorem.words.54";a:2:{i:0;R:3;i:1;R:17670;}s:33:"1242:website-faker.lorem.words.55";a:2:{i:0;R:3;i:1;R:17670;}s:33:"1242:website-faker.lorem.words.56";a:2:{i:0;R:3;i:1;R:17670;}s:33:"1242:website-faker.lorem.words.57";a:2:{i:0;R:3;i:1;R:17670;}s:33:"1242:website-faker.lorem.words.58";a:2:{i:0;R:3;i:1;R:17670;}s:33:"1242:website-faker.lorem.words.59";a:2:{i:0;R:3;i:1;R:17670;}s:33:"1242:website-faker.lorem.words.60";a:2:{i:0;R:3;i:1;R:17670;}s:33:"1242:website-faker.lorem.words.61";a:2:{i:0;R:3;i:1;R:17670;}s:33:"1242:website-faker.lorem.words.62";a:2:{i:0;R:3;i:1;R:17670;}s:33:"1242:website-faker.lorem.words.63";a:2:{i:0;R:3;i:1;R:17670;}s:33:"1242:website-faker.lorem.words.64";a:2:{i:0;R:3;i:1;R:17670;}s:33:"1242:website-faker.lorem.words.65";a:2:{i:0;R:3;i:1;R:17670;}s:33:"1242:website-faker.lorem.words.66";a:2:{i:0;R:3;i:1;R:17670;}s:33:"1242:website-faker.lorem.words.67";a:2:{i:0;R:3;i:1;R:17670;}s:33:"1242:website-faker.lorem.words.68";a:2:{i:0;R:3;i:1;R:17670;}s:33:"1242:website-faker.lorem.words.69";a:2:{i:0;R:3;i:1;R:17670;}s:33:"1242:website-faker.lorem.words.70";a:2:{i:0;R:3;i:1;R:17670;}s:33:"1242:website-faker.lorem.words.71";a:2:{i:0;R:3;i:1;R:17670;}s:33:"1242:website-faker.lorem.words.72";a:2:{i:0;R:3;i:1;R:17670;}s:33:"1242:website-faker.lorem.words.73";a:2:{i:0;R:3;i:1;R:17670;}s:33:"1242:website-faker.lorem.words.74";a:2:{i:0;R:3;i:1;R:17670;}s:33:"1242:website-faker.lorem.words.75";a:2:{i:0;R:3;i:1;R:17670;}s:33:"1242:website-faker.lorem.words.76";a:2:{i:0;R:3;i:1;R:17670;}s:33:"1242:website-faker.lorem.words.77";a:2:{i:0;R:3;i:1;R:17670;}s:33:"1242:website-faker.lorem.words.78";a:2:{i:0;R:3;i:1;R:17670;}s:33:"1242:website-faker.lorem.words.79";a:2:{i:0;R:3;i:1;R:17670;}s:33:"1242:website-faker.lorem.words.80";a:2:{i:0;R:3;i:1;R:17670;}s:33:"1242:website-faker.lorem.words.81";a:2:{i:0;R:3;i:1;R:17670;}s:33:"1242:website-faker.lorem.words.82";a:2:{i:0;R:3;i:1;R:17670;}s:33:"1242:website-faker.lorem.words.83";a:2:{i:0;R:3;i:1;R:17670;}s:33:"1242:website-faker.lorem.words.84";a:2:{i:0;R:3;i:1;R:17670;}s:33:"1242:website-faker.lorem.words.85";a:2:{i:0;R:3;i:1;R:17670;}s:33:"1242:website-faker.lorem.words.86";a:2:{i:0;R:3;i:1;R:17670;}s:33:"1242:website-faker.lorem.words.87";a:2:{i:0;R:3;i:1;R:17670;}s:33:"1242:website-faker.lorem.words.88";a:2:{i:0;R:3;i:1;R:17670;}s:33:"1242:website-faker.lorem.words.89";a:2:{i:0;R:3;i:1;R:17670;}s:33:"1242:website-faker.lorem.words.90";a:2:{i:0;R:3;i:1;R:17670;}s:33:"1242:website-faker.lorem.words.91";a:2:{i:0;R:3;i:1;R:17670;}s:33:"1242:website-faker.lorem.words.92";a:2:{i:0;R:3;i:1;R:17670;}s:33:"1242:website-faker.lorem.words.93";a:2:{i:0;R:3;i:1;R:17670;}s:33:"1242:website-faker.lorem.words.94";a:2:{i:0;R:3;i:1;R:17670;}s:33:"1242:website-faker.lorem.words.95";a:2:{i:0;R:3;i:1;R:17670;}s:33:"1242:website-faker.lorem.words.96";a:2:{i:0;R:3;i:1;R:17670;}s:33:"1242:website-faker.lorem.words.97";a:2:{i:0;R:3;i:1;R:17670;}s:33:"1242:website-faker.lorem.words.98";a:2:{i:0;R:3;i:1;R:17670;}s:33:"1242:website-faker.lorem.words.99";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-faker.lorem.words.100";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-faker.lorem.words.101";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-faker.lorem.words.102";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-faker.lorem.words.103";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-faker.lorem.words.104";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-faker.lorem.words.105";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-faker.lorem.words.106";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-faker.lorem.words.107";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-faker.lorem.words.108";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-faker.lorem.words.109";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-faker.lorem.words.110";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-faker.lorem.words.111";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-faker.lorem.words.112";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-faker.lorem.words.113";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-faker.lorem.words.114";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-faker.lorem.words.115";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-faker.lorem.words.116";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-faker.lorem.words.117";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-faker.lorem.words.118";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-faker.lorem.words.119";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-faker.lorem.words.120";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-faker.lorem.words.121";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-faker.lorem.words.122";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-faker.lorem.words.123";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-faker.lorem.words.124";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-faker.lorem.words.125";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-faker.lorem.words.126";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-faker.lorem.words.127";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-faker.lorem.words.128";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-faker.lorem.words.129";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-faker.lorem.words.130";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-faker.lorem.words.131";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-faker.lorem.words.132";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-faker.lorem.words.133";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-faker.lorem.words.134";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-faker.lorem.words.135";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-faker.lorem.words.136";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-faker.lorem.words.137";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-faker.lorem.words.138";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-faker.lorem.words.139";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-faker.lorem.words.140";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-faker.lorem.words.141";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-faker.lorem.words.142";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-faker.lorem.words.143";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-faker.lorem.words.144";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-faker.lorem.words.145";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-faker.lorem.words.146";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-faker.lorem.words.147";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-faker.lorem.words.148";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-faker.lorem.words.149";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-faker.lorem.words.150";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-faker.lorem.words.151";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-faker.lorem.words.152";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-faker.lorem.words.153";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-faker.lorem.words.154";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-faker.lorem.words.155";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-faker.lorem.words.156";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-faker.lorem.words.157";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-faker.lorem.words.158";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-faker.lorem.words.159";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-faker.lorem.words.160";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-faker.lorem.words.161";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-faker.lorem.words.162";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-faker.lorem.words.163";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-faker.lorem.words.164";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-faker.lorem.words.165";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-faker.lorem.words.166";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-faker.lorem.words.167";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-faker.lorem.words.168";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-faker.lorem.words.169";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-faker.lorem.words.170";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-faker.lorem.words.171";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-faker.lorem.words.172";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-faker.lorem.words.173";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-faker.lorem.words.174";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-faker.lorem.words.175";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-faker.lorem.words.176";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-faker.lorem.words.177";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-faker.lorem.words.178";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-faker.lorem.words.179";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-faker.lorem.words.180";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-faker.lorem.words.181";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-faker.lorem.words.182";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-faker.lorem.words.183";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-faker.lorem.words.184";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-faker.lorem.words.185";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-faker.lorem.words.186";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-faker.lorem.words.187";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-faker.lorem.words.188";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-faker.lorem.words.189";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-faker.lorem.words.190";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-faker.lorem.words.191";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-faker.lorem.words.192";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-faker.lorem.words.193";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-faker.lorem.words.194";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-faker.lorem.words.195";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-faker.lorem.words.196";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-faker.lorem.words.197";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-faker.lorem.words.198";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-faker.lorem.words.199";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-faker.lorem.words.200";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-faker.lorem.words.201";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-faker.lorem.words.202";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-faker.lorem.words.203";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-faker.lorem.words.204";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-faker.lorem.words.205";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-faker.lorem.words.206";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-faker.lorem.words.207";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-faker.lorem.words.208";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-faker.lorem.words.209";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-faker.lorem.words.210";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-faker.lorem.words.211";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-faker.lorem.words.212";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-faker.lorem.words.213";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-faker.lorem.words.214";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-faker.lorem.words.215";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-faker.lorem.words.216";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-faker.lorem.words.217";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-faker.lorem.words.218";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-faker.lorem.words.219";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-faker.lorem.words.220";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-faker.lorem.words.221";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-faker.lorem.words.222";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-faker.lorem.words.223";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-faker.lorem.words.224";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-faker.lorem.words.225";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-faker.lorem.words.226";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-faker.lorem.words.227";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-faker.lorem.words.228";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-faker.lorem.words.229";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-faker.lorem.words.230";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-faker.lorem.words.231";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-faker.lorem.words.232";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-faker.lorem.words.233";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-faker.lorem.words.234";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-faker.lorem.words.235";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-faker.lorem.words.236";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-faker.lorem.words.237";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-faker.lorem.words.238";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-faker.lorem.words.239";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-faker.lorem.words.240";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-faker.lorem.words.241";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-faker.lorem.words.242";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-faker.lorem.words.243";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-faker.lorem.words.244";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-faker.lorem.words.245";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-faker.lorem.words.246";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-faker.lorem.words.247";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-faker.lorem.words.248";a:2:{i:0;R:3;i:1;R:17670;}s:51:"1242:website-admins.statistics.content_partner_link";a:2:{i:0;R:3;i:1;R:17670;}s:43:"1242:website-admins.statistics.curator_link";a:2:{i:0;R:3;i:1;R:17670;}s:47:"1242:website-admins.statistics.data_object_link";a:2:{i:0;R:3;i:1;R:17670;}s:41:"1242:website-admins.statistics.index_link";a:2:{i:0;R:3;i:1;R:17670;}s:44:"1242:website-admins.statistics.lifedesk_link";a:2:{i:0;R:3;i:1;R:17670;}s:42:"1242:website-admins.statistics.marine_link";a:2:{i:0;R:3;i:1;R:17670;}s:49:"1242:website-admins.statistics.page_richness_link";a:2:{i:0;R:3;i:1;R:17670;}s:51:"1242:website-admins.statistics.user_added_data_link";a:2:{i:0;R:3;i:1;R:17670;}s:58:"1242:website-admins.statistics.content_partner.page_header";a:2:{i:0;R:3;i:1;R:17670;}s:57:"1242:website-admins.statistics.content_partner.page_title";a:2:{i:0;R:3;i:1;R:17670;}s:50:"1242:website-admins.statistics.curator.page_header";a:2:{i:0;R:3;i:1;R:17670;}s:49:"1242:website-admins.statistics.curator.page_title";a:2:{i:0;R:3;i:1;R:17670;}s:54:"1242:website-admins.statistics.data_object.page_header";a:2:{i:0;R:3;i:1;R:17670;}s:53:"1242:website-admins.statistics.data_object.page_title";a:2:{i:0;R:3;i:1;R:17670;}s:48:"1242:website-admins.statistics.index.page_header";a:2:{i:0;R:3;i:1;R:17670;}s:47:"1242:website-admins.statistics.index.page_title";a:2:{i:0;R:3;i:1;R:17670;}s:50:"1242:website-admins.statistics.index.table_caption";a:2:{i:0;R:3;i:1;R:17670;}s:51:"1242:website-admins.statistics.lifedesk.page_header";a:2:{i:0;R:3;i:1;R:17670;}s:50:"1242:website-admins.statistics.lifedesk.page_title";a:2:{i:0;R:3;i:1;R:17670;}s:49:"1242:website-admins.statistics.marine.page_header";a:2:{i:0;R:3;i:1;R:17670;}s:48:"1242:website-admins.statistics.marine.page_title";a:2:{i:0;R:3;i:1;R:17670;}s:56:"1242:website-admins.statistics.page_richness.page_header";a:2:{i:0;R:3;i:1;R:17670;}s:55:"1242:website-admins.statistics.page_richness.page_title";a:2:{i:0;R:3;i:1;R:17670;}s:58:"1242:website-admins.statistics.user_added_data.page_header";a:2:{i:0;R:3;i:1;R:17670;}s:57:"1242:website-admins.statistics.user_added_data.page_title";a:2:{i:0;R:3;i:1;R:17670;}s:46:"1242:website-collections.show.meta_description";a:2:{i:0;R:3;i:1;R:17670;}s:43:"1242:website-collections.show.meta_keywords";a:2:{i:0;R:3;i:1;R:17670;}s:40:"1242:website-collections.show.meta_title";a:2:{i:0;R:3;i:1;R:17670;}s:40:"1242:website-collections.show.tweet_text";a:2:{i:0;R:3;i:1;R:17670;}s:54:"1242:website-collections.editors.show.meta_description";a:2:{i:0;R:3;i:1;R:17670;}s:51:"1242:website-collections.editors.show.meta_keywords";a:2:{i:0;R:3;i:1;R:17670;}s:48:"1242:website-collections.editors.show.meta_title";a:2:{i:0;R:3;i:1;R:17670;}s:48:"1242:website-collections.editors.show.tweet_text";a:2:{i:0;R:3;i:1;R:17670;}s:56:"1242:website-collections.newsfeeds.show.meta_description";a:2:{i:0;R:3;i:1;R:17670;}s:53:"1242:website-collections.newsfeeds.show.meta_keywords";a:2:{i:0;R:3;i:1;R:17670;}s:50:"1242:website-collections.newsfeeds.show.meta_title";a:2:{i:0;R:3;i:1;R:17670;}s:50:"1242:website-collections.newsfeeds.show.tweet_text";a:2:{i:0;R:3;i:1;R:17670;}s:59:"1242:website-communities.collections.index.meta_description";a:2:{i:0;R:3;i:1;R:17670;}s:56:"1242:website-communities.collections.index.meta_keywords";a:2:{i:0;R:3;i:1;R:17670;}s:53:"1242:website-communities.collections.index.meta_title";a:2:{i:0;R:3;i:1;R:17670;}s:53:"1242:website-communities.collections.index.tweet_text";a:2:{i:0;R:3;i:1;R:17670;}s:56:"1242:website-communities.newsfeeds.show.meta_description";a:2:{i:0;R:3;i:1;R:17670;}s:53:"1242:website-communities.newsfeeds.show.meta_keywords";a:2:{i:0;R:3;i:1;R:17670;}s:50:"1242:website-communities.newsfeeds.show.meta_title";a:2:{i:0;R:3;i:1;R:17670;}s:50:"1242:website-communities.newsfeeds.show.tweet_text";a:2:{i:0;R:3;i:1;R:17670;}s:46:"1242:website-communities.show.meta_description";a:2:{i:0;R:3;i:1;R:17670;}s:40:"1242:website-communities.show.meta_title";a:2:{i:0;R:3;i:1;R:17670;}s:43:"1242:website-content.index.meta_description";a:2:{i:0;R:3;i:1;R:17670;}s:40:"1242:website-content.index.meta_keywords";a:2:{i:0;R:3;i:1;R:17670;}s:37:"1242:website-content.index.meta_title";a:2:{i:0;R:3;i:1;R:17670;}s:62:"1242:website-content_partners.statistics.show.meta_description";a:2:{i:0;R:3;i:1;R:17670;}s:59:"1242:website-content_partners.statistics.show.meta_keywords";a:2:{i:0;R:3;i:1;R:17670;}s:56:"1242:website-content_partners.statistics.show.meta_title";a:2:{i:0;R:3;i:1;R:17670;}s:56:"1242:website-content_partners.statistics.show.tweet_text";a:2:{i:0;R:3;i:1;R:17670;}s:52:"1242:website-content_partners.index.meta_description";a:2:{i:0;R:3;i:1;R:17670;}s:49:"1242:website-content_partners.index.meta_keywords";a:2:{i:0;R:3;i:1;R:17670;}s:46:"1242:website-content_partners.index.meta_title";a:2:{i:0;R:3;i:1;R:17670;}s:51:"1242:website-content_partners.show.meta_description";a:2:{i:0;R:3;i:1;R:17670;}s:48:"1242:website-content_partners.show.meta_keywords";a:2:{i:0;R:3;i:1;R:17670;}s:45:"1242:website-content_partners.show.meta_title";a:2:{i:0;R:3;i:1;R:17670;}s:45:"1242:website-content_partners.show.tweet_text";a:2:{i:0;R:3;i:1;R:17670;}s:45:"1242:website-content_partners.edit.meta_title";a:2:{i:0;R:3;i:1;R:17670;}s:41:"1242:website-data_objects.show.meta_title";a:2:{i:0;R:3;i:1;R:17670;}s:41:"1242:website-data_objects.show.tweet_text";a:2:{i:0;R:3;i:1;R:17670;}s:43:"1242:website-members.index.meta_description";a:2:{i:0;R:3;i:1;R:17670;}s:40:"1242:website-members.index.meta_keywords";a:2:{i:0;R:3;i:1;R:17670;}s:37:"1242:website-members.index.meta_title";a:2:{i:0;R:3;i:1;R:17670;}s:37:"1242:website-members.index.tweet_text";a:2:{i:0;R:3;i:1;R:17670;}s:42:"1242:website-members.show.meta_description";a:2:{i:0;R:3;i:1;R:17670;}s:39:"1242:website-members.show.meta_keywords";a:2:{i:0;R:3;i:1;R:17670;}s:36:"1242:website-members.show.meta_title";a:2:{i:0;R:3;i:1;R:17670;}s:36:"1242:website-members.show.tweet_text";a:2:{i:0;R:3;i:1;R:17670;}s:40:"1242:website-notifier.activity_log_empty";a:2:{i:0;R:3;i:1;R:17670;}s:61:"1242:website-notifier.activity_user_added_association_on_date";a:2:{i:0;R:3;i:1;R:17670;}s:63:"1242:website-notifier.activity_user_removed_association_on_date";a:2:{i:0;R:3;i:1;R:17670;}s:71:"1242:website-notifier.activity_user_added_association_for_taxon_on_date";a:2:{i:0;R:3;i:1;R:17670;}s:73:"1242:website-notifier.activity_user_removed_association_for_taxon_on_date";a:2:{i:0;R:3;i:1;R:17670;}s:83:"1242:website-notifier.activity_user_marked_data_object_as_trusted_for_taxon_on_date";a:2:{i:0;R:3;i:1;R:17670;}s:75:"1242:website-notifier.activity_user_marked_data_object_as_untrusted_on_date";a:2:{i:0;R:3;i:1;R:17670;}s:85:"1242:website-notifier.activity_user_marked_data_object_as_untrusted_for_taxon_on_date";a:2:{i:0;R:3;i:1;R:17670;}s:79:"1242:website-notifier.activity_user_marked_data_object_as_inappropriate_on_date";a:2:{i:0;R:3;i:1;R:17670;}s:36:"1242:website-notifier.comments_empty";a:2:{i:0;R:3;i:1;R:17670;}s:51:"1242:website-notifier.greeting_dear_name_with_comma";a:2:{i:0;R:3;i:1;R:17670;}s:37:"1242:website-notifier.signature_basic";a:2:{i:0;R:3;i:1;R:17670;}s:52:"1242:website-notifier.signature_with_support_contact";a:2:{i:0;R:3;i:1;R:17670;}s:64:"1242:website-notifier.signature_with_species_pages_group_contact";a:2:{i:0;R:3;i:1;R:17670;}s:59:"1242:website-notifier.user_commented_on_something_date_body";a:2:{i:0;R:3;i:1;R:17670;}s:65:"1242:website-notifier.activity_on_content_partner_content.subject";a:2:{i:0;R:3;i:1;R:17670;}s:65:"1242:website-notifier.activity_on_content_partner_content.message";a:2:{i:0;R:3;i:1;R:17670;}s:54:"1242:website-notifier.activity_on_user_content.subject";a:2:{i:0;R:3;i:1;R:17670;}s:54:"1242:website-notifier.activity_on_user_content.message";a:2:{i:0;R:3;i:1;R:17670;}s:48:"1242:website-notifier.contact_us_message.subject";a:2:{i:0;R:3;i:1;R:17670;}s:48:"1242:website-notifier.contact_us_message.message";a:2:{i:0;R:3;i:1;R:17670;}s:54:"1242:website-notifier.contact_us_auto_response.subject";a:2:{i:0;R:3;i:1;R:17670;}s:54:"1242:website-notifier.contact_us_auto_response.message";a:2:{i:0;R:3;i:1;R:17670;}s:53:"1242:website-notifier.content_partner_created.subject";a:2:{i:0;R:3;i:1;R:17670;}s:53:"1242:website-notifier.content_partner_created.message";a:2:{i:0;R:3;i:1;R:17670;}s:62:"1242:website-notifier.content_partner_resource_created.subject";a:2:{i:0;R:3;i:1;R:17670;}s:62:"1242:website-notifier.content_partner_resource_created.message";a:2:{i:0;R:3;i:1;R:17670;}s:76:"1242:website-notifier.content_partner_resource_force_harvest_request.subject";a:2:{i:0;R:3;i:1;R:17670;}s:76:"1242:website-notifier.content_partner_resource_force_harvest_request.message";a:2:{i:0;R:3;i:1;R:17670;}s:80:"1242:website-notifier.content_partner_resource_hierarchy_publish_request.subject";a:2:{i:0;R:3;i:1;R:17670;}s:80:"1242:website-notifier.content_partner_resource_hierarchy_publish_request.message";a:2:{i:0;R:3;i:1;R:17670;}s:65:"1242:website-notifier.content_partner_statistics_reminder.subject";a:2:{i:0;R:3;i:1;R:17670;}s:65:"1242:website-notifier.content_partner_statistics_reminder.message";a:2:{i:0;R:3;i:1;R:17670;}s:46:"1242:website-notifier.curator_approved.subject";a:2:{i:0;R:3;i:1;R:17670;}s:46:"1242:website-notifier.curator_approved.message";a:2:{i:0;R:3;i:1;R:17670;}s:44:"1242:website-notifier.user_activated.subject";a:2:{i:0;R:3;i:1;R:17670;}s:44:"1242:website-notifier.user_activated.message";a:2:{i:0;R:3;i:1;R:17670;}s:42:"1242:website-notifier.user_message.subject";a:2:{i:0;R:3;i:1;R:17670;}s:60:"1242:website-notifier.user_updated_email_preferences.subject";a:2:{i:0;R:3;i:1;R:17670;}s:60:"1242:website-notifier.user_updated_email_preferences.message";a:2:{i:0;R:3;i:1;R:17670;}s:49:"1242:website-notifier.user_reset_password.subject";a:2:{i:0;R:3;i:1;R:17670;}s:49:"1242:website-notifier.user_reset_password.message";a:2:{i:0;R:3;i:1;R:17670;}s:47:"1242:website-notifier.user_verification.subject";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-recent_activity.intro";a:2:{i:0;R:3;i:1;R:17670;}s:40:"1242:website-recent_activity.unsubscribe";a:2:{i:0;R:3;i:1;R:17670;}s:53:"1242:website-recent_activity.bulk_comments_with_count";a:2:{i:0;R:3;i:1;R:17670;}s:53:"1242:website-recent_activity.bulk_curation_with_count";a:2:{i:0;R:3;i:1;R:17670;}s:64:"1242:website-recent_activity.bulk_collection_activity_with_count";a:2:{i:0;R:3;i:1;R:17670;}s:63:"1242:website-recent_activity.bulk_community_activity_with_count";a:2:{i:0;R:3;i:1;R:17670;}s:60:"1242:website-recent_activity.bulk_community_joins_with_count";a:2:{i:0;R:3;i:1;R:17670;}s:44:"1242:website-recent_activity.default_subject";a:2:{i:0;R:3;i:1;R:17670;}s:47:"1242:website-recent_activity.comment_body_brief";a:2:{i:0;R:3;i:1;R:17670;}s:42:"1242:website-recent_activity.comment_title";a:2:{i:0;R:3;i:1;R:17670;}s:56:"1242:website-recent_activity.comment_title_your_newsfeed";a:2:{i:0;R:3;i:1;R:17670;}s:58:"1242:website-recent_activity.collection_activity_log_title";a:2:{i:0;R:3;i:1;R:17670;}s:57:"1242:website-recent_activity.community_activity_log_title";a:2:{i:0;R:3;i:1;R:17670;}s:55:"1242:website-recent_activity.curator_activity_log_title";a:2:{i:0;R:3;i:1;R:17670;}s:46:"1242:website-recent_activity.data_object_title";a:2:{i:0;R:3;i:1;R:17670;}s:59:"1242:website-recent_activity.someone_commented_on_something";a:2:{i:0;R:3;i:1;R:17670;}s:41:"1242:website-recent_activity.comment_link";a:2:{i:0;R:3;i:1;R:17670;}s:56:"1242:website-recent_activity.collection_activity_by_user";a:2:{i:0;R:3;i:1;R:17670;}s:64:"1242:website-recent_activity.collection_activity_user_added_item";a:2:{i:0;R:3;i:1;R:17670;}s:72:"1242:website-recent_activity.collection_activity_user_watching_recipient";a:2:{i:0;R:3;i:1;R:17670;}s:55:"1242:website-recent_activity.community_activity_by_user";a:2:{i:0;R:3;i:1;R:17670;}s:59:"1242:website-recent_activity.community_activity_user_joined";a:2:{i:0;R:3;i:1;R:17670;}s:57:"1242:website-recent_activity.community_activity_user_left";a:2:{i:0;R:3;i:1;R:17670;}s:74:"1242:website-recent_activity.community_activity_user_made_member_a_manager";a:2:{i:0;R:3;i:1;R:17670;}s:68:"1242:website-recent_activity.curator_activity_on_data_object_by_user";a:2:{i:0;R:3;i:1;R:17670;}s:70:"1242:website-recent_activity.curator_activity_on_taxon_concept_by_user";a:2:{i:0;R:3;i:1;R:17670;}s:71:"1242:website-recent_activity.data_object_activity_article_added_by_user";a:2:{i:0;R:3;i:1;R:17670;}s:36:"1242:website-sessions.new.meta_title";a:2:{i:0;R:3;i:1;R:17670;}s:68:"1242:website-taxa.communities.index.hierarchy_entry.meta_description";a:2:{i:0;R:3;i:1;R:17670;}s:85:"1242:website-taxa.communities.index.hierarchy_entry.meta_description_with_common_name";a:2:{i:0;R:3;i:1;R:17670;}s:65:"1242:website-taxa.communities.index.hierarchy_entry.meta_keywords";a:2:{i:0;R:3;i:1;R:17670;}s:62:"1242:website-taxa.communities.index.hierarchy_entry.meta_title";a:2:{i:0;R:3;i:1;R:17670;}s:79:"1242:website-taxa.communities.index.hierarchy_entry.meta_title_with_common_name";a:2:{i:0;R:3;i:1;R:17670;}s:62:"1242:website-taxa.communities.index.hierarchy_entry.tweet_text";a:2:{i:0;R:3;i:1;R:17670;}s:52:"1242:website-taxa.communities.index.meta_description";a:2:{i:0;R:3;i:1;R:17670;}s:69:"1242:website-taxa.communities.index.meta_description_with_common_name";a:2:{i:0;R:3;i:1;R:17670;}s:49:"1242:website-taxa.communities.index.meta_keywords";a:2:{i:0;R:3;i:1;R:17670;}s:66:"1242:website-taxa.communities.index.meta_keywords_with_common_name";a:2:{i:0;R:3;i:1;R:17670;}s:46:"1242:website-taxa.communities.index.meta_title";a:2:{i:0;R:3;i:1;R:17670;}s:63:"1242:website-taxa.communities.index.meta_title_with_common_name";a:2:{i:0;R:3;i:1;R:17670;}s:46:"1242:website-taxa.communities.index.tweet_text";a:2:{i:0;R:3;i:1;R:17670;}s:74:"1242:website-taxa.communities.collections.hierarchy_entry.meta_description";a:2:{i:0;R:3;i:1;R:17670;}s:91:"1242:website-taxa.communities.collections.hierarchy_entry.meta_description_with_common_name";a:2:{i:0;R:3;i:1;R:17670;}s:71:"1242:website-taxa.communities.collections.hierarchy_entry.meta_keywords";a:2:{i:0;R:3;i:1;R:17670;}s:68:"1242:website-taxa.communities.collections.hierarchy_entry.meta_title";a:2:{i:0;R:3;i:1;R:17670;}s:85:"1242:website-taxa.communities.collections.hierarchy_entry.meta_title_with_common_name";a:2:{i:0;R:3;i:1;R:17670;}s:68:"1242:website-taxa.communities.collections.hierarchy_entry.tweet_text";a:2:{i:0;R:3;i:1;R:17670;}s:58:"1242:website-taxa.communities.collections.meta_description";a:2:{i:0;R:3;i:1;R:17670;}s:75:"1242:website-taxa.communities.collections.meta_description_with_common_name";a:2:{i:0;R:3;i:1;R:17670;}s:55:"1242:website-taxa.communities.collections.meta_keywords";a:2:{i:0;R:3;i:1;R:17670;}s:72:"1242:website-taxa.communities.collections.meta_keywords_with_common_name";a:2:{i:0;R:3;i:1;R:17670;}s:52:"1242:website-taxa.communities.collections.meta_title";a:2:{i:0;R:3;i:1;R:17670;}s:69:"1242:website-taxa.communities.collections.meta_title_with_common_name";a:2:{i:0;R:3;i:1;R:17670;}s:52:"1242:website-taxa.communities.collections.tweet_text";a:2:{i:0;R:3;i:1;R:17670;}s:65:"1242:website-taxa.communities.curators.hierarchy_entry.meta_title";a:2:{i:0;R:3;i:1;R:17670;}s:82:"1242:website-taxa.communities.curators.hierarchy_entry.meta_title_with_common_name";a:2:{i:0;R:3;i:1;R:17670;}s:65:"1242:website-taxa.communities.curators.hierarchy_entry.tweet_text";a:2:{i:0;R:3;i:1;R:17670;}s:55:"1242:website-taxa.communities.curators.meta_description";a:2:{i:0;R:3;i:1;R:17670;}s:72:"1242:website-taxa.communities.curators.meta_description_with_common_name";a:2:{i:0;R:3;i:1;R:17670;}s:52:"1242:website-taxa.communities.curators.meta_keywords";a:2:{i:0;R:3;i:1;R:17670;}s:69:"1242:website-taxa.communities.curators.meta_keywords_with_common_name";a:2:{i:0;R:3;i:1;R:17670;}s:49:"1242:website-taxa.communities.curators.meta_title";a:2:{i:0;R:3;i:1;R:17670;}s:66:"1242:website-taxa.communities.curators.meta_title_with_common_name";a:2:{i:0;R:3;i:1;R:17670;}s:49:"1242:website-taxa.communities.curators.tweet_text";a:2:{i:0;R:3;i:1;R:17670;}s:64:"1242:website-taxa.details.index.hierarchy_entry.meta_description";a:2:{i:0;R:3;i:1;R:17670;}s:82:"1242:website-taxa.details.index.hierarchy_entry.meta_description_with_chapter_list";a:2:{i:0;R:3;i:1;R:17670;}s:81:"1242:website-taxa.details.index.hierarchy_entry.meta_description_with_common_name";a:2:{i:0;R:3;i:1;R:17670;}s:99:"1242:website-taxa.details.index.hierarchy_entry.meta_description_with_common_name_with_chapter_list";a:2:{i:0;R:3;i:1;R:17670;}s:61:"1242:website-taxa.details.index.hierarchy_entry.meta_keywords";a:2:{i:0;R:3;i:1;R:17670;}s:58:"1242:website-taxa.details.index.hierarchy_entry.meta_title";a:2:{i:0;R:3;i:1;R:17670;}s:75:"1242:website-taxa.details.index.hierarchy_entry.meta_title_with_common_name";a:2:{i:0;R:3;i:1;R:17670;}s:58:"1242:website-taxa.details.index.hierarchy_entry.tweet_text";a:2:{i:0;R:3;i:1;R:17670;}s:48:"1242:website-taxa.details.index.meta_description";a:2:{i:0;R:3;i:1;R:17670;}s:66:"1242:website-taxa.details.index.meta_description_with_chapter_list";a:2:{i:0;R:3;i:1;R:17670;}s:65:"1242:website-taxa.details.index.meta_description_with_common_name";a:2:{i:0;R:3;i:1;R:17670;}s:83:"1242:website-taxa.details.index.meta_description_with_common_name_with_chapter_list";a:2:{i:0;R:3;i:1;R:17670;}s:45:"1242:website-taxa.details.index.meta_keywords";a:2:{i:0;R:3;i:1;R:17670;}s:62:"1242:website-taxa.details.index.meta_keywords_with_common_name";a:2:{i:0;R:3;i:1;R:17670;}s:42:"1242:website-taxa.details.index.meta_title";a:2:{i:0;R:3;i:1;R:17670;}s:59:"1242:website-taxa.details.index.meta_title_with_common_name";a:2:{i:0;R:3;i:1;R:17670;}s:42:"1242:website-taxa.details.index.tweet_text";a:2:{i:0;R:3;i:1;R:17670;}s:65:"1242:website-taxa.literature.bhl.hierarchy_entry.meta_description";a:2:{i:0;R:3;i:1;R:17670;}s:82:"1242:website-taxa.literature.bhl.hierarchy_entry.meta_description_with_common_name";a:2:{i:0;R:3;i:1;R:17670;}s:62:"1242:website-taxa.literature.bhl.hierarchy_entry.meta_keywords";a:2:{i:0;R:3;i:1;R:17670;}s:59:"1242:website-taxa.literature.bhl.hierarchy_entry.meta_title";a:2:{i:0;R:3;i:1;R:17670;}s:76:"1242:website-taxa.literature.bhl.hierarchy_entry.meta_title_with_common_name";a:2:{i:0;R:3;i:1;R:17670;}s:59:"1242:website-taxa.literature.bhl.hierarchy_entry.tweet_text";a:2:{i:0;R:3;i:1;R:17670;}s:49:"1242:website-taxa.literature.bhl.meta_description";a:2:{i:0;R:3;i:1;R:17670;}s:66:"1242:website-taxa.literature.bhl.meta_description_with_common_name";a:2:{i:0;R:3;i:1;R:17670;}s:46:"1242:website-taxa.literature.bhl.meta_keywords";a:2:{i:0;R:3;i:1;R:17670;}s:63:"1242:website-taxa.literature.bhl.meta_keywords_with_common_name";a:2:{i:0;R:3;i:1;R:17670;}s:43:"1242:website-taxa.literature.bhl.meta_title";a:2:{i:0;R:3;i:1;R:17670;}s:60:"1242:website-taxa.literature.bhl.meta_title_with_common_name";a:2:{i:0;R:3;i:1;R:17670;}s:43:"1242:website-taxa.literature.bhl.tweet_text";a:2:{i:0;R:3;i:1;R:17670;}s:66:"1242:website-taxa.literature.show.hierarchy_entry.meta_description";a:2:{i:0;R:3;i:1;R:17670;}s:83:"1242:website-taxa.literature.show.hierarchy_entry.meta_description_with_common_name";a:2:{i:0;R:3;i:1;R:17670;}s:63:"1242:website-taxa.literature.show.hierarchy_entry.meta_keywords";a:2:{i:0;R:3;i:1;R:17670;}s:60:"1242:website-taxa.literature.show.hierarchy_entry.meta_title";a:2:{i:0;R:3;i:1;R:17670;}s:77:"1242:website-taxa.literature.show.hierarchy_entry.meta_title_with_common_name";a:2:{i:0;R:3;i:1;R:17670;}s:60:"1242:website-taxa.literature.show.hierarchy_entry.tweet_text";a:2:{i:0;R:3;i:1;R:17670;}s:50:"1242:website-taxa.literature.show.meta_description";a:2:{i:0;R:3;i:1;R:17670;}s:67:"1242:website-taxa.literature.show.meta_description_with_common_name";a:2:{i:0;R:3;i:1;R:17670;}s:47:"1242:website-taxa.literature.show.meta_keywords";a:2:{i:0;R:3;i:1;R:17670;}s:64:"1242:website-taxa.literature.show.meta_keywords_with_common_name";a:2:{i:0;R:3;i:1;R:17670;}s:44:"1242:website-taxa.literature.show.meta_title";a:2:{i:0;R:3;i:1;R:17670;}s:61:"1242:website-taxa.literature.show.meta_title_with_common_name";a:2:{i:0;R:3;i:1;R:17670;}s:44:"1242:website-taxa.literature.show.tweet_text";a:2:{i:0;R:3;i:1;R:17670;}s:60:"1242:website-taxa.maps.show.hierarchy_entry.meta_description";a:2:{i:0;R:3;i:1;R:17670;}s:77:"1242:website-taxa.maps.show.hierarchy_entry.meta_description_with_common_name";a:2:{i:0;R:3;i:1;R:17670;}s:57:"1242:website-taxa.maps.show.hierarchy_entry.meta_keywords";a:2:{i:0;R:3;i:1;R:17670;}s:54:"1242:website-taxa.maps.show.hierarchy_entry.meta_title";a:2:{i:0;R:3;i:1;R:17670;}s:71:"1242:website-taxa.maps.show.hierarchy_entry.meta_title_with_common_name";a:2:{i:0;R:3;i:1;R:17670;}s:54:"1242:website-taxa.maps.show.hierarchy_entry.tweet_text";a:2:{i:0;R:3;i:1;R:17670;}s:44:"1242:website-taxa.maps.show.meta_description";a:2:{i:0;R:3;i:1;R:17670;}s:61:"1242:website-taxa.maps.show.meta_description_with_common_name";a:2:{i:0;R:3;i:1;R:17670;}s:41:"1242:website-taxa.maps.show.meta_keywords";a:2:{i:0;R:3;i:1;R:17670;}s:58:"1242:website-taxa.maps.show.meta_keywords_with_common_name";a:2:{i:0;R:3;i:1;R:17670;}s:38:"1242:website-taxa.maps.show.meta_title";a:2:{i:0;R:3;i:1;R:17670;}s:55:"1242:website-taxa.maps.show.meta_title_with_common_name";a:2:{i:0;R:3;i:1;R:17670;}s:38:"1242:website-taxa.maps.show.tweet_text";a:2:{i:0;R:3;i:1;R:17670;}s:62:"1242:website-taxa.media.index.hierarchy_entry.meta_description";a:2:{i:0;R:3;i:1;R:17670;}s:79:"1242:website-taxa.media.index.hierarchy_entry.meta_description_with_common_name";a:2:{i:0;R:3;i:1;R:17670;}s:59:"1242:website-taxa.media.index.hierarchy_entry.meta_keywords";a:2:{i:0;R:3;i:1;R:17670;}s:76:"1242:website-taxa.media.index.hierarchy_entry.meta_keywords_with_common_name";a:2:{i:0;R:3;i:1;R:17670;}s:56:"1242:website-taxa.media.index.hierarchy_entry.meta_title";a:2:{i:0;R:3;i:1;R:17670;}s:73:"1242:website-taxa.media.index.hierarchy_entry.meta_title_with_common_name";a:2:{i:0;R:3;i:1;R:17670;}s:56:"1242:website-taxa.media.index.hierarchy_entry.tweet_text";a:2:{i:0;R:3;i:1;R:17670;}s:46:"1242:website-taxa.media.index.meta_description";a:2:{i:0;R:3;i:1;R:17670;}s:63:"1242:website-taxa.media.index.meta_description_with_common_name";a:2:{i:0;R:3;i:1;R:17670;}s:43:"1242:website-taxa.media.index.meta_keywords";a:2:{i:0;R:3;i:1;R:17670;}s:60:"1242:website-taxa.media.index.meta_keywords_with_common_name";a:2:{i:0;R:3;i:1;R:17670;}s:40:"1242:website-taxa.media.index.meta_title";a:2:{i:0;R:3;i:1;R:17670;}s:57:"1242:website-taxa.media.index.meta_title_with_common_name";a:2:{i:0;R:3;i:1;R:17670;}s:40:"1242:website-taxa.media.index.tweet_text";a:2:{i:0;R:3;i:1;R:17670;}s:62:"1242:website-taxa.names.index.hierarchy_entry.meta_description";a:2:{i:0;R:3;i:1;R:17670;}s:79:"1242:website-taxa.names.index.hierarchy_entry.meta_description_with_common_name";a:2:{i:0;R:3;i:1;R:17670;}s:59:"1242:website-taxa.names.index.hierarchy_entry.meta_keywords";a:2:{i:0;R:3;i:1;R:17670;}s:56:"1242:website-taxa.names.index.hierarchy_entry.meta_title";a:2:{i:0;R:3;i:1;R:17670;}s:73:"1242:website-taxa.names.index.hierarchy_entry.meta_title_with_common_name";a:2:{i:0;R:3;i:1;R:17670;}s:56:"1242:website-taxa.names.index.hierarchy_entry.tweet_text";a:2:{i:0;R:3;i:1;R:17670;}s:46:"1242:website-taxa.names.index.meta_description";a:2:{i:0;R:3;i:1;R:17670;}s:63:"1242:website-taxa.names.index.meta_description_with_common_name";a:2:{i:0;R:3;i:1;R:17670;}s:43:"1242:website-taxa.names.index.meta_keywords";a:2:{i:0;R:3;i:1;R:17670;}s:60:"1242:website-taxa.names.index.meta_keywords_with_common_name";a:2:{i:0;R:3;i:1;R:17670;}s:40:"1242:website-taxa.names.index.meta_title";a:2:{i:0;R:3;i:1;R:17670;}s:57:"1242:website-taxa.names.index.meta_title_with_common_name";a:2:{i:0;R:3;i:1;R:17670;}s:40:"1242:website-taxa.names.index.tweet_text";a:2:{i:0;R:3;i:1;R:17670;}s:69:"1242:website-taxa.names.common_names.hierarchy_entry.meta_description";a:2:{i:0;R:3;i:1;R:17670;}s:86:"1242:website-taxa.names.common_names.hierarchy_entry.meta_description_with_common_name";a:2:{i:0;R:3;i:1;R:17670;}s:66:"1242:website-taxa.names.common_names.hierarchy_entry.meta_keywords";a:2:{i:0;R:3;i:1;R:17670;}s:83:"1242:website-taxa.names.common_names.hierarchy_entry.meta_keywords_with_common_name";a:2:{i:0;R:3;i:1;R:17670;}s:63:"1242:website-taxa.names.common_names.hierarchy_entry.meta_title";a:2:{i:0;R:3;i:1;R:17670;}s:80:"1242:website-taxa.names.common_names.hierarchy_entry.meta_title_with_common_name";a:2:{i:0;R:3;i:1;R:17670;}s:63:"1242:website-taxa.names.common_names.hierarchy_entry.tweet_text";a:2:{i:0;R:3;i:1;R:17670;}s:53:"1242:website-taxa.names.common_names.meta_description";a:2:{i:0;R:3;i:1;R:17670;}s:70:"1242:website-taxa.names.common_names.meta_description_with_common_name";a:2:{i:0;R:3;i:1;R:17670;}s:50:"1242:website-taxa.names.common_names.meta_keywords";a:2:{i:0;R:3;i:1;R:17670;}s:67:"1242:website-taxa.names.common_names.meta_keywords_with_common_name";a:2:{i:0;R:3;i:1;R:17670;}s:47:"1242:website-taxa.names.common_names.meta_title";a:2:{i:0;R:3;i:1;R:17670;}s:64:"1242:website-taxa.names.common_names.meta_title_with_common_name";a:2:{i:0;R:3;i:1;R:17670;}s:47:"1242:website-taxa.names.common_names.tweet_text";a:2:{i:0;R:3;i:1;R:17670;}s:65:"1242:website-taxa.names.synonyms.hierarchy_entry.meta_description";a:2:{i:0;R:3;i:1;R:17670;}s:82:"1242:website-taxa.names.synonyms.hierarchy_entry.meta_description_with_common_name";a:2:{i:0;R:3;i:1;R:17670;}s:62:"1242:website-taxa.names.synonyms.hierarchy_entry.meta_keywords";a:2:{i:0;R:3;i:1;R:17670;}s:79:"1242:website-taxa.names.synonyms.hierarchy_entry.meta_keywords_with_common_name";a:2:{i:0;R:3;i:1;R:17670;}s:59:"1242:website-taxa.names.synonyms.hierarchy_entry.meta_title";a:2:{i:0;R:3;i:1;R:17670;}s:76:"1242:website-taxa.names.synonyms.hierarchy_entry.meta_title_with_common_name";a:2:{i:0;R:3;i:1;R:17670;}s:59:"1242:website-taxa.names.synonyms.hierarchy_entry.tweet_text";a:2:{i:0;R:3;i:1;R:17670;}s:49:"1242:website-taxa.names.synonyms.meta_description";a:2:{i:0;R:3;i:1;R:17670;}s:66:"1242:website-taxa.names.synonyms.meta_description_with_common_name";a:2:{i:0;R:3;i:1;R:17670;}s:46:"1242:website-taxa.names.synonyms.meta_keywords";a:2:{i:0;R:3;i:1;R:17670;}s:63:"1242:website-taxa.names.synonyms.meta_keywords_with_common_name";a:2:{i:0;R:3;i:1;R:17670;}s:43:"1242:website-taxa.names.synonyms.meta_title";a:2:{i:0;R:3;i:1;R:17670;}s:60:"1242:website-taxa.names.synonyms.meta_title_with_common_name";a:2:{i:0;R:3;i:1;R:17670;}s:43:"1242:website-taxa.names.synonyms.tweet_text";a:2:{i:0;R:3;i:1;R:17670;}s:65:"1242:website-taxa.overviews.show.hierarchy_entry.meta_description";a:2:{i:0;R:3;i:1;R:17670;}s:82:"1242:website-taxa.overviews.show.hierarchy_entry.meta_description_with_common_name";a:2:{i:0;R:3;i:1;R:17670;}s:62:"1242:website-taxa.overviews.show.hierarchy_entry.meta_keywords";a:2:{i:0;R:3;i:1;R:17670;}s:79:"1242:website-taxa.overviews.show.hierarchy_entry.meta_keywords_with_common_name";a:2:{i:0;R:3;i:1;R:17670;}s:59:"1242:website-taxa.overviews.show.hierarchy_entry.meta_title";a:2:{i:0;R:3;i:1;R:17670;}s:76:"1242:website-taxa.overviews.show.hierarchy_entry.meta_title_with_common_name";a:2:{i:0;R:3;i:1;R:17670;}s:59:"1242:website-taxa.overviews.show.hierarchy_entry.tweet_text";a:2:{i:0;R:3;i:1;R:17670;}s:49:"1242:website-taxa.overviews.show.meta_description";a:2:{i:0;R:3;i:1;R:17670;}s:66:"1242:website-taxa.overviews.show.meta_description_with_common_name";a:2:{i:0;R:3;i:1;R:17670;}s:46:"1242:website-taxa.overviews.show.meta_keywords";a:2:{i:0;R:3;i:1;R:17670;}s:63:"1242:website-taxa.overviews.show.meta_keywords_with_common_name";a:2:{i:0;R:3;i:1;R:17670;}s:43:"1242:website-taxa.overviews.show.meta_title";a:2:{i:0;R:3;i:1;R:17670;}s:60:"1242:website-taxa.overviews.show.meta_title_with_common_name";a:2:{i:0;R:3;i:1;R:17670;}s:43:"1242:website-taxa.overviews.show.tweet_text";a:2:{i:0;R:3;i:1;R:17670;}s:65:"1242:website-taxa.resources.show.hierarchy_entry.meta_description";a:2:{i:0;R:3;i:1;R:17670;}s:82:"1242:website-taxa.resources.show.hierarchy_entry.meta_description_with_common_name";a:2:{i:0;R:3;i:1;R:17670;}s:62:"1242:website-taxa.resources.show.hierarchy_entry.meta_keywords";a:2:{i:0;R:3;i:1;R:17670;}s:79:"1242:website-taxa.resources.show.hierarchy_entry.meta_keywords_with_common_name";a:2:{i:0;R:3;i:1;R:17670;}s:59:"1242:website-taxa.resources.show.hierarchy_entry.meta_title";a:2:{i:0;R:3;i:1;R:17670;}s:76:"1242:website-taxa.resources.show.hierarchy_entry.meta_title_with_common_name";a:2:{i:0;R:3;i:1;R:17670;}s:59:"1242:website-taxa.resources.show.hierarchy_entry.tweet_text";a:2:{i:0;R:3;i:1;R:17670;}s:49:"1242:website-taxa.resources.show.meta_description";a:2:{i:0;R:3;i:1;R:17670;}s:66:"1242:website-taxa.resources.show.meta_description_with_common_name";a:2:{i:0;R:3;i:1;R:17670;}s:46:"1242:website-taxa.resources.show.meta_keywords";a:2:{i:0;R:3;i:1;R:17670;}s:63:"1242:website-taxa.resources.show.meta_keywords_with_common_name";a:2:{i:0;R:3;i:1;R:17670;}s:43:"1242:website-taxa.resources.show.meta_title";a:2:{i:0;R:3;i:1;R:17670;}s:60:"1242:website-taxa.resources.show.meta_title_with_common_name";a:2:{i:0;R:3;i:1;R:17670;}s:43:"1242:website-taxa.resources.show.tweet_text";a:2:{i:0;R:3;i:1;R:17670;}s:77:"1242:website-taxa.resources.biomedical_terms.hierarchy_entry.meta_description";a:2:{i:0;R:3;i:1;R:17670;}s:94:"1242:website-taxa.resources.biomedical_terms.hierarchy_entry.meta_description_with_common_name";a:2:{i:0;R:3;i:1;R:17670;}s:74:"1242:website-taxa.resources.biomedical_terms.hierarchy_entry.meta_keywords";a:2:{i:0;R:3;i:1;R:17670;}s:71:"1242:website-taxa.resources.biomedical_terms.hierarchy_entry.meta_title";a:2:{i:0;R:3;i:1;R:17670;}s:88:"1242:website-taxa.resources.biomedical_terms.hierarchy_entry.meta_title_with_common_name";a:2:{i:0;R:3;i:1;R:17670;}s:71:"1242:website-taxa.resources.biomedical_terms.hierarchy_entry.tweet_text";a:2:{i:0;R:3;i:1;R:17670;}s:61:"1242:website-taxa.resources.biomedical_terms.meta_description";a:2:{i:0;R:3;i:1;R:17670;}s:78:"1242:website-taxa.resources.biomedical_terms.meta_description_with_common_name";a:2:{i:0;R:3;i:1;R:17670;}s:58:"1242:website-taxa.resources.biomedical_terms.meta_keywords";a:2:{i:0;R:3;i:1;R:17670;}s:75:"1242:website-taxa.resources.biomedical_terms.meta_keywords_with_common_name";a:2:{i:0;R:3;i:1;R:17670;}s:55:"1242:website-taxa.resources.biomedical_terms.meta_title";a:2:{i:0;R:3;i:1;R:17670;}s:72:"1242:website-taxa.resources.biomedical_terms.meta_title_with_common_name";a:2:{i:0;R:3;i:1;R:17670;}s:55:"1242:website-taxa.resources.biomedical_terms.tweet_text";a:2:{i:0;R:3;i:1;R:17670;}s:70:"1242:website-taxa.resources.education.hierarchy_entry.meta_description";a:2:{i:0;R:3;i:1;R:17670;}s:87:"1242:website-taxa.resources.education.hierarchy_entry.meta_description_with_common_name";a:2:{i:0;R:3;i:1;R:17670;}s:67:"1242:website-taxa.resources.education.hierarchy_entry.meta_keywords";a:2:{i:0;R:3;i:1;R:17670;}s:64:"1242:website-taxa.resources.education.hierarchy_entry.meta_title";a:2:{i:0;R:3;i:1;R:17670;}s:81:"1242:website-taxa.resources.education.hierarchy_entry.meta_title_with_common_name";a:2:{i:0;R:3;i:1;R:17670;}s:64:"1242:website-taxa.resources.education.hierarchy_entry.tweet_text";a:2:{i:0;R:3;i:1;R:17670;}s:54:"1242:website-taxa.resources.education.meta_description";a:2:{i:0;R:3;i:1;R:17670;}s:71:"1242:website-taxa.resources.education.meta_description_with_common_name";a:2:{i:0;R:3;i:1;R:17670;}s:51:"1242:website-taxa.resources.education.meta_keywords";a:2:{i:0;R:3;i:1;R:17670;}s:68:"1242:website-taxa.resources.education.meta_keywords_with_common_name";a:2:{i:0;R:3;i:1;R:17670;}s:48:"1242:website-taxa.resources.education.meta_title";a:2:{i:0;R:3;i:1;R:17670;}s:65:"1242:website-taxa.resources.education.meta_title_with_common_name";a:2:{i:0;R:3;i:1;R:17670;}s:48:"1242:website-taxa.resources.education.tweet_text";a:2:{i:0;R:3;i:1;R:17670;}s:85:"1242:website-taxa.resources.identification_resources.hierarchy_entry.meta_description";a:2:{i:0;R:3;i:1;R:17670;}s:102:"1242:website-taxa.resources.identification_resources.hierarchy_entry.meta_description_with_common_name";a:2:{i:0;R:3;i:1;R:17670;}s:82:"1242:website-taxa.resources.identification_resources.hierarchy_entry.meta_keywords";a:2:{i:0;R:3;i:1;R:17670;}s:79:"1242:website-taxa.resources.identification_resources.hierarchy_entry.meta_title";a:2:{i:0;R:3;i:1;R:17670;}s:96:"1242:website-taxa.resources.identification_resources.hierarchy_entry.meta_title_with_common_name";a:2:{i:0;R:3;i:1;R:17670;}s:79:"1242:website-taxa.resources.identification_resources.hierarchy_entry.tweet_text";a:2:{i:0;R:3;i:1;R:17670;}s:69:"1242:website-taxa.resources.identification_resources.meta_description";a:2:{i:0;R:3;i:1;R:17670;}s:86:"1242:website-taxa.resources.identification_resources.meta_description_with_common_name";a:2:{i:0;R:3;i:1;R:17670;}s:66:"1242:website-taxa.resources.identification_resources.meta_keywords";a:2:{i:0;R:3;i:1;R:17670;}s:83:"1242:website-taxa.resources.identification_resources.meta_keywords_with_common_name";a:2:{i:0;R:3;i:1;R:17670;}s:63:"1242:website-taxa.resources.identification_resources.meta_title";a:2:{i:0;R:3;i:1;R:17670;}s:80:"1242:website-taxa.resources.identification_resources.meta_title_with_common_name";a:2:{i:0;R:3;i:1;R:17670;}s:63:"1242:website-taxa.resources.identification_resources.tweet_text";a:2:{i:0;R:3;i:1;R:17670;}s:81:"1242:website-taxa.resources.nucleotide_sequences.hierarchy_entry.meta_description";a:2:{i:0;R:3;i:1;R:17670;}s:98:"1242:website-taxa.resources.nucleotide_sequences.hierarchy_entry.meta_description_with_common_name";a:2:{i:0;R:3;i:1;R:17670;}s:78:"1242:website-taxa.resources.nucleotide_sequences.hierarchy_entry.meta_keywords";a:2:{i:0;R:3;i:1;R:17670;}s:75:"1242:website-taxa.resources.nucleotide_sequences.hierarchy_entry.meta_title";a:2:{i:0;R:3;i:1;R:17670;}s:92:"1242:website-taxa.resources.nucleotide_sequences.hierarchy_entry.meta_title_with_common_name";a:2:{i:0;R:3;i:1;R:17670;}s:75:"1242:website-taxa.resources.nucleotide_sequences.hierarchy_entry.tweet_text";a:2:{i:0;R:3;i:1;R:17670;}s:65:"1242:website-taxa.resources.nucleotide_sequences.meta_description";a:2:{i:0;R:3;i:1;R:17670;}s:82:"1242:website-taxa.resources.nucleotide_sequences.meta_description_with_common_name";a:2:{i:0;R:3;i:1;R:17670;}s:62:"1242:website-taxa.resources.nucleotide_sequences.meta_keywords";a:2:{i:0;R:3;i:1;R:17670;}s:79:"1242:website-taxa.resources.nucleotide_sequences.meta_keywords_with_common_name";a:2:{i:0;R:3;i:1;R:17670;}s:59:"1242:website-taxa.resources.nucleotide_sequences.meta_title";a:2:{i:0;R:3;i:1;R:17670;}s:76:"1242:website-taxa.resources.nucleotide_sequences.meta_title_with_common_name";a:2:{i:0;R:3;i:1;R:17670;}s:59:"1242:website-taxa.resources.nucleotide_sequences.tweet_text";a:2:{i:0;R:3;i:1;R:17670;}s:63:"1242:website-taxa.updates.show.hierarchy_entry.meta_description";a:2:{i:0;R:3;i:1;R:17670;}s:80:"1242:website-taxa.updates.show.hierarchy_entry.meta_description_with_common_name";a:2:{i:0;R:3;i:1;R:17670;}s:60:"1242:website-taxa.updates.show.hierarchy_entry.meta_keywords";a:2:{i:0;R:3;i:1;R:17670;}s:57:"1242:website-taxa.updates.show.hierarchy_entry.meta_title";a:2:{i:0;R:3;i:1;R:17670;}s:74:"1242:website-taxa.updates.show.hierarchy_entry.meta_title_with_common_name";a:2:{i:0;R:3;i:1;R:17670;}s:57:"1242:website-taxa.updates.show.hierarchy_entry.tweet_text";a:2:{i:0;R:3;i:1;R:17670;}s:47:"1242:website-taxa.updates.show.meta_description";a:2:{i:0;R:3;i:1;R:17670;}s:64:"1242:website-taxa.updates.show.meta_description_with_common_name";a:2:{i:0;R:3;i:1;R:17670;}s:44:"1242:website-taxa.updates.show.meta_keywords";a:2:{i:0;R:3;i:1;R:17670;}s:61:"1242:website-taxa.updates.show.meta_keywords_with_common_name";a:2:{i:0;R:3;i:1;R:17670;}s:41:"1242:website-taxa.updates.show.meta_title";a:2:{i:0;R:3;i:1;R:17670;}s:58:"1242:website-taxa.updates.show.meta_title_with_common_name";a:2:{i:0;R:3;i:1;R:17670;}s:41:"1242:website-taxa.updates.show.tweet_text";a:2:{i:0;R:3;i:1;R:17670;}s:69:"1242:website-taxa.updates.statistics.hierarchy_entry.meta_description";a:2:{i:0;R:3;i:1;R:17670;}s:86:"1242:website-taxa.updates.statistics.hierarchy_entry.meta_description_with_common_name";a:2:{i:0;R:3;i:1;R:17670;}s:66:"1242:website-taxa.updates.statistics.hierarchy_entry.meta_keywords";a:2:{i:0;R:3;i:1;R:17670;}s:63:"1242:website-taxa.updates.statistics.hierarchy_entry.meta_title";a:2:{i:0;R:3;i:1;R:17670;}s:80:"1242:website-taxa.updates.statistics.hierarchy_entry.meta_title_with_common_name";a:2:{i:0;R:3;i:1;R:17670;}s:63:"1242:website-taxa.updates.statistics.hierarchy_entry.tweet_text";a:2:{i:0;R:3;i:1;R:17670;}s:53:"1242:website-taxa.updates.statistics.meta_description";a:2:{i:0;R:3;i:1;R:17670;}s:70:"1242:website-taxa.updates.statistics.meta_description_with_common_name";a:2:{i:0;R:3;i:1;R:17670;}s:50:"1242:website-taxa.updates.statistics.meta_keywords";a:2:{i:0;R:3;i:1;R:17670;}s:67:"1242:website-taxa.updates.statistics.meta_keywords_with_common_name";a:2:{i:0;R:3;i:1;R:17670;}s:47:"1242:website-taxa.updates.statistics.meta_title";a:2:{i:0;R:3;i:1;R:17670;}s:64:"1242:website-taxa.updates.statistics.meta_title_with_common_name";a:2:{i:0;R:3;i:1;R:17670;}s:47:"1242:website-taxa.updates.statistics.tweet_text";a:2:{i:0;R:3;i:1;R:17670;}s:51:"1242:website-users.activities.show.meta_description";a:2:{i:0;R:3;i:1;R:17670;}s:48:"1242:website-users.activities.show.meta_keywords";a:2:{i:0;R:3;i:1;R:17670;}s:45:"1242:website-users.activities.show.meta_title";a:2:{i:0;R:3;i:1;R:17670;}s:45:"1242:website-users.activities.show.tweet_text";a:2:{i:0;R:3;i:1;R:17670;}s:53:"1242:website-users.collections.index.meta_description";a:2:{i:0;R:3;i:1;R:17670;}s:50:"1242:website-users.collections.index.meta_keywords";a:2:{i:0;R:3;i:1;R:17670;}s:47:"1242:website-users.collections.index.meta_title";a:2:{i:0;R:3;i:1;R:17670;}s:47:"1242:website-users.collections.index.tweet_text";a:2:{i:0;R:3;i:1;R:17670;}s:53:"1242:website-users.communities.index.meta_description";a:2:{i:0;R:3;i:1;R:17670;}s:50:"1242:website-users.communities.index.meta_keywords";a:2:{i:0;R:3;i:1;R:17670;}s:47:"1242:website-users.communities.index.meta_title";a:2:{i:0;R:3;i:1;R:17670;}s:47:"1242:website-users.communities.index.tweet_text";a:2:{i:0;R:3;i:1;R:17670;}s:58:"1242:website-users.content_partners.index.meta_description";a:2:{i:0;R:3;i:1;R:17670;}s:55:"1242:website-users.content_partners.index.meta_keywords";a:2:{i:0;R:3;i:1;R:17670;}s:52:"1242:website-users.content_partners.index.meta_title";a:2:{i:0;R:3;i:1;R:17670;}s:52:"1242:website-users.content_partners.index.tweet_text";a:2:{i:0;R:3;i:1;R:17670;}s:42:"1242:website-users.newsfeeds.activity_link";a:2:{i:0;R:3;i:1;R:17670;}s:42:"1242:website-users.newsfeeds.comments_link";a:2:{i:0;R:3;i:1;R:17670;}s:42:"1242:website-users.newsfeeds.newsfeed_link";a:2:{i:0;R:3;i:1;R:17670;}s:50:"1242:website-users.newsfeeds.show.meta_description";a:2:{i:0;R:3;i:1;R:17670;}s:47:"1242:website-users.newsfeeds.show.meta_keywords";a:2:{i:0;R:3;i:1;R:17670;}s:44:"1242:website-users.newsfeeds.show.meta_title";a:2:{i:0;R:3;i:1;R:17670;}s:44:"1242:website-users.newsfeeds.show.tweet_text";a:2:{i:0;R:3;i:1;R:17670;}s:54:"1242:website-users.notifications.edit.page_description";a:2:{i:0;R:3;i:1;R:17670;}s:48:"1242:website-users.notifications.edit.page_title";a:2:{i:0;R:3;i:1;R:17670;}s:40:"1242:website-users.show.meta_description";a:2:{i:0;R:3;i:1;R:17670;}s:48:"1242:website-users.show.meta_description_curator";a:2:{i:0;R:3;i:1;R:17670;}s:37:"1242:website-users.show.meta_keywords";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-users.show.meta_title";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-users.show.tweet_text";a:2:{i:0;R:3;i:1;R:17670;}s:63:"1242:website-this_article_cannot_be_curated_because_unpublished";a:2:{i:0;R:3;i:1;R:17670;}s:40:"1242:website-this_article_is_unpublished";a:2:{i:0;R:3;i:1;R:17670;}s:61:"1242:website-this_image_cannot_be_curated_because_unpublished";a:2:{i:0;R:3;i:1;R:17670;}s:38:"1242:website-this_image_is_unpublished";a:2:{i:0;R:3;i:1;R:17670;}s:65:"1242:website-this_image_map_cannot_be_curated_because_unpublished";a:2:{i:0;R:3;i:1;R:17670;}s:42:"1242:website-this_image_map_is_unpublished";a:2:{i:0;R:3;i:1;R:17670;}s:59:"1242:website-this_map_cannot_be_curated_because_unpublished";a:2:{i:0;R:3;i:1;R:17670;}s:36:"1242:website-this_map_is_unpublished";a:2:{i:0;R:3;i:1;R:17670;}s:61:"1242:website-this_video_cannot_be_curated_because_unpublished";a:2:{i:0;R:3;i:1;R:17670;}s:38:"1242:website-this_video_is_unpublished";a:2:{i:0;R:3;i:1;R:17670;}s:61:"1242:website-this_sound_cannot_be_curated_because_unpublished";a:2:{i:0;R:3;i:1;R:17670;}s:38:"1242:website-this_sound_is_unpublished";a:2:{i:0;R:3;i:1;R:17670;}s:62:"1242:website-article_not_associated_with_any_published_entries";a:2:{i:0;R:3;i:1;R:17670;}s:67:"1242:website-unknown_type_not_associated_with_any_published_entries";a:2:{i:0;R:3;i:1;R:17670;}s:60:"1242:website-image_not_associated_with_any_published_entries";a:2:{i:0;R:3;i:1;R:17670;}s:64:"1242:website-image_map_not_associated_with_any_published_entries";a:2:{i:0;R:3;i:1;R:17670;}s:58:"1242:website-map_not_associated_with_any_published_entries";a:2:{i:0;R:3;i:1;R:17670;}s:60:"1242:website-video_not_associated_with_any_published_entries";a:2:{i:0;R:3;i:1;R:17670;}s:60:"1242:website-sound_not_associated_with_any_published_entries";a:2:{i:0;R:3;i:1;R:17670;}s:27:"1242:website-sound_alt_text";a:2:{i:0;R:3;i:1;R:17670;}s:27:"1242:website-image_alt_text";a:2:{i:0;R:3;i:1;R:17670;}s:25:"1242:website-map_alt_text";a:2:{i:0;R:3;i:1;R:17670;}s:31:"1242:website-image_map_alt_text";a:2:{i:0;R:3;i:1;R:17670;}s:27:"1242:website-video_alt_text";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-article_from_supplier";a:2:{i:0;R:3;i:1;R:17670;}s:32:"1242:website-sound_from_supplier";a:2:{i:0;R:3;i:1;R:17670;}s:32:"1242:website-image_from_supplier";a:2:{i:0;R:3;i:1;R:17670;}s:30:"1242:website-map_from_supplier";a:2:{i:0;R:3;i:1;R:17670;}s:36:"1242:website-image_map_from_supplier";a:2:{i:0;R:3;i:1;R:17670;}s:32:"1242:website-video_from_supplier";a:2:{i:0;R:3;i:1;R:17670;}s:23:"1242:website-article_of";a:2:{i:0;R:3;i:1;R:17670;}s:21:"1242:website-sound_of";a:2:{i:0;R:3;i:1;R:17670;}s:21:"1242:website-image_of";a:2:{i:0;R:3;i:1;R:17670;}s:19:"1242:website-map_of";a:2:{i:0;R:3;i:1;R:17670;}s:25:"1242:website-image_map_of";a:2:{i:0;R:3;i:1;R:17670;}s:21:"1242:website-video_of";a:2:{i:0;R:3;i:1;R:17670;}s:29:"1242:website-article_of_taxon";a:2:{i:0;R:3;i:1;R:17670;}s:27:"1242:website-sound_of_taxon";a:2:{i:0;R:3;i:1;R:17670;}s:27:"1242:website-image_of_taxon";a:2:{i:0;R:3;i:1;R:17670;}s:25:"1242:website-map_of_taxon";a:2:{i:0;R:3;i:1;R:17670;}s:31:"1242:website-image_map_of_taxon";a:2:{i:0;R:3;i:1;R:17670;}s:27:"1242:website-video_of_taxon";a:2:{i:0;R:3;i:1;R:17670;}s:27:"1242:website-article_rating";a:2:{i:0;R:3;i:1;R:17670;}s:29:"1242:website-community_rating";a:2:{i:0;R:3;i:1;R:17670;}s:30:"1242:website-collection_rating";a:2:{i:0;R:3;i:1;R:17670;}s:29:"1242:website-image_map_rating";a:2:{i:0;R:3;i:1;R:17670;}s:25:"1242:website-image_rating";a:2:{i:0;R:3;i:1;R:17670;}s:26:"1242:website-person_rating";a:2:{i:0;R:3;i:1;R:17670;}s:25:"1242:website-sound_rating";a:2:{i:0;R:3;i:1;R:17670;}s:25:"1242:website-taxon_rating";a:2:{i:0;R:3;i:1;R:17670;}s:25:"1242:website-video_rating";a:2:{i:0;R:3;i:1;R:17670;}s:23:"1242:website-map_rating";a:2:{i:0;R:3;i:1;R:17670;}s:19:"1242:website-0_or_1";a:2:{i:0;R:3;i:1;R:17670;}s:21:"1242:website-0_1_or_2";a:2:{i:0;R:3;i:1;R:17670;}s:21:"1242:website-1st_view";a:2:{i:0;R:3;i:1;R:17670;}s:22:"1242:website-about_eol";a:2:{i:0;R:3;i:1;R:17670;}s:32:"1242:website-account_information";a:2:{i:0;R:3;i:1;R:17670;}s:37:"1242:website-account_information_menu";a:2:{i:0;R:3;i:1;R:17670;}s:55:"1242:website-account_registered_but_not_ready_try_later";a:2:{i:0;R:3;i:1;R:17670;}s:19:"1242:website-action";a:2:{i:0;R:3;i:1;R:17670;}s:39:"1242:website-action_not_available_error";a:2:{i:0;R:3;i:1;R:17670;}s:20:"1242:website-actions";a:2:{i:0;R:3;i:1;R:17670;}s:25:"1242:website-active_colon";a:2:{i:0;R:3;i:1;R:17670;}s:19:"1242:website-active";a:2:{i:0;R:3;i:1;R:17670;}s:21:"1242:website-activity";a:2:{i:0;R:3;i:1;R:17670;}s:102:"1242:website-activity_logs.collection_activity_log.add_editor.an_unknown_user_of_an_unknown_collection";a:2:{i:0;R:3;i:1;R:17670;}s:91:"1242:website-activity_logs.collection_activity_log.add_editor.an_unknown_user_of_collection";a:2:{i:0;R:3;i:1;R:17670;}s:91:"1242:website-activity_logs.collection_activity_log.add_editor.user_of_an_unknown_collection";a:2:{i:0;R:3;i:1;R:17670;}s:80:"1242:website-activity_logs.collection_activity_log.add_editor.user_of_collection";a:2:{i:0;R:3;i:1;R:17670;}s:83:"1242:website-activity_logs.collection_activity_log.add_editor.an_unknown_user_of_it";a:2:{i:0;R:3;i:1;R:17670;}s:72:"1242:website-activity_logs.collection_activity_log.add_editor.user_of_it";a:2:{i:0;R:3;i:1;R:17670;}s:103:"1242:website-activity_logs.collection_activity_log.create.an_unknown_user_created_an_unknown_collection";a:2:{i:0;R:3;i:1;R:17670;}s:92:"1242:website-activity_logs.collection_activity_log.create.an_unknown_user_created_collection";a:2:{i:0;R:3;i:1;R:17670;}s:92:"1242:website-activity_logs.collection_activity_log.create.user_created_an_unknown_collection";a:2:{i:0;R:3;i:1;R:17670;}s:81:"1242:website-activity_logs.collection_activity_log.create.user_created_collection";a:2:{i:0;R:3;i:1;R:17670;}s:84:"1242:website-activity_logs.collection_activity_log.create.an_unknown_user_created_it";a:2:{i:0;R:3;i:1;R:17670;}s:73:"1242:website-activity_logs.collection_activity_log.create.user_created_it";a:2:{i:0;R:3;i:1;R:17670;}s:107:"1242:website-activity_logs.collection_activity_log.remove_all.an_unknown_user_cleared_an_unknown_collection";a:2:{i:0;R:3;i:1;R:17670;}s:96:"1242:website-activity_logs.collection_activity_log.remove_all.an_unknown_user_cleared_collection";a:2:{i:0;R:3;i:1;R:17670;}s:96:"1242:website-activity_logs.collection_activity_log.remove_all.user_cleared_an_unknown_collection";a:2:{i:0;R:3;i:1;R:17670;}s:85:"1242:website-activity_logs.collection_activity_log.remove_all.user_cleared_collection";a:2:{i:0;R:3;i:1;R:17670;}s:88:"1242:website-activity_logs.collection_activity_log.remove_all.an_unknown_user_cleared_it";a:2:{i:0;R:3;i:1;R:17670;}s:77:"1242:website-activity_logs.collection_activity_log.remove_all.user_cleared_it";a:2:{i:0;R:3;i:1;R:17670;}s:124:"1242:website-activity_logs.collection_activity_log.remove.an_unknown_user_removed_an_unknown_item_from_an_unknown_collection";a:2:{i:0;R:3;i:1;R:17670;}s:113:"1242:website-activity_logs.collection_activity_log.remove.an_unknown_user_removed_an_unknown_item_from_collection";a:2:{i:0;R:3;i:1;R:17670;}s:113:"1242:website-activity_logs.collection_activity_log.remove.an_unknown_user_removed_item_from_an_unknown_collection";a:2:{i:0;R:3;i:1;R:17670;}s:102:"1242:website-activity_logs.collection_activity_log.remove.an_unknown_user_removed_item_from_collection";a:2:{i:0;R:3;i:1;R:17670;}s:113:"1242:website-activity_logs.collection_activity_log.remove.user_removed_an_unknown_item_from_an_unknown_collection";a:2:{i:0;R:3;i:1;R:17670;}s:102:"1242:website-activity_logs.collection_activity_log.remove.user_removed_an_unknown_item_from_collection";a:2:{i:0;R:3;i:1;R:17670;}s:102:"1242:website-activity_logs.collection_activity_log.remove.user_removed_item_from_an_unknown_collection";a:2:{i:0;R:3;i:1;R:17670;}s:91:"1242:website-activity_logs.collection_activity_log.remove.user_removed_item_from_collection";a:2:{i:0;R:3;i:1;R:17670;}s:105:"1242:website-activity_logs.collection_activity_log.remove.an_unknown_user_removed_an_unknown_item_from_it";a:2:{i:0;R:3;i:1;R:17670;}s:94:"1242:website-activity_logs.collection_activity_log.remove.an_unknown_user_removed_item_from_it";a:2:{i:0;R:3;i:1;R:17670;}s:94:"1242:website-activity_logs.collection_activity_log.remove.user_removed_an_unknown_item_from_it";a:2:{i:0;R:3;i:1;R:17670;}s:83:"1242:website-activity_logs.collection_activity_log.remove.user_removed_item_from_it";a:2:{i:0;R:3;i:1;R:17670;}s:121:"1242:website-activity_logs.collection_activity_log.collect.an_unknown_user_added_an_unknown_item_to_an_unknown_collection";a:2:{i:0;R:3;i:1;R:17670;}s:110:"1242:website-activity_logs.collection_activity_log.collect.an_unknown_user_added_an_unknown_item_to_collection";a:2:{i:0;R:3;i:1;R:17670;}s:110:"1242:website-activity_logs.collection_activity_log.collect.an_unknown_user_added_item_to_an_unknown_collection";a:2:{i:0;R:3;i:1;R:17670;}s:99:"1242:website-activity_logs.collection_activity_log.collect.an_unknown_user_added_item_to_collection";a:2:{i:0;R:3;i:1;R:17670;}s:110:"1242:website-activity_logs.collection_activity_log.collect.user_added_an_unknown_item_to_an_unknown_collection";a:2:{i:0;R:3;i:1;R:17670;}s:99:"1242:website-activity_logs.collection_activity_log.collect.user_added_an_unknown_item_to_collection";a:2:{i:0;R:3;i:1;R:17670;}s:99:"1242:website-activity_logs.collection_activity_log.collect.user_added_item_to_an_unknown_collection";a:2:{i:0;R:3;i:1;R:17670;}s:88:"1242:website-activity_logs.collection_activity_log.collect.user_added_item_to_collection";a:2:{i:0;R:3;i:1;R:17670;}s:102:"1242:website-activity_logs.collection_activity_log.collect.an_unknown_user_added_an_unknown_item_to_it";a:2:{i:0;R:3;i:1;R:17670;}s:91:"1242:website-activity_logs.collection_activity_log.collect.an_unknown_user_added_item_to_it";a:2:{i:0;R:3;i:1;R:17670;}s:91:"1242:website-activity_logs.collection_activity_log.collect.user_added_an_unknown_item_to_it";a:2:{i:0;R:3;i:1;R:17670;}s:80:"1242:website-activity_logs.collection_activity_log.collect.user_added_item_to_it";a:2:{i:0;R:3;i:1;R:17670;}s:101:"1242:website-activity_logs.community_activity_log.create.an_unknown_user_created_an_unknown_community";R:17670;s:90:"1242:website-activity_logs.community_activity_log.create.an_unknown_user_created_community";R:17670;s:90:"1242:website-activity_logs.community_activity_log.create.user_created_an_unknown_community";R:17670;s:79:"1242:website-activity_logs.community_activity_log.create.user_created_community";R:17670;s:98:"1242:website-activity_logs.community_activity_log.join.an_unknown_user_joined_an_unknown_community";R:17670;s:87:"1242:website-activity_logs.community_activity_log.join.an_unknown_user_joined_community";R:17670;s:87:"1242:website-activity_logs.community_activity_log.join.user_joined_an_unknown_community";R:17670;s:76:"1242:website-activity_logs.community_activity_log.join.user_joined_community";R:17670;s:97:"1242:website-activity_logs.community_activity_log.leave.an_unknown_user_left_an_unknown_community";R:17670;s:86:"1242:website-activity_logs.community_activity_log.leave.an_unknown_user_left_community";R:17670;s:86:"1242:website-activity_logs.community_activity_log.leave.user_left_an_unknown_community";R:17670;s:75:"1242:website-activity_logs.community_activity_log.leave.user_left_community";R:17670;s:132:"1242:website-activity_logs.community_activity_log.change_description.an_unknown_user_changed_the_description_of_an_unknown_community";R:17670;s:121:"1242:website-activity_logs.community_activity_log.change_description.an_unknown_user_changed_the_description_of_community";R:17670;s:121:"1242:website-activity_logs.community_activity_log.change_description.user_changed_the_description_of_an_unknown_community";R:17670;s:110:"1242:website-activity_logs.community_activity_log.change_description.user_changed_the_description_of_community";R:17670;s:118:"1242:website-activity_logs.community_activity_log.change_name.an_unknown_user_changed_the_name_of_an_unknown_community";R:17670;s:107:"1242:website-activity_logs.community_activity_log.change_name.an_unknown_user_changed_the_name_of_community";R:17670;s:107:"1242:website-activity_logs.community_activity_log.change_name.user_changed_the_name_of_an_unknown_community";R:17670;s:96:"1242:website-activity_logs.community_activity_log.change_name.user_changed_the_name_of_community";R:17670;s:118:"1242:website-activity_logs.community_activity_log.change_icon.an_unknown_user_changed_the_icon_of_an_unknown_community";R:17670;s:107:"1242:website-activity_logs.community_activity_log.change_icon.an_unknown_user_changed_the_icon_of_community";R:17670;s:107:"1242:website-activity_logs.community_activity_log.change_icon.user_changed_the_icon_of_an_unknown_community";R:17670;s:96:"1242:website-activity_logs.community_activity_log.change_icon.user_changed_the_icon_of_community";R:17670;s:126:"1242:website-activity_logs.community_activity_log.add_manager.an_unknown_user_added_an_unknown_manager_to_an_unknown_community";R:17670;s:115:"1242:website-activity_logs.community_activity_log.add_manager.an_unknown_user_added_an_unknown_manager_to_community";R:17670;s:115:"1242:website-activity_logs.community_activity_log.add_manager.an_unknown_user_added_manager_to_an_unknown_community";R:17670;s:104:"1242:website-activity_logs.community_activity_log.add_manager.an_unknown_user_added_manager_to_community";R:17670;s:115:"1242:website-activity_logs.community_activity_log.add_manager.user_added_an_unknown_manager_to_an_unknown_community";R:17670;s:104:"1242:website-activity_logs.community_activity_log.add_manager.user_added_an_unknown_manager_to_community";R:17670;s:104:"1242:website-activity_logs.community_activity_log.add_manager.user_added_manager_to_an_unknown_community";R:17670;s:93:"1242:website-activity_logs.community_activity_log.add_manager.user_added_manager_to_community";R:17670;s:66:"1242:website-activity_logs.curator_activity_log.reasons_to_untrust";R:17670;s:63:"1242:website-activity_logs.curator_activity_log.reasons_to_hide";R:17670;s:126:"1242:website-activity_logs.curator_activity_log.trusted.an_unknown_user_trusted_an_older_data_object_on_an_unknown_association";R:17670;s:115:"1242:website-activity_logs.curator_activity_log.trusted.an_unknown_user_trusted_an_older_data_object_on_association";R:17670;s:128:"1242:website-activity_logs.curator_activity_log.trusted.an_unknown_user_trusted_an_unknown_data_object_on_an_unknown_association";R:17670;s:117:"1242:website-activity_logs.curator_activity_log.trusted.an_unknown_user_trusted_an_unknown_data_object_on_association";R:17670;s:117:"1242:website-activity_logs.curator_activity_log.trusted.an_unknown_user_trusted_data_object_on_an_unknown_association";R:17670;s:106:"1242:website-activity_logs.curator_activity_log.trusted.an_unknown_user_trusted_data_object_on_association";R:17670;s:115:"1242:website-activity_logs.curator_activity_log.trusted.user_trusted_an_older_data_object_on_an_unknown_association";R:17670;s:104:"1242:website-activity_logs.curator_activity_log.trusted.user_trusted_an_older_data_object_on_association";R:17670;s:117:"1242:website-activity_logs.curator_activity_log.trusted.user_trusted_an_unknown_data_object_on_an_unknown_association";R:17670;s:106:"1242:website-activity_logs.curator_activity_log.trusted.user_trusted_an_unknown_data_object_on_association";R:17670;s:106:"1242:website-activity_logs.curator_activity_log.trusted.user_trusted_data_object_on_an_unknown_association";R:17670;s:95:"1242:website-activity_logs.curator_activity_log.trusted.user_trusted_data_object_on_association";R:17670;s:97:"1242:website-activity_logs.curator_activity_log.trusted.user_trusted_it_on_an_unknown_association";R:17670;s:86:"1242:website-activity_logs.curator_activity_log.trusted.user_trusted_it_on_association";R:17670;s:108:"1242:website-activity_logs.curator_activity_log.trusted.an_unknown_user_trusted_it_on_an_unknown_association";R:17670;s:97:"1242:website-activity_logs.curator_activity_log.trusted.an_unknown_user_trusted_it_on_association";R:17670;s:130:"1242:website-activity_logs.curator_activity_log.untrusted.an_unknown_user_untrusted_an_older_data_object_on_an_unknown_association";R:17670;s:119:"1242:website-activity_logs.curator_activity_log.untrusted.an_unknown_user_untrusted_an_older_data_object_on_association";R:17670;s:132:"1242:website-activity_logs.curator_activity_log.untrusted.an_unknown_user_untrusted_an_unknown_data_object_on_an_unknown_association";R:17670;s:121:"1242:website-activity_logs.curator_activity_log.untrusted.an_unknown_user_untrusted_an_unknown_data_object_on_association";R:17670;s:121:"1242:website-activity_logs.curator_activity_log.untrusted.an_unknown_user_untrusted_data_object_on_an_unknown_association";R:17670;s:110:"1242:website-activity_logs.curator_activity_log.untrusted.an_unknown_user_untrusted_data_object_on_association";R:17670;s:119:"1242:website-activity_logs.curator_activity_log.untrusted.user_untrusted_an_older_data_object_on_an_unknown_association";R:17670;s:108:"1242:website-activity_logs.curator_activity_log.untrusted.user_untrusted_an_older_data_object_on_association";R:17670;s:121:"1242:website-activity_logs.curator_activity_log.untrusted.user_untrusted_an_unknown_data_object_on_an_unknown_association";R:17670;s:110:"1242:website-activity_logs.curator_activity_log.untrusted.user_untrusted_an_unknown_data_object_on_association";R:17670;s:110:"1242:website-activity_logs.curator_activity_log.untrusted.user_untrusted_data_object_on_an_unknown_association";R:17670;s:99:"1242:website-activity_logs.curator_activity_log.untrusted.user_untrusted_data_object_on_association";R:17670;s:112:"1242:website-activity_logs.curator_activity_log.untrusted.an_unknown_user_untrusted_it_on_an_unknown_association";R:17670;s:101:"1242:website-activity_logs.curator_activity_log.untrusted.an_unknown_user_untrusted_it_on_association";R:17670;s:101:"1242:website-activity_logs.curator_activity_log.untrusted.user_untrusted_it_on_an_unknown_association";R:17670;s:90:"1242:website-activity_logs.curator_activity_log.untrusted.user_untrusted_it_on_association";R:17670;s:122:"1242:website-activity_logs.curator_activity_log.show.an_unknown_user_showed_an_older_data_object_on_an_unknown_association";R:17670;s:111:"1242:website-activity_logs.curator_activity_log.show.an_unknown_user_showed_an_older_data_object_on_association";R:17670;s:124:"1242:website-activity_logs.curator_activity_log.show.an_unknown_user_showed_an_unknown_data_object_on_an_unknown_association";R:17670;s:113:"1242:website-activity_logs.curator_activity_log.show.an_unknown_user_showed_an_unknown_data_object_on_association";R:17670;s:113:"1242:website-activity_logs.curator_activity_log.show.an_unknown_user_showed_data_object_on_an_unknown_association";R:17670;s:102:"1242:website-activity_logs.curator_activity_log.show.an_unknown_user_showed_data_object_on_association";R:17670;s:111:"1242:website-activity_logs.curator_activity_log.show.user_showed_an_older_data_object_on_an_unknown_association";R:17670;s:100:"1242:website-activity_logs.curator_activity_log.show.user_showed_an_older_data_object_on_association";R:17670;s:113:"1242:website-activity_logs.curator_activity_log.show.user_showed_an_unknown_data_object_on_an_unknown_association";R:17670;s:102:"1242:website-activity_logs.curator_activity_log.show.user_showed_an_unknown_data_object_on_association";R:17670;s:102:"1242:website-activity_logs.curator_activity_log.show.user_showed_data_object_on_an_unknown_association";R:17670;s:91:"1242:website-activity_logs.curator_activity_log.show.user_showed_data_object_on_association";R:17670;s:104:"1242:website-activity_logs.curator_activity_log.show.an_unknown_user_showed_it_on_an_unknown_association";R:17670;s:93:"1242:website-activity_logs.curator_activity_log.show.an_unknown_user_showed_it_on_association";R:17670;s:93:"1242:website-activity_logs.curator_activity_log.show.user_showed_it_on_an_unknown_association";R:17670;s:82:"1242:website-activity_logs.curator_activity_log.show.user_showed_it_on_association";R:17670;s:119:"1242:website-activity_logs.curator_activity_log.hide.an_unknown_user_hid_an_older_data_object_on_an_unknown_association";R:17670;s:108:"1242:website-activity_logs.curator_activity_log.hide.an_unknown_user_hid_an_older_data_object_on_association";R:17670;s:121:"1242:website-activity_logs.curator_activity_log.hide.an_unknown_user_hid_an_unknown_data_object_on_an_unknown_association";R:17670;s:110:"1242:website-activity_logs.curator_activity_log.hide.an_unknown_user_hid_an_unknown_data_object_on_association";R:17670;s:110:"1242:website-activity_logs.curator_activity_log.hide.an_unknown_user_hid_data_object_on_an_unknown_association";R:17670;s:99:"1242:website-activity_logs.curator_activity_log.hide.an_unknown_user_hid_data_object_on_association";R:17670;s:108:"1242:website-activity_logs.curator_activity_log.hide.user_hid_an_older_data_object_on_an_unknown_association";R:17670;s:97:"1242:website-activity_logs.curator_activity_log.hide.user_hid_an_older_data_object_on_association";R:17670;s:110:"1242:website-activity_logs.curator_activity_log.hide.user_hid_an_unknown_data_object_on_an_unknown_association";R:17670;s:99:"1242:website-activity_logs.curator_activity_log.hide.user_hid_an_unknown_data_object_on_association";R:17670;s:99:"1242:website-activity_logs.curator_activity_log.hide.user_hid_data_object_on_an_unknown_association";R:17670;s:79:"1242:website-activity_logs.curator_activity_log.hide.user_hid_it_on_association";R:17670;s:101:"1242:website-activity_logs.curator_activity_log.hide.an_unknown_user_hid_it_on_an_unknown_association";R:17670;s:90:"1242:website-activity_logs.curator_activity_log.hide.an_unknown_user_hid_it_on_association";R:17670;s:90:"1242:website-activity_logs.curator_activity_log.hide.user_hid_it_on_an_unknown_association";R:17670;s:132:"1242:website-activity_logs.curator_activity_log.unreviewed.an_unknown_user_unreviewed_an_older_data_object_on_an_unknown_association";R:17670;s:121:"1242:website-activity_logs.curator_activity_log.unreviewed.an_unknown_user_unreviewed_an_older_data_object_on_association";R:17670;s:134:"1242:website-activity_logs.curator_activity_log.unreviewed.an_unknown_user_unreviewed_an_unknown_data_object_on_an_unknown_association";R:17670;s:123:"1242:website-activity_logs.curator_activity_log.unreviewed.an_unknown_user_unreviewed_an_unknown_data_object_on_association";R:17670;s:123:"1242:website-activity_logs.curator_activity_log.unreviewed.an_unknown_user_unreviewed_data_object_on_an_unknown_association";R:17670;s:112:"1242:website-activity_logs.curator_activity_log.unreviewed.an_unknown_user_unreviewed_data_object_on_association";R:17670;s:121:"1242:website-activity_logs.curator_activity_log.unreviewed.user_unreviewed_an_older_data_object_on_an_unknown_association";R:17670;s:110:"1242:website-activity_logs.curator_activity_log.unreviewed.user_unreviewed_an_older_data_object_on_association";R:17670;s:123:"1242:website-activity_logs.curator_activity_log.unreviewed.user_unreviewed_an_unknown_data_object_on_an_unknown_association";R:17670;s:112:"1242:website-activity_logs.curator_activity_log.unreviewed.user_unreviewed_an_unknown_data_object_on_association";R:17670;s:112:"1242:website-activity_logs.curator_activity_log.unreviewed.user_unreviewed_data_object_on_an_unknown_association";R:17670;s:101:"1242:website-activity_logs.curator_activity_log.unreviewed.user_unreviewed_data_object_on_association";R:17670;s:114:"1242:website-activity_logs.curator_activity_log.unreviewed.an_unknown_user_unreviewed_it_on_an_unknown_association";R:17670;s:103:"1242:website-activity_logs.curator_activity_log.unreviewed.an_unknown_user_unreviewed_it_on_association";R:17670;s:103:"1242:website-activity_logs.curator_activity_log.unreviewed.user_unreviewed_it_on_an_unknown_association";R:17670;s:92:"1242:website-activity_logs.curator_activity_log.unreviewed.user_unreviewed_it_on_association";R:17670;s:137:"1242:website-activity_logs.curator_activity_log.add_association.an_unknown_user_associated_an_older_data_object_to_an_unknown_association";R:17670;s:126:"1242:website-activity_logs.curator_activity_log.add_association.an_unknown_user_associated_an_older_data_object_to_association";R:17670;s:139:"1242:website-activity_logs.curator_activity_log.add_association.an_unknown_user_associated_an_unknown_data_object_to_an_unknown_association";R:17670;s:128:"1242:website-activity_logs.curator_activity_log.add_association.an_unknown_user_associated_an_unknown_data_object_to_association";R:17670;s:128:"1242:website-activity_logs.curator_activity_log.add_association.an_unknown_user_associated_data_object_to_an_unknown_association";R:17670;s:117:"1242:website-activity_logs.curator_activity_log.add_association.an_unknown_user_associated_data_object_to_association";R:17670;s:126:"1242:website-activity_logs.curator_activity_log.add_association.user_associated_an_older_data_object_to_an_unknown_association";R:17670;s:115:"1242:website-activity_logs.curator_activity_log.add_association.user_associated_an_older_data_object_to_association";R:17670;s:128:"1242:website-activity_logs.curator_activity_log.add_association.user_associated_an_unknown_data_object_to_an_unknown_association";R:17670;s:117:"1242:website-activity_logs.curator_activity_log.add_association.user_associated_an_unknown_data_object_to_association";R:17670;s:117:"1242:website-activity_logs.curator_activity_log.add_association.user_associated_data_object_to_an_unknown_association";R:17670;s:106:"1242:website-activity_logs.curator_activity_log.add_association.user_associated_data_object_to_association";R:17670;s:119:"1242:website-activity_logs.curator_activity_log.add_association.an_unknown_user_associated_it_to_an_unknown_association";R:17670;s:108:"1242:website-activity_logs.curator_activity_log.add_association.an_unknown_user_associated_it_to_association";R:17670;s:108:"1242:website-activity_logs.curator_activity_log.add_association.user_associated_it_to_an_unknown_association";R:17670;s:97:"1242:website-activity_logs.curator_activity_log.add_association.user_associated_it_to_association";R:17670;s:139:"1242:website-activity_logs.curator_activity_log.remove_association.an_unknown_user_disassociated_an_older_data_object_from_an_unknown_taxon";R:17670;s:128:"1242:website-activity_logs.curator_activity_log.remove_association.an_unknown_user_disassociated_an_older_data_object_from_taxon";R:17670;s:141:"1242:website-activity_logs.curator_activity_log.remove_association.an_unknown_user_disassociated_an_unknown_data_object_from_an_unknown_taxon";R:17670;s:130:"1242:website-activity_logs.curator_activity_log.remove_association.an_unknown_user_disassociated_an_unknown_data_object_from_taxon";R:17670;s:130:"1242:website-activity_logs.curator_activity_log.remove_association.an_unknown_user_disassociated_data_object_from_an_unknown_taxon";R:17670;s:119:"1242:website-activity_logs.curator_activity_log.remove_association.an_unknown_user_disassociated_data_object_from_taxon";R:17670;s:128:"1242:website-activity_logs.curator_activity_log.remove_association.user_disassociated_an_older_data_object_from_an_unknown_taxon";R:17670;s:117:"1242:website-activity_logs.curator_activity_log.remove_association.user_disassociated_an_older_data_object_from_taxon";R:17670;s:130:"1242:website-activity_logs.curator_activity_log.remove_association.user_disassociated_an_unknown_data_object_from_an_unknown_taxon";R:17670;s:119:"1242:website-activity_logs.curator_activity_log.remove_association.user_disassociated_an_unknown_data_object_from_taxon";R:17670;s:119:"1242:website-activity_logs.curator_activity_log.remove_association.user_disassociated_data_object_from_an_unknown_taxon";R:17670;s:108:"1242:website-activity_logs.curator_activity_log.remove_association.user_disassociated_data_object_from_taxon";R:17670;s:121:"1242:website-activity_logs.curator_activity_log.remove_association.an_unknown_user_disassociated_it_from_an_unknown_taxon";R:17670;s:110:"1242:website-activity_logs.curator_activity_log.remove_association.an_unknown_user_disassociated_it_from_taxon";R:17670;s:110:"1242:website-activity_logs.curator_activity_log.remove_association.user_disassociated_it_from_an_unknown_taxon";R:17670;s:99:"1242:website-activity_logs.curator_activity_log.remove_association.user_disassociated_it_from_taxon";R:17670;s:135:"1242:website-activity_logs.curator_activity_log.choose_exemplar.an_unknown_user_chose_exemplar_an_older_data_object_on_an_unknown_taxon";R:17670;s:124:"1242:website-activity_logs.curator_activity_log.choose_exemplar.an_unknown_user_chose_exemplar_an_older_data_object_on_taxon";R:17670;s:137:"1242:website-activity_logs.curator_activity_log.choose_exemplar.an_unknown_user_chose_exemplar_an_unknown_data_object_on_an_unknown_taxon";R:17670;s:126:"1242:website-activity_logs.curator_activity_log.choose_exemplar.an_unknown_user_chose_exemplar_an_unknown_data_object_on_taxon";R:17670;s:126:"1242:website-activity_logs.curator_activity_log.choose_exemplar.an_unknown_user_chose_exemplar_data_object_on_an_unknown_taxon";R:17670;s:115:"1242:website-activity_logs.curator_activity_log.choose_exemplar.an_unknown_user_chose_exemplar_data_object_on_taxon";R:17670;s:124:"1242:website-activity_logs.curator_activity_log.choose_exemplar.user_chose_exemplar_an_older_data_object_on_an_unknown_taxon";R:17670;s:113:"1242:website-activity_logs.curator_activity_log.choose_exemplar.user_chose_exemplar_an_older_data_object_on_taxon";R:17670;s:126:"1242:website-activity_logs.curator_activity_log.choose_exemplar.user_chose_exemplar_an_unknown_data_object_on_an_unknown_taxon";R:17670;s:115:"1242:website-activity_logs.curator_activity_log.choose_exemplar.user_chose_exemplar_an_unknown_data_object_on_taxon";R:17670;s:115:"1242:website-activity_logs.curator_activity_log.choose_exemplar.user_chose_exemplar_data_object_on_an_unknown_taxon";R:17670;s:104:"1242:website-activity_logs.curator_activity_log.choose_exemplar.user_chose_exemplar_data_object_on_taxon";R:17670;s:117:"1242:website-activity_logs.curator_activity_log.choose_exemplar.an_unknown_user_chose_exemplar_it_on_an_unknown_taxon";R:17670;s:106:"1242:website-activity_logs.curator_activity_log.choose_exemplar.an_unknown_user_chose_exemplar_it_on_taxon";R:17670;s:106:"1242:website-activity_logs.curator_activity_log.choose_exemplar.user_chose_exemplar_it_on_an_unknown_taxon";R:17670;s:95:"1242:website-activity_logs.curator_activity_log.choose_exemplar.user_chose_exemplar_it_on_taxon";R:17670;s:121:"1242:website-activity_logs.curator_activity_log.add_common_name.an_unknown_user_added_an_unknown_name_to_an_unknown_taxon";R:17670;s:110:"1242:website-activity_logs.curator_activity_log.add_common_name.an_unknown_user_added_an_unknown_name_to_taxon";R:17670;s:110:"1242:website-activity_logs.curator_activity_log.add_common_name.an_unknown_user_added_name_to_an_unknown_taxon";R:17670;s:99:"1242:website-activity_logs.curator_activity_log.add_common_name.an_unknown_user_added_name_to_taxon";R:17670;s:110:"1242:website-activity_logs.curator_activity_log.add_common_name.user_added_an_unknown_name_to_an_unknown_taxon";R:17670;s:99:"1242:website-activity_logs.curator_activity_log.add_common_name.user_added_an_unknown_name_to_taxon";R:17670;s:99:"1242:website-activity_logs.curator_activity_log.add_common_name.user_added_name_to_an_unknown_taxon";R:17670;s:88:"1242:website-activity_logs.curator_activity_log.add_common_name.user_added_name_to_taxon";R:17670;s:107:"1242:website-activity_logs.curator_activity_log.add_common_name.an_unknown_user_added_an_unknown_name_to_it";R:17670;s:96:"1242:website-activity_logs.curator_activity_log.add_common_name.an_unknown_user_added_name_to_it";R:17670;s:96:"1242:website-activity_logs.curator_activity_log.add_common_name.user_added_an_unknown_name_to_it";R:17670;s:85:"1242:website-activity_logs.curator_activity_log.add_common_name.user_added_name_to_it";R:17670;s:117:"1242:website-activity_logs.curator_activity_log.remove_common_name.an_unknown_user_removed_name_from_an_unknown_taxon";R:17670;s:106:"1242:website-activity_logs.curator_activity_log.remove_common_name.an_unknown_user_removed_name_from_taxon";R:17670;s:106:"1242:website-activity_logs.curator_activity_log.remove_common_name.user_removed_name_from_an_unknown_taxon";R:17670;s:95:"1242:website-activity_logs.curator_activity_log.remove_common_name.user_removed_name_from_taxon";R:17670;s:103:"1242:website-activity_logs.curator_activity_log.remove_common_name.an_unknown_user_removed_name_from_it";R:17670;s:92:"1242:website-activity_logs.curator_activity_log.remove_common_name.user_removed_name_from_it";R:17670;s:125:"1242:website-activity_logs.curator_activity_log.trust_common_name.an_unknown_user_trusted_an_unknown_name_on_an_unknown_taxon";R:17670;s:114:"1242:website-activity_logs.curator_activity_log.trust_common_name.an_unknown_user_trusted_an_unknown_name_on_taxon";R:17670;s:114:"1242:website-activity_logs.curator_activity_log.trust_common_name.an_unknown_user_trusted_name_on_an_unknown_taxon";R:17670;s:103:"1242:website-activity_logs.curator_activity_log.trust_common_name.an_unknown_user_trusted_name_on_taxon";R:17670;s:114:"1242:website-activity_logs.curator_activity_log.trust_common_name.user_trusted_an_unknown_name_on_an_unknown_taxon";R:17670;s:103:"1242:website-activity_logs.curator_activity_log.trust_common_name.user_trusted_an_unknown_name_on_taxon";R:17670;s:103:"1242:website-activity_logs.curator_activity_log.trust_common_name.user_trusted_name_on_an_unknown_taxon";R:17670;s:92:"1242:website-activity_logs.curator_activity_log.trust_common_name.user_trusted_name_on_taxon";R:17670;s:111:"1242:website-activity_logs.curator_activity_log.trust_common_name.an_unknown_user_trusted_an_unknown_name_on_it";R:17670;s:100:"1242:website-activity_logs.curator_activity_log.trust_common_name.an_unknown_user_trusted_name_on_it";R:17670;s:100:"1242:website-activity_logs.curator_activity_log.trust_common_name.user_trusted_an_unknown_name_on_it";R:17670;s:89:"1242:website-activity_logs.curator_activity_log.trust_common_name.user_trusted_name_on_it";R:17670;s:129:"1242:website-activity_logs.curator_activity_log.untrust_common_name.an_unknown_user_untrusted_an_unknown_name_on_an_unknown_taxon";R:17670;s:118:"1242:website-activity_logs.curator_activity_log.untrust_common_name.an_unknown_user_untrusted_an_unknown_name_on_taxon";R:17670;s:118:"1242:website-activity_logs.curator_activity_log.untrust_common_name.an_unknown_user_untrusted_name_on_an_unknown_taxon";R:17670;s:107:"1242:website-activity_logs.curator_activity_log.untrust_common_name.an_unknown_user_untrusted_name_on_taxon";R:17670;s:118:"1242:website-activity_logs.curator_activity_log.untrust_common_name.user_untrusted_an_unknown_name_on_an_unknown_taxon";R:17670;s:107:"1242:website-activity_logs.curator_activity_log.untrust_common_name.user_untrusted_an_unknown_name_on_taxon";R:17670;s:107:"1242:website-activity_logs.curator_activity_log.untrust_common_name.user_untrusted_name_on_an_unknown_taxon";R:17670;s:96:"1242:website-activity_logs.curator_activity_log.untrust_common_name.user_untrusted_name_on_taxon";R:17670;s:115:"1242:website-activity_logs.curator_activity_log.untrust_common_name.an_unknown_user_untrusted_an_unknown_name_on_it";R:17670;s:104:"1242:website-activity_logs.curator_activity_log.untrust_common_name.an_unknown_user_untrusted_name_on_it";R:17670;s:104:"1242:website-activity_logs.curator_activity_log.untrust_common_name.user_untrusted_an_unknown_name_on_it";R:17670;s:93:"1242:website-activity_logs.curator_activity_log.untrust_common_name.user_untrusted_name_on_it";R:17670;s:131:"1242:website-activity_logs.curator_activity_log.unreview_common_name.an_unknown_user_unreviewed_an_unknown_name_on_an_unknown_taxon";R:17670;s:120:"1242:website-activity_logs.curator_activity_log.unreview_common_name.an_unknown_user_unreviewed_an_unknown_name_on_taxon";R:17670;s:120:"1242:website-activity_logs.curator_activity_log.unreview_common_name.an_unknown_user_unreviewed_name_on_an_unknown_taxon";R:17670;s:109:"1242:website-activity_logs.curator_activity_log.unreview_common_name.an_unknown_user_unreviewed_name_on_taxon";R:17670;s:120:"1242:website-activity_logs.curator_activity_log.unreview_common_name.user_unreviewed_an_unknown_name_on_an_unknown_taxon";R:17670;s:109:"1242:website-activity_logs.curator_activity_log.unreview_common_name.user_unreviewed_an_unknown_name_on_taxon";R:17670;s:109:"1242:website-activity_logs.curator_activity_log.unreview_common_name.user_unreviewed_name_on_an_unknown_taxon";R:17670;s:98:"1242:website-activity_logs.curator_activity_log.unreview_common_name.user_unreviewed_name_on_taxon";R:17670;s:117:"1242:website-activity_logs.curator_activity_log.unreview_common_name.an_unknown_user_unreviewed_an_unknown_name_on_it";R:17670;s:106:"1242:website-activity_logs.curator_activity_log.unreview_common_name.an_unknown_user_unreviewed_name_on_it";R:17670;s:106:"1242:website-activity_logs.curator_activity_log.unreview_common_name.user_unreviewed_an_unknown_name_on_it";R:17670;s:95:"1242:website-activity_logs.curator_activity_log.unreview_common_name.user_unreviewed_name_on_it";R:17670;s:31:"1242:website-activity_log_empty";a:2:{i:0;R:3;i:1;R:17670;}s:47:"1242:website-activity_log_empty_learn_more_link";a:2:{i:0;R:3;i:1;R:17670;}s:39:"1242:website-activity_user_created_text";a:2:{i:0;R:3;i:1;R:17670;}s:39:"1242:website-activity_user_updated_text";a:2:{i:0;R:3;i:1;R:17670;}s:44:"1242:website-add_a_collection_to_a_community";a:2:{i:0;R:3;i:1;R:17670;}s:26:"1242:website-add_a_comment";a:2:{i:0;R:3;i:1;R:17670;}s:32:"1242:website-add_a_comment_colon";a:2:{i:0;R:3;i:1;R:17670;}s:16:"1242:website-add";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-add_a_new_common_name";a:2:{i:0;R:3;i:1;R:17670;}s:36:"1242:website-add_a_new_file_brackets";a:2:{i:0;R:3;i:1;R:17670;}s:32:"1242:website-add_a_new_news_item";a:2:{i:0;R:3;i:1;R:17670;}s:27:"1242:website-add_a_new_role";a:2:{i:0;R:3;i:1;R:17670;}s:40:"1242:website-add_a_new_search_suggestion";a:2:{i:0;R:3;i:1;R:17670;}s:27:"1242:website-add_a_new_term";a:2:{i:0;R:3;i:1;R:17670;}s:33:"1242:website-add_a_new_topic_area";a:2:{i:0;R:3;i:1;R:17670;}s:27:"1242:website-add_a_new_user";a:2:{i:0;R:3;i:1;R:17670;}s:42:"1242:website-add_a_taxon_association_label";a:2:{i:0;R:3;i:1;R:17670;}s:44:"1242:website-add_article_to_page_link_button";a:2:{i:0;R:3;i:1;R:17670;}s:42:"1242:website-add_association_submit_button";a:2:{i:0;R:3;i:1;R:17670;}s:50:"1242:website-add_brief_summary_to_page_link_button";a:2:{i:0;R:3;i:1;R:17670;}s:46:"1242:website-add_collection_to_a_new_community";a:2:{i:0;R:3;i:1;R:17670;}s:40:"1242:website-add_collection_to_community";a:2:{i:0;R:3;i:1;R:17670;}s:56:"1242:website-add_education_resources_to_page_link_button";a:2:{i:0;R:3;i:1;R:17670;}s:61:"1242:website-add_identification_resources_to_page_link_button";a:2:{i:0;R:3;i:1;R:17670;}s:39:"1242:website-add_item_to_new_collection";a:2:{i:0;R:3;i:1;R:17670;}s:25:"1242:website-add_language";a:2:{i:0;R:3;i:1;R:17670;}s:37:"1242:website-add_new_association_link";a:2:{i:0;R:3;i:1;R:17670;}s:35:"1242:website-add_new_tag_suggestion";a:2:{i:0;R:3;i:1;R:17670;}s:21:"1242:website-add_page";a:2:{i:0;R:3;i:1;R:17670;}s:28:"1242:website-add_sub_chapter";a:2:{i:0;R:3;i:1;R:17670;}s:31:"1242:website-add_to_a_community";a:2:{i:0;R:3;i:1;R:17670;}s:40:"1242:website-add_to_my_collection_button";a:2:{i:0;R:3;i:1;R:17670;}s:18:"1242:website-admin";a:2:{i:0;R:3;i:1;R:17670;}s:38:"1242:website-admin_content_page_active";a:2:{i:0;R:3;i:1;R:17670;}s:42:"1242:website-admin_content_page_not_active";a:2:{i:0;R:3;i:1;R:17670;}s:46:"1242:website-admin_content_page_child_new_link";a:2:{i:0;R:3;i:1;R:17670;}s:56:"1242:website-admin_content_page_create_successful_notice";a:2:{i:0;R:3;i:1;R:17670;}s:57:"1242:website-admin_content_page_create_unsuccessful_error";a:2:{i:0;R:3;i:1;R:17670;}s:51:"1242:website-admin_content_page_delete_confirmation";a:2:{i:0;R:3;i:1;R:17670;}s:56:"1242:website-admin_content_page_delete_successful_notice";a:2:{i:0;R:3;i:1;R:17670;}s:43:"1242:website-admin_content_page_edit_header";a:2:{i:0;R:3;i:1;R:17670;}s:40:"1242:website-admin_content_page_edit_tip";a:2:{i:0;R:3;i:1;R:17670;}s:42:"1242:website-admin_content_page_new_header";a:2:{i:0;R:3;i:1;R:17670;}s:40:"1242:website-admin_content_page_new_link";a:2:{i:0;R:3;i:1;R:17670;}s:39:"1242:website-admin_content_page_new_tip";a:2:{i:0;R:3;i:1;R:17670;}s:50:"1242:website-admin_content_page_parent_option_root";a:2:{i:0;R:3;i:1;R:17670;}s:36:"1242:website-admin_content_page_root";a:2:{i:0;R:3;i:1;R:17670;}s:50:"1242:website-admin_content_page_sort_order_updated";a:2:{i:0;R:3;i:1;R:17670;}s:56:"1242:website-admin_content_page_update_successful_notice";a:2:{i:0;R:3;i:1;R:17670;}s:57:"1242:website-admin_content_page_update_unsuccessful_error";a:2:{i:0;R:3;i:1;R:17670;}s:38:"1242:website-admin_content_pages_empty";a:2:{i:0;R:3;i:1;R:17670;}s:50:"1242:website-admin_content_pages_index_information";a:2:{i:0;R:3;i:1;R:17670;}s:37:"1242:website-admin_content_pages_link";a:2:{i:0;R:3;i:1;R:17670;}s:43:"1242:website-admin_content_pages_page_title";a:2:{i:0;R:3;i:1;R:17670;}s:48:"1242:website-admin_content_partners_index_header";a:2:{i:0;R:3;i:1;R:17670;}s:40:"1242:website-admin_content_partners_link";a:2:{i:0;R:3;i:1;R:17670;}s:46:"1242:website-admin_content_partners_page_title";a:2:{i:0;R:3;i:1;R:17670;}s:54:"1242:website-admin_content_partners_notifications_link";a:2:{i:0;R:3;i:1;R:17670;}s:60:"1242:website-admin_content_partners_notifications_page_title";a:2:{i:0;R:3;i:1;R:17670;}s:75:"1242:website-admin_content_partners_notifications_sent_to_recipients_header";a:2:{i:0;R:3;i:1;R:17670;}s:76:"1242:website-admin_content_partners_notifications_statistics_reminder_header";a:2:{i:0;R:3;i:1;R:17670;}s:81:"1242:website-admin_content_partners_notifications_statistics_reminder_description";a:2:{i:0;R:3;i:1;R:17670;}s:81:"1242:website-admin_content_partners_notifications_statistics_reminder_send_submit";a:2:{i:0;R:3;i:1;R:17670;}s:87:"1242:website-admin_content_partners_notifications_statistics_reminder_send_confirmation";a:2:{i:0;R:3;i:1;R:17670;}s:62:"1242:website-admin_content_partners_statistics_date_from_label";a:2:{i:0;R:3;i:1;R:17670;}s:60:"1242:website-admin_content_partners_statistics_date_to_label";a:2:{i:0;R:3;i:1;R:17670;}s:69:"1242:website-admin_content_partners_statistics_first_published_header";a:2:{i:0;R:3;i:1;R:17670;}s:70:"1242:website-admin_content_partners_statistics_first_published_caption";a:2:{i:0;R:3;i:1;R:17670;}s:68:"1242:website-admin_content_partners_statistics_first_published_empty";a:2:{i:0;R:3;i:1;R:17670;}s:82:"1242:website-admin_content_partners_statistics_first_published_download_csv_submit";a:2:{i:0;R:3;i:1;R:17670;}s:51:"1242:website-admin_content_partners_statistics_link";a:2:{i:0;R:3;i:1;R:17670;}s:57:"1242:website-admin_content_partners_statistics_page_title";a:2:{i:0;R:3;i:1;R:17670;}s:23:"1242:website-admin_home";a:2:{i:0;R:3;i:1;R:17670;}s:44:"1242:website-admin_notes_not_visible_to_user";a:2:{i:0;R:3;i:1;R:17670;}s:30:"1242:website-admin_information";a:2:{i:0;R:3;i:1;R:17670;}s:23:"1242:website-admin_link";a:2:{i:0;R:3;i:1;R:17670;}s:29:"1242:website-admin_page_title";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-admin_statistics_link";a:2:{i:0;R:3;i:1;R:17670;}s:67:"1242:website-admin_translated_content_page_create_successful_notice";a:2:{i:0;R:3;i:1;R:17670;}s:68:"1242:website-admin_translated_content_page_create_unsuccessful_error";a:2:{i:0;R:3;i:1;R:17670;}s:62:"1242:website-admin_translated_content_page_delete_confirmation";a:2:{i:0;R:3;i:1;R:17670;}s:67:"1242:website-admin_translated_content_page_delete_successful_notice";a:2:{i:0;R:3;i:1;R:17670;}s:57:"1242:website-admin_translated_content_page_edit_subheader";a:2:{i:0;R:3;i:1;R:17670;}s:51:"1242:website-admin_translated_content_page_edit_tip";a:2:{i:0;R:3;i:1;R:17670;}s:53:"1242:website-admin_translated_content_page_new_header";a:2:{i:0;R:3;i:1;R:17670;}s:50:"1242:website-admin_translated_content_page_new_tip";a:2:{i:0;R:3;i:1;R:17670;}s:51:"1242:website-admin_translated_content_page_new_link";a:2:{i:0;R:3;i:1;R:17670;}s:56:"1242:website-admin_translated_content_page_new_subheader";a:2:{i:0;R:3;i:1;R:17670;}s:67:"1242:website-admin_translated_content_page_update_successful_notice";a:2:{i:0;R:3;i:1;R:17670;}s:68:"1242:website-admin_translated_content_page_update_unsuccessful_error";a:2:{i:0;R:3;i:1;R:17670;}s:18:"1242:website-agent";a:2:{i:0;R:3;i:1;R:17670;}s:16:"1242:website-all";a:2:{i:0;R:3;i:1;R:17670;}s:55:"1242:website-all_apis_return_by_default_an_xml_response";a:2:{i:0;R:3;i:1;R:17670;}s:25:"1242:website-all_articles";a:2:{i:0;R:3;i:1;R:17670;}s:24:"1242:website-all_changes";a:2:{i:0;R:3;i:1;R:17670;}s:28:"1242:website-all_collections";a:2:{i:0;R:3;i:1;R:17670;}s:42:"1242:website-all_comments_entered_by_users";a:2:{i:0;R:3;i:1;R:17670;}s:28:"1242:website-all_communities";a:2:{i:0;R:3;i:1;R:17670;}s:22:"1242:website-all_count";a:2:{i:0;R:3;i:1;R:17670;}s:23:"1242:website-all_errors";a:2:{i:0;R:3;i:1;R:17670;}s:23:"1242:website-all_filter";a:2:{i:0;R:3;i:1;R:17670;}s:32:"1242:website-all_harvesting_logs";a:2:{i:0;R:3;i:1;R:17670;}s:23:"1242:website-all_images";a:2:{i:0;R:3;i:1;R:17670;}s:28:"1242:website-all_information";a:2:{i:0;R:3;i:1;R:17670;}s:22:"1242:website-all_items";a:2:{i:0;R:3;i:1;R:17670;}s:21:"1242:website-all_news";a:2:{i:0;R:3;i:1;R:17670;}s:22:"1242:website-all_pages";a:2:{i:0;R:3;i:1;R:17670;}s:23:"1242:website-all_people";a:2:{i:0;R:3;i:1;R:17670;}s:23:"1242:website-all_sounds";a:2:{i:0;R:3;i:1;R:17670;}s:24:"1242:website-all_sources";a:2:{i:0;R:3;i:1;R:17670;}s:21:"1242:website-all_taxa";a:2:{i:0;R:3;i:1;R:17670;}s:22:"1242:website-all_title";a:2:{i:0;R:3;i:1;R:17670;}s:52:"1242:website-all_user_submitted_texts_on_the_website";a:2:{i:0;R:3;i:1;R:17670;}s:23:"1242:website-all_videos";a:2:{i:0;R:3;i:1;R:17670;}s:30:"1242:website-allow_user_logins";a:2:{i:0;R:3;i:1;R:17670;}s:38:"1242:website-already_a_member_question";a:2:{i:0;R:3;i:1;R:17670;}s:40:"1242:website-already_member_of_community";a:2:{i:0;R:3;i:1;R:17670;}s:37:"1242:website-alternate_classification";a:2:{i:0;R:3;i:1;R:17670;}s:19:"1242:website-amount";a:2:{i:0;R:3;i:1;R:17670;}s:28:"1242:website-an_unknown_user";a:2:{i:0;R:3;i:1;R:17670;}s:37:"1242:website-anonymous_user_full_name";a:2:{i:0;R:3;i:1;R:17670;}s:38:"1242:website-anonymous_user_given_name";a:2:{i:0;R:3;i:1;R:17670;}s:36:"1242:website-anonymous_user_tag_line";a:2:{i:0;R:3;i:1;R:17670;}s:16:"1242:website-and";a:2:{i:0;R:3;i:1;R:17670;}s:35:"1242:website-and_between_form_items";a:2:{i:0;R:3;i:1;R:17670;}s:49:"1242:website-jsonp_by_adding_a_callback_parameter";a:2:{i:0;R:3;i:1;R:17670;}s:24:"1242:website-any_integer";a:2:{i:0;R:3;i:1;R:17670;}s:45:"1242:website-api_docs_collections_description";a:2:{i:0;R:3;i:1;R:17670;}s:46:"1242:website-a_pipe_delimited_list_of_licenses";a:2:{i:0;R:3;i:1;R:17670;}s:65:"1242:website-a_pipe_delimited_list_of_spm_info_item_subject_names";a:2:{i:0;R:3;i:1;R:17670;}s:53:"1242:website-application_version_advisory_information";a:2:{i:0;R:3;i:1;R:17670;}s:25:"1242:website-are_you_sure";a:2:{i:0;R:3;i:1;R:17670;}s:54:"1242:website-are_you_sure_this_action_cannot_be_undone";a:2:{i:0;R:3;i:1;R:17670;}s:37:"1242:website-admin_login_confirmation";a:2:{i:0;R:3;i:1;R:17670;}s:25:"1242:website-article_from";a:2:{i:0;R:3;i:1;R:17670;}s:31:"1242:website-article_more_about";a:2:{i:0;R:3;i:1;R:17670;}s:32:"1242:website-articles_with_count";a:2:{i:0;R:3;i:1;R:17670;}s:45:"1242:website-articles_in_languages_with_count";a:2:{i:0;R:3;i:1;R:17670;}s:51:"1242:website-articles_in_other_languages_with_count";a:2:{i:0;R:3;i:1;R:17670;}s:50:"1242:website-as_of_time_there_were_unique_visitors";a:2:{i:0;R:3;i:1;R:17670;}s:65:"1242:website-a_total_of_comment_were_found_matching_your_criteria";a:2:{i:0;R:3;i:1;R:17670;}s:63:"1242:website-a_total_of_items_were_found_matching_your_criteria";a:2:{i:0;R:3;i:1;R:17670;}s:54:"1242:website-a_total_of_terms_were_found_matching_your";a:2:{i:0;R:3;i:1;R:17670;}s:38:"1242:website-assistive_overview_header";a:2:{i:0;R:3;i:1;R:17670;}s:35:"1242:website-assistive_media_header";a:2:{i:0;R:3;i:1;R:17670;}s:37:"1242:website-assistive_details_header";a:2:{i:0;R:3;i:1;R:17670;}s:40:"1242:website-assistive_literature_header";a:2:{i:0;R:3;i:1;R:17670;}s:42:"1242:website-assistive_names_common_header";a:2:{i:0;R:3;i:1;R:17670;}s:43:"1242:website-assistive_names_related_header";a:2:{i:0;R:3;i:1;R:17670;}s:44:"1242:website-assistive_names_synonyms_header";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-assistive_maps_header";a:2:{i:0;R:3;i:1;R:17670;}s:45:"1242:website-assistive_taxon_community_header";a:2:{i:0;R:3;i:1;R:17670;}s:37:"1242:website-assistive_updates_header";a:2:{i:0;R:3;i:1;R:17670;}s:48:"1242:website-assistive_updates_statistics_header";a:2:{i:0;R:3;i:1;R:17670;}s:37:"1242:website-associated_submit_button";a:2:{i:0;R:3;i:1;R:17670;}s:35:"1242:website-associated_with_header";a:2:{i:0;R:3;i:1;R:17670;}s:43:"1242:website-associated_with_article_header";a:2:{i:0;R:3;i:1;R:17670;}s:41:"1242:website-associated_with_image_header";a:2:{i:0;R:3;i:1;R:17670;}s:45:"1242:website-associated_with_image_map_header";a:2:{i:0;R:3;i:1;R:17670;}s:39:"1242:website-associated_with_map_header";a:2:{i:0;R:3;i:1;R:17670;}s:41:"1242:website-associated_with_sound_header";a:2:{i:0;R:3;i:1;R:17670;}s:41:"1242:website-associated_with_video_header";a:2:{i:0;R:3;i:1;R:17670;}s:35:"1242:website-associations_more_link";a:2:{i:0;R:3;i:1;R:17670;}s:20:"1242:website-a_taxon";a:2:{i:0;R:3;i:1;R:17670;}s:22:"1242:website-attribute";a:2:{i:0;R:3;i:1;R:17670;}s:41:"1242:website-audio_current_time_assistive";a:2:{i:0;R:3;i:1;R:17670;}s:37:"1242:website-audio_duration_assistive";a:2:{i:0;R:3;i:1;R:17670;}s:23:"1242:website-audio_play";a:2:{i:0;R:3;i:1;R:17670;}s:33:"1242:website-audio_play_assistive";a:2:{i:0;R:3;i:1;R:17670;}s:24:"1242:website-audio_pause";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-audio_pause_assistive";a:2:{i:0;R:3;i:1;R:17670;}s:23:"1242:website-audio_stop";a:2:{i:0;R:3;i:1;R:17670;}s:33:"1242:website-audio_stop_assistive";a:2:{i:0;R:3;i:1;R:17670;}s:23:"1242:website-audio_mute";a:2:{i:0;R:3;i:1;R:17670;}s:25:"1242:website-audio_unmute";a:2:{i:0;R:3;i:1;R:17670;}s:38:"1242:website-authoritative_information";a:2:{i:0;R:3;i:1;R:17670;}s:66:"1242:website-author_of_peer_reviewed_publication_credential_option";a:2:{i:0;R:3;i:1;R:17670;}s:22:"1242:website-available";a:2:{i:0;R:3;i:1;R:17670;}s:42:"1242:website-average_rating_value_of_total";a:2:{i:0;R:3;i:1;R:17670;}s:17:"1242:website-back";a:2:{i:0;R:3;i:1;R:17670;}s:28:"1242:website-back_to_profile";a:2:{i:0;R:3;i:1;R:17670;}s:18:"1242:website-began";a:2:{i:0;R:3;i:1;R:17670;}s:41:"1242:website-belongs_in_count_communities";a:2:{i:0;R:3;i:1;R:17670;}s:28:"1242:website-bhl_publication";a:2:{i:0;R:3;i:1;R:17670;}s:23:"1242:website-bi_monthly";a:2:{i:0;R:3;i:1;R:17670;}s:42:"1242:website-biodiversity_heritage_library";a:2:{i:0;R:3;i:1;R:17670;}s:29:"1242:website-biomedical_terms";a:2:{i:0;R:3;i:1;R:17670;}s:42:"1242:website-biomedical_terms_introduction";a:2:{i:0;R:3;i:1;R:17670;}s:41:"1242:website-biomedical_terms_provided_by";a:2:{i:0;R:3;i:1;R:17670;}s:48:"1242:website-biomedical_terms_clouds_provided_by";a:2:{i:0;R:3;i:1;R:17670;}s:17:"1242:website-body";a:2:{i:0;R:3;i:1;R:17670;}s:22:"1242:website-browsable";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-browsable_hierarchies";a:2:{i:0;R:3;i:1;R:17670;}s:29:"1242:website-browse_hierarchy";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-browsing_branch_colon";a:2:{i:0;R:3;i:1;R:17670;}s:30:"1242:website-build_communities";a:2:{i:0;R:3;i:1;R:17670;}s:15:"1242:website-by";a:2:{i:0;R:3;i:1;R:17670;}s:20:"1242:website-by_caps";a:2:{i:0;R:3;i:1;R:17670;}s:44:"1242:website-by_scientific_name_table_header";a:2:{i:0;R:3;i:1;R:17670;}s:24:"1242:website-cache_store";a:2:{i:0;R:3;i:1;R:17670;}s:36:"1242:website-calculate_averages_slow";a:2:{i:0;R:3;i:1;R:17670;}s:19:"1242:website-cancel";a:2:{i:0;R:3;i:1;R:17670;}s:66:"1242:website-cannot_be_associated_with_both_a_user_and_a_community";a:2:{i:0;R:3;i:1;R:17670;}s:28:"1242:website-cannot_be_empty";a:2:{i:0;R:3;i:1;R:17670;}s:59:"1242:website-cannot_create_collection_item_from_class_error";a:2:{i:0;R:3;i:1;R:17670;}s:64:"1242:website-cannot_create_community_from_watch_collection_error";a:2:{i:0;R:3;i:1;R:17670;}s:54:"1242:website-cannot_curate_association_in_preview_mode";a:2:{i:0;R:3;i:1;R:17670;}s:35:"1242:website-cannot_expand_children";a:2:{i:0;R:3;i:1;R:17670;}s:31:"1242:website-cannot_find_member";a:2:{i:0;R:3;i:1;R:17670;}s:52:"1242:website-cannot_index_collection_item_type_error";a:2:{i:0;R:3;i:1;R:17670;}s:19:"1242:website-change";a:2:{i:0;R:3;i:1;R:17670;}s:36:"1242:website-change_rating_to_1_of_5";a:2:{i:0;R:3;i:1;R:17670;}s:36:"1242:website-change_rating_to_2_of_5";a:2:{i:0;R:3;i:1;R:17670;}s:36:"1242:website-change_rating_to_3_of_5";a:2:{i:0;R:3;i:1;R:17670;}s:36:"1242:website-change_rating_to_4_of_5";a:2:{i:0;R:3;i:1;R:17670;}s:36:"1242:website-change_rating_to_5_of_5";a:2:{i:0;R:3;i:1;R:17670;}s:37:"1242:website-choose_collection_header";a:2:{i:0;R:3;i:1;R:17670;}s:24:"1242:website-citing_link";a:2:{i:0;R:3;i:1;R:17670;}s:39:"1242:website-classification_tree_header";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-classifications_empty";a:2:{i:0;R:3;i:1;R:17670;}s:54:"1242:website-classifications_summary_header_with_count";a:2:{i:0;R:3;i:1;R:17670;}s:40:"1242:website-clear_all_non_species_pages";a:2:{i:0;R:3;i:1;R:17670;}s:37:"1242:website-clear_entire_cache_store";a:2:{i:0;R:3;i:1;R:17670;}s:31:"1242:website-clear_species_page";a:2:{i:0;R:3;i:1;R:17670;}s:37:"1242:website-curator_admin_index_help";a:2:{i:0;R:3;i:1;R:17670;}s:26:"1242:website-curator_level";a:2:{i:0;R:3;i:1;R:17670;}s:65:"1242:website-curator_level_with_indefinite_article_master_curator";a:2:{i:0;R:3;i:1;R:17670;}s:63:"1242:website-curator_level_with_indefinite_article_full_curator";a:2:{i:0;R:3;i:1;R:17670;}s:68:"1242:website-curator_level_with_indefinite_article_assistant_curator";a:2:{i:0;R:3;i:1;R:17670;}s:18:"1242:website-click";a:2:{i:0;R:3;i:1;R:17670;}s:25:"1242:website-clicked_time";a:2:{i:0;R:3;i:1;R:17670;}s:43:"1242:website-click_on_an_activity_to_see_th";a:2:{i:0;R:3;i:1;R:17670;}s:67:"1242:website-click_on_a_username_to_view_the_users_detailed_profile";a:2:{i:0;R:3;i:1;R:17670;}s:63:"1242:website-click_on_a_user_to_view_the_users_detailed_profile";a:2:{i:0;R:3;i:1;R:17670;}s:55:"1242:website-close_this_window_to_return_to_edit_window";a:2:{i:0;R:3;i:1;R:17670;}s:25:"1242:website-collect_item";a:2:{i:0;R:3;i:1;R:17670;}s:26:"1242:website-collect_items";a:2:{i:0;R:3;i:1;R:17670;}s:49:"1242:website-collection_created_with_count_notice";a:2:{i:0;R:3;i:1;R:17670;}s:35:"1242:website-collection_delete_link";a:2:{i:0;R:3;i:1;R:17670;}s:43:"1242:website-collection_description_default";a:2:{i:0;R:3;i:1;R:17670;}s:33:"1242:website-collection_destroyed";a:2:{i:0;R:3;i:1;R:17670;}s:29:"1242:website-collection_image";a:2:{i:0;R:3;i:1;R:17670;}s:32:"1242:website-collection_is_empty";a:2:{i:0;R:3;i:1;R:17670;}s:44:"1242:website-collection_item_edit_page_title";a:2:{i:0;R:3;i:1;R:17670;}s:44:"1242:website-collection_item_not_found_error";a:2:{i:0;R:3;i:1;R:17670;}s:68:"1242:website-collection_item_edit_by_javascript_not_authorized_error";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-collection_name_label";a:2:{i:0;R:3;i:1;R:17670;}s:32:"1242:website-collection_newsfeed";a:2:{i:0;R:3;i:1;R:17670;}s:41:"1242:website-collection_not_created_error";a:2:{i:0;R:3;i:1;R:17670;}s:43:"1242:website-collection_not_destroyed_error";a:2:{i:0;R:3;i:1;R:17670;}s:39:"1242:website-collection_not_found_error";a:2:{i:0;R:3;i:1;R:17670;}s:38:"1242:website-collection_created_notice";a:2:{i:0;R:3;i:1;R:17670;}s:38:"1242:website-collection_updated_notice";a:2:{i:0;R:3;i:1;R:17670;}s:44:"1242:website-collection_was_removed_by_owner";a:2:{i:0;R:3;i:1;R:17670;}s:41:"1242:website-collection_not_updated_error";a:2:{i:0;R:3;i:1;R:17670;}s:46:"1242:website-collection_was_added_to_community";a:2:{i:0;R:3;i:1;R:17670;}s:53:"1242:website-community_can_now_manage_this_collection";a:2:{i:0;R:3;i:1;R:17670;}s:31:"1242:website-collections_filter";a:2:{i:0;R:3;i:1;R:17670;}s:29:"1242:website-collections_link";a:2:{i:0;R:3;i:1;R:17670;}s:35:"1242:website-collections_page_title";a:2:{i:0;R:3;i:1;R:17670;}s:38:"1242:website-collections_summary_empty";a:2:{i:0;R:3;i:1;R:17670;}s:50:"1242:website-collections_summary_header_with_count";a:2:{i:0;R:3;i:1;R:17670;}s:35:"1242:website-collections_with_count";a:2:{i:0;R:3;i:1;R:17670;}s:20:"1242:website-comment";a:2:{i:0;R:3;i:1;R:17670;}s:33:"1242:website-comment_added_notice";a:2:{i:0;R:3;i:1;R:17670;}s:31:"1242:website-comment_body_label";a:2:{i:0;R:3;i:1;R:17670;}s:31:"1242:website-comment_created_at";a:2:{i:0;R:3;i:1;R:17670;}s:35:"1242:website-comment_delete_confirm";a:2:{i:0;R:3;i:1;R:17670;}s:60:"1242:website-comment_edit_by_javascript_not_authorized_error";a:2:{i:0;R:3;i:1;R:17670;}s:36:"1242:website-comment_not_added_error";a:2:{i:0;R:3;i:1;R:17670;}s:38:"1242:website-comment_not_deleted_error";a:2:{i:0;R:3;i:1;R:17670;}s:38:"1242:website-comment_not_updated_error";a:2:{i:0;R:3;i:1;R:17670;}s:36:"1242:website-commented_on_your_image";a:2:{i:0;R:3;i:1;R:17670;}s:30:"1242:website-comment_new_title";a:2:{i:0;R:3;i:1;R:17670;}s:42:"1242:website-comment_new_posters_image_alt";a:2:{i:0;R:3;i:1;R:17670;}s:52:"1242:website-comment_new_posters_image_advisory_info";a:2:{i:0;R:3;i:1;R:17670;}s:43:"1242:website-comment_show_posters_image_alt";a:2:{i:0;R:3;i:1;R:17670;}s:30:"1242:website-comments_and_tags";a:2:{i:0;R:3;i:1;R:17670;}s:21:"1242:website-comments";a:2:{i:0;R:3;i:1;R:17670;}s:28:"1242:website-comments_filter";a:2:{i:0;R:3;i:1;R:17670;}s:31:"1242:website-comments_moderated";a:2:{i:0;R:3;i:1;R:17670;}s:24:"1242:website-comments_on";a:2:{i:0;R:3;i:1;R:17670;}s:32:"1242:website-comments_with_count";a:2:{i:0;R:3;i:1;R:17670;}s:43:"1242:website-common_activities_by_logged_in";a:2:{i:0;R:3;i:1;R:17670;}s:28:"1242:website-common_name_avg";a:2:{i:0;R:3;i:1;R:17670;}s:24:"1242:website-common_name";a:2:{i:0;R:3;i:1;R:17670;}s:31:"1242:website-common_name_exists";a:2:{i:0;R:3;i:1;R:17670;}s:36:"1242:website-common_names_with_count";a:2:{i:0;R:3;i:1;R:17670;}s:44:"1242:website-common_user_activity_page_title";a:2:{i:0;R:3;i:1;R:17670;}s:35:"1242:website-communities_with_count";a:2:{i:0;R:3;i:1;R:17670;}s:31:"1242:website-communities_filter";a:2:{i:0;R:3;i:1;R:17670;}s:29:"1242:website-communities_link";a:2:{i:0;R:3;i:1;R:17670;}s:35:"1242:website-communities_page_title";a:2:{i:0;R:3;i:1;R:17670;}s:36:"1242:website-communities_index_empty";a:2:{i:0;R:3;i:1;R:17670;}s:37:"1242:website-communities_index_header";a:2:{i:0;R:3;i:1;R:17670;}s:54:"1242:website-communities_that_can_edit_this_collection";a:2:{i:0;R:3;i:1;R:17670;}s:22:"1242:website-community";a:2:{i:0;R:3;i:1;R:17670;}s:31:"1242:website-community_activity";a:2:{i:0;R:3;i:1;R:17670;}s:47:"1242:website-community_contributions_with_count";a:2:{i:0;R:3;i:1;R:17670;}s:32:"1242:website-community_destroyed";a:2:{i:0;R:3;i:1;R:17670;}s:42:"1242:website-community_description_default";a:2:{i:0;R:3;i:1;R:17670;}s:35:"1242:website-community_empty_notice";a:2:{i:0;R:3;i:1;R:17670;}s:28:"1242:website-community_focus";a:2:{i:0;R:3;i:1;R:17670;}s:45:"1242:website-community_focus_items_with_count";a:2:{i:0;R:3;i:1;R:17670;}s:41:"1242:website-community_invitation_comment";a:2:{i:0;R:3;i:1;R:17670;}s:36:"1242:website-community_logo_alt_text";a:2:{i:0;R:3;i:1;R:17670;}s:42:"1242:website-community_managers_with_count";a:2:{i:0;R:3;i:1;R:17670;}s:30:"1242:website-community_members";a:2:{i:0;R:3;i:1;R:17670;}s:41:"1242:website-community_members_with_count";a:2:{i:0;R:3;i:1;R:17670;}s:33:"1242:website-community_name_label";a:2:{i:0;R:3;i:1;R:17670;}s:31:"1242:website-community_newsfeed";a:2:{i:0;R:3;i:1;R:17670;}s:65:"1242:website-community_no_longer_has_manager_access_to_collection";a:2:{i:0;R:3;i:1;R:17670;}s:42:"1242:website-community_not_destroyed_error";a:2:{i:0;R:3;i:1;R:17670;}s:45:"1242:website-community_tab_collections_header";a:2:{i:0;R:3;i:1;R:17670;}s:50:"1242:website-community_tab_collections_description";a:2:{i:0;R:3;i:1;R:17670;}s:50:"1242:website-community_tab_communities_description";a:2:{i:0;R:3;i:1;R:17670;}s:47:"1242:website-community_tab_curators_description";a:2:{i:0;R:3;i:1;R:17670;}s:39:"1242:website-community_removed_by_owner";a:2:{i:0;R:3;i:1;R:17670;}s:38:"1242:website-communities_summary_empty";a:2:{i:0;R:3;i:1;R:17670;}s:50:"1242:website-communities_summary_header_with_count";a:2:{i:0;R:3;i:1;R:17670;}s:22:"1242:website-completed";a:2:{i:0;R:3;i:1;R:17670;}s:37:"1242:website-confirm_delete_community";a:2:{i:0;R:3;i:1;R:17670;}s:26:"1242:website-confirm_leave";a:2:{i:0;R:3;i:1;R:17670;}s:35:"1242:website-confirm_password_colon";a:2:{i:0;R:3;i:1;R:17670;}s:20:"1242:website-contact";a:2:{i:0;R:3;i:1;R:17670;}s:32:"1242:website-contact_information";a:2:{i:0;R:3;i:1;R:17670;}s:21:"1242:website-contacts";a:2:{i:0;R:3;i:1;R:17670;}s:28:"1242:website-contact_updated";a:2:{i:0;R:3;i:1;R:17670;}s:23:"1242:website-contact_us";a:2:{i:0;R:3;i:1;R:17670;}s:28:"1242:website-contact_us_link";a:2:{i:0;R:3;i:1;R:17670;}s:33:"1242:website-contact_us_functions";a:2:{i:0;R:3;i:1;R:17670;}s:35:"1242:website-contact_us_submissions";a:2:{i:0;R:3;i:1;R:17670;}s:30:"1242:website-contact_us_topics";a:2:{i:0;R:3;i:1;R:17670;}s:29:"1242:website-containing_value";a:2:{i:0;R:3;i:1;R:17670;}s:37:"1242:website-content_has_been_updated";a:2:{i:0;R:3;i:1;R:17670;}s:42:"1242:website-content_notes_not_shown_to_us";a:2:{i:0;R:3;i:1;R:17670;}s:28:"1242:website-content_partner";a:2:{i:0;R:3;i:1;R:17670;}s:37:"1242:website-content_partner_new_link";a:2:{i:0;R:3;i:1;R:17670;}s:53:"1242:website-content_partner_admin_index_link_back_to";a:2:{i:0;R:3;i:1;R:17670;}s:65:"1242:website-content_partner_agreement_cancel_edit_agreement_link";a:2:{i:0;R:3;i:1;R:17670;}s:64:"1242:website-content_partner_agreement_cancel_new_agreement_link";a:2:{i:0;R:3;i:1;R:17670;}s:65:"1242:website-content_partner_agreement_cancel_sign_agreement_link";a:2:{i:0;R:3;i:1;R:17670;}s:63:"1242:website-content_partner_agreement_create_successful_notice";a:2:{i:0;R:3;i:1;R:17670;}s:64:"1242:website-content_partner_agreement_create_unsuccessful_error";a:2:{i:0;R:3;i:1;R:17670;}s:48:"1242:website-content_partner_agreement_subheader";a:2:{i:0;R:3;i:1;R:17670;}s:63:"1242:website-content_partner_agreement_signed_successful_notice";a:2:{i:0;R:3;i:1;R:17670;}s:64:"1242:website-content_partner_agreement_signed_unsuccessful_error";a:2:{i:0;R:3;i:1;R:17670;}s:63:"1242:website-content_partner_agreement_update_successful_notice";a:2:{i:0;R:3;i:1;R:17670;}s:64:"1242:website-content_partner_agreement_update_unsuccessful_error";a:2:{i:0;R:3;i:1;R:17670;}s:41:"1242:website-content_partner_about_header";a:2:{i:0;R:3;i:1;R:17670;}s:55:"1242:website-content_partner_administration_notes_empty";a:2:{i:0;R:3;i:1;R:17670;}s:56:"1242:website-content_partner_administration_notes_header";a:2:{i:0;R:3;i:1;R:17670;}s:59:"1242:website-content_partner_administration_settings_header";a:2:{i:0;R:3;i:1;R:17670;}s:65:"1242:website-content_partner_administration_settings_introduction";a:2:{i:0;R:3;i:1;R:17670;}s:46:"1242:website-content_partner_collections_empty";a:2:{i:0;R:3;i:1;R:17670;}s:50:"1242:website-content_partner_column_header_partner";a:2:{i:0;R:3;i:1;R:17670;}s:61:"1242:website-content_partner_contact_create_successful_notice";a:2:{i:0;R:3;i:1;R:17670;}s:62:"1242:website-content_partner_contact_create_unsuccessful_error";a:2:{i:0;R:3;i:1;R:17670;}s:61:"1242:website-content_partner_contact_delete_successful_notice";a:2:{i:0;R:3;i:1;R:17670;}s:62:"1242:website-content_partner_contact_delete_unsuccessful_error";a:2:{i:0;R:3;i:1;R:17670;}s:46:"1242:website-content_partner_contact_edit_link";a:2:{i:0;R:3;i:1;R:17670;}s:56:"1242:website-content_partner_contact_edit_page_subheader";a:2:{i:0;R:3;i:1;R:17670;}s:45:"1242:website-content_partner_contact_new_link";a:2:{i:0;R:3;i:1;R:17670;}s:55:"1242:website-content_partner_contact_new_page_subheader";a:2:{i:0;R:3;i:1;R:17670;}s:57:"1242:website-content_partner_contact_new_edit_form_header";a:2:{i:0;R:3;i:1;R:17670;}s:54:"1242:website-content_partner_contact_new_edit_form_tip";a:2:{i:0;R:3;i:1;R:17670;}s:61:"1242:website-content_partner_contact_update_successful_notice";a:2:{i:0;R:3;i:1;R:17670;}s:62:"1242:website-content_partner_contact_update_unsuccessful_error";a:2:{i:0;R:3;i:1;R:17670;}s:44:"1242:website-content_partner_contacts_header";a:2:{i:0;R:3;i:1;R:17670;}s:53:"1242:website-content_partner_create_successful_notice";a:2:{i:0;R:3;i:1;R:17670;}s:54:"1242:website-content_partner_create_unsuccessful_error";a:2:{i:0;R:3;i:1;R:17670;}s:52:"1242:website-content_partner_current_agreement_empty";a:2:{i:0;R:3;i:1;R:17670;}s:66:"1242:website-content_partner_current_agreement_signed_on_with_date";a:2:{i:0;R:3;i:1;R:17670;}s:56:"1242:website-content_partner_current_agreement_view_link";a:2:{i:0;R:3;i:1;R:17670;}s:56:"1242:website-content_partner_current_agreement_edit_link";a:2:{i:0;R:3;i:1;R:17670;}s:58:"1242:website-content_partner_current_agreement_create_link";a:2:{i:0;R:3;i:1;R:17670;}s:59:"1242:website-content_partner_current_agreement_not_accepted";a:2:{i:0;R:3;i:1;R:17670;}s:52:"1242:website-content_partner_data_description_header";a:2:{i:0;R:3;i:1;R:17670;}s:51:"1242:website-content_partner_data_description_empty";a:2:{i:0;R:3;i:1;R:17670;}s:48:"1242:website-content_partner_default_description";a:2:{i:0;R:3;i:1;R:17670;}s:38:"1242:website-content_partner_edit_link";a:2:{i:0;R:3;i:1;R:17670;}s:53:"1242:website-content_partner_filter_option_vetted_yes";a:2:{i:0;R:3;i:1;R:17670;}s:52:"1242:website-content_partner_filter_option_vetted_no";a:2:{i:0;R:3;i:1;R:17670;}s:68:"1242:website-content_partner_filter_option_published_never_harvested";a:2:{i:0;R:3;i:1;R:17670;}s:68:"1242:website-content_partner_filter_option_published_never_published";a:2:{i:0;R:3;i:1;R:17670;}s:81:"1242:website-content_partner_filter_option_published_latest_harvest_not_published";a:2:{i:0;R:3;i:1;R:17670;}s:83:"1242:website-content_partner_filter_option_published_latest_harvest_pending_publish";a:2:{i:0;R:3;i:1;R:17670;}s:77:"1242:website-content_partner_filter_option_published_latest_harvest_published";a:2:{i:0;R:3;i:1;R:17670;}s:65:"1242:website-content_partner_filter_option_published_no_resources";a:2:{i:0;R:3;i:1;R:17670;}s:45:"1242:website-content_partner_filter_published";a:2:{i:0;R:3;i:1;R:17670;}s:57:"1242:website-content_partner_has_unpublished_content_true";a:2:{i:0;R:3;i:1;R:17670;}s:58:"1242:website-content_partner_has_unpublished_content_false";a:2:{i:0;R:3;i:1;R:17670;}s:42:"1242:website-content_partner_homepage_link";a:2:{i:0;R:3;i:1;R:17670;}s:68:"1242:website-content_partner_latest_published_harvest_event_time_ago";a:2:{i:0;R:3;i:1;R:17670;}s:42:"1242:website-content_partner_logo_alt_text";a:2:{i:0;R:3;i:1;R:17670;}s:46:"1242:website-content_partner_managed_by_header";a:2:{i:0;R:3;i:1;R:17670;}s:47:"1242:website-content_partner_new_page_subheader";a:2:{i:0;R:3;i:1;R:17670;}s:57:"1242:website-content_partner_new_edit_form_profile_header";a:2:{i:0;R:3;i:1;R:17670;}s:46:"1242:website-content_partner_new_edit_form_tip";a:2:{i:0;R:3;i:1;R:17670;}s:41:"1242:website-content_partner_notes_header";a:2:{i:0;R:3;i:1;R:17670;}s:40:"1242:website-content_partner_notes_empty";a:2:{i:0;R:3;i:1;R:17670;}s:68:"1242:website-content_partner_oldest_published_harvest_event_time_ago";a:2:{i:0;R:3;i:1;R:17670;}s:54:"1242:website-content_partner_overview_agreement_header";a:2:{i:0;R:3;i:1;R:17670;}s:52:"1242:website-content_partner_overview_agreement_link";a:2:{i:0;R:3;i:1;R:17670;}s:42:"1242:website-content_partner_overview_link";a:2:{i:0;R:3;i:1;R:17670;}s:50:"1242:website-content_partner_overview_link_back_to";a:2:{i:0;R:3;i:1;R:17670;}s:41:"1242:website-content_partner_profile_menu";a:2:{i:0;R:3;i:1;R:17670;}s:41:"1242:website-content_partner_public_false";a:2:{i:0;R:3;i:1;R:17670;}s:40:"1242:website-content_partner_public_true";a:2:{i:0;R:3;i:1;R:17670;}s:48:"1242:website-content_partner_registered_time_ago";a:2:{i:0;R:3;i:1;R:17670;}s:36:"1242:website-content_partner_reports";a:2:{i:0;R:3;i:1;R:17670;}s:50:"1242:website-content_partner_resource_about_header";a:2:{i:0;R:3;i:1;R:17670;}s:55:"1242:website-content_partner_resource_auto_publish_true";a:2:{i:0;R:3;i:1;R:17670;}s:56:"1242:website-content_partner_resource_auto_publish_false";a:2:{i:0;R:3;i:1;R:17670;}s:54:"1242:website-content_partner_resource_collection_empty";a:2:{i:0;R:3;i:1;R:17670;}s:56:"1242:website-content_partner_resource_collections_header";a:2:{i:0;R:3;i:1;R:17670;}s:55:"1242:website-content_partner_resource_collection_header";a:2:{i:0;R:3;i:1;R:17670;}s:58:"1242:website-content_partner_resource_collection_show_link";a:2:{i:0;R:3;i:1;R:17670;}s:59:"1242:website-content_partner_resource_confirm_force_harvest";a:2:{i:0;R:3;i:1;R:17670;}s:62:"1242:website-content_partner_resource_create_successful_notice";a:2:{i:0;R:3;i:1;R:17670;}s:63:"1242:website-content_partner_resource_create_unsuccessful_error";a:2:{i:0;R:3;i:1;R:17670;}s:60:"1242:website-content_partner_resource_dataset_details_header";a:2:{i:0;R:3;i:1;R:17670;}s:55:"1242:website-content_partner_resource_description_empty";a:2:{i:0;R:3;i:1;R:17670;}s:47:"1242:website-content_partner_resource_edit_link";a:2:{i:0;R:3;i:1;R:17670;}s:52:"1242:website-content_partner_resource_edit_subheader";a:2:{i:0;R:3;i:1;R:17670;}s:57:"1242:website-content_partner_resource_edit_with_type_link";a:2:{i:0;R:3;i:1;R:17670;}s:67:"1242:website-content_partner_resource_harvest_event_confirm_publish";a:2:{i:0;R:3;i:1;R:17670;}s:69:"1242:website-content_partner_resource_harvest_event_current_published";a:2:{i:0;R:3;i:1;R:17670;}s:65:"1242:website-content_partner_resource_harvest_event_not_published";a:2:{i:0;R:3;i:1;R:17670;}s:72:"1242:website-content_partner_resource_harvest_event_previously_published";a:2:{i:0;R:3;i:1;R:17670;}s:67:"1242:website-content_partner_resource_harvest_event_publish_pending";a:2:{i:0;R:3;i:1;R:17670;}s:58:"1242:website-content_partner_resource_harvest_events_empty";a:2:{i:0;R:3;i:1;R:17670;}s:75:"1242:website-content_partner_resource_harvest_events_for_resource_subheader";a:2:{i:0;R:3;i:1;R:17670;}s:65:"1242:website-content_partner_resource_harvest_events_see_all_link";a:2:{i:0;R:3;i:1;R:17670;}s:76:"1242:website-content_partner_resource_harvest_event_update_successful_notice";a:2:{i:0;R:3;i:1;R:17670;}s:77:"1242:website-content_partner_resource_harvest_event_update_unsuccessful_error";a:2:{i:0;R:3;i:1;R:17670;}s:57:"1242:website-content_partner_resource_hierarchy_browsable";a:2:{i:0;R:3;i:1;R:17670;}s:61:"1242:website-content_partner_resource_hierarchy_complete_true";a:2:{i:0;R:3;i:1;R:17670;}s:62:"1242:website-content_partner_resource_hierarchy_complete_false";a:2:{i:0;R:3;i:1;R:17670;}s:71:"1242:website-content_partner_resource_hierarchy_confirm_request_publish";a:2:{i:0;R:3;i:1;R:17670;}s:57:"1242:website-content_partner_resource_hierarchy_edit_link";a:2:{i:0;R:3;i:1;R:17670;}s:62:"1242:website-content_partner_resource_hierarchy_edit_subheader";a:2:{i:0;R:3;i:1;R:17670;}s:61:"1242:website-content_partner_resource_hierarchy_not_browsable";a:2:{i:0;R:3;i:1;R:17670;}s:63:"1242:website-content_partner_resource_hierarchy_request_publish";a:2:{i:0;R:3;i:1;R:17670;}s:55:"1242:website-content_partner_resource_hierarchy_unknown";a:2:{i:0;R:3;i:1;R:17670;}s:72:"1242:website-content_partner_resource_hierarchy_update_successful_notice";a:2:{i:0;R:3;i:1;R:17670;}s:73:"1242:website-content_partner_resource_hierarchy_update_unsuccessful_error";a:2:{i:0;R:3;i:1;R:17670;}s:62:"1242:website-content_partner_resource_licensing_details_header";a:2:{i:0;R:3;i:1;R:17670;}s:55:"1242:website-content_partner_resource_new_edit_form_tip";a:2:{i:0;R:3;i:1;R:17670;}s:46:"1242:website-content_partner_resource_new_link";a:2:{i:0;R:3;i:1;R:17670;}s:51:"1242:website-content_partner_resource_new_subheader";a:2:{i:0;R:3;i:1;R:17670;}s:63:"1242:website-content_partner_resource_preview_collection_header";a:2:{i:0;R:3;i:1;R:17670;}s:66:"1242:website-content_partner_resource_preview_collection_show_link";a:2:{i:0;R:3;i:1;R:17670;}s:55:"1242:website-content_partner_resource_processing_header";a:2:{i:0;R:3;i:1;R:17670;}s:57:"1242:website-content_partner_resource_resource_status_new";a:2:{i:0;R:3;i:1;R:17670;}s:55:"1242:website-content_partner_resource_show_link_back_to";a:2:{i:0;R:3;i:1;R:17670;}s:52:"1242:website-content_partner_resource_show_subheader";a:2:{i:0;R:3;i:1;R:17670;}s:76:"1242:website-content_partner_resource_status_update_illegal_transition_error";a:2:{i:0;R:3;i:1;R:17670;}s:69:"1242:website-content_partner_resource_status_update_successful_notice";a:2:{i:0;R:3;i:1;R:17670;}s:70:"1242:website-content_partner_resource_status_update_unsuccessful_error";a:2:{i:0;R:3;i:1;R:17670;}s:62:"1242:website-content_partner_resource_update_successful_notice";a:2:{i:0;R:3;i:1;R:17670;}s:63:"1242:website-content_partner_resource_update_unsuccessful_error";a:2:{i:0;R:3;i:1;R:17670;}s:63:"1242:website-content_partner_resource_upload_unsuccessful_error";a:2:{i:0;R:3;i:1;R:17670;}s:67:"1242:website-content_partner_resource_url_or_dataset_not_both_error";a:2:{i:0;R:3;i:1;R:17670;}s:49:"1242:website-content_partner_resource_vetted_true";a:2:{i:0;R:3;i:1;R:17670;}s:50:"1242:website-content_partner_resource_vetted_false";a:2:{i:0;R:3;i:1;R:17670;}s:47:"1242:website-content_partner_resource_view_link";a:2:{i:0;R:3;i:1;R:17670;}s:50:"1242:website-content_partner_resources_information";a:2:{i:0;R:3;i:1;R:17670;}s:45:"1242:website-content_partner_resources_header";a:2:{i:0;R:3;i:1;R:17670;}s:51:"1242:website-content_partner_resources_link_back_to";a:2:{i:0;R:3;i:1;R:17670;}s:43:"1242:website-content_partner_resources_link";a:2:{i:0;R:3;i:1;R:17670;}s:57:"1242:website-content_partner_resources_policy_information";a:2:{i:0;R:3;i:1;R:17670;}s:63:"1242:website-content_partner_statistics_column_header_statistic";a:2:{i:0;R:3;i:1;R:17670;}s:68:"1242:website-content_partner_statistics_column_header_provider_count";a:2:{i:0;R:3;i:1;R:17670;}s:65:"1242:website-content_partner_statistics_column_header_total_count";a:2:{i:0;R:3;i:1;R:17670;}s:73:"1242:website-content_partner_statistics_column_header_provider_proportion";a:2:{i:0;R:3;i:1;R:17670;}s:45:"1242:website-content_partner_statistics_empty";a:2:{i:0;R:3;i:1;R:17670;}s:51:"1242:website-content_partner_statistics_month_label";a:2:{i:0;R:3;i:1;R:17670;}s:50:"1242:website-content_partner_statistics_year_label";a:2:{i:0;R:3;i:1;R:17670;}s:55:"1242:website-content_partner_statistics_summary_caption";a:2:{i:0;R:3;i:1;R:17670;}s:44:"1242:website-content_partner_statistics_link";a:2:{i:0;R:3;i:1;R:17670;}s:57:"1242:website-content_partner_statistics_taxa_page_caption";a:2:{i:0;R:3;i:1;R:17670;}s:74:"1242:website-content_partner_statistics_column_header_taxa_page_page_views";a:2:{i:0;R:3;i:1;R:17670;}s:81:"1242:website-content_partner_statistics_column_header_taxa_page_unique_page_views";a:2:{i:0;R:3;i:1;R:17670;}s:84:"1242:website-content_partner_statistics_column_header_taxa_page_time_on_page_seconds";a:2:{i:0;R:3;i:1;R:17670;}s:41:"1242:website-content_partner_status_empty";a:2:{i:0;R:3;i:1;R:17670;}s:53:"1242:website-content_partner_update_successful_notice";a:2:{i:0;R:3;i:1;R:17670;}s:54:"1242:website-content_partner_update_unsuccessful_error";a:2:{i:0;R:3;i:1;R:17670;}s:41:"1242:website-content_partner_vetted_false";a:2:{i:0;R:3;i:1;R:17670;}s:40:"1242:website-content_partner_vetted_true";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-content_partners_link";a:2:{i:0;R:3;i:1;R:17670;}s:35:"1242:website-content_partners_empty";a:2:{i:0;R:3;i:1;R:17670;}s:40:"1242:website-content_partners_page_title";a:2:{i:0;R:3;i:1;R:17670;}s:46:"1242:website-content_partners_page_description";a:2:{i:0;R:3;i:1;R:17670;}s:40:"1242:website-content_partners_with_count";a:2:{i:0;R:3;i:1;R:17670;}s:36:"1242:website-content_server_full_url";a:2:{i:0;R:3;i:1;R:17670;}s:28:"1242:website-content_servers";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-content_setting_colon";a:2:{i:0;R:3;i:1;R:17670;}s:46:"1242:website-content_summary_introduction_html";a:2:{i:0;R:3;i:1;R:17670;}s:42:"1242:website-content_summary_table_caption";a:2:{i:0;R:3;i:1;R:17670;}s:42:"1242:website-content_summary_table_summary";a:2:{i:0;R:3;i:1;R:17670;}s:60:"1242:website-content_summary_table_type_status_column_header";a:2:{i:0;R:3;i:1;R:17670;}s:54:"1242:website-content_summary_table_count_column_header";a:2:{i:0;R:3;i:1;R:17670;}s:55:"1242:website-content_summary_table_type_descendants_row";a:2:{i:0;R:3;i:1;R:17670;}s:58:"1242:website-content_summary_table_type_trusted_images_row";a:2:{i:0;R:3;i:1;R:17670;}s:61:"1242:website-content_summary_table_type_unreviewed_images_row";a:2:{i:0;R:3;i:1;R:17670;}s:56:"1242:website-content_summary_table_type_trusted_text_row";a:2:{i:0;R:3;i:1;R:17670;}s:59:"1242:website-content_summary_table_type_unreviewed_text_row";a:2:{i:0;R:3;i:1;R:17670;}s:25:"1242:website-content_type";a:2:{i:0;R:3;i:1;R:17670;}s:23:"1242:website-contribute";a:2:{i:0;R:3;i:1;R:17670;}s:59:"1242:website-copied_items_from_collection_with_count_notice";a:2:{i:0;R:3;i:1;R:17670;}s:17:"1242:website-copy";a:2:{i:0;R:3;i:1;R:17670;}s:25:"1242:website-copy_of_name";a:2:{i:0;R:3;i:1;R:17670;}s:54:"1242:website-copy_items_to_a_new_collection_with_count";a:2:{i:0;R:3;i:1;R:17670;}s:22:"1242:website-copyright";a:2:{i:0;R:3;i:1;R:17670;}s:37:"1242:website-correct_donation_message";a:2:{i:0;R:3;i:1;R:17670;}s:44:"1242:website-could_not_find_collection_error";a:2:{i:0;R:3;i:1;R:17670;}s:32:"1242:website-could_not_find_user";a:2:{i:0;R:3;i:1;R:17670;}s:18:"1242:website-count";a:2:{i:0;R:3;i:1;R:17670;}s:42:"1242:website-count_results_for_search_term";a:2:{i:0;R:3;i:1;R:17670;}s:27:"1242:website-create_account";a:2:{i:0;R:3;i:1;R:17670;}s:48:"1242:website-create_community_unsuccessful_error";a:2:{i:0;R:3;i:1;R:17670;}s:29:"1242:website-create_community";a:2:{i:0;R:3;i:1;R:17670;}s:43:"1242:website-create_community_about_heading";a:2:{i:0;R:3;i:1;R:17670;}s:40:"1242:website-create_community_about_text";a:2:{i:0;R:3;i:1;R:17670;}s:59:"1242:website-create_community_around_this_collection_header";a:2:{i:0;R:3;i:1;R:17670;}s:31:"1242:website-create_a_community";a:2:{i:0;R:3;i:1;R:17670;}s:46:"1242:website-create_a_community_login_advisory";a:2:{i:0;R:3;i:1;R:17670;}s:32:"1242:website-create_a_collection";a:2:{i:0;R:3;i:1;R:17670;}s:37:"1242:website-create_collection_button";a:2:{i:0;R:3;i:1;R:17670;}s:36:"1242:website-create_community_button";a:2:{i:0;R:3;i:1;R:17670;}s:36:"1242:website-create_user_form_header";a:2:{i:0;R:3;i:1;R:17670;}s:43:"1242:website-create_user_unsuccessful_error";a:2:{i:0;R:3;i:1;R:17670;}s:23:"1242:website-created_at";a:2:{i:0;R:3;i:1;R:17670;}s:23:"1242:website-created_by";a:2:{i:0;R:3;i:1;R:17670;}s:26:"1242:website-created_colon";a:2:{i:0;R:3;i:1;R:17670;}s:30:"1242:website-created_community";a:2:{i:0;R:3;i:1;R:17670;}s:20:"1242:website-created";a:2:{i:0;R:3;i:1;R:17670;}s:29:"1242:website-creative_commons";a:2:{i:0;R:3;i:1;R:17670;}s:24:"1242:website-credentials";a:2:{i:0;R:3;i:1;R:17670;}s:20:"1242:website-curated";a:2:{i:0;R:3;i:1;R:17670;}s:46:"1242:website-curated_association_update_button";a:2:{i:0;R:3;i:1;R:17670;}s:31:"1242:website-curated_objects_of";a:2:{i:0;R:3;i:1;R:17670;}s:31:"1242:website-curated_species_of";a:2:{i:0;R:3;i:1;R:17670;}s:29:"1242:website-curation_comment";a:2:{i:0;R:3;i:1;R:17670;}s:49:"1242:website-curation_privileges_page_description";a:2:{i:0;R:3;i:1;R:17670;}s:43:"1242:website-curation_privileges_page_title";a:2:{i:0;R:3;i:1;R:17670;}s:27:"1242:website-curation_scope";a:2:{i:0;R:3;i:1;R:17670;}s:40:"1242:website-curation_reason_placeholder";a:2:{i:0;R:3;i:1;R:17670;}s:20:"1242:website-curator";a:2:{i:0;R:3;i:1;R:17670;}s:29:"1242:website-curator_question";a:2:{i:0;R:3;i:1;R:17670;}s:53:"1242:website-curator_level_application_pending_notice";a:2:{i:0;R:3;i:1;R:17670;}s:52:"1242:website-curator_level_assistant_approved_notice";a:2:{i:0;R:3;i:1;R:17670;}s:44:"1242:website-curator_level_assistant_curator";a:2:{i:0;R:3;i:1;R:17670;}s:39:"1242:website-curator_level_full_curator";a:2:{i:0;R:3;i:1;R:17670;}s:46:"1242:website-curator_level_full_pending_notice";a:2:{i:0;R:3;i:1;R:17670;}s:41:"1242:website-curator_level_master_curator";a:2:{i:0;R:3;i:1;R:17670;}s:48:"1242:website-curator_level_master_pending_notice";a:2:{i:0;R:3;i:1;R:17670;}s:28:"1242:website-curator_profile";a:2:{i:0;R:3;i:1;R:17670;}s:33:"1242:website-curator_profile_menu";a:2:{i:0;R:3;i:1;R:17670;}s:31:"1242:website-curator_profile_of";a:2:{i:0;R:3;i:1;R:17670;}s:32:"1242:website-curator_scope_colon";a:2:{i:0;R:3;i:1;R:17670;}s:35:"1242:website-curator_signup_message";a:2:{i:0;R:3;i:1;R:17670;}s:38:"1242:website-curator_status_changed_by";a:2:{i:0;R:3;i:1;R:17670;}s:21:"1242:website-curators";a:2:{i:0;R:3;i:1;R:17670;}s:27:"1242:website-curators_empty";a:2:{i:0;R:3;i:1;R:17670;}s:47:"1242:website-curators_summary_header_with_count";a:2:{i:0;R:3;i:1;R:17670;}s:45:"1242:website-curators_summary_learn_more_link";a:2:{i:0;R:3;i:1;R:17670;}s:32:"1242:website-curators_with_count";a:2:{i:0;R:3;i:1;R:17670;}s:39:"1242:website-your_current_rating_0_of_5";a:2:{i:0;R:3;i:1;R:17670;}s:39:"1242:website-your_current_rating_1_of_5";a:2:{i:0;R:3;i:1;R:17670;}s:39:"1242:website-your_current_rating_2_of_5";a:2:{i:0;R:3;i:1;R:17670;}s:39:"1242:website-your_current_rating_3_of_5";a:2:{i:0;R:3;i:1;R:17670;}s:39:"1242:website-your_current_rating_4_of_5";a:2:{i:0;R:3;i:1;R:17670;}s:39:"1242:website-your_current_rating_5_of_5";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-your_watch_collection";a:2:{i:0;R:3;i:1;R:17670;}s:29:"1242:website-current_language";a:2:{i:0;R:3;i:1;R:17670;}s:29:"1242:website-currently_in_eol";a:2:{i:0;R:3;i:1;R:17670;}s:32:"1242:website-currently_published";a:2:{i:0;R:3;i:1;R:17670;}s:18:"1242:website-daily";a:2:{i:0;R:3;i:1;R:17670;}s:24:"1242:website-darwin_core";a:2:{i:0;R:3;i:1;R:17670;}s:22:"1242:website-dashboard";a:2:{i:0;R:3;i:1;R:17670;}s:32:"1242:website-data_database_colon";a:2:{i:0;R:3;i:1;R:17670;}s:32:"1242:website-data_logging_active";a:2:{i:0;R:3;i:1;R:17670;}s:39:"1242:website-data_master_database_colon";a:2:{i:0;R:3;i:1;R:17670;}s:24:"1242:website-data_object";a:2:{i:0;R:3;i:1;R:17670;}s:60:"1242:website-data_object_not_associated_with_any_hierarchies";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-data_object_reference";a:2:{i:0;R:3;i:1;R:17670;}s:31:"1242:website-data_object_ignore";a:2:{i:0;R:3;i:1;R:17670;}s:36:"1242:website-data_object_undo_ignore";a:2:{i:0;R:3;i:1;R:17670;}s:31:"1242:website-data_usage_reports";a:2:{i:0;R:3;i:1;R:17670;}s:22:"1242:website-date_caps";a:2:{i:0;R:3;i:1;R:17670;}s:26:"1242:website-date_uploaded";a:2:{i:0;R:3;i:1;R:17670;}s:31:"1242:website-dato_create_cancel";a:2:{i:0;R:3;i:1;R:17670;}s:29:"1242:website-dato_edit_cancel";a:2:{i:0;R:3;i:1;R:17670;}s:40:"1242:website-dato_create_user_text_error";a:2:{i:0;R:3;i:1;R:17670;}s:40:"1242:website-dato_update_user_text_error";a:2:{i:0;R:3;i:1;R:17670;}s:60:"1242:website-dato_new_edit_user_text_fieldset_content_header";a:2:{i:0;R:3;i:1;R:17670;}s:64:"1242:website-dato_new_edit_user_text_fieldset_information_header";a:2:{i:0;R:3;i:1;R:17670;}s:45:"1242:website-dato_new_edit_user_text_form_tip";a:2:{i:0;R:3;i:1;R:17670;}s:61:"1242:website-dato_create_user_text_missing_taxon_id_exception";a:2:{i:0;R:3;i:1;R:17670;}s:57:"1242:website-dato_create_user_text_missing_user_exception";a:2:{i:0;R:3;i:1;R:17670;}s:51:"1242:website-dato_create_user_text_validation_error";a:2:{i:0;R:3;i:1;R:17670;}s:55:"1242:website-dato_update_users_text_not_owner_exception";a:2:{i:0;R:3;i:1;R:17670;}s:39:"1242:website-dato_edit_text_link_button";a:2:{i:0;R:3;i:1;R:17670;}s:44:"1242:website-dato_edit_text_page_description";a:2:{i:0;R:3;i:1;R:17670;}s:33:"1242:website-dato_edit_text_title";a:2:{i:0;R:3;i:1;R:17670;}s:47:"1242:website-dato_new_text_for_taxon_page_title";a:2:{i:0;R:3;i:1;R:17670;}s:43:"1242:website-dato_new_text_page_description";a:2:{i:0;R:3;i:1;R:17670;}s:37:"1242:website-development_version_name";a:2:{i:0;R:3;i:1;R:17670;}s:20:"1242:website-default";a:2:{i:0;R:3;i:1;R:17670;}s:57:"1242:website-default_focus_collection_name_from_community";a:2:{i:0;R:3;i:1;R:17670;}s:42:"1242:website-default_watch_collection_name";a:2:{i:0;R:3;i:1;R:17670;}s:23:"1242:website-definition";a:2:{i:0;R:3;i:1;R:17670;}s:29:"1242:website-delete_community";a:2:{i:0;R:3;i:1;R:17670;}s:19:"1242:website-delete";a:2:{i:0;R:3;i:1;R:17670;}s:26:"1242:website-deleted_colon";a:2:{i:0;R:3;i:1;R:17670;}s:28:"1242:website-delete_firstcap";a:2:{i:0;R:3;i:1;R:17670;}s:24:"1242:website-description";a:2:{i:0;R:3;i:1;R:17670;}s:27:"1242:website-description_of";a:2:{i:0;R:3;i:1;R:17670;}s:30:"1242:website-descriptive_label";a:2:{i:0;R:3;i:1;R:17670;}s:58:"1242:website-destination_inappropriate_for_logged_in_users";a:2:{i:0;R:3;i:1;R:17670;}s:20:"1242:website-destroy";a:2:{i:0;R:3;i:1;R:17670;}s:19:"1242:website-detail";a:2:{i:0;R:3;i:1;R:17670;}s:20:"1242:website-details";a:2:{i:0;R:3;i:1;R:17670;}s:26:"1242:website-details_title";a:2:{i:0;R:3;i:1;R:17670;}s:25:"1242:website-did_you_mean";a:2:{i:0;R:3;i:1;R:17670;}s:46:"1242:website-disable_email_notifications_colon";a:2:{i:0;R:3;i:1;R:17670;}s:29:"1242:website-disabled_for_now";a:2:{i:0;R:3;i:1;R:17670;}s:26:"1242:website-discover_link";a:2:{i:0;R:3;i:1;R:17670;}s:39:"1242:website-displaying_numerical_range";a:2:{i:0;R:3;i:1;R:17670;}s:19:"1242:website-donate";a:2:{i:0;R:3;i:1;R:17670;}s:35:"1242:website-donation_amount_legend";a:2:{i:0;R:3;i:1;R:17670;}s:40:"1242:website-donation_amount_other_label";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-donation_confirmation";a:2:{i:0;R:3;i:1;R:17670;}s:40:"1242:website-donation_error_only_numbers";a:2:{i:0;R:3;i:1;R:17670;}s:37:"1242:website-donation_error_no_amount";a:2:{i:0;R:3;i:1;R:17670;}s:48:"1242:website-donation_introduction_paragraph_one";a:2:{i:0;R:3;i:1;R:17670;}s:48:"1242:website-donation_introduction_paragraph_two";a:2:{i:0;R:3;i:1;R:17670;}s:36:"1242:website-donation_privacy_notice";a:2:{i:0;R:3;i:1;R:17670;}s:42:"1242:website-donation_sponsorship_preamble";a:2:{i:0;R:3;i:1;R:17670;}s:47:"1242:website-donation_sponsorship_content_title";a:2:{i:0;R:3;i:1;R:17670;}s:53:"1242:website-donation_sponsorship_content_description";a:2:{i:0;R:3;i:1;R:17670;}s:51:"1242:website-donation_sponsorship_fellowships_title";a:2:{i:0;R:3;i:1;R:17670;}s:57:"1242:website-donation_sponsorship_fellowships_description";a:2:{i:0;R:3;i:1;R:17670;}s:54:"1242:website-donation_sponsorship_infrastructure_title";a:2:{i:0;R:3;i:1;R:17670;}s:60:"1242:website-donation_sponsorship_infrastructure_description";a:2:{i:0;R:3;i:1;R:17670;}s:25:"1242:website-done_already";a:2:{i:0;R:3;i:1;R:17670;}s:80:"1242:website-dont_show_unknown_registered_dates_v1_users_all_prior_to_jan_5_2009";a:2:{i:0;R:3;i:1;R:17670;}s:40:"1242:website-do_you_want_to_be_a_curator";a:2:{i:0;R:3;i:1;R:17670;}s:30:"1242:website-download_wav_file";a:2:{i:0;R:3;i:1;R:17670;}s:24:"1242:website-dublin_core";a:2:{i:0;R:3;i:1;R:17670;}s:41:"1242:website-duplicate_items_were_ignored";a:2:{i:0;R:3;i:1;R:17670;}s:67:"1242:website-each_method_documentation_page_has_formatted_responses";a:2:{i:0;R:3;i:1;R:17670;}s:25:"1242:website-edit_comment";a:2:{i:0;R:3;i:1;R:17670;}s:35:"1242:website-edit_comment_lowercase";a:2:{i:0;R:3;i:1;R:17670;}s:27:"1242:website-edit_community";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-edit_contact_us_topic";a:2:{i:0;R:3;i:1;R:17670;}s:35:"1242:website-edit_contact_us_topics";a:2:{i:0;R:3;i:1;R:17670;}s:17:"1242:website-edit";a:2:{i:0;R:3;i:1;R:17670;}s:25:"1242:website-edited_colon";a:2:{i:0;R:3;i:1;R:17670;}s:30:"1242:website-edit_eol_glossary";a:2:{i:0;R:3;i:1;R:17670;}s:31:"1242:website-edit_glossary_term";a:2:{i:0;R:3;i:1;R:17670;}s:27:"1242:website-edit_hierarchy";a:2:{i:0;R:3;i:1;R:17670;}s:36:"1242:website-edit_collection_details";a:2:{i:0;R:3;i:1;R:17670;}s:43:"1242:website-edit_collection_details_header";a:2:{i:0;R:3;i:1;R:17670;}s:28:"1242:website-edit_my_profile";a:2:{i:0;R:3;i:1;R:17670;}s:27:"1242:website-edit_news_item";a:2:{i:0;R:3;i:1;R:17670;}s:28:"1242:website-edit_news_items";a:2:{i:0;R:3;i:1;R:17670;}s:31:"1242:website-edit_page_contents";a:2:{i:0;R:3;i:1;R:17670;}s:35:"1242:website-edit_search_suggestion";a:2:{i:0;R:3;i:1;R:17670;}s:36:"1242:website-edit_search_suggestions";a:2:{i:0;R:3;i:1;R:17670;}s:35:"1242:website-edit_table_of_contents";a:2:{i:0;R:3;i:1;R:17670;}s:33:"1242:website-edit_tag_suggestions";a:2:{i:0;R:3;i:1;R:17670;}s:50:"1242:website-edit_news_item_instructions_with_link";a:2:{i:0;R:3;i:1;R:17670;}s:38:"1242:website-edit_the_topic_area_intro";a:2:{i:0;R:3;i:1;R:17670;}s:43:"1242:website-edit_user_details_instructions";a:2:{i:0;R:3;i:1;R:17670;}s:42:"1242:website-edit_the_user_s_comment_below";a:2:{i:0;R:3;i:1;R:17670;}s:24:"1242:website-edit_upload";a:2:{i:0;R:3;i:1;R:17670;}s:26:"1242:website-edit_username";a:2:{i:0;R:3;i:1;R:17670;}s:27:"1242:website-edit_web_users";a:2:{i:0;R:3;i:1;R:17670;}s:30:"1242:website-editors_tab_label";a:2:{i:0;R:3;i:1;R:17670;}s:40:"1242:website-e_g_search_for_the_eol_page";a:2:{i:0;R:3;i:1;R:17670;}s:18:"1242:website-email";a:2:{i:0;R:3;i:1;R:17670;}s:24:"1242:website-email_colon";a:2:{i:0;R:3;i:1;R:17670;}s:43:"1242:website-email_error_notification_activ";a:2:{i:0;R:3;i:1;R:17670;}s:29:"1242:website-email_recipients";a:2:{i:0;R:3;i:1;R:17670;}s:47:"1242:website-eol_curator_activity_email_message";a:2:{i:0;R:3;i:1;R:17670;}s:33:"1242:website-encyclopedia_of_life";a:2:{i:0;R:3;i:1;R:17670;}s:24:"1242:website-endorsed_by";a:2:{i:0;R:3;i:1;R:17670;}s:33:"1242:website-endorsed_collections";a:2:{i:0;R:3;i:1;R:17670;}s:44:"1242:website-endorsed_collections_with_count";a:2:{i:0;R:3;i:1;R:17670;}s:43:"1242:website-enter_in_a_search_term_users_a";a:2:{i:0;R:3;i:1;R:17670;}s:27:"1242:website-eol_activities";a:2:{i:0;R:3;i:1;R:17670;}s:25:"1242:website-eol_activity";a:2:{i:0;R:3;i:1;R:17670;}s:39:"1242:website-eol_administration_console";a:2:{i:0;R:3;i:1;R:17670;}s:33:"1242:website-eol_api_data_objects";a:2:{i:0;R:3;i:1;R:17670;}s:26:"1242:website-eol_api_colon";a:2:{i:0;R:3;i:1;R:17670;}s:20:"1242:website-eol_api";a:2:{i:0;R:3;i:1;R:17670;}s:32:"1242:website-eol_api_hierarchies";a:2:{i:0;R:3;i:1;R:17670;}s:38:"1242:website-eol_api_hierarchy_entries";a:2:{i:0;R:3;i:1;R:17670;}s:26:"1242:website-eol_api_pages";a:2:{i:0;R:3;i:1;R:17670;}s:25:"1242:website-eol_api_ping";a:2:{i:0;R:3;i:1;R:17670;}s:41:"1242:website-eol_api_provider_hierarchies";a:2:{i:0;R:3;i:1;R:17670;}s:39:"1242:website-eol_api_search_by_provider";a:2:{i:0;R:3;i:1;R:17670;}s:27:"1242:website-eol_api_search";a:2:{i:0;R:3;i:1;R:17670;}s:32:"1242:website-eol_api_collections";a:2:{i:0;R:3;i:1;R:17670;}s:22:"1242:website-eol_colon";a:2:{i:0;R:3;i:1;R:17670;}s:35:"1242:website-eol_community_activity";a:2:{i:0;R:3;i:1;R:17670;}s:29:"1242:website-eol_flickr_group";a:2:{i:0;R:3;i:1;R:17670;}s:25:"1242:website-eol_glossary";a:2:{i:0;R:3;i:1;R:17670;}s:32:"1242:website-eol_member_activity";a:2:{i:0;R:3;i:1;R:17670;}s:21:"1242:website-eol_news";a:2:{i:0;R:3;i:1;R:17670;}s:22:"1242:website-eol_pages";a:2:{i:0;R:3;i:1;R:17670;}s:41:"1242:website-eol_recent_member_activities";a:2:{i:0;R:3;i:1;R:17670;}s:32:"1242:website-eol_recent_activity";a:2:{i:0;R:3;i:1;R:17670;}s:29:"1242:website-error_log_detail";a:2:{i:0;R:3;i:1;R:17670;}s:22:"1242:website-error_log";a:2:{i:0;R:3;i:1;R:17670;}s:33:"1242:website-error_logging_active";a:2:{i:0;R:3;i:1;R:17670;}s:33:"1242:website-error_401_page_title";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-error_401_description";a:2:{i:0;R:3;i:1;R:17670;}s:33:"1242:website-error_403_page_title";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-error_403_description";a:2:{i:0;R:3;i:1;R:17670;}s:33:"1242:website-error_404_page_title";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-error_404_description";a:2:{i:0;R:3;i:1;R:17670;}s:33:"1242:website-error_500_page_title";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-error_500_description";a:2:{i:0;R:3;i:1;R:17670;}s:38:"1242:website-error_default_description";a:2:{i:0;R:3;i:1;R:17670;}s:37:"1242:website-error_default_page_title";a:2:{i:0;R:3;i:1;R:17670;}s:48:"1242:website-error_couldnt_find_collection_by_id";a:2:{i:0;R:3;i:1;R:17670;}s:47:"1242:website-error_couldnt_find_community_by_id";a:2:{i:0;R:3;i:1;R:17670;}s:44:"1242:website-error_homepage_or_search_option";a:2:{i:0;R:3;i:1;R:17670;}s:53:"1242:website-error_watch_collections_cannot_be_shared";a:2:{i:0;R:3;i:1;R:17670;}s:39:"1242:website-esc_key_hides_this_message";a:2:{i:0;R:3;i:1;R:17670;}s:55:"1242:website-every_method_can_also_return_json_response";a:2:{i:0;R:3;i:1;R:17670;}s:26:"1242:website-example_colon";a:2:{i:0;R:3;i:1;R:17670;}s:22:"1242:website-exception";a:2:{i:0;R:3;i:1;R:17670;}s:32:"1242:website-expand_all_children";a:2:{i:0;R:3;i:1;R:17670;}s:20:"1242:website-explore";a:2:{i:0;R:3;i:1;R:17670;}s:45:"1242:website-explore_what_we_know_about_taxon";a:2:{i:0;R:3;i:1;R:17670;}s:36:"1242:website-export_curator_csv_link";a:2:{i:0;R:3;i:1;R:17670;}s:43:"1242:website-export_all_of_the_entries_as_a";a:2:{i:0;R:3;i:1;R:17670;}s:36:"1242:website-export_this_list_as_csv";a:2:{i:0;R:3;i:1;R:17670;}s:40:"1242:website-external_link_icon_alt_text";a:2:{i:0;R:3;i:1;R:17670;}s:49:"1242:website-external_report_click_url_to_proceed";a:2:{i:0;R:3;i:1;R:17670;}s:50:"1242:website-external_report_click_year_to_proceed";a:2:{i:0;R:3;i:1;R:17670;}s:21:"1242:website-facebook";a:2:{i:0;R:3;i:1;R:17670;}s:60:"1242:website-faculty_staff_or_grad_student_credential_option";a:2:{i:0;R:3;i:1;R:17670;}s:45:"1242:website-failed_login_attempts_with_count";a:2:{i:0;R:3;i:1;R:17670;}s:30:"1242:website-family_name_colon";a:2:{i:0;R:3;i:1;R:17670;}s:21:"1242:website-feedback";a:2:{i:0;R:3;i:1;R:17670;}s:17:"1242:website-file";a:2:{i:0;R:3;i:1;R:17670;}s:20:"1242:website-file_id";a:2:{i:0;R:3;i:1;R:17670;}s:22:"1242:website-file_size";a:2:{i:0;R:3;i:1;R:17670;}s:58:"1242:website-fill_in_a_message_below_to_send_email_to_user";a:2:{i:0;R:3;i:1;R:17670;}s:26:"1242:website-filter_button";a:2:{i:0;R:3;i:1;R:17670;}s:26:"1242:website-filter_by_day";a:2:{i:0;R:3;i:1;R:17670;}s:27:"1242:website-filter_by_type";a:2:{i:0;R:3;i:1;R:17670;}s:38:"1242:website-filter_by_type_all_option";a:2:{i:0;R:3;i:1;R:17670;}s:49:"1242:website-filter_by_type_all_option_with_count";a:2:{i:0;R:3;i:1;R:17670;}s:45:"1242:website-filter_by_type_collection_option";a:2:{i:0;R:3;i:1;R:17670;}s:44:"1242:website-filter_by_type_community_option";a:2:{i:0;R:3;i:1;R:17670;}s:47:"1242:website-filter_by_type_content_page_option";a:2:{i:0;R:3;i:1;R:17670;}s:40:"1242:website-filter_by_type_image_option";a:2:{i:0;R:3;i:1;R:17670;}s:51:"1242:website-filter_by_type_image_option_with_count";a:2:{i:0;R:3;i:1;R:17670;}s:39:"1242:website-filter_by_type_text_option";a:2:{i:0;R:3;i:1;R:17670;}s:39:"1242:website-filter_by_type_user_option";a:2:{i:0;R:3;i:1;R:17670;}s:45:"1242:website-filter_by_type_photosynth_option";a:2:{i:0;R:3;i:1;R:17670;}s:40:"1242:website-filter_by_type_sound_option";a:2:{i:0;R:3;i:1;R:17670;}s:51:"1242:website-filter_by_type_sound_option_with_count";a:2:{i:0;R:3;i:1;R:17670;}s:48:"1242:website-filter_by_type_taxon_concept_option";a:2:{i:0;R:3;i:1;R:17670;}s:40:"1242:website-filter_by_type_video_option";a:2:{i:0;R:3;i:1;R:17670;}s:51:"1242:website-filter_by_type_video_option_with_count";a:2:{i:0;R:3;i:1;R:17670;}s:42:"1242:website-filter_by_type_comment_option";a:2:{i:0;R:3;i:1;R:17670;}s:49:"1242:website-filter_by_type_object_curated_option";a:2:{i:0;R:3;i:1;R:17670;}s:39:"1242:website-filter_by_type_name_option";a:2:{i:0;R:3;i:1;R:17670;}s:47:"1242:website-filter_by_type_taxa_comment_option";a:2:{i:0;R:3;i:1;R:17670;}s:40:"1242:website-filter_by_status_all_option";a:2:{i:0;R:3;i:1;R:17670;}s:44:"1242:website-filter_by_status_trusted_option";a:2:{i:0;R:3;i:1;R:17670;}s:47:"1242:website-filter_by_status_unreviewed_option";a:2:{i:0;R:3;i:1;R:17670;}s:46:"1242:website-filter_by_status_untrusted_option";a:2:{i:0;R:3;i:1;R:17670;}s:50:"1242:website-filter_by_status_inappropriate_option";a:2:{i:0;R:3;i:1;R:17670;}s:29:"1242:website-filter_by_status";a:2:{i:0;R:3;i:1;R:17670;}s:33:"1242:website-filtered_information";a:2:{i:0;R:3;i:1;R:17670;}s:39:"1242:website-filter_newsfeed_option_all";a:2:{i:0;R:3;i:1;R:17670;}s:44:"1242:website-filter_newsfeed_option_messages";a:2:{i:0;R:3;i:1;R:17670;}s:45:"1242:website-filter_newsfeed_option_community";a:2:{i:0;R:3;i:1;R:17670;}s:47:"1242:website-filter_newsfeed_option_collections";a:2:{i:0;R:3;i:1;R:17670;}s:45:"1242:website-filter_newsfeed_option_watchlist";a:2:{i:0;R:3;i:1;R:17670;}s:44:"1242:website-filter_newsfeed_option_curation";a:2:{i:0;R:3;i:1;R:17670;}s:25:"1242:website-filter_media";a:2:{i:0;R:3;i:1;R:17670;}s:36:"1242:website-find_taxa_submit_button";a:2:{i:0;R:3;i:1;R:17670;}s:29:"1242:website-citation_example";a:2:{i:0;R:3;i:1;R:17670;}s:53:"1242:website-flash_notice_redirected_from_search_html";a:2:{i:0;R:3;i:1;R:17670;}s:66:"1242:website-flash_notice_redirected_from_search_html_more_results";a:2:{i:0;R:3;i:1;R:17670;}s:24:"1242:website-flash_video";a:2:{i:0;R:3;i:1;R:17670;}s:19:"1242:website-flickr";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-focus_collection_edit";a:2:{i:0;R:3;i:1;R:17670;}s:32:"1242:website-focus_list_newsfeed";a:2:{i:0;R:3;i:1;R:17670;}s:28:"1242:website-forgot_password";a:2:{i:0;R:3;i:1;R:17670;}s:40:"1242:website-forgot_password_form_cancel";a:2:{i:0;R:3;i:1;R:17670;}s:62:"1242:website-forgot_password_form_choose_username_instructions";a:2:{i:0;R:3;i:1;R:17670;}s:56:"1242:website-forgot_password_form_choose_username_legend";a:2:{i:0;R:3;i:1;R:17670;}s:61:"1242:website-forgot_password_form_choose_username_blank_error";a:2:{i:0;R:3;i:1;R:17670;}s:63:"1242:website-forgot_password_form_username_or_email_blank_error";a:2:{i:0;R:3;i:1;R:17670;}s:40:"1242:website-forgot_password_form_header";a:2:{i:0;R:3;i:1;R:17670;}s:40:"1242:website-forgot_password_form_helper";a:2:{i:0;R:3;i:1;R:17670;}s:74:"1242:website-forgot_password_cannot_find_user_from_username_or_email_error";a:2:{i:0;R:3;i:1;R:17670;}s:43:"1242:website-for_images_to_reference_parens";a:2:{i:0;R:3;i:1;R:17670;}s:37:"1242:website-for_pdfs_and_docs_parens";a:2:{i:0;R:3;i:1;R:17670;}s:43:"1242:website-for_terms_or_definitions_conta";a:2:{i:0;R:3;i:1;R:17670;}s:59:"1242:website-form_validation_errors_for_attribute_assistive";a:2:{i:0;R:3;i:1;R:17670;}s:37:"1242:website-fragment_caching_enabled";a:2:{i:0;R:3;i:1;R:17670;}s:22:"1242:website-frequency";a:2:{i:0;R:3;i:1;R:17670;}s:28:"1242:website-frequency_daily";a:2:{i:0;R:3;i:1;R:17670;}s:30:"1242:website-frequency_monthly";a:2:{i:0;R:3;i:1;R:17670;}s:28:"1242:website-frequency_never";a:2:{i:0;R:3;i:1;R:17670;}s:29:"1242:website-frequency_weekly";a:2:{i:0;R:3;i:1;R:17670;}s:25:"1242:website-friendly_url";a:2:{i:0;R:3;i:1;R:17670;}s:27:"1242:website-from_community";a:2:{i:0;R:3;i:1;R:17670;}s:29:"1242:website-from_communities";a:2:{i:0;R:3;i:1;R:17670;}s:29:"1242:website-full_content_url";a:2:{i:0;R:3;i:1;R:17670;}s:21:"1242:website-gbif_map";a:2:{i:0;R:3;i:1;R:17670;}s:31:"1242:website-general_site_admin";a:2:{i:0;R:3;i:1;R:17670;}s:43:"1242:website-get_help_choosing_a_subchapter";a:2:{i:0;R:3;i:1;R:17670;}s:27:"1242:website-get_more_tasks";a:2:{i:0;R:3;i:1;R:17670;}s:55:"1242:website-method_to_get_metadata_about_the_hierarchy";a:2:{i:0;R:3;i:1;R:17670;}s:29:"1242:website-given_name_colon";a:2:{i:0;R:3;i:1;R:17670;}s:40:"1242:website-data_object_api_description";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-given_the_vast_number";a:2:{i:0;R:3;i:1;R:17670;}s:62:"1242:website-gives_access_to_a_single_hierarchy_indexed_by_eol";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-global_access_tagline";a:2:{i:0;R:3;i:1;R:17670;}s:30:"1242:website-global_navigation";a:2:{i:0;R:3;i:1;R:17670;}s:30:"1242:website-glossary_is_empty";a:2:{i:0;R:3;i:1;R:17670;}s:26:"1242:website-glossary_term";a:2:{i:0;R:3;i:1;R:17670;}s:27:"1242:website-glossary_terms";a:2:{i:0;R:3;i:1;R:17670;}s:20:"1242:website-go_back";a:2:{i:0;R:3;i:1;R:17670;}s:15:"1242:website-go";a:2:{i:0;R:3;i:1;R:17670;}s:36:"1242:website-google_analytic_results";a:2:{i:0;R:3;i:1;R:17670;}s:36:"1242:website-google_analytics_active";a:2:{i:0;R:3;i:1;R:17670;}s:64:"1242:website-google_analytics_google_account_and_access_required";a:2:{i:0;R:3;i:1;R:17670;}s:19:"1242:website-google";a:2:{i:0;R:3;i:1;R:17670;}s:26:"1242:website-google_images";a:2:{i:0;R:3;i:1;R:17670;}s:27:"1242:website-google_scholar";a:2:{i:0;R:3;i:1;R:17670;}s:31:"1242:website-grant_manager_link";a:2:{i:0;R:3;i:1;R:17670;}s:36:"1242:website-grant_full_curator_link";a:2:{i:0;R:3;i:1;R:17670;}s:23:"1242:website-harvest_id";a:2:{i:0;R:3;i:1;R:17670;}s:37:"1242:website-harvesting_processes_log";a:2:{i:0;R:3;i:1;R:17670;}s:25:"1242:website-harvests_for";a:2:{i:0;R:3;i:1;R:17670;}s:35:"1242:website-has_already_been_taken";a:2:{i:0;R:3;i:1;R:17670;}s:22:"1242:website-has_colon";a:2:{i:0;R:3;i:1;R:17670;}s:35:"1242:website-has_curated_your_image";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-has_hidden_your_image";a:2:{i:0;R:3;i:1;R:17670;}s:35:"1242:website-has_trusted_your_image";a:2:{i:0;R:3;i:1;R:17670;}s:37:"1242:website-has_untrusted_your_image";a:2:{i:0;R:3;i:1;R:17670;}s:23:"1242:website-hello_user";a:2:{i:0;R:3;i:1;R:17670;}s:17:"1242:website-help";a:2:{i:0;R:3;i:1;R:17670;}s:17:"1242:website-here";a:2:{i:0;R:3;i:1;R:17670;}s:19:"1242:website-hidden";a:2:{i:0;R:3;i:1;R:17670;}s:27:"1242:website-hidden_comment";a:2:{i:0;R:3;i:1;R:17670;}s:17:"1242:website-hide";a:2:{i:0;R:3;i:1;R:17670;}s:30:"1242:website-hierarchies_title";a:2:{i:0;R:3;i:1;R:17670;}s:52:"1242:website-hierarchy_entry_switch_missing_id_error";a:2:{i:0;R:3;i:1;R:17670;}s:22:"1242:website-hierarchy";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-hierarchy_roots_colon";a:2:{i:0;R:3;i:1;R:17670;}s:30:"1242:website-hierarchy_updated";a:2:{i:0;R:3;i:1;R:17670;}s:17:"1242:website-home";a:2:{i:0;R:3;i:1;R:17670;}s:44:"1242:website-home_page_cache_last_cleared_on";a:2:{i:0;R:3;i:1;R:17670;}s:48:"1242:website-home_page_link_advisory_information";a:2:{i:0;R:3;i:1;R:17670;}s:24:"1242:website-html_format";a:2:{i:0;R:3;i:1;R:17670;}s:38:"1242:website-html_format_with_left_col";a:2:{i:0;R:3;i:1;R:17670;}s:31:"1242:website-content_upload_url";a:2:{i:0;R:3;i:1;R:17670;}s:45:"1242:website-content_upload_restrictions_note";a:2:{i:0;R:3;i:1;R:17670;}s:15:"1242:website-id";a:2:{i:0;R:3;i:1;R:17670;}s:41:"1242:website-if_checked_and_user_is_saved";a:2:{i:0;R:3;i:1;R:17670;}s:54:"1242:website-check_this_to_browse_eol_by_the_hierarchy";a:2:{i:0;R:3;i:1;R:17670;}s:41:"1242:website-return_content_by_vettedness";a:2:{i:0;R:3;i:1;R:17670;}s:18:"1242:website-image";a:2:{i:0;R:3;i:1;R:17670;}s:41:"1242:website-image_is_no_longer_available";a:2:{i:0;R:3;i:1;R:17670;}s:28:"1242:website-image_not_found";a:2:{i:0;R:3;i:1;R:17670;}s:25:"1242:website-image_object";a:2:{i:0;R:3;i:1;R:17670;}s:61:"1242:website-image_objects_will_contain_two_mediaurl_elements";a:2:{i:0;R:3;i:1;R:17670;}s:19:"1242:website-images";a:2:{i:0;R:3;i:1;R:17670;}s:42:"1242:website-images_in_red_are_not_trusted";a:2:{i:0;R:3;i:1;R:17670;}s:46:"1242:website-images_in_yellow_are_not_reviewed";a:2:{i:0;R:3;i:1;R:17670;}s:38:"1242:website-images_sort_worklist_note";a:2:{i:0;R:3;i:1;R:17670;}s:30:"1242:website-images_with_count";a:2:{i:0;R:3;i:1;R:17670;}s:24:"1242:website-import_once";a:2:{i:0;R:3;i:1;R:17670;}s:26:"1242:website-inappropriate";a:2:{i:0;R:3;i:1;R:17670;}s:33:"1242:website-include_all_metadata";a:2:{i:0;R:3;i:1;R:17670;}s:26:"1242:website-in_collection";a:2:{i:0;R:3;i:1;R:17670;}s:22:"1242:website-info_item";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-info_items_col_header";a:2:{i:0;R:3;i:1;R:17670;}s:41:"1242:website-information_for_any_audience";a:2:{i:0;R:3;i:1;R:17670;}s:47:"1242:website-information_intended_for_beginners";a:2:{i:0;R:3;i:1;R:17670;}s:45:"1242:website-information_intended_for_experts";a:2:{i:0;R:3;i:1;R:17670;}s:43:"1242:website-in_providing_its_content_to_eo";a:2:{i:0;R:3;i:1;R:17670;}s:30:"1242:website-in_this_data_type";a:2:{i:0;R:3;i:1;R:17670;}s:56:"1242:website-insufficient_privileges_to_add_common_names";a:2:{i:0;R:3;i:1;R:17670;}s:52:"1242:website-insufficient_privileges_to_curate_names";a:2:{i:0;R:3;i:1;R:17670;}s:32:"1242:website-internal_ip_address";a:2:{i:0;R:3;i:1;R:17670;}s:25:"1242:website-inverse_sort";a:2:{i:0;R:3;i:1;R:17670;}s:33:"1242:website-invite_members_label";a:2:{i:0;R:3;i:1;R:17670;}s:37:"1242:website-invite_members_help_text";a:2:{i:0;R:3;i:1;R:17670;}s:23:"1242:website-ip_address";a:2:{i:0;R:3;i:1;R:17670;}s:15:"1242:website-ip";a:2:{i:0;R:3;i:1;R:17670;}s:38:"1242:website-term_is_already_def_error";a:2:{i:0;R:3;i:1;R:17670;}s:50:"1242:website-item_added_to_watch_collection_notice";a:2:{i:0;R:3;i:1;R:17670;}s:44:"1242:website-item_added_to_collection_notice";a:2:{i:0;R:3;i:1;R:17670;}s:33:"1242:website-item_details_missing";a:2:{i:0;R:3;i:1;R:17670;}s:30:"1242:website-item_type_article";a:2:{i:0;R:3;i:1;R:17670;}s:33:"1242:website-item_type_collection";a:2:{i:0;R:3;i:1;R:17670;}s:32:"1242:website-item_type_community";a:2:{i:0;R:3;i:1;R:17670;}s:28:"1242:website-item_type_image";a:2:{i:0;R:3;i:1;R:17670;}s:32:"1242:website-item_type_image_map";a:2:{i:0;R:3;i:1;R:17670;}s:26:"1242:website-item_type_map";a:2:{i:0;R:3;i:1;R:17670;}s:29:"1242:website-item_type_person";a:2:{i:0;R:3;i:1;R:17670;}s:28:"1242:website-item_type_sound";a:2:{i:0;R:3;i:1;R:17670;}s:28:"1242:website-item_type_taxon";a:2:{i:0;R:3;i:1;R:17670;}s:28:"1242:website-item_type_video";a:2:{i:0;R:3;i:1;R:17670;}s:40:"1242:website-item_type_article_assistive";a:2:{i:0;R:3;i:1;R:17670;}s:43:"1242:website-item_type_collection_assistive";a:2:{i:0;R:3;i:1;R:17670;}s:42:"1242:website-item_type_community_assistive";a:2:{i:0;R:3;i:1;R:17670;}s:38:"1242:website-item_type_image_assistive";a:2:{i:0;R:3;i:1;R:17670;}s:42:"1242:website-item_type_image_map_assistive";a:2:{i:0;R:3;i:1;R:17670;}s:36:"1242:website-item_type_map_assistive";a:2:{i:0;R:3;i:1;R:17670;}s:39:"1242:website-item_type_person_assistive";a:2:{i:0;R:3;i:1;R:17670;}s:38:"1242:website-item_type_sound_assistive";a:2:{i:0;R:3;i:1;R:17670;}s:38:"1242:website-item_type_taxon_assistive";a:2:{i:0;R:3;i:1;R:17670;}s:38:"1242:website-item_type_video_assistive";a:2:{i:0;R:3;i:1;R:17670;}s:49:"1242:website-item_not_added_already_in_collection";a:2:{i:0;R:3;i:1;R:17670;}s:44:"1242:website-item_not_added_to_itself_notice";a:2:{i:0;R:3;i:1;R:17670;}s:47:"1242:website-item_not_added_to_collection_error";a:2:{i:0;R:3;i:1;R:17670;}s:49:"1242:website-item_not_updated_in_collection_error";a:2:{i:0;R:3;i:1;R:17670;}s:46:"1242:website-item_updated_in_collection_notice";a:2:{i:0;R:3;i:1;R:17670;}s:48:"1242:website-items_no_copy_none_selected_warning";a:2:{i:0;R:3;i:1;R:17670;}s:48:"1242:website-items_no_move_none_selected_warning";a:2:{i:0;R:3;i:1;R:17670;}s:50:"1242:website-items_no_remove_none_selected_warning";a:2:{i:0;R:3;i:1;R:17670;}s:40:"1242:website-items_with_count_semi_colon";a:2:{i:0;R:3;i:1;R:17670;}s:54:"1242:website-iucn_red_list_status_advisory_information";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-join_community_button";a:2:{i:0;R:3;i:1;R:17670;}s:36:"1242:website-join_eol_community_html";a:2:{i:0;R:3;i:1;R:17670;}s:33:"1242:website-join_eol_button_html";a:2:{i:0;R:3;i:1;R:17670;}s:32:"1242:website-joined_mailing_list";a:2:{i:0;R:3;i:1;R:17670;}s:28:"1242:website-joined_time_ago";a:2:{i:0;R:3;i:1;R:17670;}s:26:"1242:website-json_response";a:2:{i:0;R:3;i:1;R:17670;}s:46:"1242:website-just_pages_with_pictures_and_text";a:2:{i:0;R:3;i:1;R:17670;}s:18:"1242:website-label";a:2:{i:0;R:3;i:1;R:17670;}s:21:"1242:website-language";a:2:{i:0;R:3;i:1;R:17670;}s:22:"1242:website-languages";a:2:{i:0;R:3;i:1;R:17670;}s:51:"1242:website-language_selector_advisory_information";a:2:{i:0;R:3;i:1;R:17670;}s:32:"1242:website-language_with_count";a:2:{i:0;R:3;i:1;R:17670;}s:25:"1242:website-last_updated";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-last_updated_time_ago";a:2:{i:0;R:3;i:1;R:17670;}s:36:"1242:website-learn_about_collections";a:2:{i:0;R:3;i:1;R:17670;}s:41:"1242:website-learn_about_content_partners";a:2:{i:0;R:3;i:1;R:17670;}s:36:"1242:website-learn_about_communities";a:2:{i:0;R:3;i:1;R:17670;}s:28:"1242:website-learn_about_eol";a:2:{i:0;R:3;i:1;R:17670;}s:37:"1242:website-learn_about_contributing";a:2:{i:0;R:3;i:1;R:17670;}s:32:"1242:website-learn_about_joining";a:2:{i:0;R:3;i:1;R:17670;}s:46:"1242:website-learn_more_about_communities_link";a:2:{i:0;R:3;i:1;R:17670;}s:50:"1242:website-learn_more_about_names_for_this_taxon";a:2:{i:0;R:3;i:1;R:17670;}s:28:"1242:website-learn_more_link";a:2:{i:0;R:3;i:1;R:17670;}s:33:"1242:website-learn_more_lowercase";a:2:{i:0;R:3;i:1;R:17670;}s:35:"1242:website-leave_community_button";a:2:{i:0;R:3;i:1;R:17670;}s:28:"1242:website-leave_a_comment";a:2:{i:0;R:3;i:1;R:17670;}s:24:"1242:website-leave_reply";a:2:{i:0;R:3;i:1;R:17670;}s:30:"1242:website-left_content_area";a:2:{i:0;R:3;i:1;R:17670;}s:20:"1242:website-license";a:2:{i:0;R:3;i:1;R:17670;}s:40:"1242:website-license_all_rights_reserved";a:2:{i:0;R:3;i:1;R:17670;}s:26:"1242:website-license_cc_by";a:2:{i:0;R:3;i:1;R:17670;}s:30:"1242:website-license_cc_by_2_0";a:2:{i:0;R:3;i:1;R:17670;}s:30:"1242:website-license_cc_by_2_5";a:2:{i:0;R:3;i:1;R:17670;}s:30:"1242:website-license_cc_by_3_0";a:2:{i:0;R:3;i:1;R:17670;}s:29:"1242:website-license_cc_by_nc";a:2:{i:0;R:3;i:1;R:17670;}s:33:"1242:website-license_cc_by_nc_2_0";a:2:{i:0;R:3;i:1;R:17670;}s:33:"1242:website-license_cc_by_nc_2_5";a:2:{i:0;R:3;i:1;R:17670;}s:33:"1242:website-license_cc_by_nc_3_0";a:2:{i:0;R:3;i:1;R:17670;}s:32:"1242:website-license_cc_by_nc_sa";a:2:{i:0;R:3;i:1;R:17670;}s:36:"1242:website-license_cc_by_nc_sa_1_0";a:2:{i:0;R:3;i:1;R:17670;}s:36:"1242:website-license_cc_by_nc_sa_2_0";a:2:{i:0;R:3;i:1;R:17670;}s:36:"1242:website-license_cc_by_nc_sa_2_5";a:2:{i:0;R:3;i:1;R:17670;}s:36:"1242:website-license_cc_by_nc_sa_3_0";a:2:{i:0;R:3;i:1;R:17670;}s:29:"1242:website-license_cc_by_sa";a:2:{i:0;R:3;i:1;R:17670;}s:33:"1242:website-license_cc_by_sa_1_0";a:2:{i:0;R:3;i:1;R:17670;}s:33:"1242:website-license_cc_by_sa_2_0";a:2:{i:0;R:3;i:1;R:17670;}s:33:"1242:website-license_cc_by_sa_2_5";a:2:{i:0;R:3;i:1;R:17670;}s:33:"1242:website-license_cc_by_sa_3_0";a:2:{i:0;R:3;i:1;R:17670;}s:28:"1242:website-license_gnu_fdl";a:2:{i:0;R:3;i:1;R:17670;}s:28:"1242:website-license_gnu_gpl";a:2:{i:0;R:3;i:1;R:17670;}s:35:"1242:website-license_not_applicable";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-license_public_domain";a:2:{i:0;R:3;i:1;R:17670;}s:53:"1242:website-more_information_on_the_various_licenses";a:2:{i:0;R:3;i:1;R:17670;}s:22:"1242:website-licensing";a:2:{i:0;R:3;i:1;R:17670;}s:56:"1242:website-limits_the_number_of_returned_image_objects";a:2:{i:0;R:3;i:1;R:17670;}s:55:"1242:website-limits_the_number_of_returned_text_objects";a:2:{i:0;R:3;i:1;R:17670;}s:56:"1242:website-limits_the_number_of_returned_video_objects";a:2:{i:0;R:3;i:1;R:17670;}s:56:"1242:website-limits_the_number_of_returned_sound_objects";a:2:{i:0;R:3;i:1;R:17670;}s:54:"1242:website-limits_the_number_of_returned_map_objects";a:2:{i:0;R:3;i:1;R:17670;}s:55:"1242:website-limits_the_number_of_returned_iucn_objects";a:2:{i:0;R:3;i:1;R:17670;}s:22:"1242:website-link_name";a:2:{i:0;R:3;i:1;R:17670;}s:35:"1242:website-list_newsletter_emails";a:2:{i:0;R:3;i:1;R:17670;}s:32:"1242:website-listing_collections";a:2:{i:0;R:3;i:1;R:17670;}s:42:"1242:website-list_of_activity_combinations";a:2:{i:0;R:3;i:1;R:17670;}s:54:"1242:website-lists_the_identifiers_for_all_hierarchies";a:2:{i:0;R:3;i:1;R:17670;}s:23:"1242:website-literature";a:2:{i:0;R:3;i:1;R:17670;}s:39:"1242:website-literature_bhl_information";a:2:{i:0;R:3;i:1;R:17670;}s:32:"1242:website-literature_bhl_link";a:2:{i:0;R:3;i:1;R:17670;}s:29:"1242:website-literature_empty";a:2:{i:0;R:3;i:1;R:17670;}s:30:"1242:website-literature_header";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-literature_references";a:2:{i:0;R:3;i:1;R:17670;}s:27:"1242:website-location_colon";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-login_required_button";a:2:{i:0;R:3;i:1;R:17670;}s:35:"1242:website-logging_database_colon";a:2:{i:0;R:3;i:1;R:17670;}s:18:"1242:website-login";a:2:{i:0;R:3;i:1;R:17670;}s:25:"1242:website-login_header";a:2:{i:0;R:3;i:1;R:17670;}s:36:"1242:website-login_or_create_account";a:2:{i:0;R:3;i:1;R:17670;}s:36:"1242:website-login_to_the_website_as";a:2:{i:0;R:3;i:1;R:17670;}s:19:"1242:website-logout";a:2:{i:0;R:3;i:1;R:17670;}s:30:"1242:website-main_content_area";a:2:{i:0;R:3;i:1;R:17670;}s:32:"1242:website-main_database_colon";a:2:{i:0;R:3;i:1;R:17670;}s:39:"1242:website-main_master_database_colon";a:2:{i:0;R:3;i:1;R:17670;}s:26:"1242:website-maintained_by";a:2:{i:0;R:3;i:1;R:17670;}s:26:"1242:website-major_heading";a:2:{i:0;R:3;i:1;R:17670;}s:27:"1242:website-make_an_editor";a:2:{i:0;R:3;i:1;R:17670;}s:38:"1242:website-make_user_an_editor_title";a:2:{i:0;R:3;i:1;R:17670;}s:32:"1242:website-manage_your_profile";a:2:{i:0;R:3;i:1;R:17670;}s:23:"1242:website-managed_by";a:2:{i:0;R:3;i:1;R:17670;}s:43:"1242:website-managed_collections_with_count";a:2:{i:0;R:3;i:1;R:17670;}s:51:"1242:website-manager_endorse_collections_suggestion";a:2:{i:0;R:3;i:1;R:17670;}s:27:"1242:website-manager_parens";a:2:{i:0;R:3;i:1;R:17670;}s:21:"1242:website-map_from";a:2:{i:0;R:3;i:1;R:17670;}s:27:"1242:website-image_map_from";a:2:{i:0;R:3;i:1;R:17670;}s:28:"1242:website-maps_with_count";a:2:{i:0;R:3;i:1;R:17670;}s:23:"1242:website-maps_empty";a:2:{i:0;R:3;i:1;R:17670;}s:47:"1242:website-maps_empty_contribute_instructions";a:2:{i:0;R:3;i:1;R:17670;}s:35:"1242:website-maps_image_maps_header";a:2:{i:0;R:3;i:1;R:17670;}s:44:"1242:website-matching_users_found_with_count";a:2:{i:0;R:3;i:1;R:17670;}s:39:"1242:website-max_collection_items_error";a:2:{i:0;R:3;i:1;R:17670;}s:18:"1242:website-media";a:2:{i:0;R:3;i:1;R:17670;}s:29:"1242:website-media_list_empty";a:2:{i:0;R:3;i:1;R:17670;}s:36:"1242:website-media_list_empty_search";a:2:{i:0;R:3;i:1;R:17670;}s:53:"1242:website-media_list_empty_contribute_instructions";a:2:{i:0;R:3;i:1;R:17670;}s:29:"1242:website-media_with_count";a:2:{i:0;R:3;i:1;R:17670;}s:32:"1242:website-media_summary_empty";a:2:{i:0;R:3;i:1;R:17670;}s:56:"1242:website-media_summary_empty_contribute_instructions";a:2:{i:0;R:3;i:1;R:17670;}s:61:"1242:website-member_of_professional_society_credential_option";a:2:{i:0;R:3;i:1;R:17670;}s:22:"1242:website-member_of";a:2:{i:0;R:3;i:1;R:17670;}s:29:"1242:website-members_like_you";a:2:{i:0;R:3;i:1;R:17670;}s:31:"1242:website-members_with_count";a:2:{i:0;R:3;i:1;R:17670;}s:42:"1242:website-members_with_count_semi_colon";a:2:{i:0;R:3;i:1;R:17670;}s:27:"1242:website-merge_concepts";a:2:{i:0;R:3;i:1;R:17670;}s:26:"1242:website-message_colon";a:2:{i:0;R:3;i:1;R:17670;}s:33:"1242:website-meta_title_site_name";a:2:{i:0;R:3;i:1;R:17670;}s:19:"1242:website-method";a:2:{i:0;R:3;i:1;R:17670;}s:20:"1242:website-methods";a:2:{i:0;R:3;i:1;R:17670;}s:25:"1242:website-minimal_page";a:2:{i:0;R:3;i:1;R:17670;}s:20:"1242:website-monthly";a:2:{i:0;R:3;i:1;R:17670;}s:37:"1242:website-more_children_with_count";a:2:{i:0;R:3;i:1;R:17670;}s:32:"1242:website-most_active_members";a:2:{i:0;R:3;i:1;R:17670;}s:17:"1242:website-move";a:2:{i:0;R:3;i:1;R:17670;}s:22:"1242:website-move_down";a:2:{i:0;R:3;i:1;R:17670;}s:54:"1242:website-move_items_to_a_new_collection_with_count";a:2:{i:0;R:3;i:1;R:17670;}s:27:"1242:website-move_to_bottom";a:2:{i:0;R:3;i:1;R:17670;}s:24:"1242:website-move_to_top";a:2:{i:0;R:3;i:1;R:17670;}s:20:"1242:website-move_up";a:2:{i:0;R:3;i:1;R:17670;}s:58:"1242:website-moved_items_from_collection_with_count_notice";a:2:{i:0;R:3;i:1;R:17670;}s:65:"1242:website-must_be_associated_with_either_a_user_or_a_community";a:2:{i:0;R:3;i:1;R:17670;}s:43:"1242:website-must_provide_search_term_error";a:2:{i:0;R:3;i:1;R:17670;}s:39:"1242:website-must_be_checked_in_to_view";a:2:{i:0;R:3;i:1;R:17670;}s:39:"1242:website-must_be_checked_in_to_show";a:2:{i:0;R:3;i:1;R:17670;}s:50:"1242:website-must_be_less_than_128_characters_long";a:2:{i:0;R:3;i:1;R:17670;}s:30:"1242:website-must_be_logged_in";a:2:{i:0;R:3;i:1;R:17670;}s:24:"1242:website-my_activity";a:2:{i:0;R:3;i:1;R:17670;}s:20:"1242:website-my_info";a:2:{i:0;R:3;i:1;R:17670;}s:23:"1242:website-name_colon";a:2:{i:0;R:3;i:1;R:17670;}s:17:"1242:website-name";a:2:{i:0;R:3;i:1;R:17670;}s:44:"1242:website-name_not_in_select_an_alternate";a:2:{i:0;R:3;i:1;R:17670;}s:44:"1242:website-name_preferred_for_language_yes";a:2:{i:0;R:3;i:1;R:17670;}s:49:"1242:website-name_preferred_for_language_help_tip";a:2:{i:0;R:3;i:1;R:17670;}s:61:"1242:website-name_preferred_taxonomically_for_source_help_tip";a:2:{i:0;R:3;i:1;R:17670;}s:56:"1242:website-name_preferred_taxonomically_for_source_yes";a:2:{i:0;R:3;i:1;R:17670;}s:18:"1242:website-names";a:2:{i:0;R:3;i:1;R:17670;}s:25:"1242:website-names_filter";a:2:{i:0;R:3;i:1;R:17670;}s:41:"1242:website-names_children_column_header";a:2:{i:0;R:3;i:1;R:17670;}s:31:"1242:website-names_common_empty";a:2:{i:0;R:3;i:1;R:17670;}s:59:"1242:website-names_common_list_by_language_assistive_header";a:2:{i:0;R:3;i:1;R:17670;}s:41:"1242:website-names_curation_column_header";a:2:{i:0;R:3;i:1;R:17670;}s:24:"1242:website-names_et_al";a:2:{i:0;R:3;i:1;R:17670;}s:30:"1242:website-names_explanation";a:2:{i:0;R:3;i:1;R:17670;}s:37:"1242:website-names_name_column_header";a:2:{i:0;R:3;i:1;R:17670;}s:40:"1242:website-names_parents_column_header";a:2:{i:0;R:3;i:1;R:17670;}s:42:"1242:website-names_preferred_column_header";a:2:{i:0;R:3;i:1;R:17670;}s:45:"1242:website-names_relationship_column_header";a:2:{i:0;R:3;i:1;R:17670;}s:40:"1242:website-names_sources_column_header";a:2:{i:0;R:3;i:1;R:17670;}s:39:"1242:website-names_status_column_header";a:2:{i:0;R:3;i:1;R:17670;}s:33:"1242:website-names_synonyms_empty";a:2:{i:0;R:3;i:1;R:17670;}s:26:"1242:website-curator_colon";a:2:{i:0;R:3;i:1;R:17670;}s:28:"1242:website-moderator_colon";a:2:{i:0;R:3;i:1;R:17670;}s:47:"1242:website-main_species_page_link_with_spaces";a:2:{i:0;R:3;i:1;R:17670;}s:18:"1242:website-never";a:2:{i:0;R:3;i:1;R:17670;}s:27:"1242:website-new_collection";a:2:{i:0;R:3;i:1;R:17670;}s:33:"1242:website-new_contact_us_topic";a:2:{i:0;R:3;i:1;R:17670;}s:26:"1242:website-new_news_item";a:2:{i:0;R:3;i:1;R:17670;}s:22:"1242:website-news_date";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-new_search_suggestion";a:2:{i:0;R:3;i:1;R:17670;}s:43:"1242:website-news_item_date_as_shown_to_use";a:2:{i:0;R:3;i:1;R:17670;}s:43:"1242:website-news_item_is_visible_on_websit";a:2:{i:0;R:3;i:1;R:17670;}s:22:"1242:website-news_item";a:2:{i:0;R:3;i:1;R:17670;}s:28:"1242:website-news_item_title";a:2:{i:0;R:3;i:1;R:17670;}s:23:"1242:website-news_items";a:2:{i:0;R:3;i:1;R:17670;}s:21:"1242:website-newsfeed";a:2:{i:0;R:3;i:1;R:17670;}s:41:"1242:website-newsfeed_help_for_collection";a:2:{i:0;R:3;i:1;R:17670;}s:40:"1242:website-newsfeed_help_for_community";a:2:{i:0;R:3;i:1;R:17670;}s:41:"1242:website-newsfeed_help_for_focus_list";a:2:{i:0;R:3;i:1;R:17670;}s:38:"1242:website-newsfeed_help_for_profile";a:2:{i:0;R:3;i:1;R:17670;}s:36:"1242:website-newsfeed_help_for_taxon";a:2:{i:0;R:3;i:1;R:17670;}s:40:"1242:website-newsfeed_help_for_watchlist";a:2:{i:0;R:3;i:1;R:17670;}s:23:"1242:website-new_upload";a:2:{i:0;R:3;i:1;R:17670;}s:21:"1242:website-new_user";a:2:{i:0;R:3;i:1;R:17670;}s:17:"1242:website-next";a:2:{i:0;R:3;i:1;R:17670;}s:30:"1242:website-no_active_members";a:2:{i:0;R:3;i:1;R:17670;}s:33:"1242:website-no_collections_apply";a:2:{i:0;R:3;i:1;R:17670;}s:50:"1242:website-no_comments_are_available_for_subject";a:2:{i:0;R:3;i:1;R:17670;}s:43:"1242:website-no_comments_have_been_left_yet";a:2:{i:0;R:3;i:1;R:17670;}s:36:"1242:website-no_errors_are_available";a:2:{i:0;R:3;i:1;R:17670;}s:43:"1242:website-no_harvesting_logs_for_this_da";a:2:{i:0;R:3;i:1;R:17670;}s:54:"1242:website-no_items_were_copied_to_collections_error";a:2:{i:0;R:3;i:1;R:17670;}s:17:"1242:website-none";a:2:{i:0;R:3;i:1;R:17670;}s:43:"1242:website-no_news_items_are_available_ma";a:2:{i:0;R:3;i:1;R:17670;}s:33:"1242:website-num_content_partners";a:2:{i:0;R:3;i:1;R:17670;}s:29:"1242:website-num_data_objects";a:2:{i:0;R:3;i:1;R:17670;}s:51:"1242:website-no_record_found_matching_your_criteria";a:2:{i:0;R:3;i:1;R:17670;}s:29:"1242:website-no_related_names";a:2:{i:0;R:3;i:1;R:17670;}s:27:"1242:website-no_results_for";a:2:{i:0;R:3;i:1;R:17670;}s:43:"1242:website-no_search_suggestions_are_avai";a:2:{i:0;R:3;i:1;R:17670;}s:27:"1242:website-no_tasks_found";a:2:{i:0;R:3;i:1;R:17670;}s:43:"1242:website-no_survey_responses_are_availa";a:2:{i:0;R:3;i:1;R:17670;}s:27:"1242:website-not_applicable";a:2:{i:0;R:3;i:1;R:17670;}s:26:"1242:website-not_evaluated";a:2:{i:0;R:3;i:1;R:17670;}s:52:"1242:website-not_recognized_by_available_hierarchies";a:2:{i:0;R:3;i:1;R:17670;}s:38:"1242:website-not_yet_implemented_error";a:2:{i:0;R:3;i:1;R:17670;}s:17:"1242:website-note";a:2:{i:0;R:3;i:1;R:17670;}s:40:"1242:website-note_about_homonym_problems";a:2:{i:0;R:3;i:1;R:17670;}s:18:"1242:website-notes";a:2:{i:0;R:3;i:1;R:17670;}s:36:"1242:website-notes_not_shown_to_user";a:2:{i:0;R:3;i:1;R:17670;}s:31:"1242:website-note_all_times_utc";a:2:{i:0;R:3;i:1;R:17670;}s:43:"1242:website-note_that_it_may_take_a_few_mi";a:2:{i:0;R:3;i:1;R:17670;}s:48:"1242:website-notification_frequency_daily_digest";a:2:{i:0;R:3;i:1;R:17670;}s:52:"1242:website-notification_frequency_send_immediately";a:2:{i:0;R:3;i:1;R:17670;}s:41:"1242:website-notification_frequency_never";a:2:{i:0;R:3;i:1;R:17670;}s:42:"1242:website-notification_frequency_weekly";a:2:{i:0;R:3;i:1;R:17670;}s:49:"1242:website-notification_frequency_newsfeed_only";a:2:{i:0;R:3;i:1;R:17670;}s:53:"1242:website-notifications_and_messages_review_notice";a:2:{i:0;R:3;i:1;R:17670;}s:42:"1242:website-email_updates_for_eol_addicts";a:2:{i:0;R:3;i:1;R:17670;}s:42:"1242:website-email_updates_for_eol_members";a:2:{i:0;R:3;i:1;R:17670;}s:35:"1242:website-notifications_tab_name";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-taxon_not_found_error";a:2:{i:0;R:3;i:1;R:17670;}s:30:"1242:website-not_published_yet";a:2:{i:0;R:3;i:1;R:17670;}s:42:"1242:website-not_shown_on_the_website_note";a:2:{i:0;R:3;i:1;R:17670;}s:45:"1242:website-no_uploaded_content_is_available";a:2:{i:0;R:3;i:1;R:17670;}s:36:"1242:website-no_users_matched_search";a:2:{i:0;R:3;i:1;R:17670;}s:43:"1242:website-no_user_submitted_data_objects";a:2:{i:0;R:3;i:1;R:17670;}s:46:"1242:website-nucleotide_sequences_ncbi_mission";a:2:{i:0;R:3;i:1;R:17670;}s:47:"1242:website-nucleotide_sequences_ncbi_database";a:2:{i:0;R:3;i:1;R:17670;}s:47:"1242:website-nucleotide_sequences_proteins_link";a:2:{i:0;R:3;i:1;R:17670;}s:28:"1242:website-object_curation";a:2:{i:0;R:3;i:1;R:17670;}s:19:"1242:website-object";a:2:{i:0;R:3;i:1;R:17670;}s:28:"1242:website-objects_curated";a:2:{i:0;R:3;i:1;R:17670;}s:26:"1242:website-object_status";a:2:{i:0;R:3;i:1;R:17670;}s:37:"1242:website-object_status_all_option";a:2:{i:0;R:3;i:1;R:17670;}s:41:"1242:website-object_status_trusted_option";a:2:{i:0;R:3;i:1;R:17670;}s:44:"1242:website-object_status_unreviewed_option";a:2:{i:0;R:3;i:1;R:17670;}s:43:"1242:website-object_status_untrusted_option";a:2:{i:0;R:3;i:1;R:17670;}s:24:"1242:website-object_type";a:2:{i:0;R:3;i:1;R:17670;}s:35:"1242:website-object_type_all_option";a:2:{i:0;R:3;i:1;R:17670;}s:42:"1242:website-object_type_collection_option";a:2:{i:0;R:3;i:1;R:17670;}s:41:"1242:website-object_type_community_option";a:2:{i:0;R:3;i:1;R:17670;}s:37:"1242:website-object_type_image_option";a:2:{i:0;R:3;i:1;R:17670;}s:37:"1242:website-object_type_sound_option";a:2:{i:0;R:3;i:1;R:17670;}s:45:"1242:website-object_type_taxon_concept_option";a:2:{i:0;R:3;i:1;R:17670;}s:36:"1242:website-object_type_text_option";a:2:{i:0;R:3;i:1;R:17670;}s:36:"1242:website-object_type_user_option";a:2:{i:0;R:3;i:1;R:17670;}s:37:"1242:website-object_type_video_option";a:2:{i:0;R:3;i:1;R:17670;}s:30:"1242:website-object_visibility";a:2:{i:0;R:3;i:1;R:17670;}s:41:"1242:website-object_visibility_all_option";a:2:{i:0;R:3;i:1;R:17670;}s:45:"1242:website-object_visibility_visible_option";a:2:{i:0;R:3;i:1;R:17670;}s:47:"1242:website-object_visibility_invisible_option";a:2:{i:0;R:3;i:1;R:17670;}s:69:"1242:website-older_version_of_latest_published_data_object_title_link";a:2:{i:0;R:3;i:1;R:17670;}s:63:"1242:website-older_version_of_latest_published_data_object_link";a:2:{i:0;R:3;i:1;R:17670;}s:47:"1242:website-percentage_of_children_with_images";a:2:{i:0;R:3;i:1;R:17670;}s:45:"1242:website-percentage_of_children_with_text";a:2:{i:0;R:3;i:1;R:17670;}s:41:"1242:website-number_of_taxa_at_this_entry";a:2:{i:0;R:3;i:1;R:17670;}s:51:"1242:website-number_of_trusted_images_at_this_entry";a:2:{i:0;R:3;i:1;R:17670;}s:57:"1242:website-number_of_trusted_text_objects_at_this_entry";a:2:{i:0;R:3;i:1;R:17670;}s:54:"1242:website-number_of_unreviewed_images_at_this_entry";a:2:{i:0;R:3;i:1;R:17670;}s:60:"1242:website-number_of_unreviewed_text_objects_at_this_entry";a:2:{i:0;R:3;i:1;R:17670;}s:42:"1242:website-only_multi_search_suggestions";a:2:{i:0;R:3;i:1;R:17670;}s:43:"1242:website-only_show_authoritative_conten";a:2:{i:0;R:3;i:1;R:17670;}s:42:"1242:website-only_show_unapproved_curators";a:2:{i:0;R:3;i:1;R:17670;}s:31:"1242:website-on_time_col_header";a:2:{i:0;R:3;i:1;R:17670;}s:33:"1242:website-option_please_select";a:2:{i:0;R:3;i:1;R:17670;}s:48:"1242:website-or_add_it_to_an_existing_collection";a:2:{i:0;R:3;i:1;R:17670;}s:47:"1242:website-or_add_it_to_an_existing_community";a:2:{i:0;R:3;i:1;R:17670;}s:48:"1242:website-or_copy_them_to_existing_collection";a:2:{i:0;R:3;i:1;R:17670;}s:31:"1242:website-or_email_education";a:2:{i:0;R:3;i:1;R:17670;}s:48:"1242:website-or_move_them_to_existing_collection";a:2:{i:0;R:3;i:1;R:17670;}s:28:"1242:website-original_object";a:2:{i:0;R:3;i:1;R:17670;}s:21:"1242:website-original";a:2:{i:0;R:3;i:1;R:17670;}s:36:"1242:website-other_us_dollars_amount";a:2:{i:0;R:3;i:1;R:17670;}s:46:"1242:website-other_collection_items_with_count";a:2:{i:0;R:3;i:1;R:17670;}s:45:"1242:website-other_community_items_with_count";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-other_taxa_with_count";a:2:{i:0;R:3;i:1;R:17670;}s:20:"1242:website-outlink";a:2:{i:0;R:3;i:1;R:17670;}s:21:"1242:website-overview";a:2:{i:0;R:3;i:1;R:17670;}s:27:"1242:website-page_linked_to";a:2:{i:0;R:3;i:1;R:17670;}s:22:"1242:website-page_name";a:2:{i:0;R:3;i:1;R:17670;}s:28:"1242:website-page_navigation";a:2:{i:0;R:3;i:1;R:17670;}s:27:"1242:website-page_not_found";a:2:{i:0;R:3;i:1;R:17670;}s:27:"1242:website-page_reference";a:2:{i:0;R:3;i:1;R:17670;}s:17:"1242:website-page";a:2:{i:0;R:3;i:1;R:17670;}s:29:"1242:website-page_results_avg";a:2:{i:0;R:3;i:1;R:17670;}s:22:"1242:website-page_urls";a:2:{i:0;R:3;i:1;R:17670;}s:18:"1242:website-pages";a:2:{i:0;R:3;i:1;R:17670;}s:24:"1242:website-pages_title";a:2:{i:0;R:3;i:1;R:17670;}s:29:"1242:website-pages_with_count";a:2:{i:0;R:3;i:1;R:17670;}s:38:"1242:website-page_statistics_and_tools";a:2:{i:0;R:3;i:1;R:17670;}s:41:"1242:website-pages_with_pictures_and_text";a:2:{i:0;R:3;i:1;R:17670;}s:40:"1242:website-pages_with_pictures_or_text";a:2:{i:0;R:3;i:1;R:17670;}s:28:"1242:website-page_statistics";a:2:{i:0;R:3;i:1;R:17670;}s:40:"1242:website-page_statistics_explanation";a:2:{i:0;R:3;i:1;R:17670;}s:26:"1242:website-page_views_th";a:2:{i:0;R:3;i:1;R:17670;}s:39:"1242:website-pages_curator_section_link";a:2:{i:0;R:3;i:1;R:17670;}s:37:"1242:website-pages_admin_section_link";a:2:{i:0;R:3;i:1;R:17670;}s:37:"1242:website-pages_method_description";a:2:{i:0;R:3;i:1;R:17670;}s:35:"1242:website-pagination_page_number";a:2:{i:0;R:3;i:1;R:17670;}s:28:"1242:website-pagination_next";a:2:{i:0;R:3;i:1;R:17670;}s:39:"1242:website-pagination_next_with_count";a:2:{i:0;R:3;i:1;R:17670;}s:32:"1242:website-pagination_previous";a:2:{i:0;R:3;i:1;R:17670;}s:43:"1242:website-pagination_previous_with_count";a:2:{i:0;R:3;i:1;R:17670;}s:23:"1242:website-parameters";a:2:{i:0;R:3;i:1;R:17670;}s:32:"1242:website-partner_information";a:2:{i:0;R:3;i:1;R:17670;}s:29:"1242:website-partnering_steps";a:2:{i:0;R:3;i:1;R:17670;}s:25:"1242:website-partner_page";a:2:{i:0;R:3;i:1;R:17670;}s:20:"1242:website-partner";a:2:{i:0;R:3;i:1;R:17670;}s:46:"1242:website-password_must_be_4to16_characters";a:2:{i:0;R:3;i:1;R:17670;}s:27:"1242:website-password_colon";a:2:{i:0;R:3;i:1;R:17670;}s:18:"1242:website-pause";a:2:{i:0;R:3;i:1;R:17670;}s:30:"1242:website-people_with_count";a:2:{i:0;R:3;i:1;R:17670;}s:50:"1242:website-percentage_of_descendants_with_images";a:2:{i:0;R:3;i:1;R:17670;}s:48:"1242:website-percentage_of_descendants_with_text";a:2:{i:0;R:3;i:1;R:17670;}s:22:"1242:website-permalink";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-personal_profile_menu";a:2:{i:0;R:3;i:1;R:17670;}s:27:"1242:website-personal_space";a:2:{i:0;R:3;i:1;R:17670;}s:47:"1242:website-please_ask_big_before_changing_toc";a:2:{i:0;R:3;i:1;R:17670;}s:49:"1242:website-please_confirm_your_donation_details";a:2:{i:0;R:3;i:1;R:17670;}s:43:"1242:website-please_note_that_some_of_these";a:2:{i:0;R:3;i:1;R:17670;}s:48:"1242:website-please_publish_this_resource_notice";a:2:{i:0;R:3;i:1;R:17670;}s:19:"1242:website-please";a:2:{i:0;R:3;i:1;R:17670;}s:27:"1242:website-please_refresh";a:2:{i:0;R:3;i:1;R:17670;}s:44:"1242:website-please_indicate_curation_reason";a:2:{i:0;R:3;i:1;R:17670;}s:40:"1242:website-please_state_one_credential";a:2:{i:0;R:3;i:1;R:17670;}s:45:"1242:website-please_note_wiki_etc_are_not_spm";a:2:{i:0;R:3;i:1;R:17670;}s:24:"1242:website-please_wait";a:2:{i:0;R:3;i:1;R:17670;}s:25:"1242:website-post_comment";a:2:{i:0;R:3;i:1;R:17670;}s:55:"1242:website-preferred_common_name_advisory_information";a:2:{i:0;R:3;i:1;R:17670;}s:23:"1242:website-press_room";a:2:{i:0;R:3;i:1;R:17670;}s:28:"1242:website-preview_changes";a:2:{i:0;R:3;i:1;R:17670;}s:71:"1242:website-preview_version_of_latest_published_data_object_title_link";a:2:{i:0;R:3;i:1;R:17670;}s:20:"1242:website-preview";a:2:{i:0;R:3;i:1;R:17670;}s:33:"1242:website-previously_published";a:2:{i:0;R:3;i:1;R:17670;}s:37:"1242:website-proceed_to_checkout_page";a:2:{i:0;R:3;i:1;R:17670;}s:25:"1242:website-process_name";a:2:{i:0;R:3;i:1;R:17670;}s:26:"1242:website-profile_colon";a:2:{i:0;R:3;i:1;R:17670;}s:20:"1242:website-profile";a:2:{i:0;R:3;i:1;R:17670;}s:43:"1242:website-profile_image_alt_text_curator";a:2:{i:0;R:3;i:1;R:17670;}s:42:"1242:website-profile_image_alt_text_member";a:2:{i:0;R:3;i:1;R:17670;}s:29:"1242:website-profile_newsfeed";a:2:{i:0;R:3;i:1;R:17670;}s:28:"1242:website-profile_picture";a:2:{i:0;R:3;i:1;R:17670;}s:20:"1242:website-project";a:2:{i:0;R:3;i:1;R:17670;}s:21:"1242:website-provider";a:2:{i:0;R:3;i:1;R:17670;}s:22:"1242:website-providers";a:2:{i:0;R:3;i:1;R:17670;}s:19:"1242:website-public";a:2:{i:0;R:3;i:1;R:17670;}s:26:"1242:website-public_domain";a:2:{i:0;R:3;i:1;R:17670;}s:30:"1242:website-publish_after_utc";a:2:{i:0;R:3;i:1;R:17670;}s:28:"1242:website-publish_changes";a:2:{i:0;R:3;i:1;R:17670;}s:22:"1242:website-published";a:2:{i:0;R:3;i:1;R:17670;}s:29:"1242:website-published_parens";a:2:{i:0;R:3;i:1;R:17670;}s:43:"1242:website-publish_item_based_on_time_set";a:2:{i:0;R:3;i:1;R:17670;}s:20:"1242:website-publish";a:2:{i:0;R:3;i:1;R:17670;}s:30:"1242:website-publish_requested";a:2:{i:0;R:3;i:1;R:17670;}s:30:"1242:website-punctuation_comma";a:2:{i:0;R:3;i:1;R:17670;}s:35:"1242:website-punctuation_semi_colon";a:2:{i:0;R:3;i:1;R:17670;}s:22:"1242:website-quarterly";a:2:{i:0;R:3;i:1;R:17670;}s:28:"1242:website-rails_databases";a:2:{i:0;R:3;i:1;R:17670;}s:30:"1242:website-rails_environment";a:2:{i:0;R:3;i:1;R:17670;}s:37:"1242:website-rank_recognized_by_agent";a:2:{i:0;R:3;i:1;R:17670;}s:43:"1242:website-rank_recognized_by_from_source";a:2:{i:0;R:3;i:1;R:17670;}s:43:"1242:website-rank_recognized_by_agent_colon";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-rated_by_count_people";a:2:{i:0;R:3;i:1;R:17670;}s:32:"1242:website-rating_added_notice";a:2:{i:0;R:3;i:1;R:17670;}s:35:"1242:website-rating_not_added_error";a:2:{i:0;R:3;i:1;R:17670;}s:22:"1242:website-recaptcha";a:2:{i:0;R:3;i:1;R:17670;}s:50:"1242:website-recaptcha_incorrect_error_with_anchor";a:2:{i:0;R:3;i:1;R:17670;}s:39:"1242:website-recent_eol_member_activity";a:2:{i:0;R:3;i:1;R:17670;}s:27:"1242:website-recent_updates";a:2:{i:0;R:3;i:1;R:17670;}s:29:"1242:website-recently_visited";a:2:{i:0;R:3;i:1;R:17670;}s:23:"1242:website-recipients";a:2:{i:0;R:3;i:1;R:17670;}s:36:"1242:website-recognized_by_as_a_rank";a:2:{i:0;R:3;i:1;R:17670;}s:48:"1242:website-recognized_by_from_source_as_a_rank";a:2:{i:0;R:3;i:1;R:17670;}s:26:"1242:website-recognized_by";a:2:{i:0;R:3;i:1;R:17670;}s:29:"1242:website-record_not_found";a:2:{i:0;R:3;i:1;R:17670;}s:37:"1242:website-related_names_with_count";a:2:{i:0;R:3;i:1;R:17670;}s:37:"1242:website-remove_curatorship_colon";a:2:{i:0;R:3;i:1;R:17670;}s:43:"1242:website-remove_data_object_association";a:2:{i:0;R:3;i:1;R:17670;}s:30:"1242:website-remove_membership";a:2:{i:0;R:3;i:1;R:17670;}s:19:"1242:website-remove";a:2:{i:0;R:3;i:1;R:17670;}s:18:"1242:website-reply";a:2:{i:0;R:3;i:1;R:17670;}s:37:"1242:website-revoke_full_curator_link";a:2:{i:0;R:3;i:1;R:17670;}s:32:"1242:website-revoke_manager_link";a:2:{i:0;R:3;i:1;R:17670;}s:55:"1242:website-removed_count_items_from_collection_notice";a:2:{i:0;R:3;i:1;R:17670;}s:39:"1242:website-request_mailing_list_colon";a:2:{i:0;R:3;i:1;R:17670;}s:20:"1242:website-request";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-required_form_element";a:2:{i:0;R:3;i:1;R:17670;}s:53:"1242:website-reset_password_enter_new_password_notice";a:2:{i:0;R:3;i:1;R:17670;}s:60:"1242:website-reset_password_instructions_sent_to_user_notice";a:2:{i:0;R:3;i:1;R:17670;}s:47:"1242:website-reset_password_token_expired_error";a:2:{i:0;R:3;i:1;R:17670;}s:21:"1242:website-resource";a:2:{i:0;R:3;i:1;R:17670;}s:22:"1242:website-resources";a:2:{i:0;R:3;i:1;R:17670;}s:29:"1242:website-response_formats";a:2:{i:0;R:3;i:1;R:17670;}s:21:"1242:website-response";a:2:{i:0;R:3;i:1;R:17670;}s:29:"1242:website-results_per_page";a:2:{i:0;R:3;i:1;R:17670;}s:20:"1242:website-results";a:2:{i:0;R:3;i:1;R:17670;}s:27:"1242:website-results_offset";a:2:{i:0;R:3;i:1;R:17670;}s:51:"1242:website-return_common_names_for_the_page_taxon";a:2:{i:0;R:3;i:1;R:17670;}s:19:"1242:website-return";a:2:{i:0;R:3;i:1;R:17670;}s:51:"1242:website-return_all_common_names_for_this_taxon";a:2:{i:0;R:3;i:1;R:17670;}s:47:"1242:website-return_all_synonyms_for_this_taxon";a:2:{i:0;R:3;i:1;R:17670;}s:63:"1242:website-returns_all_metadata_about_a_particular_collection";a:2:{i:0;R:3;i:1;R:17670;}s:64:"1242:website-returns_all_metadata_about_a_particular_data_object";a:2:{i:0;R:3;i:1;R:17670;}s:59:"1242:website-returns_either_a_positive_or_negative_response";a:2:{i:0;R:3;i:1;R:17670;}s:22:"1242:website-revisions";a:2:{i:0;R:3;i:1;R:17670;}s:27:"1242:website-richness_score";a:2:{i:0;R:3;i:1;R:17670;}s:21:"1242:website-rss_feed";a:2:{i:0;R:3;i:1;R:17670;}s:35:"1242:website-save_comment_lowercase";a:2:{i:0;R:3;i:1;R:17670;}s:51:"1242:website-save_curated_association_submit_button";a:2:{i:0;R:3;i:1;R:17670;}s:32:"1242:website-save_email_settings";a:2:{i:0;R:3;i:1;R:17670;}s:17:"1242:website-save";a:2:{i:0;R:3;i:1;R:17670;}s:28:"1242:website-scientific_name";a:2:{i:0;R:3;i:1;R:17670;}s:36:"1242:website-sci_name_avg_table_head";a:2:{i:0;R:3;i:1;R:17670;}s:19:"1242:website-search";a:2:{i:0;R:3;i:1;R:17670;}s:38:"1242:website-search_by_term_page_title";a:2:{i:0;R:3;i:1;R:17670;}s:50:"1242:website-search_by_provider_method_description";a:2:{i:0;R:3;i:1;R:17670;}s:52:"1242:website-search_for_comments_containing_the_text";a:2:{i:0;R:3;i:1;R:17670;}s:43:"1242:website-search_for_curators_containing";a:2:{i:0;R:3;i:1;R:17670;}s:40:"1242:website-search_for_items_containing";a:2:{i:0;R:3;i:1;R:17670;}s:43:"1242:website-search_for_messages_containing";a:2:{i:0;R:3;i:1;R:17670;}s:40:"1242:website-search_for_terms_containing";a:2:{i:0;R:3;i:1;R:17670;}s:85:"1242:website-search_for_users_containing_this_in_their_username_name_or_email_address";a:2:{i:0;R:3;i:1;R:17670;}s:36:"1242:website-search_log_report_intro";a:2:{i:0;R:3;i:1;R:17670;}s:38:"1242:website-search_method_description";a:2:{i:0;R:3;i:1;R:17670;}s:30:"1242:website-search_next_label";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-search_previous_label";a:2:{i:0;R:3;i:1;R:17670;}s:46:"1242:website-search_input_advisory_information";a:2:{i:0;R:3;i:1;R:17670;}s:27:"1242:website-search_results";a:2:{i:0;R:3;i:1;R:17670;}s:31:"1242:website-search_field_label";a:2:{i:0;R:3;i:1;R:17670;}s:31:"1242:website-search_placeholder";a:2:{i:0;R:3;i:1;R:17670;}s:42:"1242:website-search_suggestion_admin_intro";a:2:{i:0;R:3;i:1;R:17670;}s:38:"1242:website-search_suggestion_created";a:2:{i:0;R:3;i:1;R:17670;}s:38:"1242:website-search_suggestion_updated";a:2:{i:0;R:3;i:1;R:17670;}s:31:"1242:website-search_suggestions";a:2:{i:0;R:3;i:1;R:17670;}s:38:"1242:website-search_term_detail_report";a:2:{i:0;R:3;i:1;R:17670;}s:32:"1242:website-search_term_reports";a:2:{i:0;R:3;i:1;R:17670;}s:38:"1242:website-search_term_reports_title";a:2:{i:0;R:3;i:1;R:17670;}s:24:"1242:website-search_term";a:2:{i:0;R:3;i:1;R:17670;}s:28:"1242:website-search_the_site";a:2:{i:0;R:3;i:1;R:17670;}s:40:"1242:website-see_all_of_your_collections";a:2:{i:0;R:3;i:1;R:17670;}s:40:"1242:website-see_all_of_your_communities";a:2:{i:0;R:3;i:1;R:17670;}s:52:"1242:website-see_all_classifications_with_count_html";a:2:{i:0;R:3;i:1;R:17670;}s:48:"1242:website-see_all_collections_with_count_html";a:2:{i:0;R:3;i:1;R:17670;}s:57:"1242:website-see_all_comments_with_count_for_text_or_rate";a:2:{i:0;R:3;i:1;R:17670;}s:48:"1242:website-see_all_communities_with_count_html";a:2:{i:0;R:3;i:1;R:17670;}s:52:"1242:website-see_all_featured_collections_with_count";a:2:{i:0;R:3;i:1;R:17670;}s:44:"1242:website-see_all_updates_with_count_html";a:2:{i:0;R:3;i:1;R:17670;}s:31:"1242:website-see_all_media_link";a:2:{i:0;R:3;i:1;R:17670;}s:39:"1242:website-see_all_editors_with_count";a:2:{i:0;R:3;i:1;R:17670;}s:21:"1242:website-see_more";a:2:{i:0;R:3;i:1;R:17670;}s:22:"1242:website-see_notes";a:2:{i:0;R:3;i:1;R:17670;}s:43:"1242:website-select_a_hierarchy_around_whic";a:2:{i:0;R:3;i:1;R:17670;}s:41:"1242:website-select_an_item_from_the_menu";a:2:{i:0;R:3;i:1;R:17670;}s:31:"1242:website-select_tool_and_go";a:2:{i:0;R:3;i:1;R:17670;}s:25:"1242:website-select_colon";a:2:{i:0;R:3;i:1;R:17670;}s:25:"1242:website-select_topic";a:2:{i:0;R:3;i:1;R:17670;}s:51:"1242:website-selected_language_advisory_information";a:2:{i:0;R:3;i:1;R:17670;}s:27:"1242:website-selected_items";a:2:{i:0;R:3;i:1;R:17670;}s:31:"1242:website-send_contact_email";a:2:{i:0;R:3;i:1;R:17670;}s:29:"1242:website-send_email_colon";a:2:{i:0;R:3;i:1;R:17670;}s:17:"1242:website-send";a:2:{i:0;R:3;i:1;R:17670;}s:38:"1242:website-sent_invitations_to_users";a:2:{i:0;R:3;i:1;R:17670;}s:40:"1242:website-sep_emails_with_commas_note";a:2:{i:0;R:3;i:1;R:17670;}s:30:"1242:website-server_ip_address";a:2:{i:0;R:3;i:1;R:17670;}s:28:"1242:website-set_as_exemplar";a:2:{i:0;R:3;i:1;R:17670;}s:31:"1242:website-share_a_collection";a:2:{i:0;R:3;i:1;R:17670;}s:36:"1242:website-show_email_message_area";a:2:{i:0;R:3;i:1;R:17670;}s:48:"1242:website-show_data_from_all_content_partners";a:2:{i:0;R:3;i:1;R:17670;}s:27:"1242:website-show_full_tree";a:2:{i:0;R:3;i:1;R:17670;}s:43:"1242:website-showing_errors_the_error_log_f";a:2:{i:0;R:3;i:1;R:17670;}s:31:"1242:website-showing_procs_from";a:2:{i:0;R:3;i:1;R:17670;}s:20:"1242:website-showing";a:2:{i:0;R:3;i:1;R:17670;}s:37:"1242:website-shown_to_the_user_parens";a:2:{i:0;R:3;i:1;R:17670;}s:47:"1242:website-shown_to_user_as_the_title_of_page";a:2:{i:0;R:3;i:1;R:17670;}s:17:"1242:website-show";a:2:{i:0;R:3;i:1;R:17670;}s:32:"1242:website-show_status_message";a:2:{i:0;R:3;i:1;R:17670;}s:23:"1242:website-show_tasks";a:2:{i:0;R:3;i:1;R:17670;}s:33:"1242:website-show_warning_message";a:2:{i:0;R:3;i:1;R:17670;}s:20:"1242:website-sign_in";a:2:{i:0;R:3;i:1;R:17670;}s:61:"1242:website-sign_in_remember_me_disallowed_for_admins_notice";a:2:{i:0;R:3;i:1;R:17670;}s:38:"1242:website-sign_in_successful_notice";a:2:{i:0;R:3;i:1;R:17670;}s:39:"1242:website-sign_in_unsuccessful_error";a:2:{i:0;R:3;i:1;R:17670;}s:21:"1242:website-sign_out";a:2:{i:0;R:3;i:1;R:17670;}s:21:"1242:website-site_cms";a:2:{i:0;R:3;i:1;R:17670;}s:29:"1242:website-site_information";a:2:{i:0;R:3;i:1;R:17670;}s:26:"1242:website-site_language";a:2:{i:0;R:3;i:1;R:17670;}s:31:"1242:website-site_settings_menu";a:2:{i:0;R:3;i:1;R:17670;}s:28:"1242:website-skip_to_content";a:2:{i:0;R:3;i:1;R:17670;}s:31:"1242:website-skip_to_navigation";a:2:{i:0;R:3;i:1;R:17670;}s:38:"1242:website-skip_to_table_of_contents";a:2:{i:0;R:3;i:1;R:17670;}s:48:"1242:website-social_sharing_twitter_tweet_button";a:2:{i:0;R:3;i:1;R:17670;}s:53:"1242:website-social_sharing_twitter_follow_eol_button";a:2:{i:0;R:3;i:1;R:17670;}s:50:"1242:website-some_required_fields_were_not_entered";a:2:{i:0;R:3;i:1;R:17670;}s:27:"1242:website-sort_by_button";a:2:{i:0;R:3;i:1;R:17670;}s:26:"1242:website-sort_by_label";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-sort_by_newest_option";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-sort_by_oldest_option";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-sort_by_rating_option";a:2:{i:0;R:3;i:1;R:17670;}s:36:"1242:website-sort_by_richness_option";a:2:{i:0;R:3;i:1;R:17670;}s:40:"1242:website-sort_by_alphabetical_option";a:2:{i:0;R:3;i:1;R:17670;}s:48:"1242:website-sort_by_reverse_alphabetical_option";a:2:{i:0;R:3;i:1;R:17670;}s:42:"1242:website-sort_by_recently_added_option";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-sort_by_status_option";a:2:{i:0;R:3;i:1;R:17670;}s:36:"1242:website-sort_by_title_ascending";a:2:{i:0;R:3;i:1;R:17670;}s:37:"1242:website-sort_by_title_descending";a:2:{i:0;R:3;i:1;R:17670;}s:35:"1242:website-sort_by_year_ascending";a:2:{i:0;R:3;i:1;R:17670;}s:36:"1242:website-sort_by_year_descending";a:2:{i:0;R:3;i:1;R:17670;}s:37:"1242:website-sort_collection_by_label";a:2:{i:0;R:3;i:1;R:17670;}s:23:"1242:website-sort_order";a:2:{i:0;R:3;i:1;R:17670;}s:20:"1242:website-sort_by";a:2:{i:0;R:3;i:1;R:17670;}s:23:"1242:website-sort_field";a:2:{i:0;R:3;i:1;R:17670;}s:23:"1242:website-sound_file";a:2:{i:0;R:3;i:1;R:17670;}s:23:"1242:website-sound_from";a:2:{i:0;R:3;i:1;R:17670;}s:25:"1242:website-sound_object";a:2:{i:0;R:3;i:1;R:17670;}s:30:"1242:website-sounds_with_count";a:2:{i:0;R:3;i:1;R:17670;}s:38:"1242:website-source_information_header";a:2:{i:0;R:3;i:1;R:17670;}s:46:"1242:website-source_and_additional_information";a:2:{i:0;R:3;i:1;R:17670;}s:25:"1242:website-source_colon";a:2:{i:0;R:3;i:1;R:17670;}s:31:"1242:website-special_collection";a:2:{i:0;R:3;i:1;R:17670;}s:52:"1242:website-special_collections_cannot_be_destroyed";a:2:{i:0;R:3;i:1;R:17670;}s:28:"1242:website-species_curated";a:2:{i:0;R:3;i:1;R:17670;}s:49:"1242:website-species_profile_model_cp_count_title";a:2:{i:0;R:3;i:1;R:17670;}s:51:"1242:website-species_profile_model_dato_count_title";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-species_profile_model";a:2:{i:0;R:3;i:1;R:17670;}s:20:"1242:website-species";a:2:{i:0;R:3;i:1;R:17670;}s:35:"1242:website-split_into_new_concept";a:2:{i:0;R:3;i:1;R:17670;}s:39:"1242:website-spm_category_objects_count";a:2:{i:0;R:3;i:1;R:17670;}s:39:"1242:website-spm_category_partner_count";a:2:{i:0;R:3;i:1;R:17670;}s:25:"1242:website-spm_category";a:2:{i:0;R:3;i:1;R:17670;}s:20:"1242:website-started";a:2:{i:0;R:3;i:1;R:17670;}s:23:"1242:website-statistics";a:2:{i:0;R:3;i:1;R:17670;}s:17:"1242:website-stat";a:2:{i:0;R:3;i:1;R:17670;}s:24:"1242:website-sub_heading";a:2:{i:0;R:3;i:1;R:17670;}s:20:"1242:website-subject";a:2:{i:0;R:3;i:1;R:17670;}s:19:"1242:website-submit";a:2:{i:0;R:3;i:1;R:17670;}s:24:"1242:website-submit_term";a:2:{i:0;R:3;i:1;R:17670;}s:37:"1242:website-suggested_result_page_id";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-suggested_results_avg";a:2:{i:0;R:3;i:1;R:17670;}s:29:"1242:website-supplier_allcaps";a:2:{i:0;R:3;i:1;R:17670;}s:27:"1242:website-supplier_colon";a:2:{i:0;R:3;i:1;R:17670;}s:24:"1242:website-survey_link";a:2:{i:0;R:3;i:1;R:17670;}s:49:"1242:website-switch_language_advisory_information";a:2:{i:0;R:3;i:1;R:17670;}s:20:"1242:website-synonym";a:2:{i:0;R:3;i:1;R:17670;}s:32:"1242:website-synonyms_with_count";a:2:{i:0;R:3;i:1;R:17670;}s:40:"1242:website-table_column_header_actions";a:2:{i:0;R:3;i:1;R:17670;}s:40:"1242:website-table_of_contents_breakdown";a:2:{i:0;R:3;i:1;R:17670;}s:46:"1242:website-table_of_contents_breakdown_title";a:2:{i:0;R:3;i:1;R:17670;}s:37:"1242:website-table_of_contents_editor";a:2:{i:0;R:3;i:1;R:17670;}s:30:"1242:website-table_of_contents";a:2:{i:0;R:3;i:1;R:17670;}s:46:"1242:website-target_blank_advisory_information";a:2:{i:0;R:3;i:1;R:17670;}s:24:"1242:website-task_status";a:2:{i:0;R:3;i:1;R:17670;}s:38:"1242:website-task_status_active_option";a:2:{i:0;R:3;i:1;R:17670;}s:39:"1242:website-task_status_curated_option";a:2:{i:0;R:3;i:1;R:17670;}s:39:"1242:website-task_status_ignored_option";a:2:{i:0;R:3;i:1;R:17670;}s:29:"1242:website-tasks_with_count";a:2:{i:0;R:3;i:1;R:17670;}s:31:"1242:website-taxa_column_header";a:2:{i:0;R:3;i:1;R:17670;}s:28:"1242:website-taxa_with_count";a:2:{i:0;R:3;i:1;R:17670;}s:18:"1242:website-taxon";a:2:{i:0;R:3;i:1;R:17670;}s:40:"1242:website-taxon_biomedical_terms_link";a:2:{i:0;R:3;i:1;R:17670;}s:32:"1242:website-taxon_concept_stats";a:2:{i:0;R:3;i:1;R:17670;}s:32:"1242:website-taxon_details_empty";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-taxon_education_empty";a:2:{i:0;R:3;i:1;R:17670;}s:35:"1242:website-taxon_education_header";a:2:{i:0;R:3;i:1;R:17670;}s:33:"1242:website-taxon_education_link";a:2:{i:0;R:3;i:1;R:17670;}s:24:"1242:website-taxon_group";a:2:{i:0;R:3;i:1;R:17670;}s:21:"1242:website-taxon_id";a:2:{i:0;R:3;i:1;R:17670;}s:49:"1242:website-taxon_identification_resources_empty";a:2:{i:0;R:3;i:1;R:17670;}s:50:"1242:website-taxon_identification_resources_header";a:2:{i:0;R:3;i:1;R:17670;}s:48:"1242:website-taxon_identification_resources_link";a:2:{i:0;R:3;i:1;R:17670;}s:27:"1242:website-taxon_newsfeed";a:2:{i:0;R:3;i:1;R:17670;}s:44:"1242:website-taxon_nucleotide_sequences_link";a:2:{i:0;R:3;i:1;R:17670;}s:38:"1242:website-taxon_partner_links_empty";a:2:{i:0;R:3;i:1;R:17670;}s:54:"1242:website-taxon_partner_links_empty_learn_more_link";a:2:{i:0;R:3;i:1;R:17670;}s:39:"1242:website-taxon_partner_links_header";a:2:{i:0;R:3;i:1;R:17670;}s:38:"1242:website-taxon_partner_links_intro";a:2:{i:0;R:3;i:1;R:17670;}s:37:"1242:website-taxon_partner_links_link";a:2:{i:0;R:3;i:1;R:17670;}s:49:"1242:website-taxon_page_content_disclaimer_header";a:2:{i:0;R:3;i:1;R:17670;}s:42:"1242:website-taxon_page_content_disclaimer";a:2:{i:0;R:3;i:1;R:17670;}s:62:"1242:website-taxon_page_content_disclaimer_suggest_improvement";a:2:{i:0;R:3;i:1;R:17670;}s:41:"1242:website-taxonomic_summary_of_content";a:2:{i:0;R:3;i:1;R:17670;}s:39:"1242:website-taxon_recognized_by_header";a:2:{i:0;R:3;i:1;R:17670;}s:32:"1242:website-taxon_recognized_by";a:2:{i:0;R:3;i:1;R:17670;}s:43:"1242:website-taxon_selected_from_search_res";a:2:{i:0;R:3;i:1;R:17670;}s:28:"1242:website-taxon_suggested";a:2:{i:0;R:3;i:1;R:17670;}s:32:"1242:website-technical_functions";a:2:{i:0;R:3;i:1;R:17670;}s:38:"1242:website-term_cannot_be_left_blank";a:2:{i:0;R:3;i:1;R:17670;}s:42:"1242:website-terms_agreement_form_fallback";a:2:{i:0;R:3;i:1;R:17670;}s:40:"1242:website-terms_agreement_form_header";a:2:{i:0;R:3;i:1;R:17670;}s:40:"1242:website-terms_agreement_form_submit";a:2:{i:0;R:3;i:1;R:17670;}s:30:"1242:website-terms_of_use_link";a:2:{i:0;R:3;i:1;R:17670;}s:37:"1242:website-term_for_search_admin_ui";a:2:{i:0;R:3;i:1;R:17670;}s:17:"1242:website-test";a:2:{i:0;R:3;i:1;R:17670;}s:24:"1242:website-text_object";a:2:{i:0;R:3;i:1;R:17670;}s:17:"1242:website-text";a:2:{i:0;R:3;i:1;R:17670;}s:25:"1242:website-text_capital";a:2:{i:0;R:3;i:1;R:17670;}s:31:"1242:website-text_summary_empty";a:2:{i:0;R:3;i:1;R:17670;}s:38:"1242:website-text_summary_empty_header";a:2:{i:0;R:3;i:1;R:17670;}s:35:"1242:website-text_summary_more_link";a:2:{i:0;R:3;i:1;R:17670;}s:28:"1242:website-text_with_count";a:2:{i:0;R:3;i:1;R:17670;}s:32:"1242:website-thanks_for_donation";a:2:{i:0;R:3;i:1;R:17670;}s:33:"1242:website-thanks_for_your_time";a:2:{i:0;R:3;i:1;R:17670;}s:48:"1242:website-thank_you_for_your_generous_support";a:2:{i:0;R:3;i:1;R:17670;}s:22:"1242:website-thank_you";a:2:{i:0;R:3;i:1;R:17670;}s:35:"1242:website-the_amount_entered_was";a:2:{i:0;R:3;i:1;R:17670;}s:49:"1242:website-the_comment_was_successfully_updated";a:2:{i:0;R:3;i:1;R:17670;}s:49:"1242:website-the_comment_was_successfully_deleted";a:2:{i:0;R:3;i:1;R:17670;}s:43:"1242:website-the_content_could_not_be_displ";a:2:{i:0;R:3;i:1;R:17670;}s:36:"1242:website-the_content_was_updated";a:2:{i:0;R:3;i:1;R:17670;}s:30:"1242:website-the_cp_count_info";a:2:{i:0;R:3;i:1;R:17670;}s:43:"1242:website-the_count_represents_the_total";a:2:{i:0;R:3;i:1;R:17670;}s:44:"1242:website-hierarchies_entries_description";a:2:{i:0;R:3;i:1;R:17670;}s:36:"1242:website-hierarchies_description";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-the_file_was_uploaded";a:2:{i:0;R:3;i:1;R:17670;}s:39:"1242:website-the_following_bibliography";a:2:{i:0;R:3;i:1;R:17670;}s:47:"1242:website-topics_avilable_to_contact_us_info";a:2:{i:0;R:3;i:1;R:17670;}s:43:"1242:website-the_following_users_were_prese";a:2:{i:0;R:3;i:1;R:17670;}s:43:"1242:website-the_glossary_term_was_successf";a:2:{i:0;R:3;i:1;R:17670;}s:59:"1242:website-the_id_of_provider_hierarchy_you_are_searching";a:2:{i:0;R:3;i:1;R:17670;}s:61:"1242:website-the_image_from_this_source_has_not_been_reviewed";a:2:{i:0;R:3;i:1;R:17670;}s:54:"1242:website-the_image_from_this_source_is_not_trusted";a:2:{i:0;R:3;i:1;R:17670;}s:45:"1242:website-the_info_highlighted_is_reviewed";a:2:{i:0;R:3;i:1;R:17670;}s:43:"1242:website-the_information_highlighted_in";a:2:{i:0;R:3;i:1;R:17670;}s:46:"1242:website-the_json_response_for_this_method";a:2:{i:0;R:3;i:1;R:17670;}s:33:"1242:website-the_message_was_sent";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-the_news_item_created";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-the_news_item_updated";a:2:{i:0;R:3;i:1;R:17670;}s:38:"1242:website-the_new_topic_was_created";a:2:{i:0;R:3;i:1;R:17670;}s:37:"1242:website-the_new_user_was_created";a:2:{i:0;R:3;i:1;R:17670;}s:61:"1242:website-there_are_currently_no_members_in_this_community";a:2:{i:0;R:3;i:1;R:17670;}s:55:"1242:website-the_suggested_page_to_direct_users_to_link";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-the_topic_was_updated";a:2:{i:0;R:3;i:1;R:17670;}s:33:"1242:website-the_user_was_updated";a:2:{i:0;R:3;i:1;R:17670;}s:59:"1242:website-the_user_who_performed_this_action_was_removed";a:2:{i:0;R:3;i:1;R:17670;}s:47:"1242:website-the_xml_search_response_implements";a:2:{i:0;R:3;i:1;R:17670;}s:43:"1242:website-this_area_shows_all_submission";a:2:{i:0;R:3;i:1;R:17670;}s:47:"1242:website-this_cannot_be_undone_are_you_sure";a:2:{i:0;R:3;i:1;R:17670;}s:44:"1242:website-this_collection_has_no_managers";a:2:{i:0;R:3;i:1;R:17670;}s:37:"1242:website-this_comment_was_deleted";a:2:{i:0;R:3;i:1;R:17670;}s:55:"1242:website-this_community_has_no_endorsed_collections";a:2:{i:0;R:3;i:1;R:17670;}s:45:"1242:website-this_community_has_no_focus_list";a:2:{i:0;R:3;i:1;R:17670;}s:39:"1242:website-this_community_was_deleted";a:2:{i:0;R:3;i:1;R:17670;}s:43:"1242:website-this_does_not_necessarily_mean";a:2:{i:0;R:3;i:1;R:17670;}s:54:"1242:website-this_is_a_flat_list_of_10_million_strings";a:2:{i:0;R:3;i:1;R:17670;}s:53:"1242:website-this_is_a_focus_collection_for_community";a:2:{i:0;R:3;i:1;R:17670;}s:43:"1242:website-this_is_the_breakdown_of_chapt";a:2:{i:0;R:3;i:1;R:17670;}s:52:"1242:website-hierarchy_selector_drop_down_list_label";a:2:{i:0;R:3;i:1;R:17670;}s:64:"1242:website-this_is_the_label_that_will_be_used_for_attribution";a:2:{i:0;R:3;i:1;R:17670;}s:39:"1242:website-gbif_occurrence_disclaimer";a:2:{i:0;R:3;i:1;R:17670;}s:44:"1242:website-gbif_occurrence_learn_more_link";a:2:{i:0;R:3;i:1;R:17670;}s:36:"1242:website-page_method_description";a:2:{i:0;R:3;i:1;R:17670;}s:36:"1242:website-ping_method_description";a:2:{i:0;R:3;i:1;R:17670;}s:52:"1242:website-provider_hierarchies_method_description";a:2:{i:0;R:3;i:1;R:17670;}s:43:"1242:website-this_page_shows_information_ab";a:2:{i:0;R:3;i:1;R:17670;}s:45:"1242:website-this_resource_unpublished_notice";a:2:{i:0;R:3;i:1;R:17670;}s:39:"1242:website-threat_status_header_colon";a:2:{i:0;R:3;i:1;R:17670;}s:33:"1242:website-thumbnail_page_colon";a:2:{i:0;R:3;i:1;R:17670;}s:21:"1242:website-time_ago";a:2:{i:0;R:3;i:1;R:17670;}s:20:"1242:website-tinyurl";a:2:{i:0;R:3;i:1;R:17670;}s:18:"1242:website-title";a:2:{i:0;R:3;i:1;R:17670;}s:33:"1242:website-toc_entry_col_header";a:2:{i:0;R:3;i:1;R:17670;}s:36:"1242:website-toc_no_longer_available";a:2:{i:0;R:3;i:1;R:17670;}s:16:"1242:website-toc";a:2:{i:0;R:3;i:1;R:17670;}s:23:"1242:website-topic_area";a:2:{i:0;R:3;i:1;R:17670;}s:18:"1242:website-topic";a:2:{i:0;R:3;i:1;R:17670;}s:52:"1242:website-to_process_your_donation_please_proceed";a:2:{i:0;R:3;i:1;R:17670;}s:27:"1242:website-to_remedy_this";a:2:{i:0;R:3;i:1;R:17670;}s:43:"1242:website-to_see_all_activity_combinatio";a:2:{i:0;R:3;i:1;R:17670;}s:37:"1242:website-to_send_email_enter_text";a:2:{i:0;R:3;i:1;R:17670;}s:75:"1242:website-to_submit_text_content_for_taxon_please_be_sure_you_are_logged";a:2:{i:0;R:3;i:1;R:17670;}s:47:"1242:website-total_comments_have_been_submitted";a:2:{i:0;R:3;i:1;R:17670;}s:36:"1242:website-total_distinct_searches";a:2:{i:0;R:3;i:1;R:17670;}s:35:"1242:website-total_items_with_count";a:2:{i:0;R:3;i:1;R:17670;}s:27:"1242:website-total_searches";a:2:{i:0;R:3;i:1;R:17670;}s:18:"1242:website-total";a:2:{i:0;R:3;i:1;R:17670;}s:43:"1242:website-translation_information_header";a:2:{i:0;R:3;i:1;R:17670;}s:32:"1242:website-translations_submit";a:2:{i:0;R:3;i:1;R:17670;}s:43:"1242:website-trigger_search_term_entered_by";a:2:{i:0;R:3;i:1;R:17670;}s:23:"1242:website-true_label";a:2:{i:0;R:3;i:1;R:17670;}s:39:"1242:website-truncated_comment_omission";a:2:{i:0;R:3;i:1;R:17670;}s:48:"1242:website-truncated_comment_omission_linkless";a:2:{i:0;R:3;i:1;R:17670;}s:20:"1242:website-trusted";a:2:{i:0;R:3;i:1;R:17670;}s:27:"1242:website-trusted_images";a:2:{i:0;R:3;i:1;R:17670;}s:25:"1242:website-trusted_maps";a:2:{i:0;R:3;i:1;R:17670;}s:33:"1242:website-trusted_text_objects";a:2:{i:0;R:3;i:1;R:17670;}s:19:"1242:website-tumblr";a:2:{i:0;R:3;i:1;R:17670;}s:20:"1242:website-twitter";a:2:{i:0;R:3;i:1;R:17670;}s:17:"1242:website-type";a:2:{i:0;R:3;i:1;R:17670;}s:53:"1242:website-unable_to_copy_items_to_collection_error";a:2:{i:0;R:3;i:1;R:17670;}s:54:"1242:website-unable_to_invite_users_to_community_error";a:2:{i:0;R:3;i:1;R:17670;}s:33:"1242:website-unique_page_views_th";a:2:{i:0;R:3;i:1;R:17670;}s:20:"1242:website-unknown";a:2:{i:0;R:3;i:1;R:17670;}s:24:"1242:website-unpublished";a:2:{i:0;R:3;i:1;R:17670;}s:23:"1242:website-unreviewed";a:2:{i:0;R:3;i:1;R:17670;}s:30:"1242:website-unreviewed_images";a:2:{i:0;R:3;i:1;R:17670;}s:28:"1242:website-unreviewed_maps";a:2:{i:0;R:3;i:1;R:17670;}s:36:"1242:website-unreviewed_text_objects";a:2:{i:0;R:3;i:1;R:17670;}s:22:"1242:website-untrusted";a:2:{i:0;R:3;i:1;R:17670;}s:19:"1242:website-update";a:2:{i:0;R:3;i:1;R:17670;}s:44:"1242:website-update_collection_submit_button";a:2:{i:0;R:3;i:1;R:17670;}s:42:"1242:website-update_user_successful_notice";a:2:{i:0;R:3;i:1;R:17670;}s:43:"1242:website-update_user_unsuccessful_error";a:2:{i:0;R:3;i:1;R:17670;}s:30:"1242:website-updated_community";a:2:{i:0;R:3;i:1;R:17670;}s:27:"1242:website-updated_member";a:2:{i:0;R:3;i:1;R:17670;}s:20:"1242:website-updated";a:2:{i:0;R:3;i:1;R:17670;}s:26:"1242:website-updated_colon";a:2:{i:0;R:3;i:1;R:17670;}s:20:"1242:website-updates";a:2:{i:0;R:3;i:1;R:17670;}s:27:"1242:website-upload_content";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-upload_logo_help_text";a:2:{i:0;R:3;i:1;R:17670;}s:24:"1242:website-uploaded_by";a:2:{i:0;R:3;i:1;R:17670;}s:29:"1242:website-uploaded_content";a:2:{i:0;R:3;i:1;R:17670;}s:24:"1242:website-uploaded_on";a:2:{i:0;R:3;i:1;R:17670;}s:19:"1242:website-upload";a:2:{i:0;R:3;i:1;R:17670;}s:16:"1242:website-url";a:2:{i:0;R:3;i:1;R:17670;}s:27:"1242:website-us_dollars_100";a:2:{i:0;R:3;i:1;R:17670;}s:26:"1242:website-us_dollars_35";a:2:{i:0;R:3;i:1;R:17670;}s:26:"1242:website-us_dollars_50";a:2:{i:0;R:3;i:1;R:17670;}s:25:"1242:website-us_dolars_75";a:2:{i:0;R:3;i:1;R:17670;}s:31:"1242:website-used_for_urls_note";a:2:{i:0;R:3;i:1;R:17670;}s:39:"1242:website-used_for_friendly_url_note";a:2:{i:0;R:3;i:1;R:17670;}s:65:"1242:website-user_activation_failed_resent_validation_email_error";a:2:{i:0;R:3;i:1;R:17670;}s:56:"1242:website-user_activation_failed_user_not_found_error";a:2:{i:0;R:3;i:1;R:17670;}s:46:"1242:website-user_activation_successful_notice";a:2:{i:0;R:3;i:1;R:17670;}s:47:"1242:website-user_activity_click_on_the_numbers";a:2:{i:0;R:3;i:1;R:17670;}s:39:"1242:website-user_activity_report_intro";a:2:{i:0;R:3;i:1;R:17670;}s:37:"1242:website-user_activity_page_title";a:2:{i:0;R:3;i:1;R:17670;}s:47:"1242:website-user_activity_stats_articles_added";a:2:{i:0;R:3;i:1;R:17670;}s:56:"1242:website-user_activity_stats_articles_added_dropdown";a:2:{i:0;R:3;i:1;R:17670;}s:50:"1242:website-user_activity_stats_comment_submitted";a:2:{i:0;R:3;i:1;R:17670;}s:51:"1242:website-user_activity_stats_common_names_added";a:2:{i:0;R:3;i:1;R:17670;}s:53:"1242:website-user_activity_stats_common_names_curated";a:2:{i:0;R:3;i:1;R:17670;}s:53:"1242:website-user_activity_stats_common_names_removed";a:2:{i:0;R:3;i:1;R:17670;}s:39:"1242:website-user_activity_stats_header";a:2:{i:0;R:3;i:1;R:17670;}s:48:"1242:website-user_activity_stats_objects_curated";a:2:{i:0;R:3;i:1;R:17670;}s:57:"1242:website-user_activity_stats_objects_curated_dropdown";a:2:{i:0;R:3;i:1;R:17670;}s:45:"1242:website-user_activity_stats_set_exemplar";a:2:{i:0;R:3;i:1;R:17670;}s:47:"1242:website-user_activity_stats_taxa_commented";a:2:{i:0;R:3;i:1;R:17670;}s:46:"1242:website-user_activity_stats_taxa_comments";a:2:{i:0;R:3;i:1;R:17670;}s:55:"1242:website-user_activity_stats_taxa_comments_dropdown";a:2:{i:0;R:3;i:1;R:17670;}s:45:"1242:website-user_activity_stats_taxa_curated";a:2:{i:0;R:3;i:1;R:17670;}s:52:"1242:website-user_activity_stats_wikipedia_nominated";a:2:{i:0;R:3;i:1;R:17670;}s:23:"1242:website-user_agent";a:2:{i:0;R:3;i:1;R:17670;}s:39:"1242:website-user_already_active_notice";a:2:{i:0;R:3;i:1;R:17670;}s:26:"1242:website-user_comments";a:2:{i:0;R:3;i:1;R:17670;}s:25:"1242:website-user_comment";a:2:{i:0;R:3;i:1;R:17670;}s:46:"1242:website-user_commented_on_something_colon";a:2:{i:0;R:3;i:1;R:17670;}s:54:"1242:website-user_commented_on_older_data_object_colon";a:2:{i:0;R:3;i:1;R:17670;}s:39:"1242:website-user_commented_on_themself";a:2:{i:0;R:3;i:1;R:17670;}s:43:"1242:website-user_commented_on_deleted_user";a:2:{i:0;R:3;i:1;R:17670;}s:40:"1242:website-user_full_name_with_curator";a:2:{i:0;R:3;i:1;R:17670;}s:20:"1242:website-user_id";a:2:{i:0;R:3;i:1;R:17670;}s:29:"1242:website-user_index_intro";a:2:{i:0;R:3;i:1;R:17670;}s:42:"1242:website-user_joined_community_on_date";a:2:{i:0;R:3;i:1;R:17670;}s:29:"1242:website-user_joined_when";a:2:{i:0;R:3;i:1;R:17670;}s:38:"1242:website-user_left_comment_on_date";a:2:{i:0;R:3;i:1;R:17670;}s:60:"1242:website-user_no_longer_has_manager_access_to_collection";a:2:{i:0;R:3;i:1;R:17670;}s:48:"1242:website-user_pending_notifications_assitive";a:2:{i:0;R:3;i:1;R:17670;}s:59:"1242:website-user_pending_notifications_with_count_assitive";a:2:{i:0;R:3;i:1;R:17670;}s:58:"1242:website-user_pending_notifications_comments_assistive";a:2:{i:0;R:3;i:1;R:17670;}s:69:"1242:website-user_pending_notifications_comments_with_count_assistive";a:2:{i:0;R:3;i:1;R:17670;}s:51:"1242:website-user_was_added_as_editor_of_collection";a:2:{i:0;R:3;i:1;R:17670;}s:27:"1242:website-username_taken";a:2:{i:0;R:3;i:1;R:17670;}s:27:"1242:website-username_colon";a:2:{i:0;R:3;i:1;R:17670;}s:21:"1242:website-username";a:2:{i:0;R:3;i:1;R:17670;}s:26:"1242:website-user_response";a:2:{i:0;R:3;i:1;R:17670;}s:28:"1242:website-user_says_colon";a:2:{i:0;R:3;i:1;R:17670;}s:38:"1242:website-user_submitted_text_found";a:2:{i:0;R:3;i:1;R:17670;}s:32:"1242:website-user_submitted_text";a:2:{i:0;R:3;i:1;R:17670;}s:29:"1242:website-user_system_down";a:2:{i:0;R:3;i:1;R:17670;}s:17:"1242:website-user";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-users_about_me_header";a:2:{i:0;R:3;i:1;R:17670;}s:42:"1242:website-users_content_partners_header";a:2:{i:0;R:3;i:1;R:17670;}s:47:"1242:website-users_content_partners_information";a:2:{i:0;R:3;i:1;R:17670;}s:46:"1242:website-users_content_partners_with_count";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-users_curation_header";a:2:{i:0;R:3;i:1;R:17670;}s:38:"1242:website-users_form_account_header";a:2:{i:0;R:3;i:1;R:17670;}s:39:"1242:website-users_form_curation_header";a:2:{i:0;R:3;i:1;R:17670;}s:43:"1242:website-users_form_profile_info_header";a:2:{i:0;R:3;i:1;R:17670;}s:27:"1242:website-users_form_tip";a:2:{i:0;R:3;i:1;R:17670;}s:46:"1242:website-users_member_of_count_communities";a:2:{i:0;R:3;i:1;R:17670;}s:33:"1242:website-users_my_info_header";a:2:{i:0;R:3;i:1;R:17670;}s:44:"1242:website-users_pending_activation_helper";a:2:{i:0;R:3;i:1;R:17670;}s:45:"1242:website-users_pending_activation_message";a:2:{i:0;R:3;i:1;R:17670;}s:48:"1242:website-users_that_can_edit_this_collection";a:2:{i:0;R:3;i:1;R:17670;}s:27:"1242:website-using_the_site";a:2:{i:0;R:3;i:1;R:17670;}s:29:"1242:website-validation_error";a:2:{i:0;R:3;i:1;R:17670;}s:40:"1242:website-validation_following_fields";a:2:{i:0;R:3;i:1;R:17670;}s:19:"1242:website-values";a:2:{i:0;R:3;i:1;R:17670;}s:18:"1242:website-value";a:2:{i:0;R:3;i:1;R:17670;}s:24:"1242:website-value_empty";a:2:{i:0;R:3;i:1;R:17670;}s:26:"1242:website-value_default";a:2:{i:0;R:3;i:1;R:17670;}s:60:"1242:website-version_1_0_uses_fields_from_the_latest_version";a:2:{i:0;R:3;i:1;R:17670;}s:19:"1242:website-vetted";a:2:{i:0;R:3;i:1;R:17670;}s:23:"1242:website-video_from";a:2:{i:0;R:3;i:1;R:17670;}s:25:"1242:website-video_object";a:2:{i:0;R:3;i:1;R:17670;}s:50:"1242:website-video_title_not_available_in_language";a:2:{i:0;R:3;i:1;R:17670;}s:30:"1242:website-videos_with_count";a:2:{i:0;R:3;i:1;R:17670;}s:22:"1242:website-view_verb";a:2:{i:0;R:3;i:1;R:17670;}s:28:"1242:website-view_added_text";a:2:{i:0;R:3;i:1;R:17670;}s:27:"1242:website-view_as_button";a:2:{i:0;R:3;i:1;R:17670;}s:26:"1242:website-view_as_label";a:2:{i:0;R:3;i:1;R:17670;}s:35:"1242:website-view_common_activities";a:2:{i:0;R:3;i:1;R:17670;}s:40:"1242:website-view_contact_us_submissions";a:2:{i:0;R:3;i:1;R:17670;}s:26:"1242:website-view_curators";a:2:{i:0;R:3;i:1;R:17670;}s:38:"1242:website-view_current_version_link";a:2:{i:0;R:3;i:1;R:17670;}s:35:"1242:website-view_in_classification";a:2:{i:0;R:3;i:1;R:17670;}s:41:"1242:website-view_translation_source_link";a:2:{i:0;R:3;i:1;R:17670;}s:27:"1242:website-view_error_log";a:2:{i:0;R:3;i:1;R:17670;}s:33:"1242:website-view_full_size_image";a:2:{i:0;R:3;i:1;R:17670;}s:32:"1242:website-view_harvesting_log";a:2:{i:0;R:3;i:1;R:17670;}s:32:"1242:website-view_article_source";a:2:{i:0;R:3;i:1;R:17670;}s:30:"1242:website-view_image_source";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-view_image_map_source";a:2:{i:0;R:3;i:1;R:17670;}s:28:"1242:website-view_map_source";a:2:{i:0;R:3;i:1;R:17670;}s:30:"1242:website-view_sound_source";a:2:{i:0;R:3;i:1;R:17670;}s:24:"1242:website-view_source";a:2:{i:0;R:3;i:1;R:17670;}s:30:"1242:website-view_video_source";a:2:{i:0;R:3;i:1;R:17670;}s:40:"1242:website-view_common_activities_link";a:2:{i:0;R:3;i:1;R:17670;}s:69:"1242:website-view_only_pages_with_at_least_a_picture_or_piece_of_text";a:2:{i:0;R:3;i:1;R:17670;}s:32:"1242:website-view_this_hierarchy";a:2:{i:0;R:3;i:1;R:17670;}s:31:"1242:website-view_user_activity";a:2:{i:0;R:3;i:1;R:17670;}s:31:"1242:website-view_user_comments";a:2:{i:0;R:3;i:1;R:17670;}s:38:"1242:website-view_your_curator_profile";a:2:{i:0;R:3;i:1;R:17670;}s:26:"1242:website-visible_title";a:2:{i:0;R:3;i:1;R:17670;}s:21:"1242:website-visitors";a:2:{i:0;R:3;i:1;R:17670;}s:21:"1242:website-vivisimo";a:2:{i:0;R:3;i:1;R:17670;}s:24:"1242:website-wants_colon";a:2:{i:0;R:3;i:1;R:17670;}s:23:"1242:website-watch_list";a:2:{i:0;R:3;i:1;R:17670;}s:32:"1242:website-watch_list_newsfeed";a:2:{i:0;R:3;i:1;R:17670;}s:33:"1242:website-web_service_base_url";a:2:{i:0;R:3;i:1;R:17670;}s:22:"1242:website-web_users";a:2:{i:0;R:3;i:1;R:17670;}s:19:"1242:website-weekly";a:2:{i:0;R:3;i:1;R:17670;}s:44:"1242:website-welcome_and_you_were_logged_out";a:2:{i:0;R:3;i:1;R:17670;}s:43:"1242:website-welcome_to_the_eol_administrat";a:2:{i:0;R:3;i:1;R:17670;}s:20:"1242:website-welcome";a:2:{i:0;R:3;i:1;R:17670;}s:39:"1242:website-what_do_these_numbers_mean";a:2:{i:0;R:3;i:1;R:17670;}s:24:"1242:website-what_is_eol";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-what_is_this_question";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-who_registered_before";a:2:{i:0;R:3;i:1;R:17670;}s:32:"1242:website-who_registered_from";a:2:{i:0;R:3;i:1;R:17670;}s:53:"1242:website-wikipedia_queue_create_successful_notice";a:2:{i:0;R:3;i:1;R:17670;}s:54:"1242:website-wikipedia_queue_create_unsuccessful_error";a:2:{i:0;R:3;i:1;R:17670;}s:38:"1242:website-wikipedia_queue_new_intro";a:2:{i:0;R:3;i:1;R:17670;}s:51:"1242:website-wikipedia_queue_new_instructions_intro";a:2:{i:0;R:3;i:1;R:17670;}s:54:"1242:website-wikipedia_queue_new_instructions_step_one";a:2:{i:0;R:3;i:1;R:17670;}s:54:"1242:website-wikipedia_queue_new_instructions_step_two";a:2:{i:0;R:3;i:1;R:17670;}s:56:"1242:website-wikipedia_queue_new_instructions_step_three";a:2:{i:0;R:3;i:1;R:17670;}s:55:"1242:website-wikipedia_queue_new_instructions_step_four";a:2:{i:0;R:3;i:1;R:17670;}s:43:"1242:website-wikipedia_queue_new_page_title";a:2:{i:0;R:3;i:1;R:17670;}s:59:"1242:website-will_find_taxon_pages_matching_the_search_term";a:2:{i:0;R:3;i:1;R:17670;}s:21:"1242:website-worklist";a:2:{i:0;R:3;i:1;R:17670;}s:25:"1242:website-xml_response";a:2:{i:0;R:3;i:1;R:17670;}s:25:"1242:website-yahoo_images";a:2:{i:0;R:3;i:1;R:17670;}s:18:"1242:website-yahoo";a:2:{i:0;R:3;i:1;R:17670;}s:17:"1242:website-year";a:2:{i:0;R:3;i:1;R:17670;}s:23:"1242:website-yes_answer";a:2:{i:0;R:3;i:1;R:17670;}s:67:"1242:website-you_are_an_admin_so_i_will_show_you_that_the_error_was";a:2:{i:0;R:3;i:1;R:17670;}s:58:"1242:website-you_are_not_authorized_to_perform_this_action";a:2:{i:0;R:3;i:1;R:17670;}s:55:"1242:website-you_are_viewing_this_rank_as_classified_by";a:2:{i:0;R:3;i:1;R:17670;}s:43:"1242:website-you_can_edit_those_later_if_ne";a:2:{i:0;R:3;i:1;R:17670;}s:45:"1242:website-you_can_identify_yourself_to_eol";a:2:{i:0;R:3;i:1;R:17670;}s:48:"1242:website-you_have_been_logged_in_as_username";a:2:{i:0;R:3;i:1;R:17670;}s:37:"1242:website-you_have_been_logged_out";a:2:{i:0;R:3;i:1;R:17670;}s:33:"1242:website-you_joined_community";a:2:{i:0;R:3;i:1;R:17670;}s:31:"1242:website-you_left_community";a:2:{i:0;R:3;i:1;R:17670;}s:43:"1242:website-you_may_upload_static_files_fo";a:2:{i:0;R:3;i:1;R:17670;}s:31:"1242:website-your_email_address";a:2:{i:0;R:3;i:1;R:17670;}s:54:"1242:website-you_removed_the_member_from_the_community";a:2:{i:0;R:3;i:1;R:17670;}s:28:"1242:website-your_ip_address";a:2:{i:0;R:3;i:1;R:17670;}s:29:"1242:website-your_preferences";a:2:{i:0;R:3;i:1;R:17670;}s:24:"1242:website-your_rating";a:2:{i:0;R:3;i:1;R:17670;}s:20:"1242:website-youtube";a:2:{i:0;R:3;i:1;R:17670;}s:26:"1242:website-youtube_video";a:2:{i:0;R:3;i:1;R:17670;}s:43:"1242:website-the_darwin_core_taxon_elements";a:2:{i:0;R:3;i:1;R:17670;}s:57:"1242:website-for_example_for_the_taxon_element_for_a_node";a:2:{i:0;R:3;i:1;R:17670;}s:37:"1242:website-there_is_no_singular_eol";a:2:{i:0;R:3;i:1;R:17670;}s:48:"1242:website-if_the_details_parameter_is_not_set";a:2:{i:0;R:3;i:1;R:17670;}s:43:"1242:website-this_section_is_used_to_create";a:2:{i:0;R:3;i:1;R:17670;}s:30:"1242:website-news_archive_page";a:2:{i:0;R:3;i:1;R:17670;}s:36:"1242:website-you_must_be_comfortable";a:2:{i:0;R:3;i:1;R:17670;}s:43:"1242:website-note_that_you_can_reference_im";a:2:{i:0;R:3;i:1;R:17670;}s:47:"1242:website-to_submit_a_species_photograph_for";a:2:{i:0;R:3;i:1;R:17670;}s:43:"1242:website-icon_near_the_table_of_content";a:2:{i:0;R:3;i:1;R:17670;}s:51:"1242:website-this_method_takes_an_integer_or_string";a:2:{i:0;R:3;i:1;R:17670;}s:21:"1242:website-supplier";a:2:{i:0;R:3;i:1;R:17670;}s:19:"1242:website-rights";a:2:{i:0;R:3;i:1;R:17670;}s:26:"1242:website-rights_holder";a:2:{i:0;R:3;i:1;R:17670;}s:29:"1242:website-rights_statement";a:2:{i:0;R:3;i:1;R:17670;}s:21:"1242:website-location";a:2:{i:0;R:3;i:1;R:17670;}s:23:"1242:website-source_url";a:2:{i:0;R:3;i:1;R:17670;}s:20:"1242:website-indexed";a:2:{i:0;R:3;i:1;R:17670;}s:21:"1242:website-citation";a:2:{i:0;R:3;i:1;R:17670;}s:42:"1242:website-please_return_to_eol_homepage";a:2:{i:0;R:3;i:1;R:17670;}s:30:"1242:website-create_child_page";a:2:{i:0;R:3;i:1;R:17670;}s:32:"1242:website-meta_keywords_colon";a:2:{i:0;R:3;i:1;R:17670;}s:35:"1242:website-meta_description_colon";a:2:{i:0;R:3;i:1;R:17670;}s:24:"1242:website-update_page";a:2:{i:0;R:3;i:1;R:17670;}s:28:"1242:website-update_language";a:2:{i:0;R:3;i:1;R:17670;}s:30:"1242:website-translation_saved";a:2:{i:0;R:3;i:1;R:17670;}s:32:"1242:website-translation_deleted";a:2:{i:0;R:3;i:1;R:17670;}s:33:"1242:website-mobile.contents.home";a:2:{i:0;R:3;i:1;R:17670;}s:33:"1242:website-mobile.contents.taxa";a:2:{i:0;R:3;i:1;R:17670;}s:38:"1242:website-mobile.contents.full_site";a:2:{i:0;R:3;i:1;R:17670;}s:36:"1242:website-mobile.contents.species";a:2:{i:0;R:3;i:1;R:17670;}s:40:"1242:website-mobile.contents.explore_eol";a:2:{i:0;R:3;i:1;R:17670;}s:39:"1242:website-mobile.taxa.taxon_overview";a:2:{i:0;R:3;i:1;R:17670;}s:33:"1242:website-mobile.taxa.overview";a:2:{i:0;R:3;i:1;R:17670;}s:32:"1242:website-mobile.taxa.details";a:2:{i:0;R:3;i:1;R:17670;}s:30:"1242:website-mobile.taxa.media";a:2:{i:0;R:3;i:1;R:17670;}s:29:"1242:website-mobile.taxa.maps";a:2:{i:0;R:3;i:1;R:17670;}s:37:"1242:website-mobile.taxa.nomenclature";a:2:{i:0;R:3;i:1;R:17670;}s:35:"1242:website-mobile.taxa.literature";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-mobile.taxa.community";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-mobile.taxa.resources";a:2:{i:0;R:3;i:1;R:17670;}s:38:"1242:website-mobile.taxa.taxon_details";a:2:{i:0;R:3;i:1;R:17670;}s:36:"1242:website-mobile.taxa.taxon_media";a:2:{i:0;R:3;i:1;R:17670;}s:31:"1242:website-mobile.taxa.images";a:2:{i:0;R:3;i:1;R:17670;}s:31:"1242:website-mobile.taxa.sounds";a:2:{i:0;R:3;i:1;R:17670;}s:31:"1242:website-mobile.taxa.videos";a:2:{i:0;R:3;i:1;R:17670;}s:38:"1242:website-mobile.search.suggestions";a:2:{i:0;R:3;i:1;R:17670;}s:43:"1242:website-mobile.search.no_results_found";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-mobile.search.results";a:2:{i:0;R:3;i:1;R:17670;}s:38:"1242:website-cms_missing_content_title";a:2:{i:0;R:3;i:1;R:17670;}s:40:"1242:website-cms_missing_content_message";a:2:{i:0;R:3;i:1;R:17670;}s:39:"1242:website-cms_available_in_languages";a:2:{i:0;R:3;i:1;R:17670;}s:33:"1242:website-nucleotide_sequences";a:2:{i:0;R:3;i:1;R:17670;}s:24:"1242:website-logo_header";a:2:{i:0;R:3;i:1;R:17670;}s:33:"1242:website-external_link_header";a:2:{i:0;R:3;i:1;R:17670;}s:44:"1242:website-comment_or_rate_on_this_article";a:2:{i:0;R:3;i:1;R:17670;}s:48:"1242:website-admin_user_delete_successful_notice";a:2:{i:0;R:3;i:1;R:17670;}s:30:"1242:website-admin_spam_delete";a:2:{i:0;R:3;i:1;R:17670;}s:46:"1242:website-admin_user_hide_successful_notice";a:2:{i:0;R:3;i:1;R:17670;}s:48:"1242:website-admin_user_unhide_successful_notice";a:2:{i:0;R:3;i:1;R:17670;}s:38:"1242:website-login_hidden_user_message";a:2:{i:0;R:3;i:1;R:17670;}s:42:"1242:website-user_no_longer_active_message";a:2:{i:0;R:3;i:1;R:17670;}s:22:"1242:website-no_answer";a:2:{i:0;R:3;i:1;R:17670;}s:30:"1242:website-allowed_html_tags";a:2:{i:0;R:3;i:1;R:17670;}s:36:"1242:website-contact_us_request_sent";a:2:{i:0;R:3;i:1;R:17670;}s:38:"1242:website-contact_us_request_failed";a:2:{i:0;R:3;i:1;R:17670;}s:39:"1242:website-please_leave_your_feedback";a:2:{i:0;R:3;i:1;R:17670;}s:26:"1242:website-send_feedback";a:2:{i:0;R:3;i:1;R:17670;}s:40:"1242:website-contact_us_request_received";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-references_cabs_colon";a:2:{i:0;R:3;i:1;R:17670;}s:34:"1242:website-annotation_cabs_colon";a:2:{i:0;R:3;i:1;R:17670;}s:28:"1242:website-member_activity";a:2:{i:0;R:3;i:1;R:17670;}s:77:"1228:com-cadre-957cd1a44423bc735be244be158a79ad5e0affd6-edit_this_information";a:3:{i:0;s:22:"out-ihris-common-cadre";i:1;s:15:"out-ihris-0-all";i:2;s:22:"out-ihris-common-0-all";}s:79:"1228:com-cadre-8f12a44b12f65ea43ddb4305154428ef1ac77771-update_this_information";a:3:{i:0;R:21161;i:1;R:21162;i:2;R:21163;}s:76:"1228:com-cadre-422ec56bbc16253e50ce58449f018afb3d1745dd-select_another_cadre";a:3:{i:0;R:21161;i:1;R:21162;i:2;R:21163;}s:61:"1228:com-cadre-2586a9e4e3ba9092547e3eac14e105c5ffbda37b-cadre";a:3:{i:0;R:21161;i:1;R:21162;i:2;R:21163;}s:75:"1228:com-cadre-62eec1f4ed8e560b2c166c945862853ca756ba52-edit_the_cadre_list";a:3:{i:0;R:21161;i:1;R:21162;i:2;R:21163;}s:75:"1228:com-cadre-0f13679e2dccab7e1f03c64cc2c8a72c50154071-view_the_cadre_list";a:3:{i:0;R:21161;i:1;R:21162;i:2;R:21163;}s:76:"1228:com-ceus-957cd1a44423bc735be244be158a79ad5e0affd6-edit_this_information";a:3:{i:0;s:21:"out-ihris-common-ceus";i:1;R:21162;i:2;R:21163;}s:78:"1228:com-ceus-8f12a44b12f65ea43ddb4305154428ef1ac77771-update_this_information";a:3:{i:0;R:21170;i:1;R:21162;i:2;R:21163;}s:76:"1228:com-ceus-f58eb4c288c3ecc3b049de82c8388ba219268ffc-select_another_course";a:3:{i:0;R:21170;i:1;R:21162;i:2;R:21163;}s:82:"1228:com-ceus-f558147548fa65a002d723a3f53ca7a2695de83c-continuing_education_course";a:3:{i:0;R:21170;i:1;R:21162;i:2;R:21163;}s:84:"1228:com-ceus-26244326f0eed8b005ffe80421737c163f78f800-edit_the_continuing_education";a:3:{i:0;R:21170;i:1;R:21162;i:2;R:21163;}s:84:"1228:com-ceus-64ce21be22169bdcdc62737e08ce29ec3f9f0267-view_the_continuing_education";a:3:{i:0;R:21170;i:1;R:21162;i:2;R:21163;}s:75:"1228:com-ceus-dae14f8f08b68e01acf768c45a84ff58b35efd4d-continuing_education";a:3:{i:0;R:21170;i:1;R:21162;i:2;R:21163;}s:59:"1228:com-ceus-709a23220f2c3d64d1e1d6d18c4d5280f8d82fca-name";a:3:{i:0;R:21170;i:1;R:21162;i:2;R:21163;}s:67:"1228:com-ceus-c51caa46d091664b317a149f27e363a886902944-credit_hours";a:3:{i:0;R:21170;i:1;R:21162;i:2;R:21163;}s:65:"1228:com-ceus-9d7ab1a557965be0eae6205c2d860c45a3eafc11-start_date";a:3:{i:0;R:21170;i:1;R:21162;i:2;R:21163;}s:63:"1228:com-ceus-84b1478125890bad1cc4b36d6d3781773b3fde5a-end_date";a:3:{i:0;R:21170;i:1;R:21162;i:2;R:21163;}s:77:"1228:com-contact-a34b69fc46e7a278cf65c58bb347de6560fb046f-contact_information";a:3:{i:0;s:24:"out-ihris-common-contact";i:1;R:21162;i:2;R:21163;}s:73:"1228:com-contact-e6afb989237759c66f5b0e4226971f840efd5e7e-mailing_address";a:3:{i:0;R:21182;i:1;R:21162;i:2;R:21163;}s:74:"1228:com-contact-e127f171d4898393e755503ff466cbf54f85634b-telephone_number";a:3:{i:0;R:21182;i:1;R:21162;i:2;R:21163;}s:84:"1228:com-contact-8272d321918e6979219048636408be05573b378c-alternate_telephone_number";a:3:{i:0;R:21182;i:1;R:21162;i:2;R:21163;}s:68:"1228:com-contact-2a2a2452c861be437b787ac23bae330de27aa694-fax_number";a:3:{i:0;R:21182;i:1;R:21162;i:2;R:21163;}s:71:"1228:com-contact-09ba557fd106f1019ec6739113e3e28dea4bd9a6-email_address";a:3:{i:0;R:21182;i:1;R:21162;i:2;R:21163;}s:63:"1228:com-contact-70440046a3dc2e079f23ee1c57dfa76669b732aa-notes";a:3:{i:0;R:21182;i:1;R:21162;i:2;R:21163;}s:88:"1228:com-contact-20d5618045df5a9b4a2092b2d52ca7693bdf960e-notes_(primary_contact_person)";a:3:{i:0;R:21182;i:1;R:21162;i:2;R:21163;}s:62:"1228:com-contact-709a23220f2c3d64d1e1d6d18c4d5280f8d82fca-name";a:3:{i:0;R:21182;i:1;R:21162;i:2;R:21163;}s:71:"1228:com-core-7f5b0aa72e7ba00066dfc25f5c1fd7a3570857c5-configure_system";a:3:{i:0;s:21:"out-ihris-common-core";i:1;R:21162;i:2;R:21163;}s:74:"1228:com-core-ca20b4d0dc0037dbb9c44f4e58377fd5a5fcfa15-administer_database";a:3:{i:0;R:21192;i:1;R:21162;i:2;R:21163;}s:85:"1228:com-core-ba02159e87e8ebf73e3226f525abf265e52ce651-administer_positions_and_creat";a:3:{i:0;R:21192;i:1;R:21162;i:2;R:21163;}s:72:"1228:com-core-4b3cb1b7b5dd2a873d2be81bc61acca5eab92b7e-configure_modules";a:3:{i:0;R:21192;i:1;R:21162;i:2;R:21163;}s:85:"1228:com-core-fa4bec987fc8401ad9e164e0488d7da66ded6617-enable_and_disable_the_various";a:3:{i:0;R:21192;i:1;R:21162;i:2;R:21163;}s:69:"1228:com-core-ea297cf8ea77591a3a8f1324d69b659efd57f353-manage_reports";a:3:{i:0;R:21192;i:1;R:21162;i:2;R:21163;}s:85:"1228:com-core-0d71e01de1982783a12dc236b900c12b47f73c6d-manage_the_standard_reports_av";a:3:{i:0;R:21192;i:1;R:21162;i:2;R:21163;}s:73:"1228:com-core-9a1adb7a8091354636b3cd7fbe34ab3715fa7fdf-form_relationships";a:3:{i:0;R:21192;i:1;R:21162;i:2;R:21163;}s:85:"1228:com-core-19671f52c93038d54d6d0ee890e8acf6bee8cddf-define_how_forms_are_related_f";a:3:{i:0;R:21192;i:1;R:21162;i:2;R:21163;}s:62:"1228:com-core-88bc3fe3daddee139809d036f18b985fbe165957-reports";a:3:{i:0;R:21192;i:1;R:21162;i:2;R:21163;}s:85:"1228:com-core-81c8b3cbc113b7b421f08cbc5a14690108304fb1-define_reports_based_on_previo";a:3:{i:0;R:21192;i:1;R:21162;i:2;R:21163;}s:67:"1228:com-core-4494377254676cce03f76fada525db6349dafbd0-report_views";a:3:{i:0;R:21192;i:1;R:21162;i:2;R:21163;}s:72:"1228:com-core-b1b8f390dee590ff157f6ffcfd76f7fe37717f5c-browse_magic_data";a:3:{i:0;R:21192;i:1;R:21162;i:2;R:21163;}s:84:"1228:com-core-7ff100738a491646f938c9612924a212d83c5efd-browse_the_configuration_data";a:3:{i:0;R:21192;i:1;R:21162;i:2;R:21163;}s:70:"1228:com-core-83f23464b6b73a4cff35c34aec4b6a0e0e6496db-tasks_and_roles";a:3:{i:0;R:21192;i:1;R:21162;i:2;R:21163;}s:85:"1228:com-core-7819807c72a991a33e648c1ed3ba68e1193501ba-administer_tasks_and_roles_for";a:3:{i:0;R:21192;i:1;R:21162;i:2;R:21163;}s:69:"1228:com-core-ec79488481214b06a5c34809c24ff24cccde2329-manage_locales";a:3:{i:0;R:21192;i:1;R:21162;i:2;R:21163;}s:85:"1228:com-core-47112e3c5dc850f4ebcd76222f02034d8cb2071f-manage_the_locales_made_availa";a:3:{i:0;R:21192;i:1;R:21162;i:2;R:21163;}s:75:"1228:com-core-60865a55d575470308929e5970d44edcbdb31366-background_processes";a:3:{i:0;R:21192;i:1;R:21162;i:2;R:21163;}s:85:"1228:com-core-01d6bf5a49f586ddaa640e35535baf9f9fbe41dd-examine_background_processes_y";a:3:{i:0;R:21192;i:1;R:21162;i:2;R:21163;}s:67:"1228:com-core-2803a14f3c91354f34fe0aa2b3ea44f6d109ff89-browse_forms";a:3:{i:0;R:21192;i:1;R:21162;i:2;R:21163;}s:85:"1228:com-core-2149153918a6bb2ad90fc01956c4da490a2e46b9-browse_the_forms_used_by_the_s";a:3:{i:0;R:21192;i:1;R:21162;i:2;R:21163;}s:67:"1228:com-core-8da00ccc99b0f2a0142849d84bdcabab201046ff-cached_forms";a:3:{i:0;R:21192;i:1;R:21162;i:2;R:21163;}s:85:"1228:com-core-26a2bdfacaff7a86ad31d2bef7225a360c061d63-control_the_creation_of_cached";a:3:{i:0;R:21192;i:1;R:21162;i:2;R:21163;}s:71:"1228:com-core-2ce2151d552c83a74d5b5c951b22dc1c25c11c9a-administer_users";a:3:{i:0;R:21192;i:1;R:21162;i:2;R:21163;}s:85:"1228:com-core-93ea114211899338b07449a28ac20740f089a98b-create,_update_and_disable_use";a:3:{i:0;R:21192;i:1;R:21162;i:2;R:21163;}s:75:"1228:com-core-aa7912af440e9d8ccbc19faf511ed5a01eac7210-field_change_history";a:3:{i:0;R:21192;i:1;R:21162;i:2;R:21163;}s:61:"1228:com-core-63143b6f8007b98c53ca2149822777b3566f9241-return";a:3:{i:0;R:21192;i:1;R:21162;i:2;R:21163;}s:66:"1228:com-core-df4cc3035b979770fa55a5d9d6f6f225ddd3b143-tasks_roles";a:3:{i:0;R:21192;i:1;R:21162;i:2;R:21163;}s:72:"1228:com-core-0628eece9c87f833e9d34864fed67cc09504efba-demographic_lists";a:3:{i:0;R:21192;i:1;R:21162;i:2;R:21163;}s:74:"1228:com-core-662889e70bf828812cadf7ae57b39371090506a6-identification_type";a:3:{i:0;R:21192;i:1;R:21162;i:2;R:21163;}s:69:"1228:com-core-e65f73600961af1c5a4703e1fa25d1c6274b41fd-marital_status";a:3:{i:0;R:21192;i:1;R:21162;i:2;R:21163;}s:77:"1228:com-core-69d108677cb1b54198dd200a3fafd79cb96131b2-geographic_information";a:3:{i:0;R:21192;i:1;R:21162;i:2;R:21163;}s:62:"1228:com-core-d523ebbd10146cdfd39dee077f04c9d08468d0bc-country";a:3:{i:0;R:21192;i:1;R:21162;i:2;R:21163;}s:61:"1228:com-core-0f217179940c6d89f5cb2c7002a58d91ab7286c1-region";a:3:{i:0;R:21192;i:1;R:21162;i:2;R:21163;}s:63:"1228:com-core-c0cb139cce34769fb7ed9bafc15290e91cf7736c-district";a:3:{i:0;R:21192;i:1;R:21162;i:2;R:21163;}s:61:"1228:com-core-60dee38933959dfdae71ec0ee78d9ddb94f8ba0e-county";a:3:{i:0;R:21192;i:1;R:21162;i:2;R:21163;}s:63:"1228:com-core-e070de224434a2acd352b35cec46f34f9e08e1b2-currency";a:3:{i:0;R:21192;i:1;R:21162;i:2;R:21163;}s:77:"1228:com-core-ecfe29ef8fcfc7c6552fb9793fd0884a7b9c0a8b-additional_information";a:3:{i:0;R:21192;i:1;R:21162;i:2;R:21163;}s:70:"1228:com-core-a52ac6764bccdbf7fb5168c27d3db3db759e04c6-competency_type";a:3:{i:0;R:21192;i:1;R:21162;i:2;R:21163;}s:65:"1228:com-core-05e59bb0ed360ac5cfcc85cdb8a3184e0442743f-competency";a:3:{i:0;R:21192;i:1;R:21162;i:2;R:21163;}s:82:"1228:com-core-f558147548fa65a002d723a3f53ca7a2695de83c-continuing_education_course";a:3:{i:0;R:21192;i:1;R:21162;i:2;R:21163;}s:75:"1228:com-core-d38e9b888e8b481eeea6da394d506f30ddf68a32-training_institution";a:3:{i:0;R:21192;i:1;R:21162;i:2;R:21163;}s:70:"1228:com-core-1c0e11f2af6a82c4017692b88380c8c081245793-training_funder";a:3:{i:0;R:21192;i:1;R:21162;i:2;R:21163;}s:64:"1228:com-core-64346b483c0adcfb6e6d4c2e4ce19f1cd2cde025-full_name";a:3:{i:0;R:21192;i:1;R:21162;i:2;R:21163;}s:67:"1228:com-core-01083b501aa8fa17f729dd5163e3ff6861eb4f5b-date_changed";a:3:{i:0;R:21192;i:1;R:21162;i:2;R:21163;}s:62:"1228:com-core-ca4f9dcf204e2037bfe5884867bead98bd9cbaf8-welcome";a:3:{i:0;R:21192;i:1;R:21162;i:2;R:21163;}s:69:"1228:com-core-910083aa16fe743ea7c149ebfd84b4d9cbfc6652-custom_reports";a:3:{i:0;R:21192;i:1;R:21162;i:2;R:21163;}s:70:"1228:com-core-49289db43e663a3df5e2c70714722ecc54895565-change_password";a:3:{i:0;R:21192;i:1;R:21162;i:2;R:21163;}s:85:"1228:com-core-1bb3712f475a6daafaf4690b9d8e6db456b71126-can_access_the_general_configu";a:3:{i:0;R:21192;i:1;R:21162;i:2;R:21163;}s:59:"1228:com-core-70f8bb9a8a5393ef080507a89e4b98d139000d65-home";a:3:{i:0;R:21192;i:1;R:21162;i:2;R:21163;}s:67:"1228:com-core-8bc3b1ed449e35b901d74c3dbc468945062d2184-view_history";a:3:{i:0;R:21192;i:1;R:21162;i:2;R:21163;}s:73:"1228:com-core-f833ebb1e1b22242070a81834f51dd667621d92f-view_field_history";a:3:{i:0;R:21192;i:1;R:21162;i:2;R:21163;}s:68:"1228:com-core-1647b9db6c01fdfd161104fec3a083296844961e-access_denied";a:3:{i:0;R:21192;i:1;R:21162;i:2;R:21163;}s:62:"1228:com-core-04a212215ef9fbf686d280802eb81ee7a6e681cd-confirm";a:3:{i:0;R:21192;i:1;R:21162;i:2;R:21163;}s:85:"1228:com-core-966ad100c47eea64a882bd41c6e2442c97145161-define_report_views_based_on_p";a:3:{i:0;R:21192;i:1;R:21162;i:2;R:21163;}s:80:"1228:com-currency-957cd1a44423bc735be244be158a79ad5e0affd6-edit_this_information";a:3:{i:0;s:25:"out-ihris-common-currency";i:1;R:21162;i:2;R:21163;}s:82:"1228:com-currency-8f12a44b12f65ea43ddb4305154428ef1ac77771-update_this_information";a:3:{i:0;R:21249;i:1;R:21162;i:2;R:21163;}s:82:"1228:com-currency-304537c023fbcd42096c462453136ddc31450184-select_another_currency";a:3:{i:0;R:21249;i:1;R:21162;i:2;R:21163;}s:67:"1228:com-currency-e070de224434a2acd352b35cec46f34f9e08e1b2-currency";a:3:{i:0;R:21249;i:1;R:21162;i:2;R:21163;}s:88:"1228:com-currency-9467fb3606db2eb3bd16cf4668c667bac506d879-can_edit_currency_information";a:3:{i:0;R:21249;i:1;R:21162;i:2;R:21163;}s:88:"1228:com-currency-2ad5dfcba80963b48181928e3f7f4f596eb08ee3-can_view_currency_information";a:3:{i:0;R:21249;i:1;R:21162;i:2;R:21163;}s:72:"1228:com-currency-7b41c9c806d2ef9110b22e8c68368fcc8297fcb7-currency_code";a:3:{i:0;R:21249;i:1;R:21162;i:2;R:21163;}s:63:"1228:com-currency-709a23220f2c3d64d1e1d6d18c4d5280f8d82fca-name";a:3:{i:0;R:21249;i:1;R:21162;i:2;R:21163;}s:66:"1228:com-currency-d523ebbd10146cdfd39dee077f04c9d08468d0bc-country";a:3:{i:0;R:21249;i:1;R:21162;i:2;R:21163;}s:65:"1228:com-currency-3f84ef531f9db996694ad09a8fdddbca1440577e-symbol";a:3:{i:0;R:21249;i:1;R:21162;i:2;R:21163;}s:65:"1228:com-depender-8a754c61c2ced0c5ff79a1827e02c9d643d6d926-gender";a:3:{i:0;s:25:"out-ihris-common-depender";i:1;R:21162;i:2;R:21163;}s:72:"1228:com-depender-133160594d08fcd32f94c34d17e39f61e6f3d12e-date_of_birth";a:3:{i:0;R:21260;i:1;R:21162;i:2;R:21163;}s:63:"1228:com-depender-709a23220f2c3d64d1e1d6d18c4d5280f8d82fca-name";a:3:{i:0;R:21260;i:1;R:21162;i:2;R:21163;}s:68:"1228:com-depender-879b454f7d9830ee02f56228baa917adc9a8ab30-dependent";a:3:{i:0;R:21260;i:1;R:21162;i:2;R:21163;}s:89:"1228:com-depender-b57b00c44bb0c10fc09dd8deb5e2f8a844da5d4a-can_view_a_person's_dependents";a:3:{i:0;R:21260;i:1;R:21162;i:2;R:21163;}s:89:"1228:com-depender-a6a58db59f06cacfad79dd66f446d4d42bafb613-can_edit_a_person's_dependents";a:3:{i:0;R:21260;i:1;R:21162;i:2;R:21163;}s:89:"1228:com-depender-5d4b0e27a5475bc15ff605295633f3cb4cdbac92-add_update_dependent_informati";a:3:{i:0;R:21260;i:1;R:21162;i:2;R:21163;}s:80:"1228:com-depender-957cd1a44423bc735be244be158a79ad5e0affd6-edit_this_information";a:3:{i:0;R:21260;i:1;R:21162;i:2;R:21163;}s:82:"1228:com-depender-8f12a44b12f65ea43ddb4305154428ef1ac77771-update_this_information";a:3:{i:0;R:21260;i:1;R:21162;i:2;R:21163;}s:80:"1228:com-depender-a54d8683e7c00ddcf16ef20b8fdbb256f8678952-dependent_information";a:3:{i:0;R:21260;i:1;R:21162;i:2;R:21163;}s:67:"1228:com-document-e214b8a29923056887b7edf6635d90dcbb2abe88-document";a:3:{i:0;s:25:"out-ihris-common-document";i:1;R:21162;i:2;R:21163;}s:63:"1228:com-document-eb9a4bc1c0c153e4e4b042a79113b815b7e3021d-date";a:3:{i:0;R:21271;i:1;R:21162;i:2;R:21163;}s:70:"1228:com-document-55f8ebc805e65b5b71ddafdae390e3be2bcd69af-description";a:3:{i:0;R:21271;i:1;R:21162;i:2;R:21163;}s:82:"1228:com-establishment-35f7b1f1b01572bffc467a017bf778cf29516a23-set_establishments";a:3:{i:0;s:30:"out-ihris-common-establishment";i:1;R:21162;i:2;R:21163;}s:90:"1228:com-establishment-aec45c952dc8957ede14f1861ecea701f2678ce4-add_new_establishment_type";a:3:{i:0;R:21275;i:1;R:21162;i:2;R:21163;}s:94:"1228:com-establishment-24be389126ccec6e31f20a866f620ec658a03a08-add_new_establishment_category";a:3:{i:0;R:21275;i:1;R:21162;i:2;R:21163;}s:93:"1228:com-establishment-e8e6a404715a1c2a604ec9e160c43526c469e973-select_establishment_category";a:3:{i:0;R:21275;i:1;R:21162;i:2;R:21163;}s:85:"1228:com-establishment-957cd1a44423bc735be244be158a79ad5e0affd6-edit_this_information";a:3:{i:0;R:21275;i:1;R:21162;i:2;R:21163;}s:87:"1228:com-establishment-8f12a44b12f65ea43ddb4305154428ef1ac77771-update_this_information";a:3:{i:0;R:21275;i:1;R:21162;i:2;R:21163;}s:92:"1228:com-establishment-67e4a3fd762270a02de2e7cb378ada6c859fc4c8-select_another_establishment";a:3:{i:0;R:21275;i:1;R:21162;i:2;R:21163;}s:94:"1228:com-establishment-6c42e44e65dc91f7e29b5959478ba2ddc7c6ca27-select_another_establishment_p";a:3:{i:0;R:21275;i:1;R:21162;i:2;R:21163;}s:94:"1228:com-establishment-514d90ea85392442bcb05451ebe47b06541c0052-can_edit_the_establishment_typ";a:3:{i:0;R:21275;i:1;R:21162;i:2;R:21163;}s:94:"1228:com-establishment-8993010eedf4b14cafec212c3a2dfe19ceb2f39b-can_view_the_establishment_typ";a:3:{i:0;R:21275;i:1;R:21162;i:2;R:21163;}s:94:"1228:com-establishment-3ffa8fafab128d797bec410f023e9c3d3addee15-can_edit_the_establishment_per";a:3:{i:0;R:21275;i:1;R:21162;i:2;R:21163;}s:94:"1228:com-establishment-0d90e3b7ae5f883e0972c112fe4f525b63857f12-can_view_the_establishment_per";a:3:{i:0;R:21275;i:1;R:21162;i:2;R:21163;}s:94:"1228:com-establishment-edad3b8bb6bad2d5d7acebcd738ae69b52be8161-can_edit_the_establishment_dat";a:3:{i:0;R:21275;i:1;R:21162;i:2;R:21163;}s:94:"1228:com-establishment-713b95c054dcccc90fbe6c80040d1fbea20f9b75-can_view_the_establishment_dat";a:3:{i:0;R:21275;i:1;R:21162;i:2;R:21163;}s:94:"1228:com-establishment-fae5d584a71de63c1a3bd3ed1111d968324b5893-can_access_the_establishment_i";a:3:{i:0;R:21275;i:1;R:21162;i:2;R:21163;}s:94:"1228:com-establishment-f8fae2319b3c11bc191d27f6e5cc4e0cc5b4a36f-can_edit_the_establishment_inf";a:3:{i:0;R:21275;i:1;R:21162;i:2;R:21163;}s:77:"1228:com-establishment-0661fb47c4470fe069a5c56ff38ccc6407c8f802-establishment";a:3:{i:0;R:21275;i:1;R:21162;i:2;R:21163;}s:84:"1228:com-establishment-e4e0c531f94cad05ffb1f5016d511f6bbcfd5a9b-establishment_period";a:3:{i:0;R:21275;i:1;R:21162;i:2;R:21163;}s:82:"1228:com-establishment-e28b97fd2f4c0fec8d40c876f44f696618010194-establishment_type";a:3:{i:0;R:21275;i:1;R:21162;i:2;R:21163;}s:85:"1228:com-establishment-6fbada1ef6339a51bdb97daf659c97c0e5669b08-year_of_applicability";a:3:{i:0;R:21275;i:1;R:21162;i:2;R:21163;}s:75:"1228:com-establishment-06917fef400306d29498a226055a2ed3eae86f54-s_at_s_(_s)";a:3:{i:0;R:21275;i:1;R:21162;i:2;R:21163;}s:76:"1228:com-establishment-117c9a68cf9b28fa94a3abc30afab49f69c521eb-job_or_cadre";a:3:{i:0;R:21275;i:1;R:21162;i:2;R:21163;}s:89:"1228:com-establishment-412a79d65628965750f98943846a9b2d5199ecb7-facility_or_facility_type";a:3:{i:0;R:21275;i:1;R:21162;i:2;R:21163;}s:88:"1228:com-establishment-839d65c316c8c2610e92a6a9a1e8997e2afd3284-number_of_health_workers";a:3:{i:0;R:21275;i:1;R:21162;i:2;R:21163;}s:80:"1228:com-facility-957cd1a44423bc735be244be158a79ad5e0affd6-edit_this_information";a:3:{i:0;s:25:"out-ihris-common-facility";i:1;R:21162;i:2;R:21163;}s:82:"1228:com-facility-8f12a44b12f65ea43ddb4305154428ef1ac77771-update_this_information";a:3:{i:0;R:21300;i:1;R:21162;i:2;R:21163;}s:89:"1228:com-facility-27156a0e322ed536eb2ab3aef9139ebc40c443fb-select_another_office_facility";a:3:{i:0;R:21300;i:1;R:21162;i:2;R:21163;}s:74:"1228:com-facility-62b96dabc5751eb5b049043581eba11bdb0fb3d8-office_facility";a:3:{i:0;R:21300;i:1;R:21162;i:2;R:21163;}s:87:"1228:com-facility-eca12847c48cbb716ddcbea11c72074a017b8073-select_another_facility_type";a:3:{i:0;R:21300;i:1;R:21162;i:2;R:21163;}s:72:"1228:com-facility-cedd5473b0139d68b4027ea6f118f9b2a01507f8-facility_type";a:3:{i:0;R:21300;i:1;R:21162;i:2;R:21163;}s:81:"1228:com-facility-f4cb18767929970ce38065223ee9b4e70c553d27-edit_the_facility_list";a:3:{i:0;R:21300;i:1;R:21162;i:2;R:21163;}s:81:"1228:com-facility-0d236211ec6795f71915f451d5e9c18fba277b53-view_the_facility_list";a:3:{i:0;R:21300;i:1;R:21162;i:2;R:21163;}s:86:"1228:com-facility-6139e2b1b477393225eeda2f764b9b2d7f583083-edit_the_facility_type_list";a:3:{i:0;R:21300;i:1;R:21162;i:2;R:21163;}s:86:"1228:com-facility-d23d667278670b15eb36083c28225b98da9291aa-view_the_facility_type_list";a:3:{i:0;R:21300;i:1;R:21162;i:2;R:21163;}s:89:"1228:com-facility-5c53fdd7e57238844ef5db4a4a43171993ba9977-this_form_is_used_to_descibe_b";a:3:{i:0;R:21300;i:1;R:21162;i:2;R:21163;}s:73:"1228:com-fco-a34b69fc46e7a278cf65c58bb347de6560fb046f-contact_information";a:3:{i:0;s:20:"out-ihris-common-fco";i:1;R:21162;i:2;R:21163;}s:70:"1228:com-fco-b17ac30c6213df2cbd0dbab532cb2c19d773fa5f-facility_contact";a:3:{i:0;R:21312;i:1;R:21162;i:2;R:21163;}s:81:"1228:com-geography-957cd1a44423bc735be244be158a79ad5e0affd6-edit_this_information";a:3:{i:0;s:26:"out-ihris-common-geography";i:1;R:21162;i:2;R:21163;}s:83:"1228:com-geography-8f12a44b12f65ea43ddb4305154428ef1ac77771-update_this_information";a:3:{i:0;R:21315;i:1;R:21162;i:2;R:21163;}s:81:"1228:com-geography-16b3b575cd58d9b6e8165484e0446ffadca590e7-select_another_region";a:3:{i:0;R:21315;i:1;R:21162;i:2;R:21163;}s:66:"1228:com-geography-0f217179940c6d89f5cb2c7002a58d91ab7286c1-region";a:3:{i:0;R:21315;i:1;R:21162;i:2;R:21163;}s:81:"1228:com-geography-46ca0b17bbbc57d65083fc12800e0f00b62b5879-select_another_county";a:3:{i:0;R:21315;i:1;R:21162;i:2;R:21163;}s:66:"1228:com-geography-60dee38933959dfdae71ec0ee78d9ddb94f8ba0e-county";a:3:{i:0;R:21315;i:1;R:21162;i:2;R:21163;}s:82:"1228:com-geography-a8e951ceceb8b9e0ab810caf2814b09b82789fe9-select_another_country";a:3:{i:0;R:21315;i:1;R:21162;i:2;R:21163;}s:67:"1228:com-geography-d523ebbd10146cdfd39dee077f04c9d08468d0bc-country";a:3:{i:0;R:21315;i:1;R:21162;i:2;R:21163;}s:83:"1228:com-geography-f478b12b819503bf29e391c50727f1bcbddcbd99-select_another_district";a:3:{i:0;R:21315;i:1;R:21162;i:2;R:21163;}s:68:"1228:com-geography-c0cb139cce34769fb7ed9bafc15290e91cf7736c-district";a:3:{i:0;R:21315;i:1;R:21162;i:2;R:21163;}s:81:"1228:com-geography-cdab45a7cd13630525d7fa45409cdf81c4386e5a-can_edit_country_list";a:3:{i:0;R:21315;i:1;R:21162;i:2;R:21163;}s:81:"1228:com-geography-fba25c0ff256a4992c4f134939d12ac3022ed074-can_view_country_list";a:3:{i:0;R:21315;i:1;R:21162;i:2;R:21163;}s:80:"1228:com-geography-3fc3000e5de1eaf8d076a779e250a46f9d2566cc-can_edit_region_list";a:3:{i:0;R:21315;i:1;R:21162;i:2;R:21163;}s:80:"1228:com-geography-8e20d6b6e3d4427849c2bad71603ff48874e5a55-can_view_region_list";a:3:{i:0;R:21315;i:1;R:21162;i:2;R:21163;}s:82:"1228:com-geography-5011b49c3d7f834eedb944a126cd5bf842f5627c-can_edit_district_list";a:3:{i:0;R:21315;i:1;R:21162;i:2;R:21163;}s:82:"1228:com-geography-b6d2a015654cae07ea5c49ceac535321c564fd30-can_view_district_list";a:3:{i:0;R:21315;i:1;R:21162;i:2;R:21163;}s:88:"1228:com-geography-5b0ea129d028186a3b30746068b032c12ea9f5b6-can_edit_some_geography_data";a:3:{i:0;R:21315;i:1;R:21162;i:2;R:21163;}s:88:"1228:com-geography-3331e3efa06212bcc8a7a5842ba1cc55b25706d3-can_view_some_geography_data";a:3:{i:0;R:21315;i:1;R:21162;i:2;R:21163;}s:87:"1228:com-geography-ba7a596a2ade6347e0052f18021ce234c34d53f0-can_edit_all_geography_data";a:3:{i:0;R:21315;i:1;R:21162;i:2;R:21163;}s:87:"1228:com-geography-9339ec90b3fa00c8370933b35b044c0faeb26959-can_view_all_geography_data";a:3:{i:0;R:21315;i:1;R:21162;i:2;R:21163;}s:64:"1228:com-geography-709a23220f2c3d64d1e1d6d18c4d5280f8d82fca-name";a:3:{i:0;R:21315;i:1;R:21162;i:2;R:21163;}s:68:"1228:com-geography-d219c68101f532de10add2cf42fb9dbeca73d3be-location";a:3:{i:0;R:21315;i:1;R:21162;i:2;R:21163;}s:82:"1228:com-geography-d6f6d27fcd351cdf5d39f0af9bfb7d37bec6a049-2_character_alpha_code";a:3:{i:0;R:21315;i:1;R:21162;i:2;R:21163;}s:76:"1228:com-geography-e645af7021df022b0ff4943dce265cc8982bd4a1-iso_numeric_code";a:3:{i:0;R:21315;i:1;R:21162;i:2;R:21163;}s:75:"1228:com-geography-776448127cae66036a39ffd58e24836959149776-primary_country";a:3:{i:0;R:21315;i:1;R:21162;i:2;R:21163;}s:86:"1228:com-geography-a2ade5a77c1d09d0b8571a9e77296b2e51c9dedf-use_for_location_selection";a:3:{i:0;R:21315;i:1;R:21162;i:2;R:21163;}s:64:"1228:com-geography-adac69379a626c2436948a4ef1792c7d719ef929-code";a:3:{i:0;R:21315;i:1;R:21162;i:2;R:21163;}s:75:"1228:com-job-957cd1a44423bc735be244be158a79ad5e0affd6-edit_this_information";a:3:{i:0;s:20:"out-ihris-common-job";i:1;R:21162;i:2;R:21163;}s:77:"1228:com-job-8f12a44b12f65ea43ddb4305154428ef1ac77771-update_this_information";a:3:{i:0;R:21343;i:1;R:21162;i:2;R:21163;}s:83:"1228:com-job-c7a5a275111e0d37069dde1f46c6a12d8a527e32-select_another_classification";a:3:{i:0;R:21343;i:1;R:21162;i:2;R:21163;}s:68:"1228:com-job-94c2a3189e7f7885455350c4c7a8df2d0d6ad1d1-classification";a:3:{i:0;R:21343;i:1;R:21162;i:2;R:21163;}s:72:"1228:com-job-9dfbe70f6c3a02a68ea47d26e7bc657df51d7024-select_another_job";a:3:{i:0;R:21343;i:1;R:21162;i:2;R:21163;}s:57:"1228:com-job-30c8cb83b9acd93beaa32086336c36cb77c065d9-job";a:3:{i:0;R:21343;i:1;R:21162;i:2;R:21163;}s:82:"1228:com-job-90b8cc7a41d118d5c9ed0cc31a5b34024f04e54e-edit_the_classification_list";a:3:{i:0;R:21343;i:1;R:21162;i:2;R:21163;}s:82:"1228:com-job-db62b975b88b71d78870d12ab1dce83f9512f650-view_the_classification_list";a:3:{i:0;R:21343;i:1;R:21162;i:2;R:21163;}s:71:"1228:com-job-1d6261b30ab93f0c4ad56574fefe8342042d7e12-edit_the_job_list";a:3:{i:0;R:21343;i:1;R:21162;i:2;R:21163;}s:71:"1228:com-job-05ac8fcbf083b4c17b092ad29d6768ecdb2e70a6-view_the_job_list";a:3:{i:0;R:21343;i:1;R:21162;i:2;R:21163;}s:84:"1228:com-job-9040e69bae98cad763becd4131f8aeb092064d25-can_edit_some_job_structure_da";a:3:{i:0;R:21343;i:1;R:21162;i:2;R:21163;}s:84:"1228:com-job-66761a59da81ea0f04ddffb40d787280d7645da8-can_view_some_job_structure_da";a:3:{i:0;R:21343;i:1;R:21162;i:2;R:21163;}s:84:"1228:com-job-d581c9b04c71a88eb6ae71e080d61cf0134417ca-can_edit_all_job_structure_dat";a:3:{i:0;R:21343;i:1;R:21162;i:2;R:21163;}s:84:"1228:com-job-895ceda6b4087d4a09d58b80eb64ae38c16dcf81-can_view_all_job_structure_dat";a:3:{i:0;R:21343;i:1;R:21162;i:2;R:21163;}s:58:"1228:com-job-709a23220f2c3d64d1e1d6d18c4d5280f8d82fca-name";a:3:{i:0;R:21343;i:1;R:21162;i:2;R:21163;}s:65:"1228:com-job-55f8ebc805e65b5b71ddafdae390e3be2bcd69af-description";a:3:{i:0;R:21343;i:1;R:21162;i:2;R:21163;}s:58:"1228:com-job-adac69379a626c2436948a4ef1792c7d719ef929-code";a:3:{i:0;R:21343;i:1;R:21162;i:2;R:21163;}s:59:"1228:com-job-952f375412e89ff213a8aca383d18e5691354347-start";a:3:{i:0;R:21343;i:1;R:21162;i:2;R:21163;}s:57:"1228:com-job-a2bb9d34b8a1a79665858d354585cf147e0dee4e-end";a:3:{i:0;R:21343;i:1;R:21162;i:2;R:21163;}s:62:"1228:com-job-97bbd308fa43b67e4ec67f539a40521878447eaf-midpoint";a:3:{i:0;R:21343;i:1;R:21162;i:2;R:21163;}s:59:"1228:com-job-70440046a3dc2e079f23ee1c57dfa76669b732aa-notes";a:3:{i:0;R:21343;i:1;R:21162;i:2;R:21163;}s:59:"1228:com-job-768e0c1c69573fb588f61f1308a015c11468e05f-title";a:3:{i:0;R:21343;i:1;R:21162;i:2;R:21163;}s:84:"1228:com-job-d376630f9f5a94fa06c6bcbd0bda02c2b10a8237-cadre_(health_professionals_on";a:3:{i:0;R:21343;i:1;R:21162;i:2;R:21163;}s:77:"1228:com-nok-fb3b6ae0e5168edbd28c99194198e992d196ab02-next_of_kin_information";a:3:{i:0;s:20:"out-ihris-common-nok";i:1;R:21162;i:2;R:21163;}s:75:"1228:com-nok-957cd1a44423bc735be244be158a79ad5e0affd6-edit_this_information";a:3:{i:0;R:21367;i:1;R:21162;i:2;R:21163;}s:77:"1228:com-nok-8f12a44b12f65ea43ddb4305154428ef1ac77771-update_this_information";a:3:{i:0;R:21367;i:1;R:21162;i:2;R:21163;}s:65:"1228:com-nok-40c305a2c208eb0dec79a88501f3ab9a4eb7d719-next_of_kin";a:3:{i:0;R:21367;i:1;R:21162;i:2;R:21163;}s:58:"1228:com-nok-709a23220f2c3d64d1e1d6d18c4d5280f8d82fca-name";a:3:{i:0;R:21367;i:1;R:21162;i:2;R:21163;}s:66:"1228:com-nok-9b4a86cba424a8ab70b35d9d1c129276324d7c03-relationship";a:3:{i:0;R:21367;i:1;R:21162;i:2;R:21163;}s:84:"1228:com-nok-bcb26b9256cda1061e4c4200a01c9fe8bf47b3c2-add_update_next_of_kin_informa";a:3:{i:0;R:21367;i:1;R:21162;i:2;R:21163;}s:84:"1228:com-nok-20e512563613aca400fb86cd1e309d65acdf0e6f-can_view_a_person's_next_of_ki";a:3:{i:0;R:21367;i:1;R:21162;i:2;R:21163;}s:84:"1228:com-nok-eb491455bc7dfa458f0e599131ca338cfbbb0b45-can_edit_a_person's_next_of_ki";a:3:{i:0;R:21367;i:1;R:21162;i:2;R:21163;}s:75:"1228:com-pas-957cd1a44423bc735be244be158a79ad5e0affd6-edit_this_information";a:3:{i:0;s:20:"out-ihris-common-pas";i:1;R:21162;i:2;R:21163;}s:77:"1228:com-pas-8f12a44b12f65ea43ddb4305154428ef1ac77771-update_this_information";a:3:{i:0;R:21377;i:1;R:21162;i:2;R:21163;}s:74:"1228:com-pas-846732ae0add6992953771848b4c1d4db603d6ab-scanned_paper_record";a:3:{i:0;R:21377;i:1;R:21162;i:2;R:21163;}s:84:"1228:com-pas-9bd4d3e0d563782bae6bfaa630604f50b0ad6e4e-can_view_archive_scan_of_a_per";a:3:{i:0;R:21377;i:1;R:21162;i:2;R:21163;}s:84:"1228:com-pas-fb37d72b83894b1fbadb67daa4c2de55aea33d0e-can_edit_archive_scan_of_a_per";a:3:{i:0;R:21377;i:1;R:21162;i:2;R:21163;}s:62:"1228:com-pas-e214b8a29923056887b7edf6635d90dcbb2abe88-document";a:3:{i:0;R:21377;i:1;R:21162;i:2;R:21163;}s:84:"1228:com-pas-92ce71b16a51c35bb77ef3ba0c4acf398a9575ad-add_update_scanned_paper_recor";a:3:{i:0;R:21377;i:1;R:21162;i:2;R:21163;}s:79:"1228:com-pco-acfe0960121a82d3f4fcd8a627345f090f99f830-other_contact_information";a:3:{i:0;s:20:"out-ihris-common-pco";i:1;R:21162;i:2;R:21163;}s:70:"1228:com-pco-bcd40f477a5d094a21596c70a724fbb97eaa3b83-add_work_contact";a:3:{i:0;R:21385;i:1;R:21162;i:2;R:21163;}s:75:"1228:com-pco-957cd1a44423bc735be244be158a79ad5e0affd6-edit_this_information";a:3:{i:0;R:21385;i:1;R:21162;i:2;R:21163;}s:77:"1228:com-pco-8f12a44b12f65ea43ddb4305154428ef1ac77771-update_this_information";a:3:{i:0;R:21385;i:1;R:21162;i:2;R:21163;}s:71:"1228:com-pco-0d16c6e19d1f2787125385b268ff4d2c3fad23de-emergency_contact";a:3:{i:0;R:21385;i:1;R:21162;i:2;R:21163;}s:66:"1228:com-pco-5ef99cda04c2dbafa3a3aedd58e1508dd022ec81-work_contact";a:3:{i:0;R:21385;i:1;R:21162;i:2;R:21163;}s:78:"1228:com-pco-646fca5792fc7afcc674d5fe0665822e751b8b30-work_contact_information";a:3:{i:0;R:21385;i:1;R:21162;i:2;R:21163;}s:67:"1228:com-pco-472a8d86c1e50ed22c2a2e1b3dfbb137199db964-other_contact";a:3:{i:0;R:21385;i:1;R:21162;i:2;R:21163;}s:71:"1228:com-pco-618261e5e2930f1d058d28a2674dc0fc5582040b-add_other_contact";a:3:{i:0;R:21385;i:1;R:21162;i:2;R:21163;}s:82:"1228:com-pco-a62c0efe72259eef933c22741ae849fac1136a8e-personal_contact_information";a:3:{i:0;R:21385;i:1;R:21162;i:2;R:21163;}s:75:"1228:com-pco-34db78a0aad08f0007ea55b8edc9bda4644be25b-add_emergency_contact";a:3:{i:0;R:21385;i:1;R:21162;i:2;R:21163;}s:74:"1228:com-pco-b39ba344a37eba1621f3e0b3696f3f956010eb34-add_personal_contact";a:3:{i:0;R:21385;i:1;R:21162;i:2;R:21163;}s:70:"1228:com-pco-a3fea9dd7468e2f50a0b64cb69e6feec65c3bc04-personal_contact";a:3:{i:0;R:21385;i:1;R:21162;i:2;R:21163;}s:83:"1228:com-pco-e0250f42a226eaebe3e073f945357d5fbc706d32-emergency_contact_information";a:3:{i:0;R:21385;i:1;R:21162;i:2;R:21163;}s:84:"1228:com-pco-75cbcf85c06c2dc59e498042ef498fcfc780845b-can_view_work_contact_child_fo";a:3:{i:0;R:21385;i:1;R:21162;i:2;R:21163;}s:84:"1228:com-pco-44ef00a3447afac9978c2c3c3950caaadc0ffc96-can_edit_work_contact_child_fo";a:3:{i:0;R:21385;i:1;R:21162;i:2;R:21163;}s:84:"1228:com-pco-75a88c30848367d493359b5e49de7db65420ac0a-can_view_emergnency_contact_ch";a:3:{i:0;R:21385;i:1;R:21162;i:2;R:21163;}s:84:"1228:com-pco-d0712b8b8a8b420fbcd8b30ace7ddb16e511ad10-can_edit_emergency_contact_chi";a:3:{i:0;R:21385;i:1;R:21162;i:2;R:21163;}s:84:"1228:com-pco-5124e4b593235ff40e1ee188c4801aaee355f16f-can_view_personal_contact_chil";a:3:{i:0;R:21385;i:1;R:21162;i:2;R:21163;}s:84:"1228:com-pco-2daf9bfbc5f747b652ea1d4767ef2f24f09c805a-can_edit_personal_contact_chil";a:3:{i:0;R:21385;i:1;R:21162;i:2;R:21163;}s:84:"1228:com-pco-d20fac74632e4d4e0dd9b129959d2e06d6b0d36e-can_view_other_contact_child_f";a:3:{i:0;R:21385;i:1;R:21162;i:2;R:21163;}s:84:"1228:com-pco-0c45aba590d585f6524c3f44641c13071ef78f02-can_edit_other_contact_child_f";a:3:{i:0;R:21385;i:1;R:21162;i:2;R:21163;}s:84:"1228:com-pco-7d37b05e87a4088f4b09293f62a2ced355b8e57e-add_update_contact_information";a:3:{i:0;R:21385;i:1;R:21162;i:2;R:21163;}s:77:"1228:com-pdo-79032e7748e28ceacd8815135fe9232d4af79725-demographic_information";a:3:{i:0;s:20:"out-ihris-common-pdo";i:1;R:21162;i:2;R:21163;}s:75:"1228:com-pdo-957cd1a44423bc735be244be158a79ad5e0affd6-edit_this_information";a:3:{i:0;R:21409;i:1;R:21162;i:2;R:21163;}s:77:"1228:com-pdo-8f12a44b12f65ea43ddb4305154428ef1ac77771-update_this_information";a:3:{i:0;R:21409;i:1;R:21162;i:2;R:21163;}s:83:"1228:com-pdo-d5ffe4341025f8202649ede746c339b259aca4e9-select_another_marital_status";a:3:{i:0;R:21409;i:1;R:21162;i:2;R:21163;}s:68:"1228:com-pdo-e65f73600961af1c5a4703e1fa25d1c6274b41fd-marital_status";a:3:{i:0;R:21409;i:1;R:21162;i:2;R:21163;}s:84:"1228:com-pdo-1f4709d57db3bcfce553b5737843a44338a6d254-can_view_demographic_child_for";a:3:{i:0;R:21409;i:1;R:21162;i:2;R:21163;}s:84:"1228:com-pdo-01f2fb244c0e90c06f69c38bd2c61844ace5d16b-can_edit_demographic_child_for";a:3:{i:0;R:21409;i:1;R:21162;i:2;R:21163;}s:84:"1228:com-pdo-2df60e27e525b007df13c8e326ba13a2d35ce2f7-can_edit_the_department_marita";a:3:{i:0;R:21409;i:1;R:21162;i:2;R:21163;}s:84:"1228:com-pdo-0916b2a257092fd3b67b0a7ec7fd6ee26ef691ff-can_view_the_department_marita";a:3:{i:0;R:21409;i:1;R:21162;i:2;R:21163;}s:84:"1228:com-pdo-7a69c0d089a6f2f4b4ca8055f27522ac6db0f9ac-add_update_demographic_informa";a:3:{i:0;R:21409;i:1;R:21162;i:2;R:21163;}s:60:"1228:com-pdo-8a754c61c2ced0c5ff79a1827e02c9d643d6d926-gender";a:3:{i:0;R:21409;i:1;R:21162;i:2;R:21163;}s:60:"1228:com-pdo-b7c17e97d3d625694b836d85ace6edc18bbef0e6-female";a:3:{i:0;R:21409;i:1;R:21162;i:2;R:21163;}s:58:"1228:com-pdo-3f3a489c72dea800ea7b6338c89938766d41a6e5-male";a:3:{i:0;R:21409;i:1;R:21162;i:2;R:21163;}s:67:"1228:com-pdo-133160594d08fcd32f94c34d17e39f61e6f3d12e-date_of_birth";a:3:{i:0;R:21409;i:1;R:21162;i:2;R:21163;}s:75:"1228:com-ped-957cd1a44423bc735be244be158a79ad5e0affd6-edit_this_information";a:3:{i:0;s:20:"out-ihris-common-ped";i:1;R:21162;i:2;R:21163;}s:77:"1228:com-ped-8f12a44b12f65ea43ddb4305154428ef1ac77771-update_this_information";a:3:{i:0;R:21424;i:1;R:21162;i:2;R:21163;}s:83:"1228:com-ped-d202f1032b9a620f49fb611bc467743100084419-select_another_education_type";a:3:{i:0;R:21424;i:1;R:21162;i:2;R:21163;}s:68:"1228:com-ped-4194e1fe65c196c62aed6eb58ac41d2ce0961a42-education_type";a:3:{i:0;R:21424;i:1;R:21162;i:2;R:21163;}s:77:"1228:com-ped-e7bb8cafc4bf75aeb2719b2432f9ffc161b4bb35-institution_information";a:3:{i:0;R:21424;i:1;R:21162;i:2;R:21163;}s:72:"1228:com-ped-d38afe466639dbd74b125c15116ccf4b98ae5e17-degree_information";a:3:{i:0;R:21424;i:1;R:21162;i:2;R:21163;}s:75:"1228:com-ped-0775b9ccca0f8f4cf00469286096439fc72c0ac3-select_another_degree";a:3:{i:0;R:21424;i:1;R:21162;i:2;R:21163;}s:60:"1228:com-ped-41c26b83b688d816cd49d60e0e2c8be032feacea-degree";a:3:{i:0;R:21424;i:1;R:21162;i:2;R:21163;}s:83:"1228:com-ped-efb7dde4cde03ca18999243b626d83649a641563-can_view_education_child_form";a:3:{i:0;R:21424;i:1;R:21162;i:2;R:21163;}s:84:"1228:com-ped-3b81e9264dfc335afb9ea4af051d7d5bf8573c15-can_edit_education_child_forms";a:3:{i:0;R:21424;i:1;R:21162;i:2;R:21163;}s:84:"1228:com-ped-fc7706a379f95fe33e2ba73c01b3c0d0437eeba6-can_edit_education_type_databa";a:3:{i:0;R:21424;i:1;R:21162;i:2;R:21163;}s:84:"1228:com-ped-603700f8155c032e082b0a5dd6c25a12c9227297-can_view_education_type_databa";a:3:{i:0;R:21424;i:1;R:21162;i:2;R:21163;}s:83:"1228:com-ped-38cc79d61738b407c4fab0fbdabef87c1ef658fb-can_edit_degree_type_database";a:3:{i:0;R:21424;i:1;R:21162;i:2;R:21163;}s:83:"1228:com-ped-1deccd80d865c7b6f67360760755d5979d113890-can_view_degree_type_database";a:3:{i:0;R:21424;i:1;R:21162;i:2;R:21163;}s:82:"1228:com-ped-79d33bec696882291b2688df8545bdaba961f38c-add_update_education_history";a:3:{i:0;R:21424;i:1;R:21162;i:2;R:21163;}s:71:"1228:com-ped-1a9ef1a8b15e5f3ff28eb2dbbf0dba081dc1ab3c-education_history";a:3:{i:0;R:21424;i:1;R:21162;i:2;R:21163;}s:58:"1228:com-ped-709a23220f2c3d64d1e1d6d18c4d5280f8d82fca-name";a:3:{i:0;R:21424;i:1;R:21162;i:2;R:21163;}s:84:"1228:com-ped-1e1de0b1ba00cbba69b1f186346e0c581b9c0bfd-select_education_type_then_deg";a:3:{i:0;R:21424;i:1;R:21162;i:2;R:21163;}s:70:"1228:com-ped-b65443035075ad39d244206abb64eeaba9e7d289-institution_name";a:3:{i:0;R:21424;i:1;R:21162;i:2;R:21163;}s:74:"1228:com-ped-302d051bd9d14a6588b4596382cf3313915d95cc-institution_location";a:3:{i:0;R:21424;i:1;R:21162;i:2;R:21163;}s:84:"1228:com-ped-b4edbc42b66d002928aa471fc202ccdd86aa24aa-year_of_graduation_(leave_blan";a:3:{i:0;R:21424;i:1;R:21162;i:2;R:21163;}s:59:"1228:com-ped-8a52ed17c589876ec64358a50e9fe14e754ddc3f-major";a:3:{i:0;R:21424;i:1;R:21162;i:2;R:21163;}s:75:"1228:com-pem-957cd1a44423bc735be244be158a79ad5e0affd6-edit_this_information";a:3:{i:0;s:20:"out-ihris-common-pem";i:1;R:21162;i:2;R:21163;}s:77:"1228:com-pem-8f12a44b12f65ea43ddb4305154428ef1ac77771-update_this_information";a:3:{i:0;R:21447;i:1;R:21162;i:2;R:21163;}s:74:"1228:com-pem-9ea9430e88293253437468421badfc0437d0e507-employer_information";a:3:{i:0;R:21447;i:1;R:21162;i:2;R:21163;}s:73:"1228:com-pem-2042c7a2cb2dce22aa03965f55e46daf6be52e3e-company_information";a:3:{i:0;R:21447;i:1;R:21162;i:2;R:21163;}s:74:"1228:com-pem-f18eb66d997b2cfefa36eeb32105e0e552c41c36-position_information";a:3:{i:0;R:21447;i:1;R:21162;i:2;R:21163;}s:84:"1228:com-pem-4c922a985e54225335642734451543b92ea193a8-can_view_employment_child_form";a:3:{i:0;R:21447;i:1;R:21162;i:2;R:21163;}s:84:"1228:com-pem-85da33e469e5be33fe3fb545af7bf8d56c0df495-can_edit_employment_child_form";a:3:{i:0;R:21447;i:1;R:21162;i:2;R:21163;}s:83:"1228:com-pem-a7739daf35a0b71b70aca2fe7f673df30bc13a23-add_update_employment_history";a:3:{i:0;R:21447;i:1;R:21162;i:2;R:21163;}s:72:"1228:com-pem-324597a3e9015639cd9be113b5d5a229d513adc0-employment_history";a:3:{i:0;R:21447;i:1;R:21162;i:2;R:21163;}s:66:"1228:com-pem-8599f5cc48ffccc0b7947fbf1ced5ef035111c37-company_name";a:3:{i:0;R:21447;i:1;R:21162;i:2;R:21163;}s:69:"1228:com-pem-d2142c60f4e0b58f1adc22bcc24002cf4668f553-company_address";a:3:{i:0;R:21447;i:1;R:21162;i:2;R:21163;}s:71:"1228:com-pem-a4bdd3c40f3b58df99d45816605e448022443488-company_telephone";a:3:{i:0;R:21447;i:1;R:21162;i:2;R:21163;}s:66:"1228:com-pem-2338839e67bf3d5c16d526f42910c2bd5e6b7835-date_started";a:3:{i:0;R:21447;i:1;R:21162;i:2;R:21163;}s:67:"1228:com-pem-0a3c87cee73dad3e2f57035ef94a2b3edea2dd63-starting_wage";a:3:{i:0;R:21447;i:1;R:21162;i:2;R:21163;}s:71:"1228:com-pem-02f34a5f7737683ade92fe2e9fc8769d4a84e556-starting_position";a:3:{i:0;R:21447;i:1;R:21162;i:2;R:21163;}s:84:"1228:com-pem-695dee46e84f98c019cc056650b4acf41dbee033-date_ended_(leave_blank_if_sti";a:3:{i:0;R:21447;i:1;R:21162;i:2;R:21163;}s:65:"1228:com-pem-6da55b4b548feef2e5685ef16ae1f8dcd31bbb25-ending_wage";a:3:{i:0;R:21447;i:1;R:21162;i:2;R:21163;}s:69:"1228:com-pem-85d16d0bc7c9d0b3c296c1b8678f3567da6f717a-ending_position";a:3:{i:0;R:21447;i:1;R:21162;i:2;R:21163;}s:64:"1228:com-pem-2cd4fa195ed5b220930149c31cc72fbb131921db-supervisor";a:3:{i:0;R:21447;i:1;R:21162;i:2;R:21163;}s:68:"1228:com-pem-f4cc4db9a036bf0d05a59f5d1d4663a3923668cd-ok_to_contact?";a:3:{i:0;R:21447;i:1;R:21162;i:2;R:21163;}s:74:"1228:com-pem-776646e300a5d3f9cf3f6acd1b4f4ae2363567f2-job_responsibilities";a:3:{i:0;R:21447;i:1;R:21162;i:2;R:21163;}s:72:"1228:com-pem-833d9dfabff5000d616a6acfd37c7030aab3aa42-reason_for_leaving";a:3:{i:0;R:21447;i:1;R:21162;i:2;R:21163;}s:68:"1228:com-person-9c6e28513f2c6f63ad0349bb55ca3ae19a5c6ba2-view_person";a:3:{i:0;s:23:"out-ihris-common-person";i:1;R:21162;i:2;R:21163;}s:79:"1228:com-person-0474d22ea4894acd04ee5d77b5587301c77e6415-individual_information";a:3:{i:0;R:21470;i:1;R:21162;i:2;R:21163;}s:61:"1228:com-person-34d8b60fe25332f7b98585e82e753eaf502c3e50-hide";a:3:{i:0;R:21470;i:1;R:21162;i:2;R:21163;}s:75:"1228:com-person-d5bea389126e1910f2a6137983a05eef50e07365-add_identification";a:3:{i:0;R:21470;i:1;R:21162;i:2;R:21163;}s:78:"1228:com-person-957cd1a44423bc735be244be158a79ad5e0affd6-edit_this_information";a:3:{i:0;R:21470;i:1;R:21162;i:2;R:21163;}s:80:"1228:com-person-8f12a44b12f65ea43ddb4305154428ef1ac77771-update_this_information";a:3:{i:0;R:21470;i:1;R:21162;i:2;R:21163;}s:73:"1228:com-person-14ff2b6100bb4fe92eb1c4d833d7d5bbd5c81082-name_nationality";a:3:{i:0;R:21470;i:1;R:21162;i:2;R:21163;}s:76:"1228:com-person-a34b69fc46e7a278cf65c58bb347de6560fb046f-contact_information";a:3:{i:0;R:21470;i:1;R:21162;i:2;R:21163;}s:71:"1228:com-person-56663729aef0706c003caf4033fd3cb44dc729e4-qualifications";a:3:{i:0;R:21470;i:1;R:21162;i:2;R:21163;}s:81:"1228:com-person-bc6186721a821b6a3588eedf92f8d1333e7c3d25-add_language_proficiency";a:3:{i:0;R:21470;i:1;R:21162;i:2;R:21163;}s:71:"1228:com-person-a1837e219c9b275f9911047674ccf72893e11400-add_competency";a:3:{i:0;R:21470;i:1;R:21162;i:2;R:21163;}s:79:"1228:com-person-2e1cec2d8277ef88707777617b8c8c34707b3164-competency_evaluations";a:3:{i:0;R:21470;i:1;R:21162;i:2;R:21163;}s:75:"1228:com-person-324597a3e9015639cd9be113b5d5a229d513adc0-employment_history";a:3:{i:0;R:21470;i:1;R:21162;i:2;R:21163;}s:71:"1228:com-person-fee94010b437eac86ce4e9d1b3a732333e639458-add_employment";a:3:{i:0;R:21470;i:1;R:21162;i:2;R:21163;}s:74:"1228:com-person-1a9ef1a8b15e5f3ff28eb2dbbf0dba081dc1ab3c-education_history";a:3:{i:0;R:21470;i:1;R:21162;i:2;R:21163;}s:70:"1228:com-person-2035097f8ca3ec8c281deab33eb7fe228f2783b4-add_education";a:3:{i:0;R:21470;i:1;R:21162;i:2;R:21163;}s:62:"1228:com-person-70440046a3dc2e079f23ee1c57dfa76669b732aa-notes";a:3:{i:0;R:21470;i:1;R:21162;i:2;R:21163;}s:65:"1228:com-person-8b851bdab36a811b6e6416e9bb1952c372bc9bd8-add_note";a:3:{i:0;R:21470;i:1;R:21162;i:2;R:21163;}s:68:"1228:com-person-702852a3b282bcdf2fc2c70d7d8776c6944607c5-view_record";a:3:{i:0;R:21470;i:1;R:21162;i:2;R:21163;}s:74:"1228:com-person-796cc76c7a1fafcc708fee804247b4646e549af6-add_update_person";a:3:{i:0;R:21470;i:1;R:21162;i:2;R:21163;}s:77:"1228:com-person-ad12e4228cccee1d10c5b8de2aa28c286efaaf96-personal_information";a:3:{i:0;R:21470;i:1;R:21162;i:2;R:21163;}s:81:"1228:com-person-7a54d67060070621987f2082fb34eaa2fb76cbd5-can_view_the_person_page";a:3:{i:0;R:21470;i:1;R:21162;i:2;R:21163;}s:81:"1228:com-person-422043c42c47c34a8f34d7af31b9378571fd27d7-can_edit_the_person_page";a:3:{i:0;R:21470;i:1;R:21162;i:2;R:21163;}s:87:"1228:com-person-d54747a3d8594c0e0b0ca7e49ea14f3153ce68b2-can_view_all_of_the_child_form";a:3:{i:0;R:21470;i:1;R:21162;i:2;R:21163;}s:87:"1228:com-person-d0749857bc627c3c9efe9dfbbed93c14f3b63ba0-can_edit_all_of_the_child_form";a:3:{i:0;R:21470;i:1;R:21162;i:2;R:21163;}s:63:"1228:com-person-8c41ae88467fe5bbad09fcd488662b25c3ec5333-person";a:3:{i:0;R:21470;i:1;R:21162;i:2;R:21163;}s:87:"1228:com-person-14c54d6f96f96be659db8f9f43cb960af2796b16-this_form_holds_basic_informat";a:3:{i:0;R:21470;i:1;R:21162;i:2;R:21163;}s:64:"1228:com-person-77dfca2a56f9b1ffc2b6687e230088cf86fbc074-surname";a:3:{i:0;R:21470;i:1;R:21162;i:2;R:21163;}s:67:"1228:com-person-b6ea992aab4668311bb94778e056dd0285f27621-first_name";a:3:{i:0;R:21470;i:1;R:21162;i:2;R:21163;}s:68:"1228:com-person-a89d2eac8d13516b29ef1f2253faa80144670f49-other_names";a:3:{i:0;R:21470;i:1;R:21162;i:2;R:21163;}s:68:"1228:com-person-1969ead537490c3bbaf406fab393be9acbe514c1-nationality";a:3:{i:0;R:21470;i:1;R:21162;i:2;R:21163;}s:66:"1228:com-person-d450c6ad434d506143883d97ebbe92e7f89f04ef-residence";a:3:{i:0;R:21470;i:1;R:21162;i:2;R:21163;}s:74:"1228:com-person-244e3e85d6d93e7f2371f153711807c17e45c44a-view_name_history";a:3:{i:0;R:21470;i:1;R:21162;i:2;R:21163;}s:61:"1228:com-photo-50e19fda0d5b4b74a4a1a1d584e56578693a4ea4-image";a:3:{i:0;s:22:"out-ihris-common-photo";i:1;R:21162;i:2;R:21163;}s:60:"1228:com-photo-eb9a4bc1c0c153e4e4b042a79113b815b7e3021d-date";a:3:{i:0;R:21504;i:1;R:21162;i:2;R:21163;}s:67:"1228:com-photo-55f8ebc805e65b5b71ddafdae390e3be2bcd69af-description";a:3:{i:0;R:21504;i:1;R:21162;i:2;R:21163;}s:80:"1228:com-pid-2ab98ffb9f37cd9892b1f2a56fbe8c7770e5c421-identification_information";a:3:{i:0;s:20:"out-ihris-common-pid";i:1;R:21162;i:2;R:21163;}s:75:"1228:com-pid-957cd1a44423bc735be244be158a79ad5e0affd6-edit_this_information";a:3:{i:0;R:21508;i:1;R:21162;i:2;R:21163;}s:77:"1228:com-pid-8f12a44b12f65ea43ddb4305154428ef1ac77771-update_this_information";a:3:{i:0;R:21508;i:1;R:21162;i:2;R:21163;}s:76:"1228:com-pid-969a089a8a1cd14379a0c004ece3c9e460312079-select_another_id_type";a:3:{i:0;R:21508;i:1;R:21162;i:2;R:21163;}s:61:"1228:com-pid-80eed420167f846869fd322a9c2979c710c9137a-id_type";a:3:{i:0;R:21508;i:1;R:21162;i:2;R:21163;}s:68:"1228:com-pid-9d2c7063088793c055fe015d3841d0cc2df8e788-identification";a:3:{i:0;R:21508;i:1;R:21162;i:2;R:21163;}s:83:"1228:com-pid-c374fe0db3badbe2e2f0ca6b659c10e367987b72-can_view_person_id_child_form";a:3:{i:0;R:21508;i:1;R:21162;i:2;R:21163;}s:84:"1228:com-pid-7f02e6da4baae0987daf6d6a41c3faebd5263eb1-can_edit_person_id_child_forms";a:3:{i:0;R:21508;i:1;R:21162;i:2;R:21163;}s:83:"1228:com-pid-ec0100f3c9292e93fc148c09f2e6d65d32e93588-can_edit_the_id_type_database";a:3:{i:0;R:21508;i:1;R:21162;i:2;R:21163;}s:83:"1228:com-pid-2c5bf42080db08ec232f20162db2328a175e01b1-can_view_the_id_type_database";a:3:{i:0;R:21508;i:1;R:21162;i:2;R:21163;}s:79:"1228:com-pid-2d62189b56386fc0904cdc71dbfad2e16c09c5da-add_update_identification";a:3:{i:0;R:21508;i:1;R:21162;i:2;R:21163;}s:73:"1228:com-pid-662889e70bf828812cadf7ae57b39371090506a6-identification_type";a:3:{i:0;R:21508;i:1;R:21162;i:2;R:21163;}s:75:"1228:com-pid-7e18cbeccdaf07591c33192faf76b632cb94d29b-person_identification";a:3:{i:0;R:21508;i:1;R:21162;i:2;R:21163;}s:84:"1228:com-pid-b2a3c0d986d4cc4b7766c1062eaba8c4865e0c04-this_form_holds_basic_informat";a:3:{i:0;R:21508;i:1;R:21162;i:2;R:21163;}s:75:"1228:com-pid-693424b279e2bb80eee641068225d8e78330ebab-identification_number";a:3:{i:0;R:21508;i:1;R:21162;i:2;R:21163;}s:74:"1228:com-pla-eecc6110e9a6bb7604c97811aee7381c1b62f0f5-language_information";a:3:{i:0;s:20:"out-ihris-common-pla";i:1;R:21162;i:2;R:21163;}s:75:"1228:com-pla-957cd1a44423bc735be244be158a79ad5e0affd6-edit_this_information";a:3:{i:0;R:21524;i:1;R:21162;i:2;R:21163;}s:77:"1228:com-pla-8f12a44b12f65ea43ddb4305154428ef1ac77771-update_this_information";a:3:{i:0;R:21524;i:1;R:21162;i:2;R:21163;}s:77:"1228:com-pla-e9d5ba2d8a0916f161ae7e151f9088f5e5740b35-select_another_language";a:3:{i:0;R:21524;i:1;R:21162;i:2;R:21163;}s:62:"1228:com-pla-89b86ab0e66f527166d98df92ddbcf5416ed58f6-language";a:3:{i:0;R:21524;i:1;R:21162;i:2;R:21163;}s:84:"1228:com-pla-6d25d4971eb832ecc19c0adb1e96706655cea3c8-can_view_person_language_child";a:3:{i:0;R:21524;i:1;R:21162;i:2;R:21163;}s:84:"1228:com-pla-1cbe5c5e6263b25c813aeee7890d4af614b55281-can_edit_person_language_child";a:3:{i:0;R:21524;i:1;R:21162;i:2;R:21163;}s:84:"1228:com-pla-202c47c3f01795ee1e1c81cc1d012d59e4d8b5ac-can_edit_the_language_database";a:3:{i:0;R:21524;i:1;R:21162;i:2;R:21163;}s:84:"1228:com-pla-4f66b153ec8fc5e68d1a352413b6b6ad78913ac8-can_view_the_language_database";a:3:{i:0;R:21524;i:1;R:21162;i:2;R:21163;}s:73:"1228:com-pla-0f9d65817ade9ab9c9ed231e054dc6025af8048d-add_update_language";a:3:{i:0;R:21524;i:1;R:21162;i:2;R:21163;}s:74:"1228:com-pla-690cceacb855650cb4480eb9d3417f45e9cc25ef-language_proficiency";a:3:{i:0;R:21524;i:1;R:21162;i:2;R:21163;}s:81:"1228:com-pla-52e099b847bdfa31d9a19eb160e45488a6fea413-person_language_proficiency";a:3:{i:0;R:21524;i:1;R:21162;i:2;R:21163;}s:64:"1228:com-pla-8b9cd685c13a1b0eba65b612d6e106109228c397-elementary";a:3:{i:0;R:21524;i:1;R:21162;i:2;R:21163;}s:69:"1228:com-pla-e0888a960865728f66543bb0fe0d361440a57023-limited_working";a:3:{i:0;R:21524;i:1;R:21162;i:2;R:21163;}s:74:"1228:com-pla-4f424d71fd0da1c98593d02be2086617391f6002-professional_working";a:3:{i:0;R:21524;i:1;R:21162;i:2;R:21163;}s:71:"1228:com-pla-9f94dc1e778938c7cc73c7bb384f95b8d48fca1c-full_professional";a:3:{i:0;R:21524;i:1;R:21162;i:2;R:21163;}s:60:"1228:com-pla-96957def11889136bda69d6b02b51baba0fb0839-fluent";a:3:{i:0;R:21524;i:1;R:21162;i:2;R:21163;}s:74:"1228:com-pla-4345c36c707a69fa369aadddfa5366180f10c524-speaking_proficiency";a:3:{i:0;R:21524;i:1;R:21162;i:2;R:21163;}s:73:"1228:com-pla-d32f46a8f76b67865e3f154a9d5228bd8585ccd7-reading_proficiency";a:3:{i:0;R:21524;i:1;R:21162;i:2;R:21163;}s:73:"1228:com-pla-b4a98652e3eb4edfcd02ce2251a6780c44293a3a-writing_proficiency";a:3:{i:0;R:21524;i:1;R:21162;i:2;R:21163;}s:75:"1228:com-pno-957cd1a44423bc735be244be158a79ad5e0affd6-edit_this_information";a:3:{i:0;s:20:"out-ihris-common-pno";i:1;R:21162;i:2;R:21163;}s:77:"1228:com-pno-8f12a44b12f65ea43ddb4305154428ef1ac77771-update_this_information";a:3:{i:0;R:21545;i:1;R:21162;i:2;R:21163;}s:58:"1228:com-pno-2c924e3088204ee77ba681f72be3444357932fca-note";a:3:{i:0;R:21545;i:1;R:21162;i:2;R:21163;}s:84:"1228:com-pno-b83a0bdae28c6664f1bf9c01bbb211b8664fb558-can_view_notes_child_form_of_a";a:3:{i:0;R:21545;i:1;R:21162;i:2;R:21163;}s:83:"1228:com-pno-54cd9bba24982afa3b0df3ddb74ee55691e51f92-can_edit_notes_child_forms_of";a:3:{i:0;R:21545;i:1;R:21162;i:2;R:21163;}s:59:"1228:com-pno-70440046a3dc2e079f23ee1c57dfa76669b732aa-notes";a:3:{i:0;R:21545;i:1;R:21162;i:2;R:21163;}s:70:"1228:com-pno-6cc81314d15ac067d15a1d61962bc52dd23ab02e-add_update_notes";a:3:{i:0;R:21545;i:1;R:21162;i:2;R:21163;}s:64:"1228:com-pno-2aafad40063bdb20757ad69b9fc9e0a06d6ca1c1-date_added";a:3:{i:0;R:21545;i:1;R:21162;i:2;R:21163;}s:68:"1228:com-ppp-4ddc5c46158ee0995ac2737e844be9693a0afd62-passport_photo";a:3:{i:0;s:20:"out-ihris-common-ppp";i:1;R:21162;i:2;R:21163;}s:75:"1228:com-ppp-957cd1a44423bc735be244be158a79ad5e0affd6-edit_this_information";a:3:{i:0;R:21554;i:1;R:21162;i:2;R:21163;}s:77:"1228:com-ppp-8f12a44b12f65ea43ddb4305154428ef1ac77771-update_this_information";a:3:{i:0;R:21554;i:1;R:21162;i:2;R:21163;}s:84:"1228:com-ppp-531e0261fdaaf3aa330172da559fd23dcf840157-can_view_passport_photo_of_a_p";a:3:{i:0;R:21554;i:1;R:21162;i:2;R:21163;}s:66:"1228:com-ppp-98969f89fdd0d890ddd7f79a6013f0d7fe958d82-person_photo";a:3:{i:0;R:21554;i:1;R:21162;i:2;R:21163;}s:79:"1228:com-ppp-d2921ba66ca965be27af4daf62f3b310b8938638-add_update_passport_photo";a:3:{i:0;R:21554;i:1;R:21162;i:2;R:21163;}s:84:"1228:com-ppp-d3c0a5135e6f3b802e0531f5cf495f1edbea0a95-can_edit_passport_photo_of_a_p";a:3:{i:0;R:21554;i:1;R:21162;i:2;R:21163;}s:60:"1228:com-pre-b3bd0b5a70497bec4a02b7eb1cb0d4f37eb71a2a-resume";a:3:{i:0;s:20:"out-ihris-common-pre";i:1;R:21162;i:2;R:21163;}s:75:"1228:com-pre-957cd1a44423bc735be244be158a79ad5e0affd6-edit_this_information";a:3:{i:0;R:21562;i:1;R:21162;i:2;R:21163;}s:77:"1228:com-pre-8f12a44b12f65ea43ddb4305154428ef1ac77771-update_this_information";a:3:{i:0;R:21562;i:1;R:21162;i:2;R:21163;}s:81:"1228:com-pre-a1e57b657486120c3f437f749672c7b7dc5d8b29-can_view_resume_of_a_person";a:3:{i:0;R:21562;i:1;R:21162;i:2;R:21163;}s:81:"1228:com-pre-7a4d06bc97ed21b94135c40c7d0f22dd14305ae1-can_edit_resume_of_a_person";a:3:{i:0;R:21562;i:1;R:21162;i:2;R:21163;}s:67:"1228:com-pre-1f63f436ee46c00cb76c9fea707913e8cdb61d36-person_resume";a:3:{i:0;R:21562;i:1;R:21162;i:2;R:21163;}s:71:"1228:com-pre-93e9d086202a5456fd81307bfdb5d9c9e4e37050-add_update_resume";a:3:{i:0;R:21562;i:1;R:21162;i:2;R:21163;}s:75:"1228:com-psc-957cd1a44423bc735be244be158a79ad5e0affd6-edit_this_information";a:3:{i:0;s:20:"out-ihris-common-psc";i:1;R:21162;i:2;R:21163;}s:77:"1228:com-psc-8f12a44b12f65ea43ddb4305154428ef1ac77771-update_this_information";a:3:{i:0;R:21570;i:1;R:21162;i:2;R:21163;}s:77:"1228:com-psc-9cd2e870c1f9242da8200076d54e3a75bfd5875e-view_evaluation_history";a:3:{i:0;R:21570;i:1;R:21162;i:2;R:21163;}s:64:"1228:com-psc-05e59bb0ed360ac5cfcc85cdb8a3184e0442743f-competency";a:3:{i:0;R:21570;i:1;R:21162;i:2;R:21163;}s:76:"1228:com-psc-f069c2554e91ac3c50ee9697004b99ed941c09bf-competency_information";a:3:{i:0;R:21570;i:1;R:21162;i:2;R:21163;}s:83:"1228:com-psc-f6decb75e195965f78546c95f1c4158510670058-competency_evaluation_history";a:3:{i:0;R:21570;i:1;R:21162;i:2;R:21163;}s:60:"1228:com-psc-63143b6f8007b98c53ca2149822777b3566f9241-return";a:3:{i:0;R:21570;i:1;R:21162;i:2;R:21163;}s:67:"1228:com-psc-2eacdbe4cbf1468a1777876985c70d6ea0187dfb-not_evaluated";a:3:{i:0;R:21570;i:1;R:21162;i:2;R:21163;}s:63:"1228:com-psc-a87f8f5970c2b31e74f5d756a52d3ae5080cc050-competent";a:3:{i:0;R:21570;i:1;R:21162;i:2;R:21163;}s:67:"1228:com-psc-f2ab75418fc0a6323288594ebcb81f6cd9e31716-not_competent";a:3:{i:0;R:21570;i:1;R:21162;i:2;R:21163;}s:84:"1228:com-psc-62c80f33b51a4a3fc687118610d60814b7a3365e-can_view_person_competency_chi";a:3:{i:0;R:21570;i:1;R:21162;i:2;R:21163;}s:84:"1228:com-psc-f41a509fe2c3d7f1c6d22d2c8c679570efdda9a4-can_edit_person_competency_chi";a:3:{i:0;R:21570;i:1;R:21162;i:2;R:21163;}s:84:"1228:com-psc-e57f139a5ad974f130ac3730c1806b2c981b229a-can_view_the_competency_evalua";a:3:{i:0;R:21570;i:1;R:21162;i:2;R:21163;}s:84:"1228:com-psc-c142eb393730e4c7f7a2e8eb496e0e7b950032c3-edit_the_competency_evaluation";a:3:{i:0;R:21570;i:1;R:21162;i:2;R:21163;}s:84:"1228:com-psc-b262179303e73c68ffc47015198dd01ea315b366-view_the_competency_evaluation";a:3:{i:0;R:21570;i:1;R:21162;i:2;R:21163;}s:75:"1228:com-psc-4193018f2e723fb8cc87a51535457bb114cdd240-competency_evaluation";a:3:{i:0;R:21570;i:1;R:21162;i:2;R:21163;}s:71:"1228:com-psc-d46b260f72783feacda14ea3a67f4db621b46997-person_competency";a:3:{i:0;R:21570;i:1;R:21162;i:2;R:21163;}s:75:"1228:com-psc-99fec0429f4298a64417ac45455ddbe9cdc9e8f5-add_update_competency";a:3:{i:0;R:21570;i:1;R:21162;i:2;R:21163;}s:68:"1228:com-psc-5aea3ef51b6af5cad59223e2821746a88c860e8e-last_evaluated";a:3:{i:0;R:21570;i:1;R:21162;i:2;R:21163;}s:64:"1228:com-psc-ff7513853508e7c6e3aa07908df2a450a026eb88-evaluation";a:3:{i:0;R:21570;i:1;R:21162;i:2;R:21163;}s:84:"1228:com-psc-d7723a0649f01129502571573b1e1d512287ab9d-can_view_the_competency_evalua";a:3:{i:0;R:21570;i:1;R:21162;i:2;R:21163;}s:68:"1228:com-rfo-00d1e8f3b7e617bbce21544e5388a56b668d8dcd-recent_changes";a:3:{i:0;s:20:"out-ihris-common-rfo";i:1;R:21162;i:2;R:21163;}s:84:"1228:com-rfo-6676e808e171f380ce79bcdc8e5716665b20b0dc-view_forms_that_have_been_upda";a:3:{i:0;R:21592;i:1;R:21162;i:2;R:21163;}s:84:"1228:com-rfo-1db13e26872e92ac395cf318fae1d09ccc07ee48-select_the_form_to_view_the_mo";a:3:{i:0;R:21592;i:1;R:21162;i:2;R:21163;}s:78:"1228:com-rfo-2cf86a02832d1d7d06ffece8bbee07a14edad492-view_recent_form_changes";a:3:{i:0;R:21592;i:1;R:21162;i:2;R:21163;}s:69:"1228:com-rfo-1e1fa67b10bd53aeae2a0410bb06df965a6ca94d-changes_made_to";a:3:{i:0;R:21592;i:1;R:21162;i:2;R:21163;}s:59:"1228:com-rfo-2eb888e95f113117c63e0d526f68ad90267a45e6-since";a:3:{i:0;R:21592;i:1;R:21162;i:2;R:21163;}s:77:"1228:com-rfo-c2c2541220a65b97913151ed168e3fb36ddbb283-view_changes_made_since";a:3:{i:0;R:21592;i:1;R:21162;i:2;R:21163;}s:59:"1228:com-rfo-24345a14377fd821d3932f4e82f6431640955b0b-today";a:3:{i:0;R:21592;i:1;R:21162;i:2;R:21163;}s:63:"1228:com-rfo-da24830f1f7072d55862afb6969c1a4c433ac056-yesterday";a:3:{i:0;R:21592;i:1;R:21162;i:2;R:21163;}s:63:"1228:com-rfo-bc159a569313f9588addfe1c69fce9cc088d41eb-last_week";a:3:{i:0;R:21592;i:1;R:21162;i:2;R:21163;}s:65:"1228:com-rfo-a722bdaa93cc86ffa98a61b2d5f1ff61813aef4e-total_found";a:3:{i:0;R:21592;i:1;R:21162;i:2;R:21163;}s:84:"1228:com-rfo-5a2cceb3dce98e3720bd95404ccb3df93211c27a-can_view_the_list_of_recent_fo";a:3:{i:0;R:21592;i:1;R:21162;i:2;R:21163;}s:71:"1228:com-rfo-190b9ff74e1b6699e4eb19c21945218d0fd917c1-view_recent_forms";a:3:{i:0;R:21592;i:1;R:21162;i:2;R:21163;}s:84:"1228:com-rst-e74ad06dcf7544591ebb0c48333e441986ae62c3-information_about_record_statu";a:3:{i:0;s:20:"out-ihris-common-rst";i:1;R:21162;i:2;R:21163;}s:71:"1228:com-rst-bc37bfa42994a347c45456b6c95ec0520b0f1a34-add_record_status";a:3:{i:0;R:21606;i:1;R:21162;i:2;R:21163;}s:75:"1228:com-rst-957cd1a44423bc735be244be158a79ad5e0affd6-edit_this_information";a:3:{i:0;R:21606;i:1;R:21162;i:2;R:21163;}s:77:"1228:com-rst-8f12a44b12f65ea43ddb4305154428ef1ac77771-update_this_information";a:3:{i:0;R:21606;i:1;R:21162;i:2;R:21163;}s:75:"1228:com-sco-957cd1a44423bc735be244be158a79ad5e0affd6-edit_this_information";a:3:{i:0;s:20:"out-ihris-common-sco";i:1;R:21162;i:2;R:21163;}s:77:"1228:com-sco-8f12a44b12f65ea43ddb4305154428ef1ac77771-update_this_information";a:3:{i:0;R:21611;i:1;R:21162;i:2;R:21163;}s:84:"1228:com-sco-e1f1166c11a15d1063cbe62f78e7f2f40a6bc5f0-select_another_competency_type";a:3:{i:0;R:21611;i:1;R:21162;i:2;R:21163;}s:69:"1228:com-sco-a52ac6764bccdbf7fb5168c27d3db3db759e04c6-competency_type";a:3:{i:0;R:21611;i:1;R:21162;i:2;R:21163;}s:79:"1228:com-sco-38469d77d97c1e42509746c930f11109c28f316f-select_another_competency";a:3:{i:0;R:21611;i:1;R:21162;i:2;R:21163;}s:64:"1228:com-sco-05e59bb0ed360ac5cfcc85cdb8a3184e0442743f-competency";a:3:{i:0;R:21611;i:1;R:21162;i:2;R:21163;}s:84:"1228:com-sco-755803a70287379c26d0166f4ec1c21df8d48a30-select_another_competency_eval";a:3:{i:0;R:21611;i:1;R:21162;i:2;R:21163;}s:75:"1228:com-sco-4193018f2e723fb8cc87a51535457bb114cdd240-competency_evaluation";a:3:{i:0;R:21611;i:1;R:21162;i:2;R:21163;}s:78:"1228:com-sco-d39fd0787a06cd3b0aa27f9d3658542d395fede2-edit_the_competency_list";a:3:{i:0;R:21611;i:1;R:21162;i:2;R:21163;}s:83:"1228:com-sco-27bd543c84ff2199c13c0314a9b78832e2e2954f-edit_the_competency_type_list";a:3:{i:0;R:21611;i:1;R:21162;i:2;R:21163;}s:83:"1228:com-sco-5eb61886b4e58160a5efb71f1d60054f451b7eb0-view_all_list_associated_with";a:3:{i:0;R:21611;i:1;R:21162;i:2;R:21163;}s:78:"1228:com-sco-257551a6be3aa4b7c36cdeb75c66e81bae4e98f1-view_the_competency_list";a:3:{i:0;R:21611;i:1;R:21162;i:2;R:21163;}s:83:"1228:com-sco-d4839b9c85bd76839179dd30152f86a3095f74e8-view_the_competency_type_list";a:3:{i:0;R:21611;i:1;R:21162;i:2;R:21163;}s:58:"1228:com-sco-709a23220f2c3d64d1e1d6d18c4d5280f8d82fca-name";a:3:{i:0;R:21611;i:1;R:21162;i:2;R:21163;}s:84:"1228:com-sco-bf48e11ce2c42e10cd7ac42aa83340d5d76be6f3-select_competency_type_then_co";a:3:{i:0;R:21611;i:1;R:21162;i:2;R:21163;}s:59:"1228:com-sco-70440046a3dc2e079f23ee1c57dfa76669b732aa-notes";a:3:{i:0;R:21611;i:1;R:21162;i:2;R:21163;}s:84:"1228:com-sco-1cd0923dd48cb36e27622dee719e543ec7a02de4-edit_all_lists_associated_with";a:3:{i:0;R:21611;i:1;R:21162;i:2;R:21163;}s:61:"1228:com-sdco-7266a1da7e3a6739b245ddfe74b0b682f7da63f8-rwanda";a:3:{i:0;s:21:"out-ihris-common-sdco";i:1;R:21162;i:2;R:21163;}s:60:"1228:com-sdco-77f256b43643417f9b6622adff8bd31ae6ea7781-congo";a:3:{i:0;R:21629;i:1;R:21162;i:2;R:21163;}s:62:"1228:com-sdco-5cb4c9d828175ed3931ec52305b32f47173a8e04-belgium";a:3:{i:0;R:21629;i:1;R:21162;i:2;R:21163;}s:61:"1228:com-sdco-e92904bce8026b3c1f8828b0ce882e6b081c7fb6-uganda";a:3:{i:0;R:21629;i:1;R:21162;i:2;R:21163;}s:60:"1228:com-sdco-a84f56f2e6a77ecb4b2f89344446dd3ff91b87c4-kenya";a:3:{i:0;R:21629;i:1;R:21162;i:2;R:21163;}s:62:"1228:com-sdco-4617585b8749a71bbb21237cab6c2dc9cbe3b86f-burundi";a:3:{i:0;R:21629;i:1;R:21162;i:2;R:21163;}s:63:"1228:com-sdco-7e380be8dc28d72571144716e95e598c986bc4d6-tanzania";a:3:{i:0;R:21629;i:1;R:21162;i:2;R:21163;}s:68:"1228:com-sdco-768685ca582abd0af2fbb57ca37752aa98c9372b-united_states";a:3:{i:0;R:21629;i:1;R:21162;i:2;R:21163;}s:60:"1228:com-sdco-1193ba31f109ecfdfab76f13cc2b5e44479d5603-sudan";a:3:{i:0;R:21629;i:1;R:21162;i:2;R:21163;}s:61:"1228:com-sdco-e3772ac4b4db87b4a8dbfa59ef43cd1a8ad29515-france";a:3:{i:0;R:21629;i:1;R:21162;i:2;R:21163;}s:66:"1228:com-sdco-77dcd849e550afec3c83d38fcc8cbc72c058f4db-switzerland";a:3:{i:0;R:21629;i:1;R:21162;i:2;R:21163;}s:62:"1228:com-sdco-17d53e0e6a68acdf80b78d4f9d868c8736db2cec-germany";a:3:{i:0;R:21629;i:1;R:21162;i:2;R:21163;}s:59:"1228:com-sdcu-ae900f1e43cb81a5829eae3cdcb9eba900cb0f3c-euro";a:3:{i:0;s:21:"out-ihris-common-sdcu";i:1;R:21162;i:2;R:21163;}s:64:"1228:com-sdcu-21c03ffa6b93bceafdf0f8bab14feb63dc5d1d2f-us_dollar";a:3:{i:0;R:21642;i:1;R:21162;i:2;R:21163;}s:68:"1228:com-sdcu-5d59a43b1a588b82b4c514df4359227322609af9-british_pound";a:3:{i:0;R:21642;i:1;R:21162;i:2;R:21163;}s:56:"1228:com-sdd-e066dc148a3af0bb86ed9438d432a81402e778bd-md";a:3:{i:0;s:20:"out-ihris-common-sdd";i:1;R:21162;i:2;R:21163;}s:57:"1228:com-sdd-a0f09a13f8ef9091983494a38fdfd9004d5ac60b-phd";a:3:{i:0;R:21646;i:1;R:21162;i:2;R:21163;}s:57:"1228:com-sdd-e76168211325254183e977c48bd5904444424df9-mph";a:3:{i:0;R:21646;i:1;R:21162;i:2;R:21163;}s:61:"1228:com-sdd-59a8bfd7bbf012459995fe75c0ad3e83be8e7d8e-masters";a:3:{i:0;R:21646;i:1;R:21162;i:2;R:21163;}s:66:"1228:com-sdd-ab42c812a9a7886f3950e39b9c3ebc0475b99574-postgraduate";a:3:{i:0;R:21646;i:1;R:21162;i:2;R:21163;}s:59:"1228:com-sdd-d48c26184dc552ea83a08536aefc6d4fcfee29ab-ba_bs";a:3:{i:0;R:21646;i:1;R:21162;i:2;R:21163;}s:61:"1228:com-sdd-3229609e15436ec51bcf00818a69a84dbc58a0c2-license";a:3:{i:0;R:21646;i:1;R:21162;i:2;R:21163;}s:76:"1228:com-sdd-f75092f246a58b08496d123f45073ef314b82ad8-completion_of_training";a:3:{i:0;R:21646;i:1;R:21162;i:2;R:21163;}s:61:"1228:com-sdd-abda9ca4e2bfedb7988659583520832298014a63-diploma";a:3:{i:0;R:21646;i:1;R:21162;i:2;R:21163;}s:65:"1228:com-sdd-10de46b3b341b6f837cf6d72972b9bf2b3f6e491-certificate";a:3:{i:0;R:21646;i:1;R:21162;i:2;R:21163;}s:75:"1228:com-sdet-ea2741edebb1f54709b150f720d8df0addf803fb-degree_certification";a:3:{i:0;s:21:"out-ihris-common-sdet";i:1;R:21162;i:2;R:21163;}s:75:"1228:com-sdet-dae14f8f08b68e01acf768c45a84ff58b35efd4d-continuing_education";a:3:{i:0;R:21657;i:1;R:21162;i:2;R:21163;}s:63:"1228:com-sdet-8efc986367cb45846ed324ae4aa2e939ef8653b2-informal";a:3:{i:0;R:21657;i:1;R:21162;i:2;R:21163;}s:60:"1228:com-sdet-6e6a6f2086bb5fe5dbfd17d8d5f502d48759834b-other";a:3:{i:0;R:21657;i:1;R:21162;i:2;R:21163;}s:66:"1228:com-sdet-a800aa60b83d1211c662510e8ba18d07e5891235-high_school";a:3:{i:0;R:21657;i:1;R:21162;i:2;R:21163;}s:71:"1228:com-search-a0c7a2ace5ffcff2c25542bae23b78d5a26ce7c7-search_records";a:3:{i:0;s:23:"out-ihris-common-search";i:1;R:21162;i:2;R:21163;}s:70:"1228:com-search-b584d2730d3ffd197989d6809f8386709a33c6b9-search_people";a:3:{i:0;R:21663;i:1;R:21162;i:2;R:21163;}s:63:"1228:com-search-bce06414177f72ab70e6387b6af9f8ceef0d6049-search";a:3:{i:0;R:21663;i:1;R:21162;i:2;R:21163;}s:75:"1228:com-search-8ef32864e2c19fc96c015db52bb168fd7231a5e9-results_limited_by";a:3:{i:0;R:21663;i:1;R:21162;i:2;R:21163;}s:87:"1228:com-search-8120920cde999ff32d42820229b9d2422b34b7f0-choose_options_to_limit_result";a:3:{i:0;R:21663;i:1;R:21162;i:2;R:21163;}s:77:"1228:com-search-843869d609b6631f5b1245ae9903201ddbd7f020-save_as_default_view";a:3:{i:0;R:21663;i:1;R:21162;i:2;R:21163;}s:70:"1228:com-search-cabfa4882af0b513952cec113216fcf97fc66d56-related_views";a:3:{i:0;R:21663;i:1;R:21162;i:2;R:21163;}s:85:"1228:com-shcl-6e227e343132b085ed0cccd3631f618998ee36ff-can_view_database_code_list_cl";a:3:{i:0;s:21:"out-ihris-common-shcl";i:1;R:21162;i:2;R:21163;}s:85:"1228:com-shcl-6fc32ffecae4eb923fe141617828c28a4b6e9f66-can_view_database_code_list_cl";a:3:{i:0;R:21671;i:1;R:21162;i:2;R:21163;}s:85:"1228:com-shcl-2993b9d5001c571cfebf72606d166545d5a9f2be-can_view_database_code_list_cl";a:3:{i:0;R:21671;i:1;R:21162;i:2;R:21163;}s:85:"1228:com-shcl-b49c40638bef8fa6975cc31357c2dd90bdff7540-can_view_database_code_list_cl";a:3:{i:0;R:21671;i:1;R:21162;i:2;R:21163;}s:85:"1228:com-shcl-8acb35ae682550bc66e0989d28d17d817a0ec86a-can_view_database_code_list_cl";a:3:{i:0;R:21671;i:1;R:21162;i:2;R:21163;}s:85:"1228:com-shcl-5fc1864611feb477ce5ec7b5921f2ad2689664ae-can_view_database_code_list_cl";a:3:{i:0;R:21671;i:1;R:21162;i:2;R:21163;}s:85:"1228:com-shcl-1b27e7658483cbd1f103aabeae650a2395d735fe-can_view_database_code_list_cl";a:3:{i:0;R:21671;i:1;R:21162;i:2;R:21163;}s:85:"1228:com-shcl-b62af87c4733179ac07a88dca5be86c8ac5a89a5-can_view_database_code_list_cl";a:3:{i:0;R:21671;i:1;R:21162;i:2;R:21163;}s:85:"1228:com-shcl-8a9b323e6162a44382caba09eeb21fc229b1dc7c-can_view_database_code_list_cl";a:3:{i:0;R:21671;i:1;R:21162;i:2;R:21163;}s:85:"1228:com-shcl-cf572465ce1313417e3330beac6575ef495d899f-can_view_database_code_list_cl";a:3:{i:0;R:21671;i:1;R:21162;i:2;R:21163;}s:85:"1228:com-shcl-7664ad2ef400190e25e7fb5e96ba9635e203aa14-can_view_database_code_list_cl";a:3:{i:0;R:21671;i:1;R:21162;i:2;R:21163;}s:85:"1228:com-shcl-2d91a52d8b151fa88bae27c491838ce0b905c345-can_view_database_code_list_cl";a:3:{i:0;R:21671;i:1;R:21162;i:2;R:21163;}s:85:"1228:com-shcl-50d7f5e002640dc3ea524d4194cfb785d7465d3f-can_view_database_code_list_cl";a:3:{i:0;R:21671;i:1;R:21162;i:2;R:21163;}s:85:"1228:com-shcl-7caa38236d7dc04aaf87e7213d94b59aced8fbd4-can_view_database_code_list_cl";a:3:{i:0;R:21671;i:1;R:21162;i:2;R:21163;}s:85:"1228:com-shcl-5829eb9b1e81868d11741c6640337cccec9420d1-can_view_database_code_list_cl";a:3:{i:0;R:21671;i:1;R:21162;i:2;R:21163;}s:85:"1228:com-shcl-b943426a262b5c695b94ba7086e3225605e3cadf-can_view_database_code_list_cl";a:3:{i:0;R:21671;i:1;R:21162;i:2;R:21163;}s:85:"1228:com-shcl-c40aaedd3f4113c37aee61de63c2ac3d53088df8-can_view_database_code_list_cl";a:3:{i:0;R:21671;i:1;R:21162;i:2;R:21163;}s:85:"1228:com-shcl-69ffcfce1d3dcc19dd02a543bb1f8750c6dd6d5f-can_view_database_code_list_cl";a:3:{i:0;R:21671;i:1;R:21162;i:2;R:21163;}s:85:"1228:com-shcl-ac0aacacf03ff36950fe4fae8e82f8a918aa2d26-can_view_database_code_list_cl";a:3:{i:0;R:21671;i:1;R:21162;i:2;R:21163;}s:85:"1228:com-shcl-4dc74344e2f64dbeecee5a13fd50e7539684f474-can_view_database_code_list_cl";a:3:{i:0;R:21671;i:1;R:21162;i:2;R:21163;}s:85:"1228:com-shcl-93a3b9e36bf40f99de4c10da078c838cf6717f2f-can_view_database_code_list_cl";a:3:{i:0;R:21671;i:1;R:21162;i:2;R:21163;}s:85:"1228:com-shcl-7e70238599e15eed44323aa2ddb408da89dde922-can_view_database_code_list_cl";a:3:{i:0;R:21671;i:1;R:21162;i:2;R:21163;}s:85:"1228:com-shcl-e7c3dbf28551a77b1882bb1d4787d066da7088c4-can_view_database_code_list_cl";a:3:{i:0;R:21671;i:1;R:21162;i:2;R:21163;}s:85:"1228:com-shcl-cb44dcdc785684a4350b9d7ef3ceefa6deda57ed-can_view_database_code_list_cl";a:3:{i:0;R:21671;i:1;R:21162;i:2;R:21163;}s:85:"1228:com-shcl-f9e89f5d1d77659bd85329f8bd67910109060491-can_view_database_code_list_cl";a:3:{i:0;R:21671;i:1;R:21162;i:2;R:21163;}s:85:"1228:com-shcl-b861d0cbfb5fd3f8b882da411c32f7a4f2949db8-can_view_database_code_list_cl";a:3:{i:0;R:21671;i:1;R:21162;i:2;R:21163;}s:85:"1228:com-shcl-19664d4dfbd323d6887cdd128aea4e3b5b648ad5-can_view_database_code_list_cl";a:3:{i:0;R:21671;i:1;R:21162;i:2;R:21163;}s:85:"1228:com-shcl-bb2b46f714a8f4a7c6f654732883f90c4a326dfa-can_view_database_code_list_cl";a:3:{i:0;R:21671;i:1;R:21162;i:2;R:21163;}s:85:"1228:com-shcl-d081dd36822966561d4479d22d86d74c8de8104a-can_view_database_code_list_cl";a:3:{i:0;R:21671;i:1;R:21162;i:2;R:21163;}s:85:"1228:com-shcl-9cdc8890bf91b5375e8781a5ffa11367e9744a28-can_view_database_code_list_cl";a:3:{i:0;R:21671;i:1;R:21162;i:2;R:21163;}s:85:"1228:com-shcl-a1afa772672616959f61f99d5f20806b4c1e6982-can_view_database_code_list_cl";a:3:{i:0;R:21671;i:1;R:21162;i:2;R:21163;}s:85:"1228:com-shcl-42168b0627a4029cd0217110661c2511f629c35d-can_view_database_code_list_cl";a:3:{i:0;R:21671;i:1;R:21162;i:2;R:21163;}s:85:"1228:com-shcl-e6d9e8779ead545d4dccd54eae09ff4c752d8d63-can_view_database_code_list_cl";a:3:{i:0;R:21671;i:1;R:21162;i:2;R:21163;}s:85:"1228:com-shcl-832a21aecc297e72bc4acd17ce1a339d257a232d-can_view_database_code_list_cl";a:3:{i:0;R:21671;i:1;R:21162;i:2;R:21163;}s:85:"1228:com-shcl-945b5009e4a0dec96419844507c77b3c9da68191-can_view_database_code_list_cl";a:3:{i:0;R:21671;i:1;R:21162;i:2;R:21163;}s:85:"1228:com-shcl-f83b77f3405bfdc8ee66185bfc561c73d0b4d31e-can_view_database_code_list_cl";a:3:{i:0;R:21671;i:1;R:21162;i:2;R:21163;}s:85:"1228:com-shcl-321cb0ce51bd3e840ffee81a697d51feb7a1fad8-can_view_database_code_list_cl";a:3:{i:0;R:21671;i:1;R:21162;i:2;R:21163;}s:85:"1228:com-shcl-68535b59fa51e37baeb247b57bcd35c77b58473d-can_view_database_code_list_cl";a:3:{i:0;R:21671;i:1;R:21162;i:2;R:21163;}s:85:"1228:com-shcl-6c95bb2341d30e13cf82e488c9d535c9e3220d60-can_view_database_code_list_cl";a:3:{i:0;R:21671;i:1;R:21162;i:2;R:21163;}s:85:"1228:com-shcl-c508fa3aff1ec2db2f92eaf7db5d7e750ab01b72-can_view_database_code_list_cl";a:3:{i:0;R:21671;i:1;R:21162;i:2;R:21163;}s:85:"1228:com-shcl-8b2ad1078c9294eca6e332c238ae6c7acfdba973-can_view_database_code_list_cl";a:3:{i:0;R:21671;i:1;R:21162;i:2;R:21163;}s:85:"1228:com-shcl-7be21a407ced480febbee95e94984474f284a6fb-can_view_database_code_list_cl";a:3:{i:0;R:21671;i:1;R:21162;i:2;R:21163;}s:85:"1228:com-shcl-ec3d081571f412b02be382a34dca0c47ae89d885-can_view_database_code_list_cl";a:3:{i:0;R:21671;i:1;R:21162;i:2;R:21163;}s:85:"1228:com-shcl-0fb38e6be6aed58f1ae2cfc6630d390563c3f66d-can_edit_database_code_list_cl";a:3:{i:0;R:21671;i:1;R:21162;i:2;R:21163;}s:85:"1228:com-shcl-b1e45b09eaf580709ddeeb06eadd1a8006933e3d-can_edit_database_code_list_cl";a:3:{i:0;R:21671;i:1;R:21162;i:2;R:21163;}s:85:"1228:com-shcl-dfe78726c1338843d7220b629f5962eb461cfc98-can_edit_database_code_list_cl";a:3:{i:0;R:21671;i:1;R:21162;i:2;R:21163;}s:85:"1228:com-shcl-51eed89317b42de4a855edfdd9ad6add87f6a4e5-can_edit_database_code_list_cl";a:3:{i:0;R:21671;i:1;R:21162;i:2;R:21163;}s:85:"1228:com-shcl-0337ce831783bf5b00241754247666e222afa72c-can_edit_database_code_list_cl";a:3:{i:0;R:21671;i:1;R:21162;i:2;R:21163;}s:85:"1228:com-shcl-e974cabb08e2b7a73878093ab24a9a158b421cf2-can_edit_database_code_list_cl";a:3:{i:0;R:21671;i:1;R:21162;i:2;R:21163;}s:85:"1228:com-shcl-fe1dc1f2794ce878421b9597d3fcce484d022670-can_edit_database_code_list_cl";a:3:{i:0;R:21671;i:1;R:21162;i:2;R:21163;}s:85:"1228:com-shcl-538c3d991fb7376d8fcd66e31b5395e207a58c15-can_edit_database_code_list_cl";a:3:{i:0;R:21671;i:1;R:21162;i:2;R:21163;}s:85:"1228:com-shcl-79d40c453d9895ce556c623f1dc05be653aad636-can_edit_database_code_list_cl";a:3:{i:0;R:21671;i:1;R:21162;i:2;R:21163;}s:85:"1228:com-shcl-6f96cfc6eebd5cc264813be1787148f0cd60ffe6-can_edit_database_code_list_cl";a:3:{i:0;R:21671;i:1;R:21162;i:2;R:21163;}s:85:"1228:com-shcl-1c09237838f33fb1e28be4d8b57b28b7a799598a-can_edit_database_code_list_cl";a:3:{i:0;R:21671;i:1;R:21162;i:2;R:21163;}s:85:"1228:com-shcl-c63fa2f3272b06ad2523761923c2ecd98614b73c-can_edit_database_code_list_cl";a:3:{i:0;R:21671;i:1;R:21162;i:2;R:21163;}s:85:"1228:com-shcl-94fba36c399f183f74f2695c1194bb3fe8ff0a00-can_edit_database_code_list_cl";a:3:{i:0;R:21671;i:1;R:21162;i:2;R:21163;}s:85:"1228:com-shcl-24d02287907180033b012faeabd3f3b300d6ebaf-can_edit_database_code_list_cl";a:3:{i:0;R:21671;i:1;R:21162;i:2;R:21163;}s:85:"1228:com-shcl-93f60fe0780fdb2372aeffc7e4bddbe2b6de355a-can_edit_database_code_list_cl";a:3:{i:0;R:21671;i:1;R:21162;i:2;R:21163;}s:85:"1228:com-shcl-77c954bf52a0609c01b16de49811d6e6b51662ec-can_edit_database_code_list_cl";a:3:{i:0;R:21671;i:1;R:21162;i:2;R:21163;}s:85:"1228:com-shcl-64f8f091f5932a3fd24e8e9322277143b0099683-can_edit_database_code_list_cl";a:3:{i:0;R:21671;i:1;R:21162;i:2;R:21163;}s:85:"1228:com-shcl-68ccb6802940d63b2f5e419f19a43bce495b32ac-can_edit_database_code_list_cl";a:3:{i:0;R:21671;i:1;R:21162;i:2;R:21163;}s:85:"1228:com-shcl-6c1d980e6d784e6c207f3957150d1b7d48510570-can_edit_database_code_list_cl";a:3:{i:0;R:21671;i:1;R:21162;i:2;R:21163;}s:85:"1228:com-shcl-2a9abf8a1aca8cb3e0db9cc2c68455af08e69fb0-can_edit_database_code_list_cl";a:3:{i:0;R:21671;i:1;R:21162;i:2;R:21163;}s:85:"1228:com-shcl-ef9beb8a527621f215be1efbee721aa6d48e169d-can_edit_database_code_list_cl";a:3:{i:0;R:21671;i:1;R:21162;i:2;R:21163;}s:85:"1228:com-shcl-db2c79ce8c463cbcf3130f4257518a0f0b3982cc-can_edit_database_code_list_cl";a:3:{i:0;R:21671;i:1;R:21162;i:2;R:21163;}s:85:"1228:com-shcl-b1743d9385588229ddb0b82c2fd1fc8a1c452efa-can_edit_database_code_list_cl";a:3:{i:0;R:21671;i:1;R:21162;i:2;R:21163;}s:85:"1228:com-shcl-d7918180ea4537101946f1eae03eceaa2259f629-can_edit_database_code_list_cl";a:3:{i:0;R:21671;i:1;R:21162;i:2;R:21163;}s:85:"1228:com-shcl-4e46ffdf0e2638540145d6c64b3ea21f341199af-can_edit_database_code_list_cl";a:3:{i:0;R:21671;i:1;R:21162;i:2;R:21163;}s:85:"1228:com-shcl-45b5027981f2b6271e8859afa26dcfa702bfb5e4-can_edit_database_code_list_cl";a:3:{i:0;R:21671;i:1;R:21162;i:2;R:21163;}s:85:"1228:com-shcl-ef125888781cc3b48d237c734ae7681896549ef6-can_edit_database_code_list_cl";a:3:{i:0;R:21671;i:1;R:21162;i:2;R:21163;}s:85:"1228:com-shcl-a2adb84a5f1bc14b038a083a2dab7d8e6b96e116-can_edit_database_code_list_cl";a:3:{i:0;R:21671;i:1;R:21162;i:2;R:21163;}s:85:"1228:com-shcl-4f388f751edd4381c87226fb7969c9efadb47309-can_edit_database_code_list_cl";a:3:{i:0;R:21671;i:1;R:21162;i:2;R:21163;}s:85:"1228:com-shcl-6a121058fb02be817f095e5144843b7f91dcc69e-can_edit_database_code_list_cl";a:3:{i:0;R:21671;i:1;R:21162;i:2;R:21163;}s:85:"1228:com-shcl-ccfb8a3d9fedcbd54ecc551a291384bc0d924217-can_edit_database_code_list_cl";a:3:{i:0;R:21671;i:1;R:21162;i:2;R:21163;}s:85:"1228:com-shcl-7267046d764931d825ccca0b064a1bdd06b1ee5b-can_edit_database_code_list_cl";a:3:{i:0;R:21671;i:1;R:21162;i:2;R:21163;}s:85:"1228:com-shcl-f0bdbd38b26aa3df7fdfd39d81688ac9b89d1527-can_edit_database_code_list_cl";a:3:{i:0;R:21671;i:1;R:21162;i:2;R:21163;}s:85:"1228:com-shcl-cf91cb3566b0d3f13b48c16feaf351e9e3dc1c23-can_edit_database_code_list_cl";a:3:{i:0;R:21671;i:1;R:21162;i:2;R:21163;}s:85:"1228:com-shcl-c329e8cfe52843de25c0da998220921834043fc5-can_edit_database_code_list_cl";a:3:{i:0;R:21671;i:1;R:21162;i:2;R:21163;}s:85:"1228:com-shcl-7773380901a4e4d4c2bd6ab1bc3da0b044bda90a-can_edit_database_code_list_cl";a:3:{i:0;R:21671;i:1;R:21162;i:2;R:21163;}s:85:"1228:com-shcl-4ac8147c21edd46c64d45f45f8fbc6a4fdbc5e3b-can_edit_database_code_list_cl";a:3:{i:0;R:21671;i:1;R:21162;i:2;R:21163;}s:85:"1228:com-shcl-d50d6347d53b81c8c2676bf72214d8ad04d58d6f-can_edit_database_code_list_cl";a:3:{i:0;R:21671;i:1;R:21162;i:2;R:21163;}s:85:"1228:com-shcl-8084d1c7dcb505d888c329c480b4b98a429485e4-can_edit_database_code_list_cl";a:3:{i:0;R:21671;i:1;R:21162;i:2;R:21163;}s:85:"1228:com-shcl-5cc96870b9f6d8d72c377c743377a830eb044ee6-can_edit_database_code_list_cl";a:3:{i:0;R:21671;i:1;R:21162;i:2;R:21163;}s:85:"1228:com-shcl-0ca5165eb1cc7636477d26ef941ceaaa151193f3-can_edit_database_code_list_cl";a:3:{i:0;R:21671;i:1;R:21162;i:2;R:21163;}s:85:"1228:com-shcl-3ed34bbdd5a0a47c4c6deb790c26889206664098-can_edit_database_code_list_cl";a:3:{i:0;R:21671;i:1;R:21162;i:2;R:21163;}s:85:"1228:com-shcl-693d34f922987b412f3182f2c752ac930d95c513-can_edit_database_code_list_cl";a:3:{i:0;R:21671;i:1;R:21162;i:2;R:21163;}s:76:"1228:com-shcl-3792516f1369628f35a4ace3b5e21c450f2d21cd-administrative_source";a:3:{i:0;R:21671;i:1;R:21162;i:2;R:21163;}s:78:"1228:com-shcl-f091b6f3ee4be8ee4181cabefe734787c100e104-calculation_syntax_type";a:3:{i:0;R:21671;i:1;R:21162;i:2;R:21163;}s:63:"1228:com-shcl-e070de224434a2acd352b35cec46f34f9e08e1b2-currency";a:3:{i:0;R:21671;i:1;R:21162;i:2;R:21163;}s:59:"1228:com-shcl-f6bb0f468a8569c67b3d6826e57e62c5500c3681-days";a:3:{i:0;R:21671;i:1;R:21162;i:2;R:21163;}s:69:"1228:com-shcl-eeefd329f9cfc7b310cce1238560590a90c21355-disaggregation";a:3:{i:0;R:21671;i:1;R:21162;i:2;R:21163;}s:62:"1228:com-shcl-1bf5fe17046dc1630e5f39e4f7d1d7e964a0346e-disease";a:3:{i:0;R:21671;i:1;R:21162;i:2;R:21163;}s:69:"1228:com-shcl-2be49bb28ee16dfde3402e6e086eee9e284e6627-disease_status";a:3:{i:0;R:21671;i:1;R:21162;i:2;R:21163;}s:66:"1228:com-shcl-863b2164a4f2bf227ea1d1aef73ad8543480c495-data_source";a:3:{i:0;R:21671;i:1;R:21162;i:2;R:21163;}s:71:"1228:com-shcl-5a26f4272f86e40c73b0fa4c22adabe52c66c335-data_source_type";a:3:{i:0;R:21671;i:1;R:21162;i:2;R:21163;}s:63:"1228:com-shcl-2b3b2437f86ea4a0a8830ee6f8676cb1c3fc7da2-datatype";a:3:{i:0;R:21671;i:1;R:21162;i:2;R:21163;}s:70:"1228:com-shcl-92993540977d42faed76baecf6601624ed25d0ac-followup_period";a:3:{i:0;R:21671;i:1;R:21162;i:2;R:21163;}s:68:"1228:com-shcl-9ac3532dcb9f716400227b6767c1ee65584703bc-boundary_type";a:3:{i:0;R:21671;i:1;R:21162;i:2;R:21163;}s:67:"1228:com-shcl-5e62a7c0bfaf79bec3ed3d3bf94beae2a18c0470-country_code";a:3:{i:0;R:21671;i:1;R:21162;i:2;R:21163;}s:61:"1228:com-shcl-8a754c61c2ced0c5ff79a1827e02c9d643d6d926-gender";a:3:{i:0;R:21671;i:1;R:21162;i:2;R:21163;}s:71:"1228:com-shcl-db9e4b57b263235169b1ac0c3227e16dfe0abc9b-geographic_level";a:3:{i:0;R:21671;i:1;R:21162;i:2;R:21163;}s:74:"1228:com-shcl-3ca0df78c8f7a8d38c421950aebec71d9e065127-geographic_location";a:3:{i:0;R:21671;i:1;R:21162;i:2;R:21163;}s:83:"1228:com-shcl-4c8ec3890416e4b522d26aeb795e2b5a29ba7fd9-health_indicator_framework_1";a:3:{i:0;R:21671;i:1;R:21162;i:2;R:21163;}s:83:"1228:com-shcl-324376831c684e44a8c9021b0c00dc03a4f711ba-health_indicator_framework_2";a:3:{i:0;R:21671;i:1;R:21162;i:2;R:21163;}s:72:"1228:com-shcl-c3723782c4c56b5d8c3e965a188f39f6f287a634-individual_income";a:3:{i:0;R:21671;i:1;R:21162;i:2;R:21163;}s:85:"1228:com-shcl-fb9ca8c77f6899a570d26d6974e50e5b20deb8d7-logical_extended_list_for_bool";a:3:{i:0;R:21671;i:1;R:21162;i:2;R:21163;}s:85:"1228:com-shcl-5358dc5348a720381dcc92fb08c7a26ee5ff694a-monitoring_and_evaluation_fram";a:3:{i:0;R:21671;i:1;R:21162;i:2;R:21163;}s:61:"1228:com-shcl-200dcdce9b5a0627b291634c6a82ae25ce09f789-months";a:3:{i:0;R:21671;i:1;R:21162;i:2;R:21163;}s:65:"1228:com-shcl-b032583db6cf079a0016a25e22252d91a56db165-multiplier";a:3:{i:0;R:21671;i:1;R:21162;i:2;R:21163;}s:80:"1228:com-shcl-c31bc66cf971152e7d9d9c68ec74680b27b9cc05-operand_type_of_indicator";a:3:{i:0;R:21671;i:1;R:21162;i:2;R:21163;}s:66:"1228:com-shcl-25cb6f3f07b2fe7634a5cb8cbe1959b26f12a1b7-orphan_type";a:3:{i:0;R:21671;i:1;R:21162;i:2;R:21163;}s:72:"1228:com-shcl-9db3764ea365590a845c10586f2da8bad766b8cf-organization_type";a:3:{i:0;R:21671;i:1;R:21162;i:2;R:21163;}s:66:"1228:com-shcl-936e8621bd29ed0fcefd8c09a25476b86dc09ed0-periodicity";a:3:{i:0;R:21671;i:1;R:21162;i:2;R:21163;}s:71:"1228:com-shcl-ccc0e9c4d49b29e835109d45fde3d50c0db0ff50-pregnancy_status";a:3:{i:0;R:21671;i:1;R:21162;i:2;R:21163;}s:71:"1228:com-shcl-505d630abab58855fdefc32561bca1e0addde31f-programme_status";a:3:{i:0;R:21671;i:1;R:21162;i:2;R:21163;}s:69:"1228:com-shcl-0949f5fcccc7474ec02ca0fc2674a55b19cd47db-programme_type";a:3:{i:0;R:21671;i:1;R:21162;i:2;R:21163;}s:63:"1228:com-shcl-30c8a8a1856eb222df07cef06bd4444e98e9d3ed-quarters";a:3:{i:0;R:21671;i:1;R:21162;i:2;R:21163;}s:59:"1228:com-shcl-6643dce8e4d3c9b96317eee572d9ea0ae4d49e57-race";a:3:{i:0;R:21671;i:1;R:21162;i:2;R:21163;}s:61:"1228:com-shcl-39fd2070d41b91ee5eec9119ce5c0416a8e0c2c4-sector";a:3:{i:0;R:21671;i:1;R:21162;i:2;R:21163;}s:67:"1228:com-shcl-507b518f5dba6d3dec7230ae6af793f2a4f2b712-biologic_sex";a:3:{i:0;R:21671;i:1;R:21162;i:2;R:21163;}s:68:"1228:com-shcl-1411e6e802085ab49d7fb2020b05be49a0799775-special_value";a:3:{i:0;R:21671;i:1;R:21162;i:2;R:21163;}s:69:"1228:com-shcl-c701397bbfc651a5fe20c64249b0c95a0452e7d1-statistic_type";a:3:{i:0;R:21671;i:1;R:21162;i:2;R:21163;}s:72:"1228:com-shcl-f883ca0b2ac8a93250c9a0b44910693fdd826483-target_population";a:3:{i:0;R:21671;i:1;R:21162;i:2;R:21163;}s:59:"1228:com-shcl-f6b935ab337145efdeadda28cae18aa89a845e36-unit";a:3:{i:0;R:21671;i:1;R:21162;i:2;R:21163;}s:65:"1228:com-shcl-9e3aee9caffabadbe8a84d14415a21d131fe44f2-value_type";a:3:{i:0;R:21671;i:1;R:21162;i:2;R:21163;}s:69:"1228:com-shcl-de0c8dfb52d956a0dd66ce5dc952df9fa29e9239-version_status";a:3:{i:0;R:21671;i:1;R:21162;i:2;R:21163;}s:75:"1228:com-shcl-da57f6c2267cbba02b98275eb517eaddfc1d2c6e-vulnerability_status";a:3:{i:0;R:21671;i:1;R:21162;i:2;R:21163;}s:60:"1228:com-shcl-7d75266a53b99ce4d80d337862ea1edd8ba1b1a1-weeks";a:3:{i:0;R:21671;i:1;R:21162;i:2;R:21163;}s:60:"1228:com-shcl-96f997bcecb36502ed4b296a795f72aff9d6bfe7-years";a:3:{i:0;R:21671;i:1;R:21162;i:2;R:21163;}s:75:"1228:com-tco-957cd1a44423bc735be244be158a79ad5e0affd6-edit_this_information";a:3:{i:0;s:20:"out-ihris-common-tco";i:1;R:21162;i:2;R:21163;}s:78:"1228:com-tco-75e9654bae0ad91a9dc163d5210be416cd0dd323-correct_this_information";a:3:{i:0;R:21801;i:1;R:21162;i:2;R:21163;}s:83:"1228:com-tco-4d62a023a767245e93a9823784cbb453a5557955-course_competency_evaluations";a:3:{i:0;R:21801;i:1;R:21162;i:2;R:21163;}s:60:"1228:com-tco-d82b56cad90059583c1183e82edb8cf7d4ef4794-course";a:3:{i:0;R:21801;i:1;R:21162;i:2;R:21163;}s:65:"1228:com-tco-9ea42a2c2d649aafe8c66fc839d464a8d25a1ce3-course_name";a:3:{i:0;R:21801;i:1;R:21162;i:2;R:21163;}s:77:"1228:com-tco-8f12a44b12f65ea43ddb4305154428ef1ac77771-update_this_information";a:3:{i:0;R:21801;i:1;R:21162;i:2;R:21163;}s:70:"1228:com-tco-162124097e1d6f0413988c5fe27300d8c62595fe-scheduled_course";a:3:{i:0;R:21801;i:1;R:21162;i:2;R:21163;}s:71:"1228:com-tco-e771602aceeb5be0af87c818e8461cd8ba37dd7f-enrolled_students";a:3:{i:0;R:21801;i:1;R:21162;i:2;R:21163;}s:75:"1228:com-tco-f58eb4c288c3ecc3b049de82c8388ba219268ffc-select_another_course";a:3:{i:0;R:21801;i:1;R:21162;i:2;R:21163;}s:69:"1228:com-tco-81bb26d7b90fc969c92373a6291323ce66b4a9f7-training_course";a:3:{i:0;R:21801;i:1;R:21162;i:2;R:21163;}s:71:"1228:com-tco-67b01ad28b6a194173b775211b119e950e151212-scheduled_courses";a:3:{i:0;R:21801;i:1;R:21162;i:2;R:21163;}s:58:"1228:com-tco-34d8b60fe25332f7b98585e82e753eaf502c3e50-hide";a:3:{i:0;R:21801;i:1;R:21162;i:2;R:21163;}s:71:"1228:com-tco-dad33bb8c2363fc6963803084c5e428789e4dbea-schedule_a_course";a:3:{i:0;R:21801;i:1;R:21162;i:2;R:21163;}s:84:"1228:com-tco-c6a073a699aef8634207e61a1378fd71d14db16e-add_update_a_scheduled_trainin";a:3:{i:0;R:21801;i:1;R:21162;i:2;R:21163;}s:84:"1228:com-tco-6c7c2268f17da673b91c024e49761180fd832d05-select_another_training_course";a:3:{i:0;R:21801;i:1;R:21162;i:2;R:21163;}s:78:"1228:com-tco-3fc320f01558163b1a4579bbcbf2d296323b53b2-training_course_category";a:3:{i:0;R:21801;i:1;R:21162;i:2;R:21163;}s:84:"1228:com-tco-27cb6f464afc35757b0f062a91902d4ebd799b4b-select_another_training_course";a:3:{i:0;R:21801;i:1;R:21162;i:2;R:21163;}s:76:"1228:com-tco-035db4ae17e9bab364fb81979af9c9603791b315-training_course_status";a:3:{i:0;R:21801;i:1;R:21162;i:2;R:21163;}s:84:"1228:com-tco-80496d2168850990cba6714b8fc11958d43025a9-select_another_training_course";a:3:{i:0;R:21801;i:1;R:21162;i:2;R:21163;}s:79:"1228:com-tco-b2b7b47738b6a17e57868bb8f76f37e5860d58c4-training_course_requestor";a:3:{i:0;R:21801;i:1;R:21162;i:2;R:21163;}s:84:"1228:com-tco-7b7c97fc6092f633a7b84439a4f8bb1aaf854aae-select_another_training_course";a:3:{i:0;R:21801;i:1;R:21162;i:2;R:21163;}s:80:"1228:com-tco-ddceb7d94def601f7aec5baebef53aca48a71939-training_course_evaluation";a:3:{i:0;R:21801;i:1;R:21162;i:2;R:21163;}s:84:"1228:com-tco-cfd01674269176b767a32a23745a904d949aca26-schedule_a_person_for_a_traini";a:3:{i:0;R:21801;i:1;R:21162;i:2;R:21163;}s:84:"1228:com-tco-9b69ff053bdfe4d4c239190e9748cc839354ed2a-add_update_training_course_sch";a:3:{i:0;R:21801;i:1;R:21162;i:2;R:21163;}s:75:"1228:com-tco-abef0c700c8c79d7093dd904e2387529d4fc036e-select_another_course";a:3:{i:0;R:21801;i:1;R:21162;i:2;R:21163;}s:58:"1228:com-tco-cf9b77061f7b3126b49d50a6fa68f7ca8c26b7a3-open";a:3:{i:0;R:21801;i:1;R:21162;i:2;R:21163;}s:60:"1228:com-tco-88d86b7721d587644e9c4cf33a084202cb3b0ff0-closed";a:3:{i:0;R:21801;i:1;R:21162;i:2;R:21163;}s:58:"1228:com-tco-d7cd56f2a2a3f47830760edfb89946eb7b9e2cd1-pass";a:3:{i:0;R:21801;i:1;R:21162;i:2;R:21163;}s:58:"1228:com-tco-2758e3273dd1670b2f6f59afa8542d89c80d20a6-fail";a:3:{i:0;R:21801;i:1;R:21162;i:2;R:21163;}s:64:"1228:com-tco-387fd1bbc18419e26c612f4acad9213e5073ade4-incomplete";a:3:{i:0;R:21801;i:1;R:21162;i:2;R:21163;}s:67:"1228:com-tco-2eacdbe4cbf1468a1777876985c70d6ea0187dfb-not_evaluated";a:3:{i:0;R:21801;i:1;R:21162;i:2;R:21163;}s:70:"1228:com-tco-5bf3c8ab596e164181a2777f643ff176899d07f8-training_manager";a:3:{i:0;R:21801;i:1;R:21162;i:2;R:21163;}s:84:"1228:com-tco-0cdf8fa2c7e05760e939679a38269b5f8ec758c2-edit_the_training_course_statu";a:3:{i:0;R:21801;i:1;R:21162;i:2;R:21163;}s:84:"1228:com-tco-422ec53f8059715f5dff54ba187dd4baae321fb9-view_the_training_course_statu";a:3:{i:0;R:21801;i:1;R:21162;i:2;R:21163;}s:84:"1228:com-tco-7a3706b15ecf143f0f2a8853aa5982919025b814-edit_the_training_course_evalu";a:3:{i:0;R:21801;i:1;R:21162;i:2;R:21163;}s:84:"1228:com-tco-bdda6a01773c6525f299b27996b2079b53b4c9d5-view_the_training_course_evalu";a:3:{i:0;R:21801;i:1;R:21162;i:2;R:21163;}s:84:"1228:com-tco-ec8d1e7297e79cf4102cd67e792395e1e07e85df-edit_the_training_course_categ";a:3:{i:0;R:21801;i:1;R:21162;i:2;R:21163;}s:83:"1228:com-tco-7f338a7a87d90d3bc742f64936167c6ea72c297d-edit_the_training_course_list";a:3:{i:0;R:21801;i:1;R:21162;i:2;R:21163;}s:84:"1228:com-tco-6270838ee4264dbd89b527f425726596f324f8d0-edit_the_scheduled_training_co";a:3:{i:0;R:21801;i:1;R:21162;i:2;R:21163;}s:83:"1228:com-tco-c3e102d21d8a4cf9600d075c5952b809833abc1c-view_the_training_course_list";a:3:{i:0;R:21801;i:1;R:21162;i:2;R:21163;}s:84:"1228:com-tco-fff0bac6d2a5497392ebc9764a5af6b677a63f58-edit_a_scheduled_training_cour";a:3:{i:0;R:21801;i:1;R:21162;i:2;R:21163;}s:84:"1228:com-tco-f62cbf40da3033d5019d631a2b84afcc74699e75-view_the_scheduled_training_co";a:3:{i:0;R:21801;i:1;R:21162;i:2;R:21163;}s:84:"1228:com-tco-fe2ae002393fc0717144a7a56361246e354d8674-this_form_holds_basic_informat";a:3:{i:0;R:21801;i:1;R:21162;i:2;R:21163;}s:79:"1228:com-tco-7c207d0fec01b94fc5693f9857c33da26ce2877c-scheduled_training_course";a:3:{i:0;R:21801;i:1;R:21162;i:2;R:21163;}s:84:"1228:com-tco-2862884e9eb7ab167fc66b9d78e6fea91d22a2e1-person_scheduled_training_cour";a:3:{i:0;R:21801;i:1;R:21162;i:2;R:21163;}s:72:"1228:com-tco-183908d88a547a33a2f18f21ac84b0d46fd68149-training_requestor";a:3:{i:0;R:21801;i:1;R:21162;i:2;R:21163;}s:83:"1228:com-tco-3ba86b6ddaa76c33d030333331b49a2bd055a06d-add_update_person's_scheduled";a:3:{i:0;R:21801;i:1;R:21162;i:2;R:21163;}s:58:"1228:com-tco-709a23220f2c3d64d1e1d6d18c4d5280f8d82fca-name";a:3:{i:0;R:21801;i:1;R:21162;i:2;R:21163;}s:75:"1228:com-tco-4193018f2e723fb8cc87a51535457bb114cdd240-competency_evaluation";a:3:{i:0;R:21801;i:1;R:21162;i:2;R:21163;}s:59:"1228:com-tco-7e13bd176f89a12f0b614b55ffc19c14515ef920-topic";a:3:{i:0;R:21801;i:1;R:21162;i:2;R:21163;}s:59:"1228:com-tco-70440046a3dc2e079f23ee1c57dfa76669b732aa-notes";a:3:{i:0;R:21801;i:1;R:21162;i:2;R:21163;}s:74:"1228:com-tco-d38e9b888e8b481eeea6da394d506f30ddf68a32-training_institution";a:3:{i:0;R:21801;i:1;R:21162;i:2;R:21163;}s:70:"1228:com-tco-40100efe9638499455af4c0585eca4e7eab50537-training_funders";a:3:{i:0;R:21801;i:1;R:21162;i:2;R:21163;}s:67:"1228:com-tco-ca9a10d19a7c4d93dc35ce76bbfbbef2550d0f7c-ceus_provided";a:3:{i:0;R:21801;i:1;R:21162;i:2;R:21163;}s:60:"1228:com-tco-bae7d5be70820ed56467bd9a63744e23b47bd711-status";a:3:{i:0;R:21801;i:1;R:21162;i:2;R:21163;}s:62:"1228:com-tco-a3c686e711e4720f99b4562bb3dbaae7ab658cf2-category";a:3:{i:0;R:21801;i:1;R:21162;i:2;R:21163;}s:64:"1228:com-tco-47e94c821846dfbb5b342f96db92edafb20554ed-retraining";a:3:{i:0;R:21801;i:1;R:21162;i:2;R:21163;}s:63:"1228:com-tco-1798b3ba42ee08ea09d9720b2d9c0181abbfe3e4-completed";a:3:{i:0;R:21801;i:1;R:21162;i:2;R:21163;}s:66:"1228:com-tco-5bba095984e657b143b12eba8a2768a9475084b7-request_date";a:3:{i:0;R:21801;i:1;R:21162;i:2;R:21163;}s:64:"1228:com-tco-ff7513853508e7c6e3aa07908df2a450a026eb88-evaluation";a:3:{i:0;R:21801;i:1;R:21162;i:2;R:21163;}s:66:"1228:com-tco-343959a43709ac3ffec6703be560025e42d26689-requested_by";a:3:{i:0;R:21801;i:1;R:21162;i:2;R:21163;}s:62:"1228:com-tco-5f97f8775628e86310829ab9e8c465258ab92a5e-instance";a:3:{i:0;R:21801;i:1;R:21162;i:2;R:21163;}s:58:"1228:com-tco-5b6825d3c67a35898b7b65fd986a7fe6ca47771d-site";a:3:{i:0;R:21801;i:1;R:21162;i:2;R:21163;}s:80:"1228:com-tco-6491cd1d63af80a4cd74f939ab8840a82c82ccf5-maximum_number_of_students";a:3:{i:0;R:21801;i:1;R:21162;i:2;R:21163;}s:65:"1228:com-tco-452b3995400d48e4e14c100051092499d9e4f608-instructors";a:3:{i:0;R:21801;i:1;R:21162;i:2;R:21163;}s:64:"1228:com-tco-9d7ab1a557965be0eae6205c2d860c45a3eafc11-start_date";a:3:{i:0;R:21801;i:1;R:21162;i:2;R:21163;}s:62:"1228:com-tco-84b1478125890bad1cc4b36d6d3781773b3fde5a-end_date";a:3:{i:0;R:21801;i:1;R:21162;i:2;R:21163;}s:62:"1228:com-tco-d219c68101f532de10add2cf42fb9dbeca73d3be-location";a:3:{i:0;R:21801;i:1;R:21162;i:2;R:21163;}s:84:"1228:com-tco-12d1a54e2309275bac8a111a305b2e7823c8db88-edit_the_training_course_reque";a:3:{i:0;R:21801;i:1;R:21162;i:2;R:21163;}s:60:"1228:com-tco-0af9d1d9d310211871b6f58e15213fd919e42f83-s_on_s";a:3:{i:0;R:21801;i:1;R:21162;i:2;R:21163;}s:65:"1228:com-tco-ce350f5f5179f4a510c839986df2872dde03afab-exam_result";a:3:{i:0;R:21801;i:1;R:21162;i:2;R:21163;}s:75:"1228:com-tco-084a211c4cc93b5dca577d83a42a4ad195993c9a-record_an_exam_result";a:3:{i:0;R:21801;i:1;R:21162;i:2;R:21163;}s:84:"1228:com-tco-ab3fae31815975e54c97e3b18a0f433ba12d5117-view_the_training_course_categ";a:3:{i:0;R:21801;i:1;R:21162;i:2;R:21163;}s:84:"1228:com-tco-c510cf420433792a2a568ab0c047525f0579474f-edit_some_lists_associated_wit";a:3:{i:0;R:21801;i:1;R:21162;i:2;R:21163;}s:84:"1228:com-tco-24cfad74d5c9f3c272946cfbc872189424d0bd68-view_some_lists_associated_wit";a:3:{i:0;R:21801;i:1;R:21162;i:2;R:21163;}s:84:"1228:com-tco-210a3979060d019ab98c3fdcfd8aff929edbfcfb-edit_all_lists_associated_with";a:3:{i:0;R:21801;i:1;R:21162;i:2;R:21163;}s:84:"1228:com-tco-2ffbaed81f19e2444a028a8514d288bbfc8b0d98-view_all_lists_associated_with";a:3:{i:0;R:21801;i:1;R:21162;i:2;R:21163;}s:76:"1228:com-tco-d7f15aa53b0a5163c18e8521991830dc8defece3-date_to_return_to_work";a:3:{i:0;R:21801;i:1;R:21162;i:2;R:21163;}s:84:"1228:com-tex-b2ff5496b15996c37b7261552d74b3e15b8c5aeb-exam_results_for_training_cour";a:3:{i:0;s:20:"out-ihris-common-tex";i:1;R:21162;i:2;R:21163;}s:66:"1228:com-tex-6006bb2a5b4d00700c0bb68ecc1bbbc2e1fe37cc-exam_results";a:3:{i:0;R:21880;i:1;R:21162;i:2;R:21163;}s:69:"1228:com-tex-5d3d9837831f6a8fbb15898c24d3aa679c0c05d9-passing_score_d";a:3:{i:0;R:21880;i:1;R:21162;i:2;R:21163;}s:79:"1228:com-tex-ae9930334fbc1aac330f07a76d7b54f3b4dcafa6-training_course_exam_type";a:3:{i:0;R:21880;i:1;R:21162;i:2;R:21163;}s:74:"1228:com-tex-d31779ebb595f99482c93080cf0db42cb3b628e9-training_course_exam";a:3:{i:0;R:21880;i:1;R:21162;i:2;R:21163;}s:59:"1228:com-tex-70440046a3dc2e079f23ee1c57dfa76669b732aa-notes";a:3:{i:0;R:21880;i:1;R:21162;i:2;R:21163;}s:69:"1228:com-tex-87c586c4b0e521d5ba557a37bcfbfcb64ec7736d-evaluation_date";a:3:{i:0;R:21880;i:1;R:21162;i:2;R:21163;}s:63:"1228:com-tex-8ed8c59d472197512254825d87eb86d910653eff-exam_type";a:3:{i:0;R:21880;i:1;R:21162;i:2;R:21163;}s:59:"1228:com-tex-489f4877244a299131d309f0ca10733c1a41251c-score";a:3:{i:0;R:21880;i:1;R:21162;i:2;R:21163;}s:82:"1228:com-tex-101b2fbf77366da5181efd90a9a755612475702b-passing_score_for_final_exam";a:3:{i:0;R:21880;i:1;R:21162;i:2;R:21163;}s:82:"1228:com-tex-8ff8878b1289385665a4d31da4a491aa46e366d5-training_course_exam_results";a:3:{i:0;R:21880;i:1;R:21162;i:2;R:21163;}s:84:"1228:com-tex-e8632488b28c4472b52370799d61f2e2328a4375-evaluate_a_persons's_scheduled";a:3:{i:0;R:21880;i:1;R:21162;i:2;R:21163;}s:84:"1228:com-tex-ab24a32a87024aa594ae0665a06c54788dd4d342-view_a_persons's_scheduled_tra";a:3:{i:0;R:21880;i:1;R:21162;i:2;R:21163;}s:58:"1228:com-tin-69bd4ef9fbd0894a22759c3766b859defbdedbc8-view";a:3:{i:0;s:20:"out-ihris-common-tin";i:1;R:21162;i:2;R:21163;}s:65:"1228:com-tin-0eb5ed506e4923c28d7f4a8aa69efe99b3ad75d1-information";a:3:{i:0;R:21894;i:1;R:21162;i:2;R:21163;}s:75:"1228:com-tin-957cd1a44423bc735be244be158a79ad5e0affd6-edit_this_information";a:3:{i:0;R:21894;i:1;R:21162;i:2;R:21163;}s:77:"1228:com-tin-8f12a44b12f65ea43ddb4305154428ef1ac77771-update_this_information";a:3:{i:0;R:21894;i:1;R:21162;i:2;R:21163;}s:84:"1228:com-tin-dadbd6ff4afd197b816e3380daace2c57fd021bd-select_another_training_instit";a:3:{i:0;R:21894;i:1;R:21162;i:2;R:21163;}s:74:"1228:com-tin-d38e9b888e8b481eeea6da394d506f30ddf68a32-training_institution";a:3:{i:0;R:21894;i:1;R:21162;i:2;R:21163;}s:65:"1228:com-tin-702852a3b282bcdf2fc2c70d7d8776c6944607c5-view_record";a:3:{i:0;R:21894;i:1;R:21162;i:2;R:21163;}s:73:"1228:com-tin-a34b69fc46e7a278cf65c58bb347de6560fb046f-contact_information";a:3:{i:0;R:21894;i:1;R:21162;i:2;R:21163;}s:82:"1228:com-tin-a65dbedd428355113ef661bfbfe584d931d5e74f-return_(do_not_save_changes)";a:3:{i:0;R:21894;i:1;R:21162;i:2;R:21163;}s:84:"1228:com-tin-aa36ac930d216be62e9fdb563210b6d373b735dd-select_another_training_funder";a:3:{i:0;R:21894;i:1;R:21162;i:2;R:21163;}s:69:"1228:com-tin-1c0e11f2af6a82c4017692b88380c8c081245793-training_funder";a:3:{i:0;R:21894;i:1;R:21162;i:2;R:21163;}s:84:"1228:com-tin-d9c42f6cbe4b4b7feeef4b501323b821d965104a-edit_the_training_institutions";a:3:{i:0;R:21894;i:1;R:21162;i:2;R:21163;}s:83:"1228:com-tin-83b2e0118b622b4a8ea1597bd0825971ff084192-edit_the_training_funder_list";a:3:{i:0;R:21894;i:1;R:21162;i:2;R:21163;}s:84:"1228:com-tin-caee9c979cf5ed64ad0c8f703b5d4ccfd6315236-view_the_training_institutions";a:3:{i:0;R:21894;i:1;R:21162;i:2;R:21163;}s:83:"1228:com-tin-3b892bd6d8edc2f09fb097f46d2dc28852f8a54e-view_the_training_funder_list";a:3:{i:0;R:21894;i:1;R:21162;i:2;R:21163;}s:61:"1228:com-tin-04a212215ef9fbf686d280802eb81ee7a6e681cd-confirm";a:3:{i:0;R:21894;i:1;R:21162;i:2;R:21163;}s:84:"1228:com-tsc-276cc3065783e8d502fe35ac4caf2f7f77fe8894-evaluate_a_person's_competenci";a:3:{i:0;s:20:"out-ihris-common-tsc";i:1;R:21162;i:2;R:21163;}s:66:"1228:com-tsc-abb1c7286f4032bcaa1ba6d2d26f1bfbe99af853-competencies";a:3:{i:0;R:21911;i:1;R:21162;i:2;R:21163;}s:84:"1228:com-tsc-80fbaffbc4ff5f29b5805f1db5b496d0ac5fbcfc-training_course_competency_eva";a:3:{i:0;R:21911;i:1;R:21162;i:2;R:21163;}s:82:"1228:com-tsc-2fcfb3e144f68021d38121cd956dfad8afdaee3a-evaulate_course_competencies";a:3:{i:0;R:21911;i:1;R:21162;i:2;R:21163;}s:59:"1228:com-tsc-70440046a3dc2e079f23ee1c57dfa76669b732aa-notes";a:3:{i:0;R:21911;i:1;R:21162;i:2;R:21163;}s:69:"1228:com-tsc-87c586c4b0e521d5ba557a37bcfbfcb64ec7736d-evaluation_date";a:3:{i:0;R:21911;i:1;R:21162;i:2;R:21163;}s:64:"1228:com-tsc-ff7513853508e7c6e3aa07908df2a450a026eb88-evaluation";a:3:{i:0;R:21911;i:1;R:21162;i:2;R:21163;}s:64:"1228:com-tsc-05e59bb0ed360ac5cfcc85cdb8a3184e0442743f-competency";a:3:{i:0;R:21911;i:1;R:21162;i:2;R:21163;}s:75:"1228:com-tsc-0573a4376899fa399c17c6e92d8b44c72767db3e-competencies_provided";a:3:{i:0;R:21911;i:1;R:21162;i:2;R:21163;}s:84:"1228:com-tsc-6b6284147bb08485de71334c8db61a0321714968-this_course_does_not_provide_a";a:3:{i:0;R:21911;i:1;R:21162;i:2;R:21163;}s:84:"1228:com-tsc-e8632488b28c4472b52370799d61f2e2328a4375-evaluate_a_persons's_scheduled";a:3:{i:0;R:21911;i:1;R:21162;i:2;R:21163;}s:84:"1228:com-tsc-ab24a32a87024aa594ae0665a06c54788dd4d342-view_a_persons's_scheduled_tra";a:3:{i:0;R:21911;i:1;R:21162;i:2;R:21163;}s:62:"1228:com-uma-e2645ab907efc033b599672a7aa839bb39d52874-uuid_map";a:3:{i:0;s:20:"out-ihris-common-uma";i:1;R:21162;i:2;R:21163;}s:65:"1228:com-uma-ca4cf3fcce8f53a7bf03190f7ea7cb8811ff07c1-mapped_form";a:3:{i:0;R:21924;i:1;R:21162;i:2;R:21163;}s:66:"1228:i2ce-admin-792c81a4cfdcb5b45d688cb03c2fd2e816f86d44-configure";a:3:{i:0;s:20:"out-ihris-i2ce-admin";i:1;R:21162;i:2;s:20:"out-ihris-i2ce-0-all";}s:74:"1228:i2ce-admin-508cffc4026fb664a00943082a5bc80d0312b123-available_modules";a:3:{i:0;R:21927;i:1;R:21162;i:2;R:21928;}s:87:"1228:i2ce-admin-f4f6f5d650cb0b7bcc8c40c23034a9f5969ebeff-here_you_may_select_modules_to";a:3:{i:0;R:21927;i:1;R:21162;i:2;R:21928;}s:63:"1228:i2ce-admin-20063ad9053289cecaa20ae630ed2dd758282a07-enable";a:3:{i:0;R:21927;i:1;R:21162;i:2;R:21928;}s:87:"1228:i2ce-admin-a7a098c10d8ac56d84c0328aac55786dd225a6e2-button_at_the_bottom_of_the_pa";a:3:{i:0;R:21927;i:1;R:21162;i:2;R:21928;}s:86:"1228:i2ce-admin-a3dbbd531aa6902cc4eb24685c6b7b333d4bc916-link_associated_to_them_if_it";a:3:{i:0;R:21927;i:1;R:21162;i:2;R:21928;}s:68:"1228:i2ce-admin-3f50ceb57b5b30ad882e6b601320fb6980c011be-sub-modules";a:3:{i:0;R:21927;i:1;R:21162;i:2;R:21928;}s:87:"1228:i2ce-admin-be7ff38b861633d6425a2893eae61356a8339812-link_or_on_the_down_arrow_if_p";a:3:{i:0;R:21927;i:1;R:21162;i:2;R:21928;}s:73:"1228:i2ce-admin-cb3248d86deefda5b289bd4aefff6f8959abaffc-main_module_menu";a:3:{i:0;R:21927;i:1;R:21162;i:2;R:21928;}s:87:"1228:i2ce-admin-9c5c8aa5373f591c33ffac5c60d165cf5cf9e28a-this_module_has_no_configurati";a:3:{i:0;R:21927;i:1;R:21162;i:2;R:21928;}s:87:"1228:i2ce-admin-9ed4063a5a7a73a356595adca07a7ed088d64b42-this_module_has_no_configurati";a:3:{i:0;R:21927;i:1;R:21162;i:2;R:21928;}s:78:"1228:i2ce-admin-83926ee8e1ff920a8b53a6d3b42456bef3aa20fe-can_configure_modules";a:3:{i:0;R:21927;i:1;R:21162;i:2;R:21928;}s:71:"1228:i2ce-admin-b8be3d1264310c3b8c848d4b90d5206179a40cc4-administration";a:3:{i:0;R:21927;i:1;R:21162;i:2;R:21928;}s:64:"1228:i2ce-admin-2da600bf9404843107a9531694f654e5662959e0-version";a:3:{i:0;R:21927;i:1;R:21162;i:2;R:21928;}s:67:"1228:i2ce-admin-5d73cc30510c739ed68c572c5199e106d325b648-created_by";a:3:{i:0;R:21927;i:1;R:21162;i:2;R:21928;}s:64:"1228:i2ce-admin-b37456c4530be810dc040f50da72eda09addfb0a-contact";a:3:{i:0;R:21927;i:1;R:21162;i:2;R:21928;}s:63:"1228:i2ce-admin-f64cd8e32f5ac7553c150bd05d6f2252bb73f68d-author";a:3:{i:0;R:21927;i:1;R:21162;i:2;R:21928;}s:68:"1228:i2ce-admin-d99ad8ed301f25104bde85f000752278579f98f2-sub-modules";a:3:{i:0;R:21927;i:1;R:21162;i:2;R:21928;}s:85:"1228:i2ce-bpr-32040aed4bfef90202caee6597dc62a69af97b63-background_process_status_view";a:3:{i:0;s:18:"out-ihris-i2ce-bpr";i:1;R:21162;i:2;R:21928;}s:85:"1228:i2ce-bpr-34b6f2dced129267f8f40af68b92800438d790fb-logged_ouput_for_background_pr";a:3:{i:0;R:21947;i:1;R:21162;i:2;R:21928;}s:84:"1228:i2ce-bpr-0eb8b98bb6215a280529fd3475b012a0a6a5b3bf-can_view_background_processes";a:3:{i:0;R:21947;i:1;R:21162;i:2;R:21928;}s:85:"1228:i2ce-cfo-b1821abbdf81436e29a91930c00308ad9bde40cf-allows_administering_of_cached";a:3:{i:0;s:18:"out-ihris-i2ce-cfo";i:1;R:21162;i:2;R:21928;}s:69:"1228:i2ce-cfo-04cd5ccc5a8366395964ac55f14f42e9d28efa23-last_generated";a:3:{i:0;R:21951;i:1;R:21162;i:2;R:21928;}s:74:"1228:i2ce-cfo-68874b4178b7f1720ecc131d5449822e5482e39c-create_update_cache";a:3:{i:0;R:21951;i:1;R:21162;i:2;R:21928;}s:77:"1228:i2ce-cfo-bfe7399a48b71b8537ba8bfd1a83be85cf3c989c-force_cache_generation";a:3:{i:0;R:21951;i:1;R:21162;i:2;R:21928;}s:72:"1228:i2ce-cfo-6352b10971083475425fef3e7060afd6c3fed25e-drop_cached_table";a:3:{i:0;R:21951;i:1;R:21162;i:2;R:21928;}s:80:"1228:i2ce-cfo-fa90eab4b9b509f1c3cd00eb5f67b179d21290da-of_all_forms_if_not_stale";a:3:{i:0;R:21951;i:1;R:21162;i:2;R:21928;}s:59:"1228:i2ce-cfo-0a088b3115056ef6acd3ab4b406c823e1724e216-drop";a:3:{i:0;R:21951;i:1;R:21162;i:2;R:21928;}s:74:"1228:i2ce-cfo-7024f2f11e2700b93da3e738ce573ecb342c2f5b-caches_of_all_forms";a:3:{i:0;R:21951;i:1;R:21162;i:2;R:21928;}s:67:"1228:i2ce-cfo-8da00ccc99b0f2a0142849d84bdcabab201046ff-cached_forms";a:3:{i:0;R:21951;i:1;R:21162;i:2;R:21928;}s:66:"1228:i2ce-cfo-461e2ce884c975b1636f448a670d95801f4124a7-cache_forms";a:3:{i:0;R:21951;i:1;R:21162;i:2;R:21928;}s:85:"1228:i2ce-cfo-553d54bc223c68f4411f005e4793adda547ebc9c-cache_all_forms_in_the_selecte";a:3:{i:0;R:21951;i:1;R:21162;i:2;R:21928;}s:60:"1228:i2ce-cfo-50338b3b242845e21a0ace9ae9684283d945fb52-cache";a:3:{i:0;R:21951;i:1;R:21162;i:2;R:21928;}s:64:"1228:i2ce-cfo-9399c82b16acdb0709f279b5a92341ea21c989c6-all_forms";a:3:{i:0;R:21951;i:1;R:21162;i:2;R:21928;}s:68:"1228:i2ce-cfo-605473828beeb6eacf985227ba2a189ff98e3461-force_caching";a:3:{i:0;R:21951;i:1;R:21162;i:2;R:21928;}s:74:"1228:i2ce-cfo-825b78467ccb7c5b9d8ab588e52360412635d4db-export_cached_forms";a:3:{i:0;R:21951;i:1;R:21162;i:2;R:21928;}s:85:"1228:i2ce-cfo-6de4e15da579bed102701d96b8b08465e2ac3a41-export_all_cached_forms_in_the";a:3:{i:0;R:21951;i:1;R:21162;i:2;R:21928;}s:72:"1228:i2ce-cfo-aa3eaa3ef28d51ed31ebd934d53c0af75f33d4a2-modification_date";a:3:{i:0;R:21951;i:1;R:21162;i:2;R:21928;}s:79:"1228:i2ce-cfo-68ecfda93fc932031f351ca54812e68c2d0aeb1b-enable_bzip2_compression";a:3:{i:0;R:21951;i:1;R:21162;i:2;R:21928;}s:74:"1228:i2ce-cfo-7303989adb9e9d7ab33fdb997cc2fda253b1a622-create_edit_profile";a:3:{i:0;R:21951;i:1;R:21162;i:2;R:21928;}s:85:"1228:i2ce-cfo-ab8a7b78d947db2e903f347c29259d91fcc522c7-create_a_profile_or_edit_an_ex";a:3:{i:0;R:21951;i:1;R:21162;i:2;R:21928;}s:75:"1228:i2ce-cfo-010a91146904295a6910ca1e0a9699918dd92c83-create_a_new_profile";a:3:{i:0;R:21951;i:1;R:21162;i:2;R:21928;}s:85:"1228:i2ce-cfo-e5497706504fb51d253eacc9ef9e01914d911c45-manage_caching_of_individual_f";a:3:{i:0;R:21951;i:1;R:21162;i:2;R:21928;}s:69:"1228:i2ce-cfo-1260333dba838e325f2067ddd6ba05b93d924a0b-define_profile";a:3:{i:0;R:21951;i:1;R:21162;i:2;R:21928;}s:85:"1228:i2ce-cfo-767a4ebfc685029cd64996bac3b22abae9ed1b11-define_a_profile_of_forms_to_e";a:3:{i:0;R:21951;i:1;R:21162;i:2;R:21928;}s:67:"1228:i2ce-cfo-fb32c90d64c5ff151646f8a61e6d3a224a4958d9-profile_name";a:3:{i:0;R:21951;i:1;R:21162;i:2;R:21928;}s:78:"1228:i2ce-cfo-446c35113743855fad9f984b268281dc47382000-select_forms_in_profile";a:3:{i:0;R:21951;i:1;R:21162;i:2;R:21928;}s:71:"1228:i2ce-cfo-b2d38c8d20bff324ad8b41e3517e01e09c3fbfe4-select_a_profile";a:3:{i:0;R:21951;i:1;R:21162;i:2;R:21928;}s:67:"1228:i2ce-cpi-22a8765e4a25b37cad3721ffdb0a5d65f2ee31e4-chosen_color";a:3:{i:0;s:18:"out-ihris-i2ce-cpi";i:1;R:21162;i:2;R:21928;}s:69:"1228:i2ce-cpi-530d58bd38c6c59bf4285662ac3fe36e0eaa1347-choose_a_color";a:3:{i:0;R:21979;i:1;R:21162;i:2;R:21928;}s:63:"1228:i2ce-cpi-283ee46559d2a344e5e8bd6e5e5a87eb900fa3b5-(default";a:3:{i:0;R:21979;i:1;R:21162;i:2;R:21928;}s:59:"1228:i2ce-cre-5301648dcf6b53cefc9ed52999aaa92d4603cae0-edit";a:3:{i:0;s:18:"out-ihris-i2ce-cre";i:1;R:21162;i:2;R:21928;}s:62:"1228:i2ce-cre-df174a3f2faa31814e06540acda7af8825403fac-enabled";a:3:{i:0;R:21983;i:1;R:21162;i:2;R:21928;}s:69:"1228:i2ce-cre-c1acff21b546f4b9d5bef20242b46318863c0587-with_values_in";a:3:{i:0;R:21983;i:1;R:21162;i:2;R:21928;}s:68:"1228:i2ce-cre-1a3887bc13980c583e39362fe5401e78b98d0de0-limit_options";a:3:{i:0;R:21983;i:1;R:21162;i:2;R:21928;}s:67:"1228:i2ce-cre-cc3832473f0fadd93e7db6ba18539dd5bce2d5c1-link_options";a:3:{i:0;R:21983;i:1;R:21162;i:2;R:21928;}s:61:"1228:i2ce-cre-31341c6f0c7af677ffb8fadcb92038e8ac2b6193-header";a:3:{i:0;R:21983;i:1;R:21162;i:2;R:21928;}s:85:"1228:i2ce-cre-c4f679672cfa9189924abc7a553ef863b9319d90-the_header_text_which_is_displ";a:3:{i:0;R:21983;i:1;R:21162;i:2;R:21928;}s:65:"1228:i2ce-cre-eec2e4ed180065d82838e59d744622df4dfeee4e-link_field";a:3:{i:0;R:21983;i:1;R:21162;i:2;R:21928;}s:85:"1228:i2ce-cre-29ade6986c19ce120c17fbef81a16726692ac994-the_data,_if_any,_we_append_to";a:3:{i:0;R:21983;i:1;R:21162;i:2;R:21928;}s:59:"1228:i2ce-cre-6eef6648406c333a4035cd5e60d0bf2ecf2606d7-none";a:3:{i:0;R:21983;i:1;R:21162;i:2;R:21928;}s:74:"1228:i2ce-cre-e09b6227074c817d6f63bf307748b3536f015891-reports_by_category";a:3:{i:0;R:21983;i:1;R:21162;i:2;R:21928;}s:85:"1228:i2ce-cre-9b23e0051caee5c1143b4301d8d5a20f480d7d11-create_a_new_view_for_a_report";a:3:{i:0;R:21983;i:1;R:21162;i:2;R:21928;}s:67:"1228:i2ce-cre-ecd79067094e1ae04419a174498ceaa58849ec4a-name_of_view";a:3:{i:0;R:21983;i:1;R:21162;i:2;R:21928;}s:66:"1228:i2ce-cre-55f8ebc805e65b5b71ddafdae390e3be2bcd69af-description";a:3:{i:0;R:21983;i:1;R:21162;i:2;R:21928;}s:61:"1228:i2ce-cre-ee45c30326b750387589752c0f75e1dd87ddc7e4-report";a:3:{i:0;R:21983;i:1;R:21162;i:2;R:21928;}s:65:"1228:i2ce-cre-31f34a6777b8a1e6ec5fcd7525cf675eb8300756-select_one";a:3:{i:0;R:21983;i:1;R:21162;i:2;R:21928;}s:77:"1228:i2ce-cre-a2e011b80199580842f0f4cd681ac4b6d81bf9d4-custom_reporting_tools";a:3:{i:0;R:21983;i:1;R:21162;i:2;R:21928;}s:75:"1228:i2ce-cre-ef7ac27451e99a20f27b3434f6a93b781e020b4e-report_relationships";a:3:{i:0;R:21983;i:1;R:21162;i:2;R:21928;}s:85:"1228:i2ce-cre-f11c0e4e8f60577a0be39b33cbe5ab3dc2b63b82-define_relationships_between_t";a:3:{i:0;R:21983;i:1;R:21162;i:2;R:21928;}s:62:"1228:i2ce-cre-88bc3fe3daddee139809d036f18b985fbe165957-reports";a:3:{i:0;R:21983;i:1;R:21162;i:2;R:21928;}s:85:"1228:i2ce-cre-ac80b42abbeb8cdedc7b87a2419cd5757222921a-create_and_save_reports_by_sel";a:3:{i:0;R:21983;i:1;R:21162;i:2;R:21928;}s:67:"1228:i2ce-cre-4494377254676cce03f76fada525db6349dafbd0-report_views";a:3:{i:0;R:21983;i:1;R:21162;i:2;R:21928;}s:84:"1228:i2ce-cre-76e540c2baa24b239f12acc241c758c0bcec1866-view_saved_reports_and_create";a:3:{i:0;R:21983;i:1;R:21162;i:2;R:21928;}s:63:"1228:i2ce-cre-eed6bfb41051ed5b74447340f3c2e29d11e99a7c-required";a:3:{i:0;R:21983;i:1;R:21162;i:2;R:21928;}s:85:"1228:i2ce-cre-744cbe2509a30604e174d0f0cbd373d0156f3c3b-require_that_the_data_for_this";a:3:{i:0;R:21983;i:1;R:21162;i:2;R:21928;}s:70:"1228:i2ce-cre-11b6b628a4187788562feb3e461956b65f1c8f50-reported_fields";a:3:{i:0;R:21983;i:1;R:21162;i:2;R:21928;}s:85:"1228:i2ce-cre-8120920cde999ff32d42820229b9d2422b34b7f0-choose_options_to_limit_result";a:3:{i:0;R:21983;i:1;R:21162;i:2;R:21928;}s:75:"1228:i2ce-cre-843869d609b6631f5b1245ae9903201ddbd7f020-save_as_default_view";a:3:{i:0;R:21983;i:1;R:21162;i:2;R:21928;}s:68:"1228:i2ce-cre-cabfa4882af0b513952cec113216fcf97fc66d56-related_views";a:3:{i:0;R:21983;i:1;R:21162;i:2;R:21928;}s:60:"1228:i2ce-cre-c326a4660b674d2f6ea82687a1e1abae2337541f-field";a:3:{i:0;R:21983;i:1;R:21162;i:2;R:21928;}s:85:"1228:i2ce-cre-a4db16754226b72ffe476a7b78067853888705b2-enabled_check_to_enable_this_f";a:3:{i:0;R:21983;i:1;R:21162;i:2;R:21928;}s:85:"1228:i2ce-cre-09de5f278da9cf5fd1d2c3c17a2692cf73242b3e-choose_a_method_to_collect_(ag";a:3:{i:0;R:21983;i:1;R:21162;i:2;R:21928;}s:58:"1228:i2ce-cre-fc9ce14b28c6f2c3b72caf056ca604b2b96f7d2b-sum";a:3:{i:0;R:21983;i:1;R:21162;i:2;R:21928;}s:62:"1228:i2ce-cre-a8df2fec28d8948a0326722029c7492b88ee4fbe-maximum";a:3:{i:0;R:21983;i:1;R:21162;i:2;R:21928;}s:62:"1228:i2ce-cre-5d398eef3ecc3ea6a161734581d0bd3d920b64d8-minimum";a:3:{i:0;R:21983;i:1;R:21162;i:2;R:21928;}s:62:"1228:i2ce-cre-15f86c051ecf0b64e5f8cdc8c689552f42595942-average";a:3:{i:0;R:21983;i:1;R:21162;i:2;R:21928;}s:67:"1228:i2ce-cre-0f98e7342ffa74c035c3878dfc6122dfacb4373f-total_number";a:3:{i:0;R:21983;i:1;R:21162;i:2;R:21928;}s:69:"1228:i2ce-cre-d8969273940b1cf778a3fb45a2b043714eeb2dd2-total_distinct";a:3:{i:0;R:21983;i:1;R:21162;i:2;R:21928;}s:85:"1228:i2ce-cre-0053472948986ea0e644da5258fb485c21f5628c-before_you_can_create_(or_edit";a:3:{i:0;R:21983;i:1;R:21162;i:2;R:21928;}s:61:"1228:i2ce-cre-9b7c68a918b17eb053809b198d7c9abfc142f30a-create";a:3:{i:0;R:21983;i:1;R:21162;i:2;R:21928;}s:85:"1228:i2ce-cre-ec8bad0da99349bf50257ab2866826d789ff3221-a_report_relationship_which_de";a:3:{i:0;R:21983;i:1;R:21162;i:2;R:21928;}s:62:"1228:i2ce-cre-cfd6869bbed115ef22b29a444fe0ec3b10c02a1f-jump_to";a:3:{i:0;R:21983;i:1;R:21162;i:2;R:21928;}s:65:"1228:i2ce-cre-58e61698b0eee4da761ad650aab5446d492be492-sorting_by";a:3:{i:0;R:21983;i:1;R:21162;i:2;R:21928;}s:66:"1228:i2ce-cre-53610e2552f934465450dda76afd7600a1c1fc42-report_view";a:3:{i:0;R:21983;i:1;R:21162;i:2;R:21928;}s:59:"1228:i2ce-cre-69bd4ef9fbd0894a22759c3766b859defbdedbc8-view";a:3:{i:0;R:21983;i:1;R:21162;i:2;R:21928;}s:85:"1228:i2ce-cre-fd512d0d48670afb7adff5bf22a7ec271f9150f8-select_the_fields_and_any_aggr";a:3:{i:0;R:21983;i:1;R:21162;i:2;R:21928;}s:80:"1228:i2ce-cre-838968eefbcf820b4d0e0279418b275e8aa98803-reported_view_information";a:3:{i:0;R:21983;i:1;R:21162;i:2;R:21928;}s:67:"1228:i2ce-cre-8d6b34815ba43d254716eab5aa768b8c7aa6d3f1-display_name";a:3:{i:0;R:21983;i:1;R:21162;i:2;R:21928;}s:85:"1228:i2ce-cre-057051226889465b513a09ec0e5ebe4840d82268-a_short_descriptive_name_of_th";a:3:{i:0;R:21983;i:1;R:21162;i:2;R:21928;}s:85:"1228:i2ce-cre-d22d39b92b71213a104502c00e24491bcf35b46c-a_longer_description_of_this_r";a:3:{i:0;R:21983;i:1;R:21162;i:2;R:21928;}s:68:"1228:i2ce-cre-414615b60c64f8b40806cc023a7d444cd3404b95-include_total";a:3:{i:0;R:21983;i:1;R:21162;i:2;R:21928;}s:85:"1228:i2ce-cre-569b437292b64fb87cd05e58f98c8749cf5ad36d-include_a_total_number_of_rows";a:3:{i:0;R:21983;i:1;R:21162;i:2;R:21928;}s:71:"1228:i2ce-cre-94ea8c4a55d905a3c347081ae40901a82db256bf-available_fields";a:3:{i:0;R:21983;i:1;R:21162;i:2;R:21928;}s:85:"1228:i2ce-cre-386e53136f37e178e13bcae393accf155eec2d8f-here_you_may_set_the_header_in";a:3:{i:0;R:21983;i:1;R:21162;i:2;R:21928;}s:81:"1228:i2ce-cre-9b7a28d162fb4b3c73ca476c52c1bf71c9c8e3a8-fields_displayed_in_report";a:3:{i:0;R:21983;i:1;R:21162;i:2;R:21928;}s:67:"1228:i2ce-cre-c7874aaa0fab4eeff4f2db2ec37d5f5a2dea859a-display_name";a:3:{i:0;R:21983;i:1;R:21162;i:2;R:21928;}s:85:"1228:i2ce-cre-5bd777d4f1c68afc25822c165593837c762e4c77-a_name_for_the_report_which_is";a:3:{i:0;R:21983;i:1;R:21162;i:2;R:21928;}s:63:"1228:i2ce-cre-a3c686e711e4720f99b4562bb3dbaae7ab658cf2-category";a:3:{i:0;R:21983;i:1;R:21162;i:2;R:21928;}s:81:"1228:i2ce-cre-4d3033c503baa308aea171d6f8c094c4b4ac06f9-a_category_for_this_report";a:3:{i:0;R:21983;i:1;R:21162;i:2;R:21928;}s:82:"1228:i2ce-cre-6f66cc6eb49b90a1fcac33cd6e06ab81983c0bf5-a_description_of_the_report";a:3:{i:0;R:21983;i:1;R:21162;i:2;R:21928;}s:66:"1228:i2ce-cre-f662ffd77cb6a8a4e0eefe88b86ef337e9bc749b-limit_style";a:3:{i:0;R:21983;i:1;R:21162;i:2;R:21928;}s:76:"1228:i2ce-cre-927f257c3d27e4fb2c98a8f6563eff81a0d8c54d-the_type_of_the_limit";a:3:{i:0;R:21983;i:1;R:21162;i:2;R:21928;}s:67:"1228:i2ce-cre-afae637b91c2aac679720064c24e210465e3b0c8-limit_header";a:3:{i:0;R:21983;i:1;R:21162;i:2;R:21928;}s:84:"1228:i2ce-cre-7b7b54d221c88af1803041b54d081dc186c5c808-the_description_of_this_limit";a:3:{i:0;R:21983;i:1;R:21162;i:2;R:21928;}s:71:"1228:i2ce-cre-dd1f89e21918c489ecc6555eb020f9712c87703a-editing_language";a:3:{i:0;R:21983;i:1;R:21162;i:2;R:21928;}s:74:"1228:i2ce-cre-20d3a5c7458ec085eb3726c3181b21b38453948e-create_a_new_report";a:3:{i:0;R:21983;i:1;R:21162;i:2;R:21928;}s:64:"1228:i2ce-cre-1d25542ce01b94f244a760babc6999dafb7c97bf-shortname";a:3:{i:0;R:21983;i:1;R:21162;i:2;R:21928;}s:85:"1228:i2ce-cre-20ef9d63550c244a64ce66eaf9d38fda6ac14238-a_unique_short_name_used_to_re";a:3:{i:0;R:21983;i:1;R:21162;i:2;R:21928;}s:74:"1228:i2ce-cre-7b2f364223dd658297cf8b2be4e528f84a7c9097-report_relationship";a:3:{i:0;R:21983;i:1;R:21162;i:2;R:21928;}s:85:"1228:i2ce-cre-7319c392cc5c2bcb7a2ad29de33a05826e7fd0d1-the_relationship_that_this_rep";a:3:{i:0;R:21983;i:1;R:21162;i:2;R:21928;}s:84:"1228:i2ce-cre-f77b0d2dcd8fdd2abbe98cf23d392bd4e08d11f2-the_catgegory_for_this_report";a:3:{i:0;R:21983;i:1;R:21162;i:2;R:21928;}s:83:"1228:i2ce-cre-f0693adc16da0d06986d32da02e500f660219993-a_description_of_this_report";a:3:{i:0;R:21983;i:1;R:21162;i:2;R:21928;}s:69:"1228:i2ce-cre-3432a92e0c143a37974ca104bfb8dad40eb614c8-report_details";a:3:{i:0;R:21983;i:1;R:21162;i:2;R:21928;}s:84:"1228:i2ce-cre-6d8337e03c98f62a913893357fa0226c69e0e6f9-choose_and_specify_fields_you";a:3:{i:0;R:21983;i:1;R:21162;i:2;R:21928;}s:76:"1228:i2ce-cre-a5fd638442c8765ab7fc0ba9dd8d7755c4d0dc9d-existing_report_views";a:3:{i:0;R:21983;i:1;R:21162;i:2;R:21928;}s:69:"1228:i2ce-cre-92d4a2d45656adb916804db1540343635da21fc9-add_a_new_view";a:3:{i:0;R:21983;i:1;R:21162;i:2;R:21928;}s:76:"1228:i2ce-cre-19e0a239d785f848dbb3fd55dc5da9d0bc0ed1cd-edit_existing_reports";a:3:{i:0;R:21983;i:1;R:21162;i:2;R:21928;}s:63:"1228:i2ce-cre-fc45f9b7a9a6e8b48f0e28821ec1981804dd1eb6-generate";a:3:{i:0;R:21983;i:1;R:21162;i:2;R:21928;}s:72:"1228:i2ce-cre-95aab4a2e83ff592404a501b6b8972ca194d6cf5-generate_(forced)";a:3:{i:0;R:21983;i:1;R:21162;i:2;R:21928;}s:58:"1228:i2ce-cre-93ef0dd827103681fcee453b78be2ff14e1a261d-the";a:3:{i:0;R:21983;i:1;R:21162;i:2;R:21928;}s:61:"1228:i2ce-cre-a27297bde9732f2e73fbc06db2611764e3ad9855-report";a:3:{i:0;R:21983;i:1;R:21162;i:2;R:21928;}s:85:"1228:i2ce-cre-41017272bf3fcd5e41bc7889b3cc290673fe6943-this_report_is_based_on_the_re";a:3:{i:0;R:21983;i:1;R:21162;i:2;R:21928;}s:73:"1228:i2ce-cre-a2739741c2762c496a926b37d0d4f254ab337b8f-report_information";a:3:{i:0;R:21983;i:1;R:21162;i:2;R:21928;}s:69:"1228:i2ce-cre-975cc7f4b77260bf7cac4c2cc41a25cd0fa126af-reported_forms";a:3:{i:0;R:21983;i:1;R:21162;i:2;R:21928;}s:73:"1228:i2ce-cre-353355ed3c3ba8ef9864a692a84b9f0b761ce2ec-reported_functions";a:3:{i:0;R:21983;i:1;R:21162;i:2;R:21928;}s:85:"1228:i2ce-cre-0b862301584fc00ada595cda6f825925e342c9fd-allows_minimal_access_to_the_c";a:3:{i:0;R:21983;i:1;R:21162;i:2;R:21928;}s:84:"1228:i2ce-cre-5980660c9256894ee85dff84d96b35d1ec9ba23d-allows_deletion_of_data_about";a:3:{i:0;R:21983;i:1;R:21162;i:2;R:21928;}s:85:"1228:i2ce-cre-012a6bc8694f16b1e7fb49e64424b90e9e40a0ea-allows_access_to_the_custom_re";a:3:{i:0;R:21983;i:1;R:21162;i:2;R:21928;}s:85:"1228:i2ce-cre-e8db6c98d60062ba7f9ff89d03691f2ccc4af5b2-allows_access_to_the_custom_re";a:3:{i:0;R:21983;i:1;R:21162;i:2;R:21928;}s:85:"1228:i2ce-cre-3a72abda14594d561a4db82779f45cfa7857390c-allows_view_of_the_custom_repo";a:3:{i:0;R:21983;i:1;R:21162;i:2;R:21928;}s:85:"1228:i2ce-cre-816e33cae1f25d968e9bf82b84670fda1fc43972-allows_editing_of_the_custom_r";a:3:{i:0;R:21983;i:1;R:21162;i:2;R:21928;}s:85:"1228:i2ce-cre-f8dcfd1c820c2c8d1a934d2df47c89509dced0a0-administator_for_custom_report";a:3:{i:0;R:21983;i:1;R:21162;i:2;R:21928;}s:69:"1228:i2ce-cre-0fa6595ff8af8a9eea6f37b1c15e6b5f6a8cfd6b-create_reports";a:3:{i:0;R:21983;i:1;R:21162;i:2;R:21928;}s:68:"1228:i2ce-cre-7a2e73d62caf4212ae267d511ae14c1c76086746-results_found";a:3:{i:0;R:21983;i:1;R:21162;i:2;R:21928;}s:85:"1228:i2ce-cre-d4ad83ccc09d3702976543d63281f0956e340d5a-error_no_data_was_found_that_m";a:3:{i:0;R:21983;i:1;R:21162;i:2;R:21928;}s:85:"1228:i2ce-cre-0013d9f3d3219b6a28e95716861222640b1150a8-allows_editing_of_the_custom_r";a:3:{i:0;R:21983;i:1;R:21162;i:2;R:21928;}s:85:"1228:i2ce-cre-8d35c3783e0cf66b52e28299bcaa0c75f1612d9d-allows_editing_of_the_custom_r";a:3:{i:0;R:21983;i:1;R:21162;i:2;R:21928;}s:75:"1228:i2ce-cre-d69da42d1c0edb4f50aa4d486b18cab4bf8e882f-edit_display_options";a:3:{i:0;R:21983;i:1;R:21162;i:2;R:21928;}s:76:"1228:i2ce-cre-2580eca07217f2f4c6f93906aa0d1326da69c84c-clear_default_display";a:3:{i:0;R:21983;i:1;R:21162;i:2;R:21928;}s:65:"1228:i2ce-cre-1cece2731e28fbe41d042b114d205acb6b616ec2-increasing";a:3:{i:0;R:21983;i:1;R:21162;i:2;R:21928;}s:65:"1228:i2ce-cre-1e367365e32a2e193ae5897a85a34d647ed0c389-decreasing";a:3:{i:0;R:21983;i:1;R:21162;i:2;R:21928;}s:85:"1228:i2ce-cre-21f4341596b4772b403e02733c8aa07329516b66-you_need_to_specify_a_report_t";a:3:{i:0;R:21983;i:1;R:21162;i:2;R:21928;}s:85:"1228:i2ce-cre-d4ea0342ff8b1c3a32cc8ff308813673555360c8-you_specified_an_invalid_repor";a:3:{i:0;R:21983;i:1;R:21162;i:2;R:21928;}s:84:"1228:i2ce-cre-350bdc7c0a6abefabf6c78163de6f7a640abd8ed-you_do_not_have_permission_to";a:3:{i:0;R:21983;i:1;R:21162;i:2;R:21928;}s:85:"1228:i2ce-cre-6f9539cc78926203d28fc1b29286c28d26066ad3-could_not_find_any_valid_displ";a:3:{i:0;R:21983;i:1;R:21162;i:2;R:21928;}s:68:"1228:i2ce-cre-1313d716f41b87e31d9df7f083e395275e172a7e-s_linked_on_s";a:3:{i:0;R:21983;i:1;R:21162;i:2;R:21928;}s:84:"1228:i2ce-cre-818e52009dfff33feed5f1077f4659022960dbd2-s_linked_on_s_as_a_parent_for";a:3:{i:0;R:21983;i:1;R:21162;i:2;R:21928;}s:84:"1228:i2ce-cre-f5d3e2d120980c923d3551ad6b3aa28085a81f3c-s_linked_on_s_as_a_child_form";a:3:{i:0;R:21983;i:1;R:21162;i:2;R:21928;}s:85:"1228:i2ce-cre-1953988c8ed8c262347286d5813a16366aae7c6e-no_shortname_specified_for_the";a:3:{i:0;R:21983;i:1;R:21162;i:2;R:21928;}s:85:"1228:i2ce-cre-6464168b4575a0be69f1ca80b92cbd5a936c5bfa-invalid_shortname_specified_fo";a:3:{i:0;R:21983;i:1;R:21162;i:2;R:21928;}s:85:"1228:i2ce-cre-ad124fd889acb02aaed7fae872802c21065d2027-shortname_specified_for_the_re";a:3:{i:0;R:21983;i:1;R:21162;i:2;R:21928;}s:85:"1228:i2ce-cre-6dd1d7a40ee2dc6e2eee5c5246f1c262574a04bb-no_report_relationship_specifi";a:3:{i:0;R:21983;i:1;R:21162;i:2;R:21928;}s:84:"1228:i2ce-cre-7b2e0b61fc1a844ee2b849332cbb3913fb6b4dfd-specified_report_relationship";a:3:{i:0;R:21983;i:1;R:21162;i:2;R:21928;}s:85:"1228:i2ce-cre-607a35b76e7f731eb9c443291a6561988da96152-you_don't_have_access_to_delet";a:3:{i:0;R:21983;i:1;R:21162;i:2;R:21928;}s:80:"1228:i2ce-cre-c78aff5bff55ff0f7818cc7a4e422d69c82bfded-invalid_path_for_deletion";a:3:{i:0;R:21983;i:1;R:21162;i:2;R:21928;}s:82:"1228:i2ce-cre-577413b76634a1d8402d4862b8a0fd4627183a5f-unable_to_setup_cached_form";a:3:{i:0;R:21983;i:1;R:21162;i:2;R:21928;}s:85:"1228:i2ce-cre-15257a5c37f7bae4299575bf77bea432ff108b49-could_not_save_display_options";a:3:{i:0;R:21983;i:1;R:21162;i:2;R:21928;}s:76:"1228:i2ce-cre-b1a2c5c6eb06de504c94439b7b85c705d468bb9f-saved_display_options";a:3:{i:0;R:21983;i:1;R:21162;i:2;R:21928;}s:80:"1228:i2ce-cre-d30d217428c930b06cfeeed6f3558ba5b57cd239-unable_to_generate_report";a:3:{i:0;R:21983;i:1;R:21162;i:2;R:21928;}s:85:"1228:i2ce-cre-d7d7f63f5c8ad2252bb7c40482de4dd8a71c777a-unable_to_succesfully_update_v";a:3:{i:0;R:21983;i:1;R:21162;i:2;R:21928;}s:81:"1228:i2ce-cre-2016ce91933319dfcc9bba8e05f852f1782e0a42-succesfully_updated_values";a:3:{i:0;R:21983;i:1;R:21162;i:2;R:21928;}s:69:"1228:i2ce-cre-9d0b033acb892fc4cc8549b9beb7685ef70eae57-does_not_exist";a:3:{i:0;R:21983;i:1;R:21162;i:2;R:21928;}s:60:"1228:i2ce-cre-189cc40c2206ee1b649acd5022b1604d4d7fcb1a-stale";a:3:{i:0;R:21983;i:1;R:21162;i:2;R:21928;}s:61:"1228:i2ce-cre-09fef5d8d9a3c86b2523fef60d512606e7fe0003-failed";a:3:{i:0;R:21983;i:1;R:21162;i:2;R:21928;}s:66:"1228:i2ce-cre-dba928f4ece84b8c361d19595284bfb3c79d03fe-in_progress";a:3:{i:0;R:21983;i:1;R:21162;i:2;R:21928;}s:64:"1228:i2ce-cre-8eefdd52ad2d9b9bb6ad00ddcd70e1821191b6cd-generated";a:3:{i:0;R:21983;i:1;R:21162;i:2;R:21928;}s:60:"1228:i2ce-cre-b25928c69902557b0ef0a628490a3a1768d7b82f-total";a:3:{i:0;R:21983;i:1;R:21162;i:2;R:21928;}s:68:"1228:i2ce-cre-c0cb913c7243a3a784481d1f709866f547575382-merge_options";a:3:{i:0;R:21983;i:1;R:21162;i:2;R:21928;}s:73:"1228:i2ce-cre-ce7ee42bca981e9519d53059b419ac08d2c21e81-merged_report_view";a:3:{i:0;R:21983;i:1;R:21162;i:2;R:21928;}s:84:"1228:i2ce-cre-5dd89d6b24a45b1fa4ef6521987c31ab572d6813-enable_pivoting_on_this_limit";a:3:{i:0;R:21983;i:1;R:21162;i:2;R:21928;}s:75:"1228:i2ce-cre-c3541be21385dc5bc2b06eb1c70116af395e0029-merge_another_report";a:3:{i:0;R:21983;i:1;R:21162;i:2;R:21928;}s:70:"1228:i2ce-cre-59c32ea68f481bb0b356d5664d514b7173d9c690-mergable_report";a:3:{i:0;R:21983;i:1;R:21162;i:2;R:21928;}s:69:"1228:i2ce-cre-f932164a3fce76c16d25f36b2364703fff5d1767-enable_merging";a:3:{i:0;R:21983;i:1;R:21162;i:2;R:21928;}s:69:"1228:i2ce-cre-6843ded667379af3c26bf6711109b747aff9dda7-merged_reports";a:3:{i:0;R:21983;i:1;R:21162;i:2;R:21928;}s:66:"1228:i2ce-cre-86134a9cad7a6556c81a8216a4249a32293009af-switch_to_s";a:3:{i:0;R:21983;i:1;R:21162;i:2;R:21928;}s:63:"1228:i2ce-cre-364169bc457a0d37086566e30e0e70cbad361c03-s_from_s";a:3:{i:0;R:21983;i:1;R:21162;i:2;R:21928;}s:68:"1228:i2ce-cre-f4a3e76da7c45badfbe7c6fd8b2c858163758285-not_generated";a:3:{i:0;R:21983;i:1;R:21162;i:2;R:21928;}s:76:"1228:i2ce-cre-68f6d8d842cfe91d11c9039df2e351e4aa623773-allow_blank_rows_in_s";a:3:{i:0;R:21983;i:1;R:21162;i:2;R:21928;}s:85:"1228:i2ce-cre-bbd37172b5c25d299c1cb13da2eed1c17316d3fc-select_additional_values_to_ma";a:3:{i:0;R:21983;i:1;R:21162;i:2;R:21928;}s:75:"1228:i2ce-cre-2e6464b432280d7ab4174a5dcd46ace82df30bbb-no_additional_values";a:3:{i:0;R:21983;i:1;R:21162;i:2;R:21928;}s:74:"1228:i2ce-cre-e253ef53b884a226a71408996acb70d8e2f60867-available_functions";a:3:{i:0;R:21983;i:1;R:21162;i:2;R:21928;}s:85:"1228:i2ce-cre-c9738122f2987915250747ff34cebeee4873c195-the_relationship_has_no_availa";a:3:{i:0;R:21983;i:1;R:21162;i:2;R:21928;}s:73:"1228:i2ce-cre-8ef32864e2c19fc96c015db52bb168fd7231a5e9-results_limited_by";a:3:{i:0;R:21983;i:1;R:21162;i:2;R:21928;}s:67:"1228:i2ce-cre-d3cb4173935cc8ae53f5b3150d33889f9eddbaee-apply_limits";a:3:{i:0;R:21983;i:1;R:21162;i:2;R:21928;}s:60:"1228:i2ce-cre-0424f6e7026fa4bc2c4a7043083417315113c79b-table";a:3:{i:0;R:21983;i:1;R:21162;i:2;R:21928;}s:63:"1228:i2ce-cre-08738f6eef34333c426e9fb2c58d5a55999d681f-link_url";a:3:{i:0;R:21983;i:1;R:21162;i:2;R:21928;}s:82:"1228:i2ce-cre-3f583721448a0634361b92227e7fb05fca24b1f4-the_(base)_url_for_the_link";a:3:{i:0;R:21983;i:1;R:21162;i:2;R:21928;}s:78:"1228:i2ce-cre-ee0b54c1208a9fafe37655e1b5fd9bdd6e9109d5-report_view_permissions";a:3:{i:0;R:21983;i:1;R:21162;i:2;R:21928;}s:85:"1228:i2ce-cre-08a41819b03eea771d528c58cfa0a26f017cab0b-select_a_task_to_limit_the_vie";a:3:{i:0;R:21983;i:1;R:21162;i:2;R:21928;}s:85:"1228:i2ce-cre-2c491b6f71a58cdad2b80b3471a477c5750244cd-do_not_limit_viewing_of_this_r";a:3:{i:0;R:21983;i:1;R:21162;i:2;R:21928;}s:64:"1228:i2ce-cre-d453fce881fa6fd70f093c9b2b1fea7e4819ae6f-link_type";a:3:{i:0;R:21983;i:1;R:21162;i:2;R:21928;}s:76:"1228:i2ce-cre-5c7ac07b164f07a2fd2196354b82b7c028aa49f4-the_type_of_the_link.";a:3:{i:0;R:21983;i:1;R:21162;i:2;R:21928;}s:68:"1228:i2ce-cre-ebb8b3dbd66dea44c585d90f7c7adfbb0d98d0c7-link_(a_href)";a:3:{i:0;R:21983;i:1;R:21162;i:2;R:21928;}s:70:"1228:i2ce-crex-c49a821a7351e65fdf20080503c7591def60de59-export_options";a:3:{i:0;s:19:"out-ihris-i2ce-crex";i:1;R:21162;i:2;R:21928;}s:65:"1228:i2ce-crex-5023c8994cbd6d607dd19f9f86a12610ec0c2baa-file_type";a:3:{i:0;R:22137;i:1;R:21162;i:2;R:21928;}s:78:"1228:i2ce-crex-e04b282c057e9f66535e3bd6580b6d9b0f1a5df3-comma_seperated_values";a:3:{i:0;R:22137;i:1;R:21162;i:2;R:21928;}s:69:"1228:i2ce-crex-11b5dafbe1dba2844f8e8200a44b94f5fff59c4b-tab_delimited";a:3:{i:0;R:22137;i:1;R:21162;i:2;R:21928;}s:60:"1228:i2ce-crex-9f738ce8457f291b18ee47e665e96baa84f38fcd-html";a:3:{i:0;R:22137;i:1;R:21162;i:2;R:21928;}s:59:"1228:i2ce-crex-c0aa9ef764d832b80428d756a731a94251b0e3a1-xml";a:3:{i:0;R:22137;i:1;R:21162;i:2;R:21928;}s:61:"1228:i2ce-crex-bbfa773e5a63a5ea58c9b6207e608ca0120e592a-close";a:3:{i:0;R:22137;i:1;R:21162;i:2;R:21928;}s:69:"1228:i2ce-crex-13fedf3c41aa13f5b16451583d909f85f6bb8259-the_transform";a:3:{i:0;R:22137;i:1;R:21162;i:2;R:21928;}s:65:"1228:i2ce-crex-b802d582e1d9d3eba001dde5cd6a5df2f0585dfa-defintion";a:3:{i:0;R:22137;i:1;R:21162;i:2;R:21928;}s:62:"1228:i2ce-crex-8bdf057f91e76ae328b2a21d35f682daa08a0ec0-upload";a:3:{i:0;R:22137;i:1;R:21162;i:2;R:21928;}s:79:"1228:i2ce-crex-2bfa6912daf463f025fd34e516718d562518453a-existing_xsl_transforms";a:3:{i:0;R:22137;i:1;R:21162;i:2;R:21928;}s:70:"1228:i2ce-crex-68172c5476ee8b4d9703dd8934cc736361bb8a8f-add_a_new_xslt";a:3:{i:0;R:22137;i:1;R:21162;i:2;R:21928;}s:70:"1228:i2ce-crex-f918c7a5e1b1775f28e348038c431043f5bf735f-add_a_new_xslt";a:3:{i:0;R:22137;i:1;R:21162;i:2;R:21928;}s:60:"1228:i2ce-crex-709a23220f2c3d64d1e1d6d18c4d5280f8d82fca-name";a:3:{i:0;R:22137;i:1;R:21162;i:2;R:21928;}s:86:"1228:i2ce-crex-2b4fa39d2019349a12b71129ee486412ca940719-a_short_name_describing_this_t";a:3:{i:0;R:22137;i:1;R:21162;i:2;R:21928;}s:75:"1228:i2ce-crex-a75275b8c0e39e9be70584512e19d79d43fdd8d6-compression_options";a:3:{i:0;R:22137;i:1;R:21162;i:2;R:21928;}s:70:"1228:i2ce-crex-254373288720d094f49974f500fa7f71a597c973-no_compression";a:3:{i:0;R:22137;i:1;R:21162;i:2;R:21928;}s:64:"1228:i2ce-crex-fcaf57ad6940a3b6dd580f4888feba35d08ed3ae-zip_file";a:3:{i:0;R:22137;i:1;R:21162;i:2;R:21928;}s:82:"1228:i2ce-crex-3fe12cb759bf9931505b638a22cb874d22a26ecc-options_for_export_display";a:3:{i:0;R:22137;i:1;R:21162;i:2;R:21928;}s:70:"1228:i2ce-crex-852180f4c4d22c702c12663f172030f5f6b09e49-xsl_transforms";a:3:{i:0;R:22137;i:1;R:21162;i:2;R:21928;}s:60:"1228:i2ce-crex-ca546e369beecaae3968c126fccb8b5415e4ae84-gzip";a:3:{i:0;R:22137;i:1;R:21162;i:2;R:21928;}s:61:"1228:i2ce-crex-18966dcea477ed087e87037c4255cd180be7d19e-bzip2";a:3:{i:0;R:22137;i:1;R:21162;i:2;R:21928;}s:62:"1228:i2ce-crex-f3e4fadb9e370a1e2c0c622c01fc8c77daf93a2c-export";a:3:{i:0;R:22137;i:1;R:21162;i:2;R:21928;}s:60:"1228:i2ce-crex-5301648dcf6b53cefc9ed52999aaa92d4603cae0-edit";a:3:{i:0;R:22137;i:1;R:21162;i:2;R:21928;}s:62:"1228:i2ce-crex-f6fdbe48dc54dd86f63097a03bd24094dedd713a-delete";a:3:{i:0;R:22137;i:1;R:21162;i:2;R:21928;}s:68:"1228:i2ce-crp-183a70db44af297cd677cd5deb5de451e686a7cd-print_options";a:3:{i:0;s:18:"out-ihris-i2ce-crp";i:1;R:21162;i:2;R:21928;}s:65:"1228:i2ce-crp-6040c4cd4d0d62a0d2dd7d782e306f39c0e19b0e-paper_size";a:3:{i:0;R:22163;i:1;R:21162;i:2;R:21928;}s:58:"1228:i2ce-crp-130c2a7662008c8ba1414735af3089c6a6866223-ra0";a:3:{i:0;R:22163;i:1;R:21162;i:2;R:21928;}s:58:"1228:i2ce-crp-73840d2c740bf270ba204eb59596cd9ebaf726f0-ra1";a:3:{i:0;R:22163;i:1;R:21162;i:2;R:21928;}s:58:"1228:i2ce-crp-1776bcb6d5ca102fa28b32d715d72687457d1183-ra2";a:3:{i:0;R:22163;i:1;R:21162;i:2;R:21928;}s:58:"1228:i2ce-crp-c1d4376773d675a1f7fb89f061b712a0349a1cd4-ra3";a:3:{i:0;R:22163;i:1;R:21162;i:2;R:21928;}s:58:"1228:i2ce-crp-4dfeb336f68b693e58e278bd2bec646ee4c30f43-ra4";a:3:{i:0;R:22163;i:1;R:21162;i:2;R:21928;}s:59:"1228:i2ce-crp-acd3ea53958ef0afea007c680eb9c41235be47a6-sra0";a:3:{i:0;R:22163;i:1;R:21162;i:2;R:21928;}s:59:"1228:i2ce-crp-791f62c0622eda68eb6466ec5ae6874caf4576a4-sra1";a:3:{i:0;R:22163;i:1;R:21162;i:2;R:21928;}s:59:"1228:i2ce-crp-d41aa07a6e9d37a1da4c020064716faacca02aea-sra2";a:3:{i:0;R:22163;i:1;R:21162;i:2;R:21928;}s:59:"1228:i2ce-crp-407e809d751ef4d88a190b55e48cdb993ee0b911-sra3";a:3:{i:0;R:22163;i:1;R:21162;i:2;R:21928;}s:59:"1228:i2ce-crp-6576b79a7c19da141b4fa1bffa235bb8e4a223f5-sra4";a:3:{i:0;R:22163;i:1;R:21162;i:2;R:21928;}s:61:"1228:i2ce-crp-6dda1789175ad4a629a834a42bb241e9fd8d5efb-letter";a:3:{i:0;R:22163;i:1;R:21162;i:2;R:21928;}s:60:"1228:i2ce-crp-59b5243ddf8b07c1d3fd29da06d3cc7ba653a297-legal";a:3:{i:0;R:22163;i:1;R:21162;i:2;R:21928;}s:64:"1228:i2ce-crp-1731ffba0ee4baab452bcabda551595bf603c3b5-executive";a:3:{i:0;R:22163;i:1;R:21162;i:2;R:21928;}s:60:"1228:i2ce-crp-b1ae7ee1f1de06d989580554f37f1999c28dca73-folio";a:3:{i:0;R:22163;i:1;R:21162;i:2;R:21928;}s:66:"1228:i2ce-crp-86e4e3875420cdee95d08d4472073493729a7aee-orientation";a:3:{i:0;R:22163;i:1;R:21162;i:2;R:21928;}s:63:"1228:i2ce-crp-92b6b1bf71e0c08079e7114003e05a76e0786041-portrait";a:3:{i:0;R:22163;i:1;R:21162;i:2;R:21928;}s:64:"1228:i2ce-crp-7dc4bea618538c0ad8976b06daa36d5876b89629-landscape";a:3:{i:0;R:22163;i:1;R:21162;i:2;R:21928;}s:60:"1228:i2ce-crp-bbfa773e5a63a5ea58c9b6207e608ca0120e592a-close";a:3:{i:0;R:22163;i:1;R:21162;i:2;R:21928;}s:85:"1228:i2ce-crp-58e243351d88f3994ce7e78666dec3f8aff6b5a3-this_will_create_a_pdf_based_o";a:3:{i:0;R:22163;i:1;R:21162;i:2;R:21928;}s:60:"1228:i2ce-crp-5b221e9c2a451799d8f37e2b9874409d5e03ab05-print";a:3:{i:0;R:22163;i:1;R:21162;i:2;R:21928;}s:69:"1228:i2ce-crpc-e31bbdf0966aded931503d11df00199c663ec931-chart_options";a:3:{i:0;s:19:"out-ihris-i2ce-crpc";i:1;R:21162;i:2;R:21928;}s:67:"1228:i2ce-crpc-c57a7b321de39b2bc836c009cf7a55dc7f5d5b45-chart_style";a:3:{i:0;R:22186;i:1;R:21162;i:2;R:21928;}s:79:"1228:i2ce-crpc-6010b10d8d071285027b0ceacafc4510a4017dcf-choose_the_chart_style.";a:3:{i:0;R:22186;i:1;R:21162;i:2;R:21928;}s:72:"1228:i2ce-crpc-c1d5c831d66cb8993d64db803d668ba0f0c68ffe-displayed_fields";a:3:{i:0;R:22186;i:1;R:21162;i:2;R:21928;}s:86:"1228:i2ce-crpc-14011f94ecbfc5c86530786d5ca037ac1696374b-choose_the_way_you_wish_to_sel";a:3:{i:0;R:22186;i:1;R:21162;i:2;R:21928;}s:74:"1228:i2ce-crpc-7103a796c6fb5b25f6552d0f0daf72da53f4ef76-one_field_--_total";a:3:{i:0;R:22186;i:1;R:21162;i:2;R:21928;}s:73:"1228:i2ce-crpc-bcfcd9e3d64c6c6af0755ab90d39ca426250d651-one_field_(total)";a:3:{i:0;R:22186;i:1;R:21162;i:2;R:21928;}s:86:"1228:i2ce-crpc-344f5295219f92101f908aa123bd4db9197a1ff3-displays_one_field_with_the_to";a:3:{i:0;R:22186;i:1;R:21162;i:2;R:21928;}s:67:"1228:i2ce-crpc-a25e71892063d65a033f3c33dcca775bbfdb92f4-first_field";a:3:{i:0;R:22186;i:1;R:21162;i:2;R:21928;}s:86:"1228:i2ce-crpc-62a8c80110c72d1fa8ed31a252e8ac4a47aeba7d-two_fields_--_total_on_the_sec";a:3:{i:0;R:22186;i:1;R:21162;i:2;R:21928;}s:86:"1228:i2ce-crpc-a931c970a76ae84819b5f2ee2451d1625797ca1d-displays_two_fields_with_the_t";a:3:{i:0;R:22186;i:1;R:21162;i:2;R:21928;}s:84:"1228:i2ce-crpc-8e66c2589900f862c7cef5c79459537d29c2d522-two_fields_(total_on_second)";a:3:{i:0;R:22186;i:1;R:21162;i:2;R:21928;}s:68:"1228:i2ce-crpc-fc35fb6940f4893cbb538c987a1140a41fcba3eb-second_field";a:3:{i:0;R:22186;i:1;R:21162;i:2;R:21928;}s:74:"1228:i2ce-crpc-8745be426e624f1f50158c6d06525934f0af3d16-second_field_total";a:3:{i:0;R:22186;i:1;R:21162;i:2;R:21928;}s:68:"1228:i2ce-crpc-0f98e7342ffa74c035c3878dfc6122dfacb4373f-total_number";a:3:{i:0;R:22186;i:1;R:21162;i:2;R:21928;}s:70:"1228:i2ce-crpc-d8969273940b1cf778a3fb45a2b043714eeb2dd2-total_distinct";a:3:{i:0;R:22186;i:1;R:21162;i:2;R:21928;}s:86:"1228:i2ce-crpc-71366719b10a589efcf545ffed627903ffb15d33-two_fields_--_second_one_is_nu";a:3:{i:0;R:22186;i:1;R:21162;i:2;R:21928;}s:85:"1228:i2ce-crpc-8b932da4a72c55e53a4f76f0026bb898061f9050-displays_two_fields_one_which";a:3:{i:0;R:22186;i:1;R:21162;i:2;R:21928;}s:76:"1228:i2ce-crpc-cc12178d64141adb516a52aa40332bd22ca3676f-two_fields_(numeric)";a:3:{i:0;R:22186;i:1;R:21162;i:2;R:21928;}s:80:"1228:i2ce-crpc-702949d2df568e300e332cabf7ee0605f677cb31-second_field_aggregation";a:3:{i:0;R:22186;i:1;R:21162;i:2;R:21928;}s:60:"1228:i2ce-crpc-6eef6648406c333a4035cd5e60d0bf2ecf2606d7-none";a:3:{i:0;R:22186;i:1;R:21162;i:2;R:21928;}s:59:"1228:i2ce-crpc-fc9ce14b28c6f2c3b72caf056ca604b2b96f7d2b-sum";a:3:{i:0;R:22186;i:1;R:21162;i:2;R:21928;}s:63:"1228:i2ce-crpc-a8df2fec28d8948a0326722029c7492b88ee4fbe-maximum";a:3:{i:0;R:22186;i:1;R:21162;i:2;R:21928;}s:63:"1228:i2ce-crpc-5d398eef3ecc3ea6a161734581d0bd3d920b64d8-minimum";a:3:{i:0;R:22186;i:1;R:21162;i:2;R:21928;}s:63:"1228:i2ce-crpc-15f86c051ecf0b64e5f8cdc8c689552f42595942-average";a:3:{i:0;R:22186;i:1;R:21162;i:2;R:21928;}s:75:"1228:i2ce-crpc-12c09ca2b8e547b8990870019de24b39d539cc4f-total_on_two_fields";a:3:{i:0;R:22186;i:1;R:21162;i:2;R:21928;}s:86:"1228:i2ce-crpc-70ee104d78fbebcb0f0fe6f542b9cf39e4d1c054-displays_the_total_for_two_fie";a:3:{i:0;R:22186;i:1;R:21162;i:2;R:21928;}s:74:"1228:i2ce-crpc-aacb1b8c8e68787837f665238e7b4afdb5b282c7-two_fields_(total)";a:3:{i:0;R:22186;i:1;R:21162;i:2;R:21928;}s:86:"1228:i2ce-crpc-263d226960e0a07098be492df72cf201c3fa15c0-three_fields_--_total_on_the_t";a:3:{i:0;R:22186;i:1;R:21162;i:2;R:21928;}s:85:"1228:i2ce-crpc-f8fe3880dd7a9e517e37c8b2314ff9b6fe4e15b2-three_fields_(total_on_third)";a:3:{i:0;R:22186;i:1;R:21162;i:2;R:21928;}s:67:"1228:i2ce-crpc-a85d8647a986fc0f59cb426cbc7bb9f92689bb9f-third_field";a:3:{i:0;R:22186;i:1;R:21162;i:2;R:21928;}s:79:"1228:i2ce-crpc-d37b4d901b7db18b3285456c2288c0f42a7f1568-third_field_aggregation";a:3:{i:0;R:22186;i:1;R:21162;i:2;R:21928;}s:86:"1228:i2ce-crpc-9b23788398b4da16625b34a5c13dae45390a53d8-three_fields_--_third_one_is_n";a:3:{i:0;R:22186;i:1;R:21162;i:2;R:21928;}s:86:"1228:i2ce-crpc-96004da5ca8759ac9bdbdadfdd16c68681fa1ca3-displays_three_fields_one_of_w";a:3:{i:0;R:22186;i:1;R:21162;i:2;R:21928;}s:78:"1228:i2ce-crpc-2d234ffb73664bb1254a3cc04a545754fb99112c-three_fields_(numeric)";a:3:{i:0;R:22186;i:1;R:21162;i:2;R:21928;}s:61:"1228:i2ce-crpc-bbfa773e5a63a5ea58c9b6207e608ca0120e592a-close";a:3:{i:0;R:22186;i:1;R:21162;i:2;R:21928;}s:86:"1228:i2ce-crpc-8120920cde999ff32d42820229b9d2422b34b7f0-choose_options_to_limit_result";a:3:{i:0;R:22186;i:1;R:21162;i:2;R:21928;}s:76:"1228:i2ce-crpc-843869d609b6631f5b1245ae9903201ddbd7f020-save_as_default_view";a:3:{i:0;R:22186;i:1;R:21162;i:2;R:21928;}s:69:"1228:i2ce-crpc-cabfa4882af0b513952cec113216fcf97fc66d56-related_views";a:3:{i:0;R:22186;i:1;R:21162;i:2;R:21928;}s:73:"1228:i2ce-crpc-20bb9035383e74e075bb44942d26f1935c4a3be4-pie_chart(simple)";a:3:{i:0;R:22186;i:1;R:21162;i:2;R:21928;}s:73:"1228:i2ce-crpc-6140f3732445fe6030b3cc911dc51ff9bb979bdf-bar_chart(simple)";a:3:{i:0;R:22186;i:1;R:21162;i:2;R:21928;}s:76:"1228:i2ce-crpc-01646a443a3fde1b6a38012541aac89af595b0d8-column_chart(simple)";a:3:{i:0;R:22186;i:1;R:21162;i:2;R:21928;}s:84:"1228:i2ce-crpc-3910a0af1c40f4a8bb7d64e20295709660752fda-stacked_column_chart(simple)";a:3:{i:0;R:22186;i:1;R:21162;i:2;R:21928;}s:68:"1228:i2ce-crpc-63920248e4b1abddb609813526a48cf4a8e4931a-scatter_plot";a:3:{i:0;R:22186;i:1;R:21162;i:2;R:21928;}s:86:"1228:i2ce-crpc-f898d1727be86e945508013078a8ebf31fe65e2b-no_data_has_been_found_for_thi";a:3:{i:0;R:22186;i:1;R:21162;i:2;R:21928;}s:61:"1228:i2ce-crpc-66c7734789e19cbeef3a5ac185ea732139aed213-chart";a:3:{i:0;R:22186;i:1;R:21162;i:2;R:21928;}s:74:"1228:i2ce-crpc-8ef32864e2c19fc96c015db52bb168fd7231a5e9-results_limited_by";a:3:{i:0;R:22186;i:1;R:21162;i:2;R:21928;}s:68:"1228:i2ce-crpc-d3cb4173935cc8ae53f5b3150d33889f9eddbaee-apply_limits";a:3:{i:0;R:22186;i:1;R:21162;i:2;R:21928;}s:60:"1228:i2ce-crs-bbfa773e5a63a5ea58c9b6207e608ca0120e592a-close";a:3:{i:0;s:18:"out-ihris-i2ce-crs";i:1;R:21162;i:2;R:21928;}s:69:"1228:i2ce-crs-95890095aab4ef67c0b5c4f4942bfa38f603881c-select_a_value";a:3:{i:0;R:22235;i:1;R:21162;i:2;R:21928;}s:85:"1228:i2ce-crs-0d91c660e83234cd2c7f6aeed4744de0b5a7d336-please_wait_while_we_get_retri";a:3:{i:0;R:22235;i:1;R:21162;i:2;R:21928;}s:73:"1228:i2ce-crs-8ef32864e2c19fc96c015db52bb168fd7231a5e9-results_limited_by";a:3:{i:0;R:22235;i:1;R:21162;i:2;R:21928;}s:85:"1228:i2ce-crs-8120920cde999ff32d42820229b9d2422b34b7f0-choose_options_to_limit_result";a:3:{i:0;R:22235;i:1;R:21162;i:2;R:21928;}s:67:"1228:i2ce-crs-600a6adec9583f1188db8cbf2fb1641abf819ea4-select_value";a:3:{i:0;R:22235;i:1;R:21162;i:2;R:21928;}s:68:"1228:i2ce-crs-d7160a7df753ae718015080accdbbfe10b071f7a-limit_results";a:3:{i:0;R:22235;i:1;R:21162;i:2;R:21928;}s:60:"1228:i2ce-crs-719ea396ad92e01b4757ec2b93bb1e5f270f771d-clear";a:3:{i:0;R:22235;i:1;R:21162;i:2;R:21928;}s:58:"1228:i2ce-fbr-93ef0dd827103681fcee453b78be2ff14e1a261d-the";a:3:{i:0;s:18:"out-ihris-i2ce-fbr";i:1;R:21162;i:2;R:21928;}s:59:"1228:i2ce-fbr-d00b39815c187d832cef3239eb7a77580728dc47-form";a:3:{i:0;R:22244;i:1;R:21162;i:2;R:21928;}s:65:"1228:i2ce-fbr-47c9e7e340b260a424761b8266d961dde825cee8-the_form_'";a:3:{i:0;R:22244;i:1;R:21162;i:2;R:21928;}s:84:"1228:i2ce-fbr-c4a45f645b36dfed9ed571443d750cdae78fe565-'_is_provided_via_the_class_'";a:3:{i:0;R:22244;i:1;R:21162;i:2;R:21928;}s:85:"1228:i2ce-fbr-1427b539d224ac721de1c4a237897838639777a1-warning_there_is_no_class_regi";a:3:{i:0;R:22244;i:1;R:21162;i:2;R:21928;}s:78:"1228:i2ce-fbr-f4150ab7423e91171aba4925750baea735923bd3-select_a_record_to_view";a:3:{i:0;R:22244;i:1;R:21162;i:2;R:21928;}s:59:"1228:i2ce-fbr-6eef6648406c333a4035cd5e60d0bf2ecf2606d7-none";a:3:{i:0;R:22244;i:1;R:21162;i:2;R:21928;}s:82:"1228:i2ce-fbr-7da8e46fe42884454279221767a4753c45822724-select_a_child_form_to_view";a:3:{i:0;R:22244;i:1;R:21162;i:2;R:21928;}s:77:"1228:i2ce-fbr-69ef511a249deb0ae8ccad8582f7116d1be97337-view_the_parent_form_(";a:3:{i:0;R:22244;i:1;R:21162;i:2;R:21928;}s:66:"1228:i2ce-fbr-1e60e0dfbbd75922b1e4474fb0b9b38f6430b7a4-view_parent";a:3:{i:0;R:22244;i:1;R:21162;i:2;R:21928;}s:71:"1228:i2ce-fbr-3eea8c4d9d39fa5cad85e25e2616484fb3e1a9fd-save_this_form_(";a:3:{i:0;R:22244;i:1;R:21162;i:2;R:21928;}s:71:"1228:i2ce-fbr-1a3a66e6ee31c8311ea652d60447d04be1b5afc9-edit_this_form_(";a:3:{i:0;R:22244;i:1;R:21162;i:2;R:21928;}s:64:"1228:i2ce-fbr-946da718c17f89998363bde4a559307ce01c4612-edit_form";a:3:{i:0;R:22244;i:1;R:21162;i:2;R:21928;}s:70:"1228:i2ce-fbr-c63c6aad86ab0962b68dd818d0a3efcb0cf73e81-available_forms";a:3:{i:0;R:22244;i:1;R:21162;i:2;R:21928;}s:76:"1228:i2ce-fbr-0aab94ce817861a5ad5dca1de70f05db57c1873b-can_view_form_browser";a:3:{i:0;R:22244;i:1;R:21162;i:2;R:21928;}s:67:"1228:i2ce-fbr-f85a559c0f2296bd20b54c8ded8732725d4a8b3e-form_browser";a:3:{i:0;R:22244;i:1;R:21162;i:2;R:21928;}s:64:"1228:i2ce-fbr-17716101beb6f857c8131336e8656004bf8df580-the_field";a:3:{i:0;R:22244;i:1;R:21162;i:2;R:21928;}s:76:"1228:i2ce-fbr-f6a41aae222b526c68b2e23424555cc48c10c0e7-is_registered_as_type";a:3:{i:0;R:22244;i:1;R:21162;i:2;R:21928;}s:75:"1228:i2ce-fbr-7f5dff5efb0d19de2d8f0da4571e4b9a211f3009-which_is_provided_by";a:3:{i:0;R:22244;i:1;R:21162;i:2;R:21928;}s:74:"1228:i2ce-fbr-d9a94b722f687f039202de3d146e1c749200f73f-warning_the_field_'";a:3:{i:0;R:22244;i:1;R:21162;i:2;R:21928;}s:85:"1228:i2ce-fbr-8d2742b784c5fc09d9c8fbb7d8db2f374890d414-'_is_not_associated_with_any_c";a:3:{i:0;R:22244;i:1;R:21162;i:2;R:21928;}s:78:"1228:i2ce-fbr-442f72d4b699dec92b74978d617a5924a05ac91f-'_has_no_registed_type.";a:3:{i:0;R:22244;i:1;R:21162;i:2;R:21928;}s:71:"1228:i2ce-fbr-6f6203fb3225e5431b1cad8c3f8270cce5c89cb5-the_field_has_id";a:3:{i:0;R:22244;i:1;R:21162;i:2;R:21928;}s:83:"1228:i2ce-fbr-bdd2b2893c0eaa6b50b1f52072dc46afbeccbde4-this_field_links_to_the_form";a:3:{i:0;R:22244;i:1;R:21162;i:2;R:21928;}s:64:"1228:i2ce-fdu-bb11230537fc42e4a11bd48fdc16cdb0d37c4cf5-form_dump";a:3:{i:0;s:18:"out-ihris-i2ce-fdu";i:1;R:21162;i:2;R:21928;}s:85:"1228:i2ce-fli-7c588d3698618965cc22913283700860283ee178-limit_this_field_to_be_between";a:3:{i:0;s:18:"out-ihris-i2ce-fli";i:1;R:21162;i:2;R:21928;}s:85:"1228:i2ce-fli-b7ddc535094106bf61030d09c895af3a5e1f4caa-limit_this_field_to_contain_(c";a:3:{i:0;R:22271;i:1;R:21162;i:2;R:21928;}s:84:"1228:i2ce-fli-1be18f262c0495b167fddeb341d95de695a163d3-limit_this_field_to_be_yes_or";a:3:{i:0;R:22271;i:1;R:21162;i:2;R:21928;}s:67:"1228:i2ce-fli-600a6adec9583f1188db8cbf2fb1641abf819ea4-select_value";a:3:{i:0;R:22271;i:1;R:21162;i:2;R:21928;}s:57:"1228:i2ce-fli-816c52fd2bdd94a63cd0944823a6c0aa9384c103-no";a:3:{i:0;R:22271;i:1;R:21162;i:2;R:21928;}s:58:"1228:i2ce-fli-5397e0583f14f6c88de06b1ef28f460a1fb5b0ae-yes";a:3:{i:0;R:22271;i:1;R:21162;i:2;R:21928;}s:85:"1228:i2ce-fli-54fd12cf594cd2554d55d102aa0fdbcd9634bfcd-limit_this_field_to_be_greathe";a:3:{i:0;R:22271;i:1;R:21162;i:2;R:21928;}s:85:"1228:i2ce-fli-0c7afa39bbe84eae0887de7c0a2300b852fb4721-limit_this_field_to_be_not_nul";a:3:{i:0;R:22271;i:1;R:21162;i:2;R:21928;}s:85:"1228:i2ce-fli-cb4eb282f64a018fb52fab6274e7148c4c142fbd-limit_this_field_to_be_less_th";a:3:{i:0;R:22271;i:1;R:21162;i:2;R:21928;}s:85:"1228:i2ce-fli-213f4dc1a906f60fff49fe3a7d86c15a4f868b9a-limit_this_field_to_be_like_(c";a:3:{i:0;R:22271;i:1;R:21162;i:2;R:21928;}s:85:"1228:i2ce-fli-38eff95fe1f3f7d5f40ce934912557d66fc0bc35-limit_this_field_to_be_true_or";a:3:{i:0;R:22271;i:1;R:21162;i:2;R:21928;}s:59:"1228:i2ce-fli-88b33e4e12f75ac8bf792aebde41f1a090f3a612-true";a:3:{i:0;R:22271;i:1;R:21162;i:2;R:21928;}s:60:"1228:i2ce-fli-97cdbdc7feff827efb082a6b6dd2727237cd49fd-false";a:3:{i:0;R:22271;i:1;R:21162;i:2;R:21928;}s:85:"1228:i2ce-fli-f19b9e092c97e2b01ee5309a46eabbe1869de76d-limit_this_field_to_be_equal_t";a:3:{i:0;R:22271;i:1;R:21162;i:2;R:21928;}s:85:"1228:i2ce-fli-2a946e9363013d32f6c94fcc19b82138d2a3fe36-limit_this_field_to_be_the_min";a:3:{i:0;R:22271;i:1;R:21162;i:2;R:21928;}s:85:"1228:i2ce-fli-6ef4210ed6a4b81dd73aaa5f46cc8cd0d3a2bcec-limit_this_field_to_be_like_(c";a:3:{i:0;R:22271;i:1;R:21162;i:2;R:21928;}s:85:"1228:i2ce-fli-92e81c793b846af16252e0138f18d7c8a42a218e-limit_this_field_to_be_equal_t";a:3:{i:0;R:22271;i:1;R:21162;i:2;R:21928;}s:85:"1228:i2ce-fli-5f8e2ba603b597162215c340c7efe2936a90c302-limit_this_field_to_be_null_or";a:3:{i:0;R:22271;i:1;R:21162;i:2;R:21928;}s:81:"1228:i2ce-fli-d9bf6fb4946f54e878d736920f2473d7664fdb83-limit_this_field_to_be_no.";a:3:{i:0;R:22271;i:1;R:21162;i:2;R:21928;}s:85:"1228:i2ce-fli-e5ab6259c9f91657920e6aeb6d4eb9892e7d0f6a-limit_this_field_to_be_the_min";a:3:{i:0;R:22271;i:1;R:21162;i:2;R:21928;}s:85:"1228:i2ce-fli-233432703dd2976dcdc2d18916229510e77fdaf9-limit_this_field_to_be_greater";a:3:{i:0;R:22271;i:1;R:21162;i:2;R:21928;}s:83:"1228:i2ce-fli-51db5fb9c2c39069381f076077843d2bce7c255a-limit_this_field_to_be_true.";a:3:{i:0;R:22271;i:1;R:21162;i:2;R:21928;}s:85:"1228:i2ce-fli-0d68f5e909fd0aeaf8e883868345aed08ffe4133-limit_this_field_to_be_equal_t";a:3:{i:0;R:22271;i:1;R:21162;i:2;R:21928;}s:85:"1228:i2ce-fli-8e3425058038b9b76cfdbe57b5ad922f0220309a-limit_this_field_to_be_the_max";a:3:{i:0;R:22271;i:1;R:21162;i:2;R:21928;}s:85:"1228:i2ce-fli-f184a0568d6510c4d621fea84d90fe91a013ec92-limit_this_field_to_be_greater";a:3:{i:0;R:22271;i:1;R:21162;i:2;R:21928;}s:84:"1228:i2ce-fli-9a4c2e38947ac611507ea54c7a86a5fe5d92e28c-limit_this_field_to_be_one_of";a:3:{i:0;R:22271;i:1;R:21162;i:2;R:21928;}s:85:"1228:i2ce-fli-1ae9c5512f7b0eeafd0b661b63a738b2b643fa17-limit_this_field_to_be_less_th";a:3:{i:0;R:22271;i:1;R:21162;i:2;R:21928;}s:85:"1228:i2ce-fli-ecb212ea2eecb49fb9494c330eefa9e1b66f8df9-limit_this_field_to_be_the_max";a:3:{i:0;R:22271;i:1;R:21162;i:2;R:21928;}s:85:"1228:i2ce-fli-f046d35b7a72af53288337230ffe9c09da69c5b2-limit_this_field_to_be_less_th";a:3:{i:0;R:22271;i:1;R:21162;i:2;R:21928;}s:84:"1228:i2ce-fli-3f51ec206978dd3ccd57892c085113dcca7ce59c-limit_this_field_to_be_one_of";a:3:{i:0;R:22271;i:1;R:21162;i:2;R:21928;}s:82:"1228:i2ce-fli-c9f1cd213c0438f76f1a9102ec7c40016c00cfe2-limit_this_field_to_be_yes.";a:3:{i:0;R:22271;i:1;R:21162;i:2;R:21928;}s:84:"1228:i2ce-fli-1cd50c4691417cf89569f2479f078e03f7ebc5d8-limit_this_field_to_be_false.";a:3:{i:0;R:22271;i:1;R:21162;i:2;R:21928;}s:85:"1228:i2ce-fli-aacc1c4dd5f115a5544c3cd28aa1ca7b512846eb-limit_this_field_to_be_null_(v";a:3:{i:0;R:22271;i:1;R:21162;i:2;R:21928;}s:85:"1228:i2ce-forms-a65dbedd428355113ef661bfbfe584d931d5e74f-return_(do_not_save_changes)";a:3:{i:0;s:20:"out-ihris-i2ce-forms";i:1;R:21162;i:2;R:21928;}s:87:"1228:i2ce-forms-8e9ca274145280f72da2ce0d50ba4f9b3abc1622-there_are_problems_with_the_da";a:3:{i:0;R:22305;i:1;R:21162;i:2;R:21928;}s:61:"1228:i2ce-forms-9f8a2389a20ca0752aa9e95093515517e90e194c-user";a:3:{i:0;R:22305;i:1;R:21162;i:2;R:21928;}s:61:"1228:i2ce-forms-efc007a393f66cdb14d57d385822a3d9e36ef873-save";a:3:{i:0;R:22305;i:1;R:21162;i:2;R:21928;}s:64:"1228:i2ce-forms-04a212215ef9fbf686d280802eb81ee7a6e681cd-confirm";a:3:{i:0;R:22305;i:1;R:21162;i:2;R:21928;}s:61:"1228:i2ce-forms-5301648dcf6b53cefc9ed52999aaa92d4603cae0-edit";a:3:{i:0;R:22305;i:1;R:21162;i:2;R:21928;}s:64:"1228:i2ce-fre-658bdb423594236988994eb0543f63bf8827f0bc-sql_query";a:3:{i:0;s:18:"out-ihris-i2ce-fre";i:1;R:21162;i:2;R:21928;}s:85:"1228:i2ce-fre-7600a777395f8c32562789e8f84ea62c58442ac4-the_defining_sql_for_this_func";a:3:{i:0;R:22312;i:1;R:21162;i:2;R:21928;}s:66:"1228:i2ce-fre-55f8ebc805e65b5b71ddafdae390e3be2bcd69af-description";a:3:{i:0;R:22312;i:1;R:21162;i:2;R:21928;}s:85:"1228:i2ce-fre-72d3a2b231f461d1e4b69ae8684f7e4cc29dd6db-a_description_of_this_function";a:3:{i:0;R:22312;i:1;R:21162;i:2;R:21928;}s:65:"1228:i2ce-fre-2e2f94a6497c4ea39747ff296b32ac4f1d3dca52-form_field";a:3:{i:0;R:22312;i:1;R:21162;i:2;R:21928;}s:85:"1228:i2ce-fre-9748b8766f6bf27744db173ec21e26a5f6991103-select_the_form_field_that_thi";a:3:{i:0;R:22312;i:1;R:21162;i:2;R:21928;}s:71:"1228:i2ce-fre-89dedc1ae6c8b6ad68e9cb7f0b2c334c225f9b9b-selectable_forms";a:3:{i:0;R:22312;i:1;R:21162;i:2;R:21928;}s:68:"1228:i2ce-fre-0cf3fa63fe27eaf410080a0466ceb2f02dbc6a83-linked_fields";a:3:{i:0;R:22312;i:1;R:21162;i:2;R:21928;}s:69:"1228:i2ce-fre-e67b44b7e62180ec810177bfffd4f6991b358ba4-existing_limit";a:3:{i:0;R:22312;i:1;R:21162;i:2;R:21928;}s:84:"1228:i2ce-fre-4fe15ed7cc2f0be36227ab02ce7c93d9fdaac0fd-there_is_a_limit_on_the_field";a:3:{i:0;R:22312;i:1;R:21162;i:2;R:21928;}s:65:"1228:i2ce-fre-4ba114dbcc1b5483751be6a0e38abc877d8f9e19-with_style";a:3:{i:0;R:22312;i:1;R:21162;i:2;R:21928;}s:62:"1228:i2ce-fre-99c8dee1385fd5b237d7cea2723abb4fe437f613-you_may";a:3:{i:0;R:22312;i:1;R:21162;i:2;R:21928;}s:61:"1228:i2ce-fre-e963907dac5cd5c017869b4c96c18021c9bd058b-remove";a:3:{i:0;R:22312;i:1;R:21162;i:2;R:21928;}s:66:"1228:i2ce-fre-c7c17989e9739447269db5697520d3c03077f29a-this_limit.";a:3:{i:0;R:22312;i:1;R:21162;i:2;R:21928;}s:85:"1228:i2ce-fre-2e6da13b8cf74489d7971971a8232a7db338e3e6-there_are_no_forms_which_are_a";a:3:{i:0;R:22312;i:1;R:21162;i:2;R:21928;}s:81:"1228:i2ce-fre-8bc3de6940287ca59b001d26eecab58f3b233e4f-limit_this_form_by_a_field";a:3:{i:0;R:22312;i:1;R:21162;i:2;R:21928;}s:84:"1228:i2ce-fre-62b63e33121fba5284b78acab89f41ebe5718c0d-select_a_field_and_limit_type";a:3:{i:0;R:22312;i:1;R:21162;i:2;R:21928;}s:65:"1228:i2ce-fre-132a07dcd88034f7872ce5ce9eeba14f9347a298-form_field";a:3:{i:0;R:22312;i:1;R:21162;i:2;R:21928;}s:69:"1228:i2ce-fre-fd6294adde442e65458da9640beeafed76f7f66a-select_a_field";a:3:{i:0;R:22312;i:1;R:21162;i:2;R:21928;}s:59:"1228:i2ce-fre-69bd4ef9fbd0894a22759c3766b859defbdedbc8-view";a:3:{i:0;R:22312;i:1;R:21162;i:2;R:21928;}s:61:"1228:i2ce-fre-f6fdbe48dc54dd86f63097a03bd24094dedd713a-delete";a:3:{i:0;R:22312;i:1;R:21162;i:2;R:21928;}s:85:"1228:i2ce-fre-572387b8621f19f2770da8a927dc229cb5a38870-row_will_be_dropped_if_form_is";a:3:{i:0;R:22312;i:1;R:21162;i:2;R:21928;}s:85:"1228:i2ce-fre-e6795e04a141161ce70b6803f7e82738f06e45e6-row_will_not_be_dropped_if_for";a:3:{i:0;R:22312;i:1;R:21162;i:2;R:21928;}s:59:"1228:i2ce-fre-5301648dcf6b53cefc9ed52999aaa92d4603cae0-edit";a:3:{i:0;R:22312;i:1;R:21162;i:2;R:21928;}s:71:"1228:i2ce-fre-e49daf4fdee6be02f48d0a20c45115053513a30c-the_sql_function";a:3:{i:0;R:22312;i:1;R:21162;i:2;R:21928;}s:85:"1228:i2ce-fre-8cc3a9035f436ff4fc2420fd108a2998272fc44a-the_form_field_that_this_funct";a:3:{i:0;R:22312;i:1;R:21162;i:2;R:21928;}s:85:"1228:i2ce-fre-968126f27e19e690cc376036783161329f26f40a-the_forms_which_are_selectable";a:3:{i:0;R:22312;i:1;R:21162;i:2;R:21928;}s:85:"1228:i2ce-fre-7681ea5405ba3d9b8ba5cf84d5ce3f0ca6f993fa-the_fields_that_are_linked_whe";a:3:{i:0;R:22312;i:1;R:21162;i:2;R:21928;}s:71:"1228:i2ce-fre-dd1f89e21918c489ecc6555eb020f9712c87703a-editing_language";a:3:{i:0;R:22312;i:1;R:21162;i:2;R:21928;}s:61:"1228:i2ce-fre-f3e4fadb9e370a1e2c0c622c01fc8c77daf93a2c-export";a:3:{i:0;R:22312;i:1;R:21162;i:2;R:21928;}s:73:"1228:i2ce-fre-448d831133c78b6dc9af93ec02122c6d3895f864-existing_functions";a:3:{i:0;R:22312;i:1;R:21162;i:2;R:21928;}s:73:"1228:i2ce-fre-9a1adb7a8091354636b3cd7fbe34ab3715fa7fdf-form_relationships";a:3:{i:0;R:22312;i:1;R:21162;i:2;R:21928;}s:84:"1228:i2ce-fre-a96df273ea7c80e4872712500f89c9d4c44463e1-view_an_existing_relationship";a:3:{i:0;R:22312;i:1;R:21162;i:2;R:21928;}s:85:"1228:i2ce-fre-da47f6f8c2be90add779098e033addf2e89110a5-there_are_no_existing_relation";a:3:{i:0;R:22312;i:1;R:21162;i:2;R:21928;}s:73:"1228:i2ce-fre-802cf9d17ee10c0347f36980b0ebf7b27bc5c23c-add_a_new_operand.";a:3:{i:0;R:22312;i:1;R:21162;i:2;R:21928;}s:85:"1228:i2ce-fre-0413410f5ce3a6a06eadeec89f277e2dbd8ad906-you_may_add_a_new_operand_to_t";a:3:{i:0;R:22312;i:1;R:21162;i:2;R:21928;}s:75:"1228:i2ce-fre-90dadec8d1195e86fabc9d4a1c76acc07b4c603a-add_a_new_child_form";a:3:{i:0;R:22312;i:1;R:21162;i:2;R:21928;}s:69:"1228:i2ce-fre-f1bd5861e69afa627b058a326242e79c65862a8b-add_a_new_form";a:3:{i:0;R:22312;i:1;R:21162;i:2;R:21928;}s:85:"1228:i2ce-fre-ddd375a175c80112aa4eb3cca1c8fdfe417a6a81-select_a_child_form_to_join_to";a:3:{i:0;R:22312;i:1;R:21162;i:2;R:21928;}s:65:"1228:i2ce-fre-da4db97e68770a1b649d6d2c7f0611f76e0adaaf-short_name";a:3:{i:0;R:22312;i:1;R:21162;i:2;R:21928;}s:85:"1228:i2ce-fre-ef86436c30385d4377261d90cfa1ba479e44ee66-an_internal_key_used_to_identi";a:3:{i:0;R:22312;i:1;R:21162;i:2;R:21928;}s:67:"1228:i2ce-fre-8d6b34815ba43d254716eab5aa768b8c7aa6d3f1-display_name";a:3:{i:0;R:22312;i:1;R:21162;i:2;R:21928;}s:85:"1228:i2ce-fre-110b3ebaaceb8c97276670ffc9ee332620c44061-the_name_of_the_joined_form_th";a:3:{i:0;R:22312;i:1;R:21162;i:2;R:21928;}s:84:"1228:i2ce-fre-8c996b713ba135b674399e2583acae3f90967925-a_description_of_the_form_and";a:3:{i:0;R:22312;i:1;R:21162;i:2;R:21928;}s:60:"1228:i2ce-fre-bbfa773e5a63a5ea58c9b6207e608ca0120e592a-close";a:3:{i:0;R:22312;i:1;R:21162;i:2;R:21928;}s:77:"1228:i2ce-fre-4fa231ef3cbd56bac80b46b8ef91dae2ba567475-choose_limit_node_type";a:3:{i:0;R:22312;i:1;R:21162;i:2;R:21928;}s:85:"1228:i2ce-fre-94fff770775ad3fd546b21e6099c748b0700ea2c-you_have_not_defined_any_limit";a:3:{i:0;R:22312;i:1;R:21162;i:2;R:21928;}s:68:"1228:i2ce-fre-1780cd1770130ca0d98023cc89edbb9b98802aff-operator_node";a:3:{i:0;R:22312;i:1;R:21162;i:2;R:21928;}s:65:"1228:i2ce-fre-31f34a6777b8a1e6ec5fcd7525cf675eb8300756-select_one";a:3:{i:0;R:22312;i:1;R:21162;i:2;R:21928;}s:58:"1228:i2ce-fre-969e7d8dee132181523a501a068fec75bded3005-not";a:3:{i:0;R:22312;i:1;R:21162;i:2;R:21928;}s:58:"1228:i2ce-fre-c2f934cb8cab6c1b3af0d4f2fdd824eabafb6bf4-and";a:3:{i:0;R:22312;i:1;R:21162;i:2;R:21928;}s:57:"1228:i2ce-fre-f579c523960af1aec824c6fdc57af6d4abd76a1f-or";a:3:{i:0;R:22312;i:1;R:21162;i:2;R:21928;}s:58:"1228:i2ce-fre-04e41391d608ebb7cc129b9f95ede0ddc5173b69-xor";a:3:{i:0;R:22312;i:1;R:21162;i:2;R:21928;}s:82:"1228:i2ce-fre-16501b314b84dbf9b94bc4744f134e16b38985fc-limit_by_a_field_(end_node)";a:3:{i:0;R:22312;i:1;R:21162;i:2;R:21928;}s:63:"1228:i2ce-fre-10850b9371593aee86af5451031709e0438296f6-no_limit";a:3:{i:0;R:22312;i:1;R:21162;i:2;R:21928;}s:85:"1228:i2ce-fre-1914bc961eea05f86ffe03f295a4efb4198f93ec-you_may_either_choose_to_modif";a:3:{i:0;R:22312;i:1;R:21162;i:2;R:21928;}s:84:"1228:i2ce-fre-12708da6ed48eec57d103438b56c21c17df98dd6-you_may_construct_an_existing";a:3:{i:0;R:22312;i:1;R:21162;i:2;R:21928;}s:84:"1228:i2ce-fre-6643338e80ed2febef8f9acfa58b15313e36d728-edit_an_existing_relationship";a:3:{i:0;R:22312;i:1;R:21162;i:2;R:21928;}s:83:"1228:i2ce-fre-0d09618a41837aff74e2710cfac857264d42c69f-construct_a_new_relationship";a:3:{i:0;R:22312;i:1;R:21162;i:2;R:21928;}s:85:"1228:i2ce-fre-fca3f02bb98dfe5a2680d11955c51a4fb7288d04-please_select_either_a_form_to";a:3:{i:0;R:22312;i:1;R:21162;i:2;R:21928;}s:85:"1228:i2ce-fre-9d82df64759d91b2408a66e3e49456d91527f400-please_select_a_form_to_use_as";a:3:{i:0;R:22312;i:1;R:21162;i:2;R:21928;}s:78:"1228:i2ce-fre-baa3db3702f1f56be6586b9b43b8b2703048df99-relationship_short_name";a:3:{i:0;R:22312;i:1;R:21162;i:2;R:21928;}s:85:"1228:i2ce-fre-55d7e26873c9defe46d8b46f51e522c212a1f404-an_internal_key_used_to_identi";a:3:{i:0;R:22312;i:1;R:21162;i:2;R:21928;}s:85:"1228:i2ce-fre-1aa0ca2599dec64bf0288f72a70350d3d776dfe7-the_name_of_the_form_relations";a:3:{i:0;R:22312;i:1;R:21162;i:2;R:21928;}s:85:"1228:i2ce-fre-fc62b6f0d45c9739d8aed7b38c10c758b91f2649-a_description_of_the_form_rela";a:3:{i:0;R:22312;i:1;R:21162;i:2;R:21928;}s:85:"1228:i2ce-fre-ae1bfcd1ebf7928ab29f8d65835c131bc1eb4957-to_construct_a_new_form_relati";a:3:{i:0;R:22312;i:1;R:21162;i:2;R:21928;}s:85:"1228:i2ce-fre-d82fa0637ce6c6e8f658b6db42db20f2e5291772-select_an_existing_relationshi";a:3:{i:0;R:22312;i:1;R:21162;i:2;R:21928;}s:66:"1228:i2ce-fre-3032615181e4ba71b4d0ec91b60a9ccaec40d440-do_not_copy";a:3:{i:0;R:22312;i:1;R:21162;i:2;R:21928;}s:85:"1228:i2ce-fre-55286b332de32dafa381284d3dc7acb4275d2dd1-the_form_1$s_in_the_relationsh";a:3:{i:0;R:22312;i:1;R:21162;i:2;R:21928;}s:84:"1228:i2ce-fre-b05d649d600fea7bcd72248bc1d90b33b6e3a1a5-the_name_of_this_relationship";a:3:{i:0;R:22312;i:1;R:21162;i:2;R:21928;}s:85:"1228:i2ce-fre-6a9c3ef23679d764992d4ba531351643c3d37390-a_description_of_the_relations";a:3:{i:0;R:22312;i:1;R:21162;i:2;R:21928;}s:72:"1228:i2ce-fre-d193b1d4d372437aba7c385770b2782c49664f77-field_limit_style";a:3:{i:0;R:22312;i:1;R:21162;i:2;R:21928;}s:69:"1228:i2ce-fre-847145060388e8dd2d2fccc0929900b4ada93587-select_a_style";a:3:{i:0;R:22312;i:1;R:21162;i:2;R:21928;}s:61:"1228:i2ce-fre-61a0ae3b849d95fb8185df69b96d0ec676fb0688-limits";a:3:{i:0;R:22312;i:1;R:21162;i:2;R:21928;}s:85:"1228:i2ce-fre-77dbf9e9e5cd1f345480c85445f57e1d311f0940-all_limits_under_this_node_are";a:3:{i:0;R:22312;i:1;R:21162;i:2;R:21928;}s:76:"1228:i2ce-fre-a7278e81a07098baf17ca4d9bf170e55b1ce48cc-existing_joined_forms";a:3:{i:0;R:22312;i:1;R:21162;i:2;R:21928;}s:73:"1228:i2ce-fre-8478744b47d806fcf05908684ba80d8fd54b1495-add_a_new_function";a:3:{i:0;R:22312;i:1;R:21162;i:2;R:21928;}s:73:"1228:i2ce-fre-ae82167a6745a40beb0f9d139a72de221f8a9b28-add_a_new_function";a:3:{i:0;R:22312;i:1;R:21162;i:2;R:21928;}s:68:"1228:i2ce-fre-d1b389a67b88dc11d3ca8a7606a8511ef745c99b-function_name";a:3:{i:0;R:22312;i:1;R:21162;i:2;R:21928;}s:84:"1228:i2ce-fre-9906f89563fea19232a40f5704a42f0bd3177336-a_name_for_this_function_that";a:3:{i:0;R:22312;i:1;R:21162;i:2;R:21928;}s:85:"1228:i2ce-fre-def8509e603cc8478fb306dd43f5779a7b98f847-the_defining_sql_for_this_func";a:3:{i:0;R:22312;i:1;R:21162;i:2;R:21928;}s:72:"1228:i2ce-fre-a725febd25a73830fd45e7312136e2a28119159d-the_reported_form";a:3:{i:0;R:22312;i:1;R:21162;i:2;R:21928;}s:68:"1228:i2ce-fre-8acfa3e01c4dcb3c1f98cb1a02f0bbf4bb073c46-uses_the_form";a:3:{i:0;R:22312;i:1;R:21162;i:2;R:21928;}s:85:"1228:i2ce-fre-53947444b4208b97552e6ae050af97e3772f7ade-the_name_of_the_form_that_is_d";a:3:{i:0;R:22312;i:1;R:21162;i:2;R:21928;}s:70:"1228:i2ce-fre-399a19464c462d758d7003eba28e994a9a447740-)_is_displayed.";a:3:{i:0;R:22312;i:1;R:21162;i:2;R:21928;}s:85:"1228:i2ce-fre-8e5be15cbba4f965b55d17b6c5493edc2ffa4cfb-a_description_of_the_form_that";a:3:{i:0;R:22312;i:1;R:21162;i:2;R:21928;}s:58:"1228:i2ce-fre-93ef0dd827103681fcee453b78be2ff14e1a261d-the";a:3:{i:0;R:22312;i:1;R:21162;i:2;R:21928;}s:59:"1228:i2ce-fre-d00b39815c187d832cef3239eb7a77580728dc47-form";a:3:{i:0;R:22312;i:1;R:21162;i:2;R:21928;}s:70:"1228:i2ce-fre-6fafba4925daea8022623d9c4281530a71bd6500-existing_limits";a:3:{i:0;R:22312;i:1;R:21162;i:2;R:21928;}s:60:"1228:i2ce-fre-c326a4660b674d2f6ea82687a1e1abae2337541f-field";a:3:{i:0;R:22312;i:1;R:21162;i:2;R:21928;}s:85:"1228:i2ce-fre-dd8ed0a8f177677253d2a204f49328cbf76c4216-the_field_of_this_form_we_wish";a:3:{i:0;R:22312;i:1;R:21162;i:2;R:21928;}s:67:"1228:i2ce-fre-600a6adec9583f1188db8cbf2fb1641abf819ea4-select_value";a:3:{i:0;R:22312;i:1;R:21162;i:2;R:21928;}s:68:"1228:i2ce-fre-cca58d01e07aa48f1567a6846320a79effaaf0b6-ancestor_form";a:3:{i:0;R:22312;i:1;R:21162;i:2;R:21928;}s:85:"1228:i2ce-fre-0a923413102469e58ce2d10dac6c1dddf9a968c9-the_named_form_we_wish_to_spec";a:3:{i:0;R:22312;i:1;R:21162;i:2;R:21928;}s:69:"1228:i2ce-fre-30e0c1e2dd6bb3b38a1c9796457f2d908221e1e0-ancestor_field";a:3:{i:0;R:22312;i:1;R:21162;i:2;R:21928;}s:85:"1228:i2ce-fre-fc4e989aa40024b5f15b48ab776b45e2af6a300c-the_field_of_the_ancestral_for";a:3:{i:0;R:22312;i:1;R:21162;i:2;R:21928;}s:74:"1228:i2ce-fre-81212db779457551b2977543ddbda811bc7d411a-existing_conditions";a:3:{i:0;R:22312;i:1;R:21162;i:2;R:21928;}s:74:"1228:i2ce-fre-5e8a7e7c6c006a95c7e0cb41566c2b381b50e6a9-add_a_new_condition";a:3:{i:0;R:22312;i:1;R:21162;i:2;R:21928;}s:66:"1228:i2ce-fre-65f17525fe429023356a9dc01bff8dabb78c5218-join_method";a:3:{i:0;R:22312;i:1;R:21162;i:2;R:21928;}s:65:"1228:i2ce-fre-47f22d76d5f07e02632426aa68cd9d122b2ae5c4-right_join";a:3:{i:0;R:22312;i:1;R:21162;i:2;R:21928;}s:59:"1228:i2ce-fre-64468bfe685f68cc16deea254787c7b7ae5c9b7a-join";a:3:{i:0;R:22312;i:1;R:21162;i:2;R:21928;}s:64:"1228:i2ce-fre-fa443d7d6200af63823dccc305e61eed839b45c2-left_join";a:3:{i:0;R:22312;i:1;R:21162;i:2;R:21928;}s:65:"1228:i2ce-fre-360d6510309356ea81debadcabe603c9f9ced959-limit_join";a:3:{i:0;R:22312;i:1;R:21162;i:2;R:21928;}s:74:"1228:i2ce-fre-5a6272fc8c3d425874cf43ee28e0a4e017de4978-limit_to_one_joined";a:3:{i:0;R:22312;i:1;R:21162;i:2;R:21928;}s:75:"1228:i2ce-fre-28150c25463bb91bb5ef56fad03ecbd834a437d4-allow_multiple_joins";a:3:{i:0;R:22312;i:1;R:21162;i:2;R:21928;}s:76:"1228:i2ce-fre-c9c5ce122cf11190a9c4e57a56b0f3563d855b90-edit_the_sql_function";a:3:{i:0;R:22312;i:1;R:21162;i:2;R:21928;}s:64:"1228:i2ce-fre-6a8e8189f1313ddd69a6c196be4e792c160e8ade-aggregate";a:3:{i:0;R:22312;i:1;R:21162;i:2;R:21928;}s:84:"1228:i2ce-fre-83002ba19a0ec5c3616a0c6dc98034c7a01a9250-a_comma_seperated_list_of_the";a:3:{i:0;R:22312;i:1;R:21162;i:2;R:21928;}s:85:"1228:i2ce-fre-09099f6ee3ca9bb4cdc7a4f2de4ef5e59adfca51-the_forms_which_are_selectable";a:3:{i:0;R:22312;i:1;R:21162;i:2;R:21928;}s:85:"1228:i2ce-fre-da42854a3130dc3d57b13c59a621397c1ee24c04-the_fields_that_are_linked_whe";a:3:{i:0;R:22312;i:1;R:21162;i:2;R:21928;}s:74:"1228:i2ce-fre-d0f0229f25d16dca1c6fe84add12fce68a143ff9-dependent_functions";a:3:{i:0;R:22312;i:1;R:21162;i:2;R:21928;}s:67:"1228:i2ce-fre-f25c888d1da82ab56721dc1d9247cc4acf120959-joined_forms";a:3:{i:0;R:22312;i:1;R:21162;i:2;R:21928;}s:85:"1228:i2ce-fre-64b8ef158734b64efbab4a33814f83b9160df4c5-join_in_new_forms_to_this_rela";a:3:{i:0;R:22312;i:1;R:21162;i:2;R:21928;}s:70:"1228:i2ce-fre-6a4272b056bdb5a465b25c67e20c5b4580f9cf95-limit_this_form";a:3:{i:0;R:22312;i:1;R:21162;i:2;R:21928;}s:84:"1228:i2ce-fre-80c932287675e160ad36ba33ca7c3c0f4168b525-limit_the_type_of_forms_added";a:3:{i:0;R:22312;i:1;R:21162;i:2;R:21928;}s:69:"1228:i2ce-fre-58bbf5fd26ff5235288e7dd8c21356c798df472b-link_this_form";a:3:{i:0;R:22312;i:1;R:21162;i:2;R:21928;}s:84:"1228:i2ce-fre-cd88b1f3314258badc274691b5b21d525f760d22-link_this_form_to_an_ancestor";a:3:{i:0;R:22312;i:1;R:21162;i:2;R:21928;}s:64:"1228:i2ce-fre-2b961dea1dc0c60ddf9a2c8e9d090f6f7d082483-functions";a:3:{i:0;R:22312;i:1;R:21162;i:2;R:21928;}s:61:"1228:i2ce-lfo-8970f0e691a0a23a47517698017c997507efd496-locale";a:3:{i:0;s:18:"out-ihris-i2ce-lfo";i:1;R:21162;i:2;R:21928;}s:65:"1228:i2ce-lfo-43f6088c824f8da50ab64d1334bf20cea43a7974-selectable";a:3:{i:0;R:22431;i:1;R:21162;i:2;R:21928;}s:85:"1228:i2ce-lists-a65dbedd428355113ef661bfbfe584d931d5e74f-return_(do_not_save_changes)";a:3:{i:0;s:20:"out-ihris-i2ce-lists";i:1;R:21162;i:2;R:21928;}s:76:"1228:i2ce-lists-ca20b4d0dc0037dbb9c44f4e58377fd5a5fcfa15-administer_database";a:3:{i:0;R:22434;i:1;R:21162;i:2;R:21928;}s:64:"1228:i2ce-lists-344d8b9acabc894ddf99d242e90a3b5b8434bcb1-add_new";a:3:{i:0;R:22434;i:1;R:21162;i:2;R:21928;}s:63:"1228:i2ce-lists-63143b6f8007b98c53ca2149822777b3566f9241-return";a:3:{i:0;R:22434;i:1;R:21162;i:2;R:21928;}s:73:"1228:i2ce-lists-852d5f3b8caf59ab764c017c14fb66b17b77993e-select_s_to_edit";a:3:{i:0;R:22434;i:1;R:21162;i:2;R:21928;}s:61:"1228:i2ce-lists-69bd4ef9fbd0894a22759c3766b859defbdedbc8-view";a:3:{i:0;R:22434;i:1;R:21162;i:2;R:21928;}s:68:"1228:i2ce-lists-0eb5ed506e4923c28d7f4a8aa69efe99b3ad75d1-information";a:3:{i:0;R:22434;i:1;R:21162;i:2;R:21928;}s:65:"1228:i2ce-lists-95d86c320f325d9b892a81e839c95ace424907b7-select_s";a:3:{i:0;R:22434;i:1;R:21162;i:2;R:21928;}s:87:"1228:i2ce-lists-d761b2876d5362553a5fca8184a35c8f5e936f4f-select_the_1$s_to_limit_the_di";a:3:{i:0;R:22434;i:1;R:21162;i:2;R:21928;}s:66:"1228:i2ce-lists-50c54fefd7e71fdd1b5614ef4fd1da6a73366d8d-add_new_s";a:3:{i:0;R:22434;i:1;R:21162;i:2;R:21928;}s:68:"1228:i2ce-lists-702852a3b282bcdf2fc2c70d7d8776c6944607c5-view_record";a:3:{i:0;R:22434;i:1;R:21162;i:2;R:21928;}s:61:"1228:i2ce-lists-34d8b60fe25332f7b98585e82e753eaf502c3e50-hide";a:3:{i:0;R:22434;i:1;R:21162;i:2;R:21928;}s:61:"1228:i2ce-lists-709a23220f2c3d64d1e1d6d18c4d5280f8d82fca-name";a:3:{i:0;R:22434;i:1;R:21162;i:2;R:21928;}s:78:"1228:i2ce-lists-7c49536127170c614e0617a2202615736691079b-can_hide_list_members";a:3:{i:0;R:22434;i:1;R:21162;i:2;R:21928;}s:87:"1228:i2ce-lists-b58e6f80034617303fc02ea0c5269fd24ac6ff50-can_edit_some_of_the_lists_sto";a:3:{i:0;R:22434;i:1;R:21162;i:2;R:21928;}s:86:"1228:i2ce-lists-cd82fee11d2ed1a28a51db7ab570947e5074c101-can_edit_all_the_lists_stored";a:3:{i:0;R:22434;i:1;R:21162;i:2;R:21928;}s:87:"1228:i2ce-lists-ca8377ae474cf787b95a66b815ce9793d1eda2ca-can_view_some_of_the_lists_sto";a:3:{i:0;R:22434;i:1;R:21162;i:2;R:21928;}s:86:"1228:i2ce-lists-570a89bc75d7a22f596270f7cdb2e1c29d9d8aad-can_view_all_the_lists_stored";a:3:{i:0;R:22434;i:1;R:21162;i:2;R:21928;}s:66:"1228:i2ce-lists-574b1c110d9e458bfac81dc3c9f0fdce28cf180a-view_list";a:3:{i:0;R:22434;i:1;R:21162;i:2;R:21928;}s:78:"1228:i2ce-lists-957cd1a44423bc735be244be158a79ad5e0affd6-edit_this_information";a:3:{i:0;R:22434;i:1;R:21162;i:2;R:21928;}s:80:"1228:i2ce-lists-8f12a44b12f65ea43ddb4305154428ef1ac77771-update_this_information";a:3:{i:0;R:22434;i:1;R:21162;i:2;R:21928;}s:71:"1228:i2ce-lists-a5bf28b25ea36609a8859c7412efa251a93dab31-select_another";a:3:{i:0;R:22434;i:1;R:21162;i:2;R:21928;}s:64:"1228:i2ce-lists-04a212215ef9fbf686d280802eb81ee7a6e681cd-confirm";a:3:{i:0;R:22434;i:1;R:21162;i:2;R:21928;}s:63:"1228:i2ce-lists-8598222918d3c6e513d63060cf55e2971ded729a-select";a:3:{i:0;R:22434;i:1;R:21162;i:2;R:21928;}s:64:"1228:i2ce-lists-bf23869d668cd1a3d75e388c42c97c93eab06ca9-to_edit";a:3:{i:0;R:22434;i:1;R:21162;i:2;R:21928;}s:87:"1228:i2ce-lists-1cc45e03b39406bf1110d9e77410b74a94a57097-do_not_show_hidden_list_member";a:3:{i:0;R:22434;i:1;R:21162;i:2;R:21928;}s:81:"1228:i2ce-lists-998215d517c2e14f766924bff86f49ba9576deae-show_hidden_list_members";a:3:{i:0;R:22434;i:1;R:21162;i:2;R:21928;}s:59:"1228:i2ce-llt-a1fffaaafb7cc996685bceb829c053cc4f7de43d-list";a:3:{i:0;s:18:"out-ihris-i2ce-llt";i:1;R:21162;i:2;R:21928;}s:77:"1228:i2ce-lltl-327725e37b069d0ff2ad1ace11169c11010926c5-lists_linked_to_lists";a:3:{i:0;s:19:"out-ihris-i2ce-lltl";i:1;R:21162;i:2;R:21928;}s:64:"1228:i2ce-lltl-756439eea515510c19115fc4ac181594ae63c8d1-links_to";a:3:{i:0;R:22464;i:1;R:21162;i:2;R:21928;}s:78:"1228:i2ce-llts-6a315338c3e38a28a5802acfda89a2f1df5ad877-lists_linked_to_string";a:3:{i:0;s:19:"out-ihris-i2ce-llts";i:1;R:21162;i:2;R:21928;}s:64:"1228:i2ce-llts-756439eea515510c19115fc4ac181594ae63c8d1-links_to";a:3:{i:0;R:22467;i:1;R:21162;i:2;R:21928;}s:85:"1228:i2ce-lpa-71e47ca7adda8ca941d0fa74aeda3003a3833589-your_old_password_didn't_match";a:3:{i:0;s:18:"out-ihris-i2ce-lpa";i:1;R:21162;i:2;R:21928;}s:68:"1228:i2ce-lpa-3634ac46987a5901a7ed3f62dc808667ffee4d74-please_log_in";a:3:{i:0;R:22470;i:1;R:21162;i:2;R:21928;}s:63:"1228:i2ce-lpa-84c29015de33e5d22422382a372caba5c58f8c01-username";a:3:{i:0;R:22470;i:1;R:21162;i:2;R:21928;}s:63:"1228:i2ce-lpa-8be3c943b1609fffbfc51aad666d0a04adf83c9d-password";a:3:{i:0;R:22470;i:1;R:21162;i:2;R:21928;}s:83:"1228:i2ce-lpa-e2816568875239a23328a2a28bc3ceec538dea10-forget_username_or_password?";a:3:{i:0;R:22470;i:1;R:21162;i:2;R:21928;}s:85:"1228:i2ce-lpa-a01ebc89225de234590e35349961ddc7a9fe083f-that_account_cannot_change_pas";a:3:{i:0;R:22470;i:1;R:21162;i:2;R:21928;}s:70:"1228:i2ce-lpa-49289db43e663a3df5e2c70714722ecc54895565-change_password";a:3:{i:0;R:22470;i:1;R:21162;i:2;R:21928;}s:68:"1228:i2ce-lpa-083a7a6a0cebf7c804b75e3095d950b21aadc1ab-send_feedback";a:3:{i:0;R:22470;i:1;R:21162;i:2;R:21928;}s:85:"1228:i2ce-lpa-8c416b428ec247f06f3c335512d2dcd09bf569e8-you_did_not_set_a_password._pl";a:3:{i:0;R:22470;i:1;R:21162;i:2;R:21928;}s:67:"1228:i2ce-lpa-5cad355de5b5f85fe9e779388218f8ba9b4a00ac-old_password";a:3:{i:0;R:22470;i:1;R:21162;i:2;R:21928;}s:67:"1228:i2ce-lpa-4894cb39ee419a77b480060f3e4a6d0a4d0fa01f-new_password";a:3:{i:0;R:22470;i:1;R:21162;i:2;R:21928;}s:75:"1228:i2ce-lpa-68dcd71ce6baa65ce1f3ddb3ead8f9e8f575e147-confirm_new_password";a:3:{i:0;R:22470;i:1;R:21162;i:2;R:21928;}s:83:"1228:i2ce-lpa-d22da675b52cf51269c8c2c82628719ed1926bab-thank_you_for_your_feedback.";a:3:{i:0;R:22470;i:1;R:21162;i:2;R:21928;}s:61:"1228:i2ce-lpa-63143b6f8007b98c53ca2149822777b3566f9241-return";a:3:{i:0;R:22470;i:1;R:21162;i:2;R:21928;}s:85:"1228:i2ce-lpa-cf968805c2389923e940feed46331d2955c36d3f-your_new_password_didn't_match";a:3:{i:0;R:22470;i:1;R:21162;i:2;R:21928;}s:85:"1228:i2ce-lpa-cdda40eb783ca502862e65c26ef426d1978e743f-if_you_have_a_bug_report,_prob";a:3:{i:0;R:22470;i:1;R:21162;i:2;R:21928;}s:73:"1228:i2ce-lpa-41954b0719910dcaef689f5dd57ba6362c833a29-site_feedback_form";a:3:{i:0;R:22470;i:1;R:21162;i:2;R:21928;}s:63:"1228:i2ce-lpa-fce06e20e5f7f74aacccab40b59b75a56c8f7305-comments";a:3:{i:0;R:22470;i:1;R:21162;i:2;R:21928;}s:59:"1228:i2ce-lpa-709a23220f2c3d64d1e1d6d18c4d5280f8d82fca-name";a:3:{i:0;R:22470;i:1;R:21162;i:2;R:21928;}s:62:"1228:i2ce-lpa-7a1994999d181deea68e4304b3346e78f838ecb7-company";a:3:{i:0;R:22470;i:1;R:21162;i:2;R:21928;}s:60:"1228:i2ce-lpa-768e0c1c69573fb588f61f1308a015c11468e05f-title";a:3:{i:0;R:22470;i:1;R:21162;i:2;R:21928;}s:63:"1228:i2ce-lpa-973d438fe5d3cf552c5fcd3b2265fe9bff3d71c6-industry";a:3:{i:0;R:22470;i:1;R:21162;i:2;R:21928;}s:62:"1228:i2ce-lpa-d70f93df5e8f9b55be44fbeee9d203972e3383d4-address";a:3:{i:0;R:22470;i:1;R:21162;i:2;R:21928;}s:59:"1228:i2ce-lpa-4271627f4f0bef6104a95cca7bb21cda4d74503e-city";a:3:{i:0;R:22470;i:1;R:21162;i:2;R:21928;}s:69:"1228:i2ce-lpa-8b19f84098767ca9c68285f81a77d6c5cd992ab0-state_province";a:3:{i:0;R:22470;i:1;R:21162;i:2;R:21928;}s:66:"1228:i2ce-lpa-c7ac934cfaa9b50e25559321e48737eb6bc8d9d8-postal_code";a:3:{i:0;R:22470;i:1;R:21162;i:2;R:21928;}s:62:"1228:i2ce-lpa-d523ebbd10146cdfd39dee077f04c9d08468d0bc-country";a:3:{i:0;R:22470;i:1;R:21162;i:2;R:21928;}s:64:"1228:i2ce-lpa-fbadb22cc438ab6e67737bbc0c3b51ebe025bfb0-telephone";a:3:{i:0;R:22470;i:1;R:21162;i:2;R:21928;}s:58:"1228:i2ce-lpa-b67fad2e2edf27045555eadaf1e4a848ab242206-fax";a:3:{i:0;R:22470;i:1;R:21162;i:2;R:21928;}s:60:"1228:i2ce-lpa-84add5b2952787581cb9a8851eef63d1ec75d22b-email";a:3:{i:0;R:22470;i:1;R:21162;i:2;R:21928;}s:85:"1228:i2ce-lpa-9adf118abd5dbca7ca01595c6d388cb7e035096d-your_password_has_been_success";a:3:{i:0;R:22470;i:1;R:21162;i:2;R:21928;}s:60:"1228:i2ce-lpa-4e5a2893bdcc7d239c1db72e4c4ffbe4bea73174-login";a:3:{i:0;R:22470;i:1;R:21162;i:2;R:21928;}s:61:"1228:i2ce-lpa-e43d612e11f1568f2373e719d4c4b08dcecdc7cc-logout";a:3:{i:0;R:22470;i:1;R:21162;i:2;R:21928;}s:73:"1228:i2ce-lpa-75d9b0ae36d3034390f4af07e457d03d4714cc4b-forgotten_password";a:3:{i:0;R:22470;i:1;R:21162;i:2;R:21928;}s:85:"1228:i2ce-lpa-37ba62da831c80f9aaaed4d10fcdb90ad1a064e3-enter_your_username_and_passwo";a:3:{i:0;R:22470;i:1;R:21162;i:2;R:21928;}s:70:"1228:i2ce-lpa-f99d98e85f9064a9b39c10c0d10fa2151df4a764-forgot_password";a:3:{i:0;R:22470;i:1;R:21162;i:2;R:21928;}s:69:"1228:i2ce-lpa-3fb75e3bfe4de94eb5198656fa9de95352dab915-reset_password";a:3:{i:0;R:22470;i:1;R:21162;i:2;R:21928;}s:85:"1228:i2ce-lpa-4fc42c3db5cf2f49b760f5368db9d72f8ef3dc6e-enter_your_username_to_reset_y";a:3:{i:0;R:22470;i:1;R:21162;i:2;R:21928;}s:71:"1228:i2ce-lpa-f674314d9f69938411e15a6d8248d7c02e97a84b-display_username";a:3:{i:0;R:22470;i:1;R:21162;i:2;R:21928;}s:85:"1228:i2ce-lpa-19b68d6c9a4101aacfe1bdf29de740d213adef15-enter_your_email_address_to_se";a:3:{i:0;R:22470;i:1;R:21162;i:2;R:21928;}s:75:"1228:i2ce-lpa-653b99433ed458b47ae5fbeed19b1384cd7b91b5-return_to_login_page";a:3:{i:0;R:22470;i:1;R:21162;i:2;R:21928;}s:85:"1228:i2ce-lpa-3bdd52f868061c1a303692d1c0895fe28346d995-please_contact_your_system_adm";a:3:{i:0;R:22470;i:1;R:21162;i:2;R:21928;}s:69:"1228:i2ce-lse-8136e2484b3bf97fa192b104791df522264ec51e-add_new_locale";a:3:{i:0;s:18:"out-ihris-i2ce-lse";i:1;R:21162;i:2;R:21928;}s:85:"1228:i2ce-lse-eabcdd9ff4c89cff18b6daa50d7f1e507d4a2752-here_you_may_select_the_locale";a:3:{i:0;R:22513;i:1;R:21162;i:2;R:21928;}s:71:"1228:i2ce-lse-25f8fca8de0ce34421050ee5466d1acad8eb5ff6-add_a_new_locale";a:3:{i:0;R:22513;i:1;R:21162;i:2;R:21928;}s:60:"1228:i2ce-lse-bbfa773e5a63a5ea58c9b6207e608ca0120e592a-close";a:3:{i:0;R:22513;i:1;R:21162;i:2;R:21928;}s:85:"1228:i2ce-lse-6fa40c41e5444d388d183b693eacaadb3c33454a-these_are_the_locales_that_are";a:3:{i:0;R:22513;i:1;R:21162;i:2;R:21928;}s:72:"1228:i2ce-lse-fc7e37c326f7f90c76b3058704f7c5d60288c7bf-locale_resolution";a:3:{i:0;R:22513;i:1;R:21162;i:2;R:21928;}s:85:"1228:i2ce-lse-abeae180995b3e19173b3cf350dd0f635c640b46-the_list_of_locales_to_looking";a:3:{i:0;R:22513;i:1;R:21162;i:2;R:21928;}s:85:"1228:i2ce-lse-ca138fe074b89d1f43e95b061f6f16894bed3937-._if_not_set,_then_the_selecte";a:3:{i:0;R:22513;i:1;R:21162;i:2;R:21928;}s:80:"1228:i2ce-lse-6d85debac37b585c99f79e955c9d86c089ebd12a-the_default_resolution_is";a:3:{i:0;R:22513;i:1;R:21162;i:2;R:21928;}s:85:"1228:i2ce-lse-9526146c168b4e46bb589c60e72b880cb3cd691a-if_you_wish_to_specify_an_alte";a:3:{i:0;R:22513;i:1;R:21162;i:2;R:21928;}s:85:"1228:i2ce-lse-14adc928816b7337940dafadad5abe9344626ad4-"_may_be_an_appropriate_resolu";a:3:{i:0;R:22513;i:1;R:21162;i:2;R:21928;}s:84:"1228:i2ce-lse-9a38c16a3273087594bb47253e2e8b6f0fc5832c-is_not_specified_in_the_list,";a:3:{i:0;R:22513;i:1;R:21162;i:2;R:21928;}s:78:"1228:i2ce-lse-18a6abf46797b44c4cccfe28548708db94ebc12c-select_available_locale";a:3:{i:0;R:22513;i:1;R:21162;i:2;R:21928;}s:72:"1228:i2ce-lse-ada86566776f9b8cdc3f2b69f70c83b2ae6b2a67-available_locales";a:3:{i:0;R:22513;i:1;R:21162;i:2;R:21928;}s:85:"1228:i2ce-lse-0cc099d3a3c2bcba2bdee8e0d7a397d96f239cf7-select_a_locale_for_your_syste";a:3:{i:0;R:22513;i:1;R:21162;i:2;R:21928;}s:68:"1228:i2ce-lse-17ab7205cee492b0c05051cc9f3a757df87e9073-select_locale";a:3:{i:0;R:22513;i:1;R:21162;i:2;R:21928;}s:68:"1228:i2ce-lse-c076f0204ce59bbb7be8792ba99a309f54765523-custom_locale";a:3:{i:0;R:22513;i:1;R:21162;i:2;R:21928;}s:84:"1228:i2ce-lse-875cf3d1aee71a7db987154f1e8073adb057ba7c-you_may_enter_a_custom_locale";a:3:{i:0;R:22513;i:1;R:21162;i:2;R:21928;}s:62:"1228:i2ce-mdb-93039e609d94a24f3572b794a31b21525a09af2b-not_set";a:3:{i:0;s:18:"out-ihris-i2ce-mdb";i:1;R:21162;i:2;R:21928;}s:60:"1228:i2ce-mdb-7c17c0101b3cf54d44618b0726307889f5d7b6d9-array";a:3:{i:0;R:22532;i:1;R:21162;i:2;R:21928;}s:70:"1228:i2ce-mdb-a0150a3d10a975f15cfdb02cc489bfdfc0a2929f-magic_data_path";a:3:{i:0;R:22532;i:1;R:21162;i:2;R:21928;}s:68:"1228:i2ce-mdb-bdd8bb48371a1186c2ee534be6ed3f32dfceaadc-expanded_view";a:3:{i:0;R:22532;i:1;R:21162;i:2;R:21928;}s:70:"1228:i2ce-mdb-288c4de2b5caf5a8bafdef4f910b6749f97bd0d0-compressed_view";a:3:{i:0;R:22532;i:1;R:21162;i:2;R:21928;}s:64:"1228:i2ce-mdb-94b69b9d5f396e0d44d01cd34f7267957f228575-mini_view";a:3:{i:0;R:22532;i:1;R:21162;i:2;R:21928;}s:64:"1228:i2ce-mdb-3563763b5dc328f5e1d521f98bed6f52d6a441e0-full_view";a:3:{i:0;R:22532;i:1;R:21162;i:2;R:21928;}s:72:"1228:i2ce-mdb-89c1a1f2250a2d9ad6ef02cb82ab553ecb1c6a81-magicdata_browser";a:3:{i:0;R:22532;i:1;R:21162;i:2;R:21928;}s:69:"1228:i2ce-mdb-c49a821a7351e65fdf20080503c7591def60de59-export_options";a:3:{i:0;R:22532;i:1;R:21162;i:2;R:21928;}s:66:"1228:i2ce-mdb-4228b7603e50200006c8e380e2c2979ffdb82200-module_name";a:3:{i:0;R:22532;i:1;R:21162;i:2;R:21928;}s:85:"1228:i2ce-mdb-4de3cfeda43a2d22499fc832184fdcef086cdb8e-a_module_name_for_the_exported";a:3:{i:0;R:22532;i:1;R:21162;i:2;R:21928;}s:69:"1228:i2ce-mdb-04362f56d7d243d69dc8beadd26e1c7d862a992a-displayed_name";a:3:{i:0;R:22532;i:1;R:21162;i:2;R:21928;}s:85:"1228:i2ce-mdb-ead9671dbc0b9b2df32f6f2948daced3e82b035c-a_displayed_name_for_the_expor";a:3:{i:0;R:22532;i:1;R:21162;i:2;R:21928;}s:62:"1228:i2ce-mdb-2da600bf9404843107a9531694f654e5662959e0-version";a:3:{i:0;R:22532;i:1;R:21162;i:2;R:21928;}s:84:"1228:i2ce-mdb-33b697d4f8c15da6feeedda31e69b89418697d14-a_version_number_for_the_data";a:3:{i:0;R:22532;i:1;R:21162;i:2;R:21928;}s:66:"1228:i2ce-mdb-55f8ebc805e65b5b71ddafdae390e3be2bcd69af-description";a:3:{i:0;R:22532;i:1;R:21162;i:2;R:21928;}s:85:"1228:i2ce-mdb-6c9a1b038c5affce8f2175482d6707cdd197b7ad-a_brief_description_of_the_exp";a:3:{i:0;R:22532;i:1;R:21162;i:2;R:21928;}s:60:"1228:i2ce-mdb-bbfa773e5a63a5ea58c9b6207e608ca0120e592a-close";a:3:{i:0;R:22532;i:1;R:21162;i:2;R:21928;}s:61:"1228:i2ce-mdb-f3e4fadb9e370a1e2c0c622c01fc8c77daf93a2c-export";a:3:{i:0;R:22532;i:1;R:21162;i:2;R:21928;}s:69:"1228:i2ce-mty-b8be3d1264310c3b8c848d4b90d5206179a40cc4-administration";a:3:{i:0;s:18:"out-ihris-i2ce-mty";i:1;R:21162;i:2;R:21928;}s:82:"1228:i2ce-mty-36ca70b8f495543f7073e11310176769fa7cb77d-adds_mime_type_capabilities";a:3:{i:0;R:22552;i:1;R:21162;i:2;R:21928;}s:70:"1228:i2ce-pages-1647b9db6c01fdfd161104fec3a083296844961e-access_denied";a:3:{i:0;s:20:"out-ihris-i2ce-pages";i:1;R:21162;i:2;R:21928;}s:87:"1228:i2ce-pages-201e7f46ea85684ff7915178225e2f647afc4a1b-you_don't_have_permission_to_v";a:3:{i:0;R:22555;i:1;R:21162;i:2;R:21928;}s:70:"1228:i2ce-pages-1eda23758be9e36e5e0d2a6a87de584aaca0193f-administrator";a:3:{i:0;R:22555;i:1;R:21162;i:2;R:21928;}s:60:"1228:i2ce-pages-322444d3bb52c341f429ca0454f292dc242f315b-any";a:3:{i:0;R:22555;i:1;R:21162;i:2;R:21928;}s:60:"1228:i2ce-pages-6a72085653e4c5be8c7640c868ef787cbcf063d1-all";a:3:{i:0;R:22555;i:1;R:21162;i:2;R:21928;}s:59:"1228:i2ce-pfo-69bd4ef9fbd0894a22759c3766b859defbdedbc8-view";a:3:{i:0;s:18:"out-ihris-i2ce-pfo";i:1;R:21162;i:2;R:21928;}s:71:"1228:i2ce-pfo-08dbc13605f8585b100536da8cbcbbdd5e8d5808-s_generated_on_s";a:3:{i:0;R:22561;i:1;R:21162;i:2;R:21928;}s:73:"1228:i2ce-pfo-9824fe25258bf8f143a4bb7634cbd228ead1c9e7-standardized_forms";a:3:{i:0;R:22561;i:1;R:21162;i:2;R:21928;}s:82:"1228:i2ce-pfo-6a73b4c1cc50b5b6c182dfc0bd6466255f503b79-generate_standardized_forms";a:3:{i:0;R:22561;i:1;R:21162;i:2;R:21928;}s:85:"1228:i2ce-pfo-d795ed83bbc4543b5a6023d792dba0f725e6264e-no_available_standardized_form";a:3:{i:0;R:22561;i:1;R:21162;i:2;R:21928;}s:82:"1228:i2ce-pfo-958925617bfadfe7bc7ba6fab745c78a0823cddc-archived_standardized_forms";a:3:{i:0;R:22561;i:1;R:21162;i:2;R:21928;}s:85:"1228:i2ce-pfo-a3f73bfa7cfa5a70dbed4ac6b6b0cb2446fa8606-no_forms_have_been_archived_fo";a:3:{i:0;R:22561;i:1;R:21162;i:2;R:21928;}s:63:"1228:i2ce-pfo-fc45f9b7a9a6e8b48f0e28821ec1981804dd1eb6-generate";a:3:{i:0;R:22561;i:1;R:21162;i:2;R:21928;}s:62:"1228:i2ce-pfo-2621c6fd51a58e1d1d5c491aac71488647b20224-archive";a:3:{i:0;R:22561;i:1;R:21162;i:2;R:21928;}s:85:"1228:i2ce-pfo-41379c3851aac983576cf11c8525a6686ce4cb9b-allows_minimal_access_to_the_p";a:3:{i:0;R:22561;i:1;R:21162;i:2;R:21928;}s:85:"1228:i2ce-pfo-811233f588f5b50bc6683c1e7fcf787fb0f632d5-allows_full_access_to_the_prin";a:3:{i:0;R:22561;i:1;R:21162;i:2;R:21928;}s:85:"1228:i2ce-pfo-284caaa55667560dbdc9e284b86e0026b258809c-allows_access_to_the_generatin";a:3:{i:0;R:22561;i:1;R:21162;i:2;R:21928;}s:85:"1228:i2ce-pfo-9b607396eeed71d42462e2f3951e7edfde321092-allows_administation_of_all_ar";a:3:{i:0;R:22561;i:1;R:21162;i:2;R:21928;}s:85:"1228:i2ce-pfo-76a6df5d27018df3cc6fa9f151f6b72a1280e9b6-allows_creating_of_all_archive";a:3:{i:0;R:22561;i:1;R:21162;i:2;R:21928;}s:85:"1228:i2ce-pfo-215fb591ca843ace8dc0b57c610de20777663033-allows_viewing_of_all_archived";a:3:{i:0;R:22561;i:1;R:21162;i:2;R:21928;}s:73:"1228:i2ce-pfo-4764f41616ca2bcb1b3e9eac3f09d49a42984e33-generated_document";a:3:{i:0;R:22561;i:1;R:21162;i:2;R:21928;}s:63:"1228:i2ce-pfo-e214b8a29923056887b7edf6635d90dcbb2abe88-document";a:3:{i:0;R:22561;i:1;R:21162;i:2;R:21928;}s:59:"1228:i2ce-pfo-eb9a4bc1c0c153e4e4b042a79113b815b7e3021d-date";a:3:{i:0;R:22561;i:1;R:21162;i:2;R:21928;}s:66:"1228:i2ce-pfo-55f8ebc805e65b5b71ddafdae390e3be2bcd69af-description";a:3:{i:0;R:22561;i:1;R:21162;i:2;R:21928;}s:70:"1228:i2ce-pfo-201a740820d427d0e31093b0bc597dd1ea72393f-primary_form_id";a:3:{i:0;R:22561;i:1;R:21162;i:2;R:21928;}s:69:"1228:i2ce-rar-c2b099743fd37c4738c12769376faeaa84c4602f-archive_report";a:3:{i:0;s:18:"out-ihris-i2ce-rar";i:1;R:21162;i:2;R:21928;}s:68:"1228:i2ce-rar-79c14e106403b39c996f69e3511f87a3d5d5fb0d-view_archives";a:3:{i:0;R:22582;i:1;R:21162;i:2;R:21928;}s:71:"1228:i2ce-rar-22777adbf447e34b17d727669e06c7b3503f97bc-archived_reports";a:3:{i:0;R:22582;i:1;R:21162;i:2;R:21928;}s:85:"1228:i2ce-rar-00106fb03fddec8e1b5f37e0b8cd093b2cae98be-allows_viewing_of_archvied_cus";a:3:{i:0;R:22582;i:1;R:21162;i:2;R:21928;}s:85:"1228:i2ce-rar-66bf15ffa461a9c671add2c4ad9c9d6a03c60aff-allows_archiving_of_custom_rep";a:3:{i:0;R:22582;i:1;R:21162;i:2;R:21928;}s:85:"1228:i2ce-rar-6ca1df236deb301dc03015ef986c3ddb66a6f6a9-allows_deleting_of_archivhed_c";a:3:{i:0;R:22582;i:1;R:21162;i:2;R:21928;}s:85:"1228:i2ce-rar-6206eaacad40ccec2be2656a92f70608859f8d6d-allows_full_access_to_custom_r";a:3:{i:0;R:22582;i:1;R:21162;i:2;R:21928;}s:70:"1228:i2ce-rar-6aca396291617563066e6d16a036da8d532843e7-archived_report";a:3:{i:0;R:22582;i:1;R:21162;i:2;R:21928;}s:71:"1228:i2ce-rar-08dbc13605f8585b100536da8cbcbbdd5e8d5808-s_generated_on_s";a:3:{i:0;R:22582;i:1;R:21162;i:2;R:21928;}s:61:"1228:i2ce-rar-ee45c30326b750387589752c0f75e1dd87ddc7e4-report";a:3:{i:0;R:22582;i:1;R:21162;i:2;R:21928;}s:70:"1228:i2ce-rar-b4b91bb0b6895ee66d491d8f86921879546eff4b-generation_date";a:3:{i:0;R:22582;i:1;R:21162;i:2;R:21928;}s:66:"1228:i2ce-rar-53610e2552f934465450dda76afd7600a1c1fc42-report_view";a:3:{i:0;R:22582;i:1;R:21162;i:2;R:21928;}s:60:"1228:i2ce-rar-768e0c1c69573fb588f61f1308a015c11468e05f-title";a:3:{i:0;R:22582;i:1;R:21162;i:2;R:21928;}s:76:"1228:i2ce-rar-ddbdc5fe162d0c3e5c67dccd3de602ff0799e53d-view_archived_reports";a:3:{i:0;R:22582;i:1;R:21162;i:2;R:21928;}s:76:"1228:i2ce-sco-c71394c3af4d6a642fe54be556e72e1d62262068-administrator_modules";a:3:{i:0;s:18:"out-ihris-i2ce-sco";i:1;R:21162;i:2;R:21928;}s:72:"1228:i2ce-sfa-f5b941e5c05b635b457e04fae5aef65ee61e2b4f-select_one_option";a:3:{i:0;s:18:"out-ihris-i2ce-sfa";i:1;R:21162;i:2;R:21928;}s:69:"1228:i2ce-sfa-a3fd55164622bd80d5239972da44fd44277e17e1-select_options";a:3:{i:0;R:22599;i:1;R:21162;i:2;R:21928;}s:76:"1228:i2ce-sfa-b8577c99aaca7f628cb921ee68fce4bf962909c4-configuration_options";a:3:{i:0;R:22599;i:1;R:21162;i:2;R:21928;}s:60:"1228:i2ce-sfa-8dce170de238b1feda2ecd9674ea3ca0d068fbcb-value";a:3:{i:0;R:22599;i:1;R:21162;i:2;R:21928;}s:60:"1228:i2ce-sfa-c2df9b932637fe9d32a0f16da1c11873398f873d-index";a:3:{i:0;R:22599;i:1;R:21162;i:2;R:21928;}s:61:"1228:i2ce-sfa-b1564f6b1512cbfa3cfcebc9a5badb6b239954f1-values";a:3:{i:0;R:22599;i:1;R:21162;i:2;R:21928;}s:61:"1228:i2ce-sfa-23d692f07a3fb646a8e54fcd2dc724f4ea2ed2c6-parent";a:3:{i:0;R:22599;i:1;R:21162;i:2;R:21928;}s:66:"1228:i2ce-sfa-e20bdc892a74ee50e805bd5979baa390955d8d5f-expert_mode";a:3:{i:0;R:22599;i:1;R:21162;i:2;R:21928;}s:70:"1228:i2ce-sfa-4f843534435ebc6a56a91b8ad02c3484d6f1fd02-non-expert_mode";a:3:{i:0;R:22599;i:1;R:21162;i:2;R:21928;}s:80:"1228:i2ce-sfa-e2302df20c64eba64e68b1db729a8b9153be29b5-configuration_sub-options";a:3:{i:0;R:22599;i:1;R:21162;i:2;R:21928;}s:59:"1228:i2ce-sfa-88b33e4e12f75ac8bf792aebde41f1a090f3a612-true";a:3:{i:0;R:22599;i:1;R:21162;i:2;R:21928;}s:60:"1228:i2ce-sfa-97cdbdc7feff827efb082a6b6dd2727237cd49fd-false";a:3:{i:0;R:22599;i:1;R:21162;i:2;R:21928;}s:75:"1228:i2ce-sfa-5e6274ce0d8a81f845d26e2353351ef9f53c6846-check_to_set_to_true";a:3:{i:0;R:22599;i:1;R:21162;i:2;R:21928;}s:76:"1228:i2ce-sma-c71394c3af4d6a642fe54be556e72e1d62262068-administrator_modules";a:3:{i:0;s:18:"out-ihris-i2ce-sma";i:1;R:21162;i:2;R:21928;}s:65:"1228:i2ce-stub-ddf306526daed3056255b209659c671cee878a03-page_stub";a:3:{i:0;s:19:"out-ihris-i2ce-stub";i:1;R:21162;i:2;R:21928;}s:71:"1228:i2ce-timer-b8be3d1264310c3b8c848d4b90d5206179a40cc4-administration";a:3:{i:0;s:20:"out-ihris-i2ce-timer";i:1;R:21162;i:2;R:21928;}s:75:"1228:i2ce-timer-e5751e27081bca8b403bf966fe005b98ee1e2552-adds_a_timer_class";a:3:{i:0;R:22617;i:1;R:21162;i:2;R:21928;}s:71:"1228:i2ce-tro-6b7bb134086f015d079d2a3108e8d0d04aa5089f-administer_roles";a:3:{i:0;s:18:"out-ihris-i2ce-tro";i:1;R:21162;i:2;R:21928;}s:69:"1228:i2ce-tro-8dfd6b27b36fa3050e5616641f396bb397aad21b-existing_roles";a:3:{i:0;R:22620;i:1;R:21162;i:2;R:21928;}s:69:"1228:i2ce-tro-3b30bccdeaa3b473d586085567375160b415d688-add_a_new_role";a:3:{i:0;R:22620;i:1;R:21162;i:2;R:21928;}s:70:"1228:i2ce-tro-96f057b56afc03f2ad7081bb091b55757e765845-role_short_name";a:3:{i:0;R:22620;i:1;R:21162;i:2;R:21928;}s:85:"1228:i2ce-tro-ada84e1838e718de3cd66f244221fbf516424da5-a_short_name_consisting_of_let";a:3:{i:0;R:22620;i:1;R:21162;i:2;R:21928;}s:72:"1228:i2ce-tro-72d100dc6f19c767bee86b8acb6818cb61c5adf4-role_display_name";a:3:{i:0;R:22620;i:1;R:21162;i:2;R:21928;}s:85:"1228:i2ce-tro-e4c352fcbf00187f338ca539904ee621853c0e30-a_display_name_for_this_role_t";a:3:{i:0;R:22620;i:1;R:21162;i:2;R:21928;}s:64:"1228:i2ce-tro-b075b6768c955ae2d34f998ff34299e4b653db37-edit_role";a:3:{i:0;R:22620;i:1;R:21162;i:2;R:21928;}s:71:"1228:i2ce-tro-8374a457a456d1a98a991116572b6b4766412049-role_inheritence";a:3:{i:0;R:22620;i:1;R:21162;i:2;R:21928;}s:85:"1228:i2ce-tro-0038a3ab74e7f74a5cd01c85240833760355ee8e-the_roles_that_have_all_the_ri";a:3:{i:0;R:22620;i:1;R:21162;i:2;R:21928;}s:65:"1228:i2ce-tro-676e491dc3882475d30ab05006d7cec3c98a938d-role_tasks";a:3:{i:0;R:22620;i:1;R:21162;i:2;R:21928;}s:85:"1228:i2ce-tro-663f5ff881d35a8658c8b4809f2f55fa172eda07-the_tasks_that_are_assigned_to";a:3:{i:0;R:22620;i:1;R:21162;i:2;R:21928;}s:71:"1228:i2ce-tro-c7b799baef45baa421ab38da4e6c240dea058f0c-administer_tasks";a:3:{i:0;R:22620;i:1;R:21162;i:2;R:21928;}s:69:"1228:i2ce-tro-e1feb1b7dc272669a48b3bf058179271137929c6-existing_tasks";a:3:{i:0;R:22620;i:1;R:21162;i:2;R:21928;}s:69:"1228:i2ce-tro-1c6465ffff87e2f2a9c6d94c4e80109a893f55ab-add_a_new_task";a:3:{i:0;R:22620;i:1;R:21162;i:2;R:21928;}s:70:"1228:i2ce-tro-91e34753384a9bf7b957cf21c65b770c22087b2b-task_short_name";a:3:{i:0;R:22620;i:1;R:21162;i:2;R:21928;}s:85:"1228:i2ce-tro-c072b91ee32d32dbd19ff5c01a827b5dcd492a2b-a_short_name_consisting_of_let";a:3:{i:0;R:22620;i:1;R:21162;i:2;R:21928;}s:71:"1228:i2ce-tro-b2386426a37dbe6d88225e8be11b1437efacce46-task_description";a:3:{i:0;R:22620;i:1;R:21162;i:2;R:21928;}s:85:"1228:i2ce-tro-bc3df42f7a3d9af0d388a7ee971b51f761512308-a_short_description_of_this_ta";a:3:{i:0;R:22620;i:1;R:21162;i:2;R:21928;}s:85:"1228:i2ce-tro-8b5d5946a0330b1b0b8ee39b3fc404ca9341ba60-this_is_a_role_fixed_by_the_sy";a:3:{i:0;R:22620;i:1;R:21162;i:2;R:21928;}s:81:"1228:i2ce-tro-3bb6e22b8976c480bb957ebb950ff0f7473cb34a-administer_roles_and_tasks";a:3:{i:0;R:22620;i:1;R:21162;i:2;R:21928;}s:85:"1228:i2ce-tro-5df68a7ff04be54c6dbb420160b9c6c0c39b40d9-here_you_may_administer_the_ro";a:3:{i:0;R:22620;i:1;R:21162;i:2;R:21928;}s:85:"1228:i2ce-tro-d855ccae209fdd222166f07e79a09d193b37c177-a_role_is_used_when_creating_a";a:3:{i:0;R:22620;i:1;R:21162;i:2;R:21928;}s:85:"1228:i2ce-tro-348a53d0efdc55427bfb62184bb54ca51d038839-a_tasks_is_a_specific_action_t";a:3:{i:0;R:22620;i:1;R:21162;i:2;R:21928;}s:64:"1228:i2ce-tro-9d0e05d653ce25e740e45af2a218e023310635b9-edit_task";a:3:{i:0;R:22620;i:1;R:21162;i:2;R:21928;}s:85:"1228:i2ce-tro-d5ed6f3349a624ab86e638ba196bd09cd6f613b5-a_description_for_this_task_th";a:3:{i:0;R:22620;i:1;R:21162;i:2;R:21928;}s:65:"1228:i2ce-tro-9282885fc5a895bc2f9b8e88f6fd10c2d4225254-task_tasks";a:3:{i:0;R:22620;i:1;R:21162;i:2;R:21928;}s:85:"1228:i2ce-tro-461611eb24bbc3ff98cb73c4685c8630c8aa8ae8-the_tasks_that_are_assigned_to";a:3:{i:0;R:22620;i:1;R:21162;i:2;R:21928;}s:85:"1228:i2ce-tro-e16a3ce3ba45eb8f7668fe2f1ea4cb76ba9f9f80-allows_minimal_access_to_the_t";a:3:{i:0;R:22620;i:1;R:21162;i:2;R:21928;}s:85:"1228:i2ce-tro-86241772b83267e4da33fc6cde461002071262fb-allows_edit_access_to_the_task";a:3:{i:0;R:22620;i:1;R:21162;i:2;R:21928;}s:85:"1228:i2ce-tro-c325125f2b8fdce0485bb39eab43f4d38192ce6e-allows_edit_access_to_the_role";a:3:{i:0;R:22620;i:1;R:21162;i:2;R:21928;}s:84:"1228:i2ce-tro-4dea90eea7b80f1a1497d540372dcd5a6bef58e3-allows_complete_access_to_the";a:3:{i:0;R:22620;i:1;R:21162;i:2;R:21928;}s:81:"1228:i2ce-tro-60ca962ef74ae0ef4048b0180a382d736d363dc1-administer_tasks_and_roles";a:3:{i:0;R:22620;i:1;R:21162;i:2;R:21928;}s:85:"1228:i2ce-tro-5f1589d376f1e170300d25aedda8cde4ce276809-a_display_name_for_this_role_t";a:3:{i:0;R:22620;i:1;R:21162;i:2;R:21928;}s:67:"1228:i2ce-tse-600a6adec9583f1188db8cbf2fb1641abf819ea4-select_value";a:3:{i:0;s:18:"out-ihris-i2ce-tse";i:1;R:21162;i:2;R:21928;}s:71:"1228:i2ce-uac-2ce2151d552c83a74d5b5c951b22dc1c25c11c9a-administer_users";a:3:{i:0;s:18:"out-ihris-i2ce-uac";i:1;R:21162;i:2;R:21928;}s:71:"1228:i2ce-uad-2ce2151d552c83a74d5b5c951b22dc1c25c11c9a-administer_users";a:3:{i:0;s:18:"out-ihris-i2ce-uad";i:1;R:21162;i:2;R:21928;}s:83:"1228:i2ce-ufo-a65dbedd428355113ef661bfbfe584d931d5e74f-return_(do_not_save_changes)";a:3:{i:0;s:18:"out-ihris-i2ce-ufo";i:1;R:21162;i:2;R:21928;}s:71:"1228:i2ce-ufo-2ce2151d552c83a74d5b5c951b22dc1c25c11c9a-administer_users";a:3:{i:0;R:22661;i:1;R:21162;i:2;R:21928;}s:74:"1228:i2ce-ufo-fd171d47595379b43629404f33627f116008779c-select_user_to_edit";a:3:{i:0;R:22661;i:1;R:21162;i:2;R:21928;}s:67:"1228:i2ce-ufo-6e74ba145633d73f1fb65f038db823c6a37eb0f2-add_new_user";a:3:{i:0;R:22661;i:1;R:21162;i:2;R:21928;}s:85:"1228:i2ce-ufo-fd7c37ab238b9d3513508f47882f3fd7455781fe-can_create_a_user_on_the_syste";a:3:{i:0;R:22661;i:1;R:21162;i:2;R:21928;}s:84:"1228:i2ce-ufo-f4c926c3e7a9d951c9be3681836827036abb4f5d-can_edit_all_the_users_in_the";a:3:{i:0;R:22661;i:1;R:21162;i:2;R:21928;}s:74:"1228:i2ce-ufo-d77afee644ab30526fc530f0b432ccc82f6a18f2-manage_users_access";a:3:{i:0;R:22661;i:1;R:21162;i:2;R:21928;}s:59:"1228:i2ce-ufo-c3f104d1365744b538bfde9f4adb6a6df4b80355-role";a:3:{i:0;R:22661;i:1;R:21162;i:2;R:21928;}s:73:"1228:i2ce-ufo-f5818eb5f2aa17656e2aaaedd3915e7aace121ea-can_assign_to_user";a:3:{i:0;R:22661;i:1;R:21162;i:2;R:21928;}s:65:"1228:i2ce-ufo-aada59587229ada11c0c97888238acf3372c4047-trickle_up";a:3:{i:0;R:22661;i:1;R:21162;i:2;R:21928;}s:63:"1228:i2ce-ufo-84c29015de33e5d22422382a372caba5c58f8c01-username";a:3:{i:0;R:22661;i:1;R:21162;i:2;R:21928;}s:84:"1228:i2ce-ufo-e7bf1e666326f049d353dd18441776330a36565b-password_(leave_blank_to_keep";a:3:{i:0;R:22661;i:1;R:21162;i:2;R:21928;}s:76:"1228:i2ce-ufo-d8753a17594511a7308b14a08f3639479eb6fa2c-generate_new_password";a:3:{i:0;R:22661;i:1;R:21162;i:2;R:21928;}s:85:"1228:i2ce-ufo-d33eb7ce77b44268a84ebb26ab5f86ba2a9adeaa-can_create_or_edit_the_users_i";a:3:{i:0;R:22661;i:1;R:21162;i:2;R:21928;}s:62:"1228:i2ce-ufo-04a212215ef9fbf686d280802eb81ee7a6e681cd-confirm";a:3:{i:0;R:22661;i:1;R:21162;i:2;R:21928;}s:85:"1228:man-acci-d5d36371aaec14139daa2bee776dc47bee6b6d5f-can_edit_the_workplace_injurie";a:3:{i:0;s:21:"out-ihris-manage-acci";i:1;R:21162;i:2;s:22:"out-ihris-manage-0-all";}s:85:"1228:man-acci-1a130a27f991a568a9e5731bff204cbfa80ba5ff-can_view_the_wokrplace_injurie";a:3:{i:0;R:22677;i:1;R:21162;i:2;R:22678;}s:85:"1228:man-acci-acf78d5c19dea8ff2060bc3e2c03ceeaeabf75fc-edit_the_workplace_accident_ty";a:3:{i:0;R:22677;i:1;R:21162;i:2;R:22678;}s:63:"1228:man-acci-ce926764b220b3aa37c8a207f8b53c27d404e595-accident";a:3:{i:0;R:22677;i:1;R:21162;i:2;R:22678;}s:78:"1228:man-acci-d95008e179a0ee0207d33d3390772d790e29c95e-workplace_accident_type";a:3:{i:0;R:22677;i:1;R:21162;i:2;R:22678;}s:72:"1228:man-acci-8bdeb106d1b25c3de3fce825ec39a9eac3ee29ae-date_of_occurence";a:3:{i:0;R:22677;i:1;R:21162;i:2;R:22678;}s:68:"1228:man-acci-924a5a25c6ec1a8567e1163a46fc08f981e23e5d-accident_type";a:3:{i:0;R:22677;i:1;R:21162;i:2;R:22678;}s:77:"1228:man-acci-e3dca3c950bd6d36147770b512726c9e4e8885b0-start_of_applicability";a:3:{i:0;R:22677;i:1;R:21162;i:2;R:22678;}s:75:"1228:man-acci-b9fd472b15c704b7f42116205240a6d10cd2375a-end_of_applicability";a:3:{i:0;R:22677;i:1;R:21162;i:2;R:22678;}s:73:"1228:man-acci-893c874aed1dda28692ff72715c7b23b361fae93-follow-up_required";a:3:{i:0;R:22677;i:1;R:21162;i:2;R:22678;}s:70:"1228:man-acci-34f68293dde3ded16dfd4b4f99cbd361b0970b02-people_involved";a:3:{i:0;R:22677;i:1;R:21162;i:2;R:22678;}s:84:"1228:man-acci-119d4a55c546782f5c8c67aa94f4d21f89b0c033-add_update_workplace_accident";a:3:{i:0;R:22677;i:1;R:21162;i:2;R:22678;}s:76:"1228:man-acci-957cd1a44423bc735be244be158a79ad5e0affd6-edit_this_information";a:3:{i:0;R:22677;i:1;R:21162;i:2;R:22678;}s:78:"1228:man-acci-8f12a44b12f65ea43ddb4305154428ef1ac77771-update_this_information";a:3:{i:0;R:22677;i:1;R:21162;i:2;R:22678;}s:83:"1228:man-acci-e1d6619118a26db396487825bf20d634e6a30d18-select_another_accident_type";a:3:{i:0;R:22677;i:1;R:21162;i:2;R:22678;}s:85:"1228:man-acci-bf723e8c4f2903bf7650c6f6a63f8c0dbe396e91-workplace_accident_information";a:3:{i:0;R:22677;i:1;R:21162;i:2;R:22678;}s:79:"1228:man-acci-75e9654bae0ad91a9dc163d5210be416cd0dd323-correct_this_information";a:3:{i:0;R:22677;i:1;R:21162;i:2;R:22678;}s:85:"1228:man-acci-c48048d1ba06648e27f0919ed4226c5e211ff94a-view_the_workplace_accident_ty";a:3:{i:0;R:22677;i:1;R:21162;i:2;R:22678;}s:71:"1228:man-appa-03fa9af604d41cfb025eef40bb4a46f7b81137f9-interview_record";a:3:{i:0;s:21:"out-ihris-manage-appa";i:1;R:21162;i:2;R:22678;}s:73:"1228:man-appa-c5669e28bc13d98d5c85dca67756d4ae58b47cae-record_of_decision";a:3:{i:0;R:22697;i:1;R:21162;i:2;R:22678;}s:70:"1228:man-appl-934d15ad367e3c1dd43fdbc8c1cbdb76ab56ca5c-hiring_decision";a:3:{i:0;s:21:"out-ihris-manage-appl";i:1;R:21162;i:2;R:22678;}s:76:"1228:man-appl-957cd1a44423bc735be244be158a79ad5e0affd6-edit_this_information";a:3:{i:0;R:22700;i:1;R:21162;i:2;R:22678;}s:78:"1228:man-appl-8f12a44b12f65ea43ddb4305154428ef1ac77771-update_this_information";a:3:{i:0;R:22700;i:1;R:21162;i:2;R:22678;}s:72:"1228:man-appl-9aa9e2fd6bf2e9f5fd0e5df5bb0b12b10f9e0798-interview_details";a:3:{i:0;R:22700;i:1;R:21162;i:2;R:22678;}s:85:"1228:man-appl-9f07ca9464b18394bfe469c5624c95fa712cf8d8-select_the_applicant_name_belo";a:3:{i:0;R:22700;i:1;R:21162;i:2;R:22678;}s:71:"1228:man-appl-7dcfe8ab930e4393d7efab7df1cf1d8876761bb9-make_a_job_offer";a:3:{i:0;R:22700;i:1;R:21162;i:2;R:22678;}s:85:"1228:man-appl-2627dfe5509248f92083aa85e36154d70dfceac7-there_are_no_applicants_for_th";a:3:{i:0;R:22700;i:1;R:21162;i:2;R:22678;}s:75:"1228:man-appl-f18eb66d997b2cfefa36eeb32105e0e552c41c36-position_information";a:3:{i:0;R:22700;i:1;R:21162;i:2;R:22678;}s:74:"1228:man-appl-10481f3403f9f43187f06b7bd655b72f5bb1a569-applicant_questions";a:3:{i:0;R:22700;i:1;R:21162;i:2;R:22678;}s:83:"1228:man-appl-a74c872298e85de83b8f7f028beb8cf6fc0c810b-open_position(s)_applied_for";a:3:{i:0;R:22700;i:1;R:21162;i:2;R:22678;}s:72:"1228:man-appl-2dfef0c4c5ec90c341bc98bd29d7e9a6f5f32fd4-review_applicants";a:3:{i:0;R:22700;i:1;R:21162;i:2;R:22678;}s:61:"1228:man-appl-63143b6f8007b98c53ca2149822777b3566f9241-return";a:3:{i:0;R:22700;i:1;R:21162;i:2;R:22678;}s:85:"1228:man-appl-c9538e98aa103973c0571219f3b6121e7ad75037-select_the_open_position_below";a:3:{i:0;R:22700;i:1;R:21162;i:2;R:22678;}s:85:"1228:man-appl-c7b1c942aff6e64a7e3b051a4b3790521641a7af-can_view_position_decision_chi";a:3:{i:0;R:22700;i:1;R:21162;i:2;R:22678;}s:85:"1228:man-appl-5a52ecd6ce098393d328c0aa658d64597651e3ba-can_edit_position_decision_chi";a:3:{i:0;R:22700;i:1;R:21162;i:2;R:22678;}s:85:"1228:man-appl-4e0e2aa7c8e56e0896ddfeeaa4f23c2c716e3870-can_view_position_interview_ch";a:3:{i:0;R:22700;i:1;R:21162;i:2;R:22678;}s:85:"1228:man-appl-ac0f42614c87071964efc8a8f269e2e0854a7a99-can_edit_position_interview_ch";a:3:{i:0;R:22700;i:1;R:21162;i:2;R:22678;}s:64:"1228:man-appl-1560dc40a1e12fa5df4d3f16ecad86a5202737b1-applicant";a:3:{i:0;R:22700;i:1;R:21162;i:2;R:22678;}s:73:"1228:man-appl-bdc93f64490a78efebc4d0395a04ccab020ecbf9-position_interview";a:3:{i:0;R:22700;i:1;R:21162;i:2;R:22678;}s:72:"1228:man-appl-1d42ec6f672773d79387bcb3ae4b922984b13fbe-position_decision";a:3:{i:0;R:22700;i:1;R:21162;i:2;R:22678;}s:66:"1228:man-appl-83af24727b3af34bdd22f8281fb85ba90d026ec9-position(s)";a:3:{i:0;R:22700;i:1;R:21162;i:2;R:22678;}s:85:"1228:man-appl-0bffba499c7b83c045f60f2a931241902ab4c1e4-have_you_ever_been_convicted_o";a:3:{i:0;R:22700;i:1;R:21162;i:2;R:22678;}s:85:"1228:man-appl-472ceed641bc5f39e31fd31ecafe8c52f40ddccf-if_yes,_give_the_circumstances";a:3:{i:0;R:22700;i:1;R:21162;i:2;R:22678;}s:85:"1228:man-appl-1510fcb33ec1e954e251c8de3079f3e88fe62c7f-in_addition_to_your_work_histo";a:3:{i:0;R:22700;i:1;R:21162;i:2;R:22678;}s:85:"1228:man-appl-371a764e9cc319ee41cc5e169166029b634d6819-how_did_you_hear_of_this_openi";a:3:{i:0;R:22700;i:1;R:21162;i:2;R:22678;}s:74:"1228:man-appl-77873f3078ae6f751238cbb61bb91b8089e34c7c-when_can_you_start?";a:3:{i:0;R:22700;i:1;R:21162;i:2;R:22678;}s:67:"1228:man-appl-518237c45e961412e8f9cb8b231b23a6635c6bb3-desired_wage";a:3:{i:0;R:22700;i:1;R:21162;i:2;R:22678;}s:84:"1228:man-appl-3a1ed73fb265886437e5f66bb2a25dfc5239a4e7-are_you_looking_for_full-time";a:3:{i:0;R:22700;i:1;R:21162;i:2;R:22678;}s:85:"1228:man-appl-c8e16cafd72e45771c65fcde9c9b541ff4e5fbac-if_no,_what_hours_are_you_avai";a:3:{i:0;R:22700;i:1;R:21162;i:2;R:22678;}s:72:"1228:man-appl-aaa06c50b78df9ea8fd031afea61a9e23f3ca31e-date_of_interview";a:3:{i:0;R:22700;i:1;R:21162;i:2;R:22678;}s:71:"1228:man-appl-d4757bb127f2f8760bf4f2a7b34df02b5c807290-people_attending";a:3:{i:0;R:22700;i:1;R:21162;i:2;R:22678;}s:63:"1228:man-appl-fce06e20e5f7f74aacccab40b59b75a56c8f7305-comments";a:3:{i:0;R:22700;i:1;R:21162;i:2;R:22678;}s:71:"1228:man-appl-65ff9931b31ee7907a39e14f5a2766084f9b084b-date_of_decision";a:3:{i:0;R:22700;i:1;R:21162;i:2;R:22678;}s:72:"1228:man-appl-5e59cb5cf01e0ab29a88d172210a45c10771d79b-make_a_job_offer?";a:3:{i:0;R:22700;i:1;R:21162;i:2;R:22678;}s:77:"1228:man-appl-71052e6a273a02bdf2c0299f64c590ec201cd553-add_update_application";a:3:{i:0;R:22700;i:1;R:21162;i:2;R:22678;}s:83:"1228:man-appl-e4468b59919991f2997fababbe03de94d507eb6e-add_update_position_decision";a:3:{i:0;R:22700;i:1;R:21162;i:2;R:22678;}s:84:"1228:man-appl-72e4943a3c00784959545fbdbfa50e7d2b83db07-add_update_position_interview";a:3:{i:0;R:22700;i:1;R:21162;i:2;R:22678;}s:59:"1228:man-appl-725e5ed60ea63b45d2c6610a0f874fd455ee2164-oops";a:3:{i:0;R:22700;i:1;R:21162;i:2;R:22678;}s:85:"1228:man-appl-da6cf205d8a918525a00ea607ffde6b180285397-can_view_application_child_for";a:3:{i:0;R:22700;i:1;R:21162;i:2;R:22678;}s:85:"1228:man-appl-ab02f002c824000a08d7333f5b22ffaef6d6fe48-can_edit_application_child_for";a:3:{i:0;R:22700;i:1;R:21162;i:2;R:22678;}s:76:"1228:man-bene-957cd1a44423bc735be244be158a79ad5e0affd6-edit_this_information";a:3:{i:0;s:21:"out-ihris-manage-bene";i:1;R:21162;i:2;R:22678;}s:78:"1228:man-bene-8f12a44b12f65ea43ddb4305154428ef1ac77771-update_this_information";a:3:{i:0;R:22741;i:1;R:21162;i:2;R:22678;}s:62:"1228:man-bene-0e7fd98b73cbc6b63617e2edc710c60d6e927e27-benefit";a:3:{i:0;R:22741;i:1;R:21162;i:2;R:22678;}s:82:"1228:man-bene-e782906fab3cbc6a16fa1dd20f2ece63991c6b15-select_another_benefit_type";a:3:{i:0;R:22741;i:1;R:21162;i:2;R:22678;}s:67:"1228:man-bene-d9e3530aa63705977a4cadd908155827f19083bd-benefit_type";a:3:{i:0;R:22741;i:1;R:21162;i:2;R:22678;}s:85:"1228:man-bene-e57a26475a8c2475ea5648ab1e9d77d2b8f3b62c-can_view_benefit_child_form_of";a:3:{i:0;R:22741;i:1;R:21162;i:2;R:22678;}s:85:"1228:man-bene-0b07adcb275aea40b28a0d4a161d9de9577ba2fb-can_edit_benefit_child_forms_o";a:3:{i:0;R:22741;i:1;R:21162;i:2;R:22678;}s:85:"1228:man-bene-7e08924bba13a0af11e47bc197287f0f70d8e3f8-can_edit_the_benefit_type_data";a:3:{i:0;R:22741;i:1;R:21162;i:2;R:22678;}s:85:"1228:man-bene-bb46a8bd7b89e1fd2c5339753c0d2837028baa9f-can_view_the_benefit_type_data";a:3:{i:0;R:22741;i:1;R:21162;i:2;R:22678;}s:59:"1228:man-bene-d9c768782ea8653d485fb3b7f5aba21cb2ca7bf3-once";a:3:{i:0;R:22741;i:1;R:21162;i:2;R:22678;}s:61:"1228:man-bene-158f3da592759369066f2361dd3d1387f574bf7a-weekly";a:3:{i:0;R:22741;i:1;R:21162;i:2;R:22678;}s:62:"1228:man-bene-d31edb7b8a94bbafe2184d44bbd83463e1dd1158-monthly";a:3:{i:0;R:22741;i:1;R:21162;i:2;R:22678;}s:61:"1228:man-bene-7622eb5aa42dee6ea6c65f47b2410246c3c3da7d-yearly";a:3:{i:0;R:22741;i:1;R:21162;i:2;R:22678;}s:74:"1228:man-bene-130694c715463bfaae67652105fae5b75ca2b08e-add_update_benefits";a:3:{i:0;R:22741;i:1;R:21162;i:2;R:22678;}s:73:"1228:man-bene-fc576ce3297e67bbb92da6c3039c37bed47e7505-benefit_recurrence";a:3:{i:0;R:22741;i:1;R:21162;i:2;R:22678;}s:61:"1228:man-bene-43dc8532f7e57be250d7397de3d14085d51516f0-amount";a:3:{i:0;R:22741;i:1;R:21162;i:2;R:22678;}s:61:"1228:man-bene-6da13addb000b67d42a6d66391713819e634149f-source";a:3:{i:0;R:22741;i:1;R:21162;i:2;R:22678;}s:65:"1228:man-bene-9d7ab1a557965be0eae6205c2d860c45a3eafc11-start_date";a:3:{i:0;R:22741;i:1;R:21162;i:2;R:22678;}s:63:"1228:man-bene-84b1478125890bad1cc4b36d6d3781773b3fde5a-end_date";a:3:{i:0;R:22741;i:1;R:21162;i:2;R:22678;}s:75:"1228:man-bene-93ffadc564762c90279eb8e93166edc6cfc90c35-recurrence_frequency";a:3:{i:0;R:22741;i:1;R:21162;i:2;R:22678;}s:61:"1228:man-cona-1c54132b8e5a9fa44a9a1a7d30b1be36ab3c4247-record";a:3:{i:0;s:21:"out-ihris-manage-cona";i:1;R:21162;i:2;R:22678;}s:76:"1228:man-conf-957cd1a44423bc735be244be158a79ad5e0affd6-edit_this_information";a:3:{i:0;s:21:"out-ihris-manage-conf";i:1;R:21162;i:2;R:22678;}s:78:"1228:man-conf-8f12a44b12f65ea43ddb4305154428ef1ac77771-update_this_information";a:3:{i:0;R:22764;i:1;R:21162;i:2;R:22678;}s:85:"1228:man-conf-e4d5836b347b491b2cfa062a4fc928fa86aec90a-select_another_confirmation_ty";a:3:{i:0;R:22764;i:1;R:21162;i:2;R:22678;}s:72:"1228:man-conf-6d12fdbd9bf78bce72f4c2ff4353af3f440ec462-confirmation_type";a:3:{i:0;R:22764;i:1;R:21162;i:2;R:22678;}s:75:"1228:man-conf-7640827b329c7641190547af23ba5d9d5379340b-confirmation_details";a:3:{i:0;R:22764;i:1;R:21162;i:2;R:22678;}s:85:"1228:man-conf-1e1c43c5579f811639ba85c34a63e2e46ed14949-can_view_confirmation_child_fo";a:3:{i:0;R:22764;i:1;R:21162;i:2;R:22678;}s:85:"1228:man-conf-e7b7d6a0a40ccd0656c9210f143ac4f40c313825-can_edit_confirmation_child_fo";a:3:{i:0;R:22764;i:1;R:21162;i:2;R:22678;}s:85:"1228:man-conf-74e6ec55e8be7e5cec347a02d73b463247e50faa-can_edit_the_confirmation_type";a:3:{i:0;R:22764;i:1;R:21162;i:2;R:22678;}s:85:"1228:man-conf-847daf414458e16e5b77569363cefb21f69b254a-can_view_the_confirmation_type";a:3:{i:0;R:22764;i:1;R:21162;i:2;R:22678;}s:78:"1228:man-conf-7c4aa42da840a41d31de5c6f7822c8a0cc94d026-add_update_confirmation";a:3:{i:0;R:22764;i:1;R:21162;i:2;R:22678;}s:67:"1228:man-conf-3424edc2354c7c55f6eb740b673d349b02d27c8d-confirmation";a:3:{i:0;R:22764;i:1;R:21162;i:2;R:22678;}s:83:"1228:man-conf-323f66abdde9761c9ded739d8e13fbc44a39bfac-probationary_period_(months)";a:3:{i:0;R:22764;i:1;R:21162;i:2;R:22678;}s:69:"1228:man-conf-ad45c7190e7125165655c6b522224b2ccb92cf15-associated_job";a:3:{i:0;R:22764;i:1;R:21162;i:2;R:22678;}s:59:"1228:man-conf-709a23220f2c3d64d1e1d6d18c4d5280f8d82fca-name";a:3:{i:0;R:22764;i:1;R:21162;i:2;R:22678;}s:60:"1228:man-conf-a4aefa35c3b5ad26cd56f18c500001b89f66a9ce-valid";a:3:{i:0;R:22764;i:1;R:21162;i:2;R:22678;}s:59:"1228:man-conf-eb9a4bc1c0c153e4e4b042a79113b815b7e3021d-date";a:3:{i:0;R:22764;i:1;R:21162;i:2;R:22678;}s:71:"1228:man-crfp-d8bcff266bad9fd235d5bd3cc050f1cbf0c9b796-filled_positions";a:3:{i:0;s:21:"out-ihris-manage-crfp";i:1;R:21162;i:2;R:22678;}s:67:"1228:man-crfp-a8d84714e9eb65efe5eca69ed29dce7a0d6c6811-first_salary";a:3:{i:0;R:22781;i:1;R:21162;i:2;R:22678;}s:66:"1228:man-crfp-ac841bd797719ef4baf97e17a270012cd5acede7-last_salary";a:3:{i:0;R:22781;i:1;R:21162;i:2;R:22678;}s:61:"1228:man-crfp-8c41ae88467fe5bbad09fcd488662b25c3ec5333-person";a:3:{i:0;R:22781;i:1;R:21162;i:2;R:22678;}s:72:"1228:man-crfp-d64b999d07234de6e11067a55cf0fc20ec893d10-employee_position";a:3:{i:0;R:22781;i:1;R:21162;i:2;R:22678;}s:74:"1228:man-crfp-e0ed0346ec9ac8273a66f036be6eac2de36558d3-supervisor_position";a:3:{i:0;R:22781;i:1;R:21162;i:2;R:22678;}s:81:"1228:man-crfp-8e7eac1d5e2c0ab5a6c46cd6711015468108ce34-supervisor_person_position";a:3:{i:0;R:22781;i:1;R:21162;i:2;R:22678;}s:72:"1228:man-crfp-367b197f8d13e2feda1c7944c0b32ff0dfbdc3fa-supervisor_person";a:3:{i:0;R:22781;i:1;R:21162;i:2;R:22678;}s:72:"1228:man-crfp-b81d20c4d352669162e4f4533be664ffb58fe246-person_start_date";a:3:{i:0;R:22781;i:1;R:21162;i:2;R:22678;}s:71:"1228:man-crfp-0cd7f6b3e49f76536312ffcf6dac6022db92c7b4-start_date_after";a:3:{i:0;R:22781;i:1;R:21162;i:2;R:22678;}s:72:"1228:man-crfp-5a031ff574a819f979940346ceff274639df8005-start_date_before";a:3:{i:0;R:22781;i:1;R:21162;i:2;R:22678;}s:70:"1228:man-crfp-a2d2aa57df1ff0505ef500e47a96c8baffa5960c-person_end_date";a:3:{i:0;R:22781;i:1;R:21162;i:2;R:22678;}s:69:"1228:man-crfp-5a1c2dd5189039cb9c2bdf34a7f6b300ee3b5c90-end_date_after";a:3:{i:0;R:22781;i:1;R:21162;i:2;R:22678;}s:70:"1228:man-crfp-1bf5959b98e3646d47f8aa274c41084181ac43ef-end_date_before";a:3:{i:0;R:22781;i:1;R:21162;i:2;R:22678;}s:62:"1228:man-crfp-77dfca2a56f9b1ffc2b6687e230088cf86fbc074-surname";a:3:{i:0;R:22781;i:1;R:21162;i:2;R:22678;}s:64:"1228:man-crfp-cf23ba48c06d7e6d4b41a205bfb3cac3bb7b1e38-firstname";a:3:{i:0;R:22781;i:1;R:21162;i:2;R:22678;}s:64:"1228:man-crfp-d4297792511794487e9d5d68553fa85cdc117a43-job_title";a:3:{i:0;R:22781;i:1;R:21162;i:2;R:22678;}s:69:"1228:man-crfp-11a5bf1ef7367f3f3ebf698f477e15e265ae7fd5-position_title";a:3:{i:0;R:22781;i:1;R:21162;i:2;R:22678;}s:63:"1228:man-crfp-cd4d0c5e1409ec6b001818e92900d4076f54ae88-facility";a:3:{i:0;R:22781;i:1;R:21162;i:2;R:22678;}s:65:"1228:man-crfp-db40106a405135d4021c1efffb756063ccb2315f-department";a:3:{i:0;R:22781;i:1;R:21162;i:2;R:22678;}s:70:"1228:man-crfp-0963c9685e3bb93f790496999a887972198c5e93-position_status";a:3:{i:0;R:22781;i:1;R:21162;i:2;R:22678;}s:71:"1228:man-crfp-cb6b2d3289b764e98522daa1dedf84e77ed64f8f-supervisor_title";a:3:{i:0;R:22781;i:1;R:21162;i:2;R:22678;}s:76:"1228:man-crfp-3c65d34003cfc2fe84488562f7eda8945db33094-supervisor_start_date";a:3:{i:0;R:22781;i:1;R:21162;i:2;R:22678;}s:73:"1228:man-crfp-60126961abb200a1d496f08fc10f979ec889a4a4-supervisor_surname";a:3:{i:0;R:22781;i:1;R:21162;i:2;R:22678;}s:75:"1228:man-crfp-2bb2fa7d2f9219caaa8baf9b6b2966cc2ea17a31-supervisor_firstname";a:3:{i:0;R:22781;i:1;R:21162;i:2;R:22678;}s:78:"1228:man-crfp-75d9eecebae2fca8704b666a49fbd044f7b67719-filled_positions_export";a:3:{i:0;R:22781;i:1;R:21162;i:2;R:22678;}s:84:"1228:man-crfp-6e8d79e1b9272d0a576798dcff41ccd11203a035-historical_list_of_all_filled";a:3:{i:0;R:22781;i:1;R:21162;i:2;R:22678;}s:85:"1228:man-crfp-7f68c4089a19d2dad79d5d7d3430f4a510e10b63-the_first_salary_for_this_posi";a:3:{i:0;R:22781;i:1;R:21162;i:2;R:22678;}s:85:"1228:man-crfp-fb4748aedcca0ab267077129c798846297ff33b3-the_last_salary_for_this_posit";a:3:{i:0;R:22781;i:1;R:21162;i:2;R:22678;}s:85:"1228:man-crfp-71fd158edc686d82bb007694440f6a38836b8ebe-the_person_filling_this_positi";a:3:{i:0;R:22781;i:1;R:21162;i:2;R:22678;}s:75:"1228:man-crfp-74a2d4945b5cffb811e2179f0ebb77a3f05c005c-the_position_details";a:3:{i:0;R:22781;i:1;R:21162;i:2;R:22678;}s:85:"1228:man-crfp-9e9b46bab00a2801f672b3e356a089d7794cdb62-the_position_details_for_the_s";a:3:{i:0;R:22781;i:1;R:21162;i:2;R:22678;}s:85:"1228:man-crfp-65cf9a2d0a3baa4f381d683cb81fc9c769f1333b-the_current_or_most_recent_per";a:3:{i:0;R:22781;i:1;R:21162;i:2;R:22678;}s:85:"1228:man-crfp-9f0c2c8f9523f7997931cc45f2007a9e532fd3f9-the_person_most_recently_filli";a:3:{i:0;R:22781;i:1;R:21162;i:2;R:22678;}s:85:"1228:man-crfp-2a38154626a407f68ba44538e9c1daed7320e77d-a_historical_report_of_all_fil";a:3:{i:0;R:22781;i:1;R:21162;i:2;R:22678;}s:85:"1228:man-crfp-328eaf8c544d596f1788e90b86fb9255f39851b0-a_list_of_historical_filled_po";a:3:{i:0;R:22781;i:1;R:21162;i:2;R:22678;}s:68:"1228:man-crfr-b45c71c005eb29aa6f1a6b79a1cb55191bfdc60d-facility_list";a:3:{i:0;s:21:"out-ihris-manage-crfr";i:1;R:21162;i:2;R:22678;}s:75:"1228:man-crfr-0f204ccee97dc5abcb856a5abc25343d91501ac6-facility_information";a:3:{i:0;R:22818;i:1;R:21162;i:2;R:22678;}s:68:"1228:man-crfr-cedd5473b0139d68b4027ea6f118f9b2a01507f8-facility_type";a:3:{i:0;R:22818;i:1;R:21162;i:2;R:22678;}s:71:"1228:man-crfr-b17ac30c6213df2cbd0dbab532cb2c19d773fa5f-facility_contact";a:3:{i:0;R:22818;i:1;R:21162;i:2;R:22678;}s:63:"1228:man-crfr-c0cb139cce34769fb7ed9bafc15290e91cf7736c-district";a:3:{i:0;R:22818;i:1;R:21162;i:2;R:22678;}s:71:"1228:man-crfr-706b5ad35c4ccd3c91a84854c4cedbb66300faab-facility_type_id";a:3:{i:0;R:22818;i:1;R:21162;i:2;R:22678;}s:72:"1228:man-crfr-f5447d4b1f32fe6c86f5f9b4628bf8747dcd7d73-facility_location";a:3:{i:0;R:22818;i:1;R:21162;i:2;R:22678;}s:75:"1228:man-crfr-788736b67e0991ee0572515ffc51598b94179664-facility_location_id";a:3:{i:0;R:22818;i:1;R:21162;i:2;R:22678;}s:68:"1228:man-crfr-169fbea633239b5f4df77a909ceabb86fa2003f4-facility_name";a:3:{i:0;R:22818;i:1;R:21162;i:2;R:22678;}s:63:"1228:man-crfr-d219c68101f532de10add2cf42fb9dbeca73d3be-location";a:3:{i:0;R:22818;i:1;R:21162;i:2;R:22678;}s:70:"1228:man-crfr-e6afb989237759c66f5b0e4226971f840efd5e7e-mailing_address";a:3:{i:0;R:22818;i:1;R:21162;i:2;R:22678;}s:71:"1228:man-crfr-e127f171d4898393e755503ff466cbf54f85634b-telephone_number";a:3:{i:0;R:22818;i:1;R:21162;i:2;R:22678;}s:68:"1228:man-crfr-09ba557fd106f1019ec6739113e3e28dea4bd9a6-email_address";a:3:{i:0;R:22818;i:1;R:21162;i:2;R:22678;}s:68:"1228:man-crfr-1210b74d42ed273677c80d9360a5e5e9a9d423f7-contact_notes";a:3:{i:0;R:22818;i:1;R:21162;i:2;R:22678;}s:70:"1228:man-crfr-2b3c2f35b6fe567267625a4c04cbde26f43009a7-facility_report";a:3:{i:0;R:22818;i:1;R:21162;i:2;R:22678;}s:85:"1228:man-crfr-0176569a405ce5eefb5563663d548687c8c114be-the_facility_type_for_this_fac";a:3:{i:0;R:22818;i:1;R:21162;i:2;R:22678;}s:85:"1228:man-crfr-e45d6a09828329ba0d0b8f5e7ce418e191a82f36-the_contact_information_for_th";a:3:{i:0;R:22818;i:1;R:21162;i:2;R:22678;}s:85:"1228:man-crfr-f1c1184fee3e97d25fa83a05a8b63cad3aba83ce-the_district_where_this_facili";a:3:{i:0;R:22818;i:1;R:21162;i:2;R:22678;}s:79:"1228:man-crfr-610be15b1964b95f811a9f9c1ef9024480dc7fb4-a_list_of_all_facilities";a:3:{i:0;R:22818;i:1;R:21162;i:2;R:22678;}s:60:"1228:man-crpr-2586a9e4e3ba9092547e3eac14e105c5ffbda37b-cadre";a:3:{i:0;s:21:"out-ihris-manage-crpr";i:1;R:21162;i:2;R:22678;}s:69:"1228:man-crpr-94c2a3189e7f7885455350c4c7a8df2d0d6ad1d1-classification";a:3:{i:0;R:22838;i:1;R:21162;i:2;R:22678;}s:58:"1228:man-crpr-30c8cb83b9acd93beaa32086336c36cb77c065d9-job";a:3:{i:0;R:22838;i:1;R:21162;i:2;R:22678;}s:63:"1228:man-crpr-cd4d0c5e1409ec6b001818e92900d4076f54ae88-facility";a:3:{i:0;R:22838;i:1;R:21162;i:2;R:22678;}s:65:"1228:man-crpr-db40106a405135d4021c1efffb756063ccb2315f-department";a:3:{i:0;R:22838;i:1;R:21162;i:2;R:22678;}s:68:"1228:man-crpr-4ad157b8df99104bef525cd63a24e05b3f196e4a-last_position";a:3:{i:0;R:22838;i:1;R:21162;i:2;R:22678;}s:71:"1228:man-crpr-959e8f40a058403cc14ce8750a4a374a3e42c5b5-current_position";a:3:{i:0;R:22838;i:1;R:21162;i:2;R:22678;}s:64:"1228:man-crpr-cd4683fadf7005eca07e4d6267ddbb19ebcb91fa-positions";a:3:{i:0;R:22838;i:1;R:21162;i:2;R:22678;}s:68:"1228:man-crpr-4df8082ac0ce98aa07be936f5db77206feeee00a-position_list";a:3:{i:0;R:22838;i:1;R:21162;i:2;R:22678;}s:59:"1228:man-crpr-adac69379a626c2436948a4ef1792c7d719ef929-code";a:3:{i:0;R:22838;i:1;R:21162;i:2;R:22678;}s:67:"1228:man-crpr-eb466bf5fd1588f9fa7f0327b45b8064361603f0-position_job";a:3:{i:0;R:22838;i:1;R:21162;i:2;R:22678;}s:60:"1228:man-crpr-768e0c1c69573fb588f61f1308a015c11468e05f-title";a:3:{i:0;R:22838;i:1;R:21162;i:2;R:22678;}s:66:"1228:man-crpr-cda91349446d5e24e33fe03d7b1554681cce55d3-facility_id";a:3:{i:0;R:22838;i:1;R:21162;i:2;R:22678;}s:68:"1228:man-crpr-887af9a9435850ec4aee0b82f5e583bcc48f33d8-department_id";a:3:{i:0;R:22838;i:1;R:21162;i:2;R:22678;}s:66:"1228:man-crpr-8e7487925b66482909244039d0b07a73fb3334fa-posted_date";a:3:{i:0;R:22838;i:1;R:21162;i:2;R:22678;}s:61:"1228:man-crpr-bae7d5be70820ed56467bd9a63744e23b47bd711-status";a:3:{i:0;R:22838;i:1;R:21162;i:2;R:22678;}s:64:"1228:man-crpr-d4297792511794487e9d5d68553fa85cdc117a43-job_title";a:3:{i:0;R:22838;i:1;R:21162;i:2;R:22678;}s:63:"1228:man-crpr-43dba12d7b05212364504b5c90447b942b38aaba-cadre_id";a:3:{i:0;R:22838;i:1;R:21162;i:2;R:22678;}s:72:"1228:man-crpr-8ed14c9c6f0f3c497f99f2ba1f65e0e3a50b1088-classification_id";a:3:{i:0;R:22838;i:1;R:21162;i:2;R:22678;}s:64:"1228:man-crpr-04e563b4697a23c4c37cad7542ee37f1d3104f33-open_date";a:3:{i:0;R:22838;i:1;R:21162;i:2;R:22678;}s:66:"1228:man-crpr-fd80eb81fd1174c9cdf0c1870033b2393f5c8e9f-filled_date";a:3:{i:0;R:22838;i:1;R:21162;i:2;R:22678;}s:64:"1228:man-crpr-93b3e25a5bfc134c5968dec2b1d2cadbd74d8853-days_open";a:3:{i:0;R:22838;i:1;R:21162;i:2;R:22678;}s:77:"1228:man-crpr-939c78adc74e24aa73176597d3df4ca8c114590d-position_open_duration";a:3:{i:0;R:22838;i:1;R:21162;i:2;R:22678;}s:71:"1228:man-crpr-32f501789ae4f9802d0cdd62f96a724b8daff8cc-position_reports";a:3:{i:0;R:22838;i:1;R:21162;i:2;R:22678;}s:85:"1228:man-crpr-b9dfe8b3f87166f57c63cf686b01d0ec0836c756-the_cadre_associated_with_this";a:3:{i:0;R:22838;i:1;R:21162;i:2;R:22678;}s:84:"1228:man-crpr-a2a3bcdac9c2a54b6ebf68b82bbb169be345335b-the_classification_associated";a:3:{i:0;R:22838;i:1;R:21162;i:2;R:22678;}s:85:"1228:man-crpr-d4e8c5a8c1d890bc960d48d2b16cb7c54cb1a4a2-the_job_associated_with_this_p";a:3:{i:0;R:22838;i:1;R:21162;i:2;R:22678;}s:85:"1228:man-crpr-26fc02579f5ad4453f122290b179a2954a6aef02-the_facility_where_this_positi";a:3:{i:0;R:22838;i:1;R:21162;i:2;R:22678;}s:85:"1228:man-crpr-eb570fc51586534984defcbae8201b514559d707-the_department_this_position_b";a:3:{i:0;R:22838;i:1;R:21162;i:2;R:22678;}s:85:"1228:man-crpr-e9af57765f5296e7685570f850b69c14a5019c02-the_last_person_that_filled_th";a:3:{i:0;R:22838;i:1;R:21162;i:2;R:22678;}s:85:"1228:man-crpr-ff442d082aa6024d913a7289ed915f7abd439375-the_current_person_filling_thi";a:3:{i:0;R:22838;i:1;R:21162;i:2;R:22678;}s:85:"1228:man-crpr-4fca7099313cebb5669b02f54f10a06d5042cae3-the_number_of_days_this_positi";a:3:{i:0;R:22838;i:1;R:21162;i:2;R:22678;}s:85:"1228:man-crpr-a40a4eb6682e849aaf4b265c4ebd0069dda561a2-all_information_related_to_a_p";a:3:{i:0;R:22838;i:1;R:21162;i:2;R:22678;}s:80:"1228:man-crpr-03f29527f70056bdda1db6518622ea82e113a9ec-details_for_all_positions";a:3:{i:0;R:22838;i:1;R:21162;i:2;R:22678;}s:78:"1228:man-crpr-f4ca57a5c6e8ac0d6a82b249942e49404e372c03-a_list_of_all_positions";a:3:{i:0;R:22838;i:1;R:21162;i:2;R:22678;}s:85:"1228:man-crpr-66c6ac7d1d443bee447f4126cd19933d2f2e6473-the_length_in_days_each_positi";a:3:{i:0;R:22838;i:1;R:21162;i:2;R:22678;}s:68:"1228:man-crsp-b584d2730d3ffd197989d6809f8386709a33c6b9-search_people";a:3:{i:0;s:21:"out-ihris-manage-crsp";i:1;R:21162;i:2;R:22678;}s:85:"1228:man-crsp-f90120e9ee7d74d865bfb722126d1309063c0a72-the_current_status_of_this_emp";a:3:{i:0;R:22875;i:1;R:21162;i:2;R:22678;}s:75:"1228:man-crsp-1b4cb3dcc95121b4483889ae3f0760a4e82d39ee-last_person_position";a:3:{i:0;R:22875;i:1;R:21162;i:2;R:22678;}s:68:"1228:man-crsp-4ad157b8df99104bef525cd63a24e05b3f196e4a-last_position";a:3:{i:0;R:22875;i:1;R:21162;i:2;R:22678;}s:63:"1228:man-crsp-aeca0b6ed2e6786275c11215876087d763205b6d-last_job";a:3:{i:0;R:22875;i:1;R:21162;i:2;R:22678;}s:68:"1228:man-crsp-6648349597b52b0f6803908e6fae1e3830b0b0d5-last_facility";a:3:{i:0;R:22875;i:1;R:21162;i:2;R:22678;}s:66:"1228:man-crsp-b291beb8793f4f3308c463951165dad483715a6c-application";a:3:{i:0;R:22875;i:1;R:21162;i:2;R:22678;}s:62:"1228:man-crsp-77dfca2a56f9b1ffc2b6687e230088cf86fbc074-surname";a:3:{i:0;R:22875;i:1;R:21162;i:2;R:22678;}s:65:"1228:man-crsp-b6ea992aab4668311bb94778e056dd0285f27621-first_name";a:3:{i:0;R:22875;i:1;R:21162;i:2;R:22678;}s:58:"1228:man-crsp-30c8cb83b9acd93beaa32086336c36cb77c065d9-job";a:3:{i:0;R:22875;i:1;R:21162;i:2;R:22678;}s:70:"1228:man-crsp-c07178c40b438fd7835fb67b60c31c345324ba25-position_job_id";a:3:{i:0;R:22875;i:1;R:21162;i:2;R:22678;}s:69:"1228:man-crsp-11a5bf1ef7367f3f3ebf698f477e15e265ae7fd5-position_title";a:3:{i:0;R:22875;i:1;R:21162;i:2;R:22678;}s:63:"1228:man-crsp-cd4d0c5e1409ec6b001818e92900d4076f54ae88-facility";a:3:{i:0;R:22875;i:1;R:21162;i:2;R:22678;}s:66:"1228:man-crsp-cda91349446d5e24e33fe03d7b1554681cce55d3-facility_id";a:3:{i:0;R:22875;i:1;R:21162;i:2;R:22678;}s:70:"1228:man-crsp-a458c4f9f5b86559e808716f8d47d4cac62378e8-employee_status";a:3:{i:0;R:22875;i:1;R:21162;i:2;R:22678;}s:61:"1228:man-crsp-bce06414177f72ab70e6387b6af9f8ceef0d6049-search";a:3:{i:0;R:22875;i:1;R:21162;i:2;R:22678;}s:85:"1228:man-crsp-000c76493f6dac15fb70053185f8d49cf9f1c22f-search_relationship_for_all_pe";a:3:{i:0;R:22875;i:1;R:21162;i:2;R:22678;}s:84:"1228:man-crsp-e9010e5bae972956b3785565137d1dafc55f615f-the_last_position_this_person";a:3:{i:0;R:22875;i:1;R:21162;i:2;R:22678;}s:85:"1228:man-crsp-d10ad0b46cdd10b1027fd089f8719a8fc233addc-the_position_details_for_the_l";a:3:{i:0;R:22875;i:1;R:21162;i:2;R:22678;}s:85:"1228:man-crsp-962c1eedceebe711fbdbceb1d807700d5c51494e-the_last_job_held_by_this_pers";a:3:{i:0;R:22875;i:1;R:21162;i:2;R:22678;}s:85:"1228:man-crsp-c97cdebaa5c6f27df2f0cd43fb3effdcf8fa26f9-the_last_facility_where_this_p";a:3:{i:0;R:22875;i:1;R:21162;i:2;R:22678;}s:85:"1228:man-crsp-6842d883819a593871e4473d47560be185940632-the_application_details_for_th";a:3:{i:0;R:22875;i:1;R:21162;i:2;R:22678;}s:80:"1228:man-crsp-5502109ec73ca2f6761e400e381b0dec75a16cfb-search_all_people_records";a:3:{i:0;R:22875;i:1;R:21162;i:2;R:22678;}s:85:"1228:man-crsp-1ffe2f4cfafba935cc32d19795314a1831cddd70-search_all_person_records_in_t";a:3:{i:0;R:22875;i:1;R:21162;i:2;R:22678;}s:68:"1228:man-crsr-8444cdcd276f10d2324404de577e49fcbdf9ba1e-current_staff";a:3:{i:0;s:21:"out-ihris-manage-crsr";i:1;R:21162;i:2;R:22678;}s:61:"1228:man-crsr-8c41ae88467fe5bbad09fcd488662b25c3ec5333-person";a:3:{i:0;R:22900;i:1;R:21162;i:2;R:22678;}s:66:"1228:man-crsr-eba97b6edda213ee80d274492e8b25475f6633c9-demographic";a:3:{i:0;R:22900;i:1;R:21162;i:2;R:22678;}s:67:"1228:man-crsr-5ef99cda04c2dbafa3a3aedd58e1508dd022ec81-work_contact";a:3:{i:0;R:22900;i:1;R:21162;i:2;R:22678;}s:72:"1228:man-crsr-0d16c6e19d1f2787125385b268ff4d2c3fad23de-emergency_contact";a:3:{i:0;R:22900;i:1;R:21162;i:2;R:22678;}s:67:"1228:man-crsr-25d016b5b0c8a97896483b271d6195724f4dd48d-home_contact";a:3:{i:0;R:22900;i:1;R:21162;i:2;R:22678;}s:66:"1228:man-crsr-1969ead537490c3bbaf406fab393be9acbe514c1-nationality";a:3:{i:0;R:22900;i:1;R:21162;i:2;R:22678;}s:63:"1228:man-crsr-cf1c85adba548e8d681255278976584a7e4a44de-position";a:3:{i:0;R:22900;i:1;R:21162;i:2;R:22678;}s:63:"1228:man-crsr-cd4d0c5e1409ec6b001818e92900d4076f54ae88-facility";a:3:{i:0;R:22900;i:1;R:21162;i:2;R:22678;}s:65:"1228:man-crsr-db40106a405135d4021c1efffb756063ccb2315f-department";a:3:{i:0;R:22900;i:1;R:21162;i:2;R:22678;}s:58:"1228:man-crsr-30c8cb83b9acd93beaa32086336c36cb77c065d9-job";a:3:{i:0;R:22900;i:1;R:21162;i:2;R:22678;}s:69:"1228:man-crsr-94c2a3189e7f7885455350c4c7a8df2d0d6ad1d1-classification";a:3:{i:0;R:22900;i:1;R:21162;i:2;R:22678;}s:69:"1228:man-crsr-feac84995ef6b7a01b0514160b02e2d984e12161-current_salary";a:3:{i:0;R:22900;i:1;R:21162;i:2;R:22678;}s:70:"1228:man-crsr-0d8b3cfe0e90a058b423346d4842d727c5f7cca4-starting_salary";a:3:{i:0;R:22900;i:1;R:21162;i:2;R:22678;}s:83:"1228:man-crsr-4a2141b36fd1b2a439faf261e3355cb4d07bdf76-the_age_range_for_the_person";a:3:{i:0;R:22900;i:1;R:21162;i:2;R:22678;}s:65:"1228:man-crsr-c7d28e1579d1d19e24921c053a585544a3bc8aca-staff_list";a:3:{i:0;R:22900;i:1;R:21162;i:2;R:22678;}s:64:"1228:man-crsr-a8d919de0525389b528d882e6c3ec3f2c9bda4a7-hire_date";a:3:{i:0;R:22900;i:1;R:21162;i:2;R:22678;}s:62:"1228:man-crsr-77dfca2a56f9b1ffc2b6687e230088cf86fbc074-surname";a:3:{i:0;R:22900;i:1;R:21162;i:2;R:22678;}s:64:"1228:man-crsr-cf23ba48c06d7e6d4b41a205bfb3cac3bb7b1e38-firstname";a:3:{i:0;R:22900;i:1;R:21162;i:2;R:22678;}s:64:"1228:man-crsr-fd3550ad0cd874efc28c6b795e70ab10dcea7311-othername";a:3:{i:0;R:22900;i:1;R:21162;i:2;R:22678;}s:69:"1228:man-crsr-a1b97297f107146655938f6b055bff16a37464a0-nationality_id";a:3:{i:0;R:22900;i:1;R:21162;i:2;R:22678;}s:65:"1228:man-crsr-a6989f1caddd842f5272f26c113b7fcbcb609141-birth_date";a:3:{i:0;R:22900;i:1;R:21162;i:2;R:22678;}s:61:"1228:man-crsr-8a754c61c2ced0c5ff79a1827e02c9d643d6d926-gender";a:3:{i:0;R:22900;i:1;R:21162;i:2;R:22678;}s:69:"1228:man-crsr-2b41b3fcf1420c68cf839ada510f9c87723aa28a-work_telephone";a:3:{i:0;R:22900;i:1;R:21162;i:2;R:22678;}s:65:"1228:man-crsr-f6c07b41a241a8a9a33cdf005ff429dc2f913dc9-work_email";a:3:{i:0;R:22900;i:1;R:21162;i:2;R:22678;}s:72:"1228:man-crsr-76c1962bb1db7e02d5b5a7aec40fb0f4300da58c-emergency_address";a:3:{i:0;R:22900;i:1;R:21162;i:2;R:22678;}s:74:"1228:man-crsr-d648b1799ce685bbfb63a25884010f32b34321eb-emergency_telephone";a:3:{i:0;R:22900;i:1;R:21162;i:2;R:22678;}s:70:"1228:man-crsr-8948d3d96470e5b1b3e0855b36266baf7dd32d67-emergency_email";a:3:{i:0;R:22900;i:1;R:21162;i:2;R:22678;}s:67:"1228:man-crsr-eb3239244e5e5f445877c721639ed5df33b2d3dd-home_address";a:3:{i:0;R:22900;i:1;R:21162;i:2;R:22678;}s:69:"1228:man-crsr-04dac70deef46d3c1d5cf25e4df3fc48c568aa10-home_telephone";a:3:{i:0;R:22900;i:1;R:21162;i:2;R:22678;}s:65:"1228:man-crsr-9a0ac2bbd5079b94ba0bf4303d4330f950f784e9-home_email";a:3:{i:0;R:22900;i:1;R:21162;i:2;R:22678;}s:66:"1228:man-crsr-cda91349446d5e24e33fe03d7b1554681cce55d3-facility_id";a:3:{i:0;R:22900;i:1;R:21162;i:2;R:22678;}s:68:"1228:man-crsr-887af9a9435850ec4aee0b82f5e583bcc48f33d8-department_id";a:3:{i:0;R:22900;i:1;R:21162;i:2;R:22678;}s:67:"1228:man-crsr-c3485f3716c6678a05d58cb0e6d26ee8a7a283c4-staff_charts";a:3:{i:0;R:22900;i:1;R:21162;i:2;R:22678;}s:71:"1228:man-crsr-7990474c695f481fe260e7f4200eb72d22e478cd-birth_date_after";a:3:{i:0;R:22900;i:1;R:21162;i:2;R:22678;}s:72:"1228:man-crsr-509dc6017d536c7a75c56febe8a4b920f124083c-birth_date_before";a:3:{i:0;R:22900;i:1;R:21162;i:2;R:22678;}s:77:"1228:man-crsr-510c35fa732da9f6e7e4fc5758136ac31afe32f6-demographic_birth_date";a:3:{i:0;R:22900;i:1;R:21162;i:2;R:22678;}s:68:"1228:man-crsr-cedd5473b0139d68b4027ea6f118f9b2a01507f8-facility_type";a:3:{i:0;R:22900;i:1;R:21162;i:2;R:22678;}s:64:"1228:man-crsr-d4297792511794487e9d5d68553fa85cdc117a43-job_title";a:3:{i:0;R:22900;i:1;R:21162;i:2;R:22678;}s:70:"1228:man-crsr-d6fc11942dba4bfdd6ee0e02098c1441f366d985-retirement_year";a:3:{i:0;R:22900;i:1;R:21162;i:2;R:22678;}s:64:"1228:man-crsr-2169f2968d359792d44cac69d6ca3e6f9682c168-age_range";a:3:{i:0;R:22900;i:1;R:21162;i:2;R:22678;}s:64:"1228:man-crsr-8bc44110c904408e3862dcecddaa970e6b58e84e-hire_year";a:3:{i:0;R:22900;i:1;R:21162;i:2;R:22678;}s:70:"1228:man-crsr-9306cc8a91a8c1c6166e73b06c9fcb4511957dcd-staff_directory";a:3:{i:0;R:22900;i:1;R:21162;i:2;R:22678;}s:72:"1228:man-crsr-0b6eed8d5ed6c12853d40c8bd7b7bbfa7452a1c3-home_contact_list";a:3:{i:0;R:22900;i:1;R:21162;i:2;R:22678;}s:79:"1228:man-crsr-4c6ee8d592a034d94fb4cf1a3e66fbf4d1570351-classification_breakdown";a:3:{i:0;R:22900;i:1;R:21162;i:2;R:22678;}s:72:"1228:man-crsr-20bb9035383e74e075bb44942d26f1935c4a3be4-pie_chart(simple)";a:3:{i:0;R:22900;i:1;R:21162;i:2;R:22678;}s:72:"1228:man-crsr-6140f3732445fe6030b3cc911dc51ff9bb979bdf-bar_chart(simple)";a:3:{i:0;R:22900;i:1;R:21162;i:2;R:22678;}s:75:"1228:man-crsr-01646a443a3fde1b6a38012541aac89af595b0d8-column_chart(simple)";a:3:{i:0;R:22900;i:1;R:21162;i:2;R:22678;}s:67:"1228:man-crsr-63920248e4b1abddb609813526a48cf4a8e4931a-scatter_plot";a:3:{i:0;R:22900;i:1;R:21162;i:2;R:22678;}s:77:"1228:man-crsr-f8c96b199072c3767c63505ef506c167ded43ac5-emergency_contact_list";a:3:{i:0;R:22900;i:1;R:21162;i:2;R:22678;}s:66:"1228:man-crsr-4484c20365852dd1f36690e975aa1fa6017095e0-salary_list";a:3:{i:0;R:22900;i:1;R:21162;i:2;R:22678;}s:68:"1228:man-crsr-89cc736df0193ba81149647ac04d8ffda7f4a3ad-job_breakdown";a:3:{i:0;R:22900;i:1;R:21162;i:2;R:22678;}s:76:"1228:man-crsr-48341a46c16d182d9f8a166dab83da0bcd15c99e-nationality_breakdown";a:3:{i:0;R:22900;i:1;R:21162;i:2;R:22678;}s:71:"1228:man-crsr-ba7c4c89ac2eab305c20fab797d0e7d5f83dbbf7-age_distribution";a:3:{i:0;R:22900;i:1;R:21162;i:2;R:22678;}s:69:"1228:man-crsr-d71659b7b85bdcf85f9af9fd8de495aa098f5559-hires_per_year";a:3:{i:0;R:22900;i:1;R:21162;i:2;R:22678;}s:83:"1228:man-crsr-3910a0af1c40f4a8bb7d64e20295709660752fda-stacked_column_chart(simple)";a:3:{i:0;R:22900;i:1;R:21162;i:2;R:22678;}s:74:"1228:man-crsr-67c3542501f5efb1e8a4280e218467bf73a48606-retirement_planning";a:3:{i:0;R:22900;i:1;R:21162;i:2;R:22678;}s:68:"1228:man-crsr-7ff4cfaa96da6f09c467a19f83a53b6ff7c92850-staff_reports";a:3:{i:0;R:22900;i:1;R:21162;i:2;R:22678;}s:82:"1228:man-crsr-907bbd31e76ef660ef86fc414ec869ef623cabf6-a_list_of_all_current_staff";a:3:{i:0;R:22900;i:1;R:21162;i:2;R:22678;}s:85:"1228:man-crsr-985b64bebcbd23e3bf74edb09c4462d9cec24751-the_person_currently_filling_t";a:3:{i:0;R:22900;i:1;R:21162;i:2;R:22678;}s:85:"1228:man-crsr-f9f3d96b7667f662c9965d057401ade7126d93b5-demographic_details_for_the_pe";a:3:{i:0;R:22900;i:1;R:21162;i:2;R:22678;}s:84:"1228:man-crsr-164d80a5e1ad5d6f5481dc483290d36ece4eef3c-work_contact_details_for_this";a:3:{i:0;R:22900;i:1;R:21162;i:2;R:22678;}s:84:"1228:man-crsr-04d32e0694da51f197e60dd905b056b0d5d64bda-emergency_contact_details_for";a:3:{i:0;R:22900;i:1;R:21162;i:2;R:22678;}s:84:"1228:man-crsr-f4794e0e7043310a5729c0687234b6ba4c01df7f-home_contact_details_for_this";a:3:{i:0;R:22900;i:1;R:21162;i:2;R:22678;}s:85:"1228:man-crsr-a76a24eba8f434ec6b7ca1e96717ab23acd291b5-the_position_held_by_this_pers";a:3:{i:0;R:22900;i:1;R:21162;i:2;R:22678;}s:85:"1228:man-crsr-26fc02579f5ad4453f122290b179a2954a6aef02-the_facility_where_this_positi";a:3:{i:0;R:22900;i:1;R:21162;i:2;R:22678;}s:85:"1228:man-crsr-22d1f608290599141f4fe21f799668bd0a64b371-the_department_for_this_positi";a:3:{i:0;R:22900;i:1;R:21162;i:2;R:22678;}s:85:"1228:man-crsr-d4e8c5a8c1d890bc960d48d2b16cb7c54cb1a4a2-the_job_associated_with_this_p";a:3:{i:0;R:22900;i:1;R:21162;i:2;R:22678;}s:85:"1228:man-crsr-8e68a09c33b883e3ba126b0d079bf863fb3152ad-the_job_classification_for_thi";a:3:{i:0;R:22900;i:1;R:21162;i:2;R:22678;}s:85:"1228:man-crsr-8c0ffa565f5adb121a3fffe3a4cd87ddb2fd24eb-the_current_salary_for_this_pe";a:3:{i:0;R:22900;i:1;R:21162;i:2;R:22678;}s:85:"1228:man-crsr-27a1aa363e32d459588b2ae3e7d339bdfa7a7207-the_starting_salary_for_this_p";a:3:{i:0;R:22900;i:1;R:21162;i:2;R:22678;}s:84:"1228:man-crsr-64f1c043e674653487a8f10d326a8e66ea124e42-the_year_this_person_turns_65";a:3:{i:0;R:22900;i:1;R:21162;i:2;R:22678;}s:85:"1228:man-crsr-a1ce8792e6800e86e1e2a5ba3cb96e1df0207739-the_year_the_person_started_in";a:3:{i:0;R:22900;i:1;R:21162;i:2;R:22678;}s:85:"1228:man-crsr-2e7250b39a05ef912e666d06c3e143b21e7d81c9-staff_aggregate_reports_for_ch";a:3:{i:0;R:22900;i:1;R:21162;i:2;R:22678;}s:85:"1228:man-crsr-b375fbaf37c454bb1aee2ae32f98593cccf6a516-a_list_of_all_current_staff_wi";a:3:{i:0;R:22900;i:1;R:21162;i:2;R:22678;}s:85:"1228:man-crsr-554b6e345d5f062df29c2c3a35629bda08e47de0-all_staff_with_home_contact_de";a:3:{i:0;R:22900;i:1;R:21162;i:2;R:22678;}s:85:"1228:man-crsr-a04616cf080ce1f4201d4718a4d3b85d3ebbcb50-a_total_of_all_staff_by_classi";a:3:{i:0;R:22900;i:1;R:21162;i:2;R:22678;}s:85:"1228:man-crsr-92f65a155222cbf173dd3d694b05548679b5eb74-list_of_all_staff_with_emergen";a:3:{i:0;R:22900;i:1;R:21162;i:2;R:22678;}s:85:"1228:man-crsr-ef075afc56e15b65f7e6494f7f90a79425f7b70b-a_list_of_all_employees_with_s";a:3:{i:0;R:22900;i:1;R:21162;i:2;R:22678;}s:73:"1228:man-crsr-741004874a9aa14377ef51de7fcf97af38b70c5e-total_staff_by_job";a:3:{i:0;R:22900;i:1;R:21162;i:2;R:22678;}s:85:"1228:man-crsr-6c3a94da3cca11d0365728f1b12446108d31e65f-a_list_of_all_staff_by_nationa";a:3:{i:0;R:22900;i:1;R:21162;i:2;R:22678;}s:85:"1228:man-crsr-c4c371e93ec4686d6754931c763a4cb98100b8e9-total_of_all_staff_by_age_rang";a:3:{i:0;R:22900;i:1;R:21162;i:2;R:22678;}s:74:"1228:man-crsr-3755823efccb68df474de0013a1285e9a68e0177-hire_totals_by_year";a:3:{i:0;R:22900;i:1;R:21162;i:2;R:22678;}s:85:"1228:man-crsr-a419721478354c83c23f2f0067ba53f39b83cdc7-staff_totals_by_retirement_yea";a:3:{i:0;R:22900;i:1;R:21162;i:2;R:22678;}s:67:"1228:man-cure-69df34044d254a614f34f33e64e8e76df0b2f1f5-ihris_manage";a:3:{i:0;s:21:"out-ihris-manage-cure";i:1;R:21162;i:2;R:22678;}s:72:"1228:man-cure-589346d88f2f76b1be0e9a6bd702d3de17ca393f-ihris_manage_site";a:3:{i:0;R:22985;i:1;R:21162;i:2;R:22678;}s:85:"1228:man-diac-dd6c0242f39336b3577fc8633be3737fa94eeb39-can_edit_the_workplace_injurie";a:3:{i:0;s:21:"out-ihris-manage-diac";i:1;R:21162;i:2;R:22678;}s:85:"1228:man-diac-57eac285e2a356cd35925f31e4b321684970b97a-can_view_the_wokrplace_injurie";a:3:{i:0;R:22988;i:1;R:21162;i:2;R:22678;}s:85:"1228:man-diac-9593083caa3aa71155cc47f09c2a46fc91ea53c4-edit_the_workplace_disciplinar";a:3:{i:0;R:22988;i:1;R:21162;i:2;R:22678;}s:74:"1228:man-diac-18b82c4555d19dd120090e7e706ed5a99bdb141e-disciplinary_action";a:3:{i:0;R:22988;i:1;R:21162;i:2;R:22678;}s:79:"1228:man-diac-f76413f7e78ae35c86c8f75d8ca8a0ee52f3070f-disciplinary_action_type";a:3:{i:0;R:22988;i:1;R:21162;i:2;R:22678;}s:73:"1228:man-diac-283a1eab0a4d442b0fcbd8a4f4a382e6fbfde3b7-date_of_discussion";a:3:{i:0;R:22988;i:1;R:21162;i:2;R:22678;}s:67:"1228:man-diac-485290959383eee39c093e50e84fdc851ac37a32-action_taken";a:3:{i:0;R:22988;i:1;R:21162;i:2;R:22678;}s:77:"1228:man-diac-e3dca3c950bd6d36147770b512726c9e4e8885b0-start_of_applicability";a:3:{i:0;R:22988;i:1;R:21162;i:2;R:22678;}s:75:"1228:man-diac-b9fd472b15c704b7f42116205240a6d10cd2375a-end_of_applicability";a:3:{i:0;R:22988;i:1;R:21162;i:2;R:22678;}s:60:"1228:man-diac-70440046a3dc2e079f23ee1c57dfa76669b732aa-notes";a:3:{i:0;R:22988;i:1;R:21162;i:2;R:22678;}s:69:"1228:man-diac-1a8305399003ec71e4b37d0579980064661169d6-people_present";a:3:{i:0;R:22988;i:1;R:21162;i:2;R:22678;}s:85:"1228:man-diac-78506c80a4071ef1628dad5c8ffcf2e9aaf9d2a9-add_update_disciplinary_action";a:3:{i:0;R:22988;i:1;R:21162;i:2;R:22678;}s:85:"1228:man-diac-a16b48578d631eb9f9c7494365fa010f7cda121c-disciplinary_action_informatio";a:3:{i:0;R:22988;i:1;R:21162;i:2;R:22678;}s:76:"1228:man-diac-957cd1a44423bc735be244be158a79ad5e0affd6-edit_this_information";a:3:{i:0;R:22988;i:1;R:21162;i:2;R:22678;}s:78:"1228:man-diac-8f12a44b12f65ea43ddb4305154428ef1ac77771-update_this_information";a:3:{i:0;R:22988;i:1;R:21162;i:2;R:22678;}s:85:"1228:man-diac-b105f3b26ef08c139373c8b3dbfb1bce02e2a38d-select_another_disciplinary_ac";a:3:{i:0;R:22988;i:1;R:21162;i:2;R:22678;}s:79:"1228:man-diac-75e9654bae0ad91a9dc163d5210be416cd0dd323-correct_this_information";a:3:{i:0;R:22988;i:1;R:21162;i:2;R:22678;}s:61:"1228:man-diac-97c89a4d6630adeb18fa12ba9976a31413fe293e-action";a:3:{i:0;R:22988;i:1;R:21162;i:2;R:22678;}s:85:"1228:man-diac-b25e4fc34fee0c591ce8ed08dc57d4adb16f4f20-view_the_workplace_disciplinar";a:3:{i:0;R:22988;i:1;R:21162;i:2;R:22678;}s:85:"1228:man-diac-286bfa9681695c0334c9d4c1d1eaadeeae403f78-edit_the_workplace_disciplinar";a:3:{i:0;R:22988;i:1;R:21162;i:2;R:22678;}s:85:"1228:man-diac-054bd32b9881fd5d082edc94db015f7d26c5745d-view_the_workplace_disciplinar";a:3:{i:0;R:22988;i:1;R:21162;i:2;R:22678;}s:81:"1228:man-diac-2553d09f452eb2bc51dad986c33149e8c414e14f-disciplinary_action_reason";a:3:{i:0;R:22988;i:1;R:21162;i:2;R:22678;}s:72:"1228:man-diac-ddeda02b1057c685d5a9d8fa8d0cdfa32a6a74c6-reason_for_action";a:3:{i:0;R:22988;i:1;R:21162;i:2;R:22678;}s:85:"1228:man-diac-4814b92bc502a6cdadc4aa99e4e80ed55db5db33-select_another_disciplinary_ac";a:3:{i:0;R:22988;i:1;R:21162;i:2;R:22678;}s:75:"1228:man-job-957cd1a44423bc735be244be158a79ad5e0affd6-edit_this_information";a:3:{i:0;s:20:"out-ihris-manage-job";i:1;R:21162;i:2;R:22678;}s:77:"1228:man-job-8f12a44b12f65ea43ddb4305154428ef1ac77771-update_this_information";a:3:{i:0;R:23013;i:1;R:21162;i:2;R:22678;}s:72:"1228:man-job-9dfbe70f6c3a02a68ea47d26e7bc657df51d7024-select_another_job";a:3:{i:0;R:23013;i:1;R:21162;i:2;R:22678;}s:57:"1228:man-job-30c8cb83b9acd93beaa32086336c36cb77c065d9-job";a:3:{i:0;R:23013;i:1;R:21162;i:2;R:22678;}s:81:"1228:man-job-d9abe7c050af3e3f1845dee7d38594d14db62b3a-select_another_salary_grade";a:3:{i:0;R:23013;i:1;R:21162;i:2;R:22678;}s:66:"1228:man-job-fc863f80482ba1377450afea2ea2a7450c143f0b-salary_grade";a:3:{i:0;R:23013;i:1;R:21162;i:2;R:22678;}s:62:"1228:man-job-38bf3cf109c445f37f401c0dab940d355dabc2d4-view_job";a:3:{i:0;R:23013;i:1;R:21162;i:2;R:22678;}s:69:"1228:man-job-3e131dd29094fd08a6d8446f2e833cea577d98e2-job_information";a:3:{i:0;R:23013;i:1;R:21162;i:2;R:22678;}s:58:"1228:man-job-34d8b60fe25332f7b98585e82e753eaf502c3e50-hide";a:3:{i:0;R:23013;i:1;R:21162;i:2;R:22678;}s:80:"1228:man-job-acf5fad8db9eb764077c8ee1558ca9060591c85f-edit_the_salary_grade_list";a:3:{i:0;R:23013;i:1;R:21162;i:2;R:22678;}s:80:"1228:man-job-6505cfee42dd3c36b3c29dd061071ce07f186acc-view_the_salary_grade_list";a:3:{i:0;R:23013;i:1;R:21162;i:2;R:22678;}s:58:"1228:man-job-709a23220f2c3d64d1e1d6d18c4d5280f8d82fca-name";a:3:{i:0;R:23013;i:1;R:21162;i:2;R:22678;}s:59:"1228:man-job-952f375412e89ff213a8aca383d18e5691354347-start";a:3:{i:0;R:23013;i:1;R:21162;i:2;R:22678;}s:57:"1228:man-job-a2bb9d34b8a1a79665858d354585cf147e0dee4e-end";a:3:{i:0;R:23013;i:1;R:21162;i:2;R:22678;}s:62:"1228:man-job-97bbd308fa43b67e4ec67f539a40521878447eaf-midpoint";a:3:{i:0;R:23013;i:1;R:21162;i:2;R:22678;}s:59:"1228:man-job-70440046a3dc2e079f23ee1c57dfa76669b732aa-notes";a:3:{i:0;R:23013;i:1;R:21162;i:2;R:22678;}s:65:"1228:man-mana-26b953711187a41842ce9535b12ead1119838f0b-add_person";a:3:{i:0;s:23:"out-ihris-manage-manage";i:1;R:21162;i:2;R:22678;}s:72:"1228:man-mana-2dfef0c4c5ec90c341bc98bd29d7e9a6f5f32fd4-review_applicants";a:3:{i:0;R:23030;i:1;R:21162;i:2;R:22678;}s:68:"1228:man-mana-a353965409fcfec29e31b93970b446327d5fe986-manage_people";a:3:{i:0;R:23030;i:1;R:21162;i:2;R:22678;}s:84:"1228:man-mana-bad102632b9126fa5523cb39fac5059e185c8d0e-once_one_or_more_applications";a:3:{i:0;R:23030;i:1;R:21162;i:2;R:22678;}s:73:"1228:man-mana-e633c25ea826413b3687101091495d54f984d0fd-add_a_new_employee";a:3:{i:0;R:23030;i:1;R:21162;i:2;R:22678;}s:67:"1228:man-mana-965ec8fa33bfb18b1b81f82786e120e12ca4ed69-or_applicant";a:3:{i:0;R:23030;i:1;R:21162;i:2;R:22678;}s:85:"1228:man-mana-a267601484f573b9c72f6c6ef69aedaab61cad20-record_to_the_system,_and_sear";a:3:{i:0;R:23030;i:1;R:21162;i:2;R:22678;}s:85:"1228:man-mana-3ee97fe33648a51a827b59652a06c933da0be658-also_complete_job_applications";a:3:{i:0;R:23030;i:1;R:21162;i:2;R:22678;}s:69:"1228:man-mana-a0c7a2ace5ffcff2c25542bae23b78d5a26ce7c7-search_records";a:3:{i:0;R:23030;i:1;R:21162;i:2;R:22678;}s:85:"1228:man-mana-a28b0416d42489156a83bfbb07c69a84e76eced7-locate_any_employee_or_positio";a:3:{i:0;R:23030;i:1;R:21162;i:2;R:22678;}s:67:"1228:man-mana-d8ec6db71b8deb067ea524a66a19c02cce906a91-view_reports";a:3:{i:0;R:23030;i:1;R:21162;i:2;R:22678;}s:85:"1228:man-mana-55bea38e73e96fa6992d59cce1f13bb43d487ec9-reports_enable_analysis_of_hum";a:3:{i:0;R:23030;i:1;R:21162;i:2;R:22678;}s:71:"1228:man-mana-7f5b0aa72e7ba00066dfc25f5c1fd7a3570857c5-configure_system";a:3:{i:0;R:23030;i:1;R:21162;i:2;R:22678;}s:84:"1228:man-mana-a43bd2c68d133204e17a7cf29d0bfaf7ef98ba5c-configure_modules,_administer";a:3:{i:0;R:23030;i:1;R:21162;i:2;R:22678;}s:70:"1228:man-mana-49289db43e663a3df5e2c70714722ecc54895565-change_password";a:3:{i:0;R:23030;i:1;R:21162;i:2;R:22678;}s:66:"1228:man-mana-9c6e28513f2c6f63ad0349bb55ca3ae19a5c6ba2-view_person";a:3:{i:0;R:23030;i:1;R:21162;i:2;R:22678;}s:77:"1228:man-mana-0474d22ea4894acd04ee5d77b5587301c77e6415-individual_information";a:3:{i:0;R:23030;i:1;R:21162;i:2;R:22678;}s:59:"1228:man-mana-34d8b60fe25332f7b98585e82e753eaf502c3e50-hide";a:3:{i:0;R:23030;i:1;R:21162;i:2;R:22678;}s:67:"1228:man-mana-a4521e7565417c832e5ca84e8668882529295d38-set_position";a:3:{i:0;R:23030;i:1;R:21162;i:2;R:22678;}s:82:"1228:man-mana-342759176706468b806066a69ed1f01bcfb9a9d6-add_demographic_information";a:3:{i:0;R:23030;i:1;R:21162;i:2;R:22678;}s:73:"1228:man-mana-d5bea389126e1910f2a6137983a05eef50e07365-add_identification";a:3:{i:0;R:23030;i:1;R:21162;i:2;R:22678;}s:76:"1228:man-mana-957cd1a44423bc735be244be158a79ad5e0affd6-edit_this_information";a:3:{i:0;R:23030;i:1;R:21162;i:2;R:22678;}s:78:"1228:man-mana-8f12a44b12f65ea43ddb4305154428ef1ac77771-update_this_information";a:3:{i:0;R:23030;i:1;R:21162;i:2;R:22678;}s:72:"1228:man-mana-244e3e85d6d93e7f2371f153711807c17e45c44a-view_name_history";a:3:{i:0;R:23030;i:1;R:21162;i:2;R:22678;}s:71:"1228:man-mana-14ff2b6100bb4fe92eb1c4d833d7d5bbd5c81082-name_nationality";a:3:{i:0;R:23030;i:1;R:21162;i:2;R:22678;}s:74:"1228:man-mana-a34b69fc46e7a278cf65c58bb347de6560fb046f-contact_information";a:3:{i:0;R:23030;i:1;R:21162;i:2;R:22678;}s:75:"1228:man-mana-f18eb66d997b2cfefa36eeb32105e0e552c41c36-position_information";a:3:{i:0;R:23030;i:1;R:21162;i:2;R:22678;}s:82:"1228:man-mana-a094b3a00a23b16b397c709b7202b12e49549abc-add_benefit_special_payment";a:3:{i:0;R:23030;i:1;R:21162;i:2;R:22678;}s:69:"1228:man-mana-56663729aef0706c003caf4033fd3cb44dc729e4-qualifications";a:3:{i:0;R:23030;i:1;R:21162;i:2;R:22678;}s:71:"1228:man-mana-c7e518207b660225550b3c8aabe8f7b729cc97df-add_registration";a:3:{i:0;R:23030;i:1;R:21162;i:2;R:22678;}s:79:"1228:man-mana-bc6186721a821b6a3588eedf92f8d1333e7c3d25-add_language_proficiency";a:3:{i:0;R:23030;i:1;R:21162;i:2;R:22678;}s:69:"1228:man-mana-a1837e219c9b275f9911047674ccf72893e11400-add_competency";a:3:{i:0;R:23030;i:1;R:21162;i:2;R:22678;}s:77:"1228:man-mana-2e1cec2d8277ef88707777617b8c8c34707b3164-competency_evaluations";a:3:{i:0;R:23030;i:1;R:21162;i:2;R:22678;}s:71:"1228:man-mana-6b4087142e253154bb7980e820deabd228548376-training_courses";a:3:{i:0;R:23030;i:1;R:21162;i:2;R:22678;}s:74:"1228:man-mana-dc0f0ac4eb8193b306dbcd77f02b25800d26c53e-add_training_course";a:3:{i:0;R:23030;i:1;R:21162;i:2;R:22678;}s:66:"1228:man-mana-b291beb8793f4f3308c463951165dad483715a6c-application";a:3:{i:0;R:23030;i:1;R:21162;i:2;R:22678;}s:70:"1228:man-mana-b4f9f247978360dce9d1d066390fdcef8157c8fa-add_application";a:3:{i:0;R:23030;i:1;R:21162;i:2;R:22678;}s:76:"1228:man-mana-7f02eff3f6bf17af2d10de937b7219a1ace5dd42-log_interview_details";a:3:{i:0;R:23030;i:1;R:21162;i:2;R:22678;}s:74:"1228:man-mana-2d604518d3f40538cbf1d9941fcc248e2d004a57-log_hiring_decision";a:3:{i:0;R:23030;i:1;R:21162;i:2;R:22678;}s:73:"1228:man-mana-324597a3e9015639cd9be113b5d5a229d513adc0-employment_history";a:3:{i:0;R:23030;i:1;R:21162;i:2;R:22678;}s:69:"1228:man-mana-fee94010b437eac86ce4e9d1b3a732333e639458-add_employment";a:3:{i:0;R:23030;i:1;R:21162;i:2;R:22678;}s:72:"1228:man-mana-1a9ef1a8b15e5f3ff28eb2dbbf0dba081dc1ab3c-education_history";a:3:{i:0;R:23030;i:1;R:21162;i:2;R:22678;}s:68:"1228:man-mana-2035097f8ca3ec8c281deab33eb7fe228f2783b4-add_education";a:3:{i:0;R:23030;i:1;R:21162;i:2;R:22678;}s:60:"1228:man-mana-70440046a3dc2e079f23ee1c57dfa76669b732aa-notes";a:3:{i:0;R:23030;i:1;R:21162;i:2;R:22678;}s:63:"1228:man-mana-8b851bdab36a811b6e6416e9bb1952c372bc9bd8-add_note";a:3:{i:0;R:23030;i:1;R:21162;i:2;R:22678;}s:74:"1228:man-mana-ca20b4d0dc0037dbb9c44f4e58377fd5a5fcfa15-administer_database";a:3:{i:0;R:23030;i:1;R:21162;i:2;R:22678;}s:75:"1228:man-mana-d737dbc3864297e1e1c3d0cad50e0e0752b816a0-administer_positions";a:3:{i:0;R:23030;i:1;R:21162;i:2;R:22678;}s:75:"1228:man-mana-6c81635e8d5812cb1ccfaf32eb5d5fe7989122c5-create_job_structure";a:3:{i:0;R:23030;i:1;R:21162;i:2;R:22678;}s:61:"1228:man-mana-4e077a88166a4b67a5feeda5fceff3d35b9b06ee-cadres";a:3:{i:0;R:23030;i:1;R:21162;i:2;R:22678;}s:74:"1228:man-mana-2e675eff1af4b130ab1371c290200f0c75d82c7f-job_classifications";a:3:{i:0;R:23030;i:1;R:21162;i:2;R:22678;}s:68:"1228:man-mana-7dbb87abe567e11fdf539c8fc544f5abbd6b1613-salary_grades";a:3:{i:0;R:23030;i:1;R:21162;i:2;R:22678;}s:59:"1228:man-mana-437736fdb5bb707abdc048483193c86b9a99983e-jobs";a:3:{i:0;R:23030;i:1;R:21162;i:2;R:22678;}s:71:"1228:man-mana-d7c4e614f01e4b376421f885fa0f485b028c8fe3-manage_positions";a:3:{i:0;R:23030;i:1;R:21162;i:2;R:22678;}s:69:"1228:man-mana-ab6550f849965f74a270675ebfca42d88848487d-salary_sources";a:3:{i:0;R:23030;i:1;R:21162;i:2;R:22678;}s:69:"1228:man-mana-d93859a4bd30e1b57af19ed881ff361191e4c819-position_types";a:3:{i:0;R:23030;i:1;R:21162;i:2;R:22678;}s:78:"1228:man-mana-f946f4251656f0e3a634a6da9f2055b3a2a541be-positions_(by_facility)";a:3:{i:0;R:23030;i:1;R:21162;i:2;R:22678;}s:76:"1228:man-mana-af89f606c5ea8dcde1a19589945cba7de4ba0f51-positions_(by_status)";a:3:{i:0;R:23030;i:1;R:21162;i:2;R:22678;}s:77:"1228:man-mana-95171929611ae2188fa87fa698149311469870f4-administer_other_lists";a:3:{i:0;R:23030;i:1;R:21162;i:2;R:22678;}s:73:"1228:man-mana-e7de7876c02c63c7ffec6db75fc284dcaefd6364-organization_lists";a:3:{i:0;R:23030;i:1;R:21162;i:2;R:22678;}s:68:"1228:man-mana-cedd5473b0139d68b4027ea6f118f9b2a01507f8-facility_type";a:3:{i:0;R:23030;i:1;R:21162;i:2;R:22678;}s:70:"1228:man-mana-62b96dabc5751eb5b049043581eba11bdb0fb3d8-office_facility";a:3:{i:0;R:23030;i:1;R:21162;i:2;R:22678;}s:65:"1228:man-mana-db40106a405135d4021c1efffb756063ccb2315f-department";a:3:{i:0;R:23030;i:1;R:21162;i:2;R:22678;}s:76:"1228:man-mana-1f19615dc870a4d1cce24031d122b06829e3158d-registration_councils";a:3:{i:0;R:23030;i:1;R:21162;i:2;R:22678;}s:69:"1228:man-mana-d79ea84c88a4a33dcfd7c5fdd672dc8f490402a4-employee_lists";a:3:{i:0;R:23030;i:1;R:21162;i:2;R:22678;}s:69:"1228:man-mana-4194e1fe65c196c62aed6eb58ac41d2ce0961a42-education_type";a:3:{i:0;R:23030;i:1;R:21162;i:2;R:22678;}s:61:"1228:man-mana-41c26b83b688d816cd49d60e0e2c8be032feacea-degree";a:3:{i:0;R:23030;i:1;R:21162;i:2;R:22678;}s:63:"1228:man-mana-89b86ab0e66f527166d98df92ddbcf5416ed58f6-language";a:3:{i:0;R:23030;i:1;R:21162;i:2;R:22678;}s:70:"1228:man-mana-a52ac6764bccdbf7fb5168c27d3db3db759e04c6-competency_type";a:3:{i:0;R:23030;i:1;R:21162;i:2;R:22678;}s:65:"1228:man-mana-05e59bb0ed360ac5cfcc85cdb8a3184e0442743f-competency";a:3:{i:0;R:23030;i:1;R:21162;i:2;R:22678;}s:76:"1228:man-mana-4193018f2e723fb8cc87a51535457bb114cdd240-competency_evaluation";a:3:{i:0;R:23030;i:1;R:21162;i:2;R:22678;}s:74:"1228:man-mana-662889e70bf828812cadf7ae57b39371090506a6-identification_type";a:3:{i:0;R:23030;i:1;R:21162;i:2;R:22678;}s:67:"1228:man-mana-d9e3530aa63705977a4cadd908155827f19083bd-benefit_type";a:3:{i:0;R:23030;i:1;R:21162;i:2;R:22678;}s:69:"1228:man-mana-e65f73600961af1c5a4703e1fa25d1c6274b41fd-marital_status";a:3:{i:0;R:23030;i:1;R:21162;i:2;R:22678;}s:76:"1228:man-mana-3b801bbcc88a3d1b1b3cca825a38a5f8762c5fd0-reasons_for_departure";a:3:{i:0;R:23030;i:1;R:21162;i:2;R:22678;}s:77:"1228:man-mana-69d108677cb1b54198dd200a3fafd79cb96131b2-geographic_information";a:3:{i:0;R:23030;i:1;R:21162;i:2;R:22678;}s:62:"1228:man-mana-d523ebbd10146cdfd39dee077f04c9d08468d0bc-country";a:3:{i:0;R:23030;i:1;R:21162;i:2;R:22678;}s:61:"1228:man-mana-0f217179940c6d89f5cb2c7002a58d91ab7286c1-region";a:3:{i:0;R:23030;i:1;R:21162;i:2;R:22678;}s:63:"1228:man-mana-c0cb139cce34769fb7ed9bafc15290e91cf7736c-district";a:3:{i:0;R:23030;i:1;R:21162;i:2;R:22678;}s:61:"1228:man-mana-60dee38933959dfdae71ec0ee78d9ddb94f8ba0e-county";a:3:{i:0;R:23030;i:1;R:21162;i:2;R:22678;}s:63:"1228:man-mana-e070de224434a2acd352b35cec46f34f9e08e1b2-currency";a:3:{i:0;R:23030;i:1;R:21162;i:2;R:22678;}s:82:"1228:man-mana-d2f78e3635ab2b2867dcafa740f2ce72571ae3b6-training_course_information";a:3:{i:0;R:23030;i:1;R:21162;i:2;R:22678;}s:82:"1228:man-mana-9cd2bdc9665299622d7471e2307073bd88e4ecd1-status_of_a_training_course";a:3:{i:0;R:23030;i:1;R:21162;i:2;R:22678;}s:85:"1228:man-mana-545950c7fb6a0d957647c8ea058269be08ec1c09-requestors_of_a_training_cours";a:3:{i:0;R:23030;i:1;R:21162;i:2;R:22678;}s:85:"1228:man-mana-388adc61672b73e322282ca93e55d58f46308073-evaluation_of_a_training_cours";a:3:{i:0;R:23030;i:1;R:21162;i:2;R:22678;}s:84:"1228:man-mana-a4ab8bf72051654f813b9a58c465077791bd7fc8-category_of_a_training_course";a:3:{i:0;R:23030;i:1;R:21162;i:2;R:22678;}s:75:"1228:man-mana-d38e9b888e8b481eeea6da394d506f30ddf68a32-training_institution";a:3:{i:0;R:23030;i:1;R:21162;i:2;R:22678;}s:70:"1228:man-mana-1c0e11f2af6a82c4017692b88380c8c081245793-training_funder";a:3:{i:0;R:23030;i:1;R:21162;i:2;R:22678;}s:82:"1228:man-mana-f558147548fa65a002d723a3f53ca7a2695de83c-continuing_education_course";a:3:{i:0;R:23030;i:1;R:21162;i:2;R:22678;}s:68:"1228:man-mana-b584d2730d3ffd197989d6809f8386709a33c6b9-search_people";a:3:{i:0;R:23030;i:1;R:21162;i:2;R:22678;}s:71:"1228:man-mana-683761b6cc1dee4a30cbbbe430745cc56b854306-search_positions";a:3:{i:0;R:23030;i:1;R:21162;i:2;R:22678;}s:84:"1228:man-mana-d3c6ae184d51668a4d111d9801d1595127342fcd-locate_any_person's_record_in";a:3:{i:0;R:23030;i:1;R:21162;i:2;R:22678;}s:85:"1228:man-mana-284bf9952a12f36b56d591e4d56315c4dd8a32cf-locate_any_position_in_the_sys";a:3:{i:0;R:23030;i:1;R:21162;i:2;R:22678;}s:85:"1228:man-mana-0a36068f42f73aee589ff1c8a7dcaaf7016019b6-to_track_a_person_in_the_datab";a:3:{i:0;R:23030;i:1;R:21162;i:2;R:22678;}s:85:"1228:man-mana-071ee43971c2f17cedb6b80c16bcfb45937f4015-to_track_a_person_in_the_datab";a:3:{i:0;R:23030;i:1;R:21162;i:2;R:22678;}s:85:"1228:man-mana-cd5b0994b040966b9ce8e6568e84912d6656caba-can_edit_some_organizational_d";a:3:{i:0;R:23030;i:1;R:21162;i:2;R:22678;}s:85:"1228:man-mana-54dd07c4441f7460ced748b5b526f0a8cd29024d-can_view_some_organizational_d";a:3:{i:0;R:23030;i:1;R:21162;i:2;R:22678;}s:85:"1228:man-mana-9032aa5fdcebb740c3f4a611d77dc089006e606c-can_edit_all_organizational_da";a:3:{i:0;R:23030;i:1;R:21162;i:2;R:22678;}s:85:"1228:man-mana-cd339d19e45c1b70cec1114a79161785f34daf39-can_view_all_organizational_da";a:3:{i:0;R:23030;i:1;R:21162;i:2;R:22678;}s:85:"1228:man-mana-daa3c8479bc128d98beba1487f28b801451daf9e-can_edit_some_employee_databas";a:3:{i:0;R:23030;i:1;R:21162;i:2;R:22678;}s:85:"1228:man-mana-024e0a3ebafdeb6116f071761d237312f7e4f07c-can_view_some_employee_databas";a:3:{i:0;R:23030;i:1;R:21162;i:2;R:22678;}s:85:"1228:man-mana-b8b0fd4fd328954f7d47013135935ae0be8130a4-can_edit_all_employee_database";a:3:{i:0;R:23030;i:1;R:21162;i:2;R:22678;}s:85:"1228:man-mana-ae1e17ee42426f4ac157d42541babda9f7622be3-can_view_all_employee_database";a:3:{i:0;R:23030;i:1;R:21162;i:2;R:22678;}s:85:"1228:man-mana-10b198c70c3f09d8a70320ca780ca9a839a89761-can_edit_some_position_databas";a:3:{i:0;R:23030;i:1;R:21162;i:2;R:22678;}s:85:"1228:man-mana-b7cf009c450a3d2278ab143af5a38200f6ff2130-can_view_some_position_databas";a:3:{i:0;R:23030;i:1;R:21162;i:2;R:22678;}s:65:"1228:man-mana-9ff495c2fb7f251efd09739fedf8dba5deab2028-hr_manager";a:3:{i:0;R:23030;i:1;R:21162;i:2;R:22678;}s:63:"1228:man-mana-730562f10a388c47eae156e860be5e7cac866beb-hr_staff";a:3:{i:0;R:23030;i:1;R:21162;i:2;R:22678;}s:72:"1228:man-mana-1eb7dae8c31b33a36ce6d342cf3c4602eb0ce071-executive_manager";a:3:{i:0;R:23030;i:1;R:21162;i:2;R:22678;}s:71:"1228:man-mana-5bf3c8ab596e164181a2777f643ff176899d07f8-training_manager";a:3:{i:0;R:23030;i:1;R:21162;i:2;R:22678;}s:68:"1228:man-mana-083a7a6a0cebf7c804b75e3095d950b21aadc1ab-send_feedback";a:3:{i:0;R:23030;i:1;R:21162;i:2;R:22678;}s:73:"1228:man-mana-6f7483c446154770206ed9267e78cbdaf5f55ee6-add_passport_photo";a:3:{i:0;R:23030;i:1;R:21162;i:2;R:22678;}s:65:"1228:man-mana-725367512ef213f4cde671f95b6c0826f47cea93-add_resume";a:3:{i:0;R:23030;i:1;R:21162;i:2;R:22678;}s:83:"1228:man-mana-f497020b3c2938496b1b58279884991f3f9ac834-current_disciplinary_actions";a:3:{i:0;R:23030;i:1;R:21162;i:2;R:22678;}s:65:"1228:man-mana-6e206f1240ffbd405c10f8c397df6f18d68d07c2-new_action";a:3:{i:0;R:23030;i:1;R:21162;i:2;R:22678;}s:62:"1228:man-mana-90ccd6497400b5576aeca1bd94af74aae1e0a250-history";a:3:{i:0;R:23030;i:1;R:21162;i:2;R:22678;}s:74:"1228:man-mana-038a594c88c34c2671ae61bf8c1265e149e2c8a8-workplace_accidents";a:3:{i:0;R:23030;i:1;R:21162;i:2;R:22678;}s:70:"1228:man-mana-046681662260a6614eea12792ce6de12f0b6d114-report_accident";a:3:{i:0;R:23030;i:1;R:21162;i:2;R:22678;}s:81:"1228:man-mana-5da75b5988a46e2697a5547ef2882b812bbba984-scheduled_training_courses";a:3:{i:0;R:23030;i:1;R:21162;i:2;R:22678;}s:75:"1228:man-mana-7d21c82200c3f7d247b1391036136186d0719673-disciplinary_actions";a:3:{i:0;R:23030;i:1;R:21162;i:2;R:22678;}s:68:"1228:man-mana-924a5a25c6ec1a8567e1163a46fc08f981e23e5d-accident_type";a:3:{i:0;R:23030;i:1;R:21162;i:2;R:22678;}s:79:"1228:man-mana-f76413f7e78ae35c86c8f75d8ca8a0ee52f3070f-disciplinary_action_type";a:3:{i:0;R:23030;i:1;R:21162;i:2;R:22678;}s:75:"1228:man-mana-ef3306c70fcb71f9be7a7bae3859916cffa257be-standardized_letters";a:3:{i:0;R:23030;i:1;R:21162;i:2;R:22678;}s:76:"1228:man-mana-a54d8683e7c00ddcf16ef20b8fdbb256f8678952-dependent_information";a:3:{i:0;R:23030;i:1;R:21162;i:2;R:22678;}s:68:"1228:man-mana-e7eda8b1a9de85a53dc17ef4ee9eaf2da1d83054-add_dependent";a:3:{i:0;R:23030;i:1;R:21162;i:2;R:22678;}s:78:"1228:man-mana-46f86af69adab0edc06f76b6fd13432139bf19be-next_of_kin_information";a:3:{i:0;R:23030;i:1;R:21162;i:2;R:22678;}s:70:"1228:man-mana-fe433db348a1782550b86b312e8dff9321b1c7cd-add_next_of_kin";a:3:{i:0;R:23030;i:1;R:21162;i:2;R:22678;}s:85:"1228:man-mana-eead9b93db21cdd3f8741fd1a5569c8ae48fee86-can_edit_some_planning_databas";a:3:{i:0;R:23030;i:1;R:21162;i:2;R:22678;}s:85:"1228:man-mana-f0a51477a465130ac9d7161ab27ca2b27f3ac9a8-can_view_some_planning_databas";a:3:{i:0;R:23030;i:1;R:21162;i:2;R:22678;}s:85:"1228:man-mana-8d858c42587ffedc2d0d42ad58fb2cb7df773840-can_edit_all_planning_database";a:3:{i:0;R:23030;i:1;R:21162;i:2;R:22678;}s:85:"1228:man-mana-163a1e1c804ead78036094015b13a0f515f8d19b-can_view_all_planning_database";a:3:{i:0;R:23030;i:1;R:21162;i:2;R:22678;}s:75:"1228:man-mana-be09f7a2d047eee5f91b45f7fb0a929374058674-planning_information";a:3:{i:0;R:23030;i:1;R:21162;i:2;R:22678;}s:73:"1228:man-mana-e28b97fd2f4c0fec8d40c876f44f696618010194-establishment_type";a:3:{i:0;R:23030;i:1;R:21162;i:2;R:22678;}s:75:"1228:man-mana-e4e0c531f94cad05ffb1f5016d511f6bbcfd5a9b-establishment_period";a:3:{i:0;R:23030;i:1;R:21162;i:2;R:22678;}s:69:"1228:man-mana-9b2f630f8494991a34b7323707eab25833d930d7-establishments";a:3:{i:0;R:23030;i:1;R:21162;i:2;R:22678;}s:76:"1228:man-mana-1b79cccbe00ab34f7af0db06591d228d0b39cc46-scanned_paper_records";a:3:{i:0;R:23030;i:1;R:21162;i:2;R:22678;}s:75:"1228:man-mana-017a93f22e39ec01ab43dee9b7bec4d4ffb574e8-add_scanned_document";a:3:{i:0;R:23030;i:1;R:21162;i:2;R:22678;}s:73:"1228:man-mana-beec2133adc975ab6a5af7182b9263121802ecbe-confirmation_types";a:3:{i:0;R:23030;i:1;R:21162;i:2;R:22678;}s:79:"1228:man-mana-473154cd035d8829b0e17109bb2cf2e2afaf939e-confirmation_information";a:3:{i:0;R:23030;i:1;R:21162;i:2;R:22678;}s:68:"1228:man-mana-ceef8dfc43bd2302a4c7b4396aa1c9e8af582b46-record_status";a:3:{i:0;R:23030;i:1;R:21162;i:2;R:22678;}s:70:"1228:man-mana-7430e7fb1e2044f30e4f097ce34b2e7118ed966c-scanned_records";a:3:{i:0;R:23030;i:1;R:21162;i:2;R:22678;}s:81:"1228:man-mana-2553d09f452eb2bc51dad986c33149e8c414e14f-disciplinary_action_reason";a:3:{i:0;R:23030;i:1;R:21162;i:2;R:22678;}s:71:"1228:man-mana-6d28b877cb43ed7d34e6944d216f03b545712693-set_new_position";a:3:{i:0;R:23030;i:1;R:21162;i:2;R:22678;}s:67:"1228:man-masi-69df34044d254a614f34f33e64e8e76df0b2f1f5-ihris_manage";a:3:{i:0;s:21:"out-ihris-manage-masi";i:1;R:21162;i:2;R:22678;}s:65:"1228:man-masi-bcd7f4a21588655f07e3daf33242eb29623f69ba-welcome,_s";a:3:{i:0;R:23172;i:1;R:21162;i:2;R:22678;}s:85:"1228:man-masi-301be106f4b6e798da8a7f80e17f3a9f19f37333-to_get_started_using_ihris_man";a:3:{i:0;R:23172;i:1;R:21162;i:2;R:22678;}s:81:"1228:man-masi-12effc57535e4df25a67067a3d69596704454acd-hris_strengthening_website";a:3:{i:0;R:23172;i:1;R:21162;i:2;R:22678;}s:62:"1228:man-masi-ca4f9dcf204e2037bfe5884867bead98bd9cbaf8-welcome";a:3:{i:0;R:23172;i:1;R:21162;i:2;R:22678;}s:85:"1228:man-masi-c11507a523c15ae14ccff9b370c282960ee98d2a-is_a_human_resources_managemen";a:3:{i:0;R:23172;i:1;R:21162;i:2;R:22678;}s:85:"1228:man-masi-3489087bbdb399fbd4a12e60c24bdbedbbb64353-an_innovative_global_initiativ";a:3:{i:0;R:23172;i:1;R:21162;i:2;R:22678;}s:80:"1228:man-masi-0bde508d39103c97437e951ca98c2f02a4a60bdb-human_resource_management";a:3:{i:0;R:23172;i:1;R:21162;i:2;R:22678;}s:59:"1228:man-masi-70f8bb9a8a5393ef080507a89e4b98d139000d65-home";a:3:{i:0;R:23172;i:1;R:21162;i:2;R:22678;}s:59:"1228:man-masi-c47ae15370cfe1ed2781eedc1dc2547d12d9e972-help";a:3:{i:0;R:23172;i:1;R:21162;i:2;R:22678;}s:63:"1228:man-masi-c8d7677e19495f21da984fe4e2829b7ca91b27c7-feedback";a:3:{i:0;R:23172;i:1;R:21162;i:2;R:22678;}s:68:"1228:man-masi-baaaddcd0344827ae61c9a8ef34766d488dca737-ihris_website";a:3:{i:0;R:23172;i:1;R:21162;i:2;R:22678;}s:67:"1228:man-masi-e0338ce56169028e43a892f051621976f8a2d455-log_out_as_s";a:3:{i:0;R:23172;i:1;R:21162;i:2;R:22678;}s:75:"1228:man-masi-e067c82515e3ad40898a2e9ba074056f327e1947-ihris_manage_version";a:3:{i:0;R:23172;i:1;R:21162;i:2;R:22678;}s:83:"1228:man-masi-d22da675b52cf51269c8c2c82628719ed1926bab-thank_you_for_your_feedback.";a:3:{i:0;R:23172;i:1;R:21162;i:2;R:22678;}s:61:"1228:man-masi-63143b6f8007b98c53ca2149822777b3566f9241-return";a:3:{i:0;R:23172;i:1;R:21162;i:2;R:22678;}s:66:"1228:man-masi-a89ba47cb30af861cd7b919b5c0962d516faaab6-results_for";a:3:{i:0;R:23172;i:1;R:21162;i:2;R:22678;}s:69:"1228:man-masi-478dbb263cbdf399e1edcb66433ae0f03e6f9fca-privacy_policy";a:3:{i:0;R:23172;i:1;R:21162;i:2;R:22678;}s:85:"1228:man-masi-d4161b074c11bbcf046f3cabd88e8e1dfa37f212-._we_will_use_your_email_addre";a:3:{i:0;R:23172;i:1;R:21162;i:2;R:22678;}s:73:"1228:man-masi-41954b0719910dcaef689f5dd57ba6362c833a29-site_feedback_form";a:3:{i:0;R:23172;i:1;R:21162;i:2;R:22678;}s:63:"1228:man-masi-fce06e20e5f7f74aacccab40b59b75a56c8f7305-comments";a:3:{i:0;R:23172;i:1;R:21162;i:2;R:22678;}s:59:"1228:man-masi-709a23220f2c3d64d1e1d6d18c4d5280f8d82fca-name";a:3:{i:0;R:23172;i:1;R:21162;i:2;R:22678;}s:62:"1228:man-masi-7a1994999d181deea68e4304b3346e78f838ecb7-company";a:3:{i:0;R:23172;i:1;R:21162;i:2;R:22678;}s:60:"1228:man-masi-768e0c1c69573fb588f61f1308a015c11468e05f-title";a:3:{i:0;R:23172;i:1;R:21162;i:2;R:22678;}s:63:"1228:man-masi-973d438fe5d3cf552c5fcd3b2265fe9bff3d71c6-industry";a:3:{i:0;R:23172;i:1;R:21162;i:2;R:22678;}s:62:"1228:man-masi-d70f93df5e8f9b55be44fbeee9d203972e3383d4-address";a:3:{i:0;R:23172;i:1;R:21162;i:2;R:22678;}s:59:"1228:man-masi-4271627f4f0bef6104a95cca7bb21cda4d74503e-city";a:3:{i:0;R:23172;i:1;R:21162;i:2;R:22678;}s:69:"1228:man-masi-8b19f84098767ca9c68285f81a77d6c5cd992ab0-state_province";a:3:{i:0;R:23172;i:1;R:21162;i:2;R:22678;}s:66:"1228:man-masi-c7ac934cfaa9b50e25559321e48737eb6bc8d9d8-postal_code";a:3:{i:0;R:23172;i:1;R:21162;i:2;R:22678;}s:62:"1228:man-masi-d523ebbd10146cdfd39dee077f04c9d08468d0bc-country";a:3:{i:0;R:23172;i:1;R:21162;i:2;R:22678;}s:64:"1228:man-masi-fbadb22cc438ab6e67737bbc0c3b51ebe025bfb0-telephone";a:3:{i:0;R:23172;i:1;R:21162;i:2;R:22678;}s:58:"1228:man-masi-b67fad2e2edf27045555eadaf1e4a848ab242206-fax";a:3:{i:0;R:23172;i:1;R:21162;i:2;R:22678;}s:60:"1228:man-masi-84add5b2952787581cb9a8851eef63d1ec75d22b-email";a:3:{i:0;R:23172;i:1;R:21162;i:2;R:22678;}s:63:"1228:man-masi-45bd908df490edd79694ba0daff82fc092970b55-capacity";a:3:{i:0;R:23172;i:1;R:21162;i:2;R:22678;}s:59:"1228:man-masi-2d05d0f179ce47e1e637d115cb0c71e67b625762-plus";a:3:{i:0;R:23172;i:1;R:21162;i:2;R:22678;}s:85:"1228:man-masi-95c1682e7f3be2852e2cf57cdb03e37f27ea1fd2-if_you_have_a_bug_report,_prob";a:3:{i:0;R:23172;i:1;R:21162;i:2;R:22678;}s:78:"1228:man-pede-79032e7748e28ceacd8815135fe9232d4af79725-demographic_information";a:3:{i:0;s:21:"out-ihris-manage-pede";i:1;R:21162;i:2;R:22678;}s:76:"1228:man-pede-957cd1a44423bc735be244be158a79ad5e0affd6-edit_this_information";a:3:{i:0;R:23209;i:1;R:21162;i:2;R:22678;}s:78:"1228:man-pede-8f12a44b12f65ea43ddb4305154428ef1ac77771-update_this_information";a:3:{i:0;R:23209;i:1;R:21162;i:2;R:22678;}s:75:"1228:man-pede-2c7b830ecdd7748bf6c1a5676d15c7d93847fe77-number_of_dependents";a:3:{i:0;R:23209;i:1;R:21162;i:2;R:22678;}s:63:"1228:man-pepo-cf1c85adba548e8d681255278976584a7e4a44de-position";a:3:{i:0;s:21:"out-ihris-manage-pepo";i:1;R:21162;i:2;R:22678;}s:85:"1228:man-pepo-fe0552648ba67a00747dc5ad0f23c43801b9f428-enter_new_status_for_the_posit";a:3:{i:0;R:23214;i:1;R:21162;i:2;R:22678;}s:80:"1228:man-pepo-8db4cf6cdadd672e468b41b704d8bb86ecf4f020-discontinue_this_position";a:3:{i:0;R:23214;i:1;R:21162;i:2;R:22678;}s:76:"1228:man-pepo-957cd1a44423bc735be244be158a79ad5e0affd6-edit_this_information";a:3:{i:0;R:23214;i:1;R:21162;i:2;R:22678;}s:79:"1228:man-pepo-75e9654bae0ad91a9dc163d5210be416cd0dd323-correct_this_information";a:3:{i:0;R:23214;i:1;R:21162;i:2;R:22678;}s:68:"1228:man-pepo-0f8f6c14aba1ef129854aecc20e74caefb19f38a-salary_change";a:3:{i:0;R:23214;i:1;R:21162;i:2;R:22678;}s:61:"1228:man-pepo-595a803cf39dd4bdd8d61e9b78611b1a67f798c5-salary";a:3:{i:0;R:23214;i:1;R:21162;i:2;R:22678;}s:77:"1228:man-pepo-d30d14190ed6f7092950e11bb8b8db4b759e1639-percent_of_market_rate";a:3:{i:0;R:23214;i:1;R:21162;i:2;R:22678;}s:61:"1228:man-pepo-63143b6f8007b98c53ca2149822777b3566f9241-return";a:3:{i:0;R:23214;i:1;R:21162;i:2;R:22678;}s:75:"1228:man-pepo-be4ee11e9af582f0f4df43e93b20ec520a6669c0-supervised_positions";a:3:{i:0;R:23214;i:1;R:21162;i:2;R:22678;}s:73:"1228:man-pepo-39c49cebaa328601190bb093c71a9e6a8b1da976-open_this_position";a:3:{i:0;R:23214;i:1;R:21162;i:2;R:22678;}s:66:"1228:man-pepo-65f7eaaccad87973ba0d31c6e41009b58330b43f-edit_salary";a:3:{i:0;R:23214;i:1;R:21162;i:2;R:22678;}s:64:"1228:man-pepo-cd4683fadf7005eca07e4d6267ddbb19ebcb91fa-positions";a:3:{i:0;R:23214;i:1;R:21162;i:2;R:22678;}s:65:"1228:man-pepo-9befcb40bf93f2a3862b38a26fddeff6beb17c97-new_salary";a:3:{i:0;R:23214;i:1;R:21162;i:2;R:22678;}s:69:"1228:man-pepo-feac84995ef6b7a01b0514160b02e2d984e12161-current_salary";a:3:{i:0;R:23214;i:1;R:21162;i:2;R:22678;}s:67:"1228:man-pepo-8f6abede272246c4e7983a154b5bea074ee4cd2f-add_a_salary";a:3:{i:0;R:23214;i:1;R:21162;i:2;R:22678;}s:66:"1228:man-pepo-54d6fa84d3c2a435bbdad934280477853e77cbe5-no_salaries";a:3:{i:0;R:23214;i:1;R:21162;i:2;R:22678;}s:78:"1228:man-pepo-8f12a44b12f65ea43ddb4305154428ef1ac77771-update_this_information";a:3:{i:0;R:23214;i:1;R:21162;i:2;R:22678;}s:80:"1228:man-pepo-798174d8b22956d9be969763e338d66c32c757c9-select_another_department";a:3:{i:0;R:23214;i:1;R:21162;i:2;R:22678;}s:65:"1228:man-pepo-db40106a405135d4021c1efffb756063ccb2315f-department";a:3:{i:0;R:23214;i:1;R:21162;i:2;R:22678;}s:68:"1228:man-pepo-17f7f9234f695d046ac692cd4dcf821a37b2e0ee-view_position";a:3:{i:0;R:23214;i:1;R:21162;i:2;R:22678;}s:75:"1228:man-pepo-f18eb66d997b2cfefa36eeb32105e0e552c41c36-position_information";a:3:{i:0;R:23214;i:1;R:21162;i:2;R:22678;}s:59:"1228:man-pepo-34d8b60fe25332f7b98585e82e753eaf502c3e50-hide";a:3:{i:0;R:23214;i:1;R:21162;i:2;R:22678;}s:78:"1228:man-pepo-621938ce04685b5e95c2c4f74520ca603a1e546a-select_another_position";a:3:{i:0;R:23214;i:1;R:21162;i:2;R:22678;}s:83:"1228:man-pepo-70567aab8257192cf536bc708b6696d6e26ced95-select_another_position_type";a:3:{i:0;R:23214;i:1;R:21162;i:2;R:22678;}s:68:"1228:man-pepo-9cdc07ce973ffec3c9a41b5cdddefe9c64525110-position_type";a:3:{i:0;R:23214;i:1;R:21162;i:2;R:22678;}s:83:"1228:man-pepo-a65dbedd428355113ef661bfbfe584d931d5e74f-return_(do_not_save_changes)";a:3:{i:0;R:23214;i:1;R:21162;i:2;R:22678;}s:65:"1228:man-pepo-9d7ab1a557965be0eae6205c2d860c45a3eafc11-start_date";a:3:{i:0;R:23214;i:1;R:21162;i:2;R:22678;}s:70:"1228:man-pepo-ca37a2ad08187c70bada967ed351f13212e09acc-   _end_date";a:3:{i:0;R:23214;i:1;R:21162;i:2;R:22678;}s:74:"1228:man-pepo-43d4c4f832a717e6528500ef647e4a20a7a789f8-view_salary_history";a:3:{i:0;R:23214;i:1;R:21162;i:2;R:22678;}s:67:"1228:man-pepo-a8a08b39323eb79670475a043363722945d3c224-new_position";a:3:{i:0;R:23214;i:1;R:21162;i:2;R:22678;}s:71:"1228:man-pepo-959e8f40a058403cc14ce8750a4a374a3e42c5b5-current_position";a:3:{i:0;R:23214;i:1;R:21162;i:2;R:22678;}s:85:"1228:man-pepo-8e2d0d6390a2e5cdc18d4d23ca9c7e2da9031d3c-enter_new_status_for_the_curre";a:3:{i:0;R:23214;i:1;R:21162;i:2;R:22678;}s:73:"1228:man-pepo-672626f10674a8a5322c071944d75aa1471c77e3-record_a_departure";a:3:{i:0;R:23214;i:1;R:21162;i:2;R:22678;}s:70:"1228:man-pepo-69e60b7dd92d2f96dc4504b59eae040d380cdc10-change_position";a:3:{i:0;R:23214;i:1;R:21162;i:2;R:22678;}s:76:"1228:man-pepo-5cbe83ae4abbbd01f640ae39ab53a38f59f5e3d1-view_position_history";a:3:{i:0;R:23214;i:1;R:21162;i:2;R:22678;}s:66:"1228:man-pepo-9c6e28513f2c6f63ad0349bb55ca3ae19a5c6ba2-view_person";a:3:{i:0;R:23214;i:1;R:21162;i:2;R:22678;}s:73:"1228:man-pepo-510910cb11e36ba211316a76462f64002a8ded3b-position_filled_by";a:3:{i:0;R:23214;i:1;R:21162;i:2;R:22678;}s:85:"1228:man-pepo-f5484868200cfea272bea1790f84d4f60e6192c6-select_another_reason_for_depa";a:3:{i:0;R:23214;i:1;R:21162;i:2;R:22678;}s:75:"1228:man-pepo-ce612bb997cbb84f5b8cad7226216a0f4ea22c7f-reason_for_departure";a:3:{i:0;R:23214;i:1;R:21162;i:2;R:22678;}s:79:"1228:man-pepo-cf241bd9f6017ae96ad6ce5d0c42c3729f43124c-edit_the_department_list";a:3:{i:0;R:23214;i:1;R:21162;i:2;R:22678;}s:79:"1228:man-pepo-0ab2d9ed04725c258d7a465a5519f7f436b2ab11-view_the_department_list";a:3:{i:0;R:23214;i:1;R:21162;i:2;R:22678;}s:82:"1228:man-pepo-aaf53db121a95bbb795c050383e937487093f980-edit_the_position_type_list";a:3:{i:0;R:23214;i:1;R:21162;i:2;R:22678;}s:82:"1228:man-pepo-128cae55c4ac679d544b6483aa8dc2a6fdb0f208-view_the_position_type_list";a:3:{i:0;R:23214;i:1;R:21162;i:2;R:22678;}s:77:"1228:man-pepo-bf3ee629d63a3094ae6bbbbdb691ca45f41983b6-edit_the_position_list";a:3:{i:0;R:23214;i:1;R:21162;i:2;R:22678;}s:77:"1228:man-pepo-1c3e0e8951dade56fc2c36f1b05ff487e65c49cc-view_the_position_list";a:3:{i:0;R:23214;i:1;R:21162;i:2;R:22678;}s:85:"1228:man-pepo-30e0e8af78f8f52a2be26b18b1a3f55518eab402-edit_the_pos_change_reason_lis";a:3:{i:0;R:23214;i:1;R:21162;i:2;R:22678;}s:85:"1228:man-pepo-e92fb888573e8d72afe95ebeedbdbcb4fc8dd247-view_the_pos_change_reason_lis";a:3:{i:0;R:23214;i:1;R:21162;i:2;R:22678;}s:85:"1228:man-pepo-4bf412b3c7ba52daca2a1190c84f30d009679c68-can_edit_some_information_abou";a:3:{i:0;R:23214;i:1;R:21162;i:2;R:22678;}s:85:"1228:man-pepo-7611bfc0d14c0659d84b16d06e53ce0e59b0cf76-can_view_some_information_abou";a:3:{i:0;R:23214;i:1;R:21162;i:2;R:22678;}s:85:"1228:man-pepo-8f4ffcafdc7f6e5a16fdc7a478026a6b5f9be2ae-can_edit_all_information_about";a:3:{i:0;R:23214;i:1;R:21162;i:2;R:22678;}s:85:"1228:man-pepo-35d2f6aef69ed0df4a538796ac32ac4c1b5b6fa6-can_view_all_information_about";a:3:{i:0;R:23214;i:1;R:21162;i:2;R:22678;}s:85:"1228:man-pepo-e59cdc14208ab928b4a69931b95ce78d877912de-can_edit_the_position_of_a_per";a:3:{i:0;R:23214;i:1;R:21162;i:2;R:22678;}s:85:"1228:man-pepo-af4f4c54f0674311303d92578f1d0dd0d9d5b496-can_view_the_position_of_a_per";a:3:{i:0;R:23214;i:1;R:21162;i:2;R:22678;}s:85:"1228:man-pepo-e7a3c8989fe15fbef0aee35b0dba9ed9eff426f8-can_change_the_existing_positi";a:3:{i:0;R:23214;i:1;R:21162;i:2;R:22678;}s:85:"1228:man-pepo-c9cfb9126fa83a46b555c0f28883d240fb28d421-can_edit_the_salary_of_a_perso";a:3:{i:0;R:23214;i:1;R:21162;i:2;R:22678;}s:85:"1228:man-pepo-8d26fa8c6602dcd4a45866f529bdf6cbb32884e3-can_delete_the_salary_of_a_per";a:3:{i:0;R:23214;i:1;R:21162;i:2;R:22678;}s:84:"1228:man-pepo-1a8785fdc71f0b07f3a25d6d247881124cbd797d-can_change_an_existing_salary";a:3:{i:0;R:23214;i:1;R:21162;i:2;R:22678;}s:85:"1228:man-pepo-fb2b0fc3d5835acae6f4f8cccf5679acbb7bbe72-can_view_an_existing_salary_of";a:3:{i:0;R:23214;i:1;R:21162;i:2;R:22678;}s:85:"1228:man-pepo-91a27a27811680dd6863ff7aebf6daf7a0793a44-can_view_the_salary_of_a_perso";a:3:{i:0;R:23214;i:1;R:21162;i:2;R:22678;}s:59:"1228:man-pepo-cf9b77061f7b3126b49d50a6fa68f7ca8c26b7a3-open";a:3:{i:0;R:23214;i:1;R:21162;i:2;R:22678;}s:61:"1228:man-pepo-88d86b7721d587644e9c4cf33a084202cb3b0ff0-closed";a:3:{i:0;R:23214;i:1;R:21162;i:2;R:22678;}s:67:"1228:man-pepo-210aade460e54dff4203b70e6ae962f334379ddc-discontinued";a:3:{i:0;R:23214;i:1;R:21162;i:2;R:22678;}s:71:"1228:man-pepo-d63403c515ef6fd95e4819d96be31ce097cee49c-make_a_job_offer";a:3:{i:0;R:23214;i:1;R:21162;i:2;R:22678;}s:68:"1228:man-pepo-90312b499e8a32258a6890e6dafdb3a9264cad4c-edit_position";a:3:{i:0;R:23214;i:1;R:21162;i:2;R:22678;}s:69:"1228:man-pepo-f6ce559de635fc4d23d293290fd9a4786825f2a2-salary_history";a:3:{i:0;R:23214;i:1;R:21162;i:2;R:22678;}s:70:"1228:man-pepo-80f90fcac6568fe8dcd7cbfb8d74049321e2ed41-person_position";a:3:{i:0;R:23214;i:1;R:21162;i:2;R:22678;}s:85:"1228:man-pepo-7f34c5fe3c8fcdc7b1a92ca6100d18694d367e79-this_form_is_used_to_link_a_pe";a:3:{i:0;R:23214;i:1;R:21162;i:2;R:22678;}s:76:"1228:man-pepo-3b801bbcc88a3d1b1b3cca825a38a5f8762c5fd0-reasons_for_departure";a:3:{i:0;R:23214;i:1;R:21162;i:2;R:22678;}s:70:"1228:man-pepo-0963c9685e3bb93f790496999a887972198c5e93-position_status";a:3:{i:0;R:23214;i:1;R:21162;i:2;R:22678;}s:59:"1228:man-pepo-709a23220f2c3d64d1e1d6d18c4d5280f8d82fca-name";a:3:{i:0;R:23214;i:1;R:21162;i:2;R:22678;}s:63:"1228:man-pepo-84b1478125890bad1cc4b36d6d3781773b3fde5a-end_date";a:3:{i:0;R:23214;i:1;R:21162;i:2;R:22678;}s:68:"1228:man-pepo-15b8285f791f2bd6fe8fb4798cbd9d678a098a78-position_code";a:3:{i:0;R:23214;i:1;R:21162;i:2;R:22678;}s:58:"1228:man-pepo-30c8cb83b9acd93beaa32086336c36cb77c065d9-job";a:3:{i:0;R:23214;i:1;R:21162;i:2;R:22678;}s:69:"1228:man-pepo-11a5bf1ef7367f3f3ebf698f477e15e265ae7fd5-position_title";a:3:{i:0;R:23214;i:1;R:21162;i:2;R:22678;}s:75:"1228:man-pepo-c656ea6ebef01af2656d836980d52ab95d2784ae-position_description";a:3:{i:0;R:23214;i:1;R:21162;i:2;R:22678;}s:70:"1228:man-pepo-69f25ff6f3b6ebce25ba7a7ab295296e5ec4cda5-proposed_salary";a:3:{i:0;R:23214;i:1;R:21162;i:2;R:22678;}s:61:"1228:man-pepo-6da13addb000b67d42a6d66391713819e634149f-source";a:3:{i:0;R:23214;i:1;R:21162;i:2;R:22678;}s:65:"1228:man-pepo-2cd4fa195ed5b220930149c31cc72fbb131921db-supervisor";a:3:{i:0;R:23214;i:1;R:21162;i:2;R:22678;}s:63:"1228:man-pepo-cd4d0c5e1409ec6b001818e92900d4076f54ae88-facility";a:3:{i:0;R:23214;i:1;R:21162;i:2;R:22678;}s:75:"1228:man-pepo-490ae8e24631037f6014d973b9e3aa2a31f6b7ef-proposed_hiring_date";a:3:{i:0;R:23214;i:1;R:21162;i:2;R:22678;}s:66:"1228:man-pepo-2a3546efc0cb97c1419e99919e3e395e692f0607-date_posted";a:3:{i:0;R:23214;i:1;R:21162;i:2;R:22678;}s:61:"1228:man-pepo-bae7d5be70820ed56467bd9a63744e23b47bd711-status";a:3:{i:0;R:23214;i:1;R:21162;i:2;R:22678;}s:72:"1228:man-pepo-96c859498654bd61b9194844cb7200541f512927-position_comments";a:3:{i:0;R:23214;i:1;R:21162;i:2;R:22678;}s:73:"1228:man-pepo-753b6da7a894389f4b9537b47811d758f1080059-interview_comments";a:3:{i:0;R:23214;i:1;R:21162;i:2;R:22678;}s:84:"1228:man-pepo-e295160b58cc382f41d91ab3742945dbd426e584-standardized_position_letters";a:3:{i:0;R:23214;i:1;R:21162;i:2;R:22678;}s:62:"1228:man-pepo-04a212215ef9fbf686d280802eb81ee7a6e681cd-confirm";a:3:{i:0;R:23214;i:1;R:21162;i:2;R:22678;}s:79:"1228:man-regi-3a4403dfd26dc642898ad392559281b061a5634e-registration_information";a:3:{i:0;s:21:"out-ihris-manage-regi";i:1;R:21162;i:2;R:22678;}s:74:"1228:man-regi-6e1e47cced59124235d8548b6b3d52383754ed73-license_information";a:3:{i:0;R:23302;i:1;R:21162;i:2;R:22678;}s:76:"1228:man-regi-957cd1a44423bc735be244be158a79ad5e0affd6-edit_this_information";a:3:{i:0;R:23302;i:1;R:21162;i:2;R:22678;}s:78:"1228:man-regi-8f12a44b12f65ea43ddb4305154428ef1ac77771-update_this_information";a:3:{i:0;R:23302;i:1;R:21162;i:2;R:22678;}s:85:"1228:man-regi-46b60baededeacd88ad957a2e7af856e004d4813-registration_license_informati";a:3:{i:0;R:23302;i:1;R:21162;i:2;R:22678;}s:85:"1228:man-regi-d61e5e410a136f9d3f1fac6d6e8c88f979e0c985-select_another_registration_co";a:3:{i:0;R:23302;i:1;R:21162;i:2;R:22678;}s:75:"1228:man-regi-038f17d1dc27dd71fe2d298706c7a21441e43232-registration_council";a:3:{i:0;R:23302;i:1;R:21162;i:2;R:22678;}s:85:"1228:man-regi-c96762cf8db452e511632d1131cc6508f6513279-can_view_registration_child_fo";a:3:{i:0;R:23302;i:1;R:21162;i:2;R:22678;}s:85:"1228:man-regi-f8f61e30517ad9ccb7a616190c523ed0dd0e3aff-can_edit_registration_child_fo";a:3:{i:0;R:23302;i:1;R:21162;i:2;R:22678;}s:84:"1228:man-regi-dab5d44371248372b091d37beec17f5061039ee2-can_edit_the_council_database";a:3:{i:0;R:23302;i:1;R:21162;i:2;R:22678;}s:84:"1228:man-regi-d35a78840a10fe7c87ef33243f4cf4a205d44b15-can_view_the_council_database";a:3:{i:0;R:23302;i:1;R:21162;i:2;R:22678;}s:78:"1228:man-regi-9c25be027fb3d72075b92739463b535658528a7d-add_update_registration";a:3:{i:0;R:23302;i:1;R:21162;i:2;R:22678;}s:62:"1228:man-regi-ec9b1fff7dcdc8cc50df95e351a597c88f762e75-council";a:3:{i:0;R:23302;i:1;R:21162;i:2;R:22678;}s:67:"1228:man-regi-b233e775d63bb8b86cf031776d4caea613f59cda-registration";a:3:{i:0;R:23302;i:1;R:21162;i:2;R:22678;}s:74:"1228:man-regi-1da775087104510f18021de3ce98227ec4fe0315-registration_number";a:3:{i:0;R:23302;i:1;R:21162;i:2;R:22678;}s:69:"1228:man-regi-1d5971eb658d8f9dd3502f9b1a761cb73ad91869-license_number";a:3:{i:0;R:23302;i:1;R:21162;i:2;R:22678;}s:72:"1228:man-regi-e68df6d34aea0b889fd634dbc28ae13e29c6e254-registration_date";a:3:{i:0;R:23302;i:1;R:21162;i:2;R:22678;}s:78:"1228:man-regi-923265de56f8de57099e983941f7ae78144ae8a5-license_expiration_date";a:3:{i:0;R:23302;i:1;R:21162;i:2;R:22678;}s:76:"1228:man-sala-957cd1a44423bc735be244be158a79ad5e0affd6-edit_this_information";a:3:{i:0;s:21:"out-ihris-manage-sala";i:1;R:21162;i:2;R:22678;}s:78:"1228:man-sala-8f12a44b12f65ea43ddb4305154428ef1ac77771-update_this_information";a:3:{i:0;R:23321;i:1;R:21162;i:2;R:22678;}s:83:"1228:man-sala-2e438b98ec671e533cea80ac7f2821da0ff4543f-select_another_salary_source";a:3:{i:0;R:23321;i:1;R:21162;i:2;R:22678;}s:68:"1228:man-sala-ee3dbf7d489990bc8a2bb778a5811de965f28252-salary_source";a:3:{i:0;R:23321;i:1;R:21162;i:2;R:22678;}s:82:"1228:man-sala-4192e74c97c69508bd79984fb664a8afbb7bbdde-edit_the_salary_source_list";a:3:{i:0;R:23321;i:1;R:21162;i:2;R:22678;}s:82:"1228:man-sala-ec171d87f0377fb1d3cae59a62047724ab9b9a21-view_the_salary_source_list";a:3:{i:0;R:23321;i:1;R:21162;i:2;R:22678;}s:61:"1228:man-sala-595a803cf39dd4bdd8d61e9b78611b1a67f798c5-salary";a:3:{i:0;R:23321;i:1;R:21162;i:2;R:22678;}s:65:"1228:man-sala-9d7ab1a557965be0eae6205c2d860c45a3eafc11-start_date";a:3:{i:0;R:23321;i:1;R:21162;i:2;R:22678;}s:63:"1228:man-sala-84b1478125890bad1cc4b36d6d3781773b3fde5a-end_date";a:3:{i:0;R:23321;i:1;R:21162;i:2;R:22678;}s:60:"1228:man-sala-70440046a3dc2e079f23ee1c57dfa76669b732aa-notes";a:3:{i:0;R:23321;i:1;R:21162;i:2;R:22678;}s:67:"1228:qua-core-2d1655fda5449ee91536b245df9d20576a7d56c6-index_number";a:3:{i:0;s:22:"out-ihris-qualify-core";i:1;R:21162;i:2;s:23:"out-ihris-qualify-0-all";}s:74:"1228:qua-core-1da775087104510f18021de3ce98227ec4fe0315-registration_number";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:69:"1228:qua-core-1d5971eb658d8f9dd3502f9b1a761cb73ad91869-license_number";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:77:"1228:qua-core-0474d22ea4894acd04ee5d77b5587301c77e6415-individual_information";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:74:"1228:qua-core-a34b69fc46e7a278cf65c58bb347de6560fb046f-contact_information";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:75:"1228:qua-core-020f5d187f4203c2350f0522502659a988fa94a9-training_information";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:65:"1228:qua-core-327a55f82dc6818877a68e37b722bb7f2360b633-deployment";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:68:"1228:qua-core-73136d0d0fe4abba8cb1a645712983e191d58061-out_migration";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:60:"1228:qua-core-70440046a3dc2e079f23ee1c57dfa76669b732aa-notes";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:71:"1228:qua-core-c7e518207b660225550b3c8aabe8f7b729cc97df-add_registration";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:76:"1228:qua-core-957cd1a44423bc735be244be158a79ad5e0affd6-edit_this_information";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:78:"1228:qua-core-8f12a44b12f65ea43ddb4305154428ef1ac77771-update_this_information";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:63:"1228:qua-core-c0cb139cce34769fb7ed9bafc15290e91cf7736c-district";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:59:"1228:qua-core-709a23220f2c3d64d1e1d6d18c4d5280f8d82fca-name";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:62:"1228:qua-core-d523ebbd10146cdfd39dee077f04c9d08468d0bc-country";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:61:"1228:qua-core-0f217179940c6d89f5cb2c7002a58d91ab7286c1-region";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:74:"1228:qua-core-18b82c4555d19dd120090e7e706ed5a99bdb141e-disciplinary_action";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:81:"1228:qua-core-2553d09f452eb2bc51dad986c33149e8c414e14f-disciplinary_action_reason";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:85:"1228:qua-core-92751db547bb5d752794ad589b4ad555ea13ccbc-date_disciplinary_action_occur";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:73:"1228:qua-core-808f9364949b9b057be72a1bd6cc91e73f163aad-reinstatement_date";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:66:"1228:qua-core-702852a3b282bcdf2fc2c70d7d8776c6944607c5-view_record";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:74:"1228:qua-core-6e1e47cced59124235d8548b6b3d52383754ed73-license_information";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:65:"1228:qua-core-32fd5c48740e602785573788604514d09742c430-suspended?";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:65:"1228:qua-core-9d7ab1a557965be0eae6205c2d860c45a3eafc11-start_date";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:63:"1228:qua-core-84b1478125890bad1cc4b36d6d3781773b3fde5a-end_date";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:66:"1228:qua-core-4a5e4ab277b1254fcce1760f71b0cb29ac62606a-intake_date";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:70:"1228:qua-core-d8d595839cd9207b4f673463a5eba6f92e566335-graduation_date";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:83:"1228:qua-core-c6403d1793d30d3f0491d4219c8bff5334920530-training_disruption_category";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:69:"1228:qua-core-80ccd3be32dd7b1097796b4b562c88abf08a3526-academic_level";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:79:"1228:qua-core-3a4403dfd26dc642898ad392559281b061a5634e-registration_information";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:71:"1228:qua-core-ff7a21fa4f2ca4d56c28c82df0bd830cd8e9cd74-application_date";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:72:"1228:qua-core-e68df6d34aea0b889fd634dbc28ae13e29c6e254-registration_date";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:68:"1228:qua-core-23e0e8a4f2b48c6862813b79a595e5b05c1186ff-practice_type";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:76:"1228:qua-core-39b32aed4fb10e4a878cfd64185b970c08a66dd4-education_information";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:76:"1228:qua-core-8a7caf9bb13b946e9c0a2753b588262b5628af9e-secondary_school_name";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:66:"1228:qua-core-10de46b3b341b6f837cf6d72972b9bf2b3f6e491-certificate";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:69:"1228:qua-core-d49c7ca9af89534125b4363e551ce7ad6afea682-grade_obtained";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:73:"1228:qua-core-85a8d6551306588e40a9a38d095edc25dd897f66-certificate_number";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:77:"1228:qua-core-3d5dd46d7ffe922b13649a611ccf730e0a7946d0-record_discontinuation";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:74:"1228:qua-core-fe1e44fdcdbaaaae2428f4e8e1d82779b6ebe0ec-program_information";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:71:"1228:qua-core-aef48e41803e09863a1867d0b7c6cafbe9c82fe5-date_information";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:60:"1228:qua-core-2586a9e4e3ba9092547e3eac14e105c5ffbda37b-cadre";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:73:"1228:qua-core-a3dc386f5f06a8e2f08ff0986aec1d958ac1db2a-number_of_students";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:79:"1228:qua-core-75e9654bae0ad91a9dc163d5210be416cd0dd323-correct_this_information";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:67:"1228:qua-core-b233e775d63bb8b86cf031776d4caea613f59cda-registration";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:70:"1228:qua-core-bff6e62a5dbecb7b018af12eb614b53ef23f3cd9-resume_training";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:83:"1228:qua-core-a65dbedd428355113ef661bfbfe584d931d5e74f-return_(do_not_save_changes)";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:68:"1228:qua-core-e23f50099c6802bec3679acfcc5cfb3048a6f614-renew_license";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:75:"1228:qua-core-47a48994ba66283f8eddb4fef1fa06446ee4cc2c-view_license_history";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:78:"1228:qua-core-a6a394db76997c3e55cc734b0856195086dfb966-add_new_health_facility";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:66:"1228:qua-core-9c6e28513f2c6f63ad0349bb55ca3ae19a5c6ba2-view_person";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:59:"1228:qua-core-34d8b60fe25332f7b98585e82e753eaf502c3e50-hide";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:73:"1228:qua-core-d5bea389126e1910f2a6137983a05eef50e07365-add_identification";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:72:"1228:qua-core-244e3e85d6d93e7f2371f153711807c17e45c44a-view_name_history";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:71:"1228:qua-core-14ff2b6100bb4fe92eb1c4d833d7d5bbd5c81082-name_nationality";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:67:"1228:qua-core-35cca40d3e7a24278fff49f099c17654c52578cf-add_training";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:77:"1228:qua-core-ccd52a1c20b3c0b87584fed82c51a434ee407f9e-deployment_information";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:69:"1228:qua-core-edaec3b44e0797bd41b869177675f32d24188bfd-add_deployment";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:78:"1228:qua-core-c7b91bbcc00c097d0c10f00bc984fcda7434d7fb-view_deployment_history";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:80:"1228:qua-core-e73798b046b4cc6487634941ecad5a9228bc31ca-out_migration_information";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:72:"1228:qua-core-2a828507d11ce8a5326d355fde1c10716635352b-add_out_migration";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:63:"1228:qua-core-8b851bdab36a811b6e6416e9bb1952c372bc9bd8-add_note";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:78:"1228:qua-core-79032e7748e28ceacd8815135fe9232d4af79725-demographic_information";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:69:"1228:qua-core-e65f73600961af1c5a4703e1fa25d1c6274b41fd-marital_status";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:84:"1228:qua-core-528b4b8ea86fa873641dc0e62e40be5f27a785ba-administer_database_associate";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:75:"1228:qua-core-dae14f8f08b68e01acf768c45a84ff58b35efd4d-continuing_education";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:71:"1228:qua-core-dd7f05fec6d14b4642a9c264b4c6369415f18643-private_practice";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:74:"1228:qua-core-36a20cd24f05b598108de0660d671cb8d8aab41a-disciplinary_notice";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:71:"1228:qua-core-f333a6253c630b667ea6aa208c318ba4763c5129-return_to_person";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:82:"1228:qua-core-342759176706468b806066a69ed1f01bcfb9a9d6-add_demographic_information";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:61:"1228:qua-core-60dee38933959dfdae71ec0ee78d9ddb94f8ba0e-county";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:78:"1228:qua-core-ffb203b1986c5788e6bd51fcd535b553e780ff04-add_disciplinary_notice";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:74:"1228:qua-core-6e973372c00e2ccb94ad1644a04be9f9dc57d6ef-training_disruption";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:72:"1228:qua-core-58ea12bace1d85277eb8535fdeceaed7ef9c6895-disruption_reason";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:70:"1228:qua-core-f06cd2d08a66c2f5706e0d5006a539f481e2dd86-disruption_date";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:70:"1228:qua-core-aa9b51e9ce64855aa673490edef9aa35c7a50a5c-resumption_date";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:70:"1228:qua-core-a00832768154f5ac7b00f4d2c85ba2b4802fd1f7-health_facility";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:70:"1228:qua-core-a52f08d37a46d05c00832f802367af72fdff0f6f-deployment_date";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:69:"1228:qua-core-305c15ba5036b54df44a204b25dd8e5a47360292-job_post_title";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:68:"1228:qua-core-28648f1dfda1c0a12477466ab95115bf2901d7c8-job_post_code";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:75:"1228:qua-core-e21f0c63af5a690523b9f5745a354b611b13f691-job_post_information";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:72:"1228:qua-core-796cc76c7a1fafcc708fee804247b4646e549af6-add_update_person";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:75:"1228:qua-core-ad12e4228cccee1d10c5b8de2aa28c286efaaf96-personal_information";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:71:"1228:qua-core-e4d2942db996b00783c4df8edc1b4985d24d7671-training_program";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:68:"1228:qua-core-b9f4f22d73344e56f8b48ffee9005a7becc255bc-view_training";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:76:"1228:qua-core-801052294ff51a2a05fad29c19b413931b007127-return_to_main_record";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:79:"1228:qua-core-dc2c1cc7838f381a6198f09eebf5533f78c91324-correct_this_information";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:74:"1228:qua-core-bf7457fd947fe6a1eef8de62b3a91ee68a91442b-set_graduation_date";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:72:"1228:qua-core-e1260aa53b266f93b524e49646218ca49f3ec0da-index_information";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:75:"1228:qua-core-d38e9b888e8b481eeea6da394d506f30ddf68a32-training_institution";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:71:"1228:qua-core-3cc6f07309dab6d53255991f78a4b71c7b9234c0-exam_information";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:79:"1228:qua-core-e8ea57d44f3c3a82a6ae9eb2891188b041ca42f0-add_continuing_education";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:85:"1228:qua-core-627ac5cb076df2488daff66d7f7a5f2adfae02e7-private_practice_license_infor";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:83:"1228:qua-core-96021426fbc15aad98b99dee95b54ae1b70bae52-add_private_practice_license";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:85:"1228:qua-core-5bc6b2bb20b61f2e032a97b425676a5ff3052e27-select_another_health_facility";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:85:"1228:qua-core-6675f63385cc5c9487467019b4746263d11f1118-update_associated_training_ins";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:74:"1228:qua-core-6a7dedef37a309f86242aba879cb3f510935392b-identification_code";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:68:"1228:qua-core-cedd5473b0139d68b4027ea6f118f9b2a01507f8-facility_type";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:69:"1228:qua-core-05b9e455b57ff2020c53c8d66ff28b23372de218-facility_agent";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:70:"1228:qua-core-4e93da4e3574d38d2a4c1b2961ac3dcf41b3f8b3-facility_status";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:85:"1228:qua-core-ef5e59e593234d6adbb5ecf0e573994ad4a7c872-associated_training_institutio";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:65:"1228:qua-core-26b953711187a41842ce9535b12ead1119838f0b-add_person";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:69:"1228:qua-core-a0c7a2ace5ffcff2c25542bae23b78d5a26ce7c7-search_records";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:71:"1228:qua-core-7f5b0aa72e7ba00066dfc25f5c1fd7a3570857c5-configure_system";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:70:"1228:qua-core-49289db43e663a3df5e2c70714722ecc54895565-change_password";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:77:"1228:qua-core-e02e995742c16d46c899d070d90c01b3c7ab85ec-address_in_new_country";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:75:"1228:qua-core-e8fc61e569fb16765748c4a60b312003f118cc99-out_migration_reason";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:85:"1228:qua-core-6316741175d83488c1db3e1893856ca645bffc80-organization_requesting_verifi";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:67:"1228:qua-core-5bba095984e657b143b12eba8a2768a9475084b7-request_date";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:62:"1228:qua-core-b37456c4530be810dc040f50da72eda09addfb0a-contact";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:85:"1228:qua-core-37093846b9ff99bdc85d495780bb7799bba606b3-no_exam_information_has_been_a";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:75:"1228:qua-core-bf18d64b76d2906f90e723ceeec5d0c4d61c6dae-add_exam_information";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:80:"1228:qua-core-34a2d586004e00a9751e29cfd74714aa6c10cd0a-add_education_information";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:61:"1228:qua-core-63143b6f8007b98c53ca2149822777b3566f9241-return";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:73:"1228:qua-core-07c31743c6219d947dd21f3d60f631ff98553643-trained_in_country";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:82:"1228:qua-core-ab077b9e99031c8cd006003e04ee598db671bb8a-trained_outside_the_country";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:73:"1228:qua-core-6f957f6a06ac4c9e19e97368153299c4698c3908-country_trained_in";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:83:"1228:qua-core-5b35086bb92e1b29bc42887816f2cad442351ed4-disciplinary_action_category";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:59:"1228:qua-core-69bd4ef9fbd0894a22759c3766b859defbdedbc8-view";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:66:"1228:qua-core-0eb5ed506e4923c28d7f4a8aa69efe99b3ad75d1-information";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:73:"1228:qua-core-157149009b0751e5b7f14b1031a3c8dc7c617d16-inspection_results";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:70:"1228:qua-core-9a551b1843876f4cc4145a63f46d66244391149e-inspection_date";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:74:"1228:qua-core-8f3d8feec65d4d38964f861e7a7da52792a71cd7-materials_received?";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:74:"1228:qua-core-3177b3d97db2662f7dda97f59060ff5035eab030-materials_approved?";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:68:"1228:qua-core-84c6de99f9bcf0258b194e3510302af57beaf888-endorser_name";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:78:"1228:qua-core-8fbf589c039ac49a4c6fb62ab65db20ef9e929a2-endorser_qualifications";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:64:"1228:qua-core-afa4c0ae1f2ab2a4c5c447df5dd1c2dcaaa547ac-exam_date";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:63:"1228:qua-core-ab0e56cba14f56a5fad8d1ea7cf5f9ddc0c049de-exam_try";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:67:"1228:qua-core-6006bb2a5b4d00700c0bb68ecc1bbbc2e1fe37cc-exam_results";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:66:"1228:qua-core-74bba00d6703bd292cf12516fe7ee2d3a370dd8f-exam_number";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:66:"1228:qua-core-695b21d4feb2f90373665462850277e1e44f1d8d-add_license";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:72:"1228:qua-core-de3c9700da75b73799bfb6a6fceeac3ea19b4a1e-reinstate_license";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:69:"1228:qua-core-9d2c7063088793c055fe015d3841d0cc2df8e788-identification";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:74:"1228:qua-core-662889e70bf828812cadf7ae57b39371090506a6-identification_type";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:85:"1228:qua-core-dadbd6ff4afd197b816e3380daace2c57fd021bd-select_another_training_instit";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:85:"1228:qua-core-4dfc66d5be304e75fe34406708afa5d0566746be-update_associated_health_facil";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:83:"1228:qua-core-3edc54fcd705050c7af15a571c1288a86be01650-associated_health_facilities";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:72:"1228:qua-core-84ea95dd09da0da73c7810098962f607756d009a-training_programs";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:75:"1228:qua-core-bdee571fed771314aac69f77c81795c5ccb640f8-add_training_program";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:78:"1228:qua-core-853dcb03cb0050a9e212b05e0e5dc0f7fdb3a916-institution_inspections";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:81:"1228:qua-core-7bbffbddd00d5ccf802713c8f3123056237ac114-add_institution_inspection";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:62:"1228:qua-core-3229609e15436ec51bcf00818a69a84dbc58a0c2-license";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:77:"1228:qua-core-13a8a1a623ff01ee068d52cc388c0414836474a0-institution_inspection";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:62:"1228:qua-core-f18a660e3e20dd1508d9fdbd9272c6b574ca3255-passed?";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:74:"1228:qua-core-ca20b4d0dc0037dbb9c44f4e58377fd5a5fcfa15-administer_database";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:85:"1228:qua-core-7782a66a5588f778c6c883a4d1ffe6ec9a82f1c6-minimum_qualification_required";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:79:"1228:qua-core-0307f0611497f1106a15547fce3802bf91fa5096-isco_classification_code";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:83:"1228:qua-core-80acba1d009859e6fe38a6f8b0dd6c03da7d975e-add_new_training_institution";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:78:"1228:qua-core-d60ee537f7425cf4dd166f0821b8fe943dad6c02-application_information";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:77:"1228:qua-core-0621465cc9a348243fa58f7b770f5b75a806f9d5-inspection_information";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:79:"1228:qua-core-f5881ed1d6c499772f7ecb06138b5bbb78b73846-private_practice_license";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:68:"1228:qua-core-f8bc51c670902ef6dbf700003361f16e30fc1eb6-license_lists";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:68:"1228:qua-core-2ffe44e547583bf61e0c2b02d0288df152e1e76d-qualification";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:82:"1228:qua-core-f558147548fa65a002d723a3f53ca7a2695de83c-continuing_education_course";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:81:"1228:qua-core-4ad9a2d1638c05334351e02ce6946ccd2c8dd224-training_disruption_reason";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:72:"1228:qua-core-0628eece9c87f833e9d34864fed67cc09504efba-demographic_lists";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:71:"1228:qua-core-cf4d0acf094d7f9202ee879c7efd6250613eb51d-geographic_lists";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:72:"1228:qua-core-84853d488dfbd1fb773340193b5540cfb7385ad5-institution_lists";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:85:"1228:qua-core-91455a8bcd62717693ec42f3bec7ebf8681a699e-add_a_new_record_for_a_student";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:84:"1228:qua-core-d3c6ae184d51668a4d111d9801d1595127342fcd-locate_any_person's_record_in";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:85:"1228:qua-core-f94199bb23b187571a38aef61b0e1fc0575ffdf4-reports_enable_analysis_of_hum";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:84:"1228:qua-core-d047fee984176ca584c47669d7b708be0312da37-configure_modules,_manage_the";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:64:"1228:qua-core-d761698c011814f705f9dbf84397987236173aae-first_try";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:61:"1228:qua-core-800b978d05efadf9f3f2619e0ce5a0760605042c-re-try";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:64:"1228:qua-core-fb507fd27b7df17fc807ce3b8e78ef0b35938359-final_try";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:59:"1228:qua-core-d7cd56f2a2a3f47830760edfb89946eb7b9e2cd1-pass";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:59:"1228:qua-core-2758e3273dd1670b2f6f59afa8542d89c80d20a6-fail";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:75:"1228:qua-core-3c9dc8f177dfd6bfdfc1377aa977770580bbf291-did_not_sit_for_exam";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:64:"1228:qua-core-af0fa7cd4eb8ae17072409115817adc4e88bf380-permanent";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:64:"1228:qua-core-33d5667cd57fb5060de713ed01d2224df3d3f6f3-temporary";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:68:"1228:qua-core-2886139288582504afbc40898d323be1784cf614-endorser_date";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:62:"1228:qua-core-c6b2b26e21b9615365e63788354660b6bdc98179-active?";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:63:"1228:qua-core-d219c68101f532de10add2cf42fb9dbeca73d3be-location";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:75:"1228:qua-core-cb4043cb233219ddb0440469cb879b6a09410d86-generate_this_number";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:69:"1228:qua-core-f848272ea337e29fdf888688c543a50d433d57b1-birth_location";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:59:"1228:qua-core-70f8bb9a8a5393ef080507a89e4b98d139000d65-home";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:81:"1228:qua-core-b97a8f45cf61dd1b1d2433d65c7bdb2c6f853fb7-generate_next_index_number";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:83:"1228:qua-core-4aa9044ca661dff3525d6c65bca91c257766b9a0-trained_outside_this_country";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:75:"1228:qua-core-816942f54d7f578d1ac46c0b4226c83b6f7cae6f-facility_institution";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:85:"1228:qua-core-a262013ce5396986a68f664980efee808c802f86-facility_institution_edit_faci";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:85:"1228:qua-core-e8ee0069f6b96313ca4bda7a0576fa20a8cc774f-facility_institution_edit_inst";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:61:"1228:qua-core-8c41ae88467fe5bbad09fcd488662b25c3ec5333-person";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:72:"1228:qua-core-1a9ef1a8b15e5f3ff28eb2dbbf0dba081dc1ab3c-education_history";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:63:"1228:qua-core-b6fe7f5e79177b05f6d251ecb9c162d45455045d-training";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:66:"1228:qua-core-ce350f5f5179f4a510c839986df2872dde03afab-exam_result";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:59:"1228:qua-core-0bd62a2517565554509c32cc92211ff599e24d96-exam";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:72:"1228:qua-core-29bab72a6857efe8c08b4df7727087841ec864af-registration_type";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:78:"1228:qua-core-26c259e1bca32cb10f1c323f7fe3f6a71c382874-data_operations_manager";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:78:"1228:qua-core-43309966be1562e090a92dcd2f9a4a9ff7197f94-registration_supervisor";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:70:"1228:qua-core-33ef4d3be4bde1812ad1afc90570d7fcd146f7d7-records_officer";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:69:"1228:qua-core-549b1dc0ae7d0172b590b70c800b776cbdf54233-decision_maker";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:85:"1228:qua-core-07f38b4a49dfebe27cb2f7cbfe740c81323b5498-add_update_continuing_educatio";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:76:"1228:qua-core-41286f04bac39f08649c9e7bbe23e1d7ed3bba2c-add_update_deployment";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:85:"1228:qua-core-78506c80a4071ef1628dad5c8ffcf2e9aaf9d2a9-add_update_disciplinary_action";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:85:"1228:qua-core-f380618ee0ee5d430bc17751f7fe462e25114878-reinstate_license_after_discip";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:85:"1228:qua-core-69296642b7c3cd906132c0f0ce2dc6dbc4685961-add_update_education_informati";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:82:"1228:qua-core-fb6092307158b5fb12aaa620362b595dd548f9e1-add_update_exam_information";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:85:"1228:qua-core-3c8396bc3413f25aa0137631f7ed4af38d4921a4-health_facility_training_insti";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:74:"1228:qua-core-065575c112dd024ac97bf3a476ef489fecf46899-add_graduation_date";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:67:"1228:qua-core-8bc3b1ed449e35b901d74c3dbc468945062d2184-view_history";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:85:"1228:qua-core-615e7144531697b90dc7a6a533a7be89b8d96683-add_update_training_institutio";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:85:"1228:qua-core-ae9a43230c17147f8b290bb1b5f70854498ea16f-add_update_license_information";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:85:"1228:qua-core-ea8bf1bf74fd90a338c7d62bba096e0497b8b353-add_update_out_migration_infor";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:85:"1228:qua-core-630da4cfe7c0e3592b5541bae4aa37b16a8dad58-add_update_private_practice_li";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:85:"1228:qua-core-41cd4dce5f1cb63135dbaec69b70a3e3e76ca9f2-add_update_registration_inform";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:80:"1228:qua-core-15c794cc4b78241078a8588d752cc118831b0ad2-renew_license_information";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:85:"1228:qua-core-782949b501f08c1c8b8d10e6aa663c33b1bc5af2-add_update_training_disruption";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:74:"1228:qua-core-988dddfd6e76f94c1734794c31fbb4271692ae18-add_update_training";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:82:"1228:qua-core-d3d19b468490bd01802c7bca840eaefc9fbc4e9c-add_update_training_program";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:81:"1228:qua-core-bacbcb36eb944fbf4fb38a7610bb2b16cce43194-resume_training_disruption";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:68:"1228:qua-core-b584d2730d3ffd197989d6809f8386709a33c6b9-search_people";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:71:"1228:qua-core-3ee4d30bc4c51912fbb4ee4b414578cdab101f5c-search_trainings";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:84:"1228:qua-core-05a90318cfa7c06b91ce78f96c61a95fcca2af26-locate_any_person's_record_in";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:85:"1228:qua-core-dcde9aa4b43f38bbd1e1ae588b436df04466cf34-index_number_s_-_cadre_s_-_int";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:85:"1228:qua-core-827cc7b896735dbaad5f578bc73a32c4e308b63e-select_the_training_school_and";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:85:"1228:qua-core-fdb2b4c8bc9a146182e03bfcd1b96b866bb37197-select_the_country,_type_the_t";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:73:"1228:qua-core-6f7483c446154770206ed9267e78cbdaf5f55ee6-add_passport_photo";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:74:"1228:qua-core-8d3d15f900bdef9d1118b3a1f53043f62d12f3fe-record_verification";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:71:"1228:qua-core-44f8836e1e57319ee71e99f9acb56f6d2d68b20f-add_verification";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:80:"1228:qua-core-742f9552edb02bd70a0ce0ea1b44ddbaf0ac2957-view_verification_history";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:85:"1228:qua-core-c42732cb911a4cec1857d9d80bc2750ce7860f6e-select_another_out_migration_r";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:83:"1228:qua-core-a819ff878eee301914a3cf795514df821a6e6179-select_another_qualification";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:85:"1228:qua-core-58c38b9a7f6317f7bdae80295a4176688ef843a5-select_another_disciplinary_ac";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:81:"1228:qua-core-4940abb42e332b6971688c6f0fd1e866d3080085-select_another_certificate";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:84:"1228:qua-core-1af91783398cf419f9a554c6a127a6eb99a7bbc3-select_another_academic_level";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:85:"1228:qua-core-c1fcf5287a1a1883ffbb8df38af667a8469a6cc9-select_another_training_disrup";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:75:"1228:qua-core-4e61586acf6fde7fca5cc9a82ddbdca295b3a0b6-administrative_lists";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:82:"1228:qua-core-f590cddfceed5aef73b34c3df659a2cb7a888fe3-record_verification_changes";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:85:"1228:qua-core-9a1d3e16adeef2d59e715d7571d4da3eaf57adcb-select_another_facility_status";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:84:"1228:qua-core-de5cffdec3c4225e4370d8ea4f5bbe8c72f9163e-select_another_identification";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:85:"1228:qua-core-6ed95fdfa6df37bb946ed8a1fc1ceb2b92b1359f-administer_database_training_p";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:67:"1228:qua-core-d8ec6db71b8deb067ea524a66a19c02cce906a91-view_reports";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:84:"1228:qua-core-f85a37cb23d446867c9303e4338f4da1384bf865-select_another_facility_agent";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:85:"1228:qua-core-999c9b0bc13c3ffce18320bb49404173b25dc378-select_another_training_disrup";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:85:"1228:qua-core-4814b92bc502a6cdadc4aa99e4e80ed55db5db33-select_another_disciplinary_ac";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:75:"1228:qua-core-422ec56bbc16253e50ce58449f018afb3d1745dd-select_another_cadre";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:84:"1228:qua-core-6651732a3718db967118cfa9e5684b46c8eb9d00-update_training_registrations";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:77:"1228:qua-core-ecfe29ef8fcfc7c6552fb9793fd0884a7b9c0a8b-additional_information";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:79:"1228:qua-core-92363e7bd4e6a9f80a3938488efb60337f983017-registration_certificate";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:67:"1228:qua-core-2e37d340b041c3b32d48d323b59ea13bada7165f-license_card";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:78:"1228:qua-core-46f86af69adab0edc06f76b6fd13432139bf19be-next_of_kin_information";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:70:"1228:qua-core-fe433db348a1782550b86b312e8dff9321b1c7cd-add_next_of_kin";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:76:"1228:qua-core-1b79cccbe00ab34f7af0db06591d228d0b39cc46-scanned_paper_records";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:75:"1228:qua-core-017a93f22e39ec01ab43dee9b7bec4d4ffb574e8-add_scanned_document";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:62:"1228:qua-core-04a212215ef9fbf686d280802eb81ee7a6e681cd-confirm";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:85:"1228:qua-core-9acbcbbce48012daf3a46f4eb4663108fcd31634-can_view_the_disciplinary_acti";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:85:"1228:qua-core-1f93262299e06963996b9f116135a034b30cbb74-can_view_the_out_migration_for";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:82:"1228:qua-core-32ccfedcbe85720edbf022e401fdf52cddbb74d2-can_view_the_training_form.";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:81:"1228:qua-core-bf27f718cf969cc55bf986b696342a2522603357-can_view_the_license_form.";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:83:"1228:qua-core-8b0be04e952ae4f8a847ce69d3894f060f113441-can_view_the_education_form.";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:85:"1228:qua-core-01770e205cda7ad143046294bef51dd26c001159-can_view_the_person_license_fo";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:85:"1228:qua-core-4e105225c81ece3901194f3fec40e0f6c1008284-can_view_the_record_verify_for";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:84:"1228:qua-core-f17b385fc02b37dd7ae4d3f8a0dcd9c155b27ab7-can_view_the_deployment_form.";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:73:"1228:qua-core-9824fe25258bf8f143a4bb7634cbd228ead1c9e7-standardized_forms";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:82:"1228:qua-core-d79dda74ddb9b5bbfb2ee38922e7a0ec493dd298-standardized_training_forms";a:3:{i:0;R:23332;i:1;R:21162;i:2;R:23333;}s:73:"1228:qua-crd-6e973372c00e2ccb94ad1644a04be9f9dc57d6ef-training_disruption";a:3:{i:0;s:21:"out-ihris-qualify-crd";i:1;R:21162;i:2;R:23333;}s:84:"1228:qua-crd-4d914205150b6ffbc21507bd04d19b9b084efc42-relationship_for_training_disr";a:3:{i:0;R:23589;i:1;R:21162;i:2;R:23333;}s:84:"1228:qua-crd-1b546abf097a514a674f8efe279a43bf21608eaa-the_year_this_disruption_occur";a:3:{i:0;R:23589;i:1;R:21162;i:2;R:23333;}s:83:"1228:qua-crd-839652c8cac2516734ea800e9631907eab6fc175-a_string_to_determine_if_this";a:3:{i:0;R:23589;i:1;R:21162;i:2;R:23333;}s:84:"1228:qua-crd-9f843bf8a281e5d7822f37fbf21521f766bf0905-the_reason_this_disruption_occ";a:3:{i:0;R:23589;i:1;R:21162;i:2;R:23333;}s:71:"1228:qua-crd-58ea12bace1d85277eb8535fdeceaed7ef9c6895-disruption_reason";a:3:{i:0;R:23589;i:1;R:21162;i:2;R:23333;}s:84:"1228:qua-crd-cb1ffc0f657e79ee148d9e225bd71139c259cc0a-the_category_for_the_reason_th";a:3:{i:0;R:23589;i:1;R:21162;i:2;R:23333;}s:73:"1228:qua-crd-c523b13abe5624aa687e3c55d4cb1ebf52136dd5-disruption_category";a:3:{i:0;R:23589;i:1;R:21162;i:2;R:23333;}s:84:"1228:qua-crd-2ca241e2a86f3598be072b0bf5e6e9cc3ad4c2c3-reports_related_to_training_di";a:3:{i:0;R:23589;i:1;R:21162;i:2;R:23333;}s:84:"1228:qua-crd-b9d84c45b6fbc21feeba212212b3b55f4d1c0a95-a_pie_chart_of_all_discontinua";a:3:{i:0;R:23589;i:1;R:21162;i:2;R:23333;}s:82:"1228:qua-crd-1a4217897222b70ee6027e745a641da0c3a9a168-discontinuations_by_category";a:3:{i:0;R:23589;i:1;R:21162;i:2;R:23333;}s:71:"1228:qua-crd-20bb9035383e74e075bb44942d26f1935c4a3be4-pie_chart(simple)";a:3:{i:0;R:23589;i:1;R:21162;i:2;R:23333;}s:71:"1228:qua-crd-6140f3732445fe6030b3cc911dc51ff9bb979bdf-bar_chart(simple)";a:3:{i:0;R:23589;i:1;R:21162;i:2;R:23333;}s:74:"1228:qua-crd-01646a443a3fde1b6a38012541aac89af595b0d8-column_chart(simple)";a:3:{i:0;R:23589;i:1;R:21162;i:2;R:23333;}s:82:"1228:qua-crd-3910a0af1c40f4a8bb7d64e20295709660752fda-stacked_column_chart(simple)";a:3:{i:0;R:23589;i:1;R:21162;i:2;R:23333;}s:66:"1228:qua-crd-63920248e4b1abddb609813526a48cf4a8e4931a-scatter_plot";a:3:{i:0;R:23589;i:1;R:21162;i:2;R:23333;}s:84:"1228:qua-crd-3572d7bdbc507397221d1642b9139a62fdba2579-a_chart_of_all_discontinuation";a:3:{i:0;R:23589;i:1;R:21162;i:2;R:23333;}s:80:"1228:qua-crd-131fb5d5b384373d36aa41895cfe1ba39ba72db3-discontinuations_by_reason";a:3:{i:0;R:23589;i:1;R:21162;i:2;R:23333;}s:84:"1228:qua-crd-96f6dbef6e6ea72cb4c02fd991e7f31b541206de-a_chart_of_all_discontinuation";a:3:{i:0;R:23589;i:1;R:21162;i:2;R:23333;}s:78:"1228:qua-crd-b5d0f4441c3210344779b083097150faf5a99cbf-discontinuations_by_year";a:3:{i:0;R:23589;i:1;R:21162;i:2;R:23333;}s:84:"1228:qua-crd-e6c17560ec30524bfc4c699ca73385e57c13bccd-a_pie_chart_of_disruptions_tha";a:3:{i:0;R:23589;i:1;R:21162;i:2;R:23333;}s:71:"1228:qua-crd-669d783ffe2ee6407858aa19782b1f37cc91b7ed-resumption_report";a:3:{i:0;R:23589;i:1;R:21162;i:2;R:23333;}s:70:"1228:qua-crd-a49017e662b2d4cdf74d8e98005aa9f095f7cbf7-training_reports";a:3:{i:0;R:23589;i:1;R:21162;i:2;R:23333;}s:59:"1228:qua-crd-2586a9e4e3ba9092547e3eac14e105c5ffbda37b-cadre";a:3:{i:0;R:23589;i:1;R:21162;i:2;R:23333;}s:67:"1228:qua-crd-133160594d08fcd32f94c34d17e39f61e6f3d12e-date_of_birth";a:3:{i:0;R:23589;i:1;R:21162;i:2;R:23333;}s:73:"1228:qua-crd-7cfefa12f6ec73dc45929e72c72ee32729d679b3-date_of_birth_after";a:3:{i:0;R:23589;i:1;R:21162;i:2;R:23333;}s:74:"1228:qua-crd-ee98c0e846b9a53c634b4ce16c8a987e4c2c1c7d-date_of_birth_before";a:3:{i:0;R:23589;i:1;R:21162;i:2;R:23333;}s:60:"1228:qua-crd-8a754c61c2ced0c5ff79a1827e02c9d643d6d926-gender";a:3:{i:0;R:23589;i:1;R:21162;i:2;R:23333;}s:76:"1228:qua-crd-a4418888f5d00b36c16a84d98bd2cdd12d76deed-disruption_category_id";a:3:{i:0;R:23589;i:1;R:21162;i:2;R:23333;}s:69:"1228:qua-crd-f06cd2d08a66c2f5706e0d5006a539f481e2dd86-disruption_date";a:3:{i:0;R:23589;i:1;R:21162;i:2;R:23333;}s:74:"1228:qua-crd-e844a3c997bba767d3451dbfcc56e388be9a005b-disruption_reason_id";a:3:{i:0;R:23589;i:1;R:21162;i:2;R:23333;}s:69:"1228:qua-crd-aa9b51e9ce64855aa673490edef9aa35c7a50a5c-resumption_date";a:3:{i:0;R:23589;i:1;R:21162;i:2;R:23333;}s:68:"1228:qua-crd-93f5dcc78ecd92b0dd9aeed0130c992edf608c24-training_cadre";a:3:{i:0;R:23589;i:1;R:21162;i:2;R:23333;}s:65:"1228:qua-crd-4a5e4ab277b1254fcce1760f71b0cb29ac62606a-intake_date";a:3:{i:0;R:23589;i:1;R:21162;i:2;R:23333;}s:71:"1228:qua-crd-7ac4d2f422be1d6a39c7eef3834ecba1cb754f77-intake_date_after";a:3:{i:0;R:23589;i:1;R:21162;i:2;R:23333;}s:72:"1228:qua-crd-f000fc2ac2df57b73bd91dbe2e2302c32c87213f-intake_date_before";a:3:{i:0;R:23589;i:1;R:21162;i:2;R:23333;}s:84:"1228:qua-crd-3d22e79c9b225369e6cd2dee1e5e4ac7bb7ac09c-the_training_that_was_disrupte";a:3:{i:0;R:23589;i:1;R:21162;i:2;R:23333;}s:62:"1228:qua-crd-b6fe7f5e79177b05f6d251ecb9c162d45455045d-training";a:3:{i:0;R:23589;i:1;R:21162;i:2;R:23333;}s:80:"1228:qua-crd-25c12f8c1d8225fa0ac4361d9941fe2a9215af36-the_cadre_of_the_training.";a:3:{i:0;R:23589;i:1;R:21162;i:2;R:23333;}s:84:"1228:qua-crd-b79ead60f40c112925e5736dbe10a2d61e298c07-the_person_taking_the_training";a:3:{i:0;R:23589;i:1;R:21162;i:2;R:23333;}s:60:"1228:qua-crd-8c41ae88467fe5bbad09fcd488662b25c3ec5333-person";a:3:{i:0;R:23589;i:1;R:21162;i:2;R:23333;}s:84:"1228:qua-crd-905cb2fa630857ffb450b4c620cd2e65d534b7d7-the_demographic_details_of_the";a:3:{i:0;R:23589;i:1;R:21162;i:2;R:23333;}s:65:"1228:qua-crd-eba97b6edda213ee80d274492e8b25475f6633c9-demographic";a:3:{i:0;R:23589;i:1;R:21162;i:2;R:23333;}s:58:"1228:qua-cre-0bd62a2517565554509c32cc92211ff599e24d96-exam";a:3:{i:0;s:21:"out-ihris-qualify-cre";i:1;R:21162;i:2;R:23333;}s:77:"1228:qua-cre-ff785cf3cd58eb0cb1fe0a37ed34ad578f093163-relationship_for_exams.";a:3:{i:0;R:23633;i:1;R:21162;i:2;R:23333;}s:83:"1228:qua-cre-99bb33dabf5b37d8dc7ebaf5a14317c45e11fa5e-the_year_this_exam_was_taken.";a:3:{i:0;R:23633;i:1;R:21162;i:2;R:23333;}s:84:"1228:qua-cre-adf1329a70601a106881ef70142650bc4794d7f4-the_training_associated_with_t";a:3:{i:0;R:23633;i:1;R:21162;i:2;R:23333;}s:62:"1228:qua-cre-b6fe7f5e79177b05f6d251ecb9c162d45455045d-training";a:3:{i:0;R:23633;i:1;R:21162;i:2;R:23333;}s:81:"1228:qua-cre-84958d526f3a22afc2708e1ff6d53b8098faa258-the_cadre_of_this_training.";a:3:{i:0;R:23633;i:1;R:21162;i:2;R:23333;}s:59:"1228:qua-cre-2586a9e4e3ba9092547e3eac14e105c5ffbda37b-cadre";a:3:{i:0;R:23633;i:1;R:21162;i:2;R:23333;}s:66:"1228:qua-cre-4b0e65f8f0bf7ebdd941350fb129d61e941ddf03-exam_reports";a:3:{i:0;R:23633;i:1;R:21162;i:2;R:23333;}s:79:"1228:qua-cre-9d851a88d1433059db73479b295acc69de7088d8-reports_related_to_exams.";a:3:{i:0;R:23633;i:1;R:21162;i:2;R:23333;}s:63:"1228:qua-cre-afa4c0ae1f2ab2a4c5c447df5dd1c2dcaaa547ac-exam_date";a:3:{i:0;R:23633;i:1;R:21162;i:2;R:23333;}s:57:"1228:qua-cre-72677028b4d0d41af475041fdbe030f7c7146d2c-try";a:3:{i:0;R:23633;i:1;R:21162;i:2;R:23333;}s:61:"1228:qua-cre-612e12d29278b5519294bc25cdaddffec6d0f1c6-results";a:3:{i:0;R:23633;i:1;R:21162;i:2;R:23333;}s:65:"1228:qua-cre-74bba00d6703bd292cf12516fe7ee2d3a370dd8f-exam_number";a:3:{i:0;R:23633;i:1;R:21162;i:2;R:23333;}s:71:"1228:qua-cre-1c99e27247c1348af75862ee34a617aed8660a8f-training_cadre_id";a:3:{i:0;R:23633;i:1;R:21162;i:2;R:23333;}s:71:"1228:qua-cre-7ac4d2f422be1d6a39c7eef3834ecba1cb754f77-intake_date_after";a:3:{i:0;R:23633;i:1;R:21162;i:2;R:23333;}s:72:"1228:qua-cre-f000fc2ac2df57b73bd91dbe2e2302c32c87213f-intake_date_before";a:3:{i:0;R:23633;i:1;R:21162;i:2;R:23333;}s:65:"1228:qua-cre-4a5e4ab277b1254fcce1760f71b0cb29ac62606a-intake_date";a:3:{i:0;R:23633;i:1;R:21162;i:2;R:23333;}s:84:"1228:qua-cre-13ff37487726faacb6c612a42778ca76f2e3e12a-a_pass_fail_comparison_for_all";a:3:{i:0;R:23633;i:1;R:21162;i:2;R:23333;}s:68:"1228:qua-cre-5231afc43b66600519c75397c785a406fc5b33ed-exam_pass_fail";a:3:{i:0;R:23633;i:1;R:21162;i:2;R:23333;}s:71:"1228:qua-cre-20bb9035383e74e075bb44942d26f1935c4a3be4-pie_chart(simple)";a:3:{i:0;R:23633;i:1;R:21162;i:2;R:23333;}s:71:"1228:qua-cre-6140f3732445fe6030b3cc911dc51ff9bb979bdf-bar_chart(simple)";a:3:{i:0;R:23633;i:1;R:21162;i:2;R:23333;}s:74:"1228:qua-cre-01646a443a3fde1b6a38012541aac89af595b0d8-column_chart(simple)";a:3:{i:0;R:23633;i:1;R:21162;i:2;R:23333;}s:82:"1228:qua-cre-3910a0af1c40f4a8bb7d64e20295709660752fda-stacked_column_chart(simple)";a:3:{i:0;R:23633;i:1;R:21162;i:2;R:23333;}s:66:"1228:qua-cre-63920248e4b1abddb609813526a48cf4a8e4931a-scatter_plot";a:3:{i:0;R:23633;i:1;R:21162;i:2;R:23333;}s:84:"1228:qua-cre-3ac6b31b3fd410974f7ddb061148dc08c1115005-a_pass_fail_comparison_for_all";a:3:{i:0;R:23633;i:1;R:21162;i:2;R:23333;}s:76:"1228:qua-cre-c0a438c62680da92c9fe977427099d805fdb6306-exam_pass_fail_by_year";a:3:{i:0;R:23633;i:1;R:21162;i:2;R:23333;}s:70:"1228:qua-cre-a49017e662b2d4cdf74d8e98005aa9f095f7cbf7-training_reports";a:3:{i:0;R:23633;i:1;R:21162;i:2;R:23333;}s:74:"1228:qua-cri-d38e9b888e8b481eeea6da394d506f30ddf68a32-training_institution";a:3:{i:0;s:21:"out-ihris-qualify-cri";i:1;R:21162;i:2;R:23333;}s:83:"1228:qua-cri-8adbbbe74bf8af5c6fbc56acafb1cd9bb2dfff6a-relationship_for_all_training";a:3:{i:0;R:23661;i:1;R:21162;i:2;R:23333;}s:84:"1228:qua-cri-d47727454056c6cfd86278e8ed29ad8dfd902d64-the_contact_details_for_this_i";a:3:{i:0;R:23661;i:1;R:21162;i:2;R:23333;}s:61:"1228:qua-cri-b37456c4530be810dc040f50da72eda09addfb0a-contact";a:3:{i:0;R:23661;i:1;R:21162;i:2;R:23333;}s:84:"1228:qua-cri-cdd1b803b9a22850bee1a2d9273745d7e556b396-the_facility_agent_for_this_in";a:3:{i:0;R:23661;i:1;R:21162;i:2;R:23333;}s:68:"1228:qua-cri-05b9e455b57ff2020c53c8d66ff28b23372de218-facility_agent";a:3:{i:0;R:23661;i:1;R:21162;i:2;R:23333;}s:84:"1228:qua-cri-9d8ea630e44dfca166773e9413259f5d138a42cc-the_district_where_this_instit";a:3:{i:0;R:23661;i:1;R:21162;i:2;R:23333;}s:62:"1228:qua-cri-c0cb139cce34769fb7ed9bafc15290e91cf7736c-district";a:3:{i:0;R:23661;i:1;R:21162;i:2;R:23333;}s:82:"1228:qua-cri-12335540207879f850dbcb541a46645d1704c703-training_institution_reports";a:3:{i:0;R:23661;i:1;R:21162;i:2;R:23333;}s:84:"1228:qua-cri-3bc2da3fc844861d1d2ba5443e82945e127a917b-a_list_of_all_training_institu";a:3:{i:0;R:23661;i:1;R:21162;i:2;R:23333;}s:83:"1228:qua-cri-1eb6214c5c700e3b253542265252d94df32caadf-training_institution_facility";a:3:{i:0;R:23661;i:1;R:21162;i:2;R:23333;}s:79:"1228:qua-cri-3b8d0efef9df10fa1378363205c532f558c5ede5-training_institution_name";a:3:{i:0;R:23661;i:1;R:21162;i:2;R:23333;}s:83:"1228:qua-cri-8144516c7f924008d8ab30839d1dd3a30b185fd1-training_institution_location";a:3:{i:0;R:23661;i:1;R:21162;i:2;R:23333;}s:83:"1228:qua-cri-2f79a5027ceb39ee72e524472c63069d3bd916c0-training_institution_location";a:3:{i:0;R:23661;i:1;R:21162;i:2;R:23333;}s:69:"1228:qua-cri-e6afb989237759c66f5b0e4226971f840efd5e7e-mailing_address";a:3:{i:0;R:23661;i:1;R:21162;i:2;R:23333;}s:75:"1228:qua-cri-0914791df9a7149b0b422804190e5330497ce506-training_institutions";a:3:{i:0;R:23661;i:1;R:21162;i:2;R:23333;}s:84:"1228:qua-crl-9f786e5fdcea96f83743599aa77b3c605ffc36b2-reports_based_on_current_licen";a:3:{i:0;s:21:"out-ihris-qualify-crl";i:1;R:21162;i:2;R:23333;}s:61:"1228:qua-crl-3229609e15436ec51bcf00818a69a84dbc58a0c2-license";a:3:{i:0;R:23678;i:1;R:21162;i:2;R:23333;}s:84:"1228:qua-crl-a3433ce242d0874bdecfe24eb94c10dc603c0666-the_training_associated_with_t";a:3:{i:0;R:23678;i:1;R:21162;i:2;R:23333;}s:62:"1228:qua-crl-b6fe7f5e79177b05f6d251ecb9c162d45455045d-training";a:3:{i:0;R:23678;i:1;R:21162;i:2;R:23333;}s:84:"1228:qua-crl-64a6fa39c5f4e7a83f77c11ced9314591366d3f9-the_cadre_associated_with_this";a:3:{i:0;R:23678;i:1;R:21162;i:2;R:23333;}s:59:"1228:qua-crl-2586a9e4e3ba9092547e3eac14e105c5ffbda37b-cadre";a:3:{i:0;R:23678;i:1;R:21162;i:2;R:23333;}s:84:"1228:qua-crl-2059ecea27f964a7ee5dc42e3fd6a82d9cc1299c-the_person_who_took_this_train";a:3:{i:0;R:23678;i:1;R:21162;i:2;R:23333;}s:60:"1228:qua-crl-8c41ae88467fe5bbad09fcd488662b25c3ec5333-person";a:3:{i:0;R:23678;i:1;R:21162;i:2;R:23333;}s:84:"1228:qua-crl-97a7d44518e608f633e1f67badf477c74138c276-the_demographic_details_for_th";a:3:{i:0;R:23678;i:1;R:21162;i:2;R:23333;}s:65:"1228:qua-crl-eba97b6edda213ee80d274492e8b25475f6633c9-demographic";a:3:{i:0;R:23678;i:1;R:21162;i:2;R:23333;}s:68:"1228:qua-crl-678a2d17d5870d7c093ef990a00623d915229598-license_report";a:3:{i:0;R:23678;i:1;R:21162;i:2;R:23333;}s:64:"1228:qua-crl-b6ea992aab4668311bb94778e056dd0285f27621-first_name";a:3:{i:0;R:23678;i:1;R:21162;i:2;R:23333;}s:61:"1228:qua-crl-77dfca2a56f9b1ffc2b6687e230088cf86fbc074-surname";a:3:{i:0;R:23678;i:1;R:21162;i:2;R:23333;}s:70:"1228:qua-crl-10091d4b7fc447772e69f9e078195f310fffeffe-license_end_date";a:3:{i:0;R:23678;i:1;R:21162;i:2;R:23333;}s:68:"1228:qua-crl-1d5971eb658d8f9dd3502f9b1a761cb73ad91869-license_number";a:3:{i:0;R:23678;i:1;R:21162;i:2;R:23333;}s:71:"1228:qua-crl-1c99e27247c1348af75862ee34a617aed8660a8f-training_cadre_id";a:3:{i:0;R:23678;i:1;R:21162;i:2;R:23333;}s:75:"1228:qua-crl-e0311068c9d340519abe305fb366a2a82b40147b-graduation_date_after";a:3:{i:0;R:23678;i:1;R:21162;i:2;R:23333;}s:76:"1228:qua-crl-ad0f63b6fbc83015017216932393ad4f7b477374-graduation_date_before";a:3:{i:0;R:23678;i:1;R:21162;i:2;R:23333;}s:69:"1228:qua-crl-d8d595839cd9207b4f673463a5eba6f92e566335-graduation_date";a:3:{i:0;R:23678;i:1;R:21162;i:2;R:23333;}s:60:"1228:qua-crl-8a754c61c2ced0c5ff79a1827e02c9d643d6d926-gender";a:3:{i:0;R:23678;i:1;R:21162;i:2;R:23333;}s:83:"1228:qua-crl-91cbd6b35be28d2b6e850615c706a8861c12277b-a_list_of_all_licensed_health";a:3:{i:0;R:23678;i:1;R:21162;i:2;R:23333;}s:77:"1228:qua-crl-84d22118827ab67323cbb59776a7aa6e1f92d96d-licensed_health_workers";a:3:{i:0;R:23678;i:1;R:21162;i:2;R:23333;}s:84:"1228:qua-crl-4f637e3c64da0e6b98653f78ab403dda67d8740d-a_chart_of_all_licensed_health";a:3:{i:0;R:23678;i:1;R:21162;i:2;R:23333;}s:84:"1228:qua-crl-798e73918729993b24fab99e680f7446cad11bf6-licensed_health_workers_by_cad";a:3:{i:0;R:23678;i:1;R:21162;i:2;R:23333;}s:71:"1228:qua-crl-20bb9035383e74e075bb44942d26f1935c4a3be4-pie_chart(simple)";a:3:{i:0;R:23678;i:1;R:21162;i:2;R:23333;}s:71:"1228:qua-crl-6140f3732445fe6030b3cc911dc51ff9bb979bdf-bar_chart(simple)";a:3:{i:0;R:23678;i:1;R:21162;i:2;R:23333;}s:74:"1228:qua-crl-01646a443a3fde1b6a38012541aac89af595b0d8-column_chart(simple)";a:3:{i:0;R:23678;i:1;R:21162;i:2;R:23333;}s:82:"1228:qua-crl-3910a0af1c40f4a8bb7d64e20295709660752fda-stacked_column_chart(simple)";a:3:{i:0;R:23678;i:1;R:21162;i:2;R:23333;}s:66:"1228:qua-crl-63920248e4b1abddb609813526a48cf4a8e4931a-scatter_plot";a:3:{i:0;R:23678;i:1;R:21162;i:2;R:23333;}s:72:"1228:qua-crl-866218196db49e13034406bc7f0079726df8926d-license_start_date";a:3:{i:0;R:23678;i:1;R:21162;i:2;R:23333;}s:70:"1228:qua-crl-a49017e662b2d4cdf74d8e98005aa9f095f7cbf7-training_reports";a:3:{i:0;R:23678;i:1;R:21162;i:2;R:23333;}s:76:"1228:qua-crl-8337a1c961a4e34b42fe38200e5d7023896ec522-license_end_date_after";a:3:{i:0;R:23678;i:1;R:21162;i:2;R:23333;}s:77:"1228:qua-crl-6f5da31e58734f938cb47a8583c01573f281326d-license_end_date_before";a:3:{i:0;R:23678;i:1;R:21162;i:2;R:23333;}s:78:"1228:qua-crl-08d9397ce81c33e4c13bb12021fe8db9f5aaf533-license_start_date_after";a:3:{i:0;R:23678;i:1;R:21162;i:2;R:23333;}s:79:"1228:qua-crl-8ac7b3f6a8327a38eef271204ba091e7c601d986-license_start_date_before";a:3:{i:0;R:23678;i:1;R:21162;i:2;R:23333;}s:84:"1228:qua-crl-ae9c49b557bf55d9977635a715c450743a7be518-the_registration_information_f";a:3:{i:0;R:23678;i:1;R:21162;i:2;R:23333;}s:66:"1228:qua-crl-b233e775d63bb8b86cf031776d4caea613f59cda-registration";a:3:{i:0;R:23678;i:1;R:21162;i:2;R:23333;}s:60:"1228:qua-crp-8c41ae88467fe5bbad09fcd488662b25c3ec5333-person";a:3:{i:0;s:21:"out-ihris-qualify-crp";i:1;R:21162;i:2;R:23333;}s:84:"1228:qua-crp-d110f462bb09816a409645ce1722823a8bf70e34-the_person_relationship_with_f";a:3:{i:0;R:23716;i:1;R:21162;i:2;R:23333;}s:84:"1228:qua-crp-52af1dec8adda4784e7bbfda7d8b9ec2527a6d48-the_results_of_the_exam_and_re";a:3:{i:0;R:23716;i:1;R:21162;i:2;R:23333;}s:84:"1228:qua-crp-d81711af44a4afeac2b4b0e3abd006466a58ddce-the_year_the_first_training_oc";a:3:{i:0;R:23716;i:1;R:21162;i:2;R:23333;}s:82:"1228:qua-crp-001ce5c46865e40d86232d11f0c792b9dd1f406b-the_year_the_exam_was_taken.";a:3:{i:0;R:23716;i:1;R:21162;i:2;R:23333;}s:84:"1228:qua-crp-d0605e6a46723e9562b6e5a35a3b69e127cd599c-a_yes_no_to_determine_if_the_p";a:3:{i:0;R:23716;i:1;R:21162;i:2;R:23333;}s:84:"1228:qua-crp-66031c673b10abd3cccaad91b446760d4db6e941-the_demographic_information_fo";a:3:{i:0;R:23716;i:1;R:21162;i:2;R:23333;}s:65:"1228:qua-crp-eba97b6edda213ee80d274492e8b25475f6633c9-demographic";a:3:{i:0;R:23716;i:1;R:21162;i:2;R:23333;}s:84:"1228:qua-crp-c15896c21c889634fb0f1177813bf1eccb45eb3a-the_district_where_this_person";a:3:{i:0;R:23716;i:1;R:21162;i:2;R:23333;}s:68:"1228:qua-crp-38a74b5be16ad0368c0d29d53cc9a97943d8f641-birth_district";a:3:{i:0;R:23716;i:1;R:21162;i:2;R:23333;}s:84:"1228:qua-crp-d327e9380bbe47bd1e7cad4bbbc283bd32dbe84c-the_most_recent_deployment_for";a:3:{i:0;R:23716;i:1;R:21162;i:2;R:23333;}s:64:"1228:qua-crp-327a55f82dc6818877a68e37b722bb7f2360b633-deployment";a:3:{i:0;R:23716;i:1;R:21162;i:2;R:23333;}s:84:"1228:qua-crp-5bac2a76e4bacfe08130778525ce2ee7898c043e-the_first_training_this_person";a:3:{i:0;R:23716;i:1;R:21162;i:2;R:23333;}s:68:"1228:qua-crp-9cea7a7a40f36148a35e38c2d599b7bca1cf1d4e-first_training";a:3:{i:0;R:23716;i:1;R:21162;i:2;R:23333;}s:84:"1228:qua-crp-0842a0cdca3f009c1c66803495ed9fa6d0d4ea65-the_cadre_of_the_first_trainin";a:3:{i:0;R:23716;i:1;R:21162;i:2;R:23333;}s:59:"1228:qua-crp-2586a9e4e3ba9092547e3eac14e105c5ffbda37b-cadre";a:3:{i:0;R:23716;i:1;R:21162;i:2;R:23333;}s:83:"1228:qua-crp-2dc93ff173c6eb4cef238b676d7c078422956915-the_exam_details_of_the_first";a:3:{i:0;R:23716;i:1;R:21162;i:2;R:23333;}s:58:"1228:qua-crp-0bd62a2517565554509c32cc92211ff599e24d96-exam";a:3:{i:0;R:23716;i:1;R:21162;i:2;R:23333;}s:84:"1228:qua-crp-a8eeadbdc5111bf3f1e293a30fa74550385d8877-the_registration_details_of_th";a:3:{i:0;R:23716;i:1;R:21162;i:2;R:23333;}s:66:"1228:qua-crp-b233e775d63bb8b86cf031776d4caea613f59cda-registration";a:3:{i:0;R:23716;i:1;R:21162;i:2;R:23333;}s:84:"1228:qua-crp-1eeebb44e6240e4773c29376a91c3ede9e8c983f-the_training_institution_where";a:3:{i:0;R:23716;i:1;R:21162;i:2;R:23333;}s:74:"1228:qua-crp-d38e9b888e8b481eeea6da394d506f30ddf68a32-training_institution";a:3:{i:0;R:23716;i:1;R:21162;i:2;R:23333;}s:84:"1228:qua-crp-75020d31641b8041853dd85f3079026faf72a057-the_district_where_the_trainin";a:3:{i:0;R:23716;i:1;R:21162;i:2;R:23333;}s:74:"1228:qua-crp-25287cb0662f5b3e27b65080efa83b1a2d3f0dd1-institution_district";a:3:{i:0;R:23716;i:1;R:21162;i:2;R:23333;}s:84:"1228:qua-crp-e6e5d4c08462ce4bfb9d50ce2c794ce2bc05b775-the_current_training_disruptio";a:3:{i:0;R:23716;i:1;R:21162;i:2;R:23333;}s:73:"1228:qua-crp-6e973372c00e2ccb94ad1644a04be9f9dc57d6ef-training_disruption";a:3:{i:0;R:23716;i:1;R:21162;i:2;R:23333;}s:67:"1228:qua-crp-490d80931704334a521bac1d02412e415310bdb3-person_report";a:3:{i:0;R:23716;i:1;R:21162;i:2;R:23333;}s:84:"1228:qua-crp-fee2515c0442796b69e7243c773229c77f9c3b22-reports_related_to_people_in_t";a:3:{i:0;R:23716;i:1;R:21162;i:2;R:23333;}s:61:"1228:qua-crp-77dfca2a56f9b1ffc2b6687e230088cf86fbc074-surname";a:3:{i:0;R:23716;i:1;R:21162;i:2;R:23333;}s:64:"1228:qua-crp-b6ea992aab4668311bb94778e056dd0285f27621-first_name";a:3:{i:0;R:23716;i:1;R:21162;i:2;R:23333;}s:65:"1228:qua-crp-a89d2eac8d13516b29ef1f2253faa80144670f49-other_names";a:3:{i:0;R:23716;i:1;R:21162;i:2;R:23333;}s:66:"1228:qua-crp-2d1655fda5449ee91536b245df9d20576a7d56c6-index_number";a:3:{i:0;R:23716;i:1;R:21162;i:2;R:23333;}s:71:"1228:qua-crp-1c99e27247c1348af75862ee34a617aed8660a8f-training_cadre_id";a:3:{i:0;R:23716;i:1;R:21162;i:2;R:23333;}s:71:"1228:qua-crp-7ac4d2f422be1d6a39c7eef3834ecba1cb754f77-intake_date_after";a:3:{i:0;R:23716;i:1;R:21162;i:2;R:23333;}s:72:"1228:qua-crp-f000fc2ac2df57b73bd91dbe2e2302c32c87213f-intake_date_before";a:3:{i:0;R:23716;i:1;R:21162;i:2;R:23333;}s:65:"1228:qua-crp-4a5e4ab277b1254fcce1760f71b0cb29ac62606a-intake_date";a:3:{i:0;R:23716;i:1;R:21162;i:2;R:23333;}s:69:"1228:qua-crp-d8d595839cd9207b4f673463a5eba6f92e566335-graduation_date";a:3:{i:0;R:23716;i:1;R:21162;i:2;R:23333;}s:69:"1228:qua-crp-f06cd2d08a66c2f5706e0d5006a539f481e2dd86-disruption_date";a:3:{i:0;R:23716;i:1;R:21162;i:2;R:23333;}s:73:"1228:qua-crp-1da775087104510f18021de3ce98227ec4fe0315-registration_number";a:3:{i:0;R:23716;i:1;R:21162;i:2;R:23333;}s:63:"1228:qua-crp-afa4c0ae1f2ab2a4c5c447df5dd1c2dcaaa547ac-exam_date";a:3:{i:0;R:23716;i:1;R:21162;i:2;R:23333;}s:66:"1228:qua-crp-6006bb2a5b4d00700c0bb68ecc1bbbc2e1fe37cc-exam_results";a:3:{i:0;R:23716;i:1;R:21162;i:2;R:23333;}s:60:"1228:qua-crp-8a754c61c2ced0c5ff79a1827e02c9d643d6d926-gender";a:3:{i:0;R:23716;i:1;R:21162;i:2;R:23333;}s:74:"1228:qua-crp-041a7c781b65264a38d0b0042a96ce294d8b2991-registration_results";a:3:{i:0;R:23716;i:1;R:21162;i:2;R:23333;}s:72:"1228:qua-crp-dd839a03288a727e8f164e0140943a725af8eb13-top_birth_district";a:3:{i:0;R:23716;i:1;R:21162;i:2;R:23333;}s:71:"1228:qua-crp-20bb9035383e74e075bb44942d26f1935c4a3be4-pie_chart(simple)";a:3:{i:0;R:23716;i:1;R:21162;i:2;R:23333;}s:71:"1228:qua-crp-6140f3732445fe6030b3cc911dc51ff9bb979bdf-bar_chart(simple)";a:3:{i:0;R:23716;i:1;R:21162;i:2;R:23333;}s:74:"1228:qua-crp-01646a443a3fde1b6a38012541aac89af595b0d8-column_chart(simple)";a:3:{i:0;R:23716;i:1;R:21162;i:2;R:23333;}s:82:"1228:qua-crp-3910a0af1c40f4a8bb7d64e20295709660752fda-stacked_column_chart(simple)";a:3:{i:0;R:23716;i:1;R:21162;i:2;R:23333;}s:66:"1228:qua-crp-63920248e4b1abddb609813526a48cf4a8e4931a-scatter_plot";a:3:{i:0;R:23716;i:1;R:21162;i:2;R:23333;}s:84:"1228:qua-crp-806ec95d8df5dfbdb1c1007a4181969dde710252-the_number_of_students_enterin";a:3:{i:0;R:23716;i:1;R:21162;i:2;R:23333;}s:73:"1228:qua-crp-f2591bb3f59c7c2d50a6931c52f4bd95e9724e46-student_intake_year";a:3:{i:0;R:23716;i:1;R:21162;i:2;R:23333;}s:84:"1228:qua-crp-03d6fa9f0b53995a5cc5f75e78b427341e25320c-the_pass_fail_results_for_each";a:3:{i:0;R:23716;i:1;R:21162;i:2;R:23333;}s:81:"1228:qua-crp-30ddec93ac652f7ca8288b1668668621b641e0c0-pass_fail_by_first_training";a:3:{i:0;R:23716;i:1;R:21162;i:2;R:23333;}s:84:"1228:qua-crp-05542b1a273dbc37f3a9b5c25400bd24aa5ccc82-the_registration_results_for_e";a:3:{i:0;R:23716;i:1;R:21162;i:2;R:23333;}s:83:"1228:qua-crp-16e65a9b4e91c4663bc966444e897bf50e078077-registration_results_by_first";a:3:{i:0;R:23716;i:1;R:21162;i:2;R:23333;}s:84:"1228:qua-crp-8258e6460bff7fe17cea111d22b88a0185317ffd-students_by_intake_year_that_a";a:3:{i:0;R:23716;i:1;R:21162;i:2;R:23333;}s:82:"1228:qua-crp-e3f3a63cf8b05fa7230b59dcee630ef8456cc979-students_in_training_by_year";a:3:{i:0;R:23716;i:1;R:21162;i:2;R:23333;}s:84:"1228:qua-crp-8a171160394542f57bf60c60f1bb7fed01aaddbb-a_pie_chart_of_the_number_of_p";a:3:{i:0;R:23716;i:1;R:21162;i:2;R:23333;}s:68:"1228:qua-crp-7739f995ecdeaf45fbd18b60a31e2e53fee45dc2-person_reports";a:3:{i:0;R:23716;i:1;R:21162;i:2;R:23333;}s:66:"1228:qua-crr-b233e775d63bb8b86cf031776d4caea613f59cda-registration";a:3:{i:0;s:21:"out-ihris-qualify-crr";i:1;R:21162;i:2;R:23333;}s:84:"1228:qua-crr-251844e1a6b215636f9acafb60d44b065fc1bf98-relationship_for_reports_deali";a:3:{i:0;R:23776;i:1;R:21162;i:2;R:23333;}s:84:"1228:qua-crr-ebd788ec4da98f7ce0857f13658c61f900124ccf-the_training_associated_with_t";a:3:{i:0;R:23776;i:1;R:21162;i:2;R:23333;}s:62:"1228:qua-crr-b6fe7f5e79177b05f6d251ecb9c162d45455045d-training";a:3:{i:0;R:23776;i:1;R:21162;i:2;R:23333;}s:84:"1228:qua-crr-64a6fa39c5f4e7a83f77c11ced9314591366d3f9-the_cadre_associated_with_this";a:3:{i:0;R:23776;i:1;R:21162;i:2;R:23333;}s:59:"1228:qua-crr-2586a9e4e3ba9092547e3eac14e105c5ffbda37b-cadre";a:3:{i:0;R:23776;i:1;R:21162;i:2;R:23333;}s:84:"1228:qua-crr-2059ecea27f964a7ee5dc42e3fd6a82d9cc1299c-the_person_who_took_this_train";a:3:{i:0;R:23776;i:1;R:21162;i:2;R:23333;}s:60:"1228:qua-crr-8c41ae88467fe5bbad09fcd488662b25c3ec5333-person";a:3:{i:0;R:23776;i:1;R:21162;i:2;R:23333;}s:84:"1228:qua-crr-f174a3e12e2ef26eadee9fb8be6b48b4e3b11acb-the_personal_contact_informati";a:3:{i:0;R:23776;i:1;R:21162;i:2;R:23333;}s:70:"1228:qua-crr-a3fea9dd7468e2f50a0b64cb69e6feec65c3bc04-personal_contact";a:3:{i:0;R:23776;i:1;R:21162;i:2;R:23333;}s:73:"1228:qua-crr-7515efca41a428941f2dc25dd4b216e4692c454a-registration_report";a:3:{i:0;R:23776;i:1;R:21162;i:2;R:23333;}s:84:"1228:qua-crr-25e5b4aee2d0ad907a4957440e0a77b89ee2d584-reports_based_on_registrations";a:3:{i:0;R:23776;i:1;R:21162;i:2;R:23333;}s:73:"1228:qua-crr-1da775087104510f18021de3ce98227ec4fe0315-registration_number";a:3:{i:0;R:23776;i:1;R:21162;i:2;R:23333;}s:71:"1228:qua-crr-e68df6d34aea0b889fd634dbc28ae13e29c6e254-registration_date";a:3:{i:0;R:23776;i:1;R:21162;i:2;R:23333;}s:71:"1228:qua-crr-1c99e27247c1348af75862ee34a617aed8660a8f-training_cadre_id";a:3:{i:0;R:23776;i:1;R:21162;i:2;R:23333;}s:71:"1228:qua-crr-7ac4d2f422be1d6a39c7eef3834ecba1cb754f77-intake_date_after";a:3:{i:0;R:23776;i:1;R:21162;i:2;R:23333;}s:72:"1228:qua-crr-f000fc2ac2df57b73bd91dbe2e2302c32c87213f-intake_date_before";a:3:{i:0;R:23776;i:1;R:21162;i:2;R:23333;}s:65:"1228:qua-crr-4a5e4ab277b1254fcce1760f71b0cb29ac62606a-intake_date";a:3:{i:0;R:23776;i:1;R:21162;i:2;R:23333;}s:61:"1228:qua-crr-77dfca2a56f9b1ffc2b6687e230088cf86fbc074-surname";a:3:{i:0;R:23776;i:1;R:21162;i:2;R:23333;}s:64:"1228:qua-crr-b6ea992aab4668311bb94778e056dd0285f27621-first_name";a:3:{i:0;R:23776;i:1;R:21162;i:2;R:23333;}s:69:"1228:qua-crr-e6afb989237759c66f5b0e4226971f840efd5e7e-mailing_address";a:3:{i:0;R:23776;i:1;R:21162;i:2;R:23333;}s:84:"1228:qua-crr-7638f86ff1530751cd8f68391887171bfe3b4f80-a_list_of_all_registered_healt";a:3:{i:0;R:23776;i:1;R:21162;i:2;R:23333;}s:79:"1228:qua-crr-ea9537338fe29cb81fb2638c81c4ae16d226b5ed-registered_health_workers";a:3:{i:0;R:23776;i:1;R:21162;i:2;R:23333;}s:70:"1228:qua-crr-a49017e662b2d4cdf74d8e98005aa9f095f7cbf7-training_reports";a:3:{i:0;R:23776;i:1;R:21162;i:2;R:23333;}s:77:"1228:qua-crr-535201e25b694d926043c933d77114006992043b-registration_date_after";a:3:{i:0;R:23776;i:1;R:21162;i:2;R:23333;}s:78:"1228:qua-crr-2918eb8c0403262f07d0ad3bdf34621e130caff6-registration_date_before";a:3:{i:0;R:23776;i:1;R:21162;i:2;R:23333;}s:68:"1228:qua-crsp-b584d2730d3ffd197989d6809f8386709a33c6b9-search_people";a:3:{i:0;s:22:"out-ihris-qualify-crsp";i:1;R:21162;i:2;R:23333;}s:84:"1228:qua-crsp-430c68ebcf0a2fb0803bb3521f42ba02a920d0c6-the_relationship_used_for_the";a:3:{i:0;R:23803;i:1;R:21162;i:2;R:23333;}s:84:"1228:qua-crsp-c36095df340c47e4a4c5c11ea9cb2cb296c69d30-the_most_recent_training_this";a:3:{i:0;R:23803;i:1;R:21162;i:2;R:23333;}s:68:"1228:qua-crsp-a884d20f9d98788f8cbcd4021b1fd044cf0f5da5-last_training";a:3:{i:0;R:23803;i:1;R:21162;i:2;R:23333;}s:85:"1228:qua-crsp-055470973c5a4b88ddb28fc14d8350aacc94ae7f-the_cadre_of_the_most_recent_t";a:3:{i:0;R:23803;i:1;R:21162;i:2;R:23333;}s:60:"1228:qua-crsp-2586a9e4e3ba9092547e3eac14e105c5ffbda37b-cadre";a:3:{i:0;R:23803;i:1;R:21162;i:2;R:23333;}s:85:"1228:qua-crsp-89631d90e6123f50c4e7008c3bd5eedf2dc4ba1b-demographic_details_for_this_p";a:3:{i:0;R:23803;i:1;R:21162;i:2;R:23333;}s:66:"1228:qua-crsp-eba97b6edda213ee80d274492e8b25475f6633c9-demographic";a:3:{i:0;R:23803;i:1;R:21162;i:2;R:23333;}s:85:"1228:qua-crsp-8a463fd6bf2ea58815e510ca214ac2f4328cf46c-search_for_any_person_in_the_s";a:3:{i:0;R:23803;i:1;R:21162;i:2;R:23333;}s:62:"1228:qua-crsp-77dfca2a56f9b1ffc2b6687e230088cf86fbc074-surname";a:3:{i:0;R:23803;i:1;R:21162;i:2;R:23333;}s:64:"1228:qua-crsp-cf23ba48c06d7e6d4b41a205bfb3cac3bb7b1e38-firstname";a:3:{i:0;R:23803;i:1;R:21162;i:2;R:23333;}s:66:"1228:qua-crsp-a89d2eac8d13516b29ef1f2253faa80144670f49-other_names";a:3:{i:0;R:23803;i:1;R:21162;i:2;R:23333;}s:67:"1228:qua-crsp-2d1655fda5449ee91536b245df9d20576a7d56c6-index_number";a:3:{i:0;R:23803;i:1;R:21162;i:2;R:23333;}s:72:"1228:qua-crsp-1c99e27247c1348af75862ee34a617aed8660a8f-training_cadre_id";a:3:{i:0;R:23803;i:1;R:21162;i:2;R:23333;}s:66:"1228:qua-crsp-4a5e4ab277b1254fcce1760f71b0cb29ac62606a-intake_date";a:3:{i:0;R:23803;i:1;R:21162;i:2;R:23333;}s:83:"1228:qua-crsp-30dd12dbd378ce643c975e402e0dc29e0f2a8735-search_people_in_the_system.";a:3:{i:0;R:23803;i:1;R:21162;i:2;R:23333;}s:69:"1228:qua-crsp-d4e0d7a2a8baa509cd2c464e016f2532419b0471-search_reports";a:3:{i:0;R:23803;i:1;R:21162;i:2;R:23333;}s:85:"1228:qua-crst-7517a66f1efd4a14828587f32836f5fed16cc717-search_based_on_training_infor";a:3:{i:0;s:22:"out-ihris-qualify-crst";i:1;R:21162;i:2;R:23333;}s:70:"1228:qua-crst-7b36653c13336f68c7e99e740d1cd79684c59985-search_training";a:3:{i:0;R:23821;i:1;R:21162;i:2;R:23333;}s:62:"1228:qua-crt-b6fe7f5e79177b05f6d251ecb9c162d45455045d-training";a:3:{i:0;s:21:"out-ihris-qualify-crt";i:1;R:21162;i:2;R:23333;}s:83:"1228:qua-crt-8b9787f50ccda0f97fcdc7f0429616eb67aa0be7-training_relationship_for_all";a:3:{i:0;R:23824;i:1;R:21162;i:2;R:23333;}s:84:"1228:qua-crt-2059ecea27f964a7ee5dc42e3fd6a82d9cc1299c-the_person_who_took_this_train";a:3:{i:0;R:23824;i:1;R:21162;i:2;R:23333;}s:60:"1228:qua-crt-8c41ae88467fe5bbad09fcd488662b25c3ec5333-person";a:3:{i:0;R:23824;i:1;R:21162;i:2;R:23333;}s:84:"1228:qua-crt-2517b43c5a0e38c1dea1c4abf6ba78fffc6f9abd-the_personal_contact_informati";a:3:{i:0;R:23824;i:1;R:21162;i:2;R:23333;}s:70:"1228:qua-crt-a3fea9dd7468e2f50a0b64cb69e6feec65c3bc04-personal_contact";a:3:{i:0;R:23824;i:1;R:21162;i:2;R:23333;}s:84:"1228:qua-crt-27592c07a2e5e76f2606ba3163e5fea5ac94d3da-the_cadre_trained_by_this_trai";a:3:{i:0;R:23824;i:1;R:21162;i:2;R:23333;}s:59:"1228:qua-crt-2586a9e4e3ba9092547e3eac14e105c5ffbda37b-cadre";a:3:{i:0;R:23824;i:1;R:21162;i:2;R:23333;}s:84:"1228:qua-crt-0397305981c3720a97b19001abcc97e52eac1d20-the_qualification_associated_w";a:3:{i:0;R:23824;i:1;R:21162;i:2;R:23333;}s:67:"1228:qua-crt-2ffe44e547583bf61e0c2b02d0288df152e1e76d-qualification";a:3:{i:0;R:23824;i:1;R:21162;i:2;R:23333;}s:84:"1228:qua-crt-a4644c06749f5545e8491a3e2c7b1e5e6f97dcc5-the_registration_for_this_trai";a:3:{i:0;R:23824;i:1;R:21162;i:2;R:23333;}s:66:"1228:qua-crt-b233e775d63bb8b86cf031776d4caea613f59cda-registration";a:3:{i:0;R:23824;i:1;R:21162;i:2;R:23333;}s:84:"1228:qua-crt-37e299231954f1fa2767a64adf74ee98c8735dc9-the_current_license_for_this_t";a:3:{i:0;R:23824;i:1;R:21162;i:2;R:23333;}s:61:"1228:qua-crt-3229609e15436ec51bcf00818a69a84dbc58a0c2-license";a:3:{i:0;R:23824;i:1;R:21162;i:2;R:23333;}s:84:"1228:qua-crt-3444edec8b56a4b0c148a9b44e8d43859935b34b-the_exam_details_for_this_trai";a:3:{i:0;R:23824;i:1;R:21162;i:2;R:23333;}s:58:"1228:qua-crt-0bd62a2517565554509c32cc92211ff599e24d96-exam";a:3:{i:0;R:23824;i:1;R:21162;i:2;R:23333;}s:84:"1228:qua-crt-6e354b913c1dd4b6775ddc1d2ea7998daabf90ff-the_training_institution_where";a:3:{i:0;R:23824;i:1;R:21162;i:2;R:23333;}s:74:"1228:qua-crt-d38e9b888e8b481eeea6da394d506f30ddf68a32-training_institution";a:3:{i:0;R:23824;i:1;R:21162;i:2;R:23333;}s:84:"1228:qua-crt-73606566b77a3b058516c6f0658d921c2478db33-the_district_where_this_instit";a:3:{i:0;R:23824;i:1;R:21162;i:2;R:23333;}s:74:"1228:qua-crt-25287cb0662f5b3e27b65080efa83b1a2d3f0dd1-institution_district";a:3:{i:0;R:23824;i:1;R:21162;i:2;R:23333;}s:69:"1228:qua-crt-8a193368d224c4f67add1fa4dc98ea5547c23b23-training_report";a:3:{i:0;R:23824;i:1;R:21162;i:2;R:23333;}s:84:"1228:qua-crt-e4b0b1e4f51e89e4284204552f376675e7e4a020-reports_based_on_individual_tr";a:3:{i:0;R:23824;i:1;R:21162;i:2;R:23333;}s:66:"1228:qua-crt-2d1655fda5449ee91536b245df9d20576a7d56c6-index_number";a:3:{i:0;R:23824;i:1;R:21162;i:2;R:23333;}s:71:"1228:qua-crt-1c99e27247c1348af75862ee34a617aed8660a8f-training_cadre_id";a:3:{i:0;R:23824;i:1;R:21162;i:2;R:23333;}s:71:"1228:qua-crt-7ac4d2f422be1d6a39c7eef3834ecba1cb754f77-intake_date_after";a:3:{i:0;R:23824;i:1;R:21162;i:2;R:23333;}s:72:"1228:qua-crt-f000fc2ac2df57b73bd91dbe2e2302c32c87213f-intake_date_before";a:3:{i:0;R:23824;i:1;R:21162;i:2;R:23333;}s:65:"1228:qua-crt-4a5e4ab277b1254fcce1760f71b0cb29ac62606a-intake_date";a:3:{i:0;R:23824;i:1;R:21162;i:2;R:23333;}s:68:"1228:qua-crt-1d5971eb658d8f9dd3502f9b1a761cb73ad91869-license_number";a:3:{i:0;R:23824;i:1;R:21162;i:2;R:23333;}s:70:"1228:qua-crt-10091d4b7fc447772e69f9e078195f310fffeffe-license_end_date";a:3:{i:0;R:23824;i:1;R:21162;i:2;R:23333;}s:73:"1228:qua-crt-1da775087104510f18021de3ce98227ec4fe0315-registration_number";a:3:{i:0;R:23824;i:1;R:21162;i:2;R:23333;}s:61:"1228:qua-crt-77dfca2a56f9b1ffc2b6687e230088cf86fbc074-surname";a:3:{i:0;R:23824;i:1;R:21162;i:2;R:23333;}s:64:"1228:qua-crt-b6ea992aab4668311bb94778e056dd0285f27621-first_name";a:3:{i:0;R:23824;i:1;R:21162;i:2;R:23333;}s:65:"1228:qua-crt-a89d2eac8d13516b29ef1f2253faa80144670f49-other_names";a:3:{i:0;R:23824;i:1;R:21162;i:2;R:23333;}s:70:"1228:qua-crt-a49017e662b2d4cdf74d8e98005aa9f095f7cbf7-training_reports";a:3:{i:0;R:23824;i:1;R:21162;i:2;R:23333;}s:66:"1228:qua-pfl-2e37d340b041c3b32d48d323b59ea13bada7165f-license_card";a:3:{i:0;s:21:"out-ihris-qualify-pfl";i:1;R:21162;i:2;R:23333;}s:78:"1228:qua-pfr-92363e7bd4e6a9f80a3938488efb60337f983017-registration_certificate";a:3:{i:0;s:21:"out-ihris-qualify-pfr";i:1;R:21162;i:2;R:23333;}s:73:"1228:qua-rve-8d3d15f900bdef9d1118b3a1f53043f62d12f3fe-record_verification";a:3:{i:0;s:21:"out-ihris-qualify-rve";i:1;R:21162;i:2;R:23333;}s:73:"1228:qua-rve-b0e54fa3f390463e89ae26545a22fcc9ea2a59a7-verification_change";a:3:{i:0;R:23863;i:1;R:21162;i:2;R:23333;}s:71:"1228:qua-rve-d49b7f1d7ab61da23ca0d74e328924f97f6b506c-verification_date";a:3:{i:0;R:23863;i:1;R:21162;i:2;R:23333;}s:66:"1228:qua-rve-32b590bb589a754a6b4aea83e4e15ccbc40fb75a-changes_made";a:3:{i:0;R:23863;i:1;R:21162;i:2;R:23333;}s:67:"1228:qua-rve-968dddbb18c4f29a266663e411e3513043574775-verify_record";a:3:{i:0;R:23863;i:1;R:21162;i:2;R:23333;}s:75:"1228:qua-rve-957cd1a44423bc735be244be158a79ad5e0affd6-edit_this_information";a:3:{i:0;R:23863;i:1;R:21162;i:2;R:23333;}s:77:"1228:qua-rve-8f12a44b12f65ea43ddb4305154428ef1ac77771-update_this_information";a:3:{i:0;R:23863;i:1;R:21162;i:2;R:23333;}s:84:"1228:qua-rve-17cc97c9116827481430ff86abb45cad7741e88b-select_another_verification_ch";a:3:{i:0;R:23863;i:1;R:21162;i:2;R:23333;}s:68:"1228:qua-site-89346c61676402e30f8d6e6e2eab251f47ea51a5-ihris_qualify";a:3:{i:0;s:22:"out-ihris-qualify-site";i:1;R:21162;i:2;R:23333;}s:65:"1228:qua-site-bcd7f4a21588655f07e3daf33242eb29623f69ba-welcome,_s";a:3:{i:0;R:23872;i:1;R:21162;i:2;R:23333;}s:85:"1228:qua-site-e508a42314279c150d8e5f7d91f21234ebcdf21c-to_get_started_using_ihris_qua";a:3:{i:0;R:23872;i:1;R:21162;i:2;R:23333;}s:81:"1228:qua-site-12effc57535e4df25a67067a3d69596704454acd-hris_strengthening_website";a:3:{i:0;R:23872;i:1;R:21162;i:2;R:23333;}s:62:"1228:qua-site-ca4f9dcf204e2037bfe5884867bead98bd9cbaf8-welcome";a:3:{i:0;R:23872;i:1;R:21162;i:2;R:23333;}s:85:"1228:qua-site-f4c8e2a62a73bb6cf248e6f93cf32674db7d95df-is_a_health_worker_training,_l";a:3:{i:0;R:23872;i:1;R:21162;i:2;R:23333;}s:85:"1228:qua-site-3489087bbdb399fbd4a12e60c24bdbedbbb64353-an_innovative_global_initiativ";a:3:{i:0;R:23872;i:1;R:21162;i:2;R:23333;}s:85:"1228:qua-site-1b2d0710d5a4e7a701f4702846a0e12b6fb3ba6d-certification_licensing_system";a:3:{i:0;R:23872;i:1;R:21162;i:2;R:23333;}s:59:"1228:qua-site-70f8bb9a8a5393ef080507a89e4b98d139000d65-home";a:3:{i:0;R:23872;i:1;R:21162;i:2;R:23333;}s:59:"1228:qua-site-c47ae15370cfe1ed2781eedc1dc2547d12d9e972-help";a:3:{i:0;R:23872;i:1;R:21162;i:2;R:23333;}s:63:"1228:qua-site-c8d7677e19495f21da984fe4e2829b7ca91b27c7-feedback";a:3:{i:0;R:23872;i:1;R:21162;i:2;R:23333;}s:68:"1228:qua-site-baaaddcd0344827ae61c9a8ef34766d488dca737-ihris_website";a:3:{i:0;R:23872;i:1;R:21162;i:2;R:23333;}s:67:"1228:qua-site-e0338ce56169028e43a892f051621976f8a2d455-log_out_as_s";a:3:{i:0;R:23872;i:1;R:21162;i:2;R:23333;}s:76:"1228:qua-site-16a0ecf125609aa03a1a9d6aba18061d1eaac2e4-ihris_qualify_version";a:3:{i:0;R:23872;i:1;R:21162;i:2;R:23333;}s:83:"1228:qua-site-d22da675b52cf51269c8c2c82628719ed1926bab-thank_you_for_your_feedback.";a:3:{i:0;R:23872;i:1;R:21162;i:2;R:23333;}s:61:"1228:qua-site-63143b6f8007b98c53ca2149822777b3566f9241-return";a:3:{i:0;R:23872;i:1;R:21162;i:2;R:23333;}s:69:"1228:qua-site-478dbb263cbdf399e1edcb66433ae0f03e6f9fca-privacy_policy";a:3:{i:0;R:23872;i:1;R:21162;i:2;R:23333;}s:85:"1228:qua-site-d4161b074c11bbcf046f3cabd88e8e1dfa37f212-._we_will_use_your_email_addre";a:3:{i:0;R:23872;i:1;R:21162;i:2;R:23333;}s:73:"1228:qua-site-41954b0719910dcaef689f5dd57ba6362c833a29-site_feedback_form";a:3:{i:0;R:23872;i:1;R:21162;i:2;R:23333;}s:63:"1228:qua-site-fce06e20e5f7f74aacccab40b59b75a56c8f7305-comments";a:3:{i:0;R:23872;i:1;R:21162;i:2;R:23333;}s:59:"1228:qua-site-709a23220f2c3d64d1e1d6d18c4d5280f8d82fca-name";a:3:{i:0;R:23872;i:1;R:21162;i:2;R:23333;}s:62:"1228:qua-site-7a1994999d181deea68e4304b3346e78f838ecb7-company";a:3:{i:0;R:23872;i:1;R:21162;i:2;R:23333;}s:60:"1228:qua-site-768e0c1c69573fb588f61f1308a015c11468e05f-title";a:3:{i:0;R:23872;i:1;R:21162;i:2;R:23333;}s:63:"1228:qua-site-973d438fe5d3cf552c5fcd3b2265fe9bff3d71c6-industry";a:3:{i:0;R:23872;i:1;R:21162;i:2;R:23333;}s:62:"1228:qua-site-d70f93df5e8f9b55be44fbeee9d203972e3383d4-address";a:3:{i:0;R:23872;i:1;R:21162;i:2;R:23333;}s:59:"1228:qua-site-4271627f4f0bef6104a95cca7bb21cda4d74503e-city";a:3:{i:0;R:23872;i:1;R:21162;i:2;R:23333;}s:69:"1228:qua-site-8b19f84098767ca9c68285f81a77d6c5cd992ab0-state_province";a:3:{i:0;R:23872;i:1;R:21162;i:2;R:23333;}s:66:"1228:qua-site-c7ac934cfaa9b50e25559321e48737eb6bc8d9d8-postal_code";a:3:{i:0;R:23872;i:1;R:21162;i:2;R:23333;}s:62:"1228:qua-site-d523ebbd10146cdfd39dee077f04c9d08468d0bc-country";a:3:{i:0;R:23872;i:1;R:21162;i:2;R:23333;}s:64:"1228:qua-site-fbadb22cc438ab6e67737bbc0c3b51ebe025bfb0-telephone";a:3:{i:0;R:23872;i:1;R:21162;i:2;R:23333;}s:58:"1228:qua-site-b67fad2e2edf27045555eadaf1e4a848ab242206-fax";a:3:{i:0;R:23872;i:1;R:21162;i:2;R:23333;}s:60:"1228:qua-site-84add5b2952787581cb9a8851eef63d1ec75d22b-email";a:3:{i:0;R:23872;i:1;R:21162;i:2;R:23333;}s:63:"1228:qua-site-45bd908df490edd79694ba0daff82fc092970b55-capacity";a:3:{i:0;R:23872;i:1;R:21162;i:2;R:23333;}s:59:"1228:qua-site-2d05d0f179ce47e1e637d115cb0c71e67b625762-plus";a:3:{i:0;R:23872;i:1;R:21162;i:2;R:23333;}s:85:"1228:qua-site-95c1682e7f3be2852e2cf57cdb03e37f27ea1fd2-if_you_have_a_bug_report,_prob";a:3:{i:0;R:23872;i:1;R:21162;i:2;R:23333;}s:21:"1210:s_directionality";a:2:{i:0;s:15:"out-mantis-core";i:1;s:16:"out-mantis-0-all";}s:28:"1210:s_actiongroup_menu_move";a:2:{i:0;R:23908;i:1;R:23909;}s:28:"1210:s_actiongroup_menu_copy";a:2:{i:0;R:23908;i:1;R:23909;}s:30:"1210:s_actiongroup_menu_assign";a:2:{i:0;R:23908;i:1;R:23909;}s:29:"1210:s_actiongroup_menu_close";a:2:{i:0;R:23908;i:1;R:23909;}s:30:"1210:s_actiongroup_menu_delete";a:2:{i:0;R:23908;i:1;R:23909;}s:31:"1210:s_actiongroup_menu_resolve";a:2:{i:0;R:23908;i:1;R:23909;}s:39:"1210:s_actiongroup_menu_update_priority";a:2:{i:0;R:23908;i:1;R:23909;}s:37:"1210:s_actiongroup_menu_update_status";a:2:{i:0;R:23908;i:1;R:23909;}s:39:"1210:s_actiongroup_menu_update_severity";a:2:{i:0;R:23908;i:1;R:23909;}s:42:"1210:s_actiongroup_menu_update_view_status";a:2:{i:0;R:23908;i:1;R:23909;}s:39:"1210:s_actiongroup_menu_update_category";a:2:{i:0;R:23908;i:1;R:23909;}s:34:"1210:s_actiongroup_menu_set_sticky";a:2:{i:0;R:23908;i:1;R:23909;}s:36:"1210:s_actiongroup_menu_update_field";a:2:{i:0;R:23908;i:1;R:23909;}s:45:"1210:s_actiongroup_menu_update_target_version";a:2:{i:0;R:23908;i:1;R:23909;}s:47:"1210:s_actiongroup_menu_update_fixed_in_version";a:2:{i:0;R:23908;i:1;R:23909;}s:44:"1210:s_actiongroup_menu_update_product_build";a:2:{i:0;R:23908;i:1;R:23909;}s:32:"1210:s_actiongroup_menu_add_note";a:2:{i:0;R:23908;i:1;R:23909;}s:35:"1210:s_actiongroup_menu_attach_tags";a:2:{i:0;R:23908;i:1;R:23909;}s:23:"1210:s_actiongroup_bugs";a:2:{i:0;R:23908;i:1;R:23909;}s:42:"1210:s_actiongroup_error_issue_is_readonly";a:2:{i:0;R:23908;i:1;R:23909;}s:19:"1210:s_all_projects";a:2:{i:0;R:23908;i:1;R:23909;}s:16:"1210:s_move_bugs";a:2:{i:0;R:23908;i:1;R:23909;}s:27:"1210:s_operation_successful";a:2:{i:0;R:23908;i:1;R:23909;}s:17:"1210:s_date_order";a:2:{i:0;R:23908;i:1;R:23909;}s:30:"1210:s_print_all_bug_page_link";a:2:{i:0;R:23908;i:1;R:23909;}s:17:"1210:s_csv_export";a:2:{i:0;R:23908;i:1;R:23909;}s:19:"1210:s_excel_export";a:2:{i:0;R:23908;i:1;R:23909;}s:24:"1210:s_login_anonymously";a:2:{i:0;R:23908;i:1;R:23909;}s:16:"1210:s_anonymous";a:2:{i:0;R:23908;i:1;R:23909;}s:23:"1210:s_jump_to_bugnotes";a:2:{i:0;R:23908;i:1;R:23909;}s:25:"1210:s_public_project_msg";a:2:{i:0;R:23908;i:1;R:23909;}s:26:"1210:s_private_project_msg";a:2:{i:0;R:23908;i:1;R:23909;}s:27:"1210:s_access_level_project";a:2:{i:0;R:23908;i:1;R:23909;}s:30:"1210:s_view_submitted_bug_link";a:2:{i:0;R:23908;i:1;R:23909;}s:24:"1210:s_assigned_projects";a:2:{i:0;R:23908;i:1;R:23909;}s:26:"1210:s_unassigned_projects";a:2:{i:0;R:23908;i:1;R:23909;}s:12:"1210:s_print";a:2:{i:0;R:23908;i:1;R:23909;}s:11:"1210:s_jump";a:2:{i:0;R:23908;i:1;R:23909;}s:17:"1210:s_copy_users";a:2:{i:0;R:23908;i:1;R:23909;}s:27:"1210:s_copy_categories_from";a:2:{i:0;R:23908;i:1;R:23909;}s:25:"1210:s_copy_categories_to";a:2:{i:0;R:23908;i:1;R:23909;}s:25:"1210:s_copy_versions_from";a:2:{i:0;R:23908;i:1;R:23909;}s:23:"1210:s_copy_versions_to";a:2:{i:0;R:23908;i:1;R:23909;}s:22:"1210:s_copy_users_from";a:2:{i:0;R:23908;i:1;R:23909;}s:20:"1210:s_copy_users_to";a:2:{i:0;R:23908;i:1;R:23909;}s:18:"1210:s_bug_history";a:2:{i:0;R:23908;i:1;R:23909;}s:12:"1210:s_field";a:2:{i:0;R:23908;i:1;R:23909;}s:16:"1210:s_old_value";a:2:{i:0;R:23908;i:1;R:23909;}s:16:"1210:s_new_value";a:2:{i:0;R:23908;i:1;R:23909;}s:20:"1210:s_date_modified";a:2:{i:0;R:23908;i:1;R:23909;}s:14:"1210:s_bugnote";a:2:{i:0;R:23908;i:1;R:23909;}s:13:"1210:s_change";a:2:{i:0;R:23908;i:1;R:23909;}s:25:"1210:s_bugnote_view_state";a:2:{i:0;R:23908;i:1;R:23909;}s:18:"1210:s_bug_monitor";a:2:{i:0;R:23908;i:1;R:23909;}s:22:"1210:s_bug_end_monitor";a:2:{i:0;R:23908;i:1;R:23909;}s:19:"1210:s_announcement";a:2:{i:0;R:23908;i:1;R:23909;}s:19:"1210:s_stays_on_top";a:2:{i:0;R:23908;i:1;R:23909;}s:25:"1210:s_bugnote_link_title";a:2:{i:0;R:23908;i:1;R:23909;}s:28:"1210:s_delete_bugnote_button";a:2:{i:0;R:23908;i:1;R:23909;}s:30:"1210:s_delete_bugnote_sure_msg";a:2:{i:0;R:23908;i:1;R:23909;}s:24:"1210:s_bug_relationships";a:2:{i:0;R:23908;i:1;R:23909;}s:30:"1210:s_empty_password_sure_msg";a:2:{i:0;R:23908;i:1;R:23909;}s:28:"1210:s_empty_password_button";a:2:{i:0;R:23908;i:1;R:23909;}s:27:"1210:s_reauthenticate_title";a:2:{i:0;R:23908;i:1;R:23909;}s:29:"1210:s_reauthenticate_message";a:2:{i:0;R:23908;i:1;R:23909;}s:18:"1210:s_no_category";a:2:{i:0;R:23908;i:1;R:23909;}s:24:"1210:s_global_categories";a:2:{i:0;R:23908;i:1;R:23909;}s:14:"1210:s_inherit";a:2:{i:0;R:23908;i:1;R:23909;}s:21:"1210:s_inherit_global";a:2:{i:0;R:23908;i:1;R:23909;}s:21:"1210:s_inherit_parent";a:2:{i:0;R:23908;i:1;R:23909;}s:36:"1210:s_update_subproject_inheritance";a:2:{i:0;R:23908;i:1;R:23909;}s:19:"1210:s_duplicate_of";a:2:{i:0;R:23908;i:1;R:23909;}s:20:"1210:s_has_duplicate";a:2:{i:0;R:23908;i:1;R:23909;}s:17:"1210:s_related_to";a:2:{i:0;R:23908;i:1;R:23909;}s:19:"1210:s_dependant_on";a:2:{i:0;R:23908;i:1;R:23909;}s:13:"1210:s_blocks";a:2:{i:0;R:23908;i:1;R:23909;}s:14:"1210:s_new_bug";a:2:{i:0;R:23908;i:1;R:23909;}s:20:"1210:s_bugnote_added";a:2:{i:0;R:23908;i:1;R:23909;}s:21:"1210:s_bugnote_edited";a:2:{i:0;R:23908;i:1;R:23909;}s:22:"1210:s_bugnote_deleted";a:2:{i:0;R:23908;i:1;R:23909;}s:22:"1210:s_summary_updated";a:2:{i:0;R:23908;i:1;R:23909;}s:26:"1210:s_description_updated";a:2:{i:0;R:23908;i:1;R:23909;}s:37:"1210:s_additional_information_updated";a:2:{i:0;R:23908;i:1;R:23909;}s:33:"1210:s_steps_to_reproduce_updated";a:2:{i:0;R:23908;i:1;R:23909;}s:17:"1210:s_file_added";a:2:{i:0;R:23908;i:1;R:23909;}s:19:"1210:s_file_deleted";a:2:{i:0;R:23908;i:1;R:23909;}s:18:"1210:s_bug_deleted";a:2:{i:0;R:23908;i:1;R:23909;}s:19:"1210:s_make_private";a:2:{i:0;R:23908;i:1;R:23909;}s:18:"1210:s_make_public";a:2:{i:0;R:23908;i:1;R:23909;}s:30:"1210:s_create_new_project_link";a:2:{i:0;R:23908;i:1;R:23909;}s:17:"1210:s_login_link";a:2:{i:0;R:23908;i:1;R:23909;}s:20:"1210:s_select_option";a:2:{i:0;R:23908;i:1;R:23909;}s:29:"1210:s_bug_actiongroup_access";a:2:{i:0;R:23908;i:1;R:23909;}s:29:"1210:s_bug_actiongroup_status";a:2:{i:0;R:23908;i:1;R:23909;}s:31:"1210:s_bug_actiongroup_category";a:2:{i:0;R:23908;i:1;R:23909;}s:30:"1210:s_bug_actiongroup_handler";a:2:{i:0;R:23908;i:1;R:23909;}s:30:"1210:s_bug_actiongroup_version";a:2:{i:0;R:23908;i:1;R:23909;}s:26:"1210:s_close_bugs_conf_msg";a:2:{i:0;R:23908;i:1;R:23909;}s:27:"1210:s_delete_bugs_conf_msg";a:2:{i:0;R:23908;i:1;R:23909;}s:25:"1210:s_move_bugs_conf_msg";a:2:{i:0;R:23908;i:1;R:23909;}s:25:"1210:s_copy_bugs_conf_msg";a:2:{i:0;R:23908;i:1;R:23909;}s:27:"1210:s_assign_bugs_conf_msg";a:2:{i:0;R:23908;i:1;R:23909;}s:28:"1210:s_resolve_bugs_conf_msg";a:2:{i:0;R:23908;i:1;R:23909;}s:29:"1210:s_priority_bugs_conf_msg";a:2:{i:0;R:23908;i:1;R:23909;}s:27:"1210:s_status_bugs_conf_msg";a:2:{i:0;R:23908;i:1;R:23909;}s:32:"1210:s_view_status_bugs_conf_msg";a:2:{i:0;R:23908;i:1;R:23909;}s:29:"1210:s_category_bugs_conf_msg";a:2:{i:0;R:23908;i:1;R:23909;}s:31:"1210:s_set_sticky_bugs_conf_msg";a:2:{i:0;R:23908;i:1;R:23909;}s:37:"1210:s_fixed_in_version_bugs_conf_msg";a:2:{i:0;R:23908;i:1;R:23909;}s:35:"1210:s_target_version_bugs_conf_msg";a:2:{i:0;R:23908;i:1;R:23909;}s:30:"1210:s_close_group_bugs_button";a:2:{i:0;R:23908;i:1;R:23909;}s:31:"1210:s_delete_group_bugs_button";a:2:{i:0;R:23908;i:1;R:23909;}s:29:"1210:s_move_group_bugs_button";a:2:{i:0;R:23908;i:1;R:23909;}s:29:"1210:s_copy_group_bugs_button";a:2:{i:0;R:23908;i:1;R:23909;}s:31:"1210:s_assign_group_bugs_button";a:2:{i:0;R:23908;i:1;R:23909;}s:32:"1210:s_resolve_group_bugs_button";a:2:{i:0;R:23908;i:1;R:23909;}s:33:"1210:s_priority_group_bugs_button";a:2:{i:0;R:23908;i:1;R:23909;}s:31:"1210:s_status_group_bugs_button";a:2:{i:0;R:23908;i:1;R:23909;}s:33:"1210:s_category_group_bugs_button";a:2:{i:0;R:23908;i:1;R:23909;}s:36:"1210:s_view_status_group_bugs_button";a:2:{i:0;R:23908;i:1;R:23909;}s:35:"1210:s_set_sticky_group_bugs_button";a:2:{i:0;R:23908;i:1;R:23909;}s:41:"1210:s_fixed_in_version_group_bugs_button";a:2:{i:0;R:23908;i:1;R:23909;}s:39:"1210:s_target_version_group_bugs_button";a:2:{i:0;R:23908;i:1;R:23909;}s:28:"1210:s_update_severity_title";a:2:{i:0;R:23908;i:1;R:23909;}s:26:"1210:s_update_severity_msg";a:2:{i:0;R:23908;i:1;R:23909;}s:29:"1210:s_update_severity_button";a:2:{i:0;R:23908;i:1;R:23909;}s:18:"1210:s_hide_button";a:2:{i:0;R:23908;i:1;R:23909;}s:33:"1210:s_printing_preferences_title";a:2:{i:0;R:23908;i:1;R:23909;}s:28:"1210:s_printing_options_link";a:2:{i:0;R:23908;i:1;R:23909;}s:20:"1210:s_bugnote_title";a:2:{i:0;R:23908;i:1;R:23909;}s:19:"1210:s_bugnote_date";a:2:{i:0;R:23908;i:1;R:23909;}s:26:"1210:s_bugnote_description";a:2:{i:0;R:23908;i:1;R:23909;}s:23:"1210:s_error_no_proceed";a:2:{i:0;R:23908;i:1;R:23909;}s:38:"1210:mantis_error\x5berror_generic\x5d";a:2:{i:0;R:23908;i:1;R:23909;}s:34:"1210:mantis_error\x5berror_sql\x5d";a:2:{i:0;R:23908;i:1;R:23909;}s:37:"1210:mantis_error\x5berror_report\x5d";a:2:{i:0;R:23908;i:1;R:23909;}s:48:"1210:mantis_error\x5berror_no_file_specified\x5d";a:2:{i:0;R:23908;i:1;R:23909;}s:46:"1210:mantis_error\x5berror_file_disallowed\x5d";a:2:{i:0;R:23908;i:1;R:23909;}s:43:"1210:mantis_error\x5berror_no_directory\x5d";a:2:{i:0;R:23908;i:1;R:23909;}s:48:"1210:mantis_error\x5berror_duplicate_project\x5d";a:2:{i:0;R:23908;i:1;R:23909;}s:42:"1210:mantis_error\x5berror_empty_field\x5d";a:2:{i:0;R:23908;i:1;R:23909;}s:48:"1210:mantis_error\x5berror_protected_account\x5d";a:2:{i:0;R:23908;i:1;R:23909;}s:44:"1210:mantis_error\x5berror_access_denied\x5d";a:2:{i:0;R:23908;i:1;R:23909;}s:45:"1210:mantis_error\x5berror_upload_failure\x5d";a:2:{i:0;R:23908;i:1;R:23909;}s:43:"1210:mantis_error\x5berror_file_too_big\x5d";a:2:{i:0;R:23908;i:1;R:23909;}s:48:"1210:mantis_error\x5berror_gpc_var_not_found\x5d";a:2:{i:0;R:23908;i:1;R:23909;}s:51:"1210:mantis_error\x5berror_user_name_not_unique\x5d";a:2:{i:0;R:23908;i:1;R:23909;}s:51:"1210:mantis_error\x5berror_config_opt_not_found\x5d";a:2:{i:0;R:23908;i:1;R:23909;}s:59:"1210:mantis_error\x5berror_config_opt_cant_be_set_in_db\x5d";a:2:{i:0;R:23908;i:1;R:23909;}s:52:"1210:mantis_error\x5berror_lang_string_not_found\x5d";a:2:{i:0;R:23908;i:1;R:23909;}s:48:"1210:mantis_error\x5berror_bugnote_not_found\x5d";a:2:{i:0;R:23908;i:1;R:23909;}s:48:"1210:mantis_error\x5berror_project_not_found\x5d";a:2:{i:0;R:23908;i:1;R:23909;}s:49:"1210:mantis_error\x5berror_db_field_not_found\x5d";a:2:{i:0;R:23908;i:1;R:23909;}s:48:"1210:mantis_error\x5berror_ftp_connect_error\x5d";a:2:{i:0;R:23908;i:1;R:23909;}s:53:"1210:mantis_error\x5berror_handler_access_too_low\x5d";a:2:{i:0;R:23908;i:1;R:23909;}s:54:"1210:mantis_error\x5berror_project_name_not_unique\x5d";a:2:{i:0;R:23908;i:1;R:23909;}s:51:"1210:mantis_error\x5berror_project_name_invalid\x5d";a:2:{i:0;R:23908;i:1;R:23909;}s:53:"1210:mantis_error\x5berror_user_by_name_not_found\x5d";a:2:{i:0;R:23908;i:1;R:23909;}s:51:"1210:mantis_error\x5berror_user_by_id_not_found\x5d";a:2:{i:0;R:23908;i:1;R:23909;}s:50:"1210:mantis_error\x5berror_auth_invalid_cookie\x5d";a:2:{i:0;R:23908;i:1;R:23909;}s:51:"1210:mantis_error\x5berror_user_prefs_not_found\x5d";a:2:{i:0;R:23908;i:1;R:23909;}s:45:"1210:mantis_error\x5berror_news_not_found\x5d";a:2:{i:0;R:23908;i:1;R:23909;}s:60:"1210:mantis_error\x5berror_user_create_password_mismatch\x5d";a:2:{i:0;R:23908;i:1;R:23909;}s:49:"1210:mantis_error\x5berror_gpc_array_expected\x5d";a:2:{i:0;R:23908;i:1;R:23909;}s:51:"1210:mantis_error\x5berror_gpc_array_unexpected\x5d";a:2:{i:0;R:23908;i:1;R:23909;}s:45:"1210:mantis_error\x5berror_gpc_not_number\x5d";a:2:{i:0;R:23908;i:1;R:23909;}s:44:"1210:mantis_error\x5berror_bug_not_found\x5d";a:2:{i:0;R:23908;i:1;R:23909;}s:47:"1210:mantis_error\x5berror_filter_not_found\x5d";a:2:{i:0;R:23908;i:1;R:23909;}s:45:"1210:mantis_error\x5berror_filter_too_old\x5d";a:2:{i:0;R:23908;i:1;R:23909;}s:44:"1210:mantis_error\x5berror_email_invalid\x5d";a:2:{i:0;R:23908;i:1;R:23909;}s:47:"1210:mantis_error\x5berror_email_disposable\x5d";a:2:{i:0;R:23908;i:1;R:23909;}s:53:"1210:mantis_error\x5berror_user_profile_not_found\x5d";a:2:{i:0;R:23908;i:1;R:23909;}s:47:"1210:mantis_error\x5berror_file_not_allowed\x5d";a:2:{i:0;R:23908;i:1;R:23909;}s:45:"1210:mantis_error\x5berror_file_duplicate\x5d";a:2:{i:0;R:23908;i:1;R:23909;}s:55:"1210:mantis_error\x5berror_file_invalid_upload_path\x5d";a:2:{i:0;R:23908;i:1;R:23909;}s:53:"1210:mantis_error\x5berror_file_no_upload_failure\x5d";a:2:{i:0;R:23908;i:1;R:23909;}s:47:"1210:mantis_error\x5berror_file_move_failed\x5d";a:2:{i:0;R:23908;i:1;R:23909;}s:49:"1210:mantis_error\x5berror_bug_duplicate_self\x5d";a:2:{i:0;R:23908;i:1;R:23909;}s:53:"1210:mantis_error\x5berror_bug_revision_not_found\x5d";a:2:{i:0;R:23908;i:1;R:23909;}s:53:"1210:mantis_error\x5berror_custom_field_not_found\x5d";a:2:{i:0;R:23908;i:1;R:23909;}s:59:"1210:mantis_error\x5berror_custom_field_name_not_unique\x5d";a:2:{i:0;R:23908;i:1;R:23909;}s:50:"1210:mantis_error\x5berror_custom_field_in_use\x5d";a:2:{i:0;R:23908;i:1;R:23909;}s:57:"1210:mantis_error\x5berror_custom_field_invalid_value\x5d";a:2:{i:0;R:23908;i:1;R:23909;}s:62:"1210:mantis_error\x5berror_custom_field_invalid_definition\x5d";a:2:{i:0;R:23908;i:1;R:23909;}s:47:"1210:mantis_error\x5berror_ldap_auth_failed\x5d";a:2:{i:0;R:23908;i:1;R:23909;}s:57:"1210:mantis_error\x5berror_ldap_server_connect_failed\x5d";a:2:{i:0;R:23908;i:1;R:23909;}s:49:"1210:mantis_error\x5berror_ldap_update_failed\x5d";a:2:{i:0;R:23908;i:1;R:23909;}s:50:"1210:mantis_error\x5berror_ldap_user_not_found\x5d";a:2:{i:0;R:23908;i:1;R:23909;}s:56:"1210:mantis_error\x5berror_ldap_extension_not_loaded\x5d";a:2:{i:0;R:23908;i:1;R:23909;}s:48:"1210:mantis_error\x5berror_db_connect_failed\x5d";a:2:{i:0;R:23908;i:1;R:23909;}s:46:"1210:mantis_error\x5berror_db_query_failed\x5d";a:2:{i:0;R:23908;i:1;R:23909;}s:47:"1210:mantis_error\x5berror_db_select_failed\x5d";a:2:{i:0;R:23908;i:1;R:23909;}s:49:"1210:mantis_error\x5berror_category_duplicate\x5d";a:2:{i:0;R:23908;i:1;R:23909;}s:49:"1210:mantis_error\x5berror_category_no_action\x5d";a:2:{i:0;R:23908;i:1;R:23909;}s:49:"1210:mantis_error\x5berror_category_not_found\x5d";a:2:{i:0;R:23908;i:1;R:23909;}s:61:"1210:mantis_error\x5berror_category_not_found_for_project\x5d";a:2:{i:0;R:23908;i:1;R:23909;}s:48:"1210:mantis_error\x5berror_version_duplicate\x5d";a:2:{i:0;R:23908;i:1;R:23909;}s:48:"1210:mantis_error\x5berror_version_not_found\x5d";a:2:{i:0;R:23908;i:1;R:23909;}s:48:"1210:mantis_error\x5berror_user_name_invalid\x5d";a:2:{i:0;R:23908;i:1;R:23909;}s:53:"1210:mantis_error\x5berror_user_real_name_invalid\x5d";a:2:{i:0;R:23908;i:1;R:23909;}s:60:"1210:mantis_error\x5berror_user_does_not_have_req_access\x5d";a:2:{i:0;R:23908;i:1;R:23909;}s:51:"1210:mantis_error\x5berror_user_real_match_user\x5d";a:2:{i:0;R:23908;i:1;R:23909;}s:54:"1210:mantis_error\x5berror_sponsorship_not_enabled\x5d";a:2:{i:0;R:23908;i:1;R:23909;}s:52:"1210:mantis_error\x5berror_sponsorship_not_found\x5d";a:2:{i:0;R:23908;i:1;R:23909;}s:57:"1210:mantis_error\x5berror_sponsorship_amount_too_low\x5d";a:2:{i:0;R:23908;i:1;R:23909;}s:71:"1210:mantis_error\x5berror_sponsorship_handler_access_level_too_low\x5d";a:2:{i:0;R:23908;i:1;R:23909;}s:72:"1210:mantis_error\x5berror_sponsorship_assigner_access_level_too_low\x5d";a:2:{i:0;R:23908;i:1;R:23909;}s:59:"1210:mantis_error\x5berror_sponsorship_sponsor_no_email\x5d";a:2:{i:0;R:23908;i:1;R:23909;}s:49:"1210:mantis_error\x5berror_config_opt_invalid\x5d";a:2:{i:0;R:23908;i:1;R:23909;}s:58:"1210:mantis_error\x5berror_bug_read_only_action_denied\x5d";a:2:{i:0;R:23908;i:1;R:23909;}s:58:"1210:mantis_error\x5berror_relationship_already_exists\x5d";a:2:{i:0;R:23908;i:1;R:23909;}s:53:"1210:mantis_error\x5berror_relationship_not_found\x5d";a:2:{i:0;R:23908;i:1;R:23909;}s:76:"1210:mantis_error\x5berror_relationship_access_level_to_dest_bug_too_low\x5d";a:2:{i:0;R:23908;i:1;R:23909;}s:52:"1210:mantis_error\x5berror_relationship_same_bug\x5d";a:2:{i:0;R:23908;i:1;R:23909;}s:58:"1210:mantis_error\x5berror_signup_not_matching_captcha\x5d";a:2:{i:0;R:23908;i:1;R:23909;}s:56:"1210:mantis_error\x5berror_lost_password_not_enabled\x5d";a:2:{i:0;R:23908;i:1;R:23909;}s:63:"1210:mantis_error\x5berror_lost_password_no_email_specified\x5d";a:2:{i:0;R:23908;i:1;R:23909;}s:62:"1210:mantis_error\x5berror_lost_password_not_matching_data\x5d";a:2:{i:0;R:23908;i:1;R:23909;}s:65:"1210:mantis_error\x5berror_lost_password_confirm_hash_invalid\x5d";a:2:{i:0;R:23908;i:1;R:23909;}s:77:"1210:mantis_error\x5berror_lost_password_max_in_progress_attempts_reached\x5d";a:2:{i:0;R:23908;i:1;R:23909;}s:58:"1210:mantis_error\x5berror_project_recursive_hierarchy\x5d";a:2:{i:0;R:23908;i:1;R:23909;}s:53:"1210:mantis_error\x5berror_user_change_last_admin\x5d";a:2:{i:0;R:23908;i:1;R:23909;}s:47:"1210:mantis_error\x5berror_page_redirection\x5d";a:2:{i:0;R:23908;i:1;R:23909;}s:50:"1210:mantis_error\x5berror_twitter_no_curl_ext\x5d";a:2:{i:0;R:23908;i:1;R:23909;}s:44:"1210:mantis_error\x5berror_tag_not_found\x5d";a:2:{i:0;R:23908;i:1;R:23909;}s:44:"1210:mantis_error\x5berror_tag_duplicate\x5d";a:2:{i:0;R:23908;i:1;R:23909;}s:47:"1210:mantis_error\x5berror_tag_name_invalid\x5d";a:2:{i:0;R:23908;i:1;R:23909;}s:47:"1210:mantis_error\x5berror_tag_not_attached\x5d";a:2:{i:0;R:23908;i:1;R:23909;}s:51:"1210:mantis_error\x5berror_tag_already_attached\x5d";a:2:{i:0;R:23908;i:1;R:23909;}s:46:"1210:mantis_error\x5berror_token_not_found\x5d";a:2:{i:0;R:23908;i:1;R:23909;}s:47:"1210:mantis_error\x5berror_event_undeclared\x5d";a:2:{i:0;R:23908;i:1;R:23909;}s:52:"1210:mantis_error\x5berror_plugin_not_registered\x5d";a:2:{i:0;R:23908;i:1;R:23909;}s:55:"1210:mantis_error\x5berror_plugin_already_installed\x5d";a:2:{i:0;R:23908;i:1;R:23909;}s:52:"1210:mantis_error\x5berror_plugin_page_not_found\x5d";a:2:{i:0;R:23908;i:1;R:23909;}s:52:"1210:mantis_error\x5berror_plugin_upgrade_failed\x5d";a:2:{i:0;R:23908;i:1;R:23909;}s:45:"1210:mantis_error\x5berror_plugin_generic\x5d";a:2:{i:0;R:23908;i:1;R:23909;}s:48:"1210:mantis_error\x5berror_columns_duplicate\x5d";a:2:{i:0;R:23908;i:1;R:23909;}s:46:"1210:mantis_error\x5berror_columns_invalid\x5d";a:2:{i:0;R:23908;i:1;R:23909;}s:54:"1210:mantis_error\x5berror_session_handler_invalid\x5d";a:2:{i:0;R:23908;i:1;R:23909;}s:52:"1210:mantis_error\x5berror_session_var_not_found\x5d";a:2:{i:0;R:23908;i:1;R:23909;}s:48:"1210:mantis_error\x5berror_session_not_valid\x5d";a:2:{i:0;R:23908;i:1;R:23909;}s:49:"1210:mantis_error\x5berror_form_token_invalid\x5d";a:2:{i:0;R:23908;i:1;R:23909;}s:53:"1210:mantis_error\x5berror_invalid_request_method\x5d";a:2:{i:0;R:23908;i:1;R:23909;}s:49:"1210:mantis_error\x5berror_invalid_sort_field\x5d";a:2:{i:0;R:23908;i:1;R:23909;}s:50:"1210:mantis_error\x5berror_invalid_date_format\x5d";a:2:{i:0;R:23908;i:1;R:23909;}s:48:"1210:mantis_error\x5berror_updating_timezone\x5d";a:2:{i:0;R:23908;i:1;R:23909;}s:18:"1210:s_login_error";a:2:{i:0;R:23908;i:1;R:23909;}s:29:"1210:s_login_cookies_disabled";a:2:{i:0;R:23908;i:1;R:23909;}s:14:"1210:s_go_back";a:2:{i:0;R:23908;i:1;R:23909;}s:14:"1210:s_proceed";a:2:{i:0;R:23908;i:1;R:23909;}s:13:"1210:s_switch";a:2:{i:0;R:23908;i:1;R:23909;}s:19:"1210:s_logged_in_as";a:2:{i:0;R:23908;i:1;R:23909;}s:31:"1210:s_prefix_for_deleted_users";a:2:{i:0;R:23908;i:1;R:23909;}s:20:"1210:s_administrator";a:2:{i:0;R:23908;i:1;R:23909;}s:13:"1210:s_myself";a:2:{i:0;R:23908;i:1;R:23909;}s:27:"1210:s_default_access_level";a:2:{i:0;R:23908;i:1;R:23909;}s:30:"1210:s_issue_status_percentage";a:2:{i:0;R:23908;i:1;R:23909;}s:32:"1210:s_access_levels_enum_string";a:2:{i:0;R:23908;i:1;R:23909;}s:33:"1210:s_project_status_enum_string";a:2:{i:0;R:23908;i:1;R:23909;}s:37:"1210:s_project_view_state_enum_string";a:2:{i:0;R:23908;i:1;R:23909;}s:29:"1210:s_view_state_enum_string";a:2:{i:0;R:23908;i:1;R:23909;}s:27:"1210:s_priority_enum_string";a:2:{i:0;R:23908;i:1;R:23909;}s:27:"1210:s_severity_enum_string";a:2:{i:0;R:23908;i:1;R:23909;}s:34:"1210:s_reproducibility_enum_string";a:2:{i:0;R:23908;i:1;R:23909;}s:25:"1210:s_status_enum_string";a:2:{i:0;R:23908;i:1;R:23909;}s:29:"1210:s_resolution_enum_string";a:2:{i:0;R:23908;i:1;R:23909;}s:29:"1210:s_projection_enum_string";a:2:{i:0;R:23908;i:1;R:23909;}s:22:"1210:s_eta_enum_string";a:2:{i:0;R:23908;i:1;R:23909;}s:30:"1210:s_sponsorship_enum_string";a:2:{i:0;R:23908;i:1;R:23909;}s:26:"1210:s_new_account_subject";a:2:{i:0;R:23908;i:1;R:23909;}s:27:"1210:s_new_account_greeting";a:2:{i:0;R:23908;i:1;R:23909;}s:40:"1210:s_new_account_greeting_admincreated";a:2:{i:0;R:23908;i:1;R:23909;}s:27:"1210:s_new_account_username";a:2:{i:0;R:23908;i:1;R:23909;}s:26:"1210:s_new_account_message";a:2:{i:0;R:23908;i:1;R:23909;}s:31:"1210:s_new_account_do_not_reply";a:2:{i:0;R:23908;i:1;R:23909;}s:24:"1210:s_new_account_email";a:2:{i:0;R:23908;i:1;R:23909;}s:21:"1210:s_new_account_ip";a:2:{i:0;R:23908;i:1;R:23909;}s:29:"1210:s_new_account_signup_msg";a:2:{i:0;R:23908;i:1;R:23909;}s:24:"1210:s_reset_request_msg";a:2:{i:0;R:23908;i:1;R:23909;}s:36:"1210:s_reset_request_in_progress_msg";a:2:{i:0;R:23908;i:1;R:23909;}s:50:"1210:s_email_notification_title_for_status_bug_new";a:2:{i:0;R:23908;i:1;R:23909;}s:55:"1210:s_email_notification_title_for_status_bug_feedback";a:2:{i:0;R:23908;i:1;R:23909;}s:59:"1210:s_email_notification_title_for_status_bug_acknowledged";a:2:{i:0;R:23908;i:1;R:23909;}s:56:"1210:s_email_notification_title_for_status_bug_confirmed";a:2:{i:0;R:23908;i:1;R:23909;}s:55:"1210:s_email_notification_title_for_status_bug_assigned";a:2:{i:0;R:23908;i:1;R:23909;}s:55:"1210:s_email_notification_title_for_status_bug_resolved";a:2:{i:0;R:23908;i:1;R:23909;}s:53:"1210:s_email_notification_title_for_status_bug_closed";a:2:{i:0;R:23908;i:1;R:23909;}s:56:"1210:s_email_notification_title_for_action_bug_submitted";a:2:{i:0;R:23908;i:1;R:23909;}s:55:"1210:s_email_notification_title_for_action_bug_assigned";a:2:{i:0;R:23908;i:1;R:23909;}s:55:"1210:s_email_notification_title_for_action_bug_reopened";a:2:{i:0;R:23908;i:1;R:23909;}s:54:"1210:s_email_notification_title_for_action_bug_deleted";a:2:{i:0;R:23908;i:1;R:23909;}s:54:"1210:s_email_notification_title_for_action_bug_updated";a:2:{i:0;R:23908;i:1;R:23909;}s:60:"1210:s_email_notification_title_for_action_sponsorship_added";a:2:{i:0;R:23908;i:1;R:23909;}s:62:"1210:s_email_notification_title_for_action_sponsorship_updated";a:2:{i:0;R:23908;i:1;R:23909;}s:62:"1210:s_email_notification_title_for_action_sponsorship_deleted";a:2:{i:0;R:23908;i:1;R:23909;}s:60:"1210:s_email_notification_title_for_action_bugnote_submitted";a:2:{i:0;R:23908;i:1;R:23909;}s:74:"1210:s_email_notification_title_for_action_duplicate_of_relationship_added";a:2:{i:0;R:23908;i:1;R:23909;}s:75:"1210:s_email_notification_title_for_action_has_duplicate_relationship_added";a:2:{i:0;R:23908;i:1;R:23909;}s:72:"1210:s_email_notification_title_for_action_related_to_relationship_added";a:2:{i:0;R:23908;i:1;R:23909;}s:74:"1210:s_email_notification_title_for_action_dependant_on_relationship_added";a:2:{i:0;R:23908;i:1;R:23909;}s:68:"1210:s_email_notification_title_for_action_blocks_relationship_added";a:2:{i:0;R:23908;i:1;R:23909;}s:76:"1210:s_email_notification_title_for_action_duplicate_of_relationship_deleted";a:2:{i:0;R:23908;i:1;R:23909;}s:77:"1210:s_email_notification_title_for_action_has_duplicate_relationship_deleted";a:2:{i:0;R:23908;i:1;R:23909;}s:74:"1210:s_email_notification_title_for_action_related_to_relationship_deleted";a:2:{i:0;R:23908;i:1;R:23909;}s:76:"1210:s_email_notification_title_for_action_dependant_on_relationship_deleted";a:2:{i:0;R:23908;i:1;R:23909;}s:70:"1210:s_email_notification_title_for_action_blocks_relationship_deleted";a:2:{i:0;R:23908;i:1;R:23909;}s:70:"1210:s_email_notification_title_for_action_relationship_child_resolved";a:2:{i:0;R:23908;i:1;R:23909;}s:68:"1210:s_email_notification_title_for_action_relationship_child_closed";a:2:{i:0;R:23908;i:1;R:23909;}s:50:"1210:s_email_notification_title_for_action_monitor";a:2:{i:0;R:23908;i:1;R:23909;}s:21:"1210:s_email_reporter";a:2:{i:0;R:23908;i:1;R:23909;}s:20:"1210:s_email_handler";a:2:{i:0;R:23908;i:1;R:23909;}s:20:"1210:s_email_project";a:2:{i:0;R:23908;i:1;R:23909;}s:16:"1210:s_email_bug";a:2:{i:0;R:23908;i:1;R:23909;}s:21:"1210:s_email_category";a:2:{i:0;R:23908;i:1;R:23909;}s:28:"1210:s_email_reproducibility";a:2:{i:0;R:23908;i:1;R:23909;}s:21:"1210:s_email_severity";a:2:{i:0;R:23908;i:1;R:23909;}s:21:"1210:s_email_priority";a:2:{i:0;R:23908;i:1;R:23909;}s:19:"1210:s_email_status";a:2:{i:0;R:23908;i:1;R:23909;}s:23:"1210:s_email_resolution";a:2:{i:0;R:23908;i:1;R:23909;}s:22:"1210:s_email_duplicate";a:2:{i:0;R:23908;i:1;R:23909;}s:29:"1210:s_email_fixed_in_version";a:2:{i:0;R:23908;i:1;R:23909;}s:27:"1210:s_email_target_version";a:2:{i:0;R:23908;i:1;R:23909;}s:27:"1210:s_email_date_submitted";a:2:{i:0;R:23908;i:1;R:23909;}s:26:"1210:s_email_last_modified";a:2:{i:0;R:23908;i:1;R:23909;}s:20:"1210:s_email_summary";a:2:{i:0;R:23908;i:1;R:23909;}s:24:"1210:s_email_description";a:2:{i:0;R:23908;i:1;R:23909;}s:35:"1210:s_email_additional_information";a:2:{i:0;R:23908;i:1;R:23909;}s:31:"1210:s_email_steps_to_reproduce";a:2:{i:0;R:23908;i:1;R:23909;}s:28:"1210:s_account_protected_msg";a:2:{i:0;R:23908;i:1;R:23909;}s:26:"1210:s_account_removed_msg";a:2:{i:0;R:23908;i:1;R:23909;}s:25:"1210:s_confirm_delete_msg";a:2:{i:0;R:23908;i:1;R:23909;}s:28:"1210:s_delete_account_button";a:2:{i:0;R:23908;i:1;R:23909;}s:27:"1210:s_manage_profiles_link";a:2:{i:0;R:23908;i:1;R:23909;}s:30:"1210:s_change_preferences_link";a:2:{i:0;R:23908;i:1;R:23909;}s:25:"1210:s_edit_account_title";a:2:{i:0;R:23908;i:1;R:23909;}s:15:"1210:s_username";a:2:{i:0;R:23908;i:1;R:23909;}s:15:"1210:s_realname";a:2:{i:0;R:23908;i:1;R:23909;}s:12:"1210:s_email";a:2:{i:0;R:23908;i:1;R:23909;}s:15:"1210:s_password";a:2:{i:0;R:23908;i:1;R:23909;}s:25:"1210:s_no_password_change";a:2:{i:0;R:23908;i:1;R:23909;}s:23:"1210:s_confirm_password";a:2:{i:0;R:23908;i:1;R:23909;}s:19:"1210:s_access_level";a:2:{i:0;R:23908;i:1;R:23909;}s:25:"1210:s_update_user_button";a:2:{i:0;R:23908;i:1;R:23909;}s:21:"1210:s_verify_warning";a:2:{i:0;R:23908;i:1;R:23909;}s:29:"1210:s_verify_change_password";a:2:{i:0;R:23908;i:1;R:23909;}s:40:"1210:s_default_account_preferences_title";a:2:{i:0;R:23908;i:1;R:23909;}s:22:"1210:s_default_project";a:2:{i:0;R:23908;i:1;R:23909;}s:20:"1210:s_refresh_delay";a:2:{i:0;R:23908;i:1;R:23909;}s:14:"1210:s_minutes";a:2:{i:0;R:23908;i:1;R:23909;}s:21:"1210:s_redirect_delay";a:2:{i:0;R:23908;i:1;R:23909;}s:14:"1210:s_seconds";a:2:{i:0;R:23908;i:1;R:23909;}s:28:"1210:s_with_minimum_severity";a:2:{i:0;R:23908;i:1;R:23909;}s:20:"1210:s_bugnote_order";a:2:{i:0;R:23908;i:1;R:23909;}s:24:"1210:s_bugnote_order_asc";a:2:{i:0;R:23908;i:1;R:23909;}s:25:"1210:s_bugnote_order_desc";a:2:{i:0;R:23908;i:1;R:23909;}s:19:"1210:s_email_on_new";a:2:{i:0;R:23908;i:1;R:23909;}s:24:"1210:s_email_on_assigned";a:2:{i:0;R:23908;i:1;R:23909;}s:24:"1210:s_email_on_feedback";a:2:{i:0;R:23908;i:1;R:23909;}s:24:"1210:s_email_on_resolved";a:2:{i:0;R:23908;i:1;R:23909;}s:22:"1210:s_email_on_closed";a:2:{i:0;R:23908;i:1;R:23909;}s:24:"1210:s_email_on_reopened";a:2:{i:0;R:23908;i:1;R:23909;}s:29:"1210:s_email_on_bugnote_added";a:2:{i:0;R:23908;i:1;R:23909;}s:29:"1210:s_email_on_status_change";a:2:{i:0;R:23908;i:1;R:23909;}s:31:"1210:s_email_on_priority_change";a:2:{i:0;R:23908;i:1;R:23909;}s:26:"1210:s_email_bugnote_limit";a:2:{i:0;R:23908;i:1;R:23909;}s:15:"1210:s_language";a:2:{i:0;R:23908;i:1;R:23909;}s:26:"1210:s_update_prefs_button";a:2:{i:0;R:23908;i:1;R:23909;}s:25:"1210:s_reset_prefs_button";a:2:{i:0;R:23908;i:1;R:23909;}s:15:"1210:s_timezone";a:2:{i:0;R:23908;i:1;R:23909;}s:22:"1210:s_prefs_reset_msg";a:2:{i:0;R:23908;i:1;R:23909;}s:24:"1210:s_prefs_updated_msg";a:2:{i:0;R:23908;i:1;R:23909;}s:24:"1210:s_profile_added_msg";a:2:{i:0;R:23908;i:1;R:23909;}s:26:"1210:s_profile_deleted_msg";a:2:{i:0;R:23908;i:1;R:23909;}s:25:"1210:s_edit_profile_title";a:2:{i:0;R:23908;i:1;R:23909;}s:15:"1210:s_platform";a:2:{i:0;R:23908;i:1;R:23909;}s:23:"1210:s_operating_system";a:2:{i:0;R:23908;i:1;R:23909;}s:29:"1210:s_additional_description";a:2:{i:0;R:23908;i:1;R:23909;}s:28:"1210:s_update_profile_button";a:2:{i:0;R:23908;i:1;R:23909;}s:28:"1210:s_profile_defaulted_msg";a:2:{i:0;R:23908;i:1;R:23909;}s:24:"1210:s_add_profile_title";a:2:{i:0;R:23908;i:1;R:23909;}s:25:"1210:s_add_profile_button";a:2:{i:0;R:23908;i:1;R:23909;}s:36:"1210:s_edit_or_delete_profiles_title";a:2:{i:0;R:23908;i:1;R:23909;}s:19:"1210:s_edit_profile";a:2:{i:0;R:23908;i:1;R:23909;}s:19:"1210:s_make_default";a:2:{i:0;R:23908;i:1;R:23909;}s:21:"1210:s_delete_profile";a:2:{i:0;R:23908;i:1;R:23909;}s:21:"1210:s_select_profile";a:2:{i:0;R:23908;i:1;R:23909;}s:20:"1210:s_submit_button";a:2:{i:0;R:23908;i:1;R:23909;}s:26:"1210:s_profile_updated_msg";a:2:{i:0;R:23908;i:1;R:23909;}s:21:"1210:s_my_sponsorship";a:2:{i:0;R:23908;i:1;R:23909;}s:32:"1210:s_update_sponsorship_button";a:2:{i:0;R:23908;i:1;R:23909;}s:19:"1210:s_no_sponsored";a:2:{i:0;R:23908;i:1;R:23909;}s:20:"1210:s_own_sponsored";a:2:{i:0;R:23908;i:1;R:23909;}s:21:"1210:s_issues_handled";a:2:{i:0;R:23908;i:1;R:23909;}s:23:"1210:s_no_own_sponsored";a:2:{i:0;R:23908;i:1;R:23909;}s:14:"1210:s_sponsor";a:2:{i:0;R:23908;i:1;R:23909;}s:19:"1210:s_sponsor_verb";a:2:{i:0;R:23908;i:1;R:23909;}s:13:"1210:s_amount";a:2:{i:0;R:23908;i:1;R:23909;}s:18:"1210:s_total_owing";a:2:{i:0;R:23908;i:1;R:23909;}s:17:"1210:s_total_paid";a:2:{i:0;R:23908;i:1;R:23909;}s:19:"1210:s_sponsor_hide";a:2:{i:0;R:23908;i:1;R:23909;}s:19:"1210:s_sponsor_show";a:2:{i:0;R:23908;i:1;R:23909;}s:22:"1210:s_payment_updated";a:2:{i:0;R:23908;i:1;R:23909;}s:26:"1210:s_account_updated_msg";a:2:{i:0;R:23908;i:1;R:23909;}s:20:"1210:s_email_updated";a:2:{i:0;R:23908;i:1;R:23909;}s:26:"1210:s_realname_duplicated";a:2:{i:0;R:23908;i:1;R:23909;}s:23:"1210:s_realname_updated";a:2:{i:0;R:23908;i:1;R:23909;}s:23:"1210:s_password_updated";a:2:{i:0;R:23908;i:1;R:23909;}s:24:"1210:s_multiple_projects";a:2:{i:0;R:23908;i:1;R:23909;}s:21:"1210:s_bug_assign_msg";a:2:{i:0;R:23908;i:1;R:23909;}s:20:"1210:s_new_bug_title";a:2:{i:0;R:23908;i:1;R:23909;}s:25:"1210:s_feedback_bug_title";a:2:{i:0;R:23908;i:1;R:23909;}s:29:"1210:s_acknowledged_bug_title";a:2:{i:0;R:23908;i:1;R:23909;}s:26:"1210:s_confirmed_bug_title";a:2:{i:0;R:23908;i:1;R:23909;}s:25:"1210:s_assigned_bug_title";a:2:{i:0;R:23908;i:1;R:23909;}s:21:"1210:s_new_bug_button";a:2:{i:0;R:23908;i:1;R:23909;}s:26:"1210:s_feedback_bug_button";a:2:{i:0;R:23908;i:1;R:23909;}s:30:"1210:s_acknowledged_bug_button";a:2:{i:0;R:23908;i:1;R:23909;}s:27:"1210:s_confirmed_bug_button";a:2:{i:0;R:23908;i:1;R:23909;}s:26:"1210:s_assigned_bug_button";a:2:{i:0;R:23908;i:1;R:23909;}s:20:"1210:s_bug_close_msg";a:2:{i:0;R:23908;i:1;R:23909;}s:24:"1210:s_close_immediately";a:2:{i:0;R:23908;i:1;R:23909;}s:23:"1210:s_closed_bug_title";a:2:{i:0;R:23908;i:1;R:23909;}s:22:"1210:s_bug_deleted_msg";a:2:{i:0;R:23908;i:1;R:23909;}s:26:"1210:s_delete_bug_sure_msg";a:2:{i:0;R:23908;i:1;R:23909;}s:24:"1210:s_delete_bug_button";a:2:{i:0;R:23908;i:1;R:23909;}s:25:"1210:s_monitor_bug_button";a:2:{i:0;R:23908;i:1;R:23909;}s:27:"1210:s_unmonitor_bug_button";a:2:{i:0;R:23908;i:1;R:23909;}s:22:"1210:s_file_upload_msg";a:2:{i:0;R:23908;i:1;R:23909;}s:18:"1210:s_upload_file";a:2:{i:0;R:23908;i:1;R:23909;}s:19:"1210:s_upload_files";a:2:{i:0;R:23908;i:1;R:23909;}s:18:"1210:s_select_file";a:2:{i:0;R:23908;i:1;R:23909;}s:19:"1210:s_select_files";a:2:{i:0;R:23908;i:1;R:23909;}s:25:"1210:s_upload_file_button";a:2:{i:0;R:23908;i:1;R:23909;}s:26:"1210:s_upload_files_button";a:2:{i:0;R:23908;i:1;R:23909;}s:20:"1210:s_max_file_size";a:2:{i:0;R:23908;i:1;R:23909;}s:23:"1210:s_bug_reopened_msg";a:2:{i:0;R:23908;i:1;R:23909;}s:31:"1210:s_reopen_add_bugnote_title";a:2:{i:0;R:23908;i:1;R:23909;}s:32:"1210:s_bugnote_add_reopen_button";a:2:{i:0;R:23908;i:1;R:23909;}s:25:"1210:s_resolved_bug_title";a:2:{i:0;R:23908;i:1;R:23909;}s:26:"1210:s_resolved_bug_button";a:2:{i:0;R:23908;i:1;R:23909;}s:23:"1210:s_bug_resolved_msg";a:2:{i:0;R:23908;i:1;R:23909;}s:32:"1210:s_resolve_add_bugnote_title";a:2:{i:0;R:23908;i:1;R:23909;}s:33:"1210:s_bugnote_add_resolve_button";a:2:{i:0;R:23908;i:1;R:23909;}s:11:"1210:s_from";a:2:{i:0;R:23908;i:1;R:23909;}s:9:"1210:s_to";a:2:{i:0;R:23908;i:1;R:23909;}s:35:"1210:s_sent_you_this_reminder_about";a:2:{i:0;R:23908;i:1;R:23909;}s:19:"1210:s_bug_reminder";a:2:{i:0;R:23908;i:1;R:23909;}s:23:"1210:s_reminder_sent_to";a:2:{i:0;R:23908;i:1;R:23909;}s:22:"1210:s_bug_send_button";a:2:{i:0;R:23908;i:1;R:23909;}s:15:"1210:s_reminder";a:2:{i:0;R:23908;i:1;R:23909;}s:23:"1210:s_reminder_explain";a:2:{i:0;R:23908;i:1;R:23909;}s:23:"1210:s_reminder_monitor";a:2:{i:0;R:23908;i:1;R:23909;}s:21:"1210:s_reminder_store";a:2:{i:0;R:23908;i:1;R:23909;}s:26:"1210:s_confirm_sponsorship";a:2:{i:0;R:23908;i:1;R:23909;}s:23:"1210:s_stick_bug_button";a:2:{i:0;R:23908;i:1;R:23909;}s:25:"1210:s_unstick_bug_button";a:2:{i:0;R:23908;i:1;R:23909;}s:22:"1210:s_bug_updated_msg";a:2:{i:0;R:23908;i:1;R:23909;}s:23:"1210:s_back_to_bug_link";a:2:{i:0;R:23908;i:1;R:23909;}s:25:"1210:s_update_simple_link";a:2:{i:0;R:23908;i:1;R:23909;}s:34:"1210:s_updating_bug_advanced_title";a:2:{i:0;R:23908;i:1;R:23909;}s:9:"1210:s_id";a:2:{i:0;R:23908;i:1;R:23909;}s:15:"1210:s_category";a:2:{i:0;R:23908;i:1;R:23909;}s:15:"1210:s_severity";a:2:{i:0;R:23908;i:1;R:23909;}s:22:"1210:s_reproducibility";a:2:{i:0;R:23908;i:1;R:23909;}s:21:"1210:s_date_submitted";a:2:{i:0;R:23908;i:1;R:23909;}s:18:"1210:s_last_update";a:2:{i:0;R:23908;i:1;R:23909;}s:15:"1210:s_reporter";a:2:{i:0;R:23908;i:1;R:23909;}s:18:"1210:s_assigned_to";a:2:{i:0;R:23908;i:1;R:23909;}s:15:"1210:s_priority";a:2:{i:0;R:23908;i:1;R:23909;}s:17:"1210:s_resolution";a:2:{i:0;R:23908;i:1;R:23909;}s:13:"1210:s_status";a:2:{i:0;R:23908;i:1;R:23909;}s:19:"1210:s_duplicate_id";a:2:{i:0;R:23908;i:1;R:23909;}s:9:"1210:s_os";a:2:{i:0;R:23908;i:1;R:23909;}s:17:"1210:s_projection";a:2:{i:0;R:23908;i:1;R:23909;}s:17:"1210:s_os_version";a:2:{i:0;R:23908;i:1;R:23909;}s:10:"1210:s_eta";a:2:{i:0;R:23908;i:1;R:23909;}s:22:"1210:s_product_version";a:2:{i:0;R:23908;i:1;R:23909;}s:12:"1210:s_build";a:2:{i:0;R:23908;i:1;R:23909;}s:23:"1210:s_fixed_in_version";a:2:{i:0;R:23908;i:1;R:23909;}s:21:"1210:s_target_version";a:2:{i:0;R:23908;i:1;R:23909;}s:12:"1210:s_votes";a:2:{i:0;R:23908;i:1;R:23909;}s:14:"1210:s_summary";a:2:{i:0;R:23908;i:1;R:23909;}s:18:"1210:s_description";a:2:{i:0;R:23908;i:1;R:23909;}s:25:"1210:s_steps_to_reproduce";a:2:{i:0;R:23908;i:1;R:23909;}s:32:"1210:s_update_information_button";a:2:{i:0;R:23908;i:1;R:23909;}s:19:"1210:s_sticky_issue";a:2:{i:0;R:23908;i:1;R:23909;}s:14:"1210:s_profile";a:2:{i:0;R:23908;i:1;R:23909;}s:32:"1210:s_updating_bug_simple_title";a:2:{i:0;R:23908;i:1;R:23909;}s:21:"1210:s_view_revisions";a:2:{i:0;R:23908;i:1;R:23909;}s:15:"1210:s_revision";a:2:{i:0;R:23908;i:1;R:23909;}s:18:"1210:s_revision_by";a:2:{i:0;R:23908;i:1;R:23909;}s:20:"1210:s_revision_drop";a:2:{i:0;R:23908;i:1;R:23909;}s:35:"1210:s_bug_revision_dropped_history";a:2:{i:0;R:23908;i:1;R:23909;}s:39:"1210:s_bugnote_revision_dropped_history";a:2:{i:0;R:23908;i:1;R:23909;}s:20:"1210:s_all_revisions";a:2:{i:0;R:23908;i:1;R:23909;}s:20:"1210:s_back_to_issue";a:2:{i:0;R:23908;i:1;R:23909;}s:28:"1210:s_confirm_revision_drop";a:2:{i:0;R:23908;i:1;R:23909;}s:21:"1210:s_vote_added_msg";a:2:{i:0;R:23908;i:1;R:23909;}s:24:"1210:s_bugnote_added_msg";a:2:{i:0;R:23908;i:1;R:23909;}s:26:"1210:s_bugnote_deleted_msg";a:2:{i:0;R:23908;i:1;R:23909;}s:22:"1210:s_bug_notes_title";a:2:{i:0;R:23908;i:1;R:23909;}s:25:"1210:s_edit_bugnote_title";a:2:{i:0;R:23908;i:1;R:23909;}s:22:"1210:s_no_bugnotes_msg";a:2:{i:0;R:23908;i:1;R:23909;}s:18:"1210:s_delete_link";a:2:{i:0;R:23908;i:1;R:23909;}s:24:"1210:s_add_bugnote_title";a:2:{i:0;R:23908;i:1;R:23909;}s:25:"1210:s_add_bugnote_button";a:2:{i:0;R:23908;i:1;R:23909;}s:24:"1210:s_bugnote_edit_link";a:2:{i:0;R:23908;i:1;R:23909;}s:24:"1210:s_closed_bug_button";a:2:{i:0;R:23908;i:1;R:23909;}s:26:"1210:s_bugnote_updated_msg";a:2:{i:0;R:23908;i:1;R:23909;}s:16:"1210:s_edited_on";a:2:{i:0;R:23908;i:1;R:23909;}s:19:"1210:s_hide_content";a:2:{i:0;R:23908;i:1;R:23909;}s:19:"1210:s_show_content";a:2:{i:0;R:23908;i:1;R:23909;}s:29:"1210:s_total_queries_executed";a:2:{i:0;R:23908;i:1;R:23909;}s:30:"1210:s_unique_queries_executed";a:2:{i:0;R:23908;i:1;R:23909;}s:25:"1210:s_memory_usage_in_kb";a:2:{i:0;R:23908;i:1;R:23909;}s:20:"1210:s_please_report";a:2:{i:0;R:23908;i:1;R:23909;}s:21:"1210:s_click_to_login";a:2:{i:0;R:23908;i:1;R:23909;}s:44:"1210:s_warning_plain_password_authentication";a:2:{i:0;R:23908;i:1;R:23909;}s:52:"1210:s_warning_default_administrator_account_present";a:2:{i:0;R:23908;i:1;R:23909;}s:38:"1210:s_warning_admin_directory_present";a:2:{i:0;R:23908;i:1;R:23909;}s:43:"1210:s_error_database_version_out_of_date_1";a:2:{i:0;R:23908;i:1;R:23909;}s:39:"1210:s_error_database_no_schema_version";a:2:{i:0;R:23908;i:1;R:23909;}s:43:"1210:s_error_database_version_out_of_date_2";a:2:{i:0;R:23908;i:1;R:23909;}s:37:"1210:s_error_code_version_out_of_date";a:2:{i:0;R:23908;i:1;R:23909;}s:22:"1210:s_login_page_info";a:2:{i:0;R:23908;i:1;R:23909;}s:18:"1210:s_login_title";a:2:{i:0;R:23908;i:1;R:23909;}s:17:"1210:s_save_login";a:2:{i:0;R:23908;i:1;R:23909;}s:21:"1210:s_secure_session";a:2:{i:0;R:23908;i:1;R:23909;}s:26:"1210:s_secure_session_long";a:2:{i:0;R:23908;i:1;R:23909;}s:21:"1210:s_choose_project";a:2:{i:0;R:23908;i:1;R:23909;}s:19:"1210:s_login_button";a:2:{i:0;R:23908;i:1;R:23909;}s:18:"1210:s_signup_link";a:2:{i:0;R:23908;i:1;R:23909;}s:25:"1210:s_lost_password_link";a:2:{i:0;R:23908;i:1;R:23909;}s:28:"1210:s_select_project_button";a:2:{i:0;R:23908;i:1;R:23909;}s:26:"1210:s_lost_password_title";a:2:{i:0;R:23908;i:1;R:23909;}s:31:"1210:s_lost_password_done_title";a:2:{i:0;R:23908;i:1;R:23909;}s:28:"1210:s_lost_password_subject";a:2:{i:0;R:23908;i:1;R:23909;}s:25:"1210:s_lost_password_info";a:2:{i:0;R:23908;i:1;R:23909;}s:36:"1210:s_lost_password_confirm_hash_ok";a:2:{i:0;R:23908;i:1;R:23909;}s:30:"1210:s_open_and_assigned_to_me";a:2:{i:0;R:23908;i:1;R:23909;}s:30:"1210:s_open_and_reported_to_me";a:2:{i:0;R:23908;i:1;R:23909;}s:22:"1210:s_newer_news_link";a:2:{i:0;R:23908;i:1;R:23909;}s:22:"1210:s_older_news_link";a:2:{i:0;R:23908;i:1;R:23909;}s:15:"1210:s_archives";a:2:{i:0;R:23908;i:1;R:23909;}s:10:"1210:s_rss";a:2:{i:0;R:23908;i:1;R:23909;}s:23:"1210:s_site_information";a:2:{i:0;R:23908;i:1;R:23909;}s:21:"1210:s_mantis_version";a:2:{i:0;R:23908;i:1;R:23909;}s:21:"1210:s_schema_version";a:2:{i:0;R:23908;i:1;R:23909;}s:16:"1210:s_site_path";a:2:{i:0;R:23908;i:1;R:23909;}s:16:"1210:s_core_path";a:2:{i:0;R:23908;i:1;R:23909;}s:18:"1210:s_plugin_path";a:2:{i:0;R:23908;i:1;R:23909;}s:25:"1210:s_created_user_part1";a:2:{i:0;R:23908;i:1;R:23909;}s:25:"1210:s_created_user_part2";a:2:{i:0;R:23908;i:1;R:23909;}s:31:"1210:s_create_new_account_title";a:2:{i:0;R:23908;i:1;R:23909;}s:22:"1210:s_verify_password";a:2:{i:0;R:23908;i:1;R:23909;}s:14:"1210:s_enabled";a:2:{i:0;R:23908;i:1;R:23909;}s:16:"1210:s_protected";a:2:{i:0;R:23908;i:1;R:23909;}s:25:"1210:s_create_user_button";a:2:{i:0;R:23908;i:1;R:23909;}s:20:"1210:s_hide_disabled";a:2:{i:0;R:23908;i:1;R:23909;}s:20:"1210:s_filter_button";a:2:{i:0;R:23908;i:1;R:23909;}s:25:"1210:s_create_filter_link";a:2:{i:0;R:23908;i:1;R:23909;}s:24:"1210:s_create_short_link";a:2:{i:0;R:23908;i:1;R:23909;}s:23:"1210:s_filter_permalink";a:2:{i:0;R:23908;i:1;R:23909;}s:24:"1210:s_manage_users_link";a:2:{i:0;R:23908;i:1;R:23909;}s:27:"1210:s_manage_projects_link";a:2:{i:0;R:23908;i:1;R:23909;}s:31:"1210:s_manage_custom_field_link";a:2:{i:0;R:23908;i:1;R:23909;}s:34:"1210:s_manage_global_profiles_link";a:2:{i:0;R:23908;i:1;R:23909;}s:25:"1210:s_manage_plugin_link";a:2:{i:0;R:23908;i:1;R:23909;}s:33:"1210:s_permissions_summary_report";a:2:{i:0;R:23908;i:1;R:23909;}s:25:"1210:s_manage_config_link";a:2:{i:0;R:23908;i:1;R:23909;}s:30:"1210:s_manage_threshold_config";a:2:{i:0;R:23908;i:1;R:23909;}s:26:"1210:s_manage_email_config";a:2:{i:0;R:23908;i:1;R:23909;}s:29:"1210:s_manage_workflow_config";a:2:{i:0;R:23908;i:1;R:23909;}s:23:"1210:s_manage_tags_link";a:2:{i:0;R:23908;i:1;R:23909;}s:30:"1210:s_create_new_account_link";a:2:{i:0;R:23908;i:1;R:23909;}s:20:"1210:s_projects_link";a:2:{i:0;R:23908;i:1;R:23909;}s:25:"1210:s_documentation_link";a:2:{i:0;R:23908;i:1;R:23909;}s:25:"1210:s_new_accounts_title";a:2:{i:0;R:23908;i:1;R:23909;}s:19:"1210:s_1_week_title";a:2:{i:0;R:23908;i:1;R:23909;}s:28:"1210:s_never_logged_in_title";a:2:{i:0;R:23908;i:1;R:23909;}s:21:"1210:s_prune_accounts";a:2:{i:0;R:23908;i:1;R:23909;}s:20:"1210:s_hide_inactive";a:2:{i:0;R:23908;i:1;R:23909;}s:28:"1210:s_manage_accounts_title";a:2:{i:0;R:23908;i:1;R:23909;}s:8:"1210:s_p";a:2:{i:0;R:23908;i:1;R:23909;}s:19:"1210:s_date_created";a:2:{i:0;R:23908;i:1;R:23909;}s:17:"1210:s_last_visit";a:2:{i:0;R:23908;i:1;R:23909;}s:21:"1210:s_edit_user_link";a:2:{i:0;R:23908;i:1;R:23909;}s:26:"1210:s_config_all_projects";a:2:{i:0;R:23908;i:1;R:23909;}s:21:"1210:s_config_project";a:2:{i:0;R:23908;i:1;R:23909;}s:20:"1210:s_colour_coding";a:2:{i:0;R:23908;i:1;R:23909;}s:21:"1210:s_colour_project";a:2:{i:0;R:23908;i:1;R:23909;}s:20:"1210:s_colour_global";a:2:{i:0;R:23908;i:1;R:23909;}s:21:"1210:s_issue_reporter";a:2:{i:0;R:23908;i:1;R:23909;}s:20:"1210:s_issue_handler";a:2:{i:0;R:23908;i:1;R:23909;}s:26:"1210:s_users_added_bugnote";a:2:{i:0;R:23908;i:1;R:23909;}s:27:"1210:s_change_configuration";a:2:{i:0;R:23908;i:1;R:23909;}s:14:"1210:s_message";a:2:{i:0;R:23908;i:1;R:23909;}s:21:"1210:s_default_notify";a:2:{i:0;R:23908;i:1;R:23909;}s:20:"1210:s_action_notify";a:2:{i:0;R:23908;i:1;R:23909;}s:36:"1210:s_notify_defaults_change_access";a:2:{i:0;R:23908;i:1;R:23909;}s:35:"1210:s_notify_actions_change_access";a:2:{i:0;R:23908;i:1;R:23909;}s:23:"1210:s_revert_to_system";a:2:{i:0;R:23908;i:1;R:23909;}s:28:"1210:s_revert_to_all_project";a:2:{i:0;R:23908;i:1;R:23909;}s:19:"1210:s_non_existent";a:2:{i:0;R:23908;i:1;R:23909;}s:21:"1210:s_current_status";a:2:{i:0;R:23908;i:1;R:23909;}s:18:"1210:s_next_status";a:2:{i:0;R:23908;i:1;R:23909;}s:15:"1210:s_workflow";a:2:{i:0;R:23908;i:1;R:23909;}s:26:"1210:s_workflow_thresholds";a:2:{i:0;R:23908;i:1;R:23909;}s:16:"1210:s_threshold";a:2:{i:0;R:23908;i:1;R:23909;}s:19:"1210:s_status_level";a:2:{i:0;R:23908;i:1;R:23909;}s:18:"1210:s_alter_level";a:2:{i:0;R:23908;i:1;R:23909;}s:17:"1210:s_validation";a:2:{i:0;R:23908;i:1;R:23909;}s:14:"1210:s_comment";a:2:{i:0;R:23908;i:1;R:23909;}s:18:"1210:s_superfluous";a:2:{i:0;R:23908;i:1;R:23909;}s:18:"1210:s_unreachable";a:2:{i:0;R:23908;i:1;R:23909;}s:14:"1210:s_no_exit";a:2:{i:0;R:23908;i:1;R:23909;}s:20:"1210:s_access_levels";a:2:{i:0;R:23908;i:1;R:23909;}s:20:"1210:s_access_change";a:2:{i:0;R:23908;i:1;R:23909;}s:29:"1210:s_desc_bug_submit_status";a:2:{i:0;R:23908;i:1;R:23909;}s:29:"1210:s_desc_bug_reopen_status";a:2:{i:0;R:23908;i:1;R:23909;}s:41:"1210:s_desc_bug_resolved_status_threshold";a:2:{i:0;R:23908;i:1;R:23909;}s:39:"1210:s_desc_bug_closed_status_threshold";a:2:{i:0;R:23908;i:1;R:23909;}s:29:"1210:s_workflow_change_access";a:2:{i:0;R:23908;i:1;R:23909;}s:27:"1210:s_access_change_access";a:2:{i:0;R:23908;i:1;R:23909;}s:26:"1210:s_default_not_in_flow";a:2:{i:0;R:23908;i:1;R:23909;}s:19:"1210:s_assign_issue";a:2:{i:0;R:23908;i:1;R:23909;}s:28:"1210:s_allow_close_immediate";a:2:{i:0;R:23908;i:1;R:23909;}s:27:"1210:s_allow_reporter_close";a:2:{i:0;R:23908;i:1;R:23909;}s:28:"1210:s_allow_reporter_reopen";a:2:{i:0;R:23908;i:1;R:23909;}s:26:"1210:s_set_status_assigned";a:2:{i:0;R:23908;i:1;R:23909;}s:22:"1210:s_allow_user_edit";a:2:{i:0;R:23908;i:1;R:23909;}s:19:"1210:s_limit_access";a:2:{i:0;R:23908;i:1;R:23909;}s:20:"1210:s_submit_status";a:2:{i:0;R:23908;i:1;R:23909;}s:22:"1210:s_assigned_status";a:2:{i:0;R:23908;i:1;R:23909;}s:22:"1210:s_resolved_status";a:2:{i:0;R:23908;i:1;R:23909;}s:22:"1210:s_readonly_status";a:2:{i:0;R:23908;i:1;R:23909;}s:20:"1210:s_reopen_status";a:2:{i:0;R:23908;i:1;R:23909;}s:24:"1210:s_reopen_resolution";a:2:{i:0;R:23908;i:1;R:23909;}s:25:"1210:s_config_delete_sure";a:2:{i:0;R:23908;i:1;R:23909;}s:17:"1210:s_in_project";a:2:{i:0;R:23908;i:1;R:23909;}s:27:"1210:s_delete_config_button";a:2:{i:0;R:23908;i:1;R:23909;}s:27:"1210:s_configuration_report";a:2:{i:0;R:23908;i:1;R:23909;}s:29:"1210:s_database_configuration";a:2:{i:0;R:23908;i:1;R:23909;}s:27:"1210:s_configuration_option";a:2:{i:0;R:23908;i:1;R:23909;}s:32:"1210:s_configuration_option_type";a:2:{i:0;R:23908;i:1;R:23909;}s:33:"1210:s_configuration_option_value";a:2:{i:0;R:23908;i:1;R:23909;}s:16:"1210:s_all_users";a:2:{i:0;R:23908;i:1;R:23909;}s:31:"1210:s_set_configuration_option";a:2:{i:0;R:23908;i:1;R:23909;}s:29:"1210:s_delete_config_sure_msg";a:2:{i:0;R:23908;i:1;R:23909;}s:30:"1210:s_configuration_corrupted";a:2:{i:0;R:23908;i:1;R:23909;}s:13:"1210:s_plugin";a:2:{i:0;R:23908;i:1;R:23909;}s:24:"1210:s_plugins_installed";a:2:{i:0;R:23908;i:1;R:23909;}s:24:"1210:s_plugins_available";a:2:{i:0;R:23908;i:1;R:23909;}s:25:"1210:s_plugin_description";a:2:{i:0;R:23908;i:1;R:23909;}s:20:"1210:s_plugin_author";a:2:{i:0;R:23908;i:1;R:23909;}s:17:"1210:s_plugin_url";a:2:{i:0;R:23908;i:1;R:23909;}s:21:"1210:s_plugin_depends";a:2:{i:0;R:23908;i:1;R:23909;}s:24:"1210:s_plugin_no_depends";a:2:{i:0;R:23908;i:1;R:23909;}s:22:"1210:s_plugin_priority";a:2:{i:0;R:23908;i:1;R:23909;}s:23:"1210:s_plugin_protected";a:2:{i:0;R:23908;i:1;R:23909;}s:20:"1210:s_plugin_update";a:2:{i:0;R:23908;i:1;R:23909;}s:21:"1210:s_plugin_actions";a:2:{i:0;R:23908;i:1;R:23909;}s:21:"1210:s_plugin_install";a:2:{i:0;R:23908;i:1;R:23909;}s:21:"1210:s_plugin_upgrade";a:2:{i:0;R:23908;i:1;R:23909;}s:23:"1210:s_plugin_uninstall";a:2:{i:0;R:23908;i:1;R:23909;}s:31:"1210:s_plugin_uninstall_message";a:2:{i:0;R:23908;i:1;R:23909;}s:17:"1210:s_plugin_key";a:2:{i:0;R:23908;i:1;R:23909;}s:21:"1210:s_plugin_key_met";a:2:{i:0;R:23908;i:1;R:23909;}s:23:"1210:s_plugin_key_unmet";a:2:{i:0;R:23908;i:1;R:23909;}s:23:"1210:s_plugin_key_dated";a:2:{i:0;R:23908;i:1;R:23909;}s:25:"1210:s_plugin_key_upgrade";a:2:{i:0;R:23908;i:1;R:23909;}s:24:"1210:s_project_added_msg";a:2:{i:0;R:23908;i:1;R:23909;}s:25:"1210:s_category_added_msg";a:2:{i:0;R:23908;i:1;R:23909;}s:27:"1210:s_category_deleted_msg";a:2:{i:0;R:23908;i:1;R:23909;}s:31:"1210:s_category_delete_sure_msg";a:2:{i:0;R:23908;i:1;R:23909;}s:29:"1210:s_delete_category_button";a:2:{i:0;R:23908;i:1;R:23909;}s:34:"1210:s_edit_project_category_title";a:2:{i:0;R:23908;i:1;R:23909;}s:29:"1210:s_update_category_button";a:2:{i:0;R:23908;i:1;R:23909;}s:27:"1210:s_category_updated_msg";a:2:{i:0;R:23908;i:1;R:23909;}s:27:"1210:s_add_subproject_title";a:2:{i:0;R:23908;i:1;R:23909;}s:26:"1210:s_project_deleted_msg";a:2:{i:0;R:23908;i:1;R:23909;}s:25:"1210:s_project_delete_msg";a:2:{i:0;R:23908;i:1;R:23909;}s:28:"1210:s_project_delete_button";a:2:{i:0;R:23908;i:1;R:23909;}s:25:"1210:s_edit_project_title";a:2:{i:0;R:23908;i:1;R:23909;}s:19:"1210:s_project_name";a:2:{i:0;R:23908;i:1;R:23909;}s:18:"1210:s_view_status";a:2:{i:0;R:23908;i:1;R:23909;}s:13:"1210:s_public";a:2:{i:0;R:23908;i:1;R:23909;}s:14:"1210:s_private";a:2:{i:0;R:23908;i:1;R:23909;}s:28:"1210:s_update_project_button";a:2:{i:0;R:23908;i:1;R:23909;}s:28:"1210:s_delete_project_button";a:2:{i:0;R:23908;i:1;R:23909;}s:16:"1210:s_copy_from";a:2:{i:0;R:23908;i:1;R:23909;}s:14:"1210:s_copy_to";a:2:{i:0;R:23908;i:1;R:23909;}s:35:"1210:s_categories_and_version_title";a:2:{i:0;R:23908;i:1;R:23909;}s:17:"1210:s_categories";a:2:{i:0;R:23908;i:1;R:23909;}s:26:"1210:s_add_category_button";a:2:{i:0;R:23908;i:1;R:23909;}s:15:"1210:s_versions";a:2:{i:0;R:23908;i:1;R:23909;}s:25:"1210:s_add_version_button";a:2:{i:0;R:23908;i:1;R:23909;}s:34:"1210:s_add_and_edit_version_button";a:2:{i:0;R:23908;i:1;R:23909;}s:16:"1210:s_edit_link";a:2:{i:0;R:23908;i:1;R:23909;}s:14:"1210:s_actions";a:2:{i:0;R:23908;i:1;R:23909;}s:14:"1210:s_version";a:2:{i:0;R:23908;i:1;R:23909;}s:16:"1210:s_timestamp";a:2:{i:0;R:23908;i:1;R:23909;}s:13:"1210:s_update";a:2:{i:0;R:23908;i:1;R:23909;}s:18:"1210:s_subprojects";a:2:{i:0;R:23908;i:1;R:23909;}s:21:"1210:s_add_subproject";a:2:{i:0;R:23908;i:1;R:23909;}s:33:"1210:s_create_new_subproject_link";a:2:{i:0;R:23908;i:1;R:23909;}s:18:"1210:s_unlink_link";a:2:{i:0;R:23908;i:1;R:23909;}s:24:"1210:s_show_global_users";a:2:{i:0;R:23908;i:1;R:23909;}s:24:"1210:s_hide_global_users";a:2:{i:0;R:23908;i:1;R:23909;}s:24:"1210:s_add_project_title";a:2:{i:0;R:23908;i:1;R:23909;}s:23:"1210:s_upload_file_path";a:2:{i:0;R:23908;i:1;R:23909;}s:25:"1210:s_add_project_button";a:2:{i:0;R:23908;i:1;R:23909;}s:21:"1210:s_projects_title";a:2:{i:0;R:23908;i:1;R:23909;}s:11:"1210:s_name";a:2:{i:0;R:23908;i:1;R:23909;}s:26:"1210:s_project_updated_msg";a:2:{i:0;R:23908;i:1;R:23909;}s:24:"1210:s_version_added_msg";a:2:{i:0;R:23908;i:1;R:23909;}s:26:"1210:s_version_deleted_msg";a:2:{i:0;R:23908;i:1;R:23909;}s:26:"1210:s_version_delete_sure";a:2:{i:0;R:23908;i:1;R:23909;}s:28:"1210:s_delete_version_button";a:2:{i:0;R:23908;i:1;R:23909;}s:33:"1210:s_edit_project_version_title";a:2:{i:0;R:23908;i:1;R:23909;}s:28:"1210:s_update_version_button";a:2:{i:0;R:23908;i:1;R:23909;}s:15:"1210:s_released";a:2:{i:0;R:23908;i:1;R:23909;}s:19:"1210:s_not_released";a:2:{i:0;R:23908;i:1;R:23909;}s:24:"1210:s_scheduled_release";a:2:{i:0;R:23908;i:1;R:23909;}s:15:"1210:s_obsolete";a:2:{i:0;R:23908;i:1;R:23909;}s:26:"1210:s_version_updated_msg";a:2:{i:0;R:23908;i:1;R:23909;}s:35:"1210:s_account_delete_protected_msg";a:2:{i:0;R:23908;i:1;R:23909;}s:26:"1210:s_account_deleted_msg";a:2:{i:0;R:23908;i:1;R:23909;}s:30:"1210:s_delete_account_sure_msg";a:2:{i:0;R:23908;i:1;R:23909;}s:18:"1210:s_notify_user";a:2:{i:0;R:23908;i:1;R:23909;}s:26:"1210:s_accounts_pruned_msg";a:2:{i:0;R:23908;i:1;R:23909;}s:28:"1210:s_prune_accounts_button";a:2:{i:0;R:23908;i:1;R:23909;}s:30:"1210:s_confirm_account_pruning";a:2:{i:0;R:23908;i:1;R:23909;}s:22:"1210:s_edit_user_title";a:2:{i:0;R:23908;i:1;R:23909;}s:28:"1210:s_account_unlock_button";a:2:{i:0;R:23908;i:1;R:23909;}s:28:"1210:s_reset_password_button";a:2:{i:0;R:23908;i:1;R:23909;}s:25:"1210:s_delete_user_button";a:2:{i:0;R:23908;i:1;R:23909;}s:25:"1210:s_reset_password_msg";a:2:{i:0;R:23908;i:1;R:23909;}s:26:"1210:s_reset_password_msg2";a:2:{i:0;R:23908;i:1;R:23909;}s:21:"1210:s_show_all_users";a:2:{i:0;R:23908;i:1;R:23909;}s:19:"1210:s_users_unused";a:2:{i:0;R:23908;i:1;R:23909;}s:16:"1210:s_users_new";a:2:{i:0;R:23908;i:1;R:23909;}s:34:"1210:s_account_reset_protected_msg";a:2:{i:0;R:23908;i:1;R:23909;}s:24:"1210:s_account_reset_msg";a:2:{i:0;R:23908;i:1;R:23909;}s:25:"1210:s_account_reset_msg2";a:2:{i:0;R:23908;i:1;R:23909;}s:25:"1210:s_account_unlock_msg";a:2:{i:0;R:23908;i:1;R:23909;}s:32:"1210:s_manage_user_protected_msg";a:2:{i:0;R:23908;i:1;R:23909;}s:30:"1210:s_manage_user_updated_msg";a:2:{i:0;R:23908;i:1;R:23909;}s:33:"1210:s_email_user_updated_subject";a:2:{i:0;R:23908;i:1;R:23909;}s:29:"1210:s_email_user_updated_msg";a:2:{i:0;R:23908;i:1;R:23909;}s:16:"1210:s_main_link";a:2:{i:0;R:23908;i:1;R:23909;}s:21:"1210:s_view_bugs_link";a:2:{i:0;R:23908;i:1;R:23909;}s:22:"1210:s_report_bug_link";a:2:{i:0;R:23908;i:1;R:23909;}s:21:"1210:s_changelog_link";a:2:{i:0;R:23908;i:1;R:23909;}s:19:"1210:s_roadmap_link";a:2:{i:0;R:23908;i:1;R:23909;}s:19:"1210:s_summary_link";a:2:{i:0;R:23908;i:1;R:23909;}s:19:"1210:s_account_link";a:2:{i:0;R:23908;i:1;R:23909;}s:17:"1210:s_users_link";a:2:{i:0;R:23908;i:1;R:23909;}s:18:"1210:s_manage_link";a:2:{i:0;R:23908;i:1;R:23909;}s:21:"1210:s_edit_news_link";a:2:{i:0;R:23908;i:1;R:23909;}s:16:"1210:s_docs_link";a:2:{i:0;R:23908;i:1;R:23909;}s:18:"1210:s_logout_link";a:2:{i:0;R:23908;i:1;R:23909;}s:19:"1210:s_my_view_link";a:2:{i:0;R:23908;i:1;R:23909;}s:31:"1210:s_my_view_title_unassigned";a:2:{i:0;R:23908;i:1;R:23909;}s:31:"1210:s_my_view_title_recent_mod";a:2:{i:0;R:23908;i:1;R:23909;}s:29:"1210:s_my_view_title_reported";a:2:{i:0;R:23908;i:1;R:23909;}s:29:"1210:s_my_view_title_assigned";a:2:{i:0;R:23908;i:1;R:23909;}s:29:"1210:s_my_view_title_resolved";a:2:{i:0;R:23908;i:1;R:23909;}s:30:"1210:s_my_view_title_monitored";a:2:{i:0;R:23908;i:1;R:23909;}s:29:"1210:s_my_view_title_feedback";a:2:{i:0;R:23908;i:1;R:23909;}s:27:"1210:s_my_view_title_verify";a:2:{i:0;R:23908;i:1;R:23909;}s:32:"1210:s_my_view_title_my_comments";a:2:{i:0;R:23908;i:1;R:23909;}s:21:"1210:s_news_added_msg";a:2:{i:0;R:23908;i:1;R:23909;}s:23:"1210:s_news_deleted_msg";a:2:{i:0;R:23908;i:1;R:23909;}s:27:"1210:s_delete_news_sure_msg";a:2:{i:0;R:23908;i:1;R:23909;}s:30:"1210:s_delete_news_item_button";a:2:{i:0;R:23908;i:1;R:23909;}s:22:"1210:s_edit_news_title";a:2:{i:0;R:23908;i:1;R:23909;}s:15:"1210:s_headline";a:2:{i:0;R:23908;i:1;R:23909;}s:11:"1210:s_body";a:2:{i:0;R:23908;i:1;R:23909;}s:25:"1210:s_update_news_button";a:2:{i:0;R:23908;i:1;R:23909;}s:21:"1210:s_add_news_title";a:2:{i:0;R:23908;i:1;R:23909;}s:14:"1210:s_post_to";a:2:{i:0;R:23908;i:1;R:23909;}s:23:"1210:s_post_news_button";a:2:{i:0;R:23908;i:1;R:23909;}s:32:"1210:s_edit_or_delete_news_title";a:2:{i:0;R:23908;i:1;R:23909;}s:16:"1210:s_edit_post";a:2:{i:0;R:23908;i:1;R:23909;}s:18:"1210:s_delete_post";a:2:{i:0;R:23908;i:1;R:23909;}s:18:"1210:s_select_post";a:2:{i:0;R:23908;i:1;R:23909;}s:23:"1210:s_news_updated_msg";a:2:{i:0;R:23908;i:1;R:23909;}s:16:"1210:s_back_link";a:2:{i:0;R:23908;i:1;R:23909;}s:24:"1210:s_file_uploaded_msg";a:2:{i:0;R:23908;i:1;R:23909;}s:24:"1210:s_upload_file_title";a:2:{i:0;R:23908;i:1;R:23909;}s:12:"1210:s_title";a:2:{i:0;R:23908;i:1;R:23909;}s:31:"1210:s_project_file_deleted_msg";a:2:{i:0;R:23908;i:1;R:23909;}s:30:"1210:s_confirm_file_delete_msg";a:2:{i:0;R:23908;i:1;R:23909;}s:15:"1210:s_filename";a:2:{i:0;R:23908;i:1;R:23909;}s:25:"1210:s_file_update_button";a:2:{i:0;R:23908;i:1;R:23909;}s:25:"1210:s_file_delete_button";a:2:{i:0;R:23908;i:1;R:23909;}s:34:"1210:s_project_documentation_title";a:2:{i:0;R:23908;i:1;R:23909;}s:25:"1210:s_user_documentation";a:2:{i:0;R:23908;i:1;R:23909;}s:28:"1210:s_project_documentation";a:2:{i:0;R:23908;i:1;R:23909;}s:15:"1210:s_add_file";a:2:{i:0;R:23908;i:1;R:23909;}s:31:"1210:s_project_document_updated";a:2:{i:0;R:23908;i:1;R:23909;}s:29:"1210:s_project_user_added_msg";a:2:{i:0;R:23908;i:1;R:23909;}s:31:"1210:s_project_removed_user_msg";a:2:{i:0;R:23908;i:1;R:23909;}s:27:"1210:s_remove_user_sure_msg";a:2:{i:0;R:23908;i:1;R:23909;}s:38:"1210:s_remove_user_from_project_button";a:2:{i:0;R:23908;i:1;R:23909;}s:32:"1210:s_remove_all_users_sure_msg";a:2:{i:0;R:23908;i:1;R:23909;}s:30:"1210:s_remove_all_users_button";a:2:{i:0;R:23908;i:1;R:23909;}s:21:"1210:s_add_user_title";a:2:{i:0;R:23908;i:1;R:23909;}s:22:"1210:s_add_user_button";a:2:{i:0;R:23908;i:1;R:23909;}s:30:"1210:s_project_selection_title";a:2:{i:0;R:23908;i:1;R:23909;}s:18:"1210:s_remove_link";a:2:{i:0;R:23908;i:1;R:23909;}s:22:"1210:s_remove_all_link";a:2:{i:0;R:23908;i:1;R:23909;}s:23:"1210:s_updated_user_msg";a:2:{i:0;R:23908;i:1;R:23909;}s:26:"1210:s_must_enter_category";a:2:{i:0;R:23908;i:1;R:23909;}s:26:"1210:s_must_enter_severity";a:2:{i:0;R:23908;i:1;R:23909;}s:33:"1210:s_must_enter_reproducibility";a:2:{i:0;R:23908;i:1;R:23909;}s:25:"1210:s_must_enter_summary";a:2:{i:0;R:23908;i:1;R:23909;}s:29:"1210:s_must_enter_description";a:2:{i:0;R:23908;i:1;R:23909;}s:23:"1210:s_report_more_bugs";a:2:{i:0;R:23908;i:1;R:23909;}s:28:"1210:s_submission_thanks_msg";a:2:{i:0;R:23908;i:1;R:23909;}s:25:"1210:s_simple_report_link";a:2:{i:0;R:23908;i:1;R:23909;}s:33:"1210:s_enter_report_details_title";a:2:{i:0;R:23908;i:1;R:23909;}s:15:"1210:s_required";a:2:{i:0;R:23908;i:1;R:23909;}s:22:"1210:s_select_category";a:2:{i:0;R:23908;i:1;R:23909;}s:29:"1210:s_select_reproducibility";a:2:{i:0;R:23908;i:1;R:23909;}s:22:"1210:s_select_severity";a:2:{i:0;R:23908;i:1;R:23909;}s:17:"1210:s_or_fill_in";a:2:{i:0;R:23908;i:1;R:23909;}s:16:"1210:s_assign_to";a:2:{i:0;R:23908;i:1;R:23909;}s:29:"1210:s_additional_information";a:2:{i:0;R:23908;i:1;R:23909;}s:27:"1210:s_submit_report_button";a:2:{i:0;R:23908;i:1;R:23909;}s:29:"1210:s_check_report_more_bugs";a:2:{i:0;R:23908;i:1;R:23909;}s:18:"1210:s_report_stay";a:2:{i:0;R:23908;i:1;R:23909;}s:23:"1210:s_selected_project";a:2:{i:0;R:23908;i:1;R:23909;}s:24:"1210:s_valid_project_msg";a:2:{i:0;R:23908;i:1;R:23909;}s:24:"1210:s_signup_done_title";a:2:{i:0;R:23908;i:1;R:23909;}s:27:"1210:s_password_emailed_msg";a:2:{i:0;R:23908;i:1;R:23909;}s:21:"1210:s_no_reponse_msg";a:2:{i:0;R:23908;i:1;R:23909;}s:29:"1210:s_signup_captcha_request";a:2:{i:0;R:23908;i:1;R:23909;}s:18:"1210:s_signup_info";a:2:{i:0;R:23908;i:1;R:23909;}s:19:"1210:s_signup_title";a:2:{i:0;R:23908;i:1;R:23909;}s:20:"1210:s_signup_button";a:2:{i:0;R:23908;i:1;R:23909;}s:26:"1210:s_no_password_request";a:2:{i:0;R:23908;i:1;R:23909;}s:31:"1210:s_edit_site_settings_title";a:2:{i:0;R:23908;i:1;R:23909;}s:27:"1210:s_save_settings_button";a:2:{i:0;R:23908;i:1;R:23909;}s:26:"1210:s_site_settings_title";a:2:{i:0;R:23908;i:1;R:23909;}s:23:"1210:s_system_info_link";a:2:{i:0;R:23908;i:1;R:23909;}s:25:"1210:s_site_settings_link";a:2:{i:0;R:23908;i:1;R:23909;}s:32:"1210:s_site_settings_updated_msg";a:2:{i:0;R:23908;i:1;R:23909;}s:20:"1210:s_summary_title";a:2:{i:0;R:23908;i:1;R:23909;}s:28:"1210:s_summary_advanced_link";a:2:{i:0;R:23908;i:1;R:23909;}s:17:"1210:s_by_project";a:2:{i:0;R:23908;i:1;R:23909;}s:16:"1210:s_by_status";a:2:{i:0;R:23908;i:1;R:23909;}s:14:"1210:s_by_date";a:2:{i:0;R:23908;i:1;R:23909;}s:18:"1210:s_by_severity";a:2:{i:0;R:23908;i:1;R:23909;}s:20:"1210:s_by_resolution";a:2:{i:0;R:23908;i:1;R:23909;}s:18:"1210:s_by_category";a:2:{i:0;R:23908;i:1;R:23909;}s:18:"1210:s_by_priority";a:2:{i:0;R:23908;i:1;R:23909;}s:19:"1210:s_by_developer";a:2:{i:0;R:23908;i:1;R:23909;}s:18:"1210:s_by_reporter";a:2:{i:0;R:23908;i:1;R:23909;}s:29:"1210:s_reporter_by_resolution";a:2:{i:0;R:23908;i:1;R:23909;}s:29:"1210:s_reporter_effectiveness";a:2:{i:0;R:23908;i:1;R:23909;}s:30:"1210:s_developer_by_resolution";a:2:{i:0;R:23908;i:1;R:23909;}s:23:"1210:s_percentage_fixed";a:2:{i:0;R:23908;i:1;R:23909;}s:24:"1210:s_percentage_errors";a:2:{i:0;R:23908;i:1;R:23909;}s:13:"1210:s_errors";a:2:{i:0;R:23908;i:1;R:23909;}s:13:"1210:s_opened";a:2:{i:0;R:23908;i:1;R:23909;}s:15:"1210:s_resolved";a:2:{i:0;R:23908;i:1;R:23909;}s:12:"1210:s_total";a:2:{i:0;R:23908;i:1;R:23909;}s:14:"1210:s_balance";a:2:{i:0;R:23908;i:1;R:23909;}s:18:"1210:s_most_active";a:2:{i:0;R:23908;i:1;R:23909;}s:12:"1210:s_score";a:2:{i:0;R:23908;i:1;R:23909;}s:11:"1210:s_days";a:2:{i:0;R:23908;i:1;R:23909;}s:17:"1210:s_time_stats";a:2:{i:0;R:23908;i:1;R:23909;}s:23:"1210:s_longest_open_bug";a:2:{i:0;R:23908;i:1;R:23909;}s:19:"1210:s_longest_open";a:2:{i:0;R:23908;i:1;R:23909;}s:19:"1210:s_average_time";a:2:{i:0;R:23908;i:1;R:23909;}s:17:"1210:s_total_time";a:2:{i:0;R:23908;i:1;R:23909;}s:22:"1210:s_developer_stats";a:2:{i:0;R:23908;i:1;R:23909;}s:21:"1210:s_reporter_stats";a:2:{i:0;R:23908;i:1;R:23909;}s:11:"1210:s_orct";a:2:{i:0;R:23908;i:1;R:23909;}s:10:"1210:s_any";a:2:{i:0;R:23908;i:1;R:23909;}s:10:"1210:s_all";a:2:{i:0;R:23908;i:1;R:23909;}s:11:"1210:s_show";a:2:{i:0;R:23908;i:1;R:23909;}s:14:"1210:s_changed";a:2:{i:0;R:23908;i:1;R:23909;}s:25:"1210:s_viewing_bugs_title";a:2:{i:0;R:23908;i:1;R:23909;}s:14:"1210:s_updated";a:2:{i:0;R:23908;i:1;R:23909;}s:13:"1210:s_sticky";a:2:{i:0;R:23908;i:1;R:23909;}s:11:"1210:s_sort";a:2:{i:0;R:23908;i:1;R:23909;}s:15:"1210:s_issue_id";a:2:{i:0;R:23908;i:1;R:23909;}s:23:"1210:s_recently_visited";a:2:{i:0;R:23908;i:1;R:23909;}s:28:"1210:s_priority_abbreviation";a:2:{i:0;R:23908;i:1;R:23909;}s:19:"1210:s_note_user_id";a:2:{i:0;R:23908;i:1;R:23909;}s:11:"1210:s_none";a:2:{i:0;R:23908;i:1;R:23909;}s:14:"1210:s_current";a:2:{i:0;R:23908;i:1;R:23909;}s:13:"1210:s_search";a:2:{i:0;R:23908;i:1;R:23909;}s:21:"1210:s_view_prev_link";a:2:{i:0;R:23908;i:1;R:23909;}s:21:"1210:s_view_next_link";a:2:{i:0;R:23908;i:1;R:23909;}s:11:"1210:s_prev";a:2:{i:0;R:23908;i:1;R:23909;}s:11:"1210:s_next";a:2:{i:0;R:23908;i:1;R:23909;}s:12:"1210:s_first";a:2:{i:0;R:23908;i:1;R:23909;}s:11:"1210:s_last";a:2:{i:0;R:23908;i:1;R:23909;}s:17:"1210:s_start_date";a:2:{i:0;R:23908;i:1;R:23909;}s:15:"1210:s_end_date";a:2:{i:0;R:23908;i:1;R:23909;}s:23:"1210:s_use_date_filters";a:2:{i:0;R:23908;i:1;R:23909;}s:10:"1210:s_yes";a:2:{i:0;R:23908;i:1;R:23909;}s:9:"1210:s_no";a:2:{i:0;R:23908;i:1;R:23909;}s:19:"1210:s_open_filters";a:2:{i:0;R:23908;i:1;R:23909;}s:20:"1210:s_or_unassigned";a:2:{i:0;R:23908;i:1;R:23909;}s:9:"1210:s_ok";a:2:{i:0;R:23908;i:1;R:23909;}s:17:"1210:s_select_all";a:2:{i:0;R:23908;i:1;R:23909;}s:16:"1210:s_use_query";a:2:{i:0;R:23908;i:1;R:23909;}s:19:"1210:s_delete_query";a:2:{i:0;R:23908;i:1;R:23909;}s:20:"1210:s_query_deleted";a:2:{i:0;R:23908;i:1;R:23909;}s:17:"1210:s_save_query";a:2:{i:0;R:23908;i:1;R:23909;}s:18:"1210:s_reset_query";a:2:{i:0;R:23908;i:1;R:23909;}s:17:"1210:s_query_name";a:2:{i:0;R:23908;i:1;R:23909;}s:19:"1210:s_query_exists";a:2:{i:0;R:23908;i:1;R:23909;}s:22:"1210:s_query_dupe_name";a:2:{i:0;R:23908;i:1;R:23909;}s:23:"1210:s_query_blank_name";a:2:{i:0;R:23908;i:1;R:23909;}s:26:"1210:s_query_name_too_long";a:2:{i:0;R:23908;i:1;R:23909;}s:24:"1210:s_query_store_error";a:2:{i:0;R:23908;i:1;R:23909;}s:19:"1210:s_open_queries";a:2:{i:0;R:23908;i:1;R:23909;}s:23:"1210:s_query_delete_msg";a:2:{i:0;R:23908;i:1;R:23909;}s:23:"1210:s_view_simple_link";a:2:{i:0;R:23908;i:1;R:23909;}s:20:"1210:s_product_build";a:2:{i:0;R:23908;i:1;R:23909;}s:21:"1210:s_system_profile";a:2:{i:0;R:23908;i:1;R:23909;}s:24:"1210:s_update_bug_button";a:2:{i:0;R:23908;i:1;R:23909;}s:27:"1210:s_bug_assign_to_button";a:2:{i:0;R:23908;i:1;R:23909;}s:27:"1210:s_bug_status_to_button";a:2:{i:0;R:23908;i:1;R:23909;}s:24:"1210:s_reopen_bug_button";a:2:{i:0;R:23908;i:1;R:23909;}s:22:"1210:s_move_bug_button";a:2:{i:0;R:23908;i:1;R:23909;}s:21:"1210:s_attached_files";a:2:{i:0;R:23908;i:1;R:23909;}s:14:"1210:s_publish";a:2:{i:0;R:23908;i:1;R:23909;}s:13:"1210:s_cached";a:2:{i:0;R:23908;i:1;R:23909;}s:26:"1210:s_add_user_to_monitor";a:2:{i:0;R:23908;i:1;R:23909;}s:21:"1210:s_bug_view_title";a:2:{i:0;R:23908;i:1;R:23909;}s:30:"1210:s_no_users_monitoring_bug";a:2:{i:0;R:23908;i:1;R:23909;}s:27:"1210:s_users_monitoring_bug";a:2:{i:0;R:23908;i:1;R:23909;}s:27:"1210:s_monitoring_user_list";a:2:{i:0;R:23908;i:1;R:23909;}s:30:"1210:s_no_users_sponsoring_bug";a:2:{i:0;R:23908;i:1;R:23909;}s:27:"1210:s_users_sponsoring_bug";a:2:{i:0;R:23908;i:1;R:23909;}s:20:"1210:s_sponsors_list";a:2:{i:0;R:23908;i:1;R:23909;}s:31:"1210:s_total_sponsorship_amount";a:2:{i:0;R:23908;i:1;R:23909;}s:30:"1210:s_add_custom_field_button";a:2:{i:0;R:23908;i:1;R:23909;}s:33:"1210:s_delete_custom_field_button";a:2:{i:0;R:23908;i:1;R:23909;}s:37:"1210:s_delete_custom_field_everywhere";a:2:{i:0;R:23908;i:1;R:23909;}s:33:"1210:s_update_custom_field_button";a:2:{i:0;R:23908;i:1;R:23909;}s:32:"1210:s_add_existing_custom_field";a:2:{i:0;R:23908;i:1;R:23909;}s:30:"1210:s_edit_custom_field_title";a:2:{i:0;R:23908;i:1;R:23909;}s:19:"1210:s_custom_field";a:2:{i:0;R:23908;i:1;R:23909;}s:26:"1210:s_custom_fields_setup";a:2:{i:0;R:23908;i:1;R:23909;}s:24:"1210:s_custom_field_name";a:2:{i:0;R:23908;i:1;R:23909;}s:33:"1210:s_custom_field_project_count";a:2:{i:0;R:23908;i:1;R:23909;}s:24:"1210:s_custom_field_type";a:2:{i:0;R:23908;i:1;R:23909;}s:35:"1210:s_custom_field_possible_values";a:2:{i:0;R:23908;i:1;R:23909;}s:33:"1210:s_custom_field_default_value";a:2:{i:0;R:23908;i:1;R:23909;}s:32:"1210:s_custom_field_valid_regexp";a:2:{i:0;R:23908;i:1;R:23909;}s:34:"1210:s_custom_field_access_level_r";a:2:{i:0;R:23908;i:1;R:23909;}s:35:"1210:s_custom_field_access_level_rw";a:2:{i:0;R:23908;i:1;R:23909;}s:30:"1210:s_custom_field_length_min";a:2:{i:0;R:23908;i:1;R:23909;}s:30:"1210:s_custom_field_length_max";a:2:{i:0;R:23908;i:1;R:23909;}s:29:"1210:s_custom_field_filter_by";a:2:{i:0;R:23908;i:1;R:23909;}s:34:"1210:s_custom_field_display_report";a:2:{i:0;R:23908;i:1;R:23909;}s:34:"1210:s_custom_field_display_update";a:2:{i:0;R:23908;i:1;R:23909;}s:36:"1210:s_custom_field_display_resolved";a:2:{i:0;R:23908;i:1;R:23909;}s:34:"1210:s_custom_field_display_closed";a:2:{i:0;R:23908;i:1;R:23909;}s:34:"1210:s_custom_field_require_report";a:2:{i:0;R:23908;i:1;R:23909;}s:34:"1210:s_custom_field_require_update";a:2:{i:0;R:23908;i:1;R:23909;}s:36:"1210:s_custom_field_require_resolved";a:2:{i:0;R:23908;i:1;R:23909;}s:34:"1210:s_custom_field_require_closed";a:2:{i:0;R:23908;i:1;R:23909;}s:41:"1210:s_link_custom_field_to_project_title";a:2:{i:0;R:23908;i:1;R:23909;}s:42:"1210:s_link_custom_field_to_project_button";a:2:{i:0;R:23908;i:1;R:23909;}s:22:"1210:s_linked_projects";a:2:{i:0;R:23908;i:1;R:23909;}s:28:"1210:s_custom_field_sequence";a:2:{i:0;R:23908;i:1;R:23909;}s:36:"1210:s_custom_field_type_enum_string";a:2:{i:0;R:23908;i:1;R:23909;}s:41:"1210:s_confirm_used_custom_field_deletion";a:2:{i:0;R:23908;i:1;R:23909;}s:36:"1210:s_confirm_custom_field_deletion";a:2:{i:0;R:23908;i:1;R:23909;}s:26:"1210:s_field_delete_button";a:2:{i:0;R:23908;i:1;R:23909;}s:37:"1210:s_confirm_custom_field_unlinking";a:2:{i:0;R:23908;i:1;R:23909;}s:26:"1210:s_field_remove_button";a:2:{i:0;R:23908;i:1;R:23909;}s:18:"1210:s_hide_status";a:2:{i:0;R:23908;i:1;R:23909;}s:20:"1210:s_filter_closed";a:2:{i:0;R:23908;i:1;R:23909;}s:22:"1210:s_filter_resolved";a:2:{i:0;R:23908;i:1;R:23909;}s:18:"1210:s_hide_closed";a:2:{i:0;R:23908;i:1;R:23909;}s:20:"1210:s_hide_resolved";a:2:{i:0;R:23908;i:1;R:23909;}s:16:"1210:s_and_above";a:2:{i:0;R:23908;i:1;R:23909;}s:23:"1210:s_advanced_filters";a:2:{i:0;R:23908;i:1;R:23909;}s:21:"1210:s_simple_filters";a:2:{i:0;R:23908;i:1;R:23909;}s:19:"1210:s_monitored_by";a:2:{i:0;R:23908;i:1;R:23909;}s:18:"1210:s_attachments";a:2:{i:0;R:23908;i:1;R:23909;}s:12:"1210:s_bytes";a:2:{i:0;R:23908;i:1;R:23909;}s:25:"1210:s_attachment_missing";a:2:{i:0;R:23908;i:1;R:23909;}s:23:"1210:s_attachment_count";a:2:{i:0;R:23908;i:1;R:23909;}s:33:"1210:s_view_attachments_for_issue";a:2:{i:0;R:23908;i:1;R:23909;}s:25:"1210:s_phpmailer_language";a:2:{i:0;R:23908;i:1;R:23909;}s:15:"1210:s_sponsors";a:2:{i:0;R:23908;i:1;R:23909;}s:24:"1210:s_sponsorship_added";a:2:{i:0;R:23908;i:1;R:23909;}s:26:"1210:s_sponsorship_updated";a:2:{i:0;R:23908;i:1;R:23909;}s:26:"1210:s_sponsorship_deleted";a:2:{i:0;R:23908;i:1;R:23909;}s:23:"1210:s_sponsorship_paid";a:2:{i:0;R:23908;i:1;R:23909;}s:28:"1210:s_sponsorship_more_info";a:2:{i:0;R:23908;i:1;R:23909;}s:24:"1210:s_sponsorship_total";a:2:{i:0;R:23908;i:1;R:23909;}s:30:"1210:s_sponsorship_process_url";a:2:{i:0;R:23908;i:1;R:23909;}s:16:"1210:s_changelog";a:2:{i:0;R:23908;i:1;R:23909;}s:22:"1210:s_changelog_empty";a:2:{i:0;R:23908;i:1;R:23909;}s:14:"1210:s_roadmap";a:2:{i:0;R:23908;i:1;R:23909;}s:24:"1210:s_resolved_progress";a:2:{i:0;R:23908;i:1;R:23909;}s:22:"1210:s_http_auth_realm";a:2:{i:0;R:23908;i:1;R:23909;}s:10:"1210:s_bug";a:2:{i:0;R:23908;i:1;R:23909;}s:11:"1210:s_bugs";a:2:{i:0;R:23908;i:1;R:23909;}s:27:"1210:s_add_new_relationship";a:2:{i:0;R:23908;i:1;R:23909;}s:34:"1210:s_add_new_relationship_button";a:2:{i:0;R:23908;i:1;R:23909;}s:15:"1210:s_this_bug";a:2:{i:0;R:23908;i:1;R:23909;}s:25:"1210:s_relationship_added";a:2:{i:0;R:23908;i:1;R:23909;}s:27:"1210:s_relationship_deleted";a:2:{i:0;R:23908;i:1;R:23909;}s:22:"1210:s_no_relationship";a:2:{i:0;R:23908;i:1;R:23909;}s:28:"1210:s_relationship_replaced";a:2:{i:0;R:23908;i:1;R:23909;}s:34:"1210:s_replace_relationship_button";a:2:{i:0;R:23908;i:1;R:23909;}s:36:"1210:s_replace_relationship_sure_msg";a:2:{i:0;R:23908;i:1;R:23909;}s:31:"1210:s_relationship_with_parent";a:2:{i:0;R:23908;i:1;R:23909;}s:33:"1210:s_delete_relationship_button";a:2:{i:0;R:23908;i:1;R:23909;}s:35:"1210:s_delete_relationship_sure_msg";a:2:{i:0;R:23908;i:1;R:23909;}s:54:"1210:s_relationship_warning_blocking_bugs_not_resolved";a:2:{i:0;R:23908;i:1;R:23909;}s:56:"1210:s_relationship_warning_blocking_bugs_not_resolved_2";a:2:{i:0;R:23908;i:1;R:23909;}s:30:"1210:s_create_child_bug_button";a:2:{i:0;R:23908;i:1;R:23909;}s:20:"1210:s_bug_cloned_to";a:2:{i:0;R:23908;i:1;R:23909;}s:23:"1210:s_bug_created_from";a:2:{i:0;R:23908;i:1;R:23909;}s:23:"1210:s_copy_from_parent";a:2:{i:0;R:23908;i:1;R:23909;}s:29:"1210:s_copy_notes_from_parent";a:2:{i:0;R:23908;i:1;R:23909;}s:35:"1210:s_copy_attachments_from_parent";a:2:{i:0;R:23908;i:1;R:23909;}s:43:"1210:s_viewing_bug_relationship_graph_title";a:2:{i:0;R:23908;i:1;R:23909;}s:41:"1210:s_viewing_bug_dependency_graph_title";a:2:{i:0;R:23908;i:1;R:23909;}s:21:"1210:s_relation_graph";a:2:{i:0;R:23908;i:1;R:23909;}s:23:"1210:s_dependency_graph";a:2:{i:0;R:23908;i:1;R:23909;}s:15:"1210:s_vertical";a:2:{i:0;R:23908;i:1;R:23909;}s:17:"1210:s_horizontal";a:2:{i:0;R:23908;i:1;R:23909;}s:17:"1210:s_view_issue";a:2:{i:0;R:23908;i:1;R:23909;}s:14:"1210:s_checkin";a:2:{i:0;R:23908;i:1;R:23909;}s:26:"1210:s_perm_rpt_capability";a:2:{i:0;R:23908;i:1;R:23909;}s:11:"1210:s_view";a:2:{i:0;R:23908;i:1;R:23909;}s:13:"1210:s_issues";a:2:{i:0;R:23908;i:1;R:23909;}s:19:"1210:s_report_issue";a:2:{i:0;R:23908;i:1;R:23909;}s:19:"1210:s_update_issue";a:2:{i:0;R:23908;i:1;R:23909;}s:20:"1210:s_monitor_issue";a:2:{i:0;R:23908;i:1;R:23909;}s:19:"1210:s_handle_issue";a:2:{i:0;R:23908;i:1;R:23909;}s:17:"1210:s_move_issue";a:2:{i:0;R:23908;i:1;R:23909;}s:19:"1210:s_delete_issue";a:2:{i:0;R:23908;i:1;R:23909;}s:19:"1210:s_reopen_issue";a:2:{i:0;R:23908;i:1;R:23909;}s:26:"1210:s_view_private_issues";a:2:{i:0;R:23908;i:1;R:23909;}s:29:"1210:s_update_readonly_issues";a:2:{i:0;R:23908;i:1;R:23909;}s:26:"1210:s_update_issue_status";a:2:{i:0;R:23908;i:1;R:23909;}s:22:"1210:s_set_view_status";a:2:{i:0;R:23908;i:1;R:23909;}s:25:"1210:s_update_view_status";a:2:{i:0;R:23908;i:1;R:23909;}s:42:"1210:s_show_list_of_users_monitoring_issue";a:2:{i:0;R:23908;i:1;R:23909;}s:12:"1210:s_notes";a:2:{i:0;R:23908;i:1;R:23909;}s:16:"1210:s_add_notes";a:2:{i:0;R:23908;i:1;R:23909;}s:19:"1210:s_update_notes";a:2:{i:0;R:23908;i:1;R:23909;}s:18:"1210:s_delete_note";a:2:{i:0;R:23908;i:1;R:23909;}s:25:"1210:s_view_private_notes";a:2:{i:0;R:23908;i:1;R:23909;}s:11:"1210:s_news";a:2:{i:0;R:23908;i:1;R:23909;}s:24:"1210:s_view_private_news";a:2:{i:0;R:23908;i:1;R:23909;}s:18:"1210:s_manage_news";a:2:{i:0;R:23908;i:1;R:23909;}s:31:"1210:s_view_list_of_attachments";a:2:{i:0;R:23908;i:1;R:23909;}s:27:"1210:s_download_attachments";a:2:{i:0;R:23908;i:1;R:23909;}s:25:"1210:s_delete_attachments";a:2:{i:0;R:23908;i:1;R:23909;}s:31:"1210:s_delete_attachment_button";a:2:{i:0;R:23908;i:1;R:23909;}s:33:"1210:s_delete_attachment_sure_msg";a:2:{i:0;R:23908;i:1;R:23909;}s:31:"1210:s_upload_issue_attachments";a:2:{i:0;R:23908;i:1;R:23909;}s:14:"1210:s_filters";a:2:{i:0;R:23908;i:1;R:23909;}s:19:"1210:s_save_filters";a:2:{i:0;R:23908;i:1;R:23909;}s:29:"1210:s_save_filters_as_shared";a:2:{i:0;R:23908;i:1;R:23909;}s:24:"1210:s_use_saved_filters";a:2:{i:0;R:23908;i:1;R:23909;}s:21:"1210:s_create_project";a:2:{i:0;R:23908;i:1;R:23909;}s:21:"1210:s_delete_project";a:2:{i:0;R:23908;i:1;R:23909;}s:21:"1210:s_manage_project";a:2:{i:0;R:23908;i:1;R:23909;}s:36:"1210:s_manage_user_access_to_project";a:2:{i:0;R:23908;i:1;R:23909;}s:49:"1210:s_automatically_included_in_private_projects";a:2:{i:0;R:23908;i:1;R:23909;}s:24:"1210:s_project_documents";a:2:{i:0;R:23908;i:1;R:23909;}s:29:"1210:s_view_project_documents";a:2:{i:0;R:23908;i:1;R:23909;}s:31:"1210:s_upload_project_documents";a:2:{i:0;R:23908;i:1;R:23909;}s:37:"1210:s_link_custom_fields_to_projects";a:2:{i:0;R:23908;i:1;R:23909;}s:19:"1210:s_sponsorships";a:2:{i:0;R:23908;i:1;R:23909;}s:31:"1210:s_view_sponsorship_details";a:2:{i:0;R:23908;i:1;R:23909;}s:29:"1210:s_view_sponsorship_total";a:2:{i:0;R:23908;i:1;R:23909;}s:20:"1210:s_sponsor_issue";a:2:{i:0;R:23908;i:1;R:23909;}s:29:"1210:s_assign_sponsored_issue";a:2:{i:0;R:23908;i:1;R:23909;}s:29:"1210:s_handle_sponsored_issue";a:2:{i:0;R:23908;i:1;R:23909;}s:13:"1210:s_others";a:2:{i:0;R:23908;i:1;R:23909;}s:41:"1210:s_see_email_addresses_of_other_users";a:2:{i:0;R:23908;i:1;R:23909;}s:21:"1210:s_send_reminders";a:2:{i:0;R:23908;i:1;R:23909;}s:19:"1210:s_add_profiles";a:2:{i:0;R:23908;i:1;R:23909;}s:33:"1210:s_notify_of_new_user_created";a:2:{i:0;R:23908;i:1;R:23909;}s:25:"1210:s_email_notification";a:2:{i:0;R:23908;i:1;R:23909;}s:24:"1210:s_status_changed_to";a:2:{i:0;R:23908;i:1;R:23909;}s:23:"1210:s_email_on_deleted";a:2:{i:0;R:23908;i:1;R:23909;}s:35:"1210:s_email_on_sponsorship_changed";a:2:{i:0;R:23908;i:1;R:23909;}s:36:"1210:s_email_on_relationship_changed";a:2:{i:0;R:23908;i:1;R:23909;}s:14:"1210:s_loading";a:2:{i:0;R:23908;i:1;R:23909;}s:19:"1210:s_between_date";a:2:{i:0;R:23908;i:1;R:23909;}s:24:"1210:s_on_or_before_date";a:2:{i:0;R:23908;i:1;R:23909;}s:18:"1210:s_before_date";a:2:{i:0;R:23908;i:1;R:23909;}s:17:"1210:s_after_date";a:2:{i:0;R:23908;i:1;R:23909;}s:23:"1210:s_on_or_after_date";a:2:{i:0;R:23908;i:1;R:23909;}s:16:"1210:s_from_date";a:2:{i:0;R:23908;i:1;R:23909;}s:14:"1210:s_to_date";a:2:{i:0;R:23908;i:1;R:23909;}s:14:"1210:s_on_date";a:2:{i:0;R:23908;i:1;R:23909;}s:9:"1210:s_on";a:2:{i:0;R:23908;i:1;R:23909;}s:10:"1210:s_off";a:2:{i:0;R:23908;i:1;R:23909;}s:11:"1210:s_wiki";a:2:{i:0;R:23908;i:1;R:23909;}s:11:"1210:s_tags";a:2:{i:0;R:23908;i:1;R:23909;}s:18:"1210:s_tag_details";a:2:{i:0;R:23908;i:1;R:23909;}s:13:"1210:s_tag_id";a:2:{i:0;R:23908;i:1;R:23909;}s:15:"1210:s_tag_name";a:2:{i:0;R:23908;i:1;R:23909;}s:18:"1210:s_tag_creator";a:2:{i:0;R:23908;i:1;R:23909;}s:18:"1210:s_tag_created";a:2:{i:0;R:23908;i:1;R:23909;}s:18:"1210:s_tag_updated";a:2:{i:0;R:23908;i:1;R:23909;}s:22:"1210:s_tag_description";a:2:{i:0;R:23908;i:1;R:23909;}s:21:"1210:s_tag_statistics";a:2:{i:0;R:23908;i:1;R:23909;}s:17:"1210:s_tag_update";a:2:{i:0;R:23908;i:1;R:23909;}s:24:"1210:s_tag_update_return";a:2:{i:0;R:23908;i:1;R:23909;}s:24:"1210:s_tag_update_button";a:2:{i:0;R:23908;i:1;R:23909;}s:24:"1210:s_tag_delete_button";a:2:{i:0;R:23908;i:1;R:23909;}s:25:"1210:s_tag_delete_message";a:2:{i:0;R:23908;i:1;R:23909;}s:19:"1210:s_tag_existing";a:2:{i:0;R:23908;i:1;R:23909;}s:24:"1210:s_tag_none_attached";a:2:{i:0;R:23908;i:1;R:23909;}s:17:"1210:s_tag_attach";a:2:{i:0;R:23908;i:1;R:23909;}s:22:"1210:s_tag_attach_long";a:2:{i:0;R:23908;i:1;R:23909;}s:24:"1210:s_tag_attach_failed";a:2:{i:0;R:23908;i:1;R:23909;}s:17:"1210:s_tag_detach";a:2:{i:0;R:23908;i:1;R:23909;}s:22:"1210:s_tag_separate_by";a:2:{i:0;R:23908;i:1;R:23909;}s:23:"1210:s_tag_invalid_name";a:2:{i:0;R:23908;i:1;R:23909;}s:24:"1210:s_tag_create_denied";a:2:{i:0;R:23908;i:1;R:23909;}s:25:"1210:s_tag_filter_default";a:2:{i:0;R:23908;i:1;R:23909;}s:27:"1210:s_tag_history_attached";a:2:{i:0;R:23908;i:1;R:23909;}s:27:"1210:s_tag_history_detached";a:2:{i:0;R:23908;i:1;R:23909;}s:26:"1210:s_tag_history_renamed";a:2:{i:0;R:23908;i:1;R:23909;}s:18:"1210:s_tag_related";a:2:{i:0;R:23908;i:1;R:23909;}s:25:"1210:s_tag_related_issues";a:2:{i:0;R:23908;i:1;R:23909;}s:25:"1210:s_tag_stats_attached";a:2:{i:0;R:23908;i:1;R:23909;}s:17:"1210:s_tag_create";a:2:{i:0;R:23908;i:1;R:23909;}s:20:"1210:s_show_all_tags";a:2:{i:0;R:23908;i:1;R:23909;}s:33:"1210:s_time_tracking_billing_link";a:2:{i:0;R:23908;i:1;R:23909;}s:20:"1210:s_time_tracking";a:2:{i:0;R:23908;i:1;R:23909;}s:31:"1210:s_time_tracking_time_spent";a:2:{i:0;R:23908;i:1;R:23909;}s:36:"1210:s_time_tracking_get_info_button";a:2:{i:0;R:23908;i:1;R:23909;}s:34:"1210:s_time_tracking_cost_per_hour";a:2:{i:0;R:23908;i:1;R:23909;}s:25:"1210:s_time_tracking_cost";a:2:{i:0;R:23908;i:1;R:23909;}s:27:"1210:s_total_time_for_issue";a:2:{i:0;R:23908;i:1;R:23909;}s:36:"1210:s_time_tracking_stopwatch_start";a:2:{i:0;R:23908;i:1;R:23909;}s:35:"1210:s_time_tracking_stopwatch_stop";a:2:{i:0;R:23908;i:1;R:23909;}s:36:"1210:s_time_tracking_stopwatch_reset";a:2:{i:0;R:23908;i:1;R:23909;}s:20:"1210:s_access_denied";a:2:{i:0;R:23908;i:1;R:23909;}s:23:"1210:s_twitter_resolved";a:2:{i:0;R:23908;i:1;R:23909;}s:34:"1210:s_twitter_resolved_no_version";a:2:{i:0;R:23908;i:1;R:23909;}s:23:"1210:s_development_team";a:2:{i:0;R:23908;i:1;R:23909;}s:28:"1210:s_manage_columns_config";a:2:{i:0;R:23908;i:1;R:23909;}s:24:"1210:s_all_columns_title";a:2:{i:0;R:23908;i:1;R:23909;}s:24:"1210:s_csv_columns_title";a:2:{i:0;R:23908;i:1;R:23909;}s:32:"1210:s_view_issues_columns_title";a:2:{i:0;R:23908;i:1;R:23909;}s:33:"1210:s_print_issues_columns_title";a:2:{i:0;R:23908;i:1;R:23909;}s:26:"1210:s_excel_columns_title";a:2:{i:0;R:23908;i:1;R:23909;}s:39:"1210:s_update_columns_as_global_default";a:2:{i:0;R:23908;i:1;R:23909;}s:41:"1210:s_update_columns_for_current_project";a:2:{i:0;R:23908;i:1;R:23909;}s:35:"1210:s_update_columns_as_my_default";a:2:{i:0;R:23908;i:1;R:23909;}s:34:"1210:s_reset_columns_configuration";a:2:{i:0;R:23908;i:1;R:23909;}s:24:"1210:s_copy_columns_from";a:2:{i:0;R:23908;i:1;R:23909;}s:22:"1210:s_copy_columns_to";a:2:{i:0;R:23908;i:1;R:23909;}s:15:"1210:s_due_date";a:2:{i:0;R:23908;i:1;R:23909;}s:14:"1210:s_overdue";a:2:{i:0;R:23908;i:1;R:23909;}s:25:"1210:s_view_account_title";a:2:{i:0;R:23908;i:1;R:23909;}s:18:"1210:s_manage_user";a:2:{i:0;R:23908;i:1;R:23909;}s:21:"1210:s_word_separator";a:2:{i:0;R:23908;i:1;R:23909;}s:26:"1210:s_install_information";a:2:{i:0;R:23908;i:1;R:23909;}s:27:"1210:s_database_information";a:2:{i:0;R:23908;i:1;R:23909;}s:23:"1210:s_path_information";a:2:{i:0;R:23908;i:1;R:23909;}s:20:"1210:s_month_january";a:2:{i:0;R:23908;i:1;R:23909;}s:21:"1210:s_month_february";a:2:{i:0;R:23908;i:1;R:23909;}s:18:"1210:s_month_march";a:2:{i:0;R:23908;i:1;R:23909;}s:18:"1210:s_month_april";a:2:{i:0;R:23908;i:1;R:23909;}s:16:"1210:s_month_may";a:2:{i:0;R:23908;i:1;R:23909;}s:17:"1210:s_month_june";a:2:{i:0;R:23908;i:1;R:23909;}s:17:"1210:s_month_july";a:2:{i:0;R:23908;i:1;R:23909;}s:19:"1210:s_month_august";a:2:{i:0;R:23908;i:1;R:23909;}s:22:"1210:s_month_september";a:2:{i:0;R:23908;i:1;R:23909;}s:20:"1210:s_month_october";a:2:{i:0;R:23908;i:1;R:23909;}s:21:"1210:s_month_november";a:2:{i:0;R:23908;i:1;R:23909;}s:21:"1210:s_month_december";a:2:{i:0;R:23908;i:1;R:23909;}s:26:"1210:s_plugin_format_title";a:2:{i:0;s:31:"out-mantis-mantiscoreformatting";i:1;R:23909;}s:32:"1210:s_plugin_format_description";a:2:{i:0;R:25099;i:1;R:23909;}s:27:"1210:s_plugin_format_config";a:2:{i:0;R:25099;i:1;R:23909;}s:33:"1210:s_plugin_format_process_text";a:2:{i:0;R:25099;i:1;R:23909;}s:48:"1210:s_plugin_format_process_text_warning_notice";a:2:{i:0;R:25099;i:1;R:23909;}s:33:"1210:s_plugin_format_process_urls";a:2:{i:0;R:25099;i:1;R:23909;}s:37:"1210:s_plugin_format_process_buglinks";a:2:{i:0;R:25099;i:1;R:23909;}s:37:"1210:s_plugin_format_process_vcslinks";a:2:{i:0;R:25099;i:1;R:23909;}s:28:"1210:s_plugin_format_enabled";a:2:{i:0;R:25099;i:1;R:23909;}s:29:"1210:s_plugin_format_disabled";a:2:{i:0;R:25099;i:1;R:23909;}s:25:"1210:s_plugin_graph_title";a:2:{i:0;s:22:"out-mantis-mantisgraph";i:1;R:23909;}s:31:"1210:s_plugin_graph_description";a:2:{i:0;R:25110;i:1;R:23909;}s:31:"1210:s_plugin_mantisgraph_title";a:2:{i:0;R:25110;i:1;R:23909;}s:47:"1210:s_plugin_mantisgraph_menu_advanced_summary";a:2:{i:0;R:25110;i:1;R:23909;}s:32:"1210:s_plugin_mantisgraph_config";a:2:{i:0;R:25110;i:1;R:23909;}s:40:"1210:s_plugin_mantisgraph_synthesis_link";a:2:{i:0;R:25110;i:1;R:23909;}s:37:"1210:s_plugin_mantisgraph_status_link";a:2:{i:0;R:25110;i:1;R:23909;}s:39:"1210:s_plugin_mantisgraph_priority_link";a:2:{i:0;R:25110;i:1;R:23909;}s:39:"1210:s_plugin_mantisgraph_severity_link";a:2:{i:0;R:25110;i:1;R:23909;}s:39:"1210:s_plugin_mantisgraph_category_link";a:2:{i:0;R:25110;i:1;R:23909;}s:41:"1210:s_plugin_mantisgraph_resolution_link";a:2:{i:0;R:25110;i:1;R:23909;}s:45:"1210:s_plugin_mantisgraph_graph_bug_page_link";a:2:{i:0;R:25110;i:1;R:23909;}s:33:"1210:s_plugin_mantisgraph_library";a:2:{i:0;R:25110;i:1;R:23909;}s:33:"1210:s_plugin_mantisgraph_bundled";a:2:{i:0;R:25110;i:1;R:23909;}s:38:"1210:s_plugin_mantisgraph_window_width";a:2:{i:0;R:25110;i:1;R:23909;}s:36:"1210:s_plugin_mantisgraph_bar_aspect";a:2:{i:0;R:25110;i:1;R:23909;}s:48:"1210:s_plugin_mantisgraph_summary_graphs_per_row";a:2:{i:0;R:25110;i:1;R:23909;}s:30:"1210:s_plugin_mantisgraph_font";a:2:{i:0;R:25110;i:1;R:23909;}s:38:"1210:s_plugin_mantisgraph_jpgraph_path";a:2:{i:0;R:25110;i:1;R:23909;}s:46:"1210:s_plugin_mantisgraph_jpgraph_path_default";a:2:{i:0;R:25110;i:1;R:23909;}s:43:"1210:s_plugin_mantisgraph_jpgraph_antialias";a:2:{i:0;R:25110;i:1;R:23909;}s:48:"1210:s_plugin_mantisgraph_jpgraph_antialias_info";a:2:{i:0;R:25110;i:1;R:23909;}s:33:"1210:s_plugin_mantisgraph_enabled";a:2:{i:0;R:25110;i:1;R:23909;}s:34:"1210:s_plugin_mantisgraph_disabled";a:2:{i:0;R:25110;i:1;R:23909;}s:48:"1210:s_plugin_mantisgraph_graph_imp_status_title";a:2:{i:0;R:25110;i:1;R:23909;}s:50:"1210:s_plugin_mantisgraph_graph_imp_priority_title";a:2:{i:0;R:25110;i:1;R:23909;}s:50:"1210:s_plugin_mantisgraph_graph_imp_severity_title";a:2:{i:0;R:25110;i:1;R:23909;}s:50:"1210:s_plugin_mantisgraph_graph_imp_category_title";a:2:{i:0;R:25110;i:1;R:23909;}s:52:"1210:s_plugin_mantisgraph_graph_imp_resolution_title";a:2:{i:0;R:25110;i:1;R:23909;}s:39:"1210:s_plugin_mantisgraph_by_status_pct";a:2:{i:0;R:25110;i:1;R:23909;}s:41:"1210:s_plugin_mantisgraph_by_priority_pct";a:2:{i:0;R:25110;i:1;R:23909;}s:41:"1210:s_plugin_mantisgraph_by_severity_pct";a:2:{i:0;R:25110;i:1;R:23909;}s:41:"1210:s_plugin_mantisgraph_by_category_pct";a:2:{i:0;R:25110;i:1;R:23909;}s:43:"1210:s_plugin_mantisgraph_by_resolution_pct";a:2:{i:0;R:25110;i:1;R:23909;}s:41:"1210:s_plugin_mantisgraph_by_severity_mix";a:2:{i:0;R:25110;i:1;R:23909;}s:41:"1210:s_plugin_mantisgraph_by_priority_mix";a:2:{i:0;R:25110;i:1;R:23909;}s:43:"1210:s_plugin_mantisgraph_by_resolution_mix";a:2:{i:0;R:25110;i:1;R:23909;}s:43:"1210:s_plugin_mantisgraph_legend_still_open";a:2:{i:0;R:25110;i:1;R:23909;}s:41:"1210:s_plugin_mantisgraph_legend_resolved";a:2:{i:0;R:25110;i:1;R:23909;}s:41:"1210:s_plugin_mantisgraph_legend_assigned";a:2:{i:0;R:25110;i:1;R:23909;}s:38:"1210:s_plugin_mantisgraph_legend_total";a:2:{i:0;R:25110;i:1;R:23909;}s:39:"1210:s_plugin_mantisgraph_legend_opened";a:2:{i:0;R:25110;i:1;R:23909;}s:39:"1210:s_plugin_mantisgraph_legend_closed";a:2:{i:0;R:25110;i:1;R:23909;}s:41:"1210:s_plugin_mantisgraph_legend_reported";a:2:{i:0;R:25110;i:1;R:23909;}s:36:"1210:s_plugin_mantisgraph_cumulative";a:2:{i:0;R:25110;i:1;R:23909;}s:41:"1210:s_plugin_mantisgraph_not_enough_data";a:2:{i:0;R:25110;i:1;R:23909;}s:37:"1210:s_plugin_mantisgraph_period_none";a:2:{i:0;R:25110;i:1;R:23909;}s:42:"1210:s_plugin_mantisgraph_period_this_week";a:2:{i:0;R:25110;i:1;R:23909;}s:42:"1210:s_plugin_mantisgraph_period_last_week";a:2:{i:0;R:25110;i:1;R:23909;}s:42:"1210:s_plugin_mantisgraph_period_two_weeks";a:2:{i:0;R:25110;i:1;R:23909;}s:43:"1210:s_plugin_mantisgraph_period_this_month";a:2:{i:0;R:25110;i:1;R:23909;}s:43:"1210:s_plugin_mantisgraph_period_last_month";a:2:{i:0;R:25110;i:1;R:23909;}s:45:"1210:s_plugin_mantisgraph_period_this_quarter";a:2:{i:0;R:25110;i:1;R:23909;}s:45:"1210:s_plugin_mantisgraph_period_last_quarter";a:2:{i:0;R:25110;i:1;R:23909;}s:45:"1210:s_plugin_mantisgraph_period_year_to_date";a:2:{i:0;R:25110;i:1;R:23909;}s:39:"1210:s_plugin_mantisgraph_period_select";a:2:{i:0;R:25110;i:1;R:23909;}s:42:"1210:s_plugin_mantisgraph_period_last_year";a:2:{i:0;R:25110;i:1;R:23909;}s:32:"1210:s_plugin_mantisgraph_select";a:2:{i:0;R:25110;i:1;R:23909;}s:41:"1210:s_plugin_mantisgraph_select_bystatus";a:2:{i:0;R:25110;i:1;R:23909;}s:45:"1210:s_plugin_mantisgraph_select_summbystatus";a:2:{i:0;R:25110;i:1;R:23909;}s:38:"1210:s_plugin_mantisgraph_select_bycat";a:2:{i:0;R:25110;i:1;R:23909;}s:37:"1210:s_plugin_mantisgraph_select_both";a:2:{i:0;R:25110;i:1;R:23909;}s:39:"1210:s_plugin_mantisgraph_show_as_graph";a:2:{i:0;R:25110;i:1;R:23909;}s:39:"1210:s_plugin_mantisgraph_show_as_table";a:2:{i:0;R:25110;i:1;R:23909;}s:36:"1210:s_plugin_mantisgraph_show_graph";a:2:{i:0;R:25110;i:1;R:23909;}s:36:"1210:s_plugin_mantisgraph_graph_page";a:2:{i:0;R:25110;i:1;R:23909;}s:35:"1210:s_plugin_xmlimportexport_title";a:2:{i:0;s:26:"out-mantis-xmlimportexport";i:1;R:23909;}s:41:"1210:s_plugin_xmlimportexport_description";a:2:{i:0;R:25177;i:1;R:23909;}s:36:"1210:s_plugin_xmlimportexport_import";a:2:{i:0;R:25177;i:1;R:23909;}s:36:"1210:s_plugin_xmlimportexport_export";a:2:{i:0;R:25177;i:1;R:23909;}s:50:"1210:s_plugin_xmlimportexport_importing_in_project";a:2:{i:0;R:25177;i:1;R:23909;}s:44:"1210:s_plugin_xmlimportexport_import_options";a:2:{i:0;R:25177;i:1;R:23909;}s:46:"1210:s_plugin_xmlimportexport_cross_references";a:2:{i:0;R:25177;i:1;R:23909;}s:46:"1210:s_plugin_xmlimportexport_default_strategy";a:2:{i:0;R:25177;i:1;R:23909;}s:38:"1210:s_plugin_xmlimportexport_renumber";a:2:{i:0;R:25177;i:1;R:23909;}s:43:"1210:s_plugin_xmlimportexport_renumber_desc";a:2:{i:0;R:25177;i:1;R:23909;}s:34:"1210:s_plugin_xmlimportexport_link";a:2:{i:0;R:25177;i:1;R:23909;}s:39:"1210:s_plugin_xmlimportexport_link_desc";a:2:{i:0;R:25177;i:1;R:23909;}s:37:"1210:s_plugin_xmlimportexport_disable";a:2:{i:0;R:25177;i:1;R:23909;}s:42:"1210:s_plugin_xmlimportexport_disable_desc";a:2:{i:0;R:25177;i:1;R:23909;}s:38:"1210:s_plugin_xmlimportexport_fallback";a:2:{i:0;R:25177;i:1;R:23909;}s:47:"1210:s_plugin_xmlimportexport_fallback_category";a:2:{i:0;R:25177;i:1;R:23909;}s:48:"1210:s_plugin_xmlimportexport_keep_same_category";a:2:{i:0;R:25177;i:1;R:23909;}s:48:"1230:accounting-accounting.viewaccountingexports";a:2:{i:0;s:20:"out-mifos-accounting";i:1;R:9;}s:56:"1230:accounting-accounting.viewaccountingexports.warning";a:2:{i:0;R:25195;i:1;R:9;}s:55:"1230:accounting-accounting.viewaccountingexports.nodata";a:2:{i:0;R:25195;i:1;R:9;}s:60:"1230:accounting-accounting.viewaccountingexports.instruction";a:2:{i:0;R:25195;i:1;R:9;}s:66:"1230:accounting-accounting.viewaccountingexports.cache.instruction";a:2:{i:0;R:25195;i:1;R:9;}s:39:"1230:accounting-accounting.clearexports";a:2:{i:0;R:25195;i:1;R:9;}s:47:"1230:accounting-accounting.clearexports.warning";a:2:{i:0;R:25195;i:1;R:9;}s:51:"1230:accounting-accounting.clearexports.instruction";a:2:{i:0;R:25195;i:1;R:9;}s:43:"1230:accounting-accounting.downloadtallyxml";a:2:{i:0;R:25195;i:1;R:9;}s:49:"1230:accounting-accounting.downloadtallyxml.print";a:2:{i:0;R:25195;i:1;R:9;}s:52:"1230:accounting-accounting.viewaccountingexport.back";a:2:{i:0;R:25195;i:1;R:9;}s:54:"1230:accounting-accounting.viewaccountingexport.branch";a:2:{i:0;R:25195;i:1;R:9;}s:59:"1230:accounting-accounting.viewaccountingexport.voucherdate";a:2:{i:0;R:25195;i:1;R:9;}s:59:"1230:accounting-accounting.viewaccountingexport.vouchertype";a:2:{i:0;R:25195;i:1;R:9;}s:54:"1230:accounting-accounting.viewaccountingexport.glcode";a:2:{i:0;R:25195;i:1;R:9;}s:54:"1230:accounting-accounting.viewaccountingexport.glname";a:2:{i:0;R:25195;i:1;R:9;}s:53:"1230:accounting-accounting.viewaccountingexport.debit";a:2:{i:0;R:25195;i:1;R:9;}s:54:"1230:accounting-accounting.viewaccountingexport.credit";a:2:{i:0;R:25195;i:1;R:9;}s:58:"1230:accounting-accounting.viewaccountingexports.generated";a:2:{i:0;R:25195;i:1;R:9;}s:61:"1230:accounting-accounting.viewaccountingexports.notgenerated";a:2:{i:0;R:25195;i:1;R:9;}s:62:"1230:accounting-accounting.viewaccountingexports.exportandview";a:2:{i:0;R:25195;i:1;R:9;}s:60:"1230:accounting-accounting.viewaccountingexports.viewdetails";a:2:{i:0;R:25195;i:1;R:9;}s:60:"1230:accounting-accounting.viewaccountingexports.generatedon";a:2:{i:0;R:25195;i:1;R:9;}s:55:"1230:accounting-accounting.viewaccountingexports.action";a:2:{i:0;R:25195;i:1;R:9;}s:57:"1230:accounting-accounting.viewaccountingexports.filename";a:2:{i:0;R:25195;i:1;R:9;}s:35:"1230:accounting-accounting.previous";a:2:{i:0;R:25195;i:1;R:9;}s:31:"1230:accounting-accounting.next";a:2:{i:0;R:25195;i:1;R:9;}s:34:"1230:accounting-accounting.results";a:2:{i:0;R:25195;i:1;R:9;}s:32:"1230:accounts-account.addnewnote";a:2:{i:0;R:8;i:1;R:9;}s:29:"1230:accounts-account.addnote";a:2:{i:0;R:8;i:1;R:9;}s:27:"1230:accounts-account.admin";a:2:{i:0;R:8;i:1;R:9;}s:46:"1230:accounts-account.clickcanceltodetailspage";a:2:{i:0;R:8;i:1;R:9;}s:34:"1230:accounts-account.clickpreview";a:2:{i:0;R:8;i:1;R:9;}s:26:"1230:accounts-account.edit";a:2:{i:0;R:8;i:1;R:9;}s:31:"1230:accounts-account.editlabel";a:2:{i:0;R:8;i:1;R:9;}s:32:"1230:accounts-account.enteranote";a:2:{i:0;R:8;i:1;R:9;}s:26:"1230:accounts-account.note";a:2:{i:0;R:8;i:1;R:9;}s:31:"1230:accounts-account.notelabel";a:2:{i:0;R:8;i:1;R:9;}s:27:"1230:accounts-account.notes";a:2:{i:0;R:8;i:1;R:9;}s:33:"1230:accounts-account.previewnote";a:2:{i:0;R:8;i:1;R:9;}s:32:"1230:accounts-account.reviewtext";a:2:{i:0;R:8;i:1;R:9;}s:35:"1230:accounts-account.statushistory";a:2:{i:0;R:8;i:1;R:9;}s:28:"1230:accounts-account.submit";a:2:{i:0;R:8;i:1;R:9;}s:35:"1230:accounts-account.vieweditusers";a:2:{i:0;R:8;i:1;R:9;}s:31:"1230:accounts-account.viewusers";a:2:{i:0;R:8;i:1;R:9;}s:44:"1230:accounts-account.returntoaccountdetails";a:2:{i:0;R:8;i:1;R:9;}s:29:"1230:accounts-adjustmentnotes";a:2:{i:0;R:8;i:1;R:9;}s:20:"1230:accounts-amount";a:2:{i:0;R:8;i:1;R:9;}s:21:"1230:accounts-balance";a:2:{i:0;R:8;i:1;R:9;}s:24:"1230:accounts-clientname";a:2:{i:0;R:8;i:1;R:9;}s:20:"1230:accounts-credit";a:2:{i:0;R:8;i:1;R:9;}s:18:"1230:accounts-date";a:2:{i:0;R:8;i:1;R:9;}s:24:"1230:accounts-dateposted";a:2:{i:0;R:8;i:1;R:9;}s:19:"1230:accounts-debit";a:2:{i:0;R:8;i:1;R:9;}s:25:"1230:accounts-description";a:2:{i:0;R:8;i:1;R:9;}s:20:"1230:accounts-glcode";a:2:{i:0;R:8;i:1;R:9;}s:23:"1230:accounts-newstatus";a:2:{i:0;R:8;i:1;R:9;}s:23:"1230:accounts-oldstatus";a:2:{i:0;R:8;i:1;R:9;}s:23:"1230:accounts-paymentid";a:2:{i:0;R:8;i:1;R:9;}s:27:"1230:accounts-transactionid";a:2:{i:0;R:8;i:1;R:9;}s:18:"1230:accounts-type";a:2:{i:0;R:8;i:1;R:9;}s:18:"1230:accounts-user";a:2:{i:0;R:8;i:1;R:9;}s:28:"1230:accounts-account.amount";a:2:{i:0;R:8;i:1;R:9;}s:33:"1230:accounts-account.amount_zero";a:2:{i:0;R:8;i:1;R:9;}s:32:"1230:accounts-account.chargetype";a:2:{i:0;R:8;i:1;R:9;}s:30:"1230:accounts-accounts.account";a:2:{i:0;R:8;i:1;R:9;}s:45:"1230:accounts-accounts.checkloantaskscomplete";a:2:{i:0;R:8;i:1;R:9;}s:48:"1230:accounts-accounts.checksavingstaskscomplete";a:2:{i:0;R:8;i:1;R:9;}s:35:"1230:accounts-accounts.checklistmsg";a:2:{i:0;R:8;i:1;R:9;}s:35:"1230:accounts-accounts.clickcancel1";a:2:{i:0;R:8;i:1;R:9;}s:35:"1230:accounts-accounts.clickcancel2";a:2:{i:0;R:8;i:1;R:9;}s:36:"1230:accounts-accounts.clickcontinue";a:2:{i:0;R:8;i:1;R:9;}s:34:"1230:accounts-accounts.clicksubmit";a:2:{i:0;R:8;i:1;R:9;}s:42:"1230:accounts-accounts.confirmstatuschange";a:2:{i:0;R:8;i:1;R:9;}s:33:"1230:accounts-accounts.editstatus";a:2:{i:0;R:8;i:1;R:9;}s:44:"1230:accounts-accounts.enternoteloancomplete";a:2:{i:0;R:8;i:1;R:9;}s:47:"1230:accounts-accounts.enternotesavingscomplete";a:2:{i:0;R:8;i:1;R:9;}s:32:"1230:accounts-accounts.newstatus";a:2:{i:0;R:8;i:1;R:9;}s:34:"1230:accounts-accounts.nochecklist";a:2:{i:0;R:8;i:1;R:9;}s:39:"1230:accounts-accounts.noflagsavailable";a:2:{i:0;R:8;i:1;R:9;}s:39:"1230:accounts-accounts.nonotesavailable";a:2:{i:0;R:8;i:1;R:9;}s:32:"1230:accounts-accounts.oldstatus";a:2:{i:0;R:8;i:1;R:9;}s:41:"1230:accounts-accounts.reviewloancomplete";a:2:{i:0;R:8;i:1;R:9;}s:44:"1230:accounts-accounts.reviewsavingscomplete";a:2:{i:0;R:8;i:1;R:9;}s:39:"1230:accounts-accounts.sel_client/group";a:2:{i:0;R:8;i:1;R:9;}s:38:"1230:accounts-accounts.selectacustomer";a:2:{i:0;R:8;i:1;R:9;}s:37:"1230:accounts-accounts.selectcustomer";a:2:{i:0;R:8;i:1;R:9;}s:42:"1230:accounts-accounts.selectexplaination1";a:2:{i:0;R:8;i:1;R:9;}s:42:"1230:accounts-accounts.selectexplaination2";a:2:{i:0;R:8;i:1;R:9;}s:45:"1230:accounts-accounts.selectexplainationloan";a:2:{i:0;R:8;i:1;R:9;}s:48:"1230:accounts-accounts.selectexplainationsavings";a:2:{i:0;R:8;i:1;R:9;}s:47:"1230:accounts-accounts.selectloanstatuscomplete";a:2:{i:0;R:8;i:1;R:9;}s:50:"1230:accounts-accounts.selectsavingsstatuscomplete";a:2:{i:0;R:8;i:1;R:9;}s:35:"1230:accounts-accounts.selectstatus";a:2:{i:0;R:8;i:1;R:9;}s:34:"1230:accounts-accounts.acc_details";a:2:{i:0;R:8;i:1;R:9;}s:31:"1230:accounts-accounts.acc_info";a:2:{i:0;R:8;i:1;R:9;}s:32:"1230:accounts-accounts.acc_owner";a:2:{i:0;R:8;i:1;R:9;}s:36:"1230:accounts-accounts.acc_statement";a:2:{i:0;R:8;i:1;R:9;}s:34:"1230:accounts-accounts.acc_summary";a:2:{i:0;R:8;i:1;R:9;}s:35:"1230:accounts-accounts.accountlower";a:2:{i:0;R:8;i:1;R:9;}s:31:"1230:accounts-accounts.activity";a:2:{i:0;R:8;i:1;R:9;}s:31:"1230:accounts-accounts.add_note";a:2:{i:0;R:8;i:1;R:9;}s:33:"1230:accounts-accounts.addnewnote";a:2:{i:0;R:8;i:1;R:9;}s:30:"1230:accounts-accounts.addnote";a:2:{i:0;R:8;i:1;R:9;}s:40:"1230:accounts-accounts.adjustment_detail";a:2:{i:0;R:8;i:1;R:9;}s:37:"1230:accounts-accounts.admin_set_fees";a:2:{i:0;R:8;i:1;R:9;}s:27:"1230:accounts-accounts.agro";a:2:{i:0;R:8;i:1;R:9;}s:32:"1230:accounts-accounts.agro_loan";a:2:{i:0;R:8;i:1;R:9;}s:37:"1230:accounts-accounts.allowed_amount";a:2:{i:0;R:8;i:1;R:9;}s:39:"1230:accounts-accounts.allowed_interest";a:2:{i:0;R:8;i:1;R:9;}s:41:"1230:accounts-accounts.allowed_no_of_inst";a:2:{i:0;R:8;i:1;R:9;}s:41:"1230:accounts-accounts.amnt_tobe_adjusted";a:2:{i:0;R:8;i:1;R:9;}s:29:"1230:accounts-accounts.amount";a:2:{i:0;R:8;i:1;R:9;}s:34:"1230:accounts-accounts.amount(usd)";a:2:{i:0;R:8;i:1;R:9;}s:34:"1230:accounts-accounts.amount_(rs)";a:2:{i:0;R:8;i:1;R:9;}s:33:"1230:accounts-accounts.amount_due";a:2:{i:0;R:8;i:1;R:9;}s:26:"1230:accounts-accounts.amt";a:2:{i:0;R:8;i:1;R:9;}s:31:"1230:accounts-accounts.amt_paid";a:2:{i:0;R:8;i:1;R:9;}s:39:"1230:accounts-accounts.anti_disburse_dd";a:2:{i:0;R:8;i:1;R:9;}s:30:"1230:accounts-accounts.app_fee";a:2:{i:0;R:8;i:1;R:9;}s:34:"1230:accounts-accounts.app_fee_amt";a:2:{i:0;R:8;i:1;R:9;}s:32:"1230:accounts-accounts.appl_fees";a:2:{i:0;R:8;i:1;R:9;}s:37:"1230:accounts-accounts.apply_add_fees";a:2:{i:0;R:8;i:1;R:9;}s:39:"1230:accounts-accounts.apply_adjustment";a:2:{i:0;R:8;i:1;R:9;}s:36:"1230:accounts-accounts.apply_charges";a:2:{i:0;R:8;i:1;R:9;}s:36:"1230:accounts-accounts.apply_payment";a:2:{i:0;R:8;i:1;R:9;}s:34:"1230:accounts-accounts.apply_trans";a:2:{i:0;R:8;i:1;R:9;}s:38:"1230:accounts-accounts.applyadjustment";a:2:{i:0;R:8;i:1;R:9;}s:31:"1230:accounts-accounts.approved";a:2:{i:0;R:8;i:1;R:9;}s:26:"1230:accounts-accounts.apr";a:2:{i:0;R:8;i:1;R:9;}s:31:"1230:accounts-accounts.asterisk";a:2:{i:0;R:8;i:1;R:9;}s:36:"1230:accounts-accounts.backtocharges";a:2:{i:0;R:8;i:1;R:9;}s:30:"1230:accounts-accounts.balance";a:2:{i:0;R:8;i:1;R:9;}s:42:"1230:accounts-accounts.balance_at_disburse";a:2:{i:0;R:8;i:1;R:9;}s:32:"1230:accounts-accounts.branch-01";a:2:{i:0;R:8;i:1;R:9;}s:43:"1230:accounts-accounts.btn_reviewadjustment";a:2:{i:0;R:8;i:1;R:9;}s:40:"1230:accounts-accounts.business_work_act";a:2:{i:0;R:8;i:1;R:9;}s:29:"1230:accounts-accounts.cancel";a:2:{i:0;R:8;i:1;R:9;}s:34:"1230:accounts-accounts.cattle_loan";a:2:{i:0;R:8;i:1;R:9;}s:36:"1230:accounts-accounts.centercharges";a:2:{i:0;R:8;i:1;R:9;}s:33:"1230:accounts-accounts.change_log";a:2:{i:0;R:8;i:1;R:9;}s:35:"1230:accounts-accounts.changestatus";a:2:{i:0;R:8;i:1;R:9;}s:30:"1230:accounts-accounts.charged";a:2:{i:0;R:8;i:1;R:9;}s:38:"1230:accounts-accounts.charged_applied";a:2:{i:0;R:8;i:1;R:9;}s:30:"1230:accounts-accounts.charges";a:2:{i:0;R:8;i:1;R:9;}s:35:"1230:accounts-accounts.check_remove";a:2:{i:0;R:8;i:1;R:9;}s:43:"1230:accounts-accounts.chk_revert_last_pmnt";a:2:{i:0;R:8;i:1;R:9;}s:40:"1230:accounts-accounts.client/group_name";a:2:{i:0;R:8;i:1;R:9;}s:36:"1230:accounts-accounts.clientcharges";a:2:{i:0;R:8;i:1;R:9;}s:38:"1230:accounts-accounts.coll_sheet_type";a:2:{i:0;R:8;i:1;R:9;}s:39:"1230:accounts-accounts.collateral_notes";a:2:{i:0;R:8;i:1;R:9;}s:38:"1230:accounts-accounts.collateral_type";a:2:{i:0;R:8;i:1;R:9;}s:37:"1230:accounts-accounts.collateralnote";a:2:{i:0;R:8;i:1;R:9;}s:28:"1230:accounts-accounts.colon";a:2:{i:0;R:8;i:1;R:9;}s:37:"1230:accounts-accounts.complete_field";a:2:{i:0;R:8;i:1;R:9;}s:28:"1230:accounts-accounts.congo";a:2:{i:0;R:8;i:1;R:9;}s:38:"1230:accounts-accounts.consultancy_fee";a:2:{i:0;R:8;i:1;R:9;}s:31:"1230:accounts-accounts.continue";a:2:{i:0;R:8;i:1;R:9;}s:29:"1230:accounts-accounts.create";a:2:{i:0;R:8;i:1;R:9;}s:38:"1230:accounts-accounts.create_loan_acc";a:2:{i:0;R:8;i:1;R:9;}s:29:"1230:accounts-accounts.credit";a:2:{i:0;R:8;i:1;R:9;}s:36:"1230:accounts-accounts.currentstatus";a:2:{i:0;R:8;i:1;R:9;}s:27:"1230:accounts-accounts.date";a:2:{i:0;R:8;i:1;R:9;}s:35:"1230:accounts-accounts.date_of_trxn";a:2:{i:0;R:8;i:1;R:9;}s:32:"1230:accounts-accounts.date_paid";a:2:{i:0;R:8;i:1;R:9;}s:34:"1230:accounts-accounts.date_posted";a:2:{i:0;R:8;i:1;R:9;}s:36:"1230:accounts-accounts.dateofpayment";a:2:{i:0;R:8;i:1;R:9;}s:35:"1230:accounts-accounts.days_arrears";a:2:{i:0;R:8;i:1;R:9;}s:28:"1230:accounts-accounts.debit";a:2:{i:0;R:8;i:1;R:9;}s:29:"1230:accounts-accounts.defamt";a:2:{i:0;R:8;i:1;R:9;}s:30:"1230:accounts-accounts.definst";a:2:{i:0;R:8;i:1;R:9;}s:33:"1230:accounts-accounts.defintrate";a:2:{i:0;R:8;i:1;R:9;}s:34:"1230:accounts-accounts.delinquency";a:2:{i:0;R:8;i:1;R:9;}s:27:"1230:accounts-accounts.desc";a:2:{i:0;R:8;i:1;R:9;}s:34:"1230:accounts-accounts.description";a:2:{i:0;R:8;i:1;R:9;}s:31:"1230:accounts-accounts.dis_date";a:2:{i:0;R:8;i:1;R:9;}s:31:"1230:accounts-accounts.due_date";a:2:{i:0;R:8;i:1;R:9;}s:36:"1230:accounts-accounts.edit_acc_info";a:2:{i:0;R:8;i:1;R:9;}s:38:"1230:accounts-accounts.edit_adjustment";a:2:{i:0;R:8;i:1;R:9;}s:32:"1230:accounts-accounts.edit_info";a:2:{i:0;R:8;i:1;R:9;}s:36:"1230:accounts-accounts.edit_loan_acc";a:2:{i:0;R:8;i:1;R:9;}s:32:"1230:accounts-accounts.edittrans";a:2:{i:0;R:8;i:1;R:9;}s:31:"1230:accounts-accounts.edittrxn";a:2:{i:0;R:8;i:1;R:9;}s:31:"1230:accounts-accounts.edu_loan";a:2:{i:0;R:8;i:1;R:9;}s:44:"1230:accounts-accounts.enter_client_details1";a:2:{i:0;R:8;i:1;R:9;}s:44:"1230:accounts-accounts.enter_client_details2";a:2:{i:0;R:8;i:1;R:9;}s:41:"1230:accounts-accounts.enter_loan_accinfo";a:2:{i:0;R:8;i:1;R:9;}s:33:"1230:accounts-accounts.enter_note";a:2:{i:0;R:8;i:1;R:9;}s:34:"1230:accounts-accounts.enteramount";a:2:{i:0;R:8;i:1;R:9;}s:33:"1230:accounts-accounts.externalid";a:2:{i:0;R:8;i:1;R:9;}s:30:"1230:accounts-accounts.fee_amt";a:2:{i:0;R:8;i:1;R:9;}s:29:"1230:accounts-accounts.fee_pd";a:2:{i:0;R:8;i:1;R:9;}s:30:"1230:accounts-accounts.fee_rec";a:2:{i:0;R:8;i:1;R:9;}s:31:"1230:accounts-accounts.fee_type";a:2:{i:0;R:8;i:1;R:9;}s:27:"1230:accounts-accounts.fees";a:2:{i:0;R:8;i:1;R:9;}s:28:"1230:accounts-accounts.field";a:2:{i:0;R:8;i:1;R:9;}s:33:"1230:accounts-accounts.fish_ponds";a:2:{i:0;R:8;i:1;R:9;}s:27:"1230:accounts-accounts.flag";a:2:{i:0;R:8;i:1;R:9;}s:35:"1230:accounts-accounts.freq_of_inst";a:2:{i:0;R:8;i:1;R:9;}s:37:"1230:accounts-accounts.future_install";a:2:{i:0;R:8;i:1;R:9;}s:38:"1230:accounts-accounts.generate_report";a:2:{i:0;R:8;i:1;R:9;}s:35:"1230:accounts-accounts.grace_period";a:2:{i:0;R:8;i:1;R:9;}s:40:"1230:accounts-accounts.grace_period_type";a:2:{i:0;R:8;i:1;R:9;}s:34:"1230:accounts-accounts.graceperdur";a:2:{i:0;R:8;i:1;R:9;}s:35:"1230:accounts-accounts.groupcharges";a:2:{i:0;R:8;i:1;R:9;}s:40:"1230:accounts-accounts.hope&effort_group";a:2:{i:0;R:8;i:1;R:9;}s:35:"1230:accounts-accounts.horticulture";a:2:{i:0;R:8;i:1;R:9;}s:27:"1230:accounts-accounts.inst";a:2:{i:0;R:8;i:1;R:9;}s:35:"1230:accounts-accounts.install_paid";a:2:{i:0;R:8;i:1;R:9;}s:42:"1230:accounts-accounts.installment_details";a:2:{i:0;R:8;i:1;R:9;}s:35:"1230:accounts-accounts.installments";a:2:{i:0;R:8;i:1;R:9;}s:36:"1230:accounts-accounts.instance_info";a:2:{i:0;R:8;i:1;R:9;}s:36:"1230:accounts-accounts.instance_name";a:2:{i:0;R:8;i:1;R:9;}s:32:"1230:accounts-accounts.instt_due";a:2:{i:0;R:8;i:1;R:9;}s:33:"1230:accounts-accounts.instt_paid";a:2:{i:0;R:8;i:1;R:9;}s:31:"1230:accounts-accounts.interest";a:2:{i:0;R:8;i:1;R:9;}s:38:"1230:accounts-accounts.interest_amount";a:2:{i:0;R:8;i:1;R:9;}s:44:"1230:accounts-accounts.interest_cal_payments";a:2:{i:0;R:8;i:1;R:9;}s:36:"1230:accounts-accounts.interest_disb";a:2:{i:0;R:8;i:1;R:9;}s:36:"1230:accounts-accounts.interest_rate";a:2:{i:0;R:8;i:1;R:9;}s:36:"1230:accounts-accounts.interest_type";a:2:{i:0;R:8;i:1;R:9;}s:31:"1230:accounts-accounts.intr_rec";a:2:{i:0;R:8;i:1;R:9;}s:30:"1230:accounts-accounts.intrate";a:2:{i:0;R:8;i:1;R:9;}s:34:"1230:accounts-accounts.intratetype";a:2:{i:0;R:8;i:1;R:9;}s:39:"1230:accounts-accounts.kanakpura_center";a:2:{i:0;R:8;i:1;R:9;}s:32:"1230:accounts-accounts.last_pmnt";a:2:{i:0;R:8;i:1;R:9;}s:39:"1230:accounts-accounts.list_adjustments";a:2:{i:0;R:8;i:1;R:9;}s:34:"1230:accounts-accounts.loan_amount";a:2:{i:0;R:8;i:1;R:9;}s:35:"1230:accounts-accounts.loan_balance";a:2:{i:0;R:8;i:1;R:9;}s:35:"1230:accounts-accounts.loaninstname";a:2:{i:0;R:8;i:1;R:9;}s:38:"1230:accounts-accounts.maintenance_fee";a:2:{i:0;R:8;i:1;R:9;}s:36:"1230:accounts-accounts.maturity_date";a:2:{i:0;R:8;i:1;R:9;}s:30:"1230:accounts-accounts.maxinst";a:2:{i:0;R:8;i:1;R:9;}s:33:"1230:accounts-accounts.maxintrate";a:2:{i:0;R:8;i:1;R:9;}s:33:"1230:accounts-accounts.maxloanamt";a:2:{i:0;R:8;i:1;R:9;}s:38:"1230:accounts-accounts.meeting_charges";a:2:{i:0;R:8;i:1;R:9;}s:37:"1230:accounts-accounts.member_fee_amt";a:2:{i:0;R:8;i:1;R:9;}s:37:"1230:accounts-accounts.membership_fee";a:2:{i:0;R:8;i:1;R:9;}s:30:"1230:accounts-accounts.mininst";a:2:{i:0;R:8;i:1;R:9;}s:33:"1230:accounts-accounts.minintrate";a:2:{i:0;R:8;i:1;R:9;}s:33:"1230:accounts-accounts.minloanamt";a:2:{i:0;R:8;i:1;R:9;}s:38:"1230:accounts-accounts.missed_payments";a:2:{i:0;R:8;i:1;R:9;}s:38:"1230:accounts-accounts.mode_of_payment";a:2:{i:0;R:8;i:1;R:9;}s:36:"1230:accounts-accounts.modeofpayment";a:2:{i:0;R:8;i:1;R:9;}s:26:"1230:accounts-accounts.mon";a:2:{i:0;R:8;i:1;R:9;}s:35:"1230:accounts-accounts.more_details";a:2:{i:0;R:8;i:1;R:9;}s:27:"1230:accounts-accounts.name";a:2:{i:0;R:8;i:1;R:9;}s:33:"1230:accounts-accounts.new_status";a:2:{i:0;R:8;i:1;R:9;}s:30:"1230:accounts-accounts.new_val";a:2:{i:0;R:8;i:1;R:9;}s:32:"1230:accounts-accounts.next_inst";a:2:{i:0;R:8;i:1;R:9;}s:36:"1230:accounts-accounts.next_inst_due";a:2:{i:0;R:8;i:1;R:9;}s:43:"1230:accounts-accounts.next_install_details";a:2:{i:0;R:8;i:1;R:9;}s:40:"1230:accounts-accounts.niew_acc_activity";a:2:{i:0;R:8;i:1;R:9;}s:25:"1230:accounts-accounts.no";a:2:{i:0;R:8;i:1;R:9;}s:36:"1230:accounts-account.no_adjustments";a:2:{i:0;R:8;i:1;R:9;}s:33:"1230:accounts-accounts.no_of_inst";a:2:{i:0;R:8;i:1;R:9;}s:27:"1230:accounts-accounts.note";a:2:{i:0;R:8;i:1;R:9;}s:28:"1230:accounts-accounts.notes";a:2:{i:0;R:8;i:1;R:9;}s:34:"1230:accounts-accounts.of_payments";a:2:{i:0;R:8;i:1;R:9;}s:33:"1230:accounts-accounts.old_status";a:2:{i:0;R:8;i:1;R:9;}s:30:"1230:accounts-accounts.old_val";a:2:{i:0;R:8;i:1;R:9;}s:34:"1230:accounts-accounts.once_20days";a:2:{i:0;R:8;i:1;R:9;}s:35:"1230:accounts-accounts.open_new_acc";a:2:{i:0;R:8;i:1;R:9;}s:41:"1230:accounts-accounts.open_new_insur_acc";a:2:{i:0;R:8;i:1;R:9;}s:40:"1230:accounts-accounts.open_new_loan_acc";a:2:{i:0;R:8;i:1;R:9;}s:39:"1230:accounts-accounts.open_new_sav_acc";a:2:{i:0;R:8;i:1;R:9;}s:25:"1230:accounts-accounts.or";a:2:{i:0;R:8;i:1;R:9;}s:36:"1230:accounts-accounts.original_loan";a:2:{i:0;R:8;i:1;R:9;}s:31:"1230:accounts-accounts.past_due";a:2:{i:0;R:8;i:1;R:9;}s:39:"1230:accounts-accounts.past_due_details";a:2:{i:0;R:8;i:1;R:9;}s:30:"1230:accounts-accounts.payment";a:2:{i:0;R:8;i:1;R:9;}s:33:"1230:accounts-accounts.payment_id";a:2:{i:0;R:8;i:1;R:9;}s:30:"1230:accounts-accounts.penalty";a:2:{i:0;R:8;i:1;R:9;}s:33:"1230:accounts-accounts.penalty_01";a:2:{i:0;R:8;i:1;R:9;}s:33:"1230:accounts-accounts.penalty_02";a:2:{i:0;R:8;i:1;R:9;}s:35:"1230:accounts-accounts.penalty_type";a:2:{i:0;R:8;i:1;R:9;}s:42:"1230:accounts-accounts.performance_history";a:2:{i:0;R:8;i:1;R:9;}s:45:"1230:accounts-accounts.periodicity_annual_fee";a:2:{i:0;R:8;i:1;R:9;}s:47:"1230:accounts-accounts.periodicity_one_time_fee";a:2:{i:0;R:8;i:1;R:9;}s:31:"1230:accounts-accounts.plz_note";a:2:{i:0;R:8;i:1;R:9;}s:32:"1230:accounts-accounts.posted_by";a:2:{i:0;R:8;i:1;R:9;}s:35:"1230:accounts-accounts.poultry_farm";a:2:{i:0;R:8;i:1;R:9;}s:28:"1230:accounts-accounts.pr_pd";a:2:{i:0;R:8;i:1;R:9;}s:37:"1230:accounts-accounts.prdofferingval";a:2:{i:0;R:8;i:1;R:9;}s:30:"1230:accounts-accounts.preview";a:2:{i:0;R:8;i:1;R:9;}s:38:"1230:accounts-accounts.preview_accinfo";a:2:{i:0;R:8;i:1;R:9;}s:32:"1230:accounts-accounts.principal";a:2:{i:0;R:8;i:1;R:9;}s:36:"1230:accounts-accounts.principle_due";a:2:{i:0;R:8;i:1;R:9;}s:38:"1230:accounts-accounts.product_summary";a:2:{i:0;R:8;i:1;R:9;}s:36:"1230:accounts-accounts.proposed_date";a:2:{i:0;R:8;i:1;R:9;}s:40:"1230:accounts-accounts.rec_creation_date";a:2:{i:0;R:8;i:1;R:9;}s:34:"1230:accounts-accounts.receiptdate";a:2:{i:0;R:8;i:1;R:9;}s:32:"1230:accounts-accounts.receiptid";a:2:{i:0;R:8;i:1;R:9;}s:35:"1230:accounts-accounts.recent_notes";a:2:{i:0;R:8;i:1;R:9;}s:41:"1230:accounts-accounts.recurring_acc_fees";a:2:{i:0;R:8;i:1;R:9;}s:29:"1230:accounts-accounts.remove";a:2:{i:0;R:8;i:1;R:9;}s:30:"1230:accounts-accounts.removed";a:2:{i:0;R:8;i:1;R:9;}s:38:"1230:accounts-accounts.repayment_sched";a:2:{i:0;R:8;i:1;R:9;}s:45:"1230:accounts-accounts.returntoaccountdetails";a:2:{i:0;R:8;i:1;R:9;}s:36:"1230:accounts-accounts.returndetails";a:2:{i:0;R:8;i:1;R:9;}s:29:"1230:accounts-accounts.review";a:2:{i:0;R:8;i:1;R:9;}s:34:"1230:accounts-accounts.review&edit";a:2:{i:0;R:8;i:1;R:9;}s:36:"1230:accounts-accounts.review&submit";a:2:{i:0;R:8;i:1;R:9;}s:38:"1230:accounts-accounts.review/edit_ins";a:2:{i:0;R:8;i:1;R:9;}s:46:"1230:accounts-accounts.review_payment_schedule";a:2:{i:0;R:8;i:1;R:9;}s:39:"1230:accounts-accounts.reviewadjustment";a:2:{i:0;R:8;i:1;R:9;}s:46:"1230:accounts-accounts.reviewadjustment_detail";a:2:{i:0;R:8;i:1;R:9;}s:40:"1230:accounts-accounts.reviewtransaction";a:2:{i:0;R:8;i:1;R:9;}s:34:"1230:accounts-accounts.running_bal";a:2:{i:0;R:8;i:1;R:9;}s:35:"1230:accounts-accounts.saveforlater";a:2:{i:0;R:8;i:1;R:9;}s:29:"1230:accounts-accounts.search";a:2:{i:0;R:8;i:1;R:9;}s:33:"1230:accounts-accounts.search_for";a:2:{i:0;R:8;i:1;R:9;}s:34:"1230:accounts-accounts.seeallnotes";a:2:{i:0;R:8;i:1;R:9;}s:38:"1230:accounts-accounts.sel_charge_type";a:2:{i:0;R:8;i:1;R:9;}s:36:"1230:accounts-accounts.select_click1";a:2:{i:0;R:8;i:1;R:9;}s:36:"1230:accounts-accounts.select_click2";a:2:{i:0;R:8;i:1;R:9;}s:36:"1230:accounts-accounts.select_client";a:2:{i:0;R:8;i:1;R:9;}s:42:"1230:accounts-accounts.select_client/group";a:2:{i:0;R:8;i:1;R:9;}s:39:"1230:accounts-accounts.select_loan_inst";a:2:{i:0;R:8;i:1;R:9;}s:34:"1230:accounts-accounts.source_fund";a:2:{i:0;R:8;i:1;R:9;}s:29:"1230:accounts-accounts.status";a:2:{i:0;R:8;i:1;R:9;}s:36:"1230:accounts-accounts.status_active";a:2:{i:0;R:8;i:1;R:9;}s:37:"1230:accounts-accounts.status_history";a:2:{i:0;R:8;i:1;R:9;}s:29:"1230:accounts-accounts.submit";a:2:{i:0;R:8;i:1;R:9;}s:40:"1230:accounts-accounts.submitforapproval";a:2:{i:0;R:8;i:1;R:9;}s:42:"1230:accounts-accounts.successful_creation";a:2:{i:0;R:8;i:1;R:9;}s:38:"1230:accounts-accounts.suggested_steps";a:2:{i:0;R:8;i:1;R:9;}s:28:"1230:accounts-accounts.total";a:2:{i:0;R:8;i:1;R:9;}s:40:"1230:accounts-accounts.total_due_install";a:2:{i:0;R:8;i:1;R:9;}s:35:"1230:accounts-accounts.tractor_loan";a:2:{i:0;R:8;i:1;R:9;}s:35:"1230:accounts-accounts.training_fee";a:2:{i:0;R:8;i:1;R:9;}s:37:"1230:accounts-accounts.transaction_id";a:2:{i:0;R:8;i:1;R:9;}s:37:"1230:accounts-accounts.transc_history";a:2:{i:0;R:8;i:1;R:9;}s:35:"1230:accounts-accounts.tsunami_fund";a:2:{i:0;R:8;i:1;R:9;}s:27:"1230:accounts-accounts.type";a:2:{i:0;R:8;i:1;R:9;}s:29:"1230:accounts-accounts.type_1";a:2:{i:0;R:8;i:1;R:9;}s:29:"1230:accounts-accounts.type_2";a:2:{i:0;R:8;i:1;R:9;}s:27:"1230:accounts-accounts.user";a:2:{i:0;R:8;i:1;R:9;}s:38:"1230:accounts-accounts.view_change_log";a:2:{i:0;R:8;i:1;R:9;}s:40:"1230:accounts-accounts.view_inst_details";a:2:{i:0;R:8;i:1;R:9;}s:36:"1230:accounts-accounts.view_loan_acc";a:2:{i:0;R:8;i:1;R:9;}s:32:"1230:accounts-accounts.view_schd";a:2:{i:0;R:8;i:1;R:9;}s:42:"1230:accounts-accounts.view_status_history";a:2:{i:0;R:8;i:1;R:9;}s:42:"1230:accounts-accounts.view_transc_history";a:2:{i:0;R:8;i:1;R:9;}s:28:"1230:accounts-accounts.waive";a:2:{i:0;R:8;i:1;R:9;}s:26:"1230:accounts-accounts.yes";a:2:{i:0;R:8;i:1;R:9;}s:40:"1230:accounts-error.activity.not.allowed";a:2:{i:0;R:8;i:1;R:9;}s:43:"1230:accounts-errors.adjustmentpreviousdate";a:2:{i:0;R:8;i:1;R:9;}s:39:"1230:accounts-errors.adjustmentnextdate";a:2:{i:0;R:8;i:1;R:9;}s:39:"1230:accounts-error.incompletechecklist";a:2:{i:0;R:8;i:1;R:9;}s:43:"1230:accounts-error.miscchargenotapplicable";a:2:{i:0;R:8;i:1;R:9;}s:41:"1230:accounts-error.notransactionpossible";a:2:{i:0;R:8;i:1;R:9;}s:48:"1230:accounts-error.stateinitializationexception";a:2:{i:0;R:8;i:1;R:9;}s:42:"1230:accounts-error.statuschangenotallowed";a:2:{i:0;R:8;i:1;R:9;}s:36:"1230:accounts-error.unknownexception";a:2:{i:0;R:8;i:1;R:9;}s:39:"1230:accounts-error.versionnodonotmatch";a:2:{i:0;R:8;i:1;R:9;}s:41:"1230:accounts-errors.adjustmentnotetoobig";a:2:{i:0;R:8;i:1;R:9;}s:34:"1230:accounts-errors.decimalformat";a:2:{i:0;R:8;i:1;R:9;}s:30:"1230:accounts-errors.defminmax";a:2:{i:0;R:8;i:1;R:9;}s:27:"1230:accounts-errors.double";a:2:{i:0;R:8;i:1;R:9;}s:31:"1230:accounts-errors.futuredate";a:2:{i:0;R:8;i:1;R:9;}s:53:"1230:accounts-errors.payment.date.before.last.payment";a:2:{i:0;R:8;i:1;R:9;}s:28:"1230:accounts-errors.generic";a:2:{i:0;R:8;i:1;R:9;}s:28:"1230:accounts-errors.integer";a:2:{i:0;R:8;i:1;R:9;}s:35:"1230:accounts-errors.invalidtxndate";a:2:{i:0;R:8;i:1;R:9;}s:53:"1230:accounts-errors.invalidtxndatemonthalreadyclosed";a:2:{i:0;R:8;i:1;R:9;}s:32:"1230:accounts-errors.invaliddate";a:2:{i:0;R:8;i:1;R:9;}s:32:"1230:accounts-errors.makepayment";a:2:{i:0;R:8;i:1;R:9;}s:30:"1230:accounts-errors.mandatory";a:2:{i:0;R:8;i:1;R:9;}s:38:"1230:accounts-errors.mandatory_textbox";a:2:{i:0;R:8;i:1;R:9;}s:38:"1230:accounts-errors.mandatorycheckbox";a:2:{i:0;R:8;i:1;R:9;}s:36:"1230:accounts-errors.mandatoryselect";a:2:{i:0;R:8;i:1;R:9;}s:38:"1230:accounts-errors.mandatorytextarea";a:2:{i:0;R:8;i:1;R:9;}s:25:"1230:accounts-errors.mask";a:2:{i:0;R:8;i:1;R:9;}s:27:"1230:accounts-errors.maxmin";a:2:{i:0;R:8;i:1;R:9;}s:34:"1230:accounts-errors.maximumlength";a:2:{i:0;R:8;i:1;R:9;}s:34:"1230:accounts-errors.minimumlength";a:2:{i:0;R:8;i:1;R:9;}s:42:"1230:accounts-errors.mustbegreaterthanzero";a:2:{i:0;R:8;i:1;R:9;}s:30:"1230:accounts-errors.nomeeting";a:2:{i:0;R:8;i:1;R:9;}s:39:"1230:accounts-errors.nomoreinstallments";a:2:{i:0;R:8;i:1;R:9;}s:35:"1230:accounts-errors.nosearchstring";a:2:{i:0;R:8;i:1;R:9;}s:36:"1230:accounts-errors.paymentmismatch";a:2:{i:0;R:8;i:1;R:9;}s:27:"1230:accounts-errors.prefix";a:2:{i:0;R:8;i:1;R:9;}s:34:"1230:accounts-errors.rateexception";a:2:{i:0;R:8;i:1;R:9;}s:35:"1230:accounts-errors.selectanyvalue";a:2:{i:0;R:8;i:1;R:9;}s:27:"1230:accounts-errors.suffix";a:2:{i:0;R:8;i:1;R:9;}s:52:"1230:accounts-errors.invalid_amount_according_to_due";a:2:{i:0;R:8;i:1;R:9;}s:31:"1230:accounts-errors.unexpected";a:2:{i:0;R:8;i:1;R:9;}s:66:"1230:accounts-exception.accounts.applicationexception.cannotadjust";a:2:{i:0;R:8;i:1;R:9;}s:80:"1230:accounts-exception.accounts.applicationexception.findbyglobalaccntexception";a:2:{i:0;R:8;i:1;R:9;}s:72:"1230:accounts-exception.accounts.applicationexception.zeroamntadjustmnet";a:2:{i:0;R:8;i:1;R:9;}s:48:"1230:accounts-exception.accounts.cantapplycharge";a:2:{i:0;R:8;i:1;R:9;}s:45:"1230:accounts-exception.accounts.cantapplyfee";a:2:{i:0;R:8;i:1;R:9;}s:46:"1230:accounts-exception.accounts.cantremovefee";a:2:{i:0;R:8;i:1;R:9;}s:50:"1230:accounts-exception.accounts.cantremovepenalty";a:2:{i:0;R:8;i:1;R:9;}s:39:"1230:accounts-exception.accounts.create";a:2:{i:0;R:8;i:1;R:9;}s:57:"1230:accounts-exception.accounts.create.customer.inactive";a:2:{i:0;R:8;i:1;R:9;}s:52:"1230:accounts-exception.accounts.create.prd.inactive";a:2:{i:0;R:8;i:1;R:9;}s:33:"1230:accounts-loanedit_acc_status";a:2:{i:0;R:8;i:1;R:9;}s:44:"1230:accounts-cannot.view.repayment.schedule";a:2:{i:0;R:8;i:1;R:9;}s:26:"1230:ad-account.addnewnote";a:2:{i:0;s:12:"out-mifos-ad";i:1;R:9;}s:23:"1230:ad-account.addnote";a:2:{i:0;R:25596;i:1;R:9;}s:21:"1230:ad-account.admin";a:2:{i:0;R:25596;i:1;R:9;}s:40:"1230:ad-account.clickcanceltodetailspage";a:2:{i:0;R:25596;i:1;R:9;}s:28:"1230:ad-account.clickpreview";a:2:{i:0;R:25596;i:1;R:9;}s:20:"1230:ad-account.edit";a:2:{i:0;R:25596;i:1;R:9;}s:25:"1230:ad-account.editlabel";a:2:{i:0;R:25596;i:1;R:9;}s:26:"1230:ad-account.enteranote";a:2:{i:0;R:25596;i:1;R:9;}s:20:"1230:ad-account.note";a:2:{i:0;R:25596;i:1;R:9;}s:25:"1230:ad-account.notelabel";a:2:{i:0;R:25596;i:1;R:9;}s:21:"1230:ad-account.notes";a:2:{i:0;R:25596;i:1;R:9;}s:27:"1230:ad-account.previewnote";a:2:{i:0;R:25596;i:1;R:9;}s:26:"1230:ad-account.reviewtext";a:2:{i:0;R:25596;i:1;R:9;}s:29:"1230:ad-account.statushistory";a:2:{i:0;R:25596;i:1;R:9;}s:22:"1230:ad-account.submit";a:2:{i:0;R:25596;i:1;R:9;}s:29:"1230:ad-account.vieweditusers";a:2:{i:0;R:25596;i:1;R:9;}s:25:"1230:ad-account.viewusers";a:2:{i:0;R:25596;i:1;R:9;}s:38:"1230:ad-account.returntoaccountdetails";a:2:{i:0;R:25596;i:1;R:9;}s:23:"1230:ad-adjustmentnotes";a:2:{i:0;R:25596;i:1;R:9;}s:14:"1230:ad-amount";a:2:{i:0;R:25596;i:1;R:9;}s:15:"1230:ad-balance";a:2:{i:0;R:25596;i:1;R:9;}s:18:"1230:ad-clientname";a:2:{i:0;R:25596;i:1;R:9;}s:14:"1230:ad-credit";a:2:{i:0;R:25596;i:1;R:9;}s:12:"1230:ad-date";a:2:{i:0;R:25596;i:1;R:9;}s:18:"1230:ad-dateposted";a:2:{i:0;R:25596;i:1;R:9;}s:13:"1230:ad-debit";a:2:{i:0;R:25596;i:1;R:9;}s:19:"1230:ad-description";a:2:{i:0;R:25596;i:1;R:9;}s:14:"1230:ad-glcode";a:2:{i:0;R:25596;i:1;R:9;}s:17:"1230:ad-newstatus";a:2:{i:0;R:25596;i:1;R:9;}s:17:"1230:ad-oldstatus";a:2:{i:0;R:25596;i:1;R:9;}s:17:"1230:ad-paymentid";a:2:{i:0;R:25596;i:1;R:9;}s:16:"1230:ad-postedby";a:2:{i:0;R:25596;i:1;R:9;}s:21:"1230:ad-transactionid";a:2:{i:0;R:25596;i:1;R:9;}s:12:"1230:ad-type";a:2:{i:0;R:25596;i:1;R:9;}s:12:"1230:ad-user";a:2:{i:0;R:25596;i:1;R:9;}s:22:"1230:ad-account.amount";a:2:{i:0;R:25596;i:1;R:9;}s:27:"1230:ad-account.amount_zero";a:2:{i:0;R:25596;i:1;R:9;}s:26:"1230:ad-account.chargetype";a:2:{i:0;R:25596;i:1;R:9;}s:24:"1230:ad-accounts.account";a:2:{i:0;R:25596;i:1;R:9;}s:29:"1230:ad-accounts.checklistmsg";a:2:{i:0;R:25596;i:1;R:9;}s:29:"1230:ad-accounts.clickcancel1";a:2:{i:0;R:25596;i:1;R:9;}s:29:"1230:ad-accounts.clickcancel2";a:2:{i:0;R:25596;i:1;R:9;}s:30:"1230:ad-accounts.clickcontinue";a:2:{i:0;R:25596;i:1;R:9;}s:28:"1230:ad-accounts.clicksubmit";a:2:{i:0;R:25596;i:1;R:9;}s:36:"1230:ad-accounts.confirmstatuschange";a:2:{i:0;R:25596;i:1;R:9;}s:27:"1230:ad-accounts.editstatus";a:2:{i:0;R:25596;i:1;R:9;}s:26:"1230:ad-accounts.newstatus";a:2:{i:0;R:25596;i:1;R:9;}s:28:"1230:ad-accounts.nochecklist";a:2:{i:0;R:25596;i:1;R:9;}s:33:"1230:ad-accounts.noflagsavailable";a:2:{i:0;R:25596;i:1;R:9;}s:33:"1230:ad-accounts.nonotesavailable";a:2:{i:0;R:25596;i:1;R:9;}s:26:"1230:ad-accounts.oldstatus";a:2:{i:0;R:25596;i:1;R:9;}s:33:"1230:ad-accounts.sel_client/group";a:2:{i:0;R:25596;i:1;R:9;}s:32:"1230:ad-accounts.selectacustomer";a:2:{i:0;R:25596;i:1;R:9;}s:31:"1230:ad-accounts.selectcustomer";a:2:{i:0;R:25596;i:1;R:9;}s:36:"1230:ad-accounts.selectexplaination1";a:2:{i:0;R:25596;i:1;R:9;}s:36:"1230:ad-accounts.selectexplaination2";a:2:{i:0;R:25596;i:1;R:9;}s:29:"1230:ad-accounts.selectstatus";a:2:{i:0;R:25596;i:1;R:9;}s:28:"1230:ad-accounts.acc_details";a:2:{i:0;R:25596;i:1;R:9;}s:25:"1230:ad-accounts.acc_info";a:2:{i:0;R:25596;i:1;R:9;}s:26:"1230:ad-accounts.acc_owner";a:2:{i:0;R:25596;i:1;R:9;}s:30:"1230:ad-accounts.acc_statement";a:2:{i:0;R:25596;i:1;R:9;}s:28:"1230:ad-accounts.acc_summary";a:2:{i:0;R:25596;i:1;R:9;}s:25:"1230:ad-accounts.activity";a:2:{i:0;R:25596;i:1;R:9;}s:25:"1230:ad-accounts.add_note";a:2:{i:0;R:25596;i:1;R:9;}s:27:"1230:ad-accounts.addnewnote";a:2:{i:0;R:25596;i:1;R:9;}s:24:"1230:ad-accounts.addnote";a:2:{i:0;R:25596;i:1;R:9;}s:34:"1230:ad-accounts.adjustment_detail";a:2:{i:0;R:25596;i:1;R:9;}s:31:"1230:ad-accounts.admin_set_fees";a:2:{i:0;R:25596;i:1;R:9;}s:21:"1230:ad-accounts.agro";a:2:{i:0;R:25596;i:1;R:9;}s:26:"1230:ad-accounts.agro_loan";a:2:{i:0;R:25596;i:1;R:9;}s:31:"1230:ad-accounts.allowed_amount";a:2:{i:0;R:25596;i:1;R:9;}s:33:"1230:ad-accounts.allowed_interest";a:2:{i:0;R:25596;i:1;R:9;}s:35:"1230:ad-accounts.allowed_no_of_inst";a:2:{i:0;R:25596;i:1;R:9;}s:35:"1230:ad-accounts.amnt_tobe_adjusted";a:2:{i:0;R:25596;i:1;R:9;}s:23:"1230:ad-accounts.amount";a:2:{i:0;R:25596;i:1;R:9;}s:28:"1230:ad-accounts.amount(usd)";a:2:{i:0;R:25596;i:1;R:9;}s:28:"1230:ad-accounts.amount_(rs)";a:2:{i:0;R:25596;i:1;R:9;}s:27:"1230:ad-accounts.amount_due";a:2:{i:0;R:25596;i:1;R:9;}s:20:"1230:ad-accounts.amt";a:2:{i:0;R:25596;i:1;R:9;}s:25:"1230:ad-accounts.amt_paid";a:2:{i:0;R:25596;i:1;R:9;}s:33:"1230:ad-accounts.anti_disburse_dd";a:2:{i:0;R:25596;i:1;R:9;}s:24:"1230:ad-accounts.app_fee";a:2:{i:0;R:25596;i:1;R:9;}s:28:"1230:ad-accounts.app_fee_amt";a:2:{i:0;R:25596;i:1;R:9;}s:26:"1230:ad-accounts.appl_fees";a:2:{i:0;R:25596;i:1;R:9;}s:31:"1230:ad-accounts.apply_add_fees";a:2:{i:0;R:25596;i:1;R:9;}s:33:"1230:ad-accounts.apply_adjustment";a:2:{i:0;R:25596;i:1;R:9;}s:30:"1230:ad-accounts.apply_charges";a:2:{i:0;R:25596;i:1;R:9;}s:30:"1230:ad-accounts.apply_payment";a:2:{i:0;R:25596;i:1;R:9;}s:28:"1230:ad-accounts.apply_trans";a:2:{i:0;R:25596;i:1;R:9;}s:32:"1230:ad-accounts.applyadjustment";a:2:{i:0;R:25596;i:1;R:9;}s:25:"1230:ad-accounts.approved";a:2:{i:0;R:25596;i:1;R:9;}s:20:"1230:ad-accounts.apr";a:2:{i:0;R:25596;i:1;R:9;}s:25:"1230:ad-accounts.asterisk";a:2:{i:0;R:25596;i:1;R:9;}s:30:"1230:ad-accounts.backtocharges";a:2:{i:0;R:25596;i:1;R:9;}s:24:"1230:ad-accounts.balance";a:2:{i:0;R:25596;i:1;R:9;}s:36:"1230:ad-accounts.balance_at_disburse";a:2:{i:0;R:25596;i:1;R:9;}s:26:"1230:ad-accounts.branch-01";a:2:{i:0;R:25596;i:1;R:9;}s:37:"1230:ad-accounts.btn_reviewadjustment";a:2:{i:0;R:25596;i:1;R:9;}s:34:"1230:ad-accounts.business_work_act";a:2:{i:0;R:25596;i:1;R:9;}s:23:"1230:ad-accounts.cancel";a:2:{i:0;R:25596;i:1;R:9;}s:28:"1230:ad-accounts.cattle_loan";a:2:{i:0;R:25596;i:1;R:9;}s:30:"1230:ad-accounts.centercharges";a:2:{i:0;R:25596;i:1;R:9;}s:27:"1230:ad-accounts.change_log";a:2:{i:0;R:25596;i:1;R:9;}s:29:"1230:ad-accounts.changestatus";a:2:{i:0;R:25596;i:1;R:9;}s:24:"1230:ad-accounts.charged";a:2:{i:0;R:25596;i:1;R:9;}s:32:"1230:ad-accounts.charged_applied";a:2:{i:0;R:25596;i:1;R:9;}s:24:"1230:ad-accounts.charges";a:2:{i:0;R:25596;i:1;R:9;}s:29:"1230:ad-accounts.check_remove";a:2:{i:0;R:25596;i:1;R:9;}s:37:"1230:ad-accounts.chk_revert_last_pmnt";a:2:{i:0;R:25596;i:1;R:9;}s:34:"1230:ad-accounts.client/group_name";a:2:{i:0;R:25596;i:1;R:9;}s:30:"1230:ad-accounts.clientcharges";a:2:{i:0;R:25596;i:1;R:9;}s:32:"1230:ad-accounts.coll_sheet_type";a:2:{i:0;R:25596;i:1;R:9;}s:33:"1230:ad-accounts.collateral_notes";a:2:{i:0;R:25596;i:1;R:9;}s:32:"1230:ad-accounts.collateral_type";a:2:{i:0;R:25596;i:1;R:9;}s:31:"1230:ad-accounts.collateralnote";a:2:{i:0;R:25596;i:1;R:9;}s:22:"1230:ad-accounts.colon";a:2:{i:0;R:25596;i:1;R:9;}s:31:"1230:ad-accounts.complete_field";a:2:{i:0;R:25596;i:1;R:9;}s:22:"1230:ad-accounts.congo";a:2:{i:0;R:25596;i:1;R:9;}s:32:"1230:ad-accounts.consultancy_fee";a:2:{i:0;R:25596;i:1;R:9;}s:25:"1230:ad-accounts.continue";a:2:{i:0;R:25596;i:1;R:9;}s:23:"1230:ad-accounts.create";a:2:{i:0;R:25596;i:1;R:9;}s:32:"1230:ad-accounts.create_loan_acc";a:2:{i:0;R:25596;i:1;R:9;}s:23:"1230:ad-accounts.credit";a:2:{i:0;R:25596;i:1;R:9;}s:30:"1230:ad-accounts.currentstatus";a:2:{i:0;R:25596;i:1;R:9;}s:21:"1230:ad-accounts.date";a:2:{i:0;R:25596;i:1;R:9;}s:29:"1230:ad-accounts.date_of_trxn";a:2:{i:0;R:25596;i:1;R:9;}s:26:"1230:ad-accounts.date_paid";a:2:{i:0;R:25596;i:1;R:9;}s:28:"1230:ad-accounts.date_posted";a:2:{i:0;R:25596;i:1;R:9;}s:30:"1230:ad-accounts.dateofpayment";a:2:{i:0;R:25596;i:1;R:9;}s:29:"1230:ad-accounts.days_arrears";a:2:{i:0;R:25596;i:1;R:9;}s:22:"1230:ad-accounts.debit";a:2:{i:0;R:25596;i:1;R:9;}s:23:"1230:ad-accounts.defamt";a:2:{i:0;R:25596;i:1;R:9;}s:24:"1230:ad-accounts.definst";a:2:{i:0;R:25596;i:1;R:9;}s:27:"1230:ad-accounts.defintrate";a:2:{i:0;R:25596;i:1;R:9;}s:28:"1230:ad-accounts.delinquency";a:2:{i:0;R:25596;i:1;R:9;}s:21:"1230:ad-accounts.desc";a:2:{i:0;R:25596;i:1;R:9;}s:28:"1230:ad-accounts.description";a:2:{i:0;R:25596;i:1;R:9;}s:25:"1230:ad-accounts.dis_date";a:2:{i:0;R:25596;i:1;R:9;}s:25:"1230:ad-accounts.due_date";a:2:{i:0;R:25596;i:1;R:9;}s:30:"1230:ad-accounts.edit_acc_info";a:2:{i:0;R:25596;i:1;R:9;}s:26:"1230:ad-accounts.edit_info";a:2:{i:0;R:25596;i:1;R:9;}s:30:"1230:ad-accounts.edit_loan_acc";a:2:{i:0;R:25596;i:1;R:9;}s:26:"1230:ad-accounts.edittrans";a:2:{i:0;R:25596;i:1;R:9;}s:25:"1230:ad-accounts.edittrxn";a:2:{i:0;R:25596;i:1;R:9;}s:25:"1230:ad-accounts.edu_loan";a:2:{i:0;R:25596;i:1;R:9;}s:38:"1230:ad-accounts.enter_client_details1";a:2:{i:0;R:25596;i:1;R:9;}s:38:"1230:ad-accounts.enter_client_details2";a:2:{i:0;R:25596;i:1;R:9;}s:35:"1230:ad-accounts.enter_loan_accinfo";a:2:{i:0;R:25596;i:1;R:9;}s:27:"1230:ad-accounts.enter_note";a:2:{i:0;R:25596;i:1;R:9;}s:28:"1230:ad-accounts.enteramount";a:2:{i:0;R:25596;i:1;R:9;}s:24:"1230:ad-accounts.fee_amt";a:2:{i:0;R:25596;i:1;R:9;}s:23:"1230:ad-accounts.fee_pd";a:2:{i:0;R:25596;i:1;R:9;}s:24:"1230:ad-accounts.fee_rec";a:2:{i:0;R:25596;i:1;R:9;}s:25:"1230:ad-accounts.fee_type";a:2:{i:0;R:25596;i:1;R:9;}s:21:"1230:ad-accounts.fees";a:2:{i:0;R:25596;i:1;R:9;}s:22:"1230:ad-accounts.field";a:2:{i:0;R:25596;i:1;R:9;}s:27:"1230:ad-accounts.fish_ponds";a:2:{i:0;R:25596;i:1;R:9;}s:29:"1230:ad-accounts.freq_of_inst";a:2:{i:0;R:25596;i:1;R:9;}s:31:"1230:ad-accounts.future_install";a:2:{i:0;R:25596;i:1;R:9;}s:32:"1230:ad-accounts.generate_report";a:2:{i:0;R:25596;i:1;R:9;}s:29:"1230:ad-accounts.grace_period";a:2:{i:0;R:25596;i:1;R:9;}s:34:"1230:ad-accounts.grace_period_type";a:2:{i:0;R:25596;i:1;R:9;}s:28:"1230:ad-accounts.graceperdur";a:2:{i:0;R:25596;i:1;R:9;}s:29:"1230:ad-accounts.groupcharges";a:2:{i:0;R:25596;i:1;R:9;}s:34:"1230:ad-accounts.hope&effort_group";a:2:{i:0;R:25596;i:1;R:9;}s:29:"1230:ad-accounts.horticulture";a:2:{i:0;R:25596;i:1;R:9;}s:21:"1230:ad-accounts.inst";a:2:{i:0;R:25596;i:1;R:9;}s:29:"1230:ad-accounts.install_paid";a:2:{i:0;R:25596;i:1;R:9;}s:36:"1230:ad-accounts.installment_details";a:2:{i:0;R:25596;i:1;R:9;}s:29:"1230:ad-accounts.installments";a:2:{i:0;R:25596;i:1;R:9;}s:30:"1230:ad-accounts.instance_info";a:2:{i:0;R:25596;i:1;R:9;}s:30:"1230:ad-accounts.instance_name";a:2:{i:0;R:25596;i:1;R:9;}s:26:"1230:ad-accounts.instt_due";a:2:{i:0;R:25596;i:1;R:9;}s:27:"1230:ad-accounts.instt_paid";a:2:{i:0;R:25596;i:1;R:9;}s:25:"1230:ad-accounts.interest";a:2:{i:0;R:25596;i:1;R:9;}s:32:"1230:ad-accounts.interest_amount";a:2:{i:0;R:25596;i:1;R:9;}s:38:"1230:ad-accounts.interest_cal_payments";a:2:{i:0;R:25596;i:1;R:9;}s:30:"1230:ad-accounts.interest_disb";a:2:{i:0;R:25596;i:1;R:9;}s:30:"1230:ad-accounts.interest_rate";a:2:{i:0;R:25596;i:1;R:9;}s:30:"1230:ad-accounts.interest_type";a:2:{i:0;R:25596;i:1;R:9;}s:25:"1230:ad-accounts.intr_rec";a:2:{i:0;R:25596;i:1;R:9;}s:24:"1230:ad-accounts.intrate";a:2:{i:0;R:25596;i:1;R:9;}s:28:"1230:ad-accounts.intratetype";a:2:{i:0;R:25596;i:1;R:9;}s:33:"1230:ad-accounts.kanakpura_center";a:2:{i:0;R:25596;i:1;R:9;}s:26:"1230:ad-accounts.last_pmnt";a:2:{i:0;R:25596;i:1;R:9;}s:28:"1230:ad-accounts.loan_amount";a:2:{i:0;R:25596;i:1;R:9;}s:29:"1230:ad-accounts.loan_balance";a:2:{i:0;R:25596;i:1;R:9;}s:29:"1230:ad-accounts.loaninstname";a:2:{i:0;R:25596;i:1;R:9;}s:32:"1230:ad-accounts.maintenance_fee";a:2:{i:0;R:25596;i:1;R:9;}s:30:"1230:ad-accounts.maturity_date";a:2:{i:0;R:25596;i:1;R:9;}s:24:"1230:ad-accounts.maxinst";a:2:{i:0;R:25596;i:1;R:9;}s:27:"1230:ad-accounts.maxintrate";a:2:{i:0;R:25596;i:1;R:9;}s:27:"1230:ad-accounts.maxloanamt";a:2:{i:0;R:25596;i:1;R:9;}s:32:"1230:ad-accounts.meeting_charges";a:2:{i:0;R:25596;i:1;R:9;}s:31:"1230:ad-accounts.member_fee_amt";a:2:{i:0;R:25596;i:1;R:9;}s:31:"1230:ad-accounts.membership_fee";a:2:{i:0;R:25596;i:1;R:9;}s:24:"1230:ad-accounts.mininst";a:2:{i:0;R:25596;i:1;R:9;}s:27:"1230:ad-accounts.minintrate";a:2:{i:0;R:25596;i:1;R:9;}s:27:"1230:ad-accounts.minloanamt";a:2:{i:0;R:25596;i:1;R:9;}s:32:"1230:ad-accounts.missed_payments";a:2:{i:0;R:25596;i:1;R:9;}s:32:"1230:ad-accounts.mode_of_payment";a:2:{i:0;R:25596;i:1;R:9;}s:30:"1230:ad-accounts.modeofpayment";a:2:{i:0;R:25596;i:1;R:9;}s:20:"1230:ad-accounts.mon";a:2:{i:0;R:25596;i:1;R:9;}s:29:"1230:ad-accounts.more_details";a:2:{i:0;R:25596;i:1;R:9;}s:21:"1230:ad-accounts.name";a:2:{i:0;R:25596;i:1;R:9;}s:27:"1230:ad-accounts.new_status";a:2:{i:0;R:25596;i:1;R:9;}s:24:"1230:ad-accounts.new_val";a:2:{i:0;R:25596;i:1;R:9;}s:26:"1230:ad-accounts.next_inst";a:2:{i:0;R:25596;i:1;R:9;}s:30:"1230:ad-accounts.next_inst_due";a:2:{i:0;R:25596;i:1;R:9;}s:37:"1230:ad-accounts.next_install_details";a:2:{i:0;R:25596;i:1;R:9;}s:34:"1230:ad-accounts.niew_acc_activity";a:2:{i:0;R:25596;i:1;R:9;}s:19:"1230:ad-accounts.no";a:2:{i:0;R:25596;i:1;R:9;}s:27:"1230:ad-accounts.no_of_inst";a:2:{i:0;R:25596;i:1;R:9;}s:21:"1230:ad-accounts.note";a:2:{i:0;R:25596;i:1;R:9;}s:22:"1230:ad-accounts.notes";a:2:{i:0;R:25596;i:1;R:9;}s:28:"1230:ad-accounts.of_payments";a:2:{i:0;R:25596;i:1;R:9;}s:27:"1230:ad-accounts.old_status";a:2:{i:0;R:25596;i:1;R:9;}s:24:"1230:ad-accounts.old_val";a:2:{i:0;R:25596;i:1;R:9;}s:28:"1230:ad-accounts.once_20days";a:2:{i:0;R:25596;i:1;R:9;}s:29:"1230:ad-accounts.open_new_acc";a:2:{i:0;R:25596;i:1;R:9;}s:35:"1230:ad-accounts.open_new_insur_acc";a:2:{i:0;R:25596;i:1;R:9;}s:34:"1230:ad-accounts.open_new_loan_acc";a:2:{i:0;R:25596;i:1;R:9;}s:33:"1230:ad-accounts.open_new_sav_acc";a:2:{i:0;R:25596;i:1;R:9;}s:19:"1230:ad-accounts.or";a:2:{i:0;R:25596;i:1;R:9;}s:30:"1230:ad-accounts.original_loan";a:2:{i:0;R:25596;i:1;R:9;}s:25:"1230:ad-accounts.past_due";a:2:{i:0;R:25596;i:1;R:9;}s:33:"1230:ad-accounts.past_due_details";a:2:{i:0;R:25596;i:1;R:9;}s:24:"1230:ad-accounts.payment";a:2:{i:0;R:25596;i:1;R:9;}s:27:"1230:ad-accounts.payment_id";a:2:{i:0;R:25596;i:1;R:9;}s:24:"1230:ad-accounts.penalty";a:2:{i:0;R:25596;i:1;R:9;}s:27:"1230:ad-accounts.penalty_01";a:2:{i:0;R:25596;i:1;R:9;}s:27:"1230:ad-accounts.penalty_02";a:2:{i:0;R:25596;i:1;R:9;}s:29:"1230:ad-accounts.penalty_type";a:2:{i:0;R:25596;i:1;R:9;}s:36:"1230:ad-accounts.performance_history";a:2:{i:0;R:25596;i:1;R:9;}s:39:"1230:ad-accounts.periodicity_annual_fee";a:2:{i:0;R:25596;i:1;R:9;}s:41:"1230:ad-accounts.periodicity_one_time_fee";a:2:{i:0;R:25596;i:1;R:9;}s:25:"1230:ad-accounts.plz_note";a:2:{i:0;R:25596;i:1;R:9;}s:26:"1230:ad-accounts.posted_by";a:2:{i:0;R:25596;i:1;R:9;}s:29:"1230:ad-accounts.poultry_farm";a:2:{i:0;R:25596;i:1;R:9;}s:22:"1230:ad-accounts.pr_pd";a:2:{i:0;R:25596;i:1;R:9;}s:31:"1230:ad-accounts.prdofferingval";a:2:{i:0;R:25596;i:1;R:9;}s:24:"1230:ad-accounts.preview";a:2:{i:0;R:25596;i:1;R:9;}s:32:"1230:ad-accounts.preview_accinfo";a:2:{i:0;R:25596;i:1;R:9;}s:26:"1230:ad-accounts.principal";a:2:{i:0;R:25596;i:1;R:9;}s:30:"1230:ad-accounts.principle_due";a:2:{i:0;R:25596;i:1;R:9;}s:32:"1230:ad-accounts.product_summary";a:2:{i:0;R:25596;i:1;R:9;}s:30:"1230:ad-accounts.proposed_date";a:2:{i:0;R:25596;i:1;R:9;}s:34:"1230:ad-accounts.rec_creation_date";a:2:{i:0;R:25596;i:1;R:9;}s:28:"1230:ad-accounts.receiptdate";a:2:{i:0;R:25596;i:1;R:9;}s:26:"1230:ad-accounts.receiptid";a:2:{i:0;R:25596;i:1;R:9;}s:29:"1230:ad-accounts.recent_notes";a:2:{i:0;R:25596;i:1;R:9;}s:35:"1230:ad-accounts.recurring_acc_fees";a:2:{i:0;R:25596;i:1;R:9;}s:23:"1230:ad-accounts.remove";a:2:{i:0;R:25596;i:1;R:9;}s:24:"1230:ad-accounts.removed";a:2:{i:0;R:25596;i:1;R:9;}s:32:"1230:ad-accounts.repayment_sched";a:2:{i:0;R:25596;i:1;R:9;}s:39:"1230:ad-accounts.returntoaccountdetails";a:2:{i:0;R:25596;i:1;R:9;}s:30:"1230:ad-accounts.returndetails";a:2:{i:0;R:25596;i:1;R:9;}s:23:"1230:ad-accounts.review";a:2:{i:0;R:25596;i:1;R:9;}s:28:"1230:ad-accounts.review&edit";a:2:{i:0;R:25596;i:1;R:9;}s:30:"1230:ad-accounts.review&submit";a:2:{i:0;R:25596;i:1;R:9;}s:32:"1230:ad-accounts.review/edit_ins";a:2:{i:0;R:25596;i:1;R:9;}s:40:"1230:ad-accounts.review_payment_schedule";a:2:{i:0;R:25596;i:1;R:9;}s:33:"1230:ad-accounts.reviewadjustment";a:2:{i:0;R:25596;i:1;R:9;}s:40:"1230:ad-accounts.reviewadjustment_detail";a:2:{i:0;R:25596;i:1;R:9;}s:34:"1230:ad-accounts.reviewtransaction";a:2:{i:0;R:25596;i:1;R:9;}s:28:"1230:ad-accounts.running_bal";a:2:{i:0;R:25596;i:1;R:9;}s:29:"1230:ad-accounts.saveforlater";a:2:{i:0;R:25596;i:1;R:9;}s:23:"1230:ad-accounts.search";a:2:{i:0;R:25596;i:1;R:9;}s:27:"1230:ad-accounts.search_for";a:2:{i:0;R:25596;i:1;R:9;}s:28:"1230:ad-accounts.seeallnotes";a:2:{i:0;R:25596;i:1;R:9;}s:32:"1230:ad-accounts.sel_charge_type";a:2:{i:0;R:25596;i:1;R:9;}s:30:"1230:ad-accounts.select_click1";a:2:{i:0;R:25596;i:1;R:9;}s:30:"1230:ad-accounts.select_click2";a:2:{i:0;R:25596;i:1;R:9;}s:30:"1230:ad-accounts.select_client";a:2:{i:0;R:25596;i:1;R:9;}s:36:"1230:ad-accounts.select_client/group";a:2:{i:0;R:25596;i:1;R:9;}s:33:"1230:ad-accounts.select_loan_inst";a:2:{i:0;R:25596;i:1;R:9;}s:28:"1230:ad-accounts.source_fund";a:2:{i:0;R:25596;i:1;R:9;}s:23:"1230:ad-accounts.status";a:2:{i:0;R:25596;i:1;R:9;}s:30:"1230:ad-accounts.status_active";a:2:{i:0;R:25596;i:1;R:9;}s:31:"1230:ad-accounts.status_history";a:2:{i:0;R:25596;i:1;R:9;}s:23:"1230:ad-accounts.submit";a:2:{i:0;R:25596;i:1;R:9;}s:34:"1230:ad-accounts.submitforapproval";a:2:{i:0;R:25596;i:1;R:9;}s:36:"1230:ad-accounts.successful_creation";a:2:{i:0;R:25596;i:1;R:9;}s:32:"1230:ad-accounts.suggested_steps";a:2:{i:0;R:25596;i:1;R:9;}s:22:"1230:ad-accounts.total";a:2:{i:0;R:25596;i:1;R:9;}s:34:"1230:ad-accounts.total_due_install";a:2:{i:0;R:25596;i:1;R:9;}s:29:"1230:ad-accounts.tractor_loan";a:2:{i:0;R:25596;i:1;R:9;}s:29:"1230:ad-accounts.training_fee";a:2:{i:0;R:25596;i:1;R:9;}s:31:"1230:ad-accounts.transaction_id";a:2:{i:0;R:25596;i:1;R:9;}s:31:"1230:ad-accounts.transc_history";a:2:{i:0;R:25596;i:1;R:9;}s:29:"1230:ad-accounts.tsunami_fund";a:2:{i:0;R:25596;i:1;R:9;}s:21:"1230:ad-accounts.type";a:2:{i:0;R:25596;i:1;R:9;}s:23:"1230:ad-accounts.type_1";a:2:{i:0;R:25596;i:1;R:9;}s:23:"1230:ad-accounts.type_2";a:2:{i:0;R:25596;i:1;R:9;}s:21:"1230:ad-accounts.user";a:2:{i:0;R:25596;i:1;R:9;}s:32:"1230:ad-accounts.view_change_log";a:2:{i:0;R:25596;i:1;R:9;}s:34:"1230:ad-accounts.view_inst_details";a:2:{i:0;R:25596;i:1;R:9;}s:30:"1230:ad-accounts.view_loan_acc";a:2:{i:0;R:25596;i:1;R:9;}s:26:"1230:ad-accounts.view_schd";a:2:{i:0;R:25596;i:1;R:9;}s:36:"1230:ad-accounts.view_status_history";a:2:{i:0;R:25596;i:1;R:9;}s:36:"1230:ad-accounts.view_transc_history";a:2:{i:0;R:25596;i:1;R:9;}s:22:"1230:ad-accounts.waive";a:2:{i:0;R:25596;i:1;R:9;}s:20:"1230:ad-accounts.yes";a:2:{i:0;R:25596;i:1;R:9;}s:25:"1230:ad-error.accounttype";a:2:{i:0;R:25596;i:1;R:9;}s:26:"1230:ad-error.filenotfound";a:2:{i:0;R:25596;i:1;R:9;}s:34:"1230:ad-error.activity.not.allowed";a:2:{i:0;R:25596;i:1;R:9;}s:18:"1230:ad-error.file";a:2:{i:0;R:25596;i:1;R:9;}s:33:"1230:ad-error.incompletechecklist";a:2:{i:0;R:25596;i:1;R:9;}s:37:"1230:ad-error.miscchargenotapplicable";a:2:{i:0;R:25596;i:1;R:9;}s:35:"1230:ad-error.notransactionpossible";a:2:{i:0;R:25596;i:1;R:9;}s:42:"1230:ad-error.stateinitializationexception";a:2:{i:0;R:25596;i:1;R:9;}s:20:"1230:ad-error.status";a:2:{i:0;R:25596;i:1;R:9;}s:24:"1230:ad-error.statuslist";a:2:{i:0;R:25596;i:1;R:9;}s:36:"1230:ad-error.statuschangenotallowed";a:2:{i:0;R:25596;i:1;R:9;}s:23:"1230:ad-error.titlename";a:2:{i:0;R:25596;i:1;R:9;}s:30:"1230:ad-error.unknownexception";a:2:{i:0;R:25596;i:1;R:9;}s:33:"1230:ad-error.versionnodonotmatch";a:2:{i:0;R:25596;i:1;R:9;}s:35:"1230:ad-errors.adjustmentnotetoobig";a:2:{i:0;R:25596;i:1;R:9;}s:28:"1230:ad-errors.decimalformat";a:2:{i:0;R:25596;i:1;R:9;}s:24:"1230:ad-errors.defminmax";a:2:{i:0;R:25596;i:1;R:9;}s:21:"1230:ad-errors.double";a:2:{i:0;R:25596;i:1;R:9;}s:25:"1230:ad-errors.futuredate";a:2:{i:0;R:25596;i:1;R:9;}s:22:"1230:ad-errors.integer";a:2:{i:0;R:25596;i:1;R:9;}s:29:"1230:ad-errors.invalidtxndate";a:2:{i:0;R:25596;i:1;R:9;}s:47:"1230:ad-errors.invalidtxndatemonthalreadyclosed";a:2:{i:0;R:25596;i:1;R:9;}s:26:"1230:ad-errors.invaliddate";a:2:{i:0;R:25596;i:1;R:9;}s:26:"1230:ad-errors.makepayment";a:2:{i:0;R:25596;i:1;R:9;}s:24:"1230:ad-errors.mandatory";a:2:{i:0;R:25596;i:1;R:9;}s:32:"1230:ad-errors.mandatory_textbox";a:2:{i:0;R:25596;i:1;R:9;}s:32:"1230:ad-errors.mandatorycheckbox";a:2:{i:0;R:25596;i:1;R:9;}s:30:"1230:ad-errors.mandatoryselect";a:2:{i:0;R:25596;i:1;R:9;}s:32:"1230:ad-errors.mandatorytextarea";a:2:{i:0;R:25596;i:1;R:9;}s:19:"1230:ad-errors.mask";a:2:{i:0;R:25596;i:1;R:9;}s:21:"1230:ad-errors.maxmin";a:2:{i:0;R:25596;i:1;R:9;}s:28:"1230:ad-errors.maximumlength";a:2:{i:0;R:25596;i:1;R:9;}s:28:"1230:ad-errors.minimumlength";a:2:{i:0;R:25596;i:1;R:9;}s:24:"1230:ad-errors.nomeeting";a:2:{i:0;R:25596;i:1;R:9;}s:33:"1230:ad-errors.nomoreinstallments";a:2:{i:0;R:25596;i:1;R:9;}s:29:"1230:ad-errors.nosearchstring";a:2:{i:0;R:25596;i:1;R:9;}s:21:"1230:ad-errors.prefix";a:2:{i:0;R:25596;i:1;R:9;}s:28:"1230:ad-errors.rateexception";a:2:{i:0;R:25596;i:1;R:9;}s:29:"1230:ad-errors.selectanyvalue";a:2:{i:0;R:25596;i:1;R:9;}s:21:"1230:ad-errors.suffix";a:2:{i:0;R:25596;i:1;R:9;}s:25:"1230:ad-errors.unexpected";a:2:{i:0;R:25596;i:1;R:9;}s:60:"1230:ad-exception.accounts.applicationexception.cannotadjust";a:2:{i:0;R:25596;i:1;R:9;}s:74:"1230:ad-exception.accounts.applicationexception.findbyglobalaccntexception";a:2:{i:0;R:25596;i:1;R:9;}s:66:"1230:ad-exception.accounts.applicationexception.zeroamntadjustmnet";a:2:{i:0;R:25596;i:1;R:9;}s:33:"1230:ad-exception.accounts.create";a:2:{i:0;R:25596;i:1;R:9;}s:51:"1230:ad-exception.accounts.create.customer.inactive";a:2:{i:0;R:25596;i:1;R:9;}s:46:"1230:ad-exception.accounts.create.prd.inactive";a:2:{i:0;R:25596;i:1;R:9;}s:27:"1230:ad-loanedit_acc_status";a:2:{i:0;R:25596;i:1;R:9;}s:23:"1230:admin-admin.manage";a:2:{i:0;s:15:"out-mifos-admin";i:1;R:9;}s:37:"1230:admin-admin.uploadadmindocuments";a:2:{i:0;R:25948;i:1;R:9;}s:21:"1230:admin-admin.view";a:2:{i:0;R:25948;i:1;R:9;}s:35:"1230:admin-admin.viewadmindocuments";a:2:{i:0;R:25948;i:1;R:9;}s:36:"1230:admin-admin.viewreportscategory";a:2:{i:0;R:25948;i:1;R:9;}s:37:"1230:admin-admin.viewreportstemplates";a:2:{i:0;R:25948;i:1;R:9;}s:25:"1230:admin-admin.accounts";a:2:{i:0;R:25948;i:1;R:9;}s:27:"1230:admin-admin.accounting";a:2:{i:0;R:25948;i:1;R:9;}s:32:"1230:admin-admin.manage.accounts";a:2:{i:0;R:25948;i:1;R:9;}s:37:"1230:admin-admin.manage.loan.accounts";a:2:{i:0;R:25948;i:1;R:9;}s:22:"1230:admin-admin.admin";a:2:{i:0;R:25948;i:1;R:9;}s:40:"1230:admin-admin.administrativedocuments";a:2:{i:0;R:25948;i:1;R:9;}s:27:"1230:admin-admin.admintasks";a:2:{i:0;R:25948;i:1;R:9;}s:31:"1230:admin-admin.batchjobs.link";a:2:{i:0;R:25948;i:1;R:9;}s:33:"1230:admin-admin.belowisthelistof";a:2:{i:0;R:25948;i:1;R:9;}s:53:"1230:admin-admin.belowislistofadministrativedocuments";a:2:{i:0;R:25948;i:1;R:9;}s:25:"1230:admin-admin.category";a:2:{i:0;R:25948;i:1;R:9;}s:29:"1230:admin-admin.configureppi";a:2:{i:0;R:25948;i:1;R:9;}s:30:"1230:admin-admin.customizetext";a:2:{i:0;R:25948;i:1;R:9;}s:33:"1230:admin-admin.datadisplayrules";a:2:{i:0;R:25948;i:1;R:9;}s:23:"1230:admin-admin.define";a:2:{i:0;R:25948;i:1;R:9;}s:34:"1230:admin-admin.definenewcategory";a:2:{i:0;R:25948;i:1;R:9;}s:37:"1230:admin-admin.definenewloanproduct";a:2:{i:0;R:25948;i:1;R:9;}s:40:"1230:admin-admin.definenewsavingsproduct";a:2:{i:0;R:25948;i:1;R:9;}s:34:"1230:admin-admin.defineproductsmix";a:2:{i:0;R:25948;i:1;R:9;}s:42:"1230:admin-admin.defineacceptedpaymenttype";a:2:{i:0;R:25948;i:1;R:9;}s:39:"1230:admin-admin.defineadditionalfields";a:2:{i:0;R:25948;i:1;R:9;}s:39:"1230:admin-admin.definehiddenmandfields";a:2:{i:0;R:25948;i:1;R:9;}s:29:"1230:admin-admin.definelabels";a:2:{i:0;R:25948;i:1;R:9;}s:35:"1230:admin-admin.definelookupoption";a:2:{i:0;R:25948;i:1;R:9;}s:26:"1230:admin-admin.definenew";a:2:{i:0;R:25948;i:1;R:9;}s:34:"1230:admin-admin.definenewquestion";a:2:{i:0;R:25948;i:1;R:9;}s:32:"1230:admin-admin.definenewsurvey";a:2:{i:0;R:25948;i:1;R:9;}s:31:"1230:admin-admin.definenewusers";a:2:{i:0;R:25948;i:1;R:9;}s:26:"1230:admin-admin.defnewcat";a:2:{i:0;R:25948;i:1;R:9;}s:32:"1230:admin-admin.defnewchecklist";a:2:{i:0;R:25948;i:1;R:9;}s:27:"1230:admin-admin.defnewfees";a:2:{i:0;R:25948;i:1;R:9;}s:27:"1230:admin-admin.defnewfund";a:2:{i:0;R:25948;i:1;R:9;}s:30:"1230:admin-admin.defnewholiday";a:2:{i:0;R:25948;i:1;R:9;}s:30:"1230:admin-admin.defnewloanprd";a:2:{i:0;R:25948;i:1;R:9;}s:32:"1230:admin-admin.defnewpenalties";a:2:{i:0;R:25948;i:1;R:9;}s:26:"1230:admin-admin.defnewoff";a:2:{i:0;R:25948;i:1;R:9;}s:29:"1230:admin-admin.defnewsavprd";a:2:{i:0;R:25948;i:1;R:9;}s:26:"1230:admin-admin.disbursal";a:2:{i:0;R:25948;i:1;R:9;}s:26:"1230:admin-admin.documents";a:2:{i:0;R:25948;i:1;R:9;}s:43:"1230:admin-admin.importexport.enterfileinfo";a:2:{i:0;R:25948;i:1;R:9;}s:44:"1230:admin-admin.importexport.importfilename";a:2:{i:0;R:25948;i:1;R:9;}s:42:"1230:admin-admin.importexport.importformat";a:2:{i:0;R:25948;i:1;R:9;}s:47:"1230:admin-admin.importexport.importinformation";a:2:{i:0;R:25948;i:1;R:9;}s:42:"1230:admin-admin.importexport.importstatus";a:2:{i:0;R:25948;i:1;R:9;}s:44:"1230:admin-admin.importexport.rowswitherrors";a:2:{i:0;R:25948;i:1;R:9;}s:48:"1230:admin-admin.importexport.zeroimportablerows";a:2:{i:0;R:25948;i:1;R:9;}s:50:"1230:admin-admin.importexport.successfulimportrows";a:2:{i:0;R:25948;i:1;R:9;}s:48:"1230:admin-admin.importexport.importtransactions";a:2:{i:0;R:25948;i:1;R:9;}s:51:"1230:admin-admin.importexport.viewaccountingexports";a:2:{i:0;R:25948;i:1;R:9;}s:55:"1230:admin-admin.importexport.generateaccountingexports";a:2:{i:0;R:25948;i:1;R:9;}s:47:"1230:admin-admin.importexport.has_been_imported";a:2:{i:0;R:25948;i:1;R:9;}s:45:"1230:admin-admin.importexport.reviewandsubmit";a:2:{i:0;R:25948;i:1;R:9;}s:46:"1230:admin-admin.importexport.selectimportfile";a:2:{i:0;R:25948;i:1;R:9;}s:51:"1230:admin-admin.importexport.successfully_imported";a:2:{i:0;R:25948;i:1;R:9;}s:35:"1230:admin-admin.importexport.title";a:2:{i:0;R:25948;i:1;R:9;}s:42:"1230:admin-admin.importexport.rowswereread";a:2:{i:0;R:25948;i:1;R:9;}s:41:"1230:admin-admin.importexport.rowsnoerror";a:2:{i:0;R:25948;i:1;R:9;}s:41:"1230:admin-admin.importexport.rowsignored";a:2:{i:0;R:25948;i:1;R:9;}s:39:"1230:admin-admin.importexport.rowserror";a:2:{i:0;R:25948;i:1;R:9;}s:44:"1230:admin-admin.importexport.amountimported";a:2:{i:0;R:25948;i:1;R:9;}s:57:"1230:admin-admin.importexport.amountdisbursementsimported";a:2:{i:0;R:25948;i:1;R:9;}s:41:"1230:admin-admin.importexport.amounterror";a:2:{i:0;R:25948;i:1;R:9;}s:41:"1230:admin-admin.importexport.downloadlog";a:2:{i:0;R:25948;i:1;R:9;}s:37:"1230:admin-admin.importexport.clients";a:2:{i:0;R:25948;i:1;R:9;}s:58:"1230:admin-admin.importexport.clients.flowstate.selectfile";a:2:{i:0;R:25948;i:1;R:9;}s:54:"1230:admin-admin.importexport.clients.flowstate.review";a:2:{i:0;R:25948;i:1;R:9;}s:51:"1230:admin-admin.importexport.clients.importclients";a:2:{i:0;R:25948;i:1;R:9;}s:47:"1230:admin-admin.importexport.clients.statement";a:2:{i:0;R:25948;i:1;R:9;}s:53:"1230:admin-admin.importexport.clients.markedstatement";a:2:{i:0;R:25948;i:1;R:9;}s:49:"1230:admin-admin.importexport.clients.parseerrors";a:2:{i:0;R:25948;i:1;R:9;}s:50:"1230:admin-admin.importexport.clients.parsesuccess";a:2:{i:0;R:25948;i:1;R:9;}s:44:"1230:admin-admin.importexport.clients.review";a:2:{i:0;R:25948;i:1;R:9;}s:50:"1230:admin-admin.importexport.clients.review.count";a:2:{i:0;R:25948;i:1;R:9;}s:49:"1230:admin-admin.importexport.clients.review.edit";a:2:{i:0;R:25948;i:1;R:9;}s:67:"1230:admin-admin.importexport.clients.review.successfullyparsedrows";a:2:{i:0;R:25948;i:1;R:9;}s:62:"1230:admin-admin.importexport.clients.review.reviewinformation";a:2:{i:0;R:25948;i:1;R:9;}s:42:"1230:admin-admin.importexport.clients.save";a:2:{i:0;R:25948;i:1;R:9;}s:48:"1230:admin-admin.importexport.clients.save.count";a:2:{i:0;R:25948;i:1;R:9;}s:50:"1230:admin-admin.importexport.clients.save.success";a:2:{i:0;R:25948;i:1;R:9;}s:54:"1230:admin-admin.importexport.clients.save.rowsignored";a:2:{i:0;R:25948;i:1;R:9;}s:49:"1230:admin-admin.importexport.xls.cell.activities";a:2:{i:0;R:25948;i:1;R:9;}s:46:"1230:admin-admin.importexport.xls.cell.address";a:2:{i:0;R:25948;i:1;R:9;}s:56:"1230:admin-admin.importexport.xls.cell.branch_short_name";a:2:{i:0;R:25948;i:1;R:9;}s:50:"1230:admin-admin.importexport.xls.cell.citizenship";a:2:{i:0;R:25948;i:1;R:9;}s:52:"1230:admin-admin.importexport.xls.cell.city_district";a:2:{i:0;R:25948;i:1;R:9;}s:49:"1230:admin-admin.importexport.xls.cell.client_num";a:2:{i:0;R:25948;i:1;R:9;}s:46:"1230:admin-admin.importexport.xls.cell.country";a:2:{i:0;R:25948;i:1;R:9;}s:52:"1230:admin-admin.importexport.xls.cell.date_of_birth";a:2:{i:0;R:25948;i:1;R:9;}s:54:"1230:admin-admin.importexport.xls.cell.education_level";a:2:{i:0;R:25948;i:1;R:9;}s:48:"1230:admin-admin.importexport.xls.cell.ethnicity";a:2:{i:0;R:25948;i:1;R:9;}s:49:"1230:admin-admin.importexport.xls.cell.first_name";a:2:{i:0;R:25948;i:1;R:9;}s:45:"1230:admin-admin.importexport.xls.cell.gender";a:2:{i:0;R:25948;i:1;R:9;}s:52:"1230:admin-admin.importexport.xls.cell.government_id";a:2:{i:0;R:25948;i:1;R:9;}s:55:"1230:admin-admin.importexport.xls.cell.group_global_num";a:2:{i:0;R:25948;i:1;R:9;}s:50:"1230:admin-admin.importexport.xls.cell.handicapped";a:2:{i:0;R:25948;i:1;R:9;}s:48:"1230:admin-admin.importexport.xls.cell.last_name";a:2:{i:0;R:25948;i:1;R:9;}s:51:"1230:admin-admin.importexport.xls.cell.loan_officer";a:2:{i:0;R:25948;i:1;R:9;}s:53:"1230:admin-admin.importexport.xls.cell.marital_status";a:2:{i:0;R:25948;i:1;R:9;}s:56:"1230:admin-admin.importexport.xls.cell.meeting_frequency";a:2:{i:0;R:25948;i:1;R:9;}s:55:"1230:admin-admin.importexport.xls.cell.meeting_location";a:2:{i:0;R:25948;i:1;R:9;}s:54:"1230:admin-admin.importexport.xls.cell.meeting_on_week";a:2:{i:0;R:25948;i:1;R:9;}s:55:"1230:admin-admin.importexport.xls.cell.meeting_opt1_day";a:2:{i:0;R:25948;i:1;R:9;}s:57:"1230:admin-admin.importexport.xls.cell.meeting_opt1_every";a:2:{i:0;R:25948;i:1;R:9;}s:55:"1230:admin-admin.importexport.xls.cell.meeting_opt2_day";a:2:{i:0;R:25948;i:1;R:9;}s:57:"1230:admin-admin.importexport.xls.cell.meeting_opt2_every";a:2:{i:0;R:25948;i:1;R:9;}s:55:"1230:admin-admin.importexport.xls.cell.meeting_opt2_the";a:2:{i:0;R:25948;i:1;R:9;}s:63:"1230:admin-admin.importexport.xls.cell.meeting_recur_every_week";a:2:{i:0;R:25948;i:1;R:9;}s:50:"1230:admin-admin.importexport.xls.cell.middle_name";a:2:{i:0;R:25948;i:1;R:9;}s:57:"1230:admin-admin.importexport.xls.cell.number_of_children";a:2:{i:0;R:25948;i:1;R:9;}s:50:"1230:admin-admin.importexport.xls.cell.postal_code";a:2:{i:0;R:25948;i:1;R:9;}s:53:"1230:admin-admin.importexport.xls.cell.poverty_status";a:2:{i:0;R:25948;i:1;R:9;}s:51:"1230:admin-admin.importexport.xls.cell.recruited_by";a:2:{i:0;R:25948;i:1;R:9;}s:49:"1230:admin-admin.importexport.xls.cell.salutation";a:2:{i:0;R:25948;i:1;R:9;}s:55:"1230:admin-admin.importexport.xls.cell.second_last_name";a:2:{i:0;R:25948;i:1;R:9;}s:65:"1230:admin-admin.importexport.xls.cell.spouse_father_relationship";a:2:{i:0;R:25948;i:1;R:9;}s:56:"1230:admin-admin.importexport.xls.cell.spouse_first_name";a:2:{i:0;R:25948;i:1;R:9;}s:57:"1230:admin-admin.importexport.xls.cell.spouse_middle_name";a:2:{i:0;R:25948;i:1;R:9;}s:55:"1230:admin-admin.importexport.xls.cell.spouse_last_name";a:2:{i:0;R:25948;i:1;R:9;}s:62:"1230:admin-admin.importexport.xls.cell.spouse_second_last_name";a:2:{i:0;R:25948;i:1;R:9;}s:44:"1230:admin-admin.importexport.xls.cell.state";a:2:{i:0;R:25948;i:1;R:9;}s:45:"1230:admin-admin.importexport.xls.cell.status";a:2:{i:0;R:25948;i:1;R:9;}s:48:"1230:admin-admin.importexport.xls.cell.telephone";a:2:{i:0;R:25948;i:1;R:9;}s:54:"1230:admin-admin.importexport.xls.error.activeinbranch";a:2:{i:0;R:25948;i:1;R:9;}s:44:"1230:admin-admin.importexport.xls.error.cell";a:2:{i:0;R:25948;i:1;R:9;}s:58:"1230:admin-admin.importexport.xls.error.duplicateglobalnum";a:2:{i:0;R:25948;i:1;R:9;}s:55:"1230:admin-admin.importexport.xls.error.duplicateclient";a:2:{i:0;R:25948;i:1;R:9;}s:50:"1230:admin-admin.importexport.xls.error.futuredate";a:2:{i:0;R:25948;i:1;R:9;}s:54:"1230:admin-admin.importexport.xls.error.groupbadstatus";a:2:{i:0;R:25948;i:1;R:9;}s:51:"1230:admin-admin.importexport.xls.error.groupclosed";a:2:{i:0;R:25948;i:1;R:9;}s:53:"1230:admin-admin.importexport.xls.error.groupcanceled";a:2:{i:0;R:25948;i:1;R:9;}s:53:"1230:admin-admin.importexport.xls.error.groupnotfound";a:2:{i:0;R:25948;i:1;R:9;}s:61:"1230:admin-admin.importexport.xls.error.incompletemeetingdata";a:2:{i:0;R:25948;i:1;R:9;}s:50:"1230:admin-admin.importexport.xls.error.invalidage";a:2:{i:0;R:25948;i:1;R:9;}s:51:"1230:admin-admin.importexport.xls.error.invaliddate";a:2:{i:0;R:25948;i:1;R:9;}s:50:"1230:admin-admin.importexport.xls.error.invalidday";a:2:{i:0;R:25948;i:1;R:9;}s:52:"1230:admin-admin.importexport.xls.error.invalidmonth";a:2:{i:0;R:25948;i:1;R:9;}s:49:"1230:admin-admin.importexport.xls.error.loaderror";a:2:{i:0;R:25948;i:1;R:9;}s:65:"1230:admin-admin.importexport.xls.error.loanofficerforgroupclient";a:2:{i:0;R:25948;i:1;R:9;}s:49:"1230:admin-admin.importexport.xls.error.mandatory";a:2:{i:0;R:25948;i:1;R:9;}s:55:"1230:admin-admin.importexport.xls.error.meetingforgroup";a:2:{i:0;R:25948;i:1;R:9;}s:63:"1230:admin-admin.importexport.xls.error.meetingoptionsexclusive";a:2:{i:0;R:25948;i:1;R:9;}s:62:"1230:admin-admin.importexport.xls.error.monthlymeetingnotempty";a:2:{i:0;R:25948;i:1;R:9;}s:48:"1230:admin-admin.importexport.xls.error.notfound";a:2:{i:0;R:25948;i:1;R:9;}s:49:"1230:admin-admin.importexport.xls.error.nomeeting";a:2:{i:0;R:25948;i:1;R:9;}s:50:"1230:admin-admin.importexport.xls.error.noofficers";a:2:{i:0;R:25948;i:1;R:9;}s:57:"1230:admin-admin.importexport.xls.error.notpositivenumber";a:2:{i:0;R:25948;i:1;R:9;}s:58:"1230:admin-admin.importexport.xls.error.notenoughinputcell";a:2:{i:0;R:25948;i:1;R:9;}s:57:"1230:admin-admin.importexport.xls.error.notenoughinputrow";a:2:{i:0;R:25948;i:1;R:9;}s:55:"1230:admin-admin.importexport.xls.error.officeandbranch";a:2:{i:0;R:25948;i:1;R:9;}s:54:"1230:admin-admin.importexport.xls.error.officenotfound";a:2:{i:0;R:25948;i:1;R:9;}s:43:"1230:admin-admin.importexport.xls.error.row";a:2:{i:0;R:25948;i:1;R:9;}s:53:"1230:admin-admin.importexport.xls.error.sundaymeeting";a:2:{i:0;R:25948;i:1;R:9;}s:61:"1230:admin-admin.importexport.xls.error.weeklymeetingnotempty";a:2:{i:0;R:25948;i:1;R:9;}s:40:"1230:admin-admin.importexport.xls.father";a:2:{i:0;R:25948;i:1;R:9;}s:40:"1230:admin-admin.importexport.xls.spouse";a:2:{i:0;R:25948;i:1;R:9;}s:33:"1230:admin-admin.infoclickonlabel";a:2:{i:0;R:25948;i:1;R:9;}s:35:"1230:admin-admin.manageloanaccounts";a:2:{i:0;R:25948;i:1;R:9;}s:33:"1230:admin-admin.manageproductmix";a:2:{i:0;R:25948;i:1;R:9;}s:31:"1230:admin-admin.manageproducts";a:2:{i:0;R:25948;i:1;R:9;}s:30:"1230:admin-admin.manageloanprd";a:2:{i:0;R:25948;i:1;R:9;}s:26:"1230:admin-admin.manageorg";a:2:{i:0;R:25948;i:1;R:9;}s:26:"1230:admin-admin.manageprd";a:2:{i:0;R:25948;i:1;R:9;}s:32:"1230:admin-admin.manageroles&per";a:2:{i:0;R:25948;i:1;R:9;}s:29:"1230:admin-admin.managesavprd";a:2:{i:0;R:25948;i:1;R:9;}s:20:"1230:admin-admin.mix";a:2:{i:0;R:25948;i:1;R:9;}s:29:"1230:admin-admin.monthclosing";a:2:{i:0;R:25948;i:1;R:9;}s:23:"1230:admin-admin.office";a:2:{i:0;R:25948;i:1;R:9;}s:24:"1230:admin-admin.orgpref";a:2:{i:0;R:25948;i:1;R:9;}s:25:"1230:admin-admin.prdrules";a:2:{i:0;R:25948;i:1;R:9;}s:24:"1230:admin-admin.product";a:2:{i:0;R:25948;i:1;R:9;}s:25:"1230:admin-admin.products";a:2:{i:0;R:25948;i:1;R:9;}s:26:"1230:admin-admin.questions";a:2:{i:0;R:25948;i:1;R:9;}s:25:"1230:admin-admin.question";a:2:{i:0;R:25948;i:1;R:9;}s:31:"1230:admin-admin.questiongroups";a:2:{i:0;R:25948;i:1;R:9;}s:30:"1230:admin-admin.questiongroup";a:2:{i:0;R:25948;i:1;R:9;}s:33:"1230:admin-admin.define.questions";a:2:{i:0;R:25948;i:1;R:9;}s:21:"1230:admin-admin.redo";a:2:{i:0;R:25948;i:1;R:9;}s:34:"1230:admin-admin.redoloandisbursal";a:2:{i:0;R:25948;i:1;R:9;}s:24:"1230:admin-admin.reports";a:2:{i:0;R:25948;i:1;R:9;}s:31:"1230:admin-admin.manage.reports";a:2:{i:0;R:25948;i:1;R:9;}s:24:"1230:admin-admin.reverse";a:2:{i:0;R:25948;i:1;R:9;}s:37:"1230:admin-admin.reverseloandisbursal";a:2:{i:0;R:25948;i:1;R:9;}s:26:"1230:admin-admin.shortname";a:2:{i:0;R:25948;i:1;R:9;}s:23:"1230:admin-admin.survey";a:2:{i:0;R:25948;i:1;R:9;}s:24:"1230:admin-admin.surveys";a:2:{i:0;R:25948;i:1;R:9;}s:31:"1230:admin-admin.manage.surveys";a:2:{i:0;R:25948;i:1;R:9;}s:29:"1230:admin-admin.view.surveys";a:2:{i:0;R:25948;i:1;R:9;}s:31:"1230:admin-admin.shutdown.title";a:2:{i:0;R:25948;i:1;R:9;}s:30:"1230:admin-admin.shutdown.link";a:2:{i:0;R:25948;i:1;R:9;}s:39:"1230:admin-admin.shutdown.button.submit";a:2:{i:0;R:25948;i:1;R:9;}s:39:"1230:admin-admin.shutdown.button.cancel";a:2:{i:0;R:25948;i:1;R:9;}s:40:"1230:admin-admin.shutdown.button.refresh";a:2:{i:0;R:25948;i:1;R:9;}s:33:"1230:admin-admin.shutdown.welcome";a:2:{i:0;R:25948;i:1;R:9;}s:31:"1230:admin-admin.shutdown.users";a:2:{i:0;R:25948;i:1;R:9;}s:32:"1230:admin-admin.shutdown.status";a:2:{i:0;R:25948;i:1;R:9;}s:37:"1230:admin-admin.shutdown.status.none";a:2:{i:0;R:25948;i:1;R:9;}s:43:"1230:admin-admin.shutdown.status.inprogress";a:2:{i:0;R:25948;i:1;R:9;}s:41:"1230:admin-admin.shutdown.status.imminent";a:2:{i:0;R:25948;i:1;R:9;}s:33:"1230:admin-admin.shutdown.timeout";a:2:{i:0;R:25948;i:1;R:9;}s:38:"1230:admin-admin.shutdown.timeout.unit";a:2:{i:0;R:25948;i:1;R:9;}s:31:"1230:admin-admin.sysadmin.title";a:2:{i:0;R:25948;i:1;R:9;}s:43:"1230:admin-admin.sysinfo.applicationversion";a:2:{i:0;R:25948;i:1;R:9;}s:34:"1230:admin-admin.sysinfo.appserver";a:2:{i:0;R:25948;i:1;R:9;}s:41:"1230:admin-admin.sysinfo.customreportsdir";a:2:{i:0;R:25948;i:1;R:9;}s:33:"1230:admin-admin.sysinfo.database";a:2:{i:0;R:25948;i:1;R:9;}s:33:"1230:admin-admin.sysinfo.datetime";a:2:{i:0;R:25948;i:1;R:9;}s:41:"1230:admin-admin.sysinfo.datetime.iso8601";a:2:{i:0;R:25948;i:1;R:9;}s:31:"1230:admin-admin.sysinfo.driver";a:2:{i:0;R:25948;i:1;R:9;}s:31:"1230:admin-admin.sysinfo.source";a:2:{i:0;R:25948;i:1;R:9;}s:31:"1230:admin-admin.sysinfo.server";a:2:{i:0;R:25948;i:1;R:9;}s:29:"1230:admin-admin.sysinfo.port";a:2:{i:0;R:25948;i:1;R:9;}s:29:"1230:admin-admin.sysinfo.name";a:2:{i:0;R:25948;i:1;R:9;}s:29:"1230:admin-admin.sysinfo.user";a:2:{i:0;R:25948;i:1;R:9;}s:29:"1230:admin-admin.sysinfo.java";a:2:{i:0;R:25948;i:1;R:9;}s:40:"1230:admin-admin.sysinfo.operatingsystem";a:2:{i:0;R:25948;i:1;R:9;}s:31:"1230:admin-admin.sysinfo.osuser";a:2:{i:0;R:25948;i:1;R:9;}s:36:"1230:admin-admin.sysinfo.releasename";a:2:{i:0;R:25948;i:1;R:9;}s:41:"1230:admin-admin.sysinfo.commitidentifier";a:2:{i:0;R:25948;i:1;R:9;}s:36:"1230:admin-admin.sysinfo.buildnumber";a:2:{i:0;R:25948;i:1;R:9;}s:34:"1230:admin-admin.sysinfo.builddate";a:2:{i:0;R:25948;i:1;R:9;}s:30:"1230:admin-admin.sysinfo.title";a:2:{i:0;R:25948;i:1;R:9;}s:35:"1230:admin-admin.view.sysinfo.title";a:2:{i:0;R:25948;i:1;R:9;}s:32:"1230:admin-admin.sysinfo.welcome";a:2:{i:0;R:25948;i:1;R:9;}s:25:"1230:admin-admin.sysusers";a:2:{i:0;R:25948;i:1;R:9;}s:26:"1230:admin-admin.templates";a:2:{i:0;R:25948;i:1;R:9;}s:53:"1230:admin-admin.unabletodetermineconfigurationsource";a:2:{i:0;R:25948;i:1;R:9;}s:23:"1230:admin-admin.upload";a:2:{i:0;R:25948;i:1;R:9;}s:37:"1230:admin-admin.uploadreporttemplate";a:2:{i:0;R:25948;i:1;R:9;}s:33:"1230:admin-admin.viewloanproducts";a:2:{i:0;R:25948;i:1;R:9;}s:24:"1230:admin-admin.viewppi";a:2:{i:0;R:25948;i:1;R:9;}s:32:"1230:admin-admin.viewproductsmix";a:2:{i:0;R:25948;i:1;R:9;}s:36:"1230:admin-admin.viewsavingsproducts";a:2:{i:0;R:25948;i:1;R:9;}s:39:"1230:admin-admin.view_additional_fields";a:2:{i:0;R:25948;i:1;R:9;}s:38:"1230:admin-admin.view_reports_category";a:2:{i:0;R:25948;i:1;R:9;}s:44:"1230:admin-admin.viewadministrativedocuments";a:2:{i:0;R:25948;i:1;R:9;}s:30:"1230:admin-admin.viewcheklists";a:2:{i:0;R:25948;i:1;R:9;}s:25:"1230:admin-admin.viewfees";a:2:{i:0;R:25948;i:1;R:9;}s:26:"1230:admin-admin.viewfunds";a:2:{i:0;R:25948;i:1;R:9;}s:29:"1230:admin-admin.viewholidays";a:2:{i:0;R:25948;i:1;R:9;}s:32:"1230:admin-admin.viewlate/dordef";a:2:{i:0;R:25948;i:1;R:9;}s:28:"1230:admin-admin.viewloanprd";a:2:{i:0;R:25948;i:1;R:9;}s:24:"1230:admin-admin.viewoff";a:2:{i:0;R:25948;i:1;R:9;}s:28:"1230:admin-admin.viewoffhier";a:2:{i:0;R:25948;i:1;R:9;}s:41:"1230:admin-admin.vieworganizationsettings";a:2:{i:0;R:25948;i:1;R:9;}s:30:"1230:admin-admin.viewpenalties";a:2:{i:0;R:25948;i:1;R:9;}s:27:"1230:admin-admin.viewprdcat";a:2:{i:0;R:25948;i:1;R:9;}s:30:"1230:admin-admin.viewquestions";a:2:{i:0;R:25948;i:1;R:9;}s:28:"1230:admin-admin.viewreports";a:2:{i:0;R:25948;i:1;R:9;}s:28:"1230:admin-admin.viewsavprds";a:2:{i:0;R:25948;i:1;R:9;}s:27:"1230:admin-admin.viewsurvey";a:2:{i:0;R:25948;i:1;R:9;}s:29:"1230:admin-admin.viewsysusers";a:2:{i:0;R:25948;i:1;R:9;}s:31:"1230:admin-admin.welcometomifos";a:2:{i:0;R:25948;i:1;R:9;}s:37:"1230:admin-error.activity.not.allowed";a:2:{i:0;R:25948;i:1;R:9;}s:41:"1230:admin-error.shutdown.timeout.invalid";a:2:{i:0;R:25948;i:1;R:9;}s:24:"1230:admin-errors.prefix";a:2:{i:0;R:25948;i:1;R:9;}s:24:"1230:admin-errors.suffix";a:2:{i:0;R:25948;i:1;R:9;}s:52:"1230:admin-exception.framework.doublesubmitexception";a:2:{i:0;R:25948;i:1;R:9;}s:51:"1230:admin-exception.framework.pageexpiredexception";a:2:{i:0;R:25948;i:1;R:9;}s:37:"1230:admin-errors.importexport.toobig";a:2:{i:0;R:25948;i:1;R:9;}s:50:"1230:admin-errors.importexport.mandatory_selectbox";a:2:{i:0;R:25948;i:1;R:9;}s:45:"1230:admin-errors.importexport.mandatory_file";a:2:{i:0;R:25948;i:1;R:9;}s:48:"1230:admin-errors.importexport.already_submitted";a:2:{i:0;R:25948;i:1;R:9;}s:26:"1230:admin-admin.uploadppi";a:2:{i:0;R:25948;i:1;R:9;}s:40:"1230:admin-admin.questionnaire.migration";a:2:{i:0;R:25948;i:1;R:9;}s:56:"1230:admin-admin.questionnaire.migration.migrate.surveys";a:2:{i:0;R:25948;i:1;R:9;}s:66:"1230:admin-admin.questionnaire.migration.migrate.additional.fields";a:2:{i:0;R:25948;i:1;R:9;}s:39:"1230:admin-admin.migrate.questiongroups";a:2:{i:0;R:25948;i:1;R:9;}s:27:"1230:app-button.adminmodule";a:2:{i:0;s:13:"out-mifos-app";i:1;R:9;}s:28:"1230:app-button.clientmodule";a:2:{i:0;R:26222;i:1;R:9;}s:26:"1230:app-error.invaliduser";a:2:{i:0;R:26222;i:1;R:9;}s:20:"1230:app-errors.byte";a:2:{i:0;R:26222;i:1;R:9;}s:26:"1230:app-errors.creditcard";a:2:{i:0;R:26222;i:1;R:9;}s:20:"1230:app-errors.date";a:2:{i:0;R:26222;i:1;R:9;}s:22:"1230:app-errors.double";a:2:{i:0;R:26222;i:1;R:9;}s:21:"1230:app-errors.email";a:2:{i:0;R:26222;i:1;R:9;}s:21:"1230:app-errors.float";a:2:{i:0;R:26222;i:1;R:9;}s:22:"1230:app-errors.footer";a:2:{i:0;R:26222;i:1;R:9;}s:22:"1230:app-errors.header";a:2:{i:0;R:26222;i:1;R:9;}s:23:"1230:app-errors.integer";a:2:{i:0;R:26222;i:1;R:9;}s:23:"1230:app-errors.invalid";a:2:{i:0;R:26222;i:1;R:9;}s:20:"1230:app-errors.long";a:2:{i:0;R:26222;i:1;R:9;}s:25:"1230:app-errors.maxlength";a:2:{i:0;R:26222;i:1;R:9;}s:25:"1230:app-errors.minlength";a:2:{i:0;R:26222;i:1;R:9;}s:24:"1230:app-errors.notequal";a:2:{i:0;R:26222;i:1;R:9;}s:21:"1230:app-errors.range";a:2:{i:0;R:26222;i:1;R:9;}s:24:"1230:app-errors.required";a:2:{i:0;R:26222;i:1;R:9;}s:21:"1230:app-errors.short";a:2:{i:0;R:26222;i:1;R:9;}s:23:"1230:app-label.accounts";a:2:{i:0;R:26222;i:1;R:9;}s:25:"1230:app-label.admintasks";a:2:{i:0;R:26222;i:1;R:9;}s:21:"1230:app-label.atrisk";a:2:{i:0;R:26222;i:1;R:9;}s:21:"1230:app-label.branch";a:2:{i:0;R:26222;i:1;R:9;}s:21:"1230:app-label.center";a:2:{i:0;R:26222;i:1;R:9;}s:21:"1230:app-label.client";a:2:{i:0;R:26222;i:1;R:9;}s:22:"1230:app-label.clients";a:2:{i:0;R:26222;i:1;R:9;}s:30:"1230:app-label.collectionsheet";a:2:{i:0;R:26222;i:1;R:9;}s:31:"1230:app-label.collectionsheets";a:2:{i:0;R:26222;i:1;R:9;}s:21:"1230:app-label.create";a:2:{i:0;R:26222;i:1;R:9;}s:24:"1230:app-label.createnew";a:2:{i:0;R:26222;i:1;R:9;}s:19:"1230:app-label.data";a:2:{i:0;R:26222;i:1;R:9;}s:30:"1230:app-label.delinquentloans";a:2:{i:0;R:26222;i:1;R:9;}s:20:"1230:app-label.enter";a:2:{i:0;R:26222;i:1;R:9;}s:20:"1230:app-label.group";a:2:{i:0;R:26222;i:1;R:9;}s:19:"1230:app-label.help";a:2:{i:0;R:26222;i:1;R:9;}s:31:"1230:app-label.insuranceaccount";a:2:{i:0;R:26222;i:1;R:9;}s:26:"1230:app-label.loanaccount";a:2:{i:0;R:26222;i:1;R:9;}s:26:"1230:app-label.loanofficer";a:2:{i:0;R:26222;i:1;R:9;}s:21:"1230:app-label.manage";a:2:{i:0;R:26222;i:1;R:9;}s:29:"1230:app-label.manageexisting";a:2:{i:0;R:26222;i:1;R:9;}s:22:"1230:app-label.opennew";a:2:{i:0;R:26222;i:1;R:9;}s:24:"1230:app-label.portfolio";a:2:{i:0;R:26222;i:1;R:9;}s:20:"1230:app-label.print";a:2:{i:0;R:26222;i:1;R:9;}s:25:"1230:app-label.quickstart";a:2:{i:0;R:26222;i:1;R:9;}s:21:"1230:app-label.report";a:2:{i:0;R:26222;i:1;R:9;}s:22:"1230:app-label.reports";a:2:{i:0;R:26222;i:1;R:9;}s:29:"1230:app-label.savingsaccount";a:2:{i:0;R:26222;i:1;R:9;}s:22:"1230:app-label.seealso";a:2:{i:0;R:26222;i:1;R:9;}s:20:"1230:app-label.tasks";a:2:{i:0;R:26222;i:1;R:9;}s:19:"1230:app-label.view";a:2:{i:0;R:26222;i:1;R:9;}s:24:"1230:app-label.w/ocenter";a:2:{i:0;R:26222;i:1;R:9;}s:27:"1230:app-label.yoursettings";a:2:{i:0;R:26222;i:1;R:9;}s:35:"1230:apt-acceptedpaymenttype.cancel";a:2:{i:0;s:13:"out-mifos-apt";i:1;R:9;}s:35:"1230:apt-acceptedpaymenttype.submit";a:2:{i:0;R:26276;i:1;R:9;}s:34:"1230:apt-acceptedpaymenttype.admin";a:2:{i:0;R:26276;i:1;R:9;}s:46:"1230:apt-acceptedpaymenttype.clientgroupcenter";a:2:{i:0;R:26276;i:1;R:9;}s:54:"1230:apt-acceptedpaymenttype.defineacceptedpaymenttype";a:2:{i:0;R:26276;i:1;R:9;}s:36:"1230:apt-acceptedpaymenttype.deposit";a:2:{i:0;R:26276;i:1;R:9;}s:41:"1230:apt-acceptedpaymenttype.disbursement";a:2:{i:0;R:26276;i:1;R:9;}s:32:"1230:apt-acceptedpaymenttype.fee";a:2:{i:0;R:26276;i:1;R:9;}s:41:"1230:apt-acceptedpaymenttype.instruction1";a:2:{i:0;R:26276;i:1;R:9;}s:41:"1230:apt-acceptedpaymenttype.instruction2";a:2:{i:0;R:26276;i:1;R:9;}s:33:"1230:apt-acceptedpaymenttype.loan";a:2:{i:0;R:26276;i:1;R:9;}s:38:"1230:apt-acceptedpaymenttype.repayment";a:2:{i:0;R:26276;i:1;R:9;}s:35:"1230:apt-acceptedpaymenttype.saving";a:2:{i:0;R:26276;i:1;R:9;}s:39:"1230:apt-acceptedpaymenttype.withdrawal";a:2:{i:0;R:26276;i:1;R:9;}s:29:"1230:as-accountstatus.account";a:2:{i:0;s:12:"out-mifos-as";i:1;R:9;}s:34:"1230:as-accountstatus.accountowner";a:2:{i:0;R:26291;i:1;R:9;}s:28:"1230:as-accountstatus.acctid";a:2:{i:0;R:26291;i:1;R:9;}s:30:"1230:as-accountstatus.approved";a:2:{i:0;R:26291;i:1;R:9;}s:28:"1230:as-accountstatus.branch";a:2:{i:0;R:26291;i:1;R:9;}s:28:"1230:as-accountstatus.cancel";a:2:{i:0;R:26291;i:1;R:9;}s:42:"1230:as-accountstatus.approvemultipleloans";a:2:{i:0;R:26291;i:1;R:9;}s:28:"1230:as-accountstatus.client";a:2:{i:0;R:26291;i:1;R:9;}s:34:"1230:as-accountstatus.confirmation";a:2:{i:0;R:26291;i:1;R:9;}s:35:"1230:as-accountstatus.currentstatus";a:2:{i:0;R:26291;i:1;R:9;}s:35:"1230:as-accountstatus.disbursaldate";a:2:{i:0;R:26291;i:1;R:9;}s:30:"1230:as-accountstatus.foundfor";a:2:{i:0;R:26291;i:1;R:9;}s:40:"1230:as-accountstatus.hierarchydelimiter";a:2:{i:0;R:26291;i:1;R:9;}s:24:"1230:as-accountstatus.id";a:2:{i:0;R:26291;i:1;R:9;}s:24:"1230:as-accountstatus.in";a:2:{i:0;R:26291;i:1;R:9;}s:26:"1230:as-accountstatus.loan";a:2:{i:0;R:26291;i:1;R:9;}s:33:"1230:as-accountstatus.loanofficer";a:2:{i:0;R:26291;i:1;R:9;}s:32:"1230:as-accountstatus.loanamount";a:2:{i:0;R:26291;i:1;R:9;}s:38:"1230:as-accountstatus.loanofficercolon";a:2:{i:0;R:26291;i:1;R:9;}s:31:"1230:as-accountstatus.newstatus";a:2:{i:0;R:26291;i:1;R:9;}s:35:"1230:as-accountstatus.noresultfound";a:2:{i:0;R:26291;i:1;R:9;}s:26:"1230:as-accountstatus.note";a:2:{i:0;R:26291;i:1;R:9;}s:31:"1230:as-accountstatus.resultsin";a:2:{i:0;R:26291;i:1;R:9;}s:28:"1230:as-accountstatus.search";a:2:{i:0;R:26291;i:1;R:9;}s:28:"1230:as-accountstatus.select";a:2:{i:0;R:26291;i:1;R:9;}s:27:"1230:as-accountstatus.state";a:2:{i:0;R:26291;i:1;R:9;}s:35:"1230:as-accountstatus.statusmessage";a:2:{i:0;R:26291;i:1;R:9;}s:28:"1230:as-accountstatus.submit";a:2:{i:0;R:26291;i:1;R:9;}s:26:"1230:as-accountstatus.type";a:2:{i:0;R:26291;i:1;R:9;}s:34:"1230:as-accountstauts.searchheader";a:2:{i:0;R:26291;i:1;R:9;}s:26:"1230:cash-cashflow.heading";a:2:{i:0;s:18:"out-mifos-cashflow";i:1;R:9;}s:25:"1230:cash-cashflow.months";a:2:{i:0;R:26322;i:1;R:9;}s:26:"1230:cash-cashflow.expense";a:2:{i:0;R:26322;i:1;R:9;}s:26:"1230:cash-cashflow.revenue";a:2:{i:0;R:26322;i:1;R:9;}s:24:"1230:cash-cashflow.notes";a:2:{i:0;R:26322;i:1;R:9;}s:31:"1230:cash-cashflow.totalcapital";a:2:{i:0;R:26322;i:1;R:9;}s:33:"1230:cash-cashflow.totalliability";a:2:{i:0;R:26322;i:1;R:9;}s:25:"1230:cash-cashflow.submit";a:2:{i:0;R:26322;i:1;R:9;}s:25:"1230:cash-cashflow.cancel";a:2:{i:0;R:26322;i:1;R:9;}s:47:"1230:cash-cashflowform.monthlycashflows.expense";a:2:{i:0;R:26322;i:1;R:9;}s:47:"1230:cash-cashflowform.monthlycashflows.revenue";a:2:{i:0;R:26322;i:1;R:9;}s:45:"1230:cash-cashflowform.monthlycashflows.notes";a:2:{i:0;R:26322;i:1;R:9;}s:69:"1230:cash-cashflowform.cumulativecashflow.should.be.greater.than.zero";a:2:{i:0;R:26322;i:1;R:9;}s:63:"1230:cash-cashflowform.totalcapital.should.be.greater.than.zero";a:2:{i:0;R:26322;i:1;R:9;}s:60:"1230:cash-cashflowform.totalliability.should.be.non.negative";a:2:{i:0;R:26322;i:1;R:9;}s:55:"1230:cash-cashflowform.totalcapital.should.not.be.empty";a:2:{i:0;R:26322;i:1;R:9;}s:57:"1230:cash-cashflowform.totalliability.should.not.be.empty";a:2:{i:0;R:26322;i:1;R:9;}s:58:"1230:cash-cashflowform.indebtednessratio.more.than.allowed";a:2:{i:0;R:26322;i:1;R:9;}s:30:"1230:cash-cashflowform.message";a:2:{i:0;R:26322;i:1;R:9;}s:34:"1230:cash-cashflow.summary.heading";a:2:{i:0;R:26322;i:1;R:9;}s:40:"1230:cash-cashflow.summary.column.months";a:2:{i:0;R:26322;i:1;R:9;}s:44:"1230:cash-cashflow.summary.column.cumulative";a:2:{i:0;R:26322;i:1;R:9;}s:53:"1230:cash-cashflow.summary.column.installmentpermonth";a:2:{i:0;R:26322;i:1;R:9;}s:63:"1230:cash-cashflow.summary.column.installmentpermonthpercentage";a:2:{i:0;R:26322;i:1;R:9;}s:39:"1230:cash-cashflow.summary.column.notes";a:2:{i:0;R:26322;i:1;R:9;}s:32:"1230:center-center.assignclients";a:2:{i:0;s:16:"out-mifos-center";i:1;R:9;}s:34:"1230:center-center.accountactivity";a:2:{i:0;R:26348;i:1;R:9;}s:33:"1230:center-center.accountheading";a:2:{i:0;R:26348;i:1;R:9;}s:33:"1230:center-center.accountsummary";a:2:{i:0;R:26348;i:1;R:9;}s:34:"1230:center-center.accountsheading";a:2:{i:0;R:26348;i:1;R:9;}s:31:"1230:center-center.accountslink";a:2:{i:0;R:26348;i:1;R:9;}s:22:"1230:center-center.add";a:2:{i:0;R:26348;i:1;R:9;}s:33:"1230:center-center.additionalfees";a:2:{i:0;R:26348;i:1;R:9;}s:40:"1230:center-center.additionalfeesheading";a:2:{i:0;R:26348;i:1;R:9;}s:47:"1230:center-center.additionalinformationheading";a:2:{i:0;R:26348;i:1;R:9;}s:26:"1230:center-center.address";a:2:{i:0;R:26348;i:1;R:9;}s:27:"1230:center-center.address1";a:2:{i:0;R:26348;i:1;R:9;}s:27:"1230:center-center.address2";a:2:{i:0;R:26348;i:1;R:9;}s:27:"1230:center-center.address3";a:2:{i:0;R:26348;i:1;R:9;}s:33:"1230:center-center.addressheading";a:2:{i:0;R:26348;i:1;R:9;}s:44:"1230:center-center.administrativefeesheading";a:2:{i:0;R:26348;i:1;R:9;}s:25:"1230:center-center.amount";a:2:{i:0;R:26348;i:1;R:9;}s:28:"1230:center-center.amountdue";a:2:{i:0;R:26348;i:1;R:9;}s:33:"1230:center-center.amountduecolon";a:2:{i:0;R:26348;i:1;R:9;}s:32:"1230:center-center.amountoverdue";a:2:{i:0;R:26348;i:1;R:9;}s:34:"1230:center-center.applyadjustment";a:2:{i:0;R:26348;i:1;R:9;}s:31:"1230:center-center.applycharges";a:2:{i:0;R:26348;i:1;R:9;}s:31:"1230:center-center.applypayment";a:2:{i:0;R:26348;i:1;R:9;}s:35:"1230:center-center.applytransaction";a:2:{i:0;R:26348;i:1;R:9;}s:27:"1230:center-center.assigned";a:2:{i:0;R:26348;i:1;R:9;}s:28:"1230:center-center.available";a:2:{i:0;R:26348;i:1;R:9;}s:33:"1230:center-center.branchpipeline";a:2:{i:0;R:26348;i:1;R:9;}s:33:"1230:center-center.branchselected";a:2:{i:0;R:26348;i:1;R:9;}s:52:"1230:center-center.centerchangemembershipinstruction";a:2:{i:0;R:26348;i:1;R:9;}s:32:"1230:center-center.centercharges";a:2:{i:0;R:26348;i:1;R:9;}s:39:"1230:center-center.centerchargesheading";a:2:{i:0;R:26348;i:1;R:9;}s:39:"1230:center-center.centerdetailsheading";a:2:{i:0;R:26348;i:1;R:9;}s:43:"1230:center-center.centerinformationheading";a:2:{i:0;R:26348;i:1;R:9;}s:29:"1230:center-center.centername";a:2:{i:0;R:26348;i:1;R:9;}s:33:"1230:center-center.centerpipeline";a:2:{i:0;R:26348;i:1;R:9;}s:34:"1230:center-center.centerstartdate";a:2:{i:0;R:26348;i:1;R:9;}s:32:"1230:center-center.changeloglink";a:2:{i:0;R:26348;i:1;R:9;}s:38:"1230:center-center.changestatusheading";a:2:{i:0;R:26348;i:1;R:9;}s:46:"1230:center-center.changestatuspageinstruction";a:2:{i:0;R:26348;i:1;R:9;}s:26:"1230:center-center.charges";a:2:{i:0;R:26348;i:1;R:9;}s:25:"1230:center-center.choose";a:2:{i:0;R:26348;i:1;R:9;}s:23:"1230:center-center.city";a:2:{i:0;R:26348;i:1;R:9;}s:32:"1230:center-center.clientcharges";a:2:{i:0;R:26348;i:1;R:9;}s:37:"1230:center-center.closedaccountslink";a:2:{i:0;R:26348;i:1;R:9;}s:34:"1230:center-center.collectionsheet";a:2:{i:0;R:26348;i:1;R:9;}s:24:"1230:center-center.colon";a:2:{i:0;R:26348;i:1;R:9;}s:30:"1230:center-center.confmessage";a:2:{i:0;R:26348;i:1;R:9;}s:46:"1230:center-center.confirmation.allinformation";a:2:{i:0;R:26348;i:1;R:9;}s:44:"1230:center-center.confirmation.information1";a:2:{i:0;R:26348;i:1;R:9;}s:44:"1230:center-center.confirmation.information2";a:2:{i:0;R:26348;i:1;R:9;}s:44:"1230:center-center.confirmation.information3";a:2:{i:0;R:26348;i:1;R:9;}s:44:"1230:center-center.confirmation.namesystemid";a:2:{i:0;R:26348;i:1;R:9;}s:40:"1230:center-center.confirmation.nextstep";a:2:{i:0;R:26348;i:1;R:9;}s:36:"1230:center-center.confirmation.note";a:2:{i:0;R:26348;i:1;R:9;}s:38:"1230:center-center.confirmationmessage";a:2:{i:0;R:26348;i:1;R:9;}s:26:"1230:center-center.country";a:2:{i:0;R:26348;i:1;R:9;}s:38:"1230:center-center.createeditpagetitle";a:2:{i:0;R:26348;i:1;R:9;}s:33:"1230:center-center.creategroupnew";a:2:{i:0;R:26348;i:1;R:9;}s:38:"1230:center-center.createlinknewcenter";a:2:{i:0;R:26348;i:1;R:9;}s:28:"1230:center-center.createnew";a:2:{i:0;R:26348;i:1;R:9;}s:35:"1230:center-center.createnewaccount";a:2:{i:0;R:26348;i:1;R:9;}s:34:"1230:center-center.createnewcenter";a:2:{i:0;R:26348;i:1;R:9;}s:38:"1230:center-center.createnewcenterlink";a:2:{i:0;R:26348;i:1;R:9;}s:46:"1230:center-center.createpagecancelinstruction";a:2:{i:0;R:26348;i:1;R:9;}s:40:"1230:center-center.createpageinstruction";a:2:{i:0;R:26348;i:1;R:9;}s:34:"1230:center-center.createpagetitle";a:2:{i:0;R:26348;i:1;R:9;}s:45:"1230:center-center.createprevieweditpagetitle";a:2:{i:0;R:26348;i:1;R:9;}s:47:"1230:center-center.createpreviewpageinstruction";a:2:{i:0;R:26348;i:1;R:9;}s:41:"1230:center-center.createpreviewpagetitle";a:2:{i:0;R:26348;i:1;R:9;}s:39:"1230:center-center.currentstatusheading";a:2:{i:0;R:26348;i:1;R:9;}s:29:"1230:center-center.detailsnow";a:2:{i:0;R:26348;i:1;R:9;}s:23:"1230:center-center.edit";a:2:{i:0;R:26348;i:1;R:9;}s:40:"1230:center-center.editcenterdetailslink";a:2:{i:0;R:26348;i:1;R:9;}s:44:"1230:center-center.editcenterinformationlink";a:2:{i:0;R:26348;i:1;R:9;}s:39:"1230:center-center.editcenterstatuslink";a:2:{i:0;R:26348;i:1;R:9;}s:34:"1230:center-center.editinformation";a:2:{i:0;R:26348;i:1;R:9;}s:45:"1230:center-center.editinformationinstruction";a:2:{i:0;R:26348;i:1;R:9;}s:44:"1230:center-center.editpagecancelinstruction";a:2:{i:0;R:26348;i:1;R:9;}s:45:"1230:center-center.editpagecancelinstruction1";a:2:{i:0;R:26348;i:1;R:9;}s:45:"1230:center-center.editpagecancelinstruction2";a:2:{i:0;R:26348;i:1;R:9;}s:24:"1230:center-center.enter";a:2:{i:0;R:26348;i:1;R:9;}s:40:"1230:center-center.entercenterinformaton";a:2:{i:0;R:26348;i:1;R:9;}s:29:"1230:center-center.externalid";a:2:{i:0;R:26348;i:1;R:9;}s:33:"1230:center-center.externalidinfo";a:2:{i:0;R:26348;i:1;R:9;}s:26:"1230:center-center.feetype";a:2:{i:0;R:26348;i:1;R:9;}s:35:"1230:center-center.fieldinstruction";a:2:{i:0;R:26348;i:1;R:9;}s:31:"1230:center-center.groupcharges";a:2:{i:0;R:26348;i:1;R:9;}s:25:"1230:center-center.groups";a:2:{i:0;R:26348;i:1;R:9;}s:30:"1230:center-center.groupslink1";a:2:{i:0;R:26348;i:1;R:9;}s:30:"1230:center-center.groupslink2";a:2:{i:0;R:26348;i:1;R:9;}s:30:"1230:center-center.groupslink3";a:2:{i:0;R:26348;i:1;R:9;}s:30:"1230:center-center.information";a:2:{i:0;R:26348;i:1;R:9;}s:33:"1230:center-center.instructionset";a:2:{i:0;R:26348;i:1;R:9;}s:26:"1230:center-center.loanoff";a:2:{i:0;R:26348;i:1;R:9;}s:30:"1230:center-center.loanofficer";a:2:{i:0;R:26348;i:1;R:9;}s:36:"1230:center-center.locationofmeeting";a:2:{i:0;R:26348;i:1;R:9;}s:25:"1230:center-center.manage";a:2:{i:0;R:26348;i:1;R:9;}s:34:"1230:center-center.managenewcenter";a:2:{i:0;R:26348;i:1;R:9;}s:34:"1230:center-center.meetingschedule";a:2:{i:0;R:26348;i:1;R:9;}s:38:"1230:center-center.meetingschedulelink";a:2:{i:0;R:26348;i:1;R:9;}s:34:"1230:center-center.meetingsheading";a:2:{i:0;R:26348;i:1;R:9;}s:31:"1230:center-center.meetingslink";a:2:{i:0;R:26348;i:1;R:9;}s:37:"1230:center-center.meetingssubheading";a:2:{i:0;R:26348;i:1;R:9;}s:29:"1230:center-center.membership";a:2:{i:0;R:26348;i:1;R:9;}s:33:"1230:center-center.mfijoiningdate";a:2:{i:0;R:26348;i:1;R:9;}s:23:"1230:center-center.name";a:2:{i:0;R:26348;i:1;R:9;}s:31:"1230:center-center.namerequired";a:2:{i:0;R:26348;i:1;R:9;}s:28:"1230:center-center.newstatus";a:2:{i:0;R:26348;i:1;R:9;}s:21:"1230:center-center.no";a:2:{i:0;R:26348;i:1;R:9;}s:27:"1230:center-center.nogroups";a:2:{i:0;R:26348;i:1;R:9;}s:30:"1230:center-center.noofclients";a:2:{i:0;R:26348;i:1;R:9;}s:29:"1230:center-center.noofgroups";a:2:{i:0;R:26348;i:1;R:9;}s:23:"1230:center-center.note";a:2:{i:0;R:26348;i:1;R:9;}s:28:"1230:center-center.noteslink";a:2:{i:0;R:26348;i:1;R:9;}s:40:"1230:center-center.officialtitlesheading";a:2:{i:0;R:26348;i:1;R:9;}s:44:"1230:center-center.performancehistoryheading";a:2:{i:0;R:26348;i:1;R:9;}s:30:"1230:center-center.periodicity";a:2:{i:0;R:26348;i:1;R:9;}s:34:"1230:center-center.portfolioatrisk";a:2:{i:0;R:26348;i:1;R:9;}s:29:"1230:center-center.postalcode";a:2:{i:0;R:26348;i:1;R:9;}s:26:"1230:center-center.preview";a:2:{i:0;R:26348;i:1;R:9;}s:43:"1230:center-center.previewinformationcentre";a:2:{i:0;R:26348;i:1;R:9;}s:40:"1230:center-center.recentaccountactivity";a:2:{i:0;R:26348;i:1;R:9;}s:30:"1230:center-center.recentnotes";a:2:{i:0;R:26348;i:1;R:9;}s:39:"1230:center-center.recurringaccountfees";a:2:{i:0;R:26348;i:1;R:9;}s:31:"1230:center-center.reviewsubmit";a:2:{i:0;R:26348;i:1;R:9;}s:37:"1230:center-center.savingsaccountlink";a:2:{i:0;R:26348;i:1;R:9;}s:33:"1230:center-center.savingsheading";a:2:{i:0;R:26348;i:1;R:9;}s:39:"1230:center-center.searchcenterpipeline";a:2:{i:0;R:26348;i:1;R:9;}s:38:"1230:center-center.searchgrouppipeline";a:2:{i:0;R:26348;i:1;R:9;}s:32:"1230:center-center.searchheading";a:2:{i:0;R:26348;i:1;R:9;}s:37:"1230:center-center.searchinstructions";a:2:{i:0;R:26348;i:1;R:9;}s:29:"1230:center-center.searchmsg1";a:2:{i:0;R:26348;i:1;R:9;}s:35:"1230:center-center.searchresultname";a:2:{i:0;R:26348;i:1;R:9;}s:47:"1230:center-center.searchresultpageinstructions";a:2:{i:0;R:26348;i:1;R:9;}s:44:"1230:center-center.searchselectcenterheading";a:2:{i:0;R:26348;i:1;R:9;}s:27:"1230:center-center.selected";a:2:{i:0;R:26348;i:1;R:9;}s:24:"1230:center-center.state";a:2:{i:0;R:26348;i:1;R:9;}s:25:"1230:center-center.status";a:2:{i:0;R:26348;i:1;R:9;}s:26:"1230:center-center.status1";a:2:{i:0;R:26348;i:1;R:9;}s:29:"1230:center-center.surveylink";a:2:{i:0;R:26348;i:1;R:9;}s:33:"1230:center-center.surveysheading";a:2:{i:0;R:26348;i:1;R:9;}s:27:"1230:center-center.systemid";a:2:{i:0;R:26348;i:1;R:9;}s:28:"1230:center-center.telephone";a:2:{i:0;R:26348;i:1;R:9;}s:24:"1230:center-center.total";a:2:{i:0;R:26348;i:1;R:9;}s:37:"1230:center-center.totalloanportfolio";a:2:{i:0;R:26348;i:1;R:9;}s:31:"1230:center-center.totalsavings";a:2:{i:0;R:26348;i:1;R:9;}s:37:"1230:center-center.transactionhistory";a:2:{i:0;R:26348;i:1;R:9;}s:34:"1230:center-center.upcomingcharges";a:2:{i:0;R:26348;i:1;R:9;}s:34:"1230:center-center.userinformation";a:2:{i:0;R:26348;i:1;R:9;}s:23:"1230:center-center.view";a:2:{i:0;R:26348;i:1;R:9;}s:40:"1230:center-center.viewcenterdetailslink";a:2:{i:0;R:26348;i:1;R:9;}s:34:"1230:center-center.viewdetailsinfo";a:2:{i:0;R:26348;i:1;R:9;}s:30:"1230:center-center.viewdetails";a:2:{i:0;R:26348;i:1;R:9;}s:22:"1230:center-center.acc";a:2:{i:0;R:26348;i:1;R:9;}s:26:"1230:center-center.account";a:2:{i:0;R:26348;i:1;R:9;}s:36:"1230:center-center.backtodetailspage";a:2:{i:0;R:26348;i:1;R:9;}s:26:"1230:center-center.balance";a:2:{i:0;R:26348;i:1;R:9;}s:32:"1230:center-center.branchoffices";a:2:{i:0;R:26348;i:1;R:9;}s:36:"1230:center-center.cancelinstruction";a:2:{i:0;R:26348;i:1;R:9;}s:25:"1230:center-center.change";a:2:{i:0;R:26348;i:1;R:9;}s:48:"1230:center-center.changecentermembershipheading";a:2:{i:0;R:26348;i:1;R:9;}s:52:"1230:center-center.changecentermembershipinstruction";a:2:{i:0;R:26348;i:1;R:9;}s:53:"1230:center-center.changecentermembershipinstruction1";a:2:{i:0;R:26348;i:1;R:9;}s:53:"1230:center-center.changecentermembershipinstruction2";a:2:{i:0;R:26348;i:1;R:9;}s:53:"1230:center-center.changecentermembershipinstruction3";a:2:{i:0;R:26348;i:1;R:9;}s:28:"1230:center-center.changelog";a:2:{i:0;R:26348;i:1;R:9;}s:35:"1230:center-center.clickinstruction";a:2:{i:0;R:26348;i:1;R:9;}s:23:"1230:center-center.dash";a:2:{i:0;R:26348;i:1;R:9;}s:23:"1230:center-center.date";a:2:{i:0;R:26348;i:1;R:9;}s:30:"1230:center-center.description";a:2:{i:0;R:26348;i:1;R:9;}s:26:"1230:center-center.details";a:2:{i:0;R:26348;i:1;R:9;}s:25:"1230:center-center.hashof";a:2:{i:0;R:26348;i:1;R:9;}s:40:"1230:center-center.namechangeinstruction";a:2:{i:0;R:26348;i:1;R:9;}s:28:"1230:center-center.portfolio";a:2:{i:0;R:26348;i:1;R:9;}s:27:"1230:center-center.postedby";a:2:{i:0;R:26348;i:1;R:9;}s:29:"1230:center-center.reccredate";a:2:{i:0;R:26348;i:1;R:9;}s:25:"1230:center-center.remove";a:2:{i:0;R:26348;i:1;R:9;}s:20:"1230:center-center.s";a:2:{i:0;R:26348;i:1;R:9;}s:25:"1230:center-center.select";a:2:{i:0;R:26348;i:1;R:9;}s:24:"1230:center-center.waive";a:2:{i:0;R:26348;i:1;R:9;}s:42:"1230:center-customer.activeaccountspresent";a:2:{i:0;R:26348;i:1;R:9;}s:35:"1230:center-customer.branchinactive";a:2:{i:0;R:26348;i:1;R:9;}s:33:"1230:center-customer.createfailed";a:2:{i:0;R:26348;i:1;R:9;}s:42:"1230:center-customer.duplicatecustomername";a:2:{i:0;R:26348;i:1;R:9;}s:33:"1230:center-customer.feesinactive";a:2:{i:0;R:26348;i:1;R:9;}s:40:"1230:center-customer.incompletechecklist";a:2:{i:0;R:26348;i:1;R:9;}s:35:"1230:center-customer.invalidversion";a:2:{i:0;R:26348;i:1;R:9;}s:40:"1230:center-customer.loanofficerinactive";a:2:{i:0;R:26348;i:1;R:9;}s:36:"1230:center-customer.meetingrequired";a:2:{i:0;R:26348;i:1;R:9;}s:41:"1230:center-customer.statechangeexception";a:2:{i:0;R:26348;i:1;R:9;}s:40:"1230:center-customer.statusnotesrequired";a:2:{i:0;R:26348;i:1;R:9;}s:33:"1230:center-customer.updatefailed";a:2:{i:0;R:26348;i:1;R:9;}s:33:"1230:center-duplicatefeeexception";a:2:{i:0;R:26348;i:1;R:9;}s:31:"1230:center-fatalerrorexception";a:2:{i:0;R:26348;i:1;R:9;}s:37:"1230:center-loanofficerblankexception";a:2:{i:0;R:26348;i:1;R:9;}s:43:"1230:center-loanofficernotassignedexception";a:2:{i:0;R:26348;i:1;R:9;}s:40:"1230:center-loanofficerrequiredexception";a:2:{i:0;R:26348;i:1;R:9;}s:33:"1230:center-namerequiredexception";a:2:{i:0;R:26348;i:1;R:9;}s:35:"1230:center-statusrequiredexception";a:2:{i:0;R:26348;i:1;R:9;}s:25:"1230:center-button.search";a:2:{i:0;R:26348;i:1;R:9;}s:25:"1230:center-button.cancel";a:2:{i:0;R:26348;i:1;R:9;}s:26:"1230:center-button.preview";a:2:{i:0;R:26348;i:1;R:9;}s:27:"1230:center-button.previous";a:2:{i:0;R:26348;i:1;R:9;}s:33:"1230:center-button.previousstatus";a:2:{i:0;R:26348;i:1;R:9;}s:25:"1230:center-button.submit";a:2:{i:0;R:26348;i:1;R:9;}s:34:"1230:center-center.seeallnoteslink";a:2:{i:0;R:26348;i:1;R:9;}s:36:"1230:center-cf.lookupentity.entityid";a:2:{i:0;R:26348;i:1;R:9;}s:38:"1230:center-error.activity.not.allowed";a:2:{i:0;R:26348;i:1;R:9;}s:34:"1230:center-error.unknownexception";a:2:{i:0;R:26348;i:1;R:9;}s:37:"1230:center-error.versionnodonotmatch";a:2:{i:0;R:26348;i:1;R:9;}s:45:"1230:center-errors.customer.duplicatecustomer";a:2:{i:0;R:26348;i:1;R:9;}s:48:"1230:center-errors.customer.duplicateperiodicfee";a:2:{i:0;R:26348;i:1;R:9;}s:48:"1230:center-errors.customer.feefrequencymismatch";a:2:{i:0;R:26348;i:1;R:9;}s:51:"1230:center-errors.customer.specifycustomfieldvalue";a:2:{i:0;R:26348;i:1;R:9;}s:43:"1230:center-errors.customer.customdatefield";a:2:{i:0;R:26348;i:1;R:9;}s:44:"1230:center-errors.customer.specifyfeeamount";a:2:{i:0;R:26348;i:1;R:9;}s:46:"1230:center-errors.customer.specifyloanofficer";a:2:{i:0;R:26348;i:1;R:9;}s:42:"1230:center-errors.customer.specifymeeting";a:2:{i:0;R:26348;i:1;R:9;}s:39:"1230:center-errors.customer.specifyname";a:2:{i:0;R:26348;i:1;R:9;}s:22:"1230:center-errors.fee";a:2:{i:0;R:26348;i:1;R:9;}s:26:"1230:center-errors.generic";a:2:{i:0;R:26348;i:1;R:9;}s:32:"1230:center-errors.invalidfeeamt";a:2:{i:0;R:26348;i:1;R:9;}s:39:"1230:center-errors.mfijoiningdateneeded";a:2:{i:0;R:26348;i:1;R:9;}s:40:"1230:center-errors.invalidmfijoiningdate";a:2:{i:0;R:26348;i:1;R:9;}s:28:"1230:center-errors.mandatory";a:2:{i:0;R:26348;i:1;R:9;}s:26:"1230:center-errors.maskmsg";a:2:{i:0;R:26348;i:1;R:9;}s:28:"1230:center-errors.maxlength";a:2:{i:0;R:26348;i:1;R:9;}s:33:"1230:center-errors.nosearchstring";a:2:{i:0;R:26348;i:1;R:9;}s:27:"1230:center-errors.required";a:2:{i:0;R:26348;i:1;R:9;}s:38:"1230:center-errors.requiredcustomfield";a:2:{i:0;R:26348;i:1;R:9;}s:52:"1230:center-exception.framework.concurrencyexception";a:2:{i:0;R:26348;i:1;R:9;}s:53:"1230:center-exception.framework.doublesubmitexception";a:2:{i:0;R:26348;i:1;R:9;}s:60:"1230:center-exception.framework.fieldconfiguration.mandatory";a:2:{i:0;R:26348;i:1;R:9;}s:45:"1230:cfg-configuration.businessworkactivities";a:2:{i:0;s:13:"out-mifos-cfg";i:1;R:9;}s:30:"1230:cfg-configuration.meeting";a:2:{i:0;R:26582;i:1;R:9;}s:29:"1230:cfg-configuration.active";a:2:{i:0;R:26582;i:1;R:9;}s:37:"1230:cfg-configuration.activebadstand";a:2:{i:0;R:26582;i:1;R:9;}s:38:"1230:cfg-configuration.activegoodstand";a:2:{i:0;R:26582;i:1;R:9;}s:26:"1230:cfg-configuration.add";a:2:{i:0;R:26582;i:1;R:9;}s:31:"1230:cfg-configuration.add_edit";a:2:{i:0;R:26582;i:1;R:9;}s:43:"1230:cfg-configuration.add_editlookupoption";a:2:{i:0;R:26582;i:1;R:9;}s:44:"1230:cfg-configuration.add_editlookupoptions";a:2:{i:0;R:26582;i:1;R:9;}s:36:"1230:cfg-configuration.add_new_field";a:2:{i:0;R:26582;i:1;R:9;}s:47:"1230:cfg-configuration.additional_fields_detail";a:2:{i:0;R:26582;i:1;R:9;}s:52:"1230:cfg-configuration.additional_fields_information";a:2:{i:0;R:26582;i:1;R:9;}s:30:"1230:cfg-configuration.address";a:2:{i:0;R:26582;i:1;R:9;}s:31:"1230:cfg-configuration.address1";a:2:{i:0;R:26582;i:1;R:9;}s:31:"1230:cfg-configuration.address2";a:2:{i:0;R:26582;i:1;R:9;}s:31:"1230:cfg-configuration.address3";a:2:{i:0;R:26582;i:1;R:9;}s:28:"1230:cfg-configuration.admin";a:2:{i:0;R:26582;i:1;R:9;}s:31:"1230:cfg-configuration.approved";a:2:{i:0;R:26582;i:1;R:9;}s:33:"1230:cfg-configuration.areaoffice";a:2:{i:0;R:26582;i:1;R:9;}s:32:"1230:cfg-configuration.assigning";a:2:{i:0;R:26582;i:1;R:9;}s:35:"1230:cfg-configuration.branchoffice";a:2:{i:0;R:26582;i:1;R:9;}s:32:"1230:cfg-configuration.bulkentry";a:2:{i:0;R:26582;i:1;R:9;}s:39:"1230:cfg-configuration.businessactivity";a:2:{i:0;R:26582;i:1;R:9;}s:29:"1230:cfg-configuration.cancel";a:2:{i:0;R:26582;i:1;R:9;}s:27:"1230:cfg-configuration.cash";a:2:{i:0;R:26582;i:1;R:9;}s:31:"1230:cfg-configuration.category";a:2:{i:0;R:26582;i:1;R:9;}s:29:"1230:cfg-configuration.center";a:2:{i:0;R:26582;i:1;R:9;}s:28:"1230:cfg-configuration.check";a:2:{i:0;R:26582;i:1;R:9;}s:34:"1230:cfg-configuration.citizenship";a:2:{i:0;R:26582;i:1;R:9;}s:27:"1230:cfg-configuration.city";a:2:{i:0;R:26582;i:1;R:9;}s:29:"1230:cfg-configuration.client";a:2:{i:0;R:26582;i:1;R:9;}s:31:"1230:cfg-configuration.clientid";a:2:{i:0;R:26582;i:1;R:9;}s:30:"1230:cfg-configuration.clients";a:2:{i:0;R:26582;i:1;R:9;}s:29:"1230:cfg-configuration.closed";a:2:{i:0;R:26582;i:1;R:9;}s:36:"1230:cfg-configuration.closeobligmet";a:2:{i:0;R:26582;i:1;R:9;}s:33:"1230:cfg-configuration.closeresch";a:2:{i:0;R:26582;i:1;R:9;}s:36:"1230:cfg-configuration.closewriteoff";a:2:{i:0;R:26582;i:1;R:9;}s:37:"1230:cfg-configuration.collateraltype";a:2:{i:0;R:26582;i:1;R:9;}s:42:"1230:cfg-configuration.collateraltypenotes";a:2:{i:0;R:26582;i:1;R:9;}s:30:"1230:cfg-configuration.country";a:2:{i:0;R:26582;i:1;R:9;}s:32:"1230:cfg-configuration.data_type";a:2:{i:0;R:26582;i:1;R:9;}s:36:"1230:cfg-configuration.default_value";a:2:{i:0;R:26582;i:1;R:9;}s:29:"1230:cfg-configuration.define";a:2:{i:0;R:26582;i:1;R:9;}s:47:"1230:cfg-configuration.define_additional_fields";a:2:{i:0;R:26582;i:1;R:9;}s:45:"1230:cfg-configuration.definehiddenmandfields";a:2:{i:0;R:26582;i:1;R:9;}s:35:"1230:cfg-configuration.definelabels";a:2:{i:0;R:26582;i:1;R:9;}s:42:"1230:cfg-configuration.definelookupoptions";a:2:{i:0;R:26582;i:1;R:9;}s:27:"1230:cfg-configuration.edit";a:2:{i:0;R:26582;i:1;R:9;}s:44:"1230:cfg-configuration.edit_additional_field";a:2:{i:0;R:26582;i:1;R:9;}s:45:"1230:cfg-configuration.edit_additional_fields";a:2:{i:0;R:26582;i:1;R:9;}s:37:"1230:cfg-configuration.educationlevel";a:2:{i:0;R:26582;i:1;R:9;}s:58:"1230:cfg-configuration.enter_additional_fields_information";a:2:{i:0;R:26582;i:1;R:9;}s:32:"1230:cfg-configuration.ethnicity";a:2:{i:0;R:26582;i:1;R:9;}s:33:"1230:cfg-configuration.externalid";a:2:{i:0;R:26582;i:1;R:9;}s:36:"1230:cfg-configuration.familydetails";a:2:{i:0;R:26582;i:1;R:9;}s:29:"1230:cfg-configuration.fields";a:2:{i:0;R:26582;i:1;R:9;}s:29:"1230:cfg-configuration.govtid";a:2:{i:0;R:26582;i:1;R:9;}s:36:"1230:cfg-configuration.graceallrepay";a:2:{i:0;R:26582;i:1;R:9;}s:33:"1230:cfg-configuration.gracetypes";a:2:{i:0;R:26582;i:1;R:9;}s:28:"1230:cfg-configuration.group";a:2:{i:0;R:26582;i:1;R:9;}s:34:"1230:cfg-configuration.handicapped";a:2:{i:0;R:26582;i:1;R:9;}s:33:"1230:cfg-configuration.headoffice";a:2:{i:0;R:26582;i:1;R:9;}s:39:"1230:cfg-configuration.hiddenmandfields";a:2:{i:0;R:26582;i:1;R:9;}s:27:"1230:cfg-configuration.hide";a:2:{i:0;R:26582;i:1;R:9;}s:31:"1230:cfg-configuration.inactive";a:2:{i:0;R:26582;i:1;R:9;}s:35:"1230:cfg-configuration.instruction1";a:2:{i:0;R:26582;i:1;R:9;}s:35:"1230:cfg-configuration.instruction2";a:2:{i:0;R:26582;i:1;R:9;}s:31:"1230:cfg-configuration.interest";a:2:{i:0;R:26582;i:1;R:9;}s:28:"1230:cfg-configuration.label";a:2:{i:0;R:26582;i:1;R:9;}s:29:"1230:cfg-configuration.labels";a:2:{i:0;R:26582;i:1;R:9;}s:27:"1230:cfg-configuration.loan";a:2:{i:0;R:26582;i:1;R:9;}s:40:"1230:cfg-configuration.loanaccountfields";a:2:{i:0;R:26582;i:1;R:9;}s:28:"1230:cfg-configuration.loans";a:2:{i:0;R:26582;i:1;R:9;}s:36:"1230:cfg-configuration.lookupoptions";a:2:{i:0;R:26582;i:1;R:9;}s:34:"1230:cfg-configuration.lookupvalue";a:2:{i:0;R:26582;i:1;R:9;}s:32:"1230:cfg-configuration.mandatory";a:2:{i:0;R:26582;i:1;R:9;}s:35:"1230:cfg-configuration.mandatory_no";a:2:{i:0;R:26582;i:1;R:9;}s:36:"1230:cfg-configuration.mandatory_yes";a:2:{i:0;R:26582;i:1;R:9;}s:36:"1230:cfg-configuration.maritalstatus";a:2:{i:0;R:26582;i:1;R:9;}s:33:"1230:cfg-configuration.middlename";a:2:{i:0;R:26582;i:1;R:9;}s:27:"1230:cfg-configuration.misc";a:2:{i:0;R:26582;i:1;R:9;}s:27:"1230:cfg-configuration.none";a:2:{i:0;R:26582;i:1;R:9;}s:29:"1230:cfg-configuration.office";a:2:{i:0;R:26582;i:1;R:9;}s:33:"1230:cfg-configuration.officehier";a:2:{i:0;R:26582;i:1;R:9;}s:35:"1230:cfg-configuration.officertitle";a:2:{i:0;R:26582;i:1;R:9;}s:29:"1230:cfg-configuration.onhold";a:2:{i:0;R:26582;i:1;R:9;}s:34:"1230:cfg-configuration.partialappl";a:2:{i:0;R:26582;i:1;R:9;}s:35:"1230:cfg-configuration.paymentmodes";a:2:{i:0;R:26582;i:1;R:9;}s:34:"1230:cfg-configuration.pendingappr";a:2:{i:0;R:26582;i:1;R:9;}s:35:"1230:cfg-configuration.personalinfo";a:2:{i:0;R:26582;i:1;R:9;}s:32:"1230:cfg-configuration.personnel";a:2:{i:0;R:26582;i:1;R:9;}s:34:"1230:cfg-configuration.phonenumber";a:2:{i:0;R:26582;i:1;R:9;}s:28:"1230:cfg-configuration.photo";a:2:{i:0;R:26582;i:1;R:9;}s:34:"1230:cfg-configuration.please_note";a:2:{i:0;R:26582;i:1;R:9;}s:33:"1230:cfg-configuration.postalcode";a:2:{i:0;R:26582;i:1;R:9;}s:36:"1230:cfg-configuration.povertystatus";a:2:{i:0;R:26582;i:1;R:9;}s:31:"1230:cfg-configuration.prdtypes";a:2:{i:0;R:26582;i:1;R:9;}s:30:"1230:cfg-configuration.preview";a:2:{i:0;R:26582;i:1;R:9;}s:48:"1230:cfg-configuration.preview_additional_fields";a:2:{i:0;R:26582;i:1;R:9;}s:42:"1230:cfg-configuration.preview_instruction";a:2:{i:0;R:26582;i:1;R:9;}s:32:"1230:cfg-configuration.pringrace";a:2:{i:0;R:26582;i:1;R:9;}s:31:"1230:cfg-configuration.products";a:2:{i:0;R:26582;i:1;R:9;}s:36:"1230:cfg-configuration.purposeofloan";a:2:{i:0;R:26582;i:1;R:9;}s:36:"1230:cfg-configuration.receiptiddate";a:2:{i:0;R:26582;i:1;R:9;}s:32:"1230:cfg-configuration.regoffice";a:2:{i:0;R:26582;i:1;R:9;}s:29:"1230:cfg-configuration.review";a:2:{i:0;R:26582;i:1;R:9;}s:38:"1230:cfg-configuration.reviewandsubmit";a:2:{i:0;R:26582;i:1;R:9;}s:33:"1230:cfg-configuration.salutation";a:2:{i:0;R:26582;i:1;R:9;}s:30:"1230:cfg-configuration.savings";a:2:{i:0;R:26582;i:1;R:9;}s:37:"1230:cfg-configuration.secondlastname";a:2:{i:0;R:26582;i:1;R:9;}s:38:"1230:cfg-configuration.select_category";a:2:{i:0;R:26582;i:1;R:9;}s:38:"1230:cfg-configuration.sequence_number";a:2:{i:0;R:26582;i:1;R:9;}s:34:"1230:cfg-configuration.source_fund";a:2:{i:0;R:26582;i:1;R:9;}s:46:"1230:cfg-configuration.spousefatherinformation";a:2:{i:0;R:26582;i:1;R:9;}s:45:"1230:cfg-configuration.spousefathermiddlename";a:2:{i:0;R:26582;i:1;R:9;}s:49:"1230:cfg-configuration.spousefathersecondlastname";a:2:{i:0;R:26582;i:1;R:9;}s:28:"1230:cfg-configuration.state";a:2:{i:0;R:26582;i:1;R:9;}s:31:"1230:cfg-configuration.statuses";a:2:{i:0;R:26582;i:1;R:9;}s:29:"1230:cfg-configuration.submit";a:2:{i:0;R:26582;i:1;R:9;}s:35:"1230:cfg-configuration.subregoffice";a:2:{i:0;R:26582;i:1;R:9;}s:39:"1230:cfg-configuration.systemuserfields";a:2:{i:0;R:26582;i:1;R:9;}s:36:"1230:cfg-configuration.syswidefields";a:2:{i:0;R:26582;i:1;R:9;}s:34:"1230:cfg-configuration.topositions";a:2:{i:0;R:26582;i:1;R:9;}s:30:"1230:cfg-configuration.trained";a:2:{i:0;R:26582;i:1;R:9;}s:32:"1230:cfg-configuration.trainedon";a:2:{i:0;R:26582;i:1;R:9;}s:32:"1230:cfg-configuration.usertitle";a:2:{i:0;R:26582;i:1;R:9;}s:45:"1230:cfg-configuration.view_additional_fields";a:2:{i:0;R:26582;i:1;R:9;}s:31:"1230:cfg-configuration.vouchers";a:2:{i:0;R:26582;i:1;R:9;}s:39:"1230:cfg-configuration.numberofchildren";a:2:{i:0;R:26582;i:1;R:9;}s:38:"1230:cfg-errors.default_value_not_date";a:2:{i:0;R:26582;i:1;R:9;}s:40:"1230:cfg-errors.default_value_not_number";a:2:{i:0;R:26582;i:1;R:9;}s:30:"1230:cfg-errors.duplicatevalue";a:2:{i:0;R:26582;i:1;R:9;}s:25:"1230:cfg-errors.mandatory";a:2:{i:0;R:26582;i:1;R:9;}s:35:"1230:cfg-errors.mandatory_selectbox";a:2:{i:0;R:26582;i:1;R:9;}s:33:"1230:cfg-errors.mandatory_textbox";a:2:{i:0;R:26582;i:1;R:9;}s:23:"1230:cfg-errors.novalue";a:2:{i:0;R:26582;i:1;R:9;}s:22:"1230:cfg-errors.prefix";a:2:{i:0;R:26582;i:1;R:9;}s:27:"1230:cfg-errors.selectvalue";a:2:{i:0;R:26582;i:1;R:9;}s:22:"1230:cfg-errors.suffix";a:2:{i:0;R:26582;i:1;R:9;}s:23:"1230:cfg-errors.toolong";a:2:{i:0;R:26582;i:1;R:9;}s:31:"1230:checklist-checklist.active";a:2:{i:0;s:19:"out-mifos-checklist";i:1;R:9;}s:40:"1230:checklist-checklist.addnewchecklist";a:2:{i:0;R:26723;i:1;R:9;}s:30:"1230:checklist-checklist.admin";a:2:{i:0;R:26723;i:1;R:9;}s:33:"1230:checklist-checklist.approved";a:2:{i:0;R:26723;i:1;R:9;}s:35:"1230:checklist-checklist.button_add";a:2:{i:0;R:26723;i:1;R:9;}s:38:"1230:checklist-checklist.button_cancel";a:2:{i:0;R:26723;i:1;R:9;}s:39:"1230:checklist-checklist.button_preview";a:2:{i:0;R:26723;i:1;R:9;}s:46:"1230:checklist-checklist.button_removeselected";a:2:{i:0;R:26723;i:1;R:9;}s:38:"1230:checklist-checklist.button_submit";a:2:{i:0;R:26723;i:1;R:9;}s:34:"1230:checklist-checklist.cancelled";a:2:{i:0;R:26723;i:1;R:9;}s:38:"1230:checklist-checklist.checklistname";a:2:{i:0;R:26723;i:1;R:9;}s:40:"1230:checklist-checklist.checkliststatus";a:2:{i:0;R:26723;i:1;R:9;}s:38:"1230:checklist-checklist.checklisttext";a:2:{i:0;R:26723;i:1;R:9;}s:38:"1230:checklist-checklist.checklisttype";a:2:{i:0;R:26723;i:1;R:9;}s:39:"1230:checklist-checklist.checklist_name";a:2:{i:0;R:26723;i:1;R:9;}s:39:"1230:checklist-checklist.checklist_info";a:2:{i:0;R:26723;i:1;R:9;}s:41:"1230:checklist-checklist.checklistdetails";a:2:{i:0;R:26723;i:1;R:9;}s:31:"1230:checklist-checklist.client";a:2:{i:0;R:26723;i:1;R:9;}s:31:"1230:checklist-checklist.closed";a:2:{i:0;R:26723;i:1;R:9;}s:34:"1230:checklist-checklist.createdby";a:2:{i:0;R:26723;i:1;R:9;}s:36:"1230:checklist-checklist.createddate";a:2:{i:0;R:26723;i:1;R:9;}s:43:"1230:checklist-checklist.definenewchecklist";a:2:{i:0;R:26723;i:1;R:9;}s:36:"1230:checklist-checklist.description";a:2:{i:0;R:26723;i:1;R:9;}s:32:"1230:checklist-checklist.details";a:2:{i:0;R:26723;i:1;R:9;}s:39:"1230:checklist-checklist.display_status";a:2:{i:0;R:26723;i:1;R:9;}s:41:"1230:checklist-checklist.displayed_status";a:2:{i:0;R:26723;i:1;R:9;}s:36:"1230:checklist-checklist.edit_button";a:2:{i:0;R:26723;i:1;R:9;}s:39:"1230:checklist-checklist.edit_checklist";a:2:{i:0;R:26723;i:1;R:9;}s:44:"1230:checklist-checklist.edit_checklist_info";a:2:{i:0;R:26723;i:1;R:9;}s:39:"1230:checklist-checklist.enter_info_one";a:2:{i:0;R:26723;i:1;R:9;}s:39:"1230:checklist-checklist.enter_info_two";a:2:{i:0;R:26723;i:1;R:9;}s:44:"1230:checklist-checklist.enterchecklist_info";a:2:{i:0;R:26723;i:1;R:9;}s:30:"1230:checklist-checklist.group";a:2:{i:0;R:26723;i:1;R:9;}s:33:"1230:checklist-checklist.inactive";a:2:{i:0;R:26723;i:1;R:9;}s:30:"1230:checklist-checklist.items";a:2:{i:0;R:26723;i:1;R:9;}s:35:"1230:checklist-checklist.items_info";a:2:{i:0;R:26723;i:1;R:9;}s:30:"1230:checklist-checklist.loans";a:2:{i:0;R:26723;i:1;R:9;}s:29:"1230:checklist-checklist.name";a:2:{i:0;R:26723;i:1;R:9;}s:31:"1230:checklist-checklist.onhold";a:2:{i:0;R:26723;i:1;R:9;}s:36:"1230:checklist-checklist.review_info";a:2:{i:0;R:26723;i:1;R:9;}s:40:"1230:checklist-checklist.reviewandsubmit";a:2:{i:0;R:26723;i:1;R:9;}s:45:"1230:checklist-checklist.reviewchecklist_info";a:2:{i:0;R:26723;i:1;R:9;}s:34:"1230:checklist-checklist.savelater";a:2:{i:0;R:26723;i:1;R:9;}s:32:"1230:checklist-checklist.savings";a:2:{i:0;R:26723;i:1;R:9;}s:31:"1230:checklist-checklist.status";a:2:{i:0;R:26723;i:1;R:9;}s:41:"1230:checklist-checklist.status_checklist";a:2:{i:0;R:26723;i:1;R:9;}s:39:"1230:checklist-checklist.submitapproval";a:2:{i:0;R:26723;i:1;R:9;}s:29:"1230:checklist-checklist.type";a:2:{i:0;R:26723;i:1;R:9;}s:40:"1230:checklist-checklist.view_checklists";a:2:{i:0;R:26723;i:1;R:9;}s:41:"1230:checklist-error.activity.not.allowed";a:2:{i:0;R:26723;i:1;R:9;}s:37:"1230:checklist-errors.category_status";a:2:{i:0;R:26723;i:1;R:9;}s:28:"1230:checklist-errors.footer";a:2:{i:0;R:26723;i:1;R:9;}s:28:"1230:checklist-errors.header";a:2:{i:0;R:26723;i:1;R:9;}s:32:"1230:checklist-errors.itemlength";a:2:{i:0;R:26723;i:1;R:9;}s:31:"1230:checklist-errors.mandatory";a:2:{i:0;R:26723;i:1;R:9;}s:36:"1230:checklist-errors.mandatory_item";a:2:{i:0;R:26723;i:1;R:9;}s:41:"1230:checklist-errors.mandatory_selectbox";a:2:{i:0;R:26723;i:1;R:9;}s:39:"1230:checklist-errors.mandatory_textbox";a:2:{i:0;R:26723;i:1;R:9;}s:35:"1230:checklist-errors.maximumlength";a:2:{i:0;R:26723;i:1;R:9;}s:28:"1230:checklist-errors.prefix";a:2:{i:0;R:26723;i:1;R:9;}s:28:"1230:checklist-errors.suffix";a:2:{i:0;R:26723;i:1;R:9;}s:43:"1230:checklist-exception.checklist.creation";a:2:{i:0;R:26723;i:1;R:9;}s:56:"1230:checklist-exception.framework.doublesubmitexception";a:2:{i:0;R:26723;i:1;R:9;}s:68:"1230:checklist-exceptions.application.checklist.statusalreadydefined";a:2:{i:0;R:26723;i:1;R:9;}s:18:"1230:client-amount";a:2:{i:0;R:11;i:1;R:9;}s:36:"1230:client-client.activeloanpresent";a:2:{i:0;R:11;i:1;R:9;}s:32:"1230:client-client.flagexception";a:2:{i:0;R:11;i:1;R:9;}s:28:"1230:client-client.futuredob";a:2:{i:0;R:11;i:1;R:9;}s:32:"1230:client-client.hasactiveloan";a:2:{i:0;R:11;i:1;R:9;}s:29:"1230:client-client.invaliddob";a:2:{i:0;R:11;i:1;R:9;}s:29:"1230:client-family.invaliddob";a:2:{i:0;R:11;i:1;R:9;}s:29:"1230:client-client.invalidage";a:2:{i:0;R:11;i:1;R:9;}s:47:"1230:client-family.invalidnumberoffamilymembers";a:2:{i:0;R:11;i:1;R:9;}s:38:"1230:client-family.invalidfathernumber";a:2:{i:0;R:11;i:1;R:9;}s:38:"1230:client-family.invalidspousenumber";a:2:{i:0;R:11;i:1;R:9;}s:35:"1230:client-family.invalidcharacter";a:2:{i:0;R:11;i:1;R:9;}s:38:"1230:client-family.invalidrelationship";a:2:{i:0;R:11;i:1;R:9;}s:32:"1230:client-family.invalidgender";a:2:{i:0;R:11;i:1;R:9;}s:38:"1230:client-family.invalidlivingstatus";a:2:{i:0;R:11;i:1;R:9;}s:41:"1230:client-family.invalidfamilyfirstname";a:2:{i:0;R:11;i:1;R:9;}s:40:"1230:client-family.invalidfamilylastname";a:2:{i:0;R:11;i:1;R:9;}s:37:"1230:client-client.nopictureavailable";a:2:{i:0;R:11;i:1;R:9;}s:31:"1230:client-client.invaildphoto";a:2:{i:0;R:11;i:1;R:9;}s:34:"1230:client-client.trainedcheckbox";a:2:{i:0;R:11;i:1;R:9;}s:36:"1230:client-client.traineddateneeded";a:2:{i:0;R:11;i:1;R:9;}s:26:"1230:client-client.balance";a:2:{i:0;R:11;i:1;R:9;}s:42:"1230:client-customer.activeaccountspresent";a:2:{i:0;R:11;i:1;R:9;}s:35:"1230:client-customer.branchinactive";a:2:{i:0;R:11;i:1;R:9;}s:42:"1230:client-customer.duplicatecustomername";a:2:{i:0;R:11;i:1;R:9;}s:33:"1230:client-customer.feesinactive";a:2:{i:0;R:11;i:1;R:9;}s:40:"1230:client-customer.incompletechecklist";a:2:{i:0;R:11;i:1;R:9;}s:35:"1230:client-customer.invalidversion";a:2:{i:0;R:11;i:1;R:9;}s:40:"1230:client-customer.loanofficerinactive";a:2:{i:0;R:11;i:1;R:9;}s:36:"1230:client-customer.meetingrequired";a:2:{i:0;R:11;i:1;R:9;}s:46:"1230:client-errors.customer.specifyloanofficer";a:2:{i:0;R:11;i:1;R:9;}s:16:"1230:client-date";a:2:{i:0;R:11;i:1;R:9;}s:23:"1230:client-description";a:2:{i:0;R:11;i:1;R:9;}s:33:"1230:client-duplicatefeeexception";a:2:{i:0;R:11;i:1;R:9;}s:36:"1230:client-duplicategovtidexception";a:2:{i:0;R:11;i:1;R:9;}s:31:"1230:client-fatalerrorexception";a:2:{i:0;R:11;i:1;R:9;}s:19:"1230:client-feetype";a:2:{i:0;R:11;i:1;R:9;}s:17:"1230:client-field";a:2:{i:0;R:11;i:1;R:9;}s:45:"1230:client-formedbyloanofficerblankexception";a:2:{i:0;R:11;i:1;R:9;}s:32:"1230:client-groupstatusexception";a:2:{i:0;R:11;i:1;R:9;}s:38:"1230:client-loanaccountactiveexception";a:2:{i:0;R:11;i:1;R:9;}s:37:"1230:client-loanofficerblankexception";a:2:{i:0;R:11;i:1;R:9;}s:43:"1230:client-loanofficernotassignedexception";a:2:{i:0;R:11;i:1;R:9;}s:40:"1230:client-loanofficerrequiredexception";a:2:{i:0;R:11;i:1;R:9;}s:20:"1230:client-newvalue";a:2:{i:0;R:11;i:1;R:9;}s:20:"1230:client-oldvalue";a:2:{i:0;R:11;i:1;R:9;}s:20:"1230:client-postedby";a:2:{i:0;R:11;i:1;R:9;}s:38:"1230:client-samegrouptransferexception";a:2:{i:0;R:11;i:1;R:9;}s:39:"1230:client-sameofficetransferexception";a:2:{i:0;R:11;i:1;R:9;}s:35:"1230:client-statusrequiredexception";a:2:{i:0;R:11;i:1;R:9;}s:33:"1230:client-updatefailedexception";a:2:{i:0;R:11;i:1;R:9;}s:16:"1230:client-user";a:2:{i:0;R:11;i:1;R:9;}s:27:"1230:client-button.approved";a:2:{i:0;R:11;i:1;R:9;}s:31:"1230:client-button.saveforlater";a:2:{i:0;R:11;i:1;R:9;}s:36:"1230:client-button.submitforapproval";a:2:{i:0;R:11;i:1;R:9;}s:25:"1230:client-button.cancel";a:2:{i:0;R:11;i:1;R:9;}s:24:"1230:client-button.close";a:2:{i:0;R:11;i:1;R:9;}s:27:"1230:client-button.continue";a:2:{i:0;R:11;i:1;R:9;}s:26:"1230:client-button.preview";a:2:{i:0;R:11;i:1;R:9;}s:23:"1230:client-button.edit";a:2:{i:0;R:11;i:1;R:9;}s:34:"1230:client-button.previousmfiinfo";a:2:{i:0;R:11;i:1;R:9;}s:39:"1230:client-button.previouspersonalinfo";a:2:{i:0;R:11;i:1;R:9;}s:37:"1230:client-button.previousfamilyinfo";a:2:{i:0;R:11;i:1;R:9;}s:33:"1230:client-button.previousstatus";a:2:{i:0;R:11;i:1;R:9;}s:25:"1230:client-button.submit";a:2:{i:0;R:11;i:1;R:9;}s:25:"1230:client-button.addrow";a:2:{i:0;R:11;i:1;R:9;}s:28:"1230:client-button.deleterow";a:2:{i:0;R:11;i:1;R:9;}s:36:"1230:client-cf.lookupentity.entityid";a:2:{i:0;R:11;i:1;R:9;}s:33:"1230:client-client.accountheading";a:2:{i:0;R:11;i:1;R:9;}s:34:"1230:client-client.accountsheading";a:2:{i:0;R:11;i:1;R:9;}s:31:"1230:client-client.accountslink";a:2:{i:0;R:11;i:1;R:9;}s:30:"1230:client-client.activeloans";a:2:{i:0;R:11;i:1;R:9;}s:22:"1230:client-client.add";a:2:{i:0;R:11;i:1;R:9;}s:27:"1230:client-client.addgroup";a:2:{i:0;R:11;i:1;R:9;}s:37:"1230:client-client.addgroupmembership";a:2:{i:0;R:11;i:1;R:9;}s:40:"1230:client-client.additionalfeesheading";a:2:{i:0;R:11;i:1;R:9;}s:47:"1230:client-client.additionalinformationheading";a:2:{i:0;R:11;i:1;R:9;}s:26:"1230:client-client.address";a:2:{i:0;R:11;i:1;R:9;}s:27:"1230:client-client.address1";a:2:{i:0;R:11;i:1;R:9;}s:27:"1230:client-client.address2";a:2:{i:0;R:11;i:1;R:9;}s:27:"1230:client-client.address3";a:2:{i:0;R:11;i:1;R:9;}s:33:"1230:client-client.addressheading";a:2:{i:0;R:11;i:1;R:9;}s:44:"1230:client-client.administrativefeesheading";a:2:{i:0;R:11;i:1;R:9;}s:22:"1230:client-client.age";a:2:{i:0;R:11;i:1;R:9;}s:25:"1230:client-client.amount";a:2:{i:0;R:11;i:1;R:9;}s:31:"1230:client-client.applycharges";a:2:{i:0;R:11;i:1;R:9;}s:35:"1230:client-client.applytransaction";a:2:{i:0;R:11;i:1;R:9;}s:32:"1230:client-client.assignclients";a:2:{i:0;R:11;i:1;R:9;}s:37:"1230:client-client.branchgroupheading";a:2:{i:0;R:11;i:1;R:9;}s:33:"1230:client-client.branchselected";a:2:{i:0;R:11;i:1;R:9;}s:37:"1230:client-client.businessactivities";a:2:{i:0;R:11;i:1;R:9;}s:39:"1230:client-client.centerchargesheading";a:2:{i:0;R:11;i:1;R:9;}s:26:"1230:client-client.centers";a:2:{i:0;R:11;i:1;R:9;}s:37:"1230:client-client.changegroupheading";a:2:{i:0;R:11;i:1;R:9;}s:32:"1230:client-client.changeloglink";a:2:{i:0;R:11;i:1;R:9;}s:38:"1230:client-client.changestatusheading";a:2:{i:0;R:11;i:1;R:9;}s:46:"1230:client-client.changestatuspageinstruction";a:2:{i:0;R:11;i:1;R:9;}s:33:"1230:client-client.chargesapplied";a:2:{i:0;R:11;i:1;R:9;}s:32:"1230:client-client.checktoremove";a:2:{i:0;R:11;i:1;R:9;}s:28:"1230:client-client.checklist";a:2:{i:0;R:11;i:1;R:9;}s:27:"1230:client-client.children";a:2:{i:0;R:11;i:1;R:9;}s:43:"1230:client-client.choosebranchinstructions";a:2:{i:0;R:11;i:1;R:9;}s:44:"1230:client-client.choosebranchinstructions1";a:2:{i:0;R:11;i:1;R:9;}s:44:"1230:client-client.choosebranchinstructions2";a:2:{i:0;R:11;i:1;R:9;}s:44:"1230:client-client.choosebranchinstructions3";a:2:{i:0;R:11;i:1;R:9;}s:44:"1230:client-client.choosebranchinstructions4";a:2:{i:0;R:11;i:1;R:9;}s:44:"1230:client-client.choosebranchinstructions5";a:2:{i:0;R:11;i:1;R:9;}s:30:"1230:client-client.citizenship";a:2:{i:0;R:11;i:1;R:9;}s:35:"1230:client-client.citizenshipvalue";a:2:{i:0;R:11;i:1;R:9;}s:23:"1230:client-client.city";a:2:{i:0;R:11;i:1;R:9;}s:28:"1230:client-client.cityvalue";a:2:{i:0;R:11;i:1;R:9;}s:39:"1230:client-client.clientdetailsheading";a:2:{i:0;R:11;i:1;R:9;}s:43:"1230:client-client.clientinformationheading";a:2:{i:0;R:11;i:1;R:9;}s:30:"1230:client-client.clientlabel";a:2:{i:0;R:11;i:1;R:9;}s:34:"1230:client-client.clientstartdate";a:2:{i:0;R:11;i:1;R:9;}s:37:"1230:client-client.closedaccountslink";a:2:{i:0;R:11;i:1;R:9;}s:43:"1230:client-client.closedstatusinstruction1";a:2:{i:0;R:11;i:1;R:9;}s:43:"1230:client-client.closedstatusinstruction2";a:2:{i:0;R:11;i:1;R:9;}s:34:"1230:client-client.collectionsheet";a:2:{i:0;R:11;i:1;R:9;}s:31:"1230:client-client.confidential";a:2:{i:0;R:11;i:1;R:9;}s:36:"1230:client-client.confidentiallabel";a:2:{i:0;R:11;i:1;R:9;}s:44:"1230:client-client.confirmbranchinstructions";a:2:{i:0;R:11;i:1;R:9;}s:39:"1230:client-client.confirmstatusheading";a:2:{i:0;R:11;i:1;R:9;}s:43:"1230:client-client.confirmation.information";a:2:{i:0;R:11;i:1;R:9;}s:44:"1230:client-client.confirmation.namesystemid";a:2:{i:0;R:11;i:1;R:9;}s:40:"1230:client-client.confirmation.nextstep";a:2:{i:0;R:11;i:1;R:9;}s:36:"1230:client-client.confirmation.note";a:2:{i:0;R:11;i:1;R:9;}s:38:"1230:client-client.confirmationmessage";a:2:{i:0;R:11;i:1;R:9;}s:26:"1230:client-client.country";a:2:{i:0;R:11;i:1;R:9;}s:31:"1230:client-client.countryvalue";a:2:{i:0;R:11;i:1;R:9;}s:50:"1230:client-client.createmfiinformationinstruction";a:2:{i:0;R:11;i:1;R:9;}s:44:"1230:client-client.createmfiinformationtitle";a:2:{i:0;R:11;i:1;R:9;}s:38:"1230:client-client.createnewclientlink";a:2:{i:0;R:11;i:1;R:9;}s:37:"1230:client-client.createnewgrouplink";a:2:{i:0;R:11;i:1;R:9;}s:47:"1230:client-client.createpagecancelinstruction1";a:2:{i:0;R:11;i:1;R:9;}s:47:"1230:client-client.createpagecancelinstruction2";a:2:{i:0;R:11;i:1;R:9;}s:55:"1230:client-client.createpersonalinformationinstruction";a:2:{i:0;R:11;i:1;R:9;}s:53:"1230:client-client.createfamilyinformationinstruction";a:2:{i:0;R:11;i:1;R:9;}s:49:"1230:client-client.createpersonalinformationtitle";a:2:{i:0;R:11;i:1;R:9;}s:47:"1230:client-client.createpreviewpageinstruction";a:2:{i:0;R:11;i:1;R:9;}s:41:"1230:client-client.createpreviewpagetitle";a:2:{i:0;R:11;i:1;R:9;}s:49:"1230:client-client.createpreviewreviewsubmittitle";a:2:{i:0;R:11;i:1;R:9;}s:30:"1230:client-client.createtitle";a:2:{i:0;R:11;i:1;R:9;}s:39:"1230:client-client.currentstatusheading";a:2:{i:0;R:11;i:1;R:9;}s:26:"1230:client-client.cycleno";a:2:{i:0;R:11;i:1;R:9;}s:30:"1230:client-client.datecreated";a:2:{i:0;R:11;i:1;R:9;}s:30:"1230:client-client.dateofbirth";a:2:{i:0;R:11;i:1;R:9;}s:35:"1230:client-client.dateofbirthvalue";a:2:{i:0;R:11;i:1;R:9;}s:37:"1230:client-client.deliquentportfolio";a:2:{i:0;R:11;i:1;R:9;}s:36:"1230:client-client.editbranchheading";a:2:{i:0;R:11;i:1;R:9;}s:41:"1230:client-client.editbranchinstructions";a:2:{i:0;R:11;i:1;R:9;}s:43:"1230:client-client.editbranchmembershiplink";a:2:{i:0;R:11;i:1;R:9;}s:40:"1230:client-client.editgroupinstructions";a:2:{i:0;R:11;i:1;R:9;}s:42:"1230:client-client.editgroupmembershiplink";a:2:{i:0;R:11;i:1;R:9;}s:27:"1230:client-client.editlink";a:2:{i:0;R:11;i:1;R:9;}s:34:"1230:client-client.editmeetinglink";a:2:{i:0;R:11;i:1;R:9;}s:41:"1230:client-client.editmfiinformationlink";a:2:{i:0;R:11;i:1;R:9;}s:42:"1230:client-client.editmfiinformationtitle";a:2:{i:0;R:11;i:1;R:9;}s:44:"1230:client-client.editpagecancelinstruction";a:2:{i:0;R:11;i:1;R:9;}s:46:"1230:client-client.editpersonalinformationlink";a:2:{i:0;R:11;i:1;R:9;}s:47:"1230:client-client.editpersonalinformationtitle";a:2:{i:0;R:11;i:1;R:9;}s:49:"1230:client-client.editpreviewpersonalreviewtitle";a:2:{i:0;R:11;i:1;R:9;}s:44:"1230:client-client.editfamilyinformationlink";a:2:{i:0;R:11;i:1;R:9;}s:39:"1230:client-client.editremovemembership";a:2:{i:0;R:11;i:1;R:9;}s:38:"1230:client-client.editremoveseparator";a:2:{i:0;R:11;i:1;R:9;}s:33:"1230:client-client.educationlevel";a:2:{i:0;R:11;i:1;R:9;}s:38:"1230:client-client.educationlevelvalue";a:2:{i:0;R:11;i:1;R:9;}s:28:"1230:client-client.ethnicity";a:2:{i:0;R:11;i:1;R:9;}s:29:"1230:client-client.externalid";a:2:{i:0;R:11;i:1;R:9;}s:33:"1230:client-client.externalidinfo";a:2:{i:0;R:11;i:1;R:9;}s:30:"1230:client-client.fatherlabel";a:2:{i:0;R:11;i:1;R:9;}s:26:"1230:client-client.feetype";a:2:{i:0;R:11;i:1;R:9;}s:35:"1230:client-client.fieldinstruction";a:2:{i:0;R:11;i:1;R:9;}s:28:"1230:client-client.firstname";a:2:{i:0;R:11;i:1;R:9;}s:33:"1230:client-client.firstnamevalue";a:2:{i:0;R:11;i:1;R:9;}s:27:"1230:client-client.formedby";a:2:{i:0;R:11;i:1;R:9;}s:25:"1230:client-client.gender";a:2:{i:0;R:11;i:1;R:9;}s:30:"1230:client-client.gendervalue";a:2:{i:0;R:11;i:1;R:9;}s:31:"1230:client-client.governmentid";a:2:{i:0;R:11;i:1;R:9;}s:36:"1230:client-client.governmentidvalue";a:2:{i:0;R:11;i:1;R:9;}s:29:"1230:client-client.grouplabel";a:2:{i:0;R:11;i:1;R:9;}s:34:"1230:client-client.groupmembership";a:2:{i:0;R:11;i:1;R:9;}s:41:"1230:client-client.groupmembershipdetails";a:2:{i:0;R:11;i:1;R:9;}s:43:"1230:client-client.groupmembershipmandatory";a:2:{i:0;R:11;i:1;R:9;}s:46:"1230:client-client.groupmembershipnotmandatory";a:2:{i:0;R:11;i:1;R:9;}s:39:"1230:client-client.groupmembershipstyle";a:2:{i:0;R:11;i:1;R:9;}s:33:"1230:client-client.groupsassigned";a:2:{i:0;R:11;i:1;R:9;}s:44:"1230:client-family.editfamilyinformationlink";a:2:{i:0;R:11;i:1;R:9;}s:43:"1230:client-family.familyinformationheading";a:2:{i:0;R:11;i:1;R:9;}s:30:"1230:client-client.handicapped";a:2:{i:0;R:11;i:1;R:9;}s:37:"1230:client-client.historicaldatalink";a:2:{i:0;R:11;i:1;R:9;}s:44:"1230:client-client.individualmembershipstyle";a:2:{i:0;R:11;i:1;R:9;}s:30:"1230:client-client.information";a:2:{i:0;R:11;i:1;R:9;}s:33:"1230:client-client.lastloanamount";a:2:{i:0;R:11;i:1;R:9;}s:27:"1230:client-client.lastname";a:2:{i:0;R:11;i:1;R:9;}s:32:"1230:client-client.lastnamevalue";a:2:{i:0;R:11;i:1;R:9;}s:29:"1230:client-client.line1value";a:2:{i:0;R:11;i:1;R:9;}s:34:"1230:client-client.loanaccountlink";a:2:{i:0;R:11;i:1;R:9;}s:28:"1230:client-client.loancycle";a:2:{i:0;R:11;i:1;R:9;}s:30:"1230:client-client.loanheading";a:2:{i:0;R:11;i:1;R:9;}s:26:"1230:client-client.loanoff";a:2:{i:0;R:11;i:1;R:9;}s:30:"1230:client-client.loanofficer";a:2:{i:0;R:11;i:1;R:9;}s:36:"1230:client-client.locationofmeeting";a:2:{i:0;R:11;i:1;R:9;}s:40:"1230:client-client.mfiinformationheading";a:2:{i:0;R:11;i:1;R:9;}s:30:"1230:client-client.managetitle";a:2:{i:0;R:11;i:1;R:9;}s:32:"1230:client-client.maritalstatus";a:2:{i:0;R:11;i:1;R:9;}s:34:"1230:client-client.meetingschedule";a:2:{i:0;R:11;i:1;R:9;}s:38:"1230:client-client.meetingschedulelink";a:2:{i:0;R:11;i:1;R:9;}s:35:"1230:client-client.meetingsattended";a:2:{i:0;R:11;i:1;R:9;}s:34:"1230:client-client.meetingsheading";a:2:{i:0;R:11;i:1;R:9;}s:31:"1230:client-client.meetingslink";a:2:{i:0;R:11;i:1;R:9;}s:33:"1230:client-client.meetingsmissed";a:2:{i:0;R:11;i:1;R:9;}s:33:"1230:client-client.membershiplink";a:2:{i:0;R:11;i:1;R:9;}s:34:"1230:client-client.membershipstyle";a:2:{i:0;R:11;i:1;R:9;}s:38:"1230:client-client.mfiinformationlabel";a:2:{i:0;R:11;i:1;R:9;}s:41:"1230:client-client.familyinformationlabel";a:2:{i:0;R:11;i:1;R:9;}s:29:"1230:client-client.middlename";a:2:{i:0;R:11;i:1;R:9;}s:23:"1230:client-client.name";a:2:{i:0;R:11;i:1;R:9;}s:33:"1230:client-client.newstatuslabel";a:2:{i:0;R:11;i:1;R:9;}s:26:"1230:client-client.nolabel";a:2:{i:0;R:11;i:1;R:9;}s:29:"1230:client-client.noofactive";a:2:{i:0;R:11;i:1;R:9;}s:23:"1230:client-client.note";a:2:{i:0;R:11;i:1;R:9;}s:28:"1230:client-client.noteslink";a:2:{i:0;R:11;i:1;R:9;}s:35:"1230:client-client.numberofchildren";a:2:{i:0;R:11;i:1;R:9;}s:40:"1230:client-client.officialtitlesheading";a:2:{i:0;R:11;i:1;R:9;}s:44:"1230:client-client.performancehistoryheading";a:2:{i:0;R:11;i:1;R:9;}s:30:"1230:client-client.periodicity";a:2:{i:0;R:11;i:1;R:9;}s:45:"1230:client-client.personalinformationheading";a:2:{i:0;R:11;i:1;R:9;}s:24:"1230:client-client.photo";a:2:{i:0;R:11;i:1;R:9;}s:29:"1230:client-client.postalcode";a:2:{i:0;R:11;i:1;R:9;}s:32:"1230:client-client.povertystatus";a:2:{i:0;R:11;i:1;R:9;}s:47:"1230:client-client.previeweditcancelinstruction";a:2:{i:0;R:11;i:1;R:9;}s:45:"1230:client-client.previeweditinfoinstruction";a:2:{i:0;R:11;i:1;R:9;}s:40:"1230:client-client.previewmfiinformation";a:2:{i:0;R:11;i:1;R:9;}s:43:"1230:client-client.previewfamilyinformation";a:2:{i:0;R:11;i:1;R:9;}s:30:"1230:client-client.recentnotes";a:2:{i:0;R:11;i:1;R:9;}s:31:"1230:client-client.relationship";a:2:{i:0;R:11;i:1;R:9;}s:29:"1230:client-client.removelink";a:2:{i:0;R:11;i:1;R:9;}s:38:"1230:client-client.reviewsubmitheading";a:2:{i:0;R:11;i:1;R:9;}s:29:"1230:client-client.salutation";a:2:{i:0;R:11;i:1;R:9;}s:34:"1230:client-client.salutationvalue";a:2:{i:0;R:11;i:1;R:9;}s:33:"1230:client-client.savingsheading";a:2:{i:0;R:11;i:1;R:9;}s:32:"1230:client-client.searchheading";a:2:{i:0;R:11;i:1;R:9;}s:37:"1230:client-client.searchinstructions";a:2:{i:0;R:11;i:1;R:9;}s:47:"1230:client-client.searchresultpageinstructions";a:2:{i:0;R:11;i:1;R:9;}s:44:"1230:client-client.searchselectcenterheading";a:2:{i:0;R:11;i:1;R:9;}s:33:"1230:client-client.secondlastname";a:2:{i:0;R:11;i:1;R:9;}s:34:"1230:client-client.seeallnoteslink";a:2:{i:0;R:11;i:1;R:9;}s:38:"1230:client-client.selectbranchheading";a:2:{i:0;R:11;i:1;R:9;}s:43:"1230:client-client.selectbranchinstructions";a:2:{i:0;R:11;i:1;R:9;}s:44:"1230:client-client.selectbranchinstructions1";a:2:{i:0;R:11;i:1;R:9;}s:44:"1230:client-client.selectbranchinstructions2";a:2:{i:0;R:11;i:1;R:9;}s:28:"1230:client-client.separator";a:2:{i:0;R:11;i:1;R:9;}s:35:"1230:client-client.spousefathername";a:2:{i:0;R:11;i:1;R:9;}s:34:"1230:client-client.spousefirstname";a:2:{i:0;R:11;i:1;R:9;}s:39:"1230:client-client.spousefirstnamevalue";a:2:{i:0;R:11;i:1;R:9;}s:30:"1230:client-client.spouselabel";a:2:{i:0;R:11;i:1;R:9;}s:33:"1230:client-client.spouselastname";a:2:{i:0;R:11;i:1;R:9;}s:38:"1230:client-client.spouselastnamevalue";a:2:{i:0;R:11;i:1;R:9;}s:35:"1230:client-client.spousemiddlename";a:2:{i:0;R:11;i:1;R:9;}s:38:"1230:client-client.spousenametypevalue";a:2:{i:0;R:11;i:1;R:9;}s:39:"1230:client-client.spousesecondlastname";a:2:{i:0;R:11;i:1;R:9;}s:31:"1230:client-client.familynumber";a:2:{i:0;R:11;i:1;R:9;}s:32:"1230:client-client.familydetails";a:2:{i:0;R:11;i:1;R:9;}s:40:"1230:client-client.familydetailsoptional";a:2:{i:0;R:11;i:1;R:9;}s:37:"1230:client-client.familyrelationship";a:2:{i:0;R:11;i:1;R:9;}s:34:"1230:client-client.familyfirstname";a:2:{i:0;R:11;i:1;R:9;}s:35:"1230:client-client.familymiddlename";a:2:{i:0;R:11;i:1;R:9;}s:33:"1230:client-client.familylastname";a:2:{i:0;R:11;i:1;R:9;}s:36:"1230:client-client.familydateofbirth";a:2:{i:0;R:11;i:1;R:9;}s:31:"1230:client-client.familygender";a:2:{i:0;R:11;i:1;R:9;}s:37:"1230:client-client.familylivingstatus";a:2:{i:0;R:11;i:1;R:9;}s:35:"1230:client-client.familychildlabel";a:2:{i:0;R:11;i:1;R:9;}s:36:"1230:client-client.familyspouselabel";a:2:{i:0;R:11;i:1;R:9;}s:36:"1230:client-client.familyfatherlabel";a:2:{i:0;R:11;i:1;R:9;}s:36:"1230:client-client.familymotherlabel";a:2:{i:0;R:11;i:1;R:9;}s:37:"1230:client-client.familysiblinglabel";a:2:{i:0;R:11;i:1;R:9;}s:36:"1230:client-client.familydisplayname";a:2:{i:0;R:11;i:1;R:9;}s:24:"1230:client-client.state";a:2:{i:0;R:11;i:1;R:9;}s:29:"1230:client-client.statevalue";a:2:{i:0;R:11;i:1;R:9;}s:25:"1230:client-client.status";a:2:{i:0;R:11;i:1;R:9;}s:29:"1230:client-client.statuslink";a:2:{i:0;R:11;i:1;R:9;}s:43:"1230:client-client.statuspreviewinstruction";a:2:{i:0;R:11;i:1;R:9;}s:27:"1230:client-client.systemid";a:2:{i:0;R:11;i:1;R:9;}s:28:"1230:client-client.telephone";a:2:{i:0;R:11;i:1;R:9;}s:31:"1230:client-client.totalsavings";a:2:{i:0;R:11;i:1;R:9;}s:26:"1230:client-client.trained";a:2:{i:0;R:11;i:1;R:9;}s:28:"1230:client-client.trainedon";a:2:{i:0;R:11;i:1;R:9;}s:32:"1230:client-client.trainedondate";a:2:{i:0;R:11;i:1;R:9;}s:33:"1230:client-client.trainingstatus";a:2:{i:0;R:11;i:1;R:9;}s:37:"1230:client-client.transactionhistory";a:2:{i:0;R:11;i:1;R:9;}s:34:"1230:client-client.userinformation";a:2:{i:0;R:11;i:1;R:9;}s:40:"1230:client-client.viewclientdetailslink";a:2:{i:0;R:11;i:1;R:9;}s:27:"1230:client-client.yearsold";a:2:{i:0;R:11;i:1;R:9;}s:27:"1230:client-client.yeslabel";a:2:{i:0;R:11;i:1;R:9;}s:27:"1230:client-client.zipvalue";a:2:{i:0;R:11;i:1;R:9;}s:22:"1230:client-client.acc";a:2:{i:0;R:11;i:1;R:9;}s:27:"1230:client-client.accounts";a:2:{i:0;R:11;i:1;R:9;}s:25:"1230:client-client.accsum";a:2:{i:0;R:11;i:1;R:9;}s:40:"1230:client-client.additionalinformation";a:2:{i:0;R:11;i:1;R:9;}s:25:"1230:client-client.amtdue";a:2:{i:0;R:11;i:1;R:9;}s:29:"1230:client-client.amtoverdue";a:2:{i:0;R:11;i:1;R:9;}s:32:"1230:client-client.apply_payment";a:2:{i:0;R:11;i:1;R:9;}s:34:"1230:client-client.applyadjustment";a:2:{i:0;R:11;i:1;R:9;}s:36:"1230:client-client.backtodetailspage";a:2:{i:0;R:11;i:1;R:9;}s:33:"1230:client-client.butbachdetpage";a:2:{i:0;R:11;i:1;R:9;}s:40:"1230:client-client.changegroupmembership";a:2:{i:0;R:11;i:1;R:9;}s:28:"1230:client-client.changelog";a:2:{i:0;R:11;i:1;R:9;}s:36:"1230:client-client.clientinformation";a:2:{i:0;R:11;i:1;R:9;}s:32:"1230:client-client.clientcharges";a:2:{i:0;R:11;i:1;R:9;}s:28:"1230:client-client.closedacc";a:2:{i:0;R:11;i:1;R:9;}s:25:"1230:client-client.create";a:2:{i:0;R:11;i:1;R:9;}s:33:"1230:client-client.createaccounts";a:2:{i:0;R:11;i:1;R:9;}s:34:"1230:client-client.createnewclient";a:2:{i:0;R:11;i:1;R:9;}s:23:"1230:client-client.date";a:2:{i:0;R:11;i:1;R:9;}s:30:"1230:client-client.description";a:2:{i:0;R:11;i:1;R:9;}s:33:"1230:client-client.editmembership";a:2:{i:0;R:11;i:1;R:9;}s:29:"1230:client-client.editstatus";a:2:{i:0;R:11;i:1;R:9;}s:24:"1230:client-client.field";a:2:{i:0;R:11;i:1;R:9;}s:31:"1230:client-client.instancename";a:2:{i:0;R:11;i:1;R:9;}s:35:"1230:client-client.loancyclecounter";a:2:{i:0;R:11;i:1;R:9;}s:27:"1230:client-client.newvalue";a:2:{i:0;R:11;i:1;R:9;}s:27:"1230:client-client.oldvalue";a:2:{i:0;R:11;i:1;R:9;}s:27:"1230:client-client.postedby";a:2:{i:0;R:11;i:1;R:9;}s:36:"1230:client-client.previewclientinfo";a:2:{i:0;R:11;i:1;R:9;}s:28:"1230:client-client.recaccact";a:2:{i:0;R:11;i:1;R:9;}s:29:"1230:client-client.reccredate";a:2:{i:0;R:11;i:1;R:9;}s:39:"1230:client-client.recurringaccountfees";a:2:{i:0;R:11;i:1;R:9;}s:25:"1230:client-client.remove";a:2:{i:0;R:11;i:1;R:9;}s:38:"1230:client-client.savingsinstancename";a:2:{i:0;R:11;i:1;R:9;}s:27:"1230:client-client.seephoto";a:2:{i:0;R:11;i:1;R:9;}s:25:"1230:client-client.select";a:2:{i:0;R:11;i:1;R:9;}s:32:"1230:client-client.selectabranch";a:2:{i:0;R:11;i:1;R:9;}s:31:"1230:client-client.upcomcharges";a:2:{i:0;R:11;i:1;R:9;}s:23:"1230:client-client.user";a:2:{i:0;R:11;i:1;R:9;}s:36:"1230:client-client.viewallactivities";a:2:{i:0;R:11;i:1;R:9;}s:30:"1230:client-client.viewdetails";a:2:{i:0;R:11;i:1;R:9;}s:24:"1230:client-client.waive";a:2:{i:0;R:11;i:1;R:9;}s:31:"1230:client-clinet.applycharges";a:2:{i:0;R:11;i:1;R:9;}s:52:"1230:client-error.customer.clienthaveopenloanaccount";a:2:{i:0;R:11;i:1;R:9;}s:52:"1230:client-error.customer.clientisclosedorcancelled";a:2:{i:0;R:11;i:1;R:9;}s:38:"1230:client-error.activity.not.allowed";a:2:{i:0;R:11;i:1;R:9;}s:47:"1230:client-error.applycharge.nocustomermeeting";a:2:{i:0;R:11;i:1;R:9;}s:34:"1230:client-error.customernotfound";a:2:{i:0;R:11;i:1;R:9;}s:26:"1230:client-errors.generic";a:2:{i:0;R:11;i:1;R:9;}s:34:"1230:client-error.unknownexception";a:2:{i:0;R:11;i:1;R:9;}s:37:"1230:client-error.versionnodonotmatch";a:2:{i:0;R:11;i:1;R:9;}s:51:"1230:client-errors.client.duplicateofferingselected";a:2:{i:0;R:11;i:1;R:9;}s:42:"1230:client-errors.client.hasactiveaccount";a:2:{i:0;R:11;i:1;R:9;}s:42:"1230:client-errors.client.lowergroupstatus";a:2:{i:0;R:11;i:1;R:9;}s:48:"1230:client-errors.customer.duplicateperiodicfee";a:2:{i:0;R:11;i:1;R:9;}s:48:"1230:client-errors.customer.feefrequencymismatch";a:2:{i:0;R:11;i:1;R:9;}s:43:"1230:client-errors.customer.invalidformedby";a:2:{i:0;R:11;i:1;R:9;}s:46:"1230:client-errors.customer.invalidloanofficer";a:2:{i:0;R:11;i:1;R:9;}s:42:"1230:client-errors.customer.invalidmeeting";a:2:{i:0;R:11;i:1;R:9;}s:39:"1230:client-errors.customer.invalidname";a:2:{i:0;R:11;i:1;R:9;}s:41:"1230:client-errors.customer.invalidoffice";a:2:{i:0;R:11;i:1;R:9;}s:52:"1230:client-errors.customer.meetingfrequencymismatch";a:2:{i:0;R:11;i:1;R:9;}s:42:"1230:client-errors.customer.officeinactive";a:2:{i:0;R:11;i:1;R:9;}s:42:"1230:client-errors.customer.parentinactive";a:2:{i:0;R:11;i:1;R:9;}s:46:"1230:client-errors.customer.samebranchtransfer";a:2:{i:0;R:11;i:1;R:9;}s:55:"1230:client-errors.customer.sameparenttransferexception";a:2:{i:0;R:11;i:1;R:9;}s:51:"1230:client-errors.customer.specifycustomfieldvalue";a:2:{i:0;R:11;i:1;R:9;}s:43:"1230:client-errors.customer.customdatefield";a:2:{i:0;R:11;i:1;R:9;}s:44:"1230:client-errors.customer.specifyfeeamount";a:2:{i:0;R:11;i:1;R:9;}s:62:"1230:client-errors.customer.clientcannotbeaddedtoinactivegroup";a:2:{i:0;R:11;i:1;R:9;}s:60:"1230:client-errors.customer.targetgroupstatuslowerthanclient";a:2:{i:0;R:11;i:1;R:9;}s:37:"1230:client-errors.invalidtraineddate";a:2:{i:0;R:11;i:1;R:9;}s:35:"1230:client-errors.trainedbeforedob";a:2:{i:0;R:11;i:1;R:9;}s:34:"1230:client-errors.trainedcheckbox";a:2:{i:0;R:11;i:1;R:9;}s:36:"1230:client-errors.traineddateneeded";a:2:{i:0;R:11;i:1;R:9;}s:36:"1230:client-errors.feewithoutmeeting";a:2:{i:0;R:11;i:1;R:9;}s:32:"1230:client-errors.invalidfeeamt";a:2:{i:0;R:11;i:1;R:9;}s:28:"1230:client-errors.mandatory";a:2:{i:0;R:11;i:1;R:9;}s:26:"1230:client-errors.maskmsg";a:2:{i:0;R:11;i:1;R:9;}s:28:"1230:client-errors.maxlength";a:2:{i:0;R:11;i:1;R:9;}s:37:"1230:client-errors.meetingnotassigned";a:2:{i:0;R:11;i:1;R:9;}s:27:"1230:client-errors.required";a:2:{i:0;R:11;i:1;R:9;}s:38:"1230:client-errors.requiredcustomfield";a:2:{i:0;R:11;i:1;R:9;}s:33:"1230:client-errors.requiredselect";a:2:{i:0;R:11;i:1;R:9;}s:52:"1230:client-exception.framework.concurrencyexception";a:2:{i:0;R:11;i:1;R:9;}s:53:"1230:client-exception.framework.doublesubmitexception";a:2:{i:0;R:11;i:1;R:9;}s:60:"1230:client-exception.framework.fieldconfiguration.mandatory";a:2:{i:0;R:11;i:1;R:9;}s:53:"1230:client-warning.clientwithsamegovtidexistinclosed";a:2:{i:0;R:11;i:1;R:9;}s:54:"1230:client-warning.clientwithsamenamedobexistinclosed";a:2:{i:0;R:11;i:1;R:9;}s:59:"1230:client-warning.clientwithsamenamedobexistinblacklisted";a:2:{i:0;R:11;i:1;R:9;}s:49:"1230:client-client.viewquestiongroupresponseslink";a:2:{i:0;R:11;i:1;R:9;}s:64:"1230:client-client.viewquestiongroupforclosedclientresponseslink";a:2:{i:0;R:11;i:1;R:9;}s:41:"1230:client-client.questiongroupinstances";a:2:{i:0;R:11;i:1;R:9;}s:56:"1230:client-questionnaire.invalid.numeric.range.response";a:2:{i:0;R:11;i:1;R:9;}s:54:"1230:client-questionnaire.invalid.numeric.min.response";a:2:{i:0;R:11;i:1;R:9;}s:54:"1230:client-questionnaire.invalid.numeric.max.response";a:2:{i:0;R:11;i:1;R:9;}s:50:"1230:client-questionnaire.invalid.numeric.response";a:2:{i:0;R:11;i:1;R:9;}s:40:"1230:cmb-account.customfield.displayname";a:2:{i:0;s:13:"out-mifos-cmb";i:1;R:9;}s:36:"1230:cmb-account.customfield.feildid";a:2:{i:0;R:27181;i:1;R:9;}s:39:"1230:cmb-account.customfield.feildvalue";a:2:{i:0;R:27181;i:1;R:9;}s:21:"1230:cmb-center.line2";a:2:{i:0;R:27181;i:1;R:9;}s:21:"1230:cmb-center.line3";a:2:{i:0;R:27181;i:1;R:9;}s:27:"1230:cmb-center.phonenumber";a:2:{i:0;R:27181;i:1;R:9;}s:35:"1230:cmb-center.phonenumberstripped";a:2:{i:0;R:27181;i:1;R:9;}s:21:"1230:cmb-center.state";a:2:{i:0;R:27181;i:1;R:9;}s:34:"1230:cmb-center.centerapprovaldate";a:2:{i:0;R:27181;i:1;R:9;}s:20:"1230:cmb-center.city";a:2:{i:0;R:27181;i:1;R:9;}s:23:"1230:cmb-center.country";a:2:{i:0;R:27181;i:1;R:9;}s:44:"1230:cmb-center.customerposition.displayname";a:2:{i:0;R:27181;i:1;R:9;}s:30:"1230:cmb-center.displayaddress";a:2:{i:0;R:27181;i:1;R:9;}s:26:"1230:cmb-center.externalid";a:2:{i:0;R:27181;i:1;R:9;}s:21:"1230:cmb-center.line1";a:2:{i:0;R:27181;i:1;R:9;}s:36:"1230:cmb-center.meeting.meetingplace";a:2:{i:0;R:27181;i:1;R:9;}s:44:"1230:cmb-center.meetingrecurrence.rankofdays";a:2:{i:0;R:27181;i:1;R:9;}s:41:"1230:cmb-center.meetingrecurrence.weekday";a:2:{i:0;R:27181;i:1;R:9;}s:30:"1230:cmb-center.mfijoiningdate";a:2:{i:0;R:27181;i:1;R:9;}s:37:"1230:cmb-center.personnel.displayname";a:2:{i:0;R:27181;i:1;R:9;}s:27:"1230:cmb-center.personnelid";a:2:{i:0;R:27181;i:1;R:9;}s:24:"1230:cmb-center.statusid";a:2:{i:0;R:27181;i:1;R:9;}s:19:"1230:cmb-center.zip";a:2:{i:0;R:27181;i:1;R:9;}s:21:"1230:cmb-client.line2";a:2:{i:0;R:27181;i:1;R:9;}s:21:"1230:cmb-client.line3";a:2:{i:0;R:27181;i:1;R:9;}s:27:"1230:cmb-client.phonenumber";a:2:{i:0;R:27181;i:1;R:9;}s:35:"1230:cmb-client.phonenumberstripped";a:2:{i:0;R:27181;i:1;R:9;}s:21:"1230:cmb-client.state";a:2:{i:0;R:27181;i:1;R:9;}s:34:"1230:cmb-client.businessactivities";a:2:{i:0;R:27181;i:1;R:9;}s:27:"1230:cmb-client.citizenship";a:2:{i:0;R:27181;i:1;R:9;}s:20:"1230:cmb-client.city";a:2:{i:0;R:27181;i:1;R:9;}s:34:"1230:cmb-client.clientapprovaldate";a:2:{i:0;R:27181;i:1;R:9;}s:23:"1230:cmb-client.country";a:2:{i:0;R:27181;i:1;R:9;}s:42:"1230:cmb-client.customerdetail.numchildren";a:2:{i:0;R:27181;i:1;R:9;}s:47:"1230:cmb-client.customernamedetailset.firstname";a:2:{i:0;R:27181;i:1;R:9;}s:46:"1230:cmb-client.customernamedetailset.lastname";a:2:{i:0;R:27181;i:1;R:9;}s:48:"1230:cmb-client.customernamedetailset.middlename";a:2:{i:0;R:27181;i:1;R:9;}s:46:"1230:cmb-client.customernamedetailset.nametype";a:2:{i:0;R:27181;i:1;R:9;}s:48:"1230:cmb-client.customernamedetailset.salutation";a:2:{i:0;R:27181;i:1;R:9;}s:52:"1230:cmb-client.customernamedetailset.secondlastname";a:2:{i:0;R:27181;i:1;R:9;}s:27:"1230:cmb-client.dateofbirth";a:2:{i:0;R:27181;i:1;R:9;}s:30:"1230:cmb-client.displayaddress";a:2:{i:0;R:27181;i:1;R:9;}s:27:"1230:cmb-client.displayname";a:2:{i:0;R:27181;i:1;R:9;}s:30:"1230:cmb-client.educationlevel";a:2:{i:0;R:27181;i:1;R:9;}s:25:"1230:cmb-client.ethnicity";a:2:{i:0;R:27181;i:1;R:9;}s:26:"1230:cmb-client.externalid";a:2:{i:0;R:27181;i:1;R:9;}s:22:"1230:cmb-client.flagid";a:2:{i:0;R:27181;i:1;R:9;}s:22:"1230:cmb-client.gender";a:2:{i:0;R:27181;i:1;R:9;}s:28:"1230:cmb-client.governmentid";a:2:{i:0;R:27181;i:1;R:9;}s:27:"1230:cmb-client.handicapped";a:2:{i:0;R:27181;i:1;R:9;}s:21:"1230:cmb-client.line1";a:2:{i:0;R:27181;i:1;R:9;}s:29:"1230:cmb-client.maritalstatus";a:2:{i:0;R:27181;i:1;R:9;}s:36:"1230:cmb-client.meeting.meetingplace";a:2:{i:0;R:27181;i:1;R:9;}s:44:"1230:cmb-client.meetingrecurrence.rankofdays";a:2:{i:0;R:27181;i:1;R:9;}s:41:"1230:cmb-client.meetingrecurrence.weekday";a:2:{i:0;R:27181;i:1;R:9;}s:30:"1230:cmb-client.mfijoiningdate";a:2:{i:0;R:27181;i:1;R:9;}s:42:"1230:cmb-client.parentcustomer.displayname";a:2:{i:0;R:27181;i:1;R:9;}s:27:"1230:cmb-client.personnelid";a:2:{i:0;R:27181;i:1;R:9;}s:29:"1230:cmb-client.povertystatus";a:2:{i:0;R:27181;i:1;R:9;}s:24:"1230:cmb-client.statusid";a:2:{i:0;R:27181;i:1;R:9;}s:19:"1230:cmb-client.zip";a:2:{i:0;R:27181;i:1;R:9;}s:41:"1230:cmb-customer.customfield.displayname";a:2:{i:0;R:27181;i:1;R:9;}s:37:"1230:cmb-customer.customfield.feildid";a:2:{i:0;R:27181;i:1;R:9;}s:40:"1230:cmb-customer.customfield.feildvalue";a:2:{i:0;R:27181;i:1;R:9;}s:22:"1230:cmb-customer.name";a:2:{i:0;R:27181;i:1;R:9;}s:20:"1230:cmb-group.line1";a:2:{i:0;R:27181;i:1;R:9;}s:20:"1230:cmb-group.line3";a:2:{i:0;R:27181;i:1;R:9;}s:35:"1230:cmb-group.position.displayname";a:2:{i:0;R:27181;i:1;R:9;}s:19:"1230:cmb-group.city";a:2:{i:0;R:27181;i:1;R:9;}s:22:"1230:cmb-group.comment";a:2:{i:0;R:27181;i:1;R:9;}s:22:"1230:cmb-group.country";a:2:{i:0;R:27181;i:1;R:9;}s:37:"1230:cmb-group.customfield.feildvalue";a:2:{i:0;R:27181;i:1;R:9;}s:43:"1230:cmb-group.customerposition.displayname";a:2:{i:0;R:27181;i:1;R:9;}s:26:"1230:cmb-group.displayname";a:2:{i:0;R:27181;i:1;R:9;}s:25:"1230:cmb-group.externalid";a:2:{i:0;R:27181;i:1;R:9;}s:21:"1230:cmb-group.flagid";a:2:{i:0;R:27181;i:1;R:9;}s:32:"1230:cmb-group.groupapprovaldate";a:2:{i:0;R:27181;i:1;R:9;}s:20:"1230:cmb-group.line2";a:2:{i:0;R:27181;i:1;R:9;}s:35:"1230:cmb-group.meeting.meetingplace";a:2:{i:0;R:27181;i:1;R:9;}s:43:"1230:cmb-group.meetingrecurrence.rankofdays";a:2:{i:0;R:27181;i:1;R:9;}s:40:"1230:cmb-group.meetingrecurrence.weekday";a:2:{i:0;R:27181;i:1;R:9;}s:41:"1230:cmb-group.parentcustomer.displayname";a:2:{i:0;R:27181;i:1;R:9;}s:26:"1230:cmb-group.phonenumber";a:2:{i:0;R:27181;i:1;R:9;}s:34:"1230:cmb-group.phonenumberstripped";a:2:{i:0;R:27181;i:1;R:9;}s:20:"1230:cmb-group.state";a:2:{i:0;R:27181;i:1;R:9;}s:23:"1230:cmb-group.statusid";a:2:{i:0;R:27181;i:1;R:9;}s:22:"1230:cmb-group.trained";a:2:{i:0;R:27181;i:1;R:9;}s:26:"1230:cmb-group.traineddate";a:2:{i:0;R:27181;i:1;R:9;}s:18:"1230:cmb-group.zip";a:2:{i:0;R:27181;i:1;R:9;}s:30:"1230:cmb-loan.businessactivity";a:2:{i:0;R:27181;i:1;R:9;}s:28:"1230:cmb-loan.collateralnote";a:2:{i:0;R:27181;i:1;R:9;}s:28:"1230:cmb-loan.collateraltype";a:2:{i:0;R:27181;i:1;R:9;}s:30:"1230:cmb-loan.disbursementdate";a:2:{i:0;R:27181;i:1;R:9;}s:32:"1230:cmb-loan.interestrateamount";a:2:{i:0;R:27181;i:1;R:9;}s:30:"1230:cmb-loan.meetingstartdate";a:2:{i:0;R:27181;i:1;R:9;}s:30:"1230:cmb-loan.noofinstallments";a:2:{i:0;R:27181;i:1;R:9;}s:23:"1230:cmb-loan.purposeof";a:2:{i:0;R:27181;i:1;R:9;}s:18:"1230:cmb-loan.rate";a:2:{i:0;R:27181;i:1;R:9;}s:26:"1230:cmb-loan.accountstate";a:2:{i:0;R:27181;i:1;R:9;}s:21:"1230:cmb-loan.comment";a:2:{i:0;R:27181;i:1;R:9;}s:18:"1230:cmb-loan.flag";a:2:{i:0;R:27181;i:1;R:9;}s:33:"1230:cmb-loan.graceperiodduration";a:2:{i:0;R:27181;i:1;R:9;}s:32:"1230:cmb-loan.intdeddisbursement";a:2:{i:0;R:27181;i:1;R:9;}s:24:"1230:cmb-loan.loanamount";a:2:{i:0;R:27181;i:1;R:9;}s:27:"1230:cmb-loanproduct.amount";a:2:{i:0;R:27181;i:1;R:9;}s:24:"1230:cmb-loanproduct.max";a:2:{i:0;R:27181;i:1;R:9;}s:24:"1230:cmb-loanproduct.min";a:2:{i:0;R:27181;i:1;R:9;}s:24:"1230:cmb-loanproduct.def";a:2:{i:0;R:27181;i:1;R:9;}s:38:"1230:cmb-loanproduct.defnoinstallments";a:2:{i:0;R:27181;i:1;R:9;}s:38:"1230:cmb-loanproduct.defaultloanamount";a:2:{i:0;R:27181;i:1;R:9;}s:32:"1230:cmb-loanproduct.description";a:2:{i:0;R:27181;i:1;R:9;}s:28:"1230:cmb-loanproduct.enddate";a:2:{i:0;R:27181;i:1;R:9;}s:33:"1230:cmb-loanproduct.fees.feename";a:2:{i:0;R:27181;i:1;R:9;}s:34:"1230:cmb-loanproduct.fund.fundname";a:2:{i:0;R:27181;i:1;R:9;}s:40:"1230:cmb-loanproduct.graceperiodduration";a:2:{i:0;R:27181;i:1;R:9;}s:54:"1230:cmb-loanproduct.graceperiodtype.graceperiodtypeid";a:2:{i:0;R:27181;i:1;R:9;}s:43:"1230:cmb-loanproduct.intdeddisbursementflag";a:2:{i:0;R:27181;i:1;R:9;}s:35:"1230:cmb-loanproduct.interestglcode";a:2:{i:0;R:27181;i:1;R:9;}s:37:"1230:cmb-loanproduct.loancounterflag1";a:2:{i:0;R:27181;i:1;R:9;}s:37:"1230:cmb-loanproduct.loancounterflag2";a:2:{i:0;R:27181;i:1;R:9;}s:36:"1230:cmb-loanproduct.maxinterestrate";a:2:{i:0;R:27181;i:1;R:9;}s:34:"1230:cmb-loanproduct.maxloanamount";a:2:{i:0;R:27181;i:1;R:9;}s:38:"1230:cmb-loanproduct.maxnoinstallments";a:2:{i:0;R:27181;i:1;R:9;}s:46:"1230:cmb-loanproduct.meetingdetails.recurafter";a:2:{i:0;R:27181;i:1;R:9;}s:36:"1230:cmb-loanproduct.mininterestrate";a:2:{i:0;R:27181;i:1;R:9;}s:34:"1230:cmb-loanproduct.minloanamount";a:2:{i:0;R:27181;i:1;R:9;}s:38:"1230:cmb-loanproduct.minnoinstallments";a:2:{i:0;R:27181;i:1;R:9;}s:38:"1230:cmb-loanproduct.penalty.penaltyid";a:2:{i:0;R:27181;i:1;R:9;}s:34:"1230:cmb-loanproduct.penaltyglcode";a:2:{i:0;R:27181;i:1;R:9;}s:33:"1230:cmb-loanproduct.penaltygrace";a:2:{i:0;R:27181;i:1;R:9;}s:32:"1230:cmb-loanproduct.penaltyrate";a:2:{i:0;R:27181;i:1;R:9;}s:62:"1230:cmb-loanproduct.prdapplicablemaster.prdapplicablemasterid";a:2:{i:0;R:27181;i:1;R:9;}s:52:"1230:cmb-loanproduct.prdcategory.productcategoryname";a:2:{i:0;R:27181;i:1;R:9;}s:36:"1230:cmb-loanproduct.prdofferingname";a:2:{i:0;R:27181;i:1;R:9;}s:41:"1230:cmb-loanproduct.prdofferingshortname";a:2:{i:0;R:27181;i:1;R:9;}s:47:"1230:cmb-loanproduct.prdstatus.offeringstatusid";a:2:{i:0;R:27181;i:1;R:9;}s:40:"1230:cmb-loanproduct.prinduelastinstflag";a:2:{i:0;R:27181;i:1;R:9;}s:36:"1230:cmb-loanproduct.principalglcode";a:2:{i:0;R:27181;i:1;R:9;}s:50:"1230:cmb-loanproduct.recurrencetype.recurrencename";a:2:{i:0;R:27181;i:1;R:9;}s:30:"1230:cmb-loanproduct.startdate";a:2:{i:0;R:27181;i:1;R:9;}s:27:"1230:cmb-loanproduct.status";a:2:{i:0;R:27181;i:1;R:9;}s:25:"1230:cmb-personnel.gender";a:2:{i:0;R:27181;i:1;R:9;}s:36:"1230:cmb-personnel.languagepreferred";a:2:{i:0;R:27181;i:1;R:9;}s:24:"1230:cmb-personnel.level";a:2:{i:0;R:27181;i:1;R:9;}s:32:"1230:cmb-personnel.maritalstatus";a:2:{i:0;R:27181;i:1;R:9;}s:33:"1230:cmb-personnel.personneltitle";a:2:{i:0;R:27181;i:1;R:9;}s:25:"1230:cmb-personnel.status";a:2:{i:0;R:27181;i:1;R:9;}s:27:"1230:cmb-personnel.address1";a:2:{i:0;R:27181;i:1;R:9;}s:27:"1230:cmb-personnel.address2";a:2:{i:0;R:27181;i:1;R:9;}s:27:"1230:cmb-personnel.address3";a:2:{i:0;R:27181;i:1;R:9;}s:23:"1230:cmb-personnel.city";a:2:{i:0;R:27181;i:1;R:9;}s:26:"1230:cmb-personnel.country";a:2:{i:0;R:27181;i:1;R:9;}s:42:"1230:cmb-personnel.customfield.displayname";a:2:{i:0;R:27181;i:1;R:9;}s:38:"1230:cmb-personnel.customfield.feildid";a:2:{i:0;R:27181;i:1;R:9;}s:41:"1230:cmb-personnel.customfield.feildvalue";a:2:{i:0;R:27181;i:1;R:9;}s:35:"1230:cmb-personnel.dateofjoiningmfi";a:2:{i:0;R:27181;i:1;R:9;}s:38:"1230:cmb-personnel.dateofleavingbranch";a:2:{i:0;R:27181;i:1;R:9;}s:30:"1230:cmb-personnel.displayname";a:2:{i:0;R:27181;i:1;R:9;}s:26:"1230:cmb-personnel.emailid";a:2:{i:0;R:27181;i:1;R:9;}s:36:"1230:cmb-personnel.encryptedpassword";a:2:{i:0;R:27181;i:1;R:9;}s:28:"1230:cmb-personnel.firstname";a:2:{i:0;R:27181;i:1;R:9;}s:31:"1230:cmb-personnel.governmentid";a:2:{i:0;R:27181;i:1;R:9;}s:27:"1230:cmb-personnel.lastname";a:2:{i:0;R:27181;i:1;R:9;}s:27:"1230:cmb-personnel.localeid";a:2:{i:0;R:27181;i:1;R:9;}s:29:"1230:cmb-personnel.middlename";a:2:{i:0;R:27181;i:1;R:9;}s:27:"1230:cmb-personnel.officeid";a:2:{i:0;R:27181;i:1;R:9;}s:29:"1230:cmb-personnel.officename";a:2:{i:0;R:27181;i:1;R:9;}s:29:"1230:cmb-personnel.postalcode";a:2:{i:0;R:27181;i:1;R:9;}s:23:"1230:cmb-personnel.role";a:2:{i:0;R:27181;i:1;R:9;}s:33:"1230:cmb-personnel.secondlastname";a:2:{i:0;R:27181;i:1;R:9;}s:24:"1230:cmb-personnel.state";a:2:{i:0;R:27181;i:1;R:9;}s:28:"1230:cmb-personnel.telephone";a:2:{i:0;R:27181;i:1;R:9;}s:32:"1230:cmb-personnel.userhierarchy";a:2:{i:0;R:27181;i:1;R:9;}s:27:"1230:cmb-personnel.username";a:2:{i:0;R:27181;i:1;R:9;}s:28:"1230:cmb-personnel.nooftries";a:2:{i:0;R:27181;i:1;R:9;}s:28:"1230:cmb-personnel.lastlogin";a:2:{i:0;R:27181;i:1;R:9;}s:33:"1230:cmb-saving.recommendedamount";a:2:{i:0;R:27181;i:1;R:9;}s:45:"1230:cmb-saving.customfield.externalsavingsid";a:2:{i:0;R:27181;i:1;R:9;}s:61:"1230:cmb-savingsproduct.balanceusedforinterestratecalculation";a:2:{i:0;R:27181;i:1;R:9;}s:35:"1230:cmb-savingsproduct.description";a:2:{i:0;R:27181;i:1;R:9;}s:31:"1230:cmb-savingsproduct.enddate";a:2:{i:0;R:27181;i:1;R:9;}s:67:"1230:cmb-savingsproduct.interestcalctype.interestcalculationtypeid1";a:2:{i:0;R:27181;i:1;R:9;}s:67:"1230:cmb-savingsproduct.interestcalctype.interestcalculationtypeid2";a:2:{i:0;R:27181;i:1;R:9;}s:49:"1230:cmb-savingsproduct.interestcalculationtypeid";a:2:{i:0;R:27181;i:1;R:9;}s:36:"1230:cmb-savingsproduct.interestrate";a:2:{i:0;R:27181;i:1;R:9;}s:40:"1230:cmb-savingsproduct.maxamntwithdrawl";a:2:{i:0;R:27181;i:1;R:9;}s:49:"1230:cmb-savingsproduct.meetingdetails.recurafter";a:2:{i:0;R:27181;i:1;R:9;}s:37:"1230:cmb-savingsproduct.minamntforint";a:2:{i:0;R:27181;i:1;R:9;}s:65:"1230:cmb-savingsproduct.prdapplicablemaster.prdapplicablemasterid";a:2:{i:0;R:27181;i:1;R:9;}s:55:"1230:cmb-savingsproduct.prdcategory.productcategoryname";a:2:{i:0;R:27181;i:1;R:9;}s:39:"1230:cmb-savingsproduct.prdofferingname";a:2:{i:0;R:27181;i:1;R:9;}s:44:"1230:cmb-savingsproduct.prdofferingshortname";a:2:{i:0;R:27181;i:1;R:9;}s:50:"1230:cmb-savingsproduct.prdstatus.offeringstatusid";a:2:{i:0;R:27181;i:1;R:9;}s:65:"1230:cmb-savingsproduct.recommendedamntunit.recommendedamntunitid";a:2:{i:0;R:27181;i:1;R:9;}s:41:"1230:cmb-savingsproduct.recommendedamount";a:2:{i:0;R:27181;i:1;R:9;}s:49:"1230:cmb-savingsproduct.savingstype.savingstypeid";a:2:{i:0;R:27181;i:1;R:9;}s:33:"1230:cmb-savingsproduct.startdate";a:2:{i:0;R:27181;i:1;R:9;}s:35:"1230:cmb-customer.branch_membership";a:2:{i:0;R:27181;i:1;R:9;}s:36:"1230:cmb-historicaldata.interestpaid";a:2:{i:0;R:27181;i:1;R:9;}s:34:"1230:cmb-historicaldata.loanamount";a:2:{i:0;R:27181;i:1;R:9;}s:39:"1230:cmb-historicaldata.loancyclenumber";a:2:{i:0;R:27181;i:1;R:9;}s:43:"1230:cmb-historicaldata.missedpaymentscount";a:2:{i:0;R:27181;i:1;R:9;}s:29:"1230:cmb-historicaldata.notes";a:2:{i:0;R:27181;i:1;R:9;}s:35:"1230:cmb-historicaldata.productname";a:2:{i:0;R:27181;i:1;R:9;}s:39:"1230:cmb-historicaldata.totalamountpaid";a:2:{i:0;R:27181;i:1;R:9;}s:42:"1230:cmb-historicaldata.totalpaymentscount";a:2:{i:0;R:27181;i:1;R:9;}s:53:"1230:abstractuserdetailsauthenticationprovider.locked";a:2:{i:0;s:14:"out-mifos-core";i:1;R:9;}s:55:"1230:abstractuserdetailsauthenticationprovider.disabled";a:2:{i:0;R:27388;i:1;R:9;}s:61:"1230:abstractuserdetailsauthenticationprovider.badcredentials";a:2:{i:0;R:27388;i:1;R:9;}s:30:"1230:userdetailsservice.locked";a:2:{i:0;R:27388;i:1;R:9;}s:32:"1230:userdetailsservice.disabled";a:2:{i:0;R:27388;i:1;R:9;}s:31:"1230:userdetailsservice.expired";a:2:{i:0;R:27388;i:1;R:9;}s:42:"1230:userdetailsservice.credentialsexpired";a:2:{i:0;R:27388;i:1;R:9;}s:10:"1230:admin";a:2:{i:0;R:27388;i:1;R:9;}s:30:"1230:admin.administrativetasks";a:2:{i:0;R:27388;i:1;R:9;}s:37:"1230:admin.administrativetaskswelcome";a:2:{i:0;R:27388;i:1;R:9;}s:29:"1230:admin.manageorganization";a:2:{i:0;R:27388;i:1;R:9;}s:22:"1230:admin.systemusers";a:2:{i:0;R:27388;i:1;R:9;}s:26:"1230:admin.viewsystemusers";a:2:{i:0;R:27388;i:1;R:9;}s:30:"1230:admin.definenewsystemuser";a:2:{i:0;R:27388;i:1;R:9;}s:36:"1230:admin.managerolesandpermissions";a:2:{i:0;R:27388;i:1;R:9;}s:18:"1230:admin.offices";a:2:{i:0;R:27388;i:1;R:9;}s:22:"1230:admin.viewoffices";a:2:{i:0;R:27388;i:1;R:9;}s:26:"1230:admin.definenewoffice";a:2:{i:0;R:27388;i:1;R:9;}s:30:"1230:admin.viewofficehierarchy";a:2:{i:0;R:27388;i:1;R:9;}s:34:"1230:admin.organizationpreferences";a:2:{i:0;R:27388;i:1;R:9;}s:19:"1230:admin.viewfees";a:2:{i:0;R:27388;i:1;R:9;}s:24:"1230:admin.definenewfees";a:2:{i:0;R:27388;i:1;R:9;}s:20:"1230:admin.viewfunds";a:2:{i:0;R:27388;i:1;R:9;}s:24:"1230:admin.definenewfund";a:2:{i:0;R:27388;i:1;R:9;}s:29:"1230:admin.definenewchecklist";a:2:{i:0;R:27388;i:1;R:9;}s:25:"1230:admin.viewchecklists";a:2:{i:0;R:27388;i:1;R:9;}s:23:"1230:admin.viewholidays";a:2:{i:0;R:27388;i:1;R:9;}s:28:"1230:admin.definenewholidays";a:2:{i:0;R:27388;i:1;R:9;}s:33:"1230:admin.defineacceptedpayments";a:2:{i:0;R:27388;i:1;R:9;}s:35:"1230:admin.vieworganizationsettings";a:2:{i:0;R:27388;i:1;R:9;}s:26:"1230:admin.viewppisettings";a:2:{i:0;R:27388;i:1;R:9;}s:31:"1230:admin.configureppisettings";a:2:{i:0;R:27388;i:1;R:9;}s:30:"1230:admin.datadisplayandrules";a:2:{i:0;R:27388;i:1;R:9;}s:23:"1230:admin.definelabels";a:2:{i:0;R:27388;i:1;R:9;}s:28:"1230:admin.customizemessages";a:2:{i:0;R:27388;i:1;R:9;}s:30:"1230:admin.definelookupoptions";a:2:{i:0;R:27388;i:1;R:9;}s:39:"1230:admin.definemandatory/hiddenfields";a:2:{i:0;R:27388;i:1;R:9;}s:31:"1230:admin.viewadditionalfields";a:2:{i:0;R:27388;i:1;R:9;}s:33:"1230:admin.defineadditionalfields";a:2:{i:0;R:27388;i:1;R:9;}s:24:"1230:admin.manageimports";a:2:{i:0;R:27388;i:1;R:9;}s:29:"1230:admin.importtransactions";a:2:{i:0;R:27388;i:1;R:9;}s:31:"1230:admin.systemadministration";a:2:{i:0;R:27388;i:1;R:9;}s:32:"1230:admin.viewsysteminformation";a:2:{i:0;R:27388;i:1;R:9;}s:52:"1230:admin.viewsysteminformation.viewappliedupgrades";a:2:{i:0;R:27388;i:1;R:9;}s:23:"1230:admin.monthclosing";a:2:{i:0;R:27388;i:1;R:9;}s:19:"1230:admin.shutdown";a:2:{i:0;R:27388;i:1;R:9;}s:20:"1230:admin.batchjobs";a:2:{i:0;R:27388;i:1;R:9;}s:25:"1230:admin.manageproducts";a:2:{i:0;R:27388;i:1;R:9;}s:33:"1230:admin.productrulesattributes";a:2:{i:0;R:27388;i:1;R:9;}s:32:"1230:admin.viewproductcategories";a:2:{i:0;R:27388;i:1;R:9;}s:28:"1230:admin.definenewcategory";a:2:{i:0;R:27388;i:1;R:9;}s:41:"1230:admin.viewlatenessdormancydefinition";a:2:{i:0;R:27388;i:1;R:9;}s:27:"1230:admin.manageproductmix";a:2:{i:0;R:27388;i:1;R:9;}s:26:"1230:admin.viewproductsmix";a:2:{i:0;R:27388;i:1;R:9;}s:28:"1230:admin.defineproductsmix";a:2:{i:0;R:27388;i:1;R:9;}s:29:"1230:admin.manageloanproducts";a:2:{i:0;R:27388;i:1;R:9;}s:27:"1230:admin.viewloanproducts";a:2:{i:0;R:27388;i:1;R:9;}s:31:"1230:admin.definenewloanproduct";a:2:{i:0;R:27388;i:1;R:9;}s:32:"1230:admin.managesavingsproducts";a:2:{i:0;R:27388;i:1;R:9;}s:30:"1230:admin.viewsavingsproducts";a:2:{i:0;R:27388;i:1;R:9;}s:34:"1230:admin.definenewsavingsproduct";a:2:{i:0;R:27388;i:1;R:9;}s:25:"1230:admin.manageaccounts";a:2:{i:0;R:27388;i:1;R:9;}s:29:"1230:admin.manageloanaccounts";a:2:{i:0;R:27388;i:1;R:9;}s:31:"1230:admin.reverseloandisbursal";a:2:{i:0;R:27388;i:1;R:9;}s:28:"1230:admin.redoloandisbursal";a:2:{i:0;R:27388;i:1;R:9;}s:24:"1230:admin.managereports";a:2:{i:0;R:27388;i:1;R:9;}s:29:"1230:admin.viewadmindocuments";a:2:{i:0;R:27388;i:1;R:9;}s:31:"1230:admin.uploadadmindocuments";a:2:{i:0;R:27388;i:1;R:9;}s:31:"1230:admin.viewreportstemplates";a:2:{i:0;R:27388;i:1;R:9;}s:31:"1230:admin.uploadreporttemplate";a:2:{i:0;R:27388;i:1;R:9;}s:30:"1230:admin.viewreportscategory";a:2:{i:0;R:27388;i:1;R:9;}s:34:"1230:admin.definenewreportcategory";a:2:{i:0;R:27388;i:1;R:9;}s:24:"1230:admin.managesurveys";a:2:{i:0;R:27388;i:1;R:9;}s:22:"1230:admin.viewsurveys";a:2:{i:0;R:27388;i:1;R:9;}s:26:"1230:admin.definenewsurvey";a:2:{i:0;R:27388;i:1;R:9;}s:27:"1230:admin.viewquestionbank";a:2:{i:0;R:27388;i:1;R:9;}s:26:"1230:admin.definequestions";a:2:{i:0;R:27388;i:1;R:9;}s:26:"1230:admin.managequestions";a:2:{i:0;R:27388;i:1;R:9;}s:24:"1230:admin.viewquestions";a:2:{i:0;R:27388;i:1;R:9;}s:28:"1230:admin.definenewquestion";a:2:{i:0;R:27388;i:1;R:9;}s:29:"1230:admin.viewquestiongroups";a:2:{i:0;R:27388;i:1;R:9;}s:33:"1230:admin.definenewquestiongroup";a:2:{i:0;R:27388;i:1;R:9;}s:35:"1230:admin.definenewproductcategory";a:2:{i:0;R:27388;i:1;R:9;}s:46:"1230:admin.searchbynamesystemidoraccountnumber";a:2:{i:0;R:27388;i:1;R:9;}s:17:"1230:admin.search";a:2:{i:0;R:27388;i:1;R:9;}s:49:"1230:admin.definelabels.mandatoryfield.headoffice";a:2:{i:0;R:27388;i:1;R:9;}s:24:"1230:notempty.headoffice";a:2:{i:0;R:27388;i:1;R:9;}s:28:"1230:notempty.regionaloffice";a:2:{i:0;R:27388;i:1;R:9;}s:31:"1230:notempty.subregionaloffice";a:2:{i:0;R:27388;i:1;R:9;}s:24:"1230:notempty.areaoffice";a:2:{i:0;R:27388;i:1;R:9;}s:26:"1230:notempty.branchoffice";a:2:{i:0;R:27388;i:1;R:9;}s:20:"1230:notempty.client";a:2:{i:0;R:27388;i:1;R:9;}s:19:"1230:notempty.group";a:2:{i:0;R:27388;i:1;R:9;}s:20:"1230:notempty.center";a:2:{i:0;R:27388;i:1;R:9;}s:19:"1230:notempty.loans";a:2:{i:0;R:27388;i:1;R:9;}s:21:"1230:notempty.savings";a:2:{i:0;R:27388;i:1;R:9;}s:19:"1230:notempty.state";a:2:{i:0;R:27388;i:1;R:9;}s:24:"1230:notempty.postalcode";a:2:{i:0;R:27388;i:1;R:9;}s:23:"1230:notempty.ethnicity";a:2:{i:0;R:27388;i:1;R:9;}s:25:"1230:notempty.citizenship";a:2:{i:0;R:27388;i:1;R:9;}s:25:"1230:notempty.handicapped";a:2:{i:0;R:27388;i:1;R:9;}s:20:"1230:notempty.govtid";a:2:{i:0;R:27388;i:1;R:9;}s:22:"1230:notempty.address1";a:2:{i:0;R:27388;i:1;R:9;}s:22:"1230:notempty.address2";a:2:{i:0;R:27388;i:1;R:9;}s:22:"1230:notempty.address3";a:2:{i:0;R:27388;i:1;R:9;}s:32:"1230:notempty.partialapplication";a:2:{i:0;R:27388;i:1;R:9;}s:29:"1230:notempty.pendingapproval";a:2:{i:0;R:27388;i:1;R:9;}s:22:"1230:notempty.approved";a:2:{i:0;R:27388;i:1;R:9;}s:20:"1230:notempty.cancel";a:2:{i:0;R:27388;i:1;R:9;}s:20:"1230:notempty.closed";a:2:{i:0;R:27388;i:1;R:9;}s:20:"1230:notempty.onhold";a:2:{i:0;R:27388;i:1;R:9;}s:20:"1230:notempty.active";a:2:{i:0;R:27388;i:1;R:9;}s:22:"1230:notempty.inactive";a:2:{i:0;R:27388;i:1;R:9;}s:34:"1230:notempty.activeingoodstanding";a:2:{i:0;R:27388;i:1;R:9;}s:33:"1230:notempty.activeinbadstanding";a:2:{i:0;R:27388;i:1;R:9;}s:33:"1230:notempty.closedobligationmet";a:2:{i:0;R:27388;i:1;R:9;}s:31:"1230:notempty.closedrescheduled";a:2:{i:0;R:27388;i:1;R:9;}s:30:"1230:notempty.closedwrittenoff";a:2:{i:0;R:27388;i:1;R:9;}s:18:"1230:notempty.none";a:2:{i:0;R:27388;i:1;R:9;}s:34:"1230:notempty.graceonallrepayments";a:2:{i:0;R:27388;i:1;R:9;}s:32:"1230:notempty.principalonlygrace";a:2:{i:0;R:27388;i:1;R:9;}s:22:"1230:notempty.interest";a:2:{i:0;R:27388;i:1;R:9;}s:24:"1230:notempty.externalid";a:2:{i:0;R:27388;i:1;R:9;}s:23:"1230:notempty.bulkentry";a:2:{i:0;R:27388;i:1;R:9;}s:24:"1230:pagenotfoundheading";a:2:{i:0;R:27388;i:1;R:9;}s:24:"1230:pagenotfoundmessage";a:2:{i:0;R:27388;i:1;R:9;}s:22:"1230:pagenotfoundtitle";a:2:{i:0;R:27388;i:1;R:9;}s:24:"1230:accessdeniedheading";a:2:{i:0;R:27388;i:1;R:9;}s:24:"1230:accessdeniedmessage";a:2:{i:0;R:27388;i:1;R:9;}s:22:"1230:accessdeniedtitle";a:2:{i:0;R:27388;i:1;R:9;}s:38:"1230:collectionsheetentry.select.title";a:2:{i:0;R:27388;i:1;R:9;}s:56:"1230:collectionsheetentry.select.form.label.branchoffice";a:2:{i:0;R:27388;i:1;R:9;}s:55:"1230:collectionsheetentry.select.form.label.loanofficer";a:2:{i:0;R:27388;i:1;R:9;}s:50:"1230:collectionsheetentry.select.form.label.center";a:2:{i:0;R:27388;i:1;R:9;}s:55:"1230:collectionsheetentry.select.form.label.paymentmode";a:2:{i:0;R:27388;i:1;R:9;}s:21:"1230:commitidentifier";a:2:{i:0;R:27388;i:1;R:9;}s:23:"1230:createclient.title";a:2:{i:0;R:27388;i:1;R:9;}s:50:"1230:createclientsuccess.clientcreatedsuccessfully";a:2:{i:0;R:27388;i:1;R:9;}s:30:"1230:createclientsuccess.title";a:2:{i:0;R:27388;i:1;R:9;}s:20:"1230:createnewclient";a:2:{i:0;R:27388;i:1;R:9;}s:19:"1230:createnewgroup";a:2:{i:0;R:27388;i:1;R:9;}s:27:"1230:customreportsdirectory";a:2:{i:0;R:27388;i:1;R:9;}s:11:"1230:delete";a:2:{i:0;R:27388;i:1;R:9;}s:33:"1230:deleteloanproduct.areyousure";a:2:{i:0;R:27388;i:1;R:9;}s:28:"1230:deleteloanproduct.title";a:2:{i:0;R:27388;i:1;R:9;}s:47:"1230:deleteloanproductfailure.becauseloansexist";a:2:{i:0;R:27388;i:1;R:9;}s:44:"1230:deleteloanproductfailure.couldnotdelete";a:2:{i:0;R:27388;i:1;R:9;}s:35:"1230:deleteloanproductfailure.title";a:2:{i:0;R:27388;i:1;R:9;}s:49:"1230:deleteloanproductsuccess.successfullydeleted";a:2:{i:0;R:27388;i:1;R:9;}s:35:"1230:deleteloanproductsuccess.title";a:2:{i:0;R:27388;i:1;R:9;}s:18:"1230:disbursaldate";a:2:{i:0;R:27388;i:1;R:9;}s:17:"1230:disburseloan";a:2:{i:0;R:27388;i:1;R:9;}s:21:"1230:divisionaloffice";a:2:{i:0;R:27388;i:1;R:9;}s:18:"1230:educationloan";a:2:{i:0;R:27388;i:1;R:9;}s:24:"1230:error.not-specified";a:2:{i:0;R:27388;i:1;R:9;}s:29:"1230:entercollectionsheetdata";a:2:{i:0;R:27388;i:1;R:9;}s:14:"1230:firstname";a:2:{i:0;R:27388;i:1;R:9;}s:13:"1230:greeting";a:2:{i:0;R:27388;i:1;R:9;}s:24:"1230:groups.view.heading";a:2:{i:0;R:27388;i:1;R:9;}s:31:"1230:loanproduct.create.heading";a:2:{i:0;R:27388;i:1;R:9;}s:39:"1230:loanproduct.create.success.heading";a:2:{i:0;R:27388;i:1;R:9;}s:29:"1230:loanproduct.edit.heading";a:2:{i:0;R:27388;i:1;R:9;}s:37:"1230:loanproduct.edit.success.heading";a:2:{i:0;R:27388;i:1;R:9;}s:37:"1230:loanproduct.longname.description";a:2:{i:0;R:27388;i:1;R:9;}s:44:"1230:loanproduct.maxinterestrate.description";a:2:{i:0;R:27388;i:1;R:9;}s:44:"1230:loanproduct.mininterestrate.description";a:2:{i:0;R:27388;i:1;R:9;}s:38:"1230:loanproduct.shortname.description";a:2:{i:0;R:27388;i:1;R:9;}s:35:"1230:loanproduct.status.description";a:2:{i:0;R:27388;i:1;R:9;}s:29:"1230:loanproduct.view.heading";a:2:{i:0;R:27388;i:1;R:9;}s:16:"1230:loanproduct";a:2:{i:0;R:27388;i:1;R:9;}s:29:"1230:loanproductstatus.active";a:2:{i:0;R:27388;i:1;R:9;}s:31:"1230:loanproductstatus.inactive";a:2:{i:0;R:27388;i:1;R:9;}s:30:"1230:loanproducts.view.heading";a:2:{i:0;R:27388;i:1;R:9;}s:34:"1230:loanproducts.view.nonedefined";a:2:{i:0;R:27388;i:1;R:9;}s:44:"1230:loanproducts.view.tableheading.longname";a:2:{i:0;R:27388;i:1;R:9;}s:45:"1230:loanproducts.view.tableheading.shortname";a:2:{i:0;R:27388;i:1;R:9;}s:18:"1230:manageclients";a:2:{i:0;R:27388;i:1;R:9;}s:22:"1230:manageinformation";a:2:{i:0;R:27388;i:1;R:9;}s:21:"1230:noofficesdefined";a:2:{i:0;R:27388;i:1;R:9;}s:9:"1230:note";a:2:{i:0;R:27388;i:1;R:9;}s:15:"1230:quickstart";a:2:{i:0;R:27388;i:1;R:9;}s:13:"1230:required";a:2:{i:0;R:27388;i:1;R:9;}s:29:"1230:security.role.role_admin";a:2:{i:0;R:27388;i:1;R:9;}s:28:"1230:security.role.role_user";a:2:{i:0;R:27388;i:1;R:9;}s:33:"1230:security.role.role_anonymous";a:2:{i:0;R:27388;i:1;R:9;}s:29:"1230:security.role.role_guest";a:2:{i:0;R:27388;i:1;R:9;}s:21:"1230:seealistofgroups";a:2:{i:0;R:27388;i:1;R:9;}s:11:"1230:submit";a:2:{i:0;R:27388;i:1;R:9;}s:14:"1230:tab.admin";a:2:{i:0;R:27388;i:1;R:9;}s:27:"1230:tab.clientsandaccounts";a:2:{i:0;R:27388;i:1;R:9;}s:13:"1230:tab.home";a:2:{i:0;R:27388;i:1;R:9;}s:16:"1230:tab.reports";a:2:{i:0;R:27388;i:1;R:9;}s:80:"1230:viewofficehierarchy.theofficehierarchycanhaveminimumtwoandmaximumfivelevels";a:2:{i:0;R:27388;i:1;R:9;}s:87:"1230:viewofficehierarchy.thehighestandlowesthierarchylevelscannotberemovedfromthesystem";a:2:{i:0;R:27388;i:1;R:9;}s:51:"1230:viewofficehierarchy.checkthelevelstobeincluded";a:2:{i:0;R:27388;i:1;R:9;}s:35:"1230:viewofficehierarchy.headoffice";a:2:{i:0;R:27388;i:1;R:9;}s:39:"1230:viewofficehierarchy.regionaloffice";a:2:{i:0;R:27388;i:1;R:9;}s:41:"1230:viewofficehierarchy.divisionaloffice";a:2:{i:0;R:27388;i:1;R:9;}s:35:"1230:viewofficehierarchy.areaoffice";a:2:{i:0;R:27388;i:1;R:9;}s:37:"1230:viewofficehierarchy.branchoffice";a:2:{i:0;R:27388;i:1;R:9;}s:29:"1230:viewofficehierarchy.note";a:2:{i:0;R:27388;i:1;R:9;}s:10:"1230:title";a:2:{i:0;R:27388;i:1;R:9;}s:31:"1230:toquicklyfindaclientyoucan";a:2:{i:0;R:27388;i:1;R:9;}s:24:"1230:toviewalistofgroups";a:2:{i:0;R:27388;i:1;R:9;}s:28:"1230:typemismatch.percentage";a:2:{i:0;R:27388;i:1;R:9;}s:17:"1230:typemismatch";a:2:{i:0;R:27388;i:1;R:9;}s:25:"1230:user.confirmpassword";a:2:{i:0;R:27388;i:1;R:9;}s:24:"1230:user.create.heading";a:2:{i:0;R:27388;i:1;R:9;}s:32:"1230:user.create.success.heading";a:2:{i:0;R:27388;i:1;R:9;}s:30:"1230:user.create.success.title";a:2:{i:0;R:27388;i:1;R:9;}s:22:"1230:user.create.title";a:2:{i:0;R:27388;i:1;R:9;}s:18:"1230:user.password";a:2:{i:0;R:27388;i:1;R:9;}s:27:"1230:user.roles.description";a:2:{i:0;R:27388;i:1;R:9;}s:16:"1230:user.userid";a:2:{i:0;R:27388;i:1;R:9;}s:10:"1230:users";a:2:{i:0;R:27388;i:1;R:9;}s:9:"1230:user";a:2:{i:0;R:27388;i:1;R:9;}s:10:"1230:mifos";a:2:{i:0;R:27388;i:1;R:9;}s:10:"1230:login";a:2:{i:0;R:27388;i:1;R:9;}s:11:"1230:logout";a:2:{i:0;R:27388;i:1;R:9;}s:17:"1230:yoursettings";a:2:{i:0;R:27388;i:1;R:9;}s:19:"1230:switchsitetype";a:2:{i:0;R:27388;i:1;R:9;}s:21:"1230:viewgroups.title";a:2:{i:0;R:27388;i:1;R:9;}s:43:"1230:youcannavigateyourwaythroughmifosusing";a:2:{i:0;R:27388;i:1;R:9;}s:26:"1230:system.unhandlederror";a:2:{i:0;R:27388;i:1;R:9;}s:33:"1230:system.unhandlederrorheading";a:2:{i:0;R:27388;i:1;R:9;}s:32:"1230:system.pageexpiredexception";a:2:{i:0;R:27388;i:1;R:9;}s:22:"1230:system.tocontinue";a:2:{i:0;R:27388;i:1;R:9;}s:21:"1230:systemwidefields";a:2:{i:0;R:27388;i:1;R:9;}s:18:"1230:viewchangelog";a:2:{i:0;R:27388;i:1;R:9;}s:45:"1230:manageproducts.editcategory.categoryname";a:2:{i:0;R:27388;i:1;R:9;}s:56:"1230:manageproducts.editcategory.editcategoryinformation";a:2:{i:0;R:27388;i:1;R:9;}s:48:"1230:manageproducts.editcategory.categorydetails";a:2:{i:0;R:27388;i:1;R:9;}s:51:"1230:manageproducts.editcategory.editthefieldsbelow";a:2:{i:0;R:27388;i:1;R:9;}s:44:"1230:manageproducts.editcategory.description";a:2:{i:0;R:27388;i:1;R:9;}s:40:"1230:manageproducts.editcategory.status1";a:2:{i:0;R:27388;i:1;R:9;}s:53:"1230:organizationpreferences.definenewchecklists.name";a:2:{i:0;R:27388;i:1;R:9;}s:53:"1230:organizationpreferences.definenewchecklists.type";a:2:{i:0;R:27388;i:1;R:9;}s:54:"1230:organizationpreferences.definenewchecklists.items";a:2:{i:0;R:27388;i:1;R:9;}s:69:"1230:organizationpreferences.definenewchecklists.checklistinformation";a:2:{i:0;R:27388;i:1;R:9;}s:64:"1230:organizationpreferences.definenewchecklists.addnewchecklist";a:2:{i:0;R:27388;i:1;R:9;}s:74:"1230:organizationpreferences.definenewchecklists.enterchecklistinformation";a:2:{i:0;R:27388;i:1;R:9;}s:89:"1230:organizationpreferences.definenewchecklists.completethefieldsbelow.thenclickpreview.";a:2:{i:0;R:27388;i:1;R:9;}s:65:"1230:organizationpreferences.definenewchecklists.checklistdetails";a:2:{i:0;R:27388;i:1;R:9;}s:78:"1230:organizationpreferences.definenewchecklists.displayedwhenmovingintostatus";a:2:{i:0;R:27388;i:1;R:9;}s:57:"1230:organizationpreferences.definenewchecklists.inactive";a:2:{i:0;R:27388;i:1;R:9;}s:107:"1230:organizationpreferences.definenewchecklists.entertextforeachitemandclickaddtosavetheiteminthelistbelow";a:2:{i:0;R:27388;i:1;R:9;}s:63:"1230:organizationpreferences.definenewchecklists.removeselected";a:2:{i:0;R:27388;i:1;R:9;}s:67:"1230:manageproducts.definesavingsproducts.savingsproductinformation";a:2:{i:0;R:27388;i:1;R:9;}s:63:"1230:manageproducts.definesavingsproducts.addanewsavingsproduct";a:2:{i:0;R:27388;i:1;R:9;}s:72:"1230:manageproducts.definesavingsproducts.entersavingsproductinformation";a:2:{i:0;R:27388;i:1;R:9;}s:64:"1230:manageproducts.definesavingsproducts.completethefieldsbelow";a:2:{i:0;R:27388;i:1;R:9;}s:50:"1230:manageproducts.definesavingsproducts.fromdate";a:2:{i:0;R:27388;i:1;R:9;}s:49:"1230:manageproducts.definesavingsproducts.enddate";a:2:{i:0;R:27388;i:1;R:9;}s:49:"1230:manageproducts.definesavingsproducts.clients";a:2:{i:0;R:27388;i:1;R:9;}s:48:"1230:manageproducts.definesavingsproducts.groups";a:2:{i:0;R:27388;i:1;R:9;}s:49:"1230:manageproducts.definesavingsproducts.centers";a:2:{i:0;R:27388;i:1;R:9;}s:54:"1230:manageproducts.definesavingsproducts.allcustomers";a:2:{i:0;R:27388;i:1;R:9;}s:49:"1230:manageproducts.definesavingsproducts.unknown";a:2:{i:0;R:27388;i:1;R:9;}s:83:"1230:manageproducts.definesavingsproducts.targeteddepositsandwithdrawalrestrictions";a:2:{i:0;R:27388;i:1;R:9;}s:51:"1230:manageproducts.definesavingsproducts.mandatory";a:2:{i:0;R:27388;i:1;R:9;}s:51:"1230:manageproducts.definesavingsproducts.voluntary";a:2:{i:0;R:27388;i:1;R:9;}s:69:"1230:manageproducts.definesavingsproducts.recommendedamountfordeposit";a:2:{i:0;R:27388;i:1;R:9;}s:67:"1230:manageproducts.definesavingsproducts.mandatoryamountfordeposit";a:2:{i:0;R:27388;i:1;R:9;}s:55:"1230:manageproducts.definesavingsproducts.perindividual";a:2:{i:0;R:27388;i:1;R:9;}s:55:"1230:manageproducts.definesavingsproducts.completegroup";a:2:{i:0;R:27388;i:1;R:9;}s:75:"1230:manageproducts.definesavingsproducts.balanceusedforinterestcalculation";a:2:{i:0;R:27388;i:1;R:9;}s:56:"1230:manageproducts.definesavingsproducts.minimumbalance";a:2:{i:0;R:27388;i:1;R:9;}s:56:"1230:manageproducts.definesavingsproducts.averagebalance";a:2:{i:0;R:27388;i:1;R:9;}s:48:"1230:manageproducts.definesavingsproducts.day(s)";a:2:{i:0;R:27388;i:1;R:9;}s:50:"1230:manageproducts.definesavingsproducts.month(s)";a:2:{i:0;R:27388;i:1;R:9;}s:63:"1230:manageproducts.definesavingsproducts.savingsproductdetails";a:2:{i:0;R:27388;i:1;R:9;}s:61:"1230:manageproducts.definesavingsproducts.productinstancename";a:2:{i:0;R:27388;i:1;R:9;}s:51:"1230:manageproducts.definesavingsproducts.shortname";a:2:{i:0;R:27388;i:1;R:9;}s:53:"1230:manageproducts.definesavingsproducts.description";a:2:{i:0;R:27388;i:1;R:9;}s:57:"1230:manageproducts.definesavingsproducts.productcategory";a:2:{i:0;R:27388;i:1;R:9;}s:55:"1230:manageproducts.definesavingsproducts.applicablefor";a:2:{i:0;R:27388;i:1;R:9;}s:56:"1230:manageproducts.definesavingsproducts.typeofdeposits";a:2:{i:0;R:27388;i:1;R:9;}s:57:"1230:manageproducts.definesavingsproducts.amountappliesto";a:2:{i:0;R:27388;i:1;R:9;}s:64:"1230:manageproducts.definesavingsproducts.maxamountperwithdrawal";a:2:{i:0;R:27388;i:1;R:9;}s:74:"1230:manageproducts.definesavingsproducts.previewsavingsproductinformation";a:2:{i:0;R:27388;i:1;R:9;}s:54:"1230:manageproducts.definesavingsproducts.interestrate";a:2:{i:0;R:27388;i:1;R:9;}s:74:"1230:manageproducts.definesavingsproducts.timeperiodforinterestcalculation";a:2:{i:0;R:27388;i:1;R:9;}s:78:"1230:manageproducts.definesavingsproducts.frequencyofinterestpostingtoaccounts";a:2:{i:0;R:27388;i:1;R:9;}s:86:"1230:manageproducts.definesavingsproducts.minimumbalancerequiredforinterestcalculation";a:2:{i:0;R:27388;i:1;R:9;}s:51:"1230:manageproducts.definesavingsproducts.penalties";a:2:{i:0;R:27388;i:1;R:9;}s:52:"1230:manageproducts.definesavingsproducts.accounting";a:2:{i:0;R:27388;i:1;R:9;}s:59:"1230:manageproducts.definesavingsproducts.glcodefordeposits";a:2:{i:0;R:27388;i:1;R:9;}s:59:"1230:manageproducts.definesavingsproducts.glcodeforinterest";a:2:{i:0;R:27388;i:1;R:9;}s:62:"1230:manageproducts.definesavingsproducts.attachpenaltiestypes";a:2:{i:0;R:27388;i:1;R:9;}s:59:"1230:manageproducts.definesavingsproducts.clickpenaltytypes";a:2:{i:0;R:27388;i:1;R:9;}s:34:"1230:duplicate.generaldetails.name";a:2:{i:0;R:27388;i:1;R:9;}s:33:"1230:notempty.generaldetails.name";a:2:{i:0;R:27388;i:1;R:9;}s:39:"1230:duplicate.generaldetails.shortname";a:2:{i:0;R:27388;i:1;R:9;}s:38:"1230:notempty.generaldetails.shortname";a:2:{i:0;R:27388;i:1;R:9;}s:33:"1230:min.generaldetails.startdate";a:2:{i:0;R:27388;i:1;R:9;}s:33:"1230:max.generaldetails.startdate";a:2:{i:0;R:27388;i:1;R:9;}s:31:"1230:min.generaldetails.enddate";a:2:{i:0;R:27388;i:1;R:9;}s:36:"1230:min.generaldetails.startdateday";a:2:{i:0;R:27388;i:1;R:9;}s:36:"1230:max.generaldetails.startdateday";a:2:{i:0;R:27388;i:1;R:9;}s:40:"1230:notnull.generaldetails.startdateday";a:2:{i:0;R:27388;i:1;R:9;}s:38:"1230:min.generaldetails.startdatemonth";a:2:{i:0;R:27388;i:1;R:9;}s:38:"1230:max.generaldetails.startdatemonth";a:2:{i:0;R:27388;i:1;R:9;}s:34:"1230:min.generaldetails.enddateday";a:2:{i:0;R:27388;i:1;R:9;}s:34:"1230:max.generaldetails.enddateday";a:2:{i:0;R:27388;i:1;R:9;}s:38:"1230:notnull.generaldetails.enddateday";a:2:{i:0;R:27388;i:1;R:9;}s:36:"1230:min.generaldetails.enddatemonth";a:2:{i:0;R:27388;i:1;R:9;}s:36:"1230:max.generaldetails.enddatemonth";a:2:{i:0;R:27388;i:1;R:9;}s:42:"1230:notnull.generaldetails.startdatemonth";a:2:{i:0;R:27388;i:1;R:9;}s:42:"1230:notempty.generaldetails.startdateyear";a:2:{i:0;R:27388;i:1;R:9;}s:45:"1230:notempty.generaldetails.selectedcategory";a:2:{i:0;R:27388;i:1;R:9;}s:50:"1230:notempty.generaldetails.selectedapplicablefor";a:2:{i:0;R:27388;i:1;R:9;}s:48:"1230:notempty.savingsproduct.selecteddeposittype";a:2:{i:0;R:27388;i:1;R:9;}s:41:"1230:min.savingsproduct.amountfordesposit";a:2:{i:0;R:27388;i:1;R:9;}s:57:"1230:notempty.savingsproduct.selectedgroupsavingsapproach";a:2:{i:0;R:27388;i:1;R:9;}s:40:"1230:notnull.savingsproduct.interestrate";a:2:{i:0;R:27388;i:1;R:9;}s:56:"1230:notempty.savingsproduct.selectedinterestcalculation";a:2:{i:0;R:27388;i:1;R:9;}s:56:"1230:notnull.savingsproduct.interestcalculationfrequency";a:2:{i:0;R:27388;i:1;R:9;}s:55:"1230:min.savingsproduct.interestpostingmonthlyfrequency";a:2:{i:0;R:27388;i:1;R:9;}s:59:"1230:notnull.savingsproduct.interestpostingmonthlyfrequency";a:2:{i:0;R:27388;i:1;R:9;}s:61:"1230:min.savingsproduct.balancerequiredforinterestcalculation";a:2:{i:0;R:27388;i:1;R:9;}s:52:"1230:notempty.savingsproduct.selectedprincipalglcode";a:2:{i:0;R:27388;i:1;R:9;}s:51:"1230:notempty.savingsproduct.selectedinterestglcode";a:2:{i:0;R:27388;i:1;R:9;}s:44:"1230:maxdigitsafter.savingproduct.withdrawal";a:2:{i:0;R:27388;i:1;R:9;}s:45:"1230:maxdigitsbefore.savingproduct.withdrawal";a:2:{i:0;R:27388;i:1;R:9;}s:45:"1230:maxdigitsnumber.savingproduct.withdrawal";a:2:{i:0;R:27388;i:1;R:9;}s:41:"1230:maxdigitsafter.savingproduct.deposit";a:2:{i:0;R:27388;i:1;R:9;}s:42:"1230:maxdigitsbefore.savingproduct.deposit";a:2:{i:0;R:27388;i:1;R:9;}s:42:"1230:maxdigitsnumber.savingproduct.deposit";a:2:{i:0;R:27388;i:1;R:9;}s:56:"1230:manadatoryhiddenfields.definemandatory/hiddenfields";a:2:{i:0;R:27388;i:1;R:9;}s:32:"1230:manadatoryhiddenfields.hide";a:2:{i:0;R:27388;i:1;R:9;}s:37:"1230:manadatoryhiddenfields.mandatory";a:2:{i:0;R:27388;i:1;R:9;}s:38:"1230:manadatoryhiddenfields.externalid";a:2:{i:0;R:27388;i:1;R:9;}s:37:"1230:manadatoryhiddenfields.ethnicity";a:2:{i:0;R:27388;i:1;R:9;}s:39:"1230:manadatoryhiddenfields.citizenship";a:2:{i:0;R:27388;i:1;R:9;}s:39:"1230:manadatoryhiddenfields.handicapped";a:2:{i:0;R:27388;i:1;R:9;}s:42:"1230:manadatoryhiddenfields.educationlevel";a:2:{i:0;R:27388;i:1;R:9;}s:33:"1230:manadatoryhiddenfields.photo";a:2:{i:0;R:27388;i:1;R:9;}s:54:"1230:manadatoryhiddenfields.assigningclienttopositions";a:2:{i:0;R:27388;i:1;R:9;}s:36:"1230:manadatoryhiddenfields.address1";a:2:{i:0;R:27388;i:1;R:9;}s:36:"1230:manadatoryhiddenfields.address2";a:2:{i:0;R:27388;i:1;R:9;}s:36:"1230:manadatoryhiddenfields.address3";a:2:{i:0;R:27388;i:1;R:9;}s:41:"1230:manadatoryhiddenfields.city/district";a:2:{i:0;R:27388;i:1;R:9;}s:33:"1230:manadatoryhiddenfields.state";a:2:{i:0;R:27388;i:1;R:9;}s:35:"1230:manadatoryhiddenfields.country";a:2:{i:0;R:27388;i:1;R:9;}s:38:"1230:manadatoryhiddenfields.postalcode";a:2:{i:0;R:27388;i:1;R:9;}s:44:"1230:manadatoryhiddenfields.receiptidanddate";a:2:{i:0;R:27388;i:1;R:9;}s:50:"1230:manadatoryhiddenfields.collateraltypeandnotes";a:2:{i:0;R:27388;i:1;R:9;}s:52:"1230:manadatoryhiddenfields.client/systemusersfields";a:2:{i:0;R:27388;i:1;R:9;}s:38:"1230:manadatoryhiddenfields.middlename";a:2:{i:0;R:27388;i:1;R:9;}s:42:"1230:manadatoryhiddenfields.secondlastname";a:2:{i:0;R:27388;i:1;R:9;}s:40:"1230:manadatoryhiddenfields.governmentid";a:2:{i:0;R:27388;i:1;R:9;}s:41:"1230:manadatoryhiddenfields.martialstatus";a:2:{i:0;R:27388;i:1;R:9;}s:41:"1230:manadatoryhiddenfields.povertystatus";a:2:{i:0;R:27388;i:1;R:9;}s:41:"1230:manadatoryhiddenfields.familydetails";a:2:{i:0;R:27388;i:1;R:9;}s:51:"1230:manadatoryhiddenfields.spouse/fathermiddlename";a:2:{i:0;R:27388;i:1;R:9;}s:55:"1230:manadatoryhiddenfields.spouse/fathersecondlastname";a:2:{i:0;R:27388;i:1;R:9;}s:39:"1230:manadatoryhiddenfields.phonenumber";a:2:{i:0;R:27388;i:1;R:9;}s:35:"1230:manadatoryhiddenfields.trained";a:2:{i:0;R:27388;i:1;R:9;}s:37:"1230:manadatoryhiddenfields.trainedon";a:2:{i:0;R:27388;i:1;R:9;}s:51:"1230:manadatoryhiddenfields.business/workactivities";a:2:{i:0;R:27388;i:1;R:9;}s:41:"1230:manadatoryhiddenfields.numofchildren";a:2:{i:0;R:27388;i:1;R:9;}s:39:"1230:manadatoryhiddenfields.groupfields";a:2:{i:0;R:27388;i:1;R:9;}s:45:"1230:manadatoryhiddenfields.loanaccountfields";a:2:{i:0;R:27388;i:1;R:9;}s:41:"1230:manadatoryhiddenfields.purposeofloan";a:2:{i:0;R:27388;i:1;R:9;}s:40:"1230:manadatoryhiddenfields.sourceoffund";a:2:{i:0;R:27388;i:1;R:9;}s:55:"1230:manadatoryhiddenfields.definemandatoryhiddenfields";a:2:{i:0;R:27388;i:1;R:9;}s:63:"1230:manageproducts.viewproductcategories.viewproductcategories";a:2:{i:0;R:27388;i:1;R:9;}s:92:"1230:manageproducts.viewproductcategories.clickonacategorybelowtoviewdetailsandmakechangesor";a:2:{i:0;R:27388;i:1;R:9;}s:65:"1230:manageproducts.viewproductcategories.definenewreportcategory";a:2:{i:0;R:27388;i:1;R:9;}s:47:"1230:manageproducts.viewproductcategories.loans";a:2:{i:0;R:27388;i:1;R:9;}s:48:"1230:manageproducts.viewproductcategories.others";a:2:{i:0;R:27388;i:1;R:9;}s:49:"1230:manageproducts.viewproductcategories.savings";a:2:{i:0;R:27388;i:1;R:9;}s:24:"1230:editproductcategory";a:2:{i:0;R:27388;i:1;R:9;}s:31:"1230:viewproductcategorydetails";a:2:{i:0;R:27388;i:1;R:9;}s:64:"1230:manageproducts.definenewcategory.productcategoryinformation";a:2:{i:0;R:27388;i:1;R:9;}s:69:"1230:manageproducts.definenewcategory.enterproductcategoryinformation";a:2:{i:0;R:27388;i:1;R:9;}s:53:"1230:manageproducts.definenewcategory.categorydetails";a:2:{i:0;R:27388;i:1;R:9;}s:49:"1230:manageproducts.definenewcategory.producttype";a:2:{i:0;R:27388;i:1;R:9;}s:57:"1230:manageproducts.definenewcategory.categorydescription";a:2:{i:0;R:27388;i:1;R:9;}s:50:"1230:manageproducts.definenewcategory.categoryname";a:2:{i:0;R:27388;i:1;R:9;}s:132:"1230:manageproducts.definenewcategory.completethefieldsbelow.thenclickpreview.clickcanceltoreturntoadminwithoutsubmittinginformation";a:2:{i:0;R:27388;i:1;R:9;}s:36:"1230:notempty.formbean.producttypeid";a:2:{i:0;R:27388;i:1;R:9;}s:42:"1230:notempty.formbean.productcategoryname";a:2:{i:0;R:27388;i:1;R:9;}s:46:"1230:notempty.formbean.productcategorystatusid";a:2:{i:0;R:27388;i:1;R:9;}s:28:"1230:errors.duplcategoryname";a:2:{i:0;R:27388;i:1;R:9;}s:69:"1230:manageproduct.editcategory.previewthefieldsbelow.thenclicksubmit";a:2:{i:0;R:27388;i:1;R:9;}s:25:"1230:editlatenessdormancy";a:2:{i:0;R:27388;i:1;R:9;}s:62:"1230:manageproducts.editlatenessdormancy.setlatenessdefinition";a:2:{i:0;R:27388;i:1;R:9;}s:75:"1230:manageproducts.editlatenessdormancy.specifythenumberofdaysofnonpayment";a:2:{i:0;R:27388;i:1;R:9;}s:45:"1230:manageproducts.editlatenessdormancy.days";a:2:{i:0;R:27388;i:1;R:9;}s:61:"1230:manageproducts.editlatenessdormancy.specifyvalidlateness";a:2:{i:0;R:27388;i:1;R:9;}s:62:"1230:manageproducts.editlatenessdormancy.setdormancydefinition";a:2:{i:0;R:27388;i:1;R:9;}s:79:"1230:manageproducts.editlatenessdormancy.specifythenumberofdaystodefinedormancy";a:2:{i:0;R:27388;i:1;R:9;}s:61:"1230:manageproducts.editlatenessdormancy.specifyvaliddormancy";a:2:{i:0;R:27388;i:1;R:9;}s:45:"1230:manageproducts.editlatenessdormancy.loan";a:2:{i:0;R:27388;i:1;R:9;}s:48:"1230:manageproducts.editlatenessdormancy.savings";a:2:{i:0;R:27388;i:1;R:9;}s:39:"1230:typemismatch.formbean.latenessdays";a:2:{i:0;R:27388;i:1;R:9;}s:39:"1230:typemismatch.formbean.dormancydays";a:2:{i:0;R:27388;i:1;R:9;}s:94:"1230:manageproduct.viewproductmix.clickonaproductinstancebelowtoviewmixdetailsandmakechangesor";a:2:{i:0;R:27388;i:1;R:9;}s:38:"1230:manageproduct.viewproductmix.loan";a:2:{i:0;R:27388;i:1;R:9;}s:41:"1230:manageproduct.viewproductmix.savings";a:2:{i:0;R:27388;i:1;R:9;}s:62:"1230:manageproduct.productmixdetails.editproductmixinformation";a:2:{i:0;R:27388;i:1;R:9;}s:55:"1230:manageproduct.productmixdetails.notallowedproducts";a:2:{i:0;R:27388;i:1;R:9;}s:52:"1230:manageproduct.productmixdetails.allowedproducts";a:2:{i:0;R:27388;i:1;R:9;}s:58:"1230:manageproducts.defineproductmix.productmixinformation";a:2:{i:0;R:27388;i:1;R:9;}s:54:"1230:manageproducts.defineproductmix.addanewproductmix";a:2:{i:0;R:27388;i:1;R:9;}s:131:"1230:manageproducts.defineproductmix.completethefieldsbelow.thenclickpreview.clickcanceltoreturntoadminwithoutsubmittinginformation";a:2:{i:0;R:27388;i:1;R:9;}s:54:"1230:manageproducts.defineproductmix.productmixdetails";a:2:{i:0;R:27388;i:1;R:9;}s:48:"1230:manageproducts.defineproductmix.producttype";a:2:{i:0;R:27388;i:1;R:9;}s:43:"1230:manageproducts.defineproductmix.a-loan";a:2:{i:0;R:27388;i:1;R:9;}s:52:"1230:manageproducts.defineproductmix.advanceinterest";a:2:{i:0;R:27388;i:1;R:9;}s:47:"1230:manageproducts.defineproductmix.individual";a:2:{i:0;R:27388;i:1;R:9;}s:61:"1230:manageproducts.defineproductmix.removenotallowedproducts";a:2:{i:0;R:27388;i:1;R:9;}s:89:"1230:manageproducts.defineproductmix.clickonaproductintherightboxtoselect.thenclickremove";a:2:{i:0;R:27388;i:1;R:9;}s:63:"1230:manageproducts.defineproductmix.enterproductmixinformation";a:2:{i:0;R:27388;i:1;R:9;}s:132:"1230:manageproducts.defineproductmix.completethefieldsbelow.thenclickpreview.clickcanceltoreturntoadminwithoutsubmittinginformation.";a:2:{i:0;R:27388;i:1;R:9;}s:74:"1230:manageproducts.defineproductmix.fieldsmarkedwithanasteriskarerequired";a:2:{i:0;R:27388;i:1;R:9;}s:56:"1230:manageproducts.defineproductmix.productinstancename";a:2:{i:0;R:27388;i:1;R:9;}s:57:"1230:manageproducts.defineproductmix.producttype.required";a:2:{i:0;R:27388;i:1;R:9;}s:27:"1230:manageroles.modifyrole";a:2:{i:0;R:27388;i:1;R:9;}s:73:"1230:manageroles.checktheboxesbelowtoallowpermissionsforthespecifiedrole.";a:2:{i:0;R:27388;i:1;R:9;}s:56:"1230:manageroles.rolesandpermissionswithoutsavingchanges";a:2:{i:0;R:27388;i:1;R:9;}s:40:"1230:manageroles.pleasespecifyarolename.";a:2:{i:0;R:27388;i:1;R:9;}s:25:"1230:manageroles.rolename";a:2:{i:0;R:27388;i:1;R:9;}s:22:"1230:manageroles.funds";a:2:{i:0;R:27388;i:1;R:9;}s:21:"1230:manageroles.fees";a:2:{i:0;R:27388;i:1;R:9;}s:26:"1230:manageroles.personnel";a:2:{i:0;R:27388;i:1;R:9;}s:39:"1230:manageroles.organizationmanagement";a:2:{i:0;R:27388;i:1;R:9;}s:31:"1230:manageroles.cancreatefunds";a:2:{i:0;R:27388;i:1;R:9;}s:31:"1230:manageroles.canmodifyfunds";a:2:{i:0;R:27388;i:1;R:9;}s:36:"1230:manageroles.candefinenewfeetype";a:2:{i:0;R:27388;i:1;R:9;}s:40:"1230:manageroles.canmodifyfeeinformation";a:2:{i:0;R:27388;i:1;R:9;}s:27:"1230:manageroles.checklists";a:2:{i:0;R:27388;i:1;R:9;}s:24:"1230:manageroles.offices";a:2:{i:0;R:27388;i:1;R:9;}s:42:"1230:manageroles.candefinenewchecklisttype";a:2:{i:0;R:27388;i:1;R:9;}s:46:"1230:manageroles.canmodifychecklistinformation";a:2:{i:0;R:27388;i:1;R:9;}s:45:"1230:manageroles.candefineacceptedpaymenttype";a:2:{i:0;R:27388;i:1;R:9;}s:33:"1230:manageroles.officemanagement";a:2:{i:0;R:27388;i:1;R:9;}s:35:"1230:manageroles.cancreatenewoffice";a:2:{i:0;R:27388;i:1;R:9;}s:43:"1230:manageroles.canmodifyofficeinformation";a:2:{i:0;R:27388;i:1;R:9;}s:41:"1230:manageroles.canmodifyofficehierarchy";a:2:{i:0;R:27388;i:1;R:9;}s:31:"1230:manageroles.usermanagement";a:2:{i:0;R:27388;i:1;R:9;}s:40:"1230:manageroles.cancreatenewsystemusers";a:2:{i:0;R:27388;i:1;R:9;}s:41:"1230:manageroles.canmodifyuserinformation";a:2:{i:0;R:27388;i:1;R:9;}s:30:"1230:manageroles.canunlockause";a:2:{i:0;R:27388;i:1;R:9;}s:39:"1230:manageroles.caneditselfinformation";a:2:{i:0;R:27388;i:1;R:9;}s:39:"1230:manageroles.canaddnotestopersonnel";a:2:{i:0;R:27388;i:1;R:9;}s:22:"1230:manageroles.roles";a:2:{i:0;R:27388;i:1;R:9;}s:33:"1230:manageroles.cancreatenewrole";a:2:{i:0;R:27388;i:1;R:9;}s:31:"1230:manageroles.canmodifyarole";a:2:{i:0;R:27388;i:1;R:9;}s:31:"1230:manageroles.candeletearole";a:2:{i:0;R:27388;i:1;R:9;}s:33:"1230:manageroles.clientmanagement";a:2:{i:0;R:27388;i:1;R:9;}s:54:"1230:manageroles.cancreatenewclientinsaveforlaterstate";a:2:{i:0;R:27388;i:1;R:9;}s:59:"1230:manageroles.cancreatenewclientinsubmitforapprovalstate";a:2:{i:0;R:27388;i:1;R:9;}s:51:"1230:manageroles.canchangestatetopartialapplication";a:2:{i:0;R:27388;i:1;R:9;}s:39:"1230:manageroles.canchangestatetoactive";a:2:{i:0;R:27388;i:1;R:9;}s:42:"1230:manageroles.canchangestatetocancelled";a:2:{i:0;R:27388;i:1;R:9;}s:39:"1230:manageroles.canchangestatetoonhold";a:2:{i:0;R:27388;i:1;R:9;}s:39:"1230:manageroles.canchangestatetoclosed";a:2:{i:0;R:27388;i:1;R:9;}s:59:"1230:manageroles.canchangestatetoapplicationpendingapproval";a:2:{i:0;R:27388;i:1;R:9;}s:48:"1230:manageroles.canmakepaymentstoclientaccounts";a:2:{i:0;R:27388;i:1;R:9;}s:56:"1230:manageroles.canmakeadjustmententriestoclientaccount";a:2:{i:0;R:27388;i:1;R:9;}s:35:"1230:manageroles.canwaiveadueamount";a:2:{i:0;R:27388;i:1;R:9;}s:51:"1230:manageroles.canremovefeetypesfromclientaccount";a:2:{i:0;R:27388;i:1;R:9;}s:36:"1230:manageroles.canaddnotestoclient";a:2:{i:0;R:27388;i:1;R:9;}s:38:"1230:manageroles.caneditmfiinformation";a:2:{i:0;R:27388;i:1;R:9;}s:39:"1230:manageroles.caneditgroupmembership";a:2:{i:0;R:27388;i:1;R:9;}s:40:"1230:manageroles.caneditofficemembership";a:2:{i:0;R:27388;i:1;R:9;}s:39:"1230:manageroles.caneditmeetingschedule";a:2:{i:0;R:27388;i:1;R:9;}s:41:"1230:manageroles.canadd/edithistoricadata";a:2:{i:0;R:27388;i:1;R:9;}s:53:"1230:manageroles.caneditfeeamountattachedtotheaccount";a:2:{i:0;R:27388;i:1;R:9;}s:36:"1230:manageroles.canblacklistaclient";a:2:{i:0;R:27388;i:1;R:9;}s:42:"1230:manageroles.canspecifymeetingschedule";a:2:{i:0;R:27388;i:1;R:9;}s:43:"1230:manageroles.caneditpersonalinformation";a:2:{i:0;R:27388;i:1;R:9;}s:48:"1230:manageroles.canapplychargestoclientaccounts";a:2:{i:0;R:27388;i:1;R:9;}s:43:"1230:manageroles.canremoveclientsfromgroups";a:2:{i:0;R:27388;i:1;R:9;}s:47:"1230:manageroles.canaddanexistingclienttoagroup";a:2:{i:0;R:27388;i:1;R:9;}s:53:"1230:manageroles.cancreatenewgroupinsaveforlaterstate";a:2:{i:0;R:27388;i:1;R:9;}s:58:"1230:manageroles.cancreatenewgroupinsubmitforapprovalstate";a:2:{i:0;R:27388;i:1;R:9;}s:47:"1230:manageroles.canmakepaymentstogroupaccounts";a:2:{i:0;R:27388;i:1;R:9;}s:55:"1230:manageroles.canmakeadjustmententriestogroupaccount";a:2:{i:0;R:27388;i:1;R:9;}s:50:"1230:manageroles.canremovefeetypesfromgroupaccount";a:2:{i:0;R:27388;i:1;R:9;}s:35:"1230:manageroles.canaddnotestogroup";a:2:{i:0;R:27388;i:1;R:9;}s:40:"1230:manageroles.caneditgroupinformation";a:2:{i:0;R:27388;i:1;R:9;}s:40:"1230:manageroles.caneditcenterclientship";a:2:{i:0;R:27388;i:1;R:9;}s:42:"1230:manageroles.canadd/edithistoricaldata";a:2:{i:0;R:27388;i:1;R:9;}s:35:"1230:manageroles.canblacklistagroup";a:2:{i:0;R:27388;i:1;R:9;}s:47:"1230:manageroles.canapplychargestogroupaccounts";a:2:{i:0;R:27388;i:1;R:9;}s:35:"1230:manageroles.cancreatenewcenter";a:2:{i:0;R:27388;i:1;R:9;}s:43:"1230:manageroles.canmodifycenterinformation";a:2:{i:0;R:27388;i:1;R:9;}s:36:"1230:manageroles.caneditcenterstatus";a:2:{i:0;R:27388;i:1;R:9;}s:48:"1230:manageroles.canmakepaymentstocenteraccounts";a:2:{i:0;R:27388;i:1;R:9;}s:56:"1230:manageroles.canmakeadjustmententriestocenteraccount";a:2:{i:0;R:27388;i:1;R:9;}s:51:"1230:manageroles.canremovefeetypesfromcenteraccount";a:2:{i:0;R:27388;i:1;R:9;}s:43:"1230:manageroles.canaddnotestocenterrecords";a:2:{i:0;R:27388;i:1;R:9;}s:48:"1230:manageroles.canapplychargestocenteraccounts";a:2:{i:0;R:27388;i:1;R:9;}s:34:"1230:manageroles.productdefinition";a:2:{i:0;R:27388;i:1;R:9;}s:34:"1230:manageroles.productcategories";a:2:{i:0;R:27388;i:1;R:9;}s:46:"1230:manageroles.candefinenewproductcategories";a:2:{i:0;R:27388;i:1;R:9;}s:50:"1230:manageroles.caneditproductcategoryinformation";a:2:{i:0;R:27388;i:1;R:9;}s:53:"1230:manageroles.canmodifylateness/dormancydefinition";a:2:{i:0;R:27388;i:1;R:9;}s:29:"1230:manageroles.loanproducts";a:2:{i:0;R:27388;i:1;R:9;}s:48:"1230:manageroles.candefinenewloanproductinstance";a:2:{i:0;R:27388;i:1;R:9;}s:44:"1230:manageroles.caneditloanproductinstances";a:2:{i:0;R:27388;i:1;R:9;}s:32:"1230:manageroles.savingsproducts";a:2:{i:0;R:27388;i:1;R:9;}s:51:"1230:manageroles.candefinenewsavingsproductinstance";a:2:{i:0;R:27388;i:1;R:9;}s:47:"1230:manageroles.caneditsavingsproductinstances";a:2:{i:0;R:27388;i:1;R:9;}s:27:"1230:manageroles.productmix";a:2:{i:0;R:27388;i:1;R:9;}s:36:"1230:manageroles.candefineproductmix";a:2:{i:0;R:27388;i:1;R:9;}s:34:"1230:manageroles.caneditproductmix";a:2:{i:0;R:27388;i:1;R:9;}s:31:"1230:manageroles.loanmanagement";a:2:{i:0;R:27388;i:1;R:9;}s:31:"1230:manageroles.loanprocessing";a:2:{i:0;R:27388;i:1;R:9;}s:59:"1230:manageroles.cancreatenewloanaccountinsaveforlaterstate";a:2:{i:0;R:27388;i:1;R:9;}s:64:"1230:manageroles.cancreatenewloanaccountinsubmitforapprovalstate";a:2:{i:0;R:27388;i:1;R:9;}s:41:"1230:manageroles.canchangestatetoapproved";a:2:{i:0;R:27388;i:1;R:9;}s:46:"1230:manageroles.canchangestatetodisbursedtolo";a:2:{i:0;R:27388;i:1;R:9;}s:48:"1230:manageroles.canchangestatetopendingapproval";a:2:{i:0;R:27388;i:1;R:9;}s:50:"1230:manageroles.canchangestatetoclosed-writtenoff";a:2:{i:0;R:27388;i:1;R:9;}s:51:"1230:manageroles.canchangestatetoclosed-rescheduled";a:2:{i:0;R:27388;i:1;R:9;}s:46:"1230:manageroles.caneditloanaccountinformation";a:2:{i:0;R:27388;i:1;R:9;}s:41:"1230:manageroles.canaddnotestoloanaccount";a:2:{i:0;R:27388;i:1;R:9;}s:33:"1230:manageroles.loantransactions";a:2:{i:0;R:27388;i:1;R:9;}s:43:"1230:manageroles.canmakepaymenttotheaccount";a:2:{i:0;R:27388;i:1;R:9;}s:51:"1230:manageroles.canmakeadjustmententrytotheaccount";a:2:{i:0;R:27388;i:1;R:9;}s:32:"1230:manageroles.canwaivepenalty";a:2:{i:0;R:27388;i:1;R:9;}s:40:"1230:manageroles.canwaiveafeeinstallment";a:2:{i:0;R:27388;i:1;R:9;}s:54:"1230:manageroles.canremovefeetypesattachedtotheaccount";a:2:{i:0;R:27388;i:1;R:9;}s:39:"1230:manageroles.canapplychargestoloans";a:2:{i:0;R:27388;i:1;R:9;}s:29:"1230:manageroles.canrepayloan";a:2:{i:0;R:27388;i:1;R:9;}s:32:"1230:manageroles.candisburseloan";a:2:{i:0;R:27388;i:1;R:9;}s:37:"1230:manageroles.canadjustpaymentwhen";a:2:{i:0;R:27388;i:1;R:9;}s:41:"1230:manageroles.canreverseloandisbursals";a:2:{i:0;R:27388;i:1;R:9;}s:38:"1230:manageroles.canredoloandisbursals";a:2:{i:0;R:27388;i:1;R:9;}s:34:"1230:manageroles.savingsmanagement";a:2:{i:0;R:27388;i:1;R:9;}s:62:"1230:manageroles.cancreatenewsavingsaccountinsaveforlaterstate";a:2:{i:0;R:27388;i:1;R:9;}s:40:"1230:manageroles.canupdatesavingsaccount";a:2:{i:0;R:27388;i:1;R:9;}s:39:"1230:manageroles.canclosesavingsaccount";a:2:{i:0;R:27388;i:1;R:9;}s:39:"1230:manageroles.canchangestatetocancel";a:2:{i:0;R:27388;i:1;R:9;}s:41:"1230:manageroles.canchangestatetoinactive";a:2:{i:0;R:27388;i:1;R:9;}s:43:"1230:manageroles.canblacklistsavingsaccount";a:2:{i:0;R:27388;i:1;R:9;}s:67:"1230:manageroles.cancreatenewsavingsaccountinsubmitforapprovalstate";a:2:{i:0;R:27388;i:1;R:9;}s:50:"1230:manageroles.candoadjustmentsforsavingsaccount";a:2:{i:0;R:27388;i:1;R:9;}s:53:"1230:manageroles.canwaiveduedepositsforsavingsaccount";a:2:{i:0;R:27388;i:1;R:9;}s:57:"1230:manageroles.canwaiveoverduedepositsforsavingsaccount";a:2:{i:0;R:27388;i:1;R:9;}s:59:"1230:manageroles.canmakedeposit/withdrawaltosavingsaccounta";a:2:{i:0;R:27388;i:1;R:9;}s:44:"1230:manageroles.canaddnotestosavingsaccount";a:2:{i:0;R:27388;i:1;R:9;}s:34:"1230:manageroles.reportsmanagement";a:2:{i:0;R:27388;i:1;R:9;}s:45:"1230:manageroles.canviewcollectionsheetreport";a:2:{i:0;R:27388;i:1;R:9;}s:64:"1230:manageroles.permissions-canviewbranchcashconfirmationreport";a:2:{i:0;R:27388;i:1;R:9;}s:56:"1230:manageroles.permissions-canviewbranchprogressreport";a:2:{i:0;R:27388;i:1;R:9;}s:40:"1230:manageroles.canuploadreporttemplate";a:2:{i:0;R:27388;i:1;R:9;}s:31:"1230:manageroles.canviewreports";a:2:{i:0;R:27388;i:1;R:9;}s:41:"1230:manageroles.caneditreportinformation";a:2:{i:0;R:27388;i:1;R:9;}s:43:"1230:manageroles.candefinenewreportcategory";a:2:{i:0;R:27388;i:1;R:9;}s:38:"1230:manageroles.canviewreportcategory";a:2:{i:0;R:27388;i:1;R:9;}s:40:"1230:manageroles.candeletereportcategory";a:2:{i:0;R:27388;i:1;R:9;}s:42:"1230:manageroles.candownloadreporttemplate";a:2:{i:0;R:27388;i:1;R:9;}s:40:"1230:manageroles.canuploadadmindocuments";a:2:{i:0;R:27388;i:1;R:9;}s:38:"1230:manageroles.canviewadmindocuments";a:2:{i:0;R:27388;i:1;R:9;}s:21:"1230:manageroles.bulk";a:2:{i:0;R:27388;i:1;R:9;}s:38:"1230:manageroles.canapproveloansinbulk";a:2:{i:0;R:27388;i:1;R:9;}s:44:"1230:manageroles.canentercollectionsheetdata";a:2:{i:0;R:27388;i:1;R:9;}s:46:"1230:manageroles.cancreatemultipleloanaccounts";a:2:{i:0;R:27388;i:1;R:9;}s:37:"1230:manageroles.canimporttransaction";a:2:{i:0;R:27388;i:1;R:9;}s:40:"1230:manageroles.configurationmanagement";a:2:{i:0;R:27388;i:1;R:9;}s:32:"1230:manageroles.candefinelabels";a:2:{i:0;R:27388;i:1;R:9;}s:48:"1230:manageroles.candefinehidden/mandatoryfields";a:2:{i:0;R:27388;i:1;R:9;}s:38:"1230:manageroles.candefinelookupvalues";a:2:{i:0;R:27388;i:1;R:9;}s:38:"1230:manageroles.candefinecustomfields";a:2:{i:0;R:27388;i:1;R:9;}s:44:"1230:manageroles.canvieworganizationsettings";a:2:{i:0;R:27388;i:1;R:9;}s:34:"1230:manageroles.systeminformation";a:2:{i:0;R:27388;i:1;R:9;}s:41:"1230:manageroles.canviewsysteminformation";a:2:{i:0;R:27388;i:1;R:9;}s:33:"1230:manageroles.candefineholiday";a:2:{i:0;R:27388;i:1;R:9;}s:54:"1230:manageroles.canviewdetailedagingofportfolioatrisk";a:2:{i:0;R:27388;i:1;R:9;}s:43:"1230:manageroles.canviewgeneralledgerreport";a:2:{i:0;R:27388;i:1;R:9;}s:33:"1230:manageroles.canshutdownmifos";a:2:{i:0;R:27388;i:1;R:9;}s:24:"1230:manageroles.clients";a:2:{i:0;R:27388;i:1;R:9;}s:23:"1230:manageroles.groups";a:2:{i:0;R:27388;i:1;R:9;}s:24:"1230:manageroles.centers";a:2:{i:0;R:27388;i:1;R:9;}s:29:"1230:manageroles.clientdetail";a:2:{i:0;R:27388;i:1;R:9;}s:23:"1230:manageroles.center";a:2:{i:0;R:27388;i:1;R:9;}s:23:"1230:manageroles.status";a:2:{i:0;R:27388;i:1;R:9;}s:28:"1230:manageroles.performance";a:2:{i:0;R:27388;i:1;R:9;}s:34:"1230:manageroles.loanproductdetail";a:2:{i:0;R:27388;i:1;R:9;}s:25:"1230:manageroles.analysis";a:2:{i:0;R:27388;i:1;R:9;}s:64:"1230:manageroles.permissions.canviewbranchcashconfirmationreport";a:2:{i:0;R:27388;i:1;R:9;}s:56:"1230:manageroles.permissions.canviewbranchprogressreport";a:2:{i:0;R:27388;i:1;R:9;}s:30:"1230:manageroles.miscellaneous";a:2:{i:0;R:27388;i:1;R:9;}s:24:"1230:offices.viewoffices";a:2:{i:0;R:27388;i:1;R:9;}s:74:"1230:offices.viewoffices.clickonanofficebelowtoviewdetailsandmakechangesor";a:2:{i:0;R:27388;i:1;R:9;}s:41:"1230:offices.viewoffices.defineanewoffice";a:2:{i:0;R:27388;i:1;R:9;}s:48:"1230:offices.viewoffices.definenewregionaloffice";a:2:{i:0;R:27388;i:1;R:9;}s:50:"1230:offices.viewoffices.definenewdivisionaloffice";a:2:{i:0;R:27388;i:1;R:9;}s:44:"1230:offices.viewoffices.definenewareaoffice";a:2:{i:0;R:27388;i:1;R:9;}s:41:"1230:offices.viewoffices.testbranchoffice";a:2:{i:0;R:27388;i:1;R:9;}s:46:"1230:offices.viewoffices.definenewbranchoffice";a:2:{i:0;R:27388;i:1;R:9;}s:32:"1230:offices.viewoffices.mifosho";a:2:{i:0;R:27388;i:1;R:9;}s:46:"1230:office.error.hasactiveofficewiththislevel";a:2:{i:0;R:27388;i:1;R:9;}s:70:"1230:organizationpreferences.viewholidays.viewholidaysorganizationwide";a:2:{i:0;R:27388;i:1;R:9;}s:41:"1230:organizationpreferences.viewholidays";a:2:{i:0;R:27388;i:1;R:9;}s:58:"1230:organizationpreferences.viewholidays.organizationwide";a:2:{i:0;R:27388;i:1;R:9;}s:93:"1230:organizationpreferences.viewholidays.belowisthelistoforganizationwideholidaysclickhereto";a:2:{i:0;R:27388;i:1;R:9;}s:58:"1230:organizationpreferences.viewholidays.definenewholiday";a:2:{i:0;R:27388;i:1;R:9;}s:43:"1230:organizationpreferences.previewholiday";a:2:{i:0;R:27388;i:1;R:9;}s:57:"1230:organizationpreferences.otherholidayswiththesamedate";a:2:{i:0;R:27388;i:1;R:9;}s:51:"1230:organizationpreferences.editholidayinformation";a:2:{i:0;R:27388;i:1;R:9;}s:36:"1230:user.flowstate.chooseuseroffice";a:2:{i:0;R:27388;i:1;R:9;}s:36:"1230:user.flowstate.enteraccountinfo";a:2:{i:0;R:27388;i:1;R:9;}s:35:"1230:user.flowstate.reviewandsubmit";a:2:{i:0;R:27388;i:1;R:9;}s:32:"1230:systemusers.viewsystemusers";a:2:{i:0;R:27388;i:1;R:9;}s:50:"1230:systemusers.viewsystemusers.searchusersbyname";a:2:{i:0;R:27388;i:1;R:9;}s:35:"1230:systemuser.enteruserdetails.dd";a:2:{i:0;R:27388;i:1;R:9;}s:35:"1230:systemuser.enteruserdetails.mm";a:2:{i:0;R:27388;i:1;R:9;}s:37:"1230:systemuser.enteruserdetails.yyyy";a:2:{i:0;R:27388;i:1;R:9;}s:45:"1230:manageloanaccounts.reverseloansdisbursal";a:2:{i:0;R:27388;i:1;R:9;}s:51:"1230:manageloanaccounts.reverseloansdisbursal.error";a:2:{i:0;R:27388;i:1;R:9;}s:68:"1230:manageloanaccounts.reverseloansdisbursal.searchloansaccountbyid";a:2:{i:0;R:27388;i:1;R:9;}s:66:"1230:datadisplayandrules.viewadditionalfields.viewadditionalfields";a:2:{i:0;R:27388;i:1;R:9;}s:123:"1230:datadisplayandrules.viewadditionalfields.clickonacategorybelowtoviewandedittheadditionalfieldsdefinedforthatcategoryor";a:2:{i:0;R:27388;i:1;R:9;}s:68:"1230:datadisplayandrules.viewadditionalfields.addanewadditionalfield";a:2:{i:0;R:27388;i:1;R:9;}s:55:"1230:datadisplayandrules.viewadditionalfields.personnel";a:2:{i:0;R:27388;i:1;R:9;}s:52:"1230:datadisplayandrules.viewadditionalfields.office";a:2:{i:0;R:27388;i:1;R:9;}s:51:"1230:datadisplayandrules.viewadditionalfields.group";a:2:{i:0;R:27388;i:1;R:9;}s:50:"1230:datadisplayandrules.viewadditionalfields.loan";a:2:{i:0;R:27388;i:1;R:9;}s:52:"1230:datadisplayandrules.viewadditionalfields.client";a:2:{i:0;R:27388;i:1;R:9;}s:52:"1230:datadisplayandrules.viewadditionalfields.center";a:2:{i:0;R:27388;i:1;R:9;}s:53:"1230:datadisplayandrules.viewadditionalfields.savings";a:2:{i:0;R:27388;i:1;R:9;}s:43:"1230:organizationpreferences.viewfunds.edit";a:2:{i:0;R:27388;i:1;R:9;}s:52:"1230:organizationpreferences.viewfunds.edit.fundname";a:2:{i:0;R:27388;i:1;R:9;}s:63:"1230:organizationpreferences.viewfunds.edit.editfundinformation";a:2:{i:0;R:27388;i:1;R:9;}s:147:"1230:organizationpreferences.viewfunds.edit.completethefieldsbelow.thenclickpreview.clickcanceltoreturntoviewfundspagewithoutsubmittinginformation.";a:2:{i:0;R:27388;i:1;R:9;}s:140:"1230:organizationpreferences.viewfunds.edit.previewthefieldsbelowthenclicksubmitclickcanceltoreturntofunddetailswithoutsubmittinginformation";a:2:{i:0;R:27388;i:1;R:9;}s:42:"1230:fieldsmarkedwithanasteriskarerequired";a:2:{i:0;R:27388;i:1;R:9;}s:55:"1230:organizationpreferences.viewfunds.edit.funddetails";a:2:{i:0;R:27388;i:1;R:9;}s:43:"1230:organizationpreferences.viewfunds.name";a:2:{i:0;R:27388;i:1;R:9;}s:47:"1230:organizationpreferences.viewfunds.fundcode";a:2:{i:0;R:27388;i:1;R:9;}s:29:"1230:notempty.formbean.codeid";a:2:{i:0;R:27388;i:1;R:9;}s:27:"1230:notempty.formbean.name";a:2:{i:0;R:27388;i:1;R:9;}s:49:"1230:systemusers.definenewsystemuser.chooseoffice";a:2:{i:0;R:27388;i:1;R:9;}s:52:"1230:systemusers.definenewsystemuser.userinformation";a:2:{i:0;R:27388;i:1;R:9;}s:48:"1230:systemusers.definenewsystemuser.addanewuser";a:2:{i:0;R:27388;i:1;R:9;}s:107:"1230:systemusers.definenewsystemuser.toselect.clickonaofficefromthelistbelow.clickcanceltoreturntoadminpage";a:2:{i:0;R:27388;i:1;R:9;}s:44:"1230:systemusers.definenewsystemuser.mifosho";a:2:{i:0;R:27388;i:1;R:9;}s:47:"1230:systemusers.definenewsystemuser.areaoffice";a:2:{i:0;R:27388;i:1;R:9;}s:51:"1230:systemusers.definenewsystemuser.testareaoffice";a:2:{i:0;R:27388;i:1;R:9;}s:49:"1230:systemusers.definenewsystemuser.branchoffice";a:2:{i:0;R:27388;i:1;R:9;}s:53:"1230:systemusers.definenewsystemuser.testbranchoffice";a:2:{i:0;R:27388;i:1;R:9;}s:57:"1230:systemusers.definenewsystemuser.enteruserinformation";a:2:{i:0;R:27388;i:1;R:9;}s:48:"1230:systemusers.definenewsystemuser.infomessage";a:2:{i:0;R:27388;i:1;R:9;}s:48:"1230:systemusers.definenewsystemuser.form.office";a:2:{i:0;R:27388;i:1;R:9;}s:43:"1230:systemusers.editsystemuser.infomessage";a:2:{i:0;R:27388;i:1;R:9;}s:46:"1230:offices.definenewoffice.officeinformation";a:2:{i:0;R:27388;i:1;R:9;}s:42:"1230:offices.definenewoffice.addanewoffice";a:2:{i:0;R:27388;i:1;R:9;}s:51:"1230:offices.definenewoffice.enterofficeinformation";a:2:{i:0;R:27388;i:1;R:9;}s:123:"1230:offices.definenewoffice.completethefieldsbelow.thenclickpreview.clickcanceltoreturntoadminwithoutsubmittinginformation";a:2:{i:0;R:27388;i:1;R:9;}s:42:"1230:offices.definenewoffice.officedetails";a:2:{i:0;R:27388;i:1;R:9;}s:39:"1230:offices.definenewoffice.officename";a:2:{i:0;R:27388;i:1;R:9;}s:44:"1230:offices.definenewoffice.officeshortname";a:2:{i:0;R:27388;i:1;R:9;}s:39:"1230:offices.definenewoffice.officetype";a:2:{i:0;R:27388;i:1;R:9;}s:41:"1230:offices.definenewoffice.parentoffice";a:2:{i:0;R:27388;i:1;R:9;}s:48:"1230:offices.definenewoffice.headoffice(mifosho)";a:2:{i:0;R:27388;i:1;R:9;}s:42:"1230:offices.definenewoffice.officeaddress";a:2:{i:0;R:27388;i:1;R:9;}s:38:"1230:offices.definenewoffice.telephone";a:2:{i:0;R:27388;i:1;R:9;}s:43:"1230:offices.definenewoffice.regionaloffice";a:2:{i:0;R:27388;i:1;R:9;}s:45:"1230:offices.definenewoffice.divisionaloffice";a:2:{i:0;R:27388;i:1;R:9;}s:39:"1230:offices.definenewoffice.areaoffice";a:2:{i:0;R:27388;i:1;R:9;}s:41:"1230:offices.definenewoffice.branchoffice";a:2:{i:0;R:27388;i:1;R:9;}s:37:"1230:offices.definenewoffice.address1";a:2:{i:0;R:27388;i:1;R:9;}s:37:"1230:offices.definenewoffice.address2";a:2:{i:0;R:27388;i:1;R:9;}s:37:"1230:offices.definenewoffice.address3";a:2:{i:0;R:27388;i:1;R:9;}s:43:"1230:offices.definenewoffice.cityordistrict";a:2:{i:0;R:27388;i:1;R:9;}s:34:"1230:offices.definenewoffice.state";a:2:{i:0;R:27388;i:1;R:9;}s:36:"1230:offices.definenewoffice.country";a:2:{i:0;R:27388;i:1;R:9;}s:39:"1230:offices.definenewoffice.postalcode";a:2:{i:0;R:27388;i:1;R:9;}s:33:"1230:notempty.officeformbean.name";a:2:{i:0;R:27388;i:1;R:9;}s:44:"1230:notempty.officeformbean.officeshortname";a:2:{i:0;R:27388;i:1;R:9;}s:37:"1230:notempty.officeformbean.parentid";a:2:{i:0;R:27388;i:1;R:9;}s:36:"1230:notempty.officeformbean.levelid";a:2:{i:0;R:27388;i:1;R:9;}s:74:"1230:datadisplayandrules.defineadditionalfields.additionalfieldinformation";a:2:{i:0;R:27388;i:1;R:9;}s:70:"1230:datadisplayandrules.defineadditionalfields.defineadditionalfields";a:2:{i:0;R:27388;i:1;R:9;}s:79:"1230:datadisplayandrules.defineadditionalfields.enteradditionalfieldinformation";a:2:{i:0;R:27388;i:1;R:9;}s:70:"1230:datadisplayandrules.defineadditionalfields.additionalfielddetails";a:2:{i:0;R:27388;i:1;R:9;}s:56:"1230:datadisplayandrules.defineadditionalfields.category";a:2:{i:0;R:27388;i:1;R:9;}s:53:"1230:datadisplayandrules.defineadditionalfields.label";a:2:{i:0;R:27388;i:1;R:9;}s:56:"1230:datadisplayandrules.defineadditionalfields.datatype";a:2:{i:0;R:27388;i:1;R:9;}s:55:"1230:datadisplayandrules.defineadditionalfields.numeric";a:2:{i:0;R:27388;i:1;R:9;}s:52:"1230:datadisplayandrules.defineadditionalfields.text";a:2:{i:0;R:27388;i:1;R:9;}s:60:"1230:datadisplayandrules.defineadditionalfields.defaultvalue";a:2:{i:0;R:27388;i:1;R:9;}s:57:"1230:datadisplayandrules.defineadditionalfields.personnel";a:2:{i:0;R:27388;i:1;R:9;}s:54:"1230:datadisplayandrules.defineadditionalfields.office";a:2:{i:0;R:27388;i:1;R:9;}s:53:"1230:datadisplayandrules.defineadditionalfields.group";a:2:{i:0;R:27388;i:1;R:9;}s:52:"1230:datadisplayandrules.defineadditionalfields.loan";a:2:{i:0;R:27388;i:1;R:9;}s:54:"1230:datadisplayandrules.defineadditionalfields.client";a:2:{i:0;R:27388;i:1;R:9;}s:54:"1230:datadisplayandrules.defineadditionalfields.center";a:2:{i:0;R:27388;i:1;R:9;}s:55:"1230:datadisplayandrules.defineadditionalfields.savings";a:2:{i:0;R:27388;i:1;R:9;}s:55:"1230:organizationpreferences.defineacceptedpaymenttypes";a:2:{i:0;R:27388;i:1;R:9;}s:144:"1230:organizationpreferences.defineacceptedpaymenttypes.specifytheacceptedpaymenttypesbelow.clickonapaymenttypeintheleftboxtoselect.thenclickadd";a:2:{i:0;R:27388;i:1;R:9;}s:121:"1230:organizationpreferences.defineacceptedpaymenttypes.toremove,clickonapaymenttypeontherightboxtoselect.thenclickremove";a:2:{i:0;R:27388;i:1;R:9;}s:78:"1230:organizationpreferences.defineacceptedpaymenttypes.clients/groups/centers";a:2:{i:0;R:27388;i:1;R:9;}s:60:"1230:organizationpreferences.defineacceptedpaymenttypes.cash";a:2:{i:0;R:27388;i:1;R:9;}s:63:"1230:organizationpreferences.defineacceptedpaymenttypes.voucher";a:2:{i:0;R:27388;i:1;R:9;}s:62:"1230:organizationpreferences.defineacceptedpaymenttypes.cheque";a:2:{i:0;R:27388;i:1;R:9;}s:69:"1230:organizationpreferences.defineacceptedpaymenttypes.disbursements";a:2:{i:0;R:27388;i:1;R:9;}s:66:"1230:organizationpreferences.defineacceptedpaymenttypes.repayments";a:2:{i:0;R:27388;i:1;R:9;}s:67:"1230:organizationpreferences.defineacceptedpaymenttypes.withdrawals";a:2:{i:0;R:27388;i:1;R:9;}s:64:"1230:organizationpreferences.defineacceptedpaymenttypes.deposits";a:2:{i:0;R:27388;i:1;R:9;}s:60:"1230:organizationpreferences.defineacceptedpaymenttypes.fees";a:2:{i:0;R:27388;i:1;R:9;}s:61:"1230:organizationpreferences.defineacceptedpaymenttypes.loans";a:2:{i:0;R:27388;i:1;R:9;}s:63:"1230:organizationpreferences.defineacceptedpaymenttypes.savings";a:2:{i:0;R:27388;i:1;R:9;}s:55:"1230:manageimports.importtransactions.importinformation";a:2:{i:0;R:27388;i:1;R:9;}s:58:"1230:manageimports.importtransactions.enterfileinformation";a:2:{i:0;R:27388;i:1;R:9;}s:116:"1230:manageimports.importtransactions.completethefieldsbelow.clickcanceltoreturntoadminwithoutsubmittinginformation.";a:2:{i:0;R:27388;i:1;R:9;}s:50:"1230:manageimports.importtransactions.importformat";a:2:{i:0;R:27388;i:1;R:9;}s:54:"1230:manageimports.importtransactions.selectimportfile";a:2:{i:0;R:27388;i:1;R:9;}s:56:"1230:manageloanaccounts.redoloandisbursal.selectcustomer";a:2:{i:0;R:27388;i:1;R:9;}s:64:"1230:manageloanaccounts.redoloandisbursal.loanaccountinformation";a:2:{i:0;R:27388;i:1;R:9;}s:65:"1230:manageloanaccounts.redoloandisbursal.review/editinstallments";a:2:{i:0;R:27388;i:1;R:9;}s:58:"1230:manageloanaccounts.redoloandisbursal.redoloansaccount";a:2:{i:0;R:27388;i:1;R:9;}s:57:"1230:manageloanaccounts.redoloandisbursal.selectacustomer";a:2:{i:0;R:27388;i:1;R:9;}s:79:"1230:manageloanaccounts.redoloandisbursal.enteraclientorgroupnameandclicksearch";a:2:{i:0;R:27388;i:1;R:9;}s:49:"1230:offices.editofficeinformation.testareaoffice";a:2:{i:0;R:27388;i:1;R:9;}s:56:"1230:offices.editofficeinformation.editofficeinformation";a:2:{i:0;R:27388;i:1;R:9;}s:136:"1230:offices.editofficeinformation.previewthefieldsbelow.thenclickconfirm.clickcanceltoreturntoofficedetailswithoutsubmittinginformation";a:2:{i:0;R:27388;i:1;R:9;}s:48:"1230:offices.editofficeinformation.officedetails";a:2:{i:0;R:27388;i:1;R:9;}s:45:"1230:offices.editofficeinformation.officename";a:2:{i:0;R:27388;i:1;R:9;}s:50:"1230:offices.editofficeinformation.officeshortname";a:2:{i:0;R:27388;i:1;R:9;}s:45:"1230:offices.editofficeinformation.officetype";a:2:{i:0;R:27388;i:1;R:9;}s:49:"1230:offices.editofficeinformation.regionaloffice";a:2:{i:0;R:27388;i:1;R:9;}s:51:"1230:offices.editofficeinformation.divisionaloffice";a:2:{i:0;R:27388;i:1;R:9;}s:45:"1230:offices.editofficeinformation.areaoffice";a:2:{i:0;R:27388;i:1;R:9;}s:47:"1230:offices.editofficeinformation.branchoffice";a:2:{i:0;R:27388;i:1;R:9;}s:47:"1230:offices.editofficeinformation.parentoffice";a:2:{i:0;R:27388;i:1;R:9;}s:54:"1230:offices.editofficeinformation.headoffice(mifosho)";a:2:{i:0;R:27388;i:1;R:9;}s:41:"1230:offices.editofficeinformation.status";a:2:{i:0;R:27388;i:1;R:9;}s:41:"1230:offices.editofficeinformation.active";a:2:{i:0;R:27388;i:1;R:9;}s:43:"1230:offices.editofficeinformation.inactive";a:2:{i:0;R:27388;i:1;R:9;}s:48:"1230:offices.editofficeinformation.officeaddress";a:2:{i:0;R:27388;i:1;R:9;}s:43:"1230:offices.editofficeinformation.address1";a:2:{i:0;R:27388;i:1;R:9;}s:43:"1230:offices.editofficeinformation.address2";a:2:{i:0;R:27388;i:1;R:9;}s:43:"1230:offices.editofficeinformation.address3";a:2:{i:0;R:27388;i:1;R:9;}s:44:"1230:offices.editofficeinformation.telephone";a:2:{i:0;R:27388;i:1;R:9;}s:56:"1230:offices.editofficeinformation.additionalinformation";a:2:{i:0;R:27388;i:1;R:9;}s:49:"1230:offices.editofficeinformation.cityordistrict";a:2:{i:0;R:27388;i:1;R:9;}s:40:"1230:offices.editofficeinformation.state";a:2:{i:0;R:27388;i:1;R:9;}s:42:"1230:offices.editofficeinformation.country";a:2:{i:0;R:27388;i:1;R:9;}s:45:"1230:offices.editofficeinformation.postalcode";a:2:{i:0;R:27388;i:1;R:9;}s:45:"1230:datadisplayandrules.editadditionalfields";a:2:{i:0;R:27388;i:1;R:9;}s:77:"1230:datadisplayandrules.editadditionalfields.enteradditionalfieldinformation";a:2:{i:0;R:27388;i:1;R:9;}s:141:"1230:datadisplayandrules.editadditionalfields.completethefieldsbelow.thenclickpreview.clickcanceltoreturntoadminwithoutsubmittinginformation.";a:2:{i:0;R:27388;i:1;R:9;}s:68:"1230:datadisplayandrules.editadditionalfields.additionalfielddetails";a:2:{i:0;R:27388;i:1;R:9;}s:54:"1230:datadisplayandrules.editadditionalfields.category";a:2:{i:0;R:27388;i:1;R:9;}s:51:"1230:datadisplayandrules.editadditionalfields.label";a:2:{i:0;R:27388;i:1;R:9;}s:55:"1230:datadisplayandrules.editadditionalfields.mandatory";a:2:{i:0;R:27388;i:1;R:9;}s:54:"1230:datadisplayandrules.editadditionalfields.datatype";a:2:{i:0;R:27388;i:1;R:9;}s:50:"1230:datadisplayandrules.editadditionalfields.text";a:2:{i:0;R:27388;i:1;R:9;}s:58:"1230:datadisplayandrules.editadditionalfields.defaultvalue";a:2:{i:0;R:27388;i:1;R:9;}s:53:"1230:datadisplayandrules.editadditionalfields.numeric";a:2:{i:0;R:27388;i:1;R:9;}s:55:"1230:datadisplayandrules.editadditionalfields.personnel";a:2:{i:0;R:27388;i:1;R:9;}s:52:"1230:datadisplayandrules.editadditionalfields.office";a:2:{i:0;R:27388;i:1;R:9;}s:52:"1230:datadisplayandrules.editadditionalfields.client";a:2:{i:0;R:27388;i:1;R:9;}s:51:"1230:datadisplayandrules.editadditionalfields.group";a:2:{i:0;R:27388;i:1;R:9;}s:52:"1230:datadisplayandrules.editadditionalfields.center";a:2:{i:0;R:27388;i:1;R:9;}s:50:"1230:datadisplayandrules.editadditionalfields.loan";a:2:{i:0;R:27388;i:1;R:9;}s:53:"1230:datadisplayandrules.editadditionalfields.savings";a:2:{i:0;R:27388;i:1;R:9;}s:51:"1230:offices.previewoffice.previewofficeinformation";a:2:{i:0;R:27388;i:1;R:9;}s:41:"1230:offices.viewofficedetails.officename";a:2:{i:0;R:27388;i:1;R:9;}s:46:"1230:offices.viewofficedetails.officeshortname";a:2:{i:0;R:27388;i:1;R:9;}s:41:"1230:offices.viewofficedetails.officetype";a:2:{i:0;R:27388;i:1;R:9;}s:43:"1230:offices.viewofficedetails.parentoffice";a:2:{i:0;R:27388;i:1;R:9;}s:52:"1230:offices.viewofficedetails.editofficeinformation";a:2:{i:0;R:27388;i:1;R:9;}s:52:"1230:offices.viewofficedetails.additionalinformation";a:2:{i:0;R:27388;i:1;R:9;}s:47:"1230:offices.viewofficedetails.noaddressentered";a:2:{i:0;R:27388;i:1;R:9;}s:38:"1230:offices.viewofficedetails.address";a:2:{i:0;R:27388;i:1;R:9;}s:36:"1230:offices.viewofficedetails.line1";a:2:{i:0;R:27388;i:1;R:9;}s:36:"1230:offices.viewofficedetails.line2";a:2:{i:0;R:27388;i:1;R:9;}s:36:"1230:offices.viewofficedetails.line3";a:2:{i:0;R:27388;i:1;R:9;}s:35:"1230:offices.viewofficedetails.city";a:2:{i:0;R:27388;i:1;R:9;}s:36:"1230:offices.viewofficedetails.state";a:2:{i:0;R:27388;i:1;R:9;}s:38:"1230:offices.viewofficedetails.country";a:2:{i:0;R:27388;i:1;R:9;}s:34:"1230:offices.viewofficedetails.zip";a:2:{i:0;R:27388;i:1;R:9;}s:42:"1230:offices.viewofficedetails.phonenumber";a:2:{i:0;R:27388;i:1;R:9;}s:73:"1230:organizationsettings.vieworganizationsettings.organizationalsettings";a:2:{i:0;R:27388;i:1;R:9;}s:61:"1230:organizationsettings.vieworganizationsettings.fiscalyear";a:2:{i:0;R:27388;i:1;R:9;}s:62:"1230:organizationsettings.vieworganizationsettings.workingdays";a:2:{i:0;R:27388;i:1;R:9;}s:85:"1230:organizationsettings.vieworganizationsettings.allowcalendardefinitionfornextyear";a:2:{i:0;R:27388;i:1;R:9;}s:62:"1230:organizationsettings.vieworganizationsettings.startofweek";a:2:{i:0;R:27388;i:1;R:9;}s:58:"1230:organizationsettings.vieworganizationsettings.offdays";a:2:{i:0;R:27388;i:1;R:9;}s:74:"1230:organizationsettings.vieworganizationsettings.meetingincaseofaholiday";a:2:{i:0;R:27388;i:1;R:9;}s:57:"1230:organizationsettings.vieworganizationsettings.locale";a:2:{i:0;R:27388;i:1;R:9;}s:58:"1230:organizationsettings.vieworganizationsettings.country";a:2:{i:0;R:27388;i:1;R:9;}s:60:"1230:organizationsettings.vieworganizationsettings.direction";a:2:{i:0;R:27388;i:1;R:9;}s:59:"1230:organizationsettings.vieworganizationsettings.language";a:2:{i:0;R:27388;i:1;R:9;}s:66:"1230:organizationsettings.vieworganizationsettings.accountingrules";a:2:{i:0;R:27388;i:1;R:9;}s:66:"1230:organizationsettings.vieworganizationsettings.maximuminterest";a:2:{i:0;R:27388;i:1;R:9;}s:66:"1230:organizationsettings.vieworganizationsettings.minimuminterest";a:2:{i:0;R:27388;i:1;R:9;}s:78:"1230:organizationsettings.vieworganizationsettings.numberofdigitsbeforedecimal";a:2:{i:0;R:27388;i:1;R:9;}s:88:"1230:organizationsettings.vieworganizationsettings.numberofdigitsafterdecimalforinterest";a:2:{i:0;R:27388;i:1;R:9;}s:89:"1230:organizationsettings.vieworganizationsettings.numberofdigitsbeforedecimalforinterest";a:2:{i:0;R:27388;i:1;R:9;}s:71:"1230:organizationsettings.vieworganizationsettings.numberofinterestdays";a:2:{i:0;R:27388;i:1;R:9;}s:71:"1230:organizationsettings.vieworganizationsettings.currencyroundingmode";a:2:{i:0;R:27388;i:1;R:9;}s:70:"1230:organizationsettings.vieworganizationsettings.initialroundingmode";a:2:{i:0;R:27388;i:1;R:9;}s:68:"1230:organizationsettings.vieworganizationsettings.finalroundingmode";a:2:{i:0;R:27388;i:1;R:9;}s:61:"1230:organizationsettings.vieworganizationsettings.currencies";a:2:{i:0;R:27388;i:1;R:9;}s:59:"1230:organizationsettings.vieworganizationsettings.currency";a:2:{i:0;R:27388;i:1;R:9;}s:77:"1230:organizationsettings.vieworganizationsettings.numberofdigitsafterdecimal";a:2:{i:0;R:27388;i:1;R:9;}s:72:"1230:organizationsettings.vieworganizationsettings.finalroundoffmultiple";a:2:{i:0;R:27388;i:1;R:9;}s:74:"1230:organizationsettings.vieworganizationsettings.initialroundoffmultiple";a:2:{i:0;R:27388;i:1;R:9;}s:62:"1230:organizationsettings.vieworganizationsettings.clientrules";a:2:{i:0;R:27388;i:1;R:9;}s:72:"1230:organizationsettings.vieworganizationsettings.centerhierarchyexists";a:2:{i:0;R:27388;i:1;R:9;}s:79:"1230:organizationsettings.vieworganizationsettings.groupsallowedtoapplyforloans";a:2:{i:0;R:27388;i:1;R:9;}s:77:"1230:organizationsettings.vieworganizationsettings.clientcanexistoutsidegroup";a:2:{i:0;R:27388;i:1;R:9;}s:63:"1230:organizationsettings.vieworganizationsettings.namesequence";a:2:{i:0;R:27388;i:1;R:9;}s:66:"1230:organizationsettings.vieworganizationsettings.agecheckenabled";a:2:{i:0;R:27388;i:1;R:9;}s:81:"1230:organizationsettings.vieworganizationsettings.minimumallowedagefornewclients";a:2:{i:0;R:27388;i:1;R:9;}s:81:"1230:organizationsettings.vieworganizationsettings.maximumallowedagefornewclients";a:2:{i:0;R:27388;i:1;R:9;}s:82:"1230:organizationsettings.vieworganizationsettings.additionalfamilydetailsrequired";a:2:{i:0;R:27388;i:1;R:9;}s:79:"1230:organizationsettings.vieworganizationsettings.maximumnumberoffamilymembers";a:2:{i:0;R:27388;i:1;R:9;}s:76:"1230:organizationsettings.vieworganizationsettings.processflow/optionalstate";a:2:{i:0;R:27388;i:1;R:9;}s:84:"1230:organizationsettings.vieworganizationsettings.clientpendingapprovalstateenabled";a:2:{i:0;R:27388;i:1;R:9;}s:83:"1230:organizationsettings.vieworganizationsettings.grouppendingapprovalstateenabled";a:2:{i:0;R:27388;i:1;R:9;}s:89:"1230:organizationsettings.vieworganizationsettings.loandisbursedtoloanofficerstateenabled";a:2:{i:0;R:27388;i:1;R:9;}s:82:"1230:organizationsettings.vieworganizationsettings.loanpendingapprovalstateenabled";a:2:{i:0;R:27388;i:1;R:9;}s:85:"1230:organizationsettings.vieworganizationsettings.savingspendingapprovalstateenabled";a:2:{i:0;R:27388;i:1;R:9;}s:64:"1230:organizationsettings.vieworganizationsettings.miscellaneous";a:2:{i:0;R:27388;i:1;R:9;}s:65:"1230:organizationsettings.vieworganizationsettings.sessiontimeout";a:2:{i:0;R:27388;i:1;R:9;}s:107:"1230:organizationsettings.vieworganizationsettings.numberofdaysinadvancethecollectionsheetshouldbegenerated";a:2:{i:0;R:27388;i:1;R:9;}s:79:"1230:organizationsettings.vieworganizationsettings.backdatedtransactionsallowed";a:2:{i:0;R:27388;i:1;R:9;}s:55:"1230:organizationsettings.vieworganizationsettings.glim";a:2:{i:0;R:27388;i:1;R:9;}s:55:"1230:organizationsettings.vieworganizationsettings.lsim";a:2:{i:0;R:27388;i:1;R:9;}s:71:"1230:organizationsettings.vieworganizationsettings.mincashflowthreshold";a:2:{i:0;R:27388;i:1;R:9;}s:71:"1230:organizationsettings.vieworganizationsettings.maxcashflowthreshold";a:2:{i:0;R:27388;i:1;R:9;}s:71:"1230:organizationsettings.vieworganizationsettings.minrepaymentcapacity";a:2:{i:0;R:27388;i:1;R:9;}s:71:"1230:organizationsettings.vieworganizationsettings.maxrepaymentcapacity";a:2:{i:0;R:27388;i:1;R:9;}s:71:"1230:organizationsettings.vieworganizationsettings.minindebtednessratio";a:2:{i:0;R:27388;i:1;R:9;}s:71:"1230:organizationsettings.vieworganizationsettings.maxindebtednessratio";a:2:{i:0;R:27388;i:1;R:9;}s:80:"1230:organizationsettings.vieworganizationsettings.digitsafterdecimalforcashflow";a:2:{i:0;R:27388;i:1;R:9;}s:72:"1230:organizationsettings.vieworganizationsettings.branchmanagerrolename";a:2:{i:0;R:27388;i:1;R:9;}s:72:"1230:organizationsettings.vieworganizationsettings.maxpointsperppisurvey";a:2:{i:0;R:27388;i:1;R:9;}s:72:"1230:organizationsettings.vieworganizationsettings.batchsizeforbatchjobs";a:2:{i:0;R:27388;i:1;R:9;}s:77:"1230:organizationsettings.vieworganizationsettings.outputintervalforbatchjobs";a:2:{i:0;R:27388;i:1;R:9;}s:83:"1230:organizationsettings.vieworganizationsettings.recordcommittingsizeforbatchjobs";a:2:{i:0;R:27388;i:1;R:9;}s:97:"1230:organizationsettings.vieworganizationsettings.allowdataprefetchingwhensavingcollectionsheets";a:2:{i:0;R:27388;i:1;R:9;}s:73:"1230:organizationsettings.vieworganizationsettings.uploadstoragedirectory";a:2:{i:0;R:27388;i:1;R:9;}s:89:"1230:organizationsettings.vieworganizationsettings.shutdowncountdownnotificationthreshold";a:2:{i:0;R:27388;i:1;R:9;}s:68:"1230:organizationsettings.vieworganizationsettings.uploadqgdirectory";a:2:{i:0;R:27388;i:1;R:9;}s:72:"1230:organizationsettings.vieworganizationsettings.imagestoragedirectory";a:2:{i:0;R:27388;i:1;R:9;}s:63:"1230:organizationsettings.vieworganizationsettings.disbursalmax";a:2:{i:0;R:27388;i:1;R:9;}s:67:"1230:organizationsettings.vieworganizationsettings.approvalrequired";a:2:{i:0;R:27388;i:1;R:9;}s:67:"1230:organizationsettings.vieworganizationsettings.imagestoragetype";a:2:{i:0;R:27388;i:1;R:9;}s:59:"1230:manageloanproducts.defineloanproduct.defineloanproduct";a:2:{i:0;R:27388;i:1;R:9;}s:52:"1230:manageloanproducts.defineloanproduct.loanamount";a:2:{i:0;R:27388;i:1;R:9;}s:51:"1230:manageloanproducts.defineloanproduct.shortname";a:2:{i:0;R:27388;i:1;R:9;}s:53:"1230:manageloanproducts.defineloanproduct.description";a:2:{i:0;R:27388;i:1;R:9;}s:57:"1230:manageloanproducts.defineloanproduct.productcategory";a:2:{i:0;R:27388;i:1;R:9;}s:51:"1230:manageloanproducts.defineloanproduct.startdate";a:2:{i:0;R:27388;i:1;R:9;}s:49:"1230:manageloanproducts.defineloanproduct.enddate";a:2:{i:0;R:27388;i:1;R:9;}s:55:"1230:manageloanproducts.defineloanproduct.applicablefor";a:2:{i:0;R:27388;i:1;R:9;}s:50:"1230:manageloanproducts.defineloanproduct.currency";a:2:{i:0;R:27388;i:1;R:9;}s:67:"1230:manageloanproducts.defineloanproduct.includeinloancyclecounter";a:2:{i:0;R:27388;i:1;R:9;}s:56:"1230:manageloanproducts.defineloanproduct.interestwaiver";a:2:{i:0;R:27388;i:1;R:9;}s:63:"1230:manageloanproducts.defineloanproduct.calculateloanamountas";a:2:{i:0;R:27388;i:1;R:9;}s:55:"1230:manageloanproducts.defineloanproduct.minloanamount";a:2:{i:0;R:27388;i:1;R:9;}s:55:"1230:manageloanproducts.defineloanproduct.maxloanamount";a:2:{i:0;R:27388;i:1;R:9;}s:55:"1230:manageloanproducts.defineloanproduct.defaultamount";a:2:{i:0;R:27388;i:1;R:9;}s:54:"1230:manageloanproducts.defineloanproduct.interestrate";a:2:{i:0;R:27388;i:1;R:9;}s:58:"1230:manageloanproducts.defineloanproduct.interestratetype";a:2:{i:0;R:27388;i:1;R:9;}s:57:"1230:manageloanproducts.defineloanproduct.maxinterestrate";a:2:{i:0;R:27388;i:1;R:9;}s:57:"1230:manageloanproducts.defineloanproduct.mininterestrate";a:2:{i:0;R:27388;i:1;R:9;}s:61:"1230:manageloanproducts.defineloanproduct.defaultinterestrate";a:2:{i:0;R:27388;i:1;R:9;}s:59:"1230:manageloanproducts.defineloanproduct.repaymentschedule";a:2:{i:0;R:27388;i:1;R:9;}s:65:"1230:manageloanproducts.defineloanproduct.frequencyofinstallments";a:2:{i:0;R:27388;i:1;R:9;}s:59:"1230:manageloanproducts.defineloanproduct.minofinstallments";a:2:{i:0;R:27388;i:1;R:9;}s:59:"1230:manageloanproducts.defineloanproduct.maxofinstallments";a:2:{i:0;R:27388;i:1;R:9;}s:63:"1230:manageloanproducts.defineloanproduct.defaultofinstallments";a:2:{i:0;R:27388;i:1;R:9;}s:57:"1230:manageloanproducts.defineloanproduct.graceperiodtype";a:2:{i:0;R:27388;i:1;R:9;}s:61:"1230:manageloanproducts.defineloanproduct.graceperiodduration";a:2:{i:0;R:27388;i:1;R:9;}s:46:"1230:manageloanproducts.defineloanproduct.fees";a:2:{i:0;R:27388;i:1;R:9;}s:52:"1230:manageloanproducts.defineloanproduct.accounting";a:2:{i:0;R:27388;i:1;R:9;}s:56:"1230:manageloanproducts.defineloanproduct.sourcesoffunds";a:2:{i:0;R:27388;i:1;R:9;}s:55:"1230:manageloanproducts.defineloanproduct.productglcode";a:2:{i:0;R:27388;i:1;R:9;}s:50:"1230:manageloanproducts.defineloanproduct.interest";a:2:{i:0;R:27388;i:1;R:9;}s:51:"1230:manageloanproducts.defineloanproduct.principal";a:2:{i:0;R:27388;i:1;R:9;}s:60:"1230:manageloanproducts.defineloanproduct.loanproductdetails";a:2:{i:0;R:27388;i:1;R:9;}s:64:"1230:manageloanproducts.defineloanproduct.loanproductinformation";a:2:{i:0;R:27388;i:1;R:9;}s:60:"1230:manageloanproducts.defineloanproduct.addanewloanproduct";a:2:{i:0;R:27388;i:1;R:9;}s:69:"1230:manageloanproducts.defineloanproduct.enterloanproductinformation";a:2:{i:0;R:27388;i:1;R:9;}s:61:"1230:manageloanproducts.defineloanproduct.productinstancename";a:2:{i:0;R:27388;i:1;R:9;}s:101:"1230:manageloanproducts.defineloanproduct.completethefieldsbelow.thenclickpreview.clickcanceltoreturn";a:2:{i:0;R:27388;i:1;R:9;}s:47:"1230:manageloanproducts.defineloanproduct.other";a:2:{i:0;R:27388;i:1;R:9;}s:57:"1230:manageloanproducts.defineloanproduct.sameforallloans";a:2:{i:0;R:27388;i:1;R:9;}s:58:"1230:manageloanproducts.defineloanproduct.bylastloanamount";a:2:{i:0;R:27388;i:1;R:9;}s:53:"1230:manageloanproducts.defineloanproduct.byloancycle";a:2:{i:0;R:27388;i:1;R:9;}s:56:"1230:manageloanproducts.defineloanproduct.lastloanamount";a:2:{i:0;R:27388;i:1;R:9;}s:53:"1230:manageloanproducts.defineloanproduct.loancycleno";a:2:{i:0;R:27388;i:1;R:9;}s:58:"1230:manageloanproducts.defineloanproduct.loancycleno.zero";a:2:{i:0;R:27388;i:1;R:9;}s:57:"1230:manageloanproducts.defineloanproduct.loancycleno.one";a:2:{i:0;R:27388;i:1;R:9;}s:57:"1230:manageloanproducts.defineloanproduct.loancycleno.two";a:2:{i:0;R:27388;i:1;R:9;}s:59:"1230:manageloanproducts.defineloanproduct.loancycleno.three";a:2:{i:0;R:27388;i:1;R:9;}s:58:"1230:manageloanproducts.defineloanproduct.loancycleno.four";a:2:{i:0;R:27388;i:1;R:9;}s:63:"1230:manageloanproducts.defineloanproduct.loancycleno.abovefour";a:2:{i:0;R:27388;i:1;R:9;}s:46:"1230:manageloanproducts.defineloanproduct.flat";a:2:{i:0;R:27388;i:1;R:9;}s:58:"1230:manageloanproducts.defineloanproduct.decliningbalance";a:2:{i:0;R:27388;i:1;R:9;}s:84:"1230:manageloanproducts.defineloanproduct.decliningbalance-equalprincipalinstallment";a:2:{i:0;R:27388;i:1;R:9;}s:48:"1230:manageloanproducts.defineloanproduct.weekly";a:2:{i:0;R:27388;i:1;R:9;}s:49:"1230:manageloanproducts.defineloanproduct.monthly";a:2:{i:0;R:27388;i:1;R:9;}s:69:"1230:manageloanproducts.defineloanproduct.ifweeks,specifythefollowing";a:2:{i:0;R:27388;i:1;R:9;}s:52:"1230:manageloanproducts.defineloanproduct.recurevery";a:2:{i:0;R:27388;i:1;R:9;}s:70:"1230:manageloanproducts.defineloanproduct.ifmonths,specifythefollowing";a:2:{i:0;R:27388;i:1;R:9;}s:49:"1230:manageloanproducts.defineloanproduct.week(s)";a:2:{i:0;R:27388;i:1;R:9;}s:50:"1230:manageloanproducts.defineloanproduct.month(s)";a:2:{i:0;R:27388;i:1;R:9;}s:57:"1230:manageloanproducts.defineloanproduct.dayofmonthlabel";a:2:{i:0;R:27388;i:1;R:9;}s:58:"1230:manageloanproducts.defineloanproduct.weekofmonthlabel";a:2:{i:0;R:27388;i:1;R:9;}s:49:"1230:manageloanproducts.defineloanproduct.ofevery";a:2:{i:0;R:27388;i:1;R:9;}s:67:"1230:manageloanproducts.defineloanproduct.calculateofinstallmentsas";a:2:{i:0;R:27388;i:1;R:9;}s:46:"1230:manageloanproducts.defineloanproduct.none";a:2:{i:0;R:27388;i:1;R:9;}s:62:"1230:manageloanproducts.defineloanproduct.graceonallrepayments";a:2:{i:0;R:27388;i:1;R:9;}s:60:"1230:manageloanproducts.defineloanproduct.principalonlygrace";a:2:{i:0;R:27388;i:1;R:9;}s:54:"1230:manageloanproducts.defineloanproduct.installments";a:2:{i:0;R:27388;i:1;R:9;}s:56:"1230:manageloanproducts.defineloanproduct.attachfeetypes";a:2:{i:0;R:27388;i:1;R:9;}s:57:"1230:manageloanproducts.defineloanproduct.clickonafeetype";a:2:{i:0;R:27388;i:1;R:9;}s:54:"1230:manageloanproducts.defineloanproduct.clickonafund";a:2:{i:0;R:27388;i:1;R:9;}s:16:"1230:boolean.yes";a:2:{i:0;R:27388;i:1;R:9;}s:15:"1230:boolean.no";a:2:{i:0;R:27388;i:1;R:9;}s:61:"1230:notempty.loanproduct.selectedinterestratecalculationtype";a:2:{i:0;R:27388;i:1;R:9;}s:40:"1230:notnull.loanproduct.mininterestrate";a:2:{i:0;R:27388;i:1;R:9;}s:40:"1230:notnull.loanproduct.maxinterestrate";a:2:{i:0;R:27388;i:1;R:9;}s:44:"1230:notnull.loanproduct.defaultinterestrate";a:2:{i:0;R:27388;i:1;R:9;}s:43:"1230:notempty.loanproduct.selectedprincipal";a:2:{i:0;R:27388;i:1;R:9;}s:42:"1230:notempty.loanproduct.selectedinterest";a:2:{i:0;R:27388;i:1;R:9;}s:59:"1230:typemismatch.loanproduct.loanamountsameforallloans.min";a:2:{i:0;R:27388;i:1;R:9;}s:59:"1230:typemismatch.loanproduct.loanamountsameforallloans.max";a:2:{i:0;R:27388;i:1;R:9;}s:66:"1230:typemismatch.loanproduct.loanamountsameforallloans.thedefault";a:2:{i:0;R:27388;i:1;R:9;}s:40:"1230:min.loanproduct.sameforallloans.min";a:2:{i:0;R:27388;i:1;R:9;}s:40:"1230:min.loanproduct.sameforallloans.max";a:2:{i:0;R:27388;i:1;R:9;}s:47:"1230:min.loanproduct.sameforallloans.thedefault";a:2:{i:0;R:27388;i:1;R:9;}s:40:"1230:max.loanproduct.sameforallloans.max";a:2:{i:0;R:27388;i:1;R:9;}s:47:"1230:max.loanproduct.sameforallloans.thedefault";a:2:{i:0;R:27388;i:1;R:9;}s:44:"1230:notnull.loanproduct.sameforallloans.min";a:2:{i:0;R:27388;i:1;R:9;}s:44:"1230:notnull.loanproduct.sameforallloans.max";a:2:{i:0;R:27388;i:1;R:9;}s:51:"1230:notnull.loanproduct.sameforallloans.thedefault";a:2:{i:0;R:27388;i:1;R:9;}s:62:"1230:typemismatch.loanproduct.loanamountbylastloanamount.lower";a:2:{i:0;R:27388;i:1;R:9;}s:57:"1230:notnull.loanproduct.loanamountbylastloanamount.lower";a:2:{i:0;R:27388;i:1;R:9;}s:53:"1230:min.loanproduct.loanamountbylastloanamount.lower";a:2:{i:0;R:27388;i:1;R:9;}s:62:"1230:typemismatch.loanproduct.loanamountbylastloanamount.upper";a:2:{i:0;R:27388;i:1;R:9;}s:57:"1230:notnull.loanproduct.loanamountbylastloanamount.upper";a:2:{i:0;R:27388;i:1;R:9;}s:53:"1230:min.loanproduct.loanamountbylastloanamount.upper";a:2:{i:0;R:27388;i:1;R:9;}s:53:"1230:max.loanproduct.loanamountbylastloanamount.upper";a:2:{i:0;R:27388;i:1;R:9;}s:60:"1230:typemismatch.loanproduct.loanamountbylastloanamount.min";a:2:{i:0;R:27388;i:1;R:9;}s:55:"1230:notnull.loanproduct.loanamountbylastloanamount.min";a:2:{i:0;R:27388;i:1;R:9;}s:51:"1230:min.loanproduct.loanamountbylastloanamount.min";a:2:{i:0;R:27388;i:1;R:9;}s:60:"1230:typemismatch.loanproduct.loanamountbylastloanamount.max";a:2:{i:0;R:27388;i:1;R:9;}s:55:"1230:notnull.loanproduct.loanamountbylastloanamount.max";a:2:{i:0;R:27388;i:1;R:9;}s:51:"1230:min.loanproduct.loanamountbylastloanamount.max";a:2:{i:0;R:27388;i:1;R:9;}s:51:"1230:max.loanproduct.loanamountbylastloanamount.max";a:2:{i:0;R:27388;i:1;R:9;}s:67:"1230:typemismatch.loanproduct.loanamountbylastloanamount.thedefault";a:2:{i:0;R:27388;i:1;R:9;}s:62:"1230:notnull.loanproduct.loanamountbylastloanamount.thedefault";a:2:{i:0;R:27388;i:1;R:9;}s:58:"1230:min.loanproduct.loanamountbylastloanamount.thedefault";a:2:{i:0;R:27388;i:1;R:9;}s:58:"1230:max.loanproduct.loanamountbylastloanamount.thedefault";a:2:{i:0;R:27388;i:1;R:9;}s:64:"1230:typemismatch.loanproduct.installmentsbylastloanamount.lower";a:2:{i:0;R:27388;i:1;R:9;}s:59:"1230:notnull.loanproduct.installmentsbylastloanamount.lower";a:2:{i:0;R:27388;i:1;R:9;}s:55:"1230:min.loanproduct.installmentsbylastloanamount.lower";a:2:{i:0;R:27388;i:1;R:9;}s:64:"1230:typemismatch.loanproduct.installmentsbylastloanamount.upper";a:2:{i:0;R:27388;i:1;R:9;}s:59:"1230:notnull.loanproduct.installmentsbylastloanamount.upper";a:2:{i:0;R:27388;i:1;R:9;}s:55:"1230:min.loanproduct.installmentsbylastloanamount.upper";a:2:{i:0;R:27388;i:1;R:9;}s:55:"1230:max.loanproduct.installmentsbylastloanamount.upper";a:2:{i:0;R:27388;i:1;R:9;}s:62:"1230:typemismatch.loanproduct.installmentsbylastloanamount.min";a:2:{i:0;R:27388;i:1;R:9;}s:57:"1230:notnull.loanproduct.installmentsbylastloanamount.min";a:2:{i:0;R:27388;i:1;R:9;}s:53:"1230:min.loanproduct.installmentsbylastloanamount.min";a:2:{i:0;R:27388;i:1;R:9;}s:62:"1230:typemismatch.loanproduct.installmentsbylastloanamount.max";a:2:{i:0;R:27388;i:1;R:9;}s:57:"1230:notnull.loanproduct.installmentsbylastloanamount.max";a:2:{i:0;R:27388;i:1;R:9;}s:53:"1230:min.loanproduct.installmentsbylastloanamount.max";a:2:{i:0;R:27388;i:1;R:9;}s:53:"1230:max.loanproduct.installmentsbylastloanamount.max";a:2:{i:0;R:27388;i:1;R:9;}s:69:"1230:typemismatch.loanproduct.installmentsbylastloanamount.thedefault";a:2:{i:0;R:27388;i:1;R:9;}s:64:"1230:notnull.loanproduct.installmentsbylastloanamount.thedefault";a:2:{i:0;R:27388;i:1;R:9;}s:60:"1230:min.loanproduct.installmentsbylastloanamount.thedefault";a:2:{i:0;R:27388;i:1;R:9;}s:60:"1230:max.loanproduct.installmentsbylastloanamount.thedefault";a:2:{i:0;R:27388;i:1;R:9;}s:62:"1230:typemismatch.loanproduct.loanamountbyloancycle.thedefault";a:2:{i:0;R:27388;i:1;R:9;}s:57:"1230:notnull.loanproduct.loanamountbyloancycle.thedefault";a:2:{i:0;R:27388;i:1;R:9;}s:53:"1230:min.loanproduct.loanamountbyloancycle.thedefault";a:2:{i:0;R:27388;i:1;R:9;}s:53:"1230:max.loanproduct.loanamountbyloancycle.thedefault";a:2:{i:0;R:27388;i:1;R:9;}s:55:"1230:typemismatch.loanproduct.loanamountbyloancycle.min";a:2:{i:0;R:27388;i:1;R:9;}s:50:"1230:notnull.loanproduct.loanamountbyloancycle.min";a:2:{i:0;R:27388;i:1;R:9;}s:46:"1230:min.loanproduct.loanamountbyloancycle.min";a:2:{i:0;R:27388;i:1;R:9;}s:55:"1230:typemismatch.loanproduct.loanamountbyloancycle.max";a:2:{i:0;R:27388;i:1;R:9;}s:50:"1230:notnull.loanproduct.loanamountbyloancycle.max";a:2:{i:0;R:27388;i:1;R:9;}s:46:"1230:min.loanproduct.loanamountbyloancycle.max";a:2:{i:0;R:27388;i:1;R:9;}s:46:"1230:max.loanproduct.loanamountbyloancycle.max";a:2:{i:0;R:27388;i:1;R:9;}s:64:"1230:typemismatch.loanproduct.installmentsbyloancycle.thedefault";a:2:{i:0;R:27388;i:1;R:9;}s:59:"1230:notnull.loanproduct.installmentsbyloancycle.thedefault";a:2:{i:0;R:27388;i:1;R:9;}s:55:"1230:min.loanproduct.installmentsbyloancycle.thedefault";a:2:{i:0;R:27388;i:1;R:9;}s:55:"1230:max.loanproduct.installmentsbyloancycle.thedefault";a:2:{i:0;R:27388;i:1;R:9;}s:57:"1230:typemismatch.loanproduct.installmentsbyloancycle.min";a:2:{i:0;R:27388;i:1;R:9;}s:52:"1230:notnull.loanproduct.installmentsbyloancycle.min";a:2:{i:0;R:27388;i:1;R:9;}s:48:"1230:min.loanproduct.installmentsbyloancycle.min";a:2:{i:0;R:27388;i:1;R:9;}s:57:"1230:typemismatch.loanproduct.installmentsbyloancycle.max";a:2:{i:0;R:27388;i:1;R:9;}s:52:"1230:notnull.loanproduct.installmentsbyloancycle.max";a:2:{i:0;R:27388;i:1;R:9;}s:48:"1230:min.loanproduct.installmentsbyloancycle.max";a:2:{i:0;R:27388;i:1;R:9;}s:48:"1230:max.loanproduct.installmentsbyloancycle.max";a:2:{i:0;R:27388;i:1;R:9;}s:60:"1230:notnull.loanproduct.installmentfrequencyrecurrenceevery";a:2:{i:0;R:27388;i:1;R:9;}s:61:"1230:typemismatch.loanproduct.installmentssameforallloans.min";a:2:{i:0;R:27388;i:1;R:9;}s:61:"1230:typemismatch.loanproduct.installmentssameforallloans.max";a:2:{i:0;R:27388;i:1;R:9;}s:68:"1230:typemismatch.loanproduct.installmentssameforallloans.thedefault";a:2:{i:0;R:27388;i:1;R:9;}s:52:"1230:min.loanproduct.installmentssameforallloans.min";a:2:{i:0;R:27388;i:1;R:9;}s:52:"1230:min.loanproduct.installmentssameforallloans.max";a:2:{i:0;R:27388;i:1;R:9;}s:59:"1230:min.loanproduct.installmentssameforallloans.thedefault";a:2:{i:0;R:27388;i:1;R:9;}s:56:"1230:notnull.loanproduct.installmentssameforallloans.min";a:2:{i:0;R:27388;i:1;R:9;}s:56:"1230:notnull.loanproduct.installmentssameforallloans.max";a:2:{i:0;R:27388;i:1;R:9;}s:63:"1230:notnull.loanproduct.installmentssameforallloans.thedefault";a:2:{i:0;R:27388;i:1;R:9;}s:52:"1230:max.loanproduct.installmentssameforallloans.max";a:2:{i:0;R:27388;i:1;R:9;}s:59:"1230:max.loanproduct.installmentssameforallloans.thedefault";a:2:{i:0;R:27388;i:1;R:9;}s:45:"1230:typemismatch.loanproduct.mininterestrate";a:2:{i:0;R:27388;i:1;R:9;}s:45:"1230:typemismatch.loanproduct.maxinterestrate";a:2:{i:0;R:27388;i:1;R:9;}s:49:"1230:typemismatch.loanproduct.defaultinterestrate";a:2:{i:0;R:27388;i:1;R:9;}s:36:"1230:min.loanproduct.mininterestrate";a:2:{i:0;R:27388;i:1;R:9;}s:36:"1230:max.loanproduct.mininterestrate";a:2:{i:0;R:27388;i:1;R:9;}s:36:"1230:min.loanproduct.maxinterestrate";a:2:{i:0;R:27388;i:1;R:9;}s:36:"1230:max.loanproduct.maxinterestrate";a:2:{i:0;R:27388;i:1;R:9;}s:40:"1230:min.loanproduct.defaultinterestrate";a:2:{i:0;R:27388;i:1;R:9;}s:40:"1230:max.loanproduct.defaultinterestrate";a:2:{i:0;R:27388;i:1;R:9;}s:38:"1230:range.loanproduct.maxinterestrate";a:2:{i:0;R:27388;i:1;R:9;}s:42:"1230:range.loanproduct.defaultinterestrate";a:2:{i:0;R:27388;i:1;R:9;}s:62:"1230:systemusers.managerolesandpermissions.rolesandpermissions";a:2:{i:0;R:27388;i:1;R:9;}s:57:"1230:systemusers.managerolesandpermissions.aroleisthename";a:2:{i:0;R:27388;i:1;R:9;}s:65:"1230:systemusers.managerolesandpermissions.nameandtaskpermissions";a:2:{i:0;R:27388;i:1;R:9;}s:50:"1230:systemusers.managerolesandpermissions.newrole";a:2:{i:0;R:27388;i:1;R:9;}s:53:"1230:systemusers.managerolesandpermissions.deleterole";a:2:{i:0;R:27388;i:1;R:9;}s:20:"1230:reviewandsubmit";a:2:{i:0;R:27388;i:1;R:9;}s:107:"1230:systemusers.definenewsystemuser.toselect,clickonaofficefromthelistbelow.clickcanceltoreturntoadminpage";a:2:{i:0;R:27388;i:1;R:9;}s:43:"1230:fieldsmarkedwithanasteriskarerequired.";a:2:{i:0;R:27388;i:1;R:9;}s:18:"1230:--selectone--";a:2:{i:0;R:27388;i:1;R:9;}s:42:"1230:offices.definenewoffice.city/district";a:2:{i:0;R:27388;i:1;R:9;}s:42:"1230:offices.editofficeinformation.status1";a:2:{i:0;R:27388;i:1;R:9;}s:48:"1230:offices.editofficeinformation.city/district";a:2:{i:0;R:27388;i:1;R:9;}s:56:"1230:systemadministration.batchjobs.batchjobsinformation";a:2:{i:0;R:27388;i:1;R:9;}s:66:"1230:systemadministration.batchjobs.welcometothemifosbatchjobsarea";a:2:{i:0;R:27388;i:1;R:9;}s:51:"1230:systemadministration.batchjobs.schedulerstatus";a:2:{i:0;R:27388;i:1;R:9;}s:50:"1230:systemadministration.batchjobs.scheduledtasks";a:2:{i:0;R:27388;i:1;R:9;}s:57:"1230:systemadministration.batchjobs.taskssentforexecution";a:2:{i:0;R:27388;i:1;R:9;}s:43:"1230:systemadministration.batchjobs.suspend";a:2:{i:0;R:27388;i:1;R:9;}s:44:"1230:systemadministration.batchjobs.activate";a:2:{i:0;R:27388;i:1;R:9;}s:46:"1230:systemadministration.batchjobs.taskstatus";a:2:{i:0;R:27388;i:1;R:9;}s:42:"1230:systemadministration.batchjobs.normal";a:2:{i:0;R:27388;i:1;R:9;}s:42:"1230:systemadministration.batchjobs.paused";a:2:{i:0;R:27388;i:1;R:9;}s:43:"1230:systemadministration.batchjobs.unknown";a:2:{i:0;R:27388;i:1;R:9;}s:45:"1230:systemadministration.batchjobs.completed";a:2:{i:0;R:27388;i:1;R:9;}s:44:"1230:systemadministration.batchjobs.starting";a:2:{i:0;R:27388;i:1;R:9;}s:43:"1230:systemadministration.batchjobs.started";a:2:{i:0;R:27388;i:1;R:9;}s:44:"1230:systemadministration.batchjobs.stopping";a:2:{i:0;R:27388;i:1;R:9;}s:43:"1230:systemadministration.batchjobs.stopped";a:2:{i:0;R:27388;i:1;R:9;}s:42:"1230:systemadministration.batchjobs.failed";a:2:{i:0;R:27388;i:1;R:9;}s:45:"1230:systemadministration.batchjobs.abandoned";a:2:{i:0;R:27388;i:1;R:9;}s:52:"1230:systemadministration.batchjobs.neverexecutedyet";a:2:{i:0;R:27388;i:1;R:9;}s:40:"1230:systemadministration.batchjobs.none";a:2:{i:0;R:27388;i:1;R:9;}s:42:"1230:systemadministration.batchjobs.active";a:2:{i:0;R:27388;i:1;R:9;}s:43:"1230:systemadministration.batchjobs.standby";a:2:{i:0;R:27388;i:1;R:9;}s:52:"1230:systemadministration.batchjobs.previousrunstart";a:2:{i:0;R:27388;i:1;R:9;}s:59:"1230:systemadministration.batchjobs.mostrecentsuccessfulrun";a:2:{i:0;R:27388;i:1;R:9;}s:53:"1230:systemadministration.batchjobs.previousrunstatus";a:2:{i:0;R:27388;i:1;R:9;}s:45:"1230:systemadministration.batchjobs.nextstart";a:2:{i:0;R:27388;i:1;R:9;}s:44:"1230:systemadministration.batchjobs.tasktype";a:2:{i:0;R:27388;i:1;R:9;}s:50:"1230:systemadministration.batchjobs.cronexpression";a:2:{i:0;R:27388;i:1;R:9;}s:50:"1230:systemadministration.batchjobs.repeatinterval";a:2:{i:0;R:27388;i:1;R:9;}s:43:"1230:systemadministration.batchjobs.milisec";a:2:{i:0;R:27388;i:1;R:9;}s:48:"1230:systemadministration.batchjobs.taskpriority";a:2:{i:0;R:27388;i:1;R:9;}s:49:"1230:systemadministration.batchjobs.taskdependson";a:2:{i:0;R:27388;i:1;R:9;}s:52:"1230:systemadministration.batchjobs.runselectedtasks";a:2:{i:0;R:27388;i:1;R:9;}s:47:"1230:systemadministration.batchjobs.savechanges";a:2:{i:0;R:27388;i:1;R:9;}s:42:"1230:systemadministration.batchjobs.reload";a:2:{i:0;R:27388;i:1;R:9;}s:47:"1230:systemadministration.batchjobs.showdetails";a:2:{i:0;R:27388;i:1;R:9;}s:56:"1230:systemadministration.batchjobs.batchjobsfaildetails";a:2:{i:0;R:27388;i:1;R:9;}s:42:"1230:systemadministration.batchjobs.return";a:2:{i:0;R:27388;i:1;R:9;}s:45:"1230:systemadministration.batchjobs.selectall";a:2:{i:0;R:27388;i:1;R:9;}s:62:"1230:systemadministration.monthclosing.monthclosinginformation";a:2:{i:0;R:27388;i:1;R:9;}s:82:"1230:systemadministration.monthclosing.welcometothemifosmonthclosingmanagementarea";a:2:{i:0;R:27388;i:1;R:9;}s:62:"1230:systemadministration.monthclosing.currentmonthclosingdate";a:2:{i:0;R:27388;i:1;R:9;}s:47:"1230:systemadministration.monthclosing.changeto";a:2:{i:0;R:27388;i:1;R:9;}s:45:"1230:systemadministration.monthclosing.change";a:2:{i:0;R:27388;i:1;R:9;}s:86:"1230:systemadministration.viewsysteminformation.welcometothemifossysteminformationarea";a:2:{i:0;R:27388;i:1;R:9;}s:65:"1230:systemadministration.viewsysteminformation.systeminformation";a:2:{i:0;R:27388;i:1;R:9;}s:67:"1230:systemadministration.viewsysteminformation.operatingsystemarch";a:2:{i:0;R:27388;i:1;R:9;}s:65:"1230:systemadministration.viewsysteminformation.javavendorversion";a:2:{i:0;R:27388;i:1;R:9;}s:62:"1230:systemadministration.viewsysteminformation.databasevendor";a:2:{i:0;R:27388;i:1;R:9;}s:69:"1230:systemadministration.viewsysteminformation.databasedriverversion";a:2:{i:0;R:27388;i:1;R:9;}s:65:"1230:systemadministration.viewsysteminformation.applicationserver";a:2:{i:0;R:27388;i:1;R:9;}s:63:"1230:systemadministration.viewsysteminformation.appliedupgrades";a:2:{i:0;R:27388;i:1;R:9;}s:70:"1230:systemadministration.viewsysteminformation.customreportsdirectory";a:2:{i:0;R:27388;i:1;R:9;}s:64:"1230:systemadministration.viewsysteminformation.commitidentifier";a:2:{i:0;R:27388;i:1;R:9;}s:59:"1230:systemadministration.viewsysteminformation.releasename";a:2:{i:0;R:27388;i:1;R:9;}s:57:"1230:systemadministration.viewsysteminformation.builddate";a:2:{i:0;R:27388;i:1;R:9;}s:59:"1230:systemadministration.viewsysteminformation.buildnumber";a:2:{i:0;R:27388;i:1;R:9;}s:62:"1230:systemadministration.viewsysteminformation.databasesource";a:2:{i:0;R:27388;i:1;R:9;}s:62:"1230:systemadministration.viewsysteminformation.databaseserver";a:2:{i:0;R:27388;i:1;R:9;}s:60:"1230:systemadministration.viewsysteminformation.databaseport";a:2:{i:0;R:27388;i:1;R:9;}s:60:"1230:systemadministration.viewsysteminformation.databasename";a:2:{i:0;R:27388;i:1;R:9;}s:60:"1230:systemadministration.viewsysteminformation.databaseuser";a:2:{i:0;R:27388;i:1;R:9;}s:59:"1230:systemadministration.viewsysteminformation.dateandtime";a:2:{i:0;R:27388;i:1;R:9;}s:74:"1230:systemadministration.viewsysteminformation.dateandtimeiniso8601format";a:2:{i:0;R:27388;i:1;R:9;}s:54:"1230:systemadministration.viewsysteminformation.osuser";a:2:{i:0;R:27388;i:1;R:9;}s:54:"1230:systemadministration.shutdown.shutdowninformation";a:2:{i:0;R:27388;i:1;R:9;}s:74:"1230:systemadministration.shutdown.welcometothemifosshutdownmanagementarea";a:2:{i:0;R:27388;i:1;R:9;}s:49:"1230:systemadministration.shutdown.shutdownstatus";a:2:{i:0;R:27388;i:1;R:9;}s:45:"1230:systemadministration.shutdown.schedulein";a:2:{i:0;R:27388;i:1;R:9;}s:42:"1230:systemadministration.shutdown.seconds";a:2:{i:0;R:27388;i:1;R:9;}s:48:"1230:systemadministration.shutdown.startshutdown";a:2:{i:0;R:27388;i:1;R:9;}s:49:"1230:systemadministration.shutdown.cancelshutdown";a:2:{i:0;R:27388;i:1;R:9;}s:42:"1230:systemadministration.shutdown.refresh";a:2:{i:0;R:27388;i:1;R:9;}s:49:"1230:systemadministration.shutdown.activesessions";a:2:{i:0;R:27388;i:1;R:9;}s:98:"1230:systemadministration.viewsysteminformation.mifosdatabaseversion.listofapplieddatabaseupgrades";a:2:{i:0;R:27388;i:1;R:9;}s:100:"1230:systemadministration.viewsysteminformation.mifosdatabaseversion.listofunapplieddatabaseupgrades";a:2:{i:0;R:27388;i:1;R:9;}s:35:"1230:admin.viewsysteminformation.id";a:2:{i:0;R:27388;i:1;R:9;}s:39:"1230:admin.viewsysteminformation.author";a:2:{i:0;R:27388;i:1;R:9;}s:41:"1230:admin.viewsysteminformation.contexts";a:2:{i:0;R:27388;i:1;R:9;}s:45:"1230:admin.viewsysteminformation.dateexecuted";a:2:{i:0;R:27388;i:1;R:9;}s:46:"1230:admin.viewsysteminformation.executiontype";a:2:{i:0;R:27388;i:1;R:9;}s:42:"1230:admin.viewsysteminformation.norecords";a:2:{i:0;R:27388;i:1;R:9;}s:55:"1230:manageloanproducts.editloanproduct.loanproductname";a:2:{i:0;R:27388;i:1;R:9;}s:56:"1230:manageloanproducts.editloanproduct.viewloanproducts";a:2:{i:0;R:27388;i:1;R:9;}s:66:"1230:manageloanproducts.editloanproduct.editloanproductinformation";a:2:{i:0;R:27388;i:1;R:9;}s:58:"1230:manageloanproducts.editloanproduct.loanproductdetails";a:2:{i:0;R:27388;i:1;R:9;}s:59:"1230:manageloanproducts.editloanproduct.productinstancename";a:2:{i:0;R:27388;i:1;R:9;}s:49:"1230:manageloanproducts.editloanproduct.shortname";a:2:{i:0;R:27388;i:1;R:9;}s:51:"1230:manageloanproducts.editloanproduct.description";a:2:{i:0;R:27388;i:1;R:9;}s:55:"1230:manageloanproducts.editloanproduct.productcategory";a:2:{i:0;R:27388;i:1;R:9;}s:49:"1230:manageloanproducts.editloanproduct.startdate";a:2:{i:0;R:27388;i:1;R:9;}s:47:"1230:manageloanproducts.editloanproduct.enddate";a:2:{i:0;R:27388;i:1;R:9;}s:53:"1230:manageloanproducts.editloanproduct.applicablefor";a:2:{i:0;R:27388;i:1;R:9;}s:65:"1230:manageloanproducts.editloanproduct.includeinloancyclecounter";a:2:{i:0;R:27388;i:1;R:9;}s:61:"1230:manageloanproducts.editloanproduct.calculateloanamountas";a:2:{i:0;R:27388;i:1;R:9;}s:53:"1230:manageloanproducts.editloanproduct.minloanamount";a:2:{i:0;R:27388;i:1;R:9;}s:53:"1230:manageloanproducts.editloanproduct.maxloanamount";a:2:{i:0;R:27388;i:1;R:9;}s:53:"1230:manageloanproducts.editloanproduct.defaultamount";a:2:{i:0;R:27388;i:1;R:9;}s:52:"1230:manageloanproducts.editloanproduct.interestrate";a:2:{i:0;R:27388;i:1;R:9;}s:56:"1230:manageloanproducts.editloanproduct.interestratetype";a:2:{i:0;R:27388;i:1;R:9;}s:55:"1230:manageloanproducts.editloanproduct.maxinterestrate";a:2:{i:0;R:27388;i:1;R:9;}s:55:"1230:manageloanproducts.editloanproduct.mininterestrate";a:2:{i:0;R:27388;i:1;R:9;}s:59:"1230:manageloanproducts.editloanproduct.defaultinterestrate";a:2:{i:0;R:27388;i:1;R:9;}s:57:"1230:manageloanproducts.editloanproduct.repaymentschedule";a:2:{i:0;R:27388;i:1;R:9;}s:63:"1230:manageloanproducts.editloanproduct.frequencyofinstallments";a:2:{i:0;R:27388;i:1;R:9;}s:65:"1230:manageloanproducts.editloanproduct.calculateofinstallmentsas";a:2:{i:0;R:27388;i:1;R:9;}s:57:"1230:manageloanproducts.editloanproduct.minofinstallments";a:2:{i:0;R:27388;i:1;R:9;}s:57:"1230:manageloanproducts.editloanproduct.maxofinstallments";a:2:{i:0;R:27388;i:1;R:9;}s:61:"1230:manageloanproducts.editloanproduct.defaultofinstallments";a:2:{i:0;R:27388;i:1;R:9;}s:55:"1230:manageloanproducts.editloanproduct.graceperiodtype";a:2:{i:0;R:27388;i:1;R:9;}s:59:"1230:manageloanproducts.editloanproduct.graceperiodduration";a:2:{i:0;R:27388;i:1;R:9;}s:44:"1230:manageloanproducts.editloanproduct.fees";a:2:{i:0;R:27388;i:1;R:9;}s:50:"1230:manageloanproducts.editloanproduct.accounting";a:2:{i:0;R:27388;i:1;R:9;}s:54:"1230:manageloanproducts.editloanproduct.sourcesoffunds";a:2:{i:0;R:27388;i:1;R:9;}s:53:"1230:manageloanproducts.editloanproduct.productglcode";a:2:{i:0;R:27388;i:1;R:9;}s:48:"1230:manageloanproducts.editloanproduct.interest";a:2:{i:0;R:27388;i:1;R:9;}s:49:"1230:manageloanproducts.editloanproduct.principal";a:2:{i:0;R:27388;i:1;R:9;}s:53:"1230:manageloanproducts.editloanproduct.viewchangelog";a:2:{i:0;R:27388;i:1;R:9;}s:64:"1230:managesavngsproducts.editsavingsproduct.viewsavingsproducts";a:2:{i:0;R:27388;i:1;R:9;}s:63:"1230:managesavngsproducts.editsavingsproduct.savingsproductname";a:2:{i:0;R:27388;i:1;R:9;}s:74:"1230:managesavngsproducts.editsavingsproduct.editsavingsproductinformation";a:2:{i:0;R:27388;i:1;R:9;}s:66:"1230:managesavngsproducts.editsavingsproduct.savingsproductdetails";a:2:{i:0;R:27388;i:1;R:9;}s:59:"1230:managesavngsproducts.editsavingsproduct.typeofdeposits";a:2:{i:0;R:27388;i:1;R:9;}s:70:"1230:managesavngsproducts.editsavingsproduct.mandatoryamountfordeposit";a:2:{i:0;R:27388;i:1;R:9;}s:60:"1230:managesavngsproducts.editsavingsproduct.amountappliesto";a:2:{i:0;R:27388;i:1;R:9;}s:67:"1230:managesavngsproducts.editsavingsproduct.maxamountperwithdrawal";a:2:{i:0;R:27388;i:1;R:9;}s:77:"1230:managesavngsproducts.editsavingsproduct.alanceusedforinterestcalculation";a:2:{i:0;R:27388;i:1;R:9;}s:77:"1230:managesavngsproducts.editsavingsproduct.timeperiodforinterestcalculation";a:2:{i:0;R:27388;i:1;R:9;}s:81:"1230:managesavngsproducts.editsavingsproduct.frequencyofinterestpostingtoaccounts";a:2:{i:0;R:27388;i:1;R:9;}s:89:"1230:managesavngsproducts.editsavingsproduct.minimumbalancerequiredforinterestcalculation";a:2:{i:0;R:27388;i:1;R:9;}s:55:"1230:managesavngsproducts.editsavingsproduct.accounting";a:2:{i:0;R:27388;i:1;R:9;}s:62:"1230:managesavngsproducts.editsavingsproduct.glcodefordeposits";a:2:{i:0;R:27388;i:1;R:9;}s:62:"1230:managesavngsproducts.editsavingsproduct.glcodeforinterest";a:2:{i:0;R:27388;i:1;R:9;}s:58:"1230:managesavngsproducts.editsavingsproduct.viewchangelog";a:2:{i:0;R:27388;i:1;R:9;}s:64:"1230:managesavngsproducts.editsavingsproduct.productinstancename";a:2:{i:0;R:27388;i:1;R:9;}s:54:"1230:managesavngsproducts.editsavingsproduct.shortname";a:2:{i:0;R:27388;i:1;R:9;}s:56:"1230:managesavngsproducts.editsavingsproduct.description";a:2:{i:0;R:27388;i:1;R:9;}s:60:"1230:managesavngsproducts.editsavingsproduct.productcategory";a:2:{i:0;R:27388;i:1;R:9;}s:54:"1230:managesavngsproducts.editsavingsproduct.startdate";a:2:{i:0;R:27388;i:1;R:9;}s:52:"1230:managesavngsproducts.editsavingsproduct.enddate";a:2:{i:0;R:27388;i:1;R:9;}s:58:"1230:managesavngsproducts.editsavingsproduct.applicablefor";a:2:{i:0;R:27388;i:1;R:9;}s:57:"1230:managesavngsproducts.editsavingsproduct.interestrate";a:2:{i:0;R:27388;i:1;R:9;}s:51:"1230:managesavngsproducts.editsavingsproduct.status";a:2:{i:0;R:27388;i:1;R:9;}s:57:"1230:organizationpreferences.editchecklist.viewchecklists";a:2:{i:0;R:27388;i:1;R:9;}s:56:"1230:organizationpreferences.editchecklist.checklistname";a:2:{i:0;R:27388;i:1;R:9;}s:47:"1230:organizationpreferences.editchecklist.type";a:2:{i:0;R:27388;i:1;R:9;}s:49:"1230:organizationpreferences.editchecklist.status";a:2:{i:0;R:27388;i:1;R:9;}s:52:"1230:organizationpreferences.editchecklist.createdby";a:2:{i:0;R:27388;i:1;R:9;}s:54:"1230:organizationpreferences.editchecklist.createddate";a:2:{i:0;R:27388;i:1;R:9;}s:48:"1230:organizationpreferences.editchecklist.items";a:2:{i:0;R:27388;i:1;R:9;}s:49:"1230:organizationpreferences.editchecklist.items1";a:2:{i:0;R:27388;i:1;R:9;}s:49:"1230:organizationpreferences.editchecklist.items2";a:2:{i:0;R:27388;i:1;R:9;}s:67:"1230:organizationpreferences.editchecklist.editchecklistinformation";a:2:{i:0;R:27388;i:1;R:9;}s:63:"1230:organizationpreferences.fundpreview.previewfundinformation";a:2:{i:0;R:27388;i:1;R:9;}s:60:"1230:organizationpreferences.fundpreview.editfundinformation";a:2:{i:0;R:27388;i:1;R:9;}s:11:"1230:cancel";a:2:{i:0;R:27388;i:1;R:9;}s:58:"1230:organizationpreferences.definenewfund.fundinformation";a:2:{i:0;R:27388;i:1;R:9;}s:56:"1230:organizationpreferences.definenewfund.definenewfund";a:2:{i:0;R:27388;i:1;R:9;}s:57:"1230:organizationpreferences.definenewfund.defineanewfund";a:2:{i:0;R:27388;i:1;R:9;}s:141:"1230:organizationpreferences.definenewfund.completethefieldsbelow.thenclickpreview.clickcanceltoreturntoadminpagewithoutsubmittinginformation";a:2:{i:0;R:27388;i:1;R:9;}s:54:"1230:organizationpreferences.definenewfund.funddetails";a:2:{i:0;R:27388;i:1;R:9;}s:47:"1230:organizationpreferences.definenewfund.name";a:2:{i:0;R:27388;i:1;R:9;}s:51:"1230:organizationpreferences.definenewfund.fundcode";a:2:{i:0;R:27388;i:1;R:9;}s:63:"1230:organizationpreferences.definenewfund.enterfundinformation";a:2:{i:0;R:27388;i:1;R:9;}s:64:"1230:organizationpreferences.definenewpenalty.penaltyinformation";a:2:{i:0;R:27388;i:1;R:9;}s:62:"1230:organizationpreferences.definenewpenalty.definenewpenalty";a:2:{i:0;R:27388;i:1;R:9;}s:63:"1230:organizationpreferences.definenewpenalty.defineanewpenalty";a:2:{i:0;R:27388;i:1;R:9;}s:144:"1230:organizationpreferences.definenewpenalty.completethefieldsbelow.thenclickpreview.clickcanceltoreturntoadminpagewithoutsubmittinginformation";a:2:{i:0;R:27388;i:1;R:9;}s:60:"1230:organizationpreferences.definenewpenalty.penaltydetails";a:2:{i:0;R:27388;i:1;R:9;}s:65:"1230:organizationpreferences.definenewpenalty.interestcalculation";a:2:{i:0;R:27388;i:1;R:9;}s:63:"1230:organizationpreferences.definenewpenalty.accountingdetails";a:2:{i:0;R:27388;i:1;R:9;}s:50:"1230:organizationpreferences.definenewpenalty.name";a:2:{i:0;R:27388;i:1;R:9;}s:55:"1230:organizationpreferences.definenewpenalty.appliesto";a:2:{i:0;R:27388;i:1;R:9;}s:61:"1230:organizationpreferences.definenewpenalty.graceperiodtype";a:2:{i:0;R:27388;i:1;R:9;}s:65:"1230:organizationpreferences.definenewpenalty.graceperiodduration";a:2:{i:0;R:27388;i:1;R:9;}s:71:"1230:organizationpreferences.definenewpenalty.mincumulativepenaltylimit";a:2:{i:0;R:27388;i:1;R:9;}s:71:"1230:organizationpreferences.definenewpenalty.maxcumulativepenaltylimit";a:2:{i:0;R:27388;i:1;R:9;}s:57:"1230:organizationpreferences.definenewpenalty.fixedamount";a:2:{i:0;R:27388;i:1;R:9;}s:48:"1230:organizationpreferences.definenewpenalty.or";a:2:{i:0;R:27388;i:1;R:9;}s:64:"1230:organizationpreferences.definenewpenalty.calculatepenaltyas";a:2:{i:0;R:27388;i:1;R:9;}s:55:"1230:organizationpreferences.definenewpenalty.percentof";a:2:{i:0;R:27388;i:1;R:9;}s:73:"1230:organizationpreferences.definenewpenalty.penaltyapplicationfrequency";a:2:{i:0;R:27388;i:1;R:9;}s:52:"1230:organizationpreferences.definenewpenalty.glcode";a:2:{i:0;R:27388;i:1;R:9;}s:69:"1230:organizationpreferences.definenewpenalty.enterpenaltyinformation";a:2:{i:0;R:27388;i:1;R:9;}s:68:"1230:organizationpreferences.viewpenalty.edit.editpenaltyinformation";a:2:{i:0;R:27388;i:1;R:9;}s:152:"1230:organizationpreferences.viewpenalty.edit.completethefieldsbelow.thenclickpreview.clickcanceltoreturntoviewpenaltiespagewithoutsubmittinginformation";a:2:{i:0;R:27388;i:1;R:9;}s:145:"1230:organizationpreferences.viewpenalty.edit.previewthefieldsbelowthenclicksubmitclickcanceltoreturntopenaltydetailswithoutsubmittinginformation";a:2:{i:0;R:27388;i:1;R:9;}s:71:"1230:organizationpreferences.viewpenalty.edit.previewpenaltyinformation";a:2:{i:0;R:27388;i:1;R:9;}s:52:"1230:organizationpreferences.viewpenalty.edit.status";a:2:{i:0;R:27388;i:1;R:9;}s:58:"1230:organizationpreferences.definenewholiday.viewholidays";a:2:{i:0;R:27388;i:1;R:9;}s:56:"1230:organizationpreferences.definenewholiday.addholiday";a:2:{i:0;R:27388;i:1;R:9;}s:57:"1230:organizationpreferences.definenewholiday.holidayname";a:2:{i:0;R:27388;i:1;R:9;}s:53:"1230:organizationpreferences.definenewholiday.fromdat";a:2:{i:0;R:27388;i:1;R:9;}s:52:"1230:organizationpreferences.definenewholiday.todate";a:2:{i:0;R:27388;i:1;R:9;}s:48:"1230:organizationpreferences.definenewholiday.dd";a:2:{i:0;R:27388;i:1;R:9;}s:48:"1230:organizationpreferences.definenewholiday.mm";a:2:{i:0;R:27388;i:1;R:9;}s:50:"1230:organizationpreferences.definenewholiday.yyyy";a:2:{i:0;R:27388;i:1;R:9;}s:59:"1230:organizationpreferences.definenewholiday.repaymentrule";a:2:{i:0;R:27388;i:1;R:9;}s:15:"1230:--select--";a:2:{i:0;R:27388;i:1;R:9;}s:12:"1230:sameday";a:2:{i:0;R:27388;i:1;R:9;}s:26:"1230:nextmeeting/repayment";a:2:{i:0;R:27388;i:1;R:9;}s:19:"1230:nextworkingday";a:2:{i:0;R:27388;i:1;R:9;}s:24:"1230:repaymentmoratorium";a:2:{i:0;R:27388;i:1;R:9;}s:53:"1230:organizationpreferences.definenewholiday.sameday";a:2:{i:0;R:27388;i:1;R:9;}s:67:"1230:organizationpreferences.definenewholiday.nextmeeting/repayment";a:2:{i:0;R:27388;i:1;R:9;}s:60:"1230:organizationpreferences.definenewholiday.nextworkingday";a:2:{i:0;R:27388;i:1;R:9;}s:55:"1230:organizationpreferences.definenewholiday.appliesto";a:2:{i:0;R:27388;i:1;R:9;}s:34:"1230:error.holiday.mandatory_field";a:2:{i:0;R:27388;i:1;R:9;}s:29:"1230:holiday.fromdate.invalid";a:2:{i:0;R:27388;i:1;R:9;}s:30:"1230:holiday.fromdate.invalid2";a:2:{i:0;R:27388;i:1;R:9;}s:30:"1230:holiday.fromdate.invalid3";a:2:{i:0;R:27388;i:1;R:9;}s:30:"1230:holiday.fromdate.invalid4";a:2:{i:0;R:27388;i:1;R:9;}s:29:"1230:holiday.thrudate.invalid";a:2:{i:0;R:27388;i:1;R:9;}s:35:"1230:holiday.repaymentrule.required";a:2:{i:0;R:27388;i:1;R:9;}s:31:"1230:holiday.appliesto.required";a:2:{i:0;R:27388;i:1;R:9;}s:43:"1230:clientleftpane.clientsandaccountstasks";a:2:{i:0;R:27388;i:1;R:9;}s:42:"1230:clientleftpane.managecollectionsheets";a:2:{i:0;R:27388;i:1;R:9;}s:36:"1230:clientleftpane.createnewclients";a:2:{i:0;R:27388;i:1;R:9;}s:35:"1230:clientleftpane.createnewcenter";a:2:{i:0;R:27388;i:1;R:9;}s:34:"1230:clientleftpane.createnewgroup";a:2:{i:0;R:27388;i:1;R:9;}s:35:"1230:clientleftpane.createnewclient";a:2:{i:0;R:27388;i:1;R:9;}s:37:"1230:clientleftpane.createnewaccounts";a:2:{i:0;R:27388;i:1;R:9;}s:40:"1230:clientleftpane.createsavingsaccount";a:2:{i:0;R:27388;i:1;R:9;}s:37:"1230:clientleftpane.createloanaccount";a:2:{i:0;R:27388;i:1;R:9;}s:46:"1230:clientleftpane.createmultipleloanaccounts";a:2:{i:0;R:27388;i:1;R:9;}s:39:"1230:clientleftpane.manageaccountstatus";a:2:{i:0;R:27388;i:1;R:9;}s:40:"1230:clientleftpane.approvemultipleloans";a:2:{i:0;R:27388;i:1;R:9;}s:44:"1230:clientleftpane.entercollectionsheetdata";a:2:{i:0;R:27388;i:1;R:9;}s:43:"1230:organizationpreferences.viewchecklists";a:2:{i:0;R:27388;i:1;R:9;}s:63:"1230:organizationpreferences.viewchecklists.defineanewchecklist";a:2:{i:0;R:27388;i:1;R:9;}s:95:"1230:organizationpreferences.viewchecklists.clickonachecklistbelowtoviewdetailsandmakechangesor";a:2:{i:0;R:27388;i:1;R:9;}s:50:"1230:organizationpreferences.viewchecklists.center";a:2:{i:0;R:27388;i:1;R:9;}s:49:"1230:organizationpreferences.viewchecklists.group";a:2:{i:0;R:27388;i:1;R:9;}s:50:"1230:organizationpreferences.viewchecklists.client";a:2:{i:0;R:27388;i:1;R:9;}s:48:"1230:organizationpreferences.viewchecklists.loan";a:2:{i:0;R:27388;i:1;R:9;}s:51:"1230:organizationpreferences.viewchecklists.savings";a:2:{i:0;R:27388;i:1;R:9;}s:26:"1230:changepassword.logout";a:2:{i:0;R:27388;i:1;R:9;}s:34:"1230:changepassword.changepassword";a:2:{i:0;R:27388;i:1;R:9;}s:93:"1230:changepassword.entercurrentpasswordandthenchooseyournewpasswordclicksubmitwhenyouaredone";a:2:{i:0;R:27388;i:1;R:9;}s:28:"1230:changepassword.username";a:2:{i:0;R:27388;i:1;R:9;}s:31:"1230:changepassword.oldpassword";a:2:{i:0;R:27388;i:1;R:9;}s:31:"1230:changepassword.newpassword";a:2:{i:0;R:27388;i:1;R:9;}s:43:"1230:changepassword.newpasswordconfirmation";a:2:{i:0;R:27388;i:1;R:9;}s:16:"1230:login.login";a:2:{i:0;R:27388;i:1;R:9;}s:25:"1230:login.welcometomifos";a:2:{i:0;R:27388;i:1;R:9;}s:19:"1230:login.username";a:2:{i:0;R:27388;i:1;R:9;}s:19:"1230:login.password";a:2:{i:0;R:27388;i:1;R:9;}s:42:"1230:login.chinese.translation.attribution";a:2:{i:0;R:27388;i:1;R:9;}s:20:"1230:fundinformation";a:2:{i:0;R:27388;i:1;R:9;}s:19:"1230:defineanewfund";a:2:{i:0;R:27388;i:1;R:9;}s:142:"1230:reviewtheinformationbelow.clicksubmitifyouaresatisfiedorclickedittomakechanges.clickcanceltoreturntoadminpagewithoutsubmittinginformation";a:2:{i:0;R:27388;i:1;R:9;}s:16:"1230:funddetails";a:2:{i:0;R:27388;i:1;R:9;}s:9:"1230:name";a:2:{i:0;R:27388;i:1;R:9;}s:13:"1230:fundcode";a:2:{i:0;R:27388;i:1;R:9;}s:38:"1230:organizationpreferences.viewfunds";a:2:{i:0;R:27388;i:1;R:9;}s:44:"1230:organizationpreferences.viewfunds.funds";a:2:{i:0;R:27388;i:1;R:9;}s:40:"1230:manageloanproducts.viewloanproducts";a:2:{i:0;R:27388;i:1;R:9;}s:94:"1230:manageloanproducts.viewloanproducts.clickonaloanproductbelowtoviewdetailsandmakechangesor";a:2:{i:0;R:27388;i:1;R:9;}s:100:"1230:manageloanproducts.viewsavingsproducts.clickonasavingsproductbelowtoviewdetailsandmakechangesor";a:2:{i:0;R:27388;i:1;R:9;}s:66:"1230:manageloanproducts.viewsavingsproducts.definenewsavingporduct";a:2:{i:0;R:27388;i:1;R:9;}s:8:"1230:add";a:2:{i:0;R:27388;i:1;R:9;}s:11:"1230:remove";a:2:{i:0;R:27388;i:1;R:9;}s:9:"1230:edit";a:2:{i:0;R:27388;i:1;R:9;}s:99:"1230:completethefieldsbelow.thenclickpreview.clickcanceltoreturntoadminwithoutsubmittinginformation";a:2:{i:0;R:27388;i:1;R:9;}s:11:"1230:active";a:2:{i:0;R:27388;i:1;R:9;}s:13:"1230:inactive";a:2:{i:0;R:27388;i:1;R:9;}s:12:"1230:preview";a:2:{i:0;R:27388;i:1;R:9;}s:48:"1230:systemuser.youhavesuccessfullyaddedanewuser";a:2:{i:0;R:27388;i:1;R:9;}s:68:"1230:systemuser.pleasenotesystemuserhasbeenassignedthesystemidnumber";a:2:{i:0;R:27388;i:1;R:9;}s:34:"1230:systemuser.viewuserdetailsnow";a:2:{i:0;R:27388;i:1;R:9;}s:27:"1230:systemuser.addanewuser";a:2:{i:0;R:27388;i:1;R:9;}s:47:"1230:offices.youhavesuccessfullyaddedanewoffice";a:2:{i:0;R:27388;i:1;R:9;}s:68:"1230:offices.pleasenoteoffice1officehasbeenassignedthesystemidnumber";a:2:{i:0;R:27388;i:1;R:9;}s:33:"1230:offices.viewofficedetailsnow";a:2:{i:0;R:27388;i:1;R:9;}s:26:"1230:offices.addanewoffice";a:2:{i:0;R:27388;i:1;R:9;}s:48:"1230:youhavesuccessfullyaddedanewproductcategory";a:2:{i:0;R:27388;i:1;R:9;}s:62:"1230:pleasenoteproductcategoryhasbeenassignedthesystemidnumber";a:2:{i:0;R:27388;i:1;R:9;}s:27:"1230:viewcategorydetailsnow";a:2:{i:0;R:27388;i:1;R:9;}s:30:"1230:defineanewproductcategory";a:2:{i:0;R:27388;i:1;R:9;}s:62:"1230:manageproductmix.youhavesuccessfullydefinedanewproductmix";a:2:{i:0;R:27388;i:1;R:9;}s:46:"1230:manageproductmix.viewproductmixdetailsnow";a:2:{i:0;R:27388;i:1;R:9;}s:45:"1230:manageproductmix.definemixforanewproduct";a:2:{i:0;R:27388;i:1;R:9;}s:62:"1230:manageloanproduct.youhavesuccessfullyaddedanewloanproduct";a:2:{i:0;R:27388;i:1;R:9;}s:66:"1230:manageloanproduct.loanproducthasbeenassignedthesystemidnumber";a:2:{i:0;R:27388;i:1;R:9;}s:33:"1230:manageloanproduct.pleasenote";a:2:{i:0;R:27388;i:1;R:9;}s:48:"1230:manageloanproduct.viewloanproductdetailsnow";a:2:{i:0;R:27388;i:1;R:9;}s:44:"1230:manageloanproduct.defineanewloanproduct";a:2:{i:0;R:27388;i:1;R:9;}s:68:"1230:managesavingsproduct.youhavesuccessfullyaddedanewsavingsproduct";a:2:{i:0;R:27388;i:1;R:9;}s:72:"1230:managesavingsproduct.savingsproducthasbeenassignedthesystemidnumber";a:2:{i:0;R:27388;i:1;R:9;}s:54:"1230:managesavingsproduct.viewsavingsproductdetailsnow";a:2:{i:0;R:27388;i:1;R:9;}s:50:"1230:managesavingsproduct.defineanewsavingsproduct";a:2:{i:0;R:27388;i:1;R:9;}s:16:"1230:recentnotes";a:2:{i:0;R:27388;i:1;R:9;}s:30:"1230:recentnotes.noneavailable";a:2:{i:0;R:27388;i:1;R:9;}s:24:"1230:recentnotes.addnote";a:2:{i:0;R:27388;i:1;R:9;}s:25:"1230:recentnotes.allnotes";a:2:{i:0;R:27388;i:1;R:9;}s:37:"1230:systemusers.preview.chooseoffice";a:2:{i:0;R:27388;i:1;R:9;}s:40:"1230:systemusers.preview.userinformation";a:2:{i:0;R:27388;i:1;R:9;}s:36:"1230:systemusers.preview.addanewuser";a:2:{i:0;R:27388;i:1;R:9;}s:33:"1230:systemusers.preview.edituser";a:2:{i:0;R:27388;i:1;R:9;}s:50:"1230:systemusers.preview.reviewtheinformationbelow";a:2:{i:0;R:27388;i:1;R:9;}s:31:"1230:systemusers.preview.office";a:2:{i:0;R:27388;i:1;R:9;}s:36:"1230:systemusers.preview.userdetails";a:2:{i:0;R:27388;i:1;R:9;}s:32:"1230:systemusers.preview.address";a:2:{i:0;R:27388;i:1;R:9;}s:36:"1230:systemusers.preview.permissions";a:2:{i:0;R:27388;i:1;R:9;}s:34:"1230:systemusers.preview.logininfo";a:2:{i:0;R:27388;i:1;R:9;}s:34:"1230:systemusers.preview.firstname";a:2:{i:0;R:27388;i:1;R:9;}s:35:"1230:systemusers.preview.middlename";a:2:{i:0;R:27388;i:1;R:9;}s:39:"1230:systemusers.preview.secondlastname";a:2:{i:0;R:27388;i:1;R:9;}s:33:"1230:systemusers.preview.lastname";a:2:{i:0;R:27388;i:1;R:9;}s:37:"1230:systemusers.preview.governmentid";a:2:{i:0;R:27388;i:1;R:9;}s:30:"1230:systemusers.preview.email";a:2:{i:0;R:27388;i:1;R:9;}s:36:"1230:systemusers.preview.dateofbirth";a:2:{i:0;R:27388;i:1;R:9;}s:28:"1230:systemusers.preview.age";a:2:{i:0;R:27388;i:1;R:9;}s:31:"1230:systemusers.preview.gender";a:2:{i:0;R:27388;i:1;R:9;}s:38:"1230:systemusers.preview.maritalstatus";a:2:{i:0;R:27388;i:1;R:9;}s:42:"1230:systemusers.preview.languagepreferred";a:2:{i:0;R:27388;i:1;R:9;}s:39:"1230:systemusers.preview.mfijoiningdate";a:2:{i:0;R:27388;i:1;R:9;}s:31:"1230:systemusers.preview.status";a:2:{i:0;R:27388;i:1;R:9;}s:33:"1230:systemusers.preview.address1";a:2:{i:0;R:27388;i:1;R:9;}s:33:"1230:systemusers.preview.address2";a:2:{i:0;R:27388;i:1;R:9;}s:33:"1230:systemusers.preview.address3";a:2:{i:0;R:27388;i:1;R:9;}s:29:"1230:systemusers.preview.city";a:2:{i:0;R:27388;i:1;R:9;}s:30:"1230:systemusers.preview.state";a:2:{i:0;R:27388;i:1;R:9;}s:32:"1230:systemusers.preview.country";a:2:{i:0;R:27388;i:1;R:9;}s:35:"1230:systemusers.preview.postalcode";a:2:{i:0;R:27388;i:1;R:9;}s:34:"1230:systemusers.preview.telephone";a:2:{i:0;R:27388;i:1;R:9;}s:45:"1230:systemusers.preview.officeandpermissions";a:2:{i:0;R:27388;i:1;R:9;}s:34:"1230:systemusers.preview.usertitle";a:2:{i:0;R:27388;i:1;R:9;}s:38:"1230:systemusers.preview.userhierarchy";a:2:{i:0;R:27388;i:1;R:9;}s:30:"1230:systemusers.preview.roles";a:2:{i:0;R:27388;i:1;R:9;}s:41:"1230:systemusers.preview.logininformation";a:2:{i:0;R:27388;i:1;R:9;}s:33:"1230:systemusers.preview.username";a:2:{i:0;R:27388;i:1;R:9;}s:33:"1230:systemusers.preview.password";a:2:{i:0;R:27388;i:1;R:9;}s:42:"1230:systemusers.preview.confirmedpassword";a:2:{i:0;R:27388;i:1;R:9;}s:46:"1230:systemusers.preview.additionalinformation";a:2:{i:0;R:27388;i:1;R:9;}s:35:"1230:systemusers.preview.externalid";a:2:{i:0;R:27388;i:1;R:9;}s:34:"1230:notnull.userformbean.officeid";a:2:{i:0;R:27388;i:1;R:9;}s:36:"1230:notempty.userformbean.firstname";a:2:{i:0;R:27388;i:1;R:9;}s:35:"1230:notempty.userformbean.lastname";a:2:{i:0;R:27388;i:1;R:9;}s:40:"1230:notnull.userformbean.dateofbirthday";a:2:{i:0;R:27388;i:1;R:9;}s:36:"1230:min.userformbean.dateofbirthday";a:2:{i:0;R:27388;i:1;R:9;}s:36:"1230:max.userformbean.dateofbirthday";a:2:{i:0;R:27388;i:1;R:9;}s:42:"1230:notnull.userformbean.dateofbirthmonth";a:2:{i:0;R:27388;i:1;R:9;}s:38:"1230:min.userformbean.dateofbirthmonth";a:2:{i:0;R:27388;i:1;R:9;}s:38:"1230:max.userformbean.dateofbirthmonth";a:2:{i:0;R:27388;i:1;R:9;}s:41:"1230:notnull.userformbean.dateofbirthyear";a:2:{i:0;R:27388;i:1;R:9;}s:38:"1230:notvalid.userformbean.dateofbrith";a:2:{i:0;R:27388;i:1;R:9;}s:39:"1230:min.userformbean.mfijoiningdateday";a:2:{i:0;R:27388;i:1;R:9;}s:39:"1230:max.userformbean.mfijoiningdateday";a:2:{i:0;R:27388;i:1;R:9;}s:41:"1230:min.userformbean.mfijoiningdatemonth";a:2:{i:0;R:27388;i:1;R:9;}s:41:"1230:max.userformbean.mfijoiningdatemonth";a:2:{i:0;R:27388;i:1;R:9;}s:41:"1230:notvalid.userformbean.mfijoiningdate";a:2:{i:0;R:27388;i:1;R:9;}s:41:"1230:notempty.userformbean.selectedgender";a:2:{i:0;R:27388;i:1;R:9;}s:48:"1230:notempty.userformbean.selecteduserhierarchy";a:2:{i:0;R:27388;i:1;R:9;}s:35:"1230:notempty.userformbean.username";a:2:{i:0;R:27388;i:1;R:9;}s:35:"1230:notempty.userformbean.password";a:2:{i:0;R:27388;i:1;R:9;}s:35:"1230:notequal.userformbean.password";a:2:{i:0;R:27388;i:1;R:9;}s:30:"1230:min.userformbean.password";a:2:{i:0;R:27388;i:1;R:9;}s:43:"1230:notempty.userformbean.address.address1";a:2:{i:0;R:27388;i:1;R:9;}s:42:"1230:notempty.userformbean.additionalfield";a:2:{i:0;R:27388;i:1;R:9;}s:41:"1230:min.userformbean.additionaldatefield";a:2:{i:0;R:27388;i:1;R:9;}s:41:"1230:max.userformbean.additionaldatefield";a:2:{i:0;R:27388;i:1;R:9;}s:43:"1230:valid.userformbean.additionaldatefield";a:2:{i:0;R:27388;i:1;R:9;}s:45:"1230:valid.userformbean.additionalnumberfield";a:2:{i:0;R:27388;i:1;R:9;}s:47:"1230:offices.previewnewoffice.officeinformation";a:2:{i:0;R:27388;i:1;R:9;}s:43:"1230:offices.previewnewoffice.addanewoffice";a:2:{i:0;R:27388;i:1;R:9;}s:40:"1230:offices.previewnewoffice.officename";a:2:{i:0;R:27388;i:1;R:9;}s:45:"1230:offices.previewnewoffice.officeshortname";a:2:{i:0;R:27388;i:1;R:9;}s:40:"1230:offices.previewnewoffice.officetype";a:2:{i:0;R:27388;i:1;R:9;}s:42:"1230:offices.previewnewoffice.parentoffice";a:2:{i:0;R:27388;i:1;R:9;}s:43:"1230:offices.previewnewoffice.officeaddress";a:2:{i:0;R:27388;i:1;R:9;}s:39:"1230:offices.previewnewoffice.telephone";a:2:{i:0;R:27388;i:1;R:9;}s:44:"1230:offices.previewnewoffice.cityordistrict";a:2:{i:0;R:27388;i:1;R:9;}s:35:"1230:offices.previewnewoffice.state";a:2:{i:0;R:27388;i:1;R:9;}s:37:"1230:offices.previewnewoffice.country";a:2:{i:0;R:27388;i:1;R:9;}s:40:"1230:offices.previewnewoffice.postalcode";a:2:{i:0;R:27388;i:1;R:9;}s:66:"1230:organizationpreferences.previewchecklist.checklistinformation";a:2:{i:0;R:27388;i:1;R:9;}s:61:"1230:organizationpreferences.previewchecklist.addnewchecklist";a:2:{i:0;R:27388;i:1;R:9;}s:72:"1230:organizationpreferences.previewchecklist.reviewchecklistinformation";a:2:{i:0;R:27388;i:1;R:9;}s:83:"1230:organizationpreferences.previewchecklist.reviewtheinformationbelow.clicksubmit";a:2:{i:0;R:27388;i:1;R:9;}s:62:"1230:organizationpreferences.previewchecklist.checklistdetails";a:2:{i:0;R:27388;i:1;R:9;}s:60:"1230:organizationpreferences.previewchecklist.viewchecklists";a:2:{i:0;R:27388;i:1;R:9;}s:50:"1230:organizationpreferences.previewchecklist.name";a:2:{i:0;R:27388;i:1;R:9;}s:50:"1230:organizationpreferences.previewchecklist.type";a:2:{i:0;R:27388;i:1;R:9;}s:75:"1230:organizationpreferences.previewchecklist.displayedwhenmovingintostatus";a:2:{i:0;R:27388;i:1;R:9;}s:51:"1230:organizationpreferences.previewchecklist.items";a:2:{i:0;R:27388;i:1;R:9;}s:52:"1230:organizationpreferences.previewchecklist.items1";a:2:{i:0;R:27388;i:1;R:9;}s:52:"1230:organizationpreferences.previewchecklist.items2";a:2:{i:0;R:27388;i:1;R:9;}s:59:"1230:manageproducts.previewproductmix.productmixinformation";a:2:{i:0;R:27388;i:1;R:9;}s:55:"1230:manageproducts.previewproductmix.addanewproductmix";a:2:{i:0;R:27388;i:1;R:9;}s:42:"1230:reviewtheinformationbelow.clicksubmit";a:2:{i:0;R:27388;i:1;R:9;}s:55:"1230:manageproducts.previewproductmix.productmixdetails";a:2:{i:0;R:27388;i:1;R:9;}s:49:"1230:manageproducts.previewproductmix.producttype";a:2:{i:0;R:27388;i:1;R:9;}s:57:"1230:manageproducts.previewproductmix.productinstancename";a:2:{i:0;R:27388;i:1;R:9;}s:53:"1230:manageproducts.previewproductmix.allowedproducts";a:2:{i:0;R:27388;i:1;R:9;}s:56:"1230:manageproducts.previewproductmix.standardclientloan";a:2:{i:0;R:27388;i:1;R:9;}s:59:"1230:manageproducts.previewproductmix.individualmedicalloan";a:2:{i:0;R:27388;i:1;R:9;}s:62:"1230:manageproducts.previewproductmix.householdimprovementloan";a:2:{i:0;R:27388;i:1;R:9;}s:56:"1230:manageproducts.previewproductmix.grouplivestockloan";a:2:{i:0;R:27388;i:1;R:9;}s:53:"1230:manageproducts.previewproductmix.educationalloan";a:2:{i:0;R:27388;i:1;R:9;}s:55:"1230:manageproducts.previewproductmix.standardgrouploan";a:2:{i:0;R:27388;i:1;R:9;}s:45:"1230:manageproducts.previewproductmix.housing";a:2:{i:0;R:27388;i:1;R:9;}s:44:"1230:manageproducts.previewproductmix.rental";a:2:{i:0;R:27388;i:1;R:9;}s:52:"1230:manageproducts.previewproductmix.individualloan";a:2:{i:0;R:27388;i:1;R:9;}s:56:"1230:manageproducts.previewproductmix.notallowedproducts";a:2:{i:0;R:27388;i:1;R:9;}s:61:"1230:manageloanproducts.previewloanproduct.addanewloanproduct";a:2:{i:0;R:27388;i:1;R:9;}s:65:"1230:manageloanproducts.previewloanproduct.loanproductinformation";a:2:{i:0;R:27388;i:1;R:9;}s:61:"1230:manageloanproducts.previewloanproduct.loanproductdetails";a:2:{i:0;R:27388;i:1;R:9;}s:62:"1230:manageloanproducts.previewloanproduct.productinstancename";a:2:{i:0;R:27388;i:1;R:9;}s:52:"1230:manageloanproducts.previewloanproduct.shortname";a:2:{i:0;R:27388;i:1;R:9;}s:54:"1230:manageloanproducts.previewloanproduct.description";a:2:{i:0;R:27388;i:1;R:9;}s:58:"1230:manageloanproducts.previewloanproduct.productcategory";a:2:{i:0;R:27388;i:1;R:9;}s:52:"1230:manageloanproducts.previewloanproduct.startdate";a:2:{i:0;R:27388;i:1;R:9;}s:50:"1230:manageloanproducts.previewloanproduct.enddate";a:2:{i:0;R:27388;i:1;R:9;}s:56:"1230:manageloanproducts.previewloanproduct.applicablefor";a:2:{i:0;R:27388;i:1;R:9;}s:68:"1230:manageloanproducts.previewloanproduct.includeinloancyclecounter";a:2:{i:0;R:27388;i:1;R:9;}s:64:"1230:manageloanproducts.previewloanproduct.calculateloanamountas";a:2:{i:0;R:27388;i:1;R:9;}s:56:"1230:manageloanproducts.previewloanproduct.minloanamount";a:2:{i:0;R:27388;i:1;R:9;}s:56:"1230:manageloanproducts.previewloanproduct.maxloanamount";a:2:{i:0;R:27388;i:1;R:9;}s:56:"1230:manageloanproducts.previewloanproduct.defaultamount";a:2:{i:0;R:27388;i:1;R:9;}s:55:"1230:manageloanproducts.previewloanproduct.interestrate";a:2:{i:0;R:27388;i:1;R:9;}s:59:"1230:manageloanproducts.previewloanproduct.interestratetype";a:2:{i:0;R:27388;i:1;R:9;}s:58:"1230:manageloanproducts.previewloanproduct.maxinterestrate";a:2:{i:0;R:27388;i:1;R:9;}s:58:"1230:manageloanproducts.previewloanproduct.mininterestrate";a:2:{i:0;R:27388;i:1;R:9;}s:62:"1230:manageloanproducts.previewloanproduct.defaultinterestrate";a:2:{i:0;R:27388;i:1;R:9;}s:60:"1230:manageloanproducts.previewloanproduct.repaymentschedule";a:2:{i:0;R:27388;i:1;R:9;}s:66:"1230:manageloanproducts.previewloanproduct.frequencyofinstallments";a:2:{i:0;R:27388;i:1;R:9;}s:68:"1230:manageloanproducts.previewloanproduct.calculateofinstallmentsas";a:2:{i:0;R:27388;i:1;R:9;}s:60:"1230:manageloanproducts.previewloanproduct.minofinstallments";a:2:{i:0;R:27388;i:1;R:9;}s:60:"1230:manageloanproducts.previewloanproduct.maxofinstallments";a:2:{i:0;R:27388;i:1;R:9;}s:64:"1230:manageloanproducts.previewloanproduct.defaultofinstallments";a:2:{i:0;R:27388;i:1;R:9;}s:58:"1230:manageloanproducts.previewloanproduct.graceperiodtype";a:2:{i:0;R:27388;i:1;R:9;}s:62:"1230:manageloanproducts.previewloanproduct.graceperiodduration";a:2:{i:0;R:27388;i:1;R:9;}s:47:"1230:manageloanproducts.previewloanproduct.fees";a:2:{i:0;R:27388;i:1;R:9;}s:52:"1230:manageloanproducts.previewloanproduct.feestypes";a:2:{i:0;R:27388;i:1;R:9;}s:53:"1230:manageloanproducts.previewloanproduct.accounting";a:2:{i:0;R:27388;i:1;R:9;}s:57:"1230:manageloanproducts.previewloanproduct.sourcesoffunds";a:2:{i:0;R:27388;i:1;R:9;}s:56:"1230:manageloanproducts.previewloanproduct.productglcode";a:2:{i:0;R:27388;i:1;R:9;}s:51:"1230:manageloanproducts.previewloanproduct.interest";a:2:{i:0;R:27388;i:1;R:9;}s:52:"1230:manageloanproducts.previewloanproduct.principal";a:2:{i:0;R:27388;i:1;R:9;}s:70:"1230:managesavngsproducts.previewsavingsproducts.addanewsavingsproduct";a:2:{i:0;R:27388;i:1;R:9;}s:74:"1230:managesavngsproducts.previewsavingsproducts.savingsproductinformation";a:2:{i:0;R:27388;i:1;R:9;}s:70:"1230:managesavngsproducts.previewsavingsproducts.savingsproductdetails";a:2:{i:0;R:27388;i:1;R:9;}s:63:"1230:managesavngsproducts.previewsavingsproducts.typeofdeposits";a:2:{i:0;R:27388;i:1;R:9;}s:74:"1230:managesavngsproducts.previewsavingsproducts.mandatoryamountfordeposit";a:2:{i:0;R:27388;i:1;R:9;}s:64:"1230:managesavngsproducts.previewsavingsproducts.amountappliesto";a:2:{i:0;R:27388;i:1;R:9;}s:71:"1230:managesavngsproducts.previewsavingsproducts.maxamountperwithdrawal";a:2:{i:0;R:27388;i:1;R:9;}s:82:"1230:managesavngsproducts.previewsavingsproducts.balanceusedforinterestcalculation";a:2:{i:0;R:27388;i:1;R:9;}s:81:"1230:managesavngsproducts.previewsavingsproducts.timeperiodforinterestcalculation";a:2:{i:0;R:27388;i:1;R:9;}s:85:"1230:managesavngsproducts.previewsavingsproducts.frequencyofinterestpostingtoaccounts";a:2:{i:0;R:27388;i:1;R:9;}s:93:"1230:managesavngsproducts.previewsavingsproducts.minimumbalancerequiredforinterestcalculation";a:2:{i:0;R:27388;i:1;R:9;}s:66:"1230:managesavngsproducts.previewsavingsproducts.glcodefordeposits";a:2:{i:0;R:27388;i:1;R:9;}s:66:"1230:managesavngsproducts.previewsavingsproducts.glcodeforinterest";a:2:{i:0;R:27388;i:1;R:9;}s:62:"1230:managesavngsproducts.previewsavingsproducts.viewchangelog";a:2:{i:0;R:27388;i:1;R:9;}s:68:"1230:managesavngsproducts.previewsavingsproducts.productinstancename";a:2:{i:0;R:27388;i:1;R:9;}s:58:"1230:managesavngsproducts.previewsavingsproducts.shortname";a:2:{i:0;R:27388;i:1;R:9;}s:60:"1230:managesavngsproducts.previewsavingsproducts.description";a:2:{i:0;R:27388;i:1;R:9;}s:64:"1230:managesavngsproducts.previewsavingsproducts.productcategory";a:2:{i:0;R:27388;i:1;R:9;}s:58:"1230:managesavngsproducts.previewsavingsproducts.startdate";a:2:{i:0;R:27388;i:1;R:9;}s:56:"1230:managesavngsproducts.previewsavingsproducts.enddate";a:2:{i:0;R:27388;i:1;R:9;}s:62:"1230:managesavngsproducts.previewsavingsproducts.applicablefor";a:2:{i:0;R:27388;i:1;R:9;}s:61:"1230:managesavngsproducts.previewsavingsproducts.interestrate";a:2:{i:0;R:27388;i:1;R:9;}s:59:"1230:managesavngsproducts.previewsavingsproducts.accounting";a:2:{i:0;R:27388;i:1;R:9;}s:90:"1230:managesavngsproducts.previewsavingsproducts.targeteddepositsandwithdrawalrestrictions";a:2:{i:0;R:27388;i:1;R:9;}s:20:"1230:admin.uploadppi";a:2:{i:0;R:27388;i:1;R:9;}s:60:"1230:managereports.viewadmindocs.viewadministrativedocuments";a:2:{i:0;R:27388;i:1;R:9;}s:100:"1230:managereports.viewadmindocs.belowisalistofadmindocs.toeditclickonedit.todownloadclickondownload";a:2:{i:0;R:27388;i:1;R:9;}s:51:"1230:managereports.viewadmindocs.uploadanewadmindoc";a:2:{i:0;R:27388;i:1;R:9;}s:55:"1230:managereports.viewadmindocs.downloadadmindocuments";a:2:{i:0;R:27388;i:1;R:9;}s:50:"1230:managereports.defineadmindocs.uploadadmindocs";a:2:{i:0;R:27388;i:1;R:9;}s:54:"1230:managereports.defineadmindocs.documentinformation";a:2:{i:0;R:27388;i:1;R:9;}s:55:"1230:managereports.defineadmindocs.admindocumentdetails";a:2:{i:0;R:27388;i:1;R:9;}s:62:"1230:managereports.defineadmindocs.administrativedocumenttitle";a:2:{i:0;R:27388;i:1;R:9;}s:46:"1230:managereports.defineadmindocs.accounttype";a:2:{i:0;R:27388;i:1;R:9;}s:46:"1230:managereports.defineadmindocs.loanaccount";a:2:{i:0;R:27388;i:1;R:9;}s:49:"1230:managereports.defineadmindocs.savingsaccount";a:2:{i:0;R:27388;i:1;R:9;}s:49:"1230:managereports.defineadmindocs.showwhenstatus";a:2:{i:0;R:27388;i:1;R:9;}s:63:"1230:managereports.defineadmindocs.selectadministrativedocument";a:2:{i:0;R:27388;i:1;R:9;}s:58:"1230:managereports.defineadmindocs.options.pendingapproval";a:2:{i:0;R:27388;i:1;R:9;}s:54:"1230:managereports.defineadmindocs.options.appapproved";a:2:{i:0;R:27388;i:1;R:9;}s:61:"1230:managereports.defineadmindocs.options.activegoodstanding";a:2:{i:0;R:27388;i:1;R:9;}s:60:"1230:managereports.defineadmindocs.options.activebadstanding";a:2:{i:0;R:27388;i:1;R:9;}s:62:"1230:managereports.defineadmindocs.options.closedobligationmet";a:2:{i:0;R:27388;i:1;R:9;}s:59:"1230:managereports.defineadmindocs.options.closedwrittenoff";a:2:{i:0;R:27388;i:1;R:9;}s:60:"1230:managereports.defineadmindocs.options.closedrescheduled";a:2:{i:0;R:27388;i:1;R:9;}s:62:"1230:managereports.defineadmindocs.options.custmraccountactive";a:2:{i:0;R:27388;i:1;R:9;}s:64:"1230:managereports.defineadmindocs.options.custmraccountinactive";a:2:{i:0;R:27388;i:1;R:9;}s:49:"1230:managereports.defineadmindocs.options.active";a:2:{i:0;R:27388;i:1;R:9;}s:49:"1230:managereports.defineadmindocs.options.closed";a:2:{i:0;R:27388;i:1;R:9;}s:51:"1230:managereports.defineadmindocs.options.inactive";a:2:{i:0;R:27388;i:1;R:9;}s:66:"1230:managereports.defineadmindocs.preview.editadmindocinformation";a:2:{i:0;R:27388;i:1;R:9;}s:55:"1230:clickonedit/deletetomakechangestoareportcategoryor";a:2:{i:0;R:27388;i:1;R:9;}s:26:"1230:addanewreportcategory";a:2:{i:0;R:27388;i:1;R:9;}s:25:"1230:reports.categoryname";a:2:{i:0;R:27388;i:1;R:9;}s:43:"1230:editreportcategory.categoryinformation";a:2:{i:0;R:27388;i:1;R:9;}s:48:"1230:editreportcategory.entercategoryinformation";a:2:{i:0;R:27388;i:1;R:9;}s:42:"1230:editreportcategory.informationmessage";a:2:{i:0;R:27388;i:1;R:9;}s:39:"1230:editreportcategory.categorydetails";a:2:{i:0;R:27388;i:1;R:9;}s:36:"1230:editreportcategory.categoryname";a:2:{i:0;R:27388;i:1;R:9;}s:47:"1230:editreportcategory.editcategoryinformation";a:2:{i:0;R:27388;i:1;R:9;}s:23:"1230:recordcreationdate";a:2:{i:0;R:27388;i:1;R:9;}s:9:"1230:date";a:2:{i:0;R:27388;i:1;R:9;}s:10:"1230:field";a:2:{i:0;R:27388;i:1;R:9;}s:13:"1230:oldvalue";a:2:{i:0;R:27388;i:1;R:9;}s:13:"1230:newvalue";a:2:{i:0;R:27388;i:1;R:9;}s:22:"1230:backtodetailspage";a:2:{i:0;R:27388;i:1;R:9;}s:14:"1230:changelog";a:2:{i:0;R:27388;i:1;R:9;}s:25:"1230:viewsystemusers.next";a:2:{i:0;R:27388;i:1;R:9;}s:29:"1230:viewsystemusers.previous";a:2:{i:0;R:27388;i:1;R:9;}s:12:"1230:results";a:2:{i:0;R:27388;i:1;R:9;}s:19:"1230:datetimeupdate";a:2:{i:0;R:27388;i:1;R:9;}s:19:"1230:updatingtotime";a:2:{i:0;R:27388;i:1;R:9;}s:27:"1230:custompropertiesupdate";a:2:{i:0;R:27388;i:1;R:9;}s:19:"1230:updatinglocale";a:2:{i:0;R:27388;i:1;R:9;}s:28:"1230:updatingaccountingrules";a:2:{i:0;R:27388;i:1;R:9;}s:19:"1230:updatingimport";a:2:{i:0;R:27388;i:1;R:9;}s:32:"1230:updatingfiscalcalendarrules";a:2:{i:0;R:27388;i:1;R:9;}s:24:"1230:updatingclientrules";a:2:{i:0;R:27388;i:1;R:9;}s:24:"1230:updatingprocessflow";a:2:{i:0;R:27388;i:1;R:9;}s:11:"1230:errors";a:2:{i:0;R:27388;i:1;R:9;}s:45:"1230:customizetextadd.addmessage.originaltext";a:2:{i:0;R:27388;i:1;R:9;}s:43:"1230:customizetextadd.addmessage.customtext";a:2:{i:0;R:27388;i:1;R:9;}s:27:"1230:customizetextadd.title";a:2:{i:0;R:27388;i:1;R:9;}s:34:"1230:customizetextadd.instructions";a:2:{i:0;R:27388;i:1;R:9;}s:33:"1230:customizetextaddedit.example";a:2:{i:0;R:27388;i:1;R:9;}s:28:"1230:customizetextedit.title";a:2:{i:0;R:27388;i:1;R:9;}s:35:"1230:customizetextedit.instructions";a:2:{i:0;R:27388;i:1;R:9;}s:41:"1230:customizetextview.customizedtextlist";a:2:{i:0;R:27388;i:1;R:9;}s:35:"1230:customizetextview.instructions";a:2:{i:0;R:27388;i:1;R:9;}s:50:"1230:notempty.customizedtextselectformbean.message";a:2:{i:0;R:27388;i:1;R:9;}s:49:"1230:notempty.customizedtextformbean.originaltext";a:2:{i:0;R:27388;i:1;R:9;}s:47:"1230:notempty.customizedtextformbean.customtext";a:2:{i:0;R:27388;i:1;R:9;}s:45:"1230:size.customizedtextformbean.originaltext";a:2:{i:0;R:27388;i:1;R:9;}s:43:"1230:size.customizedtextformbean.customtext";a:2:{i:0;R:27388;i:1;R:9;}s:37:"1230:overpayments.clear.invalid.value";a:2:{i:0;R:27388;i:1;R:9;}s:24:"1230:penalty.editpenalty";a:2:{i:0;R:27388;i:1;R:9;}s:26:"1230:penalty.viewpenalties";a:2:{i:0;R:27388;i:1;R:9;}s:24:"1230:cs-customersearch.a";a:2:{i:0;s:12:"out-mifos-cs";i:1;R:9;}s:30:"1230:cs-customersearch.account";a:2:{i:0;R:28959;i:1;R:9;}s:26:"1230:cs-customersearch.all";a:2:{i:0;R:28959;i:1;R:9;}s:34:"1230:cs-customersearch.allbranches";a:2:{i:0;R:28959;i:1;R:9;}s:32:"1230:cs-customersearch.available";a:2:{i:0;R:28959;i:1;R:9;}s:29:"1230:cs-customersearch.branch";a:2:{i:0;R:28959;i:1;R:9;}s:27:"1230:cs-customersearch.edit";a:2:{i:0;R:28959;i:1;R:9;}s:28:"1230:cs-customersearch.enter";a:2:{i:0;R:28959;i:1;R:9;}s:30:"1230:cs-customersearch.lastlog";a:2:{i:0;R:28959;i:1;R:9;}s:32:"1230:cs-customersearch.linksleft";a:2:{i:0;R:28959;i:1;R:9;}s:34:"1230:cs-customersearch.loanofficer";a:2:{i:0;R:28959;i:1;R:9;}s:35:"1230:cs-customersearch.loanofficers";a:2:{i:0;R:28959;i:1;R:9;}s:31:"1230:cs-customersearch.navigate";a:2:{i:0;R:28959;i:1;R:9;}s:25:"1230:cs-customersearch.no";a:2:{i:0;R:28959;i:1;R:9;}s:46:"1230:cs-customersearch.noentityavailableprefix";a:2:{i:0;R:28959;i:1;R:9;}s:46:"1230:cs-customersearch.noentityavailablesuffix";a:2:{i:0;R:28959;i:1;R:9;}s:25:"1230:cs-customersearch.or";a:2:{i:0;R:28959;i:1;R:9;}s:34:"1230:cs-customersearch.quicklyfind";a:2:{i:0;R:28959;i:1;R:9;}s:45:"1230:cs-customersearch.revieweditinstruction1";a:2:{i:0;R:28959;i:1;R:9;}s:45:"1230:cs-customersearch.revieweditinstruction2";a:2:{i:0;R:28959;i:1;R:9;}s:24:"1230:cs-customersearch.s";a:2:{i:0;R:28959;i:1;R:9;}s:29:"1230:cs-customersearch.search";a:2:{i:0;R:28959;i:1;R:9;}s:32:"1230:cs-customersearch.searchfor";a:2:{i:0;R:28959;i:1;R:9;}s:34:"1230:cs-customersearch.searchbelow";a:2:{i:0;R:28959;i:1;R:9;}s:38:"1230:cs-customersearch.searchontheleft";a:2:{i:0;R:28959;i:1;R:9;}s:31:"1230:cs-customersearch.searchby";a:2:{i:0;R:28959;i:1;R:9;}s:41:"1230:cs-customersearch.searchinstruction1";a:2:{i:0;R:28959;i:1;R:9;}s:38:"1230:cs-customersearch.searchnamesysid";a:2:{i:0;R:28959;i:1;R:9;}s:35:"1230:cs-customersearch.searchstring";a:2:{i:0;R:28959;i:1;R:9;}s:29:"1230:cs-customersearch.select";a:2:{i:0;R:28959;i:1;R:9;}s:40:"1230:cs-customersearch.selectloanofficer";a:2:{i:0;R:28959;i:1;R:9;}s:32:"1230:cs-customersearch.tabsattop";a:2:{i:0;R:28959;i:1;R:9;}s:31:"1230:cs-customersearch.toreview";a:2:{i:0;R:28959;i:1;R:9;}s:31:"1230:cs-customersearch.tosearch";a:2:{i:0;R:28959;i:1;R:9;}s:30:"1230:cs-customersearch.welcome";a:2:{i:0;R:28959;i:1;R:9;}s:29:"1230:cs-customersearch.youcan";a:2:{i:0;R:28959;i:1;R:9;}s:39:"1230:cs-customersearch.upcomingmeetings";a:2:{i:0;R:28959;i:1;R:9;}s:34:"1230:cs-error.activity.not.allowed";a:2:{i:0;R:28959;i:1;R:9;}s:21:"1230:cs-errors.footer";a:2:{i:0;R:28959;i:1;R:9;}s:21:"1230:cs-errors.header";a:2:{i:0;R:28959;i:1;R:9;}s:26:"1230:cs-errors.idmandatory";a:2:{i:0;R:28959;i:1;R:9;}s:28:"1230:cs-errors.namemandatory";a:2:{i:0;R:28959;i:1;R:9;}s:29:"1230:cs-errors.nosearchstring";a:2:{i:0;R:28959;i:1;R:9;}s:21:"1230:cs-errors.prefix";a:2:{i:0;R:28959;i:1;R:9;}s:21:"1230:cs-errors.suffix";a:2:{i:0;R:28959;i:1;R:9;}s:25:"1230:cse-bulkentry.branch";a:2:{i:0;s:13:"out-mifos-cse";i:1;R:9;}s:25:"1230:cse-bulkentry.center";a:2:{i:0;R:29005;i:1;R:9;}s:31:"1230:cse-bulkentry.accollection";a:2:{i:0;R:29005;i:1;R:9;}s:37:"1230:cse-bulkentry.accountgroupcenter";a:2:{i:0;R:29005;i:1;R:9;}s:29:"1230:cse-bulkentry.attendance";a:2:{i:0;R:29005;i:1;R:9;}s:23:"1230:cse-bulkentry.attn";a:2:{i:0;R:29005;i:1;R:9;}s:28:"1230:cse-bulkentry.bulkentry";a:2:{i:0;R:29005;i:1;R:9;}s:25:"1230:cse-bulkentry.cancel";a:2:{i:0;R:29005;i:1;R:9;}s:28:"1230:cse-bulkentry.clickcanc";a:2:{i:0;R:29005;i:1;R:9;}s:29:"1230:cse-bulkentry.clientname";a:2:{i:0;R:29005;i:1;R:9;}s:23:"1230:cse-bulkentry.cont";a:2:{i:0;R:29005;i:1;R:9;}s:26:"1230:cse-bulkentry.datafor";a:2:{i:0;R:29005;i:1;R:9;}s:29:"1230:cse-bulkentry.dateoftrxn";a:2:{i:0;R:29005;i:1;R:9;}s:33:"1230:cse-bulkentry.duecollections";a:2:{i:0;R:29005;i:1;R:9;}s:34:"1230:cse-bulkentry.duecollections2";a:2:{i:0;R:29005;i:1;R:9;}s:26:"1230:cse-bulkentry.duecoll";a:2:{i:0;R:29005;i:1;R:9;}s:27:"1230:cse-bulkentry.editdata";a:2:{i:0;R:29005;i:1;R:9;}s:32:"1230:cse-bulkentry.entdataclipre";a:2:{i:0;R:29005;i:1;R:9;}s:37:"1230:cse-bulkentry.entercollsheetdata";a:2:{i:0;R:29005;i:1;R:9;}s:28:"1230:cse-bulkentry.enterdata";a:2:{i:0;R:29005;i:1;R:9;}s:28:"1230:cse-bulkentry.entersucc";a:2:{i:0;R:29005;i:1;R:9;}s:27:"1230:cse-bulkentry.hasenter";a:2:{i:0;R:29005;i:1;R:9;}s:36:"1230:cse-bulkentry.issueswithdrawals";a:2:{i:0;R:29005;i:1;R:9;}s:26:"1230:cse-bulkentry.isswith";a:2:{i:0;R:29005;i:1;R:9;}s:36:"1230:cse-bulkentry.loandisbursements";a:2:{i:0;R:29005;i:1;R:9;}s:33:"1230:cse-bulkentry.loanrepayments";a:2:{i:0;R:29005;i:1;R:9;}s:30:"1230:cse-bulkentry.loanofficer";a:2:{i:0;R:29005;i:1;R:9;}s:28:"1230:cse-bulkentry.mandatory";a:2:{i:0;R:29005;i:1;R:9;}s:30:"1230:cse-bulkentry.meetingdate";a:2:{i:0;R:29005;i:1;R:9;}s:26:"1230:cse-bulkentry.netcash";a:2:{i:0;R:29005;i:1;R:9;}s:35:"1230:cse-bulkentry.othercollections";a:2:{i:0;R:29005;i:1;R:9;}s:26:"1230:cse-bulkentry.plsnote";a:2:{i:0;R:29005;i:1;R:9;}s:27:"1230:cse-bulkentry.pmnttype";a:2:{i:0;R:29005;i:1;R:9;}s:33:"1230:cse-bulkentry.prevdataclisub";a:2:{i:0;R:29005;i:1;R:9;}s:26:"1230:cse-bulkentry.preview";a:2:{i:0;R:29005;i:1;R:9;}s:27:"1230:cse-bulkentry.rcptdate";a:2:{i:0;R:29005;i:1;R:9;}s:25:"1230:cse-bulkentry.rcptid";a:2:{i:0;R:29005;i:1;R:9;}s:26:"1230:cse-bulkentry.revnsub";a:2:{i:0;R:29005;i:1;R:9;}s:33:"1230:cse-bulkentry.savingsdeposit";a:2:{i:0;R:29005;i:1;R:9;}s:36:"1230:cse-bulkentry.savingswithdrawal";a:2:{i:0;R:29005;i:1;R:9;}s:25:"1230:cse-bulkentry.select";a:2:{i:0;R:29005;i:1;R:9;}s:39:"1230:cse-bulkentry.selectofficefromlist";a:2:{i:0;R:29005;i:1;R:9;}s:25:"1230:cse-bulkentry.submit";a:2:{i:0;R:29005;i:1;R:9;}s:24:"1230:cse-bulkentry.total";a:2:{i:0;R:29005;i:1;R:9;}s:35:"1230:cse-bulkentry.totalcollections";a:2:{i:0;R:29005;i:1;R:9;}s:35:"1230:cse-bulkentry.totalgroupcenter";a:2:{i:0;R:29005;i:1;R:9;}s:41:"1230:cse-bulkentry.totalissueswithdrawals";a:2:{i:0;R:29005;i:1;R:9;}s:27:"1230:cse-bulkentry.trxndate";a:2:{i:0;R:29005;i:1;R:9;}s:30:"1230:cse-bulkentry.withdrawals";a:2:{i:0;R:29005;i:1;R:9;}s:30:"1230:cse-errors.invalidtxndate";a:2:{i:0;R:29005;i:1;R:9;}s:48:"1230:cse-errors.invalidtxndatemonthalreadyclosed";a:2:{i:0;R:29005;i:1;R:9;}s:35:"1230:cse-error.activity.not.allowed";a:2:{i:0;R:29005;i:1;R:9;}s:34:"1230:cse-errors.invalidreceiptdate";a:2:{i:0;R:29005;i:1;R:9;}s:29:"1230:cse-errors.invalidamount";a:2:{i:0;R:29005;i:1;R:9;}s:35:"1230:cse-errors.invalidprepayamount";a:2:{i:0;R:29005;i:1;R:9;}s:36:"1230:cse-errors.invalidaccollections";a:2:{i:0;R:29005;i:1;R:9;}s:34:"1230:cse-errors.invalidamountvalue";a:2:{i:0;R:29005;i:1;R:9;}s:27:"1230:cse-errors.invaliddate";a:2:{i:0;R:29005;i:1;R:9;}s:30:"1230:cse-errors.mandatoryenter";a:2:{i:0;R:29005;i:1;R:9;}s:31:"1230:cse-errors.mandatoryselect";a:2:{i:0;R:29005;i:1;R:9;}s:27:"1230:cse-errors.meetingdate";a:2:{i:0;R:29005;i:1;R:9;}s:22:"1230:cse-errors.update";a:2:{i:0;R:29005;i:1;R:9;}s:24:"1230:cse-errors.database";a:2:{i:0;R:29005;i:1;R:9;}s:49:"1230:cse-exception.framework.pageexpiredexception";a:2:{i:0;R:29005;i:1;R:9;}s:15:"1230:cui-amount";a:2:{i:0;R:13;i:1;R:9;}s:38:"1230:cui-customer.accountstatementasof";a:2:{i:0;R:13;i:1;R:9;}s:39:"1230:cui-customer.activeaccountspresent";a:2:{i:0;R:13;i:1;R:9;}s:28:"1230:cui-customer.addnewnote";a:2:{i:0;R:13;i:1;R:9;}s:24:"1230:cui-customer.amount";a:2:{i:0;R:13;i:1;R:9;}s:44:"1230:cui-customer.centerstatechangeexception";a:2:{i:0;R:13;i:1;R:9;}s:30:"1230:cui-customer.checklistmsg";a:2:{i:0;R:13;i:1;R:9;}s:30:"1230:cui-customer.clickcancel1";a:2:{i:0;R:13;i:1;R:9;}s:30:"1230:cui-customer.clickcancel2";a:2:{i:0;R:13;i:1;R:9;}s:31:"1230:cui-customer.clickcontinue";a:2:{i:0;R:13;i:1;R:9;}s:30:"1230:cui-customer.clickpreview";a:2:{i:0;R:13;i:1;R:9;}s:29:"1230:cui-customer.clicksubmit";a:2:{i:0;R:13;i:1;R:9;}s:37:"1230:cui-customer.confirmstatuschange";a:2:{i:0;R:13;i:1;R:9;}s:29:"1230:cui-customer.dateofbirth";a:2:{i:0;R:13;i:1;R:9;}s:22:"1230:cui-customer.edit";a:2:{i:0;R:13;i:1;R:9;}s:27:"1230:cui-customer.editlabel";a:2:{i:0;R:13;i:1;R:9;}s:28:"1230:cui-customer.editstatus";a:2:{i:0;R:13;i:1;R:9;}s:28:"1230:cui-customer.enteranote";a:2:{i:0;R:13;i:1;R:9;}s:27:"1230:cui-customer.firstname";a:2:{i:0;R:13;i:1;R:9;}s:24:"1230:cui-customer.gender";a:2:{i:0;R:13;i:1;R:9;}s:38:"1230:cui-customer.history.interestpaid";a:2:{i:0;R:13;i:1;R:9;}s:37:"1230:cui-customer.incompletechecklist";a:2:{i:0;R:13;i:1;R:9;}s:26:"1230:cui-customer.lastname";a:2:{i:0;R:13;i:1;R:9;}s:37:"1230:cui-customer.loanofficerinactive";a:2:{i:0;R:13;i:1;R:9;}s:27:"1230:cui-customer.newstatus";a:2:{i:0;R:13;i:1;R:9;}s:29:"1230:cui-customer.nochecklist";a:2:{i:0;R:13;i:1;R:9;}s:34:"1230:cui-customer.noflagsavailable";a:2:{i:0;R:13;i:1;R:9;}s:27:"1230:cui-customer.notelabel";a:2:{i:0;R:13;i:1;R:9;}s:27:"1230:cui-customer.oldstatus";a:2:{i:0;R:13;i:1;R:9;}s:29:"1230:cui-customer.previewnote";a:2:{i:0;R:13;i:1;R:9;}s:28:"1230:cui-customer.reviewtext";a:2:{i:0;R:13;i:1;R:9;}s:28:"1230:cui-customer.salutation";a:2:{i:0;R:13;i:1;R:9;}s:37:"1230:cui-customer.selectexplaination1";a:2:{i:0;R:13;i:1;R:9;}s:37:"1230:cui-customer.selectexplaination2";a:2:{i:0;R:13;i:1;R:9;}s:30:"1230:cui-customer.selectstatus";a:2:{i:0;R:13;i:1;R:9;}s:33:"1230:cui-customer.spousefirstname";a:2:{i:0;R:13;i:1;R:9;}s:32:"1230:cui-customer.spouselastname";a:2:{i:0;R:13;i:1;R:9;}s:28:"1230:cui-customer.spousetype";a:2:{i:0;R:13;i:1;R:9;}s:38:"1230:cui-customer.statechangeexception";a:2:{i:0;R:13;i:1;R:9;}s:37:"1230:cui-customer.statusnotesrequired";a:2:{i:0;R:13;i:1;R:9;}s:37:"1230:cui-customer.additionalfeeamount";a:2:{i:0;R:13;i:1;R:9;}s:32:"1230:cui-customer.addnoteheading";a:2:{i:0;R:13;i:1;R:9;}s:35:"1230:cui-customer.adjustment_detail";a:2:{i:0;R:13;i:1;R:9;}s:32:"1230:cui-customer.adminfeeamount";a:2:{i:0;R:13;i:1;R:9;}s:29:"1230:cui-customer.allbranches";a:2:{i:0;R:13;i:1;R:9;}s:36:"1230:cui-customer.amnt_tobe_adjusted";a:2:{i:0;R:13;i:1;R:9;}s:31:"1230:cui-customer.apply_charges";a:2:{i:0;R:13;i:1;R:9;}s:33:"1230:cui-customer.applyadjustment";a:2:{i:0;R:13;i:1;R:9;}s:38:"1230:cui-customer.btn_reviewadjustment";a:2:{i:0;R:13;i:1;R:9;}s:24:"1230:cui-customer.cancel";a:2:{i:0;R:13;i:1;R:9;}s:30:"1230:cui-customer.changestatus";a:2:{i:0;R:13;i:1;R:9;}s:38:"1230:cui-customer.chk_revert_last_pmnt";a:2:{i:0;R:13;i:1;R:9;}s:31:"1230:cui-customer.currentstatus";a:2:{i:0;R:13;i:1;R:9;}s:22:"1230:cui-customer.flag";a:2:{i:0;R:13;i:1;R:9;}s:21:"1230:cui-customer.for";a:2:{i:0;R:13;i:1;R:9;}s:20:"1230:cui-customer.in";a:2:{i:0;R:13;i:1;R:9;}s:27:"1230:cui-customer.last_pmnt";a:2:{i:0;R:13;i:1;R:9;}s:25:"1230:cui-customer.miscfee";a:2:{i:0;R:13;i:1;R:9;}s:29:"1230:cui-customer.miscpenalty";a:2:{i:0;R:13;i:1;R:9;}s:35:"1230:cui-customer.noresultsfoundfor";a:2:{i:0;R:13;i:1;R:9;}s:22:"1230:cui-customer.note";a:2:{i:0;R:13;i:1;R:9;}s:25:"1230:cui-customer.preview";a:2:{i:0;R:13;i:1;R:9;}s:28:"1230:cui-customer.resultsfor";a:2:{i:0;R:13;i:1;R:9;}s:34:"1230:cui-customer.reviewadjustment";a:2:{i:0;R:13;i:1;R:9;}s:41:"1230:cui-customer.reviewadjustment_detail";a:2:{i:0;R:13;i:1;R:9;}s:24:"1230:cui-customer.status";a:2:{i:0;R:13;i:1;R:9;}s:13:"1230:cui-date";a:2:{i:0;R:13;i:1;R:9;}s:20:"1230:cui-description";a:2:{i:0;R:13;i:1;R:9;}s:29:"1230:cui-groupstatusexception";a:2:{i:0;R:13;i:1;R:9;}s:40:"1230:cui-loanofficernotassignedexception";a:2:{i:0;R:13;i:1;R:9;}s:17:"1230:cui-postedby";a:2:{i:0;R:13;i:1;R:9;}s:32:"1230:cui-statusrequiredexception";a:2:{i:0;R:13;i:1;R:9;}s:22:"1230:cui-button.cancel";a:2:{i:0;R:13;i:1;R:9;}s:23:"1230:cui-button.preview";a:2:{i:0;R:13;i:1;R:9;}s:22:"1230:cui-button.submit";a:2:{i:0;R:13;i:1;R:9;}s:35:"1230:cui-error.activity.not.allowed";a:2:{i:0;R:13;i:1;R:9;}s:31:"1230:cui-error.customernotfound";a:2:{i:0;R:13;i:1;R:9;}s:34:"1230:cui-error.incompletechecklist";a:2:{i:0;R:13;i:1;R:9;}s:37:"1230:cui-error.statuschangenotallowed";a:2:{i:0;R:13;i:1;R:9;}s:31:"1230:cui-error.unknownexception";a:2:{i:0;R:13;i:1;R:9;}s:34:"1230:cui-error.versionnodonotmatch";a:2:{i:0;R:13;i:1;R:9;}s:37:"1230:cui-errors.client.groupcancelled";a:2:{i:0;R:13;i:1;R:9;}s:36:"1230:cui-errors.adjustmentnotetoobig";a:2:{i:0;R:13;i:1;R:9;}s:30:"1230:cui-errors.centerinactive";a:2:{i:0;R:13;i:1;R:9;}s:29:"1230:cui-errors.decimalformat";a:2:{i:0;R:13;i:1;R:9;}s:19:"1230:cui-errors.fee";a:2:{i:0;R:13;i:1;R:9;}s:23:"1230:cui-errors.generic";a:2:{i:0;R:13;i:1;R:9;}s:43:"1230:cui-errors.grouploanofficernotassigned";a:2:{i:0;R:13;i:1;R:9;}s:29:"1230:cui-errors.invalidnumber";a:2:{i:0;R:13;i:1;R:9;}s:25:"1230:cui-errors.mandatory";a:2:{i:0;R:13;i:1;R:9;}s:33:"1230:cui-errors.mandatory_textbox";a:2:{i:0;R:13;i:1;R:9;}s:33:"1230:cui-errors.mandatorycheckbox";a:2:{i:0;R:13;i:1;R:9;}s:31:"1230:cui-errors.mandatoryselect";a:2:{i:0;R:13;i:1;R:9;}s:33:"1230:cui-errors.mandatorytextarea";a:2:{i:0;R:13;i:1;R:9;}s:25:"1230:cui-errors.maxlength";a:2:{i:0;R:13;i:1;R:9;}s:34:"1230:cui-errors.meetingnotassigned";a:2:{i:0;R:13;i:1;R:9;}s:33:"1230:cui-errors.mustnotbenegative";a:2:{i:0;R:13;i:1;R:9;}s:22:"1230:cui-errors.prefix";a:2:{i:0;R:13;i:1;R:9;}s:22:"1230:cui-errors.suffix";a:2:{i:0;R:13;i:1;R:9;}s:61:"1230:cui-exception.accounts.applicationexception.cannotadjust";a:2:{i:0;R:13;i:1;R:9;}s:75:"1230:cui-exception.accounts.applicationexception.findbyglobalaccntexception";a:2:{i:0;R:13;i:1;R:9;}s:67:"1230:cui-exception.accounts.applicationexception.zeroamntadjustmnet";a:2:{i:0;R:13;i:1;R:9;}s:50:"1230:cui-exception.framework.doublesubmitexception";a:2:{i:0;R:13;i:1;R:9;}s:29:"1230:cui-label.mfijoiningdate";a:2:{i:0;R:13;i:1;R:9;}s:31:"1230:cui-label.msgonaddnotepage";a:2:{i:0;R:13;i:1;R:9;}s:26:"1230:cui-label.add_edit_hd";a:2:{i:0;R:13;i:1;R:9;}s:23:"1230:cui-label.addanote";a:2:{i:0;R:13;i:1;R:9;}s:22:"1230:cui-label.addnote";a:2:{i:0;R:13;i:1;R:9;}s:23:"1230:cui-label.amountof";a:2:{i:0;R:13;i:1;R:9;}s:27:"1230:cui-label.amountofloan";a:2:{i:0;R:13;i:1;R:9;}s:32:"1230:cui-label.amountofloanlabel";a:2:{i:0;R:13;i:1;R:9;}s:31:"1230:cui-label.backtodetailpage";a:2:{i:0;R:13;i:1;R:9;}s:32:"1230:cui-label.backtodetailspage";a:2:{i:0;R:13;i:1;R:9;}s:20:"1230:cui-label.colon";a:2:{i:0;R:13;i:1;R:9;}s:33:"1230:cui-label.edithistoricaldata";a:2:{i:0;R:13;i:1;R:9;}s:29:"1230:cui-label.historicaldata";a:2:{i:0;R:13;i:1;R:9;}s:27:"1230:cui-label.interestpaid";a:2:{i:0;R:13;i:1;R:9;}s:32:"1230:cui-label.interestpaidlabel";a:2:{i:0;R:13;i:1;R:9;}s:31:"1230:cui-label.loancyclecounter";a:2:{i:0;R:13;i:1;R:9;}s:30:"1230:cui-label.loancyclenumber";a:2:{i:0;R:13;i:1;R:9;}s:19:"1230:cui-label.note";a:2:{i:0;R:13;i:1;R:9;}s:22:"1230:cui-label.notemsg";a:2:{i:0;R:13;i:1;R:9;}s:23:"1230:cui-label.notemsg1";a:2:{i:0;R:13;i:1;R:9;}s:23:"1230:cui-label.notemsg2";a:2:{i:0;R:13;i:1;R:9;}s:23:"1230:cui-label.notemsg3";a:2:{i:0;R:13;i:1;R:9;}s:23:"1230:cui-label.notemsg4";a:2:{i:0;R:13;i:1;R:9;}s:20:"1230:cui-label.notes";a:2:{i:0;R:13;i:1;R:9;}s:37:"1230:cui-label.numberofmissedpayments";a:2:{i:0;R:13;i:1;R:9;}s:36:"1230:cui-label.previewhistoricaldata";a:2:{i:0;R:13;i:1;R:9;}s:26:"1230:cui-label.previewnote";a:2:{i:0;R:13;i:1;R:9;}s:26:"1230:cui-label.productname";a:2:{i:0;R:13;i:1;R:9;}s:31:"1230:cui-label.productnamelabel";a:2:{i:0;R:13;i:1;R:9;}s:30:"1230:cui-label.totalamountpaid";a:2:{i:0;R:13;i:1;R:9;}s:35:"1230:cui-label.totalamountpaidlabel";a:2:{i:0;R:13;i:1;R:9;}s:36:"1230:cui-label.totalnumberofpayments";a:2:{i:0;R:13;i:1;R:9;}s:62:"1230:exception-exception.framework.constantsnotloadedexception";a:2:{i:0;s:19:"out-mifos-exception";i:1;R:9;}s:81:"1230:exception-exception.framework.systemexception.valueobjectconversionexception";a:2:{i:0;R:29205;i:1;R:9;}s:74:"1230:exception-exception.validation.ppi.missinglikelihoodchartrowexception";a:2:{i:0;R:29205;i:1;R:9;}s:73:"1230:exception-exception.validation.ppi.ppilikelihoodargsinvalidexception";a:2:{i:0;R:29205;i:1;R:9;}s:81:"1230:exception-exception.validation.ppi.wrongnumberoflikelihoodchartrowsexception";a:2:{i:0;R:29205;i:1;R:9;}s:42:"1230:fees-fees.createfeescancelinstruction";a:2:{i:0;s:14:"out-mifos-fees";i:1;R:9;}s:41:"1230:fees-fees.createfeesfieldinstruction";a:2:{i:0;R:29211;i:1;R:9;}s:36:"1230:fees-fees.createfeesinstruction";a:2:{i:0;R:29211;i:1;R:9;}s:27:"1230:fees-fees.defaultfeeno";a:2:{i:0;R:29211;i:1;R:9;}s:28:"1230:fees-fees.defaultfeeyes";a:2:{i:0;R:29211;i:1;R:9;}s:21:"1230:fees-fees.glcode";a:2:{i:0;R:29211;i:1;R:9;}s:37:"1230:fees-fees.previewfeesinstruction";a:2:{i:0;R:29211;i:1;R:9;}s:34:"1230:fees-fees.viewfeesinstruction";a:2:{i:0;R:29211;i:1;R:9;}s:27:"1230:fees-fees.account.1001";a:2:{i:0;R:29211;i:1;R:9;}s:27:"1230:fees-fees.account.1002";a:2:{i:0;R:29211;i:1;R:9;}s:27:"1230:fees-fees.account.1003";a:2:{i:0;R:29211;i:1;R:9;}s:29:"1230:fees-fees.account.select";a:2:{i:0;R:29211;i:1;R:9;}s:29:"1230:fees-fees.accountdisplay";a:2:{i:0;R:29211;i:1;R:9;}s:25:"1230:fees-fees.accounting";a:2:{i:0;R:29211;i:1;R:9;}s:20:"1230:fees-fees.admin";a:2:{i:0;R:29211;i:1;R:9;}s:25:"1230:fees-fees.allclients";a:2:{i:0;R:29211;i:1;R:9;}s:26:"1230:fees-fees.allproducts";a:2:{i:0;R:29211;i:1;R:9;}s:21:"1230:fees-fees.amount";a:2:{i:0;R:29211;i:1;R:9;}s:33:"1230:fees-fees.amountcalccomplete";a:2:{i:0;R:29211;i:1;R:9;}s:33:"1230:fees-fees.amountcalculatedas";a:2:{i:0;R:29211;i:1;R:9;}s:29:"1230:fees-fees.calculatefeeas";a:2:{i:0;R:29211;i:1;R:9;}s:21:"1230:fees-fees.cancel";a:2:{i:0;R:29211;i:1;R:9;}s:22:"1230:fees-fees.centers";a:2:{i:0;R:29211;i:1;R:9;}s:30:"1230:fees-fees.changeappliesto";a:2:{i:0;R:29211;i:1;R:9;}s:41:"1230:fees-fees.clickonviewordefinenewfees";a:2:{i:0;R:29211;i:1;R:9;}s:25:"1230:fees-fees.clientfees";a:2:{i:0;R:29211;i:1;R:9;}s:23:"1230:fees-fees.currency";a:2:{i:0;R:29211;i:1;R:9;}s:20:"1230:fees-fees.daily";a:2:{i:0;R:29211;i:1;R:9;}s:31:"1230:fees-fees.dailyinstruction";a:2:{i:0;R:29211;i:1;R:9;}s:18:"1230:fees-fees.day";a:2:{i:0;R:29211;i:1;R:9;}s:25:"1230:fees-fees.daymonthly";a:2:{i:0;R:29211;i:1;R:9;}s:26:"1230:fees-fees.defaultfees";a:2:{i:0;R:29211;i:1;R:9;}s:27:"1230:fees-fees.definenewfee";a:2:{i:0;R:29211;i:1;R:9;}s:19:"1230:fees-fees.edit";a:2:{i:0;R:29211;i:1;R:9;}s:30:"1230:fees-fees.editfeesmessage";a:2:{i:0;R:29211;i:1;R:9;}s:33:"1230:fees-fees.editfeeinformation";a:2:{i:0;R:29211;i:1;R:9;}s:26:"1230:fees-fees.enteramount";a:2:{i:0;R:29211;i:1;R:9;}s:34:"1230:fees-fees.enterfeeinformation";a:2:{i:0;R:29211;i:1;R:9;}s:27:"1230:fees-fees.error.amount";a:2:{i:0;R:29211;i:1;R:9;}s:32:"1230:fees-fees.error.feecategory";a:2:{i:0;R:29211;i:1;R:9;}s:28:"1230:fees-fees.error.feename";a:2:{i:0;R:29211;i:1;R:9;}s:27:"1230:fees-fees.error.glcode";a:2:{i:0;R:29211;i:1;R:9;}s:25:"1230:fees-fees.error.rate";a:2:{i:0;R:29211;i:1;R:9;}s:27:"1230:fees-fees.error.status";a:2:{i:0;R:29211;i:1;R:9;}s:20:"1230:fees-fees.every";a:2:{i:0;R:29211;i:1;R:9;}s:27:"1230:fees-fees.everyweekday";a:2:{i:0;R:29211;i:1;R:9;}s:40:"1230:fees-fees.existingandfutureaccounts";a:2:{i:0;R:29211;i:1;R:9;}s:20:"1230:fees-fees.fee01";a:2:{i:0;R:29211;i:1;R:9;}s:20:"1230:fees-fees.fee02";a:2:{i:0;R:29211;i:1;R:9;}s:20:"1230:fees-fees.fee03";a:2:{i:0;R:29211;i:1;R:9;}s:20:"1230:fees-fees.fee04";a:2:{i:0;R:29211;i:1;R:9;}s:27:"1230:fees-fees.feeappliesto";a:2:{i:0;R:29211;i:1;R:9;}s:29:"1230:fees-fees.feecalculation";a:2:{i:0;R:29211;i:1;R:9;}s:25:"1230:fees-fees.feedetails";a:2:{i:0;R:29211;i:1;R:9;}s:29:"1230:fees-fees.feeinformation";a:2:{i:0;R:29211;i:1;R:9;}s:22:"1230:fees-fees.feename";a:2:{i:0;R:29211;i:1;R:9;}s:37:"1230:fees-fees.feesuccessfullycreated";a:2:{i:0;R:29211;i:1;R:9;}s:24:"1230:fees-fees.frequency";a:2:{i:0;R:29211;i:1;R:9;}s:21:"1230:fees-fees.friday";a:2:{i:0;R:29211;i:1;R:9;}s:29:"1230:fees-fees.futureaccounts";a:2:{i:0;R:29211;i:1;R:9;}s:23:"1230:fees-fees.inactive";a:2:{i:0;R:29211;i:1;R:9;}s:23:"1230:fees-fees.labelday";a:2:{i:0;R:29211;i:1;R:9;}s:26:"1230:fees-fees.labelmonths";a:2:{i:0;R:29211;i:1;R:9;}s:27:"1230:fees-fees.labelofevery";a:2:{i:0;R:29211;i:1;R:9;}s:30:"1230:fees-fees.labelrecurevery";a:2:{i:0;R:29211;i:1;R:9;}s:31:"1230:fees-fees.labelrecurmonths";a:2:{i:0;R:29211;i:1;R:9;}s:30:"1230:fees-fees.labelrecurweeks";a:2:{i:0;R:29211;i:1;R:9;}s:23:"1230:fees-fees.labelthe";a:2:{i:0;R:29211;i:1;R:9;}s:25:"1230:fees-fees.labelweeks";a:2:{i:0;R:29211;i:1;R:9;}s:32:"1230:fees-fees.mandatory_feename";a:2:{i:0;R:29211;i:1;R:9;}s:34:"1230:fees-fees.mandatory_frequency";a:2:{i:0;R:29211;i:1;R:9;}s:31:"1230:fees-fees.mandatory_glcode";a:2:{i:0;R:29211;i:1;R:9;}s:31:"1230:fees-fees.mandatory_status";a:2:{i:0;R:29211;i:1;R:9;}s:42:"1230:fees-fees.messageforpreviewfeedetails";a:2:{i:0;R:29211;i:1;R:9;}s:21:"1230:fees-fees.monday";a:2:{i:0;R:29211;i:1;R:9;}s:20:"1230:fees-fees.month";a:2:{i:0;R:29211;i:1;R:9;}s:22:"1230:fees-fees.monthly";a:2:{i:0;R:29211;i:1;R:9;}s:33:"1230:fees-fees.monthlyinstruction";a:2:{i:0;R:29211;i:1;R:9;}s:18:"1230:fees-fees.ofa";a:2:{i:0;R:29211;i:1;R:9;}s:22:"1230:fees-fees.ofevery";a:2:{i:0;R:29211;i:1;R:9;}s:22:"1230:fees-fees.onetime";a:2:{i:0;R:29211;i:1;R:9;}s:17:"1230:fees-fees.or";a:2:{i:0;R:29211;i:1;R:9;}s:24:"1230:fees-fees.percentof";a:2:{i:0;R:29211;i:1;R:9;}s:23:"1230:fees-fees.periodic";a:2:{i:0;R:29211;i:1;R:9;}s:22:"1230:fees-fees.preview";a:2:{i:0;R:29211;i:1;R:9;}s:37:"1230:fees-fees.previewchangeappliesto";a:2:{i:0;R:29211;i:1;R:9;}s:32:"1230:fees-fees.previewfeedetails";a:2:{i:0;R:29211;i:1;R:9;}s:36:"1230:fees-fees.previewfeeinformation";a:2:{i:0;R:29211;i:1;R:9;}s:26:"1230:fees-fees.productfees";a:2:{i:0;R:29211;i:1;R:9;}s:25:"1230:fees-fees.recurevery";a:2:{i:0;R:29211;i:1;R:9;}s:30:"1230:fees-fees.reviewandsubmit";a:2:{i:0;R:29211;i:1;R:9;}s:23:"1230:fees-fees.saturday";a:2:{i:0;R:29211;i:1;R:9;}s:22:"1230:fees-fees.savings";a:2:{i:0;R:29211;i:1;R:9;}s:33:"1230:fees-fees.selecttimeofcharge";a:2:{i:0;R:29211;i:1;R:9;}s:24:"1230:fees-fees.setglcode";a:2:{i:0;R:29211;i:1;R:9;}s:32:"1230:fees-fees.smalldefinenewfee";a:2:{i:0;R:29211;i:1;R:9;}s:21:"1230:fees-fees.status";a:2:{i:0;R:29211;i:1;R:9;}s:21:"1230:fees-fees.submit";a:2:{i:0;R:29211;i:1;R:9;}s:29:"1230:fees-fees.successmessage";a:2:{i:0;R:29211;i:1;R:9;}s:21:"1230:fees-fees.sunday";a:2:{i:0;R:29211;i:1;R:9;}s:18:"1230:fees-fees.the";a:2:{i:0;R:29211;i:1;R:9;}s:23:"1230:fees-fees.thursday";a:2:{i:0;R:29211;i:1;R:9;}s:27:"1230:fees-fees.timetocharge";a:2:{i:0;R:29211;i:1;R:9;}s:22:"1230:fees-fees.tuesday";a:2:{i:0;R:29211;i:1;R:9;}s:28:"1230:fees-fees.viewfeedetail";a:2:{i:0;R:29211;i:1;R:9;}s:23:"1230:fees-fees.viewfees";a:2:{i:0;R:29211;i:1;R:9;}s:24:"1230:fees-fees.wednesday";a:2:{i:0;R:29211;i:1;R:9;}s:21:"1230:fees-fees.weekly";a:2:{i:0;R:29211;i:1;R:9;}s:32:"1230:fees-fees.weeklyinstruction";a:2:{i:0;R:29211;i:1;R:9;}s:21:"1230:fees-fees.weekon";a:2:{i:0;R:29211;i:1;R:9;}s:21:"1230:fees-fees.remove";a:2:{i:0;R:29211;i:1;R:9;}s:36:"1230:fees-error.activity.not.allowed";a:2:{i:0;R:29211;i:1;R:9;}s:34:"1230:fees-error.amountcannotbenull";a:2:{i:0;R:29211;i:1;R:9;}s:25:"1230:fees-error.enterrate";a:2:{i:0;R:29211;i:1;R:9;}s:34:"1230:fees-error.ontimeandpaymentid";a:2:{i:0;R:29211;i:1;R:9;}s:36:"1230:fees-error.periodicandfrequency";a:2:{i:0;R:29211;i:1;R:9;}s:32:"1230:fees-error.periodicorontime";a:2:{i:0;R:29211;i:1;R:9;}s:25:"1230:fees-error.reurmonth";a:2:{i:0;R:29211;i:1;R:9;}s:24:"1230:fees-error.reurweek";a:2:{i:0;R:29211;i:1;R:9;}s:35:"1230:fees-error.versionnodonotmatch";a:2:{i:0;R:29211;i:1;R:9;}s:34:"1230:fees-errors.fee.invalidglcode";a:2:{i:0;R:29211;i:1;R:9;}s:42:"1230:fees-errors.meeting.invalidrecurafter";a:2:{i:0;R:29211;i:1;R:9;}s:34:"1230:fees-errors.amountgreaterthan";a:2:{i:0;R:29211;i:1;R:9;}s:29:"1230:fees-errors.amountorrate";a:2:{i:0;R:29211;i:1;R:9;}s:30:"1230:fees-errors.decimalformat";a:2:{i:0;R:29211;i:1;R:9;}s:22:"1230:fees-errors.enter";a:2:{i:0;R:29211;i:1;R:9;}s:23:"1230:fees-errors.footer";a:2:{i:0;R:29211;i:1;R:9;}s:24:"1230:fees-errors.generic";a:2:{i:0;R:29211;i:1;R:9;}s:23:"1230:fees-errors.header";a:2:{i:0;R:29211;i:1;R:9;}s:26:"1230:fees-errors.mandatory";a:2:{i:0;R:29211;i:1;R:9;}s:39:"1230:fees-errors.mandatory_feescategory";a:2:{i:0;R:29211;i:1;R:9;}s:36:"1230:fees-errors.mandatory_selectbox";a:2:{i:0;R:29211;i:1;R:9;}s:34:"1230:fees-errors.mandatory_textbox";a:2:{i:0;R:29211;i:1;R:9;}s:21:"1230:fees-errors.mask";a:2:{i:0;R:29211;i:1;R:9;}s:30:"1230:fees-errors.maximumlength";a:2:{i:0;R:29211;i:1;R:9;}s:30:"1230:fees-errors.minimumlength";a:2:{i:0;R:29211;i:1;R:9;}s:38:"1230:fees-errors.mustbegreaterthanzero";a:2:{i:0;R:29211;i:1;R:9;}s:23:"1230:fees-errors.prefix";a:2:{i:0;R:29211;i:1;R:9;}s:33:"1230:fees-errors.rateandformulaid";a:2:{i:0;R:29211;i:1;R:9;}s:35:"1230:fees-errors.rategreaterthen999";a:2:{i:0;R:29211;i:1;R:9;}s:23:"1230:fees-errors.select";a:2:{i:0;R:29211;i:1;R:9;}s:29:"1230:fees-errors.selectstatus";a:2:{i:0;R:29211;i:1;R:9;}s:23:"1230:fees-errors.suffix";a:2:{i:0;R:29211;i:1;R:9;}s:51:"1230:fees-exception.framework.doublesubmitexception";a:2:{i:0;R:29211;i:1;R:9;}s:50:"1230:fees-exception.framework.pageexpiredexception";a:2:{i:0;R:29211;i:1;R:9;}s:27:"1230:fees-meeting.frequency";a:2:{i:0;R:29211;i:1;R:9;}s:26:"1230:fees-meeting.labelday";a:2:{i:0;R:29211;i:1;R:9;}s:29:"1230:fees-meeting.labelmonths";a:2:{i:0;R:29211;i:1;R:9;}s:30:"1230:fees-meeting.labelofevery";a:2:{i:0;R:29211;i:1;R:9;}s:33:"1230:fees-meeting.labelrecurevery";a:2:{i:0;R:29211;i:1;R:9;}s:34:"1230:fees-meeting.labelrecurmonths";a:2:{i:0;R:29211;i:1;R:9;}s:33:"1230:fees-meeting.labelrecurweeks";a:2:{i:0;R:29211;i:1;R:9;}s:26:"1230:fees-meeting.labelthe";a:2:{i:0;R:29211;i:1;R:9;}s:28:"1230:fees-meeting.labelweeks";a:2:{i:0;R:29211;i:1;R:9;}s:28:"1230:fees-error.removeactive";a:2:{i:0;R:29211;i:1;R:9;}s:25:"1230:fees-fees.feeremoved";a:2:{i:0;R:29211;i:1;R:9;}s:32:"1230:fees-fees.feeremovedfromprd";a:2:{i:0;R:29211;i:1;R:9;}s:33:"1230:fees-fees.feecannotberemoved";a:2:{i:0;R:29211;i:1;R:9;}s:31:"1230:fees-fees.feenotusedremove";a:2:{i:0;R:29211;i:1;R:9;}s:26:"1230:field-center.address1";a:2:{i:0;s:15:"out-mifos-field";i:1;R:9;}s:26:"1230:field-center.address2";a:2:{i:0;R:29371;i:1;R:9;}s:26:"1230:field-center.address3";a:2:{i:0;R:29371;i:1;R:9;}s:22:"1230:field-center.city";a:2:{i:0;R:29371;i:1;R:9;}s:25:"1230:field-center.country";a:2:{i:0;R:29371;i:1;R:9;}s:28:"1230:field-center.externalid";a:2:{i:0;R:29371;i:1;R:9;}s:29:"1230:field-center.phonenumber";a:2:{i:0;R:29371;i:1;R:9;}s:28:"1230:field-center.postalcode";a:2:{i:0;R:29371;i:1;R:9;}s:23:"1230:field-center.state";a:2:{i:0;R:29371;i:1;R:9;}s:26:"1230:field-client.address1";a:2:{i:0;R:29371;i:1;R:9;}s:26:"1230:field-client.address2";a:2:{i:0;R:29371;i:1;R:9;}s:26:"1230:field-client.address3";a:2:{i:0;R:29371;i:1;R:9;}s:36:"1230:field-client.businessactivities";a:2:{i:0;R:29371;i:1;R:9;}s:34:"1230:field-client.numberofchildren";a:2:{i:0;R:29371;i:1;R:9;}s:29:"1230:field-client.citizenship";a:2:{i:0;R:29371;i:1;R:9;}s:22:"1230:field-client.city";a:2:{i:0;R:29371;i:1;R:9;}s:25:"1230:field-client.country";a:2:{i:0;R:29371;i:1;R:9;}s:32:"1230:field-client.educationlevel";a:2:{i:0;R:29371;i:1;R:9;}s:27:"1230:field-client.ethnicity";a:2:{i:0;R:29371;i:1;R:9;}s:28:"1230:field-client.externalid";a:2:{i:0;R:29371;i:1;R:9;}s:31:"1230:field-client.familydetails";a:2:{i:0;R:29371;i:1;R:9;}s:30:"1230:field-client.governmentid";a:2:{i:0;R:29371;i:1;R:9;}s:29:"1230:field-client.handicapped";a:2:{i:0;R:29371;i:1;R:9;}s:28:"1230:field-client.middlename";a:2:{i:0;R:29371;i:1;R:9;}s:29:"1230:field-client.phonenumber";a:2:{i:0;R:29371;i:1;R:9;}s:23:"1230:field-client.photo";a:2:{i:0;R:29371;i:1;R:9;}s:28:"1230:field-client.postalcode";a:2:{i:0;R:29371;i:1;R:9;}s:31:"1230:field-client.povertystatus";a:2:{i:0;R:29371;i:1;R:9;}s:31:"1230:field-client.maritalstatus";a:2:{i:0;R:29371;i:1;R:9;}s:32:"1230:field-client.secondlastname";a:2:{i:0;R:29371;i:1;R:9;}s:41:"1230:field-client.spousefatherinformation";a:2:{i:0;R:29371;i:1;R:9;}s:40:"1230:field-client.spousefathermiddlename";a:2:{i:0;R:29371;i:1;R:9;}s:44:"1230:field-client.spousefathersecondlastname";a:2:{i:0;R:29371;i:1;R:9;}s:23:"1230:field-client.state";a:2:{i:0;R:29371;i:1;R:9;}s:25:"1230:field-client.trained";a:2:{i:0;R:29371;i:1;R:9;}s:29:"1230:field-client.traineddate";a:2:{i:0;R:29371;i:1;R:9;}s:25:"1230:field-group.address1";a:2:{i:0;R:29371;i:1;R:9;}s:25:"1230:field-group.address2";a:2:{i:0;R:29371;i:1;R:9;}s:25:"1230:field-group.address3";a:2:{i:0;R:29371;i:1;R:9;}s:21:"1230:field-group.city";a:2:{i:0;R:29371;i:1;R:9;}s:24:"1230:field-group.country";a:2:{i:0;R:29371;i:1;R:9;}s:27:"1230:field-group.externalid";a:2:{i:0;R:29371;i:1;R:9;}s:28:"1230:field-group.phonenumber";a:2:{i:0;R:29371;i:1;R:9;}s:27:"1230:field-group.postalcode";a:2:{i:0;R:29371;i:1;R:9;}s:22:"1230:field-group.state";a:2:{i:0;R:29371;i:1;R:9;}s:24:"1230:field-group.trained";a:2:{i:0;R:29371;i:1;R:9;}s:28:"1230:field-group.traineddate";a:2:{i:0;R:29371;i:1;R:9;}s:31:"1230:field-loan.collateralnotes";a:2:{i:0;R:29371;i:1;R:9;}s:30:"1230:field-loan.collateraltype";a:2:{i:0;R:29371;i:1;R:9;}s:29:"1230:field-loan.purposeofloan";a:2:{i:0;R:29371;i:1;R:9;}s:25:"1230:field-office.country";a:2:{i:0;R:29371;i:1;R:9;}s:28:"1230:field-office.postalcode";a:2:{i:0;R:29371;i:1;R:9;}s:23:"1230:field-office.state";a:2:{i:0;R:29371;i:1;R:9;}s:29:"1230:field-personnel.address3";a:2:{i:0;R:29371;i:1;R:9;}s:28:"1230:field-personnel.country";a:2:{i:0;R:29371;i:1;R:9;}s:33:"1230:field-personnel.governmentid";a:2:{i:0;R:29371;i:1;R:9;}s:31:"1230:field-personnel.middlename";a:2:{i:0;R:29371;i:1;R:9;}s:32:"1230:field-personnel.phonenumber";a:2:{i:0;R:29371;i:1;R:9;}s:31:"1230:field-personnel.postalcode";a:2:{i:0;R:29371;i:1;R:9;}s:35:"1230:field-personnel.secondlastname";a:2:{i:0;R:29371;i:1;R:9;}s:26:"1230:field-personnel.state";a:2:{i:0;R:29371;i:1;R:9;}s:33:"1230:framework-framework.accounts";a:2:{i:0;s:19:"out-mifos-framework";i:1;R:9;}s:30:"1230:framework-framework.admin";a:2:{i:0;R:29433;i:1;R:9;}s:43:"1230:framework-framework.clientsandaccounts";a:2:{i:0;R:29433;i:1;R:9;}s:42:"1230:framework-framework.createloanaccount";a:2:{i:0;R:29433;i:1;R:9;}s:42:"1230:framework-framework.createnewaccounts";a:2:{i:0;R:29433;i:1;R:9;}s:40:"1230:framework-framework.createnewcenter";a:2:{i:0;R:29433;i:1;R:9;}s:40:"1230:framework-framework.createnewclient";a:2:{i:0;R:29433;i:1;R:9;}s:41:"1230:framework-framework.createnewclients";a:2:{i:0;R:29433;i:1;R:9;}s:39:"1230:framework-framework.createnewgroup";a:2:{i:0;R:29433;i:1;R:9;}s:45:"1230:framework-framework.createsavingsaccount";a:2:{i:0;R:29433;i:1;R:9;}s:49:"1230:framework-framework.entercollectionsheetdata";a:2:{i:0;R:29433;i:1;R:9;}s:29:"1230:framework-framework.home";a:2:{i:0;R:29433;i:1;R:9;}s:31:"1230:framework-framework.logout";a:2:{i:0;R:29433;i:1;R:9;}s:47:"1230:framework-framework.managecollectionsheets";a:2:{i:0;R:29433;i:1;R:9;}s:57:"1230:framework-framework.menutitleclientsandaccountstasks";a:2:{i:0;R:29433;i:1;R:9;}s:32:"1230:framework-framework.reports";a:2:{i:0;R:29433;i:1;R:9;}s:31:"1230:framework-framework.search";a:2:{i:0;R:29433;i:1;R:9;}s:39:"1230:framework-framework.searchcriteria";a:2:{i:0;R:29433;i:1;R:9;}s:37:"1230:framework-framework.yoursettings";a:2:{i:0;R:29433;i:1;R:9;}s:39:"1230:framework-framework.switchsitetype";a:2:{i:0;R:29433;i:1;R:9;}s:56:"1230:ftl-ftldefinedlabels.viewofficehierarchy.headoffice";a:2:{i:0;s:13:"out-mifos-ftl";i:1;R:9;}s:60:"1230:ftl-ftldefinedlabels.viewofficehierarchy.regionaloffice";a:2:{i:0;R:29454;i:1;R:9;}s:62:"1230:ftl-ftldefinedlabels.viewofficehierarchy.divisionaloffice";a:2:{i:0;R:29454;i:1;R:9;}s:56:"1230:ftl-ftldefinedlabels.viewofficehierarchy.areaoffice";a:2:{i:0;R:29454;i:1;R:9;}s:58:"1230:ftl-ftldefinedlabels.viewofficehierarchy.branchoffice";a:2:{i:0;R:29454;i:1;R:9;}s:68:"1230:ftl-ftldefinedlabels.manageproducts.viewproductcategories.loans";a:2:{i:0;R:29454;i:1;R:9;}s:70:"1230:ftl-ftldefinedlabels.manageproducts.viewproductcategories.savings";a:2:{i:0;R:29454;i:1;R:9;}s:66:"1230:ftl-ftldefinedlabels.manageproducts.editlatenessdormancy.loan";a:2:{i:0;R:29454;i:1;R:9;}s:83:"1230:ftl-ftldefinedlabels.manageproducts.editlatenessdormancy.setlatenessdefinition";a:2:{i:0;R:29454;i:1;R:9;}s:96:"1230:ftl-ftldefinedlabels.manageproducts.editlatenessdormancy.specifythenumberofdaysofnonpayment";a:2:{i:0;R:29454;i:1;R:9;}s:69:"1230:ftl-ftldefinedlabels.manageproducts.editlatenessdormancy.savings";a:2:{i:0;R:29454;i:1;R:9;}s:100:"1230:ftl-ftldefinedlabels.manageproducts.editlatenessdormancy.specifythenumberofdaystodefinedormancy";a:2:{i:0;R:29454;i:1;R:9;}s:59:"1230:ftl-ftldefinedlabels.manageproduct.viewproductmix.loan";a:2:{i:0;R:29454;i:1;R:9;}s:62:"1230:ftl-ftldefinedlabels.manageproduct.viewproductmix.savings";a:2:{i:0;R:29454;i:1;R:9;}s:51:"1230:ftl-ftldefinedlabels.admin.viewsavingsproducts";a:2:{i:0;R:29454;i:1;R:9;}s:121:"1230:ftl-ftldefinedlabels.manageloanproducts.viewsavingsproducts.clickonasavingsproductbelowtoviewdetailsandmakechangesor";a:2:{i:0;R:29454;i:1;R:9;}s:87:"1230:ftl-ftldefinedlabels.manageloanproducts.viewsavingsproducts.definenewsavingporduct";a:2:{i:0;R:29454;i:1;R:9;}s:88:"1230:ftl-ftldefinedlabels.manageproducts.definesavingsproducts.savingsproductinformation";a:2:{i:0;R:29454;i:1;R:9;}s:84:"1230:ftl-ftldefinedlabels.manageproducts.definesavingsproducts.addanewsavingsproduct";a:2:{i:0;R:29454;i:1;R:9;}s:93:"1230:ftl-ftldefinedlabels.manageproducts.definesavingsproducts.entersavingsproductinformation";a:2:{i:0;R:29454;i:1;R:9;}s:84:"1230:ftl-ftldefinedlabels.manageproducts.definesavingsproducts.savingsproductdetails";a:2:{i:0;R:29454;i:1;R:9;}s:85:"1230:ftl-ftldefinedlabels.managesavngsproducts.editsavingsproduct.viewsavingsproducts";a:2:{i:0;R:29454;i:1;R:9;}s:95:"1230:ftl-ftldefinedlabels.managesavngsproducts.editsavingsproduct.editsavingsproductinformation";a:2:{i:0;R:29454;i:1;R:9;}s:87:"1230:ftl-ftldefinedlabels.managesavngsproducts.editsavingsproduct.savingsproductdetails";a:2:{i:0;R:29454;i:1;R:9;}s:78:"1230:ftl-ftldefinedlabels.manageproducts.editsavingsproduct.editthefieldsbelow";a:2:{i:0;R:29454;i:1;R:9;}s:34:"1230:ftl-ftldefinedlabels.inactive";a:2:{i:0;R:29454;i:1;R:9;}s:32:"1230:ftl-ftldefinedlabels.active";a:2:{i:0;R:29454;i:1;R:9;}s:58:"1230:ftl-ftldefinedlabels.manageproducts.editcategory.loan";a:2:{i:0;R:29454;i:1;R:9;}s:61:"1230:ftl-ftldefinedlabels.manageproducts.editcategory.savings";a:2:{i:0;R:29454;i:1;R:9;}s:70:"1230:ftl-ftldefinedlabels.manageproducts.definenewcategory.productname";a:2:{i:0;R:29454;i:1;R:9;}s:36:"1230:fund-error.activity.not.allowed";a:2:{i:0;s:14:"out-mifos-fund";i:1;R:9;}s:43:"1230:fund-errors.duplicatefundnameexception";a:2:{i:0;R:29485;i:1;R:9;}s:37:"1230:fund-errors.fund.invalidfundcode";a:2:{i:0;R:29485;i:1;R:9;}s:33:"1230:fund-errors.fund.invalidname";a:2:{i:0;R:29485;i:1;R:9;}s:23:"1230:fund-errors.footer";a:2:{i:0;R:29485;i:1;R:9;}s:23:"1230:fund-errors.header";a:2:{i:0;R:29485;i:1;R:9;}s:26:"1230:fund-errors.mandatory";a:2:{i:0;R:29485;i:1;R:9;}s:36:"1230:fund-errors.mandatory_selectbox";a:2:{i:0;R:29485;i:1;R:9;}s:34:"1230:fund-errors.mandatory_textbox";a:2:{i:0;R:29485;i:1;R:9;}s:23:"1230:fund-errors.prefix";a:2:{i:0;R:29485;i:1;R:9;}s:23:"1230:fund-errors.select";a:2:{i:0;R:29485;i:1;R:9;}s:23:"1230:fund-errors.suffix";a:2:{i:0;R:29485;i:1;R:9;}s:51:"1230:fund-exception.framework.doublesubmitexception";a:2:{i:0;R:29485;i:1;R:9;}s:21:"1230:fund-funds.admin";a:2:{i:0;R:29485;i:1;R:9;}s:22:"1230:fund-funds.cancel";a:2:{i:0;R:29485;i:1;R:9;}s:20:"1230:fund-funds.edit";a:2:{i:0;R:29485;i:1;R:9;}s:41:"1230:fund-funds.edit_preview_instructions";a:2:{i:0;R:29485;i:1;R:9;}s:24:"1230:fund-funds.editfund";a:2:{i:0;R:29485;i:1;R:9;}s:41:"1230:fund-funds.editfund_pageinstructions";a:2:{i:0;R:29485;i:1;R:9;}s:26:"1230:fund-funds.enter_fund";a:2:{i:0;R:29485;i:1;R:9;}s:24:"1230:fund-funds.fundcode";a:2:{i:0;R:29485;i:1;R:9;}s:31:"1230:fund-funds.fundinformation";a:2:{i:0;R:29485;i:1;R:9;}s:24:"1230:fund-funds.fundname";a:2:{i:0;R:29485;i:1;R:9;}s:28:"1230:fund-funds.fund_details";a:2:{i:0;R:29485;i:1;R:9;}s:25:"1230:fund-funds.fund_name";a:2:{i:0;R:29485;i:1;R:9;}s:37:"1230:fund-funds.mandatoryinstructions";a:2:{i:0;R:29485;i:1;R:9;}s:24:"1230:fund-funds.new_fund";a:2:{i:0;R:29485;i:1;R:9;}s:40:"1230:fund-funds.newfund_pageinstructions";a:2:{i:0;R:29485;i:1;R:9;}s:23:"1230:fund-funds.preview";a:2:{i:0;R:29485;i:1;R:9;}s:32:"1230:fund-funds.preview_fundinfo";a:2:{i:0;R:29485;i:1;R:9;}s:36:"1230:fund-funds.preview_instructions";a:2:{i:0;R:29485;i:1;R:9;}s:22:"1230:fund-funds.review";a:2:{i:0;R:29485;i:1;R:9;}s:31:"1230:fund-funds.reviewandsubmit";a:2:{i:0;R:29485;i:1;R:9;}s:19:"1230:fund-funds.sub";a:2:{i:0;R:29485;i:1;R:9;}s:22:"1230:fund-funds.submit";a:2:{i:0;R:29485;i:1;R:9;}s:25:"1230:fund-funds.viewfunds";a:2:{i:0;R:29485;i:1;R:9;}s:35:"1230:group-customer.meetingrequired";a:2:{i:0;R:16;i:1;R:9;}s:44:"1230:group-formedbyloanofficerblankexception";a:2:{i:0;R:16;i:1;R:9;}s:20:"1230:group-group.add";a:2:{i:0;R:16;i:1;R:9;}s:29:"1230:group-group.amountoflast";a:2:{i:0;R:16;i:1;R:9;}s:36:"1230:group-group.assignedloanofficer";a:2:{i:0;R:16;i:1;R:9;}s:30:"1230:group-group.avgindividual";a:2:{i:0;R:16;i:1;R:9;}s:23:"1230:group-group.center";a:2:{i:0;R:16;i:1;R:9;}s:38:"1230:group-group.editgroupinstructions";a:2:{i:0;R:16;i:1;R:9;}s:25:"1230:group-group.formedby";a:2:{i:0;R:16;i:1;R:9;}s:24:"1230:group-group.nolabel";a:2:{i:0;R:16;i:1;R:9;}s:32:"1230:group-group.portfolioatrisk";a:2:{i:0;R:16;i:1;R:9;}s:25:"1230:group-group.selected";a:2:{i:0;R:16;i:1;R:9;}s:22:"1230:group-group.total";a:2:{i:0;R:16;i:1;R:9;}s:25:"1230:group-group.yeslabel";a:2:{i:0;R:16;i:1;R:9;}s:20:"1230:group-group.acc";a:2:{i:0;R:16;i:1;R:9;}s:24:"1230:group-group.account";a:2:{i:0;R:16;i:1;R:9;}s:35:"1230:group-group.accountinformation";a:2:{i:0;R:16;i:1;R:9;}s:23:"1230:group-group.accsum";a:2:{i:0;R:16;i:1;R:9;}s:30:"1230:group-group.addmembership";a:2:{i:0;R:16;i:1;R:9;}s:25:"1230:group-group.addanote";a:2:{i:0;R:16;i:1;R:9;}s:31:"1230:group-group.additionalfees";a:2:{i:0;R:16;i:1;R:9;}s:38:"1230:group-group.additionalinformation";a:2:{i:0;R:16;i:1;R:9;}s:24:"1230:group-group.address";a:2:{i:0;R:16;i:1;R:9;}s:25:"1230:group-group.address1";a:2:{i:0;R:16;i:1;R:9;}s:28:"1230:group-group.address1msg";a:2:{i:0;R:16;i:1;R:9;}s:25:"1230:group-group.address2";a:2:{i:0;R:16;i:1;R:9;}s:28:"1230:group-group.address2msg";a:2:{i:0;R:16;i:1;R:9;}s:25:"1230:group-group.address3";a:2:{i:0;R:16;i:1;R:9;}s:28:"1230:group-group.address3msg";a:2:{i:0;R:16;i:1;R:9;}s:29:"1230:group-group.adminsetfess";a:2:{i:0;R:16;i:1;R:9;}s:23:"1230:group-group.amount";a:2:{i:0;R:16;i:1;R:9;}s:26:"1230:group-group.amountdue";a:2:{i:0;R:16;i:1;R:9;}s:23:"1230:group-group.amtdue";a:2:{i:0;R:16;i:1;R:9;}s:27:"1230:group-group.amtoverdue";a:2:{i:0;R:16;i:1;R:9;}s:32:"1230:group-group.applyadjustment";a:2:{i:0;R:16;i:1;R:9;}s:33:"1230:group-group.applytransaction";a:2:{i:0;R:16;i:1;R:9;}s:29:"1230:group-group.approvaldate";a:2:{i:0;R:16;i:1;R:9;}s:43:"1230:group-group.assignclientstogrouptitles";a:2:{i:0;R:16;i:1;R:9;}s:44:"1230:group-group.assignclientstogrouptitles1";a:2:{i:0;R:16;i:1;R:9;}s:44:"1230:group-group.assignclientstogrouptitles2";a:2:{i:0;R:16;i:1;R:9;}s:44:"1230:group-group.assignclientstogrouptitles3";a:2:{i:0;R:16;i:1;R:9;}s:25:"1230:group-group.assigned";a:2:{i:0;R:16;i:1;R:9;}s:26:"1230:group-group.assigned1";a:2:{i:0;R:16;i:1;R:9;}s:30:"1230:group-group.attachasurvey";a:2:{i:0;R:16;i:1;R:9;}s:29:"1230:group-group.attachsurvey";a:2:{i:0;R:16;i:1;R:9;}s:24:"1230:group-group.balance";a:2:{i:0;R:16;i:1;R:9;}s:30:"1230:group-group.branchoffices";a:2:{i:0;R:16;i:1;R:9;}s:29:"1230:group-group.centerassign";a:2:{i:0;R:16;i:1;R:9;}s:31:"1230:group-group.centerassigned";a:2:{i:0;R:16;i:1;R:9;}s:48:"1230:group-group.centermembership&meetingdetails";a:2:{i:0;R:16;i:1;R:9;}s:33:"1230:group-group.changemembership";a:2:{i:0;R:16;i:1;R:9;}s:39:"1230:group-group.changecentermembership";a:2:{i:0;R:16;i:1;R:9;}s:43:"1230:group-group.changecentermembershiphead";a:2:{i:0;R:16;i:1;R:9;}s:29:"1230:group-group.changestatus";a:2:{i:0;R:16;i:1;R:9;}s:24:"1230:group-group.charges";a:2:{i:0;R:16;i:1;R:9;}s:30:"1230:group-group.checktoremove";a:2:{i:0;R:16;i:1;R:9;}s:29:"1230:group-group.choosebranch";a:2:{i:0;R:16;i:1;R:9;}s:33:"1230:group-group.choosecentermsg1";a:2:{i:0;R:16;i:1;R:9;}s:33:"1230:group-group.choosecentermsg2";a:2:{i:0;R:16;i:1;R:9;}s:21:"1230:group-group.city";a:2:{i:0;R:16;i:1;R:9;}s:24:"1230:group-group.citymsg";a:2:{i:0;R:16;i:1;R:9;}s:28:"1230:group-group.clickcancel";a:2:{i:0;R:16;i:1;R:9;}s:28:"1230:group-group.clickoffice";a:2:{i:0;R:16;i:1;R:9;}s:29:"1230:group-group.clientassign";a:2:{i:0;R:16;i:1;R:9;}s:32:"1230:group-group.clientsassigned";a:2:{i:0;R:16;i:1;R:9;}s:36:"1230:group-group.collectionsheettype";a:2:{i:0;R:16;i:1;R:9;}s:22:"1230:group-group.comma";a:2:{i:0;R:16;i:1;R:9;}s:24:"1230:group-group.confirm";a:2:{i:0;R:16;i:1;R:9;}s:34:"1230:group-group.confirmcentermsg1";a:2:{i:0;R:16;i:1;R:9;}s:36:"1230:group-group.confirmstatuschange";a:2:{i:0;R:16;i:1;R:9;}s:24:"1230:group-group.country";a:2:{i:0;R:16;i:1;R:9;}s:27:"1230:group-group.countrymsg";a:2:{i:0;R:16;i:1;R:9;}s:23:"1230:group-group.create";a:2:{i:0;R:16;i:1;R:9;}s:32:"1230:group-group.createanaccount";a:2:{i:0;R:16;i:1;R:9;}s:33:"1230:group-group.createnewaccount";a:2:{i:0;R:16;i:1;R:9;}s:30:"1230:group-group.createaccount";a:2:{i:0;R:16;i:1;R:9;}s:32:"1230:group-group.createanewgroup";a:2:{i:0;R:16;i:1;R:9;}s:30:"1230:group-group.createconfirm";a:2:{i:0;R:16;i:1;R:9;}s:35:"1230:group-group.createconfirmhead1";a:2:{i:0;R:16;i:1;R:9;}s:35:"1230:group-group.createconfirmhead2";a:2:{i:0;R:16;i:1;R:9;}s:35:"1230:group-group.createconfirmhead3";a:2:{i:0;R:16;i:1;R:9;}s:35:"1230:group-group.createconfirmhead4";a:2:{i:0;R:16;i:1;R:9;}s:32:"1230:group-group.createinsurance";a:2:{i:0;R:16;i:1;R:9;}s:27:"1230:group-group.createloan";a:2:{i:0;R:16;i:1;R:9;}s:26:"1230:group-group.createnew";a:2:{i:0;R:16;i:1;R:9;}s:31:"1230:group-group.createnewgroup";a:2:{i:0;R:16;i:1;R:9;}s:32:"1230:group-group.createpagehead1";a:2:{i:0;R:16;i:1;R:9;}s:32:"1230:group-group.createpagehead2";a:2:{i:0;R:16;i:1;R:9;}s:32:"1230:group-group.createpagehead3";a:2:{i:0;R:16;i:1;R:9;}s:32:"1230:group-group.createpagehead4";a:2:{i:0;R:16;i:1;R:9;}s:30:"1230:group-group.createsavings";a:2:{i:0;R:16;i:1;R:9;}s:30:"1230:group-group.createsuccess";a:2:{i:0;R:16;i:1;R:9;}s:30:"1230:group-group.currentstatus";a:2:{i:0;R:16;i:1;R:9;}s:21:"1230:group-group.date";a:2:{i:0;R:16;i:1;R:9;}s:33:"1230:group-group.dategroupstarted";a:2:{i:0;R:16;i:1;R:9;}s:28:"1230:group-group.description";a:2:{i:0;R:16;i:1;R:9;}s:24:"1230:group-group.details";a:2:{i:0;R:16;i:1;R:9;}s:20:"1230:group-group.dot";a:2:{i:0;R:16;i:1;R:9;}s:21:"1230:group-group.edit";a:2:{i:0;R:16;i:1;R:9;}s:34:"1230:group-group.editgrpmembership";a:2:{i:0;R:16;i:1;R:9;}s:32:"1230:group-group.editinformation";a:2:{i:0;R:16;i:1;R:9;}s:25:"1230:group-group.editmag2";a:2:{i:0;R:16;i:1;R:9;}s:39:"1230:group-group.editmag2returntodetail";a:2:{i:0;R:16;i:1;R:9;}s:37:"1230:group-group.editmag2returntoedit";a:2:{i:0;R:16;i:1;R:9;}s:25:"1230:group-group.editmag3";a:2:{i:0;R:16;i:1;R:9;}s:31:"1230:group-group.editmembership";a:2:{i:0;R:16;i:1;R:9;}s:25:"1230:group-group.editmsg1";a:2:{i:0;R:16;i:1;R:9;}s:37:"1230:group-group.editofficemembership";a:2:{i:0;R:16;i:1;R:9;}s:27:"1230:group-group.editstatus";a:2:{i:0;R:16;i:1;R:9;}s:37:"1230:group-group.editcentermembership";a:2:{i:0;R:16;i:1;R:9;}s:37:"1230:group-group.editgroupinformation";a:2:{i:0;R:16;i:1;R:9;}s:32:"1230:group-group.editgroupstatus";a:2:{i:0;R:16;i:1;R:9;}s:35:"1230:group-group.editmeetingchedule";a:2:{i:0;R:16;i:1;R:9;}s:31:"1230:group-group.editpreviewmsg";a:2:{i:0;R:16;i:1;R:9;}s:22:"1230:group-group.enter";a:2:{i:0;R:16;i:1;R:9;}s:32:"1230:group-group.enterandproceed";a:2:{i:0;R:16;i:1;R:9;}s:31:"1230:group-group.enterandsearch";a:2:{i:0;R:16;i:1;R:9;}s:33:"1230:group-group.enterinformation";a:2:{i:0;R:16;i:1;R:9;}s:23:"1230:group-group.entera";a:2:{i:0;R:16;i:1;R:9;}s:38:"1230:group-group.entergroupinformation";a:2:{i:0;R:16;i:1;R:9;}s:27:"1230:group-group.externalid";a:2:{i:0;R:16;i:1;R:9;}s:24:"1230:group-group.feetype";a:2:{i:0;R:16;i:1;R:9;}s:22:"1230:group-group.group";a:2:{i:0;R:16;i:1;R:9;}s:28:"1230:group-group.groupdetail";a:2:{i:0;R:16;i:1;R:9;}s:32:"1230:group-group.groupmembership";a:2:{i:0;R:16;i:1;R:9;}s:34:"1230:group-group.groupapprovaldate";a:2:{i:0;R:16;i:1;R:9;}s:29:"1230:group-group.groupcharges";a:2:{i:0;R:16;i:1;R:9;}s:31:"1230:group-group.groupdetailmsg";a:2:{i:0;R:16;i:1;R:9;}s:32:"1230:group-group.groupdetailmsg1";a:2:{i:0;R:16;i:1;R:9;}s:32:"1230:group-group.groupdetailmsg2";a:2:{i:0;R:16;i:1;R:9;}s:35:"1230:group-group.groupdetailviewmsg";a:2:{i:0;R:16;i:1;R:9;}s:29:"1230:group-group.groupdetails";a:2:{i:0;R:16;i:1;R:9;}s:31:"1230:group-group.groupfundloans";a:2:{i:0;R:16;i:1;R:9;}s:33:"1230:group-group.groupinformation";a:2:{i:0;R:16;i:1;R:9;}s:26:"1230:group-group.groupname";a:2:{i:0;R:16;i:1;R:9;}s:29:"1230:group-group.groupnamemsg";a:2:{i:0;R:16;i:1;R:9;}s:41:"1230:group-group.groupsearch_instructions";a:2:{i:0;R:16;i:1;R:9;}s:29:"1230:group-group.grouptrained";a:2:{i:0;R:16;i:1;R:9;}s:31:"1230:group-group.grouptrainedon";a:2:{i:0;R:16;i:1;R:9;}s:23:"1230:group-group.hashof";a:2:{i:0;R:16;i:1;R:9;}s:26:"1230:group-group.insurance";a:2:{i:0;R:16;i:1;R:9;}s:21:"1230:group-group.loan";a:2:{i:0;R:16;i:1;R:9;}s:33:"1230:group-group.loancyclecounter";a:2:{i:0;R:16;i:1;R:9;}s:28:"1230:group-group.loanofficer";a:2:{i:0;R:16;i:1;R:9;}s:31:"1230:group-group.loanofficermsg";a:2:{i:0;R:16;i:1;R:9;}s:36:"1230:group-group.loanofficerassigned";a:2:{i:0;R:16;i:1;R:9;}s:37:"1230:group-group.locationofthemeeting";a:2:{i:0;R:16;i:1;R:9;}s:28:"1230:group-group.managegroup";a:2:{i:0;R:16;i:1;R:9;}s:24:"1230:group-group.meeting";a:2:{i:0;R:16;i:1;R:9;}s:31:"1230:group-group.meetingdetails";a:2:{i:0;R:16;i:1;R:9;}s:25:"1230:group-group.meetings";a:2:{i:0;R:16;i:1;R:9;}s:32:"1230:group-group.meetingschedule";a:2:{i:0;R:16;i:1;R:9;}s:38:"1230:group-group.membershipnotrequired";a:2:{i:0;R:16;i:1;R:9;}s:31:"1230:group-group.mfiinformation";a:2:{i:0;R:16;i:1;R:9;}s:21:"1230:group-group.name";a:2:{i:0;R:16;i:1;R:9;}s:35:"1230:group-group.nameandclicksearch";a:2:{i:0;R:16;i:1;R:9;}s:32:"1230:group-group.nametochangethe";a:2:{i:0;R:16;i:1;R:9;}s:20:"1230:group-group.new";a:2:{i:0;R:16;i:1;R:9;}s:26:"1230:group-group.newstatus";a:2:{i:0;R:16;i:1;R:9;}s:35:"1230:group-group.noclientsavailable";a:2:{i:0;R:16;i:1;R:9;}s:21:"1230:group-group.none";a:2:{i:0;R:16;i:1;R:9;}s:33:"1230:group-group.nonotesavailable";a:2:{i:0;R:16;i:1;R:9;}s:21:"1230:group-group.note";a:2:{i:0;R:16;i:1;R:9;}s:20:"1230:group-group.now";a:2:{i:0;R:16;i:1;R:9;}s:31:"1230:group-group.officialstatus";a:2:{i:0;R:16;i:1;R:9;}s:39:"1230:group-group.officialtitlesassigned";a:2:{i:0;R:16;i:1;R:9;}s:31:"1230:group-group.opennewaccount";a:2:{i:0;R:16;i:1;R:9;}s:35:"1230:group-group.performancehistory";a:2:{i:0;R:16;i:1;R:9;}s:28:"1230:group-group.periodicity";a:2:{i:0;R:16;i:1;R:9;}s:37:"1230:group-group.personnelinformation";a:2:{i:0;R:16;i:1;R:9;}s:27:"1230:group-group.pleasenote";a:2:{i:0;R:16;i:1;R:9;}s:26:"1230:group-group.portfolio";a:2:{i:0;R:16;i:1;R:9;}s:27:"1230:group-group.postalcode";a:2:{i:0;R:16;i:1;R:9;}s:30:"1230:group-group.postalcodemsg";a:2:{i:0;R:16;i:1;R:9;}s:25:"1230:group-group.postedby";a:2:{i:0;R:16;i:1;R:9;}s:24:"1230:group-group.preview";a:2:{i:0;R:16;i:1;R:9;}s:35:"1230:group-group.previewinformation";a:2:{i:0;R:16;i:1;R:9;}s:39:"1230:group-group.previewcreatepagehead1";a:2:{i:0;R:16;i:1;R:9;}s:39:"1230:group-group.previewcreatepagehead2";a:2:{i:0;R:16;i:1;R:9;}s:40:"1230:group-group.previewgroupinformation";a:2:{i:0;R:16;i:1;R:9;}s:27:"1230:group-group.programmsg";a:2:{i:0;R:16;i:1;R:9;}s:25:"1230:group-group.programs";a:2:{i:0;R:16;i:1;R:9;}s:34:"1230:group-group.rec_creation_date";a:2:{i:0;R:16;i:1;R:9;}s:26:"1230:group-group.recaccact";a:2:{i:0;R:16;i:1;R:9;}s:28:"1230:group-group.recentnotes";a:2:{i:0;R:16;i:1;R:9;}s:37:"1230:group-group.recurringaccountfees";a:2:{i:0;R:16;i:1;R:9;}s:23:"1230:group-group.remove";a:2:{i:0;R:16;i:1;R:9;}s:38:"1230:group-group.removegroupmembership";a:2:{i:0;R:16;i:1;R:9;}s:33:"1230:group-group.removemembership";a:2:{i:0;R:16;i:1;R:9;}s:32:"1230:group-group.reviewandsubmit";a:2:{i:0;R:16;i:1;R:9;}s:24:"1230:group-group.savings";a:2:{i:0;R:16;i:1;R:9;}s:32:"1230:group-group.schedulemeeting";a:2:{i:0;R:16;i:1;R:9;}s:27:"1230:group-group.searchmsg1";a:2:{i:0;R:16;i:1;R:9;}s:28:"1230:group-group.seeallnotes";a:2:{i:0;R:16;i:1;R:9;}s:23:"1230:group-group.select";a:2:{i:0;R:16;i:1;R:9;}s:25:"1230:group-group.selector";a:2:{i:0;R:16;i:1;R:9;}s:21:"1230:group-group.size";a:2:{i:0;R:16;i:1;R:9;}s:24:"1230:group-group.started";a:2:{i:0;R:16;i:1;R:9;}s:22:"1230:group-group.state";a:2:{i:0;R:16;i:1;R:9;}s:25:"1230:group-group.statemsg";a:2:{i:0;R:16;i:1;R:9;}s:23:"1230:group-group.status";a:2:{i:0;R:16;i:1;R:9;}s:24:"1230:group-group.status1";a:2:{i:0;R:16;i:1;R:9;}s:27:"1230:group-group.statusmsg1";a:2:{i:0;R:16;i:1;R:9;}s:27:"1230:group-group.statusmsg2";a:2:{i:0;R:16;i:1;R:9;}s:27:"1230:group-group.statusmsg3";a:2:{i:0;R:16;i:1;R:9;}s:34:"1230:group-group.statuspreviewmsg1";a:2:{i:0;R:16;i:1;R:9;}s:34:"1230:group-group.statuspreviewmsg2";a:2:{i:0;R:16;i:1;R:9;}s:34:"1230:group-group.statuspreviewmsg3";a:2:{i:0;R:16;i:1;R:9;}s:34:"1230:group-group.statuspreviewmsg4";a:2:{i:0;R:16;i:1;R:9;}s:35:"1230:group-group.suggestednextsteps";a:2:{i:0;R:16;i:1;R:9;}s:29:"1230:group-group.suretodelete";a:2:{i:0;R:16;i:1;R:9;}s:33:"1230:group-group.suretotransferto";a:2:{i:0;R:16;i:1;R:9;}s:24:"1230:group-group.surveys";a:2:{i:0;R:16;i:1;R:9;}s:25:"1230:group-group.systemid";a:2:{i:0;R:16;i:1;R:9;}s:26:"1230:group-group.telephone";a:2:{i:0;R:16;i:1;R:9;}s:31:"1230:group-group.totalportfolio";a:2:{i:0;R:16;i:1;R:9;}s:26:"1230:group-group.trainedon";a:2:{i:0;R:16;i:1;R:9;}s:31:"1230:group-group.trainingstatus";a:2:{i:0;R:16;i:1;R:9;}s:25:"1230:group-group.transfer";a:2:{i:0;R:16;i:1;R:9;}s:31:"1230:group-group.transferbranch";a:2:{i:0;R:16;i:1;R:9;}s:35:"1230:group-group.transferbranchmsg1";a:2:{i:0;R:16;i:1;R:9;}s:35:"1230:group-group.transferbranchmsg2";a:2:{i:0;R:16;i:1;R:9;}s:35:"1230:group-group.transferbranchmsg3";a:2:{i:0;R:16;i:1;R:9;}s:32:"1230:group-group.transferconfirm";a:2:{i:0;R:16;i:1;R:9;}s:30:"1230:group-group.transfergroup";a:2:{i:0;R:16;i:1;R:9;}s:29:"1230:group-group.upcomcharges";a:2:{i:0;R:16;i:1;R:9;}s:21:"1230:group-group.view";a:2:{i:0;R:16;i:1;R:9;}s:39:"1230:group-group.viewallaccountactivity";a:2:{i:0;R:16;i:1;R:9;}s:32:"1230:group-group.viewgroupdetail";a:2:{i:0;R:16;i:1;R:9;}s:32:"1230:group-group.viewtrxnhistory";a:2:{i:0;R:16;i:1;R:9;}s:34:"1230:group-group.viewallactivities";a:2:{i:0;R:16;i:1;R:9;}s:38:"1230:group-group.viewallclosedaccounts";a:2:{i:0;R:16;i:1;R:9;}s:30:"1230:group-group.viewchangelog";a:2:{i:0;R:16;i:1;R:9;}s:28:"1230:group-group.viewdetails";a:2:{i:0;R:16;i:1;R:9;}s:36:"1230:group-group.viewgroupdetailsnow";a:2:{i:0;R:16;i:1;R:9;}s:35:"1230:group-group.viewhistoricaldata";a:2:{i:0;R:16;i:1;R:9;}s:22:"1230:group-group.waive";a:2:{i:0;R:16;i:1;R:9;}s:26:"1230:group-button.approved";a:2:{i:0;R:16;i:1;R:9;}s:24:"1230:group-button.cancel";a:2:{i:0;R:16;i:1;R:9;}s:26:"1230:group-button.continue";a:2:{i:0;R:16;i:1;R:9;}s:28:"1230:group-button.editstatus";a:2:{i:0;R:16;i:1;R:9;}s:25:"1230:group-button.preview";a:2:{i:0;R:16;i:1;R:9;}s:25:"1230:group-button.proceed";a:2:{i:0;R:16;i:1;R:9;}s:30:"1230:group-button.saveforlater";a:2:{i:0;R:16;i:1;R:9;}s:24:"1230:group-button.search";a:2:{i:0;R:16;i:1;R:9;}s:24:"1230:group-button.submit";a:2:{i:0;R:16;i:1;R:9;}s:35:"1230:group-button.submitforapproval";a:2:{i:0;R:16;i:1;R:9;}s:37:"1230:group-error.activity.not.allowed";a:2:{i:0;R:16;i:1;R:9;}s:36:"1230:group-error.versionnodonotmatch";a:2:{i:0;R:16;i:1;R:9;}s:49:"1230:group-errors.customer.clienthasactiveaccount";a:2:{i:0;R:16;i:1;R:9;}s:44:"1230:group-errors.customer.duplicatecustomer";a:2:{i:0;R:16;i:1;R:9;}s:47:"1230:group-errors.customer.duplicateperiodicfee";a:2:{i:0;R:16;i:1;R:9;}s:47:"1230:group-errors.customer.feefrequencymismatch";a:2:{i:0;R:16;i:1;R:9;}s:43:"1230:group-errors.customer.hasactiveaccount";a:2:{i:0;R:16;i:1;R:9;}s:45:"1230:group-errors.customer.invalidloanofficer";a:2:{i:0;R:16;i:1;R:9;}s:41:"1230:group-errors.customer.invalidmeeting";a:2:{i:0;R:16;i:1;R:9;}s:51:"1230:group-errors.customer.meetingfrequencymismatch";a:2:{i:0;R:16;i:1;R:9;}s:41:"1230:group-errors.customer.officeinactive";a:2:{i:0;R:16;i:1;R:9;}s:41:"1230:group-errors.customer.parentinactive";a:2:{i:0;R:16;i:1;R:9;}s:45:"1230:group-errors.customer.samebranchtransfer";a:2:{i:0;R:16;i:1;R:9;}s:54:"1230:group-errors.customer.sameparenttransferexception";a:2:{i:0;R:16;i:1;R:9;}s:50:"1230:group-errors.customer.specifycustomfieldvalue";a:2:{i:0;R:16;i:1;R:9;}s:42:"1230:group-errors.customer.customdatefield";a:2:{i:0;R:16;i:1;R:9;}s:43:"1230:group-errors.customer.specifyfeeamount";a:2:{i:0;R:16;i:1;R:9;}s:45:"1230:group-errors.customer.specifyloanofficer";a:2:{i:0;R:16;i:1;R:9;}s:41:"1230:group-errors.customer.specifymeeting";a:2:{i:0;R:16;i:1;R:9;}s:38:"1230:group-errors.customer.specifyname";a:2:{i:0;R:16;i:1;R:9;}s:51:"1230:group-errors.group.clientactiveaccountspresent";a:2:{i:0;R:16;i:1;R:9;}s:44:"1230:group-errors.group.clientisatitleholder";a:2:{i:0;R:16;i:1;R:9;}s:50:"1230:group-errors.group.groupactiveaccountspresent";a:2:{i:0;R:16;i:1;R:9;}s:36:"1230:group-errors.invalidtraineddate";a:2:{i:0;R:16;i:1;R:9;}s:33:"1230:group-errors.trainedcheckbox";a:2:{i:0;R:16;i:1;R:9;}s:35:"1230:group-errors.traineddateneeded";a:2:{i:0;R:16;i:1;R:9;}s:45:"1230:group-errors.assignedloanofficerrequired";a:2:{i:0;R:16;i:1;R:9;}s:32:"1230:group-errors.branchinactive";a:2:{i:0;R:16;i:1;R:9;}s:32:"1230:group-errors.centerinactive";a:2:{i:0;R:16;i:1;R:9;}s:30:"1230:group-errors.duplicatefee";a:2:{i:0;R:16;i:1;R:9;}s:32:"1230:group-errors.duplicategroup";a:2:{i:0;R:16;i:1;R:9;}s:29:"1230:group-errors.feeinactive";a:2:{i:0;R:16;i:1;R:9;}s:35:"1230:group-errors.feewithoutmeeting";a:2:{i:0;R:16;i:1;R:9;}s:25:"1230:group-errors.generic";a:2:{i:0;R:16;i:1;R:9;}s:39:"1230:group-errors.groupclientsareactive";a:2:{i:0;R:16;i:1;R:9;}s:43:"1230:group-errors.groupclientshasactiveloan";a:2:{i:0;R:16;i:1;R:9;}s:29:"1230:group-errors.groupcreate";a:2:{i:0;R:16;i:1;R:9;}s:40:"1230:group-errors.grouphasactiveaccounts";a:2:{i:0;R:16;i:1;R:9;}s:37:"1230:group-errors.groupinvalidversion";a:2:{i:0;R:16;i:1;R:9;}s:45:"1230:group-errors.grouploanofficernotassigned";a:2:{i:0;R:16;i:1;R:9;}s:31:"1230:group-errors.groupnotfound";a:2:{i:0;R:16;i:1;R:9;}s:29:"1230:group-errors.groupupdate";a:2:{i:0;R:16;i:1;R:9;}s:45:"1230:group-errors.impossibletocreategrouploan";a:2:{i:0;R:16;i:1;R:9;}s:37:"1230:group-errors.incompletechecklist";a:2:{i:0;R:16;i:1;R:9;}s:31:"1230:group-errors.invalidfeeamt";a:2:{i:0;R:16;i:1;R:9;}s:37:"1230:group-errors.loanofficerinactive";a:2:{i:0;R:16;i:1;R:9;}s:37:"1230:group-errors.loanofficerrequired";a:2:{i:0;R:16;i:1;R:9;}s:49:"1230:group-errors.loanofficerrequired_activegroup";a:2:{i:0;R:16;i:1;R:9;}s:27:"1230:group-errors.mandatory";a:2:{i:0;R:16;i:1;R:9;}s:33:"1230:group-errors.mandatoryselect";a:2:{i:0;R:16;i:1;R:9;}s:25:"1230:group-errors.maskmsg";a:2:{i:0;R:16;i:1;R:9;}s:27:"1230:group-errors.maxlength";a:2:{i:0;R:16;i:1;R:9;}s:36:"1230:group-errors.meetingnotassigned";a:2:{i:0;R:16;i:1;R:9;}s:34:"1230:group-errors.meetingrrequired";a:2:{i:0;R:16;i:1;R:9;}s:32:"1230:group-errors.nosearchstring";a:2:{i:0;R:16;i:1;R:9;}s:24:"1230:group-errors.prefix";a:2:{i:0;R:16;i:1;R:9;}s:37:"1230:group-errors.requiredcustomfield";a:2:{i:0;R:16;i:1;R:9;}s:28:"1230:group-errors.samebranch";a:2:{i:0;R:16;i:1;R:9;}s:28:"1230:group-errors.sameparent";a:2:{i:0;R:16;i:1;R:9;}s:24:"1230:group-errors.suffix";a:2:{i:0;R:16;i:1;R:9;}s:29:"1230:group-errors.traineddate";a:2:{i:0;R:16;i:1;R:9;}s:40:"1230:group-errors.transferex_activeloans";a:2:{i:0;R:16;i:1;R:9;}s:48:"1230:group-errors.transferex_clienthasactiveloan";a:2:{i:0;R:16;i:1;R:9;}s:49:"1230:group-errors.transferex_clienttransferfailed";a:2:{i:0;R:16;i:1;R:9;}s:34:"1230:group-errors.unknownexception";a:2:{i:0;R:16;i:1;R:9;}s:51:"1230:group-exception.framework.concurrencyexception";a:2:{i:0;R:16;i:1;R:9;}s:52:"1230:group-exception.framework.doublesubmitexception";a:2:{i:0;R:16;i:1;R:9;}s:59:"1230:group-exception.framework.fieldconfiguration.mandatory";a:2:{i:0;R:16;i:1;R:9;}s:29:"1230:group-group.applycharges";a:2:{i:0;R:16;i:1;R:9;}s:29:"1230:group-group.applypayment";a:2:{i:0;R:16;i:1;R:9;}s:37:"1230:group-warning.noclientsassigned1";a:2:{i:0;R:16;i:1;R:9;}s:37:"1230:group-warning.noclientsassigned2";a:2:{i:0;R:16;i:1;R:9;}s:37:"1230:group-warning.noclientsassigned3";a:2:{i:0;R:16;i:1;R:9;}s:14:"1230:holiday-1";a:2:{i:0;s:17:"out-mifos-holiday";i:1;R:9;}s:37:"1230:holiday-cf.lookupentity.entityid";a:2:{i:0;R:29842;i:1;R:9;}s:27:"1230:holiday-cfdef.entityid";a:2:{i:0;R:29842;i:1;R:9;}s:39:"1230:holiday-error.activity.not.allowed";a:2:{i:0;R:29842;i:1;R:9;}s:45:"1230:holiday-error.holiday.levelnotconfigured";a:2:{i:0;R:29842;i:1;R:9;}s:42:"1230:holiday-error.holiday.mandatory_field";a:2:{i:0;R:29842;i:1;R:9;}s:37:"1230:holiday-errors.fromdateexception";a:2:{i:0;R:29842;i:1;R:9;}s:53:"1230:holiday-errors.holiday.holidaylevelnotconfigured";a:2:{i:0;R:29842;i:1;R:9;}s:41:"1230:holiday-errors.holiday.parentinvalid";a:2:{i:0;R:29842;i:1;R:9;}s:43:"1230:holiday-errors.holiday.parentnotactive";a:2:{i:0;R:29842;i:1;R:9;}s:47:"1230:holiday-errors.holiday.shortname.minlength";a:2:{i:0;R:29842;i:1;R:9;}s:51:"1230:holiday-errors.holiday.updationhierarchyfailed";a:2:{i:0;R:29842;i:1;R:9;}s:26:"1230:holiday-errors.prefix";a:2:{i:0;R:29842;i:1;R:9;}s:26:"1230:holiday-errors.suffix";a:2:{i:0;R:29842;i:1;R:9;}s:37:"1230:holiday-errors.thrudateexception";a:2:{i:0;R:29842;i:1;R:9;}s:54:"1230:holiday-exception.framework.doublesubmitexception";a:2:{i:0;R:29842;i:1;R:9;}s:61:"1230:holiday-exception.framework.fieldconfiguration.mandatory";a:2:{i:0;R:29842;i:1;R:9;}s:38:"1230:holiday-holiday.applicableoffices";a:2:{i:0;R:29842;i:1;R:9;}s:36:"1230:holiday-holiday.holidayfromdate";a:2:{i:0;R:29842;i:1;R:9;}s:32:"1230:holiday-holiday.holidayname";a:2:{i:0;R:29842;i:1;R:9;}s:41:"1230:holiday-holiday.holidayrepaymentrule";a:2:{i:0;R:29842;i:1;R:9;}s:36:"1230:holiday-holiday.holidaythrudate";a:2:{i:0;R:29842;i:1;R:9;}s:49:"1230:holiday-holiday.address.address1.requiredmsg";a:2:{i:0;R:29842;i:1;R:9;}s:45:"1230:holiday-holiday.address.city.requiredmsg";a:2:{i:0;R:29842;i:1;R:9;}s:48:"1230:holiday-holiday.address.country.requiredmsg";a:2:{i:0;R:29842;i:1;R:9;}s:51:"1230:holiday-holiday.address.postalcode.requiredmsg";a:2:{i:0;R:29842;i:1;R:9;}s:46:"1230:holiday-holiday.address.state.requiredmsg";a:2:{i:0;R:29842;i:1;R:9;}s:29:"1230:holiday-holiday.asterisk";a:2:{i:0;R:29842;i:1;R:9;}s:34:"1230:holiday-holiday.button.cancel";a:2:{i:0;R:29842;i:1;R:9;}s:32:"1230:holiday-holiday.button.edit";a:2:{i:0;R:29842;i:1;R:9;}s:35:"1230:holiday-holiday.button.preview";a:2:{i:0;R:29842;i:1;R:9;}s:29:"1230:holiday-holiday.edittrxn";a:2:{i:0;R:29842;i:1;R:9;}s:41:"1230:holiday-holiday.error.creationfailed";a:2:{i:0;R:29842;i:1;R:9;}s:51:"1230:holiday-holiday.error.errorinloadingmasterdata";a:2:{i:0;R:29842;i:1;R:9;}s:36:"1230:holiday-holiday.error.getfailed";a:2:{i:0;R:29842;i:1;R:9;}s:44:"1230:holiday-holiday.error.hasactivechildern";a:2:{i:0;R:29842;i:1;R:9;}s:56:"1230:holiday-holiday.error.hasactiveholidaywiththislevel";a:2:{i:0;R:29842;i:1;R:9;}s:45:"1230:holiday-holiday.error.hasactivepersonnel";a:2:{i:0;R:29842;i:1;R:9;}s:37:"1230:holiday-holiday.error.loadfailed";a:2:{i:0;R:29842;i:1;R:9;}s:41:"1230:holiday-holiday.error.updationfailed";a:2:{i:0;R:29842;i:1;R:9;}s:50:"1230:holiday-holiday.error.updationhierarchyfailed";a:2:{i:0;R:29842;i:1;R:9;}s:46:"1230:holiday-holiday.formholidaytype.nameexist";a:2:{i:0;R:29842;i:1;R:9;}s:49:"1230:holiday-holiday.formholidaytype.pleaselelect";a:2:{i:0;R:29842;i:1;R:9;}s:48:"1230:holiday-holiday.formholidaytype.requiredmsg";a:2:{i:0;R:29842;i:1;R:9;}s:51:"1230:holiday-holiday.formholidaytype.shortnameexist";a:2:{i:0;R:29842;i:1;R:9;}s:50:"1230:holiday-holiday.formparentholiday.requiredmsg";a:2:{i:0;R:29842;i:1;R:9;}s:44:"1230:holiday-holiday.holidayname.displayname";a:2:{i:0;R:29842;i:1;R:9;}s:40:"1230:holiday-holiday.holidayname.maskmsg";a:2:{i:0;R:29842;i:1;R:9;}s:37:"1230:holiday-holiday.holidayshortname";a:2:{i:0;R:29842;i:1;R:9;}s:32:"1230:holiday-holiday.holidaytype";a:2:{i:0;R:29842;i:1;R:9;}s:39:"1230:holiday-holiday.labeladdholidaynow";a:2:{i:0;R:29842;i:1;R:9;}s:32:"1230:holiday-holiday.labeladdnew";a:2:{i:0;R:29842;i:1;R:9;}s:39:"1230:holiday-holiday.labeladdnewholiday";a:2:{i:0;R:29842;i:1;R:9;}s:42:"1230:holiday-holiday.labeladdnewholidaynow";a:2:{i:0;R:29842;i:1;R:9;}s:45:"1230:holiday-holiday.labeladditioninformation";a:2:{i:0;R:29842;i:1;R:9;}s:33:"1230:holiday-holiday.labeladdress";a:2:{i:0;R:29842;i:1;R:9;}s:34:"1230:holiday-holiday.labeladdress1";a:2:{i:0;R:29842;i:1;R:9;}s:34:"1230:holiday-holiday.labeladdress2";a:2:{i:0;R:29842;i:1;R:9;}s:34:"1230:holiday-holiday.labeladdress3";a:2:{i:0;R:29842;i:1;R:9;}s:37:"1230:holiday-holiday.labelareaholiday";a:2:{i:0;R:29842;i:1;R:9;}s:39:"1230:holiday-holiday.labelbranchholiday";a:2:{i:0;R:29842;i:1;R:9;}s:38:"1230:holiday-holiday.labelchangestatus";a:2:{i:0;R:29842;i:1;R:9;}s:44:"1230:holiday-holiday.labelchecklevelincluded";a:2:{i:0;R:29842;i:1;R:9;}s:30:"1230:holiday-holiday.labelcity";a:2:{i:0;R:29842;i:1;R:9;}s:43:"1230:holiday-holiday.labelcompletethefields";a:2:{i:0;R:29842;i:1;R:9;}s:33:"1230:holiday-holiday.labelcountry";a:2:{i:0;R:29842;i:1;R:9;}s:45:"1230:holiday-holiday.labelcreatedsuccessfully";a:2:{i:0;R:29842;i:1;R:9;}s:41:"1230:holiday-holiday.labeleditholidayinfo";a:2:{i:0;R:29842;i:1;R:9;}s:49:"1230:holiday-holiday.labelenterholidayinformation";a:2:{i:0;R:29842;i:1;R:9;}s:50:"1230:holiday-holiday.labelfieldsmarkedwithasterisk";a:2:{i:0;R:29842;i:1;R:9;}s:37:"1230:holiday-holiday.labelheadholiday";a:2:{i:0;R:29842;i:1;R:9;}s:40:"1230:holiday-holiday.labelholidayaddress";a:2:{i:0;R:29842;i:1;R:9;}s:47:"1230:holiday-holiday.labelholidayassignednumber";a:2:{i:0;R:29842;i:1;R:9;}s:37:"1230:holiday-holiday.labelholidaycode";a:2:{i:0;R:29842;i:1;R:9;}s:51:"1230:holiday-holiday.labelholidaycreatedinstruction";a:2:{i:0;R:29842;i:1;R:9;}s:40:"1230:holiday-holiday.labelholidaydetails";a:2:{i:0;R:29842;i:1;R:9;}s:44:"1230:holiday-holiday.labelholidayinformation";a:2:{i:0;R:29842;i:1;R:9;}s:37:"1230:holiday-holiday.labelholidayname";a:2:{i:0;R:29842;i:1;R:9;}s:42:"1230:holiday-holiday.labelholidayshortname";a:2:{i:0;R:29842;i:1;R:9;}s:37:"1230:holiday-holiday.labelholidaytype";a:2:{i:0;R:29842;i:1;R:9;}s:41:"1230:holiday-holiday.labelholidaysforyear";a:2:{i:0;R:29842;i:1;R:9;}s:35:"1230:holiday-holiday.labellinkadmin";a:2:{i:0;R:29842;i:1;R:9;}s:39:"1230:holiday-holiday.labellinkclickhere";a:2:{i:0;R:29842;i:1;R:9;}s:38:"1230:holiday-holiday.labellinkholidays";a:2:{i:0;R:29842;i:1;R:9;}s:56:"1230:holiday-holiday.labellinklistorganizationalholidays";a:2:{i:0;R:29842;i:1;R:9;}s:42:"1230:holiday-holiday.labellinkviewholidays";a:2:{i:0;R:29842;i:1;R:9;}s:58:"1230:holiday-holiday.labellinkviewholidaysorganizationwide";a:2:{i:0;R:29842;i:1;R:9;}s:48:"1230:holiday-holiday.labellinkviewofficeholidays";a:2:{i:0;R:29842;i:1;R:9;}s:56:"1230:holiday-holiday.labellinkvieworganizationalholidays";a:2:{i:0;R:29842;i:1;R:9;}s:47:"1230:holiday-holiday.labelmandatoryinstructions";a:2:{i:0;R:29842;i:1;R:9;}s:37:"1230:holiday-holiday.labelmaxminlevel";a:2:{i:0;R:29842;i:1;R:9;}s:28:"1230:holiday-holiday.labelno";a:2:{i:0;R:29842;i:1;R:9;}s:30:"1230:holiday-holiday.labelnote";a:2:{i:0;R:29842;i:1;R:9;}s:41:"1230:holiday-holiday.labelnoteinstruction";a:2:{i:0;R:29842;i:1;R:9;}s:39:"1230:holiday-holiday.labelparentholiday";a:2:{i:0;R:29842;i:1;R:9;}s:36:"1230:holiday-holiday.labelpleasenote";a:2:{i:0;R:29842;i:1;R:9;}s:36:"1230:holiday-holiday.labelpostalcode";a:2:{i:0;R:29842;i:1;R:9;}s:33:"1230:holiday-holiday.labelpresent";a:2:{i:0;R:29842;i:1;R:9;}s:40:"1230:holiday-holiday.labelpreviewholiday";a:2:{i:0;R:29842;i:1;R:9;}s:51:"1230:holiday-holiday.labelpreviewholidayinformation";a:2:{i:0;R:29842;i:1;R:9;}s:41:"1230:holiday-holiday.labelregionalholiday";a:2:{i:0;R:29842;i:1;R:9;}s:41:"1230:holiday-holiday.labelreviewandsubmit";a:2:{i:0;R:29842;i:1;R:9;}s:31:"1230:holiday-holiday.labelstate";a:2:{i:0;R:29842;i:1;R:9;}s:32:"1230:holiday-holiday.labelstatus";a:2:{i:0;R:29842;i:1;R:9;}s:44:"1230:holiday-holiday.labelsubregionalholiday";a:2:{i:0;R:29842;i:1;R:9;}s:35:"1230:holiday-holiday.labeltelephone";a:2:{i:0;R:29842;i:1;R:9;}s:50:"1230:holiday-holiday.labelviewholidayaddnewholiday";a:2:{i:0;R:29842;i:1;R:9;}s:44:"1230:holiday-holiday.labelviewholidaydetails";a:2:{i:0;R:29842;i:1;R:9;}s:46:"1230:holiday-holiday.labelviewholidayhierarchy";a:2:{i:0;R:29842;i:1;R:9;}s:48:"1230:holiday-holiday.labelviewholidayinstruction";a:2:{i:0;R:29842;i:1;R:9;}s:40:"1230:holiday-holiday.mandatory_selectbox";a:2:{i:0;R:29842;i:1;R:9;}s:38:"1230:holiday-holiday.mandatory_textbox";a:2:{i:0;R:29842;i:1;R:9;}s:44:"1230:holiday-holiday.numberofmemberspergroup";a:2:{i:0;R:29842;i:1;R:9;}s:45:"1230:holiday-holiday.numberofmembersperkendra";a:2:{i:0;R:29842;i:1;R:9;}s:34:"1230:holiday-holiday.parentholiday";a:2:{i:0;R:29842;i:1;R:9;}s:42:"1230:holiday-holiday.shortname.displayname";a:2:{i:0;R:29842;i:1;R:9;}s:26:"1230:holiday-holiday.title";a:2:{i:0;R:29842;i:1;R:9;}s:65:"1230:loan--------------------------------------------------------";a:2:{i:0;R:19;i:1;R:9;}s:14:"1230:loan-date";a:2:{i:0;R:19;i:1;R:9;}s:21:"1230:loan-description";a:2:{i:0;R:19;i:1;R:9;}s:17:"1230:loan-duedate";a:2:{i:0;R:19;i:1;R:9;}s:14:"1230:loan-fees";a:2:{i:0;R:19;i:1;R:9;}s:15:"1230:loan-field";a:2:{i:0;R:19;i:1;R:9;}s:21:"1230:loan-installment";a:2:{i:0;R:19;i:1;R:9;}s:18:"1230:loan-interest";a:2:{i:0;R:19;i:1;R:9;}s:30:"1230:loan-loan.collateralnotes";a:2:{i:0;R:19;i:1;R:9;}s:29:"1230:loan-loan.collateraltype";a:2:{i:0;R:19;i:1;R:9;}s:28:"1230:loan-loan.purposeofloan";a:2:{i:0;R:19;i:1;R:9;}s:19:"1230:loan-newstatus";a:2:{i:0;R:19;i:1;R:9;}s:18:"1230:loan-newvalue";a:2:{i:0;R:19;i:1;R:9;}s:19:"1230:loan-oldstatus";a:2:{i:0;R:19;i:1;R:9;}s:18:"1230:loan-oldvalue";a:2:{i:0;R:19;i:1;R:9;}s:19:"1230:loan-principal";a:2:{i:0;R:19;i:1;R:9;}s:15:"1230:loan-total";a:2:{i:0;R:19;i:1;R:9;}s:14:"1230:loan-user";a:2:{i:0;R:19;i:1;R:9;}s:24:"1230:loan-accounts.colon";a:2:{i:0;R:19;i:1;R:9;}s:31:"1230:loan-accounts.date_of_trxn";a:2:{i:0;R:19;i:1;R:9;}s:27:"1230:loan-accounts.edittrxn";a:2:{i:0;R:19;i:1;R:9;}s:30:"1230:loan-accounts.receiptdate";a:2:{i:0;R:19;i:1;R:9;}s:28:"1230:loan-accounts.receiptid";a:2:{i:0;R:19;i:1;R:9;}s:36:"1230:loan-error.activity.not.allowed";a:2:{i:0;R:19;i:1;R:9;}s:35:"1230:loan-error.incompletechecklist";a:2:{i:0;R:19;i:1;R:9;}s:38:"1230:loan-error.statuschangenotallowed";a:2:{i:0;R:19;i:1;R:9;}s:35:"1230:loan-error.versionnodonotmatch";a:2:{i:0;R:19;i:1;R:9;}s:48:"1230:loan-errors.account.specifycustomfieldvalue";a:2:{i:0;R:19;i:1;R:9;}s:40:"1230:loan-errors.account.customdatefield";a:2:{i:0;R:19;i:1;R:9;}s:33:"1230:loan-errors.alleastonerecord";a:2:{i:0;R:19;i:1;R:9;}s:67:"1230:loan-errors.cannotcreateloan.because.clientsarecreatedinfuture";a:2:{i:0;R:19;i:1;R:9;}s:63:"1230:loan-errors.cannotdisburseloan.because.otherloansareactive";a:2:{i:0;R:19;i:1;R:9;}s:60:"1230:loan-errors.cannotdisburseloan.because.unitemisedreason";a:2:{i:0;R:19;i:1;R:9;}s:58:"1230:loan-errors.cannotdisburseloan.because.disbursefailed";a:2:{i:0;R:19;i:1;R:9;}s:36:"1230:loan-errors.customernotselected";a:2:{i:0;R:19;i:1;R:9;}s:29:"1230:loan-errors.datemismatch";a:2:{i:0;R:19;i:1;R:9;}s:30:"1230:loan-errors.decimalformat";a:2:{i:0;R:19;i:1;R:9;}s:26:"1230:loan-errors.defminmax";a:2:{i:0;R:19;i:1;R:9;}s:23:"1230:loan-errors.double";a:2:{i:0;R:19;i:1;R:9;}s:38:"1230:loan-errors.emitype_not_supported";a:2:{i:0;R:19;i:1;R:9;}s:27:"1230:loan-errors.externalid";a:2:{i:0;R:19;i:1;R:9;}s:28:"1230:loan-errors.feeschedule";a:2:{i:0;R:19;i:1;R:9;}s:27:"1230:loan-errors.futuredate";a:2:{i:0;R:19;i:1;R:9;}s:24:"1230:loan-errors.generic";a:2:{i:0;R:19;i:1;R:9;}s:28:"1230:loan-errors.graceperiod";a:2:{i:0;R:19;i:1;R:9;}s:38:"1230:loan-errors.graceperiodproductdef";a:2:{i:0;R:19;i:1;R:9;}s:25:"1230:loan-errors.graceper";a:2:{i:0;R:19;i:1;R:9;}s:38:"1230:loan-errors.individualamountfield";a:2:{i:0;R:19;i:1;R:9;}s:45:"1230:loan-errors.individualpurposeofloanfield";a:2:{i:0;R:19;i:1;R:9;}s:44:"1230:loan-errors.individualsourceoffundfield";a:2:{i:0;R:19;i:1;R:9;}s:24:"1230:loan-errors.integer";a:2:{i:0;R:19;i:1;R:9;}s:47:"1230:loan-errors.interestdedcuted_principallast";a:2:{i:0;R:19;i:1;R:9;}s:46:"1230:loan-errors.interestdeducted_invalidgrace";a:2:{i:0;R:19;i:1;R:9;}s:40:"1230:loan-errors.invaliddisbursementdate";a:2:{i:0;R:19;i:1;R:9;}s:46:"1230:loan-errors.invaliddisbursementdateformat";a:2:{i:0;R:19;i:1;R:9;}s:51:"1230:loan-errors.invaliddisbursementdateforredoloan";a:2:{i:0;R:19;i:1;R:9;}s:33:"1230:loan-errors.invalidpersonnel";a:2:{i:0;R:19;i:1;R:9;}s:31:"1230:loan-errors.invalidtxndate";a:2:{i:0;R:19;i:1;R:9;}s:49:"1230:loan-errors.invalidtxndatemonthalreadyclosed";a:2:{i:0;R:19;i:1;R:9;}s:58:"1230:loan-errors.invalidtxndatelessthanlasttransactionmade";a:2:{i:0;R:19;i:1;R:9;}s:42:"1230:loan-errors.invalidtxndateofdisbursal";a:2:{i:0;R:19;i:1;R:9;}s:63:"1230:loan-errors.invalidtxndatewhendisbursalafterfirstrepayment";a:2:{i:0;R:19;i:1;R:9;}s:42:"1230:loan-errors.loan.duplicateperiodicfee";a:2:{i:0;R:19;i:1;R:9;}s:38:"1230:loan-errors.loan.specifyfeeamount";a:2:{i:0;R:19;i:1;R:9;}s:63:"1230:loan-errors.loanandpurposeentredwithoutselectingindividual";a:2:{i:0;R:19;i:1;R:9;}s:36:"1230:loan-errors.loancouldnotcoexist";a:2:{i:0;R:19;i:1;R:9;}s:56:"1230:loan-errors.loancouldnotcoexistacrosscustomerlevels";a:2:{i:0;R:19;i:1;R:9;}s:40:"1230:loan-errors.loanofferingnotselected";a:2:{i:0;R:19;i:1;R:9;}s:28:"1230:loan-errors.makepayment";a:2:{i:0;R:19;i:1;R:9;}s:26:"1230:loan-errors.mandatory";a:2:{i:0;R:19;i:1;R:9;}s:34:"1230:loan-errors.mandatory_textbox";a:2:{i:0;R:19;i:1;R:9;}s:39:"1230:loan-errors.mandatorymaximumlength";a:2:{i:0;R:19;i:1;R:9;}s:32:"1230:loan-errors.mandatoryselect";a:2:{i:0;R:19;i:1;R:9;}s:21:"1230:loan-errors.mask";a:2:{i:0;R:19;i:1;R:9;}s:23:"1230:loan-errors.maxmin";a:2:{i:0;R:19;i:1;R:9;}s:30:"1230:loan-errors.maximumlength";a:2:{i:0;R:19;i:1;R:9;}s:33:"1230:loan-errors.maxrangeisnotmet";a:2:{i:0;R:19;i:1;R:9;}s:30:"1230:loan-errors.minimumlength";a:2:{i:0;R:19;i:1;R:9;}s:33:"1230:loan-errors.minrangeisnotmet";a:2:{i:0;R:19;i:1;R:9;}s:34:"1230:loan-errors.mustnotbenegative";a:2:{i:0;R:19;i:1;R:9;}s:38:"1230:loan-errors.mustbegreaterthanzero";a:2:{i:0;R:19;i:1;R:9;}s:33:"1230:loan-errors.hasinvalidformat";a:2:{i:0;R:19;i:1;R:9;}s:32:"1230:loan-errors.nosearchresults";a:2:{i:0;R:19;i:1;R:9;}s:43:"1230:loan-errors.not_supported_durationtype";a:2:{i:0;R:19;i:1;R:9;}s:41:"1230:loan-errors.not_supported_feeformula";a:2:{i:0;R:19;i:1;R:9;}s:41:"1230:loan-errors.not_supported_feepayment";a:2:{i:0;R:19;i:1;R:9;}s:38:"1230:loan-errors.not_supported_feetype";a:2:{i:0;R:19;i:1;R:9;}s:44:"1230:loan-errors.not_supported_frequencytype";a:2:{i:0;R:19;i:1;R:9;}s:40:"1230:loan-errors.not_supported_gracetype";a:2:{i:0;R:19;i:1;R:9;}s:43:"1230:loan-errors.not_supported_interestdays";a:2:{i:0;R:19;i:1;R:9;}s:42:"1230:loan-errors.not_supported_meetingtype";a:2:{i:0;R:19;i:1;R:9;}s:41:"1230:loan-errors.not_valid_disbursal_date";a:2:{i:0;R:19;i:1;R:9;}s:55:"1230:loan-errors.numberofselectedmembersisnotatleasttwo";a:2:{i:0;R:19;i:1;R:9;}s:23:"1230:loan-errors.prefix";a:2:{i:0;R:19;i:1;R:9;}s:43:"1230:loan-errors.principallast_invalidgrace";a:2:{i:0;R:19;i:1;R:9;}s:22:"1230:loan-errors.range";a:2:{i:0;R:19;i:1;R:9;}s:39:"1230:loan-errors.repaymentdayisrequired";a:2:{i:0;R:19;i:1;R:9;}s:45:"1230:loan-errors.repaymentinputs_notspecified";a:2:{i:0;R:19;i:1;R:9;}s:31:"1230:loan-errors.selectanyvalue";a:2:{i:0;R:19;i:1;R:9;}s:37:"1230:loan-errors.specifyloanaccountid";a:2:{i:0;R:19;i:1;R:9;}s:23:"1230:loan-errors.suffix";a:2:{i:0;R:19;i:1;R:9;}s:70:"1230:loan-errors.sumofindividualamountsisnotintherangeofallowedamounts";a:2:{i:0;R:19;i:1;R:9;}s:34:"1230:loan-errors.validandmandatory";a:2:{i:0;R:19;i:1;R:9;}s:45:"1230:loan-errors.cashflowwarninginvalidformat";a:2:{i:0;R:19;i:1;R:9;}s:47:"1230:loan-errors.indebtednessratioinvalidformat";a:2:{i:0;R:19;i:1;R:9;}s:47:"1230:loan-errors.repaymentcapacityinvalidformat";a:2:{i:0;R:19;i:1;R:9;}s:49:"1230:loan-errors.payment.date.before.last.payment";a:2:{i:0;R:19;i:1;R:9;}s:48:"1230:loan-exception.accounts.changeinloanmeeting";a:2:{i:0;R:19;i:1;R:9;}s:35:"1230:loan-exception.accounts.create";a:2:{i:0;R:19;i:1;R:9;}s:53:"1230:loan-exception.accounts.create.customer.inactive";a:2:{i:0;R:19;i:1;R:9;}s:48:"1230:loan-exception.accounts.create.prd.inactive";a:2:{i:0;R:19;i:1;R:9;}s:50:"1230:loan-exception.framework.concurrencyexception";a:2:{i:0;R:19;i:1;R:9;}s:51:"1230:loan-exception.framework.doublesubmitexception";a:2:{i:0;R:19;i:1;R:9;}s:58:"1230:loan-exception.framework.fieldconfiguration.mandatory";a:2:{i:0;R:19;i:1;R:9;}s:58:"1230:loan-exceptions.application.loan.changeinloanoffering";a:2:{i:0;R:19;i:1;R:9;}s:58:"1230:loan-exceptions.application.loan.duplicateperiodicfee";a:2:{i:0;R:19;i:1;R:9;}s:63:"1230:loan-exceptions.application.loan.incompatiblefeerecurrence";a:2:{i:0;R:19;i:1;R:9;}s:67:"1230:loan-exceptions.application.loan.incompatiblemeetingrecurrence";a:2:{i:0;R:19;i:1;R:9;}s:61:"1230:loan-exceptions.application.loan.invaliddisbursementdate";a:2:{i:0;R:19;i:1;R:9;}s:71:"1230:loan-exceptions.application.loan.disbursementdatemustbeaworkingday";a:2:{i:0;R:19;i:1;R:9;}s:73:"1230:loan-exceptions.application.loan.disbursementdatemustnotbeinaholiday";a:2:{i:0;R:19;i:1;R:9;}s:52:"1230:loan-exceptions.application.loan.invalidfeeamnt";a:2:{i:0;R:19;i:1;R:9;}s:61:"1230:loan-exceptions.application.loan.invalidnoofinstallments";a:2:{i:0;R:19;i:1;R:9;}s:60:"1230:loan-exceptions.application.loan.invalidtransactiondate";a:2:{i:0;R:19;i:1;R:9;}s:70:"1230:loan-exceptions.application.loan.invalidtransactiondateforpayment";a:2:{i:0;R:19;i:1;R:9;}s:50:"1230:loan-exceptions.application.loan.invalidfield";a:2:{i:0;R:19;i:1;R:9;}s:54:"1230:loan-exceptions.application.loan.invalidloanfield";a:2:{i:0;R:19;i:1;R:9;}s:59:"1230:loan-exceptions.application.loan.loanupdationexception";a:2:{i:0;R:19;i:1;R:9;}s:65:"1230:loan-exceptions.application.loan.noofinstallmentslessthantwo";a:2:{i:0;R:19;i:1;R:9;}s:27:"1230:loan-loan.checklistmsg";a:2:{i:0;R:19;i:1;R:9;}s:26:"1230:loan-loan.clickcancel";a:2:{i:0;R:19;i:1;R:9;}s:28:"1230:loan-loan.clickcontinue";a:2:{i:0;R:19;i:1;R:9;}s:26:"1230:loan-loan.clicksubmit";a:2:{i:0;R:19;i:1;R:9;}s:34:"1230:loan-loan.confirmstatuschange";a:2:{i:0;R:19;i:1;R:9;}s:19:"1230:loan-loan.edit";a:2:{i:0;R:19;i:1;R:9;}s:25:"1230:loan-loan.editstatus";a:2:{i:0;R:19;i:1;R:9;}s:52:"1230:loan-loan.fieldsmarkedwithanasteriskarerequired";a:2:{i:0;R:19;i:1;R:9;}s:24:"1230:loan-loan.newstatus";a:2:{i:0;R:19;i:1;R:9;}s:26:"1230:loan-loan.nochecklist";a:2:{i:0;R:19;i:1;R:9;}s:31:"1230:loan-loan.noflagsavailable";a:2:{i:0;R:19;i:1;R:9;}s:31:"1230:loan-loan.nonotesavailable";a:2:{i:0;R:19;i:1;R:9;}s:21:"1230:loan-loan.select";a:2:{i:0;R:19;i:1;R:9;}s:33:"1230:loan-loan.selectexplaination";a:2:{i:0;R:19;i:1;R:9;}s:27:"1230:loan-loan.selectstatus";a:2:{i:0;R:19;i:1;R:9;}s:20:"1230:loan-loan.slash";a:2:{i:0;R:19;i:1;R:9;}s:37:"1230:loan-loan.timeofdisbursementfees";a:2:{i:0;R:19;i:1;R:9;}s:16:"1230:loan-loan.a";a:2:{i:0;R:19;i:1;R:9;}s:26:"1230:loan-loan.acc_details";a:2:{i:0;R:19;i:1;R:9;}s:23:"1230:loan-loan.acc_info";a:2:{i:0;R:19;i:1;R:9;}s:24:"1230:loan-loan.acc_owner";a:2:{i:0;R:19;i:1;R:9;}s:28:"1230:loan-loan.acc_statement";a:2:{i:0;R:19;i:1;R:9;}s:26:"1230:loan-loan.acc_summary";a:2:{i:0;R:19;i:1;R:9;}s:26:"1230:loan-loan.accountbyid";a:2:{i:0;R:19;i:1;R:9;}s:35:"1230:loan-loan.accountstatuschanged";a:2:{i:0;R:19;i:1;R:9;}s:30:"1230:loan-loan.accountassigned";a:2:{i:0;R:19;i:1;R:9;}s:24:"1230:loan-loan.accountid";a:2:{i:0;R:19;i:1;R:9;}s:28:"1230:loan-loan.accountnumber";a:2:{i:0;R:19;i:1;R:9;}s:27:"1230:loan-loan.accountowner";a:2:{i:0;R:19;i:1;R:9;}s:23:"1230:loan-loan.accounts";a:2:{i:0;R:19;i:1;R:9;}s:19:"1230:loan-loan.accs";a:2:{i:0;R:19;i:1;R:9;}s:41:"1230:loan-loan.accswithfollowingidcreated";a:2:{i:0;R:19;i:1;R:9;}s:28:"1230:loan-loan.accwithoutsub";a:2:{i:0;R:19;i:1;R:9;}s:23:"1230:loan-loan.activity";a:2:{i:0;R:19;i:1;R:9;}s:23:"1230:loan-loan.add_note";a:2:{i:0;R:19;i:1;R:9;}s:28:"1230:loan-loan.additionalfee";a:2:{i:0;R:19;i:1;R:9;}s:29:"1230:loan-loan.additionalinfo";a:2:{i:0;R:19;i:1;R:9;}s:25:"1230:loan-loan.addnewnote";a:2:{i:0;R:19;i:1;R:9;}s:22:"1230:loan-loan.addnote";a:2:{i:0;R:19;i:1;R:9;}s:20:"1230:loan-loan.admin";a:2:{i:0;R:19;i:1;R:9;}s:29:"1230:loan-loan.admin_set_fees";a:2:{i:0;R:19;i:1;R:9;}s:30:"1230:loan-loan.allowedinterest";a:2:{i:0;R:19;i:1;R:9;}s:29:"1230:loan-loan.allowed_amount";a:2:{i:0;R:19;i:1;R:9;}s:30:"1230:loan-loan.allowed_amount1";a:2:{i:0;R:19;i:1;R:9;}s:32:"1230:loan-loan.allowed_interest1";a:2:{i:0;R:19;i:1;R:9;}s:32:"1230:loan-loan.allowed_interest2";a:2:{i:0;R:19;i:1;R:9;}s:33:"1230:loan-loan.allowed_no_of_inst";a:2:{i:0;R:19;i:1;R:9;}s:26:"1230:loan-loan.allpayments";a:2:{i:0;R:19;i:1;R:9;}s:31:"1230:loan-loan.alreadydisbursed";a:2:{i:0;R:19;i:1;R:9;}s:21:"1230:loan-loan.amount";a:2:{i:0;R:19;i:1;R:9;}s:30:"1230:loan-loan.amountdisbursed";a:2:{i:0;R:19;i:1;R:9;}s:25:"1230:loan-loan.amount_due";a:2:{i:0;R:19;i:1;R:9;}s:24:"1230:loan-loan.amountdue";a:2:{i:0;R:19;i:1;R:9;}s:25:"1230:loan-loan.amountpaid";a:2:{i:0;R:19;i:1;R:9;}s:18:"1230:loan-loan.amt";a:2:{i:0;R:19;i:1;R:9;}s:23:"1230:loan-loan.amt_paid";a:2:{i:0;R:19;i:1;R:9;}s:31:"1230:loan-loan.anti_disburse_dd";a:2:{i:0;R:19;i:1;R:9;}s:22:"1230:loan-loan.app_fee";a:2:{i:0;R:19;i:1;R:9;}s:26:"1230:loan-loan.app_fee_amt";a:2:{i:0;R:19;i:1;R:9;}s:24:"1230:loan-loan.appl_fees";a:2:{i:0;R:19;i:1;R:9;}s:29:"1230:loan-loan.apply_add_fees";a:2:{i:0;R:19;i:1;R:9;}s:31:"1230:loan-loan.apply_adjustment";a:2:{i:0;R:19;i:1;R:9;}s:28:"1230:loan-loan.apply_charges";a:2:{i:0;R:19;i:1;R:9;}s:37:"1230:loan-loan.view_original_schedule";a:2:{i:0;R:19;i:1;R:9;}s:28:"1230:loan-loan.apply_payment";a:2:{i:0;R:19;i:1;R:9;}s:31:"1230:loan-loan.apply_prepayment";a:2:{i:0;R:19;i:1;R:9;}s:26:"1230:loan-loan.apply_trans";a:2:{i:0;R:19;i:1;R:9;}s:23:"1230:loan-loan.approved";a:2:{i:0;R:19;i:1;R:9;}s:18:"1230:loan-loan.apr";a:2:{i:0;R:19;i:1;R:9;}s:25:"1230:loan-loan.areyousure";a:2:{i:0;R:19;i:1;R:9;}s:21:"1230:loan-loan.arrear";a:2:{i:0;R:19;i:1;R:9;}s:23:"1230:loan-loan.asterisk";a:2:{i:0;R:19;i:1;R:9;}s:22:"1230:loan-loan.balance";a:2:{i:0;R:19;i:1;R:9;}s:34:"1230:loan-loan.balance_at_disburse";a:2:{i:0;R:19;i:1;R:9;}s:23:"1230:loan-loan.bankname";a:2:{i:0;R:19;i:1;R:9;}s:21:"1230:loan-loan.branch";a:2:{i:0;R:19;i:1;R:9;}s:24:"1230:loan-loan.branch-01";a:2:{i:0;R:19;i:1;R:9;}s:32:"1230:loan-loan.business_work_act";a:2:{i:0;R:19;i:1;R:9;}s:21:"1230:loan-loan.cancel";a:2:{i:0;R:19;i:1;R:9;}s:25:"1230:loan-loan.change_log";a:2:{i:0;R:19;i:1;R:9;}s:27:"1230:loan-loan.changestatus";a:2:{i:0;R:19;i:1;R:9;}s:30:"1230:loan-loan.charged_applied";a:2:{i:0;R:19;i:1;R:9;}s:22:"1230:loan-loan.charges";a:2:{i:0;R:19;i:1;R:9;}s:26:"1230:loan-loan.checknumber";a:2:{i:0;R:19;i:1;R:9;}s:28:"1230:loan-loan.checktoremove";a:2:{i:0;R:19;i:1;R:9;}s:27:"1230:loan-loan.check_remove";a:2:{i:0;R:19;i:1;R:9;}s:35:"1230:loan-loan.checkboxpaymentvalue";a:2:{i:0;R:19;i:1;R:9;}s:32:"1230:loan-loan.clickcancelreturn";a:2:{i:0;R:19;i:1;R:9;}s:31:"1230:loan-loan.clickcanceladmin";a:2:{i:0;R:19;i:1;R:9;}s:32:"1230:loan-loan.client/group_name";a:2:{i:0;R:19;i:1;R:9;}s:30:"1230:loan-loan.coll_sheet_type";a:2:{i:0;R:19;i:1;R:9;}s:32:"1230:loan-loan.collateraldetails";a:2:{i:0;R:19;i:1;R:9;}s:31:"1230:loan-loan.collateral_notes";a:2:{i:0;R:19;i:1;R:9;}s:30:"1230:loan-loan.collateral_type";a:2:{i:0;R:19;i:1;R:9;}s:20:"1230:loan-loan.colon";a:2:{i:0;R:19;i:1;R:9;}s:29:"1230:loan-loan.complete_field";a:2:{i:0;R:19;i:1;R:9;}s:23:"1230:loan-loan.congo1_1";a:2:{i:0;R:19;i:1;R:9;}s:23:"1230:loan-loan.congo1_2";a:2:{i:0;R:19;i:1;R:9;}s:21:"1230:loan-loan.congo2";a:2:{i:0;R:19;i:1;R:9;}s:21:"1230:loan-loan.congo3";a:2:{i:0;R:19;i:1;R:9;}s:30:"1230:loan-loan.consultancy_fee";a:2:{i:0;R:19;i:1;R:9;}s:23:"1230:loan-loan.continue";a:2:{i:0;R:19;i:1;R:9;}s:21:"1230:loan-loan.create";a:2:{i:0;R:19;i:1;R:9;}s:29:"1230:loan-loan.createmultiple";a:2:{i:0;R:19;i:1;R:9;}s:28:"1230:loan-loan.createaccount";a:2:{i:0;R:19;i:1;R:9;}s:30:"1230:loan-loan.create_loan_acc";a:2:{i:0;R:19;i:1;R:9;}s:21:"1230:loan-loan.credit";a:2:{i:0;R:19;i:1;R:9;}s:28:"1230:loan-loan.currentstatus";a:2:{i:0;R:19;i:1;R:9;}s:34:"1230:loan-loan.current_installment";a:2:{i:0;R:19;i:1;R:9;}s:19:"1230:loan-loan.date";a:2:{i:0;R:19;i:1;R:9;}s:24:"1230:loan-loan.date_paid";a:2:{i:0;R:19;i:1;R:9;}s:26:"1230:loan-loan.date_posted";a:2:{i:0;R:19;i:1;R:9;}s:33:"1230:loan-loan.dateofdisb/payment";a:2:{i:0;R:19;i:1;R:9;}s:28:"1230:loan-loan.dateofpayment";a:2:{i:0;R:19;i:1;R:9;}s:29:"1230:loan-loan.waiverinterest";a:2:{i:0;R:19;i:1;R:9;}s:34:"1230:loan-loan.donotwaiverinterest";a:2:{i:0;R:19;i:1;R:9;}s:36:"1230:loan-loan.waiverinterestwarning";a:2:{i:0;R:19;i:1;R:9;}s:36:"1230:loan-loan.waiverinterestpreview";a:2:{i:0;R:19;i:1;R:9;}s:25:"1230:loan-loan.dateoftrxn";a:2:{i:0;R:19;i:1;R:9;}s:27:"1230:loan-loan.days_arrears";a:2:{i:0;R:19;i:1;R:9;}s:20:"1230:loan-loan.debit";a:2:{i:0;R:19;i:1;R:9;}s:21:"1230:loan-loan.defamt";a:2:{i:0;R:19;i:1;R:9;}s:22:"1230:loan-loan.definst";a:2:{i:0;R:19;i:1;R:9;}s:25:"1230:loan-loan.defaultfee";a:2:{i:0;R:19;i:1;R:9;}s:26:"1230:loan-loan.delinquency";a:2:{i:0;R:19;i:1;R:9;}s:19:"1230:loan-loan.desc";a:2:{i:0;R:19;i:1;R:9;}s:26:"1230:loan-loan.description";a:2:{i:0;R:19;i:1;R:9;}s:23:"1230:loan-loan.dis_date";a:2:{i:0;R:19;i:1;R:9;}s:22:"1230:loan-loan.disb_pr";a:2:{i:0;R:19;i:1;R:9;}s:26:"1230:loan-loan.disbdetails";a:2:{i:0;R:19;i:1;R:9;}s:24:"1230:loan-loan.disbursal";a:2:{i:0;R:19;i:1;R:9;}s:28:"1230:loan-loan.disbursaldate";a:2:{i:0;R:19;i:1;R:9;}s:23:"1230:loan-loan.disburse";a:2:{i:0;R:19;i:1;R:9;}s:27:"1230:loan-loan.disburseloan";a:2:{i:0;R:19;i:1;R:9;}s:23:"1230:loan-loan.due_date";a:2:{i:0;R:19;i:1;R:9;}s:22:"1230:loan-loan.duedate";a:2:{i:0;R:19;i:1;R:9;}s:23:"1230:loan-loan.edittrxn";a:2:{i:0;R:19;i:1;R:9;}s:28:"1230:loan-loan.edit_acc_info";a:2:{i:0;R:19;i:1;R:9;}s:30:"1230:loan-loan.edit_acc_status";a:2:{i:0;R:19;i:1;R:9;}s:24:"1230:loan-loan.edit_info";a:2:{i:0;R:19;i:1;R:9;}s:28:"1230:loan-loan.edit_loan_acc";a:2:{i:0;R:19;i:1;R:9;}s:24:"1230:loan-loan.edittrans";a:2:{i:0;R:19;i:1;R:9;}s:23:"1230:loan-loan.edu_loan";a:2:{i:0;R:19;i:1;R:9;}s:27:"1230:loan-loan.enteraccinfo";a:2:{i:0;R:19;i:1;R:9;}s:35:"1230:loan-loan.enter_client_details";a:2:{i:0;R:19;i:1;R:9;}s:33:"1230:loan-loan.enterdetailssearch";a:2:{i:0;R:19;i:1;R:9;}s:33:"1230:loan-loan.enterdetailssubmit";a:2:{i:0;R:19;i:1;R:9;}s:33:"1230:loan-loan.enter_loan_accinfo";a:2:{i:0;R:19;i:1;R:9;}s:25:"1230:loan-loan.enter_note";a:2:{i:0;R:19;i:1;R:9;}s:26:"1230:loan-loan.enteramount";a:2:{i:0;R:19;i:1;R:9;}s:28:"1230:loan-loan.entityaccinfo";a:2:{i:0;R:19;i:1;R:9;}s:23:"1230:loan-loan.feeamtis";a:2:{i:0;R:19;i:1;R:9;}s:21:"1230:loan-loan.fee_pd";a:2:{i:0;R:19;i:1;R:9;}s:22:"1230:loan-loan.fee_rec";a:2:{i:0;R:19;i:1;R:9;}s:23:"1230:loan-loan.fee_type";a:2:{i:0;R:19;i:1;R:9;}s:19:"1230:loan-loan.fees";a:2:{i:0;R:19;i:1;R:9;}s:20:"1230:loan-loan.field";a:2:{i:0;R:19;i:1;R:9;}s:26:"1230:loan-loan.folldetails";a:2:{i:0;R:19;i:1;R:9;}s:27:"1230:loan-loan.freq_of_inst";a:2:{i:0;R:19;i:1;R:9;}s:29:"1230:loan-loan.future_install";a:2:{i:0;R:19;i:1;R:9;}s:30:"1230:loan-loan.generate_report";a:2:{i:0;R:19;i:1;R:9;}s:21:"1230:loan-loan.gl_cod";a:2:{i:0;R:19;i:1;R:9;}s:39:"1230:loan-loan.graceperiodforrepayments";a:2:{i:0;R:19;i:1;R:9;}s:27:"1230:loan-loan.grace_period";a:2:{i:0;R:19;i:1;R:9;}s:32:"1230:loan-loan.grace_period_type";a:2:{i:0;R:19;i:1;R:9;}s:26:"1230:loan-loan.graceperdur";a:2:{i:0;R:19;i:1;R:9;}s:32:"1230:loan-loan.hope&effort_group";a:2:{i:0;R:19;i:1;R:9;}s:31:"1230:loan-loan.ifyouclicksubmit";a:2:{i:0;R:19;i:1;R:9;}s:34:"1230:loan-loan.individual.schedule";a:2:{i:0;R:19;i:1;R:9;}s:18:"1230:loan-loan.ins";a:2:{i:0;R:19;i:1;R:9;}s:19:"1230:loan-loan.inst";a:2:{i:0;R:19;i:1;R:9;}s:27:"1230:loan-loan.install_paid";a:2:{i:0;R:19;i:1;R:9;}s:34:"1230:loan-loan.installment_details";a:2:{i:0;R:19;i:1;R:9;}s:27:"1230:loan-loan.installments";a:2:{i:0;R:19;i:1;R:9;}s:28:"1230:loan-loan.instance_info";a:2:{i:0;R:19;i:1;R:9;}s:28:"1230:loan-loan.instance_name";a:2:{i:0;R:19;i:1;R:9;}s:27:"1230:loan-loan.instancename";a:2:{i:0;R:19;i:1;R:9;}s:24:"1230:loan-loan.instt_due";a:2:{i:0;R:19;i:1;R:9;}s:25:"1230:loan-loan.instt_paid";a:2:{i:0;R:19;i:1;R:9;}s:23:"1230:loan-loan.int_rate";a:2:{i:0;R:19;i:1;R:9;}s:23:"1230:loan-loan.interest";a:2:{i:0;R:19;i:1;R:9;}s:35:"1230:loan-loan.interestdisbursement";a:2:{i:0;R:19;i:1;R:9;}s:27:"1230:loan-loan.interestrate";a:2:{i:0;R:19;i:1;R:9;}s:31:"1230:loan-loan.interestratetype";a:2:{i:0;R:19;i:1;R:9;}s:28:"1230:loan-loan.interestrules";a:2:{i:0;R:19;i:1;R:9;}s:30:"1230:loan-loan.interest_amount";a:2:{i:0;R:19;i:1;R:9;}s:36:"1230:loan-loan.interest_cal_payments";a:2:{i:0;R:19;i:1;R:9;}s:28:"1230:loan-loan.interest_disb";a:2:{i:0;R:19;i:1;R:9;}s:28:"1230:loan-loan.interest_rate";a:2:{i:0;R:19;i:1;R:9;}s:28:"1230:loan-loan.interest_type";a:2:{i:0;R:19;i:1;R:9;}s:23:"1230:loan-loan.intr_rec";a:2:{i:0;R:19;i:1;R:9;}s:26:"1230:loan-loan.intratetype";a:2:{i:0;R:19;i:1;R:9;}s:27:"1230:loan-loan.is_redo_loan";a:2:{i:0;R:19;i:1;R:9;}s:31:"1230:loan-loan.kanakpura_center";a:2:{i:0;R:19;i:1;R:9;}s:32:"1230:loan-loan.lastpaymentamount";a:2:{i:0;R:19;i:1;R:9;}s:37:"1230:loan-loan.lastpaymentdescription";a:2:{i:0;R:19;i:1;R:9;}s:33:"1230:loan-loan.loanaccountdetails";a:2:{i:0;R:19;i:1;R:9;}s:28:"1230:loan-loan.loanamountfor";a:2:{i:0;R:19;i:1;R:9;}s:26:"1230:loan-loan.loanbalance";a:2:{i:0;R:19;i:1;R:9;}s:31:"1230:loan-loan.loaninstancename";a:2:{i:0;R:19;i:1;R:9;}s:26:"1230:loan-loan.loanofficer";a:2:{i:0;R:19;i:1;R:9;}s:33:"1230:loan-loan.loanproductsummary";a:2:{i:0;R:19;i:1;R:9;}s:31:"1230:loan-loan.loan_acc_details";a:2:{i:0;R:19;i:1;R:9;}s:26:"1230:loan-loan.loan_amount";a:2:{i:0;R:19;i:1;R:9;}s:27:"1230:loan-loan.loan_balance";a:2:{i:0;R:19;i:1;R:9;}s:25:"1230:loan-loan.loanamount";a:2:{i:0;R:19;i:1;R:9;}s:30:"1230:loan-loan.maintenance_fee";a:2:{i:0;R:19;i:1;R:9;}s:28:"1230:loan-loan.maturity_date";a:2:{i:0;R:19;i:1;R:9;}s:22:"1230:loan-loan.maxinst";a:2:{i:0;R:19;i:1;R:9;}s:25:"1230:loan-loan.maxintrate";a:2:{i:0;R:19;i:1;R:9;}s:25:"1230:loan-loan.maxloanamt";a:2:{i:0;R:19;i:1;R:9;}s:30:"1230:loan-loan.meeting_charges";a:2:{i:0;R:19;i:1;R:9;}s:29:"1230:loan-loan.member_fee_amt";a:2:{i:0;R:19;i:1;R:9;}s:29:"1230:loan-loan.membership_fee";a:2:{i:0;R:19;i:1;R:9;}s:22:"1230:loan-loan.mininst";a:2:{i:0;R:19;i:1;R:9;}s:25:"1230:loan-loan.minintrate";a:2:{i:0;R:19;i:1;R:9;}s:25:"1230:loan-loan.minloanamt";a:2:{i:0;R:19;i:1;R:9;}s:30:"1230:loan-loan.missed_payments";a:2:{i:0;R:19;i:1;R:9;}s:30:"1230:loan-loan.mode_of_payment";a:2:{i:0;R:19;i:1;R:9;}s:18:"1230:loan-loan.mon";a:2:{i:0;R:19;i:1;R:9;}s:23:"1230:loan-loan.month(s)";a:2:{i:0;R:19;i:1;R:9;}s:27:"1230:loan-loan.more_details";a:2:{i:0;R:19;i:1;R:9;}s:18:"1230:loan-loan.new";a:2:{i:0;R:19;i:1;R:9;}s:25:"1230:loan-loan.new_status";a:2:{i:0;R:19;i:1;R:9;}s:22:"1230:loan-loan.new_val";a:2:{i:0;R:19;i:1;R:9;}s:24:"1230:loan-loan.next_inst";a:2:{i:0;R:19;i:1;R:9;}s:28:"1230:loan-loan.next_inst_due";a:2:{i:0;R:19;i:1;R:9;}s:35:"1230:loan-loan.next_install_details";a:2:{i:0;R:19;i:1;R:9;}s:17:"1230:loan-loan.no";a:2:{i:0;R:19;i:1;R:9;}s:31:"1230:loan-loan.noofinstallments";a:2:{i:0;R:19;i:1;R:9;}s:25:"1230:loan-loan.no_of_inst";a:2:{i:0;R:19;i:1;R:9;}s:29:"1230:loan-loan.nopaymentsmade";a:2:{i:0;R:19;i:1;R:9;}s:19:"1230:loan-loan.note";a:2:{i:0;R:19;i:1;R:9;}s:20:"1230:loan-loan.notes";a:2:{i:0;R:19;i:1;R:9;}s:26:"1230:loan-loan.of_payments";a:2:{i:0;R:19;i:1;R:9;}s:25:"1230:loan-loan.old_status";a:2:{i:0;R:19;i:1;R:9;}s:22:"1230:loan-loan.old_val";a:2:{i:0;R:19;i:1;R:9;}s:26:"1230:loan-loan.once_20days";a:2:{i:0;R:19;i:1;R:9;}s:32:"1230:loan-loan.one_time_acc_fees";a:2:{i:0;R:19;i:1;R:9;}s:37:"1230:loan-loan.one_time_acc_penalties";a:2:{i:0;R:19;i:1;R:9;}s:32:"1230:loan-loan.opennewaccountfor";a:2:{i:0;R:19;i:1;R:9;}s:33:"1230:loan-loan.opennewloanaccount";a:2:{i:0;R:19;i:1;R:9;}s:36:"1230:loan-loan.opennewsavingsaccount";a:2:{i:0;R:19;i:1;R:9;}s:23:"1230:loan-loan.open_new";a:2:{i:0;R:19;i:1;R:9;}s:27:"1230:loan-loan.open_new_acc";a:2:{i:0;R:19;i:1;R:9;}s:33:"1230:loan-loan.open_new_insur_acc";a:2:{i:0;R:19;i:1;R:9;}s:32:"1230:loan-loan.open_new_loan_acc";a:2:{i:0;R:19;i:1;R:9;}s:31:"1230:loan-loan.open_new_sav_acc";a:2:{i:0;R:19;i:1;R:9;}s:27:"1230:loan-loan.originalloan";a:2:{i:0;R:19;i:1;R:9;}s:28:"1230:loan-loan.original_loan";a:2:{i:0;R:19;i:1;R:9;}s:33:"1230:loan-loan.outstandingbalance";a:2:{i:0;R:19;i:1;R:9;}s:28:"1230:loan-loan.overdueamount";a:2:{i:0;R:19;i:1;R:9;}s:27:"1230:loan-loan.overpayments";a:2:{i:0;R:19;i:1;R:9;}s:33:"1230:loan-loan.overpayments_clear";a:2:{i:0;R:19;i:1;R:9;}s:19:"1230:loan-loan.paid";a:2:{i:0;R:19;i:1;R:9;}s:23:"1230:loan-loan.past_due";a:2:{i:0;R:19;i:1;R:9;}s:31:"1230:loan-loan.past_due_details";a:2:{i:0;R:19;i:1;R:9;}s:22:"1230:loan-loan.pastdue";a:2:{i:0;R:19;i:1;R:9;}s:22:"1230:loan-loan.payment";a:2:{i:0;R:19;i:1;R:9;}s:26:"1230:loan-loan.paymentdate";a:2:{i:0;R:19;i:1;R:9;}s:26:"1230:loan-loan.paymenttype";a:2:{i:0;R:19;i:1;R:9;}s:25:"1230:loan-loan.payment_id";a:2:{i:0;R:19;i:1;R:9;}s:29:"1230:loan-loan.paymentdetails";a:2:{i:0;R:19;i:1;R:9;}s:24:"1230:loan-loan.paymentid";a:2:{i:0;R:19;i:1;R:9;}s:23:"1230:loan-loan.payments";a:2:{i:0;R:19;i:1;R:9;}s:27:"1230:loan-loan.paymentsmade";a:2:{i:0;R:19;i:1;R:9;}s:22:"1230:loan-loan.penalty";a:2:{i:0;R:19;i:1;R:9;}s:25:"1230:loan-loan.penalty_01";a:2:{i:0;R:19;i:1;R:9;}s:25:"1230:loan-loan.penalty_02";a:2:{i:0;R:19;i:1;R:9;}s:27:"1230:loan-loan.penalty_type";a:2:{i:0;R:19;i:1;R:9;}s:34:"1230:loan-loan.performance_history";a:2:{i:0;R:19;i:1;R:9;}s:26:"1230:loan-loan.periodicity";a:2:{i:0;R:19;i:1;R:9;}s:34:"1230:loan-loan.periodicitytypeflat";a:2:{i:0;R:19;i:1;R:9;}s:34:"1230:loan-loan.periodicitytyperate";a:2:{i:0;R:19;i:1;R:9;}s:37:"1230:loan-loan.periodicity_annual_fee";a:2:{i:0;R:19;i:1;R:9;}s:39:"1230:loan-loan.periodicity_one_time_fee";a:2:{i:0;R:19;i:1;R:9;}s:26:"1230:loan-loan.phonenumber";a:2:{i:0;R:19;i:1;R:9;}s:23:"1230:loan-loan.plz_note";a:2:{i:0;R:19;i:1;R:9;}s:24:"1230:loan-loan.posted_by";a:2:{i:0;R:19;i:1;R:9;}s:20:"1230:loan-loan.pr_pd";a:2:{i:0;R:19;i:1;R:9;}s:22:"1230:loan-loan.preview";a:2:{i:0;R:19;i:1;R:9;}s:30:"1230:loan-loan.preview_accinfo";a:2:{i:0;R:19;i:1;R:9;}s:24:"1230:loan-loan.principal";a:2:{i:0;R:19;i:1;R:9;}s:28:"1230:loan-loan.principle_due";a:2:{i:0;R:19;i:1;R:9;}s:30:"1230:loan-loan.product_summary";a:2:{i:0;R:19;i:1;R:9;}s:28:"1230:loan-loan.proposed_date";a:2:{i:0;R:19;i:1;R:9;}s:32:"1230:loan-loan.rec_creation_date";a:2:{i:0;R:19;i:1;R:9;}s:24:"1230:loan-loan.receiptid";a:2:{i:0;R:19;i:1;R:9;}s:28:"1230:loan-loan.receiptnumber";a:2:{i:0;R:19;i:1;R:9;}s:26:"1230:loan-loan.receiptdate";a:2:{i:0;R:19;i:1;R:9;}s:29:"1230:loan-loan.recentactivity";a:2:{i:0;R:19;i:1;R:9;}s:27:"1230:loan-loan.recent_notes";a:2:{i:0;R:19;i:1;R:9;}s:33:"1230:loan-loan.recurring_acc_fees";a:2:{i:0;R:19;i:1;R:9;}s:38:"1230:loan-loan.recurring_acc_penalties";a:2:{i:0;R:19;i:1;R:9;}s:26:"1230:loan-loan.redoaccount";a:2:{i:0;R:19;i:1;R:9;}s:29:"1230:loan-loan.redo_loan_note";a:2:{i:0;R:19;i:1;R:9;}s:21:"1230:loan-loan.remove";a:2:{i:0;R:19;i:1;R:9;}s:20:"1230:loan-loan.repay";a:2:{i:0;R:19;i:1;R:9;}s:29:"1230:loan-loan.repaymentrules";a:2:{i:0;R:19;i:1;R:9;}s:29:"1230:loan-loan.repayment_date";a:2:{i:0;R:19;i:1;R:9;}s:30:"1230:loan-loan.repayment_sched";a:2:{i:0;R:19;i:1;R:9;}s:37:"1230:loan-loan.returntoaccountdetails";a:2:{i:0;R:19;i:1;R:9;}s:40:"1230:loan-loan.returntorepaymentschedule";a:2:{i:0;R:19;i:1;R:9;}s:32:"1230:loan-loan.original.schedule";a:2:{i:0;R:19;i:1;R:9;}s:22:"1230:loan-loan.reverse";a:2:{i:0;R:19;i:1;R:9;}s:26:"1230:loan-loan.review&edit";a:2:{i:0;R:19;i:1;R:9;}s:28:"1230:loan-loan.review&submit";a:2:{i:0;R:19;i:1;R:9;}s:30:"1230:loan-loan.review/edit_ins";a:2:{i:0;R:19;i:1;R:9;}s:38:"1230:loan-loan.review_payment_schedule";a:2:{i:0;R:19;i:1;R:9;}s:31:"1230:loan-loan.reviewaccontinfo";a:2:{i:0;R:19;i:1;R:9;}s:40:"1230:loan-loan.reviewaccountinformation1";a:2:{i:0;R:19;i:1;R:9;}s:40:"1230:loan-loan.reviewaccountinformation2";a:2:{i:0;R:19;i:1;R:9;}s:40:"1230:loan-loan.reviewaccountinformation3";a:2:{i:0;R:19;i:1;R:9;}s:32:"1230:loan-loan.reviewtransaction";a:2:{i:0;R:19;i:1;R:9;}s:26:"1230:loan-loan.running_bal";a:2:{i:0;R:19;i:1;R:9;}s:16:"1230:loan-loan.s";a:2:{i:0;R:19;i:1;R:9;}s:27:"1230:loan-loan.saveforlater";a:2:{i:0;R:19;i:1;R:9;}s:21:"1230:loan-loan.search";a:2:{i:0;R:19;i:1;R:9;}s:26:"1230:loan-loan.seeallnotes";a:2:{i:0;R:19;i:1;R:9;}s:30:"1230:loan-loan.sel_charge_type";a:2:{i:0;R:19;i:1;R:9;}s:33:"1230:loan-loan.selectloaninstance";a:2:{i:0;R:19;i:1;R:9;}s:28:"1230:loan-loan.select_client";a:2:{i:0;R:19;i:1;R:9;}s:34:"1230:loan-loan.select_client/group";a:2:{i:0;R:19;i:1;R:9;}s:31:"1230:loan-loan.select_loan_inst";a:2:{i:0;R:19;i:1;R:9;}s:24:"1230:loan-loan.selection";a:2:{i:0;R:19;i:1;R:9;}s:26:"1230:loan-loan.source_fund";a:2:{i:0;R:19;i:1;R:9;}s:26:"1230:loan-loan.specifynote";a:2:{i:0;R:19;i:1;R:9;}s:21:"1230:loan-loan.status";a:2:{i:0;R:19;i:1;R:9;}s:28:"1230:loan-loan.status_active";a:2:{i:0;R:19;i:1;R:9;}s:29:"1230:loan-loan.status_history";a:2:{i:0;R:19;i:1;R:9;}s:23:"1230:loan-loan.subtotal";a:2:{i:0;R:19;i:1;R:9;}s:21:"1230:loan-loan.submit";a:2:{i:0;R:19;i:1;R:9;}s:32:"1230:loan-loan.submitforapproval";a:2:{i:0;R:19;i:1;R:9;}s:28:"1230:loan-loan.succcreatenew";a:2:{i:0;R:19;i:1;R:9;}s:33:"1230:loan-loan.successfulcreation";a:2:{i:0;R:19;i:1;R:9;}s:35:"1230:loan-loan.successfulrecreation";a:2:{i:0;R:19;i:1;R:9;}s:34:"1230:loan-loan.successful_creation";a:2:{i:0;R:19;i:1;R:9;}s:36:"1230:loan-loan.successful_recreation";a:2:{i:0;R:19;i:1;R:9;}s:30:"1230:loan-loan.suggested_steps";a:2:{i:0;R:19;i:1;R:9;}s:20:"1230:loan-loan.total";a:2:{i:0;R:19;i:1;R:9;}s:26:"1230:loan-loan.totalamtdue";a:2:{i:0;R:19;i:1;R:9;}s:25:"1230:loan-loan.totaldueon";a:2:{i:0;R:19;i:1;R:9;}s:32:"1230:loan-loan.total_due_install";a:2:{i:0;R:19;i:1;R:9;}s:26:"1230:loan-loan.totalamount";a:2:{i:0;R:19;i:1;R:9;}s:27:"1230:loan-loan.training_fee";a:2:{i:0;R:19;i:1;R:9;}s:29:"1230:loan-loan.transaction_id";a:2:{i:0;R:19;i:1;R:9;}s:29:"1230:loan-loan.transc_history";a:2:{i:0;R:19;i:1;R:9;}s:19:"1230:loan-loan.trxn";a:2:{i:0;R:19;i:1;R:9;}s:19:"1230:loan-loan.type";a:2:{i:0;R:19;i:1;R:9;}s:21:"1230:loan-loan.type_1";a:2:{i:0;R:19;i:1;R:9;}s:21:"1230:loan-loan.type_2";a:2:{i:0;R:19;i:1;R:9;}s:19:"1230:loan-loan.user";a:2:{i:0;R:19;i:1;R:9;}s:30:"1230:loan-loan.viewloandetails";a:2:{i:0;R:19;i:1;R:9;}s:32:"1230:loan-loan.view_acc_activity";a:2:{i:0;R:19;i:1;R:9;}s:30:"1230:loan-loan.view_change_log";a:2:{i:0;R:19;i:1;R:9;}s:32:"1230:loan-loan.view_inst_details";a:2:{i:0;R:19;i:1;R:9;}s:39:"1230:loan-loan.view_installment_details";a:2:{i:0;R:19;i:1;R:9;}s:29:"1230:loan-loan.view_loan_acc1";a:2:{i:0;R:19;i:1;R:9;}s:29:"1230:loan-loan.view_loan_acc2";a:2:{i:0;R:19;i:1;R:9;}s:24:"1230:loan-loan.view_schd";a:2:{i:0;R:19;i:1;R:9;}s:34:"1230:loan-loan.view_status_history";a:2:{i:0;R:19;i:1;R:9;}s:34:"1230:loan-loan.view_transc_history";a:2:{i:0;R:19;i:1;R:9;}s:58:"1230:loan-loan.viewquestiongroupforclosedloanresponseslink";a:2:{i:0;R:19;i:1;R:9;}s:28:"1230:loan-loan.vouchernumber";a:2:{i:0;R:19;i:1;R:9;}s:20:"1230:loan-loan.waive";a:2:{i:0;R:19;i:1;R:9;}s:22:"1230:loan-loan.week(s)";a:2:{i:0;R:19;i:1;R:9;}s:18:"1230:loan-loan.yes";a:2:{i:0;R:19;i:1;R:9;}s:23:"1230:loan-loan.validate";a:2:{i:0;R:19;i:1;R:9;}s:43:"1230:loan-loan.originalscheduleinstallments";a:2:{i:0;R:19;i:1;R:9;}s:44:"1230:loan-errors.installment.duedate.invalid";a:2:{i:0;R:19;i:1;R:9;}s:58:"1230:loan-errors.installment.duedate.same.as.disburse.date";a:2:{i:0;R:19;i:1;R:9;}s:47:"1230:loan-errors.installment.duedate.is.holiday";a:2:{i:0;R:19;i:1;R:9;}s:57:"1230:loan-errors.installment.duedate.before.disburse.date";a:2:{i:0;R:19;i:1;R:9;}s:51:"1230:loan-errors.installment.duedate.within.min.gap";a:2:{i:0;R:19;i:1;R:9;}s:51:"1230:loan-errors.installment.duedate.beyond.max.gap";a:2:{i:0;R:19;i:1;R:9;}s:46:"1230:loan-errors.installment.duedate.duplicate";a:2:{i:0;R:19;i:1;R:9;}s:50:"1230:loan-errors.installment.duedate.invalid.order";a:2:{i:0;R:19;i:1;R:9;}s:56:"1230:loan-errors.installment.amount.less.than.min.amount";a:2:{i:0;R:19;i:1;R:9;}s:58:"1230:loan-errors.installment.amount.less.than.interest.fee";a:2:{i:0;R:19;i:1;R:9;}s:49:"1230:loan-errors.installment.total.amount.invalid";a:2:{i:0;R:19;i:1;R:9;}s:30:"1230:loan-loan.cashflowsummary";a:2:{i:0;R:19;i:1;R:9;}s:21:"1230:loan-loan.months";a:2:{i:0;R:19;i:1;R:9;}s:33:"1230:loan-loan.cumulativecashflow";a:2:{i:0;R:19;i:1;R:9;}s:28:"1230:loan-loan.cashflownotes";a:2:{i:0;R:19;i:1;R:9;}s:54:"1230:loan-loan.cumulativecashflowminustotalinstallment";a:2:{i:0;R:19;i:1;R:9;}s:40:"1230:loan-loan.totalinstallmentaspercent";a:2:{i:0;R:19;i:1;R:9;}s:60:"1230:loan-warning.cashflow_installment_diff_beyond_threshold";a:2:{i:0;R:19;i:1;R:9;}s:46:"1230:loan-warning.cumulative_cashflow_negative";a:2:{i:0;R:19;i:1;R:9;}s:42:"1230:loan-warning.cumulative_cashflow_zero";a:2:{i:0;R:19;i:1;R:9;}s:58:"1230:loan-errors.installment_due_date_beyond_cashflow_date";a:2:{i:0;R:19;i:1;R:9;}s:33:"1230:loan-loan.edit_loan_schedule";a:2:{i:0;R:19;i:1;R:9;}s:36:"1230:loan-loan.waiverinterestmessage";a:2:{i:0;R:19;i:1;R:9;}s:44:"1230:loan-loan.waiverinterest.not.configured";a:2:{i:0;R:19;i:1;R:9;}s:63:"1230:loan-errors.periodicfeenotapplicableforvariableinstallment";a:2:{i:0;R:19;i:1;R:9;}s:63:"1230:loan-errors.multipleinstancesofthesameonetimefeenotallowed";a:2:{i:0;R:19;i:1;R:9;}s:28:"1230:loan-loan.view_schedule";a:2:{i:0;R:19;i:1;R:9;}s:90:"1230:loan-errors.feecaliculatedaspercentofinterestcannotbeappliedtovariableinstallmentloan";a:2:{i:0;R:19;i:1;R:9;}s:53:"1230:loan-errors.repayment.capacity.less.than.allowed";a:2:{i:0;R:19;i:1;R:9;}s:65:"1230:loan-exceptions.application.loan.invalidtransactiondateorder";a:2:{i:0;R:19;i:1;R:9;}s:42:"1230:loan-exception.accounts.cantremovefee";a:2:{i:0;R:19;i:1;R:9;}s:43:"1230:logging-customer.duplicatecustomername";a:2:{i:0;s:17:"out-mifos-logging";i:1;R:9;}s:48:"1230:logging-encryption.nosuchalgorithmexception";a:2:{i:0;R:30489;i:1;R:9;}s:46:"1230:logging-encryption.nosuchpaddingexception";a:2:{i:0;R:30489;i:1;R:9;}s:42:"1230:logging-loanofficernotactiveexception";a:2:{i:0;R:30489;i:1;R:9;}s:18:"1230:logging-entry";a:2:{i:0;R:30489;i:1;R:9;}s:39:"1230:logging-error.activity.not.allowed";a:2:{i:0;R:30489;i:1;R:9;}s:60:"1230:logging-exception.framework.connectionnotfoundexception";a:2:{i:0;R:30489;i:1;R:9;}s:53:"1230:logging-exception.framework.pageexpiredexception";a:2:{i:0;R:30489;i:1;R:9;}s:60:"1230:logging-exception.framework.serviceunavailableexception";a:2:{i:0;R:30489;i:1;R:9;}s:48:"1230:logging-exception.framework.systemexception";a:2:{i:0;R:30489;i:1;R:9;}s:77:"1230:logging-exception.framework.systemexception.hibernateconnectionexception";a:2:{i:0;R:30489;i:1;R:9;}s:79:"1230:logging-exception.framework.systemexception.valueobjectconversionexception";a:2:{i:0;R:30489;i:1;R:9;}s:64:"1230:logging-exceptions.application.loan.invaliddisbursementdate";a:2:{i:0;R:30489;i:1;R:9;}s:17:"1230:logging-exit";a:2:{i:0;R:30489;i:1;R:9;}s:69:"1230:logging-exception.financial.applicationexception.accountnotfound";a:2:{i:0;R:30489;i:1;R:9;}s:30:"1230:login-errors.illegalstate";a:2:{i:0;s:15:"out-mifos-login";i:1;R:9;}s:33:"1230:login-errors.batchjobrunning";a:2:{i:0;R:30505;i:1;R:9;}s:26:"1230:login-errors.shutdown";a:2:{i:0;R:30505;i:1;R:9;}s:36:"1230:login-errors.invalidoldpassword";a:2:{i:0;R:30505;i:1;R:9;}s:27:"1230:login-errors.logoutout";a:2:{i:0;R:30505;i:1;R:9;}s:27:"1230:login-errors.mandatory";a:2:{i:0;R:30505;i:1;R:9;}s:31:"1230:login-errors.maximumlength";a:2:{i:0;R:30505;i:1;R:9;}s:31:"1230:login-errors.minimumlength";a:2:{i:0;R:30505;i:1;R:9;}s:33:"1230:login-errors.newconfpassword";a:2:{i:0;R:30505;i:1;R:9;}s:24:"1230:login-errors.prefix";a:2:{i:0;R:30505;i:1;R:9;}s:39:"1230:login-errors.sameoldandnewpassword";a:2:{i:0;R:30505;i:1;R:9;}s:32:"1230:login-errors.sessiontimeout";a:2:{i:0;R:30505;i:1;R:9;}s:27:"1230:login-errors.spacemask";a:2:{i:0;R:30505;i:1;R:9;}s:24:"1230:login-errors.suffix";a:2:{i:0;R:30505;i:1;R:9;}s:23:"1230:login-login.cancel";a:2:{i:0;R:30505;i:1;R:9;}s:31:"1230:login-login.changepassword";a:2:{i:0;R:30505;i:1;R:9;}s:36:"1230:login-login.changepassword.text";a:2:{i:0;R:30505;i:1;R:9;}s:32:"1230:login-login.confirmpassword";a:2:{i:0;R:30505;i:1;R:9;}s:22:"1230:login-login.login";a:2:{i:0;R:30505;i:1;R:9;}s:23:"1230:login-login.logout";a:2:{i:0;R:30505;i:1;R:9;}s:28:"1230:login-login.newpassword";a:2:{i:0;R:30505;i:1;R:9;}s:28:"1230:login-login.oldpassword";a:2:{i:0;R:30505;i:1;R:9;}s:25:"1230:login-login.password";a:2:{i:0;R:30505;i:1;R:9;}s:23:"1230:login-login.submit";a:2:{i:0;R:30505;i:1;R:9;}s:25:"1230:login-login.username";a:2:{i:0;R:30505;i:1;R:9;}s:24:"1230:login-login.welcome";a:2:{i:0;R:30505;i:1;R:9;}s:33:"1230:login-login.serverisnotjetty";a:2:{i:0;R:30505;i:1;R:9;}s:36:"1230:lookup-accountaction-adjustment";a:2:{i:0;s:16:"out-mifos-lookup";i:1;R:9;}s:50:"1230:lookup-accountaction-customeraccountrepayment";a:2:{i:0;R:30533;i:1;R:9;}s:44:"1230:lookup-accountaction-customeradjustment";a:2:{i:0;R:30533;i:1;R:9;}s:33:"1230:lookup-accountaction-deposit";a:2:{i:0;R:30533;i:1;R:9;}s:35:"1230:lookup-accountaction-disbursal";a:2:{i:0;R:30533;i:1;R:9;}s:50:"1230:lookup-accountaction-disrbursalamountreversal";a:2:{i:0;R:30533;i:1;R:9;}s:29:"1230:lookup-accountaction-fee";a:2:{i:0;R:30533;i:1;R:9;}s:42:"1230:lookup-accountaction-interest_posting";a:2:{i:0;R:30533;i:1;R:9;}s:39:"1230:lookup-accountaction-loanrepayment";a:2:{i:0;R:30533;i:1;R:9;}s:41:"1230:lookup-accountaction-loanrescheduled";a:2:{i:0;R:30533;i:1;R:9;}s:38:"1230:lookup-accountaction-loanreversal";a:2:{i:0;R:30533;i:1;R:9;}s:40:"1230:lookup-accountaction-loanwrittenoff";a:2:{i:0;R:30533;i:1;R:9;}s:41:"1230:lookup-accountaction-miscellenousfee";a:2:{i:0;R:30533;i:1;R:9;}s:45:"1230:lookup-accountaction-miscellenouspenalty";a:2:{i:0;R:30533;i:1;R:9;}s:33:"1230:lookup-accountaction-payment";a:2:{i:0;R:30533;i:1;R:9;}s:33:"1230:lookup-accountaction-penalty";a:2:{i:0;R:30533;i:1;R:9;}s:43:"1230:lookup-accountaction-savingsadjustment";a:2:{i:0;R:30533;i:1;R:9;}s:37:"1230:lookup-accountaction-waiveoffdue";a:2:{i:0;R:30533;i:1;R:9;}s:41:"1230:lookup-accountaction-waiveoffoverdue";a:2:{i:0;R:30533;i:1;R:9;}s:36:"1230:lookup-accountaction-withdrawal";a:2:{i:0;R:30533;i:1;R:9;}s:37:"1230:lookup-accountflags-loanreversal";a:2:{i:0;R:30533;i:1;R:9;}s:30:"1230:lookup-accountflags-other";a:2:{i:0;R:30533;i:1;R:9;}s:33:"1230:lookup-accountflags-rejected";a:2:{i:0;R:30533;i:1;R:9;}s:33:"1230:lookup-accountflags-withdraw";a:2:{i:0;R:30533;i:1;R:9;}s:44:"1230:lookup-accountstate-activeinbadstanding";a:2:{i:0;R:30533;i:1;R:9;}s:45:"1230:lookup-accountstate-activeingoodstanding";a:2:{i:0;R:30533;i:1;R:9;}s:44:"1230:lookup-accountstate-applicationapproved";a:2:{i:0;R:30533;i:1;R:9;}s:51:"1230:lookup-accountstate-applicationpendingapproval";a:2:{i:0;R:30533;i:1;R:9;}s:31:"1230:lookup-accountstate-cancel";a:2:{i:0;R:30533;i:1;R:9;}s:44:"1230:lookup-accountstate-closedobligationmet";a:2:{i:0;R:30533;i:1;R:9;}s:42:"1230:lookup-accountstate-closedrescheduled";a:2:{i:0;R:30533;i:1;R:9;}s:41:"1230:lookup-accountstate-closedwrittenoff";a:2:{i:0;R:30533;i:1;R:9;}s:38:"1230:lookup-accountstate-disbursedtolo";a:2:{i:0;R:30533;i:1;R:9;}s:43:"1230:lookup-accountstate-partialapplication";a:2:{i:0;R:30533;i:1;R:9;}s:32:"1230:lookup-accounttype-customer";a:2:{i:0;R:30533;i:1;R:9;}s:28:"1230:lookup-accounttype-loan";a:2:{i:0;R:30533;i:1;R:9;}s:30:"1230:lookup-accounttype-saving";a:2:{i:0;R:30533;i:1;R:9;}s:42:"1230:lookup-businessactivities-agriculture";a:2:{i:0;R:30533;i:1;R:9;}s:46:"1230:lookup-businessactivities-animalhusbandry";a:2:{i:0;R:30533;i:1;R:9;}s:42:"1230:lookup-businessactivities-dailylabour";a:2:{i:0;R:30533;i:1;R:9;}s:46:"1230:lookup-businessactivities-microenterprise";a:2:{i:0;R:30533;i:1;R:9;}s:41:"1230:lookup-businessactivities-production";a:2:{i:0;R:30533;i:1;R:9;}s:38:"1230:lookup-businessactivities-trading";a:2:{i:0;R:30533;i:1;R:9;}s:37:"1230:lookup-categorytype-allcustomers";a:2:{i:0;R:30533;i:1;R:9;}s:40:"1230:lookup-categorytype-allproducttypes";a:2:{i:0;R:30533;i:1;R:9;}s:31:"1230:lookup-categorytype-center";a:2:{i:0;R:30533;i:1;R:9;}s:31:"1230:lookup-categorytype-client";a:2:{i:0;R:30533;i:1;R:9;}s:30:"1230:lookup-categorytype-group";a:2:{i:0;R:30533;i:1;R:9;}s:30:"1230:lookup-categorytype-loans";a:2:{i:0;R:30533;i:1;R:9;}s:32:"1230:lookup-categorytype-savings";a:2:{i:0;R:30533;i:1;R:9;}s:31:"1230:lookup-centerstatus-active";a:2:{i:0;R:30533;i:1;R:9;}s:33:"1230:lookup-centerstatus-inactive";a:2:{i:0;R:30533;i:1;R:9;}s:34:"1230:lookup-clientflag-blacklisted";a:2:{i:0;R:30533;i:1;R:9;}s:32:"1230:lookup-clientflag-duplicate";a:2:{i:0;R:30533;i:1;R:9;}s:28:"1230:lookup-clientflag-other";a:2:{i:0;R:30533;i:1;R:9;}s:31:"1230:lookup-clientflag-rejected";a:2:{i:0;R:30533;i:1;R:9;}s:31:"1230:lookup-clientflag-withdraw";a:2:{i:0;R:30533;i:1;R:9;}s:31:"1230:lookup-clientstatus-active";a:2:{i:0;R:30533;i:1;R:9;}s:51:"1230:lookup-clientstatus-applicationpendingapproval";a:2:{i:0;R:30533;i:1;R:9;}s:34:"1230:lookup-clientstatus-cancelled";a:2:{i:0;R:30533;i:1;R:9;}s:31:"1230:lookup-clientstatus-closed";a:2:{i:0;R:30533;i:1;R:9;}s:31:"1230:lookup-clientstatus-onhold";a:2:{i:0;R:30533;i:1;R:9;}s:43:"1230:lookup-clientstatus-partialapplication";a:2:{i:0;R:30533;i:1;R:9;}s:33:"1230:lookup-collateraltypes-type1";a:2:{i:0;R:30533;i:1;R:9;}s:33:"1230:lookup-collateraltypes-type2";a:2:{i:0;R:30533;i:1;R:9;}s:33:"1230:lookup-customerattendance-ab";a:2:{i:0;R:30533;i:1;R:9;}s:33:"1230:lookup-customerattendance-al";a:2:{i:0;R:30533;i:1;R:9;}s:32:"1230:lookup-customerattendance-l";a:2:{i:0;R:30533;i:1;R:9;}s:32:"1230:lookup-customerattendance-p";a:2:{i:0;R:30533;i:1;R:9;}s:48:"1230:lookup-customerstatus-customeraccountactive";a:2:{i:0;R:30533;i:1;R:9;}s:50:"1230:lookup-customerstatus-customeraccountinactive";a:2:{i:0;R:30533;i:1;R:9;}s:25:"1230:lookup-dayrank-first";a:2:{i:0;R:30533;i:1;R:9;}s:26:"1230:lookup-dayrank-fourth";a:2:{i:0;R:30533;i:1;R:9;}s:24:"1230:lookup-dayrank-last";a:2:{i:0;R:30533;i:1;R:9;}s:26:"1230:lookup-dayrank-second";a:2:{i:0;R:30533;i:1;R:9;}s:25:"1230:lookup-dayrank-third";a:2:{i:0;R:30533;i:1;R:9;}s:18:"1230:lookup-mother";a:2:{i:0;R:30533;i:1;R:9;}s:17:"1230:lookup-child";a:2:{i:0;R:30533;i:1;R:9;}s:37:"1230:lookup-feeformulamaster-interest";a:2:{i:0;R:30533;i:1;R:9;}s:39:"1230:lookup-feeformulamaster-loanamount";a:2:{i:0;R:30533;i:1;R:9;}s:47:"1230:lookup-feeformulamaster-loanamountinterest";a:2:{i:0;R:30533;i:1;R:9;}s:32:"1230:lookup-feefrequency-onetime";a:2:{i:0;R:30533;i:1;R:9;}s:33:"1230:lookup-feefrequency-periodic";a:2:{i:0;R:30533;i:1;R:9;}s:41:"1230:lookup-feepayment-timeofdisburstment";a:2:{i:0;R:30533;i:1;R:9;}s:47:"1230:lookup-feepayment-timeoffirstloanrepayment";a:2:{i:0;R:30533;i:1;R:9;}s:30:"1230:lookup-feepayment-upfront";a:2:{i:0;R:30533;i:1;R:9;}s:28:"1230:lookup-feestatus-active";a:2:{i:0;R:30533;i:1;R:9;}s:30:"1230:lookup-feestatus-inactive";a:2:{i:0;R:30533;i:1;R:9;}s:34:"1230:lookup-feetype-consultancyfee";a:2:{i:0;R:30533;i:1;R:9;}s:34:"1230:lookup-feetype-maintenancefee";a:2:{i:0;R:30533;i:1;R:9;}s:34:"1230:lookup-feetype-meetingcharges";a:2:{i:0;R:30533;i:1;R:9;}s:31:"1230:lookup-feetype-trainingfee";a:2:{i:0;R:30533;i:1;R:9;}s:54:"1230:lookup-financialaction-customeraccountfeesposting";a:2:{i:0;R:30533;i:1;R:9;}s:46:"1230:lookup-financialaction-customeradjustment";a:2:{i:0;R:30533;i:1;R:9;}s:32:"1230:lookup-financialaction-fees";a:2:{i:0;R:30533;i:1;R:9;}s:36:"1230:lookup-financialaction-interest";a:2:{i:0;R:30533;i:1;R:9;}s:44:"1230:lookup-financialaction-interest_posting";a:2:{i:0;R:30533;i:1;R:9;}s:44:"1230:lookup-financialaction-loandisbursement";a:2:{i:0;R:30533;i:1;R:9;}s:43:"1230:lookup-financialaction-loanrescheduled";a:2:{i:0;R:30533;i:1;R:9;}s:42:"1230:lookup-financialaction-loanwrittenoff";a:2:{i:0;R:30533;i:1;R:9;}s:44:"1230:lookup-financialaction-mandatorydeposit";a:2:{i:0;R:30533;i:1;R:9;}s:54:"1230:lookup-financialaction-mandatorydepositadjustment";a:2:{i:0;R:30533;i:1;R:9;}s:47:"1230:lookup-financialaction-mandatorywithdrawal";a:2:{i:0;R:30533;i:1;R:9;}s:57:"1230:lookup-financialaction-mandatorywithdrawaladjustment";a:2:{i:0;R:30533;i:1;R:9;}s:35:"1230:lookup-financialaction-miscfee";a:2:{i:0;R:30533;i:1;R:9;}s:39:"1230:lookup-financialaction-miscpenalty";a:2:{i:0;R:30533;i:1;R:9;}s:35:"1230:lookup-financialaction-penalty";a:2:{i:0;R:30533;i:1;R:9;}s:37:"1230:lookup-financialaction-principal";a:2:{i:0;R:30533;i:1;R:9;}s:46:"1230:lookup-financialaction-reversaladjustment";a:2:{i:0;R:30533;i:1;R:9;}s:47:"1230:lookup-financialaction-roundingadjustments";a:2:{i:0;R:30533;i:1;R:9;}s:50:"1230:lookup-financialaction-savingsinterestposting";a:2:{i:0;R:30533;i:1;R:9;}s:44:"1230:lookup-financialaction-voluntarydeposit";a:2:{i:0;R:30533;i:1;R:9;}s:54:"1230:lookup-financialaction-voluntarydepositadjustment";a:2:{i:0;R:30533;i:1;R:9;}s:47:"1230:lookup-financialaction-voluntarywithdrawal";a:2:{i:0;R:30533;i:1;R:9;}s:57:"1230:lookup-financialaction-voluntarywithdrawaladjustment";a:2:{i:0;R:30533;i:1;R:9;}s:25:"1230:lookup-gender-female";a:2:{i:0;R:30533;i:1;R:9;}s:23:"1230:lookup-gender-male";a:2:{i:0;R:30533;i:1;R:9;}s:49:"1230:lookup-graceperiodtypes-graceonallrepayments";a:2:{i:0;R:30533;i:1;R:9;}s:33:"1230:lookup-graceperiodtypes-none";a:2:{i:0;R:30533;i:1;R:9;}s:47:"1230:lookup-graceperiodtypes-principalonlygrace";a:2:{i:0;R:30533;i:1;R:9;}s:33:"1230:lookup-groupflag-blacklisted";a:2:{i:0;R:30533;i:1;R:9;}s:31:"1230:lookup-groupflag-duplicate";a:2:{i:0;R:30533;i:1;R:9;}s:33:"1230:lookup-groupflag-leftprogram";a:2:{i:0;R:30533;i:1;R:9;}s:27:"1230:lookup-groupflag-other";a:2:{i:0;R:30533;i:1;R:9;}s:30:"1230:lookup-groupflag-rejected";a:2:{i:0;R:30533;i:1;R:9;}s:33:"1230:lookup-groupflag-transferred";a:2:{i:0;R:30533;i:1;R:9;}s:30:"1230:lookup-groupflag-withdraw";a:2:{i:0;R:30533;i:1;R:9;}s:30:"1230:lookup-groupstatus-active";a:2:{i:0;R:30533;i:1;R:9;}s:50:"1230:lookup-groupstatus-applicationpendingapproval";a:2:{i:0;R:30533;i:1;R:9;}s:33:"1230:lookup-groupstatus-cancelled";a:2:{i:0;R:30533;i:1;R:9;}s:30:"1230:lookup-groupstatus-closed";a:2:{i:0;R:30533;i:1;R:9;}s:30:"1230:lookup-groupstatus-onhold";a:2:{i:0;R:30533;i:1;R:9;}s:42:"1230:lookup-groupstatus-partialapplication";a:2:{i:0;R:30533;i:1;R:9;}s:38:"1230:lookup-intcaltypes-averagebalance";a:2:{i:0;R:30533;i:1;R:9;}s:38:"1230:lookup-intcaltypes-minimumbalance";a:2:{i:0;R:30533;i:1;R:9;}s:46:"1230:lookup-interestcalcrule-alwaysrecalculate";a:2:{i:0;R:30533;i:1;R:9;}s:45:"1230:lookup-interestcalcrule-neverrecalculate";a:2:{i:0;R:30533;i:1;R:9;}s:42:"1230:lookup-interesttypes-decliningbalance";a:2:{i:0;R:30533;i:1;R:9;}s:51:"1230:lookup-interesttypes-decliningprincipalbalance";a:2:{i:0;R:30533;i:1;R:9;}s:68:"1230:lookup-interesttypes-decliningbalance-equalprincipalinstallment";a:2:{i:0;R:30533;i:1;R:9;}s:30:"1230:lookup-interesttypes-flat";a:2:{i:0;R:30533;i:1;R:9;}s:28:"1230:lookup-language-english";a:2:{i:0;R:30533;i:1;R:9;}s:27:"1230:lookup-language-french";a:2:{i:0;R:30533;i:1;R:9;}s:30:"1230:lookup-language-icelandic";a:2:{i:0;R:30533;i:1;R:9;}s:28:"1230:lookup-language-spanish";a:2:{i:0;R:30533;i:1;R:9;}s:27:"1230:lookup-language-arabic";a:2:{i:0;R:30533;i:1;R:9;}s:28:"1230:lookup-language-chinese";a:2:{i:0;R:30533;i:1;R:9;}s:28:"1230:lookup-language-swahili";a:2:{i:0;R:30533;i:1;R:9;}s:31:"1230:lookup-language-portuguese";a:2:{i:0;R:30533;i:1;R:9;}s:26:"1230:lookup-language-khmer";a:2:{i:0;R:30533;i:1;R:9;}s:24:"1230:lookup-language-lao";a:2:{i:0;R:30533;i:1;R:9;}s:30:"1230:lookup-language-hungarian";a:2:{i:0;R:30533;i:1;R:9;}s:20:"1230:lookup-together";a:2:{i:0;R:30533;i:1;R:9;}s:23:"1230:lookup-nottogether";a:2:{i:0;R:30533;i:1;R:9;}s:21:"1230:lookup-loan-loan";a:2:{i:0;R:30533;i:1;R:9;}s:33:"1230:lookup-maritalstatus-married";a:2:{i:0;R:30533;i:1;R:9;}s:35:"1230:lookup-maritalstatus-unmarried";a:2:{i:0;R:30533;i:1;R:9;}s:33:"1230:lookup-maritalstatus-widowed";a:2:{i:0;R:30533;i:1;R:9;}s:28:"1230:lookup-officecode-code1";a:2:{i:0;R:30533;i:1;R:9;}s:28:"1230:lookup-officecode-code2";a:2:{i:0;R:30533;i:1;R:9;}s:35:"1230:lookup-officelevels-areaoffice";a:2:{i:0;R:30533;i:1;R:9;}s:37:"1230:lookup-officelevels-branchoffice";a:2:{i:0;R:30533;i:1;R:9;}s:41:"1230:lookup-officelevels-divisionaloffice";a:2:{i:0;R:30533;i:1;R:9;}s:35:"1230:lookup-officelevels-headoffice";a:2:{i:0;R:30533;i:1;R:9;}s:39:"1230:lookup-officelevels-regionaloffice";a:2:{i:0;R:30533;i:1;R:9;}s:31:"1230:lookup-officestatus-active";a:2:{i:0;R:30533;i:1;R:9;}s:33:"1230:lookup-officestatus-inactive";a:2:{i:0;R:30533;i:1;R:9;}s:28:"1230:lookup-paymenttype-cash";a:2:{i:0;R:30533;i:1;R:9;}s:30:"1230:lookup-paymenttype-cheque";a:2:{i:0;R:30533;i:1;R:9;}s:31:"1230:lookup-paymenttype-voucher";a:2:{i:0;R:30533;i:1;R:9;}s:32:"1230:lookup-permissions-analysis";a:2:{i:0;R:30533;i:1;R:9;}s:28:"1230:lookup-permissions-bulk";a:2:{i:0;R:30533;i:1;R:9;}s:48:"1230:lookup-permissions-canaddnotestoloanaccount";a:2:{i:0;R:30533;i:1;R:9;}s:46:"1230:lookup-permissions-canaddnotestopersonnel";a:2:{i:0;R:30533;i:1;R:9;}s:51:"1230:lookup-permissions-canaddnotestosavingsaccount";a:2:{i:0;R:30533;i:1;R:9;}s:78:"1230:lookup-permissions-canadjustpaymentwhenaccountstatusisclosedobligationmet";a:2:{i:0;R:30533;i:1;R:9;}s:44:"1230:lookup-permissions-canadministerreports";a:2:{i:0;R:30533;i:1;R:9;}s:46:"1230:lookup-permissions-canapplychargestoloans";a:2:{i:0;R:30533;i:1;R:9;}s:45:"1230:lookup-permissions-canapproveloansinbulk";a:2:{i:0;R:30533;i:1;R:9;}s:41:"1230:lookup-permissions-canapproverestapi";a:2:{i:0;R:30533;i:1;R:9;}s:50:"1230:lookup-permissions-canblacklistsavingsaccount";a:2:{i:0;R:30533;i:1;R:9;}s:58:"1230:lookup-permissions-canchangestatetopartialapplication";a:2:{i:0;R:30533;i:1;R:9;}s:46:"1230:lookup-permissions-canclosesavingsaccount";a:2:{i:0;R:30533;i:1;R:9;}s:38:"1230:lookup-permissions-cancreatefunds";a:2:{i:0;R:30533;i:1;R:9;}s:53:"1230:lookup-permissions-cancreatemultipleloanaccounts";a:2:{i:0;R:30533;i:1;R:9;}s:66:"1230:lookup-permissions-cancreatenewloanaccountinsaveforlaterstate";a:2:{i:0;R:30533;i:1;R:9;}s:71:"1230:lookup-permissions-cancreatenewloanaccountinsubmitforapprovalstate";a:2:{i:0;R:30533;i:1;R:9;}s:42:"1230:lookup-permissions-cancreatenewoffice";a:2:{i:0;R:30533;i:1;R:9;}s:40:"1230:lookup-permissions-cancreatenewrole";a:2:{i:0;R:30533;i:1;R:9;}s:69:"1230:lookup-permissions-cancreatenewsavingsaccountinsaveforlaterstate";a:2:{i:0;R:30533;i:1;R:9;}s:74:"1230:lookup-permissions-cancreatenewsavingsaccountinsubmitforapprovalstate";a:2:{i:0;R:30533;i:1;R:9;}s:47:"1230:lookup-permissions-cancreatenewsystemusers";a:2:{i:0;R:30533;i:1;R:9;}s:52:"1230:lookup-permissions-candefineacceptedpaymenttype";a:2:{i:0;R:30533;i:1;R:9;}s:47:"1230:lookup-permissions-canmanagequestiongroups";a:2:{i:0;R:30533;i:1;R:9;}s:49:"1230:lookup-permissions-canactivatequestiongroups";a:2:{i:0;R:30533;i:1;R:9;}s:54:"1230:lookup-permissions-candefinehiddenmandatoryfields";a:2:{i:0;R:30533;i:1;R:9;}s:40:"1230:lookup-permissions-candefineholiday";a:2:{i:0;R:30533;i:1;R:9;}s:47:"1230:lookup-permissions-candefinecustomizedtext";a:2:{i:0;R:30533;i:1;R:9;}s:45:"1230:lookup-permissions-candefinelookupvalues";a:2:{i:0;R:30533;i:1;R:9;}s:49:"1230:lookup-permissions-candefinenewchecklisttype";a:2:{i:0;R:30533;i:1;R:9;}s:43:"1230:lookup-permissions-candefinenewfeetype";a:2:{i:0;R:30533;i:1;R:9;}s:55:"1230:lookup-permissions-candefinenewloanproductinstance";a:2:{i:0;R:30533;i:1;R:9;}s:53:"1230:lookup-permissions-candefinenewproductcategories";a:2:{i:0;R:30533;i:1;R:9;}s:50:"1230:lookup-permissions-candefinenewreportcategory";a:2:{i:0;R:30533;i:1;R:9;}s:58:"1230:lookup-permissions-candefinenewsavingsproductinstance";a:2:{i:0;R:30533;i:1;R:9;}s:43:"1230:lookup-permissions-candefineproductmix";a:2:{i:0;R:30533;i:1;R:9;}s:38:"1230:lookup-permissions-candeletearole";a:2:{i:0;R:30533;i:1;R:9;}s:47:"1230:lookup-permissions-candeletereportcategory";a:2:{i:0;R:30533;i:1;R:9;}s:39:"1230:lookup-permissions-candisburseloan";a:2:{i:0;R:30533;i:1;R:9;}s:57:"1230:lookup-permissions-candoadjustmentsforsavingsaccount";a:2:{i:0;R:30533;i:1;R:9;}s:49:"1230:lookup-permissions-candownloadreporttemplate";a:2:{i:0;R:30533;i:1;R:9;}s:53:"1230:lookup-permissions-caneditloanaccountinformation";a:2:{i:0;R:30533;i:1;R:9;}s:51:"1230:lookup-permissions-caneditloanproductinstances";a:2:{i:0;R:30533;i:1;R:9;}s:57:"1230:lookup-permissions-caneditproductcategoryinformation";a:2:{i:0;R:30533;i:1;R:9;}s:41:"1230:lookup-permissions-caneditproductmix";a:2:{i:0;R:30533;i:1;R:9;}s:48:"1230:lookup-permissions-caneditreportinformation";a:2:{i:0;R:30533;i:1;R:9;}s:54:"1230:lookup-permissions-caneditsavingsproductinstances";a:2:{i:0;R:30533;i:1;R:9;}s:46:"1230:lookup-permissions-caneditselfinformation";a:2:{i:0;R:30533;i:1;R:9;}s:51:"1230:lookup-permissions-canentercollectionsheetdata";a:2:{i:0;R:30533;i:1;R:9;}s:40:"1230:lookup-permissions-canimportclients";a:2:{i:0;R:30533;i:1;R:9;}s:45:"1230:lookup-permissions-canimporttransactions";a:2:{i:0;R:30533;i:1;R:9;}s:58:"1230:lookup-permissions-canmakeadjustmententrytotheaccount";a:2:{i:0;R:30533;i:1;R:9;}s:64:"1230:lookup-permissions-canmakedepositwithdrawaltosavingsaccount";a:2:{i:0;R:30533;i:1;R:9;}s:50:"1230:lookup-permissions-canmakepaymenttotheaccount";a:2:{i:0;R:30533;i:1;R:9;}s:38:"1230:lookup-permissions-canmodifyarole";a:2:{i:0;R:30533;i:1;R:9;}s:53:"1230:lookup-permissions-canmodifychecklistinformation";a:2:{i:0;R:30533;i:1;R:9;}s:47:"1230:lookup-permissions-canmodifyfeeinformation";a:2:{i:0;R:30533;i:1;R:9;}s:38:"1230:lookup-permissions-canmodifyfunds";a:2:{i:0;R:30533;i:1;R:9;}s:59:"1230:lookup-permissions-canmodifylatenessdormancydefinition";a:2:{i:0;R:30533;i:1;R:9;}s:48:"1230:lookup-permissions-canmodifyofficehierarchy";a:2:{i:0;R:30533;i:1;R:9;}s:50:"1230:lookup-permissions-canmodifyofficeinformation";a:2:{i:0;R:30533;i:1;R:9;}s:48:"1230:lookup-permissions-canmodifyuserinformation";a:2:{i:0;R:30533;i:1;R:9;}s:41:"1230:lookup-permissions-canpreviewreports";a:2:{i:0;R:30533;i:1;R:9;}s:45:"1230:lookup-permissions-canredoloandisbursals";a:2:{i:0;R:30533;i:1;R:9;}s:61:"1230:lookup-permissions-canremovefeetypesattachedtotheaccount";a:2:{i:0;R:30533;i:1;R:9;}s:33:"1230:lookup-permissions-penalties";a:2:{i:0;R:30533;i:1;R:9;}s:47:"1230:lookup-permissions-candefinenewpenaltytype";a:2:{i:0;R:30533;i:1;R:9;}s:51:"1230:lookup-permissions-canmodifypenaltyinformation";a:2:{i:0;R:30533;i:1;R:9;}s:64:"1230:lookup-permissions-canremovepenaltyattachedtotheloanaccount";a:2:{i:0;R:30533;i:1;R:9;}s:36:"1230:lookup-permissions-canrepayloan";a:2:{i:0;R:30533;i:1;R:9;}s:48:"1230:lookup-permissions-canreverseloandisbursals";a:2:{i:0;R:30533;i:1;R:9;}s:47:"1230:lookup-permissions-canrunbatchjobsondemand";a:2:{i:0;R:30533;i:1;R:9;}s:40:"1230:lookup-permissions-canshutdownmifos";a:2:{i:0;R:30533;i:1;R:9;}s:45:"1230:lookup-permissions-canviewactivesessions";a:2:{i:0;R:30533;i:1;R:9;}s:46:"1230:lookup-permissions-cansetmonthclosingdate";a:2:{i:0;R:30533;i:1;R:9;}s:45:"1230:lookup-permissions-canstartmifosshutdown";a:2:{i:0;R:30533;i:1;R:9;}s:38:"1230:lookup-permissions-canunlockauser";a:2:{i:0;R:30533;i:1;R:9;}s:55:"1230:lookup-permissions-canupdatebatchjobsconfiguration";a:2:{i:0;R:30533;i:1;R:9;}s:47:"1230:lookup-permissions-canupdatesavingsaccount";a:2:{i:0;R:30533;i:1;R:9;}s:47:"1230:lookup-permissions-canuploadadmindocuments";a:2:{i:0;R:30533;i:1;R:9;}s:43:"1230:lookup-permissions-canuploadnewreports";a:2:{i:0;R:30533;i:1;R:9;}s:47:"1230:lookup-permissions-canuploadreporttemplate";a:2:{i:0;R:30533;i:1;R:9;}s:51:"1230:lookup-permissions-canuseaccountingintegration";a:2:{i:0;R:30533;i:1;R:9;}s:55:"1230:lookup-permissions-canviewactiveloansbyloanofficer";a:2:{i:0;R:30533;i:1;R:9;}s:45:"1230:lookup-permissions-canviewadmindocuments";a:2:{i:0;R:30533;i:1;R:9;}s:58:"1230:lookup-permissions-canviewareaperformancestatusreport";a:2:{i:0;R:30533;i:1;R:9;}s:59:"1230:lookup-permissions-canviewbranchcashconfirmationreport";a:2:{i:0;R:30533;i:1;R:9;}s:58:"1230:lookup-permissions-canviewbranchduedisbursementreport";a:2:{i:0;R:30533;i:1;R:9;}s:60:"1230:lookup-permissions-canviewbranchperformancestatusreport";a:2:{i:0;R:30533;i:1;R:9;}s:51:"1230:lookup-permissions-canviewbranchprogressreport";a:2:{i:0;R:30533;i:1;R:9;}s:52:"1230:lookup-permissions-canviewcentermeetingschedule";a:2:{i:0;R:30533;i:1;R:9;}s:50:"1230:lookup-permissions-canviewcentersummaryreport";a:2:{i:0;R:30533;i:1;R:9;}s:66:"1230:lookup-permissions-canviewclientfeeschargesandpenaltiesreport";a:2:{i:0;R:30533;i:1;R:9;}s:58:"1230:lookup-permissions-canviewclientloanrepaymentschedule";a:2:{i:0;R:30533;i:1;R:9;}s:58:"1230:lookup-permissions-canviewclientpendingapprovalreport";a:2:{i:0;R:30533;i:1;R:9;}s:61:"1230:lookup-permissions-canviewclientproductwisehistoryreport";a:2:{i:0;R:30533;i:1;R:9;}s:57:"1230:lookup-permissions-canviewclientsettlementinforeport";a:2:{i:0;R:30533;i:1;R:9;}s:57:"1230:lookup-permissions-canviewclientsummaryhistoryreport";a:2:{i:0;R:30533;i:1;R:9;}s:59:"1230:lookup-permissions-canviewclientswithoutsavingsaccount";a:2:{i:0;R:30533;i:1;R:9;}s:46:"1230:lookup-permissions-canviewcollectionsheet";a:2:{i:0;R:30533;i:1;R:9;}s:52:"1230:lookup-permissions-canviewcollectionsheetreport";a:2:{i:0;R:30533;i:1;R:9;}s:67:"1230:lookup-permissions-canviewdailycashconfirmationreportstaffwise";a:2:{i:0;R:30533;i:1;R:9;}s:56:"1230:lookup-permissions-canviewdailycashflowreportbranch";a:2:{i:0;R:30533;i:1;R:9;}s:75:"1230:lookup-permissions-canviewdailyportfolioqualitydatareportaginganalysis";a:2:{i:0;R:30533;i:1;R:9;}s:60:"1230:lookup-permissions-canviewdailytransactionsummaryreport";a:2:{i:0;R:30533;i:1;R:9;}s:61:"1230:lookup-permissions-canviewdetailedagingofportfolioatrisk";a:2:{i:0;R:30533;i:1;R:9;}s:62:"1230:lookup-permissions-canviewdivisionperformancestatusreport";a:2:{i:0;R:30533;i:1;R:9;}s:52:"1230:lookup-permissions-canviewfundrequirementreport";a:2:{i:0;R:30533;i:1;R:9;}s:66:"1230:lookup-permissions-canviewgrameenkootaperformancestatusreport";a:2:{i:0;R:30533;i:1;R:9;}s:50:"1230:lookup-permissions-canviewloanaccountsreports";a:2:{i:0;R:30533;i:1;R:9;}s:97:"1230:lookup-permissions-canviewloanproductdistributionactivitywisesizewizeproductwisesequencywise";a:2:{i:0;R:30533;i:1;R:9;}s:57:"1230:lookup-permissions-canviewloanspendingapprovalreport";a:2:{i:0;R:30533;i:1;R:9;}s:51:"1230:lookup-permissions-canvieworganizationsettings";a:2:{i:0;R:30533;i:1;R:9;}s:45:"1230:lookup-permissions-canviewoutreachreport";a:2:{i:0;R:30533;i:1;R:9;}s:60:"1230:lookup-permissions-canviewregionperformancestatusreport";a:2:{i:0;R:30533;i:1;R:9;}s:45:"1230:lookup-permissions-canviewreportcategory";a:2:{i:0;R:30533;i:1;R:9;}s:38:"1230:lookup-permissions-canviewreports";a:2:{i:0;R:30533;i:1;R:9;}s:53:"1230:lookup-permissions-canviewstaffperformancereport";a:2:{i:0;R:30533;i:1;R:9;}s:48:"1230:lookup-permissions-canviewsysteminformation";a:2:{i:0;R:30533;i:1;R:9;}s:47:"1230:lookup-permissions-canwaiveafeeinstallment";a:2:{i:0;R:30533;i:1;R:9;}s:60:"1230:lookup-permissions-canwaiveduedepositsforsavingsaccount";a:2:{i:0;R:30533;i:1;R:9;}s:64:"1230:lookup-permissions-canwaiveoverduedepositsforsavingsaccount";a:2:{i:0;R:30533;i:1;R:9;}s:39:"1230:lookup-permissions-canwaivepenalty";a:2:{i:0;R:30533;i:1;R:9;}s:30:"1230:lookup-permissions-center";a:2:{i:0;R:30533;i:1;R:9;}s:31:"1230:lookup-permissions-centers";a:2:{i:0;R:30533;i:1;R:9;}s:58:"1230:lookup-permissions-centers-canaddnotestocenterrecords";a:2:{i:0;R:30533;i:1;R:9;}s:63:"1230:lookup-permissions-centers-canapplychargestocenteraccounts";a:2:{i:0;R:30533;i:1;R:9;}s:50:"1230:lookup-permissions-centers-cancreatenewcenter";a:2:{i:0;R:30533;i:1;R:9;}s:51:"1230:lookup-permissions-centers-caneditcenterstatus";a:2:{i:0;R:30533;i:1;R:9;}s:68:"1230:lookup-permissions-centers-caneditfeeamountattachedtotheaccount";a:2:{i:0;R:30533;i:1;R:9;}s:54:"1230:lookup-permissions-centers-caneditmeetingschedule";a:2:{i:0;R:30533;i:1;R:9;}s:71:"1230:lookup-permissions-centers-canmakeadjustmententriestocenteraccount";a:2:{i:0;R:30533;i:1;R:9;}s:63:"1230:lookup-permissions-centers-canmakepaymentstocenteraccounts";a:2:{i:0;R:30533;i:1;R:9;}s:58:"1230:lookup-permissions-centers-canmodifycenterinformation";a:2:{i:0;R:30533;i:1;R:9;}s:66:"1230:lookup-permissions-centers-canremovefeetypesfromcenteraccount";a:2:{i:0;R:30533;i:1;R:9;}s:57:"1230:lookup-permissions-centers-canspecifymeetingschedule";a:2:{i:0;R:30533;i:1;R:9;}s:50:"1230:lookup-permissions-centers-canwaiveadueamount";a:2:{i:0;R:30533;i:1;R:9;}s:34:"1230:lookup-permissions-checklists";a:2:{i:0;R:30533;i:1;R:9;}s:36:"1230:lookup-permissions-clientdetail";a:2:{i:0;R:30533;i:1;R:9;}s:40:"1230:lookup-permissions-clientmanagement";a:2:{i:0;R:30533;i:1;R:9;}s:31:"1230:lookup-permissions-clients";a:2:{i:0;R:30533;i:1;R:9;}s:62:"1230:lookup-permissions-clients-canaddanexistingclienttoagroup";a:2:{i:0;R:30533;i:1;R:9;}s:56:"1230:lookup-permissions-clients-canaddedithistoricaldata";a:2:{i:0;R:30533;i:1;R:9;}s:51:"1230:lookup-permissions-clients-canaddnotestoclient";a:2:{i:0;R:30533;i:1;R:9;}s:63:"1230:lookup-permissions-clients-canapplychargestoclientaccounts";a:2:{i:0;R:30533;i:1;R:9;}s:51:"1230:lookup-permissions-clients-canblacklistaclient";a:2:{i:0;R:30533;i:1;R:9;}s:54:"1230:lookup-permissions-clients-canchangestatetoactive";a:2:{i:0;R:30533;i:1;R:9;}s:74:"1230:lookup-permissions-clients-canchangestatetoapplicationpendingapproval";a:2:{i:0;R:30533;i:1;R:9;}s:57:"1230:lookup-permissions-clients-canchangestatetocancelled";a:2:{i:0;R:30533;i:1;R:9;}s:54:"1230:lookup-permissions-clients-canchangestatetoclosed";a:2:{i:0;R:30533;i:1;R:9;}s:54:"1230:lookup-permissions-clients-canchangestatetoonhold";a:2:{i:0;R:30533;i:1;R:9;}s:66:"1230:lookup-permissions-clients-canchangestatetopartialapplication";a:2:{i:0;R:30533;i:1;R:9;}s:69:"1230:lookup-permissions-clients-cancreatenewclientinsaveforlaterstate";a:2:{i:0;R:30533;i:1;R:9;}s:74:"1230:lookup-permissions-clients-cancreatenewclientinsubmitforapprovalstate";a:2:{i:0;R:30533;i:1;R:9;}s:68:"1230:lookup-permissions-clients-caneditfeeamountattachedtotheaccount";a:2:{i:0;R:30533;i:1;R:9;}s:54:"1230:lookup-permissions-clients-caneditgroupmembership";a:2:{i:0;R:30533;i:1;R:9;}s:54:"1230:lookup-permissions-clients-caneditmeetingschedule";a:2:{i:0;R:30533;i:1;R:9;}s:53:"1230:lookup-permissions-clients-caneditmfiinformation";a:2:{i:0;R:30533;i:1;R:9;}s:55:"1230:lookup-permissions-clients-caneditofficemembership";a:2:{i:0;R:30533;i:1;R:9;}s:58:"1230:lookup-permissions-clients-caneditpersonalinformation";a:2:{i:0;R:30533;i:1;R:9;}s:71:"1230:lookup-permissions-clients-canmakeadjustmententriestoclientaccount";a:2:{i:0;R:30533;i:1;R:9;}s:63:"1230:lookup-permissions-clients-canmakepaymentstoclientaccounts";a:2:{i:0;R:30533;i:1;R:9;}s:58:"1230:lookup-permissions-clients-canremoveclientsfromgroups";a:2:{i:0;R:30533;i:1;R:9;}s:66:"1230:lookup-permissions-clients-canremovefeetypesfromclientaccount";a:2:{i:0;R:30533;i:1;R:9;}s:57:"1230:lookup-permissions-clients-canspecifymeetingschedule";a:2:{i:0;R:30533;i:1;R:9;}s:50:"1230:lookup-permissions-clients-canwaiveadueamount";a:2:{i:0;R:30533;i:1;R:9;}s:50:"1230:lookup-permissions-clients-caneditphonenumber";a:2:{i:0;R:30533;i:1;R:9;}s:47:"1230:lookup-permissions-configurationmanagement";a:2:{i:0;R:30533;i:1;R:9;}s:28:"1230:lookup-permissions-fees";a:2:{i:0;R:30533;i:1;R:9;}s:29:"1230:lookup-permissions-funds";a:2:{i:0;R:30533;i:1;R:9;}s:30:"1230:lookup-permissions-groups";a:2:{i:0;R:30533;i:1;R:9;}s:55:"1230:lookup-permissions-groups-canaddedithistoricaldata";a:2:{i:0;R:30533;i:1;R:9;}s:49:"1230:lookup-permissions-groups-canaddnotestogroup";a:2:{i:0;R:30533;i:1;R:9;}s:61:"1230:lookup-permissions-groups-canapplychargestogroupaccounts";a:2:{i:0;R:30533;i:1;R:9;}s:49:"1230:lookup-permissions-groups-canblacklistagroup";a:2:{i:0;R:30533;i:1;R:9;}s:53:"1230:lookup-permissions-groups-canchangestatetoactive";a:2:{i:0;R:30533;i:1;R:9;}s:73:"1230:lookup-permissions-groups-canchangestatetoapplicationpendingapproval";a:2:{i:0;R:30533;i:1;R:9;}s:56:"1230:lookup-permissions-groups-canchangestatetocancelled";a:2:{i:0;R:30533;i:1;R:9;}s:53:"1230:lookup-permissions-groups-canchangestatetoclosed";a:2:{i:0;R:30533;i:1;R:9;}s:53:"1230:lookup-permissions-groups-canchangestatetoonhold";a:2:{i:0;R:30533;i:1;R:9;}s:65:"1230:lookup-permissions-groups-canchangestatetopartialapplication";a:2:{i:0;R:30533;i:1;R:9;}s:67:"1230:lookup-permissions-groups-cancreatenewgroupinsaveforlaterstate";a:2:{i:0;R:30533;i:1;R:9;}s:72:"1230:lookup-permissions-groups-cancreatenewgroupinsubmitforapprovalstate";a:2:{i:0;R:30533;i:1;R:9;}s:54:"1230:lookup-permissions-groups-caneditcentermembership";a:2:{i:0;R:30533;i:1;R:9;}s:67:"1230:lookup-permissions-groups-caneditfeeamountattachedtotheaccount";a:2:{i:0;R:30533;i:1;R:9;}s:54:"1230:lookup-permissions-groups-caneditgroupinformation";a:2:{i:0;R:30533;i:1;R:9;}s:53:"1230:lookup-permissions-groups-caneditmeetingschedule";a:2:{i:0;R:30533;i:1;R:9;}s:54:"1230:lookup-permissions-groups-caneditofficemembership";a:2:{i:0;R:30533;i:1;R:9;}s:69:"1230:lookup-permissions-groups-canmakeadjustmententriestogroupaccount";a:2:{i:0;R:30533;i:1;R:9;}s:61:"1230:lookup-permissions-groups-canmakepaymentstogroupaccounts";a:2:{i:0;R:30533;i:1;R:9;}s:64:"1230:lookup-permissions-groups-canremovefeetypesfromgroupaccount";a:2:{i:0;R:30533;i:1;R:9;}s:56:"1230:lookup-permissions-groups-canspecifymeetingschedule";a:2:{i:0;R:30533;i:1;R:9;}s:49:"1230:lookup-permissions-groups-canwaiveadueamount";a:2:{i:0;R:30533;i:1;R:9;}s:38:"1230:lookup-permissions-loanmanagement";a:2:{i:0;R:30533;i:1;R:9;}s:38:"1230:lookup-permissions-loanprocessing";a:2:{i:0;R:30533;i:1;R:9;}s:63:"1230:lookup-permissions-loanprocessing-canchangestatetoapproved";a:2:{i:0;R:30533;i:1;R:9;}s:64:"1230:lookup-permissions-loanprocessing-canchangestatetocancelled";a:2:{i:0;R:30533;i:1;R:9;}s:72:"1230:lookup-permissions-loanprocessing-canchangestatetoclosedrescheduled";a:2:{i:0;R:30533;i:1;R:9;}s:71:"1230:lookup-permissions-loanprocessing-canchangestatetoclosedwrittenoff";a:2:{i:0;R:30533;i:1;R:9;}s:68:"1230:lookup-permissions-loanprocessing-canchangestatetodisbursedtolo";a:2:{i:0;R:30533;i:1;R:9;}s:73:"1230:lookup-permissions-loanprocessing-canchangestatetopartialapplication";a:2:{i:0;R:30533;i:1;R:9;}s:70:"1230:lookup-permissions-loanprocessing-canchangestatetopendingapproval";a:2:{i:0;R:30533;i:1;R:9;}s:41:"1230:lookup-permissions-loanproductdetail";a:2:{i:0;R:30533;i:1;R:9;}s:36:"1230:lookup-permissions-loanproducts";a:2:{i:0;R:30533;i:1;R:9;}s:40:"1230:lookup-permissions-loantransactions";a:2:{i:0;R:30533;i:1;R:9;}s:54:"1230:lookup-permissions-canadjustbackdatedtransactions";a:2:{i:0;R:30533;i:1;R:9;}s:37:"1230:lookup-permissions-miscellaneous";a:2:{i:0;R:30533;i:1;R:9;}s:38:"1230:lookup-permissions-notimplemented";a:2:{i:0;R:30533;i:1;R:9;}s:40:"1230:lookup-permissions-officemanagement";a:2:{i:0;R:30533;i:1;R:9;}s:31:"1230:lookup-permissions-offices";a:2:{i:0;R:30533;i:1;R:9;}s:46:"1230:lookup-permissions-organizationmanagement";a:2:{i:0;R:30533;i:1;R:9;}s:35:"1230:lookup-permissions-performance";a:2:{i:0;R:30533;i:1;R:9;}s:33:"1230:lookup-permissions-personnel";a:2:{i:0;R:30533;i:1;R:9;}s:41:"1230:lookup-permissions-productcategories";a:2:{i:0;R:30533;i:1;R:9;}s:41:"1230:lookup-permissions-productdefinition";a:2:{i:0;R:30533;i:1;R:9;}s:34:"1230:lookup-permissions-productmix";a:2:{i:0;R:30533;i:1;R:9;}s:41:"1230:lookup-permissions-reportsmanagement";a:2:{i:0;R:30533;i:1;R:9;}s:29:"1230:lookup-permissions-roles";a:2:{i:0;R:30533;i:1;R:9;}s:41:"1230:lookup-permissions-savingsmanagement";a:2:{i:0;R:30533;i:1;R:9;}s:64:"1230:lookup-permissions-savingsmanagement-canchangestatetoactive";a:2:{i:0;R:30533;i:1;R:9;}s:64:"1230:lookup-permissions-savingsmanagement-canchangestatetocancel";a:2:{i:0;R:30533;i:1;R:9;}s:66:"1230:lookup-permissions-savingsmanagement-canchangestatetoinactive";a:2:{i:0;R:30533;i:1;R:9;}s:76:"1230:lookup-permissions-savingsmanagement-canchangestatetopartialapplication";a:2:{i:0;R:30533;i:1;R:9;}s:73:"1230:lookup-permissions-savingsmanagement-canchangestatetopendingapproval";a:2:{i:0;R:30533;i:1;R:9;}s:39:"1230:lookup-permissions-savingsproducts";a:2:{i:0;R:30533;i:1;R:9;}s:30:"1230:lookup-permissions-status";a:2:{i:0;R:30533;i:1;R:9;}s:41:"1230:lookup-permissions-systeminformation";a:2:{i:0;R:30533;i:1;R:9;}s:38:"1230:lookup-permissions-usermanagement";a:2:{i:0;R:30533;i:1;R:9;}s:31:"1230:lookup-personnel-personnel";a:2:{i:0;R:30533;i:1;R:9;}s:39:"1230:lookup-personnellevels-loanofficer";a:2:{i:0;R:30533;i:1;R:9;}s:42:"1230:lookup-personnellevels-nonloanofficer";a:2:{i:0;R:30533;i:1;R:9;}s:34:"1230:lookup-personnelstatus-active";a:2:{i:0;R:30533;i:1;R:9;}s:36:"1230:lookup-personnelstatus-inactive";a:2:{i:0;R:30533;i:1;R:9;}s:40:"1230:lookup-personnelstatusunused-active";a:2:{i:0;R:30533;i:1;R:9;}s:42:"1230:lookup-personnelstatusunused-inactive";a:2:{i:0;R:30533;i:1;R:9;}s:33:"1230:lookup-position-centerleader";a:2:{i:0;R:30533;i:1;R:9;}s:36:"1230:lookup-position-centersecretary";a:2:{i:0;R:30533;i:1;R:9;}s:32:"1230:lookup-position-groupleader";a:2:{i:0;R:30533;i:1;R:9;}s:35:"1230:lookup-position-groupsecretary";a:2:{i:0;R:30533;i:1;R:9;}s:33:"1230:lookup-povertystatus-nonpoor";a:2:{i:0;R:30533;i:1;R:9;}s:30:"1230:lookup-povertystatus-poor";a:2:{i:0;R:30533;i:1;R:9;}s:34:"1230:lookup-povertystatus-verypoor";a:2:{i:0;R:30533;i:1;R:9;}s:39:"1230:lookup-prdapplicablemaster-centers";a:2:{i:0;R:30533;i:1;R:9;}s:39:"1230:lookup-prdapplicablemaster-clients";a:2:{i:0;R:30533;i:1;R:9;}s:38:"1230:lookup-prdapplicablemaster-groups";a:2:{i:0;R:30533;i:1;R:9;}s:40:"1230:lookup-productcategorystatus-active";a:2:{i:0;R:30533;i:1;R:9;}s:42:"1230:lookup-productcategorystatus-inactive";a:2:{i:0;R:30533;i:1;R:9;}s:31:"1230:lookup-productstate-active";a:2:{i:0;R:30533;i:1;R:9;}s:30:"1230:lookup-productstate-close";a:2:{i:0;R:30533;i:1;R:9;}s:33:"1230:lookup-productstate-inactive";a:2:{i:0;R:30533;i:1;R:9;}s:32:"1230:lookup-productstatus-active";a:2:{i:0;R:30533;i:1;R:9;}s:32:"1230:lookup-productstatus-closed";a:2:{i:0;R:30533;i:1;R:9;}s:34:"1230:lookup-productstatus-inactive";a:2:{i:0;R:30533;i:1;R:9;}s:44:"1230:lookup-recommendedamtunit-completegroup";a:2:{i:0;R:30533;i:1;R:9;}s:44:"1230:lookup-recommendedamtunit-perindividual";a:2:{i:0;R:30533;i:1;R:9;}s:46:"1230:lookup-repaymentrule-nextmeetingrepayment";a:2:{i:0;R:30533;i:1;R:9;}s:40:"1230:lookup-repaymentrule-nextworkingday";a:2:{i:0;R:30533;i:1;R:9;}s:45:"1230:lookup-repaymentrule-repaymentmoratorium";a:2:{i:0;R:30533;i:1;R:9;}s:33:"1230:lookup-repaymentrule-sameday";a:2:{i:0;R:30533;i:1;R:9;}s:25:"1230:lookup-salutation-mr";a:2:{i:0;R:30533;i:1;R:9;}s:26:"1230:lookup-salutation-mrs";a:2:{i:0;R:30533;i:1;R:9;}s:25:"1230:lookup-salutation-ms";a:2:{i:0;R:30533;i:1;R:9;}s:27:"1230:lookup-savings-savings";a:2:{i:0;R:30533;i:1;R:9;}s:42:"1230:lookup-savingsaccountflag-blacklisted";a:2:{i:0;R:30533;i:1;R:9;}s:39:"1230:lookup-savingsaccountflag-rejected";a:2:{i:0;R:30533;i:1;R:9;}s:39:"1230:lookup-savingsaccountflag-withdraw";a:2:{i:0;R:30533;i:1;R:9;}s:32:"1230:lookup-savingsstatus-active";a:2:{i:0;R:30533;i:1;R:9;}s:52:"1230:lookup-savingsstatus-applicationpendingapproval";a:2:{i:0;R:30533;i:1;R:9;}s:35:"1230:lookup-savingsstatus-cancelled";a:2:{i:0;R:30533;i:1;R:9;}s:32:"1230:lookup-savingsstatus-closed";a:2:{i:0;R:30533;i:1;R:9;}s:34:"1230:lookup-savingsstatus-inactive";a:2:{i:0;R:30533;i:1;R:9;}s:44:"1230:lookup-savingsstatus-partialapplication";a:2:{i:0;R:30533;i:1;R:9;}s:33:"1230:lookup-savingstype-mandatory";a:2:{i:0;R:30533;i:1;R:9;}s:33:"1230:lookup-savingstype-voluntary";a:2:{i:0;R:30533;i:1;R:9;}s:31:"1230:lookup-spousefather-father";a:2:{i:0;R:30533;i:1;R:9;}s:31:"1230:lookup-spousefather-spouse";a:2:{i:0;R:30533;i:1;R:9;}s:27:"1230:lookup-weekdays-friday";a:2:{i:0;R:30533;i:1;R:9;}s:27:"1230:lookup-weekdays-monday";a:2:{i:0;R:30533;i:1;R:9;}s:29:"1230:lookup-weekdays-saturday";a:2:{i:0;R:30533;i:1;R:9;}s:27:"1230:lookup-weekdays-sunday";a:2:{i:0;R:30533;i:1;R:9;}s:29:"1230:lookup-weekdays-thursday";a:2:{i:0;R:30533;i:1;R:9;}s:28:"1230:lookup-weekdays-tuesday";a:2:{i:0;R:30533;i:1;R:9;}s:30:"1230:lookup-weekdays-wednesday";a:2:{i:0;R:30533;i:1;R:9;}s:20:"1230:lookup-yesno-no";a:2:{i:0;R:30533;i:1;R:9;}s:21:"1230:lookup-yesno-yes";a:2:{i:0;R:30533;i:1;R:9;}s:59:"1230:lookup-feeupdationtype-appliestoexistingfutureaccounts";a:2:{i:0;R:30533;i:1;R:9;}s:51:"1230:lookup-feeupdationtype-appliestofutureaccounts";a:2:{i:0;R:30533;i:1;R:9;}s:33:"1230:lookup-penaltycategory-loans";a:2:{i:0;R:30533;i:1;R:9;}s:35:"1230:lookup-penaltycategory-savings";a:2:{i:0;R:30533;i:1;R:9;}s:53:"1230:lookup-penaltyformula-outstandingprincipalamount";a:2:{i:0;R:30533;i:1;R:9;}s:48:"1230:lookup-penaltyformula-outstandingloanamount";a:2:{i:0;R:30533;i:1;R:9;}s:43:"1230:lookup-penaltyformula-overdueamountdue";a:2:{i:0;R:30533;i:1;R:9;}s:43:"1230:lookup-penaltyformula-overdueprincipal";a:2:{i:0;R:30533;i:1;R:9;}s:46:"1230:lookup-penaltyperiod-numberofinstallments";a:2:{i:0;R:30533;i:1;R:9;}s:38:"1230:lookup-penaltyperiod-numberofdays";a:2:{i:0;R:30533;i:1;R:9;}s:30:"1230:lookup-penaltyperiod-none";a:2:{i:0;R:30533;i:1;R:9;}s:33:"1230:lookup-penaltyfrequency-none";a:2:{i:0;R:30533;i:1;R:9;}s:34:"1230:lookup-penaltyfrequency-daily";a:2:{i:0;R:30533;i:1;R:9;}s:35:"1230:lookup-penaltyfrequency-weekly";a:2:{i:0;R:30533;i:1;R:9;}s:36:"1230:lookup-penaltyfrequency-monthly";a:2:{i:0;R:30533;i:1;R:9;}s:32:"1230:lookup-penaltystatus-active";a:2:{i:0;R:30533;i:1;R:9;}s:34:"1230:lookup-penaltystatus-inactive";a:2:{i:0;R:30533;i:1;R:9;}s:39:"1230:meeting-error.activity.not.allowed";a:2:{i:0;s:17:"out-mifos-meeting";i:1;R:9;}s:44:"1230:meeting-errors.meeting.invaliddaynumber";a:2:{i:0;R:31006;i:1;R:9;}s:47:"1230:meeting-errors.meeting.invalidmeetingplace";a:2:{i:0;R:31006;i:1;R:9;}s:45:"1230:meeting-errors.meeting.invalidrecurafter";a:2:{i:0;R:31006;i:1;R:9;}s:49:"1230:meeting-errors.meeting.invalidrecurrencetype";a:2:{i:0;R:31006;i:1;R:9;}s:54:"1230:meeting-errors.meeting.specifydaynumandrecurafter";a:2:{i:0;R:31006;i:1;R:9;}s:58:"1230:meeting-errors.meeting.specifymonthlymeetingonweekday";a:2:{i:0;R:31006;i:1;R:9;}s:55:"1230:meeting-errors.meeting.specifyweekdayandrecurafter";a:2:{i:0;R:31006;i:1;R:9;}s:26:"1230:meeting-errors.prefix";a:2:{i:0;R:31006;i:1;R:9;}s:26:"1230:meeting-errors.suffix";a:2:{i:0;R:31006;i:1;R:9;}s:44:"1230:meeting-meeting.labelfrequencyofmeeting";a:2:{i:0;R:31006;i:1;R:9;}s:34:"1230:meeting-meeting.button.create";a:2:{i:0;R:31006;i:1;R:9;}s:32:"1230:meeting-meeting.button.save";a:2:{i:0;R:31006;i:1;R:9;}s:32:"1230:meeting-meeting.dayschedule";a:2:{i:0;R:31006;i:1;R:9;}s:39:"1230:meeting-meeting.dayschedule.change";a:2:{i:0;R:31006;i:1;R:9;}s:41:"1230:meeting-meeting.error.creationfailed";a:2:{i:0;R:31006;i:1;R:9;}s:42:"1230:meeting-meeting.error.invalidmomthday";a:2:{i:0;R:31006;i:1;R:9;}s:44:"1230:meeting-meeting.error.invalidrecurafter";a:2:{i:0;R:31006;i:1;R:9;}s:37:"1230:meeting-meeting.error.loadfailed";a:2:{i:0;R:31006;i:1;R:9;}s:39:"1230:meeting-meeting.error.updatefailed";a:2:{i:0;R:31006;i:1;R:9;}s:43:"1230:meeting-meeting.labelcreateinstruction";a:2:{i:0;R:31006;i:1;R:9;}s:29:"1230:meeting-meeting.labelday";a:2:{i:0;R:31006;i:1;R:9;}s:30:"1230:meeting-meeting.labeldays";a:2:{i:0;R:31006;i:1;R:9;}s:41:"1230:meeting-meeting.labelmeetingschedule";a:2:{i:0;R:31006;i:1;R:9;}s:44:"1230:meeting-meeting.labelmeetingschedulefor";a:2:{i:0;R:31006;i:1;R:9;}s:32:"1230:meeting-meeting.labelmonths";a:2:{i:0;R:31006;i:1;R:9;}s:33:"1230:meeting-meeting.labelofevery";a:2:{i:0;R:31006;i:1;R:9;}s:40:"1230:meeting-meeting.labelplaceofmeeting";a:2:{i:0;R:31006;i:1;R:9;}s:35:"1230:meeting-meeting.labelrecurdays";a:2:{i:0;R:31006;i:1;R:9;}s:36:"1230:meeting-meeting.labelrecurevery";a:2:{i:0;R:31006;i:1;R:9;}s:37:"1230:meeting-meeting.labelrecurmonths";a:2:{i:0;R:31006;i:1;R:9;}s:36:"1230:meeting-meeting.labelrecurweeks";a:2:{i:0;R:31006;i:1;R:9;}s:38:"1230:meeting-meeting.labelrepaymentday";a:2:{i:0;R:31006;i:1;R:9;}s:29:"1230:meeting-meeting.labelthe";a:2:{i:0;R:31006;i:1;R:9;}s:31:"1230:meeting-meeting.labelweeks";a:2:{i:0;R:31006;i:1;R:9;}s:57:"1230:meeting-meeting.labelmeetingschedule&groupmembership";a:2:{i:0;R:31006;i:1;R:9;}s:36:"1230:meeting-meeting.monthday.number";a:2:{i:0;R:31006;i:1;R:9;}s:35:"1230:meeting-meeting.monthday.range";a:2:{i:0;R:31006;i:1;R:9;}s:35:"1230:meeting-meeting.monthfrequency";a:2:{i:0;R:31006;i:1;R:9;}s:38:"1230:meeting-meeting.monthmonth.number";a:2:{i:0;R:31006;i:1;R:9;}s:40:"1230:meeting-meeting.monthmonth.required";a:2:{i:0;R:31006;i:1;R:9;}s:47:"1230:meeting-meeting.monthmonthrank.requiredmsg";a:2:{i:0;R:31006;i:1;R:9;}s:34:"1230:meeting-meeting.monthschedule";a:2:{i:0;R:31006;i:1;R:9;}s:41:"1230:meeting-meeting.monthschedule.change";a:2:{i:0;R:31006;i:1;R:9;}s:39:"1230:meeting-meeting.monthscheduleshort";a:2:{i:0;R:31006;i:1;R:9;}s:48:"1230:meeting-meeting.monthtype.requiredmsgplease";a:2:{i:0;R:31006;i:1;R:9;}s:42:"1230:meeting-meeting.monthweek.requiredmsg";a:2:{i:0;R:31006;i:1;R:9;}s:37:"1230:meeting-meeting.msgupdatemeeting";a:2:{i:0;R:31006;i:1;R:9;}s:36:"1230:meeting-meeting.reurweek.number";a:2:{i:0;R:31006;i:1;R:9;}s:40:"1230:meeting-meeting.weekday.requiredmsg";a:2:{i:0;R:31006;i:1;R:9;}s:34:"1230:meeting-meeting.weekfrequency";a:2:{i:0;R:31006;i:1;R:9;}s:33:"1230:meeting-meeting.weekschedule";a:2:{i:0;R:31006;i:1;R:9;}s:40:"1230:meeting-meeting.weekschedule.change";a:2:{i:0;R:31006;i:1;R:9;}s:38:"1230:meeting-meeting.weekscheduleshort";a:2:{i:0;R:31006;i:1;R:9;}s:28:"1230:menu-button.adminmodule";a:2:{i:0;s:14:"out-mifos-menu";i:1;R:9;}s:29:"1230:menu-button.clientmodule";a:2:{i:0;R:31061;i:1;R:9;}s:20:"1230:menu-label.loan";a:2:{i:0;R:31061;i:1;R:9;}s:23:"1230:menu-label.savings";a:2:{i:0;R:31061;i:1;R:9;}s:23:"1230:menu-label.account";a:2:{i:0;R:31061;i:1;R:9;}s:28:"1230:menu-label.accountsmall";a:2:{i:0;R:31061;i:1;R:9;}s:24:"1230:menu-label.accounts";a:2:{i:0;R:31061;i:1;R:9;}s:29:"1230:menu-label.accountssmall";a:2:{i:0;R:31061;i:1;R:9;}s:26:"1230:menu-label.admintasks";a:2:{i:0;R:31061;i:1;R:9;}s:22:"1230:menu-label.atrisk";a:2:{i:0;R:31061;i:1;R:9;}s:22:"1230:menu-label.branch";a:2:{i:0;R:31061;i:1;R:9;}s:22:"1230:menu-label.center";a:2:{i:0;R:31061;i:1;R:9;}s:22:"1230:menu-label.change";a:2:{i:0;R:31061;i:1;R:9;}s:36:"1230:menu-label.approvemultipleloans";a:2:{i:0;R:31061;i:1;R:9;}s:22:"1230:menu-label.client";a:2:{i:0;R:31061;i:1;R:9;}s:23:"1230:menu-label.clients";a:2:{i:0;R:31061;i:1;R:9;}s:31:"1230:menu-label.collectionsheet";a:2:{i:0;R:31061;i:1;R:9;}s:32:"1230:menu-label.collectionsheets";a:2:{i:0;R:31061;i:1;R:9;}s:22:"1230:menu-label.create";a:2:{i:0;R:31061;i:1;R:9;}s:42:"1230:menu-label.createmultipleloanaccounts";a:2:{i:0;R:31061;i:1;R:9;}s:36:"1230:menu-label.createsavingsaccount";a:2:{i:0;R:31061;i:1;R:9;}s:33:"1230:menu-label.createloanaccount";a:2:{i:0;R:31061;i:1;R:9;}s:25:"1230:menu-label.createnew";a:2:{i:0;R:31061;i:1;R:9;}s:30:"1230:menu-label.createnewgroup";a:2:{i:0;R:31061;i:1;R:9;}s:31:"1230:menu-label.createnewcenter";a:2:{i:0;R:31061;i:1;R:9;}s:31:"1230:menu-label.createnewclient";a:2:{i:0;R:31061;i:1;R:9;}s:20:"1230:menu-label.data";a:2:{i:0;R:31061;i:1;R:9;}s:31:"1230:menu-label.delinquentloans";a:2:{i:0;R:31061;i:1;R:9;}s:21:"1230:menu-label.enter";a:2:{i:0;R:31061;i:1;R:9;}s:40:"1230:menu-label.entercollectionsheetdata";a:2:{i:0;R:31061;i:1;R:9;}s:21:"1230:menu-label.group";a:2:{i:0;R:31061;i:1;R:9;}s:20:"1230:menu-label.help";a:2:{i:0;R:31061;i:1;R:9;}s:27:"1230:menu-label.loanofficer";a:2:{i:0;R:31061;i:1;R:9;}s:22:"1230:menu-label.manage";a:2:{i:0;R:31061;i:1;R:9;}s:30:"1230:menu-label.manageexisting";a:2:{i:0;R:31061;i:1;R:9;}s:26:"1230:menu-label.menusearch";a:2:{i:0;R:31061;i:1;R:9;}s:24:"1230:menu-label.multiple";a:2:{i:0;R:31061;i:1;R:9;}s:34:"1230:menu-label.opennewloanaccount";a:2:{i:0;R:31061;i:1;R:9;}s:37:"1230:menu-label.opennewsavingsaccount";a:2:{i:0;R:31061;i:1;R:9;}s:23:"1230:menu-label.opennew";a:2:{i:0;R:31061;i:1;R:9;}s:25:"1230:menu-label.portfolio";a:2:{i:0;R:31061;i:1;R:9;}s:21:"1230:menu-label.print";a:2:{i:0;R:31061;i:1;R:9;}s:26:"1230:menu-label.quickstart";a:2:{i:0;R:31061;i:1;R:9;}s:22:"1230:menu-label.report";a:2:{i:0;R:31061;i:1;R:9;}s:23:"1230:menu-label.reports";a:2:{i:0;R:31061;i:1;R:9;}s:31:"1230:menu-label.searchnamesysid";a:2:{i:0;R:31061;i:1;R:9;}s:23:"1230:menu-label.seealso";a:2:{i:0;R:31061;i:1;R:9;}s:22:"1230:menu-label.status";a:2:{i:0;R:31061;i:1;R:9;}s:21:"1230:menu-label.tasks";a:2:{i:0;R:31061;i:1;R:9;}s:20:"1230:menu-label.view";a:2:{i:0;R:31061;i:1;R:9;}s:25:"1230:menu-label.w/ocenter";a:2:{i:0;R:31061;i:1;R:9;}s:28:"1230:menu-label.yoursettings";a:2:{i:0;R:31061;i:1;R:9;}s:27:"1230:ml-accountaction.label";a:2:{i:0;s:12:"out-mifos-ml";i:1;R:9;}s:34:"1230:ml-accountactiontypes.deposit";a:2:{i:0;R:31114;i:1;R:9;}s:36:"1230:ml-accountactiontypes.disbursal";a:2:{i:0;R:31114;i:1;R:9;}s:40:"1230:ml-accountactiontypes.fee_repayment";a:2:{i:0;R:31114;i:1;R:9;}s:41:"1230:ml-accountactiontypes.loan_repayment";a:2:{i:0;R:31114;i:1;R:9;}s:37:"1230:ml-accountactiontypes.withdrawal";a:2:{i:0;R:31114;i:1;R:9;}s:26:"1230:ml-accountflags.label";a:2:{i:0;R:31114;i:1;R:9;}s:26:"1230:ml-accountstate.label";a:2:{i:0;R:31114;i:1;R:9;}s:25:"1230:ml-accounttype.label";a:2:{i:0;R:31114;i:1;R:9;}s:22:"1230:ml-address1.label";a:2:{i:0;R:31114;i:1;R:9;}s:22:"1230:ml-address2.label";a:2:{i:0;R:31114;i:1;R:9;}s:22:"1230:ml-address3.label";a:2:{i:0;R:31114;i:1;R:9;}s:20:"1230:ml-amount.label";a:2:{i:0;R:31114;i:1;R:9;}s:23:"1230:ml-bulkentry.label";a:2:{i:0;R:31114;i:1;R:9;}s:32:"1230:ml-businessactivities.label";a:2:{i:0;R:31114;i:1;R:9;}s:26:"1230:ml-categorytype.label";a:2:{i:0;R:31114;i:1;R:9;}s:20:"1230:ml-center.label";a:2:{i:0;R:31114;i:1;R:9;}s:26:"1230:ml-centerstatus.label";a:2:{i:0;R:31114;i:1;R:9;}s:25:"1230:ml-citizenship.label";a:2:{i:0;R:31114;i:1;R:9;}s:18:"1230:ml-city.label";a:2:{i:0;R:31114;i:1;R:9;}s:20:"1230:ml-client.label";a:2:{i:0;R:31114;i:1;R:9;}s:26:"1230:ml-clientstatus.label";a:2:{i:0;R:31114;i:1;R:9;}s:29:"1230:ml-collateraltypes.label";a:2:{i:0;R:31114;i:1;R:9;}s:37:"1230:ml-customfieldtype.alpha_numeric";a:2:{i:0;R:31114;i:1;R:9;}s:28:"1230:ml-customfieldtype.date";a:2:{i:0;R:31114;i:1;R:9;}s:31:"1230:ml-customfieldtype.numeric";a:2:{i:0;R:31114;i:1;R:9;}s:32:"1230:ml-customerattendance.label";a:2:{i:0;R:31114;i:1;R:9;}s:28:"1230:ml-customerstatus.label";a:2:{i:0;R:31114;i:1;R:9;}s:18:"1230:ml-date.label";a:2:{i:0;R:31114;i:1;R:9;}s:21:"1230:ml-dayrank.label";a:2:{i:0;R:31114;i:1;R:9;}s:25:"1230:ml-description.label";a:2:{i:0;R:31114;i:1;R:9;}s:36:"1230:ml-distancefrombotocenter.label";a:2:{i:0;R:31114;i:1;R:9;}s:32:"1230:ml-distancefromhotobo.label";a:2:{i:0;R:31114;i:1;R:9;}s:28:"1230:ml-educationlevel.label";a:2:{i:0;R:31114;i:1;R:9;}s:23:"1230:ml-ethnicity.label";a:2:{i:0;R:31114;i:1;R:9;}s:24:"1230:ml-externalid.label";a:2:{i:0;R:31114;i:1;R:9;}s:28:"1230:ml-externalloanid.label";a:2:{i:0;R:31114;i:1;R:9;}s:25:"1230:ml-externalsavingsid";a:2:{i:0;R:31114;i:1;R:9;}s:31:"1230:ml-externalsavingsid.label";a:2:{i:0;R:31114;i:1;R:9;}s:30:"1230:ml-feeformulamaster.label";a:2:{i:0;R:31114;i:1;R:9;}s:24:"1230:ml-feepayment.label";a:2:{i:0;R:31114;i:1;R:9;}s:23:"1230:ml-feestatus.label";a:2:{i:0;R:31114;i:1;R:9;}s:21:"1230:ml-feetype.label";a:2:{i:0;R:31114;i:1;R:9;}s:19:"1230:ml-field.label";a:2:{i:0;R:31114;i:1;R:9;}s:29:"1230:ml-financialaction.label";a:2:{i:0;R:31114;i:1;R:9;}s:24:"1230:ml-grtstaffid.label";a:2:{i:0;R:31114;i:1;R:9;}s:20:"1230:ml-gender.label";a:2:{i:0;R:31114;i:1;R:9;}s:26:"1230:ml-governmentid.label";a:2:{i:0;R:31114;i:1;R:9;}s:30:"1230:ml-graceperiodtypes.label";a:2:{i:0;R:31114;i:1;R:9;}s:19:"1230:ml-group.label";a:2:{i:0;R:31114;i:1;R:9;}s:23:"1230:ml-groupflag.label";a:2:{i:0;R:31114;i:1;R:9;}s:25:"1230:ml-groupstatus.label";a:2:{i:0;R:31114;i:1;R:9;}s:25:"1230:ml-handicapped.label";a:2:{i:0;R:31114;i:1;R:9;}s:25:"1230:ml-intcaltypes.label";a:2:{i:0;R:31114;i:1;R:9;}s:22:"1230:ml-interest.label";a:2:{i:0;R:31114;i:1;R:9;}s:30:"1230:ml-interestcalcrule.label";a:2:{i:0;R:31114;i:1;R:9;}s:27:"1230:ml-interesttypes.label";a:2:{i:0;R:31114;i:1;R:9;}s:22:"1230:ml-language.label";a:2:{i:0;R:31114;i:1;R:9;}s:18:"1230:ml-loan.label";a:2:{i:0;R:31114;i:1;R:9;}s:26:"1230:ml-loanpurposes.label";a:2:{i:0;R:31114;i:1;R:9;}s:27:"1230:ml-maritalstatus.label";a:2:{i:0;R:31114;i:1;R:9;}s:25:"1230:ml-meetingtime.label";a:2:{i:0;R:31114;i:1;R:9;}s:22:"1230:ml-newvalue.label";a:2:{i:0;R:31114;i:1;R:9;}s:34:"1230:ml-noofclientspercenter.label";a:2:{i:0;R:31114;i:1;R:9;}s:33:"1230:ml-noofclientspergroup.label";a:2:{i:0;R:31114;i:1;R:9;}s:20:"1230:ml-office.label";a:2:{i:0;R:31114;i:1;R:9;}s:24:"1230:ml-officecode.label";a:2:{i:0;R:31114;i:1;R:9;}s:26:"1230:ml-officelevels.label";a:2:{i:0;R:31114;i:1;R:9;}s:26:"1230:ml-officestatus.label";a:2:{i:0;R:31114;i:1;R:9;}s:22:"1230:ml-oldvalue.label";a:2:{i:0;R:31114;i:1;R:9;}s:25:"1230:ml-paymenttype.label";a:2:{i:0;R:31114;i:1;R:9;}s:25:"1230:ml-paymenttypes.cash";a:2:{i:0;R:31114;i:1;R:9;}s:27:"1230:ml-paymenttypes.cheque";a:2:{i:0;R:31114;i:1;R:9;}s:28:"1230:ml-paymenttypes.voucher";a:2:{i:0;R:31114;i:1;R:9;}s:25:"1230:ml-permissions.label";a:2:{i:0;R:31114;i:1;R:9;}s:23:"1230:ml-personnel.label";a:2:{i:0;R:31114;i:1;R:9;}s:29:"1230:ml-personnellevels.label";a:2:{i:0;R:31114;i:1;R:9;}s:29:"1230:ml-personnelstatus.label";a:2:{i:0;R:31114;i:1;R:9;}s:29:"1230:ml-personneltitles.label";a:2:{i:0;R:31114;i:1;R:9;}s:24:"1230:ml-postalcode.label";a:2:{i:0;R:31114;i:1;R:9;}s:27:"1230:ml-povertystatus.label";a:2:{i:0;R:31114;i:1;R:9;}s:33:"1230:ml-prdapplicablemaster.label";a:2:{i:0;R:31114;i:1;R:9;}s:35:"1230:ml-productcategorystatus.label";a:2:{i:0;R:31114;i:1;R:9;}s:26:"1230:ml-productstate.label";a:2:{i:0;R:31114;i:1;R:9;}s:27:"1230:ml-productstatus.label";a:2:{i:0;R:31114;i:1;R:9;}s:23:"1230:ml-rankofday.first";a:2:{i:0;R:31114;i:1;R:9;}s:24:"1230:ml-rankofday.second";a:2:{i:0;R:31114;i:1;R:9;}s:23:"1230:ml-rankofday.third";a:2:{i:0;R:31114;i:1;R:9;}s:24:"1230:ml-rankofday.fourth";a:2:{i:0;R:31114;i:1;R:9;}s:22:"1230:ml-rankofday.last";a:2:{i:0;R:31114;i:1;R:9;}s:32:"1230:ml-recommendedamtunit.label";a:2:{i:0;R:31114;i:1;R:9;}s:31:"1230:ml-replacementstatus.label";a:2:{i:0;R:31114;i:1;R:9;}s:24:"1230:ml-salutation.label";a:2:{i:0;R:31114;i:1;R:9;}s:21:"1230:ml-savings.label";a:2:{i:0;R:31114;i:1;R:9;}s:27:"1230:ml-savingsstatus.label";a:2:{i:0;R:31114;i:1;R:9;}s:25:"1230:ml-savingstype.label";a:2:{i:0;R:31114;i:1;R:9;}s:27:"1230:ml-servicecharge.label";a:2:{i:0;R:31114;i:1;R:9;}s:26:"1230:ml-spousefather.label";a:2:{i:0;R:31114;i:1;R:9;}s:19:"1230:ml-state.label";a:2:{i:0;R:31114;i:1;R:9;}s:20:"1230:ml-titles.label";a:2:{i:0;R:31114;i:1;R:9;}s:18:"1230:ml-user.label";a:2:{i:0;R:31114;i:1;R:9;}s:22:"1230:ml-weekday.friday";a:2:{i:0;R:31114;i:1;R:9;}s:22:"1230:ml-weekday.monday";a:2:{i:0;R:31114;i:1;R:9;}s:24:"1230:ml-weekday.saturday";a:2:{i:0;R:31114;i:1;R:9;}s:22:"1230:ml-weekday.sunday";a:2:{i:0;R:31114;i:1;R:9;}s:24:"1230:ml-weekday.thursday";a:2:{i:0;R:31114;i:1;R:9;}s:23:"1230:ml-weekday.tuesday";a:2:{i:0;R:31114;i:1;R:9;}s:25:"1230:ml-weekday.wednesday";a:2:{i:0;R:31114;i:1;R:9;}s:22:"1230:ml-weekdays.label";a:2:{i:0;R:31114;i:1;R:9;}s:19:"1230:ml-yesno.label";a:2:{i:0;R:31114;i:1;R:9;}s:20:"1230:ml-yesnoflag.no";a:2:{i:0;R:31114;i:1;R:9;}s:21:"1230:ml-yesnoflag.yes";a:2:{i:0;R:31114;i:1;R:9;}s:16:"1230:offficeui-1";a:2:{i:0;s:19:"out-mifos-offficeui";i:1;R:9;}s:50:"1230:offficeui-office.address.address1.requiredmsg";a:2:{i:0;R:31227;i:1;R:9;}s:46:"1230:offficeui-office.address.city.requiredmsg";a:2:{i:0;R:31227;i:1;R:9;}s:49:"1230:offficeui-office.address.country.requiredmsg";a:2:{i:0;R:31227;i:1;R:9;}s:52:"1230:offficeui-office.address.postalcode.requiredmsg";a:2:{i:0;R:31227;i:1;R:9;}s:47:"1230:offficeui-office.address.state.requiredmsg";a:2:{i:0;R:31227;i:1;R:9;}s:39:"1230:offficeui-office.addressnotentered";a:2:{i:0;R:31227;i:1;R:9;}s:28:"1230:offficeui-office.cancel";a:2:{i:0;R:31227;i:1;R:9;}s:26:"1230:offficeui-office.edit";a:2:{i:0;R:31227;i:1;R:9;}s:42:"1230:offficeui-office.error.creationfailed";a:2:{i:0;R:31227;i:1;R:9;}s:52:"1230:offficeui-office.error.errorinloadingmasterdata";a:2:{i:0;R:31227;i:1;R:9;}s:37:"1230:offficeui-office.error.getfailed";a:2:{i:0;R:31227;i:1;R:9;}s:45:"1230:offficeui-office.error.hasactivechildern";a:2:{i:0;R:31227;i:1;R:9;}s:56:"1230:offficeui-office.error.hasactiveofficewiththislevel";a:2:{i:0;R:31227;i:1;R:9;}s:46:"1230:offficeui-office.error.hasactivepersonnel";a:2:{i:0;R:31227;i:1;R:9;}s:38:"1230:offficeui-office.error.loadfailed";a:2:{i:0;R:31227;i:1;R:9;}s:42:"1230:offficeui-office.error.updationfailed";a:2:{i:0;R:31227;i:1;R:9;}s:51:"1230:offficeui-office.error.updationhierarchyfailed";a:2:{i:0;R:31227;i:1;R:9;}s:46:"1230:offficeui-office.formofficetype.nameexist";a:2:{i:0;R:31227;i:1;R:9;}s:49:"1230:offficeui-office.formofficetype.pleaselelect";a:2:{i:0;R:31227;i:1;R:9;}s:48:"1230:offficeui-office.formofficetype.requiredmsg";a:2:{i:0;R:31227;i:1;R:9;}s:51:"1230:offficeui-office.formofficetype.shortnameexist";a:2:{i:0;R:31227;i:1;R:9;}s:50:"1230:offficeui-office.formparentoffice.requiredmsg";a:2:{i:0;R:31227;i:1;R:9;}s:33:"1230:offficeui-office.labeladdnew";a:2:{i:0;R:31227;i:1;R:9;}s:39:"1230:offficeui-office.labeladdnewoffice";a:2:{i:0;R:31227;i:1;R:9;}s:42:"1230:offficeui-office.labeladdnewofficenow";a:2:{i:0;R:31227;i:1;R:9;}s:46:"1230:offficeui-office.labeladditioninformation";a:2:{i:0;R:31227;i:1;R:9;}s:34:"1230:offficeui-office.labeladdress";a:2:{i:0;R:31227;i:1;R:9;}s:35:"1230:offficeui-office.labeladdress1";a:2:{i:0;R:31227;i:1;R:9;}s:35:"1230:offficeui-office.labeladdress2";a:2:{i:0;R:31227;i:1;R:9;}s:35:"1230:offficeui-office.labeladdress3";a:2:{i:0;R:31227;i:1;R:9;}s:37:"1230:offficeui-office.labelareaoffice";a:2:{i:0;R:31227;i:1;R:9;}s:39:"1230:offficeui-office.labelbranchoffice";a:2:{i:0;R:31227;i:1;R:9;}s:39:"1230:offficeui-office.labelchangestatus";a:2:{i:0;R:31227;i:1;R:9;}s:45:"1230:offficeui-office.labelchecklevelincluded";a:2:{i:0;R:31227;i:1;R:9;}s:31:"1230:offficeui-office.labelcity";a:2:{i:0;R:31227;i:1;R:9;}s:44:"1230:offficeui-office.labelcompletethefields";a:2:{i:0;R:31227;i:1;R:9;}s:34:"1230:offficeui-office.labelcountry";a:2:{i:0;R:31227;i:1;R:9;}s:46:"1230:offficeui-office.labelcreatedsuccessfully";a:2:{i:0;R:31227;i:1;R:9;}s:43:"1230:offficeui-office.labeldivisionaloffice";a:2:{i:0;R:31227;i:1;R:9;}s:41:"1230:offficeui-office.labeleditofficeinfo";a:2:{i:0;R:31227;i:1;R:9;}s:49:"1230:offficeui-office.labelenterofficeinformation";a:2:{i:0;R:31227;i:1;R:9;}s:51:"1230:offficeui-office.labelfieldsmarkedwithasterisk";a:2:{i:0;R:31227;i:1;R:9;}s:37:"1230:offficeui-office.labelheadoffice";a:2:{i:0;R:31227;i:1;R:9;}s:36:"1230:offficeui-office.labellinkadmin";a:2:{i:0;R:31227;i:1;R:9;}s:42:"1230:offficeui-office.labellinkviewoffices";a:2:{i:0;R:31227;i:1;R:9;}s:48:"1230:offficeui-office.labelmandatoryinstructions";a:2:{i:0;R:31227;i:1;R:9;}s:38:"1230:offficeui-office.labelmaxminlevel";a:2:{i:0;R:31227;i:1;R:9;}s:29:"1230:offficeui-office.labelno";a:2:{i:0;R:31227;i:1;R:9;}s:31:"1230:offficeui-office.labelnote";a:2:{i:0;R:31227;i:1;R:9;}s:42:"1230:offficeui-office.labelnoteinstruction";a:2:{i:0;R:31227;i:1;R:9;}s:40:"1230:offficeui-office.labelofficeaddress";a:2:{i:0;R:31227;i:1;R:9;}s:47:"1230:offficeui-office.labelofficeassignednumber";a:2:{i:0;R:31227;i:1;R:9;}s:37:"1230:offficeui-office.labelofficecode";a:2:{i:0;R:31227;i:1;R:9;}s:51:"1230:offficeui-office.labelofficecreatedinstruction";a:2:{i:0;R:31227;i:1;R:9;}s:40:"1230:offficeui-office.labelofficedetails";a:2:{i:0;R:31227;i:1;R:9;}s:44:"1230:offficeui-office.labelofficeinformation";a:2:{i:0;R:31227;i:1;R:9;}s:37:"1230:offficeui-office.labelofficename";a:2:{i:0;R:31227;i:1;R:9;}s:42:"1230:offficeui-office.labelofficeshortname";a:2:{i:0;R:31227;i:1;R:9;}s:37:"1230:offficeui-office.labelofficetype";a:2:{i:0;R:31227;i:1;R:9;}s:39:"1230:offficeui-office.labelparentoffice";a:2:{i:0;R:31227;i:1;R:9;}s:37:"1230:offficeui-office.labelpleasenote";a:2:{i:0;R:31227;i:1;R:9;}s:37:"1230:offficeui-office.labelpostalcode";a:2:{i:0;R:31227;i:1;R:9;}s:34:"1230:offficeui-office.labelpresent";a:2:{i:0;R:31227;i:1;R:9;}s:51:"1230:offficeui-office.labelpreviewofficeinformation";a:2:{i:0;R:31227;i:1;R:9;}s:41:"1230:offficeui-office.labelregionaloffice";a:2:{i:0;R:31227;i:1;R:9;}s:42:"1230:offficeui-office.labelreviewandsubmit";a:2:{i:0;R:31227;i:1;R:9;}s:32:"1230:offficeui-office.labelstate";a:2:{i:0;R:31227;i:1;R:9;}s:33:"1230:offficeui-office.labelstatus";a:2:{i:0;R:31227;i:1;R:9;}s:44:"1230:offficeui-office.labelsubregionaloffice";a:2:{i:0;R:31227;i:1;R:9;}s:36:"1230:offficeui-office.labeltelephone";a:2:{i:0;R:31227;i:1;R:9;}s:49:"1230:offficeui-office.labelviewofficeaddnewoffice";a:2:{i:0;R:31227;i:1;R:9;}s:44:"1230:offficeui-office.labelviewofficedetails";a:2:{i:0;R:31227;i:1;R:9;}s:46:"1230:offficeui-office.labelviewofficehierarchy";a:2:{i:0;R:31227;i:1;R:9;}s:48:"1230:offficeui-office.labelviewofficeinstruction";a:2:{i:0;R:31227;i:1;R:9;}s:41:"1230:offficeui-office.mandatory_selectbox";a:2:{i:0;R:31227;i:1;R:9;}s:39:"1230:offficeui-office.mandatory_textbox";a:2:{i:0;R:31227;i:1;R:9;}s:45:"1230:offficeui-office.numberofmemberspergroup";a:2:{i:0;R:31227;i:1;R:9;}s:46:"1230:offficeui-office.numberofmembersperkendra";a:2:{i:0;R:31227;i:1;R:9;}s:33:"1230:offficeui-office.officelevel";a:2:{i:0;R:31227;i:1;R:9;}s:32:"1230:offficeui-office.officename";a:2:{i:0;R:31227;i:1;R:9;}s:44:"1230:offficeui-office.officename.displayname";a:2:{i:0;R:31227;i:1;R:9;}s:40:"1230:offficeui-office.officename.maskmsg";a:2:{i:0;R:31227;i:1;R:9;}s:37:"1230:offficeui-office.officeshortname";a:2:{i:0;R:31227;i:1;R:9;}s:32:"1230:offficeui-office.officetype";a:2:{i:0;R:31227;i:1;R:9;}s:35:"1230:offficeui-office.operationmode";a:2:{i:0;R:31227;i:1;R:9;}s:34:"1230:offficeui-office.parentoffice";a:2:{i:0;R:31227;i:1;R:9;}s:29:"1230:offficeui-office.preview";a:2:{i:0;R:31227;i:1;R:9;}s:43:"1230:offficeui-office.shortname.displayname";a:2:{i:0;R:31227;i:1;R:9;}s:28:"1230:offficeui-office.submit";a:2:{i:0;R:31227;i:1;R:9;}s:27:"1230:offficeui-office.title";a:2:{i:0;R:31227;i:1;R:9;}s:39:"1230:offficeui-cf.lookupentity.entityid";a:2:{i:0;R:31227;i:1;R:9;}s:29:"1230:offficeui-cfdef.entityid";a:2:{i:0;R:31227;i:1;R:9;}s:41:"1230:offficeui-error.activity.not.allowed";a:2:{i:0;R:31227;i:1;R:9;}s:34:"1230:offficeui-error.noofficelevel";a:2:{i:0;R:31227;i:1;R:9;}s:35:"1230:offficeui-error.noofficestatus";a:2:{i:0;R:31227;i:1;R:9;}s:45:"1230:offficeui-error.office.childhasmorelevel";a:2:{i:0;R:31227;i:1;R:9;}s:41:"1230:offficeui-error.office.duplicatename";a:2:{i:0;R:31227;i:1;R:9;}s:46:"1230:offficeui-error.office.duplicateshortname";a:2:{i:0;R:31227;i:1;R:9;}s:52:"1230:offficeui-error.office.futureholidaysnotthesame";a:2:{i:0;R:31227;i:1;R:9;}s:47:"1230:offficeui-error.office.invalidparentoffice";a:2:{i:0;R:31227;i:1;R:9;}s:46:"1230:offficeui-error.office.levelnotconfigured";a:2:{i:0;R:31227;i:1;R:9;}s:43:"1230:offficeui-error.office.mandatory_field";a:2:{i:0;R:31227;i:1;R:9;}s:38:"1230:offficeui-error.office.maxreached";a:2:{i:0;R:31227;i:1;R:9;}s:56:"1230:offficeui-error.office.provideadditionalinformation";a:2:{i:0;R:31227;i:1;R:9;}s:43:"1230:offficeui-error.office.customdatefield";a:2:{i:0;R:31227;i:1;R:9;}s:40:"1230:offficeui-error.versionnodonotmatch";a:2:{i:0;R:31227;i:1;R:9;}s:53:"1230:offficeui-errors.office.officelevelnotconfigured";a:2:{i:0;R:31227;i:1;R:9;}s:42:"1230:offficeui-errors.office.parentinvalid";a:2:{i:0;R:31227;i:1;R:9;}s:44:"1230:offficeui-errors.office.parentnotactive";a:2:{i:0;R:31227;i:1;R:9;}s:48:"1230:offficeui-errors.office.shortname.minlength";a:2:{i:0;R:31227;i:1;R:9;}s:52:"1230:offficeui-errors.office.updationhierarchyfailed";a:2:{i:0;R:31227;i:1;R:9;}s:28:"1230:offficeui-errors.prefix";a:2:{i:0;R:31227;i:1;R:9;}s:28:"1230:offficeui-errors.suffix";a:2:{i:0;R:31227;i:1;R:9;}s:56:"1230:offficeui-exception.framework.doublesubmitexception";a:2:{i:0;R:31227;i:1;R:9;}s:63:"1230:offficeui-exception.framework.fieldconfiguration.mandatory";a:2:{i:0;R:31227;i:1;R:9;}s:13:"1230:office-1";a:2:{i:0;s:16:"out-mifos-office";i:1;R:9;}s:36:"1230:office-cf.lookupentity.entityid";a:2:{i:0;R:31344;i:1;R:9;}s:26:"1230:office-cfdef.entityid";a:2:{i:0;R:31344;i:1;R:9;}s:38:"1230:office-error.activity.not.allowed";a:2:{i:0;R:31344;i:1;R:9;}s:43:"1230:office-error.office.levelnotconfigured";a:2:{i:0;R:31344;i:1;R:9;}s:40:"1230:office-error.office.mandatory_field";a:2:{i:0;R:31344;i:1;R:9;}s:50:"1230:office-errors.office.officelevelnotconfigured";a:2:{i:0;R:31344;i:1;R:9;}s:39:"1230:office-errors.office.parentinvalid";a:2:{i:0;R:31344;i:1;R:9;}s:41:"1230:office-errors.office.parentnotactive";a:2:{i:0;R:31344;i:1;R:9;}s:45:"1230:office-errors.office.shortname.minlength";a:2:{i:0;R:31344;i:1;R:9;}s:49:"1230:office-errors.office.updationhierarchyfailed";a:2:{i:0;R:31344;i:1;R:9;}s:25:"1230:office-errors.prefix";a:2:{i:0;R:31344;i:1;R:9;}s:25:"1230:office-errors.suffix";a:2:{i:0;R:31344;i:1;R:9;}s:53:"1230:office-exception.framework.doublesubmitexception";a:2:{i:0;R:31344;i:1;R:9;}s:60:"1230:office-exception.framework.fieldconfiguration.mandatory";a:2:{i:0;R:31344;i:1;R:9;}s:47:"1230:office-office.address.address1.requiredmsg";a:2:{i:0;R:31344;i:1;R:9;}s:43:"1230:office-office.address.city.requiredmsg";a:2:{i:0;R:31344;i:1;R:9;}s:46:"1230:office-office.address.country.requiredmsg";a:2:{i:0;R:31344;i:1;R:9;}s:49:"1230:office-office.address.postalcode.requiredmsg";a:2:{i:0;R:31344;i:1;R:9;}s:44:"1230:office-office.address.state.requiredmsg";a:2:{i:0;R:31344;i:1;R:9;}s:32:"1230:office-office.button.cancel";a:2:{i:0;R:31344;i:1;R:9;}s:30:"1230:office-office.button.edit";a:2:{i:0;R:31344;i:1;R:9;}s:33:"1230:office-office.button.preview";a:2:{i:0;R:31344;i:1;R:9;}s:39:"1230:office-office.error.creationfailed";a:2:{i:0;R:31344;i:1;R:9;}s:49:"1230:office-office.error.errorinloadingmasterdata";a:2:{i:0;R:31344;i:1;R:9;}s:34:"1230:office-office.error.getfailed";a:2:{i:0;R:31344;i:1;R:9;}s:42:"1230:office-office.error.hasactivechildern";a:2:{i:0;R:31344;i:1;R:9;}s:53:"1230:office-office.error.hasactiveofficewiththislevel";a:2:{i:0;R:31344;i:1;R:9;}s:43:"1230:office-office.error.hasactivepersonnel";a:2:{i:0;R:31344;i:1;R:9;}s:35:"1230:office-office.error.loadfailed";a:2:{i:0;R:31344;i:1;R:9;}s:39:"1230:office-office.error.updationfailed";a:2:{i:0;R:31344;i:1;R:9;}s:48:"1230:office-office.error.updationhierarchyfailed";a:2:{i:0;R:31344;i:1;R:9;}s:43:"1230:office-office.formofficetype.nameexist";a:2:{i:0;R:31344;i:1;R:9;}s:46:"1230:office-office.formofficetype.pleaselelect";a:2:{i:0;R:31344;i:1;R:9;}s:45:"1230:office-office.formofficetype.requiredmsg";a:2:{i:0;R:31344;i:1;R:9;}s:48:"1230:office-office.formofficetype.shortnameexist";a:2:{i:0;R:31344;i:1;R:9;}s:47:"1230:office-office.formparentoffice.requiredmsg";a:2:{i:0;R:31344;i:1;R:9;}s:30:"1230:office-office.labeladdnew";a:2:{i:0;R:31344;i:1;R:9;}s:36:"1230:office-office.labeladdnewoffice";a:2:{i:0;R:31344;i:1;R:9;}s:39:"1230:office-office.labeladdnewofficenow";a:2:{i:0;R:31344;i:1;R:9;}s:43:"1230:office-office.labeladditioninformation";a:2:{i:0;R:31344;i:1;R:9;}s:31:"1230:office-office.labeladdress";a:2:{i:0;R:31344;i:1;R:9;}s:32:"1230:office-office.labeladdress1";a:2:{i:0;R:31344;i:1;R:9;}s:32:"1230:office-office.labeladdress2";a:2:{i:0;R:31344;i:1;R:9;}s:32:"1230:office-office.labeladdress3";a:2:{i:0;R:31344;i:1;R:9;}s:34:"1230:office-office.labelareaoffice";a:2:{i:0;R:31344;i:1;R:9;}s:36:"1230:office-office.labelbranchoffice";a:2:{i:0;R:31344;i:1;R:9;}s:36:"1230:office-office.labelchangestatus";a:2:{i:0;R:31344;i:1;R:9;}s:42:"1230:office-office.labelchecklevelincluded";a:2:{i:0;R:31344;i:1;R:9;}s:28:"1230:office-office.labelcity";a:2:{i:0;R:31344;i:1;R:9;}s:41:"1230:office-office.labelcompletethefields";a:2:{i:0;R:31344;i:1;R:9;}s:31:"1230:office-office.labelcountry";a:2:{i:0;R:31344;i:1;R:9;}s:43:"1230:office-office.labelcreatedsuccessfully";a:2:{i:0;R:31344;i:1;R:9;}s:38:"1230:office-office.labeleditofficeinfo";a:2:{i:0;R:31344;i:1;R:9;}s:46:"1230:office-office.labelenterofficeinformation";a:2:{i:0;R:31344;i:1;R:9;}s:48:"1230:office-office.labelfieldsmarkedwithasterisk";a:2:{i:0;R:31344;i:1;R:9;}s:34:"1230:office-office.labelheadoffice";a:2:{i:0;R:31344;i:1;R:9;}s:33:"1230:office-office.labellinkadmin";a:2:{i:0;R:31344;i:1;R:9;}s:39:"1230:office-office.labellinkviewoffices";a:2:{i:0;R:31344;i:1;R:9;}s:45:"1230:office-office.labelmandatoryinstructions";a:2:{i:0;R:31344;i:1;R:9;}s:35:"1230:office-office.labelmaxminlevel";a:2:{i:0;R:31344;i:1;R:9;}s:26:"1230:office-office.labelno";a:2:{i:0;R:31344;i:1;R:9;}s:28:"1230:office-office.labelnote";a:2:{i:0;R:31344;i:1;R:9;}s:39:"1230:office-office.labelnoteinstruction";a:2:{i:0;R:31344;i:1;R:9;}s:37:"1230:office-office.labelofficeaddress";a:2:{i:0;R:31344;i:1;R:9;}s:44:"1230:office-office.labelofficeassignednumber";a:2:{i:0;R:31344;i:1;R:9;}s:34:"1230:office-office.labelofficecode";a:2:{i:0;R:31344;i:1;R:9;}s:48:"1230:office-office.labelofficecreatedinstruction";a:2:{i:0;R:31344;i:1;R:9;}s:37:"1230:office-office.labelofficedetails";a:2:{i:0;R:31344;i:1;R:9;}s:41:"1230:office-office.labelofficeinformation";a:2:{i:0;R:31344;i:1;R:9;}s:34:"1230:office-office.labelofficename";a:2:{i:0;R:31344;i:1;R:9;}s:39:"1230:office-office.labelofficeshortname";a:2:{i:0;R:31344;i:1;R:9;}s:34:"1230:office-office.labelofficetype";a:2:{i:0;R:31344;i:1;R:9;}s:36:"1230:office-office.labelparentoffice";a:2:{i:0;R:31344;i:1;R:9;}s:34:"1230:office-office.labelpleasenote";a:2:{i:0;R:31344;i:1;R:9;}s:34:"1230:office-office.labelpostalcode";a:2:{i:0;R:31344;i:1;R:9;}s:31:"1230:office-office.labelpresent";a:2:{i:0;R:31344;i:1;R:9;}s:48:"1230:office-office.labelpreviewofficeinformation";a:2:{i:0;R:31344;i:1;R:9;}s:38:"1230:office-office.labelregionaloffice";a:2:{i:0;R:31344;i:1;R:9;}s:39:"1230:office-office.labelreviewandsubmit";a:2:{i:0;R:31344;i:1;R:9;}s:29:"1230:office-office.labelstate";a:2:{i:0;R:31344;i:1;R:9;}s:30:"1230:office-office.labelstatus";a:2:{i:0;R:31344;i:1;R:9;}s:41:"1230:office-office.labelsubregionaloffice";a:2:{i:0;R:31344;i:1;R:9;}s:33:"1230:office-office.labeltelephone";a:2:{i:0;R:31344;i:1;R:9;}s:46:"1230:office-office.labelviewofficeaddnewoffice";a:2:{i:0;R:31344;i:1;R:9;}s:41:"1230:office-office.labelviewofficedetails";a:2:{i:0;R:31344;i:1;R:9;}s:43:"1230:office-office.labelviewofficehierarchy";a:2:{i:0;R:31344;i:1;R:9;}s:45:"1230:office-office.labelviewofficeinstruction";a:2:{i:0;R:31344;i:1;R:9;}s:38:"1230:office-office.mandatory_selectbox";a:2:{i:0;R:31344;i:1;R:9;}s:36:"1230:office-office.mandatory_textbox";a:2:{i:0;R:31344;i:1;R:9;}s:42:"1230:office-office.numberofmemberspergroup";a:2:{i:0;R:31344;i:1;R:9;}s:43:"1230:office-office.numberofmembersperkendra";a:2:{i:0;R:31344;i:1;R:9;}s:29:"1230:office-office.officename";a:2:{i:0;R:31344;i:1;R:9;}s:41:"1230:office-office.officename.displayname";a:2:{i:0;R:31344;i:1;R:9;}s:37:"1230:office-office.officename.maskmsg";a:2:{i:0;R:31344;i:1;R:9;}s:34:"1230:office-office.officeshortname";a:2:{i:0;R:31344;i:1;R:9;}s:29:"1230:office-office.officetype";a:2:{i:0;R:31344;i:1;R:9;}s:31:"1230:office-office.parentoffice";a:2:{i:0;R:31344;i:1;R:9;}s:40:"1230:office-office.shortname.displayname";a:2:{i:0;R:31344;i:1;R:9;}s:24:"1230:office-office.title";a:2:{i:0;R:31344;i:1;R:9;}s:34:"1230:pd-error.activity.not.allowed";a:2:{i:0;R:22;i:1;R:9;}s:34:"1230:pd-errors.calcinstallmenttype";a:2:{i:0;R:22;i:1;R:9;}s:33:"1230:pd-errors.calcloanamounttype";a:2:{i:0;R:22;i:1;R:9;}s:21:"1230:pd-errors.choose";a:2:{i:0;R:22;i:1;R:9;}s:28:"1230:pd-errors.decimalformat";a:2:{i:0;R:22;i:1;R:9;}s:25:"1230:pd-errors.defintrate";a:2:{i:0;R:22;i:1;R:9;}s:31:"1230:pd-errors.defintrateconfig";a:2:{i:0;R:22;i:1;R:9;}s:28:"1230:pd-errors.defloanamount";a:2:{i:0;R:22;i:1;R:9;}s:24:"1230:pd-errors.defminmax";a:2:{i:0;R:22;i:1;R:9;}s:30:"1230:pd-errors.defminmaxconfig";a:2:{i:0;R:22;i:1;R:9;}s:34:"1230:pd-errors.defaultinstallments";a:2:{i:0;R:22;i:1;R:9;}s:32:"1230:pd-errors.defaultloanamount";a:2:{i:0;R:22;i:1;R:9;}s:45:"1230:pd-errors.defaultloanamountinvalidformat";a:2:{i:0;R:22;i:1;R:9;}s:30:"1230:pd-errors.definstallments";a:2:{i:0;R:22;i:1;R:9;}s:39:"1230:pd-errors.definterestinvalidformat";a:2:{i:0;R:22;i:1;R:9;}s:21:"1230:pd-errors.double";a:2:{i:0;R:22;i:1;R:9;}s:31:"1230:pd-errors.duplcategoryname";a:2:{i:0;R:22;i:1;R:9;}s:30:"1230:pd-errors.duplprdinstname";a:2:{i:0;R:22;i:1;R:9;}s:35:"1230:pd-errors.duplprdinstshortname";a:2:{i:0;R:22;i:1;R:9;}s:31:"1230:pd-errors.enddateexception";a:2:{i:0;R:22;i:1;R:9;}s:29:"1230:pd-errors.endinstallment";a:2:{i:0;R:22;i:1;R:9;}s:28:"1230:pd-errors.endloanamount";a:2:{i:0;R:22;i:1;R:9;}s:27:"1230:pd-errors.feefrequency";a:2:{i:0;R:22;i:1;R:9;}s:31:"1230:pd-errors.feecurrencymatch";a:2:{i:0;R:22;i:1;R:9;}s:21:"1230:pd-errors.footer";a:2:{i:0;R:22;i:1;R:9;}s:22:"1230:pd-errors.generic";a:2:{i:0;R:22;i:1;R:9;}s:29:"1230:pd-errors.graceperioddur";a:2:{i:0;R:22;i:1;R:9;}s:30:"1230:pd-errors.greaterthanzero";a:2:{i:0;R:22;i:1;R:9;}s:21:"1230:pd-errors.header";a:2:{i:0;R:22;i:1;R:9;}s:22:"1230:pd-errors.intrate";a:2:{i:0;R:22;i:1;R:9;}s:27:"1230:pd-errors.intratevalue";a:2:{i:0;R:22;i:1;R:9;}s:22:"1230:pd-errors.integer";a:2:{i:0;R:22;i:1;R:9;}s:22:"1230:pd-errors.invalid";a:2:{i:0;R:22;i:1;R:9;}s:25:"1230:pd-errors.mandamount";a:2:{i:0;R:22;i:1;R:9;}s:24:"1230:pd-errors.mandatory";a:2:{i:0;R:22;i:1;R:9;}s:30:"1230:pd-errors.mandatoryconfig";a:2:{i:0;R:22;i:1;R:9;}s:19:"1230:pd-errors.mask";a:2:{i:0;R:22;i:1;R:9;}s:21:"1230:pd-errors.maxmin";a:2:{i:0;R:22;i:1;R:9;}s:23:"1230:pd-errors.maxvalue";a:2:{i:0;R:22;i:1;R:9;}s:28:"1230:pd-errors.maximumlength";a:2:{i:0;R:22;i:1;R:9;}s:30:"1230:pd-errors.maxinstallments";a:2:{i:0;R:22;i:1;R:9;}s:39:"1230:pd-errors.maxinterestinvalidformat";a:2:{i:0;R:22;i:1;R:9;}s:28:"1230:pd-errors.maxloanamount";a:2:{i:0;R:22;i:1;R:9;}s:41:"1230:pd-errors.maxloanamountinvalidformat";a:2:{i:0;R:22;i:1;R:9;}s:28:"1230:pd-errors.maxminintrate";a:2:{i:0;R:22;i:1;R:9;}s:34:"1230:pd-errors.maxminintrateconfig";a:2:{i:0;R:22;i:1;R:9;}s:31:"1230:pd-errors.maxminloanamount";a:2:{i:0;R:22;i:1;R:9;}s:32:"1230:pd-errors.maxminnoofinstall";a:2:{i:0;R:22;i:1;R:9;}s:29:"1230:pd-errors.maxpenaltyrate";a:2:{i:0;R:22;i:1;R:9;}s:28:"1230:pd-errors.minimumlength";a:2:{i:0;R:22;i:1;R:9;}s:30:"1230:pd-errors.mininstallments";a:2:{i:0;R:22;i:1;R:9;}s:39:"1230:pd-errors.mininterestinvalidformat";a:2:{i:0;R:22;i:1;R:9;}s:28:"1230:pd-errors.minloanamount";a:2:{i:0;R:22;i:1;R:9;}s:41:"1230:pd-errors.minloanamountinvalidformat";a:2:{i:0;R:22;i:1;R:9;}s:32:"1230:pd-errors.mustnotbenegative";a:2:{i:0;R:22;i:1;R:9;}s:21:"1230:pd-errors.prefix";a:2:{i:0;R:22;i:1;R:9;}s:41:"1230:pd-errors.principallast_invalidgrace";a:2:{i:0;R:22;i:1;R:9;}s:21:"1230:pd-errors.select";a:2:{i:0;R:22;i:1;R:9;}s:27:"1230:pd-errors.selectconfig";a:2:{i:0;R:22;i:1;R:9;}s:28:"1230:pd-errors.shortnamemask";a:2:{i:0;R:22;i:1;R:9;}s:33:"1230:pd-errors.startdateexception";a:2:{i:0;R:22;i:1;R:9;}s:39:"1230:pd-errors.startdateupdateexception";a:2:{i:0;R:22;i:1;R:9;}s:34:"1230:pd-errors.startendinstallment";a:2:{i:0;R:22;i:1;R:9;}s:38:"1230:pd-errors.startendrangeloanamount";a:2:{i:0;R:22;i:1;R:9;}s:31:"1230:pd-errors.startinstallment";a:2:{i:0;R:22;i:1;R:9;}s:30:"1230:pd-errors.startloanamount";a:2:{i:0;R:22;i:1;R:9;}s:21:"1230:pd-errors.suffix";a:2:{i:0;R:22;i:1;R:9;}s:49:"1230:pd-exception.framework.doublesubmitexception";a:2:{i:0;R:22;i:1;R:9;}s:54:"1230:pd-exceptions.application.productdef.invalidfield";a:2:{i:0;R:22;i:1;R:9;}s:55:"1230:pd-exceptions.declineinterestdisbursementdeduction";a:2:{i:0;R:22;i:1;R:9;}s:38:"1230:pd-product.definemixfornewproduct";a:2:{i:0;R:22;i:1;R:9;}s:30:"1230:pd-product.glcodeinterest";a:2:{i:0;R:22;i:1;R:9;}s:31:"1230:pd-product.glcodepenalties";a:2:{i:0;R:22;i:1;R:9;}s:31:"1230:pd-product.glcodeprincipal";a:2:{i:0;R:22;i:1;R:9;}s:26:"1230:pd-product.accounting";a:2:{i:0;R:22;i:1;R:9;}s:22:"1230:pd-product.active";a:2:{i:0;R:22;i:1;R:9;}s:33:"1230:pd-product.addnewloanproduct";a:2:{i:0;R:22;i:1;R:9;}s:27:"1230:pd-product.addloanprod";a:2:{i:0;R:22;i:1;R:9;}s:22:"1230:pd-product.addnew";a:2:{i:0;R:22;i:1;R:9;}s:29:"1230:pd-product.addnewloanprd";a:2:{i:0;R:22;i:1;R:9;}s:28:"1230:pd-product.addnewprdcat";a:2:{i:0;R:22;i:1;R:9;}s:32:"1230:pd-product.addnewsavingsprd";a:2:{i:0;R:22;i:1;R:9;}s:29:"1230:pd-product.addsuccessful";a:2:{i:0;R:22;i:1;R:9;}s:21:"1230:pd-product.admin";a:2:{i:0;R:22;i:1;R:9;}s:31:"1230:pd-product.allowedproducts";a:2:{i:0;R:22;i:1;R:9;}s:22:"1230:pd-product.amount";a:2:{i:0;R:22;i:1;R:9;}s:28:"1230:pd-product.appchgnewacc";a:2:{i:0;R:22;i:1;R:9;}s:32:"1230:pd-product.appchgnewopenacc";a:2:{i:0;R:22;i:1;R:9;}s:23:"1230:pd-product.applfor";a:2:{i:0;R:22;i:1;R:9;}s:31:"1230:pd-product.attachfeestypes";a:2:{i:0;R:22;i:1;R:9;}s:36:"1230:pd-product.attachpenaltiestypes";a:2:{i:0;R:22;i:1;R:9;}s:25:"1230:pd-product.automatic";a:2:{i:0;R:22;i:1;R:9;}s:20:"1230:pd-product.back";a:2:{i:0;R:22;i:1;R:9;}s:30:"1230:pd-product.balusedforcalc";a:2:{i:0;R:22;i:1;R:9;}s:31:"1230:pd-product.balanceinterest";a:2:{i:0;R:22;i:1;R:9;}s:26:"1230:pd-product.balusedfor";a:2:{i:0;R:22;i:1;R:9;}s:38:"1230:pd-product.balusedforinstcalcrule";a:2:{i:0;R:22;i:1;R:9;}s:26:"1230:pd-product.buteditcat";a:2:{i:0;R:22;i:1;R:9;}s:31:"1230:pd-product.buteditloaninfo";a:2:{i:0;R:22;i:1;R:9;}s:34:"1230:pd-product.buteditsavingsinfo";a:2:{i:0;R:22;i:1;R:9;}s:25:"1230:pd-product.butsubmit";a:2:{i:0;R:22;i:1;R:9;}s:32:"1230:pd-product.bylastloanamount";a:2:{i:0;R:22;i:1;R:9;}s:27:"1230:pd-product.byloancycle";a:2:{i:0;R:22;i:1;R:9;}s:20:"1230:pd-product.calc";a:2:{i:0;R:22;i:1;R:9;}s:31:"1230:pd-product.calcinstallment";a:2:{i:0;R:22;i:1;R:9;}s:30:"1230:pd-product.calcloanamount";a:2:{i:0;R:22;i:1;R:9;}s:22:"1230:pd-product.cancel";a:2:{i:0;R:22;i:1;R:9;}s:28:"1230:pd-product.categorydesc";a:2:{i:0;R:22;i:1;R:9;}s:27:"1230:pd-product.categorydet";a:2:{i:0;R:22;i:1;R:9;}s:31:"1230:pd-product.categorydetails";a:2:{i:0;R:22;i:1;R:9;}s:28:"1230:pd-product.categoryinfo";a:2:{i:0;R:22;i:1;R:9;}s:28:"1230:pd-product.categoryname";a:2:{i:0;R:22;i:1;R:9;}s:25:"1230:pd-product.changelog";a:2:{i:0;R:22;i:1;R:9;}s:25:"1230:pd-product.chgstatus";a:2:{i:0;R:22;i:1;R:9;}s:41:"1230:pd-product.clicktomakechangessavings";a:2:{i:0;R:22;i:1;R:9;}s:37:"1230:pd-product.clicktoviewmixdetails";a:2:{i:0;R:22;i:1;R:9;}s:25:"1230:pd-product.clickcanc";a:2:{i:0;R:22;i:1;R:9;}s:28:"1230:pd-product.clickcanccat";a:2:{i:0;R:22;i:1;R:9;}s:27:"1230:pd-product.clickcancel";a:2:{i:0;R:22;i:1;R:9;}s:37:"1230:pd-product.clickcancelprdmixinfo";a:2:{i:0;R:22;i:1;R:9;}s:29:"1230:pd-product.clickcancinfo";a:2:{i:0;R:22;i:1;R:9;}s:29:"1230:pd-product.clickcancloan";a:2:{i:0;R:22;i:1;R:9;}s:32:"1230:pd-product.clickcancsavings";a:2:{i:0;R:22;i:1;R:9;}s:27:"1230:pd-product.clickcatdet";a:2:{i:0;R:22;i:1;R:9;}s:29:"1230:pd-product.clickfeetypes";a:2:{i:0;R:22;i:1;R:9;}s:33:"1230:pd-product.clickpenaltytypes";a:2:{i:0;R:22;i:1;R:9;}s:26:"1230:pd-product.clickfunds";a:2:{i:0;R:22;i:1;R:9;}s:28:"1230:pd-product.clickloandet";a:2:{i:0;R:22;i:1;R:9;}s:23:"1230:pd-product.clickon";a:2:{i:0;R:22;i:1;R:9;}s:28:"1230:pd-product.clickpreview";a:2:{i:0;R:22;i:1;R:9;}s:31:"1230:pd-product.clickpymtselect";a:2:{i:0;R:22;i:1;R:9;}s:34:"1230:pd-product.clickrighttoselect";a:2:{i:0;R:22;i:1;R:9;}s:31:"1230:pd-product.clicksavingsdet";a:2:{i:0;R:22;i:1;R:9;}s:27:"1230:pd-product.clicksubmit";a:2:{i:0;R:22;i:1;R:9;}s:34:"1230:pd-product.clientgroupcenters";a:2:{i:0;R:22;i:1;R:9;}s:23:"1230:pd-product.clients";a:2:{i:0;R:22;i:1;R:9;}s:26:"1230:pd-product.compfields";a:2:{i:0;R:22;i:1;R:9;}s:43:"1230:pd-product.completefieldsinstructional";a:2:{i:0;R:22;i:1;R:9;}s:24:"1230:pd-product.currency";a:2:{i:0;R:22;i:1;R:9;}s:28:"1230:pd-product.cyclecounter";a:2:{i:0;R:22;i:1;R:9;}s:19:"1230:pd-product.day";a:2:{i:0;R:22;i:1;R:9;}s:20:"1230:pd-product.days";a:2:{i:0;R:22;i:1;R:9;}s:29:"1230:pd-product.deductedatdis";a:2:{i:0;R:22;i:1;R:9;}s:37:"1230:pd-product.defaccountprocessflow";a:2:{i:0;R:22;i:1;R:9;}s:22:"1230:pd-product.defamt";a:2:{i:0;R:22;i:1;R:9;}s:23:"1230:pd-product.default";a:2:{i:0;R:22;i:1;R:9;}s:29:"1230:pd-product.defaultamount";a:2:{i:0;R:22;i:1;R:9;}s:27:"1230:pd-product.defaultrate";a:2:{i:0;R:22;i:1;R:9;}s:36:"1230:pd-product.defclientprocessflow";a:2:{i:0;R:22;i:1;R:9;}s:22:"1230:pd-product.define";a:2:{i:0;R:22;i:1;R:9;}s:25:"1230:pd-product.definenew";a:2:{i:0;R:22;i:1;R:9;}s:23:"1230:pd-product.definst";a:2:{i:0;R:22;i:1;R:9;}s:26:"1230:pd-product.defintrate";a:2:{i:0;R:22;i:1;R:9;}s:25:"1230:pd-product.defprdcat";a:2:{i:0;R:22;i:1;R:9;}s:30:"1230:pd-product.defprocessflow";a:2:{i:0;R:22;i:1;R:9;}s:20:"1230:pd-product.desc";a:2:{i:0;R:22;i:1;R:9;}s:23:"1230:pd-product.details";a:2:{i:0;R:22;i:1;R:9;}s:27:"1230:pd-product.disburstolo";a:2:{i:0;R:22;i:1;R:9;}s:28:"1230:pd-product.dormancydays";a:2:{i:0;R:22;i:1;R:9;}s:29:"1230:pd-product.editcancelcat";a:2:{i:0;R:22;i:1;R:9;}s:28:"1230:pd-product.editloaninfo";a:2:{i:0;R:22;i:1;R:9;}s:37:"1230:pd-product.editpreviewsubmitloan";a:2:{i:0;R:22;i:1;R:9;}s:40:"1230:pd-product.editpreviewsubmitsavings";a:2:{i:0;R:22;i:1;R:9;}s:31:"1230:pd-product.editsavingsinfo";a:2:{i:0;R:22;i:1;R:9;}s:26:"1230:pd-product.editfields";a:2:{i:0;R:22;i:1;R:9;}s:29:"1230:pd-product.editprdmixinf";a:2:{i:0;R:22;i:1;R:9;}s:23:"1230:pd-product.enddate";a:2:{i:0;R:22;i:1;R:9;}s:21:"1230:pd-product.enter";a:2:{i:0;R:22;i:1;R:9;}s:36:"1230:pd-product.enterloanproductinfo";a:2:{i:0;R:22;i:1;R:9;}s:39:"1230:pd-product.entersavingsproductinfo";a:2:{i:0;R:22;i:1;R:9;}s:25:"1230:pd-product.enterfoll";a:2:{i:0;R:22;i:1;R:9;}s:33:"1230:pd-product.enterloanprodinfo";a:2:{i:0;R:22;i:1;R:9;}s:20:"1230:pd-product.fees";a:2:{i:0;R:22;i:1;R:9;}s:25:"1230:pd-product.feestypes";a:2:{i:0;R:22;i:1;R:9;}s:25:"1230:pd-product.penalties";a:2:{i:0;R:22;i:1;R:9;}s:30:"1230:pd-product.penaltiestypes";a:2:{i:0;R:22;i:1;R:9;}s:30:"1230:pd-product.fieldsrequired";a:2:{i:0;R:22;i:1;R:9;}s:34:"1230:pd-product.forbylastloanatrow";a:2:{i:0;R:22;i:1;R:9;}s:35:"1230:pd-product.forbyloancycleatrow";a:2:{i:0;R:22;i:1;R:9;}s:51:"1230:pd-product.fornumberoflastloaninstallmentatrow";a:2:{i:0;R:22;i:1;R:9;}s:20:"1230:pd-product.freq";a:2:{i:0;R:22;i:1;R:9;}s:27:"1230:pd-product.freqpostacc";a:2:{i:0;R:22;i:1;R:9;}s:31:"1230:pd-product.freqinstpostacc";a:2:{i:0;R:22;i:1;R:9;}s:26:"1230:pd-product.freqofinst";a:2:{i:0;R:22;i:1;R:9;}s:25:"1230:pd-product.frequency";a:2:{i:0;R:22;i:1;R:9;}s:25:"1230:pd-product.glcodefor";a:2:{i:0;R:22;i:1;R:9;}s:25:"1230:pd-product.glcodedep";a:2:{i:0;R:22;i:1;R:9;}s:25:"1230:pd-product.glcodeint";a:2:{i:0;R:22;i:1;R:9;}s:28:"1230:pd-product.gracepenalty";a:2:{i:0;R:22;i:1;R:9;}s:27:"1230:pd-product.graceperdur";a:2:{i:0;R:22;i:1;R:9;}s:28:"1230:pd-product.gracepertype";a:2:{i:0;R:22;i:1;R:9;}s:22:"1230:pd-product.groups";a:2:{i:0;R:22;i:1;R:9;}s:24:"1230:pd-product.inactive";a:2:{i:0;R:22;i:1;R:9;}s:38:"1230:pd-product.inclinloancyclecounter";a:2:{i:0;R:22;i:1;R:9;}s:22:"1230:pd-product.inclin";a:2:{i:0;R:22;i:1;R:9;}s:34:"1230:pd-product.inclloancyccounter";a:2:{i:0;R:22;i:1;R:9;}s:39:"1230:pd-product.include.interest.waiver";a:2:{i:0;R:22;i:1;R:9;}s:19:"1230:pd-product.inf";a:2:{i:0;R:22;i:1;R:9;}s:20:"1230:pd-product.info";a:2:{i:0;R:22;i:1;R:9;}s:39:"1230:pd-product.installbylastloanamount";a:2:{i:0;R:22;i:1;R:9;}s:34:"1230:pd-product.installbyloancycle";a:2:{i:0;R:22;i:1;R:9;}s:28:"1230:pd-product.installments";a:2:{i:0;R:22;i:1;R:9;}s:25:"1230:pd-product.insurance";a:2:{i:0;R:22;i:1;R:9;}s:25:"1230:pd-product.intdeddis";a:2:{i:0;R:22;i:1;R:9;}s:24:"1230:pd-product.interest";a:2:{i:0;R:22;i:1;R:9;}s:23:"1230:pd-product.intrate";a:2:{i:0;R:22;i:1;R:9;}s:31:"1230:pd-product.intratecalcpymt";a:2:{i:0;R:22;i:1;R:9;}s:27:"1230:pd-product.intratetype";a:2:{i:0;R:22;i:1;R:9;}s:30:"1230:pd-product.lastloanamount";a:2:{i:0;R:22;i:1;R:9;}s:28:"1230:pd-product.latenessdays";a:2:{i:0;R:22;i:1;R:9;}s:20:"1230:pd-product.loan";a:2:{i:0;R:22;i:1;R:9;}s:34:"1230:pd-product.loanproductdetails";a:2:{i:0;R:22;i:1;R:9;}s:31:"1230:pd-product.loanproductinfo";a:2:{i:0;R:22;i:1;R:9;}s:34:"1230:pd-product.loanaccountchanged";a:2:{i:0;R:22;i:1;R:9;}s:33:"1230:pd-product.loanaddsuccessful";a:2:{i:0;R:22;i:1;R:9;}s:26:"1230:pd-product.loanamount";a:2:{i:0;R:22;i:1;R:9;}s:28:"1230:pd-product.loanamountas";a:2:{i:0;R:22;i:1;R:9;}s:27:"1230:pd-product.loancycleno";a:2:{i:0;R:22;i:1;R:9;}s:26:"1230:pd-product.loandefprd";a:2:{i:0;R:22;i:1;R:9;}s:27:"1230:pd-product.loanproddet";a:2:{i:0;R:22;i:1;R:9;}s:28:"1230:pd-product.loanprodinfo";a:2:{i:0;R:22;i:1;R:9;}s:27:"1230:pd-product.loanprodnum";a:2:{i:0;R:22;i:1;R:9;}s:21:"1230:pd-product.loans";a:2:{i:0;R:22;i:1;R:9;}s:27:"1230:pd-product.loanviewdet";a:2:{i:0;R:22;i:1;R:9;}s:27:"1230:pd-product.makechanges";a:2:{i:0;R:22;i:1;R:9;}s:27:"1230:pd-product.mandamntdep";a:2:{i:0;R:22;i:1;R:9;}s:22:"1230:pd-product.manual";a:2:{i:0;R:22;i:1;R:9;}s:38:"1230:pd-product.marginmoneysuccessloan";a:2:{i:0;R:22;i:1;R:9;}s:41:"1230:pd-product.marginmoneysuccesssavings";a:2:{i:0;R:22;i:1;R:9;}s:34:"1230:pd-product.marginmoneysuccess";a:2:{i:0;R:22;i:1;R:9;}s:19:"1230:pd-product.max";a:2:{i:0;R:22;i:1;R:9;}s:25:"1230:pd-product.maxamount";a:2:{i:0;R:22;i:1;R:9;}s:23:"1230:pd-product.maxdays";a:2:{i:0;R:22;i:1;R:9;}s:23:"1230:pd-product.maxrate";a:2:{i:0;R:22;i:1;R:9;}s:25:"1230:pd-product.maxamtwid";a:2:{i:0;R:22;i:1;R:9;}s:23:"1230:pd-product.maxinst";a:2:{i:0;R:22;i:1;R:9;}s:26:"1230:pd-product.maxintrate";a:2:{i:0;R:22;i:1;R:9;}s:26:"1230:pd-product.maxloanamt";a:2:{i:0;R:22;i:1;R:9;}s:19:"1230:pd-product.min";a:2:{i:0;R:22;i:1;R:9;}s:25:"1230:pd-product.minamount";a:2:{i:0;R:22;i:1;R:9;}s:29:"1230:pd-product.minbalforcalc";a:2:{i:0;R:22;i:1;R:9;}s:23:"1230:pd-product.minrate";a:2:{i:0;R:22;i:1;R:9;}s:30:"1230:pd-product.minbalinstcalc";a:2:{i:0;R:22;i:1;R:9;}s:25:"1230:pd-product.minbalreq";a:2:{i:0;R:22;i:1;R:9;}s:23:"1230:pd-product.mininst";a:2:{i:0;R:22;i:1;R:9;}s:26:"1230:pd-product.minintrate";a:2:{i:0;R:22;i:1;R:9;}s:26:"1230:pd-product.minloanamt";a:2:{i:0;R:22;i:1;R:9;}s:19:"1230:pd-product.mix";a:2:{i:0;R:22;i:1;R:9;}s:26:"1230:pd-product.mixdetails";a:2:{i:0;R:22;i:1;R:9;}s:21:"1230:pd-product.month";a:2:{i:0;R:22;i:1;R:9;}s:22:"1230:pd-product.months";a:2:{i:0;R:22;i:1;R:9;}s:18:"1230:pd-product.no";a:2:{i:0;R:22;i:1;R:9;}s:34:"1230:pd-product.notallowedproducts";a:2:{i:0;R:22;i:1;R:9;}s:35:"1230:pd-product.numberofinstallment";a:2:{i:0;R:22;i:1;R:9;}s:23:"1230:pd-product.ofevery";a:2:{i:0;R:22;i:1;R:9;}s:36:"1230:pd-product.optionalclientstatus";a:2:{i:0;R:22;i:1;R:9;}s:35:"1230:pd-product.optionalgroupstatus";a:2:{i:0;R:22;i:1;R:9;}s:46:"1230:pd-product.optionalinsuranceaccountstatus";a:2:{i:0;R:22;i:1;R:9;}s:41:"1230:pd-product.optionalloanaccountstatus";a:2:{i:0;R:22;i:1;R:9;}s:44:"1230:pd-product.optionalsavingsaccountstatus";a:2:{i:0;R:22;i:1;R:9;}s:42:"1230:pd-product.othersprdwillbeupdatedauto";a:2:{i:0;R:22;i:1;R:9;}s:26:"1230:pd-roduct.penaltyrate";a:2:{i:0;R:22;i:1;R:9;}s:27:"1230:pd-product.penaltytype";a:2:{i:0;R:22;i:1;R:9;}s:20:"1230:pd-product.perc";a:2:{i:0;R:22;i:1;R:9;}s:23:"1230:pd-product.plsnote";a:2:{i:0;R:22;i:1;R:9;}s:23:"1230:pd-product.postacc";a:2:{i:0;R:22;i:1;R:9;}s:31:"1230:pd-product.postingaccounts";a:2:{i:0;R:22;i:1;R:9;}s:26:"1230:pd-product.prddetails";a:2:{i:0;R:22;i:1;R:9;}s:23:"1230:pd-product.prdedit";a:2:{i:0;R:22;i:1;R:9;}s:33:"1230:pd-product.prdmixdefinedanew";a:2:{i:0;R:22;i:1;R:9;}s:32:"1230:pd-product.prdmixdetailsnow";a:2:{i:0;R:22;i:1;R:9;}s:23:"1230:pd-product.prdrate";a:2:{i:0;R:22;i:1;R:9;}s:23:"1230:pd-product.preview";a:2:{i:0;R:22;i:1;R:9;}s:38:"1230:pd-product.previewloanproductinfo";a:2:{i:0;R:22;i:1;R:9;}s:41:"1230:pd-product.previewsavingsproductinfo";a:2:{i:0;R:22;i:1;R:9;}s:36:"1230:pd-product.previewsubmitsavings";a:2:{i:0;R:22;i:1;R:9;}s:29:"1230:pd-product.previewfields";a:2:{i:0;R:22;i:1;R:9;}s:25:"1230:pd-product.principal";a:2:{i:0;R:22;i:1;R:9;}s:28:"1230:pd-product.prinlastinst";a:2:{i:0;R:22;i:1;R:9;}s:19:"1230:pd-product.pro";a:2:{i:0;R:22;i:1;R:9;}s:23:"1230:pd-product.prodcat";a:2:{i:0;R:22;i:1;R:9;}s:28:"1230:pd-product.prodinstname";a:2:{i:0;R:22;i:1;R:9;}s:23:"1230:pd-product.prodnum";a:2:{i:0;R:22;i:1;R:9;}s:23:"1230:pd-product.product";a:2:{i:0;R:22;i:1;R:9;}s:33:"1230:pd-product.productassignedid";a:2:{i:0;R:22;i:1;R:9;}s:27:"1230:pd-product.productrate";a:2:{i:0;R:22;i:1;R:9;}s:30:"1230:pd-product.productcatinfo";a:2:{i:0;R:22;i:1;R:9;}s:29:"1230:pd-product.productglcode";a:2:{i:0;R:22;i:1;R:9;}s:27:"1230:pd-product.productinfo";a:2:{i:0;R:22;i:1;R:9;}s:35:"1230:pd-product.productnotallowedto";a:2:{i:0;R:22;i:1;R:9;}s:24:"1230:pd-product.products";a:2:{i:0;R:22;i:1;R:9;}s:27:"1230:pd-product.producttype";a:2:{i:0;R:22;i:1;R:9;}s:26:"1230:pd-product.prvloanprd";a:2:{i:0;R:22;i:1;R:9;}s:29:"1230:pd-product.prvsavingsprd";a:2:{i:0;R:22;i:1;R:9;}s:33:"1230:pd-product.pymttypesdeposits";a:2:{i:0;R:22;i:1;R:9;}s:31:"1230:pd-product.pymttypesdisbur";a:2:{i:0;R:22;i:1;R:9;}s:29:"1230:pd-product.pymttypesfees";a:2:{i:0;R:22;i:1;R:9;}s:30:"1230:pd-product.pymttypesrepay";a:2:{i:0;R:22;i:1;R:9;}s:35:"1230:pd-product.pymttypeswithdrwals";a:2:{i:0;R:22;i:1;R:9;}s:20:"1230:pd-product.rate";a:2:{i:0;R:22;i:1;R:9;}s:26:"1230:pd-product.recamtappl";a:2:{i:0;R:22;i:1;R:9;}s:25:"1230:pd-product.recamtdep";a:2:{i:0;R:22;i:1;R:9;}s:34:"1230:pd-product.recordcreationdate";a:2:{i:0;R:22;i:1;R:9;}s:21:"1230:pd-product.recur";a:2:{i:0;R:22;i:1;R:9;}s:25:"1230:pd-product.recurdays";a:2:{i:0;R:22;i:1;R:9;}s:27:"1230:pd-product.recurmonths";a:2:{i:0;R:22;i:1;R:9;}s:26:"1230:pd-product.recurweeks";a:2:{i:0;R:22;i:1;R:9;}s:32:"1230:pd-product.removenotallowed";a:2:{i:0;R:22;i:1;R:9;}s:24:"1230:pd-product.repaysch";a:2:{i:0;R:22;i:1;R:9;}s:22:"1230:pd-product.review";a:2:{i:0;R:22;i:1;R:9;}s:37:"1230:pd-product.sameforallinstallment";a:2:{i:0;R:22;i:1;R:9;}s:31:"1230:pd-product.sameforallloans";a:2:{i:0;R:22;i:1;R:9;}s:26:"1230:pd-product.savingprod";a:2:{i:0;R:22;i:1;R:9;}s:23:"1230:pd-product.savings";a:2:{i:0;R:22;i:1;R:9;}s:33:"1230:pd-product.savingsassignedto";a:2:{i:0;R:22;i:1;R:9;}s:37:"1230:pd-product.savingsproductdetails";a:2:{i:0;R:22;i:1;R:9;}s:34:"1230:pd-product.savingsproductinfo";a:2:{i:0;R:22;i:1;R:9;}s:37:"1230:pd-product.savingsaccountchanged";a:2:{i:0;R:22;i:1;R:9;}s:36:"1230:pd-product.savingsaddsuccessful";a:2:{i:0;R:22;i:1;R:9;}s:32:"1230:pd-product.savingsdefinenew";a:2:{i:0;R:22;i:1;R:9;}s:29:"1230:pd-product.savingsdefnew";a:2:{i:0;R:22;i:1;R:9;}s:29:"1230:pd-product.savingsdefprd";a:2:{i:0;R:22;i:1;R:9;}s:34:"1230:pd-product.savingsintrateperc";a:2:{i:0;R:22;i:1;R:9;}s:30:"1230:pd-product.savingsprodnum";a:2:{i:0;R:22;i:1;R:9;}s:27:"1230:pd-product.savingsview";a:2:{i:0;R:22;i:1;R:9;}s:30:"1230:pd-product.savingsviewdet";a:2:{i:0;R:22;i:1;R:9;}s:26:"1230:pd-product.setdormdef";a:2:{i:0;R:22;i:1;R:9;}s:26:"1230:pd-product.setlatedef";a:2:{i:0;R:22;i:1;R:9;}s:25:"1230:pd-product.setpencal";a:2:{i:0;R:22;i:1;R:9;}s:25:"1230:pd-product.shortname";a:2:{i:0;R:22;i:1;R:9;}s:44:"1230:pd-product.specloannodaysaccountchanged";a:2:{i:0;R:22;i:1;R:9;}s:49:"1230:pd-product.specsavingsdormdaysaccountchanged";a:2:{i:0;R:22;i:1;R:9;}s:39:"1230:pd-product.specacceptpymtinsurance";a:2:{i:0;R:22;i:1;R:9;}s:35:"1230:pd-product.specacceptpymtloans";a:2:{i:0;R:22;i:1;R:9;}s:38:"1230:pd-product.specacceptpymttypescgc";a:2:{i:0;R:22;i:1;R:9;}s:30:"1230:pd-product.specloannodays";a:2:{i:0;R:22;i:1;R:9;}s:26:"1230:pd-product.specpencal";a:2:{i:0;R:22;i:1;R:9;}s:36:"1230:pd-product.specpymttypessavings";a:2:{i:0;R:22;i:1;R:9;}s:31:"1230:pd-product.specsavdormdays";a:2:{i:0;R:22;i:1;R:9;}s:24:"1230:pd-product.srcfunds";a:2:{i:0;R:22;i:1;R:9;}s:25:"1230:pd-product.startdate";a:2:{i:0;R:22;i:1;R:9;}s:22:"1230:pd-product.status";a:2:{i:0;R:22;i:1;R:9;}s:33:"1230:pd-product.submitforapproval";a:2:{i:0;R:22;i:1;R:9;}s:39:"1230:pd-product.successfullydefinedanew";a:2:{i:0;R:22;i:1;R:9;}s:29:"1230:pd-product.tardepwidrest";a:2:{i:0;R:22;i:1;R:9;}s:19:"1230:pd-product.the";a:2:{i:0;R:22;i:1;R:9;}s:22:"1230:pd-product.theday";a:2:{i:0;R:22;i:1;R:9;}s:27:"1230:pd-product.timepercalc";a:2:{i:0;R:22;i:1;R:9;}s:26:"1230:pd-product.timeperiod";a:2:{i:0;R:22;i:1;R:9;}s:23:"1230:pd-product.timeper";a:2:{i:0;R:22;i:1;R:9;}s:31:"1230:pd-product.timeperinstcalc";a:2:{i:0;R:22;i:1;R:9;}s:39:"1230:pd-product.tocontinueclickonsubmit";a:2:{i:0;R:22;i:1;R:9;}s:20:"1230:pd-product.type";a:2:{i:0;R:22;i:1;R:9;}s:25:"1230:pd-product.typeofdep";a:2:{i:0;R:22;i:1;R:9;}s:20:"1230:pd-product.view";a:2:{i:0;R:22;i:1;R:9;}s:31:"1230:pd-product.viewloandetails";a:2:{i:0;R:22;i:1;R:9;}s:32:"1230:pd-product.viewloanproducts";a:2:{i:0;R:22;i:1;R:9;}s:34:"1230:pd-product.viewsavingsdetails";a:2:{i:0;R:22;i:1;R:9;}s:35:"1230:pd-product.viewsavingsproducts";a:2:{i:0;R:22;i:1;R:9;}s:35:"1230:pd-product.viewacceptpymttypes";a:2:{i:0;R:22;i:1;R:9;}s:29:"1230:pd-product.viewchangelog";a:2:{i:0;R:22;i:1;R:9;}s:23:"1230:pd-product.viewdet";a:2:{i:0;R:22;i:1;R:9;}s:27:"1230:pd-product.viewlatedef";a:2:{i:0;R:22;i:1;R:9;}s:27:"1230:pd-product.viewloanprd";a:2:{i:0;R:22;i:1;R:9;}s:26:"1230:pd-product.viewprdcat";a:2:{i:0;R:22;i:1;R:9;}s:26:"1230:pd-product.viewprdmix";a:2:{i:0;R:22;i:1;R:9;}s:30:"1230:pd-product.viewsavingsprd";a:2:{i:0;R:22;i:1;R:9;}s:20:"1230:pd-product.week";a:2:{i:0;R:22;i:1;R:9;}s:21:"1230:pd-product.weeks";a:2:{i:0;R:22;i:1;R:9;}s:29:"1230:pd-product.withoutsubmit";a:2:{i:0;R:22;i:1;R:9;}s:19:"1230:pd-product.yes";a:2:{i:0;R:22;i:1;R:9;}s:19:"1230:pd-produt.edit";a:2:{i:0;R:22;i:1;R:9;}s:30:"1230:pd-product.questiongroups";a:2:{i:0;R:22;i:1;R:9;}s:35:"1230:pd-product.assocquestiongroups";a:2:{i:0;R:22;i:1;R:9;}s:37:"1230:pd-product.assocedquestiongroups";a:2:{i:0;R:22;i:1;R:9;}s:35:"1230:pd-product.clickquestiongroups";a:2:{i:0;R:22;i:1;R:9;}s:48:"1230:pd-product.canconfigurevariableinstallments";a:2:{i:0;R:22;i:1;R:9;}s:38:"1230:pd-product.fixedrepaymentschedule";a:2:{i:0;R:22;i:1;R:9;}s:45:"1230:pd-product.minimumgapbetweeninstallments";a:2:{i:0;R:22;i:1;R:9;}s:45:"1230:pd-product.maximumgapbetweeninstallments";a:2:{i:0;R:22;i:1;R:9;}s:40:"1230:pd-product.minimuminstallmentamount";a:2:{i:0;R:22;i:1;R:9;}s:29:"1230:pd-product.notapplicable";a:2:{i:0;R:22;i:1;R:9;}s:34:"1230:pd-product.cashflowvalidation";a:2:{i:0;R:22;i:1;R:9;}s:33:"1230:pd-product.cashflowthreshold";a:2:{i:0;R:22;i:1;R:9;}s:33:"1230:pd-product.indebtednessratio";a:2:{i:0;R:22;i:1;R:9;}s:33:"1230:pd-product.repaymentcapacity";a:2:{i:0;R:22;i:1;R:9;}s:64:"1230:pd-errors.mingapmorethanmaxgapforvariableinstallmentproduct";a:2:{i:0;R:22;i:1;R:9;}s:54:"1230:pd-errors.variableinstallmentmingapnegativeorzero";a:2:{i:0;R:22;i:1;R:9;}s:54:"1230:pd-errors.variableinstallmentmaxgapnegativeorzero";a:2:{i:0;R:22;i:1;R:9;}s:55:"1230:pd-errors.variableinstallmentmingapmorethanallowed";a:2:{i:0;R:22;i:1;R:9;}s:55:"1230:pd-errors.variableinstallmentmaxgapmorethanallowed";a:2:{i:0;R:22;i:1;R:9;}s:48:"1230:pd-errors.mininstallmentamountinvalidformat";a:2:{i:0;R:22;i:1;R:9;}s:39:"1230:pd-errors.cashflowthresholdinvalid";a:2:{i:0;R:22;i:1;R:9;}s:39:"1230:pd-errors.indebtednessratioinvalid";a:2:{i:0;R:22;i:1;R:9;}s:39:"1230:pd-errors.repaymentcapacityinvalid";a:2:{i:0;R:22;i:1;R:9;}s:51:"1230:pd-errors.variableinstallmentmingapnotprovided";a:2:{i:0;R:22;i:1;R:9;}s:43:"1230:pd-errors.cashflowwarninginvalidformat";a:2:{i:0;R:22;i:1;R:9;}s:45:"1230:pd-errors.indebtednessratioinvalidformat";a:2:{i:0;R:22;i:1;R:9;}s:45:"1230:pd-errors.repaymentcapacityinvalidformat";a:2:{i:0;R:22;i:1;R:9;}s:56:"1230:pd-errors.interesttypeinvalidforvariableinstallment";a:2:{i:0;R:22;i:1;R:9;}s:61:"1230:pd-errors.periodicfeenotapplicableforvariableinstallment";a:2:{i:0;R:22;i:1;R:9;}s:88:"1230:pd-errors.feecaliculatedaspercentofinterestcannotbeappliedtovariableinstallmentloan";a:2:{i:0;R:22;i:1;R:9;}s:49:"1230:pd-errors.interesttypeinvalidforgraceperiods";a:2:{i:0;R:22;i:1;R:9;}s:21:"1230:personnel-amount";a:2:{i:0;s:19:"out-mifos-personnel";i:1;R:9;}s:19:"1230:personnel-date";a:2:{i:0;R:31848;i:1;R:9;}s:26:"1230:personnel-description";a:2:{i:0;R:31848;i:1;R:9;}s:20:"1230:personnel-field";a:2:{i:0;R:31848;i:1;R:9;}s:23:"1230:personnel-newvalue";a:2:{i:0;R:31848;i:1;R:9;}s:23:"1230:personnel-oldvalue";a:2:{i:0;R:31848;i:1;R:9;}s:35:"1230:personnel-personnel.addnewnote";a:2:{i:0;R:31848;i:1;R:9;}s:35:"1230:personnel-personnel.addnewuser";a:2:{i:0;R:31848;i:1;R:9;}s:32:"1230:personnel-personnel.addnote";a:2:{i:0;R:31848;i:1;R:9;}s:39:"1230:personnel-personnel.additionalinfo";a:2:{i:0;R:31848;i:1;R:9;}s:32:"1230:personnel-personnel.address";a:2:{i:0;R:31848;i:1;R:9;}s:33:"1230:personnel-personnel.address1";a:2:{i:0;R:31848;i:1;R:9;}s:38:"1230:personnel-personnel.address1label";a:2:{i:0;R:31848;i:1;R:9;}s:33:"1230:personnel-personnel.address2";a:2:{i:0;R:31848;i:1;R:9;}s:38:"1230:personnel-personnel.address2label";a:2:{i:0;R:31848;i:1;R:9;}s:33:"1230:personnel-personnel.address3";a:2:{i:0;R:31848;i:1;R:9;}s:38:"1230:personnel-personnel.address3label";a:2:{i:0;R:31848;i:1;R:9;}s:30:"1230:personnel-personnel.admin";a:2:{i:0;R:31848;i:1;R:9;}s:28:"1230:personnel-personnel.age";a:2:{i:0;R:31848;i:1;R:9;}s:35:"1230:personnel-personnel.areyousure";a:2:{i:0;R:31848;i:1;R:9;}s:42:"1230:personnel-personnel.backtodetailspage";a:2:{i:0;R:31848;i:1;R:9;}s:39:"1230:personnel-personnel.cancelsettings";a:2:{i:0;R:31848;i:1;R:9;}s:34:"1230:personnel-personnel.changelog";a:2:{i:0;R:31848;i:1;R:9;}s:39:"1230:personnel-personnel.changepassword";a:2:{i:0;R:31848;i:1;R:9;}s:37:"1230:personnel-personnel.changestatus";a:2:{i:0;R:31848;i:1;R:9;}s:37:"1230:personnel-personnel.chooseoffice";a:2:{i:0;R:31848;i:1;R:9;}s:29:"1230:personnel-personnel.city";a:2:{i:0;R:31848;i:1;R:9;}s:34:"1230:personnel-personnel.citylabel";a:2:{i:0;R:31848;i:1;R:9;}s:36:"1230:personnel-personnel.clickcancel";a:2:{i:0;R:31848;i:1;R:9;}s:49:"1230:personnel-personnel.clickcanceltodetailspage";a:2:{i:0;R:31848;i:1;R:9;}s:51:"1230:personnel-personnel.clickeditpersonnelsettings";a:2:{i:0;R:31848;i:1;R:9;}s:37:"1230:personnel-personnel.clickpreview";a:2:{i:0;R:31848;i:1;R:9;}s:38:"1230:personnel-personnel.clickuserlink";a:2:{i:0;R:31848;i:1;R:9;}s:39:"1230:personnel-personnel.completefields";a:2:{i:0;R:31848;i:1;R:9;}s:40:"1230:personnel-personnel.confirmpassword";a:2:{i:0;R:31848;i:1;R:9;}s:32:"1230:personnel-personnel.country";a:2:{i:0;R:31848;i:1;R:9;}s:37:"1230:personnel-personnel.countrylabel";a:2:{i:0;R:31848;i:1;R:9;}s:28:"1230:personnel-personnel.dob";a:2:{i:0;R:31848;i:1;R:9;}s:33:"1230:personnel-personnel.doblabel";a:2:{i:0;R:31848;i:1;R:9;}s:34:"1230:personnel-personnel.dojbranch";a:2:{i:0;R:31848;i:1;R:9;}s:31:"1230:personnel-personnel.dojmfi";a:2:{i:0;R:31848;i:1;R:9;}s:36:"1230:personnel-personnel.dojmfilabel";a:2:{i:0;R:31848;i:1;R:9;}s:29:"1230:personnel-personnel.edit";a:2:{i:0;R:31848;i:1;R:9;}s:40:"1230:personnel-personnel.editinformation";a:2:{i:0;R:31848;i:1;R:9;}s:34:"1230:personnel-personnel.editlabel";a:2:{i:0;R:31848;i:1;R:9;}s:44:"1230:personnel-personnel.edituserinformation";a:2:{i:0;R:31848;i:1;R:9;}s:41:"1230:personnel-personnel.edityoursettings";a:2:{i:0;R:31848;i:1;R:9;}s:30:"1230:personnel-personnel.email";a:2:{i:0;R:31848;i:1;R:9;}s:37:"1230:personnel-personnel.emailaddress";a:2:{i:0;R:31848;i:1;R:9;}s:35:"1230:personnel-personnel.emaillabel";a:2:{i:0;R:31848;i:1;R:9;}s:35:"1230:personnel-personnel.enteranote";a:2:{i:0;R:31848;i:1;R:9;}s:45:"1230:personnel-personnel.enteruserinformation";a:2:{i:0;R:31848;i:1;R:9;}s:40:"1230:personnel-personnel.fieldsmandatory";a:2:{i:0;R:31848;i:1;R:9;}s:34:"1230:personnel-personnel.firstname";a:2:{i:0;R:31848;i:1;R:9;}s:39:"1230:personnel-personnel.firstnamelabel";a:2:{i:0;R:31848;i:1;R:9;}s:31:"1230:personnel-personnel.gender";a:2:{i:0;R:31848;i:1;R:9;}s:36:"1230:personnel-personnel.genderlabel";a:2:{i:0;R:31848;i:1;R:9;}s:34:"1230:personnel-personnel.govtidnum";a:2:{i:0;R:31848;i:1;R:9;}s:39:"1230:personnel-personnel.govtidnumlabel";a:2:{i:0;R:31848;i:1;R:9;}s:42:"1230:personnel-personnel.languagepreferred";a:2:{i:0;R:31848;i:1;R:9;}s:42:"1230:personnel-personnel.sitetypepreferred";a:2:{i:0;R:31848;i:1;R:9;}s:33:"1230:personnel-personnel.lastname";a:2:{i:0;R:31848;i:1;R:9;}s:38:"1230:personnel-personnel.lastnamelabel";a:2:{i:0;R:31848;i:1;R:9;}s:31:"1230:personnel-personnel.locked";a:2:{i:0;R:31848;i:1;R:9;}s:38:"1230:personnel-personnel.loginattempts";a:2:{i:0;R:31848;i:1;R:9;}s:41:"1230:personnel-personnel.logininformation";a:2:{i:0;R:31848;i:1;R:9;}s:38:"1230:personnel-personnel.maritalstatus";a:2:{i:0;R:31848;i:1;R:9;}s:35:"1230:personnel-personnel.middlename";a:2:{i:0;R:31848;i:1;R:9;}s:40:"1230:personnel-personnel.middlenamelabel";a:2:{i:0;R:31848;i:1;R:9;}s:39:"1230:personnel-personnel.modifysettings";a:2:{i:0;R:31848;i:1;R:9;}s:41:"1230:personnel-personnel.nonotesavailable";a:2:{i:0;R:31848;i:1;R:9;}s:29:"1230:personnel-personnel.note";a:2:{i:0;R:31848;i:1;R:9;}s:34:"1230:personnel-personnel.notelabel";a:2:{i:0;R:31848;i:1;R:9;}s:30:"1230:personnel-personnel.notes";a:2:{i:0;R:31848;i:1;R:9;}s:31:"1230:personnel-personnel.office";a:2:{i:0;R:31848;i:1;R:9;}s:36:"1230:personnel-personnel.officelabel";a:2:{i:0;R:31848;i:1;R:9;}s:42:"1230:personnel-personnel.officepermissions";a:2:{i:0;R:31848;i:1;R:9;}s:33:"1230:personnel-personnel.password";a:2:{i:0;R:31848;i:1;R:9;}s:38:"1230:personnel-personnel.passwordlabel";a:2:{i:0;R:31848;i:1;R:9;}s:35:"1230:personnel-personnel.permission";a:2:{i:0;R:31848;i:1;R:9;}s:35:"1230:personnel-personnel.pleasenote";a:2:{i:0;R:31848;i:1;R:9;}s:35:"1230:personnel-personnel.postalcode";a:2:{i:0;R:31848;i:1;R:9;}s:40:"1230:personnel-personnel.postalcodelabel";a:2:{i:0;R:31848;i:1;R:9;}s:36:"1230:personnel-personnel.previewnote";a:2:{i:0;R:31848;i:1;R:9;}s:36:"1230:personnel-personnel.previewuser";a:2:{i:0;R:31848;i:1;R:9;}s:44:"1230:personnel-personnel.previewyoursettings";a:2:{i:0;R:31848;i:1;R:9;}s:36:"1230:personnel-personnel.recentnotes";a:2:{i:0;R:31848;i:1;R:9;}s:43:"1230:personnel-personnel.recordcreationdate";a:2:{i:0;R:31848;i:1;R:9;}s:42:"1230:personnel-personnel.reviewinformation";a:2:{i:0;R:31848;i:1;R:9;}s:37:"1230:personnel-personnel.reviewsubmit";a:2:{i:0;R:31848;i:1;R:9;}s:35:"1230:personnel-personnel.reviewtext";a:2:{i:0;R:31848;i:1;R:9;}s:30:"1230:personnel-personnel.roles";a:2:{i:0;R:31848;i:1;R:9;}s:34:"1230:personnel-personnel.searchmsg";a:2:{i:0;R:31848;i:1;R:9;}s:39:"1230:personnel-personnel.secondlastname";a:2:{i:0;R:31848;i:1;R:9;}s:44:"1230:personnel-personnel.secondlastnamelabel";a:2:{i:0;R:31848;i:1;R:9;}s:36:"1230:personnel-personnel.seeallnotes";a:2:{i:0;R:31848;i:1;R:9;}s:30:"1230:personnel-personnel.state";a:2:{i:0;R:31848;i:1;R:9;}s:35:"1230:personnel-personnel.statelabel";a:2:{i:0;R:31848;i:1;R:9;}s:31:"1230:personnel-personnel.status";a:2:{i:0;R:31848;i:1;R:9;}s:31:"1230:personnel-personnel.submit";a:2:{i:0;R:31848;i:1;R:9;}s:37:"1230:personnel-personnel.submitoredit";a:2:{i:0;R:31848;i:1;R:9;}s:39:"1230:personnel-personnel.sumbitorcancel";a:2:{i:0;R:31848;i:1;R:9;}s:41:"1230:personnel-personnel.systemidassigned";a:2:{i:0;R:31848;i:1;R:9;}s:34:"1230:personnel-personnel.telephone";a:2:{i:0;R:31848;i:1;R:9;}s:39:"1230:personnel-personnel.telephonelabel";a:2:{i:0;R:31848;i:1;R:9;}s:35:"1230:personnel-personnel.unlockuser";a:2:{i:0;R:31848;i:1;R:9;}s:48:"1230:personnel-personnel.unlockuserconfirmations";a:2:{i:0;R:31848;i:1;R:9;}s:34:"1230:personnel-personnel.useradded";a:2:{i:0;R:31848;i:1;R:9;}s:36:"1230:personnel-personnel.userdetails";a:2:{i:0;R:31848;i:1;R:9;}s:38:"1230:personnel-personnel.userhierarchy";a:2:{i:0;R:31848;i:1;R:9;}s:43:"1230:personnel-personnel.userhierarchylabel";a:2:{i:0;R:31848;i:1;R:9;}s:40:"1230:personnel-personnel.userinformation";a:2:{i:0;R:31848;i:1;R:9;}s:33:"1230:personnel-personnel.username";a:2:{i:0;R:31848;i:1;R:9;}s:38:"1230:personnel-personnel.usernamelabel";a:2:{i:0;R:31848;i:1;R:9;}s:41:"1230:personnel-personnel.userrecordlocked";a:2:{i:0;R:31848;i:1;R:9;}s:34:"1230:personnel-personnel.usertitle";a:2:{i:0;R:31848;i:1;R:9;}s:38:"1230:personnel-personnel.viewchangelog";a:2:{i:0;R:31848;i:1;R:9;}s:43:"1230:personnel-personnel.viewuserdetailsnow";a:2:{i:0;R:31848;i:1;R:9;}s:34:"1230:personnel-personnel.viewusers";a:2:{i:0;R:31848;i:1;R:9;}s:33:"1230:personnel-personnel.yearsold";a:2:{i:0;R:31848;i:1;R:9;}s:36:"1230:personnel-personnel.yourdetails";a:2:{i:0;R:31848;i:1;R:9;}s:37:"1230:personnel-personnel.yoursettings";a:2:{i:0;R:31848;i:1;R:9;}s:42:"1230:personnel-personnel.addressnotentered";a:2:{i:0;R:31848;i:1;R:9;}s:35:"1230:personnel-personnel.change_log";a:2:{i:0;R:31848;i:1;R:9;}s:36:"1230:personnel-personnel.insrtuction";a:2:{i:0;R:31848;i:1;R:9;}s:42:"1230:personnel-personnel.passwordlowercase";a:2:{i:0;R:31848;i:1;R:9;}s:42:"1230:personnel-personnel.rec_creation_date";a:2:{i:0;R:31848;i:1;R:9;}s:40:"1230:personnel-personnel.returntodetails";a:2:{i:0;R:31848;i:1;R:9;}s:23:"1230:personnel-postedby";a:2:{i:0;R:31848;i:1;R:9;}s:19:"1230:personnel-user";a:2:{i:0;R:31848;i:1;R:9;}s:41:"1230:personnel-button.edituserinformation";a:2:{i:0;R:31848;i:1;R:9;}s:28:"1230:personnel-button.cancel";a:2:{i:0;R:31848;i:1;R:9;}s:29:"1230:personnel-button.preview";a:2:{i:0;R:31848;i:1;R:9;}s:28:"1230:personnel-button.search";a:2:{i:0;R:31848;i:1;R:9;}s:28:"1230:personnel-button.submit";a:2:{i:0;R:31848;i:1;R:9;}s:39:"1230:personnel-cf.lookupentity.entityid";a:2:{i:0;R:31848;i:1;R:9;}s:29:"1230:personnel-cfdef.entityid";a:2:{i:0;R:31848;i:1;R:9;}s:41:"1230:personnel-error.activity.not.allowed";a:2:{i:0;R:31848;i:1;R:9;}s:33:"1230:personnel-error.createfailed";a:2:{i:0;R:31848;i:1;R:9;}s:32:"1230:personnel-error.customfield";a:2:{i:0;R:31848;i:1;R:9;}s:36:"1230:personnel-error.customdatefield";a:2:{i:0;R:31848;i:1;R:9;}s:24:"1230:personnel-error.dob";a:2:{i:0;R:31848;i:1;R:9;}s:46:"1230:personnel-error.duplicate_username_or_dob";a:2:{i:0;R:31848;i:1;R:9;}s:36:"1230:personnel-error.duplicategovtid";a:2:{i:0;R:31848;i:1;R:9;}s:34:"1230:personnel-error.duplicateuser";a:2:{i:0;R:31848;i:1;R:9;}s:26:"1230:personnel-error.email";a:2:{i:0;R:31848;i:1;R:9;}s:30:"1230:personnel-error.firstname";a:2:{i:0;R:31848;i:1;R:9;}s:27:"1230:personnel-error.gender";a:2:{i:0;R:31848;i:1;R:9;}s:36:"1230:personnel-error.hierarchychange";a:2:{i:0;R:31848;i:1;R:9;}s:35:"1230:personnel-error.inactivebranch";a:2:{i:0;R:31848;i:1;R:9;}s:31:"1230:personnel-error.invaliddob";a:2:{i:0;R:31848;i:1;R:9;}s:36:"1230:personnel-error.invalidusername";a:2:{i:0;R:31848;i:1;R:9;}s:35:"1230:personnel-error.invalidversion";a:2:{i:0;R:31848;i:1;R:9;}s:29:"1230:personnel-error.lastname";a:2:{i:0;R:31848;i:1;R:9;}s:26:"1230:personnel-error.level";a:2:{i:0;R:31848;i:1;R:9;}s:40:"1230:personnel-error.lo_only_in_branches";a:2:{i:0;R:31848;i:1;R:9;}s:31:"1230:personnel-error.masterdata";a:2:{i:0;R:31848;i:1;R:9;}s:35:"1230:personnel-error.nosearchstring";a:2:{i:0;R:31848;i:1;R:9;}s:35:"1230:personnel-error.passwordlength";a:2:{i:0;R:31848;i:1;R:9;}s:37:"1230:personnel-error.unknownexception";a:2:{i:0;R:31848;i:1;R:9;}s:33:"1230:personnel-error.updatefailed";a:2:{i:0;R:31848;i:1;R:9;}s:34:"1230:personnel-error.userchangelog";a:2:{i:0;R:31848;i:1;R:9;}s:29:"1230:personnel-error.username";a:2:{i:0;R:31848;i:1;R:9;}s:33:"1230:personnel-error.usernotfound";a:2:{i:0;R:31848;i:1;R:9;}s:37:"1230:personnel-error.userstatuschange";a:2:{i:0;R:31848;i:1;R:9;}s:33:"1230:personnel-error.usertransfer";a:2:{i:0;R:31848;i:1;R:9;}s:31:"1230:personnel-error.vaildemail";a:2:{i:0;R:31848;i:1;R:9;}s:40:"1230:personnel-error.versionnodonotmatch";a:2:{i:0;R:31848;i:1;R:9;}s:28:"1230:personnel-errors.footer";a:2:{i:0;R:31848;i:1;R:9;}s:28:"1230:personnel-errors.header";a:2:{i:0;R:31848;i:1;R:9;}s:27:"1230:personnel-errors.level";a:2:{i:0;R:31848;i:1;R:9;}s:31:"1230:personnel-errors.mandatory";a:2:{i:0;R:31848;i:1;R:9;}s:37:"1230:personnel-errors.mandatoryselect";a:2:{i:0;R:31848;i:1;R:9;}s:39:"1230:personnel-errors.mandatorytextarea";a:2:{i:0;R:31848;i:1;R:9;}s:31:"1230:personnel-errors.maxlength";a:2:{i:0;R:31848;i:1;R:9;}s:31:"1230:personnel-errors.minlength";a:2:{i:0;R:31848;i:1;R:9;}s:28:"1230:personnel-errors.prefix";a:2:{i:0;R:31848;i:1;R:9;}s:32:"1230:personnel-errors.spacesmask";a:2:{i:0;R:31848;i:1;R:9;}s:28:"1230:personnel-errors.status";a:2:{i:0;R:31848;i:1;R:9;}s:28:"1230:personnel-errors.suffix";a:2:{i:0;R:31848;i:1;R:9;}s:35:"1230:personnel-errors.validpassword";a:2:{i:0;R:31848;i:1;R:9;}s:32:"1230:personnel-errors.validvalue";a:2:{i:0;R:31848;i:1;R:9;}s:56:"1230:personnel-exception.framework.doublesubmitexception";a:2:{i:0;R:31848;i:1;R:9;}s:63:"1230:personnel-exception.framework.fieldconfiguration.mandatory";a:2:{i:0;R:31848;i:1;R:9;}s:19:"1230:ppi-ppi.active";a:2:{i:0;s:13:"out-mifos-ppi";i:1;R:9;}s:24:"1230:ppi-ppi.band.atrisk";a:2:{i:0;R:32033;i:1;R:9;}s:25:"1230:ppi-ppi.band.nonpoor";a:2:{i:0;R:32033;i:1;R:9;}s:22:"1230:ppi-ppi.band.poor";a:2:{i:0;R:32033;i:1;R:9;}s:26:"1230:ppi-ppi.band.verypoor";a:2:{i:0;R:32033;i:1;R:9;}s:20:"1230:ppi-ppi.country";a:2:{i:0;R:32033;i:1;R:9;}s:26:"1230:ppi-ppi.country.india";a:2:{i:0;R:32033;i:1;R:9;}s:21:"1230:ppi-ppi.inactive";a:2:{i:0;R:32033;i:1;R:9;}s:19:"1230:ppi-ppi.points";a:2:{i:0;R:32033;i:1;R:9;}s:25:"1230:ppi-ppi.poverystatus";a:2:{i:0;R:32033;i:1;R:9;}s:19:"1230:ppi-ppi.status";a:2:{i:0;R:32033;i:1;R:9;}s:30:"1230:ppi-ppi.surveyscorelimits";a:2:{i:0;R:32033;i:1;R:9;}s:18:"1230:ppi-ppi.total";a:2:{i:0;R:32033;i:1;R:9;}s:34:"1230:ppi-ppi.configureinstructions";a:2:{i:0;R:32033;i:1;R:9;}s:41:"1230:ppi-ppi.definepovertymeasurementtool";a:2:{i:0;R:32033;i:1;R:9;}s:32:"1230:ppi-ppi.definepovertystatus";a:2:{i:0;R:32033;i:1;R:9;}s:43:"1230:ppi-ppi.definepovertystatusintructions";a:2:{i:0;R:32033;i:1;R:9;}s:37:"1230:ppi-ppi.editppitoolconfiguration";a:2:{i:0;R:32033;i:1;R:9;}s:21:"1230:ppi-ppi.longname";a:2:{i:0;R:32033;i:1;R:9;}s:29:"1230:ppi-ppi.ppiconfiguration";a:2:{i:0;R:32033;i:1;R:9;}s:33:"1230:ppi-ppi.ppitoolconfiguration";a:2:{i:0;R:32033;i:1;R:9;}s:26:"1230:ppi-ppi.selectcountry";a:2:{i:0;R:32033;i:1;R:9;}s:23:"1230:ppi-ppi.surveyname";a:2:{i:0;R:32033;i:1;R:9;}s:40:"1230:ppi-errors.intvalidator.invalid_int";a:2:{i:0;R:32033;i:1;R:9;}s:52:"1230:ppi-errors.formulaic.enumvalidator.invalid_enum";a:2:{i:0;R:32033;i:1;R:9;}s:33:"1230:ppi-errors.ppi.invalidlimits";a:2:{i:0;R:32033;i:1;R:9;}s:22:"1230:ppi-errors.prefix";a:2:{i:0;R:32033;i:1;R:9;}s:22:"1230:ppi-errors.suffix";a:2:{i:0;R:32033;i:1;R:9;}s:47:"1230:questionnaire-questionnaire.view.questions";a:2:{i:0;s:23:"out-mifos-questionnaire";i:1;R:9;}s:55:"1230:questionnaire-questionnaire.create.question.prompt";a:2:{i:0;R:32062;i:1;R:9;}s:53:"1230:questionnaire-questionnaire.create.question.link";a:2:{i:0;R:32062;i:1;R:9;}s:46:"1230:questionnaire-questionnaire.view.question";a:2:{i:0;R:32062;i:1;R:9;}s:41:"1230:questionnaire-questionnaire.question";a:2:{i:0;R:32062;i:1;R:9;}s:44:"1230:questionnaire-questionnaire.answer.type";a:2:{i:0;R:32062;i:1;R:9;}s:45:"1230:questionnaire-questionnaire.add.question";a:2:{i:0;R:32062;i:1;R:9;}s:46:"1230:questionnaire-questionnaire.add.questions";a:2:{i:0;R:32062;i:1;R:9;}s:58:"1230:questionnaire-questionnaire.viewadditionalinformation";a:2:{i:0;R:32062;i:1;R:9;}s:53:"1230:questionnaire-questionnaire.view.question.groups";a:2:{i:0;R:32062;i:1;R:9;}s:61:"1230:questionnaire-questionnaire.create.question.group.prompt";a:2:{i:0;R:32062;i:1;R:9;}s:59:"1230:questionnaire-questionnaire.create.question.group.link";a:2:{i:0;R:32062;i:1;R:9;}s:52:"1230:questionnaire-questionnaire.view.question.group";a:2:{i:0;R:32062;i:1;R:9;}s:46:"1230:questionnaire-questionnaire.question.name";a:2:{i:0;R:32062;i:1;R:9;}s:51:"1230:questionnaire-questionnaire.question.mandatory";a:2:{i:0;R:32062;i:1;R:9;}s:61:"1230:questionnaire-questionnaire.error.no.question.in.section";a:2:{i:0;R:32062;i:1;R:9;}s:59:"1230:questionnaire-questionnaire.error.question.title.empty";a:2:{i:0;R:32062;i:1;R:9;}s:57:"1230:questionnaire-questionnaire.error.question.duplicate";a:2:{i:0;R:32062;i:1;R:9;}s:48:"1230:questionnaire-questionnaire.serivce.failure";a:2:{i:0;R:32062;i:1;R:9;}s:56:"1230:questionnaire-questionnaire.create.question.success";a:2:{i:0;R:32062;i:1;R:9;}s:60:"1230:questionnaire-questionnaire.error.questiongroup.invalid";a:2:{i:0;R:32062;i:1;R:9;}s:61:"1230:questionnaire-questionnaire.error.questiongroup.notfound";a:2:{i:0;R:32062;i:1;R:9;}s:55:"1230:questionnaire-questionnaire.error.question.invalid";a:2:{i:0;R:32062;i:1;R:9;}s:56:"1230:questionnaire-questionnaire.error.question.notfound";a:2:{i:0;R:32062;i:1;R:9;}s:57:"1230:questionnaire-questionnaire.error.section.name.empty";a:2:{i:0;R:32062;i:1;R:9;}s:57:"1230:questionnaire-questionnaire.error.section.atleastone";a:2:{i:0;R:32062;i:1;R:9;}s:58:"1230:questionnaire-questionnaire.error.appliesto.mandatory";a:2:{i:0;R:32062;i:1;R:9;}s:55:"1230:questionnaire-questionnaire.error.question.choices";a:2:{i:0;R:32062;i:1;R:9;}s:62:"1230:questionnaire-questionnaire.error.question.tags.duplicate";a:2:{i:0;R:32062;i:1;R:9;}s:58:"1230:questionnaire-questionnaire.error.question.tags.limit";a:2:{i:0;R:32062;i:1;R:9;}s:49:"1230:questionnaire-questionnaire.addquestiongroup";a:2:{i:0;R:32062;i:1;R:9;}s:51:"1230:questionnaire-questionnaire.questiongrouptitle";a:2:{i:0;R:32062;i:1;R:9;}s:55:"1230:questionnaire-questionnaire.questiongroupappliesto";a:2:{i:0;R:32062;i:1;R:9;}s:52:"1230:questionnaire-questionnaire.currentsectiontitle";a:2:{i:0;R:32062;i:1;R:9;}s:39:"1230:questionnaire-questionnaire.remove";a:2:{i:0;R:32062;i:1;R:9;}s:37:"1230:questionnaire-questionnaire.tags";a:2:{i:0;R:32062;i:1;R:9;}s:44:"1230:questionnaire-questionnaire.remove.link";a:2:{i:0;R:32062;i:1;R:9;}s:48:"1230:questionnaire-questionnaire.question.delete";a:2:{i:0;R:32062;i:1;R:9;}s:47:"1230:questionnaire-questionnaire.question.order";a:2:{i:0;R:32062;i:1;R:9;}s:36:"1230:questionnaire-questionnaire.yes";a:2:{i:0;R:32062;i:1;R:9;}s:35:"1230:questionnaire-questionnaire.no";a:2:{i:0;R:32062;i:1;R:9;}s:39:"1230:questionnaire-questionnaire.submit";a:2:{i:0;R:32062;i:1;R:9;}s:39:"1230:questionnaire-questionnaire.cancel";a:2:{i:0;R:32062;i:1;R:9;}s:41:"1230:questionnaire-questionnaire.continue";a:2:{i:0;R:32062;i:1;R:9;}s:58:"1230:questionnaire-questionnaire.quesiton.choices.freetext";a:2:{i:0;R:32062;i:1;R:9;}s:56:"1230:questionnaire-questionnaire.quesiton.choices.number";a:2:{i:0;R:32062;i:1;R:9;}s:54:"1230:questionnaire-questionnaire.quesiton.choices.date";a:2:{i:0;R:32062;i:1;R:9;}s:61:"1230:questionnaire-questionnaire.quesiton.choices.multiselect";a:2:{i:0;R:32062;i:1;R:9;}s:62:"1230:questionnaire-questionnaire.quesiton.choices.singleselect";a:2:{i:0;R:32062;i:1;R:9;}s:61:"1230:questionnaire-questionnaire.quesiton.choices.smartselect";a:2:{i:0;R:32062;i:1;R:9;}s:63:"1230:questionnaire-questionnaire.quesiton.choices.notapplicable";a:2:{i:0;R:32062;i:1;R:9;}s:49:"1230:questionnaire-questionnaire.quesiton.choices";a:2:{i:0;R:32062;i:1;R:9;}s:48:"1230:questionnaire-questionnaire.quesiton.choice";a:2:{i:0;R:32062;i:1;R:9;}s:45:"1230:questionnaire-questionnaire.quesiton.add";a:2:{i:0;R:32062;i:1;R:9;}s:55:"1230:questionnaire-questionnaire.applytoallloanproducts";a:2:{i:0;R:32062;i:1;R:9;}s:39:"1230:questionnaire-questionnaire.choice";a:2:{i:0;R:32062;i:1;R:9;}s:40:"1230:questionnaire-questionnaire.choices";a:2:{i:0;R:32062;i:1;R:9;}s:41:"1230:questionnaire-questionnaire.editable";a:2:{i:0;R:32062;i:1;R:9;}s:39:"1230:questionnaire-questionnaire.status";a:2:{i:0;R:32062;i:1;R:9;}s:39:"1230:questionnaire-questionnaire.active";a:2:{i:0;R:32062;i:1;R:9;}s:41:"1230:questionnaire-questionnaire.inactive";a:2:{i:0;R:32062;i:1;R:9;}s:47:"1230:questionnaire-questionnaire.question.title";a:2:{i:0;R:32062;i:1;R:9;}s:39:"1230:questionnaire-questionnaire.attach";a:2:{i:0;R:32062;i:1;R:9;}s:45:"1230:questionnaire-questionnaire.instructions";a:2:{i:0;R:32062;i:1;R:9;}s:42:"1230:questionnaire-questionnaire.enterdata";a:2:{i:0;R:32062;i:1;R:9;}s:52:"1230:questionnaire-questionnaire.selectquestionnaire";a:2:{i:0;R:32062;i:1;R:9;}s:42:"1230:questionnaire-questionnaire.selectone";a:2:{i:0;R:32062;i:1;R:9;}s:37:"1230:questionnaire-questionnaire.edit";a:2:{i:0;R:32062;i:1;R:9;}s:45:"1230:questionnaire-questionnaire.editquestion";a:2:{i:0;R:32062;i:1;R:9;}s:53:"1230:questionnaire-questionnaire.editquestion.warning";a:2:{i:0;R:32062;i:1;R:9;}s:58:"1230:questionnaire-questionnaire.editquestion.instructions";a:2:{i:0;R:32062;i:1;R:9;}s:43:"1230:questionnaire-questionnaire.noresponse";a:2:{i:0;R:32062;i:1;R:9;}s:61:"1230:questionnaire-questionnaire.invalid.numeric.min.response";a:2:{i:0;R:32062;i:1;R:9;}s:61:"1230:questionnaire-questionnaire.invalid.numeric.max.response";a:2:{i:0;R:32062;i:1;R:9;}s:63:"1230:questionnaire-questionnaire.invalid.numeric.range.response";a:2:{i:0;R:32062;i:1;R:9;}s:57:"1230:questionnaire-questionnaire.invalid.numeric.response";a:2:{i:0;R:32062;i:1;R:9;}s:64:"1230:questionnaire-questionnaire.error.questiongroup.title.empty";a:2:{i:0;R:32062;i:1;R:9;}s:60:"1230:questionnaire-notnull.questionform.currentquestion.text";a:2:{i:0;R:32062;i:1;R:9;}s:60:"1230:questionnaire-pattern.questionform.currentquestion.text";a:2:{i:0;R:32062;i:1;R:9;}s:57:"1230:questionnaire-size.questionform.currentquestion.text";a:2:{i:0;R:32062;i:1;R:9;}s:60:"1230:questionnaire-pattern.questionform.currentquestion.type";a:2:{i:0;R:32062;i:1;R:9;}s:60:"1230:questionnaire-notnull.questionform.currentquestion.type";a:2:{i:0;R:32062;i:1;R:9;}s:49:"1230:questionnaire-questionnaire.select.questions";a:2:{i:0;R:32062;i:1;R:9;}s:62:"1230:questionnaire-questionnaire.view.question.group.responses";a:2:{i:0;R:32062;i:1;R:9;}s:49:"1230:questionnaire-questionnaire.back.to.previous";a:2:{i:0;R:32062;i:1;R:9;}s:53:"1230:questionnaire-questionnaire.quesiton.numeric.min";a:2:{i:0;R:32062;i:1;R:9;}s:53:"1230:questionnaire-questionnaire.quesiton.numeric.max";a:2:{i:0;R:32062;i:1;R:9;}s:48:"1230:questionnaire-questionnaire.question.addtag";a:2:{i:0;R:32062;i:1;R:9;}s:52:"1230:questionnaire-questionnaire.uploadquestiongroup";a:2:{i:0;R:32062;i:1;R:9;}s:59:"1230:questionnaire-questionnaire.uploadquestiongroupmessage";a:2:{i:0;R:32062;i:1;R:9;}s:53:"1230:questionnaire-questionnaire.select.questiongroup";a:2:{i:0;R:32062;i:1;R:9;}s:50:"1230:questionnaire-questionnaire.error.ppi.country";a:2:{i:0;R:32062;i:1;R:9;}s:63:"1230:questionnaire-questionnaire.error.fetchppicountryxmlfailed";a:2:{i:0;R:32062;i:1;R:9;}s:60:"1230:questionnaire-questionnaire.error.ppisurveyuploadfailed";a:2:{i:0;R:32062;i:1;R:9;}s:68:"1230:questionnaire-questionnaire.error.questiongrouptitlenotprovided";a:2:{i:0;R:32062;i:1;R:9;}s:63:"1230:questionnaire-questionnaire.error.questiongrouptitletoobig";a:2:{i:0;R:32062;i:1;R:9;}s:66:"1230:questionnaire-questionnaire.error.questiongrouptitleduplicate";a:2:{i:0;R:32062;i:1;R:9;}s:65:"1230:questionnaire-questionnaire.error.invalideventsourceprovided";a:2:{i:0;R:32062;i:1;R:9;}s:70:"1230:questionnaire-questionnaire.error.questiongroupsectionnotprovided";a:2:{i:0;R:32062;i:1;R:9;}s:62:"1230:questionnaire-questionnaire.error.sectiontitlenotprovided";a:2:{i:0;R:32062;i:1;R:9;}s:60:"1230:questionnaire-questionnaire.error.sectiontitleduplicate";a:2:{i:0;R:32062;i:1;R:9;}s:62:"1230:questionnaire-questionnaire.error.sectionordernotprovided";a:2:{i:0;R:32062;i:1;R:9;}s:60:"1230:questionnaire-questionnaire.error.sectionorderduplicate";a:2:{i:0;R:32062;i:1;R:9;}s:68:"1230:questionnaire-questionnaire.error.no.questions.found.in.section";a:2:{i:0;R:32062;i:1;R:9;}s:63:"1230:questionnaire-questionnaire.error.questiontitlenotprovided";a:2:{i:0;R:32062;i:1;R:9;}s:56:"1230:questionnaire-questionnaire.error.duplicatequestion";a:2:{i:0;R:32062;i:1;R:9;}s:63:"1230:questionnaire-questionnaire.error.questionordernotprovided";a:2:{i:0;R:32062;i:1;R:9;}s:61:"1230:questionnaire-questionnaire.error.questionorderduplicate";a:2:{i:0;R:32062;i:1;R:9;}s:60:"1230:questionnaire-questionnaire.error.answertypenotprovided";a:2:{i:0;R:32062;i:1;R:9;}s:66:"1230:questionnaire-questionnaire.error.questionchoicesinsufficient";a:2:{i:0;R:32062;i:1;R:9;}s:61:"1230:questionnaire-questionnaire.error.questionchoicesinvalid";a:2:{i:0;R:32062;i:1;R:9;}s:61:"1230:questionnaire-questionnaire.error.invalid.numeric.bounds";a:2:{i:0;R:32062;i:1;R:9;}s:56:"1230:questionnaire-questionnaire.error.sectionnametoobig";a:2:{i:0;R:32062;i:1;R:9;}s:58:"1230:questionnaire-questionnaire.error.questiontitletoobig";a:2:{i:0;R:32062;i:1;R:9;}s:60:"1230:questionnaire-questionnaire.error.ppisurveyfilenotfound";a:2:{i:0;R:32062;i:1;R:9;}s:58:"1230:questionnaire-questionnaire.error.ppisurveyparseerror";a:2:{i:0;R:32062;i:1;R:9;}s:63:"1230:questionnaire-questionnaire.error.ppisurveyconversionerror";a:2:{i:0;R:32062;i:1;R:9;}s:75:"1230:questionnaire-questionnaire.error.questiontitlematchesexistingquestion";a:2:{i:0;R:32062;i:1;R:9;}s:61:"1230:questionnaire-questionnaire.error.activation.not.allowed";a:2:{i:0;R:32062;i:1;R:9;}s:47:"1230:questionnaire-questionnaire.addnewquestion";a:2:{i:0;R:32062;i:1;R:9;}s:48:"1230:questionnaire-questionnaire.selectquestions";a:2:{i:0;R:32062;i:1;R:9;}s:65:"1230:questionnaire-notnull.questiongroupform.currentquestion.text";a:2:{i:0;R:32062;i:1;R:9;}s:65:"1230:questionnaire-pattern.questiongroupform.currentquestion.text";a:2:{i:0;R:32062;i:1;R:9;}s:62:"1230:questionnaire-size.questiongroupform.currentquestion.text";a:2:{i:0;R:32062;i:1;R:9;}s:65:"1230:questionnaire-pattern.questiongroupform.currentquestion.type";a:2:{i:0;R:32062;i:1;R:9;}s:65:"1230:questionnaire-notnull.questiongroupform.currentquestion.type";a:2:{i:0;R:32062;i:1;R:9;}s:46:"1230:questionnaire-questionnaire.questiongroup";a:2:{i:0;R:32062;i:1;R:9;}s:50:"1230:questionnaire-questionnaire.editquestiongroup";a:2:{i:0;R:32062;i:1;R:9;}s:71:"1230:questionnaire-questionnaire.error.mandatory.question.has.no.answer";a:2:{i:0;R:32062;i:1;R:9;}s:35:"1230:rap-error.activity.not.allowed";a:2:{i:0;s:13:"out-mifos-rap";i:1;R:9;}s:25:"1230:rap-errors.maxlength";a:2:{i:0;R:32192;i:1;R:9;}s:22:"1230:rap-errors.prefix";a:2:{i:0;R:32192;i:1;R:9;}s:22:"1230:rap-errors.suffix";a:2:{i:0;R:32192;i:1;R:9;}s:50:"1230:rap-exception.framework.doublesubmitexception";a:2:{i:0;R:32192;i:1;R:9;}s:40:"1230:rap-roleandpermission.button.cancel";a:2:{i:0;R:32192;i:1;R:9;}s:40:"1230:rap-roleandpermission.button.create";a:2:{i:0;R:32192;i:1;R:9;}s:40:"1230:rap-roleandpermission.button.delete";a:2:{i:0;R:32192;i:1;R:9;}s:40:"1230:rap-roleandpermission.button.submit";a:2:{i:0;R:32192;i:1;R:9;}s:40:"1230:rap-roleandpermission.button.update";a:2:{i:0;R:32192;i:1;R:9;}s:51:"1230:rap-roleandpermission.error.loadtempletefailed";a:2:{i:0;R:32192;i:1;R:9;}s:51:"1230:rap-roleandpermission.error.noactivityselected";a:2:{i:0;R:32192;i:1;R:9;}s:60:"1230:rap-roleandpermission.error.noactivityselectedforupdate";a:2:{i:0;R:32192;i:1;R:9;}s:47:"1230:rap-roleandpermission.error.noroleinsystem";a:2:{i:0;R:32192;i:1;R:9;}s:51:"1230:rap-roleandpermission.error.rolecreationfailed";a:2:{i:0;R:32192;i:1;R:9;}s:49:"1230:rap-roleandpermission.error.roledeletefailed";a:2:{i:0;R:32192;i:1;R:9;}s:46:"1230:rap-roleandpermission.error.rolenameexist";a:2:{i:0;R:32192;i:1;R:9;}s:49:"1230:rap-roleandpermission.error.roleupdatefailed";a:2:{i:0;R:32192;i:1;R:9;}s:45:"1230:rap-roleandpermission.error.roleassigned";a:2:{i:0;R:32192;i:1;R:9;}s:44:"1230:rap-roleandpermission.error.roledeleted";a:2:{i:0;R:32192;i:1;R:9;}s:44:"1230:rap-roleandpermission.errorrolenotexist";a:2:{i:0;R:32192;i:1;R:9;}s:42:"1230:rap-roleandpermission.labeladdnewrole";a:2:{i:0;R:32192;i:1;R:9;}s:53:"1230:rap-roleandpermission.labeladdnewroleinstruction";a:2:{i:0;R:32192;i:1;R:9;}s:37:"1230:rap-roleandpermission.labeladmin";a:2:{i:0;R:32192;i:1;R:9;}s:42:"1230:rap-roleandpermission.labeldeleterole";a:2:{i:0;R:32192;i:1;R:9;}s:53:"1230:rap-roleandpermission.labeldeleteroleinstruction";a:2:{i:0;R:32192;i:1;R:9;}s:42:"1230:rap-roleandpermission.labelmodifyrole";a:2:{i:0;R:32192;i:1;R:9;}s:53:"1230:rap-roleandpermission.labelmofifyroleinstruction";a:2:{i:0;R:32192;i:1;R:9;}s:39:"1230:rap-roleandpermission.labelnewrole";a:2:{i:0;R:32192;i:1;R:9;}s:49:"1230:rap-roleandpermission.labelroleandpermission";a:2:{i:0;R:32192;i:1;R:9;}s:40:"1230:rap-roleandpermission.labelrolename";a:2:{i:0;R:32192;i:1;R:9;}s:47:"1230:rap-roleandpermission.rolename.displayname";a:2:{i:0;R:32192;i:1;R:9;}s:43:"1230:rap-roleandpermission.rolename.maskmsg";a:2:{i:0;R:32192;i:1;R:9;}s:44:"1230:rap-roleandpermission.rolename.required";a:2:{i:0;R:32192;i:1;R:9;}s:32:"1230:rc-error.categoryhasreports";a:2:{i:0;s:12:"out-mifos-rc";i:1;R:9;}s:26:"1230:rc-error.categoryname";a:2:{i:0;R:32227;i:1;R:9;}s:38:"1230:rc-error.categorynamealreadyexist";a:2:{i:0;R:32227;i:1;R:9;}s:33:"1230:rc-error.categorynamenotedit";a:2:{i:0;R:32227;i:1;R:9;}s:37:"1230:rc-error.nomoredynamicactivityid";a:2:{i:0;R:32227;i:1;R:9;}s:21:"1230:rc-errors.footer";a:2:{i:0;R:32227;i:1;R:9;}s:21:"1230:rc-errors.header";a:2:{i:0;R:32227;i:1;R:9;}s:21:"1230:rc-errors.prefix";a:2:{i:0;R:32227;i:1;R:9;}s:21:"1230:rc-errors.suffix";a:2:{i:0;R:32227;i:1;R:9;}s:30:"1230:rc-reportscategory.cancel";a:2:{i:0;R:32227;i:1;R:9;}s:35:"1230:rc-reportscategory.clickcancel";a:2:{i:0;R:32227;i:1;R:9;}s:35:"1230:rc-reportscategory.clicksubmit";a:2:{i:0;R:32227;i:1;R:9;}s:47:"1230:rc-reportscategory.definenewreportcategory";a:2:{i:0;R:32227;i:1;R:9;}s:30:"1230:rc-reportscategory.delete";a:2:{i:0;R:32227;i:1;R:9;}s:38:"1230:rc-reportscategory.deletecategory";a:2:{i:0;R:32227;i:1;R:9;}s:45:"1230:rc-reportscategory.deletecategoryconfirm";a:2:{i:0;R:32227;i:1;R:9;}s:49:"1230:rc-reportscategory.deletecategoryinstruction";a:2:{i:0;R:32227;i:1;R:9;}s:30:"1230:rc-reportscategory.detail";a:2:{i:0;R:32227;i:1;R:9;}s:31:"1230:rc-reportscategory.details";a:2:{i:0;R:32227;i:1;R:9;}s:28:"1230:rc-reportscategory.edit";a:2:{i:0;R:32227;i:1;R:9;}s:39:"1230:rc-reportscategory.editinformation";a:2:{i:0;R:32227;i:1;R:9;}s:46:"1230:rc-reportscategory.editreportcategorytips";a:2:{i:0;R:32227;i:1;R:9;}s:58:"1230:rc-reportscategory.editreportcategorytipswithasterisk";a:2:{i:0;R:32227;i:1;R:9;}s:45:"1230:rc-reportscategory.editreportinformation";a:2:{i:0;R:32227;i:1;R:9;}s:48:"1230:rc-reportscategory.entercategoryinformation";a:2:{i:0;R:32227;i:1;R:9;}s:35:"1230:rc-reportscategory.information";a:2:{i:0;R:32227;i:1;R:9;}s:33:"1230:rc-reportscategory.labelinfo";a:2:{i:0;R:32227;i:1;R:9;}s:46:"1230:rc-reportscategory.linkviewreportcategory";a:2:{i:0;R:32227;i:1;R:9;}s:32:"1230:rc-reportscategory.linkinfo";a:2:{i:0;R:32227;i:1;R:9;}s:44:"1230:rc-reportscategory.markedfieldstatement";a:2:{i:0;R:32227;i:1;R:9;}s:28:"1230:rc-reportscategory.name";a:2:{i:0;R:32227;i:1;R:9;}s:31:"1230:rc-reportscategory.preview";a:2:{i:0;R:32227;i:1;R:9;}s:45:"1230:rc-reportscategory.previewreportcategory";a:2:{i:0;R:32227;i:1;R:9;}s:37:"1230:rc-reportscategory.review&submit";a:2:{i:0;R:32227;i:1;R:9;}s:39:"1230:rc-reportscategory.reviewstatement";a:2:{i:0;R:32227;i:1;R:9;}s:33:"1230:rc-reportscategory.statement";a:2:{i:0;R:32227;i:1;R:9;}s:30:"1230:rc-reportscategory.submit";a:2:{i:0;R:32227;i:1;R:9;}s:40:"1230:rc-reportscategory.viewpageheadname";a:2:{i:0;R:32227;i:1;R:9;}s:24:"1230:re-branchid.invalid";a:2:{i:0;s:12:"out-mifos-re";i:1;R:9;}s:24:"1230:re-centerid.invalid";a:2:{i:0;R:32266;i:1;R:9;}s:29:"1230:re-loanofficerid.invalid";a:2:{i:0;R:32266;i:1;R:9;}s:29:"1230:re-loanproductid.invalid";a:2:{i:0;R:32266;i:1;R:9;}s:27:"1230:re-meetingdate.invalid";a:2:{i:0;R:32266;i:1;R:9;}s:23:"1230:re-rundate.invalid";a:2:{i:0;R:32266;i:1;R:9;}s:24:"1230:re-rundate.notfound";a:2:{i:0;R:32266;i:1;R:9;}s:39:"1230:reports-error.activity.not.allowed";a:2:{i:0;s:17:"out-mifos-reports";i:1;R:9;}s:29:"1230:reports-error.categoryid";a:2:{i:0;R:32274;i:1;R:9;}s:23:"1230:reports-error.file";a:2:{i:0;R:32274;i:1;R:9;}s:42:"1230:reports-error.nomoredynamicactivityid";a:2:{i:0;R:32274;i:1;R:9;}s:41:"1230:reports-error.reportactivityidisnull";a:2:{i:0;R:32274;i:1;R:9;}s:37:"1230:reports-error.reportalreadyexist";a:2:{i:0;R:32274;i:1;R:9;}s:36:"1230:reports-error.reportinfonotedit";a:2:{i:0;R:32274;i:1;R:9;}s:25:"1230:reports-error.status";a:2:{i:0;R:32274;i:1;R:9;}s:36:"1230:reports-error.titlealreadyexist";a:2:{i:0;R:32274;i:1;R:9;}s:28:"1230:reports-error.titlename";a:2:{i:0;R:32274;i:1;R:9;}s:26:"1230:reports-errors.footer";a:2:{i:0;R:32274;i:1;R:9;}s:26:"1230:reports-errors.header";a:2:{i:0;R:32274;i:1;R:9;}s:26:"1230:reports-errors.prefix";a:2:{i:0;R:32274;i:1;R:9;}s:26:"1230:reports-errors.suffix";a:2:{i:0;R:32274;i:1;R:9;}s:26:"1230:reports-reports.admin";a:2:{i:0;R:32274;i:1;R:9;}s:35:"1230:reports-reports.reporttemplate";a:2:{i:0;R:32274;i:1;R:9;}s:35:"1230:reports-reports.showwhenstatus";a:2:{i:0;R:32274;i:1;R:9;}s:32:"1230:reports-reports.accounttype";a:2:{i:0;R:32274;i:1;R:9;}s:27:"1230:reports-reports.active";a:2:{i:0;R:32274;i:1;R:9;}s:24:"1230:reports-reports.add";a:2:{i:0;R:32274;i:1;R:9;}s:33:"1230:reports-reports.addreportsds";a:2:{i:0;R:32274;i:1;R:9;}s:37:"1230:reports-reports.addreportsparams";a:2:{i:0;R:32274;i:1;R:9;}s:39:"1230:reports-reports.admindocumenttitle";a:2:{i:0;R:32274;i:1;R:9;}s:38:"1230:reports-reports.administerreports";a:2:{i:0;R:32274;i:1;R:9;}s:50:"1230:reports-reports.administrativedocumentdetails";a:2:{i:0;R:32274;i:1;R:9;}s:43:"1230:reports-reports.administrativedocument";a:2:{i:0;R:32274;i:1;R:9;}s:44:"1230:reports-reports.administrativedocuments";a:2:{i:0;R:32274;i:1;R:9;}s:27:"1230:reports-reports.cancel";a:2:{i:0;R:32274;i:1;R:9;}s:29:"1230:reports-reports.category";a:2:{i:0;R:32274;i:1;R:9;}s:37:"1230:reports-reports.changereportinfo";a:2:{i:0;R:32274;i:1;R:9;}s:30:"1230:reports-reports.classname";a:2:{i:0;R:32274;i:1;R:9;}s:32:"1230:reports-reports.clickcancel";a:2:{i:0;R:32274;i:1;R:9;}s:32:"1230:reports-reports.clicksubmit";a:2:{i:0;R:32274;i:1;R:9;}s:40:"1230:reports-reports.createnewreportinfo";a:2:{i:0;R:32274;i:1;R:9;}s:25:"1230:reports-reports.data";a:2:{i:0;R:32274;i:1;R:9;}s:32:"1230:reports-reports.description";a:2:{i:0;R:32274;i:1;R:9;}s:28:"1230:reports-reports.details";a:2:{i:0;R:32274;i:1;R:9;}s:40:"1230:reports-reports.documentinformation";a:2:{i:0;R:32274;i:1;R:9;}s:24:"1230:reports-reports.dot";a:2:{i:0;R:32274;i:1;R:9;}s:29:"1230:reports-reports.download";a:2:{i:0;R:32274;i:1;R:9;}s:43:"1230:reports-reports.downloadadmindocuments";a:2:{i:0;R:32274;i:1;R:9;}s:27:"1230:reports-reports.driver";a:2:{i:0;R:32274;i:1;R:9;}s:27:"1230:reports-reports.dsname";a:2:{i:0;R:32274;i:1;R:9;}s:25:"1230:reports-reports.edit";a:2:{i:0;R:32274;i:1;R:9;}s:44:"1230:reports-reports.editdocumentinformation";a:2:{i:0;R:32274;i:1;R:9;}s:42:"1230:reports-reports.editreportinformation";a:2:{i:0;R:32274;i:1;R:9;}s:36:"1230:reports-reports.editinformation";a:2:{i:0;R:32274;i:1;R:9;}s:35:"1230:reports-reports.editreporttips";a:2:{i:0;R:32274;i:1;R:9;}s:47:"1230:reports-reports.editreporttipswithasterisk";a:2:{i:0;R:32274;i:1;R:9;}s:45:"1230:reports-reports.enterdocumentinformation";a:2:{i:0;R:32274;i:1;R:9;}s:38:"1230:reports-reports.enterrinformation";a:2:{i:0;R:32274;i:1;R:9;}s:33:"1230:reports-reports.exportformat";a:2:{i:0;R:32274;i:1;R:9;}s:29:"1230:reports-reports.inactive";a:2:{i:0;R:32274;i:1;R:9;}s:32:"1230:reports-reports.information";a:2:{i:0;R:32274;i:1;R:9;}s:33:"1230:reports-reports.instructions";a:2:{i:0;R:32274;i:1;R:9;}s:48:"1230:reports-reports.labeladministrativedocument";a:2:{i:0;R:32274;i:1;R:9;}s:34:"1230:reports-reports.labelcategory";a:2:{i:0;R:32274;i:1;R:9;}s:38:"1230:reports-reports.labelreportstatus";a:2:{i:0;R:32274;i:1;R:9;}s:40:"1230:reports-reports.labelselecttemplate";a:2:{i:0;R:32274;i:1;R:9;}s:31:"1230:reports-reports.labeltitle";a:2:{i:0;R:32274;i:1;R:9;}s:35:"1230:reports-reports.linkviewreport";a:2:{i:0;R:32274;i:1;R:9;}s:37:"1230:reports-reports.linkviewtemplate";a:2:{i:0;R:32274;i:1;R:9;}s:27:"1230:reports-reports.listds";a:2:{i:0;R:32274;i:1;R:9;}s:31:"1230:reports-reports.listparams";a:2:{i:0;R:32274;i:1;R:9;}s:34:"1230:reports-reports.listparamsmap";a:2:{i:0;R:32274;i:1;R:9;}s:32:"1230:reports-reports.listreports";a:2:{i:0;R:32274;i:1;R:9;}s:34:"1230:reports-reports.listuserparam";a:2:{i:0;R:32274;i:1;R:9;}s:41:"1230:reports-reports.markedfieldstatement";a:2:{i:0;R:32274;i:1;R:9;}s:38:"1230:reports-reports.newreportlinktext";a:2:{i:0;R:32274;i:1;R:9;}s:23:"1230:reports-reports.or";a:2:{i:0;R:32274;i:1;R:9;}s:31:"1230:reports-reports.parameters";a:2:{i:0;R:32274;i:1;R:9;}s:30:"1230:reports-reports.paramname";a:2:{i:0;R:32274;i:1;R:9;}s:29:"1230:reports-reports.password";a:2:{i:0;R:32274;i:1;R:9;}s:28:"1230:reports-reports.preview";a:2:{i:0;R:32274;i:1;R:9;}s:38:"1230:reports-reports.previewreporttips";a:2:{i:0;R:32274;i:1;R:9;}s:28:"1230:reports-reports.reports";a:2:{i:0;R:32274;i:1;R:9;}s:34:"1230:reports-reports.review&submit";a:2:{i:0;R:32274;i:1;R:9;}s:36:"1230:reports-reports.reviewstatement";a:2:{i:0;R:32274;i:1;R:9;}s:33:"1230:reports-reports.selectreport";a:2:{i:0;R:32274;i:1;R:9;}s:30:"1230:reports-reports.statement";a:2:{i:0;R:32274;i:1;R:9;}s:27:"1230:reports-reports.status";a:2:{i:0;R:32274;i:1;R:9;}s:27:"1230:reports-reports.submit";a:2:{i:0;R:32274;i:1;R:9;}s:37:"1230:reports-reports.summaryandreport";a:2:{i:0;R:32274;i:1;R:9;}s:26:"1230:reports-reports.title";a:2:{i:0;R:32274;i:1;R:9;}s:34:"1230:reports-reports.toeditclickon";a:2:{i:0;R:32274;i:1;R:9;}s:25:"1230:reports-reports.type";a:2:{i:0;R:32274;i:1;R:9;}s:27:"1230:reports-reports.upload";a:2:{i:0;R:32274;i:1;R:9;}s:49:"1230:reports-reports.uploadadministrativedocument";a:2:{i:0;R:32274;i:1;R:9;}s:33:"1230:reports-reports.uploadreport";a:2:{i:0;R:32274;i:1;R:9;}s:34:"1230:reports-reports.upload_report";a:2:{i:0;R:32274;i:1;R:9;}s:39:"1230:reports-reports.uploadanewadmindoc";a:2:{i:0;R:32274;i:1;R:9;}s:24:"1230:reports-reports.url";a:2:{i:0;R:32274;i:1;R:9;}s:29:"1230:reports-reports.username";a:2:{i:0;R:32274;i:1;R:9;}s:34:"1230:reports-reports.viewreportsds";a:2:{i:0;R:32274;i:1;R:9;}s:38:"1230:reports-reports.viewreportsparams";a:2:{i:0;R:32274;i:1;R:9;}s:19:"1230:resources-next";a:2:{i:0;s:19:"out-mifos-resources";i:1;R:9;}s:23:"1230:resources-previous";a:2:{i:0;R:32370;i:1;R:9;}s:22:"1230:resources-results";a:2:{i:0;R:32370;i:1;R:9;}s:22:"1230:resources-alsosee";a:2:{i:0;R:32370;i:1;R:9;}s:21:"1230:resources-center";a:2:{i:0;R:32370;i:1;R:9;}s:21:"1230:resources-client";a:2:{i:0;R:32370;i:1;R:9;}s:27:"1230:resources-error.fwdkey";a:2:{i:0;R:32370;i:1;R:9;}s:29:"1230:resources-error.noaction";a:2:{i:0;R:32370;i:1;R:9;}s:30:"1230:resources-error.noxmlfile";a:2:{i:0;R:32370;i:1;R:9;}s:34:"1230:resources-error.tablenotfound";a:2:{i:0;R:32370;i:1;R:9;}s:30:"1230:resources-error.wrongtype";a:2:{i:0;R:32370;i:1;R:9;}s:32:"1230:resources-errors.unexpected";a:2:{i:0;R:32370;i:1;R:9;}s:20:"1230:resources-group";a:2:{i:0;R:32370;i:1;R:9;}s:19:"1230:resources-loan";a:2:{i:0;R:32370;i:1;R:9;}s:36:"1230:resources-loanaccount_stateid_1";a:2:{i:0;R:32370;i:1;R:9;}s:37:"1230:resources-loanaccount_stateid_10";a:2:{i:0;R:32370;i:1;R:9;}s:36:"1230:resources-loanaccount_stateid_2";a:2:{i:0;R:32370;i:1;R:9;}s:36:"1230:resources-loanaccount_stateid_3";a:2:{i:0;R:32370;i:1;R:9;}s:36:"1230:resources-loanaccount_stateid_4";a:2:{i:0;R:32370;i:1;R:9;}s:36:"1230:resources-loanaccount_stateid_5";a:2:{i:0;R:32370;i:1;R:9;}s:36:"1230:resources-loanaccount_stateid_6";a:2:{i:0;R:32370;i:1;R:9;}s:36:"1230:resources-loanaccount_stateid_7";a:2:{i:0;R:32370;i:1;R:9;}s:36:"1230:resources-loanaccount_stateid_8";a:2:{i:0;R:32370;i:1;R:9;}s:36:"1230:resources-loanaccount_stateid_9";a:2:{i:0;R:32370;i:1;R:9;}s:26:"1230:resources-loanofficer";a:2:{i:0;R:32370;i:1;R:9;}s:22:"1230:resources-savings";a:2:{i:0;R:32370;i:1;R:9;}s:33:"1230:resources-savings_stateid_13";a:2:{i:0;R:32370;i:1;R:9;}s:33:"1230:resources-savings_stateid_14";a:2:{i:0;R:32370;i:1;R:9;}s:33:"1230:resources-savings_stateid_15";a:2:{i:0;R:32370;i:1;R:9;}s:33:"1230:resources-savings_stateid_16";a:2:{i:0;R:32370;i:1;R:9;}s:33:"1230:resources-savings_stateid_17";a:2:{i:0;R:32370;i:1;R:9;}s:33:"1230:resources-savings_stateid_18";a:2:{i:0;R:32370;i:1;R:9;}s:21:"1230:resources-status";a:2:{i:0;R:32370;i:1;R:9;}s:22:"1230:resources-value_1";a:2:{i:0;R:32370;i:1;R:9;}s:23:"1230:resources-value_10";a:2:{i:0;R:32370;i:1;R:9;}s:23:"1230:resources-value_11";a:2:{i:0;R:32370;i:1;R:9;}s:23:"1230:resources-value_12";a:2:{i:0;R:32370;i:1;R:9;}s:23:"1230:resources-value_13";a:2:{i:0;R:32370;i:1;R:9;}s:23:"1230:resources-value_14";a:2:{i:0;R:32370;i:1;R:9;}s:22:"1230:resources-value_2";a:2:{i:0;R:32370;i:1;R:9;}s:22:"1230:resources-value_3";a:2:{i:0;R:32370;i:1;R:9;}s:22:"1230:resources-value_4";a:2:{i:0;R:32370;i:1;R:9;}s:22:"1230:resources-value_5";a:2:{i:0;R:32370;i:1;R:9;}s:22:"1230:resources-value_6";a:2:{i:0;R:32370;i:1;R:9;}s:22:"1230:resources-value_7";a:2:{i:0;R:32370;i:1;R:9;}s:22:"1230:resources-value_8";a:2:{i:0;R:32370;i:1;R:9;}s:22:"1230:resources-value_9";a:2:{i:0;R:32370;i:1;R:9;}s:21:"1230:savings-activity";a:2:{i:0;R:24;i:1;R:9;}s:28:"1230:savings-adjustmentnotes";a:2:{i:0;R:24;i:1;R:9;}s:19:"1230:savings-amount";a:2:{i:0;R:24;i:1;R:9;}s:20:"1230:savings-balance";a:2:{i:0;R:24;i:1;R:9;}s:23:"1230:savings-clientname";a:2:{i:0;R:24;i:1;R:9;}s:19:"1230:savings-credit";a:2:{i:0;R:24;i:1;R:9;}s:17:"1230:savings-date";a:2:{i:0;R:24;i:1;R:9;}s:23:"1230:savings-dateposted";a:2:{i:0;R:24;i:1;R:9;}s:18:"1230:savings-debit";a:2:{i:0;R:24;i:1;R:9;}s:24:"1230:savings-description";a:2:{i:0;R:24;i:1;R:9;}s:19:"1230:savings-glcode";a:2:{i:0;R:24;i:1;R:9;}s:22:"1230:savings-newstatus";a:2:{i:0;R:24;i:1;R:9;}s:22:"1230:savings-oldstatus";a:2:{i:0;R:24;i:1;R:9;}s:22:"1230:savings-paymentid";a:2:{i:0;R:24;i:1;R:9;}s:21:"1230:savings-postedby";a:2:{i:0;R:24;i:1;R:9;}s:27:"1230:savings-runningbalance";a:2:{i:0;R:24;i:1;R:9;}s:25:"1230:savings-savings.anew";a:2:{i:0;R:24;i:1;R:9;}s:41:"1230:savings-savings.accountstatementasof";a:2:{i:0;R:24;i:1;R:9;}s:31:"1230:savings-savings.clientname";a:2:{i:0;R:24;i:1;R:9;}s:27:"1230:savings-savings.create";a:2:{i:0;R:24;i:1;R:9;}s:25:"1230:savings-savings.edit";a:2:{i:0;R:24;i:1;R:9;}s:43:"1230:savings-savings.editaccountinformation";a:2:{i:0;R:24;i:1;R:9;}s:26:"1230:savings-savings.enter";a:2:{i:0;R:24;i:1;R:9;}s:29:"1230:savings-savings.interest";a:2:{i:0;R:24;i:1;R:9;}s:28:"1230:savings-savings.preview";a:2:{i:0;R:24;i:1;R:9;}s:28:"1230:savings-savings.savings";a:2:{i:0;R:24;i:1;R:9;}s:27:"1230:savings-savings.select";a:2:{i:0;R:24;i:1;R:9;}s:39:"1230:savings-savings.transactionhistory";a:2:{i:0;R:24;i:1;R:9;}s:25:"1230:savings-savings.view";a:2:{i:0;R:24;i:1;R:9;}s:28:"1230:savings-savings.account";a:2:{i:0;R:24;i:1;R:9;}s:36:"1230:savings-savings.accountassigned";a:2:{i:0;R:24;i:1;R:9;}s:35:"1230:savings-savings.accountbalance";a:2:{i:0;R:24;i:1;R:9;}s:39:"1230:savings-savings.accountdetailspage";a:2:{i:0;R:24;i:1;R:9;}s:39:"1230:savings-savings.accountinformation";a:2:{i:0;R:24;i:1;R:9;}s:33:"1230:savings-savings.accountowner";a:2:{i:0;R:24;i:1;R:9;}s:29:"1230:savings-savings.addanote";a:2:{i:0;R:24;i:1;R:9;}s:42:"1230:savings-savings.additionalinformation";a:2:{i:0;R:24;i:1;R:9;}s:27:"1230:savings-savings.amount";a:2:{i:0;R:24;i:1;R:9;}s:36:"1230:savings-savings.applyadjustment";a:2:{i:0;R:24;i:1;R:9;}s:31:"1230:savings-savings.applytrans";a:2:{i:0;R:24;i:1;R:9;}s:28:"1230:savings-savings.balance";a:2:{i:0;R:24;i:1;R:9;}s:35:"1230:savings-savings.balanceusedfor";a:2:{i:0;R:24;i:1;R:9;}s:39:"1230:savings-savings.btnreturntodetails";a:2:{i:0;R:24;i:1;R:9;}s:32:"1230:savings-savings.clickcancel";a:2:{i:0;R:24;i:1;R:9;}s:40:"1230:savings-savings.clickcanceltoreturn";a:2:{i:0;R:24;i:1;R:9;}s:34:"1230:savings-savings.clickcontinue";a:2:{i:0;R:24;i:1;R:9;}s:42:"1230:savings-savings.clickcontinueorcancel";a:2:{i:0;R:24;i:1;R:9;}s:33:"1230:savings-savings.clickpreview";a:2:{i:0;R:24;i:1;R:9;}s:43:"1230:savings-savings.clicksubmitifsatisfied";a:2:{i:0;R:24;i:1;R:9;}s:58:"1230:savings-savings.clicksubmitifsatisfied.return.closing";a:2:{i:0;R:24;i:1;R:9;}s:41:"1230:savings-savings.clicksubmitonpreview";a:2:{i:0;R:24;i:1;R:9;}s:33:"1230:savings-savings.closeaccount";a:2:{i:0;R:24;i:1;R:9;}s:43:"1230:savings-savings.completethefieldsbelow";a:2:{i:0;R:24;i:1;R:9;}s:54:"1230:savings-savings.confirmationmsgonreviewadjustment";a:2:{i:0;R:24;i:1;R:9;}s:38:"1230:savings-savings.dateaccountopened";a:2:{i:0;R:24;i:1;R:9;}s:31:"1230:savings-savings.dateoftrxn";a:2:{i:0;R:24;i:1;R:9;}s:38:"1230:savings-savings.depositduedetails";a:2:{i:0;R:24;i:1;R:9;}s:32:"1230:savings-savings.description";a:2:{i:0;R:24;i:1;R:9;}s:31:"1230:savings-savings.detailsnow";a:2:{i:0;R:24;i:1;R:9;}s:42:"1230:savings-savings.detailswithoutclosing";a:2:{i:0;R:24;i:1;R:9;}s:38:"1230:savings-savings.editaccountstatus";a:2:{i:0;R:24;i:1;R:9;}s:31:"1230:savings-savings.editfields";a:2:{i:0;R:24;i:1;R:9;}s:64:"1230:savings-savings.editfields.clickpreview.clickcanceltoreturn";a:2:{i:0;R:24;i:1;R:9;}s:36:"1230:savings-savings.edittransaction";a:2:{i:0;R:24;i:1;R:9;}s:32:"1230:savings-savings.enteramount";a:2:{i:0;R:24;i:1;R:9;}s:35:"1230:savings-savings.fieldsrequired";a:2:{i:0;R:24;i:1;R:9;}s:24:"1230:savings-savings.for";a:2:{i:0;R:24;i:1;R:9;}s:32:"1230:savings-savings.frequencyof";a:2:{i:0;R:24;i:1;R:9;}s:29:"1230:savings-savings.instance";a:2:{i:0;R:24;i:1;R:9;}s:40:"1230:savings-savings.instanceinformation";a:2:{i:0;R:24;i:1;R:9;}s:33:"1230:savings-savings.instancename";a:2:{i:0;R:24;i:1;R:9;}s:42:"1230:savings-savings.makedepositwithdrawal";a:2:{i:0;R:24;i:1;R:9;}s:41:"1230:savings-savings.makedepositwithdrawl";a:2:{i:0;R:24;i:1;R:9;}s:46:"1230:savings-savings.mandatoryamountfordeposit";a:2:{i:0;R:24;i:1;R:9;}s:42:"1230:savings-savings.maxamountperwithdrawl";a:2:{i:0;R:24;i:1;R:9;}s:39:"1230:savings-savings.minbalancerequired";a:2:{i:0;R:24;i:1;R:9;}s:35:"1230:savings-savings.misseddeposits";a:2:{i:0;R:24;i:1;R:9;}s:34:"1230:savings-savings.modeofpayment";a:2:{i:0;R:24;i:1;R:9;}s:38:"1230:savings-savings.modifylastpayment";a:2:{i:0;R:24;i:1;R:9;}s:53:"1230:savings-savings.moreaccountandtransactiondetails";a:2:{i:0;R:24;i:1;R:9;}s:58:"1230:savings-savings.msgontoplastpaymentmodifiedadjustment";a:2:{i:0;R:24;i:1;R:9;}s:32:"1230:savings-savings.nextdeposit";a:2:{i:0;R:24;i:1;R:9;}s:33:"1230:savings-savings.nonspecified";a:2:{i:0;R:24;i:1;R:9;}s:26:"1230:savings-savings.notes";a:2:{i:0;R:24;i:1;R:9;}s:23:"1230:savings-savings.on";a:2:{i:0;R:24;i:1;R:9;}s:29:"1230:savings-savings.openanew";a:2:{i:0;R:24;i:1;R:9;}s:39:"1230:savings-savings.openanotheraccount";a:2:{i:0;R:24;i:1;R:9;}s:36:"1230:savings-savings.pastdepositsdue";a:2:{i:0;R:24;i:1;R:9;}s:32:"1230:savings-savings.paymenttype";a:2:{i:0;R:24;i:1;R:9;}s:25:"1230:savings-savings.perc";a:2:{i:0;R:24;i:1;R:9;}s:39:"1230:savings-savings.performancehistory";a:2:{i:0;R:24;i:1;R:9;}s:31:"1230:savings-savings.pleasenote";a:2:{i:0;R:24;i:1;R:9;}s:38:"1230:savings-savings.postingtoaccounts";a:2:{i:0;R:24;i:1;R:9;}s:36:"1230:savings-savings.productinstance";a:2:{i:0;R:24;i:1;R:9;}s:35:"1230:savings-savings.productsummary";a:2:{i:0;R:24;i:1;R:9;}s:42:"1230:savings-savings.providedetailstoclose";a:2:{i:0;R:24;i:1;R:9;}s:25:"1230:savings-savings.rate";a:2:{i:0;R:24;i:1;R:9;}s:36:"1230:savings-savings.ratecalculation";a:2:{i:0;R:24;i:1;R:9;}s:32:"1230:savings-savings.receiptdate";a:2:{i:0;R:24;i:1;R:9;}s:30:"1230:savings-savings.receiptid";a:2:{i:0;R:24;i:1;R:9;}s:35:"1230:savings-savings.recentactivity";a:2:{i:0;R:24;i:1;R:9;}s:32:"1230:savings-savings.recentnotes";a:2:{i:0;R:24;i:1;R:9;}s:47:"1230:savings-savings.recommendedamntdoublevalue";a:2:{i:0;R:24;i:1;R:9;}s:48:"1230:savings-savings.recommendedamountfordeposit";a:2:{i:0;R:24;i:1;R:9;}s:43:"1230:savings-savings.returntoaccountdetails";a:2:{i:0;R:24;i:1;R:9;}s:27:"1230:savings-savings.review";a:2:{i:0;R:24;i:1;R:9;}s:34:"1230:savings-savings.review&submit";a:2:{i:0;R:24;i:1;R:9;}s:37:"1230:savings-savings.reviewadjustment";a:2:{i:0;R:24;i:1;R:9;}s:34:"1230:savings-savings.reviewdetails";a:2:{i:0;R:24;i:1;R:9;}s:38:"1230:savings-savings.reviewinformation";a:2:{i:0;R:24;i:1;R:9;}s:38:"1230:savings-savings.reviewtransaction";a:2:{i:0;R:24;i:1;R:9;}s:33:"1230:savings-savings.searchboxmsg";a:2:{i:0;R:24;i:1;R:9;}s:32:"1230:savings-savings.seeallnotes";a:2:{i:0;R:24;i:1;R:9;}s:28:"1230:savings-savings.selecta";a:2:{i:0;R:24;i:1;R:9;}s:33:"1230:savings-savings.selectclient";a:2:{i:0;R:24;i:1;R:9;}s:29:"1230:savings-savings.subtotal";a:2:{i:0;R:24;i:1;R:9;}s:40:"1230:savings-savings.successfullycreated";a:2:{i:0;R:24;i:1;R:9;}s:39:"1230:savings-savings.suggestednextsteps";a:2:{i:0;R:24;i:1;R:9;}s:34:"1230:savings-savings.timeperiodfor";a:2:{i:0;R:24;i:1;R:9;}s:34:"1230:savings-savings.tomakechanges";a:2:{i:0;R:24;i:1;R:9;}s:35:"1230:savings-savings.totalamountdue";a:2:{i:0;R:24;i:1;R:9;}s:37:"1230:savings-savings.totalamountdueon";a:2:{i:0;R:24;i:1;R:9;}s:34:"1230:savings-savings.totaldeposits";a:2:{i:0;R:24;i:1;R:9;}s:40:"1230:savings-savings.totalinterestearned";a:2:{i:0;R:24;i:1;R:9;}s:36:"1230:savings-savings.totalwithdrawls";a:2:{i:0;R:24;i:1;R:9;}s:33:"1230:savings-savings.transactions";a:2:{i:0;R:24;i:1;R:9;}s:35:"1230:savings-savings.typeofdeposits";a:2:{i:0;R:24;i:1;R:9;}s:43:"1230:savings-savings.viewallaccountactivity";a:2:{i:0;R:24;i:1;R:9;}s:34:"1230:savings-savings.viewchangelog";a:2:{i:0;R:24;i:1;R:9;}s:42:"1230:savings-savings.viewdepositduedetails";a:2:{i:0;R:24;i:1;R:9;}s:38:"1230:savings-savings.viewstatushistory";a:2:{i:0;R:24;i:1;R:9;}s:43:"1230:savings-savings.viewtransactionhistory";a:2:{i:0;R:24;i:1;R:9;}s:67:"1230:savings-savings.viewquestiongroupforclosedsavingsresponseslink";a:2:{i:0;R:24;i:1;R:9;}s:26:"1230:savings-savings.waive";a:2:{i:0;R:24;i:1;R:9;}s:26:"1230:savings-transactionid";a:2:{i:0;R:24;i:1;R:9;}s:17:"1230:savings-type";a:2:{i:0;R:24;i:1;R:9;}s:17:"1230:savings-user";a:2:{i:0;R:24;i:1;R:9;}s:39:"1230:savings-error.activity.not.allowed";a:2:{i:0;R:24;i:1;R:9;}s:38:"1230:savings-error.incompletechecklist";a:2:{i:0;R:24;i:1;R:9;}s:47:"1230:savings-error.stateinitializationexception";a:2:{i:0;R:24;i:1;R:9;}s:41:"1230:savings-error.statuschangenotallowed";a:2:{i:0;R:24;i:1;R:9;}s:35:"1230:savings-error.unknownexception";a:2:{i:0;R:24;i:1;R:9;}s:38:"1230:savings-error.versionnodonotmatch";a:2:{i:0;R:24;i:1;R:9;}s:51:"1230:savings-errors.account.specifycustomfieldvalue";a:2:{i:0;R:24;i:1;R:9;}s:43:"1230:savings-errors.account.customdatefield";a:2:{i:0;R:24;i:1;R:9;}s:32:"1230:savings-errors.createfailed";a:2:{i:0;R:24;i:1;R:9;}s:33:"1230:savings-errors.decimalformat";a:2:{i:0;R:24;i:1;R:9;}s:26:"1230:savings-errors.double";a:2:{i:0;R:24;i:1;R:9;}s:39:"1230:savings-errors.exceedmaxwithdrawal";a:2:{i:0;R:24;i:1;R:9;}s:30:"1230:savings-errors.futuredate";a:2:{i:0;R:24;i:1;R:9;}s:27:"1230:savings-errors.generic";a:2:{i:0;R:24;i:1;R:9;}s:38:"1230:savings-errors.insufficentbalance";a:2:{i:0;R:24;i:1;R:9;}s:43:"1230:savings-errors.invalidadjustmentamount";a:2:{i:0;R:24;i:1;R:9;}s:41:"1230:savings-errors.invalidinterestamount";a:2:{i:0;R:24;i:1;R:9;}s:36:"1230:savings-errors.invalidpersonnel";a:2:{i:0;R:24;i:1;R:9;}s:34:"1230:savings-errors.invalidtxndate";a:2:{i:0;R:24;i:1;R:9;}s:52:"1230:savings-errors.invalidtxndatemonthalreadyclosed";a:2:{i:0;R:24;i:1;R:9;}s:31:"1230:savings-errors.invaliddate";a:2:{i:0;R:24;i:1;R:9;}s:38:"1230:savings-errors.invalidlastpayment";a:2:{i:0;R:24;i:1;R:9;}s:29:"1230:savings-errors.mandatory";a:2:{i:0;R:24;i:1;R:9;}s:35:"1230:savings-errors.mandatoryselect";a:2:{i:0;R:24;i:1;R:9;}s:33:"1230:savings-errors.maximumlength";a:2:{i:0;R:24;i:1;R:9;}s:41:"1230:savings-errors.maximumlengthfornotes";a:2:{i:0;R:24;i:1;R:9;}s:41:"1230:savings-errors.mustbegreaterthanzero";a:2:{i:0;R:24;i:1;R:9;}s:26:"1230:savings-errors.prefix";a:2:{i:0;R:24;i:1;R:9;}s:26:"1230:savings-errors.suffix";a:2:{i:0;R:24;i:1;R:9;}s:32:"1230:savings-errors.updatefailed";a:2:{i:0;R:24;i:1;R:9;}s:52:"1230:savings-errors.payment.date.before.last.payment";a:2:{i:0;R:24;i:1;R:9;}s:65:"1230:savings-exception.accounts.applicationexception.cannotadjust";a:2:{i:0;R:24;i:1;R:9;}s:27:"1230:savings-savings.cancel";a:2:{i:0;R:24;i:1;R:9;}s:33:"1230:savings-savings.checklistmsg";a:2:{i:0;R:24;i:1;R:9;}s:33:"1230:savings-savings.clickcancel1";a:2:{i:0;R:24;i:1;R:9;}s:33:"1230:savings-savings.clickcancel2";a:2:{i:0;R:24;i:1;R:9;}s:40:"1230:savings-savings.confirmstatuschange";a:2:{i:0;R:24;i:1;R:9;}s:31:"1230:savings-savings.editstatus";a:2:{i:0;R:24;i:1;R:9;}s:25:"1230:savings-savings.last";a:2:{i:0;R:24;i:1;R:9;}s:30:"1230:savings-savings.newstatus";a:2:{i:0;R:24;i:1;R:9;}s:32:"1230:savings-savings.nochecklist";a:2:{i:0;R:24;i:1;R:9;}s:37:"1230:savings-savings.noflagsavailable";a:2:{i:0;R:24;i:1;R:9;}s:30:"1230:savings-savings.oldstatus";a:2:{i:0;R:24;i:1;R:9;}s:40:"1230:savings-savings.selectexplaination1";a:2:{i:0;R:24;i:1;R:9;}s:40:"1230:savings-savings.selectexplaination2";a:2:{i:0;R:24;i:1;R:9;}s:33:"1230:savings-savings.selectstatus";a:2:{i:0;R:24;i:1;R:9;}s:27:"1230:savings-savings.submit";a:2:{i:0;R:24;i:1;R:9;}s:33:"1230:savings-savings.changestatus";a:2:{i:0;R:24;i:1;R:9;}s:28:"1230:savings-savings.correct";a:2:{i:0;R:24;i:1;R:9;}s:34:"1230:savings-savings.currentstatus";a:2:{i:0;R:24;i:1;R:9;}s:25:"1230:savings-savings.made";a:2:{i:0;R:24;i:1;R:9;}s:25:"1230:savings-savings.note";a:2:{i:0;R:24;i:1;R:9;}s:27:"1230:savings-savings.status";a:2:{i:0;R:24;i:1;R:9;}s:49:"1230:security-security.error.encodingnotsupported";a:2:{i:0;s:18:"out-mifos-security";i:1;R:9;}s:41:"1230:security-security.error.generalerror";a:2:{i:0;R:32608;i:1;R:9;}s:38:"1230:security-security.error.inifailed";a:2:{i:0;R:32608;i:1;R:9;}s:44:"1230:security-security.error.nosuchalgorithm";a:2:{i:0;R:32608;i:1;R:9;}s:42:"1230:security-security.error.nosuchpadding";a:2:{i:0;R:32608;i:1;R:9;}s:37:"1230:shared-errors.multiplecurrencies";a:2:{i:0;s:16:"out-mifos-shared";i:1;R:9;}s:34:"1230:surveys-surveys.attachasurvey";a:2:{i:0;s:17:"out-mifos-surveys";i:1;R:9;}s:28:"1230:surveys-surveys.surveys";a:2:{i:0;R:32616;i:1;R:9;}s:27:"1230:surveys-surveys.active";a:2:{i:0;R:32616;i:1;R:9;}s:24:"1230:surveys-surveys.add";a:2:{i:0;R:32616;i:1;R:9;}s:32:"1230:surveys-surveys.addquestion";a:2:{i:0;R:32616;i:1;R:9;}s:33:"1230:surveys-surveys.addquestions";a:2:{i:0;R:32616;i:1;R:9;}s:27:"1230:surveys-surveys.answer";a:2:{i:0;R:32616;i:1;R:9;}s:33:"1230:surveys-surveys.answerchoice";a:2:{i:0;R:32616;i:1;R:9;}s:31:"1230:surveys-surveys.answertype";a:2:{i:0;R:32616;i:1;R:9;}s:30:"1230:surveys-surveys.appliesto";a:2:{i:0;R:32616;i:1;R:9;}s:32:"1230:surveys-surveys.centerlabel";a:2:{i:0;R:32616;i:1;R:9;}s:27:"1230:surveys-surveys.choice";a:2:{i:0;R:32616;i:1;R:9;}s:28:"1230:surveys-surveys.choices";a:2:{i:0;R:32616;i:1;R:9;}s:32:"1230:surveys-surveys.clientlabel";a:2:{i:0;R:32616;i:1;R:9;}s:38:"1230:surveys-surveys.createnewinstance";a:2:{i:0;R:32616;i:1;R:9;}s:30:"1230:surveys-surveys.customers";a:2:{i:0;R:32616;i:1;R:9;}s:38:"1230:surveys-surveys.customersandloans";a:2:{i:0;R:32616;i:1;R:9;}s:25:"1230:surveys-surveys.date";a:2:{i:0;R:32616;i:1;R:9;}s:27:"1230:surveys-surveys.delete";a:2:{i:0;R:32616;i:1;R:9;}s:28:"1230:surveys-surveys.details";a:2:{i:0;R:32616;i:1;R:9;}s:37:"1230:surveys-surveys.editinstructions";a:2:{i:0;R:32616;i:1;R:9;}s:29:"1230:surveys-surveys.editnote";a:2:{i:0;R:32616;i:1;R:9;}s:33:"1230:surveys-surveys.editquestion";a:2:{i:0;R:32616;i:1;R:9;}s:37:"1230:surveys-surveys.editquestioninfo";a:2:{i:0;R:32616;i:1;R:9;}s:31:"1230:surveys-surveys.editsurvey";a:2:{i:0;R:32616;i:1;R:9;}s:29:"1230:surveys-surveys.freetext";a:2:{i:0;R:32616;i:1;R:9;}s:31:"1230:surveys-surveys.grouplabel";a:2:{i:0;R:32616;i:1;R:9;}s:29:"1230:surveys-surveys.inactive";a:2:{i:0;R:32616;i:1;R:9;}s:30:"1230:surveys-surveys.loanlabel";a:2:{i:0;R:32616;i:1;R:9;}s:26:"1230:surveys-surveys.loans";a:2:{i:0;R:32616;i:1;R:9;}s:30:"1230:surveys-surveys.mandatory";a:2:{i:0;R:32616;i:1;R:9;}s:32:"1230:surveys-surveys.multiselect";a:2:{i:0;R:32616;i:1;R:9;}s:23:"1230:surveys-surveys.no";a:2:{i:0;R:32616;i:1;R:9;}s:27:"1230:surveys-surveys.number";a:2:{i:0;R:32616;i:1;R:9;}s:35:"1230:surveys-surveys.pagedquestions";a:2:{i:0;R:32616;i:1;R:9;}s:40:"1230:surveys-surveys.previeweditquestion";a:2:{i:0;R:32616;i:1;R:9;}s:35:"1230:surveys-surveys.printerversion";a:2:{i:0;R:32616;i:1;R:9;}s:29:"1230:surveys-surveys.question";a:2:{i:0;R:32616;i:1;R:9;}s:33:"1230:surveys-surveys.questionname";a:2:{i:0;R:32616;i:1;R:9;}s:30:"1230:surveys-surveys.questions";a:2:{i:0;R:32616;i:1;R:9;}s:34:"1230:surveys-surveys.questiontitle";a:2:{i:0;R:32616;i:1;R:9;}s:27:"1230:surveys-surveys.remove";a:2:{i:0;R:32616;i:1;R:9;}s:33:"1230:surveys-surveys.savingslabel";a:2:{i:0;R:32616;i:1;R:9;}s:33:"1230:surveys-surveys.singleselect";a:2:{i:0;R:32616;i:1;R:9;}s:27:"1230:surveys-surveys.status";a:2:{i:0;R:32616;i:1;R:9;}s:24:"1230:surveys-surveys.yes";a:2:{i:0;R:32616;i:1;R:9;}s:34:"1230:surveys-surveys.accounts_type";a:2:{i:0;R:32616;i:1;R:9;}s:29:"1230:surveys-surveys.all_type";a:2:{i:0;R:32616;i:1;R:9;}s:24:"1230:surveys-surveys.and";a:2:{i:0;R:32616;i:1;R:9;}s:35:"1230:surveys-surveys.appliestofield";a:2:{i:0;R:32616;i:1;R:9;}s:34:"1230:surveys-surveys.attach_survey";a:2:{i:0;R:32616;i:1;R:9;}s:28:"1230:surveys-surveys.between";a:2:{i:0;R:32616;i:1;R:9;}s:30:"1230:surveys-surveys.both_type";a:2:{i:0;R:32616;i:1;R:9;}s:45:"1230:surveys-surveys.button.backtodetailspage";a:2:{i:0;R:32616;i:1;R:9;}s:34:"1230:surveys-surveys.button.cancel";a:2:{i:0;R:32616;i:1;R:9;}s:36:"1230:surveys-surveys.button.clearall";a:2:{i:0;R:32616;i:1;R:9;}s:36:"1230:surveys-surveys.button.continue";a:2:{i:0;R:32616;i:1;R:9;}s:34:"1230:surveys-surveys.button.delete";a:2:{i:0;R:32616;i:1;R:9;}s:32:"1230:surveys-surveys.button.edit";a:2:{i:0;R:32616;i:1;R:9;}s:38:"1230:surveys-surveys.button.editsurvey";a:2:{i:0;R:32616;i:1;R:9;}s:35:"1230:surveys-surveys.button.preview";a:2:{i:0;R:32616;i:1;R:9;}s:33:"1230:surveys-surveys.button.print";a:2:{i:0;R:32616;i:1;R:9;}s:34:"1230:surveys-surveys.button.submit";a:2:{i:0;R:32616;i:1;R:9;}s:27:"1230:surveys-surveys.center";a:2:{i:0;R:32616;i:1;R:9;}s:32:"1230:surveys-surveys.center_type";a:2:{i:0;R:32616;i:1;R:9;}s:45:"1230:surveys-surveys.choose_page_instructions";a:2:{i:0;R:32616;i:1;R:9;}s:34:"1230:surveys-surveys.chooseofficer";a:2:{i:0;R:32616;i:1;R:9;}s:27:"1230:surveys-surveys.client";a:2:{i:0;R:32616;i:1;R:9;}s:32:"1230:surveys-surveys.client_type";a:2:{i:0;R:32616;i:1;R:9;}s:45:"1230:surveys-surveys.create_page_instructions";a:2:{i:0;R:32616;i:1;R:9;}s:39:"1230:surveys-surveys.createsurveyheader";a:2:{i:0;R:32616;i:1;R:9;}s:36:"1230:surveys-surveys.createsurveymsg";a:2:{i:0;R:32616;i:1;R:9;}s:35:"1230:surveys-surveys.customers_type";a:2:{i:0;R:32616;i:1;R:9;}s:36:"1230:surveys-surveys.definenewsurvey";a:2:{i:0;R:32616;i:1;R:9;}s:35:"1230:surveys-surveys.definequestion";a:2:{i:0;R:32616;i:1;R:9;}s:33:"1230:surveys-surveys.definesurvey";a:2:{i:0;R:32616;i:1;R:9;}s:33:"1230:surveys-surveys.enter_survey";a:2:{i:0;R:32616;i:1;R:9;}s:40:"1230:surveys-surveys.enteredintosystemby";a:2:{i:0;R:32616;i:1;R:9;}s:45:"1230:surveys-surveys.enterinstanceinformation";a:2:{i:0;R:32616;i:1;R:9;}s:26:"1230:surveys-surveys.group";a:2:{i:0;R:32616;i:1;R:9;}s:31:"1230:surveys-surveys.group_type";a:2:{i:0;R:32616;i:1;R:9;}s:42:"1230:surveys-surveys.instance.dateofsurvey";a:2:{i:0;R:32616;i:1;R:9;}s:45:"1230:surveys-surveys.instance.entersurveydata";a:2:{i:0;R:32616;i:1;R:9;}s:42:"1230:surveys-surveys.instance.instructions";a:2:{i:0;R:32616;i:1;R:9;}s:40:"1230:surveys-surveys.instance.surveyedby";a:2:{i:0;R:32616;i:1;R:9;}s:38:"1230:surveys-surveys.instance.systemid";a:2:{i:0;R:32616;i:1;R:9;}s:40:"1230:surveys-surveys.instanceinformation";a:2:{i:0;R:32616;i:1;R:9;}s:30:"1230:surveys-surveys.linkadmin";a:2:{i:0;R:32616;i:1;R:9;}s:25:"1230:surveys-surveys.loan";a:2:{i:0;R:32616;i:1;R:9;}s:30:"1230:surveys-surveys.loan_type";a:2:{i:0;R:32616;i:1;R:9;}s:42:"1230:surveys-surveys.mainpage_instructions";a:2:{i:0;R:32616;i:1;R:9;}s:36:"1230:surveys-surveys.managequestions";a:2:{i:0;R:32616;i:1;R:9;}s:30:"1230:surveys-surveys.namefield";a:2:{i:0;R:32616;i:1;R:9;}s:42:"1230:surveys-surveys.newquestionsmsgprefix";a:2:{i:0;R:32616;i:1;R:9;}s:42:"1230:surveys-surveys.newquestionsmsgsuffix";a:2:{i:0;R:32616;i:1;R:9;}s:37:"1230:surveys-surveys.noquestionsadded";a:2:{i:0;R:32616;i:1;R:9;}s:37:"1230:surveys-surveys.nosurveysmessage";a:2:{i:0;R:32616;i:1;R:9;}s:34:"1230:surveys-surveys.notapplicable";a:2:{i:0;R:32616;i:1;R:9;}s:28:"1230:surveys-surveys.officer";a:2:{i:0;R:32616;i:1;R:9;}s:38:"1230:surveys-surveys.previewsurveydata";a:2:{i:0;R:32616;i:1;R:9;}s:51:"1230:surveys-surveys.printer.multiselectdescription";a:2:{i:0;R:32616;i:1;R:9;}s:52:"1230:surveys-surveys.printer.singleselectdescription";a:2:{i:0;R:32616;i:1;R:9;}s:31:"1230:surveys-surveys.removelink";a:2:{i:0;R:32616;i:1;R:9;}s:27:"1230:surveys-surveys.review";a:2:{i:0;R:32616;i:1;R:9;}s:39:"1230:surveys-surveys.reviewinstructions";a:2:{i:0;R:32616;i:1;R:9;}s:28:"1230:surveys-surveys.savings";a:2:{i:0;R:32616;i:1;R:9;}s:33:"1230:surveys-surveys.savings_type";a:2:{i:0;R:32616;i:1;R:9;}s:37:"1230:surveys-surveys.select_questions";a:2:{i:0;R:32616;i:1;R:9;}s:34:"1230:surveys-surveys.select_survey";a:2:{i:0;R:32616;i:1;R:9;}s:38:"1230:surveys-surveys.surveyinformation";a:2:{i:0;R:32616;i:1;R:9;}s:35:"1230:surveys-surveys.survey_details";a:2:{i:0;R:32616;i:1;R:9;}s:32:"1230:surveys-surveys.survey_name";a:2:{i:0;R:32616;i:1;R:9;}s:47:"1230:surveys-surveys.viewquestions_instructions";a:2:{i:0;R:32616;i:1;R:9;}s:43:"1230:surveys-surveys.viewquestions_ppi_note";a:2:{i:0;R:32616;i:1;R:9;}s:35:"1230:surveys-surveys.viewallsurveys";a:2:{i:0;R:32616;i:1;R:9;}s:34:"1230:surveys-surveys.viewquestions";a:2:{i:0;R:32616;i:1;R:9;}s:38:"1230:surveys-surveys.viewsurveydetails";a:2:{i:0;R:32616;i:1;R:9;}s:32:"1230:surveys-surveys.viewsurveys";a:2:{i:0;R:32616;i:1;R:9;}s:41:"1230:surveys-errors.basevalidator.missing";a:2:{i:0;R:32616;i:1;R:9;}s:45:"1230:surveys-errors.datevalidator.date_format";a:2:{i:0;R:32616;i:1;R:9;}s:44:"1230:surveys-errors.datevalidator.dateformat";a:2:{i:0;R:32616;i:1;R:9;}s:50:"1230:surveys-errors.datevalidator.invalidpersonnel";a:2:{i:0;R:32616;i:1;R:9;}s:46:"1230:surveys-errors.enumvalidator.invalid_enum";a:2:{i:0;R:32616;i:1;R:9;}s:45:"1230:surveys-errors.enumvalidator.invalidenum";a:2:{i:0;R:32616;i:1;R:9;}s:46:"1230:surveys-errors.maxlengthvalidator.toolong";a:2:{i:0;R:32616;i:1;R:9;}s:49:"1230:surveys-errors.notnullemptyvalidator.missing";a:2:{i:0;R:32616;i:1;R:9;}s:55:"1230:surveys-errors.notnullemptyvalidator.missing_field";a:2:{i:0;R:32616;i:1;R:9;}s:50:"1230:surveys-errors.numbervalidator.invalid_number";a:2:{i:0;R:32616;i:1;R:9;}s:47:"1230:surveys-errors.oneofvalidator.not_a_choice";a:2:{i:0;R:32616;i:1;R:9;}s:43:"1230:surveys-errors.surveyvalidator.missing";a:2:{i:0;R:32616;i:1;R:9;}s:44:"1230:surveys-errors.datesurveyed.date_format";a:2:{i:0;R:32616;i:1;R:9;}s:34:"1230:surveys-errors.invalidofficer";a:2:{i:0;R:32616;i:1;R:9;}s:30:"1230:surveys-errors.nameexists";a:2:{i:0;R:32616;i:1;R:9;}s:26:"1230:surveys-errors.prefix";a:2:{i:0;R:32616;i:1;R:9;}s:28:"1230:surveys-errors.readonly";a:2:{i:0;R:32616;i:1;R:9;}s:26:"1230:surveys-errors.suffix";a:2:{i:0;R:32616;i:1;R:9;}s:41:"1230:surveys-erros.invalidnumberofchoices";a:2:{i:0;R:32616;i:1;R:9;}s:51:"1230:surveys-questionnaire.editadditonalinformation";a:2:{i:0;R:32616;i:1;R:9;}s:24:"1230:ui-conversion_error";a:2:{i:0;s:12:"out-mifos-ui";i:1;R:9;}s:16:"1230:ui-clientid";a:2:{i:0;R:32755;i:1;R:9;}s:14:"1230:ui-client";a:2:{i:0;R:32755;i:1;R:9;}s:13:"1230:ui-group";a:2:{i:0;R:32755;i:1;R:9;}s:14:"1230:ui-center";a:2:{i:0;R:32755;i:1;R:9;}s:14:"1230:ui-office";a:2:{i:0;R:32755;i:1;R:9;}s:12:"1230:ui-loan";a:2:{i:0;R:32755;i:1;R:9;}s:16:"1230:ui-interest";a:2:{i:0;R:32755;i:1;R:9;}s:71:"1230:ui-exceeding_number_of_digits_after_decimal_separator_for_interest";a:2:{i:0;R:32755;i:1;R:9;}s:68:"1230:ui-exceeding_number_of_digits_after_decimal_separator_for_money";a:2:{i:0;R:32755;i:1;R:9;}s:72:"1230:ui-exceeding_number_of_digits_before_decimal_separator_for_interest";a:2:{i:0;R:32755;i:1;R:9;}s:69:"1230:ui-exceeding_number_of_digits_before_decimal_separator_for_money";a:2:{i:0;R:32755;i:1;R:9;}s:83:"1230:ui-exceeding_number_of_digits_before_decimal_separator_for_cashflow_validation";a:2:{i:0;R:32755;i:1;R:9;}s:82:"1230:ui-exceeding_number_of_digits_after_decimal_separator_for_cashflow_validation";a:2:{i:0;R:32755;i:1;R:9;}s:10:"1230:ui-id";a:2:{i:0;R:32755;i:1;R:9;}s:29:"1230:ui-interest_out_of_range";a:2:{i:0;R:32755;i:1;R:9;}s:40:"1230:ui-cash_flow_threshold_out_of_range";a:2:{i:0;R:32755;i:1;R:9;}s:39:"1230:ui-indebtedness_ratio_out_of_range";a:2:{i:0;R:32755;i:1;R:9;}s:39:"1230:ui-repayment_capacity_out_of_range";a:2:{i:0;R:32755;i:1;R:9;}s:22:"1230:ui-not_all_number";a:2:{i:0;R:32755;i:1;R:9;}s:21:"1230:ui-button.create";a:2:{i:0;R:32755;i:1;R:9;}s:21:"1230:ui-button.delete";a:2:{i:0;R:32755;i:1;R:9;}s:18:"1230:ui-button.get";a:2:{i:0;R:32755;i:1;R:9;}s:19:"1230:ui-button.next";a:2:{i:0;R:32755;i:1;R:9;}s:22:"1230:ui-button.preview";a:2:{i:0;R:32755;i:1;R:9;}s:23:"1230:ui-button.previous";a:2:{i:0;R:32755;i:1;R:9;}s:21:"1230:ui-button.search";a:2:{i:0;R:32755;i:1;R:9;}s:21:"1230:ui-button.update";a:2:{i:0;R:32755;i:1;R:9;}s:14:"1230:ui-cancel";a:2:{i:0;R:32755;i:1;R:9;}s:20:"1230:ui-chooseoffice";a:2:{i:0;R:32755;i:1;R:9;}s:29:"1230:ui-confirmbranchtransfer";a:2:{i:0;R:32755;i:1;R:9;}s:28:"1230:ui-confirmgrouptransfer";a:2:{i:0;R:32755;i:1;R:9;}s:29:"1230:ui-confirmparenttransfer";a:2:{i:0;R:32755;i:1;R:9;}s:16:"1230:ui-continue";a:2:{i:0;R:32755;i:1;R:9;}s:19:"1230:ui-editmfiinfo";a:2:{i:0;R:32755;i:1;R:9;}s:24:"1230:ui-editpersonalinfo";a:2:{i:0;R:32755;i:1;R:9;}s:19:"1230:ui-getallfunds";a:2:{i:0;R:32755;i:1;R:9;}s:18:"1230:ui-getdetails";a:2:{i:0;R:32755;i:1;R:9;}s:19:"1230:ui-gethomepage";a:2:{i:0;R:32755;i:1;R:9;}s:29:"1230:ui-getinstallmentdetails";a:2:{i:0;R:32755;i:1;R:9;}s:29:"1230:ui-getinstallmenthistory";a:2:{i:0;R:32755;i:1;R:9;}s:25:"1230:ui-getofficehomepage";a:2:{i:0;R:32755;i:1;R:9;}s:23:"1230:ui-getprdofferings";a:2:{i:0;R:32755;i:1;R:9;}s:21:"1230:ui-getreportpage";a:2:{i:0;R:32755;i:1;R:9;}s:22:"1230:ui-hierarchycheck";a:2:{i:0;R:32755;i:1;R:9;}s:12:"1230:ui-load";a:2:{i:0;R:32755;i:1;R:9;}s:23:"1230:ui-loadallbranches";a:2:{i:0;R:32755;i:1;R:9;}s:26:"1230:ui-loadbranchtransfer";a:2:{i:0;R:32755;i:1;R:9;}s:19:"1230:ui-loadcenters";a:2:{i:0;R:32755;i:1;R:9;}s:26:"1230:ui-loadchangepassword";a:2:{i:0;R:32755;i:1;R:9;}s:21:"1230:ui-loadcustomers";a:2:{i:0;R:32755;i:1;R:9;}s:25:"1230:ui-loadgrouptransfer";a:2:{i:0;R:32755;i:1;R:9;}s:26:"1230:ui-loadhistoricaldata";a:2:{i:0;R:32755;i:1;R:9;}s:24:"1230:ui-loadloanofficers";a:2:{i:0;R:32755;i:1;R:9;}s:19:"1230:ui-loadmeeting";a:2:{i:0;R:32755;i:1;R:9;}s:18:"1230:ui-loadparent";a:2:{i:0;R:32755;i:1;R:9;}s:26:"1230:ui-loadparenttransfer";a:2:{i:0;R:32755;i:1;R:9;}s:18:"1230:ui-loadsearch";a:2:{i:0;R:32755;i:1;R:9;}s:18:"1230:ui-loadstatus";a:2:{i:0;R:32755;i:1;R:9;}s:20:"1230:ui-loadtransfer";a:2:{i:0;R:32755;i:1;R:9;}s:22:"1230:ui-loadunlockuser";a:2:{i:0;R:32755;i:1;R:9;}s:15:"1230:ui-loadall";a:2:{i:0;R:32755;i:1;R:9;}s:13:"1230:ui-login";a:2:{i:0;R:32755;i:1;R:9;}s:14:"1230:ui-logout";a:2:{i:0;R:32755;i:1;R:9;}s:14:"1230:ui-manage";a:2:{i:0;R:32755;i:1;R:9;}s:15:"1230:ui-preload";a:2:{i:0;R:32755;i:1;R:9;}s:19:"1230:ui-prevmfiinfo";a:2:{i:0;R:32755;i:1;R:9;}s:24:"1230:ui-prevpersonalinfo";a:2:{i:0;R:32755;i:1;R:9;}s:22:"1230:ui-previewmfiinfo";a:2:{i:0;R:32755;i:1;R:9;}s:27:"1230:ui-previewpersonalinfo";a:2:{i:0;R:32755;i:1;R:9;}s:23:"1230:ui-retrievepicture";a:2:{i:0;R:32755;i:1;R:9;}s:32:"1230:ui-retrievepictureonpreview";a:2:{i:0;R:32755;i:1;R:9;}s:18:"1230:ui-searchnext";a:2:{i:0;R:32755;i:1;R:9;}s:18:"1230:ui-searchprev";a:2:{i:0;R:32755;i:1;R:9;}s:14:"1230:ui-select";a:2:{i:0;R:32755;i:1;R:9;}s:35:"1230:ui-setdefaultformedbypersonnel";a:2:{i:0;R:32755;i:1;R:9;}s:19:"1230:ui-showpicture";a:2:{i:0;R:32755;i:1;R:9;}s:25:"1230:ui-unlockuseraccount";a:2:{i:0;R:32755;i:1;R:9;}s:20:"1230:ui-updatebranch";a:2:{i:0;R:32755;i:1;R:9;}s:21:"1230:ui-updatemeeting";a:2:{i:0;R:32755;i:1;R:9;}s:17:"1230:ui-updatemfi";a:2:{i:0;R:32755;i:1;R:9;}s:20:"1230:ui-updateparent";a:2:{i:0;R:32755;i:1;R:9;}s:22:"1230:ui-updatesettings";a:2:{i:0;R:32755;i:1;R:9;}s:20:"1230:ui-updatestatus";a:2:{i:0;R:32755;i:1;R:9;}s:16:"1230:ui-validate";a:2:{i:0;R:32755;i:1;R:9;}s:13:"1230:ui-waive";a:2:{i:0;R:32755;i:1;R:9;}s:16:"1230:ui-writeoff";a:2:{i:0;R:32755;i:1;R:9;}s:39:"1230:uiloan-customersearch.pagesubtitle";a:2:{i:0;s:16:"out-mifos-uiloan";i:1;R:9;}s:37:"1230:uiloan-customersearch.searchterm";a:2:{i:0;R:32843;i:1;R:9;}s:39:"1230:uiloan-customersearch.instructions";a:2:{i:0;R:32843;i:1;R:9;}s:39:"1230:uiloan-selectcustomer.instructions";a:2:{i:0;R:32843;i:1;R:9;}s:57:"1230:uiloan-createloanaccount.customersearch.pagesubtitle";a:2:{i:0;R:32843;i:1;R:9;}s:57:"1230:uiloan-createloanaccount.customersearch.instructions";a:2:{i:0;R:32843;i:1;R:9;}s:56:"1230:uiloan-notempty.customersearchformbean.searchstring";a:2:{i:0;R:32843;i:1;R:9;}s:54:"1230:uiloan-createloanaccount.flowstate.selectcustomer";a:2:{i:0;R:32843;i:1;R:9;}s:56:"1230:uiloan-createloanaccount.flowstate.enteraccountinfo";a:2:{i:0;R:32843;i:1;R:9;}s:58:"1230:uiloan-createloanaccount.flowstate.reviewinstallments";a:2:{i:0;R:32843;i:1;R:9;}s:55:"1230:uiloan-createloanaccount.flowstate.reviewandsubmit";a:2:{i:0;R:32843;i:1;R:9;}s:42:"1230:uiloan-createloanaccount.wizard.title";a:2:{i:0;R:32843;i:1;R:9;}s:56:"1230:uiloan-createloanaccount.selectproduct.pagesubtitle";a:2:{i:0;R:32843;i:1;R:9;}s:56:"1230:uiloan-createloanaccount.selectproduct.instructions";a:2:{i:0;R:32843;i:1;R:9;}s:61:"1230:uiloan-createloanaccount.reviewinstallments.pagesubtitle";a:2:{i:0;R:32843;i:1;R:9;}s:61:"1230:uiloan-createloanaccount.reviewinstallments.instructions";a:2:{i:0;R:32843;i:1;R:9;}s:50:"1230:uiloan-createloanaccount.preview.pagesubtitle";a:2:{i:0;R:32843;i:1;R:9;}s:50:"1230:uiloan-createloanaccount.preview.instructions";a:2:{i:0;R:32843;i:1;R:9;}s:50:"1230:uiloan-redoloanaccount.wizard.highlightednote";a:2:{i:0;R:32843;i:1;R:9;}s:40:"1230:uiloan-redoloanaccount.wizard.title";a:2:{i:0;R:32843;i:1;R:9;}s:42:"1230:uiloan-selectproduct.accountownername";a:2:{i:0;R:32843;i:1;R:9;}s:44:"1230:uiloan-selectproduct.selectproductlabel";a:2:{i:0;R:32843;i:1;R:9;}s:51:"1230:uiloan-notnull.selectproductformbean.productid";a:2:{i:0;R:32843;i:1;R:9;}s:68:"1230:uiloan-createloanaccount.enteraccountinfo.productsummary.header";a:2:{i:0;R:32843;i:1;R:9;}s:90:"1230:uiloan-createloanaccount.enteraccountinfo.accountdetail.glim.individualdetails.header";a:2:{i:0;R:32843;i:1;R:9;}s:67:"1230:uiloan-createloanaccount.enteraccountinfo.accountdetail.header";a:2:{i:0;R:32843;i:1;R:9;}s:65:"1230:uiloan-createloanaccount.enteraccountinfo.defaultfees.header";a:2:{i:0;R:32843;i:1;R:9;}s:70:"1230:uiloan-createloanaccount.enteraccountinfo.defaultpenalties.header";a:2:{i:0;R:32843;i:1;R:9;}s:68:"1230:uiloan-createloanaccount.enteraccountinfo.additionalfees.header";a:2:{i:0;R:32843;i:1;R:9;}s:38:"1230:uiloan-productsummary.description";a:2:{i:0;R:32843;i:1;R:9;}s:43:"1230:uiloan-productsummary.interestratetype";a:2:{i:0;R:32843;i:1;R:9;}s:45:"1230:uiloan-productsummary.freqofinstallments";a:2:{i:0;R:32843;i:1;R:9;}s:42:"1230:uiloan-productsummary.graceperiodtype";a:2:{i:0;R:32843;i:1;R:9;}s:43:"1230:uiloan-productsummary.graceperiod.none";a:2:{i:0;R:32843;i:1;R:9;}s:52:"1230:uiloan-productsummary.graceperiod.allrepayments";a:2:{i:0;R:32843;i:1;R:9;}s:52:"1230:uiloan-productsummary.graceperiod.principalonly";a:2:{i:0;R:32843;i:1;R:9;}s:54:"1230:uiloan-productsummary.variableinstallmentsallowed";a:2:{i:0;R:32843;i:1;R:9;}s:49:"1230:uiloan-productsummary.fixedrepaymentschedule";a:2:{i:0;R:32843;i:1;R:9;}s:53:"1230:uiloan-productsummary.variabeinstallments.mingap";a:2:{i:0;R:32843;i:1;R:9;}s:53:"1230:uiloan-productsummary.variabeinstallments.maxgap";a:2:{i:0;R:32843;i:1;R:9;}s:67:"1230:uiloan-productsummary.variabeinstallments.mininstallmentamount";a:2:{i:0;R:32843;i:1;R:9;}s:81:"1230:uiloan-productsummary.variabeinstallments.mininstallmentamount.notapplicable";a:2:{i:0;R:32843;i:1;R:9;}s:51:"1230:uiloan-productsummary.variabeinstallments.days";a:2:{i:0;R:32843;i:1;R:9;}s:75:"1230:uiloan-loanaccountformbean.additionalfees.variableinstallments.invalid";a:2:{i:0;R:32843;i:1;R:9;}s:72:"1230:uiloan-loanaccountformbean.defaultfees.variableinstallments.invalid";a:2:{i:0;R:32843;i:1;R:9;}s:36:"1230:uiloan-createloanaccount.amount";a:2:{i:0;R:32843;i:1;R:9;}s:43:"1230:uiloan-createloanaccount.allowedamount";a:2:{i:0;R:32843;i:1;R:9;}s:42:"1230:uiloan-createloanaccount.interestrate";a:2:{i:0;R:32843;i:1;R:9;}s:49:"1230:uiloan-createloanaccount.allowedinterestrate";a:2:{i:0;R:32843;i:1;R:9;}s:50:"1230:uiloan-createloanaccount.numberofinstallments";a:2:{i:0;R:32843;i:1;R:9;}s:57:"1230:uiloan-createloanaccount.allowednumberofinstallments";a:2:{i:0;R:32843;i:1;R:9;}s:43:"1230:uiloan-createloanaccount.disbursaldate";a:2:{i:0;R:32843;i:1;R:9;}s:42:"1230:uiloan-createloanaccount.repaymentday";a:2:{i:0;R:32843;i:1;R:9;}s:43:"1230:uiloan-createloanaccount.graceduration";a:2:{i:0;R:32843;i:1;R:9;}s:56:"1230:uiloan-createloanaccount.allowedgraceininstallments";a:2:{i:0;R:32843;i:1;R:9;}s:42:"1230:uiloan-createloanaccount.sourceoffund";a:2:{i:0;R:32843;i:1;R:9;}s:43:"1230:uiloan-createloanaccount.purposeofloan";a:2:{i:0;R:32843;i:1;R:9;}s:44:"1230:uiloan-createloanaccount.collateraltype";a:2:{i:0;R:32843;i:1;R:9;}s:45:"1230:uiloan-createloanaccount.collateralnotes";a:2:{i:0;R:32843;i:1;R:9;}s:40:"1230:uiloan-createloanaccount.externalid";a:2:{i:0;R:32843;i:1;R:9;}s:37:"1230:uiloan-createloanaccount.feetype";a:2:{i:0;R:32843;i:1;R:9;}s:39:"1230:uiloan-createloanaccount.feeamount";a:2:{i:0;R:32843;i:1;R:9;}s:41:"1230:uiloan-createloanaccount.periodicity";a:2:{i:0;R:32843;i:1;R:9;}s:39:"1230:uiloan-createloanaccount.frequency";a:2:{i:0;R:32843;i:1;R:9;}s:37:"1230:uiloan-createloanaccount.formula";a:2:{i:0;R:32843;i:1;R:9;}s:35:"1230:uiloan-createloanaccount.weeks";a:2:{i:0;R:32843;i:1;R:9;}s:36:"1230:uiloan-createloanaccount.months";a:2:{i:0;R:32843;i:1;R:9;}s:49:"1230:uiloan-createloanaccount.periodicity.onetime";a:2:{i:0;R:32843;i:1;R:9;}s:58:"1230:uiloan-createloanaccount.frequency.timeofdisbursement";a:2:{i:0;R:32843;i:1;R:9;}s:64:"1230:uiloan-createloanaccount.frequency.timeoffirstloanrepayment";a:2:{i:0;R:32843;i:1;R:9;}s:47:"1230:uiloan-createloanaccount.frequency.upfront";a:2:{i:0;R:32843;i:1;R:9;}s:46:"1230:uiloan-loanaccountformbean.amount.invalid";a:2:{i:0;R:32843;i:1;R:9;}s:52:"1230:uiloan-loanaccountformbean.interestrate.invalid";a:2:{i:0;R:32843;i:1;R:9;}s:60:"1230:uiloan-loanaccountformbean.numberofinstallments.invalid";a:2:{i:0;R:32843;i:1;R:9;}s:53:"1230:uiloan-loanaccountformbean.disbursaldate.invalid";a:2:{i:0;R:32843;i:1;R:9;}s:56:"1230:uiloan-loanaccountformbean.disbursaldate.dd.invalid";a:2:{i:0;R:32843;i:1;R:9;}s:56:"1230:uiloan-loanaccountformbean.disbursaldate.mm.invalid";a:2:{i:0;R:32843;i:1;R:9;}s:58:"1230:uiloan-loanaccountformbean.disbursaldate.yyyy.invalid";a:2:{i:0;R:32843;i:1;R:9;}s:67:"1230:uiloan-dibursementdate.invalid.in.relation.to.meeting.schedule";a:2:{i:0;R:32843;i:1;R:9;}s:44:"1230:uiloan-dibursementdate.falls.on.holiday";a:2:{i:0;R:32843;i:1;R:9;}s:59:"1230:uiloan-dibursementdate.before.customer.activation.date";a:2:{i:0;R:32843;i:1;R:9;}s:52:"1230:uiloan-dibursementdate.before.product.startdate";a:2:{i:0;R:32843;i:1;R:9;}s:56:"1230:uiloan-dibursementdate.cannot.be.before.todays.date";a:2:{i:0;R:32843;i:1;R:9;}s:46:"1230:uiloan-dibursementdate.before.todays.date";a:2:{i:0;R:32843;i:1;R:9;}s:55:"1230:uiloan-paymentdate.before.disbursementdate.invalid";a:2:{i:0;R:32843;i:1;R:9;}s:54:"1230:uiloan-paymentdate.before.lastpaymentdate.invalid";a:2:{i:0;R:32843;i:1;R:9;}s:46:"1230:uiloan-paymentdate.is.future.date.invalid";a:2:{i:0;R:32843;i:1;R:9;}s:42:"1230:uiloan-totalpayments.exceeded.invalid";a:2:{i:0;R:32843;i:1;R:9;}s:53:"1230:uiloan-loanaccountformbean.sourceoffunds.invalid";a:2:{i:0;R:32843;i:1;R:9;}s:53:"1230:uiloan-loanaccountformbean.purposeofloan.invalid";a:2:{i:0;R:32843;i:1;R:9;}s:50:"1230:uiloan-loanaccountformbean.externalid.invalid";a:2:{i:0;R:32843;i:1;R:9;}s:57:"1230:uiloan-loanaccountformbean.glim.clientamount.invalid";a:2:{i:0;R:32843;i:1;R:9;}s:58:"1230:uiloan-loanaccountformbean.glim.purposeofloan.invalid";a:2:{i:0;R:32843;i:1;R:9;}s:55:"1230:uiloan-loanaccountformbean.glim.client.notselected";a:2:{i:0;R:32843;i:1;R:9;}s:53:"1230:uiloan-loanaccountformbean.glim.notenoughclients";a:2:{i:0;R:32843;i:1;R:9;}s:56:"1230:uiloan-loanaccountformbean.glim.totalamount.invalid";a:2:{i:0;R:32843;i:1;R:9;}s:72:"1230:uiloan-loanaccountformbean.repaymentday.monthly.weekofmonth.invalid";a:2:{i:0;R:32843;i:1;R:9;}s:70:"1230:uiloan-loanaccountformbean.repaymentday.monthly.dayofweek.invalid";a:2:{i:0;R:32843;i:1;R:9;}s:69:"1230:uiloan-loanaccountformbean.repaymentday.weekly.dayofweek.invalid";a:2:{i:0;R:32843;i:1;R:9;}s:64:"1230:uiloan-loanaccountformbean.repaymentday.recursevery.invalid";a:2:{i:0;R:32843;i:1;R:9;}s:71:"1230:uiloan-loanaccountformbean.repaymentday.monthly.dayofmonth.invalid";a:2:{i:0;R:32843;i:1;R:9;}s:76:"1230:uiloan-loanaccountformbean.graceperiodduration.emptyorincorrect.invalid";a:2:{i:0;R:32843;i:1;R:9;}s:59:"1230:uiloan-loanaccountformbean.graceperiodduration.invalid";a:2:{i:0;R:32843;i:1;R:9;}s:83:"1230:uiloan-loanaccountformbean.graceperioddurationinrelationtoinstallments.invalid";a:2:{i:0;R:32843;i:1;R:9;}s:53:"1230:uiloan-loanaccountformbean.additionalfee.invalid";a:2:{i:0;R:32843;i:1;R:9;}s:69:"1230:uiloan-loanaccountformbean.digitsafterdecimalforinterest.invalid";a:2:{i:0;R:32843;i:1;R:9;}s:70:"1230:uiloan-loanaccountformbean.digitsbeforedecimalforinterest.invalid";a:2:{i:0;R:32843;i:1;R:9;}s:65:"1230:uiloan-loanaccountformbean.amount.digitsafterdecimal.invalid";a:2:{i:0;R:32843;i:1;R:9;}s:66:"1230:uiloan-loanaccountformbean.amount.digitsbeforedecimal.invalid";a:2:{i:0;R:32843;i:1;R:9;}s:72:"1230:uiloan-loanaccountformbean.client.amount.digitsafterdecimal.invalid";a:2:{i:0;R:32843;i:1;R:9;}s:73:"1230:uiloan-loanaccountformbean.client.amount.digitsbeforedecimal.invalid";a:2:{i:0;R:32843;i:1;R:9;}s:80:"1230:uiloan-createloanaccount.glim.invalid.less.than.two.active.clients.in.group";a:2:{i:0;R:32843;i:1;R:9;}s:88:"1230:uiloan-loanaccountformbean.additionalfees.amountorrate.digits.after.decimal.invalid";a:2:{i:0;R:32843;i:1;R:9;}s:89:"1230:uiloan-loanaccountformbean.additionalfees.amountorrate.digits.before.decimal.invalid";a:2:{i:0;R:32843;i:1;R:9;}s:85:"1230:uiloan-loanaccountformbean.defaultfees.amountorrate.digits.after.decimal.invalid";a:2:{i:0;R:32843;i:1;R:9;}s:86:"1230:uiloan-loanaccountformbean.defaultfees.amountorrate.digits.before.decimal.invalid";a:2:{i:0;R:32843;i:1;R:9;}s:46:"1230:uiloan-reviewinstallments.mode_of_payment";a:2:{i:0;R:32843;i:1;R:9;}s:51:"1230:uiloan-reviewinstallments.modeofpaymentheading";a:2:{i:0;R:32843;i:1;R:9;}s:38:"1230:uiloan-reviewinstallments.heading";a:2:{i:0;R:32843;i:1;R:9;}s:41:"1230:uiloan-reviewinstallments.loanamount";a:2:{i:0;R:32843;i:1;R:9;}s:46:"1230:uiloan-reviewinstallments.disbursmentdate";a:2:{i:0;R:32843;i:1;R:9;}s:43:"1230:uiloan-reviewinstallments.tableheading";a:2:{i:0;R:32843;i:1;R:9;}s:49:"1230:uiloan-reviewinstallments.installmentheading";a:2:{i:0;R:32843;i:1;R:9;}s:45:"1230:uiloan-reviewinstallments.duedateheading";a:2:{i:0;R:32843;i:1;R:9;}s:55:"1230:uiloan-reviewinstallments.actualpaymentdateheading";a:2:{i:0;R:32843;i:1;R:9;}s:47:"1230:uiloan-reviewinstallments.principalheading";a:2:{i:0;R:32843;i:1;R:9;}s:46:"1230:uiloan-reviewinstallments.interestheading";a:2:{i:0;R:32843;i:1;R:9;}s:42:"1230:uiloan-reviewinstallments.feesheading";a:2:{i:0;R:32843;i:1;R:9;}s:43:"1230:uiloan-reviewinstallments.totalheading";a:2:{i:0;R:32843;i:1;R:9;}s:47:"1230:uiloan-reviewinstallments.actualamountpaid";a:2:{i:0;R:32843;i:1;R:9;}s:51:"1230:uiloan-reviewinstallments.redo.datepaidheading";a:2:{i:0;R:32843;i:1;R:9;}s:59:"1230:uiloan-reviewinstallments.redo.paidinstallmentsheading";a:2:{i:0;R:32843;i:1;R:9;}s:61:"1230:uiloan-reviewinstallments.redo.futureinstallmentsheading";a:2:{i:0;R:32843;i:1;R:9;}s:57:"1230:uiloan-reviewinstallments.redo.runningbalanceheading";a:2:{i:0;R:32843;i:1;R:9;}s:52:"1230:uiloan-reviewinstallments.redo.principalheading";a:2:{i:0;R:32843;i:1;R:9;}s:51:"1230:uiloan-reviewinstallments.redo.interestheading";a:2:{i:0;R:32843;i:1;R:9;}s:47:"1230:uiloan-reviewinstallments.redo.feesheading";a:2:{i:0;R:32843;i:1;R:9;}s:59:"1230:uiloan-reviewinstallments.redo.totalinstallmentheading";a:2:{i:0;R:32843;i:1;R:9;}s:54:"1230:uiloan-installment.total.amount.blank.and.invalid";a:2:{i:0;R:32843;i:1;R:9;}s:53:"1230:uiloan-installment.amount.paid.blank.and.invalid";a:2:{i:0;R:32843;i:1;R:9;}s:49:"1230:uiloan-installment.duedate.blank.and.invalid";a:2:{i:0;R:32843;i:1;R:9;}s:59:"1230:uiloan-installment.actualpaymentdate.blank.and.invalid";a:2:{i:0;R:32843;i:1;R:9;}s:49:"1230:uiloan-createloanaccount.preview.loanheading";a:2:{i:0;R:32843;i:1;R:9;}s:53:"1230:uiloan-createloanaccount.preview.instanceheading";a:2:{i:0;R:32843;i:1;R:9;}s:59:"1230:uiloan-createloanaccount.preview.chargesappliedheading";a:2:{i:0;R:32843;i:1;R:9;}s:58:"1230:uiloan-createloanaccount.preview.glim.clientidheading";a:2:{i:0;R:32843;i:1;R:9;}s:60:"1230:uiloan-createloanaccount.preview.glim.clientnameheading";a:2:{i:0;R:32843;i:1;R:9;}s:62:"1230:uiloan-createloanaccount.preview.glim.governmentidheading";a:2:{i:0;R:32843;i:1;R:9;}s:60:"1230:uiloan-createloanaccount.preview.glim.loanamountheading";a:2:{i:0;R:32843;i:1;R:9;}s:61:"1230:uiloan-createloanaccount.preview.glim.loanpurposeheading";a:2:{i:0;R:32843;i:1;R:9;}s:55:"1230:uiloan-createloanaccount.accountcreated.pleasenote";a:2:{i:0;R:32843;i:1;R:9;}s:59:"1230:uiloan-createloanaccount.accountcreated.accountdetails";a:2:{i:0;R:32843;i:1;R:9;}s:62:"1230:uiloan-createloanaccount.accountcreated.searchinstruction";a:2:{i:0;R:32843;i:1;R:9;}s:59:"1230:uiloan-createloanaccount.accountcreated.successmessage";a:2:{i:0;R:32843;i:1;R:9;}s:54:"1230:uiloan-createloanaccount.accountcreated.nextsteps";a:2:{i:0;R:32843;i:1;R:9;}s:70:"1230:uiloan-createloanaccount.accountcreated.action.viewsavingsaccount";a:2:{i:0;R:32843;i:1;R:9;}s:73:"1230:uiloan-createloanaccount.accountcreated.action.opennewsavingsaccount";a:2:{i:0;R:32843;i:1;R:9;}s:70:"1230:uiloan-createloanaccount.accountcreated.action.opennewloanaccount";a:2:{i:0;R:32843;i:1;R:9;}s:38:"1230:uiloan-requiredfieldsinstructions";a:2:{i:0;R:32843;i:1;R:9;}s:24:"1230:uiloan-selectprompt";a:2:{i:0;R:32843;i:1;R:9;}s:24:"1230:uiloan-datefield.dd";a:2:{i:0;R:32843;i:1;R:9;}s:24:"1230:uiloan-datefield.mm";a:2:{i:0;R:32843;i:1;R:9;}s:26:"1230:uiloan-datefield.yyyy";a:2:{i:0;R:32843;i:1;R:9;}s:60:"1230:uisabings-createsavingsaccount.flowstate.selectcustomer";a:2:{i:0;s:19:"out-mifos-uisavings";i:1;R:9;}s:62:"1230:uisabings-createsavingsaccount.flowstate.enteraccountinfo";a:2:{i:0;R:33007;i:1;R:9;}s:61:"1230:uisabings-createsavingsaccount.flowstate.reviewandsubmit";a:2:{i:0;R:33007;i:1;R:9;}s:62:"1230:uisabings-createsavingsaccount.selectproduct.selectprompt";a:2:{i:0;R:33007;i:1;R:9;}s:60:"1230:uisabings-createsavingsaccount.customersearch.pagetitle";a:2:{i:0;R:33007;i:1;R:9;}s:60:"1230:uisabings-createsavingsaccount.selectcustomer.pagetitle";a:2:{i:0;R:33007;i:1;R:9;}s:63:"1230:uisabings-createsavingsaccount.selectcustomer.pagesubtitle";a:2:{i:0;R:33007;i:1;R:9;}s:61:"1230:uisabings-createsavingsaccount.selectcustomer.searchterm";a:2:{i:0;R:33007;i:1;R:9;}s:63:"1230:uisabings-createsavingsaccount.selectcustomer.instructions";a:2:{i:0;R:33007;i:1;R:9;}s:69:"1230:uisabings-createsavingsaccount.selectcustomer.searchlimitreached";a:2:{i:0;R:33007;i:1;R:9;}s:59:"1230:uisabings-createsavingsaccount.selectproduct.pagetitle";a:2:{i:0;R:33007;i:1;R:9;}s:62:"1230:uisabings-createsavingsaccount.selectproduct.pagesubtitle";a:2:{i:0;R:33007;i:1;R:9;}s:62:"1230:uisabings-createsavingsaccount.selectproduct.instructions";a:2:{i:0;R:33007;i:1;R:9;}s:70:"1230:uisabings-createsavingsaccount.selectproduct.selectsavingsproduct";a:2:{i:0;R:33007;i:1;R:9;}s:76:"1230:uisabings-createsavingsaccount.selectproduct.requiredfieldsinstructions";a:2:{i:0;R:33007;i:1;R:9;}s:66:"1230:uisabings-createsavingsaccount.selectproduct.accountownername";a:2:{i:0;R:33007;i:1;R:9;}s:62:"1230:uisabings-createsavingsaccount.enteraccountinfo.pagetitle";a:2:{i:0;R:33007;i:1;R:9;}s:65:"1230:uisabings-createsavingsaccount.enteraccountinfo.pagesubtitle";a:2:{i:0;R:33007;i:1;R:9;}s:65:"1230:uisabings-createsavingsaccount.enteraccountinfo.instructions";a:2:{i:0;R:33007;i:1;R:9;}s:79:"1230:uisabings-createsavingsaccount.enteraccountinfo.requiredfieldsinstructions";a:2:{i:0;R:33007;i:1;R:9;}s:69:"1230:uisabings-createsavingsaccount.enteraccountinfo.accountownername";a:2:{i:0;R:33007;i:1;R:9;}s:73:"1230:uisabings-createsavingsaccount.enteraccountinfo.selectsavingsproduct";a:2:{i:0;R:33007;i:1;R:9;}s:74:"1230:uisabings-createsavingsaccount.enteraccountinfo.productsummary.header";a:2:{i:0;R:33007;i:1;R:9;}s:79:"1230:uisabings-createsavingsaccount.enteraccountinfo.savingaccountdetail.header";a:2:{i:0;R:33007;i:1;R:9;}s:96:"1230:uisabings-createsavingsaccount.enteraccountinfo.savingaccountdetail.depositamount.mandatory";a:2:{i:0;R:33007;i:1;R:9;}s:96:"1230:uisabings-createsavingsaccount.enteraccountinfo.savingaccountdetail.depositamount.voluntary";a:2:{i:0;R:33007;i:1;R:9;}s:53:"1230:uisabings-createsavingsaccount.preview.pagetitle";a:2:{i:0;R:33007;i:1;R:9;}s:56:"1230:uisabings-createsavingsaccount.preview.pagesubtitle";a:2:{i:0;R:33007;i:1;R:9;}s:56:"1230:uisabings-createsavingsaccount.preview.instructions";a:2:{i:0;R:33007;i:1;R:9;}s:70:"1230:uisabings-createsavingsaccount.preview.requiredfieldsinstructions";a:2:{i:0;R:33007;i:1;R:9;}s:60:"1230:uisabings-createsavingsaccount.preview.accountownername";a:2:{i:0;R:33007;i:1;R:9;}s:63:"1230:uisabings-createsavingsaccount.preview.savingsinstancename";a:2:{i:0;R:33007;i:1;R:9;}s:56:"1230:uisabings-createsavingsaccount.preview.instanceinfo";a:2:{i:0;R:33007;i:1;R:9;}s:65:"1230:uisabings-createsavingsaccount.preview.productsummary.header";a:2:{i:0;R:33007;i:1;R:9;}s:62:"1230:uisabings-createsavingsaccount.productsummary.description";a:2:{i:0;R:33007;i:1;R:9;}s:65:"1230:uisabings-createsavingsaccount.productsummary.typeofdeposits";a:2:{i:0;R:33007;i:1;R:9;}s:70:"1230:uisabings-createsavingsaccount.productsummary.maxwithdrawalamount";a:2:{i:0;R:33007;i:1;R:9;}s:80:"1230:uisabings-createsavingsaccount.productsummary.balanceforinterestcalculation";a:2:{i:0;R:33007;i:1;R:9;}s:79:"1230:uisabings-createsavingsaccount.productsummary.periodforinterestcalculation";a:2:{i:0;R:33007;i:1;R:9;}s:75:"1230:uisabings-createsavingsaccount.productsummary.interestpostingfrequency";a:2:{i:0;R:33007;i:1;R:9;}s:83:"1230:uisabings-createsavingsaccount.productsummary.minbalanceforinterestcalculation";a:2:{i:0;R:33007;i:1;R:9;}s:63:"1230:uisabings-createsavingsaccount.productsummary.interestrate";a:2:{i:0;R:33007;i:1;R:9;}s:70:"1230:uisabings-createsavingsaccount.preview.savingaccountdetail.header";a:2:{i:0;R:33007;i:1;R:9;}s:87:"1230:uisabings-createsavingsaccount.preview.savingaccountdetail.depositamount.mandatory";a:2:{i:0;R:33007;i:1;R:9;}s:87:"1230:uisabings-createsavingsaccount.preview.savingaccountdetail.depositamount.voluntary";a:2:{i:0;R:33007;i:1;R:9;}s:68:"1230:uisabings-createsavingsaccount.preview.editaccountdetailsbutton";a:2:{i:0;R:33007;i:1;R:9;}s:67:"1230:uisabings-createsavingsaccount.preview.editquestiongroupbutton";a:2:{i:0;R:33007;i:1;R:9;}s:61:"1230:uisabings-createsavingsaccount.accountcreated.pleasenote";a:2:{i:0;R:33007;i:1;R:9;}s:65:"1230:uisabings-createsavingsaccount.accountcreated.accountdetails";a:2:{i:0;R:33007;i:1;R:9;}s:68:"1230:uisabings-createsavingsaccount.accountcreated.searchinstruction";a:2:{i:0;R:33007;i:1;R:9;}s:65:"1230:uisabings-createsavingsaccount.accountcreated.successmessage";a:2:{i:0;R:33007;i:1;R:9;}s:60:"1230:uisabings-createsavingsaccount.accountcreated.nextsteps";a:2:{i:0;R:33007;i:1;R:9;}s:76:"1230:uisabings-createsavingsaccount.accountcreated.action.viewsavingsaccount";a:2:{i:0;R:33007;i:1;R:9;}s:79:"1230:uisabings-createsavingsaccount.accountcreated.action.opennewsavingsaccount";a:2:{i:0;R:33007;i:1;R:9;}s:76:"1230:uisabings-createsavingsaccount.accountcreated.action.opennewloanaccount";a:2:{i:0;R:33007;i:1;R:9;}s:56:"1230:uisabings-createsavingsaccount.recurrencetype.daily";a:2:{i:0;R:33007;i:1;R:9;}s:57:"1230:uisabings-createsavingsaccount.recurrencetype.weekly";a:2:{i:0;R:33007;i:1;R:9;}s:58:"1230:uisabings-createsavingsaccount.recurrencetype.monthly";a:2:{i:0;R:33007;i:1;R:9;}s:59:"1230:uisabings-createsavingsaccount.recurrencefrequency.day";a:2:{i:0;R:33007;i:1;R:9;}s:61:"1230:uisabings-createsavingsaccount.recurrencefrequency.month";a:2:{i:0;R:33007;i:1;R:9;}s:57:"1230:uisabings-createsavingsaccount.savingstype.mandatory";a:2:{i:0;R:33007;i:1;R:9;}s:57:"1230:uisabings-createsavingsaccount.savingstype.voluntary";a:2:{i:0;R:33007;i:1;R:9;}s:65:"1230:uisabings-notempty.createsavingsaccountformbean.searchstring";a:2:{i:0;R:33007;i:1;R:9;}s:61:"1230:uisabings-notnull.createsavingsaccountformbean.productid";a:2:{i:0;R:33007;i:1;R:9;}s:65:"1230:uisabings-notnull.createsavingsaccountformbean.depositamount";a:2:{i:0;R:33007;i:1;R:9;}s:68:"1230:uisabings-decimalmin.createsavingsaccountformbean.depositamount";a:2:{i:0;R:33007;i:1;R:9;}s:74:"1230:uisabings-pattern.createsavingsaccountformbean.mandatorydepositamount";a:2:{i:0;R:33007;i:1;R:9;}s:79:"1230:uisabings-digitsbefore.createsavingsaccountformbean.mandatorydepositamount";a:2:{i:0;R:33007;i:1;R:9;}s:78:"1230:uisabings-digitsafter.createsavingsaccountformbean.mandatorydepositamount";a:2:{i:0;R:33007;i:1;R:9;}s:74:"1230:uisabings-pattern.createsavingsaccountformbean.voluntarydepositamount";a:2:{i:0;R:33007;i:1;R:9;}s:52:"1230:uisabings-ftl.macro.lookup.recurrencetype.daily";a:2:{i:0;R:33007;i:1;R:9;}s:53:"1230:uisabings-ftl.macro.lookup.recurrencetype.weekly";a:2:{i:0;R:33007;i:1;R:9;}s:54:"1230:uisabings-ftl.macro.lookup.recurrencetype.monthly";a:2:{i:0;R:33007;i:1;R:9;}s:56:"1230:uisabings-ftl.macro.lookup.recurrencetype.undefined";a:2:{i:0;R:33007;i:1;R:9;}s:55:"1230:uisabings-ftl.macro.lookup.recurrencefrequency.day";a:2:{i:0;R:33007;i:1;R:9;}s:57:"1230:uisabings-ftl.macro.lookup.recurrencefrequency.month";a:2:{i:0;R:33007;i:1;R:9;}s:61:"1230:uisabings-ftl.macro.lookup.recurrencefrequency.undefined";a:2:{i:0;R:33007;i:1;R:9;}s:53:"1230:uisabings-ftl.macro.lookup.savingstype.mandatory";a:2:{i:0;R:33007;i:1;R:9;}s:53:"1230:uisabings-ftl.macro.lookup.savingstype.voluntary";a:2:{i:0;R:33007;i:1;R:9;}s:53:"1230:uisabings-ftl.macro.lookup.savingstype.undefined";a:2:{i:0;R:33007;i:1;R:9;}s:42:"1230:uiwidget-jquery.datatables.processing";a:2:{i:0;s:18:"out-mifos-uiwidget";i:1;R:9;}s:38:"1230:uiwidget-jquery.datatables.filter";a:2:{i:0;R:33088;i:1;R:9;}s:49:"1230:uiwidget-jquery.datatables.info.hitsfiltered";a:2:{i:0;R:33088;i:1;R:9;}s:45:"1230:uiwidget-jquery.datatables.info.withhits";a:2:{i:0;R:33088;i:1;R:9;}s:43:"1230:uiwidget-jquery.datatables.info.nohits";a:2:{i:0;R:33088;i:1;R:9;}s:38:"1230:uiwidget-jquery.datatables.nohits";a:2:{i:0;R:33088;i:1;R:9;}s:51:"1230:uiwidget-jquery.datatables.hitsperpageselector";a:2:{i:0;R:33088;i:1;R:9;}s:45:"1230:uiwidget-widget.form.buttonlabel.preview";a:2:{i:0;R:33088;i:1;R:9;}s:46:"1230:uiwidget-widget.form.buttonlabel.continue";a:2:{i:0;R:33088;i:1;R:9;}s:44:"1230:uiwidget-widget.form.buttonlabel.cancel";a:2:{i:0;R:33088;i:1;R:9;}s:42:"1230:uiwidget-widget.form.buttonlabel.save";a:2:{i:0;R:33088;i:1;R:9;}s:44:"1230:uiwidget-widget.form.buttonlabel.submit";a:2:{i:0;R:33088;i:1;R:9;}s:44:"1230:uiwidget-widget.form.buttonlabel.search";a:2:{i:0;R:33088;i:1;R:9;}s:50:"1230:uiwidget-widget.form.buttonlabel.saveforlater";a:2:{i:0;R:33088;i:1;R:9;}s:53:"1230:uiwidget-widget.form.buttonlabel.saveforapproval";a:2:{i:0;R:33088;i:1;R:9;}s:45:"1230:uiwidget-widget.form.buttonlabel.approve";a:2:{i:0;R:33088;i:1;R:9;}s:53:"1230:uiwidget-widget.form.buttonlabel.editaccountinfo";a:2:{i:0;R:33088;i:1;R:9;}s:58:"1230:uiwidget-widget.form.buttonlabel.editloanscheduleinfo";a:2:{i:0;R:33088;i:1;R:9;}s:54:"1230:uiwidget-widget.form.buttonlabel.editcashflowinfo";a:2:{i:0;R:33088;i:1;R:9;}s:59:"1230:uiwidget-widget.form.buttonlabel.editquestiongroupinfo";a:2:{i:0;R:33088;i:1;R:9;}s:46:"1230:uiwidget-widget.form.buttonlabel.validate";a:2:{i:0;R:33088;i:1;R:9;}s:41:"1230:uiwidget-widget.form.buttonlabel.add";a:2:{i:0;R:33088;i:1;R:9;}s:42:"1230:uiwidget-widget.form.buttonlabel.done";a:2:{i:0;R:33088;i:1;R:9;}s:42:"1230:uiwidget-widget.form.buttonlabel.edit";a:2:{i:0;R:33088;i:1;R:9;}s:44:"1230:uiwidget-widget.form.buttonlabel.remove";a:2:{i:0;R:33088;i:1;R:9;}s:28:"1230:vos-vos.accountingrules";a:2:{i:0;s:13:"out-mifos-vos";i:1;R:9;}s:35:"1230:vos-vos.allowcaldeffornextyear";a:2:{i:0;R:33114;i:1;R:9;}s:34:"1230:vos-vos.backdatedtransactions";a:2:{i:0;R:33114;i:1;R:9;}s:34:"1230:vos-vos.centerhierarchyexists";a:2:{i:0;R:33114;i:1;R:9;}s:31:"1230:vos-vos.clientpendingstate";a:2:{i:0;R:33114;i:1;R:9;}s:24:"1230:vos-vos.clientrules";a:2:{i:0;R:33114;i:1;R:9;}s:33:"1230:vos-vos.clientsoutsidegroups";a:2:{i:0;R:33114;i:1;R:9;}s:39:"1230:vos-vos.collectionsheetadvancedays";a:2:{i:0;R:33114;i:1;R:9;}s:20:"1230:vos-vos.country";a:2:{i:0;R:33114;i:1;R:9;}s:23:"1230:vos-vos.currencies";a:2:{i:0;R:33114;i:1;R:9;}s:21:"1230:vos-vos.currency";a:2:{i:0;R:33114;i:1;R:9;}s:30:"1230:vos-vos.daysbeforeyearend";a:2:{i:0;R:33114;i:1;R:9;}s:31:"1230:vos-vos.digitsafterdecimal";a:2:{i:0;R:33114;i:1;R:9;}s:32:"1230:vos-vos.digitsbeforedecimal";a:2:{i:0;R:33114;i:1;R:9;}s:23:"1230:vos-vos.fiscalyear";a:2:{i:0;R:33114;i:1;R:9;}s:17:"1230:vos-vos.glim";a:2:{i:0;R:33114;i:1;R:9;}s:30:"1230:vos-vos.grouppendingstate";a:2:{i:0;R:33114;i:1;R:9;}s:27:"1230:vos-vos.holidaymeeting";a:2:{i:0;R:33114;i:1;R:9;}s:34:"1230:vos-vos.intdigitsafterdecimal";a:2:{i:0;R:33114;i:1;R:9;}s:35:"1230:vos-vos.intdigitsbeforedecimal";a:2:{i:0;R:33114;i:1;R:9;}s:25:"1230:vos-vos.interestdays";a:2:{i:0;R:33114;i:1;R:9;}s:30:"1230:vos-vos.isagecheckenabled";a:2:{i:0;R:33114;i:1;R:9;}s:36:"1230:vos-vos.isfamilydetailsrequired";a:2:{i:0;R:33114;i:1;R:9;}s:33:"1230:vos-vos.currencyroundingmode";a:2:{i:0;R:33114;i:1;R:9;}s:32:"1230:vos-vos.initialroundingmode";a:2:{i:0;R:33114;i:1;R:9;}s:30:"1230:vos-vos.finalroundingmode";a:2:{i:0;R:33114;i:1;R:9;}s:34:"1230:vos-vos.finalroundoffmultiple";a:2:{i:0;R:33114;i:1;R:9;}s:36:"1230:vos-vos.initialroundoffmultiple";a:2:{i:0;R:33114;i:1;R:9;}s:27:"1230:vos-vos.labellinkadmin";a:2:{i:0;R:33114;i:1;R:9;}s:21:"1230:vos-vos.language";a:2:{i:0;R:33114;i:1;R:9;}s:31:"1230:vos-vos.loandisbursedstate";a:2:{i:0;R:33114;i:1;R:9;}s:29:"1230:vos-vos.loanpendingstate";a:2:{i:0;R:33114;i:1;R:9;}s:27:"1230:vos-vos.loansforgroups";a:2:{i:0;R:33114;i:1;R:9;}s:19:"1230:vos-vos.locale";a:2:{i:0;R:33114;i:1;R:9;}s:17:"1230:vos-vos.lsim";a:2:{i:0;R:33114;i:1;R:9;}s:24:"1230:vos-vos.maxinterest";a:2:{i:0;R:33114;i:1;R:9;}s:23:"1230:vos-vos.maximumage";a:2:{i:0;R:33114;i:1;R:9;}s:41:"1230:vos-vos.maximumnumberoffamilymembers";a:2:{i:0;R:33114;i:1;R:9;}s:23:"1230:vos-vos.minimumage";a:2:{i:0;R:33114;i:1;R:9;}s:24:"1230:vos-vos.mininterest";a:2:{i:0;R:33114;i:1;R:9;}s:20:"1230:vos-vos.minutes";a:2:{i:0;R:33114;i:1;R:9;}s:26:"1230:vos-vos.miscellaneous";a:2:{i:0;R:33114;i:1;R:9;}s:25:"1230:vos-vos.namesequence";a:2:{i:0;R:33114;i:1;R:9;}s:20:"1230:vos-vos.offdays";a:2:{i:0;R:33114;i:1;R:9;}s:26:"1230:vos-vos.optionalstate";a:2:{i:0;R:33114;i:1;R:9;}s:35:"1230:vos-vos.organizationalsettings";a:2:{i:0;R:33114;i:1;R:9;}s:24:"1230:vos-vos.processflow";a:2:{i:0;R:33114;i:1;R:9;}s:32:"1230:vos-vos.savingspendingstate";a:2:{i:0;R:33114;i:1;R:9;}s:27:"1230:vos-vos.sessiontimeout";a:2:{i:0;R:33114;i:1;R:9;}s:24:"1230:vos-vos.startofweek";a:2:{i:0;R:33114;i:1;R:9;}s:21:"1230:vos-vos.weekdays";a:2:{i:0;R:33114;i:1;R:9;}s:24:"1230:vos-vos.workingdays";a:2:{i:0;R:33114;i:1;R:9;}s:22:"1220:okawix-doc.title0";a:2:{i:0;s:14:"out-okawix-doc";i:1;s:16:"out-okawix-0-all";}s:21:"1220:okawix-doc.item0";a:2:{i:0;R:33167;i:1;R:33168;}s:22:"1220:okawix-doc.title1";a:2:{i:0;R:33167;i:1;R:33168;}s:21:"1220:okawix-doc.item1";a:2:{i:0;R:33167;i:1;R:33168;}s:22:"1220:okawix-doc.title2";a:2:{i:0;R:33167;i:1;R:33168;}s:21:"1220:okawix-doc.item2";a:2:{i:0;R:33167;i:1;R:33168;}s:22:"1220:okawix-doc.title3";a:2:{i:0;R:33167;i:1;R:33168;}s:21:"1220:okawix-doc.item3";a:2:{i:0;R:33167;i:1;R:33168;}s:22:"1220:okawix-doc.title4";a:2:{i:0;R:33167;i:1;R:33168;}s:21:"1220:okawix-doc.item4";a:2:{i:0;R:33167;i:1;R:33168;}s:22:"1220:okawix-doc.title5";a:2:{i:0;R:33167;i:1;R:33168;}s:21:"1220:okawix-doc.item5";a:2:{i:0;R:33167;i:1;R:33168;}s:22:"1220:okawix-doc.title6";a:2:{i:0;R:33167;i:1;R:33168;}s:21:"1220:okawix-doc.item6";a:2:{i:0;R:33167;i:1;R:33168;}s:22:"1220:okawix-doc.title7";a:2:{i:0;R:33167;i:1;R:33168;}s:21:"1220:okawix-doc.item7";a:2:{i:0;R:33167;i:1;R:33168;}s:22:"1220:okawix-doc.title8";a:2:{i:0;R:33167;i:1;R:33168;}s:21:"1220:okawix-doc.item8";a:2:{i:0;R:33167;i:1;R:33168;}s:22:"1220:okawix-doc.title9";a:2:{i:0;R:33167;i:1;R:33168;}s:21:"1220:okawix-doc.item9";a:2:{i:0;R:33167;i:1;R:33168;}s:23:"1220:okawix-doc.title10";a:2:{i:0;R:33167;i:1;R:33168;}s:22:"1220:okawix-doc.item10";a:2:{i:0;R:33167;i:1;R:33168;}s:23:"1220:okawix-doc.title11";a:2:{i:0;R:33167;i:1;R:33168;}s:22:"1220:okawix-doc.item11";a:2:{i:0;R:33167;i:1;R:33168;}s:23:"1220:okawix-doc.title12";a:2:{i:0;R:33167;i:1;R:33168;}s:22:"1220:okawix-doc.item12";a:2:{i:0;R:33167;i:1;R:33168;}s:23:"1220:okawix-doc.title13";a:2:{i:0;R:33167;i:1;R:33168;}s:22:"1220:okawix-doc.item13";a:2:{i:0;R:33167;i:1;R:33168;}s:17:"1220:okawix.title";a:2:{i:0;s:14:"out-okawix-dtd";i:1;R:33168;}s:16:"1220:okawix.back";a:2:{i:0;R:33197;i:1;R:33168;}s:19:"1220:okawix.forward";a:2:{i:0;R:33197;i:1;R:33168;}s:16:"1220:okawix.home";a:2:{i:0;R:33197;i:1;R:33168;}s:18:"1220:okawix.search";a:2:{i:0;R:33197;i:1;R:33168;}s:22:"1220:okawix.showsearch";a:2:{i:0;R:33197;i:1;R:33168;}s:21:"1220:okawix.showhisto";a:2:{i:0;R:33197;i:1;R:33168;}s:17:"1220:okawix.print";a:2:{i:0;R:33197;i:1;R:33168;}s:21:"1220:okawix.searchbar";a:2:{i:0;R:33197;i:1;R:33168;}s:24:"1220:okawix.searchbutton";a:2:{i:0;R:33197;i:1;R:33168;}s:18:"1220:okawix.findin";a:2:{i:0;R:33197;i:1;R:33168;}s:22:"1220:okawix.morecorpus";a:2:{i:0;R:33197;i:1;R:33168;}s:17:"1220:okawix.about";a:2:{i:0;R:33197;i:1;R:33168;}s:16:"1220:okawix.help";a:2:{i:0;R:33197;i:1;R:33168;}s:16:"1220:okawix.save";a:2:{i:0;R:33197;i:1;R:33168;}s:25:"1220:okawix.corpus.addnew";a:2:{i:0;R:33197;i:1;R:33168;}s:30:"1220:okawix.corpus.addnewlocal";a:2:{i:0;R:33197;i:1;R:33168;}s:25:"1220:okawix.corpus.remove";a:2:{i:0;R:33197;i:1;R:33168;}s:22:"1220:okawix.popup.copy";a:2:{i:0;R:33197;i:1;R:33168;}s:27:"1220:okawix.popup.selectall";a:2:{i:0;R:33197;i:1;R:33168;}s:22:"1220:okawix.popup.find";a:2:{i:0;R:33197;i:1;R:33168;}s:30:"1220:okawix.popup.openexternal";a:2:{i:0;R:33197;i:1;R:33168;}s:28:"1220:okawix.popup.selectskin";a:2:{i:0;R:33197;i:1;R:33168;}s:28:"1220:okawix.popup.selectlang";a:2:{i:0;R:33197;i:1;R:33168;}s:28:"1220:okawix.popup.systemlang";a:2:{i:0;R:33197;i:1;R:33168;}s:29:"1220:okawix.popup.installlang";a:2:{i:0;R:33197;i:1;R:33168;}s:35:"1220:okawix.popup.currentdictionary";a:2:{i:0;R:33197;i:1;R:33168;}s:22:"1220:okawix.popup.zoom";a:2:{i:0;R:33197;i:1;R:33168;}s:24:"1220:okawix.popup.zoomin";a:2:{i:0;R:33197;i:1;R:33168;}s:25:"1220:okawix.popup.zoomout";a:2:{i:0;R:33197;i:1;R:33168;}s:26:"1220:okawix.popup.addaskin";a:2:{i:0;R:33197;i:1;R:33168;}s:26:"1220:okawix.popup.settings";a:2:{i:0;R:33197;i:1;R:33168;}s:30:"1220:okawix.popup.confexternal";a:2:{i:0;R:33197;i:1;R:33168;}s:27:"1220:okawix.sidebar.results";a:2:{i:0;R:33197;i:1;R:33168;}s:29:"1220:okawix.sidebar.noresults";a:2:{i:0;R:33197;i:1;R:33168;}s:27:"1220:okawix.sidebar.history";a:2:{i:0;R:33197;i:1;R:33168;}s:26:"1220:okawix.sidebar.corpus";a:2:{i:0;R:33197;i:1;R:33168;}s:26:"1220:okawix.iw.destination";a:2:{i:0;R:33197;i:1;R:33168;}s:25:"1220:okawix.iw.installing";a:2:{i:0;R:33197;i:1;R:33168;}s:21:"1220:okawix.iw.browse";a:2:{i:0;R:33197;i:1;R:33168;}s:27:"1220:okawix.iw.savelocation";a:2:{i:0;R:33197;i:1;R:33168;}s:25:"1220:okawix.iw.pleasewait";a:2:{i:0;R:33197;i:1;R:33168;}s:21:"1220:okawix.iw.images";a:2:{i:0;R:33197;i:1;R:33168;}s:19:"1220:okawix.iw.size";a:2:{i:0;R:33197;i:1;R:33168;}s:20:"1220:okawix.pr.title";a:2:{i:0;R:33197;i:1;R:33168;}s:18:"1220:okawix.pr.use";a:2:{i:0;R:33197;i:1;R:33168;}s:21:"1220:okawix.pr.server";a:2:{i:0;R:33197;i:1;R:33168;}s:19:"1220:okawix.pr.port";a:2:{i:0;R:33197;i:1;R:33168;}s:23:"1220:okawix.help.topics";a:2:{i:0;R:33197;i:1;R:33168;}s:22:"1220:okawix.help.close";a:2:{i:0;R:33197;i:1;R:33168;}s:7:"1220:de";a:2:{i:0;s:15:"out-okawix-prop";i:1;R:33168;}s:7:"1220:en";a:2:{i:0;R:33248;i:1;R:33168;}s:7:"1220:es";a:2:{i:0;R:33248;i:1;R:33168;}s:7:"1220:fi";a:2:{i:0;R:33248;i:1;R:33168;}s:7:"1220:fr";a:2:{i:0;R:33248;i:1;R:33168;}s:7:"1220:hu";a:2:{i:0;R:33248;i:1;R:33168;}s:7:"1220:id";a:2:{i:0;R:33248;i:1;R:33168;}s:7:"1220:ja";a:2:{i:0;R:33248;i:1;R:33168;}s:7:"1220:nl";a:2:{i:0;R:33248;i:1;R:33168;}s:7:"1220:pl";a:2:{i:0;R:33248;i:1;R:33168;}s:7:"1220:ru";a:2:{i:0;R:33248;i:1;R:33168;}s:7:"1220:sk";a:2:{i:0;R:33248;i:1;R:33168;}s:32:"1220:okawix.wk.autosearchenabled";a:2:{i:0;R:33248;i:1;R:33168;}s:33:"1220:okawix.wk.autosearchdisabled";a:2:{i:0;R:33248;i:1;R:33168;}s:22:"1220:okawix.iw.install";a:2:{i:0;R:33248;i:1;R:33168;}s:21:"1220:okawix.iw.cancel";a:2:{i:0;R:33248;i:1;R:33168;}s:27:"1220:okawix.ext.skinpackage";a:2:{i:0;R:33248;i:1;R:33168;}s:27:"1220:okawix.ext.langpackage";a:2:{i:0;R:33248;i:1;R:33168;}s:23:"1220:okawix.ext.selecta";a:2:{i:0;R:33248;i:1;R:33168;}s:35:"1220:okawix.ext.shallrestartforskin";a:2:{i:0;R:33248;i:1;R:33168;}s:35:"1220:okawix.ext.shallrestartforlang";a:2:{i:0;R:33248;i:1;R:33168;}s:24:"1220:okawix.sb.addimages";a:2:{i:0;R:33248;i:1;R:33168;}s:21:"1220:okawix.sb.remove";a:2:{i:0;R:33248;i:1;R:33168;}s:19:"1220:okawix.sb.edit";a:2:{i:0;R:33248;i:1;R:33168;}s:23:"1220:okawix.sb.drophere";a:2:{i:0;R:33248;i:1;R:33168;}s:28:"1220:okawix.sb.confirmremove";a:2:{i:0;R:33248;i:1;R:33168;}s:22:"1220:okawix.sb.askpath";a:2:{i:0;R:33248;i:1;R:33168;}s:30:"1220:okawix.sb.directoryexists";a:2:{i:0;R:33248;i:1;R:33168;}s:27:"1220:okawix.wk.installerror";a:2:{i:0;R:33248;i:1;R:33168;}s:23:"1220:okawix.wk.vanished";a:2:{i:0;R:33248;i:1;R:33168;}s:28:"1220:okawix-site.header_home";a:2:{i:0;s:15:"out-okawix-site";i:1;R:33168;}s:30:"1220:okawix-site.header_home_s";a:2:{i:0;R:33279;i:1;R:33168;}s:28:"1220:okawix-site.header_news";a:2:{i:0;R:33279;i:1;R:33168;}s:32:"1220:okawix-site.header_torrents";a:2:{i:0;R:33279;i:1;R:33168;}s:28:"1220:okawix-site.header_shop";a:2:{i:0;R:33279;i:1;R:33168;}s:30:"1220:okawix-site.header_shop_s";a:2:{i:0;R:33279;i:1;R:33168;}s:37:"1220:okawix-site.header_documentation";a:2:{i:0;R:33279;i:1;R:33168;}s:23:"1220:okawix-site.home_1";a:2:{i:0;R:33279;i:1;R:33168;}s:37:"1220:okawix-site.home_2_free_software";a:2:{i:0;R:33279;i:1;R:33168;}s:41:"1220:okawix-site.home_3_featuring_wikiwix";a:2:{i:0;R:33279;i:1;R:33168;}s:41:"1220:okawix-site.home_4_download_software";a:2:{i:0;R:33279;i:1;R:33168;}s:32:"1220:okawix-site.home_5_buy_keys";a:2:{i:0;R:33279;i:1;R:33168;}s:33:"1220:okawix-site.home_6_questions";a:2:{i:0;R:33279;i:1;R:33168;}s:34:"1220:okawix-site.home_7_notice_gpl";a:2:{i:0;R:33279;i:1;R:33168;}s:45:"1220:okawix-site.documentation_translation_by";a:2:{i:0;R:33279;i:1;R:33168;}s:50:"1220:okawix-site.documentation_available_languages";a:2:{i:0;R:33279;i:1;R:33168;}s:44:"1220:okawix-site.documentation_back_to_index";a:2:{i:0;R:33279;i:1;R:33168;}s:45:"1220:okawix-site.shop_number_and_type_of_keys";a:2:{i:0;R:33279;i:1;R:33168;}s:34:"1220:okawix-site.shop_empty_basket";a:2:{i:0;R:33279;i:1;R:33168;}s:33:"1220:okawix-site.shop_your_basket";a:2:{i:0;R:33279;i:1;R:33168;}s:37:"1220:okawix-site.shop_create_usb_keys";a:2:{i:0;R:33279;i:1;R:33168;}s:36:"1220:okawix-site.shop_number_of_keys";a:2:{i:0;R:33279;i:1;R:33168;}s:34:"1220:okawix-site.shop_size_usb_key";a:2:{i:0;R:33279;i:1;R:33168;}s:42:"1220:okawix-site.shop_your_basket_contains";a:2:{i:0;R:33279;i:1;R:33168;}s:25:"1220:okawix-site.shop_add";a:2:{i:0;R:33279;i:1;R:33168;}s:26:"1220:okawix-site.shop_edit";a:2:{i:0;R:33279;i:1;R:33168;}s:38:"1220:okawix-site.shop_sorry_no_content";a:2:{i:0;R:33279;i:1;R:33168;}s:28:"1220:okawix-site.shop_submit";a:2:{i:0;R:33279;i:1;R:33168;}s:40:"1220:okawix-site.ship_buy_described_keys";a:2:{i:0;R:33279;i:1;R:33168;}s:38:"1220:okawix-site.ship_delivery_address";a:2:{i:0;R:33279;i:1;R:33168;}s:30:"1220:okawix-site.ship_civilite";a:2:{i:0;R:33279;i:1;R:33168;}s:26:"1220:okawix-site.ship_miss";a:2:{i:0;R:33279;i:1;R:33168;}s:25:"1220:okawix-site.ship_mrs";a:2:{i:0;R:33279;i:1;R:33168;}s:24:"1220:okawix-site.ship_mr";a:2:{i:0;R:33279;i:1;R:33168;}s:32:"1220:okawix-site.ship_first_name";a:2:{i:0;R:33279;i:1;R:33168;}s:30:"1220:okawix-site.ship_last_ame";a:2:{i:0;R:33279;i:1;R:33168;}s:29:"1220:okawix-site.ship_address";a:2:{i:0;R:33279;i:1;R:33168;}s:27:"1220:okawix-site.ship_email";a:2:{i:0;R:33279;i:1;R:33168;}s:28:"1220:okawix-site.ship_region";a:2:{i:0;R:33279;i:1;R:33168;}s:30:"1220:okawix-site.ship_zip_code";a:2:{i:0;R:33279;i:1;R:33168;}s:26:"1220:okawix-site.ship_city";a:2:{i:0;R:33279;i:1;R:33168;}s:29:"1220:okawix-site.ship_country";a:2:{i:0;R:33279;i:1;R:33168;}s:44:"1220:okawix-site.ship_country_default_choice";a:2:{i:0;R:33279;i:1;R:33168;}s:28:"1220:okawix-site.ship_cancel";a:2:{i:0;R:33279;i:1;R:33168;}s:26:"1220:okawix-site.ship_send";a:2:{i:0;R:33279;i:1;R:33168;}s:34:"1220:okawix-site.ship_go_to_secure";a:2:{i:0;R:33279;i:1;R:33168;}s:40:"1220:okawix-site.corpus_select_languages";a:2:{i:0;R:33279;i:1;R:33168;}s:40:"1220:okawix-site.corpus_chosen_languages";a:2:{i:0;R:33279;i:1;R:33168;}s:28:"1220:okawix-site.corpus_save";a:2:{i:0;R:33279;i:1;R:33168;}s:30:"1220:okawix-site.torrent_title";a:2:{i:0;R:33279;i:1;R:33168;}s:30:"1220:okawix-site.file_download";a:2:{i:0;R:33279;i:1;R:33168;}s:20:"1220:okawix-site.and";a:2:{i:0;R:33279;i:1;R:33168;}s:26:"1220:okawix-site.file_size";a:2:{i:0;R:33279;i:1;R:33168;}s:27:"1220:okawix-site.total_size";a:2:{i:0;R:33279;i:1;R:33168;}s:33:"1220:okawix-site-download.catalog";a:2:{i:0;R:33279;i:1;R:33168;}s:38:"1220:okawix-site-download.generated_at";a:2:{i:0;R:33279;i:1;R:33168;}s:28:"1220:okawix-site-download.go";a:2:{i:0;R:33279;i:1;R:33168;}s:30:"1220:okawix-site-download.home";a:2:{i:0;R:33279;i:1;R:33168;}s:48:"1220:okawix-site-download.confirmation_mail_sent";a:2:{i:0;R:33279;i:1;R:33168;}s:49:"1220:okawix-site-download.confirmation_mail_title";a:2:{i:0;R:33279;i:1;R:33168;}s:43:"1220:okawix-site-download.confirmation_mail";a:2:{i:0;R:33279;i:1;R:33168;}s:49:"1220:okawix-site-download.thanks_for_confirmation";a:2:{i:0;R:33279;i:1;R:33168;}s:33:"1220:okawix-site-download.log_out";a:2:{i:0;R:33279;i:1;R:33168;}s:35:"1220:okawix-site-download.not_found";a:2:{i:0;R:33279;i:1;R:33168;}s:39:"1220:okawix-site-download.lost_password";a:2:{i:0;R:33279;i:1;R:33168;}s:33:"1220:okawix-site-download.help_me";a:2:{i:0;R:33279;i:1;R:33168;}s:31:"1220:okawix-site-download.login";a:2:{i:0;R:33279;i:1;R:33168;}s:34:"1220:okawix-site-download.new_user";a:2:{i:0;R:33279;i:1;R:33168;}s:36:"1220:okawix-site-download.your_email";a:2:{i:0;R:33279;i:1;R:33168;}s:41:"1220:okawix-site-download.choose_password";a:2:{i:0;R:33279;i:1;R:33168;}s:39:"1220:okawix-site-download.register_help";a:2:{i:0;R:33279;i:1;R:33168;}s:41:"1220:okawix-site-download.lost_mail_title";a:2:{i:0;R:33279;i:1;R:33168;}s:35:"1220:okawix-site-download.lost_mail";a:2:{i:0;R:33279;i:1;R:33168;}s:41:"1220:okawix-site-download.change_password";a:2:{i:0;R:33279;i:1;R:33168;}s:45:"1220:okawix-site-download.set_as_new_password";a:2:{i:0;R:33279;i:1;R:33168;}s:46:"1220:okawix-site-download.change_password_help";a:2:{i:0;R:33279;i:1;R:33168;}s:40:"1220:okawix-site-download.passwd_changed";a:2:{i:0;R:33279;i:1;R:33168;}s:40:"1220:okawix-site-download.public_catalog";a:2:{i:0;R:33279;i:1;R:33168;}s:41:"1220:okawix-site-download.private_catalog";a:2:{i:0;R:33279;i:1;R:33168;}s:34:"1220:okawix-site-download.settings";a:2:{i:0;R:33279;i:1;R:33168;}s:41:"1220:okawix-site-download.back_to_catalog";a:2:{i:0;R:33279;i:1;R:33168;}s:29:"1220:okawix-site-download.add";a:2:{i:0;R:33279;i:1;R:33168;}s:38:"1220:okawix-site-download.social_title";a:2:{i:0;R:33279;i:1;R:33168;}s:37:"1220:okawix-site-download.social_help";a:2:{i:0;R:33279;i:1;R:33168;}s:34:"1220:okawix-site-download.download";a:2:{i:0;R:33279;i:1;R:33168;}s:37:"1220:okawix-site-download.last_update";a:2:{i:0;R:33279;i:1;R:33168;}s:41:"1220:okawix-site-download.being_generated";a:2:{i:0;R:33279;i:1;R:33168;}s:40:"1220:okawix-site-download.delete_confirm";a:2:{i:0;R:33279;i:1;R:33168;}s:49:"1220:okawix-site-download.error_register_dupemail";a:2:{i:0;R:33279;i:1;R:33168;}s:15:"1234:head.title";a:2:{i:0;s:19:"out-openimages-core";i:1;s:20:"out-openimages-0-all";}s:21:"1234:head.description";a:2:{i:0;R:33369;i:1;R:33370;}s:20:"1234:head.initiative";a:2:{i:0;R:33369;i:1;R:33370;}s:24:"1234:service.latest_news";a:2:{i:0;R:33369;i:1;R:33370;}s:21:"1234:service.readmore";a:2:{i:0;R:33369;i:1;R:33370;}s:28:"1234:service.choose_language";a:2:{i:0;R:33369;i:1;R:33370;}s:20:"1234:search.advanced";a:2:{i:0;R:33369;i:1;R:33370;}s:24:"1234:search.any_language";a:2:{i:0;R:33369;i:1;R:33370;}s:22:"1234:search.any_length";a:2:{i:0;R:33369;i:1;R:33370;}s:23:"1234:search.any_license";a:2:{i:0;R:33369;i:1;R:33370;}s:22:"1234:search.any_period";a:2:{i:0;R:33369;i:1;R:33370;}s:18:"1234:search.button";a:2:{i:0;R:33369;i:1;R:33370;}s:17:"1234:search.media";a:2:{i:0;R:33369;i:1;R:33370;}s:25:"1234:search.searched_with";a:2:{i:0;R:33369;i:1;R:33370;}s:35:"1234:search.searched_with_and_found";a:2:{i:0;R:33369;i:1;R:33370;}s:16:"1234:search.from";a:2:{i:0;R:33369;i:1;R:33370;}s:27:"1234:search.notmorethanaday";a:2:{i:0;R:33369;i:1;R:33370;}s:28:"1234:search.notmorethanaweek";a:2:{i:0;R:33369;i:1;R:33370;}s:29:"1234:search.notmorethanamonth";a:2:{i:0;R:33369;i:1;R:33370;}s:28:"1234:search.notmorethanayear";a:2:{i:0;R:33369;i:1;R:33370;}s:8:"1234:tag";a:2:{i:0;R:33369;i:1;R:33370;}s:12:"1234:tag.add";a:2:{i:0;R:33369;i:1;R:33370;}s:16:"1234:tag.add_tag";a:2:{i:0;R:33369;i:1;R:33370;}s:14:"1234:tag.added";a:2:{i:0;R:33369;i:1;R:33370;}s:23:"1234:tag.already_tagged";a:2:{i:0;R:33369;i:1;R:33370;}s:23:"1234:tag.find_or_create";a:2:{i:0;R:33369;i:1;R:33370;}s:14:"1234:tag.notag";a:2:{i:0;R:33369;i:1;R:33370;}s:19:"1234:tag.notallowed";a:2:{i:0;R:33369;i:1;R:33370;}s:15:"1234:tag.remove";a:2:{i:0;R:33369;i:1;R:33370;}s:16:"1234:tag.removed";a:2:{i:0;R:33369;i:1;R:33370;}s:22:"1234:tag.show_all_tags";a:2:{i:0;R:33369;i:1;R:33370;}s:17:"1234:tag.tooshort";a:2:{i:0;R:33369;i:1;R:33370;}s:16:"1234:login.login";a:2:{i:0;R:33369;i:1;R:33370;}s:23:"1234:login.account_name";a:2:{i:0;R:33369;i:1;R:33370;}s:19:"1234:login.password";a:2:{i:0;R:33369;i:1;R:33370;}s:17:"1234:login.logout";a:2:{i:0;R:33369;i:1;R:33370;}s:16:"1234:login.error";a:2:{i:0;R:33369;i:1;R:33370;}s:26:"1234:login.forgot_password";a:2:{i:0;R:33369;i:1;R:33370;}s:22:"1234:login.no_password";a:2:{i:0;R:33369;i:1;R:33370;}s:18:"1234:login.message";a:2:{i:0;R:33369;i:1;R:33370;}s:18:"1234:login.sign_in";a:2:{i:0;R:33369;i:1;R:33370;}s:23:"1234:login.to_loginpage";a:2:{i:0;R:33369;i:1;R:33370;}s:18:"1234:login.you_are";a:2:{i:0;R:33369;i:1;R:33370;}s:14:"1234:401.title";a:2:{i:0;R:33369;i:1;R:33370;}s:16:"1234:401.message";a:2:{i:0;R:33369;i:1;R:33370;}s:13:"1234:register";a:2:{i:0;R:33369;i:1;R:33370;}s:22:"1234:register.complete";a:2:{i:0;R:33369;i:1;R:33370;}s:22:"1234:register.verified";a:2:{i:0;R:33369;i:1;R:33370;}s:24:"1234:register.incomplete";a:2:{i:0;R:33369;i:1;R:33370;}s:21:"1234:register.confirm";a:2:{i:0;R:33369;i:1;R:33370;}s:27:"1234:register.confirm.error";a:2:{i:0;R:33369;i:1;R:33370;}s:32:"1234:register.api.email_required";a:2:{i:0;R:33369;i:1;R:33370;}s:35:"1234:register.i_accept_terms_of_use";a:2:{i:0;R:33369;i:1;R:33370;}s:37:"1234:register.i_accept_create_account";a:2:{i:0;R:33369;i:1;R:33370;}s:26:"1234:resetpassword.message";a:2:{i:0;R:33369;i:1;R:33370;}s:30:"1234:resetpassword.no_username";a:2:{i:0;R:33369;i:1;R:33370;}s:23:"1234:resetpassword.from";a:2:{i:0;R:33369;i:1;R:33370;}s:26:"1234:resetpassword.subject";a:2:{i:0;R:33369;i:1;R:33370;}s:23:"1234:resetpassword.body";a:2:{i:0;R:33369;i:1;R:33370;}s:18:"1234:media.creator";a:2:{i:0;R:33369;i:1;R:33370;}s:15:"1234:media.date";a:2:{i:0;R:33369;i:1;R:33370;}s:19:"1234:media.download";a:2:{i:0;R:33369;i:1;R:33370;}s:31:"1234:media.description_language";a:2:{i:0;R:33369;i:1;R:33370;}s:15:"1234:media.edit";a:2:{i:0;R:33369;i:1;R:33370;}s:19:"1234:media.favorite";a:2:{i:0;R:33369;i:1;R:33370;}s:19:"1234:media.featured";a:2:{i:0;R:33369;i:1;R:33370;}s:16:"1234:media.files";a:2:{i:0;R:33369;i:1;R:33370;}s:20:"1234:media.hasformat";a:2:{i:0;R:33369;i:1;R:33370;}s:18:"1234:media.htmltag";a:2:{i:0;R:33369;i:1;R:33370;}s:15:"1234:media.item";a:2:{i:0;R:33369;i:1;R:33370;}s:19:"1234:media.keywords";a:2:{i:0;R:33369;i:1;R:33370;}s:19:"1234:media.language";a:2:{i:0;R:33369;i:1;R:33370;}s:25:"1234:media.latest_uploads";a:2:{i:0;R:33369;i:1;R:33370;}s:17:"1234:media.length";a:2:{i:0;R:33369;i:1;R:33370;}s:18:"1234:media.license";a:2:{i:0;R:33369;i:1;R:33370;}s:36:"1234:media.license.is_licensed_under";a:2:{i:0;R:33369;i:1;R:33370;}s:23:"1234:media.link_to_page";a:2:{i:0;R:33369;i:1;R:33370;}s:15:"1234:media.more";a:2:{i:0;R:33369;i:1;R:33370;}s:15:"1234:media.less";a:2:{i:0;R:33369;i:1;R:33370;}s:25:"1234:media.more_from_user";a:2:{i:0;R:33369;i:1;R:33370;}s:20:"1234:media.new_media";a:2:{i:0;R:33369;i:1;R:33370;}s:27:"1234:media.my_contributions";a:2:{i:0;R:33369;i:1;R:33370;}s:16:"1234:media.order";a:2:{i:0;R:33369;i:1;R:33370;}s:21:"1234:media.order_text";a:2:{i:0;R:33369;i:1;R:33370;}s:15:"1234:media.page";a:2:{i:0;R:33369;i:1;R:33370;}s:18:"1234:media.preview";a:2:{i:0;R:33369;i:1;R:33370;}s:18:"1234:media.related";a:2:{i:0;R:33369;i:1;R:33370;}s:24:"1234:media.related_items";a:2:{i:0;R:33369;i:1;R:33370;}s:20:"1234:media.relevance";a:2:{i:0;R:33369;i:1;R:33370;}s:16:"1234:media.share";a:2:{i:0;R:33369;i:1;R:33370;}s:17:"1234:media.sortby";a:2:{i:0;R:33369;i:1;R:33370;}s:17:"1234:media.source";a:2:{i:0;R:33369;i:1;R:33370;}s:14:"1234:media.tag";a:2:{i:0;R:33369;i:1;R:33370;}s:15:"1234:media.tags";a:2:{i:0;R:33369;i:1;R:33370;}s:16:"1234:media.title";a:2:{i:0;R:33369;i:1;R:33370;}s:15:"1234:media.type";a:2:{i:0;R:33369;i:1;R:33370;}s:21:"1234:media.thumbnails";a:2:{i:0;R:33369;i:1;R:33370;}s:15:"1234:media.list";a:2:{i:0;R:33369;i:1;R:33370;}s:20:"1234:media.publisher";a:2:{i:0;R:33369;i:1;R:33370;}s:27:"1234:media.related.notfound";a:2:{i:0;R:33369;i:1;R:33370;}s:19:"1234:media.uploaded";a:2:{i:0;R:33369;i:1;R:33370;}s:20:"1234:media.uploading";a:2:{i:0;R:33369;i:1;R:33370;}s:15:"1234:media.user";a:2:{i:0;R:33369;i:1;R:33370;}s:17:"1234:media.upload";a:2:{i:0;R:33369;i:1;R:33370;}s:22:"1234:media.upload_file";a:2:{i:0;R:33369;i:1;R:33370;}s:34:"1234:media.upload_file.information";a:2:{i:0;R:33369;i:1;R:33370;}s:10:"1234:users";a:2:{i:0;R:33369;i:1;R:33370;}s:14:"1234:users.add";a:2:{i:0;R:33369;i:1;R:33370;}s:24:"1234:users.add_something";a:2:{i:0;R:33369;i:1;R:33370;}s:15:"1234:users.back";a:2:{i:0;R:33369;i:1;R:33370;}s:17:"1234:users.cancel";a:2:{i:0;R:33369;i:1;R:33370;}s:16:"1234:users.close";a:2:{i:0;R:33369;i:1;R:33370;}s:29:"1234:users.form.add_more_info";a:2:{i:0;R:33369;i:1;R:33370;}s:21:"1234:users.form.error";a:2:{i:0;R:33369;i:1;R:33370;}s:20:"1234:users.form.save";a:2:{i:0;R:33369;i:1;R:33370;}s:21:"1234:users.form.saved";a:2:{i:0;R:33369;i:1;R:33370;}s:18:"1234:users.picture";a:2:{i:0;R:33369;i:1;R:33370;}s:19:"1234:users.username";a:2:{i:0;R:33369;i:1;R:33370;}s:19:"1234:users.register";a:2:{i:0;R:33369;i:1;R:33370;}s:17:"1234:users.search";a:2:{i:0;R:33369;i:1;R:33370;}s:22:"1234:users.search_user";a:2:{i:0;R:33369;i:1;R:33370;}s:17:"1234:users.maynot";a:2:{i:0;R:33369;i:1;R:33370;}s:20:"1234:users.add_image";a:2:{i:0;R:33369;i:1;R:33370;}s:23:"1234:users.delete_image";a:2:{i:0;R:33369;i:1;R:33370;}s:28:"1234:users.delete_image_sure";a:2:{i:0;R:33369;i:1;R:33370;}s:27:"1234:users.delete_node_sure";a:2:{i:0;R:33369;i:1;R:33370;}s:15:"1234:users.edit";a:2:{i:0;R:33369;i:1;R:33370;}s:21:"1234:users.edit_image";a:2:{i:0;R:33369;i:1;R:33370;}s:27:"1234:users.create_new_image";a:2:{i:0;R:33369;i:1;R:33370;}s:17:"1234:users.logout";a:2:{i:0;R:33369;i:1;R:33370;}s:17:"1234:users.delete";a:2:{i:0;R:33369;i:1;R:33370;}s:14:"1234:users.new";a:2:{i:0;R:33369;i:1;R:33370;}s:23:"1234:users.my_favorites";a:2:{i:0;R:33369;i:1;R:33370;}s:18:"1234:users.options";a:2:{i:0;R:33369;i:1;R:33370;}s:15:"1234:users.save";a:2:{i:0;R:33369;i:1;R:33370;}s:27:"1234:users.starsarerequired";a:2:{i:0;R:33369;i:1;R:33370;}s:23:"1234:users.translations";a:2:{i:0;R:33369;i:1;R:33370;}s:33:"1234:users.create_new_translation";a:2:{i:0;R:33369;i:1;R:33370;}s:26:"1234:users.upload.finished";a:2:{i:0;R:33369;i:1;R:33370;}s:28:"1234:users.upload.notstarted";a:2:{i:0;R:33369;i:1;R:33370;}s:30:"1234:users.upload.licensetitle";a:2:{i:0;R:33369;i:1;R:33370;}s:29:"1234:users.upload.licensetext";a:2:{i:0;R:33369;i:1;R:33370;}s:29:"1234:users.upload.takesawhile";a:2:{i:0;R:33369;i:1;R:33370;}s:20:"1234:user.disallowed";a:2:{i:0;R:33369;i:1;R:33370;}s:19:"1234:user.dashboard";a:2:{i:0;R:33369;i:1;R:33370;}s:16:"1234:user.delete";a:2:{i:0;R:33369;i:1;R:33370;}s:21:"1234:user.delete_sure";a:2:{i:0;R:33369;i:1;R:33370;}s:23:"1234:user.nodestodelete";a:2:{i:0;R:33369;i:1;R:33370;}s:17:"1234:user.deleted";a:2:{i:0;R:33369;i:1;R:33370;}s:13:"1234:user.yes";a:2:{i:0;R:33369;i:1;R:33370;}s:12:"1234:user.no";a:2:{i:0;R:33369;i:1;R:33370;}s:28:"1234:media.searchinfo.portal";a:2:{i:0;R:33369;i:1;R:33370;}s:31:"1234:media.searchinfo.published";a:2:{i:0;R:33369;i:1;R:33370;}s:30:"1234:media.searchinfo.uploaded";a:2:{i:0;R:33369;i:1;R:33370;}s:30:"1234:media.searchinfo.language";a:2:{i:0;R:33369;i:1;R:33370;}s:29:"1234:media.searchinfo.license";a:2:{i:0;R:33369;i:1;R:33370;}s:27:"1234:media.sortby.relevance";a:2:{i:0;R:33369;i:1;R:33370;}s:23:"1234:media.sortby.title";a:2:{i:0;R:33369;i:1;R:33370;}s:34:"1234:media.sortby.publication_date";a:2:{i:0;R:33369;i:1;R:33370;}s:31:"1234:media.sortby.date_uploaded";a:2:{i:0;R:33369;i:1;R:33370;}s:22:"1234:media.sortby.user";a:2:{i:0;R:33369;i:1;R:33370;}s:24:"1234:media.sortby.source";a:2:{i:0;R:33369;i:1;R:33370;}s:16:"1234:media.video";a:2:{i:0;R:33369;i:1;R:33370;}s:16:"1234:media.audio";a:2:{i:0;R:33369;i:1;R:33370;}s:17:"1234:media.images";a:2:{i:0;R:33369;i:1;R:33370;}s:20:"1234:media.favorites";a:2:{i:0;R:33369;i:1;R:33370;}s:43:"1234:media.results_from_complete_repository";a:2:{i:0;R:33369;i:1;R:33370;}s:36:"1234:media.wikipedia.was_uploaded_to";a:2:{i:0;R:33369;i:1;R:33370;}s:38:"1234:media.wikipedia.is_being_uploaded";a:2:{i:0;R:33369;i:1;R:33370;}s:27:"1234:media.wikipedia.upload";a:2:{i:0;R:33369;i:1;R:33370;}s:29:"1234:media.wikipedia.reupload";a:2:{i:0;R:33369;i:1;R:33370;}s:16:"1234:editors.add";a:2:{i:0;R:33369;i:1;R:33370;}s:21:"1234:editors.add_type";a:2:{i:0;R:33369;i:1;R:33370;}s:19:"1234:editors.delete";a:2:{i:0;R:33369;i:1;R:33370;}s:24:"1234:editors.delete_type";a:2:{i:0;R:33369;i:1;R:33370;}s:17:"1234:editors.edit";a:2:{i:0;R:33369;i:1;R:33370;}s:22:"1234:editors.edit_type";a:2:{i:0;R:33369;i:1;R:33370;}s:29:"1234:editors.remove_from_list";a:2:{i:0;R:33369;i:1;R:33370;}s:39:"1234:editors.remove_this_type_from_list";a:2:{i:0;R:33369;i:1;R:33370;}s:19:"1234:editors.search";a:2:{i:0;R:33369;i:1;R:33370;}s:24:"1234:editors.search_type";a:2:{i:0;R:33369;i:1;R:33370;}s:23:"1234:editors.is_deleted";a:2:{i:0;R:33369;i:1;R:33370;}s:29:"1234:editors.image_is_deleted";a:2:{i:0;R:33369;i:1;R:33370;}s:33:"1234:editors.delete_nodetype_sure";a:2:{i:0;R:33369;i:1;R:33370;}s:9:"1234:from";a:2:{i:0;s:34:"out-openimages-verifyemailtemplate";i:1;R:33370;}s:12:"1234:subject";a:2:{i:0;R:33555;i:1;R:33370;}s:9:"1234:body";a:2:{i:0;R:33555;i:1;R:33370;}s:29:"1222:help-help.gettingstarted";a:2:{i:0;s:22:"out-osm-potlatch2-help";i:1;s:13:"out-osm-0-all";}s:22:"1222:help-help.welcome";a:2:{i:0;R:33559;i:1;R:33560;}s:31:"1222:help-help.whyopenstreetmap";a:2:{i:0;R:33559;i:1;R:33560;}s:28:"1222:help-help.activemembers";a:2:{i:0;R:33559;i:1;R:33560;}s:25:"1222:help-help.newmembers";a:2:{i:0;R:33559;i:1;R:33560;}s:24:"1222:help-help.introtext";a:2:{i:0;R:33559;i:1;R:33560;}s:27:"1222:help-help.introduction";a:2:{i:0;R:33559;i:1;R:33560;}s:23:"1222:help-help.controls";a:2:{i:0;R:33559;i:1;R:33560;}s:32:"1222:help-help.interfacecontrols";a:2:{i:0;R:33559;i:1;R:33560;}s:28:"1222:help-help.mapbackground";a:2:{i:0;R:33559;i:1;R:33560;}s:26:"1222:help-help.colourstyle";a:2:{i:0;R:33559;i:1;R:33560;}s:18:"1222:help-help.gps";a:2:{i:0;R:33559;i:1;R:33560;}s:27:"1222:help-help.createosmmap";a:2:{i:0;R:33559;i:1;R:33560;}s:20:"1222:help-help.mygps";a:2:{i:0;R:33559;i:1;R:33560;}s:25:"1222:help-help.displaygps";a:2:{i:0;R:33559;i:1;R:33560;}s:23:"1222:help-help.undoredo";a:2:{i:0;R:33559;i:1;R:33560;}s:26:"1222:help-help.mademistake";a:2:{i:0;R:33559;i:1;R:33560;}s:19:"1222:help-help.help";a:2:{i:0;R:33559;i:1;R:33560;}s:30:"1222:help-help.guideinfomation";a:2:{i:0;R:33559;i:1;R:33560;}s:19:"1222:help-help.save";a:2:{i:0;R:33559;i:1;R:33560;}s:29:"1222:help-help.addingfeatures";a:2:{i:0;R:33559;i:1;R:33560;}s:33:"1222:help-help.addingfeaturestext";a:2:{i:0;R:33559;i:1;R:33560;}s:22:"1222:help-help.editbeg";a:2:{i:0;R:33559;i:1;R:33560;}s:30:"1222:help-help.editingfeatures";a:2:{i:0;R:33559;i:1;R:33560;}s:34:"1222:help-help.editingfeaturestext";a:2:{i:0;R:33559;i:1;R:33560;}s:22:"1222:help-help.editadv";a:2:{i:0;R:33559;i:1;R:33560;}s:33:"1222:help-help.editingfeaturesadv";a:2:{i:0;R:33559;i:1;R:33560;}s:37:"1222:help-help.editingfeaturesadvtext";a:2:{i:0;R:33559;i:1;R:33560;}s:18:"1222:help-help.tag";a:2:{i:0;R:33559;i:1;R:33560;}s:30:"1222:help-help.taggingfeatures";a:2:{i:0;R:33559;i:1;R:33560;}s:34:"1222:help-help.taggingfeaturestext";a:2:{i:0;R:33559;i:1;R:33560;}s:24:"1222:help-help.shortcuts";a:2:{i:0;R:33559;i:1;R:33560;}s:32:"1222:help-help.keyboardshortcuts";a:2:{i:0;R:33559;i:1;R:33560;}s:19:"1222:main-main.undo";a:2:{i:0;s:22:"out-osm-potlatch2-main";i:1;R:33560;}s:19:"1222:main-main.redo";a:2:{i:0;R:33594;i:1;R:33560;}s:25:"1222:main-main.background";a:2:{i:0;R:33594;i:1;R:33560;}s:24:"1222:main-main.map_style";a:2:{i:0;R:33594;i:1;R:33560;}s:24:"1222:main-main.gpsbutton";a:2:{i:0;R:33594;i:1;R:33560;}s:23:"1222:main-main.gps_data";a:2:{i:0;R:33594;i:1;R:33560;}s:24:"1222:main-main.my_tracks";a:2:{i:0;R:33594;i:1;R:33560;}s:24:"1222:main-main.clear_gps";a:2:{i:0;R:33594;i:1;R:33560;}s:19:"1222:main-main.help";a:2:{i:0;R:33594;i:1;R:33560;}s:22:"1222:main-main.options";a:2:{i:0;R:33594;i:1;R:33560;}s:19:"1222:main-main.save";a:2:{i:0;R:33594;i:1;R:33560;}s:30:"1222:main-tag_viewer.dndprompt";a:2:{i:0;R:33594;i:1;R:33560;}s:29:"1222:main-toolbox.delete_node";a:2:{i:0;R:33594;i:1;R:33560;}s:29:"1222:main-toolbox.delete_area";a:2:{i:0;R:33594;i:1;R:33560;}s:28:"1222:main-toolbox.delete_way";a:2:{i:0;R:33594;i:1;R:33560;}s:29:"1222:main-toolbox.delete_item";a:2:{i:0;R:33594;i:1;R:33560;}s:35:"1222:main-toolbox.reverse_direction";a:2:{i:0;R:33594;i:1;R:33560;}s:27:"1222:main-toolbox.split_way";a:2:{i:0;R:33594;i:1;R:33560;}s:28:"1222:main-toolbox.merge_ways";a:2:{i:0;R:33594;i:1;R:33560;}s:32:"1222:main-toolbox.straighten_way";a:2:{i:0;R:33594;i:1;R:33560;}s:31:"1222:main-toolbox.make_circular";a:2:{i:0;R:33594;i:1;R:33560;}s:35:"1222:main-toolbox.make_right_angled";a:2:{i:0;R:33594;i:1;R:33560;}s:38:"1222:main-toolbox.create_parrallel_way";a:2:{i:0;R:33594;i:1;R:33560;}s:26:"1222:main-oauth.gotlinkbox";a:2:{i:0;R:33594;i:1;R:33560;}s:26:"1222:main-oauth.authorized";a:2:{i:0;R:33594;i:1;R:33560;}s:27:"1222:main-oauth.deniedlabel";a:2:{i:0;R:33594;i:1;R:33560;}s:26:"1222:main-oauth.rememberme";a:2:{i:0;R:33594;i:1;R:33560;}s:24:"1222:main-oauth.permfail";a:2:{i:0;R:33594;i:1;R:33560;}s:24:"1222:main-oauth.tempfail";a:2:{i:0;R:33594;i:1;R:33560;}s:31:"1222:main-oauth.tryaccessbutton";a:2:{i:0;R:33594;i:1;R:33560;}s:28:"1222:main-oauth.cancelbutton";a:2:{i:0;R:33594;i:1;R:33560;}s:30:"1222:main-save.editdescription";a:2:{i:0;R:33594;i:1;R:33560;}s:34:"1222:main-styleselector.editbutton";a:2:{i:0;R:33594;i:1;R:33560;}s:32:"1222:main-backgroundselector.dim";a:2:{i:0;R:33594;i:1;R:33560;}s:36:"1222:main-backgroundselector.sharpen";a:2:{i:0;R:33594;i:1;R:33560;}s:39:"1222:main-backgroundselector.editbutton";a:2:{i:0;R:33594;i:1;R:33560;}s:41:"1222:main-backgroundselector.vectorbutton";a:2:{i:0;R:33594;i:1;R:33560;}s:25:"1222:main-options.tbcheck";a:2:{i:0;R:33594;i:1;R:33560;}s:29:"1222:main-options.cursorcheck";a:2:{i:0;R:33594;i:1;R:33560;}s:20:"1222:main-options.ok";a:2:{i:0;R:33594;i:1;R:33560;}s:13:"1222:html.dir";a:2:{i:0;s:12:"out-osm-site";i:1;R:33560;}s:26:"1222:time.formats.friendly";a:2:{i:0;R:33635;i:1;R:33560;}s:28:"1222:activerecord.models.acl";a:2:{i:0;R:33635;i:1;R:33560;}s:34:"1222:activerecord.models.changeset";a:2:{i:0;R:33635;i:1;R:33560;}s:38:"1222:activerecord.models.changeset_tag";a:2:{i:0;R:33635;i:1;R:33560;}s:32:"1222:activerecord.models.country";a:2:{i:0;R:33635;i:1;R:33560;}s:38:"1222:activerecord.models.diary_comment";a:2:{i:0;R:33635;i:1;R:33560;}s:36:"1222:activerecord.models.diary_entry";a:2:{i:0;R:33635;i:1;R:33560;}s:31:"1222:activerecord.models.friend";a:2:{i:0;R:33635;i:1;R:33560;}s:33:"1222:activerecord.models.language";a:2:{i:0;R:33635;i:1;R:33560;}s:32:"1222:activerecord.models.message";a:2:{i:0;R:33635;i:1;R:33560;}s:29:"1222:activerecord.models.node";a:2:{i:0;R:33635;i:1;R:33560;}s:33:"1222:activerecord.models.node_tag";a:2:{i:0;R:33635;i:1;R:33560;}s:33:"1222:activerecord.models.notifier";a:2:{i:0;R:33635;i:1;R:33560;}s:33:"1222:activerecord.models.old_node";a:2:{i:0;R:33635;i:1;R:33560;}s:37:"1222:activerecord.models.old_node_tag";a:2:{i:0;R:33635;i:1;R:33560;}s:37:"1222:activerecord.models.old_relation";a:2:{i:0;R:33635;i:1;R:33560;}s:44:"1222:activerecord.models.old_relation_member";a:2:{i:0;R:33635;i:1;R:33560;}s:41:"1222:activerecord.models.old_relation_tag";a:2:{i:0;R:33635;i:1;R:33560;}s:32:"1222:activerecord.models.old_way";a:2:{i:0;R:33635;i:1;R:33560;}s:37:"1222:activerecord.models.old_way_node";a:2:{i:0;R:33635;i:1;R:33560;}s:36:"1222:activerecord.models.old_way_tag";a:2:{i:0;R:33635;i:1;R:33560;}s:33:"1222:activerecord.models.relation";a:2:{i:0;R:33635;i:1;R:33560;}s:40:"1222:activerecord.models.relation_member";a:2:{i:0;R:33635;i:1;R:33560;}s:37:"1222:activerecord.models.relation_tag";a:2:{i:0;R:33635;i:1;R:33560;}s:32:"1222:activerecord.models.session";a:2:{i:0;R:33635;i:1;R:33560;}s:30:"1222:activerecord.models.trace";a:2:{i:0;R:33635;i:1;R:33560;}s:35:"1222:activerecord.models.tracepoint";a:2:{i:0;R:33635;i:1;R:33560;}s:33:"1222:activerecord.models.tracetag";a:2:{i:0;R:33635;i:1;R:33560;}s:29:"1222:activerecord.models.user";a:2:{i:0;R:33635;i:1;R:33560;}s:40:"1222:activerecord.models.user_preference";a:2:{i:0;R:33635;i:1;R:33560;}s:35:"1222:activerecord.models.user_token";a:2:{i:0;R:33635;i:1;R:33560;}s:28:"1222:activerecord.models.way";a:2:{i:0;R:33635;i:1;R:33560;}s:33:"1222:activerecord.models.way_node";a:2:{i:0;R:33635;i:1;R:33560;}s:32:"1222:activerecord.models.way_tag";a:2:{i:0;R:33635;i:1;R:33560;}s:47:"1222:activerecord.attributes.diary_comment.body";a:2:{i:0;R:33635;i:1;R:33560;}s:45:"1222:activerecord.attributes.diary_entry.user";a:2:{i:0;R:33635;i:1;R:33560;}s:46:"1222:activerecord.attributes.diary_entry.title";a:2:{i:0;R:33635;i:1;R:33560;}s:49:"1222:activerecord.attributes.diary_entry.latitude";a:2:{i:0;R:33635;i:1;R:33560;}s:50:"1222:activerecord.attributes.diary_entry.longitude";a:2:{i:0;R:33635;i:1;R:33560;}s:49:"1222:activerecord.attributes.diary_entry.language";a:2:{i:0;R:33635;i:1;R:33560;}s:40:"1222:activerecord.attributes.friend.user";a:2:{i:0;R:33635;i:1;R:33560;}s:42:"1222:activerecord.attributes.friend.friend";a:2:{i:0;R:33635;i:1;R:33560;}s:39:"1222:activerecord.attributes.trace.user";a:2:{i:0;R:33635;i:1;R:33560;}s:42:"1222:activerecord.attributes.trace.visible";a:2:{i:0;R:33635;i:1;R:33560;}s:39:"1222:activerecord.attributes.trace.name";a:2:{i:0;R:33635;i:1;R:33560;}s:39:"1222:activerecord.attributes.trace.size";a:2:{i:0;R:33635;i:1;R:33560;}s:43:"1222:activerecord.attributes.trace.latitude";a:2:{i:0;R:33635;i:1;R:33560;}s:44:"1222:activerecord.attributes.trace.longitude";a:2:{i:0;R:33635;i:1;R:33560;}s:41:"1222:activerecord.attributes.trace.public";a:2:{i:0;R:33635;i:1;R:33560;}s:46:"1222:activerecord.attributes.trace.description";a:2:{i:0;R:33635;i:1;R:33560;}s:43:"1222:activerecord.attributes.message.sender";a:2:{i:0;R:33635;i:1;R:33560;}s:42:"1222:activerecord.attributes.message.title";a:2:{i:0;R:33635;i:1;R:33560;}s:41:"1222:activerecord.attributes.message.body";a:2:{i:0;R:33635;i:1;R:33560;}s:46:"1222:activerecord.attributes.message.recipient";a:2:{i:0;R:33635;i:1;R:33560;}s:39:"1222:activerecord.attributes.user.email";a:2:{i:0;R:33635;i:1;R:33560;}s:40:"1222:activerecord.attributes.user.active";a:2:{i:0;R:33635;i:1;R:33560;}s:46:"1222:activerecord.attributes.user.display_name";a:2:{i:0;R:33635;i:1;R:33560;}s:45:"1222:activerecord.attributes.user.description";a:2:{i:0;R:33635;i:1;R:33560;}s:43:"1222:activerecord.attributes.user.languages";a:2:{i:0;R:33635;i:1;R:33560;}s:44:"1222:activerecord.attributes.user.pass_crypt";a:2:{i:0;R:33635;i:1;R:33560;}s:27:"1222:printable_name.with_id";a:2:{i:0;R:33635;i:1;R:33560;}s:32:"1222:printable_name.with_version";a:2:{i:0;R:33635;i:1;R:33560;}s:29:"1222:printable_name.with_name";a:2:{i:0;R:33635;i:1;R:33560;}s:19:"1222:editor.default";a:2:{i:0;R:33635;i:1;R:33560;}s:25:"1222:editor.potlatch.name";a:2:{i:0;R:33635;i:1;R:33560;}s:32:"1222:editor.potlatch.description";a:2:{i:0;R:33635;i:1;R:33560;}s:26:"1222:editor.potlatch2.name";a:2:{i:0;R:33635;i:1;R:33560;}s:33:"1222:editor.potlatch2.description";a:2:{i:0;R:33635;i:1;R:33560;}s:23:"1222:editor.remote.name";a:2:{i:0;R:33635;i:1;R:33560;}s:30:"1222:editor.remote.description";a:2:{i:0;R:33635;i:1;R:33560;}s:27:"1222:browse.changeset.title";a:2:{i:0;R:33635;i:1;R:33560;}s:31:"1222:browse.changeset.changeset";a:2:{i:0;R:33635;i:1;R:33560;}s:30:"1222:browse.changeset.download";a:2:{i:0;R:33635;i:1;R:33560;}s:34:"1222:browse.changeset.changesetxml";a:2:{i:0;R:33635;i:1;R:33560;}s:34:"1222:browse.changeset.osmchangexml";a:2:{i:0;R:33635;i:1;R:33560;}s:32:"1222:browse.changeset.feed.title";a:2:{i:0;R:33635;i:1;R:33560;}s:40:"1222:browse.changeset.feed.title_comment";a:2:{i:0;R:33635;i:1;R:33560;}s:39:"1222:browse.navigation.paging.user.prev";a:2:{i:0;R:33635;i:1;R:33560;}s:39:"1222:browse.navigation.paging.user.next";a:2:{i:0;R:33635;i:1;R:33560;}s:38:"1222:browse.navigation.paging.all.prev";a:2:{i:0;R:33635;i:1;R:33560;}s:38:"1222:browse.navigation.paging.all.next";a:2:{i:0;R:33635;i:1;R:33560;}s:50:"1222:browse.navigation.user.name_changeset_tooltip";a:2:{i:0;R:33635;i:1;R:33560;}s:50:"1222:browse.navigation.user.prev_changeset_tooltip";a:2:{i:0;R:33635;i:1;R:33560;}s:50:"1222:browse.navigation.user.next_changeset_tooltip";a:2:{i:0;R:33635;i:1;R:33560;}s:44:"1222:browse.navigation.all.prev_node_tooltip";a:2:{i:0;R:33635;i:1;R:33560;}s:44:"1222:browse.navigation.all.next_node_tooltip";a:2:{i:0;R:33635;i:1;R:33560;}s:43:"1222:browse.navigation.all.prev_way_tooltip";a:2:{i:0;R:33635;i:1;R:33560;}s:43:"1222:browse.navigation.all.next_way_tooltip";a:2:{i:0;R:33635;i:1;R:33560;}s:48:"1222:browse.navigation.all.prev_relation_tooltip";a:2:{i:0;R:33635;i:1;R:33560;}s:48:"1222:browse.navigation.all.next_relation_tooltip";a:2:{i:0;R:33635;i:1;R:33560;}s:49:"1222:browse.navigation.all.prev_changeset_tooltip";a:2:{i:0;R:33635;i:1;R:33560;}s:49:"1222:browse.navigation.all.next_changeset_tooltip";a:2:{i:0;R:33635;i:1;R:33560;}s:40:"1222:browse.changeset_details.created_at";a:2:{i:0;R:33635;i:1;R:33560;}s:39:"1222:browse.changeset_details.closed_at";a:2:{i:0;R:33635;i:1;R:33560;}s:40:"1222:browse.changeset_details.belongs_to";a:2:{i:0;R:33635;i:1;R:33560;}s:42:"1222:browse.changeset_details.bounding_box";a:2:{i:0;R:33635;i:1;R:33560;}s:45:"1222:browse.changeset_details.no_bounding_box";a:2:{i:0;R:33635;i:1;R:33560;}s:43:"1222:browse.changeset_details.show_area_box";a:2:{i:0;R:33635;i:1;R:33560;}s:33:"1222:browse.changeset_details.box";a:2:{i:0;R:33635;i:1;R:33560;}s:39:"1222:browse.changeset_details.has_nodes";a:2:{i:0;R:33635;i:1;R:33560;}s:38:"1222:browse.changeset_details.has_ways";a:2:{i:0;R:33635;i:1;R:33560;}s:43:"1222:browse.changeset_details.has_relations";a:2:{i:0;R:33635;i:1;R:33560;}s:36:"1222:browse.common_details.edited_at";a:2:{i:0;R:33635;i:1;R:33560;}s:36:"1222:browse.common_details.edited_by";a:2:{i:0;R:33635;i:1;R:33560;}s:37:"1222:browse.common_details.deleted_at";a:2:{i:0;R:33635;i:1;R:33560;}s:37:"1222:browse.common_details.deleted_by";a:2:{i:0;R:33635;i:1;R:33560;}s:34:"1222:browse.common_details.version";a:2:{i:0;R:33635;i:1;R:33560;}s:39:"1222:browse.common_details.in_changeset";a:2:{i:0;R:33635;i:1;R:33560;}s:44:"1222:browse.common_details.changeset_comment";a:2:{i:0;R:33635;i:1;R:33560;}s:37:"1222:browse.containing_relation.entry";a:2:{i:0;R:33635;i:1;R:33560;}s:42:"1222:browse.containing_relation.entry_role";a:2:{i:0;R:33635;i:1;R:33560;}s:23:"1222:browse.map.loading";a:2:{i:0;R:33635;i:1;R:33560;}s:23:"1222:browse.map.deleted";a:2:{i:0;R:33635;i:1;R:33560;}s:27:"1222:browse.map.larger.area";a:2:{i:0;R:33635;i:1;R:33560;}s:27:"1222:browse.map.larger.node";a:2:{i:0;R:33635;i:1;R:33560;}s:26:"1222:browse.map.larger.way";a:2:{i:0;R:33635;i:1;R:33560;}s:31:"1222:browse.map.larger.relation";a:2:{i:0;R:33635;i:1;R:33560;}s:25:"1222:browse.map.edit.area";a:2:{i:0;R:33635;i:1;R:33560;}s:25:"1222:browse.map.edit.node";a:2:{i:0;R:33635;i:1;R:33560;}s:24:"1222:browse.map.edit.way";a:2:{i:0;R:33635;i:1;R:33560;}s:29:"1222:browse.map.edit.relation";a:2:{i:0;R:33635;i:1;R:33560;}s:36:"1222:browse.node_details.coordinates";a:2:{i:0;R:33635;i:1;R:33560;}s:32:"1222:browse.node_details.part_of";a:2:{i:0;R:33635;i:1;R:33560;}s:37:"1222:browse.node_history.node_history";a:2:{i:0;R:33635;i:1;R:33560;}s:43:"1222:browse.node_history.node_history_title";a:2:{i:0;R:33635;i:1;R:33560;}s:33:"1222:browse.node_history.download";a:2:{i:0;R:33635;i:1;R:33560;}s:37:"1222:browse.node_history.download_xml";a:2:{i:0;R:33635;i:1;R:33560;}s:37:"1222:browse.node_history.view_details";a:2:{i:0;R:33635;i:1;R:33560;}s:21:"1222:browse.node.node";a:2:{i:0;R:33635;i:1;R:33560;}s:27:"1222:browse.node.node_title";a:2:{i:0;R:33635;i:1;R:33560;}s:25:"1222:browse.node.download";a:2:{i:0;R:33635;i:1;R:33560;}s:29:"1222:browse.node.download_xml";a:2:{i:0;R:33635;i:1;R:33560;}s:29:"1222:browse.node.view_history";a:2:{i:0;R:33635;i:1;R:33560;}s:21:"1222:browse.node.edit";a:2:{i:0;R:33635;i:1;R:33560;}s:27:"1222:browse.not_found.sorry";a:2:{i:0;R:33635;i:1;R:33560;}s:31:"1222:browse.not_found.type.node";a:2:{i:0;R:33635;i:1;R:33560;}s:30:"1222:browse.not_found.type.way";a:2:{i:0;R:33635;i:1;R:33560;}s:35:"1222:browse.not_found.type.relation";a:2:{i:0;R:33635;i:1;R:33560;}s:36:"1222:browse.not_found.type.changeset";a:2:{i:0;R:33635;i:1;R:33560;}s:25:"1222:browse.timeout.sorry";a:2:{i:0;R:33635;i:1;R:33560;}s:29:"1222:browse.timeout.type.node";a:2:{i:0;R:33635;i:1;R:33560;}s:28:"1222:browse.timeout.type.way";a:2:{i:0;R:33635;i:1;R:33560;}s:33:"1222:browse.timeout.type.relation";a:2:{i:0;R:33635;i:1;R:33560;}s:34:"1222:browse.timeout.type.changeset";a:2:{i:0;R:33635;i:1;R:33560;}s:35:"1222:browse.paging_nav.showing_page";a:2:{i:0;R:33635;i:1;R:33560;}s:25:"1222:browse.paging_nav.of";a:2:{i:0;R:33635;i:1;R:33560;}s:30:"1222:browse.redacted.redaction";a:2:{i:0;R:33635;i:1;R:33560;}s:33:"1222:browse.redacted.message_html";a:2:{i:0;R:33635;i:1;R:33560;}s:30:"1222:browse.redacted.type.node";a:2:{i:0;R:33635;i:1;R:33560;}s:29:"1222:browse.redacted.type.way";a:2:{i:0;R:33635;i:1;R:33560;}s:34:"1222:browse.redacted.type.relation";a:2:{i:0;R:33635;i:1;R:33560;}s:36:"1222:browse.relation_details.members";a:2:{i:0;R:33635;i:1;R:33560;}s:36:"1222:browse.relation_details.part_of";a:2:{i:0;R:33635;i:1;R:33560;}s:45:"1222:browse.relation_history.relation_history";a:2:{i:0;R:33635;i:1;R:33560;}s:51:"1222:browse.relation_history.relation_history_title";a:2:{i:0;R:33635;i:1;R:33560;}s:37:"1222:browse.relation_history.download";a:2:{i:0;R:33635;i:1;R:33560;}s:41:"1222:browse.relation_history.download_xml";a:2:{i:0;R:33635;i:1;R:33560;}s:41:"1222:browse.relation_history.view_details";a:2:{i:0;R:33635;i:1;R:33560;}s:33:"1222:browse.relation_member.entry";a:2:{i:0;R:33635;i:1;R:33560;}s:38:"1222:browse.relation_member.entry_role";a:2:{i:0;R:33635;i:1;R:33560;}s:37:"1222:browse.relation_member.type.node";a:2:{i:0;R:33635;i:1;R:33560;}s:36:"1222:browse.relation_member.type.way";a:2:{i:0;R:33635;i:1;R:33560;}s:41:"1222:browse.relation_member.type.relation";a:2:{i:0;R:33635;i:1;R:33560;}s:29:"1222:browse.relation.relation";a:2:{i:0;R:33635;i:1;R:33560;}s:35:"1222:browse.relation.relation_title";a:2:{i:0;R:33635;i:1;R:33560;}s:29:"1222:browse.relation.download";a:2:{i:0;R:33635;i:1;R:33560;}s:33:"1222:browse.relation.download_xml";a:2:{i:0;R:33635;i:1;R:33560;}s:33:"1222:browse.relation.view_history";a:2:{i:0;R:33635;i:1;R:33560;}s:27:"1222:browse.start.view_data";a:2:{i:0;R:33635;i:1;R:33560;}s:33:"1222:browse.start.manually_select";a:2:{i:0;R:33635;i:1;R:33560;}s:37:"1222:browse.start_rjs.data_layer_name";a:2:{i:0;R:33635;i:1;R:33560;}s:38:"1222:browse.start_rjs.data_frame_title";a:2:{i:0;R:33635;i:1;R:33560;}s:36:"1222:browse.start_rjs.zoom_or_select";a:2:{i:0;R:33635;i:1;R:33560;}s:32:"1222:browse.start_rjs.drag_a_box";a:2:{i:0;R:33635;i:1;R:33560;}s:37:"1222:browse.start_rjs.manually_select";a:2:{i:0;R:33635;i:1;R:33560;}s:32:"1222:browse.start_rjs.hide_areas";a:2:{i:0;R:33635;i:1;R:33560;}s:32:"1222:browse.start_rjs.show_areas";a:2:{i:0;R:33635;i:1;R:33560;}s:54:"1222:browse.start_rjs.loaded_an_area_with_num_features";a:2:{i:0;R:33635;i:1;R:33560;}s:31:"1222:browse.start_rjs.load_data";a:2:{i:0;R:33635;i:1;R:33560;}s:41:"1222:browse.start_rjs.unable_to_load_size";a:2:{i:0;R:33635;i:1;R:33560;}s:29:"1222:browse.start_rjs.loading";a:2:{i:0;R:33635;i:1;R:33560;}s:34:"1222:browse.start_rjs.show_history";a:2:{i:0;R:33635;i:1;R:33560;}s:26:"1222:browse.start_rjs.wait";a:2:{i:0;R:33635;i:1;R:33560;}s:41:"1222:browse.start_rjs.history_for_feature";a:2:{i:0;R:33635;i:1;R:33560;}s:29:"1222:browse.start_rjs.details";a:2:{i:0;R:33635;i:1;R:33560;}s:34:"1222:browse.start_rjs.private_user";a:2:{i:0;R:33635;i:1;R:33560;}s:49:"1222:browse.start_rjs.edited_by_user_at_timestamp";a:2:{i:0;R:33635;i:1;R:33560;}s:41:"1222:browse.start_rjs.object_list.heading";a:2:{i:0;R:33635;i:1;R:33560;}s:38:"1222:browse.start_rjs.object_list.back";a:2:{i:0;R:33635;i:1;R:33560;}s:43:"1222:browse.start_rjs.object_list.type.node";a:2:{i:0;R:33635;i:1;R:33560;}s:42:"1222:browse.start_rjs.object_list.type.way";a:2:{i:0;R:33635;i:1;R:33560;}s:37:"1222:browse.start_rjs.object_list.api";a:2:{i:0;R:33635;i:1;R:33560;}s:41:"1222:browse.start_rjs.object_list.details";a:2:{i:0;R:33635;i:1;R:33560;}s:52:"1222:browse.start_rjs.object_list.selected.type.node";a:2:{i:0;R:33635;i:1;R:33560;}s:51:"1222:browse.start_rjs.object_list.selected.type.way";a:2:{i:0;R:33635;i:1;R:33560;}s:51:"1222:browse.start_rjs.object_list.history.type.node";a:2:{i:0;R:33635;i:1;R:33560;}s:50:"1222:browse.start_rjs.object_list.history.type.way";a:2:{i:0;R:33635;i:1;R:33560;}s:28:"1222:browse.tag_details.tags";a:2:{i:0;R:33635;i:1;R:33560;}s:37:"1222:browse.tag_details.wiki_link.key";a:2:{i:0;R:33635;i:1;R:33560;}s:37:"1222:browse.tag_details.wiki_link.tag";a:2:{i:0;R:33635;i:1;R:33560;}s:38:"1222:browse.tag_details.wikipedia_link";a:2:{i:0;R:33635;i:1;R:33560;}s:29:"1222:browse.way_details.nodes";a:2:{i:0;R:33635;i:1;R:33560;}s:31:"1222:browse.way_details.part_of";a:2:{i:0;R:33635;i:1;R:33560;}s:36:"1222:browse.way_details.also_part_of";a:2:{i:0;R:33635;i:1;R:33560;}s:35:"1222:browse.way_history.way_history";a:2:{i:0;R:33635;i:1;R:33560;}s:41:"1222:browse.way_history.way_history_title";a:2:{i:0;R:33635;i:1;R:33560;}s:32:"1222:browse.way_history.download";a:2:{i:0;R:33635;i:1;R:33560;}s:36:"1222:browse.way_history.download_xml";a:2:{i:0;R:33635;i:1;R:33560;}s:36:"1222:browse.way_history.view_details";a:2:{i:0;R:33635;i:1;R:33560;}s:19:"1222:browse.way.way";a:2:{i:0;R:33635;i:1;R:33560;}s:25:"1222:browse.way.way_title";a:2:{i:0;R:33635;i:1;R:33560;}s:24:"1222:browse.way.download";a:2:{i:0;R:33635;i:1;R:33560;}s:28:"1222:browse.way.download_xml";a:2:{i:0;R:33635;i:1;R:33560;}s:28:"1222:browse.way.view_history";a:2:{i:0;R:33635;i:1;R:33560;}s:20:"1222:browse.way.edit";a:2:{i:0;R:33635;i:1;R:33560;}s:48:"1222:changeset.changeset_paging_nav.showing_page";a:2:{i:0;R:33635;i:1;R:33560;}s:40:"1222:changeset.changeset_paging_nav.next";a:2:{i:0;R:33635;i:1;R:33560;}s:44:"1222:changeset.changeset_paging_nav.previous";a:2:{i:0;R:33635;i:1;R:33560;}s:27:"1222:changeset.changeset.id";a:2:{i:0;R:33635;i:1;R:33560;}s:38:"1222:changeset.changeset.still_editing";a:2:{i:0;R:33635;i:1;R:33560;}s:34:"1222:changeset.changeset.anonymous";a:2:{i:0;R:33635;i:1;R:33560;}s:35:"1222:changeset.changeset.no_comment";a:2:{i:0;R:33635;i:1;R:33560;}s:33:"1222:changeset.changeset.no_edits";a:2:{i:0;R:33635;i:1;R:33560;}s:38:"1222:changeset.changeset.show_area_box";a:2:{i:0;R:33635;i:1;R:33560;}s:33:"1222:changeset.changeset.big_area";a:2:{i:0;R:33635;i:1;R:33560;}s:47:"1222:changeset.changeset.view_changeset_details";a:2:{i:0;R:33635;i:1;R:33560;}s:28:"1222:changeset.changesets.id";a:2:{i:0;R:33635;i:1;R:33560;}s:34:"1222:changeset.changesets.saved_at";a:2:{i:0;R:33635;i:1;R:33560;}s:30:"1222:changeset.changesets.user";a:2:{i:0;R:33635;i:1;R:33560;}s:33:"1222:changeset.changesets.comment";a:2:{i:0;R:33635;i:1;R:33560;}s:30:"1222:changeset.changesets.area";a:2:{i:0;R:33635;i:1;R:33560;}s:25:"1222:changeset.list.title";a:2:{i:0;R:33635;i:1;R:33560;}s:30:"1222:changeset.list.title_user";a:2:{i:0;R:33635;i:1;R:33560;}s:30:"1222:changeset.list.title_bbox";a:2:{i:0;R:33635;i:1;R:33560;}s:35:"1222:changeset.list.title_user_bbox";a:2:{i:0;R:33635;i:1;R:33560;}s:32:"1222:changeset.list.title_friend";a:2:{i:0;R:33635;i:1;R:33560;}s:32:"1222:changeset.list.title_nearby";a:2:{i:0;R:33635;i:1;R:33560;}s:27:"1222:changeset.list.heading";a:2:{i:0;R:33635;i:1;R:33560;}s:32:"1222:changeset.list.heading_user";a:2:{i:0;R:33635;i:1;R:33560;}s:32:"1222:changeset.list.heading_bbox";a:2:{i:0;R:33635;i:1;R:33560;}s:37:"1222:changeset.list.heading_user_bbox";a:2:{i:0;R:33635;i:1;R:33560;}s:34:"1222:changeset.list.heading_friend";a:2:{i:0;R:33635;i:1;R:33560;}s:34:"1222:changeset.list.heading_nearby";a:2:{i:0;R:33635;i:1;R:33560;}s:31:"1222:changeset.list.description";a:2:{i:0;R:33635;i:1;R:33560;}s:36:"1222:changeset.list.description_user";a:2:{i:0;R:33635;i:1;R:33560;}s:36:"1222:changeset.list.description_bbox";a:2:{i:0;R:33635;i:1;R:33560;}s:41:"1222:changeset.list.description_user_bbox";a:2:{i:0;R:33635;i:1;R:33560;}s:38:"1222:changeset.list.description_friend";a:2:{i:0;R:33635;i:1;R:33560;}s:38:"1222:changeset.list.description_nearby";a:2:{i:0;R:33635;i:1;R:33560;}s:28:"1222:changeset.timeout.sorry";a:2:{i:0;R:33635;i:1;R:33560;}s:26:"1222:diary_entry.new.title";a:2:{i:0;R:33635;i:1;R:33560;}s:27:"1222:diary_entry.list.title";a:2:{i:0;R:33635;i:1;R:33560;}s:35:"1222:diary_entry.list.title_friends";a:2:{i:0;R:33635;i:1;R:33560;}s:34:"1222:diary_entry.list.title_nearby";a:2:{i:0;R:33635;i:1;R:33560;}s:32:"1222:diary_entry.list.user_title";a:2:{i:0;R:33635;i:1;R:33560;}s:39:"1222:diary_entry.list.in_language_title";a:2:{i:0;R:33635;i:1;R:33560;}s:25:"1222:diary_entry.list.new";a:2:{i:0;R:33635;i:1;R:33560;}s:31:"1222:diary_entry.list.new_title";a:2:{i:0;R:33635;i:1;R:33560;}s:32:"1222:diary_entry.list.no_entries";a:2:{i:0;R:33635;i:1;R:33560;}s:36:"1222:diary_entry.list.recent_entries";a:2:{i:0;R:33635;i:1;R:33560;}s:35:"1222:diary_entry.list.older_entries";a:2:{i:0;R:33635;i:1;R:33560;}s:35:"1222:diary_entry.list.newer_entries";a:2:{i:0;R:33635;i:1;R:33560;}s:27:"1222:diary_entry.edit.title";a:2:{i:0;R:33635;i:1;R:33560;}s:29:"1222:diary_entry.edit.subject";a:2:{i:0;R:33635;i:1;R:33560;}s:26:"1222:diary_entry.edit.body";a:2:{i:0;R:33635;i:1;R:33560;}s:30:"1222:diary_entry.edit.language";a:2:{i:0;R:33635;i:1;R:33560;}s:30:"1222:diary_entry.edit.location";a:2:{i:0;R:33635;i:1;R:33560;}s:30:"1222:diary_entry.edit.latitude";a:2:{i:0;R:33635;i:1;R:33560;}s:31:"1222:diary_entry.edit.longitude";a:2:{i:0;R:33635;i:1;R:33560;}s:34:"1222:diary_entry.edit.use_map_link";a:2:{i:0;R:33635;i:1;R:33560;}s:33:"1222:diary_entry.edit.save_button";a:2:{i:0;R:33635;i:1;R:33560;}s:33:"1222:diary_entry.edit.marker_text";a:2:{i:0;R:33635;i:1;R:33560;}s:27:"1222:diary_entry.view.title";a:2:{i:0;R:33635;i:1;R:33560;}s:32:"1222:diary_entry.view.user_title";a:2:{i:0;R:33635;i:1;R:33560;}s:37:"1222:diary_entry.view.leave_a_comment";a:2:{i:0;R:33635;i:1;R:33560;}s:46:"1222:diary_entry.view.login_to_leave_a_comment";a:2:{i:0;R:33635;i:1;R:33560;}s:27:"1222:diary_entry.view.login";a:2:{i:0;R:33635;i:1;R:33560;}s:33:"1222:diary_entry.view.save_button";a:2:{i:0;R:33635;i:1;R:33560;}s:36:"1222:diary_entry.no_such_entry.title";a:2:{i:0;R:33635;i:1;R:33560;}s:38:"1222:diary_entry.no_such_entry.heading";a:2:{i:0;R:33635;i:1;R:33560;}s:35:"1222:diary_entry.no_such_entry.body";a:2:{i:0;R:33635;i:1;R:33560;}s:38:"1222:diary_entry.diary_entry.posted_by";a:2:{i:0;R:33635;i:1;R:33560;}s:41:"1222:diary_entry.diary_entry.comment_link";a:2:{i:0;R:33635;i:1;R:33560;}s:39:"1222:diary_entry.diary_entry.reply_link";a:2:{i:0;R:33635;i:1;R:33560;}s:42:"1222:diary_entry.diary_entry.comment_count";a:2:{i:0;R:33635;i:1;R:33560;}s:38:"1222:diary_entry.diary_entry.edit_link";a:2:{i:0;R:33635;i:1;R:33560;}s:38:"1222:diary_entry.diary_entry.hide_link";a:2:{i:0;R:33635;i:1;R:33560;}s:36:"1222:diary_entry.diary_entry.confirm";a:2:{i:0;R:33635;i:1;R:33560;}s:43:"1222:diary_entry.diary_comment.comment_from";a:2:{i:0;R:33635;i:1;R:33560;}s:40:"1222:diary_entry.diary_comment.hide_link";a:2:{i:0;R:33635;i:1;R:33560;}s:38:"1222:diary_entry.diary_comment.confirm";a:2:{i:0;R:33635;i:1;R:33560;}s:34:"1222:diary_entry.location.location";a:2:{i:0;R:33635;i:1;R:33560;}s:30:"1222:diary_entry.location.view";a:2:{i:0;R:33635;i:1;R:33560;}s:30:"1222:diary_entry.location.edit";a:2:{i:0;R:33635;i:1;R:33560;}s:32:"1222:diary_entry.feed.user.title";a:2:{i:0;R:33635;i:1;R:33560;}s:38:"1222:diary_entry.feed.user.description";a:2:{i:0;R:33635;i:1;R:33560;}s:36:"1222:diary_entry.feed.language.title";a:2:{i:0;R:33635;i:1;R:33560;}s:42:"1222:diary_entry.feed.language.description";a:2:{i:0;R:33635;i:1;R:33560;}s:31:"1222:diary_entry.feed.all.title";a:2:{i:0;R:33635;i:1;R:33560;}s:37:"1222:diary_entry.feed.all.description";a:2:{i:0;R:33635;i:1;R:33560;}s:42:"1222:diary_entry.comments.has_commented_on";a:2:{i:0;R:33635;i:1;R:33560;}s:30:"1222:diary_entry.comments.post";a:2:{i:0;R:33635;i:1;R:33560;}s:30:"1222:diary_entry.comments.when";a:2:{i:0;R:33635;i:1;R:33560;}s:33:"1222:diary_entry.comments.comment";a:2:{i:0;R:33635;i:1;R:33560;}s:29:"1222:diary_entry.comments.ago";a:2:{i:0;R:33635;i:1;R:33560;}s:40:"1222:diary_entry.comments.newer_comments";a:2:{i:0;R:33635;i:1;R:33560;}s:40:"1222:diary_entry.comments.older_comments";a:2:{i:0;R:33635;i:1;R:33560;}s:32:"1222:export.start.area_to_export";a:2:{i:0;R:33635;i:1;R:33560;}s:33:"1222:export.start.manually_select";a:2:{i:0;R:33635;i:1;R:33560;}s:34:"1222:export.start.format_to_export";a:2:{i:0;R:33635;i:1;R:33560;}s:30:"1222:export.start.osm_xml_data";a:2:{i:0;R:33635;i:1;R:33560;}s:27:"1222:export.start.map_image";a:2:{i:0;R:33635;i:1;R:33560;}s:33:"1222:export.start.embeddable_html";a:2:{i:0;R:33635;i:1;R:33560;}s:25:"1222:export.start.licence";a:2:{i:0;R:33635;i:1;R:33560;}s:32:"1222:export.start.export_details";a:2:{i:0;R:33635;i:1;R:33560;}s:35:"1222:export.start.too_large.heading";a:2:{i:0;R:33635;i:1;R:33560;}s:32:"1222:export.start.too_large.body";a:2:{i:0;R:33635;i:1;R:33560;}s:25:"1222:export.start.options";a:2:{i:0;R:33635;i:1;R:33560;}s:24:"1222:export.start.format";a:2:{i:0;R:33635;i:1;R:33560;}s:23:"1222:export.start.scale";a:2:{i:0;R:33635;i:1;R:33560;}s:21:"1222:export.start.max";a:2:{i:0;R:33635;i:1;R:33560;}s:28:"1222:export.start.image_size";a:2:{i:0;R:33635;i:1;R:33560;}s:22:"1222:export.start.zoom";a:2:{i:0;R:33635;i:1;R:33560;}s:28:"1222:export.start.add_marker";a:2:{i:0;R:33635;i:1;R:33560;}s:26:"1222:export.start.latitude";a:2:{i:0;R:33635;i:1;R:33560;}s:27:"1222:export.start.longitude";a:2:{i:0;R:33635;i:1;R:33560;}s:24:"1222:export.start.output";a:2:{i:0;R:33635;i:1;R:33560;}s:28:"1222:export.start.paste_html";a:2:{i:0;R:33635;i:1;R:33560;}s:31:"1222:export.start.export_button";a:2:{i:0;R:33635;i:1;R:33560;}s:28:"1222:export.start_rjs.export";a:2:{i:0;R:33635;i:1;R:33560;}s:32:"1222:export.start_rjs.drag_a_box";a:2:{i:0;R:33635;i:1;R:33560;}s:37:"1222:export.start_rjs.manually_select";a:2:{i:0;R:33635;i:1;R:33560;}s:38:"1222:export.start_rjs.click_add_marker";a:2:{i:0;R:33635;i:1;R:33560;}s:35:"1222:export.start_rjs.change_marker";a:2:{i:0;R:33635;i:1;R:33560;}s:32:"1222:export.start_rjs.add_marker";a:2:{i:0;R:33635;i:1;R:33560;}s:37:"1222:export.start_rjs.view_larger_map";a:2:{i:0;R:33635;i:1;R:33560;}s:33:"1222:geocoder.search.title.latlon";a:2:{i:0;R:33635;i:1;R:33560;}s:38:"1222:geocoder.search.title.us_postcode";a:2:{i:0;R:33635;i:1;R:33560;}s:38:"1222:geocoder.search.title.uk_postcode";a:2:{i:0;R:33635;i:1;R:33560;}s:38:"1222:geocoder.search.title.ca_postcode";a:2:{i:0;R:33635;i:1;R:33560;}s:41:"1222:geocoder.search.title.osm_namefinder";a:2:{i:0;R:33635;i:1;R:33560;}s:40:"1222:geocoder.search.title.osm_nominatim";a:2:{i:0;R:33635;i:1;R:33560;}s:35:"1222:geocoder.search.title.geonames";a:2:{i:0;R:33635;i:1;R:33560;}s:42:"1222:geocoder.search_osm_namefinder.prefix";a:2:{i:0;R:33635;i:1;R:33560;}s:48:"1222:geocoder.search_osm_namefinder.suffix_place";a:2:{i:0;R:33635;i:1;R:33560;}s:49:"1222:geocoder.search_osm_namefinder.suffix_parent";a:2:{i:0;R:33635;i:1;R:33560;}s:49:"1222:geocoder.search_osm_namefinder.suffix_suburb";a:2:{i:0;R:33635;i:1;R:33560;}s:48:"1222:geocoder.search_osm_nominatim.prefix_format";a:2:{i:0;R:33635;i:1;R:33560;}s:59:"1222:geocoder.search_osm_nominatim.prefix.aeroway.aerodrome";a:2:{i:0;R:33635;i:1;R:33560;}s:55:"1222:geocoder.search_osm_nominatim.prefix.aeroway.apron";a:2:{i:0;R:33635;i:1;R:33560;}s:54:"1222:geocoder.search_osm_nominatim.prefix.aeroway.gate";a:2:{i:0;R:33635;i:1;R:33560;}s:57:"1222:geocoder.search_osm_nominatim.prefix.aeroway.helipad";a:2:{i:0;R:33635;i:1;R:33560;}s:56:"1222:geocoder.search_osm_nominatim.prefix.aeroway.runway";a:2:{i:0;R:33635;i:1;R:33560;}s:57:"1222:geocoder.search_osm_nominatim.prefix.aeroway.taxiway";a:2:{i:0;R:33635;i:1;R:33560;}s:58:"1222:geocoder.search_osm_nominatim.prefix.aeroway.terminal";a:2:{i:0;R:33635;i:1;R:33560;}s:57:"1222:geocoder.search_osm_nominatim.prefix.amenity.airport";a:2:{i:0;R:33635;i:1;R:33560;}s:61:"1222:geocoder.search_osm_nominatim.prefix.amenity.arts_centre";a:2:{i:0;R:33635;i:1;R:33560;}s:57:"1222:geocoder.search_osm_nominatim.prefix.amenity.artwork";a:2:{i:0;R:33635;i:1;R:33560;}s:53:"1222:geocoder.search_osm_nominatim.prefix.amenity.atm";a:2:{i:0;R:33635;i:1;R:33560;}s:60:"1222:geocoder.search_osm_nominatim.prefix.amenity.auditorium";a:2:{i:0;R:33635;i:1;R:33560;}s:54:"1222:geocoder.search_osm_nominatim.prefix.amenity.bank";a:2:{i:0;R:33635;i:1;R:33560;}s:53:"1222:geocoder.search_osm_nominatim.prefix.amenity.bar";a:2:{i:0;R:33635;i:1;R:33560;}s:53:"1222:geocoder.search_osm_nominatim.prefix.amenity.bbq";a:2:{i:0;R:33635;i:1;R:33560;}s:55:"1222:geocoder.search_osm_nominatim.prefix.amenity.bench";a:2:{i:0;R:33635;i:1;R:33560;}s:65:"1222:geocoder.search_osm_nominatim.prefix.amenity.bicycle_parking";a:2:{i:0;R:33635;i:1;R:33560;}s:64:"1222:geocoder.search_osm_nominatim.prefix.amenity.bicycle_rental";a:2:{i:0;R:33635;i:1;R:33560;}s:60:"1222:geocoder.search_osm_nominatim.prefix.amenity.biergarten";a:2:{i:0;R:33635;i:1;R:33560;}s:57:"1222:geocoder.search_osm_nominatim.prefix.amenity.brothel";a:2:{i:0;R:33635;i:1;R:33560;}s:66:"1222:geocoder.search_osm_nominatim.prefix.amenity.bureau_de_change";a:2:{i:0;R:33635;i:1;R:33560;}s:61:"1222:geocoder.search_osm_nominatim.prefix.amenity.bus_station";a:2:{i:0;R:33635;i:1;R:33560;}s:54:"1222:geocoder.search_osm_nominatim.prefix.amenity.cafe";a:2:{i:0;R:33635;i:1;R:33560;}s:60:"1222:geocoder.search_osm_nominatim.prefix.amenity.car_rental";a:2:{i:0;R:33635;i:1;R:33560;}s:61:"1222:geocoder.search_osm_nominatim.prefix.amenity.car_sharing";a:2:{i:0;R:33635;i:1;R:33560;}s:58:"1222:geocoder.search_osm_nominatim.prefix.amenity.car_wash";a:2:{i:0;R:33635;i:1;R:33560;}s:56:"1222:geocoder.search_osm_nominatim.prefix.amenity.casino";a:2:{i:0;R:33635;i:1;R:33560;}s:66:"1222:geocoder.search_osm_nominatim.prefix.amenity.charging_station";a:2:{i:0;R:33635;i:1;R:33560;}s:56:"1222:geocoder.search_osm_nominatim.prefix.amenity.cinema";a:2:{i:0;R:33635;i:1;R:33560;}s:56:"1222:geocoder.search_osm_nominatim.prefix.amenity.clinic";a:2:{i:0;R:33635;i:1;R:33560;}s:54:"1222:geocoder.search_osm_nominatim.prefix.amenity.club";a:2:{i:0;R:33635;i:1;R:33560;}s:57:"1222:geocoder.search_osm_nominatim.prefix.amenity.college";a:2:{i:0;R:33635;i:1;R:33560;}s:66:"1222:geocoder.search_osm_nominatim.prefix.amenity.community_centre";a:2:{i:0;R:33635;i:1;R:33560;}s:60:"1222:geocoder.search_osm_nominatim.prefix.amenity.courthouse";a:2:{i:0;R:33635;i:1;R:33560;}s:61:"1222:geocoder.search_osm_nominatim.prefix.amenity.crematorium";a:2:{i:0;R:33635;i:1;R:33560;}s:57:"1222:geocoder.search_osm_nominatim.prefix.amenity.dentist";a:2:{i:0;R:33635;i:1;R:33560;}s:57:"1222:geocoder.search_osm_nominatim.prefix.amenity.doctors";a:2:{i:0;R:33635;i:1;R:33560;}s:59:"1222:geocoder.search_osm_nominatim.prefix.amenity.dormitory";a:2:{i:0;R:33635;i:1;R:33560;}s:64:"1222:geocoder.search_osm_nominatim.prefix.amenity.drinking_water";a:2:{i:0;R:33635;i:1;R:33560;}s:64:"1222:geocoder.search_osm_nominatim.prefix.amenity.driving_school";a:2:{i:0;R:33635;i:1;R:33560;}s:57:"1222:geocoder.search_osm_nominatim.prefix.amenity.embassy";a:2:{i:0;R:33635;i:1;R:33560;}s:65:"1222:geocoder.search_osm_nominatim.prefix.amenity.emergency_phone";a:2:{i:0;R:33635;i:1;R:33560;}s:59:"1222:geocoder.search_osm_nominatim.prefix.amenity.fast_food";a:2:{i:0;R:33635;i:1;R:33560;}s:64:"1222:geocoder.search_osm_nominatim.prefix.amenity.ferry_terminal";a:2:{i:0;R:33635;i:1;R:33560;}s:62:"1222:geocoder.search_osm_nominatim.prefix.amenity.fire_hydrant";a:2:{i:0;R:33635;i:1;R:33560;}s:62:"1222:geocoder.search_osm_nominatim.prefix.amenity.fire_station";a:2:{i:0;R:33635;i:1;R:33560;}s:60:"1222:geocoder.search_osm_nominatim.prefix.amenity.food_court";a:2:{i:0;R:33635;i:1;R:33560;}s:58:"1222:geocoder.search_osm_nominatim.prefix.amenity.fountain";a:2:{i:0;R:33635;i:1;R:33560;}s:54:"1222:geocoder.search_osm_nominatim.prefix.amenity.fuel";a:2:{i:0;R:33635;i:1;R:33560;}s:60:"1222:geocoder.search_osm_nominatim.prefix.amenity.grave_yard";a:2:{i:0;R:33635;i:1;R:33560;}s:53:"1222:geocoder.search_osm_nominatim.prefix.amenity.gym";a:2:{i:0;R:33635;i:1;R:33560;}s:54:"1222:geocoder.search_osm_nominatim.prefix.amenity.hall";a:2:{i:0;R:33635;i:1;R:33560;}s:63:"1222:geocoder.search_osm_nominatim.prefix.amenity.health_centre";a:2:{i:0;R:33635;i:1;R:33560;}s:58:"1222:geocoder.search_osm_nominatim.prefix.amenity.hospital";a:2:{i:0;R:33635;i:1;R:33560;}s:55:"1222:geocoder.search_osm_nominatim.prefix.amenity.hotel";a:2:{i:0;R:33635;i:1;R:33560;}s:63:"1222:geocoder.search_osm_nominatim.prefix.amenity.hunting_stand";a:2:{i:0;R:33635;i:1;R:33560;}s:59:"1222:geocoder.search_osm_nominatim.prefix.amenity.ice_cream";a:2:{i:0;R:33635;i:1;R:33560;}s:62:"1222:geocoder.search_osm_nominatim.prefix.amenity.kindergarten";a:2:{i:0;R:33635;i:1;R:33560;}s:57:"1222:geocoder.search_osm_nominatim.prefix.amenity.library";a:2:{i:0;R:33635;i:1;R:33560;}s:56:"1222:geocoder.search_osm_nominatim.prefix.amenity.market";a:2:{i:0;R:33635;i:1;R:33560;}s:61:"1222:geocoder.search_osm_nominatim.prefix.amenity.marketplace";a:2:{i:0;R:33635;i:1;R:33560;}s:65:"1222:geocoder.search_osm_nominatim.prefix.amenity.mountain_rescue";a:2:{i:0;R:33635;i:1;R:33560;}s:59:"1222:geocoder.search_osm_nominatim.prefix.amenity.nightclub";a:2:{i:0;R:33635;i:1;R:33560;}s:57:"1222:geocoder.search_osm_nominatim.prefix.amenity.nursery";a:2:{i:0;R:33635;i:1;R:33560;}s:62:"1222:geocoder.search_osm_nominatim.prefix.amenity.nursing_home";a:2:{i:0;R:33635;i:1;R:33560;}s:56:"1222:geocoder.search_osm_nominatim.prefix.amenity.office";a:2:{i:0;R:33635;i:1;R:33560;}s:54:"1222:geocoder.search_osm_nominatim.prefix.amenity.park";a:2:{i:0;R:33635;i:1;R:33560;}s:57:"1222:geocoder.search_osm_nominatim.prefix.amenity.parking";a:2:{i:0;R:33635;i:1;R:33560;}s:58:"1222:geocoder.search_osm_nominatim.prefix.amenity.pharmacy";a:2:{i:0;R:33635;i:1;R:33560;}s:66:"1222:geocoder.search_osm_nominatim.prefix.amenity.place_of_worship";a:2:{i:0;R:33635;i:1;R:33560;}s:56:"1222:geocoder.search_osm_nominatim.prefix.amenity.police";a:2:{i:0;R:33635;i:1;R:33560;}s:58:"1222:geocoder.search_osm_nominatim.prefix.amenity.post_box";a:2:{i:0;R:33635;i:1;R:33560;}s:61:"1222:geocoder.search_osm_nominatim.prefix.amenity.post_office";a:2:{i:0;R:33635;i:1;R:33560;}s:59:"1222:geocoder.search_osm_nominatim.prefix.amenity.preschool";a:2:{i:0;R:33635;i:1;R:33560;}s:56:"1222:geocoder.search_osm_nominatim.prefix.amenity.prison";a:2:{i:0;R:33635;i:1;R:33560;}s:53:"1222:geocoder.search_osm_nominatim.prefix.amenity.pub";a:2:{i:0;R:33635;i:1;R:33560;}s:65:"1222:geocoder.search_osm_nominatim.prefix.amenity.public_building";a:2:{i:0;R:33635;i:1;R:33560;}s:63:"1222:geocoder.search_osm_nominatim.prefix.amenity.public_market";a:2:{i:0;R:33635;i:1;R:33560;}s:64:"1222:geocoder.search_osm_nominatim.prefix.amenity.reception_area";a:2:{i:0;R:33635;i:1;R:33560;}s:59:"1222:geocoder.search_osm_nominatim.prefix.amenity.recycling";a:2:{i:0;R:33635;i:1;R:33560;}s:60:"1222:geocoder.search_osm_nominatim.prefix.amenity.restaurant";a:2:{i:0;R:33635;i:1;R:33560;}s:65:"1222:geocoder.search_osm_nominatim.prefix.amenity.retirement_home";a:2:{i:0;R:33635;i:1;R:33560;}s:55:"1222:geocoder.search_osm_nominatim.prefix.amenity.sauna";a:2:{i:0;R:33635;i:1;R:33560;}s:56:"1222:geocoder.search_osm_nominatim.prefix.amenity.school";a:2:{i:0;R:33635;i:1;R:33560;}s:57:"1222:geocoder.search_osm_nominatim.prefix.amenity.shelter";a:2:{i:0;R:33635;i:1;R:33560;}s:54:"1222:geocoder.search_osm_nominatim.prefix.amenity.shop";a:2:{i:0;R:33635;i:1;R:33560;}s:58:"1222:geocoder.search_osm_nominatim.prefix.amenity.shopping";a:2:{i:0;R:33635;i:1;R:33560;}s:56:"1222:geocoder.search_osm_nominatim.prefix.amenity.shower";a:2:{i:0;R:33635;i:1;R:33560;}s:63:"1222:geocoder.search_osm_nominatim.prefix.amenity.social_centre";a:2:{i:0;R:33635;i:1;R:33560;}s:61:"1222:geocoder.search_osm_nominatim.prefix.amenity.social_club";a:2:{i:0;R:33635;i:1;R:33560;}s:56:"1222:geocoder.search_osm_nominatim.prefix.amenity.studio";a:2:{i:0;R:33635;i:1;R:33560;}s:61:"1222:geocoder.search_osm_nominatim.prefix.amenity.supermarket";a:2:{i:0;R:33635;i:1;R:33560;}s:63:"1222:geocoder.search_osm_nominatim.prefix.amenity.swimming_pool";a:2:{i:0;R:33635;i:1;R:33560;}s:54:"1222:geocoder.search_osm_nominatim.prefix.amenity.taxi";a:2:{i:0;R:33635;i:1;R:33560;}s:59:"1222:geocoder.search_osm_nominatim.prefix.amenity.telephone";a:2:{i:0;R:33635;i:1;R:33560;}s:57:"1222:geocoder.search_osm_nominatim.prefix.amenity.theatre";a:2:{i:0;R:33635;i:1;R:33560;}s:57:"1222:geocoder.search_osm_nominatim.prefix.amenity.toilets";a:2:{i:0;R:33635;i:1;R:33560;}s:58:"1222:geocoder.search_osm_nominatim.prefix.amenity.townhall";a:2:{i:0;R:33635;i:1;R:33560;}s:60:"1222:geocoder.search_osm_nominatim.prefix.amenity.university";a:2:{i:0;R:33635;i:1;R:33560;}s:65:"1222:geocoder.search_osm_nominatim.prefix.amenity.vending_machine";a:2:{i:0;R:33635;i:1;R:33560;}s:60:"1222:geocoder.search_osm_nominatim.prefix.amenity.veterinary";a:2:{i:0;R:33635;i:1;R:33560;}s:62:"1222:geocoder.search_osm_nominatim.prefix.amenity.village_hall";a:2:{i:0;R:33635;i:1;R:33560;}s:62:"1222:geocoder.search_osm_nominatim.prefix.amenity.waste_basket";a:2:{i:0;R:33635;i:1;R:33560;}s:54:"1222:geocoder.search_osm_nominatim.prefix.amenity.wifi";a:2:{i:0;R:33635;i:1;R:33560;}s:54:"1222:geocoder.search_osm_nominatim.prefix.amenity.wlan";a:2:{i:0;R:33635;i:1;R:33560;}s:62:"1222:geocoder.search_osm_nominatim.prefix.amenity.youth_centre";a:2:{i:0;R:33635;i:1;R:33560;}s:65:"1222:geocoder.search_osm_nominatim.prefix.boundary.administrative";a:2:{i:0;R:33635;i:1;R:33560;}s:57:"1222:geocoder.search_osm_nominatim.prefix.boundary.census";a:2:{i:0;R:33635;i:1;R:33560;}s:64:"1222:geocoder.search_osm_nominatim.prefix.boundary.national_park";a:2:{i:0;R:33635;i:1;R:33560;}s:65:"1222:geocoder.search_osm_nominatim.prefix.boundary.protected_area";a:2:{i:0;R:33635;i:1;R:33560;}s:57:"1222:geocoder.search_osm_nominatim.prefix.bridge.aqueduct";a:2:{i:0;R:33635;i:1;R:33560;}s:59:"1222:geocoder.search_osm_nominatim.prefix.bridge.suspension";a:2:{i:0;R:33635;i:1;R:33560;}s:54:"1222:geocoder.search_osm_nominatim.prefix.bridge.swing";a:2:{i:0;R:33635;i:1;R:33560;}s:56:"1222:geocoder.search_osm_nominatim.prefix.bridge.viaduct";a:2:{i:0;R:33635;i:1;R:33560;}s:52:"1222:geocoder.search_osm_nominatim.prefix.bridge.yes";a:2:{i:0;R:33635;i:1;R:33560;}s:54:"1222:geocoder.search_osm_nominatim.prefix.building.yes";a:2:{i:0;R:33635;i:1;R:33560;}s:59:"1222:geocoder.search_osm_nominatim.prefix.highway.bridleway";a:2:{i:0;R:33635;i:1;R:33560;}s:62:"1222:geocoder.search_osm_nominatim.prefix.highway.bus_guideway";a:2:{i:0;R:33635;i:1;R:33560;}s:58:"1222:geocoder.search_osm_nominatim.prefix.highway.bus_stop";a:2:{i:0;R:33635;i:1;R:33560;}s:55:"1222:geocoder.search_osm_nominatim.prefix.highway.byway";a:2:{i:0;R:33635;i:1;R:33560;}s:62:"1222:geocoder.search_osm_nominatim.prefix.highway.construction";a:2:{i:0;R:33635;i:1;R:33560;}s:58:"1222:geocoder.search_osm_nominatim.prefix.highway.cycleway";a:2:{i:0;R:33635;i:1;R:33560;}s:72:"1222:geocoder.search_osm_nominatim.prefix.highway.emergency_access_point";a:2:{i:0;R:33635;i:1;R:33560;}s:57:"1222:geocoder.search_osm_nominatim.prefix.highway.footway";a:2:{i:0;R:33635;i:1;R:33560;}s:54:"1222:geocoder.search_osm_nominatim.prefix.highway.ford";a:2:{i:0;R:33635;i:1;R:33560;}s:63:"1222:geocoder.search_osm_nominatim.prefix.highway.living_street";a:2:{i:0;R:33635;i:1;R:33560;}s:59:"1222:geocoder.search_osm_nominatim.prefix.highway.milestone";a:2:{i:0;R:33635;i:1;R:33560;}s:55:"1222:geocoder.search_osm_nominatim.prefix.highway.minor";a:2:{i:0;R:33635;i:1;R:33560;}s:58:"1222:geocoder.search_osm_nominatim.prefix.highway.motorway";a:2:{i:0;R:33635;i:1;R:33560;}s:67:"1222:geocoder.search_osm_nominatim.prefix.highway.motorway_junction";a:2:{i:0;R:33635;i:1;R:33560;}s:63:"1222:geocoder.search_osm_nominatim.prefix.highway.motorway_link";a:2:{i:0;R:33635;i:1;R:33560;}s:54:"1222:geocoder.search_osm_nominatim.prefix.highway.path";a:2:{i:0;R:33635;i:1;R:33560;}s:60:"1222:geocoder.search_osm_nominatim.prefix.highway.pedestrian";a:2:{i:0;R:33635;i:1;R:33560;}s:58:"1222:geocoder.search_osm_nominatim.prefix.highway.platform";a:2:{i:0;R:33635;i:1;R:33560;}s:57:"1222:geocoder.search_osm_nominatim.prefix.highway.primary";a:2:{i:0;R:33635;i:1;R:33560;}s:62:"1222:geocoder.search_osm_nominatim.prefix.highway.primary_link";a:2:{i:0;R:33635;i:1;R:33560;}s:57:"1222:geocoder.search_osm_nominatim.prefix.highway.raceway";a:2:{i:0;R:33635;i:1;R:33560;}s:61:"1222:geocoder.search_osm_nominatim.prefix.highway.residential";a:2:{i:0;R:33635;i:1;R:33560;}s:59:"1222:geocoder.search_osm_nominatim.prefix.highway.rest_area";a:2:{i:0;R:33635;i:1;R:33560;}s:54:"1222:geocoder.search_osm_nominatim.prefix.highway.road";a:2:{i:0;R:33635;i:1;R:33560;}s:59:"1222:geocoder.search_osm_nominatim.prefix.highway.secondary";a:2:{i:0;R:33635;i:1;R:33560;}s:64:"1222:geocoder.search_osm_nominatim.prefix.highway.secondary_link";a:2:{i:0;R:33635;i:1;R:33560;}s:57:"1222:geocoder.search_osm_nominatim.prefix.highway.service";a:2:{i:0;R:33635;i:1;R:33560;}s:58:"1222:geocoder.search_osm_nominatim.prefix.highway.services";a:2:{i:0;R:33635;i:1;R:33560;}s:62:"1222:geocoder.search_osm_nominatim.prefix.highway.speed_camera";a:2:{i:0;R:33635;i:1;R:33560;}s:55:"1222:geocoder.search_osm_nominatim.prefix.highway.steps";a:2:{i:0;R:33635;i:1;R:33560;}s:55:"1222:geocoder.search_osm_nominatim.prefix.highway.stile";a:2:{i:0;R:33635;i:1;R:33560;}s:58:"1222:geocoder.search_osm_nominatim.prefix.highway.tertiary";a:2:{i:0;R:33635;i:1;R:33560;}s:63:"1222:geocoder.search_osm_nominatim.prefix.highway.tertiary_link";a:2:{i:0;R:33635;i:1;R:33560;}s:55:"1222:geocoder.search_osm_nominatim.prefix.highway.track";a:2:{i:0;R:33635;i:1;R:33560;}s:55:"1222:geocoder.search_osm_nominatim.prefix.highway.trail";a:2:{i:0;R:33635;i:1;R:33560;}s:55:"1222:geocoder.search_osm_nominatim.prefix.highway.trunk";a:2:{i:0;R:33635;i:1;R:33560;}s:60:"1222:geocoder.search_osm_nominatim.prefix.highway.trunk_link";a:2:{i:0;R:33635;i:1;R:33560;}s:62:"1222:geocoder.search_osm_nominatim.prefix.highway.unclassified";a:2:{i:0;R:33635;i:1;R:33560;}s:60:"1222:geocoder.search_osm_nominatim.prefix.highway.unsurfaced";a:2:{i:0;R:33635;i:1;R:33560;}s:70:"1222:geocoder.search_osm_nominatim.prefix.historic.archaeological_site";a:2:{i:0;R:33635;i:1;R:33560;}s:62:"1222:geocoder.search_osm_nominatim.prefix.historic.battlefield";a:2:{i:0;R:33635;i:1;R:33560;}s:65:"1222:geocoder.search_osm_nominatim.prefix.historic.boundary_stone";a:2:{i:0;R:33635;i:1;R:33560;}s:59:"1222:geocoder.search_osm_nominatim.prefix.historic.building";a:2:{i:0;R:33635;i:1;R:33560;}s:57:"1222:geocoder.search_osm_nominatim.prefix.historic.castle";a:2:{i:0;R:33635;i:1;R:33560;}s:57:"1222:geocoder.search_osm_nominatim.prefix.historic.church";a:2:{i:0;R:33635;i:1;R:33560;}s:55:"1222:geocoder.search_osm_nominatim.prefix.historic.fort";a:2:{i:0;R:33635;i:1;R:33560;}s:56:"1222:geocoder.search_osm_nominatim.prefix.historic.house";a:2:{i:0;R:33635;i:1;R:33560;}s:55:"1222:geocoder.search_osm_nominatim.prefix.historic.icon";a:2:{i:0;R:33635;i:1;R:33560;}s:56:"1222:geocoder.search_osm_nominatim.prefix.historic.manor";a:2:{i:0;R:33635;i:1;R:33560;}s:59:"1222:geocoder.search_osm_nominatim.prefix.historic.memorial";a:2:{i:0;R:33635;i:1;R:33560;}s:55:"1222:geocoder.search_osm_nominatim.prefix.historic.mine";a:2:{i:0;R:33635;i:1;R:33560;}s:59:"1222:geocoder.search_osm_nominatim.prefix.historic.monument";a:2:{i:0;R:33635;i:1;R:33560;}s:57:"1222:geocoder.search_osm_nominatim.prefix.historic.museum";a:2:{i:0;R:33635;i:1;R:33560;}s:56:"1222:geocoder.search_osm_nominatim.prefix.historic.ruins";a:2:{i:0;R:33635;i:1;R:33560;}s:56:"1222:geocoder.search_osm_nominatim.prefix.historic.tower";a:2:{i:0;R:33635;i:1;R:33560;}s:64:"1222:geocoder.search_osm_nominatim.prefix.historic.wayside_cross";a:2:{i:0;R:33635;i:1;R:33560;}s:65:"1222:geocoder.search_osm_nominatim.prefix.historic.wayside_shrine";a:2:{i:0;R:33635;i:1;R:33560;}s:56:"1222:geocoder.search_osm_nominatim.prefix.historic.wreck";a:2:{i:0;R:33635;i:1;R:33560;}s:60:"1222:geocoder.search_osm_nominatim.prefix.landuse.allotments";a:2:{i:0;R:33635;i:1;R:33560;}s:55:"1222:geocoder.search_osm_nominatim.prefix.landuse.basin";a:2:{i:0;R:33635;i:1;R:33560;}s:60:"1222:geocoder.search_osm_nominatim.prefix.landuse.brownfield";a:2:{i:0;R:33635;i:1;R:33560;}s:58:"1222:geocoder.search_osm_nominatim.prefix.landuse.cemetery";a:2:{i:0;R:33635;i:1;R:33560;}s:60:"1222:geocoder.search_osm_nominatim.prefix.landuse.commercial";a:2:{i:0;R:33635;i:1;R:33560;}s:62:"1222:geocoder.search_osm_nominatim.prefix.landuse.conservation";a:2:{i:0;R:33635;i:1;R:33560;}s:62:"1222:geocoder.search_osm_nominatim.prefix.landuse.construction";a:2:{i:0;R:33635;i:1;R:33560;}s:54:"1222:geocoder.search_osm_nominatim.prefix.landuse.farm";a:2:{i:0;R:33635;i:1;R:33560;}s:58:"1222:geocoder.search_osm_nominatim.prefix.landuse.farmland";a:2:{i:0;R:33635;i:1;R:33560;}s:58:"1222:geocoder.search_osm_nominatim.prefix.landuse.farmyard";a:2:{i:0;R:33635;i:1;R:33560;}s:56:"1222:geocoder.search_osm_nominatim.prefix.landuse.forest";a:2:{i:0;R:33635;i:1;R:33560;}s:57:"1222:geocoder.search_osm_nominatim.prefix.landuse.garages";a:2:{i:0;R:33635;i:1;R:33560;}s:55:"1222:geocoder.search_osm_nominatim.prefix.landuse.grass";a:2:{i:0;R:33635;i:1;R:33560;}s:60:"1222:geocoder.search_osm_nominatim.prefix.landuse.greenfield";a:2:{i:0;R:33635;i:1;R:33560;}s:60:"1222:geocoder.search_osm_nominatim.prefix.landuse.industrial";a:2:{i:0;R:33635;i:1;R:33560;}s:58:"1222:geocoder.search_osm_nominatim.prefix.landuse.landfill";a:2:{i:0;R:33635;i:1;R:33560;}s:56:"1222:geocoder.search_osm_nominatim.prefix.landuse.meadow";a:2:{i:0;R:33635;i:1;R:33560;}s:58:"1222:geocoder.search_osm_nominatim.prefix.landuse.military";a:2:{i:0;R:33635;i:1;R:33560;}s:54:"1222:geocoder.search_osm_nominatim.prefix.landuse.mine";a:2:{i:0;R:33635;i:1;R:33560;}s:57:"1222:geocoder.search_osm_nominatim.prefix.landuse.orchard";a:2:{i:0;R:33635;i:1;R:33560;}s:64:"1222:geocoder.search_osm_nominatim.prefix.landuse.nature_reserve";a:2:{i:0;R:33635;i:1;R:33560;}s:54:"1222:geocoder.search_osm_nominatim.prefix.landuse.park";a:2:{i:0;R:33635;i:1;R:33560;}s:55:"1222:geocoder.search_osm_nominatim.prefix.landuse.piste";a:2:{i:0;R:33635;i:1;R:33560;}s:56:"1222:geocoder.search_osm_nominatim.prefix.landuse.quarry";a:2:{i:0;R:33635;i:1;R:33560;}s:57:"1222:geocoder.search_osm_nominatim.prefix.landuse.railway";a:2:{i:0;R:33635;i:1;R:33560;}s:67:"1222:geocoder.search_osm_nominatim.prefix.landuse.recreation_ground";a:2:{i:0;R:33635;i:1;R:33560;}s:59:"1222:geocoder.search_osm_nominatim.prefix.landuse.reservoir";a:2:{i:0;R:33635;i:1;R:33560;}s:69:"1222:geocoder.search_osm_nominatim.prefix.landuse.reservoir_watershed";a:2:{i:0;R:33635;i:1;R:33560;}s:61:"1222:geocoder.search_osm_nominatim.prefix.landuse.residential";a:2:{i:0;R:33635;i:1;R:33560;}s:56:"1222:geocoder.search_osm_nominatim.prefix.landuse.retail";a:2:{i:0;R:33635;i:1;R:33560;}s:54:"1222:geocoder.search_osm_nominatim.prefix.landuse.road";a:2:{i:0;R:33635;i:1;R:33560;}s:63:"1222:geocoder.search_osm_nominatim.prefix.landuse.village_green";a:2:{i:0;R:33635;i:1;R:33560;}s:58:"1222:geocoder.search_osm_nominatim.prefix.landuse.vineyard";a:2:{i:0;R:33635;i:1;R:33560;}s:57:"1222:geocoder.search_osm_nominatim.prefix.landuse.wetland";a:2:{i:0;R:33635;i:1;R:33560;}s:54:"1222:geocoder.search_osm_nominatim.prefix.landuse.wood";a:2:{i:0;R:33635;i:1;R:33560;}s:62:"1222:geocoder.search_osm_nominatim.prefix.leisure.beach_resort";a:2:{i:0;R:33635;i:1;R:33560;}s:59:"1222:geocoder.search_osm_nominatim.prefix.leisure.bird_hide";a:2:{i:0;R:33635;i:1;R:33560;}s:56:"1222:geocoder.search_osm_nominatim.prefix.leisure.common";a:2:{i:0;R:33635;i:1;R:33560;}s:57:"1222:geocoder.search_osm_nominatim.prefix.leisure.fishing";a:2:{i:0;R:33635;i:1;R:33560;}s:65:"1222:geocoder.search_osm_nominatim.prefix.leisure.fitness_station";a:2:{i:0;R:33635;i:1;R:33560;}s:56:"1222:geocoder.search_osm_nominatim.prefix.leisure.garden";a:2:{i:0;R:33635;i:1;R:33560;}s:61:"1222:geocoder.search_osm_nominatim.prefix.leisure.golf_course";a:2:{i:0;R:33635;i:1;R:33560;}s:58:"1222:geocoder.search_osm_nominatim.prefix.leisure.ice_rink";a:2:{i:0;R:33635;i:1;R:33560;}s:56:"1222:geocoder.search_osm_nominatim.prefix.leisure.marina";a:2:{i:0;R:33635;i:1;R:33560;}s:64:"1222:geocoder.search_osm_nominatim.prefix.leisure.miniature_golf";a:2:{i:0;R:33635;i:1;R:33560;}s:64:"1222:geocoder.search_osm_nominatim.prefix.leisure.nature_reserve";a:2:{i:0;R:33635;i:1;R:33560;}s:54:"1222:geocoder.search_osm_nominatim.prefix.leisure.park";a:2:{i:0;R:33635;i:1;R:33560;}s:55:"1222:geocoder.search_osm_nominatim.prefix.leisure.pitch";a:2:{i:0;R:33635;i:1;R:33560;}s:60:"1222:geocoder.search_osm_nominatim.prefix.leisure.playground";a:2:{i:0;R:33635;i:1;R:33560;}s:67:"1222:geocoder.search_osm_nominatim.prefix.leisure.recreation_ground";a:2:{i:0;R:33635;i:1;R:33560;}s:55:"1222:geocoder.search_osm_nominatim.prefix.leisure.sauna";a:2:{i:0;R:33635;i:1;R:33560;}s:57:"1222:geocoder.search_osm_nominatim.prefix.leisure.slipway";a:2:{i:0;R:33635;i:1;R:33560;}s:63:"1222:geocoder.search_osm_nominatim.prefix.leisure.sports_centre";a:2:{i:0;R:33635;i:1;R:33560;}s:57:"1222:geocoder.search_osm_nominatim.prefix.leisure.stadium";a:2:{i:0;R:33635;i:1;R:33560;}s:63:"1222:geocoder.search_osm_nominatim.prefix.leisure.swimming_pool";a:2:{i:0;R:33635;i:1;R:33560;}s:55:"1222:geocoder.search_osm_nominatim.prefix.leisure.track";a:2:{i:0;R:33635;i:1;R:33560;}s:60:"1222:geocoder.search_osm_nominatim.prefix.leisure.water_park";a:2:{i:0;R:33635;i:1;R:33560;}s:59:"1222:geocoder.search_osm_nominatim.prefix.military.airfield";a:2:{i:0;R:33635;i:1;R:33560;}s:59:"1222:geocoder.search_osm_nominatim.prefix.military.barracks";a:2:{i:0;R:33635;i:1;R:33560;}s:57:"1222:geocoder.search_osm_nominatim.prefix.military.bunker";a:2:{i:0;R:33635;i:1;R:33560;}s:53:"1222:geocoder.search_osm_nominatim.prefix.natural.bay";a:2:{i:0;R:33635;i:1;R:33560;}s:55:"1222:geocoder.search_osm_nominatim.prefix.natural.beach";a:2:{i:0;R:33635;i:1;R:33560;}s:54:"1222:geocoder.search_osm_nominatim.prefix.natural.cape";a:2:{i:0;R:33635;i:1;R:33560;}s:63:"1222:geocoder.search_osm_nominatim.prefix.natural.cave_entrance";a:2:{i:0;R:33635;i:1;R:33560;}s:57:"1222:geocoder.search_osm_nominatim.prefix.natural.channel";a:2:{i:0;R:33635;i:1;R:33560;}s:55:"1222:geocoder.search_osm_nominatim.prefix.natural.cliff";a:2:{i:0;R:33635;i:1;R:33560;}s:56:"1222:geocoder.search_osm_nominatim.prefix.natural.crater";a:2:{i:0;R:33635;i:1;R:33560;}s:54:"1222:geocoder.search_osm_nominatim.prefix.natural.dune";a:2:{i:0;R:33635;i:1;R:33560;}s:57:"1222:geocoder.search_osm_nominatim.prefix.natural.feature";a:2:{i:0;R:33635;i:1;R:33560;}s:54:"1222:geocoder.search_osm_nominatim.prefix.natural.fell";a:2:{i:0;R:33635;i:1;R:33560;}s:55:"1222:geocoder.search_osm_nominatim.prefix.natural.fjord";a:2:{i:0;R:33635;i:1;R:33560;}s:56:"1222:geocoder.search_osm_nominatim.prefix.natural.forest";a:2:{i:0;R:33635;i:1;R:33560;}s:56:"1222:geocoder.search_osm_nominatim.prefix.natural.geyser";a:2:{i:0;R:33635;i:1;R:33560;}s:57:"1222:geocoder.search_osm_nominatim.prefix.natural.glacier";a:2:{i:0;R:33635;i:1;R:33560;}s:55:"1222:geocoder.search_osm_nominatim.prefix.natural.heath";a:2:{i:0;R:33635;i:1;R:33560;}s:54:"1222:geocoder.search_osm_nominatim.prefix.natural.hill";a:2:{i:0;R:33635;i:1;R:33560;}s:56:"1222:geocoder.search_osm_nominatim.prefix.natural.island";a:2:{i:0;R:33635;i:1;R:33560;}s:54:"1222:geocoder.search_osm_nominatim.prefix.natural.land";a:2:{i:0;R:33635;i:1;R:33560;}s:55:"1222:geocoder.search_osm_nominatim.prefix.natural.marsh";a:2:{i:0;R:33635;i:1;R:33560;}s:54:"1222:geocoder.search_osm_nominatim.prefix.natural.moor";a:2:{i:0;R:33635;i:1;R:33560;}s:53:"1222:geocoder.search_osm_nominatim.prefix.natural.mud";a:2:{i:0;R:33635;i:1;R:33560;}s:54:"1222:geocoder.search_osm_nominatim.prefix.natural.peak";a:2:{i:0;R:33635;i:1;R:33560;}s:55:"1222:geocoder.search_osm_nominatim.prefix.natural.point";a:2:{i:0;R:33635;i:1;R:33560;}s:54:"1222:geocoder.search_osm_nominatim.prefix.natural.reef";a:2:{i:0;R:33635;i:1;R:33560;}s:55:"1222:geocoder.search_osm_nominatim.prefix.natural.ridge";a:2:{i:0;R:33635;i:1;R:33560;}s:55:"1222:geocoder.search_osm_nominatim.prefix.natural.river";a:2:{i:0;R:33635;i:1;R:33560;}s:54:"1222:geocoder.search_osm_nominatim.prefix.natural.rock";a:2:{i:0;R:33635;i:1;R:33560;}s:55:"1222:geocoder.search_osm_nominatim.prefix.natural.scree";a:2:{i:0;R:33635;i:1;R:33560;}s:55:"1222:geocoder.search_osm_nominatim.prefix.natural.scrub";a:2:{i:0;R:33635;i:1;R:33560;}s:55:"1222:geocoder.search_osm_nominatim.prefix.natural.shoal";a:2:{i:0;R:33635;i:1;R:33560;}s:56:"1222:geocoder.search_osm_nominatim.prefix.natural.spring";a:2:{i:0;R:33635;i:1;R:33560;}s:55:"1222:geocoder.search_osm_nominatim.prefix.natural.stone";a:2:{i:0;R:33635;i:1;R:33560;}s:56:"1222:geocoder.search_osm_nominatim.prefix.natural.strait";a:2:{i:0;R:33635;i:1;R:33560;}s:54:"1222:geocoder.search_osm_nominatim.prefix.natural.tree";a:2:{i:0;R:33635;i:1;R:33560;}s:56:"1222:geocoder.search_osm_nominatim.prefix.natural.valley";a:2:{i:0;R:33635;i:1;R:33560;}s:57:"1222:geocoder.search_osm_nominatim.prefix.natural.volcano";a:2:{i:0;R:33635;i:1;R:33560;}s:55:"1222:geocoder.search_osm_nominatim.prefix.natural.water";a:2:{i:0;R:33635;i:1;R:33560;}s:57:"1222:geocoder.search_osm_nominatim.prefix.natural.wetland";a:2:{i:0;R:33635;i:1;R:33560;}s:58:"1222:geocoder.search_osm_nominatim.prefix.natural.wetlands";a:2:{i:0;R:33635;i:1;R:33560;}s:54:"1222:geocoder.search_osm_nominatim.prefix.natural.wood";a:2:{i:0;R:33635;i:1;R:33560;}s:59:"1222:geocoder.search_osm_nominatim.prefix.office.accountant";a:2:{i:0;R:33635;i:1;R:33560;}s:58:"1222:geocoder.search_osm_nominatim.prefix.office.architect";a:2:{i:0;R:33635;i:1;R:33560;}s:56:"1222:geocoder.search_osm_nominatim.prefix.office.company";a:2:{i:0;R:33635;i:1;R:33560;}s:66:"1222:geocoder.search_osm_nominatim.prefix.office.employment_agency";a:2:{i:0;R:33635;i:1;R:33560;}s:61:"1222:geocoder.search_osm_nominatim.prefix.office.estate_agent";a:2:{i:0;R:33635;i:1;R:33560;}s:59:"1222:geocoder.search_osm_nominatim.prefix.office.government";a:2:{i:0;R:33635;i:1;R:33560;}s:58:"1222:geocoder.search_osm_nominatim.prefix.office.insurance";a:2:{i:0;R:33635;i:1;R:33560;}s:55:"1222:geocoder.search_osm_nominatim.prefix.office.lawyer";a:2:{i:0;R:33635;i:1;R:33560;}s:52:"1222:geocoder.search_osm_nominatim.prefix.office.ngo";a:2:{i:0;R:33635;i:1;R:33560;}s:66:"1222:geocoder.search_osm_nominatim.prefix.office.telecommunication";a:2:{i:0;R:33635;i:1;R:33560;}s:61:"1222:geocoder.search_osm_nominatim.prefix.office.travel_agent";a:2:{i:0;R:33635;i:1;R:33560;}s:52:"1222:geocoder.search_osm_nominatim.prefix.office.yes";a:2:{i:0;R:33635;i:1;R:33560;}s:55:"1222:geocoder.search_osm_nominatim.prefix.place.airport";a:2:{i:0;R:33635;i:1;R:33560;}s:52:"1222:geocoder.search_osm_nominatim.prefix.place.city";a:2:{i:0;R:33635;i:1;R:33560;}s:55:"1222:geocoder.search_osm_nominatim.prefix.place.country";a:2:{i:0;R:33635;i:1;R:33560;}s:54:"1222:geocoder.search_osm_nominatim.prefix.place.county";a:2:{i:0;R:33635;i:1;R:33560;}s:52:"1222:geocoder.search_osm_nominatim.prefix.place.farm";a:2:{i:0;R:33635;i:1;R:33560;}s:54:"1222:geocoder.search_osm_nominatim.prefix.place.hamlet";a:2:{i:0;R:33635;i:1;R:33560;}s:53:"1222:geocoder.search_osm_nominatim.prefix.place.house";a:2:{i:0;R:33635;i:1;R:33560;}s:54:"1222:geocoder.search_osm_nominatim.prefix.place.houses";a:2:{i:0;R:33635;i:1;R:33560;}s:54:"1222:geocoder.search_osm_nominatim.prefix.place.island";a:2:{i:0;R:33635;i:1;R:33560;}s:53:"1222:geocoder.search_osm_nominatim.prefix.place.islet";a:2:{i:0;R:33635;i:1;R:33560;}s:65:"1222:geocoder.search_osm_nominatim.prefix.place.isolated_dwelling";a:2:{i:0;R:33635;i:1;R:33560;}s:56:"1222:geocoder.search_osm_nominatim.prefix.place.locality";a:2:{i:0;R:33635;i:1;R:33560;}s:52:"1222:geocoder.search_osm_nominatim.prefix.place.moor";a:2:{i:0;R:33635;i:1;R:33560;}s:60:"1222:geocoder.search_osm_nominatim.prefix.place.municipality";a:2:{i:0;R:33635;i:1;R:33560;}s:56:"1222:geocoder.search_osm_nominatim.prefix.place.postcode";a:2:{i:0;R:33635;i:1;R:33560;}s:54:"1222:geocoder.search_osm_nominatim.prefix.place.region";a:2:{i:0;R:33635;i:1;R:33560;}s:51:"1222:geocoder.search_osm_nominatim.prefix.place.sea";a:2:{i:0;R:33635;i:1;R:33560;}s:53:"1222:geocoder.search_osm_nominatim.prefix.place.state";a:2:{i:0;R:33635;i:1;R:33560;}s:59:"1222:geocoder.search_osm_nominatim.prefix.place.subdivision";a:2:{i:0;R:33635;i:1;R:33560;}s:54:"1222:geocoder.search_osm_nominatim.prefix.place.suburb";a:2:{i:0;R:33635;i:1;R:33560;}s:52:"1222:geocoder.search_osm_nominatim.prefix.place.town";a:2:{i:0;R:33635;i:1;R:33560;}s:67:"1222:geocoder.search_osm_nominatim.prefix.place.unincorporated_area";a:2:{i:0;R:33635;i:1;R:33560;}s:55:"1222:geocoder.search_osm_nominatim.prefix.place.village";a:2:{i:0;R:33635;i:1;R:33560;}s:59:"1222:geocoder.search_osm_nominatim.prefix.railway.abandoned";a:2:{i:0;R:33635;i:1;R:33560;}s:62:"1222:geocoder.search_osm_nominatim.prefix.railway.construction";a:2:{i:0;R:33635;i:1;R:33560;}s:57:"1222:geocoder.search_osm_nominatim.prefix.railway.disused";a:2:{i:0;R:33635;i:1;R:33560;}s:65:"1222:geocoder.search_osm_nominatim.prefix.railway.disused_station";a:2:{i:0;R:33635;i:1;R:33560;}s:59:"1222:geocoder.search_osm_nominatim.prefix.railway.funicular";a:2:{i:0;R:33635;i:1;R:33560;}s:54:"1222:geocoder.search_osm_nominatim.prefix.railway.halt";a:2:{i:0;R:33635;i:1;R:33560;}s:66:"1222:geocoder.search_osm_nominatim.prefix.railway.historic_station";a:2:{i:0;R:33635;i:1;R:33560;}s:58:"1222:geocoder.search_osm_nominatim.prefix.railway.junction";a:2:{i:0;R:33635;i:1;R:33560;}s:64:"1222:geocoder.search_osm_nominatim.prefix.railway.level_crossing";a:2:{i:0;R:33635;i:1;R:33560;}s:60:"1222:geocoder.search_osm_nominatim.prefix.railway.light_rail";a:2:{i:0;R:33635;i:1;R:33560;}s:59:"1222:geocoder.search_osm_nominatim.prefix.railway.miniature";a:2:{i:0;R:33635;i:1;R:33560;}s:58:"1222:geocoder.search_osm_nominatim.prefix.railway.monorail";a:2:{i:0;R:33635;i:1;R:33560;}s:62:"1222:geocoder.search_osm_nominatim.prefix.railway.narrow_gauge";a:2:{i:0;R:33635;i:1;R:33560;}s:58:"1222:geocoder.search_osm_nominatim.prefix.railway.platform";a:2:{i:0;R:33635;i:1;R:33560;}s:59:"1222:geocoder.search_osm_nominatim.prefix.railway.preserved";a:2:{i:0;R:33635;i:1;R:33560;}s:54:"1222:geocoder.search_osm_nominatim.prefix.railway.spur";a:2:{i:0;R:33635;i:1;R:33560;}s:57:"1222:geocoder.search_osm_nominatim.prefix.railway.station";a:2:{i:0;R:33635;i:1;R:33560;}s:56:"1222:geocoder.search_osm_nominatim.prefix.railway.subway";a:2:{i:0;R:33635;i:1;R:33560;}s:65:"1222:geocoder.search_osm_nominatim.prefix.railway.subway_entrance";a:2:{i:0;R:33635;i:1;R:33560;}s:56:"1222:geocoder.search_osm_nominatim.prefix.railway.switch";a:2:{i:0;R:33635;i:1;R:33560;}s:54:"1222:geocoder.search_osm_nominatim.prefix.railway.tram";a:2:{i:0;R:33635;i:1;R:33560;}s:59:"1222:geocoder.search_osm_nominatim.prefix.railway.tram_stop";a:2:{i:0;R:33635;i:1;R:33560;}s:54:"1222:geocoder.search_osm_nominatim.prefix.railway.yard";a:2:{i:0;R:33635;i:1;R:33560;}s:54:"1222:geocoder.search_osm_nominatim.prefix.shop.alcohol";a:2:{i:0;R:33635;i:1;R:33560;}s:55:"1222:geocoder.search_osm_nominatim.prefix.shop.antiques";a:2:{i:0;R:33635;i:1;R:33560;}s:50:"1222:geocoder.search_osm_nominatim.prefix.shop.art";a:2:{i:0;R:33635;i:1;R:33560;}s:53:"1222:geocoder.search_osm_nominatim.prefix.shop.bakery";a:2:{i:0;R:33635;i:1;R:33560;}s:53:"1222:geocoder.search_osm_nominatim.prefix.shop.beauty";a:2:{i:0;R:33635;i:1;R:33560;}s:56:"1222:geocoder.search_osm_nominatim.prefix.shop.beverages";a:2:{i:0;R:33635;i:1;R:33560;}s:54:"1222:geocoder.search_osm_nominatim.prefix.shop.bicycle";a:2:{i:0;R:33635;i:1;R:33560;}s:52:"1222:geocoder.search_osm_nominatim.prefix.shop.books";a:2:{i:0;R:33635;i:1;R:33560;}s:54:"1222:geocoder.search_osm_nominatim.prefix.shop.butcher";a:2:{i:0;R:33635;i:1;R:33560;}s:50:"1222:geocoder.search_osm_nominatim.prefix.shop.car";a:2:{i:0;R:33635;i:1;R:33560;}s:56:"1222:geocoder.search_osm_nominatim.prefix.shop.car_parts";a:2:{i:0;R:33635;i:1;R:33560;}s:53:"1222:geocoder.search_osm_nominatim.prefix.shop.carpet";a:2:{i:0;R:33635;i:1;R:33560;}s:57:"1222:geocoder.search_osm_nominatim.prefix.shop.car_repair";a:2:{i:0;R:33635;i:1;R:33560;}s:54:"1222:geocoder.search_osm_nominatim.prefix.shop.charity";a:2:{i:0;R:33635;i:1;R:33560;}s:54:"1222:geocoder.search_osm_nominatim.prefix.shop.chemist";a:2:{i:0;R:33635;i:1;R:33560;}s:54:"1222:geocoder.search_osm_nominatim.prefix.shop.clothes";a:2:{i:0;R:33635;i:1;R:33560;}s:55:"1222:geocoder.search_osm_nominatim.prefix.shop.computer";a:2:{i:0;R:33635;i:1;R:33560;}s:60:"1222:geocoder.search_osm_nominatim.prefix.shop.confectionery";a:2:{i:0;R:33635;i:1;R:33560;}s:58:"1222:geocoder.search_osm_nominatim.prefix.shop.convenience";a:2:{i:0;R:33635;i:1;R:33560;}s:55:"1222:geocoder.search_osm_nominatim.prefix.shop.copyshop";a:2:{i:0;R:33635;i:1;R:33560;}s:56:"1222:geocoder.search_osm_nominatim.prefix.shop.cosmetics";a:2:{i:0;R:33635;i:1;R:33560;}s:63:"1222:geocoder.search_osm_nominatim.prefix.shop.department_store";a:2:{i:0;R:33635;i:1;R:33560;}s:55:"1222:geocoder.search_osm_nominatim.prefix.shop.discount";a:2:{i:0;R:33635;i:1;R:33560;}s:59:"1222:geocoder.search_osm_nominatim.prefix.shop.doityourself";a:2:{i:0;R:33635;i:1;R:33560;}s:59:"1222:geocoder.search_osm_nominatim.prefix.shop.dry_cleaning";a:2:{i:0;R:33635;i:1;R:33560;}s:58:"1222:geocoder.search_osm_nominatim.prefix.shop.electronics";a:2:{i:0;R:33635;i:1;R:33560;}s:59:"1222:geocoder.search_osm_nominatim.prefix.shop.estate_agent";a:2:{i:0;R:33635;i:1;R:33560;}s:51:"1222:geocoder.search_osm_nominatim.prefix.shop.farm";a:2:{i:0;R:33635;i:1;R:33560;}s:54:"1222:geocoder.search_osm_nominatim.prefix.shop.fashion";a:2:{i:0;R:33635;i:1;R:33560;}s:51:"1222:geocoder.search_osm_nominatim.prefix.shop.fish";a:2:{i:0;R:33635;i:1;R:33560;}s:54:"1222:geocoder.search_osm_nominatim.prefix.shop.florist";a:2:{i:0;R:33635;i:1;R:33560;}s:51:"1222:geocoder.search_osm_nominatim.prefix.shop.food";a:2:{i:0;R:33635;i:1;R:33560;}s:64:"1222:geocoder.search_osm_nominatim.prefix.shop.funeral_directors";a:2:{i:0;R:33635;i:1;R:33560;}s:56:"1222:geocoder.search_osm_nominatim.prefix.shop.furniture";a:2:{i:0;R:33635;i:1;R:33560;}s:54:"1222:geocoder.search_osm_nominatim.prefix.shop.gallery";a:2:{i:0;R:33635;i:1;R:33560;}s:60:"1222:geocoder.search_osm_nominatim.prefix.shop.garden_centre";a:2:{i:0;R:33635;i:1;R:33560;}s:54:"1222:geocoder.search_osm_nominatim.prefix.shop.general";a:2:{i:0;R:33635;i:1;R:33560;}s:51:"1222:geocoder.search_osm_nominatim.prefix.shop.gift";a:2:{i:0;R:33635;i:1;R:33560;}s:58:"1222:geocoder.search_osm_nominatim.prefix.shop.greengrocer";a:2:{i:0;R:33635;i:1;R:33560;}s:54:"1222:geocoder.search_osm_nominatim.prefix.shop.grocery";a:2:{i:0;R:33635;i:1;R:33560;}s:58:"1222:geocoder.search_osm_nominatim.prefix.shop.hairdresser";a:2:{i:0;R:33635;i:1;R:33560;}s:55:"1222:geocoder.search_osm_nominatim.prefix.shop.hardware";a:2:{i:0;R:33635;i:1;R:33560;}s:51:"1222:geocoder.search_osm_nominatim.prefix.shop.hifi";a:2:{i:0;R:33635;i:1;R:33560;}s:56:"1222:geocoder.search_osm_nominatim.prefix.shop.insurance";a:2:{i:0;R:33635;i:1;R:33560;}s:54:"1222:geocoder.search_osm_nominatim.prefix.shop.jewelry";a:2:{i:0;R:33635;i:1;R:33560;}s:52:"1222:geocoder.search_osm_nominatim.prefix.shop.kiosk";a:2:{i:0;R:33635;i:1;R:33560;}s:54:"1222:geocoder.search_osm_nominatim.prefix.shop.laundry";a:2:{i:0;R:33635;i:1;R:33560;}s:51:"1222:geocoder.search_osm_nominatim.prefix.shop.mall";a:2:{i:0;R:33635;i:1;R:33560;}s:53:"1222:geocoder.search_osm_nominatim.prefix.shop.market";a:2:{i:0;R:33635;i:1;R:33560;}s:59:"1222:geocoder.search_osm_nominatim.prefix.shop.mobile_phone";a:2:{i:0;R:33635;i:1;R:33560;}s:57:"1222:geocoder.search_osm_nominatim.prefix.shop.motorcycle";a:2:{i:0;R:33635;i:1;R:33560;}s:52:"1222:geocoder.search_osm_nominatim.prefix.shop.music";a:2:{i:0;R:33635;i:1;R:33560;}s:56:"1222:geocoder.search_osm_nominatim.prefix.shop.newsagent";a:2:{i:0;R:33635;i:1;R:33560;}s:55:"1222:geocoder.search_osm_nominatim.prefix.shop.optician";a:2:{i:0;R:33635;i:1;R:33560;}s:54:"1222:geocoder.search_osm_nominatim.prefix.shop.organic";a:2:{i:0;R:33635;i:1;R:33560;}s:54:"1222:geocoder.search_osm_nominatim.prefix.shop.outdoor";a:2:{i:0;R:33635;i:1;R:33560;}s:50:"1222:geocoder.search_osm_nominatim.prefix.shop.pet";a:2:{i:0;R:33635;i:1;R:33560;}s:52:"1222:geocoder.search_osm_nominatim.prefix.shop.photo";a:2:{i:0;R:33635;i:1;R:33560;}s:52:"1222:geocoder.search_osm_nominatim.prefix.shop.salon";a:2:{i:0;R:33635;i:1;R:33560;}s:52:"1222:geocoder.search_osm_nominatim.prefix.shop.shoes";a:2:{i:0;R:33635;i:1;R:33560;}s:62:"1222:geocoder.search_osm_nominatim.prefix.shop.shopping_centre";a:2:{i:0;R:33635;i:1;R:33560;}s:53:"1222:geocoder.search_osm_nominatim.prefix.shop.sports";a:2:{i:0;R:33635;i:1;R:33560;}s:57:"1222:geocoder.search_osm_nominatim.prefix.shop.stationery";a:2:{i:0;R:33635;i:1;R:33560;}s:58:"1222:geocoder.search_osm_nominatim.prefix.shop.supermarket";a:2:{i:0;R:33635;i:1;R:33560;}s:51:"1222:geocoder.search_osm_nominatim.prefix.shop.toys";a:2:{i:0;R:33635;i:1;R:33560;}s:60:"1222:geocoder.search_osm_nominatim.prefix.shop.travel_agency";a:2:{i:0;R:33635;i:1;R:33560;}s:52:"1222:geocoder.search_osm_nominatim.prefix.shop.video";a:2:{i:0;R:33635;i:1;R:33560;}s:51:"1222:geocoder.search_osm_nominatim.prefix.shop.wine";a:2:{i:0;R:33635;i:1;R:33560;}s:60:"1222:geocoder.search_osm_nominatim.prefix.tourism.alpine_hut";a:2:{i:0;R:33635;i:1;R:33560;}s:57:"1222:geocoder.search_osm_nominatim.prefix.tourism.artwork";a:2:{i:0;R:33635;i:1;R:33560;}s:60:"1222:geocoder.search_osm_nominatim.prefix.tourism.attraction";a:2:{i:0;R:33635;i:1;R:33560;}s:67:"1222:geocoder.search_osm_nominatim.prefix.tourism.bed_and_breakfast";a:2:{i:0;R:33635;i:1;R:33560;}s:55:"1222:geocoder.search_osm_nominatim.prefix.tourism.cabin";a:2:{i:0;R:33635;i:1;R:33560;}s:59:"1222:geocoder.search_osm_nominatim.prefix.tourism.camp_site";a:2:{i:0;R:33635;i:1;R:33560;}s:62:"1222:geocoder.search_osm_nominatim.prefix.tourism.caravan_site";a:2:{i:0;R:33635;i:1;R:33560;}s:56:"1222:geocoder.search_osm_nominatim.prefix.tourism.chalet";a:2:{i:0;R:33635;i:1;R:33560;}s:61:"1222:geocoder.search_osm_nominatim.prefix.tourism.guest_house";a:2:{i:0;R:33635;i:1;R:33560;}s:56:"1222:geocoder.search_osm_nominatim.prefix.tourism.hostel";a:2:{i:0;R:33635;i:1;R:33560;}s:55:"1222:geocoder.search_osm_nominatim.prefix.tourism.hotel";a:2:{i:0;R:33635;i:1;R:33560;}s:61:"1222:geocoder.search_osm_nominatim.prefix.tourism.information";a:2:{i:0;R:33635;i:1;R:33560;}s:57:"1222:geocoder.search_osm_nominatim.prefix.tourism.lean_to";a:2:{i:0;R:33635;i:1;R:33560;}s:55:"1222:geocoder.search_osm_nominatim.prefix.tourism.motel";a:2:{i:0;R:33635;i:1;R:33560;}s:56:"1222:geocoder.search_osm_nominatim.prefix.tourism.museum";a:2:{i:0;R:33635;i:1;R:33560;}s:61:"1222:geocoder.search_osm_nominatim.prefix.tourism.picnic_site";a:2:{i:0;R:33635;i:1;R:33560;}s:60:"1222:geocoder.search_osm_nominatim.prefix.tourism.theme_park";a:2:{i:0;R:33635;i:1;R:33560;}s:56:"1222:geocoder.search_osm_nominatim.prefix.tourism.valley";a:2:{i:0;R:33635;i:1;R:33560;}s:59:"1222:geocoder.search_osm_nominatim.prefix.tourism.viewpoint";a:2:{i:0;R:33635;i:1;R:33560;}s:53:"1222:geocoder.search_osm_nominatim.prefix.tourism.zoo";a:2:{i:0;R:33635;i:1;R:33560;}s:52:"1222:geocoder.search_osm_nominatim.prefix.tunnel.yes";a:2:{i:0;R:33635;i:1;R:33560;}s:61:"1222:geocoder.search_osm_nominatim.prefix.waterway.artificial";a:2:{i:0;R:33635;i:1;R:33560;}s:59:"1222:geocoder.search_osm_nominatim.prefix.waterway.boatyard";a:2:{i:0;R:33635;i:1;R:33560;}s:56:"1222:geocoder.search_osm_nominatim.prefix.waterway.canal";a:2:{i:0;R:33635;i:1;R:33560;}s:60:"1222:geocoder.search_osm_nominatim.prefix.waterway.connector";a:2:{i:0;R:33635;i:1;R:33560;}s:54:"1222:geocoder.search_osm_nominatim.prefix.waterway.dam";a:2:{i:0;R:33635;i:1;R:33560;}s:65:"1222:geocoder.search_osm_nominatim.prefix.waterway.derelict_canal";a:2:{i:0;R:33635;i:1;R:33560;}s:56:"1222:geocoder.search_osm_nominatim.prefix.waterway.ditch";a:2:{i:0;R:33635;i:1;R:33560;}s:55:"1222:geocoder.search_osm_nominatim.prefix.waterway.dock";a:2:{i:0;R:33635;i:1;R:33560;}s:56:"1222:geocoder.search_osm_nominatim.prefix.waterway.drain";a:2:{i:0;R:33635;i:1;R:33560;}s:55:"1222:geocoder.search_osm_nominatim.prefix.waterway.lock";a:2:{i:0;R:33635;i:1;R:33560;}s:60:"1222:geocoder.search_osm_nominatim.prefix.waterway.lock_gate";a:2:{i:0;R:33635;i:1;R:33560;}s:65:"1222:geocoder.search_osm_nominatim.prefix.waterway.mineral_spring";a:2:{i:0;R:33635;i:1;R:33560;}s:58:"1222:geocoder.search_osm_nominatim.prefix.waterway.mooring";a:2:{i:0;R:33635;i:1;R:33560;}s:57:"1222:geocoder.search_osm_nominatim.prefix.waterway.rapids";a:2:{i:0;R:33635;i:1;R:33560;}s:56:"1222:geocoder.search_osm_nominatim.prefix.waterway.river";a:2:{i:0;R:33635;i:1;R:33560;}s:60:"1222:geocoder.search_osm_nominatim.prefix.waterway.riverbank";a:2:{i:0;R:33635;i:1;R:33560;}s:57:"1222:geocoder.search_osm_nominatim.prefix.waterway.stream";a:2:{i:0;R:33635;i:1;R:33560;}s:55:"1222:geocoder.search_osm_nominatim.prefix.waterway.wadi";a:2:{i:0;R:33635;i:1;R:33560;}s:60:"1222:geocoder.search_osm_nominatim.prefix.waterway.waterfall";a:2:{i:0;R:33635;i:1;R:33560;}s:62:"1222:geocoder.search_osm_nominatim.prefix.waterway.water_point";a:2:{i:0;R:33635;i:1;R:33560;}s:55:"1222:geocoder.search_osm_nominatim.prefix.waterway.weir";a:2:{i:0;R:33635;i:1;R:33560;}s:46:"1222:geocoder.description.title.osm_namefinder";a:2:{i:0;R:33635;i:1;R:33560;}s:45:"1222:geocoder.description.title.osm_nominatim";a:2:{i:0;R:33635;i:1;R:33560;}s:40:"1222:geocoder.description.title.geonames";a:2:{i:0;R:33635;i:1;R:33560;}s:38:"1222:geocoder.description.types.cities";a:2:{i:0;R:33635;i:1;R:33560;}s:37:"1222:geocoder.description.types.towns";a:2:{i:0;R:33635;i:1;R:33560;}s:38:"1222:geocoder.description.types.places";a:2:{i:0;R:33635;i:1;R:33560;}s:47:"1222:geocoder.description_osm_namefinder.prefix";a:2:{i:0;R:33635;i:1;R:33560;}s:32:"1222:geocoder.results.no_results";a:2:{i:0;R:33635;i:1;R:33560;}s:34:"1222:geocoder.results.more_results";a:2:{i:0;R:33635;i:1;R:33560;}s:22:"1222:geocoder.distance";a:2:{i:0;R:33635;i:1;R:33560;}s:34:"1222:geocoder.direction.south_west";a:2:{i:0;R:33635;i:1;R:33560;}s:29:"1222:geocoder.direction.south";a:2:{i:0;R:33635;i:1;R:33560;}s:34:"1222:geocoder.direction.south_east";a:2:{i:0;R:33635;i:1;R:33560;}s:28:"1222:geocoder.direction.east";a:2:{i:0;R:33635;i:1;R:33560;}s:34:"1222:geocoder.direction.north_east";a:2:{i:0;R:33635;i:1;R:33560;}s:29:"1222:geocoder.direction.north";a:2:{i:0;R:33635;i:1;R:33560;}s:34:"1222:geocoder.direction.north_west";a:2:{i:0;R:33635;i:1;R:33560;}s:28:"1222:geocoder.direction.west";a:2:{i:0;R:33635;i:1;R:33560;}s:31:"1222:layouts.project_name.title";a:2:{i:0;R:33635;i:1;R:33560;}s:28:"1222:layouts.project_name.h1";a:2:{i:0;R:33635;i:1;R:33560;}s:26:"1222:layouts.logo.alt_text";a:2:{i:0;R:33635;i:1;R:33560;}s:25:"1222:layouts.welcome_user";a:2:{i:0;R:33635;i:1;R:33560;}s:38:"1222:layouts.welcome_user_link_tooltip";a:2:{i:0;R:33635;i:1;R:33560;}s:17:"1222:layouts.home";a:2:{i:0;R:33635;i:1;R:33560;}s:25:"1222:layouts.home_tooltip";a:2:{i:0;R:33635;i:1;R:33560;}s:18:"1222:layouts.inbox";a:2:{i:0;R:33635;i:1;R:33560;}s:26:"1222:layouts.inbox_tooltip";a:2:{i:0;R:33635;i:1;R:33560;}s:19:"1222:layouts.logout";a:2:{i:0;R:33635;i:1;R:33560;}s:27:"1222:layouts.logout_tooltip";a:2:{i:0;R:33635;i:1;R:33560;}s:19:"1222:layouts.log_in";a:2:{i:0;R:33635;i:1;R:33560;}s:27:"1222:layouts.log_in_tooltip";a:2:{i:0;R:33635;i:1;R:33560;}s:20:"1222:layouts.sign_up";a:2:{i:0;R:33635;i:1;R:33560;}s:28:"1222:layouts.sign_up_tooltip";a:2:{i:0;R:33635;i:1;R:33560;}s:17:"1222:layouts.view";a:2:{i:0;R:33635;i:1;R:33560;}s:25:"1222:layouts.view_tooltip";a:2:{i:0;R:33635;i:1;R:33560;}s:17:"1222:layouts.edit";a:2:{i:0;R:33635;i:1;R:33560;}s:20:"1222:layouts.history";a:2:{i:0;R:33635;i:1;R:33560;}s:19:"1222:layouts.export";a:2:{i:0;R:33635;i:1;R:33560;}s:27:"1222:layouts.export_tooltip";a:2:{i:0;R:33635;i:1;R:33560;}s:23:"1222:layouts.gps_traces";a:2:{i:0;R:33635;i:1;R:33560;}s:31:"1222:layouts.gps_traces_tooltip";a:2:{i:0;R:33635;i:1;R:33560;}s:25:"1222:layouts.user_diaries";a:2:{i:0;R:33635;i:1;R:33560;}s:33:"1222:layouts.user_diaries_tooltip";a:2:{i:0;R:33635;i:1;R:33560;}s:22:"1222:layouts.edit_with";a:2:{i:0;R:33635;i:1;R:33560;}s:21:"1222:layouts.tag_line";a:2:{i:0;R:33635;i:1;R:33560;}s:20:"1222:layouts.intro_1";a:2:{i:0;R:33635;i:1;R:33560;}s:25:"1222:layouts.intro_2_html";a:2:{i:0;R:33635;i:1;R:33560;}s:35:"1222:layouts.intro_2_create_account";a:2:{i:0;R:33635;i:1;R:33560;}s:28:"1222:layouts.intro_2_license";a:2:{i:0;R:33635;i:1;R:33560;}s:24:"1222:layouts.intro_2_use";a:2:{i:0;R:33635;i:1;R:33560;}s:29:"1222:layouts.intro_2_download";a:2:{i:0;R:33635;i:1;R:33560;}s:28:"1222:layouts.intro_2_use_url";a:2:{i:0;R:33635;i:1;R:33560;}s:26:"1222:layouts.partners_html";a:2:{i:0;R:33635;i:1;R:33560;}s:25:"1222:layouts.partners_ucl";a:2:{i:0;R:33635;i:1;R:33560;}s:24:"1222:layouts.partners_ic";a:2:{i:0;R:33635;i:1;R:33560;}s:30:"1222:layouts.partners_bytemark";a:2:{i:0;R:33635;i:1;R:33560;}s:30:"1222:layouts.partners_partners";a:2:{i:0;R:33635;i:1;R:33560;}s:25:"1222:layouts.partners_url";a:2:{i:0;R:33635;i:1;R:33560;}s:24:"1222:layouts.osm_offline";a:2:{i:0;R:33635;i:1;R:33560;}s:26:"1222:layouts.osm_read_only";a:2:{i:0;R:33635;i:1;R:33560;}s:19:"1222:layouts.donate";a:2:{i:0;R:33635;i:1;R:33560;}s:29:"1222:layouts.donate_link_text";a:2:{i:0;R:33635;i:1;R:33560;}s:17:"1222:layouts.help";a:2:{i:0;R:33635;i:1;R:33560;}s:24:"1222:layouts.help_centre";a:2:{i:0;R:33635;i:1;R:33560;}s:21:"1222:layouts.help_url";a:2:{i:0;R:33635;i:1;R:33560;}s:23:"1222:layouts.help_title";a:2:{i:0;R:33635;i:1;R:33560;}s:17:"1222:layouts.wiki";a:2:{i:0;R:33635;i:1;R:33560;}s:21:"1222:layouts.wiki_url";a:2:{i:0;R:33635;i:1;R:33560;}s:23:"1222:layouts.wiki_title";a:2:{i:0;R:33635;i:1;R:33560;}s:26:"1222:layouts.documentation";a:2:{i:0;R:33635;i:1;R:33560;}s:32:"1222:layouts.documentation_title";a:2:{i:0;R:33635;i:1;R:33560;}s:22:"1222:layouts.copyright";a:2:{i:0;R:33635;i:1;R:33560;}s:22:"1222:layouts.community";a:2:{i:0;R:33635;i:1;R:33560;}s:28:"1222:layouts.community_blogs";a:2:{i:0;R:33635;i:1;R:33560;}s:34:"1222:layouts.community_blogs_title";a:2:{i:0;R:33635;i:1;R:33560;}s:23:"1222:layouts.foundation";a:2:{i:0;R:33635;i:1;R:33560;}s:29:"1222:layouts.foundation_title";a:2:{i:0;R:33635;i:1;R:33560;}s:21:"1222:layouts.sotm2011";a:2:{i:0;R:33635;i:1;R:33560;}s:24:"1222:layouts.license.alt";a:2:{i:0;R:33635;i:1;R:33560;}s:26:"1222:layouts.license.title";a:2:{i:0;R:33635;i:1;R:33560;}s:34:"1222:layouts.make_a_donation.title";a:2:{i:0;R:33635;i:1;R:33560;}s:33:"1222:layouts.make_a_donation.text";a:2:{i:0;R:33635;i:1;R:33560;}s:31:"1222:license_page.foreign.title";a:2:{i:0;R:33635;i:1;R:33560;}s:30:"1222:license_page.foreign.text";a:2:{i:0;R:33635;i:1;R:33560;}s:38:"1222:license_page.foreign.english_link";a:2:{i:0;R:33635;i:1;R:33560;}s:30:"1222:license_page.native.title";a:2:{i:0;R:33635;i:1;R:33560;}s:29:"1222:license_page.native.text";a:2:{i:0;R:33635;i:1;R:33560;}s:36:"1222:license_page.native.native_link";a:2:{i:0;R:33635;i:1;R:33560;}s:37:"1222:license_page.native.mapping_link";a:2:{i:0;R:33635;i:1;R:33560;}s:30:"1222:license_page.legal_babble";a:2:{i:0;R:33635;i:1;R:33560;}s:48:"1222:notifier.diary_comment_notification.subject";a:2:{i:0;R:33635;i:1;R:33560;}s:43:"1222:notifier.diary_comment_notification.hi";a:2:{i:0;R:33635;i:1;R:33560;}s:47:"1222:notifier.diary_comment_notification.header";a:2:{i:0;R:33635;i:1;R:33560;}s:47:"1222:notifier.diary_comment_notification.footer";a:2:{i:0;R:33635;i:1;R:33560;}s:49:"1222:notifier.message_notification.subject_header";a:2:{i:0;R:33635;i:1;R:33560;}s:37:"1222:notifier.message_notification.hi";a:2:{i:0;R:33635;i:1;R:33560;}s:41:"1222:notifier.message_notification.header";a:2:{i:0;R:33635;i:1;R:33560;}s:42:"1222:notifier.message_notification.footer1";a:2:{i:0;R:33635;i:1;R:33560;}s:42:"1222:notifier.message_notification.footer2";a:2:{i:0;R:33635;i:1;R:33560;}s:41:"1222:notifier.friend_notification.subject";a:2:{i:0;R:33635;i:1;R:33560;}s:47:"1222:notifier.friend_notification.had_added_you";a:2:{i:0;R:33635;i:1;R:33560;}s:51:"1222:notifier.friend_notification.see_their_profile";a:2:{i:0;R:33635;i:1;R:33560;}s:47:"1222:notifier.friend_notification.befriend_them";a:2:{i:0;R:33635;i:1;R:33560;}s:39:"1222:notifier.gpx_notification.greeting";a:2:{i:0;R:33635;i:1;R:33560;}s:44:"1222:notifier.gpx_notification.your_gpx_file";a:2:{i:0;R:33635;i:1;R:33560;}s:47:"1222:notifier.gpx_notification.with_description";a:2:{i:0;R:33635;i:1;R:33560;}s:43:"1222:notifier.gpx_notification.and_the_tags";a:2:{i:0;R:33635;i:1;R:33560;}s:42:"1222:notifier.gpx_notification.and_no_tags";a:2:{i:0;R:33635;i:1;R:33560;}s:46:"1222:notifier.gpx_notification.failure.subject";a:2:{i:0;R:33635;i:1;R:33560;}s:55:"1222:notifier.gpx_notification.failure.failed_to_import";a:2:{i:0;R:33635;i:1;R:33560;}s:50:"1222:notifier.gpx_notification.failure.more_info_1";a:2:{i:0;R:33635;i:1;R:33560;}s:50:"1222:notifier.gpx_notification.failure.more_info_2";a:2:{i:0;R:33635;i:1;R:33560;}s:58:"1222:notifier.gpx_notification.failure.import_failures_url";a:2:{i:0;R:33635;i:1;R:33560;}s:46:"1222:notifier.gpx_notification.success.subject";a:2:{i:0;R:33635;i:1;R:33560;}s:58:"1222:notifier.gpx_notification.success.loaded_successfully";a:2:{i:0;R:33635;i:1;R:33560;}s:36:"1222:notifier.signup_confirm.subject";a:2:{i:0;R:33635;i:1;R:33560;}s:43:"1222:notifier.signup_confirm_plain.greeting";a:2:{i:0;R:33635;i:1;R:33560;}s:48:"1222:notifier.signup_confirm_plain.hopefully_you";a:2:{i:0;R:33635;i:1;R:33560;}s:51:"1222:notifier.signup_confirm_plain.click_the_link_1";a:2:{i:0;R:33635;i:1;R:33560;}s:51:"1222:notifier.signup_confirm_plain.click_the_link_2";a:2:{i:0;R:33635;i:1;R:33560;}s:53:"1222:notifier.signup_confirm_plain.introductory_video";a:2:{i:0;R:33635;i:1;R:33560;}s:46:"1222:notifier.signup_confirm_plain.more_videos";a:2:{i:0;R:33635;i:1;R:33560;}s:43:"1222:notifier.signup_confirm_plain.the_wiki";a:2:{i:0;R:33635;i:1;R:33560;}s:47:"1222:notifier.signup_confirm_plain.the_wiki_url";a:2:{i:0;R:33635;i:1;R:33560;}s:51:"1222:notifier.signup_confirm_plain.blog_and_twitter";a:2:{i:0;R:33635;i:1;R:33560;}s:46:"1222:notifier.signup_confirm_plain.opengeodata";a:2:{i:0;R:33635;i:1;R:33560;}s:48:"1222:notifier.signup_confirm_plain.ask_questions";a:2:{i:0;R:33635;i:1;R:33560;}s:46:"1222:notifier.signup_confirm_plain.wiki_signup";a:2:{i:0;R:33635;i:1;R:33560;}s:50:"1222:notifier.signup_confirm_plain.wiki_signup_url";a:2:{i:0;R:33635;i:1;R:33560;}s:46:"1222:notifier.signup_confirm_plain.user_wiki_1";a:2:{i:0;R:33635;i:1;R:33560;}s:46:"1222:notifier.signup_confirm_plain.user_wiki_2";a:2:{i:0;R:33635;i:1;R:33560;}s:49:"1222:notifier.signup_confirm_plain.current_user_1";a:2:{i:0;R:33635;i:1;R:33560;}s:49:"1222:notifier.signup_confirm_plain.current_user_2";a:2:{i:0;R:33635;i:1;R:33560;}s:42:"1222:notifier.signup_confirm_html.greeting";a:2:{i:0;R:33635;i:1;R:33560;}s:47:"1222:notifier.signup_confirm_html.hopefully_you";a:2:{i:0;R:33635;i:1;R:33560;}s:48:"1222:notifier.signup_confirm_html.click_the_link";a:2:{i:0;R:33635;i:1;R:33560;}s:52:"1222:notifier.signup_confirm_html.introductory_video";a:2:{i:0;R:33635;i:1;R:33560;}s:56:"1222:notifier.signup_confirm_html.video_to_openstreetmap";a:2:{i:0;R:33635;i:1;R:33560;}s:45:"1222:notifier.signup_confirm_html.more_videos";a:2:{i:0;R:33635;i:1;R:33560;}s:50:"1222:notifier.signup_confirm_html.more_videos_here";a:2:{i:0;R:33635;i:1;R:33560;}s:45:"1222:notifier.signup_confirm_html.get_reading";a:2:{i:0;R:33635;i:1;R:33560;}s:47:"1222:notifier.signup_confirm_html.ask_questions";a:2:{i:0;R:33635;i:1;R:33560;}s:45:"1222:notifier.signup_confirm_html.wiki_signup";a:2:{i:0;R:33635;i:1;R:33560;}s:48:"1222:notifier.signup_confirm_html.user_wiki_page";a:2:{i:0;R:33635;i:1;R:33560;}s:46:"1222:notifier.signup_confirm_html.current_user";a:2:{i:0;R:33635;i:1;R:33560;}s:35:"1222:notifier.email_confirm.subject";a:2:{i:0;R:33635;i:1;R:33560;}s:42:"1222:notifier.email_confirm_plain.greeting";a:2:{i:0;R:33635;i:1;R:33560;}s:49:"1222:notifier.email_confirm_plain.hopefully_you_1";a:2:{i:0;R:33635;i:1;R:33560;}s:49:"1222:notifier.email_confirm_plain.hopefully_you_2";a:2:{i:0;R:33635;i:1;R:33560;}s:48:"1222:notifier.email_confirm_plain.click_the_link";a:2:{i:0;R:33635;i:1;R:33560;}s:41:"1222:notifier.email_confirm_html.greeting";a:2:{i:0;R:33635;i:1;R:33560;}s:46:"1222:notifier.email_confirm_html.hopefully_you";a:2:{i:0;R:33635;i:1;R:33560;}s:47:"1222:notifier.email_confirm_html.click_the_link";a:2:{i:0;R:33635;i:1;R:33560;}s:35:"1222:notifier.lost_password.subject";a:2:{i:0;R:33635;i:1;R:33560;}s:42:"1222:notifier.lost_password_plain.greeting";a:2:{i:0;R:33635;i:1;R:33560;}s:49:"1222:notifier.lost_password_plain.hopefully_you_1";a:2:{i:0;R:33635;i:1;R:33560;}s:49:"1222:notifier.lost_password_plain.hopefully_you_2";a:2:{i:0;R:33635;i:1;R:33560;}s:48:"1222:notifier.lost_password_plain.click_the_link";a:2:{i:0;R:33635;i:1;R:33560;}s:41:"1222:notifier.lost_password_html.greeting";a:2:{i:0;R:33635;i:1;R:33560;}s:46:"1222:notifier.lost_password_html.hopefully_you";a:2:{i:0;R:33635;i:1;R:33560;}s:47:"1222:notifier.lost_password_html.click_the_link";a:2:{i:0;R:33635;i:1;R:33560;}s:24:"1222:message.inbox.title";a:2:{i:0;R:33635;i:1;R:33560;}s:27:"1222:message.inbox.my_inbox";a:2:{i:0;R:33635;i:1;R:33560;}s:25:"1222:message.inbox.outbox";a:2:{i:0;R:33635;i:1;R:33560;}s:27:"1222:message.inbox.messages";a:2:{i:0;R:33635;i:1;R:33560;}s:31:"1222:message.inbox.new_messages";a:2:{i:0;R:33635;i:1;R:33560;}s:31:"1222:message.inbox.old_messages";a:2:{i:0;R:33635;i:1;R:33560;}s:23:"1222:message.inbox.from";a:2:{i:0;R:33635;i:1;R:33560;}s:26:"1222:message.inbox.subject";a:2:{i:0;R:33635;i:1;R:33560;}s:23:"1222:message.inbox.date";a:2:{i:0;R:33635;i:1;R:33560;}s:34:"1222:message.inbox.no_messages_yet";a:2:{i:0;R:33635;i:1;R:33560;}s:40:"1222:message.inbox.people_mapping_nearby";a:2:{i:0;R:33635;i:1;R:33560;}s:42:"1222:message.message_summary.unread_button";a:2:{i:0;R:33635;i:1;R:33560;}s:40:"1222:message.message_summary.read_button";a:2:{i:0;R:33635;i:1;R:33560;}s:41:"1222:message.message_summary.reply_button";a:2:{i:0;R:33635;i:1;R:33560;}s:42:"1222:message.message_summary.delete_button";a:2:{i:0;R:33635;i:1;R:33560;}s:22:"1222:message.new.title";a:2:{i:0;R:33635;i:1;R:33560;}s:32:"1222:message.new.send_message_to";a:2:{i:0;R:33635;i:1;R:33560;}s:24:"1222:message.new.subject";a:2:{i:0;R:33635;i:1;R:33560;}s:21:"1222:message.new.body";a:2:{i:0;R:33635;i:1;R:33560;}s:28:"1222:message.new.send_button";a:2:{i:0;R:33635;i:1;R:33560;}s:30:"1222:message.new.back_to_inbox";a:2:{i:0;R:33635;i:1;R:33560;}s:29:"1222:message.new.message_sent";a:2:{i:0;R:33635;i:1;R:33560;}s:31:"1222:message.new.limit_exceeded";a:2:{i:0;R:33635;i:1;R:33560;}s:34:"1222:message.no_such_message.title";a:2:{i:0;R:33635;i:1;R:33560;}s:36:"1222:message.no_such_message.heading";a:2:{i:0;R:33635;i:1;R:33560;}s:33:"1222:message.no_such_message.body";a:2:{i:0;R:33635;i:1;R:33560;}s:25:"1222:message.outbox.title";a:2:{i:0;R:33635;i:1;R:33560;}s:28:"1222:message.outbox.my_inbox";a:2:{i:0;R:33635;i:1;R:33560;}s:25:"1222:message.outbox.inbox";a:2:{i:0;R:33635;i:1;R:33560;}s:26:"1222:message.outbox.outbox";a:2:{i:0;R:33635;i:1;R:33560;}s:28:"1222:message.outbox.messages";a:2:{i:0;R:33635;i:1;R:33560;}s:22:"1222:message.outbox.to";a:2:{i:0;R:33635;i:1;R:33560;}s:27:"1222:message.outbox.subject";a:2:{i:0;R:33635;i:1;R:33560;}s:24:"1222:message.outbox.date";a:2:{i:0;R:33635;i:1;R:33560;}s:36:"1222:message.outbox.no_sent_messages";a:2:{i:0;R:33635;i:1;R:33560;}s:41:"1222:message.outbox.people_mapping_nearby";a:2:{i:0;R:33635;i:1;R:33560;}s:29:"1222:message.reply.wrong_user";a:2:{i:0;R:33635;i:1;R:33560;}s:23:"1222:message.read.title";a:2:{i:0;R:33635;i:1;R:33560;}s:39:"1222:message.read.reading_your_messages";a:2:{i:0;R:33635;i:1;R:33560;}s:22:"1222:message.read.from";a:2:{i:0;R:33635;i:1;R:33560;}s:25:"1222:message.read.subject";a:2:{i:0;R:33635;i:1;R:33560;}s:22:"1222:message.read.date";a:2:{i:0;R:33635;i:1;R:33560;}s:30:"1222:message.read.reply_button";a:2:{i:0;R:33635;i:1;R:33560;}s:31:"1222:message.read.unread_button";a:2:{i:0;R:33635;i:1;R:33560;}s:31:"1222:message.read.back_to_inbox";a:2:{i:0;R:33635;i:1;R:33560;}s:44:"1222:message.read.reading_your_sent_messages";a:2:{i:0;R:33635;i:1;R:33560;}s:20:"1222:message.read.to";a:2:{i:0;R:33635;i:1;R:33560;}s:32:"1222:message.read.back_to_outbox";a:2:{i:0;R:33635;i:1;R:33560;}s:28:"1222:message.read.wrong_user";a:2:{i:0;R:33635;i:1;R:33560;}s:47:"1222:message.sent_message_summary.delete_button";a:2:{i:0;R:33635;i:1;R:33560;}s:25:"1222:message.mark.as_read";a:2:{i:0;R:33635;i:1;R:33560;}s:27:"1222:message.mark.as_unread";a:2:{i:0;R:33635;i:1;R:33560;}s:27:"1222:message.delete.deleted";a:2:{i:0;R:33635;i:1;R:33560;}s:20:"1222:site.index.js_1";a:2:{i:0;R:33635;i:1;R:33560;}s:20:"1222:site.index.js_2";a:2:{i:0;R:33635;i:1;R:33560;}s:25:"1222:site.index.permalink";a:2:{i:0;R:33635;i:1;R:33560;}s:25:"1222:site.index.shortlink";a:2:{i:0;R:33635;i:1;R:33560;}s:30:"1222:site.index.license.notice";a:2:{i:0;R:33635;i:1;R:33560;}s:36:"1222:site.index.license.license_name";a:2:{i:0;R:33635;i:1;R:33560;}s:35:"1222:site.index.license.license_url";a:2:{i:0;R:33635;i:1;R:33560;}s:36:"1222:site.index.license.project_name";a:2:{i:0;R:33635;i:1;R:33560;}s:35:"1222:site.index.license.project_url";a:2:{i:0;R:33635;i:1;R:33560;}s:29:"1222:site.index.remote_failed";a:2:{i:0;R:33635;i:1;R:33560;}s:25:"1222:site.edit.not_public";a:2:{i:0;R:33635;i:1;R:33560;}s:37:"1222:site.edit.not_public_description";a:2:{i:0;R:33635;i:1;R:33560;}s:29:"1222:site.edit.user_page_link";a:2:{i:0;R:33635;i:1;R:33560;}s:25:"1222:site.edit.anon_edits";a:2:{i:0;R:33635;i:1;R:33560;}s:30:"1222:site.edit.anon_edits_link";a:2:{i:0;R:33635;i:1;R:33560;}s:35:"1222:site.edit.anon_edits_link_text";a:2:{i:0;R:33635;i:1;R:33560;}s:36:"1222:site.edit.flash_player_required";a:2:{i:0;R:33635;i:1;R:33560;}s:39:"1222:site.edit.potlatch_unsaved_changes";a:2:{i:0;R:33635;i:1;R:33560;}s:39:"1222:site.edit.potlatch2_not_configured";a:2:{i:0;R:33635;i:1;R:33560;}s:40:"1222:site.edit.potlatch2_unsaved_changes";a:2:{i:0;R:33635;i:1;R:33560;}s:32:"1222:site.edit.no_iframe_support";a:2:{i:0;R:33635;i:1;R:33560;}s:32:"1222:site.sidebar.search_results";a:2:{i:0;R:33635;i:1;R:33560;}s:23:"1222:site.sidebar.close";a:2:{i:0;R:33635;i:1;R:33560;}s:23:"1222:site.search.search";a:2:{i:0;R:33635;i:1;R:33560;}s:27:"1222:site.search.where_am_i";a:2:{i:0;R:33635;i:1;R:33560;}s:33:"1222:site.search.where_am_i_title";a:2:{i:0;R:33635;i:1;R:33560;}s:28:"1222:site.search.submit_text";a:2:{i:0;R:33635;i:1;R:33560;}s:28:"1222:site.search.search_help";a:2:{i:0;R:33635;i:1;R:33560;}s:21:"1222:site.key.map_key";a:2:{i:0;R:33635;i:1;R:33560;}s:29:"1222:site.key.map_key_tooltip";a:2:{i:0;R:33635;i:1;R:33560;}s:34:"1222:site.key.table.entry.motorway";a:2:{i:0;R:33635;i:1;R:33560;}s:31:"1222:site.key.table.entry.trunk";a:2:{i:0;R:33635;i:1;R:33560;}s:33:"1222:site.key.table.entry.primary";a:2:{i:0;R:33635;i:1;R:33560;}s:35:"1222:site.key.table.entry.secondary";a:2:{i:0;R:33635;i:1;R:33560;}s:38:"1222:site.key.table.entry.unclassified";a:2:{i:0;R:33635;i:1;R:33560;}s:36:"1222:site.key.table.entry.unsurfaced";a:2:{i:0;R:33635;i:1;R:33560;}s:31:"1222:site.key.table.entry.track";a:2:{i:0;R:33635;i:1;R:33560;}s:31:"1222:site.key.table.entry.byway";a:2:{i:0;R:33635;i:1;R:33560;}s:35:"1222:site.key.table.entry.bridleway";a:2:{i:0;R:33635;i:1;R:33560;}s:34:"1222:site.key.table.entry.cycleway";a:2:{i:0;R:33635;i:1;R:33560;}s:33:"1222:site.key.table.entry.footway";a:2:{i:0;R:33635;i:1;R:33560;}s:30:"1222:site.key.table.entry.rail";a:2:{i:0;R:33635;i:1;R:33560;}s:32:"1222:site.key.table.entry.subway";a:2:{i:0;R:33635;i:1;R:33560;}s:32:"1222:site.key.table.entry.tram.0";a:2:{i:0;R:33635;i:1;R:33560;}s:32:"1222:site.key.table.entry.tram.1";a:2:{i:0;R:33635;i:1;R:33560;}s:33:"1222:site.key.table.entry.cable.0";a:2:{i:0;R:33635;i:1;R:33560;}s:33:"1222:site.key.table.entry.cable.1";a:2:{i:0;R:33635;i:1;R:33560;}s:34:"1222:site.key.table.entry.runway.0";a:2:{i:0;R:33635;i:1;R:33560;}s:34:"1222:site.key.table.entry.runway.1";a:2:{i:0;R:33635;i:1;R:33560;}s:33:"1222:site.key.table.entry.apron.0";a:2:{i:0;R:33635;i:1;R:33560;}s:33:"1222:site.key.table.entry.apron.1";a:2:{i:0;R:33635;i:1;R:33560;}s:31:"1222:site.key.table.entry.admin";a:2:{i:0;R:33635;i:1;R:33560;}s:32:"1222:site.key.table.entry.forest";a:2:{i:0;R:33635;i:1;R:33560;}s:30:"1222:site.key.table.entry.wood";a:2:{i:0;R:33635;i:1;R:33560;}s:30:"1222:site.key.table.entry.golf";a:2:{i:0;R:33635;i:1;R:33560;}s:30:"1222:site.key.table.entry.park";a:2:{i:0;R:33635;i:1;R:33560;}s:34:"1222:site.key.table.entry.resident";a:2:{i:0;R:33635;i:1;R:33560;}s:33:"1222:site.key.table.entry.tourist";a:2:{i:0;R:33635;i:1;R:33560;}s:34:"1222:site.key.table.entry.common.0";a:2:{i:0;R:33635;i:1;R:33560;}s:34:"1222:site.key.table.entry.common.1";a:2:{i:0;R:33635;i:1;R:33560;}s:32:"1222:site.key.table.entry.retail";a:2:{i:0;R:33635;i:1;R:33560;}s:36:"1222:site.key.table.entry.industrial";a:2:{i:0;R:33635;i:1;R:33560;}s:36:"1222:site.key.table.entry.commercial";a:2:{i:0;R:33635;i:1;R:33560;}s:35:"1222:site.key.table.entry.heathland";a:2:{i:0;R:33635;i:1;R:33560;}s:32:"1222:site.key.table.entry.lake.0";a:2:{i:0;R:33635;i:1;R:33560;}s:32:"1222:site.key.table.entry.lake.1";a:2:{i:0;R:33635;i:1;R:33560;}s:30:"1222:site.key.table.entry.farm";a:2:{i:0;R:33635;i:1;R:33560;}s:36:"1222:site.key.table.entry.brownfield";a:2:{i:0;R:33635;i:1;R:33560;}s:34:"1222:site.key.table.entry.cemetery";a:2:{i:0;R:33635;i:1;R:33560;}s:36:"1222:site.key.table.entry.allotments";a:2:{i:0;R:33635;i:1;R:33560;}s:31:"1222:site.key.table.entry.pitch";a:2:{i:0;R:33635;i:1;R:33560;}s:32:"1222:site.key.table.entry.centre";a:2:{i:0;R:33635;i:1;R:33560;}s:33:"1222:site.key.table.entry.reserve";a:2:{i:0;R:33635;i:1;R:33560;}s:34:"1222:site.key.table.entry.military";a:2:{i:0;R:33635;i:1;R:33560;}s:34:"1222:site.key.table.entry.school.0";a:2:{i:0;R:33635;i:1;R:33560;}s:34:"1222:site.key.table.entry.school.1";a:2:{i:0;R:33635;i:1;R:33560;}s:34:"1222:site.key.table.entry.building";a:2:{i:0;R:33635;i:1;R:33560;}s:33:"1222:site.key.table.entry.station";a:2:{i:0;R:33635;i:1;R:33560;}s:34:"1222:site.key.table.entry.summit.0";a:2:{i:0;R:33635;i:1;R:33560;}s:34:"1222:site.key.table.entry.summit.1";a:2:{i:0;R:33635;i:1;R:33560;}s:32:"1222:site.key.table.entry.tunnel";a:2:{i:0;R:33635;i:1;R:33560;}s:32:"1222:site.key.table.entry.bridge";a:2:{i:0;R:33635;i:1;R:33560;}s:33:"1222:site.key.table.entry.private";a:2:{i:0;R:33635;i:1;R:33560;}s:36:"1222:site.key.table.entry.permissive";a:2:{i:0;R:33635;i:1;R:33560;}s:37:"1222:site.key.table.entry.destination";a:2:{i:0;R:33635;i:1;R:33560;}s:38:"1222:site.key.table.entry.construction";a:2:{i:0;R:33635;i:1;R:33560;}s:28:"1222:site.richtext_area.edit";a:2:{i:0;R:33635;i:1;R:33560;}s:31:"1222:site.richtext_area.preview";a:2:{i:0;R:33635;i:1;R:33560;}s:34:"1222:site.markdown_help.title_html";a:2:{i:0;R:33635;i:1;R:33560;}s:32:"1222:site.markdown_help.headings";a:2:{i:0;R:33635;i:1;R:33560;}s:31:"1222:site.markdown_help.heading";a:2:{i:0;R:33635;i:1;R:33560;}s:34:"1222:site.markdown_help.subheading";a:2:{i:0;R:33635;i:1;R:33560;}s:33:"1222:site.markdown_help.unordered";a:2:{i:0;R:33635;i:1;R:33560;}s:31:"1222:site.markdown_help.ordered";a:2:{i:0;R:33635;i:1;R:33560;}s:29:"1222:site.markdown_help.first";a:2:{i:0;R:33635;i:1;R:33560;}s:30:"1222:site.markdown_help.second";a:2:{i:0;R:33635;i:1;R:33560;}s:28:"1222:site.markdown_help.link";a:2:{i:0;R:33635;i:1;R:33560;}s:28:"1222:site.markdown_help.text";a:2:{i:0;R:33635;i:1;R:33560;}s:29:"1222:site.markdown_help.image";a:2:{i:0;R:33635;i:1;R:33560;}s:27:"1222:site.markdown_help.alt";a:2:{i:0;R:33635;i:1;R:33560;}s:27:"1222:site.markdown_help.url";a:2:{i:0;R:33635;i:1;R:33560;}s:29:"1222:trace.visibility.private";a:2:{i:0;R:33635;i:1;R:33560;}s:28:"1222:trace.visibility.public";a:2:{i:0;R:33635;i:1;R:33560;}s:31:"1222:trace.visibility.trackable";a:2:{i:0;R:33635;i:1;R:33560;}s:34:"1222:trace.visibility.identifiable";a:2:{i:0;R:33635;i:1;R:33560;}s:30:"1222:trace.create.upload_trace";a:2:{i:0;R:33635;i:1;R:33560;}s:32:"1222:trace.create.trace_uploaded";a:2:{i:0;R:33635;i:1;R:33560;}s:21:"1222:trace.edit.title";a:2:{i:0;R:33635;i:1;R:33560;}s:23:"1222:trace.edit.heading";a:2:{i:0;R:33635;i:1;R:33560;}s:24:"1222:trace.edit.filename";a:2:{i:0;R:33635;i:1;R:33560;}s:24:"1222:trace.edit.download";a:2:{i:0;R:33635;i:1;R:33560;}s:27:"1222:trace.edit.uploaded_at";a:2:{i:0;R:33635;i:1;R:33560;}s:22:"1222:trace.edit.points";a:2:{i:0;R:33635;i:1;R:33560;}s:27:"1222:trace.edit.start_coord";a:2:{i:0;R:33635;i:1;R:33560;}s:19:"1222:trace.edit.map";a:2:{i:0;R:33635;i:1;R:33560;}s:20:"1222:trace.edit.edit";a:2:{i:0;R:33635;i:1;R:33560;}s:21:"1222:trace.edit.owner";a:2:{i:0;R:33635;i:1;R:33560;}s:27:"1222:trace.edit.description";a:2:{i:0;R:33635;i:1;R:33560;}s:20:"1222:trace.edit.tags";a:2:{i:0;R:33635;i:1;R:33560;}s:25:"1222:trace.edit.tags_help";a:2:{i:0;R:33635;i:1;R:33560;}s:27:"1222:trace.edit.save_button";a:2:{i:0;R:33635;i:1;R:33560;}s:26:"1222:trace.edit.visibility";a:2:{i:0;R:33635;i:1;R:33560;}s:31:"1222:trace.edit.visibility_help";a:2:{i:0;R:33635;i:1;R:33560;}s:35:"1222:trace.edit.visibility_help_url";a:2:{i:0;R:33635;i:1;R:33560;}s:32:"1222:trace.trace_form.upload_gpx";a:2:{i:0;R:33635;i:1;R:33560;}s:33:"1222:trace.trace_form.description";a:2:{i:0;R:33635;i:1;R:33560;}s:26:"1222:trace.trace_form.tags";a:2:{i:0;R:33635;i:1;R:33560;}s:31:"1222:trace.trace_form.tags_help";a:2:{i:0;R:33635;i:1;R:33560;}s:32:"1222:trace.trace_form.visibility";a:2:{i:0;R:33635;i:1;R:33560;}s:37:"1222:trace.trace_form.visibility_help";a:2:{i:0;R:33635;i:1;R:33560;}s:41:"1222:trace.trace_form.visibility_help_url";a:2:{i:0;R:33635;i:1;R:33560;}s:35:"1222:trace.trace_form.upload_button";a:2:{i:0;R:33635;i:1;R:33560;}s:26:"1222:trace.trace_form.help";a:2:{i:0;R:33635;i:1;R:33560;}s:30:"1222:trace.trace_form.help_url";a:2:{i:0;R:33635;i:1;R:33560;}s:36:"1222:trace.trace_header.upload_trace";a:2:{i:0;R:33635;i:1;R:33560;}s:38:"1222:trace.trace_header.see_all_traces";a:2:{i:0;R:33635;i:1;R:33560;}s:39:"1222:trace.trace_header.see_your_traces";a:2:{i:0;R:33635;i:1;R:33560;}s:38:"1222:trace.trace_header.traces_waiting";a:2:{i:0;R:33635;i:1;R:33560;}s:31:"1222:trace.trace_optionals.tags";a:2:{i:0;R:33635;i:1;R:33560;}s:21:"1222:trace.view.title";a:2:{i:0;R:33635;i:1;R:33560;}s:23:"1222:trace.view.heading";a:2:{i:0;R:33635;i:1;R:33560;}s:23:"1222:trace.view.pending";a:2:{i:0;R:33635;i:1;R:33560;}s:24:"1222:trace.view.filename";a:2:{i:0;R:33635;i:1;R:33560;}s:24:"1222:trace.view.download";a:2:{i:0;R:33635;i:1;R:33560;}s:24:"1222:trace.view.uploaded";a:2:{i:0;R:33635;i:1;R:33560;}s:22:"1222:trace.view.points";a:2:{i:0;R:33635;i:1;R:33560;}s:33:"1222:trace.view.start_coordinates";a:2:{i:0;R:33635;i:1;R:33560;}s:19:"1222:trace.view.map";a:2:{i:0;R:33635;i:1;R:33560;}s:20:"1222:trace.view.edit";a:2:{i:0;R:33635;i:1;R:33560;}s:21:"1222:trace.view.owner";a:2:{i:0;R:33635;i:1;R:33560;}s:27:"1222:trace.view.description";a:2:{i:0;R:33635;i:1;R:33560;}s:20:"1222:trace.view.tags";a:2:{i:0;R:33635;i:1;R:33560;}s:20:"1222:trace.view.none";a:2:{i:0;R:33635;i:1;R:33560;}s:26:"1222:trace.view.edit_track";a:2:{i:0;R:33635;i:1;R:33560;}s:28:"1222:trace.view.delete_track";a:2:{i:0;R:33635;i:1;R:33560;}s:31:"1222:trace.view.trace_not_found";a:2:{i:0;R:33635;i:1;R:33560;}s:26:"1222:trace.view.visibility";a:2:{i:0;R:33635;i:1;R:33560;}s:40:"1222:trace.trace_paging_nav.showing_page";a:2:{i:0;R:33635;i:1;R:33560;}s:32:"1222:trace.trace_paging_nav.next";a:2:{i:0;R:33635;i:1;R:33560;}s:36:"1222:trace.trace_paging_nav.previous";a:2:{i:0;R:33635;i:1;R:33560;}s:24:"1222:trace.trace.pending";a:2:{i:0;R:33635;i:1;R:33560;}s:29:"1222:trace.trace.count_points";a:2:{i:0;R:33635;i:1;R:33560;}s:20:"1222:trace.trace.ago";a:2:{i:0;R:33635;i:1;R:33560;}s:21:"1222:trace.trace.more";a:2:{i:0;R:33635;i:1;R:33560;}s:30:"1222:trace.trace.trace_details";a:2:{i:0;R:33635;i:1;R:33560;}s:25:"1222:trace.trace.view_map";a:2:{i:0;R:33635;i:1;R:33560;}s:21:"1222:trace.trace.edit";a:2:{i:0;R:33635;i:1;R:33560;}s:25:"1222:trace.trace.edit_map";a:2:{i:0;R:33635;i:1;R:33560;}s:23:"1222:trace.trace.public";a:2:{i:0;R:33635;i:1;R:33560;}s:29:"1222:trace.trace.identifiable";a:2:{i:0;R:33635;i:1;R:33560;}s:24:"1222:trace.trace.private";a:2:{i:0;R:33635;i:1;R:33560;}s:26:"1222:trace.trace.trackable";a:2:{i:0;R:33635;i:1;R:33560;}s:19:"1222:trace.trace.by";a:2:{i:0;R:33635;i:1;R:33560;}s:19:"1222:trace.trace.in";a:2:{i:0;R:33635;i:1;R:33560;}s:20:"1222:trace.trace.map";a:2:{i:0;R:33635;i:1;R:33560;}s:29:"1222:trace.list.public_traces";a:2:{i:0;R:33635;i:1;R:33560;}s:27:"1222:trace.list.your_traces";a:2:{i:0;R:33635;i:1;R:33560;}s:34:"1222:trace.list.public_traces_from";a:2:{i:0;R:33635;i:1;R:33560;}s:27:"1222:trace.list.tagged_with";a:2:{i:0;R:33635;i:1;R:33560;}s:40:"1222:trace.delete.scheduled_for_deletion";a:2:{i:0;R:33635;i:1;R:33560;}s:34:"1222:trace.make_public.made_public";a:2:{i:0;R:33635;i:1;R:33560;}s:34:"1222:trace.offline_warning.message";a:2:{i:0;R:33635;i:1;R:33560;}s:26:"1222:trace.offline.heading";a:2:{i:0;R:33635;i:1;R:33560;}s:26:"1222:trace.offline.message";a:2:{i:0;R:33635;i:1;R:33560;}s:47:"1222:application.require_cookies.cookies_needed";a:2:{i:0;R:33635;i:1;R:33560;}s:50:"1222:application.require_moderator.not_a_moderator";a:2:{i:0;R:33635;i:1;R:33560;}s:40:"1222:application.setup_user_auth.blocked";a:2:{i:0;R:33635;i:1;R:33560;}s:50:"1222:application.setup_user_auth.need_to_see_terms";a:2:{i:0;R:33635;i:1;R:33560;}s:36:"1222:oauth.oauthorize.request_access";a:2:{i:0;R:33635;i:1;R:33560;}s:30:"1222:oauth.oauthorize.allow_to";a:2:{i:0;R:33635;i:1;R:33560;}s:38:"1222:oauth.oauthorize.allow_read_prefs";a:2:{i:0;R:33635;i:1;R:33560;}s:39:"1222:oauth.oauthorize.allow_write_prefs";a:2:{i:0;R:33635;i:1;R:33560;}s:39:"1222:oauth.oauthorize.allow_write_diary";a:2:{i:0;R:33635;i:1;R:33560;}s:37:"1222:oauth.oauthorize.allow_write_api";a:2:{i:0;R:33635;i:1;R:33560;}s:36:"1222:oauth.oauthorize.allow_read_gpx";a:2:{i:0;R:33635;i:1;R:33560;}s:37:"1222:oauth.oauthorize.allow_write_gpx";a:2:{i:0;R:33635;i:1;R:33560;}s:23:"1222:oauth.revoke.flash";a:2:{i:0;R:33635;i:1;R:33560;}s:28:"1222:oauth_clients.new.title";a:2:{i:0;R:33635;i:1;R:33560;}s:29:"1222:oauth_clients.new.submit";a:2:{i:0;R:33635;i:1;R:33560;}s:29:"1222:oauth_clients.edit.title";a:2:{i:0;R:33635;i:1;R:33560;}s:30:"1222:oauth_clients.edit.submit";a:2:{i:0;R:33635;i:1;R:33560;}s:29:"1222:oauth_clients.show.title";a:2:{i:0;R:33635;i:1;R:33560;}s:27:"1222:oauth_clients.show.key";a:2:{i:0;R:33635;i:1;R:33560;}s:30:"1222:oauth_clients.show.secret";a:2:{i:0;R:33635;i:1;R:33560;}s:27:"1222:oauth_clients.show.url";a:2:{i:0;R:33635;i:1;R:33560;}s:34:"1222:oauth_clients.show.access_url";a:2:{i:0;R:33635;i:1;R:33560;}s:37:"1222:oauth_clients.show.authorize_url";a:2:{i:0;R:33635;i:1;R:33560;}s:38:"1222:oauth_clients.show.support_notice";a:2:{i:0;R:33635;i:1;R:33560;}s:28:"1222:oauth_clients.show.edit";a:2:{i:0;R:33635;i:1;R:33560;}s:32:"1222:oauth_clients.show.requests";a:2:{i:0;R:33635;i:1;R:33560;}s:40:"1222:oauth_clients.show.allow_read_prefs";a:2:{i:0;R:33635;i:1;R:33560;}s:41:"1222:oauth_clients.show.allow_write_prefs";a:2:{i:0;R:33635;i:1;R:33560;}s:41:"1222:oauth_clients.show.allow_write_diary";a:2:{i:0;R:33635;i:1;R:33560;}s:39:"1222:oauth_clients.show.allow_write_api";a:2:{i:0;R:33635;i:1;R:33560;}s:38:"1222:oauth_clients.show.allow_read_gpx";a:2:{i:0;R:33635;i:1;R:33560;}s:39:"1222:oauth_clients.show.allow_write_gpx";a:2:{i:0;R:33635;i:1;R:33560;}s:30:"1222:oauth_clients.index.title";a:2:{i:0;R:33635;i:1;R:33560;}s:34:"1222:oauth_clients.index.my_tokens";a:2:{i:0;R:33635;i:1;R:33560;}s:36:"1222:oauth_clients.index.list_tokens";a:2:{i:0;R:33635;i:1;R:33560;}s:36:"1222:oauth_clients.index.application";a:2:{i:0;R:33635;i:1;R:33560;}s:34:"1222:oauth_clients.index.issued_at";a:2:{i:0;R:33635;i:1;R:33560;}s:31:"1222:oauth_clients.index.revoke";a:2:{i:0;R:33635;i:1;R:33560;}s:32:"1222:oauth_clients.index.my_apps";a:2:{i:0;R:33635;i:1;R:33560;}s:32:"1222:oauth_clients.index.no_apps";a:2:{i:0;R:33635;i:1;R:33560;}s:40:"1222:oauth_clients.index.registered_apps";a:2:{i:0;R:33635;i:1;R:33560;}s:37:"1222:oauth_clients.index.register_new";a:2:{i:0;R:33635;i:1;R:33560;}s:28:"1222:oauth_clients.form.name";a:2:{i:0;R:33635;i:1;R:33560;}s:32:"1222:oauth_clients.form.required";a:2:{i:0;R:33635;i:1;R:33560;}s:27:"1222:oauth_clients.form.url";a:2:{i:0;R:33635;i:1;R:33560;}s:36:"1222:oauth_clients.form.callback_url";a:2:{i:0;R:33635;i:1;R:33560;}s:35:"1222:oauth_clients.form.support_url";a:2:{i:0;R:33635;i:1;R:33560;}s:32:"1222:oauth_clients.form.requests";a:2:{i:0;R:33635;i:1;R:33560;}s:40:"1222:oauth_clients.form.allow_read_prefs";a:2:{i:0;R:33635;i:1;R:33560;}s:41:"1222:oauth_clients.form.allow_write_prefs";a:2:{i:0;R:33635;i:1;R:33560;}s:41:"1222:oauth_clients.form.allow_write_diary";a:2:{i:0;R:33635;i:1;R:33560;}s:39:"1222:oauth_clients.form.allow_write_api";a:2:{i:0;R:33635;i:1;R:33560;}s:38:"1222:oauth_clients.form.allow_read_gpx";a:2:{i:0;R:33635;i:1;R:33560;}s:39:"1222:oauth_clients.form.allow_write_gpx";a:2:{i:0;R:33635;i:1;R:33560;}s:34:"1222:oauth_clients.not_found.sorry";a:2:{i:0;R:33635;i:1;R:33560;}s:31:"1222:oauth_clients.create.flash";a:2:{i:0;R:33635;i:1;R:33560;}s:31:"1222:oauth_clients.update.flash";a:2:{i:0;R:33635;i:1;R:33560;}s:32:"1222:oauth_clients.destroy.flash";a:2:{i:0;R:33635;i:1;R:33560;}s:21:"1222:user.login.title";a:2:{i:0;R:33635;i:1;R:33560;}s:23:"1222:user.login.heading";a:2:{i:0;R:33635;i:1;R:33560;}s:33:"1222:user.login.email_or_username";a:2:{i:0;R:33635;i:1;R:33560;}s:24:"1222:user.login.password";a:2:{i:0;R:33635;i:1;R:33560;}s:22:"1222:user.login.openid";a:2:{i:0;R:33635;i:1;R:33560;}s:24:"1222:user.login.remember";a:2:{i:0;R:33635;i:1;R:33560;}s:34:"1222:user.login.lost_password_link";a:2:{i:0;R:33635;i:1;R:33560;}s:28:"1222:user.login.login_button";a:2:{i:0;R:33635;i:1;R:33560;}s:28:"1222:user.login.register_now";a:2:{i:0;R:33635;i:1;R:33560;}s:29:"1222:user.login.with_username";a:2:{i:0;R:33635;i:1;R:33560;}s:27:"1222:user.login.with_openid";a:2:{i:0;R:33635;i:1;R:33560;}s:26:"1222:user.login.new_to_osm";a:2:{i:0;R:33635;i:1;R:33560;}s:31:"1222:user.login.to_make_changes";a:2:{i:0;R:33635;i:1;R:33560;}s:37:"1222:user.login.create_account_minute";a:2:{i:0;R:33635;i:1;R:33560;}s:26:"1222:user.login.no_account";a:2:{i:0;R:33635;i:1;R:33560;}s:34:"1222:user.login.account_not_active";a:2:{i:0;R:33635;i:1;R:33560;}s:36:"1222:user.login.account_is_suspended";a:2:{i:0;R:33635;i:1;R:33560;}s:28:"1222:user.login.auth_failure";a:2:{i:0;R:33635;i:1;R:33560;}s:22:"1222:user.login.notice";a:2:{i:0;R:33635;i:1;R:33560;}s:28:"1222:user.login.notice_terms";a:2:{i:0;R:33635;i:1;R:33560;}s:39:"1222:user.login.openid_missing_provider";a:2:{i:0;R:33635;i:1;R:33560;}s:30:"1222:user.login.openid_invalid";a:2:{i:0;R:33635;i:1;R:33560;}s:31:"1222:user.login.openid_logo_alt";a:2:{i:0;R:33635;i:1;R:33560;}s:45:"1222:user.login.openid_providers.openid.title";a:2:{i:0;R:33635;i:1;R:33560;}s:43:"1222:user.login.openid_providers.openid.alt";a:2:{i:0;R:33635;i:1;R:33560;}s:45:"1222:user.login.openid_providers.google.title";a:2:{i:0;R:33635;i:1;R:33560;}s:43:"1222:user.login.openid_providers.google.alt";a:2:{i:0;R:33635;i:1;R:33560;}s:44:"1222:user.login.openid_providers.yahoo.title";a:2:{i:0;R:33635;i:1;R:33560;}s:42:"1222:user.login.openid_providers.yahoo.alt";a:2:{i:0;R:33635;i:1;R:33560;}s:47:"1222:user.login.openid_providers.myopenid.title";a:2:{i:0;R:33635;i:1;R:33560;}s:45:"1222:user.login.openid_providers.myopenid.alt";a:2:{i:0;R:33635;i:1;R:33560;}s:48:"1222:user.login.openid_providers.wordpress.title";a:2:{i:0;R:33635;i:1;R:33560;}s:46:"1222:user.login.openid_providers.wordpress.alt";a:2:{i:0;R:33635;i:1;R:33560;}s:42:"1222:user.login.openid_providers.aol.title";a:2:{i:0;R:33635;i:1;R:33560;}s:40:"1222:user.login.openid_providers.aol.alt";a:2:{i:0;R:33635;i:1;R:33560;}s:22:"1222:user.logout.title";a:2:{i:0;R:33635;i:1;R:33560;}s:24:"1222:user.logout.heading";a:2:{i:0;R:33635;i:1;R:33560;}s:30:"1222:user.logout.logout_button";a:2:{i:0;R:33635;i:1;R:33560;}s:29:"1222:user.lost_password.title";a:2:{i:0;R:33635;i:1;R:33560;}s:31:"1222:user.lost_password.heading";a:2:{i:0;R:33635;i:1;R:33560;}s:37:"1222:user.lost_password.email_address";a:2:{i:0;R:33635;i:1;R:33560;}s:43:"1222:user.lost_password.new_password_button";a:2:{i:0;R:33635;i:1;R:33560;}s:33:"1222:user.lost_password.help_text";a:2:{i:0;R:33635;i:1;R:33560;}s:43:"1222:user.lost_password.notice_email_on_way";a:2:{i:0;R:33635;i:1;R:33560;}s:48:"1222:user.lost_password.notice_email_cannot_find";a:2:{i:0;R:33635;i:1;R:33560;}s:30:"1222:user.reset_password.title";a:2:{i:0;R:33635;i:1;R:33560;}s:32:"1222:user.reset_password.heading";a:2:{i:0;R:33635;i:1;R:33560;}s:33:"1222:user.reset_password.password";a:2:{i:0;R:33635;i:1;R:33560;}s:41:"1222:user.reset_password.confirm_password";a:2:{i:0;R:33635;i:1;R:33560;}s:30:"1222:user.reset_password.reset";a:2:{i:0;R:33635;i:1;R:33560;}s:38:"1222:user.reset_password.flash_changed";a:2:{i:0;R:33635;i:1;R:33560;}s:40:"1222:user.reset_password.flash_token_bad";a:2:{i:0;R:33635;i:1;R:33560;}s:19:"1222:user.new.title";a:2:{i:0;R:33635;i:1;R:33560;}s:21:"1222:user.new.heading";a:2:{i:0;R:33635;i:1;R:33560;}s:36:"1222:user.new.no_auto_account_create";a:2:{i:0;R:33635;i:1;R:33560;}s:31:"1222:user.new.contact_webmaster";a:2:{i:0;R:33635;i:1;R:33560;}s:23:"1222:user.new.fill_form";a:2:{i:0;R:33635;i:1;R:33560;}s:31:"1222:user.new.license_agreement";a:2:{i:0;R:33635;i:1;R:33560;}s:27:"1222:user.new.email_address";a:2:{i:0;R:33635;i:1;R:33560;}s:35:"1222:user.new.confirm_email_address";a:2:{i:0;R:33635;i:1;R:33560;}s:36:"1222:user.new.not_displayed_publicly";a:2:{i:0;R:33635;i:1;R:33560;}s:26:"1222:user.new.display_name";a:2:{i:0;R:33635;i:1;R:33560;}s:38:"1222:user.new.display_name_description";a:2:{i:0;R:33635;i:1;R:33560;}s:20:"1222:user.new.openid";a:2:{i:0;R:33635;i:1;R:33560;}s:22:"1222:user.new.password";a:2:{i:0;R:33635;i:1;R:33560;}s:30:"1222:user.new.confirm_password";a:2:{i:0;R:33635;i:1;R:33560;}s:24:"1222:user.new.use_openid";a:2:{i:0;R:33635;i:1;R:33560;}s:32:"1222:user.new.openid_no_password";a:2:{i:0;R:33635;i:1;R:33560;}s:32:"1222:user.new.openid_association";a:2:{i:0;R:33635;i:1;R:33560;}s:22:"1222:user.new.continue";a:2:{i:0;R:33635;i:1;R:33560;}s:42:"1222:user.new.flash_create_success_message";a:2:{i:0;R:33635;i:1;R:33560;}s:28:"1222:user.new.terms_accepted";a:2:{i:0;R:33635;i:1;R:33560;}s:28:"1222:user.new.terms_declined";a:2:{i:0;R:33635;i:1;R:33560;}s:32:"1222:user.new.terms_declined_url";a:2:{i:0;R:33635;i:1;R:33560;}s:21:"1222:user.terms.title";a:2:{i:0;R:33635;i:1;R:33560;}s:23:"1222:user.terms.heading";a:2:{i:0;R:33635;i:1;R:33560;}s:31:"1222:user.terms.read_and_accept";a:2:{i:0;R:33635;i:1;R:33560;}s:27:"1222:user.terms.consider_pd";a:2:{i:0;R:33635;i:1;R:33560;}s:31:"1222:user.terms.consider_pd_why";a:2:{i:0;R:33635;i:1;R:33560;}s:35:"1222:user.terms.consider_pd_why_url";a:2:{i:0;R:33635;i:1;R:33560;}s:24:"1222:user.terms.guidance";a:2:{i:0;R:33635;i:1;R:33560;}s:21:"1222:user.terms.agree";a:2:{i:0;R:33635;i:1;R:33560;}s:24:"1222:user.terms.declined";a:2:{i:0;R:33635;i:1;R:33560;}s:23:"1222:user.terms.decline";a:2:{i:0;R:33635;i:1;R:33560;}s:45:"1222:user.terms.you_need_to_accept_or_decline";a:2:{i:0;R:33635;i:1;R:33560;}s:29:"1222:user.terms.legale_select";a:2:{i:0;R:33635;i:1;R:33560;}s:35:"1222:user.terms.legale_names.france";a:2:{i:0;R:33635;i:1;R:33560;}s:34:"1222:user.terms.legale_names.italy";a:2:{i:0;R:33635;i:1;R:33560;}s:42:"1222:user.terms.legale_names.rest_of_world";a:2:{i:0;R:33635;i:1;R:33560;}s:28:"1222:user.no_such_user.title";a:2:{i:0;R:33635;i:1;R:33560;}s:30:"1222:user.no_such_user.heading";a:2:{i:0;R:33635;i:1;R:33560;}s:27:"1222:user.no_such_user.body";a:2:{i:0;R:33635;i:1;R:33560;}s:23:"1222:user.view.my_diary";a:2:{i:0;R:33635;i:1;R:33560;}s:30:"1222:user.view.new_diary_entry";a:2:{i:0;R:33635;i:1;R:33560;}s:23:"1222:user.view.my_edits";a:2:{i:0;R:33635;i:1;R:33560;}s:24:"1222:user.view.my_traces";a:2:{i:0;R:33635;i:1;R:33560;}s:26:"1222:user.view.my_settings";a:2:{i:0;R:33635;i:1;R:33560;}s:26:"1222:user.view.my_comments";a:2:{i:0;R:33635;i:1;R:33560;}s:29:"1222:user.view.oauth_settings";a:2:{i:0;R:33635;i:1;R:33560;}s:27:"1222:user.view.blocks_on_me";a:2:{i:0;R:33635;i:1;R:33560;}s:27:"1222:user.view.blocks_by_me";a:2:{i:0;R:33635;i:1;R:33560;}s:27:"1222:user.view.send_message";a:2:{i:0;R:33635;i:1;R:33560;}s:20:"1222:user.view.diary";a:2:{i:0;R:33635;i:1;R:33560;}s:20:"1222:user.view.edits";a:2:{i:0;R:33635;i:1;R:33560;}s:21:"1222:user.view.traces";a:2:{i:0;R:33635;i:1;R:33560;}s:31:"1222:user.view.remove_as_friend";a:2:{i:0;R:33635;i:1;R:33560;}s:28:"1222:user.view.add_as_friend";a:2:{i:0;R:33635;i:1;R:33560;}s:27:"1222:user.view.mapper_since";a:2:{i:0;R:33635;i:1;R:33560;}s:18:"1222:user.view.ago";a:2:{i:0;R:33635;i:1;R:33560;}s:24:"1222:user.view.ct_status";a:2:{i:0;R:33635;i:1;R:33560;}s:27:"1222:user.view.ct_undecided";a:2:{i:0;R:33635;i:1;R:33560;}s:26:"1222:user.view.ct_declined";a:2:{i:0;R:33635;i:1;R:33560;}s:26:"1222:user.view.ct_accepted";a:2:{i:0;R:33635;i:1;R:33560;}s:26:"1222:user.view.latest_edit";a:2:{i:0;R:33635;i:1;R:33560;}s:28:"1222:user.view.email_address";a:2:{i:0;R:33635;i:1;R:33560;}s:27:"1222:user.view.created_from";a:2:{i:0;R:33635;i:1;R:33560;}s:21:"1222:user.view.status";a:2:{i:0;R:33635;i:1;R:33560;}s:25:"1222:user.view.spam_score";a:2:{i:0;R:33635;i:1;R:33560;}s:26:"1222:user.view.description";a:2:{i:0;R:33635;i:1;R:33560;}s:28:"1222:user.view.user_location";a:2:{i:0;R:33635;i:1;R:33560;}s:30:"1222:user.view.if_set_location";a:2:{i:0;R:33635;i:1;R:33560;}s:33:"1222:user.view.settings_link_text";a:2:{i:0;R:33635;i:1;R:33560;}s:27:"1222:user.view.your_friends";a:2:{i:0;R:33635;i:1;R:33560;}s:25:"1222:user.view.no_friends";a:2:{i:0;R:33635;i:1;R:33560;}s:22:"1222:user.view.km_away";a:2:{i:0;R:33635;i:1;R:33560;}s:21:"1222:user.view.m_away";a:2:{i:0;R:33635;i:1;R:33560;}s:27:"1222:user.view.nearby_users";a:2:{i:0;R:33635;i:1;R:33560;}s:30:"1222:user.view.no_nearby_users";a:2:{i:0;R:33635;i:1;R:33560;}s:33:"1222:user.view.role.administrator";a:2:{i:0;R:33635;i:1;R:33560;}s:29:"1222:user.view.role.moderator";a:2:{i:0;R:33635;i:1;R:33560;}s:39:"1222:user.view.role.grant.administrator";a:2:{i:0;R:33635;i:1;R:33560;}s:35:"1222:user.view.role.grant.moderator";a:2:{i:0;R:33635;i:1;R:33560;}s:40:"1222:user.view.role.revoke.administrator";a:2:{i:0;R:33635;i:1;R:33560;}s:36:"1222:user.view.role.revoke.moderator";a:2:{i:0;R:33635;i:1;R:33560;}s:28:"1222:user.view.block_history";a:2:{i:0;R:33635;i:1;R:33560;}s:32:"1222:user.view.moderator_history";a:2:{i:0;R:33635;i:1;R:33560;}s:23:"1222:user.view.comments";a:2:{i:0;R:33635;i:1;R:33560;}s:27:"1222:user.view.create_block";a:2:{i:0;R:33635;i:1;R:33560;}s:28:"1222:user.view.activate_user";a:2:{i:0;R:33635;i:1;R:33560;}s:30:"1222:user.view.deactivate_user";a:2:{i:0;R:33635;i:1;R:33560;}s:27:"1222:user.view.confirm_user";a:2:{i:0;R:33635;i:1;R:33560;}s:24:"1222:user.view.hide_user";a:2:{i:0;R:33635;i:1;R:33560;}s:26:"1222:user.view.unhide_user";a:2:{i:0;R:33635;i:1;R:33560;}s:26:"1222:user.view.delete_user";a:2:{i:0;R:33635;i:1;R:33560;}s:22:"1222:user.view.confirm";a:2:{i:0;R:33635;i:1;R:33560;}s:33:"1222:user.view.friends_changesets";a:2:{i:0;R:33635;i:1;R:33560;}s:30:"1222:user.view.friends_diaries";a:2:{i:0;R:33635;i:1;R:33560;}s:32:"1222:user.view.nearby_changesets";a:2:{i:0;R:33635;i:1;R:33560;}s:29:"1222:user.view.nearby_diaries";a:2:{i:0;R:33635;i:1;R:33560;}s:29:"1222:user.popup.your_location";a:2:{i:0;R:33635;i:1;R:33560;}s:29:"1222:user.popup.nearby_mapper";a:2:{i:0;R:33635;i:1;R:33560;}s:22:"1222:user.popup.friend";a:2:{i:0;R:33635;i:1;R:33560;}s:23:"1222:user.account.title";a:2:{i:0;R:33635;i:1;R:33560;}s:29:"1222:user.account.my_settings";a:2:{i:0;R:33635;i:1;R:33560;}s:39:"1222:user.account.current_email_address";a:2:{i:0;R:33635;i:1;R:33560;}s:35:"1222:user.account.new_email_address";a:2:{i:0;R:33635;i:1;R:33560;}s:48:"1222:user.account.email_never_displayed_publicly";a:2:{i:0;R:33635;i:1;R:33560;}s:31:"1222:user.account.openid.openid";a:2:{i:0;R:33635;i:1;R:33560;}s:29:"1222:user.account.openid.link";a:2:{i:0;R:33635;i:1;R:33560;}s:34:"1222:user.account.openid.link_text";a:2:{i:0;R:33635;i:1;R:33560;}s:40:"1222:user.account.public_editing.heading";a:2:{i:0;R:33635;i:1;R:33560;}s:40:"1222:user.account.public_editing.enabled";a:2:{i:0;R:33635;i:1;R:33560;}s:45:"1222:user.account.public_editing.enabled_link";a:2:{i:0;R:33635;i:1;R:33560;}s:50:"1222:user.account.public_editing.enabled_link_text";a:2:{i:0;R:33635;i:1;R:33560;}s:41:"1222:user.account.public_editing.disabled";a:2:{i:0;R:33635;i:1;R:33560;}s:51:"1222:user.account.public_editing.disabled_link_text";a:2:{i:0;R:33635;i:1;R:33560;}s:45:"1222:user.account.public_editing_note.heading";a:2:{i:0;R:33635;i:1;R:33560;}s:42:"1222:user.account.public_editing_note.text";a:2:{i:0;R:33635;i:1;R:33560;}s:43:"1222:user.account.contributor_terms.heading";a:2:{i:0;R:33635;i:1;R:33560;}s:42:"1222:user.account.contributor_terms.agreed";a:2:{i:0;R:33635;i:1;R:33560;}s:50:"1222:user.account.contributor_terms.not_yet_agreed";a:2:{i:0;R:33635;i:1;R:33560;}s:52:"1222:user.account.contributor_terms.review_link_text";a:2:{i:0;R:33635;i:1;R:33560;}s:50:"1222:user.account.contributor_terms.agreed_with_pd";a:2:{i:0;R:33635;i:1;R:33560;}s:40:"1222:user.account.contributor_terms.link";a:2:{i:0;R:33635;i:1;R:33560;}s:45:"1222:user.account.contributor_terms.link_text";a:2:{i:0;R:33635;i:1;R:33560;}s:37:"1222:user.account.profile_description";a:2:{i:0;R:33635;i:1;R:33560;}s:37:"1222:user.account.preferred_languages";a:2:{i:0;R:33635;i:1;R:33560;}s:34:"1222:user.account.preferred_editor";a:2:{i:0;R:33635;i:1;R:33560;}s:23:"1222:user.account.image";a:2:{i:0;R:33635;i:1;R:33560;}s:27:"1222:user.account.new_image";a:2:{i:0;R:33635;i:1;R:33560;}s:28:"1222:user.account.keep_image";a:2:{i:0;R:33635;i:1;R:33560;}s:30:"1222:user.account.delete_image";a:2:{i:0;R:33635;i:1;R:33560;}s:31:"1222:user.account.replace_image";a:2:{i:0;R:33635;i:1;R:33560;}s:33:"1222:user.account.image_size_hint";a:2:{i:0;R:33635;i:1;R:33560;}s:31:"1222:user.account.home_location";a:2:{i:0;R:33635;i:1;R:33560;}s:34:"1222:user.account.no_home_location";a:2:{i:0;R:33635;i:1;R:33560;}s:26:"1222:user.account.latitude";a:2:{i:0;R:33635;i:1;R:33560;}s:27:"1222:user.account.longitude";a:2:{i:0;R:33635;i:1;R:33560;}s:47:"1222:user.account.update_home_location_on_click";a:2:{i:0;R:33635;i:1;R:33560;}s:37:"1222:user.account.save_changes_button";a:2:{i:0;R:33635;i:1;R:33560;}s:42:"1222:user.account.make_edits_public_button";a:2:{i:0;R:33635;i:1;R:33560;}s:35:"1222:user.account.return_to_profile";a:2:{i:0;R:33635;i:1;R:33560;}s:53:"1222:user.account.flash_update_success_confirm_needed";a:2:{i:0;R:33635;i:1;R:33560;}s:38:"1222:user.account.flash_update_success";a:2:{i:0;R:33635;i:1;R:33560;}s:25:"1222:user.confirm.heading";a:2:{i:0;R:33635;i:1;R:33560;}s:38:"1222:user.confirm.press_confirm_button";a:2:{i:0;R:33635;i:1;R:33560;}s:24:"1222:user.confirm.button";a:2:{i:0;R:33635;i:1;R:33560;}s:25:"1222:user.confirm.success";a:2:{i:0;R:33635;i:1;R:33560;}s:34:"1222:user.confirm.before_you_start";a:2:{i:0;R:33635;i:1;R:33560;}s:32:"1222:user.confirm.already_active";a:2:{i:0;R:33635;i:1;R:33560;}s:31:"1222:user.confirm.unknown_token";a:2:{i:0;R:33635;i:1;R:33560;}s:27:"1222:user.confirm.reconfirm";a:2:{i:0;R:33635;i:1;R:33560;}s:32:"1222:user.confirm_resend.success";a:2:{i:0;R:33635;i:1;R:33560;}s:32:"1222:user.confirm_resend.failure";a:2:{i:0;R:33635;i:1;R:33560;}s:31:"1222:user.confirm_email.heading";a:2:{i:0;R:33635;i:1;R:33560;}s:44:"1222:user.confirm_email.press_confirm_button";a:2:{i:0;R:33635;i:1;R:33560;}s:30:"1222:user.confirm_email.button";a:2:{i:0;R:33635;i:1;R:33560;}s:31:"1222:user.confirm_email.success";a:2:{i:0;R:33635;i:1;R:33560;}s:31:"1222:user.confirm_email.failure";a:2:{i:0;R:33635;i:1;R:33560;}s:32:"1222:user.set_home.flash_success";a:2:{i:0;R:33635;i:1;R:33560;}s:33:"1222:user.go_public.flash_success";a:2:{i:0;R:33635;i:1;R:33560;}s:29:"1222:user.make_friend.success";a:2:{i:0;R:33635;i:1;R:33560;}s:28:"1222:user.make_friend.failed";a:2:{i:0;R:33635;i:1;R:33560;}s:38:"1222:user.make_friend.already_a_friend";a:2:{i:0;R:33635;i:1;R:33560;}s:31:"1222:user.remove_friend.success";a:2:{i:0;R:33635;i:1;R:33560;}s:36:"1222:user.remove_friend.not_a_friend";a:2:{i:0;R:33635;i:1;R:33560;}s:37:"1222:user.filter.not_an_administrator";a:2:{i:0;R:33635;i:1;R:33560;}s:20:"1222:user.list.title";a:2:{i:0;R:33635;i:1;R:33560;}s:22:"1222:user.list.heading";a:2:{i:0;R:33635;i:1;R:33560;}s:22:"1222:user.list.showing";a:2:{i:0;R:33635;i:1;R:33560;}s:22:"1222:user.list.summary";a:2:{i:0;R:33635;i:1;R:33560;}s:28:"1222:user.list.summary_no_ip";a:2:{i:0;R:33635;i:1;R:33560;}s:22:"1222:user.list.confirm";a:2:{i:0;R:33635;i:1;R:33560;}s:19:"1222:user.list.hide";a:2:{i:0;R:33635;i:1;R:33560;}s:20:"1222:user.list.empty";a:2:{i:0;R:33635;i:1;R:33560;}s:25:"1222:user.suspended.title";a:2:{i:0;R:33635;i:1;R:33560;}s:27:"1222:user.suspended.heading";a:2:{i:0;R:33635;i:1;R:33560;}s:29:"1222:user.suspended.webmaster";a:2:{i:0;R:33635;i:1;R:33560;}s:24:"1222:user.suspended.body";a:2:{i:0;R:33635;i:1;R:33560;}s:42:"1222:user_role.filter.not_an_administrator";a:2:{i:0;R:33635;i:1;R:33560;}s:32:"1222:user_role.filter.not_a_role";a:2:{i:0;R:33635;i:1;R:33560;}s:38:"1222:user_role.filter.already_has_role";a:2:{i:0;R:33635;i:1;R:33560;}s:38:"1222:user_role.filter.doesnt_have_role";a:2:{i:0;R:33635;i:1;R:33560;}s:26:"1222:user_role.grant.title";a:2:{i:0;R:33635;i:1;R:33560;}s:28:"1222:user_role.grant.heading";a:2:{i:0;R:33635;i:1;R:33560;}s:33:"1222:user_role.grant.are_you_sure";a:2:{i:0;R:33635;i:1;R:33560;}s:28:"1222:user_role.grant.confirm";a:2:{i:0;R:33635;i:1;R:33560;}s:25:"1222:user_role.grant.fail";a:2:{i:0;R:33635;i:1;R:33560;}s:27:"1222:user_role.revoke.title";a:2:{i:0;R:33635;i:1;R:33560;}s:29:"1222:user_role.revoke.heading";a:2:{i:0;R:33635;i:1;R:33560;}s:34:"1222:user_role.revoke.are_you_sure";a:2:{i:0;R:33635;i:1;R:33560;}s:29:"1222:user_role.revoke.confirm";a:2:{i:0;R:33635;i:1;R:33560;}s:26:"1222:user_role.revoke.fail";a:2:{i:0;R:33635;i:1;R:33560;}s:42:"1222:user_block.model.non_moderator_update";a:2:{i:0;R:33635;i:1;R:33560;}s:42:"1222:user_block.model.non_moderator_revoke";a:2:{i:0;R:33635;i:1;R:33560;}s:31:"1222:user_block.not_found.sorry";a:2:{i:0;R:33635;i:1;R:33560;}s:30:"1222:user_block.not_found.back";a:2:{i:0;R:33635;i:1;R:33560;}s:25:"1222:user_block.new.title";a:2:{i:0;R:33635;i:1;R:33560;}s:27:"1222:user_block.new.heading";a:2:{i:0;R:33635;i:1;R:33560;}s:26:"1222:user_block.new.reason";a:2:{i:0;R:33635;i:1;R:33560;}s:26:"1222:user_block.new.period";a:2:{i:0;R:33635;i:1;R:33560;}s:26:"1222:user_block.new.submit";a:2:{i:0;R:33635;i:1;R:33560;}s:36:"1222:user_block.new.tried_contacting";a:2:{i:0;R:33635;i:1;R:33560;}s:33:"1222:user_block.new.tried_waiting";a:2:{i:0;R:33635;i:1;R:33560;}s:30:"1222:user_block.new.needs_view";a:2:{i:0;R:33635;i:1;R:33560;}s:24:"1222:user_block.new.back";a:2:{i:0;R:33635;i:1;R:33560;}s:26:"1222:user_block.edit.title";a:2:{i:0;R:33635;i:1;R:33560;}s:28:"1222:user_block.edit.heading";a:2:{i:0;R:33635;i:1;R:33560;}s:27:"1222:user_block.edit.reason";a:2:{i:0;R:33635;i:1;R:33560;}s:27:"1222:user_block.edit.period";a:2:{i:0;R:33635;i:1;R:33560;}s:27:"1222:user_block.edit.submit";a:2:{i:0;R:33635;i:1;R:33560;}s:25:"1222:user_block.edit.show";a:2:{i:0;R:33635;i:1;R:33560;}s:25:"1222:user_block.edit.back";a:2:{i:0;R:33635;i:1;R:33560;}s:31:"1222:user_block.edit.needs_view";a:2:{i:0;R:33635;i:1;R:33560;}s:36:"1222:user_block.filter.block_expired";a:2:{i:0;R:33635;i:1;R:33560;}s:35:"1222:user_block.filter.block_period";a:2:{i:0;R:33635;i:1;R:33560;}s:37:"1222:user_block.create.try_contacting";a:2:{i:0;R:33635;i:1;R:33560;}s:34:"1222:user_block.create.try_waiting";a:2:{i:0;R:33635;i:1;R:33560;}s:28:"1222:user_block.create.flash";a:2:{i:0;R:33635;i:1;R:33560;}s:44:"1222:user_block.update.only_creator_can_edit";a:2:{i:0;R:33635;i:1;R:33560;}s:30:"1222:user_block.update.success";a:2:{i:0;R:33635;i:1;R:33560;}s:27:"1222:user_block.index.title";a:2:{i:0;R:33635;i:1;R:33560;}s:29:"1222:user_block.index.heading";a:2:{i:0;R:33635;i:1;R:33560;}s:27:"1222:user_block.index.empty";a:2:{i:0;R:33635;i:1;R:33560;}s:28:"1222:user_block.revoke.title";a:2:{i:0;R:33635;i:1;R:33560;}s:30:"1222:user_block.revoke.heading";a:2:{i:0;R:33635;i:1;R:33560;}s:34:"1222:user_block.revoke.time_future";a:2:{i:0;R:33635;i:1;R:33560;}s:27:"1222:user_block.revoke.past";a:2:{i:0;R:33635;i:1;R:33560;}s:30:"1222:user_block.revoke.confirm";a:2:{i:0;R:33635;i:1;R:33560;}s:29:"1222:user_block.revoke.revoke";a:2:{i:0;R:33635;i:1;R:33560;}s:28:"1222:user_block.revoke.flash";a:2:{i:0;R:33635;i:1;R:33560;}s:22:"1222:user_block.period";a:2:{i:0;R:33635;i:1;R:33560;}s:28:"1222:user_block.partial.show";a:2:{i:0;R:33635;i:1;R:33560;}s:28:"1222:user_block.partial.edit";a:2:{i:0;R:33635;i:1;R:33560;}s:30:"1222:user_block.partial.revoke";a:2:{i:0;R:33635;i:1;R:33560;}s:31:"1222:user_block.partial.confirm";a:2:{i:0;R:33635;i:1;R:33560;}s:36:"1222:user_block.partial.display_name";a:2:{i:0;R:33635;i:1;R:33560;}s:36:"1222:user_block.partial.creator_name";a:2:{i:0;R:33635;i:1;R:33560;}s:30:"1222:user_block.partial.reason";a:2:{i:0;R:33635;i:1;R:33560;}s:30:"1222:user_block.partial.status";a:2:{i:0;R:33635;i:1;R:33560;}s:36:"1222:user_block.partial.revoker_name";a:2:{i:0;R:33635;i:1;R:33560;}s:35:"1222:user_block.partial.not_revoked";a:2:{i:0;R:33635;i:1;R:33560;}s:34:"1222:user_block.helper.time_future";a:2:{i:0;R:33635;i:1;R:33560;}s:34:"1222:user_block.helper.until_login";a:2:{i:0;R:33635;i:1;R:33560;}s:32:"1222:user_block.helper.time_past";a:2:{i:0;R:33635;i:1;R:33560;}s:31:"1222:user_block.blocks_on.title";a:2:{i:0;R:33635;i:1;R:33560;}s:33:"1222:user_block.blocks_on.heading";a:2:{i:0;R:33635;i:1;R:33560;}s:31:"1222:user_block.blocks_on.empty";a:2:{i:0;R:33635;i:1;R:33560;}s:31:"1222:user_block.blocks_by.title";a:2:{i:0;R:33635;i:1;R:33560;}s:33:"1222:user_block.blocks_by.heading";a:2:{i:0;R:33635;i:1;R:33560;}s:31:"1222:user_block.blocks_by.empty";a:2:{i:0;R:33635;i:1;R:33560;}s:26:"1222:user_block.show.title";a:2:{i:0;R:33635;i:1;R:33560;}s:28:"1222:user_block.show.heading";a:2:{i:0;R:33635;i:1;R:33560;}s:32:"1222:user_block.show.time_future";a:2:{i:0;R:33635;i:1;R:33560;}s:30:"1222:user_block.show.time_past";a:2:{i:0;R:33635;i:1;R:33560;}s:27:"1222:user_block.show.status";a:2:{i:0;R:33635;i:1;R:33560;}s:25:"1222:user_block.show.show";a:2:{i:0;R:33635;i:1;R:33560;}s:25:"1222:user_block.show.edit";a:2:{i:0;R:33635;i:1;R:33560;}s:27:"1222:user_block.show.revoke";a:2:{i:0;R:33635;i:1;R:33560;}s:28:"1222:user_block.show.confirm";a:2:{i:0;R:33635;i:1;R:33560;}s:27:"1222:user_block.show.reason";a:2:{i:0;R:33635;i:1;R:33560;}s:25:"1222:user_block.show.back";a:2:{i:0;R:33635;i:1;R:33560;}s:28:"1222:user_block.show.revoker";a:2:{i:0;R:33635;i:1;R:33560;}s:31:"1222:user_block.show.needs_view";a:2:{i:0;R:33635;i:1;R:33560;}s:34:"1222:javascripts.map.base.standard";a:2:{i:0;R:33635;i:1;R:33560;}s:35:"1222:javascripts.map.base.cycle_map";a:2:{i:0;R:33635;i:1;R:33560;}s:39:"1222:javascripts.map.base.transport_map";a:2:{i:0;R:33635;i:1;R:33560;}s:34:"1222:javascripts.map.base.mapquest";a:2:{i:0;R:33635;i:1;R:33560;}s:37:"1222:javascripts.map.overlays.maplint";a:2:{i:0;R:33635;i:1;R:33560;}s:34:"1222:javascripts.site.edit_tooltip";a:2:{i:0;R:33635;i:1;R:33560;}s:43:"1222:javascripts.site.edit_disabled_tooltip";a:2:{i:0;R:33635;i:1;R:33560;}s:37:"1222:javascripts.site.edit_zoom_alert";a:2:{i:0;R:33635;i:1;R:33560;}s:37:"1222:javascripts.site.history_tooltip";a:2:{i:0;R:33635;i:1;R:33560;}s:46:"1222:javascripts.site.history_disabled_tooltip";a:2:{i:0;R:33635;i:1;R:33560;}s:40:"1222:javascripts.site.history_zoom_alert";a:2:{i:0;R:33635;i:1;R:33560;}s:31:"1222:redaction.edit.description";a:2:{i:0;R:33635;i:1;R:33560;}s:27:"1222:redaction.edit.heading";a:2:{i:0;R:33635;i:1;R:33560;}s:26:"1222:redaction.edit.submit";a:2:{i:0;R:33635;i:1;R:33560;}s:25:"1222:redaction.edit.title";a:2:{i:0;R:33635;i:1;R:33560;}s:26:"1222:redaction.index.empty";a:2:{i:0;R:33635;i:1;R:33560;}s:28:"1222:redaction.index.heading";a:2:{i:0;R:33635;i:1;R:33560;}s:26:"1222:redaction.index.title";a:2:{i:0;R:33635;i:1;R:33560;}s:30:"1222:redaction.new.description";a:2:{i:0;R:33635;i:1;R:33560;}s:26:"1222:redaction.new.heading";a:2:{i:0;R:33635;i:1;R:33560;}s:25:"1222:redaction.new.submit";a:2:{i:0;R:33635;i:1;R:33560;}s:24:"1222:redaction.new.title";a:2:{i:0;R:33635;i:1;R:33560;}s:31:"1222:redaction.show.description";a:2:{i:0;R:33635;i:1;R:33560;}s:27:"1222:redaction.show.heading";a:2:{i:0;R:33635;i:1;R:33560;}s:25:"1222:redaction.show.title";a:2:{i:0;R:33635;i:1;R:33560;}s:24:"1222:redaction.show.user";a:2:{i:0;R:33635;i:1;R:33560;}s:24:"1222:redaction.show.edit";a:2:{i:0;R:33635;i:1;R:33560;}s:27:"1222:redaction.show.destroy";a:2:{i:0;R:33635;i:1;R:33560;}s:27:"1222:redaction.show.confirm";a:2:{i:0;R:33635;i:1;R:33560;}s:27:"1222:redaction.create.flash";a:2:{i:0;R:33635;i:1;R:33560;}s:27:"1222:redaction.update.flash";a:2:{i:0;R:33635;i:1;R:33560;}s:32:"1222:redaction.destroy.not_empty";a:2:{i:0;R:33635;i:1;R:33560;}s:28:"1222:redaction.destroy.flash";a:2:{i:0;R:33635;i:1;R:33560;}s:28:"1222:redaction.destroy.error";a:2:{i:0;R:33635;i:1;R:33560;}s:20:"1238:add_text-adding";a:2:{i:0;s:23:"out-pywikipedia-addtext";i:1;s:21:"out-pywikipedia-0-all";}s:26:"1238:archivebot-older-than";a:2:{i:0;s:26:"out-pywikipedia-archivebot";i:1;R:35232;}s:28:"1238:archivebot-page-summary";a:2:{i:0;R:35234;i:1;R:35232;}s:29:"1238:archivebot-archiveheader";a:2:{i:0;R:35234;i:1;R:35232;}s:28:"1238:archivebot-archive-full";a:2:{i:0;R:35234;i:1;R:35232;}s:31:"1238:archivebot-archive-summary";a:2:{i:0;R:35234;i:1;R:35232;}s:19:"1238:basic-changing";a:2:{i:0;s:21:"out-pywikipedia-basic";i:1;R:35232;}s:41:"1238:capitalize_redirects-create-redirect";a:2:{i:0;s:35:"out-pywikipedia-capitalizeredirects";i:1;R:35232;}s:20:"1238:catall-changing";a:2:{i:0;s:22:"out-pywikipedia-catall";i:1;R:35232;}s:23:"1238:category-was-moved";a:2:{i:0;s:24:"out-pywikipedia-category";i:1;R:35232;}s:24:"1238:category-listifying";a:2:{i:0;R:35246;i:1;R:35232;}s:29:"1238:category-version-history";a:2:{i:0;R:35246;i:1;R:35232;}s:22:"1238:category-changing";a:2:{i:0;R:35246;i:1;R:35232;}s:27:"1238:category-was-disbanded";a:2:{i:0;R:35246;i:1;R:35232;}s:21:"1238:category-also-in";a:2:{i:0;R:35246;i:1;R:35232;}s:27:"1238:category-section-title";a:2:{i:0;R:35246;i:1;R:35232;}s:23:"1238:category-replacing";a:2:{i:0;R:35246;i:1;R:35232;}s:20:"1238:category-adding";a:2:{i:0;R:35246;i:1;R:35232;}s:22:"1238:category-removing";a:2:{i:0;R:35246;i:1;R:35232;}s:30:"1238:category_redirect-comment";a:2:{i:0;s:32:"out-pywikipedia-categoryredirect";i:1;R:35232;}s:38:"1238:category_redirect-change-category";a:2:{i:0;R:35257;i:1;R:35232;}s:35:"1238:category_redirect-add-template";a:2:{i:0;R:35257;i:1;R:35232;}s:35:"1238:category_redirect-edit-request";a:2:{i:0;R:35257;i:1;R:35232;}s:40:"1238:category_redirect-edit-request-item";a:2:{i:0;R:35257;i:1;R:35232;}s:33:"1238:category_redirect-fix-double";a:2:{i:0;R:35257;i:1;R:35232;}s:26:"1238:clean_sandbox-cleaned";a:2:{i:0;s:28:"out-pywikipedia-cleansandbox";i:1;R:35232;}s:23:"1238:commons-file-moved";a:2:{i:0;s:23:"out-pywikipedia-commons";i:1;R:35232;}s:31:"1238:commons-file-now-available";a:2:{i:0;R:35266;i:1;R:35232;}s:32:"1238:cosmetic_changes-standalone";a:2:{i:0;s:31:"out-pywikipedia-cosmeticchanges";i:1;R:35232;}s:28:"1238:cosmetic_changes-append";a:2:{i:0;R:35269;i:1;R:35232;}s:18:"1238:delete-images";a:2:{i:0;s:22:"out-pywikipedia-delete";i:1;R:35232;}s:27:"1238:delete-referring-pages";a:2:{i:0;R:35272;i:1;R:35232;}s:25:"1238:delete-from-category";a:2:{i:0;R:35272;i:1;R:35232;}s:21:"1238:delete-from-file";a:2:{i:0;R:35272;i:1;R:35232;}s:24:"1238:delete-linked-pages";a:2:{i:0;R:35272;i:1;R:35232;}s:22:"1238:djvutext-creating";a:2:{i:0;s:24:"out-pywikipedia-djvutext";i:1;R:35232;}s:21:"1238:editarticle-edit";a:2:{i:0;s:27:"out-pywikipedia-editarticle";i:1;R:35232;}s:18:"1238:featured-good";a:2:{i:0;s:24:"out-pywikipedia-featured";i:1;R:35232;}s:18:"1238:featured-list";a:2:{i:0;R:35282;i:1;R:35232;}s:22:"1238:featured-featured";a:2:{i:0;R:35282;i:1;R:35232;}s:20:"1238:featured-former";a:2:{i:0;R:35282;i:1;R:35232;}s:28:"1238:fixing_redirects-fixing";a:2:{i:0;s:31:"out-pywikipedia-fixingredirects";i:1;R:35232;}s:31:"1238:interwiki-adding-modifying";a:2:{i:0;s:25:"out-pywikipedia-interwiki";i:1;R:35232;}s:30:"1238:interwiki-adding-removing";a:2:{i:0;R:35289;i:1;R:35232;}s:21:"1238:interwiki-adding";a:2:{i:0;R:35289;i:1;R:35232;}s:23:"1238:interwiki-removing";a:2:{i:0;R:35289;i:1;R:35232;}s:40:"1238:interwiki-adding-removing-modifying";a:2:{i:0;R:35289;i:1;R:35232;}s:24:"1238:interwiki-modifying";a:2:{i:0;R:35289;i:1;R:35232;}s:33:"1238:interwiki-removing-modifying";a:2:{i:0;R:35289;i:1;R:35232;}s:20:"1238:isbn-formatting";a:2:{i:0;s:20:"out-pywikipedia-isbn";i:1;R:35232;}s:21:"1238:movepages-moving";a:2:{i:0;s:25:"out-pywikipedia-movepages";i:1;R:35232;}s:25:"1238:noreferences-add-tag";a:2:{i:0;s:28:"out-pywikipedia-noreferences";i:1;R:35232;}s:25:"1238:redirect-remove-loop";a:2:{i:0;s:24:"out-pywikipedia-redirect";i:1;R:35232;}s:24:"1238:redirect-fix-double";a:2:{i:0;R:35303;i:1;R:35232;}s:27:"1238:redirect-remove-broken";a:2:{i:0;R:35303;i:1;R:35232;}s:38:"1238:redirect-broken-redirect-template";a:2:{i:0;R:35303;i:1;R:35232;}s:22:"1238:replace-replacing";a:2:{i:0;s:23:"out-pywikipedia-replace";i:1;R:35232;}s:42:"1238:solve_disambiguation-redirect-removed";a:2:{i:0;s:35:"out-pywikipedia-solvedisambiguation";i:1;R:35232;}s:43:"1238:solve_disambiguation-redirect-resolved";a:2:{i:0;R:35310;i:1;R:35232;}s:40:"1238:solve_disambiguation-links-resolved";a:2:{i:0;R:35310;i:1;R:35232;}s:53:"1238:solve_disambiguation-redirect-adding-dn-template";a:2:{i:0;R:35310;i:1;R:35232;}s:44:"1238:solve_disambiguation-adding-dn-template";a:2:{i:0;R:35310;i:1;R:35232;}s:38:"1238:solve_disambiguation-unknown-page";a:2:{i:0;R:35310;i:1;R:35232;}s:39:"1238:solve_disambiguation-links-removed";a:2:{i:0;R:35310;i:1;R:35232;}s:24:"1238:table2wiki-warnings";a:2:{i:0;s:26:"out-pywikipedia-table2wiki";i:1;R:35232;}s:26:"1238:table2wiki-no-warning";a:2:{i:0;R:35318;i:1;R:35232;}s:22:"1238:template-removing";a:2:{i:0;s:24:"out-pywikipedia-template";i:1;R:35232;}s:22:"1238:template-changing";a:2:{i:0;R:35321;i:1;R:35232;}s:26:"1238:template-substituting";a:2:{i:0;R:35321;i:1;R:35232;}s:49:"1238:thirdparty-drtrigonbot-sum_disc-summary-head";a:2:{i:0;s:26:"out-pywikipedia-thirdparty";i:1;R:35232;}s:51:"1238:thirdparty-drtrigonbot-sum_disc-parse-nonhuman";a:2:{i:0;R:35325;i:1;R:35232;}s:48:"1238:thirdparty-drtrigonbot-sum_disc-parse-start";a:2:{i:0;R:35325;i:1;R:35232;}s:42:"1238:thirdparty-drtrigonbot-sum_disc-parse";a:2:{i:0;R:35325;i:1;R:35232;}s:50:"1238:thirdparty-drtrigonbot-sum_disc-parse-warning";a:2:{i:0;R:35325;i:1;R:35232;}s:47:"1238:thirdparty-drtrigonbot-sum_disc-notify-new";a:2:{i:0;R:35325;i:1;R:35232;}s:49:"1238:thirdparty-drtrigonbot-sum_disc-parse-notify";a:2:{i:0;R:35325;i:1;R:35232;}s:50:"1238:thirdparty-drtrigonbot-sum_disc-notify-notify";a:2:{i:0;R:35325;i:1;R:35232;}s:47:"1238:thirdparty-drtrigonbot-subster-summary-mod";a:2:{i:0;R:35325;i:1;R:35232;}s:50:"1238:thirdparty-drtrigonbot-sum_disc-notify-closed";a:2:{i:0;R:35325;i:1;R:35232;}s:49:"1238:thirdparty-drtrigonbot-sum_disc-parse-closed";a:2:{i:0;R:35325;i:1;R:35232;}s:48:"1238:thirdparty-drtrigonbot-sum_disc-summary-add";a:2:{i:0;R:35325;i:1;R:35232;}s:51:"1238:thirdparty-drtrigonbot-sum_disc-notify-changed";a:2:{i:0;R:35325;i:1;R:35232;}s:50:"1238:thirdparty-drtrigonbot-sum_disc-summary-clean";a:2:{i:0;R:35325;i:1;R:35232;}s:48:"1238:thirdparty-drtrigonbot-sum_disc-summary-mod";a:2:{i:0;R:35325;i:1;R:35232;}s:52:"1238:thirdparty-drtrigonbot-sum_disc-notify-maintmsg";a:2:{i:0;R:35325;i:1;R:35232;}s:46:"1238:thirdparty-drtrigonbot-sum_disc-parse-end";a:2:{i:0;R:35325;i:1;R:35232;}s:21:"1238:unlink-unlinking";a:2:{i:0;s:22:"out-pywikipedia-unlink";i:1;R:35232;}s:20:"1238:welcome-welcome";a:2:{i:0;s:23:"out-pywikipedia-welcome";i:1;R:35232;}s:25:"1238:welcome-bad_username";a:2:{i:0;R:35345;i:1;R:35232;}s:21:"1238:welcome-updating";a:2:{i:0;R:35345;i:1;R:35232;}s:76:"1208:1bfb53f31024a9f09825f804e39a30ad80154e24-the_database_for_1$s_is_not_re";a:2:{i:0;s:18:"out-statusnet-core";i:1;s:19:"out-statusnet-0-all";}s:64:"1208:bccc6f1f5cca72606032b0c35b12d1e01e8749d0-an_error_occurred.";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:a284d0ef43a21f55236a6b2c826328800e5cb021-no_configuration_file_found._t";a:2:{i:0;R:35349;i:1;R:35350;}s:58:"1208:00ee039174927cf617bd9651d75a558d7bd0ddd9-unknown_page";a:2:{i:0;R:35349;i:1;R:35350;}s:60:"1208:07d106fee312b682f7ef16d9f6290b0de0324212-unknown_action";a:2:{i:0;R:35349;i:1;R:35350;}s:52:"1208:2f81a22de0af5e9eab19326e19693f86ce612518-access";a:2:{i:0;R:35349;i:1;R:35350;}s:66:"1208:1712e2bce1fea1fc04990c79c120250152fb7d2a-site_access_settings";a:2:{i:0;R:35349;i:1;R:35350;}s:58:"1208:b233e775d63bb8b86cf031776d4caea613f59cda-registration";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:fd8ee2c51483baa091e9c9af9078fb313c3c7581-prohibit_anonymous_users_(not";a:2:{i:0;R:35349;i:1;R:35350;}s:53:"1208:95e0d9bb3832f35bf645db5bf004931de5721eac-private";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:1d0afab94d4d36d11059e4d78044d483b4065d4f-make_registration_invitation_o";a:2:{i:0;R:35349;i:1;R:35350;}s:57:"1208:80fa80e0349b4623407c01009bee2ba375b2d1e9-invite_only";a:2:{i:0;R:35349;i:1;R:35350;}s:72:"1208:a6cb4e15e15cc6cf05c4cdd333e4f875145d1e10-disable_new_registrations.";a:2:{i:0;R:35349;i:1;R:35350;}s:52:"1208:88d86b7721d587644e9c4cf33a084202cb3b0ff0-closed";a:2:{i:0;R:35349;i:1;R:35350;}s:67:"1208:7cd9582505892c7d2b7952af0a8d1b1d3c080598-save_access_settings.";a:2:{i:0;R:35349;i:1;R:35350;}s:50:"1208:e85726b34723718d86eeb40ab996e21219883557-save";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:07363d7dbc93d7e4d63ece8ac5e72bf52dd64506-there_was_a_problem_with_your";a:2:{i:0;R:35349;i:1;R:35350;}s:60:"1208:8e2de1e8b1af7cd2b403bd0d27c71332a55ac628-not_logged_in.";a:2:{i:0;R:35349;i:1;R:35350;}s:62:"1208:8d094195b13c8d12e5a0ec2b7d16131e7331fa59-no_such_profile.";a:2:{i:0;R:35349;i:1;R:35350;}s:59:"1208:cd46dbebcf9002c002b834d65830a9a5aaddbe11-no_such_list.";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:f0f9c3994824c3640026ec06f28f6386719ce4ed-there_was_an_unexpected_error";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:12da6c6395bf3971218fb1aede54b275ac25b950-there_was_a_problem_listing_s.";a:2:{i:0;R:35349;i:1;R:35350;}s:52:"1208:0a8d8b06d381db9b9b18ccc57dfb2d303e70239d-listed";a:2:{i:0;R:35349;i:1;R:35350;}s:59:"1208:6d7cf30b4fcebf03d229a0e25480e2a56ebb924f-no_such_page.";a:2:{i:0;R:35349;i:1;R:35350;}s:59:"1208:bf5d92cc3c1fa7c0e35b2e97d4719743a0841009-no_such_user.";a:2:{i:0;R:35349;i:1;R:35350;}s:59:"1208:483b2f76abe4da1355a993cb439a410ad8be3994-home_timeline";a:2:{i:0;R:35349;i:1;R:35350;}s:63:"1208:d9f69a26b499c1bc96ca6bcd35883743529aa698-s's_home_timeline";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:0e17c593ca026faad26faf9f256faa543442ef1d-feed_for_friends_of_s_(activit";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:4e414b36e420d48f820d220f7480f77bf8ae8064-feed_for_friends_of_s_(rss_1.0";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:595a65ffbb31889f5a2798c461816357e335bb71-feed_for_friends_of_s_(rss_2.0";a:2:{i:0;R:35349;i:1;R:35350;}s:74:"1208:ac30b1dd76d2848916d63d11ec2e294aef652dd4-feed_for_friends_of_s_(atom)";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:acbb1e25abd58cd7243b32dd0fd8e5eced4e2335-this_is_the_timeline_for_s_and";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:830cd7ac8ebb79557a324ea5f08499c1e938e547-try_subscribing_to_more_people";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:ca8c282d3863039294913c4e33231c6599626464-you_can_try_to_nudge_1$s_(.._2";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:48f5bc58e2572513cbe26116260515ad415b466c-why_not_register_an_account_(";a:2:{i:0;R:35349;i:1;R:35350;}s:57:"1208:54190a6fb8bb0fabcbd9c265273fda6edb65dccf-send_invite";a:2:{i:0;R:35349;i:1;R:35350;}s:59:"1208:db8b365e8072cefac4fe32fb7b0d9cc78d8cb323-s_and_friends";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:8ec8f1a1d1cfd60a726a834e61389ff3f9491844-updates_from_1$s_and_friends_o";a:2:{i:0;R:35349;i:1;R:35350;}s:67:"1208:7a17c5387b4908d9fcd039bf72509f3f88caf529-api_method_not_found.";a:2:{i:0;R:35349;i:1;R:35350;}s:74:"1208:2586eb283dc5b999d96cc34e8009c0d6b3049f8a-this_method_requires_a_post.";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:8fceab4c482e0805e446e7bb1129eb1a1a1109e3-you_must_specify_a_parameter_n";a:2:{i:0;R:35349;i:1;R:35350;}s:68:"1208:ccc60a63f674cce212b1d686c7bc1a831f3bb63d-could_not_update_user.";a:2:{i:0;R:35349;i:1;R:35350;}s:66:"1208:993a855dcd4c17bd2da52f82496164b0f7f8e50e-user_has_no_profile.";a:2:{i:0;R:35349;i:1;R:35350;}s:69:"1208:ac78013aea28fef21014bd36bd44833023cef905-could_not_save_profile.";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:2cf2637469d0a229b0f9bc64c667a945e80dbf59-plural_gettext_the_server_was";a:2:{i:0;R:35349;i:1;R:35350;}s:50:"1208:64ede498f550544579cd46d4dc0f1e37ecea6b98-main";a:2:{i:0;R:35349;i:1;R:35350;}s:56:"1208:59aafbd648ce69abf8933f55bb4ebf0b7e0b407f-s_timeline";a:2:{i:0;R:35349;i:1;R:35350;}s:61:"1208:3f7dc38d1cd21c6f8af548338a8022e2b5fc99f4-s_subscriptions";a:2:{i:0;R:35349;i:1;R:35350;}s:57:"1208:c0ae9e6ddd0d30acc34ac6e773f7fcd726b78401-s_favorites";a:2:{i:0;R:35349;i:1;R:35350;}s:59:"1208:ef8667162d6d6fdeeb3bd88290b885bcb7afea7a-s_memberships";a:2:{i:0;R:35349;i:1;R:35350;}s:72:"1208:26a6bba8c61496e84388db6992f3e2d1f0863bde-you_cannot_block_yourself!";a:2:{i:0;R:35349;i:1;R:35350;}s:64:"1208:7ca3592b5d87cf6103ae7c5d398ec062a98138b8-block_user_failed.";a:2:{i:0;R:35349;i:1;R:35350;}s:66:"1208:f0d0980940898fb93a90d41299a4696a2837ae52-unblock_user_failed.";a:2:{i:0;R:35349;i:1;R:35350;}s:65:"1208:4a8f2317057aa40c4fa8163b954d0324b31f88b3-no_conversation_id.";a:2:{i:0;R:35349;i:1;R:35350;}s:72:"1208:c25024a08c82843278680268e9e98b3c9bd2ab4e-no_conversation_with_id_d.";a:2:{i:0;R:35349;i:1;R:35350;}s:58:"1208:375b4f734d4f6dc82afd185ad53b3fb8db71c3a9-conversation";a:2:{i:0;R:35349;i:1;R:35350;}s:68:"1208:5ce74723c3ccd6539a6c662f6d8b39d6a192cb9d-direct_messages_from_s";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:b65af1b5564ffe4944f3501605e6cd1e56db699b-all_the_direct_messages_sent_f";a:2:{i:0;R:35349;i:1;R:35350;}s:66:"1208:e9f6df02b02c7b666362a77a0955465d8d320a97-direct_messages_to_s";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:0e1b07434b972c9ffa3b4bc3419d88e6d810d60e-all_the_direct_messages_sent_t";a:2:{i:0;R:35349;i:1;R:35350;}s:62:"1208:0531e952115314d2c80c771e422ecd3080d6ef59-no_message_text!";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:d0bd121423001c2f142170813ddbdc6e1342b48b-plural_gettext_that's_too_lon";a:2:{i:0;R:35349;i:1;R:35350;}s:71:"1208:86e59282b5edb16f5ca25fcaf75a14636bf1d14d-recipient_user_not_found.";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:17d49159bb1522becd26fee85f61feb0497cb4e6-cannot_send_direct_messages_to";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:b82ebf4fa1640f618f3d40ef71ca01b418c59c91-do_not_send_a_message_to_yours";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:edbb6852e34b3bbdb14e1145a3db0848fd545d4f-no_status_found_with_that_id.";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:71e62bf59ae5af06b4dbd67ba98ba8a1c423d904-this_status_is_already_a_favor";a:2:{i:0;R:35349;i:1;R:35350;}s:72:"1208:daa3df1d5a42b1d287cd4b5599a8d6d7dfbb0a2d-could_not_create_favorite.";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:a1a5debf1d55389c450a6359bec1d834d9fe0e6d-that_status_is_not_a_favorite.";a:2:{i:0;R:35349;i:1;R:35350;}s:72:"1208:c78420468ee55c79f0e4c9a46568badc6eae970c-could_not_delete_favorite.";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:ceb283aa1eee8951e5641901dbfca8f3e6609877-could_not_follow_user_profile";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:2f1150d6df4e09694a811c5a8f0b59094423be78-could_not_follow_user_s_is_alr";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:e4bd0476251c91e37d44e7060958dcf18f725782-could_not_unfollow_user_user_n";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:a5982d2a460314469ed165c64996bdb6843e3944-you_cannot_unfollow_yourself.";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:48b38f93966c39fb3808ad301ab365d0bf04525e-two_valid_ids_or_nick_names_mu";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:44d7eb69ac8e89df64c5afda038caaeaaa0fae46-could_not_determine_source_use";a:2:{i:0;R:35349;i:1;R:35350;}s:73:"1208:5ef7adec7a9608dbfa321314618b2459f65c6197-could_not_find_target_user.";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:b3bd02b41b8e1fa2de777ba31fb092bae01ccce7-nickname_already_in_use._try_a";a:2:{i:0;R:35349;i:1;R:35350;}s:67:"1208:f8bb13a801a61deab26bafedcffb4ea91b002ff3-not_a_valid_nickname.";a:2:{i:0;R:35349;i:1;R:35350;}s:74:"1208:ee8de25d75d24c3e91150ce30538d5d38b726f10-homepage_is_not_a_valid_url.";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:e7c8e7c011f929a0be4a46d797b513a95b5cb033-full_name_is_too_long_(maximum";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:c1e7c31e80c1259046a0b7294f75879c362ed2fa-plural_gettext_description_is";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:3e281ea327f2d18593d83e1fcd4191d35f04cbf7-location_is_too_long_(maximum";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:f88f962dd9ec1eded4a046685050913a3cc67cae-plural_gettext_too_many_alias";a:2:{i:0;R:35349;i:1;R:35350;}s:65:"1208:be480b3c0e5b76bfd520373ea46845d403de28b3-invalid_alias_"_s".";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:90c399d4967bf04a0456022b7822a67e0472303e-alias_"_s"_already_in_use._try";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:a6db9a69d9807ac6714c5941bf20cc83d896a80a-alias_can't_be_the_same_as_nic";a:2:{i:0;R:35349;i:1;R:35350;}s:62:"1208:7d7d9bdd15dbc1ee9e19c13b3bb206ab59691af0-group_not_found.";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:caeb7695efd4ad7ac499251b9135931f91161871-you_are_already_a_member_of_th";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:7fe9fa7964fcf727910b16da06ee83fe3e0a0faa-you_have_been_blocked_from_tha";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:ceb8f675e2743d11b7d2357e5ce1508be2ecef3b-could_not_join_user_1$s_to_gro";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:34afb5c032f780a956dfa1a47ffd980b1e3b3c68-you_are_not_a_member_of_this_g";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:36f07a160742a427d55cd19cf3c33a66838cc1eb-could_not_remove_user_1$s_from";a:2:{i:0;R:35349;i:1;R:35350;}s:56:"1208:a1b90bf972245ab7803eb2a92eb4533d30759754-s's_groups";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:5a082be654667e5f2f844bcde5ec82f44abefee0-1$s_groups_2$s_is_a_member_of";a:2:{i:0;R:35349;i:1;R:35350;}s:54:"1208:144bdb2b55bf1c6f4956bdc27ad5cbe0892e0474-s_groups";a:2:{i:0;R:35349;i:1;R:35350;}s:57:"1208:16498460445246331414abdaba03700b18ee93d6-groups_on_s";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:6c6ea1d3ada4675f410ab4e9532e2186d5392413-you_must_be_an_admin_to_edit_t";a:2:{i:0;R:35349;i:1;R:35350;}s:69:"1208:012a0bf5f639184eebd03f8d56400aacd7382fb7-could_not_update_group.";a:2:{i:0;R:35349;i:1;R:35350;}s:71:"1208:0cfa87d9ccf662609bec25ab7afe17090776ae64-could_not_create_aliases.";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:80ec5e65d33302d6ae18caf4458372191ed3ca43-nickname_must_have_only_lowerc";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:72c786c223edea94fe8ccdf835866d71417fd97c-alias_cannot_be_the_same_as_ni";a:2:{i:0;R:35349;i:1;R:35350;}s:61:"1208:e66249230fc2545d7c7fff9a729012955fbc6b8d-list_not_found.";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:702188508fbe4ff9825a0afa1087533541c41304-you_cannot_update_lists_that_d";a:2:{i:0;R:35349;i:1;R:35350;}s:63:"1208:e41bf8f62ee7b83f4cc9f8227733c88a4701ab20-an_error_occured.";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:4121cba762bd9b8e02cc773cace4c763ab05d509-you_cannot_delete_lists_that_d";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:81ea8d4710e08f85603aa13ab57545733e1c57f9-the_specified_user_is_not_a_me";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:17530c97a616de991a52bff98acf72c00c0081ae-you_are_not_allowed_to_add_mem";a:2:{i:0;R:35349;i:1;R:35350;}s:72:"1208:9dbb742089c6b69605fdf0030b2736fd75bb23a0-you_must_specify_a_member.";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:5b7abf73efc86cdadb40d4f37c2b75ef8ceab95f-you_are_not_allowed_to_remove";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:697c9a80f061c1e8c64a9d8f6d44722031d1abb6-the_user_you_are_trying_to_rem";a:2:{i:0;R:35349;i:1;R:35350;}s:70:"1208:8913a9a7b59bab56ea76ad94f6858a9fa81fc711-a_list_must_have_a_name.";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:e5b143e16610bedf3b2e6eb153d145056ac66fbc-the_specified_user_is_not_a_su";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:954e291ef02ab89218e4d5788a4afb4316aa36c7-you_are_not_subscribed_to_this";a:2:{i:0;R:35349;i:1;R:35350;}s:60:"1208:144debaf18c24a99b22f8d22d0bf7198c2802875-upload_failed.";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:2788f81b160bba33b3db2881acdd615c05f14186-invalid_request_token_or_verif";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:bc93a3caa5d158bec04c12cddf56c1892d17afc8-no_oauth_token_parameter_provi";a:2:{i:0;R:35349;i:1;R:35350;}s:68:"1208:fb93941463f7244a912cce8e83500ee02ffb117f-invalid_request_token.";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:a929e0064aaa4ea9d9d7cea765b11854c6f832fc-request_token_already_authoriz";a:2:{i:0;R:35349;i:1;R:35350;}s:72:"1208:02d7e7e98e66299a77b2713aeea03363617b7fbc-invalid_nickname_password!";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:b273f1f9043f2ba4eb4c952c506c57f0168bbdb6-database_error_inserting_oauth";a:2:{i:0;R:35349;i:1;R:35350;}s:73:"1208:7bba1c3a51cc7b727087dd3414b028e505991127-unexpected_form_submission.";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:d9ff4f92b3a730d9330b5b1f3524559714bde664-an_application_would_like_to_c";a:2:{i:0;R:35349;i:1;R:35350;}s:66:"1208:64ead686560184eb9cc28ea07b473e9c97c4f2dd-allow_or_deny_access";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:6488dd5a0e7d901a0e78dfcae0a4100fbbde4e0b-an_application_would_like_the";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:898cd7cf0dd28eee3fefbbc6d12345b96d40bb5c-the_application_strong_1$s_str";a:2:{i:0;R:35349;i:1;R:35350;}s:53:"1208:713594ef1ed511ce44a2e8c590eb90c221f5b595-account";a:2:{i:0;R:35349;i:1;R:35350;}s:54:"1208:ce2bd99c47588fb943959213b6f03d82eaf77ab9-nickname";a:2:{i:0;R:35349;i:1;R:35350;}s:54:"1208:8be3c943b1609fffbfc51aad666d0a04adf83c9d-password";a:2:{i:0;R:35349;i:1;R:35350;}s:52:"1208:08be17603e6624ef0e43fb8c8d30fb8ed74cc6fb-cancel";a:2:{i:0;R:35349;i:1;R:35350;}s:51:"1208:9739959d8ff7e5a107821900b8a0333ef8ea960e-allow";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:a0bfbd1e12b6f9ffd364bd72edb5a03584feaef1-authorize_access_to_your_accou";a:2:{i:0;R:35349;i:1;R:35350;}s:69:"1208:5c8fd315cd791d8593b473c0ce0ea1ae1370cc03-authorization_canceled.";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:4142556a19452743a8b2d2866d51638371f57f69-the_request_token_s_has_been_r";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:7b0d98c070b3c1ca8b83f8f8d09b59e9f90ea47d-you_have_successfully_authoriz";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:a676a8812bf4aada34e24eb4eca534e821f9af30-please_return_to_the_applicati";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:53b04ccc54296351d0248cefdc7a20ea9d8d8361-you_have_successfully_authoriz";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:489fbbab67e247a9726e97d1d8b1d1df3a50461e-please_return_to_s_and_enter_t";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:894c11665824dc43c9d21e9837f7c7907b7d9516-this_method_requires_a_post_or";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:27c533257debec777c7c120befc5fcf57c87a1b5-you_may_not_delete_another_use";a:2:{i:0;R:35349;i:1;R:35350;}s:61:"1208:4e0b1f2359ca1b1c0efeac5ffce3bec7272a0d52-no_such_notice.";a:2:{i:0;R:35349;i:1;R:35350;}s:72:"1208:885f5a801022ea5f40645db46b00a7ff0775d95b-http_method_not_supported.";a:2:{i:0;R:35349;i:1;R:35350;}s:67:"1208:8fe1357796a6b1c1f0e3cf6d3e03340caacbb675-unsupported_format_s.";a:2:{i:0;R:35349;i:1;R:35350;}s:61:"1208:0119b9670290c0c864c503ea6a29fdbfd0019875-status_deleted.";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:dfc89dc9621180b8d45976f2b45b14dffccde095-no_status_with_that_id_found.";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:e1e4a3791c6f0d77e2c79163790e287e4c26a44e-can_only_delete_using_the_atom";a:2:{i:0;R:35349;i:1;R:35350;}s:72:"1208:e67bb251e4fa9bd639d6f0543a7c1395538ef66b-cannot_delete_this_notice.";a:2:{i:0;R:35349;i:1;R:35350;}s:62:"1208:5b4473ba38717a57a2d729f45c232442a6288f78-deleted_notice_d";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:030053cc63b13571e5438c6eaf69d61f0162de0f-client_must_provide_a_'status'";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:d8663a4eb9ca9e3a749fe5e2a895bf94c8769ebf-plural_gettext_that's_too_lon";a:2:{i:0;R:35349;i:1;R:35350;}s:70:"1208:dc9830c477d944d875bc7c9580b062a3c8b5aa4c-parent_notice_not_found.";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:7c17f2e19b89418ea67c0534a59a72622b38b1ab-plural_gettext_maximum_notice";a:2:{i:0;R:35349;i:1;R:35350;}s:65:"1208:0a78c7a3306e49cbf5d85526e18ca5f2935ab94f-unsupported_format.";a:2:{i:0;R:35349;i:1;R:35350;}s:68:"1208:8bd38c8984a6376eaea2cd456de04d7d120c37ac-1$s_favorites_from_2$s";a:2:{i:0;R:35349;i:1;R:35350;}s:74:"1208:9b4906ccf1a413587ab42618a6848ff389b52c9a-1$s_updates_favorited_by_2$s";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:3c66c630e8ac82ea2c4f196d1d23af91d6204aa0-could_not_generate_feed_for_li";a:2:{i:0;R:35349;i:1;R:35350;}s:72:"1208:2ed0e94d2b1464117bbd0493466817b1d5081ccd-1$s_updates_mentioning_2$s";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:a0b79350faeed8e2a4253d0c1447817aa2a70ad0-1$s_updates_that_reply_to_upd";a:2:{i:0;R:35349;i:1;R:35350;}s:63:"1208:3b8712924f3fe5558cfa8fb1aa25ef592e575a6c-s_public_timeline";a:2:{i:0;R:35349;i:1;R:35350;}s:70:"1208:f7ebf748e30bd2b0b0bfd1ea3682a3f78ba66dd1-s_updates_from_everyone!";a:2:{i:0;R:35349;i:1;R:35350;}s:60:"1208:b0f03e1eac787034dd7b44cf427abab933833c7b-unimplemented.";a:2:{i:0;R:35349;i:1;R:35350;}s:59:"1208:efa550aabf7e538169f54b3a5e61406dc25adc89-repeated_to_s";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:06d5114de321c12023b8eff525b7cc082bc9fdf8-1$s_notices_that_were_to_repe";a:2:{i:0;R:35349;i:1;R:35350;}s:58:"1208:e9b02c0e4fe918c7014639a98fd062d47791d2ea-repeats_of_s";a:2:{i:0;R:35349;i:1;R:35350;}s:74:"1208:8304e30923b3edeb3f6d6479699a730c9ffb7245-1$s_notices_that_2$s_3$s_has";a:2:{i:0;R:35349;i:1;R:35350;}s:67:"1208:8a143441b3e4ed05af36644737fa6a0f515b99fa-notices_tagged_with_s";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:6897ad4de66b0d71f371eede658950e86315de0c-updates_tagged_with_1$s_on_2$s";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:bb743bef4c23302c156eea5bc0f20d04f0408bcf-only_the_user_can_add_to_their";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:f1016d9f13d54b262239c06a8df9b33b69032bd9-only_accept_atompub_for_atom_f";a:2:{i:0;R:35349;i:1;R:35350;}s:74:"1208:2888d5ff095aec4b8f9b43cf7476169ed692d635-atom_post_must_not_be_empty.";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:41393d39502e138d7a9aacc4a8b444bfc67588ae-atom_post_must_be_well-formed";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:d16bd24316e23a1969edae3d4d7bcc301074e3c4-atom_post_must_be_an_atom_entr";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:2531e5ebb209d64a75cf76212e1d22d5b1ce0d59-can_only_handle_post_activitie";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:c95914c04796a786c468eb5e673f256dc5f421a0-cannot_handle_activity_object";a:2:{i:0;R:35349;i:1;R:35350;}s:70:"1208:141c348fac2b30314c3c9e07bdd9b9657e15c4de-no_content_for_notice_d.";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:45a34c5bfd759d7bfcd2a975d9acd214a84e06f7-notice_with_uri_"_s"_already_e";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:445c85547f9b8f862873d4d44ad9a30871e67d75-api_method_under_construction.";a:2:{i:0;R:35349;i:1;R:35350;}s:61:"1208:9c986a39aaffc5e0efbc76c73d7d9ddd22203d56-user_not_found.";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:3fd1b3f946d7ccd09cdaec2f685b4ace3f8bbe75-you_must_be_logged_in_to_leave";a:2:{i:0;R:35349;i:1;R:35350;}s:60:"1208:1105e8ae237d3e8c9fc4b1f87288c424196b0491-no_such_group.";a:2:{i:0;R:35349;i:1;R:35350;}s:64:"1208:00cd3604d3a976c0c3e96e38fba8cb43ab91d2b4-no_nickname_or_id.";a:2:{i:0;R:35349;i:1;R:35350;}s:64:"1208:263c2ff57c9b068916973dade24970b61800a1bf-must_be_logged_in.";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:53dfc944f5218a359b46733cdbf73026b09dc88c-only_group_admin_can_approve_o";a:2:{i:0;R:35349;i:1;R:35350;}s:69:"1208:2f045c54d232ecf3678f1cc594e273cd6264ed9e-must_specify_a_profile.";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:5cd5450f173a98bd6a3dee89baa52763b5e798f4-s_is_not_in_the_moderation_qu";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:f83f1a690bb80c5b1552fa4d87da237661b6183f-internal_error_received_neithe";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:edffe5b1de6545bb16e22d6c75650dda23866de2-internal_error_received_both_c";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:fa26ef746ecded96414c3e0cf943aaf735c9e2f1-could_not_cancel_request_for_u";a:2:{i:0;R:35349;i:1;R:35350;}s:67:"1208:ff4802b2842b6b9c976a9e43acef14311b2e51cb-1$s's_request_for_2$s";a:2:{i:0;R:35349;i:1;R:35350;}s:68:"1208:71867a9a1726b2c36f06226dc4dc7a65cc1679d8-join_request_approved.";a:2:{i:0;R:35349;i:1;R:35350;}s:68:"1208:97de9d54b799602eb7908d85d6ee40bc7f4efa3b-join_request_canceled.";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:52cc4fcd8dcc36089ac35dfe6de518be243c31b9-s_is_not_in_the_moderation_qu";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:f6391c694863f896b74a4006c156245315d429e2-could_not_cancel_or_approve_re";a:2:{i:0;R:35349;i:1;R:35350;}s:59:"1208:79382cbe23971ec22411148106eeb6cc6529d746-1$s's_request";a:2:{i:0;R:35349;i:1;R:35350;}s:68:"1208:88de0ed8e8119120fcccffe40dfa58617a3839ce-subscription_approved.";a:2:{i:0;R:35349;i:1;R:35350;}s:68:"1208:0862b96201bf66507562f7cf544ea18115264fb0-subscription_canceled.";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:2a16f577225d2b532e36f5bd4f3f30b38feb643b-notices_1$s_has_favorited_on_2";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:4421e53abf2dbc8cd6bb2783ae7a0263a3a3fc83-cannot_add_someone_else's_subs";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:7f94b5d7a4051c0b21749353a39098883fe14ee6-can_only_handle_favorite_activ";a:2:{i:0;R:35349;i:1;R:35350;}s:68:"1208:929b9d7ee4cf0a7b6e4824ba9379995d74cd6f8a-can_only_fave_notices.";a:2:{i:0;R:35349;i:1;R:35350;}s:61:"1208:0ee0c16a196cca794aa9932042263ec0b805b9c1-unknown_notice.";a:2:{i:0;R:35349;i:1;R:35350;}s:65:"1208:13288fecf72c95deaa90158fb8e149b08b4ad71e-already_a_favorite.";a:2:{i:0;R:35349;i:1;R:35350;}s:68:"1208:c01b95187d8a7239296f36dda94d6543d4f2e829-group_memberships_of_s";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:091c597d002f431991b5103422ef17b883bcd6dd-groups_1$s_is_a_member_of_on_2";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:09dee52968da4bfde0cca2ae639119612ff70b0b-cannot_add_someone_else's_memb";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:981e6f18e6b0adf1c0474e4fd531cb12e13c7212-can_only_handle_join_activitie";a:2:{i:0;R:35349;i:1;R:35350;}s:60:"1208:96658c7ad6253abffab115c8f75682e2c53887e1-unknown_group.";a:2:{i:0;R:35349;i:1;R:35350;}s:63:"1208:cac1eab08539f09d48323206700b0ec2fd6bdf64-already_a_member.";a:2:{i:0;R:35349;i:1;R:35350;}s:63:"1208:c961f7d6c82ab5957e98692a6bd2ef02503ba603-blocked_by_admin.";a:2:{i:0;R:35349;i:1;R:35350;}s:63:"1208:3f7562405c37080985ae22507eeab0a74bc77db5-no_such_favorite.";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:fd14b0ad11f0380d71a1a8edb9517d061dbe01c6-cannot_delete_someone_else's_f";a:2:{i:0;R:35349;i:1;R:35350;}s:59:"1208:362346c97367b03aff8bc65da50fef6e287e82b2-not_a_member.";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:e9c65468a6bfc3604c865ed69cff5a0178367e7c-cannot_delete_someone_else's_m";a:2:{i:0;R:35349;i:1;R:35350;}s:67:"1208:c14fb74b7a07962d2cb5567f14eb44de6bc5b58b-no_such_profile_id_d.";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:2c9b922e8314efebcf02fc56b5dd6dcb0145136e-profile_1$d_not_subscribed_to";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:e983499629f65aeb4058d37030725755c31702c4-cannot_delete_someone_else's_s";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:1359e2a4a17b7dced78a43a032444a68f3ac7343-people_1$s_has_subscribed_to_o";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:cf8ad429765a01795d3ce3e45a864568d164651a-can_only_handle_follow_activit";a:2:{i:0;R:35349;i:1;R:35350;}s:69:"1208:92ce9aad0f4e98c16d8faaef5d93af921130eadd-can_only_follow_people.";a:2:{i:0;R:35349;i:1;R:35350;}s:64:"1208:e48490768425aee0d77d9cc5bd9cd6f7a068639d-unknown_profile_s.";a:2:{i:0;R:35349;i:1;R:35350;}s:70:"1208:abeeb3e5ba05721aeec7231566c393aa505eaf37-already_subscribed_to_s.";a:2:{i:0;R:35349;i:1;R:35350;}s:65:"1208:a5f1a69046d5605067eb9010d4567aa3a64eff6a-no_such_attachment.";a:2:{i:0;R:35349;i:1;R:35350;}s:58:"1208:69055cb5ba4f0c77cd6e11fb1250640abfd1fe4b-no_nickname.";a:2:{i:0;R:35349;i:1;R:35350;}s:54:"1208:bbd1ca0dbe53ec94fdf5c1b7a1e839fbca7b226f-no_size.";a:2:{i:0;R:35349;i:1;R:35350;}s:59:"1208:118b0315734e83357f0eefd0de032eaec10cce54-invalid_size.";a:2:{i:0;R:35349;i:1;R:35350;}s:52:"1208:7631b26ea80b1b601c313b15cc4e2ab03faedf30-avatar";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:2b9babf60d4534b735f108784c6bd71df2517a7f-you_can_upload_your_personal_a";a:2:{i:0;R:35349;i:1;R:35350;}s:61:"1208:b8c4e7694dcb921e0c4073bce6d5c9d34d14a167-avatar_settings";a:2:{i:0;R:35349;i:1;R:35350;}s:54:"1208:c0a8060f3b1102da85ef318544468f24221e6515-original";a:2:{i:0;R:35349;i:1;R:35350;}s:53:"1208:f1fbb2b43dca281d0138f4fcc92543ad143ef0b1-preview";a:2:{i:0;R:35349;i:1;R:35350;}s:52:"1208:62fa51d142ae0806953167ba6108fc6994c029d5-delete";a:2:{i:0;R:35349;i:1;R:35350;}s:52:"1208:563e34baa955a703739fd6e1d3e1ef8209d79013-upload";a:2:{i:0;R:35349;i:1;R:35350;}s:50:"1208:bc0c3f5891f8d8468046c473b131bdbeb01b54ac-crop";a:2:{i:0;R:35349;i:1;R:35350;}s:63:"1208:0db01d5f560ef09636da08727a267f69abd37012-no_file_uploaded.";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:10a7187b20ef358e50fb50e18db3a5dfb04cb720-pick_a_square_area_of_the_imag";a:2:{i:0;R:35349;i:1;R:35350;}s:65:"1208:41b57dc7cd45b5741fde8094f4739dbb75e36b83-lost_our_file_data.";a:2:{i:0;R:35349;i:1;R:35350;}s:61:"1208:67dbbd7c46b370d15cf681cda01e6c858f5b7094-avatar_updated.";a:2:{i:0;R:35349;i:1;R:35350;}s:69:"1208:3f842fa68af12e71a0a3d547d0e868a635870841-failed_updating_avatar.";a:2:{i:0;R:35349;i:1;R:35350;}s:61:"1208:7cb0c2b5d62fe9bddff6011671193bbe328f2e64-avatar_deleted.";a:2:{i:0;R:35349;i:1;R:35350;}s:60:"1208:87dc28dceca5d19cc01a3d5f8f286e8b405fc5b0-backup_account";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:9fbe38ed7e133bbf3fa8135f607b9f7013e9a974-only_logged-in_users_can_backu";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:db0e26bb63b723daf59d937c6656ace76c479894-you_may_not_backup_your_accoun";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:5372d7630e9ebf08213398379735b10702698adc-you_can_backup_your_account_da";a:2:{i:0;R:35349;i:1;R:35350;}s:52:"1208:c174ef9a34c58f74ce3d1d58b99127407d0b42ce-backup";a:2:{i:0;R:35349;i:1;R:35350;}s:66:"1208:72e914947d6dca81392f8940ea7c3ed33359abf8-backup_your_account.";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:12e251380c2e086ca9c9e731d974cb7fbfec0218-you_already_blocked_that_user.";a:2:{i:0;R:35349;i:1;R:35350;}s:56:"1208:2cc4899da734e52f4bedc611bef5c0052fb4f40f-block_user";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:1ff441083a78f8b899bf9bb2c842182fc0a5d4b7-are_you_sure_you_want_to_block";a:2:{i:0;R:35349;i:1;R:35350;}s:48:"1208:68cd6e72fd2c1f267dbcfcbba0c21b8fc95174c1-no";a:2:{i:0;R:35349;i:1;R:35350;}s:69:"1208:d1b0920c3a8e6570d7b362a33a6ab1a9745c113d-do_not_block_this_user.";a:2:{i:0;R:35349;i:1;R:35350;}s:49:"1208:e2de18c030c8e21e7bc44245060b1a826f2c606e-yes";a:2:{i:0;R:35349;i:1;R:35350;}s:62:"1208:b25c403ba1b9fc83b6462f169f3215c20aa5a99e-block_this_user.";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:fefce4836d3890d28d3417eca50509dc09b0f594-failed_to_save_block_informati";a:2:{i:0;R:35349;i:1;R:35350;}s:64:"1208:27a4defe2b8129b5df985c5da80016abc0eef70c-s_blocked_profiles";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:595c80b6ade559b0cfb1fac0d678399dac3fccab-1$s_blocked_profiles,_page_2$";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:05d1f48e5e5aeac93490cd0ddaa764de862bc177-a_list_of_the_users_blocked_fr";a:2:{i:0;R:35349;i:1;R:35350;}s:69:"1208:21cccef045969556f892daf76f97a3c7d46e389c-unblock_user_from_group";a:2:{i:0;R:35349;i:1;R:35350;}s:53:"1208:9a68d5adb75a8e4eae073327815714f81cf9564c-unblock";a:2:{i:0;R:35349;i:1;R:35350;}s:63:"1208:8672cd216654dcacb3cfbe0e6c1b7cb98d057506-unblock_this_user";a:2:{i:0;R:35349;i:1;R:35350;}s:55:"1208:fb85ad754f5ac67369135abd751daefdbb5d052d-post_to_s";a:2:{i:0;R:35349;i:1;R:35350;}s:64:"1208:6e4c740b2ddb92529384a841f1ce5a99c76c48fa-1$s_left_group_2$s";a:2:{i:0;R:35349;i:1;R:35350;}s:71:"1208:dbeef1296820046f2df168e3d45469731fad9946-no_profile_id_in_request.";a:2:{i:0;R:35349;i:1;R:35350;}s:70:"1208:6991369b02ff681e4e6f01ad04e27159d3a7d826-no_profile_with_that_id.";a:2:{i:0;R:35349;i:1;R:35350;}s:58:"1208:b04469906d94872161c50b527cc2c9b2fbb24dcf-unsubscribed";a:2:{i:0;R:35349;i:1;R:35350;}s:67:"1208:b2c20a1ce2dd08334a2fe03e92e710e50a3e72d5-no_confirmation_code.";a:2:{i:0;R:35349;i:1;R:35350;}s:74:"1208:0feffe469b3c2c57012ccbdf3b9bb07fabf064ea-confirmation_code_not_found.";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:4e027f25a85d9f05c5676bbafbe450ca12cc124f-that_confirmation_code_is_not";a:2:{i:0;R:35349;i:1;R:35350;}s:73:"1208:596b2dc32d2d2961333155cf7961aebe694373f4-unrecognized_address_type_s";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:88b9514a2b44c8291f6c4b2e404027700dc4c8f9-that_address_has_already_been";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:53c1b0ec28217e1a0ab7e9d71fafab1fe8c80aa3-could_not_update_user_im_prefe";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:4b3482bd817eac0a25e73cadfa9eb0cb39a9663c-could_not_insert_user_im_prefe";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:9a3fb7da3f6f385fd0c4fb2eed0bc6eb1d3174ca-could_not_delete_address_confi";a:2:{i:0;R:35349;i:1;R:35350;}s:61:"1208:eea484c7d92c58c2c9fae2d894790762e75f6fed-confirm_address";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:2e4eab09749c7a719efe7e26040514184d187ac8-the_address_"_s"_has_been_conf";a:2:{i:0;R:35349;i:1;R:35350;}s:58:"1208:2a20c75033890ef64222cf0bae1c4564bbdce951-conversation";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:b9c91fc0223371a9ea7ca8e75eab8351835a1a92-conversation_feed_(activity_st";a:2:{i:0;R:35349;i:1;R:35350;}s:73:"1208:e8748a106eaa870beedc9072bc620e8489f38abc-conversation_feed_(rss_2.0)";a:2:{i:0;R:35349;i:1;R:35350;}s:52:"1208:60eac1991b439ace0bd73bce31e2f919273dc074-notice";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:4f6c9336532f684b564013dd2c997c27d2eb9ce7-only_logged-in_users_can_delet";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:a64667fedfc406cc45102eb89dba22554bf8d0bd-you_cannot_delete_your_account";a:2:{i:0;R:35349;i:1;R:35350;}s:56:"1208:2173641cf9dcfeea874fdb7fc69bde2d0e6eff70-i_am_sure.";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:e3383d5289a1e24b28c2b9c457a484b534f12dee-you_must_write_"_s"_exactly_in";a:2:{i:0;R:35349;i:1;R:35350;}s:62:"1208:24a0c8675f6b5e1910ee0df23c17d45828d19c9c-account_deleted.";a:2:{i:0;R:35349;i:1;R:35350;}s:60:"1208:1753c2061c676db8dd89101b51b92f09a277f51c-delete_account";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:c2e1f2cfd86ce2a8ed8f36ee1876dd0fe8147b73-this_will_strong_permanently_d";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:1d8f933fa9da65f7dd466a55800a3c56321c30b0-you_are_strongly_advised_to_a";a:2:{i:0;R:35349;i:1;R:35350;}s:53:"1208:04a212215ef9fbf686d280802eb81ee7a6e681cd-confirm";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:6103986783529fc6a847e4f75168b0b66bbc1299-enter_"_s"_to_confirm_that_you";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:67ce3c88a3a5a5bce2d26ec89598435e9ceddae4-permanently_delete_your_accoun";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:3dcc3caf59403396ed8af26280656c97fc53a3e1-you_must_be_logged_in_to_delet";a:2:{i:0;R:35349;i:1;R:35350;}s:68:"1208:ba229084ea22f9877f82b69232bc22b3fe883605-application_not_found.";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:a52b033721bf6a284773119460d96b41a5a5dc35-you_are_not_the_owner_of_this";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:26bef98d839eb3a43fabcb5018c941e2e6b676fb-there_was_a_problem_with_your";a:2:{i:0;R:35349;i:1;R:35350;}s:64:"1208:62dfa2a86c09f3b9db6276cb5ae7e819355cc43f-delete_application";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:61d7f6259c15a9c6837d40fe33e00a5299b0c21e-are_you_sure_you_want_to_delet";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:cc2a67f234520eb06a305d1afb3b0b868dc7b3ee-do_not_delete_this_application";a:2:{i:0;R:35349;i:1;R:35350;}s:70:"1208:9defcc62630415abdf1f9a50dd959106c21b09cc-delete_this_application.";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:a5d9ca8413aca60b40bc8320196fe1816eb76684-you_must_be_logged_in_to_delet";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:980c46dad02e688d3eeb277d3d2fffc7812400ac-you_are_not_allowed_to_delete";a:2:{i:0;R:35349;i:1;R:35350;}s:71:"1208:836044300542e3d6942373e6db8ac631842e8871-could_not_delete_group_s.";a:2:{i:0;R:35349;i:1;R:35350;}s:61:"1208:d040d812f36e7ddf3e29dfa34352b7efb44a9f5e-deleted_group_s";a:2:{i:0;R:35349;i:1;R:35350;}s:58:"1208:b6f15b2f40a093d6920368a98483c94f1ae50aa1-delete_group";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:d3f40e42680c9d11db9dd18b57c01e8a1a7ed86c-are_you_sure_you_want_to_delet";a:2:{i:0;R:35349;i:1;R:35350;}s:71:"1208:584f1b19fdeaf7eb1cf211c082cea5b1c1f5f0e4-do_not_delete_this_group.";a:2:{i:0;R:35349;i:1;R:35350;}s:64:"1208:557f4da1e31819c5ce92044beb4869d6d725fbad-delete_this_group.";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:7ca8b769143bc1b33390b22c1ae4f364fe487058-you_are_about_to_permanently_d";a:2:{i:0;R:35349;i:1;R:35350;}s:59:"1208:a653350d6861a7aff5e1b608d2d1ef1cc809e9f6-delete_notice";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:efda9389961e9ee06b4fca148b522113507677e8-are_you_sure_you_want_to_delet";a:2:{i:0;R:35349;i:1;R:35350;}s:72:"1208:f3e77d1a5b29d8e8c2e2222e3e0f1870f17ae61d-do_not_delete_this_notice.";a:2:{i:0;R:35349;i:1;R:35350;}s:65:"1208:dfe604eb1df28d539f36912930cda1bae7dc4203-delete_this_notice.";a:2:{i:0;R:35349;i:1;R:35350;}s:70:"1208:c627586cf719915c13cbfc14748562955128580c-you_cannot_delete_users.";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:295e4491ecfc11b43544f9875cc4f0ad280d1a09-you_can_only_delete_local_user";a:2:{i:0;R:35349;i:1;R:35350;}s:57:"1208:5b27acd2392ddf473b75b7168fb27adc96c21184-delete_user";a:2:{i:0;R:35349;i:1;R:35350;}s:57:"1208:9afe6c7b95fe53a75b43a157827c9ff2fec371b0-delete_user";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:35cfb198e61dc11dccff1bd65924c56c13fbab40-are_you_sure_you_want_to_delet";a:2:{i:0;R:35349;i:1;R:35350;}s:70:"1208:fa8f7c0d37e47c052a6ad04ddae6eee4c1daddcb-do_not_delete_this_user.";a:2:{i:0;R:35349;i:1;R:35350;}s:63:"1208:b8f29d757724542bee927f1e0b98c2945a01a322-delete_this_user.";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:5bf75fc24d207f80ea4353ada3bc341c7bd7580d-this_notice_is_not_a_favorite!";a:2:{i:0;R:35349;i:1;R:35350;}s:62:"1208:cb10094b81decc742ca8ff781bba6eccf7dc607e-add_to_favorites";a:2:{i:0;R:35349;i:1;R:35350;}s:68:"1208:e54b547fda4413b0015d6b9fe6403fcc6b903d9b-no_such_document_"_s".";a:2:{i:0;R:35349;i:1;R:35350;}s:50:"1208:56d76791dc58d5ee73dce8d400822a9e632d9afb-home";a:2:{i:0;R:35349;i:1;R:35350;}s:50:"1208:8c92e68b5bfa2510a9e7564146cfdf196e154527-docs";a:2:{i:0;R:35349;i:1;R:35350;}s:50:"1208:502c2509077d187d0d39ff8398227aba70a9ed8e-help";a:2:{i:0;R:35349;i:1;R:35350;}s:61:"1208:76e7a3a3f9c225fe820ba7e9cff10ea2a73b79a1-getting_started";a:2:{i:0;R:35349;i:1;R:35350;}s:51:"1208:64db31775817d24bda783d9ac8b62c0bfb57e906-about";a:2:{i:0;R:35349;i:1;R:35350;}s:61:"1208:5e461a2404d8ee5f0aed62c7e55859208f6a29cf-about_this_site";a:2:{i:0;R:35349;i:1;R:35350;}s:49:"1208:df34c0dc66cf7532c3c791aa2c12262257328597-faq";a:2:{i:0;R:35349;i:1;R:35350;}s:72:"1208:af90cef80988974dd76636b3adb5f472768f785d-frequently_asked_questions";a:2:{i:0;R:35349;i:1;R:35350;}s:53:"1208:68a0c8c22354fe880578d3db94bbcf60246ffa5d-contact";a:2:{i:0;R:35349;i:1;R:35350;}s:58:"1208:9ad2af47dc7e8a02eb4e209ef704ce94cfc4e456-contact_info";a:2:{i:0;R:35349;i:1;R:35350;}s:50:"1208:4d6a4a083fa24c8dbcd45e99621a7f9cbe5d0d62-tags";a:2:{i:0;R:35349;i:1;R:35350;}s:56:"1208:c3e6f4c90b393fd11b184cc0587fecfc9e40afd5-using_tags";a:2:{i:0;R:35349;i:1;R:35350;}s:52:"1208:95f86708debb35b61f605c182454f6d0dcfb65ec-groups";a:2:{i:0;R:35349;i:1;R:35350;}s:58:"1208:7999ea96a4a172bbb100e94a4c1d5943894e22ab-using_groups";a:2:{i:0;R:35349;i:1;R:35350;}s:49:"1208:db525bc6fdfc6bf5d1494419fdd8d9224e794cca-api";a:2:{i:0;R:35349;i:1;R:35350;}s:57:"1208:f48381f4ce3fb45b036d99bcb0c0eb4a5d9265d2-restful_api";a:2:{i:0;R:35349;i:1;R:35350;}s:62:"1208:4e92dd1cb88d493a3194d75e040dc94014a8d4c3-edit_application";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:5ec0370bc6f7bb0f6dc9a7e7f1be06815028c04e-you_must_be_logged_in_to_edit";a:2:{i:0;R:35349;i:1;R:35350;}s:66:"1208:f32881a293aeb00273ee62395c7f9f8512456e37-no_such_application.";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:bc68a6271147bb7d041e3913d51f6d1158908995-use_this_form_to_edit_your_app";a:2:{i:0;R:35349;i:1;R:35350;}s:63:"1208:d7659e2c4af20a35375510634997a133eefa08f2-name_is_required.";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:624c51586f700ac86b938cc1d9cbbc5150f8869f-name_is_too_long_(maximum_255";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:fd0c476301de8978dedb454ae85ae5b987689525-name_already_in_use._try_anoth";a:2:{i:0;R:35349;i:1;R:35350;}s:70:"1208:763630a9ce6e689c080fe4e3ce99fbace9f68692-description_is_required.";a:2:{i:0;R:35349;i:1;R:35350;}s:69:"1208:4f2caa2595287703be9dcd7c305329035a8ea3b7-source_url_is_too_long.";a:2:{i:0;R:35349;i:1;R:35350;}s:70:"1208:f74825282f38f94c508c1ac3de12de5e80018b35-source_url_is_not_valid.";a:2:{i:0;R:35349;i:1;R:35350;}s:71:"1208:e598f5a33dfb549fed87615f13f3e1ec800aab87-organization_is_required.";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:6438a02f55b33e6ac37bae21219beaafea6e0457-organization_is_too_long_(maxi";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:3e91e62dbbfb2e325c7127ce9b47eb45a0750876-organization_homepage_is_requi";a:2:{i:0;R:35349;i:1;R:35350;}s:67:"1208:ae44e24fc3d1ac8d13770b820e11206d13054b80-callback_is_too_long.";a:2:{i:0;R:35349;i:1;R:35350;}s:72:"1208:9abcf64f54d5049699b6be1eeeb34e517bd966b3-callback_url_is_not_valid.";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:f23fde3c85d0ce627b44af058ff0e021b366917a-could_not_update_application.";a:2:{i:0;R:35349;i:1;R:35350;}s:58:"1208:f311e2336443e56d01e2e14c4b08df8ad1d219d0-edit_s_group";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:2739174b4ae3e5a6af1077eb49a68359b3288ada-you_must_be_logged_in_to_creat";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:c98999f3c11672f83cec8fbd21bc197779a641ef-use_this_form_to_edit_the_grou";a:2:{i:0;R:35349;i:1;R:35350;}s:64:"1208:4f0c712e1862c409a36793748208ebc59e618330-invalid_alias_"_s"";a:2:{i:0;R:35349;i:1;R:35350;}s:60:"1208:4b96d10ba339a0d3abbcdc0c1ac13a53a3ca1f0a-options_saved.";a:2:{i:0;R:35349;i:1;R:35350;}s:59:"1208:2e6fbf38ea029b277f0f6bc371ba3b35808b5f38-delete_s_list";a:2:{i:0;R:35349;i:1;R:35350;}s:57:"1208:abe3b0a480a2a3fa9b641acb92f55f2b56370a19-edit_list_s";a:2:{i:0;R:35349;i:1;R:35350;}s:62:"1208:4ddd86e4401fc71541407a1ad850367354fdb097-no_tagger_or_id.";a:2:{i:0;R:35349;i:1;R:35350;}s:63:"1208:004711c5ffd7919e6fa4436f5d173552368b8106-not_a_local_user.";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:419a72895fec0f6173c71db157c6b2784a8c3963-you_must_be_the_creator_of_the";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:df7a95fc0c9841957c40f21aa0a7acd999f6c4e9-use_this_form_to_edit_the_list";a:2:{i:0;R:35349;i:1;R:35350;}s:61:"1208:d07c0262cb8cf67cf3ab9044d470675ea98949d9-delete_aborted.";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:4d342d7682670a8bcd000cc07777237e5dd7fc83-deleting_this_tag_will_permana";a:2:{i:0;R:35349;i:1;R:35350;}s:58:"1208:5332b77b3dc5f2cda37d9309136c7fb8b1203e2a-invalid_tag.";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:b8d28a76141b7abb83089b8bf0e5a8a5e5801171-you_already_have_a_tag_named_s";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:4d7ff8d424bab1dd4be075a797dbadfc1aad319e-setting_a_public_tag_as_privat";a:2:{i:0;R:35349;i:1;R:35350;}s:68:"1208:d0526aef5ce21b7dd9360284416973fb10274401-could_not_update_list.";a:2:{i:0;R:35349;i:1;R:35350;}s:60:"1208:180dd66fda2f14119c525cbb6b2baed67a941b44-email_settings";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:659e37278509a5559d1b60dd51c3bf22ceb9964c-manage_how_you_get_email_from";a:2:{i:0;R:35349;i:1;R:35350;}s:59:"1208:c94d3175a6560565410511df2cebab9cda96027e-email_address";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:98ef2553ef2c676e704cb82d1d9a1670ea406e68-current_confirmed_email_addres";a:2:{i:0;R:35349;i:1;R:35350;}s:52:"1208:939ebba8a23af24dea8e62329e27e07db38c49d9-remove";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:bfceaa14c0c846aa6e3b54f86dbf4ee34cdcbe59-awaiting_confirmation_on_this";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:74a86a905241ee9d0616edb4f956257ee7859457-email_address,_like_"username@";a:2:{i:0;R:35349;i:1;R:35350;}s:49:"1208:e1562fed201c341ce7bd08b9cd421f3b379222b8-add";a:2:{i:0;R:35349;i:1;R:35350;}s:60:"1208:ded60b4dce4afa6d27ac498e07f2a0306b427dcd-incoming_email";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:832eb251574674c5f705f14bf63c095965a6a033-i_want_to_post_notices_by_emai";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:0e5d1334478c0ad2522f7943fd40764a9d97c5f6-send_email_to_this_address_to";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:77a9f4d64c26ffcec61d9b8924772110bc00fdf5-make_a_new_email_address_for_p";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:1804f0077a61e98c69e49fe1337893fc775ee584-to_send_notices_via_email,_we";a:2:{i:0;R:35349;i:1;R:35350;}s:49:"1208:0fbd8b4be448f627c7b660928f8cd0db4758fdeb-new";a:2:{i:0;R:35349;i:1;R:35350;}s:63:"1208:c0ff3ad3aa52878d4b988a7445d45ee6151b0b9e-email_preferences";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:854b13e6726e6fcddfad0e5712bad057e7a318a2-send_me_notices_of_new_subscri";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:83f2fcc07954174c4a13c96b5197254c67a20770-send_me_email_when_someone_add";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:d4b45f0e3bd5a3665947d3791ba62cb567531392-send_me_email_when_someone_sen";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:d21b8a881bcd9f36c091931dc685fd31d4d37ffa-send_me_email_when_someone_sen";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:f9fe6659e443dc42c90ebc318446f8d444e8c83a-allow_friends_to_nudge_me_and";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:37dad9f1e303a9311d1d9ae3f55b4f480ae68800-publish_a_microid_for_my_email";a:2:{i:0;R:35349;i:1;R:35350;}s:70:"1208:ff9f48b8a0a3e66f76955b3851d5bea6c258aa46-email_preferences_saved.";a:2:{i:0;R:35349;i:1;R:35350;}s:63:"1208:9063fd704f50c064de425d0d7d4f3542b62e83e6-no_email_address.";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:07188f2b3aba23c5dadf749470714150f9d22c1e-cannot_normalize_that_email_ad";a:2:{i:0;R:35349;i:1;R:35350;}s:72:"1208:223d248179425af55c45516ddb7726f7482cdcf2-not_a_valid_email_address.";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:c2b40aa19ee270ca4f5e66f4fdda05717e080a41-that_is_already_your_email_add";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:c0c1b947b1437a7bf262dd65a39aea3c3d36dda0-that_email_address_already_bel";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:bf7d601cbf32d5119b593860c9e0f61303e93f09-could_not_insert_confirmation";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:33e1ccb608bdeb2bc228ce7658baa6072855726a-a_confirmation_code_was_sent_t";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:934e4103e24fb9b841af8d69565e61e232ac8982-no_pending_confirmation_to_can";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:55b423e879b8c55b34d19b44435a4b913321fb09-that_is_the_wrong_email_addres";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:75571bb0c3749244545c5d2585f28c99aafa78ed-could_not_delete_email_confirm";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:06b26141b995ed81a837531559104e3c37844e72-email_confirmation_cancelled.";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:fe8a5ddfa483c8020c71c3deb57b985b1473b177-that_is_not_your_email_address";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:cac6fbecb1a03b7a11ac749cdcb12383adaa7abe-the_email_address_was_removed.";a:2:{i:0;R:35349;i:1;R:35350;}s:72:"1208:c12634558b0ceb5611a735dab7d70762d5e6dc1d-no_incoming_email_address.";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:8e573c5d87b8eb479e013b0ee00855e6dec29cd8-could_not_update_user_record.";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:a7530852e4bc1660ceb89d8c888e1d1162d338a5-incoming_email_address_removed";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:73bd6c6421610062c62ca4e68ec48f3a83b20dd7-new_incoming_email_address_add";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:5ae8c1927868a2ade335f1a0f8404c660df3b472-this_notice_is_already_a_favor";a:2:{i:0;R:35349;i:1;R:35350;}s:64:"1208:0075cd801e9a3242482b2525b39abb52d6247759-disfavor_favorite.";a:2:{i:0;R:35349;i:1;R:35350;}s:61:"1208:df42690c2833b6e617eddba71460e8d09385bc6c-popular_notices";a:2:{i:0;R:35349;i:1;R:35350;}s:69:"1208:c613907ad9a16af55fa07345039a4f03c790d530-popular_notices,_page_d";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:575ed8e3fb36fa6ba88776bfb1ee5094422c75b3-the_most_popular_notices_on_th";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:a3c81b93ae08ef048c9dd50e50d0ad1a6a0ab401-favorite_notices_appear_on_thi";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:3e24d5e9cd02ad4c9c105cc94bfa9da4bf9de3f4-be_the_first_to_add_a_notice_t";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:ac72e45964be492cba8abb62c39b4d492e72c3aa-why_not_register_an_account_(";a:2:{i:0;R:35349;i:1;R:35350;}s:66:"1208:7a2b5b780d39ece923e5778e2b93dcadc6ad778d-s's_favorite_notices";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:2ee2f5384c500f1340b78a519bafea8abf34c3a2-updates_favored_by_1$s_on_2$s!";a:2:{i:0;R:35349;i:1;R:35350;}s:60:"1208:1787509d998a1600818da1724703f9529ddb576c-featured_users";a:2:{i:0;R:35349;i:1;R:35350;}s:68:"1208:4385136dd0432544012ce6db026a5030efa65737-featured_users,_page_d";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:210a3909b2b584ef53cbdd8e562b7a40c9fe99b7-a_selection_of_some_great_user";a:2:{i:0;R:35349;i:1;R:35350;}s:59:"1208:1428faf4a006a8ef46c18bacf47122589463374b-no_notice_id.";a:2:{i:0;R:35349;i:1;R:35350;}s:56:"1208:f9d1eb59cd83e5938befe6b0c09dc1d0ecbbacc4-no_notice.";a:2:{i:0;R:35349;i:1;R:35350;}s:61:"1208:8d259617bd3e384edb1591aa717199a2d7ec8fd5-no_attachments.";a:2:{i:0;R:35349;i:1;R:35350;}s:70:"1208:a812bf31b009762794de65cedbc4bf6b22c0e161-no_uploaded_attachments.";a:2:{i:0;R:35349;i:1;R:35350;}s:59:"1208:36edb03f261c96d4ec3ce6ccef853abbb8b9905b-no_such_file.";a:2:{i:0;R:35349;i:1;R:35350;}s:63:"1208:bf91ff9d63fadd5065197e32c5e88ff4a873d99f-cannot_read_file.";a:2:{i:0;R:35349;i:1;R:35350;}s:59:"1208:e149b6351b0750bcca7bfd5abf549f8a07365186-invalid_role.";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:14663768e19d8d06f36e596fa6b70cf06675ee92-this_role_is_reserved_and_cann";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:799cc1fa08d7aac0a766ff8de3f68a3e3f3a8987-you_cannot_grant_user_roles_on";a:2:{i:0;R:35349;i:1;R:35350;}s:73:"1208:0e80b18abd1aa60e5940db6b41cbdb82d641f6f9-user_already_has_this_role.";a:2:{i:0;R:35349;i:1;R:35350;}s:67:"1208:f4caa6f8ac754d0a020ca71126d318ac0c9cf274-no_profile_specified.";a:2:{i:0;R:35349;i:1;R:35350;}s:65:"1208:4ab6df57a24ef07b20edb91ef27f5f248d3d9edc-no_group_specified.";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:215506d40638719e944e5429af44a69ee6db3a83-only_an_admin_can_block_group";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:14734983a44ec52f246431001bff8a18548d49c5-user_is_already_blocked_from_g";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:25c647226f5a0b0f731235b5eeaadfc8419cb5a8-user_is_not_a_member_of_group.";a:2:{i:0;R:35349;i:1;R:35350;}s:67:"1208:b61dcdb052c1c09c8402b657c963845e8ae62dca-block_user_from_group";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:c88d926c189cc211e44478635b46c04d29bde797-are_you_sure_you_want_to_block";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:eac911ade0efb364a610a15c3b0440fd65ed626b-do_not_block_this_user_from_th";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:779eb6bbf58329abc5ef1535630af149a6a780f6-block_this_user_from_this_grou";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:bba8c50e7fb5edc34c7320fde4321018ff84b300-database_error_blocking_user_f";a:2:{i:0;R:35349;i:1;R:35350;}s:52:"1208:c853ccce2483d44c0247866af15f834db8cf43a8-no_id.";a:2:{i:0;R:35349;i:1;R:35350;}s:56:"1208:68b2cf0d563634a706a41895a07df95123039aa2-group_logo";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:05071e70eb18d1549ba023795f40ec4f7042d86c-you_can_upload_a_logo_image_fo";a:2:{i:0;R:35349;i:1;R:35350;}s:52:"1208:8bdf057f91e76ae328b2a21d35f682daa08a0ec0-upload";a:2:{i:0;R:35349;i:1;R:35350;}s:50:"1208:c5db3d91c4cb4a13679036466774fce8c8825b85-crop";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:eca24041b024799641864e8a6b798e55e5feca66-pick_a_square_area_of_the_imag";a:2:{i:0;R:35349;i:1;R:35350;}s:59:"1208:501fa62889621c17b8b2b559271a904108a3c729-logo_updated.";a:2:{i:0;R:35349;i:1;R:35350;}s:67:"1208:73cab906d491cb0c0c4b922ad04227caa5e9ee89-failed_updating_logo.";a:2:{i:0;R:35349;i:1;R:35350;}s:61:"1208:831615743476a946ccce4394952edf66555f5678-s_group_members";a:2:{i:0;R:35349;i:1;R:35350;}s:73:"1208:00453d448acdea1223e035f94976043ffd35a564-1$s_group_members,_page_2$d";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:287ace29f721c90b22bcc21ceb3bb953ba4c1134-a_list_of_the_users_in_this_gr";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:f48e57cc3cf443d29b5d77f40d88bdb6ea2bd5e6-only_the_group_admin_may_appro";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:224968833dab2f454045f175559bda3f74c5c86d-s_group_members_awaiting_appr";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:dccf2bb42c13912347e020bfe2ac2cc2915704cf-1$s_group_members_awaiting_ap";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:7da3ea3cd619e3850894b3045a1def11378ec994-a_list_of_users_awaiting_appro";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:820b2dfac9406b31e649e5b30ecaf0c4fe1407a2-updates_from_members_of_1$s_on";a:2:{i:0;R:35349;i:1;R:35350;}s:52:"1208:b4b5d209cd955731b18b580102a7ca21dfe2c3f0-groups";a:2:{i:0;R:35349;i:1;R:35350;}s:60:"1208:52711bd321bf74a46cfcaa247a86e4d46f71e3d2-groups,_page_d";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:97e13f2bc4b172c6089e1adf1d3307a6f5c63e51-site.name_groups_let_you_find";a:2:{i:0;R:35349;i:1;R:35350;}s:64:"1208:26593ae8f545458050883f21804ef72cc52b439a-create_a_new_group";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:6d61e38278529b1614857de314ed02d9d59bb316-search_for_groups_on_site.name";a:2:{i:0;R:35349;i:1;R:35350;}s:58:"1208:08ba29d49ba677b8fff421bb9e83a687515bfca3-group_search";a:2:{i:0;R:35349;i:1;R:35350;}s:57:"1208:0035403387839cb4aaa62a675de42063993cbc37-no_results.";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:0eaa66e396fb1bc2485f693b3acacb37f1d8a9ab-if_you_cannot_find_the_group_y";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:fe2474c8eb2dcd6b62f82fabc0fde8afc06e4eb4-why_not_register_an_account_(";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:96dc1404675358690e3df1aef929aced5d7af4b9-only_an_admin_can_unblock_grou";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:15a5113988c66f6add09e674eb26ba6ec3357f09-user_is_not_blocked_from_group";a:2:{i:0;R:35349;i:1;R:35350;}s:71:"1208:0827ddb1485138437af347206e4e19110d5cc0e1-error_removing_the_block.";a:2:{i:0;R:35349;i:1;R:35350;}s:57:"1208:d56c2062416bbe910fa9334e695db85ceb4b7739-im_settings";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:901b7b00a1519210e389cde75785fd829c09af29-you_can_send_and_receive_notic";a:2:{i:0;R:35349;i:1;R:35350;}s:66:"1208:dd14ed9a612e5ad4176f7e03dc52949350ffc5ca-im_is_not_available.";a:2:{i:0;R:35349;i:1;R:35350;}s:74:"1208:c1aa0c67c1938f4d9cd07fdd1fcaa5d3df0aef9e-current_confirmed_s_address.";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:5827f5793d2826828399065144b97b85005deea7-awaiting_confirmation_on_this";a:2:{i:0;R:35349;i:1;R:35350;}s:56:"1208:8df4c2087bde1f3091a59e77b547e16a0ad32b60-im_address";a:2:{i:0;R:35349;i:1;R:35350;}s:59:"1208:27d436f110676e9ac2a4f68f80d8c6eac2a7ba30-s_screenname.";a:2:{i:0;R:35349;i:1;R:35350;}s:60:"1208:a22285219e1b8885e8f80e7ce114cfd09de61763-im_preferences";a:2:{i:0;R:35349;i:1;R:35350;}s:61:"1208:1687f32bab25ce042282537e77485b10f8884c1f-send_me_notices";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:11d7f03d10893c8ba3feb217db4a8b7fa125a9b8-post_a_notice_when_my_status_c";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:e417f786f8da9faab9c3e22ec22786075fcdf687-send_me_replies_from_people_i'";a:2:{i:0;R:35349;i:1;R:35350;}s:63:"1208:51bae7d6a6752252e3a1cfa54f7c5aeb09c7f835-publish_a_microid";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:bbb1ad9dafc37a666b259863c28a79640077cdd0-could_not_update_im_preference";a:2:{i:0;R:35349;i:1;R:35350;}s:64:"1208:0b7d6e16c846e8624759dda059d48630966b7833-preferences_saved.";a:2:{i:0;R:35349;i:1;R:35350;}s:60:"1208:8b1c1342614b9ce06b2fc195e104c36343a9fcec-no_screenname.";a:2:{i:0;R:35349;i:1;R:35350;}s:59:"1208:87a351bfe43001fdb26dbbaad6115612e46bc1d0-no_transport.";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:f466512ee921149372c925a08ea57d8e74190512-cannot_normalize_that_screenna";a:2:{i:0;R:35349;i:1;R:35350;}s:69:"1208:1f2838235aec8302abad3c0ff1687d36365651a7-not_a_valid_screenname.";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:bbeab4b501a034d5c5b12f34542d8034fc5e1fd5-screenname_already_belongs_to";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:5509c11a9f75a8093d73533fcefa5638ce2fb1f8-a_confirmation_code_was_sent_t";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:cbe7fcffdbe134fdce87939397bab1976688b5c3-that_is_the_wrong_im_address.";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:90ddc8681cead1a8071a37b9b28a4865dc36f8de-could_not_delete_confirmation.";a:2:{i:0;R:35349;i:1;R:35350;}s:72:"1208:f1a15acb870a9caaa9e6a54a2040c6987c1599f2-im_confirmation_cancelled.";a:2:{i:0;R:35349;i:1;R:35350;}s:74:"1208:eb326921f8f2c6409d618f0944ec90f76e13d0c5-that_is_not_your_screenname.";a:2:{i:0;R:35349;i:1;R:35350;}s:73:"1208:986f0cd09224681b5afde3b1e0120ed04a8d1b69-the_im_address_was_removed.";a:2:{i:0;R:35349;i:1;R:35350;}s:70:"1208:0ea763f39257ab74f819c85e20dd08ee9d9f87af-inbox_for_1$s_-_page_2$d";a:2:{i:0;R:35349;i:1;R:35350;}s:57:"1208:7d2de767454f00d03cc3b889c9e666aeef85d14c-inbox_for_s";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:e625d59ba5d9f24099fafd927e6f6433cb42d4fc-this_is_your_inbox,_which_list";a:2:{i:0;R:35349;i:1;R:35350;}s:73:"1208:dcb3a7f106c09c7d45d5c6c5e95ffef335eba91c-invites_have_been_disabled.";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:61beab5822a94f2708c0c99b8726a43831119ba4-you_must_be_logged_in_to_invit";a:2:{i:0;R:35349;i:1;R:35350;}s:70:"1208:d4b918af267615a93a27e4c0b047f82b0428a367-invalid_email_address_s.";a:2:{i:0;R:35349;i:1;R:35350;}s:62:"1208:aa9f6f86c4122538d512749dca37cc1349a06a05-invitations_sent";a:2:{i:0;R:35349;i:1;R:35350;}s:62:"1208:d996e6455c940edb191c294cd00ca3e24b39dd46-invite_new_users";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:f612a11ccbde0f5fd46e7dd279105996eb23e5bb-plural_gettext_you_are_alread";a:2:{i:0;R:35349;i:1;R:35350;}s:56:"1208:9527e5136b5f50a56f13b507a79e912417c9a6a7-1$s_(_2$s)";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:fbab1051b7e5bbf5ffe77828b9613b8d9f7c2171-plural_gettext_this_person_is";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:3c323d5db7bdfe6fe12bc0c66ba08a56ba56d062-plural_gettext_invitation_sen";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:6c8492f8f330757d20ead9073e841baefe6fac84-you_will_be_notified_when_your";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:2b7b81b5b3b93e039653d6c8d40c8abe37c4d399-use_this_form_to_invite_your_f";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:07b85250107f0909cda0fef643af2263ffa4b414-1$s_has_invited_you_to_join_t";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:e9b4e6524c5e93b70e0a4fdd6294e745504756e3-you_must_be_logged_in_to_join";a:2:{i:0;R:35349;i:1;R:35350;}s:66:"1208:41538a7fa4548a747246f85735256d03c922fcf5-1$s_joined_group_2$s";a:2:{i:0;R:35349;i:1;R:35350;}s:74:"1208:85ec36217b704f20d4c979395009fbc348c79eb0-unknown_error_joining_group.";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:2af2e7d935abaa0cb4927863ff1563848d9554ef-you_are_not_a_member_of_that_g";a:2:{i:0;R:35349;i:1;R:35350;}s:53:"1208:d7f8f89d1b8b704dadfeb31add520c47f659ef07-license";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:edaa92f06dd02c277df03c525255fb7184158749-license_for_this_statusnet_sit";a:2:{i:0;R:35349;i:1;R:35350;}s:72:"1208:8ce59fd92d4345e0a7e9a2bf11a2fb2324e28d74-invalid_license_selection.";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:af4e1b687196f7bfe7f44782505327c409dbd813-you_must_specify_the_owner_of";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:730e2dc532a6988b38c013c821b5eeda2d110ac4-invalid_license_title._maximum";a:2:{i:0;R:35349;i:1;R:35350;}s:66:"1208:263d0f20c2f9598a8c486720141c24753fe380f9-invalid_license_url.";a:2:{i:0;R:35349;i:1;R:35350;}s:72:"1208:f35f96157cd8b58c538f4ba9554e34b4380e7b7e-invalid_license_image_url.";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:ca3c95126226aa95ae23ff39897b9218ba38ee92-license_url_must_be_blank_or_a";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:af6a8a9a5bd0425d105abcddecd22dd972927a98-license_image_must_be_blank_or";a:2:{i:0;R:35349;i:1;R:35350;}s:63:"1208:41ec4198e1b540f136b4edb4b7bcdb970a0b9c4b-license_selection";a:2:{i:0;R:35349;i:1;R:35350;}s:53:"1208:237dfa0a21c8e17a7276cf161eef7e0fba067c47-private";a:2:{i:0;R:35349;i:1;R:35350;}s:65:"1208:cb5746be52330331844dea750bf452c0618aecb3-all_rights_reserved";a:2:{i:0;R:35349;i:1;R:35350;}s:62:"1208:bd69a179607df57bccf919a54c841963cc55314c-creative_commons";a:2:{i:0;R:35349;i:1;R:35350;}s:50:"1208:3deb7456519697ecf4eefc455516c969a3681bae-type";a:2:{i:0;R:35349;i:1;R:35350;}s:63:"1208:ffb576e55a84ecc3fbe1a3ca42d7c67fe3f5dae9-select_a_license.";a:2:{i:0;R:35349;i:1;R:35350;}s:61:"1208:3c38f963e5e7bcd7a0837d71b61c1d9b24ba3818-license_details";a:2:{i:0;R:35349;i:1;R:35350;}s:51:"1208:89ff31225c5f042fff61e92ec8cf80e417a7140c-owner";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:c6ec669834d6199e08fc1903b7cb28f5673bd82d-name_of_the_owner_of_the_site'";a:2:{i:0;R:35349;i:1;R:35350;}s:59:"1208:f086c0d52d43c2261aa9a84c4727d40f0060e3e7-license_title";a:2:{i:0;R:35349;i:1;R:35350;}s:71:"1208:dafab9cc30c5fd42f174712631ecd8fc77661f0d-the_title_of_the_license.";a:2:{i:0;R:35349;i:1;R:35350;}s:57:"1208:050a8b1a8a6349aac987d710942ca31214ed4373-license_url";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:29c7ec2e683c0bb3debce49d07762d5820b60313-url_for_more_information_about";a:2:{i:0;R:35349;i:1;R:35350;}s:63:"1208:5e45f3743a25b9cdec242f8dd3d4e9827132a686-license_image_url";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:0e02d64bf723f24e515f99b0b9c62b536af1b9d4-url_for_an_image_to_display_wi";a:2:{i:0;R:35349;i:1;R:35350;}s:68:"1208:075daf85b2843f0b01f33bfed9ced77bca60987b-save_license_settings.";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:f4d670b1eb75793729a8fb736def7bfd3abaecd7-incorrect_username_or_password";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:e86ec2d9ecea608064cf6d1eed194a173763a5df-error_setting_user._you_are_pr";a:2:{i:0;R:35349;i:1;R:35350;}s:51:"1208:4e5a2893bdcc7d239c1db72e4c4ffbe4bea73174-login";a:2:{i:0;R:35349;i:1;R:35350;}s:59:"1208:2525a3471f174d99c1b87ddc8bab55d30eacd06b-login_to_site";a:2:{i:0;R:35349;i:1;R:35350;}s:71:"1208:4f8553693f6866b09a2d5e8ed3df638d3552b314-username_or_email_address";a:2:{i:0;R:35349;i:1;R:35350;}s:57:"1208:ced7b308a348567fbf21dd775ee496dd01207f24-remember_me";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:bf8c97e9743990a3fbd075e5e2e44a7417ecc9a1-automatically_login_in_the_fut";a:2:{i:0;R:35349;i:1;R:35350;}s:51:"1208:ece2da368f3c0e7a56538c0472e4c9940dda4dd4-login";a:2:{i:0;R:35349;i:1;R:35350;}s:73:"1208:d8b553ccbd10e58d05b67135720e374653917f00-lost_or_forgotten_password?";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:a82ae0982e6f95dff5ab4d8aa30adc01615516af-for_security_reasons,_please_r";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:d400b7f4497e20e07c7a51771f46abc143c03df2-login_with_your_username_and_p";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:d459d9ee3222600fa1c7b4b8405256a4a4ac3ccc-don't_have_a_username_yet?_reg";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:08897facd9e771fd9572f875bd618cbdea6d8b3c-only_an_admin_can_make_another";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:f50d47eabec5966369e536ff2b38566d4e4e0ee6-1$s_is_already_an_admin_for_g";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:39489f2ae6beb08e4ac6d0f0b9b1db3ee103abf4-can't_get_membership_record_fo";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:0c4cc6143472db2ad392b122fafba7a54fb1fa22-can't_make_1$s_an_admin_for_gr";a:2:{i:0;R:35349;i:1;R:35350;}s:64:"1208:e42405e3d47e57822500de05aed86673aa9c5844-no_current_status.";a:2:{i:0;R:35349;i:1;R:35350;}s:61:"1208:3c9a5e52344fe5d1311b3b6f36b19391cf89eac0-new_application";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:4cb77ce28b6dbf007f10ff9432dbe317be412e1a-you_must_be_logged_in_to_regis";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:921d4c8c8235b2fef43016fff55fa11c509f2364-use_this_form_to_register_a_ne";a:2:{i:0;R:35349;i:1;R:35350;}s:69:"1208:41d495b3757b8cbcb0ae134f0bd052c14961b6c7-source_url_is_required.";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:23e20155a128504a9004babba2e1bf9a4c6a4885-could_not_create_application.";a:2:{i:0;R:35349;i:1;R:35350;}s:60:"1208:d80e79b2d2752ffac8e61580cff52e548c230146-invalid_image.";a:2:{i:0;R:35349;i:1;R:35350;}s:55:"1208:f9850c0b4269ab40baf44513a855e925ede2ab11-new_group";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:2d71e4b57ee060167f1ea43659021fe60349096f-you_are_not_allowed_to_create";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:5bff3da2b52ac18ab2500ed6b79053fff954a3cc-use_this_form_to_create_a_new";a:2:{i:0;R:35349;i:1;R:35350;}s:57:"1208:1ed2e7b50fa1dbbf1693d1c38adf270c04db10c6-new_message";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:21b60b8d21eab5f7aa72018b22e3aff09210bbf3-you_cannot_send_a_message_to_t";a:2:{i:0;R:35349;i:1;R:35350;}s:57:"1208:9bf4a936de5cef0e4592bcf06dbc2c16920f9701-no_content!";a:2:{i:0;R:35349;i:1;R:35350;}s:69:"1208:aca110e4b7edfe682ed7f93419b872a9177cf424-no_recipient_specified.";a:2:{i:0;R:35349;i:1;R:35350;}s:58:"1208:9cf1b68c1b0ef27b7c68a192a2ea1a2cacfd903e-message_sent";a:2:{i:0;R:35349;i:1;R:35350;}s:71:"1208:a3894b1256ab040ed20a35eedeece8829c62d5ab-direct_message_to_s_sent.";a:2:{i:0;R:35349;i:1;R:35350;}s:56:"1208:0e657e6c2c14392822ada6e9a892fb276a926307-ajax_error";a:2:{i:0;R:35349;i:1;R:35350;}s:56:"1208:77e7a058680eef2287a6826a395dea4d2c413e94-new_notice";a:2:{i:0;R:35349;i:1;R:35350;}s:59:"1208:582a435fabce633dba5540ceea77eb5c7d9e091f-notice_posted";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:1ef8101c8eff574f9059e1444f95d4f342079822-search_for_notices_on_site.nam";a:2:{i:0;R:35349;i:1;R:35350;}s:57:"1208:8baa0f0d8692f57fd9a38cbd1bd23d7c1e61483e-text_search";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:a24dc3f56de91dea3b4cd8ecc3dbe904528d45b6-search_results_for_"_1$s"_on_2";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:bfc4ba49c061064f4738ac837f9a9d9edd26c4d6-be_the_first_to_post_on_this_t";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:4076c68f415c99b453aa90c43eeb248527a16f73-why_not_register_an_account_(";a:2:{i:0;R:35349;i:1;R:35350;}s:63:"1208:f3ad151ce1381e2abccc22c418b628cb520ca441-updates_with_"_s"";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:6bcbc6d50d68c8155c342051da5d54e1722e3d33-updates_matching_search_term_"";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:6276cca68485eeaf8956b30633a5c9939624bb16-this_user_doesn't_allow_nudges";a:2:{i:0;R:35349;i:1;R:35350;}s:56:"1208:90f9ea86180db6b965e3dcaafcab78985f90c7aa-nudge_sent";a:2:{i:0;R:35349;i:1;R:35350;}s:57:"1208:a0dd10d7c67faccba3864de99753ad1369b5f286-nudge_sent!";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:a3c7d01bbbf54e4bc24eb598999e06235c31bcfa-you_must_be_logged_in_to_list";a:2:{i:0;R:35349;i:1;R:35350;}s:64:"1208:44ee7d782f845aafb42c9a2a43b42f790534377b-oauth_applications";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:326e72a316b52cd626a5252159fbfa40d2221030-applications_you_have_register";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:0420b7247fb0508d8e1070a1030712a880cbbfef-you_have_not_registered_any_ap";a:2:{i:0;R:35349;i:1;R:35350;}s:68:"1208:29e111fe1635275b38d0c3f4a3cc715972d13d65-connected_applications";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:83dbc8ba5fbb409a27e3cbf29238fc0f78bfd682-the_following_connections_exis";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:85b17708e7378c30d2faf76d2955486573f37b98-you_are_not_a_user_of_that_app";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:d38ec2c49a2aa65b0c3fa0aa057671c28ed3a142-unable_to_revoke_access_for_ap";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:ae139b2cfea62f42fb2ded858e5de4e7988725d4-you_have_successfully_revoked";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:7959d77996169d0515e408a6004c2f10bd443377-you_have_not_authorized_any_ap";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:fc5280c7745174e924f6b46ace5df49a3c8979af-are_you_a_developer?_register";a:2:{i:0;R:35349;i:1;R:35350;}s:61:"1208:d665f55040b4aa7598d3d2688e427618445a9e80-"_s"_not_found.";a:2:{i:0;R:35349;i:1;R:35350;}s:65:"1208:ebf0430240c8dc550cfc569f3716314890414998-notice_s_not_found.";a:2:{i:0;R:35349;i:1;R:35350;}s:68:"1208:b5d7a597ed69800dadfce0279518a5a0d9e5246c-notice_has_no_profile.";a:2:{i:0;R:35349;i:1;R:35350;}s:65:"1208:7817d236e6fcbd18d9d6d65df29b4694ac1a0053-1$s's_status_on_2$s";a:2:{i:0;R:35349;i:1;R:35350;}s:69:"1208:4c13cbf654eb9b4a4490c118ea4c9ee3d753e35b-attachment_s_not_found.";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:18bc4ad37760b0e454b9c67f8cbba9c030dfd74e-"_s"_not_supported_for_oembed";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:937f4e8c16f5835c6a2d0500f01cc550c4299475-content_type_s_not_supported.";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:3f5d826b2a489505f48ecefc03f120d6ff427ea8-only_s_urls_over_plain_http_pl";a:2:{i:0;R:35349;i:1;R:35350;}s:74:"1208:418d91d41c5c659458c27a1dd28a2a3152d78117-not_a_supported_data_format.";a:2:{i:0;R:35349;i:1;R:35350;}s:68:"1208:d78453f947d6cb9d0922977caf55eb45979b0801-old_school_ui_settings";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:b2e21c7bf2b0c1f01f575bf968246a1bed038f3d-if_you_like_it_"the_old_way",";a:2:{i:0;R:35349;i:1;R:35350;}s:61:"1208:f133b2924e9e0ef379b1cb63a7fb85d3b77c6c53-settings_saved.";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:61f2cb4de3e48d3e09e8b3c2f609e4a4855c73fb-only_stream_mode_(no_conversat";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:c0e7c15bb44e682e1d6bc9e7910d482796f4b530-show_conversation_page_as_hier";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:8a3b49778223ee0a6746257482e723c91d736d65-show_nicknames_(not_full_names";a:2:{i:0;R:35349;i:1;R:35350;}s:50:"1208:efc007a393f66cdb14d57d385822a3d9e36ef873-save";a:2:{i:0;R:35349;i:1;R:35350;}s:59:"1208:66adad465d65f3e03b61dfde66ece83799789b60-people_search";a:2:{i:0;R:35349;i:1;R:35350;}s:59:"1208:93c9b4eb288f81e903997c66eb4dd61110b66353-notice_search";a:2:{i:0;R:35349;i:1;R:35350;}s:64:"1208:fbbbfe3331edb0c2ce74bef6f8d5749c52c3017b-already_logged_in.";a:2:{i:0;R:35349;i:1;R:35350;}s:67:"1208:8314181539d9c4ab258e8ac3a55dcc9068de683f-no_user_id_specified.";a:2:{i:0;R:35349;i:1;R:35350;}s:71:"1208:24e388a0bc8a179988d8343db7beca67875a5373-no_login_token_specified.";a:2:{i:0;R:35349;i:1;R:35350;}s:71:"1208:93b385c510b629ddc315735048fad3628d500f19-no_login_token_requested.";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:ab567852aa840e0de67294ee1a89e97971095bd3-invalid_login_token_specified.";a:2:{i:0;R:35349;i:1;R:35350;}s:66:"1208:566d188f105679e2e1f59c894ef54cd5c4f4041e-login_token_expired.";a:2:{i:0;R:35349;i:1;R:35350;}s:71:"1208:4e67340bc287891d2787edd9410072b84973559e-outbox_for_1$s_-_page_2$d";a:2:{i:0;R:35349;i:1;R:35350;}s:58:"1208:a61fc130a14e1e88865f7fb8c95261ee082cd07f-outbox_for_s";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:931633a2d6e54ce3edab0993671a1ed7c03ee439-this_is_your_outbox,_which_lis";a:2:{i:0;R:35349;i:1;R:35350;}s:61:"1208:6ddaa02d74475436975ae791f3a0203733044131-change_password";a:2:{i:0;R:35349;i:1;R:35350;}s:67:"1208:d6dc9badcc47fe11f47babae13a0028274d0f915-change_your_password.";a:2:{i:0;R:35349;i:1;R:35350;}s:61:"1208:cb1d265a07df179d0e372c15df3fbfebc633fcb8-password_change";a:2:{i:0;R:35349;i:1;R:35350;}s:58:"1208:e3053fbaa7622ccae5f59565e7fb553f9c2d79c8-old_password";a:2:{i:0;R:35349;i:1;R:35350;}s:58:"1208:d850ee188c7c55b64bc3624534de5c5051a57dc6-new_password";a:2:{i:0;R:35349;i:1;R:35350;}s:67:"1208:93497baedef44bf19ca92cab33ac244be6f9ad73-6_or_more_characters.";a:2:{i:0;R:35349;i:1;R:35350;}s:53:"1208:992ebb33f4b2d3544a3c097c2476e2e959142daa-confirm";a:2:{i:0;R:35349;i:1;R:35350;}s:69:"1208:e0dfc75ed73e0c4e716f94ee34c63ce5fc6464de-same_as_password_above.";a:2:{i:0;R:35349;i:1;R:35350;}s:52:"1208:60d82fe2ee8c4821d39e35387c157d701e108d0a-change";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:7e4e5372adbb3150cfa10dc5ae4a156484671136-password_must_be_6_or_more_cha";a:2:{i:0;R:35349;i:1;R:35350;}s:69:"1208:f7c3cd475924dc45e184f50dd91e9e4da76c740b-passwords_do_not_match.";a:2:{i:0;R:35349;i:1;R:35350;}s:69:"1208:c46733b9cdc3f4ac8c1a97c7a1c02f9c5f15d4fc-incorrect_old_password.";a:2:{i:0;R:35349;i:1;R:35350;}s:73:"1208:998a0bca4915c3cef5d480573635c0e5c1db8e04-error_saving_user;_invalid.";a:2:{i:0;R:35349;i:1;R:35350;}s:71:"1208:8800b146989740ba59bacd402165c369fe4e7139-cannot_save_new_password.";a:2:{i:0;R:35349;i:1;R:35350;}s:61:"1208:b50e3758f83fa12ae8ed4b065365d12f5f3121f6-password_saved.";a:2:{i:0;R:35349;i:1;R:35350;}s:51:"1208:13e7e11722f7d8309c367ea7823bd6cd32011ced-paths";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:f65edb458316f4184dc13f1ee31e2211de042ada-path_and_server_settings_for_t";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:58c3acf77f34e50d4c57f7e2a9f5cc95b06367d0-theme_directory_not_readable_s";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:5e9eeb7b6448f6880ec6ed5742ecd5ef3371f06e-avatar_directory_not_writable";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:0bf71155c90819d86fe7ca09925192c3f939b553-locales_directory_not_readable";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:5721b2d3a013ff598377c8f91795a53842bf41ae-invalid_ssl_server._the_maximu";a:2:{i:0;R:35349;i:1;R:35350;}s:50:"1208:5b6825d3c67a35898b7b65fd986a7fe6ca47771d-site";a:2:{i:0;R:35349;i:1;R:35350;}s:52:"1208:cb0cb170d106f8e8d5af1e05bbdbd3a96a7de197-server";a:2:{i:0;R:35349;i:1;R:35350;}s:69:"1208:297356306e45c21390568c999a089dd09a1b6afb-site's_server_hostname.";a:2:{i:0;R:35349;i:1;R:35350;}s:50:"1208:519e39132bb98418cc0483cc446ccf5f3c8dcffe-path";a:2:{i:0;R:35349;i:1;R:35350;}s:56:"1208:1366d28fddac4518e0e799f4d1631031b2e8e76f-site_path.";a:2:{i:0;R:35349;i:1;R:35350;}s:62:"1208:0809f450df09222466fba443b717799855c14280-locale_directory";a:2:{i:0;R:35349;i:1;R:35350;}s:72:"1208:de064f8b8af29b21fbdd283332d841858a084353-directory_path_to_locales.";a:2:{i:0;R:35349;i:1;R:35350;}s:56:"1208:f2528ecc2e89fd26c9a2aba2a865db541fd1ca88-fancy_urls";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:82c867183582f6e7381692126fb186b7c1ddf6c8-use_fancy_urls_(more_readable";a:2:{i:0;R:35349;i:1;R:35350;}s:51:"1208:ca5fac1c0ec06e6fbdb20733c2ed24cf5080cb1e-theme";a:2:{i:0;R:35349;i:1;R:35350;}s:64:"1208:7e855424ee786701f066b27503801a0cd34a5c1e-server_for_themes.";a:2:{i:0;R:35349;i:1;R:35350;}s:65:"1208:d1a64663b34a18218ebfb244f7de6eeb5fa37a0c-web_path_to_themes.";a:2:{i:0;R:35349;i:1;R:35350;}s:56:"1208:46547e5fc066254711f42e35fae0e388712c7f6b-ssl_server";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:9609c7cd68e2279af593d20b65e285a37d2981d7-ssl_server_for_themes_(default";a:2:{i:0;R:35349;i:1;R:35350;}s:54:"1208:d2505a93efd48676bea8593ffd2b3b54c404e312-ssl_path";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:2b45f5536836e2decd3ee30b16d92c761de0a67d-ssl_path_to_themes_(default_th";a:2:{i:0;R:35349;i:1;R:35350;}s:55:"1208:4b892fe0c040fa8a944037d1d2817c41ab7da958-directory";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:181af5ccbb82c95b2df41f0fcb93b47aafa7e1f7-directory_where_themes_are_loc";a:2:{i:0;R:35349;i:1;R:35350;}s:53:"1208:fc022ebccbe90f9fd2eba2f0c096575a867cf116-avatars";a:2:{i:0;R:35349;i:1;R:35350;}s:59:"1208:74e44537a958daed872d13edb018405bb4d7587c-avatar_server";a:2:{i:0;R:35349;i:1;R:35350;}s:65:"1208:0d56a86289abd883718280df134a6e5b2c18f650-server_for_avatars.";a:2:{i:0;R:35349;i:1;R:35350;}s:57:"1208:ff6bb3412dfc241655f1d580c78aa9904373d2da-avatar_path";a:2:{i:0;R:35349;i:1;R:35350;}s:66:"1208:bb7857f051f4d7e70887c1e0a8fbafe3e5edad62-web_path_to_avatars.";a:2:{i:0;R:35349;i:1;R:35350;}s:62:"1208:baa21e1f76bd82ee104f8166454c14b1236dd48e-avatar_directory";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:9e893b2688e3a3971069f602b9185eb86ddc266f-directory_where_avatars_are_lo";a:2:{i:0;R:35349;i:1;R:35350;}s:57:"1208:6771ade6e8965a499bc298107ffb52e9a18dd7e3-attachments";a:2:{i:0;R:35349;i:1;R:35350;}s:69:"1208:855ac5899d436cec395964ed1254d2933feb5e70-server_for_attachments.";a:2:{i:0;R:35349;i:1;R:35350;}s:70:"1208:cec3ea1bbb978c498e1835e6b1b87d9b56a6c806-web_path_to_attachments.";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:844d55baa44bec219389830dce4987d9f50a9249-server_for_attachments_on_ssl";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:43d6dc30db410f4d696a11bef0410be247368af5-web_path_to_attachments_on_ssl";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:725d2b088567b5e36d1c2cd2c690822de1fc3673-directory_where_attachments_ar";a:2:{i:0;R:35349;i:1;R:35350;}s:49:"1208:240c12a793f4d87df3d69b3c46bc52e0f44bbe49-ssl";a:2:{i:0;R:35349;i:1;R:35350;}s:51:"1208:80c3052d33ccdee15ffaaa110c5c39072495fe63-never";a:2:{i:0;R:35349;i:1;R:35350;}s:55:"1208:1bc4d666c7b53e256ff357ccb85f9ddc9a007fc1-sometimes";a:2:{i:0;R:35349;i:1;R:35350;}s:52:"1208:a91bcce893b5de905ecbd22a99a03889cdcc2544-always";a:2:{i:0;R:35349;i:1;R:35350;}s:53:"1208:cf12f10744e5eaffe587645bb29e0327b38d3493-use_ssl";a:2:{i:0;R:35349;i:1;R:35350;}s:62:"1208:de6daa58d5a215c77d99db91c8b9cfc13d2a41dc-when_to_use_ssl.";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:41e5073d8f1e6855a2214297fab99aaa7358ae6f-server_to_direct_ssl_requests";a:2:{i:0;R:35349;i:1;R:35350;}s:65:"1208:541518c9f901c0f4c4f6d7aeea176988b8c30a15-save_path_settings.";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:9ee7b2fc9a65521c625660feec982b7622deefeb-search_for_people_on_site.name";a:2:{i:0;R:35349;i:1;R:35350;}s:59:"1208:4128b6e1dee10fbf8a2028d4bdaee84619ee31c5-people_search";a:2:{i:0;R:35349;i:1;R:35350;}s:59:"1208:4ae56b7c265474293cb1a967eeb97cf25fa28c85-public_list_s";a:2:{i:0;R:35349;i:1;R:35350;}s:71:"1208:8fade6aaa65efcccc3a96d8e3d8e20d50cb4c657-public_list_1$s,_page_2$d";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:c5259eab4575fbb71c51543fc1c62a609f859db7-lists_are_how_you_sort_similar";a:2:{i:0;R:35349;i:1;R:35350;}s:56:"1208:5d6b95161c021849fc818d66fe4e60ad1ed2d966-no_tagger.";a:2:{i:0;R:35349;i:1;R:35350;}s:73:"1208:94255b2aaae3fb7f870cefe5bc6a2f69995dceea-people_listed_in_1$s_by_2$s";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:cdd0a3479b7e9a95fbaa9a85852091a6e8636a0e-people_listed_in_1$s_by_2$s,_p";a:2:{i:0;R:35349;i:1;R:35350;}s:53:"1208:817b79b0af2db11da9523bd5738397ebf823132b-creator";a:2:{i:0;R:35349;i:1;R:35350;}s:66:"1208:5016052c77ed609a6aad42847568ff7846c67729-private_lists_by_you";a:2:{i:0;R:35349;i:1;R:35350;}s:65:"1208:5eeddc80bd983c657964d83c4edf789d86131c7a-public_lists_by_you";a:2:{i:0;R:35349;i:1;R:35350;}s:58:"1208:5f6a2d04355d2c9e3ca11364304754ccfa4ffe77-lists_by_you";a:2:{i:0;R:35349;i:1;R:35350;}s:56:"1208:078a3c6cf34c4e1054078a6a8f7d706ff6b2a7d7-lists_by_s";a:2:{i:0;R:35349;i:1;R:35350;}s:68:"1208:4e616b0a37e5ca26a23a38ee5bdf6f939a9b3d65-lists_by_1$s,_page_2$d";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:61ddf527fdfca517b201b364fc5aff005ce3c857-you_cannot_view_others'_privat";a:2:{i:0;R:35349;i:1;R:35350;}s:50:"1208:a7b93d2128e820f861fc8dfccd9f5521e89ad21f-mode";a:2:{i:0;R:35349;i:1;R:35350;}s:57:"1208:052c240b37afdd2cc878ffa2ced80092d910ab4d-lists_for_s";a:2:{i:0;R:35349;i:1;R:35350;}s:66:"1208:625baf316bd0c35d111496317dfeb4de8546f152-select_tag_to_filter";a:2:{i:0;R:35349;i:1;R:35350;}s:64:"1208:32b75adc6e2073a7bed019d24c11a872c92fcb4a-show_private_tags.";a:2:{i:0;R:35349;i:1;R:35350;}s:52:"1208:5896e2b7efe5589a3e2a0c5c3bd90b471a7e2b68-public";a:2:{i:0;R:35349;i:1;R:35350;}s:63:"1208:e6f8faaa54ce63ab2b57ab64876605b6e26124a1-show_public_tags.";a:2:{i:0;R:35349;i:1;R:35350;}s:48:"1208:196cc191f3c30bb1caa5137d7246fe39442bf125-go";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:d70475bc9c4d83f43eeb18b1a76955cfe540e469-these_are_lists_created_by_**";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:ebf7bd6df3820f26b58460795b8df1aef86a0d26-s_has_not_created_any_lists_(";a:2:{i:0;R:35349;i:1;R:35350;}s:66:"1208:070467d662492df65da9a7b7e7e29b22860acb7b-lists_with_s_in_them";a:2:{i:0;R:35349;i:1;R:35350;}s:70:"1208:024dfb32935adeec547d312ada0ce02fba80f50b-lists_with_1$s,_page_2$d";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:964b997104e6479793f25a28ee24baffc3d918d9-these_are_lists_for_**_s**._li";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:0262988d7e88d486db3207f53499f31531e75ff7-s_has_not_been_listed_(_doc.l";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:c1a203b7068e613823d7b94b8ce7f4ef3186894c-subscribers_to_list_1$s_by_2$s";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:f7440591f14b083b1c6362a7967f8e7707ecf6ba-subscribers_to_list_1$s_by_2$s";a:2:{i:0;R:35349;i:1;R:35350;}s:70:"1208:c3ada585e47edeb5bbef097cf9e47b5cf741b5f1-lists_subscribed_to_by_s";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:0ae95f852c8f1e85595cc9eefab074ed957f114d-lists_subscribed_to_by_1$s,_pa";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:af88c050ca422745a57e14bd2bbbbca665f4e6d6-these_are_lists_subscribed_to";a:2:{i:0;R:35349;i:1;R:35350;}s:54:"1208:d6ab8174e776ddd4d44903f29423ae4258db59a3-disabled";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:a5f41936e2b5289ade24514732713cd67cc47335-this_action_only_accepts_post";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:166d6321c4e6ab2734ab9b6e923c8d9009f76955-you_cannot_administer_plugins.";a:2:{i:0;R:35349;i:1;R:35350;}s:61:"1208:60776996cbcde250e4fd8178e1be620613dc462c-no_such_plugin.";a:2:{i:0;R:35349;i:1;R:35350;}s:53:"1208:fde88e6dd4ebeeb10ec6e20f283876140b8e1358-enabled";a:2:{i:0;R:35349;i:1;R:35350;}s:53:"1208:e9b6d4faf3da7326ac5fa1587bbe9ce6d3e7c160-plugins";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:868b0c82eac6dc388d59b9ce3f3e56420b3f5d0a-additional_plugins_can_be_enab";a:2:{i:0;R:35349;i:1;R:35350;}s:61:"1208:cff1b622bca7f6351d6d6d16c300692074808422-default_plugins";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:f2f7a3752a12d1aa37b28288d82a56cfdf33f943-all_default_plugins_have_been";a:2:{i:0;R:35349;i:1;R:35350;}s:67:"1208:fd9d93bd45077f3b930789c6d50388008a24465b-unidentified_field_s.";a:2:{i:0;R:35349;i:1;R:35350;}s:60:"1208:0f82fe37359d6cce80f80c200d6f351d674c5a07-search_results";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:61d8fbd1dd4a2eecb576ac521c1c32b13af8a307-the_search_string_must_be_at_l";a:2:{i:0;R:35349;i:1;R:35350;}s:62:"1208:b1072ed658a8536b02d5fdf75337d5d06f90f7e3-profile_settings";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:6ef400b126fb8d1f973a725ac0701313c77c0cc7-you_can_update_your_personal_p";a:2:{i:0;R:35349;i:1;R:35350;}s:65:"1208:16179702052f50153bffbc7d1ced9111d4de5479-profile_information";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:2d5af6a79c80b154bef7d5ff52d6db27755e287f-1-64_lowercase_letters_or_numb";a:2:{i:0;R:35349;i:1;R:35350;}s:55:"1208:eeb692087d629b32f2f1820369d9756d60c5cba8-full_name";a:2:{i:0;R:35349;i:1;R:35350;}s:54:"1208:ac066591edb7d47406e88eed7ba536040a82daf4-homepage";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:239de07c3df533e039b3833f0fcade0b52487f94-url_of_your_homepage,_blog,_or";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:50f5a3dfcb24ed3351437b8cb5e68d7a14c0e644-plural_gettext_describe_yours";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:e58310c127b9fe3fcee7904ebc487f86269709fe-describe_yourself_and_your_int";a:2:{i:0;R:35349;i:1;R:35350;}s:49:"1208:b31fc969b4889fb445fa3e7d99b845aa2f0d3497-bio";a:2:{i:0;R:35349;i:1;R:35350;}s:54:"1208:d219c68101f532de10add2cf42fb9dbeca73d3be-location";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:6a5ee4cd2d9ecc946ddc9524d1be0e01e1095255-where_you_are,_like_"city,_sta";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:872e49be4f485ca94ed65eafbbdfd554b7d5aebc-share_my_current_location_when";a:2:{i:0;R:35349;i:1;R:35350;}s:50:"1208:848eed0fbd5429f556b2982dec3ea87136e33e44-tags";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:652240279b60fcb8cc668b46b70cffe09435193a-tags_for_yourself_(letters,_nu";a:2:{i:0;R:35349;i:1;R:35350;}s:54:"1208:89b86ab0e66f527166d98df92ddbcf5416ed58f6-language";a:2:{i:0;R:35349;i:1;R:35350;}s:65:"1208:a757a009706914b2412694c940d9983873626f04-preferred_language.";a:2:{i:0;R:35349;i:1;R:35350;}s:54:"1208:d1f7dc891b5e5d1797163b556e805123c9369e4f-timezone";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:86a15ebce05b4db7e2cb4fa9b0436ea20e5393c9-what_timezone_are_you_normally";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:c589119bb1343e7afc7688e279c248727eaed669-automatically_subscribe_to_who";a:2:{i:0;R:35349;i:1;R:35350;}s:65:"1208:5516ea6dc1bffd82ef69d9e288f1bf654726c555-subscription_policy";a:2:{i:0;R:35349;i:1;R:35350;}s:66:"1208:c0950070d9229218b4936d3b4665a3c50df6a635-let_anyone_follow_me";a:2:{i:0;R:35349;i:1;R:35350;}s:58:"1208:518a3257fa7ea06bfd0f0ad354dfbf4da562a2b0-ask_me_first";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:abf4d6593e9ccb644ed03c9c616360fbc0c19ac9-whether_other_users_need_your";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:10bc92df06e40919bbca06d1521f7bddd64e6830-make_updates_visible_only_to_m";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:8d33943407d4fb3251374db4b45026fea8945a2b-plural_gettext_bio_is_too_lon";a:2:{i:0;R:35349;i:1;R:35350;}s:68:"1208:5d5de7173c9f10d5554ad7a7fea5206b561c6ae3-timezone_not_selected.";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:ec42330c33125d42b06207a219ce0b834ef83940-language_is_too_long_(maximum";a:2:{i:0;R:35349;i:1;R:35350;}s:63:"1208:70a039130af0285eb4a810ededb2715b88e54983-invalid_tag_"_s".";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:ec8d8ae68f6d842837d637d15a7d369e062e7c5c-could_not_update_user_for_auto";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:64574eda7af1b096beaa290778d2d68cb5418965-could_not_save_location_prefs.";a:2:{i:0;R:35349;i:1;R:35350;}s:66:"1208:f4f7399db2ad6f3ae39a177944761440e6d7828c-could_not_save_tags.";a:2:{i:0;R:35349;i:1;R:35350;}s:61:"1208:196b4be7b9fd793ef94955984e84e04a7ccc924a-restore_account";a:2:{i:0;R:35349;i:1;R:35350;}s:73:"1208:0accb5b010dd20a6bcc75b45622d84675009e115-beyond_the_page_limit_(_s).";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:1f738da92dc24c1482c4feae372ce0e99224daca-could_not_retrieve_public_time";a:2:{i:0;R:35349;i:1;R:35350;}s:69:"1208:51ef4e7375ed07501f85773e7c7f8217bada57d0-public_timeline,_page_d";a:2:{i:0;R:35349;i:1;R:35350;}s:61:"1208:629fefdab5e25642161cdd570934d7fe07b7f860-public_timeline";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:93a787db9c37d9167de3807289f99df36447d177-public_timeline_feed_(activity";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:f67de66bd3f504607c8654acc99b4d1a346fc2a4-public_timeline_feed_(rss_1.0)";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:2cf5213f04e1d9def7461f063f3019e95fced21b-public_timeline_feed_(rss_2.0)";a:2:{i:0;R:35349;i:1;R:35350;}s:73:"1208:e671aa846a8a38df8c99cb483cd7897079cbfa86-public_timeline_feed_(atom)";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:7079e60446e41c809f9fe54dc0e758a56d45e5ec-this_is_the_public_timeline_fo";a:2:{i:0;R:35349;i:1;R:35350;}s:67:"1208:b1cca6d9ded297ef96136264cb8df3aa45e77958-be_the_first_to_post!";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:1a2cebe5ce2e3fa0e9afd00c6142de76011c1252-why_not_register_an_account_(";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:55c1197515a6f3429290131043b4098e115051ee-this_is_site.name_,_a_micro-bl";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:e2a5040da3b473053bf0336590530dcd5b4d47d8-this_is_site.name_,_a_micro-bl";a:2:{i:0;R:35349;i:1;R:35350;}s:70:"1208:1bbf86ace5840d33981aeedd7479d1a85d90c98f-s_updates_from_everyone.";a:2:{i:0;R:35349;i:1;R:35350;}s:62:"1208:21bf5c6f4865ce39a9c90f259738009b6b5eb4da-public_tag_cloud";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:8531b6c8b83cbac63040e92de49067c79e270fa2-these_are_most_popular_recent";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:959cd079b11afa80fdd817ae70efd659b09ee96c-no_one_has_posted_a_notice_wit";a:2:{i:0;R:35349;i:1;R:35350;}s:71:"1208:30fd3cba15c61d020bb691843ceeced218e1acb6-be_the_first_to_post_one!";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:5c6d06c678099e59dde020654c336c044d5144b8-why_not_register_an_account_(";a:2:{i:0;R:35349;i:1;R:35350;}s:72:"1208:c2d50c4d314b04e0d29452e0b57937d1b733acfb-you_are_already_logged_in!";a:2:{i:0;R:35349;i:1;R:35350;}s:68:"1208:3f156a634b1da20c2aa4f5826c4867aa9e53fcf4-no_such_recovery_code.";a:2:{i:0;R:35349;i:1;R:35350;}s:66:"1208:f89a2463a7ee399b434d4f1b5d3fb9d72f0a9e63-not_a_recovery_code.";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:e75de02c25dc59c9e2a332c6c4a1fe4f88091de8-recovery_code_for_unknown_user";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:042d435e7b75dee79a33f1f9ec1b08ca7ac9c79c-error_with_confirmation_code.";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:babdbc0166d39989835f8de38018cb288da24843-this_confirmation_code_is_too";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:fe487485704fec17299ad61d2bf78e9253ea9f2d-could_not_update_user_with_con";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:138a379ea1818d64c6a54edfc5741a11d73e6d30-if_you_have_forgotten_or_lost";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:c4e884ac096d19084d64212ff20bfddb562ea582-you_have_been_identified._ente";a:2:{i:0;R:35349;i:1;R:35350;}s:63:"1208:9b87234e60b143a2174d2a0abf79a2eebece3f36-password_recovery";a:2:{i:0;R:35349;i:1;R:35350;}s:71:"1208:427de3725cd828e2fd83638b88954323c56bd661-nickname_or_email_address";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:db773a9e87771df518a670b06ad4a9c2a6f26a7d-your_nickname_on_this_server,";a:2:{i:0;R:35349;i:1;R:35350;}s:53:"1208:4addbf16731014acdf0d8a16840ab8a8ab4ea995-recover";a:2:{i:0;R:35349;i:1;R:35350;}s:53:"1208:9e097b03e55d7a4f8627ae8a06c9b186b6ba6c27-recover";a:2:{i:0;R:35349;i:1;R:35350;}s:60:"1208:5c4bc97ee5d0ac344829dbcef02d7302feb098a8-reset_password";a:2:{i:0;R:35349;i:1;R:35350;}s:62:"1208:1af32dad545f4e807437ea22be330b747e75cee9-recover_password";a:2:{i:0;R:35349;i:1;R:35350;}s:73:"1208:14c0253a14a935e20f53453a1110c8840a1025dd-password_recovery_requested";a:2:{i:0;R:35349;i:1;R:35350;}s:60:"1208:f6fab237db3e182efffa6a72bee004269956fb76-password_saved";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:d4b18c7dd559f0300836704c919f78952e2714bc-6_or_more_characters,_and_do_n";a:2:{i:0;R:35349;i:1;R:35350;}s:51:"1208:05370455f8c18277ead45b46c713da3e10dd4200-reset";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:c42ed2753f138e913768a0bd32d93aa9137ab50a-enter_a_nickname_or_email_addr";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:dd43a02e412823669e37e973b70e7c20a3a59040-instructions_for_recovering_yo";a:2:{i:0;R:35349;i:1;R:35350;}s:72:"1208:2d166f82898ebd5f7a09d77d4676d969282c7c40-unexpected_password_reset.";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:661c7a7d15d23fd562144c2f1dc8923979a1723e-password_must_be_6_characters";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:26f6aa827c383c470997eab857d8cd4b7a845273-password_and_confirmation_do_n";a:2:{i:0;R:35349;i:1;R:35350;}s:65:"1208:b6f5c7a2f37d6bbba75c762175d4440a9515a51e-error_setting_user.";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:9a435b93abd7213bf57bface384ce313f9435374-new_password_successfully_save";a:2:{i:0;R:35349;i:1;R:35350;}s:62:"1208:e0453816e6fedb9699ab2c92a9469c8d280e12ff-no_id_parameter.";a:2:{i:0;R:35349;i:1;R:35350;}s:64:"1208:e5d56662bc126898147596bdc9c8f8ea260b3a83-no_such_file_"_d".";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:5b6e9e101113e18542153629ca75e80309f415ed-sorry,_only_invited_people_can";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:1b9e0768f232eb3e5e38ec32c256b84e526019b4-sorry,_invalid_invitation_code";a:2:{i:0;R:35349;i:1;R:35350;}s:69:"1208:dee760d19b446f58d6d263469e2948ad3de7b7b9-registration_successful";a:2:{i:0;R:35349;i:1;R:35350;}s:54:"1208:5211488f154b45dc9ccdb2a735f7b52c1a58c1cd-register";a:2:{i:0;R:35349;i:1;R:35350;}s:71:"1208:38cbc2b2241ff6e84bd71264abd0b941448e5f11-registration_not_allowed.";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:01e682ef71cedbd33b744626ec870dd46f6a2210-you_cannot_register_if_you_do";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:6f720e57394e2393c2475fd1f345e2750777d59a-email_address_already_exists.";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:0cc909be0f2da4ba1a41bb22abd333ee5d822722-invalid_username_or_password.";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:3ec023b9a4c1de820391f607a4a98e36668f3726-with_this_form_you_can_create";a:2:{i:0;R:35349;i:1;R:35350;}s:53:"1208:e0c6e84cf6036997bd6925b17b04a22924a4bc03-confirm";a:2:{i:0;R:35349;i:1;R:35350;}s:51:"1208:54213adf04451f300fe4c09f545b5f52a862c185-email";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:8b8f6db0e466bf3bf17d8370672093f3fce41126-used_only_for_updates,_announc";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:cfed6429eb133d546a940324f7f992163c8da9e4-longer_name,_preferably_your_"";a:2:{i:0;R:35349;i:1;R:35350;}s:54:"1208:93b77a7b03293008502d7a8cdf144655d8deba7c-register";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:3b68202010c84f062c880473d334e651b2749e4b-i_understand_that_content_and";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:52f37e8be6b1c7c614f9a392418f688281b1c7b0-my_text_and_files_are_copyrigh";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:d01886afeda4044b5d3fc689615f4c0e76eb2cc8-my_text_and_files_remain_under";a:2:{i:0;R:35349;i:1;R:35350;}s:66:"1208:3639ec0f50b0f9a9a60809dc558a8b5d72fef67b-all_rights_reserved.";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:1c2574b14145598c6fa33cc45425952463977cec-my_text_and_files_are_availabl";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:e6e942fe260dbdc6276c2c1d7e27d64edb4ceee7-congratulations,_1$s!_and_welc";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:5e80150a3724573e8c1c326600ff27bf03c646ec-(you_should_receive_a_message";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:0a7767eca594761d415352caddeaf89469cf0ca1-there_was_an_unexpected_error";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:9608dad98b7cde3936df70568128a8e40ddd4084-there_was_a_problem_listing_s.";a:2:{i:0;R:35349;i:1;R:35350;}s:54:"1208:8d92c584f2d32be1300ed0e53b1a33b92f0a62a0-unlisted";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:3cbe18402f8a33de2d5ffd4ed9bf0a8928e832ff-only_logged-in_users_can_repea";a:2:{i:0;R:35349;i:1;R:35350;}s:66:"1208:1a945fca46e46560415ea91a2b014dfd566a4b92-no_notice_specified.";a:2:{i:0;R:35349;i:1;R:35350;}s:54:"1208:fe67c2b99a562c350645cd7080abc2e1ed37e534-repeated";a:2:{i:0;R:35349;i:1;R:35350;}s:55:"1208:3de268f8c13697888a7016cebd067d576bb94a33-repeated!";a:2:{i:0;R:35349;i:1;R:35350;}s:58:"1208:5d22e9add1d99a05aed26b8156c53fd3347c1f12-replies_to_s";a:2:{i:0;R:35349;i:1;R:35350;}s:70:"1208:31045bd1a0ff0747dc87d3b1f516b9155eb377fd-replies_to_1$s,_page_2$d";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:3121d321728adda4e9185516738e7146c5668666-replies_feed_for_s_(activity_s";a:2:{i:0;R:35349;i:1;R:35350;}s:74:"1208:f3cb00b577b9e410689c25c245e1eea300c428f7-replies_feed_for_s_(rss_1.0)";a:2:{i:0;R:35349;i:1;R:35350;}s:74:"1208:058b7ade15328fab4f94010d9f33c39536c4bda0-replies_feed_for_s_(rss_2.0)";a:2:{i:0;R:35349;i:1;R:35350;}s:71:"1208:c89cf44df53d4a13857c6cd379c0b0ba67d33c49-replies_feed_for_s_(atom)";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:312309cfe9875b2c0046f670700ba164494e80d4-this_is_the_timeline_showing_r";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:e459d36c70e4f0853f35edba5f4c97a5abda648a-you_can_engage_other_users_in";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:09dd5a60b4da2baccd16e50c66e8b526a3981e0e-you_can_try_to_nudge_1$s_(.._2";a:2:{i:0;R:35349;i:1;R:35350;}s:68:"1208:2126cdc57b317b9669806782ee812a221ffe54eb-replies_to_1$s_on_2$s.";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:556109d95f29859a2c1c1f92266142dc38aa74c2-only_logged-in_users_can_resto";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:62477d126811a70d1c05cc84a1a81100b1633581-you_may_not_restore_your_accou";a:2:{i:0;R:35349;i:1;R:35350;}s:63:"1208:0dabda1ac88249080488b65aba44152b1c6de0ff-no_uploaded_file.";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:db34751e9119087d17e8585c91a758ca65c615fc-the_uploaded_file_exceeds_the";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:1de0a02877a32903017ad0ae5257b40b4e23a7ae-the_uploaded_file_exceeds_the";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:1598621ac42463e9d5dac7e65899003bdd2f61de-the_uploaded_file_was_only_par";a:2:{i:0;R:35349;i:1;R:35350;}s:73:"1208:1559bb04b98428ca773c336d601276e9d4ece2c9-missing_a_temporary_folder.";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:38f7065f2f3bd7ca5bfd7a4a33971f8b3b114543-failed_to_write_file_to_disk.";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:25caf85aeed8dc17d9201362ec9cff79595446e9-file_upload_stopped_by_extensi";a:2:{i:0;R:35349;i:1;R:35350;}s:74:"1208:1c976cf1e9636e313dc4045d67c4a58f5558fb0b-system_error_uploading_file.";a:2:{i:0;R:35349;i:1;R:35350;}s:63:"1208:d1631051f0b0f6ed5e3c93b0e75e546d1335165f-not_an_atom_feed.";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:a11901957fd3084b97e45fec2f27ba3ddf27e047-feed_has_been_restored._your_o";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:cb958d2bf0d094cf59c829491d25e805ecb7f9d4-feed_will_be_restored._please";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:13676cf5b06632133e7d04a5b872f88a46326224-you_can_upload_a_backed-up_tim";a:2:{i:0;R:35349;i:1;R:35350;}s:61:"1208:810ce662b16bdb5689f42fcd69013ceb0a53ed4d-upload_the_file";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:1a19ba91385ded8261eddeeeecd3532454db2ce4-you_cannot_revoke_user_roles_o";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:8f2317b0eebc286db4ffe501bb0312225ee6d7c5-user_does_not_have_this_role.";a:2:{i:0;R:35349;i:1;R:35350;}s:55:"1208:39444564986f7e740e938e747abc32029541551c-statusnet";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:5cb5ce954ecec8d6cd62a6adb745f57748f9d45a-you_cannot_sandbox_users_on_th";a:2:{i:0;R:35349;i:1;R:35350;}s:72:"1208:bed428b1053a7ad8eed47c5e2f26f7b5f68b0b7d-user_is_already_sandboxed.";a:2:{i:0;R:35349;i:1;R:35350;}s:65:"1208:3683b2239d0544d219ebba617b18ac6b3afa5b33-not_a_valid_list_s.";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:4ad48fb9d0af4d80398affb36135ab2ca799d015-users_self-tagged_with_1$s,_pa";a:2:{i:0;R:35349;i:1;R:35350;}s:54:"1208:a56826f4bdacebad15abe64bf8f41e436b692126-sessions";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:0696b5ec7caf4e707ae3e218a01e97f980ba61f9-session_settings_for_this_stat";a:2:{i:0;R:35349;i:1;R:35350;}s:54:"1208:2ceee78e3a4161a39bf9b8c456dce65e04e35dec-sessions";a:2:{i:0;R:35349;i:1;R:35350;}s:61:"1208:b12d376c1a1a05fb638db1fffda03f1949861872-handle_sessions";a:2:{i:0;R:35349;i:1;R:35350;}s:72:"1208:c619aff0f719327abe1203ed1877bedc47de5664-handle_sessions_ourselves.";a:2:{i:0;R:35349;i:1;R:35350;}s:63:"1208:dcb4d1bb51c7bbacce8981f0211cb8d8cea639ae-session_debugging";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:84842e8e423cefccd3d9f7bc644be374b86595e5-enable_debugging_output_for_se";a:2:{i:0;R:35349;i:1;R:35350;}s:67:"1208:12d3f4261689755bcf073ad014ebde120c995e0f-save_session_settings";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:b0748120adf92e828bf5db85861ed8c64d6751e6-you_must_be_logged_in_to_view";a:2:{i:0;R:35349;i:1;R:35350;}s:65:"1208:c3fc31933861faba0f80a303f64fe6291d246fe3-application_profile";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:a50aaee5738bffb95a969376c0af92a2922c7520-plural_gettext_created_by_1$s";a:2:{i:0;R:35349;i:1;R:35350;}s:65:"1208:2523dbce8dee56d929a73173849d3d897067464f-application_actions";a:2:{i:0;R:35349;i:1;R:35350;}s:50:"1208:5b4b8531d7d5bdb41bbf0484555edc62868ef8b8-edit";a:2:{i:0;R:35349;i:1;R:35350;}s:62:"1208:46a1a1b5969370bbb946b1fe87552b2d2be96984-reset_key_secret";a:2:{i:0;R:35349;i:1;R:35350;}s:62:"1208:77cb99856f6b6716e6ac314641a8f34e85c7da04-application_info";a:2:{i:0;R:35349;i:1;R:35350;}s:58:"1208:1d8242026b516b87520dfb3c6612ac416f79deaf-consumer_key";a:2:{i:0;R:35349;i:1;R:35350;}s:61:"1208:a76f1d0d217d57a1a44d4849cccbb0102ed2f0fd-consumer_secret";a:2:{i:0;R:35349;i:1;R:35350;}s:63:"1208:85e2b9d804967b19c65af2dff7926167bac20d43-request_token_url";a:2:{i:0;R:35349;i:1;R:35350;}s:62:"1208:0ff273ab152cb0b28e27c2c3fd40eb00230f6a14-access_token_url";a:2:{i:0;R:35349;i:1;R:35350;}s:59:"1208:d62c81beced099459ac93734776f6a7f79c53cd0-authorize_url";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:b26719d58068ca9f0a8beaefac7448e2198a8b1b-note_hmac-sha1_signatures_are";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:8ea589f6e940365c087932a583f8312db80ea4a7-are_you_sure_you_want_to_reset";a:2:{i:0;R:35349;i:1;R:35350;}s:74:"1208:2904ffeaa2c164023d756cd78125e6b458848487-1$s's_favorite_notices,_page";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:44aae9351e836f5e0e9ee12099418e4bd04ea79b-could_not_retrieve_favorite_no";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:72e344a2cd4350f4e67be137d86700aa881d8e64-feed_for_favorites_of_s_(activ";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:0189330fa93159ecdd66bcbeb0cfca415ef94c18-feed_for_favorites_of_s_(rss_1";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:8453f4fc86a98d2746a53119013e0214fb86628d-feed_for_favorites_of_s_(rss_2";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:4bbf1620eb8c7ba152bf090300b3695756a39126-feed_for_favorites_of_s_(atom)";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:b0c82505e48f7bacbc0fe3532ea4befecde7eca8-you_haven't_chosen_any_favorit";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:a7664f70c93df3a237769f202b1c3967eb691120-s_hasn't_added_any_favorite_n";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:cc6ae3721b83d3e77890c2f8ffa22d01540554d0-s_hasn't_added_any_favorite_n";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:8a06ace632fd41ae70d8ceaa1cbcdafe975d972c-this_is_a_way_to_share_what_yo";a:2:{i:0;R:35349;i:1;R:35350;}s:53:"1208:f4a8967c3c7e339a8765bc97c552db09ea8188e9-s_group";a:2:{i:0;R:35349;i:1;R:35350;}s:65:"1208:190aca44957b1a7adf2d4adf03f877dc802bcb34-1$s_group,_page_2$d";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:52416424b88eebf48fb23a3caef3d166d5db5d35-notice_feed_for_s_group_(activ";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:df6ce76de5a760031023c004dea1634a70cbdf67-notice_feed_for_s_group_(rss_1";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:9a0af77ed8dab040c2c1581760b6528adf776ac4-notice_feed_for_s_group_(rss_2";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:dcdb643022572482c65a71a2bed0fa1142f40d1c-notice_feed_for_s_group_(atom)";a:2:{i:0;R:35349;i:1;R:35350;}s:62:"1208:4d0e9b1b3108c09bf5bfa6c192ff539c8aac4c6b-foaf_for_s_group";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:4489d44e98d2847d2da5deea593f8ecf6475f2ba-**_s**_is_a_user_group_on_site";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:f277dbf6b8c89fa6403643a84b6df69538cb5a3d-**_s**_is_a_user_group_on_site";a:2:{i:0;R:35349;i:1;R:35350;}s:62:"1208:4af59009de4c05c5bb746859511a14413515bad7-no_such_message.";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:6651817b91592b64e12a27b044cae016127409f0-only_the_sender_and_recipient";a:2:{i:0;R:35349;i:1;R:35350;}s:67:"1208:f0b1a61daa4849dda3119b328f9076b2de0c97e8-message_to_1$s_on_2$s";a:2:{i:0;R:35349;i:1;R:35350;}s:69:"1208:df182b8cd24e3d6cdeeda45f7d56c22ef4a90cb5-message_from_1$s_on_2$s";a:2:{i:0;R:35349;i:1;R:35350;}s:60:"1208:8630555b78fa47a1207b095508b30c93a94f5c55-not_available.";a:2:{i:0;R:35349;i:1;R:35350;}s:61:"1208:51ddb3bff79bdbda9dc4c990b37691aa02d292b9-notice_deleted.";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:aca926f2116eb00bd2a51d35ff8eb143bb862f5d-private_timeline_for_1$s_list";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:77790830be1d7ef988d4613c90da7d487959cd9f-timeline_for_1$s_list_by_you,";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:562093ad4d6a09dc9b080eabba21f3c9080fd3c3-timeline_for_1$s_list_by_2$s,";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:fc20b9a11e3c0444e4f367eb2cbb4188878e4eab-private_timeline_of_s_list_by";a:2:{i:0;R:35349;i:1;R:35350;}s:72:"1208:fe82262097d008792cf575d5288919beb15dbc81-timeline_for_s_list_by_you";a:2:{i:0;R:35349;i:1;R:35350;}s:74:"1208:bea2c7c2c5a24a86737c7b62bd9c556e8bca1158-timeline_for_1$s_list_by_2$s";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:045d285d419fcbab2eaa379d2d7e65ed79238432-feed_for_1$s_list_by_2$s_(atom";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:a24e009851284b4c59d4f8e2366e879bbbd0b68a-this_is_the_timeline_for_1$s_l";a:2:{i:0;R:35349;i:1;R:35350;}s:70:"1208:7cce57f608f289d4f84d7beadd932025153165c6-try_tagging_more_people.";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:9d984b61fe691fa61972412fec0324c24b7db132-why_not_register_an_account_(";a:2:{i:0;R:35349;i:1;R:35350;}s:52:"1208:bcbe3886b5c26bd97bef30d4801b3e4db9bd0130-listed";a:2:{i:0;R:35349;i:1;R:35350;}s:52:"1208:9f3b78224d494123b16c8b0885a4693389ba9a1e-(none)";a:2:{i:0;R:35349;i:1;R:35350;}s:54:"1208:50a279de829f2dc398ac2ac7c9367508ea4b5df5-show_all";a:2:{i:0;R:35349;i:1;R:35350;}s:57:"1208:6f13df39a03f7577fd7dff463e4c31b98c1f1fe2-subscribers";a:2:{i:0;R:35349;i:1;R:35350;}s:71:"1208:34b9f2b65ad7c3c1c2977f586c81af432d2afdc0-notices_by_1$s_tagged_2$s";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:0de5b5933222e324424e6f0ca9deed10b1b9bcda-notices_by_1$s_tagged_2$s,_pag";a:2:{i:0;R:35349;i:1;R:35350;}s:70:"1208:aa186cdf0399800a212cbba861cd2d5cc0f28c85-notices_by_1$s,_page_2$d";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:70acd46b5763fd79432c6e5cc86bb62fa71ab8f3-notice_feed_for_1$s_tagged_2$s";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:5fa6fc4405aa8d2ec186078f1acc289ba9da6054-notice_feed_for_s_(activity_st";a:2:{i:0;R:35349;i:1;R:35350;}s:73:"1208:516f4d80c067c9f760563403f43c9f42864c69ad-notice_feed_for_s_(rss_1.0)";a:2:{i:0;R:35349;i:1;R:35350;}s:73:"1208:da045fdf1a4828f185f0449bd8e13115ffb3e537-notice_feed_for_s_(rss_2.0)";a:2:{i:0;R:35349;i:1;R:35350;}s:70:"1208:5971d45c4bfaf5800d7b5eba58208e32ee9e6ab8-notice_feed_for_s_(atom)";a:2:{i:0;R:35349;i:1;R:35350;}s:56:"1208:f82ae71ea3e98df87bdb08f464423ccfbd7170db-foaf_for_s";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:7ca1886f1704c27ec09c6a4c4bc06fb592d45151-this_is_the_timeline_for_1$s,";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:fbfd7bb698e39c2f33133d71ede5d5bf0ca80a95-seen_anything_interesting_rece";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:d61c245249867d5b2b90880b970930ee1ca39375-you_can_try_to_nudge_1$s_or_po";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:97591810134fa26c14dce454aff13afb84d84f8a-**_s**_has_an_account_on_site.";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:11c3d8200329c47d1d65d9003337bb3eb64ff984-**_s**_has_an_account_on_site.";a:2:{i:0;R:35349;i:1;R:35350;}s:57:"1208:615d9922e9df2cd05a7ef75a8e5727273bca3770-repeat_of_s";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:6f99dde6d3660c1b01c04eb16da9d50232b28d22-you_cannot_silence_users_on_th";a:2:{i:0;R:35349;i:1;R:35350;}s:71:"1208:f82232d34f3966928c11893dce6200f4407e3297-user_is_already_silenced.";a:2:{i:0;R:35349;i:1;R:35350;}s:50:"1208:7da403753c97a9c8d41a6a9fee4a54bf26b9d6aa-site";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:461b84927e52701012a191f4bcd031d2dfb97919-basic_settings_for_this_status";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:434307f7c9ee4b66ffae340494d9177cde6025ce-site_name_must_have_non-zero_l";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:57ad7063391c55804aec94db1a4cf4061fb8eab2-you_must_have_a_valid_contact";a:2:{i:0;R:35349;i:1;R:35350;}s:63:"1208:04fdd919820519571050ace26b30113153d3b863-invalid_logo_url.";a:2:{i:0;R:35349;i:1;R:35350;}s:67:"1208:f9d83a67ccd2b702f8e9bb59ec2a83cc38637fe5-invalid_ssl_logo_url.";a:2:{i:0;R:35349;i:1;R:35350;}s:68:"1208:1e7e4d0e2e2185d196df893fffdbfdb3887772e1-unknown_language_"_s".";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:0d25d33bae8a39d8d228f5adb9a7ec18453d8b36-minimum_text_limit_is_0_(unlim";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:a4a1d0eebaf7a9d62bae889af9ac6c06ecd1f8a3-dupe_limit_must_be_one_or_more";a:2:{i:0;R:35349;i:1;R:35350;}s:53:"1208:e9d09e2acb31e464e812e020b0d4eb27ff600254-general";a:2:{i:0;R:35349;i:1;R:35350;}s:55:"1208:d1e1aeb545bcc50da76d692fd6598ea3c3d6a32b-site_name";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:1852a8fa856a05e623805957d07b9ccb9153b8d3-the_name_of_your_site,_like_"y";a:2:{i:0;R:35349;i:1;R:35350;}s:56:"1208:9393f9ea81bb4b106f0712930f028a65c58f4bd1-brought_by";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:14453ca5961453ac5c9099510cad7345163717e6-text_used_for_credits_link_in";a:2:{i:0;R:35349;i:1;R:35350;}s:60:"1208:6304195e84fc43eab85fb257a8d511369fe0f949-brought_by_url";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:a8aef6fe96e1cd0d17062b162d10b2e71d95025b-url_used_for_credits_link_in_f";a:2:{i:0;R:35349;i:1;R:35350;}s:51:"1208:84add5b2952787581cb9a8851eef63d1ec75d22b-email";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:52df0db68385f2f4eece53854fb560f6715e92aa-contact_email_address_for_your";a:2:{i:0;R:35349;i:1;R:35350;}s:51:"1208:8b9288759e2a035099db40f92ca2a395a3667e45-local";a:2:{i:0;R:35349;i:1;R:35350;}s:62:"1208:9d0a8e82df83bb677f7710113b5dd84d9e5f6a41-default_timezone";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:b4b7eb7643e7a3a080bdf281dd1625daf3ed0f1a-default_timezone_for_the_site;";a:2:{i:0;R:35349;i:1;R:35350;}s:62:"1208:852814f288cc2951733962464a5ac17702f46f35-default_language";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:0c5ee3b642f9db3f8596448d84dc9612b7eeaed1-the_site_language_when_autodet";a:2:{i:0;R:35349;i:1;R:35350;}s:52:"1208:464588f4cdca01d760123dc278bfbfbb8d5bd750-limits";a:2:{i:0;R:35349;i:1;R:35350;}s:56:"1208:a2dd239a2b9211364c22031164583397dff063a4-text_limit";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:1e1f517213676f39e33799876b60ec4007028d0a-maximum_number_of_characters_f";a:2:{i:0;R:35349;i:1;R:35350;}s:56:"1208:414eed68256b6eed190d7c2290e3762885bac151-dupe_limit";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:7794315629c904cfdffe2b53e3e64064209c6bc5-how_long_users_must_wait_(in_s";a:2:{i:0;R:35349;i:1;R:35350;}s:50:"1208:83fce8327410848c9eb609acb21732c7c0fec96a-logo";a:2:{i:0;R:35349;i:1;R:35350;}s:55:"1208:1f34b863ba69d7273b0ba5e58b3f6575432a5bd8-site_logo";a:2:{i:0;R:35349;i:1;R:35350;}s:54:"1208:afb62c6d3b4b0e6b461791c3e410241b4705cafb-ssl_logo";a:2:{i:0;R:35349;i:1;R:35350;}s:69:"1208:e33bdfb3f5666cb2d893d47e17a451798b0969cb-save_the_site_settings.";a:2:{i:0;R:35349;i:1;R:35350;}s:57:"1208:1c904f9b439e0c8701c1c83f61cfcec3eb7bd436-site_notice";a:2:{i:0;R:35349;i:1;R:35350;}s:68:"1208:3c621fb19869f79611255b7d3351411dda0139a4-edit_site-wide_message";a:2:{i:0;R:35349;i:1;R:35350;}s:73:"1208:0ef3b3543934fdfa65cba029b64264713fdaed08-unable_to_save_site_notice.";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:97bd49c5f4a941a703e61e24a6052816d0acc950-maximum_length_for_the_site-wi";a:2:{i:0;R:35349;i:1;R:35350;}s:62:"1208:2abd5df90931741b928bb1a6e128997f341bdff6-site_notice_text";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:8c6b8a0dec8a3af927b67cedf7e5357041faa6c6-site-wide_notice_text_(255_cha";a:2:{i:0;R:35349;i:1;R:35350;}s:63:"1208:3e2513067228e38dc72756b4c3fa8f14a1678b87-save_site_notice.";a:2:{i:0;R:35349;i:1;R:35350;}s:58:"1208:d3ff87771a2e8bf68357570529c832446bdb8a76-sms_settings";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:2d655c81ab03fcb65c7c01726f4d13f5a1d7d9a9-you_can_receive_sms_messages_t";a:2:{i:0;R:35349;i:1;R:35350;}s:67:"1208:b1e22967ce6a96a14e5755e5b81545ebdf52ecff-sms_is_not_available.";a:2:{i:0;R:35349;i:1;R:35350;}s:57:"1208:c511d08328cde1c95ab92ee097503df06a0649fd-sms_address";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:c97140f89e57dc4e65b6f0a595ef2bcc3498f847-current_confirmed_sms-enabled";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:9b3cb709e0207d423b3675b77b5d3fc6e886a457-awaiting_confirmation_on_this";a:2:{i:0;R:35349;i:1;R:35350;}s:63:"1208:4e9e48fdd225499341b8d74150a973ba0d43d3f3-confirmation_code";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:4eecd4870bcbb30fb8c7ce02ac0b25060bb4b391-enter_the_code_you_received_on";a:2:{i:0;R:35349;i:1;R:35350;}s:53:"1208:a6afb0090264b55035307cf80292ad2da38d9bf9-confirm";a:2:{i:0;R:35349;i:1;R:35350;}s:62:"1208:302fffd887786e0f8d16f441e15bb520b0b02148-sms_phone_number";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:13ca8c057ecb995be83e236b80d7f4010f3459ea-phone_number,_no_punctuation_o";a:2:{i:0;R:35349;i:1;R:35350;}s:61:"1208:43351d7aad59403d8c4f9087d94951051e8ce83d-sms_preferences";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:8e8ac1eb61ddc0da0d44a4b7a8df89c50a14b49b-send_me_notices_through_sms;_i";a:2:{i:0;R:35349;i:1;R:35350;}s:68:"1208:334775d67c4be40623e17d589f37d275f1657db7-sms_preferences_saved.";a:2:{i:0;R:35349;i:1;R:35350;}s:62:"1208:936be3e5c4fef3997b3b82fa18fbc6161af66f19-no_phone_number.";a:2:{i:0;R:35349;i:1;R:35350;}s:66:"1208:7f6c61f319c8265fb2270a0169810317b4794364-no_carrier_selected.";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:6333a93c1ec31b1fba0afbb0f376c5494edb75dc-that_is_already_your_phone_num";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:19a4abdeb8f14cb3c4fa668f1af2d1cd41cb192f-that_phone_number_already_belo";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:aea1a6483718cb9556498c6a81fbdc13c6a79a9b-a_confirmation_code_was_sent_t";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:cb5beeabd8ae4b37926c06ba05be7e67bfa5dfa7-that_is_the_wrong_confirmation";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:a4a6456d7c3af6674b9818ae78d36f78438b7946-could_not_delete_sms_confirmat";a:2:{i:0;R:35349;i:1;R:35350;}s:73:"1208:980b31a132b543e425b6ff57595631bfe985b4e7-sms_confirmation_cancelled.";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:50ead364fb6a32045ced8f5e094d7c5f67e0f55e-that_is_not_your_phone_number.";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:fe16c555580d07c2da7c3c2d04418c83b1bc7ed3-the_sms_phone_number_was_remov";a:2:{i:0;R:35349;i:1;R:35350;}s:60:"1208:68582c2afa39de901555a4372b4d028d68a9ee64-mobile_carrier";a:2:{i:0;R:35349;i:1;R:35350;}s:62:"1208:e19f271b4e2404f198050d9d7149988aa9896c6a-select_a_carrier";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:34310d363bd0354cfe5330da70cddaa5918e8fbe-mobile_carrier_for_your_phone.";a:2:{i:0;R:35349;i:1;R:35350;}s:62:"1208:6d0748031bc595f9070ca27f0de6cd0832012d79-no_code_entered.";a:2:{i:0;R:35349;i:1;R:35350;}s:55:"1208:f4f12087c1d9a479f725552300c4524b35b3fbfd-snapshots";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:fc50b27db693a8de7f10cc351b5408145b728b48-manage_snapshot_configuration";a:2:{i:0;R:35349;i:1;R:35350;}s:73:"1208:6bf9040c834c2217636cfe9c86e4112840655c19-invalid_snapshot_run_value.";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:a07ea45be1bb18764f1ea7a769f620666c9f807c-snapshot_frequency_must_be_a_n";a:2:{i:0;R:35349;i:1;R:35350;}s:74:"1208:b900c9212d5da35981fd806c6178032166982f99-invalid_snapshot_report_url.";a:2:{i:0;R:35349;i:1;R:35350;}s:55:"1208:b2a5ab59086f90d0b4ff22cc072cd223e17d12fa-snapshots";a:2:{i:0;R:35349;i:1;R:35350;}s:69:"1208:c51f0b956726137c0f26e6c6ba75f0b15480999a-randomly_during_web_hit";a:2:{i:0;R:35349;i:1;R:35350;}s:64:"1208:9424c3b53196f23dad55e319319d2eee6c1da472-in_a_scheduled_job";a:2:{i:0;R:35349;i:1;R:35350;}s:60:"1208:f0db62aed9c2730d7fb7673d7a3a52e66f3dfa03-data_snapshots";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:e0b65036f849b0e6a108c165561546a2cbbb2202-when_to_send_statistical_data";a:2:{i:0;R:35349;i:1;R:35350;}s:55:"1208:89836a870e44fb467d13116254b39e2482f5cdf1-frequency";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:451b20b6139a15ae9a7f4bf1890d6648f6bfcb78-snapshots_will_be_sent_once_ev";a:2:{i:0;R:35349;i:1;R:35350;}s:56:"1208:6e92b5227a4b812e638156b366871b3decdc853b-report_url";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:35db261b2ab80c76d13e28d47143d463ba41ac9b-snapshots_will_be_sent_to_this";a:2:{i:0;R:35349;i:1;R:35350;}s:69:"1208:77b9b4bf145ab43d6b78e82ec326ca94149cc553-save_snapshot_settings.";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:38196317c982d022c1c4195ddded964f4a314385-you_are_not_subscribed_to_that";a:2:{i:0;R:35349;i:1;R:35350;}s:74:"1208:5bfe57014a4e7a22738ec2727128c5b801a5a6bc-could_not_save_subscription.";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:8a9725c03b6da9543b93a3a232766e5a97090d9a-you_may_only_approve_your_own";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:f9a2824442fa5e50f6a8d24e2fc85f3150285322-s_subscribers_awaiting_approv";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:baa7af3a760f16b7585ce2e0b1a5aa0bf2ef5e3b-1$s_subscribers_awaiting_appr";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:0b2ff996fb5bb30dc1109d9b0363654e73e0585d-a_list_of_users_awaiting_appro";a:2:{i:0;R:35349;i:1;R:35350;}s:56:"1208:dd1242a8fc29346652bfdab77420ee2576b04652-subscribed";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:d267cab5c36765ea1a588b96d2a4ae9de2c2ec3f-you_must_be_logged_in_to_unsub";a:2:{i:0;R:35349;i:1;R:35350;}s:58:"1208:add0c560731bceb5570966fb4dc9e3a845aaff83-no_id_given.";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:9d287bf3e89235dfecfd2dfce89acd690afcd231-could_not_subscribe_user_1$s_t";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:a8e5466641fc53cc1785e412ad528692120cc0b0-1$s_subscribed_to_list_2$s_by";a:2:{i:0;R:35349;i:1;R:35350;}s:59:"1208:f9d919986d3f2639ddcdbc6693db5a02e6bd6762-s_subscribers";a:2:{i:0;R:35349;i:1;R:35350;}s:71:"1208:fe34eb7800cafed574d807341edfc1fa63fa8e2c-1$s_subscribers,_page_2$d";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:de2b5df4cb070b601fd7748c4dd079ec9c5c6616-these_are_the_people_who_liste";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:19818ecac4e74b8e98c372ed4fb47404357fc938-these_are_the_people_who_liste";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:5a0580424a492e6006dc4a2d75f84d30d2b4b4fe-you_have_no_subscribers._try_s";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:a088aa63fe023667a9771956b0f7d40310d3f612-s_has_no_subscribers._want_to";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:ce71fdbd35a4e5f48e493ffe30666e71d8770669-s_has_no_subscribers._why_not";a:2:{i:0;R:35349;i:1;R:35350;}s:73:"1208:65f884f1d4c46b0d92e1216d8a48295271eb828e-1$s_subscriptions,_page_2$d";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:765971115cbd0bfba3751c974d54b57517dbf8de-these_are_the_people_whose_not";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:25ba9df65a7f6e9c32bc26bbe206b08ddf904bea-these_are_the_people_whose_not";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:3879c5fe3ae88890e0b2bd7f4515eb612a04349e-you're_not_listening_to_anyone";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:fc4dac89105b4d264675fa742fb1bdd0c6ad219a-s_is_not_listening_to_anyone.";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:2177c7d30f6f454e8346bb107a192749c59e8ba8-subscription_feed_for_s_(atom)";a:2:{i:0;R:35349;i:1;R:35350;}s:48:"1208:d9686024c27774e86f82f7cf4607447fec11f0af-im";a:2:{i:0;R:35349;i:1;R:35350;}s:49:"1208:9e10d4517d5a2f4e8e567950c34d021599f90fe2-sms";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:4c20a806b55c354c1d8dd015a5efcea92de0cdca-notices_tagged_with_1$s,_page";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:e1e23bc6fc8d04c1198daa463054c96a856e0cf0-notice_feed_for_tag_s_(activit";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:0b9894854d096429ecae184a6aa2b73ffd485047-notice_feed_for_tag_s_(rss_1.0";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:ab9cfdd73d571f4b3deeb1461d0e7ced88950320-notice_feed_for_tag_s_(rss_2.0";a:2:{i:0;R:35349;i:1;R:35350;}s:74:"1208:cdb1a072d5840f6b263e71c378e351fd27ad758c-notice_feed_for_tag_s_(atom)";a:2:{i:0;R:35349;i:1;R:35350;}s:71:"1208:ea301655d1d0e9af5026f4987be048b0b2b54b04-you_cannot_tag_this_user.";a:2:{i:0;R:35349;i:1;R:35350;}s:60:"1208:8633d4d99eb3e515b78ed4279fb088ee89103e93-list_a_profile";a:2:{i:0;R:35349;i:1;R:35350;}s:52:"1208:a2bd134f83f4e0388546d032e73256359f4d6d5f-list_s";a:2:{i:0;R:35349;i:1;R:35350;}s:51:"1208:90644fbac1d0896354baa2ed2849fe8065cd6a84-error";a:2:{i:0;R:35349;i:1;R:35350;}s:58:"1208:59f86de772b532001a2a0af35c68e9a6e09e4032-user_profile";a:2:{i:0;R:35349;i:1;R:35350;}s:55:"1208:61e3cf0c66c4375a3997d38ab928fe63b79235c2-list_user";a:2:{i:0;R:35349;i:1;R:35350;}s:51:"1208:476697facf6fd4d581a64dab65d03223dac4f4ef-lists";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:29036e3f16e40e6d4386777549dc4006eb36eaf4-lists_for_this_user_(letters,";a:2:{i:0;R:35349;i:1;R:35350;}s:50:"1208:0440499f272a9273be1eaa1058a4065996439c5a-tags";a:2:{i:0;R:35349;i:1;R:35350;}s:58:"1208:fa1fc7d994cbba3ac37ed2cdcd601917ce46fb01-lists_saved.";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:db89aa890b7835cd225c2a927058a2c9011b11cb-use_this_form_to_add_your_subs";a:2:{i:0;R:35349;i:1;R:35350;}s:58:"1208:5a904ddae2c750fbaeec70bcbb9ffa7ac1d9d2e7-no_such_tag.";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:8d41fe04104611510ac1f15a0b43d401fae20e55-you_haven't_blocked_that_user.";a:2:{i:0;R:35349;i:1;R:35350;}s:68:"1208:04bcb2c6f1a26fecffddf763521aa85e973648a2-user_is_not_sandboxed.";a:2:{i:0;R:35349;i:1;R:35350;}s:67:"1208:bae54efc508f35f1df6683b2a6b182bb0d8b98c3-user_is_not_silenced.";a:2:{i:0;R:35349;i:1;R:35350;}s:58:"1208:9ab84878a997c48c4bd68b3a65572c1e75133b8e-unsubscribed";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:aab38dac9f0ba121b6fdae0c39aa56a178198b4b-1$s_unsubscribed_from_list_2$";a:2:{i:0;R:35349;i:1;R:35350;}s:58:"1208:ba97b020cba0bf103a56af4b01cdabca53f3eb14-url_settings";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:98854faaf5d9c50a3fc942c16c94f83d5dfd4f81-manage_various_other_options.";a:2:{i:0;R:35349;i:1;R:35350;}s:60:"1208:9bce1401b6ed20e6698f3544a798784857ea4865-(free_service)";a:2:{i:0;R:35349;i:1;R:35350;}s:50:"1208:39d957e9f366f71a239ee7aa7e81ec25582b094b-none";a:2:{i:0;R:35349;i:1;R:35350;}s:54:"1208:a5be65388d36b04664912e15e8d55fa43ca1cffd-internal";a:2:{i:0;R:35349;i:1;R:35350;}s:63:"1208:7ebf1d03428b7e3e2ace7647c4e5f1a8c8ad6530-shorten_urls_with";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:6e51e71b37fdc5f26ccc9e93947cfe425cdf0e3e-automatic_shortening_service_t";a:2:{i:0;R:35349;i:1;R:35350;}s:61:"1208:1f0c1b828f9d4f94640e253c459b27cf921d14b6-url_longer_than";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:2c48ebe2f9b84d8d968f655d1bcf646cd288eb70-urls_longer_than_this_will_be";a:2:{i:0;R:35349;i:1;R:35350;}s:62:"1208:a4b79f9fa5daff2c2d9447c81a051dd53a2cbe02-text_longer_than";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:0bce1c011dd16a6d155e54c23db3bfb8bdc43bb4-urls_in_notices_longer_than_th";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:3eff48d2508be208d76b472b9468c5ec698c1307-url_shortening_service_is_too";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:feeb481c12b360aad9dd47035857860c63f8ad54-invalid_number_for_maximum_url";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:254eb042fb70b1024543e445131e2928c2c00a30-invalid_number_for_maximum_not";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:19c60202497dc3d139210dc9547835ad6365457e-error_saving_user_url_shorteni";a:2:{i:0;R:35349;i:1;R:35350;}s:50:"1208:1615e2ff261d43ce5441247527fdeb8063328258-user";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:ac79a64b0f76d929e4bed4f7646af4981fa6528f-user_settings_for_this_statusn";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:e29b611e054eeef5296373cfbaf17eca5c6e87d3-invalid_bio_limit._must_be_num";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:f9d45047b6d20569025dddb9df55dd55bb5daffb-invalid_welcome_text._maximum";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:7a4dee3516696fcfa406859d8f13709dfbec48bf-invalid_default_subscripton_"";a:2:{i:0;R:35349;i:1;R:35350;}s:53:"1208:db28182b68e512a47037339c9b2cb0a9f53f067b-profile";a:2:{i:0;R:35349;i:1;R:35350;}s:55:"1208:9faf28d245109ac4d437e8246e359670c5beb93e-bio_limit";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:916df2fe0cdd48b6744f8db2a6dce963ca1de8d1-maximum_length_of_a_profile_bi";a:2:{i:0;R:35349;i:1;R:35350;}s:55:"1208:f9c5072410dac93f605e41a4590f5b81ad278090-new_users";a:2:{i:0;R:35349;i:1;R:35350;}s:62:"1208:c27349addec97d1d555396d0f971302c75da5f77-new_user_welcome";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:e2716c9ec4b05b47b9249f567e26240f2113d014-welcome_text_for_new_users_(ma";a:2:{i:0;R:35349;i:1;R:35350;}s:66:"1208:d91eef76c77dc95161f83becb69f4ccc1b3b0089-default_subscription";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:9a880e5dffe6a083894ed2b7dd5a4f4384b88c11-automatically_subscribe_new_us";a:2:{i:0;R:35349;i:1;R:35350;}s:57:"1208:9b69a35ab52450fb70bf29cfd08bf16692f7278b-invitations";a:2:{i:0;R:35349;i:1;R:35350;}s:65:"1208:12646827317a4ccf2713b094cd2363b30a58a34a-invitations_enabled";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:5bb5d35bb1813210d1c21978e15b82a6742b2f3a-whether_to_allow_users_to_invi";a:2:{i:0;R:35349;i:1;R:35350;}s:65:"1208:1d8e570ba35807e54bd04c1f28300389eac8b586-save_user_settings.";a:2:{i:0;R:35349;i:1;R:35350;}s:66:"1208:ea4c685af4662664451edacdd452c2895bb9e8da-1$s_groups,_page_2$d";a:2:{i:0;R:35349;i:1;R:35350;}s:68:"1208:9504f70264be98cf5192362035e095efa5a8919e-search_for_more_groups";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:1fde5a81e0237716cea591385213ee2bb6a4898b-s_is_not_a_member_of_any_grou";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:bf8baa26722557ff7265dedca9ca24c6962509f6-try_searching_for_groups_(_act";a:2:{i:0;R:35349;i:1;R:35350;}s:70:"1208:fc57f40a0b4e700b5a51d8ec3c2ecb310cdf8322-updates_from_1$s_on_2$s!";a:2:{i:0;R:35349;i:1;R:35350;}s:57:"1208:67ef127ec85257f2b291d4e4b683856d85f3ddef-statusnet_s";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:4c6cf8475be3e8fc399e517588e3935730e0c57c-this_site_is_powered_by_1$s_ve";a:2:{i:0;R:35349;i:1;R:35350;}s:58:"1208:a60a223c98b2c36522f0b7f89f57ae14e144678a-contributors";a:2:{i:0;R:35349;i:1;R:35350;}s:53:"1208:3229609e15436ec51bcf00818a69a84dbc58a0c2-license";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:096407bd343c6630d57496c3136443568f9ad7e1-statusnet_is_free_software_you";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:c6dde656a0140652eda4fc29e4765a01e4fc219f-this_program_is_distributed_in";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:624fa1391dfc07bfae9e1c84abc61ba41466b67a-you_should_have_received_a_cop";a:2:{i:0;R:35349;i:1;R:35350;}s:53:"1208:ab2e26dd8b8868a3969cb3321e0c983c0d9d67d4-plugins";a:2:{i:0;R:35349;i:1;R:35350;}s:50:"1208:183c6796c63c3dd77e6471953d8e915b74ef76d3-name";a:2:{i:0;R:35349;i:1;R:35350;}s:53:"1208:66f93e3e37b1ae7367d68d0d566b730b70b09141-version";a:2:{i:0;R:35349;i:1;R:35350;}s:55:"1208:bb96a5a141321fcdd09602fc8acbca161dfa06f2-author(s)";a:2:{i:0;R:35349;i:1;R:35350;}s:57:"1208:598945a93c61898510c9a7c951a142e7b89db203-description";a:2:{i:0;R:35349;i:1;R:35350;}s:51:"1208:ff7264b2af49d983303b80b866aae575472859e3-favor";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:db52d07d8dba8fecdcfc25a789c6f1df93ded22f-1$s_marked_notice_2$s_as_a_fa";a:2:{i:0;R:35349;i:1;R:35350;}s:69:"1208:c34331eb1fe14bb459b42e99109b8a4248fc2cbc-cannot_process_url_'_s'";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:184e3b0185d3f83a768aedbac9ac618c2fab6a8c-robin_thinks_something_is_impo";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:18eed92fa4d7842fb212622eff9161b213c7b159-plural_gettext_1$d_byte_1$d_b";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:1b36261b4a47316cb6a13c5af8cfa0f422a80fb3-plural_gettext_no_file_may_be";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:5fdfd07f39a9138174723a29dd4c1f9b2a1e3472-plural_gettext_a_file_this_la";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:2bb6bc69afd84b5c34cc1dc5b404d459b1abe368-plural_gettext_a_file_this_la";a:2:{i:0;R:35349;i:1;R:35350;}s:63:"1208:f3cbdcaacbb9366e479153cfb6d685e65f4bb3a1-invalid_filename.";a:2:{i:0;R:35349;i:1;R:35350;}s:70:"1208:747eef297be170b004117254bcbbc98a2eba12a8-profile_id_s_is_invalid.";a:2:{i:0;R:35349;i:1;R:35350;}s:68:"1208:c449eda536f4fe914756aa999f569459addad1e9-group_id_s_is_invalid.";a:2:{i:0;R:35349;i:1;R:35350;}s:64:"1208:6d57babfa3fbc803c0d7702d397e36bc302c431e-group_join_failed.";a:2:{i:0;R:35349;i:1;R:35350;}s:64:"1208:5da91a2b6e266b48cd47f50decd656647ec2dd02-not_part_of_group.";a:2:{i:0;R:35349;i:1;R:35350;}s:65:"1208:a309de340f8ee8ca3bae2950249c5d0efc3c9a2a-group_leave_failed.";a:2:{i:0;R:35349;i:1;R:35350;}s:50:"1208:e0d73143de80d17e82de2e017ac156ca3b9c4e01-join";a:2:{i:0;R:35349;i:1;R:35350;}s:71:"1208:c4f38a7072ae842fdd4104ceba8558a992157ea1-1$s_has_joined_group_2$s.";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:c3e97af85bcdc136a00f08d6f3494d850a712eee-could_not_update_local_group.";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:080ed554423b4b0a4ef57db0528b4d4f37f0f7a8-could_not_create_login_token_f";a:2:{i:0;R:35349;i:1;R:35350;}s:73:"1208:402229b8c6be07e9cc1368e934e6695cce444e36-cannot_instantiate_class_s.";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:ce4d4af3b7ca37ce598af9a46c18481d08de9c63-no_database_name_or_dsn_found";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:60b840db464ed9ed54065dd35c2f2a8d08bf2adf-you_are_banned_from_sending_di";a:2:{i:0;R:35349;i:1;R:35350;}s:71:"1208:92f02d0fe9492c3d359e9a33b9cfc05fe0feda8e-could_not_insert_message.";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:36838825921540fc2b5ad6b4edd3a098d70f1feb-could_not_update_message_with";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:96dc47a486ced2cd7bcbbca168a8aaa40d428259-no_such_profile_(_1$d)_for_not";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:cd2726a39d1b4345eaddec12e6d13d87f4b2779f-database_error_inserting_hasht";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:a6933e9fa28968181b6326c687fa6d4a99904718-problem_saving_notice._too_lon";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:6a025153e9805771690ff1098fd5395e99048d36-problem_saving_notice._unknown";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:1a8ffee40c1f2742112bd2629e839f80d6dfa33b-too_many_notices_too_fast;_tak";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:678f316b1fa060dbda40e5155c97bc38f6d14a93-too_many_duplicate_messages_to";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:5ee9a6c0b9f8bf0de42d09046aff0996448d9b56-you_are_banned_from_posting_no";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:1f04e76ab9ffca46e0e07c65b582e80d6e9e509e-cannot_repeat;_original_notice";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:b4d18951a7cf017014e28a88c0b01b09af844602-you_cannot_repeat_your_own_not";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:f039ba60dcd1aa8147927f43fea3da2660aea107-cannot_repeat_a_private_notice";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:548e4f7f509ebf3042453acb62dcde8078ab57e4-cannot_repeat_a_notice_you_can";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:cc9238905fed6aab7d6f10a3aeb6dbfe90cf5391-you_already_repeated_that_noti";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:f85f4c0536a89972c1a62c75939937e44cfcbee6-1$s_has_no_access_to_notice_2";a:2:{i:0;R:35349;i:1;R:35350;}s:68:"1208:50e3a4d5f8a60145fae39be4ebc73dc5a379b2b3-problem_saving_notice.";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:bd45be2669da8294e72d6f1ac9af413890ce6210-bad_type_provided_to_saveknown";a:2:{i:0;R:35349;i:1;R:35350;}s:73:"1208:4590e038eff8679b24a8aff6b95eb6595242b132-problem_saving_group_inbox.";a:2:{i:0;R:35349;i:1;R:35350;}s:58:"1208:35db97a57d981c643479b9cb6f58be2d093aff08-rt_@_1$s_2$s";a:2:{i:0;R:35349;i:1;R:35350;}s:56:"1208:db4140b1b5e5dd5de59ea5ae004b09552d838b6f-1$s_(_2$s)";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:ae8da5701089f178896d697118e9f1933f41ea95-cannot_revoke_role_"_1$s"_for";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:f327465c5f6dc5fafa7eb7ed97759c378cf0473c-cannot_revoke_role_"_1$s"_for";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:e57604fa23a6250dd37b01ef0964d350da018a31-the_tag_you_are_trying_to_rena";a:2:{i:0;R:35349;i:1;R:35350;}s:66:"1208:3234d8ae70f7fc14c9371859f0a9ca76904af5fb-no_tagger_specified.";a:2:{i:0;R:35349;i:1;R:35350;}s:63:"1208:5564fa11fc317868cdca2d4d0c88af2e702e3bdd-no_tag_specified.";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:96a383b9f74b1a660e3cb43873ea4fc2d87e5d3b-could_not_create_profile_tag.";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:5cb6870de4a693189739b98f6dfbc883d57af750-could_not_set_profile_tag_uri.";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:3994c74a130036cad0d9132f13f330aad59d10f7-could_not_set_profile_tag_main";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:2af231648612590953489d476937d64cc15845da-you_already_have_created_d_or";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:70705e04f8b6af6e3c07a906308e4a8041aaa0f6-you_already_have_1$d_or_more_p";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:0baede92e998d29358d626f7f41af06ced95d321-adding_list_subscription_faile";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:f4566b25d18dbecdfb71a3910d648ac6b52cdb38-removing_list_subscription_fai";a:2:{i:0;R:35349;i:1;R:35350;}s:62:"1208:147b7ede260143d3b3679a73c3de0aa6e89b9771-missing_profile.";a:2:{i:0;R:35349;i:1;R:35350;}s:65:"1208:6e3ec1e6270be97279264468f3b9277352a5787e-unable_to_save_tag.";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:458f720ae3fe83db9cdc7a50fbb90bd609519391-you_have_been_banned_from_subs";a:2:{i:0;R:35349;i:1;R:35350;}s:65:"1208:fc49a5e4b77cad32a08abbc8f9ac3035d78df66d-already_subscribed!";a:2:{i:0;R:35349;i:1;R:35350;}s:67:"1208:6a46d09a69b0c3777ec8905aeb364e5d06a55d1a-user_has_blocked_you.";a:2:{i:0;R:35349;i:1;R:35350;}s:61:"1208:57b20c6ace343ab08f550f826041650207ec788d-not_subscribed!";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:8ee3ca06c6c4cb991f934dd13cc3310eda0b1dab-could_not_delete_self-subscrip";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:9f67368f81910829c967f5f037087b11a41b0fb3-could_not_delete_subscription.";a:2:{i:0;R:35349;i:1;R:35350;}s:52:"1208:94874483ce5a77c68e7e51efa4b3d94cce51ced0-follow";a:2:{i:0;R:35349;i:1;R:35350;}s:71:"1208:38b52cdf006e6150c0fb93ec6a72606180f23163-1$s_is_now_following_2$s.";a:2:{i:0;R:35349;i:1;R:35350;}s:68:"1208:1d2bbd445c37ab22a6eff895b9dadcee723072cb-welcome_to_1$s,_@_2$s!";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:af5559ed39f690f8c28d2696503a5c1d45168e39-not_implemented_since_inbox_ch";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:5672268a33e8c1803fc4aa2b292dd3e6ac1c5917-no_single_user_defined_for_sin";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:62751d24ecd0e0d510a5a06bd651d43ff31996c1-single-user_mode_code_called_w";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:195be46c2834f4273bf8dc62a9c899f0a533182b-no_user_with_that_email_addres";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:18ad26ee8a196f8a089c665b1e7d8ec0b40ce88a-no_registered_email_address_fo";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:df2f672149666bdc47c9c907d299ab10c1b62901-error_saving_address_confirmat";a:2:{i:0;R:35349;i:1;R:35350;}s:69:"1208:b5310f6da7515a5f96b07dfeac94656795099a43-could_not_create_group.";a:2:{i:0;R:35349;i:1;R:35350;}s:70:"1208:f739ce4cb3afe0d1d0600fd7661af515a1f9af30-could_not_set_group_uri.";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:77d1a9ed5835849f4a7110cae9dc6a328ef88f2b-could_not_set_group_membership";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:816962b22ec0af346137a50f11469cb21549c9e3-could_not_save_local_group_inf";a:2:{i:0;R:35349;i:1;R:35350;}s:70:"1208:8b4d87bedf6e893c6193f9a658f8efff7a2305ff-cannot_locate_account_s.";a:2:{i:0;R:35349;i:1;R:35350;}s:68:"1208:42f44fe1aa7784afbee6064143d49636c8a682b5-cannot_find_xrd_for_s.";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:df61bb2df364f25159e934b64dc41a1a6544b1fa-no_atompub_api_service_for_s.";a:2:{i:0;R:35349;i:1;R:35350;}s:58:"1208:81939432dd6709fa9c725744b383574c6686356c-user_actions";a:2:{i:0;R:35349;i:1;R:35350;}s:74:"1208:a54b6ea25ec976412f28bb303507fc266d52a270-user_deletion_in_progress...";a:2:{i:0;R:35349;i:1;R:35350;}s:68:"1208:09ed22362bc121725d4e9e908fda15808e94bdc0-edit_profile_settings.";a:2:{i:0;R:35349;i:1;R:35350;}s:50:"1208:238da947fd67f77775eded8f37d42ade0e82dcd4-edit";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:cb52ea9f24501c4cdf11678b6300dc4c3609432e-send_a_direct_message_to_this";a:2:{i:0;R:35349;i:1;R:35350;}s:53:"1208:31a6be363686209ba9cce02d183e16d04846c06f-message";a:2:{i:0;R:35349;i:1;R:35350;}s:54:"1208:ea8b09c2354b17c2a83673437d6380be0e7b8c73-moderate";a:2:{i:0;R:35349;i:1;R:35350;}s:55:"1208:364b2eeb40c52deda57a4f5b21b6ffd0cb2b1ad6-user_role";a:2:{i:0;R:35349;i:1;R:35350;}s:59:"1208:4658fca85a931fadf9c28d7517bb381ccd8c5740-administrator";a:2:{i:0;R:35349;i:1;R:35350;}s:55:"1208:a377ec9640ebc4548445326bb34669f07083fa86-moderator";a:2:{i:0;R:35349;i:1;R:35350;}s:55:"1208:59f6071bc1e36d16bd4735c7781c734d7be14572-1$s_-_2$s";a:2:{i:0;R:35349;i:1;R:35350;}s:59:"1208:b5f468bd36a8bd995b016521a40370c609115a4e-untitled_page";a:2:{i:0;R:35349;i:1;R:35350;}s:55:"1208:2ed54eb8b886936886c5ac9972f8201d3568a5e5-show_more";a:2:{i:0;R:35349;i:1;R:35350;}s:51:"1208:cd71aeae76c7945a45e039bdf1892a8049aaa178-reply";a:2:{i:0;R:35349;i:1;R:35350;}s:62:"1208:126cd2cd3647d57211269cadd82ac2773299df76-write_a_reply...";a:2:{i:0;R:35349;i:1;R:35350;}s:52:"1208:8a3ad4f25f2bbc3c0be6eb7bb4e6fcac38672726-status";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:f88a848493c155e3bf04ce4616c87db7aebbe96b-**_site.name_**_is_a_microblog";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:46807acd31b6895e0238cec45846e87904385ee1-**_site.name_**_is_a_microblog";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:278663cfd49ca1dfc6638cf4cf4f55069c1ee0bb-it_runs_the_statusnet_(http_st";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:f32d8dbebaee32a37a59a018946b11d717722865-content_and_data_of_1$s_are_pr";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:f92fdbaab180319ad0124cb0541d42bdfe374d75-content_and_data_copyright_by";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:79768bc921627f481a01b65fa60f03af93252472-content_and_data_copyright_by";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:052653b50faef29621c517095c95cfdc413311cf-all_1$s_content_and_data_are_a";a:2:{i:0;R:35349;i:1;R:35350;}s:51:"1208:79ba5e1b3f99abfd54ef8d839ba12bd2ac4d79cb-after";a:2:{i:0;R:35349;i:1;R:35350;}s:52:"1208:74f39697ac328c6325ce068b6aaca626abc0bf63-before";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:72fc697280c127657a4466a87499e220a14af855-expecting_a_root_feed_element";a:2:{i:0;R:35349;i:1;R:35350;}s:64:"1208:db5964949e56f3ed9c9f22b6974ad4ecbcdeac36-unknown_verb_"_s".";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:5abaafee67e81a1c2bc1a2c04050eb5d7b9a66dc-cannot_force_subscription_for";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:4a0b1bc5a011432496a4b00b844b505a6015e576-cannot_force_remote_user_to_su";a:2:{i:0;R:35349;i:1;R:35350;}s:62:"1208:f5e8a5fbfcde7af2e173829e2ffc1d6d24bb4464-unknown_profile.";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:de6e9c33eba2a5a06d6a76809701de69e9e7c067-this_activity_seems_unrelated";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:1f7d032cd11d7ea8e3692b17ec319432b393ae01-remote_profile_is_not_a_group!";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:8135fc70b70e1d665308dcd3b1acdd46ac816313-user_is_already_a_member_of_th";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:cb94f6071ea6fb84ddf2b82de2bd9750cac1e75a-already_know_about_notice_1$s";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:bdea4b8a5beb0d0404320862b50bbc3d929013c9-not_overwriting_author_info_fo";a:2:{i:0;R:35349;i:1;R:35350;}s:70:"1208:4f77e276a2b55bf74f2aa948672c734989aeecde-no_content_for_notice_s.";a:2:{i:0;R:35349;i:1;R:35350;}s:64:"1208:a40eb24115112453eb90895c67b8d51ee7dd83b4-no_such_user_"_s".";a:2:{i:0;R:35349;i:1;R:35350;}s:57:"1208:e14c8825836fdeefe1d1131786a93dafdd19b590-1$s_2$s_3$s";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:fa9de07b229613a4c20fa57caecf1eee5e564a20-can't_handle_remote_content_ye";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:18f0252f05c931975d2c40d6feb330a002be547d-can't_handle_embedded_xml_cont";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:e341b9d209a226d6d2e28386e0121141a1e4739d-can't_handle_embedded_base64_c";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:34cacc0fbc66ce1463a73d27eea8d910fdc6d348-you_cannot_make_changes_to_thi";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:8fb85c1b4d5fa3ae6e49fe74da6dde55bfce1a56-changes_to_that_panel_are_not";a:2:{i:0;R:35349;i:1;R:35350;}s:73:"1208:af03fd0bda0f8587ca6f72b57e08b074d8d4e57f-showform()_not_implemented.";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:b21d310816eaa82892a748e5ba77ef1a1376fab6-savesettings()_not_implemented";a:2:{i:0;R:35349;i:1;R:35350;}s:50:"1208:5fbca073b45893030ec0012f6bee2123a4fc61b2-home";a:2:{i:0;R:35349;i:1;R:35350;}s:51:"1208:f3fc9b8fb27c211427ba96cba620827a3adf6098-admin";a:2:{i:0;R:35349;i:1;R:35350;}s:70:"1208:b71daff3b5ec2d2a5f61615c36e274a0ada4b443-basic_site_configuration";a:2:{i:0;R:35349;i:1;R:35350;}s:50:"1208:396d4d707537c2ac38feeaba288bbaf2562b369c-site";a:2:{i:0;R:35349;i:1;R:35350;}s:64:"1208:e71f83d6aa24f20dd3281640614339a97e3c03ed-user_configuration";a:2:{i:0;R:35349;i:1;R:35350;}s:50:"1208:60050f02d3db7f2f1bc03e2eb7bec4966fecacb9-user";a:2:{i:0;R:35349;i:1;R:35350;}s:66:"1208:5fd1adbcb64486c43a7767fb70b63b5e3450ec20-access_configuration";a:2:{i:0;R:35349;i:1;R:35350;}s:52:"1208:359839c0b054dfe48a09e2ad2f0bb6eb6b97b1eb-access";a:2:{i:0;R:35349;i:1;R:35350;}s:65:"1208:285b529db9aa9eaa54109c829038d3325b6893b4-paths_configuration";a:2:{i:0;R:35349;i:1;R:35350;}s:51:"1208:a1dd028d3a9fb917feabf46ef048a7f1e8ef3470-paths";a:2:{i:0;R:35349;i:1;R:35350;}s:68:"1208:75fa9ae52108b19a13d7528a9a8d7894b4c3dbd7-sessions_configuration";a:2:{i:0;R:35349;i:1;R:35350;}s:54:"1208:b2228d5ca1852559e6cd84f7deab4e59237a28d0-sessions";a:2:{i:0;R:35349;i:1;R:35350;}s:62:"1208:e2184308b205ec78723d6107f9359c6fb9eb7535-edit_site_notice";a:2:{i:0;R:35349;i:1;R:35350;}s:57:"1208:8ddba7048dd6a30929aaf0793e5fc131559ed57a-site_notice";a:2:{i:0;R:35349;i:1;R:35350;}s:69:"1208:f146566d08ad5bc896470b2cc5e3789a31306571-snapshots_configuration";a:2:{i:0;R:35349;i:1;R:35350;}s:55:"1208:0605e1bd59b5147989982da4b4b8218ecc1ad6ca-snapshots";a:2:{i:0;R:35349;i:1;R:35350;}s:62:"1208:bd50037d6008794c6514818078d0448ae03837d7-set_site_license";a:2:{i:0;R:35349;i:1;R:35350;}s:53:"1208:fb5a6c53e27cdc4999b9353b4bb2b0ee0dd32667-license";a:2:{i:0;R:35349;i:1;R:35350;}s:67:"1208:48753ee16e791010a61e50970acb51436979a3e1-plugins_configuration";a:2:{i:0;R:35349;i:1;R:35350;}s:53:"1208:b8e35169400286b1f9dbd37221f4d5f3d65ae03c-plugins";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:c97aacab00321116bb4179c1fc1c399d7ac879d4-api_resource_requires_read-wri";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:854b68cf1facd615aa04f3d56e576ce2f793164f-no_application_for_that_consum";a:2:{i:0;R:35349;i:1;R:35350;}s:69:"1208:44a4eb3502469f81d23662890a361f70b3de2216-not_allowed_to_use_api.";a:2:{i:0;R:35349;i:1;R:35350;}s:63:"1208:d18e13ef93b31fe040d6bfcf5f4f6c7f92b00e33-bad_access_token.";a:2:{i:0;R:35349;i:1;R:35350;}s:69:"1208:c6132b30d39197a8192d267fe0580c80423e7902-no_user_for_that_token.";a:2:{i:0;R:35349;i:1;R:35350;}s:73:"1208:91581421218739345dbbcdae25842519ac6d90b8-could_not_authenticate_you.";a:2:{i:0;R:35349;i:1;R:35350;}s:50:"1208:716f63b96e0c263222949a3b8a00cdb4f46d3183-icon";a:2:{i:0;R:35349;i:1;R:35350;}s:71:"1208:823b516356283d7136a0cfe723603123c90bcc0e-icon_for_this_application";a:2:{i:0;R:35349;i:1;R:35350;}s:50:"1208:709a23220f2c3d64d1e1d6d18c4d5280f8d82fca-name";a:2:{i:0;R:35349;i:1;R:35350;}s:74:"1208:565d8d818fa2304237f34c96cd437612fea7a312-plural_gettext_describe_your";a:2:{i:0;R:35349;i:1;R:35350;}s:71:"1208:3275bfaacccd0db822be97c8a6a410e38921f8d9-describe_your_application";a:2:{i:0;R:35349;i:1;R:35350;}s:57:"1208:55f8ebc805e65b5b71ddafdae390e3be2bcd69af-description";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:3730d1b7ba89c841e6ecc1dfcbe49e19a1017260-url_of_the_homepage_of_this_ap";a:2:{i:0;R:35349;i:1;R:35350;}s:56:"1208:601856b5ace6bd225d0afd68fcd7c62801013d9f-source_url";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:95f07dd8fe522e997db637751c8e41dc78daf95a-organization_responsible_for_t";a:2:{i:0;R:35349;i:1;R:35350;}s:58:"1208:519255ae1f74ffc5ddd29979295c7572f048ad81-organization";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:2b8637c73fc85159754e17ca2a217334695ebcce-url_for_the_homepage_of_the_or";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:94942cd18e1ce0909ee065117e607364ac1b474d-url_to_redirect_to_after_authe";a:2:{i:0;R:35349;i:1;R:35350;}s:53:"1208:54a2cf5e634dbba0be2bf8a55f79252f5c790bdb-browser";a:2:{i:0;R:35349;i:1;R:35350;}s:53:"1208:532c67fe1b5afae15d2d08fba7a78de0f63cc4b5-desktop";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:e479bd90650682c5828004d866b450b17969ca2d-type_of_application,_browser_o";a:2:{i:0;R:35349;i:1;R:35350;}s:55:"1208:9b19a5a212deb29444cc1b420ad81703205848be-read-only";a:2:{i:0;R:35349;i:1;R:35350;}s:56:"1208:3cb38069622df964ada791bae1456265b89c22c7-read-write";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:0e1ba52a6a1143eb806252c5b3a52b284bdae0c9-default_access_for_this_applic";a:2:{i:0;R:35349;i:1;R:35350;}s:73:"1208:493dfc5826821bf3dd60280a66096525c80f22a7-cancel_application_changes.";a:2:{i:0;R:35349;i:1;R:35350;}s:71:"1208:4ab584907387982e822aad4ad4dec9abaf88dba4-save_application_changes.";a:2:{i:0;R:35349;i:1;R:35350;}s:65:"1208:f871e62a4484c941fc4532b488363c74cdd27ff4-unknown_application";a:2:{i:0;R:35349;i:1;R:35350;}s:50:"1208:5fc528dc81ef72a65a69bb1054eff1947e0988c7-by_\";a:2:{i:0;R:35349;i:1;R:35350;}s:56:"1208:73b9f04976dfc2d88430f0582bc42066af9f5a3c-read-write";a:2:{i:0;R:35349;i:1;R:35350;}s:55:"1208:1d8d39a6e91a5d579d831544fb5c2b08d7ea8d5d-read-only";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:47b0c716af2fa6c3a73f926ecf0f8bce659e5eed-approved_1$s_-_"_2$s"_access.";a:2:{i:0;R:35349;i:1;R:35350;}s:74:"1208:2d155a6238f4ed1bbdbfc30cdb1010c4d2261784-access_token_starting_with_s";a:2:{i:0;R:35349;i:1;R:35350;}s:52:"1208:4806e431a33dec66499c82fb67241f2f70b19518-revoke";a:2:{i:0;R:35349;i:1;R:35350;}s:52:"1208:8f71e98756779fe804c9006e12285a4d482038c9-accept";a:2:{i:0;R:35349;i:1;R:35350;}s:52:"1208:2c602588037cc364232a4abec0e7997f9b6df8db-reject";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:c03685dd0800597e0e83e331869d22770f83ac5e-author_element_must_contain_a";a:2:{i:0;R:35349;i:1;R:35350;}s:69:"1208:dc518b7623ff7a47e6fc1d9b257c6951759cc877-do_not_use_this_method!";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:2f53d22561bd94e6ef1bd377c0ef4dcfb9cb46b2-timeline_for_people_in_list_1$";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:0ab2563101fa2d05abd1c79f78f138ed9830c369-updates_from_1$s's_list_2$s_on";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:40613cc4df3b8747b395735d5ffdd33df11911a0-notices_where_this_attachment";a:2:{i:0;R:35349;i:1;R:35350;}s:70:"1208:ab2107d3afa76a1c10eeda8bbb9067ceab7975ea-tags_for_this_attachment";a:2:{i:0;R:35349;i:1;R:35350;}s:71:"1208:bea1c9427d9e670112e56a3d0287b7c43d504d43-password_changing_failed.";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:610e3c0a1704da2e504a2adc1108af987126f335-password_changing_is_not_allow";a:2:{i:0;R:35349;i:1;R:35350;}s:51:"1208:82dd2cdf36f9436d89f404454654ad3e53fd428d-block";a:2:{i:0;R:35349;i:1;R:35350;}s:61:"1208:8442b97adc4ff27a1fb0a671ef231cca4aa84216-block_this_user";a:2:{i:0;R:35349;i:1;R:35350;}s:65:"1208:30432fa107b04524bc51fbcdcfdba0c4084ca57c-cancel_join_request";a:2:{i:0;R:35349;i:1;R:35350;}s:73:"1208:f20607c58ef76ffd76b199f66c65e369de668db1-cancel_subscription_request";a:2:{i:0;R:35349;i:1;R:35350;}s:61:"1208:5d6b1a9630519b05584834341404005caadc50c3-command_results";a:2:{i:0;R:35349;i:1;R:35350;}s:56:"1208:d43ae4c09dcfb7d66a1beac62593e37a9c7baa5a-ajax_error";a:2:{i:0;R:35349;i:1;R:35350;}s:62:"1208:a8e399530785e82473db9214518d592802afb8a1-command_complete";a:2:{i:0;R:35349;i:1;R:35350;}s:60:"1208:ad9f31ca5a9203a7dc515532c1806cecbb8940c7-command_failed";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:9aa7ad605bd85a4a7803bc9350c20046e4f7e591-notice_with_that_id_does_not_e";a:2:{i:0;R:35349;i:1;R:35350;}s:70:"1208:986cfe81d8cc5f109374a8c3e685dcbc0fee34b0-user_has_no_last_notice.";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:bd8723486b0f5e6325299aa9d25f14120251c6b3-could_not_find_a_user_with_nic";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:1e4840a638ef6a271fa45ab4cefe7eb54465ce3f-could_not_find_a_local_user_wi";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:7fa0e79f5ee77591fb4384e5dd88634e588d8819-sorry,_this_command_is_not_yet";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:7859ef0078524d39214e44dad5d900952a42e857-it_does_not_make_a_lot_of_sens";a:2:{i:0;R:35349;i:1;R:35350;}s:62:"1208:bcdebc07a908de92adab8d644b1aec5d4edfcbd9-nudge_sent_to_s.";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:7ca3e4e0c1a89272fb2e966b5d3a86400035e7da-subscriptions_1$s_subscribers";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:144e2cd366f9a39ae86de4bcaaf5f97b26b49c2d-could_not_create_favorite_alre";a:2:{i:0;R:35349;i:1;R:35350;}s:68:"1208:7b1956b98fa9fd0f0fd6267970b5cdef49295fee-notice_marked_as_fave.";a:2:{i:0;R:35349;i:1;R:35350;}s:67:"1208:f9302b263a0b6b1fcc9b9064d04f58aabc966d21-1$s_joined_group_2$s.";a:2:{i:0;R:35349;i:1;R:35350;}s:65:"1208:8e4a726ec99a1a741d10c4a148cfb01818febf3b-1$s_left_group_2$s.";a:2:{i:0;R:35349;i:1;R:35350;}s:67:"1208:dc6d7088e7dd0a711e04c9d82c91b55c8762099a-error_tagging_1$s_2$s";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:f9e634806655056b66e1f57a6c1f44ac0fed766c-plural_gettext_1$s_was_tagged";a:2:{i:0;R:35349;i:1;R:35350;}s:49:"1208:42060f9325c91799b8755e3571b866e0d40cffab-,_\";a:2:{i:0;R:35349;i:1;R:35350;}s:62:"1208:3dd6d2e04c97a12d965c4a22d99b48cc53710b3e-invalid_tag_"_s"";a:2:{i:0;R:35349;i:1;R:35350;}s:69:"1208:2b6381607249a30c5b8faa639016fdb194a6d901-error_untagging_1$s_2$s";a:2:{i:0;R:35349;i:1;R:35350;}s:74:"1208:f79d696d6b3be84bbde27d52ce163e5a41122039-plural_gettext_the_following";a:2:{i:0;R:35349;i:1;R:35350;}s:56:"1208:6827f032eea37ed3547c8a1c65a3481cd410233c-1$s_(_2$s)";a:2:{i:0;R:35349;i:1;R:35350;}s:56:"1208:cf606a78f7366e955a29f977e079ef7536900886-fullname_s";a:2:{i:0;R:35349;i:1;R:35350;}s:56:"1208:0f05b3431390dbf672db77417dc9ed0244068351-location_s";a:2:{i:0;R:35349;i:1;R:35350;}s:56:"1208:a1e987a6ba4cf701620d7beac22141beae3b9580-homepage_s";a:2:{i:0;R:35349;i:1;R:35350;}s:53:"1208:98f78486229271b13e4b47b71fbefe764639cf5b-about_s";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:50a8567a727fcaee1fa0415ffd47e198d7403d79-s_is_a_remote_profile;_you_ca";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:f4ce858060a60a1c93f3a16d7d978bf1c51338e0-plural_gettext_message_too_lo";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:2255b667b8070bc58b57f7555fecc65c31af5560-you_can't_send_a_message_to_th";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:dfaf673ca89dee00c7994d165bc389f2243bbbbf-error_sending_direct_message.";a:2:{i:0;R:35349;i:1;R:35350;}s:69:"1208:9c3f8fe501839cfd5e3691ab145d3a32a5b682bb-notice_from_s_repeated.";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:d8245c94d0d39f0adaa7006e695e0210beb156eb-plural_gettext_notice_too_lon";a:2:{i:0;R:35349;i:1;R:35350;}s:62:"1208:5cc1c2f10f145b26289009569ebb32e439a95ac8-reply_to_s_sent.";a:2:{i:0;R:35349;i:1;R:35350;}s:66:"1208:744f851d20657402618ffb86daec903504f6ca1f-error_saving_notice.";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:29aa616d68a64a01ce5e3c63ec8bf820ad01040c-specify_the_name_of_the_user_t";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:88d1e4accbfa42646736c423f2a126f640b1479a-can't_subscribe_to_omb_profile";a:2:{i:0;R:35349;i:1;R:35350;}s:62:"1208:bab7831437d40cb1ab89b254ce7f256314d938a3-subscribed_to_s.";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:d2b4ee3ad99c7ff44eae1e113fc421593f9f7dd0-specify_the_name_of_the_user_t";a:2:{i:0;R:35349;i:1;R:35350;}s:66:"1208:cd154a927f6f67849c29ca532ac5b00d42392dc2-unsubscribed_from_s.";a:2:{i:0;R:35349;i:1;R:35350;}s:74:"1208:eac55a6e7d98667f1c7ae14ef42c2bcd45cd4b19-command_not_yet_implemented.";a:2:{i:0;R:35349;i:1;R:35350;}s:63:"1208:9ad5ece207e660a4591f2c78766be5f53d6d2b91-notification_off.";a:2:{i:0;R:35349;i:1;R:35350;}s:74:"1208:fa88373f9a11034068e7620139d9647ef83810e6-can't_turn_off_notification.";a:2:{i:0;R:35349;i:1;R:35350;}s:62:"1208:15d9b53e3b1c83b246fad20e6f4ff57d30609a62-notification_on.";a:2:{i:0;R:35349;i:1;R:35350;}s:73:"1208:056cf8cbb60553877763b90d2412c270d04d8ff4-can't_turn_on_notification.";a:2:{i:0;R:35349;i:1;R:35350;}s:72:"1208:3800013970965dc945a78af6fcd661264cb20e88-login_command_is_disabled.";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:e10cfc77963e0b553e58773879c8693dd60a29dd-this_link_is_useable_only_once";a:2:{i:0;R:35349;i:1;R:35350;}s:61:"1208:bf9bd7dfb888115c99cd5977767f376c5550969a-unsubscribed_s.";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:53b38fdae971edc84db03904af5337eed296fe30-you_are_not_subscribed_to_anyo";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:bdd1dc6bad213df7e8060a830d171e35e56ff39f-plural_gettext_you_are_subscr";a:2:{i:0;R:35349;i:1;R:35350;}s:74:"1208:3bc3d0200e81e4b68107c796b9f62525b82bd031-no_one_is_subscribed_to_you.";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:34e775ef4acf369d44ee3671f33dfed7dd627bdb-plural_gettext_this_person_is";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:1795043dbaa3ecc970b1f80d74047dfbdee67a8d-you_are_not_a_member_of_any_gr";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:cb3a4cf1137d494249619338fc14909a340334fe-plural_gettext_you_are_a_memb";a:2:{i:0;R:35349;i:1;R:35350;}s:54:"1208:2c5eb2dc13fbe22a412ca847b271b846cffa3a91-commands";a:2:{i:0;R:35349;i:1;R:35350;}s:67:"1208:d69f87ddc3bf68c6eda57a3dbf8fbd4996226564-turn_on_notifications";a:2:{i:0;R:35349;i:1;R:35350;}s:68:"1208:ac035fe723fde914f08b135b2dcb878fc23f7a5e-turn_off_notifications";a:2:{i:0;R:35349;i:1;R:35350;}s:60:"1208:8ef1f714814fe6e535f23916242c216c6fe6993e-show_this_help";a:2:{i:0;R:35349;i:1;R:35350;}s:63:"1208:8a67c1e9d14ce164d5117a44fcde2da38e3916e4-subscribe_to_user";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:14ab59be058090a0ee2ac529f92cdb07e6fcc087-lists_the_groups_you_have_join";a:2:{i:0;R:35349;i:1;R:35350;}s:56:"1208:e9a778c15b131dcf82ec0f877913194d189f9ef9-tag_a_user";a:2:{i:0;R:35349;i:1;R:35350;}s:58:"1208:4b241f0bbc98f012d701519dfc9f5793968494c9-untag_a_user";a:2:{i:0;R:35349;i:1;R:35350;}s:72:"1208:de6e5d403a9cf320f01528361be7eba41dcb26f3-list_the_people_you_follow";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:f2842550b51401388a349fc6623b2d2eb3130e9d-list_the_people_that_follow_yo";a:2:{i:0;R:35349;i:1;R:35350;}s:67:"1208:236a061e626ea612d70b3cf1f2e9a6b4f68d99af-unsubscribe_from_user";a:2:{i:0;R:35349;i:1;R:35350;}s:68:"1208:4285d509e416a393275fb8d7ce3779a2551f6b4d-direct_message_to_user";a:2:{i:0;R:35349;i:1;R:35350;}s:71:"1208:3fe175885c1e41315a0353c5c457a66133a68301-get_last_notice_from_user";a:2:{i:0;R:35349;i:1;R:35350;}s:70:"1208:b098836f398b9103c9300012ae252cb4f03325eb-get_profile_info_on_user";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:629d69d9e1b3432f17093b1eee41123b98457bf3-force_user_to_stop_following_y";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:64308e9c9e079886ae40da85acd0c16f6ca2848a-add_user's_last_notice_as_a_'f";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:84c448d0283cb3a8d22d52b5cbe892ddbd3b9a8e-add_notice_with_the_given_id_a";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:259297dbb5e85269112378da97d76400f540f9f1-repeat_a_notice_with_a_given_i";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:9ad59cd5ee7a359b1a93dfebd32cdf0e52633767-repeat_the_last_notice_from_us";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:f8b276d711a35c69ede135938b6c0d8c0d375537-reply_to_notice_with_a_given_i";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:cc7a2c395981e52454a7e2954a60d25a5bf6aefb-reply_to_the_last_notice_from";a:2:{i:0;R:35349;i:1;R:35350;}s:56:"1208:c15fc10d7717d4330ca42b07381a5eecf741ee95-join_group";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:f736884e004f6871661611af089049761933ed1b-get_a_link_to_login_to_the_web";a:2:{i:0;R:35349;i:1;R:35350;}s:57:"1208:76fa9f3a0946e74e4b787bf471dccc6f3bbba890-leave_group";a:2:{i:0;R:35349;i:1;R:35350;}s:60:"1208:f795df3a31b34734ef11bec211b6222c437bf449-get_your_stats";a:2:{i:0;R:35349;i:1;R:35350;}s:59:"1208:2ad5a8654db5b46cbc34a41796684a27f6607a55-same_as_'off'";a:2:{i:0;R:35349;i:1;R:35350;}s:62:"1208:963a3c8ae6858e58e2546ae4b1bb55710d22b11c-same_as_'follow'";a:2:{i:0;R:35349;i:1;R:35350;}s:61:"1208:96f9bb8c39a25adaa6c21fd17c52b11358a85bcf-same_as_'leave'";a:2:{i:0;R:35349;i:1;R:35350;}s:59:"1208:9dc1a332e780335f4ff94534fcbf30d330ac941d-same_as_'get'";a:2:{i:0;R:35349;i:1;R:35350;}s:66:"1208:b1a538a244b49921889ff266c8cdf1094e88dac8-not_yet_implemented.";a:2:{i:0;R:35349;i:1;R:35350;}s:70:"1208:9a2a96c10e6beeb9d9dd9ad080ac9ad0fca2c93b-remind_a_user_to_update.";a:2:{i:0;R:35349;i:1;R:35350;}s:74:"1208:ee64b74686ef6b944cfdea973200a75a4be993bc-no_configuration_file_found.";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:aab9a174fa4363182d1dbb76991f73d01292e019-i_looked_for_configuration_fil";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:ea0c100d92a751ce34b14ede7d858b6888cc98e4-you_may_wish_to_run_the_instal";a:2:{i:0;R:35349;i:1;R:35350;}s:66:"1208:cf627bde332fbfd731992a0c69a18a6690675002-go_to_the_installer.";a:2:{i:0;R:35349;i:1;R:35350;}s:53:"1208:e94865d46012eb81682e78fe62f4a98fe76300fd-notices";a:2:{i:0;R:35349;i:1;R:35350;}s:60:"1208:1e7b9124d5655728f90284715c9d5dc3571a6036-database_error";a:2:{i:0;R:35349;i:1;R:35350;}s:52:"1208:adbc612c0827a6f024a8b3cf448d3728ea33987d-public";a:2:{i:0;R:35349;i:1;R:35350;}s:51:"1208:592725b6db70aa1bf52a6672bd7628885a0f41c0-lists";a:2:{i:0;R:35349;i:1;R:35350;}s:52:"1208:f6fdbe48dc54dd86f63097a03bd24094dedd713a-delete";a:2:{i:0;R:35349;i:1;R:35350;}s:62:"1208:9467f5d392ab25735f03cd799cc3f1820f5d9cb7-delete_this_user";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:5dcf01071c0768c05ed547feb86fdd002d6ada2d-unable_to_find_services_for_s.";a:2:{i:0;R:35349;i:1;R:35350;}s:66:"1208:ae89af1f8c4f5d1b251ecf53797bcd9149ec38b5-disfavor_this_notice";a:2:{i:0;R:35349;i:1;R:35350;}s:63:"1208:fd2295b304faf2af63799554a8f6b30ff3d5e58f-disfavor_favorite";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:d731b9d14664311c7be31804270d7bfe0963ebb7-remove_this_notice_from_your_l";a:2:{i:0;R:35349;i:1;R:35350;}s:63:"1208:23768afb237c0887b84de9aefc0deca63fdbc47e-favor_this_notice";a:2:{i:0;R:35349;i:1;R:35350;}s:51:"1208:660b0ae43d4152c6b9e9132dd1812b9f3c9dd225-favor";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:d958aa7200656e01b4df3e0fe2dadb6a8ca7d8b5-add_this_notice_to_your_list_o";a:2:{i:0;R:35349;i:1;R:35350;}s:53:"1208:c1de387d0579f79f0dd7199e969f11a9e8ca5fdd-rss_1.0";a:2:{i:0;R:35349;i:1;R:35350;}s:53:"1208:8308cd9837ff1dac65727fdb46049040a3c1bd0d-rss_2.0";a:2:{i:0;R:35349;i:1;R:35350;}s:50:"1208:41dded417052424bdcf3c39f6c8664147fae6806-atom";a:2:{i:0;R:35349;i:1;R:35350;}s:50:"1208:d9ae6a5973fc5ae4dce6075a4d929ff233ef4147-foaf";a:2:{i:0;R:35349;i:1;R:35350;}s:62:"1208:7acff077122f9c4b827b5b993b529ce5b019017d-activity_streams";a:2:{i:0;R:35349;i:1;R:35350;}s:68:"1208:ac4218cbfda959ed04d754f27be43ff2f3169f56-no_author_in_the_feed.";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:baa0bbc8ec225bd7b3d4b5f7581f80a65867596b-cannot_import_without_a_user.";a:2:{i:0;R:35349;i:1;R:35350;}s:51:"1208:ffe8e99492ee9b850395d53f6c519938952fde0d-feeds";a:2:{i:0;R:35349;i:1;R:35350;}s:49:"1208:974352941464bd61cb50fe6999ca7f9b0780d1e6-all";a:2:{i:0;R:35349;i:1;R:35350;}s:49:"1208:982963c1c41cbed8cab073724749592fe35c532b-tag";a:2:{i:0;R:35349;i:1;R:35350;}s:74:"1208:78ceec221a470797c7aab01bff75c7a0407549fd-choose_a_tag_to_narrow_list.";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:cd6f7d31fe6a627851fdce3294571e7e50fae0d3-grant_this_user_the_"_s"_role";a:2:{i:0;R:35349;i:1;R:35350;}s:53:"1208:1cb449c1126609b4b41e1d87f65f0d7cd19b49b9-members";a:2:{i:0;R:35349;i:1;R:35350;}s:57:"1208:2ed2c0ed6be51abb5bda6da58d32436402f88476-all_members";a:2:{i:0;R:35349;i:1;R:35350;}s:53:"1208:96f608c16cef16caa06bf38901fb5f618a35a70b-pending";a:2:{i:0;R:35349;i:1;R:35350;}s:53:"1208:99613c74ce010d98ed5501785f3591344a19bc17-blocked";a:2:{i:0;R:35349;i:1;R:35350;}s:52:"1208:f5f4fb7671930f4d919c37a2c8aee17fb3760a6f-admins";a:2:{i:0;R:35349;i:1;R:35350;}s:51:"1208:9163da5915133c29177a4821d0d5d720b5eb3442-block";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:8266fb39002cf2b0127c6f97d6ed8d48d5b11257-block_this_user_so_that_they_c";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:2d0120c49a9760b2eb88078a4fbd2e70e235b1ed-url_of_the_homepage_or_blog_of";a:2:{i:0;R:35349;i:1;R:35350;}s:74:"1208:55d5ac8e4424f3da0eaa4a1738040961ac613725-describe_the_group_or_topic.";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:4465d6751fd8392241dc580ca00f2804a470faea-plural_gettext_describe_the_g";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:dabe50828762596e44ba6c51f59384859b38f086-location_for_the_group,_if_any";a:2:{i:0;R:35349;i:1;R:35350;}s:53:"1208:6a8b49f23c0c2e66b347773e3a4bb453ff1fb91c-aliases";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:2bf8ae1d5438b494ed330a8c5d222e03f7b15101-plural_gettext_extra_nickname";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:221702db3a3a496e6ca8351e2852eaf706339af0-new_members_must_be_approved_b";a:2:{i:0;R:35349;i:1;R:35350;}s:51:"1208:0136af681caede2cadca1bbe251ceb67d381a5ca-admin";a:2:{i:0;R:35349;i:1;R:35350;}s:59:"1208:97a4c03fcf8ded4ca4a69c0e1872812f851df8b4-group_actions";a:2:{i:0;R:35349;i:1;R:35350;}s:69:"1208:5177f7e9cf6ce21246b49f85aa0464bcb27a2b46-edit_s_group_properties";a:2:{i:0;R:35349;i:1;R:35350;}s:64:"1208:fd9e5f47f7a99e9d9dd66fdd51b0c78a583b13a9-add_or_edit_s_logo";a:2:{i:0;R:35349;i:1;R:35350;}s:50:"1208:6c6ddd4afcac710912d2583ecc9ed8252f5a465f-logo";a:2:{i:0;R:35349;i:1;R:35350;}s:60:"1208:595f955c77f545b900b7ec8502e9b2ae5d519c4d-popular_groups";a:2:{i:0;R:35349;i:1;R:35350;}s:59:"1208:f24ad23ab0d424cebf71f2b7bc526484cdb84497-active_groups";a:2:{i:0;R:35349;i:1;R:35350;}s:53:"1208:2941c5ce61f1c507853bc78ba080278269a62f77-see_all";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:169cacfe9e6775434981a7a2f75094092cf01c63-see_all_groups_you_belong_to.";a:2:{i:0;R:35349;i:1;R:35350;}s:57:"1208:d9c883a905731bc3ab1e5b1797dcc17a576c4565-back_to_top";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:cc1c516bbb475e686803dab29900ade4e55a1e6e-this_page_is_not_available_in";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:fa7c8805e6ff491707db4ec931053406e58a36ba-unsupported_image_file_format.";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:339ee0991216e1496fc715edc37c1f3e96765e08-that_file_is_too_big._the_maxi";a:2:{i:0;R:35349;i:1;R:35350;}s:61:"1208:55af69667f3f1c8bf48b33b73b3ba377dd5563db-partial_upload.";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:2c22cf647e9b9c6e756ab6233b1635a8b511bdf4-not_an_image_or_corrupt_file.";a:2:{i:0;R:35349;i:1;R:35350;}s:60:"1208:60a98cf620bc7c93d90c4492f8514e712f6dd352-lost_our_file.";a:2:{i:0;R:35349;i:1;R:35350;}s:63:"1208:b468715bce796c721af29f0519b68507383aae58-unknown_file_type";a:2:{i:0;R:35349;i:1;R:35350;}s:68:"1208:5a5b1f19b549b9395dfba1410cd127080f6ce53e-plural_gettext_dmb_dmb";a:2:{i:0;R:35349;i:1;R:35350;}s:68:"1208:64a7e20cf7c4418350cf69d69a0f849ac19675c1-plural_gettext_dkb_dkb";a:2:{i:0;R:35349;i:1;R:35350;}s:66:"1208:d450de73b6c042020f7946d2888573ac5669f972-plural_gettext_db_db";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:8a1170841c2562ac775302cf8421561ba72e6544-user_"_1$s"_on_2$s_has_said_th";a:2:{i:0;R:35349;i:1;R:35350;}s:69:"1208:705352b7f893d92760ae53f5fde8d1a46a8241cf-unknown_inbox_source_d.";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:78406f94c8f453f299096fa6b79398fdc0a9514d-queueing_must_be_enabled_to_us";a:2:{i:0;R:35349;i:1;R:35350;}s:71:"1208:52e5cc5b8917aa0057664729e940841eb06f24dc-transport_cannot_be_null.";a:2:{i:0;R:35349;i:1;R:35350;}s:52:"1208:075db8fb9f90b9ad23465ca11ede8b2b704dd9d1-trends";a:2:{i:0;R:35349;i:1;R:35350;}s:68:"1208:8bf326db49bf6005752283d0e5f252a4cdd49aa2-invite_more_colleagues";a:2:{i:0;R:35349;i:1;R:35350;}s:62:"1208:e8e9cc745353e396eaaeccf046efd7a58c0a1727-invite_collegues";a:2:{i:0;R:35349;i:1;R:35350;}s:61:"1208:50e2fdcd267782be462f2ccc1ab94920cacfaa2d-email_addresses";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:b15536851d84439770ac682f7ab85a24beb913fa-addresses_of_friends_to_invite";a:2:{i:0;R:35349;i:1;R:35350;}s:62:"1208:593c0277c3e6e056dcb1e80a912e64734a2edd82-personal_message";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:25464dae1d0a46fbd9efeee3c454c17e23883525-optionally_add_a_personal_mess";a:2:{i:0;R:35349;i:1;R:35350;}s:50:"1208:c64738ef7d7fb3455b2fe1683d6dc6201134dcc4-send";a:2:{i:0;R:35349;i:1;R:35350;}s:63:"1208:3bd6f22c6895251e66161b3695264a6c74b1fbb9-send_invitations.";a:2:{i:0;R:35349;i:1;R:35350;}s:50:"1208:d75292497d9913ed8da02a67f372a4da8af93e89-join";a:2:{i:0;R:35349;i:1;R:35350;}s:51:"1208:7d6ef9fd3c60635ebc2713a9ac8231fc460afd6c-leave";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:b2353e13fc3fbb44fe7505a2e6a065fc76d45ea3-see_all_lists_you_have_created";a:2:{i:0;R:35349;i:1;R:35350;}s:51:"1208:101c5b3380df50f8272cda033e485a7407894ac4-login";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:b77f07ab30c4f619f160c4b200ec6d71f7bf20d8-login_with_a_username_and_pass";a:2:{i:0;R:35349;i:1;R:35350;}s:54:"1208:a3ef3e7fcc5c84f2a86b195edba93dcab1658dab-register";a:2:{i:0;R:35349;i:1;R:35350;}s:71:"1208:4c4773e451c399785b926de45d2e3aa7d3c68030-sign_up_for_a_new_account";a:2:{i:0;R:35349;i:1;R:35350;}s:72:"1208:34930f938991add38b9322c6eb869f5d4de7f2cb-email_address_confirmation";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:08b929b29496be84ff75d266b5e60b426cff449f-hey,_1$s._someone_just_entered";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:c86f30d57e3074ce3bfca68f344e32f188327acb-1$s_is_now_following_you_on_2";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:90c5532ec7948ce1a604bfdcbe2577361239c4b4-1$s_would_like_to_listen_to_y";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:cadabade4937b1af80d459c16d8e9d770ed8a96a-1$s_would_like_to_listen_to_y";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:a637459b049a9ad6f5ba6454241872073ff7216d-faithfully_yours,_1$s._----_ch";a:2:{i:0;R:35349;i:1;R:35350;}s:55:"1208:92ac9338e7f82b0767b8327e7b3397062bc06d04-profile_s";a:2:{i:0;R:35349;i:1;R:35350;}s:51:"1208:6808f6ad1597fcc12e6796d3664c5c5ea1309603-bio_s";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:57922f0d85066d5034ec76ac1fa3f6fbec5bc208-if_you_believe_this_account_is";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:114ea39f26a9003eeb14b356ef4de9124f211b5a-new_email_address_for_posting";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:87556919173de0dcd3d1d709f1c1e57243588e38-you_have_a_new_posting_address";a:2:{i:0;R:35349;i:1;R:35350;}s:54:"1208:cd97f13451ff18f93c5873013986dc52f9219d03-s_status";a:2:{i:0;R:35349;i:1;R:35350;}s:62:"1208:307f80d96c18b873580936fca2da9ecbd736c270-sms_confirmation";a:2:{i:0;R:35349;i:1;R:35350;}s:74:"1208:be218c3b2a8ca4cfd2c655e952af5a03f6fca2ad-s_confirm_you_own_this_phone";a:2:{i:0;R:35349;i:1;R:35350;}s:71:"1208:7c741b7fe3d3beb2b9e68b76942d5728ff77b1bd-you_have_been_nudged_by_s";a:2:{i:0;R:35349;i:1;R:35350;}s:74:"1208:7d29a741515e12300d7330bb4ed0aaff0d554a0f-1$s_(_2$s)_is_wondering_what";a:2:{i:0;R:35349;i:1;R:35350;}s:72:"1208:c4a386364423d161d6cf9323cce99ff8185a82b7-new_private_message_from_s";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:7867a1b915674cdce0e6a82a6d487745a444b0ad-1$s_(_2$s)_sent_you_a_private";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:7ea5adde0ffbc9f2ccea4c61213ab47c92f87fc3-1$s_(@_2$s)_added_your_notice";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:1cef2a70edbadd7bc3bb7d021f65918f0f68fe25-1$s_(@_7$s)_just_added_your_n";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:86799d60b4423c76f4fb0c9f715baea171e8d0fb-the_full_conversation_can_be_r";a:2:{i:0;R:35349;i:1;R:35350;}s:74:"1208:7c98bb277b37bb0b8568c2a5fb413bed26bb35ef-1$s_(@_2$s)_sent_a_notice_to";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:13e700e67d92aa0d39d719e1196532aa9ac6f547-1$s_just_sent_a_notice_to_you";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:a1e8a31eb7d4048f36bbd15dcb85c8ca3750c31d-1$s_has_joined_your_group_2$s";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:67bcc378eddf50ac4219767f203b814aa24f31d5-1$s_has_joined_your_group_2$s";a:2:{i:0;R:35349;i:1;R:35350;}s:74:"1208:21b29d8479906603e6dbc2ea3a356897d7b650c3-1$s_wants_to_join_your_group";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:96ac4bde088cd713e2bfd4c3d6ea87e5a11325ab-1$s_would_like_to_join_your_g";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:c5c0eabca9d3a51b9146ec570fe82989a1c2a31b-only_the_user_can_read_their_o";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:ddcce718015f83df15a3424a3fa3271f68f380b8-you_have_no_private_messages.";a:2:{i:0;R:35349;i:1;R:35350;}s:51:"1208:cb177c11a14962fa5ec56fa1590f24af19fe1190-inbox";a:2:{i:0;R:35349;i:1;R:35350;}s:69:"1208:5110e426e663d014b41ac862b1051fecf63cb782-your_incoming_messages.";a:2:{i:0;R:35349;i:1;R:35350;}s:52:"1208:a1449a5220e217411ce959605bbbce09258a23a4-outbox";a:2:{i:0;R:35349;i:1;R:35350;}s:65:"1208:ac4d6f9cb2b93b548e17aad7e12b1be525bc3f09-your_sent_messages.";a:2:{i:0;R:35349;i:1;R:35350;}s:70:"1208:7c0e8f0b91ab82c06fe38f360763ec4ff87e46aa-could_not_parse_message.";a:2:{i:0;R:35349;i:1;R:35350;}s:68:"1208:9d600fb1493fe3d61664f9c164ac01e15bf220da-not_a_registered_user.";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:819e3c99cdaf12c4c0a117d3ccfce0b0c8588b98-sorry,_that_is_not_your_incomi";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:0e43904fda0ac761696ff6750d1b5cb58e92fecc-sorry,_no_incoming_email_allow";a:2:{i:0;R:35349;i:1;R:35350;}s:73:"1208:2d650a9dee71b4b28404cf82838b62c9624c8164-unsupported_message_type_s.";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:cc485ac6fab8532fc8eba00c3eee4b9f89727fdf-make_user_an_admin_of_the_grou";a:2:{i:0;R:35349;i:1;R:35350;}s:56:"1208:52ba897a33dff79b870b000054db6da20a687f78-make_admin";a:2:{i:0;R:35349;i:1;R:35350;}s:70:"1208:bc0f04e0eddada78cc819e9eba0d7f5b99aafa03-make_this_user_an_admin.";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:b05ac40196019c1982f13b18a90c64312f58cf3f-there_was_a_database_error_whi";a:2:{i:0;R:35349;i:1;R:35350;}s:72:"1208:93fbdafa64a701e38e4cc547bc075cd6cdc8f566-file_exceeds_user's_quota.";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:2007ff61c2a5db79858a3c33667a67f7e6972c16-file_could_not_be_moved_to_des";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:daf1db03bc0541ff78a2d21746c48052edae220f-could_not_determine_file's_mim";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:f61a7375746540fe16a011fa9e6c747eab01221b-"_1$s"_is_not_a_supported_file";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:9b4187a923f401909fc96c521e931d71a0244af7-"_s"_is_not_a_supported_file_t";a:2:{i:0;R:35349;i:1;R:35350;}s:66:"1208:4f5d6e3a73ecbcfbafe9b0bcc2d7a569848e091a-send_a_direct_notice";a:2:{i:0;R:35349;i:1;R:35350;}s:62:"1208:227f93ff57d41507ec52f463ad0d0c5ba8d29b80-select_recipient";a:2:{i:0;R:35349;i:1;R:35350;}s:68:"1208:9f9875bb11965f95601a37ee1265bb66287c2cb0-no_mutual_subscribers.";a:2:{i:0;R:35349;i:1;R:35350;}s:48:"1208:ae79ea1e9c6391a9ed83a2e18a031b835feec0c9-to";a:2:{i:0;R:35349;i:1;R:35350;}s:50:"1208:bf682ed259ea791003a9983073a2a89806c37f7a-send";a:2:{i:0;R:35349;i:1;R:35350;}s:54:"1208:f1702b4686278becffc88baabe6f4b7a8355532c-messages";a:2:{i:0;R:35349;i:1;R:35350;}s:50:"1208:0b1e95cfd9775191a7224d0a218ae79187e80c1d-from";a:2:{i:0;R:35349;i:1;R:35350;}s:49:"1208:9e6207559b3c2bf3e7a5e15e9518617d75454582-web";a:2:{i:0;R:35349;i:1;R:35350;}s:50:"1208:7c7f8d6e7498ceaaac376ad37fa342ff2eab11d7-xmpp";a:2:{i:0;R:35349;i:1;R:35350;}s:50:"1208:81fb2b9653baefd8512a53e59ca45f7abd37883e-mail";a:2:{i:0;R:35349;i:1;R:35350;}s:49:"1208:224cf5b1b157d6169d7a9b39bce1022873d9d927-omb";a:2:{i:0;R:35349;i:1;R:35350;}s:49:"1208:4c7bf544de69b873b7e7415144a74c6e973fa9e5-api";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:bc240fdf50338ebf98dcfa3aa7207034b5e54267-cannot_get_author_for_activity";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:d0cb450a8460d7a3eb322f827009969fde3c3ceb-bookmark_not_posted_to_this_gr";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:c08327026b1b5ff946d2db39369c710db64ba990-object_not_posted_to_this_user";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:bf8132425159938ab082570835de5a9033d5b07d-do_not_know_how_to_handle_this";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:9422f5e6fb2d2eaa9d82492f9fd3d14820bc1bdc-you_must_implement_either_adap";a:2:{i:0;R:35349;i:1;R:35350;}s:54:"1208:92719a6d7d3f4ee86ccdd3e8e16c534737d2e636-more_▼";a:2:{i:0;R:35349;i:1;R:35350;}s:71:"1208:21d57af97b10d048998572e9cea9b1cb4620479c-nickname_cannot_be_empty.";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:573dfdbb13561a8d2c8c16e2781f543f2df47400-plural_gettext_nickname_canno";a:2:{i:0;R:35349;i:1;R:35350;}s:59:"1208:688c78a09e81659cc9004890bd83e357943bc95e-send_a_notice";a:2:{i:0;R:35349;i:1;R:35350;}s:59:"1208:c225206eda2471ff55e3719daff46071a7b7cfc0-what's_up,_s?";a:2:{i:0;R:35349;i:1;R:35350;}s:52:"1208:1afff0157ce3602cca97d4aee826ff3bb0a1d284-attach";a:2:{i:0;R:35349;i:1;R:35350;}s:60:"1208:ac0a719be2821b82530edf17997d393b0785b446-attach_a_file.";a:2:{i:0;R:35349;i:1;R:35350;}s:63:"1208:fb3c7092597152e559d49396761768c325e114ce-share_my_location";a:2:{i:0;R:35349;i:1;R:35350;}s:70:"1208:94832aaac5775eefc57f329256ed727a3c18a68a-do_not_share_my_location";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:39b87ba16bf49f8b83b4220c48a6b28c6a272db4-sorry,_retrieving_your_geo_loc";a:2:{i:0;R:35349;i:1;R:35350;}s:49:"1208:f18a6ea494003f960d41f8f2e611f452d09eb71c-,_\";a:2:{i:0;R:35349;i:1;R:35350;}s:47:"1208:b51a60734da64be0e618bacbea2865a8a7dcd669-n";a:2:{i:0;R:35349;i:1;R:35350;}s:47:"1208:02aa629c8b16cd17a44f3a0efec2feed43937642-s";a:2:{i:0;R:35349;i:1;R:35350;}s:47:"1208:e0184adedf913b076626646d3f52c3b49c39ad6d-e";a:2:{i:0;R:35349;i:1;R:35350;}s:47:"1208:e2415cb7f63df0c9de23362326ad3c37a9adfc96-w";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:bb6cad9af6e3a54155612c04569a061a13ae122e-1$u°_2$u'_3$u"_4$s_5$u°_6$u";a:2:{i:0;R:35349;i:1;R:35350;}s:48:"1208:27e90dfa57c358acfaf470860f6f72c9282ce995-at";a:2:{i:0;R:35349;i:1;R:35350;}s:56:"1208:e14773c074b05e248b0bf29367133066e6e2d1e8-in_context";a:2:{i:0;R:35349;i:1;R:35350;}s:57:"1208:e9430dabecd99743c02cb6328ebbea4b8602413b-repeated_by";a:2:{i:0;R:35349;i:1;R:35350;}s:47:"1208:f660058cbefece227d8b891016d1d4b40e049564-\";a:2:{i:0;R:35349;i:1;R:35350;}s:67:"1208:41d3a0092571f993ce6dbd2d7655ce8b3d9cf27f-reply_to_this_notice.";a:2:{i:0;R:35349;i:1;R:35350;}s:51:"1208:6c2bb735a46a8ff307fe2e638d581295b2a49e09-reply";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:052ea61c20ae602e6f5f0e156e70a92dabfc0ae7-delete_this_notice_from_the_ti";a:2:{i:0;R:35349;i:1;R:35350;}s:62:"1208:b67e0df6986aab5374098283107fb01b4ed3018d-notice_repeated.";a:2:{i:0;R:35349;i:1;R:35350;}s:67:"1208:766f3f8ca5ca319b940481744789ec59ec994d12-update_your_status...";a:2:{i:0;R:35349;i:1;R:35350;}s:61:"1208:b3a6621ed6ae99432a817591cc4464d5700ecca7-nudge_this_user";a:2:{i:0;R:35349;i:1;R:35350;}s:51:"1208:e5f491f58a78dda3c67d05e0eabe922a34714ef6-nudge";a:2:{i:0;R:35349;i:1;R:35350;}s:72:"1208:8c659eacdce461964fd19ab218b5f7fdcfbb4f83-send_a_nudge_to_this_user.";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:0a5410137f563b98fbc035114a023cb40154dfcd-no_oembed_api_endpoint_availab";a:2:{i:0;R:35349;i:1;R:35350;}s:50:"1208:67c5511c3bb237582ed8f9fea029847a2439e069-list";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:0a401280bcd231fd1342e814cb47fa330fd1ceac-change_the_list_(letters,_numb";a:2:{i:0;R:35349;i:1;R:35350;}s:73:"1208:55f1b65b3105770dad8abfe46c7c694efa895f81-describe_the_list_or_topic.";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:af7b25caf143de2b37547394b7d486510c7ac0f3-plural_gettext_describe_the_l";a:2:{i:0;R:35349;i:1;R:35350;}s:63:"1208:3eeadb7c934cc12e251f8a81b4f4c3a19d5ea379-delete_this_list.";a:2:{i:0;R:35349;i:1;R:35350;}s:66:"1208:ed711f3515d2529683f85bb4b54786f82f070b9e-add_or_remove_people";a:2:{i:0;R:35349;i:1;R:35350;}s:52:"1208:0e89832dc193c55522b5d53f5aeb117bca21f614-search";a:2:{i:0;R:35349;i:1;R:35350;}s:50:"1208:4ac6413d8a0dc91e30d86fbed52bce4a261e59ba-list";a:2:{i:0;R:35349;i:1;R:35350;}s:62:"1208:be3f1239dc4e93d9cb526cf1d0001314362b084d-1$s_list_by_2$s.";a:2:{i:0;R:35349;i:1;R:35350;}s:52:"1208:e1db3dbc566e484eafa28ed6f543f321e0bdf056-listed";a:2:{i:0;R:35349;i:1;R:35350;}s:57:"1208:da524f52f36df5b6f537a0f39df8d3b45a304cf6-subscribers";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:249a551765f47051c5c1ad3aacdd41b4d7647025-subscribers_to_1$s_list_by_2$s";a:2:{i:0;R:35349;i:1;R:35350;}s:50:"1208:363ff8ce668790a826b09cb6476930570e0f8370-edit";a:2:{i:0;R:35349;i:1;R:35350;}s:65:"1208:fc2f040f7033a5a91a2726918e7c008d60c7549a-edit_s_list_by_you.";a:2:{i:0;R:35349;i:1;R:35350;}s:65:"1208:55553fb7b0feef6c95867b724703da8bf219dc31-edit_list_settings.";a:2:{i:0;R:35349;i:1;R:35350;}s:50:"1208:5301648dcf6b53cefc9ed52999aaa92d4603cae0-edit";a:2:{i:0;R:35349;i:1;R:35350;}s:53:"1208:564f433611e7be97ae1feeb5e63d25447a3aa602-private";a:2:{i:0;R:35349;i:1;R:35350;}s:64:"1208:74c9ade74c70cf6cd3ce8e7876d67462097f10f2-list_subscriptions";a:2:{i:0;R:35349;i:1;R:35350;}s:71:"1208:4025df98e6448a989abbccc74eb5d719cccedd1e-lists_subscribed_to_by_s.";a:2:{i:0;R:35349;i:1;R:35350;}s:58:"1208:d35909887d21140b2e54417ac841dcf842b643db-lists_with_s";a:2:{i:0;R:35349;i:1;R:35350;}s:59:"1208:3d0cb6abe279fdb74135f63fb9ed105297cf97ea-lists_with_s.";a:2:{i:0;R:35349;i:1;R:35350;}s:56:"1208:3298ff6ba5e6db2da2926a2b72abdd8890ad8d86-lists_by_s";a:2:{i:0;R:35349;i:1;R:35350;}s:57:"1208:8efc2abc6057ef62c377f5ad9260b450015407da-lists_by_s.";a:2:{i:0;R:35349;i:1;R:35350;}s:56:"1208:7ad516bdd16b18cac0a535fa82ce7a446e6ee924-your_lists";a:2:{i:0;R:35349;i:1;R:35350;}s:56:"1208:bd4c339e1ea430ba684695a16ef9523a4c97c454-edit_lists";a:2:{i:0;R:35349;i:1;R:35350;}s:50:"1208:b57466f7e93f32b0220a9b6591d17e972567b193-tags";a:2:{i:0;R:35349;i:1;R:35350;}s:59:"1208:c3844b3e46044e3aa3a7cbd8f218d5ecf4a9fc26-popular_lists";a:2:{i:0;R:35349;i:1;R:35350;}s:72:"1208:e6ec915db1c77ea9cb7f0971b4d516e10132f22b-listed_1$d_subscribers_2$d";a:2:{i:0;R:35349;i:1;R:35350;}s:60:"1208:57c4abe2b5f8a9e419a7420757a328d096bd93f5-lists_with_you";a:2:{i:0;R:35349;i:1;R:35350;}s:58:"1208:4f90aa8c3170e955294df6946c314b54f64c0126-lists_with_s";a:2:{i:0;R:35349;i:1;R:35350;}s:64:"1208:8acc2bf010d194717eedf733c0757dd003e6f76d-list_subscriptions";a:2:{i:0;R:35349;i:1;R:35350;}s:53:"1208:ea92ec30ca92e5c3062a43657245af36bc7c1b42-profile";a:2:{i:0;R:35349;i:1;R:35350;}s:58:"1208:c1c9cbe6993c406237b2c5ad48ec2dc4455aaab9-your_profile";a:2:{i:0;R:35349;i:1;R:35350;}s:53:"1208:ecc54c7c33dbf094a4890665a43f914f5822590c-replies";a:2:{i:0;R:35349;i:1;R:35350;}s:55:"1208:e56c5b14a5fe9cb5c49adac7f871da9af1e9dc47-favorites";a:2:{i:0;R:35349;i:1;R:35350;}s:50:"1208:41c8fe159ea6c87223e67829768118a93526a020-user";a:2:{i:0;R:35349;i:1;R:35350;}s:54:"1208:815c89eebc75c3ea4d8d7de8346922f5982e39d1-messages";a:2:{i:0;R:35349;i:1;R:35350;}s:68:"1208:6c552e3150ae079da4c3725c730532b4baad4b9b-your_incoming_messages";a:2:{i:0;R:35349;i:1;R:35350;}s:53:"1208:bc7819b34ff87570745fbe461e36a16f80e562ce-unknown";a:2:{i:0;R:35349;i:1;R:35350;}s:53:"1208:d21866006e2edbca57e0f9cdf33f68b56b261701-disable";a:2:{i:0;R:35349;i:1;R:35350;}s:52:"1208:2f2ed130eb814de5db69c8edf41254a8e7630ae2-enable";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:6c05ea906d562f5959fa628ed15dc997a52e7a94-(the_plugin_description_is_una";a:2:{i:0;R:35349;i:1;R:35350;}s:54:"1208:e904066b59961a3bf05e0cc8c7f6eaed8682dd23-settings";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:9db7f42debb361647da037d7ab23d34f169b2b67-change_your_personal_settings.";a:2:{i:0;R:35349;i:1;R:35350;}s:51:"1208:9ed51c968ff95d3abca904941c2637d16f8116e3-admin";a:2:{i:0;R:35349;i:1;R:35350;}s:65:"1208:58b86e3be9e59178ad4327b2981dc1098500dd1a-site_configuration.";a:2:{i:0;R:35349;i:1;R:35350;}s:52:"1208:a94b329b8df38d0936b32a3484a5ac8ad68c49ad-logout";a:2:{i:0;R:35349;i:1;R:35350;}s:67:"1208:9fe5dba03b6ad175a5b05933198c3ed8e7eeb2c2-logout_from_the_site.";a:2:{i:0;R:35349;i:1;R:35350;}s:64:"1208:8fbf533708998c61d2431d1c5e9f034f4c94cf54-login_to_the_site.";a:2:{i:0;R:35349;i:1;R:35350;}s:55:"1208:90eeb100838048513e8d2290a6892e18077c24f6-following";a:2:{i:0;R:35349;i:1;R:35350;}s:55:"1208:78eaabf4a629795fe52f523f44f5000c6b204f2f-followers";a:2:{i:0;R:35349;i:1;R:35350;}s:56:"1208:2086b21f8f49274138c38d476bee317a84a8aecc-statistics";a:2:{i:0;R:35349;i:1;R:35350;}s:53:"1208:23bf49dab136af82ed0844928ca6fd91e8a1873d-user_id";a:2:{i:0;R:35349;i:1;R:35350;}s:58:"1208:f425b08f6c1bd728672dfa58eb48d111e01751a1-member_since";a:2:{i:0;R:35349;i:1;R:35350;}s:59:"1208:77fe685f89f640a946e0172a1c01924c03e69208-daily_average";a:2:{i:0;R:35349;i:1;R:35350;}s:52:"1208:ae9629f4ebb82c6331c0809fa9a0e54b00e578e6-groups";a:2:{i:0;R:35349;i:1;R:35350;}s:51:"1208:57c9502a7d7d48fd4a86b45fefb2b163491c3ae1-lists";a:2:{i:0;R:35349;i:1;R:35350;}s:67:"1208:af383eb565cc989d733e18ed0cb6e0d903c73ff8-unimplemented_method.";a:2:{i:0;R:35349;i:1;R:35350;}s:57:"1208:4add9526673d2f59da8606c5efabcec6e06d3b7b-user_groups";a:2:{i:0;R:35349;i:1;R:35350;}s:57:"1208:8a0c91ef749985c01fd2ccad9d948d966f345954-recent_tags";a:2:{i:0;R:35349;i:1;R:35350;}s:57:"1208:f1cb4782c689302f666dd6dc87e0ebc7d7ee3ace-recent_tags";a:2:{i:0;R:35349;i:1;R:35350;}s:54:"1208:2bf691a8985caa76fb35483de5aa66002ab11cc4-featured";a:2:{i:0;R:35349;i:1;R:35350;}s:53:"1208:277263767152378fdc925f306fa7282d307da7cc-popular";a:2:{i:0;R:35349;i:1;R:35350;}s:61:"1208:a7bd3db2957495811cd142470b87008105889233-trending_topics";a:2:{i:0;R:35349;i:1;R:35350;}s:69:"1208:b3a1721bc7af72097edc6d2b79601d7424c09d53-no_return-to_arguments.";a:2:{i:0;R:35349;i:1;R:35350;}s:65:"1208:d1ea09fd75a7703d64621d576adc2ca670062e12-repeat_this_notice?";a:2:{i:0;R:35349;i:1;R:35350;}s:65:"1208:9f0cf61ff9839bd186bdb023d62c0468a0f82f53-repeat_this_notice.";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:8a7fd58db59798e9880863156daef29ada08db34-revoke_the_"_s"_role_from_this";a:2:{i:0;R:35349;i:1;R:35350;}s:61:"1208:bcf7bcd444b44af6a75c846a08e92fbc5179dc81-page_not_found.";a:2:{i:0;R:35349;i:1;R:35350;}s:53:"1208:c8b8c15c4988aa0b71bde3624d40f75f0541ea00-sandbox";a:2:{i:0;R:35349;i:1;R:35350;}s:63:"1208:96e7a1a8887d358fa1a2a0bab111df981303224f-sandbox_this_user";a:2:{i:0;R:35349;i:1;R:35350;}s:57:"1208:51ef7d4f291b9358121620a0c0f07cfc4206b5fb-search_site";a:2:{i:0;R:35349;i:1;R:35350;}s:56:"1208:8c3600f054414dbf2405d784e38931cb536a5df8-keyword(s)";a:2:{i:0;R:35349;i:1;R:35350;}s:52:"1208:a34ad3f1a5e6d3ea71f03bfb62f5a2dad14c0f91-search";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:e1fa1008136e7e43cf1d80e059492c68b55448fa-*_make_sure_all_words_are_spel";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:b28d98224344e632866ad49771a1dd98fb13c651-you_can_also_try_your_search_o";a:2:{i:0;R:35349;i:1;R:35350;}s:52:"1208:bcdac40c880c1f9d5160ba42860e2e8929491d63-people";a:2:{i:0;R:35349;i:1;R:35350;}s:70:"1208:535cec9a769d3d3e339ffb1a3f1fc043b5d92917-find_people_on_this_site";a:2:{i:0;R:35349;i:1;R:35350;}s:53:"1208:4cab0d036520ea238ae33fab114852d33cd29435-notices";a:2:{i:0;R:35349;i:1;R:35350;}s:69:"1208:0de78d17f5bb73150581e6da7668a8ea4f92be45-find_content_of_notices";a:2:{i:0;R:35349;i:1;R:35350;}s:70:"1208:5504f326ecb4a686082bab7e953732d017870f66-find_groups_on_this_site";a:2:{i:0;R:35349;i:1;R:35350;}s:49:"1208:5764bde2858504994926cff53772042ea4488471-tos";a:2:{i:0;R:35349;i:1;R:35350;}s:53:"1208:be1dd7dcfefb6a99550ef654e3e0305139d7d047-privacy";a:2:{i:0;R:35349;i:1;R:35350;}s:52:"1208:aaef5989dfd08b46ed51340890e656227d1d8235-source";a:2:{i:0;R:35349;i:1;R:35350;}s:53:"1208:bc7105ae1399ef60e0e013290cc05d8338b52a44-version";a:2:{i:0;R:35349;i:1;R:35350;}s:62:"1208:f42ca5f288a24ca5aa3f10736e2c9805bed95139-untitled_section";a:2:{i:0;R:35349;i:1;R:35350;}s:53:"1208:3c25ce154a917b9c1539c47ac2d217ea7f6b9cf5-more...";a:2:{i:0;R:35349;i:1;R:35350;}s:54:"1208:8ab80240474ce47a14fccb76cd43772fb780d123-settings";a:2:{i:0;R:35349;i:1;R:35350;}s:74:"1208:c928b13a5edc43f46f93f3261aca77ed4c181648-change_your_profile_settings";a:2:{i:0;R:35349;i:1;R:35350;}s:52:"1208:77ceb174ed488fe7e3f16b585f2f979d73d7b31c-avatar";a:2:{i:0;R:35349;i:1;R:35350;}s:62:"1208:501b5c08129e4b131c0f2559ced6847164cc669d-upload_an_avatar";a:2:{i:0;R:35349;i:1;R:35350;}s:54:"1208:6698d844a42f6e45f0e4c55bee85aa8908f77760-password";a:2:{i:0;R:35349;i:1;R:35350;}s:66:"1208:88dee350141b934bd32db882794a951a7a40d898-change_your_password";a:2:{i:0;R:35349;i:1;R:35350;}s:51:"1208:829cec3f1024495c2dc136efba30e600a538402b-email";a:2:{i:0;R:35349;i:1;R:35350;}s:67:"1208:19b17034a93e69ae247fc2cfbf3d92fa829f04f7-change_email_handling";a:2:{i:0;R:35349;i:1;R:35350;}s:49:"1208:dddf559af894fe8f67653096286994670256e149-url";a:2:{i:0;R:35349;i:1;R:35350;}s:60:"1208:9b52d35ae22761bce2cfde389720c15fe6560c6f-url_shorteners";a:2:{i:0;R:35349;i:1;R:35350;}s:48:"1208:a2ea199a01637cea7e5980f2121db05eb57f735b-im";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:82adc0e6901c6e3f37fbbf481a2b398b3883f2c4-updates_by_instant_messenger_(";a:2:{i:0;R:35349;i:1;R:35350;}s:49:"1208:a434bfee0fcf09e166de703b367383268e2ee1be-sms";a:2:{i:0;R:35349;i:1;R:35350;}s:60:"1208:9bc9d36b8a3a4c37feb1983162d92f32729fc338-updates_by_sms";a:2:{i:0;R:35349;i:1;R:35350;}s:57:"1208:aadaae85f8fa274f423ab6e5cb7b36929c58dc4f-connections";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:227ba5367f73aaea638cae98c07c4748e6291f62-authorized_connected_applicati";a:2:{i:0;R:35349;i:1;R:35350;}s:56:"1208:99a3dc483c78984a90f64eb3c4c000de7715e54f-old_school";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:5f0abea15efd1cc1f5e59a4b1fa06d77d2406de1-ui_tweaks_for_old-school_users";a:2:{i:0;R:35349;i:1;R:35350;}s:53:"1208:3bb114945674f2c2fd4fe6a1b286753c7ed50585-silence";a:2:{i:0;R:35349;i:1;R:35350;}s:63:"1208:76ae1fc7dfdfbbe3d1c3a8d06645c3db40b7b25e-silence_this_user";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:1b97252eaa75af5d73ebe15ec799fd7b4133aeb8-could_not_create_anonymous_con";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:464fb0d03c268220944251ba01d0677c36378df8-could_not_create_anonymous_oau";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:7f6eecfe42f5f6ae25dfb31dbb1b04889db236d7-could_not_find_a_profile_and_a";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:ae7dec1890b1e8e8483b6478875a4f7d9c74286b-could_not_issue_access_token.";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:b81e4c7aebb7936d524d17ffec327f53f50a916e-database_error_inserting_oauth";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:937933d766c98be4d9f3c454b1682e4e0462778a-database_error_updating_oauth";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:3c70853e916ad694de46bb442c574e6f112e1e94-tried_to_revoke_unknown_token.";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:d31aa3a792389f188245e3cf5ca6fbd5a2d15de4-failed_to_delete_revoked_token";a:2:{i:0;R:35349;i:1;R:35350;}s:59:"1208:4693b3a4a36c227c49cf8500b2b86787dcd9f236-subscriptions";a:2:{i:0;R:35349;i:1;R:35350;}s:69:"1208:1203ebf8601c18bd531a3f729553cd6cb2c0ff3f-people_s_subscribes_to.";a:2:{i:0;R:35349;i:1;R:35350;}s:69:"1208:d9cdb81f3e5ac11b67b8cc78fa025ca9f25d38db-people_subscribed_to_s.";a:2:{i:0;R:35349;i:1;R:35350;}s:58:"1208:ece7442e8cc2f2c782feb84442dedf220ec5c0ea-pending_(_d)";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:3d84467a091d7f2ca5ffe1f9672c88a7bf0e9307-approve_pending_subscription_r";a:2:{i:0;R:35349;i:1;R:35350;}s:70:"1208:34508726e7b260dc5e3869763adc5c7aba63c75f-groups_s_is_a_member_of.";a:2:{i:0;R:35349;i:1;R:35350;}s:70:"1208:352eed9776d611097bdd7ff6a4d053d63e7cc2b0-list_subscriptions_by_s.";a:2:{i:0;R:35349;i:1;R:35350;}s:52:"1208:bf683f3c72afd36541aff19fa202c770370cb9fa-invite";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:de89ca3feb289465427ee66c35b0dd7d36882536-invite_friends_and_colleagues";a:2:{i:0;R:35349;i:1;R:35350;}s:68:"1208:1cf3d6b65f45738e28510ee49025d1e7acccb7d6-subscribe_to_this_user";a:2:{i:0;R:35349;i:1;R:35350;}s:55:"1208:7d3768264fb28f658bfa8d6c8bf4a992c62b5772-subscribe";a:2:{i:0;R:35349;i:1;R:35350;}s:69:"1208:ecf245d5d5c71f254540fc38b54785a5be9ca03d-subscribe_to_this_user.";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:ee722c57e103b4134162e1916dfdef03132ca171-people_tagcloud_as_self-tagged";a:2:{i:0;R:35349;i:1;R:35350;}s:71:"1208:5210210e4c0d16ed3452f2843a835a195f8b80f0-people_tagcloud_as_tagged";a:2:{i:0;R:35349;i:1;R:35350;}s:50:"1208:73abc8dd58252be5901032b56c2f577bf5ea0030-none";a:2:{i:0;R:35349;i:1;R:35350;}s:65:"1208:bab91b643662a52ff21ca16b452303be5d4d7a8c-invalid_theme_name.";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:9ea74e671022ded6a7e214b78707c33b2317e380-this_server_cannot_handle_them";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:ff90dc74c8e944c543d83093d4115006b2db163f-the_theme_file_is_missing_or_t";a:2:{i:0;R:35349;i:1;R:35350;}s:66:"1208:d0a9aea80fa7a850271f33521a5641d7e11a4b98-failed_saving_theme.";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:70bd47d2d2a14e209c1b3aa71b3187e157aa9899-invalid_theme_bad_directory_st";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:b2b1e5968a4492d6e76107cd123013e90a762c13-plural_gettext_uploaded_theme";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:eaef3f27fd15bf2ec26f99728b4b9d89bbfdc04f-invalid_theme_archive_missing";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:c74d03b96c6ba9f566a2cce9fcc1939fe8b63b3a-theme_contains_invalid_file_or";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:5c3f2ca6f3b12e9a82db73d6fb7a2d6a65846608-theme_contains_unsafe_file_ext";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:491d8ae8f4ac8b2c319a81e5c13368c3bfceff86-theme_contains_file_of_type_".";a:2:{i:0;R:35349;i:1;R:35350;}s:74:"1208:caeb0eeb691150cd9b0e04716ed6c438d667e2ae-error_opening_theme_archive.";a:2:{i:0;R:35349;i:1;R:35350;}s:53:"1208:95839c5eb479ae6de19804f9d00c242dc75015dd-notices";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:4830e5a49c3d43b6133fde9b4eaf762a04c6be66-plural_gettext_show_reply_sho";a:2:{i:0;R:35349;i:1;R:35350;}s:49:"1208:bc5613b749f8778837e707dec2fe5e7f5be3b017-you";a:2:{i:0;R:35349;i:1;R:35350;}s:57:"1208:3deff3f09fd33260fb1c6980d639036c72485971-1$s_and_2$s";a:2:{i:0;R:35349;i:1;R:35350;}s:60:"1208:6bafd282c8c5dab7cc14d364efc1f73cd363aada-you_like_this.";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:b26e69c301e25e30dc35a357ebfe0925423185ea-plural_gettext_s_and_d_others";a:2:{i:0;R:35349;i:1;R:35350;}s:74:"1208:b03348b9a51f770f8bec6c08743c294ce5e559d6-plural_gettext_s_likes_this.";a:2:{i:0;R:35349;i:1;R:35350;}s:64:"1208:b015fe101ee90893fa040e7eaf4074753acfff81-you_repeated_this.";a:2:{i:0;R:35349;i:1;R:35350;}s:74:"1208:456ca84df9722d34903c0dba9b1ba75fd9520d13-plural_gettext_s_and_d_other";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:6cc3bd5b01a56b9e935424e11742d0a9eb8d7f71-plural_gettext_s_repeated_thi";a:2:{i:0;R:35349;i:1;R:35350;}s:68:"1208:cfb7fce479caccc042f0757ed3ef8a7b5b4052d4-search_and_list_people";a:2:{i:0;R:35349;i:1;R:35350;}s:56:"1208:4a66d1480779180159cc25c1c5aa9d760467c6a7-everything";a:2:{i:0;R:35349;i:1;R:35350;}s:54:"1208:9b1458893fdf24868765e6710e8c64ee8ed94388-fullname";a:2:{i:0;R:35349;i:1;R:35350;}s:64:"1208:3853de4e85ce9d53b7719faac4742c15aca79bd3-uri_(remote_users)";a:2:{i:0;R:35349;i:1;R:35350;}s:55:"1208:c27ec08b53f5a691a2be670a2213c26d9ebf172b-search_in";a:2:{i:0;R:35349;i:1;R:35350;}s:71:"1208:45d05a257cda867026d25a58e6ab8b783a9adbeb-choose_a_field_to_search.";a:2:{i:0;R:35349;i:1;R:35350;}s:70:"1208:8eb66f90dccab342a5eeafa82d5f181648a2729f-remove_1$s_from_list_2$s";a:2:{i:0;R:35349;i:1;R:35350;}s:65:"1208:7f95b69cfec0b537101c9d717fc78f06ac2ad379-add_1$s_to_list_2$s";a:2:{i:0;R:35349;i:1;R:35350;}s:57:"1208:97e0dcb75dd72b7647c9374c17be8c65474a62cc-top_posters";a:2:{i:0;R:35349;i:1;R:35350;}s:54:"1208:49aee684dfc31400ac0ee45082fc51ad8d3307bf-everyone";a:2:{i:0;R:35349;i:1;R:35350;}s:64:"1208:c1ab98b7797a45b637a0549bc4a395ab8ed34ac1-my_colleagues_at_s";a:2:{i:0;R:35349;i:1;R:35350;}s:48:"1208:6f93fa1fdb5dc514ea3dadaf38682c9c2d6da57e-to";a:2:{i:0;R:35349;i:1;R:35350;}s:54:"1208:f8eea031b015b64db0598b61c20a50d3fbe6064b-private?";a:2:{i:0;R:35349;i:1;R:35350;}s:68:"1208:d0395485a6b33943bd97b57956fa8cbc68c591b5-unknown_to_value_"_s".";a:2:{i:0;R:35349;i:1;R:35350;}s:53:"1208:3f18a90ba26e8c8afe601139564f6b35745533c4-unblock";a:2:{i:0;R:35349;i:1;R:35350;}s:55:"1208:3ac2511b7bbd7ec8d7b0c09f94497c41d1f73ca3-unsandbox";a:2:{i:0;R:35349;i:1;R:35350;}s:65:"1208:c80fbe2b22fc533a3448f5092bf3e4ed204252be-unsandbox_this_user";a:2:{i:0;R:35349;i:1;R:35350;}s:55:"1208:41fc445e6f8391867d587c73bb2adc7d33f59723-unsilence";a:2:{i:0;R:35349;i:1;R:35350;}s:65:"1208:31c5c649b7d1009f629cb16bf0cd998120e6e812-unsilence_this_user";a:2:{i:0;R:35349;i:1;R:35350;}s:72:"1208:21c9d0ec5f65a6388f08554bd1e30460ad56aae8-unsubscribe_from_this_user";a:2:{i:0;R:35349;i:1;R:35350;}s:57:"1208:eb622cce4da95abd789ab1a68fb0ff597b8bc8d9-unsubscribe";a:2:{i:0;R:35349;i:1;R:35350;}s:73:"1208:20a40aa7a170cde2464d667a0377b2f461c55c12-unsubscribe_from_this_user.";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:52befb6e7507141a8b1e281a20d966d8ab98495d-user_1$s_(_2$d)_has_no_profile";a:2:{i:0;R:35349;i:1;R:35350;}s:68:"1208:3cb15ee18feb134dbcf1a14454c22951cfdb415d-not_allowed_to_log_in.";a:2:{i:0;R:35349;i:1;R:35350;}s:63:"1208:17685849a30fe51e92d67abd268d21300070967b-a_few_seconds_ago";a:2:{i:0;R:35349;i:1;R:35350;}s:64:"1208:528e1ec6801122654d6d9426ee1ba91fbdc7605a-about_a_minute_ago";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:d981c1441e901df4a480ab52c74a9a91a8e6884b-plural_gettext_about_one_minu";a:2:{i:0;R:35349;i:1;R:35350;}s:63:"1208:27295406b1e095a99b67c1546397cc0ae942e13b-about_an_hour_ago";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:af0ec8a7717976cf40dcf14903acf03dc0d5cb3c-plural_gettext_about_one_hour";a:2:{i:0;R:35349;i:1;R:35350;}s:61:"1208:e113d10cc715e14fd3ef0ac2da808b094944984d-about_a_day_ago";a:2:{i:0;R:35349;i:1;R:35350;}s:74:"1208:b225c589b3b3436b289d3b98678b27fa7b21cec8-plural_gettext_about_one_day";a:2:{i:0;R:35349;i:1;R:35350;}s:63:"1208:5aa23158368e74b879c46d611c40ecbf5188a57b-about_a_month_ago";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:05f8f93cbe7010856945a8b7041fbd1f240ad371-plural_gettext_about_one_mont";a:2:{i:0;R:35349;i:1;R:35350;}s:62:"1208:5135b791c4fa8044145c8b3ad7e72eb9e937ac7d-about_a_year_ago";a:2:{i:0;R:35349;i:1;R:35350;}s:75:"1208:0c966388f342fda22c1f327d0d038a4c78ea3cf2-s_is_not_a_valid_color!_use_3";a:2:{i:0;R:35349;i:1;R:35350;}s:58:"1208:61704373a947495a11fba6387e0414334d9508df-invalid_xml.";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:eb2864c64ccede02b719c67afbeed7138fb624c1-invalid_xml,_missing_xrd_root.";a:2:{i:0;R:35349;i:1;R:35350;}s:76:"1208:c6dcd1d8b2945bda5a1b5352ea203f0cfb6b9588-getting_backup_from_file_'_s'.";a:2:{i:0;R:35349;i:1;R:35350;}s:91:"1208:accountmanager-381018f866eff73bf533e48d68482cdeaac59289-the_account_manager_plugin_imp";a:3:{i:0;s:35:"out-statusnet-plugin-accountmanager";i:1;R:35350;i:2;s:26:"out-statusnet-plugin-0-all";}s:84:"1208:activity-40855b00680ef41985db73a8c98a7ab9104306be-a_href="_1$s"_2$s_a_joined_th";a:3:{i:0;s:29:"out-statusnet-plugin-activity";i:1;R:35350;i:2;R:37115;}s:84:"1208:activity-2e588743c02aa3bf59f370635b8c6d8d41a263ed-a_href="_1$s"_2$s_a_started_f";a:3:{i:0;R:37117;i:1;R:35350;i:2;R:37115;}s:83:"1208:activity-659207b8213b261b5487c51998cc78e18a70be87-1$s_(_2$s)_started_following";a:3:{i:0;R:37117;i:1;R:35350;i:2;R:37115;}s:84:"1208:activity-a793ede136ac6c2588f130d39e0cfc4d2af5d3a1-a_href="_1$s"_2$s_a_stopped_f";a:3:{i:0;R:37117;i:1;R:35350;i:2;R:37115;}s:83:"1208:activity-82b5ee8064f5c92bed0272dda6cf481002e63135-1$s_(_2$s)_stopped_following";a:3:{i:0;R:37117;i:1;R:35350;i:2;R:37115;}s:84:"1208:activity-0ceeeb16af57b6885ec836af959850983ed1e7d6-a_href="_1$s"_2$s_a_liked_a_h";a:3:{i:0;R:37117;i:1;R:35350;i:2;R:37115;}s:84:"1208:activity-e41403a9a432edc851fbad6d35b482e0fb396d0e-1$s_(_2$s)_liked_3$s's_status";a:3:{i:0;R:37117;i:1;R:35350;i:2;R:37115;}s:84:"1208:activity-7c6e5503754aa24b070f89a54629f23360a9f120-a_href="_1$s"_2$s_a_stopped_l";a:3:{i:0;R:37117;i:1;R:35350;i:2;R:37115;}s:84:"1208:activity-891ca84d160fe4f871bbd73061c90c906063c223-1$s_(_2$s)_stopped_liking_3$s";a:3:{i:0;R:37117;i:1;R:35350;i:2;R:37115;}s:84:"1208:activity-32741911b3d16bbf1ef6883140fd0e3a77796602-1$s_(_2$s)_joined_the_group_3";a:3:{i:0;R:37117;i:1;R:35350;i:2;R:37115;}s:83:"1208:activity-d8a3b6366935ea025aba115d81c5250b94928414-a_href="_1$s"_2$s_a_left_the";a:3:{i:0;R:37117;i:1;R:35350;i:2;R:37115;}s:84:"1208:activity-0ff86299d4016315579383eca0f8249e1237f140-1$s_(_2$s)_left_the_group_3$s";a:3:{i:0;R:37117;i:1;R:35350;i:2;R:37115;}s:85:"1208:activity-0370a9ac0e00bc01c473a3954d3a7b9bf426df27-emits_notices_when_social_acti";a:3:{i:0;R:37117;i:1;R:35350;i:2;R:37115;}s:75:"1208:adsense-5c54a7b3d4c0e6227e32f5ae8bfb6fbe61eebc05-adsense_configuration";a:3:{i:0;s:28:"out-statusnet-plugin-adsense";i:1;R:35350;i:2;R:37115;}s:61:"1208:adsense-ddb218208bc42a75fed0a6554288f61ab2dd1df2-adsense";a:3:{i:0;R:37131;i:1;R:35350;i:2;R:37115;}s:84:"1208:adsense-81a7c5020a59cc94241ecde28c0c225e16f76505-plugin_to_add_google_adsense_t";a:3:{i:0;R:37131;i:1;R:35350;i:2;R:37115;}s:61:"1208:adsense-7c265b486e52765e77500e076fddbd133cb8f042-adsense";a:3:{i:0;R:37131;i:1;R:35350;i:2;R:37115;}s:84:"1208:adsense-aa5c80a53658026feca8bb958c3f17663c495152-adsense_settings_for_this_stat";a:3:{i:0;R:37131;i:1;R:35350;i:2;R:37115;}s:63:"1208:adsense-a766cd7ff02c32d23a89caf73a0347a65362252a-client_id";a:3:{i:0;R:37131;i:1;R:35350;i:2;R:37115;}s:71:"1208:adsense-a4f53a6ec27139e67f0f753f578a6ad2fd8f81a0-google_client_id.";a:3:{i:0;R:37131;i:1;R:35350;i:2;R:37115;}s:67:"1208:adsense-fdbccdee31d606c5aab296e9ccdc8a5f74e1ecb7-ad_script_url";a:3:{i:0;R:37131;i:1;R:35350;i:2;R:37115;}s:76:"1208:adsense-f963e386c3940f7b206f65ffc29241f54856989f-script_url_(advanced).";a:3:{i:0;R:37131;i:1;R:35350;i:2;R:37115;}s:70:"1208:adsense-06b35524844eb810ac22dfb413c9bab31eb4ac15-medium_rectangle";a:3:{i:0;R:37131;i:1;R:35350;i:2;R:37115;}s:81:"1208:adsense-0de6bfa841f428378cd43ef998ecb04ee510540b-medium_rectangle_slot_code.";a:3:{i:0;R:37131;i:1;R:35350;i:2;R:37115;}s:63:"1208:adsense-c158695a64adb40952c1cf9fde78b62bd6147f42-rectangle";a:3:{i:0;R:37131;i:1;R:35350;i:2;R:37115;}s:74:"1208:adsense-59d2e3d6081e63b745f55eddd90b357144d04639-rectangle_slot_code.";a:3:{i:0;R:37131;i:1;R:35350;i:2;R:37115;}s:65:"1208:adsense-0381247a698736fe9930328a814e5263eeff72fd-leaderboard";a:3:{i:0;R:37131;i:1;R:35350;i:2;R:37115;}s:76:"1208:adsense-76e3ffc09c66b65290afc16071239c628b60aac6-leaderboard_slot_code.";a:3:{i:0;R:37131;i:1;R:35350;i:2;R:37115;}s:64:"1208:adsense-4b842ec3492af881a19d51873a4c15a90c3c029f-skyscraper";a:3:{i:0;R:37131;i:1;R:35350;i:2;R:37115;}s:80:"1208:adsense-af84cd89ed8defa0f243c2c39bff02364d86da63-wide_skyscraper_slot_code.";a:3:{i:0;R:37131;i:1;R:35350;i:2;R:37115;}s:58:"1208:adsense-e85726b34723718d86eeb40ab996e21219883557-save";a:3:{i:0;R:37131;i:1;R:35350;i:2;R:37115;}s:76:"1208:adsense-5b8e5dcb3020168ff894eac7c512b96eb414602e-save_adsense_settings.";a:3:{i:0;R:37131;i:1;R:35350;i:2;R:37115;}s:80:"1208:aim-176cd70c9011feaf9f1e59a8ef0c902fde26ec89-send_me_a_message_to_post_a_no";a:3:{i:0;s:24:"out-statusnet-plugin-aim";i:1;R:35350;i:2;R:37115;}s:53:"1208:aim-e9a076414334963b412d9f777b450cf07dc7b0eb-aim";a:3:{i:0;R:37151;i:1;R:35350;i:2;R:37115;}s:70:"1208:aim-d6f0fab179a448d168432e3cbbec2710ec8a7707-must_specify_a_user.";a:3:{i:0;R:37151;i:1;R:35350;i:2;R:37115;}s:74:"1208:aim-603894091956deda39c52c5998ae06638dd7f4f3-must_specify_a_password.";a:3:{i:0;R:37151;i:1;R:35350;i:2;R:37115;}s:80:"1208:aim-a9870894aad7f1535212b93a95dd5e584533b231-the_aim_plugin_allows_users_to";a:3:{i:0;R:37151;i:1;R:35350;i:2;R:37115;}s:90:"1208:anonymousfave-966e5bcb9009a46718bcd3012661de417e444d88-could_not_update_favorite_tall";a:3:{i:0;s:34:"out-statusnet-plugin-anonymousfave";i:1;R:35350;i:2;R:37115;}s:90:"1208:anonymousfave-468c1bb1b78dde1c621bda9a8e3c8a9f9ef69f1f-could_not_create_favorite_tall";a:3:{i:0;R:37157;i:1;R:35350;i:2;R:37115;}s:90:"1208:anonymousfave-b6fe8eadff269c14499474e635ac949e2f789c77-could_not_disfavor_notice!_ple";a:3:{i:0;R:37157;i:1;R:35350;i:2;R:37115;}s:89:"1208:anonymousfave-07363d7dbc93d7e4d63ece8ac5e72bf52dd64506-there_was_a_problem_with_your";a:3:{i:0;R:37157;i:1;R:35350;i:2;R:37115;}s:90:"1208:anonymousfave-5bf75fc24d207f80ea4353ada3bc341c7bd7580d-this_notice_is_not_a_favorite!";a:3:{i:0;R:37157;i:1;R:35350;i:2;R:37115;}s:86:"1208:anonymousfave-c78420468ee55c79f0e4c9a46568badc6eae970c-could_not_delete_favorite.";a:3:{i:0;R:37157;i:1;R:35350;i:2;R:37115;}s:76:"1208:anonymousfave-cb10094b81decc742ca8ff781bba6eccf7dc607e-add_to_favorites";a:3:{i:0;R:37157;i:1;R:35350;i:2;R:37115;}s:67:"1208:anonymousfave-2f8d30b2eaf31eff3b36806ae7c20f463dbb1c0f-favored";a:3:{i:0;R:37157;i:1;R:35350;i:2;R:37115;}s:90:"1208:anonymousfave-f96763c0f204c5a3a362ceb00bcfb6bf8d7b9461-could_not_create_anonymous_use";a:3:{i:0;R:37157;i:1;R:35350;i:2;R:37115;}s:90:"1208:anonymousfave-9b202e09608f008575c32df3a0855ee198fee032-allow_anonymous_users_to_favor";a:3:{i:0;R:37157;i:1;R:35350;i:2;R:37115;}s:90:"1208:anonymousfave-1d97c4603e8718e19416dd6103204f8d27165ee3-could_not_favor_notice!_please";a:3:{i:0;R:37157;i:1;R:35350;i:2;R:37115;}s:90:"1208:anonymousfave-5ae8c1927868a2ade335f1a0f8404c660df3b472-this_notice_is_already_a_favor";a:3:{i:0;R:37157;i:1;R:35350;i:2;R:37115;}s:86:"1208:anonymousfave-daa3df1d5a42b1d287cd4b5599a8d6d7dfbb0a2d-could_not_create_favorite.";a:3:{i:0;R:37157;i:1;R:35350;i:2;R:37115;}s:77:"1208:anonymousfave-f030c76d577ffc4567d3fb6f3e67e9ebab9fe4fb-disfavor_favorite";a:3:{i:0;R:37157;i:1;R:35350;i:2;R:37115;}s:80:"1208:apc-b6451d09da7fa11d4a648e0a2191ac8599bc09f9-use_the_a_href="http_pecl.php.";a:3:{i:0;s:24:"out-statusnet-plugin-apc";i:1;R:35350;i:2;R:37115;}s:85:"1208:apilogger-7bbc112d08dcd95a93ec2f702c0f6b862278f5d9-allows_random_sampling_of_api";a:3:{i:0;s:30:"out-statusnet-plugin-apilogger";i:1;R:35350;i:2;R:37115;}s:89:"1208:autocomplete-e2073a02a7ad4246c8b8428e7f9c6eed2cc6b9c9-the_autocomplete_plugin_adds_a";a:3:{i:0;s:33:"out-statusnet-plugin-autocomplete";i:1;R:35350;i:2;R:37115;}s:76:"1208:autocomplete-1eb0ed20022eaf5a3790baba3d877a858280895c-access_forbidden.";a:3:{i:0;R:37176;i:1;R:35350;i:2;R:37115;}s:87:"1208:autosandbox-ddc756e7073a745fcfb5479d7135d73207cda829-automatically_sandboxes_newly";a:3:{i:0;s:32:"out-statusnet-plugin-autosandbox";i:1;R:35350;i:2;R:37115;}s:88:"1208:autosandbox-234eacfc05fbcfd77b44f80be6cb210d370a077c-note_you_will_initially_be_"sa";a:3:{i:0;R:37179;i:1;R:35350;i:2;R:37115;}s:88:"1208:autosandbox-a9f97df159dbe59f3bb84fa52c7882bb81d8f710-note_you_will_initially_be_"sa";a:3:{i:0;R:37179;i:1;R:35350;i:2;R:37115;}s:88:"1208:awesomeness-aad71365d1ea1c1abd7d0fc194bb533ec235822f-the_awesomeness_plugin_adds_ad";a:3:{i:0;s:32:"out-statusnet-plugin-awesomeness";i:1;R:35350;i:2;R:37115;}s:76:"1208:bitlyurl-683361aaaae09ac206c3a0dddace2208463691d2-bit.ly_url_shortening";a:3:{i:0;s:29:"out-statusnet-plugin-bitlyurl";i:1;R:35350;i:2;R:37115;}s:85:"1208:bitlyurl-df0b3eb32617935eff63207d322dcd672aa2b4af-url_shortening_with_bit.ly_req";a:3:{i:0;R:37185;i:1;R:35350;i:2;R:37115;}s:84:"1208:bitlyurl-8286ea5b7fdb11ccee0862876236edf4e0268d1c-invalid_login._maximum_length";a:3:{i:0;R:37185;i:1;R:35350;i:2;R:37115;}s:85:"1208:bitlyurl-1d91154cfab3c308b181ce4872206262213df842-invalid_api_key._maximum_lengt";a:3:{i:0;R:37185;i:1;R:35350;i:2;R:37115;}s:66:"1208:bitlyurl-5c2d735f4f4761936de7e940cf11a42d3609beb9-credentials";a:3:{i:0;R:37185;i:1;R:35350;i:2;R:37115;}s:85:"1208:bitlyurl-323daba1813f02a16c0fc1075132d1e414318492-leave_these_empty_to_use_globa";a:3:{i:0;R:37185;i:1;R:35350;i:2;R:37115;}s:85:"1208:bitlyurl-94fb4546969cf1bb3e0ed1ab1cff60ef833d6c96-if_you_leave_these_empty,_bit.";a:3:{i:0;R:37185;i:1;R:35350;i:2;R:37115;}s:65:"1208:bitlyurl-68ee364c110a032900740118e24926681c70b88f-login_name";a:3:{i:0;R:37185;i:1;R:35350;i:2;R:37115;}s:62:"1208:bitlyurl-cf678cab87dc1f7d1b95b964f15375e088461679-api_key";a:3:{i:0;R:37185;i:1;R:35350;i:2;R:37115;}s:59:"1208:bitlyurl-e85726b34723718d86eeb40ab996e21219883557-save";a:3:{i:0;R:37185;i:1;R:35350;i:2;R:37115;}s:75:"1208:bitlyurl-1437e3781d545e4b17811ad221c7df8ade60c9e1-save_bit.ly_settings";a:3:{i:0;R:37185;i:1;R:35350;i:2;R:37115;}s:84:"1208:bitlyurl-54a5e8061703bef6a92d318b0a3e98d43051dafb-you_must_specify_a_serviceurl";a:3:{i:0;R:37185;i:1;R:35350;i:2;R:37115;}s:84:"1208:bitlyurl-4bac8ac0c1b38d73219fb01e51bd6cf869b58946-uses_a_href="http_1$s_"_1$s_a";a:3:{i:0;R:37185;i:1;R:35350;i:2;R:37115;}s:61:"1208:bitlyurl-903fe3e1f60341a468107b3f26f8675e4cf7f5dd-bit.ly";a:3:{i:0;R:37185;i:1;R:35350;i:2;R:37115;}s:77:"1208:bitlyurl-28556e0e691c618a8edc7ea37be9234d43577421-bit.ly_url_shortening.";a:3:{i:0;R:37185;i:1;R:35350;i:2;R:37115;}s:86:"1208:blacklist-db623f4bfd40a893e0c3b04e396929d77142d2fa-unknown_data_type_for_config_1";a:3:{i:0;s:30:"out-statusnet-plugin-blacklist";i:1;R:35350;i:2;R:37115;}s:86:"1208:blacklist-d3ce0eaf3fe1502ad65932b525ed4b10298715f0-you_may_not_register_with_home";a:3:{i:0;R:37201;i:1;R:35350;i:2;R:37115;}s:86:"1208:blacklist-632c2caefba209e0e26081dc9ac170191964de3f-you_may_not_register_with_nick";a:3:{i:0;R:37201;i:1;R:35350;i:2;R:37115;}s:86:"1208:blacklist-592ab375b830e7a25dc946439cfcaeca826eb286-you_may_not_use_homepage_"_s".";a:3:{i:0;R:37201;i:1;R:35350;i:2;R:37115;}s:86:"1208:blacklist-b528a1843d9f172a51432a77bafffcba0ef566a9-you_may_not_use_nickname_"_s".";a:3:{i:0;R:37201;i:1;R:35350;i:2;R:37115;}s:86:"1208:blacklist-86ac24b93559e61a36c6498eda10e1dffe240ad5-you_may_not_use_url_"_s"_in_no";a:3:{i:0;R:37201;i:1;R:35350;i:2;R:37115;}s:86:"1208:blacklist-dec6bfcd5a02a2b5e2a0f6cc7cea77f300d39162-keeps_a_blacklist_of_forbidden";a:3:{i:0;R:37201;i:1;R:35350;i:2;R:37115;}s:65:"1208:blacklist-03aeee06284db1ddda59e732f2e89eb66b462106-blacklist";a:3:{i:0;R:37201;i:1;R:35350;i:2;R:37115;}s:80:"1208:blacklist-a23daaeb6c40a0c8fbc2f363d865bff938267392-blacklist_configuration.";a:3:{i:0;R:37201;i:1;R:35350;i:2;R:37115;}s:86:"1208:blacklist-e9067768e59eff0417fceea56e0bc3ad795f909a-add_this_nickname_pattern_to_b";a:3:{i:0;R:37201;i:1;R:35350;i:2;R:37115;}s:86:"1208:blacklist-1df29c4c486862e9f892b26df36ed83e956bbe64-add_this_homepage_pattern_to_b";a:3:{i:0;R:37201;i:1;R:35350;i:2;R:37115;}s:84:"1208:blacklist-ceb5c407ca1df4c89c9c2c68dcc571de131df036-users_from_"_s"_are_blocked.";a:3:{i:0;R:37201;i:1;R:35350;i:2;R:37115;}s:86:"1208:blacklist-e763152f571cce8323ed36209dbdbd365049a093-notices_from_nickname_"_s"_are";a:3:{i:0;R:37201;i:1;R:35350;i:2;R:37115;}s:86:"1208:blacklist-575fd0950270557a24cec3ddd7b388de575b84b9-cannot_subscribe_to_nickname_"";a:3:{i:0;R:37201;i:1;R:35350;i:2;R:37115;}s:65:"1208:blacklist-a7d749846c66caf6d713ade63b272ffda532cb04-blacklist";a:3:{i:0;R:37201;i:1;R:35350;i:2;R:37115;}s:86:"1208:blacklist-7a243981a6a2411724c26e16bbe7edd0ea0bc46f-blacklisted_urls_and_nicknames";a:3:{i:0;R:37201;i:1;R:35350;i:2;R:37115;}s:65:"1208:blacklist-781d9cac24a072a6e338beee9fab842c72b220a9-nicknames";a:3:{i:0;R:37201;i:1;R:35350;i:2;R:37115;}s:86:"1208:blacklist-4690d741bb9a84a5d4923c2058fb24cf7c652bf6-patterns_of_nicknames_to_block";a:3:{i:0;R:37201;i:1;R:35350;i:2;R:37115;}s:60:"1208:blacklist-01f03837323aab32409bb99c50d6c475179c49df-urls";a:3:{i:0;R:37201;i:1;R:35350;i:2;R:37115;}s:86:"1208:blacklist-d49072ce9d072792ad71ada09e002b66c0957c06-patterns_of_urls_to_block,_one";a:3:{i:0;R:37201;i:1;R:35350;i:2;R:37115;}s:60:"1208:blacklist-e85726b34723718d86eeb40ab996e21219883557-save";a:3:{i:0;R:37201;i:1;R:35350;i:2;R:37115;}s:75:"1208:blacklist-5914b60ccef2b788bb1c815185fa769d8be92c4c-save_site_settings.";a:3:{i:0;R:37201;i:1;R:35350;i:2;R:37115;}s:83:"1208:blankad-b37d48875124c91822bd2c60567182368d4166e8-plugin_for_testing_ad_layout.";a:3:{i:0;s:28:"out-statusnet-plugin-blankad";i:1;R:35350;i:2;R:37115;}s:81:"1208:blog-3401b8d095025fc114cbdec6e54abafdd9b7b853-must_be_logged_in_to_post_a_bl";a:3:{i:0;s:25:"out-statusnet-plugin-blog";i:1;R:35350;i:2;R:37115;}s:66:"1208:blog-e50e2f043df4fdea9afe1709fde63f6734d3b2fa-title_required.";a:3:{i:0;R:37226;i:1;R:35350;i:2;R:37115;}s:68:"1208:blog-83aa44689f0ca1a7b10d7dabbfb6d2caccdf3061-content_required.";a:3:{i:0;R:37226;i:1;R:35350;i:2;R:37115;}s:67:"1208:blog-c7935728ae3b5f11457ba8ad5485a85a3c804431-blog_entry_saved";a:3:{i:0;R:37226;i:1;R:35350;i:2;R:37115;}s:81:"1208:blog-9304c51b68b97e89f56a01da60da326032f0206a-let_users_write_and_share_long";a:3:{i:0;R:37226;i:1;R:35350;i:2;R:37115;}s:55:"1208:blog-4d8a6ecfc0e06024debc49c34d61db5bd01bac79-blog";a:3:{i:0;R:37226;i:1;R:35350;i:2;R:37115;}s:77:"1208:blog-d393e8a88b62d2117d463893b60fa845398845df-too_many_activity_objects.";a:3:{i:0;R:37226;i:1;R:35350;i:2;R:37115;}s:73:"1208:blog-7988053a0c126d9bea3f20056064dfc1659d9816-wrong_type_for_object.";a:3:{i:0;R:37226;i:1;R:35350;i:2;R:37115;}s:81:"1208:blog-b153e1f21707fc8f6491c49f3d531ce9059aaefd-unknown_verb_for_blog_entries.";a:3:{i:0;R:37226;i:1;R:35350;i:2;R:37115;}s:78:"1208:blog-f8028bacf12d83e20b5267e4c49cb8dbf000454c-no_blog_entry_for_notice_s.";a:3:{i:0;R:37226;i:1;R:35350;i:2;R:37115;}s:65:"1208:blog-5832ba76613b523ce9acd1728275548a339eaf07-no_such_entry.";a:3:{i:0;R:37226;i:1;R:35350;i:2;R:37115;}s:59:"1208:blog-621521f9a8788695ec292cbec54d2792cfdf0a7d-untitled";a:3:{i:0;R:37226;i:1;R:35350;i:2;R:37115;}s:56:"1208:blog-3f195827f7c2fa2f429359af52688fa3d7f706ff-title";a:3:{i:0;R:37226;i:1;R:35350;i:2;R:37115;}s:75:"1208:blog-02200379dc5f64432330c4f252c9a8c067dab3ce-title_of_the_blog_entry.";a:3:{i:0;R:37226;i:1;R:35350;i:2;R:37115;}s:55:"1208:blog-0cbc4f17d9f331b3885f2fa10befa5bc345d5cbe-text";a:3:{i:0;R:37226;i:1;R:35350;i:2;R:37115;}s:74:"1208:blog-9b52b836c583260f8f1938e03be87339fb90747b-text_of_the_blog_entry.";a:3:{i:0;R:37226;i:1;R:35350;i:2;R:37115;}s:55:"1208:blog-e85726b34723718d86eeb40ab996e21219883557-save";a:3:{i:0;R:37226;i:1;R:35350;i:2;R:37115;}s:76:"1208:blogspamnet-008d3ede9184224b401f3338a232a485a0c79e21-error_from_1$s_2$s";a:3:{i:0;s:32:"out-statusnet-plugin-blogspamnet";i:1;R:35350;i:2;R:37115;}s:80:"1208:blogspamnet-a2b3a460057633a3f4feceb0c23ce7c085eb2fb8-spam_checker_results_s";a:3:{i:0;R:37244;i:1;R:35350;i:2;R:37115;}s:88:"1208:blogspamnet-7f5aa62f9b8ce8ba1655b3a60de65ddfd3bd8cc6-unexpected_response_from_1$s_2";a:3:{i:0;R:37244;i:1;R:35350;i:2;R:37115;}s:88:"1208:blogspamnet-c58af1fd4ca39fb2938aa6acae38425c2c383e3d-plugin_to_check_submitted_noti";a:3:{i:0;R:37244;i:1;R:35350;i:2;R:37115;}s:73:"1208:bookmark-6baff1122463a47ff79ca1ec6a078d3a0361b7c6-no_a_tag_in_a_dt_.";a:3:{i:0;s:29:"out-statusnet-plugin-bookmark";i:1;R:35350;i:2;R:37115;}s:81:"1208:bookmark-81c52afa65ff24301cbfc1806ecdf47ef97f3a93-skipping_private_bookmark.";a:3:{i:0;R:37249;i:1;R:35350;i:2;R:37115;}s:72:"1208:bookmark-222445c2c91239a0772c3762ac5c6c6a9297b388-no_such_bookmark.";a:3:{i:0;R:37249;i:1;R:35350;i:2;R:37115;}s:80:"1208:bookmark-1bdb4ab5ce242f000aa869586b2694842cb7000e-1$s's_bookmark_for_"_2$s"";a:3:{i:0;R:37249;i:1;R:35350;i:2;R:37115;}s:85:"1208:bookmark-770cbe6c899d4549c66ee6be8e2c1f0c3fa48393-simple_extension_for_supportin";a:3:{i:0;R:37249;i:1;R:35350;i:2;R:37115;}s:83:"1208:bookmark-f8aa113e0cfd43fbe44dcab0d05673673bc56ecd-import_del.icio.us_bookmarks";a:3:{i:0;R:37249;i:1;R:35350;i:2;R:37115;}s:85:"1208:bookmark-416913c75d461754411800dfb50f88e0b2eb5daa-expected_exactly_1_link_rel=re";a:3:{i:0;R:37249;i:1;R:35350;i:2;R:37115;}s:85:"1208:bookmark-2544f1e70c4753901b4988da6f8d1fa3aad9f812-bookmark_notice_with_the_wrong";a:3:{i:0;R:37249;i:1;R:35350;i:2;R:37115;}s:63:"1208:bookmark-df4d34e4a2ca1ab6bbe11aa9a0e56cc5c81ed19c-bookmark";a:3:{i:0;R:37249;i:1;R:35350;i:2;R:37115;}s:68:"1208:bookmark-7332ad952769ae9736282bbf7f6b46ae8d471cdc-bookmark_on_s";a:3:{i:0;R:37249;i:1;R:35350;i:2;R:37115;}s:79:"1208:bookmark-6c615feaa5bbaa5ad307f8184ae20603a71472e9-bookmark_already_exists.";a:3:{i:0;R:37249;i:1;R:35350;i:2;R:37115;}s:73:"1208:bookmark-e810f0136960724b8ebfa1b275caa40d1395d692-"_1$s"_2$s_3$s_4$s";a:3:{i:0;R:37249;i:1;R:35350;i:2;R:37115;}s:84:"1208:bookmark-f89b234697aa799f0c77e3d06bc174abb3ee117a-span_class="xfolkentry"_a_cla";a:3:{i:0;R:37249;i:1;R:35350;i:2;R:37115;}s:58:"1208:bookmark-ba1c8f42a49ff1f953c310b66c52d86dc5f5c2a8-url";a:3:{i:0;R:37249;i:1;R:35350;i:2;R:37115;}s:58:"1208:bookmark-e1562fed201c341ce7bd08b9cd421f3b379222b8-add";a:3:{i:0;R:37249;i:1;R:35350;i:2;R:37115;}s:67:"1208:bookmark-97c25ab5b076f76760f74735602c9593bd6c25d2-unknown_url.";a:3:{i:0;R:37249;i:1;R:35350;i:2;R:37115;}s:75:"1208:bookmark-71127d69cc7e5bf02589d20d1ae8914243f50d62-notices_linking_to_s";a:3:{i:0;R:37249;i:1;R:35350;i:2;R:37115;}s:85:"1208:bookmark-7087d410e74be2a283c5286b1c2a157d9e9a649b-notices_linking_to_1$s,_page_2";a:3:{i:0;R:37249;i:1;R:35350;i:2;R:37115;}s:85:"1208:bookmark-2f107271ebeab1bdb9c5fb65305923229e544483-only_logged-in_users_can_impor";a:3:{i:0;R:37249;i:1;R:35350;i:2;R:37115;}s:85:"1208:bookmark-62477d126811a70d1c05cc84a1a81100b1633581-you_may_not_restore_your_accou";a:3:{i:0;R:37249;i:1;R:35350;i:2;R:37115;}s:72:"1208:bookmark-0dabda1ac88249080488b65aba44152b1c6de0ff-no_uploaded_file.";a:3:{i:0;R:37249;i:1;R:35350;i:2;R:37115;}s:84:"1208:bookmark-db34751e9119087d17e8585c91a758ca65c615fc-the_uploaded_file_exceeds_the";a:3:{i:0;R:37249;i:1;R:35350;i:2;R:37115;}s:84:"1208:bookmark-1de0a02877a32903017ad0ae5257b40b4e23a7ae-the_uploaded_file_exceeds_the";a:3:{i:0;R:37249;i:1;R:35350;i:2;R:37115;}s:85:"1208:bookmark-1598621ac42463e9d5dac7e65899003bdd2f61de-the_uploaded_file_was_only_par";a:3:{i:0;R:37249;i:1;R:35350;i:2;R:37115;}s:82:"1208:bookmark-1559bb04b98428ca773c336d601276e9d4ece2c9-missing_a_temporary_folder.";a:3:{i:0;R:37249;i:1;R:35350;i:2;R:37115;}s:84:"1208:bookmark-38f7065f2f3bd7ca5bfd7a4a33971f8b3b114543-failed_to_write_file_to_disk.";a:3:{i:0;R:37249;i:1;R:35350;i:2;R:37115;}s:85:"1208:bookmark-25caf85aeed8dc17d9201362ec9cff79595446e9-file_upload_stopped_by_extensi";a:3:{i:0;R:37249;i:1;R:35350;i:2;R:37115;}s:83:"1208:bookmark-1c976cf1e9636e313dc4045d67c4a58f5558fb0b-system_error_uploading_file.";a:3:{i:0;R:37249;i:1;R:35350;i:2;R:37115;}s:73:"1208:bookmark-a53b78bc531f6a6ab94246926b84b776ebd7445d-no_such_file_"_s".";a:3:{i:0;R:37249;i:1;R:35350;i:2;R:37115;}s:79:"1208:bookmark-c101f68cf925551ba827c75a68b2b495b83a0264-not_a_regular_file_"_s".";a:3:{i:0;R:37249;i:1;R:35350;i:2;R:37115;}s:78:"1208:bookmark-9c14b53b0b770bdcc9ea6b679e709ee2887c4694-file_"_s"_not_readable.";a:3:{i:0;R:37249;i:1;R:35350;i:2;R:37115;}s:84:"1208:bookmark-7b654b3fe9c61a62cecdb78242077268a1ff26ce-bookmarks_have_been_imported.";a:3:{i:0;R:37249;i:1;R:35350;i:2;R:37115;}s:84:"1208:bookmark-e06677129503f8d46bf8182ff6da04e49d40e9fb-bookmarks_are_being_imported.";a:3:{i:0;R:37249;i:1;R:35350;i:2;R:37115;}s:85:"1208:bookmark-f1403b312de6f9426d545a83c9f68ad5bcd0c09d-you_can_upload_a_backed-up_del";a:3:{i:0;R:37249;i:1;R:35350;i:2;R:37115;}s:61:"1208:bookmark-563e34baa955a703739fd6e1d3e1ef8209d79013-upload";a:3:{i:0;R:37249;i:1;R:35350;i:2;R:37115;}s:71:"1208:bookmark-6bd0d4f2ec18b854587f97957deeeebf6486b9d5-upload_the_file.";a:3:{i:0;R:37249;i:1;R:35350;i:2;R:37115;}s:60:"1208:bookmark-3f195827f7c2fa2f429359af52688fa3d7f706ff-title";a:3:{i:0;R:37249;i:1;R:35350;i:2;R:37115;}s:60:"1208:bookmark-72720ab70f79a21d73a5ba2564ca1056e07c5ecc-notes";a:3:{i:0;R:37249;i:1;R:35350;i:2;R:37115;}s:59:"1208:bookmark-b57466f7e93f32b0220a9b6591d17e972567b193-tags";a:3:{i:0;R:37249;i:1;R:35350;i:2;R:37115;}s:85:"1208:bookmark-75425432d082264f84fb514b8aff96ec439bafc5-comma-_or_space-separated_list";a:3:{i:0;R:37249;i:1;R:35350;i:2;R:37115;}s:59:"1208:bookmark-e85726b34723718d86eeb40ab996e21219883557-save";a:3:{i:0;R:37249;i:1;R:35350;i:2;R:37115;}s:67:"1208:bookmark-b1cdcf992a82567d25715382f7b4276c0b93c922-new_bookmark";a:3:{i:0;R:37249;i:1;R:35350;i:2;R:37115;}s:85:"1208:bookmark-0098fa58b7f2ef9b54f9b4dc77387644e64cde66-must_be_logged_in_to_post_a_bo";a:3:{i:0;R:37249;i:1;R:35350;i:2;R:37115;}s:82:"1208:bookmark-b0c813f5d912e091b5a85b5327033c37532aa53a-bookmark_must_have_a_title.";a:3:{i:0;R:37249;i:1;R:35350;i:2;R:37115;}s:81:"1208:bookmark-92ffaf9ec522e40a9d15199d456e46f35ef22f0d-bookmark_must_have_an_url.";a:3:{i:0;R:37249;i:1;R:35350;i:2;R:37115;}s:70:"1208:bookmark-2383bada792579944298e1a202b0400e3ddc0ecf-bookmark_posted";a:3:{i:0;R:37249;i:1;R:35350;i:2;R:37115;}s:85:"1208:bookmark-ea2fcbb35aa8b15526054c0923c4e63208516796-getting_backup_from_file_"_s".";a:3:{i:0;R:37249;i:1;R:35350;i:2;R:37115;}s:85:"1208:cachelog-61fd380188e36489c15a503a999a7e84611e34dd-log_reads_and_writes_to_the_ca";a:3:{i:0;s:29:"out-statusnet-plugin-cachelog";i:1;R:35350;i:2;R:37115;}s:67:"1208:casauthentication-ab38a28edf84c693b1e1a48eb39299086b5ebe50-cas";a:3:{i:0;s:38:"out-statusnet-plugin-casauthentication";i:1;R:35350;i:2;R:37115;}s:91:"1208:casauthentication-2a7de44a86550b9005571479051c69a508fa4ec4-login_or_register_with_cas.";a:3:{i:0;R:37299;i:1;R:35350;i:2;R:37115;}s:94:"1208:casauthentication-82e939bc9ca149c01608bfdc708e45554e9c8948-(have_an_account_with_cas?_try";a:3:{i:0;R:37299;i:1;R:35350;i:2;R:37115;}s:94:"1208:casauthentication-fc4616ef460ff72e1b564108ac414e6fdeaad378-specifying_a_server_is_require";a:3:{i:0;R:37299;i:1;R:35350;i:2;R:37115;}s:94:"1208:casauthentication-bbb8be409ddc970e02e101d21a3f4d8218b7022c-specifying_a_port_is_required.";a:3:{i:0;R:37299;i:1;R:35350;i:2;R:37115;}s:94:"1208:casauthentication-ebc84bdd552d41d802ab5cf637ff7640c52d4ab9-specifying_a_path_is_required.";a:3:{i:0;R:37299;i:1;R:35350;i:2;R:37115;}s:93:"1208:casauthentication-f407b07d0ee4651217d3a1a5924ee5453501c324-the_cas_authentication_plugin";a:3:{i:0;R:37299;i:1;R:35350;i:2;R:37115;}s:82:"1208:casauthentication-fbbbfe3331edb0c2ce74bef6f8d5749c52c3017b-already_logged_in.";a:3:{i:0;R:37299;i:1;R:35350;i:2;R:37115;}s:94:"1208:casauthentication-f4d670b1eb75793729a8fb736def7bfd3abaecd7-incorrect_username_or_password";a:3:{i:0;R:37299;i:1;R:35350;i:2;R:37115;}s:94:"1208:casauthentication-e86ec2d9ecea608064cf6d1eed194a173763a5df-error_setting_user._you_are_pr";a:3:{i:0;R:37299;i:1;R:35350;i:2;R:37115;}s:94:"1208:clientsideshorten-5ba17b48d4958421c2088013d1ec9ba0ac79f865-clientsideshorten_causes_the_w";a:3:{i:0;s:38:"out-statusnet-plugin-clientsideshorten";i:1;R:35350;i:2;R:37115;}s:94:"1208:clientsideshorten-761a17709c20f3767f2624503ede0d15baadfb2c-"text"_argument_must_be_specif";a:3:{i:0;R:37310;i:1;R:35350;i:2;R:37115;}s:82:"1208:comet-0e17286996a3ae9a65895b5cd4d7bcc0bebf4490-plugin_to_make_updates_using_c";a:3:{i:0;s:26:"out-statusnet-plugin-comet";i:1;R:35350;i:2;R:37115;}s:94:"1208:directiondetector-9d13f2f728143f6d41fa7376ed613e7d0f716f29-shows_notices_with_right-to-le";a:3:{i:0;s:38:"out-statusnet-plugin-directiondetector";i:1;R:35350;i:2;R:37115;}s:78:"1208:directory-573b878500c7ae6989432b05cd8f2004d5fd2368-user_directory,_page_d";a:3:{i:0;s:30:"out-statusnet-plugin-directory";i:1;R:35350;i:2;R:37115;}s:70:"1208:directory-d81d7468d409ba157af9e2a95d0bcb240f3d7d1c-user_directory";a:3:{i:0;R:37317;i:1;R:35350;i:2;R:37115;}s:74:"1208:directory-91e58222a6fdbc9fe801dcff857b61845bfd9289-user_directory_-_s";a:3:{i:0;R:37317;i:1;R:35350;i:2;R:37115;}s:86:"1208:directory-155f7f00c45cf5584af0c2258dcb489fa0164b93-user_directory_-_1$s,_page_2$d";a:3:{i:0;R:37317;i:1;R:35350;i:2;R:37115;}s:86:"1208:directory-67474fd60be9a61264736b0f9febfc1be1d22365-search_for_people_on_site.name";a:3:{i:0;R:37317;i:1;R:35350;i:2;R:37115;}s:67:"1208:directory-51ef7d4f291b9358121620a0c0f07cfc4206b5fb-search_site";a:3:{i:0;R:37317;i:1;R:35350;i:2;R:37115;}s:66:"1208:directory-8c3600f054414dbf2405d784e38931cb536a5df8-keyword(s)";a:3:{i:0;R:37317;i:1;R:35350;i:2;R:37115;}s:62:"1208:directory-a34ad3f1a5e6d3ea71f03bfb62f5a2dad14c0f91-search";a:3:{i:0;R:37317;i:1;R:35350;i:2;R:37115;}s:80:"1208:directory-c33d31ac5f5d70492e38f9a4bf4c6e99680cff04-no_users_starting_with_s";a:3:{i:0;R:37317;i:1;R:35350;i:2;R:37115;}s:67:"1208:directory-0035403387839cb4aaa62a675de42063993cbc37-no_results.";a:3:{i:0;R:37317;i:1;R:35350;i:2;R:37115;}s:86:"1208:directory-e1fa1008136e7e43cf1d80e059492c68b55448fa-*_make_sure_all_words_are_spel";a:3:{i:0;R:37317;i:1;R:35350;i:2;R:37115;}s:79:"1208:directory-4be23342829dfdd9cd84dd761fd71f7b0d342c1a-group_directory,_page_d";a:3:{i:0;R:37317;i:1;R:35350;i:2;R:37115;}s:71:"1208:directory-f02965c94229b1e4a51cf079771282f532216bd9-group_directory";a:3:{i:0;R:37317;i:1;R:35350;i:2;R:37115;}s:75:"1208:directory-b68796098e62c58b0c2dd1319366a0d9395b16ea-group_directory_-_s";a:3:{i:0;R:37317;i:1;R:35350;i:2;R:37115;}s:86:"1208:directory-e796889f5aa5bccbfbc6603569edd93ce64fd1d5-group_directory_-_1$s,_page_2$";a:3:{i:0;R:37317;i:1;R:35350;i:2;R:37115;}s:86:"1208:directory-4d55cb49e3c93dd25ab4564ef5b4b69ae0b2a5dd-after_you_join_a_group_you_can";a:3:{i:0;R:37317;i:1;R:35350;i:2;R:37115;}s:74:"1208:directory-26593ae8f545458050883f21804ef72cc52b439a-create_a_new_group";a:3:{i:0;R:37317;i:1;R:35350;i:2;R:37115;}s:69:"1208:directory-1bad8f5cd7b3d94aea7868c284948d1737d4805f-search_groups";a:3:{i:0;R:37317;i:1;R:35350;i:2;R:37115;}s:82:"1208:directory-6d2a357d4a4d1a58c18562eeaadc7f0fae3250a0-no_groups_starting_with_s.";a:3:{i:0;R:37317;i:1;R:35350;i:2;R:37115;}s:65:"1208:directory-673c54f7df1210c20a2bd5ee7c3873fd2c0aec90-directory";a:3:{i:0;R:37317;i:1;R:35350;i:2;R:37115;}s:71:"1208:directory-e46230045d8853155f57767b26255ab73d87a1ff-user_directory.";a:3:{i:0;R:37317;i:1;R:35350;i:2;R:37115;}s:77:"1208:directory-440bd0fd0e50733b35662db2c0464ef4fcef7cf4-add_a_user_directory.";a:3:{i:0;R:37317;i:1;R:35350;i:2;R:37115;}s:64:"1208:directory-ce2bd99c47588fb943959213b6f03d82eaf77ab9-nickname";a:3:{i:0;R:37317;i:1;R:35350;i:2;R:37115;}s:63:"1208:directory-accf40c89baa4fa88e6a7ff11e1f805beecafd3f-created";a:3:{i:0;R:37317;i:1;R:35350;i:2;R:37115;}s:69:"1208:directory-5697fd85adbd13bf85f28712f9a136e80cc8067e-subscriptions";a:3:{i:0;R:37317;i:1;R:35350;i:2;R:37115;}s:63:"1208:directory-e94865d46012eb81682e78fe62f4a98fe76300fd-notices";a:3:{i:0;R:37317;i:1;R:35350;i:2;R:37115;}s:63:"1208:directory-1cb449c1126609b4b41e1d87f65f0d7cd19b49b9-members";a:3:{i:0;R:37317;i:1;R:35350;i:2;R:37115;}s:86:"1208:diskcache-39390e9dfe791a3f0099e3df00b5414dcdfd2211-plugin_to_implement_cache_inte";a:3:{i:0;s:30:"out-statusnet-plugin-diskcache";i:1;R:35350;i:2;R:37115;}s:83:"1208:disqus-9d23947908b957d8fdbcab640f0337140b4e006a-please_enable_javascript_to_vi";a:3:{i:0;s:27:"out-statusnet-plugin-disqus";i:1;R:35350;i:2;R:37115;}s:74:"1208:disqus-bbe2343d4d1a9aec49e4269dfc41270c99d4ed6b-comments_powered_by_\";a:3:{i:0;R:37347;i:1;R:35350;i:2;R:37115;}s:61:"1208:disqus-fce06e20e5f7f74aacccab40b59b75a56c8f7305-comments";a:3:{i:0;R:37347;i:1;R:35350;i:2;R:37115;}s:82:"1208:disqus-e2d656cf8b7ab5debc19a2aa9d65aa6d7ce1497b-use_a_href="http_disqus.com_"";a:3:{i:0;R:37347;i:1;R:35350;i:2;R:37115;}s:96:"1208:domainstatusnetwork-1d63735a0412d29003c64021badbd50c483892dc-a_plugin_that_maps_a_single_st";a:3:{i:0;s:40:"out-statusnet-plugin-domainstatusnetwork";i:1;R:35350;i:2;R:37115;}s:91:"1208:domainwhitelist-f8633c010f5292465f3fc13f83e6a3bc5becb62d-email_address_must_be_in_this";a:3:{i:0;s:36:"out-statusnet-plugin-domainwhitelist";i:1;R:35350;i:2;R:37115;}s:92:"1208:domainwhitelist-7a1f0b2becf32bbc0038888448fb00f3266dbd0d-email_address_must_be_in_one_o";a:3:{i:0;R:37354;i:1;R:35350;i:2;R:37115;}s:65:"1208:domainwhitelist-f18a6ea494003f960d41f8f2e611f452d09eb71c-,_\";a:3:{i:0;R:37354;i:1;R:35350;i:2;R:37115;}s:92:"1208:domainwhitelist-c19fa11a7d78301506c8ab04d198fb37f5c75e80-that_email_address_is_not_allo";a:3:{i:0;R:37354;i:1;R:35350;i:2;R:37115;}s:83:"1208:domainwhitelist-416b7875533de8ca4d2a1858f554e0720cd8ab08-confirmation_required";a:3:{i:0;R:37354;i:1;R:35350;i:2;R:37115;}s:92:"1208:domainwhitelist-2c93c86b2d92f673d96ef88f1114e4d73a028b62-really_delete_this_invitation?";a:3:{i:0;R:37354;i:1;R:35350;i:2;R:37115;}s:92:"1208:domainwhitelist-d98a17312725a3e40d0f7f769a0bd32c11ee2265-restrict_domains_for_email_use";a:3:{i:0;R:37354;i:1;R:35350;i:2;R:37115;}s:78:"1208:domainwhitelist-e8e9cc745353e396eaaeccf046efd7a58c0a1727-invite_collegues";a:3:{i:0;R:37354;i:1;R:35350;i:2;R:37115;}s:78:"1208:domainwhitelist-593c0277c3e6e056dcb1e80a912e64734a2edd82-personal_message";a:3:{i:0;R:37354;i:1;R:35350;i:2;R:37115;}s:92:"1208:domainwhitelist-25464dae1d0a46fbd9efeee3c454c17e23883525-optionally_add_a_personal_mess";a:3:{i:0;R:37354;i:1;R:35350;i:2;R:37115;}s:78:"1208:domainwhitelist-425f90ee821ed548d173a3a412b1ae3c60f626e4-add_another_item";a:3:{i:0;R:37354;i:1;R:35350;i:2;R:37115;}s:66:"1208:domainwhitelist-c64738ef7d7fb3455b2fe1683d6dc6201134dcc4-send";a:3:{i:0;R:37354;i:1;R:35350;i:2;R:37115;}s:79:"1208:domainwhitelist-3bd6f22c6895251e66161b3695264a6c74b1fbb9-send_invitations.";a:3:{i:0;R:37354;i:1;R:35350;i:2;R:37115;}s:81:"1208:echo-f76c3942382cc5b8b9d849b5460fddc46448fa4c-use_a_href="http_aboutecho.com";a:3:{i:0;s:25:"out-statusnet-plugin-echo";i:1;R:35350;i:2;R:37115;}s:96:"1208:emailauthentication-4b1a1ac5473f73cfe378cbe91178d26a8ce8eee4-the_email_authentication_plugi";a:3:{i:0;s:40:"out-statusnet-plugin-emailauthentication";i:1;R:35350;i:2;R:37115;}s:89:"1208:emailregistration-38cbc2b2241ff6e84bd71264abd0b941448e5f11-registration_not_allowed.";a:3:{i:0;s:38:"out-statusnet-plugin-emailregistration";i:1;R:35350;i:2;R:37115;}s:94:"1208:emailregistration-5b6e9e101113e18542153629ca75e80309f415ed-sorry,_only_invited_people_can";a:3:{i:0;R:37372;i:1;R:35350;i:2;R:37115;}s:85:"1208:emailregistration-b2c20a1ce2dd08334a2fe03e92e710e50a3e72d5-no_confirmation_code.";a:3:{i:0;R:37372;i:1;R:35350;i:2;R:37115;}s:88:"1208:emailregistration-3beea3111122bede4e720573bce36d338d06feb3-invitation_already_used.";a:3:{i:0;R:37372;i:1;R:35350;i:2;R:37115;}s:90:"1208:emailregistration-b9385aa89f2e25854f90509cef55ba0963804033-no_such_confirmation_code.";a:3:{i:0;R:37372;i:1;R:35350;i:2;R:37115;}s:72:"1208:emailregistration-5211488f154b45dc9ccdb2a735f7b52c1a58c1cd-register";a:3:{i:0;R:37372;i:1;R:35350;i:2;R:37115;}s:85:"1208:emailregistration-d43e1af292265dc5b7b32c33fe16b2b1442cf7dd-complete_registration";a:3:{i:0;R:37372;i:1;R:35350;i:2;R:37115;}s:94:"1208:emailregistration-e8e0b54fefda778beaadaeb5c4b91087545a7352-an_email_was_sent_to_s_to_conf";a:3:{i:0;R:37372;i:1;R:35350;i:2;R:37115;}s:86:"1208:emailregistration-622beeaf734d4de14b8ad0faf9b6fa12314bb30f-no_confirmation_thing.";a:3:{i:0;R:37372;i:1;R:35350;i:2;R:37115;}s:94:"1208:emailregistration-539eef87465122d8bb61f6ac31fe25e729eecfc1-you_must_accept_the_terms_of_s";a:3:{i:0;R:37372;i:1;R:35350;i:2;R:37115;}s:87:"1208:emailregistration-924977a7c87bedfcfea101f2a5e023cf1c2ba52b-you_must_set_a_password";a:3:{i:0;R:37372;i:1;R:35350;i:2;R:37115;}s:94:"1208:emailregistration-7e4e5372adbb3150cfa10dc5ae4a156484671136-password_must_be_6_or_more_cha";a:3:{i:0;R:37372;i:1;R:35350;i:2;R:37115;}s:87:"1208:emailregistration-f7c3cd475924dc45e184f50dd91e9e4da76c740b-passwords_do_not_match.";a:3:{i:0;R:37372;i:1;R:35350;i:2;R:37115;}s:88:"1208:emailregistration-fc10c8d5a2ed1d3f0fb742c92be840c5be5e421f-failed_to_register_user.";a:3:{i:0;R:37372;i:1;R:35350;i:2;R:37115;}s:94:"1208:emailregistration-40a77e7678d1ed3a5203a68110683bf5f5953d57-confirm_your_registration_on_s";a:3:{i:0;R:37372;i:1;R:35350;i:2;R:37115;}s:94:"1208:emailregistration-024461b5536c4d1f07916c424414565f258d261a-someone_(probably_you)_has_req";a:3:{i:0;R:37372;i:1;R:35350;i:2;R:37115;}s:94:"1208:emailregistration-3b71c016a59c7d98b011797896fb790866d4b717-enter_your_email_address_to_re";a:3:{i:0;R:37372;i:1;R:35350;i:2;R:37115;}s:78:"1208:emailregistration-05dc27147f545285e703b4cafec60c88e4328420-e-mail_address";a:3:{i:0;R:37372;i:1;R:35350;i:2;R:37115;}s:72:"1208:emailregistration-93b77a7b03293008502d7a8cdf144655d8deba7c-register";a:3:{i:0;R:37372;i:1;R:35350;i:2;R:37115;}s:94:"1208:emailregistration-abb2ffaa17d15f1c18ea3da114eb89b2d6b8a329-enter_a_password_to_confirm_yo";a:3:{i:0;R:37372;i:1;R:35350;i:2;R:37115;}s:73:"1208:emailregistration-a1f57b6aca4e638c665684454620437fb53c9705-user_name";a:3:{i:0;R:37372;i:1;R:35350;i:2;R:37115;}s:77:"1208:emailregistration-c94d3175a6560565410511df2cebab9cda96027e-email_address";a:3:{i:0;R:37372;i:1;R:35350;i:2;R:37115;}s:72:"1208:emailregistration-8be3c943b1609fffbfc51aad666d0a04adf83c9d-password";a:3:{i:0;R:37372;i:1;R:35350;i:2;R:37115;}s:85:"1208:emailregistration-93497baedef44bf19ca92cab33ac244be6f9ad73-6_or_more_characters.";a:3:{i:0;R:37372;i:1;R:35350;i:2;R:37115;}s:71:"1208:emailregistration-e0c6e84cf6036997bd6925b17b04a22924a4bc03-confirm";a:3:{i:0;R:37372;i:1;R:35350;i:2;R:37115;}s:87:"1208:emailregistration-e0dfc75ed73e0c4e716f94ee34c63ce5fc6464de-same_as_password_above.";a:3:{i:0;R:37372;i:1;R:35350;i:2;R:37115;}s:94:"1208:emailregistration-f6e60404f1f277ac64f16226cce07e5b9c4e8c3a-i_agree_to_the_a_href="_1$s"_t";a:3:{i:0;R:37372;i:1;R:35350;i:2;R:37115;}s:94:"1208:emailregistration-52a147ce5f2798ce811278db7b727cfc9ef9ecee-a_user_with_that_email_address";a:3:{i:0;R:37372;i:1;R:35350;i:2;R:37115;}s:90:"1208:emailregistration-223d248179425af55c45516ddb7726f7482cdcf2-not_a_valid_email_address.";a:3:{i:0;R:37372;i:1;R:35350;i:2;R:37115;}s:76:"1208:emailregistration-365fc2cfdbcf71ca0e230dbe260c784c0e6bc1a4-welcome_to_s";a:3:{i:0;R:37372;i:1;R:35350;i:2;R:37115;}s:94:"1208:emailregistration-9915df06c1292c259d6a15ebfd123d6e60920857-use_email_only_for_registratio";a:3:{i:0;R:37372;i:1;R:35350;i:2;R:37115;}s:90:"1208:emailreminder-10ed8d204ae7c0bb2c2b4404b51d565808e8389d-send_email_reminders_for_vario";a:3:{i:0;s:34:"out-statusnet-plugin-emailreminder";i:1;R:35350;i:2;R:37115;}s:90:"1208:emailreminder-97d8b030afd19f6363f42d210a56b32e4c9db30a-database_error_inserting_remin";a:3:{i:0;R:37404;i:1;R:35350;i:2;R:37115;}s:90:"1208:emailreminder-1f1ffc5ef60151de2beced03061bb6fa1fc7d165-reminder_-_please_confirm_your";a:3:{i:0;R:37404;i:1;R:35350;i:2;R:37115;}s:90:"1208:emailreminder-fff44c0466f3aa4f04015f77bc0199d11c26dc11-second_reminder_-_please_confi";a:3:{i:0;R:37404;i:1;R:35350;i:2;R:37115;}s:90:"1208:emailreminder-be1ed67ebc40dd2c8e767300debdcb539c9d76a6-final_reminder_-_please_confir";a:3:{i:0;R:37404;i:1;R:35350;i:2;R:37115;}s:90:"1208:emailreminder-dd4ae2a0bd93b2b811dde4457c779116e798adb1-reminder_-_you_have_been_invit";a:3:{i:0;R:37404;i:1;R:35350;i:2;R:37115;}s:90:"1208:emailreminder-dd4a3fe67428821a63103da6b219b52bc094d3e0-final_reminder_-_you_have_been";a:3:{i:0;R:37404;i:1;R:35350;i:2;R:37115;}s:85:"1208:emailsummary-c3d23a7f36862ec6416fb72105206bf5cefde470-your_latest_updates_from_s";a:3:{i:0;s:33:"out-statusnet-plugin-emailsummary";i:1;R:35350;i:2;R:37115;}s:89:"1208:emailsummary-7584e4f448e9c11ae8e63ffdb4446675af9e55c5-recent_updates_from_1$s_for_2$";a:3:{i:0;R:37412;i:1;R:35350;i:2;R:37115;}s:69:"1208:emailsummary-e14773c074b05e248b0bf29367133066e6e2d1e8-in_context";a:3:{i:0;R:37412;i:1;R:35350;i:2;R:37115;}s:88:"1208:emailsummary-c98fb046d0aeae0e59d59f91e75b20c1bc10d5d4-a_href="_1$s"_change_your_ema";a:3:{i:0;R:37412;i:1;R:35350;i:2;R:37115;}s:89:"1208:emailsummary-150a5351ee41896c7719c6eaa6c8df21c954fac5-send_an_email_summary_of_the_i";a:3:{i:0;R:37412;i:1;R:35350;i:2;R:37115;}s:88:"1208:emailsummary-48437a1aa661151c20540b4d89cfb5ec1db2fb2c-send_me_a_periodic_summary_of";a:3:{i:0;R:37412;i:1;R:35350;i:2;R:37115;}s:59:"1208:event-ef16ce865953ec277c009a154bdd00f045b87072-(0_min)";a:3:{i:0;s:26:"out-statusnet-plugin-event";i:1;R:35350;i:2;R:37115;}s:60:"1208:event-87e577aa461ab40e99b3cd744f2400400943ce7e-(30_min)";a:3:{i:0;R:37419;i:1;R:35350;i:2;R:37115;}s:60:"1208:event-596d5ee47248113669986506972e23a2ad8fa24c-(1_hour)";a:3:{i:0;R:37419;i:1;R:35350;i:2;R:37115;}s:64:"1208:event-8625451468822b129ffda59b1f2db8ef945cfca8-(_.1f_hours)";a:3:{i:0;R:37419;i:1;R:35350;i:2;R:37115;}s:62:"1208:event-2e072b80e232447737125ec99976680cc8a7bd3d-(_d_hours)";a:3:{i:0;R:37419;i:1;R:35350;i:2;R:37115;}s:73:"1208:event-69920cbdc50e6a5e8f11a23501ce31f5582fcc04-event_already_exists.";a:3:{i:0;R:37419;i:1;R:35350;i:2;R:37115;}s:79:"1208:event-1a375f89e282fd32e9a789ec37a6526dda487de8-"_1$s"_2$s_-_3$s_(_4$s)_5$s";a:3:{i:0;R:37419;i:1;R:35350;i:2;R:37115;}s:81:"1208:event-227f39cbd4e48119229b2cad35ce817ea6ce26cc-span_class="vevent"_span_clas";a:3:{i:0;R:37419;i:1;R:35350;i:2;R:37115;}s:66:"1208:event-8e2de1e8b1af7cd2b403bd0d27c71332a55ac628-not_logged_in.";a:3:{i:0;R:37419;i:1;R:35350;i:2;R:37115;}s:79:"1208:event-7bba1c3a51cc7b727087dd3414b028e505991127-unexpected_form_submission.";a:3:{i:0;R:37419;i:1;R:35350;i:2;R:37115;}s:77:"1208:event-f69e8099239b7941fa6f4426d72e3385736e5263-this_action_is_ajax_only.";a:3:{i:0;R:37419;i:1;R:35350;i:2;R:37115;}s:65:"1208:event-cb3d95179cd1a8552e39173157c610a5f67c1302-no_such_rsvp.";a:3:{i:0;R:37419;i:1;R:35350;i:2;R:37115;}s:66:"1208:event-8ca9b1aaf2a1c37f99fa59200c5cb752d535a27f-no_such_event.";a:3:{i:0;R:37419;i:1;R:35350;i:2;R:37115;}s:73:"1208:event-59151c647655104ac24e43ee4a5de77c5c496ba7-1$s's_rsvp_for_"_2$s"";a:3:{i:0;R:37419;i:1;R:35350;i:2;R:37115;}s:79:"1208:event-16b748c0a878008d5fcfa7294b534eda4c460485-you_will_attend_this_event.";a:3:{i:0;R:37419;i:1;R:35350;i:2;R:37115;}s:82:"1208:event-cbf418e23316c67e90e5696c9c4f33badd519e71-you_will_not_attend_this_event";a:3:{i:0;R:37419;i:1;R:35350;i:2;R:37115;}s:80:"1208:event-eccbb2e84295402c18c88dde0d238b6b3250697a-you_might_attend_this_event.";a:3:{i:0;R:37419;i:1;R:35350;i:2;R:37115;}s:58:"1208:event-08be17603e6624ef0e43fb8c8d30fb8ed74cc6fb-cancel";a:3:{i:0;R:37419;i:1;R:35350;i:2;R:37115;}s:60:"1208:event-85c4d4883736452e56504da9cf702d278527d3f0-new_rsvp";a:3:{i:0;R:37419;i:1;R:35350;i:2;R:37115;}s:81:"1208:event-62380fa43618fd8d7a09cfd8645414ed2231075a-you_must_be_logged_in_to_rsvp";a:3:{i:0;R:37419;i:1;R:35350;i:2;R:37115;}s:73:"1208:event-1b51563eedcdd321a447220989a4088551042b1a-unknown_submit_value.";a:3:{i:0;R:37419;i:1;R:35350;i:2;R:37115;}s:63:"1208:event-23644199d6b6b3fd743fa0366af42d729b302560-event_saved";a:3:{i:0;R:37419;i:1;R:35350;i:2;R:37115;}s:63:"1208:event-08c0b44dcc44ebc8b7fd82f043ca41612db47889-cancel_rsvp";a:3:{i:0;R:37419;i:1;R:35350;i:2;R:37115;}s:60:"1208:event-48ea780f3c3c329d896b5337bcfe840c3ac2b492-deleted.";a:3:{i:0;R:37419;i:1;R:35350;i:2;R:37115;}s:56:"1208:event-91b6c0167fc17643368468a3194addbeae7a8c8f-rsvp";a:3:{i:0;R:37419;i:1;R:35350;i:2;R:37115;}s:55:"1208:event-e2de18c030c8e21e7bc44245060b1a826f2c606e-yes";a:3:{i:0;R:37419;i:1;R:35350;i:2;R:37115;}s:54:"1208:event-68cd6e72fd2c1f267dbcfcbba0c21b8fc95174c1-no";a:3:{i:0;R:37419;i:1;R:35350;i:2;R:37115;}s:57:"1208:event-3824bb54f44a9f8c22c834ac980622f8f8008600-maybe";a:3:{i:0;R:37419;i:1;R:35350;i:2;R:37115;}s:57:"1208:event-3f195827f7c2fa2f429359af52688fa3d7f706ff-title";a:3:{i:0;R:37419;i:1;R:35350;i:2;R:37115;}s:71:"1208:event-9fc8ac50d7af04edf1f924afa7f740d080ffcd92-title_of_the_event.";a:3:{i:0;R:37419;i:1;R:35350;i:2;R:37115;}s:62:"1208:event-d482a5fca32f17f97bb40f9fc1ea24e9e1434e03-start_date";a:3:{i:0;R:37419;i:1;R:35350;i:2;R:37115;}s:74:"1208:event-a210e0b2d4385d82031d8d39cd2e80afbb312bae-date_the_event_starts.";a:3:{i:0;R:37419;i:1;R:35350;i:2;R:37115;}s:62:"1208:event-298d3c23591338ec9a1444a3117b3221a04cf2aa-start_time";a:3:{i:0;R:37419;i:1;R:35350;i:2;R:37115;}s:79:"1208:event-c746f9a758dddeb85182a6666d2b648c02b67055-time_the_event_starts_(_s).";a:3:{i:0;R:37419;i:1;R:35350;i:2;R:37115;}s:60:"1208:event-7ec345dcb1a1668a5b99865c7bcef3b826313489-end_date";a:3:{i:0;R:37419;i:1;R:35350;i:2;R:37115;}s:72:"1208:event-3bf8a6bff01144c90bf5ea502425e4106ad34ad3-date_the_event_ends.";a:3:{i:0;R:37419;i:1;R:35350;i:2;R:37115;}s:60:"1208:event-48e6fd507a60f210a898f150942de53bcecb9b03-end_time";a:3:{i:0;R:37419;i:1;R:35350;i:2;R:37115;}s:72:"1208:event-d9d25532f122604c4234d4b9e6081c7c81bfd8ec-time_the_event_ends.";a:3:{i:0;R:37419;i:1;R:35350;i:2;R:37115;}s:58:"1208:event-f53361391ec9e53eaf3abd50e6af0950f2f2a300-where?";a:3:{i:0;R:37419;i:1;R:35350;i:2;R:37115;}s:67:"1208:event-08e0c5b6ed42402beb7a00bcea098f1e6651c068-event_location.";a:3:{i:0;R:37419;i:1;R:35350;i:2;R:37115;}s:55:"1208:event-ba1c8f42a49ff1f953c310b66c52d86dc5f5c2a8-url";a:3:{i:0;R:37419;i:1;R:35350;i:2;R:37115;}s:77:"1208:event-77e455363b09b40c2689b75a29e4abed49d63ea2-url_for_more_information.";a:3:{i:0;R:37419;i:1;R:35350;i:2;R:37115;}s:63:"1208:event-2d345842f631b046dad639bd8374c8174834ce1a-description";a:3:{i:0;R:37419;i:1;R:35350;i:2;R:37115;}s:77:"1208:event-40c881219ae261cdbc6a979d77911f5929ae2f4f-description_of_the_event.";a:3:{i:0;R:37419;i:1;R:35350;i:2;R:37115;}s:56:"1208:event-e85726b34723718d86eeb40ab996e21219883557-save";a:3:{i:0;R:37419;i:1;R:35350;i:2;R:37115;}s:80:"1208:event-fb75c4f934e34902e2cec5fc9ff53846cd420789-event_invitations_and_rsvps.";a:3:{i:0;R:37419;i:1;R:35350;i:2;R:37115;}s:57:"1208:event-e506b5e5f01cb1274e2e1f987ae8143103feafb5-event";a:3:{i:0;R:37419;i:1;R:35350;i:2;R:37115;}s:78:"1208:event-d393e8a88b62d2117d463893b60fa845398845df-too_many_activity_objects.";a:3:{i:0;R:37419;i:1;R:35350;i:2;R:37115;}s:74:"1208:event-7988053a0c126d9bea3f20056064dfc1659d9816-wrong_type_for_object.";a:3:{i:0;R:37419;i:1;R:35350;i:2;R:37115;}s:75:"1208:event-7a1d6960fe709e069d8236bfd0faef013f54efc8-rsvp_for_unknown_event.";a:3:{i:0;R:37419;i:1;R:35350;i:2;R:37115;}s:76:"1208:event-c38fac92aa340fba34bcc5aae19b3457ea1cc6c3-unknown_verb_for_events.";a:3:{i:0;R:37419;i:1;R:35350;i:2;R:37115;}s:72:"1208:event-b916210cd2f40bc6ae699debda3ef1924d5f1af9-unknown_object_type.";a:3:{i:0;R:37419;i:1;R:35350;i:2;R:37115;}s:73:"1208:event-e7c624315f35970e175aa6b1af091bf521437de2-unknown_event_notice.";a:3:{i:0;R:37419;i:1;R:35350;i:2;R:37115;}s:72:"1208:event-5f5ef38b2788c0da2b12a38367645504fb67ed74-rsvp_already_exists.";a:3:{i:0;R:37419;i:1;R:35350;i:2;R:37115;}s:70:"1208:event-671e9c0a7cb4d028686f65aeb7a07530b991c558-unknown_verb_"_s".";a:3:{i:0;R:37419;i:1;R:35350;i:2;R:37115;}s:70:"1208:event-4090ee58d8ee25d4dd978f63e5fa98723957bd5f-unknown_code_"_s".";a:3:{i:0;R:37419;i:1;R:35350;i:2;R:37115;}s:81:"1208:event-95c70dfd02ab2efd4060c46fa4d0c88f6dc69cf3-rsvp_s_does_not_correspond_to";a:3:{i:0;R:37419;i:1;R:35350;i:2;R:37115;}s:73:"1208:event-81bfc33eb0b9b3577301aaa6b1cfd4d9584888a6-no_profile_with_id_s.";a:3:{i:0;R:37419;i:1;R:35350;i:2;R:37115;}s:71:"1208:event-dc6b2adf2c67f415273726293690db8a3c04be2b-no_event_with_id_s.";a:3:{i:0;R:37419;i:1;R:35350;i:2;R:37115;}s:81:"1208:event-45cdddbc4176b70fce777ae10fe581bda69c825a-span_class='automatic_event-r";a:3:{i:0;R:37419;i:1;R:35350;i:2;R:37115;}s:81:"1208:event-77945aaae16a8019c531f6fffd040decb1806cb3-span_class='automatic_event-r";a:3:{i:0;R:37419;i:1;R:35350;i:2;R:37115;}s:81:"1208:event-68178d1e30a663150017a70b9fe7d3012ced44cb-span_class='automatic_event-r";a:3:{i:0;R:37419;i:1;R:35350;i:2;R:37115;}s:76:"1208:event-ec40f9f2f985c30cf92e627fe2c99c774106d67e-unknown_response_code_s.";a:3:{i:0;R:37419;i:1;R:35350;i:2;R:37115;}s:68:"1208:event-90969aa4a42e305f99814b8973324ebe0e8b49b9-an_unknown_event";a:3:{i:0;R:37419;i:1;R:35350;i:2;R:37115;}s:73:"1208:event-38ffd3297a31d98c8137d5825324477b75f48252-1$s_is_attending_2$s.";a:3:{i:0;R:37419;i:1;R:35350;i:2;R:37115;}s:77:"1208:event-4890c895891e2aeb35c1713d5bf212ae8b49a4ae-1$s_is_not_attending_2$s.";a:3:{i:0;R:37419;i:1;R:35350;i:2;R:37115;}s:73:"1208:event-9da18a8e87a4bde60437f71dc0318f3ecaab9504-1$s_might_attend_2$s.";a:3:{i:0;R:37419;i:1;R:35350;i:2;R:37115;}s:61:"1208:event-e3c86abf63a3c41ac12e29946729f0f4c6bd9066-new_event";a:3:{i:0;R:37419;i:1;R:35350;i:2;R:37115;}s:82:"1208:event-8719298eff6c07eb0df777450d51b6e3748c8e81-must_be_logged_in_to_post_a_ev";a:3:{i:0;R:37419;i:1;R:35350;i:2;R:37115;}s:67:"1208:event-e50e2f043df4fdea9afe1709fde63f6734d3b2fa-title_required.";a:3:{i:0;R:37419;i:1;R:35350;i:2;R:37115;}s:72:"1208:event-cac48eea9a03504a4d29646eeed5ef2a2b433667-start_date_required.";a:3:{i:0;R:37419;i:1;R:35350;i:2;R:37115;}s:70:"1208:event-ca8f07348d23e9d6a920fe7e7319f405962fe53a-end_date_required.";a:3:{i:0;R:37419;i:1;R:35350;i:2;R:37115;}s:78:"1208:event-0f070fa9227024745cd33e887c22d17ed8bfdd99-could_not_parse_date_"_s".";a:3:{i:0;R:37419;i:1;R:35350;i:2;R:37115;}s:76:"1208:event-655767e61442122abf0776749bde15a46ace8a39-event_must_have_a_title.";a:3:{i:0;R:37419;i:1;R:35350;i:2;R:37115;}s:81:"1208:event-277f58614d7237d8b807b8a907f232e255da368b-event_must_have_a_start_time.";a:3:{i:0;R:37419;i:1;R:35350;i:2;R:37115;}s:80:"1208:event-4d22d52872f20f06664df95b6e38c74e810adf23-event_must_have_an_end_time.";a:3:{i:0;R:37419;i:1;R:35350;i:2;R:37115;}s:70:"1208:event-37353d3f0ccc9fbb59c877a072410c3a39ef448f-url_must_be_valid.";a:3:{i:0;R:37419;i:1;R:35350;i:2;R:37115;}s:56:"1208:event-179578fe1b6b8990d0efc3fb472294bd74fff56d-time";a:3:{i:0;R:37419;i:1;R:35350;i:2;R:37115;}s:60:"1208:event-1bf3994417bef0651abb2f6484952b55978e96ca-location";a:3:{i:0;R:37419;i:1;R:35350;i:2;R:37115;}s:63:"1208:event-9b6f3f0766171c305edc998380e7c5cc141a33d8-description";a:3:{i:0;R:37419;i:1;R:35350;i:2;R:37115;}s:87:"1208:extendedprofile-ed1cde5577fa38b9103328e81534ae67e832364a-extended_profile_settings";a:3:{i:0;s:36:"out-statusnet-plugin-extendedprofile";i:1;R:35350;i:2;R:37115;}s:92:"1208:extendedprofile-6ef400b126fb8d1f973a725ac0701313c77c0cc7-you_can_update_your_personal_p";a:3:{i:0;R:37500;i:1;R:35350;i:2;R:37115;}s:91:"1208:extendedprofile-07363d7dbc93d7e4d63ece8ac5e72bf52dd64506-there_was_a_problem_with_your";a:3:{i:0;R:37500;i:1;R:35350;i:2;R:37115;}s:89:"1208:extendedprofile-7bba1c3a51cc7b727087dd3414b028e505991127-unexpected_form_submission.";a:3:{i:0;R:37500;i:1;R:35350;i:2;R:37115;}s:76:"1208:extendedprofile-3c29d8602f391211a55d0b67209bd0becbce7eab-details_saved.";a:3:{i:0;R:37500;i:1;R:35350;i:2;R:37115;}s:92:"1208:extendedprofile-1b9d6e3dfeb979b46880775018fa0c0f7d590877-you_must_supply_a_date_for_"_s";a:3:{i:0;R:37500;i:1;R:35350;i:2;R:37115;}s:92:"1208:extendedprofile-300d863a99c406683c181663c7fc624c74bea96c-invalid_date_entered_for_"_1$s";a:3:{i:0;R:37500;i:1;R:35350;i:2;R:37115;}s:76:"1208:extendedprofile-05dcec3f8b514de5929c80ca854c3943fb71bc02-invalid_url_s.";a:3:{i:0;R:37500;i:1;R:35350;i:2;R:37115;}s:92:"1208:extendedprofile-de68ce88fd28bb0c98c9642c1c94ecc1e74693f4-could_not_save_profile_details";a:3:{i:0;R:37500;i:1;R:35350;i:2;R:37115;}s:79:"1208:extendedprofile-70a039130af0285eb4a810ededb2715b88e54983-invalid_tag_"_s".";a:3:{i:0;R:37500;i:1;R:35350;i:2;R:37115;}s:85:"1208:extendedprofile-ac78013aea28fef21014bd36bd44833023cef905-could_not_save_profile.";a:3:{i:0;R:37500;i:1;R:35350;i:2;R:37115;}s:82:"1208:extendedprofile-f4f7399db2ad6f3ae39a177944761440e6d7828c-could_not_save_tags.";a:3:{i:0;R:37500;i:1;R:35350;i:2;R:37115;}s:92:"1208:extendedprofile-b3f111171d2b7e61a3be05551e1549fa696133a5-edit_extended_profile_settings";a:3:{i:0;R:37500;i:1;R:35350;i:2;R:37115;}s:66:"1208:extendedprofile-5301648dcf6b53cefc9ed52999aaa92d4603cae0-edit";a:3:{i:0;R:37500;i:1;R:35350;i:2;R:37115;}s:92:"1208:extendedprofile-8e69fe9024645b5d878783d00501141438c32e56-ui_extensions_for_additional_p";a:3:{i:0;R:37500;i:1;R:35350;i:2;R:37115;}s:77:"1208:extendedprofile-623585fba8cd4afa46bf3c1c0aed343ac2c01609-more_details...";a:3:{i:0;R:37500;i:1;R:35350;i:2;R:37115;}s:83:"1208:extendedprofile-416b7875533de8ca4d2a1858f554e0720cd8ab08-confirmation_required";a:3:{i:0;R:37500;i:1;R:35350;i:2;R:37115;}s:87:"1208:extendedprofile-2e6d084a7a709fcd8a772d6dc261f7e425654384-really_delete_this_entry?";a:3:{i:0;R:37500;i:1;R:35350;i:2;R:37115;}s:66:"1208:extendedprofile-a1a5d5ad5adc883d56b6d083405d8087d2f8ad8e-(_s)";a:3:{i:0;R:37500;i:1;R:35350;i:2;R:37115;}s:69:"1208:extendedprofile-7a1994999d181deea68e4304b3346e78f838ecb7-company";a:3:{i:0;R:37500;i:1;R:35350;i:2;R:37115;}s:67:"1208:extendedprofile-952f375412e89ff213a8aca383d18e5691354347-start";a:3:{i:0;R:37500;i:1;R:35350;i:2;R:37115;}s:65:"1208:extendedprofile-a2bb9d34b8a1a79665858d354585cf147e0dee4e-end";a:3:{i:0;R:37500;i:1;R:35350;i:2;R:37115;}s:71:"1208:extendedprofile-4106db67c248ca62ab94a92bf935a9f140d66802-(current)";a:3:{i:0;R:37500;i:1;R:35350;i:2;R:37115;}s:69:"1208:extendedprofile-4fc0e2bc80737d784e6d3f24837950f48732c6ca-current";a:3:{i:0;R:37500;i:1;R:35350;i:2;R:37115;}s:73:"1208:extendedprofile-429f9450eaee6957c9b1461227b45d94079f2cac-institution";a:3:{i:0;R:37500;i:1;R:35350;i:2;R:37115;}s:68:"1208:extendedprofile-41c26b83b688d816cd49d60e0e2c8be032feacea-degree";a:3:{i:0;R:37500;i:1;R:35350;i:2;R:37115;}s:73:"1208:extendedprofile-55f8ebc805e65b5b71ddafdae390e3be2bcd69af-description";a:3:{i:0;R:37500;i:1;R:35350;i:2;R:37115;}s:78:"1208:extendedprofile-425f90ee821ed548d173a3a412b1ae3c60f626e4-add_another_item";a:3:{i:0;R:37500;i:1;R:35350;i:2;R:37115;}s:68:"1208:extendedprofile-2b61d8b472011fa89cab6f7e9789809ab531552d-type_s";a:3:{i:0;R:37500;i:1;R:35350;i:2;R:37115;}s:66:"1208:extendedprofile-e85726b34723718d86eeb40ab996e21219883557-save";a:3:{i:0;R:37500;i:1;R:35350;i:2;R:37115;}s:74:"1208:extendedprofile-4706583df90b4c5fa704a170a2971f85df9bd541-save_details";a:3:{i:0;R:37500;i:1;R:35350;i:2;R:37115;}s:67:"1208:extendedprofile-77064d5265236e0ac252f3fc4a5ba7b274b6a583-phone";a:3:{i:0;R:37500;i:1;R:35350;i:2;R:37115;}s:64:"1208:extendedprofile-39df43055714d057e70d944573b5127c519645f5-im";a:3:{i:0;R:37500;i:1;R:35350;i:2;R:37115;}s:69:"1208:extendedprofile-2e8a57cc5c472f4ac3b071979a38e80db7e59e87-website";a:3:{i:0;R:37500;i:1;R:35350;i:2;R:37115;}s:70:"1208:extendedprofile-4631b29c6fb7d6f276e27c04e6613050dbf04fa3-employer";a:3:{i:0;R:37500;i:1;R:35350;i:2;R:37115;}s:70:"1208:extendedprofile-40f07323796692b042288d1472a4fbaa735ffec7-personal";a:3:{i:0;R:37500;i:1;R:35350;i:2;R:37115;}s:71:"1208:extendedprofile-eeb692087d629b32f2f1820369d9756d60c5cba8-full_name";a:3:{i:0;R:37500;i:1;R:35350;i:2;R:37115;}s:67:"1208:extendedprofile-768e0c1c69573fb588f61f1308a015c11468e05f-title";a:3:{i:0;R:37500;i:1;R:35350;i:2;R:37115;}s:69:"1208:extendedprofile-babe3050e2e81dfd87a8ce67264d518cb34aef72-manager";a:3:{i:0;R:37500;i:1;R:35350;i:2;R:37115;}s:70:"1208:extendedprofile-d219c68101f532de10add2cf42fb9dbeca73d3be-location";a:3:{i:0;R:37500;i:1;R:35350;i:2;R:37115;}s:65:"1208:extendedprofile-b31fc969b4889fb445fa3e7d99b845aa2f0d3497-bio";a:3:{i:0;R:37500;i:1;R:35350;i:2;R:37115;}s:66:"1208:extendedprofile-848eed0fbd5429f556b2982dec3ea87136e33e44-tags";a:3:{i:0;R:37500;i:1;R:35350;i:2;R:37115;}s:69:"1208:extendedprofile-b37456c4530be810dc040f50da72eda09addfb0a-contact";a:3:{i:0;R:37500;i:1;R:35350;i:2;R:37115;}s:70:"1208:extendedprofile-a6b9d69f57d94a826930e45360e373533bfd130d-birthday";a:3:{i:0;R:37500;i:1;R:35350;i:2;R:37115;}s:75:"1208:extendedprofile-b22db522aa53666e4b778b9a8b5702d863515d89-spouse's_name";a:3:{i:0;R:37500;i:1;R:35350;i:2;R:37115;}s:73:"1208:extendedprofile-0aa5bffe02457f03d1aec47c1a82b53013d45ac1-kids'_names";a:3:{i:0;R:37500;i:1;R:35350;i:2;R:37115;}s:77:"1208:extendedprofile-5ebb20aef909225893d08d11fb95080bfc976456-work_experience";a:3:{i:0;R:37500;i:1;R:35350;i:2;R:37115;}s:71:"1208:extendedprofile-aaf87fe57ae6d323db5496e6e27b7bc55f15827c-education";a:3:{i:0;R:37500;i:1;R:35350;i:2;R:37115;}s:79:"1208:facebookbridge-fbbbfe3331edb0c2ce74bef6f8d5749c52c3017b-already_logged_in.";a:3:{i:0;s:35:"out-statusnet-plugin-facebookbridge";i:1;R:35350;i:2;R:37115;}s:91:"1208:facebookbridge-77482e4e11950e11a8457137b43e9eae4b4db121-login_with_your_facebook_accou";a:3:{i:0;R:37549;i:1;R:35350;i:2;R:37115;}s:80:"1208:facebookbridge-62aa3ae23ee04e30f09ba90a7872c7815b084fc0-login_with_facebook";a:3:{i:0;R:37549;i:1;R:35350;i:2;R:37115;}s:81:"1208:facebookbridge-99fdcc19854668367e61181c54648ce0cf6306ff-login_with_facebook.";a:3:{i:0;R:37549;i:1;R:35350;i:2;R:37115;}s:90:"1208:facebookbridge-4b329763fba94570abc9e029abadd7b503a514f7-facebook_integration_settings";a:3:{i:0;R:37549;i:1;R:35350;i:2;R:37115;}s:90:"1208:facebookbridge-5d52cc0d4c5d23bff7cb55eb8e3198eedae96f60-facebook_integration_settings";a:3:{i:0;R:37549;i:1;R:35350;i:2;R:37115;}s:91:"1208:facebookbridge-c838c5b175e9fe158cb5f28387bc1b43469c567f-invalid_facebook_id._maximum_l";a:3:{i:0;R:37549;i:1;R:35350;i:2;R:37115;}s:91:"1208:facebookbridge-2e2e87a21a60f55dc98bc59a3c83e8d00f93cdee-invalid_facebook_secret._maxim";a:3:{i:0;R:37549;i:1;R:35350;i:2;R:37115;}s:90:"1208:facebookbridge-38d3b4bec45ac0ab6aa04d4bd3161685cf3aa276-facebook_application_settings";a:3:{i:0;R:37549;i:1;R:35350;i:2;R:37115;}s:75:"1208:facebookbridge-557031cad0f1b2b54264afc9d96a7aba19827147-application_id";a:3:{i:0;R:37549;i:1;R:35350;i:2;R:37115;}s:91:"1208:facebookbridge-6dcb55cca4ebc62a6af727b145af89c6312de056-id_of_your_facebook_applicatio";a:3:{i:0;R:37549;i:1;R:35350;i:2;R:37115;}s:67:"1208:facebookbridge-f4e7a8740db0b7a0bfd8e63077261475f61fc2a6-secret";a:3:{i:0;R:37549;i:1;R:35350;i:2;R:37115;}s:80:"1208:facebookbridge-8a1a039f7d4beb7c4c3d48e143cbb9a2faf0e301-application_secret.";a:3:{i:0;R:37549;i:1;R:35350;i:2;R:37115;}s:65:"1208:facebookbridge-e85726b34723718d86eeb40ab996e21219883557-save";a:3:{i:0;R:37549;i:1;R:35350;i:2;R:37115;}s:84:"1208:facebookbridge-440c009a3be5bb2f8b5b7aa9add6b838189a3a76-save_facebook_settings.";a:3:{i:0;R:37549;i:1;R:35350;i:2;R:37115;}s:90:"1208:facebookbridge-07363d7dbc93d7e4d63ece8ac5e72bf52dd64506-there_was_a_problem_with_your";a:3:{i:0;R:37549;i:1;R:35350;i:2;R:37115;}s:78:"1208:facebookbridge-39250bce34db51eaa3351016dd4659519623bf61-facebook_settings";a:3:{i:0;R:37549;i:1;R:35350;i:2;R:37115;}s:78:"1208:facebookbridge-8655c45b12c43503aeeb8411451e8e9f47510e61-facebook_settings";a:3:{i:0;R:37549;i:1;R:35350;i:2;R:37115;}s:84:"1208:facebookbridge-d61ba93469aaca7ecd3427feff54aae19ab18997-connected_facebook_user";a:3:{i:0;R:37549;i:1;R:35350;i:2;R:37115;}s:91:"1208:facebookbridge-6ba091d2267ecb5bed07803bc82307a24667b9f1-publish_my_notices_to_facebook";a:3:{i:0;R:37549;i:1;R:35350;i:2;R:37115;}s:90:"1208:facebookbridge-fb6fb389aaea416f8603c629a4d8aca8c6da6675-send_"@"_replies_to_facebook.";a:3:{i:0;R:37549;i:1;R:35350;i:2;R:37115;}s:91:"1208:facebookbridge-f23e3520d3682c7ce28f12d90ac92652bdf9128c-disconnect_my_account_from_fac";a:3:{i:0;R:37549;i:1;R:35350;i:2;R:37115;}s:91:"1208:facebookbridge-54008c7b6ca963eccea8b4c7768144824b55049a-disconnecting_your_faceboook_w";a:3:{i:0;R:37549;i:1;R:35350;i:2;R:37115;}s:91:"1208:facebookbridge-a2a6c203a48015d7027d4a562bc7cacac901e592-keep_your_1$s_account_but_disc";a:3:{i:0;R:37549;i:1;R:35350;i:2;R:37115;}s:71:"1208:facebookbridge-d19ad8912000fdefe232cfe0b9668a713191adf4-disconnect";a:3:{i:0;R:37549;i:1;R:35350;i:2;R:37115;}s:91:"1208:facebookbridge-f180fcd0a3439ed931da6fea4d2a6b7d5201e169-there_was_a_problem_saving_you";a:3:{i:0;R:37549;i:1;R:35350;i:2;R:37115;}s:84:"1208:facebookbridge-40660c31beb74fdac874c9e769a3831a03b8c494-sync_preferences_saved.";a:3:{i:0;R:37549;i:1;R:35350;i:2;R:37115;}s:91:"1208:facebookbridge-2820e3302268d8d27c6560abeaa08298912d66b2-could_not_delete_link_to_faceb";a:3:{i:0;R:37549;i:1;R:35350;i:2;R:37115;}s:91:"1208:facebookbridge-4688258383c8be52debd9a2f23606a7f4ea5532e-you_have_disconnected_from_fac";a:3:{i:0;R:37549;i:1;R:35350;i:2;R:37115;}s:91:"1208:facebookbridge-00cbb3fd884f4c28131175a3dfb101a6233bde09-unable_to_authenticate_you_wit";a:3:{i:0;R:37549;i:1;R:35350;i:2;R:37115;}s:91:"1208:facebookbridge-702279b387b769c4606607b2ec55ca41cc988f4a-you_must_be_logged_into_facebo";a:3:{i:0;R:37549;i:1;R:35350;i:2;R:37115;}s:91:"1208:facebookbridge-874a9ef57bf7b095e1987227f8a74e58982a5414-there_is_already_a_local_accou";a:3:{i:0;R:37549;i:1;R:35350;i:2;R:37115;}s:90:"1208:facebookbridge-01e682ef71cedbd33b744626ec870dd46f6a2210-you_cannot_register_if_you_do";a:3:{i:0;R:37549;i:1;R:35350;i:2;R:37115;}s:90:"1208:facebookbridge-840263496758a8fc56392bc36dcb7c620a4bd242-an_unknown_error_has_occured.";a:3:{i:0;R:37549;i:1;R:35350;i:2;R:37115;}s:91:"1208:facebookbridge-00d38d07e03ec862ea1b3f1c44bebcc9a1003cf2-this_is_the_first_time_you_hav";a:3:{i:0;R:37549;i:1;R:35350;i:2;R:37115;}s:75:"1208:facebookbridge-244d17e642603c01261ae45f582b912e7543499e-facebook_setup";a:3:{i:0;R:37549;i:1;R:35350;i:2;R:37115;}s:79:"1208:facebookbridge-64383c6f06913c6df1b90e4bd8e57f1d51457d76-connection_options";a:3:{i:0;R:37549;i:1;R:35350;i:2;R:37115;}s:91:"1208:facebookbridge-1c2574b14145598c6fa33cc45425952463977cec-my_text_and_files_are_availabl";a:3:{i:0;R:37549;i:1;R:35350;i:2;R:37115;}s:79:"1208:facebookbridge-a7bff9684e9c4fb2b0187cd81972a1a99249f393-create_new_account";a:3:{i:0;R:37549;i:1;R:35350;i:2;R:37115;}s:91:"1208:facebookbridge-84f3905c73f0943dd56b4c5dbe015f0f975c30c2-create_a_new_user_with_this_ni";a:3:{i:0;R:37549;i:1;R:35350;i:2;R:37115;}s:73:"1208:facebookbridge-3a4eaad2fb5628204eb54cb59c8d56baac637f07-new_nickname";a:3:{i:0;R:37549;i:1;R:35350;i:2;R:37115;}s:91:"1208:facebookbridge-2d5af6a79c80b154bef7d5ff52d6db27755e287f-1-64_lowercase_letters_or_numb";a:3:{i:0;R:37549;i:1;R:35350;i:2;R:37115;}s:67:"1208:facebookbridge-739b11519d45061bc93f4d38854460ecf67a6429-create";a:3:{i:0;R:37549;i:1;R:35350;i:2;R:37115;}s:85:"1208:facebookbridge-b775b749217d4e734ba81e0093a20bbac8185801-connect_existing_account";a:3:{i:0;R:37549;i:1;R:35350;i:2;R:37115;}s:91:"1208:facebookbridge-36e228c1149b4881a4ef91f88f7b2f9b8062d30f-if_you_already_have_an_account";a:3:{i:0;R:37549;i:1;R:35350;i:2;R:37115;}s:78:"1208:facebookbridge-03b13d9f66e7f2a94f311a5146c474184f490258-existing_nickname";a:3:{i:0;R:37549;i:1;R:35350;i:2;R:37115;}s:69:"1208:facebookbridge-8be3c943b1609fffbfc51aad666d0a04adf83c9d-password";a:3:{i:0;R:37549;i:1;R:35350;i:2;R:37115;}s:68:"1208:facebookbridge-eb508f5905b6f621060e2c063fedb41b040ee0bc-connect";a:3:{i:0;R:37549;i:1;R:35350;i:2;R:37115;}s:86:"1208:facebookbridge-38cbc2b2241ff6e84bd71264abd0b941448e5f11-registration_not_allowed.";a:3:{i:0;R:37549;i:1;R:35350;i:2;R:37115;}s:89:"1208:facebookbridge-d496aefd2dd8e3b02a2ef17a7667c75ba1fd5eca-not_a_valid_invitation_code.";a:3:{i:0;R:37549;i:1;R:35350;i:2;R:37115;}s:82:"1208:facebookbridge-af99c57fac97957951bf39669fd880418730fe8a-nickname_not_allowed.";a:3:{i:0;R:37549;i:1;R:35350;i:2;R:37115;}s:91:"1208:facebookbridge-b3bd02b41b8e1fa2de777ba31fb092bae01ccce7-nickname_already_in_use._try_a";a:3:{i:0;R:37549;i:1;R:35350;i:2;R:37115;}s:91:"1208:facebookbridge-203315113e08f9a4795eb3554c697b31fbabb430-error_connecting_user_to_faceb";a:3:{i:0;R:37549;i:1;R:35350;i:2;R:37115;}s:90:"1208:facebookbridge-0cc909be0f2da4ba1a41bb22abd333ee5d822722-invalid_username_or_password.";a:3:{i:0;R:37549;i:1;R:35350;i:2;R:37115;}s:69:"1208:facebookbridge-a856abf052e84df5d6b7e7f715ec6099d7d8dbdc-facebook";a:3:{i:0;R:37549;i:1;R:35350;i:2;R:37115;}s:91:"1208:facebookbridge-1ff4d57cf101a4e008e13d29f5a29fa4c2e8ba10-login_or_register_using_facebo";a:3:{i:0;R:37549;i:1;R:35350;i:2;R:37115;}s:91:"1208:facebookbridge-f9d3e7eac48b95ef478946cae771896e6d216257-facebook_integration_configura";a:3:{i:0;R:37549;i:1;R:35350;i:2;R:37115;}s:79:"1208:facebookbridge-8ee6aa3551d40e2c64214db5ce1aeaa9c1a40220-facebook_settings.";a:3:{i:0;R:37549;i:1;R:35350;i:2;R:37115;}s:91:"1208:facebookbridge-e0f8d6d0958813cd4cfc466819f4ddd48724ee34-a_plugin_for_integrating_statu";a:3:{i:0;R:37549;i:1;R:35350;i:2;R:37115;}s:91:"1208:facebookbridge-f7b87f4fc918376cbcba6e92d29f90ac10240e25-your_facebook_connection_has_b";a:3:{i:0;R:37549;i:1;R:35350;i:2;R:37115;}s:91:"1208:facebookbridge-f2b9be533f4fa91774a0e33b8f45abd097dd638b-hi_1$s,_we_are_sorry_to_inform";a:3:{i:0;R:37549;i:1;R:35350;i:2;R:37115;}s:91:"1208:facebookbridge-b310d8769ca929a95cfe2d1ca2e53925363649a4-contact_the_s_administrator_to";a:3:{i:0;R:37549;i:1;R:35350;i:2;R:37115;}s:91:"1208:facebookbridge-8b8a9e22680f026f7f774fe6dd2833ae44954942-hi_1$s,_we_have_noticed_you_ha";a:3:{i:0;R:37549;i:1;R:35350;i:2;R:37115;}s:84:"1208:firephp-984580ba3423c24ff8362ac0a74885da35dbaf61-the_firephp_plugin_writes_stat";a:3:{i:0;s:28:"out-statusnet-plugin-firephp";i:1;R:35350;i:2;R:37115;}s:76:"1208:followeveryone-19cba005d8d1844537e0c5060e32fe4d56c3172f-follow_everyone";a:3:{i:0;s:35:"out-statusnet-plugin-followeveryone";i:1;R:35350;i:2;R:37115;}s:91:"1208:followeveryone-b5f0d694fead9fac2ba21715514ed9f74e74fbcd-new_users_follow_everyone_at_r";a:3:{i:0;R:37615;i:1;R:35350;i:2;R:37115;}s:87:"1208:forcegroup-ceb8f675e2743d11b7d2357e5ce1508be2ecef3b-could_not_join_user_1$s_to_gro";a:3:{i:0;s:31:"out-statusnet-plugin-forcegroup";i:1;R:35350;i:2;R:37115;}s:87:"1208:forcegroup-2c62c0556d0879e538ed0439dfbd5e553febb7f8-allows_forced_group_membership";a:3:{i:0;R:37618;i:1;R:35350;i:2;R:37115;}s:85:"1208:geonames-779b2bf39d8a55e12907b610463dfe048d80b326-skipping_due_to_recent_web_ser";a:3:{i:0;s:29:"out-statusnet-plugin-geonames";i:1;R:35350;i:2;R:37115;}s:73:"1208:geonames-c99b2fc808c3b5fa8bb20785f375a3e3d326ee83-http_error_code_s.";a:3:{i:0;R:37621;i:1;R:35350;i:2;R:37115;}s:83:"1208:geonames-7b7c712972f79babe18f48e89e73f8593fcee354-empty_http_body_in_response.";a:3:{i:0;R:37621;i:1;R:35350;i:2;R:37115;}s:74:"1208:geonames-034474ede049eab9b582acc6d80475c4e6cc924e-error_1$s_("_2$s").";a:3:{i:0;R:37621;i:1;R:35350;i:2;R:37115;}s:85:"1208:geonames-4f4a7a9ec9d89d3534064647d308b525f116088b-uses_a_href="http_geonames.org";a:3:{i:0;R:37621;i:1;R:35350;i:2;R:37115;}s:83:"1208:geourl-e7239e0bd5ffcd5560c8bf6f4c8ffcf27cd64930-ping_a_href="http_geourl.org_"";a:3:{i:0;s:27:"out-statusnet-plugin-geourl";i:1;R:35350;i:2;R:37115;}s:92:"1208:googleanalytics-5b80ac6db1dbfb83c138a9071639600b9a8075c0-use_a_href="http_www.google.co";a:3:{i:0;s:36:"out-statusnet-plugin-googleanalytics";i:1;R:35350;i:2;R:37115;}s:85:"1208:gravatar-0d550931631bc54043df0de6ac69a655426fbc56-the_gravatar_plugin_allows_use";a:3:{i:0;s:29:"out-statusnet-plugin-gravatar";i:1;R:35350;i:2;R:37115;}s:68:"1208:groupfavorited-277263767152378fdc925f306fa7282d307da7cc-popular";a:3:{i:0;s:35:"out-statusnet-plugin-groupfavorited";i:1;R:35350;i:2;R:37115;}s:87:"1208:groupfavorited-5e2dedab2a9906082144ea7092eba14288cd8211-popular_notices_in_s_group";a:3:{i:0;R:37633;i:1;R:35350;i:2;R:37115;}s:91:"1208:groupfavorited-77422d4981dfa5d462f7e6e0818281efd0201b4a-this_plugin_adds_a_menu_item_f";a:3:{i:0;R:37633;i:1;R:35350;i:2;R:37115;}s:85:"1208:groupfavorited-4829e91f5b344aa796be7343411170e55ba741d3-popular_posts_in_s_group";a:3:{i:0;R:37633;i:1;R:35350;i:2;R:37115;}s:91:"1208:groupfavorited-2a6b758bde15d7fd7aa420ce007dbb7bde6915e4-popular_posts_in_1$s_group,_pa";a:3:{i:0;R:37633;i:1;R:35350;i:2;R:37115;}s:84:"1208:groupprivatemessage-263c2ff57c9b068916973dade24970b61800a1bf-must_be_logged_in.";a:3:{i:0;s:40:"out-statusnet-plugin-groupprivatemessage";i:1;R:35350;i:2;R:37115;}s:95:"1208:groupprivatemessage-de1b87e2d916aa69bbd11c7f36c2747ec4e62d8c-user_s_is_not_allowed_to_send";a:3:{i:0;R:37639;i:1;R:35350;i:2;R:37115;}s:80:"1208:groupprivatemessage-1105e8ae237d3e8c9fc4b1f87288c424196b0491-no_such_group.";a:3:{i:0;R:37639;i:1;R:35350;i:2;R:37115;}s:78:"1208:groupprivatemessage-9cf1b68c1b0ef27b7c68a192a2ea1a2cacfd903e-message_sent";a:3:{i:0;R:37639;i:1;R:35350;i:2;R:37115;}s:91:"1208:groupprivatemessage-a3894b1256ab040ed20a35eedeece8829c62d5ab-direct_message_to_s_sent.";a:3:{i:0;R:37639;i:1;R:35350;i:2;R:37115;}s:88:"1208:groupprivatemessage-051ea99f1e954f2b2022f2c528c9627be55b3e2d-new_message_to_group_s";a:3:{i:0;R:37639;i:1;R:35350;i:2;R:37115;}s:96:"1208:groupprivatemessage-340985c421a04838193b0dbb75291143a3af23af-new_private_message_from_1$s_t";a:3:{i:0;R:37639;i:1;R:35350;i:2;R:37115;}s:95:"1208:groupprivatemessage-5a564a0918c21f41ff3e07fe1e428039c1068ed5-1$s_(_2$s)_sent_a_private_mes";a:3:{i:0;R:37639;i:1;R:35350;i:2;R:37115;}s:71:"1208:groupprivatemessage-cb177c11a14962fa5ec56fa1590f24af19fe1190-inbox";a:3:{i:0;R:37639;i:1;R:35350;i:2;R:37115;}s:96:"1208:groupprivatemessage-5af8edca720de84c14fe188d914743f3958b47c3-private_messages_for_this_grou";a:3:{i:0;R:37639;i:1;R:35350;i:2;R:37115;}s:82:"1208:groupprivatemessage-0ba0a9e78aab247427787f343290cbb2441de337-private_messages";a:3:{i:0;R:37639;i:1;R:35350;i:2;R:37115;}s:75:"1208:groupprivatemessage-1bc4d666c7b53e256ff357ccb85f9ddc9a007fc1-sometimes";a:3:{i:0;R:37639;i:1;R:35350;i:2;R:37115;}s:72:"1208:groupprivatemessage-a91bcce893b5de905ecbd22a99a03889cdcc2544-always";a:3:{i:0;R:37639;i:1;R:35350;i:2;R:37115;}s:71:"1208:groupprivatemessage-80c3052d33ccdee15ffaaa110c5c39072495fe63-never";a:3:{i:0;R:37639;i:1;R:35350;i:2;R:37115;}s:96:"1208:groupprivatemessage-5a9814d43312905e5099ee91d26a2ce541f2d71a-whether_to_allow_private_messa";a:3:{i:0;R:37639;i:1;R:35350;i:2;R:37115;}s:81:"1208:groupprivatemessage-428b3f93280e82bfb916cd8883dea969bf22b6fc-private_senders";a:3:{i:0;R:37639;i:1;R:35350;i:2;R:37115;}s:74:"1208:groupprivatemessage-c756f6af1f03c9ce381cb85934ffb274e2f54af3-everyone";a:3:{i:0;R:37639;i:1;R:35350;i:2;R:37115;}s:72:"1208:groupprivatemessage-6853c98a6f4358bbfed1b3b9c81d308649299b0f-member";a:3:{i:0;R:37639;i:1;R:35350;i:2;R:37115;}s:71:"1208:groupprivatemessage-4e7afebcfbae000b22c7c85e5560f89a2a0280b4-admin";a:3:{i:0;R:37639;i:1;R:35350;i:2;R:37115;}s:95:"1208:groupprivatemessage-6213f767c8b385a72115ddab3f5a97966ef0d388-who_can_send_private_messages";a:3:{i:0;R:37639;i:1;R:35350;i:2;R:37115;}s:95:"1208:groupprivatemessage-303c02bb6966e809f0efde66274b346f30bae069-send_a_direct_message_to_this";a:3:{i:0;R:37639;i:1;R:35350;i:2;R:37115;}s:73:"1208:groupprivatemessage-6176901efaa7515773fc157361e595cd8a7c08c6-message";a:3:{i:0;R:37639;i:1;R:35350;i:2;R:37115;}s:96:"1208:groupprivatemessage-4abb2715e394c576570d690f480238f129586eb1-forced_notice_to_private_group";a:3:{i:0;R:37639;i:1;R:35350;i:2;R:37115;}s:73:"1208:groupprivatemessage-237dfa0a21c8e17a7276cf161eef7e0fba067c47-private";a:3:{i:0;R:37639;i:1;R:35350;i:2;R:37115;}s:96:"1208:groupprivatemessage-6cd14c7748ee5f2ed9d0fff305ff465d588ba642-allow_posting_private_messages";a:3:{i:0;R:37639;i:1;R:35350;i:2;R:37115;}s:91:"1208:groupprivatemessage-c4b37e56377f4db80428ea010f38ff7eea97a907-only_for_logged-in_users.";a:3:{i:0;R:37639;i:1;R:35350;i:2;R:37115;}s:83:"1208:groupprivatemessage-efb2dd671409cb7af56d95cf8760994835d5286c-only_for_members.";a:3:{i:0;R:37639;i:1;R:35350;i:2;R:37115;}s:96:"1208:groupprivatemessage-70de1997ca8bf450bb507e7329c885a410b34bf1-this_group_has_not_received_an";a:3:{i:0;R:37639;i:1;R:35350;i:2;R:37115;}s:79:"1208:groupprivatemessage-2b0da0e70901162cf5025723a9ecebfdc1433539-s_group_inbox";a:3:{i:0;R:37639;i:1;R:35350;i:2;R:37115;}s:91:"1208:groupprivatemessage-3a7d19d04e7287ce65f9dbf631b07f55e3ec8cd5-1$s_group_inbox,_page_2$d";a:3:{i:0;R:37639;i:1;R:35350;i:2;R:37115;}s:96:"1208:groupprivatemessage-298e0f86219ad418a3724c626230005a44ca0c9e-this_is_the_group_inbox,_which";a:3:{i:0;R:37639;i:1;R:35350;i:2;R:37115;}s:78:"1208:groupprivatemessage-ed949ec0316b7ef9a70962061725cb1d2fb1fe80-message_to_s";a:3:{i:0;R:37639;i:1;R:35350;i:2;R:37115;}s:85:"1208:groupprivatemessage-32ae42ba1a14e25dbf744ebded882c847218635e-direct_message_to_s";a:3:{i:0;R:37639;i:1;R:35350;i:2;R:37115;}s:86:"1208:groupprivatemessage-3786bcce007dace76cdd9a919d8594f75b4a7d92-available_characters";a:3:{i:0;R:37639;i:1;R:35350;i:2;R:37115;}s:70:"1208:groupprivatemessage-bf682ed259ea791003a9983073a2a89806c37f7a-send";a:3:{i:0;R:37639;i:1;R:35350;i:2;R:37115;}s:96:"1208:groupprivatemessage-1d80a02cc7186e3213f9812b6cf7f0c6b8b55a7a-group_s_does_not_allow_private";a:3:{i:0;R:37639;i:1;R:35350;i:2;R:37115;}s:96:"1208:groupprivatemessage-c77f3975a155802f6f864ae19c33b30fc84103ba-user_1$s_is_blocked_from_group";a:3:{i:0;R:37639;i:1;R:35350;i:2;R:37115;}s:96:"1208:groupprivatemessage-8cc2311dedd855cd890009fbb3f2bea7802be10d-user_1$s_is_not_a_member_of_gr";a:3:{i:0;R:37639;i:1;R:35350;i:2;R:37115;}s:96:"1208:groupprivatemessage-7c608ec5b543afb9cf663e1f2d61c25c570763eb-user_1$s_is_not_an_administrat";a:3:{i:0;R:37639;i:1;R:35350;i:2;R:37115;}s:96:"1208:groupprivatemessage-bf3d377b074a93a5c2ff5de75a9b030280207bd1-unknown_privacy_settings_for_g";a:3:{i:0;R:37639;i:1;R:35350;i:2;R:37115;}s:95:"1208:groupprivatemessage-d0bd121423001c2f142170813ddbdc6e1342b48b-plural_gettext_that's_too_lon";a:3:{i:0;R:37639;i:1;R:35350;i:2;R:37115;}s:93:"1208:groupprivatemessage-81a10d7c4fc8192ff5d96f33baf42ba97a6f6347-no_group_for_group_message.";a:3:{i:0;R:37639;i:1;R:35350;i:2;R:37115;}s:94:"1208:groupprivatemessage-48016bafc7f13e6bea69e9fc4894691fdd044555-no_sender_for_group_message.";a:3:{i:0;R:37639;i:1;R:35350;i:2;R:37115;}s:95:"1208:groupprivatemessage-7808899c14c2b7b48b23edd179d4d173fcd50131-only_logged-in_users_can_view";a:3:{i:0;R:37639;i:1;R:35350;i:2;R:37115;}s:82:"1208:groupprivatemessage-4af59009de4c05c5bb746859511a14413515bad7-no_such_message.";a:3:{i:0;R:37639;i:1;R:35350;i:2;R:37115;}s:82:"1208:groupprivatemessage-7d7d9bdd15dbc1ee9e19c13b3bb206ab59691af0-group_not_found.";a:3:{i:0;R:37639;i:1;R:35350;i:2;R:37115;}s:86:"1208:groupprivatemessage-479664d5c720a06cb47f302d0fcbc6c36d2303ec-cannot_read_message.";a:3:{i:0;R:37639;i:1;R:35350;i:2;R:37115;}s:82:"1208:groupprivatemessage-6ebb67a23270071c438d5afbd89a4df474478a15-no_sender_found.";a:3:{i:0;R:37639;i:1;R:35350;i:2;R:37115;}s:95:"1208:groupprivatemessage-4035d69cca59ac015208c7fee03097398969b107-message_from_1$s_to_group_2$s";a:3:{i:0;R:37639;i:1;R:35350;i:2;R:37115;}s:96:"1208:groupprivatemessage-79e78c23cdbf061c81ccf54aabe0be7a71a458fc-direct_message_to_group_s_sent";a:3:{i:0;R:37639;i:1;R:35350;i:2;R:37115;}s:56:"1208:imap-7f2f6a15cf8da2b27e5a4af47b58e7ad71c0b3d9-error";a:3:{i:0;s:25:"out-statusnet-plugin-imap";i:1;R:35350;i:2;R:37115;}s:80:"1208:imap-950afc03c245b75f7a697eb4eca77ab1980f926a-imapmanager_should_be_created";a:3:{i:0;R:37690;i:1;R:35350;i:2;R:37115;}s:79:"1208:imap-2d6c9958ab6066a4da3f9db17eeb2b3e5b5e5083-a_mailbox_must_be_specified.";a:3:{i:0;R:37690;i:1;R:35350;i:2;R:37115;}s:76:"1208:imap-f246a4f2cc6e8991d8a340ee22e977236e6e7f91-a_user_must_be_specified.";a:3:{i:0;R:37690;i:1;R:35350;i:2;R:37115;}s:80:"1208:imap-6a2723144e0512ef13774e45145f22b547868ab0-a_password_must_be_specified.";a:3:{i:0;R:37690;i:1;R:35350;i:2;R:37115;}s:81:"1208:imap-753e73afb856315d0bcea32dadcbaf9d0887e12f-a_poll_frequency_must_be_speci";a:3:{i:0;R:37690;i:1;R:35350;i:2;R:37115;}s:81:"1208:imap-7b8e5e93e487896749265840846005974bd54769-the_imap_plugin_allows_for_sta";a:3:{i:0;R:37690;i:1;R:35350;i:2;R:37115;}s:91:"1208:infinitescroll-04578776ac846012ec3c45a74ddf07622ed87470-infinite_scroll_adds_the_follo";a:3:{i:0;s:35:"out-statusnet-plugin-infinitescroll";i:1;R:35350;i:2;R:37115;}s:91:"1208:inprocesscache-d211524bdbe61a041f54f9241bc78ce250f4221d-additional_in-process_cache_fo";a:3:{i:0;s:35:"out-statusnet-plugin-inprocesscache";i:1;R:35350;i:2;R:37115;}s:53:"1208:irc-a68fa8efe4a09d8c0c63ae60426d9366434bccb2-irc";a:3:{i:0;s:24:"out-statusnet-plugin-irc";i:1;R:35350;i:2;R:37115;}s:80:"1208:irc-c8a008c2075f6dff2841fda1a64c777d0badaf49-user_"_1$s"_on_2$s_has_said_th";a:3:{i:0;R:37702;i:1;R:35350;i:2;R:37115;}s:74:"1208:irc-c8d7e1e2f7232a76afcb4b55ce9680080744a15e-you_must_specify_a_host.";a:3:{i:0;R:37702;i:1;R:35350;i:2;R:37115;}s:78:"1208:irc-93c3fa527a3dcd56d6981a082a98997d2758e102-you_must_specify_a_username.";a:3:{i:0;R:37702;i:1;R:35350;i:2;R:37115;}s:80:"1208:irc-2257aa0c8b16305e7f09f42aa99859245d79fb94-you_must_specify_a_"real_name"";a:3:{i:0;R:37702;i:1;R:35350;i:2;R:37115;}s:78:"1208:irc-4622a6d07062f8b08aa73dfaf158c18cfb5fb2c2-you_must_specify_a_nickname.";a:3:{i:0;R:37702;i:1;R:35350;i:2;R:37115;}s:80:"1208:irc-b2da4dd79f62a0025f6bdf53c8ebaef61dacb789-the_irc_plugin_allows_users_to";a:3:{i:0;R:37702;i:1;R:35350;i:2;R:37115;}s:80:"1208:irc-f597cb4282d4cc116a4772f64fa0f4bbe24d890b-could_not_increment_attempts_c";a:3:{i:0;R:37702;i:1;R:35350;i:2;R:37115;}s:80:"1208:irc-baa0a297a79574d86b477f8f804b9dcfae3f3262-your_nickname_is_not_registere";a:3:{i:0;R:37702;i:1;R:35350;i:2;R:37115;}s:80:"1208:irc-90ddc8681cead1a8071a37b9b28a4865dc36f8de-could_not_delete_confirmation.";a:3:{i:0;R:37702;i:1;R:35350;i:2;R:37115;}s:80:"1208:irc-677e1f660dde1b9abb581a621168649bb12359ee-database_error_inserting_irc_w";a:3:{i:0;R:37702;i:1;R:35350;i:2;R:37115;}s:95:"1208:ldapauthentication-96644e0c4bd6d83b191c65362e976fa8f51cf7f5-you_must_specify_a_nickname_at";a:3:{i:0;s:39:"out-statusnet-plugin-ldapauthentication";i:1;R:35350;i:2;R:37115;}s:95:"1208:ldapauthentication-0f02b9a58409cd51e50a9f56216ebac8374add94-if_password_changeable_is_set,";a:3:{i:0;R:37714;i:1;R:35350;i:2;R:37115;}s:95:"1208:ldapauthentication-61d71c0a40749cad0eb97087c9cb4d8253ed68f3-do_you_have_an_ldap_account?_u";a:3:{i:0;R:37714;i:1;R:35350;i:2;R:37115;}s:95:"1208:ldapauthentication-e05c0f896ae7a24e17ff38a0f9c89ba66b40b088-the_ldap_authentication_plugin";a:3:{i:0;R:37714;i:1;R:35350;i:2;R:37115;}s:94:"1208:ldapauthorization-8406e535cd00989e24c2c818750910dd8eb26c40-provider_name_must_be_set._use";a:3:{i:0;s:38:"out-statusnet-plugin-ldapauthorization";i:1;R:35350;i:2;R:37115;}s:94:"1208:ldapauthorization-4ff668ebf5e1a4b60d24abd0533c36b5df4be36b-uniquemember_attribute_must_be";a:3:{i:0;R:37719;i:1;R:35350;i:2;R:37115;}s:93:"1208:ldapauthorization-4e42b9b5854bcad70c9ce4f63d55fb2f3dc39d49-the_ldap_authorization_plugin";a:3:{i:0;R:37719;i:1;R:35350;i:2;R:37115;}s:82:"1208:ldapcommon-9341bdc4bf9c235e8970851521586a172a4edb4f-a_host_must_be_specified.";a:3:{i:0;s:31:"out-statusnet-plugin-ldapcommon";i:1;R:35350;i:2;R:37115;}s:84:"1208:ldapcommon-1e02227223762c8fb802884ca986302550e45771-"basedn"_must_be_specified.";a:3:{i:0;R:37723;i:1;R:35350;i:2;R:37115;}s:87:"1208:ldapcommon-ac3fcb8e6c20a3850434cdf769883cdd74459c07-the_username_attribute_must_be";a:3:{i:0;R:37723;i:1;R:35350;i:2;R:37115;}s:87:"1208:ldapcommon-2d37902536eed8d50ebb692b8907c6a232fb2cf8-could_not_connect_to_ldap_serv";a:3:{i:0;R:37723;i:1;R:35350;i:2;R:37115;}s:87:"1208:ldapcommon-2f308bdb9e69f6bcafce5a43fcae169e37413b1c-could_not_connect_to_ldap_serv";a:3:{i:0;R:37723;i:1;R:35350;i:2;R:37115;}s:83:"1208:lilurl-1b66066cc18053aee165ba7e1fc3aa7db84598ae-a_serviceurl_must_be_specified";a:3:{i:0;s:27:"out-statusnet-plugin-lilurl";i:1;R:35350;i:2;R:37115;}s:82:"1208:lilurl-4bac8ac0c1b38d73219fb01e51bd6cf869b58946-uses_a_href="http_1$s_"_1$s_a";a:3:{i:0;R:37729;i:1;R:35350;i:2;R:37115;}s:74:"1208:linkback-7817d236e6fcbd18d9d6d65df29b4694ac1a0053-1$s's_status_on_2$s";a:3:{i:0;s:29:"out-statusnet-plugin-linkback";i:1;R:35350;i:2;R:37115;}s:85:"1208:linkback-ba2b62d5d44caeeee4320f92454eb0908a0cd95c-notify_blog_authors_when_their";a:3:{i:0;R:37732;i:1;R:35350;i:2;R:37115;}s:88:"1208:linkpreview-e896ea99e35e96c1f66a5a5440a54b263846fe06-ui_extension_for_previewing_th";a:3:{i:0;s:32:"out-statusnet-plugin-linkpreview";i:1;R:35350;i:2;R:37115;}s:87:"1208:linkpreview-07363d7dbc93d7e4d63ece8ac5e72bf52dd64506-there_was_a_problem_with_your";a:3:{i:0;R:37735;i:1;R:35350;i:2;R:37115;}s:88:"1208:linkpreview-b1861600b4b4556c6e37e59cae1965e003ea54e1-invalid_format;_only_json_supp";a:3:{i:0;R:37735;i:1;R:35350;i:2;R:37115;}s:70:"1208:linkpreview-4479bacf0c412586db80e97022266dc0a385927e-invalid_url.";a:3:{i:0;R:37735;i:1;R:35350;i:2;R:37115;}s:86:"1208:logfilter-6bd072e94df265a504302229a2eb0d74f0f33bef-provides_server-side_setting_t";a:3:{i:0;s:30:"out-statusnet-plugin-logfilter";i:1;R:35350;i:2;R:37115;}s:62:"1208:mapstraction-ab478f3efc840eebab919dff1b9512286f70c10c-map";a:3:{i:0;s:33:"out-statusnet-plugin-mapstraction";i:1;R:35350;i:2;R:37115;}s:68:"1208:mapstraction-3b7b17a9278b4bd4c1bf7d48a5d7f54fff51d1a2-full_size";a:3:{i:0;R:37742;i:1;R:35350;i:2;R:37115;}s:89:"1208:mapstraction-bc8d0d0eee30ac76e28db55ba19df36633b962ef-show_maps_of_users'_and_friend";a:3:{i:0;R:37742;i:1;R:35350;i:2;R:37115;}s:72:"1208:mapstraction-d7c2db9cd7659af98881eb29f73ab5a6e4ffe216-s_friends_map";a:3:{i:0;R:37742;i:1;R:35350;i:2;R:37115;}s:84:"1208:mapstraction-a96dc38005cd45d06734ba2a0f35d496d2de3062-1$s_friends_map,_page_2$d";a:3:{i:0;R:37742;i:1;R:35350;i:2;R:37115;}s:72:"1208:mapstraction-bf5d92cc3c1fa7c0e35b2e97d4719743a0841009-no_such_user.";a:3:{i:0;R:37742;i:1;R:35350;i:2;R:37115;}s:79:"1208:mapstraction-993a855dcd4c17bd2da52f82496164b0f7f8e50e-user_has_no_profile.";a:3:{i:0;R:37742;i:1;R:35350;i:2;R:37115;}s:64:"1208:mapstraction-1ecb811f7c38c76feef12cfda636f9c9104f9903-s_map";a:3:{i:0;R:37742;i:1;R:35350;i:2;R:37115;}s:85:"1208:memcache-cf14bed3a7893ca5b23e460b8b88f1180a54eebd-use_a_href="http_memcached.org";a:3:{i:0;s:29:"out-statusnet-plugin-memcache";i:1;R:35350;i:2;R:37115;}s:86:"1208:memcached-cf14bed3a7893ca5b23e460b8b88f1180a54eebd-use_a_href="http_memcached.org";a:3:{i:0;s:30:"out-statusnet-plugin-memcached";i:1;R:35350;i:2;R:37115;}s:83:"1208:meteor-03f159253a4cb03f57adf4d43cce5540c780a5fb-could_not_connect_to_1$s_on_2$";a:3:{i:0;s:27:"out-statusnet-plugin-meteor";i:1;R:35350;i:2;R:37115;}s:82:"1208:meteor-bfcac962ab4db028df09ede875243b135f1fbdce-error_adding_meteor_message_"";a:3:{i:0;R:37755;i:1;R:35350;i:2;R:37115;}s:83:"1208:meteor-548c28392e194e999fb3eb1dc0d571b93d2d7968-plugin_to_do_"real_time"_updat";a:3:{i:0;R:37755;i:1;R:35350;i:2;R:37115;}s:83:"1208:minify-c7d403be16455b6c9baaff34a3851beea96b1a6b-the_minify_plugin_minifies_sta";a:3:{i:0;s:27:"out-statusnet-plugin-minify";i:1;R:35350;i:2;R:37115;}s:83:"1208:minify-26c39961785943d8ea74b37ae2e4e3068fa7f9d5-the_parameter_"f"_is_not_a_val";a:3:{i:0;R:37759;i:1;R:35350;i:2;R:37115;}s:82:"1208:minify-6700863fa49e4ba40fcb629bb5114d953f86677d-the_parameter_"f"_is_required";a:3:{i:0;R:37759;i:1;R:35350;i:2;R:37115;}s:77:"1208:minify-82e1a0c795b4b4e9de874290f8e88c71a9a913ed-file_type_not_supported.";a:3:{i:0;R:37759;i:1;R:35350;i:2;R:37115;}s:89:"1208:mobileprofile-7ec13d4ad9a8575b619fe142fd3b5893ba2305fa-this_page_is_not_available_in";a:3:{i:0;s:34:"out-statusnet-plugin-mobileprofile";i:1;R:35350;i:2;R:37115;}s:90:"1208:mobileprofile-6f9c4a22cbd5da7edc8b21370a6b5170f163e9e8-switch_to_desktop_site_layout.";a:3:{i:0;R:37764;i:1;R:35350;i:2;R:37115;}s:89:"1208:mobileprofile-6bac7d8025ed27ea0f95cdd3c52cd07ca0c827c2-switch_to_mobile_site_layout.";a:3:{i:0;R:37764;i:1;R:35350;i:2;R:37115;}s:90:"1208:mobileprofile-be8dab7fff816bed7044b66a8d157586acaff07d-xhtml_mobileprofile_output_for";a:3:{i:0;R:37764;i:1;R:35350;i:2;R:37115;}s:86:"1208:modhelper-8e18e080c9b60746470bb5cfe9cfede55cb0572f-lets_users_who_have_been_manua";a:3:{i:0;s:30:"out-statusnet-plugin-modhelper";i:1;R:35350;i:2;R:37115;}s:74:"1208:modplus-993a855dcd4c17bd2da52f82496164b0f7f8e50e-user_has_no_profile.";a:3:{i:0;s:28:"out-statusnet-plugin-modplus";i:1;R:35350;i:2;R:37115;}s:64:"1208:modplus-105d6e4b9b834932eecfac4f42201905ba5ba3bc-1$s_on_2$s";a:3:{i:0;R:37771;i:1;R:35350;i:2;R:37115;}s:84:"1208:modplus-595e2a6484bafdc02f18bf8791d0a61573ea207a-this_remote_profile_is_registe";a:3:{i:0;R:37771;i:1;R:35350;i:2;R:37115;}s:83:"1208:modplus-00d514943d45e1d170067307f0fd71424c33d29c-site_moderators_have_silenced";a:3:{i:0;R:37771;i:1;R:35350;i:2;R:37115;}s:84:"1208:modplus-7fc13dbb04fa0e02156f1946bfb36fa301e7279d-ui_extension_for_profile_moder";a:3:{i:0;R:37771;i:1;R:35350;i:2;R:37115;}s:79:"1208:modplus-9a6db42f8769231ee940b590520367d189715213-remote_profile_options...";a:3:{i:0;R:37771;i:1;R:35350;i:2;R:37115;}s:67:"1208:mollom-a212280514a8d5548fc8e591cecaa870bf3b41b1-spam_detected.";a:3:{i:0;s:27:"out-statusnet-plugin-mollom";i:1;R:35350;i:2;R:37115;}s:80:"1208:msn-176cd70c9011feaf9f1e59a8ef0c902fde26ec89-send_me_a_message_to_post_a_no";a:3:{i:0;s:24:"out-statusnet-plugin-msn";i:1;R:35350;i:2;R:37115;}s:80:"1208:msn-f8f7497ad20917fa5fc8ba9bc2bf3e59f44d7c66-database_error_inserting_queue";a:3:{i:0;R:37780;i:1;R:35350;i:2;R:37115;}s:53:"1208:msn-f2b393e855ab3a9833be975df39258d992071369-msn";a:3:{i:0;R:37780;i:1;R:35350;i:2;R:37115;}s:70:"1208:msn-d6f0fab179a448d168432e3cbbec2710ec8a7707-must_specify_a_user.";a:3:{i:0;R:37780;i:1;R:35350;i:2;R:37115;}s:74:"1208:msn-603894091956deda39c52c5998ae06638dd7f4f3-must_specify_a_password.";a:3:{i:0;R:37780;i:1;R:35350;i:2;R:37115;}s:74:"1208:msn-56bad35826b898b761705d6c6e6fd86d87656b51-must_specify_a_nickname.";a:3:{i:0;R:37780;i:1;R:35350;i:2;R:37115;}s:80:"1208:msn-02d9063ab01de1653f2e1ce9fa2e7c395fe9a9b0-the_msn_plugin_allows_users_to";a:3:{i:0;R:37780;i:1;R:35350;i:2;R:37115;}s:88:"1208:noticetitle-36ed8faf6565e77aa6f86feeecaab54a035b05ec-adds_optional_titles_to_notice";a:3:{i:0;s:32:"out-statusnet-plugin-noticetitle";i:1;R:35350;i:2;R:37115;}s:87:"1208:noticetitle-b857482d71f182880a53f9c4a94f544de551ed82-plural_gettext_the_notice_tit";a:3:{i:0;R:37788;i:1;R:35350;i:2;R:37115;}s:67:"1208:noticetitle-59f6071bc1e36d16bd4735c7781c734d7be14572-1$s_-_2$s";a:3:{i:0;R:37788;i:1;R:35350;i:2;R:37115;}s:59:"1208:omb-7d3768264fb28f658bfa8d6c8bf4a992c62b5772-subscribe";a:3:{i:0;s:24:"out-statusnet-plugin-omb";i:1;R:35350;i:2;R:37115;}s:56:"1208:omb-8f71e98756779fe804c9006e12285a4d482038c9-accept";a:3:{i:0;R:37792;i:1;R:35350;i:2;R:37115;}s:56:"1208:omb-2c602588037cc364232a4abec0e7997f9b6df8db-reject";a:3:{i:0;R:37792;i:1;R:35350;i:2;R:37115;}s:80:"1208:omb-7f97426de9268b8b423a8d1fda973ede66b196e5-you_cannot_subscribe_to_an_omb";a:3:{i:0;R:37792;i:1;R:35350;i:2;R:37115;}s:80:"1208:omb-cb0572a577a617172b1b991af5c11ba679b18e2c-you_cannot_list_an_omb_0.1_rem";a:3:{i:0;R:37792;i:1;R:35350;i:2;R:37115;}s:80:"1208:omb-c397c568882da6460b23227140eaac28afbc4a10-you_cannot_(un)list_an_omb_0.1";a:3:{i:0;R:37792;i:1;R:35350;i:2;R:37115;}s:79:"1208:omb-0719707d8937cffe3c9ee29bf24d30662c7d78b0-could_not_delete_subscription";a:3:{i:0;R:37792;i:1;R:35350;i:2;R:37115;}s:80:"1208:omb-65f2186d29757e681577a7d2bf02f2ea496d722d-a_sample_plugin_to_show_basics";a:3:{i:0;R:37792;i:1;R:35350;i:2;R:37115;}s:99:"1208:openexternallinktarget-aabc4f9a0e0d49c6311543104e246d0345ca58b9-opens_external_links_(i.e._wit";a:3:{i:0;s:43:"out-statusnet-plugin-openexternallinktarget";i:1;R:35350;i:2;R:37115;}s:81:"1208:openid-5a8d197d2cf854b187593846d832de1206d73a9c-openid_identity_verification";a:3:{i:0;s:27:"out-statusnet-plugin-openid";i:1;R:35350;i:2;R:37115;}s:83:"1208:openid-93f5205fae171bed0270763a20182517b1c3bf1a-this_page_should_only_be_reach";a:3:{i:0;R:37803;i:1;R:35350;i:2;R:37115;}s:82:"1208:openid-2a637b03ae2dfba8b244e150372489120e3fed46-s_has_asked_to_verify_your_id";a:3:{i:0;R:37803;i:1;R:35350;i:2;R:37115;}s:61:"1208:openid-47d80be3eb9761c60ead0914e890449394e75cff-continue";a:3:{i:0;R:37803;i:1;R:35350;i:2;R:37115;}s:59:"1208:openid-08be17603e6624ef0e43fb8c8d30fb8ed74cc6fb-cancel";a:3:{i:0;R:37803;i:1;R:35350;i:2;R:37115;}s:72:"1208:openid-df90faf2e24293b614756215fb8f256d75c9e1cc-unavailable_action.";a:3:{i:0;R:37803;i:1;R:35350;i:2;R:37115;}s:71:"1208:openid-9c6658de7cd04cc3607a3507e30afa28b31ff267-login_to_the_site.";a:3:{i:0;R:37803;i:1;R:35350;i:2;R:37115;}s:58:"1208:openid-101c5b3380df50f8272cda033e485a7407894ac4-login";a:3:{i:0;R:37803;i:1;R:35350;i:2;R:37115;}s:61:"1208:openid-1f6c8e9f7dc62aba548bbb04817f68a16aa33d00-help_me!";a:3:{i:0;R:37803;i:1;R:35350;i:2;R:37115;}s:57:"1208:openid-502c2509077d187d0d39ff8398227aba70a9ed8e-help";a:3:{i:0;R:37803;i:1;R:35350;i:2;R:37115;}s:79:"1208:openid-80a823889c9cc59bded651059608a09a59f1165d-search_for_people_or_text.";a:3:{i:0;R:37803;i:1;R:35350;i:2;R:37115;}s:59:"1208:openid-b61fedbdb869abc7892b98f6857bdebaa05f433d-search";a:3:{i:0;R:37803;i:1;R:35350;i:2;R:37115;}s:59:"1208:openid-11ba792c1b37e37f6e10f21448e5ac3ab1fe88fd-openid";a:3:{i:0;R:37803;i:1;R:35350;i:2;R:37115;}s:83:"1208:openid-652023a68f94720c8eb2234f402ca595756d8be4-login_or_register_with_openid.";a:3:{i:0;R:37803;i:1;R:35350;i:2;R:37115;}s:75:"1208:openid-2716a97583b5c73932cec89184db6046d4c580e0-add_or_remove_openids.";a:3:{i:0;R:37803;i:1;R:35350;i:2;R:37115;}s:83:"1208:openid-5df15d898a8ce68505fbeb4f3c74b0fd41d81650-(have_an_openid_(http_openid.n";a:3:{i:0;R:37803;i:1;R:35350;i:2;R:37115;}s:83:"1208:openid-2578c0aa851df3554b841f799ddd6fb8e23c4300-(have_an_openid_(http_openid.n";a:3:{i:0;R:37803;i:1;R:35350;i:2;R:37115;}s:83:"1208:openid-e43f4080f691cf742edd05e2f1fecb3255122355-(have_an_openid_(http_openid.n";a:3:{i:0;R:37803;i:1;R:35350;i:2;R:37115;}s:74:"1208:openid-b48db1ebcb133e1f88c0833d115d5076efb6a3bb-openid_configuration.";a:3:{i:0;R:37803;i:1;R:35350;i:2;R:37115;}s:82:"1208:openid-3a537d87483b810de997f621f82697c5430f1355-use_a_href="http_openid.net_"";a:3:{i:0;R:37803;i:1;R:35350;i:2;R:37115;}s:65:"1208:openid-380610f1720987eed1b0ca12ff73c879139fc098-openid_login";a:3:{i:0;R:37803;i:1;R:35350;i:2;R:37115;}s:68:"1208:openid-fc6da2a5e234b1747b1eb607f9611796836676a9-openid_provider";a:3:{i:0;R:37803;i:1;R:35350;i:2;R:37115;}s:73:"1208:openid-3d29dcc84297741a72fc8b70e548adcf95fe9270-enter_your_username.";a:3:{i:0;R:37803;i:1;R:35350;i:2;R:37115;}s:83:"1208:openid-55eaf7d151c2e273534758d68ca6b98aa92e7ced-you_will_be_sent_to_the_provid";a:3:{i:0;R:37803;i:1;R:35350;i:2;R:37115;}s:63:"1208:openid-10691a643296887ba5aa51cec5de3b8c46b31592-openid_url";a:3:{i:0;R:37803;i:1;R:35350;i:2;R:37115;}s:69:"1208:openid-4aa8805a69481fd28370a916d2a3ad4304ddff61-your_openid_url.";a:3:{i:0;R:37803;i:1;R:35350;i:2;R:37115;}s:71:"1208:openid-fbbbfe3331edb0c2ce74bef6f8d5749c52c3017b-already_logged_in.";a:3:{i:0;R:37803;i:1;R:35350;i:2;R:37115;}s:82:"1208:openid-07363d7dbc93d7e4d63ece8ac5e72bf52dd64506-there_was_a_problem_with_your";a:3:{i:0;R:37803;i:1;R:35350;i:2;R:37115;}s:82:"1208:openid-01e682ef71cedbd33b744626ec870dd46f6a2210-you_cannot_register_if_you_do";a:3:{i:0;R:37803;i:1;R:35350;i:2;R:37115;}s:82:"1208:openid-840263496758a8fc56392bc36dcb7c620a4bd242-an_unknown_error_has_occured.";a:3:{i:0;R:37803;i:1;R:35350;i:2;R:37115;}s:83:"1208:openid-8e725cb160b1b9b4e4e1e4ae7d7e7c3318dc411e-this_is_the_first_time_you_hav";a:3:{i:0;R:37803;i:1;R:35350;i:2;R:37115;}s:73:"1208:openid-93031ab8d39c136a35a46210c61542cba45d79b9-openid_account_setup";a:3:{i:0;R:37803;i:1;R:35350;i:2;R:37115;}s:71:"1208:openid-a7bff9684e9c4fb2b0187cd81972a1a99249f393-create_new_account";a:3:{i:0;R:37803;i:1;R:35350;i:2;R:37115;}s:83:"1208:openid-84f3905c73f0943dd56b4c5dbe015f0f975c30c2-create_a_new_user_with_this_ni";a:3:{i:0;R:37803;i:1;R:35350;i:2;R:37115;}s:65:"1208:openid-3a4eaad2fb5628204eb54cb59c8d56baac637f07-new_nickname";a:3:{i:0;R:37803;i:1;R:35350;i:2;R:37115;}s:83:"1208:openid-2d5af6a79c80b154bef7d5ff52d6db27755e287f-1-64_lowercase_letters_or_numb";a:3:{i:0;R:37803;i:1;R:35350;i:2;R:37115;}s:58:"1208:openid-84add5b2952787581cb9a8851eef63d1ec75d22b-email";a:3:{i:0;R:37803;i:1;R:35350;i:2;R:37115;}s:83:"1208:openid-8b8f6db0e466bf3bf17d8370672093f3fce41126-used_only_for_updates,_announc";a:3:{i:0;R:37803;i:1;R:35350;i:2;R:37115;}s:83:"1208:openid-1c2574b14145598c6fa33cc45425952463977cec-my_text_and_files_are_availabl";a:3:{i:0;R:37803;i:1;R:35350;i:2;R:37115;}s:59:"1208:openid-739b11519d45061bc93f4d38854460ecf67a6429-create";a:3:{i:0;R:37803;i:1;R:35350;i:2;R:37115;}s:77:"1208:openid-b775b749217d4e734ba81e0093a20bbac8185801-connect_existing_account";a:3:{i:0;R:37803;i:1;R:35350;i:2;R:37115;}s:83:"1208:openid-9757e41d57148c92a73534dc61899da0ef2df038-if_you_already_have_an_account";a:3:{i:0;R:37803;i:1;R:35350;i:2;R:37115;}s:70:"1208:openid-03b13d9f66e7f2a94f311a5146c474184f490258-existing_nickname";a:3:{i:0;R:37803;i:1;R:35350;i:2;R:37115;}s:61:"1208:openid-8be3c943b1609fffbfc51aad666d0a04adf83c9d-password";a:3:{i:0;R:37803;i:1;R:35350;i:2;R:37115;}s:60:"1208:openid-eb508f5905b6f621060e2c063fedb41b040ee0bc-connect";a:3:{i:0;R:37803;i:1;R:35350;i:2;R:37115;}s:83:"1208:openid-830ae36c85f41451ee06d64cb51803df70db27b8-openid_authentication_cancelle";a:3:{i:0;R:37803;i:1;R:35350;i:2;R:37115;}s:83:"1208:openid-ae98ec4e30e86ee05d694c9f1df7eaed8b191426-openid_authentication_failed_s";a:3:{i:0;R:37803;i:1;R:35350;i:2;R:37115;}s:82:"1208:openid-82e522ca744d5871d8cdd5912c0a03e63afbd14f-openid_authentication_aborted";a:3:{i:0;R:37803;i:1;R:35350;i:2;R:37115;}s:78:"1208:openid-38cbc2b2241ff6e84bd71264abd0b941448e5f11-registration_not_allowed.";a:3:{i:0;R:37803;i:1;R:35350;i:2;R:37115;}s:81:"1208:openid-d496aefd2dd8e3b02a2ef17a7667c75ba1fd5eca-not_a_valid_invitation_code.";a:3:{i:0;R:37803;i:1;R:35350;i:2;R:37115;}s:74:"1208:openid-af99c57fac97957951bf39669fd880418730fe8a-nickname_not_allowed.";a:3:{i:0;R:37803;i:1;R:35350;i:2;R:37115;}s:83:"1208:openid-b3bd02b41b8e1fa2de777ba31fb092bae01ccce7-nickname_already_in_use._try_a";a:3:{i:0;R:37803;i:1;R:35350;i:2;R:37115;}s:77:"1208:openid-1f45d385c7e481a6b9a2684505e2033192e102cf-stored_openid_not_found.";a:3:{i:0;R:37803;i:1;R:35350;i:2;R:37115;}s:83:"1208:openid-d683b662c9f70fa6f12db89440d53426a1a4cc49-creating_new_account_for_openi";a:3:{i:0;R:37803;i:1;R:35350;i:2;R:37115;}s:82:"1208:openid-0cc909be0f2da4ba1a41bb22abd333ee5d822722-invalid_username_or_password.";a:3:{i:0;R:37803;i:1;R:35350;i:2;R:37115;}s:83:"1208:openid-a07c803f6cf055c7464fa32241dc0da38f15f1b8-error_connecting_user_to_openi";a:3:{i:0;R:37803;i:1;R:35350;i:2;R:37115;}s:83:"1208:openid-af82148de80e34c6e4bfd04ed58241da32ca966a-cannot_instantiate_openid_cons";a:3:{i:0;R:37803;i:1;R:35350;i:2;R:37115;}s:72:"1208:openid-257abc46fa43c1fd39a8c8b86d6c36d510235c3f-not_a_valid_openid.";a:3:{i:0;R:37803;i:1;R:35350;i:2;R:37115;}s:70:"1208:openid-6e08026207bcb7a2fa76ced7c36bce6780858962-openid_failure_s.";a:3:{i:0;R:37803;i:1;R:35350;i:2;R:37115;}s:83:"1208:openid-e37a16b943893aa57f0e9c1c57ac733cad593323-could_not_redirect_to_server_s";a:3:{i:0;R:37803;i:1;R:35350;i:2;R:37115;}s:83:"1208:openid-3ffaf4df0c67433ae1f2fb7637a038d1034ee139-this_form_should_automatically";a:3:{i:0;R:37803;i:1;R:35350;i:2;R:37115;}s:78:"1208:openid-e30b73abf74247ec107ae4a13a6eac231bc503ff-error_saving_the_profile.";a:3:{i:0;R:37803;i:1;R:35350;i:2;R:37115;}s:75:"1208:openid-dd1330a942e04d0f774a52d9bc8e4debe4d157b8-error_saving_the_user.";a:3:{i:0;R:37803;i:1;R:35350;i:2;R:37115;}s:83:"1208:openid-9afe1e49a87d51303b8f6e7301404fbbb2583cc3-unauthorized_url_used_for_open";a:3:{i:0;R:37803;i:1;R:35350;i:2;R:37115;}s:76:"1208:openid-483723d8b4289745da82b317d6b732f38e322e17-openid_login_submission";a:3:{i:0;R:37803;i:1;R:35350;i:2;R:37115;}s:82:"1208:openid-f374a3d81c03ba22530dbf2572c5f48ed376c14a-requesting_authorization_from";a:3:{i:0;R:37803;i:1;R:35350;i:2;R:37115;}s:83:"1208:openid-2572bb72a3125721c39ae5cb8513eaf6f0eac90f-if_you_are_not_redirected_to_y";a:3:{i:0;R:37803;i:1;R:35350;i:2;R:37115;}s:68:"1208:openid-cccbded49f8c0881ecac52498ec18fc9386ee1ec-openid_settings";a:3:{i:0;R:37803;i:1;R:35350;i:2;R:37115;}s:68:"1208:openid-675282e12ae976d0ee4e21d1a7c6ca0a11327665-openid_settings";a:3:{i:0;R:37803;i:1;R:35350;i:2;R:37115;}s:82:"1208:openid-441db1776084261162b118e1a812d13ea08993e4-invalid_provider_url._maximum";a:3:{i:0;R:37803;i:1;R:35350;i:2;R:37115;}s:83:"1208:openid-351016a6b8cce8f91a1c00112c08cf116cb00d51-invalid_team_name._maximum_len";a:3:{i:0;R:37803;i:1;R:35350;i:2;R:37115;}s:69:"1208:openid-5b493f1ffbc18426147459ee1409cff043f8090d-trusted_provider";a:3:{i:0;R:37803;i:1;R:35350;i:2;R:37115;}s:82:"1208:openid-9f9ccc188b116eb8a2e9347f73bc4d822d25acee-by_default,_users_are_allowed";a:3:{i:0;R:37803;i:1;R:35350;i:2;R:37115;}s:65:"1208:openid-de1f83e4a8a34d9233699f84729caca28208555d-provider_url";a:3:{i:0;R:37803;i:1;R:35350;i:2;R:37115;}s:83:"1208:openid-a601d218ff1474c6ae1b577a66a3fbffadd303d2-all_openid_logins_will_be_sent";a:3:{i:0;R:37803;i:1;R:35350;i:2;R:37115;}s:82:"1208:openid-a5ca6bf7e2c873e113bcc8131a765881980d6175-append_a_username_to_base_url";a:3:{i:0;R:37803;i:1;R:35350;i:2;R:37115;}s:82:"1208:openid-65446a8994c019c9c5781ed4f772275258968bec-login_form_will_show_the_base";a:3:{i:0;R:37803;i:1;R:35350;i:2;R:37115;}s:66:"1208:openid-53a83574ddd391e778b772f2abd04a8af46316e3-required_team";a:3:{i:0;R:37803;i:1;R:35350;i:2;R:37115;}s:83:"1208:openid-3a828bf6557854375e1f466e8fc4277a05c2a12d-only_allow_logins_from_users_i";a:3:{i:0;R:37803;i:1;R:35350;i:2;R:37115;}s:60:"1208:openid-6756269d25a095aca8f423090dd88c1a8a592bb4-options";a:3:{i:0;R:37803;i:1;R:35350;i:2;R:37115;}s:76:"1208:openid-160f43968a8d4bb13f9f3f36944e69aac10d0a4d-enable_openid-only_mode";a:3:{i:0;R:37803;i:1;R:35350;i:2;R:37115;}s:83:"1208:openid-f2ca660519d5482bf7c19e558558f3cbe413d016-require_all_users_to_login_via";a:3:{i:0;R:37803;i:1;R:35350;i:2;R:37115;}s:57:"1208:openid-e85726b34723718d86eeb40ab996e21219883557-save";a:3:{i:0;R:37803;i:1;R:35350;i:2;R:37115;}s:74:"1208:openid-03d4c9f0ecbafa10e34d84d6efc86eaa512db77a-save_openid_settings.";a:3:{i:0;R:37803;i:1;R:35350;i:2;R:37115;}s:67:"1208:openid-8e2de1e8b1af7cd2b403bd0d27c71332a55ac628-not_logged_in.";a:3:{i:0;R:37803;i:1;R:35350;i:2;R:37115;}s:82:"1208:openid-fb650282607c544d29f638a32048d0b962d0aa95-you_already_have_this_openid!";a:3:{i:0;R:37803;i:1;R:35350;i:2;R:37115;}s:82:"1208:openid-ed2e5d303944cfbc6b5b3bc34f957484b80d9c79-someone_else_already_has_this";a:3:{i:0;R:37803;i:1;R:35350;i:2;R:37115;}s:75:"1208:openid-4dee9d3d07f1a82fa1272db4cf6776235b3884e9-error_connecting_user.";a:3:{i:0;R:37803;i:1;R:35350;i:2;R:37115;}s:76:"1208:openid-fbd14b4aac546f13c679a60b5fa1ef08f5db67ec-error_updating_profile.";a:3:{i:0;R:37803;i:1;R:35350;i:2;R:37115;}s:65:"1208:openid-e58cca408b0d88f98c929d734e5d7c8849a02c8b-openid_login";a:3:{i:0;R:37803;i:1;R:35350;i:2;R:37115;}s:68:"1208:openid-222e16c3a4183ba37d97529a1fb0a791477c7e9c-openid_settings";a:3:{i:0;R:37803;i:1;R:35350;i:2;R:37115;}s:82:"1208:openid-21ff53303f80948f06f0e1fc75c2ec04cca8b544-openid_(_doc.openid_)_lets_yo";a:3:{i:0;R:37803;i:1;R:35350;i:2;R:37115;}s:63:"1208:openid-319dad068cebf4235f174be68358dc88ad7cbf44-add_openid";a:3:{i:0;R:37803;i:1;R:35350;i:2;R:37115;}s:83:"1208:openid-b847bc940d810833183bc09bc7a9d9aac182add4-if_you_want_to_add_an_openid_t";a:3:{i:0;R:37803;i:1;R:35350;i:2;R:37115;}s:56:"1208:openid-e1562fed201c341ce7bd08b9cd421f3b379222b8-add";a:3:{i:0;R:37803;i:1;R:35350;i:2;R:37115;}s:66:"1208:openid-4174d587250151046a36e8e2b16b07a0aff9e535-remove_openid";a:3:{i:0;R:37803;i:1;R:35350;i:2;R:37115;}s:83:"1208:openid-37a9e1533a9bbeea628a951d6d8e296789ab8f08-removing_your_only_openid_woul";a:3:{i:0;R:37803;i:1;R:35350;i:2;R:37115;}s:82:"1208:openid-efb85eb0234f6a6313f14785bc62ca97d7fb581f-you_can_remove_an_openid_from";a:3:{i:0;R:37803;i:1;R:35350;i:2;R:37115;}s:59:"1208:openid-939ebba8a23af24dea8e62329e27e07db38c49d9-remove";a:3:{i:0;R:37803;i:1;R:35350;i:2;R:37115;}s:73:"1208:openid-66f78270f553befa099feb8528c34924a5bd68db-openid_trusted_sites";a:3:{i:0;R:37803;i:1;R:35350;i:2;R:37115;}s:83:"1208:openid-8f744e10f0d86a958690ae66e5e1c046e343a603-the_following_sites_are_allowe";a:3:{i:0;R:37803;i:1;R:35350;i:2;R:37115;}s:78:"1208:openid-ccb272806a34bf602855ac92782ea016144da166-cannot_add_new_providers.";a:3:{i:0;R:37803;i:1;R:35350;i:2;R:37115;}s:78:"1208:openid-674f224854ecf6f0f452e50e257cc88c27cc9189-something_weird_happened.";a:3:{i:0;R:37803;i:1;R:35350;i:2;R:37115;}s:78:"1208:openid-4ae5ee49058c19b0a3bf1cc192315a14942f4d21-no_such_openid_trustroot.";a:3:{i:0;R:37803;i:1;R:35350;i:2;R:37115;}s:72:"1208:openid-fb10101abff474a6883bd8abb1ee776a0bb437de-trustroots_removed.";a:3:{i:0;R:37803;i:1;R:35350;i:2;R:37115;}s:68:"1208:openid-6439f123440bb18ee92b6acdc831eb97a518da96-no_such_openid.";a:3:{i:0;R:37803;i:1;R:35350;i:2;R:37115;}s:83:"1208:openid-07d75c77903e46e6e175cf22da895e4a4aa38763-that_openid_does_not_belong_to";a:3:{i:0;R:37803;i:1;R:35350;i:2;R:37115;}s:68:"1208:openid-6f096d4c430e9340dc12b8756f0c1784f98cc0ae-openid_removed.";a:3:{i:0;R:37803;i:1;R:35350;i:2;R:37115;}s:82:"1208:openid-fcb516b840ffa6b4bd9b00e6ee0f3954d4c0a534-you_are_not_authorized_to_use";a:3:{i:0;R:37803;i:1;R:35350;i:2;R:37115;}s:83:"1208:openid-4e802407142b97537448f98bffc70f8d2c1bbac6-just_an_openid_provider._nothi";a:3:{i:0;R:37803;i:1;R:35350;i:2;R:37115;}s:83:"1208:openid-24e9a703779d506cd758c38f1a8f28c44a3c0ef9-for_security_reasons,_please_r";a:3:{i:0;R:37803;i:1;R:35350;i:2;R:37115;}s:83:"1208:openid-21863a636c7a2d74018a96f42324b9051cfaa5fb-login_with_an_openid_(_doc.ope";a:3:{i:0;R:37803;i:1;R:35350;i:2;R:37115;}s:65:"1208:openid-6f66828cb46ab6f827b5e564afe8a4d8cf54a3aa-openid_login";a:3:{i:0;R:37803;i:1;R:35350;i:2;R:37115;}s:68:"1208:openid-71978df18f7fcca1db2e1797a11461feef1f826e-openid_provider";a:3:{i:0;R:37803;i:1;R:35350;i:2;R:37115;}s:64:"1208:openid-ced7b308a348567fbf21dd775ee496dd01207f24-remember_me";a:3:{i:0;R:37803;i:1;R:35350;i:2;R:37115;}s:83:"1208:openid-bf8c97e9743990a3fbd075e5e2e44a7417ecc9a1-automatically_login_in_the_fut";a:3:{i:0;R:37803;i:1;R:35350;i:2;R:37115;}s:58:"1208:openid-ece2da368f3c0e7a56538c0472e4c9940dda4dd4-login";a:3:{i:0;R:37803;i:1;R:35350;i:2;R:37115;}s:72:"1208:openx-321f2c63549c46e3aa9bffae43a0ca07a1d65204-openx_configuration.";a:3:{i:0;s:26:"out-statusnet-plugin-openx";i:1;R:35350;i:2;R:37115;}s:57:"1208:openx-b7f62800e2fbddcc849873359cc67a135acce303-openx";a:3:{i:0;R:37921;i:1;R:35350;i:2;R:37115;}s:82:"1208:openx-ac9f169e6b6d2a832e89b95c2b4e833f8a5ecfe6-plugin_for_a_href="http_www.op";a:3:{i:0;R:37921;i:1;R:35350;i:2;R:37115;}s:57:"1208:openx-f976d54fac140e1517e251e52b14fd5a2e82f1ac-openx";a:3:{i:0;R:37921;i:1;R:35350;i:2;R:37115;}s:82:"1208:openx-3ce352d15cd62730c8382f78a3b69c46e5cb9f1c-openx_settings_for_this_status";a:3:{i:0;R:37921;i:1;R:35350;i:2;R:37115;}s:65:"1208:openx-fdbccdee31d606c5aab296e9ccdc8a5f74e1ecb7-ad_script_url";a:3:{i:0;R:37921;i:1;R:35350;i:2;R:37115;}s:62:"1208:openx-5971acd9c189c435298c5d42f457f5462f9957e5-script_url";a:3:{i:0;R:37921;i:1;R:35350;i:2;R:37115;}s:68:"1208:openx-06b35524844eb810ac22dfb413c9bab31eb4ac15-medium_rectangle";a:3:{i:0;R:37921;i:1;R:35350;i:2;R:37115;}s:73:"1208:openx-e36caf37ab2bf59ea8e23bb416ccfd6b6cbc28cc-medium_rectangle_zone";a:3:{i:0;R:37921;i:1;R:35350;i:2;R:37115;}s:61:"1208:openx-c158695a64adb40952c1cf9fde78b62bd6147f42-rectangle";a:3:{i:0;R:37921;i:1;R:35350;i:2;R:37115;}s:66:"1208:openx-decb5b1749d6a643716a987a4a52e8e92cd55a9c-rectangle_zone";a:3:{i:0;R:37921;i:1;R:35350;i:2;R:37115;}s:63:"1208:openx-0381247a698736fe9930328a814e5263eeff72fd-leaderboard";a:3:{i:0;R:37921;i:1;R:35350;i:2;R:37115;}s:68:"1208:openx-7c196c8dc7b325c066c397fa6cbe0eed7f509194-leaderboard_zone";a:3:{i:0;R:37921;i:1;R:35350;i:2;R:37115;}s:62:"1208:openx-4b842ec3492af881a19d51873a4c15a90c3c029f-skyscraper";a:3:{i:0;R:37921;i:1;R:35350;i:2;R:37115;}s:72:"1208:openx-f78255036cbfc45eb300b1155c9c792b96088a1c-wide_skyscraper_zone";a:3:{i:0;R:37921;i:1;R:35350;i:2;R:37115;}s:56:"1208:openx-e85726b34723718d86eeb40ab996e21219883557-save";a:3:{i:0;R:37921;i:1;R:35350;i:2;R:37115;}s:72:"1208:openx-1cc839aec9bb9ed552818313b5499da658829eab-save_openx_settings.";a:3:{i:0;R:37921;i:1;R:35350;i:2;R:37115;}s:84:"1208:orbited-0ff0bb926b315fc5c29292de4e1f8d306742e167-failed_to_connect_to_queue_ser";a:3:{i:0;s:28:"out-statusnet-plugin-orbited";i:1;R:35350;i:2;R:37115;}s:84:"1208:orbited-5cddde18037f48bfc25dafc0573cd3c8509fb870-plugin_to_make_updates_using_o";a:3:{i:0;R:37939;i:1;R:35350;i:2;R:37115;}s:59:"1208:ostatus-ffe8e99492ee9b850395d53f6c519938952fde0d-feeds";a:3:{i:0;s:28:"out-statusnet-plugin-ostatus";i:1;R:35350;i:2;R:37115;}s:63:"1208:ostatus-d6981f74767d6c63d6062ad21b3bdfcd0d0d6602-subscribe";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:73:"1208:ostatus-2229780f414ed51226ef03a538cddabb475d4ba6-list_remote_profile";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:68:"1208:ostatus-d45ec363ea6f309b496ea40a77f2658f7556a537-remote_profile";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:84:"1208:ostatus-dc1c10eb3ffd99094045f213fa4e9be237dbad2c-ostatus_user's_address,_like_n";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:59:"1208:ostatus-35543cf3943d8d462ad05f0fdd4a579ecf1bd0da-fetch";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:66:"1208:ostatus-818edfb8c48ead4560929cb27308426a745fe359-invalid_uri.";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:84:"1208:ostatus-c6ff738f16477df93765ecdfbf186e94cec4aea5-sorry,_we_could_not_reach_that";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:77:"1208:ostatus-54c25bb8b9ae26549389e3c40a30920ae592cdf3-sent_from_s_via_ostatus";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:84:"1208:ostatus-d821995409bf6a8d3bdde83dff4ed07ab66100df-could_not_set_up_remote_subscr";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:62:"1208:ostatus-43a7aa1d937550150339631f00870f30e36d4c7b-unfollow";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:80:"1208:ostatus-7ed30745d502646912beecf5b812cdb8aa13a2b3-1$s_stopped_following_2$s.";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:83:"1208:ostatus-255f2b9d5c456b98f0817028369c392ef7677695-could_not_set_up_remote_group";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:58:"1208:ostatus-5410069222a680d6b0a930459cdbffac2176a674-join";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:79:"1208:ostatus-c4f38a7072ae842fdd4104ceba8558a992157ea1-1$s_has_joined_group_2$s.";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:82:"1208:ostatus-cb6942d648343f3110588985476064f3ca4d2835-failed_joining_remote_group.";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:59:"1208:ostatus-7f2d9d87723f5dd0b170e1aa1999e9d585cad15d-leave";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:77:"1208:ostatus-5fc229bd90f321c2789a5fd1bdb7493bfdbb0541-1$s_has_left_group_2$s.";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:84:"1208:ostatus-8152b90dec4818ae481e74155bdeec3fbb3ae547-could_not_set_up_remote_list_s";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:65:"1208:ostatus-c1db1757b2b3ba12a7f9a070b3bf919f9db56bde-follow_list";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:83:"1208:ostatus-12fdcc55061370bbbea47cea7c98b5ec51053da8-1$s_is_now_following_people_l";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:84:"1208:ostatus-c5268f7ccf01d3cdd5f6fc88d751369db1e47e2b-failed_subscribing_to_remote_l";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:67:"1208:ostatus-61ef108c55ecd9516e3cdd2df01a9cbb5a662be4-unfollow_list";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:83:"1208:ostatus-7e3d1623173723d59596a30b70f58bf5fdb9c371-1$s_stopped_following_the_lis";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:58:"1208:ostatus-5133e006c6ed2c734be7d4cd547a5df3dc60cc31-list";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:83:"1208:ostatus-d8b113a4f46cb0ced9c38982a71a4f6cb46b2f94-1$s_listed_2$s_in_the_list_3$";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:84:"1208:ostatus-b7dd67902fc60c2622193bd11d7cbc464e636427-could_not_complete_subscriptio";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:60:"1208:ostatus-d0334009b0a16f2659781acd4ca8fea35977172c-unlist";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:83:"1208:ostatus-bcf2c618c44bdf9542475cbff84b98d76aff78db-1$s_removed_2$s_from_the_list";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:60:"1208:ostatus-e4fc409268936e0da48b9a4cfb9650b21029f3c0-unlike";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:78:"1208:ostatus-a8401be549c0b178034fea8d9e8d4d835d063ff0-1$s_no_longer_likes_2$s.";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:60:"1208:ostatus-c93f6536dcfbeeee0b339acc7d769bf64450e761-remote";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:68:"1208:ostatus-4c9ec5288fc8c00c9e2cb9bd9ab78877ddd737ed-profile_update";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:83:"1208:ostatus-07aa93532437dd7fba35c5d277a0b16d75161659-s_has_updated_their_profile_p";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:58:"1208:ostatus-a1fffaaafb7cc996685bceb829c053cc4f7de43d-list";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:84:"1208:ostatus-5e832727a90049a936847da41c633d6a4c1b5277-follow_people_across_social_ne";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:84:"1208:ostatus-d8864afabd6e8bc364e475c0d9ddbdf9514cb60d-publishing_outside_feeds_not_s";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:77:"1208:ostatus-f3eb5b8ce1e3cc98862ba2a41373ce68b386f3c5-unrecognized_mode_"_s".";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:84:"1208:ostatus-a1088803704db10d92936b90e092d4abced8c7b1-unsupported_hub.topic_s_this_h";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:84:"1208:ostatus-e0efe6629cb34bc5981f938dde10d6d1af59f538-invalid_hub.verify_"_s"._it_mu";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:84:"1208:ostatus-378a33bcbab59485619eb41affd6158edcb90f05-invalid_hub.lease_"_s"._it_mus";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:84:"1208:ostatus-10dde1fd997f3a61c006439ef37ebd0c882b6351-invalid_hub.secret_"_s"._it_mu";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:84:"1208:ostatus-9970b38c26c45c4cad6615383f625882ebf928e7-invalid_hub.topic_"_s"._user_d";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:83:"1208:ostatus-4376a8d5ad709dc91014990361b3b3f544c3515b-invalid_hub.topic_"_s"._group";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:84:"1208:ostatus-09dcb30a430ef1cc87fececee1f9e71a13cc63c5-invalid_hub.topic_s;_list_does";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:84:"1208:ostatus-c7b535efcba5cc79bba9c56e07c188f1109d8608-invalid_url_passed_for_1$s_"_2";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:84:"1208:ostatus-15b253e1a83247472e3b5c9efe7b6fe9fd524a34-you_can_use_the_local_list_fun";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:60:"1208:ostatus-f766d6783e243c531ffd71ba83d6d9e75b2f3fb3-list_s";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:56:"1208:ostatus-196cc191f3c30bb1caa5137d7246fe39442bf125-go";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:67:"1208:ostatus-3df20b0b2a84f0dca0348557e4c3d4a1104f6ac7-user_nickname";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:83:"1208:ostatus-73e906f49c7948f8b08059dd3bd0bec2bf3b85eb-nickname_of_the_user_you_want";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:69:"1208:ostatus-d4faf0cbe78bcf96be306d23dbca9100ece73fc7-profile_account";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:84:"1208:ostatus-78c44651c7cea5bce5982a6a9af455507b264b34-your_account_id_(for_example_u";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:84:"1208:ostatus-e0ac4d8abf2e59a690b44467239f1df577be235a-could_not_look_up_ostatus_acco";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:84:"1208:ostatus-db3240c7c6ce91a636fdb3bd6576ed3f6876c84e-could_not_confirm_remote_profi";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:66:"1208:ostatus-1a1de0f43553aa8892e6f98795dc500181eb77c1-ostatus_list";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:79:"1208:ostatus-62ab7df1cedf2afa94e524affe0b17262a35dc18-empty_or_invalid_feed_id.";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:76:"1208:ostatus-2f3714a9023c1b404fe9d66a99b1b569a3d0a7c3-unknown_push_feed_id_s";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:78:"1208:ostatus-c5baa23fc5c2d763ad681417868368b95723b317-bad_hub.topic_feed_"_s".";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:84:"1208:ostatus-44e7542551f6ec2c085cfe7e2e5d25b9e745c7c4-bad_hub.verify_token_1$s_for_2";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:84:"1208:ostatus-28fc701b66f4dd4fdd3a71e4d868ca80a1cd3a1d-unexpected_subscribe_request_f";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:84:"1208:ostatus-adbc15c7481a1db5b53d80e83cfb834e9052a682-unexpected_unsubscribe_request";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:67:"1208:ostatus-bf5d92cc3c1fa7c0e35b2e97d4719743a0841009-no_such_user.";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:66:"1208:ostatus-a7ab5bb1a460246a71d680ce3bd3b419b73f0a82-subscribe_to";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:62:"1208:ostatus-47d80be3eb9761c60ead0914e890449394e75cff-continue";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:58:"1208:ostatus-e0d73143de80d17e82de2e017ac156ca3b9c4e01-join";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:69:"1208:ostatus-21f155b5762d72c8584bd5100f872a9b41b7f5cc-join_this_group";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:61:"1208:ostatus-a6afb0090264b55035307cf80292ad2da38d9bf9-confirm";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:76:"1208:ostatus-1cf3d6b65f45738e28510ee49025d1e7acccb7d6-subscribe_to_this_user";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:83:"1208:ostatus-fb714d7d6229715af03063c10c9291b75511fc69-you_are_already_subscribed_to";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:84:"1208:ostatus-831d80645b1e1d22216e59384654d5dfc8ccd805-sorry,_we_could_not_reach_that";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:73:"1208:ostatus-fc49a5e4b77cad32a08abbc8f9ac3035d78df66d-already_subscribed!";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:81:"1208:ostatus-a3cb00eff5ad4ff2aaead8d85fa089754a5001c4-remote_subscription_failed!";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:83:"1208:ostatus-07363d7dbc93d7e4d63ece8ac5e72bf52dd64506-there_was_a_problem_with_your";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:71:"1208:ostatus-b91429816f452df8607d1e2c2caa057216314112-subscribe_to_user";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:61:"1208:ostatus-04a212215ef9fbf686d280802eb81ee7a6e681cd-confirm";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:84:"1208:ostatus-4488c175868fc390a49a1fd895cb0ed4ce292461-you_can_subscribe_to_users_fro";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:64:"1208:ostatus-270d026f009040ed30cffb7ea22a5e62c40b7447-join_group";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:83:"1208:ostatus-9515cb05272881e48407e4909d863f9e18712f98-ostatus_group's_address,_like";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:84:"1208:ostatus-d3cc2d4e3d011d709e348887ebedda23ac7668e6-you_are_already_a_member_of_th";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:71:"1208:ostatus-9f4edda32fd4f62aae2aee9c30da5063b1f7582d-already_a_member!";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:79:"1208:ostatus-cfdf69eadb1b232511545be6853e1ae1b06b993d-remote_group_join_failed!";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:82:"1208:ostatus-721119556fa6fd0ccda02e6fecc4b2b9c982aee7-confirm_joining_remote_group";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:84:"1208:ostatus-8fef7f4d25060e1b5b55e630da477d6e5f7055d9-you_can_subscribe_to_groups_fr";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:60:"1208:ostatus-c853ccce2483d44c0247866af15f834db8cf43a8-no_id.";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:84:"1208:ostatus-9418ec9a470e9274ba3f2ebe5d560fdfa6fc0e77-cannot_handle_that_kind_of_pos";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:81:"1208:ostatus-39435eaf9c317e57d2fb0abf4ab2d932fa3fd1a6-in_reply_to_unknown_notice.";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:84:"1208:ostatus-a229ad508b539443c0b4834864154fa311f7ea98-in_reply_to_a_notice_not_by_th";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:84:"1208:ostatus-a8b412e9dab49d301581b9dc7ce3e2909f7b6888-to_the_attention_of_user(s),_n";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:84:"1208:ostatus-149d067ee7e93a88be8d73d49bb74649c824abc0-not_to_anyone_in_reply_to_anyt";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:81:"1208:ostatus-14511b27c85393f8887431b44d0ea29951969ea3-this_is_already_a_favorite.";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:82:"1208:ostatus-c8c7efda9214eb120b4ba97917c11f0065bf31cf-could_not_save_new_favorite.";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:79:"1208:ostatus-e5f633b4de03682a5fa905eba6492eee5b8e3543-notice_was_not_favorited!";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:74:"1208:ostatus-6428f91c3cff42fb55dea323daa8dff5b7b06839-not_a_person_object.";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:84:"1208:ostatus-4a6cd4302f7d7db7cb28504f26895184ae8fb1f4-unidentified_profile_being_lis";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:84:"1208:ostatus-6933bfbb908c26ccb68d9ff20ddf2aa26f50dce3-this_user_is_not_the_one_being";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:84:"1208:ostatus-05568b65a739e564ce26026c7b79fd0e660b9c4b-the_listing_could_not_be_saved";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:84:"1208:ostatus-817c33307a1a5f40e784c03d8c9e16aa5ae44ea3-unidentified_profile_being_unl";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:84:"1208:ostatus-d2b668b8c5d237c3c5d0ae6205a831e26ffed13f-this_user_is_not_the_one_being";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:84:"1208:ostatus-efcea7d31f26fd4e5da1e721f0ef45ee7308965e-the_listing_could_not_be_delet";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:84:"1208:ostatus-9de3701b65de7428167d77648a8b193d5daa0977-cannot_favorite_unfavorite_wit";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:84:"1208:ostatus-8fd790da28fbf97b14f185d1679727b84ca3e034-cannot_handle_that_kind_of_obj";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:79:"1208:ostatus-719425a5e517f36a7b576a175c3511b5cf6e96fd-notice_with_id_s_unknown.";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:83:"1208:ostatus-b194dcf1cd0037d55fd095e2512b663f22ce4cdf-notice_with_id_1$s_not_posted";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:71:"1208:ostatus-5ce8c104999faae751d88d58c89c5769285e7a95-subscribe_to_list";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:84:"1208:ostatus-990cb12485b22f3780be8ace67fe9fcd5b9fe898-address_of_the_ostatus_list,_l";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:83:"1208:ostatus-835fff3ecbbc8cd7192358bfeb4ed605f81294fa-you_are_already_subscribed_to";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:84:"1208:ostatus-dccc33981fcadb0832a79dc77ac3f6247d8ef199-confirm_subscription_to_remote";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:84:"1208:ostatus-faf84c14fdcf109d024ff97d720012840adcdfb6-you_can_subscribe_to_lists_fro";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:68:"1208:ostatus-1105e8ae237d3e8c9fc4b1f87288c424196b0491-no_such_group.";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:84:"1208:ostatus-c95671b9655568c985341398ae728644f1fab4c9-cannot_accept_remote_posts_for";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:83:"1208:ostatus-122d5b3af8a005979f76cb936c757d43ecc99dda-cannot_read_profile_to_set_up";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:80:"1208:ostatus-47dfa9ebdf8bff6558055ee591b919070adc1a03-groups_cannot_join_groups.";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:84:"1208:ostatus-7fe9fa7964fcf727910b16da06ee83fe3e0a0faa-you_have_been_blocked_from_tha";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:84:"1208:ostatus-8e98303fbe23411d880639518e651b1616a0b59b-could_not_join_remote_user_1$s";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:83:"1208:ostatus-9610d87602e7df5777692b2a21bf7599da9a0844-cannot_read_profile_to_cancel";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:84:"1208:ostatus-45e5b9695ada6f9f6c716a591c909cf38557b679-could_not_remove_remote_user_1";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:67:"1208:ostatus-cd46dbebcf9002c002b834d65830a9a5aaddbe11-no_such_list.";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:84:"1208:ostatus-3d5aaa9c4d541b57c8c8a3548c303bd067e98280-cannot_accept_remote_posts_for";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:83:"1208:ostatus-892a4a3bbcc97b1c9f4ae04dc1ffe4fe7b25c95b-cannot_read_profile_to_set_up";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:84:"1208:ostatus-6443cad33f7df035b8b8d41d6baa32e96d05ca43-groups_cannot_subscribe_to_lis";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:84:"1208:ostatus-5c75f75a0be39029d24393d30ea4b1fb615e1d51-could_not_subscribe_remote_use";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:83:"1208:ostatus-2555e5944922421ae23be0c141d5874625db70d3-cannot_read_profile_to_cancel";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:84:"1208:ostatus-a0b102f8519f185f134bafa5b6eb66b225671341-could_not_unsubscribe_remote_u";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:84:"1208:ostatus-d7e4fe6665a8c0f81571d83f0939c46327b94361-you_can_use_the_local_subscrip";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:71:"1208:ostatus-8b97f6a34feee23b09920a7e27ec5286a0b1c15b-subscribe_to_user";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:66:"1208:ostatus-d98ce8287e550b73266e259bb005369dc781104f-join_group_s";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:58:"1208:ostatus-d75292497d9913ed8da02a67f372a4da8af93e89-join";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:82:"1208:ostatus-b6bbf46d23c2213d74b77f3ef0bda2509137e63e-subscribe_to_list_1$s_by_2$s";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:63:"1208:ostatus-7d3768264fb28f658bfa8d6c8bf4a992c62b5772-subscribe";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:68:"1208:ostatus-86e83856184ad1a812f60068bbbeb7a8abf9a688-subscribe_to_s";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:68:"1208:ostatus-f20fc176c4366ce051abc42f32860cfc6eada071-group_nickname";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:84:"1208:ostatus-12321d9bb3169e0b796ce39423843cc4cfb35c1c-nickname_of_the_group_you_want";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:83:"1208:ostatus-5812ff13ec09de201df18fa6872bf32fac1f72d1-nickname_of_the_user_you_want";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:84:"1208:ostatus-26c91de3fa38f0519a6053fba69923bd950dde5e-your_account_id_(e.g._user@ide";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:84:"1208:ostatus-1797bb46f5f634888101e9226442b02e3b00d6a8-must_provide_a_remote_profile.";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:84:"1208:ostatus-d5737954d0c3fa150b2885843b01db1e6107bbd0-no_local_user_or_group_nicknam";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:69:"1208:ostatus-c80875643e6ab1395c8b0d5031b9557e81da7d86-ostatus_connect";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:75:"1208:ostatus-14fa96ce5547485495678f9b782981904dc138f6-invalid_avatar_url_s.";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:84:"1208:ostatus-b9c90b71efaff871813500c4c78da0fd3ae0c116-tried_to_update_avatar_for_uns";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:84:"1208:ostatus-c5f53e263395f64c94a1f85e15b0035adf87eea8-unable_to_fetch_avatar_from_s.";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:83:"1208:ostatus-776a952344a630819501f355152bf66631a26b5e-could_not_find_a_feed_url_for";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:84:"1208:ostatus-d838e07fee9c15f12c82055360787090f032eb17-not_a_valid_webfinger_address.";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:84:"1208:ostatus-9813ba9b2d60e7068b6816cf4c6709c8b93f4705-could_not_find_a_valid_profile";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:84:"1208:ostatus-075615777a46765fdd12774a67429e9cfd706177-attempting_to_start_push_subsc";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:84:"1208:ostatus-f587273867e5640aba802242199e4a40ae5d75b8-attempting_to_end_push_subscri";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:83:"1208:ostatus-af70fa8b2ff20b97eabc8e72eb3c572221c64287-invalid_ostatus_profile_state";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:83:"1208:ostatus-0c5f820124792c1c5a6f31a08d7444bac38c49d9-invalid_ostatus_profile_state";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:84:"1208:ostatus-8d04be1c1d600e9eaff4b53a8c5b57e7b7cd28e6-invalid_actor_passed_to_1$s_2$";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:84:"1208:ostatus-43ba75c1555583a0c354d1a510b075b4cdd6c11c-invalid_type_passed_to_ostatus";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:74:"1208:ostatus-67d166b90c887926ce5302708c560b4f03123267-unknown_feed_format.";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:81:"1208:ostatus-e4b5e7db66a41cc98c9068814e85d5747cf6b255-rss_feed_without_a_channel.";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:84:"1208:ostatus-c88985ff779e82e1c3bb3cca1afa70796eec4ff0-can_only_handle_share_activiti";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:84:"1208:ostatus-9a6a47875ddf5a04fbb3124231b207fecad1c609-can_only_handle_shared_activit";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:80:"1208:ostatus-6e972598bf0a4011fe596cc29d45f7319f2706c0-failed_to_save_activity_s.";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:78:"1208:ostatus-4f77e276a2b55bf74f2aa948672c734989aeecde-no_content_for_notice_s.";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:63:"1208:ostatus-25911d48e023cd10fc08d378641ee620f5e39d86-show_more";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:84:"1208:ostatus-cd6bdc2d1443ab4f2ed4e79dd9532f32625ae9f8-could_not_reach_profile_page_s";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:84:"1208:ostatus-a60ff0e9f6421de1b9b268e40171c628e2945ee1-cannot_find_enough_profile_inf";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:77:"1208:ostatus-bca059121d9ea43dc3952e8c5b44a9daf26df34e-no_author_id_uri_found.";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:69:"1208:ostatus-84da0c5a04ed3396d62ab00ea241675ca46fbbd2-no_profile_uri.";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:84:"1208:ostatus-4c931bccbae872d0f59ad4ded0776f3c3bb6f696-local_user_cannot_be_reference";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:84:"1208:ostatus-1ffade482f958b8504a6fd5e672bf86ac60fc8e9-local_group_cannot_be_referenc";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:84:"1208:ostatus-83bf526863768e4ddfcd60eabdd7c55c062135b9-local_list_cannot_be_reference";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:80:"1208:ostatus-2bcbda7ac35dd386e4820d3bd894f6759823e064-cannot_save_local_profile.";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:77:"1208:ostatus-2af7ad82f9bee0230160178ad44d683a70be8710-cannot_save_local_list.";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:82:"1208:ostatus-ff4cbd34471142558aa852188dcc6ebf25ceb8d4-cannot_save_ostatus_profile.";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:84:"1208:ostatus-b999a868034875bb179e6963fda48de2af353f25-could_not_save_profile_for_"_s";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:84:"1208:ostatus-de79d7a11060d33fb5aeff0fc59cda73b9540e7a-could_not_save_ostatus_profile";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:84:"1208:ostatus-818037909b32bf3dbebe5575a8d985393041f72a-could_not_store_html_content_o";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:83:"1208:ostatus-71c6130200f65a9975cc6a0b7a85f0030abac5e2-unrecognized_uri_protocol_for";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:84:"1208:ostatus-f8ef7efcc47ddd7f7769b3eb2ad5aa89b4c0d7b3-no_uri_protocol_for_profile_s.";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:84:"1208:ostatus-4a2361b952b56c575ae43cd5670e62762cd5d901-hub_subscriber_verification_re";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:83:"1208:ostatus-af4fa2b1823631dd8ed1ca1d8d75030fd6a57a53-callback_returned_status_1$s.";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:84:"1208:ostatus-9b50ab34723f79f6cb8e3ab50ed5469ccf32ce18-unable_to_locate_signer_public";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:84:"1208:ostatus-2a74b95df9ef4a88fa54d1a9f322bcd7dd8f980a-salmon_invalid_actor_for_signi";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:82:"1208:ostatus-2586eb283dc5b999d96cc34e8009c0d6b3049f8a-this_method_requires_a_post.";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:84:"1208:ostatus-d109a2b46125ad81313cd02d38c9ecf69c705036-salmon_requires_"application_m";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:83:"1208:ostatus-330315b2738133ffa86b665e49d7ea28c968baae-salmon_signature_verification";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:84:"1208:ostatus-500f991631de906d2ca665676cce92c3f4923fc3-salmon_post_must_be_an_atom_en";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:81:"1208:ostatus-f8fabf81ba27b05117ead3e85040676452a12424-unrecognized_activity_type.";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:84:"1208:ostatus-4c60127cad91cc04a6c8f800b2eb462a9e16f742-this_target_does_not_understan";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:84:"1208:ostatus-154d9a138d88a9090140236c081c16b074a4b2c0-this_target_does_not_understan";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:84:"1208:ostatus-859bf6d26c1071c24016d857aa0604cd9ad327f2-this_target_does_not_understan";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:84:"1208:ostatus-09591bb57b540536797997748703f122162989ce-this_target_does_not_understan";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:84:"1208:ostatus-eb02c3daed066a825730617db08a8d26126e846e-this_target_does_not_understan";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:84:"1208:ostatus-6760dd71de881ef2db935f8c21d25ff9b2b1afb8-this_target_does_not_understan";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:84:"1208:ostatus-b6e6379d255ab8735340b6c9a886ece6be4af39d-this_target_does_not_understan";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:84:"1208:ostatus-5564b42f4f28c553f262647f272748336ea27234-this_target_does_not_understan";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:84:"1208:ostatus-abec5148343e4973cacb022440dd36ac226af81b-this_target_does_not_understan";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:84:"1208:ostatus-5c046e9a9e779e05a1d7f2946b4811f0fc75e766-this_target_does_not_understan";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:84:"1208:ostatus-05018fa68d1e0043d1906dc8598aa3bbeb338adc-received_a_salmon_slap_from_un";a:3:{i:0;R:37942;i:1;R:35350;i:2;R:37115;}s:91:"1208:piwikanalytics-a8aed26bc04149eedd36ef9a14d6ffc6a270696b-use_a_href="http_piwik.org_"_p";a:3:{i:0;s:35:"out-statusnet-plugin-piwikanalytics";i:1;R:35350;i:2;R:37115;}s:64:"1208:poll-006e416fc0d0954808c784c76125a082b7142da9-no_such_poll.";a:3:{i:0;s:25:"out-statusnet-plugin-poll";i:1;R:35350;i:2;R:37115;}s:71:"1208:poll-85e403d1928f8129599ed54ad3afbaa1ffb10637-no_such_poll_notice.";a:3:{i:0;R:38137;i:1;R:35350;i:2;R:37115;}s:65:"1208:poll-d12f27cfb31889c5a4889468dd36d4a87eba1715-1$s's_poll_2$s";a:3:{i:0;R:38137;i:1;R:35350;i:2;R:37115;}s:59:"1208:poll-002ff598115d84595ffeee6219cb5c03d3a1d4a6-question";a:3:{i:0;R:38137;i:1;R:35350;i:2;R:37115;}s:81:"1208:poll-6a3f666b1e37454733832070299ff6beaa6d635a-what_question_are_people_answe";a:3:{i:0;R:38137;i:1;R:35350;i:2;R:37115;}s:59:"1208:poll-e3418dc02964dd196bd6dc0b2bc378c67c5bd4b4-option_d";a:3:{i:0;R:38137;i:1;R:35350;i:2;R:37115;}s:55:"1208:poll-e85726b34723718d86eeb40ab996e21219883557-save";a:3:{i:0;R:38137;i:1;R:35350;i:2;R:37115;}s:81:"1208:poll-a7b06fe740b934504f4b23d43f39694af3953d58-simple_extension_for_supportin";a:3:{i:0;R:38137;i:1;R:35350;i:2;R:37115;}s:80:"1208:poll-f9657f29e556463de64fd0f487c526b689c44d0f-invalid_poll_response_no_poll";a:3:{i:0;R:38137;i:1;R:35350;i:2;R:37115;}s:80:"1208:poll-8c26064138c63c2c8578e9020095ca1d9ad3cd25-invalid_poll_response_poll_is";a:3:{i:0;R:38137;i:1;R:35350;i:2;R:37115;}s:81:"1208:poll-b4f000ee2a0c7b411f271c4bb080f972d90964ce-unexpected_type_for_poll_plugi";a:3:{i:0;R:38137;i:1;R:35350;i:2;R:37115;}s:71:"1208:poll-a723caf59f59eaf0ff34b310c5fffda36f92c6d8-poll_data_is_missing";a:3:{i:0;R:38137;i:1;R:35350;i:2;R:37115;}s:55:"1208:poll-475b0bf64ce8cb8765211489519a5001d25200c4-poll";a:3:{i:0;R:38137;i:1;R:35350;i:2;R:37115;}s:74:"1208:poll-4671d72317065a760d683ebbdaec2ef9a206ea71-invalid_poll_selection.";a:3:{i:0;R:38137;i:1;R:35350;i:2;R:37115;}s:65:"1208:poll-2b087a6f6ddff80ff50c4c15dda79ea539fa96cc-voted_for_"_s"";a:3:{i:0;R:38137;i:1;R:35350;i:2;R:37115;}s:57:"1208:poll-c7609dbdb56a28d629ca4837e804b21bf0f2851d-submit";a:3:{i:0;R:38137;i:1;R:35350;i:2;R:37115;}s:63:"1208:poll-c5deb9e39a0b0dbc9d8ceaf185602adabb29fcbe-poll_1$s_2$s";a:3:{i:0;R:38137;i:1;R:35350;i:2;R:37115;}s:57:"1208:poll-8bec8c1d415e2682cf7eba85858458e3f10047c8-poll_s";a:3:{i:0;R:38137;i:1;R:35350;i:2;R:37115;}s:59:"1208:poll-6d62bd5efa90d537ebcb1c8016c311f8c9224018-new_poll";a:3:{i:0;R:38137;i:1;R:35350;i:2;R:37115;}s:80:"1208:poll-f86b746703a3b39c792899828e64fb9899d396e8-you_must_be_logged_in_to_post";a:3:{i:0;R:38137;i:1;R:35350;i:2;R:37115;}s:77:"1208:poll-5926201070a9a638a732fefbca84f2317e15e71f-poll_must_have_a_question.";a:3:{i:0;R:38137;i:1;R:35350;i:2;R:37115;}s:81:"1208:poll-26cfac0254dda62a1116df3636737054411436dd-poll_must_have_at_least_two_op";a:3:{i:0;R:38137;i:1;R:35350;i:2;R:37115;}s:64:"1208:poll-582a435fabce633dba5540ceea77eb5c7d9e091f-notice_posted";a:3:{i:0;R:38137;i:1;R:35350;i:2;R:37115;}s:64:"1208:poll-fc5db11ebfb5b73fd1a629fefaa1919b7a0185b5-poll_response";a:3:{i:0;R:38137;i:1;R:35350;i:2;R:37115;}s:81:"1208:poll-41b373659541c20adf5a596abeaa838c8b067166-you_must_be_logged_in_to_respo";a:3:{i:0;R:38137;i:1;R:35350;i:2;R:37115;}s:75:"1208:poll-a7664ffaa035c81650e6ae0028492209b3cea097-invalid_or_missing_poll.";a:3:{i:0;R:38137;i:1;R:35350;i:2;R:37115;}s:63:"1208:poll-8a535a1def73648a0a55a9bfa21c9d370e434ce5-poll_results";a:3:{i:0;R:38137;i:1;R:35350;i:2;R:37115;}s:86:"1208:postdebug-c6cad1c51abd04fb4692d49db3c0a0345664c814-debugging_tool_to_record_reque";a:3:{i:0;s:30:"out-statusnet-plugin-postdebug";i:1;R:35350;i:2;R:37115;}s:95:"1208:poweredbystatusnet-0f2199af7d6c415005e73f31706b53e45d740109-powered_by_a_href="http_status";a:3:{i:0;s:39:"out-statusnet-plugin-poweredbystatusnet";i:1;R:35350;i:2;R:37115;}s:95:"1208:poweredbystatusnet-403ac5d34c96e4e944b6d6f5fbc4f1555daf95c2-outputs_"powered_by_a_href="ht";a:3:{i:0;R:38167;i:1;R:35350;i:2;R:37115;}s:83:"1208:ptiturl-a7a70ed8dcaa1350f3cac1c08b3a44142bca6174-you_must_specify_a_serviceurl";a:3:{i:0;s:28:"out-statusnet-plugin-ptiturl";i:1;R:35350;i:2;R:37115;}s:83:"1208:ptiturl-4bac8ac0c1b38d73219fb01e51bd6cf869b58946-uses_a_href="http_1$s_"_1$s_a";a:3:{i:0;R:38170;i:1;R:35350;i:2;R:37115;}s:62:"1208:qna-10c9793931975d323d02b4a81c4b928aabcbf935-new_question";a:3:{i:0;s:24:"out-statusnet-plugin-qna";i:1;R:35350;i:2;R:37115;}s:79:"1208:qna-877aa8bff4e46796f39cb264cae43c3b625621f1-you_must_be_logged_in_to_post";a:3:{i:0;R:38173;i:1;R:35350;i:2;R:37115;}s:77:"1208:qna-20921cbca47ef1e18c5ae8e1cf2b3f5040b93ccd-question_must_have_a_title.";a:3:{i:0;R:38173;i:1;R:35350;i:2;R:37115;}s:65:"1208:qna-e02a92d7d02de1467d1f99bbca3b94a6f2699692-question_posted";a:3:{i:0;R:38173;i:1;R:35350;i:2;R:37115;}s:65:"1208:qna-759d3c6fd59bdc990faf90353d51f62180c7bcf1-no_such_answer.";a:3:{i:0;R:38173;i:1;R:35350;i:2;R:37115;}s:78:"1208:qna-61bc441086c0137ada062a694ee59dbacc4dd8fc-no_question_for_this_answer.";a:3:{i:0;R:38173;i:1;R:35350;i:2;R:37115;}s:63:"1208:qna-bf5d92cc3c1fa7c0e35b2e97d4719743a0841009-no_such_user.";a:3:{i:0;R:38173;i:1;R:35350;i:2;R:37115;}s:73:"1208:qna-59fce11c6450891de5012fca8b9be4cc9abf5a4a-user_without_a_profile.";a:3:{i:0;R:38173;i:1;R:35350;i:2;R:37115;}s:72:"1208:qna-7c346575e1765b431dbdbbb6050cbfe18ac07e49-1$s's_answer_to_"_2$s"";a:3:{i:0;R:38173;i:1;R:35350;i:2;R:37115;}s:63:"1208:qna-8d9be673628e8a1d05d18ec37121d1ae95049751-revise_answer";a:3:{i:0;R:38173;i:1;R:35350;i:2;R:37115;}s:80:"1208:qna-ea6fd4c3ba566f2636eb3843cee64ae5d35592af-you_must_be_logged_in_to_answe";a:3:{i:0;R:38173;i:1;R:35350;i:2;R:37115;}s:76:"1208:qna-7d5214efc8f78a980a4987498aaa08acfff51959-invalid_or_missing_answer.";a:3:{i:0;R:38173;i:1;R:35350;i:2;R:37115;}s:56:"1208:qna-a16a4eda7cb2c8e91d7edd25e809ae9d392c7498-answer";a:3:{i:0;R:38173;i:1;R:35350;i:2;R:37115;}s:56:"1208:qna-b55e1c4a0a68d35e495e82b75aec442d02709386-answer";a:3:{i:0;R:38173;i:1;R:35350;i:2;R:37115;}s:67:"1208:qna-f9ef2047f083e3097e7784cb1e93107906671b11-no_such_question.";a:3:{i:0;R:38173;i:1;R:35350;i:2;R:37115;}s:74:"1208:qna-456ff424eb07a82a61bfefd9b119116438b34a0d-no_such_question_notice.";a:3:{i:0;R:38173;i:1;R:35350;i:2;R:37115;}s:68:"1208:qna-29658cf56b2bebffcea589631fb276ba6d62ad53-1$s's_question_2$s";a:3:{i:0;R:38173;i:1;R:35350;i:2;R:37115;}s:64:"1208:qna-f218f3f1a438771265ba82e5ff09f3b2a8259e85-close_question";a:3:{i:0;R:38173;i:1;R:35350;i:2;R:37115;}s:80:"1208:qna-b893fdc1a20b01c14c29f4192de18c9db48f42e5-you_must_be_logged_in_to_close";a:3:{i:0;R:38173;i:1;R:35350;i:2;R:37115;}s:78:"1208:qna-509fd264bd7b38695699f0c5f3710bfa06a476a5-invalid_or_missing_question.";a:3:{i:0;R:38173;i:1;R:35350;i:2;R:37115;}s:80:"1208:qna-519ded1cc8057fc89435d2a4cf400562fe4a713a-you_did_not_ask_this_question.";a:3:{i:0;R:38173;i:1;R:35350;i:2;R:37115;}s:57:"1208:qna-b12fcedc7bf1f597e5ad2703f34f510c39410a64-answers";a:3:{i:0;R:38173;i:1;R:35350;i:2;R:37115;}s:60:"1208:qna-0e657e6c2c14392822ada6e9a892fb276a926307-ajax_error";a:3:{i:0;R:38173;i:1;R:35350;i:2;R:37115;}s:61:"1208:qna-588795b35e8c54e21f44f1236a56704566346ad3-your_answer";a:3:{i:0;R:38173;i:1;R:35350;i:2;R:37115;}s:73:"1208:qna-28b72e4121a893071e59ccb102cc50186e6a2b17-answer_data_is_missing.";a:3:{i:0;R:38173;i:1;R:35350;i:2;R:37115;}s:80:"1208:qna-9e5ffa4247085abd4c98a4e998846c864be7458b-question_and_answers_micro-app";a:3:{i:0;R:38173;i:1;R:35350;i:2;R:37115;}s:58:"1208:qna-8c11027c8d01440bec536a7266bee9a8528d2f34-question";a:3:{i:0;R:38173;i:1;R:35350;i:2;R:37115;}s:76:"1208:qna-d393e8a88b62d2117d463893b60fa845398845df-too_many_activity_objects.";a:3:{i:0;R:38173;i:1;R:35350;i:2;R:37115;}s:72:"1208:qna-7988053a0c126d9bea3f20056064dfc1659d9816-wrong_type_for_object.";a:3:{i:0;R:38173;i:1;R:35350;i:2;R:37115;}s:77:"1208:qna-cd4051ffe57068111d8559b63dd40d600ab8b0b0-answer_to_unknown_question.";a:3:{i:0;R:38173;i:1;R:35350;i:2;R:37115;}s:70:"1208:qna-b916210cd2f40bc6ae699debda3ef1924d5f1af9-unknown_object_type.";a:3:{i:0;R:38173;i:1;R:35350;i:2;R:37115;}s:74:"1208:qna-70b03bc5cda12271de8d5e5d32850eb5ed750f02-unknown_question_notice.";a:3:{i:0;R:38173;i:1;R:35350;i:2;R:37115;}s:80:"1208:qna-3bef3617ea195407112f809c2af4528c4f99ee86-unexpected_type_for_qna_plugin";a:3:{i:0;R:38173;i:1;R:35350;i:2;R:37115;}s:75:"1208:qna-bb118399646a0306b25dc27ddebf7ae011b03c7a-question_data_is_missing.";a:3:{i:0;R:38173;i:1;R:35350;i:2;R:37115;}s:64:"1208:qna-18b1204a7ebcdaba7b8d343c0fed44313a981718-your_answer...";a:3:{i:0;R:38173;i:1;R:35350;i:2;R:37115;}s:53:"1208:qna-df316e17de9c36858417ba18e0da4da282dea84a-…";a:3:{i:0;R:38173;i:1;R:35350;i:2;R:37115;}s:57:"1208:qna-4fd94bf46ca189c307c2f15c2be806bddd151c0f-more...";a:3:{i:0;R:38173;i:1;R:35350;i:2;R:37115;}s:71:"1208:qna-28c63272bba7e39668031e428e98ac8f8767de04-no_question_with_id_s";a:3:{i:0;R:38173;i:1;R:35350;i:2;R:37115;}s:70:"1208:qna-22f6692a9cba2cd1e25a8eeeed0a01f3bfc0c3a4-no_profile_with_id_s";a:3:{i:0;R:38173;i:1;R:35350;i:2;R:37115;}s:79:"1208:qna-ad9e68d63537cccd08e15f60f729cb5e7f100df0-plural_gettext_s_revision_s_r";a:3:{i:0;R:38173;i:1;R:35350;i:2;R:37115;}s:79:"1208:qna-cce65b6ee6dbdc15eec6be07bd8ce9333f487fda-1$s_answered_the_question_"_2";a:3:{i:0;R:38173;i:1;R:35350;i:2;R:37115;}s:63:"1208:qna-ed0b3b5598023332855b089544cac1562608be9a-answered_"_s"";a:3:{i:0;R:38173;i:1;R:35350;i:2;R:37115;}s:79:"1208:qna-5eb00e5a4151e39ba88b4cb13ea7b0fdfe58d43d-plural_gettext_s_answer_s_ans";a:3:{i:0;R:38173;i:1;R:35350;i:2;R:37115;}s:74:"1208:qna-30e808e0ece4d2d97312b629a4543d66ab1cb568-this_question_is_closed.";a:3:{i:0;R:38173;i:1;R:35350;i:2;R:37115;}s:60:"1208:qna-003185f77550992700b580f1987b6cbb0919c83b-question_s";a:3:{i:0;R:38173;i:1;R:35350;i:2;R:37115;}s:56:"1208:qna-c7609dbdb56a28d629ca4837e804b21bf0f2851d-submit";a:3:{i:0;R:38173;i:1;R:35350;i:2;R:37115;}s:67:"1208:qna-ebb68e77b0fa701daf7489cf8fba49eb5ab1a91d-enter_your_answer";a:3:{i:0;R:38173;i:1;R:35350;i:2;R:37115;}s:56:"1208:qna-d31ed85a3befb63c70b0ab4a24cd846e9ea024b1-answer";a:3:{i:0;R:38173;i:1;R:35350;i:2;R:37115;}s:55:"1208:qna-3f195827f7c2fa2f429359af52688fa3d7f706ff-title";a:3:{i:0;R:38173;i:1;R:35350;i:2;R:37115;}s:77:"1208:qna-13b14f0f9da15b9c8503dc94c944fefc754b4118-the_title_of_your_question.";a:3:{i:0;R:38173;i:1;R:35350;i:2;R:37115;}s:61:"1208:qna-2d345842f631b046dad639bd8374c8174834ce1a-description";a:3:{i:0;R:38173;i:1;R:35350;i:2;R:37115;}s:74:"1208:qna-e1a4ee73fd887d8f0e4fd002c733902e60d6991b-your_question_in_detail.";a:3:{i:0;R:38173;i:1;R:35350;i:2;R:37115;}s:54:"1208:qna-e85726b34723718d86eeb40ab996e21219883557-save";a:3:{i:0;R:38173;i:1;R:35350;i:2;R:37115;}s:58:"1208:qna-df7ac47c1c326c10fecba14c30aa07008e7054d7-question";a:3:{i:0;R:38173;i:1;R:35350;i:2;R:37115;}s:55:"1208:qna-b872c3ff4438fcf555cbd88ca2713f78798df223-close";a:3:{i:0;R:38173;i:1;R:35350;i:2;R:37115;}s:80:"1208:qna-8bef12cd5aebf2e15e67c8b7d72b4ea1964da88c-close_the_question_to_no_one_c";a:3:{i:0;R:38173;i:1;R:35350;i:2;R:37115;}s:54:"1208:qna-154d346ede44f61885d2ca19141e75a7ecc55e30-best";a:3:{i:0;R:38173;i:1;R:35350;i:2;R:37115;}s:80:"1208:qna-1feaba0fcc74193dfd6a36b41e12dd05db61e7f0-mark_this_answer_as_the_best_a";a:3:{i:0;R:38173;i:1;R:35350;i:2;R:37115;}s:75:"1208:realtime-a445dfba8f789e3133871d60f7c3adafa717181c-you_have_to_post_it.";a:3:{i:0;s:29:"out-statusnet-plugin-realtime";i:1;R:35350;i:2;R:37115;}s:79:"1208:realtime-db3b96441365b3125bfe33aa429fb7d7a73eba75-no_channel_key_argument.";a:3:{i:0;R:38232;i:1;R:35350;i:2;R:37115;}s:71:"1208:realtime-4fad94b80881b4dde0ca3df05ae4ad3fded2bc66-no_such_channel.";a:3:{i:0;R:38232;i:1;R:35350;i:2;R:37115;}s:59:"1208:realtime-0f38bef1b29b5b403c90916169dd4d42c38419e0-play";a:3:{i:0;R:38232;i:1;R:35350;i:2;R:37115;}s:59:"1208:realtime-1e4cefc39d83a99e09a627da9d419fcdbb4d232f-play";a:3:{i:0;R:38232;i:1;R:35350;i:2;R:37115;}s:60:"1208:realtime-bde1cdc32ef0b1f653ad7bd6f98badb8b0a957e2-pause";a:3:{i:0;R:38232;i:1;R:35350;i:2;R:37115;}s:60:"1208:realtime-6695347e9f9e1d9cb96981caffab83701672cebf-pause";a:3:{i:0;R:38232;i:1;R:35350;i:2;R:37115;}s:61:"1208:realtime-bed8461ba3aeec29c1ad7d645857100bfa4055a5-pop_up";a:3:{i:0;R:38232;i:1;R:35350;i:2;R:37115;}s:73:"1208:realtime-0354ad786258edd7108cbdb367c52371e543bd33-pop_up_in_a_window";a:3:{i:0;R:38232;i:1;R:35350;i:2;R:37115;}s:63:"1208:recaptcha-e9312bd1b14ea0402dd548180b030e6c19d7c452-captcha";a:3:{i:0;s:30:"out-statusnet-plugin-recaptcha";i:1;R:35350;i:2;R:37115;}s:79:"1208:recaptcha-612aee128fb6a4e4da0baf9ad5ef3a1d57659bd7-captcha_does_not_match!";a:3:{i:0;R:38242;i:1;R:35350;i:2;R:37115;}s:86:"1208:recaptcha-9e8cda00c59bd58e10f4dc560b6aad393fe9f40a-uses_a_href="http_recaptcha.or";a:3:{i:0;R:38242;i:1;R:35350;i:2;R:37115;}s:86:"1208:registerthrottle-9433035fea67f7be72eeb2d91315a8767469aba8-cannot_find_ip_address.";a:3:{i:0;s:37:"out-statusnet-plugin-registerthrottle";i:1;R:35350;i:2;R:37115;}s:93:"1208:registerthrottle-a08642300e1199e6013525469d8878aed7586c71-too_many_registrations._take_a";a:3:{i:0;R:38246;i:1;R:35350;i:2;R:37115;}s:93:"1208:registerthrottle-f50c7fdb04b787a9c92c64e009cdb20e07786add-a_banned_user_has_registered_f";a:3:{i:0;R:38246;i:1;R:35350;i:2;R:37115;}s:93:"1208:registerthrottle-698c38e5249a9f02d1cadc0eebda795176e96a04-throttles_excessive_registrati";a:3:{i:0;R:38246;i:1;R:35350;i:2;R:37115;}s:98:"1208:requirevalidatedemail-2dd6ee788abdf0ef2aed463f854ed2cdf8500b68-you_must_validate_your_email_a";a:3:{i:0;s:42:"out-statusnet-plugin-requirevalidatedemail";i:1;R:35350;i:2;R:37115;}s:98:"1208:requirevalidatedemail-113b6e7f65dbfb58b27d31dac538b00098cca90d-you_must_provide_an_email_addr";a:3:{i:0;R:38251;i:1;R:35350;i:2;R:37115;}s:98:"1208:requirevalidatedemail-c1e4037ebee261b08c2db58776abadc945324e03-disables_posting_without_a_val";a:3:{i:0;R:38251;i:1;R:35350;i:2;R:37115;}s:94:"1208:requirevalidatedemail-70c2e3f9b18013985a935f28d000e66c60676af0-you_are_already_logged_in.";a:3:{i:0;R:38251;i:1;R:35350;i:2;R:37115;}s:96:"1208:requirevalidatedemail-0feffe469b3c2c57012ccbdf3b9bb07fabf064ea-confirmation_code_not_found.";a:3:{i:0;R:38251;i:1;R:35350;i:2;R:37115;}s:97:"1208:requirevalidatedemail-1516508007596de0ac199de3593206cec735edfd-no_user_for_that_confirmation";a:3:{i:0;R:38251;i:1;R:35350;i:2;R:37115;}s:96:"1208:requirevalidatedemail-2633cc6a6caa5394324fe97620ab9506348f3ef0-unrecognized_address_type_s.";a:3:{i:0;R:38251;i:1;R:35350;i:2;R:37115;}s:97:"1208:requirevalidatedemail-88b9514a2b44c8291f6c4b2e404027700dc4c8f9-that_address_has_already_been";a:3:{i:0;R:38251;i:1;R:35350;i:2;R:37115;}s:87:"1208:requirevalidatedemail-0ddc0940dea7314be3e09646e0f2b0f22a34b39f-password_too_short.";a:3:{i:0;R:38251;i:1;R:35350;i:2;R:37115;}s:91:"1208:requirevalidatedemail-f7c3cd475924dc45e184f50dd91e9e4da76c740b-passwords_do_not_match.";a:3:{i:0;R:38251;i:1;R:35350;i:2;R:37115;}s:98:"1208:requirevalidatedemail-50f4f25d4d22bc9835e4c6b3e0e472cc9e5b600d-you_have_confirmed_the_email_a";a:3:{i:0;R:38251;i:1;R:35350;i:2;R:37115;}s:82:"1208:requirevalidatedemail-f5c8f412ced17309f432417d981c7d37f0532a6a-set_a_password";a:3:{i:0;R:38251;i:1;R:35350;i:2;R:37115;}s:89:"1208:requirevalidatedemail-0e4f1e7ca014c23bb42c16bf0d32af27c235c4ab-confirm_email_address";a:3:{i:0;R:38251;i:1;R:35350;i:2;R:37115;}s:80:"1208:requirevalidatedemail-d850ee188c7c55b64bc3624534de5c5051a57dc6-new_password";a:3:{i:0;R:38251;i:1;R:35350;i:2;R:37115;}s:89:"1208:requirevalidatedemail-93497baedef44bf19ca92cab33ac244be6f9ad73-6_or_more_characters.";a:3:{i:0;R:38251;i:1;R:35350;i:2;R:37115;}s:75:"1208:requirevalidatedemail-992ebb33f4b2d3544a3c097c2476e2e959142daa-confirm";a:3:{i:0;R:38251;i:1;R:35350;i:2;R:37115;}s:91:"1208:requirevalidatedemail-e0dfc75ed73e0c4e716f94ee34c63ce5fc6464de-same_as_password_above.";a:3:{i:0;R:38251;i:1;R:35350;i:2;R:37115;}s:72:"1208:requirevalidatedemail-e85726b34723718d86eeb40ab996e21219883557-save";a:3:{i:0;R:38251;i:1;R:35350;i:2;R:37115;}s:106:"1208:reverseusernameauthentication-c866f7f747483d09cb933acc833954e916075ca5-the_reverse_username_authentic";a:3:{i:0;s:50:"out-statusnet-plugin-reverseusernameauthentication";i:1;R:35350;i:2;R:37115;}s:83:"1208:rsscloud-4a908728b7213498d290a2e6b708c9c087e2d2fd-a_url_parameter_is_required.";a:3:{i:0;s:29:"out-statusnet-plugin-rsscloud";i:1;R:35350;i:2;R:37115;}s:85:"1208:rsscloud-8a986366a194bbdc3bb90b6057248c7ec62fc8d6-this_resource_requires_an_http";a:3:{i:0;R:38272;i:1;R:35350;i:2;R:37115;}s:85:"1208:rsscloud-24d6930bffd5927078da05058dd9857ab6adb975-this_resource_requires_an_http";a:3:{i:0;R:38272;i:1;R:35350;i:2;R:37115;}s:76:"1208:rsscloud-acb8dc29c88a6bac71b79bf3e685125cfd72dec1-request_must_be_post.";a:3:{i:0;R:38272;i:1;R:35350;i:2;R:37115;}s:85:"1208:rsscloud-8235be40cc5c7785a08e3fadf07ea217120c1d44-only_http_post_notifications_a";a:3:{i:0;R:38272;i:1;R:35350;i:2;R:37115;}s:58:"1208:rsscloud-f18a6ea494003f960d41f8f2e611f452d09eb71c-,_\";a:3:{i:0;R:38272;i:1;R:35350;i:2;R:37115;}s:84:"1208:rsscloud-a5bd45c1df62a6ca4754bacbaf83eb39e168cf87-the_following_parameters_were";a:3:{i:0;R:38272;i:1;R:35350;i:2;R:37115;}s:84:"1208:rsscloud-62ca96556a00f2054ce7f68a47d702a35b354a93-you_must_provide_at_least_one";a:3:{i:0;R:38272;i:1;R:35350;i:2;R:37115;}s:85:"1208:rsscloud-d5da4f2c62c6851029583c6575d12fc44e5996c8-feed_subscription_failed_not_a";a:3:{i:0;R:38272;i:1;R:35350;i:2;R:37115;}s:85:"1208:rsscloud-40bd11b5e492247e2b27fa1c845772668eaeb744-feed_subscription_failed_notif";a:3:{i:0;R:38272;i:1;R:35350;i:2;R:37115;}s:85:"1208:rsscloud-2c33269287f6624f046e6852317f55b7c6774ec1-thanks_for_the_subscription._w";a:3:{i:0;R:38272;i:1;R:35350;i:2;R:37115;}s:85:"1208:rsscloud-83218c5d18152e40d9c32c12b72d03cd43c90503-the_rsscloud_plugin_enables_yo";a:3:{i:0;R:38272;i:1;R:35350;i:2;R:37115;}s:58:"1208:sample-f7ff9e8b7bb2e09b70935a5d785e0cc5d9d0abf0-hello";a:3:{i:0;s:27:"out-statusnet-plugin-sample";i:1;R:35350;i:2;R:37115;}s:62:"1208:sample-90c09354f987e96fe09b3d10a0499d2684fc1136-hello,_s!";a:3:{i:0;R:38285;i:1;R:35350;i:2;R:37115;}s:69:"1208:sample-5490621f32b660c0410bf5d397d99330c04af708-hello,_stranger!";a:3:{i:0;R:38285;i:1;R:35350;i:2;R:37115;}s:61:"1208:sample-b0da2e5cf267581d4c096276cf8fc6a7f14a304f-hello,_s";a:3:{i:0;R:38285;i:1;R:35350;i:2;R:37115;}s:82:"1208:sample-4f029e8a8b082ca3c8d3d8b173fdc4b7edbc666b-plural_gettext_i_have_greeted";a:3:{i:0;R:38285;i:1;R:35350;i:2;R:37115;}s:68:"1208:sample-a1eb8eea60800efaa714d32af8658b5c0efb50fb-a_warm_greeting";a:3:{i:0;R:38285;i:1;R:35350;i:2;R:37115;}s:83:"1208:sample-65f2186d29757e681577a7d2bf02f2ea496d722d-a_sample_plugin_to_show_basics";a:3:{i:0;R:38285;i:1;R:35350;i:2;R:37115;}s:83:"1208:sample-ccfec6020072539b0c317030e10b1e9718bf41d3-could_not_save_new_greeting_co";a:3:{i:0;R:38285;i:1;R:35350;i:2;R:37115;}s:83:"1208:sample-0f1c83f6a8492a29b85d4f1e699a4f8ae8d77993-could_not_increment_greeting_c";a:3:{i:0;R:38285;i:1;R:35350;i:2;R:37115;}s:80:"1208:searchsub-3dbe703df118963da2ca719324f9e69106971052-s's_search_subscriptions";a:3:{i:0;s:30:"out-statusnet-plugin-searchsub";i:1;R:35350;i:2;R:37115;}s:85:"1208:searchsub-2978e410282e7e7197a1ab27130952fb7f29a476-1$s's_search_subscriptions,_p";a:3:{i:0;R:38295;i:1;R:35350;i:2;R:37115;}s:86:"1208:searchsub-8ebbcc58907bd2f4d6c8de01ca1bed7632a925ab-you_have_subscribed_to_receive";a:3:{i:0;R:38295;i:1;R:35350;i:2;R:37115;}s:85:"1208:searchsub-f37251ba84e003d1f0613dbb5202c048277eeb5b-s_has_subscribed_to_receive_a";a:3:{i:0;R:38295;i:1;R:35350;i:2;R:37115;}s:85:"1208:searchsub-2401c4c7d77521ac69916e242ee09de9ab2c47f6-you_are_not_subscribed_to_any";a:3:{i:0;R:38295;i:1;R:35350;i:2;R:37115;}s:85:"1208:searchsub-6812ddf4e5f09308ca88b12bd65e396f1973b8fe-s_is_not_subscribed_to_any_se";a:3:{i:0;R:38295;i:1;R:35350;i:2;R:37115;}s:85:"1208:searchsub-096ad0bb62387865607a8ffcba8f3a94e9b0d849-"_a_href="_1$s"_2$s_a_"_since";a:3:{i:0;R:38295;i:1;R:35350;i:2;R:37115;}s:86:"1208:searchsub-6dc33d2860ca63dc6101adf0b2530a060e4d2cde-you_are_not_tracking_the_searc";a:3:{i:0;R:38295;i:1;R:35350;i:2;R:37115;}s:86:"1208:searchsub-7cc559d669cb91160918ab503416a19fbc2b1f2f-could_not_end_a_search_subscri";a:3:{i:0;R:38295;i:1;R:35350;i:2;R:37115;}s:86:"1208:searchsub-7c38a23acabdbf0fdd0ebbc2ef4fd439de74a68b-you_are_no_longer_subscribed_t";a:3:{i:0;R:38295;i:1;R:35350;i:2;R:37115;}s:85:"1208:searchsub-a5f41936e2b5289ade24514732713cd67cc47335-this_action_only_accepts_post";a:3:{i:0;R:38295;i:1;R:35350;i:2;R:37115;}s:85:"1208:searchsub-07363d7dbc93d7e4d63ece8ac5e72bf52dd64506-there_was_a_problem_with_your";a:3:{i:0;R:38295;i:1;R:35350;i:2;R:37115;}s:70:"1208:searchsub-8e2de1e8b1af7cd2b403bd0d27c71332a55ac628-not_logged_in.";a:3:{i:0;R:38295;i:1;R:35350;i:2;R:37115;}s:72:"1208:searchsub-8d094195b13c8d12e5a0ec2b7d16131e7331fa59-no_such_profile.";a:3:{i:0;R:38295;i:1;R:35350;i:2;R:37115;}s:66:"1208:searchsub-dd1242a8fc29346652bfdab77420ee2576b04652-subscribed";a:3:{i:0;R:38295;i:1;R:35350;i:2;R:37115;}s:84:"1208:searchsub-d993dc93a2ef32cafa2260f0282520aec23b5cfd-unsubscribe_from_this_search";a:3:{i:0;R:38295;i:1;R:35350;i:2;R:37115;}s:67:"1208:searchsub-eb622cce4da95abd789ab1a68fb0ff597b8bc8d9-unsubscribe";a:3:{i:0;R:38295;i:1;R:35350;i:2;R:37115;}s:85:"1208:searchsub-c95ec328c1f222130b582942c65d1d8d5b8e6155-unsubscribe_from_this_search.";a:3:{i:0;R:38295;i:1;R:35350;i:2;R:37115;}s:68:"1208:searchsub-9ab84878a997c48c4bd68b3a65572c1e75133b8e-unsubscribed";a:3:{i:0;R:38295;i:1;R:35350;i:2;R:37115;}s:86:"1208:searchsub-460806741f921c4f181100d90bc1ffc9ead13daf-you_are_already_tracking_the_s";a:3:{i:0;R:38295;i:1;R:35350;i:2;R:37115;}s:86:"1208:searchsub-d8923fcf4b87c6f483d7820e4bbd8a07f8db739a-could_not_start_a_search_subsc";a:3:{i:0;R:38295;i:1;R:35350;i:2;R:37115;}s:86:"1208:searchsub-da48bf62fc73f03ddcb2ee09d22832db1d121bfd-you_are_subscribed_to_the_sear";a:3:{i:0;R:38295;i:1;R:35350;i:2;R:37115;}s:85:"1208:searchsub-4d4bb34f3f28b25dbd76f75180f8bae481c2270f-plugin_to_allow_following_all";a:3:{i:0;R:38295;i:1;R:35350;i:2;R:37115;}s:64:"1208:searchsub-499cc4af71fb4840f970bff01d322a2bcba02cc7-searches";a:3:{i:0;R:38295;i:1;R:35350;i:2;R:37115;}s:86:"1208:searchsub-3acff838839e7bdfd540315797e5eaca1c643db5-configure_search_subscriptions";a:3:{i:0;R:38295;i:1;R:35350;i:2;R:37115;}s:86:"1208:searchsub-957af2db135ac4b1bf23e8ede8b0fab46990e4c9-start_following_notices_matchi";a:3:{i:0;R:38295;i:1;R:35350;i:2;R:37115;}s:86:"1208:searchsub-d461d945dffadcedae68e91c144fcaa3876008a6-stop_following_notices_matchin";a:3:{i:0;R:38295;i:1;R:35350;i:2;R:37115;}s:86:"1208:searchsub-f3176d706ce8f71630510440e5dada8cb1e3dd5b-disable_all_tracked_search_sub";a:3:{i:0;R:38295;i:1;R:35350;i:2;R:37115;}s:86:"1208:searchsub-fb8ec5580f8c279eaba71951d20e2517dd27f253-list_all_your_search_subscript";a:3:{i:0;R:38295;i:1;R:35350;i:2;R:37115;}s:86:"1208:searchsub-57db47e307f8a041a09a5b853ba392b5b7ccbb9a-you_are_not_tracking_any_searc";a:3:{i:0;R:38295;i:1;R:35350;i:2;R:37115;}s:60:"1208:searchsub-27e9fa0c734028ca57a7f569cb8c1f91d9df3633-",_"";a:3:{i:0;R:38295;i:1;R:35350;i:2;R:37115;}s:85:"1208:searchsub-d6c548059d53074547df385f8eddf7c3e63aa190-you_are_tracking_searches_for";a:3:{i:0;R:38295;i:1;R:35350;i:2;R:37115;}s:80:"1208:searchsub-2e4d74112f765cfb91379ca5a80dd94aef123628-subscribe_to_this_search";a:3:{i:0;R:38295;i:1;R:35350;i:2;R:37115;}s:65:"1208:searchsub-7d3768264fb28f658bfa8d6c8bf4a992c62b5772-subscribe";a:3:{i:0;R:38295;i:1;R:35350;i:2;R:37115;}s:81:"1208:searchsub-579f0b328f81be5b72cb53d10af993f6663745c2-subscribe_to_this_search.";a:3:{i:0;R:38295;i:1;R:35350;i:2;R:37115;}s:86:"1208:searchsub-d2617ea244db0939f278825b3260e222eadcc139-error_disabling_search_subscri";a:3:{i:0;R:38295;i:1;R:35350;i:2;R:37115;}s:86:"1208:searchsub-967b0bdaf2c644a9800bef0898ce407d9b57753c-disabled_all_your_search_subsc";a:3:{i:0;R:38295;i:1;R:35350;i:2;R:37115;}s:62:"1208:sharenotice-39daf9ec6fb75035f5567bdc86691e00619d7a22-"_s"";a:3:{i:0;s:32:"out-statusnet-plugin-sharenotice";i:1;R:35350;i:2;R:37115;}s:61:"1208:sharenotice-df316e17de9c36858417ba18e0da4da282dea84a-…";a:3:{i:0;R:38333;i:1;R:35350;i:2;R:37115;}s:74:"1208:sharenotice-175a1c5fe6cd471d752d333e94b3b0993f5d5f39-share_on_twitter";a:3:{i:0;R:38333;i:1;R:35350;i:2;R:37115;}s:68:"1208:sharenotice-684bd56c8dee9b09a53c825d2fd1aaf7b0113c5e-share_on_s";a:3:{i:0;R:38333;i:1;R:35350;i:2;R:37115;}s:75:"1208:sharenotice-853f1c24e87a3f9812cebb55b6ffd080e3fe5b01-share_on_facebook";a:3:{i:0;R:38333;i:1;R:35350;i:2;R:37115;}s:87:"1208:sharenotice-bbe9b0813d677664293f4fdacf41695a35567956-this_plugin_allows_sharing_of";a:3:{i:0;R:38333;i:1;R:35350;i:2;R:37115;}s:86:"1208:simpleurl-ab1080be122c6758b03b1f518005422e490de989-you_must_specify_a_serviceurl.";a:3:{i:0;s:30:"out-statusnet-plugin-simpleurl";i:1;R:35350;i:2;R:37115;}s:85:"1208:simpleurl-4bac8ac0c1b38d73219fb01e51bd6cf869b58946-uses_a_href="http_1$s_"_1$s_a";a:3:{i:0;R:38340;i:1;R:35350;i:2;R:37115;}s:61:"1208:sitemap-84ec3e71d2c9d85aaaf417a243c8e7d9f42135fc-sitemap";a:3:{i:0;s:28:"out-statusnet-plugin-sitemap";i:1;R:35350;i:2;R:37115;}s:84:"1208:sitemap-c4a7c0d42c376860e3f00bec1ae9d0f11f652426-sitemap_settings_for_this_stat";a:3:{i:0;R:38343;i:1;R:35350;i:2;R:37115;}s:64:"1208:sitemap-2af222678242593dca663d1555cda29457e3a045-google_key";a:3:{i:0;R:38343;i:1;R:35350;i:2;R:37115;}s:84:"1208:sitemap-9306e948fe1e1684d00762666ac136de13332686-google_webmaster_tools_verific";a:3:{i:0;R:38343;i:1;R:35350;i:2;R:37115;}s:63:"1208:sitemap-b70029596b2cabd1ebe898f6110478b003cdb1f6-yahoo_key";a:3:{i:0;R:38343;i:1;R:35350;i:2;R:37115;}s:84:"1208:sitemap-9dc689efd900001a42df393aefbd8dbfdc49c3eb-yahoo!_site_explorer_verificat";a:3:{i:0;R:38343;i:1;R:35350;i:2;R:37115;}s:62:"1208:sitemap-e670957ec6393135f842b624a13302d4cd801d9b-bing_key";a:3:{i:0;R:38343;i:1;R:35350;i:2;R:37115;}s:84:"1208:sitemap-4f339a6e3831a57ed637668e5d7a5a6987ad8071-bing_webmaster_tools_verificat";a:3:{i:0;R:38343;i:1;R:35350;i:2;R:37115;}s:58:"1208:sitemap-e85726b34723718d86eeb40ab996e21219883557-save";a:3:{i:0;R:38343;i:1;R:35350;i:2;R:37115;}s:76:"1208:sitemap-b7c9a44a894e95ce315825c55357bf1b2fb5b8a2-save_sitemap_settings.";a:3:{i:0;R:38343;i:1;R:35350;i:2;R:37115;}s:75:"1208:sitemap-6f63dfe31c88dc28317e70690bd897f8097639dd-sitemap_configuration";a:3:{i:0;R:38343;i:1;R:35350;i:2;R:37115;}s:61:"1208:sitemap-6d5d9c40b48de30a0c9fbab333025edd2be70328-sitemap";a:3:{i:0;R:38343;i:1;R:35350;i:2;R:37115;}s:84:"1208:sitemap-bc57e5be8ab0bd40bac36b0acac37d6090497570-this_plugin_allows_creation_of";a:3:{i:0;R:38343;i:1;R:35350;i:2;R:37115;}s:92:"1208:slicedfavorites-76e05e2dfdabdb11340db9a1d48601773a8afe4a-shows_timelines_of_popular_not";a:3:{i:0;s:36:"out-statusnet-plugin-slicedfavorites";i:1;R:35350;i:2;R:37115;}s:86:"1208:slicedfavorites-4af0b176d96f47e8e3c11f56d3dcf7b2b40aa038-unknown_favorites_slice.";a:3:{i:0;R:38357;i:1;R:35350;i:2;R:37115;}s:89:"1208:sphinxsearch-adc9a3b1f25d2605599bb7186925ec32f3e8b1b9-sphinx_search_could_not_identi";a:3:{i:0;s:33:"out-statusnet-plugin-sphinxsearch";i:1;R:35350;i:2;R:37115;}s:89:"1208:sphinxsearch-8a16887c04bfdaa698d39cadab6f76360c70dc05-sphinx_php_extension_must_be_i";a:3:{i:0;R:38360;i:1;R:35350;i:2;R:37115;}s:89:"1208:sphinxsearch-acbcfb90cf3f519bbc6d2d6acdddf0c69d90ff25-plugin_for_sphinx_search_backe";a:3:{i:0;R:38360;i:1;R:35350;i:2;R:37115;}s:84:"1208:spotify-c0e77853b4f2b53ee5ef099256b0cf7437d26eda-create_pretty_a_href="http_www";a:3:{i:0;s:28:"out-statusnet-plugin-spotify";i:1;R:35350;i:2;R:37115;}s:87:"1208:sqlprofile-c1615b63c45ffdf0a6641f3538d39556b5a09dde-debug_tool_to_watch_for_poorly";a:3:{i:0;s:31:"out-statusnet-plugin-sqlprofile";i:1;R:35350;i:2;R:37115;}s:85:"1208:sqlstats-c1615b63c45ffdf0a6641f3538d39556b5a09dde-debug_tool_to_watch_for_poorly";a:3:{i:0;s:29:"out-statusnet-plugin-sqlstats";i:1;R:35350;i:2;R:37115;}s:99:"1208:stricttransportsecurity-2f331912b77e8b1cfa2122bfe55481f2e850ad5e-the_strict_transport_security";a:3:{i:0;s:44:"out-statusnet-plugin-stricttransportsecurity";i:1;R:35350;i:2;R:37115;}s:75:"1208:submirror-f66d64098f74be272a9b011a15f4659b14baa573-invalid_feed_url_s.";a:3:{i:0;s:30:"out-statusnet-plugin-submirror";i:1;R:35350;i:2;R:37115;}s:86:"1208:submirror-40d4bdc88f7482531e8dcec88da5c004bb0441a6-invalid_profile_for_mirroring.";a:3:{i:0;R:38372;i:1;R:35350;i:2;R:37115;}s:86:"1208:submirror-c53cd3151cbddd00a0e2f1cb054a6521fcfca417-cannot_mirror_a_statusnet_grou";a:3:{i:0;R:38372;i:1;R:35350;i:2;R:37115;}s:85:"1208:submirror-a5f41936e2b5289ade24514732713cd67cc47335-this_action_only_accepts_post";a:3:{i:0;R:38372;i:1;R:35350;i:2;R:37115;}s:85:"1208:submirror-07363d7dbc93d7e4d63ece8ac5e72bf52dd64506-there_was_a_problem_with_your";a:3:{i:0;R:38372;i:1;R:35350;i:2;R:37115;}s:70:"1208:submirror-8e2de1e8b1af7cd2b403bd0d27c71332a55ac628-not_logged_in.";a:3:{i:0;R:38372;i:1;R:35350;i:2;R:37115;}s:66:"1208:submirror-dd1242a8fc29346652bfdab77420ee2576b04652-subscribed";a:3:{i:0;R:38372;i:1;R:35350;i:2;R:37115;}s:86:"1208:submirror-66dc6d09137971ed9779e2179c65161c1ddb4fdc-requested_invalid_profile_to_e";a:3:{i:0;R:38372;i:1;R:35350;i:2;R:37115;}s:70:"1208:submirror-092777c17919c8723d9df4a551e53cd4e6a95d1b-bad_form_data.";a:3:{i:0;R:38372;i:1;R:35350;i:2;R:37115;}s:86:"1208:submirror-ed9c771eeea2188202b0ccf7dd73b6d7edd1218e-the_mirror_request_failed,_bec";a:3:{i:0;R:38372;i:1;R:35350;i:2;R:37115;}s:86:"1208:submirror-1fa3e9680b4d6b4e1eea9ff1f128e041f6ef610c-internal_form_error_unrecogniz";a:3:{i:0;R:38372;i:1;R:35350;i:2;R:37115;}s:84:"1208:submirror-7212c0595a4650a4575c98571ae76a70531f32f0-could_not_subscribe_to_feed.";a:3:{i:0;R:38372;i:1;R:35350;i:2;R:37115;}s:76:"1208:submirror-76cb54f6366e2f81a02193d2bb230357f335cc5b-feed_mirror_settings";a:3:{i:0;R:38372;i:1;R:35350;i:2;R:37115;}s:86:"1208:submirror-c27151e036af358c78f751821b840e41000a7d9e-you_can_mirror_updates_from_ma";a:3:{i:0;R:38372;i:1;R:35350;i:2;R:37115;}s:68:"1208:submirror-fec1bbe7493f5fd8d7fc2acfa65f58bbbd714aeb-provider_add";a:3:{i:0;R:38372;i:1;R:35350;i:2;R:37115;}s:86:"1208:submirror-ea65217006e6a9d0b045ffe0ac9fc6e4eaf2d0f8-pull_feeds_into_your_timeline!";a:3:{i:0;R:38372;i:1;R:35350;i:2;R:37115;}s:65:"1208:submirror-75aaee8d2fbb066e95856f14fe83b7ecc168fe99-mirroring";a:3:{i:0;R:38372;i:1;R:35350;i:2;R:37115;}s:86:"1208:submirror-62ae7d9d87d7161da31b4f5014010ea6a037c324-configure_mirroring_of_posts_f";a:3:{i:0;R:38372;i:1;R:35350;i:2;R:37115;}s:70:"1208:submirror-03a2e127ed85141db05c59a6ecce8b062d8f32dd-mirrored_feeds";a:3:{i:0;R:38372;i:1;R:35350;i:2;R:37115;}s:76:"1208:submirror-5fab8648820873b0c1ed8c31ff578806eee7cb44-web_page_or_feed_url";a:3:{i:0;R:38372;i:1;R:35350;i:2;R:37115;}s:64:"1208:submirror-d9c2093623d6ac3effb708b2ec044291b221bdae-add_feed";a:3:{i:0;R:38372;i:1;R:35350;i:2;R:37115;}s:72:"1208:submirror-4cb246b9454b3f596653bdb0ddaa950ce6c4d822-twitter_username";a:3:{i:0;R:38372;i:1;R:35350;i:2;R:37115;}s:67:"1208:submirror-b4ab80a2b2966f00f1ad1b588115aae5c8fc6256-remote_feed";a:3:{i:0;R:38372;i:1;R:35350;i:2;R:37115;}s:66:"1208:submirror-c1d9a58c909a57742383c54f00a6e251bb68cbb4-local_user";a:3:{i:0;R:38372;i:1;R:35350;i:2;R:37115;}s:71:"1208:submirror-a87677e029bd73528f0ad1f191a2ce508d1d2217-mirroring_style";a:3:{i:0;R:38372;i:1;R:35350;i:2;R:37115;}s:85:"1208:submirror-74ef3084f4d805af90e5d5f0db3b3151243db55f-repeat_reference_the_original";a:3:{i:0;R:38372;i:1;R:35350;i:2;R:37115;}s:86:"1208:submirror-efe42d458feb449532f260e5a524423b9bb5dbd5-repost_the_content_under_my_ac";a:3:{i:0;R:38372;i:1;R:35350;i:2;R:37115;}s:60:"1208:submirror-e85726b34723718d86eeb40ab996e21219883557-save";a:3:{i:0;R:38372;i:1;R:35350;i:2;R:37115;}s:70:"1208:submirror-90db67e69f8982b81d6de74a9547f7a0f0756f7b-stop_mirroring";a:3:{i:0;R:38372;i:1;R:35350;i:2;R:37115;}s:63:"1208:submirror-5392c950bdde4be7e5f5b8fdc6a1ca5f21e905cf-twitter";a:3:{i:0;R:38372;i:1;R:35350;i:2;R:37115;}s:72:"1208:submirror-87ac5c0dc3f80a2ff8b920a27cce1324360c281e-rss_or_atom_feed";a:3:{i:0;R:38372;i:1;R:35350;i:2;R:37115;}s:78:"1208:submirror-35f2291afccdaea2ecdb93772eac521930931e14-select_a_feed_provider";a:3:{i:0;R:38372;i:1;R:35350;i:2;R:37115;}s:97:"1208:subscriptionthrottle-34e1be0f6ad3b65ca97ac816671a671c3073361b-too_many_subscriptions._take_a";a:3:{i:0;s:41:"out-statusnet-plugin-subscriptionthrottle";i:1;R:35350;i:2;R:37115;}s:97:"1208:subscriptionthrottle-0b15e9f207709d75e23ee3e218dc424d9cf4125c-too_many_memberships._take_a_b";a:3:{i:0;R:38405;i:1;R:35350;i:2;R:37115;}s:97:"1208:subscriptionthrottle-bce96e62c65185c781aba67160072ba82d3e9917-configurable_limits_for_subscr";a:3:{i:0;R:38405;i:1;R:35350;i:2;R:37115;}s:85:"1208:tabfocus-d43496d53a8ceca502a5cc0ca444cb9eba1ac973-tabfocus_changes_the_notice_fo";a:3:{i:0;s:29:"out-statusnet-plugin-tabfocus";i:1;R:35350;i:2;R:37115;}s:78:"1208:tagsub-29cb8c970a75b482ee16bfe7c26bc77d2b3e4e0b-unsubscribe_from_this_tag";a:3:{i:0;s:27:"out-statusnet-plugin-tagsub";i:1;R:35350;i:2;R:37115;}s:64:"1208:tagsub-eb622cce4da95abd789ab1a68fb0ff597b8bc8d9-unsubscribe";a:3:{i:0;R:38411;i:1;R:35350;i:2;R:37115;}s:79:"1208:tagsub-c14924ac1001cbc933df6d15631dd58afc160e79-unsubscribe_from_this_tag.";a:3:{i:0;R:38411;i:1;R:35350;i:2;R:37115;}s:82:"1208:tagsub-b24bfcf878b95d9630eee5c7c553735383519fac-plugin_to_allow_following_all";a:3:{i:0;R:38411;i:1;R:35350;i:2;R:37115;}s:57:"1208:tagsub-4d6a4a083fa24c8dbcd45e99621a7f9cbe5d0d62-tags";a:3:{i:0;R:38411;i:1;R:35350;i:2;R:37115;}s:80:"1208:tagsub-f680624b741bc5e864a563107f5e544067a7929f-configure_tag_subscriptions";a:3:{i:0;R:38411;i:1;R:35350;i:2;R:37115;}s:57:"1208:tagsub-848eed0fbd5429f556b2982dec3ea87136e33e44-tags";a:3:{i:0;R:38411;i:1;R:35350;i:2;R:37115;}s:74:"1208:tagsub-e63ac9ad38b6abf13a31fe9b417745db992ee636-subscribe_to_this_tag";a:3:{i:0;R:38411;i:1;R:35350;i:2;R:37115;}s:62:"1208:tagsub-7d3768264fb28f658bfa8d6c8bf4a992c62b5772-subscribe";a:3:{i:0;R:38411;i:1;R:35350;i:2;R:37115;}s:75:"1208:tagsub-c668b8440b61a3f35a825454b79b414472cfbd19-subscribe_to_this_tag.";a:3:{i:0;R:38411;i:1;R:35350;i:2;R:37115;}s:65:"1208:tagsub-9ab84878a997c48c4bd68b3a65572c1e75133b8e-unsubscribed";a:3:{i:0;R:38411;i:1;R:35350;i:2;R:37115;}s:82:"1208:tagsub-a5f41936e2b5289ade24514732713cd67cc47335-this_action_only_accepts_post";a:3:{i:0;R:38411;i:1;R:35350;i:2;R:37115;}s:82:"1208:tagsub-07363d7dbc93d7e4d63ece8ac5e72bf52dd64506-there_was_a_problem_with_your";a:3:{i:0;R:38411;i:1;R:35350;i:2;R:37115;}s:67:"1208:tagsub-8e2de1e8b1af7cd2b403bd0d27c71332a55ac628-not_logged_in.";a:3:{i:0;R:38411;i:1;R:35350;i:2;R:37115;}s:69:"1208:tagsub-8d094195b13c8d12e5a0ec2b7d16131e7331fa59-no_such_profile.";a:3:{i:0;R:38411;i:1;R:35350;i:2;R:37115;}s:63:"1208:tagsub-dd1242a8fc29346652bfdab77420ee2576b04652-subscribed";a:3:{i:0;R:38411;i:1;R:35350;i:2;R:37115;}s:74:"1208:tagsub-971552804b64163bfbdac2e17ba8382a8b6896e9-s's_tag_subscriptions";a:3:{i:0;R:38411;i:1;R:35350;i:2;R:37115;}s:82:"1208:tagsub-6621021c4c939577a969ed96841896fd96f508d6-1$s's_tag_subscriptions,_page";a:3:{i:0;R:38411;i:1;R:35350;i:2;R:37115;}s:83:"1208:tagsub-717be052e00b025745ef4c579e1cf610b7b72934-you_have_subscribed_to_receive";a:3:{i:0;R:38411;i:1;R:35350;i:2;R:37115;}s:82:"1208:tagsub-06f6638d4742558d4bd516697b42b2e81fc3ec6c-s_has_subscribed_to_receive_a";a:3:{i:0;R:38411;i:1;R:35350;i:2;R:37115;}s:83:"1208:tagsub-8ccf40ca460d467034d3c6f3cf83f66449c5f653-you_are_not_listening_to_any_h";a:3:{i:0;R:38411;i:1;R:35350;i:2;R:37115;}s:81:"1208:tagsub-547a094146a2803770ba3ddefa56acafc0b27242-s_is_not_following_any_tags.";a:3:{i:0;R:38411;i:1;R:35350;i:2;R:37115;}s:82:"1208:tagsub-f87aef2804a833387dfe23fc8247d5ce50802644-a_href="_1$s"_2$s_a_since_3$s";a:3:{i:0;R:38411;i:1;R:35350;i:2;R:37115;}s:85:"1208:tighturl-ab1080be122c6758b03b1f518005422e490de989-you_must_specify_a_serviceurl.";a:3:{i:0;s:29:"out-statusnet-plugin-tighturl";i:1;R:35350;i:2;R:37115;}s:84:"1208:tighturl-4bac8ac0c1b38d73219fb01e51bd6cf869b58946-uses_a_href="http_1$s_"_1$s_a";a:3:{i:0;R:38435;i:1;R:35350;i:2;R:37115;}s:84:"1208:tinymce-407f1009569b97250d15d094c91d9b46dd1aeb4f-use_tinymce_library_to_allow_r";a:3:{i:0;s:28:"out-statusnet-plugin-tinymce";i:1;R:35350;i:2;R:37115;}s:76:"1208:twitterbridge-e4c40db8772116034a463a5271fc78fa363de612-twitter_settings";a:3:{i:0;s:34:"out-statusnet-plugin-twitterbridge";i:1;R:35350;i:2;R:37115;}s:90:"1208:twitterbridge-4184d42e213c82902d7a53d5fc2b185f48a07c82-connect_your_twitter_account_t";a:3:{i:0;R:38440;i:1;R:35350;i:2;R:37115;}s:75:"1208:twitterbridge-3f9f33e224df5e093bad041e4e285cff74714490-twitter_account";a:3:{i:0;R:38440;i:1;R:35350;i:2;R:37115;}s:85:"1208:twitterbridge-c6115208c345429001311d6d0cdb96f7ab355fbe-connected_twitter_account";a:3:{i:0;R:38440;i:1;R:35350;i:2;R:37115;}s:90:"1208:twitterbridge-53b955628f0d3e8eeb445dc35da671930146761a-disconnect_my_account_from_twi";a:3:{i:0;R:38440;i:1;R:35350;i:2;R:37115;}s:90:"1208:twitterbridge-b7d11b6b4dbf25ae3a7d1e16fab0051dbf988b75-disconnecting_your_twitter_acc";a:3:{i:0;R:38440;i:1;R:35350;i:2;R:37115;}s:90:"1208:twitterbridge-78621db8a0e3858022a083294491138a9b447063-keep_your_1$s_account_but_disc";a:3:{i:0;R:38440;i:1;R:35350;i:2;R:37115;}s:70:"1208:twitterbridge-d19ad8912000fdefe232cfe0b9668a713191adf4-disconnect";a:3:{i:0;R:38440;i:1;R:35350;i:2;R:37115;}s:71:"1208:twitterbridge-9dfd349ebee555eb8d652be20dad971cae439eca-preferences";a:3:{i:0;R:38440;i:1;R:35350;i:2;R:37115;}s:89:"1208:twitterbridge-5da64bc83b8123b35adcbadf216791c4ef1165e2-automatically_send_my_notices";a:3:{i:0;R:38440;i:1;R:35350;i:2;R:37115;}s:90:"1208:twitterbridge-7bca6d699a2b6a778dcaa3c813a7ae459187e246-send_local_"@"_replies_to_twit";a:3:{i:0;R:38440;i:1;R:35350;i:2;R:37115;}s:90:"1208:twitterbridge-8a9fd8a5db83cdd19177814c36a0ac506614e7ba-subscribe_to_my_twitter_friend";a:3:{i:0;R:38440;i:1;R:35350;i:2;R:37115;}s:87:"1208:twitterbridge-c4f1f2b938c2bc637e5dc920f801676adee1c9a9-import_my_friends_timeline.";a:3:{i:0;R:38440;i:1;R:35350;i:2;R:37115;}s:64:"1208:twitterbridge-e85726b34723718d86eeb40ab996e21219883557-save";a:3:{i:0;R:38440;i:1;R:35350;i:2;R:37115;}s:63:"1208:twitterbridge-e1562fed201c341ce7bd08b9cd421f3b379222b8-add";a:3:{i:0;R:38440;i:1;R:35350;i:2;R:37115;}s:89:"1208:twitterbridge-07363d7dbc93d7e4d63ece8ac5e72bf52dd64506-there_was_a_problem_with_your";a:3:{i:0;R:38440;i:1;R:35350;i:2;R:37115;}s:87:"1208:twitterbridge-7bba1c3a51cc7b727087dd3414b028e505991127-unexpected_form_submission.";a:3:{i:0;R:38440;i:1;R:35350;i:2;R:37115;}s:90:"1208:twitterbridge-ea2fea767cc0e97ca74c9e10c272ee2d7dce9c5a-no_twitter_connection_to_remov";a:3:{i:0;R:38440;i:1;R:35350;i:2;R:37115;}s:90:"1208:twitterbridge-b53c91d531c78817d59320c843ab15823f12952c-could_not_remove_twitter_user.";a:3:{i:0;R:38440;i:1;R:35350;i:2;R:37115;}s:89:"1208:twitterbridge-9a4bc0cba5020b881d57bfd62ca5cfd581be7dce-twitter_account_disconnected.";a:3:{i:0;R:38440;i:1;R:35350;i:2;R:37115;}s:90:"1208:twitterbridge-72738494ab75eb3d6fdf1d07ea4fc52b7205217a-could_not_save_twitter_prefere";a:3:{i:0;R:38440;i:1;R:35350;i:2;R:37115;}s:86:"1208:twitterbridge-98ddf70513ee2f444bc7aa28db0bd216f392b608-twitter_preferences_saved.";a:3:{i:0;R:38440;i:1;R:35350;i:2;R:37115;}s:89:"1208:twitterbridge-01e682ef71cedbd33b744626ec870dd46f6a2210-you_cannot_register_if_you_do";a:3:{i:0;R:38440;i:1;R:35350;i:2;R:37115;}s:85:"1208:twitterbridge-674f224854ecf6f0f452e50e257cc88c27cc9189-something_weird_happened.";a:3:{i:0;R:38440;i:1;R:35350;i:2;R:37115;}s:90:"1208:twitterbridge-2336ffa622ab40ca5ac51b690338d918671f1345-could_not_link_your_twitter_ac";a:3:{i:0;R:38440;i:1;R:35350;i:2;R:37115;}s:90:"1208:twitterbridge-bae722f55b1996f85381b36efcce3bbead4b88a9-could_not_link_your_twitter_ac";a:3:{i:0;R:38440;i:1;R:35350;i:2;R:37115;}s:90:"1208:twitterbridge-01005d7ed27081766f5e7bf5f93673b7ef88dcad-this_is_the_first_time_you_hav";a:3:{i:0;R:38440;i:1;R:35350;i:2;R:37115;}s:81:"1208:twitterbridge-55db5197c758f5e11b675c541a8a1003f7003e9d-twitter_account_setup";a:3:{i:0;R:38440;i:1;R:35350;i:2;R:37115;}s:78:"1208:twitterbridge-64383c6f06913c6df1b90e4bd8e57f1d51457d76-connection_options";a:3:{i:0;R:38440;i:1;R:35350;i:2;R:37115;}s:78:"1208:twitterbridge-a7bff9684e9c4fb2b0187cd81972a1a99249f393-create_new_account";a:3:{i:0;R:38440;i:1;R:35350;i:2;R:37115;}s:90:"1208:twitterbridge-84f3905c73f0943dd56b4c5dbe015f0f975c30c2-create_a_new_user_with_this_ni";a:3:{i:0;R:38440;i:1;R:35350;i:2;R:37115;}s:72:"1208:twitterbridge-3a4eaad2fb5628204eb54cb59c8d56baac637f07-new_nickname";a:3:{i:0;R:38440;i:1;R:35350;i:2;R:37115;}s:90:"1208:twitterbridge-2d5af6a79c80b154bef7d5ff52d6db27755e287f-1-64_lowercase_letters_or_numb";a:3:{i:0;R:38440;i:1;R:35350;i:2;R:37115;}s:65:"1208:twitterbridge-54213adf04451f300fe4c09f545b5f52a862c185-email";a:3:{i:0;R:38440;i:1;R:35350;i:2;R:37115;}s:90:"1208:twitterbridge-dd7d1a67a63e6a2fad2a061430cdf7f90647c1ce-used_only_for_updates,_announc";a:3:{i:0;R:38440;i:1;R:35350;i:2;R:37115;}s:66:"1208:twitterbridge-739b11519d45061bc93f4d38854460ecf67a6429-create";a:3:{i:0;R:38440;i:1;R:35350;i:2;R:37115;}s:84:"1208:twitterbridge-b775b749217d4e734ba81e0093a20bbac8185801-connect_existing_account";a:3:{i:0;R:38440;i:1;R:35350;i:2;R:37115;}s:90:"1208:twitterbridge-ee55781b4c7b80dde72e2fc812cb5b4579683206-if_you_already_have_an_account";a:3:{i:0;R:38440;i:1;R:35350;i:2;R:37115;}s:77:"1208:twitterbridge-03b13d9f66e7f2a94f311a5146c474184f490258-existing_nickname";a:3:{i:0;R:38440;i:1;R:35350;i:2;R:37115;}s:68:"1208:twitterbridge-8be3c943b1609fffbfc51aad666d0a04adf83c9d-password";a:3:{i:0;R:38440;i:1;R:35350;i:2;R:37115;}s:67:"1208:twitterbridge-3229609e15436ec51bcf00818a69a84dbc58a0c2-license";a:3:{i:0;R:38440;i:1;R:35350;i:2;R:37115;}s:90:"1208:twitterbridge-1c2574b14145598c6fa33cc45425952463977cec-my_text_and_files_are_availabl";a:3:{i:0;R:38440;i:1;R:35350;i:2;R:37115;}s:67:"1208:twitterbridge-eb508f5905b6f621060e2c063fedb41b040ee0bc-connect";a:3:{i:0;R:38440;i:1;R:35350;i:2;R:37115;}s:85:"1208:twitterbridge-38cbc2b2241ff6e84bd71264abd0b941448e5f11-registration_not_allowed.";a:3:{i:0;R:38440;i:1;R:35350;i:2;R:37115;}s:88:"1208:twitterbridge-d496aefd2dd8e3b02a2ef17a7667c75ba1fd5eca-not_a_valid_invitation_code.";a:3:{i:0;R:38440;i:1;R:35350;i:2;R:37115;}s:81:"1208:twitterbridge-af99c57fac97957951bf39669fd880418730fe8a-nickname_not_allowed.";a:3:{i:0;R:38440;i:1;R:35350;i:2;R:37115;}s:90:"1208:twitterbridge-b3bd02b41b8e1fa2de777ba31fb092bae01ccce7-nickname_already_in_use._try_a";a:3:{i:0;R:38440;i:1;R:35350;i:2;R:37115;}s:83:"1208:twitterbridge-bd604ba4e05921a4a3bb7e451832a41c22a01be5-error_registering_user.";a:3:{i:0;R:38440;i:1;R:35350;i:2;R:37115;}s:90:"1208:twitterbridge-b9973c7ad77dd363096f5bbcd996d600301bb13f-error_connecting_user_to_twitt";a:3:{i:0;R:38440;i:1;R:35350;i:2;R:37115;}s:89:"1208:twitterbridge-0cc909be0f2da4ba1a41bb22abd333ee5d822722-invalid_username_or_password.";a:3:{i:0;R:38440;i:1;R:35350;i:2;R:37115;}s:67:"1208:twitterbridge-85f9731ef356bb409e29909ae05d43457d289f98-twitter";a:3:{i:0;R:38440;i:1;R:35350;i:2;R:37115;}s:83:"1208:twitterbridge-1a5a20d43ecf9042d015fdbbe0932333c091f033-twitter_bridge_settings";a:3:{i:0;R:38440;i:1;R:35350;i:2;R:37115;}s:89:"1208:twitterbridge-248e3e4cf2fddbedeff48f3f618fda197cffd6bf-invalid_consumer_key._maximum";a:3:{i:0;R:38440;i:1;R:35350;i:2;R:37115;}s:90:"1208:twitterbridge-7264fd7ada3a0d1be5c8bd5a096f0d0c5212ce83-invalid_consumer_secret._maxim";a:3:{i:0;R:38440;i:1;R:35350;i:2;R:37115;}s:88:"1208:twitterbridge-51b3e1962ce95eb7b127161b4fff6d1ebb64edc1-twitter_application_settings";a:3:{i:0;R:38440;i:1;R:35350;i:2;R:37115;}s:72:"1208:twitterbridge-1d8242026b516b87520dfb3c6612ac416f79deaf-consumer_key";a:3:{i:0;R:38440;i:1;R:35350;i:2;R:37115;}s:90:"1208:twitterbridge-ab2031b0d0ffac3f85df245e73c2f44e67cee0da-the_consumer_key_assigned_by_t";a:3:{i:0;R:38440;i:1;R:35350;i:2;R:37115;}s:75:"1208:twitterbridge-a76f1d0d217d57a1a44d4849cccbb0102ed2f0fd-consumer_secret";a:3:{i:0;R:38440;i:1;R:35350;i:2;R:37115;}s:90:"1208:twitterbridge-db0e037e691c672c1d007fe862c34c6bf4e1a1c3-the_consumer_secret_assigned_b";a:3:{i:0;R:38440;i:1;R:35350;i:2;R:37115;}s:90:"1208:twitterbridge-9bc9644e9eb196ce23a7ebe42b34373ab2c99cfb-note_a_global_consumer_key_and";a:3:{i:0;R:38440;i:1;R:35350;i:2;R:37115;}s:78:"1208:twitterbridge-c03d4bfb6c5058a520f110642a3cecf2200328dd-integration_source";a:3:{i:0;R:38440;i:1;R:35350;i:2;R:37115;}s:90:"1208:twitterbridge-d30e132a6a98d2851f77c8da1b7c37e8d289fdf7-the_name_of_your_twitter_appli";a:3:{i:0;R:38440;i:1;R:35350;i:2;R:37115;}s:67:"1208:twitterbridge-6bf5da9c080bee3a8142586c412aa39971137eee-options";a:3:{i:0;R:38440;i:1;R:35350;i:2;R:37115;}s:89:"1208:twitterbridge-a0b6f94c6d6844bd88ba0c4bea14a10edc106c31-enable_"sign-in_with_twitter"";a:3:{i:0;R:38440;i:1;R:35350;i:2;R:37115;}s:90:"1208:twitterbridge-ac845896a5ea9c4af57271587743c2aa58309852-this_allow_users_to_login_with";a:3:{i:0;R:38440;i:1;R:35350;i:2;R:37115;}s:81:"1208:twitterbridge-12326561eb20ad4798d0152144e4ab25be8f89cc-enable_twitter_import";a:3:{i:0;R:38440;i:1;R:35350;i:2;R:37115;}s:90:"1208:twitterbridge-4ff9cfa2262e4bd3b068f02a71661f7ee8a962fa-allow_users_to_import_their_tw";a:3:{i:0;R:38440;i:1;R:35350;i:2;R:37115;}s:90:"1208:twitterbridge-484d01046955751031a1116823cd92c02564bbb6-save_the_twitter_bridge_settin";a:3:{i:0;R:38440;i:1;R:35350;i:2;R:37115;}s:90:"1208:twitterbridge-2c300e01a4aa1e2019adc4a363f8a7bd90bb643b-invalid_url_scheme_for_http_st";a:3:{i:0;R:38440;i:1;R:35350;i:2;R:37115;}s:90:"1208:twitterbridge-2bf695d49650a2ed8fc77e4dcb2e9e6068dcd13a-got_input_from_unexpected_sock";a:3:{i:0;R:38440;i:1;R:35350;i:2;R:37115;}s:90:"1208:twitterbridge-73cbd95ffcd2c3c1ce94adedffa19b3c746910c7-invalid_state_in_handleline_s.";a:3:{i:0;R:38440;i:1;R:35350;i:2;R:37115;}s:89:"1208:twitterbridge-2bc44f9290a195ea0f449d9492c4b9e5fce13f96-invalid_http_response_line_s.";a:3:{i:0;R:38440;i:1;R:35350;i:2;R:37115;}s:90:"1208:twitterbridge-6352e8a7c9126d6b4da2b1955f00992f53c9b66d-invalid_http_response_line_chu";a:3:{i:0;R:38440;i:1;R:35350;i:2;R:37115;}s:90:"1208:twitterbridge-99d247d3b3898671275868374f9b5987b3923b44-bad_http_response_code_1$s_2$s";a:3:{i:0;R:38440;i:1;R:35350;i:2;R:37115;}s:67:"1208:twitterbridge-5e15e50a812434d6e07588f2c5b941d1070b7025-twitter";a:3:{i:0;R:38440;i:1;R:35350;i:2;R:37115;}s:90:"1208:twitterbridge-eed99142b408bd3c6465cceec790d62ecbe82b7c-login_or_register_using_twitte";a:3:{i:0;R:38440;i:1;R:35350;i:2;R:37115;}s:87:"1208:twitterbridge-02df8cb79d42efa2e16a829d6af0089823d07ad3-twitter_integration_options";a:3:{i:0;R:38440;i:1;R:35350;i:2;R:37115;}s:67:"1208:twitterbridge-5392c950bdde4be7e5f5b8fdc6a1ca5f21e905cf-twitter";a:3:{i:0;R:38440;i:1;R:35350;i:2;R:37115;}s:90:"1208:twitterbridge-c5ae5a6d3dea257fa34bf0b6b0af0053ea413eaa-twitter_bridge_configuration_p";a:3:{i:0;R:38440;i:1;R:35350;i:2;R:37115;}s:90:"1208:twitterbridge-eb7e7e6c181f7b36728ac3b5153527f3874deca6-the_twitter_"bridge"_plugin_al";a:3:{i:0;R:38440;i:1;R:35350;i:2;R:37115;}s:78:"1208:twitterbridge-fbbbfe3331edb0c2ce74bef6f8d5749c52c3017b-already_logged_in.";a:3:{i:0;R:38440;i:1;R:35350;i:2;R:37115;}s:73:"1208:twitterbridge-bfae71f5ad6193a8a75e08417106ca076eec2ac9-twitter_login";a:3:{i:0;R:38440;i:1;R:35350;i:2;R:37115;}s:90:"1208:twitterbridge-21b20a0bf2d826f784f49980107e1145d009826c-login_with_your_twitter_accoun";a:3:{i:0;R:38440;i:1;R:35350;i:2;R:37115;}s:80:"1208:twitterbridge-6c3c1de299e8e958290bcabc34a72ff09ce336c4-sign_in_with_twitter";a:3:{i:0;R:38440;i:1;R:35350;i:2;R:37115;}s:90:"1208:twitterbridge-230cf0dd6bfdc10c8010731c542808f25bfbd7a9-your_twitter_bridge_has_been_d";a:3:{i:0;R:38440;i:1;R:35350;i:2;R:37115;}s:90:"1208:twitterbridge-4b0be96ac552eb363fa96e64725cdcbb1086a82a-hi,_1$s._we're_sorry_to_inform";a:3:{i:0;R:38440;i:1;R:35350;i:2;R:37115;}s:72:"1208:twitterbridge-35db97a57d981c643479b9cb6f58be2d093aff08-rt_@_1$s_2$s";a:3:{i:0;R:38440;i:1;R:35350;i:2;R:37115;}s:73:"1208:userflag-0c686c1c10c1650ec0dc3e775a967bdf5a452595-flagged_for_review";a:3:{i:0;s:29:"out-statusnet-plugin-userflag";i:1;R:35350;i:2;R:37115;}s:62:"1208:userflag-f8db8a172be6fab179a39aa7dee85e1f7afcbd56-flagged";a:3:{i:0;R:38528;i:1;R:35350;i:2;R:37115;}s:85:"1208:userflag-c5651a36dd173dcd0ea3d8448db7d73542bf7e15-this_plugin_allows_flagging_of";a:3:{i:0;R:38528;i:1;R:35350;i:2;R:37115;}s:59:"1208:userflag-a774409a00c21de377cf8ed5c6a56b8547973042-flag";a:3:{i:0;R:38528;i:1;R:35350;i:2;R:37115;}s:79:"1208:userflag-49dacacd78a16a7a46278692a95af0807f3c0b8a-flag_profile_for_review.";a:3:{i:0;R:38528;i:1;R:35350;i:2;R:37115;}s:60:"1208:userflag-719ea396ad92e01b4757ec2b93bb1e5f270f771d-clear";a:3:{i:0;R:38528;i:1;R:35350;i:2;R:37115;}s:70:"1208:userflag-6302280bc4fe06e8e430f4cec93a64763b6dab86-clear_all_flags";a:3:{i:0;R:38528;i:1;R:35350;i:2;R:37115;}s:69:"1208:userflag-8e2de1e8b1af7cd2b403bd0d27c71332a55ac628-not_logged_in.";a:3:{i:0;R:38528;i:1;R:35350;i:2;R:37115;}s:85:"1208:userflag-8d84e1170627e711f5fa5b8eef03fd7133b7e1fa-you_cannot_review_profile_flag";a:3:{i:0;R:38528;i:1;R:35350;i:2;R:37115;}s:71:"1208:userflag-37eaf35e81b524ee508aa20754f125792dfd50a3-flagged_profiles";a:3:{i:0;R:38528;i:1;R:35350;i:2;R:37115;}s:63:"1208:userflag-ea8b09c2354b17c2a83673437d6380be0e7b8c73-moderate";a:3:{i:0;R:38528;i:1;R:35350;i:2;R:37115;}s:84:"1208:userflag-7f8b0a253ba09e942e6edf330d35694b3a3b527d-plural_gettext_flagged_by_1$s";a:3:{i:0;R:38528;i:1;R:35350;i:2;R:37115;}s:67:"1208:userflag-b71078e6b5d33bae69834c034f35f77be0c1daa8-flagged_by_s";a:3:{i:0;R:38528;i:1;R:35350;i:2;R:37115;}s:85:"1208:userflag-37773c1e891a346a678978c314624e0753752482-could_not_clear_flags_for_prof";a:3:{i:0;R:38528;i:1;R:35350;i:2;R:37115;}s:68:"1208:userflag-134c1991a49d49253428b42d5478cebf9a97895c-flags_cleared";a:3:{i:0;R:38528;i:1;R:35350;i:2;R:37115;}s:62:"1208:userflag-a5654a3791201a60b1e0166479ff4b7e0ccbc445-cleared";a:3:{i:0;R:38528;i:1;R:35350;i:2;R:37115;}s:85:"1208:userflag-a87d91e982fcf166c7eb04a1498c79568e5384c8-could_not_flag_profile_"_d"_fo";a:3:{i:0;R:38528;i:1;R:35350;i:2;R:37115;}s:85:"1208:userlimit-0e1925254410ba6734ad620b4937b031d09cb594-plural_gettext_cannot_registe";a:3:{i:0;s:30:"out-statusnet-plugin-userlimit";i:1;R:35350;i:2;R:37115;}s:85:"1208:userlimit-7b52548541c97626fc3d09b9ffab412958e847ca-limit_the_number_of_users_who";a:3:{i:0;R:38546;i:1;R:35350;i:2;R:37115;}s:89:"1208:wikihashtags-bb1b25b2fe80596b53a26194e0ea9f9150e61d9c-edit_the_article_for_s_on_wiki";a:3:{i:0;s:33:"out-statusnet-plugin-wikihashtags";i:1;R:35350;i:2;R:37115;}s:63:"1208:wikihashtags-5301648dcf6b53cefc9ed52999aaa92d4603cae0-edit";a:3:{i:0;R:38549;i:1;R:35350;i:2;R:37115;}s:88:"1208:wikihashtags-ffe9c96b0d817f02bbdd232f72edbce3acac6e80-shared_under_the_terms_of_the";a:3:{i:0;R:38549;i:1;R:35350;i:2;R:37115;}s:66:"1208:wikihashtags-8f0cfbaff9010717ca04f5f876fd262fc4073eb9-gnu_fdl";a:3:{i:0;R:38549;i:1;R:35350;i:2;R:37115;}s:89:"1208:wikihashtags-e10003d7954a9aa63c10a073fc6552e655330aa0-start_the_article_for_s_on_wik";a:3:{i:0;R:38549;i:1;R:35350;i:2;R:37115;}s:89:"1208:wikihashtags-9d7b71a67c59e57e9c9a00bca1a70748e3c12cc0-gets_hashtag_descriptions_from";a:3:{i:0;R:38549;i:1;R:35350;i:2;R:37115;}s:91:"1208:wikihowprofile-523be9f20a2bb91cc87c9746709ac226903027d9-fetches_avatar_and_other_profi";a:3:{i:0;s:35:"out-statusnet-plugin-wikihowprofile";i:1;R:35350;i:2;R:37115;}s:91:"1208:wikihowprofile-61fcce1b79505854dfaf087324fd1dcd850b99c5-wikihow_profile_page_fetch_fai";a:3:{i:0;R:38556;i:1;R:35350;i:2;R:37115;}s:91:"1208:wikihowprofile-7d9a06301039911e1dcf2092110972eeb381a4e8-html_parse_failure_during_chec";a:3:{i:0;R:38556;i:1;R:35350;i:2;R:37115;}s:82:"1208:wikihowprofile-14fa96ce5547485495678f9b782981904dc138f6-invalid_avatar_url_s.";a:3:{i:0;R:38556;i:1;R:35350;i:2;R:37115;}s:91:"1208:wikihowprofile-c5f53e263395f64c94a1f85e15b0035adf87eea8-unable_to_fetch_avatar_from_s.";a:3:{i:0;R:38556;i:1;R:35350;i:2;R:37115;}s:83:"1208:xcache-8f4f0106fb281310e009397169df822bcd90179a-use_the_a_href="http_xcache.li";a:3:{i:0;s:27:"out-statusnet-plugin-xcache";i:1;R:35350;i:2;R:37115;}s:81:"1208:xmpp-176cd70c9011feaf9f1e59a8ef0c902fde26ec89-send_me_a_message_to_post_a_no";a:3:{i:0;s:25:"out-statusnet-plugin-xmpp";i:1;R:35350;i:2;R:37115;}s:68:"1208:xmpp-e351da2ce0b63d14fd4ca19de8cdd71e5ed44706-xmpp_jabber_gtalk";a:3:{i:0;R:38564;i:1;R:35350;i:2;R:37115;}s:75:"1208:xmpp-cf05835f0d24abab292dd1ada7d14e0455101e5e-invalid_jid_too_many_@s.";a:3:{i:0;R:38564;i:1;R:35350;i:2;R:37115;}s:76:"1208:xmpp-b8bbd0e10d9bfc634a3bd1027dc809c0fc1f0505-invalid_jid_@_but_no_node";a:3:{i:0;R:38564;i:1;R:35350;i:2;R:37115;}s:77:"1208:xmpp-bd8bb76a91a5ebccccf2ed5e6bb2d839536e7558-invalid_jid_node_too_long.";a:3:{i:0;R:38564;i:1;R:35350;i:2;R:37115;}s:73:"1208:xmpp-f3819a746697838b90558ed99f23844bdaaaa35a-invalid_jid_node_"_s".";a:3:{i:0;R:38564;i:1;R:35350;i:2;R:37115;}s:79:"1208:xmpp-4a446bacd068d14b9086d5a6e43ac93586f53cc3-invalid_jid_domain_too_long.";a:3:{i:0;R:38564;i:1;R:35350;i:2;R:37115;}s:80:"1208:xmpp-4faaa2b29037f1a7f19d8258583ff60c8cae9306-invalid_jid_domain_name_"_s".";a:3:{i:0;R:38564;i:1;R:35350;i:2;R:37115;}s:77:"1208:xmpp-a861e25b5eb2112ef54d10cacfa9e997672254f2-invalid_jid_resource_"_s".";a:3:{i:0;R:38564;i:1;R:35350;i:2;R:37115;}s:52:"1208:xmpp-856cdae959f1392d1411a9fa258c3ac5492f08fa-s";a:3:{i:0;R:38564;i:1;R:35350;i:2;R:37115;}s:81:"1208:xmpp-16ce38502b93e455f38749ecba02079a1391b4bc-you_must_specify_a_server_in_t";a:3:{i:0;R:38564;i:1;R:35350;i:2;R:37115;}s:81:"1208:xmpp-96a39963fe92b18f2309b412fe802fa39e9803e2-you_must_specify_a_port_in_the";a:3:{i:0;R:38564;i:1;R:35350;i:2;R:37115;}s:81:"1208:xmpp-1e589f0bc84c075561e31cc9c5fc8f2809ae554b-you_must_specify_a_user_in_the";a:3:{i:0;R:38564;i:1;R:35350;i:2;R:37115;}s:81:"1208:xmpp-9b146cd0feade9c82b6af076488b73b1f82e1d34-you_must_specify_a_password_in";a:3:{i:0;R:38564;i:1;R:35350;i:2;R:37115;}s:81:"1208:xmpp-24246fcf2dfbaf01c87432d2ac6eb1c86f470c16-the_xmpp_plugin_allows_users_t";a:3:{i:0;R:38564;i:1;R:35350;i:2;R:37115;}s:76:"1208:yammerimport-34c891b0456463896601f1042a3141fd83a115ac-connect_to_yammer";a:3:{i:0;s:33:"out-statusnet-plugin-yammerimport";i:1;R:35350;i:2;R:37115;}s:72:"1208:yammerimport-18edc11d9abf20d2c37ddb36303615eebec957b3-yammer_import";a:3:{i:0;R:38580;i:1;R:35350;i:2;R:37115;}s:89:"1208:yammerimport-9b612078f70d5acd6c8960feb31391340fcfbe57-this_yammer_import_tool_is_sti";a:3:{i:0;R:38580;i:1;R:35350;i:2;R:37115;}s:83:"1208:yammerimport-5a0b8f0d54491c32cf936bc962faf6a50a592371-paused_from_admin_panel.";a:3:{i:0;R:38580;i:1;R:35350;i:2;R:37115;}s:71:"1208:yammerimport-507f46ec0fa7fe8d86f3db61220457b5a395eb5c-invalid_post";a:3:{i:0;R:38580;i:1;R:35350;i:2;R:37115;}s:72:"1208:yammerimport-088f82d144c40bd221fcd42fa703fda0541d1c85-yammer_import";a:3:{i:0;R:38580;i:1;R:35350;i:2;R:37115;}s:65:"1208:yammerimport-fb78f24356d3c0669f37a5cd7f9119560f0ac4dd-yammer";a:3:{i:0;R:38580;i:1;R:35350;i:2;R:37115;}s:80:"1208:yammerimport-630a38e6615438fba395d8380cd51519bcc82243-yammer_import_module.";a:3:{i:0;R:38580;i:1;R:35350;i:2;R:37115;}s:89:"1208:yammerimport-3c6604d7a835b7356f23fb326f775ba99bbafa27-wrong_item_type_sent_to_yammer";a:3:{i:0;R:38580;i:1;R:35350;i:2;R:37115;}s:68:"1208:yammerimport-84127aa53780cf7919b960434726e8421f9dabf4-expertise";a:3:{i:0;R:38580;i:1;R:35350;i:2;R:37115;}s:89:"1208:yammerimport-e02f7e8e4fb1cf533e895bcd652205eb1bd410cc-wrong_item_type_sent_to_yammer";a:3:{i:0;R:38580;i:1;R:35350;i:2;R:37115;}s:89:"1208:yammerimport-7c48f8e21a6b91227767cb625e20fa1dbbe0899c-wrong_item_type_sent_to_yammer";a:3:{i:0;R:38580;i:1;R:35350;i:2;R:37115;}s:80:"1208:yammerimport-14fa96ce5547485495678f9b782981904dc138f6-invalid_avatar_url_s.";a:3:{i:0;R:38580;i:1;R:35350;i:2;R:37115;}s:89:"1208:yammerimport-c5f53e263395f64c94a1f85e15b0035adf87eea8-unable_to_fetch_avatar_from_s.";a:3:{i:0;R:38580;i:1;R:35350;i:2;R:37115;}s:79:"1208:yammerimport-cceae17b39f6d4a21498a2c8ab674a9f20012bb4-start_authentication";a:3:{i:0;R:38580;i:1;R:35350;i:2;R:37115;}s:89:"1208:yammerimport-6af991de0fe6a9586b5e9c41a5a1baec1592c9a4-request_authorization_to_conne";a:3:{i:0;R:38580;i:1;R:35350;i:2;R:37115;}s:73:"1208:yammerimport-bedda57809c06d26a003d7136625be8eddba1797-change_api_key";a:3:{i:0;R:38580;i:1;R:35350;i:2;R:37115;}s:89:"1208:yammerimport-2c4cdb0a16c563fc0528672fed4dccd94b50fb24-cannot_request_yammer_auth;_al";a:3:{i:0;R:38580;i:1;R:35350;i:2;R:37115;}s:89:"1208:yammerimport-6f9fab9323e9ede3c51dc4d2265364f2fbe4f4b6-cannot_get_yammer_auth_url_whe";a:3:{i:0;R:38580;i:1;R:35350;i:2;R:37115;}s:88:"1208:yammerimport-60ea8244f5df3ad102dbabb915ded2a882065def-yammer_api_returned_http_code";a:3:{i:0;R:38580;i:1;R:35350;i:2;R:37115;}s:89:"1208:yammerimport-19c575e8b65d4bd00d8a1fdf760018f8c1c781b8-invalid_json_response_from_yam";a:3:{i:0;R:38580;i:1;R:35350;i:2;R:37115;}s:89:"1208:yammerimport-e76a5a9c8aad0489dc5008b1e61fd31c5c583622-requesting_a_token,_but_alread";a:3:{i:0;R:38580;i:1;R:35350;i:2;R:37115;}s:69:"1208:yammerimport-a459dff3012da591453989e5860a6fd825f63ce3-initialize";a:3:{i:0;R:38580;i:1;R:35350;i:2;R:37115;}s:76:"1208:yammerimport-471cebe939ef1bc4b93da5bdc36bfd12bbfcaf8a-no_import_running";a:3:{i:0;R:38580;i:1;R:35350;i:2;R:37115;}s:89:"1208:yammerimport-9bcc0867439a2e2355343d125243995826c22faa-initiated_yammer_server_connec";a:3:{i:0;R:38580;i:1;R:35350;i:2;R:37115;}s:84:"1208:yammerimport-deea04b84cd70cf460e897287bb8fc87457795e3-awaiting_authorization...";a:3:{i:0;R:38580;i:1;R:35350;i:2;R:37115;}s:69:"1208:yammerimport-26287caf41dea4bad0770aa70ce1d16c5b17f6d5-connected.";a:3:{i:0;R:38580;i:1;R:35350;i:2;R:37115;}s:79:"1208:yammerimport-bb371b36fad9ea0385e77f2268f36c92bd7e7fd9-import_user_accounts";a:3:{i:0;R:38580;i:1;R:35350;i:2;R:37115;}s:88:"1208:yammerimport-91760b42a1bcc6349e2852c9e657a72d910f0ed0-plural_gettext_importing_d_us";a:3:{i:0;R:38580;i:1;R:35350;i:2;R:37115;}s:88:"1208:yammerimport-3e026bafd38bea173745d7ea079f9ec91e6d21fb-plural_gettext_imported_d_use";a:3:{i:0;R:38580;i:1;R:35350;i:2;R:37115;}s:77:"1208:yammerimport-43f586fbfd815d3c2f399c0f0450e32b3f31067d-import_user_groups";a:3:{i:0;R:38580;i:1;R:35350;i:2;R:37115;}s:88:"1208:yammerimport-9af4a50a482f2469de17f8f575fda10e93990c42-plural_gettext_importing_d_gr";a:3:{i:0;R:38580;i:1;R:35350;i:2;R:37115;}s:88:"1208:yammerimport-d4e11c4cd4ec42a0475f006b7e844974ffdb2c65-plural_gettext_imported_d_gro";a:3:{i:0;R:38580;i:1;R:35350;i:2;R:37115;}s:89:"1208:yammerimport-94292bf07aaa326160a3363a7cc614f0d999c81a-prepare_public_notices_for_imp";a:3:{i:0;R:38580;i:1;R:35350;i:2;R:37115;}s:88:"1208:yammerimport-89e9f5f543237208e991fdabf40b9286a7e3634f-plural_gettext_preparing_d_no";a:3:{i:0;R:38580;i:1;R:35350;i:2;R:37115;}s:88:"1208:yammerimport-e6fd265c0485d883ab1e9a60e34daf0821266b05-plural_gettext_prepared_d_not";a:3:{i:0;R:38580;i:1;R:35350;i:2;R:37115;}s:80:"1208:yammerimport-1df4e4197d61e44a736b58034cec73682068d118-import_public_notices";a:3:{i:0;R:38580;i:1;R:35350;i:2;R:37115;}s:88:"1208:yammerimport-7bc3cd6e7ae4a24a2ef7fac782c526503e50717e-plural_gettext_importing_d_no";a:3:{i:0;R:38580;i:1;R:35350;i:2;R:37115;}s:88:"1208:yammerimport-18465bc7399cac45ab496e90676bf61236a36a51-plural_gettext_imported_d_not";a:3:{i:0;R:38580;i:1;R:35350;i:2;R:37115;}s:63:"1208:yammerimport-e9b450d14bc2363d292c84f17cfad5cfbd58a458-done";a:3:{i:0;R:38580;i:1;R:35350;i:2;R:37115;}s:78:"1208:yammerimport-fecea563c3b751cd75e3bb76fe3920242a384936-import_is_complete!";a:3:{i:0;R:38580;i:1;R:35350;i:2;R:37115;}s:72:"1208:yammerimport-dcec35736a15db28605f701f6ee4ae700d8d19bd-import_status";a:3:{i:0;R:38580;i:1;R:35350;i:2;R:37115;}s:69:"1208:yammerimport-52212f0c524e310b9205e4da7793fad36f4363c5-waiting...";a:3:{i:0;R:38580;i:1;R:35350;i:2;R:37115;}s:77:"1208:yammerimport-f189212b7a1d700fc06b2deeeb82ad8b01b40bb5-reset_import_state";a:3:{i:0;R:38580;i:1;R:35350;i:2;R:37115;}s:71:"1208:yammerimport-bc18f671f2cfd492be90f51ffc14243a6b27ab43-pause_import";a:3:{i:0;R:38580;i:1;R:35350;i:2;R:37115;}s:82:"1208:yammerimport-85c6a236457d41aad0dd2d5d0b1e911807bc6141-encountered_error_"_s".";a:3:{i:0;R:38580;i:1;R:35350;i:2;R:37115;}s:65:"1208:yammerimport-c7dfb6f1d9c58a41a7c5eec76e7ed6dbd3750804-paused";a:3:{i:0;R:38580;i:1;R:35350;i:2;R:37115;}s:67:"1208:yammerimport-2e02623966f9391facf6eaefc8b079ed5b630bee-continue";a:3:{i:0;R:38580;i:1;R:35350;i:2;R:37115;}s:71:"1208:yammerimport-eb636431089ede3fdf966a3ff5f42421613f0137-abort_import";a:3:{i:0;R:38580;i:1;R:35350;i:2;R:37115;}s:89:"1208:yammerimport-ee9e29342de888fda110db60bce24fb40c1a35e4-follow_this_link_to_confirm_au";a:3:{i:0;R:38580;i:1;R:35350;i:2;R:37115;}s:89:"1208:yammerimport-612a0692302e2af185fc1c96b3eb42a88ff4e447-open_yammer_authentication_win";a:3:{i:0;R:38580;i:1;R:35350;i:2;R:37115;}s:89:"1208:yammerimport-d8c361753a15545aec89c9ab1f1cd59d822d9bca-copy_the_verification_code_you";a:3:{i:0;R:38580;i:1;R:35350;i:2;R:37115;}s:76:"1208:yammerimport-36b82b2ade6cebe7250f654acf2095ab2914a147-verification_code";a:3:{i:0;R:38580;i:1;R:35350;i:2;R:37115;}s:67:"1208:yammerimport-47d80be3eb9761c60ead0914e890449394e75cff-continue";a:3:{i:0;R:38580;i:1;R:35350;i:2;R:37115;}s:89:"1208:yammerimport-fed544a31d422af6f3080afdc0bc4625f7b13a06-save_the_verification_code_and";a:3:{i:0;R:38580;i:1;R:35350;i:2;R:37115;}s:82:"1208:yammerimport-fb32d97a42994aa5ada8e6d32d96348a66e48fe1-yammer_api_registration";a:3:{i:0;R:38580;i:1;R:35350;i:2;R:37115;}s:88:"1208:yammerimport-1a1c6edfaec195c86624125e46854f1257a9450e-before_we_can_connect_to_your";a:3:{i:0;R:38580;i:1;R:35350;i:2;R:37115;}s:89:"1208:yammerimport-3bb7ce717f3e0ff3381b9406350f6c8ef6919f79-open_yammer_application_regist";a:3:{i:0;R:38580;i:1;R:35350;i:2;R:37115;}s:89:"1208:yammerimport-0a4e45dee974f1f47e0e91ae281be05a7eb6603f-copy_the_consumer_key_and_secr";a:3:{i:0;R:38580;i:1;R:35350;i:2;R:37115;}s:71:"1208:yammerimport-5fd6f5638f6b3ac7f714f501edda35ee1125704d-consumer_key";a:3:{i:0;R:38580;i:1;R:35350;i:2;R:37115;}s:74:"1208:yammerimport-171c2daed08055641eca47c7089f858ca15ba68b-consumer_secret";a:3:{i:0;R:38580;i:1;R:35350;i:2;R:37115;}s:63:"1208:yammerimport-e85726b34723718d86eeb40ab996e21219883557-save";a:3:{i:0;R:38580;i:1;R:35350;i:2;R:37115;}s:88:"1208:yammerimport-2da0ae56160442ab36f075675613e120edc62a39-save_the_entered_consumer_key";a:3:{i:0;R:38580;i:1;R:35350;i:2;R:37115;}s:36:"1198:project_list/page_display_title";a:2:{i:0;s:17:"page-Project list";i:1;s:10:"page-0-all";}s:19:"1198:project_list/3";a:2:{i:0;R:38644;i:1;R:38645;}s:19:"1198:project_list/1";a:2:{i:0;R:38644;i:1;R:38645;}s:19:"1198:project_list/2";a:2:{i:0;R:38644;i:1;R:38645;}s:37:"1198:project:about/page_display_title";a:2:{i:0;s:18:"page-Project:About";i:1;R:38645;}s:20:"1198:project:about/1";a:2:{i:0;R:38650;i:1;R:38645;}s:20:"1198:project:about/2";a:2:{i:0;R:38650;i:1;R:38645;}s:20:"1198:project:about/3";a:2:{i:0;R:38650;i:1;R:38645;}s:20:"1198:project:about/4";a:2:{i:0;R:38650;i:1;R:38645;}s:21:"1198:project:about/55";a:2:{i:0;R:38650;i:1;R:38645;}s:21:"1198:project:about/56";a:2:{i:0;R:38650;i:1;R:38645;}s:21:"1198:project:about/57";a:2:{i:0;R:38650;i:1;R:38645;}s:20:"1198:project:about/5";a:2:{i:0;R:38650;i:1;R:38645;}s:20:"1198:project:about/6";a:2:{i:0;R:38650;i:1;R:38645;}s:20:"1198:project:about/7";a:2:{i:0;R:38650;i:1;R:38645;}s:20:"1198:project:about/8";a:2:{i:0;R:38650;i:1;R:38645;}s:20:"1198:project:about/9";a:2:{i:0;R:38650;i:1;R:38645;}s:21:"1198:project:about/10";a:2:{i:0;R:38650;i:1;R:38645;}s:21:"1198:project:about/11";a:2:{i:0;R:38650;i:1;R:38645;}s:21:"1198:project:about/12";a:2:{i:0;R:38650;i:1;R:38645;}s:21:"1198:project:about/13";a:2:{i:0;R:38650;i:1;R:38645;}s:21:"1198:project:about/14";a:2:{i:0;R:38650;i:1;R:38645;}s:21:"1198:project:about/15";a:2:{i:0;R:38650;i:1;R:38645;}s:21:"1198:project:about/16";a:2:{i:0;R:38650;i:1;R:38645;}s:21:"1198:project:about/17";a:2:{i:0;R:38650;i:1;R:38645;}s:21:"1198:project:about/18";a:2:{i:0;R:38650;i:1;R:38645;}s:21:"1198:project:about/19";a:2:{i:0;R:38650;i:1;R:38645;}s:21:"1198:project:about/20";a:2:{i:0;R:38650;i:1;R:38645;}s:21:"1198:project:about/21";a:2:{i:0;R:38650;i:1;R:38645;}s:21:"1198:project:about/22";a:2:{i:0;R:38650;i:1;R:38645;}s:21:"1198:project:about/23";a:2:{i:0;R:38650;i:1;R:38645;}s:21:"1198:project:about/24";a:2:{i:0;R:38650;i:1;R:38645;}s:21:"1198:project:about/25";a:2:{i:0;R:38650;i:1;R:38645;}s:21:"1198:project:about/26";a:2:{i:0;R:38650;i:1;R:38645;}s:21:"1198:project:about/27";a:2:{i:0;R:38650;i:1;R:38645;}s:21:"1198:project:about/28";a:2:{i:0;R:38650;i:1;R:38645;}s:21:"1198:project:about/29";a:2:{i:0;R:38650;i:1;R:38645;}s:21:"1198:project:about/30";a:2:{i:0;R:38650;i:1;R:38645;}s:21:"1198:project:about/31";a:2:{i:0;R:38650;i:1;R:38645;}s:21:"1198:project:about/32";a:2:{i:0;R:38650;i:1;R:38645;}s:21:"1198:project:about/33";a:2:{i:0;R:38650;i:1;R:38645;}s:21:"1198:project:about/34";a:2:{i:0;R:38650;i:1;R:38645;}s:21:"1198:project:about/35";a:2:{i:0;R:38650;i:1;R:38645;}s:21:"1198:project:about/36";a:2:{i:0;R:38650;i:1;R:38645;}s:21:"1198:project:about/37";a:2:{i:0;R:38650;i:1;R:38645;}s:21:"1198:project:about/38";a:2:{i:0;R:38650;i:1;R:38645;}s:21:"1198:project:about/39";a:2:{i:0;R:38650;i:1;R:38645;}s:21:"1198:project:about/40";a:2:{i:0;R:38650;i:1;R:38645;}s:21:"1198:project:about/41";a:2:{i:0;R:38650;i:1;R:38645;}s:21:"1198:project:about/42";a:2:{i:0;R:38650;i:1;R:38645;}s:21:"1198:project:about/43";a:2:{i:0;R:38650;i:1;R:38645;}s:21:"1198:project:about/44";a:2:{i:0;R:38650;i:1;R:38645;}s:21:"1198:project:about/45";a:2:{i:0;R:38650;i:1;R:38645;}s:21:"1198:project:about/46";a:2:{i:0;R:38650;i:1;R:38645;}s:21:"1198:project:about/47";a:2:{i:0;R:38650;i:1;R:38645;}s:21:"1198:project:about/48";a:2:{i:0;R:38650;i:1;R:38645;}s:21:"1198:project:about/49";a:2:{i:0;R:38650;i:1;R:38645;}s:21:"1198:project:about/50";a:2:{i:0;R:38650;i:1;R:38645;}s:21:"1198:project:about/51";a:2:{i:0;R:38650;i:1;R:38645;}s:21:"1198:project:about/52";a:2:{i:0;R:38650;i:1;R:38645;}s:21:"1198:project:about/53";a:2:{i:0;R:38650;i:1;R:38645;}s:21:"1198:project:about/54";a:2:{i:0;R:38650;i:1;R:38645;}s:46:"1198:project:privacy_policy/page_display_title";a:2:{i:0;s:27:"page-Project:Privacy policy";i:1;R:38645;}s:29:"1198:project:privacy_policy/1";a:2:{i:0;R:38709;i:1;R:38645;}s:29:"1198:project:privacy_policy/2";a:2:{i:0;R:38709;i:1;R:38645;}s:29:"1198:project:privacy_policy/3";a:2:{i:0;R:38709;i:1;R:38645;}s:29:"1198:project:privacy_policy/4";a:2:{i:0;R:38709;i:1;R:38645;}s:29:"1198:project:privacy_policy/5";a:2:{i:0;R:38709;i:1;R:38645;}s:29:"1198:project:privacy_policy/6";a:2:{i:0;R:38709;i:1;R:38645;}s:29:"1198:project:privacy_policy/7";a:2:{i:0;R:38709;i:1;R:38645;}s:29:"1198:project:privacy_policy/8";a:2:{i:0;R:38709;i:1;R:38645;}s:29:"1198:project:privacy_policy/9";a:2:{i:0;R:38709;i:1;R:38645;}s:30:"1198:project:privacy_policy/10";a:2:{i:0;R:38709;i:1;R:38645;}s:30:"1198:project:privacy_policy/11";a:2:{i:0;R:38709;i:1;R:38645;}s:30:"1198:project:privacy_policy/12";a:2:{i:0;R:38709;i:1;R:38645;}s:30:"1198:project:privacy_policy/13";a:2:{i:0;R:38709;i:1;R:38645;}s:30:"1198:project:privacy_policy/14";a:2:{i:0;R:38709;i:1;R:38645;}s:30:"1198:project:privacy_policy/15";a:2:{i:0;R:38709;i:1;R:38645;}s:30:"1198:project:privacy_policy/16";a:2:{i:0;R:38709;i:1;R:38645;}s:30:"1198:project:privacy_policy/17";a:2:{i:0;R:38709;i:1;R:38645;}s:30:"1198:project:privacy_policy/18";a:2:{i:0;R:38709;i:1;R:38645;}s:30:"1198:project:privacy_policy/19";a:2:{i:0;R:38709;i:1;R:38645;}s:30:"1198:project:privacy_policy/20";a:2:{i:0;R:38709;i:1;R:38645;}s:30:"1198:project:privacy_policy/21";a:2:{i:0;R:38709;i:1;R:38645;}s:30:"1198:project:privacy_policy/22";a:2:{i:0;R:38709;i:1;R:38645;}s:30:"1198:project:privacy_policy/23";a:2:{i:0;R:38709;i:1;R:38645;}s:30:"1198:project:privacy_policy/24";a:2:{i:0;R:38709;i:1;R:38645;}s:30:"1198:project:privacy_policy/25";a:2:{i:0;R:38709;i:1;R:38645;}s:30:"1198:project:privacy_policy/26";a:2:{i:0;R:38709;i:1;R:38645;}s:30:"1198:project:privacy_policy/27";a:2:{i:0;R:38709;i:1;R:38645;}s:30:"1198:project:privacy_policy/28";a:2:{i:0;R:38709;i:1;R:38645;}s:30:"1198:project:privacy_policy/29";a:2:{i:0;R:38709;i:1;R:38645;}s:30:"1198:project:privacy_policy/30";a:2:{i:0;R:38709;i:1;R:38645;}s:30:"1198:project:privacy_policy/31";a:2:{i:0;R:38709;i:1;R:38645;}s:30:"1198:project:privacy_policy/32";a:2:{i:0;R:38709;i:1;R:38645;}s:30:"1198:project:privacy_policy/33";a:2:{i:0;R:38709;i:1;R:38645;}s:30:"1198:project:privacy_policy/34";a:2:{i:0;R:38709;i:1;R:38645;}s:30:"1198:project:privacy_policy/35";a:2:{i:0;R:38709;i:1;R:38645;}s:30:"1198:project:privacy_policy/36";a:2:{i:0;R:38709;i:1;R:38645;}s:30:"1198:project:privacy_policy/37";a:2:{i:0;R:38709;i:1;R:38645;}s:30:"1198:project:privacy_policy/38";a:2:{i:0;R:38709;i:1;R:38645;}s:30:"1198:project:privacy_policy/39";a:2:{i:0;R:38709;i:1;R:38645;}s:30:"1198:project:privacy_policy/40";a:2:{i:0;R:38709;i:1;R:38645;}s:30:"1198:project:privacy_policy/41";a:2:{i:0;R:38709;i:1;R:38645;}s:30:"1198:project:privacy_policy/42";a:2:{i:0;R:38709;i:1;R:38645;}s:30:"1198:project:privacy_policy/43";a:2:{i:0;R:38709;i:1;R:38645;}s:30:"1198:project:privacy_policy/44";a:2:{i:0;R:38709;i:1;R:38645;}s:30:"1198:project:privacy_policy/45";a:2:{i:0;R:38709;i:1;R:38645;}s:30:"1198:project:privacy_policy/46";a:2:{i:0;R:38709;i:1;R:38645;}s:30:"1198:project:privacy_policy/47";a:2:{i:0;R:38709;i:1;R:38645;}s:30:"1198:project:privacy_policy/48";a:2:{i:0;R:38709;i:1;R:38645;}s:30:"1198:project:privacy_policy/49";a:2:{i:0;R:38709;i:1;R:38645;}s:30:"1198:project:privacy_policy/50";a:2:{i:0;R:38709;i:1;R:38645;}s:30:"1198:project:privacy_policy/51";a:2:{i:0;R:38709;i:1;R:38645;}s:30:"1198:project:privacy_policy/52";a:2:{i:0;R:38709;i:1;R:38645;}s:30:"1198:project:privacy_policy/53";a:2:{i:0;R:38709;i:1;R:38645;}s:30:"1198:project:privacy_policy/54";a:2:{i:0;R:38709;i:1;R:38645;}s:30:"1198:project:privacy_policy/55";a:2:{i:0;R:38709;i:1;R:38645;}s:30:"1198:project:privacy_policy/56";a:2:{i:0;R:38709;i:1;R:38645;}s:30:"1198:project:privacy_policy/57";a:2:{i:0;R:38709;i:1;R:38645;}s:30:"1198:project:privacy_policy/58";a:2:{i:0;R:38709;i:1;R:38645;}s:30:"1198:project:privacy_policy/59";a:2:{i:0;R:38709;i:1;R:38645;}s:30:"1198:project:privacy_policy/60";a:2:{i:0;R:38709;i:1;R:38645;}s:30:"1198:project:privacy_policy/61";a:2:{i:0;R:38709;i:1;R:38645;}s:30:"1198:project:privacy_policy/62";a:2:{i:0;R:38709;i:1;R:38645;}s:30:"1198:project:privacy_policy/63";a:2:{i:0;R:38709;i:1;R:38645;}s:30:"1198:project:privacy_policy/64";a:2:{i:0;R:38709;i:1;R:38645;}s:30:"1198:project:privacy_policy/65";a:2:{i:0;R:38709;i:1;R:38645;}s:30:"1198:project:privacy_policy/66";a:2:{i:0;R:38709;i:1;R:38645;}s:34:"1198:technology/page_display_title";a:2:{i:0;s:15:"page-Technology";i:1;R:38645;}s:17:"1198:technology/1";a:2:{i:0;R:38777;i:1;R:38645;}s:17:"1198:technology/2";a:2:{i:0;R:38777;i:1;R:38645;}s:17:"1198:technology/3";a:2:{i:0;R:38777;i:1;R:38645;}s:17:"1198:technology/4";a:2:{i:0;R:38777;i:1;R:38645;}s:17:"1198:technology/5";a:2:{i:0;R:38777;i:1;R:38645;}s:17:"1198:technology/6";a:2:{i:0;R:38777;i:1;R:38645;}s:17:"1198:technology/7";a:2:{i:0;R:38777;i:1;R:38645;}s:17:"1198:technology/8";a:2:{i:0;R:38777;i:1;R:38645;}s:17:"1198:technology/9";a:2:{i:0;R:38777;i:1;R:38645;}s:24:"1198:technology/apertium";a:2:{i:0;R:38777;i:1;R:38645;}s:31:"1198:technology/googletranslate";a:2:{i:0;R:38777;i:1;R:38645;}s:48:"1198:translating:how_to_start/page_display_title";a:2:{i:0;s:29:"page-Translating:How to start";i:1;R:38645;}s:38:"1198:translating:how_to_start/pagename";a:2:{i:0;R:38790;i:1;R:38645;}s:40:"1198:translating:how_to_start/howtostart";a:2:{i:0;R:38790;i:1;R:38645;}s:37:"1198:translating:how_to_start/offline";a:2:{i:0;R:38790;i:1;R:38645;}s:41:"1198:translating:how_to_start/recommended";a:2:{i:0;R:38790;i:1;R:38645;}s:48:"1198:translating:how_to_start/recommendeddetails";a:2:{i:0;R:38790;i:1;R:38645;}s:34:"1198:translating:how_to_start/more";a:2:{i:0;R:38790;i:1;R:38645;}s:38:"1198:translating:how_to_start/lasttips";a:2:{i:0;R:38790;i:1;R:38645;}s:41:"1198:translating:intro/page_display_title";a:2:{i:0;s:22:"page-Translating:Intro";i:1;R:38645;}s:31:"1198:translating:intro/nextpage";a:2:{i:0;R:38799;i:1;R:38645;}s:30:"1198:translating:intro/heading";a:2:{i:0;R:38799;i:1;R:38645;}s:28:"1198:translating:intro/intro";a:2:{i:0;R:38799;i:1;R:38645;}s:27:"1198:translating:intro/aims";a:2:{i:0;R:38799;i:1;R:38645;}s:27:"1198:translating:intro/aim1";a:2:{i:0;R:38799;i:1;R:38645;}s:27:"1198:translating:intro/aim2";a:2:{i:0;R:38799;i:1;R:38645;}s:36:"1198:translating:intro/justtranslate";a:2:{i:0;R:38799;i:1;R:38645;}s:31:"1198:translating:intro/knownfor";a:2:{i:0;R:38799;i:1;R:38645;}s:47:"1198:translating:new_project/page_display_title";a:2:{i:0;s:28:"page-Translating:New project";i:1;R:38645;}s:30:"1198:translating:new_project/1";a:2:{i:0;R:38809;i:1;R:38645;}s:30:"1198:translating:new_project/2";a:2:{i:0;R:38809;i:1;R:38645;}s:30:"1198:translating:new_project/3";a:2:{i:0;R:38809;i:1;R:38645;}s:30:"1198:translating:new_project/4";a:2:{i:0;R:38809;i:1;R:38645;}s:30:"1198:translating:new_project/5";a:2:{i:0;R:38809;i:1;R:38645;}s:30:"1198:translating:new_project/6";a:2:{i:0;R:38809;i:1;R:38645;}s:30:"1198:translating:new_project/7";a:2:{i:0;R:38809;i:1;R:38645;}s:30:"1198:translating:new_project/8";a:2:{i:0;R:38809;i:1;R:38645;}s:30:"1198:translating:new_project/9";a:2:{i:0;R:38809;i:1;R:38645;}s:31:"1198:translating:new_project/10";a:2:{i:0;R:38809;i:1;R:38645;}s:31:"1198:translating:new_project/11";a:2:{i:0;R:38809;i:1;R:38645;}s:31:"1198:translating:new_project/12";a:2:{i:0;R:38809;i:1;R:38645;}s:31:"1198:translating:new_project/13";a:2:{i:0;R:38809;i:1;R:38645;}s:31:"1198:translating:new_project/14";a:2:{i:0;R:38809;i:1;R:38645;}s:31:"1198:translating:new_project/15";a:2:{i:0;R:38809;i:1;R:38645;}s:31:"1198:translating:new_project/16";a:2:{i:0;R:38809;i:1;R:38645;}s:31:"1198:translating:new_project/17";a:2:{i:0;R:38809;i:1;R:38645;}s:31:"1198:translating:new_project/18";a:2:{i:0;R:38809;i:1;R:38645;}s:31:"1198:translating:new_project/19";a:2:{i:0;R:38809;i:1;R:38645;}s:31:"1198:translating:new_project/20";a:2:{i:0;R:38809;i:1;R:38645;}s:31:"1198:translating:new_project/21";a:2:{i:0;R:38809;i:1;R:38645;}s:31:"1198:translating:new_project/22";a:2:{i:0;R:38809;i:1;R:38645;}s:31:"1198:translating:new_project/23";a:2:{i:0;R:38809;i:1;R:38645;}s:46:"1198:translating:statistics/page_display_title";a:2:{i:0;s:27:"page-Translating:Statistics";i:1;R:38645;}s:29:"1198:translating:statistics/1";a:2:{i:0;R:38834;i:1;R:38645;}s:29:"1198:translating:statistics/2";a:2:{i:0;R:38834;i:1;R:38645;}s:29:"1198:translating:statistics/3";a:2:{i:0;R:38834;i:1;R:38645;}s:29:"1198:translating:statistics/4";a:2:{i:0;R:38834;i:1;R:38645;}s:29:"1198:translating:statistics/5";a:2:{i:0;R:38834;i:1;R:38645;}s:29:"1198:translating:statistics/6";a:2:{i:0;R:38834;i:1;R:38645;}s:29:"1198:translating:statistics/7";a:2:{i:0;R:38834;i:1;R:38645;}s:29:"1198:translating:statistics/8";a:2:{i:0;R:38834;i:1;R:38645;}s:29:"1198:translating:statistics/9";a:2:{i:0;R:38834;i:1;R:38645;}s:30:"1198:translating:statistics/10";a:2:{i:0;R:38834;i:1;R:38645;}s:30:"1198:translating:statistics/11";a:2:{i:0;R:38834;i:1;R:38645;}s:30:"1198:translating:statistics/12";a:2:{i:0;R:38834;i:1;R:38645;}s:30:"1198:translating:statistics/13";a:2:{i:0;R:38834;i:1;R:38645;}s:30:"1198:translating:statistics/14";a:2:{i:0;R:38834;i:1;R:38645;}s:30:"1198:translating:statistics/15";a:2:{i:0;R:38834;i:1;R:38645;}s:30:"1198:translating:statistics/16";a:2:{i:0;R:38834;i:1;R:38645;}s:20:"1198:user:fuzzybot/1";a:2:{i:0;s:18:"page-User:FuzzyBot";i:1;R:38645;}s:37:"1198:web_interface/page_display_title";a:2:{i:0;s:18:"page-Web interface";i:1;R:38645;}s:20:"1198:web_interface/1";a:2:{i:0;R:38854;i:1;R:38645;}s:20:"1198:web_interface/2";a:2:{i:0;R:38854;i:1;R:38645;}s:20:"1198:web_interface/3";a:2:{i:0;R:38854;i:1;R:38645;}s:20:"1198:web_interface/4";a:2:{i:0;R:38854;i:1;R:38645;}s:20:"1198:web_interface/5";a:2:{i:0;R:38854;i:1;R:38645;}s:20:"1198:web_interface/6";a:2:{i:0;R:38854;i:1;R:38645;}s:20:"1198:web_interface/7";a:2:{i:0;R:38854;i:1;R:38645;}s:20:"1198:web_interface/8";a:2:{i:0;R:38854;i:1;R:38645;}s:20:"1198:web_interface/9";a:2:{i:0;R:38854;i:1;R:38645;}s:21:"1198:web_interface/10";a:2:{i:0;R:38854;i:1;R:38645;}s:21:"1198:web_interface/11";a:2:{i:0;R:38854;i:1;R:38645;}s:21:"1198:web_interface/12";a:2:{i:0;R:38854;i:1;R:38645;}s:21:"1198:web_interface/13";a:2:{i:0;R:38854;i:1;R:38645;}s:21:"1198:web_interface/14";a:2:{i:0;R:38854;i:1;R:38645;}s:21:"1198:web_interface/15";a:2:{i:0;R:38854;i:1;R:38645;}s:21:"1198:web_interface/16";a:2:{i:0;R:38854;i:1;R:38645;}s:21:"1198:web_interface/17";a:2:{i:0;R:38854;i:1;R:38645;}s:21:"1198:web_interface/18";a:2:{i:0;R:38854;i:1;R:38645;}s:21:"1198:web_interface/19";a:2:{i:0;R:38854;i:1;R:38645;}s:21:"1198:web_interface/20";a:2:{i:0;R:38854;i:1;R:38645;}s:21:"1198:web_interface/21";a:2:{i:0;R:38854;i:1;R:38645;}s:21:"1198:web_interface/22";a:2:{i:0;R:38854;i:1;R:38645;}s:21:"1198:web_interface/23";a:2:{i:0;R:38854;i:1;R:38645;}s:21:"1198:web_interface/24";a:2:{i:0;R:38854;i:1;R:38645;}s:21:"1198:web_interface/25";a:2:{i:0;R:38854;i:1;R:38645;}s:21:"1198:web_interface/26";a:2:{i:0;R:38854;i:1;R:38645;}s:21:"1198:web_interface/27";a:2:{i:0;R:38854;i:1;R:38645;}s:21:"1198:web_interface/28";a:2:{i:0;R:38854;i:1;R:38645;}s:21:"1198:web_interface/29";a:2:{i:0;R:38854;i:1;R:38645;}s:21:"1198:web_interface/30";a:2:{i:0;R:38854;i:1;R:38645;}s:21:"1198:web_interface/31";a:2:{i:0;R:38854;i:1;R:38645;}s:32:"1226:activities-activity.created";a:2:{i:0;s:18:"shapado-activities";i:1;s:13:"shapado-0-all";}s:32:"1226:activities-activity.updated";a:2:{i:0;R:38887;i:1;R:38888;}s:32:"1226:activities-activity.deleted";a:2:{i:0;R:38887;i:1;R:38888;}s:34:"1226:activities-activity.destroyed";a:2:{i:0;R:38887;i:1;R:38888;}s:32:"1226:activities-activity.changed";a:2:{i:0;R:38887;i:1;R:38888;}s:30:"1226:activities-activity.asked";a:2:{i:0;R:38887;i:1;R:38888;}s:43:"1226:activities-activity.requested_to_close";a:2:{i:0;R:38887;i:1;R:38888;}s:42:"1226:activities-activity.requested_to_open";a:2:{i:0;R:38887;i:1;R:38888;}s:32:"1226:activities-activity.flagged";a:2:{i:0;R:38887;i:1;R:38888;}s:46:"1226:activities-activerecord.models.activities";a:2:{i:0;R:38887;i:1;R:38888;}s:44:"1226:activities-activerecord.models.activity";a:2:{i:0;R:38887;i:1;R:38888;}s:44:"1226:announcements-announcements.index.title";a:2:{i:0;s:21:"shapado-announcements";i:1;R:38888;}s:50:"1226:announcements-announcements.index.description";a:2:{i:0;R:38900;i:1;R:38888;}s:47:"1226:announcements-announcements.create.success";a:2:{i:0;R:38900;i:1;R:38888;}s:37:"1226:announcements-announcements.form";a:2:{i:0;R:38900;i:1;R:38888;}s:46:"1226:announcements-announcements.actions.title";a:2:{i:0;R:38900;i:1;R:38888;}s:47:"1226:announcements-announcements.actions.delete";a:2:{i:0;R:38900;i:1;R:38888;}s:63:"1226:announcements-activerecord.attributes.announcement.message";a:2:{i:0;R:38900;i:1;R:38888;}s:65:"1226:announcements-activerecord.attributes.announcement.starts_at";a:2:{i:0;R:38900;i:1;R:38888;}s:63:"1226:announcements-activerecord.attributes.announcement.ends_at";a:2:{i:0;R:38900;i:1;R:38888;}s:70:"1226:announcements-activerecord.attributes.announcement.only_anonymous";a:2:{i:0;R:38900;i:1;R:38888;}s:39:"1226:answers-answers.form.comment_label";a:2:{i:0;s:15:"shapado-answers";i:1;R:38888;}s:38:"1226:answers-answers.form.answer_label";a:2:{i:0;R:38911;i:1;R:38888;}s:40:"1226:answers-answers.form.comment_submit";a:2:{i:0;R:38911;i:1;R:38888;}s:32:"1226:answers-answers.form.submit";a:2:{i:0;R:38911;i:1;R:38888;}s:31:"1226:answers-answers.edit.title";a:2:{i:0;R:38911;i:1;R:38888;}s:40:"1226:answers-answers.create.annon_notice";a:2:{i:0;R:38911;i:1;R:38888;}s:40:"1226:answers-answers.create.flash_notice";a:2:{i:0;R:38911;i:1;R:38888;}s:39:"1226:answers-answers.create.flash_error";a:2:{i:0;R:38911;i:1;R:38888;}s:40:"1226:answers-answers.update.flash_notice";a:2:{i:0;R:38911;i:1;R:38888;}s:33:"1226:answers-answers.revert.title";a:2:{i:0;R:38911;i:1;R:38888;}s:40:"1226:answers-activerecord.models.answers";a:2:{i:0;R:38911;i:1;R:38888;}s:39:"1226:answers-activerecord.models.answer";a:2:{i:0;R:38911;i:1;R:38888;}s:48:"1226:answers-activerecord.attributes.answer.link";a:2:{i:0;R:38911;i:1;R:38888;}s:54:"1226:answers-activerecord.attributes.answer.created_at";a:2:{i:0;R:38911;i:1;R:38888;}s:48:"1226:answers-activerecord.attributes.answer.body";a:2:{i:0;R:38911;i:1;R:38888;}s:30:"1226:badges-badges.index.title";a:2:{i:0;s:14:"shapado-badges";i:1;R:38888;}s:36:"1226:badges-badges.index.description";a:2:{i:0;R:38927;i:1;R:38888;}s:32:"1226:badges-badges.index.general";a:2:{i:0;R:38927;i:1;R:38888;}s:29:"1226:badges-badges.index.tags";a:2:{i:0;R:38927;i:1;R:38888;}s:29:"1226:badges-badges.index.gold";a:2:{i:0;R:38927;i:1;R:38888;}s:31:"1226:badges-badges.index.silver";a:2:{i:0;R:38927;i:1;R:38888;}s:31:"1226:badges-badges.index.bronze";a:2:{i:0;R:38927;i:1;R:38888;}s:40:"1226:badges-badges.index.general_tooltip";a:2:{i:0;R:38927;i:1;R:38888;}s:36:"1226:badges-badges.index.all_tooltip";a:2:{i:0;R:38927;i:1;R:38888;}s:37:"1226:badges-badges.index.tags_tooltip";a:2:{i:0;R:38927;i:1;R:38888;}s:37:"1226:badges-badges.index.gold_tooltip";a:2:{i:0;R:38927;i:1;R:38888;}s:39:"1226:badges-badges.index.silver_tooltip";a:2:{i:0;R:38927;i:1;R:38888;}s:39:"1226:badges-badges.index.bronze_tooltip";a:2:{i:0;R:38927;i:1;R:38888;}s:29:"1226:badges-badges.show.title";a:2:{i:0;R:38927;i:1;R:38888;}s:35:"1226:badges-badges.show.description";a:2:{i:0;R:38927;i:1;R:38888;}s:38:"1226:badges-badges.show.for_tag_bronze";a:2:{i:0;R:38927;i:1;R:38888;}s:38:"1226:badges-badges.show.for_tag_silver";a:2:{i:0;R:38927;i:1;R:38888;}s:36:"1226:badges-badges.show.for_tag_gold";a:2:{i:0;R:38927;i:1;R:38888;}s:30:"1226:badges-badges.show.earned";a:2:{i:0;R:38927;i:1;R:38888;}s:39:"1226:badges-badges.shared.rockstar.name";a:2:{i:0;R:38927;i:1;R:38888;}s:46:"1226:badges-badges.shared.rockstar.description";a:2:{i:0;R:38927;i:1;R:38888;}s:38:"1226:badges-badges.shared.popstar.name";a:2:{i:0;R:38927;i:1;R:38888;}s:45:"1226:badges-badges.shared.popstar.description";a:2:{i:0;R:38927;i:1;R:38888;}s:38:"1226:badges-badges.shared.fanatic.name";a:2:{i:0;R:38927;i:1;R:38888;}s:45:"1226:badges-badges.shared.fanatic.description";a:2:{i:0;R:38927;i:1;R:38888;}s:44:"1226:badges-badges.shared.service_medal.name";a:2:{i:0;R:38927;i:1;R:38888;}s:51:"1226:badges-badges.shared.service_medal.description";a:2:{i:0;R:38927;i:1;R:38888;}s:46:"1226:badges-badges.shared.famous_question.name";a:2:{i:0;R:38927;i:1;R:38888;}s:53:"1226:badges-badges.shared.famous_question.description";a:2:{i:0;R:38927;i:1;R:38888;}s:47:"1226:badges-badges.shared.notable_question.name";a:2:{i:0;R:38927;i:1;R:38888;}s:54:"1226:badges-badges.shared.notable_question.description";a:2:{i:0;R:38927;i:1;R:38888;}s:47:"1226:badges-badges.shared.popular_question.name";a:2:{i:0;R:38927;i:1;R:38888;}s:54:"1226:badges-badges.shared.popular_question.description";a:2:{i:0;R:38927;i:1;R:38888;}s:45:"1226:badges-badges.shared.popular_person.name";a:2:{i:0;R:38927;i:1;R:38888;}s:52:"1226:badges-badges.shared.popular_person.description";a:2:{i:0;R:38927;i:1;R:38888;}s:35:"1226:badges-badges.shared.guru.name";a:2:{i:0;R:38927;i:1;R:38888;}s:42:"1226:badges-badges.shared.guru.description";a:2:{i:0;R:38927;i:1;R:38888;}s:46:"1226:badges-badges.shared.favorite_answer.name";a:2:{i:0;R:38927;i:1;R:38888;}s:53:"1226:badges-badges.shared.favorite_answer.description";a:2:{i:0;R:38927;i:1;R:38888;}s:45:"1226:badges-badges.shared.stellar_answer.name";a:2:{i:0;R:38927;i:1;R:38888;}s:52:"1226:badges-badges.shared.stellar_answer.description";a:2:{i:0;R:38927;i:1;R:38888;}s:48:"1226:badges-badges.shared.favorite_question.name";a:2:{i:0;R:38927;i:1;R:38888;}s:55:"1226:badges-badges.shared.favorite_question.description";a:2:{i:0;R:38927;i:1;R:38888;}s:36:"1226:badges-badges.shared.tutor.name";a:2:{i:0;R:38927;i:1;R:38888;}s:43:"1226:badges-badges.shared.tutor.description";a:2:{i:0;R:38927;i:1;R:38888;}s:37:"1226:badges-badges.shared.addict.name";a:2:{i:0;R:38927;i:1;R:38888;}s:44:"1226:badges-badges.shared.addict.description";a:2:{i:0;R:38927;i:1;R:38888;}s:44:"1226:badges-badges.shared.good_question.name";a:2:{i:0;R:38927;i:1;R:38888;}s:51:"1226:badges-badges.shared.good_question.description";a:2:{i:0;R:38927;i:1;R:38888;}s:42:"1226:badges-badges.shared.good_answer.name";a:2:{i:0;R:38927;i:1;R:38888;}s:49:"1226:badges-badges.shared.good_answer.description";a:2:{i:0;R:38927;i:1;R:38888;}s:38:"1226:badges-badges.shared.pioneer.name";a:2:{i:0;R:38927;i:1;R:38888;}s:45:"1226:badges-badges.shared.pioneer.description";a:2:{i:0;R:38927;i:1;R:38888;}s:40:"1226:badges-badges.shared.supporter.name";a:2:{i:0;R:38927;i:1;R:38888;}s:47:"1226:badges-badges.shared.supporter.description";a:2:{i:0;R:38927;i:1;R:38888;}s:37:"1226:badges-badges.shared.critic.name";a:2:{i:0;R:38927;i:1;R:38888;}s:44:"1226:badges-badges.shared.critic.description";a:2:{i:0;R:38927;i:1;R:38888;}s:39:"1226:badges-badges.shared.inquirer.name";a:2:{i:0;R:38927;i:1;R:38888;}s:46:"1226:badges-badges.shared.inquirer.description";a:2:{i:0;R:38927;i:1;R:38888;}s:45:"1226:badges-badges.shared.troubleshooter.name";a:2:{i:0;R:38927;i:1;R:38888;}s:52:"1226:badges-badges.shared.troubleshooter.description";a:2:{i:0;R:38927;i:1;R:38888;}s:42:"1226:badges-badges.shared.commentator.name";a:2:{i:0;R:38927;i:1;R:38888;}s:49:"1226:badges-badges.shared.commentator.description";a:2:{i:0;R:38927;i:1;R:38888;}s:42:"1226:badges-badges.shared.merit_medal.name";a:2:{i:0;R:38927;i:1;R:38888;}s:49:"1226:badges-badges.shared.merit_medal.description";a:2:{i:0;R:38927;i:1;R:38888;}s:43:"1226:badges-badges.shared.effort_medal.name";a:2:{i:0;R:38927;i:1;R:38888;}s:50:"1226:badges-badges.shared.effort_medal.description";a:2:{i:0;R:38927;i:1;R:38888;}s:38:"1226:badges-badges.shared.student.name";a:2:{i:0;R:38927;i:1;R:38888;}s:45:"1226:badges-badges.shared.student.description";a:2:{i:0;R:38927;i:1;R:38888;}s:45:"1226:badges-badges.shared.shapado.description";a:2:{i:0;R:38927;i:1;R:38888;}s:37:"1226:badges-badges.shared.editor.name";a:2:{i:0;R:38927;i:1;R:38888;}s:44:"1226:badges-badges.shared.editor.description";a:2:{i:0;R:38927;i:1;R:38888;}s:39:"1226:badges-badges.shared.friendly.name";a:2:{i:0;R:38927;i:1;R:38888;}s:46:"1226:badges-badges.shared.friendly.description";a:2:{i:0;R:38927;i:1;R:38888;}s:49:"1226:badges-badges.shared.interesting_person.name";a:2:{i:0;R:38927;i:1;R:38888;}s:56:"1226:badges-badges.shared.interesting_person.description";a:2:{i:0;R:38927;i:1;R:38888;}s:40:"1226:badges-badges.shared.celebrity.name";a:2:{i:0;R:38927;i:1;R:38888;}s:47:"1226:badges-badges.shared.celebrity.description";a:2:{i:0;R:38927;i:1;R:38888;}s:42:"1226:badges-badges.shared.necromancer.name";a:2:{i:0;R:38927;i:1;R:38888;}s:49:"1226:badges-badges.shared.necromancer.description";a:2:{i:0;R:38927;i:1;R:38888;}s:47:"1226:badges-badges.shared.stellar_question.name";a:2:{i:0;R:38927;i:1;R:38888;}s:54:"1226:badges-badges.shared.stellar_question.description";a:2:{i:0;R:38927;i:1;R:38888;}s:44:"1226:badges-badges.shared.nice_question.name";a:2:{i:0;R:38927;i:1;R:38888;}s:51:"1226:badges-badges.shared.nice_question.description";a:2:{i:0;R:38927;i:1;R:38888;}s:42:"1226:badges-badges.shared.nice_answer.name";a:2:{i:0;R:38927;i:1;R:38888;}s:49:"1226:badges-badges.shared.nice_answer.description";a:2:{i:0;R:38927;i:1;R:38888;}s:45:"1226:badges-badges.shared.great_question.name";a:2:{i:0;R:38927;i:1;R:38888;}s:52:"1226:badges-badges.shared.great_question.description";a:2:{i:0;R:38927;i:1;R:38888;}s:43:"1226:badges-badges.shared.great_answer.name";a:2:{i:0;R:38927;i:1;R:38888;}s:50:"1226:badges-badges.shared.great_answer.description";a:2:{i:0;R:38927;i:1;R:38888;}s:44:"1226:badges-badges.shared.peer_pressure.name";a:2:{i:0;R:38927;i:1;R:38888;}s:51:"1226:badges-badges.shared.peer_pressure.description";a:2:{i:0;R:38927;i:1;R:38888;}s:42:"1226:badges-badges.shared.enlightened.name";a:2:{i:0;R:38927;i:1;R:38888;}s:49:"1226:badges-badges.shared.enlightened.description";a:2:{i:0;R:38927;i:1;R:38888;}s:42:"1226:badges-badges.shared.disciplined.name";a:2:{i:0;R:38927;i:1;R:38888;}s:49:"1226:badges-badges.shared.disciplined.description";a:2:{i:0;R:38927;i:1;R:38888;}s:38:"1226:badges-badges.shared.cleanup.name";a:2:{i:0;R:38927;i:1;R:38888;}s:45:"1226:badges-badges.shared.cleanup.description";a:2:{i:0;R:38927;i:1;R:38888;}s:41:"1226:badges-badges.shared.civic_duty.name";a:2:{i:0;R:38927;i:1;R:38888;}s:48:"1226:badges-badges.shared.civic_duty.description";a:2:{i:0;R:38927;i:1;R:38888;}s:45:"1226:badges-badges.shared.citizen_patrol.name";a:2:{i:0;R:38927;i:1;R:38888;}s:52:"1226:badges-badges.shared.citizen_patrol.description";a:2:{i:0;R:38927;i:1;R:38888;}s:43:"1226:badges-badges.shared.self-learner.name";a:2:{i:0;R:38927;i:1;R:38888;}s:50:"1226:badges-badges.shared.self-learner.description";a:2:{i:0;R:38927;i:1;R:38888;}s:38:"1226:badges-badges.shared.scholar.name";a:2:{i:0;R:38927;i:1;R:38888;}s:45:"1226:badges-badges.shared.scholar.description";a:2:{i:0;R:38927;i:1;R:38888;}s:45:"1226:badges-badges.shared.autobiographer.name";a:2:{i:0;R:38927;i:1;R:38888;}s:52:"1226:badges-badges.shared.autobiographer.description";a:2:{i:0;R:38927;i:1;R:38888;}s:40:"1226:badges-badges.shared.organizer.name";a:2:{i:0;R:38927;i:1;R:38888;}s:47:"1226:badges-badges.shared.organizer.description";a:2:{i:0;R:38927;i:1;R:38888;}s:39:"1226:badges-badges.shared.altruist.name";a:2:{i:0;R:38927;i:1;R:38888;}s:46:"1226:badges-badges.shared.altruist.description";a:2:{i:0;R:38927;i:1;R:38888;}s:41:"1226:badges-badges.shared.benefactor.name";a:2:{i:0;R:38927;i:1;R:38888;}s:48:"1226:badges-badges.shared.benefactor.description";a:2:{i:0;R:38927;i:1;R:38888;}s:39:"1226:badges-badges.shared.investor.name";a:2:{i:0;R:38927;i:1;R:38888;}s:46:"1226:badges-badges.shared.investor.description";a:2:{i:0;R:38927;i:1;R:38888;}s:39:"1226:badges-badges.shared.promoter.name";a:2:{i:0;R:38927;i:1;R:38888;}s:46:"1226:badges-badges.shared.promoter.description";a:2:{i:0;R:38927;i:1;R:38888;}s:37:"1226:badges-activerecord.models.badge";a:2:{i:0;R:38927;i:1;R:38888;}s:38:"1226:badges-activerecord.models.badges";a:2:{i:0;R:38927;i:1;R:38888;}s:40:"1226:closereq-close_requests.index.title";a:2:{i:0;s:21:"shapado-closerequests";i:1;R:38888;}s:41:"1226:closereq-close_requests.form.retract";a:2:{i:0;R:39048;i:1;R:38888;}s:38:"1226:closereq-close_requests.form.dupe";a:2:{i:0;R:39048;i:1;R:38888;}s:36:"1226:closereq-close_requests.form.ot";a:2:{i:0;R:39048;i:1;R:38888;}s:45:"1226:closereq-close_requests.form.no_question";a:2:{i:0;R:39048;i:1;R:38888;}s:46:"1226:closereq-close_requests.form.not_relevant";a:2:{i:0;R:39048;i:1;R:38888;}s:38:"1226:closereq-close_requests.form.spam";a:2:{i:0;R:39048;i:1;R:38888;}s:57:"1226:closereq-close_requests.form.request_closing_details";a:2:{i:0;R:39048;i:1;R:38888;}s:51:"1226:closereq-close_requests.form.close_with_reason";a:2:{i:0;R:39048;i:1;R:38888;}s:39:"1226:closereq-close_requests.edit.title";a:2:{i:0;R:39048;i:1;R:38888;}s:48:"1226:closereq-close_requests.create.flash_notice";a:2:{i:0;R:39048;i:1;R:38888;}s:48:"1226:closereq-close_requests.update.flash_notice";a:2:{i:0;R:39048;i:1;R:38888;}s:49:"1226:closereq-close_requests.destroy.flash_notice";a:2:{i:0;R:39048;i:1;R:38888;}s:39:"1226:closereq-close_requests.model.name";a:2:{i:0;R:39048;i:1;R:38888;}s:46:"1226:closereq-close_requests.model.prural_name";a:2:{i:0;R:39048;i:1;R:38888;}s:61:"1226:closereq-close_requests.model.messages.already_requested";a:2:{i:0;R:39048;i:1;R:38888;}s:50:"1226:closereq-close_requests.model.attributes.user";a:2:{i:0;R:39048;i:1;R:38888;}s:52:"1226:closereq-close_requests.model.attributes.reason";a:2:{i:0;R:39048;i:1;R:38888;}s:53:"1226:closereq-close_requests.model.attributes.comment";a:2:{i:0;R:39048;i:1;R:38888;}s:33:"1226:comments-comments.edit.title";a:2:{i:0;s:16:"shapado-comments";i:1;R:38888;}s:42:"1226:comments-comments.create.flash_notice";a:2:{i:0;R:39068;i:1;R:38888;}s:42:"1226:comments-comments.update.flash_notice";a:2:{i:0;R:39068;i:1;R:38888;}s:41:"1226:comments-comments.shared.add_comment";a:2:{i:0;R:39068;i:1;R:38888;}s:44:"1226:comments-comments.shared.comment_submit";a:2:{i:0;R:39068;i:1;R:38888;}s:34:"1226:comments-comments.shared.said";a:2:{i:0;R:39068;i:1;R:38888;}s:35:"1226:comments-comments.shared.reply";a:2:{i:0;R:39068;i:1;R:38888;}s:29:"1226:comments-models.comments";a:2:{i:0;R:39068;i:1;R:38888;}s:28:"1226:comments-models.comment";a:2:{i:0;R:39068;i:1;R:38888;}s:58:"1226:constrainsconfig-activemodel.models.constrains_config";a:2:{i:0;s:24:"shapado-constrainsconfig";i:1;R:38888;}s:37:"1226:devise-errors.messages.not_found";a:2:{i:0;s:14:"shapado-devise";i:1;R:38888;}s:45:"1226:devise-errors.messages.already_confirmed";a:2:{i:0;R:39080;i:1;R:38888;}s:38:"1226:devise-errors.messages.not_locked";a:2:{i:0;R:39080;i:1;R:38888;}s:42:"1226:devise-devise.failure.unauthenticated";a:2:{i:0;R:39080;i:1;R:38888;}s:38:"1226:devise-devise.failure.unconfirmed";a:2:{i:0;R:39080;i:1;R:38888;}s:33:"1226:devise-devise.failure.locked";a:2:{i:0;R:39080;i:1;R:38888;}s:34:"1226:devise-devise.failure.invalid";a:2:{i:0;R:39080;i:1;R:38888;}s:40:"1226:devise-devise.failure.invalid_token";a:2:{i:0;R:39080;i:1;R:38888;}s:34:"1226:devise-devise.failure.timeout";a:2:{i:0;R:39080;i:1;R:38888;}s:35:"1226:devise-devise.failure.inactive";a:2:{i:0;R:39080;i:1;R:38888;}s:40:"1226:devise-devise.sessions.signin_group";a:2:{i:0;R:39080;i:1;R:38888;}s:37:"1226:devise-devise.sessions.signed_in";a:2:{i:0;R:39080;i:1;R:38888;}s:38:"1226:devise-devise.sessions.signed_out";a:2:{i:0;R:39080;i:1;R:38888;}s:32:"1226:devise-devise.sessions.link";a:2:{i:0;R:39080;i:1;R:38888;}s:36:"1226:devise-devise.sessions.sign_out";a:2:{i:0;R:39080;i:1;R:38888;}s:43:"1226:devise-devise.sessions.registered_only";a:2:{i:0;R:39080;i:1;R:38888;}s:43:"1226:devise-devise.sessions.new.remember_me";a:2:{i:0;R:39080;i:1;R:38888;}s:42:"1226:devise-devise.sessions.new.openid_url";a:2:{i:0;R:39080;i:1;R:38888;}s:40:"1226:devise-devise.passwords.send_button";a:2:{i:0;R:39080;i:1;R:38888;}s:46:"1226:devise-devise.passwords.send_instructions";a:2:{i:0;R:39080;i:1;R:38888;}s:36:"1226:devise-devise.passwords.updated";a:2:{i:0;R:39080;i:1;R:38888;}s:33:"1226:devise-devise.passwords.link";a:2:{i:0;R:39080;i:1;R:38888;}s:50:"1226:devise-devise.confirmations.send_instructions";a:2:{i:0;R:39080;i:1;R:38888;}s:42:"1226:devise-devise.confirmations.confirmed";a:2:{i:0;R:39080;i:1;R:38888;}s:42:"1226:devise-devise.registrations.signed_up";a:2:{i:0;R:39080;i:1;R:38888;}s:40:"1226:devise-devise.registrations.updated";a:2:{i:0;R:39080;i:1;R:38888;}s:42:"1226:devise-devise.registrations.destroyed";a:2:{i:0;R:39080;i:1;R:38888;}s:37:"1226:devise-devise.registrations.link";a:2:{i:0;R:39080;i:1;R:38888;}s:44:"1226:devise-devise.unlocks.send_instructions";a:2:{i:0;R:39080;i:1;R:38888;}s:35:"1226:devise-devise.unlocks.unlocked";a:2:{i:0;R:39080;i:1;R:38888;}s:31:"1226:devise-devise.unlocks.link";a:2:{i:0;R:39080;i:1;R:38888;}s:59:"1226:devise-devise.mailer.confirmation_instructions.subject";a:2:{i:0;R:39080;i:1;R:38888;}s:61:"1226:devise-devise.mailer.reset_password_instructions.subject";a:2:{i:0;R:39080;i:1;R:38888;}s:53:"1226:devise-devise.mailer.unlock_instructions.subject";a:2:{i:0;R:39080;i:1;R:38888;}s:31:"1226:devise-devise.mailer.hello";a:2:{i:0;R:39080;i:1;R:38888;}s:45:"1226:devise-devise.mailer.unlock.instruction1";a:2:{i:0;R:39080;i:1;R:38888;}s:45:"1226:devise-devise.mailer.unlock.instruction2";a:2:{i:0;R:39080;i:1;R:38888;}s:37:"1226:devise-devise.mailer.unlock.link";a:2:{i:0;R:39080;i:1;R:38888;}s:53:"1226:devise-devise.mailer.reset_password.instruction1";a:2:{i:0;R:39080;i:1;R:38888;}s:53:"1226:devise-devise.mailer.reset_password.nonrequested";a:2:{i:0;R:39080;i:1;R:38888;}s:48:"1226:devise-devise.mailer.reset_password.warning";a:2:{i:0;R:39080;i:1;R:38888;}s:45:"1226:devise-devise.mailer.reset_password.link";a:2:{i:0;R:39080;i:1;R:38888;}s:49:"1226:devise-devise.mailer.confirm_account.welcome";a:2:{i:0;R:39080;i:1;R:38888;}s:54:"1226:devise-devise.mailer.confirm_account.instruction1";a:2:{i:0;R:39080;i:1;R:38888;}s:46:"1226:devise-devise.mailer.confirm_account.link";a:2:{i:0;R:39080;i:1;R:38888;}s:23:"1226:doc-doc.chat.title";a:2:{i:0;s:11:"shapado-doc";i:1;R:38888;}s:24:"1226:doc-doc.plans.plans";a:2:{i:0;R:39126;i:1;R:38888;}s:24:"1226:doc-doc.plans.title";a:2:{i:0;R:39126;i:1;R:38888;}s:28:"1226:doc-doc.plans.free_plan";a:2:{i:0;R:39126;i:1;R:38888;}s:27:"1226:doc-doc.plans.we_offer";a:2:{i:0;R:39126;i:1;R:38888;}s:33:"1226:doc-doc.plans.with_unlimited";a:2:{i:0;R:39126;i:1;R:38888;}s:28:"1226:doc-doc.plans.beta_info";a:2:{i:0;R:39126;i:1;R:38888;}s:29:"1226:doc-doc.plans.huge_sites";a:2:{i:0;R:39126;i:1;R:38888;}s:28:"1226:doc-doc.plans.big_sites";a:2:{i:0;R:39126;i:1;R:38888;}s:34:"1226:doc-doc.plans.getting_popular";a:2:{i:0;R:39126;i:1;R:38888;}s:35:"1226:doc-doc.plans.start_monetizing";a:2:{i:0;R:39126;i:1;R:38888;}s:32:"1226:doc-doc.plans.small_private";a:2:{i:0;R:39126;i:1;R:38888;}s:29:"1226:doc-doc.plans.page_views";a:2:{i:0;R:39126;i:1;R:38888;}s:32:"1226:doc-doc.plans.custom_themes";a:2:{i:0;R:39126;i:1;R:38888;}s:31:"1226:doc-doc.plans.private_site";a:2:{i:0;R:39126;i:1;R:38888;}s:32:"1226:doc-doc.plans.custom_domain";a:2:{i:0;R:39126;i:1;R:38888;}s:28:"1226:doc-doc.plans.custom_ui";a:2:{i:0;R:39126;i:1;R:38888;}s:29:"1226:doc-doc.plans.custom_ads";a:2:{i:0;R:39126;i:1;R:38888;}s:35:"1226:doc-doc.plans.custom_analytics";a:2:{i:0;R:39126;i:1;R:38888;}s:26:"1226:doc-doc.plans.support";a:2:{i:0;R:39126;i:1;R:38888;}s:28:"1226:doc-doc.plans.unlimited";a:2:{i:0;R:39126;i:1;R:38888;}s:27:"1226:doc-doc.plans.1million";a:2:{i:0;R:39126;i:1;R:38888;}s:28:"1226:doc-doc.plans.5millions";a:2:{i:0;R:39126;i:1;R:38888;}s:29:"1226:doc-doc.plans.15millions";a:2:{i:0;R:39126;i:1;R:38888;}s:30:"1226:doc-doc.plans.web_support";a:2:{i:0;R:39126;i:1;R:38888;}s:30:"1226:doc-doc.plans.all_support";a:2:{i:0;R:39126;i:1;R:38888;}s:34:"1226:doc-doc.plans.247_all_support";a:2:{i:0;R:39126;i:1;R:38888;}s:37:"1226:doc-doc.plans.basic_restrictions";a:2:{i:0;R:39126;i:1;R:38888;}s:24:"1226:doc-doc.plans.month";a:2:{i:0;R:39126;i:1;R:38888;}s:32:"1226:errors-errors.options_label";a:2:{i:0;s:14:"shapado-errors";i:1;R:38888;}s:24:"1226:errors-errors.go_to";a:2:{i:0;R:39156;i:1;R:38888;}s:33:"1226:errors-errors.help_us_answer";a:2:{i:0;R:39156;i:1;R:38888;}s:25:"1226:errors-errors.search";a:2:{i:0;R:39156;i:1;R:38888;}s:34:"1226:errors-errors.forbidden.title";a:2:{i:0;R:39156;i:1;R:38888;}s:40:"1226:errors-errors.forbidden.explanation";a:2:{i:0;R:39156;i:1;R:38888;}s:34:"1226:errors-errors.not_found.title";a:2:{i:0;R:39156;i:1;R:38888;}s:40:"1226:errors-errors.not_found.explanation";a:2:{i:0;R:39156;i:1;R:38888;}s:45:"1226:errors-errors.unprocessable_entity.title";a:2:{i:0;R:39156;i:1;R:38888;}s:51:"1226:errors-errors.unprocessable_entity.explanation";a:2:{i:0;R:39156;i:1;R:38888;}s:39:"1226:errors-errors.internal_error.title";a:2:{i:0;R:39156;i:1;R:38888;}s:45:"1226:errors-errors.internal_error.explanation";a:2:{i:0;R:39156;i:1;R:38888;}s:42:"1226:favs-favorites.create.unauthenticated";a:2:{i:0;s:17:"shapado-favorites";i:1;R:38888;}s:34:"1226:favs-favorites.create.success";a:2:{i:0;R:39169;i:1;R:38888;}s:39:"1226:favs-activerecord.models.favorites";a:2:{i:0;R:39169;i:1;R:38888;}s:38:"1226:favs-activerecord.models.favorite";a:2:{i:0;R:39169;i:1;R:38888;}s:26:"1226:flags-flags.form.spam";a:2:{i:0;s:13:"shapado-flags";i:1;R:38888;}s:31:"1226:flags-flags.form.offensive";a:2:{i:0;R:39174;i:1;R:38888;}s:31:"1226:flags-flags.form.attention";a:2:{i:0;R:39174;i:1;R:38888;}s:27:"1226:flags-flags.form.label";a:2:{i:0;R:39174;i:1;R:38888;}s:36:"1226:flags-flags.create.flash_notice";a:2:{i:0;R:39174;i:1;R:38888;}s:35:"1226:flags-flags.create.flash_error";a:2:{i:0;R:39174;i:1;R:38888;}s:26:"1226:flags-flags.new.title";a:2:{i:0;R:39174;i:1;R:38888;}s:27:"1226:flags-flags.edit.title";a:2:{i:0;R:39174;i:1;R:38888;}s:37:"1226:flags-flags.destroy.flash_notice";a:2:{i:0;R:39174;i:1;R:38888;}s:36:"1226:flags-flags.update.flash_notice";a:2:{i:0;R:39174;i:1;R:38888;}s:49:"1226:flags-flags.model.messages.already_requested";a:2:{i:0;R:39174;i:1;R:38888;}s:36:"1226:flags-activerecord.models.flags";a:2:{i:0;R:39174;i:1;R:38888;}s:35:"1226:flags-activerecord.models.flag";a:2:{i:0;R:39174;i:1;R:38888;}s:46:"1226:flags-activerecord.attributes.flag.reason";a:2:{i:0;R:39174;i:1;R:38888;}s:22:"1226:global-roles.user";a:2:{i:0;s:14:"shapado-global";i:1;R:38888;}s:27:"1226:global-roles.moderator";a:2:{i:0;R:39189;i:1;R:38888;}s:23:"1226:global-roles.owner";a:2:{i:0;R:39189;i:1;R:38888;}s:34:"1226:global-views.pagination.first";a:2:{i:0;R:39189;i:1;R:38888;}s:33:"1226:global-views.pagination.last";a:2:{i:0;R:39189;i:1;R:38888;}s:33:"1226:global-views.pagination.next";a:2:{i:0;R:39189;i:1;R:38888;}s:37:"1226:global-views.pagination.previous";a:2:{i:0;R:39189;i:1;R:38888;}s:37:"1226:global-views.pagination.truncate";a:2:{i:0;R:39189;i:1;R:38888;}s:33:"1226:global-scaffold.are_you_sure";a:2:{i:0;R:39189;i:1;R:38888;}s:25:"1226:global-scaffold.sure";a:2:{i:0;R:39189;i:1;R:38888;}s:25:"1226:global-scaffold.show";a:2:{i:0;R:39189;i:1;R:38888;}s:25:"1226:global-scaffold.edit";a:2:{i:0;R:39189;i:1;R:38888;}s:28:"1226:global-scaffold.destroy";a:2:{i:0;R:39189;i:1;R:38888;}s:25:"1226:global-scaffold.back";a:2:{i:0;R:39189;i:1;R:38888;}s:27:"1226:global-scaffold.update";a:2:{i:0;R:39189;i:1;R:38888;}s:27:"1226:global-scaffold.cancel";a:2:{i:0;R:39189;i:1;R:38888;}s:26:"1226:global-scaffold.close";a:2:{i:0;R:39189;i:1;R:38888;}s:27:"1226:global-scaffold.create";a:2:{i:0;R:39189;i:1;R:38888;}s:24:"1226:global-scaffold.new";a:2:{i:0;R:39189;i:1;R:38888;}s:25:"1226:global-scaffold.more";a:2:{i:0;R:39189;i:1;R:38888;}s:24:"1226:global-scaffold.add";a:2:{i:0;R:39189;i:1;R:38888;}s:25:"1226:global-scaffold.send";a:2:{i:0;R:39189;i:1;R:38888;}s:25:"1226:global-scaffold.save";a:2:{i:0;R:39189;i:1;R:38888;}s:28:"1226:global-scaffold.details";a:2:{i:0;R:39189;i:1;R:38888;}s:38:"1226:global-scaffold.post_as_anonymous";a:2:{i:0;R:39189;i:1;R:38888;}s:22:"1226:global-time.today";a:2:{i:0;R:39189;i:1;R:38888;}s:26:"1226:global-time.yesterday";a:2:{i:0;R:39189;i:1;R:38888;}s:20:"1226:global-time.ago";a:2:{i:0;R:39189;i:1;R:38888;}s:27:"1226:global-models.question";a:2:{i:0;R:39189;i:1;R:38888;}s:23:"1226:global-global.open";a:2:{i:0;R:39189;i:1;R:38888;}s:23:"1226:global-global.size";a:2:{i:0;R:39189;i:1;R:38888;}s:33:"1226:global-global.alphabetically";a:2:{i:0;R:39189;i:1;R:38888;}s:23:"1226:global-global.from";a:2:{i:0;R:39189;i:1;R:38888;}s:36:"1226:global-global.permission_denied";a:2:{i:0;R:39189;i:1;R:38888;}s:31:"1226:global-global.please_login";a:2:{i:0;R:39189;i:1;R:38888;}s:34:"1226:global-global.group_not_found";a:2:{i:0;R:39189;i:1;R:38888;}s:26:"1226:global-global.preview";a:2:{i:0;R:39189;i:1;R:38888;}s:21:"1226:global-global.or";a:2:{i:0;R:39189;i:1;R:38888;}s:21:"1226:global-global.by";a:2:{i:0;R:39189;i:1;R:38888;}s:26:"1226:global-global.by_semi";a:2:{i:0;R:39189;i:1;R:38888;}s:33:"1226:global-global.edited_by_semi";a:2:{i:0;R:39189;i:1;R:38888;}s:28:"1226:global-global.edited_by";a:2:{i:0;R:39189;i:1;R:38888;}s:26:"1226:global-global.current";a:2:{i:0;R:39189;i:1;R:38888;}s:27:"1226:global-global.previous";a:2:{i:0;R:39189;i:1;R:38888;}s:24:"1226:global-global.share";a:2:{i:0;R:39189;i:1;R:38888;}s:25:"1226:global-global.active";a:2:{i:0;R:39189;i:1;R:38888;}s:28:"1226:global-global.anonymous";a:2:{i:0;R:39189;i:1;R:38888;}s:32:"1226:global-global.unknown_place";a:2:{i:0;R:39189;i:1;R:38888;}s:25:"1226:global-global.follow";a:2:{i:0;R:39189;i:1;R:38888;}s:28:"1226:global-global.following";a:2:{i:0;R:39189;i:1;R:38888;}s:27:"1226:global-global.unfollow";a:2:{i:0;R:39189;i:1;R:38888;}s:30:"1226:global-global.next_button";a:2:{i:0;R:39189;i:1;R:38888;}s:23:"1226:global-global.view";a:2:{i:0;R:39189;i:1;R:38888;}s:32:"1226:global-global.view_question";a:2:{i:0;R:39189;i:1;R:38888;}s:29:"1226:global-global.what_to_do";a:2:{i:0;R:39189;i:1;R:38888;}s:26:"1226:global-global.actions";a:2:{i:0;R:39189;i:1;R:38888;}s:26:"1226:global-global.sign_up";a:2:{i:0;R:39189;i:1;R:38888;}s:27:"1226:global-global.feedback";a:2:{i:0;R:39189;i:1;R:38888;}s:23:"1226:global-global.chat";a:2:{i:0;R:39189;i:1;R:38888;}s:22:"1226:global-global.tos";a:2:{i:0;R:39189;i:1;R:38888;}s:26:"1226:global-global.privacy";a:2:{i:0;R:39189;i:1;R:38888;}s:23:"1226:global-global.blog";a:2:{i:0;R:39189;i:1;R:38888;}s:23:"1226:global-global.home";a:2:{i:0;R:39189;i:1;R:38888;}s:26:"1226:global-global.sort_by";a:2:{i:0;R:39189;i:1;R:38888;}s:29:"1226:global-global.tags_label";a:2:{i:0;R:39189;i:1;R:38888;}s:30:"1226:global-global.followed_by";a:2:{i:0;R:39189;i:1;R:38888;}s:25:"1226:global-global.edited";a:2:{i:0;R:39189;i:1;R:38888;}s:26:"1226:global-feeds.question";a:2:{i:0;R:39189;i:1;R:38888;}s:27:"1226:global-feeds.questions";a:2:{i:0;R:39189;i:1;R:38888;}s:21:"1226:global-feeds.tag";a:2:{i:0;R:39189;i:1;R:38888;}s:22:"1226:global-feeds.user";a:2:{i:0;R:39189;i:1;R:38888;}s:22:"1226:global-feeds.feed";a:2:{i:0;R:39189;i:1;R:38888;}s:36:"1226:global-feeds.post_new_questions";a:2:{i:0;R:39189;i:1;R:38888;}s:34:"1226:global-feeds.share_on_twitter";a:2:{i:0;R:39189;i:1;R:38888;}s:35:"1226:global-preferred_languages.any";a:2:{i:0;R:39189;i:1;R:38888;}s:36:"1226:global-preferred_languages.user";a:2:{i:0;R:39189;i:1;R:38888;}s:25:"1226:global-number.x_time";a:2:{i:0;R:39189;i:1;R:38888;}s:32:"1226:groups-groups.update.notice";a:2:{i:0;s:14:"shapado-groups";i:1;R:38888;}s:44:"1226:groups-groups.top_grouplist.active_site";a:2:{i:0;R:39267;i:1;R:38888;}s:30:"1226:groups-groups.index.title";a:2:{i:0;R:39267;i:1;R:38888;}s:36:"1226:groups-groups.index.description";a:2:{i:0;R:39267;i:1;R:38888;}s:40:"1226:groups-groups.index.create_your_own";a:2:{i:0;R:39267;i:1;R:38888;}s:31:"1226:groups-groups.index.filter";a:2:{i:0;R:39267;i:1;R:38888;}s:32:"1226:groups-groups.index.actives";a:2:{i:0;R:39267;i:1;R:38888;}s:33:"1226:groups-groups.index.pendings";a:2:{i:0;R:39267;i:1;R:38888;}s:36:"1226:groups-groups.index.most_active";a:2:{i:0;R:39267;i:1;R:38888;}s:38:"1226:groups-groups.index.request_group";a:2:{i:0;R:39267;i:1;R:38888;}s:29:"1226:groups-groups.index.name";a:2:{i:0;R:39267;i:1;R:38888;}s:30:"1226:groups-groups.group.about";a:2:{i:0;R:39267;i:1;R:38888;}s:30:"1226:groups-groups.group.close";a:2:{i:0;R:39267;i:1;R:38888;}s:37:"1226:groups-groups.group.accept_group";a:2:{i:0;R:39267;i:1;R:38888;}s:36:"1226:groups-groups.group.close_group";a:2:{i:0;R:39267;i:1;R:38888;}s:34:"1226:groups-groups.group.allow_ads";a:2:{i:0;R:39267;i:1;R:38888;}s:37:"1226:groups-groups.group.disallow_ads";a:2:{i:0;R:39267;i:1;R:38888;}s:29:"1226:groups-groups.show.title";a:2:{i:0;R:39267;i:1;R:38888;}s:35:"1226:groups-groups.show.visit_group";a:2:{i:0;R:39267;i:1;R:38888;}s:49:"1226:groups-groups.show.group_awaiting_acceptance";a:2:{i:0;R:39267;i:1;R:38888;}s:36:"1226:groups-groups.show.group_closed";a:2:{i:0;R:39267;i:1;R:38888;}s:36:"1226:groups-groups.show.accept_group";a:2:{i:0;R:39267;i:1;R:38888;}s:35:"1226:groups-groups.show.close_group";a:2:{i:0;R:39267;i:1;R:38888;}s:52:"1226:groups-groups.show.accept_group_with_custom_ads";a:2:{i:0;R:39267;i:1;R:38888;}s:28:"1226:groups-groups.new.title";a:2:{i:0;R:39267;i:1;R:38888;}s:38:"1226:groups-groups.create.flash_notice";a:2:{i:0;R:39267;i:1;R:38888;}s:29:"1226:groups-groups.edit.title";a:2:{i:0;R:39267;i:1;R:38888;}s:42:"1226:groups-groups.form.description_legend";a:2:{i:0;R:39267;i:1;R:38888;}s:37:"1226:groups-groups.form.legend_legend";a:2:{i:0;R:39267;i:1;R:38888;}s:43:"1226:groups-groups.form.default_tags_legend";a:2:{i:0;R:39267;i:1;R:38888;}s:35:"1226:groups-groups.form.logo_legend";a:2:{i:0;R:39267;i:1;R:38888;}s:36:"1226:groups-groups.form.any_language";a:2:{i:0;R:39267;i:1;R:38888;}s:30:"1226:groups-groups.form.access";a:2:{i:0;R:39267;i:1;R:38888;}s:37:"1226:groups-groups.form.isolate_group";a:2:{i:0;R:39267;i:1;R:38888;}s:36:"1226:groups-groups.form.members_only";a:2:{i:0;R:39267;i:1;R:38888;}s:35:"1226:groups-groups.form.custom_html";a:2:{i:0;R:39267;i:1;R:38888;}s:33:"1226:groups-groups.form.custom_js";a:2:{i:0;R:39267;i:1;R:38888;}s:40:"1226:groups-groups.form.custom_analytics";a:2:{i:0;R:39267;i:1;R:38888;}s:40:"1226:groups-groups.form.analytics_engine";a:2:{i:0;R:39267;i:1;R:38888;}s:44:"1226:groups-groups.form.website_analytics_id";a:2:{i:0;R:39267;i:1;R:38888;}s:40:"1226:groups-groups.form.analytics_legend";a:2:{i:0;R:39267;i:1;R:38888;}s:34:"1226:groups-groups.form.signup_all";a:2:{i:0;R:39267;i:1;R:38888;}s:38:"1226:groups-groups.form.signup_noemail";a:2:{i:0;R:39267;i:1;R:38888;}s:37:"1226:groups-groups.form.signup_social";a:2:{i:0;R:39267;i:1;R:38888;}s:36:"1226:groups-groups.form.signup_email";a:2:{i:0;R:39267;i:1;R:38888;}s:70:"1226:groups-groups.connect_group_to_twitter.success_twitter_connection";a:2:{i:0;R:39267;i:1;R:38888;}s:69:"1226:groups-groups.connect_group_to_twitter.failed_twitter_connection";a:2:{i:0;R:39267;i:1;R:38888;}s:38:"1226:groups-activerecord.models.groups";a:2:{i:0;R:39267;i:1;R:38888;}s:37:"1226:groups-activerecord.models.group";a:2:{i:0;R:39267;i:1;R:38888;}s:52:"1226:groups-activerecord.models.default_tags_message";a:2:{i:0;R:39267;i:1;R:38888;}s:54:"1226:groups-activerecord.models.reputation_rewards_key";a:2:{i:0;R:39267;i:1;R:38888;}s:64:"1226:groups-activerecord.models.reputation_rewards_ask_constrain";a:2:{i:0;R:39267;i:1;R:38888;}s:67:"1226:groups-activerecord.models.reputation_rewards_answer_constrain";a:2:{i:0;R:39267;i:1;R:38888;}s:56:"1226:groups-activerecord.models.duplicate_domain_message";a:2:{i:0;R:39267;i:1;R:38888;}s:46:"1226:groups-activerecord.attributes.group.name";a:2:{i:0;R:39267;i:1;R:38888;}s:51:"1226:groups-activerecord.attributes.group.subdomain";a:2:{i:0;R:39267;i:1;R:38888;}s:48:"1226:groups-activerecord.attributes.group.domain";a:2:{i:0;R:39267;i:1;R:38888;}s:48:"1226:groups-activerecord.attributes.group.legend";a:2:{i:0;R:39267;i:1;R:38888;}s:53:"1226:groups-activerecord.attributes.group.description";a:2:{i:0;R:39267;i:1;R:38888;}s:47:"1226:groups-activerecord.attributes.group.state";a:2:{i:0;R:39267;i:1;R:38888;}s:47:"1226:groups-activerecord.attributes.group.owner";a:2:{i:0;R:39267;i:1;R:38888;}s:58:"1226:groups-activerecord.attributes.group.group_created_by";a:2:{i:0;R:39267;i:1;R:38888;}s:50:"1226:groups-activerecord.attributes.group.language";a:2:{i:0;R:39267;i:1;R:38888;}s:51:"1226:groups-activerecord.attributes.group.languages";a:2:{i:0;R:39267;i:1;R:38888;}s:54:"1226:groups-activerecord.attributes.group.default_tags";a:2:{i:0;R:39267;i:1;R:38888;}s:46:"1226:groups-activerecord.attributes.group.logo";a:2:{i:0;R:39267;i:1;R:38888;}s:47:"1226:groups-activerecord.attributes.group.forum";a:2:{i:0;R:39267;i:1;R:38888;}s:53:"1226:groups-activerecord.attributes.group.signup_type";a:2:{i:0;R:39267;i:1;R:38888;}s:57:"1226:groups-activerecord.attributes.group.registered_only";a:2:{i:0;R:39267;i:1;R:38888;}s:67:"1226:groups-activerecord.attributes.group.may_contain_adult_content";a:2:{i:0;R:39267;i:1;R:38888;}s:56:"1226:groups-activerecord.attributes.group.wysiwyg_editor";a:2:{i:0;R:39267;i:1;R:38888;}s:51:"1226:groups-activerecord.attributes.group.fb_button";a:2:{i:0;R:39267;i:1;R:38888;}s:54:"1226:groups-activerecord.attributes.group.enable_latex";a:2:{i:0;R:39267;i:1;R:38888;}s:56:"1226:groups-activerecord.attributes.group.enable_mathjax";a:2:{i:0;R:39267;i:1;R:38888;}s:51:"1226:groups-activerecord.attributes.group.daily_cap";a:2:{i:0;R:39267;i:1;R:38888;}s:53:"1226:groups-activerecord.attributes.group.track_users";a:2:{i:0;R:39267;i:1;R:38888;}s:51:"1226:imports-imports.subtabs.need_confirmation.name";a:2:{i:0;s:15:"shapado-imports";i:1;R:38888;}s:52:"1226:imports-imports.subtabs.need_confirmation.title";a:2:{i:0;R:39344;i:1;R:38888;}s:48:"1226:invitations-invitations.resend.flash_notice";a:2:{i:0;s:19:"shapado-invitations";i:1;R:38888;}s:48:"1226:invitations-invitations.revoke.flash_notice";a:2:{i:0;R:39347;i:1;R:38888;}s:48:"1226:invitations-invitations.create.flash_notice";a:2:{i:0;R:39347;i:1;R:38888;}s:48:"1226:invitations-invitations.create.limit_notice";a:2:{i:0;R:39347;i:1;R:38888;}s:43:"1226:invitations-invitations.accept.welcome";a:2:{i:0;R:39347;i:1;R:38888;}s:47:"1226:invitations-invitations.accept.description";a:2:{i:0;R:39347;i:1;R:38888;}s:42:"1226:invitations-invitations.accept.point1";a:2:{i:0;R:39347;i:1;R:38888;}s:42:"1226:invitations-invitations.accept.point2";a:2:{i:0;R:39347;i:1;R:38888;}s:42:"1226:invitations-invitations.accept.point3";a:2:{i:0;R:39347;i:1;R:38888;}s:42:"1226:invitations-invitations.accept.point4";a:2:{i:0;R:39347;i:1;R:38888;}s:50:"1226:invitations-invitations.accept.create_account";a:2:{i:0;R:39347;i:1;R:38888;}s:52:"1226:invitations-invitations.accept.facebook_connect";a:2:{i:0;R:39347;i:1;R:38888;}s:51:"1226:invitations-invitations.accept.twitter_connect";a:2:{i:0;R:39347;i:1;R:38888;}s:49:"1226:invitations-invitations.accept.other_connect";a:2:{i:0;R:39347;i:1;R:38888;}s:56:"1226:invitations-invitations.accept.other_social_options";a:2:{i:0;R:39347;i:1;R:38888;}s:46:"1226:invitations-invitations.accept.final_step";a:2:{i:0;R:39347;i:1;R:38888;}s:56:"1226:invitations-invitations.accept.create_account_step2";a:2:{i:0;R:39347;i:1;R:38888;}s:48:"1226:invitations-invitations.accept.find_friends";a:2:{i:0;R:39347;i:1;R:38888;}s:49:"1226:invitations-invitations.accept.follow_things";a:2:{i:0;R:39347;i:1;R:38888;}s:61:"1226:invitations-invitations.accept.follow_things_description";a:2:{i:0;R:39347;i:1;R:38888;}s:40:"1226:invitations-invitations.accept.done";a:2:{i:0;R:39347;i:1;R:38888;}s:45:"1226:jobs-jobs.base.create_badge.send_twitter";a:2:{i:0;s:12:"shapado-jobs";i:1;R:38888;}s:51:"1226:jobs-jobs.base.create_badge.group_send_twitter";a:2:{i:0;R:39369;i:1;R:38888;}s:54:"1226:jobs-jobs.answers.on_favorite_answer.send_twitter";a:2:{i:0;R:39369;i:1;R:38888;}s:60:"1226:jobs-jobs.answers.on_favorite_answer.group_send_twitter";a:2:{i:0;R:39369;i:1;R:38888;}s:52:"1226:jobs-jobs.answers.on_create_answer.send_twitter";a:2:{i:0;R:39369;i:1;R:38888;}s:58:"1226:jobs-jobs.answers.on_create_answer.group_send_twitter";a:2:{i:0;R:39369;i:1;R:38888;}s:47:"1226:jobs-jobs.comments.on_comment.send_twitter";a:2:{i:0;R:39369;i:1;R:38888;}s:51:"1226:jobs-jobs.comments.on_comment.group_on_comment";a:2:{i:0;R:39369;i:1;R:38888;}s:21:"1226:js-on_leave_page";a:2:{i:0;s:10:"shapado-js";i:1;R:38888;}s:15:"1226:js-loading";a:2:{i:0;R:39378;i:1;R:38888;}s:37:"1226:layouts-layouts.application.feed";a:2:{i:0;s:15:"shapado-layouts";i:1;R:38888;}s:47:"1226:layouts-layouts.application.need_to_signin";a:2:{i:0;R:39381;i:1;R:38888;}s:55:"1226:layouts-layouts.application.not_member_join_dialog";a:2:{i:0;R:39381;i:1;R:38888;}s:54:"1226:layouts-layouts.application.success_joining_group";a:2:{i:0;R:39381;i:1;R:38888;}s:43:"1226:layouts-layouts.application.join_group";a:2:{i:0;R:39381;i:1;R:38888;}s:38:"1226:layouts-layouts.application.title";a:2:{i:0;R:39381;i:1;R:38888;}s:42:"1226:layouts-layouts.application.questions";a:2:{i:0;R:39381;i:1;R:38888;}s:45:"1226:layouts-layouts.application.questions_in";a:2:{i:0;R:39381;i:1;R:38888;}s:49:"1226:layouts-layouts.application.questions_tagged";a:2:{i:0;R:39381;i:1;R:38888;}s:45:"1226:layouts-layouts.application.ask_question";a:2:{i:0;R:39381;i:1;R:38888;}s:37:"1226:layouts-layouts.application.tags";a:2:{i:0;R:39381;i:1;R:38888;}s:38:"1226:layouts-layouts.application.users";a:2:{i:0;R:39381;i:1;R:38888;}s:39:"1226:layouts-layouts.application.badges";a:2:{i:0;R:39381;i:1;R:38888;}s:43:"1226:layouts-layouts.application.unanswered";a:2:{i:0;R:39381;i:1;R:38888;}s:38:"1226:layouts-layouts.application.pages";a:2:{i:0;R:39381;i:1;R:38888;}s:39:"1226:layouts-layouts.application.logout";a:2:{i:0;R:39381;i:1;R:38888;}s:39:"1226:layouts-layouts.application.logged";a:2:{i:0;R:39381;i:1;R:38888;}s:39:"1226:layouts-layouts.application.search";a:2:{i:0;R:39381;i:1;R:38888;}s:39:"1226:layouts-layouts.application.forgot";a:2:{i:0;R:39381;i:1;R:38888;}s:39:"1226:layouts-layouts.application.log_in";a:2:{i:0;R:39381;i:1;R:38888;}s:39:"1226:layouts-layouts.application.signup";a:2:{i:0;R:39381;i:1;R:38888;}s:41:"1226:layouts-layouts.application.settings";a:2:{i:0;R:39381;i:1;R:38888;}s:42:"1226:layouts-layouts.application.languages";a:2:{i:0;R:39381;i:1;R:38888;}s:41:"1226:layouts-layouts.application.moderate";a:2:{i:0;R:39381;i:1;R:38888;}s:43:"1226:layouts-layouts.application.manage_ads";a:2:{i:0;R:39381;i:1;R:38888;}s:37:"1226:layouts-layouts.application.home";a:2:{i:0;R:39381;i:1;R:38888;}s:42:"1226:layouts-layouts.application.subscribe";a:2:{i:0;R:39381;i:1;R:38888;}s:45:"1226:layouts-layouts.application.welcome_from";a:2:{i:0;R:39381;i:1;R:38888;}s:36:"1226:layouts-layouts.application.now";a:2:{i:0;R:39381;i:1;R:38888;}s:36:"1226:layouts-layouts.application.faq";a:2:{i:0;R:39381;i:1;R:38888;}s:36:"1226:layouts-layouts.application.all";a:2:{i:0;R:39381;i:1;R:38888;}s:41:"1226:layouts-layouts.application.followed";a:2:{i:0;R:39381;i:1;R:38888;}s:38:"1226:layouts-layouts.application.by_me";a:2:{i:0;R:39381;i:1;R:38888;}s:42:"1226:layouts-layouts.application.preferred";a:2:{i:0;R:39381;i:1;R:38888;}s:44:"1226:layouts-layouts.application.contributed";a:2:{i:0;R:39381;i:1;R:38888;}s:44:"1226:layouts-layouts.application.collaborate";a:2:{i:0;R:39381;i:1;R:38888;}s:48:"1226:layouts-layouts.application.random_question";a:2:{i:0;R:39381;i:1;R:38888;}s:52:"1226:layouts-layouts.application.follow_us_and_share";a:2:{i:0;R:39381;i:1;R:38888;}s:52:"1226:layouts-layouts.application.openid.explaination";a:2:{i:0;R:39381;i:1;R:38888;}s:39:"1226:layouts-layouts.manage.close_group";a:2:{i:0;R:39381;i:1;R:38888;}s:39:"1226:layouts-layouts.manage.edit_layout";a:2:{i:0;R:39381;i:1;R:38888;}s:49:"1226:layouts-layouts.manage.group_user_management";a:2:{i:0;R:39381;i:1;R:38888;}s:42:"1226:layouts-layouts.manage.group_features";a:2:{i:0;R:39381;i:1;R:38888;}s:47:"1226:layouts-layouts.manage.group_look_and_feel";a:2:{i:0;R:39381;i:1;R:38888;}s:34:"1226:layouts-layouts.manage.themes";a:2:{i:0;R:39381;i:1;R:38888;}s:38:"1226:layouts-layouts.manage.appearance";a:2:{i:0;R:39381;i:1;R:38888;}s:37:"1226:layouts-layouts.manage.dashboard";a:2:{i:0;R:39381;i:1;R:38888;}s:38:"1226:layouts-layouts.manage.properties";a:2:{i:0;R:39381;i:1;R:38888;}s:35:"1226:layouts-layouts.manage.widgets";a:2:{i:0;R:39381;i:1;R:38888;}s:35:"1226:layouts-layouts.manage.actions";a:2:{i:0;R:39381;i:1;R:38888;}s:33:"1226:layouts-layouts.manage.stats";a:2:{i:0;R:39381;i:1;R:38888;}s:35:"1226:layouts-layouts.manage.members";a:2:{i:0;R:39381;i:1;R:38888;}s:38:"1226:layouts-layouts.manage.reputation";a:2:{i:0;R:39381;i:1;R:38888;}s:35:"1226:layouts-layouts.manage.content";a:2:{i:0;R:39381;i:1;R:38888;}s:33:"1226:layouts-layouts.manage.theme";a:2:{i:0;R:39381;i:1;R:38888;}s:34:"1226:layouts-layouts.manage.domain";a:2:{i:0;R:39381;i:1;R:38888;}s:36:"1226:layouts-layouts.manage.invoices";a:2:{i:0;R:39381;i:1;R:38888;}s:33:"1226:layouts-layouts.manage.pages";a:2:{i:0;R:39381;i:1;R:38888;}s:38:"1226:layouts-layouts.manage.constrains";a:2:{i:0;R:39381;i:1;R:38888;}s:35:"1226:layouts-layouts.manage.rewards";a:2:{i:0;R:39381;i:1;R:38888;}s:35:"1226:layouts-layouts.manage.general";a:2:{i:0;R:39381;i:1;R:38888;}s:41:"1226:layouts-layouts.manage.announcements";a:2:{i:0;R:39381;i:1;R:38888;}s:34:"1226:layouts-layouts.manage.social";a:2:{i:0;R:39381;i:1;R:38888;}s:39:"1226:layouts-layouts.manage.invitations";a:2:{i:0;R:39381;i:1;R:38888;}s:34:"1226:layouts-layouts.manage.access";a:2:{i:0;R:39381;i:1;R:38888;}s:42:"1226:layouts-layouts.notifications.message";a:2:{i:0;R:39381;i:1;R:38888;}s:59:"1226:mailers-mailers.notifications.new_answer.subject_owner";a:2:{i:0;s:15:"shapado-mailers";i:1;R:38888;}s:60:"1226:mailers-mailers.notifications.new_answer.subject_friend";a:2:{i:0;R:39448;i:1;R:38888;}s:59:"1226:mailers-mailers.notifications.new_answer.subject_other";a:2:{i:0;R:39448;i:1;R:38888;}s:54:"1226:mailers-mailers.notifications.new_comment.subject";a:2:{i:0;R:39448;i:1;R:38888;}s:54:"1226:mailers-mailers.notifications.give_advice.subject";a:2:{i:0;R:39448;i:1;R:38888;}s:61:"1226:mailers-mailers.notifications.give_advice.friend_subject";a:2:{i:0;R:39448;i:1;R:38888;}s:49:"1226:mailers-mailers.notifications.follow.subject";a:2:{i:0;R:39448;i:1;R:38888;}s:55:"1226:mailers-mailers.notifications.earned_badge.subject";a:2:{i:0;R:39448;i:1;R:38888;}s:52:"1226:mailers-mailers.notifications.favorited.subject";a:2:{i:0;R:39448;i:1;R:38888;}s:49:"1226:mailers-mailers.notifications.report.subject";a:2:{i:0;R:39448;i:1;R:38888;}s:55:"1226:mailers-mailers.notifications.created_flag.subject";a:2:{i:0;R:39448;i:1;R:38888;}s:57:"1226:mailers-mailers.notifications.new_invitation.subject";a:2:{i:0;R:39448;i:1;R:38888;}s:48:"1226:manage-admin.manage.close_group.description";a:2:{i:0;s:14:"shapado-manage";i:1;R:38888;}s:45:"1226:manage-admin.manage.close_group.feedback";a:2:{i:0;R:39461;i:1;R:38888;}s:48:"1226:manage-admin.manage.questions.banning.title";a:2:{i:0;R:39461;i:1;R:38888;}s:46:"1226:manage-admin.manage.answers.banning.title";a:2:{i:0;R:39461;i:1;R:38888;}s:40:"1226:manage-admin.manage.top_admin.title";a:2:{i:0;R:39461;i:1;R:38888;}s:39:"1226:manage-admin.manage.top_admin.site";a:2:{i:0;R:39461;i:1;R:38888;}s:37:"1226:manage-admin.manage.access.title";a:2:{i:0;R:39461;i:1;R:38888;}s:42:"1226:manage-admin.manage.invitations.title";a:2:{i:0;R:39461;i:1;R:38888;}s:43:"1226:manage-admin.manage.invitations.invite";a:2:{i:0;R:39461;i:1;R:38888;}s:48:"1226:manage-admin.manage.invitations.invitations";a:2:{i:0;R:39461;i:1;R:38888;}s:49:"1226:manage-admin.manage.invitations.invite_title";a:2:{i:0;R:39461;i:1;R:38888;}s:54:"1226:manage-admin.manage.invitations.invitations_title";a:2:{i:0;R:39461;i:1;R:38888;}s:37:"1226:manage-admin.manage.social.title";a:2:{i:0;R:39461;i:1;R:38888;}s:43:"1226:manage-admin.manage.social.description";a:2:{i:0;R:39461;i:1;R:38888;}s:47:"1226:manage-admin.manage.social.post_to_twitter";a:2:{i:0;R:39461;i:1;R:38888;}s:48:"1226:manage-admin.manage.social.ask_from_twitter";a:2:{i:0;R:39461;i:1;R:38888;}s:44:"1226:manage-admin.manage.social.facebook_app";a:2:{i:0;R:39461;i:1;R:38888;}s:47:"1226:manage-admin.manage.social.twitter_account";a:2:{i:0;R:39461;i:1;R:38888;}s:47:"1226:manage-admin.manage.social.tag_your_tweets";a:2:{i:0;R:39461;i:1;R:38888;}s:53:"1226:manage-admin.manage.social.tag_your_tweets_title";a:2:{i:0;R:39461;i:1;R:38888;}s:53:"1226:manage-admin.manage.social.post_to_twitter_title";a:2:{i:0;R:39461;i:1;R:38888;}s:54:"1226:manage-admin.manage.social.ask_from_twitter_title";a:2:{i:0;R:39461;i:1;R:38888;}s:50:"1226:manage-admin.manage.social.facebook_app_title";a:2:{i:0;R:39461;i:1;R:38888;}s:53:"1226:manage-admin.manage.social.twitter_account_title";a:2:{i:0;R:39461;i:1;R:38888;}s:38:"1226:manage-admin.manage.content.title";a:2:{i:0;R:39461;i:1;R:38888;}s:44:"1226:manage-admin.manage.content.description";a:2:{i:0;R:39461;i:1;R:38888;}s:48:"1226:manage-admin.manage.content.question_prompt";a:2:{i:0;R:39461;i:1;R:38888;}s:46:"1226:manage-admin.manage.content.question_help";a:2:{i:0;R:39461;i:1;R:38888;}s:37:"1226:manage-admin.manage.content.head";a:2:{i:0;R:39461;i:1;R:38888;}s:39:"1226:manage-admin.manage.content.footer";a:2:{i:0;R:39461;i:1;R:38888;}s:40:"1226:manage-admin.manage.content.top_bar";a:2:{i:0;R:39461;i:1;R:38888;}s:44:"1226:manage-admin.manage.content.top_bar_tip";a:2:{i:0;R:39461;i:1;R:38888;}s:41:"1226:manage-admin.manage.appearance.title";a:2:{i:0;R:39461;i:1;R:38888;}s:47:"1226:manage-admin.manage.appearance.logo_legend";a:2:{i:0;R:39461;i:1;R:38888;}s:41:"1226:manage-admin.manage.properties.title";a:2:{i:0;R:39461;i:1;R:38888;}s:48:"1226:manage-admin.manage.properties.invite.title";a:2:{i:0;R:39461;i:1;R:38888;}s:60:"1226:manage-admin.manage.properties.invite.body_instructions";a:2:{i:0;R:39461;i:1;R:38888;}s:62:"1226:manage-admin.manage.properties.invite.body_length_warning";a:2:{i:0;R:39461;i:1;R:38888;}s:62:"1226:manage-admin.manage.properties.invite.emails_instructions";a:2:{i:0;R:39461;i:1;R:38888;}s:52:"1226:manage-admin.manage.properties.invite.user_role";a:2:{i:0;R:39461;i:1;R:38888;}s:49:"1226:manage-admin.manage.properties.invite.invite";a:2:{i:0;R:39461;i:1;R:38888;}s:54:"1226:manage-admin.manage.properties.invite.invitations";a:2:{i:0;R:39461;i:1;R:38888;}s:61:"1226:manage-admin.manage.properties.invitations.revoke_button";a:2:{i:0;R:39461;i:1;R:38888;}s:61:"1226:manage-admin.manage.properties.invitations.resend_button";a:2:{i:0;R:39461;i:1;R:38888;}s:67:"1226:manage-admin.manage.properties.post_to_twitter.post_to_twitter";a:2:{i:0;R:39461;i:1;R:38888;}s:77:"1226:manage-admin.manage.properties.post_to_twitter.send_questions_to_twitter";a:2:{i:0;R:39461;i:1;R:38888;}s:74:"1226:manage-admin.manage.properties.post_to_twitter.send_badges_to_twitter";a:2:{i:0;R:39461;i:1;R:38888;}s:77:"1226:manage-admin.manage.properties.post_to_twitter.send_favorites_to_twitter";a:2:{i:0;R:39461;i:1;R:38888;}s:75:"1226:manage-admin.manage.properties.post_to_twitter.send_answers_to_twitter";a:2:{i:0;R:39461;i:1;R:38888;}s:76:"1226:manage-admin.manage.properties.post_to_twitter.send_comments_to_twitter";a:2:{i:0;R:39461;i:1;R:38888;}s:58:"1226:manage-admin.manage.properties.post_to_twitter.legend";a:2:{i:0;R:39461;i:1;R:38888;}s:66:"1226:manage-admin.manage.properties.post_to_twitter.legend_connect";a:2:{i:0;R:39461;i:1;R:38888;}s:69:"1226:manage-admin.manage.properties.tag_your_tweets.tweet_starts_with";a:2:{i:0;R:39461;i:1;R:38888;}s:67:"1226:manage-admin.manage.properties.tag_your_tweets.tweet_ends_with";a:2:{i:0;R:39461;i:1;R:38888;}s:71:"1226:manage-admin.manage.properties.tag_your_tweets.starts_with_example";a:2:{i:0;R:39461;i:1;R:38888;}s:69:"1226:manage-admin.manage.properties.tag_your_tweets.ends_with_example";a:2:{i:0;R:39461;i:1;R:38888;}s:60:"1226:manage-admin.manage.properties.tag_your_tweets.add_tags";a:2:{i:0;R:39461;i:1;R:38888;}s:57:"1226:manage-admin.manage.properties.tag_your_tweets.title";a:2:{i:0;R:39461;i:1;R:38888;}s:72:"1226:manage-admin.manage.properties.ask_from_twitter.asking_from_twitter";a:2:{i:0;R:39461;i:1;R:38888;}s:74:"1226:manage-admin.manage.properties.ask_from_twitter.question_must_include";a:2:{i:0;R:39461;i:1;R:38888;}s:68:"1226:manage-admin.manage.properties.ask_from_twitter.twitter_account";a:2:{i:0;R:39461;i:1;R:38888;}s:70:"1226:manage-admin.manage.properties.ask_from_twitter.question_asked_to";a:2:{i:0;R:39461;i:1;R:38888;}s:82:"1226:manage-admin.manage.properties.ask_from_twitter.question_must_include_example";a:2:{i:0;R:39461;i:1;R:38888;}s:55:"1226:manage-admin.manage.properties.facebook_app.legend";a:2:{i:0;R:39461;i:1;R:38888;}s:63:"1226:manage-admin.manage.properties.facebook_app.application_id";a:2:{i:0;R:39461;i:1;R:38888;}s:59:"1226:manage-admin.manage.properties.facebook_app.secret_key";a:2:{i:0;R:39461;i:1;R:38888;}s:61:"1226:manage-admin.manage.properties.facebook_app.facebook_app";a:2:{i:0;R:39461;i:1;R:38888;}s:59:"1226:manage-admin.manage.properties.twitter_app.twitter_app";a:2:{i:0;R:39461;i:1;R:38888;}s:51:"1226:manage-admin.manage.properties.twitter_app.key";a:2:{i:0;R:39461;i:1;R:38888;}s:54:"1226:manage-admin.manage.properties.twitter_app.secret";a:2:{i:0;R:39461;i:1;R:38888;}s:67:"1226:manage-admin.manage.properties.twitter_account.twitter_account";a:2:{i:0;R:39461;i:1;R:38888;}s:76:"1226:manage-admin.manage.properties.twitter_account.connect_to_other_twitter";a:2:{i:0;R:39461;i:1;R:38888;}s:71:"1226:manage-admin.manage.properties.twitter_account.legend_with_account";a:2:{i:0;R:39461;i:1;R:38888;}s:76:"1226:manage-admin.manage.properties.twitter_account.disconnect_twitter_group";a:2:{i:0;R:39461;i:1;R:38888;}s:70:"1226:manage-admin.manage.properties.twitter_account.connect_to_twitter";a:2:{i:0;R:39461;i:1;R:38888;}s:58:"1226:manage-admin.manage.properties.twitter_account.legend";a:2:{i:0;R:39461;i:1;R:38888;}s:49:"1226:manage-admin.manage.properties.general.title";a:2:{i:0;R:39461;i:1;R:38888;}s:47:"1226:manage-admin.manage.properties.share.title";a:2:{i:0;R:39461;i:1;R:38888;}s:52:"1226:manage-admin.manage.properties.constrains.title";a:2:{i:0;R:39461;i:1;R:38888;}s:77:"1226:manage-admin.manage.properties.constrains.reputation_constrains_subtitle";a:2:{i:0;R:39461;i:1;R:38888;}s:80:"1226:manage-admin.manage.properties.constrains.reputation_constrains_description";a:2:{i:0;R:39461;i:1;R:38888;}s:49:"1226:manage-admin.manage.properties.rewards.title";a:2:{i:0;R:39461;i:1;R:38888;}s:71:"1226:manage-admin.manage.properties.rewards.reputation_rewards_subtitle";a:2:{i:0;R:39461;i:1;R:38888;}s:74:"1226:manage-admin.manage.properties.rewards.reputation_rewards_description";a:2:{i:0;R:39461;i:1;R:38888;}s:48:"1226:manage-admin.manage.properties.domain.title";a:2:{i:0;R:39461;i:1;R:38888;}s:54:"1226:manage-admin.manage.properties.domain.description";a:2:{i:0;R:39461;i:1;R:38888;}s:55:"1226:manage-admin.manage.properties.domain.instruction1";a:2:{i:0;R:39461;i:1;R:38888;}s:55:"1226:manage-admin.manage.properties.domain.instruction2";a:2:{i:0;R:39461;i:1;R:38888;}s:55:"1226:manage-admin.manage.properties.domain.instruction3";a:2:{i:0;R:39461;i:1;R:38888;}s:55:"1226:manage-admin.manage.properties.domain.instruction4";a:2:{i:0;R:39461;i:1;R:38888;}s:55:"1226:manage-admin.manage.properties.domain.instruction5";a:2:{i:0;R:39461;i:1;R:38888;}s:55:"1226:manage-admin.manage.properties.domain.instruction6";a:2:{i:0;R:39461;i:1;R:38888;}s:50:"1226:manage-admin.manage.properties.domain.warning";a:2:{i:0;R:39461;i:1;R:38888;}s:48:"1226:members-activerecord.attributes.member.role";a:2:{i:0;s:15:"shapado-members";i:1;R:38888;}s:32:"1226:members-members.index.title";a:2:{i:0;R:39555;i:1;R:38888;}s:40:"1226:members-members.index.title_isolate";a:2:{i:0;R:39555;i:1;R:38888;}s:47:"1226:members-members.index.manage_members_title";a:2:{i:0;R:39555;i:1;R:38888;}s:35:"1226:members-members.form.login_tip";a:2:{i:0;R:39555;i:1;R:38888;}s:41:"1226:members-members.form.destroy_confirm";a:2:{i:0;R:39555;i:1;R:38888;}s:34:"1226:members-members.create.notice";a:2:{i:0;R:39555;i:1;R:38888;}s:33:"1226:members-members.create.error";a:2:{i:0;R:39555;i:1;R:38888;}s:33:"1226:members-members.update.error";a:2:{i:0;R:39555;i:1;R:38888;}s:44:"1226:moderate-moderate.questions.index.title";a:2:{i:0;s:16:"shapado-moderate";i:1;R:38888;}s:46:"1226:moderate-moderate.questions.flagged.title";a:2:{i:0;R:39565;i:1;R:38888;}s:48:"1226:moderate-moderate.questions.flagged.filters";a:2:{i:0;R:39565;i:1;R:38888;}s:49:"1226:moderate-moderate.questions.flagged.unbanned";a:2:{i:0;R:39565;i:1;R:38888;}s:57:"1226:moderate-moderate.questions.flagged.unbanned_tooltip";a:2:{i:0;R:39565;i:1;R:38888;}s:47:"1226:moderate-moderate.questions.flagged.banned";a:2:{i:0;R:39565;i:1;R:38888;}s:55:"1226:moderate-moderate.questions.flagged.banned_tooltip";a:2:{i:0;R:39565;i:1;R:38888;}s:46:"1226:moderate-moderate.questions.subtabs.retag";a:2:{i:0;R:39565;i:1;R:38888;}s:54:"1226:moderate-moderate.questions.subtabs.retag_tooltip";a:2:{i:0;R:39565;i:1;R:38888;}s:48:"1226:moderate-moderate.questions.subtabs.flagged";a:2:{i:0;R:39565;i:1;R:38888;}s:56:"1226:moderate-moderate.questions.subtabs.flagged_tooltip";a:2:{i:0;R:39565;i:1;R:38888;}s:49:"1226:moderate-moderate.questions.subtabs.to_close";a:2:{i:0;R:39565;i:1;R:38888;}s:57:"1226:moderate-moderate.questions.subtabs.to_close_tooltip";a:2:{i:0;R:39565;i:1;R:38888;}s:48:"1226:moderate-moderate.questions.subtabs.to_open";a:2:{i:0;R:39565;i:1;R:38888;}s:56:"1226:moderate-moderate.questions.subtabs.to_open_tooltip";a:2:{i:0;R:39565;i:1;R:38888;}s:40:"1226:moderate-admin.moderate.index.title";a:2:{i:0;R:39565;i:1;R:38888;}s:38:"1226:moderate-admin.moderate.index.ban";a:2:{i:0;R:39565;i:1;R:38888;}s:42:"1226:moderate-admin.moderate.index.content";a:2:{i:0;R:39565;i:1;R:38888;}s:45:"1226:moderate-admin.moderate.index.item_title";a:2:{i:0;R:39565;i:1;R:38888;}s:38:"1226:moderate-admin.moderate.index.all";a:2:{i:0;R:39565;i:1;R:38888;}s:42:"1226:moderate-admin.moderate.index.flagged";a:2:{i:0;R:39565;i:1;R:38888;}s:41:"1226:moderate-admin.moderate.index.banned";a:2:{i:0;R:39565;i:1;R:38888;}s:44:"1226:moderate-admin.moderate.index.need_tags";a:2:{i:0;R:39565;i:1;R:38888;}s:42:"1226:moderate-admin.moderate.opening.title";a:2:{i:0;R:39565;i:1;R:38888;}s:42:"1226:moderate-admin.moderate.closing.title";a:2:{i:0;R:39565;i:1;R:38888;}s:32:"1226:notifier-notifier.global.hi";a:2:{i:0;s:16:"shapado-notifier";i:1;R:38888;}s:40:"1226:notifier-notifier.global.hi_no_user";a:2:{i:0;R:39591;i:1;R:38888;}s:39:"1226:notifier-notifier.global.user_page";a:2:{i:0;R:39591;i:1;R:38888;}s:41:"1226:notifier-notifier.favorited.message1";a:2:{i:0;R:39591;i:1;R:38888;}s:41:"1226:notifier-notifier.favorited.message2";a:2:{i:0;R:39591;i:1;R:38888;}s:41:"1226:notifier-notifier.favorited.message3";a:2:{i:0;R:39591;i:1;R:38888;}s:44:"1226:notifier-notifier.earned_badge.message1";a:2:{i:0;R:39591;i:1;R:38888;}s:44:"1226:notifier-notifier.earned_badge.message2";a:2:{i:0;R:39591;i:1;R:38888;}s:44:"1226:notifier-notifier.earned_badge.message3";a:2:{i:0;R:39591;i:1;R:38888;}s:44:"1226:notifier-notifier.created_flag.message1";a:2:{i:0;R:39591;i:1;R:38888;}s:44:"1226:notifier-notifier.created_flag.message2";a:2:{i:0;R:39591;i:1;R:38888;}s:47:"1226:notifier-notifier.created_flag.message2bis";a:2:{i:0;R:39591;i:1;R:38888;}s:51:"1226:notifier-notifier.created_flag.message2bistext";a:2:{i:0;R:39591;i:1;R:38888;}s:44:"1226:notifier-notifier.created_flag.message3";a:2:{i:0;R:39591;i:1;R:38888;}s:44:"1226:notifier-notifier.created_flag.message4";a:2:{i:0;R:39591;i:1;R:38888;}s:38:"1226:notifier-notifier.follow.message1";a:2:{i:0;R:39591;i:1;R:38888;}s:38:"1226:notifier-notifier.follow.message2";a:2:{i:0;R:39591;i:1;R:38888;}s:43:"1226:notifier-notifier.give_advice.message1";a:2:{i:0;R:39591;i:1;R:38888;}s:43:"1226:notifier-notifier.give_advice.message2";a:2:{i:0;R:39591;i:1;R:38888;}s:43:"1226:notifier-notifier.give_advice.message3";a:2:{i:0;R:39591;i:1;R:38888;}s:43:"1226:notifier-notifier.give_advice.message4";a:2:{i:0;R:39591;i:1;R:38888;}s:41:"1226:notifier-notifier.new_answer.message";a:2:{i:0;R:39591;i:1;R:38888;}s:42:"1226:notifier-notifier.new_comment.message";a:2:{i:0;R:39591;i:1;R:38888;}s:44:"1226:notifier-notifier.new_feedback.message1";a:2:{i:0;R:39591;i:1;R:38888;}s:44:"1226:notifier-notifier.new_feedback.message2";a:2:{i:0;R:39591;i:1;R:38888;}s:44:"1226:notifier-notifier.new_feedback.message3";a:2:{i:0;R:39591;i:1;R:38888;}s:44:"1226:notifier-notifier.new_feedback.message4";a:2:{i:0;R:39591;i:1;R:38888;}s:38:"1226:notifier-notifier.report.message1";a:2:{i:0;R:39591;i:1;R:38888;}s:38:"1226:notifier-notifier.report.message2";a:2:{i:0;R:39591;i:1;R:38888;}s:38:"1226:notifier-notifier.report.message3";a:2:{i:0;R:39591;i:1;R:38888;}s:38:"1226:notifier-notifier.report.message4";a:2:{i:0;R:39591;i:1;R:38888;}s:38:"1226:notifier-notifier.report.message5";a:2:{i:0;R:39591;i:1;R:38888;}s:38:"1226:notifier-notifier.report.message6";a:2:{i:0;R:39591;i:1;R:38888;}s:38:"1226:notifier-notifier.report.message7";a:2:{i:0;R:39591;i:1;R:38888;}s:38:"1226:notifier-notifier.report.message8";a:2:{i:0;R:39591;i:1;R:38888;}s:42:"1226:notifier-notifier.admin_login.subject";a:2:{i:0;R:39591;i:1;R:38888;}s:43:"1226:notifier-notifier.admin_login.message1";a:2:{i:0;R:39591;i:1;R:38888;}s:45:"1226:notifier-notifier.new_invitation.subject";a:2:{i:0;R:39591;i:1;R:38888;}s:46:"1226:notifier-notifier.new_invitation.message1";a:2:{i:0;R:39591;i:1;R:38888;}s:46:"1226:notifier-notifier.new_invitation.message2";a:2:{i:0;R:39591;i:1;R:38888;}s:46:"1226:notifier-notifier.new_invitation.message3";a:2:{i:0;R:39591;i:1;R:38888;}s:43:"1226:openrequests-open_requests.index.title";a:2:{i:0;s:20:"shapado-openrequests";i:1;R:38888;}s:60:"1226:openrequests-open_requests.form.request_opening_details";a:2:{i:0;R:39633;i:1;R:38888;}s:41:"1226:openrequests-open_requests.new.title";a:2:{i:0;R:39633;i:1;R:38888;}s:42:"1226:openrequests-open_requests.edit.title";a:2:{i:0;R:39633;i:1;R:38888;}s:51:"1226:openrequests-open_requests.create.flash_notice";a:2:{i:0;R:39633;i:1;R:38888;}s:51:"1226:openrequests-open_requests.update.flash_notice";a:2:{i:0;R:39633;i:1;R:38888;}s:52:"1226:openrequests-open_requests.destroy.flash_notice";a:2:{i:0;R:39633;i:1;R:38888;}s:49:"1226:openrequests-open_requests.model.prural_name";a:2:{i:0;R:39633;i:1;R:38888;}s:22:"1226:pages-pages.title";a:2:{i:0;s:13:"shapado-pages";i:1;R:38888;}s:34:"1226:pages-pages.index.create_page";a:2:{i:0;R:39642;i:1;R:38888;}s:28:"1226:pages-pages.index.title";a:2:{i:0;R:39642;i:1;R:38888;}s:27:"1226:pages-pages.index.wiki";a:2:{i:0;R:39642;i:1;R:38888;}s:33:"1226:pages-pages.index.wiki_pages";a:2:{i:0;R:39642;i:1;R:38888;}s:33:"1226:pages-pages.index.written_in";a:2:{i:0;R:39642;i:1;R:38888;}s:27:"1226:pages-pages.edit.title";a:2:{i:0;R:39642;i:1;R:38888;}s:31:"1226:pages-pages.create.success";a:2:{i:0;R:39642;i:1;R:38888;}s:31:"1226:pages-pages.update.success";a:2:{i:0;R:39642;i:1;R:38888;}s:26:"1226:pages-pages.new.title";a:2:{i:0;R:39642;i:1;R:38888;}s:31:"1226:pages-pages.form.title_tip";a:2:{i:0;R:39642;i:1;R:38888;}s:34:"1226:pages-pages.form.language_tip";a:2:{i:0;R:39642;i:1;R:38888;}s:30:"1226:pages-pages.actions.title";a:2:{i:0;R:39642;i:1;R:38888;}s:36:"1226:pages-pages.actions.create_page";a:2:{i:0;R:39642;i:1;R:38888;}s:34:"1226:pages-pages.actions.edit_page";a:2:{i:0;R:39642;i:1;R:38888;}s:35:"1226:pages-activerecord.models.page";a:2:{i:0;R:39642;i:1;R:38888;}s:36:"1226:pages-activerecord.models.pages";a:2:{i:0;R:39642;i:1;R:38888;}s:42:"1226:pages-activerecord.attributes.page.js";a:2:{i:0;R:39642;i:1;R:38888;}s:43:"1226:pages-activerecord.attributes.page.css";a:2:{i:0;R:39642;i:1;R:38888;}s:41:"1226:questions-questions.toolbar.requests";a:2:{i:0;s:17:"shapado-questions";i:1;R:38888;}s:51:"1226:questions-questions.toolbar.your_close_request";a:2:{i:0;R:39662;i:1;R:38888;}s:47:"1226:questions-questions.toolbar.answer_by_mail";a:2:{i:0;R:39662;i:1;R:38888;}s:45:"1226:questions-questions.toolbar.more_actions";a:2:{i:0;R:39662;i:1;R:38888;}s:54:"1226:questions-questions.answer_toolbar.flagged_by_you";a:2:{i:0;R:39662;i:1;R:38888;}s:44:"1226:questions-questions.disallow_spam.error";a:2:{i:0;R:39662;i:1;R:38888;}s:37:"1226:questions-questions.history.back";a:2:{i:0;R:39662;i:1;R:38888;}s:36:"1226:questions-questions.index.title";a:2:{i:0;R:39662;i:1;R:38888;}s:34:"1226:questions-questions.index.hot";a:2:{i:0;R:39662;i:1;R:38888;}s:37:"1226:questions-questions.index.active";a:2:{i:0;R:39662;i:1;R:38888;}s:36:"1226:questions-questions.index.votes";a:2:{i:0;R:39662;i:1;R:38888;}s:37:"1226:questions-questions.index.newest";a:2:{i:0;R:39662;i:1;R:38888;}s:37:"1226:questions-questions.index.oldest";a:2:{i:0;R:39662;i:1;R:38888;}s:43:"1226:questions-questions.index.ask_question";a:2:{i:0;R:39662;i:1;R:38888;}s:36:"1226:questions-questions.index.empty";a:2:{i:0;R:39662;i:1;R:38888;}s:45:"1226:questions-questions.index.help_to_answer";a:2:{i:0;R:39662;i:1;R:38888;}s:51:"1226:questions-questions.index.unanswered_questions";a:2:{i:0;R:39662;i:1;R:38888;}s:42:"1226:questions-questions.index.hot_tooltip";a:2:{i:0;R:39662;i:1;R:38888;}s:45:"1226:questions-questions.index.active_tooltip";a:2:{i:0;R:39662;i:1;R:38888;}s:48:"1226:questions-questions.index.followers_tooltip";a:2:{i:0;R:39662;i:1;R:38888;}s:45:"1226:questions-questions.index.newest_tooltip";a:2:{i:0;R:39662;i:1;R:38888;}s:44:"1226:questions-questions.index.has_followers";a:2:{i:0;R:39662;i:1;R:38888;}s:37:"1226:questions-questions.show.history";a:2:{i:0;R:39662;i:1;R:38888;}s:43:"1226:questions-questions.show.create_reward";a:2:{i:0;R:39662;i:1;R:38888;}s:55:"1226:questions-questions.show.create_reward_description";a:2:{i:0;R:39662;i:1;R:38888;}s:39:"1226:questions-questions.show.follow_up";a:2:{i:0;R:39662;i:1;R:38888;}s:51:"1226:questions-questions.show.follow_up_description";a:2:{i:0;R:39662;i:1;R:38888;}s:42:"1226:questions-questions.show.more_actions";a:2:{i:0;R:39662;i:1;R:38888;}s:37:"1226:questions-questions.show.answers";a:2:{i:0;R:39662;i:1;R:38888;}s:45:"1226:questions-questions.show.another_answers";a:2:{i:0;R:39662;i:1;R:38888;}s:38:"1226:questions-questions.show.solution";a:2:{i:0;R:39662;i:1;R:38888;}s:35:"1226:questions-questions.show.share";a:2:{i:0;R:39662;i:1;R:38888;}s:38:"1226:questions-questions.show.share_on";a:2:{i:0;R:39662;i:1;R:38888;}s:47:"1226:questions-questions.show.related_questions";a:2:{i:0;R:39662;i:1;R:38888;}s:35:"1226:questions-questions.show.flags";a:2:{i:0;R:39662;i:1;R:38888;}s:34:"1226:questions-questions.show.flag";a:2:{i:0;R:39662;i:1;R:38888;}s:40:"1226:questions-questions.show.flagged_as";a:2:{i:0;R:39662;i:1;R:38888;}s:36:"1226:questions-questions.show.viewed";a:2:{i:0;R:39662;i:1;R:38888;}s:48:"1226:questions-questions.show.to_answer_question";a:2:{i:0;R:39662;i:1;R:38888;}s:44:"1226:questions-questions.show.follow_tooltip";a:2:{i:0;R:39662;i:1;R:38888;}s:46:"1226:questions-questions.show.accepted_tooltip";a:2:{i:0;R:39662;i:1;R:38888;}s:46:"1226:questions-questions.show.unfollow_tooltip";a:2:{i:0;R:39662;i:1;R:38888;}s:38:"1226:questions-questions.show.asked_on";a:2:{i:0;R:39662;i:1;R:38888;}s:43:"1226:questions-questions.show.last_activity";a:2:{i:0;R:39662;i:1;R:38888;}s:35:"1226:questions-questions.show.retag";a:2:{i:0;R:39662;i:1;R:38888;}s:51:"1226:questions-questions.show.unauthenticated_retag";a:2:{i:0;R:39662;i:1;R:38888;}s:45:"1226:questions-questions.show.request_closing";a:2:{i:0;R:39662;i:1;R:38888;}s:53:"1226:questions-questions.show.request_closing_details";a:2:{i:0;R:39662;i:1;R:38888;}s:35:"1226:questions-questions.show.close";a:2:{i:0;R:39662;i:1;R:38888;}s:45:"1226:questions-questions.show.request_opening";a:2:{i:0;R:39662;i:1;R:38888;}s:53:"1226:questions-questions.show.request_opening_details";a:2:{i:0;R:39662;i:1;R:38888;}s:34:"1226:questions-questions.show.open";a:2:{i:0;R:39662;i:1;R:38888;}s:33:"1226:questions-questions.show.ban";a:2:{i:0;R:39662;i:1;R:38888;}s:35:"1226:questions-questions.show.unban";a:2:{i:0;R:39662;i:1;R:38888;}s:45:"1226:questions-questions.show.retract_request";a:2:{i:0;R:39662;i:1;R:38888;}s:42:"1226:questions-questions.show.close_reason";a:2:{i:0;R:39662;i:1;R:38888;}s:48:"1226:questions-questions.show.requested_close_as";a:2:{i:0;R:39662;i:1;R:38888;}s:49:"1226:questions-questions.show.requested_reopening";a:2:{i:0;R:39662;i:1;R:38888;}s:42:"1226:questions-questions.show.edit_request";a:2:{i:0;R:39662;i:1;R:38888;}s:42:"1226:questions-questions.show.follow_up_of";a:2:{i:0;R:39662;i:1;R:38888;}s:36:"1226:questions-questions.retag.title";a:2:{i:0;R:39662;i:1;R:38888;}s:43:"1226:questions-questions.answer.pick_answer";a:2:{i:0;R:39662;i:1;R:38888;}s:44:"1226:questions-questions.answer.unset_answer";a:2:{i:0;R:39662;i:1;R:38888;}s:36:"1226:questions-questions.answer.flag";a:2:{i:0;R:39662;i:1;R:38888;}s:43:"1226:questions-questions.answer.add_comment";a:2:{i:0;R:39662;i:1;R:38888;}s:40:"1226:questions-questions.answer.favorite";a:2:{i:0;R:39662;i:1;R:38888;}s:42:"1226:questions-questions.answer.unfavorite";a:2:{i:0;R:39662;i:1;R:38888;}s:48:"1226:questions-questions.answer.favorite_tooltip";a:2:{i:0;R:39662;i:1;R:38888;}s:50:"1226:questions-questions.answer.unfavorite_tooltip";a:2:{i:0;R:39662;i:1;R:38888;}s:50:"1226:questions-questions.question.accepted_tooltip";a:2:{i:0;R:39662;i:1;R:38888;}s:44:"1226:questions-questions.question.wiki_title";a:2:{i:0;R:39662;i:1;R:38888;}s:45:"1226:questions-questions.question.has_answers";a:2:{i:0;R:39662;i:1;R:38888;}s:45:"1226:questions-questions.question.answer_verb";a:2:{i:0;R:39662;i:1;R:38888;}s:38:"1226:questions-questions.form.body_tip";a:2:{i:0;R:39662;i:1;R:38888;}s:42:"1226:questions-questions.form.language_tip";a:2:{i:0;R:39662;i:1;R:38888;}s:38:"1226:questions-questions.form.tags_tip";a:2:{i:0;R:39662;i:1;R:38888;}s:43:"1226:questions-questions.form.adult_content";a:2:{i:0;R:39662;i:1;R:38888;}s:44:"1226:questions-questions.form.add_attachment";a:2:{i:0;R:39662;i:1;R:38888;}s:47:"1226:questions-questions.form.remove_attachment";a:2:{i:0;R:39662;i:1;R:38888;}s:52:"1226:questions-questions.form.related_questions_desc";a:2:{i:0;R:39662;i:1;R:38888;}s:35:"1226:questions-questions.flag.title";a:2:{i:0;R:39662;i:1;R:38888;}s:35:"1226:questions-questions.edit.title";a:2:{i:0;R:39662;i:1;R:38888;}s:41:"1226:questions-questions.unanswered.title";a:2:{i:0;R:39662;i:1;R:38888;}s:40:"1226:questions-questions.unanswered.tags";a:2:{i:0;R:39662;i:1;R:38888;}s:41:"1226:questions-questions.unanswered.empty";a:2:{i:0;R:39662;i:1;R:38888;}s:43:"1226:questions-questions.unanswered.my_tags";a:2:{i:0;R:39662;i:1;R:38888;}s:42:"1226:questions-questions.unanswered.expert";a:2:{i:0;R:39662;i:1;R:38888;}s:35:"1226:questions-questions.tags.title";a:2:{i:0;R:39662;i:1;R:38888;}s:37:"1226:questions-questions.tags.tooltip";a:2:{i:0;R:39662;i:1;R:38888;}s:36:"1226:questions-questions.tags.filter";a:2:{i:0;R:39662;i:1;R:38888;}s:34:"1226:questions-questions.new.title";a:2:{i:0;R:39662;i:1;R:38888;}s:40:"1226:questions-questions.new.description";a:2:{i:0;R:39662;i:1;R:38888;}s:39:"1226:questions-questions.new.how_to_ask";a:2:{i:0;R:39662;i:1;R:38888;}s:44:"1226:questions-questions.create.flash_notice";a:2:{i:0;R:39662;i:1;R:38888;}s:50:"1226:questions-questions.create.already_registered";a:2:{i:0;R:39662;i:1;R:38888;}s:44:"1226:questions-questions.update.flash_notice";a:2:{i:0;R:39662;i:1;R:38888;}s:43:"1226:questions-questions.solve.flash_notice";a:2:{i:0;R:39662;i:1;R:38888;}s:45:"1226:questions-questions.unsolve.flash_notice";a:2:{i:0;R:39662;i:1;R:38888;}s:38:"1226:questions-questions.watch.success";a:2:{i:0;R:39662;i:1;R:38888;}s:40:"1226:questions-questions.unwatch.success";a:2:{i:0;R:39662;i:1;R:38888;}s:37:"1226:questions-questions.revert.title";a:2:{i:0;R:39662;i:1;R:38888;}s:35:"1226:questions-questions.move.title";a:2:{i:0;R:39662;i:1;R:38888;}s:41:"1226:questions-questions.move.group_label";a:2:{i:0;R:39662;i:1;R:38888;}s:36:"1226:questions-questions.move.submit";a:2:{i:0;R:39662;i:1;R:38888;}s:40:"1226:questions-questions.move_to.success";a:2:{i:0;R:39662;i:1;R:38888;}s:50:"1226:questions-questions.move_to.group_dont_exists";a:2:{i:0;R:39662;i:1;R:38888;}s:36:"1226:questions-questions.shared.flag";a:2:{i:0;R:39662;i:1;R:38888;}s:41:"1226:questions-questions.retag_form.title";a:2:{i:0;R:39662;i:1;R:38888;}s:42:"1226:questions-questions.retag_form.submit";a:2:{i:0;R:39662;i:1;R:38888;}s:42:"1226:questions-questions.retag_form.cancel";a:2:{i:0;R:39662;i:1;R:38888;}s:41:"1226:questions-questions.retag_to.success";a:2:{i:0;R:39662;i:1;R:38888;}s:41:"1226:questions-questions.retag_to.failure";a:2:{i:0;R:39662;i:1;R:38888;}s:38:"1226:questions-questions.close.failure";a:2:{i:0;R:39662;i:1;R:38888;}s:49:"1226:questions-questions.model.messages.too_short";a:2:{i:0;R:39662;i:1;R:38888;}s:53:"1226:questions-questions.model.messages.too_many_tags";a:2:{i:0;R:39662;i:1;R:38888;}s:50:"1226:questions-questions.model.messages.empty_tags";a:2:{i:0;R:39662;i:1;R:38888;}s:54:"1226:questions-questions.model.messages.title_too_long";a:2:{i:0;R:39662;i:1;R:38888;}s:54:"1226:questions-questions.model.messages.tags_not_added";a:2:{i:0;R:39662;i:1;R:38888;}s:44:"1226:questions-activerecord.models.questions";a:2:{i:0;R:39662;i:1;R:38888;}s:43:"1226:questions-activerecord.models.question";a:2:{i:0;R:39662;i:1;R:38888;}s:53:"1226:questions-activerecord.attributes.question.title";a:2:{i:0;R:39662;i:1;R:38888;}s:52:"1226:questions-activerecord.attributes.question.body";a:2:{i:0;R:39662;i:1;R:38888;}s:52:"1226:questions-activerecord.attributes.question.tags";a:2:{i:0;R:39662;i:1;R:38888;}s:56:"1226:questions-activerecord.attributes.question.asked_by";a:2:{i:0;R:39662;i:1;R:38888;}s:55:"1226:questions-activerecord.attributes.question.answers";a:2:{i:0;R:39662;i:1;R:38888;}s:53:"1226:questions-activerecord.attributes.question.views";a:2:{i:0;R:39662;i:1;R:38888;}s:53:"1226:questions-activerecord.attributes.question.votes";a:2:{i:0;R:39662;i:1;R:38888;}s:56:"1226:questions-activerecord.attributes.question.language";a:2:{i:0;R:39662;i:1;R:38888;}s:58:"1226:questions-activerecord.attributes.question.created_at";a:2:{i:0;R:39662;i:1;R:38888;}s:58:"1226:questions-activerecord.attributes.question.updated_at";a:2:{i:0;R:39662;i:1;R:38888;}s:58:"1226:questions-activerecord.attributes.question.updated_by";a:2:{i:0;R:39662;i:1;R:38888;}s:54:"1226:questions-activerecord.attributes.question.closed";a:2:{i:0;R:39662;i:1;R:38888;}s:54:"1226:questions-activerecord.attributes.question.banned";a:2:{i:0;R:39662;i:1;R:38888;}s:40:"1226:rewards-rewards.start.active_notice";a:2:{i:0;s:15:"shapado-rewards";i:1;R:38888;}s:38:"1226:rewards-rewards.start.wait_notice";a:2:{i:0;R:39796;i:1;R:38888;}s:44:"1226:rewards-rewards.start.reputation_notice";a:2:{i:0;R:39796;i:1;R:38888;}s:32:"1226:rewards-rewards.close.error";a:2:{i:0;R:39796;i:1;R:38888;}s:42:"1226:searches-searches.index.found_results";a:2:{i:0;s:16:"shapado-searches";i:1;R:38888;}s:34:"1226:searches-searches.index.empty";a:2:{i:0;R:39801;i:1;R:38888;}s:33:"1226:searches-searches.index.tags";a:2:{i:0;R:39801;i:1;R:38888;}s:40:"1226:searches-searches.index.search_text";a:2:{i:0;R:39801;i:1;R:38888;}s:44:"1226:searches-searches.index.advanced_search";a:2:{i:0;R:39801;i:1;R:38888;}s:40:"1226:searches-searches.index.description";a:2:{i:0;R:39801;i:1;R:38888;}s:41:"1226:searches-searches.index.input_legend";a:2:{i:0;R:39801;i:1;R:38888;}s:40:"1226:searches-searches.index.input_title";a:2:{i:0;R:39801;i:1;R:38888;}s:33:"1226:searches-searches.form.clear";a:2:{i:0;R:39801;i:1;R:38888;}s:44:"1226:searches-searches.form.search_box_title";a:2:{i:0;R:39801;i:1;R:38888;}s:36:"1226:searches-searches.form.tags_tip";a:2:{i:0;R:39801;i:1;R:38888;}s:42:"1226:sessions-sessions.create.flash_notice";a:2:{i:0;s:16:"shapado-sessions";i:1;R:38888;}s:41:"1226:sessions-sessions.create.flash_error";a:2:{i:0;R:39813;i:1;R:38888;}s:43:"1226:sessions-sessions.destroy.flash_notice";a:2:{i:0;R:39813;i:1;R:38888;}s:38:"1226:sessions-sessions.new.with_openid";a:2:{i:0;R:39813;i:1;R:38888;}s:40:"1226:sessions-sessions.new.with_facebook";a:2:{i:0;R:39813;i:1;R:38888;}s:39:"1226:sessions-sessions.new.with_twitter";a:2:{i:0;R:39813;i:1;R:38888;}s:46:"1226:sessions-sessions.new.with_authentication";a:2:{i:0;R:39813;i:1;R:38888;}s:37:"1226:sessions-sessions.new.registered";a:2:{i:0;R:39813;i:1;R:38888;}s:41:"1226:sessions-sessions.new.not_registered";a:2:{i:0;R:39813;i:1;R:38888;}s:33:"1226:sessions-sessions.new.log_in";a:2:{i:0;R:39813;i:1;R:38888;}s:33:"1226:sessions-sessions.new.signup";a:2:{i:0;R:39813;i:1;R:38888;}s:34:"1226:sessions-sessions.new.sign_in";a:2:{i:0;R:39813;i:1;R:38888;}s:38:"1226:sessions-sessions.new.remember_me";a:2:{i:0;R:39813;i:1;R:38888;}s:25:"1226:shared-shared.filter";a:2:{i:0;s:14:"shapado-shared";i:1;R:38888;}s:28:"1226:shared-shared.view_mode";a:2:{i:0;R:39827;i:1;R:38888;}s:28:"1226:shared-shared.languages";a:2:{i:0;R:39827;i:1;R:38888;}s:42:"1226:shared-shared.language_filter_tooltip";a:2:{i:0;R:39827;i:1;R:38888;}s:23:"1226:shared-shared.name";a:2:{i:0;R:39827;i:1;R:38888;}s:30:"1226:shared-shared.description";a:2:{i:0;R:39827;i:1;R:38888;}s:26:"1226:shared-shared.by_anon";a:2:{i:0;R:39827;i:1;R:38888;}s:33:"1226:shared-shared.preferred_lang";a:2:{i:0;R:39827;i:1;R:38888;}s:27:"1226:shared-shared.language";a:2:{i:0;R:39827;i:1;R:38888;}s:27:"1226:shared-shared.any_lang";a:2:{i:0;R:39827;i:1;R:38888;}s:49:"1226:shared-shared.quick_question.random_question";a:2:{i:0;R:39827;i:1;R:38888;}s:46:"1226:shared-shared.login_drop_down.with_google";a:2:{i:0;R:39827;i:1;R:38888;}s:48:"1226:shared-shared.login_drop_down.with_facebook";a:2:{i:0;R:39827;i:1;R:38888;}s:47:"1226:shared-shared.login_drop_down.with_twitter";a:2:{i:0;R:39827;i:1;R:38888;}s:49:"1226:shared-shared.login_drop_down.with_linked_in";a:2:{i:0;R:39827;i:1;R:38888;}s:48:"1226:shared-shared.login_drop_down.with_identica";a:2:{i:0;R:39827;i:1;R:38888;}s:46:"1226:shared-shared.login_drop_down.with_openid";a:2:{i:0;R:39827;i:1;R:38888;}s:50:"1226:shared-shared.login_drop_down.with_email_pass";a:2:{i:0;R:39827;i:1;R:38888;}s:52:"1226:shared-shared.login_drop_down.sign_up_user_pass";a:2:{i:0;R:39827;i:1;R:38888;}s:55:"1226:shared-shared.social_connect.find_friends_facebook";a:2:{i:0;R:39827;i:1;R:38888;}s:54:"1226:shared-shared.social_connect.find_friends_twitter";a:2:{i:0;R:39827;i:1;R:38888;}s:56:"1226:shared-shared.social_connect.find_friends_linked_in";a:2:{i:0;R:39827;i:1;R:38888;}s:55:"1226:shared-shared.social_connect.find_friends_identica";a:2:{i:0;R:39827;i:1;R:38888;}s:35:"1226:shared-shared.topbar.logged_as";a:2:{i:0;R:39827;i:1;R:38888;}s:31:"1226:shared-shared.topbar.admin";a:2:{i:0;R:39827;i:1;R:38888;}s:35:"1226:shared-shared.topbar.user_page";a:2:{i:0;R:39827;i:1;R:38888;}s:37:"1226:shared-shared.current_tags.title";a:2:{i:0;R:39827;i:1;R:38888;}s:50:"1226:shared-shared.manage_navigation.title_options";a:2:{i:0;R:39827;i:1;R:38888;}s:50:"1226:shared-shared.manage_navigation.title_content";a:2:{i:0;R:39827;i:1;R:38888;}s:51:"1226:shared-shared.manage_navigation.title_features";a:2:{i:0;R:39827;i:1;R:38888;}s:38:"1226:shared-shared.empty.default.title";a:2:{i:0;R:39827;i:1;R:38888;}s:49:"1226:shared-shared.empty.default.description.text";a:2:{i:0;R:39827;i:1;R:38888;}s:58:"1226:shared-shared.empty.questions.description.action_link";a:2:{i:0;R:39827;i:1;R:38888;}s:51:"1226:shared-shared.empty.questions.description.text";a:2:{i:0;R:39827;i:1;R:38888;}s:61:"1226:shared-shared.empty.filtered_by_language_questions.title";a:2:{i:0;R:39827;i:1;R:38888;}s:72:"1226:shared-shared.empty.filtered_by_language_questions.description.text";a:2:{i:0;R:39827;i:1;R:38888;}s:79:"1226:shared-shared.empty.filtered_by_language_questions.description.action_link";a:2:{i:0;R:39827;i:1;R:38888;}s:49:"1226:shared-shared.empty.filtered_questions.title";a:2:{i:0;R:39827;i:1;R:38888;}s:60:"1226:shared-shared.empty.filtered_questions.description.text";a:2:{i:0;R:39827;i:1;R:38888;}s:67:"1226:shared-shared.empty.filtered_questions.description.action_link";a:2:{i:0;R:39827;i:1;R:38888;}s:37:"1226:shared-shared.empty.themes.title";a:2:{i:0;R:39827;i:1;R:38888;}s:48:"1226:shared-shared.empty.themes.description.text";a:2:{i:0;R:39827;i:1;R:38888;}s:55:"1226:shared-shared.empty.themes.description.action_link";a:2:{i:0;R:39827;i:1;R:38888;}s:41:"1226:shared-shared.empty.activities.title";a:2:{i:0;R:39827;i:1;R:38888;}s:52:"1226:shared-shared.empty.activities.description.text";a:2:{i:0;R:39827;i:1;R:38888;}s:38:"1226:shared-shared.empty.answers.title";a:2:{i:0;R:39827;i:1;R:38888;}s:49:"1226:shared-shared.empty.answers.description.text";a:2:{i:0;R:39827;i:1;R:38888;}s:42:"1226:shared-shared.layout.footer.cc_footer";a:2:{i:0;R:39827;i:1;R:38888;}s:43:"1226:shared-shared.layout.footer.powered_by";a:2:{i:0;R:39827;i:1;R:38888;}s:33:"1226:themes-themes.show.not_ready";a:2:{i:0;s:14:"shapado-themes";i:1;R:38888;}s:32:"1226:themes-themes.show.bg_color";a:2:{i:0;R:39877;i:1;R:38888;}s:32:"1226:themes-themes.show.fg_color";a:2:{i:0;R:39877;i:1;R:38888;}s:32:"1226:themes-themes.show.bg_image";a:2:{i:0;R:39877;i:1;R:38888;}s:31:"1226:themes-themes.show.view_bg";a:2:{i:0;R:39877;i:1;R:38888;}s:31:"1226:themes-themes.show.view_fg";a:2:{i:0;R:39877;i:1;R:38888;}s:33:"1226:themes-themes.show.button_bg";a:2:{i:0;R:39877;i:1;R:38888;}s:33:"1226:themes-themes.show.button_fg";a:2:{i:0;R:39877;i:1;R:38888;}s:31:"1226:themes-themes.show.link_bg";a:2:{i:0;R:39877;i:1;R:38888;}s:31:"1226:themes-themes.show.link_fg";a:2:{i:0;R:39877;i:1;R:38888;}s:35:"1226:themes-themes.show.use_link_bg";a:2:{i:0;R:39877;i:1;R:38888;}s:34:"1226:themes-themes.show.main_color";a:2:{i:0;R:39877;i:1;R:38888;}s:37:"1226:themes-themes.show.modules_color";a:2:{i:0;R:39877;i:1;R:38888;}s:34:"1226:themes-themes.show.text_color";a:2:{i:0;R:39877;i:1;R:38888;}s:29:"1226:themes-themes.show.apply";a:2:{i:0;R:39877;i:1;R:38888;}s:27:"1226:themes-themes.show.try";a:2:{i:0;R:39877;i:1;R:38888;}s:29:"1226:themes-themes.show.fluid";a:2:{i:0;R:39877;i:1;R:38888;}s:35:"1226:themes-themes.show.brand_color";a:2:{i:0;R:39877;i:1;R:38888;}s:30:"1226:themes-themes.form.update";a:2:{i:0;R:39877;i:1;R:38888;}s:37:"1226:themes-themes.form.colors_and_bg";a:2:{i:0;R:39877;i:1;R:38888;}s:36:"1226:themes-themes.form.fluid_layout";a:2:{i:0;R:39877;i:1;R:38888;}s:43:"1226:themes-themes.form.fluid_layout_legend";a:2:{i:0;R:39877;i:1;R:38888;}s:39:"1226:themes-themes.form.bg_color_legend";a:2:{i:0;R:39877;i:1;R:38888;}s:39:"1226:themes-themes.form.bg_image_legend";a:2:{i:0;R:39877;i:1;R:38888;}s:41:"1226:themes-themes.form.main_color_legend";a:2:{i:0;R:39877;i:1;R:38888;}s:44:"1226:themes-themes.form.modules_color_legend";a:2:{i:0;R:39877;i:1;R:38888;}s:41:"1226:themes-themes.form.text_color_legend";a:2:{i:0;R:39877;i:1;R:38888;}s:41:"1226:themes-themes.form.custom_css_legend";a:2:{i:0;R:39877;i:1;R:38888;}s:37:"1226:themes-themes.form.submit_update";a:2:{i:0;R:39877;i:1;R:38888;}s:36:"1226:themes-themes.index.description";a:2:{i:0;R:39877;i:1;R:38888;}s:34:"1226:themes-themes.index.new_theme";a:2:{i:0;R:39877;i:1;R:38888;}s:29:"1226:themes-themes.edit.title";a:2:{i:0;R:39877;i:1;R:38888;}s:32:"1226:themes-themes.ready.success";a:2:{i:0;R:39877;i:1;R:38888;}s:45:"1226:unfav-unfavorites.create.unauthenticated";a:2:{i:0;s:19:"shapado-unfavorites";i:1;R:38888;}s:37:"1226:unfav-unfavorites.create.success";a:2:{i:0;R:39911;i:1;R:38888;}s:40:"1226:unfav-activerecord.models.favorites";a:2:{i:0;R:39911;i:1;R:38888;}s:39:"1226:unfav-activerecord.models.favorite";a:2:{i:0;R:39911;i:1;R:38888;}s:34:"1226:users-users.show_json.edit_it";a:2:{i:0;s:13:"shapado-users";i:1;R:38888;}s:41:"1226:users-users.show_json.no_description";a:2:{i:0;R:39916;i:1;R:38888;}s:32:"1226:users-users.user_mini.admin";a:2:{i:0;R:39916;i:1;R:38888;}s:30:"1226:users-users.user_mini.mod";a:2:{i:0;R:39916;i:1;R:38888;}s:33:"1226:users-users.user_mini.editor";a:2:{i:0;R:39916;i:1;R:38888;}s:35:"1226:users-users.user_bar.signed_as";a:2:{i:0;R:39916;i:1;R:38888;}s:39:"1226:users-users.user_bar.not_logged_in";a:2:{i:0;R:39916;i:1;R:38888;}s:40:"1226:users-users.user_bar.create_account";a:2:{i:0;R:39916;i:1;R:38888;}s:33:"1226:users-users.top_user.profile";a:2:{i:0;R:39916;i:1;R:38888;}s:34:"1226:users-users.top_user.my_karma";a:2:{i:0;R:39916;i:1;R:38888;}s:33:"1226:users-users.top_user.connect";a:2:{i:0;R:39916;i:1;R:38888;}s:28:"1226:users-users.index.title";a:2:{i:0;R:39916;i:1;R:38888;}s:28:"1226:users-users.index.empty";a:2:{i:0;R:39916;i:1;R:38888;}s:29:"1226:users-users.index.filter";a:2:{i:0;R:39916;i:1;R:38888;}s:33:"1226:users-users.index.reputation";a:2:{i:0;R:39916;i:1;R:38888;}s:29:"1226:users-users.index.newest";a:2:{i:0;R:39916;i:1;R:38888;}s:29:"1226:users-users.index.oldest";a:2:{i:0;R:39916;i:1;R:38888;}s:27:"1226:users-users.index.name";a:2:{i:0;R:39916;i:1;R:38888;}s:27:"1226:users-users.index.near";a:2:{i:0;R:39916;i:1;R:38888;}s:35:"1226:users-users.index.near_tooltip";a:2:{i:0;R:39916;i:1;R:38888;}s:41:"1226:users-users.index.reputation_tooltip";a:2:{i:0;R:39916;i:1;R:38888;}s:37:"1226:users-users.index.newest_tooltip";a:2:{i:0;R:39916;i:1;R:38888;}s:37:"1226:users-users.index.oldest_tooltip";a:2:{i:0;R:39916;i:1;R:38888;}s:35:"1226:users-users.index.name_tooltip";a:2:{i:0;R:39916;i:1;R:38888;}s:26:"1226:users-users.new.title";a:2:{i:0;R:39916;i:1;R:38888;}s:27:"1226:users-users.new.submit";a:2:{i:0;R:39916;i:1;R:38888;}s:31:"1226:users-users.new.join_group";a:2:{i:0;R:39916;i:1;R:38888;}s:32:"1226:users-users.new.description";a:2:{i:0;R:39916;i:1;R:38888;}s:27:"1226:users-users.edit.title";a:2:{i:0;R:39916;i:1;R:38888;}s:28:"1226:users-users.edit.submit";a:2:{i:0;R:39916;i:1;R:38888;}s:36:"1226:users-users.edit.enable_twitter";a:2:{i:0;R:39916;i:1;R:38888;}s:38:"1226:users-users.change_password.title";a:2:{i:0;R:39916;i:1;R:38888;}s:39:"1226:users-users.change_password.submit";a:2:{i:0;R:39916;i:1;R:38888;}s:27:"1226:users-users.show.title";a:2:{i:0;R:39916;i:1;R:38888;}s:28:"1226:users-users.show.follow";a:2:{i:0;R:39916;i:1;R:38888;}s:30:"1226:users-users.show.unfollow";a:2:{i:0;R:39916;i:1;R:38888;}s:27:"1226:users-users.show.views";a:2:{i:0;R:39916;i:1;R:38888;}s:31:"1226:users-users.show.followers";a:2:{i:0;R:39916;i:1;R:38888;}s:31:"1226:users-users.show.following";a:2:{i:0;R:39916;i:1;R:38888;}s:34:"1226:users-users.show.edit_profile";a:2:{i:0;R:39916;i:1;R:38888;}s:36:"1226:users-users.follow.flash_notice";a:2:{i:0;R:39916;i:1;R:38888;}s:35:"1226:users-users.follow.flash_error";a:2:{i:0;R:39916;i:1;R:38888;}s:38:"1226:users-users.unfollow.flash_notice";a:2:{i:0;R:39916;i:1;R:38888;}s:59:"1226:users-users.update_followed_tags.followed.flash_notice";a:2:{i:0;R:39916;i:1;R:38888;}s:61:"1226:users-users.update_followed_tags.unfollowed.flash_notice";a:2:{i:0;R:39916;i:1;R:38888;}s:42:"1226:users-users.check_custom_domain.title";a:2:{i:0;R:39916;i:1;R:38888;}s:56:"1226:users-users.check_custom_domain.reset_domain_button";a:2:{i:0;R:39916;i:1;R:38888;}s:56:"1226:users-users.check_custom_domain.working_domain_link";a:2:{i:0;R:39916;i:1;R:38888;}s:40:"1226:users-users.form.check_domain_title";a:2:{i:0;R:39916;i:1;R:38888;}s:34:"1226:users-users.form.check_domain";a:2:{i:0;R:39916;i:1;R:38888;}s:42:"1226:users-users.form.desktop_notification";a:2:{i:0;R:39916;i:1;R:38888;}s:33:"1226:users-users.form.information";a:2:{i:0;R:39916;i:1;R:38888;}s:35:"1226:users-users.form.notifications";a:2:{i:0;R:39916;i:1;R:38888;}s:45:"1226:users-users.form.new_answer_notification";a:2:{i:0;R:39916;i:1;R:38888;}s:46:"1226:users-users.form.give_advice_notification";a:2:{i:0;R:39916;i:1;R:38888;}s:45:"1226:users-users.form.activities_notification";a:2:{i:0;R:39916;i:1;R:38888;}s:42:"1226:users-users.form.reports_notification";a:2:{i:0;R:39916;i:1;R:38888;}s:32:"1226:users-users.form.avatar_tip";a:2:{i:0;R:39916;i:1;R:38888;}s:36:"1226:users-users.form.show_more_lang";a:2:{i:0;R:39916;i:1;R:38888;}s:30:"1226:users-users.form.language";a:2:{i:0;R:39916;i:1;R:38888;}s:47:"1226:users-users.form.send_questions_to_twitter";a:2:{i:0;R:39916;i:1;R:38888;}s:44:"1226:users-users.form.send_badges_to_twitter";a:2:{i:0;R:39916;i:1;R:38888;}s:47:"1226:users-users.form.send_favorites_to_twitter";a:2:{i:0;R:39916;i:1;R:38888;}s:45:"1226:users-users.form.send_answers_to_twitter";a:2:{i:0;R:39916;i:1;R:38888;}s:46:"1226:users-users.form.send_comments_to_twitter";a:2:{i:0;R:39916;i:1;R:38888;}s:40:"1226:users-users.form.social_interaction";a:2:{i:0;R:39916;i:1;R:38888;}s:36:"1226:users-users.create.flash_notice";a:2:{i:0;R:39916;i:1;R:38888;}s:35:"1226:users-users.create.flash_error";a:2:{i:0;R:39916;i:1;R:38888;}s:50:"1226:users-users.messages.errors.reputation_needed";a:2:{i:0;R:39916;i:1;R:38888;}s:32:"1226:users-users.actions.vote_up";a:2:{i:0;R:39916;i:1;R:38888;}s:34:"1226:users-users.actions.vote_down";a:2:{i:0;R:39916;i:1;R:38888;}s:29:"1226:users-users.actions.flag";a:2:{i:0;R:39916;i:1;R:38888;}s:42:"1226:users-users.actions.edit_others_posts";a:2:{i:0;R:39916;i:1;R:38888;}s:39:"1226:users-users.actions.edit_wiki_post";a:2:{i:0;R:39916;i:1;R:38888;}s:47:"1226:users-users.actions.retag_others_questions";a:2:{i:0;R:39916;i:1;R:38888;}s:51:"1226:users-users.actions.vote_to_close_own_question";a:2:{i:0;R:39916;i:1;R:38888;}s:51:"1226:users-users.actions.vote_to_close_any_question";a:2:{i:0;R:39916;i:1;R:38888;}s:43:"1226:users-users.anonymous_form.never_shown";a:2:{i:0;R:39916;i:1;R:38888;}s:36:"1226:users-activerecord.models.users";a:2:{i:0;R:39916;i:1;R:38888;}s:35:"1226:users-activerecord.models.user";a:2:{i:0;R:39916;i:1;R:38888;}s:45:"1226:users-activerecord.attributes.user.login";a:2:{i:0;R:39916;i:1;R:38888;}s:45:"1226:users-activerecord.attributes.user.email";a:2:{i:0;R:39916;i:1;R:38888;}s:44:"1226:users-activerecord.attributes.user.name";a:2:{i:0;R:39916;i:1;R:38888;}s:56:"1226:users-activerecord.attributes.user.current_password";a:2:{i:0;R:39916;i:1;R:38888;}s:48:"1226:users-activerecord.attributes.user.password";a:2:{i:0;R:39916;i:1;R:38888;}s:61:"1226:users-activerecord.attributes.user.password_confirmation";a:2:{i:0;R:39916;i:1;R:38888;}s:50:"1226:users-activerecord.attributes.user.created_at";a:2:{i:0;R:39916;i:1;R:38888;}s:50:"1226:users-activerecord.attributes.user.updated_at";a:2:{i:0;R:39916;i:1;R:38888;}s:55:"1226:users-activerecord.attributes.user.activation_code";a:2:{i:0;R:39916;i:1;R:38888;}s:52:"1226:users-activerecord.attributes.user.activated_at";a:2:{i:0;R:39916;i:1;R:38888;}s:48:"1226:users-activerecord.attributes.user.fullname";a:2:{i:0;R:39916;i:1;R:38888;}s:48:"1226:users-activerecord.attributes.user.language";a:2:{i:0;R:39916;i:1;R:38888;}s:48:"1226:users-activerecord.attributes.user.asked_by";a:2:{i:0;R:39916;i:1;R:38888;}s:48:"1226:users-activerecord.attributes.user.timezone";a:2:{i:0;R:39916;i:1;R:38888;}s:54:"1226:users-activerecord.attributes.user.preferred_tags";a:2:{i:0;R:39916;i:1;R:38888;}s:59:"1226:users-activerecord.attributes.user.preferred_languages";a:2:{i:0;R:39916;i:1;R:38888;}s:54:"1226:users-activerecord.attributes.user.last_logged_at";a:2:{i:0;R:39916;i:1;R:38888;}s:50:"1226:users-activerecord.attributes.user.reputation";a:2:{i:0;R:39916;i:1;R:38888;}s:46:"1226:users-activerecord.attributes.user.avatar";a:2:{i:0;R:39916;i:1;R:38888;}s:52:"1226:users-activerecord.attributes.user.hide_country";a:2:{i:0;R:39916;i:1;R:38888;}s:55:"1226:users-activerecord.attributes.user.language_filter";a:2:{i:0;R:39916;i:1;R:38888;}s:47:"1226:users-activerecord.attributes.user.website";a:2:{i:0;R:39916;i:1;R:38888;}s:48:"1226:users-activerecord.attributes.user.birthday";a:2:{i:0;R:39916;i:1;R:38888;}s:43:"1226:users-activerecord.attributes.user.age";a:2:{i:0;R:39916;i:1;R:38888;}s:45:"1226:votes-votes.comments.title.one_vote_user";a:2:{i:0;s:13:"shapado-votes";i:1;R:38888;}s:50:"1226:votes-votes.comments.title.one_vote_two_users";a:2:{i:0;R:40021;i:1;R:38888;}s:47:"1226:votes-votes.comments.title.more_votes_user";a:2:{i:0;R:40021;i:1;R:38888;}s:47:"1226:votes-votes.comments.title.no_user_no_vote";a:2:{i:0;R:40021;i:1;R:38888;}s:48:"1226:votes-votes.comments.title.no_user_one_vote";a:2:{i:0;R:40021;i:1;R:38888;}s:50:"1226:votes-votes.comments.title.no_user_more_votes";a:2:{i:0;R:40021;i:1;R:38888;}s:36:"1226:votes-votes.create.flash_notice";a:2:{i:0;R:40021;i:1;R:38888;}s:35:"1226:votes-votes.create.flash_error";a:2:{i:0;R:40021;i:1;R:38888;}s:39:"1226:votes-votes.create.unauthenticated";a:2:{i:0;R:40021;i:1;R:38888;}s:31:"1226:votes-votes.create.average";a:2:{i:0;R:40021;i:1;R:38888;}s:37:"1226:votes-votes.destroy.flash_notice";a:2:{i:0;R:40021;i:1;R:38888;}s:35:"1226:votes-votes.control.to_vote_up";a:2:{i:0;R:40021;i:1;R:38888;}s:37:"1226:votes-votes.control.to_vote_down";a:2:{i:0;R:40021;i:1;R:38888;}s:38:"1226:votes-votes.control.have_voted_up";a:2:{i:0;R:40021;i:1;R:38888;}s:40:"1226:votes-votes.control.have_voted_down";a:2:{i:0;R:40021;i:1;R:38888;}s:47:"1226:votes-votes.model.messages.closed_question";a:2:{i:0;R:40021;i:1;R:38888;}s:49:"1226:votes-votes.model.messages.vote_down_comment";a:2:{i:0;R:40021;i:1;R:38888;}s:36:"1226:votes-activerecord.models.votes";a:2:{i:0;R:40021;i:1;R:38888;}s:35:"1226:votes-activerecord.models.vote";a:2:{i:0;R:40021;i:1;R:38888;}s:35:"1226:welcome-welcome.feedback.title";a:2:{i:0;s:15:"shapado-welcome";i:1;R:38888;}s:44:"1226:welcome-welcome.feedback.feedback_title";a:2:{i:0;R:40041;i:1;R:38888;}s:50:"1226:welcome-welcome.feedback.feedback_description";a:2:{i:0;R:40041;i:1;R:38888;}s:47:"1226:welcome-welcome.feedback.email_description";a:2:{i:0;R:40041;i:1;R:38888;}s:43:"1226:welcome-welcome.feedback.captcha_error";a:2:{i:0;R:40041;i:1;R:38888;}s:44:"1226:welcome-welcome.feedback.captcha_notice";a:2:{i:0;R:40041;i:1;R:38888;}s:30:"1226:welcome-welcome.index.hot";a:2:{i:0;R:40041;i:1;R:38888;}s:33:"1226:welcome-welcome.index.active";a:2:{i:0;R:40041;i:1;R:38888;}s:43:"1226:welcome-welcome.index.recent_questions";a:2:{i:0;R:40041;i:1;R:38888;}s:41:"1226:welcome-welcome.index.quick_question";a:2:{i:0;R:40041;i:1;R:38888;}s:42:"1226:welcome-welcome.index.create_own_site";a:2:{i:0;R:40041;i:1;R:38888;}s:48:"1226:welcome-welcome.index.browse_all_or_by_tags";a:2:{i:0;R:40041;i:1;R:38888;}s:49:"1226:welcome-welcome.index.full_list_of_questions";a:2:{i:0;R:40041;i:1;R:38888;}s:41:"1226:welcome-welcome.index.browse_by_tags";a:2:{i:0;R:40041;i:1;R:38888;}s:40:"1226:welcome-welcome.confirm_age.warning";a:2:{i:0;R:40041;i:1;R:38888;}s:39:"1226:welcome-welcome.confirm_age.notice";a:2:{i:0;R:40041;i:1;R:38888;}s:41:"1226:welcome-welcome.confirm_age.under_18";a:2:{i:0;R:40041;i:1;R:38888;}s:40:"1226:welcome-welcome.confirm_age.over_18";a:2:{i:0;R:40041;i:1;R:38888;}s:31:"1226:widgets-widgets.edit.title";a:2:{i:0;s:15:"shapado-widgets";i:1;R:38888;}s:43:"1226:widgets-widgets.widget.change_position";a:2:{i:0;R:40060;i:1;R:38888;}s:34:"1226:widgets-widgets.create.notice";a:2:{i:0;R:40060;i:1;R:38888;}s:34:"1226:widgets-widgets.update.notice";a:2:{i:0;R:40060;i:1;R:38888;}s:32:"1226:widgets-widgets.index.title";a:2:{i:0;R:40060;i:1;R:38888;}s:38:"1226:widgets-widgets.index.description";a:2:{i:0;R:40060;i:1;R:38888;}s:42:"1226:widgets-widgets.index.welcome_widgets";a:2:{i:0;R:40060;i:1;R:38888;}s:43:"1226:widgets-widgets.index.mainlist_widgets";a:2:{i:0;R:40060;i:1;R:38888;}s:43:"1226:widgets-widgets.index.question_widgets";a:2:{i:0;R:40060;i:1;R:38888;}s:43:"1226:widgets-widgets.index.external_widgets";a:2:{i:0;R:40060;i:1;R:38888;}s:49:"1226:widgets-widgets.index.mainlist_widgets_title";a:2:{i:0;R:40060;i:1;R:38888;}s:49:"1226:widgets-widgets.index.question_widgets_title";a:2:{i:0;R:40060;i:1;R:38888;}s:49:"1226:widgets-widgets.index.external_widgets_title";a:2:{i:0;R:40060;i:1;R:38888;}s:33:"1226:widgets-widgets.index.header";a:2:{i:0;R:40060;i:1;R:38888;}s:31:"1226:widgets-widgets.index.zone";a:2:{i:0;R:40060;i:1;R:38888;}s:31:"1226:widgets-widgets.index.type";a:2:{i:0;R:40060;i:1;R:38888;}s:31:"1226:widgets-widgets.index.name";a:2:{i:0;R:40060;i:1;R:38888;}s:34:"1226:widgets-widgets.index.add_new";a:2:{i:0;R:40060;i:1;R:38888;}s:33:"1226:widgets-widgets.index.navbar";a:2:{i:0;R:40060;i:1;R:38888;}s:34:"1226:widgets-widgets.index.sidebar";a:2:{i:0;R:40060;i:1;R:38888;}s:33:"1226:widgets-widgets.index.footer";a:2:{i:0;R:40060;i:1;R:38888;}s:33:"1226:widgets-widgets.badges.title";a:2:{i:0;R:40060;i:1;R:38888;}s:39:"1226:widgets-widgets.badges.description";a:2:{i:0;R:40060;i:1;R:38888;}s:35:"1226:widgets-widgets.badges.see_all";a:2:{i:0;R:40060;i:1;R:38888;}s:33:"1226:widgets-widgets.groups.title";a:2:{i:0;R:40060;i:1;R:38888;}s:39:"1226:widgets-widgets.groups.description";a:2:{i:0;R:40060;i:1;R:38888;}s:37:"1226:widgets-widgets.top_groups.title";a:2:{i:0;R:40060;i:1;R:38888;}s:43:"1226:widgets-widgets.top_groups.description";a:2:{i:0;R:40060;i:1;R:38888;}s:43:"1226:widgets-widgets.top_groups.has_members";a:2:{i:0;R:40060;i:1;R:38888;}s:36:"1226:widgets-widgets.top_users.title";a:2:{i:0;R:40060;i:1;R:38888;}s:42:"1226:widgets-widgets.top_users.description";a:2:{i:0;R:40060;i:1;R:38888;}s:32:"1226:widgets-widgets.users.title";a:2:{i:0;R:40060;i:1;R:38888;}s:38:"1226:widgets-widgets.users.description";a:2:{i:0;R:40060;i:1;R:38888;}s:36:"1226:widgets-widgets.tag_cloud.title";a:2:{i:0;R:40060;i:1;R:38888;}s:42:"1226:widgets-widgets.tag_cloud.description";a:2:{i:0;R:40060;i:1;R:38888;}s:32:"1226:widgets-widgets.pages.title";a:2:{i:0;R:40060;i:1;R:38888;}s:38:"1226:widgets-widgets.pages.description";a:2:{i:0;R:40060;i:1;R:38888;}s:30:"1226:widgets-widgets.pages.new";a:2:{i:0;R:40060;i:1;R:38888;}s:34:"1226:widgets-widgets.adsense.title";a:2:{i:0;R:40060;i:1;R:38888;}s:40:"1226:widgets-widgets.adsense.description";a:2:{i:0;R:40060;i:1;R:38888;}s:44:"1226:widgets-widgets.custom_html.description";a:2:{i:0;R:40060;i:1;R:38888;}s:35:"1226:widgets-widgets.settings.limit";a:2:{i:0;R:40060;i:1;R:38888;}s:41:"1226:widgets-widgets.settings.custom_html";a:2:{i:0;R:40060;i:1;R:38888;}s:40:"1226:widgets-widgets.settings.on_welcome";a:2:{i:0;R:40060;i:1;R:38888;}s:42:"1226:widgets-widgets.settings.on_questions";a:2:{i:0;R:40060;i:1;R:38888;}s:46:"1226:widgets-widgets.settings.on_show_question";a:2:{i:0;R:40060;i:1;R:38888;}s:53:"1226:widgets-widgets.settings.exclude_css_on_external";a:2:{i:0;R:40060;i:1;R:38888;}s:49:"1226:widgets-widgets.settings.custom_external_css";a:2:{i:0;R:40060;i:1;R:38888;}s:34:"1226:widgets-widgets.settings.code";a:2:{i:0;R:40060;i:1;R:38888;}s:37:"1226:widgets-widgets.settings.preview";a:2:{i:0;R:40060;i:1;R:38888;}s:46:"1226:widgets-widgets.settings.google_ad_client";a:2:{i:0;R:40060;i:1;R:38888;}s:44:"1226:widgets-widgets.settings.google_ad_slot";a:2:{i:0;R:40060;i:1;R:38888;}s:45:"1226:widgets-widgets.settings.google_ad_width";a:2:{i:0;R:40060;i:1;R:38888;}s:46:"1226:widgets-widgets.settings.google_ad_height";a:2:{i:0;R:40060;i:1;R:38888;}s:42:"1226:widgets-widgets.sharing_buttons.title";a:2:{i:0;R:40060;i:1;R:38888;}s:48:"1226:widgets-widgets.sharing_buttons.description";a:2:{i:0;R:40060;i:1;R:38888;}s:41:"1226:widgets-widgets.mod_info.description";a:2:{i:0;R:40060;i:1;R:38888;}s:40:"1226:widgets-widgets.question_tags.title";a:2:{i:0;R:40060;i:1;R:38888;}s:46:"1226:widgets-widgets.question_tags.description";a:2:{i:0;R:40060;i:1;R:38888;}s:42:"1226:widgets-widgets.question_badges.title";a:2:{i:0;R:40060;i:1;R:38888;}s:48:"1226:widgets-widgets.question_badges.description";a:2:{i:0;R:40060;i:1;R:38888;}s:47:"1226:widgets-widgets.question_stats.description";a:2:{i:0;R:40060;i:1;R:38888;}s:44:"1226:widgets-widgets.related_questions.title";a:2:{i:0;R:40060;i:1;R:38888;}s:50:"1226:widgets-widgets.related_questions.description";a:2:{i:0;R:40060;i:1;R:38888;}s:45:"1226:widgets-widgets.current_tags.description";a:2:{i:0;R:40060;i:1;R:38888;}s:35:"1226:widgets-widgets.tag_list.title";a:2:{i:0;R:40060;i:1;R:38888;}s:41:"1226:widgets-widgets.tag_list.description";a:2:{i:0;R:40060;i:1;R:38888;}s:45:"1226:widgets-widgets.ask_question.description";a:2:{i:0;R:40060;i:1;R:38888;}s:39:"1226:widgets-widgets.ask_question.title";a:2:{i:0;R:40060;i:1;R:38888;}s:40:"1226:widgets-widgets.ask_question.footer";a:2:{i:0;R:40060;i:1;R:38888;}s:37:"1226:widgets-widgets.ask_question.ask";a:2:{i:0;R:40060;i:1;R:38888;}s:47:"1226:widgets-widgets.ask_question.view_question";a:2:{i:0;R:40060;i:1;R:38888;}s:38:"1226:widgets-widgets.suggestions.title";a:2:{i:0;R:40060;i:1;R:38888;}s:44:"1226:widgets-widgets.suggestions.description";a:2:{i:0;R:40060;i:1;R:38888;}s:44:"1226:widgets-widgets.suggestions.followed_by";a:2:{i:0;R:40060;i:1;R:38888;}s:44:"1226:widgets-widgets.suggestions.follow_user";a:2:{i:0;R:40060;i:1;R:38888;}s:43:"1226:widgets-widgets.suggestions.follow_tag";a:2:{i:0;R:40060;i:1;R:38888;}s:45:"1226:widgets-widgets.suggestions.unfollow_tag";a:2:{i:0;R:40060;i:1;R:38888;}s:46:"1226:widgets-widgets.suggestions.unfollow_user";a:2:{i:0;R:40060;i:1;R:38888;}s:39:"1226:widgets-widgets.contributors.title";a:2:{i:0;R:40060;i:1;R:38888;}s:45:"1226:widgets-widgets.contributors.description";a:2:{i:0;R:40060;i:1;R:38888;}s:41:"1226:widgets-widgets.group_networks.title";a:2:{i:0;R:40060;i:1;R:38888;}s:47:"1226:widgets-widgets.group_networks.description";a:2:{i:0;R:40060;i:1;R:38888;}s:32:"1226:widgets-widgets.share.title";a:2:{i:0;R:40060;i:1;R:38888;}s:38:"1226:widgets-widgets.share.description";a:2:{i:0;R:40060;i:1;R:38888;}s:32:"1226:widgets-widgets.about.title";a:2:{i:0;R:40060;i:1;R:38888;}s:38:"1226:widgets-widgets.about.description";a:2:{i:0;R:40060;i:1;R:38888;}s:28:"1226:wiki-wiki.history.title";a:2:{i:0;s:12:"shapado-wiki";i:1;R:38888;}s:40:"1226:wiki-wiki.history.previous_versions";a:2:{i:0;R:40148;i:1;R:38888;}s:38:"1226:wiki-wiki.history.current_version";a:2:{i:0;R:40148;i:1;R:38888;}s:30:"1226:wiki-wiki.history.version";a:2:{i:0;R:40148;i:1;R:38888;}s:38:"1226:wiki-wiki.history.version_summary";a:2:{i:0;R:40148;i:1;R:38888;}s:25:"1226:wiki-wiki.diff.title";a:2:{i:0;R:40148;i:1;R:38888;}s:29:"1226:wiki-wiki.actions.revert";a:2:{i:0;R:40148;i:1;R:38888;}s:32:"1226:wiki-wiki.actions.show_diff";a:2:{i:0;R:40148;i:1;R:38888;}s:34:"1226:wiki-wiki.actions.all_history";a:2:{i:0;R:40148;i:1;R:38888;}s:39:"1226:wiki-wiki.actions.back_to_question";a:2:{i:0;R:40148;i:1;R:38888;}s:39:"1226:wiki-wiki.model.attributes.message";a:2:{i:0;R:40148;i:1;R:38888;}s:18:"1240:catdown-title";a:2:{i:0;s:13:"tsint-catdown";i:1;s:11:"tsint-0-all";}s:21:"1240:catdown-subtitle";a:2:{i:0;R:40160;i:1;R:40161;}s:20:"1240:catdown-project";a:2:{i:0;R:40160;i:1;R:40161;}s:21:"1240:catdown-category";a:2:{i:0;R:40160;i:1;R:40161;}s:25:"1240:catdown-thumbnailing";a:2:{i:0;R:40160;i:1;R:40161;}s:22:"1240:catdown-max-width";a:2:{i:0;R:40160;i:1;R:40161;}s:23:"1240:catdown-max-height";a:2:{i:0;R:40160;i:1;R:40161;}s:26:"1240:catdown-invalid-width";a:2:{i:0;R:40160;i:1;R:40161;}s:27:"1240:catdown-invalid-height";a:2:{i:0;R:40160;i:1;R:40161;}s:28:"1240:catdown-no-such-project";a:2:{i:0;R:40160;i:1;R:40161;}s:22:"1240:catdown-no-images";a:2:{i:0;R:40160;i:1;R:40161;}s:28:"1240:catdown-category-is-url";a:2:{i:0;R:40160;i:1;R:40161;}s:40:"1240:catdown-category-contains-namespace";a:2:{i:0;R:40160;i:1;R:40161;}s:23:"1240:catdown-zip-failed";a:2:{i:0;R:40160;i:1;R:40161;}s:31:"1240:catdown-image-area-too-big";a:2:{i:0;R:40160;i:1;R:40161;}s:26:"1240:catdown-download-info";a:2:{i:0;R:40160;i:1;R:40161;}s:21:"1240:catdown-download";a:2:{i:0;R:40160;i:1;R:40161;}s:28:"1240:catdown-readme-contents";a:2:{i:0;R:40160;i:1;R:40161;}s:29:"1240:catdown-non-bundled-wget";a:2:{i:0;R:40160;i:1;R:40161;}s:22:"1240:catdown-wget-info";a:2:{i:0;R:40160;i:1;R:40161;}s:25:"1240:catdown-scaling-none";a:2:{i:0;R:40160;i:1;R:40161;}s:26:"1240:catdown-scaling-width";a:2:{i:0;R:40160;i:1;R:40161;}s:27:"1240:catdown-scaling-height";a:2:{i:0;R:40160;i:1;R:40161;}s:25:"1240:catdown-scaling-both";a:2:{i:0;R:40160;i:1;R:40161;}s:28:"1240:catdown-script-filename";a:2:{i:0;R:40160;i:1;R:40161;}s:28:"1240:catdown-readme-filename";a:2:{i:0;R:40160;i:1;R:40161;}s:25:"1240:commonshelper2-title";a:2:{i:0;s:20:"tsint-commonshelper2";i:1;R:40161;}s:29:"1240:commonshelper2-attention";a:2:{i:0;R:40188;i:1;R:40161;}s:34:"1240:commonshelper2-commonshelper2";a:2:{i:0;R:40188;i:1;R:40161;}s:31:"1240:commonshelper2-description";a:2:{i:0;R:40188;i:1;R:40161;}s:31:"1240:commonshelper2-change_meta";a:2:{i:0;R:40188;i:1;R:40161;}s:29:"1240:commonshelper2-jira_link";a:2:{i:0;R:40188;i:1;R:40161;}s:28:"1240:commonshelper2-language";a:2:{i:0;R:40188;i:1;R:40161;}s:27:"1240:commonshelper2-project";a:2:{i:0;R:40188;i:1;R:40161;}s:31:"1240:commonshelper2-source_file";a:2:{i:0;R:40188;i:1;R:40161;}s:31:"1240:commonshelper2-target_file";a:2:{i:0;R:40188;i:1;R:40161;}s:36:"1240:commonshelper2-commons_username";a:2:{i:0;R:40188;i:1;R:40161;}s:38:"1240:commonshelper2-commons_to_project";a:2:{i:0;R:40188;i:1;R:40161;}s:38:"1240:commonshelper2-move_file_from_com";a:2:{i:0;R:40188;i:1;R:40161;}s:30:"1240:commonshelper2-categories";a:2:{i:0;R:40188;i:1;R:40161;}s:31:"1240:commonshelper2-remove_cats";a:2:{i:0;R:40188;i:1;R:40161;}s:30:"1240:commonshelper2-checkusage";a:2:{i:0;R:40188;i:1;R:40161;}s:34:"1240:commonshelper2-use_checkusage";a:2:{i:0;R:40188;i:1;R:40161;}s:24:"1240:commonshelper2-tusc";a:2:{i:0;R:40188;i:1;R:40161;}s:28:"1240:commonshelper2-use_tusc";a:2:{i:0;R:40188;i:1;R:40161;}s:29:"1240:commonshelper2-tusc_user";a:2:{i:0;R:40188;i:1;R:40161;}s:29:"1240:commonshelper2-tusc_pass";a:2:{i:0;R:40188;i:1;R:40161;}s:25:"1240:commonshelper2-do_it";a:2:{i:0;R:40188;i:1;R:40161;}s:38:"1240:commonshelper2-error_transfer_usr";a:2:{i:0;R:40188;i:1;R:40161;}s:36:"1240:commonshelper2-error_not_exists";a:2:{i:0;R:40188;i:1;R:40161;}s:36:"1240:commonshelper2-error_on_commons";a:2:{i:0;R:40188;i:1;R:40161;}s:37:"1240:commonshelper2-error_file_exists";a:2:{i:0;R:40188;i:1;R:40161;}s:37:"1240:commonshelper2-error_diff_exists";a:2:{i:0;R:40188;i:1;R:40161;}s:33:"1240:commonshelper2-error_no_meta";a:2:{i:0;R:40188;i:1;R:40161;}s:38:"1240:commonshelper2-error_meta_no_good";a:2:{i:0;R:40188;i:1;R:40161;}s:34:"1240:commonshelper2-error_meta_bad";a:2:{i:0;R:40188;i:1;R:40161;}s:37:"1240:commonshelper2-original_wikitext";a:2:{i:0;R:40188;i:1;R:40161;}s:32:"1240:commonshelper2-new_wikitext";a:2:{i:0;R:40188;i:1;R:40161;}s:32:"1240:commonshelper2-new_filename";a:2:{i:0;R:40188;i:1;R:40161;}s:38:"1240:commonshelper2-output_information";a:2:{i:0;R:40188;i:1;R:40161;}s:33:"1240:commonshelper2-upload_submit";a:2:{i:0;R:40188;i:1;R:40161;}s:31:"1240:commonshelper2-target_wiki";a:2:{i:0;R:40188;i:1;R:40161;}s:37:"1240:commonshelper2-standard_language";a:2:{i:0;R:40188;i:1;R:40161;}s:36:"1240:commonshelper2-standard_project";a:2:{i:0;R:40188;i:1;R:40161;}s:37:"1240:commonshelper2-error_bot_blocked";a:2:{i:0;R:40188;i:1;R:40161;}s:37:"1240:commonshelper2-error_upload_meta";a:2:{i:0;R:40188;i:1;R:40161;}s:37:"1240:commonshelper2-error_tusc_failed";a:2:{i:0;R:40188;i:1;R:40161;}s:38:"1240:commonshelper2-error_only_commons";a:2:{i:0;R:40188;i:1;R:40161;}s:39:"1240:commonshelper2-upload_control_text";a:2:{i:0;R:40188;i:1;R:40161;}s:38:"1240:commonshelper2-error_commons_user";a:2:{i:0;R:40188;i:1;R:40161;}s:38:"1240:commonshelper2-error_upload_users";a:2:{i:0;R:40188;i:1;R:40161;}s:37:"1240:commonshelper2-error_upload_file";a:2:{i:0;R:40188;i:1;R:40161;}s:30:"1240:commonshelper2-help_intro";a:2:{i:0;R:40188;i:1;R:40161;}s:29:"1240:commonshelper2-help_jira";a:2:{i:0;R:40188;i:1;R:40161;}s:29:"1240:commonshelper2-help_mail";a:2:{i:0;R:40188;i:1;R:40161;}s:32:"1240:commonshelper2-help_commons";a:2:{i:0;R:40188;i:1;R:40161;}s:22:"1240:tsintuition-title";a:2:{i:0;s:10:"tsint-core";i:1;R:40161;}s:25:"1240:tsintuition-fullname";a:2:{i:0;R:40239;i:1;R:40161;}s:33:"1240:tsintuition-current-settings";a:2:{i:0;R:40239;i:1;R:40161;}s:33:"1240:tsintuition-current-language";a:2:{i:0;R:40239;i:1;R:40161;}s:32:"1240:tsintuition-settings-legend";a:2:{i:0;R:40239;i:1;R:40161;}s:32:"1240:tsintuition-choose-language";a:2:{i:0;R:40239;i:1;R:40161;}s:30:"1240:tsintuition-clear-cookies";a:2:{i:0;R:40239;i:1;R:40161;}s:30:"1240:tsintuition-renew-cookies";a:2:{i:0;R:40239;i:1;R:40161;}s:34:"1240:tsintuition-cookie-expiration";a:2:{i:0;R:40239;i:1;R:40161;}s:37:"1240:tsintuition-clearcookies-success";a:2:{i:0;R:40239;i:1;R:40161;}s:37:"1240:tsintuition-renewcookies-success";a:2:{i:0;R:40239;i:1;R:40161;}s:29:"1240:tsintuition-tab-overview";a:2:{i:0;R:40239;i:1;R:40161;}s:29:"1240:tsintuition-tab-settings";a:2:{i:0;R:40239;i:1;R:40161;}s:26:"1240:tsintuition-tab-about";a:2:{i:0;R:40239;i:1;R:40161;}s:25:"1240:tsintuition-tab-demo";a:2:{i:0;R:40239;i:1;R:40161;}s:30:"1240:tsintuition-bl-mysettings";a:2:{i:0;R:40239;i:1;R:40161;}s:34:"1240:tsintuition-bl-mysettings-new";a:2:{i:0;R:40239;i:1;R:40161;}s:25:"1240:tsintuition-bl-promo";a:2:{i:0;R:40239;i:1;R:40161;}s:34:"1240:tsintuition-bl-changelanguage";a:2:{i:0;R:40239;i:1;R:40161;}s:22:"1240:tsintuition-usage";a:2:{i:0;R:40239;i:1;R:40161;}s:36:"1240:tsintuition-help-translate-tool";a:2:{i:0;R:40239;i:1;R:40161;}s:35:"1240:tsintuition-help-translate-all";a:2:{i:0;R:40239;i:1;R:40161;}s:39:"1240:tsintuition-help-translate-tooltip";a:2:{i:0;R:40239;i:1;R:40161;}s:23:"1240:general-dateformat";a:2:{i:0;s:13:"tsint-general";i:1;R:40161;}s:18:"1240:general-hello";a:2:{i:0;R:40263;i:1;R:40161;}s:20:"1240:general-welcome";a:2:{i:0;R:40263;i:1;R:40161;}s:29:"1240:general-toolversionstamp";a:2:{i:0;R:40263;i:1;R:40161;}s:16:"1240:general-etc";a:2:{i:0;R:40263;i:1;R:40161;}s:28:"1240:general-colon-separator";a:2:{i:0;R:40263;i:1;R:40161;}s:22:"1240:general-namespace";a:2:{i:0;R:40263;i:1;R:40161;}s:24:"1240:general-form-submit";a:2:{i:0;R:40263;i:1;R:40161;}s:23:"1240:general-form-reset";a:2:{i:0;R:40263;i:1;R:40161;}s:18:"1240:general-years";a:2:{i:0;R:40263;i:1;R:40161;}s:18:"1240:general-weeks";a:2:{i:0;R:40263;i:1;R:40161;}s:17:"1240:general-days";a:2:{i:0;R:40263;i:1;R:40161;}s:18:"1240:general-hours";a:2:{i:0;R:40263;i:1;R:40161;}s:20:"1240:general-minutes";a:2:{i:0;R:40263;i:1;R:40161;}s:20:"1240:general-seconds";a:2:{i:0;R:40263;i:1;R:40161;}s:31:"1240:general-last-modified-date";a:2:{i:0;R:40263;i:1;R:40161;}s:24:"1240:general-view-source";a:2:{i:0;R:40263;i:1;R:40161;}s:24:"1240:general-parentheses";a:2:{i:0;R:40263;i:1;R:40161;}s:21:"1240:getwikiapi-title";a:2:{i:0;s:16:"tsint-getwikiapi";i:1;R:40161;}s:31:"1240:getwikiapi-formats-heading";a:2:{i:0;R:40282;i:1;R:40161;}s:21:"1240:getwikiapi-input";a:2:{i:0;R:40282;i:1;R:40161;}s:29:"1240:getwikiapi-label-wikiids";a:2:{i:0;R:40282;i:1;R:40161;}s:26:"1240:getwikiapi-no-matches";a:2:{i:0;R:40282;i:1;R:40161;}s:22:"1240:getwikiapi-output";a:2:{i:0;R:40282;i:1;R:40161;}s:16:"1240:jarry-title";a:2:{i:0;s:11:"tsint-jarry";i:1;R:40161;}s:20:"1240:jarry-moretools";a:2:{i:0;R:40289;i:1;R:40161;}s:15:"1240:jarry-bugs";a:2:{i:0;R:40289;i:1;R:40161;}s:19:"1240:jarry-comments";a:2:{i:0;R:40289;i:1;R:40161;}s:27:"1240:jarry-error-form-empty";a:2:{i:0;R:40289;i:1;R:40161;}s:23:"1240:krinkle-alws-label";a:2:{i:0;s:13:"tsint-krinkle";i:1;R:40161;}s:28:"1240:krinkle-alws-selectwiki";a:2:{i:0;R:40295;i:1;R:40161;}s:32:"1240:krinkle-alws-group-mustused";a:2:{i:0;R:40295;i:1;R:40161;}s:29:"1240:krinkle-alws-group-allaz";a:2:{i:0;R:40295;i:1;R:40161;}s:33:"1240:krinkle-form-legend-settings";a:2:{i:0;R:40295;i:1;R:40161;}s:23:"1240:monumentsapi-title";a:2:{i:0;s:18:"tsint-monumentsapi";i:1;R:40161;}s:30:"1240:monumentsapi-search-title";a:2:{i:0;R:40301;i:1;R:40161;}s:43:"1240:monumentsapi-search-monuments-database";a:2:{i:0;R:40301;i:1;R:40161;}s:39:"1240:monumentsapi-search-table-th-field";a:2:{i:0;R:40301;i:1;R:40161;}s:40:"1240:monumentsapi-search-table-th-filter";a:2:{i:0;R:40301;i:1;R:40161;}s:40:"1240:monumentsapi-search-table-th-search";a:2:{i:0;R:40301;i:1;R:40161;}s:38:"1240:monumentsapi-filter-all-countries";a:2:{i:0;R:40301;i:1;R:40161;}s:38:"1240:monumentsapi-filter-all-languages";a:2:{i:0;R:40301;i:1;R:40161;}s:34:"1240:monumentsapi-db-field-country";a:2:{i:0;R:40301;i:1;R:40161;}s:31:"1240:monumentsapi-db-field-lang";a:2:{i:0;R:40301;i:1;R:40161;}s:29:"1240:monumentsapi-db-field-id";a:2:{i:0;R:40301;i:1;R:40161;}s:31:"1240:monumentsapi-db-field-name";a:2:{i:0;R:40301;i:1;R:40161;}s:34:"1240:monumentsapi-db-field-address";a:2:{i:0;R:40301;i:1;R:40161;}s:39:"1240:monumentsapi-db-field-municipality";a:2:{i:0;R:40301;i:1;R:40161;}s:30:"1240:monumentsapi-db-field-lat";a:2:{i:0;R:40301;i:1;R:40161;}s:30:"1240:monumentsapi-db-field-lon";a:2:{i:0;R:40301;i:1;R:40161;}s:32:"1240:monumentsapi-db-field-image";a:2:{i:0;R:40301;i:1;R:40161;}s:34:"1240:monumentsapi-db-field-changed";a:2:{i:0;R:40301;i:1;R:40161;}s:33:"1240:monumentsapi-db-field-source";a:2:{i:0;R:40301;i:1;R:40161;}s:43:"1240:monumentsapi-db-field-monument_article";a:2:{i:0;R:40301;i:1;R:40161;}s:41:"1240:monumentsapi-db-field-registrant_url";a:2:{i:0;R:40301;i:1;R:40161;}s:43:"1240:monumentsapi-toolbox-label-searchtipps";a:2:{i:0;R:40301;i:1;R:40161;}s:36:"1240:monumentsapi-toolbox-meta-title";a:2:{i:0;R:40301;i:1;R:40161;}s:36:"1240:monumentsapi-toolbox-main-title";a:2:{i:0;R:40301;i:1;R:40161;}s:42:"1240:monumentsapi-toolbox-main-description";a:2:{i:0;R:40301;i:1;R:40161;}s:44:"1240:monumentsapi-toolbox-wikilovesmonuments";a:2:{i:0;R:40301;i:1;R:40161;}s:38:"1240:monumentsapi-toolbox-nav-homepage";a:2:{i:0;R:40301;i:1;R:40161;}s:40:"1240:monumentsapi-toolbox-nav-statistics";a:2:{i:0;R:40301;i:1;R:40161;}s:36:"1240:monumentsapi-toolbox-nav-search";a:2:{i:0;R:40301;i:1;R:40161;}s:47:"1240:monumentsapi-toolbox-title-searchmonuments";a:2:{i:0;R:40301;i:1;R:40161;}s:22:"1240:orphantalk2-title";a:2:{i:0;s:17:"tsint-orphantalk2";i:1;R:40161;}s:34:"1240:orphantalk2-select-wiki-first";a:2:{i:0;R:40332;i:1;R:40161;}s:30:"1240:orphantalk2-hideredirects";a:2:{i:0;R:40332;i:1;R:40161;}s:29:"1240:orphantalk2-hidesubpages";a:2:{i:0;R:40332;i:1;R:40161;}s:22:"1240:orphantalk2-limit";a:2:{i:0;R:40332;i:1;R:40161;}s:21:"1240:orphantalk2-page";a:2:{i:0;R:40332;i:1;R:40161;}s:25:"1240:orphantalk2-redirect";a:2:{i:0;R:40332;i:1;R:40161;}s:23:"1240:orphantalk2-output";a:2:{i:0;R:40332;i:1;R:40161;}s:23:"1240:orphantalk2-update";a:2:{i:0;R:40332;i:1;R:40161;}s:29:"1240:orphantalk2-tools-delete";a:2:{i:0;R:40332;i:1;R:40161;}s:28:"1240:orphantalk2-tools-links";a:2:{i:0;R:40332;i:1;R:40161;}s:30:"1240:orphantalk2-tools-subject";a:2:{i:0;R:40332;i:1;R:40161;}s:27:"1240:orphantalk2-tools-hist";a:2:{i:0;R:40332;i:1;R:40161;}s:27:"1240:orphantalk2-tools-curr";a:2:{i:0;R:40332;i:1;R:40161;}s:34:"1240:orphantalk2-tools-globalusage";a:2:{i:0;R:40332;i:1;R:40161;}s:30:"1240:orphantalk2-deletesummary";a:2:{i:0;R:40332;i:1;R:40161;}s:26:"1240:orphantalk2-noresults";a:2:{i:0;R:40332;i:1;R:40161;}s:31:"1240:orphantalk2-resultslimited";a:2:{i:0;R:40332;i:1;R:40161;}s:34:"1240:recentanonymousactivity-title";a:2:{i:0;s:29:"tsint-recentanonymousactivity";i:1;R:40161;}s:23:"1240:svgtranslate-title";a:2:{i:0;s:18:"tsint-svgtranslate";i:1;R:40161;}s:32:"1240:svgtranslate-error-tryagain";a:2:{i:0;R:40353;i:1;R:40161;}s:31:"1240:svgtranslate-error-nothing";a:2:{i:0;R:40353;i:1;R:40161;}s:30:"1240:svgtranslate-error-notsvg";a:2:{i:0;R:40353;i:1;R:40161;}s:34:"1240:svgtranslate-error-unexpected";a:2:{i:0;R:40353;i:1;R:40161;}s:32:"1240:svgtranslate-error-notfound";a:2:{i:0;R:40353;i:1;R:40161;}s:30:"1240:svgtranslate-error-upload";a:2:{i:0;R:40353;i:1;R:40161;}s:35:"1240:svgtranslate-begin-translation";a:2:{i:0;R:40353;i:1;R:40161;}s:29:"1240:svgtranslate-th-original";a:2:{i:0;R:40353;i:1;R:40161;}s:32:"1240:svgtranslate-th-translation";a:2:{i:0;R:40353;i:1;R:40161;}s:29:"1240:svgtranslate-th-language";a:2:{i:0;R:40353;i:1;R:40161;}s:29:"1240:svgtranslate-th-username";a:2:{i:0;R:40353;i:1;R:40161;}s:29:"1240:svgtranslate-th-password";a:2:{i:0;R:40353;i:1;R:40161;}s:27:"1240:svgtranslate-th-method";a:2:{i:0;R:40353;i:1;R:40161;}s:29:"1240:svgtranslate-option-tusc";a:2:{i:0;R:40353;i:1;R:40161;}s:31:"1240:svgtranslate-option-manual";a:2:{i:0;R:40353;i:1;R:40161;}s:25:"1240:svgtranslate-preview";a:2:{i:0;R:40353;i:1;R:40161;}s:27:"1240:svgtranslate-translate";a:2:{i:0;R:40353;i:1;R:40161;}s:40:"1240:svgtranslate-translate-instructions";a:2:{i:0;R:40353;i:1;R:40161;}s:41:"1240:svgtranslate-format-filename-example";a:2:{i:0;R:40353;i:1;R:40161;}s:40:"1240:svgtranslate-format-fullurl-example";a:2:{i:0;R:40353;i:1;R:40161;}s:32:"1240:svgtranslate-svginput-label";a:2:{i:0;R:40353;i:1;R:40161;}s:30:"1240:svgtranslate-stats-footer";a:2:{i:0;R:40353;i:1;R:40161;}s:27:"1240:svgtranslate-uploading";a:2:{i:0;R:40353;i:1;R:40161;}s:33:"1240:svgtranslate-upload-complete";a:2:{i:0;R:40353;i:1;R:40161;}s:37:"1240:svgtranslate-editdescriptionpage";a:2:{i:0;R:40353;i:1;R:40161;}s:28:"1240:svgtranslate-disclaimer";a:2:{i:0;R:40353;i:1;R:40161;}s:33:"1240:svgtranslate-author-complete";a:2:{i:0;R:40353;i:1;R:40161;}s:30:"1240:svgtranslate-preview-hide";a:2:{i:0;R:40353;i:1;R:40161;}s:33:"1240:svgtranslate-preview-refresh";a:2:{i:0;R:40353;i:1;R:40161;}s:35:"1240:svgtranslate-error-must-accept";a:2:{i:0;R:40353;i:1;R:40161;}s:35:"1240:svgtranslate-error-tusc-failed";a:2:{i:0;R:40353;i:1;R:40161;}s:37:"1240:svgtranslate-description-license";a:2:{i:0;R:40353;i:1;R:40161;}s:26:"1240:svgtranslate-finalise";a:2:{i:0;R:40353;i:1;R:40161;}s:24:"1240:templatecount-title";a:2:{i:0;s:19:"tsint-templatecount";i:1;R:40161;}s:32:"1240:templatecount-enter-details";a:2:{i:0;R:40388;i:1;R:40161;}s:31:"1240:templatecount-introduction";a:2:{i:0;R:40388;i:1;R:40161;}s:33:"1240:templatecount-language-label";a:2:{i:0;R:40388;i:1;R:40161;}s:34:"1240:templatecount-namespace-label";a:2:{i:0;R:40388;i:1;R:40161;}s:33:"1240:templatecount-pagename-label";a:2:{i:0;R:40388;i:1;R:40161;}s:43:"1240:templatecount-transclusion-count-label";a:2:{i:0;R:40388;i:1;R:40161;}s:37:"1240:templatecount-transclusion-count";a:2:{i:0;R:40388;i:1;R:40161;}s:35:"1240:templatecount-error-suggestion";a:2:{i:0;R:40388;i:1;R:40161;}s:29:"1240:templatecount-time-label";a:2:{i:0;R:40388;i:1;R:40161;}s:42:"1240:toolserverstatus-toolserver-status-ok";a:2:{i:0;s:22:"tsint-toolserverstatus";i:1;R:40161;}s:44:"1240:toolserverstatus-toolserver-status-info";a:2:{i:0;R:40399;i:1;R:40161;}s:44:"1240:toolserverstatus-toolserver-status-warn";a:2:{i:0;R:40399;i:1;R:40161;}s:44:"1240:toolserverstatus-toolserver-status-down";a:2:{i:0;R:40399;i:1;R:40161;}s:44:"1240:toolserverstatus-toolserver-status-erro";a:2:{i:0;R:40399;i:1;R:40161;}s:47:"1240:toolserverstatus-toolserver-status-unknown";a:2:{i:0;R:40399;i:1;R:40161;}s:47:"1240:toolserverstatus-toolserver-status-missing";a:2:{i:0;R:40399;i:1;R:40161;}s:48:"1240:toolserverstatus-toolserver-status-short-ok";a:2:{i:0;R:40399;i:1;R:40161;}s:50:"1240:toolserverstatus-toolserver-status-short-info";a:2:{i:0;R:40399;i:1;R:40161;}s:50:"1240:toolserverstatus-toolserver-status-short-warn";a:2:{i:0;R:40399;i:1;R:40161;}s:50:"1240:toolserverstatus-toolserver-status-short-down";a:2:{i:0;R:40399;i:1;R:40161;}s:50:"1240:toolserverstatus-toolserver-status-short-erro";a:2:{i:0;R:40399;i:1;R:40161;}s:53:"1240:toolserverstatus-toolserver-status-short-unknown";a:2:{i:0;R:40399;i:1;R:40161;}s:53:"1240:toolserverstatus-toolserver-status-short-missing";a:2:{i:0;R:40399;i:1;R:40161;}s:14:"1240:wlm-title";a:2:{i:0;s:9:"tsint-wlm";i:1;R:40161;}s:13:"1240:wlm-file";a:2:{i:0;R:40414;i:1;R:40161;}s:22:"1240:wlm-monument-type";a:2:{i:0;R:40414;i:1;R:40161;}s:20:"1240:wlm-monument-id";a:2:{i:0;R:40414;i:1;R:40161;}s:17:"1240:wlm-province";a:2:{i:0;R:40414;i:1;R:40161;}s:17:"1240:wlm-comarque";a:2:{i:0;R:40414;i:1;R:40161;}s:33:"1240:wlm-province-comarque-joiner";a:2:{i:0;R:40414;i:1;R:40161;}s:17:"1240:wlm-competes";a:2:{i:0;R:40414;i:1;R:40161;}s:15:"1240:wlm-author";a:2:{i:0;R:40414;i:1;R:40161;}s:20:"1240:wlm-upload-time";a:2:{i:0;R:40414;i:1;R:40161;}s:16:"1240:wlm-deleted";a:2:{i:0;R:40414;i:1;R:40161;}s:17:"1240:wlm-concursa";a:2:{i:0;R:40414;i:1;R:40161;}s:20:"1240:wlm-no-concursa";a:2:{i:0;R:40414;i:1;R:40161;}s:22:"1240:wlm-not-available";a:2:{i:0;R:40414;i:1;R:40161;}s:21:"1240:wlm-date-unknown";a:2:{i:0;R:40414;i:1;R:40161;}s:21:"1240:wlm-total-images";a:2:{i:0;R:40414;i:1;R:40161;}s:34:"1240:wlm-view-uncategorized-images";a:2:{i:0;R:40414;i:1;R:40161;}s:19:"1240:wlm-provide-id";a:2:{i:0;R:40414;i:1;R:40161;}s:29:"1240:wlm-show-images-bad-only";a:2:{i:0;R:40414;i:1;R:40161;}s:24:"1240:wlm-show-images-all";a:2:{i:0;R:40414;i:1;R:40161;}s:28:"1240:wlm-show-images-removed";a:2:{i:0;R:40414;i:1;R:40161;}s:25:"1240:wlm-search-monuments";a:2:{i:0;R:40414;i:1;R:40161;}s:23:"1240:wlm-view-frequency";a:2:{i:0;R:40414;i:1;R:40161;}s:18:"1240:wlm-view-ccaa";a:2:{i:0;R:40414;i:1;R:40161;}s:22:"1240:wlm-view-province";a:2:{i:0;R:40414;i:1;R:40161;}s:17:"1240:wlm-id-label";a:2:{i:0;R:40414;i:1;R:40161;}s:20:"1240:wlm-date-format";a:2:{i:0;R:40414;i:1;R:40161;}s:16:"1240:wlm-id-none";a:2:{i:0;R:40414;i:1;R:40161;}s:25:"1240:wlm-monument-heading";a:2:{i:0;R:40414;i:1;R:40161;}s:22:"1240:wlm-count-heading";a:2:{i:0;R:40414;i:1;R:40161;}s:17:"1240:wlm-bic-list";a:2:{i:0;R:40414;i:1;R:40161;}s:20:"1240:wlm-bic-gallery";a:2:{i:0;R:40414;i:1;R:40161;}s:23:"1240:wlm-gallery-header";a:2:{i:0;R:40414;i:1;R:40161;}s:29:"1240:wlm-gallery-header-place";a:2:{i:0;R:40414;i:1;R:40161;}s:27:"1240:wlm-wall-of-shame-text";a:2:{i:0;R:40414;i:1;R:40161;}s:23:"1240:wlm-author-heading";a:2:{i:0;R:40414;i:1;R:40161;}s:21:"1240:wlm-bic-list-bad";a:2:{i:0;R:40414;i:1;R:40161;}s:21:"1240:wlm-bic-list-all";a:2:{i:0;R:40414;i:1;R:40161;}s:21:"1240:wlm-unregistered";a:2:{i:0;R:40414;i:1;R:40161;}s:19:"1240:wlm-users-text";a:2:{i:0;R:40414;i:1;R:40161;}s:19:"1240:wlm-users-list";a:2:{i:0;R:40414;i:1;R:40161;}s:26:"1240:wlm-distict-monuments";a:2:{i:0;R:40414;i:1;R:40161;}s:25:"1240:wlm-province-heading";a:2:{i:0;R:40414;i:1;R:40161;}s:22:"1240:wlm-province-none";a:2:{i:0;R:40414;i:1;R:40161;}s:21:"1240:wlm-ccaa-heading";a:2:{i:0;R:40414;i:1;R:40161;}s:24:"1232:achievementsii-desc";a:2:{i:0;s:20:"wikia-achievementsii";i:1;s:11:"wikia-0-all";}s:30:"1232:achievements-upload-error";a:2:{i:0;R:40460;i:1;R:40461;}s:36:"1232:achievements-upload-not-allowed";a:2:{i:0;R:40460;i:1;R:40461;}s:39:"1232:achievements-non-existing-category";a:2:{i:0;R:40460;i:1;R:40461;}s:49:"1232:achievements-edit-plus-category-track-exists";a:2:{i:0;R:40460;i:1;R:40461;}s:34:"1232:achievements-no-stub-category";a:2:{i:0;R:40460;i:1;R:40461;}s:19:"1232:right-platinum";a:2:{i:0;R:40460;i:1;R:40461;}s:33:"1232:right-sponsored-achievements";a:2:{i:0;R:40460;i:1;R:40461;}s:26:"1232:achievements-platinum";a:2:{i:0;R:40460;i:1;R:40461;}s:22:"1232:achievements-gold";a:2:{i:0;R:40460;i:1;R:40461;}s:24:"1232:achievements-silver";a:2:{i:0;R:40460;i:1;R:40461;}s:24:"1232:achievements-bronze";a:2:{i:0;R:40460;i:1;R:40461;}s:29:"1232:achievements-gold-points";a:2:{i:0;R:40460;i:1;R:40461;}s:31:"1232:achievements-silver-points";a:2:{i:0;R:40460;i:1;R:40461;}s:31:"1232:achievements-bronze-points";a:2:{i:0;R:40460;i:1;R:40461;}s:26:"1232:achievements-you-must";a:2:{i:0;R:40460;i:1;R:40461;}s:23:"1232:leaderboard-button";a:2:{i:0;R:40460;i:1;R:40461;}s:33:"1232:achievements-masthead-points";a:2:{i:0;R:40460;i:1;R:40461;}s:34:"1232:achievements-profile-title-no";a:2:{i:0;R:40460;i:1;R:40461;}s:27:"1232:achievements-no-badges";a:2:{i:0;R:40460;i:1;R:40461;}s:33:"1232:achievements-track-name-edit";a:2:{i:0;R:40460;i:1;R:40461;}s:36:"1232:achievements-track-name-picture";a:2:{i:0;R:40460;i:1;R:40461;}s:37:"1232:achievements-track-name-category";a:2:{i:0;R:40460;i:1;R:40461;}s:37:"1232:achievements-track-name-blogpost";a:2:{i:0;R:40460;i:1;R:40461;}s:40:"1232:achievements-track-name-blogcomment";a:2:{i:0;R:40460;i:1;R:40461;}s:33:"1232:achievements-track-name-love";a:2:{i:0;R:40460;i:1;R:40461;}s:36:"1232:achievements-track-name-sharing";a:2:{i:0;R:40460;i:1;R:40461;}s:36:"1232:achievements-notification-title";a:2:{i:0;R:40460;i:1;R:40461;}s:39:"1232:achievements-notification-subtitle";a:2:{i:0;R:40460;i:1;R:40461;}s:35:"1232:achievements-notification-link";a:2:{i:0;R:40460;i:1;R:40461;}s:24:"1232:achievements-points";a:2:{i:0;R:40460;i:1;R:40461;}s:35:"1232:achievements-points-with-break";a:2:{i:0;R:40460;i:1;R:40461;}s:24:"1232:achievements-earned";a:2:{i:0;R:40460;i:1;R:40461;}s:31:"1232:achievements-profile-title";a:2:{i:0;R:40460;i:1;R:40461;}s:42:"1232:achievements-profile-title-challenges";a:2:{i:0;R:40460;i:1;R:40461;}s:35:"1232:achievements-profile-customize";a:2:{i:0;R:40460;i:1;R:40461;}s:24:"1232:achievements-ranked";a:2:{i:0;R:40460;i:1;R:40461;}s:25:"1232:achievements-viewall";a:2:{i:0;R:40460;i:1;R:40461;}s:26:"1232:achievements-viewless";a:2:{i:0;R:40460;i:1;R:40461;}s:37:"1232:achievements-profile-title-oasis";a:2:{i:0;R:40460;i:1;R:40461;}s:30:"1232:achievements-ranked-oasis";a:2:{i:0;R:40460;i:1;R:40461;}s:31:"1232:achievements-viewall-oasis";a:2:{i:0;R:40460;i:1;R:40461;}s:29:"1232:achievements-toggle-hide";a:2:{i:0;R:40460;i:1;R:40461;}s:27:"1232:leaderboard-intro-hide";a:2:{i:0;R:40460;i:1;R:40461;}s:27:"1232:leaderboard-intro-open";a:2:{i:0;R:40460;i:1;R:40461;}s:31:"1232:leaderboard-intro-headline";a:2:{i:0;R:40460;i:1;R:40461;}s:22:"1232:leaderboard-intro";a:2:{i:0;R:40460;i:1;R:40461;}s:16:"1232:leaderboard";a:2:{i:0;R:40460;i:1;R:40461;}s:23:"1232:achievements-title";a:2:{i:0;R:40460;i:1;R:40461;}s:22:"1232:leaderboard-title";a:2:{i:0;R:40460;i:1;R:40461;}s:38:"1232:achievements-recent-earned-badges";a:2:{i:0;R:40460;i:1;R:40461;}s:29:"1232:achievements-recent-info";a:2:{i:0;R:40460;i:1;R:40461;}s:35:"1232:achievements-activityfeed-info";a:2:{i:0;R:40460;i:1;R:40461;}s:40:"1232:achievements-leaderboard-disclaimer";a:2:{i:0;R:40460;i:1;R:40461;}s:40:"1232:achievements-leaderboard-rank-label";a:2:{i:0;R:40460;i:1;R:40461;}s:42:"1232:achievements-leaderboard-member-label";a:2:{i:0;R:40460;i:1;R:40461;}s:42:"1232:achievements-leaderboard-points-label";a:2:{i:0;R:40460;i:1;R:40461;}s:36:"1232:achievements-leaderboard-points";a:2:{i:0;R:40460;i:1;R:40461;}s:56:"1232:achievements-leaderboard-most-recently-earned-label";a:2:{i:0;R:40460;i:1;R:40461;}s:22:"1232:achievements-send";a:2:{i:0;R:40460;i:1;R:40461;}s:22:"1232:achievements-save";a:2:{i:0;R:40460;i:1;R:40461;}s:26:"1232:achievements-reverted";a:2:{i:0;R:40460;i:1;R:40461;}s:27:"1232:achievements-customize";a:2:{i:0;R:40460;i:1;R:40461;}s:46:"1232:achievements-customize-new-category-track";a:2:{i:0;R:40460;i:1;R:40461;}s:30:"1232:achievements-enable-track";a:2:{i:0;R:40460;i:1;R:40461;}s:24:"1232:achievements-revert";a:2:{i:0;R:40460;i:1;R:40461;}s:31:"1232:achievements-special-saved";a:2:{i:0;R:40460;i:1;R:40461;}s:25:"1232:achievements-special";a:2:{i:0;R:40460;i:1;R:40461;}s:24:"1232:achievements-secret";a:2:{i:0;R:40460;i:1;R:40461;}s:26:"1232:achievementscustomize";a:2:{i:0;R:40460;i:1;R:40461;}s:29:"1232:achievements-about-title";a:2:{i:0;R:40460;i:1;R:40461;}s:31:"1232:achievements-about-content";a:2:{i:0;R:40460;i:1;R:40461;}s:47:"1232:achievements-edit-plus-category-track-name";a:2:{i:0;R:40460;i:1;R:40461;}s:49:"1232:achievements-create-edit-plus-category-title";a:2:{i:0;R:40460;i:1;R:40461;}s:51:"1232:achievements-create-edit-plus-category-content";a:2:{i:0;R:40460;i:1;R:40461;}s:43:"1232:achievements-create-edit-plus-category";a:2:{i:0;R:40460;i:1;R:40461;}s:13:"1232:platinum";a:2:{i:0;R:40460;i:1;R:40461;}s:58:"1232:achievements-community-platinum-awarded-email-subject";a:2:{i:0;R:40460;i:1;R:40461;}s:60:"1232:achievements-community-platinum-awarded-email-body-text";a:2:{i:0;R:40460;i:1;R:40461;}s:60:"1232:achievements-community-platinum-awarded-email-body-html";a:2:{i:0;R:40460;i:1;R:40461;}s:48:"1232:achievements-community-platinum-awarded-for";a:2:{i:0;R:40460;i:1;R:40461;}s:48:"1232:achievements-community-platinum-how-to-earn";a:2:{i:0;R:40460;i:1;R:40461;}s:56:"1232:achievements-community-platinum-awarded-for-example";a:2:{i:0;R:40460;i:1;R:40461;}s:56:"1232:achievements-community-platinum-how-to-earn-example";a:2:{i:0;R:40460;i:1;R:40461;}s:48:"1232:achievements-community-platinum-badge-image";a:2:{i:0;R:40460;i:1;R:40461;}s:47:"1232:achievements-community-platinum-awarded-to";a:2:{i:0;R:40460;i:1;R:40461;}s:51:"1232:achievements-community-platinum-current-badges";a:2:{i:0;R:40460;i:1;R:40461;}s:49:"1232:achievements-community-platinum-create-badge";a:2:{i:0;R:40460;i:1;R:40461;}s:44:"1232:achievements-community-platinum-enabled";a:2:{i:0;R:40460;i:1;R:40461;}s:49:"1232:achievements-community-platinum-show-recents";a:2:{i:0;R:40460;i:1;R:40461;}s:41:"1232:achievements-community-platinum-edit";a:2:{i:0;R:40460;i:1;R:40461;}s:41:"1232:achievements-community-platinum-save";a:2:{i:0;R:40460;i:1;R:40461;}s:43:"1232:achievements-community-platinum-cancel";a:2:{i:0;R:40460;i:1;R:40461;}s:52:"1232:achievements-community-platinum-sponsored-label";a:2:{i:0;R:40460;i:1;R:40461;}s:66:"1232:achievements-community-platinum-sponsored-hover-content-label";a:2:{i:0;R:40460;i:1;R:40461;}s:79:"1232:achievements-community-platinum-sponsored-badge-impression-pixel-url-label";a:2:{i:0;R:40460;i:1;R:40461;}s:79:"1232:achievements-community-platinum-sponsored-hover-impression-pixel-url-label";a:2:{i:0;R:40460;i:1;R:40461;}s:68:"1232:achievements-community-platinum-sponsored-badge-click-url-label";a:2:{i:0;R:40460;i:1;R:40461;}s:66:"1232:achievements-community-platinum-sponsored-badge-click-tooltip";a:2:{i:0;R:40460;i:1;R:40461;}s:35:"1232:achievements-badge-name-edit-0";a:2:{i:0;R:40460;i:1;R:40461;}s:35:"1232:achievements-badge-name-edit-1";a:2:{i:0;R:40460;i:1;R:40461;}s:35:"1232:achievements-badge-name-edit-2";a:2:{i:0;R:40460;i:1;R:40461;}s:35:"1232:achievements-badge-name-edit-3";a:2:{i:0;R:40460;i:1;R:40461;}s:35:"1232:achievements-badge-name-edit-4";a:2:{i:0;R:40460;i:1;R:40461;}s:35:"1232:achievements-badge-name-edit-5";a:2:{i:0;R:40460;i:1;R:40461;}s:35:"1232:achievements-badge-name-edit-6";a:2:{i:0;R:40460;i:1;R:40461;}s:35:"1232:achievements-badge-name-edit-7";a:2:{i:0;R:40460;i:1;R:40461;}s:38:"1232:achievements-badge-name-picture-0";a:2:{i:0;R:40460;i:1;R:40461;}s:38:"1232:achievements-badge-name-picture-1";a:2:{i:0;R:40460;i:1;R:40461;}s:38:"1232:achievements-badge-name-picture-2";a:2:{i:0;R:40460;i:1;R:40461;}s:38:"1232:achievements-badge-name-picture-3";a:2:{i:0;R:40460;i:1;R:40461;}s:38:"1232:achievements-badge-name-picture-4";a:2:{i:0;R:40460;i:1;R:40461;}s:38:"1232:achievements-badge-name-picture-5";a:2:{i:0;R:40460;i:1;R:40461;}s:38:"1232:achievements-badge-name-picture-6";a:2:{i:0;R:40460;i:1;R:40461;}s:38:"1232:achievements-badge-name-picture-7";a:2:{i:0;R:40460;i:1;R:40461;}s:39:"1232:achievements-badge-name-category-0";a:2:{i:0;R:40460;i:1;R:40461;}s:39:"1232:achievements-badge-name-category-1";a:2:{i:0;R:40460;i:1;R:40461;}s:39:"1232:achievements-badge-name-category-2";a:2:{i:0;R:40460;i:1;R:40461;}s:39:"1232:achievements-badge-name-category-3";a:2:{i:0;R:40460;i:1;R:40461;}s:39:"1232:achievements-badge-name-category-4";a:2:{i:0;R:40460;i:1;R:40461;}s:39:"1232:achievements-badge-name-category-5";a:2:{i:0;R:40460;i:1;R:40461;}s:39:"1232:achievements-badge-name-category-6";a:2:{i:0;R:40460;i:1;R:40461;}s:39:"1232:achievements-badge-name-blogpost-0";a:2:{i:0;R:40460;i:1;R:40461;}s:39:"1232:achievements-badge-name-blogpost-1";a:2:{i:0;R:40460;i:1;R:40461;}s:39:"1232:achievements-badge-name-blogpost-2";a:2:{i:0;R:40460;i:1;R:40461;}s:39:"1232:achievements-badge-name-blogpost-3";a:2:{i:0;R:40460;i:1;R:40461;}s:39:"1232:achievements-badge-name-blogpost-4";a:2:{i:0;R:40460;i:1;R:40461;}s:42:"1232:achievements-badge-name-blogcomment-0";a:2:{i:0;R:40460;i:1;R:40461;}s:42:"1232:achievements-badge-name-blogcomment-1";a:2:{i:0;R:40460;i:1;R:40461;}s:35:"1232:achievements-badge-name-love-0";a:2:{i:0;R:40460;i:1;R:40461;}s:35:"1232:achievements-badge-name-love-1";a:2:{i:0;R:40460;i:1;R:40461;}s:35:"1232:achievements-badge-name-love-2";a:2:{i:0;R:40460;i:1;R:40461;}s:35:"1232:achievements-badge-name-love-3";a:2:{i:0;R:40460;i:1;R:40461;}s:35:"1232:achievements-badge-name-love-4";a:2:{i:0;R:40460;i:1;R:40461;}s:35:"1232:achievements-badge-name-love-5";a:2:{i:0;R:40460;i:1;R:40461;}s:35:"1232:achievements-badge-name-love-6";a:2:{i:0;R:40460;i:1;R:40461;}s:38:"1232:achievements-badge-name-sharing-0";a:2:{i:0;R:40460;i:1;R:40461;}s:38:"1232:achievements-badge-name-sharing-1";a:2:{i:0;R:40460;i:1;R:40461;}s:38:"1232:achievements-badge-name-sharing-2";a:2:{i:0;R:40460;i:1;R:40461;}s:38:"1232:achievements-badge-name-sharing-3";a:2:{i:0;R:40460;i:1;R:40461;}s:38:"1232:achievements-badge-name-sharing-4";a:2:{i:0;R:40460;i:1;R:40461;}s:36:"1232:achievements-badge-name-welcome";a:2:{i:0;R:40460;i:1;R:40461;}s:41:"1232:achievements-badge-name-introduction";a:2:{i:0;R:40460;i:1;R:40461;}s:34:"1232:achievements-badge-name-sayhi";a:2:{i:0;R:40460;i:1;R:40461;}s:36:"1232:achievements-badge-name-creator";a:2:{i:0;R:40460;i:1;R:40461;}s:35:"1232:achievements-badge-name-pounce";a:2:{i:0;R:40460;i:1;R:40461;}s:40:"1232:achievements-badge-name-caffeinated";a:2:{i:0;R:40460;i:1;R:40461;}s:38:"1232:achievements-badge-name-luckyedit";a:2:{i:0;R:40460;i:1;R:40461;}s:38:"1232:achievements-badge-to-get-sharing";a:2:{i:0;R:40460;i:1;R:40461;}s:35:"1232:achievements-badge-to-get-edit";a:2:{i:0;R:40460;i:1;R:40461;}s:49:"1232:achievements-badge-to-get-edit-plus-category";a:2:{i:0;R:40460;i:1;R:40461;}s:38:"1232:achievements-badge-to-get-picture";a:2:{i:0;R:40460;i:1;R:40461;}s:39:"1232:achievements-badge-to-get-category";a:2:{i:0;R:40460;i:1;R:40461;}s:39:"1232:achievements-badge-to-get-blogpost";a:2:{i:0;R:40460;i:1;R:40461;}s:42:"1232:achievements-badge-to-get-blogcomment";a:2:{i:0;R:40460;i:1;R:40461;}s:35:"1232:achievements-badge-to-get-love";a:2:{i:0;R:40460;i:1;R:40461;}s:38:"1232:achievements-badge-to-get-welcome";a:2:{i:0;R:40460;i:1;R:40461;}s:43:"1232:achievements-badge-to-get-introduction";a:2:{i:0;R:40460;i:1;R:40461;}s:36:"1232:achievements-badge-to-get-sayhi";a:2:{i:0;R:40460;i:1;R:40461;}s:38:"1232:achievements-badge-to-get-creator";a:2:{i:0;R:40460;i:1;R:40461;}s:37:"1232:achievements-badge-to-get-pounce";a:2:{i:0;R:40460;i:1;R:40461;}s:42:"1232:achievements-badge-to-get-caffeinated";a:2:{i:0;R:40460;i:1;R:40461;}s:40:"1232:achievements-badge-to-get-luckyedit";a:2:{i:0;R:40460;i:1;R:40461;}s:46:"1232:achievements-badge-to-get-sharing-details";a:2:{i:0;R:40460;i:1;R:40461;}s:43:"1232:achievements-badge-to-get-edit-details";a:2:{i:0;R:40460;i:1;R:40461;}s:57:"1232:achievements-badge-to-get-edit-plus-category-details";a:2:{i:0;R:40460;i:1;R:40461;}s:46:"1232:achievements-badge-to-get-picture-details";a:2:{i:0;R:40460;i:1;R:40461;}s:47:"1232:achievements-badge-to-get-category-details";a:2:{i:0;R:40460;i:1;R:40461;}s:47:"1232:achievements-badge-to-get-blogpost-details";a:2:{i:0;R:40460;i:1;R:40461;}s:50:"1232:achievements-badge-to-get-blogcomment-details";a:2:{i:0;R:40460;i:1;R:40461;}s:43:"1232:achievements-badge-to-get-love-details";a:2:{i:0;R:40460;i:1;R:40461;}s:46:"1232:achievements-badge-to-get-welcome-details";a:2:{i:0;R:40460;i:1;R:40461;}s:51:"1232:achievements-badge-to-get-introduction-details";a:2:{i:0;R:40460;i:1;R:40461;}s:44:"1232:achievements-badge-to-get-sayhi-details";a:2:{i:0;R:40460;i:1;R:40461;}s:46:"1232:achievements-badge-to-get-creator-details";a:2:{i:0;R:40460;i:1;R:40461;}s:45:"1232:achievements-badge-to-get-pounce-details";a:2:{i:0;R:40460;i:1;R:40461;}s:50:"1232:achievements-badge-to-get-caffeinated-details";a:2:{i:0;R:40460;i:1;R:40461;}s:48:"1232:achievements-badge-to-get-luckyedit-details";a:2:{i:0;R:40460;i:1;R:40461;}s:57:"1232:achievements-badge-to-get-community-platinum-details";a:2:{i:0;R:40460;i:1;R:40461;}s:42:"1232:achievements-badge-hover-desc-sharing";a:2:{i:0;R:40460;i:1;R:40461;}s:39:"1232:achievements-badge-hover-desc-edit";a:2:{i:0;R:40460;i:1;R:40461;}s:53:"1232:achievements-badge-hover-desc-edit-plus-category";a:2:{i:0;R:40460;i:1;R:40461;}s:42:"1232:achievements-badge-hover-desc-picture";a:2:{i:0;R:40460;i:1;R:40461;}s:43:"1232:achievements-badge-hover-desc-category";a:2:{i:0;R:40460;i:1;R:40461;}s:43:"1232:achievements-badge-hover-desc-blogpost";a:2:{i:0;R:40460;i:1;R:40461;}s:46:"1232:achievements-badge-hover-desc-blogcomment";a:2:{i:0;R:40460;i:1;R:40461;}s:39:"1232:achievements-badge-hover-desc-love";a:2:{i:0;R:40460;i:1;R:40461;}s:42:"1232:achievements-badge-hover-desc-welcome";a:2:{i:0;R:40460;i:1;R:40461;}s:47:"1232:achievements-badge-hover-desc-introduction";a:2:{i:0;R:40460;i:1;R:40461;}s:40:"1232:achievements-badge-hover-desc-sayhi";a:2:{i:0;R:40460;i:1;R:40461;}s:42:"1232:achievements-badge-hover-desc-creator";a:2:{i:0;R:40460;i:1;R:40461;}s:41:"1232:achievements-badge-hover-desc-pounce";a:2:{i:0;R:40460;i:1;R:40461;}s:46:"1232:achievements-badge-hover-desc-caffeinated";a:2:{i:0;R:40460;i:1;R:40461;}s:44:"1232:achievements-badge-hover-desc-luckyedit";a:2:{i:0;R:40460;i:1;R:40461;}s:53:"1232:achievements-badge-hover-desc-community-platinum";a:2:{i:0;R:40460;i:1;R:40461;}s:41:"1232:achievements-badge-your-desc-sharing";a:2:{i:0;R:40460;i:1;R:40461;}s:38:"1232:achievements-badge-your-desc-edit";a:2:{i:0;R:40460;i:1;R:40461;}s:52:"1232:achievements-badge-your-desc-edit-plus-category";a:2:{i:0;R:40460;i:1;R:40461;}s:41:"1232:achievements-badge-your-desc-picture";a:2:{i:0;R:40460;i:1;R:40461;}s:42:"1232:achievements-badge-your-desc-category";a:2:{i:0;R:40460;i:1;R:40461;}s:42:"1232:achievements-badge-your-desc-blogpost";a:2:{i:0;R:40460;i:1;R:40461;}s:45:"1232:achievements-badge-your-desc-blogcomment";a:2:{i:0;R:40460;i:1;R:40461;}s:38:"1232:achievements-badge-your-desc-love";a:2:{i:0;R:40460;i:1;R:40461;}s:41:"1232:achievements-badge-your-desc-welcome";a:2:{i:0;R:40460;i:1;R:40461;}s:46:"1232:achievements-badge-your-desc-introduction";a:2:{i:0;R:40460;i:1;R:40461;}s:39:"1232:achievements-badge-your-desc-sayhi";a:2:{i:0;R:40460;i:1;R:40461;}s:41:"1232:achievements-badge-your-desc-creator";a:2:{i:0;R:40460;i:1;R:40461;}s:40:"1232:achievements-badge-your-desc-pounce";a:2:{i:0;R:40460;i:1;R:40461;}s:45:"1232:achievements-badge-your-desc-caffeinated";a:2:{i:0;R:40460;i:1;R:40461;}s:43:"1232:achievements-badge-your-desc-luckyedit";a:2:{i:0;R:40460;i:1;R:40461;}s:36:"1232:achievements-badge-desc-sharing";a:2:{i:0;R:40460;i:1;R:40461;}s:33:"1232:achievements-badge-desc-edit";a:2:{i:0;R:40460;i:1;R:40461;}s:47:"1232:achievements-badge-desc-edit-plus-category";a:2:{i:0;R:40460;i:1;R:40461;}s:36:"1232:achievements-badge-desc-picture";a:2:{i:0;R:40460;i:1;R:40461;}s:37:"1232:achievements-badge-desc-category";a:2:{i:0;R:40460;i:1;R:40461;}s:37:"1232:achievements-badge-desc-blogpost";a:2:{i:0;R:40460;i:1;R:40461;}s:40:"1232:achievements-badge-desc-blogcomment";a:2:{i:0;R:40460;i:1;R:40461;}s:33:"1232:achievements-badge-desc-love";a:2:{i:0;R:40460;i:1;R:40461;}s:36:"1232:achievements-badge-desc-welcome";a:2:{i:0;R:40460;i:1;R:40461;}s:41:"1232:achievements-badge-desc-introduction";a:2:{i:0;R:40460;i:1;R:40461;}s:34:"1232:achievements-badge-desc-sayhi";a:2:{i:0;R:40460;i:1;R:40461;}s:36:"1232:achievements-badge-desc-creator";a:2:{i:0;R:40460;i:1;R:40461;}s:35:"1232:achievements-badge-desc-pounce";a:2:{i:0;R:40460;i:1;R:40461;}s:40:"1232:achievements-badge-desc-caffeinated";a:2:{i:0;R:40460;i:1;R:40461;}s:38:"1232:achievements-badge-desc-luckyedit";a:2:{i:0;R:40460;i:1;R:40461;}s:38:"1232:achievements-userprofile-title-no";a:2:{i:0;R:40460;i:1;R:40461;}s:35:"1232:achievements-userprofile-title";a:2:{i:0;R:40460;i:1;R:40461;}s:45:"1232:achievements-userprofile-no-badges-owner";a:2:{i:0;R:40460;i:1;R:40461;}s:47:"1232:achievements-userprofile-no-badges-visitor";a:2:{i:0;R:40460;i:1;R:40461;}s:43:"1232:achievements-userprofile-profile-score";a:2:{i:0;R:40460;i:1;R:40461;}s:36:"1232:achievements-userprofile-ranked";a:2:{i:0;R:40460;i:1;R:40461;}s:25:"1232:admindashboard-title";a:2:{i:0;s:20:"wikia-admindashboard";i:1;R:40461;}s:26:"1232:admindashboard-header";a:2:{i:0;R:40693;i:1;R:40461;}s:32:"1232:admindashboard-toolbar-link";a:2:{i:0;R:40693;i:1;R:40461;}s:32:"1232:admindashboard-tab-advanced";a:2:{i:0;R:40693;i:1;R:40461;}s:31:"1232:admindashboard-tab-general";a:2:{i:0;R:40693;i:1;R:40461;}s:40:"1232:admindashboard-controls-wiki-header";a:2:{i:0;R:40693;i:1;R:40461;}s:48:"1232:admindashboard-control-theme-designer-label";a:2:{i:0;R:40693;i:1;R:40461;}s:50:"1232:admindashboard-control-theme-designer-tooltip";a:2:{i:0;R:40693;i:1;R:40461;}s:48:"1232:admindashboard-control-recent-changes-label";a:2:{i:0;R:40693;i:1;R:40461;}s:50:"1232:admindashboard-control-recent-changes-tooltip";a:2:{i:0;R:40693;i:1;R:40461;}s:48:"1232:admindashboard-control-top-navigation-label";a:2:{i:0;R:40693;i:1;R:40461;}s:50:"1232:admindashboard-control-top-navigation-tooltip";a:2:{i:0;R:40693;i:1;R:40461;}s:47:"1232:admindashboard-control-wiki-features-label";a:2:{i:0;R:40693;i:1;R:40461;}s:49:"1232:admindashboard-control-wiki-features-tooltip";a:2:{i:0;R:40693;i:1;R:40461;}s:53:"1232:admindashboard-control-page-layout-builder-label";a:2:{i:0;R:40693;i:1;R:40461;}s:55:"1232:admindashboard-control-page-layout-builder-tooltip";a:2:{i:0;R:40693;i:1;R:40461;}s:45:"1232:admindashboard-controls-community-header";a:2:{i:0;R:40693;i:1;R:40461;}s:43:"1232:admindashboard-control-user-list-label";a:2:{i:0;R:40693;i:1;R:40461;}s:45:"1232:admindashboard-control-user-list-tooltip";a:2:{i:0;R:40693;i:1;R:40461;}s:45:"1232:admindashboard-control-user-rights-label";a:2:{i:0;R:40693;i:1;R:40461;}s:47:"1232:admindashboard-control-user-rights-tooltip";a:2:{i:0;R:40693;i:1;R:40461;}s:46:"1232:admindashboard-control-group-rights-label";a:2:{i:0;R:40693;i:1;R:40461;}s:48:"1232:admindashboard-control-group-rights-tooltip";a:2:{i:0;R:40693;i:1;R:40461;}s:40:"1232:admindashboard-control-invite-label";a:2:{i:0;R:40693;i:1;R:40461;}s:42:"1232:admindashboard-control-invite-tooltip";a:2:{i:0;R:40693;i:1;R:40461;}s:38:"1232:admindashboard-control-help-label";a:2:{i:0;R:40693;i:1;R:40461;}s:40:"1232:admindashboard-control-help-tooltip";a:2:{i:0;R:40693;i:1;R:40461;}s:36:"1232:admindashboard-control-help-url";a:2:{i:0;R:40693;i:1;R:40461;}s:50:"1232:admindashboard-control-community-corner-label";a:2:{i:0;R:40693;i:1;R:40461;}s:52:"1232:admindashboard-control-community-corner-tooltip";a:2:{i:0;R:40693;i:1;R:40461;}s:43:"1232:admindashboard-controls-content-header";a:2:{i:0;R:40693;i:1;R:40461;}s:49:"1232:admindashboard-control-categories-list-label";a:2:{i:0;R:40693;i:1;R:40461;}s:51:"1232:admindashboard-control-categories-list-tooltip";a:2:{i:0;R:40693;i:1;R:40461;}s:42:"1232:admindashboard-control-add-page-label";a:2:{i:0;R:40693;i:1;R:40461;}s:44:"1232:admindashboard-control-add-page-tooltip";a:2:{i:0;R:40693;i:1;R:40461;}s:43:"1232:admindashboard-control-add-photo-label";a:2:{i:0;R:40693;i:1;R:40461;}s:45:"1232:admindashboard-control-add-photo-tooltip";a:2:{i:0;R:40693;i:1;R:40461;}s:42:"1232:admindashboard-control-add-blog-label";a:2:{i:0;R:40693;i:1;R:40461;}s:44:"1232:admindashboard-control-add-blog-tooltip";a:2:{i:0;R:40693;i:1;R:40461;}s:49:"1232:admindashboard-control-multiple-upload-label";a:2:{i:0;R:40693;i:1;R:40461;}s:51:"1232:admindashboard-control-multiple-upload-tooltip";a:2:{i:0;R:40693;i:1;R:40461;}s:28:"1232:quickstats-header-label";a:2:{i:0;s:31:"wikia-admindashboard-quickstats";i:1;R:40461;}s:27:"1232:quickstats-header-date";a:2:{i:0;R:40735;i:1;R:40461;}s:28:"1232:quickstats-header-views";a:2:{i:0;R:40735;i:1;R:40461;}s:28:"1232:quickstats-header-edits";a:2:{i:0;R:40735;i:1;R:40461;}s:29:"1232:quickstats-header-photos";a:2:{i:0;R:40735;i:1;R:40461;}s:28:"1232:quickstats-header-likes";a:2:{i:0;R:40735;i:1;R:40461;}s:27:"1232:quickstats-date-format";a:2:{i:0;R:40735;i:1;R:40461;}s:28:"1232:quickstats-totals-label";a:2:{i:0;R:40735;i:1;R:40461;}s:35:"1232:quickstats-see-more-stats-link";a:2:{i:0;R:40735;i:1;R:40461;}s:33:"1232:quickstats-number-shortening";a:2:{i:0;R:40735;i:1;R:40461;}s:42:"1232:quickstats-number-shortening-millions";a:2:{i:0;R:40735;i:1;R:40461;}s:42:"1232:quickstats-number-shortening-billions";a:2:{i:0;R:40735;i:1;R:40461;}s:33:"1232:quickstats-ga-broken-message";a:2:{i:0;R:40735;i:1;R:40461;}s:26:"1232:ajaxpoll-percentvotes";a:2:{i:0;s:14:"wikia-ajaxpoll";i:1;R:40461;}s:22:"1232:ajaxpoll-thankyou";a:2:{i:0;R:40749;i:1;R:40461;}s:19:"1232:ajaxpoll-error";a:2:{i:0;R:40749;i:1;R:40461;}s:21:"1232:ajaxpoll-summary";a:2:{i:0;R:40749;i:1;R:40461;}s:20:"1232:ajaxpoll-submit";a:2:{i:0;R:40749;i:1;R:40461;}s:20:"1232:ajaxpoll-closed";a:2:{i:0;R:40749;i:1;R:40461;}s:24:"1232:ajaxpoll-submitting";a:2:{i:0;R:40749;i:1;R:40461;}s:31:"1232:article-comments-anonymous";a:2:{i:0;s:21:"wikia-articlecomments";i:1;R:40461;}s:30:"1232:article-comments-comments";a:2:{i:0;R:40757;i:1;R:40461;}s:26:"1232:article-comments-post";a:2:{i:0;R:40757;i:1;R:40461;}s:28:"1232:article-comments-cancel";a:2:{i:0;R:40757;i:1;R:40461;}s:28:"1232:article-comments-delete";a:2:{i:0;R:40757;i:1;R:40461;}s:26:"1232:article-comments-edit";a:2:{i:0;R:40757;i:1;R:40461;}s:29:"1232:article-comments-history";a:2:{i:0;R:40757;i:1;R:40461;}s:27:"1232:article-comments-error";a:2:{i:0;R:40757;i:1;R:40461;}s:39:"1232:article-comments-undeleted-comment";a:2:{i:0;R:40757;i:1;R:40461;}s:32:"1232:article-comments-rc-comment";a:2:{i:0;R:40757;i:1;R:40461;}s:33:"1232:article-comments-rc-comments";a:2:{i:0;R:40757;i:1;R:40461;}s:29:"1232:article-comments-fblogin";a:2:{i:0;R:40757;i:1;R:40461;}s:31:"1232:article-comments-fbconnect";a:2:{i:0;R:40757;i:1;R:40461;}s:37:"1232:article-comments-rc-blog-comment";a:2:{i:0;R:40757;i:1;R:40461;}s:38:"1232:article-comments-rc-blog-comments";a:2:{i:0;R:40757;i:1;R:40461;}s:27:"1232:article-comments-login";a:2:{i:0;R:40757;i:1;R:40461;}s:30:"1232:article-comments-toc-item";a:2:{i:0;R:40757;i:1;R:40461;}s:40:"1232:article-comments-comment-cannot-add";a:2:{i:0;R:40757;i:1;R:40461;}s:26:"1232:article-comments-vote";a:2:{i:0;R:40757;i:1;R:40461;}s:27:"1232:article-comments-reply";a:2:{i:0;R:40757;i:1;R:40461;}s:30:"1232:article-comments-show-all";a:2:{i:0;R:40757;i:1;R:40461;}s:31:"1232:article-comments-prev-page";a:2:{i:0;R:40757;i:1;R:40461;}s:31:"1232:article-comments-next-page";a:2:{i:0;R:40757;i:1;R:40461;}s:33:"1232:article-comments-page-spacer";a:2:{i:0;R:40757;i:1;R:40461;}s:35:"1232:article-comments-delete-reason";a:2:{i:0;R:40757;i:1;R:40461;}s:35:"1232:article-comments-empty-comment";a:2:{i:0;R:40757;i:1;R:40461;}s:40:"1232:wikiamobile-article-comments-header";a:2:{i:0;R:40757;i:1;R:40461;}s:38:"1232:wikiamobile-article-comments-more";a:2:{i:0;R:40757;i:1;R:40461;}s:38:"1232:wikiamobile-article-comments-prev";a:2:{i:0;R:40757;i:1;R:40461;}s:38:"1232:wikiamobile-article-comments-none";a:2:{i:0;R:40757;i:1;R:40461;}s:38:"1232:wikiamobile-article-comments-view";a:2:{i:0;R:40757;i:1;R:40461;}s:41:"1232:wikiamobile-article-comments-replies";a:2:{i:0;R:40757;i:1;R:40461;}s:44:"1232:wikiamobile-article-comments-post-reply";a:2:{i:0;R:40757;i:1;R:40461;}s:38:"1232:wikiamobile-article-comments-post";a:2:{i:0;R:40757;i:1;R:40461;}s:45:"1232:wikiamobile-article-comments-placeholder";a:2:{i:0;R:40757;i:1;R:40461;}s:38:"1232:wikiamobile-article-comments-show";a:2:{i:0;R:40757;i:1;R:40461;}s:44:"1232:wikiamobile-article-comments-login-post";a:2:{i:0;R:40757;i:1;R:40461;}s:35:"1232:enotif_subject_article_comment";a:2:{i:0;R:40757;i:1;R:40461;}s:32:"1232:enotif_body_article_comment";a:2:{i:0;R:40757;i:1;R:40461;}s:37:"1232:enotif_body_article_comment-html";a:2:{i:0;R:40757;i:1;R:40461;}s:19:"1232:autocreatewiki";a:2:{i:0;s:20:"wikia-autocreatewiki";i:1;R:40461;}s:24:"1232:autocreatewiki-desc";a:2:{i:0;R:40798;i:1;R:40461;}s:38:"1232:autocreatewiki-page-title-default";a:2:{i:0;R:40798;i:1;R:40461;}s:38:"1232:autocreatewiki-page-title-answers";a:2:{i:0;R:40798;i:1;R:40461;}s:15:"1232:createwiki";a:2:{i:0;R:40798;i:1;R:40461;}s:29:"1232:autocreatewiki-chooseone";a:2:{i:0;R:40798;i:1;R:40461;}s:28:"1232:autocreatewiki-required";a:2:{i:0;R:40798;i:1;R:40461;}s:31:"1232:autocreatewiki-web-address";a:2:{i:0;R:40798;i:1;R:40461;}s:35:"1232:autocreatewiki-category-select";a:2:{i:0;R:40798;i:1;R:40461;}s:32:"1232:autocreatewiki-language-top";a:2:{i:0;R:40798;i:1;R:40461;}s:32:"1232:autocreatewiki-language-all";a:2:{i:0;R:40798;i:1;R:40461;}s:29:"1232:autocreatewiki-birthdate";a:2:{i:0;R:40798;i:1;R:40461;}s:31:"1232:autocreatewiki-blurry-word";a:2:{i:0;R:40798;i:1;R:40461;}s:28:"1232:autocreatewiki-remember";a:2:{i:0;R:40798;i:1;R:40461;}s:34:"1232:autocreatewiki-create-account";a:2:{i:0;R:40798;i:1;R:40461;}s:24:"1232:autocreatewiki-done";a:2:{i:0;R:40798;i:1;R:40461;}s:25:"1232:autocreatewiki-error";a:2:{i:0;R:40798;i:1;R:40461;}s:40:"1232:autocreatewiki-haveaccount-question";a:2:{i:0;R:40798;i:1;R:40461;}s:41:"1232:autocreatewiki-success-title-default";a:2:{i:0;R:40798;i:1;R:40461;}s:41:"1232:autocreatewiki-success-title-answers";a:2:{i:0;R:40798;i:1;R:40461;}s:36:"1232:autocreatewiki-success-subtitle";a:2:{i:0;R:40798;i:1;R:40461;}s:44:"1232:autocreatewiki-success-has-been-created";a:2:{i:0;R:40798;i:1;R:40461;}s:39:"1232:autocreatewiki-success-get-started";a:2:{i:0;R:40798;i:1;R:40461;}s:31:"1232:autocreatewiki-info-domain";a:2:{i:0;R:40798;i:1;R:40461;}s:30:"1232:autocreatewiki-info-topic";a:2:{i:0;R:40798;i:1;R:40461;}s:41:"1232:autocreatewiki-info-category-default";a:2:{i:0;R:40798;i:1;R:40461;}s:41:"1232:autocreatewiki-info-category-answers";a:2:{i:0;R:40798;i:1;R:40461;}s:33:"1232:autocreatewiki-info-language";a:2:{i:0;R:40798;i:1;R:40461;}s:38:"1232:autocreatewiki-info-email-address";a:2:{i:0;R:40798;i:1;R:40461;}s:33:"1232:autocreatewiki-info-realname";a:2:{i:0;R:40798;i:1;R:40461;}s:34:"1232:autocreatewiki-info-birthdate";a:2:{i:0;R:40798;i:1;R:40461;}s:36:"1232:autocreatewiki-info-blurry-word";a:2:{i:0;R:40798;i:1;R:40461;}s:36:"1232:autocreatewiki-info-terms-agree";a:2:{i:0;R:40798;i:1;R:40461;}s:39:"1232:autocreatewiki-info-staff-username";a:2:{i:0;R:40798;i:1;R:40461;}s:34:"1232:autocreatewiki-title-template";a:2:{i:0;R:40798;i:1;R:40461;}s:27:"1232:autocreatewiki-tagline";a:2:{i:0;R:40798;i:1;R:40461;}s:29:"1232:autocreatewiki-limit-day";a:2:{i:0;R:40798;i:1;R:40461;}s:34:"1232:autocreatewiki-limit-creation";a:2:{i:0;R:40798;i:1;R:40461;}s:31:"1232:autocreatewiki-empty-field";a:2:{i:0;R:40798;i:1;R:40461;}s:28:"1232:autocreatewiki-bad-name";a:2:{i:0;R:40798;i:1;R:40461;}s:36:"1232:autocreatewiki-invalid-wikiname";a:2:{i:0;R:40798;i:1;R:40461;}s:34:"1232:autocreatewiki-violate-policy";a:2:{i:0;R:40798;i:1;R:40461;}s:30:"1232:autocreatewiki-name-taken";a:2:{i:0;R:40798;i:1;R:40461;}s:34:"1232:autocreatewiki-name-too-short";a:2:{i:0;R:40798;i:1;R:40461;}s:33:"1232:autocreatewiki-name-too-long";a:2:{i:0;R:40798;i:1;R:40461;}s:33:"1232:autocreatewiki-similar-wikis";a:2:{i:0;R:40798;i:1;R:40461;}s:36:"1232:autocreatewiki-invalid-username";a:2:{i:0;R:40798;i:1;R:40461;}s:33:"1232:autocreatewiki-busy-username";a:2:{i:0;R:40798;i:1;R:40461;}s:36:"1232:autocreatewiki-blocked-username";a:2:{i:0;R:40798;i:1;R:40461;}s:36:"1232:autocreatewiki-user-notloggedin";a:2:{i:0;R:40798;i:1;R:40461;}s:34:"1232:autocreatewiki-empty-language";a:2:{i:0;R:40798;i:1;R:40461;}s:34:"1232:autocreatewiki-empty-category";a:2:{i:0;R:40798;i:1;R:40461;}s:34:"1232:autocreatewiki-empty-wikiname";a:2:{i:0;R:40798;i:1;R:40461;}s:34:"1232:autocreatewiki-empty-username";a:2:{i:0;R:40798;i:1;R:40461;}s:34:"1232:autocreatewiki-empty-password";a:2:{i:0;R:40798;i:1;R:40461;}s:41:"1232:autocreatewiki-empty-retype-password";a:2:{i:0;R:40798;i:1;R:40461;}s:34:"1232:autocreatewiki-category-label";a:2:{i:0;R:40798;i:1;R:40461;}s:34:"1232:autocreatewiki-category-other";a:2:{i:0;R:40798;i:1;R:40461;}s:32:"1232:autocreatewiki-set-username";a:2:{i:0;R:40798;i:1;R:40461;}s:36:"1232:autocreatewiki-invalid-category";a:2:{i:0;R:40798;i:1;R:40461;}s:36:"1232:autocreatewiki-invalid-language";a:2:{i:0;R:40798;i:1;R:40461;}s:41:"1232:autocreatewiki-invalid-retype-passwd";a:2:{i:0;R:40798;i:1;R:40461;}s:36:"1232:autocreatewiki-invalid-birthday";a:2:{i:0;R:40798;i:1;R:40461;}s:34:"1232:autocreatewiki-limit-birthday";a:2:{i:0;R:40798;i:1;R:40461;}s:29:"1232:autocreatewiki-log-title";a:2:{i:0;R:40798;i:1;R:40461;}s:25:"1232:autocreatewiki-step0";a:2:{i:0;R:40798;i:1;R:40461;}s:31:"1232:autocreatewiki-stepdefault";a:2:{i:0;R:40798;i:1;R:40461;}s:32:"1232:autocreatewiki-errordefault";a:2:{i:0;R:40798;i:1;R:40461;}s:25:"1232:autocreatewiki-step1";a:2:{i:0;R:40798;i:1;R:40461;}s:25:"1232:autocreatewiki-step2";a:2:{i:0;R:40798;i:1;R:40461;}s:25:"1232:autocreatewiki-step3";a:2:{i:0;R:40798;i:1;R:40461;}s:25:"1232:autocreatewiki-step4";a:2:{i:0;R:40798;i:1;R:40461;}s:25:"1232:autocreatewiki-step5";a:2:{i:0;R:40798;i:1;R:40461;}s:25:"1232:autocreatewiki-step6";a:2:{i:0;R:40798;i:1;R:40461;}s:25:"1232:autocreatewiki-step7";a:2:{i:0;R:40798;i:1;R:40461;}s:25:"1232:autocreatewiki-step8";a:2:{i:0;R:40798;i:1;R:40461;}s:25:"1232:autocreatewiki-step9";a:2:{i:0;R:40798;i:1;R:40461;}s:26:"1232:autocreatewiki-step10";a:2:{i:0;R:40798;i:1;R:40461;}s:26:"1232:autocreatewiki-step11";a:2:{i:0;R:40798;i:1;R:40461;}s:28:"1232:autocreatewiki-redirect";a:2:{i:0;R:40798;i:1;R:40461;}s:34:"1232:autocreatewiki-congratulation";a:2:{i:0;R:40798;i:1;R:40461;}s:35:"1232:autocreatewiki-welcometalk-log";a:2:{i:0;R:40798;i:1;R:40461;}s:39:"1232:autocreatewiki-regex-error-comment";a:2:{i:0;R:40798;i:1;R:40461;}s:31:"1232:autocreatewiki-step2-error";a:2:{i:0;R:40798;i:1;R:40461;}s:31:"1232:autocreatewiki-step3-error";a:2:{i:0;R:40798;i:1;R:40461;}s:31:"1232:autocreatewiki-step6-error";a:2:{i:0;R:40798;i:1;R:40461;}s:31:"1232:autocreatewiki-step7-error";a:2:{i:0;R:40798;i:1;R:40461;}s:32:"1232:requestwiki-filter-language";a:2:{i:0;R:40798;i:1;R:40461;}s:34:"1232:autocreatewiki-protect-reason";a:2:{i:0;R:40798;i:1;R:40461;}s:34:"1232:autocreatewiki-welcomesubject";a:2:{i:0;R:40798;i:1;R:40461;}s:31:"1232:autocreatewiki-welcomebody";a:2:{i:0;R:40798;i:1;R:40461;}s:31:"1232:autocreatewiki-welcometalk";a:2:{i:0;R:40798;i:1;R:40461;}s:13:"1232:newwikis";a:2:{i:0;R:40798;i:1;R:40461;}s:18:"1232:newwikisstart";a:2:{i:0;R:40798;i:1;R:40461;}s:36:"1232:autocreatewiki-reminder-subject";a:2:{i:0;R:40798;i:1;R:40461;}s:33:"1232:autocreatewiki-reminder-body";a:2:{i:0;R:40798;i:1;R:40461;}s:38:"1232:autocreatewiki-reminder-body-html";a:2:{i:0;R:40798;i:1;R:40461;}s:35:"1232:autocreatewiki-subname-answers";a:2:{i:0;R:40798;i:1;R:40461;}s:37:"1232:autocreatewiki-language-top-list";a:2:{i:0;R:40798;i:1;R:40461;}s:17:"1232:wikiadoption";a:2:{i:0;s:27:"wikia-automaticwikiadoption";i:1;R:40461;}s:22:"1232:wikiadoption-desc";a:2:{i:0;R:40898;i:1;R:40461;}s:24:"1232:wikiadoption-header";a:2:{i:0;R:40898;i:1;R:40461;}s:30:"1232:wikiadoption-button-adopt";a:2:{i:0;R:40898;i:1;R:40461;}s:31:"1232:wikiadoption-adopt-inquiry";a:2:{i:0;R:40898;i:1;R:40461;}s:29:"1232:wikiadoption-description";a:2:{i:0;R:40898;i:1;R:40461;}s:34:"1232:wikiadoption-know-more-header";a:2:{i:0;R:40898;i:1;R:40461;}s:39:"1232:wikiadoption-know-more-description";a:2:{i:0;R:40898;i:1;R:40461;}s:36:"1232:wikiadoption-adoption-successed";a:2:{i:0;R:40898;i:1;R:40461;}s:33:"1232:wikiadoption-adoption-failed";a:2:{i:0;R:40898;i:1;R:40461;}s:29:"1232:wikiadoption-not-allowed";a:2:{i:0;R:40898;i:1;R:40461;}s:34:"1232:wikiadoption-not-enough-edits";a:2:{i:0;R:40898;i:1;R:40461;}s:34:"1232:wikiadoption-adopted-recently";a:2:{i:0;R:40898;i:1;R:40461;}s:28:"1232:wikiadoption-log-reason";a:2:{i:0;R:40898;i:1;R:40461;}s:30:"1232:wikiadoption-notification";a:2:{i:0;R:40898;i:1;R:40461;}s:36:"1232:wikiadoption-mail-first-subject";a:2:{i:0;R:40898;i:1;R:40461;}s:36:"1232:wikiadoption-mail-first-content";a:2:{i:0;R:40898;i:1;R:40461;}s:41:"1232:wikiadoption-mail-first-content-html";a:2:{i:0;R:40898;i:1;R:40461;}s:37:"1232:wikiadoption-mail-second-subject";a:2:{i:0;R:40898;i:1;R:40461;}s:37:"1232:wikiadoption-mail-second-content";a:2:{i:0;R:40898;i:1;R:40461;}s:42:"1232:wikiadoption-mail-second-content-html";a:2:{i:0;R:40898;i:1;R:40461;}s:39:"1232:wikiadoption-mail-adoption-subject";a:2:{i:0;R:40898;i:1;R:40461;}s:39:"1232:wikiadoption-mail-adoption-content";a:2:{i:0;R:40898;i:1;R:40461;}s:44:"1232:wikiadoption-mail-adoption-content-html";a:2:{i:0;R:40898;i:1;R:40461;}s:22:"1232:tog-adoptionmails";a:2:{i:0;R:40898;i:1;R:40461;}s:25:"1232:tog-adoptionmails-v2";a:2:{i:0;R:40898;i:1;R:40461;}s:28:"1232:wikiadoption-pref-label";a:2:{i:0;R:40898;i:1;R:40461;}s:32:"1232:wikiadoption-welcome-header";a:2:{i:0;R:40898;i:1;R:40461;}s:30:"1232:wikiadoption-welcome-body";a:2:{i:0;R:40898;i:1;R:40461;}s:20:"1232:batchuserrights";a:2:{i:0;s:21:"wikia-batchuserrights";i:1;R:40461;}s:25:"1232:batchuserrights-desc";a:2:{i:0;R:40928;i:1;R:40461;}s:26:"1232:batchuserrights-names";a:2:{i:0;R:40928;i:1;R:40461;}s:26:"1232:batchuserrights-intro";a:2:{i:0;R:40928;i:1;R:40461;}s:43:"1232:batchuserrights-single-progress-update";a:2:{i:0;R:40928;i:1;R:40461;}s:31:"1232:batchuserrights-add-groups";a:2:{i:0;R:40928;i:1;R:40461;}s:35:"1232:batchuserrights-userload-error";a:2:{i:0;R:40928;i:1;R:40461;}s:30:"1232:batchuserrights-no-groups";a:2:{i:0;R:40928;i:1;R:40461;}s:19:"1232:createblogpage";a:2:{i:0;s:11:"wikia-blogs";i:1;R:40461;}s:26:"1232:createbloglistingpage";a:2:{i:0;R:40937;i:1;R:40461;}s:21:"1232:create-blog-spam";a:2:{i:0;R:40937;i:1;R:40461;}s:26:"1232:create-blog-cant-edit";a:2:{i:0;R:40937;i:1;R:40461;}s:30:"1232:create-blog-post-category";a:2:{i:0;R:40937;i:1;R:40461;}s:35:"1232:create-blog-post-category-body";a:2:{i:0;R:40937;i:1;R:40461;}s:34:"1232:create-blog-post-category-log";a:2:{i:0;R:40937;i:1;R:40461;}s:36:"1232:create-blog-post-recent-listing";a:2:{i:0;R:40937;i:1;R:40461;}s:42:"1232:create-blog-post-recent-listing-title";a:2:{i:0;R:40937;i:1;R:40461;}s:40:"1232:create-blog-post-recent-listing-log";a:2:{i:0;R:40937;i:1;R:40461;}s:27:"1232:create-blog-post-title";a:2:{i:0;R:40937;i:1;R:40461;}s:32:"1232:create-blog-post-title-edit";a:2:{i:0;R:40937;i:1;R:40461;}s:27:"1232:create-blog-form-title";a:2:{i:0;R:40937;i:1;R:40461;}s:31:"1232:create-blog-form-post-text";a:2:{i:0;R:40937;i:1;R:40461;}s:26:"1232:create-blog-form-info";a:2:{i:0;R:40937;i:1;R:40461;}s:32:"1232:create-blog-form-post-title";a:2:{i:0;R:40937;i:1;R:40461;}s:34:"1232:create-blog-empty-title-error";a:2:{i:0;R:40937;i:1;R:40461;}s:33:"1232:create-blog-empty-post-error";a:2:{i:0;R:40937;i:1;R:40461;}s:30:"1232:create-blog-empty-article";a:2:{i:0;R:40937;i:1;R:40461;}s:34:"1232:create-blog-empty-article-log";a:2:{i:0;R:40937;i:1;R:40461;}s:36:"1232:create-blog-invalid-title-error";a:2:{i:0;R:40937;i:1;R:40461;}s:32:"1232:create-listing-confirm-info";a:2:{i:0;R:40937;i:1;R:40461;}s:25:"1232:create-blog-no-login";a:2:{i:0;R:40937;i:1;R:40461;}s:31:"1232:create-blog-login-required";a:2:{i:0;R:40937;i:1;R:40461;}s:33:"1232:create-blog-categories-title";a:2:{i:0;R:40937;i:1;R:40461;}s:37:"1232:create-blog-categories-textinput";a:2:{i:0;R:40937;i:1;R:40461;}s:34:"1232:create-blog-categories-submit";a:2:{i:0;R:40937;i:1;R:40461;}s:21:"1232:create-blog-save";a:2:{i:0;R:40937;i:1;R:40461;}s:24:"1232:create-blog-preview";a:2:{i:0;R:40937;i:1;R:40461;}s:24:"1232:create-blog-updated";a:2:{i:0;R:40937;i:1;R:40461;}s:34:"1232:create-blog-permission-denied";a:2:{i:0;R:40937;i:1;R:40461;}s:39:"1232:create-blog-article-already-exists";a:2:{i:0;R:40937;i:1;R:40461;}s:30:"1232:create-blog-listing-title";a:2:{i:0;R:40937;i:1;R:40461;}s:35:"1232:create-blog-listing-form-title";a:2:{i:0;R:40937;i:1;R:40461;}s:34:"1232:create-blog-listing-form-info";a:2:{i:0;R:40937;i:1;R:40461;}s:35:"1232:create-blog-listing-page-title";a:2:{i:0;R:40937;i:1;R:40461;}s:32:"1232:create-blog-listing-preview";a:2:{i:0;R:40937;i:1;R:40461;}s:32:"1232:create-blog-listing-authors";a:2:{i:0;R:40937;i:1;R:40461;}s:51:"1232:create-blog-listing-blog-post-categories-title";a:2:{i:0;R:40937;i:1;R:40461;}s:46:"1232:create-blog-listing-page-categories-title";a:2:{i:0;R:40937;i:1;R:40461;}s:32:"1232:create-blog-listing-matches";a:2:{i:0;R:40937;i:1;R:40461;}s:42:"1232:create-blog-listing-matches-calculate";a:2:{i:0;R:40937;i:1;R:40461;}s:44:"1232:create-blog-listing-matches-recalculate";a:2:{i:0;R:40937;i:1;R:40461;}s:37:"1232:create-blog-listing-matches-info";a:2:{i:0;R:40937;i:1;R:40461;}s:31:"1232:create-blog-listing-sortby";a:2:{i:0;R:40937;i:1;R:40461;}s:36:"1232:create-blog-listing-sortby-date";a:2:{i:0;R:40937;i:1;R:40461;}s:38:"1232:create-blog-listing-sortby-author";a:2:{i:0;R:40937;i:1;R:40461;}s:40:"1232:create-blog-listing-sortby-comments";a:2:{i:0;R:40937;i:1;R:40461;}s:38:"1232:create-blog-listing-output-as-box";a:2:{i:0;R:40937;i:1;R:40461;}s:39:"1232:create-blog-listing-output-as-page";a:2:{i:0;R:40937;i:1;R:40461;}s:58:"1232:create-blog-listing-tag-format-not-recognized-on-page";a:2:{i:0;R:40937;i:1;R:40461;}s:16:"1232:blog-header";a:2:{i:0;R:40937;i:1;R:40461;}s:19:"1232:blog-subheader";a:2:{i:0;R:40937;i:1;R:40461;}s:23:"1232:blog-subheader-all";a:2:{i:0;R:40937;i:1;R:40461;}s:22:"1232:blog-invalidparam";a:2:{i:0;R:40937;i:1;R:40461;}s:20:"1232:blog-emptyparam";a:2:{i:0;R:40937;i:1;R:40461;}s:22:"1232:blog-defaulttitle";a:2:{i:0;R:40937;i:1;R:40461;}s:25:"1232:blog-continuereading";a:2:{i:0;R:40937;i:1;R:40461;}s:22:"1232:blog-readfullpost";a:2:{i:0;R:40937;i:1;R:40461;}s:20:"1232:blog-olderposts";a:2:{i:0;R:40937;i:1;R:40461;}s:20:"1232:blog-newerposts";a:2:{i:0;R:40937;i:1;R:40461;}s:21:"1232:blog-nbrcomments";a:2:{i:0;R:40937;i:1;R:40461;}s:21:"1232:blog-nopostfound";a:2:{i:0;R:40937;i:1;R:40461;}s:18:"1232:blog-writeone";a:2:{i:0;R:40937;i:1;R:40461;}s:25:"1232:blog-empty-user-blog";a:2:{i:0;R:40937;i:1;R:40461;}s:21:"1232:blog-last-edited";a:2:{i:0;R:40937;i:1;R:40461;}s:15:"1232:blog-added";a:2:{i:0;R:40937;i:1;R:40461;}s:16:"1232:blog-edited";a:2:{i:0;R:40937;i:1;R:40461;}s:14:"1232:blog-page";a:2:{i:0;R:40937;i:1;R:40461;}s:23:"1232:blog-zero-comments";a:2:{i:0;R:40937;i:1;R:40461;}s:22:"1232:blog-comment-post";a:2:{i:0;R:40937;i:1;R:40461;}s:18:"1232:blog-comments";a:2:{i:0;R:40937;i:1;R:40461;}s:21:"1232:blog-rc-comments";a:2:{i:0;R:40937;i:1;R:40461;}s:22:"1232:blog-comments-new";a:2:{i:0;R:40937;i:1;R:40461;}s:23:"1232:blog-comments-save";a:2:{i:0;R:40937;i:1;R:40461;}s:24:"1232:blog-comments-label";a:2:{i:0;R:40937;i:1;R:40461;}s:22:"1232:blog-voting-label";a:2:{i:0;R:40937;i:1;R:40461;}s:23:"1232:blog-comments-info";a:2:{i:0;R:40937;i:1;R:40461;}s:24:"1232:blog-comments-login";a:2:{i:0;R:40937;i:1;R:40461;}s:22:"1232:blog-comments-dsc";a:2:{i:0;R:40937;i:1;R:40461;}s:22:"1232:blog-comments-asc";a:2:{i:0;R:40937;i:1;R:40461;}s:28:"1232:blog-comments-anonymous";a:2:{i:0;R:40937;i:1;R:40461;}s:24:"1232:blog-comment-delete";a:2:{i:0;R:40937;i:1;R:40461;}s:22:"1232:blog-comment-hide";a:2:{i:0;R:40937;i:1;R:40461;}s:24:"1232:blog-comment-unhide";a:2:{i:0;R:40937;i:1;R:40461;}s:25:"1232:blog-comment-history";a:2:{i:0;R:40937;i:1;R:40461;}s:22:"1232:blog-comment-edit";a:2:{i:0;R:40937;i:1;R:40461;}s:23:"1232:blog-comment-error";a:2:{i:0;R:40937;i:1;R:40461;}s:28:"1232:blog-comment-cannot-add";a:2:{i:0;R:40937;i:1;R:40461;}s:25:"1232:blog-avatar-defaults";a:2:{i:0;R:40937;i:1;R:40461;}s:18:"1232:blug-cut-sign";a:2:{i:0;R:40937;i:1;R:40461;}s:34:"1232:blog-avatar-preferences-title";a:2:{i:0;R:40937;i:1;R:40461;}s:19:"1232:blog-page-rate";a:2:{i:0;R:40937;i:1;R:40461;}s:27:"1232:blog-create-post-label";a:2:{i:0;R:40937;i:1;R:40461;}s:22:"1232:blog-create-label";a:2:{i:0;R:40937;i:1;R:40461;}s:27:"1232:blog-create-next-label";a:2:{i:0;R:40937;i:1;R:40461;}s:30:"1232:blog-create-listing-label";a:2:{i:0;R:40937;i:1;R:40461;}s:23:"1232:blog-refresh-label";a:2:{i:0;R:40937;i:1;R:40461;}s:23:"1232:blog-widgets-label";a:2:{i:0;R:40937;i:1;R:40461;}s:27:"1232:blog-listing-zero-self";a:2:{i:0;R:40937;i:1;R:40461;}s:28:"1232:blog-listing-zero-other";a:2:{i:0;R:40937;i:1;R:40461;}s:25:"1232:blog-listing-created";a:2:{i:0;R:40937;i:1;R:40461;}s:18:"1232:blog-userblog";a:2:{i:0;R:40937;i:1;R:40461;}s:22:"1232:blog-fromsitename";a:2:{i:0;R:40937;i:1;R:40461;}s:24:"1232:blogs-reportproblem";a:2:{i:0;R:40937;i:1;R:40461;}s:25:"1232:blogs-comment-hidden";a:2:{i:0;R:40937;i:1;R:40461;}s:31:"1232:right-blog-comments-toggle";a:2:{i:0;R:40937;i:1;R:40461;}s:31:"1232:right-blog-comments-delete";a:2:{i:0;R:40937;i:1;R:40461;}s:29:"1232:right-blog-articles-edit";a:2:{i:0;R:40937;i:1;R:40461;}s:29:"1232:right-blog-articles-move";a:2:{i:0;R:40937;i:1;R:40461;}s:28:"1232:blogs-undeleted-comment";a:2:{i:0;R:40937;i:1;R:40461;}s:21:"1232:blogs-recent-url";a:2:{i:0;R:40937;i:1;R:40461;}s:26:"1232:blogs-recent-url-text";a:2:{i:0;R:40937;i:1;R:40461;}s:14:"1232:blog-desc";a:2:{i:0;R:40937;i:1;R:40461;}s:27:"1232:blog-movepage-badtitle";a:2:{i:0;R:40937;i:1;R:40461;}s:25:"1232:blog-comment-sending";a:2:{i:0;R:40937;i:1;R:40461;}s:12:"1232:blog-by";a:2:{i:0;R:40937;i:1;R:40461;}s:25:"1232:campfire-page-header";a:2:{i:0;s:14:"wikia-campfire";i:1;R:40461;}s:28:"1232:campfire-licensed-under";a:2:{i:0;R:41055;i:1;R:40461;}s:33:"1232:category-exhibition-sorttype";a:2:{i:0;s:24:"wikia-categoryexhibition";i:1;R:40461;}s:37:"1232:category-exhibition-alphabetical";a:2:{i:0;R:41058;i:1;R:40461;}s:36:"1232:category-exhibition-mostvisited";a:2:{i:0;R:41058;i:1;R:40461;}s:36:"1232:category-exhibition-recentedits";a:2:{i:0;R:41058;i:1;R:40461;}s:36:"1232:category-exhibition-page-header";a:2:{i:0;R:41058;i:1;R:40461;}s:45:"1232:category-exhibition-subcategories-header";a:2:{i:0;R:41058;i:1;R:40461;}s:37:"1232:category-exhibition-media-header";a:2:{i:0;R:41058;i:1;R:40461;}s:37:"1232:category-exhibition-blogs-header";a:2:{i:0;R:41058;i:1;R:40461;}s:36:"1232:category-exhibition-display-old";a:2:{i:0;R:41058;i:1;R:40461;}s:36:"1232:category-exhibition-display-new";a:2:{i:0;R:41058;i:1;R:40461;}s:27:"1232:categorygalleries-desc";a:2:{i:0;s:23:"wikia-categorygalleries";i:1;R:40461;}s:24:"1232:categoryselect-desc";a:2:{i:0;s:20:"wikia-categoryselect";i:1;R:40461;}s:29:"1232:categoryselect-code-view";a:2:{i:0;R:41071;i:1;R:40461;}s:41:"1232:categoryselect-code-view-placeholder";a:2:{i:0;R:41071;i:1;R:40461;}s:31:"1232:categoryselect-visual-view";a:2:{i:0;R:41071;i:1;R:40461;}s:35:"1232:categoryselect-infobox-caption";a:2:{i:0;R:41071;i:1;R:40461;}s:36:"1232:categoryselect-infobox-category";a:2:{i:0;R:41071;i:1;R:40461;}s:35:"1232:categoryselect-infobox-sortkey";a:2:{i:0;R:41071;i:1;R:40461;}s:38:"1232:categoryselect-addcategory-button";a:2:{i:0;R:41071;i:1;R:40461;}s:36:"1232:categoryselect-addcategory-edit";a:2:{i:0;R:41071;i:1;R:40461;}s:32:"1232:categoryselect-suggest-hint";a:2:{i:0;R:41071;i:1;R:40461;}s:27:"1232:categoryselect-tooltip";a:2:{i:0;R:41071;i:1;R:40461;}s:36:"1232:categoryselect-unhandled-syntax";a:2:{i:0;R:41071;i:1;R:40461;}s:32:"1232:categoryselect-edit-summary";a:2:{i:0;R:41071;i:1;R:40461;}s:30:"1232:categoryselect-empty-name";a:2:{i:0;R:41071;i:1;R:40461;}s:31:"1232:categoryselect-button-save";a:2:{i:0;R:41071;i:1;R:40461;}s:33:"1232:categoryselect-button-cancel";a:2:{i:0;R:41071;i:1;R:40461;}s:35:"1232:categoryselect-error-not-exist";a:2:{i:0;R:41071;i:1;R:40461;}s:37:"1232:categoryselect-error-user-rights";a:2:{i:0;R:41071;i:1;R:40461;}s:35:"1232:categoryselect-error-db-locked";a:2:{i:0;R:41071;i:1;R:40461;}s:30:"1232:categoryselect-edit-abort";a:2:{i:0;R:41071;i:1;R:40461;}s:30:"1232:tog-disablecategoryselect";a:2:{i:0;R:41071;i:1;R:40461;}s:33:"1232:tog-disablecategoryselect-v2";a:2:{i:0;R:41071;i:1;R:40461;}s:27:"1232:centralhelpsearch-desc";a:2:{i:0;s:23:"wikia-centralhelpsearch";i:1;R:40461;}s:34:"1232:centralhelpsearch-placeholder";a:2:{i:0;R:41094;i:1;R:40461;}s:9:"1232:chat";a:2:{i:0;s:10:"wikia-chat";i:1;R:40461;}s:14:"1232:chat-desc";a:2:{i:0;R:41097;i:1;R:40461;}s:18:"1232:chat-no-login";a:2:{i:0;R:41097;i:1;R:40461;}s:23:"1232:chat-no-login-text";a:2:{i:0;R:41097;i:1;R:40461;}s:23:"1232:chat-default-topic";a:2:{i:0;R:41097;i:1;R:40461;}s:21:"1232:chat-user-joined";a:2:{i:0;R:41097;i:1;R:40461;}s:19:"1232:chat-read-only";a:2:{i:0;R:41097;i:1;R:40461;}s:21:"1232:chat-user-parted";a:2:{i:0;R:41097;i:1;R:40461;}s:22:"1232:chat-user-blocked";a:2:{i:0;R:41097;i:1;R:40461;}s:20:"1232:chat-user-allow";a:2:{i:0;R:41097;i:1;R:40461;}s:29:"1232:chat-user-was-kickbanned";a:2:{i:0;R:41097;i:1;R:40461;}s:39:"1232:chat-user-permanently-disconnected";a:2:{i:0;R:41097;i:1;R:40461;}s:38:"1232:chat-inlinealert-a-made-b-chatmod";a:2:{i:0;R:41097;i:1;R:40461;}s:44:"1232:chat-err-connected-from-another-browser";a:2:{i:0;R:41097;i:1;R:40461;}s:42:"1232:chat-err-communicating-with-mediawiki";a:2:{i:0;R:41097;i:1;R:40461;}s:32:"1232:chat-ban-cant-ban-moderator";a:2:{i:0;R:41097;i:1;R:40461;}s:28:"1232:chat-ban-already-banned";a:2:{i:0;R:41097;i:1;R:40461;}s:33:"1232:chat-ban-you-need-permission";a:2:{i:0;R:41097;i:1;R:40461;}s:36:"1232:chat-missing-required-parameter";a:2:{i:0;R:41097;i:1;R:40461;}s:29:"1232:chat-err-already-chatmod";a:2:{i:0;R:41097;i:1;R:40461;}s:42:"1232:chat-err-no-permission-to-add-chatmod";a:2:{i:0;R:41097;i:1;R:40461;}s:40:"1232:chat-userrightslog-a-made-b-chatmod";a:2:{i:0;R:41097;i:1;R:40461;}s:38:"1232:chat-err-invalid-username-chatmod";a:2:{i:0;R:41097;i:1;R:40461;}s:24:"1232:chat-you-are-banned";a:2:{i:0;R:41097;i:1;R:40461;}s:29:"1232:chat-you-are-banned-text";a:2:{i:0;R:41097;i:1;R:40461;}s:34:"1232:chat-room-is-not-on-this-wiki";a:2:{i:0;R:41097;i:1;R:40461;}s:25:"1232:chat-kick-log-reason";a:2:{i:0;R:41097;i:1;R:40461;}s:18:"1232:chat-headline";a:2:{i:0;R:41097;i:1;R:40461;}s:14:"1232:chat-live";a:2:{i:0;R:41097;i:1;R:40461;}s:22:"1232:chat-start-a-chat";a:2:{i:0;R:41097;i:1;R:40461;}s:19:"1232:chat-whos-here";a:2:{i:0;R:41097;i:1;R:40461;}s:23:"1232:chat-join-the-chat";a:2:{i:0;R:41097;i:1;R:40461;}s:20:"1232:chat-edit-count";a:2:{i:0;R:41097;i:1;R:40461;}s:22:"1232:chat-member-since";a:2:{i:0;R:41097;i:1;R:40461;}s:31:"1232:chat-great-youre-logged-in";a:2:{i:0;R:41097;i:1;R:40461;}s:27:"1232:chat-user-manu-profile";a:2:{i:0;R:41097;i:1;R:40461;}s:28:"1232:chat-user-manu-contribs";a:2:{i:0;R:41097;i:1;R:40461;}s:27:"1232:chat-user-manu-private";a:2:{i:0;R:41097;i:1;R:40461;}s:33:"1232:chat-user-manu-give-chat-mod";a:2:{i:0;R:41097;i:1;R:40461;}s:27:"1232:chat-user-manu-kickban";a:2:{i:0;R:41097;i:1;R:40461;}s:33:"1232:chat-user-manu-private-block";a:2:{i:0;R:41097;i:1;R:40461;}s:33:"1232:chat-user-manu-private-allow";a:2:{i:0;R:41097;i:1;R:40461;}s:33:"1232:chat-user-manu-private-close";a:2:{i:0;R:41097;i:1;R:40461;}s:26:"1232:chat-private-headline";a:2:{i:0;R:41097;i:1;R:40461;}s:24:"1232:right-chatmoderator";a:2:{i:0;R:41097;i:1;R:40461;}s:24:"1232:group-chatmoderator";a:2:{i:0;R:41097;i:1;R:40461;}s:31:"1232:group-chatmoderator-member";a:2:{i:0;R:41097;i:1;R:40461;}s:28:"1232:grouppage-chatmoderator";a:2:{i:0;R:41097;i:1;R:40461;}s:25:"1232:group-bannedfromchat";a:2:{i:0;R:41097;i:1;R:40461;}s:32:"1232:group-bannedfromchat-member";a:2:{i:0;R:41097;i:1;R:40461;}s:29:"1232:grouppage-bannedfromchat";a:2:{i:0;R:41097;i:1;R:40461;}s:14:"1232:emoticons";a:2:{i:0;R:41097;i:1;R:40461;}s:15:"1232:cloakcheck";a:2:{i:0;s:16:"wikia-cloakcheck";i:1;R:40461;}s:20:"1232:cloakcheck-desc";a:2:{i:0;R:41150;i:1;R:40461;}s:21:"1232:right-cloakcheck";a:2:{i:0;R:41150;i:1;R:40461;}s:29:"1232:cloakcheck-form-username";a:2:{i:0;R:41150;i:1;R:40461;}s:26:"1232:cloakcheck-form-check";a:2:{i:0;R:41150;i:1;R:40461;}s:31:"1232:cloakcheck-form-check-self";a:2:{i:0;R:41150;i:1;R:40461;}s:29:"1232:cloakcheck-process-empty";a:2:{i:0;R:41150;i:1;R:40461;}s:32:"1232:cloakcheck-process-notexist";a:2:{i:0;R:41150;i:1;R:40461;}s:32:"1232:cloakcheck-process-username";a:2:{i:0;R:41150;i:1;R:40461;}s:38:"1232:cloakcheck-process-accountage-yes";a:2:{i:0;R:41150;i:1;R:40461;}s:37:"1232:cloakcheck-process-accountage-no";a:2:{i:0;R:41150;i:1;R:40461;}s:37:"1232:cloakcheck-process-emailconf-yes";a:2:{i:0;R:41150;i:1;R:40461;}s:36:"1232:cloakcheck-process-emailconf-no";a:2:{i:0;R:41150;i:1;R:40461;}s:33:"1232:cloakcheck-process-edits-yes";a:2:{i:0;R:41150;i:1;R:40461;}s:32:"1232:cloakcheck-process-edits-no";a:2:{i:0;R:41150;i:1;R:40461;}s:24:"1232:comboajaxlogin-desc";a:2:{i:0;s:20:"wikia-comboajaxlogin";i:1;R:40461;}s:29:"1232:comboajaxlogin-createlog";a:2:{i:0;R:41166;i:1;R:40461;}s:29:"1232:comboajaxlogin-actionmsg";a:2:{i:0;R:41166;i:1;R:40461;}s:39:"1232:comboajaxlogin-actionmsg-protected";a:2:{i:0;R:41166;i:1;R:40461;}s:36:"1232:comboajaxlogin-connectmarketing";a:2:{i:0;R:41166;i:1;R:40461;}s:46:"1232:comboajaxlogin-log-in-with-facebook-oasis";a:2:{i:0;R:41166;i:1;R:40461;}s:42:"1232:comboajaxlogin-connectmarketing-oasis";a:2:{i:0;R:41166;i:1;R:40461;}s:41:"1232:comboajaxlogin-connectmarketing-back";a:2:{i:0;R:41166;i:1;R:40461;}s:44:"1232:comboajaxlogin-connectmarketing-forward";a:2:{i:0;R:41166;i:1;R:40461;}s:37:"1232:comboajaxlogin-connectdirections";a:2:{i:0;R:41166;i:1;R:40461;}s:39:"1232:comboajaxlogin-post-not-understood";a:2:{i:0;R:41166;i:1;R:40461;}s:32:"1232:comboajaxlogin-readonlytext";a:2:{i:0;R:41166;i:1;R:40461;}s:29:"1232:comboajaxlogin-ajaxerror";a:2:{i:0;R:41166;i:1;R:40461;}s:27:"1232:communitymessages-desc";a:2:{i:0;s:23:"wikia-communitymessages";i:1;R:40461;}s:33:"1232:communitymessages-notice-msg";a:2:{i:0;R:41180;i:1;R:40461;}s:28:"1232:confirmemailprompt-desc";a:2:{i:0;s:24:"wikia-confirmemailprompt";i:1;R:40461;}s:29:"1232:confirmemailprompt-error";a:2:{i:0;R:41183;i:1;R:40461;}s:22:"1232:contentfeeds-desc";a:2:{i:0;s:18:"wikia-contentfeeds";i:1;R:40461;}s:37:"1232:contentfeeds-newimages-rss-title";a:2:{i:0;R:41186;i:1;R:40461;}s:36:"1232:contentfeeds-newimages-rss-desc";a:2:{i:0;R:41186;i:1;R:40461;}s:45:"1232:contentfeeds-firstfewarticles-tag-header";a:2:{i:0;R:41186;i:1;R:40461;}s:44:"1232:contentfeeds-firstfewarticles-tag-title";a:2:{i:0;R:41186;i:1;R:40461;}s:43:"1232:contentfeeds-firstfewarticles-tag-next";a:2:{i:0;R:41186;i:1;R:40461;}s:56:"1232:contentfeeds-firstfewarticles-tag-empty-title-error";a:2:{i:0;R:41186;i:1;R:40461;}s:55:"1232:contentfeeds-firstfewarticles-tag-empty-body-error";a:2:{i:0;R:41186;i:1;R:40461;}s:23:"1232:createnewwiki-desc";a:2:{i:0;s:19:"wikia-createnewwiki";i:1;R:40461;}s:13:"1232:cnw-next";a:2:{i:0;R:41195;i:1;R:40461;}s:13:"1232:cnw-back";a:2:{i:0;R:41195;i:1;R:40461;}s:11:"1232:cnw-or";a:2:{i:0;R:41195;i:1;R:40461;}s:14:"1232:cnw-title";a:2:{i:0;R:41195;i:1;R:40461;}s:27:"1232:cnw-name-wiki-headline";a:2:{i:0;R:41195;i:1;R:40461;}s:27:"1232:cnw-name-wiki-creative";a:2:{i:0;R:41195;i:1;R:40461;}s:24:"1232:cnw-name-wiki-label";a:2:{i:0;R:41195;i:1;R:40461;}s:23:"1232:cnw-name-wiki-wiki";a:2:{i:0;R:41195;i:1;R:40461;}s:31:"1232:cnw-name-wiki-domain-label";a:2:{i:0;R:41195;i:1;R:40461;}s:27:"1232:cnw-name-wiki-language";a:2:{i:0;R:41195;i:1;R:40461;}s:25:"1232:cnw-name-wiki-domain";a:2:{i:0;R:41195;i:1;R:40461;}s:31:"1232:cnw-name-wiki-submit-error";a:2:{i:0;R:41195;i:1;R:40461;}s:14:"1232:cnw-login";a:2:{i:0;R:41195;i:1;R:40461;}s:15:"1232:cnw-signup";a:2:{i:0;R:41195;i:1;R:40461;}s:22:"1232:cnw-signup-prompt";a:2:{i:0;R:41195;i:1;R:40461;}s:23:"1232:cnw-call-to-signup";a:2:{i:0;R:41195;i:1;R:40461;}s:21:"1232:cnw-login-prompt";a:2:{i:0;R:41195;i:1;R:40461;}s:22:"1232:cnw-call-to-login";a:2:{i:0;R:41195;i:1;R:40461;}s:22:"1232:cnw-auth-headline";a:2:{i:0;R:41195;i:1;R:40461;}s:23:"1232:cnw-auth-headline2";a:2:{i:0;R:41195;i:1;R:40461;}s:22:"1232:cnw-auth-creative";a:2:{i:0;R:41195;i:1;R:40461;}s:29:"1232:cnw-auth-signup-creative";a:2:{i:0;R:41195;i:1;R:40461;}s:29:"1232:cnw-auth-facebook-signup";a:2:{i:0;R:41195;i:1;R:40461;}s:28:"1232:cnw-auth-facebook-login";a:2:{i:0;R:41195;i:1;R:40461;}s:26:"1232:cnw-userauth-headline";a:2:{i:0;R:41195;i:1;R:40461;}s:26:"1232:cnw-userauth-creative";a:2:{i:0;R:41195;i:1;R:40461;}s:35:"1232:cnw-userauth-marketing-heading";a:2:{i:0;R:41195;i:1;R:40461;}s:32:"1232:cnw-userauth-marketing-body";a:2:{i:0;R:41195;i:1;R:40461;}s:31:"1232:cnw-userauth-signup-button";a:2:{i:0;R:41195;i:1;R:40461;}s:22:"1232:cnw-desc-headline";a:2:{i:0;R:41195;i:1;R:40461;}s:22:"1232:cnw-desc-creative";a:2:{i:0;R:41195;i:1;R:40461;}s:25:"1232:cnw-desc-placeholder";a:2:{i:0;R:41195;i:1;R:40461;}s:18:"1232:cnw-desc-tip1";a:2:{i:0;R:41195;i:1;R:40461;}s:27:"1232:cnw-desc-tip1-creative";a:2:{i:0;R:41195;i:1;R:40461;}s:18:"1232:cnw-desc-tip2";a:2:{i:0;R:41195;i:1;R:40461;}s:27:"1232:cnw-desc-tip2-creative";a:2:{i:0;R:41195;i:1;R:40461;}s:18:"1232:cnw-desc-tip3";a:2:{i:0;R:41195;i:1;R:40461;}s:27:"1232:cnw-desc-tip3-creative";a:2:{i:0;R:41195;i:1;R:40461;}s:20:"1232:cnw-desc-choose";a:2:{i:0;R:41195;i:1;R:40461;}s:24:"1232:cnw-desc-select-one";a:2:{i:0;R:41195;i:1;R:40461;}s:26:"1232:cnw-desc-default-lang";a:2:{i:0;R:41195;i:1;R:40461;}s:25:"1232:cnw-desc-change-lang";a:2:{i:0;R:41195;i:1;R:40461;}s:18:"1232:cnw-desc-lang";a:2:{i:0;R:41195;i:1;R:40461;}s:31:"1232:cnw-desc-wiki-submit-error";a:2:{i:0;R:41195;i:1;R:40461;}s:23:"1232:cnw-theme-headline";a:2:{i:0;R:41195;i:1;R:40461;}s:23:"1232:cnw-theme-creative";a:2:{i:0;R:41195;i:1;R:40461;}s:26:"1232:cnw-theme-instruction";a:2:{i:0;R:41195;i:1;R:40461;}s:25:"1232:cnw-upgrade-headline";a:2:{i:0;R:41195;i:1;R:40461;}s:25:"1232:cnw-upgrade-creative";a:2:{i:0;R:41195;i:1;R:40461;}s:26:"1232:cnw-upgrade-marketing";a:2:{i:0;R:41195;i:1;R:40461;}s:20:"1232:cnw-upgrade-now";a:2:{i:0;R:41195;i:1;R:40461;}s:24:"1232:cnw-upgrade-decline";a:2:{i:0;R:41195;i:1;R:40461;}s:25:"1232:cnw-welcome-headline";a:2:{i:0;R:41195;i:1;R:40461;}s:29:"1232:cnw-welcome-instruction1";a:2:{i:0;R:41195;i:1;R:40461;}s:29:"1232:cnw-welcome-instruction2";a:2:{i:0;R:41195;i:1;R:40461;}s:21:"1232:cnw-welcome-help";a:2:{i:0;R:41195;i:1;R:40461;}s:22:"1232:cnw-error-general";a:2:{i:0;R:41195;i:1;R:40461;}s:30:"1232:cnw-error-general-heading";a:2:{i:0;R:41195;i:1;R:40461;}s:23:"1232:cnw-error-database";a:2:{i:0;R:41195;i:1;R:40461;}s:23:"1232:cnw-badword-header";a:2:{i:0;R:41195;i:1;R:40461;}s:20:"1232:cnw-badword-msg";a:2:{i:0;R:41195;i:1;R:40461;}s:32:"1232:cnw-error-wiki-limit-header";a:2:{i:0;R:41195;i:1;R:40461;}s:25:"1232:cnw-error-wiki-limit";a:2:{i:0;R:41195;i:1;R:40461;}s:29:"1232:cnw-error-blocked-header";a:2:{i:0;R:41195;i:1;R:40461;}s:22:"1232:cnw-error-blocked";a:2:{i:0;R:41195;i:1;R:40461;}s:23:"1232:cnw-error-torblock";a:2:{i:0;R:41195;i:1;R:40461;}s:18:"1232:cnw-error-bot";a:2:{i:0;R:41195;i:1;R:40461;}s:25:"1232:cnw-error-bot-header";a:2:{i:0;R:41195;i:1;R:40461;}s:20:"1232:createpage-desc";a:2:{i:0;s:16:"wikia-createpage";i:1;R:40461;}s:24:"1232:createpage-sp-title";a:2:{i:0;R:41265;i:1;R:40461;}s:21:"1232:createpage_title";a:2:{i:0;R:41265;i:1;R:40461;}s:29:"1232:createpage_title_caption";a:2:{i:0;R:41265;i:1;R:40461;}s:26:"1232:createpage_enter_text";a:2:{i:0;R:41265;i:1;R:40461;}s:33:"1232:createpage_empty_title_error";a:2:{i:0;R:41265;i:1;R:40461;}s:40:"1232:createpage_empty_article_body_error";a:2:{i:0;R:41265;i:1;R:40461;}s:35:"1232:createpage_invalid_title_error";a:2:{i:0;R:41265;i:1;R:40461;}s:38:"1232:createpage_article_already_exists";a:2:{i:0;R:41265;i:1;R:40461;}s:20:"1232:createpage_spam";a:2:{i:0;R:41265;i:1;R:40461;}s:25:"1232:createpage_cant_edit";a:2:{i:0;R:41265;i:1;R:40461;}s:28:"1232:createpage-dialog-title";a:2:{i:0;R:41265;i:1;R:40461;}s:31:"1232:createpage-dialog-message1";a:2:{i:0;R:41265;i:1;R:40461;}s:31:"1232:createpage-dialog-message2";a:2:{i:0;R:41265;i:1;R:40461;}s:29:"1232:createpage-dialog-choose";a:2:{i:0;R:41265;i:1;R:40461;}s:29:"1232:createpage-dialog-format";a:2:{i:0;R:41265;i:1;R:40461;}s:28:"1232:createpage-dialog-blank";a:2:{i:0;R:41265;i:1;R:40461;}s:33:"1232:createpage-error-empty-title";a:2:{i:0;R:41265;i:1;R:40461;}s:35:"1232:createpage-error-invalid-title";a:2:{i:0;R:41265;i:1;R:40461;}s:36:"1232:createpage-error-article-exists";a:2:{i:0;R:41265;i:1;R:40461;}s:34:"1232:createpage-error-article-spam";a:2:{i:0;R:41265;i:1;R:40461;}s:37:"1232:createpage-error-article-blocked";a:2:{i:0;R:41265;i:1;R:40461;}s:31:"1232:tog-createpagedefaultblank";a:2:{i:0;R:41265;i:1;R:40461;}s:32:"1232:tog-createpagepopupdisabled";a:2:{i:0;R:41265;i:1;R:40461;}s:18:"1232:newpagelayout";a:2:{i:0;R:41265;i:1;R:40461;}s:16:"1232:editaccount";a:2:{i:0;s:17:"wikia-editaccount";i:1;R:40461;}s:21:"1232:editaccount-desc";a:2:{i:0;R:41291;i:1;R:40461;}s:22:"1232:editaccount-title";a:2:{i:0;R:41291;i:1;R:40461;}s:29:"1232:editaccount-frame-manage";a:2:{i:0;R:41291;i:1;R:40461;}s:28:"1232:editaccount-frame-usage";a:2:{i:0;R:41291;i:1;R:40461;}s:22:"1232:editaccount-usage";a:2:{i:0;R:41291;i:1;R:40461;}s:29:"1232:editaccount-label-select";a:2:{i:0;R:41291;i:1;R:40461;}s:31:"1232:editaccount-submit-account";a:2:{i:0;R:41291;i:1;R:40461;}s:30:"1232:editaccount-frame-account";a:2:{i:0;R:41291;i:1;R:40461;}s:28:"1232:editaccount-frame-close";a:2:{i:0;R:41291;i:1;R:40461;}s:28:"1232:editaccount-label-email";a:2:{i:0;R:41291;i:1;R:40461;}s:27:"1232:editaccount-label-pass";a:2:{i:0;R:41291;i:1;R:40461;}s:31:"1232:editaccount-label-realname";a:2:{i:0;R:41291;i:1;R:40461;}s:33:"1232:editaccount-label-clearunsub";a:2:{i:0;R:41291;i:1;R:40461;}s:29:"1232:editaccount-submit-email";a:2:{i:0;R:41291;i:1;R:40461;}s:28:"1232:editaccount-submit-pass";a:2:{i:0;R:41291;i:1;R:40461;}s:32:"1232:editaccount-submit-realname";a:2:{i:0;R:41291;i:1;R:40461;}s:34:"1232:editaccount-submit-clearunsub";a:2:{i:0;R:41291;i:1;R:40461;}s:36:"1232:editaccount-submit-cleardisable";a:2:{i:0;R:41291;i:1;R:40461;}s:29:"1232:editaccount-submit-close";a:2:{i:0;R:41291;i:1;R:40461;}s:28:"1232:editaccount-usage-close";a:2:{i:0;R:41291;i:1;R:40461;}s:30:"1232:editaccount-warning-close";a:2:{i:0;R:41291;i:1;R:40461;}s:23:"1232:editaccount-status";a:2:{i:0;R:41291;i:1;R:40461;}s:30:"1232:editaccount-success-email";a:2:{i:0;R:41291;i:1;R:40461;}s:36:"1232:editaccount-success-email-blank";a:2:{i:0;R:41291;i:1;R:40461;}s:29:"1232:editaccount-success-pass";a:2:{i:0;R:41291;i:1;R:40461;}s:33:"1232:editaccount-success-realname";a:2:{i:0;R:41291;i:1;R:40461;}s:30:"1232:editaccount-success-unsub";a:2:{i:0;R:41291;i:1;R:40461;}s:32:"1232:editaccount-success-disable";a:2:{i:0;R:41291;i:1;R:40461;}s:30:"1232:editaccount-success-close";a:2:{i:0;R:41291;i:1;R:40461;}s:28:"1232:editaccount-error-email";a:2:{i:0;R:41291;i:1;R:40461;}s:27:"1232:editaccount-error-pass";a:2:{i:0;R:41291;i:1;R:40461;}s:31:"1232:editaccount-error-realname";a:2:{i:0;R:41291;i:1;R:40461;}s:28:"1232:editaccount-error-close";a:2:{i:0;R:41291;i:1;R:40461;}s:30:"1232:editaccount-invalid-email";a:2:{i:0;R:41291;i:1;R:40461;}s:23:"1232:editaccount-nouser";a:2:{i:0;R:41291;i:1;R:40461;}s:35:"1232:editaccount-remove-avatar-fail";a:2:{i:0;R:41291;i:1;R:40461;}s:26:"1232:editaccount-requested";a:2:{i:0;R:41291;i:1;R:40461;}s:30:"1232:editaccount-not-requested";a:2:{i:0;R:41291;i:1;R:40461;}s:37:"1232:editaccount-labal-account-status";a:2:{i:0;R:41291;i:1;R:40461;}s:35:"1232:editaccount-labal-email-status";a:2:{i:0;R:41291;i:1;R:40461;}s:33:"1232:editaccount-status-confirmed";a:2:{i:0;R:41291;i:1;R:40461;}s:35:"1232:editaccount-status-unconfirmed";a:2:{i:0;R:41291;i:1;R:40461;}s:32:"1232:editaccount-status-realuser";a:2:{i:0;R:41291;i:1;R:40461;}s:32:"1232:editaccount-status-tempuser";a:2:{i:0;R:41291;i:1;R:40461;}s:37:"1232:editaccount-error-tempuser-email";a:2:{i:0;R:41291;i:1;R:40461;}s:39:"1232:editaccount-email-change-requested";a:2:{i:0;R:41291;i:1;R:40461;}s:20:"1232:editaccount-log";a:2:{i:0;R:41291;i:1;R:40461;}s:27:"1232:editaccount-log-header";a:2:{i:0;R:41291;i:1;R:40461;}s:32:"1232:editaccount-log-entry-email";a:2:{i:0;R:41291;i:1;R:40461;}s:31:"1232:editaccount-log-entry-pass";a:2:{i:0;R:41291;i:1;R:40461;}s:35:"1232:editaccount-log-entry-realname";a:2:{i:0;R:41291;i:1;R:40461;}s:32:"1232:editaccount-log-entry-close";a:2:{i:0;R:41291;i:1;R:40461;}s:29:"1232:edit-account-closed-flag";a:2:{i:0;R:41291;i:1;R:40461;}s:22:"1232:right-editaccount";a:2:{i:0;R:41291;i:1;R:40461;}s:24:"1232:editpagelayout-more";a:2:{i:0;s:20:"wikia-editpagelayout";i:1;R:40461;}s:24:"1232:editpagelayout-less";a:2:{i:0;R:41347;i:1;R:40461;}s:32:"1232:editpagelayout-helplink-url";a:2:{i:0;R:41347;i:1;R:40461;}s:28:"1232:editpagelayout-helplink";a:2:{i:0;R:41347;i:1;R:40461;}s:37:"1232:editpagelayout-notificationslink";a:2:{i:0;R:41347;i:1;R:40461;}s:42:"1232:editpagelayout-notificationslink-none";a:2:{i:0;R:41347;i:1;R:40461;}s:30:"1232:editpagelayout-edit-title";a:2:{i:0;R:41347;i:1;R:40461;}s:29:"1232:editpagelayout-edit-info";a:2:{i:0;R:41347;i:1;R:40461;}s:35:"1232:editpagelayout-diff-header-url";a:2:{i:0;R:41347;i:1;R:40461;}s:31:"1232:editpagelayout-diff-header";a:2:{i:0;R:41347;i:1;R:40461;}s:33:"1232:editpagelayout-myedit-header";a:2:{i:0;R:41347;i:1;R:40461;}s:33:"1232:editpagelayout-captcha-title";a:2:{i:0;R:41347;i:1;R:40461;}s:41:"1232:editpagelayout-pagecontrols-pagelink";a:2:{i:0;R:41347;i:1;R:40461;}s:42:"1232:editpagelayout-pagecontrols-minoredit";a:2:{i:0;R:41347;i:1;R:40461;}s:45:"1232:editpagelayout-pagecontrols-summarylabel";a:2:{i:0;R:41347;i:1;R:40461;}s:48:"1232:editpagelayout-pagecontrols-newsectionlabel";a:2:{i:0;R:41347;i:1;R:40461;}s:37:"1232:editpagelayout-pagecontrols-back";a:2:{i:0;R:41347;i:1;R:40461;}s:40:"1232:editpagelayout-pagecontrols-changes";a:2:{i:0;R:41347;i:1;R:40461;}s:32:"1232:editpagelayout-blocked-user";a:2:{i:0;R:41347;i:1;R:40461;}s:38:"1232:editpagelayout-edit-summary-label";a:2:{i:0;R:41347;i:1;R:40461;}s:42:"1232:editpagelayout-subject-headline-label";a:2:{i:0;R:41347;i:1;R:40461;}s:29:"1232:wikia-editor-media-image";a:2:{i:0;R:41347;i:1;R:40461;}s:31:"1232:wikia-editor-media-gallery";a:2:{i:0;R:41347;i:1;R:40461;}s:33:"1232:wikia-editor-media-slideshow";a:2:{i:0;R:41347;i:1;R:40461;}s:30:"1232:wikia-editor-media-slider";a:2:{i:0;R:41347;i:1;R:40461;}s:29:"1232:wikia-editor-media-video";a:2:{i:0;R:41347;i:1;R:40461;}s:37:"1232:wikia-editor-media-image-tooltip";a:2:{i:0;R:41347;i:1;R:40461;}s:39:"1232:wikia-editor-media-gallery-tooltip";a:2:{i:0;R:41347;i:1;R:40461;}s:41:"1232:wikia-editor-media-slideshow-tooltip";a:2:{i:0;R:41347;i:1;R:40461;}s:38:"1232:wikia-editor-media-slider-tooltip";a:2:{i:0;R:41347;i:1;R:40461;}s:37:"1232:wikia-editor-media-video-tooltip";a:2:{i:0;R:41347;i:1;R:40461;}s:37:"1232:wikia-editor-source-bold-tooltip";a:2:{i:0;R:41347;i:1;R:40461;}s:39:"1232:wikia-editor-source-italic-tooltip";a:2:{i:0;R:41347;i:1;R:40461;}s:37:"1232:wikia-editor-source-link-tooltip";a:2:{i:0;R:41347;i:1;R:40461;}s:41:"1232:wikia-editor-modules-templates-title";a:2:{i:0;R:41347;i:1;R:40461;}s:47:"1232:wikia-editor-modules-templates-add-tooltip";a:2:{i:0;R:41347;i:1;R:40461;}s:50:"1232:wikia-editor-modules-templates-othertemplates";a:2:{i:0;R:41347;i:1;R:40461;}s:48:"1232:wikia-editor-modules-templates-showusedlist";a:2:{i:0;R:41347;i:1;R:40461;}s:61:"1232:wikia-editor-modules-templates-showusedlist-dialog-title";a:2:{i:0;R:41347;i:1;R:40461;}s:46:"1232:wikia-editor-modules-templates-makelayout";a:2:{i:0;R:41347;i:1;R:40461;}s:65:"1232:wikia-editor-modules-templates-makelayout-confirmation-title";a:2:{i:0;R:41347;i:1;R:40461;}s:64:"1232:wikia-editor-modules-templates-makelayout-confirmation-text";a:2:{i:0;R:41347;i:1;R:40461;}s:38:"1232:wikia-editor-modules-license-text";a:2:{i:0;R:41347;i:1;R:40461;}s:38:"1232:wikia-editor-modules-insert-title";a:2:{i:0;R:41347;i:1;R:40461;}s:42:"1232:wikia-editor-modules-categories-title";a:2:{i:0;R:41347;i:1;R:40461;}s:39:"1232:wikia-editor-loadingstates-loading";a:2:{i:0;R:41347;i:1;R:40461;}s:40:"1232:wikia-editor-loadingstates-tosource";a:2:{i:0;R:41347;i:1;R:40461;}s:40:"1232:wikia-editor-loadingstates-tovisual";a:2:{i:0;R:41347;i:1;R:40461;}s:38:"1232:wikia-editor-loadingstates-saving";a:2:{i:0;R:41347;i:1;R:40461;}s:35:"1232:wikia-editor-edittools-caption";a:2:{i:0;R:41347;i:1;R:40461;}s:40:"1232:wikia-editor-edittools-dialog-title";a:2:{i:0;R:41347;i:1;R:40461;}s:38:"1232:wikia-editor-notices-dialog-title";a:2:{i:0;R:41347;i:1;R:40461;}s:37:"1232:wikia-editor-preview-editsummary";a:2:{i:0;R:41347;i:1;R:40461;}s:38:"1232:wikia-editor-leaveconfirm-message";a:2:{i:0;R:41347;i:1;R:40461;}s:29:"1232:nonunicodebrowser-notice";a:2:{i:0;R:41347;i:1;R:40461;}s:28:"1232:rev-deleted-text-notice";a:2:{i:0;R:41347;i:1;R:40461;}s:27:"1232:readonlywarning-notice";a:2:{i:0;R:41347;i:1;R:40461;}s:27:"1232:anoneditwarning-notice";a:2:{i:0;R:41347;i:1;R:40461;}s:27:"1232:longpagewarning-notice";a:2:{i:0;R:41347;i:1;R:40461;}s:33:"1232:userinvalidcssjstitle-notice";a:2:{i:0;R:41347;i:1;R:40461;}s:36:"1232:semiprotectedpagewarning-notice";a:2:{i:0;R:41347;i:1;R:40461;}s:32:"1232:protectedpagewarning-notice";a:2:{i:0;R:41347;i:1;R:40461;}s:33:"1232:titleprotectedwarning-notice";a:2:{i:0;R:41347;i:1;R:40461;}s:38:"1232:recreate-moveddeleted-warn-notice";a:2:{i:0;R:41347;i:1;R:40461;}s:25:"1232:restore-edits-notice";a:2:{i:0;R:41347;i:1;R:40461;}s:30:"1232:restore-edits-diff-notice";a:2:{i:0;R:41347;i:1;R:40461;}s:18:"1232:prefs-general";a:2:{i:0;R:41347;i:1;R:40461;}s:27:"1232:prefs-starting-an-edit";a:2:{i:0;R:41347;i:1;R:40461;}s:29:"1232:prefs-editing-experience";a:2:{i:0;R:41347;i:1;R:40461;}s:26:"1232:prefs-monobook-layout";a:2:{i:0;R:41347;i:1;R:40461;}s:24:"1232:prefs-editarea-size";a:2:{i:0;R:41347;i:1;R:40461;}s:20:"1232:tog-editsection";a:2:{i:0;R:41347;i:1;R:40461;}s:18:"1232:tog-editwidth";a:2:{i:0;R:41347;i:1;R:40461;}s:21:"1232:tog-minordefault";a:2:{i:0;R:41347;i:1;R:40461;}s:25:"1232:tog-forceeditsummary";a:2:{i:0;R:41347;i:1;R:40461;}s:16:"1232:follow-desc";a:2:{i:0;s:12:"wikia-follow";i:1;R:40461;}s:16:"1232:prefs-basic";a:2:{i:0;R:41423;i:1;R:40461;}s:48:"1232:wikiafollowedpages-special-heading-category";a:2:{i:0;R:41423;i:1;R:40461;}s:47:"1232:wikiafollowedpages-special-heading-article";a:2:{i:0;R:41423;i:1;R:40461;}s:45:"1232:wikiafollowedpages-special-heading-blogs";a:2:{i:0;R:41423;i:1;R:40461;}s:45:"1232:wikiafollowedpages-special-heading-forum";a:2:{i:0;R:41423;i:1;R:40461;}s:47:"1232:wikiafollowedpages-special-heading-project";a:2:{i:0;R:41423;i:1;R:40461;}s:44:"1232:wikiafollowedpages-special-heading-user";a:2:{i:0;R:41423;i:1;R:40461;}s:49:"1232:wikiafollowedpages-special-heading-templates";a:2:{i:0;R:41423;i:1;R:40461;}s:49:"1232:wikiafollowedpages-special-heading-mediawiki";a:2:{i:0;R:41423;i:1;R:40461;}s:45:"1232:wikiafollowedpages-special-heading-media";a:2:{i:0;R:41423;i:1;R:40461;}s:41:"1232:wikiafollowedpages-special-namespace";a:2:{i:0;R:41423;i:1;R:40461;}s:44:"1232:wikiafollowedpages-special-heading-wall";a:2:{i:0;R:41423;i:1;R:40461;}s:37:"1232:wikiafollowedpages-special-empty";a:2:{i:0;R:41423;i:1;R:40461;}s:36:"1232:wikiafollowedpages-special-anon";a:2:{i:0;R:41423;i:1;R:40461;}s:44:"1232:oasis-wikiafollowedpages-special-seeall";a:2:{i:0;R:41423;i:1;R:40461;}s:38:"1232:wikiafollowedpages-special-seeall";a:2:{i:0;R:41423;i:1;R:40461;}s:39:"1232:wikiafollowedpages-special-showall";a:2:{i:0;R:41423;i:1;R:40461;}s:40:"1232:wikiafollowedpages-special-showmore";a:2:{i:0;R:41423;i:1;R:40461;}s:37:"1232:wikiafollowedpages-special-title";a:2:{i:0;R:41423;i:1;R:40461;}s:46:"1232:wikiafollowedpages-special-delete-tooltip";a:2:{i:0;R:41423;i:1;R:40461;}s:38:"1232:wikiafollowedpages-special-hidden";a:2:{i:0;R:41423;i:1;R:40461;}s:45:"1232:wikiafollowedpages-special-hidden-unhide";a:2:{i:0;R:41423;i:1;R:40461;}s:39:"1232:wikiafollowedpages-special-blog-by";a:2:{i:0;R:41423;i:1;R:40461;}s:32:"1232:wikiafollowedpages-masthead";a:2:{i:0;R:41423;i:1;R:40461;}s:33:"1232:wikiafollowedpages-following";a:2:{i:0;R:41423;i:1;R:40461;}s:45:"1232:wikiafollowedpages-special-title-userbar";a:2:{i:0;R:41423;i:1;R:40461;}s:28:"1232:tog-enotiffollowedpages";a:2:{i:0;R:41423;i:1;R:40461;}s:33:"1232:tog-enotiffollowedminoredits";a:2:{i:0;R:41423;i:1;R:40461;}s:44:"1232:prefs-wikiafollowedpages-prefs-advanced";a:2:{i:0;R:41423;i:1;R:40461;}s:45:"1232:prefs-wikiafollowedpages-prefs-watchlist";a:2:{i:0;R:41423;i:1;R:40461;}s:26:"1232:tog-hidefollowedpages";a:2:{i:0;R:41423;i:1;R:40461;}s:31:"1232:follow-categoryadd-summary";a:2:{i:0;R:41423;i:1;R:40461;}s:31:"1232:follow-bloglisting-summary";a:2:{i:0;R:41423;i:1;R:40461;}s:40:"1232:wikiafollowedpages-userpage-heading";a:2:{i:0;R:41423;i:1;R:40461;}s:45:"1232:wikiafollowedpages-userpage-hide-tooltip";a:2:{i:0;R:41423;i:1;R:40461;}s:37:"1232:wikiafollowedpages-userpage-more";a:2:{i:0;R:41423;i:1;R:40461;}s:37:"1232:wikiafollowedpages-userpage-hide";a:2:{i:0;R:41423;i:1;R:40461;}s:38:"1232:wikiafollowedpages-userpage-empty";a:2:{i:0;R:41423;i:1;R:40461;}s:31:"1232:enotif_subject_categoryadd";a:2:{i:0;R:41423;i:1;R:40461;}s:28:"1232:enotif_body_categoryadd";a:2:{i:0;R:41423;i:1;R:40461;}s:33:"1232:enotif_body_categoryadd-html";a:2:{i:0;R:41423;i:1;R:40461;}s:28:"1232:enotif_subject_blogpost";a:2:{i:0;R:41423;i:1;R:40461;}s:25:"1232:enotif_body_blogpost";a:2:{i:0;R:41423;i:1;R:40461;}s:30:"1232:enotif_body_blogpost-html";a:2:{i:0;R:41423;i:1;R:40461;}s:23:"1232:founderemails-desc";a:2:{i:0;s:19:"wikia-founderemails";i:1;R:40461;}s:29:"1232:tog-founderemailsenabled";a:2:{i:0;R:41469;i:1;R:40461;}s:48:"1232:founderemails-email-user-registered-subject";a:2:{i:0;R:41469;i:1;R:40461;}s:45:"1232:founderemails-email-user-registered-body";a:2:{i:0;R:41469;i:1;R:40461;}s:49:"1232:founderemails-email-user-registered-greeting";a:2:{i:0;R:41469;i:1;R:40461;}s:49:"1232:founderemails-email-user-registered-headline";a:2:{i:0;R:41469;i:1;R:40461;}s:48:"1232:founderemails-email-user-registered-content";a:2:{i:0;R:41469;i:1;R:40461;}s:50:"1232:founderemails-email-user-registered-signature";a:2:{i:0;R:41469;i:1;R:40461;}s:47:"1232:founderemails-email-user-registered-button";a:2:{i:0;R:41469;i:1;R:40461;}s:50:"1232:founderemails-email-user-registered-body-html";a:2:{i:0;R:41469;i:1;R:40461;}s:46:"1232:founderemails-email-0-days-passed-subject";a:2:{i:0;R:41469;i:1;R:40461;}s:43:"1232:founderemails-email-0-days-passed-body";a:2:{i:0;R:41469;i:1;R:40461;}s:48:"1232:founderemails-email-0-days-passed-body-html";a:2:{i:0;R:41469;i:1;R:40461;}s:46:"1232:founderemails-email-3-days-passed-subject";a:2:{i:0;R:41469;i:1;R:40461;}s:43:"1232:founderemails-email-3-days-passed-body";a:2:{i:0;R:41469;i:1;R:40461;}s:48:"1232:founderemails-email-3-days-passed-body-html";a:2:{i:0;R:41469;i:1;R:40461;}s:47:"1232:founderemails-email-10-days-passed-subject";a:2:{i:0;R:41469;i:1;R:40461;}s:44:"1232:founderemails-email-10-days-passed-body";a:2:{i:0;R:41469;i:1;R:40461;}s:64:"1232:founderemails-email-page-edited-reg-user-first-edit-subject";a:2:{i:0;R:41469;i:1;R:40461;}s:61:"1232:founderemails-email-page-edited-reg-user-first-edit-body";a:2:{i:0;R:41469;i:1;R:40461;}s:44:"1232:founderemails-email-first-edit-greeting";a:2:{i:0;R:41469;i:1;R:40461;}s:44:"1232:founderemails-email-first-edit-headline";a:2:{i:0;R:41469;i:1;R:40461;}s:43:"1232:founderemails-email-first-edit-content";a:2:{i:0;R:41469;i:1;R:40461;}s:45:"1232:founderemails-email-first-edit-signature";a:2:{i:0;R:41469;i:1;R:40461;}s:42:"1232:founderemails-email-first-edit-button";a:2:{i:0;R:41469;i:1;R:40461;}s:66:"1232:founderemails-email-page-edited-reg-user-first-edit-body-html";a:2:{i:0;R:41469;i:1;R:40461;}s:53:"1232:founderemails-email-page-edited-reg-user-subject";a:2:{i:0;R:41469;i:1;R:40461;}s:50:"1232:founderemails-email-page-edited-reg-user-body";a:2:{i:0;R:41469;i:1;R:40461;}s:46:"1232:founderemails-email-general-edit-greeting";a:2:{i:0;R:41469;i:1;R:40461;}s:46:"1232:founderemails-email-general-edit-headline";a:2:{i:0;R:41469;i:1;R:40461;}s:45:"1232:founderemails-email-general-edit-content";a:2:{i:0;R:41469;i:1;R:40461;}s:47:"1232:founderemails-email-general-edit-signature";a:2:{i:0;R:41469;i:1;R:40461;}s:44:"1232:founderemails-email-general-edit-button";a:2:{i:0;R:41469;i:1;R:40461;}s:55:"1232:founderemails-email-page-edited-reg-user-body-html";a:2:{i:0;R:41469;i:1;R:40461;}s:49:"1232:founderemails-email-page-edited-anon-subject";a:2:{i:0;R:41469;i:1;R:40461;}s:46:"1232:founderemails-email-page-edited-anon-body";a:2:{i:0;R:41469;i:1;R:40461;}s:43:"1232:founderemails-email-anon-edit-greeting";a:2:{i:0;R:41469;i:1;R:40461;}s:43:"1232:founderemails-email-anon-edit-headline";a:2:{i:0;R:41469;i:1;R:40461;}s:42:"1232:founderemails-email-anon-edit-content";a:2:{i:0;R:41469;i:1;R:40461;}s:44:"1232:founderemails-email-anon-edit-signature";a:2:{i:0;R:41469;i:1;R:40461;}s:41:"1232:founderemails-email-anon-edit-button";a:2:{i:0;R:41469;i:1;R:40461;}s:51:"1232:founderemails-email-page-edited-anon-body-html";a:2:{i:0;R:41469;i:1;R:40461;}s:56:"1232:founderemails-answers-email-user-registered-subject";a:2:{i:0;R:41469;i:1;R:40461;}s:53:"1232:founderemails-answers-email-user-registered-body";a:2:{i:0;R:41469;i:1;R:40461;}s:58:"1232:founderemails-answers-email-user-registered-body-html";a:2:{i:0;R:41469;i:1;R:40461;}s:54:"1232:founderemails-answers-email-0-days-passed-subject";a:2:{i:0;R:41469;i:1;R:40461;}s:51:"1232:founderemails-answers-email-0-days-passed-body";a:2:{i:0;R:41469;i:1;R:40461;}s:56:"1232:founderemails-answers-email-0-days-passed-body-html";a:2:{i:0;R:41469;i:1;R:40461;}s:54:"1232:founderemails-answers-email-3-days-passed-subject";a:2:{i:0;R:41469;i:1;R:40461;}s:51:"1232:founderemails-answers-email-3-days-passed-body";a:2:{i:0;R:41469;i:1;R:40461;}s:56:"1232:founderemails-answers-email-3-days-passed-body-html";a:2:{i:0;R:41469;i:1;R:40461;}s:55:"1232:founderemails-answers-email-10-days-passed-subject";a:2:{i:0;R:41469;i:1;R:40461;}s:52:"1232:founderemails-answers-email-10-days-passed-body";a:2:{i:0;R:41469;i:1;R:40461;}s:57:"1232:founderemails-answers-email-10-days-passed-body-html";a:2:{i:0;R:41469;i:1;R:40461;}s:72:"1232:founderemails-answers-email-page-edited-reg-user-first-edit-subject";a:2:{i:0;R:41469;i:1;R:40461;}s:69:"1232:founderemails-answers-email-page-edited-reg-user-first-edit-body";a:2:{i:0;R:41469;i:1;R:40461;}s:74:"1232:founderemails-answers-email-page-edited-reg-user-first-edit-body-html";a:2:{i:0;R:41469;i:1;R:40461;}s:61:"1232:founderemails-answers-email-page-edited-reg-user-subject";a:2:{i:0;R:41469;i:1;R:40461;}s:58:"1232:founderemails-answers-email-page-edited-reg-user-body";a:2:{i:0;R:41469;i:1;R:40461;}s:63:"1232:founderemails-answers-email-page-edited-reg-user-body-html";a:2:{i:0;R:41469;i:1;R:40461;}s:57:"1232:founderemails-answers-email-page-edited-anon-subject";a:2:{i:0;R:41469;i:1;R:40461;}s:54:"1232:founderemails-answers-email-page-edited-anon-body";a:2:{i:0;R:41469;i:1;R:40461;}s:59:"1232:founderemails-answers-email-page-edited-anon-body-html";a:2:{i:0;R:41469;i:1;R:40461;}s:40:"1232:founderemails-lot-happening-subject";a:2:{i:0;R:41469;i:1;R:40461;}s:37:"1232:founderemails-lot-happening-body";a:2:{i:0;R:41469;i:1;R:40461;}s:42:"1232:founderemails-lot-happening-body-html";a:2:{i:0;R:41469;i:1;R:40461;}s:47:"1232:founderemails-email-lot-happening-greeting";a:2:{i:0;R:41469;i:1;R:40461;}s:47:"1232:founderemails-email-lot-happening-headline";a:2:{i:0;R:41469;i:1;R:40461;}s:46:"1232:founderemails-email-lot-happening-content";a:2:{i:0;R:41469;i:1;R:40461;}s:48:"1232:founderemails-email-lot-happening-signature";a:2:{i:0;R:41469;i:1;R:40461;}s:45:"1232:founderemails-email-lot-happening-button";a:2:{i:0;R:41469;i:1;R:40461;}s:37:"1232:founderemails-email-footer-line1";a:2:{i:0;R:41469;i:1;R:40461;}s:37:"1232:founderemails-email-footer-line2";a:2:{i:0;R:41469;i:1;R:40461;}s:37:"1232:founderemails-email-footer-line3";a:2:{i:0;R:41469;i:1;R:40461;}s:38:"1232:founderemails-email-0-day-heading";a:2:{i:0;R:41469;i:1;R:40461;}s:46:"1232:founderemails-email-0-day-congratulations";a:2:{i:0;R:41469;i:1;R:40461;}s:43:"1232:founderemails-email-0-day-tips-heading";a:2:{i:0;R:41469;i:1;R:40461;}s:47:"1232:founderemails-email-0-day-addpages-heading";a:2:{i:0;R:41469;i:1;R:40461;}s:47:"1232:founderemails-email-0-day-addpages-content";a:2:{i:0;R:41469;i:1;R:40461;}s:46:"1232:founderemails-email-0-day-addpages-button";a:2:{i:0;R:41469;i:1;R:40461;}s:48:"1232:founderemails-email-0-day-addphotos-heading";a:2:{i:0;R:41469;i:1;R:40461;}s:48:"1232:founderemails-email-0-day-addphotos-content";a:2:{i:0;R:41469;i:1;R:40461;}s:47:"1232:founderemails-email-0-day-addphotos-button";a:2:{i:0;R:41469;i:1;R:40461;}s:53:"1232:founderemails-email-0-day-customizetheme-heading";a:2:{i:0;R:41469;i:1;R:40461;}s:53:"1232:founderemails-email-0-day-customizetheme-content";a:2:{i:0;R:41469;i:1;R:40461;}s:52:"1232:founderemails-email-0-day-customizetheme-button";a:2:{i:0;R:41469;i:1;R:40461;}s:46:"1232:founderemails-email-0-day-wikiahelps-text";a:2:{i:0;R:41469;i:1;R:40461;}s:51:"1232:founderemails-email-0-day-wikiahelps-signature";a:2:{i:0;R:41469;i:1;R:40461;}s:38:"1232:founderemails-email-3-day-heading";a:2:{i:0;R:41469;i:1;R:40461;}s:46:"1232:founderemails-email-3-day-congratulations";a:2:{i:0;R:41469;i:1;R:40461;}s:43:"1232:founderemails-email-3-day-tips-heading";a:2:{i:0;R:41469;i:1;R:40461;}s:51:"1232:founderemails-email-3-day-editmainpage-heading";a:2:{i:0;R:41469;i:1;R:40461;}s:51:"1232:founderemails-email-3-day-editmainpage-content";a:2:{i:0;R:41469;i:1;R:40461;}s:50:"1232:founderemails-email-3-day-editmainpage-button";a:2:{i:0;R:41469;i:1;R:40461;}s:48:"1232:founderemails-email-3-day-addphotos-heading";a:2:{i:0;R:41469;i:1;R:40461;}s:48:"1232:founderemails-email-3-day-addphotos-content";a:2:{i:0;R:41469;i:1;R:40461;}s:47:"1232:founderemails-email-3-day-addphotos-button";a:2:{i:0;R:41469;i:1;R:40461;}s:46:"1232:founderemails-email-3-day-explore-heading";a:2:{i:0;R:41469;i:1;R:40461;}s:46:"1232:founderemails-email-3-day-explore-content";a:2:{i:0;R:41469;i:1;R:40461;}s:45:"1232:founderemails-email-3-day-explore-button";a:2:{i:0;R:41469;i:1;R:40461;}s:46:"1232:founderemails-email-3-day-wikiahelps-text";a:2:{i:0;R:41469;i:1;R:40461;}s:51:"1232:founderemails-email-3-day-wikiahelps-signature";a:2:{i:0;R:41469;i:1;R:40461;}s:39:"1232:founderemails-email-10-day-heading";a:2:{i:0;R:41469;i:1;R:40461;}s:47:"1232:founderemails-email-10-day-congratulations";a:2:{i:0;R:41469;i:1;R:40461;}s:44:"1232:founderemails-email-10-day-tips-heading";a:2:{i:0;R:41469;i:1;R:40461;}s:45:"1232:founderemails-email-10-day-share-heading";a:2:{i:0;R:41469;i:1;R:40461;}s:45:"1232:founderemails-email-10-day-share-content";a:2:{i:0;R:41469;i:1;R:40461;}s:45:"1232:founderemails-email-10-day-email-heading";a:2:{i:0;R:41469;i:1;R:40461;}s:45:"1232:founderemails-email-10-day-email-content";a:2:{i:0;R:41469;i:1;R:40461;}s:44:"1232:founderemails-email-10-day-join-heading";a:2:{i:0;R:41469;i:1;R:40461;}s:44:"1232:founderemails-email-10-day-join-content";a:2:{i:0;R:41469;i:1;R:40461;}s:47:"1232:founderemails-email-10-day-wikiahelps-text";a:2:{i:0;R:41469;i:1;R:40461;}s:52:"1232:founderemails-email-10-day-wikiahelps-signature";a:2:{i:0;R:41469;i:1;R:40461;}s:45:"1232:founderemails-email-views-digest-subject";a:2:{i:0;R:41469;i:1;R:40461;}s:42:"1232:founderemails-email-views-digest-body";a:2:{i:0;R:41469;i:1;R:40461;}s:46:"1232:founderemails-email-views-digest-greeting";a:2:{i:0;R:41469;i:1;R:40461;}s:46:"1232:founderemails-email-views-digest-headline";a:2:{i:0;R:41469;i:1;R:40461;}s:45:"1232:founderemails-email-views-digest-content";a:2:{i:0;R:41469;i:1;R:40461;}s:47:"1232:founderemails-email-views-digest-signature";a:2:{i:0;R:41469;i:1;R:40461;}s:44:"1232:founderemails-email-views-digest-button";a:2:{i:0;R:41469;i:1;R:40461;}s:48:"1232:founderemails-email-complete-digest-subject";a:2:{i:0;R:41469;i:1;R:40461;}s:45:"1232:founderemails-email-complete-digest-body";a:2:{i:0;R:41469;i:1;R:40461;}s:49:"1232:founderemails-email-complete-digest-greeting";a:2:{i:0;R:41469;i:1;R:40461;}s:49:"1232:founderemails-email-complete-digest-headline";a:2:{i:0;R:41469;i:1;R:40461;}s:57:"1232:founderemails-email-complete-digest-content-heading1";a:2:{i:0;R:41469;i:1;R:40461;}s:49:"1232:founderemails-email-complete-digest-content1";a:2:{i:0;R:41469;i:1;R:40461;}s:57:"1232:founderemails-email-complete-digest-content-heading2";a:2:{i:0;R:41469;i:1;R:40461;}s:49:"1232:founderemails-email-complete-digest-content2";a:2:{i:0;R:41469;i:1;R:40461;}s:57:"1232:founderemails-email-complete-digest-content-heading3";a:2:{i:0;R:41469;i:1;R:40461;}s:49:"1232:founderemails-email-complete-digest-content3";a:2:{i:0;R:41469;i:1;R:40461;}s:50:"1232:founderemails-email-complete-digest-signature";a:2:{i:0;R:41469;i:1;R:40461;}s:47:"1232:founderemails-email-complete-digest-button";a:2:{i:0;R:41469;i:1;R:40461;}s:29:"1232:founderemails-pref-joins";a:2:{i:0;R:41469;i:1;R:40461;}s:29:"1232:founderemails-pref-edits";a:2:{i:0;R:41469;i:1;R:40461;}s:36:"1232:founderemails-pref-views-digest";a:2:{i:0;R:41469;i:1;R:40461;}s:39:"1232:founderemails-pref-complete-digest";a:2:{i:0;R:41469;i:1;R:40461;}s:32:"1232:founderemails-pref-joins-v2";a:2:{i:0;R:41469;i:1;R:40461;}s:32:"1232:founderemails-pref-edits-v2";a:2:{i:0;R:41469;i:1;R:40461;}s:39:"1232:founderemails-pref-views-digest-v2";a:2:{i:0;R:41469;i:1;R:40461;}s:42:"1232:founderemails-pref-complete-digest-v2";a:2:{i:0;R:41469;i:1;R:40461;}s:31:"1232:founderprogressbar-credits";a:2:{i:0;s:24:"wikia-founderprogressbar";i:1;R:40461;}s:36:"1232:founderprogressbar-widget-label";a:2:{i:0;R:41610;i:1;R:40461;}s:38:"1232:founderprogressbar-progress-label";a:2:{i:0;R:41610;i:1;R:40461;}s:46:"1232:founderprogressbar-progress-see-full-list";a:2:{i:0;R:41610;i:1;R:40461;}s:47:"1232:founderprogressbar-progress-hide-full-list";a:2:{i:0;R:41610;i:1;R:40461;}s:36:"1232:founderprogressbar-skip-for-now";a:2:{i:0;R:41610;i:1;R:40461;}s:38:"1232:founderprogressbar-task-completed";a:2:{i:0;R:41610;i:1;R:40461;}s:34:"1232:founderprogressbar-list-label";a:2:{i:0;R:41610;i:1;R:40461;}s:41:"1232:founderprogressbar-list-description1";a:2:{i:0;R:41610;i:1;R:40461;}s:41:"1232:founderprogressbar-list-description2";a:2:{i:0;R:41610;i:1;R:40461;}s:39:"1232:founderprogressbar-list-task-label";a:2:{i:0;R:41610;i:1;R:40461;}s:47:"1232:founderprogressbar-list-skipped-task-label";a:2:{i:0;R:41610;i:1;R:40461;}s:46:"1232:founderprogressbar-list-skipped-task-desc";a:2:{i:0;R:41610;i:1;R:40461;}s:45:"1232:founderprogressbar-list-bonus-task-label";a:2:{i:0;R:41610;i:1;R:40461;}s:44:"1232:founderprogressbar-list-bonus-task-desc";a:2:{i:0;R:41610;i:1;R:40461;}s:43:"1232:founderprogressbar-task-call-to-action";a:2:{i:0;R:41610;i:1;R:40461;}s:42:"1232:founderprogressbar-completion-message";a:2:{i:0;R:41610;i:1;R:40461;}s:41:"1232:founderprogressbar-bonus-task-notice";a:2:{i:0;R:41610;i:1;R:40461;}s:40:"1232:founderprogressbar-page-add10-label";a:2:{i:0;R:41610;i:1;R:40461;}s:41:"1232:founderprogressbar-page-add10-action";a:2:{i:0;R:41610;i:1;R:40461;}s:46:"1232:founderprogressbar-page-add10-description";a:2:{i:0;R:41610;i:1;R:40461;}s:49:"1232:founderprogressbar-themedesigner-visit-label";a:2:{i:0;R:41610;i:1;R:40461;}s:50:"1232:founderprogressbar-themedesigner-visit-action";a:2:{i:0;R:41610;i:1;R:40461;}s:55:"1232:founderprogressbar-themedesigner-visit-description";a:2:{i:0;R:41610;i:1;R:40461;}s:43:"1232:founderprogressbar-mainpage-edit-label";a:2:{i:0;R:41610;i:1;R:40461;}s:44:"1232:founderprogressbar-mainpage-edit-action";a:2:{i:0;R:41610;i:1;R:40461;}s:49:"1232:founderprogressbar-mainpage-edit-description";a:2:{i:0;R:41610;i:1;R:40461;}s:41:"1232:founderprogressbar-photo-add10-label";a:2:{i:0;R:41610;i:1;R:40461;}s:42:"1232:founderprogressbar-photo-add10-action";a:2:{i:0;R:41610;i:1;R:40461;}s:47:"1232:founderprogressbar-photo-add10-description";a:2:{i:0;R:41610;i:1;R:40461;}s:43:"1232:founderprogressbar-category-add3-label";a:2:{i:0;R:41610;i:1;R:40461;}s:44:"1232:founderprogressbar-category-add3-action";a:2:{i:0;R:41610;i:1;R:40461;}s:49:"1232:founderprogressbar-category-add3-description";a:2:{i:0;R:41610;i:1;R:40461;}s:47:"1232:founderprogressbar-commcentral-visit-label";a:2:{i:0;R:41610;i:1;R:40461;}s:48:"1232:founderprogressbar-commcentral-visit-action";a:2:{i:0;R:41610;i:1;R:40461;}s:53:"1232:founderprogressbar-commcentral-visit-description";a:2:{i:0;R:41610;i:1;R:40461;}s:45:"1232:founderprogressbar-commcentral-visit-url";a:2:{i:0;R:41610;i:1;R:40461;}s:48:"1232:founderprogressbar-wikiactivity-visit-label";a:2:{i:0;R:41610;i:1;R:40461;}s:49:"1232:founderprogressbar-wikiactivity-visit-action";a:2:{i:0;R:41610;i:1;R:40461;}s:54:"1232:founderprogressbar-wikiactivity-visit-description";a:2:{i:0;R:41610;i:1;R:40461;}s:42:"1232:founderprogressbar-profile-edit-label";a:2:{i:0;R:41610;i:1;R:40461;}s:43:"1232:founderprogressbar-profile-edit-action";a:2:{i:0;R:41610;i:1;R:40461;}s:48:"1232:founderprogressbar-profile-edit-description";a:2:{i:0;R:41610;i:1;R:40461;}s:41:"1232:founderprogressbar-photo-add20-label";a:2:{i:0;R:41610;i:1;R:40461;}s:42:"1232:founderprogressbar-photo-add20-action";a:2:{i:0;R:41610;i:1;R:40461;}s:47:"1232:founderprogressbar-photo-add20-description";a:2:{i:0;R:41610;i:1;R:40461;}s:42:"1232:founderprogressbar-total-edit75-label";a:2:{i:0;R:41610;i:1;R:40461;}s:43:"1232:founderprogressbar-total-edit75-action";a:2:{i:0;R:41610;i:1;R:40461;}s:48:"1232:founderprogressbar-total-edit75-description";a:2:{i:0;R:41610;i:1;R:40461;}s:40:"1232:founderprogressbar-page-add20-label";a:2:{i:0;R:41610;i:1;R:40461;}s:41:"1232:founderprogressbar-page-add20-action";a:2:{i:0;R:41610;i:1;R:40461;}s:46:"1232:founderprogressbar-page-add20-description";a:2:{i:0;R:41610;i:1;R:40461;}s:43:"1232:founderprogressbar-category-edit-label";a:2:{i:0;R:41610;i:1;R:40461;}s:44:"1232:founderprogressbar-category-edit-action";a:2:{i:0;R:41610;i:1;R:40461;}s:49:"1232:founderprogressbar-category-edit-description";a:2:{i:0;R:41610;i:1;R:40461;}s:45:"1232:founderprogressbar-wikialabs-visit-label";a:2:{i:0;R:41610;i:1;R:40461;}s:46:"1232:founderprogressbar-wikialabs-visit-action";a:2:{i:0;R:41610;i:1;R:40461;}s:51:"1232:founderprogressbar-wikialabs-visit-description";a:2:{i:0;R:41610;i:1;R:40461;}s:40:"1232:founderprogressbar-fb-connect-label";a:2:{i:0;R:41610;i:1;R:40461;}s:41:"1232:founderprogressbar-fb-connect-action";a:2:{i:0;R:41610;i:1;R:40461;}s:46:"1232:founderprogressbar-fb-connect-description";a:2:{i:0;R:41610;i:1;R:40461;}s:43:"1232:founderprogressbar-category-add5-label";a:2:{i:0;R:41610;i:1;R:40461;}s:44:"1232:founderprogressbar-category-add5-action";a:2:{i:0;R:41610;i:1;R:40461;}s:49:"1232:founderprogressbar-category-add5-description";a:2:{i:0;R:41610;i:1;R:40461;}s:46:"1232:founderprogressbar-pagelayout-visit-label";a:2:{i:0;R:41610;i:1;R:40461;}s:47:"1232:founderprogressbar-pagelayout-visit-action";a:2:{i:0;R:41610;i:1;R:40461;}s:52:"1232:founderprogressbar-pagelayout-visit-description";a:2:{i:0;R:41610;i:1;R:40461;}s:41:"1232:founderprogressbar-gallery-add-label";a:2:{i:0;R:41610;i:1;R:40461;}s:42:"1232:founderprogressbar-gallery-add-action";a:2:{i:0;R:41610;i:1;R:40461;}s:47:"1232:founderprogressbar-gallery-add-description";a:2:{i:0;R:41610;i:1;R:40461;}s:39:"1232:founderprogressbar-gallery-add-url";a:2:{i:0;R:41610;i:1;R:40461;}s:41:"1232:founderprogressbar-topnav-edit-label";a:2:{i:0;R:41610;i:1;R:40461;}s:42:"1232:founderprogressbar-topnav-edit-action";a:2:{i:0;R:41610;i:1;R:40461;}s:47:"1232:founderprogressbar-topnav-edit-description";a:2:{i:0;R:41610;i:1;R:40461;}s:48:"1232:founderprogressbar-mainpage-addslider-label";a:2:{i:0;R:41610;i:1;R:40461;}s:49:"1232:founderprogressbar-mainpage-addslider-action";a:2:{i:0;R:41610;i:1;R:40461;}s:54:"1232:founderprogressbar-mainpage-addslider-description";a:2:{i:0;R:41610;i:1;R:40461;}s:45:"1232:founderprogressbar-commcorner-edit-label";a:2:{i:0;R:41610;i:1;R:40461;}s:46:"1232:founderprogressbar-commcorner-edit-action";a:2:{i:0;R:41610;i:1;R:40461;}s:51:"1232:founderprogressbar-commcorner-edit-description";a:2:{i:0;R:41610;i:1;R:40461;}s:39:"1232:founderprogressbar-video-add-label";a:2:{i:0;R:41610;i:1;R:40461;}s:40:"1232:founderprogressbar-video-add-action";a:2:{i:0;R:41610;i:1;R:40461;}s:45:"1232:founderprogressbar-video-add-description";a:2:{i:0;R:41610;i:1;R:40461;}s:39:"1232:founderprogressbar-user-add5-label";a:2:{i:0;R:41610;i:1;R:40461;}s:40:"1232:founderprogressbar-user-add5-action";a:2:{i:0;R:41610;i:1;R:40461;}s:45:"1232:founderprogressbar-user-add5-description";a:2:{i:0;R:41610;i:1;R:40461;}s:37:"1232:founderprogressbar-user-add5-url";a:2:{i:0;R:41610;i:1;R:40461;}s:49:"1232:founderprogressbar-recentchanges-visit-label";a:2:{i:0;R:41610;i:1;R:40461;}s:50:"1232:founderprogressbar-recentchanges-visit-action";a:2:{i:0;R:41610;i:1;R:40461;}s:55:"1232:founderprogressbar-recentchanges-visit-description";a:2:{i:0;R:41610;i:1;R:40461;}s:43:"1232:founderprogressbar-wordmark-edit-label";a:2:{i:0;R:41610;i:1;R:40461;}s:44:"1232:founderprogressbar-wordmark-edit-action";a:2:{i:0;R:41610;i:1;R:40461;}s:49:"1232:founderprogressbar-wordmark-edit-description";a:2:{i:0;R:41610;i:1;R:40461;}s:47:"1232:founderprogressbar-mostvisited-visit-label";a:2:{i:0;R:41610;i:1;R:40461;}s:48:"1232:founderprogressbar-mostvisited-visit-action";a:2:{i:0;R:41610;i:1;R:40461;}s:53:"1232:founderprogressbar-mostvisited-visit-description";a:2:{i:0;R:41610;i:1;R:40461;}s:44:"1232:founderprogressbar-toptenlist-add-label";a:2:{i:0;R:41610;i:1;R:40461;}s:45:"1232:founderprogressbar-toptenlist-add-action";a:2:{i:0;R:41610;i:1;R:40461;}s:50:"1232:founderprogressbar-toptenlist-add-description";a:2:{i:0;R:41610;i:1;R:40461;}s:42:"1232:founderprogressbar-blogpost-add-label";a:2:{i:0;R:41610;i:1;R:40461;}s:43:"1232:founderprogressbar-blogpost-add-action";a:2:{i:0;R:41610;i:1;R:40461;}s:48:"1232:founderprogressbar-blogpost-add-description";a:2:{i:0;R:41610;i:1;R:40461;}s:39:"1232:founderprogressbar-fb-likes3-label";a:2:{i:0;R:41610;i:1;R:40461;}s:40:"1232:founderprogressbar-fb-likes3-action";a:2:{i:0;R:41610;i:1;R:40461;}s:45:"1232:founderprogressbar-fb-likes3-description";a:2:{i:0;R:41610;i:1;R:40461;}s:49:"1232:founderprogressbar-uncategorized-visit-label";a:2:{i:0;R:41610;i:1;R:40461;}s:50:"1232:founderprogressbar-uncategorized-visit-action";a:2:{i:0;R:41610;i:1;R:40461;}s:55:"1232:founderprogressbar-uncategorized-visit-description";a:2:{i:0;R:41610;i:1;R:40461;}s:43:"1232:founderprogressbar-total-edit300-label";a:2:{i:0;R:41610;i:1;R:40461;}s:44:"1232:founderprogressbar-total-edit300-action";a:2:{i:0;R:41610;i:1;R:40461;}s:49:"1232:founderprogressbar-total-edit300-description";a:2:{i:0;R:41610;i:1;R:40461;}s:47:"1232:founderprogressbar-bonus-photo-add10-label";a:2:{i:0;R:41610;i:1;R:40461;}s:48:"1232:founderprogressbar-bonus-photo-add10-action";a:2:{i:0;R:41610;i:1;R:40461;}s:53:"1232:founderprogressbar-bonus-photo-add10-description";a:2:{i:0;R:41610;i:1;R:40461;}s:45:"1232:founderprogressbar-bonus-page-add5-label";a:2:{i:0;R:41610;i:1;R:40461;}s:46:"1232:founderprogressbar-bonus-page-add5-action";a:2:{i:0;R:41610;i:1;R:40461;}s:51:"1232:founderprogressbar-bonus-page-add5-description";a:2:{i:0;R:41610;i:1;R:40461;}s:50:"1232:founderprogressbar-bonus-pagelayout-add-label";a:2:{i:0;R:41610;i:1;R:40461;}s:51:"1232:founderprogressbar-bonus-pagelayout-add-action";a:2:{i:0;R:41610;i:1;R:40461;}s:56:"1232:founderprogressbar-bonus-pagelayout-add-description";a:2:{i:0;R:41610;i:1;R:40461;}s:42:"1232:founderprogressbar-bonus-edit50-label";a:2:{i:0;R:41610;i:1;R:40461;}s:43:"1232:founderprogressbar-bonus-edit50-action";a:2:{i:0;R:41610;i:1;R:40461;}s:48:"1232:founderprogressbar-bonus-edit50-description";a:2:{i:0;R:41610;i:1;R:40461;}s:40:"1232:founderprogressbar-browse-page-name";a:2:{i:0;R:41610;i:1;R:40461;}s:25:"1232:wikiagameguides-desc";a:2:{i:0;s:16:"wikia-gameguides";i:1;R:40461;}s:28:"1232:globalnotification-desc";a:2:{i:0;s:24:"wikia-globalnotification";i:1;R:40461;}s:44:"1232:globalnotification-general-ajax-failure";a:2:{i:0;R:41737;i:1;R:40461;}s:25:"1232:globalwatchlist-desc";a:2:{i:0;s:21:"wikia-globalwatchlist";i:1;R:40461;}s:24:"1232:tog-watchlistdigest";a:2:{i:0;R:41740;i:1;R:40461;}s:29:"1232:tog-watchlistdigestclear";a:2:{i:0;R:41740;i:1;R:40461;}s:29:"1232:globalwatchlist-see-more";a:2:{i:0;R:41740;i:1;R:40461;}s:41:"1232:globalwatchlist-digest-email-subject";a:2:{i:0;R:41740;i:1;R:40461;}s:38:"1232:globalwatchlist-digest-email-body";a:2:{i:0;R:41740;i:1;R:40461;}s:44:"1232:globalwatchlist-blog-page-title-comment";a:2:{i:0;R:41740;i:1;R:40461;}s:34:"1232:globalwatchlist-no-page-found";a:2:{i:0;R:41740;i:1;R:40461;}s:39:"1232:globalwatchlist-no-blog-page-found";a:2:{i:0;R:41740;i:1;R:40461;}s:17:"1232:graceexpired";a:2:{i:0;s:18:"wikia-graceexpired";i:1;R:40461;}s:21:"1232:graceexpired-row";a:2:{i:0;R:41750;i:1;R:40461;}s:24:"1232:graceexpired-header";a:2:{i:0;R:41750;i:1;R:40461;}s:17:"1232:welcome-user";a:2:{i:0;s:15:"wikia-hawelcome";i:1;R:40461;}s:16:"1232:welcome-bot";a:2:{i:0;R:41754;i:1;R:40461;}s:20:"1232:welcome-enabled";a:2:{i:0;R:41754;i:1;R:40461;}s:22:"1232:welcome-user-page";a:2:{i:0;R:41754;i:1;R:40461;}s:25:"1232:welcome-message-user";a:2:{i:0;R:41754;i:1;R:40461;}s:25:"1232:welcome-message-anon";a:2:{i:0;R:41754;i:1;R:40461;}s:24:"1232:welcome-message-log";a:2:{i:0;R:41754;i:1;R:40461;}s:31:"1232:welcome-message-user-staff";a:2:{i:0;R:41754;i:1;R:40461;}s:31:"1232:welcome-message-anon-staff";a:2:{i:0;R:41754;i:1;R:40461;}s:18:"1232:staffsig-text";a:2:{i:0;R:41754;i:1;R:40461;}s:18:"1232:hawelcomeedit";a:2:{i:0;R:41754;i:1;R:40461;}s:30:"1232:welcome-message-wall-user";a:2:{i:0;R:41754;i:1;R:40461;}s:36:"1232:welcome-message-wall-user-staff";a:2:{i:0;R:41754;i:1;R:40461;}s:30:"1232:welcome-message-wall-anon";a:2:{i:0;R:41754;i:1;R:40461;}s:36:"1232:welcome-message-wall-anon-staff";a:2:{i:0;R:41754;i:1;R:40461;}s:21:"1232:healthcheck-desc";a:2:{i:0;s:17:"wikia-healthcheck";i:1;R:40461;}s:25:"1232:huluvideopanel-title";a:2:{i:0;s:20:"wikia-huluvideopanel";i:1;R:40461;}s:29:"1232:lightbox_details_tooltip";a:2:{i:0;s:19:"wikia-imagelightbox";i:1;R:40461;}s:19:"1232:lightbox-forum";a:2:{i:0;R:41774;i:1;R:40461;}s:27:"1232:lightbox-standard-link";a:2:{i:0;R:41774;i:1;R:40461;}s:23:"1232:lightbox-blog-link";a:2:{i:0;R:41774;i:1;R:40461;}s:18:"1232:lightbox-send";a:2:{i:0;R:41774;i:1;R:40461;}s:31:"1232:lightbox-share-description";a:2:{i:0;R:41774;i:1;R:40461;}s:33:"1232:lightbox-share-email-subject";a:2:{i:0;R:41774;i:1;R:40461;}s:30:"1232:lightbox-share-email-body";a:2:{i:0;R:41774;i:1;R:40461;}s:32:"1232:lightbox-share-button-email";a:2:{i:0;R:41774;i:1;R:40461;}s:30:"1232:lightbox-share-button-www";a:2:{i:0;R:41774;i:1;R:40461;}s:32:"1232:lightbox-share-button-embed";a:2:{i:0;R:41774;i:1;R:40461;}s:31:"1232:lightbox-share-email-label";a:2:{i:0;R:41774;i:1;R:40461;}s:36:"1232:lightbox-share-email-page-label";a:2:{i:0;R:41774;i:1;R:40461;}s:44:"1232:lightbox-share-email-page-label-address";a:2:{i:0;R:41774;i:1;R:40461;}s:36:"1232:lightbox-share-email-ok-caption";a:2:{i:0;R:41774;i:1;R:40461;}s:36:"1232:lightbox-share-email-ok-content";a:2:{i:0;R:41774;i:1;R:40461;}s:39:"1232:lightbox-share-email-error-caption";a:2:{i:0;R:41774;i:1;R:40461;}s:39:"1232:lightbox-share-email-error-content";a:2:{i:0;R:41774;i:1;R:40461;}s:37:"1232:lightbox-share-email-error-login";a:2:{i:0;R:41774;i:1;R:40461;}s:41:"1232:lightbox-share-email-error-noaddress";a:2:{i:0;R:41774;i:1;R:40461;}s:28:"1232:lightbox-visit-the-wiki";a:2:{i:0;R:41774;i:1;R:40461;}s:18:"1232:imgplc-create";a:2:{i:0;s:22:"wikia-imageplaceholder";i:1;R:40461;}s:23:"1232:imgplc-placeholder";a:2:{i:0;R:41796;i:1;R:40461;}s:17:"1232:imgplc-image";a:2:{i:0;R:41796;i:1;R:40461;}s:24:"1232:imgplc-notinhistory";a:2:{i:0;R:41796;i:1;R:40461;}s:22:"1232:imageserving-desc";a:2:{i:0;s:18:"wikia-imageserving";i:1;R:40461;}s:39:"1232:interstitial-default-campaign-code";a:2:{i:0;s:18:"wikia-interstitial";i:1;R:40461;}s:25:"1232:interstitial-skip-ad";a:2:{i:0;R:41803;i:1;R:40461;}s:43:"1232:interstitial-already-logged-in-no-link";a:2:{i:0;R:41803;i:1;R:40461;}s:34:"1232:interstitial-disabled-no-link";a:2:{i:0;R:41803;i:1;R:40461;}s:27:"1232:interstitial-link-away";a:2:{i:0;R:41803;i:1;R:40461;}s:22:"1232:exitstitial-title";a:2:{i:0;R:41803;i:1;R:40461;}s:25:"1232:exitstitial-register";a:2:{i:0;R:41803;i:1;R:40461;}s:23:"1232:exitstitial-button";a:2:{i:0;R:41803;i:1;R:40461;}s:31:"1232:outbound-screen-login-text";a:2:{i:0;s:33:"wikia-interstitial-outboundscreen";i:1;R:40461;}s:46:"1232:outbound-screen-already-logged-in-no-link";a:2:{i:0;R:41812;i:1;R:40461;}s:36:"1232:outbound-screen-you-are-leaving";a:2:{i:0;R:41812;i:1;R:40461;}s:24:"1232:interwikidispatcher";a:2:{i:0;s:25:"wikia-interwikidispatcher";i:1;R:40461;}s:29:"1232:interwikidispatcher-desc";a:2:{i:0;R:41816;i:1;R:40461;}s:16:"1232:landingpage";a:2:{i:0;s:17:"wikia-landingpage";i:1;R:40461;}s:32:"1232:landingpage-start-exploring";a:2:{i:0;R:41819;i:1;R:40461;}s:37:"1232:landingpage-start-exploring-text";a:2:{i:0;R:41819;i:1;R:40461;}s:24:"1232:landingpage-readfaq";a:2:{i:0;R:41819;i:1;R:40461;}s:21:"1232:landingpage-text";a:2:{i:0;R:41819;i:1;R:40461;}s:35:"1232:landingpage-buttons-learn-more";a:2:{i:0;R:41819;i:1;R:40461;}s:31:"1232:landingpage-language-links";a:2:{i:0;R:41819;i:1;R:40461;}s:40:"1232:landingpage-buttons-about-wikia-url";a:2:{i:0;R:41819;i:1;R:40461;}s:28:"1232:landingpage-twitter-url";a:2:{i:0;R:41819;i:1;R:40461;}s:29:"1232:landingpage-facebook-url";a:2:{i:0;R:41819;i:1;R:40461;}s:31:"1232:landingpage-wikia-blog-url";a:2:{i:0;R:41819;i:1;R:40461;}s:24:"1232:landingpage-faq-url";a:2:{i:0;R:41819;i:1;R:40461;}s:22:"1232:landingpage-sites";a:2:{i:0;R:41819;i:1;R:40461;}s:27:"1232:tog-disablelinksuggest";a:2:{i:0;s:17:"wikia-linksuggest";i:1;R:40461;}s:16:"1232:logger-desc";a:2:{i:0;s:12:"wikia-logger";i:1;R:40461;}s:11:"1232:logger";a:2:{i:0;R:41835;i:1;R:40461;}s:16:"1232:loggertitle";a:2:{i:0;R:41835;i:1;R:40461;}s:24:"1232:loggerselectlogname";a:2:{i:0;R:41835;i:1;R:40461;}s:29:"1232:loggerrecordswithpercent";a:2:{i:0;R:41835;i:1;R:40461;}s:18:"1232:loggerrecords";a:2:{i:0;R:41835;i:1;R:40461;}s:13:"1232:loggergo";a:2:{i:0;R:41835;i:1;R:40461;}s:19:"1232:loggernoresult";a:2:{i:0;R:41835;i:1;R:40461;}s:19:"1232:lookupcontribs";a:2:{i:0;s:20:"wikia-lookupcontribs";i:1;R:40461;}s:24:"1232:lookupcontribstitle";a:2:{i:0;R:41844;i:1;R:40461;}s:38:"1232:lookupcontribsrecentcontributions";a:2:{i:0;R:41844;i:1;R:40461;}s:37:"1232:lookupcontribsfinalcontributions";a:2:{i:0;R:41844;i:1;R:40461;}s:23:"1232:lookupcontribshelp";a:2:{i:0;R:41844;i:1;R:40461;}s:32:"1232:lookupcontribusernotspecify";a:2:{i:0;R:41844;i:1;R:40461;}s:29:"1232:lookupcontribsselectuser";a:2:{i:0;R:41844;i:1;R:40461;}s:28:"1232:lookupcontribsselectfor";a:2:{i:0;R:41844;i:1;R:40461;}s:30:"1232:lookupcontribsdisplaymode";a:2:{i:0;R:41844;i:1;R:40461;}s:35:"1232:lookupcontribsselectmodenormal";a:2:{i:0;R:41844;i:1;R:40461;}s:34:"1232:lookupcontribsselectmodefinal";a:2:{i:0;R:41844;i:1;R:40461;}s:32:"1232:lookupcontribsselectmodeall";a:2:{i:0;R:41844;i:1;R:40461;}s:27:"1232:lookupcontribsfullurls";a:2:{i:0;R:41844;i:1;R:40461;}s:24:"1232:lookupcontribslinks";a:2:{i:0;R:41844;i:1;R:40461;}s:21:"1232:lookupcontribsgo";a:2:{i:0;R:41844;i:1;R:40461;}s:30:"1232:lookupcontribsinvaliduser";a:2:{i:0;R:41844;i:1;R:40461;}s:34:"1232:lookupcontribsinvalidviewmode";a:2:{i:0;R:41844;i:1;R:40461;}s:30:"1232:lookupcontribsinvalidmode";a:2:{i:0;R:41844;i:1;R:40461;}s:30:"1232:lookupcontribsselectwikis";a:2:{i:0;R:41844;i:1;R:40461;}s:32:"1232:lookupcontribslistwikiainfo";a:2:{i:0;R:41844;i:1;R:40461;}s:32:"1232:lookupcontribsnoresultfound";a:2:{i:0;R:41844;i:1;R:40461;}s:33:"1232:lookupcontribsinvalidresults";a:2:{i:0;R:41844;i:1;R:40461;}s:23:"1232:lookupcontribswiki";a:2:{i:0;R:41844;i:1;R:40461;}s:29:"1232:lookupcontribswikidbname";a:2:{i:0;R:41844;i:1;R:40461;}s:26:"1232:lookupcontribswikiurl";a:2:{i:0;R:41844;i:1;R:40461;}s:28:"1232:lookupcontribswikititle";a:2:{i:0;R:41844;i:1;R:40461;}s:30:"1232:lookupcontribswikioptions";a:2:{i:0;R:41844;i:1;R:40461;}s:31:"1232:lookupcontribscontribslink";a:2:{i:0;R:41844;i:1;R:40461;}s:26:"1232:lookupcontribsdetails";a:2:{i:0;R:41844;i:1;R:40461;}s:29:"1232:lookupcontribslastedited";a:2:{i:0;R:41844;i:1;R:40461;}s:31:"1232:lookupcontribsrecordspager";a:2:{i:0;R:41844;i:1;R:40461;}s:27:"1232:lookupcontribscontribs";a:2:{i:0;R:41844;i:1;R:40461;}s:28:"1232:lookupcontribsnbrresult";a:2:{i:0;R:41844;i:1;R:40461;}s:23:"1232:lookupcontribsnext";a:2:{i:0;R:41844;i:1;R:40461;}s:27:"1232:lookupcontribsprevious";a:2:{i:0;R:41844;i:1;R:40461;}s:30:"1232:lookupcontribspageremoved";a:2:{i:0;R:41844;i:1;R:40461;}s:26:"1232:lookupcontribsrestore";a:2:{i:0;R:41844;i:1;R:40461;}s:22:"1232:lookupcontribslog";a:2:{i:0;R:41844;i:1;R:40461;}s:23:"1232:lookupcontribshist";a:2:{i:0;R:41844;i:1;R:40461;}s:23:"1232:lookupcontribsdiff";a:2:{i:0;R:41844;i:1;R:40461;}s:25:"1232:right-lookupcontribs";a:2:{i:0;R:41844;i:1;R:40461;}s:28:"1232:lookupcontribsshowpages";a:2:{i:0;R:41844;i:1;R:40461;}s:26:"1232:lookupcontribscontent";a:2:{i:0;R:41844;i:1;R:40461;}s:38:"1232:lookupcontribscontribtitleforuser";a:2:{i:0;R:41844;i:1;R:40461;}s:25:"1232:lookupcontribsnormal";a:2:{i:0;R:41844;i:1;R:40461;}s:24:"1232:lookupcontribsfinal";a:2:{i:0;R:41844;i:1;R:40461;}s:22:"1232:lookupcontribsall";a:2:{i:0;R:41844;i:1;R:40461;}s:30:"1232:activityindicator-message";a:2:{i:0;s:23:"wikia-mobile-gameguides";i:1;R:40461;}s:23:"1232:window-wikis-title";a:2:{i:0;R:41892;i:1;R:40461;}s:38:"1232:window-wikis-wikilist-search-hint";a:2:{i:0;R:41892;i:1;R:40461;}s:31:"1232:window-category-load-batch";a:2:{i:0;R:41892;i:1;R:40461;}s:32:"1232:window-article-button-close";a:2:{i:0;R:41892;i:1;R:40461;}s:31:"1232:window-article-button-back";a:2:{i:0;R:41892;i:1;R:40461;}s:37:"1232:window-article-menu-search-label";a:2:{i:0;R:41892;i:1;R:40461;}s:40:"1232:window-article-menu-dashboard-label";a:2:{i:0;R:41892;i:1;R:40461;}s:37:"1232:window-article-menu-cancel-label";a:2:{i:0;R:41892;i:1;R:40461;}s:26:"1232:searchview-no-results";a:2:{i:0;R:41892;i:1;R:40461;}s:32:"1232:searchview-button-back-list";a:2:{i:0;R:41892;i:1;R:40461;}s:35:"1232:searchview-button-back-article";a:2:{i:0;R:41892;i:1;R:40461;}s:19:"1232:searchbar-hint";a:2:{i:0;R:41892;i:1;R:40461;}s:41:"1232:alert-download-updated-wikis-message";a:2:{i:0;R:41892;i:1;R:40461;}s:43:"1232:alert-download-updated-wikis-button-ok";a:2:{i:0;R:41892;i:1;R:40461;}s:26:"1232:error-update-required";a:2:{i:0;R:41892;i:1;R:40461;}s:24:"1232:error-no-connection";a:2:{i:0;R:41892;i:1;R:40461;}s:17:"1232:error-server";a:2:{i:0;R:41892;i:1;R:40461;}s:21:"1232:error-json-parse";a:2:{i:0;R:41892;i:1;R:40461;}s:16:"1232:app-loading";a:2:{i:0;s:22:"wikia-mobile-lyricwiki";i:1;R:40461;}s:19:"1232:app-tab-search";a:2:{i:0;R:41912;i:1;R:40461;}s:18:"1232:app-tab-about";a:2:{i:0;R:41912;i:1;R:40461;}s:19:"1232:app-tab-browse";a:2:{i:0;R:41912;i:1;R:40461;}s:17:"1232:app-tab-sotd";a:2:{i:0;R:41912;i:1;R:40461;}s:26:"1232:app-async-error-title";a:2:{i:0;R:41912;i:1;R:40461;}s:28:"1232:app-async-error-message";a:2:{i:0;R:41912;i:1;R:40461;}s:31:"1232:app-nonetwork-dialog-title";a:2:{i:0;R:41912;i:1;R:40461;}s:33:"1232:app-nonetwork-dialog-message";a:2:{i:0;R:41912;i:1;R:40461;}s:38:"1232:app-nonetwork-dialog-close-button";a:2:{i:0;R:41912;i:1;R:40461;}s:14:"1232:search-go";a:2:{i:0;R:41912;i:1;R:40461;}s:21:"1232:search-hint-text";a:2:{i:0;R:41912;i:1;R:40461;}s:26:"1232:search-no-match-found";a:2:{i:0;R:41912;i:1;R:40461;}s:32:"1232:search-no-match-found-query";a:2:{i:0;R:41912;i:1;R:40461;}s:25:"1232:search-results-title";a:2:{i:0;R:41912;i:1;R:40461;}s:16:"1232:login-label";a:2:{i:0;R:41912;i:1;R:40461;}s:24:"1232:login-username-hint";a:2:{i:0;R:41912;i:1;R:40461;}s:24:"1232:login-password-hint";a:2:{i:0;R:41912;i:1;R:40461;}s:24:"1232:login-submit-button";a:2:{i:0;R:41912;i:1;R:40461;}s:18:"1232:about-heading";a:2:{i:0;R:41912;i:1;R:40461;}s:18:"1232:about-credits";a:2:{i:0;R:41912;i:1;R:40461;}s:23:"1232:about-heading-tips";a:2:{i:0;R:41912;i:1;R:40461;}s:17:"1232:about-tips-0";a:2:{i:0;R:41912;i:1;R:40461;}s:17:"1232:about-tips-1";a:2:{i:0;R:41912;i:1;R:40461;}s:28:"1232:about-heading-licensing";a:2:{i:0;R:41912;i:1;R:40461;}s:22:"1232:about-licensing-0";a:2:{i:0;R:41912;i:1;R:40461;}s:27:"1232:about-heading-feedback";a:2:{i:0;R:41912;i:1;R:40461;}s:21:"1232:about-feedback-0";a:2:{i:0;R:41912;i:1;R:40461;}s:23:"1232:about-heading-rate";a:2:{i:0;R:41912;i:1;R:40461;}s:25:"1232:about-rate-0-android";a:2:{i:0;R:41912;i:1;R:40461;}s:21:"1232:about-rate-0-ios";a:2:{i:0;R:41912;i:1;R:40461;}s:23:"1232:gracenote-takedown";a:2:{i:0;R:41912;i:1;R:40461;}s:25:"1232:lyrics-artist-byline";a:2:{i:0;R:41912;i:1;R:40461;}s:29:"1232:ringtone-matcher-by-song";a:2:{i:0;R:41912;i:1;R:40461;}s:22:"1232:main-tab-discover";a:2:{i:0;s:21:"wikia-mobile-wikiapad";i:1;R:40461;}s:22:"1232:main-tab-personal";a:2:{i:0;R:41947;i:1;R:40461;}s:20:"1232:main-tab-search";a:2:{i:0;R:41947;i:1;R:40461;}s:21:"1232:main-tab-offline";a:2:{i:0;R:41947;i:1;R:40461;}s:33:"1232:tab-discover-loading-message";a:2:{i:0;R:41947;i:1;R:40461;}s:41:"1232:tab-discover-no-network-dialog-title";a:2:{i:0;R:41947;i:1;R:40461;}s:43:"1232:tab-discover-no-network-dialog-message";a:2:{i:0;R:41947;i:1;R:40461;}s:48:"1232:tab-discover-no-network-dialog-close-button";a:2:{i:0;R:41947;i:1;R:40461;}s:31:"1232:tab-search-loading-message";a:2:{i:0;R:41947;i:1;R:40461;}s:28:"1232:browser-loading-message";a:2:{i:0;R:41947;i:1;R:40461;}s:26:"1232:mostpopularcategories";a:2:{i:0;s:27:"wikia-mostpopularcategories";i:1;R:40461;}s:21:"1232:mostvisitedpages";a:2:{i:0;s:22:"wikia-mostvisitedpages";i:1;R:40461;}s:31:"1232:mostvisitedpagessearchtext";a:2:{i:0;R:41960;i:1;R:40461;}s:30:"1232:mostvisitedpagessearchbtn";a:2:{i:0;R:41960;i:1;R:40461;}s:27:"1232:mostvisitedpageslatest";a:2:{i:0;R:41960;i:1;R:40461;}s:31:"1232:mostvisitedpageslatestlink";a:2:{i:0;R:41960;i:1;R:40461;}s:28:"1232:mostvisitedpagesalllink";a:2:{i:0;R:41960;i:1;R:40461;}s:31:"1232:multitasks-link-back-label";a:2:{i:0;s:16:"wikia-multitasks";i:1;R:40461;}s:18:"1232:multiwikiedit";a:2:{i:0;R:41967;i:1;R:40461;}s:25:"1232:multiwikiedit_button";a:2:{i:0;R:41967;i:1;R:40461;}s:26:"1232:multiwikiedit_confirm";a:2:{i:0;R:41967;i:1;R:40461;}s:23:"1232:multiwikiedit_help";a:2:{i:0;R:41967;i:1;R:40461;}s:26:"1232:multiwikiedit_caption";a:2:{i:0;R:41967;i:1;R:40461;}s:24:"1232:multiwikiedit_title";a:2:{i:0;R:41967;i:1;R:40461;}s:21:"1232:multiwikiedit_as";a:2:{i:0;R:41967;i:1;R:40461;}s:29:"1232:multiwikiedit_both_modes";a:2:{i:0;R:41967;i:1;R:40461;}s:21:"1232:multiwikiedit_or";a:2:{i:0;R:41967;i:1;R:40461;}s:29:"1232:multiwikiedit_task_added";a:2:{i:0;R:41967;i:1;R:40461;}s:29:"1232:multiwikiedit_task_error";a:2:{i:0;R:41967;i:1;R:40461;}s:37:"1232:multiwikiedit_task_none_selected";a:2:{i:0;R:41967;i:1;R:40461;}s:28:"1232:multiwikiedit_task_link";a:2:{i:0;R:41967;i:1;R:40461;}s:21:"1232:multiwikiedit_on";a:2:{i:0;R:41967;i:1;R:40461;}s:23:"1232:multiwikiedit_page";a:2:{i:0;R:41967;i:1;R:40461;}s:28:"1232:multiwikiedit_page_text";a:2:{i:0;R:41967;i:1;R:40461;}s:25:"1232:multiwikiedit_reason";a:2:{i:0;R:41967;i:1;R:40461;}s:31:"1232:multiwikiedit_list_caption";a:2:{i:0;R:41967;i:1;R:40461;}s:36:"1232:multiwikiedit_minoredit_caption";a:2:{i:0;R:41967;i:1;R:40461;}s:34:"1232:multiwikiedit_botedit_caption";a:2:{i:0;R:41967;i:1;R:40461;}s:38:"1232:multiwikiedit_autosummary_caption";a:2:{i:0;R:41967;i:1;R:40461;}s:42:"1232:multiwikiedit_norecentchanges_caption";a:2:{i:0;R:41967;i:1;R:40461;}s:34:"1232:multiwikiedit_newonly_caption";a:2:{i:0;R:41967;i:1;R:40461;}s:34:"1232:multiwikiedit_choose_articles";a:2:{i:0;R:41967;i:1;R:40461;}s:29:"1232:multiwikiedit_processing";a:2:{i:0;R:41967;i:1;R:40461;}s:28:"1232:multiwikiedit_from_file";a:2:{i:0;R:41967;i:1;R:40461;}s:28:"1232:multiwikiedit_from_form";a:2:{i:0;R:41967;i:1;R:40461;}s:31:"1232:multiwikiedit_summary_text";a:2:{i:0;R:41967;i:1;R:40461;}s:28:"1232:multiwikiedit_this_wiki";a:2:{i:0;R:41967;i:1;R:40461;}s:32:"1232:multiwikiedit_inbox_caption";a:2:{i:0;R:41967;i:1;R:40461;}s:28:"1232:multiwikiedit_all_wikis";a:2:{i:0;R:41967;i:1;R:40461;}s:33:"1232:multiwikiedit_selected_wikis";a:2:{i:0;R:41967;i:1;R:40461;}s:35:"1232:multiwikiedit_success_subtitle";a:2:{i:0;R:41967;i:1;R:40461;}s:28:"1232:multiwikiedit_link_back";a:2:{i:0;R:41967;i:1;R:40461;}s:39:"1232:multiwikiedit_omitting_nonexistant";a:2:{i:0;R:41967;i:1;R:40461;}s:35:"1232:multiwikiedit_omitting_invalid";a:2:{i:0;R:41967;i:1;R:40461;}s:34:"1232:multiwikiedit_file_bad_format";a:2:{i:0;R:41967;i:1;R:40461;}s:31:"1232:multiwikiedit_file_missing";a:2:{i:0;R:41967;i:1;R:40461;}s:32:"1232:multiwikiedit_select_script";a:2:{i:0;R:41967;i:1;R:40461;}s:34:"1232:multiwikiedit_select_yourself";a:2:{i:0;R:41967;i:1;R:40461;}s:26:"1232:multiwikiedit_no_page";a:2:{i:0;R:41967;i:1;R:40461;}s:32:"1232:multiwikiedit_split_results";a:2:{i:0;R:41967;i:1;R:40461;}s:35:"1232:multiwikiedit_max_display_size";a:2:{i:0;R:41967;i:1;R:40461;}s:27:"1232:multiwikiedit_add_text";a:2:{i:0;R:41967;i:1;R:40461;}s:31:"1232:multiwikiedit_supply_wikis";a:2:{i:0;R:41967;i:1;R:40461;}s:29:"1232:multiwikiedit_tasks_list";a:2:{i:0;R:41967;i:1;R:40461;}s:34:"1232:multiwikiedit_general_options";a:2:{i:0;R:41967;i:1;R:40461;}s:31:"1232:multiwikiedit_edit_options";a:2:{i:0;R:41967;i:1;R:40461;}s:16:"1232:multidelete";a:2:{i:0;R:41967;i:1;R:40461;}s:23:"1232:multidelete_button";a:2:{i:0;R:41967;i:1;R:40461;}s:21:"1232:multidelete_help";a:2:{i:0;R:41967;i:1;R:40461;}s:24:"1232:multidelete_caption";a:2:{i:0;R:41967;i:1;R:40461;}s:22:"1232:multidelete_title";a:2:{i:0;R:41967;i:1;R:40461;}s:27:"1232:multidelete_both_modes";a:2:{i:0;R:41967;i:1;R:40461;}s:19:"1232:multidelete_or";a:2:{i:0;R:41967;i:1;R:40461;}s:23:"1232:multidelete_reason";a:2:{i:0;R:41967;i:1;R:40461;}s:38:"1232:multidelete_error_empty_selection";a:2:{i:0;R:41967;i:1;R:40461;}s:34:"1232:multidelete_error_empty_pages";a:2:{i:0;R:41967;i:1;R:40461;}s:33:"1232:multidelete_error_multi_page";a:2:{i:0;R:41967;i:1;R:40461;}s:32:"1232:multidelete_info_empty_list";a:2:{i:0;R:41967;i:1;R:40461;}s:27:"1232:multidelete_task_added";a:2:{i:0;R:41967;i:1;R:40461;}s:27:"1232:multidelete_task_error";a:2:{i:0;R:41967;i:1;R:40461;}s:35:"1232:multidelete_task_none_selected";a:2:{i:0;R:41967;i:1;R:40461;}s:26:"1232:multidelete_task_link";a:2:{i:0;R:41967;i:1;R:40461;}s:27:"1232:multidelete_select_all";a:2:{i:0;R:41967;i:1;R:40461;}s:21:"1232:multidelete_page";a:2:{i:0;R:41967;i:1;R:40461;}s:29:"1232:multidelete_list_caption";a:2:{i:0;R:41967;i:1;R:40461;}s:32:"1232:multidelete_choose_articles";a:2:{i:0;R:41967;i:1;R:40461;}s:27:"1232:multidelete_processing";a:2:{i:0;R:41967;i:1;R:40461;}s:26:"1232:multidelete_this_wiki";a:2:{i:0;R:41967;i:1;R:40461;}s:30:"1232:multidelete_inbox_caption";a:2:{i:0;R:41967;i:1;R:40461;}s:26:"1232:multidelete_all_wikis";a:2:{i:0;R:41967;i:1;R:40461;}s:31:"1232:multidelete_selected_wikis";a:2:{i:0;R:41967;i:1;R:40461;}s:33:"1232:multidelete_success_subtitle";a:2:{i:0;R:41967;i:1;R:40461;}s:26:"1232:multidelete_link_back";a:2:{i:0;R:41967;i:1;R:40461;}s:37:"1232:multidelete_omitting_nonexistant";a:2:{i:0;R:41967;i:1;R:40461;}s:33:"1232:multidelete_omitting_invalid";a:2:{i:0;R:41967;i:1;R:40461;}s:32:"1232:multidelete_file_bad_format";a:2:{i:0;R:41967;i:1;R:40461;}s:29:"1232:multidelete_file_missing";a:2:{i:0;R:41967;i:1;R:40461;}s:30:"1232:multidelete_select_script";a:2:{i:0;R:41967;i:1;R:40461;}s:24:"1232:multidelete_no_page";a:2:{i:0;R:41967;i:1;R:40461;}s:30:"1232:multidelete_split_results";a:2:{i:0;R:41967;i:1;R:40461;}s:33:"1232:multidelete_max_display_size";a:2:{i:0;R:41967;i:1;R:40461;}s:43:"1232:multidelete_brazilian_portuguese_wikis";a:2:{i:0;R:41967;i:1;R:40461;}s:29:"1232:multidelete_hebrew_wikis";a:2:{i:0;R:41967;i:1;R:40461;}s:30:"1232:multidelete_chinese_wikis";a:2:{i:0;R:41967;i:1;R:40461;}s:29:"1232:multidelete_polish_wikis";a:2:{i:0;R:41967;i:1;R:40461;}s:28:"1232:multidelete_czech_wikis";a:2:{i:0;R:41967;i:1;R:40461;}s:33:"1232:multidelete_portuguese_wikis";a:2:{i:0;R:41967;i:1;R:40461;}s:28:"1232:multidelete_dutch_wikis";a:2:{i:0;R:41967;i:1;R:40461;}s:30:"1232:multidelete_italian_wikis";a:2:{i:0;R:41967;i:1;R:40461;}s:30:"1232:multidelete_russian_wikis";a:2:{i:0;R:41967;i:1;R:40461;}s:30:"1232:multidelete_english_wikis";a:2:{i:0;R:41967;i:1;R:40461;}s:31:"1232:multidelete_japanese_wikis";a:2:{i:0;R:41967;i:1;R:40461;}s:30:"1232:multidelete_finnish_wikis";a:2:{i:0;R:41967;i:1;R:40461;}s:30:"1232:multidelete_spanish_wikis";a:2:{i:0;R:41967;i:1;R:40461;}s:29:"1232:multidelete_french_wikis";a:2:{i:0;R:41967;i:1;R:40461;}s:30:"1232:multidelete_swedish_wikis";a:2:{i:0;R:41967;i:1;R:40461;}s:29:"1232:multidelete_german_wikis";a:2:{i:0;R:41967;i:1;R:40461;}s:20:"1232:multiwikifinder";a:2:{i:0;R:41967;i:1;R:40461;}s:27:"1232:multiwikifindpagenames";a:2:{i:0;R:41967;i:1;R:40461;}s:27:"1232:multiwikienterpagename";a:2:{i:0;R:41967;i:1;R:40461;}s:21:"1232:multiwikirecords";a:2:{i:0;R:41967;i:1;R:40461;}s:16:"1232:myhome-desc";a:2:{i:0;s:12:"wikia-myhome";i:1;R:40461;}s:11:"1232:myhome";a:2:{i:0;R:42072;i:1;R:40461;}s:17:"1232:wikiactivity";a:2:{i:0;R:42072;i:1;R:40461;}s:25:"1232:myhome-activity-more";a:2:{i:0;R:42072;i:1;R:40461;}s:25:"1232:myhome-activity-feed";a:2:{i:0;R:42072;i:1;R:40461;}s:31:"1232:myhome-activity-feed-empty";a:2:{i:0;R:42072;i:1;R:40461;}s:26:"1232:myhome-watchlist-feed";a:2:{i:0;R:42072;i:1;R:40461;}s:32:"1232:myhome-watchlist-feed-empty";a:2:{i:0;R:42072;i:1;R:40461;}s:35:"1232:myhome-user-contributions-feed";a:2:{i:0;R:42072;i:1;R:40461;}s:26:"1232:myhome-hot-spots-feed";a:2:{i:0;R:42072;i:1;R:40461;}s:32:"1232:myhome-hot-spots-feed-empty";a:2:{i:0;R:42072;i:1;R:40461;}s:28:"1232:myhome-hot-spots-newest";a:2:{i:0;R:42072;i:1;R:40461;}s:30:"1232:tog-myhomedisableredirect";a:2:{i:0;R:42072;i:1;R:40461;}s:17:"1232:prefs-myhome";a:2:{i:0;R:42072;i:1;R:40461;}s:24:"1232:myhome-feed-newpage";a:2:{i:0;R:42072;i:1;R:40461;}s:21:"1232:myhome-feed-edit";a:2:{i:0;R:42072;i:1;R:40461;}s:21:"1232:myhome-feed-move";a:2:{i:0;R:42072;i:1;R:40461;}s:25:"1232:myhome-feed-talkpage";a:2:{i:0;R:42072;i:1;R:40461;}s:28:"1232:myhome-feed-blogcomment";a:2:{i:0;R:42072;i:1;R:40461;}s:23:"1232:myhome-feed-delete";a:2:{i:0;R:42072;i:1;R:40461;}s:22:"1232:myhome-feed-image";a:2:{i:0;R:42072;i:1;R:40461;}s:22:"1232:myhome-feed-video";a:2:{i:0;R:42072;i:1;R:40461;}s:31:"1232:myhome-feed-categorization";a:2:{i:0;R:42072;i:1;R:40461;}s:27:"1232:myhome-feed-created-by";a:2:{i:0;R:42072;i:1;R:40461;}s:25:"1232:myhome-feed-added-by";a:2:{i:0;R:42072;i:1;R:40461;}s:26:"1232:myhome-feed-edited-by";a:2:{i:0;R:42072;i:1;R:40461;}s:26:"1232:myhome-feed-posted-by";a:2:{i:0;R:42072;i:1;R:40461;}s:27:"1232:myhome-feed-comment-by";a:2:{i:0;R:42072;i:1;R:40461;}s:27:"1232:myhome-feed-deleted-by";a:2:{i:0;R:42072;i:1;R:40461;}s:25:"1232:myhome-feed-moved-by";a:2:{i:0;R:42072;i:1;R:40461;}s:43:"1232:myhome-feed-article-comment-created-by";a:2:{i:0;R:42072;i:1;R:40461;}s:42:"1232:myhome-feed-article-comment-edited-by";a:2:{i:0;R:42072;i:1;R:40461;}s:19:"1232:myhome-feed-by";a:2:{i:0;R:42072;i:1;R:40461;}s:25:"1232:myhome-feed-diff-alt";a:2:{i:0;R:42072;i:1;R:40461;}s:33:"1232:myhome-feed-new-page-details";a:2:{i:0;R:42072;i:1;R:40461;}s:32:"1232:myhome-feed-summary-details";a:2:{i:0;R:42072;i:1;R:40461;}s:37:"1232:myhome-feed-section-edit-details";a:2:{i:0;R:42072;i:1;R:40461;}s:38:"1232:myhome-feed-new-blog-post-details";a:2:{i:0;R:42072;i:1;R:40461;}s:41:"1232:myhome-feed-new-blog-comment-details";a:2:{i:0;R:42072;i:1;R:40461;}s:44:"1232:myhome-feed-new-article-comment-details";a:2:{i:0;R:42072;i:1;R:40461;}s:29:"1232:myhome-feed-move-details";a:2:{i:0;R:42072;i:1;R:40461;}s:33:"1232:myhome-feed-redirect-details";a:2:{i:0;R:42072;i:1;R:40461;}s:39:"1232:myhome-feed-inserted-image-details";a:2:{i:0;R:42072;i:1;R:40461;}s:39:"1232:myhome-feed-inserted-video-details";a:2:{i:0;R:42072;i:1;R:40461;}s:42:"1232:myhome-feed-inserted-category-details";a:2:{i:0;R:42072;i:1;R:40461;}s:36:"1232:myhome-user-contributions-empty";a:2:{i:0;R:42072;i:1;R:40461;}s:39:"1232:myhome-hot-spots-number-of-editors";a:2:{i:0;R:42072;i:1;R:40461;}s:18:"1232:myhome-log-in";a:2:{i:0;R:42072;i:1;R:40461;}s:28:"1232:myhome-switch-to-monaco";a:2:{i:0;R:42072;i:1;R:40461;}s:26:"1232:myhome-namespace-blog";a:2:{i:0;R:42072;i:1;R:40461;}s:35:"1232:myhome-community-corner-header";a:2:{i:0;R:42072;i:1;R:40461;}s:39:"1232:oasis-myhome-community-corner-edit";a:2:{i:0;R:42072;i:1;R:40461;}s:33:"1232:myhome-community-corner-edit";a:2:{i:0;R:42072;i:1;R:40461;}s:21:"1232:community-corner";a:2:{i:0;R:42072;i:1;R:40461;}s:32:"1232:myhome-hot-spots-definition";a:2:{i:0;R:42072;i:1;R:40461;}s:33:"1232:myhome-default-view-checkbox";a:2:{i:0;R:42072;i:1;R:40461;}s:32:"1232:myhome-default-view-success";a:2:{i:0;R:42072;i:1;R:40461;}s:24:"1232:accesskey-pt-myhome";a:2:{i:0;R:42072;i:1;R:40461;}s:22:"1232:tooltip-pt-myhome";a:2:{i:0;R:42072;i:1;R:40461;}s:17:"1232:activityfeed";a:2:{i:0;R:42072;i:1;R:40461;}s:46:"1232:wiki-activity-message-wall-messages-count";a:2:{i:0;R:42072;i:1;R:40461;}s:15:"1232:oasis-home";a:2:{i:0;s:11:"wikia-oasis";i:1;R:40461;}s:15:"1232:oasis-more";a:2:{i:0;R:42134;i:1;R:40461;}s:18:"1232:oasis-mytools";a:2:{i:0;R:42134;i:1;R:40461;}s:17:"1232:oasis-follow";a:2:{i:0;R:42134;i:1;R:40461;}s:16:"1232:oasis-share";a:2:{i:0;R:42134;i:1;R:40461;}s:15:"1232:oasis-like";a:2:{i:0;R:42134;i:1;R:40461;}s:17:"1232:oasis-signup";a:2:{i:0;R:42134;i:1;R:40461;}s:33:"1232:oasis-edit-protected-article";a:2:{i:0;R:42134;i:1;R:40461;}s:29:"1232:oasis-button-random-page";a:2:{i:0;R:42134;i:1;R:40461;}s:37:"1232:oasis-button-random-page-tooltip";a:2:{i:0;R:42134;i:1;R:40461;}s:29:"1232:oasis-button-random-wiki";a:2:{i:0;R:42134;i:1;R:40461;}s:31:"1232:oasis-button-wiki-activity";a:2:{i:0;R:42134;i:1;R:40461;}s:39:"1232:oasis-button-wiki-activity-tooltip";a:2:{i:0;R:42134;i:1;R:40461;}s:36:"1232:oasis-button-wiki-activity-feed";a:2:{i:0;R:42134;i:1;R:40461;}s:41:"1232:oasis-button-wiki-activity-watchlist";a:2:{i:0;R:42134;i:1;R:40461;}s:35:"1232:oasis-activity-watchlist-login";a:2:{i:0;R:42134;i:1;R:40461;}s:26:"1232:oasis-activity-header";a:2:{i:0;R:42134;i:1;R:40461;}s:31:"1232:oasis-related-video-header";a:2:{i:0;R:42134;i:1;R:40461;}s:32:"1232:oasis-related-video-by-5min";a:2:{i:0;R:42134;i:1;R:40461;}s:34:"1232:oasis-total-articles-mainpage";a:2:{i:0;R:42134;i:1;R:40461;}s:31:"1232:oasis-latest-photos-header";a:2:{i:0;R:42134;i:1;R:40461;}s:29:"1232:oasis-latest-photos-more";a:2:{i:0;R:42134;i:1;R:40461;}s:38:"1232:oasis-latest-photos-inner-message";a:2:{i:0;R:42134;i:1;R:40461;}s:31:"1232:oasis-latest-photos-single";a:2:{i:0;R:42134;i:1;R:40461;}s:30:"1232:oasis-latest-photos-empty";a:2:{i:0;R:42134;i:1;R:40461;}s:27:"1232:oasis-latest-photos-by";a:2:{i:0;R:42134;i:1;R:40461;}s:34:"1232:oasis-latest-photos-posted-in";a:2:{i:0;R:42134;i:1;R:40461;}s:39:"1232:oasis-latest-photos-more-dotdotdot";a:2:{i:0;R:42134;i:1;R:40461;}s:33:"1232:oasis-global-nav-create-wiki";a:2:{i:0;R:42134;i:1;R:40461;}s:42:"1232:oasis-page-header-no-comments-tooltip";a:2:{i:0;R:42134;i:1;R:40461;}s:31:"1232:oasis-page-header-comments";a:2:{i:0;R:42134;i:1;R:40461;}s:33:"1232:oasis-page-header-comments-k";a:2:{i:0;R:42134;i:1;R:40461;}s:33:"1232:oasis-page-header-comments-m";a:2:{i:0;R:42134;i:1;R:40461;}s:27:"1232:oasis-page-header-talk";a:2:{i:0;R:42134;i:1;R:40461;}s:32:"1232:oasis-page-header-edited-by";a:2:{i:0;R:42134;i:1;R:40461;}s:29:"1232:oasis-page-header-edited";a:2:{i:0;R:42134;i:1;R:40461;}s:32:"1232:oasis-page-header-read-more";a:2:{i:0;R:42134;i:1;R:40461;}s:35:"1232:oasis-page-header-history-link";a:2:{i:0;R:42134;i:1;R:40461;}s:38:"1232:oasis-page-header-back-to-article";a:2:{i:0;R:42134;i:1;R:40461;}s:39:"1232:oasis-page-header-back-to-template";a:2:{i:0;R:42134;i:1;R:40461;}s:40:"1232:oasis-page-header-back-to-mediawiki";a:2:{i:0;R:42134;i:1;R:40461;}s:39:"1232:oasis-page-header-back-to-category";a:2:{i:0;R:42134;i:1;R:40461;}s:35:"1232:oasis-page-header-back-to-file";a:2:{i:0;R:42134;i:1;R:40461;}s:36:"1232:oasis-page-header-back-to-video";a:2:{i:0;R:42134;i:1;R:40461;}s:32:"1232:oasis-page-header-add-topic";a:2:{i:0;R:42134;i:1;R:40461;}s:35:"1232:oasis-page-header-edit-profile";a:2:{i:0;R:42134;i:1;R:40461;}s:30:"1232:oasis-page-header-editing";a:2:{i:0;R:42134;i:1;R:40461;}s:38:"1232:oasis-page-header-editing-section";a:2:{i:0;R:42134;i:1;R:40461;}s:30:"1232:oasis-page-header-preview";a:2:{i:0;R:42134;i:1;R:40461;}s:30:"1232:oasis-page-header-changes";a:2:{i:0;R:42134;i:1;R:40461;}s:27:"1232:oasis-page-header-diff";a:2:{i:0;R:42134;i:1;R:40461;}s:30:"1232:oasis-page-header-history";a:2:{i:0;R:42134;i:1;R:40461;}s:22:"1232:oasis-anon-header";a:2:{i:0;R:42134;i:1;R:40461;}s:31:"1232:oasis-preview-confirmation";a:2:{i:0;R:42134;i:1;R:40461;}s:29:"1232:oasis-badge-notification";a:2:{i:0;R:42134;i:1;R:40461;}s:38:"1232:oasis-badge-notification-see-more";a:2:{i:0;R:42134;i:1;R:40461;}s:41:"1232:oasis-page-header-subtitle-mediawiki";a:2:{i:0;R:42134;i:1;R:40461;}s:39:"1232:oasis-page-header-subtitle-special";a:2:{i:0;R:42134;i:1;R:40461;}s:40:"1232:oasis-page-header-subtitle-template";a:2:{i:0;R:42134;i:1;R:40461;}s:40:"1232:oasis-page-header-subtitle-category";a:2:{i:0;R:42134;i:1;R:40461;}s:37:"1232:oasis-page-header-subtitle-forum";a:2:{i:0;R:42134;i:1;R:40461;}s:52:"1232:oasis-page-header-subtitle-special-wikiactivity";a:2:{i:0;R:42134;i:1;R:40461;}s:30:"1232:oasis-search-results-from";a:2:{i:0;R:42134;i:1;R:40461;}s:40:"1232:oasis-search-results-from-all-wikis";a:2:{i:0;R:42134;i:1;R:40461;}s:34:"1232:oasis-user-page-change-avatar";a:2:{i:0;R:42134;i:1;R:40461;}s:35:"1232:oasis-content-picture-added-by";a:2:{i:0;R:42134;i:1;R:40461;}s:36:"1232:oasis-confirmation-page-deleted";a:2:{i:0;R:42134;i:1;R:40461;}s:39:"1232:oasis-confirmation-comment-deleted";a:2:{i:0;R:42134;i:1;R:40461;}s:38:"1232:oasis-confirmation-page-undeleted";a:2:{i:0;R:42134;i:1;R:40461;}s:35:"1232:oasis-confirmation-user-logout";a:2:{i:0;R:42134;i:1;R:40461;}s:42:"1232:oasis-notification-youhavenewmessages";a:2:{i:0;R:42134;i:1;R:40461;}s:23:"1232:oasis-member-since";a:2:{i:0;R:42134;i:1;R:40461;}s:24:"1232:oasis-edits-counter";a:2:{i:0;R:42134;i:1;R:40461;}s:21:"1232:oasis-edit-saved";a:2:{i:0;R:42134;i:1;R:40461;}s:36:"1232:oasis-button-contribute-tooltip";a:2:{i:0;R:42134;i:1;R:40461;}s:27:"1232:oasis-button-add-video";a:2:{i:0;R:42134;i:1;R:40461;}s:29:"1232:oasis-button-create-page";a:2:{i:0;R:42134;i:1;R:40461;}s:27:"1232:oasis-button-add-photo";a:2:{i:0;R:42134;i:1;R:40461;}s:39:"1232:oasis-button-edit-wikia-local-menu";a:2:{i:0;R:42134;i:1;R:40461;}s:40:"1232:oasis-button-edit-wikia-global-menu";a:2:{i:0;R:42134;i:1;R:40461;}s:29:"1232:oasis-toolbar-edit-title";a:2:{i:0;R:42134;i:1;R:40461;}s:36:"1232:oasis-toolbar-edit-toolbar-list";a:2:{i:0;R:42134;i:1;R:40461;}s:38:"1232:oasis-toolbar-edit-reset-defaults";a:2:{i:0;R:42134;i:1;R:40461;}s:35:"1232:oasis-toolbar-edit-find-a-tool";a:2:{i:0;R:42134;i:1;R:40461;}s:38:"1232:oasis-toolbar-edit-advanced-tools";a:2:{i:0;R:42134;i:1;R:40461;}s:39:"1232:oasis-toolbar-edit-search-for-tool";a:2:{i:0;R:42134;i:1;R:40461;}s:37:"1232:oasis-toolbar-edit-popular-tools";a:2:{i:0;R:42134;i:1;R:40461;}s:34:"1232:oasis-toolbar-edit-hide-tools";a:2:{i:0;R:42134;i:1;R:40461;}s:28:"1232:oasis-toolbar-edit-save";a:2:{i:0;R:42134;i:1;R:40461;}s:30:"1232:oasis-toolbar-edit-cancel";a:2:{i:0;R:42134;i:1;R:40461;}s:35:"1232:oasis-toolbar-edit-rename-item";a:2:{i:0;R:42134;i:1;R:40461;}s:34:"1232:oasis-toolbar-for-admins-only";a:2:{i:0;R:42134;i:1;R:40461;}s:35:"1232:oasis-toolbar-not-enabled-here";a:2:{i:0;R:42134;i:1;R:40461;}s:23:"1232:oasis-toolbar-more";a:2:{i:0;R:42134;i:1;R:40461;}s:28:"1232:oasis-toolbar-customize";a:2:{i:0;R:42134;i:1;R:40461;}s:26:"1232:oasis-toolbar-devinfo";a:2:{i:0;R:42134;i:1;R:40461;}s:26:"1232:oasis-comments-header";a:2:{i:0;R:42134;i:1;R:40461;}s:39:"1232:oasis-comments-showing-most-recent";a:2:{i:0;R:42134;i:1;R:40461;}s:36:"1232:oasis-comments-anonymous-prompt";a:2:{i:0;R:42134;i:1;R:40461;}s:28:"1232:oasis-comments-show-all";a:2:{i:0;R:42134;i:1;R:40461;}s:28:"1232:oasis-comments-added-by";a:2:{i:0;R:42134;i:1;R:40461;}s:22:"1232:oasis-random-wiki";a:2:{i:0;R:42134;i:1;R:40461;}s:20:"1232:oasis-add-photo";a:2:{i:0;R:42134;i:1;R:40461;}s:20:"1232:oasis-anon-user";a:2:{i:0;R:42134;i:1;R:40461;}s:22:"1232:oasis-create-page";a:2:{i:0;R:42134;i:1;R:40461;}s:19:"1232:oasis-add-page";a:2:{i:0;R:42134;i:1;R:40461;}s:23:"1232:oasis-section-edit";a:2:{i:0;R:42134;i:1;R:40461;}s:27:"1232:oasis-section-edit-alt";a:2:{i:0;R:42134;i:1;R:40461;}s:30:"1232:oasis-popular-blogs-title";a:2:{i:0;R:42134;i:1;R:40461;}s:32:"1232:oasis-spotlights-rail-title";a:2:{i:0;R:42134;i:1;R:40461;}s:34:"1232:oasis-spotlights-footer-title";a:2:{i:0;R:42134;i:1;R:40461;}s:18:"1232:themedesigner";a:2:{i:0;R:42134;i:1;R:40461;}s:31:"1232:oasis-pages-on-wiki-header";a:2:{i:0;R:42134;i:1;R:40461;}s:38:"1232:oasis-latest-activity-new-details";a:2:{i:0;R:42134;i:1;R:40461;}s:39:"1232:oasis-latest-activity-edit-details";a:2:{i:0;R:42134;i:1;R:40461;}s:41:"1232:oasis-latest-activity-delete-details";a:2:{i:0;R:42134;i:1;R:40461;}s:25:"1232:oasis-edit-this-menu";a:2:{i:0;R:42134;i:1;R:40461;}s:29:"1232:oasis-interlang-show-all";a:2:{i:0;R:42134;i:1;R:40461;}s:30:"1232:oasis-interlang-languages";a:2:{i:0;R:42134;i:1;R:40461;}s:20:"1232:photosblacklist";a:2:{i:0;R:42134;i:1;R:40461;}s:22:"1232:categoryblacklist";a:2:{i:0;R:42134;i:1;R:40461;}s:20:"1232:wiki-navigation";a:2:{i:0;R:42134;i:1;R:40461;}s:25:"1232:imageseo-featured-on";a:2:{i:0;R:42134;i:1;R:40461;}s:27:"1232:imageseo-featured-more";a:2:{i:0;R:42134;i:1;R:40461;}s:35:"1232:oasis-editpage-readonlywarning";a:2:{i:0;R:42134;i:1;R:40461;}s:30:"1232:oasis-upload-photos-title";a:2:{i:0;R:42134;i:1;R:40461;}s:37:"1232:oasis-upload-photos-more-options";a:2:{i:0;R:42134;i:1;R:40461;}s:38:"1232:oasis-upload-photos-fewer-options";a:2:{i:0;R:42134;i:1;R:40461;}s:30:"1232:oasis-upload-photos-force";a:2:{i:0;R:42134;i:1;R:40461;}s:32:"1232:oasis-upload-photos-caption";a:2:{i:0;R:42134;i:1;R:40461;}s:49:"1232:oasis-corporatefooter-hub-entertainment-link";a:2:{i:0;R:42134;i:1;R:40461;}s:42:"1232:oasis-corporatefooter-hub-gaming-link";a:2:{i:0;R:42134;i:1;R:40461;}s:47:"1232:oasis-corporatefooter-hub-video_games-link";a:2:{i:0;R:42134;i:1;R:40461;}s:45:"1232:oasis-corporatefooter-hub-lifestyle-link";a:2:{i:0;R:42134;i:1;R:40461;}s:50:"1232:oasis-corporatefooter-hub-food_and_drink-link";a:2:{i:0;R:42134;i:1;R:40461;}s:31:"1232:oasis-modal-error-headline";a:2:{i:0;R:42134;i:1;R:40461;}s:26:"1232:oasis-skip-to-content";a:2:{i:0;R:42134;i:1;R:40461;}s:34:"1232:oasis-skip-to-wiki-navigation";a:2:{i:0;R:42134;i:1;R:40461;}s:34:"1232:oasis-skip-to-site-navigation";a:2:{i:0;R:42134;i:1;R:40461;}s:26:"1232:oasis-wiki-navigation";a:2:{i:0;R:42134;i:1;R:40461;}s:29:"1232:oasis-related-categories";a:2:{i:0;R:42134;i:1;R:40461;}s:36:"1232:oasis-navigation-v2-create-page";a:2:{i:0;R:42134;i:1;R:40461;}s:34:"1232:oasis-navigation-v2-edit-page";a:2:{i:0;R:42134;i:1;R:40461;}s:34:"1232:oasis-navigation-v2-add-photo";a:2:{i:0;R:42134;i:1;R:40461;}s:46:"1232:oasis-navigation-v2-edit-wikia-local-menu";a:2:{i:0;R:42134;i:1;R:40461;}s:47:"1232:oasis-navigation-v2-edit-wikia-global-menu";a:2:{i:0;R:42134;i:1;R:40461;}s:39:"1232:oasis-navigation-v2-edit-this-menu";a:2:{i:0;R:42134;i:1;R:40461;}s:42:"1232:oasis-navigation-v2-level1-validation";a:2:{i:0;R:42134;i:1;R:40461;}s:42:"1232:oasis-navigation-v2-level2-validation";a:2:{i:0;R:42134;i:1;R:40461;}s:43:"1232:oasis-navigation-v2-level12-validation";a:2:{i:0;R:42134;i:1;R:40461;}s:46:"1232:oasis-navigation-v2-magic-word-validation";a:2:{i:0;R:42134;i:1;R:40461;}s:40:"1232:oasis-navigation-v2-validation-next";a:2:{i:0;R:42134;i:1;R:40461;}s:43:"1232:oasis-navigation-v2-validation-caption";a:2:{i:0;R:42134;i:1;R:40461;}s:35:"1232:oasis-navigation-v2-new-photos";a:2:{i:0;R:42134;i:1;R:40461;}s:22:"1232:oasis-on-the-wiki";a:2:{i:0;R:42134;i:1;R:40461;}s:39:"1232:oasis-sharing-toolbar-mail-subject";a:2:{i:0;R:42134;i:1;R:40461;}s:36:"1232:oasis-sharing-toolbar-mail-body";a:2:{i:0;R:42134;i:1;R:40461;}s:18:"1232:our404handler";a:2:{i:0;s:19:"wikia-our404handler";i:1;R:40461;}s:23:"1232:our404handler-oops";a:2:{i:0;R:42292;i:1;R:40461;}s:15:"1232:message404";a:2:{i:0;R:42292;i:1;R:40461;}s:22:"1232:pagelayoutbuilder";a:2:{i:0;s:23:"wikia-pagelayoutbuilder";i:1;R:40461;}s:27:"1232:pagelayoutbuilder-desc";a:2:{i:0;R:42296;i:1;R:40461;}s:34:"1232:plb-special-form-article-name";a:2:{i:0;R:42296;i:1;R:40461;}s:33:"1232:plb-special-form-title-empty";a:2:{i:0;R:42296;i:1;R:40461;}s:41:"1232:plb-special-form-invalid-title-error";a:2:{i:0;R:42296;i:1;R:40461;}s:36:"1232:plb-special-form-already-exists";a:2:{i:0;R:42296;i:1;R:40461;}s:30:"1232:plb-special-form-required";a:2:{i:0;R:42296;i:1;R:40461;}s:38:"1232:plb-special-form-emptyformpreview";a:2:{i:0;R:42296;i:1;R:40461;}s:35:"1232:plb-special-form-layout-delete";a:2:{i:0;R:42296;i:1;R:40461;}s:34:"1232:plb-special-form-unknow-error";a:2:{i:0;R:42296;i:1;R:40461;}s:31:"1232:plb-special-form-cant-edit";a:2:{i:0;R:42296;i:1;R:40461;}s:26:"1232:plb-special-form-spam";a:2:{i:0;R:42296;i:1;R:40461;}s:32:"1232:plb-special-form-create-new";a:2:{i:0;R:42296;i:1;R:40461;}s:34:"1232:plb-special-form-edit-article";a:2:{i:0;R:42296;i:1;R:40461;}s:33:"1232:plb-special-form-box-caption";a:2:{i:0;R:42296;i:1;R:40461;}s:32:"1232:plb-special-form-box-create";a:2:{i:0;R:42296;i:1;R:40461;}s:36:"1232:plb-special-form-create-preview";a:2:{i:0;R:42296;i:1;R:40461;}s:30:"1232:plb-special-form-cat-info";a:2:{i:0;R:42296;i:1;R:40461;}s:32:"1232:plb-special-form-error-info";a:2:{i:0;R:42296;i:1;R:40461;}s:25:"1232:plb-special-form-new";a:2:{i:0;R:42296;i:1;R:40461;}s:34:"1232:plb-special-form-session-fail";a:2:{i:0;R:42296;i:1;R:40461;}s:35:"1232:plb-special-form-save-as-draft";a:2:{i:0;R:42296;i:1;R:40461;}s:34:"1232:plb-special-form-preview-form";a:2:{i:0;R:42296;i:1;R:40461;}s:26:"1232:plb-special-no-layout";a:2:{i:0;R:42296;i:1;R:40461;}s:31:"1232:plb-special-no-layout-body";a:2:{i:0;R:42296;i:1;R:40461;}s:27:"1232:plb-special-no-article";a:2:{i:0;R:42296;i:1;R:40461;}s:32:"1232:plb-special-no-article-body";a:2:{i:0;R:42296;i:1;R:40461;}s:25:"1232:plb-special-no-login";a:2:{i:0;R:42296;i:1;R:40461;}s:23:"1232:plb-login-required";a:2:{i:0;R:42296;i:1;R:40461;}s:19:"1232:plb-empty-page";a:2:{i:0;R:42296;i:1;R:40461;}s:32:"1232:plb-create-empty-body-error";a:2:{i:0;R:42296;i:1;R:40461;}s:26:"1232:plb-create-empty-desc";a:2:{i:0;R:42296;i:1;R:40461;}s:25:"1232:plb-create-new-title";a:2:{i:0;R:42296;i:1;R:40461;}s:31:"1232:plb-create-new-modal-title";a:2:{i:0;R:42296;i:1;R:40461;}s:26:"1232:plb-create-edit-title";a:2:{i:0;R:42296;i:1;R:40461;}s:29:"1232:plb-create-preview-title";a:2:{i:0;R:42296;i:1;R:40461;}s:35:"1232:plb-create-button-layout-title";a:2:{i:0;R:42296;i:1;R:40461;}s:29:"1232:plb-create-button-layout";a:2:{i:0;R:42296;i:1;R:40461;}s:34:"1232:plb-create-button-draft-title";a:2:{i:0;R:42296;i:1;R:40461;}s:28:"1232:plb-create-button-draft";a:2:{i:0;R:42296;i:1;R:40461;}s:34:"1232:plb-create-button-previewform";a:2:{i:0;R:42296;i:1;R:40461;}s:40:"1232:plb-create-button-previewform-title";a:2:{i:0;R:42296;i:1;R:40461;}s:37:"1232:plb-create-button-previewarticle";a:2:{i:0;R:42296;i:1;R:40461;}s:43:"1232:plb-create-button-previewarticle-title";a:2:{i:0;R:42296;i:1;R:40461;}s:33:"1232:plb-create-empty-title-error";a:2:{i:0;R:42296;i:1;R:40461;}s:35:"1232:plb-create-invalid-title-error";a:2:{i:0;R:42296;i:1;R:40461;}s:36:"1232:plb-create-already-exists-error";a:2:{i:0;R:42296;i:1;R:40461;}s:31:"1232:plb-create-updated-summary";a:2:{i:0;R:42296;i:1;R:40461;}s:25:"1232:plb-create-cant-edit";a:2:{i:0;R:42296;i:1;R:40461;}s:20:"1232:plb-create-spam";a:2:{i:0;R:42296;i:1;R:40461;}s:35:"1232:plb-special-form-submit-button";a:2:{i:0;R:42296;i:1;R:40461;}s:36:"1232:plb-special-form-preview-button";a:2:{i:0;R:42296;i:1;R:40461;}s:29:"1232:plb-special-form-summary";a:2:{i:0;R:42296;i:1;R:40461;}s:19:"1232:plb-form-title";a:2:{i:0;R:42296;i:1;R:40461;}s:18:"1232:plb-form-desc";a:2:{i:0;R:42296;i:1;R:40461;}s:32:"1232:plb-form-title-instructions";a:2:{i:0;R:42296;i:1;R:40461;}s:31:"1232:plb-form-desc-instructions";a:2:{i:0;R:42296;i:1;R:40461;}s:28:"1232:plb-list-confirm-delete";a:2:{i:0;R:42296;i:1;R:40461;}s:29:"1232:plb-list-confirm-publish";a:2:{i:0;R:42296;i:1;R:40461;}s:18:"1232:plb-list-name";a:2:{i:0;R:42296;i:1;R:40461;}s:18:"1232:plb-list-desc";a:2:{i:0;R:42296;i:1;R:40461;}s:25:"1232:plb-list-last-editor";a:2:{i:0;R:42296;i:1;R:40461;}s:19:"1232:plb-list-count";a:2:{i:0;R:42296;i:1;R:40461;}s:23:"1232:plb-list-last-edit";a:2:{i:0;R:42296;i:1;R:40461;}s:25:"1232:plb-list-action-edit";a:2:{i:0;R:42296;i:1;R:40461;}s:27:"1232:plb-list-action-delete";a:2:{i:0;R:42296;i:1;R:40461;}s:28:"1232:plb-list-action-publish";a:2:{i:0;R:42296;i:1;R:40461;}s:27:"1232:plb-list-action-create";a:2:{i:0;R:42296;i:1;R:40461;}s:19:"1232:plb-list-title";a:2:{i:0;R:42296;i:1;R:40461;}s:29:"1232:plb-parser-enter-caption";a:2:{i:0;R:42296;i:1;R:40461;}s:26:"1232:plb-parser-id-not-int";a:2:{i:0;R:42296;i:1;R:40461;}s:34:"1232:plb-parser-image-size-not-int";a:2:{i:0;R:42296;i:1;R:40461;}s:34:"1232:plb-parser-image-size-too-big";a:2:{i:0;R:42296;i:1;R:40461;}s:37:"1232:plb-parser-image-incorrect-align";a:2:{i:0;R:42296;i:1;R:40461;}s:37:"1232:plb-parser-image-incorrect-frame";a:2:{i:0;R:42296;i:1;R:40461;}s:29:"1232:plb-parser-id-not-unique";a:2:{i:0;R:42296;i:1;R:40461;}s:27:"1232:plb-parser-id-too-long";a:2:{i:0;R:42296;i:1;R:40461;}s:28:"1232:plb-parser-no-attribute";a:2:{i:0;R:42296;i:1;R:40461;}s:27:"1232:plb-parser-empty-value";a:2:{i:0;R:42296;i:1;R:40461;}s:31:"1232:plb-parser-default-caption";a:2:{i:0;R:42296;i:1;R:40461;}s:36:"1232:plb-parser-default-instructions";a:2:{i:0;R:42296;i:1;R:40461;}s:33:"1232:plb-parser-empty-value-image";a:2:{i:0;R:42296;i:1;R:40461;}s:34:"1232:plb-parser-preview-image-user";a:2:{i:0;R:42296;i:1;R:40461;}s:38:"1232:plb-parser-preview-image-username";a:2:{i:0;R:42296;i:1;R:40461;}s:37:"1232:plb-parser-preview-image-caption";a:2:{i:0;R:42296;i:1;R:40461;}s:33:"1232:plb-parser-preview-image-add";a:2:{i:0;R:42296;i:1;R:40461;}s:29:"1232:plb-parser-preview-input";a:2:{i:0;R:42296;i:1;R:40461;}s:31:"1232:plb-parser-preview-mlinput";a:2:{i:0;R:42296;i:1;R:40461;}s:30:"1232:plb-parser-preview-sinput";a:2:{i:0;R:42296;i:1;R:40461;}s:32:"1232:plb-special-form-none-value";a:2:{i:0;R:42296;i:1;R:40461;}s:32:"1232:plb-create-from-article-new";a:2:{i:0;R:42296;i:1;R:40461;}s:35:"1232:plb-create-from-article-button";a:2:{i:0;R:42296;i:1;R:40461;}s:41:"1232:plb-create-from-article-button-title";a:2:{i:0;R:42296;i:1;R:40461;}s:40:"1232:plb-create-from-article-button-desc";a:2:{i:0;R:42296;i:1;R:40461;}s:24:"1232:plb-layout-usercant";a:2:{i:0;R:42296;i:1;R:40461;}s:38:"1232:plb-editor-elements-in-the-editor";a:2:{i:0;R:42296;i:1;R:40461;}s:27:"1232:plb-editor-add-element";a:2:{i:0;R:42296;i:1;R:40461;}s:20:"1232:plb-editor-edit";a:2:{i:0;R:42296;i:1;R:40461;}s:31:"1232:plb-editor-toolbar-caption";a:2:{i:0;R:42296;i:1;R:40461;}s:34:"1232:plb-editor-toolbar-formatting";a:2:{i:0;R:42296;i:1;R:40461;}s:30:"1232:plb-editor-toolbar-static";a:2:{i:0;R:42296;i:1;R:40461;}s:27:"1232:plb-editor-rte-caption";a:2:{i:0;R:42296;i:1;R:40461;}s:23:"1232:plb-editor-preview";a:2:{i:0;R:42296;i:1;R:40461;}s:28:"1232:plb-editor-preview-desc";a:2:{i:0;R:42296;i:1;R:40461;}s:20:"1232:plb-editor-info";a:2:{i:0;R:42296;i:1;R:40461;}s:28:"1232:plb-editor-preview-info";a:2:{i:0;R:42296;i:1;R:40461;}s:28:"1232:plb-editor-overlay-edit";a:2:{i:0;R:42296;i:1;R:40461;}s:29:"1232:plb-editor-enter-caption";a:2:{i:0;R:42296;i:1;R:40461;}s:37:"1232:plb-editor-left-sidebar-tutorial";a:2:{i:0;R:42296;i:1;R:40461;}s:40:"1232:plb-editor-read-only-selection-info";a:2:{i:0;R:42296;i:1;R:40461;}s:31:"1232:plb-editor-saving-as-draft";a:2:{i:0;R:42296;i:1;R:40461;}s:30:"1232:plb-widget-name-plb_input";a:2:{i:0;R:42296;i:1;R:40461;}s:32:"1232:plb-widget-name-plb_mlinput";a:2:{i:0;R:42296;i:1;R:40461;}s:30:"1232:plb-widget-name-plb_image";a:2:{i:0;R:42296;i:1;R:40461;}s:31:"1232:plb-widget-name-plb_sinput";a:2:{i:0;R:42296;i:1;R:40461;}s:32:"1232:plb-widget-name-plb_gallery";a:2:{i:0;R:42296;i:1;R:40461;}s:30:"1232:plb-property-editor-width";a:2:{i:0;R:42296;i:1;R:40461;}s:32:"1232:plb-property-editor-spacing";a:2:{i:0;R:42296;i:1;R:40461;}s:38:"1232:plb-property-editor-spacing-small";a:2:{i:0;R:42296;i:1;R:40461;}s:39:"1232:plb-property-editor-spacing-medium";a:2:{i:0;R:42296;i:1;R:40461;}s:38:"1232:plb-property-editor-spacing-large";a:2:{i:0;R:42296;i:1;R:40461;}s:39:"1232:plb-property-editor-value-required";a:2:{i:0;R:42296;i:1;R:40461;}s:32:"1232:plb-property-editor-caption";a:2:{i:0;R:42296;i:1;R:40461;}s:37:"1232:plb-property-editor-instructions";a:2:{i:0;R:42296;i:1;R:40461;}s:33:"1232:plb-property-editor-required";a:2:{i:0;R:42296;i:1;R:40461;}s:34:"1232:plb-property-editor-alignment";a:2:{i:0;R:42296;i:1;R:40461;}s:39:"1232:plb-property-editor-alignment-left";a:2:{i:0;R:42296;i:1;R:40461;}s:41:"1232:plb-property-editor-alignment-center";a:2:{i:0;R:42296;i:1;R:40461;}s:40:"1232:plb-property-editor-alignment-right";a:2:{i:0;R:42296;i:1;R:40461;}s:38:"1232:plb-property-editor-maximum-width";a:2:{i:0;R:42296;i:1;R:40461;}s:34:"1232:plb-property-editor-thumbnail";a:2:{i:0;R:42296;i:1;R:40461;}s:32:"1232:plb-property-editor-choices";a:2:{i:0;R:42296;i:1;R:40461;}s:29:"1232:plb-property-editor-save";a:2:{i:0;R:42296;i:1;R:40461;}s:31:"1232:plb-property-editor-cancel";a:2:{i:0;R:42296;i:1;R:40461;}s:21:"1232:plb-mytools-link";a:2:{i:0;R:42296;i:1;R:40461;}s:36:"1232:plb-parser-gallery-size-not-int";a:2:{i:0;R:42296;i:1;R:40461;}s:38:"1232:plb-parser-gallery-size-too-small";a:2:{i:0;R:42296;i:1;R:40461;}s:36:"1232:plb-parser-gallery-size-too-big";a:2:{i:0;R:42296;i:1;R:40461;}s:41:"1232:plb-parser-gallery-incorrect-spacing";a:2:{i:0;R:42296;i:1;R:40461;}s:39:"1232:plb-parser-gallery-incorrect-align";a:2:{i:0;R:42296;i:1;R:40461;}s:37:"1232:plb-property-editor-help-caption";a:2:{i:0;R:42296;i:1;R:40461;}s:42:"1232:plb-property-editor-help-instructions";a:2:{i:0;R:42296;i:1;R:40461;}s:38:"1232:plb-property-editor-help-required";a:2:{i:0;R:42296;i:1;R:40461;}s:39:"1232:plb-property-editor-help-alignment";a:2:{i:0;R:42296;i:1;R:40461;}s:43:"1232:plb-property-editor-help-maximum-width";a:2:{i:0;R:42296;i:1;R:40461;}s:39:"1232:plb-property-editor-help-thumbnail";a:2:{i:0;R:42296;i:1;R:40461;}s:37:"1232:plb-property-editor-help-choices";a:2:{i:0;R:42296;i:1;R:40461;}s:37:"1232:plb-property-editor-help-spacing";a:2:{i:0;R:42296;i:1;R:40461;}s:22:"1232:plb-helpbox-title";a:2:{i:0;R:42296;i:1;R:40461;}s:26:"1232:plb-helpbox-makesense";a:2:{i:0;R:42296;i:1;R:40461;}s:27:"1232:plb-helpbox-getstarted";a:2:{i:0;R:42296;i:1;R:40461;}s:25:"1232:plb-helpbox-dontshow";a:2:{i:0;R:42296;i:1;R:40461;}s:31:"1232:plb-helpbox-bigimage-title";a:2:{i:0;R:42296;i:1;R:40461;}s:30:"1232:plb-helpbox-bigimage-desc";a:2:{i:0;R:42296;i:1;R:40461;}s:30:"1232:plb-helpbox-buttton-head1";a:2:{i:0;R:42296;i:1;R:40461;}s:30:"1232:plb-helpbox-buttton-head2";a:2:{i:0;R:42296;i:1;R:40461;}s:30:"1232:plb-helpbox-checkboxinfo1";a:2:{i:0;R:42296;i:1;R:40461;}s:21:"1232:plb-helpbox-box1";a:2:{i:0;R:42296;i:1;R:40461;}s:21:"1232:plb-helpbox-box2";a:2:{i:0;R:42296;i:1;R:40461;}s:21:"1232:plb-helpbox-box3";a:2:{i:0;R:42296;i:1;R:40461;}s:34:"1232:plb-helpbox-help-button-head3";a:2:{i:0;R:42296;i:1;R:40461;}s:30:"1232:plb-helpbox-checkboxinfo2";a:2:{i:0;R:42296;i:1;R:40461;}s:26:"1232:plb-helpbox-help-desc";a:2:{i:0;R:42296;i:1;R:40461;}s:26:"1232:plb-helpbox-help-link";a:2:{i:0;R:42296;i:1;R:40461;}s:32:"1232:plb-helpbox-help-link-title";a:2:{i:0;R:42296;i:1;R:40461;}s:25:"1232:plb-list-action-copy";a:2:{i:0;R:42296;i:1;R:40461;}s:21:"1232:plb-copy-confirm";a:2:{i:0;R:42296;i:1;R:40461;}s:25:"1232:plb-copy-delete-link";a:2:{i:0;R:42296;i:1;R:40461;}s:21:"1232:plb-copy-cat-add";a:2:{i:0;R:42296;i:1;R:40461;}s:25:"1232:plb-copy-submit-link";a:2:{i:0;R:42296;i:1;R:40461;}s:42:"1232:wikia-editor-modules-plb-insert-title";a:2:{i:0;R:42296;i:1;R:40461;}s:40:"1232:wikia-editor-modules-plb-list-title";a:2:{i:0;R:42296;i:1;R:40461;}s:46:"1232:wikia-editor-modules-plb-list-title-count";a:2:{i:0;R:42296;i:1;R:40461;}s:41:"1232:wikia-editor-plb-show-static-buttons";a:2:{i:0;R:42296;i:1;R:40461;}s:19:"1232:paginator-next";a:2:{i:0;s:15:"wikia-paginator";i:1;R:40461;}s:19:"1232:paginator-back";a:2:{i:0;R:42471;i:1;R:40461;}s:42:"1232:partner-feed-achievements-leaderboard";a:2:{i:0;s:17:"wikia-partnerfeed";i:1;R:40461;}s:31:"1232:partner-feed-earned-badges";a:2:{i:0;R:42474;i:1;R:40461;}s:35:"1232:partner-feed-recent-blog-posts";a:2:{i:0;R:42474;i:1;R:40461;}s:31:"1232:partner-feed-latest-images";a:2:{i:0;R:42474;i:1;R:40461;}s:28:"1232:partner-feed-hotcontent";a:2:{i:0;R:42474;i:1;R:40461;}s:38:"1232:partner-feed-recent-blog-comments";a:2:{i:0;R:42474;i:1;R:40461;}s:32:"1232:partner-feed-recent-changes";a:2:{i:0;R:42474;i:1;R:40461;}s:16:"1232:partnerfeed";a:2:{i:0;R:42474;i:1;R:40461;}s:21:"1232:error-no-article";a:2:{i:0;R:42474;i:1;R:40461;}s:25:"1232:feed-title-blogposts";a:2:{i:0;R:42474;i:1;R:40461;}s:29:"1232:feed-title-recent-badges";a:2:{i:0;R:42474;i:1;R:40461;}s:29:"1232:feed-title-recent-images";a:2:{i:0;R:42474;i:1;R:40461;}s:27:"1232:feed-title-leaderboard";a:2:{i:0;R:42474;i:1;R:40461;}s:20:"1232:feed-main-title";a:2:{i:0;R:42474;i:1;R:40461;}s:19:"1232:all-blog-posts";a:2:{i:0;R:42474;i:1;R:40461;}s:28:"1232:blog-posts-from-listing";a:2:{i:0;R:42474;i:1;R:40461;}s:27:"1232:feed-title-hot-content";a:2:{i:0;R:42474;i:1;R:40461;}s:28:"1232:feed-title-blogcomments";a:2:{i:0;R:42474;i:1;R:40461;}s:29:"1232:feed-title-recentchanges";a:2:{i:0;R:42474;i:1;R:40461;}s:17:"1232:phalanx-desc";a:2:{i:0;s:13:"wikia-phalanx";i:1;R:40461;}s:12:"1232:phalanx";a:2:{i:0;R:42494;i:1;R:40461;}s:18:"1232:phalanx-title";a:2:{i:0;R:42494;i:1;R:40461;}s:25:"1232:phalanx-type-content";a:2:{i:0;R:42494;i:1;R:40461;}s:25:"1232:phalanx-type-summary";a:2:{i:0;R:42494;i:1;R:40461;}s:23:"1232:phalanx-type-title";a:2:{i:0;R:42494;i:1;R:40461;}s:22:"1232:phalanx-type-user";a:2:{i:0;R:42494;i:1;R:40461;}s:28:"1232:phalanx-type-user-email";a:2:{i:0;R:42494;i:1;R:40461;}s:40:"1232:phalanx-type-answers-question-title";a:2:{i:0;R:42494;i:1;R:40461;}s:42:"1232:phalanx-type-answers-recent-questions";a:2:{i:0;R:42494;i:1;R:40461;}s:31:"1232:phalanx-type-wiki-creation";a:2:{i:0;R:42494;i:1;R:40461;}s:22:"1232:phalanx-add-block";a:2:{i:0;R:42494;i:1;R:40461;}s:23:"1232:phalanx-edit-block";a:2:{i:0;R:42494;i:1;R:40461;}s:25:"1232:phalanx-label-filter";a:2:{i:0;R:42494;i:1;R:40461;}s:25:"1232:phalanx-label-reason";a:2:{i:0;R:42494;i:1;R:40461;}s:25:"1232:phalanx-label-expiry";a:2:{i:0;R:42494;i:1;R:40461;}s:23:"1232:phalanx-label-type";a:2:{i:0;R:42494;i:1;R:40461;}s:23:"1232:phalanx-label-lang";a:2:{i:0;R:42494;i:1;R:40461;}s:22:"1232:phalanx-view-type";a:2:{i:0;R:42494;i:1;R:40461;}s:25:"1232:phalanx-view-blocker";a:2:{i:0;R:42494;i:1;R:40461;}s:24:"1232:phalanx-view-blocks";a:2:{i:0;R:42494;i:1;R:40461;}s:20:"1232:phalanx-view-id";a:2:{i:0;R:42494;i:1;R:40461;}s:27:"1232:phalanx-view-id-submit";a:2:{i:0;R:42494;i:1;R:40461;}s:29:"1232:phalanx-expire-durations";a:2:{i:0;R:42494;i:1;R:40461;}s:24:"1232:phalanx-format-text";a:2:{i:0;R:42494;i:1;R:40461;}s:25:"1232:phalanx-format-regex";a:2:{i:0;R:42494;i:1;R:40461;}s:24:"1232:phalanx-format-case";a:2:{i:0;R:42494;i:1;R:40461;}s:25:"1232:phalanx-format-exact";a:2:{i:0;R:42494;i:1;R:40461;}s:21:"1232:phalanx-tab-main";a:2:{i:0;R:42494;i:1;R:40461;}s:26:"1232:phalanx-tab-secondary";a:2:{i:0;R:42494;i:1;R:40461;}s:26:"1232:phalanx-block-success";a:2:{i:0;R:42494;i:1;R:40461;}s:26:"1232:phalanx-block-failure";a:2:{i:0;R:42494;i:1;R:40461;}s:27:"1232:phalanx-modify-success";a:2:{i:0;R:42494;i:1;R:40461;}s:27:"1232:phalanx-modify-failure";a:2:{i:0;R:42494;i:1;R:40461;}s:27:"1232:phalanx-modify-warning";a:2:{i:0;R:42494;i:1;R:40461;}s:29:"1232:phalanx-test-description";a:2:{i:0;R:42494;i:1;R:40461;}s:24:"1232:phalanx-test-submit";a:2:{i:0;R:42494;i:1;R:40461;}s:32:"1232:phalanx-test-results-legend";a:2:{i:0;R:42494;i:1;R:40461;}s:31:"1232:phalanx-display-row-blocks";a:2:{i:0;R:42494;i:1;R:40461;}s:32:"1232:phalanx-display-row-created";a:2:{i:0;R:42494;i:1;R:40461;}s:25:"1232:phalanx-link-unblock";a:2:{i:0;R:42494;i:1;R:40461;}s:24:"1232:phalanx-link-modify";a:2:{i:0;R:42494;i:1;R:40461;}s:23:"1232:phalanx-link-stats";a:2:{i:0;R:42494;i:1;R:40461;}s:23:"1232:phalanx-reset-form";a:2:{i:0;R:42494;i:1;R:40461;}s:25:"1232:phalanx-legend-input";a:2:{i:0;R:42494;i:1;R:40461;}s:27:"1232:phalanx-legend-listing";a:2:{i:0;R:42494;i:1;R:40461;}s:28:"1232:phalanx-unblock-message";a:2:{i:0;R:42494;i:1;R:40461;}s:30:"1232:phalanx-help-type-content";a:2:{i:0;R:42494;i:1;R:40461;}s:30:"1232:phalanx-help-type-summary";a:2:{i:0;R:42494;i:1;R:40461;}s:28:"1232:phalanx-help-type-title";a:2:{i:0;R:42494;i:1;R:40461;}s:27:"1232:phalanx-help-type-user";a:2:{i:0;R:42494;i:1;R:40461;}s:36:"1232:phalanx-help-type-wiki-creation";a:2:{i:0;R:42494;i:1;R:40461;}s:45:"1232:phalanx-help-type-answers-question-title";a:2:{i:0;R:42494;i:1;R:40461;}s:47:"1232:phalanx-help-type-answers-recent-questions";a:2:{i:0;R:42494;i:1;R:40461;}s:33:"1232:phalanx-help-type-user-email";a:2:{i:0;R:42494;i:1;R:40461;}s:33:"1232:phalanx-user-block-reason-ip";a:2:{i:0;R:42494;i:1;R:40461;}s:36:"1232:phalanx-user-block-reason-exact";a:2:{i:0;R:42494;i:1;R:40461;}s:38:"1232:phalanx-user-block-reason-similar";a:2:{i:0;R:42494;i:1;R:40461;}s:35:"1232:phalanx-user-block-new-account";a:2:{i:0;R:42494;i:1;R:40461;}s:37:"1232:phalanx-user-block-withreason-ip";a:2:{i:0;R:42494;i:1;R:40461;}s:40:"1232:phalanx-user-block-withreason-exact";a:2:{i:0;R:42494;i:1;R:40461;}s:42:"1232:phalanx-user-block-withreason-similar";a:2:{i:0;R:42494;i:1;R:40461;}s:31:"1232:phalanx-title-move-summary";a:2:{i:0;R:42494;i:1;R:40461;}s:33:"1232:phalanx-content-spam-summary";a:2:{i:0;R:42494;i:1;R:40461;}s:24:"1232:phalanx-stats-title";a:2:{i:0;R:42494;i:1;R:40461;}s:33:"1232:phalanx-stats-block-notfound";a:2:{i:0;R:42494;i:1;R:40461;}s:27:"1232:phalanx-stats-table-id";a:2:{i:0;R:42494;i:1;R:40461;}s:29:"1232:phalanx-stats-table-user";a:2:{i:0;R:42494;i:1;R:40461;}s:29:"1232:phalanx-stats-table-type";a:2:{i:0;R:42494;i:1;R:40461;}s:31:"1232:phalanx-stats-table-create";a:2:{i:0;R:42494;i:1;R:40461;}s:31:"1232:phalanx-stats-table-expire";a:2:{i:0;R:42494;i:1;R:40461;}s:30:"1232:phalanx-stats-table-exact";a:2:{i:0;R:42494;i:1;R:40461;}s:30:"1232:phalanx-stats-table-regex";a:2:{i:0;R:42494;i:1;R:40461;}s:29:"1232:phalanx-stats-table-case";a:2:{i:0;R:42494;i:1;R:40461;}s:33:"1232:phalanx-stats-table-language";a:2:{i:0;R:42494;i:1;R:40461;}s:29:"1232:phalanx-stats-table-text";a:2:{i:0;R:42494;i:1;R:40461;}s:31:"1232:phalanx-stats-table-reason";a:2:{i:0;R:42494;i:1;R:40461;}s:22:"1232:phalanx-stats-row";a:2:{i:0;R:42494;i:1;R:40461;}s:31:"1232:phalanx-stats-row-per-wiki";a:2:{i:0;R:42494;i:1;R:40461;}s:26:"1232:phalanx-rule-log-name";a:2:{i:0;R:42494;i:1;R:40461;}s:28:"1232:phalanx-rule-log-header";a:2:{i:0;R:42494;i:1;R:40461;}s:32:"1232:phalanx-email-rule-log-name";a:2:{i:0;R:42494;i:1;R:40461;}s:34:"1232:phalanx-email-rule-log-header";a:2:{i:0;R:42494;i:1;R:40461;}s:25:"1232:phalanx-rule-log-add";a:2:{i:0;R:42494;i:1;R:40461;}s:26:"1232:phalanx-rule-log-edit";a:2:{i:0;R:42494;i:1;R:40461;}s:28:"1232:phalanx-rule-log-delete";a:2:{i:0;R:42494;i:1;R:40461;}s:29:"1232:phalanx-rule-log-details";a:2:{i:0;R:42494;i:1;R:40461;}s:32:"1232:phalanx-stats-table-wiki-id";a:2:{i:0;R:42494;i:1;R:40461;}s:34:"1232:phalanx-stats-table-wiki-name";a:2:{i:0;R:42494;i:1;R:40461;}s:33:"1232:phalanx-stats-table-wiki-url";a:2:{i:0;R:42494;i:1;R:40461;}s:41:"1232:phalanx-stats-table-wiki-last-edited";a:2:{i:0;R:42494;i:1;R:40461;}s:32:"1232:phalanx-email-filter-hidden";a:2:{i:0;R:42494;i:1;R:40461;}s:18:"1232:right-phalanx";a:2:{i:0;R:42494;i:1;R:40461;}s:24:"1232:right-phalanxexempt";a:2:{i:0;R:42494;i:1;R:40461;}s:28:"1232:right-phalanxemailblock";a:2:{i:0;R:42494;i:1;R:40461;}s:25:"1232:photopop-setup-title";a:2:{i:0;s:14:"wikia-photopop";i:1;R:40461;}s:34:"1232:photopop-setup-category-label";a:2:{i:0;R:42590;i:1;R:40461;}s:32:"1232:photopop-setup-category-tip";a:2:{i:0;R:42590;i:1;R:40461;}s:30:"1232:photopop-setup-icon-label";a:2:{i:0;R:42590;i:1;R:40461;}s:28:"1232:photopop-setup-icon-tip";a:2:{i:0;R:42590;i:1;R:40461;}s:35:"1232:photopop-setup-watermark-label";a:2:{i:0;R:42590;i:1;R:40461;}s:33:"1232:photopop-setup-watermark-tip";a:2:{i:0;R:42590;i:1;R:40461;}s:32:"1232:photopop-setup-submit-label";a:2:{i:0;R:42590;i:1;R:40461;}s:36:"1232:photopop-current-settings-title";a:2:{i:0;R:42590;i:1;R:40461;}s:26:"1232:photpop-category-none";a:2:{i:0;R:42590;i:1;R:40461;}s:41:"1232:photopop-error-category-non-existing";a:2:{i:0;R:42590;i:1;R:40461;}s:36:"1232:photopop-error-field-compulsory";a:2:{i:0;R:42590;i:1;R:40461;}s:37:"1232:photopop-error-file-non-existing";a:2:{i:0;R:42590;i:1;R:40461;}s:28:"1232:photopop-error-db-error";a:2:{i:0;R:42590;i:1;R:40461;}s:28:"1232:photopop-settings-saved";a:2:{i:0;R:42590;i:1;R:40461;}s:27:"1232:photopop-image-preview";a:2:{i:0;R:42590;i:1;R:40461;}s:24:"1232:photopop-game-round";a:2:{i:0;R:42590;i:1;R:40461;}s:26:"1232:photopop-game-correct";a:2:{i:0;R:42590;i:1;R:40461;}s:25:"1232:photopop-game-points";a:2:{i:0;R:42590;i:1;R:40461;}s:24:"1232:photopop-game-total";a:2:{i:0;R:42590;i:1;R:40461;}s:24:"1232:photopop-game-score";a:2:{i:0;R:42590;i:1;R:40461;}s:23:"1232:photopop-game-wiki";a:2:{i:0;R:42590;i:1;R:40461;}s:23:"1232:photopop-game-date";a:2:{i:0;R:42590;i:1;R:40461;}s:25:"1232:photopop-game-timeup";a:2:{i:0;R:42590;i:1;R:40461;}s:30:"1232:photopop-game-please-wait";a:2:{i:0;R:42590;i:1;R:40461;}s:32:"1232:photopop-game-loading-image";a:2:{i:0;R:42590;i:1;R:40461;}s:26:"1232:photopop-game-loading";a:2:{i:0;R:42590;i:1;R:40461;}s:28:"1232:photopop-game-highscore";a:2:{i:0;R:42590;i:1;R:40461;}s:29:"1232:photopop-game-highscores";a:2:{i:0;R:42590;i:1;R:40461;}s:27:"1232:photopop-game-continue";a:2:{i:0;R:42590;i:1;R:40461;}s:25:"1232:photopop-game-yougot";a:2:{i:0;R:42590;i:1;R:40461;}s:24:"1232:photopop-game-outof";a:2:{i:0;R:42590;i:1;R:40461;}s:27:"1232:photopop-game-progress";a:2:{i:0;R:42590;i:1;R:40461;}s:27:"1232:photopop-game-finished";a:2:{i:0;R:42590;i:1;R:40461;}s:35:"1232:photopop-game-image-load-error";a:2:{i:0;R:42590;i:1;R:40461;}s:33:"1232:photopop-game-tutorial-intro";a:2:{i:0;R:42590;i:1;R:40461;}s:36:"1232:photopop-game-tutorial-continue";a:2:{i:0;R:42590;i:1;R:40461;}s:34:"1232:photopop-game-tutorial-drawer";a:2:{i:0;R:42590;i:1;R:40461;}s:32:"1232:photopop-game-tutorial-tile";a:2:{i:0;R:42590;i:1;R:40461;}s:32:"1232:photopop-game-new-highscore";a:2:{i:0;R:42590;i:1;R:40461;}s:25:"1232:photopop-game-paused";a:2:{i:0;R:42590;i:1;R:40461;}s:33:"1232:photopop-game-loading-assets";a:2:{i:0;R:42590;i:1;R:40461;}s:26:"1232:photopop-game-month-0";a:2:{i:0;R:42590;i:1;R:40461;}s:26:"1232:photopop-game-month-1";a:2:{i:0;R:42590;i:1;R:40461;}s:26:"1232:photopop-game-month-2";a:2:{i:0;R:42590;i:1;R:40461;}s:26:"1232:photopop-game-month-3";a:2:{i:0;R:42590;i:1;R:40461;}s:26:"1232:photopop-game-month-4";a:2:{i:0;R:42590;i:1;R:40461;}s:26:"1232:photopop-game-month-5";a:2:{i:0;R:42590;i:1;R:40461;}s:26:"1232:photopop-game-month-6";a:2:{i:0;R:42590;i:1;R:40461;}s:26:"1232:photopop-game-month-7";a:2:{i:0;R:42590;i:1;R:40461;}s:26:"1232:photopop-game-month-8";a:2:{i:0;R:42590;i:1;R:40461;}s:26:"1232:photopop-game-month-9";a:2:{i:0;R:42590;i:1;R:40461;}s:27:"1232:photopop-game-month-10";a:2:{i:0;R:42590;i:1;R:40461;}s:27:"1232:photopop-game-month-11";a:2:{i:0;R:42590;i:1;R:40461;}s:31:"1232:photopop-game-no-highscore";a:2:{i:0;R:42590;i:1;R:40461;}s:29:"1232:photopop-game-error-text";a:2:{i:0;R:42590;i:1;R:40461;}s:37:"1232:photopop-game-error-network-text";a:2:{i:0;R:42590;i:1;R:40461;}s:41:"1232:photopop-game-download-progress-text";a:2:{i:0;R:42590;i:1;R:40461;}s:39:"1232:photopop-game-update-progress-text";a:2:{i:0;R:42590;i:1;R:40461;}s:38:"1232:photopop-game-download-error-text";a:2:{i:0;R:42590;i:1;R:40461;}s:18:"1232:piggybac-desc";a:2:{i:0;s:15:"wikia-piggyback";i:1;R:40461;}s:14:"1232:piggyback";a:2:{i:0;R:42651;i:1;R:40461;}s:28:"1232:piggyback-otherusername";a:2:{i:0;R:42651;i:1;R:40461;}s:25:"1232:piggyback-nosuchuser";a:2:{i:0;R:42651;i:1;R:40461;}s:24:"1232:piggyback-wronguser";a:2:{i:0;R:42651;i:1;R:40461;}s:26:"1232:piggyback-loginprompt";a:2:{i:0;R:42651;i:1;R:40461;}s:26:"1232:piggyback-firstlogout";a:2:{i:0;R:42651;i:1;R:40461;}s:22:"1232:piggyback-itisyou";a:2:{i:0;R:42651;i:1;R:40461;}s:24:"1232:piggyback-issysopto";a:2:{i:0;R:42651;i:1;R:40461;}s:11:"1232:places";a:2:{i:0;s:12:"wikia-places";i:1;R:40461;}s:16:"1232:places-desc";a:2:{i:0;R:42661;i:1;R:40461;}s:23:"1232:places-in-category";a:2:{i:0;R:42661;i:1;R:40461;}s:18:"1232:places-on-map";a:2:{i:0;R:42661;i:1;R:40461;}s:31:"1232:places-modal-go-to-special";a:2:{i:0;R:42661;i:1;R:40461;}s:34:"1232:places-toolbar-button-tooltip";a:2:{i:0;R:42661;i:1;R:40461;}s:34:"1232:places-toolbar-button-address";a:2:{i:0;R:42661;i:1;R:40461;}s:25:"1232:places-editor-search";a:2:{i:0;R:42661;i:1;R:40461;}s:35:"1232:places-editor-title-create-new";a:2:{i:0;R:42661;i:1;R:40461;}s:29:"1232:places-editor-title-edit";a:2:{i:0;R:42661;i:1;R:40461;}s:35:"1232:places-editor-show-my-location";a:2:{i:0;R:42661;i:1;R:40461;}s:30:"1232:places-editor-geoposition";a:2:{i:0;R:42661;i:1;R:40461;}s:36:"1232:places-geolocation-button-label";a:2:{i:0;R:42661;i:1;R:40461;}s:39:"1232:places-geolocation-modal-add-title";a:2:{i:0;R:42661;i:1;R:40461;}s:41:"1232:places-geolocation-modal-error-title";a:2:{i:0;R:42661;i:1;R:40461;}s:35:"1232:places-geolocation-modal-error";a:2:{i:0;R:42661;i:1;R:40461;}s:43:"1232:places-geolocation-modal-not-available";a:2:{i:0;R:42661;i:1;R:40461;}s:28:"1232:places-error-no-article";a:2:{i:0;R:42661;i:1;R:40461;}s:38:"1232:places-error-place-already-exists";a:2:{i:0;R:42661;i:1;R:40461;}s:31:"1232:places-updated-geolocation";a:2:{i:0;R:42661;i:1;R:40461;}s:27:"1232:places-category-switch";a:2:{i:0;R:42661;i:1;R:40461;}s:31:"1232:places-category-switch-off";a:2:{i:0;R:42661;i:1;R:40461;}s:21:"1232:quickcreate-desc";a:2:{i:0;s:17:"wikia-quickcreate";i:1;R:40461;}s:16:"1232:quickcreate";a:2:{i:0;R:42684;i:1;R:40461;}s:20:"1232:randomwiki-desc";a:2:{i:0;s:16:"wikia-randomwiki";i:1;R:40461;}s:15:"1232:randomwiki";a:2:{i:0;R:42687;i:1;R:40461;}s:27:"1232:wikiarelatedpages-desc";a:2:{i:0;s:18:"wikia-relatedpages";i:1;R:40461;}s:30:"1232:wikiarelatedpages-heading";a:2:{i:0;R:42690;i:1;R:40461;}s:25:"1232:related-videos-tally";a:2:{i:0;s:19:"wikia-relatedvideos";i:1;R:40461;}s:33:"1232:related-videos-tally-article";a:2:{i:0;R:42693;i:1;R:40461;}s:28:"1232:related-videos-added-by";a:2:{i:0;R:42693;i:1;R:40461;}s:26:"1232:related-videos-remove";a:2:{i:0;R:42693;i:1;R:40461;}s:29:"1232:related-videos-add-video";a:2:{i:0;R:42693;i:1;R:40461;}s:34:"1232:related-videos-leave-feedback";a:2:{i:0;R:42693;i:1;R:40461;}s:42:"1232:related-videos-add-video-to-this-page";a:2:{i:0;R:42693;i:1;R:40461;}s:32:"1232:related-videod-add-video-ok";a:2:{i:0;R:42693;i:1;R:40461;}s:40:"1232:related-videod-add-video-label-name";a:2:{i:0;R:42693;i:1;R:40461;}s:39:"1232:related-videod-add-video-label-all";a:2:{i:0;R:42693;i:1;R:40461;}s:43:"1232:related-videos-add-video-error-bad-url";a:2:{i:0;R:42693;i:1;R:40461;}s:47:"1232:related-videos-add-video-error-nonexisting";a:2:{i:0;R:42693;i:1;R:40461;}s:44:"1232:related-videos-add-video-error-bad-name";a:2:{i:0;R:42693;i:1;R:40461;}s:52:"1232:related-videos-add-video-error-permission-video";a:2:{i:0;R:42693;i:1;R:40461;}s:51:"1232:related-videos-add-video-error-protected-video";a:2:{i:0;R:42693;i:1;R:40461;}s:45:"1232:related-videos-add-video-error-duplicate";a:2:{i:0;R:42693;i:1;R:40461;}s:33:"1232:related-videos-error-unknown";a:2:{i:0;R:42693;i:1;R:40461;}s:44:"1232:related-videos-error-permission-article";a:2:{i:0;R:42693;i:1;R:40461;}s:39:"1232:related-videos-error-no-article-id";a:2:{i:0;R:42693;i:1;R:40461;}s:38:"1232:related-videos-error-no-video-url";a:2:{i:0;R:42693;i:1;R:40461;}s:40:"1232:related-videos-error-no-video-title";a:2:{i:0;R:42693;i:1;R:40461;}s:39:"1232:related-videos-error-while-loading";a:2:{i:0;R:42693;i:1;R:40461;}s:26:"1232:related-videos-notify";a:2:{i:0;R:42693;i:1;R:40461;}s:40:"1232:related-videos-something-went-wrong";a:2:{i:0;R:42693;i:1;R:40461;}s:48:"1232:related-videos-remove-video-error-duplicate";a:2:{i:0;R:42693;i:1;R:40461;}s:50:"1232:related-videos-remove-video-error-nonexisting";a:2:{i:0;R:42693;i:1;R:40461;}s:34:"1232:related-videos-remove-confirm";a:2:{i:0;R:42693;i:1;R:40461;}s:31:"1232:related-videos-remove-call";a:2:{i:0;R:42693;i:1;R:40461;}s:42:"1232:related-videos-wiki-summary-blacklist";a:2:{i:0;R:42693;i:1;R:40461;}s:42:"1232:related-videos-wiki-summary-whitelist";a:2:{i:0;R:42693;i:1;R:40461;}s:44:"1232:related-videos-update-summary-blacklist";a:2:{i:0;R:42693;i:1;R:40461;}s:44:"1232:related-videos-update-summary-whitelist";a:2:{i:0;R:42693;i:1;R:40461;}s:31:"1232:related-videos-tooltip-add";a:2:{i:0;R:42693;i:1;R:40461;}s:34:"1232:related-videos-tooltip-remove";a:2:{i:0;R:42693;i:1;R:40461;}s:33:"1232:related-videos-tooltip-embed";a:2:{i:0;R:42693;i:1;R:40461;}s:32:"1232:related-videos-beta-feature";a:2:{i:0;R:42693;i:1;R:40461;}s:29:"1232:related-videos-repo-name";a:2:{i:0;R:42693;i:1;R:40461;}s:30:"1232:related-videos-embed-text";a:2:{i:0;R:42693;i:1;R:40461;}s:32:"1232:related-videos-video-is-new";a:2:{i:0;R:42693;i:1;R:40461;}s:30:"1232:related-videos-pagination";a:2:{i:0;R:42693;i:1;R:40461;}s:25:"1232:related-videos-empty";a:2:{i:0;R:42693;i:1;R:40461;}s:33:"1232:related-videos-requestbutton";a:2:{i:0;R:42693;i:1;R:40461;}s:31:"1232:related-videos-requesttext";a:2:{i:0;R:42693;i:1;R:40461;}s:13:"1232:rte-desc";a:2:{i:0;s:14:"wikia-rte-base";i:1;R:40461;}s:23:"1232:rte-no-js-fallback";a:2:{i:0;R:42737;i:1;R:40461;}s:28:"1232:rte-edgecase-info-title";a:2:{i:0;R:42737;i:1;R:40461;}s:22:"1232:rte-edgecase-info";a:2:{i:0;R:42737;i:1;R:40461;}s:25:"1232:rte-edgecase-comment";a:2:{i:0;R:42737;i:1;R:40461;}s:29:"1232:rte-edgecase-triplecurls";a:2:{i:0;R:42737;i:1;R:40461;}s:27:"1232:rte-edgecase-nowysiwyg";a:2:{i:0;R:42737;i:1;R:40461;}s:37:"1232:rte-edgecase-complex-description";a:2:{i:0;R:42737;i:1;R:40461;}s:36:"1232:rte-edgecase-template-with-link";a:2:{i:0;R:42737;i:1;R:40461;}s:24:"1232:rte-edgecase-syntax";a:2:{i:0;R:42737;i:1;R:40461;}s:33:"1232:rte-edgecase-image-with-link";a:2:{i:0;R:42737;i:1;R:40461;}s:26:"1232:rte-edgecase-redirect";a:2:{i:0;R:42737;i:1;R:40461;}s:33:"1232:rte-edgecase-templateintable";a:2:{i:0;R:42737;i:1;R:40461;}s:31:"1232:rte-edgecase-unclosed-tags";a:2:{i:0;R:42737;i:1;R:40461;}s:25:"1232:enablerichtexteditor";a:2:{i:0;R:42737;i:1;R:40461;}s:36:"1232:rte-enablerichtexteditormessage";a:2:{i:0;R:42737;i:1;R:40461;}s:25:"1232:rte-first-run-notice";a:2:{i:0;R:42737;i:1;R:40461;}s:14:"1232:prefs-rte";a:2:{i:0;R:42737;i:1;R:40461;}s:33:"1232:rte-ck-bucket-textappearance";a:2:{i:0;s:17:"wikia-rte-ckwikia";i:1;R:40461;}s:25:"1232:rte-ck-bucket-insert";a:2:{i:0;R:42756;i:1;R:40461;}s:27:"1232:rte-ck-bucket-controls";a:2:{i:0;R:42756;i:1;R:40461;}s:31:"1232:rte-ck-commenteditor-title";a:2:{i:0;R:42756;i:1;R:40461;}s:27:"1232:rte-ck-errorpopuptitle";a:2:{i:0;R:42756;i:1;R:40461;}s:43:"1232:rte-ck-hoverpreview-codedelement-intro";a:2:{i:0;R:42756;i:1;R:40461;}s:43:"1232:rte-ck-hoverpreview-codedelement-title";a:2:{i:0;R:42756;i:1;R:40461;}s:38:"1232:rte-ck-hoverpreview-comment-intro";a:2:{i:0;R:42756;i:1;R:40461;}s:38:"1232:rte-ck-hoverpreview-comment-title";a:2:{i:0;R:42756;i:1;R:40461;}s:38:"1232:rte-ck-hoverpreview-confirmdelete";a:2:{i:0;R:42756;i:1;R:40461;}s:31:"1232:rte-ck-hoverpreview-delete";a:2:{i:0;R:42756;i:1;R:40461;}s:29:"1232:rte-ck-hoverpreview-edit";a:2:{i:0;R:42756;i:1;R:40461;}s:42:"1232:rte-ck-hoverpreview-media-notexisting";a:2:{i:0;R:42756;i:1;R:40461;}s:39:"1232:rte-ck-hoverpreview-template-intro";a:2:{i:0;R:42756;i:1;R:40461;}s:45:"1232:rte-ck-hoverpreview-template-notexisting";a:2:{i:0;R:42756;i:1;R:40461;}s:42:"1232:rte-ck-hoverpreview-video-notexisting";a:2:{i:0;R:42756;i:1;R:40461;}s:21:"1232:rte-ck-image-add";a:2:{i:0;R:42756;i:1;R:40461;}s:23:"1232:rte-ck-image-photo";a:2:{i:0;R:42756;i:1;R:40461;}s:31:"1232:rte-ck-image-confirmdelete";a:2:{i:0;R:42756;i:1;R:40461;}s:36:"1232:rte-ck-image-confirmdeletetitle";a:2:{i:0;R:42756;i:1;R:40461;}s:42:"1232:rte-ck-imageplaceholder-confirmdelete";a:2:{i:0;R:42756;i:1;R:40461;}s:47:"1232:rte-ck-imageplaceholder-confirmdeletetitle";a:2:{i:0;R:42756;i:1;R:40461;}s:36:"1232:rte-ck-imageplaceholder-tooltip";a:2:{i:0;R:42756;i:1;R:40461;}s:26:"1232:rte-ck-justify-center";a:2:{i:0;R:42756;i:1;R:40461;}s:20:"1232:rte-ck-link-add";a:2:{i:0;R:42756;i:1;R:40461;}s:35:"1232:rte-ck-link-error-badpagetitle";a:2:{i:0;R:42756;i:1;R:40461;}s:29:"1232:rte-ck-link-error-badurl";a:2:{i:0;R:42756;i:1;R:40461;}s:28:"1232:rte-ck-link-error-title";a:2:{i:0;R:42756;i:1;R:40461;}s:34:"1232:rte-ck-link-external-linktext";a:2:{i:0;R:42756;i:1;R:40461;}s:38:"1232:rte-ck-link-external-numberedlink";a:2:{i:0;R:42756;i:1;R:40461;}s:29:"1232:rte-ck-link-external-tab";a:2:{i:0;R:42756;i:1;R:40461;}s:29:"1232:rte-ck-link-external-url";a:2:{i:0;R:42756;i:1;R:40461;}s:34:"1232:rte-ck-link-internal-linktext";a:2:{i:0;R:42756;i:1;R:40461;}s:34:"1232:rte-ck-link-internal-pagename";a:2:{i:0;R:42756;i:1;R:40461;}s:29:"1232:rte-ck-link-internal-tab";a:2:{i:0;R:42756;i:1;R:40461;}s:22:"1232:rte-ck-link-title";a:2:{i:0;R:42756;i:1;R:40461;}s:29:"1232:rte-ck-link-label-target";a:2:{i:0;R:42756;i:1;R:40461;}s:30:"1232:rte-ck-link-label-display";a:2:{i:0;R:42756;i:1;R:40461;}s:31:"1232:rte-ck-link-label-internal";a:2:{i:0;R:42756;i:1;R:40461;}s:31:"1232:rte-ck-link-label-external";a:2:{i:0;R:42756;i:1;R:40461;}s:32:"1232:rte-ck-link-status-checking";a:2:{i:0;R:42756;i:1;R:40461;}s:30:"1232:rte-ck-link-status-exists";a:2:{i:0;R:42756;i:1;R:40461;}s:33:"1232:rte-ck-link-status-notexists";a:2:{i:0;R:42756;i:1;R:40461;}s:32:"1232:rte-ck-link-status-external";a:2:{i:0;R:42756;i:1;R:40461;}s:24:"1232:rte-ck-media-delete";a:2:{i:0;R:42756;i:1;R:40461;}s:22:"1232:rte-ck-media-edit";a:2:{i:0;R:42756;i:1;R:40461;}s:31:"1232:rte-ck-modeswitch-tosource";a:2:{i:0;R:42756;i:1;R:40461;}s:32:"1232:rte-ck-modeswitch-towysiwyg";a:2:{i:0;R:42756;i:1;R:40461;}s:38:"1232:rte-ck-modeswitch-tosourcetooltip";a:2:{i:0;R:42756;i:1;R:40461;}s:39:"1232:rte-ck-modeswitch-towysiwygtooltip";a:2:{i:0;R:42756;i:1;R:40461;}s:28:"1232:rte-ck-modeswitch-error";a:2:{i:0;R:42756;i:1;R:40461;}s:32:"1232:rte-ck-photogallery-gallery";a:2:{i:0;R:42756;i:1;R:40461;}s:34:"1232:rte-ck-photogallery-slideshow";a:2:{i:0;R:42756;i:1;R:40461;}s:31:"1232:rte-ck-photogallery-slider";a:2:{i:0;R:42756;i:1;R:40461;}s:35:"1232:rte-ck-photogallery-addgallery";a:2:{i:0;R:42756;i:1;R:40461;}s:37:"1232:rte-ck-photogallery-addslideshow";a:2:{i:0;R:42756;i:1;R:40461;}s:34:"1232:rte-ck-photogallery-addslider";a:2:{i:0;R:42756;i:1;R:40461;}s:38:"1232:rte-ck-photogallery-confirmdelete";a:2:{i:0;R:42756;i:1;R:40461;}s:43:"1232:rte-ck-photogallery-confirmdeletetitle";a:2:{i:0;R:42756;i:1;R:40461;}s:32:"1232:rte-ck-photogallery-tooltip";a:2:{i:0;R:42756;i:1;R:40461;}s:41:"1232:rte-ck-photogallery-tooltipslideshow";a:2:{i:0;R:42756;i:1;R:40461;}s:20:"1232:rte-ck-poll-add";a:2:{i:0;R:42756;i:1;R:40461;}s:21:"1232:rte-ck-poll-poll";a:2:{i:0;R:42756;i:1;R:40461;}s:25:"1232:rte-ck-signature-add";a:2:{i:0;R:42756;i:1;R:40461;}s:27:"1232:rte-ck-signature-label";a:2:{i:0;R:42756;i:1;R:40461;}s:29:"1232:rte-ck-table-alignnotset";a:2:{i:0;R:42756;i:1;R:40461;}s:29:"1232:rte-ck-table-invalidcols";a:2:{i:0;R:42756;i:1;R:40461;}s:29:"1232:rte-ck-table-invalidrows";a:2:{i:0;R:42756;i:1;R:40461;}s:32:"1232:rte-ck-table-toolbartooltip";a:2:{i:0;R:42756;i:1;R:40461;}s:45:"1232:rte-ck-templatedropdown-chooseanothertpl";a:2:{i:0;R:42756;i:1;R:40461;}s:41:"1232:rte-ck-templatedropdown-showusedlist";a:2:{i:0;R:42756;i:1;R:40461;}s:39:"1232:rte-ck-templatedropdown-makelayout";a:2:{i:0;R:42756;i:1;R:40461;}s:34:"1232:rte-ck-templatedropdown-label";a:2:{i:0;R:42756;i:1;R:40461;}s:34:"1232:rte-ck-templatedropdown-title";a:2:{i:0;R:42756;i:1;R:40461;}s:40:"1232:rte-ck-templateeditor-dialog-browse";a:2:{i:0;R:42756;i:1;R:40461;}s:40:"1232:rte-ck-templateeditor-dialog-insert";a:2:{i:0;R:42756;i:1;R:40461;}s:44:"1232:rte-ck-templateeditor-dialog-magicwords";a:2:{i:0;R:42756;i:1;R:40461;}s:48:"1232:rte-ck-templateeditor-dialog-magicwordslink";a:2:{i:0;R:42756;i:1;R:40461;}s:52:"1232:rte-ck-templateeditor-dialog-mostfrequentlyused";a:2:{i:0;R:42756;i:1;R:40461;}s:40:"1232:rte-ck-templateeditor-dialog-search";a:2:{i:0;R:42756;i:1;R:40461;}s:50:"1232:rte-ck-templateeditor-editor-chooseanothertpl";a:2:{i:0;R:42756;i:1;R:40461;}s:39:"1232:rte-ck-templateeditor-editor-intro";a:2:{i:0;R:42756;i:1;R:40461;}s:44:"1232:rte-ck-templateeditor-editor-parameters";a:2:{i:0;R:42756;i:1;R:40461;}s:47:"1232:rte-ck-templateeditor-editor-previewbutton";a:2:{i:0;R:42756;i:1;R:40461;}s:46:"1232:rte-ck-templateeditor-editor-previewtitle";a:2:{i:0;R:42756;i:1;R:40461;}s:46:"1232:rte-ck-templateeditor-editor-viewtemplate";a:2:{i:0;R:42756;i:1;R:40461;}s:46:"1232:rte-ck-templateeditor-usedtemplates-title";a:2:{i:0;R:42756;i:1;R:40461;}s:32:"1232:rte-ck-templateeditor-title";a:2:{i:0;R:42756;i:1;R:40461;}s:18:"1232:rte-ck-unlink";a:2:{i:0;R:42756;i:1;R:40461;}s:21:"1232:rte-ck-video-add";a:2:{i:0;R:42756;i:1;R:40461;}s:23:"1232:rte-ck-video-video";a:2:{i:0;R:42756;i:1;R:40461;}s:31:"1232:rte-ck-video-confirmdelete";a:2:{i:0;R:42756;i:1;R:40461;}s:36:"1232:rte-ck-video-confirmdeletetitle";a:2:{i:0;R:42756;i:1;R:40461;}s:42:"1232:rte-ck-videoplaceholder-confirmdelete";a:2:{i:0;R:42756;i:1;R:40461;}s:47:"1232:rte-ck-videoplaceholder-confirmdeletetitle";a:2:{i:0;R:42756;i:1;R:40461;}s:36:"1232:rte-ck-videoplaceholder-tooltip";a:2:{i:0;R:42756;i:1;R:40461;}s:29:"1232:rte-ck-widescreen-toggle";a:2:{i:0;R:42756;i:1;R:40461;}s:30:"1232:rte-ck-poll-confirmdelete";a:2:{i:0;R:42756;i:1;R:40461;}s:35:"1232:rte-ck-poll-confirmdeletetitle";a:2:{i:0;R:42756;i:1;R:40461;}s:40:"1232:rte-ck-spellchecker-moresuggestions";a:2:{i:0;R:42756;i:1;R:40461;}s:27:"1232:rte-ck-pastetext-title";a:2:{i:0;R:42756;i:1;R:40461;}s:30:"1232:rte-ck-clipboard-pastemsg";a:2:{i:0;R:42756;i:1;R:40461;}s:24:"1232:rte-ck-format-tag_p";a:2:{i:0;R:42756;i:1;R:40461;}s:26:"1232:rte-ck-format-tag_pre";a:2:{i:0;R:42756;i:1;R:40461;}s:25:"1232:rte-ck-format-tag_h2";a:2:{i:0;R:42756;i:1;R:40461;}s:25:"1232:rte-ck-format-tag_h3";a:2:{i:0;R:42756;i:1;R:40461;}s:25:"1232:rte-ck-format-tag_h4";a:2:{i:0;R:42756;i:1;R:40461;}s:25:"1232:rte-ck-format-tag_h5";a:2:{i:0;R:42756;i:1;R:40461;}s:23:"1232:scavengerhunt-desc";a:2:{i:0;s:19:"wikia-scavengerhunt";i:1;R:40461;}s:18:"1232:scavengerhunt";a:2:{i:0;R:42865;i:1;R:40461;}s:37:"1232:scavengerhunt-common-modal-title";a:2:{i:0;R:42865;i:1;R:40461;}s:35:"1232:scavengerhunt-list-header-name";a:2:{i:0;R:42865;i:1;R:40461;}s:41:"1232:scavengerhunt-list-header-is-enabled";a:2:{i:0;R:42865;i:1;R:40461;}s:38:"1232:scavengerhunt-list-header-actions";a:2:{i:0;R:42865;i:1;R:40461;}s:31:"1232:scavengerhunt-list-enabled";a:2:{i:0;R:42865;i:1;R:40461;}s:32:"1232:scavengerhunt-list-disabled";a:2:{i:0;R:42865;i:1;R:40461;}s:28:"1232:scavengerhunt-list-edit";a:2:{i:0;R:42865;i:1;R:40461;}s:37:"1232:scavengerhunt-label-dialog-check";a:2:{i:0;R:42865;i:1;R:40461;}s:36:"1232:scavengerhunt-label-image-check";a:2:{i:0;R:42865;i:1;R:40461;}s:32:"1232:scavengerhunt-label-general";a:2:{i:0;R:42865;i:1;R:40461;}s:29:"1232:scavengerhunt-label-name";a:2:{i:0;R:42865;i:1;R:40461;}s:38:"1232:scavengerhunt-label-landing-title";a:2:{i:0;R:42865;i:1;R:40461;}s:44:"1232:scavengerhunt-label-landing-button-text";a:2:{i:0;R:42865;i:1;R:40461;}s:41:"1232:scavengerhunt-label-landing-button-x";a:2:{i:0;R:42865;i:1;R:40461;}s:41:"1232:scavengerhunt-label-landing-button-y";a:2:{i:0;R:42865;i:1;R:40461;}s:38:"1232:scavengerhunt-label-starting-clue";a:2:{i:0;R:42865;i:1;R:40461;}s:44:"1232:scavengerhunt-label-starting-clue-title";a:2:{i:0;R:42865;i:1;R:40461;}s:43:"1232:scavengerhunt-label-starting-clue-text";a:2:{i:0;R:42865;i:1;R:40461;}s:44:"1232:scavengerhunt-label-starting-clue-image";a:2:{i:0;R:42865;i:1;R:40461;}s:50:"1232:scavengerhunt-label-starting-clue-button-text";a:2:{i:0;R:42865;i:1;R:40461;}s:52:"1232:scavengerhunt-label-starting-clue-button-target";a:2:{i:0;R:42865;i:1;R:40461;}s:32:"1232:scavengerhunt-label-article";a:2:{i:0;R:42865;i:1;R:40461;}s:38:"1232:scavengerhunt-label-article-title";a:2:{i:0;R:42865;i:1;R:40461;}s:45:"1232:scavengerhunt-label-article-hidden-image";a:2:{i:0;R:42865;i:1;R:40461;}s:43:"1232:scavengerhunt-label-article-clue-title";a:2:{i:0;R:42865;i:1;R:40461;}s:42:"1232:scavengerhunt-label-article-clue-text";a:2:{i:0;R:42865;i:1;R:40461;}s:43:"1232:scavengerhunt-label-article-clue-image";a:2:{i:0;R:42865;i:1;R:40461;}s:49:"1232:scavengerhunt-label-article-clue-button-text";a:2:{i:0;R:42865;i:1;R:40461;}s:51:"1232:scavengerhunt-label-article-clue-button-target";a:2:{i:0;R:42865;i:1;R:40461;}s:35:"1232:scavengerhunt-label-entry-form";a:2:{i:0;R:42865;i:1;R:40461;}s:41:"1232:scavengerhunt-label-entry-form-title";a:2:{i:0;R:42865;i:1;R:40461;}s:40:"1232:scavengerhunt-label-entry-form-text";a:2:{i:0;R:42865;i:1;R:40461;}s:41:"1232:scavengerhunt-label-entry-form-image";a:2:{i:0;R:42865;i:1;R:40461;}s:44:"1232:scavengerhunt-label-entry-form-question";a:2:{i:0;R:42865;i:1;R:40461;}s:47:"1232:scavengerhunt-label-entry-form-button-text";a:2:{i:0;R:42865;i:1;R:40461;}s:32:"1232:scavengerhunt-label-goodbye";a:2:{i:0;R:42865;i:1;R:40461;}s:38:"1232:scavengerhunt-label-goodbye-title";a:2:{i:0;R:42865;i:1;R:40461;}s:37:"1232:scavengerhunt-label-goodbye-text";a:2:{i:0;R:42865;i:1;R:40461;}s:38:"1232:scavengerhunt-label-goodbye-image";a:2:{i:0;R:42865;i:1;R:40461;}s:29:"1232:scavengerhunt-button-add";a:2:{i:0;R:42865;i:1;R:40461;}s:30:"1232:scavengerhunt-button-save";a:2:{i:0;R:42865;i:1;R:40461;}s:33:"1232:scavengerhunt-button-disable";a:2:{i:0;R:42865;i:1;R:40461;}s:32:"1232:scavengerhunt-button-enable";a:2:{i:0;R:42865;i:1;R:40461;}s:32:"1232:scavengerhunt-button-delete";a:2:{i:0;R:42865;i:1;R:40461;}s:32:"1232:scavengerhunt-button-export";a:2:{i:0;R:42865;i:1;R:40461;}s:37:"1232:scavengerhunt-button-add-section";a:2:{i:0;R:42865;i:1;R:40461;}s:40:"1232:scavengerhunt-button-remove-section";a:2:{i:0;R:42865;i:1;R:40461;}s:29:"1232:scavengerhunt-form-error";a:2:{i:0;R:42865;i:1;R:40461;}s:34:"1232:scavengerhunt-form-error-name";a:2:{i:0;R:42865;i:1;R:40461;}s:46:"1232:scavengerhunt-form-error-no-landing-title";a:2:{i:0;R:42865;i:1;R:40461;}s:43:"1232:scavengerhunt-form-error-invalid-title";a:2:{i:0;R:42865;i:1;R:40461;}s:49:"1232:scavengerhunt-form-error-landing-button-text";a:2:{i:0;R:42865;i:1;R:40461;}s:53:"1232:scavengerhunt-form-error-landing-button-position";a:2:{i:0;R:42865;i:1;R:40461;}s:43:"1232:scavengerhunt-form-error-starting-clue";a:2:{i:0;R:42865;i:1;R:40461;}s:40:"1232:scavengerhunt-form-error-entry-form";a:2:{i:0;R:42865;i:1;R:40461;}s:37:"1232:scavengerhunt-form-error-goodbye";a:2:{i:0;R:42865;i:1;R:40461;}s:46:"1232:scavengerhunt-form-error-no-article-title";a:2:{i:0;R:42865;i:1;R:40461;}s:54:"1232:scavengerhunt-form-error-duplicated-article-title";a:2:{i:0;R:42865;i:1;R:40461;}s:50:"1232:scavengerhunt-form-error-article-hidden-image";a:2:{i:0;R:42865;i:1;R:40461;}s:42:"1232:scavengerhunt-form-error-article-clue";a:2:{i:0;R:42865;i:1;R:40461;}s:34:"1232:scavengerhunt-form-error-clue";a:2:{i:0;R:42865;i:1;R:40461;}s:63:"1232:scavengerhunt-form-error-progressbarhintlabel-sprite-empty";a:2:{i:0;R:42865;i:1;R:40461;}s:59:"1232:scavengerhunt-form-error-startpopupsprite-sprite-empty";a:2:{i:0;R:42865;i:1;R:40461;}s:60:"1232:scavengerhunt-form-error-finishpopupsprite-sprite-empty";a:2:{i:0;R:42865;i:1;R:40461;}s:70:"1232:scavengerhunt-form-error-progressbarbackgroundsprite-sprite-empty";a:2:{i:0;R:42865;i:1;R:40461;}s:64:"1232:scavengerhunt-form-error-progressbarexitsprite-sprite-empty";a:2:{i:0;R:42865;i:1;R:40461;}s:65:"1232:scavengerhunt-form-error-article-spritenotfound-sprite-empty";a:2:{i:0;R:42865;i:1;R:40461;}s:70:"1232:scavengerhunt-form-error-article-spriteinprogressbar-sprite-empty";a:2:{i:0;R:42865;i:1;R:40461;}s:75:"1232:scavengerhunt-form-error-article-spriteinprogressbarhover-sprite-empty";a:2:{i:0;R:42865;i:1;R:40461;}s:45:"1232:scavengerhunt-form-error-no-sprite-image";a:2:{i:0;R:42865;i:1;R:40461;}s:78:"1232:scavengerhunt-form-error-article-spriteinprogressbarnotfound-sprite-empty";a:2:{i:0;R:42865;i:1;R:40461;}s:41:"1232:scavengerhunt-form-error-no-articles";a:2:{i:0;R:42865;i:1;R:40461;}s:41:"1232:scavengerhunt-form-error-invalid-url";a:2:{i:0;R:42865;i:1;R:40461;}s:39:"1232:scavengerhunt-form-error-cluecolor";a:2:{i:0;R:42865;i:1;R:40461;}s:40:"1232:scavengerhunt-game-has-been-created";a:2:{i:0;R:42865;i:1;R:40461;}s:38:"1232:scavengerhunt-game-has-been-saved";a:2:{i:0;R:42865;i:1;R:40461;}s:40:"1232:scavengerhunt-game-has-been-enabled";a:2:{i:0;R:42865;i:1;R:40461;}s:41:"1232:scavengerhunt-game-has-been-disabled";a:2:{i:0;R:42865;i:1;R:40461;}s:42:"1232:scavengerhunt-game-has-not-been-saved";a:2:{i:0;R:42865;i:1;R:40461;}s:38:"1232:scavengerhunt-edit-token-mismatch";a:2:{i:0;R:42865;i:1;R:40461;}s:34:"1232:scavengerhunt-entry-form-name";a:2:{i:0;R:42865;i:1;R:40461;}s:35:"1232:scavengerhunt-entry-form-email";a:2:{i:0;R:42865;i:1;R:40461;}s:36:"1232:scavengerhunt-entry-form-submit";a:2:{i:0;R:42865;i:1;R:40461;}s:35:"1232:scavengerhunt-label-sprite-img";a:2:{i:0;R:42865;i:1;R:40461;}s:33:"1232:scavengerhunt-label-sprite-x";a:2:{i:0;R:42865;i:1;R:40461;}s:34:"1232:scavengerhunt-label-sprite-x1";a:2:{i:0;R:42865;i:1;R:40461;}s:34:"1232:scavengerhunt-label-sprite-x2";a:2:{i:0;R:42865;i:1;R:40461;}s:40:"1232:scavengerhunt-game-has-been-deleted";a:2:{i:0;R:42865;i:1;R:40461;}s:34:"1232:scavengerhunt-game-more-to-go";a:2:{i:0;R:42865;i:1;R:40461;}s:37:"1232:scavengerhunt-label-progress-bar";a:2:{i:0;R:42865;i:1;R:40461;}s:36:"1232:scavengerhunt-quit-game-content";a:2:{i:0;R:42865;i:1;R:40461;}s:38:"1232:scavengerhunt-switch-game-content";a:2:{i:0;R:42865;i:1;R:40461;}s:40:"1232:scavengerhunt-quit-game-button-quit";a:2:{i:0;R:42865;i:1;R:40461;}s:42:"1232:scavengerhunt-quit-game-button-cancel";a:2:{i:0;R:42865;i:1;R:40461;}s:40:"1232:scavengerhunt-quit-game-button-stay";a:2:{i:0;R:42865;i:1;R:40461;}s:45:"1232:scavengerhunt-label-progressbarhintlabel";a:2:{i:0;R:42865;i:1;R:40461;}s:41:"1232:scavengerhunt-label-entry-form-email";a:2:{i:0;R:42865;i:1;R:40461;}s:44:"1232:scavengerhunt-label-entry-form-username";a:2:{i:0;R:42865;i:1;R:40461;}s:52:"1232:scavengerhunt-label-progressbarbackgroundsprite";a:2:{i:0;R:42865;i:1;R:40461;}s:46:"1232:scavengerhunt-label-progressbarexitsprite";a:2:{i:0;R:42865;i:1;R:40461;}s:41:"1232:scavengerhunt-label-startpopupsprite";a:2:{i:0;R:42865;i:1;R:40461;}s:39:"1232:scavengerhunt-label-spritenotfound";a:2:{i:0;R:42865;i:1;R:40461;}s:44:"1232:scavengerhunt-label-spriteinprogressbar";a:2:{i:0;R:42865;i:1;R:40461;}s:49:"1232:scavengerhunt-label-spriteinprogressbarhover";a:2:{i:0;R:42865;i:1;R:40461;}s:52:"1232:scavengerhunt-label-spriteinprogressbarnotfound";a:2:{i:0;R:42865;i:1;R:40461;}s:42:"1232:scavengerhunt-label-finishpopupsprite";a:2:{i:0;R:42865;i:1;R:40461;}s:35:"1232:scavengerhunt-label-clue-color";a:2:{i:0;R:42865;i:1;R:40461;}s:34:"1232:scavengerhunt-label-clue-size";a:2:{i:0;R:42865;i:1;R:40461;}s:34:"1232:scavengerhunt-label-clue-font";a:2:{i:0;R:42865;i:1;R:40461;}s:41:"1232:scavengerhunt-label-article-congrats";a:2:{i:0;R:42865;i:1;R:40461;}s:33:"1232:scavengerhunt-label-facebook";a:2:{i:0;R:42865;i:1;R:40461;}s:34:"1232:scavengerhunt-editor-tip-name";a:2:{i:0;R:42865;i:1;R:40461;}s:43:"1232:scavengerhunt-editor-tip-landing-title";a:2:{i:0;R:42865;i:1;R:40461;}s:49:"1232:scavengerhunt-editor-tip-landing-button-text";a:2:{i:0;R:42865;i:1;R:40461;}s:40:"1232:scavengerhunt-editor-tip-sprite-img";a:2:{i:0;R:42865;i:1;R:40461;}s:57:"1232:scavengerhunt-editor-tip-progressbarbackgroundsprite";a:2:{i:0;R:42865;i:1;R:40461;}s:51:"1232:scavengerhunt-editor-tip-progressbarexitsprite";a:2:{i:0;R:42865;i:1;R:40461;}s:50:"1232:scavengerhunt-editor-tip-progressbarhintlabel";a:2:{i:0;R:42865;i:1;R:40461;}s:49:"1232:scavengerhunt-editor-tip-starting-clue-title";a:2:{i:0;R:42865;i:1;R:40461;}s:48:"1232:scavengerhunt-editor-tip-starting-clue-text";a:2:{i:0;R:42865;i:1;R:40461;}s:55:"1232:scavengerhunt-editor-tip-starting-clue-button-text";a:2:{i:0;R:42865;i:1;R:40461;}s:57:"1232:scavengerhunt-editor-tip-starting-clue-button-target";a:2:{i:0;R:42865;i:1;R:40461;}s:46:"1232:scavengerhunt-editor-tip-startpopupsprite";a:2:{i:0;R:42865;i:1;R:40461;}s:42:"1232:scavengerhunt-editor-tip-articletitle";a:2:{i:0;R:42865;i:1;R:40461;}s:44:"1232:scavengerhunt-editor-tip-spritenotfound";a:2:{i:0;R:42865;i:1;R:40461;}s:49:"1232:scavengerhunt-editor-tip-spriteinprogressbar";a:2:{i:0;R:42865;i:1;R:40461;}s:54:"1232:scavengerhunt-editor-tip-spriteinprogressbarhover";a:2:{i:0;R:42865;i:1;R:40461;}s:57:"1232:scavengerhunt-editor-tip-spriteinprogressbarnotfound";a:2:{i:0;R:42865;i:1;R:40461;}s:47:"1232:scavengerhunt-editor-tip-article-clue-text";a:2:{i:0;R:42865;i:1;R:40461;}s:46:"1232:scavengerhunt-editor-tip-article-congrats";a:2:{i:0;R:42865;i:1;R:40461;}s:43:"1232:scavengerhunt-editor-tip-article-title";a:2:{i:0;R:42865;i:1;R:40461;}s:46:"1232:scavengerhunt-editor-tip-entry-form-title";a:2:{i:0;R:42865;i:1;R:40461;}s:45:"1232:scavengerhunt-editor-tip-entry-form-text";a:2:{i:0;R:42865;i:1;R:40461;}s:49:"1232:scavengerhunt-editor-tip-entry-form-question";a:2:{i:0;R:42865;i:1;R:40461;}s:46:"1232:scavengerhunt-editor-tip-entry-form-email";a:2:{i:0;R:42865;i:1;R:40461;}s:49:"1232:scavengerhunt-editor-tip-entry-form-username";a:2:{i:0;R:42865;i:1;R:40461;}s:47:"1232:scavengerhunt-editor-tip-finishpopupsprite";a:2:{i:0;R:42865;i:1;R:40461;}s:43:"1232:scavengerhunt-editor-tip-goodbye-title";a:2:{i:0;R:42865;i:1;R:40461;}s:42:"1232:scavengerhunt-editor-tip-goodbye-text";a:2:{i:0;R:42865;i:1;R:40461;}s:40:"1232:scavengerhunt-editor-tip-clue-color";a:2:{i:0;R:42865;i:1;R:40461;}s:52:"1232:scavengerhunt-editor-tip-entry-form-button-text";a:2:{i:0;R:42865;i:1;R:40461;}s:44:"1232:scavengerhunt-editor-tip-facebook-image";a:2:{i:0;R:42865;i:1;R:40461;}s:50:"1232:scavengerhunt-editor-tip-facebook-description";a:2:{i:0;R:42865;i:1;R:40461;}s:33:"1232:scavengerhunt-facebook-image";a:2:{i:0;R:42865;i:1;R:40461;}s:39:"1232:scavengerhunt-facebook-description";a:2:{i:0;R:42865;i:1;R:40461;}s:16:"1232:scribe-desc";a:2:{i:0;s:12:"wikia-scribe";i:1;R:40461;}s:17:"1232:scribeevents";a:2:{i:0;R:43013;i:1;R:40461;}s:24:"1232:scribeeventsrecords";a:2:{i:0;R:43013;i:1;R:40461;}s:16:"1232:search-desc";a:2:{i:0;s:12:"wikia-search";i:1;R:40461;}s:28:"1232:wikiasearch-titles-only";a:2:{i:0;R:43017;i:1;R:40461;}s:33:"1232:wikiasearch-system-error-msg";a:2:{i:0;R:43017;i:1;R:40461;}s:33:"1232:wikiasearch-search-this-wiki";a:2:{i:0;R:43017;i:1;R:40461;}s:29:"1232:wikiasearch-search-wikia";a:2:{i:0;R:43017;i:1;R:40461;}s:30:"1232:wikiasearch-image-results";a:2:{i:0;R:43017;i:1;R:40461;}s:33:"1232:wikiasearch-search-all-wikia";a:2:{i:0;R:43017;i:1;R:40461;}s:20:"1232:sharedhelp-desc";a:2:{i:0;s:16:"wikia-sharedhelp";i:1;R:40461;}s:38:"1232:sharedhelp-autotalkcreate-summary";a:2:{i:0;R:43025;i:1;R:40461;}s:30:"1232:showperformancestats-desc";a:2:{i:0;s:26:"wikia-showperformancestats";i:1;R:40461;}s:26:"1232:performancestat-total";a:2:{i:0;R:43028;i:1;R:40461;}s:27:"1232:performancestat-apache";a:2:{i:0;R:43028;i:1;R:40461;}s:24:"1232:performancestat-cpu";a:2:{i:0;R:43028;i:1;R:40461;}s:16:"1232:signup-desc";a:2:{i:0;s:12:"wikia-signup";i:1;R:40461;}s:11:"1232:signup";a:2:{i:0;R:43033;i:1;R:40461;}s:17:"1232:sitemap-desc";a:2:{i:0;s:13:"wikia-sitemap";i:1;R:40461;}s:21:"1232:sitewidemessages";a:2:{i:0;s:22:"wikia-sitewidemessages";i:1;R:40461;}s:26:"1232:swm-page-title-editor";a:2:{i:0;R:43038;i:1;R:40461;}s:27:"1232:swm-page-title-preview";a:2:{i:0;R:43038;i:1;R:40461;}s:24:"1232:swm-page-title-send";a:2:{i:0;R:43038;i:1;R:40461;}s:24:"1232:swm-page-title-sent";a:2:{i:0;R:43038;i:1;R:40461;}s:27:"1232:swm-page-title-dismiss";a:2:{i:0;R:43038;i:1;R:40461;}s:24:"1232:swm-page-title-list";a:2:{i:0;R:43038;i:1;R:40461;}s:22:"1232:swm-label-preview";a:2:{i:0;R:43038;i:1;R:40461;}s:19:"1232:swm-label-edit";a:2:{i:0;R:43038;i:1;R:40461;}s:21:"1232:swm-label-remove";a:2:{i:0;R:43038;i:1;R:40461;}s:19:"1232:swm-label-sent";a:2:{i:0;R:43038;i:1;R:40461;}s:19:"1232:swm-label-list";a:2:{i:0;R:43038;i:1;R:40461;}s:24:"1232:swm-label-recipient";a:2:{i:0;R:43038;i:1;R:40461;}s:30:"1232:swm-label-recipient-wikis";a:2:{i:0;R:43038;i:1;R:40461;}s:30:"1232:swm-label-recipient-users";a:2:{i:0;R:43038;i:1;R:40461;}s:25:"1232:swm-label-expiration";a:2:{i:0;R:43038;i:1;R:40461;}s:30:"1232:swm-label-expiration-hint";a:2:{i:0;R:43038;i:1;R:40461;}s:29:"1232:swm-label-mode-wikis-all";a:2:{i:0;R:43038;i:1;R:40461;}s:29:"1232:swm-label-mode-wikis-hub";a:2:{i:0;R:43038;i:1;R:40461;}s:33:"1232:swm-label-mode-wikis-cluster";a:2:{i:0;R:43038;i:1;R:40461;}s:30:"1232:swm-label-mode-wikis-wiki";a:2:{i:0;R:43038;i:1;R:40461;}s:29:"1232:swm-label-mode-users-all";a:2:{i:0;R:43038;i:1;R:40461;}s:32:"1232:swm-label-mode-users-active";a:2:{i:0;R:43038;i:1;R:40461;}s:31:"1232:swm-label-mode-users-group";a:2:{i:0;R:43038;i:1;R:40461;}s:36:"1232:swm-label-mode-users-group-hint";a:2:{i:0;R:43038;i:1;R:40461;}s:30:"1232:swm-label-mode-users-user";a:2:{i:0;R:43038;i:1;R:40461;}s:35:"1232:swm-label-mode-users-user-hint";a:2:{i:0;R:43038;i:1;R:40461;}s:36:"1232:swm-label-mode-users-user-multi";a:2:{i:0;R:43038;i:1;R:40461;}s:41:"1232:swm-label-mode-users-user-multi-hint";a:2:{i:0;R:43038;i:1;R:40461;}s:22:"1232:swm-label-content";a:2:{i:0;R:43038;i:1;R:40461;}s:22:"1232:swm-label-comment";a:2:{i:0;R:43038;i:1;R:40461;}s:24:"1232:swm-label-dismissed";a:2:{i:0;R:43038;i:1;R:40461;}s:23:"1232:swm-label-language";a:2:{i:0;R:43038;i:1;R:40461;}s:29:"1232:swm-button-lang-checkall";a:2:{i:0;R:43038;i:1;R:40461;}s:30:"1232:swm-button-lang-checknone";a:2:{i:0;R:43038;i:1;R:40461;}s:25:"1232:swm-taskmanager-hint";a:2:{i:0;R:43038;i:1;R:40461;}s:23:"1232:swm-button-preview";a:2:{i:0;R:43038;i:1;R:40461;}s:20:"1232:swm-button-send";a:2:{i:0;R:43038;i:1;R:40461;}s:20:"1232:swm-button-save";a:2:{i:0;R:43038;i:1;R:40461;}s:19:"1232:swm-button-new";a:2:{i:0;R:43038;i:1;R:40461;}s:20:"1232:swm-msg-sent-ok";a:2:{i:0;R:43038;i:1;R:40461;}s:21:"1232:swm-msg-sent-err";a:2:{i:0;R:43038;i:1;R:40461;}s:19:"1232:swm-msg-remove";a:2:{i:0;R:43038;i:1;R:40461;}s:13:"1232:swm-days";a:2:{i:0;R:43038;i:1;R:40461;}s:23:"1232:swm-expire-options";a:2:{i:0;R:43038;i:1;R:40461;}s:20:"1232:swm-expire-info";a:2:{i:0;R:43038;i:1;R:40461;}s:21:"1232:swm-link-dismiss";a:2:{i:0;R:43038;i:1;R:40461;}s:24:"1232:swm-dismiss-content";a:2:{i:0;R:43038;i:1;R:40461;}s:25:"1232:swm-list-no-messages";a:2:{i:0;R:43038;i:1;R:40461;}s:22:"1232:swm-list-table-id";a:2:{i:0;R:43038;i:1;R:40461;}s:26:"1232:swm-list-table-sender";a:2:{i:0;R:43038;i:1;R:40461;}s:24:"1232:swm-list-table-wiki";a:2:{i:0;R:43038;i:1;R:40461;}s:29:"1232:swm-list-table-recipient";a:2:{i:0;R:43038;i:1;R:40461;}s:25:"1232:swm-list-table-group";a:2:{i:0;R:43038;i:1;R:40461;}s:26:"1232:swm-list-table-expire";a:2:{i:0;R:43038;i:1;R:40461;}s:24:"1232:swm-list-table-date";a:2:{i:0;R:43038;i:1;R:40461;}s:27:"1232:swm-list-table-removed";a:2:{i:0;R:43038;i:1;R:40461;}s:27:"1232:swm-list-table-content";a:2:{i:0;R:43038;i:1;R:40461;}s:25:"1232:swm-list-table-tools";a:2:{i:0;R:43038;i:1;R:40461;}s:24:"1232:swm-list-table-lang";a:2:{i:0;R:43038;i:1;R:40461;}s:12:"1232:swm-yes";a:2:{i:0;R:43038;i:1;R:40461;}s:11:"1232:swm-no";a:2:{i:0;R:43038;i:1;R:40461;}s:27:"1232:swm-error-no-such-wiki";a:2:{i:0;R:43038;i:1;R:40461;}s:27:"1232:swm-error-no-such-user";a:2:{i:0;R:43038;i:1;R:40461;}s:27:"1232:swm-error-no-user-list";a:2:{i:0;R:43038;i:1;R:40461;}s:28:"1232:swm-error-empty-message";a:2:{i:0;R:43038;i:1;R:40461;}s:27:"1232:swm-error-long-message";a:2:{i:0;R:43038;i:1;R:40461;}s:26:"1232:swm-error-empty-group";a:2:{i:0;R:43038;i:1;R:40461;}s:27:"1232:swm-error-invalid-time";a:2:{i:0;R:43038;i:1;R:40461;}s:19:"1232:swm-lang-other";a:2:{i:0;R:43038;i:1;R:40461;}s:21:"1232:skinchooser-desc";a:2:{i:0;s:17:"wikia-skinchooser";i:1;R:40461;}s:26:"1232:skinchooser-customcss";a:2:{i:0;R:43109;i:1;R:40461;}s:13:"1232:new-look";a:2:{i:0;R:43109;i:1;R:40461;}s:16:"1232:site-layout";a:2:{i:0;R:43109;i:1;R:40461;}s:19:"1232:slidertag-desc";a:2:{i:0;s:15:"wikia-slidertag";i:1;R:40461;}s:29:"1232:slidertag-featured-wikis";a:2:{i:0;R:43114;i:1;R:40461;}s:20:"1232:cacheepoch-desc";a:2:{i:0;s:23:"wikia-specialcacheepoch";i:1;R:40461;}s:15:"1232:cacheepoch";a:2:{i:0;R:43117;i:1;R:40461;}s:22:"1232:cacheepoch-header";a:2:{i:0;R:43117;i:1;R:40461;}s:21:"1232:cacheepoch-value";a:2:{i:0;R:43117;i:1;R:40461;}s:22:"1232:cacheepoch-submit";a:2:{i:0;R:43117;i:1;R:40461;}s:23:"1232:cacheepoch-updated";a:2:{i:0;R:43117;i:1;R:40461;}s:27:"1232:cacheepoch-not-updated";a:2:{i:0;R:43117;i:1;R:40461;}s:25:"1232:cacheepoch-wf-reason";a:2:{i:0;R:43117;i:1;R:40461;}s:21:"1232:cacheepoch-no-wf";a:2:{i:0;R:43117;i:1;R:40461;}s:12:"1232:contact";a:2:{i:0;s:20:"wikia-specialcontact";i:1;R:40461;}s:25:"1232:specialcontact-wikia";a:2:{i:0;R:43127;i:1;R:40461;}s:29:"1232:specialcontact-pagetitle";a:2:{i:0;R:43127;i:1;R:40461;}s:25:"1232:specialcontact-intro";a:2:{i:0;R:43127;i:1;R:40461;}s:28:"1232:specialcontact-username";a:2:{i:0;R:43127;i:1;R:40461;}s:28:"1232:specialcontact-wikiname";a:2:{i:0;R:43127;i:1;R:40461;}s:28:"1232:specialcontact-realname";a:2:{i:0;R:43127;i:1;R:40461;}s:28:"1232:specialcontact-yourmail";a:2:{i:0;R:43127;i:1;R:40461;}s:27:"1232:specialcontact-problem";a:2:{i:0;R:43127;i:1;R:40461;}s:31:"1232:specialcontact-problemdesc";a:2:{i:0;R:43127;i:1;R:40461;}s:24:"1232:specialcontact-mail";a:2:{i:0;R:43127;i:1;R:40461;}s:28:"1232:specialcontact-filledin";a:2:{i:0;R:43127;i:1;R:40461;}s:24:"1232:specialcontact-ccme";a:2:{i:0;R:43127;i:1;R:40461;}s:30:"1232:specialcontact-ccdisabled";a:2:{i:0;R:43127;i:1;R:40461;}s:26:"1232:specialcontact-notyou";a:2:{i:0;R:43127;i:1;R:40461;}s:31:"1232:specialcontact-captchainfo";a:2:{i:0;R:43127;i:1;R:40461;}s:32:"1232:specialcontact-captchatitle";a:2:{i:0;R:43127;i:1;R:40461;}s:29:"1232:specialcontact-formtitle";a:2:{i:0;R:43127;i:1;R:40461;}s:29:"1232:specialcontact-nomessage";a:2:{i:0;R:43127;i:1;R:40461;}s:31:"1232:specialcontact-captchafail";a:2:{i:0;R:43127;i:1;R:40461;}s:27:"1232:specialcontact-mailsub";a:2:{i:0;R:43127;i:1;R:40461;}s:29:"1232:specialcontact-mailsubcc";a:2:{i:0;R:43127;i:1;R:40461;}s:28:"1232:specialcontact-ccheader";a:2:{i:0;R:43127;i:1;R:40461;}s:34:"1232:specialcontact-submitcomplete";a:2:{i:0;R:43127;i:1;R:40461;}s:18:"1232:interwikiedit";a:2:{i:0;s:26:"wikia-specialinterwikiedit";i:1;R:40461;}s:17:"1232:iwedit-title";a:2:{i:0;R:43152;i:1;R:40461;}s:31:"1232:iwedit-language-interwikis";a:2:{i:0;R:43152;i:1;R:40461;}s:26:"1232:iwedit-all-interwikis";a:2:{i:0;R:43152;i:1;R:40461;}s:18:"1232:iwedit-update";a:2:{i:0;R:43152;i:1;R:40461;}s:17:"1232:iwedit-error";a:2:{i:0;R:43152;i:1;R:40461;}s:19:"1232:iwedit-success";a:2:{i:0;R:43152;i:1;R:40461;}s:31:"1232:specialmultiplelookup-desc";a:2:{i:0;s:27:"wikia-specialmultiplelookup";i:1;R:40461;}s:16:"1232:multilookup";a:2:{i:0;R:43160;i:1;R:40461;}s:22:"1232:multilookupstitle";a:2:{i:0;R:43160;i:1;R:40461;}s:26:"1232:multilookupselectuser";a:2:{i:0;R:43160;i:1;R:40461;}s:18:"1232:multilookupgo";a:2:{i:0;R:43160;i:1;R:40461;}s:26:"1232:multilookupnotspecify";a:2:{i:0;R:43160;i:1;R:40461;}s:20:"1232:multilookupnext";a:2:{i:0;R:43160;i:1;R:40461;}s:24:"1232:multilookupprevious";a:2:{i:0;R:43160;i:1;R:40461;}s:25:"1232:multilookupnbrresult";a:2:{i:0;R:43160;i:1;R:40461;}s:30:"1232:multilookupinvalidresults";a:2:{i:0;R:43160;i:1;R:40461;}s:29:"1232:multilookupnoresultfound";a:2:{i:0;R:43160;i:1;R:40461;}s:20:"1232:multilookupwiki";a:2:{i:0;R:43160;i:1;R:40461;}s:20:"1232:multilookuplink";a:2:{i:0;R:43160;i:1;R:40461;}s:23:"1232:multilookupdetails";a:2:{i:0;R:43160;i:1;R:40461;}s:29:"1232:multilookuplistwikiainfo";a:2:{i:0;R:43160;i:1;R:40461;}s:27:"1232:multilookupinvaliduser";a:2:{i:0;R:43160;i:1;R:40461;}s:24:"1232:multilookuplastedit";a:2:{i:0;R:43160;i:1;R:40461;}s:26:"1232:multilookupwikidbname";a:2:{i:0;R:43160;i:1;R:40461;}s:23:"1232:multilookupwikiurl";a:2:{i:0;R:43160;i:1;R:40461;}s:25:"1232:multilookupwikititle";a:2:{i:0;R:43160;i:1;R:40461;}s:27:"1232:multilookupwikioptions";a:2:{i:0;R:43160;i:1;R:40461;}s:27:"1232:multilookuplastedithdr";a:2:{i:0;R:43160;i:1;R:40461;}s:28:"1232:multilookuprecordspager";a:2:{i:0;R:43160;i:1;R:40461;}s:22:"1232:right-multilookup";a:2:{i:0;R:43160;i:1;R:40461;}s:28:"1232:specialprotectsite-desc";a:2:{i:0;s:24:"wikia-specialprotectsite";i:1;R:40461;}s:16:"1232:protectsite";a:2:{i:0;R:43185;i:1;R:40461;}s:29:"1232:protectsite-text-protect";a:2:{i:0;R:43185;i:1;R:40461;}s:31:"1232:protectsite-text-unprotect";a:2:{i:0;R:43185;i:1;R:40461;}s:22:"1232:protectsite-title";a:2:{i:0;R:43185;i:1;R:40461;}s:25:"1232:protectsite-allowall";a:2:{i:0;R:43185;i:1;R:40461;}s:31:"1232:protectsite-allowusersysop";a:2:{i:0;R:43185;i:1;R:40461;}s:27:"1232:protectsite-allowsysop";a:2:{i:0;R:43185;i:1;R:40461;}s:30:"1232:protectsite-createaccount";a:2:{i:0;R:43185;i:1;R:40461;}s:27:"1232:protectsite-createpage";a:2:{i:0;R:43185;i:1;R:40461;}s:21:"1232:protectsite-edit";a:2:{i:0;R:43185;i:1;R:40461;}s:21:"1232:protectsite-move";a:2:{i:0;R:43185;i:1;R:40461;}s:23:"1232:protectsite-upload";a:2:{i:0;R:43185;i:1;R:40461;}s:24:"1232:protectsite-timeout";a:2:{i:0;R:43185;i:1;R:40461;}s:30:"1232:protectsite-timeout-error";a:2:{i:0;R:43185;i:1;R:40461;}s:27:"1232:protectsite-maxtimeout";a:2:{i:0;R:43185;i:1;R:40461;}s:24:"1232:protectsite-comment";a:2:{i:0;R:43185;i:1;R:40461;}s:25:"1232:protectsite-ucomment";a:2:{i:0;R:43185;i:1;R:40461;}s:22:"1232:protectsite-until";a:2:{i:0;R:43185;i:1;R:40461;}s:24:"1232:protectsite-protect";a:2:{i:0;R:43185;i:1;R:40461;}s:26:"1232:protectsite-unprotect";a:2:{i:0;R:43185;i:1;R:40461;}s:23:"1232:protectsite-nologs";a:2:{i:0;R:43185;i:1;R:40461;}s:21:"1232:sponsorpage-desc";a:2:{i:0;s:24:"wikia-specialsponsorpage";i:1;R:40461;}s:19:"1232:sponsor-header";a:2:{i:0;R:43208;i:1;R:40461;}s:16:"1232:sponsor-msg";a:2:{i:0;R:43208;i:1;R:40461;}s:21:"1232:sponsor-template";a:2:{i:0;R:43208;i:1;R:40461;}s:27:"1232:sponsor-preview-prompt";a:2:{i:0;R:43208;i:1;R:40461;}s:27:"1232:sponsor-preview-errors";a:2:{i:0;R:43208;i:1;R:40461;}s:21:"1232:sponsor-form-url";a:2:{i:0;R:43208;i:1;R:40461;}s:26:"1232:sponsor-form-linktext";a:2:{i:0;R:43208;i:1;R:40461;}s:32:"1232:sponsor-form-additionaltext";a:2:{i:0;R:43208;i:1;R:40461;}s:22:"1232:sponsor-form-page";a:2:{i:0;R:43208;i:1;R:40461;}s:23:"1232:sponsor-form-price";a:2:{i:0;R:43208;i:1;R:40461;}s:23:"1232:sponsor-form-email";a:2:{i:0;R:43208;i:1;R:40461;}s:24:"1232:sponsor-form-thanks";a:2:{i:0;R:43208;i:1;R:40461;}s:23:"1232:sponsor-price-45yr";a:2:{i:0;R:43208;i:1;R:40461;}s:22:"1232:sponsor-price-5mo";a:2:{i:0;R:43208;i:1;R:40461;}s:21:"1232:sponsorpage-edit";a:2:{i:0;R:43208;i:1;R:40461;}s:21:"1232:sponsorpage-save";a:2:{i:0;R:43208;i:1;R:40461;}s:13:"1232:userdata";a:2:{i:0;s:21:"wikia-specialuserdata";i:1;R:40461;}s:26:"1232:userdata-userid-label";a:2:{i:0;R:43226;i:1;R:40461;}s:20:"1232:userdata-submit";a:2:{i:0;R:43226;i:1;R:40461;}s:25:"1232:specialuserdata-desc";a:2:{i:0;R:43226;i:1;R:40461;}s:20:"1232:userdata-header";a:2:{i:0;R:43226;i:1;R:40461;}s:19:"1232:userdata-value";a:2:{i:0;R:43226;i:1;R:40461;}s:21:"1232:userdata-updated";a:2:{i:0;R:43226;i:1;R:40461;}s:25:"1232:userdata-not-updated";a:2:{i:0;R:43226;i:1;R:40461;}s:23:"1232:userdata-wf-reason";a:2:{i:0;R:43226;i:1;R:40461;}s:19:"1232:userdata-no-wf";a:2:{i:0;R:43226;i:1;R:40461;}s:22:"1232:spellchecker-desc";a:2:{i:0;s:18:"wikia-spellchecker";i:1;R:40461;}s:23:"1232:enablespellchecker";a:2:{i:0;R:43237;i:1;R:40461;}s:22:"1232:spellchecker-info";a:2:{i:0;R:43237;i:1;R:40461;}s:32:"1232:spellchecker-info-languages";a:2:{i:0;R:43237;i:1;R:40461;}s:31:"1232:spellchecker-info-provider";a:2:{i:0;R:43237;i:1;R:40461;}s:35:"1232:spellchecker-info-dictionaries";a:2:{i:0;R:43237;i:1;R:40461;}s:38:"1232:spellchecker-info-spellcheck-text";a:2:{i:0;R:43237;i:1;R:40461;}s:43:"1232:spellchecker-info-spellcheck-languages";a:2:{i:0;R:43237;i:1;R:40461;}s:40:"1232:spellchecker-info-spellcheck-submit";a:2:{i:0;R:43237;i:1;R:40461;}s:44:"1232:spellchecker-info-spellcheck-is-correct";a:2:{i:0;R:43237;i:1;R:40461;}s:45:"1232:spellchecker-info-spellcheck-suggestions";a:2:{i:0;R:43237;i:1;R:40461;}s:26:"1232:sponsorship-dashboard";a:2:{i:0;s:26:"wikia-sponsorshipdashboard";i:1;R:40461;}s:34:"1232:sponsorship-dashboard-serie-a";a:2:{i:0;R:43249;i:1;R:40461;}s:34:"1232:sponsorship-dashboard-serie-b";a:2:{i:0;R:43249;i:1;R:40461;}s:34:"1232:sponsorship-dashboard-serie-c";a:2:{i:0;R:43249;i:1;R:40461;}s:34:"1232:sponsorship-dashboard-serie-d";a:2:{i:0;R:43249;i:1;R:40461;}s:34:"1232:sponsorship-dashboard-serie-e";a:2:{i:0;R:43249;i:1;R:40461;}s:34:"1232:sponsorship-dashboard-serie-f";a:2:{i:0;R:43249;i:1;R:40461;}s:34:"1232:sponsorship-dashboard-serie-g";a:2:{i:0;R:43249;i:1;R:40461;}s:34:"1232:sponsorship-dashboard-serie-h";a:2:{i:0;R:43249;i:1;R:40461;}s:34:"1232:sponsorship-dashboard-serie-i";a:2:{i:0;R:43249;i:1;R:40461;}s:34:"1232:sponsorship-dashboard-serie-j";a:2:{i:0;R:43249;i:1;R:40461;}s:34:"1232:sponsorship-dashboard-serie-k";a:2:{i:0;R:43249;i:1;R:40461;}s:60:"1232:sponsorship-dashboard-serie-new-pages-content-namespace";a:2:{i:0;R:43249;i:1;R:40461;}s:40:"1232:sponsorship-dashboard-serie-organic";a:2:{i:0;R:43249;i:1;R:40461;}s:41:"1232:sponsorship-dashboard-serie-referral";a:2:{i:0;R:43249;i:1;R:40461;}s:48:"1232:sponsorship-dashboard-serie-content-article";a:2:{i:0;R:43249;i:1;R:40461;}s:41:"1232:sponsorship-dashboard-serie-toplists";a:2:{i:0;R:43249;i:1;R:40461;}s:46:"1232:sponsorship-dashboard-serie-blog-comments";a:2:{i:0;R:43249;i:1;R:40461;}s:46:"1232:sponsorship-dashboard-serie-general-edits";a:2:{i:0;R:43249;i:1;R:40461;}s:48:"1232:sponsorship-dashboard-serie-article-edits-1";a:2:{i:0;R:43249;i:1;R:40461;}s:48:"1232:sponsorship-dashboard-serie-article-edits-5";a:2:{i:0;R:43249;i:1;R:40461;}s:49:"1232:sponsorship-dashboard-serie-article-edits-10";a:2:{i:0;R:43249;i:1;R:40461;}s:42:"1232:sponsorship-dashboard-serie-pageviews";a:2:{i:0;R:43249;i:1;R:40461;}s:39:"1232:sponsorship-dashboard-serie-clicks";a:2:{i:0;R:43249;i:1;R:40461;}s:39:"1232:sponsorship-dashboard-serie-visits";a:2:{i:0;R:43249;i:1;R:40461;}s:43:"1232:sponsorship-dashboard-serie-timeonsite";a:2:{i:0;R:43249;i:1;R:40461;}s:42:"1232:sponsorship-dashboard-serie-newvisits";a:2:{i:0;R:43249;i:1;R:40461;}s:40:"1232:sponsorship-dashboard-serie-bounces";a:2:{i:0;R:43249;i:1;R:40461;}s:41:"1232:sponsorship-dashboard-serie-visitors";a:2:{i:0;R:43249;i:1;R:40461;}s:45:"1232:sponsorship-dashboard-serie-entrancerate";a:2:{i:0;R:43249;i:1;R:40461;}s:48:"1232:sponsorship-dashboard-serie-uniquepageviews";a:2:{i:0;R:43249;i:1;R:40461;}s:41:"1232:sponsorship-dashboard-serie-exitrate";a:2:{i:0;R:43249;i:1;R:40461;}s:46:"1232:sponsorship-dashboard-serie-avgtimeonsite";a:2:{i:0;R:43249;i:1;R:40461;}s:48:"1232:sponsorship-dashboard-serie-visitbouncerate";a:2:{i:0;R:43249;i:1;R:40461;}s:49:"1232:sponsorship-dashboard-serie-percentnewvisits";a:2:{i:0;R:43249;i:1;R:40461;}s:48:"1232:sponsorship-dashboard-serie-organicsearches";a:2:{i:0;R:43249;i:1;R:40461;}s:46:"1232:sponsorship-dashboard-serie-avgtimeonpage";a:2:{i:0;R:43249;i:1;R:40461;}s:42:"1232:sponsorship-dashboard-serie-entrances";a:2:{i:0;R:43249;i:1;R:40461;}s:50:"1232:sponsorship-dashboard-serie-pageviewspervisit";a:2:{i:0;R:43249;i:1;R:40461;}s:38:"1232:sponsorship-dashboard-serie-exits";a:2:{i:0;R:43249;i:1;R:40461;}s:52:"1232:sponsorship-dashboard-serie-newvisitstimeonsite";a:2:{i:0;R:43249;i:1;R:40461;}s:48:"1232:sponsorship-dashboard-serie-namespace-media";a:2:{i:0;R:43249;i:1;R:40461;}s:50:"1232:sponsorship-dashboard-serie-namespace-special";a:2:{i:0;R:43249;i:1;R:40461;}s:47:"1232:sponsorship-dashboard-serie-namespace-talk";a:2:{i:0;R:43249;i:1;R:40461;}s:47:"1232:sponsorship-dashboard-serie-namespace-user";a:2:{i:0;R:43249;i:1;R:40461;}s:52:"1232:sponsorship-dashboard-serie-namespace-user_talk";a:2:{i:0;R:43249;i:1;R:40461;}s:50:"1232:sponsorship-dashboard-serie-namespace-project";a:2:{i:0;R:43249;i:1;R:40461;}s:55:"1232:sponsorship-dashboard-serie-namespace-project_talk";a:2:{i:0;R:43249;i:1;R:40461;}s:47:"1232:sponsorship-dashboard-serie-namespace-file";a:2:{i:0;R:43249;i:1;R:40461;}s:52:"1232:sponsorship-dashboard-serie-namespace-file_talk";a:2:{i:0;R:43249;i:1;R:40461;}s:52:"1232:sponsorship-dashboard-serie-namespace-mediawiki";a:2:{i:0;R:43249;i:1;R:40461;}s:57:"1232:sponsorship-dashboard-serie-namespace-mediawiki_talk";a:2:{i:0;R:43249;i:1;R:40461;}s:51:"1232:sponsorship-dashboard-serie-namespace-template";a:2:{i:0;R:43249;i:1;R:40461;}s:56:"1232:sponsorship-dashboard-serie-namespace-template_talk";a:2:{i:0;R:43249;i:1;R:40461;}s:47:"1232:sponsorship-dashboard-serie-namespace-help";a:2:{i:0;R:43249;i:1;R:40461;}s:52:"1232:sponsorship-dashboard-serie-namespace-help_talk";a:2:{i:0;R:43249;i:1;R:40461;}s:51:"1232:sponsorship-dashboard-serie-namespace-category";a:2:{i:0;R:43249;i:1;R:40461;}s:56:"1232:sponsorship-dashboard-serie-namespace-category_talk";a:2:{i:0;R:43249;i:1;R:40461;}s:54:"1232:sponsorship-dashboard-serie-namespace-top_10_list";a:2:{i:0;R:43249;i:1;R:40461;}s:60:"1232:sponsorship-dashboard-serie-namespace-user_blog_comment";a:2:{i:0;R:43249;i:1;R:40461;}s:52:"1232:sponsorship-dashboard-serie-namespace-user_blog";a:2:{i:0;R:43249;i:1;R:40461;}s:47:"1232:sponsorship-dashboard-description-activity";a:2:{i:0;R:43249;i:1;R:40461;}s:49:"1232:sponsorship-dashboard-description-engagement";a:2:{i:0;R:43249;i:1;R:40461;}s:52:"1232:sponsorship-dashboard-description-participation";a:2:{i:0;R:43249;i:1;R:40461;}s:45:"1232:sponsorship-dashboard-description-source";a:2:{i:0;R:43249;i:1;R:40461;}s:50:"1232:sponsorship-dashboard-description-competitors";a:2:{i:0;R:43249;i:1;R:40461;}s:48:"1232:sponsorship-dashboard-description-interests";a:2:{i:0;R:43249;i:1;R:40461;}s:47:"1232:sponsorship-dashboard-description-keywords";a:2:{i:0;R:43249;i:1;R:40461;}s:47:"1232:sponsorship-dashboard-description-visitors";a:2:{i:0;R:43249;i:1;R:40461;}s:46:"1232:sponsorship-dashboard-description-traffic";a:2:{i:0;R:43249;i:1;R:40461;}s:46:"1232:sponsorship-dashboard-description-content";a:2:{i:0;R:43249;i:1;R:40461;}s:42:"1232:sponsorship-dashboard-report-activity";a:2:{i:0;R:43249;i:1;R:40461;}s:44:"1232:sponsorship-dashboard-report-engagement";a:2:{i:0;R:43249;i:1;R:40461;}s:47:"1232:sponsorship-dashboard-report-participation";a:2:{i:0;R:43249;i:1;R:40461;}s:40:"1232:sponsorship-dashboard-report-source";a:2:{i:0;R:43249;i:1;R:40461;}s:45:"1232:sponsorship-dashboard-report-competitors";a:2:{i:0;R:43249;i:1;R:40461;}s:43:"1232:sponsorship-dashboard-report-interests";a:2:{i:0;R:43249;i:1;R:40461;}s:42:"1232:sponsorship-dashboard-report-keywords";a:2:{i:0;R:43249;i:1;R:40461;}s:42:"1232:sponsorship-dashboard-report-visitors";a:2:{i:0;R:43249;i:1;R:40461;}s:41:"1232:sponsorship-dashboard-report-traffic";a:2:{i:0;R:43249;i:1;R:40461;}s:41:"1232:sponsorship-dashboard-report-content";a:2:{i:0;R:43249;i:1;R:40461;}s:45:"1232:sponsorship-dashboard-tab-marketresearch";a:2:{i:0;R:43249;i:1;R:40461;}s:45:"1232:sponsorship-dashboard-tab-userengagement";a:2:{i:0;R:43249;i:1;R:40461;}s:44:"1232:sponsorship-dashboard-tab-growthmetrics";a:2:{i:0;R:43249;i:1;R:40461;}s:36:"1232:sponsorship-dashboard-variables";a:2:{i:0;R:43249;i:1;R:40461;}s:41:"1232:sponsorship-dashboard-overview-label";a:2:{i:0;R:43249;i:1;R:40461;}s:43:"1232:sponsorship-dashboard-overview-enddate";a:2:{i:0;R:43249;i:1;R:40461;}s:45:"1232:sponsorship-dashboard-overview-startdate";a:2:{i:0;R:43249;i:1;R:40461;}s:30:"1232:sponsorship-dashboard-day";a:2:{i:0;R:43249;i:1;R:40461;}s:32:"1232:sponsorship-dashboard-month";a:2:{i:0;R:43249;i:1;R:40461;}s:31:"1232:sponsorship-dashboard-year";a:2:{i:0;R:43249;i:1;R:40461;}s:37:"1232:sponsorship-dashboard-from-label";a:2:{i:0;R:43249;i:1;R:40461;}s:35:"1232:sponsorship-dashboard-to-label";a:2:{i:0;R:43249;i:1;R:40461;}s:53:"1232:sponsorship-dashboard-error-nodataforcurrentweek";a:2:{i:0;R:43249;i:1;R:40461;}s:16:"1232:not-allowed";a:2:{i:0;R:43249;i:1;R:40461;}s:9:"1232:show";a:2:{i:0;R:43249;i:1;R:40461;}s:25:"1232:sponsorshipdashboard";a:2:{i:0;R:43249;i:1;R:40461;}s:38:"1232:sponsorship-dashboard-city-select";a:2:{i:0;R:43249;i:1;R:40461;}s:36:"1232:sponsorship-dashboard-report-01";a:2:{i:0;R:43249;i:1;R:40461;}s:36:"1232:sponsorship-dashboard-report-02";a:2:{i:0;R:43249;i:1;R:40461;}s:36:"1232:sponsorship-dashboard-report-03";a:2:{i:0;R:43249;i:1;R:40461;}s:37:"1232:sponsorship-dasboard-specialpage";a:2:{i:0;R:43249;i:1;R:40461;}s:41:"1232:sponsorship-dashboard-overwiev-label";a:2:{i:0;R:43249;i:1;R:40461;}s:38:"1232:sponsorship-dashboard-empty-chart";a:2:{i:0;R:43249;i:1;R:40461;}s:51:"1232:sponsorship-dashboard-cityname-and-familiarity";a:2:{i:0;R:43249;i:1;R:40461;}s:42:"1232:sponsorship-dashboard-save-successful";a:2:{i:0;R:43249;i:1;R:40461;}s:42:"1232:sponsorship-dashboard-tab-viewreports";a:2:{i:0;R:43249;i:1;R:40461;}s:41:"1232:sponsorship-dashboard-tab-viewgroups";a:2:{i:0;R:43249;i:1;R:40461;}s:40:"1232:sponsorship-dashboard-tab-viewusers";a:2:{i:0;R:43249;i:1;R:40461;}s:39:"1232:sponsorship-dashboard-tab-viewinfo";a:2:{i:0;R:43249;i:1;R:40461;}s:36:"1232:sponsorship-dashboard-group-new";a:2:{i:0;R:43249;i:1;R:40461;}s:37:"1232:sponsorship-dashboard-group-name";a:2:{i:0;R:43249;i:1;R:40461;}s:35:"1232:sponsorship-dashboard-user-new";a:2:{i:0;R:43249;i:1;R:40461;}s:36:"1232:sponsorship-dashboard-user-name";a:2:{i:0;R:43249;i:1;R:40461;}s:36:"1232:sponsorship-dashboard-user-type";a:2:{i:0;R:43249;i:1;R:40461;}s:37:"1232:sponsorship-dashboard-report-new";a:2:{i:0;R:43249;i:1;R:40461;}s:38:"1232:sponsorship-dashboard-description";a:2:{i:0;R:43249;i:1;R:40461;}s:40:"1232:sponsorship-dashboard-users-user-id";a:2:{i:0;R:43249;i:1;R:40461;}s:37:"1232:sponsorship-dashboard-users-name";a:2:{i:0;R:43249;i:1;R:40461;}s:39:"1232:sponsorship-dashboard-users-status";a:2:{i:0;R:43249;i:1;R:40461;}s:37:"1232:sponsorship-dashboard-users-type";a:2:{i:0;R:43249;i:1;R:40461;}s:39:"1232:sponsorship-dashboard-editor-users";a:2:{i:0;R:43249;i:1;R:40461;}s:41:"1232:sponsorship-dashboard-editor-reports";a:2:{i:0;R:43249;i:1;R:40461;}s:40:"1232:sponsorship-dashboard-editor-groups";a:2:{i:0;R:43249;i:1;R:40461;}s:38:"1232:sponsorship-dashboard-user-type-0";a:2:{i:0;R:43249;i:1;R:40461;}s:38:"1232:sponsorship-dashboard-user-type-1";a:2:{i:0;R:43249;i:1;R:40461;}s:44:"1232:sponsorship-dashboard-empty-description";a:2:{i:0;R:43249;i:1;R:40461;}s:43:"1232:sponsorship-dashboard-report-no-source";a:2:{i:0;R:43249;i:1;R:40461;}s:45:"1232:sponsorship-dashboard-report-data-source";a:2:{i:0;R:43249;i:1;R:40461;}s:45:"1232:sponsorship-dashboard-report-description";a:2:{i:0;R:43249;i:1;R:40461;}s:39:"1232:sponsorship-dashboard-report-title";a:2:{i:0;R:43249;i:1;R:40461;}s:48:"1232:sponsorship-dashboard-report-data-frequency";a:2:{i:0;R:43249;i:1;R:40461;}s:48:"1232:sponsorship-dashboard-report-max-date-units";a:2:{i:0;R:43249;i:1;R:40461;}s:46:"1232:sponsorship-dashboard-report-date-monthly";a:2:{i:0;R:43249;i:1;R:40461;}s:44:"1232:sponsorship-dashboard-report-date-daily";a:2:{i:0;R:43249;i:1;R:40461;}s:49:"1232:sponsorship-dashboard-report-new-source-gapi";a:2:{i:0;R:43249;i:1;R:40461;}s:56:"1232:sponsorship-dashboard-report-new-source-gapi-custom";a:2:{i:0;R:43249;i:1;R:40461;}s:50:"1232:sponsorship-dashboard-report-new-source-stats";a:2:{i:0;R:43249;i:1;R:40461;}s:51:"1232:sponsorship-dashboard-report-new-source-onedot";a:2:{i:0;R:43249;i:1;R:40461;}s:33:"1232:sponsorship-dashboard-cancel";a:2:{i:0;R:43249;i:1;R:40461;}s:31:"1232:sponsorship-dashboard-save";a:2:{i:0;R:43249;i:1;R:40461;}s:34:"1232:sponsorship-dashboard-preview";a:2:{i:0;R:43249;i:1;R:40461;}s:31:"1232:sponsorship-dashboard-edit";a:2:{i:0;R:43249;i:1;R:40461;}s:38:"1232:sponsorship-dashboard-0-means-all";a:2:{i:0;R:43249;i:1;R:40461;}s:48:"1232:sponsorship-dashboard-report-general-ptions";a:2:{i:0;R:43249;i:1;R:40461;}s:32:"1232:sponsorship-dashboard-group";a:2:{i:0;R:43249;i:1;R:40461;}s:41:"1232:sponsorship-dashboard-source-discard";a:2:{i:0;R:43249;i:1;R:40461;}s:44:"1232:sponsorship-dashboard-source-datasource";a:2:{i:0;R:43249;i:1;R:40461;}s:41:"1232:sponsorship-dashboard-source-metrics";a:2:{i:0;R:43249;i:1;R:40461;}s:49:"1232:sponsorship-dashboard-source-googleanalytics";a:2:{i:0;R:43249;i:1;R:40461;}s:40:"1232:sponsorship-dashboard-source-onedot";a:2:{i:0;R:43249;i:1;R:40461;}s:40:"1232:sponsorship-dashboard-source-mobile";a:2:{i:0;R:43249;i:1;R:40461;}s:44:"1232:sponsorship-dashboard-source-wikiastats";a:2:{i:0;R:43249;i:1;R:40461;}s:43:"1232:sponsorship-dashboard-source-variables";a:2:{i:0;R:43249;i:1;R:40461;}s:54:"1232:sponsorship-dashboard-source-additional-dimension";a:2:{i:0;R:43249;i:1;R:40461;}s:38:"1232:sponsorship-dashboard-source-none";a:2:{i:0;R:43249;i:1;R:40461;}s:41:"1232:sponsorship-dashboard-source-default";a:2:{i:0;R:43249;i:1;R:40461;}s:50:"1232:sponsorship-dashboard-source-in-case-of-empty";a:2:{i:0;R:43249;i:1;R:40461;}s:45:"1232:sponsorship-dashboard-source-leave-empty";a:2:{i:0;R:43249;i:1;R:40461;}s:39:"1232:sponsorship-dashboard-source-wikis";a:2:{i:0;R:43249;i:1;R:40461;}s:43:"1232:sponsorship-dashboard-source-main-wiki";a:2:{i:0;R:43249;i:1;R:40461;}s:38:"1232:sponsorship-dashboard-source-list";a:2:{i:0;R:43249;i:1;R:40461;}s:44:"1232:sponsorship-dashboard-top-x-competitors";a:2:{i:0;R:43249;i:1;R:40461;}s:55:"1232:sponsorship-dashboard-source-number-of-competitors";a:2:{i:0;R:43249;i:1;R:40461;}s:41:"1232:sponsorship-dashboard-source-wiki-id";a:2:{i:0;R:43249;i:1;R:40461;}s:40:"1232:sponsorship-dashboard-source-hub-id";a:2:{i:0;R:43249;i:1;R:40461;}s:54:"1232:sponsorship-dashboard-source-pageviews-namespaces";a:2:{i:0;R:43249;i:1;R:40461;}s:46:"1232:sponsorship-dashboard-report-data-sources";a:2:{i:0;R:43249;i:1;R:40461;}s:40:"1232:sponsorship-dashboard-mobile-serie-";a:2:{i:0;R:43249;i:1;R:40461;}s:51:"1232:sponsorship-dashboard-report-new-source-mobile";a:2:{i:0;R:43249;i:1;R:40461;}s:62:"1232:sponsorship-dashboard-mobile-serie-list_category_contents";a:2:{i:0;R:43249;i:1;R:40461;}s:50:"1232:sponsorship-dashboard-mobile-serie-list_games";a:2:{i:0;R:43249;i:1;R:40461;}s:58:"1232:sponsorship-dashboard-mobile-serie-list_wiki_contents";a:2:{i:0;R:43249;i:1;R:40461;}s:52:"1232:sponsorship-dashboard-mobile-serie-local_search";a:2:{i:0;R:43249;i:1;R:40461;}s:47:"1232:sponsorship-dashboard-mobile-serie-android";a:2:{i:0;R:43249;i:1;R:40461;}s:46:"1232:sponsorship-dashboard-mobile-serie-iphone";a:2:{i:0;R:43249;i:1;R:40461;}s:49:"1232:sponsorship-dashboard-mobile-serie-undefined";a:2:{i:0;R:43249;i:1;R:40461;}s:50:"1232:sponsorship-dashboard-mobile-serie-gameguides";a:2:{i:0;R:43249;i:1;R:40461;}s:41:"1232:sponsorship-dashboard-source-actions";a:2:{i:0;R:43249;i:1;R:40461;}s:36:"1232:sponsorship-dashboard-source-os";a:2:{i:0;R:43249;i:1;R:40461;}s:37:"1232:sponsorship-dashboard-source-app";a:2:{i:0;R:43249;i:1;R:40461;}s:38:"1232:sponsorship-dashboard-report-name";a:2:{i:0;R:43249;i:1;R:40461;}s:45:"1232:sponsorship-dashboard-source-wiki-app-id";a:2:{i:0;R:43249;i:1;R:40461;}s:44:"1232:sponsorship-dashboard-source-serie-name";a:2:{i:0;R:43249;i:1;R:40461;}s:52:"1232:sponsorship-dashboard-source-gapi-force-account";a:2:{i:0;R:43249;i:1;R:40461;}s:39:"1232:sponsorship-dashboard-source-query";a:2:{i:0;R:43249;i:1;R:40461;}s:42:"1232:sponsorship-dashboard-source-gapi-url";a:2:{i:0;R:43249;i:1;R:40461;}s:43:"1232:sponsorship-dashboard-source-gapi-name";a:2:{i:0;R:43249;i:1;R:40461;}s:45:"1232:sponsorship-dashboard-default-page-title";a:2:{i:0;R:43249;i:1;R:40461;}s:44:"1232:sponsorship-dashboard-report-page-title";a:2:{i:0;R:43249;i:1;R:40461;}s:42:"1232:sponsorship-dashboard-cachedate-label";a:2:{i:0;R:43249;i:1;R:40461;}s:40:"1232:sponsorship-dashboard-other-options";a:2:{i:0;R:43249;i:1;R:40461;}s:41:"1232:sponsorship-dashboard-download-chart";a:2:{i:0;R:43249;i:1;R:40461;}s:52:"1232:sponsorship-dashboard-from-checkbox-show-trends";a:2:{i:0;R:43249;i:1;R:40461;}s:45:"1232:sponsorship-dashboard-table-collumn-date";a:2:{i:0;R:43249;i:1;R:40461;}s:38:"1232:sponsorship-dashboard-users-error";a:2:{i:0;R:43249;i:1;R:40461;}s:38:"1232:sponsorship-dashobard-not-allowed";a:2:{i:0;R:43249;i:1;R:40461;}s:39:"1232:sponsorship-dashboard-download-csv";a:2:{i:0;R:43249;i:1;R:40461;}s:38:"1232:sponsorship-dashboard-save-as-new";a:2:{i:0;R:43249;i:1;R:40461;}s:40:"1232:sponsorship-dashboard-source-global";a:2:{i:0;R:43249;i:1;R:40461;}s:46:"1232:sponsorship-dashboard-source-max-elements";a:2:{i:0;R:43249;i:1;R:40461;}s:35:"1232:sponsorship-dashboard-compleat";a:2:{i:0;R:43249;i:1;R:40461;}s:37:"1232:sponsorship-dashboard-select-all";a:2:{i:0;R:43249;i:1;R:40461;}s:39:"1232:sponsorship-dashboard-deselect-all";a:2:{i:0;R:43249;i:1;R:40461;}s:35:"1232:sponsorship-dashboard-download";a:2:{i:0;R:43249;i:1;R:40461;}s:18:"1232:stafflog-desc";a:2:{i:0;s:14:"wikia-stafflog";i:1;R:40461;}s:13:"1232:stafflog";a:2:{i:0;R:43455;i:1;R:40461;}s:22:"1232:stafflog-blockmsg";a:2:{i:0;R:43455;i:1;R:40461;}s:31:"1232:stafflog-piggybackloginmsg";a:2:{i:0;R:43455;i:1;R:40461;}s:32:"1232:stafflog-piggybacklogoutmsg";a:2:{i:0;R:43455;i:1;R:40461;}s:19:"1232:right-stafflog";a:2:{i:0;R:43455;i:1;R:40461;}s:32:"1232:stafflog-wiki-status-change";a:2:{i:0;R:43455;i:1;R:40461;}s:26:"1232:stafflog-filter-label";a:2:{i:0;R:43455;i:1;R:40461;}s:25:"1232:stafflog-filter-user";a:2:{i:0;R:43455;i:1;R:40461;}s:25:"1232:stafflog-filter-type";a:2:{i:0;R:43455;i:1;R:40461;}s:26:"1232:stafflog-filter-apply";a:2:{i:0;R:43455;i:1;R:40461;}s:31:"1232:stafflog-filter-type-block";a:2:{i:0;R:43455;i:1;R:40461;}s:35:"1232:stafflog-filter-type-piggyback";a:2:{i:0;R:43455;i:1;R:40461;}s:36:"1232:stafflog-filter-type-renameuser";a:2:{i:0;R:43455;i:1;R:40461;}s:37:"1232:stafflog-filter-type-wikifactory";a:2:{i:0;R:43455;i:1;R:40461;}s:32:"1232:staffpowers-ipblock-aborted";a:2:{i:0;s:17:"wikia-staffpowers";i:1;R:40461;}s:15:"1232:tagsreport";a:2:{i:0;s:16:"wikia-tagsreport";i:1;R:40461;}s:20:"1232:tagsreporttitle";a:2:{i:0;R:43473;i:1;R:40461;}s:24:"1232:tagsreportselecttag";a:2:{i:0;R:43473;i:1;R:40461;}s:17:"1232:tagsreportgo";a:2:{i:0;R:43473;i:1;R:40461;}s:25:"1232:tagsreportnotspecify";a:2:{i:0;R:43473;i:1;R:40461;}s:24:"1232:tagsreportnoresults";a:2:{i:0;R:43473;i:1;R:40461;}s:25:"1232:tagsreportmainnspace";a:2:{i:0;R:43473;i:1;R:40461;}s:20:"1232:tagsreportpages";a:2:{i:0;R:43473;i:1;R:40461;}s:25:"1232:tagsreportpagesfound";a:2:{i:0;R:43473;i:1;R:40461;}s:24:"1232:tagsreportgenerated";a:2:{i:0;R:43473;i:1;R:40461;}s:16:"1232:taskmanager";a:2:{i:0;s:17:"wikia-taskmanager";i:1;R:40461;}s:22:"1232:taskmanager_title";a:2:{i:0;R:43484;i:1;R:40461;}s:25:"1232:taskmanager_tasklist";a:2:{i:0;R:43484;i:1;R:40461;}s:22:"1232:right-taskmanager";a:2:{i:0;R:43484;i:1;R:40461;}s:29:"1232:right-taskmanager-action";a:2:{i:0;R:43484;i:1;R:40461;}s:14:"1232:textregex";a:2:{i:0;s:15:"wikia-textregex";i:1;R:40461;}s:19:"1232:textregex-desc";a:2:{i:0;R:43490;i:1;R:40461;}s:25:"1232:textregex-page-title";a:2:{i:0;R:43490;i:1;R:40461;}s:31:"1232:textregex-error-unblocking";a:2:{i:0;R:43490;i:1;R:40461;}s:32:"1232:textregex-currently-blocked";a:2:{i:0;R:43490;i:1;R:40461;}s:34:"1232:textregex_nocurrently-blocked";a:2:{i:0;R:43490;i:1;R:40461;}s:27:"1232:textregex-addedby-user";a:2:{i:0;R:43490;i:1;R:40461;}s:25:"1232:textregex-remove-url";a:2:{i:0;R:43490;i:1;R:40461;}s:24:"1232:textregex-stats-url";a:2:{i:0;R:43490;i:1;R:40461;}s:27:"1232:textregex-unblock-succ";a:2:{i:0;R:43490;i:1;R:40461;}s:25:"1232:textregex-block-succ";a:2:{i:0;R:43490;i:1;R:40461;}s:30:"1232:textregex-unblock-message";a:2:{i:0;R:43490;i:1;R:40461;}s:28:"1232:textregex-block-message";a:2:{i:0;R:43490;i:1;R:40461;}s:26:"1232:textregex-regex-block";a:2:{i:0;R:43490;i:1;R:40461;}s:27:"1232:textregex-submit-regex";a:2:{i:0;R:43490;i:1;R:40461;}s:26:"1232:textregex-empty-regex";a:2:{i:0;R:43490;i:1;R:40461;}s:28:"1232:textregex-invalid-regex";a:2:{i:0;R:43490;i:1;R:40461;}s:28:"1232:textregex-already-added";a:2:{i:0;R:43490;i:1;R:40461;}s:27:"1232:textregex-nodata-found";a:2:{i:0;R:43490;i:1;R:40461;}s:27:"1232:textregex-stats-record";a:2:{i:0;R:43490;i:1;R:40461;}s:29:"1232:textregex-select-subpage";a:2:{i:0;R:43490;i:1;R:40461;}s:29:"1232:textregex-select-default";a:2:{i:0;R:43490;i:1;R:40461;}s:29:"1232:textregex-create-subpage";a:2:{i:0;R:43490;i:1;R:40461;}s:31:"1232:textregex-select-regexlist";a:2:{i:0;R:43490;i:1;R:40461;}s:30:"1232:textregex-invalid-regexid";a:2:{i:0;R:43490;i:1;R:40461;}s:32:"1232:textregex-phrase-statistics";a:2:{i:0;R:43490;i:1;R:40461;}s:30:"1232:textregex-return-mainpage";a:2:{i:0;R:43490;i:1;R:40461;}s:21:"1232:themedesigner-or";a:2:{i:0;s:19:"wikia-themedesigner";i:1;R:40461;}s:23:"1232:themedesigner-desc";a:2:{i:0;R:43518;i:1;R:40461;}s:24:"1232:themedesigner-title";a:2:{i:0;R:43518;i:1;R:40461;}s:29:"1232:themedesigner-background";a:2:{i:0;R:43518;i:1;R:40461;}s:23:"1232:themedesigner-page";a:2:{i:0;R:43518;i:1;R:40461;}s:24:"1232:themedesigner-color";a:2:{i:0;R:43518;i:1;R:40461;}s:26:"1232:themedesigner-graphic";a:2:{i:0;R:43518;i:1;R:40461;}s:26:"1232:themedesigner-buttons";a:2:{i:0;R:43518;i:1;R:40461;}s:24:"1232:themedesigner-links";a:2:{i:0;R:43518;i:1;R:40461;}s:25:"1232:themedesigner-header";a:2:{i:0;R:43518;i:1;R:40461;}s:32:"1232:themedesigner-text-wordmark";a:2:{i:0;R:43518;i:1;R:40461;}s:35:"1232:themedesigner-graphic-wordmark";a:2:{i:0;R:43518;i:1;R:40461;}s:24:"1232:themedesigner-small";a:2:{i:0;R:43518;i:1;R:40461;}s:25:"1232:themedesigner-medium";a:2:{i:0;R:43518;i:1;R:40461;}s:24:"1232:themedesigner-large";a:2:{i:0;R:43518;i:1;R:40461;}s:34:"1232:themedesigner-tile-background";a:2:{i:0;R:43518;i:1;R:40461;}s:33:"1232:themedesigner-fix-background";a:2:{i:0;R:43518;i:1;R:40461;}s:31:"1232:themedesigner-transparency";a:2:{i:0;R:43518;i:1;R:40461;}s:28:"1232:themedesigner-tab-theme";a:2:{i:0;R:43518;i:1;R:40461;}s:32:"1232:themedesigner-tab-customize";a:2:{i:0;R:43518;i:1;R:40461;}s:31:"1232:themedesigner-tab-wordmark";a:2:{i:0;R:43518;i:1;R:40461;}s:31:"1232:themedesigner-preview-mode";a:2:{i:0;R:43518;i:1;R:40461;}s:36:"1232:themedesigner-previous-versions";a:2:{i:0;R:43518;i:1;R:40461;}s:38:"1232:themedesigner-button-save-im-done";a:2:{i:0;R:43518;i:1;R:40461;}s:32:"1232:themedesigner-button-cancel";a:2:{i:0;R:43518;i:1;R:40461;}s:31:"1232:themedesigner-pick-a-color";a:2:{i:0;R:43518;i:1;R:40461;}s:33:"1232:themedesigner-enter-your-own";a:2:{i:0;R:43518;i:1;R:40461;}s:41:"1232:themedesigner-color-name-or-hex-code";a:2:{i:0;R:43518;i:1;R:40461;}s:28:"1232:themedesigner-button-ok";a:2:{i:0;R:43518;i:1;R:40461;}s:32:"1232:themedesigner-pick-an-image";a:2:{i:0;R:43518;i:1;R:40461;}s:40:"1232:themedesigner-dont-use-a-background";a:2:{i:0;R:43518;i:1;R:40461;}s:34:"1232:themedesigner-upload-your-own";a:2:{i:0;R:43518;i:1;R:40461;}s:32:"1232:themedesigner-button-upload";a:2:{i:0;R:43518;i:1;R:40461;}s:41:"1232:themedesigner-button-upload-wordmark";a:2:{i:0;R:43518;i:1;R:40461;}s:35:"1232:themedesigner-rules-background";a:2:{i:0;R:43518;i:1;R:40461;}s:26:"1232:themedesigner-default";a:2:{i:0;R:43518;i:1;R:40461;}s:23:"1232:themedesigner-font";a:2:{i:0;R:43518;i:1;R:40461;}s:23:"1232:themedesigner-size";a:2:{i:0;R:43518;i:1;R:40461;}s:30:"1232:themedesigner-button-save";a:2:{i:0;R:43518;i:1;R:40461;}s:35:"1232:themedesigner-upload-a-graphic";a:2:{i:0;R:43518;i:1;R:40461;}s:33:"1232:themedesigner-rules-wordmark";a:2:{i:0;R:43518;i:1;R:40461;}s:32:"1232:themedesigner-rules-favicon";a:2:{i:0;R:43518;i:1;R:40461;}s:48:"1232:themedesigner-rules-favicon-learn-more-link";a:2:{i:0;R:43518;i:1;R:40461;}s:37:"1232:themedesigner-dont-use-a-graphic";a:2:{i:0;R:43518;i:1;R:40461;}s:31:"1232:themedesigner-history-item";a:2:{i:0;R:43518;i:1;R:40461;}s:37:"1232:themedesigner-button-change-text";a:2:{i:0;R:43518;i:1;R:40461;}s:25:"1232:themedesigner-reason";a:2:{i:0;R:43518;i:1;R:40461;}s:29:"1232:themedesigner-size-error";a:2:{i:0;R:43518;i:1;R:40461;}s:35:"1232:themedesigner-dimensions-error";a:2:{i:0;R:43518;i:1;R:40461;}s:29:"1232:themedesigner-type-error";a:2:{i:0;R:43518;i:1;R:40461;}s:31:"1232:themedesugber-uknown-error";a:2:{i:0;R:43518;i:1;R:40461;}s:38:"1232:themedesigner-manual-upload-error";a:2:{i:0;R:43518;i:1;R:40461;}s:34:"1232:themedesigner-favicon-heading";a:2:{i:0;R:43518;i:1;R:40461;}s:34:"1232:themedesigner-wodmark-preview";a:2:{i:0;R:43518;i:1;R:40461;}s:22:"1232:theorytab-subpage";a:2:{i:0;s:15:"wikia-theorytab";i:1;R:40461;}s:20:"1232:theorytab-title";a:2:{i:0;R:43573;i:1;R:40461;}s:27:"1232:theorytab-parent-title";a:2:{i:0;R:43573;i:1;R:40461;}s:26:"1232:timeagomessaging-desc";a:2:{i:0;s:22:"wikia-timeagomessaging";i:1;R:40461;}s:16:"1232:timeago-day";a:2:{i:0;R:43577;i:1;R:40461;}s:17:"1232:timeago-hour";a:2:{i:0;R:43577;i:1;R:40461;}s:19:"1232:timeago-minute";a:2:{i:0;R:43577;i:1;R:40461;}s:18:"1232:timeago-month";a:2:{i:0;R:43577;i:1;R:40461;}s:19:"1232:timeago-second";a:2:{i:0;R:43577;i:1;R:40461;}s:18:"1232:toplists-desc";a:2:{i:0;s:14:"wikia-toplists";i:1;R:40461;}s:36:"1232:right-toplists-create-edit-list";a:2:{i:0;R:43584;i:1;R:40461;}s:31:"1232:right-toplists-create-item";a:2:{i:0;R:43584;i:1;R:40461;}s:29:"1232:right-toplists-edit-item";a:2:{i:0;R:43584;i:1;R:40461;}s:31:"1232:right-toplists-delete-item";a:2:{i:0;R:43584;i:1;R:40461;}s:18:"1232:createtoplist";a:2:{i:0;R:43584;i:1;R:40461;}s:16:"1232:edittoplist";a:2:{i:0;R:43584;i:1;R:40461;}s:22:"1232:toplists-category";a:2:{i:0;R:43584;i:1;R:40461;}s:33:"1232:toplists-error-invalid-title";a:2:{i:0;R:43584;i:1;R:40461;}s:35:"1232:toplists-error-invalid-picture";a:2:{i:0;R:43584;i:1;R:40461;}s:32:"1232:toplists-error-title-exists";a:2:{i:0;R:43584;i:1;R:40461;}s:30:"1232:toplists-error-title-spam";a:2:{i:0;R:43584;i:1;R:40461;}s:35:"1232:toplists-error-article-blocked";a:2:{i:0;R:43584;i:1;R:40461;}s:38:"1232:toplists-error-article-not-exists";a:2:{i:0;R:43584;i:1;R:40461;}s:38:"1232:toplists-error-picture-not-exists";a:2:{i:0;R:43584;i:1;R:40461;}s:36:"1232:toplists-error-duplicated-entry";a:2:{i:0;R:43584;i:1;R:40461;}s:35:"1232:toplists-error-empty-item-name";a:2:{i:0;R:43584;i:1;R:40461;}s:32:"1232:toplists-item-cannot-delete";a:2:{i:0;R:43584;i:1;R:40461;}s:40:"1232:toplists-error-image-already-exists";a:2:{i:0;R:43584;i:1;R:40461;}s:33:"1232:toplists-error-add-item-anon";a:2:{i:0;R:43584;i:1;R:40461;}s:39:"1232:toplists-error-add-item-permission";a:2:{i:0;R:43584;i:1;R:40461;}s:44:"1232:toplists-error-add-item-list-not-exists";a:2:{i:0;R:43584;i:1;R:40461;}s:34:"1232:toplists-upload-error-unknown";a:2:{i:0;R:43584;i:1;R:40461;}s:32:"1232:toplists-editor-title-label";a:2:{i:0;R:43584;i:1;R:40461;}s:38:"1232:toplists-editor-title-placeholder";a:2:{i:0;R:43584;i:1;R:40461;}s:42:"1232:toplists-editor-related-article-label";a:2:{i:0;R:43584;i:1;R:40461;}s:48:"1232:toplists-editor-related-article-placeholder";a:2:{i:0;R:43584;i:1;R:40461;}s:45:"1232:toplists-editor-social-description-label";a:2:{i:0;R:43584;i:1;R:40461;}s:51:"1232:toplists-editor-social-description-placeholder";a:2:{i:0;R:43584;i:1;R:40461;}s:42:"1232:toplists-editor-image-browser-tooltip";a:2:{i:0;R:43584;i:1;R:40461;}s:40:"1232:toplists-editor-remove-item-tooltip";a:2:{i:0;R:43584;i:1;R:40461;}s:38:"1232:toplists-editor-drag-item-tooltip";a:2:{i:0;R:43584;i:1;R:40461;}s:35:"1232:toplists-editor-add-item-label";a:2:{i:0;R:43584;i:1;R:40461;}s:37:"1232:toplists-editor-add-item-tooltip";a:2:{i:0;R:43584;i:1;R:40461;}s:27:"1232:toplists-create-button";a:2:{i:0;R:43584;i:1;R:40461;}s:27:"1232:toplists-update-button";a:2:{i:0;R:43584;i:1;R:40461;}s:27:"1232:toplists-cancel-button";a:2:{i:0;R:43584;i:1;R:40461;}s:27:"1232:toplists-items-removed";a:2:{i:0;R:43584;i:1;R:40461;}s:27:"1232:toplists-items-created";a:2:{i:0;R:43584;i:1;R:40461;}s:27:"1232:toplists-items-updated";a:2:{i:0;R:43584;i:1;R:40461;}s:28:"1232:toplists-items-nochange";a:2:{i:0;R:43584;i:1;R:40461;}s:46:"1232:toplits-image-browser-no-picture-selected";a:2:{i:0;R:43584;i:1;R:40461;}s:40:"1232:toplits-image-browser-clear-picture";a:2:{i:0;R:43584;i:1;R:40461;}s:43:"1232:toplits-image-browser-selected-picture";a:2:{i:0;R:43584;i:1;R:40461;}s:38:"1232:toplists-image-browser-upload-btn";a:2:{i:0;R:43584;i:1;R:40461;}s:40:"1232:toplists-image-browser-upload-label";a:2:{i:0;R:43584;i:1;R:40461;}s:35:"1232:toplists-list-creation-summary";a:2:{i:0;R:43584;i:1;R:40461;}s:33:"1232:toplists-list-update-summary";a:2:{i:0;R:43584;i:1;R:40461;}s:35:"1232:toplists-item-creation-summary";a:2:{i:0;R:43584;i:1;R:40461;}s:33:"1232:toplists-item-update-summary";a:2:{i:0;R:43584;i:1;R:40461;}s:33:"1232:toplists-item-remove-summary";a:2:{i:0;R:43584;i:1;R:40461;}s:27:"1232:toplists-item-restored";a:2:{i:0;R:43584;i:1;R:40461;}s:29:"1232:toplists-list-related-to";a:2:{i:0;R:43584;i:1;R:40461;}s:28:"1232:toplists-list-votes-num";a:2:{i:0;R:43584;i:1;R:40461;}s:29:"1232:toplists-list-created-by";a:2:{i:0;R:43584;i:1;R:40461;}s:26:"1232:toplists-list-vote-up";a:2:{i:0;R:43584;i:1;R:40461;}s:32:"1232:toplists-list-hotitem-count";a:2:{i:0;R:43584;i:1;R:40461;}s:33:"1232:toplists-list-add-item-label";a:2:{i:0;R:43584;i:1;R:40461;}s:38:"1232:toplists-list-add-item-name-label";a:2:{i:0;R:43584;i:1;R:40461;}s:29:"1232:toplists-list-item-voted";a:2:{i:0;R:43584;i:1;R:40461;}s:37:"1232:toplists-createpage-dialog-label";a:2:{i:0;R:43584;i:1;R:40461;}s:27:"1232:toplists-email-subject";a:2:{i:0;R:43584;i:1;R:40461;}s:24:"1232:toplists-email-body";a:2:{i:0;R:43584;i:1;R:40461;}s:21:"1232:toplists-seconds";a:2:{i:0;R:43584;i:1;R:40461;}s:21:"1232:toplists-minutes";a:2:{i:0;R:43584;i:1;R:40461;}s:19:"1232:toplists-hours";a:2:{i:0;R:43584;i:1;R:40461;}s:18:"1232:toplists-days";a:2:{i:0;R:43584;i:1;R:40461;}s:19:"1232:toplists-weeks";a:2:{i:0;R:43584;i:1;R:40461;}s:39:"1232:toplists-msg-fb-onratearticle-link";a:2:{i:0;R:43584;i:1;R:40461;}s:40:"1232:toplists-msg-fb-onratearticle-short";a:2:{i:0;R:43584;i:1;R:40461;}s:34:"1232:toplists-msg-fb-onratearticle";a:2:{i:0;R:43584;i:1;R:40461;}s:28:"1232:toplists-create-heading";a:2:{i:0;R:43584;i:1;R:40461;}s:31:"1232:toplists-create-button-msg";a:2:{i:0;R:43584;i:1;R:40461;}s:16:"1232:unsubscribe";a:2:{i:0;s:17:"wikia-unsubscribe";i:1;R:40461;}s:26:"1232:unsubscribe-badaccess";a:2:{i:0;R:43658;i:1;R:40461;}s:25:"1232:unsubscribe-badtoken";a:2:{i:0;R:43658;i:1;R:40461;}s:25:"1232:unsubscribe-bademail";a:2:{i:0;R:43658;i:1;R:40461;}s:24:"1232:unsubscribe-badtime";a:2:{i:0;R:43658;i:1;R:40461;}s:24:"1232:unsubscribe-nousers";a:2:{i:0;R:43658;i:1;R:40461;}s:28:"1232:unsubscribe-noconfusers";a:2:{i:0;R:43658;i:1;R:40461;}s:31:"1232:unsubscribe-confirm-legend";a:2:{i:0;R:43658;i:1;R:40461;}s:29:"1232:unsubscribe-confirm-text";a:2:{i:0;R:43658;i:1;R:40461;}s:31:"1232:unsubscribe-confirm-button";a:2:{i:0;R:43658;i:1;R:40461;}s:24:"1232:unsubscribe-working";a:2:{i:0;R:43658;i:1;R:40461;}s:32:"1232:unsubscribe-working-problem";a:2:{i:0;R:43658;i:1;R:40461;}s:29:"1232:unsubscribe-working-done";a:2:{i:0;R:43658;i:1;R:40461;}s:35:"1232:unsubscribe-preferences-toggle";a:2:{i:0;R:43658;i:1;R:40461;}s:35:"1232:unsubscribe-preferences-notice";a:2:{i:0;R:43658;i:1;R:40461;}s:38:"1232:userprofilepage-edit-modal-header";a:2:{i:0;s:23:"wikia-userprofilepagev3";i:1;R:40461;}s:37:"1232:userprofilepage-question-caption";a:2:{i:0;R:43674;i:1;R:40461;}s:46:"1232:userprofilepage-lightbox-interview-cancel";a:2:{i:0;R:43674;i:1;R:40461;}s:44:"1232:userprofilepage-lightbox-interview-save";a:2:{i:0;R:43674;i:1;R:40461;}s:47:"1232:userprofilepage-interview-edit-new-summary";a:2:{i:0;R:43674;i:1;R:40461;}s:50:"1232:userprofilepage-interview-edit-update-summary";a:2:{i:0;R:43674;i:1;R:40461;}s:41:"1232:userprofilepage-interview-save-error";a:2:{i:0;R:43674;i:1;R:40461;}s:50:"1232:userprofilepage-interview-save-internal-error";a:2:{i:0;R:43674;i:1;R:40461;}s:40:"1232:userprofilepage-answers-stats-title";a:2:{i:0;R:43674;i:1;R:40461;}s:39:"1232:userprofilepage-answers-stats-info";a:2:{i:0;R:43674;i:1;R:40461;}s:33:"1232:userprofilepage-add-question";a:2:{i:0;R:43674;i:1;R:40461;}s:34:"1232:userprofilepage-question-save";a:2:{i:0;R:43674;i:1;R:40461;}s:40:"1232:userprofilepage-question-list-title";a:2:{i:0;R:43674;i:1;R:40461;}s:44:"1232:userprofilepage-interview-section-title";a:2:{i:0;R:43674;i:1;R:40461;}s:33:"1232:userprofilepage-invalid-user";a:2:{i:0;R:43674;i:1;R:40461;}s:38:"1232:userprofilepage-avatar-error-type";a:2:{i:0;R:43674;i:1;R:40461;}s:44:"1232:userprofilepage-avatar-error-resolution";a:2:{i:0;R:43674;i:1;R:40461;}s:27:"1232:user-identity-box-edit";a:2:{i:0;R:43674;i:1;R:40461;}s:40:"1232:user-identity-box-wikia-contributor";a:2:{i:0;R:43674;i:1;R:40461;}s:34:"1232:user-identity-box-edit-avatar";a:2:{i:0;R:43674;i:1;R:40461;}s:36:"1232:user-identity-box-delete-avatar";a:2:{i:0;R:43674;i:1;R:40461;}s:43:"1232:user-identity-box-avatar-upload-avatar";a:2:{i:0;R:43674;i:1;R:40461;}s:46:"1232:user-identity-box-avatar-fb-import-avatar";a:2:{i:0;R:43674;i:1;R:40461;}s:43:"1232:user-identity-box-avatar-choose-avatar";a:2:{i:0;R:43674;i:1;R:40461;}s:34:"1232:user-identity-box-avatar-save";a:2:{i:0;R:43674;i:1;R:40461;}s:36:"1232:user-identity-box-avatar-cancel";a:2:{i:0;R:43674;i:1;R:40461;}s:45:"1232:user-identity-box-avatar-anon-user-error";a:2:{i:0;R:43674;i:1;R:40461;}s:39:"1232:user-identity-box-hide-edits-wikis";a:2:{i:0;R:43674;i:1;R:40461;}s:39:"1232:user-identity-box-banned-from-chat";a:2:{i:0;R:43674;i:1;R:40461;}s:32:"1232:user-identity-box-aka-label";a:2:{i:0;R:43674;i:1;R:40461;}s:33:"1232:user-identity-box-my-twitter";a:2:{i:0;R:43674;i:1;R:40461;}s:33:"1232:user-identity-box-my-website";a:2:{i:0;R:43674;i:1;R:40461;}s:33:"1232:user-identity-box-my-fb-page";a:2:{i:0;R:43674;i:1;R:40461;}s:32:"1232:user-identity-box-fav-wikis";a:2:{i:0;R:43674;i:1;R:40461;}s:31:"1232:user-identity-box-location";a:2:{i:0;R:43674;i:1;R:40461;}s:34:"1232:user-identity-box-was-born-on";a:2:{i:0;R:43674;i:1;R:40461;}s:34:"1232:user-identity-box-was-born-in";a:2:{i:0;R:43674;i:1;R:40461;}s:33:"1232:user-identity-box-occupation";a:2:{i:0;R:43674;i:1;R:40461;}s:23:"1232:user-identity-i-am";a:2:{i:0;R:43674;i:1;R:40461;}s:42:"1232:user-identity-box-edits-since-joining";a:2:{i:0;R:43674;i:1;R:40461;}s:28:"1232:user-identity-box-edits";a:2:{i:0;R:43674;i:1;R:40461;}s:36:"1232:user-identity-box-group-blocked";a:2:{i:0;R:43674;i:1;R:40461;}s:42:"1232:user-identity-box-group-chatmoderator";a:2:{i:0;R:43674;i:1;R:40461;}s:34:"1232:user-identity-box-group-sysop";a:2:{i:0;R:43674;i:1;R:40461;}s:39:"1232:user-identity-box-group-bureaucrat";a:2:{i:0;R:43674;i:1;R:40461;}s:36:"1232:user-identity-box-group-founder";a:2:{i:0;R:43674;i:1;R:40461;}s:34:"1232:user-identity-box-group-staff";a:2:{i:0;R:43674;i:1;R:40461;}s:35:"1232:user-identity-box-group-helper";a:2:{i:0;R:43674;i:1;R:40461;}s:33:"1232:user-identity-box-group-vstf";a:2:{i:0;R:43674;i:1;R:40461;}s:42:"1232:user-identity-box-group-authenticated";a:2:{i:0;R:43674;i:1;R:40461;}s:36:"1232:user-identity-box-group-council";a:2:{i:0;R:43674;i:1;R:40461;}s:42:"1232:user-identity-box-zero-state-location";a:2:{i:0;R:43674;i:1;R:40461;}s:42:"1232:user-identity-box-zero-state-birthday";a:2:{i:0;R:43674;i:1;R:40461;}s:40:"1232:user-identity-box-zero-state-gender";a:2:{i:0;R:43674;i:1;R:40461;}s:44:"1232:user-identity-box-zero-state-occupation";a:2:{i:0;R:43674;i:1;R:40461;}s:41:"1232:user-identity-box-zero-state-twitter";a:2:{i:0;R:43674;i:1;R:40461;}s:41:"1232:user-identity-box-zero-state-website";a:2:{i:0;R:43674;i:1;R:40461;}s:41:"1232:user-identity-box-zero-state-fb-page";a:2:{i:0;R:43674;i:1;R:40461;}s:31:"1232:user-identity-box-about-me";a:2:{i:0;R:43674;i:1;R:40461;}s:29:"1232:user-identity-box-avatar";a:2:{i:0;R:43674;i:1;R:40461;}s:33:"1232:user-identity-box-about-name";a:2:{i:0;R:43674;i:1;R:40461;}s:37:"1232:user-identity-box-about-location";a:2:{i:0;R:43674;i:1;R:40461;}s:37:"1232:user-identity-box-about-birthday";a:2:{i:0;R:43674;i:1;R:40461;}s:39:"1232:user-identity-box-about-occupation";a:2:{i:0;R:43674;i:1;R:40461;}s:35:"1232:user-identity-box-about-gender";a:2:{i:0;R:43674;i:1;R:40461;}s:36:"1232:user-identity-box-about-website";a:2:{i:0;R:43674;i:1;R:40461;}s:34:"1232:user-identity-box-about-tweet";a:2:{i:0;R:43674;i:1;R:40461;}s:38:"1232:user-identity-box-about-fav-wikis";a:2:{i:0;R:43674;i:1;R:40461;}s:46:"1232:user-identity-box-about-fav-wikis-refresh";a:2:{i:0;R:43674;i:1;R:40461;}s:38:"1232:user-identity-box-join-more-wikis";a:2:{i:0;R:43674;i:1;R:40461;}s:37:"1232:user-identity-box-import-from-fb";a:2:{i:0;R:43674;i:1;R:40461;}s:36:"1232:user-identity-box-connect-to-fb";a:2:{i:0;R:43674;i:1;R:40461;}s:31:"1232:user-identity-box-unsyc-fb";a:2:{i:0;R:43674;i:1;R:40461;}s:30:"1232:user-identity-box-fb-page";a:2:{i:0;R:43674;i:1;R:40461;}s:42:"1232:user-identity-box-invalid-fb-id-error";a:2:{i:0;R:43674;i:1;R:40461;}s:31:"1232:user-identity-box-fb-prefs";a:2:{i:0;R:43674;i:1;R:40461;}s:42:"1232:user-identity-box-avatar-error-nofile";a:2:{i:0;R:43674;i:1;R:40461;}s:45:"1232:user-identity-box-avatar-error-cantwrite";a:2:{i:0;R:43674;i:1;R:40461;}s:40:"1232:user-identity-box-avatar-error-size";a:2:{i:0;R:43674;i:1;R:40461;}s:35:"1232:user-identity-box-avatar-error";a:2:{i:0;R:43674;i:1;R:40461;}s:45:"1232:userprofilepage-lightbox-about-me-cancel";a:2:{i:0;R:43674;i:1;R:40461;}s:43:"1232:userprofilepage-lightbox-about-me-save";a:2:{i:0;R:43674;i:1;R:40461;}s:35:"1232:user-identity-box-saving-error";a:2:{i:0;R:43674;i:1;R:40461;}s:44:"1232:user-identity-box-saving-internal-error";a:2:{i:0;R:43674;i:1;R:40461;}s:41:"1232:userprofilepage-closing-popup-header";a:2:{i:0;R:43674;i:1;R:40461;}s:39:"1232:userprofilepage-closing-popup-info";a:2:{i:0;R:43674;i:1;R:40461;}s:51:"1232:userprofilepage-closing-popup-discard-and-quit";a:2:{i:0;R:43674;i:1;R:40461;}s:48:"1232:userprofilepage-closing-popup-save-and-quit";a:2:{i:0;R:43674;i:1;R:40461;}s:41:"1232:userprofilepage-closing-popup-cancel";a:2:{i:0;R:43674;i:1;R:40461;}s:26:"1232:user-action-menu-edit";a:2:{i:0;R:43674;i:1;R:40461;}s:34:"1232:user-action-menu-edit-profile";a:2:{i:0;R:43674;i:1;R:40461;}s:35:"1232:user-action-menu-leave-message";a:2:{i:0;R:43674;i:1;R:40461;}s:33:"1232:user-action-menu-view-source";a:2:{i:0;R:43674;i:1;R:40461;}s:29:"1232:user-action-menu-protect";a:2:{i:0;R:43674;i:1;R:40461;}s:31:"1232:user-action-menu-unprotect";a:2:{i:0;R:43674;i:1;R:40461;}s:28:"1232:user-action-menu-rename";a:2:{i:0;R:43674;i:1;R:40461;}s:28:"1232:user-action-menu-delete";a:2:{i:0;R:43674;i:1;R:40461;}s:29:"1232:user-action-menu-history";a:2:{i:0;R:43674;i:1;R:40461;}s:21:"1232:usermasthead-log";a:2:{i:0;R:43674;i:1;R:40461;}s:29:"1232:usermasthead-log-message";a:2:{i:0;R:43674;i:1;R:40461;}s:25:"1232:usermasthead-log-alt";a:2:{i:0;R:43674;i:1;R:40461;}s:19:"1232:useravatar-log";a:2:{i:0;R:43674;i:1;R:40461;}s:28:"1232:blog-avatar-changed-log";a:2:{i:0;R:43674;i:1;R:40461;}s:28:"1232:blog-avatar-removed-log";a:2:{i:0;R:43674;i:1;R:40461;}s:20:"1232:blog-avatar-alt";a:2:{i:0;R:43674;i:1;R:40461;}s:38:"1232:user-identity-remove-confirmation";a:2:{i:0;R:43674;i:1;R:40461;}s:30:"1232:user-identity-remove-fail";a:2:{i:0;R:43674;i:1;R:40461;}s:19:"1232:userrenametool";a:2:{i:0;s:20:"wikia-userrenametool";i:1;R:40461;}s:15:"1232:renameuser";a:2:{i:0;R:43782;i:1;R:40461;}s:27:"1232:userrenametool-warning";a:2:{i:0;R:43782;i:1;R:40461;}s:24:"1232:userrenametool-desc";a:2:{i:0;R:43782;i:1;R:40461;}s:23:"1232:userrenametool-old";a:2:{i:0;R:43782;i:1;R:40461;}s:23:"1232:userrenametool-new";a:2:{i:0;R:43782;i:1;R:40461;}s:26:"1232:userrenametool-reason";a:2:{i:0;R:43782;i:1;R:40461;}s:24:"1232:userrenametool-move";a:2:{i:0;R:43782;i:1;R:40461;}s:27:"1232:userrenametool-reserve";a:2:{i:0;R:43782;i:1;R:40461;}s:34:"1232:userrenametool-notify-renamed";a:2:{i:0;R:43782;i:1;R:40461;}s:28:"1232:userrenametool-warnings";a:2:{i:0;R:43782;i:1;R:40461;}s:36:"1232:userrenametool-requested-rename";a:2:{i:0;R:43782;i:1;R:40461;}s:42:"1232:userrenametool-did-not-request-rename";a:2:{i:0;R:43782;i:1;R:40461;}s:38:"1232:userrenametool-previously-renamed";a:2:{i:0;R:43782;i:1;R:40461;}s:35:"1232:userrenametool-phalanx-matches";a:2:{i:0;R:43782;i:1;R:40461;}s:27:"1232:userrenametool-confirm";a:2:{i:0;R:43782;i:1;R:40461;}s:26:"1232:userrenametool-submit";a:2:{i:0;R:43782;i:1;R:40461;}s:37:"1232:userrenametool-errordoesnotexist";a:2:{i:0;R:43782;i:1;R:40461;}s:31:"1232:userrenametool-errorexists";a:2:{i:0;R:43782;i:1;R:40461;}s:32:"1232:userrenametool-errorinvalid";a:2:{i:0;R:43782;i:1;R:40461;}s:35:"1232:userrenametool-errorinvalidnew";a:2:{i:0;R:43782;i:1;R:40461;}s:32:"1232:userrenametool-errortoomany";a:2:{i:0;R:43782;i:1;R:40461;}s:35:"1232:userrenametool-errorprocessing";a:2:{i:0;R:43782;i:1;R:40461;}s:32:"1232:userrenametool-errorblocked";a:2:{i:0;R:43782;i:1;R:40461;}s:31:"1232:userrenametool-errorlocked";a:2:{i:0;R:43782;i:1;R:40461;}s:28:"1232:userrenametool-errorbot";a:2:{i:0;R:43782;i:1;R:40461;}s:33:"1232:userrenametool-error-request";a:2:{i:0;R:43782;i:1;R:40461;}s:35:"1232:userrenametool-error-same-user";a:2:{i:0;R:43782;i:1;R:40461;}s:41:"1232:userrenametool-error-extension-abort";a:2:{i:0;R:43782;i:1;R:40461;}s:47:"1232:userrenametool-error-cannot-rename-account";a:2:{i:0;R:43782;i:1;R:40461;}s:45:"1232:userrenametool-error-cannot-create-block";a:2:{i:0;R:43782;i:1;R:40461;}s:31:"1232:userrenametool-warn-repeat";a:2:{i:0;R:43782;i:1;R:40461;}s:38:"1232:userrenametool-warn-table-missing";a:2:{i:0;R:43782;i:1;R:40461;}s:32:"1232:userrenametool-info-started";a:2:{i:0;R:43782;i:1;R:40461;}s:33:"1232:userrenametool-info-finished";a:2:{i:0;R:43782;i:1;R:40461;}s:31:"1232:userrenametool-info-failed";a:2:{i:0;R:43782;i:1;R:40461;}s:38:"1232:userrenametool-info-wiki-finished";a:2:{i:0;R:43782;i:1;R:40461;}s:47:"1232:userrenametool-info-wiki-finished-problems";a:2:{i:0;R:43782;i:1;R:40461;}s:36:"1232:userrenametool-info-in-progress";a:2:{i:0;R:43782;i:1;R:40461;}s:27:"1232:userrenametool-success";a:2:{i:0;R:43782;i:1;R:40461;}s:33:"1232:userrenametool-confirm-intro";a:2:{i:0;R:43782;i:1;R:40461;}s:31:"1232:userrenametool-confirm-yes";a:2:{i:0;R:43782;i:1;R:40461;}s:30:"1232:userrenametool-confirm-no";a:2:{i:0;R:43782;i:1;R:40461;}s:31:"1232:userrenametool-page-exists";a:2:{i:0;R:43782;i:1;R:40461;}s:30:"1232:userrenametool-page-moved";a:2:{i:0;R:43782;i:1;R:40461;}s:32:"1232:userrenametool-page-unmoved";a:2:{i:0;R:43782;i:1;R:40461;}s:42:"1232:userrenametool-finished-email-subject";a:2:{i:0;R:43782;i:1;R:40461;}s:44:"1232:userrenametool-finished-email-body-text";a:2:{i:0;R:43782;i:1;R:40461;}s:44:"1232:userrenametool-finished-email-body-html";a:2:{i:0;R:43782;i:1;R:40461;}s:27:"1232:userrenametool-logpage";a:2:{i:0;R:43782;i:1;R:40461;}s:31:"1232:userrenametool-logpagetext";a:2:{i:0;R:43782;i:1;R:40461;}s:28:"1232:userrenametool-logentry";a:2:{i:0;R:43782;i:1;R:40461;}s:23:"1232:userrenametool-log";a:2:{i:0;R:43782;i:1;R:40461;}s:28:"1232:userrenametool-move-log";a:2:{i:0;R:43782;i:1;R:40461;}s:21:"1232:right-renameuser";a:2:{i:0;R:43782;i:1;R:40461;}s:15:"1232:vet-upload";a:2:{i:0;s:20:"wikia-videoembedtool";i:1;R:40461;}s:18:"1232:vet-notlogged";a:2:{i:0;R:43838;i:1;R:40461;}s:13:"1232:vet-find";a:2:{i:0;R:43838;i:1;R:40461;}s:17:"1232:vet-thiswiki";a:2:{i:0;R:43838;i:1;R:40461;}s:15:"1232:vet-flickr";a:2:{i:0;R:43838;i:1;R:40461;}s:19:"1232:vet-upload-btn";a:2:{i:0;R:43838;i:1;R:40461;}s:17:"1232:vet-find-btn";a:2:{i:0;R:43838;i:1;R:40461;}s:19:"1232:vet-flickr-inf";a:2:{i:0;R:43838;i:1;R:40461;}s:21:"1232:vet-conflict-inf";a:2:{i:0;R:43838;i:1;R:40461;}s:15:"1232:vet-rename";a:2:{i:0;R:43838;i:1;R:40461;}s:17:"1232:vet-existing";a:2:{i:0;R:43838;i:1;R:40461;}s:18:"1232:vet-overwrite";a:2:{i:0;R:43838;i:1;R:40461;}s:15:"1232:vet-insert";a:2:{i:0;R:43838;i:1;R:40461;}s:20:"1232:vet-details-inf";a:2:{i:0;R:43838;i:1;R:40461;}s:13:"1232:vet-name";a:2:{i:0;R:43838;i:1;R:40461;}s:16:"1232:vet-license";a:2:{i:0;R:43838;i:1;R:40461;}s:21:"1232:vet-details-inf2";a:2:{i:0;R:43838;i:1;R:40461;}s:13:"1232:vet-size";a:2:{i:0;R:43838;i:1;R:40461;}s:18:"1232:vet-thumbnail";a:2:{i:0;R:43838;i:1;R:40461;}s:17:"1232:vet-fullsize";a:2:{i:0;R:43838;i:1;R:40461;}s:14:"1232:vet-width";a:2:{i:0;R:43838;i:1;R:40461;}s:15:"1232:vet-layout";a:2:{i:0;R:43838;i:1;R:40461;}s:16:"1232:vet-caption";a:2:{i:0;R:43838;i:1;R:40461;}s:17:"1232:vet-optional";a:2:{i:0;R:43838;i:1;R:40461;}s:16:"1232:vet-insert2";a:2:{i:0;R:43838;i:1;R:40461;}s:15:"1232:vet-update";a:2:{i:0;R:43838;i:1;R:40461;}s:27:"1232:vet-video-replace-link";a:2:{i:0;R:43838;i:1;R:40461;}s:13:"1232:vet-prev";a:2:{i:0;R:43838;i:1;R:40461;}s:13:"1232:vet-next";a:2:{i:0;R:43838;i:1;R:40461;}s:17:"1232:vet-metacafe";a:2:{i:0;R:43838;i:1;R:40461;}s:16:"1232:vet-insert3";a:2:{i:0;R:43838;i:1;R:40461;}s:19:"1232:vet-recent-inf";a:2:{i:0;R:43838;i:1;R:40461;}s:18:"1232:vet-thiswiki2";a:2:{i:0;R:43838;i:1;R:40461;}s:16:"1232:vet-success";a:2:{i:0;R:43838;i:1;R:40461;}s:15:"1232:vet-return";a:2:{i:0;R:43838;i:1;R:40461;}s:13:"1232:vet-back";a:2:{i:0;R:43838;i:1;R:40461;}s:14:"1232:vet-close";a:2:{i:0;R:43838;i:1;R:40461;}s:14:"1232:vet-warn1";a:2:{i:0;R:43838;i:1;R:40461;}s:14:"1232:vet-warn2";a:2:{i:0;R:43838;i:1;R:40461;}s:14:"1232:vet-warn3";a:2:{i:0;R:43838;i:1;R:40461;}s:18:"1232:vet-imagelink";a:2:{i:0;R:43838;i:1;R:40461;}s:20:"1232:vet-imagebutton";a:2:{i:0;R:43838;i:1;R:40461;}s:19:"1232:vet-license-cc";a:2:{i:0;R:43838;i:1;R:40461;}s:23:"1232:vet-name-incorrect";a:2:{i:0;R:43838;i:1;R:40461;}s:20:"1232:vet-description";a:2:{i:0;R:43838;i:1;R:40461;}s:19:"1232:vet-uploadtext";a:2:{i:0;R:43838;i:1;R:40461;}s:21:"1232:vet-show-message";a:2:{i:0;R:43838;i:1;R:40461;}s:21:"1232:vet-hide-message";a:2:{i:0;R:43838;i:1;R:40461;}s:25:"1232:vet-hide-license-msg";a:2:{i:0;R:43838;i:1;R:40461;}s:25:"1232:vet-show-license-msg";a:2:{i:0;R:43838;i:1;R:40461;}s:18:"1232:vet-max-thumb";a:2:{i:0;R:43838;i:1;R:40461;}s:19:"1232:vet-notallowed";a:2:{i:0;R:43838;i:1;R:40461;}s:14:"1232:vet-title";a:2:{i:0;R:43838;i:1;R:40461;}s:18:"1232:vet-supported";a:2:{i:0;R:43838;i:1;R:40461;}s:16:"1232:vet-preview";a:2:{i:0;R:43838;i:1;R:40461;}s:16:"1232:vet-bad-url";a:2:{i:0;R:43838;i:1;R:40461;}s:21:"1232:vet-non-existing";a:2:{i:0;R:43838;i:1;R:40461;}s:18:"1232:vet-main-info";a:2:{i:0;R:43838;i:1;R:40461;}s:21:"1232:vet-page-success";a:2:{i:0;R:43838;i:1;R:40461;}s:19:"1232:vet-add-button";a:2:{i:0;R:43838;i:1;R:40461;}s:27:"1232:vet-added-from-gallery";a:2:{i:0;R:43838;i:1;R:40461;}s:16:"1232:vet-see-all";a:2:{i:0;R:43838;i:1;R:40461;}s:19:"1232:vet-bad-search";a:2:{i:0;R:43838;i:1;R:40461;}s:19:"1232:vet-no-preview";a:2:{i:0;R:43838;i:1;R:40461;}s:23:"1232:vet-single-success";a:2:{i:0;R:43838;i:1;R:40461;}s:31:"1232:vet-gallery-create-success";a:2:{i:0;R:43838;i:1;R:40461;}s:28:"1232:vet-gallery-add-success";a:2:{i:0;R:43838;i:1;R:40461;}s:13:"1232:vet-left";a:2:{i:0;R:43838;i:1;R:40461;}s:14:"1232:vet-right";a:2:{i:0;R:43838;i:1;R:40461;}s:16:"1232:vet-gallery";a:2:{i:0;R:43838;i:1;R:40461;}s:18:"1232:vet-protected";a:2:{i:0;R:43838;i:1;R:40461;}s:18:"1232:wall-no-title";a:2:{i:0;s:10:"wikia-wall";i:1;R:40461;}s:26:"1232:wall-message-loadmore";a:2:{i:0;R:43910;i:1;R:40461;}s:22:"1232:wall-message-wall";a:2:{i:0;R:43910;i:1;R:40461;}s:30:"1232:wall-message-wall-shorten";a:2:{i:0;R:43910;i:1;R:40461;}s:26:"1232:wall-message-unfollow";a:2:{i:0;R:43910;i:1;R:40461;}s:28:"1232:wall-message-undoremove";a:2:{i:0;R:43910;i:1;R:40461;}s:24:"1232:wall-message-edited";a:2:{i:0;R:43910;i:1;R:40461;}s:24:"1232:wall-message-mywall";a:2:{i:0;R:43910;i:1;R:40461;}s:25:"1232:wall-toolbar-history";a:2:{i:0;R:43910;i:1;R:40461;}s:24:"1232:wall-message-notify";a:2:{i:0;R:43910;i:1;R:40461;}s:24:"1232:wall-message-remove";a:2:{i:0;R:43910;i:1;R:40461;}s:28:"1232:wall-message-rev-delete";a:2:{i:0;R:43910;i:1;R:40461;}s:27:"1232:wall-message-elseswall";a:2:{i:0;R:43910;i:1;R:40461;}s:31:"1232:wall-message-no-permission";a:2:{i:0;R:43910;i:1;R:40461;}s:24:"1232:wall-thread-removed";a:2:{i:0;R:43910;i:1;R:40461;}s:24:"1232:wall-thread-deleted";a:2:{i:0;R:43910;i:1;R:40461;}s:23:"1232:wall-default-title";a:2:{i:0;R:43910;i:1;R:40461;}s:26:"1232:wall-no-title-warning";a:2:{i:0;R:43910;i:1;R:40461;}s:14:"1232:wall-desc";a:2:{i:0;R:43910;i:1;R:40461;}s:23:"1232:wall-disabled-desc";a:2:{i:0;R:43910;i:1;R:40461;}s:27:"1232:wall-placeholder-topic";a:2:{i:0;R:43910;i:1;R:40461;}s:29:"1232:wall-placeholder-message";a:2:{i:0;R:43910;i:1;R:40461;}s:34:"1232:wall-placeholder-message-anon";a:2:{i:0;R:43910;i:1;R:40461;}s:27:"1232:wall-placeholder-reply";a:2:{i:0;R:43910;i:1;R:40461;}s:35:"1232:wall-button-to-preview-comment";a:2:{i:0;R:43910;i:1;R:40461;}s:34:"1232:wall-button-to-cancel-preview";a:2:{i:0;R:43910;i:1;R:40461;}s:34:"1232:wall-button-to-submit-comment";a:2:{i:0;R:43910;i:1;R:40461;}s:32:"1232:wall-button-to-submit-reply";a:2:{i:0;R:43910;i:1;R:40461;}s:43:"1232:wall-button-to-submit-comment-no-topic";a:2:{i:0;R:43910;i:1;R:40461;}s:29:"1232:wall-button-save-changes";a:2:{i:0;R:43910;i:1;R:40461;}s:31:"1232:wall-button-cancel-changes";a:2:{i:0;R:43910;i:1;R:40461;}s:28:"1232:wall-button-done-source";a:2:{i:0;R:43910;i:1;R:40461;}s:22:"1232:wall-message-edit";a:2:{i:0;R:43910;i:1;R:40461;}s:22:"1232:wall-message-more";a:2:{i:0;R:43910;i:1;R:40461;}s:24:"1232:wall-message-delete";a:2:{i:0;R:43910;i:1;R:40461;}s:40:"1232:wall-message-removed-thread-because";a:2:{i:0;R:43910;i:1;R:40461;}s:40:"1232:wall-message-deleted-thread-because";a:2:{i:0;R:43910;i:1;R:40461;}s:32:"1232:wall-message-restore-thread";a:2:{i:0;R:43910;i:1;R:40461;}s:39:"1232:wall-message-removed-reply-because";a:2:{i:0;R:43910;i:1;R:40461;}s:39:"1232:wall-message-deleted-reply-because";a:2:{i:0;R:43910;i:1;R:40461;}s:31:"1232:wall-message-restore-reply";a:2:{i:0;R:43910;i:1;R:40461;}s:23:"1232:wall-delete-reason";a:2:{i:0;R:43910;i:1;R:40461;}s:39:"1232:wall-user-talk-page-archive-anchor";a:2:{i:0;R:43910;i:1;R:40461;}s:38:"1232:wall-user-talk-archive-page-title";a:2:{i:0;R:43910;i:1;R:40461;}s:35:"1232:wall-action-all-confirm-cancel";a:2:{i:0;R:43910;i:1;R:40461;}s:35:"1232:wall-action-all-confirm-notify";a:2:{i:0;R:43910;i:1;R:40461;}s:35:"1232:wall-action-remove-reply-title";a:2:{i:0;R:43910;i:1;R:40461;}s:36:"1232:wall-action-remove-thread-title";a:2:{i:0;R:43910;i:1;R:40461;}s:33:"1232:wall-confirm-monobook-remove";a:2:{i:0;R:43910;i:1;R:40461;}s:32:"1232:wall-confirm-monobook-admin";a:2:{i:0;R:43910;i:1;R:40461;}s:34:"1232:wall-confirm-monobook-restore";a:2:{i:0;R:43910;i:1;R:40461;}s:28:"1232:wall-delete-error-title";a:2:{i:0;R:43910;i:1;R:40461;}s:30:"1232:wall-delete-error-content";a:2:{i:0;R:43910;i:1;R:40461;}s:41:"1232:wall-confirm-monobook-lack-of-reason";a:2:{i:0;R:43910;i:1;R:40461;}s:31:"1232:wall-action-remove-confirm";a:2:{i:0;R:43910;i:1;R:40461;}s:43:"1232:wall-action-remove-thread-confirm-info";a:2:{i:0;R:43910;i:1;R:40461;}s:42:"1232:wall-action-remove-reply-confirm-info";a:2:{i:0;R:43910;i:1;R:40461;}s:34:"1232:wall-action-remove-confirm-ok";a:2:{i:0;R:43910;i:1;R:40461;}s:35:"1232:wall-action-admin-thread-title";a:2:{i:0;R:43910;i:1;R:40461;}s:34:"1232:wall-action-admin-reply-title";a:2:{i:0;R:43910;i:1;R:40461;}s:30:"1232:wall-action-admin-confirm";a:2:{i:0;R:43910;i:1;R:40461;}s:42:"1232:wall-action-admin-thread-confirm-info";a:2:{i:0;R:43910;i:1;R:40461;}s:41:"1232:wall-action-admin-reply-confirm-info";a:2:{i:0;R:43910;i:1;R:40461;}s:33:"1232:wall-action-admin-confirm-ok";a:2:{i:0;R:43910;i:1;R:40461;}s:37:"1232:wall-action-restore-thread-title";a:2:{i:0;R:43910;i:1;R:40461;}s:36:"1232:wall-action-restore-reply-title";a:2:{i:0;R:43910;i:1;R:40461;}s:32:"1232:wall-action-restore-confirm";a:2:{i:0;R:43910;i:1;R:40461;}s:35:"1232:wall-action-restore-confirm-ok";a:2:{i:0;R:43910;i:1;R:40461;}s:33:"1232:wall-action-rev-thread-title";a:2:{i:0;R:43910;i:1;R:40461;}s:32:"1232:wall-action-rev-reply-title";a:2:{i:0;R:43910;i:1;R:40461;}s:34:"1232:wall-action-rev-reply-confirm";a:2:{i:0;R:43910;i:1;R:40461;}s:35:"1232:wall-action-rev-thread-confirm";a:2:{i:0;R:43910;i:1;R:40461;}s:31:"1232:wall-action-rev-confirm-ok";a:2:{i:0;R:43910;i:1;R:40461;}s:23:"1232:wall-notifications";a:2:{i:0;R:43910;i:1;R:40461;}s:27:"1232:wall-notifications-all";a:2:{i:0;R:43910;i:1;R:40461;}s:34:"1232:wall-notifications-markasread";a:2:{i:0;R:43910;i:1;R:40461;}s:44:"1232:wall-notifications-markasread-all-wikis";a:2:{i:0;R:43910;i:1;R:40461;}s:44:"1232:wall-notifications-markasread-this-wiki";a:2:{i:0;R:43910;i:1;R:40461;}s:29:"1232:wall-notifications-empty";a:2:{i:0;R:43910;i:1;R:40461;}s:31:"1232:wall-notifications-loading";a:2:{i:0;R:43910;i:1;R:40461;}s:32:"1232:wall-notifications-reminder";a:2:{i:0;R:43910;i:1;R:40461;}s:37:"1232:wall-notifications-wall-disabled";a:2:{i:0;R:43910;i:1;R:40461;}s:33:"1232:wn-user1-reply-you-your-wall";a:2:{i:0;R:43910;i:1;R:40461;}s:33:"1232:wn-user2-reply-you-your-wall";a:2:{i:0;R:43910;i:1;R:40461;}s:33:"1232:wn-user3-reply-you-your-wall";a:2:{i:0;R:43910;i:1;R:40461;}s:34:"1232:wn-user1-reply-self-your-wall";a:2:{i:0;R:43910;i:1;R:40461;}s:34:"1232:wn-user2-reply-self-your-wall";a:2:{i:0;R:43910;i:1;R:40461;}s:34:"1232:wn-user3-reply-self-your-wall";a:2:{i:0;R:43910;i:1;R:40461;}s:35:"1232:wn-user1-reply-other-your-wall";a:2:{i:0;R:43910;i:1;R:40461;}s:35:"1232:wn-user2-reply-other-your-wall";a:2:{i:0;R:43910;i:1;R:40461;}s:35:"1232:wn-user3-reply-other-your-wall";a:2:{i:0;R:43910;i:1;R:40461;}s:34:"1232:wn-user1-reply-you-other-wall";a:2:{i:0;R:43910;i:1;R:40461;}s:34:"1232:wn-user2-reply-you-other-wall";a:2:{i:0;R:43910;i:1;R:40461;}s:34:"1232:wn-user3-reply-you-other-wall";a:2:{i:0;R:43910;i:1;R:40461;}s:35:"1232:wn-user1-reply-self-other-wall";a:2:{i:0;R:43910;i:1;R:40461;}s:35:"1232:wn-user2-reply-self-other-wall";a:2:{i:0;R:43910;i:1;R:40461;}s:35:"1232:wn-user3-reply-self-other-wall";a:2:{i:0;R:43910;i:1;R:40461;}s:36:"1232:wn-user1-reply-other-other-wall";a:2:{i:0;R:43910;i:1;R:40461;}s:36:"1232:wn-user2-reply-other-other-wall";a:2:{i:0;R:43910;i:1;R:40461;}s:36:"1232:wn-user3-reply-other-other-wall";a:2:{i:0;R:43910;i:1;R:40461;}s:30:"1232:wn-user1-reply-you-a-wall";a:2:{i:0;R:43910;i:1;R:40461;}s:30:"1232:wn-user2-reply-you-a-wall";a:2:{i:0;R:43910;i:1;R:40461;}s:30:"1232:wn-user3-reply-you-a-wall";a:2:{i:0;R:43910;i:1;R:40461;}s:31:"1232:wn-user1-reply-self-a-wall";a:2:{i:0;R:43910;i:1;R:40461;}s:31:"1232:wn-user2-reply-self-a-wall";a:2:{i:0;R:43910;i:1;R:40461;}s:31:"1232:wn-user3-reply-self-a-wall";a:2:{i:0;R:43910;i:1;R:40461;}s:32:"1232:wn-user1-reply-other-a-wall";a:2:{i:0;R:43910;i:1;R:40461;}s:32:"1232:wn-user2-reply-other-a-wall";a:2:{i:0;R:43910;i:1;R:40461;}s:32:"1232:wn-user3-reply-other-a-wall";a:2:{i:0;R:43910;i:1;R:40461;}s:23:"1232:wn-newmsg-onmywall";a:2:{i:0;R:43910;i:1;R:40461;}s:14:"1232:wn-newmsg";a:2:{i:0;R:43910;i:1;R:40461;}s:31:"1232:wn-newmsg-on-followed-wall";a:2:{i:0;R:43910;i:1;R:40461;}s:28:"1232:wn-admin-thread-deleted";a:2:{i:0;R:43910;i:1;R:40461;}s:27:"1232:wn-admin-reply-deleted";a:2:{i:0;R:43910;i:1;R:40461;}s:28:"1232:wn-owner-thread-deleted";a:2:{i:0;R:43910;i:1;R:40461;}s:27:"1232:wn-owner-reply-deleted";a:2:{i:0;R:43910;i:1;R:40461;}s:32:"1232:wall-sorting-newest-threads";a:2:{i:0;R:43910;i:1;R:40461;}s:32:"1232:wall-sorting-oldest-threads";a:2:{i:0;R:43910;i:1;R:40461;}s:32:"1232:wall-sorting-newest-replies";a:2:{i:0;R:43910;i:1;R:40461;}s:29:"1232:wall-sorting-most-active";a:2:{i:0;R:43910;i:1;R:40461;}s:26:"1232:wall-sorting-archived";a:2:{i:0;R:43910;i:1;R:40461;}s:25:"1232:tog-enotifwallthread";a:2:{i:0;R:43910;i:1;R:40461;}s:21:"1232:tog-enotifmywall";a:2:{i:0;R:43910;i:1;R:40461;}s:31:"1232:wall-deleted-msg-pagetitle";a:2:{i:0;R:43910;i:1;R:40461;}s:26:"1232:wall-deleted-msg-text";a:2:{i:0;R:43910;i:1;R:40461;}s:31:"1232:wall-deleted-msg-return-to";a:2:{i:0;R:43910;i:1;R:40461;}s:26:"1232:wall-deleted-msg-view";a:2:{i:0;R:43910;i:1;R:40461;}s:48:"1232:wall-recentchanges-article-link-new-message";a:2:{i:0;R:43910;i:1;R:40461;}s:43:"1232:wall-recentchanges-comment-new-message";a:2:{i:0;R:43910;i:1;R:40461;}s:33:"1232:wall-recentchanges-new-reply";a:2:{i:0;R:43910;i:1;R:40461;}s:28:"1232:wall-recentchanges-edit";a:2:{i:0;R:43910;i:1;R:40461;}s:43:"1232:wall-recentchanges-wall-removed-thread";a:2:{i:0;R:43910;i:1;R:40461;}s:42:"1232:wall-recentchanges-wall-removed-reply";a:2:{i:0;R:43910;i:1;R:40461;}s:44:"1232:wall-recentchanges-wall-restored-thread";a:2:{i:0;R:43910;i:1;R:40461;}s:43:"1232:wall-recentchanges-wall-restored-reply";a:2:{i:0;R:43910;i:1;R:40461;}s:43:"1232:wall-recentchanges-wall-deleted-thread";a:2:{i:0;R:43910;i:1;R:40461;}s:42:"1232:wall-recentchanges-wall-deleted-reply";a:2:{i:0;R:43910;i:1;R:40461;}s:43:"1232:wall-recentchanges-deleted-reply-title";a:2:{i:0;R:43910;i:1;R:40461;}s:55:"1232:wall-recentchanges-namespace-selector-message-wall";a:2:{i:0;R:43910;i:1;R:40461;}s:34:"1232:wall-recentchanges-wall-group";a:2:{i:0;R:43910;i:1;R:40461;}s:41:"1232:wall-recentchanges-wall-history-link";a:2:{i:0;R:43910;i:1;R:40461;}s:43:"1232:wall-recentchanges-thread-history-link";a:2:{i:0;R:43910;i:1;R:40461;}s:33:"1232:wall-contributions-wall-line";a:2:{i:0;R:43910;i:1;R:40461;}s:33:"1232:wall-whatlinkshere-wall-line";a:2:{i:0;R:43910;i:1;R:40461;}s:27:"1232:wall-message-not-found";a:2:{i:0;R:43910;i:1;R:40461;}s:28:"1232:wall-message-staff-text";a:2:{i:0;R:43910;i:1;R:40461;}s:26:"1232:wall-ipballowusertalk";a:2:{i:0;R:43910;i:1;R:40461;}s:22:"1232:wall-ipbwatchuser";a:2:{i:0;R:43910;i:1;R:40461;}s:26:"1232:wall-wiki-activity-on";a:2:{i:0;R:43910;i:1;R:40461;}s:34:"1232:wall-wiki-activity-wall-owner";a:2:{i:0;R:43910;i:1;R:40461;}s:29:"1232:wall-removed-thread-undo";a:2:{i:0;R:43910;i:1;R:40461;}s:28:"1232:wall-removed-reply-undo";a:2:{i:0;R:43910;i:1;R:40461;}s:23:"1232:wall-removed-reply";a:2:{i:0;R:43910;i:1;R:40461;}s:29:"1232:wall-deleted-thread-undo";a:2:{i:0;R:43910;i:1;R:40461;}s:28:"1232:wall-deleted-reply-undo";a:2:{i:0;R:43910;i:1;R:40461;}s:23:"1232:wall-deleted-reply";a:2:{i:0;R:43910;i:1;R:40461;}s:17:"1232:wall-history";a:2:{i:0;R:43910;i:1;R:40461;}s:31:"1232:wall-history-username-full";a:2:{i:0;R:43910;i:1;R:40461;}s:32:"1232:wall-history-username-short";a:2:{i:0;R:43910;i:1;R:40461;}s:23:"1232:wall-history-title";a:2:{i:0;R:43910;i:1;R:40461;}s:41:"1232:wall-history-who-involved-wall-title";a:2:{i:0;R:43910;i:1;R:40461;}s:43:"1232:wall-history-who-involved-thread-title";a:2:{i:0;R:43910;i:1;R:40461;}s:32:"1232:wall-history-thread-created";a:2:{i:0;R:43910;i:1;R:40461;}s:32:"1232:wall-history-thread-removed";a:2:{i:0;R:43910;i:1;R:40461;}s:33:"1232:wall-history-thread-restored";a:2:{i:0;R:43910;i:1;R:40461;}s:38:"1232:wall-history-thread-admin-deleted";a:2:{i:0;R:43910;i:1;R:40461;}s:38:"1232:wall-history-sorting-newest-first";a:2:{i:0;R:43910;i:1;R:40461;}s:38:"1232:wall-history-sorting-oldest-first";a:2:{i:0;R:43910;i:1;R:40461;}s:31:"1232:wall-history-summary-label";a:2:{i:0;R:43910;i:1;R:40461;}s:27:"1232:wall-history-rail-wall";a:2:{i:0;R:43910;i:1;R:40461;}s:31:"1232:wall-history-rail-contribs";a:2:{i:0;R:43910;i:1;R:40461;}s:28:"1232:wall-history-rail-block";a:2:{i:0;R:43910;i:1;R:40461;}s:29:"1232:wall-history-action-view";a:2:{i:0;R:43910;i:1;R:40461;}s:32:"1232:wall-history-action-restore";a:2:{i:0;R:43910;i:1;R:40461;}s:39:"1232:wall-history-action-thread-history";a:2:{i:0;R:43910;i:1;R:40461;}s:30:"1232:wall-thread-history-title";a:2:{i:0;R:43910;i:1;R:40461;}s:39:"1232:wall-thread-history-thread-created";a:2:{i:0;R:43910;i:1;R:40461;}s:38:"1232:wall-thread-history-reply-created";a:2:{i:0;R:43910;i:1;R:40461;}s:39:"1232:wall-thread-history-thread-removed";a:2:{i:0;R:43910;i:1;R:40461;}s:38:"1232:wall-thread-history-reply-removed";a:2:{i:0;R:43910;i:1;R:40461;}s:40:"1232:wall-thread-history-thread-restored";a:2:{i:0;R:43910;i:1;R:40461;}s:39:"1232:wall-thread-history-reply-restored";a:2:{i:0;R:43910;i:1;R:40461;}s:39:"1232:wall-thread-history-thread-deleted";a:2:{i:0;R:43910;i:1;R:40461;}s:38:"1232:wall-thread-history-thread-edited";a:2:{i:0;R:43910;i:1;R:40461;}s:37:"1232:wall-thread-history-reply-edited";a:2:{i:0;R:43910;i:1;R:40461;}s:38:"1232:wall-history-action-restore-reply";a:2:{i:0;R:43910;i:1;R:40461;}s:39:"1232:wall-history-action-restore-thread";a:2:{i:0;R:43910;i:1;R:40461;}s:33:"1232:wall-message-not-found-in-db";a:2:{i:0;R:43910;i:1;R:40461;}s:34:"1232:mail-notification-new-someone";a:2:{i:0;R:43910;i:1;R:40461;}s:31:"1232:mail-notification-new-your";a:2:{i:0;R:43910;i:1;R:40461;}s:33:"1232:mail-notification-reply-your";a:2:{i:0;R:43910;i:1;R:40461;}s:32:"1232:mail-notification-reply-his";a:2:{i:0;R:43910;i:1;R:40461;}s:36:"1232:mail-notification-reply-someone";a:2:{i:0;R:43910;i:1;R:40461;}s:36:"1232:mail-notification-html-greeting";a:2:{i:0;R:43910;i:1;R:40461;}s:34:"1232:mail-notification-html-button";a:2:{i:0;R:43910;i:1;R:40461;}s:30:"1232:mail-notification-subject";a:2:{i:0;R:43910;i:1;R:40461;}s:40:"1232:mail-notification-html-footer-line3";a:2:{i:0;R:43910;i:1;R:40461;}s:40:"1232:mail-notification-html-footer-line1";a:2:{i:0;R:43910;i:1;R:40461;}s:40:"1232:mail-notification-html-footer-line2";a:2:{i:0;R:43910;i:1;R:40461;}s:27:"1232:mail-notification-body";a:2:{i:0;R:43910;i:1;R:40461;}s:32:"1232:mail-notification-body-html";a:2:{i:0;R:43910;i:1;R:40461;}s:24:"1232:prefs-email-wall-v2";a:2:{i:0;R:43910;i:1;R:40461;}s:28:"1232:tog-enotifwallthread-v2";a:2:{i:0;R:43910;i:1;R:40461;}s:27:"1232:tog-enotifmywall-every";a:2:{i:0;R:43910;i:1;R:40461;}s:34:"1232:tog-enotifmywall-sincevisited";a:2:{i:0;R:43910;i:1;R:40461;}s:30:"1232:tog-enotifmywall-reminder";a:2:{i:0;R:43910;i:1;R:40461;}s:29:"1232:tog-enotifmywall-noemail";a:2:{i:0;R:43910;i:1;R:40461;}s:29:"1232:wallshowsource-toggle-v2";a:2:{i:0;R:43910;i:1;R:40461;}s:26:"1232:wallshowsource-toggle";a:2:{i:0;R:43910;i:1;R:40461;}s:22:"1232:walldelete-toggle";a:2:{i:0;R:43910;i:1;R:40461;}s:29:"1232:wikia-watchsubpages-desc";a:2:{i:0;s:19:"wikia-watchsubpages";i:1;R:40461;}s:26:"1232:tog-watchlistsubpages";a:2:{i:0;R:44121;i:1;R:40461;}s:21:"1232:whereisextension";a:2:{i:0;s:22:"wikia-whereisextension";i:1;R:40461;}s:28:"1232:whereisextension-submit";a:2:{i:0;R:44124;i:1;R:40461;}s:26:"1232:whereisextension-list";a:2:{i:0;R:44124;i:1;R:40461;}s:27:"1232:whereisextension-isset";a:2:{i:0;R:44124;i:1;R:40461;}s:28:"1232:whereisextension-filter";a:2:{i:0;R:44124;i:1;R:40461;}s:32:"1232:whereisextension-all-groups";a:2:{i:0;R:44124;i:1;R:40461;}s:35:"1232:whereisextension-name-contains";a:2:{i:0;R:44124;i:1;R:40461;}s:39:"1232:whereisextension-search-like-value";a:2:{i:0;R:44124;i:1;R:40461;}s:33:"1232:whereisextension-search-type";a:2:{i:0;R:44124;i:1;R:40461;}s:38:"1232:whereisextension-search-type-bool";a:2:{i:0;R:44124;i:1;R:40461;}s:38:"1232:whereisextension-search-type-full";a:2:{i:0;R:44124;i:1;R:40461;}s:21:"1232:ircgate-username";a:2:{i:0;s:21:"wikia-wikiaircgateway";i:1;R:40461;}s:20:"1232:ircgate-channel";a:2:{i:0;R:44136;i:1;R:40461;}s:24:"1232:ircgate-channellist";a:2:{i:0;R:44136;i:1;R:40461;}s:21:"1232:wmu-upload-image";a:2:{i:0;s:21:"wikia-wikiaminiupload";i:1;R:40461;}s:14:"1232:wmu-title";a:2:{i:0;R:44140;i:1;R:40461;}s:15:"1232:wmu-upload";a:2:{i:0;R:44140;i:1;R:40461;}s:18:"1232:wmu-notlogged";a:2:{i:0;R:44140;i:1;R:40461;}s:13:"1232:wmu-find";a:2:{i:0;R:44140;i:1;R:40461;}s:17:"1232:wmu-thiswiki";a:2:{i:0;R:44140;i:1;R:40461;}s:15:"1232:wmu-flickr";a:2:{i:0;R:44140;i:1;R:40461;}s:19:"1232:wmu-upload-btn";a:2:{i:0;R:44140;i:1;R:40461;}s:17:"1232:wmu-find-btn";a:2:{i:0;R:44140;i:1;R:40461;}s:19:"1232:wmu-flickr-inf";a:2:{i:0;R:44140;i:1;R:40461;}s:21:"1232:wmu-conflict-inf";a:2:{i:0;R:44140;i:1;R:40461;}s:15:"1232:wmu-rename";a:2:{i:0;R:44140;i:1;R:40461;}s:17:"1232:wmu-existing";a:2:{i:0;R:44140;i:1;R:40461;}s:18:"1232:wmu-overwrite";a:2:{i:0;R:44140;i:1;R:40461;}s:15:"1232:wmu-insert";a:2:{i:0;R:44140;i:1;R:40461;}s:20:"1232:wmu-details-inf";a:2:{i:0;R:44140;i:1;R:40461;}s:13:"1232:wmu-name";a:2:{i:0;R:44140;i:1;R:40461;}s:16:"1232:wmu-license";a:2:{i:0;R:44140;i:1;R:40461;}s:18:"1232:wmu-licensing";a:2:{i:0;R:44140;i:1;R:40461;}s:21:"1232:wmu-details-inf2";a:2:{i:0;R:44140;i:1;R:40461;}s:13:"1232:wmu-size";a:2:{i:0;R:44140;i:1;R:40461;}s:18:"1232:wmu-thumbnail";a:2:{i:0;R:44140;i:1;R:40461;}s:17:"1232:wmu-fullsize";a:2:{i:0;R:44140;i:1;R:40461;}s:14:"1232:wmu-width";a:2:{i:0;R:44140;i:1;R:40461;}s:15:"1232:wmu-layout";a:2:{i:0;R:44140;i:1;R:40461;}s:16:"1232:wmu-caption";a:2:{i:0;R:44140;i:1;R:40461;}s:13:"1232:wmu-link";a:2:{i:0;R:44140;i:1;R:40461;}s:17:"1232:wmu-optional";a:2:{i:0;R:44140;i:1;R:40461;}s:16:"1232:wmu-insert2";a:2:{i:0;R:44140;i:1;R:40461;}s:13:"1232:wmu-prev";a:2:{i:0;R:44140;i:1;R:40461;}s:13:"1232:wmu-next";a:2:{i:0;R:44140;i:1;R:40461;}s:16:"1232:wmu-flickr2";a:2:{i:0;R:44140;i:1;R:40461;}s:16:"1232:wmu-insert3";a:2:{i:0;R:44140;i:1;R:40461;}s:19:"1232:wmu-recent-inf";a:2:{i:0;R:44140;i:1;R:40461;}s:18:"1232:wmu-thiswiki2";a:2:{i:0;R:44140;i:1;R:40461;}s:16:"1232:wmu-success";a:2:{i:0;R:44140;i:1;R:40461;}s:28:"1232:wmu-success-placeholder";a:2:{i:0;R:44140;i:1;R:40461;}s:15:"1232:wmu-return";a:2:{i:0;R:44140;i:1;R:40461;}s:13:"1232:wmu-back";a:2:{i:0;R:44140;i:1;R:40461;}s:14:"1232:wmu-close";a:2:{i:0;R:44140;i:1;R:40461;}s:14:"1232:wmu-warn1";a:2:{i:0;R:44140;i:1;R:40461;}s:14:"1232:wmu-warn2";a:2:{i:0;R:44140;i:1;R:40461;}s:14:"1232:wmu-warn3";a:2:{i:0;R:44140;i:1;R:40461;}s:18:"1232:wmu-imagelink";a:2:{i:0;R:44140;i:1;R:40461;}s:20:"1232:wmu-imagebutton";a:2:{i:0;R:44140;i:1;R:40461;}s:19:"1232:wmu-license-cc";a:2:{i:0;R:44140;i:1;R:40461;}s:22:"1232:wmu-bad-extension";a:2:{i:0;R:44140;i:1;R:40461;}s:25:"1232:wmu-filetype-missing";a:2:{i:0;R:44140;i:1;R:40461;}s:27:"1232:wmu-filetype-incorrect";a:2:{i:0;R:44140;i:1;R:40461;}s:25:"1232:wmu-hide-license-msg";a:2:{i:0;R:44140;i:1;R:40461;}s:25:"1232:wmu-show-license-msg";a:2:{i:0;R:44140;i:1;R:40461;}s:18:"1232:wmu-max-thumb";a:2:{i:0;R:44140;i:1;R:40461;}s:19:"1232:wmu-notallowed";a:2:{i:0;R:44140;i:1;R:40461;}s:17:"1232:wmu-readonly";a:2:{i:0;R:44140;i:1;R:40461;}s:20:"1232:wmu-placeholder";a:2:{i:0;R:44140;i:1;R:40461;}s:16:"1232:wmu-gallery";a:2:{i:0;R:44140;i:1;R:40461;}s:16:"1232:wmu-columns";a:2:{i:0;R:44140;i:1;R:40461;}s:15:"1232:wmu-column";a:2:{i:0;R:44140;i:1;R:40461;}s:23:"1232:wmu-added-from-plc";a:2:{i:0;R:44140;i:1;R:40461;}s:23:"1232:wmu-uploaddisabled";a:2:{i:0;R:44140;i:1;R:40461;}s:24:"1232:wmu-gallery-success";a:2:{i:0;R:44140;i:1;R:40461;}s:21:"1232:wmu-gallery-btn1";a:2:{i:0;R:44140;i:1;R:40461;}s:21:"1232:wmu-gallery-btn2";a:2:{i:0;R:44140;i:1;R:40461;}s:19:"1232:wmu-no-preview";a:2:{i:0;R:44140;i:1;R:40461;}s:19:"1232:wmu-no-protect";a:2:{i:0;R:44140;i:1;R:40461;}s:18:"1232:wmu-no-rights";a:2:{i:0;R:44140;i:1;R:40461;}s:21:"1232:wmu-more-options";a:2:{i:0;R:44140;i:1;R:40461;}s:22:"1232:wmu-fewer-options";a:2:{i:0;R:44140;i:1;R:40461;}s:32:"1232:wmu-replace-default-caption";a:2:{i:0;R:44140;i:1;R:40461;}s:30:"1232:wmu-appearance-in-article";a:2:{i:0;R:44140;i:1;R:40461;}s:18:"1232:wmu-alignment";a:2:{i:0;R:44140;i:1;R:40461;}s:23:"1232:wmu-file-protected";a:2:{i:0;R:44140;i:1;R:40461;}s:19:"1232:wmu-file-error";a:2:{i:0;R:44140;i:1;R:40461;}s:23:"1232:wikiamobile-search";a:2:{i:0;s:17:"wikia-wikiamobile";i:1;R:40461;}s:28:"1232:wikiamobile-search-wiki";a:2:{i:0;R:44214;i:1;R:40461;}s:29:"1232:wikiamobile-search-wikia";a:2:{i:0;R:44214;i:1;R:40461;}s:22:"1232:wikiamobile-login";a:2:{i:0;R:44214;i:1;R:40461;}s:25:"1232:wikiamobile-password";a:2:{i:0;R:44214;i:1;R:40461;}s:29:"1232:wikiamobile-login-submit";a:2:{i:0;R:44214;i:1;R:40461;}s:21:"1232:wikiamobile-menu";a:2:{i:0;R:44214;i:1;R:40461;}s:24:"1232:wikiamobile-explore";a:2:{i:0;R:44214;i:1;R:40461;}s:35:"1232:wikiamobile-article-categories";a:2:{i:0;R:44214;i:1;R:40461;}s:25:"1232:wikiamobile-feedback";a:2:{i:0;R:44214;i:1;R:40461;}s:21:"1232:wikiamobile-back";a:2:{i:0;R:44214;i:1;R:40461;}s:29:"1232:wikiamobile-hide-section";a:2:{i:0;R:44214;i:1;R:40461;}s:36:"1232:wikiamobile-footer-link-license";a:2:{i:0;R:44214;i:1;R:40461;}s:38:"1232:wikiamobile-footer-link-lifestyle";a:2:{i:0;R:44214;i:1;R:40461;}s:42:"1232:wikiamobile-footer-link-entertainment";a:2:{i:0;R:44214;i:1;R:40461;}s:39:"1232:wikiamobile-footer-link-videogames";a:2:{i:0;R:44214;i:1;R:40461;}s:39:"1232:wikiamobile-categories-items-total";a:2:{i:0;R:44214;i:1;R:40461;}s:36:"1232:wikiamobile-category-items-more";a:2:{i:0;R:44214;i:1;R:40461;}s:36:"1232:wikiamobile-category-items-prev";a:2:{i:0;R:44214;i:1;R:40461;}s:34:"1232:wikiamobile-categories-expand";a:2:{i:0;R:44214;i:1;R:40461;}s:36:"1232:wikiamobile-categories-collapse";a:2:{i:0;R:44214;i:1;R:40461;}s:36:"1232:wikiamobile-sharing-media-image";a:2:{i:0;R:44214;i:1;R:40461;}s:34:"1232:wikiamobile-sharing-page-text";a:2:{i:0;R:44214;i:1;R:40461;}s:35:"1232:wikiamobile-sharing-modal-text";a:2:{i:0;R:44214;i:1;R:40461;}s:35:"1232:wikiamobile-sharing-email-text";a:2:{i:0;R:44214;i:1;R:40461;}s:25:"1232:wikiamobile-ad-close";a:2:{i:0;R:44214;i:1;R:40461;}s:27:"1232:wikiaphotogallery-desc";a:2:{i:0;s:23:"wikia-wikiaphotogallery";i:1;R:40461;}s:27:"1232:wikiaphotogallery-back";a:2:{i:0;R:44241;i:1;R:40461;}s:29:"1232:wikiaphotogallery-finish";a:2:{i:0;R:44241;i:1;R:40461;}s:35:"1232:wikiaphotogallery-feed-caption";a:2:{i:0;R:44241;i:1;R:40461;}s:39:"1232:wikiaphotogallery-lightbox-caption";a:2:{i:0;R:44241;i:1;R:40461;}s:34:"1232:wikiaphotogallery-add-gallery";a:2:{i:0;R:44241;i:1;R:40461;}s:40:"1232:wikiaphotogallery-viewmode-addphoto";a:2:{i:0;R:44241;i:1;R:40461;}s:33:"1232:wikiaphotogallery-edit-abort";a:2:{i:0;R:44241;i:1;R:40461;}s:35:"1232:wikiaphotogallery-edit-summary";a:2:{i:0;R:44241;i:1;R:40461;}s:36:"1232:wikiaphotogallery-error-caption";a:2:{i:0;R:44241;i:1;R:40461;}s:37:"1232:wikiaphotogallery-error-outdated";a:2:{i:0;R:44241;i:1;R:40461;}s:40:"1232:wikiaphotogallery-error-wrong-title";a:2:{i:0;R:44241;i:1;R:40461;}s:40:"1232:wikiaphotogallery-error-user-rights";a:2:{i:0;R:44241;i:1;R:40461;}s:35:"1232:wikiaphotogallery-upload-title";a:2:{i:0;R:44241;i:1;R:40461;}s:46:"1232:wikiaphotogallery-upload-info-choose-list";a:2:{i:0;R:44241;i:1;R:40461;}s:47:"1232:wikiaphotogallery-upload-info-images-label";a:2:{i:0;R:44241;i:1;R:40461;}s:41:"1232:wikiaphotogallery-upload-info-upload";a:2:{i:0;R:44241;i:1;R:40461;}s:49:"1232:wikiaphotogallery-upload-info-uploaded-label";a:2:{i:0;R:44241;i:1;R:40461;}s:41:"1232:wikiaphotogallery-upload-uploadtitle";a:2:{i:0;R:44241;i:1;R:40461;}s:42:"1232:wikiaphotogallery-upload-uploadbutton";a:2:{i:0;R:44241;i:1;R:40461;}s:39:"1232:wikiaphotogallery-upload-findtitle";a:2:{i:0;R:44241;i:1;R:40461;}s:40:"1232:wikiaphotogallery-upload-findbutton";a:2:{i:0;R:44241;i:1;R:40461;}s:44:"1232:wikiaphotogallery-upload-filestitle-pre";a:2:{i:0;R:44241;i:1;R:40461;}s:45:"1232:wikiaphotogallery-upload-filestitle-post";a:2:{i:0;R:44241;i:1;R:40461;}s:39:"1232:wikiaphotogallery-upload-page-next";a:2:{i:0;R:44241;i:1;R:40461;}s:39:"1232:wikiaphotogallery-upload-page-prev";a:2:{i:0;R:44241;i:1;R:40461;}s:41:"1232:wikiaphotogallery-upload-filesinsert";a:2:{i:0;R:44241;i:1;R:40461;}s:41:"1232:wikiaphotogallery-upload-error-title";a:2:{i:0;R:44241;i:1;R:40461;}s:49:"1232:wikiaphotogallery-upload-error-bad-extension";a:2:{i:0;R:44241;i:1;R:40461;}s:54:"1232:wikiaphotogallery-upload-error-filename-incorrect";a:2:{i:0;R:44241;i:1;R:40461;}s:54:"1232:wikiaphotogallery-upload-error-filetype-incorrect";a:2:{i:0;R:44241;i:1;R:40461;}s:52:"1232:wikiaphotogallery-upload-error-filetype_missing";a:2:{i:0;R:44241;i:1;R:40461;}s:44:"1232:wikiaphotogallery-upload-error-readonly";a:2:{i:0;R:44241;i:1;R:40461;}s:50:"1232:wikiaphotogallery-upload-error-conflict-intro";a:2:{i:0;R:44241;i:1;R:40461;}s:52:"1232:wikiaphotogallery-upload-error-filetype-missing";a:2:{i:0;R:44241;i:1;R:40461;}s:51:"1232:wikiaphotogallery-upload-error-conflict-rename";a:2:{i:0;R:44241;i:1;R:40461;}s:50:"1232:wikiaphotogallery-upload-error-conflict-reuse";a:2:{i:0;R:44241;i:1;R:40461;}s:54:"1232:wikiaphotogallery-upload-error-conflict-overwrite";a:2:{i:0;R:44241;i:1;R:40461;}s:51:"1232:wikiaphotogallery-upload-error-conflict-insert";a:2:{i:0;R:44241;i:1;R:40461;}s:43:"1232:wikiaphotogallery-upload-select-images";a:2:{i:0;R:44241;i:1;R:40461;}s:41:"1232:wikiaphotogallery-photooptions-title";a:2:{i:0;R:44241;i:1;R:40461;}s:40:"1232:wikiaphotogallery-photooptions-done";a:2:{i:0;R:44241;i:1;R:40461;}s:40:"1232:wikiaphotogallery-preview-no-images";a:2:{i:0;R:44241;i:1;R:40461;}s:36:"1232:wikiaphotogallery-preview-title";a:2:{i:0;R:44241;i:1;R:40461;}s:43:"1232:wikiaphotogallery-preview-hover-modify";a:2:{i:0;R:44241;i:1;R:40461;}s:43:"1232:wikiaphotogallery-preview-hover-delete";a:2:{i:0;R:44241;i:1;R:40461;}s:43:"1232:wikiaphotogallery-preview-previewtitle";a:2:{i:0;R:44241;i:1;R:40461;}s:40:"1232:wikiaphotogallery-preview-add-photo";a:2:{i:0;R:44241;i:1;R:40461;}s:42:"1232:wikiaphotogallery-preview-add-caption";a:2:{i:0;R:44241;i:1;R:40461;}s:46:"1232:wikiaphotogallery-preview-add-description";a:2:{i:0;R:44241;i:1;R:40461;}s:39:"1232:wikiaphotogallery-preview-add-link";a:2:{i:0;R:44241;i:1;R:40461;}s:50:"1232:wikiaphotogallery-preview-placeholder-caption";a:2:{i:0;R:44241;i:1;R:40461;}s:43:"1232:wikiaphotogallery-preview-link-tooltip";a:2:{i:0;R:44241;i:1;R:40461;}s:41:"1232:wikiaphotogallery-preview-feed-label";a:2:{i:0;R:44241;i:1;R:40461;}s:41:"1232:wikiaphotogallery-preview-tab-layout";a:2:{i:0;R:44241;i:1;R:40461;}s:35:"1232:wikiaphotogallery-preview-size";a:2:{i:0;R:44241;i:1;R:40461;}s:33:"1232:wikiaphotogallery-preview-px";a:2:{i:0;R:44241;i:1;R:40461;}s:43:"1232:wikiaphotogallery-preview-size-smaller";a:2:{i:0;R:44241;i:1;R:40461;}s:42:"1232:wikiaphotogallery-preview-size-larger";a:2:{i:0;R:44241;i:1;R:40461;}s:38:"1232:wikiaphotogallery-preview-columns";a:2:{i:0;R:44241;i:1;R:40461;}s:46:"1232:wikiaphotogallery-preview-columns-dynamic";a:2:{i:0;R:44241;i:1;R:40461;}s:39:"1232:wikiaphotogallery-preview-position";a:2:{i:0;R:44241;i:1;R:40461;}s:44:"1232:wikiaphotogallery-preview-position-left";a:2:{i:0;R:44241;i:1;R:40461;}s:46:"1232:wikiaphotogallery-preview-position-center";a:2:{i:0;R:44241;i:1;R:40461;}s:45:"1232:wikiaphotogallery-preview-position-right";a:2:{i:0;R:44241;i:1;R:40461;}s:38:"1232:wikiaphotogallery-preview-spacing";a:2:{i:0;R:44241;i:1;R:40461;}s:44:"1232:wikiaphotogallery-preview-spacing-small";a:2:{i:0;R:44241;i:1;R:40461;}s:45:"1232:wikiaphotogallery-preview-spacing-medium";a:2:{i:0;R:44241;i:1;R:40461;}s:44:"1232:wikiaphotogallery-preview-spacing-large";a:2:{i:0;R:44241;i:1;R:40461;}s:42:"1232:wikiaphotogallery-preview-orientation";a:2:{i:0;R:44241;i:1;R:40461;}s:57:"1232:wikiaphotogallery-preview-orientation-square-tooltip";a:2:{i:0;R:44241;i:1;R:40461;}s:60:"1232:wikiaphotogallery-preview-orientation-landscape-tooltip";a:2:{i:0;R:44241;i:1;R:40461;}s:59:"1232:wikiaphotogallery-preview-orientation-portrait-tooltip";a:2:{i:0;R:44241;i:1;R:40461;}s:55:"1232:wikiaphotogallery-preview-orientation-none-tooltip";a:2:{i:0;R:44241;i:1;R:40461;}s:39:"1232:wikiaphotogallery-preview-crop-sub";a:2:{i:0;R:44241;i:1;R:40461;}s:40:"1232:wikiaphotogallery-preview-tab-theme";a:2:{i:0;R:44241;i:1;R:40461;}s:46:"1232:wikiaphotogallery-preview-captionposition";a:2:{i:0;R:44241;i:1;R:40461;}s:53:"1232:wikiaphotogallery-preview-captionposition-within";a:2:{i:0;R:44241;i:1;R:40461;}s:52:"1232:wikiaphotogallery-preview-captionposition-below";a:2:{i:0;R:44241;i:1;R:40461;}s:47:"1232:wikiaphotogallery-preview-captionalignment";a:2:{i:0;R:44241;i:1;R:40461;}s:52:"1232:wikiaphotogallery-preview-captionalignment-left";a:2:{i:0;R:44241;i:1;R:40461;}s:54:"1232:wikiaphotogallery-preview-captionalignment-center";a:2:{i:0;R:44241;i:1;R:40461;}s:53:"1232:wikiaphotogallery-preview-captionalignment-right";a:2:{i:0;R:44241;i:1;R:40461;}s:42:"1232:wikiaphotogallery-preview-captionsize";a:2:{i:0;R:44241;i:1;R:40461;}s:48:"1232:wikiaphotogallery-preview-captionsize-small";a:2:{i:0;R:44241;i:1;R:40461;}s:49:"1232:wikiaphotogallery-preview-captionsize-medium";a:2:{i:0;R:44241;i:1;R:40461;}s:48:"1232:wikiaphotogallery-preview-captionsize-large";a:2:{i:0;R:44241;i:1;R:40461;}s:43:"1232:wikiaphotogallery-preview-captioncolor";a:2:{i:0;R:44241;i:1;R:40461;}s:41:"1232:wikiaphotogallery-preview-bordersize";a:2:{i:0;R:44241;i:1;R:40461;}s:46:"1232:wikiaphotogallery-preview-bordersize-none";a:2:{i:0;R:44241;i:1;R:40461;}s:47:"1232:wikiaphotogallery-preview-bordersize-small";a:2:{i:0;R:44241;i:1;R:40461;}s:48:"1232:wikiaphotogallery-preview-bordersize-medium";a:2:{i:0;R:44241;i:1;R:40461;}s:47:"1232:wikiaphotogallery-preview-bordersize-large";a:2:{i:0;R:44241;i:1;R:40461;}s:42:"1232:wikiaphotogallery-preview-bordercolor";a:2:{i:0;R:44241;i:1;R:40461;}s:48:"1232:wikiaphotogallery-preview-colorpicker-title";a:2:{i:0;R:44241;i:1;R:40461;}s:46:"1232:wikiaphotogallery-preview-colorpicker-hex";a:2:{i:0;R:44241;i:1;R:40461;}s:39:"1232:wikiaphotogallery-preview-captions";a:2:{i:0;R:44241;i:1;R:40461;}s:44:"1232:wikiaphotogallery-preview-captions-left";a:2:{i:0;R:44241;i:1;R:40461;}s:46:"1232:wikiaphotogallery-preview-captions-center";a:2:{i:0;R:44241;i:1;R:40461;}s:45:"1232:wikiaphotogallery-preview-captions-right";a:2:{i:0;R:44241;i:1;R:40461;}s:37:"1232:wikiaphotogallery-conflict-title";a:2:{i:0;R:44241;i:1;R:40461;}s:36:"1232:wikiaphotogallery-conflict-help";a:2:{i:0;R:44241;i:1;R:40461;}s:36:"1232:wikiaphotogallery-conflict-edit";a:2:{i:0;R:44241;i:1;R:40461;}s:36:"1232:wikiaphotogallery-conflict-view";a:2:{i:0;R:44241;i:1;R:40461;}s:43:"1232:wikiaphotogallery-preview-delete-title";a:2:{i:0;R:44241;i:1;R:40461;}s:37:"1232:wikiaphotogallery-preview-delete";a:2:{i:0;R:44241;i:1;R:40461;}s:43:"1232:wikiaphotogallery-preview-saving-title";a:2:{i:0;R:44241;i:1;R:40461;}s:43:"1232:wikiaphotogallery-preview-saving-intro";a:2:{i:0;R:44241;i:1;R:40461;}s:33:"1232:wikiaphotogallery-quit-title";a:2:{i:0;R:44241;i:1;R:40461;}s:33:"1232:wikiaphotogallery-quit-intro";a:2:{i:0;R:44241;i:1;R:40461;}s:36:"1232:wikiaphotogallery-quit-savequit";a:2:{i:0;R:44241;i:1;R:40461;}s:36:"1232:wikiaphotogallery-quit-quitonly";a:2:{i:0;R:44241;i:1;R:40461;}s:52:"1232:wikiaphotogallery-slideshow-view-popout-tooltip";a:2:{i:0;R:44241;i:1;R:40461;}s:46:"1232:wikiaphotogallery-slideshow-view-addphoto";a:2:{i:0;R:44241;i:1;R:40461;}s:50:"1232:wikiaphotogallery-slideshow-view-next-tooltip";a:2:{i:0;R:44241;i:1;R:40461;}s:50:"1232:wikiaphotogallery-slideshow-view-prev-tooltip";a:2:{i:0;R:44241;i:1;R:40461;}s:43:"1232:wikiaphotogallery-slideshow-view-title";a:2:{i:0;R:44241;i:1;R:40461;}s:44:"1232:wikiaphotogallery-slideshow-view-number";a:2:{i:0;R:44241;i:1;R:40461;}s:52:"1232:wikiaphotogallery-slideshow-view-startslideshow";a:2:{i:0;R:44241;i:1;R:40461;}s:51:"1232:wikiaphotogallery-slideshow-view-stopslideshow";a:2:{i:0;R:44241;i:1;R:40461;}s:53:"1232:wikiaphotogallery-slideshow-view-details-tooltip";a:2:{i:0;R:44241;i:1;R:40461;}s:50:"1232:wikiaphotogallery-slideshow-view-link-overlay";a:2:{i:0;R:44241;i:1;R:40461;}s:35:"1232:wikiaphotogallery-choice-title";a:2:{i:0;R:44241;i:1;R:40461;}s:35:"1232:wikiaphotogallery-choice-intro";a:2:{i:0;R:44241;i:1;R:40461;}s:39:"1232:wikiaphotogallery-choice-slideshow";a:2:{i:0;R:44241;i:1;R:40461;}s:37:"1232:wikiaphotogallery-choice-gallery";a:2:{i:0;R:44241;i:1;R:40461;}s:36:"1232:wikiaphotogallery-choice-slider";a:2:{i:0;R:44241;i:1;R:40461;}s:45:"1232:wikiaphotogallery-slideshowpreview-title";a:2:{i:0;R:44241;i:1;R:40461;}s:52:"1232:wikiaphotogallery-slideshowpreview-optionstitle";a:2:{i:0;R:44241;i:1;R:40461;}s:44:"1232:wikiaphotogallery-slideshowpreview-size";a:2:{i:0;R:44241;i:1;R:40461;}s:52:"1232:wikiaphotogallery-slideshowpreview-size-smaller";a:2:{i:0;R:44241;i:1;R:40461;}s:51:"1232:wikiaphotogallery-slideshowpreview-size-larger";a:2:{i:0;R:44241;i:1;R:40461;}s:44:"1232:wikiaphotogallery-slideshowpreview-crop";a:2:{i:0;R:44241;i:1;R:40461;}s:53:"1232:wikiaphotogallery-slideshowpreview-recentuploads";a:2:{i:0;R:44241;i:1;R:40461;}s:51:"1232:wikiaphotogallery-slideshowpreview-photostitle";a:2:{i:0;R:44241;i:1;R:40461;}s:48:"1232:wikiaphotogallery-slideshowpreview-addphoto";a:2:{i:0;R:44241;i:1;R:40461;}s:48:"1232:wikiaphotogallery-slideshowpreview-position";a:2:{i:0;R:44241;i:1;R:40461;}s:53:"1232:wikiaphotogallery-slideshowpreview-position-left";a:2:{i:0;R:44241;i:1;R:40461;}s:55:"1232:wikiaphotogallery-slideshowpreview-position-center";a:2:{i:0;R:44241;i:1;R:40461;}s:54:"1232:wikiaphotogallery-slideshowpreview-position-right";a:2:{i:0;R:44241;i:1;R:40461;}s:48:"1232:wikiaphotogallery-sliderpreview-photostitle";a:2:{i:0;R:44241;i:1;R:40461;}s:49:"1232:wikiaphotogallery-sliderpreview-optionstitle";a:2:{i:0;R:44241;i:1;R:40461;}s:47:"1232:wikiaphotogallery-sliderpreview-choosetype";a:2:{i:0;R:44241;i:1;R:40461;}s:62:"1232:wikiaphotogallery-sliderpreview-choosetype-bottom-tooltip";a:2:{i:0;R:44241;i:1;R:40461;}s:61:"1232:wikiaphotogallery-sliderpreview-choosetype-right-tooltip";a:2:{i:0;R:44241;i:1;R:40461;}s:45:"1232:wikiaphotogallery-sliderpreview-addphoto";a:2:{i:0;R:44241;i:1;R:40461;}s:42:"1232:wikiaphotogallery-sliderpreview-title";a:2:{i:0;R:44241;i:1;R:40461;}s:45:"1232:wikiaphotogallery-upload-title-slideshow";a:2:{i:0;R:44241;i:1;R:40461;}s:43:"1232:wikiaphotogallery-upload-title-gallery";a:2:{i:0;R:44241;i:1;R:40461;}s:42:"1232:wikiaphotogallery-upload-title-slider";a:2:{i:0;R:44241;i:1;R:40461;}s:40:"1232:wikiaphotogallery-upload-uploadtext";a:2:{i:0;R:44241;i:1;R:40461;}s:42:"1232:wikiaphotogallery-upload-existingtext";a:2:{i:0;R:44241;i:1;R:40461;}s:52:"1232:wikiaphotogallery-upload-existingtext-onarticle";a:2:{i:0;R:44241;i:1;R:40461;}s:55:"1232:wikiaphotogallery-upload-existingtext-recentupload";a:2:{i:0;R:44241;i:1;R:40461;}s:42:"1232:wikiaphotogallery-upload-selectbutton";a:2:{i:0;R:44241;i:1;R:40461;}s:51:"1232:wikiaphotogallery-photooptions-title-slideshow";a:2:{i:0;R:44241;i:1;R:40461;}s:49:"1232:wikiaphotogallery-photooptions-title-gallery";a:2:{i:0;R:44241;i:1;R:40461;}s:48:"1232:wikiaphotogallery-photooptions-captiontitle";a:2:{i:0;R:44241;i:1;R:40461;}s:46:"1232:wikiaphotogallery-photooptions-captionsub";a:2:{i:0;R:44241;i:1;R:40461;}s:45:"1232:wikiaphotogallery-photooptions-linktitle";a:2:{i:0;R:44241;i:1;R:40461;}s:43:"1232:wikiaphotogallery-photooptions-linksub";a:2:{i:0;R:44241;i:1;R:40461;}s:44:"1232:wikiaphotogallery-photooptions-linktext";a:2:{i:0;R:44241;i:1;R:40461;}s:43:"1232:wikiaphotogallery-photooptions-linkurl";a:2:{i:0;R:44241;i:1;R:40461;}s:47:"1232:wikiaphotogallery-photooptions-description";a:2:{i:0;R:44241;i:1;R:40461;}s:37:"1232:wikiaphotogallery-search-tooltip";a:2:{i:0;R:44241;i:1;R:40461;}s:46:"1232:wikiaphotogallery-upload-image-size-error";a:2:{i:0;R:44241;i:1;R:40461;}s:40:"1232:wikiaphotogallery-upload-image-size";a:2:{i:0;R:44241;i:1;R:40461;}s:36:"1232:wikiaphotogallery-not-displayed";a:2:{i:0;R:44241;i:1;R:40461;}s:28:"1232:galery-slider-read-more";a:2:{i:0;R:44241;i:1;R:40461;}s:19:"1232:wikiapoll-desc";a:2:{i:0;s:15:"wikia-wikiapoll";i:1;R:40461;}s:27:"1232:wikiapoll-people-voted";a:2:{i:0;R:44411;i:1;R:40461;}s:23:"1232:wikiapoll-question";a:2:{i:0;R:44411;i:1;R:40461;}s:30:"1232:wikiapoll-thanks-for-vote";a:2:{i:0;R:44411;i:1;R:40461;}s:19:"1232:wikiapoll-vote";a:2:{i:0;R:44411;i:1;R:40461;}s:20:"1232:wikiapoll-votes";a:2:{i:0;R:44411;i:1;R:40461;}s:34:"1232:wikiapoll-question-mark-after";a:2:{i:0;R:44411;i:1;R:40461;}s:35:"1232:wikiapoll-question-mark-before";a:2:{i:0;R:44411;i:1;R:40461;}s:34:"1232:wikiapoll-createpoll-headline";a:2:{i:0;R:44411;i:1;R:40461;}s:32:"1232:wikiapoll-editpoll-headline";a:2:{i:0;R:44411;i:1;R:40461;}s:29:"1232:wikiapoll-question-label";a:2:{i:0;R:44411;i:1;R:40461;}s:31:"1232:wikiapoll-addnewitem-label";a:2:{i:0;R:44411;i:1;R:40461;}s:27:"1232:wikiapoll-cancel-label";a:2:{i:0;R:44411;i:1;R:40461;}s:28:"1232:wikiapoll-publish-label";a:2:{i:0;R:44411;i:1;R:40461;}s:30:"1232:wikiapoll-error-duplicate";a:2:{i:0;R:44411;i:1;R:40461;}s:34:"1232:wikiapoll-error-invalid-title";a:2:{i:0;R:44411;i:1;R:40461;}s:19:"1232:wikiaquiz-desc";a:2:{i:0;s:15:"wikia-wikiaquiz";i:1;R:40461;}s:34:"1232:wikiaquiz-createquiz-headline";a:2:{i:0;R:44428;i:1;R:40461;}s:32:"1232:wikiaquiz-editquiz-headline";a:2:{i:0;R:44428;i:1;R:40461;}s:41:"1232:wikiaquiz-createquizarticle-headline";a:2:{i:0;R:44428;i:1;R:40461;}s:39:"1232:wikiaquiz-editquizarticle-headline";a:2:{i:0;R:44428;i:1;R:40461;}s:26:"1232:wikiaquiz-title-label";a:2:{i:0;R:44428;i:1;R:40461;}s:36:"1232:wikiaquiz-titlescreentext-label";a:2:{i:0;R:44428;i:1;R:40461;}s:41:"1232:wikiaquiz-fbrecommendationtext-label";a:2:{i:0;R:44428;i:1;R:40461;}s:38:"1232:wikiaquiz-titlescreenimages-label";a:2:{i:0;R:44428;i:1;R:40461;}s:36:"1232:wikiaquiz-moreinfoheading-label";a:2:{i:0;R:44428;i:1;R:40461;}s:33:"1232:wikiaquiz-requireemail-label";a:2:{i:0;R:44428;i:1;R:40461;}s:34:"1232:wikiaquiz-moreinfolinks-label";a:2:{i:0;R:44428;i:1;R:40461;}s:36:"1232:wikiaquiz-moreinfoarticle-label";a:2:{i:0;R:44428;i:1;R:40461;}s:37:"1232:wikiaquiz-moreinfolinktext-label";a:2:{i:0;R:44428;i:1;R:40461;}s:29:"1232:wikiaquiz-question-label";a:2:{i:0;R:44428;i:1;R:40461;}s:26:"1232:wikiaquiz-image-label";a:2:{i:0;R:44428;i:1;R:40461;}s:26:"1232:wikiaquiz-video-label";a:2:{i:0;R:44428;i:1;R:40461;}s:32:"1232:wikiaquiz-explanation-label";a:2:{i:0;R:44428;i:1;R:40461;}s:25:"1232:wikiaquiz-quiz-label";a:2:{i:0;R:44428;i:1;R:40461;}s:30:"1232:wikiaquiz-questions-label";a:2:{i:0;R:44428;i:1;R:40461;}s:28:"1232:wikiaquiz-answers-label";a:2:{i:0;R:44428;i:1;R:40461;}s:27:"1232:wikiaquiz-answer-label";a:2:{i:0;R:44428;i:1;R:40461;}s:28:"1232:wikiaquiz-correct-label";a:2:{i:0;R:44428;i:1;R:40461;}s:31:"1232:wikiaquiz-addnewitem-label";a:2:{i:0;R:44428;i:1;R:40461;}s:27:"1232:wikiaquiz-cancel-label";a:2:{i:0;R:44428;i:1;R:40461;}s:28:"1232:wikiaquiz-publish-label";a:2:{i:0;R:44428;i:1;R:40461;}s:35:"1232:wikiaquiz-error-duplicate-quiz";a:2:{i:0;R:44428;i:1;R:40461;}s:39:"1232:wikiaquiz-error-duplicate-question";a:2:{i:0;R:44428;i:1;R:40461;}s:37:"1232:wikiaquiz-error-invalid-question";a:2:{i:0;R:44428;i:1;R:40461;}s:34:"1232:wikiaquiz-error-invalid-image";a:2:{i:0;R:44428;i:1;R:40461;}s:34:"1232:wikiaquiz-error-invalid-video";a:2:{i:0;R:44428;i:1;R:40461;}s:36:"1232:wikiaquiz-error-missing-answers";a:2:{i:0;R:44428;i:1;R:40461;}s:43:"1232:wikiaquiz-error-invalid-correct-answer";a:2:{i:0;R:44428;i:1;R:40461;}s:33:"1232:wikiaquiz-error-invalid-quiz";a:2:{i:0;R:44428;i:1;R:40461;}s:36:"1232:wikiaquiz-error-invalid-article";a:2:{i:0;R:44428;i:1;R:40461;}s:49:"1232:wikiaquiz-error-invalid-article-with-details";a:2:{i:0;R:44428;i:1;R:40461;}s:32:"1232:wikiaquiz-game-start-button";a:2:{i:0;R:44428;i:1;R:40461;}s:29:"1232:wikiaquiz-game-cadence-3";a:2:{i:0;R:44428;i:1;R:40461;}s:29:"1232:wikiaquiz-game-cadence-2";a:2:{i:0;R:44428;i:1;R:40461;}s:29:"1232:wikiaquiz-game-cadence-1";a:2:{i:0;R:44428;i:1;R:40461;}s:34:"1232:wikiaquiz-game-question-label";a:2:{i:0;R:44428;i:1;R:40461;}s:31:"1232:wikiaquiz-game-next-button";a:2:{i:0;R:44428;i:1;R:40461;}s:33:"1232:wikiaquiz-game-finish-button";a:2:{i:0;R:44428;i:1;R:40461;}s:33:"1232:wikiaquiz-game-correct-label";a:2:{i:0;R:44428;i:1;R:40461;}s:35:"1232:wikiaquiz-game-incorrect-label";a:2:{i:0;R:44428;i:1;R:40461;}s:35:"1232:wikiaquiz-game-congratulations";a:2:{i:0;R:44428;i:1;R:40461;}s:40:"1232:wikiaquiz-game-congratulations-anon";a:2:{i:0;R:44428;i:1;R:40461;}s:30:"1232:wikiaquiz-game-your-score";a:2:{i:0;R:44428;i:1;R:40461;}s:35:"1232:wikiaquiz-game-continue-button";a:2:{i:0;R:44428;i:1;R:40461;}s:26:"1232:wikiaquiz-game-thanks";a:2:{i:0;R:44428;i:1;R:40461;}s:33:"1232:wikiaquiz-game-provide-email";a:2:{i:0;R:44428;i:1;R:40461;}s:37:"1232:wikiaquiz-game-email-placeholder";a:2:{i:0;R:44428;i:1;R:40461;}s:32:"1232:wikiaquiz-game-email-button";a:2:{i:0;R:44428;i:1;R:40461;}s:38:"1232:wikiaquiz-game-email-valid-please";a:2:{i:0;R:44428;i:1;R:40461;}s:40:"1232:wikiaquiz-game-email-token-mismatch";a:2:{i:0;R:44428;i:1;R:40461;}s:33:"1232:wikiaquiz-game-email-subject";a:2:{i:0;R:44428;i:1;R:40461;}s:30:"1232:wikiaquiz-game-email-body";a:2:{i:0;R:44428;i:1;R:40461;}s:31:"1232:wikiaquiz-game-email-error";a:2:{i:0;R:44428;i:1;R:40461;}s:29:"1232:wikiaquiz-game-challenge";a:2:{i:0;R:44428;i:1;R:40461;}s:24:"1232:wikiaquiz-game-mute";a:2:{i:0;R:44428;i:1;R:40461;}s:24:"1232:wikiavideo-reverted";a:2:{i:0;s:16:"wikia-wikiavideo";i:1;R:40461;}s:26:"1232:wikiavideo-unreverted";a:2:{i:0;R:44489;i:1;R:40461;}s:21:"1232:wikiavideo-added";a:2:{i:0;R:44489;i:1;R:40461;}s:23:"1232:wikiavideo-updated";a:2:{i:0;R:44489;i:1;R:40461;}s:20:"1232:wikiavideo-back";a:2:{i:0;R:44489;i:1;R:40461;}s:22:"1232:wikiavideo-create";a:2:{i:0;R:44489;i:1;R:40461;}s:23:"1232:wikiavideo-replace";a:2:{i:0;R:44489;i:1;R:40461;}s:24:"1232:wikiavideo-category";a:2:{i:0;R:44489;i:1;R:40461;}s:21:"1232:wikiavideo-links";a:2:{i:0;R:44489;i:1;R:40461;}s:27:"1232:wikiavideo-placeholder";a:2:{i:0;R:44489;i:1;R:40461;}s:32:"1232:wikiavideo-gallery-template";a:2:{i:0;R:44489;i:1;R:40461;}s:29:"1232:wikiavideo-not-supported";a:2:{i:0;R:44489;i:1;R:40461;}s:27:"1232:wikiavideo-deleted-old";a:2:{i:0;R:44489;i:1;R:40461;}s:25:"1232:wikiavideo-intro-old";a:2:{i:0;R:44489;i:1;R:40461;}s:23:"1232:wikiavideo-details";a:2:{i:0;R:44489;i:1;R:40461;}s:16:"1232:wva-success";a:2:{i:0;s:19:"wikia-wikiavideoadd";i:1;R:40461;}s:25:"1232:wva-success-replaced";a:2:{i:0;R:44505;i:1;R:40461;}s:16:"1232:wva-failure";a:2:{i:0;R:44505;i:1;R:40461;}s:13:"1232:wva-name";a:2:{i:0;R:44505;i:1;R:40461;}s:12:"1232:wva-url";a:2:{i:0;R:44505;i:1;R:40461;}s:12:"1232:wva-add";a:2:{i:0;R:44505;i:1;R:40461;}s:14:"1232:wva-title";a:2:{i:0;R:44505;i:1;R:40461;}s:18:"1232:wva-notlogged";a:2:{i:0;R:44505;i:1;R:40461;}s:19:"1232:wva-notallowed";a:2:{i:0;R:44505;i:1;R:40461;}s:18:"1232:wva-protected";a:2:{i:0;R:44505;i:1;R:40461;}s:16:"1232:wikiawidget";a:2:{i:0;s:17:"wikia-wikiawidget";i:1;R:40461;}s:21:"1232:wikibuilder-desc";a:2:{i:0;s:17:"wikia-wikibuilder";i:1;R:40461;}s:14:"1232:owb-title";a:2:{i:0;R:44518;i:1;R:40461;}s:17:"1232:owb-headline";a:2:{i:0;R:44518;i:1;R:40461;}s:20:"1232:owb-button-skip";a:2:{i:0;R:44518;i:1;R:40461;}s:26:"1232:owb-button-save-intro";a:2:{i:0;R:44518;i:1;R:40461;}s:26:"1232:owb-button-save-theme";a:2:{i:0;R:44518;i:1;R:40461;}s:26:"1232:owb-button-save-pages";a:2:{i:0;R:44518;i:1;R:40461;}s:20:"1232:owb-button-done";a:2:{i:0;R:44518;i:1;R:40461;}s:20:"1232:owb-button-plus";a:2:{i:0;R:44518;i:1;R:40461;}s:14:"1232:owb-step1";a:2:{i:0;R:44518;i:1;R:40461;}s:20:"1232:owb-step1-label";a:2:{i:0;R:44518;i:1;R:40461;}s:30:"1232:owb-step1-label-formatted";a:2:{i:0;R:44518;i:1;R:40461;}s:26:"1232:owb-step1-instruction";a:2:{i:0;R:44518;i:1;R:40461;}s:21:"1232:owb-step1-sample";a:2:{i:0;R:44518;i:1;R:40461;}s:14:"1232:owb-step2";a:2:{i:0;R:44518;i:1;R:40461;}s:20:"1232:owb-step2-label";a:2:{i:0;R:44518;i:1;R:40461;}s:30:"1232:owb-step2-label-formatted";a:2:{i:0;R:44518;i:1;R:40461;}s:27:"1232:owb-step2-instruction1";a:2:{i:0;R:44518;i:1;R:40461;}s:27:"1232:owb-step2-instruction2";a:2:{i:0;R:44518;i:1;R:40461;}s:22:"1232:owb-step2-gallery";a:2:{i:0;R:44518;i:1;R:40461;}s:14:"1232:owb-step3";a:2:{i:0;R:44518;i:1;R:40461;}s:20:"1232:owb-step3-label";a:2:{i:0;R:44518;i:1;R:40461;}s:30:"1232:owb-step3-label-formatted";a:2:{i:0;R:44518;i:1;R:40461;}s:26:"1232:owb-step3-instruction";a:2:{i:0;R:44518;i:1;R:40461;}s:25:"1232:owb-step3-your-pages";a:2:{i:0;R:44518;i:1;R:40461;}s:30:"1232:owb-step3-examples1-title";a:2:{i:0;R:44518;i:1;R:40461;}s:24:"1232:owb-step3-examples1";a:2:{i:0;R:44518;i:1;R:40461;}s:30:"1232:owb-step3-examples2-title";a:2:{i:0;R:44518;i:1;R:40461;}s:24:"1232:owb-step3-examples2";a:2:{i:0;R:44518;i:1;R:40461;}s:14:"1232:owb-step4";a:2:{i:0;R:44518;i:1;R:40461;}s:30:"1232:owb-step4-label-formatted";a:2:{i:0;R:44518;i:1;R:40461;}s:20:"1232:owb-step4-label";a:2:{i:0;R:44518;i:1;R:40461;}s:26:"1232:owb-step4-instruction";a:2:{i:0;R:44518;i:1;R:40461;}s:26:"1232:owb-step4-basic-price";a:2:{i:0;R:44518;i:1;R:40461;}s:28:"1232:owb-step4-basic-details";a:2:{i:0;R:44518;i:1;R:40461;}s:25:"1232:owb-step4-plus-price";a:2:{i:0;R:44518;i:1;R:40461;}s:27:"1232:owb-step4-plus-details";a:2:{i:0;R:44518;i:1;R:40461;}s:28:"1232:owb-step4-error-caption";a:2:{i:0;R:44518;i:1;R:40461;}s:36:"1232:owb-step4-error-upgrade-content";a:2:{i:0;R:44518;i:1;R:40461;}s:34:"1232:owb-step4-error-token-content";a:2:{i:0;R:44518;i:1;R:40461;}s:22:"1232:owb-status-saving";a:2:{i:0;R:44518;i:1;R:40461;}s:35:"1232:owb-unable-to-edit-description";a:2:{i:0;R:44518;i:1;R:40461;}s:27:"1232:owb-readonly-try-again";a:2:{i:0;R:44518;i:1;R:40461;}s:30:"1232:owb-error-saving-articles";a:2:{i:0;R:44518;i:1;R:40461;}s:24:"1232:owb-api-error-title";a:2:{i:0;R:44518;i:1;R:40461;}s:18:"1232:owb-api-error";a:2:{i:0;R:44518;i:1;R:40461;}s:23:"1232:owb-new-pages-text";a:2:{i:0;R:44518;i:1;R:40461;}s:25:"1232:wikifactorypagetitle";a:2:{i:0;s:17:"wikia-wikifactory";i:1;R:40461;}s:16:"1232:wikifactory";a:2:{i:0;R:44566;i:1;R:40461;}s:14:"1232:closewiki";a:2:{i:0;R:44566;i:1;R:40461;}s:16:"1232:wf_city_url";a:2:{i:0;R:44566;i:1;R:40461;}s:15:"1232:wf_city_id";a:2:{i:0;R:44566;i:1;R:40461;}s:18:"1232:wf_city_title";a:2:{i:0;R:44566;i:1;R:40461;}s:20:"1232:wf_city_created";a:2:{i:0;R:44566;i:1;R:40461;}s:26:"1232:wf_city_founding_user";a:2:{i:0;R:44566;i:1;R:40461;}s:27:"1232:wf_city_founding_email";a:2:{i:0;R:44566;i:1;R:40461;}s:19:"1232:wf_city_public";a:2:{i:0;R:44566;i:1;R:40461;}s:17:"1232:wf_city_lang";a:2:{i:0;R:44566;i:1;R:40461;}s:15:"1232:wf_cc_name";a:2:{i:0;R:44566;i:1;R:40461;}s:31:"1232:wikifactory_removevariable";a:2:{i:0;R:44566;i:1;R:40461;}s:30:"1232:wikifactory_removeconfirm";a:2:{i:0;R:44566;i:1;R:40461;}s:27:"1232:wikifactory-label-info";a:2:{i:0;R:44566;i:1;R:40461;}s:32:"1232:wikifactory-label-variables";a:2:{i:0;R:44566;i:1;R:40461;}s:33:"1232:wikifactory-label-variables2";a:2:{i:0;R:44566;i:1;R:40461;}s:27:"1232:wikifactory-label-hubs";a:2:{i:0;R:44566;i:1;R:40461;}s:30:"1232:wikifactory-label-domains";a:2:{i:0;R:44566;i:1;R:40461;}s:29:"1232:wikifactory-label-return";a:2:{i:0;R:44566;i:1;R:40461;}s:27:"1232:wikifactory-label-clog";a:2:{i:0;R:44566;i:1;R:40461;}s:30:"1232:wikifactory-label-actions";a:2:{i:0;R:44566;i:1;R:40461;}s:29:"1232:wikifactory-label-google";a:2:{i:0;R:44566;i:1;R:40461;}s:28:"1232:wikifactory-label-close";a:2:{i:0;R:44566;i:1;R:40461;}s:27:"1232:wikifactory-label-tags";a:2:{i:0;R:44566;i:1;R:40461;}s:28:"1232:wikifactory-label-tags2";a:2:{i:0;R:44566;i:1;R:40461;}s:31:"1232:wikifactory-label-masstags";a:2:{i:0;R:44566;i:1;R:40461;}s:31:"1232:wikifactory-label-findtags";a:2:{i:0;R:44566;i:1;R:40461;}s:37:"1232:wikifactory-label-ezsharedupload";a:2:{i:0;R:44566;i:1;R:40461;}s:34:"1232:wikifactory-label-eznamespace";a:2:{i:0;R:44566;i:1;R:40461;}s:30:"1232:wikifactory-label-compare";a:2:{i:0;R:44566;i:1;R:40461;}s:22:"1232:right-wikifactory";a:2:{i:0;R:44566;i:1;R:40461;}s:28:"1232:wikifactory-domain-edit";a:2:{i:0;R:44566;i:1;R:40461;}s:30:"1232:wikifactory-domain-remove";a:2:{i:0;R:44566;i:1;R:40461;}s:31:"1232:wikifactory-domain-setmain";a:2:{i:0;R:44566;i:1;R:40461;}s:32:"1232:closewiki-check-and-confirm";a:2:{i:0;R:44566;i:1;R:40461;}s:26:"1232:closewiki-redirect-to";a:2:{i:0;R:44566;i:1;R:40461;}s:22:"1232:closewiki-message";a:2:{i:0;R:44566;i:1;R:40461;}s:29:"1232:closewiki-confirm-button";a:2:{i:0;R:44566;i:1;R:40461;}s:23:"1232:closewiki-nbr-wiki";a:2:{i:0;R:44566;i:1;R:40461;}s:26:"1232:closewiki-wiki-closed";a:2:{i:0;R:44566;i:1;R:40461;}s:34:"1232:closewiki-wiki-closed_removed";a:2:{i:0;R:44566;i:1;R:40461;}s:35:"1232:closewiki-wiki-closed_redirect";a:2:{i:0;R:44566;i:1;R:40461;}s:23:"1232:closewiki-dump-url";a:2:{i:0;R:44566;i:1;R:40461;}s:25:"1232:closewiki-images-url";a:2:{i:0;R:44566;i:1;R:40461;}s:22:"1232:closewiki-unknown";a:2:{i:0;R:44566;i:1;R:40461;}s:21:"1232:closewiki-return";a:2:{i:0;R:44566;i:1;R:40461;}s:33:"1232:wikifactory-button-saveparse";a:2:{i:0;R:44566;i:1;R:40461;}s:28:"1232:wikifactory-button-save";a:2:{i:0;R:44566;i:1;R:40461;}s:52:"1232:wikifactory-public-status-change-default-reason";a:2:{i:0;R:44566;i:1;R:40461;}s:34:"1232:awc-metrics-language-top-list";a:2:{i:0;R:44566;i:1;R:40461;}s:22:"1232:awc-metrics-wikis";a:2:{i:0;R:44566;i:1;R:40461;}s:23:"1232:awc-metrics-select";a:2:{i:0;R:44566;i:1;R:40461;}s:28:"1232:awc-metrics-by-language";a:2:{i:0;R:44566;i:1;R:40461;}s:25:"1232:awc-metrics-category";a:2:{i:0;R:44566;i:1;R:40461;}s:20:"1232:awc-metrics-all";a:2:{i:0;R:44566;i:1;R:40461;}s:30:"1232:awc-metrics-all-languages";a:2:{i:0;R:44566;i:1;R:40461;}s:23:"1232:awc-metrics-search";a:2:{i:0;R:44566;i:1;R:40461;}s:25:"1232:awc-metrics-one-week";a:2:{i:0;R:44566;i:1;R:40461;}s:26:"1232:awc-metrics-two-weeks";a:2:{i:0;R:44566;i:1;R:40461;}s:28:"1232:awc-metrics-three-weeks";a:2:{i:0;R:44566;i:1;R:40461;}s:27:"1232:awc-metrics-one-months";a:2:{i:0;R:44566;i:1;R:40461;}s:27:"1232:awc-metrics-two-months";a:2:{i:0;R:44566;i:1;R:40461;}s:29:"1232:awc-metrics-three-months";a:2:{i:0;R:44566;i:1;R:40461;}s:26:"1232:awc-metrics-half-year";a:2:{i:0;R:44566;i:1;R:40461;}s:25:"1232:awc-metrics-by-email";a:2:{i:0;R:44566;i:1;R:40461;}s:24:"1232:awc-metrics-by-user";a:2:{i:0;R:44566;i:1;R:40461;}s:26:"1232:awc-metrics-by-dbname";a:2:{i:0;R:44566;i:1;R:40461;}s:25:"1232:awc-metrics-by-title";a:2:{i:0;R:44566;i:1;R:40461;}s:27:"1232:awc-metrics-by-domains";a:2:{i:0;R:44566;i:1;R:40461;}s:26:"1232:awc-metrics-not-found";a:2:{i:0;R:44566;i:1;R:40461;}s:27:"1232:awc-metrics-nbr-result";a:2:{i:0;R:44566;i:1;R:40461;}s:32:"1232:awc-metrics-created-between";a:2:{i:0;R:44566;i:1;R:40461;}s:24:"1232:awc-metrics-wikians";a:2:{i:0;R:44566;i:1;R:40461;}s:25:"1232:awc-metrics-articles";a:2:{i:0;R:44566;i:1;R:40461;}s:33:"1232:awc-metrics-articles-per-day";a:2:{i:0;R:44566;i:1;R:40461;}s:35:"1232:awc-metrics-revisions-per-page";a:2:{i:0;R:44566;i:1;R:40461;}s:33:"1232:awc-metrics-article-avg-size";a:2:{i:0;R:44566;i:1;R:40461;}s:22:"1232:awc-metrics-edits";a:2:{i:0;R:44566;i:1;R:40461;}s:24:"1232:awc-metrics-db-size";a:2:{i:0;R:44566;i:1;R:40461;}s:23:"1232:awc-metrics-images";a:2:{i:0;R:44566;i:1;R:40461;}s:26:"1232:awc-metrics-all-users";a:2:{i:0;R:44566;i:1;R:40461;}s:39:"1232:awc-metrics-all-users-edit-main-ns";a:2:{i:0;R:44566;i:1;R:40461;}s:26:"1232:awc-metrics-pageviews";a:2:{i:0;R:44566;i:1;R:40461;}s:27:"1232:awc-metrics-statistics";a:2:{i:0;R:44566;i:1;R:40461;}s:22:"1232:awc-metrics-close";a:2:{i:0;R:44566;i:1;R:40461;}s:29:"1232:awc-metrics-close-action";a:2:{i:0;R:44566;i:1;R:40461;}s:23:"1232:awc-metrics-active";a:2:{i:0;R:44566;i:1;R:40461;}s:23:"1232:awc-metrics-closed";a:2:{i:0;R:44566;i:1;R:40461;}s:27:"1232:awc-metrics-redirected";a:2:{i:0;R:44566;i:1;R:40461;}s:24:"1232:awc-metrics-removed";a:2:{i:0;R:44566;i:1;R:40461;}s:21:"1232:awc-metrics-hubs";a:2:{i:0;R:44566;i:1;R:40461;}s:25:"1232:awc-metrics-news-day";a:2:{i:0;R:44566;i:1;R:40461;}s:26:"1232:awc-metrics-sum-month";a:2:{i:0;R:44566;i:1;R:40461;}s:24:"1232:awc-metrics-sum-day";a:2:{i:0;R:44566;i:1;R:40461;}s:27:"1232:awc-metrics-fewer-than";a:2:{i:0;R:44566;i:1;R:40461;}s:28:"1232:awc-metrics-edits-label";a:2:{i:0;R:44566;i:1;R:40461;}s:27:"1232:awc-metrics-this-month";a:2:{i:0;R:44566;i:1;R:40461;}s:27:"1232:awc-metrics-last-month";a:2:{i:0;R:44566;i:1;R:40461;}s:32:"1232:awc-metrics-pageviews-label";a:2:{i:0;R:44566;i:1;R:40461;}s:29:"1232:awc-metrics-close-listed";a:2:{i:0;R:44566;i:1;R:40461;}s:30:"1232:awc-metrics-close-checked";a:2:{i:0;R:44566;i:1;R:40461;}s:28:"1232:awc-metrics-exact-match";a:2:{i:0;R:44566;i:1;R:40461;}s:29:"1232:awc-metrics-recordspager";a:2:{i:0;R:44566;i:1;R:40461;}s:16:"1232:closed-wiki";a:2:{i:0;R:44566;i:1;R:40461;}s:21:"1232:closed-wiki-info";a:2:{i:0;R:44566;i:1;R:40461;}s:23:"1232:disabled-wiki-info";a:2:{i:0;R:44566;i:1;R:40461;}s:28:"1232:closed-wiki-dump-exists";a:2:{i:0;R:44566;i:1;R:40461;}s:30:"1232:closed-wiki-dump-noexists";a:2:{i:0;R:44566;i:1;R:40461;}s:28:"1232:closed-wiki-create-wiki";a:2:{i:0;R:44566;i:1;R:40461;}s:23:"1232:closed-wiki-policy";a:2:{i:0;R:44566;i:1;R:40461;}s:23:"1232:closed-create-dump";a:2:{i:0;R:44566;i:1;R:40461;}s:32:"1232:closed-create-image-archive";a:2:{i:0;R:44566;i:1;R:40461;}s:34:"1232:closed-delete-database-images";a:2:{i:0;R:44566;i:1;R:40461;}s:25:"1232:closed-delete-images";a:2:{i:0;R:44566;i:1;R:40461;}s:20:"1232:closed-free-url";a:2:{i:0;R:44566;i:1;R:40461;}s:22:"1232:closed-hide-dumps";a:2:{i:0;R:44566;i:1;R:40461;}s:24:"1232:closed-redirect-url";a:2:{i:0;R:44566;i:1;R:40461;}s:23:"1232:closed-confirm-btn";a:2:{i:0;R:44566;i:1;R:40461;}s:26:"1232:closed-redirect-alert";a:2:{i:0;R:44566;i:1;R:40461;}s:18:"1232:closed-reason";a:2:{i:0;R:44566;i:1;R:40461;}s:18:"1232:newwikisgraph";a:2:{i:0;R:44566;i:1;R:40461;}s:31:"1232:newwikisgraph-report-title";a:2:{i:0;R:44566;i:1;R:40461;}s:32:"1232:newwikisgraph-wikis-created";a:2:{i:0;R:44566;i:1;R:40461;}s:28:"1232:newwikisgraph-param-all";a:2:{i:0;R:44566;i:1;R:40461;}s:30:"1232:newwikisgraph-param-other";a:2:{i:0;R:44566;i:1;R:40461;}s:18:"1232:dump-database";a:2:{i:0;s:22:"wikia-wikifactorydumps";i:1;R:40461;}s:23:"1232:dump-database-info";a:2:{i:0;R:44693;i:1;R:40461;}s:29:"1232:dump-database-curr-pages";a:2:{i:0;R:44693;i:1;R:40461;}s:34:"1232:dump-database-curr-pages-info";a:2:{i:0;R:44693;i:1;R:40461;}s:29:"1232:dump-database-full-pages";a:2:{i:0;R:44693;i:1;R:40461;}s:34:"1232:dump-database-full-pages-info";a:2:{i:0;R:44693;i:1;R:40461;}s:26:"1232:dump-database-request";a:2:{i:0;R:44693;i:1;R:40461;}s:31:"1232:dump-database-request-info";a:2:{i:0;R:44693;i:1;R:40461;}s:33:"1232:dump-database-request-submit";a:2:{i:0;R:44693;i:1;R:40461;}s:44:"1232:dump-database-request-already-submitted";a:2:{i:0;R:44693;i:1;R:40461;}s:36:"1232:dump-database-request-requested";a:2:{i:0;R:44693;i:1;R:40461;}s:28:"1232:dump-database-info-more";a:2:{i:0;R:44693;i:1;R:40461;}s:24:"1232:wikifactoryreporter";a:2:{i:0;s:25:"wikia-wikifactoryreporter";i:1;R:40461;}s:17:"1232:wikifeatures";a:2:{i:0;s:18:"wikia-wikifeatures";i:1;R:40461;}s:23:"1232:wikifeatures-title";a:2:{i:0;R:44708;i:1;R:40461;}s:25:"1232:wikifeatures-heading";a:2:{i:0;R:44708;i:1;R:40461;}s:26:"1232:wikifeatures-creative";a:2:{i:0;R:44708;i:1;R:40461;}s:30:"1232:wikifeatures-labs-heading";a:2:{i:0;R:44708;i:1;R:40461;}s:31:"1232:wikifeatures-labs-creative";a:2:{i:0;R:44708;i:1;R:40461;}s:26:"1232:wikifeatures-feedback";a:2:{i:0;R:44708;i:1;R:40461;}s:34:"1232:wikifeatures-error-permission";a:2:{i:0;R:44708;i:1;R:40461;}s:41:"1232:wikifeatures-error-invalid-parameter";a:2:{i:0;R:44708;i:1;R:40461;}s:31:"1232:wikifeatures-error-message";a:2:{i:0;R:44708;i:1;R:40461;}s:36:"1232:wikifeatures-error-spam-attempt";a:2:{i:0;R:44708;i:1;R:40461;}s:40:"1232:wikifeatures-error-invalid-category";a:2:{i:0;R:44708;i:1;R:40461;}s:31:"1232:wikifeatures-toggle-active";a:2:{i:0;R:44708;i:1;R:40461;}s:33:"1232:wikifeatures-toggle-inactive";a:2:{i:0;R:44708;i:1;R:40461;}s:27:"1232:wikifeatures-active-on";a:2:{i:0;R:44708;i:1;R:40461;}s:37:"1232:wikifeatures-category-choose-one";a:2:{i:0;R:44708;i:1;R:40461;}s:35:"1232:wikifeatures-love-this-project";a:2:{i:0;R:44708;i:1;R:40461;}s:35:"1232:wikifeatures-hate-this-project";a:2:{i:0;R:44708;i:1;R:40461;}s:38:"1232:wikifeatures-problem-with-project";a:2:{i:0;R:44708;i:1;R:40461;}s:37:"1232:wikifeatures-an-idea-for-project";a:2:{i:0;R:44708;i:1;R:40461;}s:34:"1232:wikifeatures-feedback-heading";a:2:{i:0;R:44708;i:1;R:40461;}s:38:"1232:wikifeatures-feedback-description";a:2:{i:0;R:44708;i:1;R:40461;}s:37:"1232:wikifeatures-feedback-type-label";a:2:{i:0;R:44708;i:1;R:40461;}s:40:"1232:wikifeatures-feedback-comment-label";a:2:{i:0;R:44708;i:1;R:40461;}s:34:"1232:wikifeatures-feedback-success";a:2:{i:0;R:44708;i:1;R:40461;}s:36:"1232:wikifeatures-deactivate-heading";a:2:{i:0;R:44708;i:1;R:40461;}s:40:"1232:wikifeatures-deactivate-description";a:2:{i:0;R:44708;i:1;R:40461;}s:41:"1232:wikifeatures-deactivate-notification";a:2:{i:0;R:44708;i:1;R:40461;}s:43:"1232:wikifeatures-deactivate-confirm-button";a:2:{i:0;R:44708;i:1;R:40461;}s:42:"1232:wikifeatures-deactivate-cancel-button";a:2:{i:0;R:44708;i:1;R:40461;}s:31:"1232:wikifeatures-promotion-new";a:2:{i:0;R:44708;i:1;R:40461;}s:28:"1232:wikifeatures-oasis-only";a:2:{i:0;R:44708;i:1;R:40461;}s:60:"1232:wikifeatures-feature-heading-wgshowtoplistsincreatepage";a:2:{i:0;R:44708;i:1;R:40461;}s:64:"1232:wikifeatures-feature-description-wgshowtoplistsincreatepage";a:2:{i:0;R:44708;i:1;R:40461;}s:57:"1232:wikifeatures-feature-heading-wgenableachievementsext";a:2:{i:0;R:44708;i:1;R:40461;}s:61:"1232:wikifeatures-feature-description-wgenableachievementsext";a:2:{i:0;R:44708;i:1;R:40461;}s:60:"1232:wikifeatures-feature-heading-wgenablearticlecommentsext";a:2:{i:0;R:44708;i:1;R:40461;}s:64:"1232:wikifeatures-feature-description-wgenablearticlecommentsext";a:2:{i:0;R:44708;i:1;R:40461;}s:63:"1232:wikifeatures-feature-heading-wgenablecategoryexhibitionext";a:2:{i:0;R:44708;i:1;R:40461;}s:67:"1232:wikifeatures-feature-description-wgenablecategoryexhibitionext";a:2:{i:0;R:44708;i:1;R:40461;}s:46:"1232:wikifeatures-feature-heading-wgenablechat";a:2:{i:0;R:44708;i:1;R:40461;}s:50:"1232:wikifeatures-feature-description-wgenablechat";a:2:{i:0;R:44708;i:1;R:40461;}s:59:"1232:wikifeatures-feature-heading-wgenableeditpagereskinext";a:2:{i:0;R:44708;i:1;R:40461;}s:63:"1232:wikifeatures-feature-description-wgenableeditpagereskinext";a:2:{i:0;R:44708;i:1;R:40461;}s:53:"1232:wikifeatures-feature-heading-wgenableajaxpollext";a:2:{i:0;R:44708;i:1;R:40461;}s:57:"1232:wikifeatures-feature-description-wgenableajaxpollext";a:2:{i:0;R:44708;i:1;R:40461;}s:59:"1232:wikifeatures-feature-heading-wgenablepagelayoutbuilder";a:2:{i:0;R:44708;i:1;R:40461;}s:63:"1232:wikifeatures-feature-description-wgenablepagelayoutbuilder";a:2:{i:0;R:44708;i:1;R:40461;}s:54:"1232:wikifeatures-feature-heading-wgenableblogarticles";a:2:{i:0;R:44708;i:1;R:40461;}s:58:"1232:wikifeatures-feature-description-wgenableblogarticles";a:2:{i:0;R:44708;i:1;R:40461;}s:49:"1232:wikifeatures-feature-heading-wgenablewallext";a:2:{i:0;R:44708;i:1;R:40461;}s:53:"1232:wikifeatures-feature-description-wgenablewallext";a:2:{i:0;R:44708;i:1;R:40461;}s:46:"1232:wikifeatures-feature-heading-wgoasisnavv2";a:2:{i:0;R:44708;i:1;R:40461;}s:50:"1232:wikifeatures-feature-description-wgoasisnavv2";a:2:{i:0;R:44708;i:1;R:40461;}s:43:"1232:wikifeatures-feature-heading-emptylabs";a:2:{i:0;R:44708;i:1;R:40461;}s:47:"1232:wikifeatures-feature-description-emptylabs";a:2:{i:0;R:44708;i:1;R:40461;}s:26:"1232:wikifeatures-log-name";a:2:{i:0;R:44708;i:1;R:40461;}s:28:"1232:wikifeatures-log-header";a:2:{i:0;R:44708;i:1;R:40461;}s:14:"1232:wikistats";a:2:{i:0;s:15:"wikia-wikistats";i:1;R:40461;}s:20:"1232:wikistats_wikia";a:2:{i:0;R:44767;i:1;R:40461;}s:24:"1232:wikistats_pagetitle";a:2:{i:0;R:44767;i:1;R:40461;}s:19:"1232:wikistats_info";a:2:{i:0;R:44767;i:1;R:40461;}s:29:"1232:wikistats_mainstats_info";a:2:{i:0;R:44767;i:1;R:40461;}s:26:"1232:wikistats_comparision";a:2:{i:0;R:44767;i:1;R:40461;}s:28:"1232:wikistats_showstats_btn";a:2:{i:0;R:44767;i:1;R:40461;}s:32:"1232:wikistats_wikia_information";a:2:{i:0;R:44767;i:1;R:40461;}s:28:"1232:wikiastast_refresh_data";a:2:{i:0;R:44767;i:1;R:40461;}s:25:"1232:wikistats_showcharts";a:2:{i:0;R:44767;i:1;R:40461;}s:25:"1232:wikistats_export_xls";a:2:{i:0;R:44767;i:1;R:40461;}s:30:"1232:wikistats_panel_close_btn";a:2:{i:0;R:44767;i:1;R:40461;}s:29:"1232:wikistats_daterange_from";a:2:{i:0;R:44767;i:1;R:40461;}s:27:"1232:wikistats_daterange_to";a:2:{i:0;R:44767;i:1;R:40461;}s:28:"1232:wikistats_nostats_found";a:2:{i:0;R:44767;i:1;R:40461;}s:30:"1232:wikistats_pviews_notfound";a:2:{i:0;R:44767;i:1;R:40461;}s:27:"1232:wikistats_invalid_date";a:2:{i:0;R:44767;i:1;R:40461;}s:30:"1232:wikistats_distrib_article";a:2:{i:0;R:44767;i:1;R:40461;}s:32:"1232:wikistats_breakdown_editors";a:2:{i:0;R:44767;i:1;R:40461;}s:30:"1232:wikistats_breakdown_anons";a:2:{i:0;R:44767;i:1;R:40461;}s:36:"1232:wikistats_active_absent_wikians";a:2:{i:0;R:44767;i:1;R:40461;}s:27:"1232:wikistats_anon_wikians";a:2:{i:0;R:44767;i:1;R:40461;}s:33:"1232:wikistats_anon_wikians_count";a:2:{i:0;R:44767;i:1;R:40461;}s:31:"1232:wikistats_latest_pageviews";a:2:{i:0;R:44767;i:1;R:40461;}s:31:"1232:wikistats_latest_userviews";a:2:{i:0;R:44767;i:1;R:40461;}s:31:"1232:wikistats_active_useredits";a:2:{i:0;R:44767;i:1;R:40461;}s:37:"1232:wikistats_latest_userviews_pages";a:2:{i:0;R:44767;i:1;R:40461;}s:36:"1232:wikistats_latest_userviews_list";a:2:{i:0;R:44767;i:1;R:40461;}s:40:"1232:wikistats_latest_pageviews_subtitle";a:2:{i:0;R:44767;i:1;R:40461;}s:24:"1232:wikistats_pageviews";a:2:{i:0;R:44767;i:1;R:40461;}s:31:"1232:wikistats_article_one_link";a:2:{i:0;R:44767;i:1;R:40461;}s:38:"1232:wikistats_recently_active_wikians";a:2:{i:0;R:44767;i:1;R:40461;}s:38:"1232:wikistats_recently_absent_wikians";a:2:{i:0;R:44767;i:1;R:40461;}s:38:"1232:wikistats_active_wikians_subtitle";a:2:{i:0;R:44767;i:1;R:40461;}s:36:"1232:wikistats_anon_wikians_subtitle";a:2:{i:0;R:44767;i:1;R:40461;}s:43:"1232:wikistats_active_wikians_subtitle_info";a:2:{i:0;R:44767;i:1;R:40461;}s:32:"1232:wikistats_pageviews_subtext";a:2:{i:0;R:44767;i:1;R:40461;}s:33:"1232:wikistats_pageviews_counting";a:2:{i:0;R:44767;i:1;R:40461;}s:32:"1232:wikistats_pageviews_percent";a:2:{i:0;R:44767;i:1;R:40461;}s:38:"1232:wikistats_distrib_article_subtext";a:2:{i:0;R:44767;i:1;R:40461;}s:39:"1232:wikistats_distrib_article_counting";a:2:{i:0;R:44767;i:1;R:40461;}s:32:"1232:wikistats_namespace_records";a:2:{i:0;R:44767;i:1;R:40461;}s:25:"1232:wikistats_page_edits";a:2:{i:0;R:44767;i:1;R:40461;}s:34:"1232:wikistats_other_nspaces_edits";a:2:{i:0;R:44767;i:1;R:40461;}s:31:"1232:wikistats_page_edits_count";a:2:{i:0;R:44767;i:1;R:40461;}s:40:"1232:wikistats_other_nspaces_edits_count";a:2:{i:0;R:44767;i:1;R:40461;}s:34:"1232:wikistats_active_wikians_date";a:2:{i:0;R:44767;i:1;R:40461;}s:25:"1232:wikistats_active_day";a:2:{i:0;R:44767;i:1;R:40461;}s:27:"1232:wikistats_active_month";a:2:{i:0;R:44767;i:1;R:40461;}s:26:"1232:wikistats_active_year";a:2:{i:0;R:44767;i:1;R:40461;}s:28:"1232:wikistats_active_months";a:2:{i:0;R:44767;i:1;R:40461;}s:29:"1232:wikistats_number_editors";a:2:{i:0;R:44767;i:1;R:40461;}s:27:"1232:wikistats_number_anons";a:2:{i:0;R:44767;i:1;R:40461;}s:22:"1232:wikistats_wikians";a:2:{i:0;R:44767;i:1;R:40461;}s:23:"1232:wikistats_articles";a:2:{i:0;R:44767;i:1;R:40461;}s:28:"1232:wikistats_articles_text";a:2:{i:0;R:44767;i:1;R:40461;}s:23:"1232:wikistats_archived";a:2:{i:0;R:44767;i:1;R:40461;}s:20:"1232:wikistats_other";a:2:{i:0;R:44767;i:1;R:40461;}s:23:"1232:wikistats_database";a:2:{i:0;R:44767;i:1;R:40461;}s:20:"1232:wikistats_links";a:2:{i:0;R:44767;i:1;R:40461;}s:24:"1232:wikistats_reg_users";a:2:{i:0;R:44767;i:1;R:40461;}s:21:"1232:wikistats_images";a:2:{i:0;R:44767;i:1;R:40461;}s:20:"1232:wikistats_video";a:2:{i:0;R:44767;i:1;R:40461;}s:20:"1232:wikistats_media";a:2:{i:0;R:44767;i:1;R:40461;}s:28:"1232:wikistats_video_embeded";a:2:{i:0;R:44767;i:1;R:40461;}s:30:"1232:wikistats_uploaded_images";a:2:{i:0;R:44767;i:1;R:40461;}s:25:"1232:wikistats_with_links";a:2:{i:0;R:44767;i:1;R:40461;}s:31:"1232:wikistats_connection_error";a:2:{i:0;R:44767;i:1;R:40461;}s:28:"1232:wikistats_distrib_edits";a:2:{i:0;R:44767;i:1;R:40461;}s:30:"1232:wikistats_distrib_wikians";a:2:{i:0;R:44767;i:1;R:40461;}s:34:"1232:wikistats_distrib_edits_total";a:2:{i:0;R:44767;i:1;R:40461;}s:19:"1232:wikistats_date";a:2:{i:0;R:44767;i:1;R:40461;}s:24:"1232:wikistats_namespace";a:2:{i:0;R:44767;i:1;R:40461;}s:19:"1232:wikistats_show";a:2:{i:0;R:44767;i:1;R:40461;}s:20:"1232:wikistats_stats";a:2:{i:0;R:44767;i:1;R:40461;}s:19:"1232:wikistats_hide";a:2:{i:0;R:44767;i:1;R:40461;}s:23:"1232:wikistats_wikiname";a:2:{i:0;R:44767;i:1;R:40461;}s:25:"1232:wikistats_wikidbname";a:2:{i:0;R:44767;i:1;R:40461;}s:27:"1232:wikistats_wikicategory";a:2:{i:0;R:44767;i:1;R:40461;}s:21:"1232:wikistats_wikiid";a:2:{i:0;R:44767;i:1;R:40461;}s:19:"1232:wikistats_mean";a:2:{i:0;R:44767;i:1;R:40461;}s:25:"1232:wikistats_largerthan";a:2:{i:0;R:44767;i:1;R:40461;}s:23:"1232:wikistats_username";a:2:{i:0;R:44767;i:1;R:40461;}s:24:"1232:wikistats_usernames";a:2:{i:0;R:44767;i:1;R:40461;}s:20:"1232:wikistats_edits";a:2:{i:0;R:44767;i:1;R:40461;}s:20:"1232:wikistats_bytes";a:2:{i:0;R:44767;i:1;R:40461;}s:19:"1232:wikistats_size";a:2:{i:0;R:44767;i:1;R:40461;}s:20:"1232:wikistats_words";a:2:{i:0;R:44767;i:1;R:40461;}s:23:"1232:wikistats_internal";a:2:{i:0;R:44767;i:1;R:40461;}s:24:"1232:wikistats_interwiki";a:2:{i:0;R:44767;i:1;R:40461;}s:20:"1232:wikistats_image";a:2:{i:0;R:44767;i:1;R:40461;}s:23:"1232:wikistats_external";a:2:{i:0;R:44767;i:1;R:40461;}s:22:"1232:wikistats_rollups";a:2:{i:0;R:44767;i:1;R:40461;}s:25:"1232:wikistats_namespaces";a:2:{i:0;R:44767;i:1;R:40461;}s:24:"1232:wikistats_redirects";a:2:{i:0;R:44767;i:1;R:40461;}s:34:"1232:wikistats_edited_in_namespace";a:2:{i:0;R:44767;i:1;R:40461;}s:29:"1232:wikistats_main_namespace";a:2:{i:0;R:44767;i:1;R:40461;}s:30:"1232:wikistats_image_namespace";a:2:{i:0;R:44767;i:1;R:40461;}s:28:"1232:wikistats_page_requests";a:2:{i:0;R:44767;i:1;R:40461;}s:21:"1232:wikistats_visits";a:2:{i:0;R:44767;i:1;R:40461;}s:26:"1232:wikistats_new_per_day";a:2:{i:0;R:44767;i:1;R:40461;}s:23:"1232:wikistats_official";a:2:{i:0;R:44767;i:1;R:40461;}s:26:"1232:wikistats_more_200_ch";a:2:{i:0;R:44767;i:1;R:40461;}s:20:"1232:wikistats_count";a:2:{i:0;R:44767;i:1;R:40461;}s:27:"1232:wikistats_unique_users";a:2:{i:0;R:44767;i:1;R:40461;}s:25:"1232:wikistats_first_edit";a:2:{i:0;R:44767;i:1;R:40461;}s:24:"1232:wikistats_last_edit";a:2:{i:0;R:44767;i:1;R:40461;}s:19:"1232:wikistats_rank";a:2:{i:0;R:44767;i:1;R:40461;}s:29:"1232:wikistats_previous_month";a:2:{i:0;R:44767;i:1;R:40461;}s:20:"1232:wikistats_total";a:2:{i:0;R:44767;i:1;R:40461;}s:18:"1232:wikistats_new";a:2:{i:0;R:44767;i:1;R:40461;}s:23:"1232:wikistats_register";a:2:{i:0;R:44767;i:1;R:40461;}s:25:"1232:wikistats_unregister";a:2:{i:0;R:44767;i:1;R:40461;}s:23:"1232:wikistats_more_txt";a:2:{i:0;R:44767;i:1;R:40461;}s:18:"1232:wikistats_now";a:2:{i:0;R:44767;i:1;R:40461;}s:24:"1232:wikistats_prev_rank";a:2:{i:0;R:44767;i:1;R:40461;}s:28:"1232:wikistats_prev_rank_xls";a:2:{i:0;R:44767;i:1;R:40461;}s:23:"1232:wikistats_days_ago";a:2:{i:0;R:44767;i:1;R:40461;}s:24:"1232:wikistats_month_ago";a:2:{i:0;R:44767;i:1;R:40461;}s:22:"1232:wikistats_wikiurl";a:2:{i:0;R:44767;i:1;R:40461;}s:26:"1232:wikistats_wikicreated";a:2:{i:0;R:44767;i:1;R:40461;}s:23:"1232:wikistats_wikilang";a:2:{i:0;R:44767;i:1;R:40461;}s:29:"1232:wikistats_note_mainstats";a:2:{i:0;R:44767;i:1;R:40461;}s:39:"1232:wikistats_history_mainstats_value1";a:2:{i:0;R:44767;i:1;R:40461;}s:39:"1232:wikistats_history_mainstats_value2";a:2:{i:0;R:44767;i:1;R:40461;}s:39:"1232:wikistats_history_mainstats_value3";a:2:{i:0;R:44767;i:1;R:40461;}s:39:"1232:wikistats_history_mainstats_value4";a:2:{i:0;R:44767;i:1;R:40461;}s:23:"1232:wikistats_column_a";a:2:{i:0;R:44767;i:1;R:40461;}s:23:"1232:wikistats_column_b";a:2:{i:0;R:44767;i:1;R:40461;}s:23:"1232:wikistats_column_c";a:2:{i:0;R:44767;i:1;R:40461;}s:23:"1232:wikistats_column_d";a:2:{i:0;R:44767;i:1;R:40461;}s:23:"1232:wikistats_column_e";a:2:{i:0;R:44767;i:1;R:40461;}s:23:"1232:wikistats_column_f";a:2:{i:0;R:44767;i:1;R:40461;}s:23:"1232:wikistats_column_g";a:2:{i:0;R:44767;i:1;R:40461;}s:23:"1232:wikistats_column_h";a:2:{i:0;R:44767;i:1;R:40461;}s:23:"1232:wikistats_column_i";a:2:{i:0;R:44767;i:1;R:40461;}s:23:"1232:wikistats_column_j";a:2:{i:0;R:44767;i:1;R:40461;}s:23:"1232:wikistats_column_k";a:2:{i:0;R:44767;i:1;R:40461;}s:22:"1232:wikistats_website";a:2:{i:0;R:44767;i:1;R:40461;}s:21:"1232:wikistats_tables";a:2:{i:0;R:44767;i:1;R:40461;}s:21:"1232:wikistats_charts";a:2:{i:0;R:44767;i:1;R:40461;}s:31:"1232:wikistats_back_to_mainpage";a:2:{i:0;R:44767;i:1;R:40461;}s:31:"1232:wikistats_back_to_prevpage";a:2:{i:0;R:44767;i:1;R:40461;}s:30:"1232:wikistats_trend_mean_info";a:2:{i:0;R:44767;i:1;R:40461;}s:32:"1232:wikistats_trend_growth_info";a:2:{i:0;R:44767;i:1;R:40461;}s:26:"1232:wikistats_trend_value";a:2:{i:0;R:44767;i:1;R:40461;}s:28:"1232:wikistats_trend_formula";a:2:{i:0;R:44767;i:1;R:40461;}s:28:"1232:wikistats_trend_ordered";a:2:{i:0;R:44767;i:1;R:40461;}s:31:"1232:wikistats_trend_where_text";a:2:{i:0;R:44767;i:1;R:40461;}s:35:"1232:wikistats_trend_all_wikia_text";a:2:{i:0;R:44767;i:1;R:40461;}s:30:"1232:wikistats_always_selected";a:2:{i:0;R:44767;i:1;R:40461;}s:34:"1232:wikistats_creation_wikia_text";a:2:{i:0;R:44767;i:1;R:40461;}s:38:"1232:wikistats_creation_wikia_filename";a:2:{i:0;R:44767;i:1;R:40461;}s:36:"1232:wikistats_creation_panel_header";a:2:{i:0;R:44767;i:1;R:40461;}s:30:"1232:wikistats_creation_legend";a:2:{i:0;R:44767;i:1;R:40461;}s:32:"1232:wikistats_select_statistics";a:2:{i:0;R:44767;i:1;R:40461;}s:38:"1232:wikistats_select_wikia_statistics";a:2:{i:0;R:44767;i:1;R:40461;}s:30:"1232:wikistats_xls_files_stats";a:2:{i:0;R:44767;i:1;R:40461;}s:30:"1232:wikistats_full_dump_stats";a:2:{i:0;R:44767;i:1;R:40461;}s:33:"1232:wikistats_current_dump_stats";a:2:{i:0;R:44767;i:1;R:40461;}s:34:"1232:wikistats_database_name_stats";a:2:{i:0;R:44767;i:1;R:40461;}s:28:"1232:wikistats_dbdumps_stats";a:2:{i:0;R:44767;i:1;R:40461;}s:26:"1232:wikistats_please_wait";a:2:{i:0;R:44767;i:1;R:40461;}s:27:"1232:wikistats_xls_generate";a:2:{i:0;R:44767;i:1;R:40461;}s:25:"1232:wikistats_xls_cancel";a:2:{i:0;R:44767;i:1;R:40461;}s:26:"1232:wikistats_select_text";a:2:{i:0;R:44767;i:1;R:40461;}s:25:"1232:wikistats_select_btn";a:2:{i:0;R:44767;i:1;R:40461;}s:31:"1232:wikistats_xls_uncheck_list";a:2:{i:0;R:44767;i:1;R:40461;}s:32:"1232:wikistats_xls_press_uncheck";a:2:{i:0;R:44767;i:1;R:40461;}s:31:"1232:wikistats_dbdump_generated";a:2:{i:0;R:44767;i:1;R:40461;}s:22:"1232:wikistats_records";a:2:{i:0;R:44767;i:1;R:40461;}s:23:"1232:wikistats_xml_dump";a:2:{i:0;R:44767;i:1;R:40461;}s:27:"1232:wikistats_see_mw_stats";a:2:{i:0;R:44767;i:1;R:40461;}s:35:"1232:wikistats_see_wikia_wide_stats";a:2:{i:0;R:44767;i:1;R:40461;}s:28:"1232:wikistats_see_help_page";a:2:{i:0;R:44767;i:1;R:40461;}s:30:"1232:wikistats_see_definitions";a:2:{i:0;R:44767;i:1;R:40461;}s:33:"1232:wikistats_generate_stats_msg";a:2:{i:0;R:44767;i:1;R:40461;}s:38:"1232:wikistats_generate_xls_file_title";a:2:{i:0;R:44767;i:1;R:40461;}s:29:"1232:wikistats_language_stats";a:2:{i:0;R:44767;i:1;R:40461;}s:37:"1232:wikistats_main_statistics_legend";a:2:{i:0;R:44767;i:1;R:40461;}s:35:"1232:wikistats_ns_statistics_legend";a:2:{i:0;R:44767;i:1;R:40461;}s:38:"1232:wikistats_other_statistics_legend";a:2:{i:0;R:44767;i:1;R:40461;}s:32:"1232:wikistats_statistics_legend";a:2:{i:0;R:44767;i:1;R:40461;}s:31:"1232:wikistats_date_of_generate";a:2:{i:0;R:44767;i:1;R:40461;}s:26:"1232:wikistats_search_text";a:2:{i:0;R:44767;i:1;R:40461;}s:29:"1232:wikistats_sort_list_size";a:2:{i:0;R:44767;i:1;R:40461;}s:33:"1232:wikistats_sort_list_alphabet";a:2:{i:0;R:44767;i:1;R:40461;}s:38:"1232:wikistats_see_old_statistics_page";a:2:{i:0;R:44767;i:1;R:40461;}s:30:"1232:wikistats_show_new_window";a:2:{i:0;R:44767;i:1;R:40461;}s:35:"1232:wikistats_show_nbr_wikis_check";a:2:{i:0;R:44767;i:1;R:40461;}s:31:"1232:wikistats_lifetime_editors";a:2:{i:0;R:44767;i:1;R:40461;}s:28:"1232:wikistats_article_total";a:2:{i:0;R:44767;i:1;R:40461;}s:28:"1232:wikistats_article_edits";a:2:{i:0;R:44767;i:1;R:40461;}s:30:"1232:wikistats_article_created";a:2:{i:0;R:44767;i:1;R:40461;}s:27:"1232:wikistats_article_talk";a:2:{i:0;R:44767;i:1;R:40461;}s:27:"1232:wikistats_blog_created";a:2:{i:0;R:44767;i:1;R:40461;}s:27:"1232:wikistats_blog_comment";a:2:{i:0;R:44767;i:1;R:40461;}s:24:"1232:wikistats_photo_new";a:2:{i:0;R:44767;i:1;R:40461;}s:24:"1232:wikistats_video_new";a:2:{i:0;R:44767;i:1;R:40461;}s:30:"1232:wikistats_user_page_edits";a:2:{i:0;R:44767;i:1;R:40461;}s:30:"1232:wikistats_user_talk_edits";a:2:{i:0;R:44767;i:1;R:40461;}s:28:"1232:wikistats_article_daily";a:2:{i:0;R:44767;i:1;R:40461;}s:28:"1232:wikistats_image_uploads";a:2:{i:0;R:44767;i:1;R:40461;}s:28:"1232:wikistats_video_uploads";a:2:{i:0;R:44767;i:1;R:40461;}s:28:"1232:wikistats_per_namespace";a:2:{i:0;R:44767;i:1;R:40461;}s:27:"1232:wikistats_months_edits";a:2:{i:0;R:44767;i:1;R:40461;}s:22:"1232:wikistats_content";a:2:{i:0;R:44767;i:1;R:40461;}s:30:"1232:wikistats_content_editors";a:2:{i:0;R:44767;i:1;R:40461;}s:21:"1232:wikistats_userns";a:2:{i:0;R:44767;i:1;R:40461;}s:30:"1232:wikistats_other_namespace";a:2:{i:0;R:44767;i:1;R:40461;}s:30:"1232:wikistats_restricted_page";a:2:{i:0;R:44767;i:1;R:40461;}s:33:"1232:wikistats_filename_mainstats";a:2:{i:0;R:44767;i:1;R:40461;}s:30:"1232:wikistats_filename_other1";a:2:{i:0;R:44767;i:1;R:40461;}s:30:"1232:wikistats_filename_other2";a:2:{i:0;R:44767;i:1;R:40461;}s:30:"1232:wikistats_filename_other3";a:2:{i:0;R:44767;i:1;R:40461;}s:30:"1232:wikistats_filename_other4";a:2:{i:0;R:44767;i:1;R:40461;}s:30:"1232:wikistats_filename_other5";a:2:{i:0;R:44767;i:1;R:40461;}s:30:"1232:wikistats_filename_other6";a:2:{i:0;R:44767;i:1;R:40461;}s:30:"1232:wikistats_filename_other7";a:2:{i:0;R:44767;i:1;R:40461;}s:30:"1232:wikistats_filename_other8";a:2:{i:0;R:44767;i:1;R:40461;}s:29:"1232:wikistats_filename_trend";a:2:{i:0;R:44767;i:1;R:40461;}s:32:"1232:wikistats_filename_creation";a:2:{i:0;R:44767;i:1;R:40461;}s:27:"1232:wikistats_code_version";a:2:{i:0;R:44767;i:1;R:40461;}s:30:"1232:wikistats_mediawiki_stats";a:2:{i:0;R:44767;i:1;R:40461;}s:37:"1232:wikistats_statistics_information";a:2:{i:0;R:44767;i:1;R:40461;}s:23:"1232:wikistats_nbr_kilo";a:2:{i:0;R:44767;i:1;R:40461;}s:23:"1232:wikistats_nbr_mega";a:2:{i:0;R:44767;i:1;R:40461;}s:23:"1232:wikistats_nbr_giga";a:2:{i:0;R:44767;i:1;R:40461;}s:25:"1232:wikistats_nbr_format";a:2:{i:0;R:44767;i:1;R:40461;}s:20:"1232:wikistats_daily";a:2:{i:0;R:44767;i:1;R:40461;}s:20:"1232:wikistats_month";a:2:{i:0;R:44767;i:1;R:40461;}s:28:"1232:wikistats_current_month";a:2:{i:0;R:44767;i:1;R:40461;}s:30:"1232:wikistats_wikiawide_stats";a:2:{i:0;R:44767;i:1;R:40461;}s:25:"1232:wikistats_help_stats";a:2:{i:0;R:44767;i:1;R:40461;}s:23:"1232:wikistats_see_also";a:2:{i:0;R:44767;i:1;R:40461;}s:27:"1232:wikistats_language_top";a:2:{i:0;R:44767;i:1;R:40461;}s:27:"1232:wikistats_language_all";a:2:{i:0;R:44767;i:1;R:40461;}s:31:"1232:wikistats_language_toplist";a:2:{i:0;R:44767;i:1;R:40461;}s:27:"1232:wikistats_recordspager";a:2:{i:0;R:44767;i:1;R:40461;}s:20:"1232:wikistats_title";a:2:{i:0;R:44767;i:1;R:40461;}s:27:"1232:wikistats_summary_data";a:2:{i:0;R:44767;i:1;R:40461;}s:30:"1232:wikistats_namespaces_talk";a:2:{i:0;R:44767;i:1;R:40461;}s:35:"1232:wikistats_namespaces_top10list";a:2:{i:0;R:44767;i:1;R:40461;}s:30:"1232:wikistats_namespaces_blog";a:2:{i:0;R:44767;i:1;R:40461;}s:30:"1232:wikistats_namespaces_user";a:2:{i:0;R:44767;i:1;R:40461;}s:37:"1232:wikistats_namespaces_maintenance";a:2:{i:0;R:44767;i:1;R:40461;}s:28:"1232:wikistats_namespace_top";a:2:{i:0;R:44767;i:1;R:40461;}s:35:"1232:wikistats_error_malformed_date";a:2:{i:0;R:44767;i:1;R:40461;}} \ No newline at end of file
diff --git a/MLEB/Translate/tests/phpunit/pagetranslation/FailDoubleOpen.ptfile b/MLEB/Translate/tests/phpunit/pagetranslation/FailDoubleOpen.ptfile
new file mode 100644
index 00000000..0c4008d4
--- /dev/null
+++ b/MLEB/Translate/tests/phpunit/pagetranslation/FailDoubleOpen.ptfile
@@ -0,0 +1,3 @@
+<translate>
+<translate>
+</translate>
diff --git a/MLEB/Translate/tests/phpunit/pagetranslation/FailEmptySection.ptfile b/MLEB/Translate/tests/phpunit/pagetranslation/FailEmptySection.ptfile
new file mode 100644
index 00000000..c31a5e2a
--- /dev/null
+++ b/MLEB/Translate/tests/phpunit/pagetranslation/FailEmptySection.ptfile
@@ -0,0 +1,4 @@
+<translate>
+<!--T:1-->
+
+</translate>
diff --git a/MLEB/Translate/tests/phpunit/pagetranslation/FailMultipleSectionMarkers.ptfile b/MLEB/Translate/tests/phpunit/pagetranslation/FailMultipleSectionMarkers.ptfile
new file mode 100644
index 00000000..11843926
--- /dev/null
+++ b/MLEB/Translate/tests/phpunit/pagetranslation/FailMultipleSectionMarkers.ptfile
@@ -0,0 +1,5 @@
+<translate>
+<!--T:1-->
+<!--T:2-->
+Lorem ipsum dolor
+</translate>
diff --git a/MLEB/Translate/tests/phpunit/pagetranslation/FailNotAtomic.ptfile b/MLEB/Translate/tests/phpunit/pagetranslation/FailNotAtomic.ptfile
new file mode 100644
index 00000000..909c29aa
--- /dev/null
+++ b/MLEB/Translate/tests/phpunit/pagetranslation/FailNotAtomic.ptfile
@@ -0,0 +1,5 @@
+<div>
+<translate>
+This is not fun!
+</div>
+</translate>
diff --git a/MLEB/Translate/tests/phpunit/pagetranslation/FailSectionMarkerPlace.ptfile b/MLEB/Translate/tests/phpunit/pagetranslation/FailSectionMarkerPlace.ptfile
new file mode 100644
index 00000000..2907f48b
--- /dev/null
+++ b/MLEB/Translate/tests/phpunit/pagetranslation/FailSectionMarkerPlace.ptfile
@@ -0,0 +1,3 @@
+<translate>
+Once upon time <!--T:1--> there was a planet called meow.
+</translate>
diff --git a/MLEB/Translate/tests/phpunit/pagetranslation/FailTags.ptfile b/MLEB/Translate/tests/phpunit/pagetranslation/FailTags.ptfile
new file mode 100644
index 00000000..cfee0ed5
--- /dev/null
+++ b/MLEB/Translate/tests/phpunit/pagetranslation/FailTags.ptfile
@@ -0,0 +1,7 @@
+<translate>
+Dog
+<translate>
+Cat
+</translate>
+A cute rabbit
+</translate>
diff --git a/MLEB/Translate/tests/phpunit/pagetranslation/FailTags2.ptfile b/MLEB/Translate/tests/phpunit/pagetranslation/FailTags2.ptfile
new file mode 100644
index 00000000..a15085a6
--- /dev/null
+++ b/MLEB/Translate/tests/phpunit/pagetranslation/FailTags2.ptfile
@@ -0,0 +1,10 @@
+<translate>
+Dog
+<translate>
+Cat
+</translate>
+A cute rabbit
+<translate>
+Cow
+</translate>
+</translate>
diff --git a/MLEB/Translate/tests/phpunit/pagetranslation/FailUnclosed.ptfile b/MLEB/Translate/tests/phpunit/pagetranslation/FailUnclosed.ptfile
new file mode 100644
index 00000000..eb40768b
--- /dev/null
+++ b/MLEB/Translate/tests/phpunit/pagetranslation/FailUnclosed.ptfile
@@ -0,0 +1,2 @@
+<translate>
+The end is missing! \ No newline at end of file
diff --git a/MLEB/Translate/tests/phpunit/pagetranslation/HeaderSection.ptfile b/MLEB/Translate/tests/phpunit/pagetranslation/HeaderSection.ptfile
new file mode 100644
index 00000000..37a70fb1
--- /dev/null
+++ b/MLEB/Translate/tests/phpunit/pagetranslation/HeaderSection.ptfile
@@ -0,0 +1,7 @@
+<translate>
+== Topic == <!--T:1-->
+Some long text here.
+
+<!--T:2-->
+Another paragraph.
+</translate>
diff --git a/MLEB/Translate/tests/phpunit/pagetranslation/HeaderSection.ptsource b/MLEB/Translate/tests/phpunit/pagetranslation/HeaderSection.ptsource
new file mode 100644
index 00000000..37a70fb1
--- /dev/null
+++ b/MLEB/Translate/tests/phpunit/pagetranslation/HeaderSection.ptsource
@@ -0,0 +1,7 @@
+<translate>
+== Topic == <!--T:1-->
+Some long text here.
+
+<!--T:2-->
+Another paragraph.
+</translate>
diff --git a/MLEB/Translate/tests/phpunit/pagetranslation/HeaderSection.pttarget b/MLEB/Translate/tests/phpunit/pagetranslation/HeaderSection.pttarget
new file mode 100644
index 00000000..dcc5e400
--- /dev/null
+++ b/MLEB/Translate/tests/phpunit/pagetranslation/HeaderSection.pttarget
@@ -0,0 +1,4 @@
+== Topic ==
+Some long text here.
+
+Another paragraph.
diff --git a/MLEB/Translate/tests/phpunit/pagetranslation/Inline.ptfile b/MLEB/Translate/tests/phpunit/pagetranslation/Inline.ptfile
new file mode 100644
index 00000000..9ec78b58
--- /dev/null
+++ b/MLEB/Translate/tests/phpunit/pagetranslation/Inline.ptfile
@@ -0,0 +1 @@
+We had a nice <translate>day</translate> today.
diff --git a/MLEB/Translate/tests/phpunit/pagetranslation/Inline.pttarget b/MLEB/Translate/tests/phpunit/pagetranslation/Inline.pttarget
new file mode 100644
index 00000000..53135308
--- /dev/null
+++ b/MLEB/Translate/tests/phpunit/pagetranslation/Inline.pttarget
@@ -0,0 +1 @@
+We had a nice day today.
diff --git a/MLEB/Translate/tests/phpunit/pagetranslation/LoneHeader.ptfile b/MLEB/Translate/tests/phpunit/pagetranslation/LoneHeader.ptfile
new file mode 100644
index 00000000..fa999259
--- /dev/null
+++ b/MLEB/Translate/tests/phpunit/pagetranslation/LoneHeader.ptfile
@@ -0,0 +1,5 @@
+<translate>
+== One ==
+
+A cat sleeps.
+</translate>
diff --git a/MLEB/Translate/tests/phpunit/pagetranslation/LoneHeader.ptsource b/MLEB/Translate/tests/phpunit/pagetranslation/LoneHeader.ptsource
new file mode 100644
index 00000000..77f4e00f
--- /dev/null
+++ b/MLEB/Translate/tests/phpunit/pagetranslation/LoneHeader.ptsource
@@ -0,0 +1,6 @@
+<translate>
+== One == <!--T:-1-->
+
+<!--T:-1-->
+A cat sleeps.
+</translate>
diff --git a/MLEB/Translate/tests/phpunit/pagetranslation/Nowiki.ptfile b/MLEB/Translate/tests/phpunit/pagetranslation/Nowiki.ptfile
new file mode 100644
index 00000000..a5b90485
--- /dev/null
+++ b/MLEB/Translate/tests/phpunit/pagetranslation/Nowiki.ptfile
@@ -0,0 +1,3 @@
+I just want to speak about <nowiki><translate></nowiki>.
+
+<translate>Yes!</translate>
diff --git a/MLEB/Translate/tests/phpunit/pagetranslation/Nowiki.pttarget b/MLEB/Translate/tests/phpunit/pagetranslation/Nowiki.pttarget
new file mode 100644
index 00000000..36235dc9
--- /dev/null
+++ b/MLEB/Translate/tests/phpunit/pagetranslation/Nowiki.pttarget
@@ -0,0 +1,3 @@
+I just want to speak about <nowiki><translate></nowiki>.
+
+Yes!
diff --git a/MLEB/Translate/tests/phpunit/pagetranslation/NowikiInside.ptfile b/MLEB/Translate/tests/phpunit/pagetranslation/NowikiInside.ptfile
new file mode 100644
index 00000000..eeea132a
--- /dev/null
+++ b/MLEB/Translate/tests/phpunit/pagetranslation/NowikiInside.ptfile
@@ -0,0 +1,4 @@
+<translate>
+I just want to speak about <nowiki><translate></nowiki>.
+
+Yes!</translate>
diff --git a/MLEB/Translate/tests/phpunit/pagetranslation/NowikiInside.pttarget b/MLEB/Translate/tests/phpunit/pagetranslation/NowikiInside.pttarget
new file mode 100644
index 00000000..36235dc9
--- /dev/null
+++ b/MLEB/Translate/tests/phpunit/pagetranslation/NowikiInside.pttarget
@@ -0,0 +1,3 @@
+I just want to speak about <nowiki><translate></nowiki>.
+
+Yes!
diff --git a/MLEB/Translate/tests/phpunit/pagetranslation/NowikiOnly.ptfile b/MLEB/Translate/tests/phpunit/pagetranslation/NowikiOnly.ptfile
new file mode 100644
index 00000000..93b7e672
--- /dev/null
+++ b/MLEB/Translate/tests/phpunit/pagetranslation/NowikiOnly.ptfile
@@ -0,0 +1 @@
+<nowiki><translate></nowiki> \ No newline at end of file
diff --git a/MLEB/Translate/tests/phpunit/pagetranslation/NowikiOnly.pttest b/MLEB/Translate/tests/phpunit/pagetranslation/NowikiOnly.pttest
new file mode 100644
index 00000000..69d14eaa
--- /dev/null
+++ b/MLEB/Translate/tests/phpunit/pagetranslation/NowikiOnly.pttest
@@ -0,0 +1,7 @@
+<?php
+
+if ( !defined( 'MEDIAWIKI' ) ) die();
+
+if ( $parse->countSections() !== 0 ) {
+ $this->fail( "Testfile $filename failed misc tests... number of sections should be zero" );
+}
diff --git a/MLEB/Translate/tests/phpunit/pagetranslation/Simple.ptfile b/MLEB/Translate/tests/phpunit/pagetranslation/Simple.ptfile
new file mode 100644
index 00000000..a591ffcb
--- /dev/null
+++ b/MLEB/Translate/tests/phpunit/pagetranslation/Simple.ptfile
@@ -0,0 +1,3 @@
+<translate>
+A cat sleeps.
+</translate>
diff --git a/MLEB/Translate/tests/phpunit/pagetranslation/Simple.ptsource b/MLEB/Translate/tests/phpunit/pagetranslation/Simple.ptsource
new file mode 100644
index 00000000..b86cf357
--- /dev/null
+++ b/MLEB/Translate/tests/phpunit/pagetranslation/Simple.ptsource
@@ -0,0 +1,4 @@
+<translate>
+<!--T:-1-->
+A cat sleeps.
+</translate>
diff --git a/MLEB/Translate/tests/phpunit/pagetranslation/Simple.pttarget b/MLEB/Translate/tests/phpunit/pagetranslation/Simple.pttarget
new file mode 100644
index 00000000..66ac6bad
--- /dev/null
+++ b/MLEB/Translate/tests/phpunit/pagetranslation/Simple.pttarget
@@ -0,0 +1 @@
+A cat sleeps.
diff --git a/MLEB/Translate/tests/phpunit/pagetranslation/Simple.pttest b/MLEB/Translate/tests/phpunit/pagetranslation/Simple.pttest
new file mode 100644
index 00000000..98e4ed1d
--- /dev/null
+++ b/MLEB/Translate/tests/phpunit/pagetranslation/Simple.pttest
@@ -0,0 +1,3 @@
+<?php
+
+if ( !defined( 'MEDIAWIKI' ) ) die();
diff --git a/MLEB/Translate/tests/phpunit/pagetranslation/SimpleWithMarker.ptfile b/MLEB/Translate/tests/phpunit/pagetranslation/SimpleWithMarker.ptfile
new file mode 100644
index 00000000..bf6b2a99
--- /dev/null
+++ b/MLEB/Translate/tests/phpunit/pagetranslation/SimpleWithMarker.ptfile
@@ -0,0 +1,4 @@
+<translate>
+<!--T:1-->
+A cat sleeps.
+</translate>
diff --git a/MLEB/Translate/tests/phpunit/pagetranslation/SimpleWithMarker.pttarget b/MLEB/Translate/tests/phpunit/pagetranslation/SimpleWithMarker.pttarget
new file mode 100644
index 00000000..66ac6bad
--- /dev/null
+++ b/MLEB/Translate/tests/phpunit/pagetranslation/SimpleWithMarker.pttarget
@@ -0,0 +1 @@
+A cat sleeps.
diff --git a/MLEB/Translate/tests/phpunit/pagetranslation/Variables.ptfile b/MLEB/Translate/tests/phpunit/pagetranslation/Variables.ptfile
new file mode 100644
index 00000000..4f254b77
--- /dev/null
+++ b/MLEB/Translate/tests/phpunit/pagetranslation/Variables.ptfile
@@ -0,0 +1,6 @@
+Prettig met u kennis te maken.
+
+<translate>
+Today we have {{PLURAL:<tvar|1>666</>|one cat|$1 cats}}. Which like<tvar|2> to eat</>!
+There is a <tvar| }[]#<33|>cat</> $ }[]#<33| here.
+</translate>
diff --git a/MLEB/Translate/tests/phpunit/pagetranslation/Variables.pttarget b/MLEB/Translate/tests/phpunit/pagetranslation/Variables.pttarget
new file mode 100644
index 00000000..4bf27198
--- /dev/null
+++ b/MLEB/Translate/tests/phpunit/pagetranslation/Variables.pttarget
@@ -0,0 +1,4 @@
+Prettig met u kennis te maken.
+
+Today we have {{PLURAL:666|one cat|666 cats}}. Which like to eat!
+There is a cat cat here.
diff --git a/MLEB/Translate/tests/phpunit/pagetranslation/Whitespace.ptfile b/MLEB/Translate/tests/phpunit/pagetranslation/Whitespace.ptfile
new file mode 100644
index 00000000..471de069
--- /dev/null
+++ b/MLEB/Translate/tests/phpunit/pagetranslation/Whitespace.ptfile
@@ -0,0 +1,17 @@
+There is a two new lines after this line.
+
+<translate>
+
+There is a two new lines before and after this line.
+
+</translate>
+
+There is a two new lines before and after this line also.
+
+
+There is three spaces trailing on this line: <translate>
+
+ This line is prefixed with a space, with two trailing spaces </translate>
+
+<translate>line1</translate>
+<translate>line2</translate>
diff --git a/MLEB/Translate/tests/phpunit/pagetranslation/Whitespace.pttarget b/MLEB/Translate/tests/phpunit/pagetranslation/Whitespace.pttarget
new file mode 100644
index 00000000..2ee66313
--- /dev/null
+++ b/MLEB/Translate/tests/phpunit/pagetranslation/Whitespace.pttarget
@@ -0,0 +1,14 @@
+There is a two new lines after this line.
+
+
+There is a two new lines before and after this line.
+
+
+There is a two new lines before and after this line also.
+
+
+There is three spaces trailing on this line:
+ This line is prefixed with a space, with two trailing spaces
+
+line1
+line2
diff --git a/MLEB/Translate/tests/qunit/ext.translate.parsers.test.js b/MLEB/Translate/tests/qunit/ext.translate.parsers.test.js
new file mode 100644
index 00000000..1d76ef2f
--- /dev/null
+++ b/MLEB/Translate/tests/qunit/ext.translate.parsers.test.js
@@ -0,0 +1,32 @@
+/**
+ * Tests for ext.translate.parsers.js.
+ *
+ * @file
+ * @license GPL-2.0+
+ */
+
+( function ( $, mw ) {
+ 'use strict';
+
+ QUnit.module( 'ext.translate.parsers', QUnit.newMwEnvironment() );
+
+ QUnit.test( '-- External links', 3, function ( assert ) {
+ assert.strictEqual(
+ 'This page is [in English]',
+ mw.translate.formatMessageGently( 'This page is [in English]' ),
+ 'Brackets without protocol doesn\'t make a link'
+ );
+
+ assert.strictEqual(
+ 'This page has <a href="https://www.mediawiki.org">a link</a>',
+ mw.translate.formatMessageGently( 'This page has [https://www.mediawiki.org a link]' ),
+ 'Brackets with https:// protocol creates a link'
+ );
+
+ assert.strictEqual(
+ 'No kun <a href="/wiki/m:MassMessage">m:MassMessage</a> ja plum <a href="/wiki/m:">Meta-Wiki</a>.',
+ mw.translate.formatMessageGently( 'No kun [[m:MassMessage]] ja plum [[m:|Meta-Wiki]].' ),
+ 'Link parsing is non-greedy'
+ );
+ } );
+}( jQuery, mediaWiki ) );
diff --git a/MLEB/Translate/tests/qunit/ext.translate.special.pagemigration.test.js b/MLEB/Translate/tests/qunit/ext.translate.special.pagemigration.test.js
new file mode 100644
index 00000000..4eb5feda
--- /dev/null
+++ b/MLEB/Translate/tests/qunit/ext.translate.special.pagemigration.test.js
@@ -0,0 +1,102 @@
+/**
+ * Tests for ext.translate.special.pagemigration.js.
+ *
+ * @file
+ * @license GPL-2.0+
+ */
+
+( function ( $, mw ) {
+ 'use strict';
+
+ QUnit.module( 'ext.translate.special.pagemigration', QUnit.newMwEnvironment( {
+ setup: function () {
+ this.server = this.sandbox.useFakeServer();
+ }
+ } ) );
+
+ QUnit.asyncTest( '-- Source units', function ( assert ) {
+ QUnit.expect( 1 );
+ var data = '{ "query": { "messagecollection": [ { "key": "key_",' +
+ ' "definition": "definition_", "title": "title_" }, { "key": "key_1",' +
+ ' "definition": "definition_1", "title": "title_1" } ] } }';
+
+ mw.translate.getSourceUnits( 'Help:Special pages' ).done( function ( sourceUnits ) {
+ assert.strictEqual( 1, sourceUnits.length, 'Source units retrieved' );
+ QUnit.start();
+ } );
+
+ this.server.respond( function ( request ) {
+ request.respond( 200, { 'Content-Type': 'application/json' }, data );
+ } );
+ } );
+
+ QUnit.asyncTest( '-- Page does not exist', function ( assert ) {
+ QUnit.expect( 1 );
+ var data = '{ "query": { "pages": { "-1": { "missing": "" } } } }';
+
+ mw.translate.getFuzzyTimestamp( 'ugagagagagaga/uga' ).fail( function ( timestamp ) {
+ assert.strictEqual( undefined, timestamp, 'Page does not exist' );
+ QUnit.start();
+ } );
+
+ this.server.respond( function ( request ) {
+ request.respond( 200, { 'Content-Type': 'application/json' }, data );
+ } );
+ } );
+
+ QUnit.asyncTest( '-- Fuzzy timestamp', function ( assert ) {
+ QUnit.expect( 1 );
+ var data = '{ "query": { "pages": { "19563": {"revisions": ' +
+ '[ {"timestamp": "2014-02-18T20:59:58Z" }, { "timestamp": "t2" } ] } } } }';
+
+ mw.translate.getFuzzyTimestamp( 'Help:Special pages/fr' ).done( function ( timestamp ) {
+ assert.strictEqual( '2014-02-18T20:59:57.000Z', timestamp, 'Fuzzy timestamp retrieved' );
+ QUnit.start();
+ } );
+
+ this.server.respond( function ( request ) {
+ request.respond( 200, { 'Content-Type': 'application/json' }, data );
+ } );
+ } );
+
+ QUnit.asyncTest( '-- Split translation page', function ( assert ) {
+ QUnit.expect( 1 );
+ var data = '{ "query": { "pages": { "19563": { "revisions": ' +
+ '[ { "*": "unit1\\n\\nunit2\\n\\nunit3" } ] } } } }';
+
+ mw.translate.splitTranslationPage( '2014-02-18T20:59:57.000Z', 'Help:Special pages/fr' )
+ .done( function ( translationUnits ) {
+ assert.strictEqual( 3, translationUnits.length, 'Translation page split into units' );
+ QUnit.start();
+ } );
+
+ this.server.respond( function ( request ) {
+ request.respond( 200, { 'Content-Type': 'application/json' }, data );
+ } );
+ } );
+
+ QUnit.test( '-- Align h2 headers', function ( assert ) {
+ QUnit.expect( 2 );
+ var sourceUnits, translationUnits1, result1,
+ translationUnits2, result2;
+
+ sourceUnits = [{'identifier':'1','definition':'abc'}, {'identifier':'2','definition':'==123=='},
+ {'identifier':'3','definition':'pqr'}, {'identifier':'4','definition':'xyz'},
+ {'identifier':'5','definition':'mno'}, {'identifier':'6','definition':'==456=='}];
+
+ translationUnits1 = ['==123==', 'pqr', '==456=='];
+
+ translationUnits2 = ['abc', 'lmn', '==123==', 'pqr', '==456=='];
+
+ result1 = ['', '==123==', 'pqr', '', '', '==456=='];
+
+ result2 = ['abc\nlmn\n', '==123==', 'pqr', '', '', '==456=='];
+
+ translationUnits1 = mw.translate.alignHeaders( sourceUnits, translationUnits1 );
+ assert.deepEqual( translationUnits1, result1, 'h2 headers aligned without merging' );
+
+ translationUnits2 = mw.translate.alignHeaders( sourceUnits, translationUnits2 );
+ assert.deepEqual( translationUnits2, result2, 'h2 headers aligned with merging' );
+ } );
+
+}( jQuery, mediaWiki ) ); \ No newline at end of file
diff --git a/MLEB/Translate/translationaids/CurrentTranslationAid.php b/MLEB/Translate/translationaids/CurrentTranslationAid.php
new file mode 100644
index 00000000..43bc084b
--- /dev/null
+++ b/MLEB/Translate/translationaids/CurrentTranslationAid.php
@@ -0,0 +1,38 @@
+<?php
+/**
+ * Translation aid provider.
+ *
+ * @file
+ * @author Niklas Laxström
+ * @copyright Copyright © 2012-2013, Niklas Laxström
+ * @license GPL-2.0+
+ */
+
+/**
+ * Translation aid which gives the current saved translation.
+ *
+ * @ingroup TranslationAids
+ * @since 2013-01-01
+ */
+class CurrentTranslationAid extends TranslationAid {
+ public function getData() {
+ $translation = null;
+
+ $title = $this->handle->getTitle();
+ $translation = TranslateUtils::getMessageContent(
+ $this->handle->getKey(),
+ $this->handle->getCode(),
+ $title->getNamespace()
+ );
+
+ wfRunHooks( 'TranslatePrefillTranslation', array( &$translation, $this->handle ) );
+ $fuzzy = MessageHandle::hasFuzzyString( $translation ) || $this->handle->isFuzzy();
+ $translation = str_replace( TRANSLATE_FUZZY, '', $translation );
+
+ return array(
+ 'language' => $this->handle->getCode(),
+ 'fuzzy' => $fuzzy,
+ 'value' => $translation,
+ );
+ }
+}
diff --git a/MLEB/Translate/translationaids/DocumentationAid.php b/MLEB/Translate/translationaids/DocumentationAid.php
new file mode 100644
index 00000000..4eeb4478
--- /dev/null
+++ b/MLEB/Translate/translationaids/DocumentationAid.php
@@ -0,0 +1,35 @@
+<?php
+/**
+ * Translation aid provider.
+ *
+ * @file
+ * @author Niklas Laxström
+ * @copyright Copyright © 2012-2013, Niklas Laxström
+ * @license GPL-2.0+
+ */
+
+/**
+ * Translation aid which gives the message documentation.
+ *
+ * @ingroup TranslationAids
+ * @since 2013-01-01
+ */
+class DocumentationAid extends TranslationAid {
+ public function getData() {
+ global $wgTranslateDocumentationLanguageCode, $wgContLang;
+ if ( !$wgTranslateDocumentationLanguageCode ) {
+ throw new TranslationHelperException( 'Message documentation is disabled' );
+ }
+
+ $page = $this->handle->getKey();
+ $ns = $this->handle->getTitle()->getNamespace();
+
+ $info = TranslateUtils::getMessageContent( $page, $wgTranslateDocumentationLanguageCode, $ns );
+
+ return array(
+ 'language' => $wgContLang->getCode(),
+ 'value' => $info,
+ 'html' => $this->context->getOutput()->parse( $info ),
+ );
+ }
+}
diff --git a/MLEB/Translate/translationaids/GettextDocumentationAid.php b/MLEB/Translate/translationaids/GettextDocumentationAid.php
new file mode 100644
index 00000000..5f599cb1
--- /dev/null
+++ b/MLEB/Translate/translationaids/GettextDocumentationAid.php
@@ -0,0 +1,70 @@
+<?php
+/**
+ * Translation aid provider.
+ *
+ * @file
+ * @author Niklas Laxström
+ * @copyright Copyright © 2013, Niklas Laxström
+ * @license GPL-2.0+
+ */
+
+/**
+ * Translation aid which gives Gettext documentation.
+ *
+ * @ingroup TranslationAids
+ * @since 2013-01-01
+ */
+class GettextDocumentationAid extends TranslationAid {
+ public function getData() {
+
+ // We need to get the primary group to get the correct file
+ // So $group can be different from $this->group
+ $group = $this->handle->getGroup();
+ if ( !$group instanceof FileBasedMessageGroup ) {
+ throw new TranslationHelperException( "Not a Gettext group" );
+ }
+
+ $ffs = $group->getFFS();
+ if ( !$ffs instanceof GettextFFS ) {
+ throw new TranslationHelperException( "Not a Gettext group" );
+ }
+
+ global $wgContLang;
+ $mykey = $wgContLang->lcfirst( $this->handle->getKey() );
+ $mykey = str_replace( ' ', '_', $mykey );
+ $data = $ffs->read( $group->getSourceLanguage() );
+ $help = $data['TEMPLATE'][$mykey]['comments'];
+
+ $conf = $group->getConfiguration();
+ if ( isset( $conf['BASIC']['codeBrowser'] ) ) {
+ $pattern = $conf['BASIC']['codeBrowser'];
+ $pattern = str_replace( '%FILE%', '\1', $pattern );
+ $pattern = str_replace( '%LINE%', '\2', $pattern );
+ $pattern = "[$pattern \\1:\\2]";
+ } else {
+ $pattern = "\\1:\\2";
+ }
+
+ $out = '';
+ foreach ( $help as $type => $lines ) {
+ if ( $type === ':' ) {
+ $files = '';
+ foreach ( $lines as $line ) {
+ $files .= ' ' . preg_replace( '/([^ :]+):(\d+)/', $pattern, $line );
+ }
+ $out .= "<nowiki>#:</nowiki> $files<br />";
+ } else {
+ foreach ( $lines as $line ) {
+ $out .= "<nowiki>#$type</nowiki> $line<br />";
+ }
+ }
+ }
+
+ return array(
+ 'language' => $wgContLang->getCode(),
+ // @todo Provide raw data when possible
+ //'value' => $help,
+ 'html' => $this->context->getOutput()->parse( $out ),
+ );
+ }
+}
diff --git a/MLEB/Translate/translationaids/InOtherLanguagesAid.php b/MLEB/Translate/translationaids/InOtherLanguagesAid.php
new file mode 100644
index 00000000..f10d7d30
--- /dev/null
+++ b/MLEB/Translate/translationaids/InOtherLanguagesAid.php
@@ -0,0 +1,81 @@
+<?php
+/**
+ * Translation aid provider.
+ *
+ * @file
+ * @author Niklas Laxström
+ * @copyright Copyright © 2012-2013, Niklas Laxström
+ * @license GPL-2.0+
+ */
+
+/**
+ * Translation aid which gives the "in other languages" suggestions.
+ *
+ * @ingroup TranslationAids
+ * @since 2013-01-01
+ */
+class InOtherLanguagesAid extends TranslationAid {
+ public function getData() {
+ $suggestions = array(
+ '**' => 'suggestion',
+ );
+
+ // Fuzzy translations are not included in these
+ $translations = $this->getTranslations();
+ $code = $this->handle->getCode();
+
+ $sourceLanguage = $this->handle->getGroup()->getSourceLanguage();
+
+ foreach ( $this->getFallbacks( $code ) as $fbcode ) {
+ if ( !isset( $translations[$fbcode] ) ) {
+ continue;
+ }
+
+ if ( $fbcode === $sourceLanguage ) {
+ continue;
+ }
+
+ $suggestions[] = array(
+ 'language' => $fbcode,
+ 'value' => $translations[$fbcode],
+ );
+ }
+
+ return $suggestions;
+ }
+
+ /**
+ * Get the languages for "in other languages". That would be translation
+ * assistant languages with defined language fallbacks additionally.
+ * @param string $code
+ * @return string[] List of language codes
+ */
+ protected function getFallbacks( $code ) {
+ global $wgTranslateLanguageFallbacks;
+
+ // User preference has the final say
+ $preference = $this->context->getUser()->getOption( 'translate-editlangs' );
+ if ( $preference !== 'default' ) {
+ $fallbacks = array_map( 'trim', explode( ',', $preference ) );
+ foreach ( $fallbacks as $k => $v ) {
+ if ( $v === $code ) {
+ unset( $fallbacks[$k] );
+ }
+ }
+
+ return $fallbacks;
+ }
+
+ // Global configuration settings
+ $fallbacks = array();
+ if ( isset( $wgTranslateLanguageFallbacks[$code] ) ) {
+ $fallbacks = (array)$wgTranslateLanguageFallbacks[$code];
+ }
+
+ $list = Language::getFallbacksFor( $code );
+ array_pop( $list ); // Get 'en' away from the end
+ $fallbacks = array_merge( $list, $fallbacks );
+
+ return array_unique( $fallbacks );
+ }
+}
diff --git a/MLEB/Translate/translationaids/InsertablesAid.php b/MLEB/Translate/translationaids/InsertablesAid.php
new file mode 100644
index 00000000..65b36f84
--- /dev/null
+++ b/MLEB/Translate/translationaids/InsertablesAid.php
@@ -0,0 +1,56 @@
+<?php
+/**
+ * Translation aid provider.
+ *
+ * @file
+ * @author Niklas Laxström
+ * @license GPL-2.0+
+ */
+
+/**
+ * Translation aid which suggests insertables. Insertable is a string that
+ * usually does not need translation and is difficult to type manually.
+ *
+ * @ingroup TranslationAids
+ * @since 2013.09
+ */
+class InsertablesAid extends TranslationAid {
+ public function getData() {
+
+ // We need to get the primary group to get the correct file
+ // So $group can be different from $this->group
+ $group = $this->handle->getGroup();
+
+ // This was added later, so not all classes have it. In addition
+ // the message group class hierarche doesn't lend itself easily
+ // to the user of interfaces for this purpose.
+ if ( !method_exists( $group, 'getInsertablesSuggester' ) ) {
+ throw new TranslationHelperException( "Group does not have a suggester" );
+ }
+
+ $suggester = $group->getInsertablesSuggester();
+
+ // It is okay to return null suggester
+ if ( !$suggester ) {
+ throw new TranslationHelperException( "Group does not have a suggester" );
+ }
+
+ $insertables = $suggester->getInsertables( $this->getDefinition() );
+ $blob = array();
+ foreach ( $insertables as $insertable ) {
+ $displayText = $insertable->getDisplayText();
+
+ // The keys are used for de-duplication
+ $blob[$displayText] = array(
+ 'display' => $displayText,
+ 'pre' => $insertable->getPreText(),
+ 'post' => $insertable->getPostText(),
+ );
+ }
+
+ $blob = array_values( $blob );
+ $blob['**'] = 'insertable';
+
+ return $blob;
+ }
+}
diff --git a/MLEB/Translate/translationaids/MachineTranslationAid.php b/MLEB/Translate/translationaids/MachineTranslationAid.php
new file mode 100644
index 00000000..dee7680d
--- /dev/null
+++ b/MLEB/Translate/translationaids/MachineTranslationAid.php
@@ -0,0 +1,42 @@
+<?php
+/**
+ * Translation aid provider.
+ *
+ * @file
+ * @author Niklas Laxström
+ * @copyright Copyright © 2012-2013, Niklas Laxström
+ * @license GPL-2.0+
+ */
+
+/**
+ * Translation aid which gives suggestion from machine translation services.
+ *
+ * @ingroup TranslationAids
+ * @since 2013-01-01
+ */
+class MachineTranslationAid extends TranslationAid {
+ public function getData() {
+ $suggestions = array( '**' => 'suggestion' );
+
+ $translations = $this->getTranslations();
+ $from = $this->group->getSourceLanguage();
+ $to = $this->handle->getCode();
+
+ global $wgTranslateTranslationServices;
+ foreach ( $wgTranslateTranslationServices as $name => $config ) {
+ if ( $config['type'] === 'ttmserver' ) {
+ continue;
+ }
+
+ $service = TranslationWebService::factory( $name, $config );
+ if ( !$service ) {
+ continue;
+ }
+
+ $results = $service->getSuggestions( $translations, $from, $to );
+ $suggestions = array_merge( $suggestions, $results );
+ }
+
+ return $suggestions;
+ }
+}
diff --git a/MLEB/Translate/translationaids/MessageDefinitionAid.php b/MLEB/Translate/translationaids/MessageDefinitionAid.php
new file mode 100644
index 00000000..0cb536cf
--- /dev/null
+++ b/MLEB/Translate/translationaids/MessageDefinitionAid.php
@@ -0,0 +1,27 @@
+<?php
+/**
+ * Translation aid provider.
+ *
+ * @file
+ * @author Niklas Laxström
+ * @copyright Copyright © 2012-2013, Niklas Laxström
+ * @license GPL-2.0+
+ */
+
+/**
+ * Translation aid which gives the message definition.
+ * This usually matches the content of the page ns:key/source_language.
+ *
+ * @ingroup TranslationAids
+ * @since 2013-01-01
+ */
+class MessageDefinitionAid extends TranslationAid {
+ public function getData() {
+ $language = $this->group->getSourceLanguage();
+
+ return array(
+ 'value' => $this->getDefinition(),
+ 'language' => $language,
+ );
+ }
+}
diff --git a/MLEB/Translate/translationaids/SupportAid.php b/MLEB/Translate/translationaids/SupportAid.php
new file mode 100644
index 00000000..f1550fc4
--- /dev/null
+++ b/MLEB/Translate/translationaids/SupportAid.php
@@ -0,0 +1,39 @@
+<?php
+/**
+ * Translation aid provider.
+ *
+ * @file
+ * @author Niklas Laxström
+ * @copyright Copyright © 2013, Niklas Laxström
+ * @license GPL-2.0+
+ */
+
+/**
+ * Translation aid which gives an url where users can ask for hlep
+ *
+ * @ingroup TranslationAids
+ * @since 2013-01-02
+ */
+class SupportAid extends TranslationAid {
+ public function getData() {
+ global $wgTranslateSupportUrl;
+ if ( !$wgTranslateSupportUrl ) {
+ throw new TranslationHelperException( "Support page not configured" );
+ }
+
+ $supportTitle = Title::newFromText( $wgTranslateSupportUrl['page'] );
+ if ( !$supportTitle ) {
+ throw new TranslationHelperException( "Support page not configured properly" );
+ }
+
+ $supportParams = $wgTranslateSupportUrl['params'];
+ $title = $this->handle->getTitle();
+ foreach ( $supportParams as &$value ) {
+ $value = str_replace( '%MESSAGE%', $title->getPrefixedText(), $value );
+ }
+
+ return array(
+ 'url' => $supportTitle->getFullUrl( $supportParams ),
+ );
+ }
+}
diff --git a/MLEB/Translate/translationaids/TTMServerAid.php b/MLEB/Translate/translationaids/TTMServerAid.php
new file mode 100644
index 00000000..2146918d
--- /dev/null
+++ b/MLEB/Translate/translationaids/TTMServerAid.php
@@ -0,0 +1,57 @@
+<?php
+/**
+ * Translation aid provider.
+ *
+ * @file
+ * @author Niklas Laxström
+ * @copyright Copyright © 2012-2013, Niklas Laxström
+ * @license GPL-2.0+
+ */
+
+/**
+ * Translation aid which gives suggestion from translation memory.
+ *
+ * @ingroup TranslationAids
+ * @since 2013-01-01
+ */
+class TTMServerAid extends TranslationAid {
+ public function getData() {
+ $suggestions = array();
+
+ $text = $this->getDefinition();
+ $from = $this->group->getSourceLanguage();
+ $to = $this->handle->getCode();
+
+ global $wgTranslateTranslationServices;
+ foreach ( $wgTranslateTranslationServices as $name => $config ) {
+ $server = TTMServer::factory( $config );
+
+ try {
+ if ( $server instanceof RemoteTTMServer ) {
+ $service = TranslationWebService::factory( $name, $config );
+ $query = $service->getSuggestions( array( $from => $text ), $from, $to );
+ } elseif ( $server instanceof ReadableTTMServer ) {
+ $query = $server->query( $from, $to, $text );
+ } else {
+ continue;
+ }
+ } catch ( Exception $e ) {
+ // Not ideal to catch all exceptions
+ continue;
+ }
+
+ foreach ( $query as $item ) {
+ $item['service'] = $name;
+ $item['source_language'] = $from;
+ $item['local'] = $server->isLocalSuggestion( $item );
+ $item['uri'] = $server->expandLocation( $item );
+ $suggestions[] = $item;
+ }
+ }
+
+ $suggestions = TTMServer::sortSuggestions( $suggestions );
+ $suggestions['**'] = 'suggestion';
+
+ return $suggestions;
+ }
+}
diff --git a/MLEB/Translate/translationaids/TranslationAid.php b/MLEB/Translate/translationaids/TranslationAid.php
new file mode 100644
index 00000000..9c0f26a9
--- /dev/null
+++ b/MLEB/Translate/translationaids/TranslationAid.php
@@ -0,0 +1,152 @@
+<?php
+/**
+ * Translation aid code.
+ *
+ * @file
+ * @author Niklas Laxström
+ * @copyright Copyright © 2013, Niklas Laxström
+ * @license GPL-2.0+
+ */
+
+/**
+ * Multipurpose class for translation aids:
+ * - interface for translation aid classes
+ * - listing of available translation aids
+ * - some utility functions for translation aid classes
+ *
+ * @defgroup TranslationAids Translation Aids
+ * @since 2013-01-01
+ */
+abstract class TranslationAid {
+ /**
+ * @var MessageGroup
+ */
+ protected $group;
+
+ /**
+ * @var MessageHandle
+ */
+ protected $handle;
+
+ /**
+ * @var IContextSource
+ */
+ protected $context;
+
+ public function __construct( MessageGroup $group, MessageHandle $handle,
+ IContextSource $context
+ ) {
+ $this->group = $group;
+ $this->handle = $handle;
+ $this->context = $context;
+ }
+
+ /**
+ * Translation aid class should implement this function. Return value should
+ * be an array with keys and values. Because these are used in the MediaWiki
+ * API, lists (numeric keys) should have key '**' set to element name that
+ * describes the list values. For example if the translation aid provides
+ * translation suggestions, it would return an array which has key '**' set
+ * to 'suggestion' and then list of arrays, each containing fields for the
+ * information of the suggestions. See InOtherLanguagesAid for example.
+ *
+ * @throw TranslationHelperException Used to signal unexpected errors to aid
+ * debugging
+ * @return array
+ */
+ abstract public function getData();
+
+ /**
+ * Get the message definition. Cached for performance.
+ *
+ * @return string
+ */
+ public function getDefinition() {
+ static $cache = array();
+
+ $key = $this->handle->getTitle()->getPrefixedText();
+
+ if ( array_key_exists( $key, $cache ) ) {
+ return $cache[$key];
+ }
+
+ if ( method_exists( $this->group, 'getMessageContent' ) ) {
+ $cache[$key] = $this->group->getMessageContent( $this->handle );
+ } else {
+ $cache[$key] = $this->group->getMessage(
+ $this->handle->getKey(),
+ $this->group->getSourceLanguage()
+ );
+ }
+
+ return $cache[$key];
+ }
+
+ /**
+ * @return Content
+ */
+ protected function getDefinitionContent() {
+ $text = $this->getDefinition();
+
+ return ContentHandler::makeContent( $text, $this->handle->getTitle() );
+ }
+
+ /**
+ * Get the translations in all languages. Cached for performance.
+ * Fuzzy translation are not included.
+ *
+ * @return array Language code => Translation
+ */
+ public function getTranslations() {
+ static $cache = array();
+
+ $key = $this->handle->getTitle()->getPrefixedText();
+
+ if ( array_key_exists( $key, $cache ) ) {
+ return $cache[$key];
+ }
+
+ $data = ApiQueryMessageTranslations::getTranslations( $this->handle );
+ $namespace = $this->handle->getTitle()->getNamespace();
+
+ $cache[$key] = array();
+
+ foreach ( $data as $page => $info ) {
+ $tTitle = Title::makeTitle( $namespace, $page );
+ $tHandle = new MessageHandle( $tTitle );
+
+ $fuzzy = MessageHandle::hasFuzzyString( $info[0] ) || $tHandle->isFuzzy();
+ if ( $fuzzy ) {
+ continue;
+ }
+
+ $code = $tHandle->getCode();
+ $cache[$key][$code] = $info[0];
+ }
+
+ return $cache[$key];
+ }
+
+ /**
+ * List of available message types mapped to the classes
+ * implementing them.
+ *
+ * @return array
+ */
+ public static function getTypes() {
+ $types = array(
+ 'definition' => 'MessageDefinitionAid',
+ 'translation' => 'CurrentTranslationAid',
+ 'inotherlanguages' => 'InOtherLanguagesAid',
+ 'documentation' => 'DocumentationAid',
+ 'mt' => 'MachineTranslationAid',
+ 'definitiondiff' => 'UpdatedDefinitionAid',
+ 'ttmserver' => 'TTMServerAid',
+ 'support' => 'SupportAid',
+ 'gettext' => 'GettextDocumentationAid',
+ 'insertables' => 'InsertablesAid',
+ );
+
+ return $types;
+ }
+}
diff --git a/MLEB/Translate/translationaids/UnsupportedTranslationAid.php b/MLEB/Translate/translationaids/UnsupportedTranslationAid.php
new file mode 100644
index 00000000..6c92c531
--- /dev/null
+++ b/MLEB/Translate/translationaids/UnsupportedTranslationAid.php
@@ -0,0 +1,21 @@
+<?php
+/**
+ * Translation aid provider.
+ *
+ * @file
+ * @author Harry Burt
+ * @copyright Copyright © 2013, Harry Burt
+ * @license GPL-2.0+
+ */
+
+/**
+ * Dummy translation aid that always errors
+ *
+ * @ingroup TranslationAids
+ * @since 2013-03-29
+ */
+class UnsupportedTranslationAid extends TranslationAid {
+ public function getData() {
+ throw new TranslationHelperException( 'This translation aid is disabled' );
+ }
+}
diff --git a/MLEB/Translate/translationaids/UpdatedDefinitionAid.php b/MLEB/Translate/translationaids/UpdatedDefinitionAid.php
new file mode 100644
index 00000000..0b918f40
--- /dev/null
+++ b/MLEB/Translate/translationaids/UpdatedDefinitionAid.php
@@ -0,0 +1,86 @@
+<?php
+/**
+ * Translation aid provider.
+ *
+ * @file
+ * @author Niklas Laxström
+ * @copyright Copyright © 2012-2013, Niklas Laxström
+ * @license GPL-2.0+
+ */
+
+/**
+ * Translation aid which gives the message definition.
+ * This usually matches the content of the page ns:key/source_language.
+ *
+ * @ingroup TranslationAids
+ * @since 2013-01-01
+ */
+class UpdatedDefinitionAid extends TranslationAid {
+ public function getData() {
+ $db = wfGetDB( DB_MASTER );
+ $conds = array(
+ 'rt_page' => $this->handle->getTitle()->getArticleID(),
+ 'rt_type' => RevTag::getType( 'tp:transver' ),
+ );
+ $options = array(
+ 'ORDER BY' => 'rt_revision DESC',
+ );
+
+ $translationRevision = $db->selectField( 'revtag', 'rt_value', $conds, __METHOD__, $options );
+ if ( $translationRevision === false ) {
+ throw new TranslationHelperException( "No definition revision recorded" );
+ }
+
+ $definitionTitle = Title::makeTitleSafe(
+ $this->handle->getTitle()->getNamespace(),
+ $this->handle->getKey() . '/' . $this->group->getSourceLanguage()
+ );
+
+ if ( !$definitionTitle || !$definitionTitle->exists() ) {
+ throw new TranslationHelperException( "Definition page doesn't exist" );
+ }
+
+ // Using newFromId instead of newFromTitle, because the page might have been renamed
+ $oldrev = Revision::newFromId( $translationRevision );
+ if ( !$oldrev ) {
+ throw new TranslationHelperException( "Old definition version doesn't exist anymore" );
+ }
+
+ $oldContent = $oldrev->getContent();
+ $newContent = $this->getDefinitionContent();
+
+ if ( !$oldContent ) {
+ throw new TranslationHelperException( "Old definition version doesn't exist anymore" );
+ }
+
+ if ( !$oldContent instanceof WikitextContent || !$newContent instanceof WikitextContent ) {
+ throw new TranslationHelperException( 'Can only work on Wikitext content' );
+ }
+
+ if ( $oldContent->equals( $newContent ) ) {
+ throw new TranslationHelperException( 'No changes' );
+ }
+
+ $diff = new DifferenceEngine( $this->context );
+ if ( method_exists( 'DifferenceEngine', 'setTextLanguage' ) ) {
+ $diff->setTextLanguage( $this->group->getSourceLanguage() );
+ }
+ $diff->setContent( $oldContent, $newContent );
+ $diff->setReducedLineNumbers();
+ $diff->showDiffStyle();
+
+ $html = $diff->getDiff(
+ $this->context->msg( 'tpt-diff-old' )->escaped(),
+ $this->context->msg( 'tpt-diff-new' )->escaped()
+ );
+
+ return array(
+ 'value_old' => $oldContent->getNativeData(),
+ 'value_new' => $newContent->getNativeData(),
+ 'revisionid_old' => $oldrev->getId(),
+ 'revisionid_new' => $definitionTitle->getLatestRevId(),
+ 'language' => $this->group->getSourceLanguage(),
+ 'html' => $html,
+ );
+ }
+}
diff --git a/MLEB/Translate/ttmserver/DatabaseTTMServer.php b/MLEB/Translate/ttmserver/DatabaseTTMServer.php
new file mode 100644
index 00000000..bc7170a6
--- /dev/null
+++ b/MLEB/Translate/ttmserver/DatabaseTTMServer.php
@@ -0,0 +1,287 @@
+<?php
+/**
+ * TTMServer - The Translate extension translation memory interface
+ *
+ * @file
+ * @author Niklas Laxström
+ * @copyright Copyright © 2012-2013, Niklas Laxström
+ * @license GPL-2.0+
+ * @ingroup TTMServer
+ */
+
+/**
+ * Mysql based backend.
+ * @ingroup TTMServer
+ * @since 2012-06-27
+ */
+class DatabaseTTMServer extends TTMServer implements WritableTTMServer, ReadableTTMServer {
+ protected $sids;
+
+ /**
+ * @param $mode int DB_SLAVE|DB_MASTER
+ * @return DatabaseBase
+ */
+ protected function getDB( $mode = DB_SLAVE ) {
+ return wfGetDB( $mode, 'ttmserver', $this->config['database'] );
+ }
+
+ public function update( MessageHandle $handle, $targetText ) {
+ if ( !$handle->isValid() || $handle->getCode() === '' ) {
+ return false;
+ }
+
+ $mkey = $handle->getKey();
+ $group = $handle->getGroup();
+ $targetLanguage = $handle->getCode();
+ $sourceLanguage = $group->getSourceLanguage();
+
+ // Skip definitions to not slow down mass imports etc.
+ // These will be added when the first translation is made
+ if ( $targetLanguage === $sourceLanguage ) {
+ return false;
+ }
+
+ $definition = $group->getMessage( $mkey, $sourceLanguage );
+ if ( !is_string( $definition ) || !strlen( trim( $definition ) ) ) {
+ return false;
+ }
+
+ $context = Title::makeTitle( $handle->getTitle()->getNamespace(), $mkey );
+ $dbw = $this->getDB( DB_MASTER );
+ /* Check that the definition exists and fetch the sid. If not, add
+ * the definition and retrieve the sid. If the definition changes,
+ * we will create a new entry - otherwise we could at some point
+ * get suggestions which do not match the original definition any
+ * longer. The old translations are still kept until purged by
+ * rerunning the bootstrap script. */
+ $conds = array(
+ 'tms_context' => $context->getPrefixedText(),
+ 'tms_text' => $definition,
+ );
+
+ $sid = $dbw->selectField( 'translate_tms', 'tms_sid', $conds, __METHOD__ );
+ if ( $sid === false ) {
+ $sid = $this->insertSource( $context, $sourceLanguage, $definition );
+ }
+
+ // Delete old translations for this message if any. Could also use replace
+ $deleteConds = array(
+ 'tmt_sid' => $sid,
+ 'tmt_lang' => $targetLanguage,
+ );
+ $dbw->delete( 'translate_tmt', $deleteConds, __METHOD__ );
+
+ // Insert the new translation
+ if ( $targetText !== null ) {
+ $row = $deleteConds + array(
+ 'tmt_text' => $targetText,
+ );
+
+ $dbw->insert( 'translate_tmt', $row, __METHOD__ );
+ }
+
+ return true;
+ }
+
+ protected function insertSource( Title $context, $sourceLanguage, $text ) {
+ wfProfileIn( __METHOD__ );
+ $row = array(
+ 'tms_lang' => $sourceLanguage,
+ 'tms_len' => mb_strlen( $text ),
+ 'tms_text' => $text,
+ 'tms_context' => $context->getPrefixedText(),
+ );
+
+ $dbw = $this->getDB( DB_MASTER );
+ $dbw->insert( 'translate_tms', $row, __METHOD__ );
+ $sid = $dbw->insertId();
+
+ $fulltext = $this->filterForFulltext( $sourceLanguage, $text );
+ if ( count( $fulltext ) ) {
+ $row = array(
+ 'tmf_sid' => $sid,
+ 'tmf_text' => implode( ' ', $fulltext ),
+ );
+ $dbw->insert( 'translate_tmf', $row, __METHOD__ );
+ }
+
+ wfProfileOut( __METHOD__ );
+
+ return $sid;
+ }
+
+ /**
+ * Tokenizes the text for fulltext search.
+ * Tries to find the most useful tokens.
+ */
+ protected function filterForFulltext( $language, $input ) {
+ wfProfileIn( __METHOD__ );
+ $lang = Language::factory( $language );
+
+ $text = preg_replace( '/[^[:alnum:]]/u', ' ', $input );
+ $text = $lang->segmentByWord( $text );
+ $text = $lang->lc( $text );
+ $segments = preg_split( '/\s+/', $text, -1, PREG_SPLIT_NO_EMPTY );
+ if ( count( $segments ) < 4 ) {
+ wfProfileOut( __METHOD__ );
+
+ return array();
+ }
+
+ foreach ( $segments as $i => $segment ) {
+ // Yes strlen
+ $len = strlen( $segment );
+ if ( $len < 4 || $len > 15 ) {
+ unset( $segments[$i] );
+ }
+ }
+
+ $segments = array_unique( $segments );
+ $segments = array_slice( $segments, 0, 10 );
+ wfProfileOut( __METHOD__ );
+
+ return $segments;
+ }
+
+ public function beginBootstrap() {
+ $dbw = $this->getDB( DB_MASTER );
+ $dbw->delete( 'translate_tms', '*', __METHOD__ );
+ $dbw->delete( 'translate_tmt', '*', __METHOD__ );
+ $dbw->delete( 'translate_tmf', '*', __METHOD__ );
+ $table = $dbw->tableName( 'translate_tmf' );
+ try {
+ $dbw->query( "DROP INDEX tmf_text ON $table" );
+ } catch ( DBQueryError $e ) {
+ // Perhaps the script was aborted before it got
+ // chance to add the index back.
+ }
+ }
+
+ public function beginBatch() {
+ $this->sids = array();
+ }
+
+ public function batchInsertDefinitions( array $batch ) {
+ foreach ( $batch as $key => $item ) {
+ list( $title, $language, $text ) = $item;
+ $handle = new MessageHandle( $title );
+ $context = Title::makeTitle( $handle->getTitle()->getNamespace(), $handle->getKey() );
+ $this->sids[$key] = $this->insertSource( $context, $language, $text );
+ }
+ wfWaitForSlaves( 10 );
+ }
+
+ public function batchInsertTranslations( array $batch ) {
+ $rows = array();
+ foreach ( $batch as $key => $data ) {
+ list( , $language, $text ) = $data;
+ $rows[] = array(
+ 'tmt_sid' => $this->sids[$key],
+ 'tmt_lang' => $language,
+ 'tmt_text' => $text,
+ );
+ }
+
+ $dbw = $this->getDB( DB_MASTER );
+ $dbw->insert( 'translate_tmt', $rows, __METHOD__ );
+ wfWaitForSlaves( 10 );
+ }
+
+ public function endBatch() {
+ }
+
+ public function endBootstrap() {
+ $dbw = $this->getDB( DB_MASTER );
+ $table = $dbw->tableName( 'translate_tmf' );
+ $dbw->query( "CREATE FULLTEXT INDEX tmf_text ON $table (tmf_text)" );
+ }
+
+ /* Reading interface */
+
+ public function isLocalSuggestion( array $suggestion ) {
+ return true;
+ }
+
+ public function expandLocation( array $suggestion ) {
+ $title = Title::newFromText( $suggestion['location'] );
+
+ return $title->getCanonicalUrl();
+ }
+
+ public function query( $sourceLanguage, $targetLanguage, $text ) {
+ wfProfileIn( __METHOD__ );
+ // Calculate the bounds of the string length which are able
+ // to satisfy the cutoff percentage in edit distance.
+ $len = mb_strlen( $text );
+ $min = ceil( max( $len * $this->config['cutoff'], 2 ) );
+ $max = floor( $len / $this->config['cutoff'] );
+
+ // We could use fulltext index to narrow the results further
+ $dbr = $this->getDB( DB_SLAVE );
+ $tables = array( 'translate_tmt', 'translate_tms' );
+ $fields = array( 'tms_context', 'tms_text', 'tmt_lang', 'tmt_text' );
+
+ $conds = array(
+ 'tms_lang' => $sourceLanguage,
+ 'tmt_lang' => $targetLanguage,
+ "tms_len BETWEEN $min AND $max",
+ 'tms_sid = tmt_sid',
+ );
+
+ $fulltext = $this->filterForFulltext( $sourceLanguage, $text );
+ if ( $fulltext ) {
+ $tables[] = 'translate_tmf';
+ $list = implode( ' ', $fulltext );
+ $conds[] = 'tmf_sid = tmt_sid';
+ $conds[] = "MATCH(tmf_text) AGAINST( '$list' )";
+ }
+
+ $res = $dbr->select( $tables, $fields, $conds, __METHOD__ );
+ wfProfileOut( __METHOD__ );
+
+ return $this->processQueryResults( $res, $text, $targetLanguage );
+ }
+
+ protected function processQueryResults( $res, $text, $targetLanguage ) {
+ wfProfileIn( __METHOD__ );
+ $timeLimit = microtime( true ) + 5;
+
+ $lenA = mb_strlen( $text );
+ $results = array();
+ foreach ( $res as $row ) {
+ if ( microtime( true ) > $timeLimit ) {
+ // Having no suggestions is better than preventing translation
+ // altogether by timing out the request :(
+ break;
+ }
+
+ $a = $text;
+ $b = $row->tms_text;
+ $lenB = mb_strlen( $b );
+ $len = min( $lenA, $lenB );
+ if ( $len > 600 ) {
+ // two strings of length 1500 ~ 10s
+ // two strings of length 2250 ~ 30s
+ $dist = $len;
+ } else {
+ $dist = self::levenshtein( $a, $b, $lenA, $lenB );
+ }
+ $quality = 1 - ( $dist * 0.9 / $len );
+
+ if ( $quality >= $this->config['cutoff'] ) {
+ $results[] = array(
+ 'source' => $row->tms_text,
+ 'target' => $row->tmt_text,
+ 'context' => $row->tms_context,
+ 'location' => $row->tms_context . '/' . $targetLanguage,
+ 'quality' => $quality,
+ 'wiki' => isset( $row->tms_wiki ) ? $row->tms_wiki : wfWikiId(),
+ );
+ }
+ }
+ $results = TTMServer::sortSuggestions( $results );
+ wfProfileOut( __METHOD__ );
+
+ return $results;
+ }
+}
diff --git a/MLEB/Translate/ttmserver/ElasticSearchTTMServer.php b/MLEB/Translate/ttmserver/ElasticSearchTTMServer.php
new file mode 100644
index 00000000..56401d21
--- /dev/null
+++ b/MLEB/Translate/ttmserver/ElasticSearchTTMServer.php
@@ -0,0 +1,513 @@
+<?php
+/**
+ * TTMServer - The Translate extension translation memory interface
+ *
+ * @file
+ * @author Niklas Laxström
+ * @license GPL-2.0+
+ * @ingroup TTMServer
+ */
+
+/**
+ * TTMServer backed based on ElasticSearch. Depends on Elastica.
+ * @since 2014.04
+ * @ingroup TTMServer
+ */
+class ElasticSearchTTMServer
+ extends TTMServer
+ implements ReadableTTMServer, WritableTTMServer, SearchableTTMserver
+{
+ /**
+ * @var \Elastica\Client
+ */
+ protected $client;
+
+ /**
+ * Reference to the maintenance script to relay logging output.
+ */
+ protected $logger;
+
+ public function isLocalSuggestion( array $suggestion ) {
+ return $suggestion['wiki'] === wfWikiId();
+ }
+
+ public function expandLocation( array $suggestion ) {
+ return $suggestion['uri'];
+ }
+
+ public function query( $sourceLanguage, $targetLanguage, $text ) {
+ try {
+ return $this->doQuery( $sourceLanguage, $targetLanguage, $text );
+ } catch ( Exception $e ) {
+ throw new TranslationHelperException( 'Elastica exception: ' . $e );
+ }
+ }
+
+ protected function doQuery( $sourceLanguage, $targetLanguage, $text ) {
+ /* Two query system:
+ * 1) Find all strings in source language that match text
+ * 2) Do another query for translations for those strings
+ */
+ wfProfileIn( __METHOD__ );
+ $connection = $this->getClient()->getConnection();
+ $oldTimeout = $connection->getTimeout();
+ $connection->setTimeout( 10 );
+
+ $fuzzyQuery = new \Elastica\Query\FuzzyLikeThis();
+ $fuzzyQuery->setLikeText( $text );
+ $fuzzyQuery->addFields( array( 'content' ) );
+
+ $groovyScript =
+<<<GROOVY
+import org.apache.lucene.search.spell.*
+new LevensteinDistance().getDistance(srctxt, _source['content'])
+GROOVY;
+ $script = new \Elastica\Script(
+ $groovyScript,
+ array( 'srctxt' => $text ),
+ \Elastica\Script::LANG_GROOVY
+ );
+ $boostQuery = new \Elastica\Query\FunctionScore();
+ $boostQuery->addScriptScoreFunction( $script );
+ $boostQuery->setBoostMode( \Elastica\Query\FunctionScore::BOOST_MODE_REPLACE );
+
+ // Wrap the fuzzy query so it can be used as a filter.
+ // This is slightly faster, as ES can throw away the scores by this query.
+ $fuzzyFilter = new \Elastica\Filter\Query();
+ $fuzzyFilter->setQuery( $fuzzyQuery );
+ $boostQuery->setFilter( $fuzzyFilter );
+
+ // The whole query
+ $query = new \Elastica\Query();
+ $query->setQuery( $boostQuery );
+
+ $languageFilter = new \Elastica\Filter\Term();
+ $languageFilter->setTerm( 'language', $sourceLanguage );
+ $query->setFilter( $languageFilter );
+
+ /* The interface usually displays three best candidates. These might
+ * come from more than three matches, if the translation is the same.
+ * This might not find all suggestions, if the top N best matching
+ * source texts don't have translations, but worse matches do. We
+ * could loop with start parameter to fetch more until we have enough
+ * suggestions or the quality drops below the cutoff point. */
+ $query->setSize( 25 );
+ $query->setParam( '_source', array( 'content' ) );
+ $resultset = $this->getType()->search( $query );
+
+ /* This query is doing two unrelated things:
+ * 1) Collect the message contents and scores so that they can
+ * be accessed later for the translations we found.
+ * 2) Build the query string for the query that fetches the
+ * translations.
+ * This code is a bit uglier than I'd like it to be, since there
+ * there is no field that globally identifies a message (message
+ * definition and translations). */
+ $contents = $scores = $terms = array();
+ foreach ( $resultset->getResults() as $result ) {
+ $data = $result->getData();
+ $score = $result->getScore();
+ if ( $score < $this->config['cutoff'] ) {
+ continue;
+ }
+
+ $sourceId = preg_replace( '~/[^/]+$~', '', $result->getId() );
+ $contents[$sourceId] = $data['content'];
+ $scores[$sourceId] = $score;
+ $terms[] = "$sourceId/$targetLanguage";
+ }
+
+ $idQuery = new \Elastica\Query\Terms();
+ $idQuery->setTerms( '_id', $terms );
+
+ $query = new \Elastica\Query( $idQuery );
+ $query->setSize( 25 );
+ $query->setParam( '_source', array( 'wiki', 'uri', 'content', 'localid' ) );
+ $resultset = $this->getType()->search( $query );
+
+ $suggestions = array();
+ foreach ( $resultset->getResults() as $result ) {
+ $data = $result->getData();
+
+ // Construct the matching source id
+ $sourceId = preg_replace( '~/[^/]+$~', '', $result->getId() );
+
+ $suggestions[] = array(
+ 'source' => $contents[$sourceId],
+ 'target' => $data['content'],
+ 'context' => $data['localid'],
+ 'quality' => $scores[$sourceId],
+ 'wiki' => $data['wiki'],
+ 'location' => $data['localid'] . '/' . $targetLanguage,
+ 'uri' => $data['uri'],
+ );
+ }
+
+ // Ensure reults are in quality order
+ uasort( $suggestions, function ( $a, $b ) {
+ if ( $a['quality'] === $b['quality'] ) {
+ return 0;
+ }
+
+ return ( $a['quality'] < $b['quality'] ) ? 1 : -1;
+ } );
+
+ $connection->setTimeout( $oldTimeout );
+
+ wfProfileOut( __METHOD__ );
+
+ return $suggestions;
+ }
+
+ /* Write functions */
+
+ public function update( MessageHandle $handle, $targetText ) {
+ if ( !$handle->isValid() || $handle->getCode() === '' ) {
+ return false;
+ }
+
+ wfProfileIn( __METHOD__ );
+
+ /* There are various different cases here:
+ * [new or updated] [fuzzy|non-fuzzy] [translation|definition]
+ * 1) We don't distinguish between new or updated here.
+ * 2) Delete old translation, but not definition
+ * 3) Insert new translation or definition, if non-fuzzy
+ * The definition should never be fuzzied anyway.
+ *
+ * These only apply to known messages.
+ */
+
+ $title = $handle->getTitle();
+ $sourceLanguage = $handle->getGroup()->getSourceLanguage();
+
+ // Do not delete definitions, because the translations are attached to that
+ if ( $handle->getCode() !== $sourceLanguage ) {
+ $localid = $handle->getTitleForBase()->getPrefixedText();
+
+ $boolQuery = new \Elastica\Query\Bool();
+ $boolQuery->addMust( new Elastica\Query\Term( array( 'wiki' => wfWikiId() ) ) );
+ $boolQuery->addMust( new Elastica\Query\Term( array( 'language' => $handle->getCode() ) ) );
+ $boolQuery->addMust( new Elastica\Query\Term( array( 'localid' => $localid ) ) );
+
+ $query = new \Elastica\Query( $boolQuery );
+ $this->getType()->deleteByQuery( $query );
+ }
+
+ // If translation was made fuzzy, we do not need to add anything
+ if ( $targetText === null ) {
+ return true;
+ }
+
+ $revId = $handle->getTitleForLanguage( $sourceLanguage )->getLatestRevID();
+ $doc = $this->createDocument( $handle, $targetText, $revId );
+
+ $retries = 5;
+ while ( $retries-- > 0 ) {
+ try {
+ $this->getType()->addDocument( $doc );
+ break;
+ } catch ( \Elastica\Exception\ExceptionInterface $e ) {
+ if ( $retries === 0 ) {
+ wfProfileOut( __METHOD__ );
+ throw $e;
+ } else {
+ $c = get_class( $e );
+ $msg = $e->getMessage();
+ error_log( __METHOD__ . ": update failed ($c: $msg); retrying." );
+ sleep( 10 );
+ }
+ }
+ }
+
+ wfProfileOut( __METHOD__ );
+
+ return true;
+ }
+
+ /**
+ * @return \Elastica\Document
+ */
+ protected function createDocument( MessageHandle $handle, $text, $revId ) {
+ $language = $handle->getCode();
+
+ $localid = $handle->getTitleForBase()->getPrefixedText();
+ $wiki = wfWikiId();
+ $globalid = "$wiki-$localid-$revId/$language";
+
+ $data = array(
+ 'wiki' => $wiki,
+ 'uri' => $handle->getTitle()->getCanonicalUrl(),
+ 'localid' => $localid,
+ 'language' => $language,
+ 'content' => $text,
+ 'group' => $handle->getGroupIds(),
+ );
+
+ return new \Elastica\Document( $globalid, $data );
+ }
+
+ public function beginBootstrap() {
+ $type = $this->getType();
+
+ if ( !$type->getIndex()->exists() ) {
+ $type->getIndex()->create(
+ array(
+ 'number_of_shards' => $this->getShardCount(),
+ 'number_of_replicas' => $this->getReplicaCount(),
+ ),
+ false /* Do not drop the index if exists */
+ );
+ }
+
+ $settings = $type->getIndex()->getSettings();
+ $settings->setRefreshInterval( -1 );
+
+ $term = new Elastica\Query\Term();
+ $term->setTerm( 'wiki', wfWikiId() );
+ $query = new \Elastica\Query( $term );
+ $type->deleteByQuery( $query );
+
+ $mapping = new \Elastica\Type\Mapping();
+ $mapping->setType( $type );
+ $mapping->setProperties( array(
+ 'wiki' => array( 'type' => 'string', 'index' => 'not_analyzed' ),
+ 'localid' => array( 'type' => 'string', 'index' => 'not_analyzed' ),
+ 'uri' => array( 'type' => 'string', 'index' => 'not_analyzed' ),
+ 'language' => array( 'type' => 'string', 'index' => 'not_analyzed' ),
+ 'group' => array( 'type' => 'string', 'index' => 'not_analyzed' ),
+ 'content' => array( 'type' => 'string', 'index' => 'analyzed', 'term_vector' => 'yes' ),
+ ) );
+ $mapping->send();
+
+ $this->waitUntilReady();
+ }
+
+ public function beginBatch() {
+ // I hate the rule that forbids {}
+ }
+
+ public function batchInsertDefinitions( array $batch ) {
+ $lb = new LinkBatch();
+ foreach ( $batch as $data ) {
+ $lb->addObj( $data[0]->getTitle() );
+ }
+ $lb->execute();
+
+ $this->batchInsertTranslations( $batch );
+ }
+
+ public function batchInsertTranslations( array $batch ) {
+ $docs = array();
+ foreach ( $batch as $data ) {
+ list( $handle, $sourceLanguage, $text ) = $data;
+ $revId = $handle->getTitleForLanguage( $sourceLanguage )->getLatestRevID();
+ $docs[] = $this->createDocument( $handle, $text, $revId );
+ }
+
+ $retries = 5;
+ while ( $retries-- > 0 ) {
+ try {
+ $this->getType()->addDocuments( $docs );
+ break;
+ } catch ( \Elastica\Exception\ExceptionInterface $e ) {
+ if ( $retries === 0 ) {
+ throw $e;
+ } else {
+ $c = get_class( $e );
+ $msg = $e->getMessage();
+ $this->logOutput( "Batch failed ($c: $msg), trying again in 10 seconds" );
+ sleep( 10 );
+ }
+ }
+ }
+ }
+
+ public function endBatch() {
+ // I hate the rule that forbids {}
+ }
+
+ public function endBootstrap() {
+ $index = $this->getType()->getIndex();
+ $index->refresh();
+ $index->optimize();
+ $index->getSettings()->setRefreshInterval( 5 );
+ }
+
+ public function getClient() {
+ if ( !$this->client ) {
+ if ( isset( $this->config['config'] ) ) {
+ $this->client = new \Elastica\Client( $this->config['config'] );
+ } else {
+ $this->client = new \Elastica\Client();
+ }
+ }
+ return $this->client;
+ }
+
+ public function getType() {
+ if ( isset( $this->config['index'] ) ) {
+ $index = $this->config['index'];
+ } else {
+ $index = 'ttmserver';
+ }
+ return $this->getClient()->getIndex( $index )->getType( 'message' );
+ }
+
+ protected function getShardCount() {
+ return isset( $this->config['shards'] ) ? $this->config['shards'] : 5;
+ }
+
+ protected function getReplicaCount() {
+ return isset( $this->config['replicas'] ) ? $this->config['replicas'] : 0;
+ }
+
+ protected function waitUntilReady() {
+ $expectedActive = $this->getShardCount() * ( 1 + $this->getReplicaCount() );
+ $indexName = $this->getType()->getIndex()->getName();
+ $path = "_cluster/health/$indexName";
+
+ while ( true ) {
+ $response = $this->getClient()->request( $path );
+ if ( $response->hasError() ) {
+ $this->logOutput( 'Error fetching index health. Retrying.' );
+ $this->logOutput( 'Message: ' + $response->getError() );
+ } else {
+ $health = $response->getData();
+ $active = $health['active_shards'];
+ $this->logOutput(
+ "active:$active/$expectedActive ".
+ "relocating:{$health['relocating_shards']} " .
+ "initializing:{$health['initializing_shards']} ".
+ "unassigned:{$health['unassigned_shards']}"
+ );
+ }
+
+ if ( $active === $expectedActive ) {
+ break;
+ }
+
+ sleep( 10 );
+ }
+ }
+
+ public function setLogger( $logger ) {
+ $this->logger = $logger;
+ }
+
+ // Can it get any uglier?
+ protected function logOutput( $text ) {
+ if ( $this->logger ) {
+ $this->logger->statusLine( "$text\n" );
+ }
+ }
+
+ // Search interface
+ public function search( $queryString, $opts, $highlight ) {
+ $query = new \Elastica\Query();
+
+ // Allow searching either by message content or message id (page name
+ // without language subpage) with exact match only.
+ $serchQuery = new \Elastica\Query\Bool();
+ $contentQuery = new \Elastica\Query\Match();
+ $contentQuery->setFieldQuery( 'content', $queryString );
+ $serchQuery->addShould( $contentQuery );
+ $messageQuery = new \Elastica\Query\Term();
+ $messageQuery->setTerm( 'localid', $queryString );
+ $serchQuery->addShould( $messageQuery );
+ $query->setQuery( $serchQuery );
+
+ $language = new \Elastica\Facet\Terms( 'language' );
+ $language->setField( 'language' );
+ $language->setSize( 500 );
+ $query->addFacet( $language );
+
+ $group = new \Elastica\Facet\Terms( 'group' );
+ $group->setField( 'group' );
+ // Would like to prioritize the top level groups and not show subgroups
+ // if the top group has only few hits, but that doesn't seem to be possile.
+ $group->setSize( 500 );
+ $query->addFacet( $group );
+
+ $query->setSize( $opts->getValue( 'limit' ) );
+ $query->setFrom( $opts->getValue( 'offset' ) );
+
+ // BoolAnd filters are executed in sequence per document. Bool filters with
+ // multiple must clauses are executed by converting each filter into a bit
+ // field then anding them together. The latter is normally faster if either
+ // of the subfilters are reused. May not make a difference in this context.
+ $filters = new \Elastica\Filter\Bool();
+
+ $language = $opts->getValue( 'language' );
+ if ( $language !== '' ) {
+ $languageFilter = new \Elastica\Filter\Term();
+ $languageFilter->setTerm( 'language', $language );
+ $filters->addMust( $languageFilter );
+ }
+
+ $group = $opts->getValue( 'group' );
+ if ( $group !== '' ) {
+ $groupFilter = new \Elastica\Filter\Term();
+ $groupFilter->setTerm( 'group', $group );
+ $filters->addMust( $groupFilter );
+ }
+
+ // Check that we have at least one filter to avoid invalid query errors.
+ if ( $language !== '' || $group !== '' ) {
+ $query->setFilter( $filters );
+ }
+
+ list( $pre, $post ) = $highlight;
+ $query->setHighlight( array(
+ // The value must be an object
+ 'fields' => array(
+ 'content' => array(
+ 'number_of_fragments' => 0,
+ ),
+ ),
+ 'pre_tags' => array( $pre ),
+ 'post_tags' => array( $post ),
+ ) );
+
+ try {
+ return $this->getType()->getIndex()->search( $query );
+ } catch ( \Elastica\Exception\ExceptionInterface $e ) {
+ throw new TTMServerException( $e->getMessage() );
+ }
+ }
+
+ public function getFacets( $resultset ) {
+ $facets = $resultset->getFacets();
+
+ $ret = array(
+ 'language' => array(),
+ 'group' => array()
+ );
+
+ foreach ( $facets as $type => $facetInfo ) {
+ foreach ( $facetInfo['terms'] as $facetRow ) {
+ $ret[$type][$facetRow['term']] = $facetRow['count'];
+ }
+ }
+
+ return $ret;
+ }
+
+ public function getTotalHits( $resultset ) {
+ return $resultset->getTotalHits();
+ }
+
+ public function getDocuments( $resultset ) {
+ $ret = array();
+ foreach ( $resultset->getResults() as $document ) {
+ $data = $document->getData();
+ $hl = $document->getHighlights();
+ if ( isset( $hl['content'][0] ) ) {
+ $data['content'] = $hl['content'][0];
+ }
+ $ret[] = $data;
+ }
+
+ return $ret;
+ }
+}
diff --git a/MLEB/Translate/ttmserver/Exceptions.php b/MLEB/Translate/ttmserver/Exceptions.php
new file mode 100644
index 00000000..97859cf0
--- /dev/null
+++ b/MLEB/Translate/ttmserver/Exceptions.php
@@ -0,0 +1,4 @@
+<?php
+
+class TTMServerException extends MWException {
+}
diff --git a/MLEB/Translate/ttmserver/FakeTTMServer.php b/MLEB/Translate/ttmserver/FakeTTMServer.php
new file mode 100644
index 00000000..15f8d377
--- /dev/null
+++ b/MLEB/Translate/ttmserver/FakeTTMServer.php
@@ -0,0 +1,52 @@
+<?php
+/**
+ * TTMServer - The Translate extension translation memory interface
+ *
+ * @file
+ * @author Niklas Laxström
+ * @copyright Copyright © 2012-2013, Niklas Laxström
+ * @license GPL-2.0+
+ * @ingroup TTMServer
+ */
+
+/**
+ * NO-OP version of TTMServer when it is disabled.
+ * Keeps other code simpler when they can just do
+ * TTMServer::primary()->update( ... );
+ * @since 2012-01-28
+ * @ingroup TTMServer
+ */
+class FakeTTMServer implements ReadableTTMServer, WritableTTMServer {
+ public function query( $sourceLanguage, $targetLanguage, $text ) {
+ return array();
+ }
+
+ public function isLocalSuggestion( array $suggestion ) {
+ false;
+ }
+
+ public function expandLocation( array $suggestion ) {
+ return '';
+ }
+
+ public function update( MessageHandle $handle, $targetText ) {
+ }
+
+ public function beginBootstrap() {
+ }
+
+ public function beginBatch() {
+ }
+
+ public function batchInsertDefinitions( array $batch ) {
+ }
+
+ public function batchInsertTranslations( array $batch ) {
+ }
+
+ public function endBatch() {
+ }
+
+ public function endBootstrap() {
+ }
+}
diff --git a/MLEB/Translate/ttmserver/Interfaces.php b/MLEB/Translate/ttmserver/Interfaces.php
new file mode 100644
index 00000000..711b4b4e
--- /dev/null
+++ b/MLEB/Translate/ttmserver/Interfaces.php
@@ -0,0 +1,129 @@
+<?php
+/**
+ * TTMServer - The Translate extension translation memory interface
+ *
+ * @file
+ * @author Niklas Laxström
+ * @copyright Copyright © 2012-2013, Niklas Laxström
+ * @license GPL-2.0+
+ * @ingroup TTMServer
+ */
+
+/**
+ * Interface for TTMServer that can be queried (=all of them).
+ * @ingroup TTMServer
+ * @since 2012-06-27
+ */
+interface ReadableTTMServer {
+ /**
+ * Fetches all relevant suggestions for given text.
+ *
+ * @param $sourceLanguage String: language code for the provide text
+ * @param $targetLanguage String: language code for the suggestions
+ * @param $text String: the text for which to search suggestions
+ * @return array List: unordered suggestions, which each has fields:
+ * - source: String: the original text of the suggestion
+ * - target: String: the suggestion
+ * - context: String: title of the page where the suggestion comes from
+ * - quality: Float: the quality of suggestion, 1 is perfect match
+ */
+ public function query( $sourceLanguage, $targetLanguage, $text );
+
+ /**
+ * Determines if the suggestion returned by this TTMServer comes
+ * from this wiki or any other wiki.
+ * @param array $suggestion
+ * @return Bool
+ */
+ public function isLocalSuggestion( array $suggestion );
+
+ /**
+ * Given suggestion returned by this TTMServer, constructs fully
+ * qualified URL to the location of the translation.
+ * @param array $suggestion
+ * @return String URL
+ */
+ public function expandLocation( array $suggestion );
+}
+
+/**
+ * Interface for TTMServer that can be updated.
+ * @ingroup TTMServer
+ * @since 2012-06-27
+ */
+interface WritableTTMServer {
+ /**
+ * Shovels the new translation into translation memory.
+ * Use this for single updates (=after message edit).
+ * If no text is provided, entry will be removed from the translation
+ * memory.
+ *
+ * @param MessageHandle $handle
+ * @param string|null $targetText Use null to only delete.
+ */
+ public function update( MessageHandle $handle, $targetText );
+
+ /**
+ * Called when starting to fill the translation memory.
+ * Set up necessary variables and remove old content
+ * from the server.
+ */
+ public function beginBootstrap();
+
+ /**
+ * Called before every batch (MessageGroup).
+ */
+ public function beginBatch();
+
+ /**
+ * Called multiple times per batch if necessary.
+ */
+ public function batchInsertDefinitions( array $batch );
+
+ /**
+ * Called multiple times per batch if necessary.
+ */
+ public function batchInsertTranslations( array $batch );
+
+ /**
+ * Called before every batch (MessageGroup).
+ */
+ public function endBatch();
+
+ /**
+ * Do any cleanup, optimizing etc.
+ */
+ public function endBootstrap();
+}
+
+/**
+ * Interface for TTMServer that can act as backend for translation search.
+ * @ingroup TTMServer
+ * @since 2014.04
+ */
+interface SearchableTTMServer {
+ /**
+ * Performs a search in the translation database.
+ *
+ * @param string $queryString String to search for.
+ * @param FormOptions $opts Query options like language.
+ * @param array $highlight Tags for highlighting.
+ * @return mixed Result set
+ */
+ public function search( $queryString, $opts, $highlight );
+
+ /**
+ * ...
+ */
+ public function getFacets( $resultset );
+
+ /**
+ * @return int
+ */
+ public function getTotalHits( $resultset );
+
+ /**
+ * @return array[]
+ */
+ public function getDocuments( $resultset );
+}
diff --git a/MLEB/Translate/ttmserver/RemoteTTMServer.php b/MLEB/Translate/ttmserver/RemoteTTMServer.php
new file mode 100644
index 00000000..4225b2c8
--- /dev/null
+++ b/MLEB/Translate/ttmserver/RemoteTTMServer.php
@@ -0,0 +1,32 @@
+<?php
+/**
+ * TTMServer - The Translate extension translation memory interface
+ *
+ * @file
+ * @author Niklas Laxström
+ * @copyright Copyright © 2012-2013, Niklas Laxström
+ * @license GPL-2.0+
+ * @ingroup TTMServer
+ */
+
+/**
+ * Class for handling remote TTMServers over MediaWiki API.
+ * Currently querying is done in TranslationHelpers, and
+ * this class only handles location retrieval.
+ * @since 2012-06-27
+ * @ingroup TTMServer
+ */
+class RemoteTTMServer extends TTMServer implements ReadableTTMServer {
+ public function query( $sourceLanguage, $targetLanguage, $text ) {
+ // @todo Implement some day perhaps?
+ return array();
+ }
+
+ public function isLocalSuggestion( array $suggestion ) {
+ return false;
+ }
+
+ public function expandLocation( array $suggestion ) {
+ return $suggestion['location'];
+ }
+}
diff --git a/MLEB/Translate/ttmserver/SolrTTMServer.php b/MLEB/Translate/ttmserver/SolrTTMServer.php
new file mode 100644
index 00000000..b3136ae4
--- /dev/null
+++ b/MLEB/Translate/ttmserver/SolrTTMServer.php
@@ -0,0 +1,440 @@
+<?php
+/**
+ * TTMServer - The Translate extension translation memory interface
+ *
+ * @file
+ * @author Niklas Laxström
+ * @copyright Copyright © 2012-2013, Niklas Laxström
+ * @license GPL-2.0+
+ * @ingroup TTMServer
+ */
+
+/**
+ * TTMServer backed based on Solr instance. Depends on Solarium.
+ * @since 2012-06-27
+ * @ingroup TTMServer
+ */
+class SolrTTMServer
+ extends TTMServer
+ implements ReadableTTMServer, SearchableTTMServer, WritableTTMServer
+{
+ /**
+ * In case auto-commit is not enabled, or even if it is, tell solr to
+ * commit before this time has passed, in milliseconds.
+ */
+ const COMMIT_WITHIN = 5000;
+
+ protected $client;
+
+ /**
+ * Reference to the maintenance script to relay logging output.
+ */
+ protected $logger;
+
+ public function __construct( $config ) {
+ wfProfileIn( __METHOD__ );
+ parent::__construct( $config );
+ if ( isset( $config['config'] ) ) {
+ $this->client = new Solarium_Client( $config['config'] );
+ } else {
+ $this->client = new Solarium_Client();
+ }
+ wfProfileOut( __METHOD__ );
+ }
+
+ public function isLocalSuggestion( array $suggestion ) {
+ return $suggestion['wiki'] === wfWikiId();
+ }
+
+ public function expandLocation( array $suggestion ) {
+ return $suggestion['uri'];
+ }
+
+ public function query( $sourceLanguage, $targetLanguage, $text ) {
+ try {
+ return $this->doQuery( $sourceLanguage, $targetLanguage, $text );
+ } catch ( Solarium_Exception $e ) {
+ throw new TranslationHelperException( 'Solarium exception: ' . $e );
+ }
+ }
+
+ /// @see ReadableTTMServer::query
+ protected function doQuery( $sourceLanguage, $targetLanguage, $text ) {
+ /* Two query system:
+ * 1) Find all strings in source language that match text
+ * 2) Do another query for translations for those strings
+ */
+ wfProfileIn( __METHOD__ );
+ // For now impose a length limit on query string to avoid doing
+ // very slow queries. Magic number.
+ if ( strlen( $text ) > 789 ) {
+ return array();
+ }
+
+ $query = $this->client->createSelect();
+ $query->setFields( array( 'globalid', 'content', 'score' ) );
+
+ /* The interface usually displays three best candidates. These might
+ * come from more than three matches, if the translation is the same.
+ * This might not find all suggestions, if the top N best matching
+ * source texts don't have translations, but worse matches do. We
+ * could loop with start parameter to fetch more until we have enough
+ * suggestions or the quality drops below the cutoff point. */
+ $query->setRows( 25 );
+
+ /* Our string can contain all kind of nasty characters, so we need
+ * escape them with great pain. */
+ $helper = $query->getHelper();
+ $dist = $helper->escapePhrase( $text );
+ // "edit" could also be ngram of other algorithm
+ $dist = "strdist($dist,content,edit)";
+ /* Note how we need to escape twice here, first the string for strdist
+ * and then the strdist call itself for the query. And of course every-
+ * thing will be URL encoded once sent over the line. */
+ $query->setQuery( '_val_:%P1%', array( $dist ) );
+
+ /* Filter queries are supposed to be efficient as they are separately
+ * cached, but I haven't done any benchmarks. */
+ $query->createFilterQuery( 'lang' )
+ ->setQuery( 'language:%P1%', array( $sourceLanguage ) );
+
+ $resultset = $this->client->select( $query );
+
+ /* This query is doing two unrelated things:
+ * 1) Collect the message contents and scores so that they can
+ * be accessed later for the translations we found.
+ * 2) Build the query string for the query that fetches the
+ * translations.
+ * This code is a bit uglier than I'd like it to be, since there
+ * there is no field that globally identifies a message (message
+ * definition and translations). */
+ $contents = $scores = array();
+ $queryString = '';
+ foreach ( $resultset as $doc ) {
+ $sourceId = preg_replace( '~/[^/]+$~', '', $doc->globalid );
+ $contents[$sourceId] = $doc->content;
+ $scores[$sourceId] = $doc->score;
+
+ $globalid = $helper->escapePhrase( "$sourceId/$targetLanguage" );
+ $queryString .= "globalid:$globalid ";
+ }
+
+ // Second query to fetch available translations
+ $fetchQuery = $this->client->createSelect();
+ $fetchQuery->setFields( array( 'wiki', 'uri', 'content', 'messageid', 'globalid' ) );
+ // This come in random order, so have to fetch all and sort
+ $fetchQuery->setRows( 25 );
+ $fetchQuery->setQuery( $queryString );
+ // With AND we would not find anything, obviously.
+ $fetchQuery->setQueryDefaultOperator( Solarium_Query_Select::QUERY_OPERATOR_OR );
+
+ $translations = $this->client->select( $fetchQuery );
+
+ $suggestions = array();
+ foreach ( $translations as $doc ) {
+ /* Construct the matching source id */
+ $sourceId = preg_replace( '~/[^/]+$~', '', $doc->globalid );
+
+ /* Unfortunately we cannot do this on the search server,
+ * because score is not a real field and thus cannot be
+ * used in a filter query. */
+ $quality = $scores[$sourceId];
+ if ( $quality < $this->config['cutoff'] ) {
+ continue;
+ }
+
+ $suggestions[] = array(
+ 'source' => $contents[$sourceId],
+ 'target' => $doc->content,
+ 'context' => $doc->messageid,
+ 'quality' => $quality,
+ 'wiki' => $doc->wiki,
+ 'location' => $doc->messageid . '/' . $targetLanguage,
+ 'uri' => $doc->uri,
+ );
+ }
+
+ /* Like mentioned above, we get results in random order. Sort them
+ * now to have best matches first as expected by callers. */
+ uasort( $suggestions, function ( $a, $b ) {
+ if ( $a['quality'] === $b['quality'] ) {
+ return 0;
+ }
+
+ return ( $a['quality'] < $b['quality'] ) ? 1 : -1;
+ } );
+
+ wfProfileOut( __METHOD__ );
+
+ return $suggestions;
+ }
+
+ /* Write functions */
+
+ public function update( MessageHandle $handle, $targetText ) {
+ if ( $handle->getCode() === '' ) {
+ return false;
+ }
+ wfProfileIn( __METHOD__ );
+
+ /* There are various different cases here:
+ * [new or updated] [fuzzy|non-fuzzy] [translation|definition]
+ * 1) We don't distinguish between new or updated here.
+ * 2) Delete old translation, but not definition
+ * 3) Insert new translation or definition, if non-fuzzy
+ * The definition should never be fuzzied anyway.
+ *
+ * These only apply to known messages.
+ */
+
+ $update = $this->client->createUpdate();
+ $title = $handle->getTitle();
+
+ $doDelete = true;
+ $sourceLanguage = '';
+ if ( $handle->isValid() ) {
+ $sourceLanguage = $handle->getGroup()->getSourceLanguage();
+ if ( $handle->getCode() === $sourceLanguage ) {
+ $doDelete = false;
+ }
+ }
+
+ if ( $doDelete ) {
+ $base = Title::makeTitle( $title->getNamespace(), $handle->getKey() );
+ $conds = array(
+ 'wiki' => wfWikiId(),
+ 'language' => $handle->getCode(),
+ 'messageid' => $base->getPrefixedText(),
+ );
+ foreach ( $conds as $key => &$value ) {
+ $value = "$key:" . $update->getHelper()->escapePhrase( $value );
+ }
+ $update->addDeleteQuery( implode( ' AND ', $conds ) );
+ }
+
+ if ( $targetText !== null ) {
+ if ( $handle->isValid() ) {
+ // Of the message definition page
+ $targetTitle = $handle->getTitle();
+ $sourceTitle = Title::makeTitle(
+ $targetTitle->getNamespace(),
+ $handle->getKey() . '/' . $sourceLanguage
+ );
+ $revId = intval( $sourceTitle->getLatestRevID() );
+ /* Note: in some cases the source page might not exist, in this case
+ * we use 0 as message version identifier, to differentiate them from
+ * orphan messages */
+ } else {
+ $revId = 'orphan';
+ }
+
+ $doc = $this->createDocument( $handle, $targetText, $revId );
+ // Add document and commit within X seconds.
+ $update->addDocument( $doc, null, self::COMMIT_WITHIN );
+ }
+
+ try {
+ $this->client->update( $update );
+ } catch ( Solarium_Exception $e ) {
+ error_log( "SolrTTMServer update-write failed" );
+ wfProfileOut( __METHOD__ );
+
+ return false;
+ }
+
+ wfProfileOut( __METHOD__ );
+
+ return true;
+ }
+
+ /**
+ * @see schema.xml
+ */
+ protected function createDocument( MessageHandle $handle, $text, $revId ) {
+ $language = $handle->getCode();
+ $translationTitle = $handle->getTitle();
+
+ $title = Title::makeTitle( $handle->getTitle()->getNamespace(), $handle->getKey() );
+ $wiki = wfWikiId();
+ $messageid = $title->getPrefixedText();
+ $globalid = "$wiki-$messageid-$revId/$language";
+
+ $doc = new Solarium_Document_ReadWrite();
+ $doc->wiki = $wiki;
+ $doc->uri = $translationTitle->getCanonicalUrl();
+ $doc->messageid = $messageid;
+ $doc->globalid = $globalid;
+
+ $doc->language = $language;
+ $doc->content = $text;
+ $doc->setField( 'group', $handle->getGroupIds() );
+
+ return $doc;
+ }
+
+ public function beginBootstrap() {
+ $update = $this->client->createUpdate();
+ $query = 'wiki:' . $update->getHelper()->escapePhrase( wfWikiId() );
+ $update->addDeleteQuery( $query );
+ $update->addCommit();
+ $this->client->update( $update );
+ }
+
+ public function beginBatch() {
+ // I hate the rule that forbids {}
+ }
+
+ public function batchInsertDefinitions( array $batch ) {
+ $lb = new LinkBatch();
+ foreach ( $batch as $data ) {
+ $lb->addObj( $data[0]->getTitle() );
+ }
+ $lb->execute();
+
+ $this->batchInsertTranslations( $batch );
+ }
+
+ public function batchInsertTranslations( array $batch ) {
+ $update = $this->client->createUpdate();
+ foreach ( $batch as $key => $data ) {
+ list( $handle, $sourceLanguage, $text ) = $data;
+ $revId = $handle->getTitleForLanguage( $sourceLanguage )->getLatestRevID();
+ $doc = $this->createDocument( $handle, $text, $id );
+ // Add document and commit within X seconds.
+ $update->addDocument( $doc, null, self::COMMIT_WITHIN );
+ }
+
+ $retries = 5;
+
+ while ( $retries-- > 0 ) {
+ try {
+ $this->client->update( $update );
+ break;
+ } catch ( Solarium_Client_HttpException $e ) {
+ if ( $retries === 0 ) {
+ throw $e;
+ } else {
+ $c = get_class( $e );
+ $msg = $e->getMessage();
+ $this->logOutput( "Batch failed ($c: $msg), trying again in 10 seconds" );
+ sleep( 10 );
+ }
+ }
+ }
+ }
+
+ public function endBatch() {
+ $update = $this->client->createUpdate();
+ $this->client->update( $update );
+ }
+
+ public function endBootstrap() {
+ $update = $this->client->createUpdate();
+ $update->addCommit();
+ $update->addOptimize();
+ $this->client->update( $update );
+ }
+
+ public function getSolarium() {
+ return $this->client;
+ }
+
+ public function setLogger( $logger ) {
+ $this->logger = $logger;
+ }
+
+ // Can it get any uglier?
+ protected function logOutput( $text ) {
+ if ( $this->logger ) {
+ $this->logger->statusLine( "$text\n" );
+ }
+ }
+
+ // Search interface
+ public function search( $queryString, $opts, $highlight ) {
+ $client = $this->getSolarium();
+
+ $query = $client->createSelect();
+ $dismax = $query->getDisMax();
+ $dismax->setQueryParser( 'edismax' );
+ $query->setQuery( $queryString );
+ $query->setRows( $opts->getValue( 'limit' ) );
+ $query->setStart( $opts->getValue( 'offset' ) );
+
+ list( $pre, $post ) = $highlight;
+ $hl = $query->getHighlighting();
+ $hl->setFields( 'text' );
+ $hl->setSimplePrefix( $pre );
+ $hl->setSimplePostfix( $post );
+ $hl->setMaxAnalyzedChars( '5000' );
+ $hl->setFragSize( '5000' );
+ $hl->setSnippets( 1 );
+
+ $languageFilter = $opts->getValue( 'language' );
+ if ( $languageFilter !== '' ) {
+ $query->createFilterQuery( 'languageFilter' )
+ ->setQuery( 'language:%P1%', array( $languageFilter ) )
+ ->addTag( 'filter' );
+ }
+
+ $groupFilter = $opts->getValue( 'group' );
+ if ( $groupFilter !== '' ) {
+ $query->createFilterQuery( 'groupFilter' )
+ ->setQuery( 'group:%P1%', array( $groupFilter ) )
+ ->addTag( 'filter' );
+ }
+
+ $facetSet = $query->getFacetSet();
+
+ $language = $facetSet->createFacetField( 'language' );
+ $language->setField( 'language' );
+ $language->setMincount( 1 );
+ $language->addExclude( 'filter' );
+
+ $group = $facetSet->createFacetField( 'group' );
+ $group->setField( 'group' );
+ $group->setMincount( 1 );
+ $group->setMissing( true );
+ $group->addExclude( 'filter' );
+
+ try {
+ return $client->select( $query );
+ } catch ( Solarium_Client_HttpException $e ) {
+ throw new TTMServer( $e->getMessage() );
+ }
+ }
+
+ public function getFacets( $resultset ) {
+ return array(
+ 'language' => iterator_to_array( $resultset->getFacetSet()->getFacet( 'language' ) ),
+ 'group' => iterator_to_array( $resultset->getFacetSet()->getFacet( 'group' ) ),
+ );
+ }
+
+ public function getTotalHits( $resultset ) {
+ return $resultset->getNumFound();
+ }
+
+ public function getDocuments( $resultset ) {
+ $highlighting = $resultset->getHighlighting();
+ $ret = array();
+ foreach ( $resultset as $document ) {
+ $fields = iterator_to_array( $document );
+ // Compatibility mapping
+ $fields['localid'] = $fields['messageid'];
+
+ $hdoc = $highlighting->getResult( $document->globalid );
+ $text = $hdoc->getField( 'text' );
+ if ( $text === array() ) {
+ $text = $document->text;
+ } else {
+ $text = $text[0];
+ }
+
+ $fields['content'] = $text;
+ $ret[] = $fields;
+ }
+
+ return $ret;
+ }
+}
diff --git a/MLEB/Translate/ttmserver/TTMServer.php b/MLEB/Translate/ttmserver/TTMServer.php
new file mode 100644
index 00000000..d1cf443a
--- /dev/null
+++ b/MLEB/Translate/ttmserver/TTMServer.php
@@ -0,0 +1,154 @@
+<?php
+/**
+ * TTMServer - The Translate extension translation memory interface
+ *
+ * @file
+ * @author Niklas Laxström
+ * @copyright Copyright © 2012-2013, Niklas Laxström
+ * @license GPL-2.0+
+ * @defgroup TTMServer The Translate extension translation memory interface
+ */
+
+/**
+ * Some general static methods for instantiating TTMServer and helpers.
+ * @since 2012-01-28
+ * Rewritten in 2012-06-27.
+ * @ingroup TTMServer
+ */
+class TTMServer {
+ protected $config;
+
+ protected function __construct( $config ) {
+ $this->config = $config;
+ }
+
+ public static function factory( $config ) {
+ if ( isset( $config['class'] ) ) {
+ $class = $config['class'];
+
+ return new $class( $config );
+ } elseif ( isset( $config['type'] ) ) {
+ $type = $config['type'];
+ switch ( $type ) {
+ case 'ttmserver':
+ return new DatabaseTTMServer( $config );
+ case 'remote-ttmserver':
+ return new RemoteTTMServer( $config );
+ default:
+ return null;
+ }
+ }
+
+ throw new MWEXception( "TTMServer with no type" );
+ }
+
+ /**
+ * Returns the primary server instance, useful for chaining.
+ * Primary one is defined as config with key TTMServer
+ * in $wgTranslateTranslationServices.
+ * @return WritableTTMServer
+ */
+ public static function primary() {
+ global $wgTranslateTranslationServices;
+ if ( isset( $wgTranslateTranslationServices['TTMServer'] ) ) {
+ $obj = self::factory( $wgTranslateTranslationServices['TTMServer'] );
+ if ( $obj instanceof WritableTTMServer ) {
+ return $obj;
+ }
+ }
+
+ return new FakeTTMServer();
+ }
+
+ public static function sortSuggestions( array $suggestions ) {
+ usort( $suggestions, array( __CLASS__, 'qualitySort' ) );
+
+ return $suggestions;
+ }
+
+ protected static function qualitySort( $a, $b ) {
+ list( $c, $d ) = array( $a['quality'], $b['quality'] );
+ if ( $c === $d ) {
+ return 0;
+ }
+
+ // Descending sort
+ return ( $c > $d ) ? -1 : 1;
+ }
+
+ /**
+ * PHP implementation of Levenshtein edit distance algorithm.
+ * Uses the native PHP implementation when possible for speed.
+ * The native levenshtein is limited to 255 bytes.
+ *
+ * @param $str1
+ * @param $str2
+ * @param $length1
+ * @param $length2
+ * @return int
+ */
+ public static function levenshtein( $str1, $str2, $length1, $length2 ) {
+ if ( $length1 == 0 ) {
+ return $length2;
+ }
+ if ( $length2 == 0 ) {
+ return $length1;
+ }
+ if ( $str1 === $str2 ) {
+ return 0;
+ }
+
+ $bytelength1 = strlen( $str1 );
+ $bytelength2 = strlen( $str2 );
+ if ( $bytelength1 === $length1 && $bytelength1 <= 255
+ && $bytelength2 === $length2 && $bytelength2 <= 255
+ ) {
+ return levenshtein( $str1, $str2 );
+ }
+
+ $prevRow = range( 0, $length2 );
+ for ( $i = 0; $i < $length1; $i++ ) {
+ $currentRow = array();
+ $currentRow[0] = $i + 1;
+ $c1 = mb_substr( $str1, $i, 1 );
+ for ( $j = 0; $j < $length2; $j++ ) {
+ $c2 = mb_substr( $str2, $j, 1 );
+ $insertions = $prevRow[$j + 1] + 1;
+ $deletions = $currentRow[$j] + 1;
+ $substitutions = $prevRow[$j] + ( ( $c1 != $c2 ) ? 1 : 0 );
+ $currentRow[] = min( $insertions, $deletions, $substitutions );
+ }
+ $prevRow = $currentRow;
+ }
+
+ return $prevRow[$length2];
+ }
+
+ /// Hook: ArticleDeleteComplete
+ public static function onDelete( WikiPage $wikipage ) {
+ $handle = new MessageHandle( $wikipage->getTitle() );
+ TTMServer::primary()->update( $handle, null );
+
+ return true;
+ }
+
+ /// Called from TranslateEditAddons::onSave
+ public static function onChange( MessageHandle $handle, $text, $fuzzy ) {
+ if ( $fuzzy ) {
+ $text = null;
+ }
+ TTMServer::primary()->update( $handle, $text );
+ }
+
+ public static function onGroupChange( MessageHandle $handle, $old, $new ) {
+ if ( $old === array() ) {
+ // Don't bother for newly added messages
+ return true;
+ }
+
+ $job = TTMServerMessageUpdateJob::newJob( $handle );
+ $job->insert();
+
+ return true;
+ }
+}
diff --git a/MLEB/Translate/ttmserver/TTMServerMessageUpdateJob.php b/MLEB/Translate/ttmserver/TTMServerMessageUpdateJob.php
new file mode 100644
index 00000000..d304b857
--- /dev/null
+++ b/MLEB/Translate/ttmserver/TTMServerMessageUpdateJob.php
@@ -0,0 +1,45 @@
+<?php
+/**
+ * Contains class with job for updating translation memory.
+ *
+ * @file
+ * @author Niklas Laxström
+ * @copyright Copyright © 2012-2013, Niklas Laxström
+ * @license GPL-2.0+
+ */
+
+/**
+ * Job for updating translation memory.
+ *
+ * @ingroup JobQueue
+ */
+class TTMServerMessageUpdateJob extends Job {
+ /**
+ * @param MessageHandle $handle
+ * @return TTMServerMessageUpdateJob
+ */
+ public static function newJob( MessageHandle $handle ) {
+ $job = new self( $handle->getTitle() );
+
+ return $job;
+ }
+
+ function __construct( $title, $params = array(), $id = 0 ) {
+ parent::__construct( __CLASS__, $title, $params, $id );
+ }
+
+ /**
+ * Fetch all the translations and update them.
+ */
+ function run() {
+ $handle = new MessageHandle( $this->title );
+ $translations = ApiQueryMessageTranslations::getTranslations( $handle );
+ foreach ( $translations as $page => $data ) {
+ $tTitle = Title::makeTitle( $this->title->getNamespace(), $page );
+ $tHandle = new MessageHandle( $tTitle );
+ TTMServer::onChange( $tHandle, $data[0], $tHandle->isFuzzy() );
+ }
+
+ return true;
+ }
+}
diff --git a/MLEB/Translate/ttmserver/schema.xml b/MLEB/Translate/ttmserver/schema.xml
new file mode 100644
index 00000000..0ed2f047
--- /dev/null
+++ b/MLEB/Translate/ttmserver/schema.xml
@@ -0,0 +1,45 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<!-- This is schema file for TTMServer using Solr as backend -->
+<schema name="ttmserver" version="1.5">
+ <types>
+ <fieldType name="long" class="solr.TrieLongField" precisionStep="0" positionIncrementGap="0"/>
+ <fieldType name="string" class="solr.StrField" sortMissingLast="true" />
+ <fieldType name="tint" class="solr.TrieIntField" precisionStep="50" positionIncrementGap="0"/>
+ <!-- Our input can basically be in any language, so we use either
+ language agnostic processing or something that can adapt to
+ the language in question. -->
+ <fieldType name="text_ws" class="solr.TextField" positionIncrementGap="100">
+ <analyzer>
+ <!-- Consider using solr.ICUTokenizerFactory -->
+ <tokenizer class="solr.StandardTokenizerFactory"/>
+ <!-- Consider using solr.ICUNormalizer2FilterFactory -->
+ <filter class="solr.LowerCaseFilterFactory"/>
+ </analyzer>
+ </fieldType>
+ </types>
+
+ <fields>
+ <field name="_version_" type="long" indexed="true" stored="true" />
+
+ <!-- If multiple wikis are using the same server, this will tell which one
+ owns this document. Maps to MediaWiki wfWikiId(). -->
+ <field name="wiki" type="string" indexed="true" stored="true" required="true" />
+ <!-- Title::getPrefixedText() of the message definition page. -->
+ <field name="messageid" type="string" indexed="true" stored="true" required="true" />
+ <!-- Consists of concatenation of wiki and messageid. -->
+ <field name="globalid" type="string" indexed="true" stored="true" required="true" />
+ <!-- URL or something to the translation in the wiki. -->
+ <field name="uri" type="string" indexed="true" stored="true" required="true" />
+
+ <!-- FACETs: Language and groups. -->
+ <field name="language" type="string" indexed="true" stored="true" required="true" />
+ <field name="group" multiValued="true" indexed="true" stored="true" type="string" />
+
+ <field name="content" type="string" indexed="true" stored="true" required="true" />
+
+ <field name="text" type="text_ws" indexed="true" stored="true" termVectors="true" termPositions="true" termOffsets="true" />
+ <copyField source="content" dest="text"/>
+ </fields>
+ <defaultSearchField>text</defaultSearchField>
+ <uniqueKey>globalid</uniqueKey>
+</schema>
diff --git a/MLEB/Translate/utils/ExternalMessageSourceStateComparator.php b/MLEB/Translate/utils/ExternalMessageSourceStateComparator.php
new file mode 100644
index 00000000..505266ce
--- /dev/null
+++ b/MLEB/Translate/utils/ExternalMessageSourceStateComparator.php
@@ -0,0 +1,264 @@
+<?php
+
+/**
+ * Finds external changes for file based message groups.
+ *
+ * @author Niklas Laxström
+ * @license GPL-2.0+
+ * @since 2013.12
+ */
+class ExternalMessageSourceStateComparator {
+ /** Process all languages supported by the message group */
+ const ALL_LANGUAGES = 'all languages';
+
+ protected $changes = array();
+
+ /**
+ * Finds changes in external sources compared to wiki state.
+ *
+ * The returned array is as following:
+ * - First level is indexed by language code
+ * - Second level is indexed by change type:
+ * - - addition (new message in the file)
+ * - - deletion (message in wiki not present in the file)
+ * - - change (difference in content)
+ * - Third level is a list of changes
+ * - Fourth level is change properties
+ * - - key (the message key)
+ * - - content (the message content in external source, null for deletions)
+ *
+ * @param FileBasedMessageGroup $group
+ * @param array|string $languages
+ * @throws MWException
+ * @return array array[language code][change type] = change.
+ */
+ public function processGroup( FileBasedMessageGroup $group, $languages ) {
+ $this->changes = array();
+
+ if ( $languages === self::ALL_LANGUAGES ) {
+ $languages = $group->getTranslatableLanguages();
+
+ // This means all languages
+ if ( $languages === null ) {
+ $languages = TranslateUtils::getLanguageNames( 'en' );
+ }
+
+ $languages = array_keys( $languages );
+ } elseif ( !is_array( $languages ) ) {
+ throw new MWException( 'Invalid input given for $languages' );
+ }
+
+ // Process the source language before others
+ $sourceLanguage = $group->getSourceLanguage();
+ $index = array_search( $sourceLanguage, $languages );
+ if ( $index !== false ) {
+ unset( $languages[$index] );
+ $this->processLanguage( $group, $sourceLanguage );
+ }
+
+ foreach ( $languages as $code ) {
+ $this->processLanguage( $group, $code );
+ }
+
+ return $this->changes;
+ }
+
+ protected function processLanguage( FileBasedMessageGroup $group, $code ) {
+ wfProfileIn( __METHOD__ );
+ $cache = new MessageGroupCache( $group, $code );
+ $reason = 0;
+ if ( !$cache->isValid( $reason ) ) {
+ $this->addMessageUpdateChanges( $group, $code, $reason, $cache );
+
+ if ( !isset( $this->changes[$code] ) ) {
+ /* Update the cache immediately if file and wiki state match.
+ * Otherwise the cache will get outdated compared to file state
+ * and will give false positive conflicts later. */
+ $cache->create();
+ }
+ }
+ wfProfileOut( __METHOD__ );
+ }
+
+ /**
+ * This is the detective novel. We have three sources of information:
+ * - current message state in the file
+ * - current message state in the wiki
+ * - cached message state since cache was last build
+ * (usually after export from wiki)
+ *
+ * Now we must try to guess what in earth has driven the file state and
+ * wiki state out of sync. Then we must compile list of events that would
+ * bring those to sync. Types of events are addition, deletion, (content)
+ * change and possible rename in the future. After that the list of events
+ * are stored for later processing of a translation administrator, who can
+ * decide what actions to take on those events to bring the state more or
+ * less in sync.
+ *
+ * @param FileBasedMessageGroup $group
+ * @param string $code Language code.
+ * @param int $reason
+ * @param MessageGroupCache $cache
+ * @throws MWException
+ */
+ protected function addMessageUpdateChanges( FileBasedMessageGroup $group, $code,
+ $reason, $cache
+ ) {
+ wfProfileIn( __METHOD__ );
+ /* This throws a warning if message definitions are not yet
+ * cached and will read the file for definitions. */
+ wfSuppressWarnings();
+ $wiki = $group->initCollection( $code );
+ wfRestoreWarnings();
+ $wiki->filter( 'hastranslation', false );
+ $wiki->loadTranslations();
+ $wikiKeys = $wiki->getMessageKeys();
+
+ // By-pass cached message definitions
+ /** @var FFS $ffs */
+ $ffs = $group->getFFS();
+ if ( $code === $group->getSourceLanguage() && !$ffs->exists( $code ) ) {
+ $path = $group->getSourceFilePath( $code );
+ wfProfileOut( __METHOD__ );
+ throw new MWException( "Source message file for {$group->getId()} does not exist: $path" );
+ }
+
+ $file = $ffs->read( $code );
+
+ // Does not exist
+ if ( $file === false ) {
+ wfProfileOut( __METHOD__ );
+
+ return;
+ }
+
+ // Something went wrong
+ if ( !isset( $file['MESSAGES'] ) ) {
+ $id = $group->getId();
+ $ffsClass = get_class( $ffs );
+
+ error_log( "$id has an FFS ($ffsClass) - it didn't return cake for $code" );
+ wfProfileOut( __METHOD__ );
+
+ return;
+ }
+
+ $fileKeys = array_keys( $file['MESSAGES'] );
+
+ $common = array_intersect( $fileKeys, $wikiKeys );
+
+ $supportsFuzzy = $ffs->supportsFuzzy();
+
+ foreach ( $common as $key ) {
+ $sourceContent = $file['MESSAGES'][$key];
+ /** @var TMessage $wikiMessage */
+ $wikiMessage = $wiki[$key];
+ $wikiContent = $wikiMessage->translation();
+
+ // If FFS doesn't support it, ignore fuzziness as difference
+ $wikiContent = str_replace( TRANSLATE_FUZZY, '', $wikiContent );
+
+ // But if it does, ensure we have exactly one fuzzy marker prefixed
+ if ( $supportsFuzzy === 'yes' && $wikiMessage->hasTag( 'fuzzy' ) ) {
+ $wikiContent = TRANSLATE_FUZZY . $wikiContent;
+ }
+
+ if ( self::compareContent( $sourceContent, $wikiContent ) ) {
+ // File and wiki stage agree, nothing to do
+ continue;
+ }
+
+ // Check against interim cache to see whether we have changes
+ // in the wiki, in the file or both.
+
+ if ( $reason !== MessageGroupCache::NO_CACHE ) {
+ $cacheContent = $cache->get( $key );
+
+ /* We want to ignore the common situation that the string
+ * in the wiki has been changed since the last export.
+ * Hence we check that source === cache && cache !== wiki
+ * and if so we skip this string. */
+ if (
+ !self::compareContent( $wikiContent, $cacheContent ) &&
+ self::compareContent( $sourceContent, $cacheContent )
+ ) {
+ continue;
+ }
+ }
+
+ $this->addChange( 'change', $code, $key, $sourceContent );
+ }
+
+ $added = array_diff( $fileKeys, $wikiKeys );
+ foreach ( $added as $key ) {
+ $sourceContent = $file['MESSAGES'][$key];
+ if ( trim( $sourceContent ) === '' ) {
+ continue;
+ }
+ $this->addChange( 'addition', $code, $key, $sourceContent );
+ }
+
+ /* Should the cache not exist, don't consider the messages
+ * missing from the file as deleted - they probably aren't
+ * yet exported. For example new language translations are
+ * exported the first time. */
+ if ( $reason !== MessageGroupCache::NO_CACHE ) {
+ $deleted = array_diff( $wikiKeys, $fileKeys );
+ foreach ( $deleted as $key ) {
+ if ( $cache->get( $key ) === false ) {
+ /* This message has never existed in the cache, so it
+ * must be a newly made in the wiki. */
+ continue;
+ }
+ $this->addChange( 'deletion', $code, $key, null );
+ }
+ }
+
+ wfProfileOut( __METHOD__ );
+ }
+
+ protected function addChange( $type, $language, $key, $content ) {
+ $this->changes[$language][$type][] = array(
+ 'key' => $key,
+ 'content' => $content,
+ );
+ }
+
+ /**
+ * Compares two strings.
+ * @todo Ignore changes in different way inlined plurals.
+ * @todo Handle fuzzy state changes if FFS supports it.
+ *
+ * @param string $a
+ * @param string $b
+ * @return bool Whether two strings are equal
+ */
+ protected static function compareContent( $a, $b ) {
+ return $a === $b;
+ }
+
+ /**
+ * Writes change array as a serialized file into a known place.
+ * @param array $array Array of changes as returned by processGroup
+ * indexed by message group id.
+ * @todo does not belong to this class.
+ */
+ public static function writeChanges( $array ) {
+ // This method is almost identical with MessageIndex::store
+ wfProfileIn( __METHOD__ );
+ /* This will overwrite the previous cache file if any. Once the cache
+ * file is processed with Special:ManageMessageGroups, it is
+ * renamed so that it wont be processed again. */
+ $file = TranslateUtils::cacheFile( SpecialManageGroups::CHANGEFILE );
+ $cache = CdbWriter::open( $file );
+ $keys = array_keys( $array );
+ $cache->set( '#keys', serialize( $keys ) );
+
+ foreach ( $array as $key => $value ) {
+ $value = serialize( $value );
+ $cache->set( $key, $value );
+ }
+ $cache->close();
+ wfProfileOut( __METHOD__ );
+ }
+}
diff --git a/MLEB/Translate/utils/Font.php b/MLEB/Translate/utils/Font.php
new file mode 100644
index 00000000..1b35b614
--- /dev/null
+++ b/MLEB/Translate/utils/Font.php
@@ -0,0 +1,139 @@
+<?php
+/**
+ * Contains class with wrapper around font-config.
+ *
+ * @author Niklas Laxström
+ * @author Harry Burt
+ * @copyright Copyright © 2008-2013, Niklas Laxström
+ * @license Public Domain
+ * @file
+ */
+
+/**
+ * Wrapper around font-config to get useful ttf font given a language code.
+ * Uses wfShellExec, wfEscapeShellArg and wfDebugLog, wfGetCache and
+ * wfMemckey from %MediaWiki.
+ *
+ * @ingroup Stats
+ */
+class FCFontFinder {
+ /**
+ * Searches for suitable font in the system.
+ * @param $code \string Language code.
+ * @return bool|string Full path to the font file, false on failure
+ */
+ public static function findFile( $code ) {
+ $data = self::callFontConfig( $code );
+ if ( is_array( $data ) ) {
+ return $data['file'];
+ }
+
+ return false;
+ }
+
+ /**
+ * Searches for suitable font family in the system.
+ * @param $code \string Language code.
+ * @return bool|string Name of font family, false on failure
+ */
+ public static function findFamily( $code ) {
+ $data = self::callFontConfig( $code );
+ if ( is_array( $data ) ) {
+ return $data['family'];
+ }
+
+ return false;
+ }
+
+ protected static function callFontConfig( $code ) {
+ if ( ini_get( 'open_basedir' ) ) {
+ wfDebugLog( 'fcfont', 'Disabled because of open_basedir is active' );
+
+ // Most likely we can't access any fonts we might find
+ return false;
+ }
+
+ $cache = self::getCache();
+ $cachekey = wfMemckey( 'fcfont', $code );
+ $timeout = 60 * 60 * 12;
+
+ $cached = $cache->get( $cachekey );
+ if ( is_array( $cached ) ) {
+ return $cached;
+ } elseif ( $cached === 'NEGATIVE' ) {
+ return false;
+ }
+
+ $code = wfEscapeShellArg( ":lang=$code" );
+ $ok = 0;
+ $cmd = "fc-match $code";
+ $suggestion = wfShellExec( $cmd, $ok );
+
+ wfDebugLog( 'fcfont', "$cmd returned $ok" );
+
+ if ( $ok !== 0 ) {
+ wfDebugLog( 'fcfont', "fc-match error output: $suggestion" );
+ $cache->set( $cachekey, 'NEGATIVE', $timeout );
+
+ return false;
+ }
+
+ $pattern = '/^(.*?): "(.*)" "(.*)"$/';
+ $matches = array();
+
+ if ( !preg_match( $pattern, $suggestion, $matches ) ) {
+ wfDebugLog( 'fcfont', "fc-match: return format not understood: $suggestion" );
+ $cache->set( $cachekey, 'NEGATIVE', $timeout );
+
+ return false;
+ }
+
+ list( , $file, $family, $type ) = $matches;
+ wfDebugLog( 'fcfont', "fc-match: got $file: $family $type" );
+
+ $file = wfEscapeShellArg( $file );
+ $family = wfEscapeShellArg( $family );
+ $type = wfEscapeShellArg( $type );
+ $cmd = "fc-list $family $type $code file | grep $file";
+
+ $candidates = trim( wfShellExec( $cmd, $ok ) );
+
+ wfDebugLog( 'fcfont', "$cmd returned $ok" );
+
+ if ( $ok !== 0 ) {
+ wfDebugLog( 'fcfont', "fc-list error output: $candidates" );
+ $cache->set( $cachekey, 'NEGATIVE', $timeout );
+
+ return false;
+ }
+
+ # trim spaces
+ $files = array_map( 'trim', explode( "\n", $candidates ) );
+ $count = count( $files );
+ if ( !$count ) {
+ wfDebugLog( 'fcfont', "fc-list got zero canditates: $candidates" );
+ }
+
+ # remove the trailing ":"
+ $chosen = substr( $files[0], 0, -1 );
+
+ wfDebugLog( 'fcfont', "fc-list got $count candidates; using $chosen" );
+
+ $data = array(
+ 'family' => $family,
+ 'type' => $type,
+ 'file' => $chosen,
+ );
+
+ $cache->set( $cachekey, $data, $timeout );
+
+ return $data;
+ }
+
+ /**
+ * @return BagOStuff
+ */
+ protected static function getCache() {
+ return wfGetCache( CACHE_ANYTHING );
+ }
+}
diff --git a/MLEB/Translate/utils/FuzzyBot.php b/MLEB/Translate/utils/FuzzyBot.php
new file mode 100644
index 00000000..e9992117
--- /dev/null
+++ b/MLEB/Translate/utils/FuzzyBot.php
@@ -0,0 +1,30 @@
+<?php
+/**
+ * Do it all maintenance account
+ *
+ * @file
+ * @author Niklas Laxström
+ * @copyright Copyright © 2012-2013, Niklas Laxström
+ * @license GPL-2.0+
+ */
+
+/**
+ * FuzzyBot - the misunderstood workhorse.
+ * @since 2012-01-02
+ */
+class FuzzyBot {
+ public static function getUser() {
+ $bot = User::newFromName( self::getName() );
+ if ( $bot->isAnon() ) {
+ $bot->addToDatabase();
+ }
+
+ return $bot;
+ }
+
+ public static function getName() {
+ global $wgTranslateFuzzyBotName;
+
+ return $wgTranslateFuzzyBotName;
+ }
+}
diff --git a/MLEB/Translate/utils/HTMLJsSelectToInputField.php b/MLEB/Translate/utils/HTMLJsSelectToInputField.php
new file mode 100644
index 00000000..8035f2f4
--- /dev/null
+++ b/MLEB/Translate/utils/HTMLJsSelectToInputField.php
@@ -0,0 +1,85 @@
+<?php
+/**
+ * Implementation of JsSelectToInput class which is compatible with MediaWiki's preferences system.
+ * @file
+ * @author Niklas Laxström
+ * @copyright Copyright © 2010 Niklas Laxström
+ * @license GPL-2.0+
+ */
+
+/**
+ * Implementation of JsSelectToInput class which is extends HTMLTextField.
+ */
+class HTMLJsSelectToInputField extends HTMLTextField {
+ /**
+ * @param $value
+ * @return string
+ */
+ function getInputHTML( $value ) {
+ $input = parent::getInputHTML( $value );
+
+ if ( isset( $this->mParams['select'] ) ) {
+ /**
+ * @var JsSelectToInput $select
+ */
+ $select = $this->mParams['select'];
+ $input = $select->getHtmlAndPrepareJs() . '<br />' . $input;
+ }
+
+ return $input;
+ }
+
+ /**
+ * @param $value
+ * @return array
+ */
+ function tidy( $value ) {
+ $value = array_map( 'trim', explode( ',', $value ) );
+ $value = array_unique( array_filter( $value ) );
+
+ return $value;
+ }
+
+ /**
+ * @param $value
+ * @param $alldata
+ * @return bool|String
+ */
+ function validate( $value, $alldata ) {
+ $p = parent::validate( $value, $alldata );
+
+ if ( $p !== true ) {
+ return $p;
+ }
+
+ if ( !isset( $this->mParams['valid-values'] ) ) {
+ return true;
+ }
+
+ if ( $value === 'default' ) {
+ return true;
+ }
+
+ $codes = $this->tidy( $value );
+ $valid = array_flip( $this->mParams['valid-values'] );
+
+ foreach ( $codes as $code ) {
+ if ( !isset( $valid[$code] ) ) {
+ return wfMessage( 'translate-pref-editassistlang-bad', $code )->parseAsBlock();
+ }
+ }
+
+ return true;
+ }
+
+ /**
+ * @param $value
+ * @param $alldata
+ * @return string
+ */
+ function filter( $value, $alldata ) {
+ $value = parent::filter( $value, $alldata );
+
+ return implode( ', ', $this->tidy( $value ) );
+ }
+}
diff --git a/MLEB/Translate/utils/JsSelectToInput.php b/MLEB/Translate/utils/JsSelectToInput.php
new file mode 100644
index 00000000..12bea5a7
--- /dev/null
+++ b/MLEB/Translate/utils/JsSelectToInput.php
@@ -0,0 +1,126 @@
+<?php
+/**
+ * Code for JavaScript enhanced \<option> selectors.
+ * @file
+ * @author Niklas Laxström
+ * @copyright Copyright © 2010 Niklas Laxström
+ * @license GPL-2.0+
+ */
+
+/**
+ * Code for JavaScript enhanced \<option> selectors.
+ */
+class JsSelectToInput {
+ /// Id of the text field where stuff is appended
+ protected $targetId;
+ /// Id of the \<option> field
+ protected $sourceId;
+
+ /**
+ * @var XmlSelect
+ */
+ protected $select;
+
+ /// Id on the button
+ protected $buttonId;
+
+ /**
+ * @var string Text for the append button
+ */
+ protected $msg = 'translate-jssti-add';
+
+ public function __construct( XmlSelect $select = null ) {
+ $this->select = $select;
+ }
+
+ /**
+ * Set the source id of the selector
+ * @param string $id
+ */
+ public function setSourceId( $id ) {
+ $this->sourceId = $id;
+ }
+
+ /// @return string
+ public function getSourceId() {
+ return $this->sourceId;
+ }
+
+ /**
+ * Set the id of the target text field
+ * @param string $id
+ */
+ public function setTargetId( $id ) {
+ $this->targetId = $id;
+ }
+
+ /**
+ * @return string
+ */
+ public function getTargetId() {
+ return $this->targetId;
+ }
+
+ /**
+ * Set the message key.
+ * @param string $message
+ */
+ public function setMessage( $message ) {
+ $this->msg = $message;
+ }
+
+ /// @return string Message key.
+ public function getMessage() {
+ return $this->msg;
+ }
+
+ /**
+ * Returns the whole input element and injects needed JavaScript
+ * @throws MWException
+ * @return string Html code.
+ */
+ public function getHtmlAndPrepareJS() {
+ if ( $this->sourceId === false ) {
+ if ( is_callable( array( $this->select, 'getAttribute' ) ) ) {
+ $this->sourceId = $this->select->getAttribute['id'];
+ }
+
+ if ( !$this->sourceId ) {
+ throw new MWException( "ID needs to be specified for the selector" );
+ }
+ }
+
+ self::injectJs();
+ $html = $this->select->getHtml();
+ $html .= $this->getButton( $this->msg, $this->sourceId, $this->targetId );
+
+ return $html;
+ }
+
+ /**
+ * Constructs the append button.
+ * @param string $msg Message key.
+ * @param string $source Html id.
+ * @param string $target Html id.
+ * @return string
+ */
+ protected function getButton( $msg, $source, $target ) {
+ $html = Xml::element( 'input', array(
+ 'type' => 'button',
+ 'value' => wfMessage( $msg )->text(),
+ 'onclick' => Xml::encodeJsCall( 'appendFromSelect', array( $source, $target ) )
+ ) );
+
+ return $html;
+ }
+
+ /// Inject needed JavaScript in the page.
+ public static function injectJs() {
+ static $done = false;
+ if ( $done ) {
+ return;
+ }
+
+ RequestContext::getMain()->getOutput()->addModules( 'ext.translate.selecttoinput' );
+ }
+}
diff --git a/MLEB/Translate/utils/MemProfile.php b/MLEB/Translate/utils/MemProfile.php
new file mode 100644
index 00000000..4d626d8f
--- /dev/null
+++ b/MLEB/Translate/utils/MemProfile.php
@@ -0,0 +1,63 @@
+<?php
+if ( !defined( 'MEDIAWIKI' ) ) {
+ die();
+}
+/**
+ * Very crude tools to track memory usage
+ *
+ * @file
+ * @author Niklas Laxström
+ * @copyright Copyright © 2008, Niklas Laxström
+ * @license GPL-2.0+
+ */
+
+/// Memory usage at checkpoints
+$wgMemUse = array();
+/// Tracks the deepness of the stack
+$wgMemStack = 0;
+
+/**
+ * Call to start memory counting for a block.
+ * @param $a \string Block name.
+ */
+function wfMemIn( $a ) {
+ global $wgLang, $wgMemUse, $wgMemStack;
+
+ $mem = memory_get_usage();
+ $memR = memory_get_usage();
+
+ $wgMemUse[$a][] = array( $mem, $memR );
+
+ $memF = $wgLang->formatNum( $mem );
+ $memRF = $wgLang->formatNum( $memR );
+
+ $pad = str_repeat( ".", $wgMemStack );
+ wfDebug( "$pad$a-IN: \t$memF\t\t$memRF\n" );
+ $wgMemStack++;
+}
+
+/**
+ * Call to start stop counting for a block. Difference from start is shown.
+ * @param $a \string Block name.
+ */
+function wfMemOut( $a ) {
+ global $wgLang, $wgMemUse, $wgMemStack;
+
+ $mem = memory_get_usage();
+ $memR = memory_get_usage();
+
+ list( $memO, $memOR ) = array_pop( $wgMemUse[$a] );
+
+ $memF = $wgLang->formatNum( $mem );
+ $memRF = $wgLang->formatNum( $memR );
+
+ $memD = $mem - $memO;
+ $memRD = $memR - $memOR;
+
+ $memDF = $wgLang->formatNum( $memD );
+ $memRDF = $wgLang->formatNum( $memRD );
+
+ $pad = str_repeat( ".", $wgMemStack - 1 );
+ wfDebug( "$pad$a-OUT:\t$memF ($memDF)\t$memRF ($memRDF)\n" );
+ $wgMemStack--;
+}
diff --git a/MLEB/Translate/utils/MessageGroupCache.php b/MLEB/Translate/utils/MessageGroupCache.php
new file mode 100644
index 00000000..74298471
--- /dev/null
+++ b/MLEB/Translate/utils/MessageGroupCache.php
@@ -0,0 +1,282 @@
+<?php
+/**
+ * Code for caching the messages of file based message groups.
+ * @file
+ * @author Niklas Laxström
+ * @copyright Copyright © 2009-2013 Niklas Laxström
+ * @license GPL-2.0+
+ */
+
+/**
+ * Caches messages of file based message group source file. Can also track
+ * that the cache is up to date. Parsing the source files can be slow, so
+ * constructing CDB cache makes accessing that data constant speed regardless
+ * of the actual format.
+ *
+ * @ingroup MessageGroups
+ */
+class MessageGroupCache {
+ const NO_SOURCE = 1;
+ const NO_CACHE = 2;
+ const CHANGED = 3;
+
+ /**
+ * @var MessageGroup
+ */
+ protected $group;
+
+ /**
+ * @var CdbReader
+ */
+ protected $cache;
+
+ /**
+ * @var string
+ */
+ protected $code;
+
+ /**
+ * Contructs a new cache object for given group and language code.
+ * @param string|FileBasedMessageGroup $group Group object or id.
+ * @param string $code Language code. Default value 'en'.
+ */
+ public function __construct( $group, $code = 'en' ) {
+ if ( is_object( $group ) ) {
+ $this->group = $group;
+ } else {
+ $this->group = MessageGroups::getGroup( $group );
+ }
+ $this->code = $code;
+ }
+
+ /**
+ * Returns whether cache exists for this language and group.
+ * @return bool
+ */
+ public function exists() {
+ $old = $this->getOldCacheFileName();
+ $new = $this->getCacheFileName();
+ $exists = file_exists( $new );
+
+ if ( $exists ) {
+ return true;
+ }
+
+ // Perform migration if possible
+ if ( file_exists( $old ) ) {
+ wfMkdirParents( dirname( $new ) );
+ rename( $old, $new );
+ return true;
+ }
+
+ return false;
+ }
+
+ /**
+ * Returns list of message keys that are stored.
+ * @return string[] Message keys that can be passed one-by-one to get() method.
+ */
+ public function getKeys() {
+ $value = $this->open()->get( '#keys' );
+ $array = unserialize( $value );
+
+ // Debugging for bug 69830
+ if ( !is_array( $array ) ) {
+ $filename = $this->getCacheFileName();
+ throw new MWException( "Unable to get keys from '$filename'" );
+ }
+
+ return $array;
+ }
+
+ /**
+ * Returns timestamp in unix-format about when this cache was first created.
+ * @return string Unix timestamp.
+ */
+ public function getTimestamp() {
+ return $this->open()->get( '#created' );
+ }
+
+ /**
+ * ...
+ * @return string Unix timestamp.
+ */
+ public function getUpdateTimestamp() {
+ return $this->open()->get( '#updated' );
+ }
+
+ /**
+ * Get an item from the cache.
+ * @param string $key
+ * @return string
+ */
+ public function get( $key ) {
+ return $this->open()->get( $key );
+ }
+
+ /**
+ * Populates the cache from current state of the source file.
+ * @param bool|string $created Unix timestamp when the cache is created (for automatic updates).
+ */
+ public function create( $created = false ) {
+ $this->close(); // Close the reader instance just to be sure
+
+ $messages = $this->group->load( $this->code );
+ if ( $messages === array() ) {
+ if ( $this->exists() ) {
+ // Delete stale cache files
+ unlink( $this->getCacheFileName() );
+ }
+
+ return; // Don't create empty caches
+ }
+ $hash = md5( file_get_contents( $this->group->getSourceFilePath( $this->code ) ) );
+
+ wfMkdirParents( dirname( $this->getCacheFileName() ) );
+ $cache = CdbWriter::open( $this->getCacheFileName() );
+ $keys = array_keys( $messages );
+ $cache->set( '#keys', serialize( $keys ) );
+
+ foreach ( $messages as $key => $value ) {
+ $cache->set( $key, $value );
+ }
+
+ $cache->set( '#created', $created ? $created : wfTimestamp() );
+ $cache->set( '#updated', wfTimestamp() );
+ $cache->set( '#filehash', $hash );
+ $cache->set( '#msgcount', count( $messages ) );
+ ksort( $messages );
+ $cache->set( '#msghash', md5( serialize( $messages ) ) );
+ $cache->set( '#version', '3' );
+ $cache->close();
+ }
+
+ /**
+ * Checks whether the cache still reflects the source file.
+ * It uses multiple conditions to speed up the checking from file
+ * modification timestamps to hashing.
+ * @param int $reason
+ * @return bool Whether the cache is up to date.
+ */
+ public function isValid( &$reason = 0 ) {
+ $group = $this->group;
+ $groupId = $group->getId();
+
+ $pattern = $group->getSourceFilePath( '*' );
+ $filename = $group->getSourceFilePath( $this->code );
+
+ // If the file pattern is not dependent on the language, we will assume
+ // that all translations are stored in one file. This means we need to
+ // actually parse the file to know if a language is present.
+ if ( strpos( $pattern, '*' ) === false ) {
+ $source = $group->getFFS()->read( $this->code ) !== false;
+ } else {
+ static $globCache = null;
+ if ( !isset( $globCache[$groupId] ) ) {
+ $globCache[$groupId] = array_flip( glob( $pattern, GLOB_NOESCAPE ) );
+ // Definition file might not match the above pattern
+ $globCache[$groupId][$group->getSourceFilePath( 'en' )] = true;
+ }
+ $source = isset( $globCache[$groupId][$filename] );
+ }
+
+ $cache = $this->exists();
+
+ // Timestamp and existence checks
+ if ( !$cache && !$source ) {
+ return true;
+ } elseif ( !$cache && $source ) {
+ $reason = self::NO_CACHE;
+
+ return false;
+ } elseif ( $cache && !$source ) {
+ $reason = self::NO_SOURCE;
+
+ return false;
+ } elseif ( filemtime( $filename ) <= $this->get( '#updated' ) ) {
+ return true;
+ }
+
+ // From now on cache and source file exists, but source file mtime is newer
+ $created = $this->get( '#created' );
+
+ // File hash check
+ $newhash = md5( file_get_contents( $filename ) );
+ if ( $this->get( '#filehash' ) === $newhash ) {
+ // Update cache so that we don't need to compare hashes next time
+ $this->create( $created );
+
+ return true;
+ }
+
+ // Message count check
+ $messages = $group->load( $this->code );
+ // CDB converts numbers to strings
+ $count = intval( $this->get( '#msgcount' ) );
+ if ( $count !== count( $messages ) ) {
+ // Number of messsages has changed
+ $reason = self::CHANGED;
+
+ return false;
+ }
+
+ // Content hash check
+ ksort( $messages );
+ if ( $this->get( '#msghash' ) === md5( serialize( $messages ) ) ) {
+ // Update cache so that we don't need to do slow checks next time
+ $this->create( $created );
+
+ return true;
+ }
+
+ $reason = self::CHANGED;
+
+ return false;
+ }
+
+ /**
+ * Open the cache for reading.
+ * @return MessageGroupCache
+ */
+ protected function open() {
+ if ( $this->cache === null ) {
+ $this->cache = CdbReader::open( $this->getCacheFileName() );
+ if ( $this->cache->get( '#version' ) !== '3' ) {
+ $this->close();
+ unlink( $this->getCacheFileName() );
+ }
+ }
+
+ return $this->cache;
+ }
+
+ /**
+ * Close the cache from reading.
+ */
+ protected function close() {
+ if ( $this->cache !== null ) {
+ $this->cache->close();
+ $this->cache = null;
+ }
+ }
+
+ /**
+ * Returns full path to the cache file.
+ * @return string
+ */
+ protected function getCacheFileName() {
+ $cacheFileName = "translate_groupcache-{$this->group->getId()}/{$this->code}.cdb";
+
+ return TranslateUtils::cacheFile( $cacheFileName );
+ }
+
+ /**
+ * Returns full path to the old cache file location.
+ * @return string
+ */
+ protected function getOldCacheFileName() {
+ $cacheFileName = "translate_groupcache-{$this->group->getId()}-{$this->code}.cdb";
+
+ return TranslateUtils::cacheFile( $cacheFileName );
+ }
+}
diff --git a/MLEB/Translate/utils/MessageGroupStates.php b/MLEB/Translate/utils/MessageGroupStates.php
new file mode 100644
index 00000000..1838381c
--- /dev/null
+++ b/MLEB/Translate/utils/MessageGroupStates.php
@@ -0,0 +1,40 @@
+<?php
+/**
+ * Wrapper class for using message group states.
+ *
+ * @file
+ * @author Niklas Laxström
+ * @author Siebrand Mazeland
+ * @copyright Copyright © 2012-2013 Niklas Laxström
+ * @license GPL-2.0+
+ */
+
+/**
+ * Class for making the use of message group state easier.
+ * @since 2012-10-05
+ */
+class MessageGroupStates {
+ const CONDKEY = 'state conditions';
+
+ protected $config;
+
+ public function __construct( array $config = null ) {
+ $this->config = $config;
+ }
+
+ public function getStates() {
+ $conf = $this->config;
+ unset( $conf[self::CONDKEY] );
+
+ return $conf;
+ }
+
+ public function getConditions() {
+ $conf = $this->config;
+ if ( isset( $conf[self::CONDKEY] ) ) {
+ return $conf[self::CONDKEY];
+ } else {
+ return array();
+ }
+ }
+}
diff --git a/MLEB/Translate/utils/MessageGroupStatesUpdaterJob.php b/MLEB/Translate/utils/MessageGroupStatesUpdaterJob.php
new file mode 100644
index 00000000..18b34343
--- /dev/null
+++ b/MLEB/Translate/utils/MessageGroupStatesUpdaterJob.php
@@ -0,0 +1,139 @@
+<?php
+/**
+ * Logic for handling automatic message group state changes
+ *
+ * @file
+ * @author Niklas Laxström
+ * @copyright Copyright © 2012-2013, Niklas Laxström
+ * @license GPL-2.0+
+ */
+
+/**
+ * Logic for handling automatic message group state changes
+ *
+ * @ingroup JobQueue
+ */
+class MessageGroupStatesUpdaterJob extends Job {
+
+ /**
+ * Hook: TranslateEventTranslationEdit
+ * Hook: TranslateEventTranslationReview
+ */
+ public static function onChange( MessageHandle $handle ) {
+ $job = self::newJob( $handle->getTitle() );
+ JobQueueGroup::singleton()->push( $job );
+
+ return true;
+ }
+
+ /**
+ * @param $title
+ * @return MessageGroupStatesUpdaterJob
+ */
+ public static function newJob( $title ) {
+ $job = new self( $title );
+
+ return $job;
+ }
+
+ public function __construct( $title, $params = array(), $id = 0 ) {
+ parent::__construct( __CLASS__, $title, $params, $id );
+ }
+
+ public function run() {
+ $title = $this->title;
+ $handle = new MessageHandle( $title );
+ $code = $handle->getCode();
+
+ if ( !$handle->isValid() && !$code ) {
+ return true;
+ }
+
+ $groups = self::getGroupsWithTransitions( $handle );
+ foreach ( $groups as $id => $transitions ) {
+ $group = MessageGroups::getGroup( $id );
+ $stats = MessageGroupStats::forItem( $id, $code );
+ $state = self::getNewState( $stats, $transitions );
+ if ( $state ) {
+ ApiGroupReview::changeState( $group, $code, $state, FuzzyBot::getUser() );
+ }
+ }
+
+ return true;
+ }
+
+ public static function getGroupsWithTransitions( MessageHandle $handle ) {
+ $listeners = array();
+ foreach ( $handle->getGroupIds() as $id ) {
+ $group = MessageGroups::getGroup( $id );
+
+ // No longer exists?
+ if ( !$group ) {
+ continue;
+ }
+
+ $conds = $group->getMessageGroupStates()->getConditions();
+ if ( $conds ) {
+ $listeners[$id] = $conds;
+ }
+ }
+
+ return $listeners;
+ }
+
+ public static function getStatValue( $stats, $type ) {
+ $total = $stats[MessageGroupStats::TOTAL];
+ $translated = $stats[MessageGroupStats::TRANSLATED];
+ $outdated = $stats[MessageGroupStats::FUZZY];
+ $proofread = $stats[MessageGroupStats::PROOFREAD];
+
+ switch ( $type ) {
+ case 'UNTRANSLATED':
+ return $total - $translated - $outdated;
+ case 'OUTDATED':
+ return $outdated;
+ case 'TRANSLATED':
+ return $translated;
+ case 'PROOFREAD':
+ return $proofread;
+ default:
+ throw new MWException( "Unknown condition $type" );
+ }
+ }
+
+ public static function matchCondition( $value, $condition, $max ) {
+ switch ( $condition ) {
+ case 'ZERO':
+ return $value === 0;
+ case 'NONZERO':
+ return $value > 0;
+ case 'MAX':
+ return $value === $max;
+ default:
+ throw new MWException( "Unknown condition value $condition" );
+ }
+ }
+
+ public static function getNewState( $stats, $transitions ) {
+ foreach ( $transitions as $transition ) {
+ list( $newState, $conds ) = $transition;
+ $match = true;
+
+ foreach ( $conds as $type => $cond ) {
+ $statValue = self::getStatValue( $stats, $type );
+ $max = $stats[MessageGroupStats::TOTAL];
+ $match = $match && self::matchCondition( $statValue, $cond, $max );
+ // Conditions are AND, so no point trying more if no match
+ if ( !$match ) {
+ break;
+ }
+ }
+
+ if ( $match ) {
+ return $newState;
+ }
+ }
+
+ return false;
+ }
+}
diff --git a/MLEB/Translate/utils/MessageGroupStats.php b/MLEB/Translate/utils/MessageGroupStats.php
new file mode 100644
index 00000000..05ca3f42
--- /dev/null
+++ b/MLEB/Translate/utils/MessageGroupStats.php
@@ -0,0 +1,471 @@
+<?php
+/**
+ * This file aims to provide efficient mechanism for fetching translation completion stats.
+ *
+ * @file
+ * @author Wikia (trac.wikia-code.com/browser/wikia/trunk/extensions/wikia/TranslationStatistics)
+ * @author Niklas Laxström
+ * @copyright Copyright © 2012-2013 Niklas Laxström
+ * @license GPL-2.0+
+ */
+
+/**
+ * This class abstract MessageGroup statistics calculation and storing.
+ * You can access stats easily per language or per group.
+ * Stat array for each item is of format array( total, translate, fuzzy ).
+ *
+ * @ingroup Stats MessageGroups
+ */
+class MessageGroupStats {
+ /// Name of the database table
+ const TABLE = 'translate_groupstats';
+
+ const TOTAL = 0; ///< Array index
+ const TRANSLATED = 1; ///< Array index
+ const FUZZY = 2; ///< Array index
+ const PROOFREAD = 3; ///< Array index
+
+ /// @var float
+ protected static $timeStart = null;
+ /// @var float
+ protected static $limit = null;
+
+ /**
+ * Set the maximum time statistics are calculated.
+ * If the time limit is exceeded, the missing
+ * entries will be null.
+ * @param $limit float time in seconds
+ */
+ public static function setTimeLimit( $limit ) {
+ self::$timeStart = microtime( true );
+ self::$limit = $limit;
+ }
+
+ /**
+ * Returns empty stats array. Useful because the number of elements
+ * may change.
+ * @return array
+ * @since 2012-09-21
+ */
+ public static function getEmptyStats() {
+ return array( 0, 0, 0, 0 );
+ }
+
+ /**
+ * Returns empty stats array that indicates stats are incomplete or
+ * unknown.
+ * @return array
+ * @since 2013-01-02
+ */
+ protected static function getUnknownStats() {
+ return array( null, null, null, null );
+ }
+
+ /**
+ * Returns stats for given group in given language.
+ * @param $id string Group id
+ * @param $code string Language code
+ * @return Array
+ */
+ public static function forItem( $id, $code ) {
+ $res = self::selectRowsIdLang( $id, $code );
+ $stats = self::extractResults( $res );
+
+ /* In case some code calls this for dynamic groups, return the default
+ * values for unknown/incomplete stats. Calculating these numbers don't
+ * make sense for dynamic groups, and would just throw an exception. */
+ $group = MessageGroups::getGroup( $id );
+ if ( MessageGroups::isDynamic( $group ) ) {
+ $stats[$id][$code] = self::getUnknownStats();
+ }
+
+ if ( !isset( $stats[$id][$code] ) ) {
+ $stats[$id][$code] = self::forItemInternal( $stats, $group, $code );
+ }
+
+ return $stats[$id][$code];
+ }
+
+ /**
+ * Returns stats for all groups in given language.
+ * @param $code string Language code
+ * @return Array
+ */
+ public static function forLanguage( $code ) {
+ $stats = self::forLanguageInternal( $code );
+ $flattened = array();
+ foreach ( $stats as $group => $languages ) {
+ $flattened[$group] = $languages[$code];
+ }
+
+ return $flattened;
+ }
+
+ /**
+ * Returns stats for all languages in given group.
+ * @param $id string Group id
+ * @return Array
+ */
+ public static function forGroup( $id ) {
+ $group = MessageGroups::getGroup( $id );
+ if ( $group === null ) {
+ return array();
+ }
+ $stats = self::forGroupInternal( $group );
+
+ return $stats[$id];
+ }
+
+ /**
+ * Returns stats for all group in all languages.
+ * Might be slow, might use lots of memory.
+ * Returns two dimensional array indexed by group and language.
+ * @return Array
+ */
+ public static function forEverything() {
+ $groups = MessageGroups::singleton()->getGroups();
+ $stats = array();
+ foreach ( $groups as $g ) {
+ $stats = self::forGroupInternal( $g, $stats );
+ }
+
+ return $stats;
+ }
+
+ /**
+ * Clears the cache for all groups associated with the message.
+ *
+ * Hook: TranslateEventTranslationEdit
+ * Hook: TranslateEventTranslationReview
+ */
+ public static function clear( MessageHandle $handle ) {
+ $code = $handle->getCode();
+ $ids = $handle->getGroupIds();
+ $dbw = wfGetDB( DB_MASTER );
+
+ $locked = false;
+ // Try to avoid deadlocks with duplicated deletes where there is no row
+ // @note: this only helps in auto-commit mode (which job runners use)
+ if ( !$dbw->getFlag( DBO_TRX ) && count( $ids ) == 1 ) {
+ $key = __CLASS__ . ":modify:{$ids[0]}";
+ $locked = $dbw->lock( $key, __METHOD__, 1 );
+ if ( !$locked ) {
+ return true; // raced out
+ }
+ }
+
+ $conds = array( 'tgs_group' => $ids, 'tgs_lang' => $code );
+ $dbw->delete( self::TABLE, $conds, __METHOD__ );
+ wfDebugLog( 'messagegroupstats', "Cleared " . serialize( $conds ) );
+
+ if ( $locked ) {
+ $dbw->unlock( $key, __METHOD__ );
+ }
+
+ // Hooks must return value
+ return true;
+ }
+
+ public static function clearGroup( $id ) {
+ if ( !count( $id ) ) {
+ return;
+ }
+ $dbw = wfGetDB( DB_MASTER );
+ $conds = array( 'tgs_group' => $id );
+ $dbw->delete( self::TABLE, $conds, __METHOD__ );
+ wfDebugLog( 'messagegroupstats', "Cleared " . serialize( $conds ) );
+ }
+
+ public static function clearLanguage( $code ) {
+ if ( !count( $code ) ) {
+ return;
+ }
+ $dbw = wfGetDB( DB_MASTER );
+ $conds = array( 'tgs_lang' => $code );
+ $dbw->delete( self::TABLE, $conds, __METHOD__ );
+ wfDebugLog( 'messagegroupstats', "Cleared " . serialize( $conds ) );
+ }
+
+ /**
+ * Purges all cached stats.
+ */
+ public static function clearAll() {
+ $dbw = wfGetDB( DB_MASTER );
+ $dbw->delete( self::TABLE, '*' );
+ wfDebugLog( 'messagegroupstats', "Cleared everything :(" );
+ }
+
+ protected static function extractResults( $res, $stats = array() ) {
+ foreach ( $res as $row ) {
+ $stats[$row->tgs_group][$row->tgs_lang] = self::extractNumbers( $row );
+ }
+
+ return $stats;
+ }
+
+ public static function update( MessageHandle $handle, $changes = array() ) {
+ $dbw = wfGetDB( DB_MASTER );
+ $conds = array(
+ 'tgs_group' => $handle->getGroupIds(),
+ 'tgs_lang' => $handle->getCode(),
+ );
+
+ $values = array();
+ foreach ( array( 'total', 'translated', 'fuzzy', 'proofread' ) as $type ) {
+ if ( isset( $changes[$type] ) ) {
+ $values[] = "tgs_$type=tgs_$type" .
+ self::stringifyNumber( $changes[$type] );
+ }
+ }
+
+ $dbw->update( self::TABLE, $values, $conds, __METHOD__ );
+ }
+
+ /**
+ * Returns an array of needed database fields.
+ * @param $row
+ * @return array
+ */
+ protected static function extractNumbers( $row ) {
+ return array(
+ self::TOTAL => (int)$row->tgs_total,
+ self::TRANSLATED => (int)$row->tgs_translated,
+ self::FUZZY => (int)$row->tgs_fuzzy,
+ self::PROOFREAD => (int)$row->tgs_proofread,
+ );
+ }
+
+ /**
+ * @param $code
+ * @param array $stats
+ * @return array
+ */
+ protected static function forLanguageInternal( $code, $stats = array() ) {
+ $res = self::selectRowsIdLang( null, $code );
+ $stats = self::extractResults( $res, $stats );
+
+ $groups = MessageGroups::singleton()->getGroups();
+ foreach ( $groups as $id => $group ) {
+ if ( isset( $stats[$id][$code] ) ) {
+ continue;
+ }
+ $stats[$id][$code] = self::forItemInternal( $stats, $group, $code );
+ }
+
+ return $stats;
+ }
+
+ /**
+ * @param AggregateMessageGroup $agg
+ * @return mixed
+ */
+ protected static function expandAggregates( AggregateMessageGroup $agg ) {
+ $flattened = array();
+
+ /** @var MessageGroup|AggregateMessageGroup $group */
+ foreach ( $agg->getGroups() as $group ) {
+ if ( $group instanceof AggregateMessageGroup ) {
+ $flattened += self::expandAggregates( $group );
+ } else {
+ $flattened[$group->getId()] = $group;
+ }
+ }
+
+ return $flattened;
+ }
+
+ /**
+ * @param MessageGroup $group
+ * @param array $stats
+ * @return array
+ */
+ protected static function forGroupInternal( $group, $stats = array() ) {
+ $id = $group->getId();
+ $res = self::selectRowsIdLang( $id, null );
+ $stats = self::extractResults( $res, $stats );
+
+ # Go over each language filling missing entries
+ $languages = array_keys( Language::fetchLanguageNames() );
+ // This is for calculating things in correct order
+ sort( $languages );
+ foreach ( $languages as $code ) {
+ if ( isset( $stats[$id][$code] ) ) {
+ continue;
+ }
+ $stats[$id][$code] = self::forItemInternal( $stats, $group, $code );
+ }
+
+ // This is for sorting the values added later in correct order
+ foreach ( array_keys( $stats ) as $key ) {
+ ksort( $stats[$key] );
+ }
+
+ return $stats;
+ }
+
+ protected static function selectRowsIdLang( $ids = null, $codes = null ) {
+ $conds = array();
+ if ( $ids !== null ) {
+ $conds['tgs_group'] = $ids;
+ }
+
+ if ( $codes !== null ) {
+ $conds['tgs_lang'] = $codes;
+ }
+
+ $dbr = wfGetDB( DB_MASTER );
+ $res = $dbr->select( self::TABLE, '*', $conds, __METHOD__ );
+
+ return $res;
+ }
+
+ protected static function forItemInternal( &$stats, $group, $code ) {
+ $id = $group->getId();
+
+ if ( self::$timeStart !== null && ( microtime( true ) - self::$timeStart ) > self::$limit ) {
+ return $stats[$id][$code] = self::getUnknownStats();
+ }
+
+ if ( $group instanceof AggregateMessageGroup ) {
+ $aggregates = self::getEmptyStats();
+
+ $expanded = self::expandAggregates( $group );
+ if ( $expanded === array() ) {
+ return $aggregates;
+ }
+ $res = self::selectRowsIdLang( array_keys( $expanded ), $code );
+ $stats = self::extractResults( $res, $stats );
+
+ foreach ( $expanded as $sid => $subgroup ) {
+ # Discouraged groups may belong to another group, usually if there
+ # is an aggregate group for all translatable pages. In that case
+ # calculate and store the statistics, but don't count them as part of
+ # the aggregate group, so that the numbers in Special:LanguageStats
+ # add up. The statistics for discouraged groups can still be viewed
+ # through Special:MessageGroupStats.
+ if ( !isset( $stats[$sid][$code] ) ) {
+ $stats[$sid][$code] = self::forItemInternal( $stats, $subgroup, $code );
+ }
+
+ $include = wfRunHooks( 'Translate:MessageGroupStats:isIncluded', array( $sid, $code ) );
+ if ( $include ) {
+ $aggregates = self::multiAdd( $aggregates, $stats[$sid][$code] );
+ }
+ }
+ $stats[$id][$code] = $aggregates;
+ } else {
+ $aggregates = self::calculateGroup( $group, $code );
+ }
+
+ // Don't add nulls to the database, causes annoying warnings
+ if ( $aggregates[self::TOTAL] === null ) {
+ return $aggregates;
+ }
+
+ $data = array(
+ 'tgs_group' => $id,
+ 'tgs_lang' => $code,
+ 'tgs_total' => $aggregates[self::TOTAL],
+ 'tgs_translated' => $aggregates[self::TRANSLATED],
+ 'tgs_fuzzy' => $aggregates[self::FUZZY],
+ 'tgs_proofread' => $aggregates[self::PROOFREAD],
+ );
+
+ $dbw = wfGetDB( DB_MASTER );
+ // Try to avoid deadlocks with S->X lock upgrades in MySQL
+ // @note: this only helps in auto-commit mode (which job runners use)
+ $key = __CLASS__ . ":modify:$id";
+ $locked = false;
+ if ( !$dbw->getFlag( DBO_TRX ) ) {
+ $locked = $dbw->lock( $key, __METHOD__, 1 );
+ if ( !$locked ) {
+ return $aggregates; // raced out
+ }
+ }
+
+ $dbw->insert(
+ self::TABLE,
+ $data,
+ __METHOD__,
+ array( 'IGNORE' )
+ );
+
+ if ( $locked ) {
+ $dbw->unlock( $key, __METHOD__ );
+ }
+
+ return $aggregates;
+ }
+
+ public static function multiAdd( &$a, $b ) {
+ if ( $a[0] === null || $b[0] === null ) {
+ return array_fill( 0, count( $a ), null );
+ }
+ foreach ( $a as $i => &$v ) {
+ $v += $b[$i];
+ }
+
+ return $a;
+ }
+
+ /**
+ * @param MessageGroup $group
+ * @param string $code Language code
+ * @return array ( total, translated, fuzzy, proofread )
+ */
+ protected static function calculateGroup( $group, $code ) {
+ global $wgTranslateDocumentationLanguageCode;
+ # Calculate if missing and store in the db
+ $collection = $group->initCollection( $code );
+
+ if ( $code === $wgTranslateDocumentationLanguageCode ) {
+ $ffs = $group->getFFS();
+ if ( $ffs instanceof GettextFFS ) {
+ $template = $ffs->read( 'en' );
+ $infile = array();
+ foreach ( $template['TEMPLATE'] as $key => $data ) {
+ if ( isset( $data['comments']['.'] ) ) {
+ $infile[$key] = '1';
+ }
+ }
+ $collection->setInFile( $infile );
+ }
+ }
+
+ $collection->filter( 'ignored' );
+ $collection->filter( 'optional' );
+ // Store the count of real messages for later calculation.
+ $total = count( $collection );
+
+ // Count fuzzy first.
+ $collection->filter( 'fuzzy' );
+ $fuzzy = $total - count( $collection );
+
+ // Count the completed translations.
+ $collection->filter( 'hastranslation', false );
+ $translated = count( $collection );
+
+ // Count how many of the completed translations
+ // have been proofread
+ $collection->filter( 'reviewer', false );
+ $proofread = count( $collection );
+
+ return array(
+ self::TOTAL => $total,
+ self::TRANSLATED => $translated,
+ self::FUZZY => $fuzzy,
+ self::PROOFREAD => $proofread,
+ );
+ }
+
+ /**
+ * Converts input to "+2" "-4" type of string.
+ * @param $number int
+ * @return string
+ */
+ protected static function stringifyNumber( $number ) {
+ $number = intval( $number );
+
+ return $number < 0 ? "$number" : "+$number";
+ }
+}
diff --git a/MLEB/Translate/utils/MessageHandle.php b/MLEB/Translate/utils/MessageHandle.php
new file mode 100644
index 00000000..dcb217eb
--- /dev/null
+++ b/MLEB/Translate/utils/MessageHandle.php
@@ -0,0 +1,244 @@
+<?php
+/**
+ * Class that enhances Title with stuff related to message groups
+ * @file
+ * @author Niklas Laxström
+ * @copyright Copyright © 2011-2013 Niklas Laxström
+ * @license GPL-2.0+
+ */
+
+/**
+ * Class for pointing to messages, like Title class is for titles.
+ * @since 2011-03-13
+ */
+class MessageHandle {
+ /// @var Title
+ protected $title = null;
+ /// @var String
+ protected $key = null;
+ /// @var String
+ protected $code = null;
+ /// @var String
+ protected $groupIds = null;
+ /// @var MessageGroup
+ protected $group = false;
+
+ public function __construct( Title $title ) {
+ $this->title = $title;
+ }
+
+ /**
+ * Check if this handle is in a message namespace.
+ * @return bool
+ */
+ public function isMessageNamespace() {
+ global $wgTranslateMessageNamespaces;
+ $namespace = $this->getTitle()->getNamespace();
+
+ return in_array( $namespace, $wgTranslateMessageNamespaces );
+ }
+
+ /**
+ * Recommended to use getCode and getKey instead.
+ * @return Array of the message key and the language code
+ */
+ public function figureMessage() {
+ if ( $this->key === null ) {
+ $title = $this->getTitle();
+ // Check if this is a valid message first
+ $this->key = $title->getDBKey();
+ $known = MessageIndex::singleton()->getGroupIds( $this ) !== array();
+
+ $pos = strrpos( $this->key, '/' );
+ if ( $known || $pos === false ) {
+ $this->code = '';
+ } else {
+ // For keys like Foo/, substr returns false instead of ''
+ $this->code = strval( substr( $this->key, $pos + 1 ) );
+ $this->key = substr( $this->key, 0, $pos );
+ }
+ }
+
+ return array( $this->key, $this->code );
+ }
+
+ /**
+ * Returns the identified or guessed message key.
+ * @return String
+ */
+ public function getKey() {
+ $this->figureMessage();
+
+ return $this->key;
+ }
+
+ /**
+ * Returns the language code.
+ * For language codeless source messages will return empty string.
+ * @return String
+ */
+ public function getCode() {
+ $this->figureMessage();
+
+ return $this->code;
+ }
+
+ /**
+ * Return the code for the assumed language of the content, which might
+ * be different from the subpage code (qqq, no subpage).
+ * @return String
+ * @since 2012-08-05
+ */
+ public function getEffectiveLanguageCode() {
+ global $wgContLang;
+ $code = $this->getCode();
+ if ( $code === '' || $this->isDoc() ) {
+ return $wgContLang->getCode();
+ }
+
+ return $code;
+ }
+
+ /**
+ * Determine whether the current handle is for message documentation.
+ * @return bool
+ */
+ public function isDoc() {
+ global $wgTranslateDocumentationLanguageCode;
+
+ return $this->getCode() === $wgTranslateDocumentationLanguageCode;
+ }
+
+ /**
+ * Determine whether the current handle is for page translation feature.
+ * This does not consider whether the handle corresponds to any message.
+ * @return bool
+ */
+ public function isPageTranslation() {
+ return $this->getTitle()->getNamespace() == NS_TRANSLATIONS;
+ }
+
+ /**
+ * Returns all message group ids this message belongs to.
+ * The primary message group id is always the first one.
+ * If the handle does not correspond to any message, the returned array
+ * is empty.
+ * @return array
+ */
+ public function getGroupIds() {
+ if ( $this->groupIds === null ) {
+ $this->groupIds = MessageIndex::singleton()->getGroupIds( $this );
+ }
+
+ return $this->groupIds;
+ }
+
+ /**
+ * Get the primary MessageGroup this message belongs to.
+ * You should check first that the handle is valid.
+ * @throws MWException
+ * @return MessageGroup
+ */
+ public function getGroup() {
+ $ids = $this->getGroupIds();
+ if ( !isset( $ids[0] ) ) {
+ throw new MWException( 'called before isValid' );
+ }
+
+ return MessageGroups::getGroup( $ids[0] );
+ }
+
+ /**
+ * Checks if the handle corresponds to a known message.
+ * @since 2011-03-16
+ * @return bool
+ */
+ public function isValid() {
+ if ( !$this->isMessageNamespace() ) {
+ return false;
+ }
+
+ $groups = $this->getGroupIds();
+ if ( !$groups ) {
+ return false;
+ }
+
+ // Do another check that the group actually exists
+ $group = $this->getGroup();
+ if ( !$group ) {
+ $warning = "MessageIndex is out of date – refers to unknown group {$groups[0]}. ";
+ $warning .= "Doing a rebuild.";
+ wfWarn( $warning );
+ MessageIndexRebuildJob::newJob()->run();
+
+ return false;
+ }
+
+ return true;
+ }
+
+ /**
+ * Get the original title.
+ * @return Title
+ */
+ public function getTitle() {
+ return $this->title;
+ }
+
+ /**
+ * Get the original title.
+ * @param string $code Language code.
+ * @return Title
+ * @since 2014.04
+ */
+ public function getTitleForLanguage( $code ) {
+ return Title::makeTitle(
+ $this->title->getNamespace(),
+ $this->getKey() . "/$code"
+ );
+ }
+
+ /**
+ * Get the title for the page base.
+ * @return Title
+ * @since 2014.04
+ */
+ public function getTitleForBase() {
+ return Title::makeTitle(
+ $this->title->getNamespace(),
+ $this->getKey()
+ );
+ }
+
+ /**
+ * Check if a string contains the fuzzy string.
+ *
+ * @param $text string Arbitrary text
+ * @return bool If string contains fuzzy string.
+ */
+ public static function hasFuzzyString( $text ) {
+ return strpos( $text, TRANSLATE_FUZZY ) !== false;
+ }
+
+ /**
+ * Check if a title is marked as fuzzy.
+ * @return bool If title is marked fuzzy.
+ */
+ public function isFuzzy() {
+ $dbr = wfGetDB( DB_SLAVE );
+
+ $tables = array( 'page', 'revtag' );
+ $field = 'rt_type';
+ $conds = array(
+ 'page_namespace' => $this->title->getNamespace(),
+ 'page_title' => $this->title->getDBkey(),
+ 'rt_type' => RevTag::getType( 'fuzzy' ),
+ 'page_id=rt_page',
+ 'page_latest=rt_revision'
+ );
+
+ $res = $dbr->selectField( $tables, $field, $conds, __METHOD__ );
+
+ return $res !== false;
+ }
+}
diff --git a/MLEB/Translate/utils/MessageIndex.php b/MLEB/Translate/utils/MessageIndex.php
new file mode 100644
index 00000000..53ab2c7e
--- /dev/null
+++ b/MLEB/Translate/utils/MessageIndex.php
@@ -0,0 +1,526 @@
+<?php
+/**
+ * Contains classes for handling the message index.
+ *
+ * @file
+ * @author Niklas Laxstrom
+ * @copyright Copyright © 2008-2013, Niklas Laxström
+ * @license GPL-2.0+
+ */
+
+/**
+ * Creates a database of keys in all groups, so that namespace and key can be
+ * used to get the groups they belong to. This is used as a fallback when
+ * loadgroup parameter is not provided in the request, which happens if someone
+ * reaches a messages from somewhere else than Special:Translate. Also used
+ * by Special:TranslationStats and alike which need to map lots of titles
+ * to message groups.
+ */
+abstract class MessageIndex {
+ /// @var MessageIndex
+ protected static $instance;
+
+ /**
+ * @return MessageIndex
+ */
+ public static function singleton() {
+ if ( self::$instance === null ) {
+ global $wgTranslateMessageIndex;
+ $params = $wgTranslateMessageIndex;
+ $class = array_shift( $params );
+ self::$instance = new $class( $params );
+ }
+
+ return self::$instance;
+ }
+
+ /**
+ * Retrieves a list of groups given MessageHandle belongs to.
+ * @since 2012-01-04
+ * @param MessageHandle $handle
+ * @return array
+ */
+ public static function getGroupIds( MessageHandle $handle ) {
+ $namespace = $handle->getTitle()->getNamespace();
+ $key = $handle->getKey();
+ $normkey = TranslateUtils::normaliseKey( $namespace, $key );
+
+ $value = self::singleton()->get( $normkey );
+ if ( $value !== null ) {
+ return (array)$value;
+ } else {
+ return array();
+ }
+ }
+
+ /**
+ * @since 2012-01-04
+ * @param MessageHandle $handle
+ * @return MessageGroup|null
+ */
+ public static function getPrimaryGroupId( MessageHandle $handle ) {
+ $groups = self::getGroupIds( $handle );
+
+ return count( $groups ) ? array_shift( $groups ) : null;
+ }
+
+ /**
+ * Looks up the stored value for single key. Only for testing.
+ * @since 2012-04-10
+ * @param string $key
+ * @return string|array|null
+ */
+ protected function get( $key ) {
+ // Default implementation
+ $mi = $this->retrieve();
+ if ( isset( $mi[$key] ) ) {
+ return $mi[$key];
+ } else {
+ return null;
+ }
+ }
+
+ /// @return array
+ abstract public function retrieve();
+
+ abstract protected function store( array $array );
+
+ public function rebuild() {
+ static $recursion = 0;
+
+ if ( $recursion > 0 ) {
+ $msg = __METHOD__ . ': trying to recurse - building the index first time?';
+ wfWarn( $msg );
+
+ $recursion--;
+ return array();
+ }
+ $recursion++;
+
+ $groups = MessageGroups::singleton()->getGroups();
+
+ $new = $old = array();
+ $old = $this->retrieve();
+ $postponed = array();
+
+ /**
+ * @var MessageGroup $g
+ */
+ foreach ( $groups as $g ) {
+ if ( !$g->exists() ) {
+ continue;
+ }
+
+ # Skip meta thingies
+ if ( $g->isMeta() ) {
+ $postponed[] = $g;
+ continue;
+ }
+
+ $this->checkAndAdd( $new, $g );
+ }
+
+ foreach ( $postponed as $g ) {
+ $this->checkAndAdd( $new, $g, true );
+ }
+
+ $this->store( $new );
+ $this->clearMessageGroupStats( $old, $new );
+ $recursion--;
+
+ return $new;
+ }
+
+ /**
+ * Purge message group stats when set of keys have changed.
+ * @param array $old
+ * @param array $new
+ */
+ protected function clearMessageGroupStats( array $old, array $new ) {
+ $changes = array();
+
+ foreach ( $new as $key => $groups ) {
+ // Using != here on purpose to ignore order of items
+ if ( !isset( $old[$key] ) ) {
+ $changes[$key] = array( array(), (array)$groups );
+ } elseif ( $groups != $old[$key] ) {
+ $changes[$key] = array( (array)$old[$key], (array)$groups );
+ }
+ }
+
+ foreach ( $old as $key => $groups ) {
+ if ( !isset( $new[$key] ) ) {
+ $changes[$key] = array( (array)$groups, array() );
+ }
+ // We already checked for diffs above
+ }
+
+ $changedGroups = array();
+ foreach ( $changes as $data ) {
+ foreach ( $data[0] as $group ) {
+ $changedGroups[$group] = true;
+ }
+ foreach ( $data[1] as $group ) {
+ $changedGroups[$group] = true;
+ }
+ }
+
+ MessageGroupStats::clearGroup( array_keys( $changedGroups ) );
+
+ foreach ( $changes as $key => $data ) {
+ list( $ns, $pagename ) = explode( ':', $key, 2 );
+ $title = Title::makeTitle( $ns, $pagename );
+ $handle = new MessageHandle( $title );
+ list ( $oldGroups, $newGroups ) = $data;
+ wfRunHooks( 'TranslateEventMessageMembershipChange',
+ array( $handle, $oldGroups, $newGroups ) );
+ }
+ }
+
+ /**
+ * @param array $hugearray
+ * @param MessageGroup $g
+ * @param bool $ignore
+ */
+ protected function checkAndAdd( &$hugearray, MessageGroup $g, $ignore = false ) {
+ if ( method_exists( $g, 'getKeys' ) ) {
+ $keys = $g->getKeys();
+ } else {
+ $messages = $g->getDefinitions();
+
+ if ( !is_array( $messages ) ) {
+ return;
+ }
+
+ $keys = array_keys( $messages );
+ }
+
+ $id = $g->getId();
+
+ $namespace = $g->getNamespace();
+
+ foreach ( $keys as $key ) {
+ # Force all keys to lower case, because the case doesn't matter and it is
+ # easier to do comparing when the case of first letter is unknown, because
+ # mediawiki forces it to upper case
+ $key = TranslateUtils::normaliseKey( $namespace, $key );
+ if ( isset( $hugearray[$key] ) ) {
+ if ( !$ignore ) {
+ $to = implode( ', ', (array)$hugearray[$key] );
+ wfWarn( "Key $key already belongs to $to, conflict with $id" );
+ }
+
+ if ( is_array( $hugearray[$key] ) ) {
+ // Hard work is already done, just add a new reference
+ $hugearray[$key][] = & $id;
+ } else {
+ // Store the actual reference, then remove it from array, to not
+ // replace the references value, but to store an array of new
+ // references instead. References are hard!
+ $value = & $hugearray[$key];
+ unset( $hugearray[$key] );
+ $hugearray[$key] = array( &$value, &$id );
+ }
+ } else {
+ $hugearray[$key] = & $id;
+ }
+ }
+ unset( $id ); // Disconnect the previous references to this $id
+ }
+
+ /* These are probably slower than serialize and unserialize,
+ * but they are more space efficient because we only need
+ * strings and arrays. */
+ protected function serialize( $data ) {
+ if ( is_array( $data ) ) {
+ return implode( '|', $data );
+ } else {
+ return $data;
+ }
+ }
+
+ protected function unserialize( $data ) {
+ if ( strpos( $data, '|' ) !== false ) {
+ return explode( '|', $data );
+ }
+
+ return $data;
+ }
+}
+
+/**
+ * Storage on serialized file.
+ *
+ * This serializes the whole array. Because this format can preserve
+ * the values which are stored as references inside the array, this is
+ * the most space efficient storage method and fastest when you want
+ * the full index.
+ *
+ * Unfortunately when the size of index grows to about 50000 items, even
+ * though it is only 3,5M on disk, it takes 35M when loaded into memory
+ * and the loading can take more than 0,5 seconds. Because usually we
+ * need to look up only few keys, it is better to use another backend
+ * which provides random access - this backend doesn't support that.
+ */
+class SerializedMessageIndex extends MessageIndex {
+ /// @var array
+ protected $index;
+
+ protected $filename = 'translate_messageindex.ser';
+
+ /** @return array */
+ public function retrieve() {
+ if ( $this->index !== null ) {
+ return $this->index;
+ }
+
+ wfProfileIn( __METHOD__ );
+ $file = TranslateUtils::cacheFile( $this->filename );
+ if ( file_exists( $file ) ) {
+ $this->index = unserialize( file_get_contents( $file ) );
+ } else {
+ $this->index = $this->rebuild();
+ }
+ wfProfileOut( __METHOD__ );
+
+ return $this->index;
+ }
+
+ protected function store( array $array ) {
+ wfProfileIn( __METHOD__ );
+ $file = TranslateUtils::cacheFile( $this->filename );
+ file_put_contents( $file, serialize( $array ) );
+ $this->index = $array;
+ wfProfileOut( __METHOD__ );
+ }
+}
+
+/// BC
+class FileCachedMessageIndex extends SerializedMessageIndex {
+}
+
+/**
+ * Storage on the database itself.
+ *
+ * This is likely to be the slowest backend. However it scales okay
+ * and provides random access. It also doesn't need any special setup,
+ * the database table is added with update.php together with other tables,
+ * which is the reason this is the default backend. It also works well
+ * on multi-server setup without needing for shared file storage.
+ *
+ * @since 2012-04-12
+ */
+class DatabaseMessageIndex extends MessageIndex {
+ /// @var array
+ protected $index;
+
+ /** @return array */
+ public function retrieve() {
+ if ( $this->index !== null ) {
+ return $this->index;
+ }
+
+ wfProfileIn( __METHOD__ );
+ $dbr = wfGetDB( DB_SLAVE );
+ $res = $dbr->select( 'translate_messageindex', '*', array(), __METHOD__ );
+ $this->index = array();
+ foreach ( $res as $row ) {
+ $this->index[$row->tmi_key] = $this->unserialize( $row->tmi_value );
+ }
+ wfProfileOut( __METHOD__ );
+
+ return $this->index;
+ }
+
+ protected function get( $key ) {
+ wfProfileIn( __METHOD__ );
+ $dbr = wfGetDB( DB_SLAVE );
+ $value = $dbr->selectField(
+ 'translate_messageindex',
+ 'tmi_value',
+ array( 'tmi_key' => $key ),
+ __METHOD__
+ );
+
+ if ( is_string( $value ) ) {
+ $value = $this->unserialize( $value );
+ } else {
+ $value = null;
+ }
+
+ wfProfileOut( __METHOD__ );
+
+ return $value;
+ }
+
+ protected function store( array $array ) {
+ wfProfileIn( __METHOD__ );
+ $dbw = wfGetDB( DB_MASTER );
+ $rows = array();
+
+ foreach ( $array as $key => $value ) {
+ $value = $this->serialize( $value );
+ $rows[] = array( 'tmi_key' => $key, 'tmi_value' => $value );
+ }
+
+ // BC for <= MW 1.22
+ if ( method_exists( $dbw, 'startAtomic' ) ) {
+ $dbw->startAtomic( __METHOD__ );
+ }
+ $dbw->delete( 'translate_messageindex', '*', __METHOD__ );
+ $dbw->insert( 'translate_messageindex', $rows, __METHOD__ );
+ if ( method_exists( $dbw, 'endAtomic' ) ) {
+ $dbw->endAtomic( __METHOD__ );
+ }
+
+ $this->index = $array;
+ wfProfileOut( __METHOD__ );
+ }
+}
+
+/**
+ * Storage on the object cache.
+ *
+ * This can be faster than DatabaseMessageIndex, but it doesn't
+ * provide random access, and the data is not guaranteed to be persistent.
+ *
+ * This is unlikely to be the best backend for you, so don't use it.
+ */
+class CachedMessageIndex extends MessageIndex {
+ protected $key = 'translate-messageindex';
+ protected $cache;
+
+ /// @var array
+ protected $index;
+
+ protected function __construct( array $params ) {
+ $this->cache = wfGetCache( CACHE_ANYTHING );
+ }
+
+ /** @return array */
+ public function retrieve() {
+ if ( $this->index !== null ) {
+ return $this->index;
+ }
+
+ wfProfileIn( __METHOD__ );
+ $key = wfMemckey( $this->key );
+ $data = $this->cache->get( $key );
+ if ( is_array( $data ) ) {
+ $this->index = $data;
+ } else {
+ $this->index = $this->rebuild();
+ }
+ wfProfileOut( __METHOD__ );
+
+ return $this->index;
+ }
+
+ protected function store( array $array ) {
+ wfProfileIn( __METHOD__ );
+ $key = wfMemckey( $this->key );
+ $this->cache->set( $key, $array );
+
+ $this->index = $array;
+ wfProfileOut( __METHOD__ );
+ }
+}
+
+/**
+ * Storage on CDB files.
+ *
+ * This is improved version of SerializedMessageIndex. It uses CDB files
+ * for storage, which means it provides random access. The CDB files are
+ * about double the size of serialized files (~7M for 50000 keys).
+ *
+ * Loading the whole index is slower than serialized, but about the same
+ * as for database. Suitable for single-server setups where
+ * SerializedMessageIndex is too slow for sloading the whole index.
+ *
+ * @since 2012-04-10
+ */
+class CDBMessageIndex extends MessageIndex {
+ /// @var array
+ protected $index;
+
+ /// @var CdbReader
+ protected $reader;
+
+ /// @var string
+ protected $filename = 'translate_messageindex.cdb';
+
+ /** @return array */
+ public function retrieve() {
+ $reader = $this->getReader();
+ // This must be below the line above, which may fill the index
+ if ( $this->index !== null ) {
+ return $this->index;
+ }
+
+ wfProfileIn( __METHOD__ );
+ $keys = (array)$this->unserialize( $reader->get( '#keys' ) );
+ $this->index = array();
+ foreach ( $keys as $key ) {
+ $this->index[$key] = $this->unserialize( $reader->get( $key ) );
+ }
+ wfProfileOut( __METHOD__ );
+
+ return $this->index;
+ }
+
+ protected function get( $key ) {
+ $reader = $this->getReader();
+ // We might have the full cache loaded
+ if ( $this->index !== null ) {
+ if ( isset( $this->index[$key] ) ) {
+ return $this->index[$key];
+ } else {
+ return null;
+ }
+ }
+
+ $value = $reader->get( $key );
+ if ( !is_string( $value ) ) {
+ $value = null;
+ } else {
+ $value = $this->unserialize( $value );
+ }
+
+ return $value;
+ }
+
+ protected function store( array $array ) {
+ wfProfileIn( __METHOD__ );
+ $this->reader = null;
+
+ $file = TranslateUtils::cacheFile( $this->filename );
+ $cache = CdbWriter::open( $file );
+ $keys = array_keys( $array );
+ $cache->set( '#keys', $this->serialize( $keys ) );
+
+ foreach ( $array as $key => $value ) {
+ $value = $this->serialize( $value );
+ $cache->set( $key, $value );
+ }
+
+ $cache->close();
+
+ $this->index = $array;
+ wfProfileOut( __METHOD__ );
+ }
+
+ protected function getReader() {
+ if ( $this->reader ) {
+ return $this->reader;
+ }
+
+ $file = TranslateUtils::cacheFile( $this->filename );
+ if ( !file_exists( $file ) ) {
+ // Create an empty index to allow rebuild
+ $this->store( array() );
+ $this->index = $this->rebuild();
+ }
+
+ return $this->reader = CdbReader::open( $file );
+ }
+}
diff --git a/MLEB/Translate/utils/MessageIndexRebuildJob.php b/MLEB/Translate/utils/MessageIndexRebuildJob.php
new file mode 100644
index 00000000..413df987
--- /dev/null
+++ b/MLEB/Translate/utils/MessageIndexRebuildJob.php
@@ -0,0 +1,53 @@
+<?php
+/**
+ * Contains class with job for rebuilding message index.
+ *
+ * @file
+ * @author Niklas Laxström
+ * @copyright Copyright © 2011-2013, Niklas Laxström
+ * @license GPL-2.0+
+ */
+
+/**
+ * Job for rebuilding message index.
+ *
+ * @ingroup JobQueue
+ */
+class MessageIndexRebuildJob extends Job {
+
+ /**
+ * @return MessageIndexRebuildJob
+ */
+ public static function newJob() {
+ $job = new self( Title::newMainPage() );
+
+ return $job;
+ }
+
+ function __construct( $title, $params = array(), $id = 0 ) {
+ parent::__construct( __CLASS__, $title, $params, $id );
+ }
+
+ function run() {
+ MessageIndex::singleton()->rebuild();
+
+ return true;
+ }
+
+ /**
+ * Usually this job is fast enough to be executed immediately,
+ * in which case having it go through jobqueue only causes problems
+ * in installations with errant job queue processing.
+ * @override
+ */
+ public function insert() {
+ global $wgTranslateDelayedMessageIndexRebuild;
+ if ( $wgTranslateDelayedMessageIndexRebuild ) {
+ return JobQueueGroup::singleton()->push( $this );
+ } else {
+ $this->run();
+
+ return true;
+ }
+ }
+}
diff --git a/MLEB/Translate/utils/MessageTable.php b/MLEB/Translate/utils/MessageTable.php
new file mode 100644
index 00000000..d2dc83a7
--- /dev/null
+++ b/MLEB/Translate/utils/MessageTable.php
@@ -0,0 +1,418 @@
+<?php
+/**
+ * Contains classes to build tables for MessageCollection objects.
+ *
+ * @file
+ * @author Niklas Laxström
+ * @license GPL-2.0+
+ */
+
+/**
+ * Pretty formatter for MessageCollection objects.
+ */
+class MessageTable {
+ /*
+ * @var bool
+ */
+ protected $reviewMode = false;
+
+ /**
+ * @var MessageCollection
+ */
+ protected $collection;
+
+ /**
+ * @var MessageGroup
+ */
+ protected $group;
+
+ /**
+ * @var IContextSource
+ */
+ protected $context;
+
+ /**
+ * @var array
+ */
+ protected $headers = array(
+ 'table' => array( 'msg', 'allmessagesname' ),
+ 'current' => array( 'msg', 'allmessagescurrent' ),
+ 'default' => array( 'msg', 'allmessagesdefault' ),
+ );
+
+ /**
+ * Use this rather than the constructor directly
+ * to allow alternative implementations.
+ *
+ * @since 2012-11-29
+ */
+ public static function newFromContext(
+ IContextSource $context,
+ MessageCollection $collection,
+ MessageGroup $group
+ ) {
+ $table = new self( $collection, $group );
+ $table->setContext( $context );
+
+ wfRunHooks( 'TranslateMessageTableInit', array( &$table, $context, $collection, $group ) );
+
+ return $table;
+ }
+
+ public function setContext( IContextSource $context ) {
+ $this->context = $context;
+ }
+
+ /**
+ * Use the newFromContext() function rather than the constructor directly
+ * to construct the object to allow alternative implementations.
+ */
+ public function __construct( MessageCollection $collection, MessageGroup $group ) {
+ $this->collection = $collection;
+ $this->group = $group;
+ $this->setHeaderText( 'table', $group->getLabel() );
+ }
+
+ public function setReviewMode( $mode = true ) {
+ $this->reviewMode = $mode;
+ }
+
+ public function setHeaderTextMessage( $type, $value ) {
+ if ( !isset( $this->headers[$type] ) ) {
+ throw new MWException( "Unexpected type $type" );
+ }
+
+ $this->headers[$type] = array( 'msg', $value );
+ }
+
+ public function setHeaderText( $type, $value ) {
+ if ( !isset( $this->headers[$type] ) ) {
+ throw new MWException( "Unexpected type $type" );
+ }
+
+ $this->headers[$type] = array( 'raw', htmlspecialchars( $value ) );
+ }
+
+ public function includeAssets() {
+ TranslationHelpers::addModules( $this->context->getOutput() );
+ $pages = array();
+
+ foreach ( $this->collection->getTitles() as $title ) {
+ $pages[] = $title->getPrefixedDBKey();
+ }
+
+ $vars = array( 'trlKeys' => $pages );
+ $this->context->getOutput()->addScript( Skin::makeVariablesScript( $vars ) );
+ }
+
+ public function header() {
+ $tableheader = Xml::openElement( 'table', array(
+ 'class' => 'mw-sp-translate-table'
+ ) );
+
+ if ( $this->reviewMode ) {
+ $tableheader .= Xml::openElement( 'tr' );
+ $tableheader .= Xml::element( 'th',
+ array( 'rowspan' => '2' ),
+ $this->headerText( 'table' )
+ );
+ $tableheader .= Xml::tags( 'th', null, $this->headerText( 'default' ) );
+ $tableheader .= Xml::closeElement( 'tr' );
+
+ $tableheader .= Xml::openElement( 'tr' );
+ $tableheader .= Xml::tags( 'th', null, $this->headerText( 'current' ) );
+ $tableheader .= Xml::closeElement( 'tr' );
+ } else {
+ $tableheader .= Xml::openElement( 'tr' );
+ $tableheader .= Xml::tags( 'th', null, $this->headerText( 'table' ) );
+ $tableheader .= Xml::tags( 'th', null, $this->headerText( 'current' ) );
+ $tableheader .= Xml::closeElement( 'tr' );
+ }
+
+ return $tableheader . "\n";
+ }
+
+ public function contents() {
+ $optional = $this->context->msg( 'translate-optional' )->escaped();
+
+ $this->doLinkBatch();
+
+ $sourceLang = Language::factory( $this->group->getSourceLanguage() );
+ $targetLang = Language::factory( $this->collection->getLanguage() );
+ $titleMap = $this->collection->keys();
+
+ $output = '';
+
+ $this->collection->initMessages(); // Just to be sure
+
+ /**
+ * @var TMessage $m
+ */
+ foreach ( $this->collection as $key => $m ) {
+ $tools = array();
+ /**
+ * @var Title $title
+ */
+ $title = $titleMap[$key];
+
+ $original = $m->definition();
+ $translation = $m->translation();
+
+ $hasTranslation = $translation !== null;
+
+ if ( $hasTranslation ) {
+ $message = $translation;
+ $extraAttribs = self::getLanguageAttributes( $targetLang );
+ } else {
+ $message = $original;
+ $extraAttribs = self::getLanguageAttributes( $sourceLang );
+ }
+
+ wfRunHooks(
+ 'TranslateFormatMessageBeforeTable',
+ array( &$message, $m, $this->group, $targetLang, &$extraAttribs )
+ );
+
+ // Using Html::element( a ) because Linker::link is memory hog.
+ // It takes about 20 KiB per call, and that times 5000 is quite
+ // a lot of memory.
+ $niceTitle = htmlspecialchars( $this->context->getLanguage()->truncate(
+ $title->getPrefixedText(),
+ -35
+ ) );
+ $linkAttribs = array(
+ 'href' => $title->getLocalUrl( array( 'action' => 'edit' ) ),
+ );
+ $linkAttribs += TranslationEditPage::jsEdit( $title, $this->group->getId() );
+
+ $tools['edit'] = Html::element( 'a', $linkAttribs, $niceTitle );
+
+ $anchor = 'msg_' . $key;
+ $anchor = Xml::element( 'a', array( 'id' => $anchor, 'href' => "#$anchor" ), "↓" );
+
+ $extra = '';
+ if ( $m->hasTag( 'optional' ) ) {
+ $extra = '<br />' . $optional;
+ }
+
+ $tqeData = $extraAttribs + array(
+ 'data-title' => $title->getPrefixedText(),
+ 'data-group' => $this->group->getId(),
+ 'id' => 'tqe-anchor-' . substr( sha1( $title->getPrefixedText() ), 0, 12 ),
+ 'class' => 'tqe-inlineeditable ' . ( $hasTranslation ? 'translated' : 'untranslated' )
+ );
+
+ $button = $this->getReviewButton( $m );
+ $status = $this->getReviewStatus( $m );
+ $leftColumn = $button . $anchor . $tools['edit'] . $extra . $status;
+
+ if ( $this->reviewMode ) {
+ $output .= Xml::tags( 'tr', array( 'class' => 'orig' ),
+ Xml::tags( 'td', array( 'rowspan' => '2' ), $leftColumn ) .
+ Xml::tags( 'td', self::getLanguageAttributes( $sourceLang ),
+ TranslateUtils::convertWhiteSpaceToHTML( $original )
+ )
+ );
+
+ $output .= Xml::tags( 'tr', null,
+ Xml::tags( 'td', $tqeData, TranslateUtils::convertWhiteSpaceToHTML( $message ) )
+ );
+ } else {
+ $output .= Xml::tags( 'tr', array( 'class' => 'def' ),
+ Xml::tags( 'td', null, $leftColumn ) .
+ Xml::tags( 'td', $tqeData, TranslateUtils::convertWhiteSpaceToHTML( $message ) )
+ );
+ }
+
+ $output .= "\n";
+ }
+
+ return $output;
+ }
+
+ public function fullTable( $offsets, $nondefaults ) {
+ $this->includeAssets();
+
+ $content = $this->header() . $this->contents() . '</table>';
+ $pager = $this->doStupidLinks( $offsets, $nondefaults );
+
+ if ( $offsets['count'] === 0 ) {
+ return $pager;
+ } elseif ( $offsets['count'] === $offsets['total'] ) {
+ return $content . $pager;
+ } else {
+ return $pager . $content . $pager;
+ }
+ }
+
+ protected function headerText( $type ) {
+ if ( !isset( $this->headers[$type] ) ) {
+ throw new MWException( "Unexpected type $type" );
+ }
+
+ list( $format, $value ) = $this->headers[$type];
+ if ( $format === 'msg' ) {
+ return wfMessage( $value )->escaped();
+ } elseif ( $format === 'raw' ) {
+ return $value;
+ } else {
+ throw new MWException( "Unexcepted format $format" );
+ }
+ }
+
+ protected static function getLanguageAttributes( Language $language ) {
+ global $wgTranslateDocumentationLanguageCode;
+
+ $code = $language->getCode();
+ $dir = $language->getDir();
+
+ if ( $code === $wgTranslateDocumentationLanguageCode ) {
+ // Should be good enough for now
+ $code = 'en';
+ }
+
+ return array( 'lang' => $code, 'dir' => $dir );
+ }
+
+ protected function getReviewButton( TMessage $message ) {
+ $revision = $message->getProperty( 'revision' );
+ $user = $this->context->getUser();
+
+ if ( !$this->reviewMode || !$user->isAllowed( 'translate-messagereview' ) || !$revision ) {
+ return '';
+ }
+
+ $attribs = array(
+ 'type' => 'button',
+ 'class' => 'mw-translate-messagereviewbutton',
+ 'data-token' => ApiTranslationReview::getToken( 0, '' ),
+ 'data-revision' => $revision,
+ 'name' => 'acceptbutton-' . $revision, // Otherwise Firefox disables buttons on page load
+ );
+
+ $reviewers = (array)$message->getProperty( 'reviewers' );
+ if ( in_array( $user->getId(), $reviewers ) ) {
+ $attribs['value'] = wfMessage( 'translate-messagereview-done' )->text();
+ $attribs['disabled'] = 'disabled';
+ $attribs['title'] = wfMessage( 'translate-messagereview-doit' )->text();
+ } elseif ( $message->hasTag( 'fuzzy' ) ) {
+ $attribs['value'] = wfMessage( 'translate-messagereview-submit' )->text();
+ $attribs['disabled'] = 'disabled';
+ $attribs['title'] = wfMessage( 'translate-messagereview-no-fuzzy' )->text();
+ } elseif ( $user->getName() === $message->getProperty( 'last-translator-text' ) ) {
+ $attribs['value'] = wfMessage( 'translate-messagereview-submit' )->text();
+ $attribs['disabled'] = 'disabled';
+ $attribs['title'] = wfMessage( 'translate-messagereview-no-own' )->text();
+ } else {
+ $attribs['value'] = wfMessage( 'translate-messagereview-submit' )->text();
+ }
+
+ $review = Html::element( 'input', $attribs );
+
+ return $review;
+ }
+
+ /// For optimization
+ protected $reviewStatusCache = array();
+
+ protected function getReviewStatus( TMessage $message ) {
+ if ( !$this->reviewMode ) {
+ return '';
+ }
+
+ $reviewers = (array)$message->getProperty( 'reviewers' );
+ $count = count( $reviewers );
+
+ if ( $count === 0 ) {
+ return '';
+ }
+
+ $userId = $this->context->getUser()->getId();
+ $you = in_array( $userId, $reviewers );
+ $key = $you ? "y$count" : "n$count";
+
+ // ->text() (and ->parse()) invokes the parser. Each call takes
+ // about 70 KiB, so it makes sense to cache these messages which
+ // have high repetition.
+ if ( isset( $this->reviewStatusCache[$key] ) ) {
+ return $this->reviewStatusCache[$key];
+ } elseif ( $you ) {
+ $msg = wfMessage( 'translate-messagereview-reviewswithyou' )->numParams( $count )->text();
+ } else {
+ $msg = wfMessage( 'translate-messagereview-reviews' )->numParams( $count )->text();
+ }
+
+ $wrap = Html::rawElement( 'div', array( 'class' => 'mw-translate-messagereviewstatus' ), $msg );
+ $this->reviewStatusCache[$key] = $wrap;
+
+ return $wrap;
+ }
+
+ protected function doLinkBatch() {
+ $batch = new LinkBatch();
+ $batch->setCaller( __METHOD__ );
+
+ foreach ( $this->collection->getTitles() as $title ) {
+ $batch->addObj( $title );
+ }
+
+ $batch->execute();
+ }
+
+ protected function doStupidLinks( $info, $nondefaults ) {
+ // Total number of messages for this query
+ $total = $info['total'];
+ // Messages in this page
+ $count = $info['count'];
+
+ $allInThisPage = $info['start'] === 0 && $total === $count;
+
+ if ( $info['count'] === 0 ) {
+ $navigation = wfMessage( 'translate-page-showing-none' )->parse();
+ } elseif ( $allInThisPage ) {
+ $navigation = wfMessage( 'translate-page-showing-all' )->numParams( $total )->parse();
+ } else {
+ $previous = wfMessage( 'translate-prev' )->escaped();
+
+ if ( $info['backwardsOffset'] !== false ) {
+ $previous = $this->makeOffsetLink( $previous, $info['backwardsOffset'], $nondefaults );
+ }
+
+ $nextious = wfMessage( 'translate-next' )->escaped();
+ if ( $info['forwardsOffset'] !== false ) {
+ $nextious = $this->makeOffsetLink( $nextious, $info['forwardsOffset'], $nondefaults );
+ }
+
+ $start = $info['start'] + 1;
+ $stop = $start + $info['count'] - 1;
+ $total = $info['total'];
+
+ $navigation = wfMessage( 'translate-page-showing' )
+ ->numParams( $start, $stop, $total )->parse();
+ $navigation .= ' ';
+ $navigation .= wfMessage( 'translate-page-paging-links' )
+ ->rawParams( $previous, $nextious )->escaped();
+ }
+
+ return Html::openElement( 'fieldset' ) .
+ Html::element( 'legend', array(), wfMessage( 'translate-page-navigation-legend' )->text() ) .
+ $navigation .
+ Html::closeElement( 'fieldset' );
+ }
+
+ protected function makeOffsetLink( $label, $offset, $nondefaults ) {
+ $query = array_merge(
+ $nondefaults,
+ array( 'offset' => $offset )
+ );
+
+ $link = Linker::link(
+ $this->context->getTitle(),
+ $label,
+ array(),
+ $query
+ );
+
+ return $link;
+ }
+}
diff --git a/MLEB/Translate/utils/MessageUpdateJob.php b/MLEB/Translate/utils/MessageUpdateJob.php
new file mode 100644
index 00000000..a12972a3
--- /dev/null
+++ b/MLEB/Translate/utils/MessageUpdateJob.php
@@ -0,0 +1,91 @@
+<?php
+/**
+ * Job for updating translation pages.
+ *
+ * @file
+ * @author Niklas Laxström
+ * @copyright Copyright © 2008-2013, Niklas Laxström
+ * @license GPL-2.0+
+ */
+
+/**
+ * Job for updating translation pages when translation or message definition changes.
+ *
+ * @ingroup JobQueue
+ */
+class MessageUpdateJob extends Job {
+ public static function newJob( Title $target, $content, $fuzzy = false ) {
+ $params = array(
+ 'content' => $content,
+ 'fuzzy' => $fuzzy,
+ );
+ $job = new self( $target, $params );
+
+ return $job;
+ }
+
+ function __construct( $title, $params = array(), $id = 0 ) {
+ parent::__construct( __CLASS__, $title, $params, $id );
+ $this->params = $params;
+ }
+
+ function run() {
+ global $wgTranslateDocumentationLanguageCode;
+
+ $title = $this->title;
+ $params = $this->params;
+ $user = FuzzyBot::getUser();
+ $flags = EDIT_DEFER_UPDATES | EDIT_FORCE_BOT;
+
+ $wikiPage = WikiPage::factory( $title );
+ $summary = wfMessage( 'translate-manage-import-summary' )
+ ->inContentLanguage()->plain();
+ $content = ContentHandler::makeContent( $params['content'], $title );
+ $wikiPage->doEditContent( $content, $summary, $flags, false, $user );
+
+ // NOTE: message documentation is excluded from fuzzying!
+ if ( $params['fuzzy'] ) {
+ $handle = new MessageHandle( $title );
+ $key = $handle->getKey();
+
+ $languages = TranslateUtils::getLanguageNames( 'en' );
+ unset( $languages[$wgTranslateDocumentationLanguageCode] );
+ $languages = array_keys( $languages );
+
+ $dbw = wfGetDB( DB_MASTER );
+ $fields = array( 'page_id', 'page_latest' );
+ $conds = array( 'page_namespace' => $title->getNamespace() );
+
+ $pages = array();
+ foreach ( $languages as $code ) {
+ $otherTitle = Title::makeTitleSafe( $title->getNamespace(), "$key/$code" );
+ $pages[$otherTitle->getDBKey()] = true;
+ }
+ unset( $pages[$title->getDBKey()] );
+ if ( count( $pages ) === 0 ) {
+ return true;
+ }
+
+ $conds['page_title'] = array_keys( $pages );
+
+ $res = $dbw->select( 'page', $fields, $conds, __METHOD__ );
+ $inserts = array();
+ foreach ( $res as $row ) {
+ $inserts[] = array(
+ 'rt_type' => RevTag::getType( 'fuzzy' ),
+ 'rt_page' => $row->page_id,
+ 'rt_revision' => $row->page_latest,
+ );
+ }
+
+ $dbw->replace(
+ 'revtag',
+ array( array( 'rt_type', 'rt_page', 'rt_revision' ) ),
+ $inserts,
+ __METHOD__
+ );
+ }
+
+ return true;
+ }
+}
diff --git a/MLEB/Translate/utils/MessageWebImporter.php b/MLEB/Translate/utils/MessageWebImporter.php
new file mode 100644
index 00000000..ec9c968b
--- /dev/null
+++ b/MLEB/Translate/utils/MessageWebImporter.php
@@ -0,0 +1,577 @@
+<?php
+/**
+ * Class which encapsulates message importing. It scans for changes (new, changed, deleted),
+ * displays them in pretty way with diffs and finally executes the actions the user choices.
+ *
+ * @file
+ * @author Niklas Laxström
+ * @author Siebrand Mazeland
+ * @copyright Copyright © 2009-2013, Niklas Laxström, Siebrand Mazeland
+ * @license GPL-2.0+
+ */
+
+/**
+ * Class which encapsulates message importing. It scans for changes (new, changed, deleted),
+ * displays them in pretty way with diffs and finally executes the actions the user choices.
+ */
+class MessageWebImporter {
+ /**
+ * @var Title
+ */
+ protected $title;
+
+ /**
+ * @var User
+ */
+ protected $user;
+
+ /**
+ * @var MessageGroup
+ */
+ protected $group;
+ protected $code;
+ protected $time;
+
+ /**
+ * @var OutputPage
+ */
+ protected $out;
+
+ /**
+ * Maximum processing time in seconds.
+ */
+ protected $processingTime = 43;
+
+ public function __construct( Title $title = null, $group = null, $code = 'en' ) {
+ $this->setTitle( $title );
+ $this->setGroup( $group );
+ $this->setCode( $code );
+ }
+
+ /**
+ * Wrapper for consistency with SpecialPage
+ *
+ * @return Title
+ */
+ public function getTitle() {
+ return $this->title;
+ }
+
+ public function setTitle( Title $title ) {
+ $this->title = $title;
+ }
+
+ /**
+ * @return User
+ */
+ public function getUser() {
+ return $this->user ? $this->user : RequestContext::getMain()->getUser();
+ }
+
+ public function setUser( User $user ) {
+ $this->user = $user;
+ }
+
+ /**
+ * @return MessageGroup
+ */
+ public function getGroup() {
+ return $this->group;
+ }
+
+ /**
+ * Group is either MessageGroup object or group id.
+ * @param MessageGroup|string $group
+ */
+ public function setGroup( $group ) {
+ if ( $group instanceof MessageGroup ) {
+ $this->group = $group;
+ } else {
+ $this->group = MessageGroups::getGroup( $group );
+ }
+ }
+
+ public function getCode() {
+ return $this->code;
+ }
+
+ public function setCode( $code = 'en' ) {
+ $this->code = $code;
+ }
+
+ /**
+ * @return string
+ */
+ protected function getAction() {
+ return $this->getTitle()->getFullURL();
+ }
+
+ /**
+ * @return string
+ */
+ protected function doHeader() {
+ $formParams = array(
+ 'method' => 'post',
+ 'action' => $this->getAction(),
+ 'class' => 'mw-translate-manage'
+ );
+
+ return
+ Xml::openElement( 'form', $formParams ) .
+ Html::hidden( 'title', $this->getTitle()->getPrefixedText() ) .
+ Html::hidden( 'token', $this->getUser()->getEditToken() ) .
+ Html::hidden( 'process', 1 );
+ }
+
+ /**
+ * @return string
+ */
+ protected function doFooter() {
+ return '</form>';
+ }
+
+ /**
+ * @return bool
+ */
+ protected function allowProcess() {
+ $request = RequestContext::getMain()->getRequest();
+
+ if ( $request->wasPosted() &&
+ $request->getBool( 'process', false ) &&
+ $this->getUser()->matchEditToken( $request->getVal( 'token' ) )
+ ) {
+
+ return true;
+ }
+
+ return false;
+ }
+
+ /**
+ * @return array
+ */
+ protected function getActions() {
+ if ( $this->code === 'en' ) {
+ return array( 'import', 'fuzzy', 'ignore' );
+ } else {
+ return array( 'import', 'conflict', 'ignore' );
+ }
+ }
+
+ /**
+ * @param bool $fuzzy
+ * @param string $action
+ * @return string
+ */
+ protected function getDefaultAction( $fuzzy, $action ) {
+ if ( $action ) {
+ return $action;
+ }
+
+ return $fuzzy ? 'conflict' : 'import';
+ }
+
+ public function execute( $messages ) {
+ $context = RequestContext::getMain();
+ $this->out = $context->getOutput();
+
+ // Set up diff engine
+ $diff = new DifferenceEngine;
+ $diff->showDiffStyle();
+ $diff->setReducedLineNumbers();
+
+ // Check whether we do processing
+ $process = $this->allowProcess();
+
+ // Initialise collection
+ $group = $this->getGroup();
+ $code = $this->getCode();
+ $collection = $group->initCollection( $code );
+ $collection->loadTranslations();
+
+ $this->out->addHTML( $this->doHeader() );
+
+ // Determine changes
+ $alldone = $process;
+ $changed = array();
+
+ foreach ( $messages as $key => $value ) {
+ $fuzzy = $old = false;
+
+ if ( isset( $collection[$key] ) ) {
+ $old = $collection[$key]->translation();
+ }
+
+ // No changes at all, ignore
+ if ( strval( $old ) === strval( $value ) ) {
+ continue;
+ }
+
+ if ( $old === false ) {
+ $para = '<code class="mw-tmi-new">' . htmlspecialchars( $key ) . '</code>';
+ $name = $context->msg( 'translate-manage-import-new' )->rawParams( $para )
+ ->escaped();
+ $text = TranslateUtils::convertWhiteSpaceToHTML( $value );
+ $changed[] = self::makeSectionElement( $name, 'new', $text );
+ } else {
+ $oldContent = ContentHandler::makeContent( $old, $diff->getTitle() );
+ $newContent = ContentHandler::makeContent( $value, $diff->getTitle() );
+
+ $diff->setContent( $oldContent, $newContent );
+
+ $text = $diff->getDiff( '', '' );
+ $type = 'changed';
+
+ $action = $context->getRequest()
+ ->getVal( self::escapeNameForPHP( "action-$type-$key" ) );
+
+ if ( $process ) {
+ if ( !count( $changed ) ) {
+ $changed[] = '<ul>';
+ }
+
+ if ( $action === null ) {
+ $message = $context->msg(
+ 'translate-manage-inconsistent',
+ wfEscapeWikiText( "action-$type-$key" )
+ )->parse();
+ $changed[] = "<li>$message</li></ul>";
+ $process = false;
+ } else {
+ // Check processing time
+ if ( !isset( $this->time ) ) {
+ $this->time = wfTimestamp();
+ }
+
+ $message = self::doAction(
+ $action,
+ $group,
+ $key,
+ $code,
+ $value
+ );
+
+ $key = array_shift( $message );
+ $params = $message;
+ $message = $context->msg( $key, $params )->parse();
+ $changed[] = "<li>$message</li>";
+
+ if ( $this->checkProcessTime() ) {
+ $process = false;
+ $message = $context->msg( 'translate-manage-toolong' )
+ ->numParams( $this->processingTime )->parse();
+ $changed[] = "<li>$message</li></ul>";
+ }
+ continue;
+ }
+ }
+
+ $alldone = false;
+
+ $actions = $this->getActions();
+ $defaction = $this->getDefaultAction( $fuzzy, $action );
+
+ $act = array();
+
+ // Give grep a chance to find the usages:
+ // translate-manage-action-import, translate-manage-action-conflict,
+ // translate-manage-action-ignore, translate-manage-action-fuzzy
+ foreach ( $actions as $action ) {
+ $label = $context->msg( "translate-manage-action-$action" )->text();
+ $name = self::escapeNameForPHP( "action-$type-$key" );
+ $id = Sanitizer::escapeId( "action-$key-$action" );
+ $act[] = Xml::radioLabel( $label, $name, $action, $id, $action === $defaction );
+ }
+
+ $param = '<code class="mw-tmi-diff">' . htmlspecialchars( $key ) . '</code>';
+ $name = $context->msg( 'translate-manage-import-diff', $param,
+ implode( ' ', $act )
+ )->text();
+
+ $changed[] = self::makeSectionElement( $name, $type, $text );
+ }
+ }
+
+ if ( !$process ) {
+ $collection->filter( 'hastranslation', false );
+ $keys = $collection->getMessageKeys();
+
+ $diff = array_diff( $keys, array_keys( $messages ) );
+
+ foreach ( $diff as $s ) {
+ $para = '<code class="mw-tmi-deleted">' . htmlspecialchars( $s ) . '</code>';
+ $name = $context->msg( 'translate-manage-import-deleted' )->rawParams( $para )->escaped();
+ $text = TranslateUtils::convertWhiteSpaceToHTML( $collection[$s]->translation() );
+ $changed[] = self::makeSectionElement( $name, 'deleted', $text );
+ }
+ }
+
+ if ( $process || ( !count( $changed ) && $code !== 'en' ) ) {
+ if ( !count( $changed ) ) {
+ $this->out->addWikiMsg( 'translate-manage-nochanges-other' );
+ }
+
+ if ( !count( $changed ) || strpos( $changed[count( $changed ) - 1], '<li>' ) !== 0 ) {
+ $changed[] = '<ul>';
+ }
+
+ $message = $context->msg( 'translate-manage-import-done' )->parse();
+ $changed[] = "<li>$message</li></ul>";
+ $this->out->addHTML( implode( "\n", $changed ) );
+ } else {
+ // END
+ if ( count( $changed ) ) {
+ if ( $code === 'en' ) {
+ $this->out->addWikiMsg( 'translate-manage-intro-en' );
+ } else {
+ $lang = TranslateUtils::getLanguageName(
+ $code,
+ $context->getLanguage()->getCode()
+ );
+ $this->out->addWikiMsg( 'translate-manage-intro-other', $lang );
+ }
+ $this->out->addHTML( Html::hidden( 'language', $code ) );
+ $this->out->addHTML( implode( "\n", $changed ) );
+ $this->out->addHTML( Xml::submitButton( $context->msg( 'translate-manage-submit' )->text() ) );
+ } else {
+ $this->out->addWikiMsg( 'translate-manage-nochanges' );
+ }
+ }
+
+ $this->out->addHTML( $this->doFooter() );
+
+ return $alldone;
+ }
+
+ /**
+ * Perform an action on a given group/key/code
+ *
+ * @param string $action Options: 'import', 'conflict' or 'ignore'
+ * @param MessageGroup $group Group object
+ * @param string $key Message key
+ * @param string $code Language code
+ * @param string $message Contents for the $key/code combination
+ * @param string $comment Edit summary (default: empty) - see Article::doEdit
+ * @param User $user User that will make the edit (default: null - RequestContext user).
+ * See Article::doEdit.
+ * @param int $editFlags Integer bitfield: see Article::doEdit
+ * @throws MWException
+ * @return string Action result
+ */
+ public static function doAction( $action, $group, $key, $code, $message, $comment = '',
+ $user = null, $editFlags = 0
+ ) {
+ global $wgTranslateDocumentationLanguageCode;
+
+ $title = self::makeTranslationTitle( $group, $key, $code );
+
+ if ( $action === 'import' || $action === 'conflict' ) {
+ if ( $action === 'import' ) {
+ $comment = wfMessage( 'translate-manage-import-summary' )->inContentLanguage()->plain();
+ } else {
+ $comment = wfMessage( 'translate-manage-conflict-summary' )->inContentLanguage()->plain();
+ $message = self::makeTextFuzzy( $message );
+ }
+
+ return self::doImport( $title, $message, $comment, $user, $editFlags );
+ } elseif ( $action === 'ignore' ) {
+ return array( 'translate-manage-import-ignore', $key );
+ } elseif ( $action === 'fuzzy' && $code !== 'en' &&
+ $code !== $wgTranslateDocumentationLanguageCode
+ ) {
+ $message = self::makeTextFuzzy( $message );
+
+ return self::doImport( $title, $message, $comment, $user, $editFlags );
+ } elseif ( $action === 'fuzzy' && $code == 'en' ) {
+ return self::doFuzzy( $title, $message, $comment, $user, $editFlags );
+ } else {
+ throw new MWException( "Unhandled action $action" );
+ }
+ }
+
+ protected function checkProcessTime() {
+ return wfTimestamp() - $this->time >= $this->processingTime;
+ }
+
+ /**
+ * @throws MWException
+ * @param Title $title
+ * @param $message
+ * @param $summary
+ * @param User $user
+ * @param $editFlags
+ * @return array
+ */
+ public static function doImport( $title, $message, $summary, $user = null, $editFlags = 0 ) {
+ $wikiPage = WikiPage::factory( $title );
+ $content = ContentHandler::makeContent( $message, $title );
+ $status = $wikiPage->doEditContent( $content, $summary, $editFlags, false, $user );
+ $success = $status->isOK();
+
+ if ( $success ) {
+ return array( 'translate-manage-import-ok',
+ wfEscapeWikiText( $title->getPrefixedText() )
+ );
+ } else {
+ $text = "Failed to import new version of page {$title->getPrefixedText()}\n";
+ $text .= "{$status->getWikiText()}";
+ throw new MWException( $text );
+ }
+ }
+
+ /**
+ * @param Title $title
+ * @param $message
+ * @param $comment
+ * @param $user
+ * @param int $editFlags
+ * @return array|String
+ */
+ public static function doFuzzy( $title, $message, $comment, $user, $editFlags = 0 ) {
+ $context = RequestContext::getMain();
+
+ if ( !$context->getUser()->isAllowed( 'translate-manage' ) ) {
+ return $context->msg( 'badaccess-group0' )->text();
+ }
+
+ $dbw = wfGetDB( DB_MASTER );
+
+ // Work on all subpages of base title.
+ $handle = new MessageHandle( $title );
+ $titleText = $handle->getKey();
+
+ $conds = array(
+ 'page_namespace' => $title->getNamespace(),
+ 'page_latest=rev_id',
+ 'rev_text_id=old_id',
+ 'page_title' . $dbw->buildLike( "$titleText/", $dbw->anyString() ),
+ );
+
+ $rows = $dbw->select(
+ array( 'page', 'revision', 'text' ),
+ array( 'page_title', 'page_namespace', 'old_text', 'old_flags' ),
+ $conds,
+ __METHOD__
+ );
+
+ // Edit with fuzzybot if there is no user.
+ if ( !$user ) {
+ $user = FuzzyBot::getUser();
+ }
+
+ // Process all rows.
+ $changed = array();
+ foreach ( $rows as $row ) {
+ global $wgTranslateDocumentationLanguageCode;
+
+ $ttitle = Title::makeTitle( $row->page_namespace, $row->page_title );
+
+ // No fuzzy for English original or documentation language code.
+ if ( $ttitle->getSubpageText() === 'en' ||
+ $ttitle->getSubpageText() === $wgTranslateDocumentationLanguageCode
+ ) {
+ // Use imported text, not database text.
+ $text = $message;
+ } else {
+ $text = Revision::getRevisionText( $row );
+ $text = self::makeTextFuzzy( $text );
+ }
+
+ // Do actual import
+ $changed[] = self::doImport(
+ $ttitle,
+ $text,
+ $comment,
+ $user,
+ $editFlags
+ );
+ }
+
+ // Format return text
+ $text = '';
+ foreach ( $changed as $c ) {
+ $key = array_shift( $c );
+ $text .= "* " . $context->msg( $key, $c )->plain() . "\n";
+ }
+
+ return array( 'translate-manage-import-fuzzy', "\n" . $text );
+ }
+
+ /**
+ * Given a group, message key and language code, creates a title for the
+ * translation page.
+ *
+ * @param MessageGroup $group
+ * @param string $key Message key
+ * @param string $code Language code
+ * @return Title
+ */
+ public static function makeTranslationTitle( $group, $key, $code ) {
+ $ns = $group->getNamespace();
+
+ return Title::makeTitleSafe( $ns, "$key/$code" );
+ }
+
+ /**
+ * Make section elements.
+ *
+ * @param string $legend Legend as raw html.
+ * @param string $type Contents of type class.
+ * @param string $content Contents as raw html.
+ * @param Language $lang The language in which the text is written.
+ * @return string Section element as html.
+ */
+ public static function makeSectionElement( $legend, $type, $content, $lang = null ) {
+ $containerParams = array( 'class' => "mw-tpt-sp-section mw-tpt-sp-section-type-{$type}" );
+ $legendParams = array( 'class' => 'mw-tpt-sp-legend' );
+ $contentParams = array( 'class' => 'mw-tpt-sp-content' );
+ if ( $lang ) {
+ $contentParams['dir'] = wfGetLangObj( $lang )->getDir();
+ $contentParams['lang'] = wfGetLangObj( $lang )->getCode();
+ }
+
+ $output = Html::rawElement( 'div', $containerParams,
+ Html::rawElement( 'div', $legendParams, $legend ) .
+ Html::rawElement( 'div', $contentParams, $content )
+ );
+
+ return $output;
+ }
+
+ /**
+ * Prepends translation with fuzzy tag and ensures there is only one of them.
+ *
+ * @param string $message Message content
+ * @return string Message prefixed with TRANSLATE_FUZZY tag
+ */
+ public static function makeTextFuzzy( $message ) {
+ $message = str_replace( TRANSLATE_FUZZY, '', $message );
+
+ return TRANSLATE_FUZZY . $message;
+ }
+
+ /**
+ * Escape name such that it validates as name and id parameter in html, and
+ * so that we can get it back with WebRequest::getVal(). Especially dot and
+ * spaces are difficult for the latter.
+ * @param string $name
+ * @return string
+ */
+ public static function escapeNameForPHP( $name ) {
+ $replacements = array(
+ "(" => '(OP)',
+ " " => '(SP)',
+ "\t" => '(TAB)',
+ "." => '(DOT)',
+ "'" => '(SQ)',
+ "\"" => '(DQ)',
+ "%" => '(PC)',
+ "&" => '(AMP)',
+ );
+
+ /* How nice of you PHP. No way to split array into keys and values in one
+ * function or have str_replace which takes one array? */
+
+ return str_replace( array_keys( $replacements ), array_values( $replacements ), $name );
+ }
+}
diff --git a/MLEB/Translate/utils/RcFilter.php b/MLEB/Translate/utils/RcFilter.php
new file mode 100644
index 00000000..8dbda197
--- /dev/null
+++ b/MLEB/Translate/utils/RcFilter.php
@@ -0,0 +1,91 @@
+<?php
+/**
+ * Contains class with filter to Special:RecentChanges to enable additional
+ * filtering.
+ *
+ * @file
+ * @author Niklas Laxström
+ * @copyright Copyright © 2010, Niklas Laxström
+ * @license GPL-2.0+
+ */
+
+/**
+ * Adds a new filter to Special:RecentChanges which makes it possible to filter
+ * translations away or show them only.
+ */
+class TranslateRcFilter {
+ /**
+ * Hooks SpecialRecentChangesQuery. See the hook documentation for
+ * documentation of the function parameters.
+ *
+ * Appends SQL filter conditions into $conds.
+ * @param array $conds
+ * @param array|string $tables
+ * @param array $join_conds
+ * @param FormOptions $opts
+ * @return bool true
+ */
+ public static function translationFilter( &$conds, &$tables, &$join_conds, $opts ) {
+ global $wgTranslateMessageNamespaces, $wgTranslateRcFilterDefault;
+
+ $request = RequestContext::getMain()->getRequest();
+ $translations = $request->getVal( 'translations', $wgTranslateRcFilterDefault );
+ $opts->add( 'translations', $wgTranslateRcFilterDefault );
+ $opts->setValue( 'translations', $translations );
+
+ $dbr = wfGetDB( DB_SLAVE );
+
+ $namespaces = array();
+
+ foreach ( $wgTranslateMessageNamespaces as $index ) {
+ $namespaces[] = $index;
+ $namespaces[] = $index + 1; // Talk too
+ }
+
+ if ( $translations === 'only' ) {
+ $conds[] = 'rc_namespace IN (' . $dbr->makeList( $namespaces ) . ')';
+ $conds[] = 'rc_title like \'%%/%%\'';
+ } elseif ( $translations === 'filter' ) {
+ $conds[] = 'rc_namespace NOT IN (' . $dbr->makeList( $namespaces ) . ')';
+ } elseif ( $translations === 'site' ) {
+ $conds[] = 'rc_namespace IN (' . $dbr->makeList( $namespaces ) . ')';
+ $conds[] = 'rc_title not like \'%%/%%\'';
+ }
+
+ return true;
+ }
+
+ /**
+ * Hooks SpecialRecentChangesPanel. See the hook documentation for
+ * documentation of the function parameters.
+ *
+ * Adds a HTMl selector into $items
+ * @param $items
+ * @param FormOptions $opts
+ * @return bool true
+ */
+ public static function translationFilterForm( &$items, $opts ) {
+ $opts->consumeValue( 'translations' );
+ $default = $opts->getValue( 'translations' );
+
+ $label = Xml::label(
+ wfMessage( 'translate-rc-translation-filter' )->text(),
+ 'mw-translation-filter'
+ );
+ $select = new XmlSelect( 'translations', 'mw-translation-filter', $default );
+ $select->addOption(
+ wfMessage( 'translate-rc-translation-filter-no' )->text(),
+ 'noaction'
+ );
+ $select->addOption( wfMessage( 'translate-rc-translation-filter-only' )->text(), 'only' );
+ $select->addOption(
+ wfMessage( 'translate-rc-translation-filter-filter' )->text(),
+ 'filter'
+ );
+ $select->addOption( wfMessage( 'translate-rc-translation-filter-site' )->text(), 'site' );
+
+ $items['translations'] = array( $label, $select->getHTML() );
+
+ return true;
+ }
+}
diff --git a/MLEB/Translate/utils/ResourceLoader.php b/MLEB/Translate/utils/ResourceLoader.php
new file mode 100644
index 00000000..9c9e1716
--- /dev/null
+++ b/MLEB/Translate/utils/ResourceLoader.php
@@ -0,0 +1,29 @@
+<?php
+/**
+ * Stuff for handling configuration files in PHP format.
+ * @file
+ * @author Niklas Laxström
+ * @copyright Copyright © 2010 Niklas Laxström
+ * @license GPL-2.0+
+ */
+
+/**
+ * Stuff for handling configuration files in PHP format.
+ */
+class PHPVariableLoader {
+ /**
+ * Returns a global variable from PHP file by executing the file.
+ * @param $_filename \string Path to the file.
+ * @param $_variable \string Name of the variable.
+ * @return \mixed The variable contents or null.
+ */
+ public static function loadVariableFromPHPFile( $_filename, $_variable ) {
+ if ( !file_exists( $_filename ) ) {
+ return null;
+ } else {
+ require $_filename;
+
+ return isset( $$_variable ) ? $$_variable : null;
+ }
+ }
+}
diff --git a/MLEB/Translate/utils/RevTag.php b/MLEB/Translate/utils/RevTag.php
new file mode 100644
index 00000000..c918e578
--- /dev/null
+++ b/MLEB/Translate/utils/RevTag.php
@@ -0,0 +1,102 @@
+<?php
+/**
+ * Code related to revtag database table
+ *
+ * @file
+ * @author Niklas Laxström
+ * @copyright Copyright © 2011 Niklas Laxström
+ * @license GPL-2.0+
+ */
+
+/**
+ * Abstraction for revtag table to handle new and old schemas during migration.
+ */
+class RevTag {
+ protected static $schema = false;
+
+ /**
+ * Determines the schema version.
+ *
+ * @return int
+ */
+ public static function checkSchema() {
+ if ( self::$schema !== false ) {
+ return self::$schema;
+ } else {
+ $dbr = wfGetDB( DB_SLAVE );
+ if ( $dbr->tableExists( 'revtag_type' ) ) {
+ return self::$schema = 1;
+ } else {
+ return self::$schema = 2;
+ }
+ }
+ }
+
+ /**
+ * Returns value suitable for rt_type field.
+ * @param string $tag Tag name
+ * @throws MWException
+ * @return int|string
+ */
+ public static function getType( $tag ) {
+ if ( self::checkSchema() === 2 ) {
+ return $tag;
+ }
+
+ $tags = self::loadTags();
+
+ if ( isset( $tags[$tag] ) ) {
+ return $tags[$tag];
+ } else {
+ $text = "Unknown revtag $tag. Known are " . implode( ', ', array_keys( $tags ) );
+ throw new MWException( $text );
+ }
+ }
+
+ /**
+ * Converts rt_type field back to the tag name.
+ * @param $tag int rt_type value
+ * @throws MWException
+ * @return string
+ */
+ public static function typeToTag( $tag ) {
+ if ( self::checkSchema() === 2 ) {
+ return $tag;
+ }
+
+ $tags = self::loadTags();
+ $tags = array_flip( $tags );
+
+ if ( isset( $tags[$tag] ) ) {
+ return $tags[$tag];
+ } else {
+ $text = "Unknown revtag type $tag. Known are " . implode( ', ', array_keys( $tags ) );
+ throw new MWException( $text );
+ }
+ }
+
+ /**
+ * Loads the list of tags from database using the old schema
+ * @return array tag names => tag id
+ */
+ protected static function loadTags() {
+ static $tags = null;
+ if ( $tags === null ) {
+ $tags = array();
+
+ $dbr = wfGetDB( DB_SLAVE );
+ $res = $dbr->select(
+ 'revtag_type',
+ array( 'rtt_name', 'rtt_id' ),
+ array(),
+ __METHOD__
+ );
+
+ foreach ( $res as $row ) {
+ $tags[$row->rtt_name] = $row->rtt_id;
+ }
+ }
+
+ return $tags;
+ }
+}
diff --git a/MLEB/Translate/utils/StatsBar.php b/MLEB/Translate/utils/StatsBar.php
new file mode 100644
index 00000000..39bd66a0
--- /dev/null
+++ b/MLEB/Translate/utils/StatsBar.php
@@ -0,0 +1,88 @@
+<?php
+/**
+ * Compact stats.
+ *
+ * @file
+ * @author Niklas Laxström
+ * @copyright Copyright © 2012-2013 Niklas Laxström
+ * @license GPL-2.0+
+ */
+
+/**
+ * Compact, colorful stats.
+ * @since 2012-11-30
+ */
+class StatsBar {
+ /**
+ * @see MessageGroupStats
+ * @var array
+ */
+ protected $stats;
+
+ /// @var string Message group id
+ protected $group;
+
+ /// @var string Language
+ protected $language;
+
+ public static function getNew( $group, $language, array $stats = null ) {
+ $self = new self();
+ $self->group = $group;
+ $self->language = $language;
+
+ if ( is_array( $stats ) ) {
+ $self->stats = $stats;
+ } else {
+ $self->stats = MessageGroupStats::forItem( $group, $language );
+ }
+
+ return $self;
+ }
+
+ public function getHtml( IContextSource $context ) {
+ $context->getOutput()->addModules( 'ext.translate.statsbar' );
+
+ $total = $this->stats[MessageGroupStats::TOTAL];
+ $proofread = $this->stats[MessageGroupStats::PROOFREAD];
+ $translated = $this->stats[MessageGroupStats::TRANSLATED];
+ $fuzzy = $this->stats[MessageGroupStats::FUZZY];
+
+ if ( !$total ) {
+ $untranslated = null;
+ $wproofread = $wtranslated = $wfuzzy = $wuntranslated = 0;
+ } else {
+ // Proofread is subset of translated
+ $untranslated = $total - $translated - $fuzzy;
+
+ $wproofread = round( 100 * $proofread / $total, 2 );
+ $wtranslated = round( 100 * ( $translated - $proofread ) / $total, 2 );
+ $wfuzzy = round( 100 * $fuzzy / $total, 2 );
+ $wuntranslated = round( 100 - $wproofread - $wtranslated - $wfuzzy, 2 );
+ }
+
+ return Html::rawElement( 'div', array(
+ 'class' => 'tux-statsbar',
+ 'data-total' => $total,
+ 'data-group' => $this->group,
+ 'data-language' => $this->language,
+ ),
+ Html::element( 'span', array(
+ 'class' => 'tux-proofread',
+ 'style' => "width: $wproofread%",
+ 'data-proofread' => $proofread,
+ ) ) . Html::element( 'span', array(
+ 'class' => 'tux-translated',
+ 'style' => "width: $wtranslated%",
+ 'data-translated' => $translated,
+ ) ) . Html::element( 'span', array(
+ 'class' => 'tux-fuzzy',
+ 'style' => "width: $wfuzzy%",
+ 'data-fuzzy' => $fuzzy,
+ ) ) . Html::element( 'span', array(
+ 'class' => 'tux-untranslated',
+ 'style' => "width: $wuntranslated%",
+ 'data-untranslated' => $untranslated,
+ ) )
+ );
+ }
+}
diff --git a/MLEB/Translate/utils/StatsTable.php b/MLEB/Translate/utils/StatsTable.php
new file mode 100644
index 00000000..52fd4cae
--- /dev/null
+++ b/MLEB/Translate/utils/StatsTable.php
@@ -0,0 +1,344 @@
+<?php
+/**
+ * Contains logic for special page Special:LanguageStats.
+ *
+ * @file
+ * @author Siebrand Mazeland
+ * @author Niklas Laxström
+ * @copyright Copyright © 2008-2013 Siebrand Mazeland, Niklas Laxström
+ * @license GPL-2.0+
+ */
+
+/**
+ * Implements includable special page Special:LanguageStats which provides
+ * translation statistics for all defined message groups.
+ *
+ * Loosely based on the statistics code in phase3/maintenance/language
+ *
+ * Use {{Special:LanguageStats/nl/1}} to show for 'nl' and suppres completely
+ * translated groups.
+ *
+ * @ingroup Stats
+ */
+class StatsTable {
+ /// @var Language
+ protected $lang;
+ /// @var SpecialPage
+ protected $translate;
+ /// @var string
+ protected $mainColumnHeader;
+ /// @var array
+ protected $extraColumns = array();
+
+ public function __construct() {
+ $this->lang = RequestContext::getMain()->getLanguage();
+ $this->translate = SpecialPage::getTitleFor( 'Translate' );
+ }
+
+ /**
+ * Statistics table element (heading or regular cell)
+ *
+ * @param $in \string Element contents.
+ * @param $bgcolor \string Backround color in ABABAB format.
+ * @param $sort \string Value used for sorting.
+ * @return \string Html td element.
+ */
+ public function element( $in, $bgcolor = '', $sort = '' ) {
+ $attributes = array();
+
+ if ( $sort ) {
+ $attributes['data-sort-value'] = $sort;
+ }
+
+ if ( $bgcolor ) {
+ $attributes['style'] = "background-color: #" . $bgcolor;
+ $attributes['class'] = 'hover-color';
+ }
+
+ $element = Html::element( 'td', $attributes, $in );
+
+ return $element;
+ }
+
+ public function getBackgroundColor( $subset, $total, $fuzzy = false ) {
+ wfSuppressWarnings();
+ $v = round( 255 * $subset / $total );
+ wfRestoreWarnings();
+
+ if ( $fuzzy ) {
+ // Weigh fuzzy with factor 20.
+ $v = $v * 20;
+
+ if ( $v > 255 ) {
+ $v = 255;
+ }
+
+ $v = 255 - $v;
+ }
+
+ if ( $v < 128 ) {
+ // Red to Yellow
+ $red = 'FF';
+ $green = sprintf( '%02X', 2 * $v );
+ } else {
+ // Yellow to Green
+ $red = sprintf( '%02X', 2 * ( 255 - $v ) );
+ $green = 'FF';
+ }
+ $blue = '00';
+
+ return $red . $green . $blue;
+ }
+
+ public function getMainColumnHeader() {
+ return $this->mainColumnHeader;
+ }
+
+ public function setMainColumnHeader( Message $msg ) {
+ $this->mainColumnHeader = $this->createColumnHeader( $msg );
+ }
+
+ public function createColumnHeader( Message $msg ) {
+ return Html::element( 'th', array(), $msg->text() );
+ }
+
+ public function addExtraColumn( Message $column ) {
+ $this->extraColumns[] = $column;
+ }
+
+ public function getOtherColumnHeaders() {
+ return array_merge( array(
+ wfMessage( 'translate-total' ),
+ wfMessage( 'translate-untranslated' ),
+ wfMessage( 'translate-percentage-complete' ),
+ wfMessage( 'translate-percentage-fuzzy' ),
+ ), $this->extraColumns );
+ }
+
+ public function createHeader() {
+ // Create table header
+ $out = Html::openElement(
+ 'table',
+ array( 'class' => "statstable wikitable mw-sp-translate-table" )
+ );
+
+ $out .= "\n\t" . Html::openElement( 'thead' );
+ $out .= "\n\t" . Html::openElement( 'tr' );
+
+ $out .= "\n\t\t" . $this->getMainColumnHeader();
+ foreach ( $this->getOtherColumnHeaders() as $label ) {
+ $out .= "\n\t\t" . $this->createColumnHeader( $label );
+ }
+ $out .= "\n\t" . Html::closeElement( 'tr' );
+ $out .= "\n\t" . Html::closeElement( 'thead' );
+ $out .= "\n\t" . Html::openElement( 'tbody' );
+
+ return $out;
+ }
+
+ /**
+ * Makes a row with aggregate numbers.
+ * @param Message $message
+ * @param array $stats ( total, translate, fuzzy )
+ * @return string Html
+ */
+ public function makeTotalRow( Message $message, $stats ) {
+ $out = "\t" . Html::openElement( 'tr' );
+ $out .= "\n\t\t" . Html::element( 'td', array(), $message->text() );
+ $out .= $this->makeNumberColumns( $stats );
+ $out .= "\n\t" . Xml::closeElement( 'tr' ) . "\n";
+
+ return $out;
+ }
+
+ /**
+ * Makes partial row from completion numbers
+ * @param array $stats
+ * @return string Html
+ */
+ public function makeNumberColumns( $stats ) {
+ $total = $stats[MessageGroupStats::TOTAL];
+ $translated = $stats[MessageGroupStats::TRANSLATED];
+ $fuzzy = $stats[MessageGroupStats::FUZZY];
+
+ if ( $total === null ) {
+ $na = "\n\t\t" . Html::element( 'td', array( 'data-sort-value' => -1 ), '...' );
+ $nap = "\n\t\t" . $this->element( '...', 'AFAFAF', -1 );
+ $out = $na . $na . $nap . $nap;
+
+ return $out;
+ }
+
+ $out = "\n\t\t" . Html::element( 'td',
+ array( 'data-sort-value' => $total ),
+ $this->lang->formatNum( $total ) );
+
+ $out .= "\n\t\t" . Html::element( 'td',
+ array( 'data-sort-value' => $total - $translated ),
+ $this->lang->formatNum( $total - $translated ) );
+
+ if ( $total === 0 ) {
+ $transRatio = 0;
+ $fuzzyRatio = 0;
+ } else {
+ $transRatio = $translated / $total;
+ $fuzzyRatio = $fuzzy / $total;
+ }
+
+ $out .= "\n\t\t" . $this->element( $this->formatPercentage( $transRatio, 'floor' ),
+ $this->getBackgroundColor( $translated, $total ),
+ sprintf( '%1.5f', $transRatio ) );
+
+ $out .= "\n\t\t" . $this->element( $this->formatPercentage( $fuzzyRatio, 'ceil' ),
+ $this->getBackgroundColor( $fuzzy, $total, true ),
+ sprintf( '%1.5f', $fuzzyRatio ) );
+
+ return $out;
+ }
+
+ /**
+ * Makes a nice print from plain float.
+ * @param $num float
+ * @param $to string floor or ceil
+ * @return string Plain text
+ */
+ public function formatPercentage( $num, $to = 'floor' ) {
+ $num = $to === 'floor' ? floor( 100 * $num ) : ceil( 100 * $num );
+ $fmt = $this->lang->formatNum( $num );
+
+ return wfMessage( 'percent', $fmt )->text();
+ }
+
+ /**
+ * Gets the name of group with some extra formatting.
+ * @param $group MessageGroup
+ * @return string Html
+ */
+ public function getGroupLabel( MessageGroup $group ) {
+ $groupLabel = htmlspecialchars( $group->getLabel() );
+
+ // Bold for meta groups.
+ if ( $group->isMeta() ) {
+ $groupLabel = Html::rawElement( 'b', array(), $groupLabel );
+ }
+
+ return $groupLabel;
+ }
+
+ /**
+ * Gets the name of group linked to translation tool.
+ * @param $group MessageGroup
+ * @param $code string Language code
+ * @param $params array Any extra query parameters.
+ * @return string Html
+ */
+ public function makeGroupLink( MessageGroup $group, $code, $params ) {
+ $queryParameters = $params + array(
+ 'group' => $group->getId(),
+ 'language' => $code
+ );
+
+ $attributes = array(
+ 'title' => $this->getGroupDescription( $group )
+ );
+
+ $translateGroupLink = Linker::link(
+ $this->translate, $this->getGroupLabel( $group ), $attributes, $queryParameters
+ );
+
+ return $translateGroupLink;
+ }
+
+ /**
+ * Gets the description of a group. This is a bit slow thing to do for
+ * thousand+ groups, so some caching is involved.
+ * @param $group MessageGroup
+ * @return string Plain text
+ */
+ public function getGroupDescription( MessageGroup $group ) {
+ $code = $this->lang->getCode();
+
+ $cache = wfGetCache( CACHE_ANYTHING );
+ $key = wfMemckey( "translate-groupdesc-$code-" . $group->getId() );
+ $desc = $cache->get( $key );
+
+ if ( is_string( $desc ) ) {
+ return $desc;
+ }
+
+ $realFunction = array( 'MessageCache', 'singleton' );
+
+ if ( is_callable( $realFunction ) ) {
+ $mc = MessageCache::singleton();
+ } else {
+ global $wgMessageCache;
+
+ $mc = $wgMessageCache;
+ }
+
+ $desc = $mc->transform( $group->getDescription(), true, $this->lang );
+ $cache->set( $key, $desc );
+
+ return $desc;
+ }
+
+ /**
+ * Check whether translations in given group in given language
+ * has been disabled.
+ * @param $groupId string Message group id
+ * @param $code string Language code
+ * @return bool
+ */
+ public function isBlacklisted( $groupId, $code ) {
+ global $wgTranslateBlacklist;
+
+ $blacklisted = null;
+
+ $checks = array(
+ $groupId,
+ strtok( $groupId, '-' ),
+ '*'
+ );
+
+ foreach ( $checks as $check ) {
+ if ( isset( $wgTranslateBlacklist[$check] ) && isset( $wgTranslateBlacklist[$check][$code] ) ) {
+ $blacklisted = $wgTranslateBlacklist[$check][$code];
+ }
+
+ if ( $blacklisted !== null ) {
+ break;
+ }
+ }
+
+ $group = MessageGroups::getGroup( $groupId );
+ $languages = $group->getTranslatableLanguages();
+ if ( $languages !== null && !isset( $languages[$code] ) ) {
+ $blacklisted = true;
+ }
+
+ $include = wfRunHooks( 'Translate:MessageGroupStats:isIncluded', array( $groupId, $code ) );
+ if ( !$include ) {
+ $blacklisted = true;
+ }
+
+ return $blacklisted;
+ }
+
+ /**
+ * Used to circumvent ugly tooltips when newlines are used in the
+ * message content ("x\ny" becomes "x y").
+ * @param $text
+ * @return string
+ */
+ public static function formatTooltip( $text ) {
+ $wordSeparator = wfMessage( 'word-separator' )->text();
+
+ $text = strtr( $text, array(
+ "\n" => $wordSeparator,
+ "\r" => $wordSeparator,
+ "\t" => $wordSeparator,
+ ) );
+
+ return $text;
+ }
+}
diff --git a/MLEB/Translate/utils/ToolBox.php b/MLEB/Translate/utils/ToolBox.php
new file mode 100644
index 00000000..ba04013e
--- /dev/null
+++ b/MLEB/Translate/utils/ToolBox.php
@@ -0,0 +1,41 @@
+<?php
+/**
+ * Classes for adding extension specific toolbox menu items.
+ *
+ * @file
+ * @author Siebrand Mazeland
+ * @author Niklas Laxström
+ * @copyright Copyright © 2008-2010, Siebrand Mazeland, Niklas Laxström
+ * @license GPL-2.0+
+ */
+
+/**
+ * Adds extension specific context aware toolbox menu items.
+ */
+class TranslateToolbox {
+ /**
+ * Adds link in toolbox to Special:Prefixindex to show all other
+ * available translations for a message. Only shown when it
+ * actually is a translatable/translated message.
+ *
+ * @param $quickTemplate QuickTemplate
+ *
+ * @return bool
+ */
+ static function toolboxAllTranslations( &$quickTemplate ) {
+ $title = $quickTemplate->getSkin()->getTitle();
+ $handle = new MessageHandle( $title );
+ if ( $handle->isValid() ) {
+ $message = $title->getNsText() . ':' . $handle->getKey();
+ $desc = wfMessage( 'translate-sidebar-alltrans' )->text();
+ $url = htmlspecialchars( SpecialPage::getTitleFor( 'Translations' )
+ ->getLocalURL( array ('message' => $message ) ) );
+
+ // Add the actual toolbox entry.
+ // Add newlines and tabs for nicer HTML output.
+ echo "\n\t\t\t\t<li id=\"t-alltrans\"><a href=\"$url\">$desc</a></li>\n";
+ }
+
+ return true;
+ }
+}
diff --git a/MLEB/Translate/utils/TranslateLogFormatter.php b/MLEB/Translate/utils/TranslateLogFormatter.php
new file mode 100644
index 00000000..019d6c5e
--- /dev/null
+++ b/MLEB/Translate/utils/TranslateLogFormatter.php
@@ -0,0 +1,79 @@
+<?php
+/**
+ * Class for formatting Translate logs.
+ *
+ * @file
+ * @author Niklas Laxström
+ * @copyright Copyright © 2013, Niklas Laxström
+ * @license GPL-2.0+
+ */
+
+/**
+ * Class for formatting Translate logs.
+ */
+class TranslateLogFormatter extends LogFormatter {
+
+ public function getMessageParameters() {
+ $params = parent::getMessageParameters();
+
+ $type = $this->entry->getFullType();
+
+ if ( $type === 'translationreview/message' ) {
+ $targetPage = $this->makePageLink(
+ $this->entry->getTarget(),
+ array( 'oldid' => $params[3] )
+ );
+
+ $params[2] = Message::rawParam( $targetPage );
+ } elseif ( $type === 'translationreview/group' ) {
+ /*
+ * - 3: language code
+ * - 4: label of the message group
+ * - 5: old state
+ * - 6: new state
+ */
+
+ $uiLanguage = $this->context->getLanguage();
+ $language = $params[3];
+
+ $targetPage = $this->makePageLinkWithText(
+ $this->entry->getTarget(),
+ $params[4],
+ array( 'language' => $language )
+ );
+
+ $params[2] = Message::rawParam( $targetPage );
+ $params[3] = TranslateUtils::getLanguageName( $language, $uiLanguage->getCode() );
+ $params[5] = $this->formatStateMessage( $params[5] );
+ $params[6] = $this->formatStateMessage( $params[6] );
+ } elseif ( $type === 'translatorsandbox/rejected' ) {
+ // No point linking to the user page which cannot have existed
+ $params[2] = $this->entry->getTarget()->getText();
+ } elseif ( $type === 'translatorsandbox/promoted' ) {
+ // Gender for the target
+ $params[3] = User::newFromId( $params[3] )->getName();
+ }
+
+ return $params;
+ }
+
+ protected function formatStateMessage( $value ) {
+ $message = $this->msg( "translate-workflow-state-$value" );
+
+ return $message->isBlank() ? $value : $message->text();
+ }
+
+ protected function makePageLinkWithText( Title $title = null, $text, $parameters = array() ) {
+ if ( !$this->plaintext ) {
+ $link = Linker::link( $title, htmlspecialchars( $text ), array(), $parameters );
+ } else {
+ $target = '***';
+ if ( $title instanceof Title ) {
+ $target = $title->getPrefixedText();
+ }
+ $link = "[[$target|$text]]";
+ }
+
+ return $link;
+ }
+}
diff --git a/MLEB/Translate/utils/TranslateMetadata.php b/MLEB/Translate/utils/TranslateMetadata.php
new file mode 100644
index 00000000..540128ce
--- /dev/null
+++ b/MLEB/Translate/utils/TranslateMetadata.php
@@ -0,0 +1,110 @@
+<?php
+/**
+ * Contains class which offers functionality for reading and updating Translate group
+ * related metadata
+ *
+ * @file
+ * @author Niklas Laxström
+ * @author Santhosh Thottingal
+ * @copyright Copyright © 2012-2013, Niklas Laxström, Santhosh Thottingal
+ * @license GPL-2.0+
+ */
+
+class TranslateMetadata {
+ protected static $cache = null;
+
+ /**
+ * Get a metadata value for the given group and key.
+ * @param $group string The group name
+ * @param $key string Metadata key
+ * @return String
+ */
+ public static function get( $group, $key ) {
+ if ( self::$cache === null ) {
+ $dbr = wfGetDB( DB_SLAVE );
+ $res = $dbr->select( 'translate_metadata', '*', array(), __METHOD__ );
+ foreach ( $res as $row ) {
+ self::$cache[$row->tmd_group][$row->tmd_key] = $row->tmd_value;
+ }
+ }
+
+ if ( isset( self::$cache[$group][$key] ) ) {
+ return self::$cache[$group][$key];
+ }
+
+ return false;
+ }
+
+ /**
+ * Set a metadata value for the given group and metadata key. Updates the
+ * value if already existing.
+ * @param $group string The group id
+ * @param $key string Metadata key
+ * @param $value string Metadata value
+ */
+ public static function set( $group, $key, $value ) {
+ $dbw = wfGetDB( DB_MASTER );
+ $data = array( 'tmd_group' => $group, 'tmd_key' => $key, 'tmd_value' => $value );
+ if ( $value === false ) {
+ unset( $data['tmd_value'] );
+ $dbw->delete( 'translate_metadata', $data );
+ } else {
+ $dbw->replace(
+ 'translate_metadata',
+ array( array( 'tmd_group', 'tmd_key' ) ),
+ $data,
+ __METHOD__
+ );
+ }
+
+ self::$cache = null;
+ }
+
+ /**
+ * Wrapper for getting subgroups.
+ * @param string $groupId
+ * @return array|String
+ * @since 2012-05-09
+ * return array|false
+ */
+ public static function getSubgroups( $groupId ) {
+ $groups = self::get( $groupId, 'subgroups' );
+ if ( $groups !== false ) {
+ if ( strpos( $groups, '|' ) !== false ) {
+ $groups = explode( '|', $groups );
+ } else {
+ $groups = array_map( 'trim', explode( ',', $groups ) );
+ }
+
+ foreach ( $groups as $index => $id ) {
+ if ( trim( $id ) === '' ) {
+ unset( $groups[$index] );
+ }
+ }
+ }
+
+ return $groups;
+ }
+
+ /**
+ * Wrapper for setting subgroups.
+ * @param string $groupId
+ * @param array $subgroupIds
+ * @since 2012-05-09
+ */
+ public static function setSubgroups( $groupId, $subgroupIds ) {
+ $subgroups = implode( '|', $subgroupIds );
+ self::set( $groupId, 'subgroups', $subgroups );
+ }
+
+ /**
+ * Wrapper for deleting one wiki aggregate group at once.
+ * @param string $groupId
+ * @since 2012-05-09
+ */
+ public static function deleteGroup( $groupId ) {
+ $dbw = wfGetDB( DB_MASTER );
+ $conds = array( 'tmd_group' => $groupId );
+ $dbw->delete( 'translate_metadata', $conds );
+ }
+}
diff --git a/MLEB/Translate/utils/TranslateSandbox.php b/MLEB/Translate/utils/TranslateSandbox.php
new file mode 100644
index 00000000..12d3c0d6
--- /dev/null
+++ b/MLEB/Translate/utils/TranslateSandbox.php
@@ -0,0 +1,255 @@
+<?php
+/**
+ * Utilities for the sandbox feature of Translate.
+ *
+ * @file
+ * @author Niklas Laxström
+ * @license GPL-2.0+
+ */
+
+/**
+ * Utility class for the sandbox feature of Translate.
+ */
+class TranslateSandbox {
+ /**
+ * Adds a new user without doing much validation.
+ * @param string $name User name.
+ * @param string $email Email address.
+ * @param string $password User provided password.
+ * @return User
+ * @throws MWException
+ */
+ public static function addUser( $name, $email, $password ) {
+ $user = User::newFromName( $name, 'creatable' );
+ if ( !$user instanceof User ) {
+ throw new MWException( "Invalid user name" );
+ }
+
+ $user->setEmail( $email );
+ $user->setPassword( $password );
+ $status = $user->addToDatabase();
+
+ if ( !$status->isOK() ) {
+ throw new MWException( $status->getWikiText() );
+ }
+
+ // Need to have an id first
+ $user->addGroup( 'translate-sandboxed' );
+ $user->clearInstanceCache( 'name' );
+ $user->sendConfirmationMail();
+
+ return $user;
+ }
+
+ /**
+ * Deletes a sandboxed user without doing much validation.
+ *
+ * @param User $user
+ * @param string $force If set to 'force' will skip the little validation we have.
+ * @throws MWException
+ */
+ public static function deleteUser( User $user, $force = '' ) {
+ $uid = $user->getId();
+
+ if ( $force !== 'force' && !self::isSandboxed( $user ) ) {
+ throw new MWException( "Not a sandboxed user" );
+ }
+
+ // Delete from database
+ $dbw = wfGetDB( DB_MASTER );
+ $dbw->delete( 'user', array( 'user_id' => $uid ), __METHOD__ );
+ $dbw->delete( 'user_groups', array( 'ug_user' => $uid ), __METHOD__ );
+
+ // If someone tries to access still object still, they will get anon user
+ // data.
+ $user->clearInstanceCache( 'defaults' );
+
+ // Nobody should access the user by id anymore, but in case they do, purge
+ // the cache so they wont get stale data
+ // @todo why the bunny is this private?!
+ // $user->clearSharedCache();
+ global $wgMemc;
+ $wgMemc->delete( wfMemcKey( 'user', 'id', $uid ) );
+
+ // In case we create an user with same name as was deleted during the same
+ // request, we must also reset this cache or the User class will try to load
+ // stuff for the old id, which is no longer present since we just deleted
+ // the cache above. But it would have the side effect or overwriting all
+ // member variables with null data. This used to manifest as a bug where
+ // inserting a new user fails because the mName properpty is set to null,
+ // which is then converted as the ip of the current user, and trying to
+ // add that twice results in a name conflict. It was fun to debug.
+ User::resetIdByNameCache();
+ }
+
+ /**
+ * Get all sandboxed users.
+ * @return UserArray List of users.
+ */
+ public static function getUsers() {
+ $dbw = wfGetDB( DB_MASTER );
+ $tables = array( 'user', 'user_groups' );
+ $fields = User::selectFields();
+ $conds = array(
+ 'ug_group' => 'translate-sandboxed',
+ 'ug_user = user_id',
+ );
+
+ $res = $dbw->select( $tables, $fields, $conds, __METHOD__ );
+
+ return UserArray::newFromResult( $res );
+ }
+
+ /**
+ * Removes the user from the sandbox.
+ * @param User $user
+ * @throws MWException
+ */
+ public static function promoteUser( User $user ) {
+ global $wgTranslateSandboxPromotedGroup;
+
+ if ( !self::isSandboxed( $user ) ) {
+ throw new MWException( "Not a sandboxed user" );
+ }
+
+ $user->removeGroup( 'translate-sandboxed' );
+ if ( $wgTranslateSandboxPromotedGroup ) {
+ $user->addGroup( $wgTranslateSandboxPromotedGroup );
+ }
+
+ $user->setOption( 'translate-sandbox-reminders', '' );
+ $user->saveSettings();
+ }
+
+ /**
+ * Sends a reminder to the user.
+ * @param User $sender
+ * @param User $target
+ * @param string $type 'reminder' or 'promotion'
+ * @throws MWException
+ * @since 2013.12
+ */
+ public static function sendEmail( User $sender, User $target, $type ) {
+ global $wgNoReplyAddress;
+
+ $targetLang = $target->getOption( 'language' );
+
+ switch ( $type ) {
+ case 'reminder':
+ if ( !self::isSandboxed( $target ) ) {
+ throw new MWException( 'Not a sandboxed user' );
+ }
+
+ $subjectMsg = 'tsb-reminder-title-generic';
+ $bodyMsg = 'tsb-reminder-content-generic';
+ $targetSpecialPage = 'TranslationStash';
+
+ break;
+ case 'promotion':
+ $subjectMsg = 'tsb-email-promoted-subject';
+ $bodyMsg = 'tsb-email-promoted-body';
+ $targetSpecialPage = 'Translate';
+
+ break;
+ case 'rejection':
+ $subjectMsg = 'tsb-email-rejected-subject';
+ $bodyMsg = 'tsb-email-rejected-body';
+ $targetSpecialPage = 'TwnMainPage';
+
+ break;
+ default:
+ throw new MWException( "'$type' is an invalid type of translate sandbox email" );
+ }
+
+ $subject = wfMessage( $subjectMsg )->inLanguage( $targetLang )->text();
+ $body = wfMessage(
+ $bodyMsg,
+ $target->getName(),
+ SpecialPage::getTitleFor( $targetSpecialPage )->getCanonicalUrl(),
+ $sender->getName()
+ )->inLanguage( $targetLang )->text();
+
+ $params = array(
+ 'user' => $target->getId(),
+ 'to' => new MailAddress( $target ),
+ 'from' => new MailAddress( $sender ),
+ 'replyto' => new MailAddress( $wgNoReplyAddress ),
+ 'subj' => $subject,
+ 'body' => $body,
+ 'emailType' => $type,
+ );
+
+ JobQueueGroup::singleton()->push( TranslateSandboxEmailJob::newJob( $params ) );
+ }
+
+ /**
+ * Shortcut for checking if given user is in the sandbox.
+ * @param User $user
+ * @return bool
+ * @since 2013.06
+ */
+ public static function isSandboxed( User $user ) {
+ if ( in_array( 'translate-sandboxed', $user->getGroups(), true ) ) {
+ return true;
+ }
+
+ return false;
+ }
+
+ /// Hook: UserGetRights
+ public static function enforcePermissions( User $user, array &$rights ) {
+ global $wgTranslateUseSandbox;
+
+ if ( !$wgTranslateUseSandbox ) {
+ return true;
+ }
+
+ if ( !self::isSandboxed( $user ) ) {
+ return true;
+ }
+
+ $rights = array(
+ 'editmyoptions',
+ 'editmyprivateinfo',
+ 'read',
+ 'readapi',
+ 'translate-sandboxaction',
+ 'viewmyprivateinfo',
+ 'writeapi',
+ );
+
+ // Do not let other hooks add more actions
+ return false;
+ }
+
+ /// Hook: onGetPreferences
+ public static function onGetPreferences( $user, &$preferences ) {
+ $preferences['translate-sandbox'] = $preferences['translate-sandbox-reminders'] =
+ array( 'type' => 'api' );
+
+ return true;
+ }
+
+ /**
+ * Whitelisting for certain API modules. See also enforcePermissions.
+ * Hook: ApiCheckCanExecute
+ */
+ public static function onApiCheckCanExecute( ApiBase $module, User $user, &$message ) {
+ $whitelist = array(
+ // Obviously this is needed to get out of the sandbox
+ 'ApiTranslationStash',
+ // Used by UniversalLanguageSelector for example
+ 'ApiOptions'
+ );
+
+ if ( TranslateSandbox::isSandboxed( $user ) ) {
+ $class = get_class( $module );
+ if ( $module->isWriteMode() && !in_array( $class, $whitelist, true ) ) {
+ $message = 'writerequired';
+ return false;
+ }
+ }
+
+ return true;
+ }
+}
diff --git a/MLEB/Translate/utils/TranslateSandboxEmailJob.php b/MLEB/Translate/utils/TranslateSandboxEmailJob.php
new file mode 100644
index 00000000..1496bfda
--- /dev/null
+++ b/MLEB/Translate/utils/TranslateSandboxEmailJob.php
@@ -0,0 +1,38 @@
+<?php
+
+class TranslateSandboxEmailJob extends Job {
+ public static function newJob( array $params ) {
+ return new self( Title::newMainPage(), $params );
+ }
+
+ function __construct( $title, $params, $id = 0 ) {
+ parent::__construct( __CLASS__, $title, $params, $id );
+ }
+
+ function run() {
+ $status = UserMailer::send(
+ $this->params['to'],
+ $this->params['from'],
+ $this->params['subj'],
+ $this->params['body'],
+ $this->params['replyto']
+ );
+
+ $isOK = $status->isOK();
+
+ if ( $isOK && $this->params['emailType'] === 'reminder' ) {
+ $user = User::newFromId( $this->params['user'] );
+
+ $reminders = $user->getOption( 'translate-sandbox-reminders' );
+ $reminders = $reminders ? explode( '|', $reminders ) : array();
+ $reminders[] = wfTimestamp();
+ $user->setOption( 'translate-sandbox-reminders', implode( '|', $reminders ) );
+
+ $reminders = $user->getOption( 'translate-sandbox-reminders' );
+ $user->setOption( 'translate-sandbox-reminders', $reminders );
+ $user->saveSettings();
+ }
+
+ return $isOK;
+ }
+}
diff --git a/MLEB/Translate/utils/TranslateYaml.php b/MLEB/Translate/utils/TranslateYaml.php
new file mode 100644
index 00000000..d3ae3630
--- /dev/null
+++ b/MLEB/Translate/utils/TranslateYaml.php
@@ -0,0 +1,224 @@
+<?php
+/**
+ * Contains wrapper class for interface to parse and generate YAML files.
+ *
+ * @file
+ * @author Ævar Arnfjörð Bjarmason
+ * @author Niklas Laxström
+ * @copyright Copyright © 2009-2013, Niklas Laxström, Ævar Arnfjörð Bjarmason
+ * @license GPL-2.0+
+ */
+
+/**
+ * This class is a wrapper class to provide interface to parse
+ * and generate YAML files with syck or spyc backend.
+ */
+class TranslateYaml {
+ /**
+ * @param $filename string
+ * @return array
+ */
+ public static function parseGroupFile( $filename ) {
+ $data = file_get_contents( $filename );
+ $documents = preg_split( "/^---$/m", $data, -1, PREG_SPLIT_NO_EMPTY );
+ $groups = array();
+ $template = false;
+ foreach ( $documents as $document ) {
+ $document = self::loadString( $document );
+
+ if ( isset( $document['TEMPLATE'] ) ) {
+ $template = $document['TEMPLATE'];
+ } else {
+ if ( !isset( $document['BASIC']['id'] ) ) {
+ $error = "No path ./BASIC/id (group id not defined) ";
+ $error .= "in YAML document located in $filename";
+ trigger_error( $error );
+ continue;
+ }
+ $groups[$document['BASIC']['id']] = $document;
+ }
+ }
+
+ foreach ( $groups as $i => $group ) {
+ $groups[$i] = self::mergeTemplate( $template, $group );
+ }
+
+ return $groups;
+ }
+
+ /**
+ * Merges a document template (base) to actual definition (specific)
+ * @param $base
+ * @param $specific
+ * @return array
+ */
+ public static function mergeTemplate( $base, $specific ) {
+ foreach ( $specific as $key => $value ) {
+ if ( is_array( $value ) && isset( $base[$key] ) && is_array( $base[$key] ) ) {
+ $base[$key] = self::mergeTemplate( $base[$key], $value );
+ } else {
+ $base[$key] = $value;
+ }
+ }
+
+ return $base;
+ }
+
+ /**
+ * @param $text string
+ * @return array
+ * @throws MWException
+ */
+ public static function loadString( $text ) {
+ global $wgTranslateYamlLibrary;
+
+ switch ( $wgTranslateYamlLibrary ) {
+ case 'phpyaml':
+ return yaml_parse( $text );
+
+ case 'spyc':
+ // Load the bundled version if not otherwise available
+ if ( !class_exists( 'Spyc' ) ) {
+ require_once __DIR__ . '/../libs/spyc/spyc.php';
+ }
+ $yaml = spyc_load( $text );
+
+ return self::fixSpycSpaces( $yaml );
+ case 'syck':
+ $yaml = self::syckLoad( $text );
+
+ return self::fixSyckBooleans( $yaml );
+ default:
+ throw new MWException( "Unknown Yaml library" );
+ }
+ }
+
+ /**
+ * @param $yaml array
+ * @return array
+ */
+ public static function fixSyckBooleans( &$yaml ) {
+ foreach ( $yaml as &$value ) {
+ if ( is_array( $value ) ) {
+ self::fixSyckBooleans( $value );
+ } elseif ( $value === 'yes' ) {
+ $value = true;
+ }
+ }
+
+ return $yaml;
+ }
+
+ /**
+ * @param $yaml array
+ * @return array
+ */
+ public static function fixSpycSpaces( &$yaml ) {
+ foreach ( $yaml as $key => &$value ) {
+ if ( is_array( $value ) ) {
+ self::fixSpycSpaces( $value );
+ } elseif ( is_string( $value ) && $key === 'header' ) {
+ $value = preg_replace( '~^\*~m', ' *', $value ) . "\n";
+ }
+ }
+
+ return $yaml;
+ }
+
+ public static function load( $file ) {
+ $text = file_get_contents( $file );
+
+ return self::loadString( $text );
+ }
+
+ public static function dump( $text ) {
+ global $wgTranslateYamlLibrary;
+
+ switch ( $wgTranslateYamlLibrary ) {
+ case 'phpyaml':
+ return yaml_emit( $text, YAML_UTF8_ENCODING );
+
+ case 'spyc':
+ require_once __DIR__ . '/../libs/spyc/spyc.php';
+
+ return Spyc::YAMLDump( $text );
+ case 'syck':
+ return self::syckDump( $text );
+ default:
+ throw new MWException( "Unknown Yaml library" );
+ }
+ }
+
+ protected static function syckLoad( $data ) {
+ # Make temporary file
+ $td = wfTempDir();
+ $tf = tempnam( $td, 'yaml-load-' );
+
+ # Write to file
+ file_put_contents( $tf, $data );
+
+ $cmd = "perl -MYAML::Syck=LoadFile -MPHP::Serialization=serialize -wle '" .
+ 'my $tf = q[' . $tf . '];' .
+ 'my $yaml = LoadFile($tf);' .
+ 'open my $fh, ">", "$tf.serialized" or die qq[Can not open "$tf.serialized"];' .
+ 'print $fh serialize($yaml);' .
+ 'close($fh);' .
+ "' 2>&1";
+
+ $out = wfShellExec( $cmd, $ret );
+
+ if ( $ret != 0 ) {
+ throw new MWException( "The command '$cmd' died in execution with exit code '$ret': $out" );
+ }
+
+ $serialized = file_get_contents( "$tf.serialized" );
+ $php_data = unserialize( $serialized );
+
+ unlink( $tf );
+ unlink( "$tf.serialized" );
+
+ return $php_data;
+ }
+
+ protected static function syckDump( $data ) {
+ # Make temporary file
+ $td = wfTempDir();
+ $tf = tempnam( $td, 'yaml-load-' );
+
+ # Write to file
+ $sdata = serialize( $data );
+ file_put_contents( $tf, $sdata );
+
+ $cmd = "perl -MYAML::Syck=DumpFile -MPHP::Serialization=unserialize -MFile::Slurp=slurp -we '" .
+ '$YAML::Syck::Headless = 1;' .
+ '$YAML::Syck::SortKeys = 1;' .
+ 'my $tf = q[' . $tf . '];' .
+ 'my $serialized = slurp($tf);' .
+ 'my $unserialized = unserialize($serialized);' .
+ 'my $unserialized_utf8 = deutf8($unserialized);' .
+ 'DumpFile(qq[$tf.yaml], $unserialized_utf8);' .
+ 'sub deutf8 {' .
+ 'if(ref($_[0]) eq "HASH") {' .
+ 'return { map { deutf8($_) } %{$_[0]} };' .
+ '} elsif(ref($_[0]) eq "ARRAY") {' .
+ 'return [ map { deutf8($_) } @{$_[0]} ];' .
+ '} else {' .
+ 'my $s = $_[0];' .
+ 'utf8::decode($s);' .
+ 'return $s;' .
+ '}' .
+ '}' .
+ "' 2>&1";
+ $out = wfShellExec( $cmd, $ret );
+ if ( $ret != 0 ) {
+ throw new MWException( "The command '$cmd' died in execution with exit code '$ret': $out" );
+ }
+
+ $yaml = file_get_contents( "$tf.yaml" );
+
+ unlink( $tf );
+ unlink( "$tf.yaml" );
+
+ return $yaml;
+ }
+}
diff --git a/MLEB/Translate/utils/TranslationEditPage.php b/MLEB/Translate/utils/TranslationEditPage.php
new file mode 100644
index 00000000..ffcbd8ca
--- /dev/null
+++ b/MLEB/Translate/utils/TranslationEditPage.php
@@ -0,0 +1,307 @@
+<?php
+/**
+ * Contains classes that imeplement the server side component of AJAX
+ * translation page.
+ *
+ * @file
+ * @author Niklas Laxström
+ * @license GPL-2.0+
+ */
+
+/**
+ * This class together with some JavaScript implements the AJAX translation
+ * page.
+ */
+class TranslationEditPage {
+ // Instance of an Title object
+ protected $title;
+ protected $suggestions = 'sync';
+
+ /**
+ * Constructor.
+ * @param $title Title A title object
+ */
+ public function __construct( Title $title ) {
+ $this->setTitle( $title );
+ }
+
+ /**
+ * Constructs a page from WebRequest.
+ * This interface is a big klunky.
+ * @param $request WebRequest
+ * @return TranslationEditPage
+ */
+ public static function newFromRequest( WebRequest $request ) {
+ $title = Title::newFromText( $request->getText( 'page' ) );
+
+ if ( !$title ) {
+ return null;
+ }
+
+ $obj = new self( $title );
+ $obj->suggestions = $request->getText( 'suggestions' );
+
+ return $obj;
+ }
+
+ /**
+ * Change the title of the page we are working on.
+ * @param $title Title
+ */
+ public function setTitle( Title $title ) {
+ $this->title = $title;
+ }
+
+ /**
+ * Get the title of the page we are working on.
+ * @return Title
+ */
+ public function getTitle() {
+ return $this->title;
+ }
+
+ /**
+ * Generates the html snippet for ajax edit. Echoes it to the output and
+ * disabled all other output.
+ */
+ public function execute() {
+ global $wgServer, $wgScriptPath;
+
+ $context = RequestContext::getMain();
+
+ $context->getOutput()->disable();
+
+ $data = $this->getEditInfo();
+ $helpers = new TranslationHelpers( $this->getTitle(), '' );
+
+ $id = "tm-target-{$helpers->dialogID()}";
+ $helpers->setTextareaId( $id );
+
+ if ( $this->suggestions === 'only' ) {
+ echo $helpers->getBoxes( $this->suggestions );
+
+ return;
+ }
+
+ if ( $this->suggestions === 'checks' ) {
+ echo $helpers->getBoxes( $this->suggestions );
+
+ return;
+ }
+
+ $handle = new MessageHandle( $this->getTitle() );
+ $groupId = MessageIndex::getPrimaryGroupId( $handle );
+
+ $translation = '';
+ if ( $groupId ) {
+ $translation = $helpers->getTranslation();
+ }
+
+ $targetLang = Language::factory( $helpers->getTargetLanguage() );
+ $textareaParams = array(
+ 'name' => 'text',
+ 'class' => 'mw-translate-edit-area',
+ 'id' => $id,
+ /* Target language might differ from interface language. Set
+ * a suitable default direction */
+ 'lang' => $targetLang->getCode(),
+ 'dir' => $targetLang->getDir(),
+ );
+
+ if ( !$groupId || !$context->getUser()->isAllowed( 'translate' ) ) {
+ $textareaParams['readonly'] = 'readonly';
+ }
+
+ $extraInputs = '';
+ wfRunHooks( 'TranslateGetExtraInputs', array( &$translation, &$extraInputs ) );
+
+ $textarea = Html::element( 'textarea', $textareaParams, $translation );
+
+ $hidden = array();
+ $hidden[] = Html::hidden( 'title', $this->getTitle()->getPrefixedDbKey() );
+
+ if ( isset( $data['revisions'][0]['timestamp'] ) ) {
+ $hidden[] = Html::hidden( 'basetimestamp', $data['revisions'][0]['timestamp'] );
+ }
+
+ $hidden[] = Html::hidden( 'starttimestamp', $data['starttimestamp'] );
+ if ( isset( $data['edittoken'] ) ) {
+ $hidden[] = Html::hidden( 'token', $data['edittoken'] );
+ }
+ $hidden[] = Html::hidden( 'format', 'json' );
+ $hidden[] = Html::hidden( 'action', 'edit' );
+
+ $summary = Xml::inputLabel(
+ $context->msg( 'translate-js-summary' )->text(),
+ 'summary',
+ 'summary',
+ 40
+ );
+ $save = Xml::submitButton(
+ $context->msg( 'translate-js-save' )->text(),
+ array( 'class' => 'mw-translate-save' )
+ );
+ $saveAndNext = Xml::submitButton(
+ $context->msg( 'translate-js-next' )->text(),
+ array( 'class' => 'mw-translate-next' )
+ );
+ $skip = Html::element( 'input', array(
+ 'class' => 'mw-translate-skip',
+ 'type' => 'button',
+ 'value' => $context->msg( 'translate-js-skip' )->text()
+ ) );
+
+ if ( $this->getTitle()->exists() ) {
+ $history = Html::element(
+ 'input',
+ array(
+ 'class' => 'mw-translate-history',
+ 'type' => 'button',
+ 'value' => $context->msg( 'translate-js-history' )->text()
+ )
+ );
+ } else {
+ $history = '';
+ }
+
+ $support = $this->getSupportButton( $this->getTitle() );
+
+ if ( $context->getUser()->isAllowed( 'translate' ) ) {
+ $bottom = "$summary$save$saveAndNext$skip$history$support";
+ } else {
+ $text = $context->msg( 'translate-edit-nopermission' )->escaped();
+ $button = $this->getPermissionPageButton();
+ $bottom = "$text $button$skip$history$support";
+ }
+
+ // Use the api to submit edits
+ $formParams = array(
+ 'action' => "{$wgServer}{$wgScriptPath}/api.php",
+ 'method' => 'post',
+ );
+
+ $form = Html::rawElement( 'form', $formParams,
+ implode( "\n", $hidden ) . "\n" .
+ $helpers->getBoxes( $this->suggestions ) . "\n" .
+ Html::rawElement(
+ 'div',
+ array( 'class' => 'mw-translate-inputs' ),
+ "$textarea\n$extraInputs"
+ ) . "\n" .
+ Html::rawElement( 'div', array( 'class' => 'mw-translate-bottom' ), $bottom )
+ );
+
+ echo Html::rawElement( 'div', array( 'class' => 'mw-ajax-dialog' ), $form );
+ }
+
+ /**
+ * Gets the edit token and timestamps in some ugly array structure. Needs to
+ * be cleaned up.
+ * @throws MWException
+ * @return \array
+ */
+ protected function getEditInfo() {
+ $params = new FauxRequest( array(
+ 'action' => 'query',
+ 'prop' => 'info|revisions',
+ 'intoken' => 'edit',
+ 'titles' => $this->getTitle(),
+ 'rvprop' => 'timestamp',
+ ) );
+
+ $api = new ApiMain( $params );
+ $api->execute();
+ $data = $api->getResultData();
+
+ if ( !isset( $data['query']['pages'] ) ) {
+ throw new MWException( 'Api query failed' );
+ }
+ $data = $data['query']['pages'];
+ $data = array_shift( $data );
+
+ return $data;
+ }
+
+ /**
+ * Returns link attributes that enable javascript translation dialog.
+ * Will degrade gracefully if user does not have permissions or JavaScript
+ * is not enabled.
+ * @param $title Title Title object for the translatable message.
+ * @param $group \string The group in which this message belongs to.
+ * Optional, but avoids a lookup later if provided.
+ * @param $type \string Force the type of editor to be used. Use dialog
+ * where embedded editor is no applicable.
+ * @return \array
+ */
+ public static function jsEdit( Title $title, $group = "", $type = 'default' ) {
+ $context = RequestContext::getMain();
+
+ if ( $type === 'default' ) {
+ $text = 'tqe-anchor-' . substr( sha1( $title->getPrefixedText() ), 0, 12 );
+ $onclick = "jQuery( '#$text' ).dblclick(); return false;";
+ } else {
+ $onclick = Xml::encodeJsCall(
+ 'return mw.translate.openDialog', array( $title->getPrefixedDbKey(), $group )
+ );
+ }
+
+ return array(
+ 'onclick' => $onclick,
+ 'title' => $context->msg( 'translate-edit-title', $title->getPrefixedText() )->text()
+ );
+ }
+
+ protected function getSupportButton( $title ) {
+ global $wgTranslateSupportUrl;
+ if ( !$wgTranslateSupportUrl ) {
+ return '';
+ }
+
+ $supportTitle = Title::newFromText( $wgTranslateSupportUrl['page'] );
+ if ( !$supportTitle ) {
+ return '';
+ }
+
+ $supportParams = $wgTranslateSupportUrl['params'];
+ foreach ( $supportParams as &$value ) {
+ $value = str_replace( '%MESSAGE%', $title->getPrefixedText(), $value );
+ }
+
+ $support = Html::element(
+ 'input',
+ array(
+ 'class' => 'mw-translate-support',
+ 'type' => 'button',
+ 'value' => wfMessage( 'translate-js-support' )->text(),
+ 'title' => wfMessage( 'translate-js-support-title' )->text(),
+ 'data-load-url' => $supportTitle->getLocalUrl( $supportParams ),
+ )
+ );
+
+ return $support;
+ }
+
+ protected function getPermissionPageButton() {
+ global $wgTranslatePermissionUrl;
+ if ( !$wgTranslatePermissionUrl ) {
+ return '';
+ }
+
+ $title = Title::newFromText( $wgTranslatePermissionUrl );
+ if ( !$title ) {
+ return '';
+ }
+
+ $button = Html::element(
+ 'input',
+ array(
+ 'class' => 'mw-translate-askpermission',
+ 'type' => 'button',
+ 'value' => wfMessage( 'translate-edit-askpermission' )->text(),
+ 'data-load-url' => $title->getLocalUrl(),
+ )
+ );
+
+ return $button;
+ }
+}
diff --git a/MLEB/Translate/utils/TranslationHelpers.php b/MLEB/Translate/utils/TranslationHelpers.php
new file mode 100644
index 00000000..e33e7e86
--- /dev/null
+++ b/MLEB/Translate/utils/TranslationHelpers.php
@@ -0,0 +1,1473 @@
+<?php
+/**
+ * Contains helper class for interface parts that aid translations in doing
+ * their thing.
+ *
+ * @file
+ * @author Niklas Laxström
+ * @license GPL-2.0+
+ */
+
+/**
+ * Provides the nice boxes that aid the translators to do their job.
+ * Boxes contain definition, documentation, other languages, translation memory
+ * suggestions, highlighted changes etc.
+ */
+class TranslationHelpers {
+ /**
+ * @var MessageHandle
+ * @since 2012-01-04
+ */
+ protected $handle;
+ /**
+ * The group object of the message (or null if there isn't any)
+ * @var MessageGroup
+ */
+ protected $group;
+
+ /**
+ * The current translation as a string.
+ */
+ protected $translation;
+ /**
+ * The message definition as a string.
+ */
+ protected $definition;
+ /**
+ * HTML id to the text area that contains the translation. Used to insert
+ * suggestion directly into the text area, for example.
+ */
+ protected $textareaId = 'wpTextbox1';
+ /**
+ * Whether to include extra tools to aid translating.
+ */
+ protected $editMode = 'true';
+
+ /**
+ * @param Title $title Title of a page that holds a translation.
+ * @param string $groupId Group id that should be used, otherwise autodetected from title.
+ */
+ public function __construct( Title $title, $groupId ) {
+ $this->handle = new MessageHandle( $title );
+ $this->group = $this->getMessageGroup( $this->handle, $groupId );
+ }
+
+ /**
+ * Tries to determine to which group this message belongs. Falls back to the
+ * message index if valid group id was not supplied.
+ *
+ * @param MessageHandle $handle
+ * @param string $groupId
+ * @return MessageGroup|null Group the key belongs to, or null.
+ */
+ protected function getMessageGroup( MessageHandle $handle, $groupId ) {
+ $mg = MessageGroups::getGroup( $groupId );
+
+ # If we were not given (a valid) group
+ if ( $mg === null ) {
+ $groupId = MessageIndex::getPrimaryGroupId( $handle );
+ $mg = MessageGroups::getGroup( $groupId );
+ }
+
+ return $mg;
+ }
+
+ /**
+ * Gets the HTML id of the text area that contains the translation.
+ * @return String
+ */
+ public function getTextareaId() {
+ return $this->textareaId;
+ }
+
+ /**
+ * Sets the HTML id of the text area that contains the translation.
+ * @param $id String
+ */
+ public function setTextareaId( $id ) {
+ $this->textareaId = $id;
+ }
+
+ /**
+ * Enable or disable extra help for editing.
+ * @param $mode Boolean
+ */
+ public function setEditMode( $mode = true ) {
+ $this->editMode = $mode;
+ }
+
+ /**
+ * Gets the message definition.
+ * @return String
+ */
+ public function getDefinition() {
+ if ( $this->definition !== null ) {
+ return $this->definition;
+ }
+
+ $this->mustBeKnownMessage();
+
+ if ( method_exists( $this->group, 'getMessageContent' ) ) {
+ $this->definition = $this->group->getMessageContent( $this->handle );
+ } else {
+ $this->definition = $this->group->getMessage(
+ $this->handle->getKey(),
+ $this->group->getSourceLanguage()
+ );
+ }
+
+ return $this->definition;
+ }
+
+ /**
+ * Gets the current message translation. Fuzzy messages will be marked as
+ * such unless translation is provided manually.
+ * @return string
+ */
+ public function getTranslation() {
+ if ( $this->translation === null ) {
+ $obj = new CurrentTranslationAid( $this->group, $this->handle, RequestContext::getMain() );
+ $aid = $obj->getData();
+ $this->translation = $aid['value'];
+
+ if ( $aid['fuzzy'] ) {
+ $this->translation = TRANSLATE_FUZZY . $this->translation;
+ }
+ }
+
+ return $this->translation;
+ }
+
+ /**
+ * Manual override for the translation. If not given or it is null, the code
+ * will try to fetch it automatically.
+ * @param string|null $translation
+ */
+ public function setTranslation( $translation ) {
+ $this->translation = $translation;
+ }
+
+ /**
+ * Gets the linguistically correct language code for translation
+ */
+ public function getTargetLanguage() {
+ global $wgLanguageCode, $wgTranslateDocumentationLanguageCode;
+
+ $code = $this->handle->getCode();
+ if ( !$code ) {
+ $this->mustBeKnownMessage();
+ $code = $this->group->getSourceLanguage();
+ }
+ if ( $code === $wgTranslateDocumentationLanguageCode ) {
+ return $wgLanguageCode;
+ }
+
+ return $code;
+ }
+
+ /**
+ * Returns block element HTML snippet that contains the translation aids.
+ * Not all boxes are shown all the time depending on whether they have
+ * any information to show and on configuration variables.
+ * @param $suggestions string
+ * @return String. Block level HTML snippet or empty string.
+ */
+ public function getBoxes( $suggestions = 'sync' ) {
+ // Box filter
+ $all = $this->getBoxNames();
+
+ if ( $suggestions === 'async' ) {
+ $all['translation-memory'] = array( $this, 'getLazySuggestionBox' );
+ } elseif ( $suggestions === 'only' ) {
+ return (string)$this->callBox(
+ 'translation-memory',
+ $all['translation-memory'],
+ array( 'lazy' )
+ );
+ } elseif ( $suggestions === 'checks' ) {
+ $request = RequestContext::getMain()->getRequest();
+ $this->translation = $request->getText( 'translation' );
+
+ return (string)$this->callBox( 'check', $all['check'] );
+ }
+
+ if ( $this->group instanceof RecentMessageGroup ) {
+ $all['last-diff'] = array( $this, 'getLastDiff' );
+ }
+
+ $boxes = array();
+ foreach ( $all as $type => $cb ) {
+ $box = $this->callBox( $type, $cb );
+ if ( $box ) {
+ $boxes[$type] = $box;
+ }
+ }
+
+ wfRunHooks( 'TranslateGetBoxes', array( $this->group, $this->handle, &$boxes ) );
+
+ if ( count( $boxes ) ) {
+ return Html::rawElement(
+ 'div',
+ array( 'class' => 'mw-sp-translate-edit-fields' ),
+ implode( "\n\n", $boxes )
+ );
+ } else {
+ return '';
+ }
+ }
+
+ /**
+ * Public since 2012-06-26
+ * @since 2012-01-04
+ */
+ public function callBox( $type, $cb, $params = array() ) {
+ try {
+ return call_user_func_array( $cb, $params );
+ } catch ( TranslationHelperException $e ) {
+ return "<!-- Box $type not available: {$e->getMessage()} -->";
+ }
+ }
+
+ /**
+ * @return array
+ */
+ public function getBoxNames() {
+ return array(
+ 'other-languages' => array( $this, 'getOtherLanguagesBox' ),
+ 'translation-memory' => array( $this, 'getSuggestionBox' ),
+ 'translation-diff' => array( $this, 'getPageDiff' ),
+ 'separator' => array( $this, 'getSeparatorBox' ),
+ 'documentation' => array( $this, 'getDocumentationBox' ),
+ 'definition' => array( $this, 'getDefinitionBox' ),
+ 'check' => array( $this, 'getCheckBox' ),
+ );
+ }
+
+ /**
+ * Returns suggestions from a translation memory.
+ * @param $serviceName
+ * @param $config
+ * @throws TranslationHelperException
+ * @return string Html snippet which contains the suggestions.
+ */
+ protected function getTTMServerBox( $serviceName, $config ) {
+ $this->mustHaveDefinition();
+ $this->mustBeTranslation();
+
+ $source = $this->group->getSourceLanguage();
+ $code = $this->handle->getCode();
+ $definition = $this->getDefinition();
+ $TTMServer = TTMServer::factory( $config );
+ $suggestions = $TTMServer->query( $source, $code, $definition );
+ if ( count( $suggestions ) === 0 ) {
+ throw new TranslationHelperException( 'No suggestions' );
+ }
+
+ return $suggestions;
+ }
+
+ /**
+ * Returns suggestions from a translation memory.
+ * @param $serviceName
+ * @param $config
+ * @throws TranslationHelperException
+ * @return string Html snippet which contains the suggestions.
+ */
+ protected function getRemoteTTMServerBox( $serviceName, $config ) {
+ $this->mustHaveDefinition();
+ $this->mustBeTranslation();
+
+ self::checkTranslationServiceFailure( $serviceName );
+
+ $source = $this->group->getSourceLanguage();
+ $code = $this->handle->getCode();
+ $definition = $this->getDefinition();
+ $params = array(
+ 'format' => 'json',
+ 'action' => 'ttmserver',
+ 'sourcelanguage' => $source,
+ 'targetlanguage' => $code,
+ 'text' => $definition,
+ '*', // Because we hate IE
+ );
+
+ wfProfileIn( 'TranslateWebServiceRequest-' . $serviceName );
+ $json = Http::get( wfAppendQuery( $config['url'], $params ) );
+ wfProfileOut( 'TranslateWebServiceRequest-' . $serviceName );
+
+ $response = FormatJson::decode( $json, true );
+
+ if ( $json === false ) {
+ // Most likely a timeout or other general error
+ self::reportTranslationServiceFailure( $serviceName );
+ throw new TranslationHelperException( 'No reply from remote server' );
+ } elseif ( !is_array( $response ) ) {
+ error_log( __METHOD__ . ': Unable to parse reply: ' . strval( $json ) );
+ throw new TranslationHelperException( 'Malformed reply from remote server' );
+ }
+
+ if ( !isset( $response['ttmserver'] ) ) {
+ self::reportTranslationServiceFailure( $serviceName );
+ throw new TranslationHelperException( 'Unexpected reply from remote server' );
+ }
+
+ $suggestions = $response['ttmserver'];
+ if ( count( $suggestions ) === 0 ) {
+ throw new TranslationHelperException( 'No suggestions' );
+ }
+
+ return $suggestions;
+ }
+
+ /// Since 2012-03-05
+ protected function formatTTMServerSuggestions( $data ) {
+ $sugFields = array();
+
+ foreach ( $data as $serviceWrapper ) {
+ $config = $serviceWrapper['config'];
+ $suggestions = $serviceWrapper['suggestions'];
+
+ foreach ( $suggestions as $s ) {
+ $tooltip = wfMessage( 'translate-edit-tmmatch-source', $s['source'] )->plain();
+ $text = wfMessage(
+ 'translate-edit-tmmatch',
+ sprintf( '%.2f', $s['quality'] * 100 )
+ )->plain();
+ $accuracy = Html::element( 'span', array( 'title' => $tooltip ), $text );
+ $legend = array( $accuracy => array() );
+
+ $TTMServer = TTMServer::factory( $config );
+ if ( $TTMServer->isLocalSuggestion( $s ) ) {
+ $title = Title::newFromText( $s['location'] );
+ $symbol = isset( $config['symbol'] ) ? $config['symbol'] : '•';
+ $legend[$accuracy][] = self::ajaxEditLink( $title, $symbol );
+ } else {
+ if ( $TTMServer instanceof RemoteTTMServer ) {
+ $displayName = $config['displayname'];
+ } else {
+ $wiki = WikiMap::getWiki( $s['wiki'] );
+ $displayName = $wiki->getDisplayName() . ': ' . $s['location'];
+ }
+
+ $params = array(
+ 'href' => $TTMServer->expandLocation( $s ),
+ 'target' => '_blank',
+ 'title' => $displayName,
+ );
+
+ $symbol = isset( $config['symbol'] ) ? $config['symbol'] : '‣';
+ $legend[$accuracy][] = Html::element( 'a', $params, $symbol );
+ }
+
+ $suggestion = $s['target'];
+ $text = $this->suggestionField( $suggestion );
+ $params = array( 'class' => 'mw-sp-translate-edit-tmsug' );
+
+ // Group identical suggestions together
+ if ( isset( $sugFields[$suggestion] ) ) {
+ $sugFields[$suggestion][2] = array_merge_recursive( $sugFields[$suggestion][2], $legend );
+ } else {
+ $sugFields[$suggestion] = array( $text, $params, $legend );
+ }
+ }
+ }
+
+ $boxes = array();
+ foreach ( $sugFields as $field ) {
+ list( $text, $params, $label ) = $field;
+ $legend = array();
+
+ foreach ( $label as $acc => $links ) {
+ $legend[] = $acc . ' ' . implode( " ", $links );
+ }
+
+ $legend = implode( ' | ', $legend );
+ $boxes[] = Html::rawElement(
+ 'div',
+ $params,
+ self::legend( $legend ) . $text . self::clear()
+ ) . "\n";
+ }
+
+ // Limit to three best
+ $boxes = array_slice( $boxes, 0, 3 );
+ $result = implode( "\n", $boxes );
+
+ return $result;
+ }
+
+ /**
+ * @return string
+ * @throws MWException
+ */
+ public function getSuggestionBox() {
+ global $wgTranslateTranslationServices;
+
+ $handlers = array(
+ 'microsoft' => 'getMicrosoftSuggestion',
+ 'apertium' => 'getApertiumSuggestion',
+ 'yandex' => 'getYandexSuggestion',
+ );
+
+ $errors = '';
+ $boxes = array();
+ $TTMSSug = array();
+ foreach ( $wgTranslateTranslationServices as $name => $config ) {
+ $type = $config['type'];
+
+ if ( !isset( $config['timeout'] ) ) {
+ $config['timeout'] = 3;
+ }
+
+ $method = null;
+ if ( isset( $handlers[$type] ) ) {
+ $method = $handlers[$type];
+
+ try {
+ $boxes[] = $this->$method( $name, $config );
+ } catch ( TranslationHelperException $e ) {
+ $errors .= "<!-- Box $name not available: {$e->getMessage()} -->\n";
+ }
+ continue;
+ }
+
+ $server = TTMServer::factory( $config );
+ if ( $server instanceof RemoteTTMServer ) {
+ $method = 'getRemoteTTMServerBox';
+ } elseif ( $server instanceof ReadableTTMServer ) {
+ $method = 'getTTMServerBox';
+ }
+
+ if ( !$method ) {
+ throw new MWException( __METHOD__ . ": Unsupported type {$config['type']}" );
+ }
+
+ try {
+ $TTMSSug[$name] = array(
+ 'config' => $config,
+ 'suggestions' => $this->$method( $name, $config ),
+ );
+ } catch ( TranslationHelperException $e ) {
+ $errors .= "<!-- Box $name not available: {$e->getMessage()} -->\n";
+ }
+ }
+
+ if ( count( $TTMSSug ) ) {
+ array_unshift( $boxes, $this->formatTTMServerSuggestions( $TTMSSug ) );
+ }
+
+ // Remove nulls and falses
+ $boxes = array_filter( $boxes );
+
+ // Enclose if there is more than one box
+ if ( count( $boxes ) ) {
+ $sep = Html::element( 'hr', array( 'class' => 'mw-translate-sep' ) );
+
+ return $errors . TranslateUtils::fieldset(
+ wfMessage( 'translate-edit-tmsugs' )->escaped(),
+ implode( "$sep\n", $boxes ),
+ array( 'class' => 'mw-translate-edit-tmsugs' )
+ );
+ } else {
+ return $errors;
+ }
+ }
+
+ protected static function makeGoogleQueryParams( $definition, $pair, $config ) {
+ global $wgSitename, $wgVersion, $wgSecretKey;
+
+ $app = "$wgSitename (MediaWiki $wgVersion; Translate " . TRANSLATE_VERSION . ")";
+ $context = RequestContext::getMain();
+ $options = array();
+ $options['timeout'] = $config['timeout'];
+
+ $options['postData'] = array(
+ 'q' => $definition,
+ 'v' => '1.0',
+ 'langpair' => $pair,
+ // Unique but not identifiable
+ 'userip' => sha1( $wgSecretKey . $context->getUser()->getName() ),
+ 'x-application' => $app,
+ );
+
+ if ( $config['key'] ) {
+ $options['postData']['key'] = $config['key'];
+ }
+
+ return $options;
+ }
+
+ protected function getMicrosoftSuggestion( $serviceName, $config ) {
+ $this->mustHaveDefinition();
+ self::checkTranslationServiceFailure( $serviceName );
+
+ $code = $this->handle->getCode();
+ $definition = trim( strval( $this->getDefinition() ) );
+ $definition = self::wrapUntranslatable( $definition );
+
+ $memckey = wfMemckey( 'translate-tmsug-badcodes-' . $serviceName );
+ $unsupported = wfGetCache( CACHE_ANYTHING )->get( $memckey );
+
+ if ( isset( $unsupported[$code] ) ) {
+ throw new TranslationHelperException( 'Unsupported language' );
+ }
+
+ $options = array();
+ $options['timeout'] = $config['timeout'];
+
+ $params = array(
+ 'text' => $definition,
+ 'to' => $code,
+ );
+
+ if ( isset( $config['key'] ) ) {
+ $params['appId'] = $config['key'];
+ } else {
+ throw new TranslationHelperException( 'API key is not set' );
+ }
+
+ $url = $config['url'] . '?' . wfArrayToCgi( $params );
+ $url = wfExpandUrl( $url );
+
+ $options['method'] = 'GET';
+
+ $req = MWHttpRequest::factory( $url, $options );
+
+ wfProfileIn( 'TranslateWebServiceRequest-' . $serviceName );
+ $status = $req->execute();
+ wfProfileOut( 'TranslateWebServiceRequest-' . $serviceName );
+
+ if ( !$status->isOK() ) {
+ $error = $req->getContent();
+ if ( strpos( $error, 'must be a valid language' ) !== false ) {
+ $unsupported[$code] = true;
+ wfGetCache( CACHE_ANYTHING )->set( $memckey, $unsupported, 60 * 60 * 8 );
+ throw new TranslationHelperException( 'Unsupported language code' );
+ }
+
+ if ( $error ) {
+ error_log( __METHOD__ . ': Http::get failed:' . $error );
+ } else {
+ error_log( __METHOD__ . ': Unknown error, grr' );
+ }
+ // Most likely a timeout or other general error
+ self::reportTranslationServiceFailure( $serviceName );
+ }
+
+ $ret = $req->getContent();
+ $text = preg_replace( '~<string.*>(.*)</string>~', '\\1', $ret );
+ $text = Sanitizer::decodeCharReferences( $text );
+ $text = self::unwrapUntranslatable( $text );
+ $text = $this->suggestionField( $text );
+
+ return Html::rawElement( 'div', array(), self::legend( $serviceName ) . $text . self::clear() );
+ }
+
+ protected static function wrapUntranslatable( $text ) {
+ $text = str_replace( "\n", "!N!", $text );
+ $wrap = '<span class="notranslate">\0</span>';
+ $pattern = '~%[^% ]+%|\$\d|{VAR:[^}]+}|{?{(PLURAL|GRAMMAR|GENDER):[^|]+\||%(\d\$)?[sd]~';
+ $text = preg_replace( $pattern, $wrap, $text );
+
+ return $text;
+ }
+
+ protected static function unwrapUntranslatable( $text ) {
+ $text = str_replace( '!N!', "\n", $text );
+ $text = preg_replace( '~<span class="notranslate">(.*?)</span>~', '\1', $text );
+
+ return $text;
+ }
+
+ protected function getApertiumSuggestion( $serviceName, $config ) {
+ self::checkTranslationServiceFailure( $serviceName );
+
+ $page = $this->handle->getKey();
+ $code = $this->handle->getCode();
+ $ns = $this->handle->getTitle()->getNamespace();
+
+ $memckey = wfMemckey( 'translate-tmsug-pairs-' . $serviceName );
+ $pairs = wfGetCache( CACHE_ANYTHING )->get( $memckey );
+
+ if ( !$pairs ) {
+
+ $pairs = array();
+ $json = Http::get( $config['pairs'], 5 );
+ $response = FormatJson::decode( $json );
+
+ if ( $json === false ) {
+ self::reportTranslationServiceFailure( $serviceName );
+ } elseif ( !is_object( $response ) ) {
+ error_log( __METHOD__ . ': Unable to parse reply: ' . strval( $json ) );
+ throw new TranslationHelperException( 'Malformed reply from remote server' );
+ }
+
+ foreach ( $response->responseData as $pair ) {
+ $source = $pair->sourceLanguage;
+ $target = $pair->targetLanguage;
+ if ( !isset( $pairs[$target] ) ) {
+ $pairs[$target] = array();
+ }
+ $pairs[$target][$source] = true;
+ }
+
+ wfGetCache( CACHE_ANYTHING )->set( $memckey, $pairs, 60 * 60 * 24 );
+ }
+
+ if ( isset( $config['codemap'][$code] ) ) {
+ $code = $config['codemap'][$code];
+ }
+
+ $code = str_replace( '-', '_', wfBCP47( $code ) );
+
+ if ( !isset( $pairs[$code] ) ) {
+ throw new TranslationHelperException( 'Unsupported language' );
+ }
+
+ $suggestions = array();
+
+ $codemap = array_flip( $config['codemap'] );
+ foreach ( $pairs[$code] as $candidate => $unused ) {
+ $mwcode = str_replace( '_', '-', strtolower( $candidate ) );
+
+ if ( isset( $codemap[$mwcode] ) ) {
+ $mwcode = $codemap[$mwcode];
+ }
+
+ $text = TranslateUtils::getMessageContent( $page, $mwcode, $ns );
+ if ( $text === null || MessageHandle::hasFuzzyString( $text ) ) {
+ continue;
+ }
+
+ $title = Title::makeTitleSafe( $ns, "$page/$mwcode" );
+ $handle = new MessageHandle( $title );
+ if ( $handle->isFuzzy() ) {
+ continue;
+ }
+
+ $options = self::makeGoogleQueryParams( $text, "$candidate|$code", $config );
+ $options['postData']['format'] = 'html';
+
+ wfProfileIn( 'TranslateWebServiceRequest-' . $serviceName );
+ $json = Http::post( $config['url'], $options );
+ wfProfileOut( 'TranslateWebServiceRequest-' . $serviceName );
+
+ $response = FormatJson::decode( $json );
+ if ( $json === false || !is_object( $response ) ) {
+ self::reportTranslationServiceFailure( $serviceName );
+ } elseif ( $response->responseStatus !== 200 ) {
+ error_log( __METHOD__ .
+ " (HTTP {$response->responseStatus}) with ($serviceName ($candidate|$code)): " .
+ $response->responseDetails
+ );
+ } else {
+ $sug = Sanitizer::decodeCharReferences( $response->responseData->translatedText );
+ $sug = trim( $sug );
+ $sug = $this->suggestionField( $sug );
+ $suggestions[] = Html::rawElement( 'div',
+ array( 'title' => $text ),
+ self::legend( "$serviceName ($candidate)" ) . $sug . self::clear()
+ );
+ }
+ }
+
+ if ( !count( $suggestions ) ) {
+ throw new TranslationHelperException( 'No suggestions' );
+ }
+
+ $divider = Html::element( 'div', array( 'style' => 'margin-bottom: 0.5ex' ) );
+
+ return implode( "$divider\n", $suggestions );
+ }
+
+ protected function getYandexSuggestion( $serviceName, $config ) {
+ self::checkTranslationServiceFailure( $serviceName );
+
+ $page = $this->handle->getKey();
+ $code = $this->handle->getCode();
+ $ns = $this->handle->getTitle()->getNamespace();
+
+ $memckey = wfMemckey( 'translate-tmsug-pairs-' . $serviceName );
+ $pairs = wfGetCache( CACHE_ANYTHING )->get( $memckey );
+
+ if ( !$pairs ) {
+ $pairs = array();
+ $json = Http::get( $config['pairs'], $config['timeout'] );
+ $response = FormatJson::decode( $json );
+
+ if ( $json === false ) {
+ self::reportTranslationServiceFailure( $serviceName );
+ } elseif ( !is_object( $response ) ) {
+ error_log( __METHOD__ . ': Unable to parse reply: ' . strval( $json ) );
+ throw new TranslationHelperException( 'Malformed reply from remote server' );
+ }
+
+ foreach ( $response->dirs as $pair ) {
+ list( $source, $target ) = explode( '-', $pair );
+ if ( !isset( $pairs[$target] ) ) {
+ $pairs[$target] = array();
+ }
+ $pairs[$target][$source] = true;
+ }
+
+ $weights = array_flip( $config['langorder'] );
+ $cmpLangs = function ( $lang1, $lang2 ) use ( $weights ) {
+ $weight1 = isset( $weights[$lang1] ) ? $weights[$lang1] : PHP_INT_MAX;
+ $weight2 = isset( $weights[$lang2] ) ? $weights[$lang2] : PHP_INT_MAX;
+
+ if ( $weight1 === $weight2 ) {
+ return 0;
+ }
+
+ return ( $weight1 < $weight2 ) ? -1 : 1;
+ };
+
+ foreach ( $pairs as &$langs ) {
+ uksort( $langs, $cmpLangs );
+ }
+
+ wfGetCache( CACHE_ANYTHING )->set( $memckey, $pairs, 60 * 60 * 24 );
+ }
+
+ if ( !isset( $pairs[$code] ) ) {
+ throw new TranslationHelperException( 'Unsupported language' );
+ }
+
+ $suggestions = array();
+
+ foreach ( $pairs[$code] as $candidate => $unused ) {
+ $text = TranslateUtils::getMessageContent( $page, $candidate, $ns );
+ if ( $text === null || MessageHandle::hasFuzzyString( $text ) ) {
+ continue;
+ }
+
+ $title = Title::makeTitleSafe( $ns, "$page/$candidate" );
+ $handle = new MessageHandle( $title );
+ if ( $handle->isFuzzy() ) {
+ continue;
+ }
+
+ $options = array(
+ 'timeout' => $config['timeout'],
+ 'postData' => array(
+ 'lang' => "$candidate-$code",
+ 'text' => $text,
+ )
+ );
+ wfProfileIn( 'TranslateWebServiceRequest-' . $serviceName );
+ $json = Http::post( $config['url'], $options );
+ wfProfileOut( 'TranslateWebServiceRequest-' . $serviceName );
+ $response = FormatJson::decode( $json );
+
+ if ( $json === false || !is_object( $response ) ) {
+ self::reportTranslationServiceFailure( $serviceName );
+ } elseif ( $response->code !== 200 ) {
+ error_log( __METHOD__ . " (HTTP {$response->code}) with ($serviceName ($candidate|$code))" );
+ } else {
+ $sug = Sanitizer::decodeCharReferences( $response->text[0] );
+ $sug = $this->suggestionField( $sug );
+ $suggestions[] = Html::rawElement( 'div',
+ array( 'title' => $text ),
+ self::legend( "$serviceName ($candidate)" ) . $sug . self::clear()
+ );
+ if ( count( $suggestions ) === $config['langlimit'] ) {
+ break;
+ }
+ }
+ }
+
+ if ( $suggestions === array() ) {
+ throw new TranslationHelperException( 'No suggestions' );
+ }
+
+ $divider = Html::element( 'div', array( 'style' => 'margin-bottom: 0.5ex' ) );
+
+ return implode( "$divider\n", $suggestions );
+ }
+
+ public function getDefinitionBox() {
+ $this->mustHaveDefinition();
+ $en = $this->getDefinition();
+
+ $title = Linker::link(
+ SpecialPage::getTitleFor( 'Translate' ),
+ htmlspecialchars( $this->group->getLabel() ),
+ array(),
+ array(
+ 'group' => $this->group->getId(),
+ 'language' => $this->handle->getCode()
+ )
+ );
+
+ $label =
+ wfMessage( 'translate-edit-definition' )->text() .
+ wfMessage( 'word-separator' )->text() .
+ wfMessage( 'parentheses', $title )->text();
+
+ // Source language object
+ $sl = Language::factory( $this->group->getSourceLanguage() );
+
+ $dialogID = $this->dialogID();
+ $id = Sanitizer::escapeId( "def-$dialogID" );
+ $msg = $this->adder( $id, $sl ) . "\n" . Html::rawElement( 'div',
+ array(
+ 'class' => 'mw-translate-edit-deftext',
+ 'dir' => $sl->getDir(),
+ 'lang' => $sl->getCode(),
+ ),
+ TranslateUtils::convertWhiteSpaceToHTML( $en )
+ );
+
+ $msg .= $this->wrapInsert( $id, $en );
+
+ $class = array( 'class' => 'mw-sp-translate-edit-definition mw-translate-edit-definition' );
+
+ return TranslateUtils::fieldset( $label, $msg, $class );
+ }
+
+ public function getTranslationDisplayBox() {
+ $en = $this->getTranslation();
+ if ( $en === null ) {
+ return null;
+ }
+ $label = wfMessage( 'translate-edit-translation' )->text();
+ $class = array( 'class' => 'mw-translate-edit-translation' );
+ $msg = Html::rawElement( 'span',
+ array( 'class' => 'mw-translate-edit-translationtext' ),
+ TranslateUtils::convertWhiteSpaceToHTML( $en )
+ );
+
+ return TranslateUtils::fieldset( $label, $msg, $class );
+ }
+
+ public function getCheckBox() {
+ $this->mustBeKnownMessage();
+
+ global $wgTranslateDocumentationLanguageCode;
+
+ $context = RequestContext::getMain();
+ $title = $context->getOutput()->getTitle();
+ list( $alias, ) = SpecialPageFactory::resolveAlias( $title->getText() );
+
+ $tux = SpecialTranslate::isBeta( $context->getRequest() )
+ && $title->isSpecialPage()
+ && ( $alias === 'Translate' );
+
+ $formattedChecks = $tux ?
+ FormatJson::encode( array() ) :
+ Html::element( 'div', array( 'class' => 'mw-translate-messagechecks' ) );
+
+ $page = $this->handle->getKey();
+ $translation = $this->getTranslation();
+ $code = $this->handle->getCode();
+ $en = $this->getDefinition();
+
+ if ( strval( $translation ) === '' ) {
+ return $formattedChecks;
+ }
+
+ if ( $code === $wgTranslateDocumentationLanguageCode ) {
+ return $formattedChecks;
+ }
+
+ // We need to get the primary group of the message. It may differ from
+ // the supplied group (aggregate groups, dynamic groups).
+ $checker = $this->handle->getGroup()->getChecker();
+ if ( !$checker ) {
+ return $formattedChecks;
+ }
+
+ $message = new FatMessage( $page, $en );
+ // Take the contents from edit field as a translation
+ $message->setTranslation( $translation );
+
+ $checks = $checker->checkMessage( $message, $code );
+ if ( !count( $checks ) ) {
+ return $formattedChecks;
+ }
+
+ $checkMessages = array();
+
+ foreach ( $checks as $checkParams ) {
+ $key = array_shift( $checkParams );
+ $checkMessages[] = $context->msg( $key, $checkParams )->parse();
+ }
+
+ if ( $tux ) {
+ $formattedChecks = FormatJson::encode( $checkMessages );
+ } else {
+ $formattedChecks = Html::rawElement(
+ 'div',
+ array( 'class' => 'mw-translate-messagechecks' ),
+ TranslateUtils::fieldset(
+ $context->msg( 'translate-edit-warnings' )->escaped(),
+ implode( '<hr />', $checkMessages ),
+ array( 'class' => 'mw-sp-translate-edit-warnings' )
+ )
+ );
+ }
+
+ return $formattedChecks;
+ }
+
+ public function getOtherLanguagesBox() {
+ $code = $this->handle->getCode();
+ $page = $this->handle->getKey();
+ $ns = $this->handle->getTitle()->getNamespace();
+
+ $boxes = array();
+ foreach ( self::getFallbacks( $code ) as $fbcode ) {
+ $text = TranslateUtils::getMessageContent( $page, $fbcode, $ns );
+ if ( $text === null ) {
+ continue;
+ }
+
+ $context = RequestContext::getMain();
+ $label = TranslateUtils::getLanguageName( $fbcode, $context->getLanguage()->getCode() ) .
+ $context->msg( 'word-separator' )->text() .
+ $context->msg( 'parentheses', wfBCP47( $fbcode ) )->text();
+
+ $target = Title::makeTitleSafe( $ns, "$page/$fbcode" );
+ if ( $target ) {
+ $label = self::ajaxEditLink( $target, htmlspecialchars( $label ) );
+ }
+
+ $dialogID = $this->dialogID();
+ $id = Sanitizer::escapeId( "other-$fbcode-$dialogID" );
+
+ $params = array( 'class' => 'mw-translate-edit-item' );
+
+ $display = TranslateUtils::convertWhiteSpaceToHTML( $text );
+ $display = Html::rawElement( 'div', array(
+ 'lang' => $fbcode,
+ 'dir' => Language::factory( $fbcode )->getDir() ),
+ $display
+ );
+
+ $contents = self::legend( $label ) . "\n" . $this->adder( $id, $fbcode ) .
+ $display . self::clear();
+
+ $boxes[] = Html::rawElement( 'div', $params, $contents ) .
+ $this->wrapInsert( $id, $text );
+ }
+
+ if ( count( $boxes ) ) {
+ $sep = Html::element( 'hr', array( 'class' => 'mw-translate-sep' ) );
+
+ return TranslateUtils::fieldset(
+ wfMessage(
+ 'translate-edit-in-other-languages',
+ $page
+ )->escaped(),
+ implode( "$sep\n", $boxes ),
+ array( 'class' => 'mw-sp-translate-edit-inother' )
+ );
+ }
+
+ return null;
+ }
+
+ public function getSeparatorBox() {
+ return Html::element( 'div', array( 'class' => 'mw-translate-edit-extra' ) );
+ }
+
+ public function getDocumentationBox() {
+ global $wgTranslateDocumentationLanguageCode;
+
+ if ( !$wgTranslateDocumentationLanguageCode ) {
+ throw new TranslationHelperException( 'Message documentation language code is not defined' );
+ }
+
+ $context = RequestContext::getMain();
+ $page = $this->handle->getKey();
+ $ns = $this->handle->getTitle()->getNamespace();
+
+ $title = Title::makeTitle( $ns, $page . '/' . $wgTranslateDocumentationLanguageCode );
+ $edit = self::ajaxEditLink(
+ $title,
+ $context->msg( 'translate-edit-contribute' )->escaped()
+ );
+ $info = TranslateUtils::getMessageContent( $page, $wgTranslateDocumentationLanguageCode, $ns );
+
+ $class = 'mw-sp-translate-edit-info';
+
+ $gettext = $this->formatGettextComments();
+ if ( $info !== null && $gettext ) {
+ $info .= Html::element( 'hr' );
+ }
+ $info .= $gettext;
+
+ // The information is most likely in English
+ $divAttribs = array( 'dir' => 'ltr', 'lang' => 'en', 'class' => 'mw-content-ltr' );
+
+ if ( strval( $info ) === '' ) {
+ $info = $context->msg( 'translate-edit-no-information' )->text();
+ $class = 'mw-sp-translate-edit-noinfo';
+ $lang = $context->getLanguage();
+ // The message saying that there's no info, should be translated
+ $divAttribs = array( 'dir' => $lang->getDir(), 'lang' => $lang->getCode() );
+ }
+ $class .= ' mw-sp-translate-message-documentation';
+
+ $contents = $context->getOutput()->parse( $info );
+ // Remove whatever block element wrapup the parser likes to add
+ $contents = preg_replace( '~^<([a-z]+)>(.*)</\1>$~us', '\2', $contents );
+
+ return TranslateUtils::fieldset(
+ $context->msg( 'translate-edit-information' )->rawParams( $edit )->escaped(),
+ Html::rawElement( 'div', $divAttribs, $contents ), array( 'class' => $class )
+ );
+ }
+
+ protected function formatGettextComments() {
+ if ( !$this->handle->isValid() ) {
+ return '';
+ }
+
+ // We need to get the primary group to get the correct file
+ // So $group can be different from $this->group
+ $group = $this->handle->getGroup();
+ if ( !$group instanceof FileBasedMessageGroup ) {
+ return '';
+ }
+
+ $ffs = $group->getFFS();
+ if ( $ffs instanceof GettextFFS ) {
+ global $wgContLang;
+ $mykey = $wgContLang->lcfirst( $this->handle->getKey() );
+ $mykey = str_replace( ' ', '_', $mykey );
+ $data = $ffs->read( $group->getSourceLanguage() );
+ $help = $data['TEMPLATE'][$mykey]['comments'];
+ // Do not display an empty comment. That's no help and takes up unnecessary space.
+ $conf = $group->getConfiguration();
+ if ( isset( $conf['BASIC']['codeBrowser'] ) ) {
+ $out = '';
+ $pattern = $conf['BASIC']['codeBrowser'];
+ $pattern = str_replace( '%FILE%', '\1', $pattern );
+ $pattern = str_replace( '%LINE%', '\2', $pattern );
+ $pattern = "[$pattern \\1:\\2]";
+ foreach ( $help as $type => $lines ) {
+ if ( $type === ':' ) {
+ $files = '';
+ foreach ( $lines as $line ) {
+ $files .= ' ' . preg_replace( '/([^ :]+):(\d+)/', $pattern, $line );
+ }
+ $out .= "<nowiki>#:</nowiki> $files<br />";
+ } else {
+ foreach ( $lines as $line ) {
+ $out .= "<nowiki>#$type</nowiki> $line<br />";
+ }
+ }
+ }
+
+ return "$out";
+ }
+ }
+
+ return '';
+ }
+
+ protected function getPageDiff() {
+ $this->mustBeKnownMessage();
+
+ $title = $this->handle->getTitle();
+ $key = $this->handle->getKey();
+
+ if ( !$title->exists() ) {
+ return null;
+ }
+
+ $definitionTitle = Title::makeTitleSafe( $title->getNamespace(), "$key/en" );
+ if ( !$definitionTitle || !$definitionTitle->exists() ) {
+ return null;
+ }
+
+ $db = wfGetDB( DB_MASTER );
+ $conds = array(
+ 'rt_page' => $title->getArticleID(),
+ 'rt_type' => RevTag::getType( 'tp:transver' ),
+ );
+ $options = array(
+ 'ORDER BY' => 'rt_revision DESC',
+ );
+
+ $latestRevision = $definitionTitle->getLatestRevID();
+
+ $translationRevision = $db->selectField( 'revtag', 'rt_value', $conds, __METHOD__, $options );
+ if ( $translationRevision === false ) {
+ return null;
+ }
+
+ // Using newFromId instead of newFromTitle, because the page might have been renamed
+ $oldrev = Revision::newFromId( $translationRevision );
+ if ( !$oldrev ) {
+ // And someone might still have deleted it
+ return null;
+ }
+
+ $oldtext = ContentHandler::getContentText( $oldrev->getContent() );
+ $newContent = Revision::newFromTitle( $definitionTitle, $latestRevision )->getContent();
+ $newtext = ContentHandler::getContentText( $newContent );
+
+ if ( $oldtext === $newtext ) {
+ return null;
+ }
+
+ $diff = new DifferenceEngine;
+ if ( method_exists( 'DifferenceEngine', 'setTextLanguage' ) ) {
+ $diff->setTextLanguage( $this->group->getSourceLanguage() );
+ }
+
+ $oldContent = ContentHandler::makeContent( $oldtext, $diff->getTitle() );
+ $newContent = ContentHandler::makeContent( $newtext, $diff->getTitle() );
+
+ $diff->setContent( $oldContent, $newContent );
+ $diff->setReducedLineNumbers();
+ $diff->showDiffStyle();
+
+ return $diff->getDiff(
+ wfMessage( 'tpt-diff-old' )->escaped(),
+ wfMessage( 'tpt-diff-new' )->escaped()
+ );
+ }
+
+ protected function getLastDiff() {
+ // Shortcuts
+ $title = $this->handle->getTitle();
+ $latestRevId = $title->getLatestRevID();
+ $previousRevId = $title->getPreviousRevisionID( $latestRevId );
+
+ $latestRev = Revision::newFromTitle( $title, $latestRevId );
+ $previousRev = Revision::newFromTitle( $title, $previousRevId );
+
+ $diffText = '';
+
+ if ( $latestRev && $previousRev ) {
+ $latest = ContentHandler::getContentText( $latestRev->getContent() );
+ $previous = ContentHandler::getContentText( $previousRev->getContent() );
+
+ if ( $previous !== $latest ) {
+ $diff = new DifferenceEngine;
+
+ if ( method_exists( 'DifferenceEngine', 'setTextLanguage' ) ) {
+ $diff->setTextLanguage( $this->getTargetLanguage() );
+ }
+
+ $oldContent = ContentHandler::makeContent( $previous, $diff->getTitle() );
+ $newContent = ContentHandler::makeContent( $latest, $diff->getTitle() );
+
+ $diff->setContent( $oldContent, $newContent );
+ $diff->setReducedLineNumbers();
+ $diff->showDiffStyle();
+ $diffText = $diff->getDiff( false, false );
+ }
+ }
+
+ if ( !$latestRev ) {
+ return null;
+ }
+
+ $context = RequestContext::getMain();
+ $user = $latestRev->getUserText( Revision::FOR_THIS_USER, $context->getUser() );
+ $comment = $latestRev->getComment();
+
+ if ( $diffText === '' ) {
+ if ( strval( $comment ) !== '' ) {
+ $text = $context->msg( 'translate-dynagroup-byc', $user, $comment )->escaped();
+ } else {
+ $text = $context->msg( 'translate-dynagroup-by', $user )->escaped();
+ }
+ } else {
+ if ( strval( $comment ) !== '' ) {
+ $text = $context->msg( 'translate-dynagroup-lastc', $user, $comment )->escaped();
+ } else {
+ $text = $context->msg( 'translate-dynagroup-last', $user )->escaped();
+ }
+ }
+
+ return TranslateUtils::fieldset(
+ $text,
+ $diffText,
+ array( 'class' => 'mw-sp-translate-latestchange' )
+ );
+ }
+
+ /**
+ * @param $label string
+ * @return string
+ */
+ protected static function legend( $label ) {
+ # Float it to the opposite direction
+ return Html::rawElement( 'div', array( 'class' => 'mw-translate-legend' ), $label );
+ }
+
+ /**
+ * @return string
+ */
+ protected static function clear() {
+ return Html::element( 'div', array( 'style' => 'clear:both;' ) );
+ }
+
+ /**
+ * @param $code string
+ * @return array
+ */
+ protected static function getFallbacks( $code ) {
+ global $wgTranslateLanguageFallbacks;
+
+ // User preference has the final say
+ $user = RequestContext::getMain()->getUser();
+ $preference = $user->getOption( 'translate-editlangs' );
+ if ( $preference !== 'default' ) {
+ $fallbacks = array_map( 'trim', explode( ',', $preference ) );
+ foreach ( $fallbacks as $k => $v ) {
+ if ( $v === $code ) {
+ unset( $fallbacks[$k] );
+ }
+ }
+
+ return $fallbacks;
+ }
+
+ // Global configuration settings
+ $fallbacks = array();
+ if ( isset( $wgTranslateLanguageFallbacks[$code] ) ) {
+ $fallbacks = (array)$wgTranslateLanguageFallbacks[$code];
+ }
+
+ $list = Language::getFallbacksFor( $code );
+ array_pop( $list ); // Get 'en' away from the end
+ $fallbacks = array_merge( $list, $fallbacks );
+
+ return array_unique( $fallbacks );
+ }
+
+ /**
+ * @return null|string
+ */
+ public function getLazySuggestionBox() {
+ $this->mustBeKnownMessage();
+ if ( !$this->handle->getCode() ) {
+ return null;
+ }
+
+ $url = SpecialPage::getTitleFor( 'Translate', 'editpage' )->getLocalUrl( array(
+ 'suggestions' => 'only',
+ 'page' => $this->handle->getTitle()->getPrefixedDbKey(),
+ 'loadgroup' => $this->group->getId(),
+ ) );
+ $url = Xml::encodeJsVar( $url );
+
+ $id = Sanitizer::escapeId( 'tm-lazysug-' . $this->dialogID() );
+ $target = self::jQueryPathId( $id );
+
+ $script = Html::inlineScript( "jQuery($target).load($url)" );
+ $spinner = Html::element( 'div', array( 'class' => 'mw-ajax-loader' ) );
+
+ return Html::rawElement( 'div', array( 'id' => $id ), $script . $spinner );
+ }
+
+ /**
+ * @return string
+ */
+ public function dialogID() {
+ $hash = sha1( $this->handle->getTitle()->getPrefixedDbKey() );
+
+ return substr( $hash, 0, 4 );
+ }
+
+ /**
+ * @param string $source jQuery selector for element containing the source
+ * @param string|Language $lang Language code or object
+ * @return string
+ */
+ public function adder( $source, $lang ) {
+ if ( !$this->editMode ) {
+ return '';
+ }
+ $target = self::jQueryPathId( $this->getTextareaId() );
+ $source = self::jQueryPathId( $source );
+ $dir = wfGetLangObj( $lang )->getDir();
+ $params = array(
+ 'onclick' => "jQuery($target).val(jQuery($source).text()).focus(); return false;",
+ 'href' => '#',
+ 'title' => wfMessage( 'translate-use-suggestion' )->text(),
+ 'class' => 'mw-translate-adder mw-translate-adder-' . $dir,
+ );
+
+ return Html::element( 'a', $params, '↓' );
+ }
+
+ /**
+ * @param $id string|int
+ * @param $text string
+ * @return string
+ */
+ public function wrapInsert( $id, $text ) {
+ return Html::element( 'pre', array( 'id' => $id, 'style' => 'display: none;' ), $text );
+ }
+
+ /**
+ * @param $text string
+ * @return string
+ */
+ public function suggestionField( $text ) {
+ static $counter = 0;
+
+ $code = $this->getTargetLanguage();
+
+ $counter++;
+ $dialogID = $this->dialogID();
+ $id = Sanitizer::escapeId( "tmsug-$dialogID-$counter" );
+ $contents = Html::rawElement( 'div', array( 'lang' => $code,
+ 'dir' => Language::factory( $code )->getDir() ),
+ TranslateUtils::convertWhiteSpaceToHTML( $text ) );
+ $contents .= $this->wrapInsert( $id, $text );
+
+ return $this->adder( $id, $code ) . "\n" . $contents;
+ }
+
+ /**
+ * Ajax-enabled message editing link.
+ * @param $target Title: Title of the target message.
+ * @param $text String: Link text for Linker::link()
+ * @return string HTML link
+ */
+ public static function ajaxEditLink( $target, $text ) {
+ $handle = new MessageHandle( $target );
+ $groupId = MessageIndex::getPrimaryGroupId( $handle );
+
+ $params = array();
+ $params['action'] = 'edit';
+ $params['loadgroup'] = $groupId;
+
+ $jsEdit = TranslationEditPage::jsEdit( $target, $groupId, 'dialog' );
+
+ return Linker::link( $target, $text, $jsEdit, $params );
+ }
+
+ /**
+ * Escapes $id such that it can be used in jQuery selector.
+ * @param $id string
+ * @return string
+ */
+ public static function jQueryPathId( $id ) {
+ $id = preg_replace( '/[^A-Za-z0-9_-]/', '\\\\$0', $id );
+
+ return Xml::encodeJsVar( "#$id" );
+ }
+
+ /**
+ * How many failures during failure period need to happen to consider
+ * the service being temporarily off-line. */
+ protected static $serviceFailureCount = 5;
+ /**
+ * How long after the last detected failure we clear the status and
+ * try again.
+ */
+ protected static $serviceFailurePeriod = 900;
+
+ /**
+ * Checks whether the given service has exceeded failure count
+ * @param $service string
+ * @throws TranslationHelperException
+ */
+ public static function checkTranslationServiceFailure( $service ) {
+ $key = wfMemckey( "translate-service-$service" );
+ $value = wfGetCache( CACHE_ANYTHING )->get( $key );
+ if ( !is_string( $value ) ) {
+ return;
+ }
+ list( $count, $failed ) = explode( '|', $value, 2 );
+
+ if ( $failed + ( 2 * self::$serviceFailurePeriod ) < wfTimestamp() ) {
+ if ( $count >= self::$serviceFailureCount ) {
+ error_log( "Translation service $service (was) restored" );
+ }
+ wfGetCache( CACHE_ANYTHING )->delete( $key );
+
+ return;
+ } elseif ( $failed + self::$serviceFailurePeriod < wfTimestamp() ) {
+ /* We are in suspicious mode and one failure is enough to update
+ * failed timestamp. If the service works however, let's use it.
+ * Previous failures are forgotten after another failure period
+ * has passed */
+ return;
+ }
+
+ if ( $count >= self::$serviceFailureCount ) {
+ throw new TranslationHelperException( "web service $service is temporarily disabled" );
+ }
+ }
+
+ /**
+ * Increases the failure count for a given service
+ * @param $service
+ * @throws TranslationHelperException
+ */
+ public static function reportTranslationServiceFailure( $service ) {
+ $key = wfMemckey( "translate-service-$service" );
+ $value = wfGetCache( CACHE_ANYTHING )->get( $key );
+ if ( !is_string( $value ) ) {
+ $count = 0;
+ } else {
+ list( $count, ) = explode( '|', $value, 2 );
+ }
+
+ $count += 1;
+ $failed = wfTimestamp();
+ wfGetCache( CACHE_ANYTHING )->set( $key, "$count|$failed", self::$serviceFailurePeriod * 5 );
+
+ if ( $count == self::$serviceFailureCount ) {
+ error_log( "Translation service $service suspended" );
+ } elseif ( $count > self::$serviceFailureCount ) {
+ error_log( "Translation service $service still suspended" );
+ }
+
+ throw new TranslationHelperException( "web service $service failed to provide valid response" );
+ }
+
+ public static function addModules( OutputPage $out ) {
+ $modules = array( 'ext.translate.quickedit' );
+ wfRunHooks( 'TranslateBeforeAddModules', array( &$modules ) );
+ $out->addModules( $modules );
+
+ // Might be needed, but ajax doesn't load it
+ // Globals :(
+ $diff = new DifferenceEngine;
+ $diff->showDiffStyle();
+ }
+
+ /// @since 2012-01-04
+ protected function mustBeKnownMessage() {
+ if ( !$this->group ) {
+ throw new TranslationHelperException( 'unknown group' );
+ }
+ }
+
+ /// @since 2012-01-04
+ protected function mustBeTranslation() {
+ if ( !$this->handle->getCode() ) {
+ throw new TranslationHelperException( 'editing source language' );
+ }
+ }
+
+ /// @since 2012-01-04
+ protected function mustHaveDefinition() {
+ if ( strval( $this->getDefinition() ) === '' ) {
+ throw new TranslationHelperException( 'message does not have definition' );
+ }
+ }
+}
+
+/**
+ * Translation helpers can throw this exception when they cannot do
+ * anything useful with the current message. This helps in debugging
+ * why some fields are not shown. See also helpers in TranslationHelpers:
+ * - mustBeKnownMessage()
+ * - mustBeTranslation()
+ * - mustHaveDefinition()
+ * @since 2012-01-04 (Renamed in 2012-07-24 to fix typo in name)
+ */
+class TranslationHelperException extends MWException {
+}
diff --git a/MLEB/Translate/utils/TranslationStats.php b/MLEB/Translate/utils/TranslationStats.php
new file mode 100644
index 00000000..0a918f47
--- /dev/null
+++ b/MLEB/Translate/utils/TranslationStats.php
@@ -0,0 +1,61 @@
+<?php
+/**
+ * Contains class which offers functionality for statistics reporting.
+ *
+ * @file
+ * @author Niklas Laxström
+ * @author Siebrand Mazeland
+ * @copyright Copyright © 2010-2013, Niklas Laxström, Siebrand Mazeland
+ * @license GPL-2.0+
+ */
+
+/**
+ * Contains methods that provide statistics for message groups.
+ *
+ * @ingroup Stats
+ */
+class TranslationStats {
+ /**
+ * Returns translated percentage for message group in given
+ * languages
+ *
+ * @param $group \string Unique key identifying the group
+ * @param $languages \array List of language codes
+ * @param bool|int $threshold \int Minimum required percentage translated to
+ * return. Other given language codes will not be returned.
+ * @param $simple \bool Return only codes or code/pecentage pairs
+ *
+ * @return \array Array of key value pairs code (string)/percentage
+ * (float) or array of codes, depending on $simple
+ */
+ public static function getPercentageTranslated( $group, $languages, $threshold = false,
+ $simple = false
+ ) {
+ $stats = array();
+
+ $g = MessageGroups::singleton()->getGroup( $group );
+
+ $collection = $g->initCollection( 'en' );
+ foreach ( $languages as $code ) {
+ $collection->resetForNewLanguage( $code );
+ // Initialise messages
+ $collection->filter( 'ignored' );
+ $collection->filter( 'optional' );
+ // Store the count of real messages for later calculation.
+ $total = count( $collection );
+ $collection->filter( 'translated', false );
+ $translated = count( $collection );
+
+ $translatedPercentage = ( $translated * 100 ) / $total;
+ if ( $translatedPercentage >= $threshold ) {
+ if ( $simple ) {
+ $stats[] = $code;
+ } else {
+ $stats[$code] = $translatedPercentage;
+ }
+ }
+ }
+
+ return $stats;
+ }
+}
diff --git a/MLEB/Translate/utils/TuxMessageTable.php b/MLEB/Translate/utils/TuxMessageTable.php
new file mode 100644
index 00000000..bc77fa68
--- /dev/null
+++ b/MLEB/Translate/utils/TuxMessageTable.php
@@ -0,0 +1,72 @@
+<?php
+
+class TuxMessageTable extends ContextSource {
+ protected $group;
+ protected $language;
+
+ public function __construct( IContextSource $context, MessageGroup $group, $language ) {
+ $this->setContext( $context );
+ $this->group = $group;
+ $this->language = $language;
+ }
+
+ public function fullTable() {
+ $modules = array( 'ext.translate.editor' );
+ wfRunHooks( 'TranslateBeforeAddModules', array( &$modules ) );
+ $this->getOutput()->addModules( $modules );
+
+ $sourceLang = Language::factory( $this->group->getSourceLanguage() );
+ $targetLang = Language::factory( $this->language );
+ $batchSize = 100;
+
+ $list = Html::element( 'div', array(
+ 'class' => 'row tux-messagelist',
+ 'data-grouptype' => get_class( $this->group ),
+ 'data-sourcelangcode' => $sourceLang->getCode(),
+ 'data-sourcelangdir' => $sourceLang->getDir(),
+ 'data-targetlangcode' => $targetLang->getCode(),
+ 'data-targetlangdir' => $targetLang->getDir(),
+ ) );
+
+ $groupId = htmlspecialchars( $this->group->getId() );
+ $msg = $this->msg( 'tux-messagetable-loading-messages' )
+ ->numParams( $batchSize )
+ ->escaped();
+
+ $loader = <<<HTML
+<div class="tux-messagetable-loader hide" data-messagegroup="$groupId" data-pagesize="$batchSize">
+ <span class="tux-loading-indicator"></span>
+ <div class="tux-messagetable-loader-count"></div>
+ <div class="tux-messagetable-loader-more">$msg</div>
+</div>
+HTML;
+
+ $hideOwn = $this->msg( 'tux-editor-proofreading-hide-own-translations' )->escaped();
+ $clearTranslated = $this->msg( 'tux-editor-clear-translated' )->escaped();
+ $modeTranslate = $this->msg( 'tux-editor-translate-mode' )->escaped();
+ $modePage = $this->msg( 'tux-editor-page-mode' )->escaped();
+ $modeProofread = $this->msg( 'tux-editor-proofreading-mode' )->escaped();
+
+ $actionbar = <<<HTML
+<div class="tux-action-bar row">
+ <div class="three columns tux-message-list-statsbar" data-messagegroup="$groupId"></div>
+ <div class="three columns text-center">
+ <button class="toggle button tux-proofread-own-translations-button hide-own hide">
+ $hideOwn
+ </button>
+ <button class="toggle button tux-editor-clear-translated hide">$clearTranslated</button>
+ </div>
+ <div class="six columns tux-view-switcher text-center">
+ <button class="toggle button down translate-mode-button">$modeTranslate
+ </button><button class="toggle button down page-mode-button">$modePage
+ </button><button class="toggle button hide proofread-mode-button">$modeProofread
+ </button>
+ </div>
+</div>
+HTML;
+
+ // Actual message table is fetched and rendered at client side. This just provides
+ // the loader and action bar.
+ return $list . $loader . $actionbar;
+ }
+}
diff --git a/MLEB/Translate/utils/UserToggles.php b/MLEB/Translate/utils/UserToggles.php
new file mode 100644
index 00000000..030a3024
--- /dev/null
+++ b/MLEB/Translate/utils/UserToggles.php
@@ -0,0 +1,109 @@
+<?php
+/**
+ * Contains classes for addition of extension specific preference settings.
+ *
+ * @file
+ * @author Siebrand Mazeland
+ * @author Niklas Laxström
+ * @copyright Copyright © 2008-2010 Siebrand Mazeland, Niklas Laxström
+ * @license GPL-2.0+
+ */
+
+/**
+ * Class to add Translate specific preference settings.
+ */
+class TranslatePreferences {
+ /**
+ * Add 'translate-pref-nonewsletter' preference.
+ * This is most probably specific to translatewiki.net. Can be enabled
+ * with $wgTranslateNewsletterPreference.
+ *
+ * @param $user User
+ * @param $preferences array
+ * @return bool true
+ */
+ public static function onGetPreferences( $user, &$preferences ) {
+ global $wgTranslateNewsletterPreference;
+
+ if ( !$wgTranslateNewsletterPreference ) {
+ return true;
+ }
+
+ global $wgEnableEmail, $wgEnotifRevealEditorAddress;
+
+ // Only show if email is enabled and user has a confirmed email address.
+ if ( $wgEnableEmail && $user->isEmailConfirmed() ) {
+ // 'translate-pref-nonewsletter' is used as opt-out for
+ // users with a confirmed email address
+ $prefs = array(
+ 'translate-nonewsletter' => array(
+ 'type' => 'toggle',
+ 'section' => 'personal/email',
+ 'label-message' => 'translate-pref-nonewsletter'
+ )
+ );
+
+ // Add setting after 'enotifrevealaddr'.
+ $preferences = wfArrayInsertAfter( $preferences, $prefs,
+ $wgEnotifRevealEditorAddress ? 'enotifrevealaddr' : 'enotifminoredits' );
+ }
+
+ return true;
+ }
+
+ /**
+ * Add 'translate-editlangs' preference.
+ * These are the languages also shown when translating.
+ *
+ * @param User $user
+ * @param array $preferences
+ * @return bool true
+ */
+ public static function translationAssistLanguages( User $user, &$preferences ) {
+ // Get selector.
+ $select = self::languageSelector();
+ // Set target ID.
+ $select->setTargetId( 'mw-input-translate-editlangs' );
+ // Get available languages.
+ $languages = Language::fetchLanguageNames();
+
+ $preferences['translate-editlangs'] = array(
+ 'class' => 'HTMLJsSelectToInputField',
+ 'section' => 'editing/translate',
+ 'label-message' => 'translate-pref-editassistlang',
+ 'help-message' => 'translate-pref-editassistlang-help',
+ 'select' => $select,
+ 'valid-values' => array_keys( $languages ),
+ 'name' => 'translate-editlangs',
+ );
+
+ return true;
+ }
+
+ /**
+ * JavsScript selector for language codes.
+ * @return JsSelectToInput
+ */
+ protected static function languageSelector() {
+ if ( is_callable( array( 'LanguageNames', 'getNames' ) ) ) {
+ $lang = RequestContext::getMain()->getLanguage();
+ $languages = LanguageNames::getNames( $lang->getCode(),
+ LanguageNames::FALLBACK_NORMAL
+ );
+ } else {
+ $languages = Language::fetchLanguageNames();
+ }
+
+ ksort( $languages );
+
+ $selector = new XmlSelect( 'mw-language-selector', 'mw-language-selector' );
+ foreach ( $languages as $code => $name ) {
+ $selector->addOption( "$code - $name", $code );
+ }
+
+ $jsSelect = new JsSelectToInput( $selector );
+ $jsSelect->setSourceId( 'mw-language-selector' );
+
+ return $jsSelect;
+ }
+}
diff --git a/MLEB/Translate/webservices/ApertiumWebService.php b/MLEB/Translate/webservices/ApertiumWebService.php
new file mode 100644
index 00000000..0e421a6c
--- /dev/null
+++ b/MLEB/Translate/webservices/ApertiumWebService.php
@@ -0,0 +1,90 @@
+<?php
+/**
+ * Contains a class for querying external translation service.
+ *
+ * @file
+ * @author Niklas Laxström
+ * @copyright Copyright © 2010-2013 Niklas Laxström
+ * @license GPL-2.0+
+ */
+
+/**
+ * Implements support Apetrium translator api.
+ * @see http://wiki.apertium.org/wiki/Apertium_web_service
+ * @ingroup TranslationWebService
+ * @since 2013-01-01
+ */
+class ApertiumWebService extends TranslationWebService {
+ protected function mapCode( $code ) {
+ return str_replace( '-', '_', wfBCP47( $code ) );
+ }
+
+ protected function doPairs() {
+ $pairs = array();
+ $json = Http::get( $this->config['pairs'], $this->config['timeout'] );
+ $response = FormatJson::decode( $json );
+
+ if ( !is_object( $response ) ) {
+ $error = 'Malformed reply from remote server: ' . strval( $json );
+ throw new TranslationWebServiceException( $error );
+ }
+
+ foreach ( $response->responseData as $pair ) {
+ $source = $pair->sourceLanguage;
+ $target = $pair->targetLanguage;
+ $pairs[$source][$target] = true;
+ }
+
+ return $pairs;
+ }
+
+ protected function doRequest( $text, $from, $to ) {
+ $service = $this->service;
+
+ $text = trim( $text );
+ $text = $this->wrapUntranslatable( $text );
+
+ $options = array();
+ $options['timeout'] = $this->config['timeout'];
+ $params = array(
+ 'q' => $text,
+ 'langpair' => "$from|$to",
+ 'x-application' => "Translate " . TRANSLATE_VERSION . ")",
+ );
+
+ if ( $this->config['key'] ) {
+ $params['key'] = $this->config['key'];
+ }
+
+ $url = $this->config['url'] . '?' . wfArrayToCgi( $params );
+
+ $req = MWHttpRequest::factory( $url, $options );
+ wfProfileIn( 'TranslateWebServiceRequest-' . $this->service );
+ $status = $req->execute();
+ wfProfileOut( 'TranslateWebServiceRequest-' . $this->service );
+
+ if ( !$status->isOK() ) {
+ $error = $req->getContent();
+ // Most likely a timeout or other general error
+ throw new TranslationWebServiceException(
+ "Http::get failed:\n" .
+ "* " . serialize( $error ) . "\n" .
+ "* " . serialize( $status )
+ );
+ }
+
+ $response = FormatJson::decode( $req->getContent() );
+ if ( !is_object( $response ) ) {
+ throw new TranslationWebServiceException( serialize( $req->getContent() ) );
+ } elseif ( $response->responseStatus !== 200 ) {
+ $error = "(HTTP {$response->responseStatus}) with ($service ($from|$to)): " .
+ $response->responseDetails;
+ throw new TranslationWebServiceException( $error );
+ }
+
+ $sug = Sanitizer::decodeCharReferences( $response->responseData->translatedText );
+ $sug = $this->unwrapUntranslatable( $sug );
+
+ return trim( $sug );
+ }
+}
diff --git a/MLEB/Translate/webservices/MicrosoftWebService.php b/MLEB/Translate/webservices/MicrosoftWebService.php
new file mode 100644
index 00000000..391facee
--- /dev/null
+++ b/MLEB/Translate/webservices/MicrosoftWebService.php
@@ -0,0 +1,113 @@
+<?php
+/**
+ * Contains a class for querying external translation service.
+ *
+ * @file
+ * @author Niklas Laxström
+ * @copyright Copyright © 2010-2013 Niklas Laxström
+ * @license GPL-2.0+
+ */
+
+/**
+ * Implements support for Microsoft translation api v2.
+ * @see http://msdn.microsoft.com/en-us/library/ff512421.aspx
+ * @ingroup TranslationWebService
+ * @since 2013-01-01
+ */
+class MicrosoftWebService extends TranslationWebService {
+ protected function mapCode( $code ) {
+ $map = array(
+ 'zh-hant' => 'zh-CHT',
+ 'zh-hans' => 'zh-CHS',
+ );
+
+ return isset( $map[$code] ) ? $map[$code] : $code;
+ }
+
+ protected function doPairs() {
+ if ( !isset( $this->config['key'] ) ) {
+ throw new TranslationWebServiceException( 'API key is not set' );
+ }
+
+ $options = array();
+ $options['method'] = 'GET';
+ $options['timeout'] = $this->config['timeout'];
+
+ $params = array(
+ 'appId' => $this->config['key'],
+ );
+
+ $url = 'http://api.microsofttranslator.com/V2/Http.svc/GetLanguagesForTranslate?';
+ $url .= wfArrayToCgi( $params );
+
+ $req = MWHttpRequest::factory( $url, $options );
+ wfProfileIn( 'TranslateWebServiceRequest-' . $this->service . '-pairs' );
+ $status = $req->execute();
+ wfProfileOut( 'TranslateWebServiceRequest-' . $this->service . '-pairs' );
+
+ if ( !$status->isOK() ) {
+ $error = $req->getContent();
+ // Most likely a timeout or other general error
+ $exception = 'Http::get failed:' . serialize( $error ) . serialize( $status );
+ throw new TranslationWebServiceException( $exception );
+ }
+
+ $xml = simplexml_load_string( $req->getContent() );
+
+ $languages = array();
+ foreach ( $xml->string as $language ) {
+ $languages[] = strval( $language );
+ }
+
+ // Let's make a cartesian product, assuming we can translate from any
+ // language to any language
+ $pairs = array();
+ foreach ( $languages as $from ) {
+ foreach ( $languages as $to ) {
+ $pairs[$from][$to] = true;
+ }
+ }
+
+ return $pairs;
+ }
+
+ protected function doRequest( $text, $from, $to ) {
+ if ( !isset( $this->config['key'] ) ) {
+ throw new TranslationWebServiceException( 'API key is not set' );
+ }
+
+ $text = trim( $text );
+ $text = $this->wrapUntranslatable( $text );
+
+ $options = array();
+ $options['timeout'] = $this->config['timeout'];
+
+ $params = array(
+ 'text' => $text,
+ 'from' => $from,
+ 'to' => $to,
+ 'appId' => $this->config['key'],
+ );
+
+ $url = 'http://api.microsofttranslator.com/V2/Http.svc/Translate?';
+ $url .= wfArrayToCgi( $params );
+
+ $req = MWHttpRequest::factory( $url, $options );
+ wfProfileIn( 'TranslateWebServiceRequest-' . $this->service );
+ $status = $req->execute();
+ wfProfileOut( 'TranslateWebServiceRequest-' . $this->service );
+
+ if ( !$status->isOK() ) {
+ $error = $req->getContent();
+ // Most likely a timeout or other general error
+ $exception = 'Http::get failed: ' . $url . serialize( $error ) . serialize( $status );
+ throw new TranslationWebServiceException( $exception );
+ }
+
+ $ret = $req->getContent();
+ $text = preg_replace( '~<string.*>(.*)</string>~', '\\1', $ret );
+ $text = Sanitizer::decodeCharReferences( $text );
+
+ return $this->unwrapUntranslatable( $text );
+ }
+}
diff --git a/MLEB/Translate/webservices/RemoteTTMServerWebService.php b/MLEB/Translate/webservices/RemoteTTMServerWebService.php
new file mode 100644
index 00000000..3fccee0c
--- /dev/null
+++ b/MLEB/Translate/webservices/RemoteTTMServerWebService.php
@@ -0,0 +1,80 @@
+<?php
+/**
+ * Contains a class for querying external translation service.
+ *
+ * @file
+ * @author Niklas Laxström
+ * @copyright Copyright © 2010-2013 Niklas Laxström
+ * @license GPL-2.0+
+ */
+
+/**
+ * Implements support for ttmserver via MediaWiki API.
+ * @see https://www.mediawiki.org/wiki/Help:Extension:Translate/Translation_memories
+ * @ingroup TranslationWebService
+ * @since 2013-01-01
+ */
+class RemoteTTMServerWebService extends TranslationWebService {
+ public function getSuggestions( $translations, $from, $to ) {
+ if ( $this->checkTranslationServiceFailure() ) {
+ return array();
+ }
+
+ try {
+ $text = $translations[$from];
+
+ return $this->doRequest( $text, $from, $to );
+ } catch ( Exception $e ) {
+ $this->reportTranslationServiceFailure( $e );
+
+ return array();
+ }
+ }
+
+ protected function mapCode( $code ) {
+ return $code; // Unused
+ }
+
+ protected function doPairs() {
+ return null; // Unused
+ }
+
+ protected function doRequest( $text, $from, $to ) {
+ $params = array(
+ 'format' => 'json',
+ 'action' => 'ttmserver',
+ 'sourcelanguage' => $from,
+ 'targetlanguage' => $to,
+ 'text' => $text,
+ '*', // Because we hate IE
+ );
+
+ $url = $this->config['url'] . '?';
+ $url .= wfArrayToCgi( $params );
+ $req = MWHttpRequest::factory( $url );
+ wfProfileIn( 'TranslateWebServiceRequest-' . $this->service );
+ $status = $req->execute();
+ wfProfileOut( 'TranslateWebServiceRequest-' . $this->service );
+ $response = $req->getContent();
+
+ if ( !$status->isOK() ) {
+ // Most likely a timeout or other general error
+ throw new TranslationWebServiceException(
+ "Http::get failed:\n" .
+ "* " . serialize( $response ) . "\n" .
+ "* " . serialize( $status )
+ );
+ }
+
+ $parsed = FormatJson::decode( $response, true );
+ if ( !is_array( $parsed ) ) {
+ throw new TranslationWebServiceException( serialize( $response ) );
+ }
+
+ if ( !isset( $parsed['ttmserver'] ) ) {
+ throw new TranslationWebServiceException( 'Unexpected reply from remote server' );
+ }
+
+ return $parsed['ttmserver'];
+ }
+}
diff --git a/MLEB/Translate/webservices/TranslationWebService.php b/MLEB/Translate/webservices/TranslationWebService.php
new file mode 100644
index 00000000..ea283ad5
--- /dev/null
+++ b/MLEB/Translate/webservices/TranslationWebService.php
@@ -0,0 +1,281 @@
+<?php
+/**
+ * Contains code related to webs ervice support.
+ *
+ * @file
+ * @author Niklas Laxström
+ * @copyright Copyright © 2010-2013 Niklas Laxström
+ * @license GPL-2.0+
+ */
+
+/**
+ * Multipurpose class:
+ * - 1) Interface for web services.
+ * - 2) Source text picking logic.
+ * - 3) Factory class.
+ * - 4) Service failure tracking and suspending.
+ * @since 2013-01-01
+ * @defgroup TranslationWebService Translation Web Services
+ */
+abstract class TranslationWebService {
+ /* Public api */
+
+ /**
+ * Get a webservice handler.
+ *
+ * @see $wgTranslateTranslationServices
+ * @param string $name Name of the service.
+ * @param array $config
+ * @return TranslationWebService|null
+ */
+ public static function factory( $name, $config ) {
+ $handlers = array(
+ 'microsoft' => 'MicrosoftWebService',
+ 'apertium' => 'ApertiumWebService',
+ 'yandex' => 'YandexWebService',
+ 'ttmserver' => 'RemoteTTMServerWebService',
+ );
+
+ if ( !isset( $config['timeout'] ) ) {
+ $config['timeout'] = 3;
+ }
+
+ if ( isset( $handlers[$config['type']] ) ) {
+ $class = $handlers[$config['type']];
+
+ return new $class( $name, $config );
+ }
+
+ return null;
+ }
+
+ /**
+ * Do the only supported thing for web services: get a suggestion for
+ * translation. Prefers source language as input for suggestions.
+ *
+ * @param array $translations List of all translations listed by language code.
+ * @param string $sourceLanguage Language code as used by MediaWiki.
+ * @param string $targetLanguage Language code as used by MediaWiki.
+ * @return array[] The returned suggestion arrays contain the following keys:
+ * - value: the suggestion
+ * - language: the language of the suggestion (=$targetLanguage)
+ * - source_text: the text used as input for the web service
+ * - source_language: the language of the text used as input
+ * - service: name of the web service
+ */
+ public function getSuggestions( $translations, $sourceLanguage, $targetLanguage ) {
+ if ( $this->checkTranslationServiceFailure() ) {
+ return array();
+ }
+
+ $from = $this->mapCode( $sourceLanguage );
+ $to = $this->mapCode( $targetLanguage );
+
+ try {
+ $results = array();
+
+ // Try to use the source language when possible.
+ $supported = $this->getSupportedLanguagePairs();
+ if ( isset( $supported[$from][$to] ) && isset( $translations[$from] ) ) {
+ // Delete all the other languages.
+ // Use the unmapped code to avoid double mapping
+ $translations = array( $sourceLanguage => $translations[$from] );
+ }
+
+ // Loop of the the translations we have to see which can be used as source
+ // @todo: Support setting priority of languages like Yandex used to have
+ foreach ( $translations as $language => $text ) {
+ $from = $this->mapCode( $language );
+
+ if ( isset( $supported[$from][$to] ) ) {
+ $sug = $this->doRequest( $text, $from, $to );
+ if ( strval( $sug === '' ) ) {
+ continue;
+ }
+
+ $results[] = array(
+ 'target' => $sug,
+ 'service' => $this->service,
+ 'source_language' => $language,
+ 'source' => $text,
+ );
+ }
+
+ if ( count( $results ) >= 3 ) {
+ break;
+ }
+ }
+
+ return $results;
+ } catch ( Exception $e ) {
+ $this->reportTranslationServiceFailure( $e );
+
+ return array();
+ }
+ }
+
+ /* Service api */
+
+ /**
+ * Map a MediaWiki (almost standard) language code to the code used by the
+ * translation service.
+ *
+ * @param string $code MediaWiki language code.
+ * @return string Translation service language code.
+ */
+ abstract protected function mapCode( $code );
+
+ /**
+ * Get the list of supported language pairs for the web service. The codes
+ * should be the ones used by the service. Caching is handled by the public
+ * getSupportedLanguagePairs.
+ *
+ * @return array $list[source language][target language] = true
+ */
+ abstract protected function doPairs();
+
+ /**
+ * Get the suggestion. See getSuggestions for the public method.
+ *
+ * @param string $text Text to translate.
+ * @param string $from Language code of the text, as used by the service.
+ * @param string $to Language code of the translation, as used by the service.
+ * @return string Translation suggestion.
+ */
+ abstract protected function doRequest( $text, $from, $to );
+
+ /* Default implementation */
+
+ /**
+ * @var string Name of this webservice.
+ */
+ protected $service;
+
+ /**
+ * @var array
+ */
+ protected $config;
+
+ protected function __construct( $service, $config ) {
+ $this->service = $service;
+ $this->config = $config;
+ }
+
+ /**
+ * @see doPairs
+ */
+ protected function getSupportedLanguagePairs() {
+ $key = wfMemckey( 'translate-tmsug-pairs-' . $this->service );
+ $pairs = wfGetCache( CACHE_ANYTHING )->get( $key );
+ if ( !is_array( $pairs ) ) {
+ $pairs = $this->doPairs();
+ // Cache the result for a day
+ wfGetCache( CACHE_ANYTHING )->set( $key, $pairs, 60 * 60 * 24 );
+ }
+
+ return $pairs;
+ }
+
+ /**
+ * Some mangling that tries to keep some parts of the message unmangled
+ * by the translation service. Most of them support either class=notranslate
+ * or translate=no.
+ */
+ protected function wrapUntranslatable( $text ) {
+ $pattern = '~%[^% ]+%|\$\d|{VAR:[^}]+}|{?{(PLURAL|GRAMMAR|GENDER):[^|]+\||%(\d\$)?[sd]~';
+ $text = str_replace( "\n", "!N!", $text );
+ $wrap = '<span class="notranslate" translate="no">\0</span>';
+ $text = preg_replace( $pattern, $wrap, $text );
+
+ return $text;
+ }
+
+ /**
+ * Undo the hopyfully untouched mangling done by wrapUntranslatable.
+ */
+ protected function unwrapUntranslatable( $text ) {
+ $pattern = '~<span class="notranslate" translate="no">(.*?)</span>~';
+ $text = str_replace( '!N!', "\n", $text );
+ $text = preg_replace( $pattern, '\1', $text );
+
+ return $text;
+ }
+
+ /* Failure handling and suspending */
+
+ /**
+ * How many failures during failure period need to happen to consider
+ * the service being temporarily off-line.
+ */
+ protected $serviceFailureCount = 5;
+ /**
+ * How long after the last detected failure we clear the status and
+ * try again.
+ */
+ protected $serviceFailurePeriod = 900;
+
+ /**
+ * Checks whether the service has exceeded failure count
+ * @return bool
+ */
+ public function checkTranslationServiceFailure() {
+ $service = $this->service;
+ $key = wfMemckey( "translate-service-$service" );
+ $value = wfGetCache( CACHE_ANYTHING )->get( $key );
+ if ( !is_string( $value ) ) {
+ return false;
+ }
+ list( $count, $failed ) = explode( '|', $value, 2 );
+
+ if ( $failed + ( 2 * $this->serviceFailurePeriod ) < wfTimestamp() ) {
+ if ( $count >= $this->serviceFailureCount ) {
+ wfDebugLog( 'translationservices', "Translation service $service (was) restored" );
+ }
+ wfGetCache( CACHE_ANYTHING )->delete( $key );
+
+ return false;
+ } elseif ( $failed + $this->serviceFailurePeriod < wfTimestamp() ) {
+ /* We are in suspicious mode and one failure is enough to update
+ * failed timestamp. If the service works however, let's use it.
+ * Previous failures are forgotten after another failure period
+ * has passed */
+ return false;
+ }
+
+ // Check the failure count against the limit
+ return $count >= $this->serviceFailureCount;
+ }
+
+ /**
+ * Increases the failure count for this service
+ */
+ protected function reportTranslationServiceFailure( Exception $e ) {
+ $service = $this->service;
+ wfDebugLog(
+ 'translationservices',
+ "Translation service $service problem: " . $e->getMessage()
+ );
+
+ $key = wfMemckey( "translate-service-$service" );
+ $value = wfGetCache( CACHE_ANYTHING )->get( $key );
+ if ( !is_string( $value ) ) {
+ $count = 0;
+ } else {
+ list( $count, ) = explode( '|', $value, 2 );
+ }
+
+ $count += 1;
+ $failed = wfTimestamp();
+ wfGetCache( CACHE_ANYTHING )->set(
+ $key,
+ "$count|$failed",
+ $this->serviceFailurePeriod * 5
+ );
+
+ if ( $count == $this->serviceFailureCount ) {
+ wfDebugLog( 'translationservices', "Translation service $service suspended" );
+ } elseif ( $count > $this->serviceFailureCount ) {
+ wfDebugLog( 'translationservices', "Translation service $service still suspended" );
+ }
+ }
+}
diff --git a/MLEB/Translate/webservices/TranslationWebServiceException.php b/MLEB/Translate/webservices/TranslationWebServiceException.php
new file mode 100644
index 00000000..af5368ca
--- /dev/null
+++ b/MLEB/Translate/webservices/TranslationWebServiceException.php
@@ -0,0 +1,18 @@
+<?php
+/**
+ * Contains code related to web service support.
+ *
+ * @file
+ * @author Niklas Laxström
+ * @copyright Copyright © 2010-2013 Niklas Laxström
+ * @license GPL-2.0+
+ */
+
+/**
+ * Used to signal a failure in an external web service. If the web service has
+ * too many failures in a short period, it is suspended to avoid wasting time.
+ * @since 2013-01-01
+ * @ingroup TranslationWebService
+ */
+class TranslationWebServiceException extends MWException {
+}
diff --git a/MLEB/Translate/webservices/YandexWebService.php b/MLEB/Translate/webservices/YandexWebService.php
new file mode 100644
index 00000000..9a4a87df
--- /dev/null
+++ b/MLEB/Translate/webservices/YandexWebService.php
@@ -0,0 +1,106 @@
+<?php
+/**
+ * Contains a class for querying external translation service.
+ *
+ * @file
+ * @author Niklas Laxström
+ * @copyright Copyright © 2010-2013 Niklas Laxström
+ * @license GPL-2.0+
+ */
+
+/**
+ * Implements support for Yandex translation api v1.
+ * @see http://api.yandex.com/translate/
+ * @ingroup TranslationWebService
+ * @since 2013-01-01
+ */
+class YandexWebService extends TranslationWebService {
+ protected function mapCode( $code ) {
+ if ( $code === 'be-tarask' ) {
+ $code = 'be';
+ }
+ return $code;
+ }
+
+ protected function doPairs() {
+ if ( !isset( $this->config['key'] ) ) {
+ throw new TranslationWebServiceException( 'API key is not set' );
+ }
+
+ $pairs = array();
+
+ $params = array(
+ 'key' => $this->config['key'],
+ );
+
+ $url = $this->config['pairs'] . '?' . wfArrayToCgi( $params );
+ $json = Http::get( $url, $this->config['timeout'] );
+ $response = FormatJson::decode( $json );
+
+ if ( !is_object( $response ) ) {
+ $exception = 'Malformed reply from remote server: ' . strval( $json );
+ throw new TranslationWebServiceException( $exception );
+ }
+
+ foreach ( $response->dirs as $pair ) {
+ list( $source, $target ) = explode( '-', $pair );
+ $pairs[$source][$target] = true;
+ }
+
+ return $pairs;
+ }
+
+ protected function doRequest( $text, $from, $to ) {
+ if ( !isset( $this->config['key'] ) ) {
+ throw new TranslationWebServiceException( 'API key is not set' );
+ }
+
+ # http://api.yandex.com/translate/doc/dg/reference/translate.xml
+ if ( strlen( $text ) > 10000 ) {
+ throw new TranslationWebServiceException( 'Source text too long' );
+ }
+
+ $service = $this->service;
+
+ $text = trim( $text );
+ $text = $this->wrapUntranslatable( $text );
+
+ $options = array();
+ $options['timeout'] = $this->config['timeout'];
+ $options['method'] = 'POST';
+ $options['postData'] = array(
+ 'key' => $this->config['key'],
+ 'text' => $text,
+ 'lang' => "$from-$to",
+ );
+
+ $url = $this->config['url'];
+ $req = MWHttpRequest::factory( $url, $options );
+ wfProfileIn( 'TranslateWebServiceRequest-' . $service );
+ $status = $req->execute();
+ wfProfileOut( 'TranslateWebServiceRequest-' . $service );
+
+ if ( !$status->isOK() ) {
+ $error = $req->getContent();
+ // Most likely a timeout or other general error
+ throw new TranslationWebServiceException( "Http::get failed:\n" .
+ "* " . serialize( $error ) . "\n" .
+ "* " . serialize( $status )
+ );
+ }
+
+ $response = FormatJson::decode( $req->getContent() );
+ if ( !is_object( $response ) ) {
+ throw new TranslationWebServiceException( serialize( $req->getContent() ) );
+ } elseif ( $response->code !== 200 ) {
+ $exception = "(HTTP {$response->code}) with ($service ($from|$to)): " .
+ $response->message;
+ throw new TranslationWebServiceException( $exception );
+ }
+
+ $sug = Sanitizer::decodeCharReferences( $response->text[0] );
+ $sug = $this->unwrapUntranslatable( $sug );
+
+ return trim( $sug );
+ }
+}
diff --git a/MLEB/UniversalLanguageSelector/.jshintignore b/MLEB/UniversalLanguageSelector/.jshintignore
new file mode 100644
index 00000000..4c02d63b
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/.jshintignore
@@ -0,0 +1,4 @@
+# upstream libs
+lib/*
+# Generated file that contains JSON. Would fail "Strings must use singlequote."
+resources/js/ext.uls.webfonts.repository.js
diff --git a/MLEB/UniversalLanguageSelector/.jshintrc b/MLEB/UniversalLanguageSelector/.jshintrc
new file mode 100644
index 00000000..cfe8a311
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/.jshintrc
@@ -0,0 +1,32 @@
+{
+
+ "camelcase": true,
+ "curly": true,
+ "eqeqeq": true,
+ "immed": true,
+ "latedef": true,
+ "newcap": true,
+ "noarg": true,
+ "noempty": true,
+ "nonew": true,
+ "quotmark": "single",
+ "trailing": true,
+ "undef": true,
+ "unused": true,
+
+ "bitwise": true,
+ "forin": false,
+ "regexp": false,
+ "strict": true,
+ "laxbreak": true,
+ "smarttabs": true,
+ "multistr": true,
+ "browser": true,
+ "onevar": true,
+
+ "predef": [
+ "mediaWiki",
+ "jQuery",
+ "QUnit"
+ ]
+}
diff --git a/MLEB/UniversalLanguageSelector/.rubocop.yml b/MLEB/UniversalLanguageSelector/.rubocop.yml
new file mode 100644
index 00000000..cc32da4b
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/.rubocop.yml
@@ -0,0 +1 @@
+inherit_from: .rubocop_todo.yml
diff --git a/MLEB/UniversalLanguageSelector/.rubocop_todo.yml b/MLEB/UniversalLanguageSelector/.rubocop_todo.yml
new file mode 100644
index 00000000..e80fb512
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/.rubocop_todo.yml
@@ -0,0 +1,125 @@
+# This configuration was generated by `rubocop --auto-gen-config`
+# on 2014-10-21 16:45:03 +0200 using RuboCop version 0.26.1.
+# The point is for the user to remove these configuration records
+# one by one as the offenses are removed from the code base.
+# Note that changes in the inspected code, or installation of new
+# versions of RuboCop, may require this file to be generated again.
+
+# Offense count: 1
+Lint/AmbiguousRegexpLiteral:
+ Enabled: false
+
+# Offense count: 1
+# Cop supports --auto-correct.
+Lint/BlockAlignment:
+ Enabled: false
+
+# Offense count: 1
+# Configuration parameters: AlignWith, SupportedStyles.
+Lint/DefEndAlignment:
+ Enabled: false
+
+# Offense count: 1
+Metrics/CyclomaticComplexity:
+ Max: 7
+
+# Offense count: 17
+# Configuration parameters: AllowURI, URISchemes.
+Metrics/LineLength:
+ Max: 168
+
+# Offense count: 1
+# Configuration parameters: CountComments.
+Metrics/MethodLength:
+ Max: 16
+
+# Offense count: 1
+# Cop supports --auto-correct.
+# Configuration parameters: EnforcedStyle, SupportedStyles.
+Style/AccessModifierIndentation:
+ Enabled: false
+
+# Offense count: 1
+# Cop supports --auto-correct.
+# Configuration parameters: EnforcedStyle, SupportedStyles.
+Style/BracesAroundHashParameters:
+ Enabled: false
+
+# Offense count: 6
+# Configuration parameters: IndentWhenRelativeTo, SupportedStyles, IndentOneStep.
+Style/CaseIndentation:
+ Enabled: false
+
+# Offense count: 1
+# Cop supports --auto-correct.
+# Configuration parameters: PreferredMethods.
+Style/CollectionMethods:
+ Enabled: false
+
+# Offense count: 9
+Style/Documentation:
+ Enabled: false
+
+# Offense count: 1
+# Cop supports --auto-correct.
+Style/EmptyLinesAroundAccessModifier:
+ Enabled: false
+
+# Offense count: 1
+# Cop supports --auto-correct.
+Style/EmptyLinesAroundBody:
+ Enabled: false
+
+# Offense count: 1
+# Configuration parameters: AllowedVariables.
+Style/GlobalVars:
+ Enabled: false
+
+# Offense count: 7
+# Cop supports --auto-correct.
+# Configuration parameters: EnforcedStyle, SupportedStyles.
+Style/HashSyntax:
+ Enabled: false
+
+# Offense count: 1
+# Cop supports --auto-correct.
+Style/IndentationConsistency:
+ Enabled: false
+
+# Offense count: 90
+# Cop supports --auto-correct.
+Style/IndentationWidth:
+ Enabled: false
+
+# Offense count: 2
+# Cop supports --auto-correct.
+Style/LeadingCommentSpace:
+ Enabled: false
+
+# Offense count: 8
+# Cop supports --auto-correct.
+# Configuration parameters: EnforcedStyleForEmptyBraces, SupportedStyles.
+Style/SpaceInsideHashLiteralBraces:
+ EnforcedStyle: no_space
+
+# Offense count: 10
+# Cop supports --auto-correct.
+Style/SpaceInsideParens:
+ Enabled: false
+
+# Offense count: 130
+# Cop supports --auto-correct.
+# Configuration parameters: EnforcedStyle, SupportedStyles.
+Style/StringLiterals:
+ Enabled: false
+
+# Offense count: 216
+# Cop supports --auto-correct.
+Style/Tab:
+ Enabled: false
+
+# Offense count: 1
+# Cop supports --auto-correct.
+# Configuration parameters: EnforcedStyle, SupportedStyles.
+Style/TrailingBlankLines:
+ Enabled: false
diff --git a/MLEB/UniversalLanguageSelector/CREDITS b/MLEB/UniversalLanguageSelector/CREDITS
new file mode 100644
index 00000000..51b31ed6
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/CREDITS
@@ -0,0 +1,13 @@
+Universal Language Selector, part of Project Milkshake, is a collaborative
+project released under the GNU General Public License v2. We would like to
+recognize the following names for their contribution to the product.
+
+== Developers ==
+* Alolita Sharma
+* Amir Aharoni
+* Arun Ganesh
+* Brandon Harris
+* Niklas Laxström
+* Pau Giner
+* Santhosh Thottingal
+* Siebrand Mazeland
diff --git a/MLEB/UniversalLanguageSelector/GPL-LICENSE b/MLEB/UniversalLanguageSelector/GPL-LICENSE
new file mode 100644
index 00000000..019694a9
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/GPL-LICENSE
@@ -0,0 +1,342 @@
+== GNU GENERAL PUBLIC LICENSE ==
+
+Version 2, June 1991
+
+Copyright (C) 1989, 1991 Free Software Foundation, Inc.
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
+Everyone is permitted to copy and distribute verbatim copies
+of this license document, but changing it is not allowed.
+
+=== Preamble ===
+
+The licenses for most software are designed to take away your
+freedom to share and change it. By contrast, the GNU General Public
+License is intended to guarantee your freedom to share and change free
+software--to make sure the software is free for all its users. This
+General Public License applies to most of the Free Software
+Foundation's software and to any other program whose authors commit to
+using it. (Some other Free Software Foundation software is covered by
+the GNU Library General Public License instead.) You can apply it to
+your programs, too.
+
+When we speak of free software, we are referring to freedom, not
+price. Our General Public Licenses are designed to make sure that you
+have the freedom to distribute copies of free software (and charge for
+this service if you wish), that you receive source code or can get it
+if you want it, that you can change the software or use pieces of it
+in new free programs; and that you know you can do these things.
+
+To protect your rights, we need to make restrictions that forbid
+anyone to deny you these rights or to ask you to surrender the rights.
+These restrictions translate to certain responsibilities for you if you
+distribute copies of the software, or if you modify it.
+
+For example, if you distribute copies of such a program, whether
+gratis or for a fee, you must give the recipients all the rights that
+you have. You must make sure that they, too, receive or can get the
+source code. And you must show them these terms so they know their
+rights.
+
+We protect your rights with two steps: (1) copyright the software, and
+(2) offer you this license which gives you legal permission to copy,
+distribute and/or modify the software.
+
+Also, for each author's protection and ours, we want to make certain
+that everyone understands that there is no warranty for this free
+software. If the software is modified by someone else and passed on, we
+want its recipients to know that what they have is not the original, so
+that any problems introduced by others will not reflect on the original
+authors' reputations.
+
+Finally, any free program is threatened constantly by software
+patents. We wish to avoid the danger that redistributors of a free
+program will individually obtain patent licenses, in effect making the
+program proprietary. To prevent this, we have made it clear that any
+patent must be licensed for everyone's free use or not licensed at all.
+
+The precise terms and conditions for copying, distribution and
+modification follow.
+
+== TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION ==
+
+'''0.''' This License applies to any program or other work which contains
+a notice placed by the copyright holder saying it may be distributed
+under the terms of this General Public License. The "Program", below,
+refers to any such program or work, and a "work based on the Program"
+means either the Program or any derivative work under copyright law:
+that is to say, a work containing the Program or a portion of it,
+either verbatim or with modifications and/or translated into another
+language. (Hereinafter, translation is included without limitation in
+the term "modification".) Each licensee is addressed as "you".
+
+Activities other than copying, distribution and modification are not
+covered by this License; they are outside its scope. The act of
+running the Program is not restricted, and the output from the Program
+is covered only if its contents constitute a work based on the
+Program (independent of having been made by running the Program).
+Whether that is true depends on what the Program does.
+
+'''1.''' You may copy and distribute verbatim copies of the Program's
+source code as you receive it, in any medium, provided that you
+conspicuously and appropriately publish on each copy an appropriate
+copyright notice and disclaimer of warranty; keep intact all the
+notices that refer to this License and to the absence of any warranty;
+and give any other recipients of the Program a copy of this License
+along with the Program.
+
+You may charge a fee for the physical act of transferring a copy, and
+you may at your option offer warranty protection in exchange for a fee.
+
+'''2.''' You may modify your copy or copies of the Program or any portion
+of it, thus forming a work based on the Program, and copy and
+distribute such modifications or work under the terms of Section 1
+above, provided that you also meet all of these conditions:
+
+ '''a)''' You must cause the modified files to carry prominent notices
+ stating that you changed the files and the date of any change.
+
+ '''b)''' You must cause any work that you distribute or publish, that in
+ whole or in part contains or is derived from the Program or any
+ part thereof, to be licensed as a whole at no charge to all third
+ parties under the terms of this License.
+
+ '''c)''' If the modified program normally reads commands interactively
+ when run, you must cause it, when started running for such
+ interactive use in the most ordinary way, to print or display an
+ announcement including an appropriate copyright notice and a
+ notice that there is no warranty (or else, saying that you provide
+ a warranty) and that users may redistribute the program under
+ these conditions, and telling the user how to view a copy of this
+ License. (Exception: if the Program itself is interactive but
+ does not normally print such an announcement, your work based on
+ the Program is not required to print an announcement.)
+
+These requirements apply to the modified work as a whole. If
+identifiable sections of that work are not derived from the Program,
+and can be reasonably considered independent and separate works in
+themselves, then this License, and its terms, do not apply to those
+sections when you distribute them as separate works. But when you
+distribute the same sections as part of a whole which is a work based
+on the Program, the distribution of the whole must be on the terms of
+this License, whose permissions for other licensees extend to the
+entire whole, and thus to each and every part regardless of who wrote it.
+
+Thus, it is not the intent of this section to claim rights or contest
+your rights to work written entirely by you; rather, the intent is to
+exercise the right to control the distribution of derivative or
+collective works based on the Program.
+
+In addition, mere aggregation of another work not based on the Program
+with the Program (or with a work based on the Program) on a volume of
+a storage or distribution medium does not bring the other work under
+the scope of this License.
+
+'''3.''' You may copy and distribute the Program (or a work based on it,
+under Section 2) in object code or executable form under the terms of
+Sections 1 and 2 above provided that you also do one of the following:
+
+ '''a)''' Accompany it with the complete corresponding machine-readable
+ source code, which must be distributed under the terms of Sections
+ 1 and 2 above on a medium customarily used for software interchange; or,
+
+ '''b)''' Accompany it with a written offer, valid for at least three
+ years, to give any third party, for a charge no more than your
+ cost of physically performing source distribution, a complete
+ machine-readable copy of the corresponding source code, to be
+ distributed under the terms of Sections 1 and 2 above on a medium
+ customarily used for software interchange; or,
+
+ '''c)''' Accompany it with the information you received as to the offer
+ to distribute corresponding source code. (This alternative is
+ allowed only for noncommercial distribution and only if you
+ received the program in object code or executable form with such
+ an offer, in accord with Subsection b above.)
+
+The source code for a work means the preferred form of the work for
+making modifications to it. For an executable work, complete source
+code means all the source code for all modules it contains, plus any
+associated interface definition files, plus the scripts used to
+control compilation and installation of the executable. However, as a
+special exception, the source code distributed need not include
+anything that is normally distributed (in either source or binary
+form) with the major components (compiler, kernel, and so on) of the
+operating system on which the executable runs, unless that component
+itself accompanies the executable.
+
+If distribution of executable or object code is made by offering
+access to copy from a designated place, then offering equivalent
+access to copy the source code from the same place counts as
+distribution of the source code, even though third parties are not
+compelled to copy the source along with the object code.
+
+'''4.''' You may not copy, modify, sublicense, or distribute the Program
+except as expressly provided under this License. Any attempt
+otherwise to copy, modify, sublicense or distribute the Program is
+void, and will automatically terminate your rights under this License.
+However, parties who have received copies, or rights, from you under
+this License will not have their licenses terminated so long as such
+parties remain in full compliance.
+
+'''5.''' You are not required to accept this License, since you have not
+signed it. However, nothing else grants you permission to modify or
+distribute the Program or its derivative works. These actions are
+prohibited by law if you do not accept this License. Therefore, by
+modifying or distributing the Program (or any work based on the
+Program), you indicate your acceptance of this License to do so, and
+all its terms and conditions for copying, distributing or modifying
+the Program or works based on it.
+
+'''6.''' Each time you redistribute the Program (or any work based on the
+Program), the recipient automatically receives a license from the
+original licensor to copy, distribute or modify the Program subject to
+these terms and conditions. You may not impose any further
+restrictions on the recipients' exercise of the rights granted herein.
+You are not responsible for enforcing compliance by third parties to
+this License.
+
+'''7.''' If, as a consequence of a court judgment or allegation of patent
+infringement or for any other reason (not limited to patent issues),
+conditions are imposed on you (whether by court order, agreement or
+otherwise) that contradict the conditions of this License, they do not
+excuse you from the conditions of this License. If you cannot
+distribute so as to satisfy simultaneously your obligations under this
+License and any other pertinent obligations, then as a consequence you
+may not distribute the Program at all. For example, if a patent
+license would not permit royalty-free redistribution of the Program by
+all those who receive copies directly or indirectly through you, then
+the only way you could satisfy both it and this License would be to
+refrain entirely from distribution of the Program.
+
+If any portion of this section is held invalid or unenforceable under
+any particular circumstance, the balance of the section is intended to
+apply and the section as a whole is intended to apply in other
+circumstances.
+
+It is not the purpose of this section to induce you to infringe any
+patents or other property right claims or to contest validity of any
+such claims; this section has the sole purpose of protecting the
+integrity of the free software distribution system, which is
+implemented by public license practices. Many people have made
+generous contributions to the wide range of software distributed
+through that system in reliance on consistent application of that
+system; it is up to the author/donor to decide if he or she is willing
+to distribute software through any other system and a licensee cannot
+impose that choice.
+
+This section is intended to make thoroughly clear what is believed to
+be a consequence of the rest of this License.
+
+'''8.''' If the distribution and/or use of the Program is restricted in
+certain countries either by patents or by copyrighted interfaces, the
+original copyright holder who places the Program under this License
+may add an explicit geographical distribution limitation excluding
+those countries, so that distribution is permitted only in or among
+countries not thus excluded. In such case, this License incorporates
+the limitation as if written in the body of this License.
+
+'''9.''' The Free Software Foundation may publish revised and/or new versions
+of the General Public License from time to time. Such new versions will
+be similar in spirit to the present version, but may differ in detail to
+address new problems or concerns.
+
+Each version is given a distinguishing version number. If the Program
+specifies a version number of this License which applies to it and "any
+later version", you have the option of following the terms and conditions
+either of that version or of any later version published by the Free
+Software Foundation. If the Program does not specify a version number of
+this License, you may choose any version ever published by the Free Software
+Foundation.
+
+'''10.''' If you wish to incorporate parts of the Program into other free
+programs whose distribution conditions are different, write to the author
+to ask for permission. For software which is copyrighted by the Free
+Software Foundation, write to the Free Software Foundation; we sometimes
+make exceptions for this. Our decision will be guided by the two goals
+of preserving the free status of all derivatives of our free software and
+of promoting the sharing and reuse of software generally.
+
+=== NO WARRANTY ===
+
+'''11.''' BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
+FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN
+OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
+PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
+OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS
+TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE
+PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
+REPAIR OR CORRECTION.
+
+'''12.''' IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
+WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
+REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
+INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING
+OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED
+TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY
+YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
+PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
+POSSIBILITY OF SUCH DAMAGES.
+
+ '''END OF TERMS AND CONDITIONS'''
+
+== How to Apply These Terms to Your New Programs ==
+
+If you develop a new program, and you want it to be of the greatest
+possible use to the public, the best way to achieve this is to make it
+free software which everyone can redistribute and change under these terms.
+
+To do so, attach the following notices to the program. It is safest
+to attach them to the start of each source file to most effectively
+convey the exclusion of warranty; and each file should have at least
+the "copyright" line and a pointer to where the full notice is found.
+
+ <one line to give the program's name and a brief idea of what it does.>
+
+ Copyright (C) <year> <name of author>
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
+
+
+Also add information on how to contact you by electronic and paper mail.
+
+If the program is interactive, make it output a short notice like this
+when it starts in an interactive mode:
+
+ Gnomovision version 69, Copyright (C) year name of author
+ Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
+ This is free software, and you are welcome to redistribute it
+ under certain conditions; type `show c' for details.
+
+The hypothetical commands `show w' and `show c' should show the appropriate
+parts of the General Public License. Of course, the commands you use may
+be called something other than `show w' and `show c'; they could even be
+mouse-clicks or menu items--whatever suits your program.
+
+You should also get your employer (if you work as a programmer) or your
+school, if any, to sign a "copyright disclaimer" for the program, if
+necessary. Here is a sample; alter the names:
+
+ Yoyodyne, Inc., hereby disclaims all copyright interest in the program
+ `Gnomovision' (which makes passes at compilers) written by James Hacker.
+
+ <signature of Ty Coon>, 1 April 1989
+
+ Ty Coon, President of Vice
+
+This General Public License does not permit incorporating your program into
+proprietary programs. If your program is a subroutine library, you may
+consider it more useful to permit linking proprietary applications with the
+library. If this is what you want to do, use the GNU Library General
+Public License instead of this License.
diff --git a/MLEB/UniversalLanguageSelector/Gemfile b/MLEB/UniversalLanguageSelector/Gemfile
new file mode 100644
index 00000000..c8a5cabb
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/Gemfile
@@ -0,0 +1,7 @@
+#ruby=ruby-2.1.2
+#ruby-gemset=UniversalLanguageSelector
+
+source "https://rubygems.org"
+
+gem "mediawiki_selenium"
+gem "rubocop", require: false
diff --git a/MLEB/UniversalLanguageSelector/Gemfile.lock b/MLEB/UniversalLanguageSelector/Gemfile.lock
new file mode 100644
index 00000000..80a0ef81
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/Gemfile.lock
@@ -0,0 +1,81 @@
+GEM
+ remote: https://rubygems.org/
+ specs:
+ ast (2.0.0)
+ astrolabe (1.3.0)
+ parser (>= 2.2.0.pre.3, < 3.0)
+ builder (3.2.2)
+ childprocess (0.5.3)
+ ffi (~> 1.0, >= 1.0.11)
+ cucumber (1.3.15)
+ builder (>= 2.1.2)
+ diff-lcs (>= 1.1.3)
+ gherkin (~> 2.12)
+ multi_json (>= 1.7.5, < 2.0)
+ multi_test (>= 0.1.1)
+ data_magic (0.19)
+ faker (>= 1.1.2)
+ yml_reader (>= 0.3)
+ diff-lcs (1.2.5)
+ faker (1.3.0)
+ i18n (~> 0.5)
+ ffi (1.9.3)
+ gherkin (2.12.2)
+ multi_json (~> 1.3)
+ headless (1.0.2)
+ i18n (0.6.9)
+ json (1.8.1)
+ mediawiki_selenium (0.2.23)
+ cucumber (~> 1.3, >= 1.3.10)
+ headless (~> 1.0, >= 1.0.1)
+ json (~> 1.8, >= 1.8.1)
+ net-http-persistent (~> 2.9, >= 2.9.1)
+ page-object (~> 1.0)
+ rest-client (~> 1.6, >= 1.6.7)
+ rspec-expectations (~> 2.14, >= 2.14.4)
+ syntax (~> 1.2, >= 1.2.0)
+ mime-types (2.3)
+ multi_json (1.10.1)
+ multi_test (0.1.1)
+ net-http-persistent (2.9.4)
+ page-object (1.0)
+ page_navigation (>= 0.9)
+ selenium-webdriver (>= 2.42.0)
+ watir-webdriver (>= 0.6.9)
+ page_navigation (0.9)
+ data_magic (>= 0.14)
+ parser (2.2.0.pre.4)
+ ast (>= 1.1, < 3.0)
+ slop (~> 3.4, >= 3.4.5)
+ powerpack (0.0.9)
+ rainbow (2.0.0)
+ rest-client (1.6.7)
+ mime-types (>= 1.16)
+ rspec-expectations (2.99.0)
+ diff-lcs (>= 1.1.3, < 2.0)
+ rubocop (0.26.1)
+ astrolabe (~> 1.3)
+ parser (>= 2.2.0.pre.4, < 3.0)
+ powerpack (~> 0.0.6)
+ rainbow (>= 1.99.1, < 3.0)
+ ruby-progressbar (~> 1.4)
+ ruby-progressbar (1.6.0)
+ rubyzip (1.1.4)
+ selenium-webdriver (2.42.0)
+ childprocess (>= 0.5.0)
+ multi_json (~> 1.0)
+ rubyzip (~> 1.0)
+ websocket (~> 1.0.4)
+ slop (3.6.0)
+ syntax (1.2.0)
+ watir-webdriver (0.6.9)
+ selenium-webdriver (>= 2.18.0)
+ websocket (1.0.7)
+ yml_reader (0.3)
+
+PLATFORMS
+ ruby
+
+DEPENDENCIES
+ mediawiki_selenium
+ rubocop
diff --git a/MLEB/UniversalLanguageSelector/MIT-LICENSE b/MLEB/UniversalLanguageSelector/MIT-LICENSE
new file mode 100644
index 00000000..8a9a70a7
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/MIT-LICENSE
@@ -0,0 +1,22 @@
+Copyright (c) 2012 Alolita Sharma, Amir Aharoni, Arun Ganesh, Brandon Harris,
+Niklas Laxström, Pau Giner, Santhosh Thottingal, Siebrand Mazeland and other
+contributors. See CREDITS for a list.
+
+Permission is hereby granted, free of charge, to any person obtaining
+a copy of this software and associated documentation files (the
+"Software"), to deal in the Software without restriction, including
+without limitation the rights to use, copy, modify, merge, publish,
+distribute, sublicense, and/or sell copies of the Software, and to
+permit persons to whom the Software is furnished to do so, subject to
+the following conditions:
+
+The above copyright notice and this permission notice shall be
+included in all copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
diff --git a/MLEB/UniversalLanguageSelector/README b/MLEB/UniversalLanguageSelector/README
new file mode 100644
index 00000000..72290412
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/README
@@ -0,0 +1,42 @@
+== Universal Language Selector ==
+The Universal Language Selector extension (ULS) provides a flexible way to
+configure and deliver language settings like interface language, fonts, and
+input methods (keyboard mappings). This will allow users to type text in
+different languages not directly supported by their keyboard, read content in a
+script for which fonts are not available locally, or customise the language in
+which menus are displayed.
+
+For more information see:
+ https://www.mediawiki.org/wiki/Universal_Language_Selector
+
+== Copying ==
+You may use any Project Milkshake product, including the Universal Language
+Selector, under the terms of either the MIT License or the GNU General Public
+License (GPL) Version 2 or later.
+
+See GPL-LICENSE and MIT-LICENSE for details.
+
+== Installation ==
+For a very, very quick start add the following lines to LocalSettings.php of
+your MediaWiki setup:
+
+require_once "$IP/extensions/UniversalLanguageSelector/UniversalLanguageSelector.php";
+
+By default, ULS will appear at personal toolbar position. If you want ULS at
+interlanguage position, add the following line:
+
+$wgULSPosition = 'interlanguage';
+
+== For Developers ==
+The MediaWiki Universal Language Selector project uses jquery.uls:
+ https://github.com/wikimedia/jquery.uls
+
+Its development is at Wikimedia Github account. Any fixes to lib/ should happen
+at Github. Follow the build instructions of jquery.uls to create jquery.uls.js.
+
+More documentation is at:
+ https://www.mediawiki.org/wiki/Extension:UniversalLanguageSelector
+
+For reporting bugs, use 'UniversalLanguageSelector' component under
+'MediaWiki extensions' product at:
+ https://bugzilla.wikimedia.org
diff --git a/MLEB/UniversalLanguageSelector/RELEASE-NOTES b/MLEB/UniversalLanguageSelector/RELEASE-NOTES
new file mode 100644
index 00000000..79ec2d96
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/RELEASE-NOTES
@@ -0,0 +1,14 @@
+== UniversalLanguageSelector 2014.11 ==
+Released at 2014-11-29.
+
+=== Noteworthy changes ===
+* ULS WebAPI documentation is now localized. Only works in MediaWiki 1.24 and
+newer.
+* T67516: Removed font-size for ULS language selection panel buttons, which
+caused tiny font sizes on the Monobook skin.
+* Small compatibility fix when both ULS and VisualEditor are in use.
+* About 20 new languages are now supported in the language selector and a
+couple language names were changes.
+* A JavaScript error no longer happens on pages without any headings.
+* Added support for WOFF2 webfont format. Note that there are no WOFF2 webfonts
+in the font repository yet due to pending issues in WOFF2 font generation.
diff --git a/MLEB/UniversalLanguageSelector/Resources.php b/MLEB/UniversalLanguageSelector/Resources.php
new file mode 100644
index 00000000..4e0a8cf2
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/Resources.php
@@ -0,0 +1,297 @@
+<?php
+/**
+ * JavaScript and CSS resource definitions.
+ *
+ * @file
+ * @license GPL-2.0+
+ */
+
+$resourcePaths = array(
+ 'localBasePath' => __DIR__,
+ 'remoteExtPath' => 'UniversalLanguageSelector'
+);
+
+global $wgResourceModules;
+$wgResourceModules['ext.uls.languagenames'] = array(
+ 'class' => 'ResourceLoaderULSModule'
+);
+
+$wgResourceModules['ext.uls.messages'] = array(
+ 'class' => 'ResourceLoaderULSJsonMessageModule',
+ 'dependencies' => 'ext.uls.i18n',
+);
+
+$wgResourceModules['ext.uls.buttons'] = array(
+ 'styles' => 'resources/css/ext.uls.buttons.css',
+) + $resourcePaths;
+
+$wgResourceModules['ext.uls.displaysettings'] = array(
+ 'scripts' => 'resources/js/ext.uls.displaysettings.js',
+ 'styles' => 'resources/css/ext.uls.displaysettings.css',
+ 'dependencies' => array(
+ // Common dependencies come from languagesettings
+ 'ext.uls.languagesettings',
+ 'ext.uls.mediawiki',
+ 'ext.uls.webfonts',
+ 'mediawiki.api.parse',
+ ),
+) + $resourcePaths;
+
+$wgResourceModules['ext.uls.geoclient'] = array(
+ 'scripts' => 'resources/js/ext.uls.geoclient.js',
+) + $resourcePaths;
+
+$wgResourceModules['ext.uls.ime'] = array(
+ 'scripts' => 'resources/js/ext.uls.ime.js',
+ 'dependencies' => array(
+ 'ext.uls.init',
+ 'ext.uls.preferences',
+ 'ext.uls.mediawiki',
+ 'ext.uls.messages',
+ 'jquery.ime',
+ ),
+ 'messages' => array(
+ 'uls-ime-helppage',
+ ),
+) + $resourcePaths;
+
+// Styles for users who disabled JavaScript
+$wgResourceModules['ext.uls.nojs'] = array(
+ 'styles' => 'resources/css/ext.uls.nojs.css',
+ 'position' => 'top',
+) + $resourcePaths;
+
+// Initialization of MW ULS functionality
+$wgResourceModules['ext.uls.init'] = array(
+ 'scripts' => 'resources/js/ext.uls.init.js',
+ 'styles' => 'resources/css/ext.uls.css',
+ 'skinStyles' => array(
+ 'monobook' => 'resources/css/ext.uls-monobook.css',
+ ),
+ 'dependencies' => array(
+ 'mediawiki.Uri',
+ 'jquery.client',
+ 'jquery.cookie',
+ ),
+ 'position' => 'top',
+) + $resourcePaths;
+
+$wgResourceModules['ext.uls.eventlogger'] = array(
+ 'scripts' => 'resources/js/ext.uls.eventlogger.js',
+ 'dependencies' => array(
+ 'mediawiki.user',
+ 'schema.UniversalLanguageSelector',
+ ),
+) + $resourcePaths;
+
+$wgResourceModules['ext.uls.i18n'] = array(
+ 'scripts' => 'resources/js/ext.uls.i18n.js',
+ 'dependencies' => array(
+ 'jquery.i18n',
+ 'mediawiki.util',
+ ),
+) + $resourcePaths;
+
+$wgResourceModules['ext.uls.inputsettings'] = array(
+ 'scripts' => 'resources/js/ext.uls.inputsettings.js',
+ 'styles' => 'resources/css/ext.uls.inputsettings.css',
+ 'dependencies' => array(
+ 'ext.uls.ime',
+ // Common dependencies come from languagesettings
+ 'ext.uls.languagesettings',
+ 'ext.uls.mediawiki',
+ 'jquery.ime',
+ ),
+) + $resourcePaths;
+
+// Interface language selection module
+$wgResourceModules['ext.uls.interface'] = array(
+ 'scripts' => 'resources/js/ext.uls.interface.js',
+ 'dependencies' => array(
+ 'ext.uls.init',
+ 'jquery.tipsy',
+ 'mediawiki.jqueryMsg',
+ 'mediawiki.user',
+ // We cannot delay the loading of the basic webfonts library
+ // because it is required immediately after page load
+ 'ext.uls.webfonts',
+ ),
+ 'messages' => array(
+ 'uls-plang-title-languages',
+ 'ext-uls-select-language-settings-icon-tooltip',
+ 'ext-uls-undo-language-tooltip-text',
+ 'ext-uls-language-settings-preferences-link',
+ ),
+ 'position' => 'top',
+) + $resourcePaths;
+
+$wgResourceModules['ext.uls.languagesettings'] = array(
+ 'scripts' => 'resources/js/ext.uls.languagesettings.js',
+ 'styles' => 'resources/css/ext.uls.languagesettings.css',
+ 'dependencies' => array(
+ 'ext.uls.buttons',
+ 'ext.uls.messages',
+ 'ext.uls.preferences',
+ // The grid styles are used here,
+ // but ULS itself is lazy-loaded
+ 'jquery.uls.grid',
+ ),
+) + $resourcePaths;
+
+$wgResourceModules['ext.uls.preferences'] = array(
+ 'scripts' => 'resources/js/ext.uls.preferences.js',
+ 'dependencies' => array(
+ 'mediawiki.user',
+ 'mediawiki.api',
+ ),
+) + $resourcePaths;
+
+$wgResourceModules['ext.uls.compactlinks'] = array(
+ 'scripts' => 'resources/js/ext.uls.compactlinks.js',
+ 'styles' => 'resources/css/ext.uls.compactlinks.css',
+ 'dependencies' => array(
+ 'ext.uls.mediawiki',
+ 'ext.uls.init',
+ 'jquery.uls.compact',
+ 'mediawiki.language',
+ 'mediawiki.ui.button',
+ ),
+ 'messages' => array(
+ 'ext-uls-compact-link-count',
+ ),
+) + $resourcePaths;
+
+$wgResourceModules['ext.uls.webfonts'] = array(
+ 'scripts' => 'resources/js/ext.uls.webfonts.js',
+ 'dependencies' => array(
+ 'ext.uls.init',
+ 'ext.uls.preferences',
+ ),
+) + $resourcePaths;
+
+$wgResourceModules['ext.uls.webfonts.fonts'] = array(
+ 'dependencies' => array(
+ 'jquery.webfonts',
+ 'jquery.uls.data',
+ 'ext.uls.webfonts.repository',
+ ),
+) + $resourcePaths;
+
+$wgResourceModules['ext.uls.webfonts.repository'] = array(
+ 'scripts' => 'resources/js/ext.uls.webfonts.repository.js',
+ 'targets' => array( 'desktop', 'mobile' ),
+) + $resourcePaths;
+
+$wgResourceModules['ext.uls.webfonts.mobile'] = array(
+ 'scripts' => 'resources/js/ext.uls.webfonts.mobile.js',
+ 'targets' => array( 'mobile' ),
+ 'dependencies' => array(
+ 'jquery.webfonts',
+ 'ext.uls.webfonts.repository',
+ ),
+) + $resourcePaths;
+
+$wgResourceModules['jquery.i18n'] = array(
+ 'scripts' => array(
+ 'lib/jquery.i18n/jquery.i18n.js',
+ 'lib/jquery.i18n/jquery.i18n.messagestore.js',
+ 'lib/jquery.i18n/jquery.i18n.parser.js',
+ 'lib/jquery.i18n/jquery.i18n.emitter.js',
+ 'lib/jquery.i18n/jquery.i18n.language.js',
+ ),
+ 'dependencies' => 'mediawiki.libs.pluralruleparser',
+ 'languageScripts' => array(
+ 'bs' => 'lib/jquery.i18n/languages/bs.js',
+ 'dsb' => 'lib/jquery.i18n/languages/dsb.js',
+ 'fi' => 'lib/jquery.i18n/languages/fi.js',
+ 'ga' => 'lib/jquery.i18n/languages/ga.js',
+ 'he' => 'lib/jquery.i18n/languages/he.js',
+ 'hsb' => 'lib/jquery.i18n/languages/hsb.js',
+ 'hu' => 'lib/jquery.i18n/languages/hu.js',
+ 'hy' => 'lib/jquery.i18n/languages/hy.js',
+ 'la' => 'lib/jquery.i18n/languages/la.js',
+ 'ml' => 'lib/jquery.i18n/languages/ml.js',
+ 'os' => 'lib/jquery.i18n/languages/os.js',
+ 'ru' => 'lib/jquery.i18n/languages/ru.js',
+ 'sl' => 'lib/jquery.i18n/languages/sl.js',
+ 'uk' => 'lib/jquery.i18n/languages/uk.js',
+ ),
+ 'targets' => array( 'desktop', 'mobile' ),
+) + $resourcePaths;
+
+$wgResourceModules['jquery.ime'] = array(
+ 'scripts' => 'lib/jquery.ime/jquery.ime.js',
+ 'styles' => 'lib/jquery.ime/css/jquery.ime.css',
+) + $resourcePaths;
+
+// This module sets default options for the language selector that are
+// suitable for MediaWiki and loads necessary dependencies like grid,
+// messages and jquery.uls itself.
+$wgResourceModules['ext.uls.mediawiki'] = array(
+ 'scripts' => 'resources/js/ext.uls.mediawiki.js',
+ 'dependencies' => array(
+ 'ext.uls.init',
+ 'ext.uls.languagenames',
+ 'ext.uls.messages',
+ 'jquery.uls',
+ 'jquery.uls.grid',
+ 'mediawiki.util',
+ ),
+) + $resourcePaths;
+
+$wgResourceModules['jquery.uls'] = array(
+ 'scripts' => array(
+ 'lib/jquery.uls/src/jquery.uls.core.js',
+ 'lib/jquery.uls/src/jquery.uls.lcd.js',
+ 'lib/jquery.uls/src/jquery.uls.languagefilter.js',
+ 'lib/jquery.uls/src/jquery.uls.regionfilter.js',
+ ),
+ 'styles' => array(
+ 'lib/jquery.uls/css/jquery.uls.css',
+ 'lib/jquery.uls/css/jquery.uls.lcd.css',
+ ),
+ 'dependencies' => array(
+ 'jquery.i18n',
+ 'jquery.uls.data',
+ 'jquery.uls.grid',
+ ),
+) + $resourcePaths;
+
+$wgResourceModules['jquery.uls.compact'] = array(
+ 'styles' => 'lib/jquery.uls/css/jquery.uls.compact.css',
+ 'dependencies' => 'jquery.uls',
+) + $resourcePaths;
+
+$wgResourceModules['jquery.uls.data'] = array(
+ 'scripts' => array(
+ 'lib/jquery.uls/src/jquery.uls.data.js',
+ 'lib/jquery.uls/src/jquery.uls.data.utils.js',
+ ),
+ 'targets' => array( 'desktop', 'mobile' ),
+) + $resourcePaths;
+
+$wgResourceModules['jquery.uls.grid'] = array(
+ 'styles' => 'lib/jquery.uls/css/jquery.uls.grid.css',
+) + $resourcePaths;
+
+$wgResourceModules['jquery.webfonts'] = array(
+ 'scripts' => 'lib/jquery.webfonts.js',
+ 'targets' => array( 'desktop', 'mobile' ),
+) + $resourcePaths;
+
+$wgResourceModules['ext.uls.pt'] = array(
+ 'styles' => 'resources/css/ext.uls.pt.css',
+) + $resourcePaths;
+
+$wgResourceModules['ext.uls.interlanguage'] = array(
+ 'styles' => 'resources/css/ext.uls.interlanguage.css',
+) + $resourcePaths;
+
+// A module named rangy is defined in VisualExtension with more features of rangy.
+// Here we need only the core library. This module is loaded dynamically from
+// client when rangy is undefined. If VE is present rangy will be defined, the module
+// defined in VE will be used. ie, This get loaded only when VE is not present and
+// user trying to type in a contenteditable
+$wgResourceModules['rangy.core'] = array(
+ 'scripts' => 'lib/rangy/rangy-core.js',
+) + $resourcePaths;
diff --git a/MLEB/UniversalLanguageSelector/UniversalLanguageSelector.hooks.php b/MLEB/UniversalLanguageSelector/UniversalLanguageSelector.hooks.php
new file mode 100644
index 00000000..6e65ef9a
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/UniversalLanguageSelector.hooks.php
@@ -0,0 +1,406 @@
+<?php
+/**
+ * Hooks for UniversalLanguageSelector extension.
+ *
+ * Copyright (C) 2012 Alolita Sharma, Amir Aharoni, Arun Ganesh, Brandon Harris,
+ * Niklas Laxström, Pau Giner, Santhosh Thottingal, Siebrand Mazeland and other
+ * contributors. See CREDITS for a list.
+ *
+ * UniversalLanguageSelector is dual licensed GPLv2 or later and MIT. You don't
+ * have to do anything special to choose one license or the other and you don't
+ * have to notify anyone which license you are using. You are free to use
+ * UniversalLanguageSelector in commercial projects as long as the copyright
+ * header is left intact. See files GPL-LICENSE and MIT-LICENSE for details.
+ *
+ * @file
+ * @ingroup Extensions
+ * @licence GNU General Public Licence 2.0 or later
+ * @licence MIT License
+ */
+
+class UniversalLanguageSelectorHooks {
+ /**
+ * Whether ULS user toolbar (language selection and settings) is enabled.
+ *
+ * @param User $user
+ * @return bool
+ */
+ public static function isToolbarEnabled( $user ) {
+ global $wgULSEnable, $wgULSEnableAnon;
+
+ if ( !$wgULSEnable ) {
+ return false;
+ }
+ if ( !$wgULSEnableAnon && $user->isAnon() ) {
+ return false;
+ }
+
+ return true;
+ }
+
+ /**
+ * @param OutputPage $out
+ * @param Skin $skin
+ * @return bool
+ * Hook: BeforePageDisplay
+ */
+ public static function addModules( $out, $skin ) {
+ global $wgULSCompactLinks, $wgULSPosition, $wgULSGeoService, $wgULSEventLogging,
+ $wgInterwikiMagic, $wgHideInterlanguageLinks;
+
+ // Load the style for users without JS, to hide the useless links
+ $out->addModuleStyles( 'ext.uls.nojs' );
+
+ // If EventLogging integration is enabled, load the schema module
+ // and the event logging functions module
+ if ( $wgULSEventLogging ) {
+ $out->addModules( array(
+ 'schema.UniversalLanguageSelector',
+ 'ext.uls.eventlogger',
+ ) );
+ }
+
+ // If the extension is enabled, basic features (API, language data) available.
+ $out->addModules( 'ext.uls.init' );
+
+ // If compact ULS beta feature is enabled and is actually functional
+ // (see onGetBetaFeaturePreferences)
+ if ( $wgULSCompactLinks &&
+ $wgInterwikiMagic === true &&
+ $wgHideInterlanguageLinks === false &&
+ class_exists( 'BetaFeatures' ) &&
+ BetaFeatures::isFeatureEnabled( $out->getUser(), 'uls-compact-links' )
+ ) {
+ $out->addModules( 'ext.uls.compactlinks' );
+ }
+
+ if ( is_string( $wgULSGeoService ) ) {
+ $out->addModules( 'ext.uls.geoclient' );
+ } elseif ( $wgULSGeoService === true ) {
+ $out->addScript( '<script src="//bits.wikimedia.org/geoiplookup"></script>' );
+ }
+
+ if ( self::isToolbarEnabled( $out->getUser() ) ) {
+ // Enable UI language selection for the user.
+ $out->addModules( 'ext.uls.interface' );
+ }
+
+ if ( $wgULSPosition === 'personal' ) {
+ $out->addModules( 'ext.uls.pt' );
+ } else {
+ $out->addModules( 'ext.uls.interlanguage' );
+ }
+
+ return true;
+ }
+
+ public static function onEventLoggingRegisterSchemas( array &$schemas ) {
+ $schemas['UniversalLanguageSelector'] = 7327441;
+ }
+
+ /**
+ * @param $testModules array of javascript testing modules. 'qunit' is fed
+ * using tests/qunit/QUnitTestResources.php.
+ * @param ResourceLoader $resourceLoader
+ * @return bool
+ * Hook: ResourceLoaderTestModules
+ */
+ public static function addTestModules( array &$testModules, ResourceLoader &$resourceLoader ) {
+ $testModules['qunit']['ext.uls.tests'] = array(
+ 'scripts' => array( 'tests/qunit/ext.uls.tests.js' ),
+ 'dependencies' => array( 'jquery.uls', 'ext.uls.preferences' ),
+ 'localBasePath' => __DIR__,
+ 'remoteExtPath' => 'UniversalLanguageSelector',
+ );
+
+ return true;
+ }
+
+ /**
+ * Add some tabs for navigation for users who do not use Ajax interface.
+ * Hook: PersonalUrls
+ */
+ static function addPersonalBarTrigger( array &$personal_urls, &$title ) {
+ global $wgULSPosition;
+
+ if ( $wgULSPosition !== 'personal' ) {
+ return true;
+ }
+
+ $context = RequestContext::getMain();
+ if ( !self::isToolbarEnabled( $context->getUser() ) ) {
+ return true;
+ }
+
+ // The element id will be 'pt-uls'
+ $lang = $context->getLanguage();
+ $personal_urls = array(
+ 'uls' => array(
+ 'text' => $lang->fetchLanguageName( $lang->getCode() ),
+ 'href' => '#',
+ 'class' => 'uls-trigger autonym',
+ 'active' => true
+ )
+ ) + $personal_urls;
+
+ return true;
+ }
+
+ protected static function isSupportedLanguage( $language ) {
+ wfProfileIn( __METHOD__ );
+ $supported = Language::fetchLanguageNames( null, 'mwfile' ); // since 1.20
+ wfProfileOut( __METHOD__ );
+
+ return isset( $supported[$language] );
+ }
+
+ /**
+ * @param array $preferred
+ * @return string
+ */
+ protected static function getDefaultLanguage( array $preferred ) {
+ wfProfileIn( __METHOD__ );
+ $supported = Language::fetchLanguageNames( null, 'mwfile' ); // since 1.20
+
+ // look for a language that is acceptable to the client
+ // and known to the wiki.
+ foreach ( $preferred as $code => $weight ) {
+ if ( isset( $supported[$code] ) ) {
+ wfProfileOut( __METHOD__ );
+
+ return $code;
+ }
+ }
+
+ // Some browsers might only send codes like de-de.
+ // Try with bare code.
+ foreach ( $preferred as $code => $weight ) {
+ $parts = explode( '-', $code, 2 );
+ $code = $parts[0];
+ if ( isset( $supported[$code] ) ) {
+ wfProfileOut( __METHOD__ );
+
+ return $code;
+ }
+ }
+
+ wfProfileOut( __METHOD__ );
+
+ return '';
+ }
+
+ /**
+ * Hook to UserGetLanguageObject
+ * @param User $user
+ * @param string $code
+ * @param IContextSource $context
+ * @return bool
+ */
+ public static function getLanguage( User $user, &$code, IContextSource $context ) {
+ global $wgULSAnonCanChangeLanguage, $wgULSLanguageDetection;
+
+ if ( !self::isToolbarEnabled( $user ) ) {
+ return true;
+ }
+
+ $request = $context->getRequest();
+
+ $languageToSave = $request->getVal( 'setlang' );
+ if ( $request->getVal( 'uselang' ) && !$languageToSave ) {
+ // uselang can be used for temporary override of language preference
+ // when setlang is not provided
+ return true;
+ }
+
+ // Registered users - simple
+ if ( !$user->isAnon() ) {
+ // Language change
+ if ( self::isSupportedLanguage( $languageToSave ) ) {
+ $user->setOption( 'language', $languageToSave );
+ $user->saveSettings();
+ // Apply immediately
+ $code = $languageToSave;
+ }
+
+ // Otherwise just use what is stored in preferences
+ return true;
+ }
+
+ // Logged out users - less simple
+ if ( !$wgULSAnonCanChangeLanguage ) {
+ return true;
+ }
+
+ // Language change
+ if ( self::isSupportedLanguage( $languageToSave ) ) {
+ $request->response()->setcookie( 'language', $languageToSave );
+ $code = $languageToSave;
+
+ return true;
+ }
+
+ // Try cookie
+ $languageToUse = $request->getCookie( 'language' );
+ if ( self::isSupportedLanguage( $languageToUse ) ) {
+ $code = $languageToUse;
+
+ return true;
+ }
+
+ // As last resort, try Accept-Language headers if allowed
+ if ( $wgULSLanguageDetection ) {
+ $preferred = $request->getAcceptLang();
+ $default = self::getDefaultLanguage( $preferred );
+ if ( $default !== '' ) {
+ $code = $default;
+ }
+ }
+
+ // Fall back to other hooks or content language
+ return true;
+ }
+
+ /**
+ * Hook: ResourceLoaderGetConfigVars
+ * @param array $vars
+ * @return bool
+ */
+ public static function addConfig( &$vars ) {
+ global $wgULSGeoService,
+ $wgULSIMEEnabled, $wgULSWebfontsEnabled,
+ $wgULSPosition, $wgULSNoWebfontsSelectors,
+ $wgULSAnonCanChangeLanguage,
+ $wgULSEventLogging,
+ $wgULSImeSelectors, $wgULSNoImeSelectors,
+ $wgULSFontRepositoryBasePath,
+ $wgExtensionAssetsPath;
+
+ // Place constant stuff here (not depending on request context)
+ if ( is_string( $wgULSGeoService ) ) {
+ $vars['wgULSGeoService'] = $wgULSGeoService;
+ }
+
+ $vars['wgULSIMEEnabled'] = $wgULSIMEEnabled;
+ $vars['wgULSWebfontsEnabled'] = $wgULSWebfontsEnabled;
+ $vars['wgULSPosition'] = $wgULSPosition;
+ $vars['wgULSAnonCanChangeLanguage'] = $wgULSAnonCanChangeLanguage;
+ $vars['wgULSEventLogging'] = $wgULSEventLogging && class_exists( 'ResourceLoaderSchemaModule' );
+ $vars['wgULSImeSelectors'] = $wgULSImeSelectors;
+ $vars['wgULSNoImeSelectors'] = $wgULSNoImeSelectors;
+ $vars['wgULSNoWebfontsSelectors'] = $wgULSNoWebfontsSelectors;
+
+ if ( is_string( $wgULSFontRepositoryBasePath ) ) {
+ $vars['wgULSFontRepositoryBasePath'] = $wgULSFontRepositoryBasePath;
+ } else {
+ $vars['wgULSFontRepositoryBasePath'] = $wgExtensionAssetsPath .
+ '/UniversalLanguageSelector/data/fontrepo/fonts/';
+ }
+
+ return true;
+ }
+
+ /**
+ * Hook: MakeGlobalVariablesScript
+ * @param array $vars
+ * @param OutputPage $out
+ * @return bool
+ */
+ public static function addVariables( &$vars, OutputPage $out ) {
+ // Place request context dependent stuff here
+ $vars['wgULSAcceptLanguageList'] = array_keys( $out->getRequest()->getAcceptLang() );
+
+ // An optimization to avoid loading all of uls.data just to get the autonym
+ $lang = $out->getLanguage();
+ $vars['wgULSCurrentAutonym'] = $lang->fetchLanguageName( $lang->getCode() );
+
+ return true;
+ }
+
+ public static function onGetPreferences( $user, &$preferences ) {
+ $preferences['uls-preferences'] = array(
+ 'type' => 'api',
+ );
+
+ // A link shown for accessing ULS language settings from preferences screen
+ $preferences['languagesettings'] = array(
+ 'type' => 'info',
+ 'raw' => true,
+ 'section' => 'personal/i18n',
+ 'default' => "<a id='uls-preferences-link' href='#'></a>",
+ // The above link will have text set from javascript. Just to avoid
+ // showing the link when javascript is disabled.
+ );
+
+ return true;
+ }
+
+ public static function onGetBetaFeaturePreferences( $user, &$prefs ) {
+ global $wgExtensionAssetsPath, $wgULSCompactLinks,
+ $wgHideInterlanguageLinks, $wgInterwikiMagic;
+
+ if ( $wgULSCompactLinks &&
+ $wgInterwikiMagic === true &&
+ $wgHideInterlanguageLinks === false
+ ) {
+ $imagesDir = "$wgExtensionAssetsPath/UniversalLanguageSelector/resources/images";
+ $prefs['uls-compact-links'] = array(
+ 'label-message' => 'uls-betafeature-label',
+ 'desc-message' => 'uls-betafeature-desc',
+ 'screenshot' => array(
+ 'ltr' => "$imagesDir/compact-links-ltr.png",
+ 'rtl' => "$imagesDir/compact-links-rtl.png",
+ ),
+ 'info-link' =>
+ 'https://www.mediawiki.org/wiki/Universal_Language_Selector/Design/Interlanguage_links',
+ 'discussion-link' =>
+ 'https://www.mediawiki.org/wiki/Talk:Universal_Language_Selector/Design/Interlanguage_links',
+ );
+ }
+ }
+
+ /**
+ * Hook: SkinTemplateOutputPageBeforeExec
+ * @param Skin $skin
+ * @param QuickTemplate $template
+ * @return bool
+ */
+ public static function onSkinTemplateOutputPageBeforeExec( Skin &$skin,
+ QuickTemplate &$template
+ ) {
+ global $wgULSPosition;
+
+ if ( $wgULSPosition !== 'interlanguage' ) {
+ return true;
+ }
+
+ if ( !self::isToolbarEnabled( $skin->getUser() ) ) {
+ return true;
+ }
+
+ // A dummy link, just to make sure that the section appears
+ $template->data['language_urls'][] = array(
+ 'href' => '#',
+ 'text' => '',
+ 'class' => 'uls-p-lang-dummy',
+ );
+
+ return true;
+ }
+
+ /**
+ * Add basic webfonts support to the mobile interface (via MobileFrontend extension)
+ * Hook: EnterMobileMode
+ * @param MobileContext $context
+ * @return bool
+ */
+ public static function onEnterMobileMode( $context ) {
+ global $wgULSEnable, $wgULSMobileWebfontsEnabled;
+
+ // Currently only supported in mobile Beta mode
+ if ( $wgULSEnable && $wgULSMobileWebfontsEnabled && $context->isBetaGroupMember() ) {
+ $context->getOutput()->addModules( 'ext.uls.webfonts.mobile' );
+ }
+
+ return true;
+ }
+}
diff --git a/MLEB/UniversalLanguageSelector/UniversalLanguageSelector.i18n.php b/MLEB/UniversalLanguageSelector/UniversalLanguageSelector.i18n.php
new file mode 100644
index 00000000..12624a9a
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/UniversalLanguageSelector.i18n.php
@@ -0,0 +1,35 @@
+<?php
+/**
+ * This is a backwards-compatibility shim, generated by:
+ * https://git.wikimedia.org/blob/mediawiki%2Fcore.git/HEAD/maintenance%2FgenerateJsonI18n.php
+ *
+ * Beginning with MediaWiki 1.23, translation strings are stored in json files,
+ * and the EXTENSION.i18n.php file only exists to provide compatibility with
+ * older releases of MediaWiki. For more information about this migration, see:
+ * https://www.mediawiki.org/wiki/Requests_for_comment/Localisation_format
+ *
+ * This shim maintains compatibility back to MediaWiki 1.17.
+ */
+$messages = array();
+if ( !function_exists( 'wfJsonI18nShim29b26b9f5d64bcef' ) ) {
+ function wfJsonI18nShim29b26b9f5d64bcef( $cache, $code, &$cachedData ) {
+ $codeSequence = array_merge( array( $code ), $cachedData['fallbackSequence'] );
+ foreach ( $codeSequence as $csCode ) {
+ $fileName = dirname( __FILE__ ) . "/i18n/$csCode.json";
+ if ( is_readable( $fileName ) ) {
+ $data = FormatJson::decode( file_get_contents( $fileName ), true );
+ foreach ( array_keys( $data ) as $key ) {
+ if ( $key === '' || $key[0] === '@' ) {
+ unset( $data[$key] );
+ }
+ }
+ $cachedData['messages'] = array_merge( $data, $cachedData['messages'] );
+ }
+
+ $cachedData['deps'][] = new FileDependency( $fileName );
+ }
+ return true;
+ }
+
+ $GLOBALS['wgHooks']['LocalisationCacheRecache'][] = 'wfJsonI18nShim29b26b9f5d64bcef';
+}
diff --git a/MLEB/UniversalLanguageSelector/UniversalLanguageSelector.php b/MLEB/UniversalLanguageSelector/UniversalLanguageSelector.php
new file mode 100644
index 00000000..31d210ca
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/UniversalLanguageSelector.php
@@ -0,0 +1,222 @@
+<?php
+/**
+ * Initialisation file for MediaWiki extension UniversalLanguageSelector.
+ *
+ * Copyright (C) 2012-2014 Alolita Sharma, Amir Aharoni, Arun Ganesh, Brandon
+ * Harris, Niklas Laxström, Pau Giner, Santhosh Thottingal, Siebrand Mazeland
+ * and other contributors. See CREDITS for a list.
+ *
+ * UniversalLanguageSelector is dual licensed GPLv2 or later and MIT. You don't
+ * have to do anything special to choose one license or the other and you don't
+ * have to notify anyone which license you are using. You are free to use
+ * UniversalLanguageSelector in commercial projects as long as the copyright
+ * header is left intact. See files GPL-LICENSE and MIT-LICENSE for details.
+ *
+ * @file
+ * @ingroup Extensions
+ * @licence GNU General Public Licence 2.0 or later
+ * @licence MIT License
+ */
+
+if ( !defined( 'MEDIAWIKI' ) ) {
+ echo "This file is an extension to the MediaWiki software and cannot be used standalone.\n";
+ die( -1 );
+}
+/**
+ * Version number used in extension credits and in other placed where needed.
+ */
+define( 'ULS_VERSION', '2014-11-28' );
+
+$GLOBALS['wgExtensionCredits']['other'][] = array(
+ 'path' => __FILE__,
+ 'name' => 'UniversalLanguageSelector',
+ 'version' => '[https://www.mediawiki.org/wiki/MLEB MLEB 2014.11]',
+ 'author' => array(
+ 'Alolita Sharma',
+ 'Amir Aharoni',
+ 'Arun Ganesh',
+ 'Brandon Harris',
+ 'Niklas Laxström',
+ 'Pau Giner',
+ 'Santhosh Thottingal',
+ 'Siebrand Mazeland'
+ ),
+ 'url' => 'https://www.mediawiki.org/wiki/Extension:UniversalLanguageSelector',
+ 'descriptionmsg' => 'uls-desc',
+);
+
+/**
+ * ULS can use geolocation services to suggest languages based on the
+ * country the user is vising from. Setting this to false will prevent
+ * builtin geolocation from being used. You can provide your own geolocation
+ * by setting window.Geo to object which has key 'country_code' or 'country'.
+ * If set to true, it will query Wikimedia's geoip service.
+ *
+ * The service should return jsonp that uses the supplied callback parameter.
+ */
+$GLOBALS['wgULSGeoService'] = true;
+
+/**
+ * Enable language selection, input methods and webfonts for everyone, unless
+ * the behavior is overridden by the configuration variables below.
+ *
+ * Even if false the classes and resource loader modules are registered for the
+ * use of other extensions. Language changing via cookie or setlang query
+ * parameter is not possible.
+ */
+$GLOBALS['wgULSEnable'] = true;
+
+/**
+ * Equivalent to $wgULSEnable for anonymous users only.
+ *
+ * Does not have any effect if $wgULSEnable is false.
+ */
+$GLOBALS['wgULSEnableAnon'] = true;
+
+/**
+ * Allow anonymous users to change language with cookie and setlang
+ * query parameter.
+ *
+ * Do not use if you are caching anonymous page views without
+ * taking cookies into account.
+ *
+ * Does not have any effect if either of $wgULSEnable or
+ * $wgULSEnableAnon is set to false.
+ *
+ * @since 2013.04
+ */
+$GLOBALS['wgULSAnonCanChangeLanguage'] = true;
+
+/**
+ * Try to use preferred interface language for anonymous users.
+ *
+ * Do not use if you are caching anonymous page views without
+ * taking Accept-Language into account.
+ *
+ * Does not have any effect if any of $wgULSEnable, $wgULSEnableAnon
+ * or $wgULSAnonCanChangeLanguage is set to false.
+ */
+$GLOBALS['wgULSLanguageDetection'] = true;
+
+/**
+ * Enable the input methods feature for all users by default.
+ * Can be controlled by the user.
+ */
+$GLOBALS['wgULSIMEEnabled'] = true;
+
+/**
+ * Enable the webfonts feature for all users by default.
+ * Can be controlled by the user.
+ * @since 2014.02
+ */
+$GLOBALS['wgULSWebfontsEnabled'] = true;
+
+/**
+ * Set whether webfont support is loaded within the mobile interface (via the
+ * MobileFrontend extension).
+ */
+$GLOBALS['wgULSMobileWebfontsEnabled'] = false;
+
+/**
+ * The location and the form of the language selection trigger.
+ * The possible values are:
+ * 'personal': as a link near the username or the log in link in
+ * the personal toolbar (default).
+ * 'interlanguage': as an icon near the header of the list of interlanguage
+ * links in the sidebar.
+ *
+ * @since 2013.04
+ */
+$GLOBALS['wgULSPosition'] = 'personal';
+
+/**
+ * Whether to use EventLogging. The EventLogging extension must be installed
+ * if this option is enabled.
+ * @since 2013.06
+ */
+$GLOBALS['wgULSEventLogging'] = false;
+
+/**
+ * Array of jQuery selectors of elements on which IME should be enabled.
+ *
+ * @since 2013.11
+ */
+$GLOBALS['wgULSImeSelectors'] = array(
+ 'input:not([type])',
+ 'input[type=text]',
+ 'input[type=search]',
+ 'textarea',
+ '[contenteditable]',
+);
+
+/**
+ * Array of jQuery selectors of elements on which IME must not be enabled.
+ *
+ * @since 2013.07
+ */
+$GLOBALS['wgULSNoImeSelectors'] = array( '#wpCaptchaWord', '.ve-ce-surface *' );
+
+/**
+ * Array of jQuery selectors of elements on which webfonts must not be applied.
+ * By default exclude elements with .autonym because that style set font as
+ * Autonym
+ * @since 2013.09
+ */
+$GLOBALS['wgULSNoWebfontsSelectors'] = array( '#p-lang li.interlanguage-link > a' );
+
+/**
+ * Base path of ULS font repository.
+ * If not set, will be set to 'UniversalLanguageSelector/data/fontrepo/fonts/',
+ * relative to $wgExtensionAssetsPath.
+ * @since 2013.10
+ */
+$GLOBALS['wgULSFontRepositoryBasePath'] = false;
+
+/**
+ * Whether the "Compact language links" Beta Feature is exposed. Requires
+ * $wgULSPosition to be 'interlanguage'.
+ *
+ * Defaults to false.
+ *
+ * @since 2014.03
+ */
+$GLOBALS['wgULSCompactLinks'] = false;
+
+// Internationalization
+$GLOBALS['wgMessagesDirs']['UniversalLanguageSelector'] = __DIR__ . '/i18n';
+$GLOBALS['wgExtensionMessagesFiles']['UniversalLanguageSelector'] =
+ __DIR__ . '/UniversalLanguageSelector.i18n.php';
+
+// Register auto load for the page class
+$GLOBALS['wgAutoloadClasses'] += array(
+ 'UniversalLanguageSelectorHooks' => __DIR__ . '/UniversalLanguageSelector.hooks.php',
+ 'ResourceLoaderULSModule' => __DIR__ . '/includes/ResourceLoaderULSModule.php',
+ 'ResourceLoaderULSJsonMessageModule' =>
+ __DIR__ . '/includes/ResourceLoaderULSJsonMessageModule.php',
+ 'ApiLanguageSearch' => __DIR__ . '/api/ApiLanguageSearch.php',
+ 'ApiULSLocalization' => __DIR__ . '/api/ApiULSLocalization.php',
+ 'ULSJsonMessageLoader' => __DIR__ . '/includes/ULSJsonMessageLoader.php',
+ 'LanguageNameSearch' => __DIR__ . '/data/LanguageNameSearch.php',
+);
+
+$GLOBALS['wgHooks']['BeforePageDisplay'][] = 'UniversalLanguageSelectorHooks::addModules';
+$GLOBALS['wgHooks']['EventLoggingRegisterSchemas'][] =
+ 'UniversalLanguageSelectorHooks::onEventLoggingRegisterSchemas';
+$GLOBALS['wgHooks']['PersonalUrls'][] = 'UniversalLanguageSelectorHooks::addPersonalBarTrigger';
+$GLOBALS['wgHooks']['ResourceLoaderTestModules'][] =
+ 'UniversalLanguageSelectorHooks::addTestModules';
+$GLOBALS['wgHooks']['ResourceLoaderGetConfigVars'][] = 'UniversalLanguageSelectorHooks::addConfig';
+$GLOBALS['wgHooks']['MakeGlobalVariablesScript'][] = 'UniversalLanguageSelectorHooks::addVariables';
+$GLOBALS['wgAPIModules']['languagesearch'] = 'ApiLanguageSearch';
+$GLOBALS['wgAPIModules']['ulslocalization'] = 'ApiULSLocalization';
+$GLOBALS['wgHooks']['UserGetLanguageObject'][] = 'UniversalLanguageSelectorHooks::getLanguage';
+$GLOBALS['wgHooks']['SkinTemplateOutputPageBeforeExec'][] =
+ 'UniversalLanguageSelectorHooks::onSkinTemplateOutputPageBeforeExec';
+$GLOBALS['wgHooks']['EnterMobileMode'][] = 'UniversalLanguageSelectorHooks::onEnterMobileMode';
+
+$GLOBALS['wgDefaultUserOptions']['uls-preferences'] = '';
+$GLOBALS['wgHooks']['GetPreferences'][] = 'UniversalLanguageSelectorHooks::onGetPreferences';
+$GLOBALS['wgHooks']['GetBetaFeaturePreferences'][] =
+ 'UniversalLanguageSelectorHooks::onGetBetaFeaturePreferences';
+
+require __DIR__ . '/Resources.php';
diff --git a/MLEB/UniversalLanguageSelector/api/ApiLanguageSearch.php b/MLEB/UniversalLanguageSelector/api/ApiLanguageSearch.php
new file mode 100644
index 00000000..d1c4c977
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/api/ApiLanguageSearch.php
@@ -0,0 +1,93 @@
+<?php
+/**
+ * Language name search API
+ *
+ * Copyright (C) 2012 Alolita Sharma, Amir Aharoni, Arun Ganesh, Brandon Harris,
+ * Niklas Laxström, Pau Giner, Santhosh Thottingal, Siebrand Mazeland and other
+ * contributors. See CREDITS for a list.
+ *
+ * UniversalLanguageSelector is dual licensed GPLv2 or later and MIT. You don't
+ * have to do anything special to choose one license or the other and you don't
+ * have to notify anyone which license you are using. You are free to use
+ * UniversalLanguageSelector in commercial projects as long as the copyright
+ * header is left intact. See files GPL-LICENSE and MIT-LICENSE for details.
+ *
+ * @file
+ * @ingroup Extensions
+ * @licence GNU General Public Licence 2.0 or later
+ * @licence MIT License
+ */
+
+/**
+ * @ingroup API
+ */
+class ApiLanguageSearch extends ApiBase {
+
+ public function getCustomPrinter() {
+ return $this->getMain()->createPrinterByName( 'json' );
+ }
+
+ public function execute() {
+ $params = $this->extractRequestParams();
+ $search = $params['search'];
+ $typos = $params['typos'];
+ $searches = LanguageNameSearch::search( $search, $typos );
+ $result = $this->getResult();
+ $result->addValue( null, $this->getModuleName(), $searches );
+ }
+
+ public function getAllowedParams() {
+ return array(
+ 'search' => array(
+ ApiBase::PARAM_REQUIRED => true
+ ),
+ 'typos' => array(
+ ApiBase::PARAM_REQUIRED => false,
+ ApiBase::PARAM_TYPE => 'integer',
+ ApiBase::PARAM_DFLT => 1
+ ),
+ );
+ }
+
+ /**
+ * @deprecated since MediaWiki core 1.25
+ */
+ public function getParamDescription() {
+ return array(
+ 'search' => 'Search string',
+ 'typos' => 'Number of spelling mistakes allowed in the search string',
+ );
+ }
+
+ /**
+ * @deprecated since MediaWiki core 1.25
+ */
+ public function getDescription() {
+ return 'Search for language names in any script';
+ }
+
+ /**
+ * @deprecated since MediaWiki core 1.25
+ */
+ public function getExamples() {
+ return array(
+ 'api.php?action=languagesearch&search=Te',
+ 'api.php?action=languagesearch&search=ഫി',
+ 'api.php?action=languagesearch&search=ഫി&typos=1',
+ );
+ }
+
+ /**
+ * @see ApiBase::getExamplesMessages()
+ */
+ protected function getExamplesMessages() {
+ return array(
+ 'action=languagesearch&search=Te'
+ => 'apihelp-languagesearch-example-1',
+ 'action=languagesearch&search=ഫി'
+ => 'apihelp-languagesearch-example-2',
+ 'action=languagesearch&search=ഫി&typos=1'
+ => 'apihelp-languagesearch-example-3',
+ );
+ }
+}
diff --git a/MLEB/UniversalLanguageSelector/api/ApiULSLocalization.php b/MLEB/UniversalLanguageSelector/api/ApiULSLocalization.php
new file mode 100644
index 00000000..2699a4d9
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/api/ApiULSLocalization.php
@@ -0,0 +1,94 @@
+<?php
+/**
+ * Localization API for ULS
+ *
+ * Copyright (C) 2013 Alolita Sharma, Amir Aharoni, Arun Ganesh, Brandon Harris,
+ * Niklas Laxström, Pau Giner, Santhosh Thottingal, Siebrand Mazeland and other
+ * contributors. See CREDITS for a list.
+ *
+ * UniversalLanguageSelector is dual licensed GPLv2 or later and MIT. You don't
+ * have to do anything special to choose one license or the other and you don't
+ * have to notify anyone which license you are using. You are free to use
+ * UniversalLanguageSelector in commercial projects as long as the copyright
+ * header is left intact. See files GPL-LICENSE and MIT-LICENSE for details.
+ *
+ * @file
+ * @ingroup Extensions
+ * @licence GNU General Public Licence 2.0 or later
+ * @licence MIT License
+ */
+
+/**
+ * @ingroup API
+ */
+class ApiULSLocalization extends ApiBase {
+
+ public function execute() {
+ $this->getMain()->setCacheMode( 'public' );
+ $this->getMain()->setCacheMaxAge( 2419200 );
+
+ $params = $this->extractRequestParams();
+ $language = $params['language'];
+ if ( !Language::isValidCode( $language ) ) {
+ $this->dieUsage( 'Invalid language', 'invalidlanguage' );
+ }
+ $contents = ULSJsonMessageLoader::getMessages( $language );
+ // Output the file's contents raw
+ $this->getResult()->addValue( null, 'text', json_encode( $contents ) );
+ $this->getResult()->addValue( null, 'mime', 'application/json' );
+ }
+
+ public function getCustomPrinter() {
+ return new ApiFormatRaw(
+ $this->getMain(),
+ $this->getMain()->createPrinterByName( 'json' )
+ );
+ }
+
+ public function getAllowedParams() {
+ return array(
+ 'language' => array(
+ ApiBase::PARAM_REQUIRED => true,
+ ApiBase::PARAM_TYPE => 'string',
+ ),
+ );
+ }
+
+ /**
+ * @deprecated since MediaWiki core 1.25
+ */
+ public function getParamDescription() {
+ return array(
+ 'language' => 'Language string',
+ );
+ }
+
+ /**
+ * @deprecated since MediaWiki core 1.25
+ */
+ public function getDescription() {
+ return 'Get the localization of ULS in given language';
+ }
+
+ /**
+ * @deprecated since MediaWiki core 1.25
+ */
+ public function getExamples() {
+ return array(
+ 'api.php?action=ulslocalization&language=ta',
+ 'api.php?action=ulslocalization&language=hi',
+ );
+ }
+
+ /**
+ * @see ApiBase::getExamplesMessages()
+ */
+ protected function getExamplesMessages() {
+ return array(
+ 'action=ulslocalization&language=ta'
+ => 'apihelp-ulslocalization-example-1',
+ 'action=ulslocalization&language=hi'
+ => 'apihelp-ulslocalization-example-2',
+ );
+ }
+}
diff --git a/MLEB/UniversalLanguageSelector/composer.json b/MLEB/UniversalLanguageSelector/composer.json
new file mode 100644
index 00000000..886a517a
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/composer.json
@@ -0,0 +1,27 @@
+{
+ "name": "mediawiki/universal-language-selector",
+ "type": "mediawiki-extension",
+ "description": "The primary aim is to allow users to select a language and configure its support in an easy way. Main features are language selection, input methods and web fonts.",
+ "keywords": [
+ "MediaWiki",
+ "Language selection",
+ "Input methods",
+ "Web fonts"
+ ],
+ "homepage": "https://www.mediawiki.org/wiki/Extension:UniversalLanguageSelector",
+ "license": [ "GPL-2.0+", "MIT" ],
+ "support": {
+ "issues": "https://bugzilla.wikimedia.org/",
+ "irc": "irc://irc.freenode.net/mediawiki-i18n"
+ },
+ "require": {
+ "php": ">=5.3.0",
+ "composer/installers": ">=1.0.1"
+ },
+ "suggest": {
+ "mediawiki/cldr": "Language names in all languages"
+ },
+ "autoload": {
+ "files": ["UniversalLanguageSelector.php"]
+ }
+}
diff --git a/MLEB/UniversalLanguageSelector/data/LanguageNameIndexer.php b/MLEB/UniversalLanguageSelector/data/LanguageNameIndexer.php
new file mode 100644
index 00000000..9fb5f57f
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/LanguageNameIndexer.php
@@ -0,0 +1,58 @@
+<?php
+/**
+ * Script to create language names index.
+ *
+ * Copyright (C) 2012 Alolita Sharma, Amir Aharoni, Arun Ganesh, Brandon Harris,
+ * Niklas Laxström, Pau Giner, Santhosh Thottingal, Siebrand Mazeland and other
+ * contributors. See CREDITS for a list.
+ *
+ * UniversalLanguageSelector is dual licensed GPLv2 or later and MIT. You don't
+ * have to do anything special to choose one license or the other and you don't
+ * have to notify anyone which license you are using. You are free to use
+ * UniversalLanguageSelector in commercial projects as long as the copyright
+ * header is left intact. See files GPL-LICENSE and MIT-LICENSE for details.
+ *
+ * @file
+ * @ingroup Extensions
+ * @licence GNU General Public Licence 2.0 or later
+ * @licence MIT License
+ */
+
+$IP = getenv( 'MW_INSTALL_PATH' );
+if ( $IP === false ) {
+ $IP = __DIR__ . '/../../..';
+}
+require_once "$IP/maintenance/Maintenance.php";
+
+class LanguageNameIndexer extends Maintenance {
+ public function __construct() {
+ parent::__construct();
+ $this->addDescription( 'Script to create language names index.' );
+ }
+
+ public function execute() {
+ $languages = Language::fetchLanguageNames( null, 'all' ); // since 1.20
+
+ $all = array();
+ $buckets = array();
+ foreach ( $languages as $code => $name ) {
+ $all[$code][strtolower( $name )] = true;
+ $langnames = LanguageNames::getNames( $code, 0, 2 );
+ foreach ( $langnames as $langCode => $langName ) {
+ $all[$langCode][] = strtolower( $langName );
+ }
+ }
+
+ foreach ( $all as $code => $names ) {
+ foreach ( $names as $name ) {
+ $bucket = LanguageNameSearch::getIndex( $name );
+ $buckets[$bucket][$name] = $code;
+ }
+ }
+ $this->output( "Total buckets: " . count( $buckets ) . "\n" );
+ file_put_contents( 'langnames.ser', serialize( $buckets ) );
+ }
+}
+
+$maintClass = 'LanguageNameIndexer';
+require_once RUN_MAINTENANCE_IF_MAIN;
diff --git a/MLEB/UniversalLanguageSelector/data/LanguageNameSearch.php b/MLEB/UniversalLanguageSelector/data/LanguageNameSearch.php
new file mode 100644
index 00000000..da1c76bb
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/LanguageNameSearch.php
@@ -0,0 +1,148 @@
+<?php
+/**
+ * Cross-Language Language name search
+ *
+ * Copyright (C) 2012 Alolita Sharma, Amir Aharoni, Arun Ganesh, Brandon Harris,
+ * Niklas Laxström, Pau Giner, Santhosh Thottingal, Siebrand Mazeland and other
+ * contributors. See CREDITS for a list.
+ *
+ * UniversalLanguageSelector is dual licensed GPLv2 or later and MIT. You don't
+ * have to do anything special to choose one license or the other and you don't
+ * have to notify anyone which license you are using. You are free to use
+ * UniversalLanguageSelector in commercial projects as long as the copyright
+ * header is left intact. See files GPL-LICENSE and MIT-LICENSE for details.
+ *
+ * @file
+ * @ingroup Extensions
+ * @licence GNU General Public Licence 2.0 or later
+ * @licence MIT License
+ */
+class LanguageNameSearch {
+ protected static $languagenames;
+
+ public static function init() {
+ self::$languagenames = unserialize( file_get_contents( __DIR__ . '/langnames.ser' ) );
+ }
+
+ public static function search( $searchKey, $typos = 0 ) {
+ if ( self::$languagenames === null ) {
+ self::init();
+ }
+
+ // @todo: Shouldn't this be unicode aware?
+ $searchKey = strtolower( $searchKey );
+ $index = self::getIndex( $searchKey );
+
+ if ( !isset( self::$languagenames[$index] ) ) {
+ return array();
+ }
+
+ $bucket = self::$languagenames[$index];
+
+ $results = array();
+ foreach ( $bucket as $name => $code ) {
+ // Prefix search
+ if ( strpos( $name, $searchKey, 0 ) === 0 ) {
+ $results[$code] = $name;
+ continue;
+ }
+ if ( $typos > 0 && self::levenshteinDistance( $name, $searchKey ) === $typos ) {
+ $results[$code] = $name;
+ }
+ }
+
+ return $results;
+ }
+
+ public static function getIndex( $name ) {
+ $codepoint = self::getCodepoint( $name );
+ if ( $codepoint < 1000 ) {
+ $bucket = $codepoint;
+ } else {
+ $bucket = $codepoint % 1000;
+ }
+
+ return $bucket;
+ }
+
+ /**
+ * Get the code point of first letter of string
+ *
+ * @param $str string
+ * @return integer Code point of first letter of string
+ */
+ static function getCodepoint( $str ) {
+ $values = array();
+ $lookingFor = 1;
+ $strLen = strlen( $str );
+ $number = 0;
+
+ for ( $i = 0; $i < $strLen; $i++ ) {
+ $thisValue = ord( $str[$i] );
+ if ( $thisValue < 128 ) {
+ $number = $thisValue;
+
+ break;
+ } else {
+ // Codepoints larger than 127 are represented by multi-byte sequences
+ if ( count( $values ) === 0 ) {
+ // 224 is the lowest non-overlong-encoded codepoint.
+ $lookingFor = ( $thisValue < 224 ) ? 2 : 3;
+ }
+
+ $values[] = $thisValue;
+ if ( count( $values ) === $lookingFor ) {
+ // Refer http://en.wikipedia.org/wiki/UTF-8#Description
+ if ( $lookingFor === 3 ) {
+ $number = ( $values[0] % 16 ) * 4096;
+ $number += ( $values[1] % 64 ) * 64;
+ $number += $values[2] % 64;
+ } else {
+ $number = ( $values[0] % 32 ) * 64;
+ $number += $values[1] % 64;
+ }
+
+ break;
+ }
+ }
+ }
+
+ return $number;
+ }
+
+ /**
+ * Calculate the Levenshtein distance between two strings
+ * @param $str1
+ * @param $str2
+ * @return integer
+ */
+ static function levenshteinDistance( $str1, $str2 ) {
+ $length1 = mb_strlen( $str1, 'UTF-8' );
+ $length2 = mb_strlen( $str2, 'UTF-8' );
+ if ( $length1 < $length2 ) {
+ return self::levenshteinDistance( $str2, $str1 );
+ }
+ if ( $length1 === 0 ) {
+ return $length2;
+ }
+ if ( $str1 === $str2 ) {
+ return 0;
+ }
+ $prevRow = range( 0, $length2 );
+ for ( $i = 0; $i < $length1; $i++ ) {
+ $currentRow = array();
+ $currentRow[0] = $i + 1;
+ $c1 = mb_substr( $str1, $i, 1, 'UTF-8' );
+ for ( $j = 0; $j < $length2; $j++ ) {
+ $c2 = mb_substr( $str2, $j, 1, 'UTF-8' );
+ $insertions = $prevRow[$j + 1] + 1;
+ $deletions = $currentRow[$j] + 1;
+ $substitutions = $prevRow[$j] + ( ( $c1 !== $c2 ) ? 1 : 0 );
+ $currentRow[] = min( $insertions, $deletions, $substitutions );
+ }
+ $prevRow = $currentRow;
+ }
+
+ return $prevRow[$length2];
+ }
+}
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/TODO b/MLEB/UniversalLanguageSelector/data/fontrepo/TODO
new file mode 100644
index 00000000..17db685b
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/TODO
@@ -0,0 +1,7 @@
+* New version of Amiri font is available
+* Siyam Rupali TTF claims GPL2+, website GPL3
+* Madan only says "GPL", no proper upstream link
+* Miriam CLM has new upstream version (maybe also Taamey Frank?)
+* KhmerOS font version number does not match upstream (v5)
+* New version of CharisSIL is available
+* utkal only says GPL, not version number
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/AbyssinicaSIL/AbyssinicaSIL-R.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/AbyssinicaSIL/AbyssinicaSIL-R.eot
new file mode 100644
index 00000000..2bad89c9
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/AbyssinicaSIL/AbyssinicaSIL-R.eot
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/AbyssinicaSIL/AbyssinicaSIL-R.ttf b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/AbyssinicaSIL/AbyssinicaSIL-R.ttf
new file mode 100644
index 00000000..bccfbb79
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/AbyssinicaSIL/AbyssinicaSIL-R.ttf
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/AbyssinicaSIL/AbyssinicaSIL-R.woff b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/AbyssinicaSIL/AbyssinicaSIL-R.woff
new file mode 100644
index 00000000..670801cc
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/AbyssinicaSIL/AbyssinicaSIL-R.woff
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/AbyssinicaSIL/font.ini b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/AbyssinicaSIL/font.ini
new file mode 100644
index 00000000..7715270b
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/AbyssinicaSIL/font.ini
@@ -0,0 +1,7 @@
+[AbyssinicaSIL]
+languages=am*, ti*, gez*, tig*
+version=1.500
+license=OFL-1.1
+licensefile=OFL.txt
+request-url=https://gerrit.wikimedia.org/r/#/c/25479/, https://gerrit.wikimedia.org/r/#/c/90306/
+url=http://scripts.sil.org/AbyssinicaSIL
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Akkadian/Akkadian.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Akkadian/Akkadian.eot
new file mode 100644
index 00000000..b7f36918
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Akkadian/Akkadian.eot
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Akkadian/Akkadian.ttf b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Akkadian/Akkadian.ttf
new file mode 100644
index 00000000..eed431a7
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Akkadian/Akkadian.ttf
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Akkadian/Akkadian.woff b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Akkadian/Akkadian.woff
new file mode 100644
index 00000000..a3807e9c
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Akkadian/Akkadian.woff
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Akkadian/font.ini b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Akkadian/font.ini
new file mode 100644
index 00000000..29284ff5
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Akkadian/font.ini
@@ -0,0 +1,8 @@
+[Akkadian]
+languages=akk*, sux*
+version=2.56
+license=George-Douros
+licensefile=George-Douros.txt
+request-url=https://gerrit.wikimedia.org/r/#/c/25479/
+;original request http://ultimategerardm.blogspot.in/2012/02/cuneiform-is-supported-at.html
+url="http://users.teilar.gr/~g1951d/"
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Alef/Alef-Bold.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Alef/Alef-Bold.eot
new file mode 100644
index 00000000..42112a80
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Alef/Alef-Bold.eot
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Alef/Alef-Bold.ttf b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Alef/Alef-Bold.ttf
new file mode 100644
index 00000000..09b79dce
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Alef/Alef-Bold.ttf
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Alef/Alef-Bold.woff b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Alef/Alef-Bold.woff
new file mode 100644
index 00000000..f524aa7f
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Alef/Alef-Bold.woff
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Alef/Alef-Regular.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Alef/Alef-Regular.eot
new file mode 100644
index 00000000..2dd6f2ed
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Alef/Alef-Regular.eot
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Alef/Alef-Regular.ttf b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Alef/Alef-Regular.ttf
new file mode 100644
index 00000000..3390fb91
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Alef/Alef-Regular.ttf
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Alef/Alef-Regular.woff b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Alef/Alef-Regular.woff
new file mode 100644
index 00000000..9e4efd24
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Alef/Alef-Regular.woff
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Alef/font.ini b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Alef/font.ini
new file mode 100644
index 00000000..61ca3254
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Alef/font.ini
@@ -0,0 +1,16 @@
+[Alef]
+languages=he, yi, hbo
+version=1.0
+license=OFL-1.1
+licensefile=OFL.txt
+url=http://alef.hagilda.com/
+ttf=Alef-Regular.ttf
+eot=Alef-Regular.eot
+woff=Alef-Regular.woff
+bold=Alef Bold
+
+[Alef Bold]
+ttf=Alef-Bold.ttf
+eot=Alef-Bold.eot
+woff=Alef-Bold.woff
+fontweight=bold
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/AnjaliOldLipi/AnjaliOldLipi.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/AnjaliOldLipi/AnjaliOldLipi.eot
new file mode 100644
index 00000000..d8595eda
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/AnjaliOldLipi/AnjaliOldLipi.eot
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/AnjaliOldLipi/AnjaliOldLipi.ttf b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/AnjaliOldLipi/AnjaliOldLipi.ttf
new file mode 100644
index 00000000..6c76fa73
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/AnjaliOldLipi/AnjaliOldLipi.ttf
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/AnjaliOldLipi/AnjaliOldLipi.woff b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/AnjaliOldLipi/AnjaliOldLipi.woff
new file mode 100644
index 00000000..835a05e4
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/AnjaliOldLipi/AnjaliOldLipi.woff
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/AnjaliOldLipi/font.ini b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/AnjaliOldLipi/font.ini
new file mode 100644
index 00000000..b3852fa6
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/AnjaliOldLipi/font.ini
@@ -0,0 +1,6 @@
+[AnjaliOldLipi]
+languages=ml
+version=.0.730
+license=OFL-1.1
+licensefile=OFL.txt
+url=https://sites.google.com/site/cibu/anjalioldlipi-font
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Artaxerxes/Artaxerxes.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Artaxerxes/Artaxerxes.eot
new file mode 100644
index 00000000..f2fe6d23
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Artaxerxes/Artaxerxes.eot
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Artaxerxes/Artaxerxes.ttf b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Artaxerxes/Artaxerxes.ttf
new file mode 100644
index 00000000..304067dd
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Artaxerxes/Artaxerxes.ttf
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Artaxerxes/Artaxerxes.woff b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Artaxerxes/Artaxerxes.woff
new file mode 100644
index 00000000..77c84673
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Artaxerxes/Artaxerxes.woff
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Artaxerxes/font.ini b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Artaxerxes/font.ini
new file mode 100644
index 00000000..d09b45ac
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Artaxerxes/font.ini
@@ -0,0 +1,7 @@
+[Artaxerxes]
+languages=peo*
+version=1.400
+license=GPL-2.0-with-font-exception
+licensefile=gpl-2.0.txt
+request-url=https://gerrit.wikimedia.org/r/#/c/110534
+url=https://github.com/PersianWikipedia/artaxerxes
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Autonym/Autonym.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Autonym/Autonym.eot
new file mode 100644
index 00000000..5e1a2636
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Autonym/Autonym.eot
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Autonym/Autonym.ttf b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Autonym/Autonym.ttf
new file mode 100644
index 00000000..0565206d
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Autonym/Autonym.ttf
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Autonym/Autonym.woff b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Autonym/Autonym.woff
new file mode 100644
index 00000000..13b55d32
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Autonym/Autonym.woff
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Autonym/font.ini b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Autonym/font.ini
new file mode 100644
index 00000000..14e9ee48
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Autonym/font.ini
@@ -0,0 +1,6 @@
+[Autonym]
+languages=mul
+version=20131205
+license=OFL-1.1
+licensefile=OFL.txt
+url=https://github.com/santhoshtr/AutonymFont/
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/CharisSIL/CharisSIL-R.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/CharisSIL/CharisSIL-R.eot
new file mode 100644
index 00000000..50375688
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/CharisSIL/CharisSIL-R.eot
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/CharisSIL/CharisSIL-R.ttf b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/CharisSIL/CharisSIL-R.ttf
new file mode 100644
index 00000000..28e888b9
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/CharisSIL/CharisSIL-R.ttf
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/CharisSIL/CharisSIL-R.woff b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/CharisSIL/CharisSIL-R.woff
new file mode 100644
index 00000000..2a0d4a3f
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/CharisSIL/CharisSIL-R.woff
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/CharisSIL/font.ini b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/CharisSIL/font.ini
new file mode 100644
index 00000000..65b07606
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/CharisSIL/font.ini
@@ -0,0 +1,7 @@
+[CharisSIL]
+languages=cdo,nan
+version=4.011
+license=OFL-1.1
+licensefile=OFL.txt
+request-url=https://gerrit.wikimedia.org/r/#/c/25479/,https://bugzilla.wikimedia.org/47190
+url=http://scripts.sil.org/CharisSIL
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/ComicNeue/ComicNeue-Bold.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/ComicNeue/ComicNeue-Bold.eot
new file mode 100644
index 00000000..992e2cb6
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/ComicNeue/ComicNeue-Bold.eot
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/ComicNeue/ComicNeue-Bold.ttf b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/ComicNeue/ComicNeue-Bold.ttf
new file mode 100644
index 00000000..d70924af
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/ComicNeue/ComicNeue-Bold.ttf
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/ComicNeue/ComicNeue-Bold.woff b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/ComicNeue/ComicNeue-Bold.woff
new file mode 100644
index 00000000..20963d72
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/ComicNeue/ComicNeue-Bold.woff
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/ComicNeue/ComicNeue-Regular-Oblique.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/ComicNeue/ComicNeue-Regular-Oblique.eot
new file mode 100644
index 00000000..32b81645
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/ComicNeue/ComicNeue-Regular-Oblique.eot
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/ComicNeue/ComicNeue-Regular-Oblique.ttf b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/ComicNeue/ComicNeue-Regular-Oblique.ttf
new file mode 100644
index 00000000..a950b895
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/ComicNeue/ComicNeue-Regular-Oblique.ttf
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/ComicNeue/ComicNeue-Regular-Oblique.woff b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/ComicNeue/ComicNeue-Regular-Oblique.woff
new file mode 100644
index 00000000..19e7f000
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/ComicNeue/ComicNeue-Regular-Oblique.woff
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/ComicNeue/ComicNeue-Regular.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/ComicNeue/ComicNeue-Regular.eot
new file mode 100644
index 00000000..3bfc4531
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/ComicNeue/ComicNeue-Regular.eot
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/ComicNeue/ComicNeue-Regular.ttf b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/ComicNeue/ComicNeue-Regular.ttf
new file mode 100644
index 00000000..6704d7dc
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/ComicNeue/ComicNeue-Regular.ttf
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/ComicNeue/ComicNeue-Regular.woff b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/ComicNeue/ComicNeue-Regular.woff
new file mode 100644
index 00000000..96b8014a
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/ComicNeue/ComicNeue-Regular.woff
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/ComicNeue/font.ini b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/ComicNeue/font.ini
new file mode 100644
index 00000000..238766ab
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/ComicNeue/font.ini
@@ -0,0 +1,23 @@
+[ComicNeue]
+languages=af,bk,ca,cy,da,de,en,es,et,fi,fo,fr,fy,ga,gd,gl,hu,id,is,it,lb,li,mi,ms,nb,nl,oc,pl,pt,sq,sv,sw,tl,tr,wa
+url=http://comicneue.com/
+license=CC0 1.0 Universal
+licensefile=CC0-3.0.txt
+version=1.1
+ttf=ComicNeue-Regular.ttf
+eot=ComicNeue-Regular.eot
+woff=ComicNeue-Regular.woff
+bold=ComicNeue Bold
+italic=ComicNeue Oblique
+
+[ComicNeue Bold]
+ttf=ComicNeue-Bold.ttf
+eot=ComicNeue-Bold.eot
+woff=ComicNeue-Bold.woff
+fontweight=bold
+
+[ComicNeue Oblique]
+ttf=ComicNeue-Regular-Oblique.ttf
+eot=ComicNeue-Regular-Oblique.eot
+woff=ComicNeue-Regular-Oblique.woff
+fontstyle=italic
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/DoulosSIL/DoulosSIL-R.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/DoulosSIL/DoulosSIL-R.eot
new file mode 100644
index 00000000..06d562e9
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/DoulosSIL/DoulosSIL-R.eot
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/DoulosSIL/DoulosSIL-R.ttf b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/DoulosSIL/DoulosSIL-R.ttf
new file mode 100644
index 00000000..2b0025bc
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/DoulosSIL/DoulosSIL-R.ttf
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/DoulosSIL/DoulosSIL-R.woff b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/DoulosSIL/DoulosSIL-R.woff
new file mode 100644
index 00000000..4e2b97dd
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/DoulosSIL/DoulosSIL-R.woff
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/DoulosSIL/font.ini b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/DoulosSIL/font.ini
new file mode 100644
index 00000000..ded1918c
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/DoulosSIL/font.ini
@@ -0,0 +1,7 @@
+[Doulos SIL]
+languages=nan
+version=4.112
+license=OFL-1.1
+licensefile=OFL.txt
+request-url=https://bugzilla.wikimedia.org/47190
+url=http://scripts.sil.org/DoulosSIL
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/EastSyriacAdiabene/SyrCOMAdiabene.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/EastSyriacAdiabene/SyrCOMAdiabene.eot
new file mode 100644
index 00000000..202cb211
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/EastSyriacAdiabene/SyrCOMAdiabene.eot
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/EastSyriacAdiabene/SyrCOMAdiabene.ttf b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/EastSyriacAdiabene/SyrCOMAdiabene.ttf
new file mode 100644
index 00000000..8893f484
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/EastSyriacAdiabene/SyrCOMAdiabene.ttf
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/EastSyriacAdiabene/SyrCOMAdiabene.woff b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/EastSyriacAdiabene/SyrCOMAdiabene.woff
new file mode 100644
index 00000000..2a162e9e
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/EastSyriacAdiabene/SyrCOMAdiabene.woff
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/EastSyriacAdiabene/font.ini b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/EastSyriacAdiabene/font.ini
new file mode 100644
index 00000000..5d5800f7
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/EastSyriacAdiabene/font.ini
@@ -0,0 +1,6 @@
+[East Syriac Adiabene]
+languages=syc,arc
+version=1.21
+license=East Syriac Adiabene License
+licensefile=melthofontsLicense.txt
+url=http://www.bethmardutho.org/index.php/resources/fonts.html
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/EstrangeloEdessa/SyrCOMEdessa.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/EstrangeloEdessa/SyrCOMEdessa.eot
new file mode 100644
index 00000000..1a4d1eed
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/EstrangeloEdessa/SyrCOMEdessa.eot
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/EstrangeloEdessa/SyrCOMEdessa.ttf b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/EstrangeloEdessa/SyrCOMEdessa.ttf
new file mode 100644
index 00000000..84878e10
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/EstrangeloEdessa/SyrCOMEdessa.ttf
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/EstrangeloEdessa/SyrCOMEdessa.woff b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/EstrangeloEdessa/SyrCOMEdessa.woff
new file mode 100644
index 00000000..ff32ea5c
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/EstrangeloEdessa/SyrCOMEdessa.woff
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/EstrangeloEdessa/font.ini b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/EstrangeloEdessa/font.ini
new file mode 100644
index 00000000..74e82f89
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/EstrangeloEdessa/font.ini
@@ -0,0 +1,7 @@
+[Estrangelo Edessa]
+languages=syc*,arc*
+version=1.21
+license=Estrangelo Edessa License
+licensefile=melthofontsLicense.txt
+request-url=https://bugzilla.wikimedia.org/47229
+url=http://www.bethmardutho.org/index.php/resources/fonts.html
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/FreeFontThana/FreeFont-Thaana-Bold.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/FreeFontThana/FreeFont-Thaana-Bold.eot
new file mode 100644
index 00000000..9b04d36c
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/FreeFontThana/FreeFont-Thaana-Bold.eot
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/FreeFontThana/FreeFont-Thaana-Bold.ttf b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/FreeFontThana/FreeFont-Thaana-Bold.ttf
new file mode 100644
index 00000000..c825f6f3
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/FreeFontThana/FreeFont-Thaana-Bold.ttf
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/FreeFontThana/FreeFont-Thaana-Bold.woff b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/FreeFontThana/FreeFont-Thaana-Bold.woff
new file mode 100644
index 00000000..93c256b3
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/FreeFontThana/FreeFont-Thaana-Bold.woff
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/FreeFontThana/FreeFont-Thaana.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/FreeFontThana/FreeFont-Thaana.eot
new file mode 100644
index 00000000..9eaaf780
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/FreeFontThana/FreeFont-Thaana.eot
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/FreeFontThana/FreeFont-Thaana.ttf b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/FreeFontThana/FreeFont-Thaana.ttf
new file mode 100644
index 00000000..b5994ee4
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/FreeFontThana/FreeFont-Thaana.ttf
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/FreeFontThana/FreeFont-Thaana.woff b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/FreeFontThana/FreeFont-Thaana.woff
new file mode 100644
index 00000000..ffc0cdcb
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/FreeFontThana/FreeFont-Thaana.woff
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/FreeFontThana/font.ini b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/FreeFontThana/font.ini
new file mode 100644
index 00000000..cb45a466
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/FreeFontThana/font.ini
@@ -0,0 +1,17 @@
+[FreeFont-Thaana]
+languages=dv*
+version=1.0
+license=GPL-3.0
+licensefile=gpl-3.0.txt
+url=www.gnu.org/software/freefont
+request-url=https://bugzilla.wikimedia.org/42812
+ttf=FreeFont-Thaana.ttf
+eot=FreeFont-Thaana.eot
+woff=FreeFont-Thaana.woff
+bold=FreeFont-Thaana Bold
+
+[FreeFont-Thaana Bold]
+ttf=FreeFont-Thaana-Bold.ttf
+eot=FreeFont-Thaana-Bold.eot
+woff=FreeFont-Thaana-Bold.woff
+fontweight=bold
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/GentiumPlus/GentiumPlus-I.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/GentiumPlus/GentiumPlus-I.eot
new file mode 100644
index 00000000..20c98232
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/GentiumPlus/GentiumPlus-I.eot
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/GentiumPlus/GentiumPlus-I.ttf b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/GentiumPlus/GentiumPlus-I.ttf
new file mode 100644
index 00000000..df922fdf
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/GentiumPlus/GentiumPlus-I.ttf
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/GentiumPlus/GentiumPlus-I.woff b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/GentiumPlus/GentiumPlus-I.woff
new file mode 100644
index 00000000..64be2284
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/GentiumPlus/GentiumPlus-I.woff
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/GentiumPlus/GentiumPlus-R.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/GentiumPlus/GentiumPlus-R.eot
new file mode 100644
index 00000000..abbfe64b
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/GentiumPlus/GentiumPlus-R.eot
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/GentiumPlus/GentiumPlus-R.ttf b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/GentiumPlus/GentiumPlus-R.ttf
new file mode 100644
index 00000000..d80226c0
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/GentiumPlus/GentiumPlus-R.ttf
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/GentiumPlus/GentiumPlus-R.woff b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/GentiumPlus/GentiumPlus-R.woff
new file mode 100644
index 00000000..be187f14
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/GentiumPlus/GentiumPlus-R.woff
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/GentiumPlus/font.ini b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/GentiumPlus/font.ini
new file mode 100644
index 00000000..913ee8bb
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/GentiumPlus/font.ini
@@ -0,0 +1,16 @@
+[GentiumPlus]
+languages=grc
+version=1.510
+license=OFL-1.1
+licensefile=OFL.txt
+url=http://scripts.sil.org/gentium
+ttf=GentiumPlus-R.ttf
+eot=GentiumPlus-R.eot
+woff=GentiumPlus-R.woff
+italic=GentiumPlus Italic
+
+[GentiumPlus Italic]
+ttf=GentiumPlus-I.ttf
+eot=GentiumPlus-I.eot
+woff=GentiumPlus-I.woff
+fontstyle=italic
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Gubbi/Gubbi.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Gubbi/Gubbi.eot
new file mode 100644
index 00000000..847cc220
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Gubbi/Gubbi.eot
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Gubbi/Gubbi.ttf b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Gubbi/Gubbi.ttf
new file mode 100644
index 00000000..57e3470d
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Gubbi/Gubbi.ttf
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Gubbi/Gubbi.woff b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Gubbi/Gubbi.woff
new file mode 100644
index 00000000..2b79d1c8
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Gubbi/Gubbi.woff
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Gubbi/font.ini b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Gubbi/font.ini
new file mode 100644
index 00000000..525d8435
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Gubbi/font.ini
@@ -0,0 +1,6 @@
+[Gubbi]
+languages=kn, tcy
+version=1.3
+license=GPL-3.0+
+licensefile=gpl-3.0.txt
+url=https://github.com/aravindavk/Gubbi/
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Hanuman/Hanuman.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Hanuman/Hanuman.eot
new file mode 100644
index 00000000..2415a887
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Hanuman/Hanuman.eot
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Hanuman/Hanuman.ttf b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Hanuman/Hanuman.ttf
new file mode 100644
index 00000000..448bd744
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Hanuman/Hanuman.ttf
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Hanuman/Hanuman.woff b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Hanuman/Hanuman.woff
new file mode 100644
index 00000000..5305f32a
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Hanuman/Hanuman.woff
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Hanuman/Hanumanb.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Hanuman/Hanumanb.eot
new file mode 100644
index 00000000..9c643406
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Hanuman/Hanumanb.eot
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Hanuman/Hanumanb.ttf b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Hanuman/Hanumanb.ttf
new file mode 100644
index 00000000..54086bfc
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Hanuman/Hanumanb.ttf
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Hanuman/Hanumanb.woff b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Hanuman/Hanumanb.woff
new file mode 100644
index 00000000..f05384d4
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Hanuman/Hanumanb.woff
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Hanuman/font.ini b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Hanuman/font.ini
new file mode 100644
index 00000000..fa7e9cb9
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Hanuman/font.ini
@@ -0,0 +1,17 @@
+[Hanuman]
+languages=km
+version=1.0
+license=OFL-1.1
+licensefile=OFL.txt
+url=http://www.google.com/fonts/specimen/Hanuman
+request-url=https://bugzilla.wikimedia.org/53673
+ttf=Hanuman.ttf
+eot=Hanuman.eot
+woff=Hanuman.woff
+bold=Hanuman Bold
+
+[Hanuman Bold]
+ttf=Hanumanb.ttf
+eot=Hanumanb.eot
+woff=Hanumanb.woff
+fontweight=bold
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/HussainiNastaleeq/font.ini b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/HussainiNastaleeq/font.ini
new file mode 100644
index 00000000..182d3a58
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/HussainiNastaleeq/font.ini
@@ -0,0 +1,7 @@
+[Hussaini Nastaleeq]
+languages=ur
+version=0.01
+license=HussainiNastaleeq
+licensefile=HussainiNastaleeq.txt
+request-url=https://bugzilla.wikimedia.org/56939
+url=https://github.com/khaledhosny/hussaini-nastaleeq
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/HussainiNastaleeq/hussaini-nastaleeq.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/HussainiNastaleeq/hussaini-nastaleeq.eot
new file mode 100644
index 00000000..a8db6c3b
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/HussainiNastaleeq/hussaini-nastaleeq.eot
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/HussainiNastaleeq/hussaini-nastaleeq.ttf b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/HussainiNastaleeq/hussaini-nastaleeq.ttf
new file mode 100644
index 00000000..c175c95b
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/HussainiNastaleeq/hussaini-nastaleeq.ttf
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/HussainiNastaleeq/hussaini-nastaleeq.woff b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/HussainiNastaleeq/hussaini-nastaleeq.woff
new file mode 100644
index 00000000..7b568f04
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/HussainiNastaleeq/hussaini-nastaleeq.woff
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/IranianSans/font.ini b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/IranianSans/font.ini
new file mode 100644
index 00000000..2fcf361a
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/IranianSans/font.ini
@@ -0,0 +1,17 @@
+[Iranian Sans]
+languages=fa
+version=1.000
+license=IranianSans
+licensefile=IranianSans.txt
+request-url=https://fa.wikipedia.org/wiki/%D9%88%DB%8C%DA%A9%DB%8C%E2%80%8C%D9%BE%D8%AF%DB%8C%D8%A7:%D9%86%D8%B8%D8%B1%D8%AE%D9%88%D8%A7%D9%87%DB%8C/%D8%A7%D9%81%D8%B2%D9%88%D8%AF%D9%86_%DB%8C%DA%A9_%D9%82%D9%84%D9%85_%D9%88_%D8%AD%D8%B0%D9%81_%D9%82%D9%84%D9%85%DB%8C_%D8%AF%DB%8C%DA%AF%D8%B1
+url=http://fedoraproject.org/wiki/Iranian_fonts
+ttf=irsans.ttf
+eot=irsans.eot
+woff=irsans.woff
+bold=Iranian Sans Bold
+
+[Iranian Sans Bold]
+ttf=irsansb.ttf
+eot=irsansb.eot
+woff=irsansb.woff
+fontweight=bold
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/IranianSans/irsans.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/IranianSans/irsans.eot
new file mode 100644
index 00000000..5e5b8dac
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/IranianSans/irsans.eot
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/IranianSans/irsans.ttf b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/IranianSans/irsans.ttf
new file mode 100644
index 00000000..b66dad72
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/IranianSans/irsans.ttf
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/IranianSans/irsans.woff b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/IranianSans/irsans.woff
new file mode 100644
index 00000000..d9267838
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/IranianSans/irsans.woff
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/IranianSans/irsansb.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/IranianSans/irsansb.eot
new file mode 100644
index 00000000..179a7ea5
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/IranianSans/irsansb.eot
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/IranianSans/irsansb.ttf b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/IranianSans/irsansb.ttf
new file mode 100644
index 00000000..6b015bd0
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/IranianSans/irsansb.ttf
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/IranianSans/irsansb.woff b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/IranianSans/irsansb.woff
new file mode 100644
index 00000000..4e1e6f56
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/IranianSans/irsansb.woff
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/IranianSerif/font.ini b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/IranianSerif/font.ini
new file mode 100644
index 00000000..bb975ebc
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/IranianSerif/font.ini
@@ -0,0 +1,10 @@
+[Iranian Serif]
+languages=fa
+version=1.000
+license=IranianSans
+licensefile=IranianSans.txt
+request-url=https://fa.wikipedia.org/wiki/%D9%88%DB%8C%DA%A9%DB%8C%E2%80%8C%D9%BE%D8%AF%DB%8C%D8%A7:%D9%86%D8%B8%D8%B1%D8%AE%D9%88%D8%A7%D9%87%DB%8C/%D8%A7%D9%81%D8%B2%D9%88%D8%AF%D9%86_%DB%8C%DA%A9_%D9%82%D9%84%D9%85_%D9%88_%D8%AD%D8%B0%D9%81_%D9%82%D9%84%D9%85%DB%8C_%D8%AF%DB%8C%DA%AF%D8%B1
+url=http://fedoraproject.org/wiki/Iranian_fonts
+ttf=irseri.ttf
+eot=irseri.eot
+woff=irseri.woff
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/IranianSerif/irseri.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/IranianSerif/irseri.eot
new file mode 100644
index 00000000..d6b7e4fd
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/IranianSerif/irseri.eot
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/IranianSerif/irseri.ttf b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/IranianSerif/irseri.ttf
new file mode 100644
index 00000000..b54735ea
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/IranianSerif/irseri.ttf
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/IranianSerif/irseri.woff b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/IranianSerif/irseri.woff
new file mode 100644
index 00000000..243b16fd
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/IranianSerif/irseri.woff
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Jomolhari/Jomolhari.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Jomolhari/Jomolhari.eot
new file mode 100644
index 00000000..33529b91
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Jomolhari/Jomolhari.eot
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Jomolhari/Jomolhari.ttf b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Jomolhari/Jomolhari.ttf
new file mode 100644
index 00000000..ca695b61
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Jomolhari/Jomolhari.ttf
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Jomolhari/Jomolhari.woff b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Jomolhari/Jomolhari.woff
new file mode 100644
index 00000000..9ce11ac6
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Jomolhari/Jomolhari.woff
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Jomolhari/font.ini b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Jomolhari/font.ini
new file mode 100644
index 00000000..98bacfb9
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Jomolhari/font.ini
@@ -0,0 +1,8 @@
+[Jomolhari]
+languages=bo*, dz*, adx*, bod*, dre*, hut*, lhm*, muk*, kte*, tsk*, ola*, loy*, tcn*, thw*, xct*, goe*, khg*, kbg*, lbj*, zau*, lya*, luk*, otb*
+version=0.003
+license=OFL-1.1
+licensefile=OFL.txt
+request-url=https://gerrit.wikimedia.org/r/#/c/25479/, https://gerrit.wikimedia.org/r/#/c/90308/
+;originally requested through https://bugzilla.wikimedia.org/33718
+url=https://sites.google.com/site/chrisfynn2/home/fonts/jomolhari
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Junicode/Junicode-Bold.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Junicode/Junicode-Bold.eot
new file mode 100644
index 00000000..de4a9404
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Junicode/Junicode-Bold.eot
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Junicode/Junicode-Bold.ttf b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Junicode/Junicode-Bold.ttf
new file mode 100644
index 00000000..8af545b1
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Junicode/Junicode-Bold.ttf
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Junicode/Junicode-Bold.woff b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Junicode/Junicode-Bold.woff
new file mode 100644
index 00000000..9081b671
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Junicode/Junicode-Bold.woff
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Junicode/Junicode-BoldItalic.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Junicode/Junicode-BoldItalic.eot
new file mode 100644
index 00000000..8d5614f8
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Junicode/Junicode-BoldItalic.eot
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Junicode/Junicode-BoldItalic.ttf b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Junicode/Junicode-BoldItalic.ttf
new file mode 100644
index 00000000..06847e5d
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Junicode/Junicode-BoldItalic.ttf
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Junicode/Junicode-BoldItalic.woff b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Junicode/Junicode-BoldItalic.woff
new file mode 100644
index 00000000..ef305689
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Junicode/Junicode-BoldItalic.woff
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Junicode/Junicode-Italic.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Junicode/Junicode-Italic.eot
new file mode 100644
index 00000000..ba971814
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Junicode/Junicode-Italic.eot
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Junicode/Junicode-Italic.ttf b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Junicode/Junicode-Italic.ttf
new file mode 100644
index 00000000..6986092a
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Junicode/Junicode-Italic.ttf
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Junicode/Junicode-Italic.woff b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Junicode/Junicode-Italic.woff
new file mode 100644
index 00000000..d400147c
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Junicode/Junicode-Italic.woff
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Junicode/Junicode.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Junicode/Junicode.eot
new file mode 100644
index 00000000..9de769b7
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Junicode/Junicode.eot
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Junicode/Junicode.ttf b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Junicode/Junicode.ttf
new file mode 100644
index 00000000..d21505da
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Junicode/Junicode.ttf
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Junicode/Junicode.woff b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Junicode/Junicode.woff
new file mode 100644
index 00000000..b8354301
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Junicode/Junicode.woff
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Junicode/font.ini b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Junicode/font.ini
new file mode 100644
index 00000000..a206475f
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Junicode/font.ini
@@ -0,0 +1,31 @@
+[Junicode]
+languages=ang
+version=2013-01-17
+license=OFL-1.1
+licensefile=OFL.txt
+url=http://junicode.sourceforge.net/
+ttf=Junicode.ttf
+eot=Junicode.eot
+woff=Junicode.woff
+italic=Junicode Italic
+bold=Junicode Bold
+bolditalic=Junicode Bold Italic
+
+[Junicode Italic]
+ttf=Junicode-Italic.ttf
+eot=Junicode-Italic.eot
+woff=Junicode-Italic.woff
+fontstyle=italic
+
+[Junicode Bold]
+ttf=Junicode-Bold.ttf
+eot=Junicode-Bold.eot
+woff=Junicode-Bold.woff
+fontweight=bold
+
+[Junicode Bold Italic]
+ttf=Junicode-BoldItalic.ttf
+eot=Junicode-BoldItalic.eot
+woff=Junicode-BoldItalic.woff
+fontstyle=italic
+fontweight=bold
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/KhmerOS/KhmerOS.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/KhmerOS/KhmerOS.eot
new file mode 100644
index 00000000..2e8a7058
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/KhmerOS/KhmerOS.eot
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/KhmerOS/KhmerOS.ttf b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/KhmerOS/KhmerOS.ttf
new file mode 100644
index 00000000..2449c547
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/KhmerOS/KhmerOS.ttf
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/KhmerOS/KhmerOS.woff b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/KhmerOS/KhmerOS.woff
new file mode 100644
index 00000000..84b7f221
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/KhmerOS/KhmerOS.woff
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/KhmerOS/font.ini b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/KhmerOS/font.ini
new file mode 100644
index 00000000..152ad1a4
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/KhmerOS/font.ini
@@ -0,0 +1,6 @@
+[KhmerOS]
+languages=km
+version=1.10
+license=LGPL-2.0.1+
+licensefile=lgpl-2.1.txt
+url=http://www.khmeros.info/drupal612/en/fonts
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/KhmerOSbattambang/KhmerOSbattambang.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/KhmerOSbattambang/KhmerOSbattambang.eot
new file mode 100644
index 00000000..b7f6aa94
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/KhmerOSbattambang/KhmerOSbattambang.eot
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/KhmerOSbattambang/KhmerOSbattambang.ttf b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/KhmerOSbattambang/KhmerOSbattambang.ttf
new file mode 100644
index 00000000..473b1f9a
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/KhmerOSbattambang/KhmerOSbattambang.ttf
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/KhmerOSbattambang/KhmerOSbattambang.woff b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/KhmerOSbattambang/KhmerOSbattambang.woff
new file mode 100644
index 00000000..5ef03431
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/KhmerOSbattambang/KhmerOSbattambang.woff
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/KhmerOSbattambang/font.ini b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/KhmerOSbattambang/font.ini
new file mode 100644
index 00000000..83db3697
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/KhmerOSbattambang/font.ini
@@ -0,0 +1,7 @@
+[KhmerOSbattambang]
+languages=km*
+version=1.10
+license=LGPL-2.1+
+licensefile=lgpl-2.1.txt
+request-url=https://www.mediawiki.org/wiki/Special:Code/MediaWiki/87161
+url=http://www.khmeros.info/drupal612/en/fonts
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Lateef/LateefRegOT.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Lateef/LateefRegOT.eot
new file mode 100644
index 00000000..e8fb726a
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Lateef/LateefRegOT.eot
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Lateef/LateefRegOT.ttf b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Lateef/LateefRegOT.ttf
new file mode 100644
index 00000000..f89d32be
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Lateef/LateefRegOT.ttf
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Lateef/LateefRegOT.woff b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Lateef/LateefRegOT.woff
new file mode 100644
index 00000000..32ab5add
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Lateef/LateefRegOT.woff
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Lateef/font.ini b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Lateef/font.ini
new file mode 100644
index 00000000..0bf72729
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Lateef/font.ini
@@ -0,0 +1,10 @@
+[Lateef]
+languages=fa, ckb
+version=1.001
+license=OFL-1.1
+licensefile=OFL.txt
+request-url=https://bugzilla.wikimedia.org/58381, https://bugzilla.wikimedia.org/58382
+url=http://scripts.sil.org/Lateef
+ttf=LateefRegOT.ttf
+eot=LateefRegOT.eot
+woff=LateefRegOT.woff
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LinuxLibertine/LinLibertine_RBIah.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LinuxLibertine/LinLibertine_RBIah.eot
new file mode 100644
index 00000000..d6fdbbc7
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LinuxLibertine/LinLibertine_RBIah.eot
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LinuxLibertine/LinLibertine_RBIah.ttf b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LinuxLibertine/LinLibertine_RBIah.ttf
new file mode 100644
index 00000000..3902980f
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LinuxLibertine/LinLibertine_RBIah.ttf
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LinuxLibertine/LinLibertine_RBIah.woff b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LinuxLibertine/LinLibertine_RBIah.woff
new file mode 100644
index 00000000..7a012c77
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LinuxLibertine/LinLibertine_RBIah.woff
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LinuxLibertine/LinLibertine_RBah.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LinuxLibertine/LinLibertine_RBah.eot
new file mode 100644
index 00000000..60c39f11
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LinuxLibertine/LinLibertine_RBah.eot
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LinuxLibertine/LinLibertine_RBah.ttf b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LinuxLibertine/LinLibertine_RBah.ttf
new file mode 100644
index 00000000..7eaeb0fd
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LinuxLibertine/LinLibertine_RBah.ttf
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LinuxLibertine/LinLibertine_RBah.woff b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LinuxLibertine/LinLibertine_RBah.woff
new file mode 100644
index 00000000..a9620d3a
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LinuxLibertine/LinLibertine_RBah.woff
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LinuxLibertine/LinLibertine_RIah.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LinuxLibertine/LinLibertine_RIah.eot
new file mode 100644
index 00000000..183a18aa
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LinuxLibertine/LinLibertine_RIah.eot
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LinuxLibertine/LinLibertine_RIah.ttf b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LinuxLibertine/LinLibertine_RIah.ttf
new file mode 100644
index 00000000..d0c800cc
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LinuxLibertine/LinLibertine_RIah.ttf
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LinuxLibertine/LinLibertine_RIah.woff b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LinuxLibertine/LinLibertine_RIah.woff
new file mode 100644
index 00000000..ae595572
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LinuxLibertine/LinLibertine_RIah.woff
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LinuxLibertine/LinLibertine_Rah.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LinuxLibertine/LinLibertine_Rah.eot
new file mode 100644
index 00000000..e751b12a
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LinuxLibertine/LinLibertine_Rah.eot
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LinuxLibertine/LinLibertine_Rah.ttf b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LinuxLibertine/LinLibertine_Rah.ttf
new file mode 100644
index 00000000..e1dc2243
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LinuxLibertine/LinLibertine_Rah.ttf
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LinuxLibertine/LinLibertine_Rah.woff b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LinuxLibertine/LinLibertine_Rah.woff
new file mode 100644
index 00000000..d6b2e5f9
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LinuxLibertine/LinLibertine_Rah.woff
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LinuxLibertine/font.ini b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LinuxLibertine/font.ini
new file mode 100644
index 00000000..81cb9ca9
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LinuxLibertine/font.ini
@@ -0,0 +1,30 @@
+[Linux Libertine]
+version=5.3.0
+license=OFL-1.1
+licensefile=OFL.txt
+url=http://linuxlibertine.org
+ttf=LinLibertine_Rah.ttf
+eot=LinLibertine_Rah.eot
+woff=LinLibertine_Rah.woff
+bold=Linux Libertine Bold
+italic=Linux Libertine Italic
+bolditalic=Linux Libertine Bold Italic
+
+[Linux Libertine Bold]
+ttf=LinLibertine_RBah.ttf
+eot=LinLibertine_RBah.eot
+woff=LinLibertine_RBah.woff
+fontweight=bold
+
+[Linux Libertine Italic]
+ttf=LinLibertine_RIah.ttf
+eot=LinLibertine_RIah.eot
+woff=LinLibertine_RIah.woff
+fontstyle=italic
+
+[Linux Libertine Bold Italic]
+ttf=LinLibertine_RBIah.ttf
+eot=LinLibertine_RBIah.eot
+woff=LinLibertine_RBIah.woff
+fontstyle=italic
+fontweight=bold
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitAssamese/Lohit-Assamese.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitAssamese/Lohit-Assamese.eot
new file mode 100644
index 00000000..93286d4a
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitAssamese/Lohit-Assamese.eot
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitAssamese/Lohit-Assamese.ttf b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitAssamese/Lohit-Assamese.ttf
new file mode 100644
index 00000000..729164e9
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitAssamese/Lohit-Assamese.ttf
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitAssamese/Lohit-Assamese.woff b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitAssamese/Lohit-Assamese.woff
new file mode 100644
index 00000000..779550f3
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitAssamese/Lohit-Assamese.woff
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitAssamese/font.ini b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitAssamese/font.ini
new file mode 100644
index 00000000..3470e87c
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitAssamese/font.ini
@@ -0,0 +1,6 @@
+[Lohit Assamese]
+languages=as
+version=2.5.3
+license=OFL-1.1
+licensefile=OFL.txt
+url=https://fedorahosted.org/lohit/
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitBengali/Lohit-Bengali.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitBengali/Lohit-Bengali.eot
new file mode 100644
index 00000000..5039a8bd
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitBengali/Lohit-Bengali.eot
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitBengali/Lohit-Bengali.ttf b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitBengali/Lohit-Bengali.ttf
new file mode 100644
index 00000000..2f537a19
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitBengali/Lohit-Bengali.ttf
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitBengali/Lohit-Bengali.woff b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitBengali/Lohit-Bengali.woff
new file mode 100644
index 00000000..1c42940a
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitBengali/Lohit-Bengali.woff
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitBengali/font.ini b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitBengali/font.ini
new file mode 100644
index 00000000..7eec0066
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitBengali/font.ini
@@ -0,0 +1,6 @@
+[Lohit Bengali]
+languages=bn, bpy
+version=2.5.3
+license=OFL-1.1
+licensefile=OFL.txt
+url=https://fedorahosted.org/lohit/
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitDevanagari/Lohit-Devanagari.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitDevanagari/Lohit-Devanagari.eot
new file mode 100644
index 00000000..6cc85874
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitDevanagari/Lohit-Devanagari.eot
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitDevanagari/Lohit-Devanagari.ttf b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitDevanagari/Lohit-Devanagari.ttf
new file mode 100644
index 00000000..ca50e052
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitDevanagari/Lohit-Devanagari.ttf
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitDevanagari/Lohit-Devanagari.woff b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitDevanagari/Lohit-Devanagari.woff
new file mode 100644
index 00000000..534123cf
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitDevanagari/Lohit-Devanagari.woff
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitDevanagari/font.ini b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitDevanagari/font.ini
new file mode 100644
index 00000000..cd724563
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitDevanagari/font.ini
@@ -0,0 +1,8 @@
+[Lohit Devanagari]
+languages=bh*, bho*, hi*, kok*, gom*, mai*, sa*
+version=2.5.3
+license=OFL-1.1
+licensefile=OFL.txt
+request-url=https://mediawiki.org/wiki/Special:Code/MediaWiki/103749, https://mediawiki.org/wiki/Special:Code/MediaWiki/97982
+; Sanskrit (sa) support originally added in the Lohit Hindi font
+url=https://fedorahosted.org/lohit/
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitGujarati/Lohit-Gujarati.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitGujarati/Lohit-Gujarati.eot
new file mode 100644
index 00000000..d7ad8b8c
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitGujarati/Lohit-Gujarati.eot
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitGujarati/Lohit-Gujarati.ttf b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitGujarati/Lohit-Gujarati.ttf
new file mode 100644
index 00000000..aaa5678d
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitGujarati/Lohit-Gujarati.ttf
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitGujarati/Lohit-Gujarati.woff b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitGujarati/Lohit-Gujarati.woff
new file mode 100644
index 00000000..47b9bfe8
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitGujarati/Lohit-Gujarati.woff
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitGujarati/font.ini b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitGujarati/font.ini
new file mode 100644
index 00000000..e7370042
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitGujarati/font.ini
@@ -0,0 +1,7 @@
+[Lohit Gujarati]
+languages=gu*
+version=2.5.3
+license=OFL-1.1
+licensefile=OFL.txt
+request-url=https://mediawiki.org/wiki/Special:Code/MediaWiki/103728
+url=https://fedorahosted.org/lohit/
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitKannada/Lohit-Kannada.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitKannada/Lohit-Kannada.eot
new file mode 100644
index 00000000..1c7738f5
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitKannada/Lohit-Kannada.eot
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitKannada/Lohit-Kannada.ttf b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitKannada/Lohit-Kannada.ttf
new file mode 100644
index 00000000..2911ce7b
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitKannada/Lohit-Kannada.ttf
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitKannada/Lohit-Kannada.woff b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitKannada/Lohit-Kannada.woff
new file mode 100644
index 00000000..6314f1e2
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitKannada/Lohit-Kannada.woff
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitKannada/font.ini b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitKannada/font.ini
new file mode 100644
index 00000000..511d25d3
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitKannada/font.ini
@@ -0,0 +1,7 @@
+[Lohit Kannada]
+languages=kn*, tcy*
+version=2.5.3
+license=OFL-1.1
+licensefile=OFL.txt
+request-url=https://www.mediawiki.org/wiki/Special:Code/MediaWiki/85714
+url=https://fedorahosted.org/lohit/
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitMarathi/Lohit-Marathi.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitMarathi/Lohit-Marathi.eot
new file mode 100644
index 00000000..2d819c7a
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitMarathi/Lohit-Marathi.eot
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitMarathi/Lohit-Marathi.ttf b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitMarathi/Lohit-Marathi.ttf
new file mode 100644
index 00000000..d4ff22d4
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitMarathi/Lohit-Marathi.ttf
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitMarathi/Lohit-Marathi.woff b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitMarathi/Lohit-Marathi.woff
new file mode 100644
index 00000000..3d7f0ffd
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitMarathi/Lohit-Marathi.woff
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitMarathi/font.ini b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitMarathi/font.ini
new file mode 100644
index 00000000..c474036e
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitMarathi/font.ini
@@ -0,0 +1,8 @@
+[Lohit Marathi]
+languages=ahr*, mr*
+version=2.5.3
+license=OFL-1.1
+licensefile=OFL.txt
+request-url=https://mediawiki.org/wiki/Special:Code/MediaWiki/108715, https://mediawiki.org/wiki/Special:Code/MediaWiki/103749
+; originally added as part of the Lohit Devanagari font
+url=https://fedorahosted.org/lohit/
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitNepali/Lohit-Nepali.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitNepali/Lohit-Nepali.eot
new file mode 100644
index 00000000..defc94dc
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitNepali/Lohit-Nepali.eot
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitNepali/Lohit-Nepali.ttf b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitNepali/Lohit-Nepali.ttf
new file mode 100644
index 00000000..13dd9712
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitNepali/Lohit-Nepali.ttf
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitNepali/Lohit-Nepali.woff b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitNepali/Lohit-Nepali.woff
new file mode 100644
index 00000000..41a936ec
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitNepali/Lohit-Nepali.woff
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitNepali/font.ini b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitNepali/font.ini
new file mode 100644
index 00000000..c9fee66a
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitNepali/font.ini
@@ -0,0 +1,8 @@
+[Lohit Nepali]
+languages=ne*
+version=2.5.3
+license=OFL-1.1
+licensefile=OFL.txt
+request-url=https://mediawiki.org/wiki/Special:Code/MediaWiki/103749
+; originally added as part of the Lohit Devanagari font
+url=https://fedorahosted.org/lohit/
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitOdia/Lohit-Odia.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitOdia/Lohit-Odia.eot
new file mode 100644
index 00000000..318f2ee5
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitOdia/Lohit-Odia.eot
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitOdia/Lohit-Odia.ttf b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitOdia/Lohit-Odia.ttf
new file mode 100644
index 00000000..41b007a0
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitOdia/Lohit-Odia.ttf
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitOdia/Lohit-Odia.woff b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitOdia/Lohit-Odia.woff
new file mode 100644
index 00000000..7d938807
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitOdia/Lohit-Odia.woff
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitOdia/font.ini b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitOdia/font.ini
new file mode 100644
index 00000000..fbdae782
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitOdia/font.ini
@@ -0,0 +1,7 @@
+[Lohit Odia]
+languages=or*
+version=2.5.5
+license=OFL-1.1
+licensefile=OFL.txt
+request-url=https://www.mediawiki.org/wiki/Special:Code/MediaWiki/85673
+url=https://fedorahosted.org/lohit/
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitPunjabi/Lohit-Punjabi.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitPunjabi/Lohit-Punjabi.eot
new file mode 100644
index 00000000..5de2238f
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitPunjabi/Lohit-Punjabi.eot
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitPunjabi/Lohit-Punjabi.ttf b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitPunjabi/Lohit-Punjabi.ttf
new file mode 100644
index 00000000..1bf4a03f
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitPunjabi/Lohit-Punjabi.ttf
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitPunjabi/Lohit-Punjabi.woff b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitPunjabi/Lohit-Punjabi.woff
new file mode 100644
index 00000000..c592d8b2
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitPunjabi/Lohit-Punjabi.woff
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitPunjabi/font.ini b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitPunjabi/font.ini
new file mode 100644
index 00000000..53b77dcf
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitPunjabi/font.ini
@@ -0,0 +1,7 @@
+[Lohit Punjabi]
+languages=pa*
+version=2.5.3
+license=OFL-1.1
+licensefile=OFL.txt
+request-url=https://mediawiki.org/wiki/Special:Code/MediaWiki/104552
+url=https://fedorahosted.org/lohit/
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitTamil/Lohit-Tamil.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitTamil/Lohit-Tamil.eot
new file mode 100644
index 00000000..22955419
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitTamil/Lohit-Tamil.eot
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitTamil/Lohit-Tamil.ttf b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitTamil/Lohit-Tamil.ttf
new file mode 100644
index 00000000..49cd57ab
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitTamil/Lohit-Tamil.ttf
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitTamil/Lohit-Tamil.woff b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitTamil/Lohit-Tamil.woff
new file mode 100644
index 00000000..0bbf8f22
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitTamil/Lohit-Tamil.woff
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitTamil/font.ini b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitTamil/font.ini
new file mode 100644
index 00000000..d7d3da8c
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitTamil/font.ini
@@ -0,0 +1,6 @@
+[Lohit Tamil]
+languages=ta
+version=2.5.3
+license=OFL-1.1
+licensefile=OFL.txt
+url=https://fedorahosted.org/lohit/
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitTamilClassical/Lohit-Tamil-Classical.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitTamilClassical/Lohit-Tamil-Classical.eot
new file mode 100644
index 00000000..a51fd4b6
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitTamilClassical/Lohit-Tamil-Classical.eot
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitTamilClassical/Lohit-Tamil-Classical.ttf b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitTamilClassical/Lohit-Tamil-Classical.ttf
new file mode 100644
index 00000000..ddce397a
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitTamilClassical/Lohit-Tamil-Classical.ttf
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitTamilClassical/Lohit-Tamil-Classical.woff b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitTamilClassical/Lohit-Tamil-Classical.woff
new file mode 100644
index 00000000..293cc65a
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitTamilClassical/Lohit-Tamil-Classical.woff
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitTamilClassical/font.ini b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitTamilClassical/font.ini
new file mode 100644
index 00000000..3e9ba728
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitTamilClassical/font.ini
@@ -0,0 +1,6 @@
+[Lohit Tamil Classical]
+languages=ta
+version=2.5.3
+license=OFL-1.1
+licensefile=OFL.txt
+url=https://fedorahosted.org/lohit/
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitTelugu/Lohit-Telugu.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitTelugu/Lohit-Telugu.eot
new file mode 100644
index 00000000..9ff94821
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitTelugu/Lohit-Telugu.eot
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitTelugu/Lohit-Telugu.ttf b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitTelugu/Lohit-Telugu.ttf
new file mode 100644
index 00000000..f14fd4e7
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitTelugu/Lohit-Telugu.ttf
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitTelugu/Lohit-Telugu.woff b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitTelugu/Lohit-Telugu.woff
new file mode 100644
index 00000000..60fadce0
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitTelugu/Lohit-Telugu.woff
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitTelugu/font.ini b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitTelugu/font.ini
new file mode 100644
index 00000000..5ae9b412
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/LohitTelugu/font.ini
@@ -0,0 +1,7 @@
+[Lohit Telugu]
+languages=te*
+version=2.5.3
+license=OFL-1.1
+licensefile=OFL.txt
+request-url=https://www.mediawiki.org/wiki/Special:Code/MediaWiki/85714
+url=https://fedorahosted.org/lohit/
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Meera/Meera.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Meera/Meera.eot
new file mode 100644
index 00000000..c88b7a7a
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Meera/Meera.eot
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Meera/Meera.ttf b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Meera/Meera.ttf
new file mode 100644
index 00000000..c54a55bb
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Meera/Meera.ttf
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Meera/Meera.woff b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Meera/Meera.woff
new file mode 100644
index 00000000..cef8b92d
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Meera/Meera.woff
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Meera/font.ini b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Meera/font.ini
new file mode 100644
index 00000000..1b561346
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Meera/font.ini
@@ -0,0 +1,6 @@
+[Meera]
+languages=ml
+version=6.0
+license=GPL-3.0.0+-with-font-exception
+licensefile=gpl-3.0.txt
+url=https://savannah.nongnu.org/projects/smc
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/MiriamCLM/MiriamCLM-Book.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/MiriamCLM/MiriamCLM-Book.eot
new file mode 100644
index 00000000..0f401228
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/MiriamCLM/MiriamCLM-Book.eot
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/MiriamCLM/MiriamCLM-Book.ttf b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/MiriamCLM/MiriamCLM-Book.ttf
new file mode 100644
index 00000000..1e214676
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/MiriamCLM/MiriamCLM-Book.ttf
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/MiriamCLM/MiriamCLM-Book.woff b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/MiriamCLM/MiriamCLM-Book.woff
new file mode 100644
index 00000000..44c8c8af
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/MiriamCLM/MiriamCLM-Book.woff
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/MiriamCLM/font.ini b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/MiriamCLM/font.ini
new file mode 100644
index 00000000..f4fa7b38
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/MiriamCLM/font.ini
@@ -0,0 +1,6 @@
+[Miriam CLM]
+languages=he
+version=0.130
+license=GPL-2.0+
+licensefile=gpl-2.0.txt
+url=http://culmus.sourceforge.net/
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Myanmar3/Myanmar3.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Myanmar3/Myanmar3.eot
new file mode 100644
index 00000000..8e83abc2
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Myanmar3/Myanmar3.eot
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Myanmar3/Myanmar3.ttf b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Myanmar3/Myanmar3.ttf
new file mode 100644
index 00000000..6bb1960e
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Myanmar3/Myanmar3.ttf
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Myanmar3/Myanmar3.woff b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Myanmar3/Myanmar3.woff
new file mode 100644
index 00000000..014603aa
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Myanmar3/Myanmar3.woff
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Myanmar3/font.ini b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Myanmar3/font.ini
new file mode 100644
index 00000000..c6110d0b
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Myanmar3/font.ini
@@ -0,0 +1,6 @@
+[Myanmar3]
+languages=my
+version=3.0
+license=LGPL-2.1+
+licensefile=lgpl-2.1.txt
+url=http://code.google.com/p/myanmar3source/
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/NafeesWeb/NafeesWeb.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/NafeesWeb/NafeesWeb.eot
new file mode 100644
index 00000000..aa90c1aa
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/NafeesWeb/NafeesWeb.eot
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/NafeesWeb/NafeesWeb.ttf b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/NafeesWeb/NafeesWeb.ttf
new file mode 100644
index 00000000..e7a91d2c
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/NafeesWeb/NafeesWeb.ttf
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/NafeesWeb/NafeesWeb.woff b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/NafeesWeb/NafeesWeb.woff
new file mode 100644
index 00000000..b2f6f1a5
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/NafeesWeb/NafeesWeb.woff
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/NafeesWeb/font.ini b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/NafeesWeb/font.ini
new file mode 100644
index 00000000..29acb11b
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/NafeesWeb/font.ini
@@ -0,0 +1,9 @@
+[NafeesWeb]
+languages=ur
+version=1.2
+license=GPL-2.0
+licensefile=gpl-2.0.txt
+request-url=https://bugzilla.wikimedia.org/46693
+;URL seems broken but, Debian has this font confirming its license validity.
+;Also see: http://groups.yahoo.com/group/urdu_computing/message/1081
+url=http://www.crulp.org/nafeesWebNaskh.html
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Nazli/Nazli-bold.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Nazli/Nazli-bold.eot
new file mode 100644
index 00000000..c15e03f4
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Nazli/Nazli-bold.eot
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Nazli/Nazli-bold.ttf b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Nazli/Nazli-bold.ttf
new file mode 100644
index 00000000..2a8e4856
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Nazli/Nazli-bold.ttf
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Nazli/Nazli-bold.woff b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Nazli/Nazli-bold.woff
new file mode 100644
index 00000000..36d4d35f
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Nazli/Nazli-bold.woff
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Nazli/Nazli.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Nazli/Nazli.eot
new file mode 100644
index 00000000..0be7b03c
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Nazli/Nazli.eot
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Nazli/Nazli.ttf b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Nazli/Nazli.ttf
new file mode 100644
index 00000000..76b9f260
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Nazli/Nazli.ttf
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Nazli/Nazli.woff b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Nazli/Nazli.woff
new file mode 100644
index 00000000..71a56ada
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Nazli/Nazli.woff
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Nazli/font.ini b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Nazli/font.ini
new file mode 100644
index 00000000..a05b61c4
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Nazli/font.ini
@@ -0,0 +1,17 @@
+[Nazli]
+languages=fa
+version=0.4
+license=GPL-2.0
+licensefile=gpl-2.0.txt
+request-url=https://gerrit.wikimedia.org/r/#/c/76349/
+url=http://persian-computing.org/
+ttf=Nazli.ttf
+eot=Nazli.eot
+woff=Nazli.woff
+bold=Nazli Bold
+
+[Nazli Bold]
+ttf=Nazli-bold.ttf
+eot=Nazli-bold.eot
+woff=Nazli-bold.woff
+fontweight=bold
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Nokora/LICENSE.txt b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Nokora/LICENSE.txt
new file mode 100644
index 00000000..75b52484
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Nokora/LICENSE.txt
@@ -0,0 +1,202 @@
+
+ Apache License
+ Version 2.0, January 2004
+ http://www.apache.org/licenses/
+
+ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
+
+ 1. Definitions.
+
+ "License" shall mean the terms and conditions for use, reproduction,
+ and distribution as defined by Sections 1 through 9 of this document.
+
+ "Licensor" shall mean the copyright owner or entity authorized by
+ the copyright owner that is granting the License.
+
+ "Legal Entity" shall mean the union of the acting entity and all
+ other entities that control, are controlled by, or are under common
+ control with that entity. For the purposes of this definition,
+ "control" means (i) the power, direct or indirect, to cause the
+ direction or management of such entity, whether by contract or
+ otherwise, or (ii) ownership of fifty percent (50%) or more of the
+ outstanding shares, or (iii) beneficial ownership of such entity.
+
+ "You" (or "Your") shall mean an individual or Legal Entity
+ exercising permissions granted by this License.
+
+ "Source" form shall mean the preferred form for making modifications,
+ including but not limited to software source code, documentation
+ source, and configuration files.
+
+ "Object" form shall mean any form resulting from mechanical
+ transformation or translation of a Source form, including but
+ not limited to compiled object code, generated documentation,
+ and conversions to other media types.
+
+ "Work" shall mean the work of authorship, whether in Source or
+ Object form, made available under the License, as indicated by a
+ copyright notice that is included in or attached to the work
+ (an example is provided in the Appendix below).
+
+ "Derivative Works" shall mean any work, whether in Source or Object
+ form, that is based on (or derived from) the Work and for which the
+ editorial revisions, annotations, elaborations, or other modifications
+ represent, as a whole, an original work of authorship. For the purposes
+ of this License, Derivative Works shall not include works that remain
+ separable from, or merely link (or bind by name) to the interfaces of,
+ the Work and Derivative Works thereof.
+
+ "Contribution" shall mean any work of authorship, including
+ the original version of the Work and any modifications or additions
+ to that Work or Derivative Works thereof, that is intentionally
+ submitted to Licensor for inclusion in the Work by the copyright owner
+ or by an individual or Legal Entity authorized to submit on behalf of
+ the copyright owner. For the purposes of this definition, "submitted"
+ means any form of electronic, verbal, or written communication sent
+ to the Licensor or its representatives, including but not limited to
+ communication on electronic mailing lists, source code control systems,
+ and issue tracking systems that are managed by, or on behalf of, the
+ Licensor for the purpose of discussing and improving the Work, but
+ excluding communication that is conspicuously marked or otherwise
+ designated in writing by the copyright owner as "Not a Contribution."
+
+ "Contributor" shall mean Licensor and any individual or Legal Entity
+ on behalf of whom a Contribution has been received by Licensor and
+ subsequently incorporated within the Work.
+
+ 2. Grant of Copyright License. Subject to the terms and conditions of
+ this License, each Contributor hereby grants to You a perpetual,
+ worldwide, non-exclusive, no-charge, royalty-free, irrevocable
+ copyright license to reproduce, prepare Derivative Works of,
+ publicly display, publicly perform, sublicense, and distribute the
+ Work and such Derivative Works in Source or Object form.
+
+ 3. Grant of Patent License. Subject to the terms and conditions of
+ this License, each Contributor hereby grants to You a perpetual,
+ worldwide, non-exclusive, no-charge, royalty-free, irrevocable
+ (except as stated in this section) patent license to make, have made,
+ use, offer to sell, sell, import, and otherwise transfer the Work,
+ where such license applies only to those patent claims licensable
+ by such Contributor that are necessarily infringed by their
+ Contribution(s) alone or by combination of their Contribution(s)
+ with the Work to which such Contribution(s) was submitted. If You
+ institute patent litigation against any entity (including a
+ cross-claim or counterclaim in a lawsuit) alleging that the Work
+ or a Contribution incorporated within the Work constitutes direct
+ or contributory patent infringement, then any patent licenses
+ granted to You under this License for that Work shall terminate
+ as of the date such litigation is filed.
+
+ 4. Redistribution. You may reproduce and distribute copies of the
+ Work or Derivative Works thereof in any medium, with or without
+ modifications, and in Source or Object form, provided that You
+ meet the following conditions:
+
+ (a) You must give any other recipients of the Work or
+ Derivative Works a copy of this License; and
+
+ (b) You must cause any modified files to carry prominent notices
+ stating that You changed the files; and
+
+ (c) You must retain, in the Source form of any Derivative Works
+ that You distribute, all copyright, patent, trademark, and
+ attribution notices from the Source form of the Work,
+ excluding those notices that do not pertain to any part of
+ the Derivative Works; and
+
+ (d) If the Work includes a "NOTICE" text file as part of its
+ distribution, then any Derivative Works that You distribute must
+ include a readable copy of the attribution notices contained
+ within such NOTICE file, excluding those notices that do not
+ pertain to any part of the Derivative Works, in at least one
+ of the following places: within a NOTICE text file distributed
+ as part of the Derivative Works; within the Source form or
+ documentation, if provided along with the Derivative Works; or,
+ within a display generated by the Derivative Works, if and
+ wherever such third-party notices normally appear. The contents
+ of the NOTICE file are for informational purposes only and
+ do not modify the License. You may add Your own attribution
+ notices within Derivative Works that You distribute, alongside
+ or as an addendum to the NOTICE text from the Work, provided
+ that such additional attribution notices cannot be construed
+ as modifying the License.
+
+ You may add Your own copyright statement to Your modifications and
+ may provide additional or different license terms and conditions
+ for use, reproduction, or distribution of Your modifications, or
+ for any such Derivative Works as a whole, provided Your use,
+ reproduction, and distribution of the Work otherwise complies with
+ the conditions stated in this License.
+
+ 5. Submission of Contributions. Unless You explicitly state otherwise,
+ any Contribution intentionally submitted for inclusion in the Work
+ by You to the Licensor shall be under the terms and conditions of
+ this License, without any additional terms or conditions.
+ Notwithstanding the above, nothing herein shall supersede or modify
+ the terms of any separate license agreement you may have executed
+ with Licensor regarding such Contributions.
+
+ 6. Trademarks. This License does not grant permission to use the trade
+ names, trademarks, service marks, or product names of the Licensor,
+ except as required for reasonable and customary use in describing the
+ origin of the Work and reproducing the content of the NOTICE file.
+
+ 7. Disclaimer of Warranty. Unless required by applicable law or
+ agreed to in writing, Licensor provides the Work (and each
+ Contributor provides its Contributions) on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied, including, without limitation, any warranties or conditions
+ of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
+ PARTICULAR PURPOSE. You are solely responsible for determining the
+ appropriateness of using or redistributing the Work and assume any
+ risks associated with Your exercise of permissions under this License.
+
+ 8. Limitation of Liability. In no event and under no legal theory,
+ whether in tort (including negligence), contract, or otherwise,
+ unless required by applicable law (such as deliberate and grossly
+ negligent acts) or agreed to in writing, shall any Contributor be
+ liable to You for damages, including any direct, indirect, special,
+ incidental, or consequential damages of any character arising as a
+ result of this License or out of the use or inability to use the
+ Work (including but not limited to damages for loss of goodwill,
+ work stoppage, computer failure or malfunction, or any and all
+ other commercial damages or losses), even if such Contributor
+ has been advised of the possibility of such damages.
+
+ 9. Accepting Warranty or Additional Liability. While redistributing
+ the Work or Derivative Works thereof, You may choose to offer,
+ and charge a fee for, acceptance of support, warranty, indemnity,
+ or other liability obligations and/or rights consistent with this
+ License. However, in accepting such obligations, You may act only
+ on Your own behalf and on Your sole responsibility, not on behalf
+ of any other Contributor, and only if You agree to indemnify,
+ defend, and hold each Contributor harmless for any liability
+ incurred by, or claims asserted against, such Contributor by reason
+ of your accepting any such warranty or additional liability.
+
+ END OF TERMS AND CONDITIONS
+
+ APPENDIX: How to apply the Apache License to your work.
+
+ To apply the Apache License to your work, attach the following
+ boilerplate notice, with the fields enclosed by brackets "[]"
+ replaced with your own identifying information. (Don't include
+ the brackets!) The text should be enclosed in the appropriate
+ comment syntax for the file format. We also recommend that a
+ file or class name and description of purpose be included on the
+ same "printed page" as the copyright notice for easier
+ identification within third-party archives.
+
+ Copyright [yyyy] [name of copyright owner]
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Nokora/Nokora-Bold.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Nokora/Nokora-Bold.eot
new file mode 100644
index 00000000..f4c978b3
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Nokora/Nokora-Bold.eot
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Nokora/Nokora-Bold.ttf b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Nokora/Nokora-Bold.ttf
new file mode 100644
index 00000000..e4e65b92
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Nokora/Nokora-Bold.ttf
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Nokora/Nokora-Bold.woff b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Nokora/Nokora-Bold.woff
new file mode 100644
index 00000000..586dc8e0
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Nokora/Nokora-Bold.woff
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Nokora/Nokora-Regular.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Nokora/Nokora-Regular.eot
new file mode 100644
index 00000000..e54ee7a6
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Nokora/Nokora-Regular.eot
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Nokora/Nokora-Regular.ttf b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Nokora/Nokora-Regular.ttf
new file mode 100644
index 00000000..1a21a413
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Nokora/Nokora-Regular.ttf
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Nokora/Nokora-Regular.woff b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Nokora/Nokora-Regular.woff
new file mode 100644
index 00000000..91db77d4
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Nokora/Nokora-Regular.woff
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Nokora/font.ini b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Nokora/font.ini
new file mode 100644
index 00000000..5616621c
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Nokora/font.ini
@@ -0,0 +1,17 @@
+[Nokora Regular]
+languages=km
+version=1.10
+license=Apache-2.0
+licensefile=apache-2.0.txt
+url=http://www.google.com/fonts/specimen/Nokora
+request-url=https://bugzilla.wikimedia.org/53673
+ttf=Nokora-Regular.ttf
+eot=Nokora-Regular.eot
+woff=Nokora-Regular.woff
+bold= Nokora Bold
+
+[Nokora Bold]
+ttt=Nokora-Bold.ttf
+eot=Nokora-Bold.eot
+woff=Nokora-Bold.woff
+fontweight=bold
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/NuosuSIL/NuosuSIL.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/NuosuSIL/NuosuSIL.eot
new file mode 100644
index 00000000..17449d3c
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/NuosuSIL/NuosuSIL.eot
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/NuosuSIL/NuosuSIL.ttf b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/NuosuSIL/NuosuSIL.ttf
new file mode 100644
index 00000000..d901fb3a
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/NuosuSIL/NuosuSIL.ttf
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/NuosuSIL/NuosuSIL.woff b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/NuosuSIL/NuosuSIL.woff
new file mode 100644
index 00000000..f7091fc1
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/NuosuSIL/NuosuSIL.woff
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/NuosuSIL/font.ini b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/NuosuSIL/font.ini
new file mode 100644
index 00000000..6c11f3f6
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/NuosuSIL/font.ini
@@ -0,0 +1,10 @@
+[Nuosu SIL]
+languages=ii*
+version=2.1.1
+license=OFL-1.1
+licensefile=OFL.txt
+request-url=https://bugzilla.wikimedia.org/52959
+url=http://scripts.sil.org/SILYI_home
+ttf=NuosuSIL.ttf
+eot=NuosuSIL.eot
+woff=NuosuSIL.woff
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/OpenDyslexic/OpenDyslexic-Bold.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/OpenDyslexic/OpenDyslexic-Bold.eot
new file mode 100644
index 00000000..276d9a64
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/OpenDyslexic/OpenDyslexic-Bold.eot
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/OpenDyslexic/OpenDyslexic-Bold.ttf b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/OpenDyslexic/OpenDyslexic-Bold.ttf
new file mode 100644
index 00000000..7c97eb43
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/OpenDyslexic/OpenDyslexic-Bold.ttf
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/OpenDyslexic/OpenDyslexic-Bold.woff b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/OpenDyslexic/OpenDyslexic-Bold.woff
new file mode 100644
index 00000000..96dc141a
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/OpenDyslexic/OpenDyslexic-Bold.woff
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/OpenDyslexic/OpenDyslexic-BoldItalic.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/OpenDyslexic/OpenDyslexic-BoldItalic.eot
new file mode 100644
index 00000000..34fbea7f
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/OpenDyslexic/OpenDyslexic-BoldItalic.eot
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/OpenDyslexic/OpenDyslexic-BoldItalic.ttf b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/OpenDyslexic/OpenDyslexic-BoldItalic.ttf
new file mode 100644
index 00000000..f949334d
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/OpenDyslexic/OpenDyslexic-BoldItalic.ttf
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/OpenDyslexic/OpenDyslexic-BoldItalic.woff b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/OpenDyslexic/OpenDyslexic-BoldItalic.woff
new file mode 100644
index 00000000..609ece96
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/OpenDyslexic/OpenDyslexic-BoldItalic.woff
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/OpenDyslexic/OpenDyslexic-Italic.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/OpenDyslexic/OpenDyslexic-Italic.eot
new file mode 100644
index 00000000..00b0482a
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/OpenDyslexic/OpenDyslexic-Italic.eot
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/OpenDyslexic/OpenDyslexic-Italic.ttf b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/OpenDyslexic/OpenDyslexic-Italic.ttf
new file mode 100644
index 00000000..2f775808
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/OpenDyslexic/OpenDyslexic-Italic.ttf
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/OpenDyslexic/OpenDyslexic-Italic.woff b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/OpenDyslexic/OpenDyslexic-Italic.woff
new file mode 100644
index 00000000..fa0a8441
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/OpenDyslexic/OpenDyslexic-Italic.woff
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/OpenDyslexic/OpenDyslexic-Regular.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/OpenDyslexic/OpenDyslexic-Regular.eot
new file mode 100644
index 00000000..3af2452f
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/OpenDyslexic/OpenDyslexic-Regular.eot
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/OpenDyslexic/OpenDyslexic-Regular.ttf b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/OpenDyslexic/OpenDyslexic-Regular.ttf
new file mode 100644
index 00000000..e7849348
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/OpenDyslexic/OpenDyslexic-Regular.ttf
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/OpenDyslexic/OpenDyslexic-Regular.woff b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/OpenDyslexic/OpenDyslexic-Regular.woff
new file mode 100644
index 00000000..79de258e
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/OpenDyslexic/OpenDyslexic-Regular.woff
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/OpenDyslexic/font.ini b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/OpenDyslexic/font.ini
new file mode 100644
index 00000000..df38a569
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/OpenDyslexic/font.ini
@@ -0,0 +1,32 @@
+[OpenDyslexic]
+languages=af,bk,ca,cy,da,de,en,es,et,fi,fo,fr,fy,ga,gd,gl,hu,id,is,it,lb,li,mi,ms,nb,nl,oc,pl,pt,sq,sv,sw,tl,tr,wa
+version=2.1.0+git060dc841
+license=CC-BY-3.0
+licensefile=CC-BY-3.0.txt
+url=https://github.com/antijingoist/open-dyslexic
+request-url=https://bugzilla.wikimedia.org/40539
+ttf=OpenDyslexic-Regular.ttf
+eot=OpenDyslexic-Regular.eot
+woff=OpenDyslexic-Regular.woff
+bold=OpenDyslexic Bold
+italic=OpenDyslexic Italic
+bolditalic=OpenDyslexic BoldItalic
+
+[OpenDyslexic Bold]
+ttf=OpenDyslexic-Bold.ttf
+eot=OpenDyslexic-Bold.eot
+woff=OpenDyslexic-Bold.woff
+fontweight=bold
+
+[OpenDyslexic Italic]
+ttf=OpenDyslexic-Italic.ttf
+eot=OpenDyslexic-Italic.eot
+woff=OpenDyslexic-Italic.woff
+fontstyle=italic
+
+[OpenDyslexic BoldItalic]
+ttf=OpenDyslexic-BoldItalic.ttf
+eot=OpenDyslexic-BoldItalic.eot
+woff=OpenDyslexic-BoldItalic.woff
+fontweight=bold
+fontstyle=italic
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/OskiEast/font.ini b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/OskiEast/font.ini
new file mode 100644
index 00000000..9ebe50ce
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/OskiEast/font.ini
@@ -0,0 +1,32 @@
+[OskiEast]
+languages=cr*, iu
+version=2.200
+license=GPL-3.0
+licensefile=gpl-3.0.txt
+request-url=https://gerrit.wikimedia.org/r/#/c/80548/
+url=http://www.languagegeek.com/font/fontdownload.html#AlgonAndInu
+ttf=oskie.ttf
+eot=oskie.eot
+woff=oskie.woff
+italic=OskiEast Italic
+bold=OskiEast Bold
+bolditalic=OskiEast Bold Italic
+
+[OskiEast Italic]
+ttf=oskieitalic.ttf
+eot=oskieitalic.eot
+woff=oskieitalic.woff
+fontstyle=italic
+
+[OskiEast Bold]
+ttf=oskiebold.ttf
+eot=oskiebold.eot
+woff=oskiebold.woff
+fontweight=bold
+
+[OskiEast Bold Italic]
+ttf=oskiebolditalic.ttf
+eot=oskiebolditalic.eot
+woff=oskiebolditalic.woff
+fontstyle=italic
+fontweight=bold
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/OskiEast/oskie.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/OskiEast/oskie.eot
new file mode 100644
index 00000000..673fd4b1
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/OskiEast/oskie.eot
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/OskiEast/oskie.ttf b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/OskiEast/oskie.ttf
new file mode 100644
index 00000000..3982586e
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/OskiEast/oskie.ttf
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/OskiEast/oskie.woff b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/OskiEast/oskie.woff
new file mode 100644
index 00000000..3c621cac
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/OskiEast/oskie.woff
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/OskiEast/oskiebold.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/OskiEast/oskiebold.eot
new file mode 100644
index 00000000..403042a3
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/OskiEast/oskiebold.eot
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/OskiEast/oskiebold.ttf b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/OskiEast/oskiebold.ttf
new file mode 100644
index 00000000..54b29c96
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/OskiEast/oskiebold.ttf
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/OskiEast/oskiebold.woff b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/OskiEast/oskiebold.woff
new file mode 100644
index 00000000..983f4d55
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/OskiEast/oskiebold.woff
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/OskiEast/oskiebolditalic.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/OskiEast/oskiebolditalic.eot
new file mode 100644
index 00000000..9e3e5037
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/OskiEast/oskiebolditalic.eot
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/OskiEast/oskiebolditalic.ttf b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/OskiEast/oskiebolditalic.ttf
new file mode 100644
index 00000000..3f139d27
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/OskiEast/oskiebolditalic.ttf
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/OskiEast/oskiebolditalic.woff b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/OskiEast/oskiebolditalic.woff
new file mode 100644
index 00000000..06f8bedd
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/OskiEast/oskiebolditalic.woff
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/OskiEast/oskieitalic.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/OskiEast/oskieitalic.eot
new file mode 100644
index 00000000..59461473
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/OskiEast/oskieitalic.eot
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/OskiEast/oskieitalic.ttf b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/OskiEast/oskieitalic.ttf
new file mode 100644
index 00000000..7ecf215a
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/OskiEast/oskieitalic.ttf
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/OskiEast/oskieitalic.woff b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/OskiEast/oskieitalic.woff
new file mode 100644
index 00000000..e534c1c9
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/OskiEast/oskieitalic.woff
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Padauk/Padauk-Regular.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Padauk/Padauk-Regular.eot
new file mode 100644
index 00000000..e1299c0e
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Padauk/Padauk-Regular.eot
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Padauk/Padauk-Regular.ttf b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Padauk/Padauk-Regular.ttf
new file mode 100644
index 00000000..b647b19c
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Padauk/Padauk-Regular.ttf
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Padauk/Padauk-Regular.woff b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Padauk/Padauk-Regular.woff
new file mode 100644
index 00000000..3b633f5a
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Padauk/Padauk-Regular.woff
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Padauk/font.ini b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Padauk/font.ini
new file mode 100644
index 00000000..ea63dc09
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Padauk/font.ini
@@ -0,0 +1,6 @@
+[Padauk]
+languages=my
+version=2.8
+license=OFL-1.1
+licensefile=OFL.txt
+url=http://scripts.sil.org/Padauk
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Pagul/Pagul.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Pagul/Pagul.eot
new file mode 100644
index 00000000..6f43fd6b
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Pagul/Pagul.eot
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Pagul/Pagul.ttf b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Pagul/Pagul.ttf
new file mode 100644
index 00000000..7b60a186
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Pagul/Pagul.ttf
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Pagul/Pagul.woff b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Pagul/Pagul.woff
new file mode 100644
index 00000000..3a3df8dc
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Pagul/Pagul.woff
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Pagul/font.ini b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Pagul/font.ini
new file mode 100644
index 00000000..24c1cf62
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Pagul/font.ini
@@ -0,0 +1,7 @@
+[Pagul]
+languages=saz*
+version=1.0
+license=GPL-3.0.0-with-font-exception
+licensefile=gpl-3.0.txt
+request-url=https://www.mediawiki.org/wiki/Special:Code/MediaWiki/87738
+url=http://sourceforge.net/projects/pagul/
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Pangururan/Pangururan.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Pangururan/Pangururan.eot
new file mode 100644
index 00000000..0867c7b5
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Pangururan/Pangururan.eot
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Pangururan/Pangururan.ttf b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Pangururan/Pangururan.ttf
new file mode 100644
index 00000000..b0466920
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Pangururan/Pangururan.ttf
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Pangururan/Pangururan.woff b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Pangururan/Pangururan.woff
new file mode 100644
index 00000000..5d865017
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Pangururan/Pangururan.woff
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Pangururan/font.ini b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Pangururan/font.ini
new file mode 100644
index 00000000..880bff87
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Pangururan/font.ini
@@ -0,0 +1,9 @@
+[Pangururan]
+languages=bbc, btk
+version=1.0.5
+license=OFL-1.1
+licensefile=OFL.txt
+url=http://evertype.com/fonts/batak/
+ttf=Pangururan.ttf
+eot=Pangururan.eot
+woff=Pangururan.woff
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Phetsarath/Phetsarath-Bold.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Phetsarath/Phetsarath-Bold.eot
new file mode 100644
index 00000000..50ae0a98
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Phetsarath/Phetsarath-Bold.eot
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Phetsarath/Phetsarath-Bold.ttf b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Phetsarath/Phetsarath-Bold.ttf
new file mode 100644
index 00000000..0ccc3444
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Phetsarath/Phetsarath-Bold.ttf
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Phetsarath/Phetsarath-Bold.woff b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Phetsarath/Phetsarath-Bold.woff
new file mode 100644
index 00000000..756fc321
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Phetsarath/Phetsarath-Bold.woff
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Phetsarath/Phetsarath-Regular.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Phetsarath/Phetsarath-Regular.eot
new file mode 100644
index 00000000..63815231
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Phetsarath/Phetsarath-Regular.eot
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Phetsarath/Phetsarath-Regular.ttf b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Phetsarath/Phetsarath-Regular.ttf
new file mode 100644
index 00000000..60a9c6a0
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Phetsarath/Phetsarath-Regular.ttf
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Phetsarath/Phetsarath-Regular.woff b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Phetsarath/Phetsarath-Regular.woff
new file mode 100644
index 00000000..bc908d21
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Phetsarath/Phetsarath-Regular.woff
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Phetsarath/font.ini b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Phetsarath/font.ini
new file mode 100644
index 00000000..c8c1997e
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Phetsarath/font.ini
@@ -0,0 +1,17 @@
+[Phetsarath]
+languages=lo*
+version=1.01
+license=OFL-1.1
+licensefile=OFL.txt
+request-url=https://gerrit.wikimedia.org/r/#/c/80550
+url=http://phetsarath.gov.la
+ttf=Phetsarath-Regular.ttf
+eot=Phetsarath-Regular.eot
+woff=Phetsarath-Regular.woff
+bold=Phetsarath-Bold
+
+[Phetsarath-Bold]
+ttf=Phetsarath-Bold.ttf
+eot=Phetsarath-Bold.eot
+woff=Phetsarath-Bold.woff
+fontweight=bold
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/README b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/README
new file mode 100644
index 00000000..f1e938f0
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/README
@@ -0,0 +1,31 @@
+This file describes common fields in font.ini file. Use ';' to add any comments.
+
+languages
+---------
+list of language(s) to use for font. * in language code suggests it is default
+font for language.
+
+version
+-------
+Font version.
+
+license
+-------
+License in SPDX format. see licenses/README file for format and details.
+
+licensefile
+-----------
+Name of license file from licenses folder.
+
+request-url
+-----------
+URL of bug or request where font addition request was made. For more than 2
+languages, use URLs separated by comma in,
+
+request-url=url1, url2
+
+format.
+
+url
+---
+Upstream location of font to download.
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/RailwaySans/RailwaySans.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/RailwaySans/RailwaySans.eot
new file mode 100644
index 00000000..378dc765
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/RailwaySans/RailwaySans.eot
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/RailwaySans/RailwaySans.ttf b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/RailwaySans/RailwaySans.ttf
new file mode 100644
index 00000000..8f0eaa38
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/RailwaySans/RailwaySans.ttf
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/RailwaySans/RailwaySans.woff b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/RailwaySans/RailwaySans.woff
new file mode 100644
index 00000000..f5f2df28
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/RailwaySans/RailwaySans.woff
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/RailwaySans/font.ini b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/RailwaySans/font.ini
new file mode 100644
index 00000000..3eab09c2
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/RailwaySans/font.ini
@@ -0,0 +1,9 @@
+[RailwaySans]
+version=2013-12-15
+license=OFL-1.1
+licensefile=OFL.txt
+url=http://openfontlibrary.org/en/font/railway-sans
+request-url=https://bugzilla.wikimedia.org/58203
+ttf=RailwaySans.ttf
+eot=RailwaySans.eot
+woff=RailwaySans.woff
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Saab/Saab.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Saab/Saab.eot
new file mode 100644
index 00000000..8c359b4c
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Saab/Saab.eot
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Saab/Saab.ttf b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Saab/Saab.ttf
new file mode 100644
index 00000000..b0144b28
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Saab/Saab.ttf
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Saab/Saab.woff b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Saab/Saab.woff
new file mode 100644
index 00000000..62891208
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Saab/Saab.woff
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Saab/font.ini b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Saab/font.ini
new file mode 100644
index 00000000..1e00c542
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Saab/font.ini
@@ -0,0 +1,6 @@
+[Saab]
+languages=pa
+version=0.91
+license=GPL-2.0-with-font-exception
+licensefile=gpl-2.0.txt
+url=http://guca.sourceforge.net/typography/fonts/saab/
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Scheherazade/Scheherazade-R.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Scheherazade/Scheherazade-R.eot
new file mode 100644
index 00000000..51dacfc5
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Scheherazade/Scheherazade-R.eot
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Scheherazade/Scheherazade-R.ttf b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Scheherazade/Scheherazade-R.ttf
new file mode 100644
index 00000000..69a64723
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Scheherazade/Scheherazade-R.ttf
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Scheherazade/Scheherazade-R.woff b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Scheherazade/Scheherazade-R.woff
new file mode 100644
index 00000000..68c265c0
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Scheherazade/Scheherazade-R.woff
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Scheherazade/font.ini b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Scheherazade/font.ini
new file mode 100644
index 00000000..9ad851c3
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Scheherazade/font.ini
@@ -0,0 +1,10 @@
+[Scheherazade]
+languages=fa, ckb
+version=2.010
+license=OFL-1.1
+licensefile=OFL.txt
+request-url=https://bugzilla.wikimedia.org/58381, https://bugzilla.wikimedia.org/58382
+url=http://scripts.sil.org/Scheherazade
+ttf=Scheherazade-R.ttf
+eot=Scheherazade-R.eot
+woff=Scheherazade-R.woff
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/SertoUrhoy/SyrCOMUrhoy.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/SertoUrhoy/SyrCOMUrhoy.eot
new file mode 100644
index 00000000..a0aa3a9a
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/SertoUrhoy/SyrCOMUrhoy.eot
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/SertoUrhoy/SyrCOMUrhoy.ttf b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/SertoUrhoy/SyrCOMUrhoy.ttf
new file mode 100644
index 00000000..ff23670d
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/SertoUrhoy/SyrCOMUrhoy.ttf
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/SertoUrhoy/SyrCOMUrhoy.woff b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/SertoUrhoy/SyrCOMUrhoy.woff
new file mode 100644
index 00000000..cbb27b84
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/SertoUrhoy/SyrCOMUrhoy.woff
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/SertoUrhoy/font.ini b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/SertoUrhoy/font.ini
new file mode 100644
index 00000000..8f67df35
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/SertoUrhoy/font.ini
@@ -0,0 +1,6 @@
+[SertoUrhoy]
+languages=syc,arc
+version=1.20
+license=SertoUrhoy License
+licensefile=melthofontsLicense.txt
+url=http://www.bethmardutho.org/index.php/resources/fonts.html
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Shapour/Shapour.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Shapour/Shapour.eot
new file mode 100644
index 00000000..c754d15a
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Shapour/Shapour.eot
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Shapour/Shapour.ttf b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Shapour/Shapour.ttf
new file mode 100644
index 00000000..499a4792
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Shapour/Shapour.ttf
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Shapour/Shapour.woff b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Shapour/Shapour.woff
new file mode 100644
index 00000000..238523d1
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Shapour/Shapour.woff
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Shapour/font.ini b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Shapour/font.ini
new file mode 100644
index 00000000..37e36f7d
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Shapour/font.ini
@@ -0,0 +1,7 @@
+[Shapour]
+languages=pal*
+version=001.000
+license=GPL-3.0+
+licensefile=gpl-3.0.txt
+request-url=https://bugzilla.wikimedia.org/44076
+url=https://github.com/behaafarid/shapour_font
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/SiyamRupali/SiyamRupali.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/SiyamRupali/SiyamRupali.eot
new file mode 100644
index 00000000..4203c0a1
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/SiyamRupali/SiyamRupali.eot
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/SiyamRupali/SiyamRupali.ttf b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/SiyamRupali/SiyamRupali.ttf
new file mode 100644
index 00000000..99a9841d
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/SiyamRupali/SiyamRupali.ttf
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/SiyamRupali/SiyamRupali.woff b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/SiyamRupali/SiyamRupali.woff
new file mode 100644
index 00000000..da30499a
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/SiyamRupali/SiyamRupali.woff
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/SiyamRupali/font.ini b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/SiyamRupali/font.ini
new file mode 100644
index 00000000..a0a2a242
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/SiyamRupali/font.ini
@@ -0,0 +1,7 @@
+[Siyam Rupali]
+languages=bn*, bpy*
+version=1.070
+license=GPL-3.0
+licensefile=gpl-3.0.txt
+request-url=https://bugzilla.wikimedia.org/33599, https://bugzilla.wikimedia.org/37863
+url=https://github.com/potasiyam/Siyam-Rupali
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Suwannaphum/Suwannaphum.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Suwannaphum/Suwannaphum.eot
new file mode 100644
index 00000000..8ded8b79
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Suwannaphum/Suwannaphum.eot
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Suwannaphum/Suwannaphum.ttf b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Suwannaphum/Suwannaphum.ttf
new file mode 100644
index 00000000..3b8ca34b
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Suwannaphum/Suwannaphum.ttf
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Suwannaphum/Suwannaphum.woff b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Suwannaphum/Suwannaphum.woff
new file mode 100644
index 00000000..b14e950c
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Suwannaphum/Suwannaphum.woff
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Suwannaphum/font.ini b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Suwannaphum/font.ini
new file mode 100644
index 00000000..4b666bbe
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Suwannaphum/font.ini
@@ -0,0 +1,10 @@
+[Suwannaphum]
+languages=km
+version=2.00
+license=OFL-1.1
+licensefile=OFL.txt
+url=http://www.google.com/fonts/specimen/Suwannaphum
+request-url=https://bugzilla.wikimedia.org/53673
+ttf=Suwannaphum.ttf
+eot=Suwannaphum.eot
+woff=Suwannaphum.woff
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/TaameyFrankCLM/TaameyFrankCLM.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/TaameyFrankCLM/TaameyFrankCLM.eot
new file mode 100644
index 00000000..86b22ef3
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/TaameyFrankCLM/TaameyFrankCLM.eot
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/TaameyFrankCLM/TaameyFrankCLM.ttf b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/TaameyFrankCLM/TaameyFrankCLM.ttf
new file mode 100644
index 00000000..5d9297f8
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/TaameyFrankCLM/TaameyFrankCLM.ttf
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/TaameyFrankCLM/TaameyFrankCLM.woff b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/TaameyFrankCLM/TaameyFrankCLM.woff
new file mode 100644
index 00000000..cfca3924
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/TaameyFrankCLM/TaameyFrankCLM.woff
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/TaameyFrankCLM/font.ini b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/TaameyFrankCLM/font.ini
new file mode 100644
index 00000000..3b144fa4
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/TaameyFrankCLM/font.ini
@@ -0,0 +1,7 @@
+[Taamey Frank CLM]
+languages=hbo*, he
+version=0.110
+license=GPL-2.0+
+licensefile=gpl-2.0.txt
+request-url=https://he.wikisource.org/wiki/%D7%95%D7%99%D7%A7%D7%99%D7%98%D7%A7%D7%A1%D7%98:%D7%9E%D7%96%D7%A0%D7%95%D7%9F/%D7%90%D7%A8%D7%9B%D7%99%D7%95%D7%9F_%D7%99%D7%95%D7%9C%D7%99_2013#.D7.92.D7.95.D7.A4.D7.A0.D7.99.D7.9D.21
+url=http://culmus.sourceforge.net/
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/TharLon/TharLon.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/TharLon/TharLon.eot
new file mode 100644
index 00000000..26757e0d
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/TharLon/TharLon.eot
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/TharLon/TharLon.ttf b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/TharLon/TharLon.ttf
new file mode 100644
index 00000000..4717d70c
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/TharLon/TharLon.ttf
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/TharLon/TharLon.woff b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/TharLon/TharLon.woff
new file mode 100644
index 00000000..8df187ab
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/TharLon/TharLon.woff
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/TharLon/font.ini b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/TharLon/font.ini
new file mode 100644
index 00000000..8be13585
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/TharLon/font.ini
@@ -0,0 +1,7 @@
+[TharLon]
+languages=my*
+version=1.003
+license=OFL-1.1
+licensefile=OFL.txt
+request-url=https://bugzilla.wikimedia.org/34817
+url=http://code.google.com/p/tharlon-font/
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Thendral/ThendralUni.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Thendral/ThendralUni.eot
new file mode 100644
index 00000000..1dc01752
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Thendral/ThendralUni.eot
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Thendral/ThendralUni.ttf b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Thendral/ThendralUni.ttf
new file mode 100644
index 00000000..17cb07e7
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Thendral/ThendralUni.ttf
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Thendral/ThendralUni.woff b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Thendral/ThendralUni.woff
new file mode 100644
index 00000000..335a6724
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Thendral/ThendralUni.woff
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Thendral/font.ini b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Thendral/font.ini
new file mode 100644
index 00000000..792b528b
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Thendral/font.ini
@@ -0,0 +1,6 @@
+[Thendral]
+languages=ta
+version=1.0
+license=GPL-2.0
+licensefile=gpl-2.0.txt
+url=https://github.com/thamizha/tamil-fonts
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Thenee/TheneeUni.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Thenee/TheneeUni.eot
new file mode 100644
index 00000000..733ff767
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Thenee/TheneeUni.eot
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Thenee/TheneeUni.ttf b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Thenee/TheneeUni.ttf
new file mode 100644
index 00000000..2a994447
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Thenee/TheneeUni.ttf
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Thenee/TheneeUni.woff b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Thenee/TheneeUni.woff
new file mode 100644
index 00000000..1e7023d6
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Thenee/TheneeUni.woff
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Thenee/font.ini b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Thenee/font.ini
new file mode 100644
index 00000000..b196f410
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/Thenee/font.ini
@@ -0,0 +1,6 @@
+[Thenee]
+languages=ta
+version=1.0
+license=GPL-2.0
+licensefile=gpl-2.0.txt
+url=https://github.com/thamizha/tamil-fonts
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/TuladhaJejeg/TuladhaJejeg_gr.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/TuladhaJejeg/TuladhaJejeg_gr.eot
new file mode 100644
index 00000000..1e6395f2
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/TuladhaJejeg/TuladhaJejeg_gr.eot
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/TuladhaJejeg/TuladhaJejeg_gr.ttf b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/TuladhaJejeg/TuladhaJejeg_gr.ttf
new file mode 100644
index 00000000..a19a7956
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/TuladhaJejeg/TuladhaJejeg_gr.ttf
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/TuladhaJejeg/TuladhaJejeg_gr.woff b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/TuladhaJejeg/TuladhaJejeg_gr.woff
new file mode 100644
index 00000000..13d1e341
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/TuladhaJejeg/TuladhaJejeg_gr.woff
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/TuladhaJejeg/font.ini b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/TuladhaJejeg/font.ini
new file mode 100644
index 00000000..51535520
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/TuladhaJejeg/font.ini
@@ -0,0 +1,7 @@
+[Tuladha Jejeg]
+languages=jv,jv-java*
+version=2.0.1
+license=OFL-1.1
+licensefile=OFL.txt
+request-url=https://gerrit.wikimedia.org/r/#/c/53599/
+url=https://sites.google.com/site/jawaunicode/
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/UnifrakturMaguntia/UnifrakturMaguntia.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/UnifrakturMaguntia/UnifrakturMaguntia.eot
new file mode 100644
index 00000000..af4265ae
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/UnifrakturMaguntia/UnifrakturMaguntia.eot
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/UnifrakturMaguntia/UnifrakturMaguntia.ttf b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/UnifrakturMaguntia/UnifrakturMaguntia.ttf
new file mode 100644
index 00000000..314c641d
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/UnifrakturMaguntia/UnifrakturMaguntia.ttf
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/UnifrakturMaguntia/UnifrakturMaguntia.woff b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/UnifrakturMaguntia/UnifrakturMaguntia.woff
new file mode 100644
index 00000000..88d1abb2
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/UnifrakturMaguntia/UnifrakturMaguntia.woff
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/UnifrakturMaguntia/font.ini b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/UnifrakturMaguntia/font.ini
new file mode 100644
index 00000000..bc4d42c8
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/UnifrakturMaguntia/font.ini
@@ -0,0 +1,8 @@
+[UnifrakturMaguntia]
+version=2014-07-06
+license=OFL-1.1
+licensefile=OFL.txt
+url=http://unifraktur.sourceforge.net/maguntia.html
+ttf=UnifrakturMaguntia.ttf
+eot=UnifrakturMaguntia.eot
+woff=UnifrakturMaguntia.woff
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/amiri/amiri-bold.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/amiri/amiri-bold.eot
new file mode 100644
index 00000000..c4a31c39
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/amiri/amiri-bold.eot
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/amiri/amiri-bold.ttf b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/amiri/amiri-bold.ttf
new file mode 100644
index 00000000..9d6b98fa
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/amiri/amiri-bold.ttf
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/amiri/amiri-bold.woff b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/amiri/amiri-bold.woff
new file mode 100644
index 00000000..c0547da3
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/amiri/amiri-bold.woff
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/amiri/amiri-boldslanted.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/amiri/amiri-boldslanted.eot
new file mode 100644
index 00000000..203bfeb1
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/amiri/amiri-boldslanted.eot
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/amiri/amiri-boldslanted.ttf b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/amiri/amiri-boldslanted.ttf
new file mode 100644
index 00000000..79ea126b
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/amiri/amiri-boldslanted.ttf
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/amiri/amiri-boldslanted.woff b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/amiri/amiri-boldslanted.woff
new file mode 100644
index 00000000..a7ea9a90
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/amiri/amiri-boldslanted.woff
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/amiri/amiri-regular.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/amiri/amiri-regular.eot
new file mode 100644
index 00000000..3c77551a
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/amiri/amiri-regular.eot
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/amiri/amiri-regular.ttf b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/amiri/amiri-regular.ttf
new file mode 100644
index 00000000..0fa885b4
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/amiri/amiri-regular.ttf
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/amiri/amiri-regular.woff b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/amiri/amiri-regular.woff
new file mode 100644
index 00000000..ab4046f6
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/amiri/amiri-regular.woff
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/amiri/amiri-slanted.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/amiri/amiri-slanted.eot
new file mode 100644
index 00000000..762d6420
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/amiri/amiri-slanted.eot
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/amiri/amiri-slanted.ttf b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/amiri/amiri-slanted.ttf
new file mode 100644
index 00000000..a2f2c0ca
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/amiri/amiri-slanted.ttf
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/amiri/amiri-slanted.woff b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/amiri/amiri-slanted.woff
new file mode 100644
index 00000000..13e66a8d
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/amiri/amiri-slanted.woff
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/amiri/font.ini b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/amiri/font.ini
new file mode 100644
index 00000000..8b43fc85
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/amiri/font.ini
@@ -0,0 +1,32 @@
+[Amiri]
+languages=ar, arb, ckb
+version=1.0.2
+license=OFL-1.1
+licensefile=OFL.txt
+request-url=https://bugzilla.wikimedia.org/41359, https://gerrit.wikimedia.org/r/#/c/25479/, https://bugzilla.wikimedia.org/57767
+url=http://amirifont.org
+ttf=amiri-regular.ttf
+eot=amiri-regular.eot
+woff=amiri-regular.woff
+bold=Amiri Bold
+italic=Amiri Italic
+bolditalic=Amiri Bold Italic
+
+[Amiri Bold]
+ttf=amiri-bold.ttf
+eot=amiri-bold.eot
+woff=amiri-bold.woff
+fontweight=bold
+
+[Amiri Italic]
+ttf=amiri-slanted.ttf
+eot=amiri-slanted.eot
+woff=amiri-slanted.woff
+fontstyle=italic
+
+[Amiri Bold Italic]
+ttf=amiri-boldslanted.ttf
+eot=amiri-boldslanted.eot
+woff=amiri-boldslanted.woff
+fontstyle=italic
+fontweight=bold
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/lklug/font.ini b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/lklug/font.ini
new file mode 100644
index 00000000..e188a5df
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/lklug/font.ini
@@ -0,0 +1,11 @@
+[lklug]
+languages=si
+version=0.6
+license=GPL-2.0
+licensefile=gpl-2.0.txt
+; URL is 404 at present. Current version is derived from Debian.
+url=http://www.lug.lk/fonts/lklug
+request-url=https://bugzilla.wikimedia.org/52964
+ttf=lklug.ttf
+eot=lklug.eot
+woff=lklug.woff
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/lklug/lklug.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/lklug/lklug.eot
new file mode 100644
index 00000000..adfd10a5
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/lklug/lklug.eot
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/lklug/lklug.ttf b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/lklug/lklug.ttf
new file mode 100644
index 00000000..75238ebb
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/lklug/lklug.ttf
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/lklug/lklug.woff b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/lklug/lklug.woff
new file mode 100644
index 00000000..dbf4d13d
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/lklug/lklug.woff
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/madan/font.ini b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/madan/font.ini
new file mode 100644
index 00000000..c3f6b234
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/madan/font.ini
@@ -0,0 +1,6 @@
+[Madan]
+languages=ne
+version=2
+license=GPL-2.0
+licensefile=gpl-2.0.txt
+url=http://www.mpp.org.np
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/madan/madan.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/madan/madan.eot
new file mode 100644
index 00000000..e1810c18
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/madan/madan.eot
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/madan/madan.ttf b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/madan/madan.ttf
new file mode 100644
index 00000000..f9060bd8
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/madan/madan.ttf
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/madan/madan.woff b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/madan/madan.woff
new file mode 100644
index 00000000..aa43ef01
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/madan/madan.woff
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/madan/madan_license.txt b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/madan/madan_license.txt
new file mode 100644
index 00000000..f02dccb9
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/madan/madan_license.txt
@@ -0,0 +1,16 @@
+Open Type rules and Nepali glyphsets developed at Madan Puraskar Pustakalaya and released under GPL.
+
+Contacts:
+Madan Puraskar Pustakalaya
+Yalamaya Kendra, Patan, NEPAL
+GPO Box. 42
+www.mpp.org.np
+info@mpp.org.np
+
+Font Developers:
+Gaurav Shrestha | gaurav@mpp.org.np
+Anjan Ale | anjan@mpp.org.np
+
+
+Copyright (c) 2007 by Madan Puraskar Pustakalaya. All rights reserved.
+
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/saweri/font.ini b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/saweri/font.ini
new file mode 100644
index 00000000..8008abfd
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/saweri/font.ini
@@ -0,0 +1,7 @@
+[Saweri]
+languages=bug*, mak*
+version=2
+license=GPL-3.0
+licensefile=gpl-3.0.txt
+request-url=http://www.mediawiki.org/wiki/Special:Code/MediaWiki/111928
+url=https://sites.google.com/site/niariot87/
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/saweri/saweri.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/saweri/saweri.eot
new file mode 100644
index 00000000..b4c4eaf0
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/saweri/saweri.eot
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/saweri/saweri.ttf b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/saweri/saweri.ttf
new file mode 100644
index 00000000..ecaf948d
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/saweri/saweri.ttf
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/saweri/saweri.woff b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/saweri/saweri.woff
new file mode 100644
index 00000000..958caade
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/saweri/saweri.woff
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/utkal/font.ini b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/utkal/font.ini
new file mode 100644
index 00000000..486df0c3
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/utkal/font.ini
@@ -0,0 +1,6 @@
+[Utkal]
+languages=or
+version=0.13
+license=GPL-2.0
+licensefile=gpl-2.0.txt
+url=http://oriya.sarovar.org/user_download.html
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/utkal/utkal.eot b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/utkal/utkal.eot
new file mode 100644
index 00000000..f5553313
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/utkal/utkal.eot
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/utkal/utkal.ttf b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/utkal/utkal.ttf
new file mode 100644
index 00000000..12d64f2c
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/utkal/utkal.ttf
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/utkal/utkal.woff b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/utkal/utkal.woff
new file mode 100644
index 00000000..f93a7534
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/fonts/utkal/utkal.woff
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/licenses/CC-BY-3.0.txt b/MLEB/UniversalLanguageSelector/data/fontrepo/licenses/CC-BY-3.0.txt
new file mode 100644
index 00000000..676783d9
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/licenses/CC-BY-3.0.txt
@@ -0,0 +1,334 @@
+Creative Commons Legal Code
+
+Attribution-NonCommercial 3.0 Unported
+
+ CREATIVE COMMONS CORPORATION IS NOT A LAW FIRM AND DOES NOT PROVIDE
+ LEGAL SERVICES. DISTRIBUTION OF THIS LICENSE DOES NOT CREATE AN
+ ATTORNEY-CLIENT RELATIONSHIP. CREATIVE COMMONS PROVIDES THIS
+ INFORMATION ON AN "AS-IS" BASIS. CREATIVE COMMONS MAKES NO WARRANTIES
+ REGARDING THE INFORMATION PROVIDED, AND DISCLAIMS LIABILITY FOR
+ DAMAGES RESULTING FROM ITS USE.
+
+License
+
+THE WORK (AS DEFINED BELOW) IS PROVIDED UNDER THE TERMS OF THIS CREATIVE
+COMMONS PUBLIC LICENSE ("CCPL" OR "LICENSE"). THE WORK IS PROTECTED BY
+COPYRIGHT AND/OR OTHER APPLICABLE LAW. ANY USE OF THE WORK OTHER THAN AS
+AUTHORIZED UNDER THIS LICENSE OR COPYRIGHT LAW IS PROHIBITED.
+
+BY EXERCISING ANY RIGHTS TO THE WORK PROVIDED HERE, YOU ACCEPT AND AGREE
+TO BE BOUND BY THE TERMS OF THIS LICENSE. TO THE EXTENT THIS LICENSE MAY
+BE CONSIDERED TO BE A CONTRACT, THE LICENSOR GRANTS YOU THE RIGHTS
+CONTAINED HERE IN CONSIDERATION OF YOUR ACCEPTANCE OF SUCH TERMS AND
+CONDITIONS.
+
+1. Definitions
+
+ a. "Adaptation" means a work based upon the Work, or upon the Work and
+ other pre-existing works, such as a translation, adaptation,
+ derivative work, arrangement of music or other alterations of a
+ literary or artistic work, or phonogram or performance and includes
+ cinematographic adaptations or any other form in which the Work may be
+ recast, transformed, or adapted including in any form recognizably
+ derived from the original, except that a work that constitutes a
+ Collection will not be considered an Adaptation for the purpose of
+ this License. For the avoidance of doubt, where the Work is a musical
+ work, performance or phonogram, the synchronization of the Work in
+ timed-relation with a moving image ("synching") will be considered an
+ Adaptation for the purpose of this License.
+ b. "Collection" means a collection of literary or artistic works, such as
+ encyclopedias and anthologies, or performances, phonograms or
+ broadcasts, or other works or subject matter other than works listed
+ in Section 1(f) below, which, by reason of the selection and
+ arrangement of their contents, constitute intellectual creations, in
+ which the Work is included in its entirety in unmodified form along
+ with one or more other contributions, each constituting separate and
+ independent works in themselves, which together are assembled into a
+ collective whole. A work that constitutes a Collection will not be
+ considered an Adaptation (as defined above) for the purposes of this
+ License.
+ c. "Distribute" means to make available to the public the original and
+ copies of the Work or Adaptation, as appropriate, through sale or
+ other transfer of ownership.
+ d. "Licensor" means the individual, individuals, entity or entities that
+ offer(s) the Work under the terms of this License.
+ e. "Original Author" means, in the case of a literary or artistic work,
+ the individual, individuals, entity or entities who created the Work
+ or if no individual or entity can be identified, the publisher; and in
+ addition (i) in the case of a performance the actors, singers,
+ musicians, dancers, and other persons who act, sing, deliver, declaim,
+ play in, interpret or otherwise perform literary or artistic works or
+ expressions of folklore; (ii) in the case of a phonogram the producer
+ being the person or legal entity who first fixes the sounds of a
+ performance or other sounds; and, (iii) in the case of broadcasts, the
+ organization that transmits the broadcast.
+ f. "Work" means the literary and/or artistic work offered under the terms
+ of this License including without limitation any production in the
+ literary, scientific and artistic domain, whatever may be the mode or
+ form of its expression including digital form, such as a book,
+ pamphlet and other writing; a lecture, address, sermon or other work
+ of the same nature; a dramatic or dramatico-musical work; a
+ choreographic work or entertainment in dumb show; a musical
+ composition with or without words; a cinematographic work to which are
+ assimilated works expressed by a process analogous to cinematography;
+ a work of drawing, painting, architecture, sculpture, engraving or
+ lithography; a photographic work to which are assimilated works
+ expressed by a process analogous to photography; a work of applied
+ art; an illustration, map, plan, sketch or three-dimensional work
+ relative to geography, topography, architecture or science; a
+ performance; a broadcast; a phonogram; a compilation of data to the
+ extent it is protected as a copyrightable work; or a work performed by
+ a variety or circus performer to the extent it is not otherwise
+ considered a literary or artistic work.
+ g. "You" means an individual or entity exercising rights under this
+ License who has not previously violated the terms of this License with
+ respect to the Work, or who has received express permission from the
+ Licensor to exercise rights under this License despite a previous
+ violation.
+ h. "Publicly Perform" means to perform public recitations of the Work and
+ to communicate to the public those public recitations, by any means or
+ process, including by wire or wireless means or public digital
+ performances; to make available to the public Works in such a way that
+ members of the public may access these Works from a place and at a
+ place individually chosen by them; to perform the Work to the public
+ by any means or process and the communication to the public of the
+ performances of the Work, including by public digital performance; to
+ broadcast and rebroadcast the Work by any means including signs,
+ sounds or images.
+ i. "Reproduce" means to make copies of the Work by any means including
+ without limitation by sound or visual recordings and the right of
+ fixation and reproducing fixations of the Work, including storage of a
+ protected performance or phonogram in digital form or other electronic
+ medium.
+
+2. Fair Dealing Rights. Nothing in this License is intended to reduce,
+limit, or restrict any uses free from copyright or rights arising from
+limitations or exceptions that are provided for in connection with the
+copyright protection under copyright law or other applicable laws.
+
+3. License Grant. Subject to the terms and conditions of this License,
+Licensor hereby grants You a worldwide, royalty-free, non-exclusive,
+perpetual (for the duration of the applicable copyright) license to
+exercise the rights in the Work as stated below:
+
+ a. to Reproduce the Work, to incorporate the Work into one or more
+ Collections, and to Reproduce the Work as incorporated in the
+ Collections;
+ b. to create and Reproduce Adaptations provided that any such Adaptation,
+ including any translation in any medium, takes reasonable steps to
+ clearly label, demarcate or otherwise identify that changes were made
+ to the original Work. For example, a translation could be marked "The
+ original work was translated from English to Spanish," or a
+ modification could indicate "The original work has been modified.";
+ c. to Distribute and Publicly Perform the Work including as incorporated
+ in Collections; and,
+ d. to Distribute and Publicly Perform Adaptations.
+
+The above rights may be exercised in all media and formats whether now
+known or hereafter devised. The above rights include the right to make
+such modifications as are technically necessary to exercise the rights in
+other media and formats. Subject to Section 8(f), all rights not expressly
+granted by Licensor are hereby reserved, including but not limited to the
+rights set forth in Section 4(d).
+
+4. Restrictions. The license granted in Section 3 above is expressly made
+subject to and limited by the following restrictions:
+
+ a. You may Distribute or Publicly Perform the Work only under the terms
+ of this License. You must include a copy of, or the Uniform Resource
+ Identifier (URI) for, this License with every copy of the Work You
+ Distribute or Publicly Perform. You may not offer or impose any terms
+ on the Work that restrict the terms of this License or the ability of
+ the recipient of the Work to exercise the rights granted to that
+ recipient under the terms of the License. You may not sublicense the
+ Work. You must keep intact all notices that refer to this License and
+ to the disclaimer of warranties with every copy of the Work You
+ Distribute or Publicly Perform. When You Distribute or Publicly
+ Perform the Work, You may not impose any effective technological
+ measures on the Work that restrict the ability of a recipient of the
+ Work from You to exercise the rights granted to that recipient under
+ the terms of the License. This Section 4(a) applies to the Work as
+ incorporated in a Collection, but this does not require the Collection
+ apart from the Work itself to be made subject to the terms of this
+ License. If You create a Collection, upon notice from any Licensor You
+ must, to the extent practicable, remove from the Collection any credit
+ as required by Section 4(c), as requested. If You create an
+ Adaptation, upon notice from any Licensor You must, to the extent
+ practicable, remove from the Adaptation any credit as required by
+ Section 4(c), as requested.
+ b. You may not exercise any of the rights granted to You in Section 3
+ above in any manner that is primarily intended for or directed toward
+ commercial advantage or private monetary compensation. The exchange of
+ the Work for other copyrighted works by means of digital file-sharing
+ or otherwise shall not be considered to be intended for or directed
+ toward commercial advantage or private monetary compensation, provided
+ there is no payment of any monetary compensation in connection with
+ the exchange of copyrighted works.
+ c. If You Distribute, or Publicly Perform the Work or any Adaptations or
+ Collections, You must, unless a request has been made pursuant to
+ Section 4(a), keep intact all copyright notices for the Work and
+ provide, reasonable to the medium or means You are utilizing: (i) the
+ name of the Original Author (or pseudonym, if applicable) if supplied,
+ and/or if the Original Author and/or Licensor designate another party
+ or parties (e.g., a sponsor institute, publishing entity, journal) for
+ attribution ("Attribution Parties") in Licensor's copyright notice,
+ terms of service or by other reasonable means, the name of such party
+ or parties; (ii) the title of the Work if supplied; (iii) to the
+ extent reasonably practicable, the URI, if any, that Licensor
+ specifies to be associated with the Work, unless such URI does not
+ refer to the copyright notice or licensing information for the Work;
+ and, (iv) consistent with Section 3(b), in the case of an Adaptation,
+ a credit identifying the use of the Work in the Adaptation (e.g.,
+ "French translation of the Work by Original Author," or "Screenplay
+ based on original Work by Original Author"). The credit required by
+ this Section 4(c) may be implemented in any reasonable manner;
+ provided, however, that in the case of a Adaptation or Collection, at
+ a minimum such credit will appear, if a credit for all contributing
+ authors of the Adaptation or Collection appears, then as part of these
+ credits and in a manner at least as prominent as the credits for the
+ other contributing authors. For the avoidance of doubt, You may only
+ use the credit required by this Section for the purpose of attribution
+ in the manner set out above and, by exercising Your rights under this
+ License, You may not implicitly or explicitly assert or imply any
+ connection with, sponsorship or endorsement by the Original Author,
+ Licensor and/or Attribution Parties, as appropriate, of You or Your
+ use of the Work, without the separate, express prior written
+ permission of the Original Author, Licensor and/or Attribution
+ Parties.
+ d. For the avoidance of doubt:
+
+ i. Non-waivable Compulsory License Schemes. In those jurisdictions in
+ which the right to collect royalties through any statutory or
+ compulsory licensing scheme cannot be waived, the Licensor
+ reserves the exclusive right to collect such royalties for any
+ exercise by You of the rights granted under this License;
+ ii. Waivable Compulsory License Schemes. In those jurisdictions in
+ which the right to collect royalties through any statutory or
+ compulsory licensing scheme can be waived, the Licensor reserves
+ the exclusive right to collect such royalties for any exercise by
+ You of the rights granted under this License if Your exercise of
+ such rights is for a purpose or use which is otherwise than
+ noncommercial as permitted under Section 4(b) and otherwise waives
+ the right to collect royalties through any statutory or compulsory
+ licensing scheme; and,
+ iii. Voluntary License Schemes. The Licensor reserves the right to
+ collect royalties, whether individually or, in the event that the
+ Licensor is a member of a collecting society that administers
+ voluntary licensing schemes, via that society, from any exercise
+ by You of the rights granted under this License that is for a
+ purpose or use which is otherwise than noncommercial as permitted
+ under Section 4(c).
+ e. Except as otherwise agreed in writing by the Licensor or as may be
+ otherwise permitted by applicable law, if You Reproduce, Distribute or
+ Publicly Perform the Work either by itself or as part of any
+ Adaptations or Collections, You must not distort, mutilate, modify or
+ take other derogatory action in relation to the Work which would be
+ prejudicial to the Original Author's honor or reputation. Licensor
+ agrees that in those jurisdictions (e.g. Japan), in which any exercise
+ of the right granted in Section 3(b) of this License (the right to
+ make Adaptations) would be deemed to be a distortion, mutilation,
+ modification or other derogatory action prejudicial to the Original
+ Author's honor and reputation, the Licensor will waive or not assert,
+ as appropriate, this Section, to the fullest extent permitted by the
+ applicable national law, to enable You to reasonably exercise Your
+ right under Section 3(b) of this License (right to make Adaptations)
+ but not otherwise.
+
+5. Representations, Warranties and Disclaimer
+
+UNLESS OTHERWISE MUTUALLY AGREED TO BY THE PARTIES IN WRITING, LICENSOR
+OFFERS THE WORK AS-IS AND MAKES NO REPRESENTATIONS OR WARRANTIES OF ANY
+KIND CONCERNING THE WORK, EXPRESS, IMPLIED, STATUTORY OR OTHERWISE,
+INCLUDING, WITHOUT LIMITATION, WARRANTIES OF TITLE, MERCHANTIBILITY,
+FITNESS FOR A PARTICULAR PURPOSE, NONINFRINGEMENT, OR THE ABSENCE OF
+LATENT OR OTHER DEFECTS, ACCURACY, OR THE PRESENCE OF ABSENCE OF ERRORS,
+WHETHER OR NOT DISCOVERABLE. SOME JURISDICTIONS DO NOT ALLOW THE EXCLUSION
+OF IMPLIED WARRANTIES, SO SUCH EXCLUSION MAY NOT APPLY TO YOU.
+
+6. Limitation on Liability. EXCEPT TO THE EXTENT REQUIRED BY APPLICABLE
+LAW, IN NO EVENT WILL LICENSOR BE LIABLE TO YOU ON ANY LEGAL THEORY FOR
+ANY SPECIAL, INCIDENTAL, CONSEQUENTIAL, PUNITIVE OR EXEMPLARY DAMAGES
+ARISING OUT OF THIS LICENSE OR THE USE OF THE WORK, EVEN IF LICENSOR HAS
+BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
+
+7. Termination
+
+ a. This License and the rights granted hereunder will terminate
+ automatically upon any breach by You of the terms of this License.
+ Individuals or entities who have received Adaptations or Collections
+ from You under this License, however, will not have their licenses
+ terminated provided such individuals or entities remain in full
+ compliance with those licenses. Sections 1, 2, 5, 6, 7, and 8 will
+ survive any termination of this License.
+ b. Subject to the above terms and conditions, the license granted here is
+ perpetual (for the duration of the applicable copyright in the Work).
+ Notwithstanding the above, Licensor reserves the right to release the
+ Work under different license terms or to stop distributing the Work at
+ any time; provided, however that any such election will not serve to
+ withdraw this License (or any other license that has been, or is
+ required to be, granted under the terms of this License), and this
+ License will continue in full force and effect unless terminated as
+ stated above.
+
+8. Miscellaneous
+
+ a. Each time You Distribute or Publicly Perform the Work or a Collection,
+ the Licensor offers to the recipient a license to the Work on the same
+ terms and conditions as the license granted to You under this License.
+ b. Each time You Distribute or Publicly Perform an Adaptation, Licensor
+ offers to the recipient a license to the original Work on the same
+ terms and conditions as the license granted to You under this License.
+ c. If any provision of this License is invalid or unenforceable under
+ applicable law, it shall not affect the validity or enforceability of
+ the remainder of the terms of this License, and without further action
+ by the parties to this agreement, such provision shall be reformed to
+ the minimum extent necessary to make such provision valid and
+ enforceable.
+ d. No term or provision of this License shall be deemed waived and no
+ breach consented to unless such waiver or consent shall be in writing
+ and signed by the party to be charged with such waiver or consent.
+ e. This License constitutes the entire agreement between the parties with
+ respect to the Work licensed here. There are no understandings,
+ agreements or representations with respect to the Work not specified
+ here. Licensor shall not be bound by any additional provisions that
+ may appear in any communication from You. This License may not be
+ modified without the mutual written agreement of the Licensor and You.
+ f. The rights granted under, and the subject matter referenced, in this
+ License were drafted utilizing the terminology of the Berne Convention
+ for the Protection of Literary and Artistic Works (as amended on
+ September 28, 1979), the Rome Convention of 1961, the WIPO Copyright
+ Treaty of 1996, the WIPO Performances and Phonograms Treaty of 1996
+ and the Universal Copyright Convention (as revised on July 24, 1971).
+ These rights and subject matter take effect in the relevant
+ jurisdiction in which the License terms are sought to be enforced
+ according to the corresponding provisions of the implementation of
+ those treaty provisions in the applicable national law. If the
+ standard suite of rights granted under applicable copyright law
+ includes additional rights not granted under this License, such
+ additional rights are deemed to be included in the License; this
+ License is not intended to restrict the license of any rights under
+ applicable law.
+
+
+Creative Commons Notice
+
+ Creative Commons is not a party to this License, and makes no warranty
+ whatsoever in connection with the Work. Creative Commons will not be
+ liable to You or any party on any legal theory for any damages
+ whatsoever, including without limitation any general, special,
+ incidental or consequential damages arising in connection to this
+ license. Notwithstanding the foregoing two (2) sentences, if Creative
+ Commons has expressly identified itself as the Licensor hereunder, it
+ shall have all rights and obligations of Licensor.
+
+ Except for the limited purpose of indicating to the public that the
+ Work is licensed under the CCPL, Creative Commons does not authorize
+ the use by either party of the trademark "Creative Commons" or any
+ related trademark or logo of Creative Commons without the prior
+ written consent of Creative Commons. Any permitted use will be in
+ compliance with Creative Commons' then-current trademark usage
+ guidelines, as may be published on its website or otherwise made
+ available upon request from time to time. For the avoidance of doubt,
+ this trademark restriction does not form part of the License.
+
+ Creative Commons may be contacted at http://creativecommons.org/.
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/licenses/George-Douros.txt b/MLEB/UniversalLanguageSelector/data/fontrepo/licenses/George-Douros.txt
new file mode 100644
index 00000000..2de00488
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/licenses/George-Douros.txt
@@ -0,0 +1,8 @@
+This is a license for the fonts designed by George Douros:
+
+Fonts in this site are offered free for any use;
+they may be installed, embedded, opened, edited,
+modified, regenerated, posted, packaged and redistributed.
+
+Source: http://users.teilar.gr/~g1951d/
+
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/licenses/HussainiNastaleeq.txt b/MLEB/UniversalLanguageSelector/data/fontrepo/licenses/HussainiNastaleeq.txt
new file mode 100644
index 00000000..125044df
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/licenses/HussainiNastaleeq.txt
@@ -0,0 +1,50 @@
+Copyright (c) 2004 by Center for Research in Urdu Language Processing (CRULP),
+National University of Computer and Emerging Sciences, Lahore, Pakistan. All
+Rights Reserved.
+
+Permission is hereby granted, free of charge, to any person obtaining a copy of
+the font accompanying this license (“Font”) and associated documentation files
+(the “Font Software”), to reproduce and distribute the Font Software, including
+without limitation the rights to use, copy, merge, publish, distribute, and/or
+sell copies of the Font Software, and to permit persons to whom the Font
+Software is furnished to do so, subject to the following conditions:
+
+1. The above copyright and trademark notices and this permission notice shall
+ be included in all copies of one or more of the Font Software typefaces.
+
+2. The Font Software may be modified, altered, or added to, and in particular
+ the designs of glyphs or characters in the Fonts may be modified and
+ additional glyphs or characters may be added to the Fonts, only if the font
+ is renamed to names not containing either the words “Nafees” or the word
+ “CRULP”.
+
+3. This License becomes null and void to the extent applicable to Font or Font
+ Software that has been modified and is distributed under the “Nafees
+ Nastaleeq” names.
+
+4. The Font Software may be sold as part of a larger software package but no
+ copy of one or more of the Font Software typefaces may be sold by itself.
+
+5. The font software is provided "as is", without warranty of any kind, express
+ or implied, including but not limited to any warranties of merchantability,
+ fitness for a particular purpose and noninfringement of copyright, patent,
+ trademark, or other right. In no event shall CRULP or NUCES be liable for
+ any claim, damages or other liability, including any general, special,
+ indirect, incidental, or consequential damages, whether in an action of
+ contract, or otherwise, arising from, out of the use or inability to use the
+ font software or from other dealings in the font software.
+
+6. Except as contained in this notice, the names of "CRULP" or "Nafees" shall
+ not be used in advertising or otherwise to promote the sale, use or other
+ dealings in this Font Software without prior written authorization from
+ CRULP.
+
+7. As a special exception, if you create a document which uses this font, and
+ embed this font or unaltered portions of this font into the document, this
+ font does not by itself cause the resulting document to be covered by the
+ GNU General Public License. This exception does not however invalidate any
+ other reasons why the document might be covered by the GNU General Public
+ License. If you modify this font, you may extend this exception to your
+ version of the font, but you are not obligated to do so. If you do not wish
+ to do so, delete this exception statement from your version.
+
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/licenses/IranianSans.txt b/MLEB/UniversalLanguageSelector/data/fontrepo/licenses/IranianSans.txt
new file mode 100644
index 00000000..e75412d4
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/licenses/IranianSans.txt
@@ -0,0 +1,59 @@
+=======================================================================
+THIS PACKAGE IS FREE SOFTWARE BUT IS NOT GPL. PLEASE READ THE FOLLOWING
+LICENSE FOR DETAILS OF YOUR RIGHTS:
+=======================================================================
+
+Arabic Script Glyphs, OpenType Layout and TrueType Instructions (c) 2007 by Iranian National Initiative for Free and Open Source Software (www.foss.ir) See license details in section one.
+
+Latin Glyph Outlines Copyright (c) 2003 by Bitstream, Inc. See license details in section two.
+
+
+-----------------------------------------------------------------------
+
+
+SECTION ONE - Iranian National Initiative for Free and Open Source Software Font License
+
+
+Copyright (c) 2007 by Iranian National Initiative for Free and Open Source Software,
+All Rights Reserved.
+
+"Iranian Sans" is a service mark of Iranian National Initiative for Free and Open Source Software
+
+Permission is hereby granted, free of charge, to any person obtaining a copy of the fonts accompanying this license ("Fonts") and associated documentation files (the "Font Software"), to reproduce and distribute the Font Software, including without limitation the rights to use, copy, merge, publish, distribute, copies of the Font Software, and to permit persons to whom the Font Software is furnished to do so, subject to the following conditions:
+
+The above copyright and trademark notices and this permission notice shall be included in all copies of one or more of the Font Software typefaces.
+
+The Font Software may be modified, altered, or added to, and in particular the designs of glyphs or characters in the Fonts may be modified and additional glyphs or characters may be added to the Fonts, only if the fonts are renamed to names not containing the word "Iranian".
+
+This License becomes null and void to the extent applicable to Fonts or Font Software that has been modified and is distributed either under the "Iranian" names or claimed to be endorsed or associated with Iranian National Initiative for Free and Open Source Software.
+
+The Font Software may be sold as part of a larger software package provided that: a) No copy of one or more of the Font Software typefaces may be sold by itself or as part of a package that only consists of a collection of fonts and associated supplementary documentation and utilities. b) No price is charged or associated with any of the Font Software typefaces themselves. So, the price of the package with or without the Font Software typefaces should be the same.
+
+THE FONT SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT OF COPYRIGHT, PATENT, TRADEMARK, OR OTHER RIGHT. IN NO EVENT SHALL "IRANIAN NATIONAL INITIATIVE FOR FREE AND OPEN SOURCE SOFTWARE" BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, INCLUDING ANY GENERAL, SPECIAL, INDIRECT, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF THE USE OR INABILITY TO USE THE FONT SOFTWARE OR FROM OTHER DEALINGS IN THE FONT SOFTWARE.
+
+Except as contained in this notice, the names of "Iranian", "Iranian Sans", "Iranian National Initiative for Free and Open Source Software" or "www.foss.ir" shall not be used in advertising or otherwise to promote the sale, use or other dealings in this Font Software without prior written authorization from the Iranian National Initiative for Free and Open Source Software. For further information, contact: fonts (at) foss (dot) ir.
+
+
+-----------------------------------------------------------------------
+
+
+SECTION TWO - Bitstream, Inc. License
+
+
+Copyright (c) 2003 by Bitstream, Inc.
+All Rights Reserved.
+Bitstream Vera is a trademark of Bitstream, Inc.
+
+Permission is hereby granted, free of charge, to any person obtaining a copy of the fonts accompanying this license ("Fonts") and associated documentation files (the "Font Software"), to reproduce and distribute the Font Software, including without limitation the rights to use, copy, merge, publish, distribute, and/or sell copies of the Font Software, and to permit persons to whom the Font Software is furnished to do so, subject to the following conditions:
+
+The above copyright and trademark notices and this permission notice shall be included in all copies of one or more of the Font Software typefaces.
+
+The Font Software may be modified, altered, or added to, and in particular the designs of glyphs or characters in the Fonts may be modified and additional glyphs or characters may be added to the Fonts, only if the fonts are renamed to names not containing either the words "Bitstream" or the word "Vera".
+
+This License becomes null and void to the extent applicable to Fonts or Font Software that has been modified and is distributed under the "Bitstream Vera" names.
+
+The Font Software may be sold as part of a larger software package but no copy of one or more of the Font Software typefaces may be sold by itself.
+
+THE FONT SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF COPYRIGHT, PATENT, TRADEMARK, OR OTHER RIGHT. IN NO EVENT SHALL BITSTREAM OR THE GNOME FOUNDATION BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, INCLUDING ANY GENERAL, SPECIAL, INDIRECT, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF THE USE OR INABILITY TO USE THE FONT SOFTWARE OR FROM OTHER DEALINGS IN THE FONT SOFTWARE.
+
+Except as contained in this notice, the names of Gnome, the Gnome Foundation, and Bitstream Inc., shall not be used in advertising or otherwise to promote the sale, use or other dealings in this Font Software without prior written authorization from the Gnome Foundation or Bitstream Inc., respectively. For further information, contact: fonts at gnome dot org.
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/licenses/OFL.txt b/MLEB/UniversalLanguageSelector/data/fontrepo/licenses/OFL.txt
new file mode 100644
index 00000000..33f36665
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/licenses/OFL.txt
@@ -0,0 +1,97 @@
+Copyright (c) <dates>, <Copyright Holder> (<URL|email>),
+with Reserved Font Name <Reserved Font Name>.
+Copyright (c) <dates>, <additional Copyright Holder> (<URL|email>),
+with Reserved Font Name <additional Reserved Font Name>.
+Copyright (c) <dates>, <additional Copyright Holder> (<URL|email>).
+
+This Font Software is licensed under the SIL Open Font License, Version 1.1.
+This license is copied below, and is also available with a FAQ at:
+http://scripts.sil.org/OFL
+
+
+-----------------------------------------------------------
+SIL OPEN FONT LICENSE Version 1.1 - 26 February 2007
+-----------------------------------------------------------
+
+PREAMBLE
+The goals of the Open Font License (OFL) are to stimulate worldwide
+development of collaborative font projects, to support the font creation
+efforts of academic and linguistic communities, and to provide a free and
+open framework in which fonts may be shared and improved in partnership
+with others.
+
+The OFL allows the licensed fonts to be used, studied, modified and
+redistributed freely as long as they are not sold by themselves. The
+fonts, including any derivative works, can be bundled, embedded,
+redistributed and/or sold with any software provided that any reserved
+names are not used by derivative works. The fonts and derivatives,
+however, cannot be released under any other type of license. The
+requirement for fonts to remain under this license does not apply
+to any document created using the fonts or their derivatives.
+
+DEFINITIONS
+"Font Software" refers to the set of files released by the Copyright
+Holder(s) under this license and clearly marked as such. This may
+include source files, build scripts and documentation.
+
+"Reserved Font Name" refers to any names specified as such after the
+copyright statement(s).
+
+"Original Version" refers to the collection of Font Software components as
+distributed by the Copyright Holder(s).
+
+"Modified Version" refers to any derivative made by adding to, deleting,
+or substituting -- in part or in whole -- any of the components of the
+Original Version, by changing formats or by porting the Font Software to a
+new environment.
+
+"Author" refers to any designer, engineer, programmer, technical
+writer or other person who contributed to the Font Software.
+
+PERMISSION & CONDITIONS
+Permission is hereby granted, free of charge, to any person obtaining
+a copy of the Font Software, to use, study, copy, merge, embed, modify,
+redistribute, and sell modified and unmodified copies of the Font
+Software, subject to the following conditions:
+
+1) Neither the Font Software nor any of its individual components,
+in Original or Modified Versions, may be sold by itself.
+
+2) Original or Modified Versions of the Font Software may be bundled,
+redistributed and/or sold with any software, provided that each copy
+contains the above copyright notice and this license. These can be
+included either as stand-alone text files, human-readable headers or
+in the appropriate machine-readable metadata fields within text or
+binary files as long as those fields can be easily viewed by the user.
+
+3) No Modified Version of the Font Software may use the Reserved Font
+Name(s) unless explicit written permission is granted by the corresponding
+Copyright Holder. This restriction only applies to the primary font name as
+presented to the users.
+
+4) The name(s) of the Copyright Holder(s) or the Author(s) of the Font
+Software shall not be used to promote, endorse or advertise any
+Modified Version, except to acknowledge the contribution(s) of the
+Copyright Holder(s) and the Author(s) or with their explicit written
+permission.
+
+5) The Font Software, modified or unmodified, in part or in whole,
+must be distributed entirely under this license, and must not be
+distributed under any other license. The requirement for fonts to
+remain under this license does not apply to any document created
+using the Font Software.
+
+TERMINATION
+This license becomes null and void if any of the above conditions are
+not met.
+
+DISCLAIMER
+THE FONT SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTIES OF
+MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT
+OF COPYRIGHT, PATENT, TRADEMARK, OR OTHER RIGHT. IN NO EVENT SHALL THE
+COPYRIGHT HOLDER BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
+INCLUDING ANY GENERAL, SPECIAL, INDIRECT, INCIDENTAL, OR CONSEQUENTIAL
+DAMAGES, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+FROM, OUT OF THE USE OR INABILITY TO USE THE FONT SOFTWARE OR FROM
+OTHER DEALINGS IN THE FONT SOFTWARE.
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/licenses/README b/MLEB/UniversalLanguageSelector/data/fontrepo/licenses/README
new file mode 100644
index 00000000..ed0b35d0
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/licenses/README
@@ -0,0 +1,30 @@
+Use following as identifier in fonts.ini for license field. License texts are
+available under licenses/ directory.
+
+Common Licenses
+---------------
+Apache-2.0
+CC-BY-3.0
+GPL-2.0
+GPL-2.0+
+GPL-2.0-with-font-exception
+GPL-3.0
+GPL-3.0+
+GPL-3.0-with-font-exception
+LGPL-2.0.1+
+LGPL-2.1+
+OFL-1.1
+
+Other
+-----
+East Syriac Adiabene License
+HussainiNastaleeq License
+IranianSans
+George-Douros
+
+See: https://spdx.org/licenses/
+
+TODO
+----
+* Cleanup: Estrangelo Edessa License
+* Cleanup: SertoUrhoy License
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/licenses/apache-2.0.txt b/MLEB/UniversalLanguageSelector/data/fontrepo/licenses/apache-2.0.txt
new file mode 100644
index 00000000..75b52484
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/licenses/apache-2.0.txt
@@ -0,0 +1,202 @@
+
+ Apache License
+ Version 2.0, January 2004
+ http://www.apache.org/licenses/
+
+ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
+
+ 1. Definitions.
+
+ "License" shall mean the terms and conditions for use, reproduction,
+ and distribution as defined by Sections 1 through 9 of this document.
+
+ "Licensor" shall mean the copyright owner or entity authorized by
+ the copyright owner that is granting the License.
+
+ "Legal Entity" shall mean the union of the acting entity and all
+ other entities that control, are controlled by, or are under common
+ control with that entity. For the purposes of this definition,
+ "control" means (i) the power, direct or indirect, to cause the
+ direction or management of such entity, whether by contract or
+ otherwise, or (ii) ownership of fifty percent (50%) or more of the
+ outstanding shares, or (iii) beneficial ownership of such entity.
+
+ "You" (or "Your") shall mean an individual or Legal Entity
+ exercising permissions granted by this License.
+
+ "Source" form shall mean the preferred form for making modifications,
+ including but not limited to software source code, documentation
+ source, and configuration files.
+
+ "Object" form shall mean any form resulting from mechanical
+ transformation or translation of a Source form, including but
+ not limited to compiled object code, generated documentation,
+ and conversions to other media types.
+
+ "Work" shall mean the work of authorship, whether in Source or
+ Object form, made available under the License, as indicated by a
+ copyright notice that is included in or attached to the work
+ (an example is provided in the Appendix below).
+
+ "Derivative Works" shall mean any work, whether in Source or Object
+ form, that is based on (or derived from) the Work and for which the
+ editorial revisions, annotations, elaborations, or other modifications
+ represent, as a whole, an original work of authorship. For the purposes
+ of this License, Derivative Works shall not include works that remain
+ separable from, or merely link (or bind by name) to the interfaces of,
+ the Work and Derivative Works thereof.
+
+ "Contribution" shall mean any work of authorship, including
+ the original version of the Work and any modifications or additions
+ to that Work or Derivative Works thereof, that is intentionally
+ submitted to Licensor for inclusion in the Work by the copyright owner
+ or by an individual or Legal Entity authorized to submit on behalf of
+ the copyright owner. For the purposes of this definition, "submitted"
+ means any form of electronic, verbal, or written communication sent
+ to the Licensor or its representatives, including but not limited to
+ communication on electronic mailing lists, source code control systems,
+ and issue tracking systems that are managed by, or on behalf of, the
+ Licensor for the purpose of discussing and improving the Work, but
+ excluding communication that is conspicuously marked or otherwise
+ designated in writing by the copyright owner as "Not a Contribution."
+
+ "Contributor" shall mean Licensor and any individual or Legal Entity
+ on behalf of whom a Contribution has been received by Licensor and
+ subsequently incorporated within the Work.
+
+ 2. Grant of Copyright License. Subject to the terms and conditions of
+ this License, each Contributor hereby grants to You a perpetual,
+ worldwide, non-exclusive, no-charge, royalty-free, irrevocable
+ copyright license to reproduce, prepare Derivative Works of,
+ publicly display, publicly perform, sublicense, and distribute the
+ Work and such Derivative Works in Source or Object form.
+
+ 3. Grant of Patent License. Subject to the terms and conditions of
+ this License, each Contributor hereby grants to You a perpetual,
+ worldwide, non-exclusive, no-charge, royalty-free, irrevocable
+ (except as stated in this section) patent license to make, have made,
+ use, offer to sell, sell, import, and otherwise transfer the Work,
+ where such license applies only to those patent claims licensable
+ by such Contributor that are necessarily infringed by their
+ Contribution(s) alone or by combination of their Contribution(s)
+ with the Work to which such Contribution(s) was submitted. If You
+ institute patent litigation against any entity (including a
+ cross-claim or counterclaim in a lawsuit) alleging that the Work
+ or a Contribution incorporated within the Work constitutes direct
+ or contributory patent infringement, then any patent licenses
+ granted to You under this License for that Work shall terminate
+ as of the date such litigation is filed.
+
+ 4. Redistribution. You may reproduce and distribute copies of the
+ Work or Derivative Works thereof in any medium, with or without
+ modifications, and in Source or Object form, provided that You
+ meet the following conditions:
+
+ (a) You must give any other recipients of the Work or
+ Derivative Works a copy of this License; and
+
+ (b) You must cause any modified files to carry prominent notices
+ stating that You changed the files; and
+
+ (c) You must retain, in the Source form of any Derivative Works
+ that You distribute, all copyright, patent, trademark, and
+ attribution notices from the Source form of the Work,
+ excluding those notices that do not pertain to any part of
+ the Derivative Works; and
+
+ (d) If the Work includes a "NOTICE" text file as part of its
+ distribution, then any Derivative Works that You distribute must
+ include a readable copy of the attribution notices contained
+ within such NOTICE file, excluding those notices that do not
+ pertain to any part of the Derivative Works, in at least one
+ of the following places: within a NOTICE text file distributed
+ as part of the Derivative Works; within the Source form or
+ documentation, if provided along with the Derivative Works; or,
+ within a display generated by the Derivative Works, if and
+ wherever such third-party notices normally appear. The contents
+ of the NOTICE file are for informational purposes only and
+ do not modify the License. You may add Your own attribution
+ notices within Derivative Works that You distribute, alongside
+ or as an addendum to the NOTICE text from the Work, provided
+ that such additional attribution notices cannot be construed
+ as modifying the License.
+
+ You may add Your own copyright statement to Your modifications and
+ may provide additional or different license terms and conditions
+ for use, reproduction, or distribution of Your modifications, or
+ for any such Derivative Works as a whole, provided Your use,
+ reproduction, and distribution of the Work otherwise complies with
+ the conditions stated in this License.
+
+ 5. Submission of Contributions. Unless You explicitly state otherwise,
+ any Contribution intentionally submitted for inclusion in the Work
+ by You to the Licensor shall be under the terms and conditions of
+ this License, without any additional terms or conditions.
+ Notwithstanding the above, nothing herein shall supersede or modify
+ the terms of any separate license agreement you may have executed
+ with Licensor regarding such Contributions.
+
+ 6. Trademarks. This License does not grant permission to use the trade
+ names, trademarks, service marks, or product names of the Licensor,
+ except as required for reasonable and customary use in describing the
+ origin of the Work and reproducing the content of the NOTICE file.
+
+ 7. Disclaimer of Warranty. Unless required by applicable law or
+ agreed to in writing, Licensor provides the Work (and each
+ Contributor provides its Contributions) on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied, including, without limitation, any warranties or conditions
+ of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
+ PARTICULAR PURPOSE. You are solely responsible for determining the
+ appropriateness of using or redistributing the Work and assume any
+ risks associated with Your exercise of permissions under this License.
+
+ 8. Limitation of Liability. In no event and under no legal theory,
+ whether in tort (including negligence), contract, or otherwise,
+ unless required by applicable law (such as deliberate and grossly
+ negligent acts) or agreed to in writing, shall any Contributor be
+ liable to You for damages, including any direct, indirect, special,
+ incidental, or consequential damages of any character arising as a
+ result of this License or out of the use or inability to use the
+ Work (including but not limited to damages for loss of goodwill,
+ work stoppage, computer failure or malfunction, or any and all
+ other commercial damages or losses), even if such Contributor
+ has been advised of the possibility of such damages.
+
+ 9. Accepting Warranty or Additional Liability. While redistributing
+ the Work or Derivative Works thereof, You may choose to offer,
+ and charge a fee for, acceptance of support, warranty, indemnity,
+ or other liability obligations and/or rights consistent with this
+ License. However, in accepting such obligations, You may act only
+ on Your own behalf and on Your sole responsibility, not on behalf
+ of any other Contributor, and only if You agree to indemnify,
+ defend, and hold each Contributor harmless for any liability
+ incurred by, or claims asserted against, such Contributor by reason
+ of your accepting any such warranty or additional liability.
+
+ END OF TERMS AND CONDITIONS
+
+ APPENDIX: How to apply the Apache License to your work.
+
+ To apply the Apache License to your work, attach the following
+ boilerplate notice, with the fields enclosed by brackets "[]"
+ replaced with your own identifying information. (Don't include
+ the brackets!) The text should be enclosed in the appropriate
+ comment syntax for the file format. We also recommend that a
+ file or class name and description of purpose be included on the
+ same "printed page" as the copyright notice for easier
+ identification within third-party archives.
+
+ Copyright [yyyy] [name of copyright owner]
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/licenses/cc0-1.0.txt b/MLEB/UniversalLanguageSelector/data/fontrepo/licenses/cc0-1.0.txt
new file mode 100644
index 00000000..670154e3
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/licenses/cc0-1.0.txt
@@ -0,0 +1,116 @@
+CC0 1.0 Universal
+
+Statement of Purpose
+
+The laws of most jurisdictions throughout the world automatically confer
+exclusive Copyright and Related Rights (defined below) upon the creator and
+subsequent owner(s) (each and all, an "owner") of an original work of
+authorship and/or a database (each, a "Work").
+
+Certain owners wish to permanently relinquish those rights to a Work for the
+purpose of contributing to a commons of creative, cultural and scientific
+works ("Commons") that the public can reliably and without fear of later
+claims of infringement build upon, modify, incorporate in other works, reuse
+and redistribute as freely as possible in any form whatsoever and for any
+purposes, including without limitation commercial purposes. These owners may
+contribute to the Commons to promote the ideal of a free culture and the
+further production of creative, cultural and scientific works, or to gain
+reputation or greater distribution for their Work in part through the use and
+efforts of others.
+
+For these and/or other purposes and motivations, and without any expectation
+of additional consideration or compensation, the person associating CC0 with a
+Work (the "Affirmer"), to the extent that he or she is an owner of Copyright
+and Related Rights in the Work, voluntarily elects to apply CC0 to the Work
+and publicly distribute the Work under its terms, with knowledge of his or her
+Copyright and Related Rights in the Work and the meaning and intended legal
+effect of CC0 on those rights.
+
+1. Copyright and Related Rights. A Work made available under CC0 may be
+protected by copyright and related or neighboring rights ("Copyright and
+Related Rights"). Copyright and Related Rights include, but are not limited
+to, the following:
+
+ i. the right to reproduce, adapt, distribute, perform, display, communicate,
+ and translate a Work;
+
+ ii. moral rights retained by the original author(s) and/or performer(s);
+
+ iii. publicity and privacy rights pertaining to a person's image or likeness
+ depicted in a Work;
+
+ iv. rights protecting against unfair competition in regards to a Work,
+ subject to the limitations in paragraph 4(a), below;
+
+ v. rights protecting the extraction, dissemination, use and reuse of data in
+ a Work;
+
+ vi. database rights (such as those arising under Directive 96/9/EC of the
+ European Parliament and of the Council of 11 March 1996 on the legal
+ protection of databases, and under any national implementation thereof,
+ including any amended or successor version of such directive); and
+
+ vii. other similar, equivalent or corresponding rights throughout the world
+ based on applicable law or treaty, and any national implementations thereof.
+
+2. Waiver. To the greatest extent permitted by, but not in contravention of,
+applicable law, Affirmer hereby overtly, fully, permanently, irrevocably and
+unconditionally waives, abandons, and surrenders all of Affirmer's Copyright
+and Related Rights and associated claims and causes of action, whether now
+known or unknown (including existing as well as future claims and causes of
+action), in the Work (i) in all territories worldwide, (ii) for the maximum
+duration provided by applicable law or treaty (including future time
+extensions), (iii) in any current or future medium and for any number of
+copies, and (iv) for any purpose whatsoever, including without limitation
+commercial, advertising or promotional purposes (the "Waiver"). Affirmer makes
+the Waiver for the benefit of each member of the public at large and to the
+detriment of Affirmer's heirs and successors, fully intending that such Waiver
+shall not be subject to revocation, rescission, cancellation, termination, or
+any other legal or equitable action to disrupt the quiet enjoyment of the Work
+by the public as contemplated by Affirmer's express Statement of Purpose.
+
+3. Public License Fallback. Should any part of the Waiver for any reason be
+judged legally invalid or ineffective under applicable law, then the Waiver
+shall be preserved to the maximum extent permitted taking into account
+Affirmer's express Statement of Purpose. In addition, to the extent the Waiver
+is so judged Affirmer hereby grants to each affected person a royalty-free,
+non transferable, non sublicensable, non exclusive, irrevocable and
+unconditional license to exercise Affirmer's Copyright and Related Rights in
+the Work (i) in all territories worldwide, (ii) for the maximum duration
+provided by applicable law or treaty (including future time extensions), (iii)
+in any current or future medium and for any number of copies, and (iv) for any
+purpose whatsoever, including without limitation commercial, advertising or
+promotional purposes (the "License"). The License shall be deemed effective as
+of the date CC0 was applied by Affirmer to the Work. Should any part of the
+License for any reason be judged legally invalid or ineffective under
+applicable law, such partial invalidity or ineffectiveness shall not
+invalidate the remainder of the License, and in such case Affirmer hereby
+affirms that he or she will not (i) exercise any of his or her remaining
+Copyright and Related Rights in the Work or (ii) assert any associated claims
+and causes of action with respect to the Work, in either case contrary to
+Affirmer's express Statement of Purpose.
+
+4. Limitations and Disclaimers.
+
+ a. No trademark or patent rights held by Affirmer are waived, abandoned,
+ surrendered, licensed or otherwise affected by this document.
+
+ b. Affirmer offers the Work as-is and makes no representations or warranties
+ of any kind concerning the Work, express, implied, statutory or otherwise,
+ including without limitation warranties of title, merchantability, fitness
+ for a particular purpose, non infringement, or the absence of latent or
+ other defects, accuracy, or the present or absence of errors, whether or not
+ discoverable, all to the greatest extent permissible under applicable law.
+
+ c. Affirmer disclaims responsibility for clearing rights of other persons
+ that may apply to the Work or any use thereof, including without limitation
+ any person's Copyright and Related Rights in the Work. Further, Affirmer
+ disclaims responsibility for obtaining any necessary consents, permissions
+ or other rights required for any use of the Work.
+
+ d. Affirmer understands and acknowledges that Creative Commons is not a
+ party to this document and has no duty or obligation with respect to this
+ CC0 or use of the Work.
+
+For more information, please see
+<http://creativecommons.org/publicdomain/zero/1.0/>
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/licenses/gpl-2.0.txt b/MLEB/UniversalLanguageSelector/data/fontrepo/licenses/gpl-2.0.txt
new file mode 100644
index 00000000..d159169d
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/licenses/gpl-2.0.txt
@@ -0,0 +1,339 @@
+ GNU GENERAL PUBLIC LICENSE
+ Version 2, June 1991
+
+ Copyright (C) 1989, 1991 Free Software Foundation, Inc.,
+ 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
+ Everyone is permitted to copy and distribute verbatim copies
+ of this license document, but changing it is not allowed.
+
+ Preamble
+
+ The licenses for most software are designed to take away your
+freedom to share and change it. By contrast, the GNU General Public
+License is intended to guarantee your freedom to share and change free
+software--to make sure the software is free for all its users. This
+General Public License applies to most of the Free Software
+Foundation's software and to any other program whose authors commit to
+using it. (Some other Free Software Foundation software is covered by
+the GNU Lesser General Public License instead.) You can apply it to
+your programs, too.
+
+ When we speak of free software, we are referring to freedom, not
+price. Our General Public Licenses are designed to make sure that you
+have the freedom to distribute copies of free software (and charge for
+this service if you wish), that you receive source code or can get it
+if you want it, that you can change the software or use pieces of it
+in new free programs; and that you know you can do these things.
+
+ To protect your rights, we need to make restrictions that forbid
+anyone to deny you these rights or to ask you to surrender the rights.
+These restrictions translate to certain responsibilities for you if you
+distribute copies of the software, or if you modify it.
+
+ For example, if you distribute copies of such a program, whether
+gratis or for a fee, you must give the recipients all the rights that
+you have. You must make sure that they, too, receive or can get the
+source code. And you must show them these terms so they know their
+rights.
+
+ We protect your rights with two steps: (1) copyright the software, and
+(2) offer you this license which gives you legal permission to copy,
+distribute and/or modify the software.
+
+ Also, for each author's protection and ours, we want to make certain
+that everyone understands that there is no warranty for this free
+software. If the software is modified by someone else and passed on, we
+want its recipients to know that what they have is not the original, so
+that any problems introduced by others will not reflect on the original
+authors' reputations.
+
+ Finally, any free program is threatened constantly by software
+patents. We wish to avoid the danger that redistributors of a free
+program will individually obtain patent licenses, in effect making the
+program proprietary. To prevent this, we have made it clear that any
+patent must be licensed for everyone's free use or not licensed at all.
+
+ The precise terms and conditions for copying, distribution and
+modification follow.
+
+ GNU GENERAL PUBLIC LICENSE
+ TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
+
+ 0. This License applies to any program or other work which contains
+a notice placed by the copyright holder saying it may be distributed
+under the terms of this General Public License. The "Program", below,
+refers to any such program or work, and a "work based on the Program"
+means either the Program or any derivative work under copyright law:
+that is to say, a work containing the Program or a portion of it,
+either verbatim or with modifications and/or translated into another
+language. (Hereinafter, translation is included without limitation in
+the term "modification".) Each licensee is addressed as "you".
+
+Activities other than copying, distribution and modification are not
+covered by this License; they are outside its scope. The act of
+running the Program is not restricted, and the output from the Program
+is covered only if its contents constitute a work based on the
+Program (independent of having been made by running the Program).
+Whether that is true depends on what the Program does.
+
+ 1. You may copy and distribute verbatim copies of the Program's
+source code as you receive it, in any medium, provided that you
+conspicuously and appropriately publish on each copy an appropriate
+copyright notice and disclaimer of warranty; keep intact all the
+notices that refer to this License and to the absence of any warranty;
+and give any other recipients of the Program a copy of this License
+along with the Program.
+
+You may charge a fee for the physical act of transferring a copy, and
+you may at your option offer warranty protection in exchange for a fee.
+
+ 2. You may modify your copy or copies of the Program or any portion
+of it, thus forming a work based on the Program, and copy and
+distribute such modifications or work under the terms of Section 1
+above, provided that you also meet all of these conditions:
+
+ a) You must cause the modified files to carry prominent notices
+ stating that you changed the files and the date of any change.
+
+ b) You must cause any work that you distribute or publish, that in
+ whole or in part contains or is derived from the Program or any
+ part thereof, to be licensed as a whole at no charge to all third
+ parties under the terms of this License.
+
+ c) If the modified program normally reads commands interactively
+ when run, you must cause it, when started running for such
+ interactive use in the most ordinary way, to print or display an
+ announcement including an appropriate copyright notice and a
+ notice that there is no warranty (or else, saying that you provide
+ a warranty) and that users may redistribute the program under
+ these conditions, and telling the user how to view a copy of this
+ License. (Exception: if the Program itself is interactive but
+ does not normally print such an announcement, your work based on
+ the Program is not required to print an announcement.)
+
+These requirements apply to the modified work as a whole. If
+identifiable sections of that work are not derived from the Program,
+and can be reasonably considered independent and separate works in
+themselves, then this License, and its terms, do not apply to those
+sections when you distribute them as separate works. But when you
+distribute the same sections as part of a whole which is a work based
+on the Program, the distribution of the whole must be on the terms of
+this License, whose permissions for other licensees extend to the
+entire whole, and thus to each and every part regardless of who wrote it.
+
+Thus, it is not the intent of this section to claim rights or contest
+your rights to work written entirely by you; rather, the intent is to
+exercise the right to control the distribution of derivative or
+collective works based on the Program.
+
+In addition, mere aggregation of another work not based on the Program
+with the Program (or with a work based on the Program) on a volume of
+a storage or distribution medium does not bring the other work under
+the scope of this License.
+
+ 3. You may copy and distribute the Program (or a work based on it,
+under Section 2) in object code or executable form under the terms of
+Sections 1 and 2 above provided that you also do one of the following:
+
+ a) Accompany it with the complete corresponding machine-readable
+ source code, which must be distributed under the terms of Sections
+ 1 and 2 above on a medium customarily used for software interchange; or,
+
+ b) Accompany it with a written offer, valid for at least three
+ years, to give any third party, for a charge no more than your
+ cost of physically performing source distribution, a complete
+ machine-readable copy of the corresponding source code, to be
+ distributed under the terms of Sections 1 and 2 above on a medium
+ customarily used for software interchange; or,
+
+ c) Accompany it with the information you received as to the offer
+ to distribute corresponding source code. (This alternative is
+ allowed only for noncommercial distribution and only if you
+ received the program in object code or executable form with such
+ an offer, in accord with Subsection b above.)
+
+The source code for a work means the preferred form of the work for
+making modifications to it. For an executable work, complete source
+code means all the source code for all modules it contains, plus any
+associated interface definition files, plus the scripts used to
+control compilation and installation of the executable. However, as a
+special exception, the source code distributed need not include
+anything that is normally distributed (in either source or binary
+form) with the major components (compiler, kernel, and so on) of the
+operating system on which the executable runs, unless that component
+itself accompanies the executable.
+
+If distribution of executable or object code is made by offering
+access to copy from a designated place, then offering equivalent
+access to copy the source code from the same place counts as
+distribution of the source code, even though third parties are not
+compelled to copy the source along with the object code.
+
+ 4. You may not copy, modify, sublicense, or distribute the Program
+except as expressly provided under this License. Any attempt
+otherwise to copy, modify, sublicense or distribute the Program is
+void, and will automatically terminate your rights under this License.
+However, parties who have received copies, or rights, from you under
+this License will not have their licenses terminated so long as such
+parties remain in full compliance.
+
+ 5. You are not required to accept this License, since you have not
+signed it. However, nothing else grants you permission to modify or
+distribute the Program or its derivative works. These actions are
+prohibited by law if you do not accept this License. Therefore, by
+modifying or distributing the Program (or any work based on the
+Program), you indicate your acceptance of this License to do so, and
+all its terms and conditions for copying, distributing or modifying
+the Program or works based on it.
+
+ 6. Each time you redistribute the Program (or any work based on the
+Program), the recipient automatically receives a license from the
+original licensor to copy, distribute or modify the Program subject to
+these terms and conditions. You may not impose any further
+restrictions on the recipients' exercise of the rights granted herein.
+You are not responsible for enforcing compliance by third parties to
+this License.
+
+ 7. If, as a consequence of a court judgment or allegation of patent
+infringement or for any other reason (not limited to patent issues),
+conditions are imposed on you (whether by court order, agreement or
+otherwise) that contradict the conditions of this License, they do not
+excuse you from the conditions of this License. If you cannot
+distribute so as to satisfy simultaneously your obligations under this
+License and any other pertinent obligations, then as a consequence you
+may not distribute the Program at all. For example, if a patent
+license would not permit royalty-free redistribution of the Program by
+all those who receive copies directly or indirectly through you, then
+the only way you could satisfy both it and this License would be to
+refrain entirely from distribution of the Program.
+
+If any portion of this section is held invalid or unenforceable under
+any particular circumstance, the balance of the section is intended to
+apply and the section as a whole is intended to apply in other
+circumstances.
+
+It is not the purpose of this section to induce you to infringe any
+patents or other property right claims or to contest validity of any
+such claims; this section has the sole purpose of protecting the
+integrity of the free software distribution system, which is
+implemented by public license practices. Many people have made
+generous contributions to the wide range of software distributed
+through that system in reliance on consistent application of that
+system; it is up to the author/donor to decide if he or she is willing
+to distribute software through any other system and a licensee cannot
+impose that choice.
+
+This section is intended to make thoroughly clear what is believed to
+be a consequence of the rest of this License.
+
+ 8. If the distribution and/or use of the Program is restricted in
+certain countries either by patents or by copyrighted interfaces, the
+original copyright holder who places the Program under this License
+may add an explicit geographical distribution limitation excluding
+those countries, so that distribution is permitted only in or among
+countries not thus excluded. In such case, this License incorporates
+the limitation as if written in the body of this License.
+
+ 9. The Free Software Foundation may publish revised and/or new versions
+of the General Public License from time to time. Such new versions will
+be similar in spirit to the present version, but may differ in detail to
+address new problems or concerns.
+
+Each version is given a distinguishing version number. If the Program
+specifies a version number of this License which applies to it and "any
+later version", you have the option of following the terms and conditions
+either of that version or of any later version published by the Free
+Software Foundation. If the Program does not specify a version number of
+this License, you may choose any version ever published by the Free Software
+Foundation.
+
+ 10. If you wish to incorporate parts of the Program into other free
+programs whose distribution conditions are different, write to the author
+to ask for permission. For software which is copyrighted by the Free
+Software Foundation, write to the Free Software Foundation; we sometimes
+make exceptions for this. Our decision will be guided by the two goals
+of preserving the free status of all derivatives of our free software and
+of promoting the sharing and reuse of software generally.
+
+ NO WARRANTY
+
+ 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
+FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN
+OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
+PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
+OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS
+TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE
+PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
+REPAIR OR CORRECTION.
+
+ 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
+WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
+REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
+INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING
+OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED
+TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY
+YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
+PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
+POSSIBILITY OF SUCH DAMAGES.
+
+ END OF TERMS AND CONDITIONS
+
+ How to Apply These Terms to Your New Programs
+
+ If you develop a new program, and you want it to be of the greatest
+possible use to the public, the best way to achieve this is to make it
+free software which everyone can redistribute and change under these terms.
+
+ To do so, attach the following notices to the program. It is safest
+to attach them to the start of each source file to most effectively
+convey the exclusion of warranty; and each file should have at least
+the "copyright" line and a pointer to where the full notice is found.
+
+ <one line to give the program's name and a brief idea of what it does.>
+ Copyright (C) <year> <name of author>
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License along
+ with this program; if not, write to the Free Software Foundation, Inc.,
+ 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+
+Also add information on how to contact you by electronic and paper mail.
+
+If the program is interactive, make it output a short notice like this
+when it starts in an interactive mode:
+
+ Gnomovision version 69, Copyright (C) year name of author
+ Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
+ This is free software, and you are welcome to redistribute it
+ under certain conditions; type `show c' for details.
+
+The hypothetical commands `show w' and `show c' should show the appropriate
+parts of the General Public License. Of course, the commands you use may
+be called something other than `show w' and `show c'; they could even be
+mouse-clicks or menu items--whatever suits your program.
+
+You should also get your employer (if you work as a programmer) or your
+school, if any, to sign a "copyright disclaimer" for the program, if
+necessary. Here is a sample; alter the names:
+
+ Yoyodyne, Inc., hereby disclaims all copyright interest in the program
+ `Gnomovision' (which makes passes at compilers) written by James Hacker.
+
+ <signature of Ty Coon>, 1 April 1989
+ Ty Coon, President of Vice
+
+This General Public License does not permit incorporating your program into
+proprietary programs. If your program is a subroutine library, you may
+consider it more useful to permit linking proprietary applications with the
+library. If this is what you want to do, use the GNU Lesser General
+Public License instead of this License.
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/licenses/gpl-3.0.txt b/MLEB/UniversalLanguageSelector/data/fontrepo/licenses/gpl-3.0.txt
new file mode 100644
index 00000000..94a9ed02
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/licenses/gpl-3.0.txt
@@ -0,0 +1,674 @@
+ GNU GENERAL PUBLIC LICENSE
+ Version 3, 29 June 2007
+
+ Copyright (C) 2007 Free Software Foundation, Inc. <http://fsf.org/>
+ Everyone is permitted to copy and distribute verbatim copies
+ of this license document, but changing it is not allowed.
+
+ Preamble
+
+ The GNU General Public License is a free, copyleft license for
+software and other kinds of works.
+
+ The licenses for most software and other practical works are designed
+to take away your freedom to share and change the works. By contrast,
+the GNU General Public License is intended to guarantee your freedom to
+share and change all versions of a program--to make sure it remains free
+software for all its users. We, the Free Software Foundation, use the
+GNU General Public License for most of our software; it applies also to
+any other work released this way by its authors. You can apply it to
+your programs, too.
+
+ When we speak of free software, we are referring to freedom, not
+price. Our General Public Licenses are designed to make sure that you
+have the freedom to distribute copies of free software (and charge for
+them if you wish), that you receive source code or can get it if you
+want it, that you can change the software or use pieces of it in new
+free programs, and that you know you can do these things.
+
+ To protect your rights, we need to prevent others from denying you
+these rights or asking you to surrender the rights. Therefore, you have
+certain responsibilities if you distribute copies of the software, or if
+you modify it: responsibilities to respect the freedom of others.
+
+ For example, if you distribute copies of such a program, whether
+gratis or for a fee, you must pass on to the recipients the same
+freedoms that you received. You must make sure that they, too, receive
+or can get the source code. And you must show them these terms so they
+know their rights.
+
+ Developers that use the GNU GPL protect your rights with two steps:
+(1) assert copyright on the software, and (2) offer you this License
+giving you legal permission to copy, distribute and/or modify it.
+
+ For the developers' and authors' protection, the GPL clearly explains
+that there is no warranty for this free software. For both users' and
+authors' sake, the GPL requires that modified versions be marked as
+changed, so that their problems will not be attributed erroneously to
+authors of previous versions.
+
+ Some devices are designed to deny users access to install or run
+modified versions of the software inside them, although the manufacturer
+can do so. This is fundamentally incompatible with the aim of
+protecting users' freedom to change the software. The systematic
+pattern of such abuse occurs in the area of products for individuals to
+use, which is precisely where it is most unacceptable. Therefore, we
+have designed this version of the GPL to prohibit the practice for those
+products. If such problems arise substantially in other domains, we
+stand ready to extend this provision to those domains in future versions
+of the GPL, as needed to protect the freedom of users.
+
+ Finally, every program is threatened constantly by software patents.
+States should not allow patents to restrict development and use of
+software on general-purpose computers, but in those that do, we wish to
+avoid the special danger that patents applied to a free program could
+make it effectively proprietary. To prevent this, the GPL assures that
+patents cannot be used to render the program non-free.
+
+ The precise terms and conditions for copying, distribution and
+modification follow.
+
+ TERMS AND CONDITIONS
+
+ 0. Definitions.
+
+ "This License" refers to version 3 of the GNU General Public License.
+
+ "Copyright" also means copyright-like laws that apply to other kinds of
+works, such as semiconductor masks.
+
+ "The Program" refers to any copyrightable work licensed under this
+License. Each licensee is addressed as "you". "Licensees" and
+"recipients" may be individuals or organizations.
+
+ To "modify" a work means to copy from or adapt all or part of the work
+in a fashion requiring copyright permission, other than the making of an
+exact copy. The resulting work is called a "modified version" of the
+earlier work or a work "based on" the earlier work.
+
+ A "covered work" means either the unmodified Program or a work based
+on the Program.
+
+ To "propagate" a work means to do anything with it that, without
+permission, would make you directly or secondarily liable for
+infringement under applicable copyright law, except executing it on a
+computer or modifying a private copy. Propagation includes copying,
+distribution (with or without modification), making available to the
+public, and in some countries other activities as well.
+
+ To "convey" a work means any kind of propagation that enables other
+parties to make or receive copies. Mere interaction with a user through
+a computer network, with no transfer of a copy, is not conveying.
+
+ An interactive user interface displays "Appropriate Legal Notices"
+to the extent that it includes a convenient and prominently visible
+feature that (1) displays an appropriate copyright notice, and (2)
+tells the user that there is no warranty for the work (except to the
+extent that warranties are provided), that licensees may convey the
+work under this License, and how to view a copy of this License. If
+the interface presents a list of user commands or options, such as a
+menu, a prominent item in the list meets this criterion.
+
+ 1. Source Code.
+
+ The "source code" for a work means the preferred form of the work
+for making modifications to it. "Object code" means any non-source
+form of a work.
+
+ A "Standard Interface" means an interface that either is an official
+standard defined by a recognized standards body, or, in the case of
+interfaces specified for a particular programming language, one that
+is widely used among developers working in that language.
+
+ The "System Libraries" of an executable work include anything, other
+than the work as a whole, that (a) is included in the normal form of
+packaging a Major Component, but which is not part of that Major
+Component, and (b) serves only to enable use of the work with that
+Major Component, or to implement a Standard Interface for which an
+implementation is available to the public in source code form. A
+"Major Component", in this context, means a major essential component
+(kernel, window system, and so on) of the specific operating system
+(if any) on which the executable work runs, or a compiler used to
+produce the work, or an object code interpreter used to run it.
+
+ The "Corresponding Source" for a work in object code form means all
+the source code needed to generate, install, and (for an executable
+work) run the object code and to modify the work, including scripts to
+control those activities. However, it does not include the work's
+System Libraries, or general-purpose tools or generally available free
+programs which are used unmodified in performing those activities but
+which are not part of the work. For example, Corresponding Source
+includes interface definition files associated with source files for
+the work, and the source code for shared libraries and dynamically
+linked subprograms that the work is specifically designed to require,
+such as by intimate data communication or control flow between those
+subprograms and other parts of the work.
+
+ The Corresponding Source need not include anything that users
+can regenerate automatically from other parts of the Corresponding
+Source.
+
+ The Corresponding Source for a work in source code form is that
+same work.
+
+ 2. Basic Permissions.
+
+ All rights granted under this License are granted for the term of
+copyright on the Program, and are irrevocable provided the stated
+conditions are met. This License explicitly affirms your unlimited
+permission to run the unmodified Program. The output from running a
+covered work is covered by this License only if the output, given its
+content, constitutes a covered work. This License acknowledges your
+rights of fair use or other equivalent, as provided by copyright law.
+
+ You may make, run and propagate covered works that you do not
+convey, without conditions so long as your license otherwise remains
+in force. You may convey covered works to others for the sole purpose
+of having them make modifications exclusively for you, or provide you
+with facilities for running those works, provided that you comply with
+the terms of this License in conveying all material for which you do
+not control copyright. Those thus making or running the covered works
+for you must do so exclusively on your behalf, under your direction
+and control, on terms that prohibit them from making any copies of
+your copyrighted material outside their relationship with you.
+
+ Conveying under any other circumstances is permitted solely under
+the conditions stated below. Sublicensing is not allowed; section 10
+makes it unnecessary.
+
+ 3. Protecting Users' Legal Rights From Anti-Circumvention Law.
+
+ No covered work shall be deemed part of an effective technological
+measure under any applicable law fulfilling obligations under article
+11 of the WIPO copyright treaty adopted on 20 December 1996, or
+similar laws prohibiting or restricting circumvention of such
+measures.
+
+ When you convey a covered work, you waive any legal power to forbid
+circumvention of technological measures to the extent such circumvention
+is effected by exercising rights under this License with respect to
+the covered work, and you disclaim any intention to limit operation or
+modification of the work as a means of enforcing, against the work's
+users, your or third parties' legal rights to forbid circumvention of
+technological measures.
+
+ 4. Conveying Verbatim Copies.
+
+ You may convey verbatim copies of the Program's source code as you
+receive it, in any medium, provided that you conspicuously and
+appropriately publish on each copy an appropriate copyright notice;
+keep intact all notices stating that this License and any
+non-permissive terms added in accord with section 7 apply to the code;
+keep intact all notices of the absence of any warranty; and give all
+recipients a copy of this License along with the Program.
+
+ You may charge any price or no price for each copy that you convey,
+and you may offer support or warranty protection for a fee.
+
+ 5. Conveying Modified Source Versions.
+
+ You may convey a work based on the Program, or the modifications to
+produce it from the Program, in the form of source code under the
+terms of section 4, provided that you also meet all of these conditions:
+
+ a) The work must carry prominent notices stating that you modified
+ it, and giving a relevant date.
+
+ b) The work must carry prominent notices stating that it is
+ released under this License and any conditions added under section
+ 7. This requirement modifies the requirement in section 4 to
+ "keep intact all notices".
+
+ c) You must license the entire work, as a whole, under this
+ License to anyone who comes into possession of a copy. This
+ License will therefore apply, along with any applicable section 7
+ additional terms, to the whole of the work, and all its parts,
+ regardless of how they are packaged. This License gives no
+ permission to license the work in any other way, but it does not
+ invalidate such permission if you have separately received it.
+
+ d) If the work has interactive user interfaces, each must display
+ Appropriate Legal Notices; however, if the Program has interactive
+ interfaces that do not display Appropriate Legal Notices, your
+ work need not make them do so.
+
+ A compilation of a covered work with other separate and independent
+works, which are not by their nature extensions of the covered work,
+and which are not combined with it such as to form a larger program,
+in or on a volume of a storage or distribution medium, is called an
+"aggregate" if the compilation and its resulting copyright are not
+used to limit the access or legal rights of the compilation's users
+beyond what the individual works permit. Inclusion of a covered work
+in an aggregate does not cause this License to apply to the other
+parts of the aggregate.
+
+ 6. Conveying Non-Source Forms.
+
+ You may convey a covered work in object code form under the terms
+of sections 4 and 5, provided that you also convey the
+machine-readable Corresponding Source under the terms of this License,
+in one of these ways:
+
+ a) Convey the object code in, or embodied in, a physical product
+ (including a physical distribution medium), accompanied by the
+ Corresponding Source fixed on a durable physical medium
+ customarily used for software interchange.
+
+ b) Convey the object code in, or embodied in, a physical product
+ (including a physical distribution medium), accompanied by a
+ written offer, valid for at least three years and valid for as
+ long as you offer spare parts or customer support for that product
+ model, to give anyone who possesses the object code either (1) a
+ copy of the Corresponding Source for all the software in the
+ product that is covered by this License, on a durable physical
+ medium customarily used for software interchange, for a price no
+ more than your reasonable cost of physically performing this
+ conveying of source, or (2) access to copy the
+ Corresponding Source from a network server at no charge.
+
+ c) Convey individual copies of the object code with a copy of the
+ written offer to provide the Corresponding Source. This
+ alternative is allowed only occasionally and noncommercially, and
+ only if you received the object code with such an offer, in accord
+ with subsection 6b.
+
+ d) Convey the object code by offering access from a designated
+ place (gratis or for a charge), and offer equivalent access to the
+ Corresponding Source in the same way through the same place at no
+ further charge. You need not require recipients to copy the
+ Corresponding Source along with the object code. If the place to
+ copy the object code is a network server, the Corresponding Source
+ may be on a different server (operated by you or a third party)
+ that supports equivalent copying facilities, provided you maintain
+ clear directions next to the object code saying where to find the
+ Corresponding Source. Regardless of what server hosts the
+ Corresponding Source, you remain obligated to ensure that it is
+ available for as long as needed to satisfy these requirements.
+
+ e) Convey the object code using peer-to-peer transmission, provided
+ you inform other peers where the object code and Corresponding
+ Source of the work are being offered to the general public at no
+ charge under subsection 6d.
+
+ A separable portion of the object code, whose source code is excluded
+from the Corresponding Source as a System Library, need not be
+included in conveying the object code work.
+
+ A "User Product" is either (1) a "consumer product", which means any
+tangible personal property which is normally used for personal, family,
+or household purposes, or (2) anything designed or sold for incorporation
+into a dwelling. In determining whether a product is a consumer product,
+doubtful cases shall be resolved in favor of coverage. For a particular
+product received by a particular user, "normally used" refers to a
+typical or common use of that class of product, regardless of the status
+of the particular user or of the way in which the particular user
+actually uses, or expects or is expected to use, the product. A product
+is a consumer product regardless of whether the product has substantial
+commercial, industrial or non-consumer uses, unless such uses represent
+the only significant mode of use of the product.
+
+ "Installation Information" for a User Product means any methods,
+procedures, authorization keys, or other information required to install
+and execute modified versions of a covered work in that User Product from
+a modified version of its Corresponding Source. The information must
+suffice to ensure that the continued functioning of the modified object
+code is in no case prevented or interfered with solely because
+modification has been made.
+
+ If you convey an object code work under this section in, or with, or
+specifically for use in, a User Product, and the conveying occurs as
+part of a transaction in which the right of possession and use of the
+User Product is transferred to the recipient in perpetuity or for a
+fixed term (regardless of how the transaction is characterized), the
+Corresponding Source conveyed under this section must be accompanied
+by the Installation Information. But this requirement does not apply
+if neither you nor any third party retains the ability to install
+modified object code on the User Product (for example, the work has
+been installed in ROM).
+
+ The requirement to provide Installation Information does not include a
+requirement to continue to provide support service, warranty, or updates
+for a work that has been modified or installed by the recipient, or for
+the User Product in which it has been modified or installed. Access to a
+network may be denied when the modification itself materially and
+adversely affects the operation of the network or violates the rules and
+protocols for communication across the network.
+
+ Corresponding Source conveyed, and Installation Information provided,
+in accord with this section must be in a format that is publicly
+documented (and with an implementation available to the public in
+source code form), and must require no special password or key for
+unpacking, reading or copying.
+
+ 7. Additional Terms.
+
+ "Additional permissions" are terms that supplement the terms of this
+License by making exceptions from one or more of its conditions.
+Additional permissions that are applicable to the entire Program shall
+be treated as though they were included in this License, to the extent
+that they are valid under applicable law. If additional permissions
+apply only to part of the Program, that part may be used separately
+under those permissions, but the entire Program remains governed by
+this License without regard to the additional permissions.
+
+ When you convey a copy of a covered work, you may at your option
+remove any additional permissions from that copy, or from any part of
+it. (Additional permissions may be written to require their own
+removal in certain cases when you modify the work.) You may place
+additional permissions on material, added by you to a covered work,
+for which you have or can give appropriate copyright permission.
+
+ Notwithstanding any other provision of this License, for material you
+add to a covered work, you may (if authorized by the copyright holders of
+that material) supplement the terms of this License with terms:
+
+ a) Disclaiming warranty or limiting liability differently from the
+ terms of sections 15 and 16 of this License; or
+
+ b) Requiring preservation of specified reasonable legal notices or
+ author attributions in that material or in the Appropriate Legal
+ Notices displayed by works containing it; or
+
+ c) Prohibiting misrepresentation of the origin of that material, or
+ requiring that modified versions of such material be marked in
+ reasonable ways as different from the original version; or
+
+ d) Limiting the use for publicity purposes of names of licensors or
+ authors of the material; or
+
+ e) Declining to grant rights under trademark law for use of some
+ trade names, trademarks, or service marks; or
+
+ f) Requiring indemnification of licensors and authors of that
+ material by anyone who conveys the material (or modified versions of
+ it) with contractual assumptions of liability to the recipient, for
+ any liability that these contractual assumptions directly impose on
+ those licensors and authors.
+
+ All other non-permissive additional terms are considered "further
+restrictions" within the meaning of section 10. If the Program as you
+received it, or any part of it, contains a notice stating that it is
+governed by this License along with a term that is a further
+restriction, you may remove that term. If a license document contains
+a further restriction but permits relicensing or conveying under this
+License, you may add to a covered work material governed by the terms
+of that license document, provided that the further restriction does
+not survive such relicensing or conveying.
+
+ If you add terms to a covered work in accord with this section, you
+must place, in the relevant source files, a statement of the
+additional terms that apply to those files, or a notice indicating
+where to find the applicable terms.
+
+ Additional terms, permissive or non-permissive, may be stated in the
+form of a separately written license, or stated as exceptions;
+the above requirements apply either way.
+
+ 8. Termination.
+
+ You may not propagate or modify a covered work except as expressly
+provided under this License. Any attempt otherwise to propagate or
+modify it is void, and will automatically terminate your rights under
+this License (including any patent licenses granted under the third
+paragraph of section 11).
+
+ However, if you cease all violation of this License, then your
+license from a particular copyright holder is reinstated (a)
+provisionally, unless and until the copyright holder explicitly and
+finally terminates your license, and (b) permanently, if the copyright
+holder fails to notify you of the violation by some reasonable means
+prior to 60 days after the cessation.
+
+ Moreover, your license from a particular copyright holder is
+reinstated permanently if the copyright holder notifies you of the
+violation by some reasonable means, this is the first time you have
+received notice of violation of this License (for any work) from that
+copyright holder, and you cure the violation prior to 30 days after
+your receipt of the notice.
+
+ Termination of your rights under this section does not terminate the
+licenses of parties who have received copies or rights from you under
+this License. If your rights have been terminated and not permanently
+reinstated, you do not qualify to receive new licenses for the same
+material under section 10.
+
+ 9. Acceptance Not Required for Having Copies.
+
+ You are not required to accept this License in order to receive or
+run a copy of the Program. Ancillary propagation of a covered work
+occurring solely as a consequence of using peer-to-peer transmission
+to receive a copy likewise does not require acceptance. However,
+nothing other than this License grants you permission to propagate or
+modify any covered work. These actions infringe copyright if you do
+not accept this License. Therefore, by modifying or propagating a
+covered work, you indicate your acceptance of this License to do so.
+
+ 10. Automatic Licensing of Downstream Recipients.
+
+ Each time you convey a covered work, the recipient automatically
+receives a license from the original licensors, to run, modify and
+propagate that work, subject to this License. You are not responsible
+for enforcing compliance by third parties with this License.
+
+ An "entity transaction" is a transaction transferring control of an
+organization, or substantially all assets of one, or subdividing an
+organization, or merging organizations. If propagation of a covered
+work results from an entity transaction, each party to that
+transaction who receives a copy of the work also receives whatever
+licenses to the work the party's predecessor in interest had or could
+give under the previous paragraph, plus a right to possession of the
+Corresponding Source of the work from the predecessor in interest, if
+the predecessor has it or can get it with reasonable efforts.
+
+ You may not impose any further restrictions on the exercise of the
+rights granted or affirmed under this License. For example, you may
+not impose a license fee, royalty, or other charge for exercise of
+rights granted under this License, and you may not initiate litigation
+(including a cross-claim or counterclaim in a lawsuit) alleging that
+any patent claim is infringed by making, using, selling, offering for
+sale, or importing the Program or any portion of it.
+
+ 11. Patents.
+
+ A "contributor" is a copyright holder who authorizes use under this
+License of the Program or a work on which the Program is based. The
+work thus licensed is called the contributor's "contributor version".
+
+ A contributor's "essential patent claims" are all patent claims
+owned or controlled by the contributor, whether already acquired or
+hereafter acquired, that would be infringed by some manner, permitted
+by this License, of making, using, or selling its contributor version,
+but do not include claims that would be infringed only as a
+consequence of further modification of the contributor version. For
+purposes of this definition, "control" includes the right to grant
+patent sublicenses in a manner consistent with the requirements of
+this License.
+
+ Each contributor grants you a non-exclusive, worldwide, royalty-free
+patent license under the contributor's essential patent claims, to
+make, use, sell, offer for sale, import and otherwise run, modify and
+propagate the contents of its contributor version.
+
+ In the following three paragraphs, a "patent license" is any express
+agreement or commitment, however denominated, not to enforce a patent
+(such as an express permission to practice a patent or covenant not to
+sue for patent infringement). To "grant" such a patent license to a
+party means to make such an agreement or commitment not to enforce a
+patent against the party.
+
+ If you convey a covered work, knowingly relying on a patent license,
+and the Corresponding Source of the work is not available for anyone
+to copy, free of charge and under the terms of this License, through a
+publicly available network server or other readily accessible means,
+then you must either (1) cause the Corresponding Source to be so
+available, or (2) arrange to deprive yourself of the benefit of the
+patent license for this particular work, or (3) arrange, in a manner
+consistent with the requirements of this License, to extend the patent
+license to downstream recipients. "Knowingly relying" means you have
+actual knowledge that, but for the patent license, your conveying the
+covered work in a country, or your recipient's use of the covered work
+in a country, would infringe one or more identifiable patents in that
+country that you have reason to believe are valid.
+
+ If, pursuant to or in connection with a single transaction or
+arrangement, you convey, or propagate by procuring conveyance of, a
+covered work, and grant a patent license to some of the parties
+receiving the covered work authorizing them to use, propagate, modify
+or convey a specific copy of the covered work, then the patent license
+you grant is automatically extended to all recipients of the covered
+work and works based on it.
+
+ A patent license is "discriminatory" if it does not include within
+the scope of its coverage, prohibits the exercise of, or is
+conditioned on the non-exercise of one or more of the rights that are
+specifically granted under this License. You may not convey a covered
+work if you are a party to an arrangement with a third party that is
+in the business of distributing software, under which you make payment
+to the third party based on the extent of your activity of conveying
+the work, and under which the third party grants, to any of the
+parties who would receive the covered work from you, a discriminatory
+patent license (a) in connection with copies of the covered work
+conveyed by you (or copies made from those copies), or (b) primarily
+for and in connection with specific products or compilations that
+contain the covered work, unless you entered into that arrangement,
+or that patent license was granted, prior to 28 March 2007.
+
+ Nothing in this License shall be construed as excluding or limiting
+any implied license or other defenses to infringement that may
+otherwise be available to you under applicable patent law.
+
+ 12. No Surrender of Others' Freedom.
+
+ If conditions are imposed on you (whether by court order, agreement or
+otherwise) that contradict the conditions of this License, they do not
+excuse you from the conditions of this License. If you cannot convey a
+covered work so as to satisfy simultaneously your obligations under this
+License and any other pertinent obligations, then as a consequence you may
+not convey it at all. For example, if you agree to terms that obligate you
+to collect a royalty for further conveying from those to whom you convey
+the Program, the only way you could satisfy both those terms and this
+License would be to refrain entirely from conveying the Program.
+
+ 13. Use with the GNU Affero General Public License.
+
+ Notwithstanding any other provision of this License, you have
+permission to link or combine any covered work with a work licensed
+under version 3 of the GNU Affero General Public License into a single
+combined work, and to convey the resulting work. The terms of this
+License will continue to apply to the part which is the covered work,
+but the special requirements of the GNU Affero General Public License,
+section 13, concerning interaction through a network will apply to the
+combination as such.
+
+ 14. Revised Versions of this License.
+
+ The Free Software Foundation may publish revised and/or new versions of
+the GNU General Public License from time to time. Such new versions will
+be similar in spirit to the present version, but may differ in detail to
+address new problems or concerns.
+
+ Each version is given a distinguishing version number. If the
+Program specifies that a certain numbered version of the GNU General
+Public License "or any later version" applies to it, you have the
+option of following the terms and conditions either of that numbered
+version or of any later version published by the Free Software
+Foundation. If the Program does not specify a version number of the
+GNU General Public License, you may choose any version ever published
+by the Free Software Foundation.
+
+ If the Program specifies that a proxy can decide which future
+versions of the GNU General Public License can be used, that proxy's
+public statement of acceptance of a version permanently authorizes you
+to choose that version for the Program.
+
+ Later license versions may give you additional or different
+permissions. However, no additional obligations are imposed on any
+author or copyright holder as a result of your choosing to follow a
+later version.
+
+ 15. Disclaimer of Warranty.
+
+ THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY
+APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT
+HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY
+OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO,
+THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM
+IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF
+ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
+
+ 16. Limitation of Liability.
+
+ IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
+WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS
+THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY
+GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE
+USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF
+DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD
+PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS),
+EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF
+SUCH DAMAGES.
+
+ 17. Interpretation of Sections 15 and 16.
+
+ If the disclaimer of warranty and limitation of liability provided
+above cannot be given local legal effect according to their terms,
+reviewing courts shall apply local law that most closely approximates
+an absolute waiver of all civil liability in connection with the
+Program, unless a warranty or assumption of liability accompanies a
+copy of the Program in return for a fee.
+
+ END OF TERMS AND CONDITIONS
+
+ How to Apply These Terms to Your New Programs
+
+ If you develop a new program, and you want it to be of the greatest
+possible use to the public, the best way to achieve this is to make it
+free software which everyone can redistribute and change under these terms.
+
+ To do so, attach the following notices to the program. It is safest
+to attach them to the start of each source file to most effectively
+state the exclusion of warranty; and each file should have at least
+the "copyright" line and a pointer to where the full notice is found.
+
+ <one line to give the program's name and a brief idea of what it does.>
+ Copyright (C) <year> <name of author>
+
+ This program is free software: you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation, either version 3 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program. If not, see <http://www.gnu.org/licenses/>.
+
+Also add information on how to contact you by electronic and paper mail.
+
+ If the program does terminal interaction, make it output a short
+notice like this when it starts in an interactive mode:
+
+ <program> Copyright (C) <year> <name of author>
+ This program comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
+ This is free software, and you are welcome to redistribute it
+ under certain conditions; type `show c' for details.
+
+The hypothetical commands `show w' and `show c' should show the appropriate
+parts of the General Public License. Of course, your program's commands
+might be different; for a GUI interface, you would use an "about box".
+
+ You should also get your employer (if you work as a programmer) or school,
+if any, to sign a "copyright disclaimer" for the program, if necessary.
+For more information on this, and how to apply and follow the GNU GPL, see
+<http://www.gnu.org/licenses/>.
+
+ The GNU General Public License does not permit incorporating your program
+into proprietary programs. If your program is a subroutine library, you
+may consider it more useful to permit linking proprietary applications with
+the library. If this is what you want to do, use the GNU Lesser General
+Public License instead of this License. But first, please read
+<http://www.gnu.org/philosophy/why-not-lgpl.html>.
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/licenses/lgpl-2.1.txt b/MLEB/UniversalLanguageSelector/data/fontrepo/licenses/lgpl-2.1.txt
new file mode 100644
index 00000000..4362b491
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/licenses/lgpl-2.1.txt
@@ -0,0 +1,502 @@
+ GNU LESSER GENERAL PUBLIC LICENSE
+ Version 2.1, February 1999
+
+ Copyright (C) 1991, 1999 Free Software Foundation, Inc.
+ 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
+ Everyone is permitted to copy and distribute verbatim copies
+ of this license document, but changing it is not allowed.
+
+[This is the first released version of the Lesser GPL. It also counts
+ as the successor of the GNU Library Public License, version 2, hence
+ the version number 2.1.]
+
+ Preamble
+
+ The licenses for most software are designed to take away your
+freedom to share and change it. By contrast, the GNU General Public
+Licenses are intended to guarantee your freedom to share and change
+free software--to make sure the software is free for all its users.
+
+ This license, the Lesser General Public License, applies to some
+specially designated software packages--typically libraries--of the
+Free Software Foundation and other authors who decide to use it. You
+can use it too, but we suggest you first think carefully about whether
+this license or the ordinary General Public License is the better
+strategy to use in any particular case, based on the explanations below.
+
+ When we speak of free software, we are referring to freedom of use,
+not price. Our General Public Licenses are designed to make sure that
+you have the freedom to distribute copies of free software (and charge
+for this service if you wish); that you receive source code or can get
+it if you want it; that you can change the software and use pieces of
+it in new free programs; and that you are informed that you can do
+these things.
+
+ To protect your rights, we need to make restrictions that forbid
+distributors to deny you these rights or to ask you to surrender these
+rights. These restrictions translate to certain responsibilities for
+you if you distribute copies of the library or if you modify it.
+
+ For example, if you distribute copies of the library, whether gratis
+or for a fee, you must give the recipients all the rights that we gave
+you. You must make sure that they, too, receive or can get the source
+code. If you link other code with the library, you must provide
+complete object files to the recipients, so that they can relink them
+with the library after making changes to the library and recompiling
+it. And you must show them these terms so they know their rights.
+
+ We protect your rights with a two-step method: (1) we copyright the
+library, and (2) we offer you this license, which gives you legal
+permission to copy, distribute and/or modify the library.
+
+ To protect each distributor, we want to make it very clear that
+there is no warranty for the free library. Also, if the library is
+modified by someone else and passed on, the recipients should know
+that what they have is not the original version, so that the original
+author's reputation will not be affected by problems that might be
+introduced by others.
+
+ Finally, software patents pose a constant threat to the existence of
+any free program. We wish to make sure that a company cannot
+effectively restrict the users of a free program by obtaining a
+restrictive license from a patent holder. Therefore, we insist that
+any patent license obtained for a version of the library must be
+consistent with the full freedom of use specified in this license.
+
+ Most GNU software, including some libraries, is covered by the
+ordinary GNU General Public License. This license, the GNU Lesser
+General Public License, applies to certain designated libraries, and
+is quite different from the ordinary General Public License. We use
+this license for certain libraries in order to permit linking those
+libraries into non-free programs.
+
+ When a program is linked with a library, whether statically or using
+a shared library, the combination of the two is legally speaking a
+combined work, a derivative of the original library. The ordinary
+General Public License therefore permits such linking only if the
+entire combination fits its criteria of freedom. The Lesser General
+Public License permits more lax criteria for linking other code with
+the library.
+
+ We call this license the "Lesser" General Public License because it
+does Less to protect the user's freedom than the ordinary General
+Public License. It also provides other free software developers Less
+of an advantage over competing non-free programs. These disadvantages
+are the reason we use the ordinary General Public License for many
+libraries. However, the Lesser license provides advantages in certain
+special circumstances.
+
+ For example, on rare occasions, there may be a special need to
+encourage the widest possible use of a certain library, so that it becomes
+a de-facto standard. To achieve this, non-free programs must be
+allowed to use the library. A more frequent case is that a free
+library does the same job as widely used non-free libraries. In this
+case, there is little to gain by limiting the free library to free
+software only, so we use the Lesser General Public License.
+
+ In other cases, permission to use a particular library in non-free
+programs enables a greater number of people to use a large body of
+free software. For example, permission to use the GNU C Library in
+non-free programs enables many more people to use the whole GNU
+operating system, as well as its variant, the GNU/Linux operating
+system.
+
+ Although the Lesser General Public License is Less protective of the
+users' freedom, it does ensure that the user of a program that is
+linked with the Library has the freedom and the wherewithal to run
+that program using a modified version of the Library.
+
+ The precise terms and conditions for copying, distribution and
+modification follow. Pay close attention to the difference between a
+"work based on the library" and a "work that uses the library". The
+former contains code derived from the library, whereas the latter must
+be combined with the library in order to run.
+
+ GNU LESSER GENERAL PUBLIC LICENSE
+ TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
+
+ 0. This License Agreement applies to any software library or other
+program which contains a notice placed by the copyright holder or
+other authorized party saying it may be distributed under the terms of
+this Lesser General Public License (also called "this License").
+Each licensee is addressed as "you".
+
+ A "library" means a collection of software functions and/or data
+prepared so as to be conveniently linked with application programs
+(which use some of those functions and data) to form executables.
+
+ The "Library", below, refers to any such software library or work
+which has been distributed under these terms. A "work based on the
+Library" means either the Library or any derivative work under
+copyright law: that is to say, a work containing the Library or a
+portion of it, either verbatim or with modifications and/or translated
+straightforwardly into another language. (Hereinafter, translation is
+included without limitation in the term "modification".)
+
+ "Source code" for a work means the preferred form of the work for
+making modifications to it. For a library, complete source code means
+all the source code for all modules it contains, plus any associated
+interface definition files, plus the scripts used to control compilation
+and installation of the library.
+
+ Activities other than copying, distribution and modification are not
+covered by this License; they are outside its scope. The act of
+running a program using the Library is not restricted, and output from
+such a program is covered only if its contents constitute a work based
+on the Library (independent of the use of the Library in a tool for
+writing it). Whether that is true depends on what the Library does
+and what the program that uses the Library does.
+
+ 1. You may copy and distribute verbatim copies of the Library's
+complete source code as you receive it, in any medium, provided that
+you conspicuously and appropriately publish on each copy an
+appropriate copyright notice and disclaimer of warranty; keep intact
+all the notices that refer to this License and to the absence of any
+warranty; and distribute a copy of this License along with the
+Library.
+
+ You may charge a fee for the physical act of transferring a copy,
+and you may at your option offer warranty protection in exchange for a
+fee.
+
+ 2. You may modify your copy or copies of the Library or any portion
+of it, thus forming a work based on the Library, and copy and
+distribute such modifications or work under the terms of Section 1
+above, provided that you also meet all of these conditions:
+
+ a) The modified work must itself be a software library.
+
+ b) You must cause the files modified to carry prominent notices
+ stating that you changed the files and the date of any change.
+
+ c) You must cause the whole of the work to be licensed at no
+ charge to all third parties under the terms of this License.
+
+ d) If a facility in the modified Library refers to a function or a
+ table of data to be supplied by an application program that uses
+ the facility, other than as an argument passed when the facility
+ is invoked, then you must make a good faith effort to ensure that,
+ in the event an application does not supply such function or
+ table, the facility still operates, and performs whatever part of
+ its purpose remains meaningful.
+
+ (For example, a function in a library to compute square roots has
+ a purpose that is entirely well-defined independent of the
+ application. Therefore, Subsection 2d requires that any
+ application-supplied function or table used by this function must
+ be optional: if the application does not supply it, the square
+ root function must still compute square roots.)
+
+These requirements apply to the modified work as a whole. If
+identifiable sections of that work are not derived from the Library,
+and can be reasonably considered independent and separate works in
+themselves, then this License, and its terms, do not apply to those
+sections when you distribute them as separate works. But when you
+distribute the same sections as part of a whole which is a work based
+on the Library, the distribution of the whole must be on the terms of
+this License, whose permissions for other licensees extend to the
+entire whole, and thus to each and every part regardless of who wrote
+it.
+
+Thus, it is not the intent of this section to claim rights or contest
+your rights to work written entirely by you; rather, the intent is to
+exercise the right to control the distribution of derivative or
+collective works based on the Library.
+
+In addition, mere aggregation of another work not based on the Library
+with the Library (or with a work based on the Library) on a volume of
+a storage or distribution medium does not bring the other work under
+the scope of this License.
+
+ 3. You may opt to apply the terms of the ordinary GNU General Public
+License instead of this License to a given copy of the Library. To do
+this, you must alter all the notices that refer to this License, so
+that they refer to the ordinary GNU General Public License, version 2,
+instead of to this License. (If a newer version than version 2 of the
+ordinary GNU General Public License has appeared, then you can specify
+that version instead if you wish.) Do not make any other change in
+these notices.
+
+ Once this change is made in a given copy, it is irreversible for
+that copy, so the ordinary GNU General Public License applies to all
+subsequent copies and derivative works made from that copy.
+
+ This option is useful when you wish to copy part of the code of
+the Library into a program that is not a library.
+
+ 4. You may copy and distribute the Library (or a portion or
+derivative of it, under Section 2) in object code or executable form
+under the terms of Sections 1 and 2 above provided that you accompany
+it with the complete corresponding machine-readable source code, which
+must be distributed under the terms of Sections 1 and 2 above on a
+medium customarily used for software interchange.
+
+ If distribution of object code is made by offering access to copy
+from a designated place, then offering equivalent access to copy the
+source code from the same place satisfies the requirement to
+distribute the source code, even though third parties are not
+compelled to copy the source along with the object code.
+
+ 5. A program that contains no derivative of any portion of the
+Library, but is designed to work with the Library by being compiled or
+linked with it, is called a "work that uses the Library". Such a
+work, in isolation, is not a derivative work of the Library, and
+therefore falls outside the scope of this License.
+
+ However, linking a "work that uses the Library" with the Library
+creates an executable that is a derivative of the Library (because it
+contains portions of the Library), rather than a "work that uses the
+library". The executable is therefore covered by this License.
+Section 6 states terms for distribution of such executables.
+
+ When a "work that uses the Library" uses material from a header file
+that is part of the Library, the object code for the work may be a
+derivative work of the Library even though the source code is not.
+Whether this is true is especially significant if the work can be
+linked without the Library, or if the work is itself a library. The
+threshold for this to be true is not precisely defined by law.
+
+ If such an object file uses only numerical parameters, data
+structure layouts and accessors, and small macros and small inline
+functions (ten lines or less in length), then the use of the object
+file is unrestricted, regardless of whether it is legally a derivative
+work. (Executables containing this object code plus portions of the
+Library will still fall under Section 6.)
+
+ Otherwise, if the work is a derivative of the Library, you may
+distribute the object code for the work under the terms of Section 6.
+Any executables containing that work also fall under Section 6,
+whether or not they are linked directly with the Library itself.
+
+ 6. As an exception to the Sections above, you may also combine or
+link a "work that uses the Library" with the Library to produce a
+work containing portions of the Library, and distribute that work
+under terms of your choice, provided that the terms permit
+modification of the work for the customer's own use and reverse
+engineering for debugging such modifications.
+
+ You must give prominent notice with each copy of the work that the
+Library is used in it and that the Library and its use are covered by
+this License. You must supply a copy of this License. If the work
+during execution displays copyright notices, you must include the
+copyright notice for the Library among them, as well as a reference
+directing the user to the copy of this License. Also, you must do one
+of these things:
+
+ a) Accompany the work with the complete corresponding
+ machine-readable source code for the Library including whatever
+ changes were used in the work (which must be distributed under
+ Sections 1 and 2 above); and, if the work is an executable linked
+ with the Library, with the complete machine-readable "work that
+ uses the Library", as object code and/or source code, so that the
+ user can modify the Library and then relink to produce a modified
+ executable containing the modified Library. (It is understood
+ that the user who changes the contents of definitions files in the
+ Library will not necessarily be able to recompile the application
+ to use the modified definitions.)
+
+ b) Use a suitable shared library mechanism for linking with the
+ Library. A suitable mechanism is one that (1) uses at run time a
+ copy of the library already present on the user's computer system,
+ rather than copying library functions into the executable, and (2)
+ will operate properly with a modified version of the library, if
+ the user installs one, as long as the modified version is
+ interface-compatible with the version that the work was made with.
+
+ c) Accompany the work with a written offer, valid for at
+ least three years, to give the same user the materials
+ specified in Subsection 6a, above, for a charge no more
+ than the cost of performing this distribution.
+
+ d) If distribution of the work is made by offering access to copy
+ from a designated place, offer equivalent access to copy the above
+ specified materials from the same place.
+
+ e) Verify that the user has already received a copy of these
+ materials or that you have already sent this user a copy.
+
+ For an executable, the required form of the "work that uses the
+Library" must include any data and utility programs needed for
+reproducing the executable from it. However, as a special exception,
+the materials to be distributed need not include anything that is
+normally distributed (in either source or binary form) with the major
+components (compiler, kernel, and so on) of the operating system on
+which the executable runs, unless that component itself accompanies
+the executable.
+
+ It may happen that this requirement contradicts the license
+restrictions of other proprietary libraries that do not normally
+accompany the operating system. Such a contradiction means you cannot
+use both them and the Library together in an executable that you
+distribute.
+
+ 7. You may place library facilities that are a work based on the
+Library side-by-side in a single library together with other library
+facilities not covered by this License, and distribute such a combined
+library, provided that the separate distribution of the work based on
+the Library and of the other library facilities is otherwise
+permitted, and provided that you do these two things:
+
+ a) Accompany the combined library with a copy of the same work
+ based on the Library, uncombined with any other library
+ facilities. This must be distributed under the terms of the
+ Sections above.
+
+ b) Give prominent notice with the combined library of the fact
+ that part of it is a work based on the Library, and explaining
+ where to find the accompanying uncombined form of the same work.
+
+ 8. You may not copy, modify, sublicense, link with, or distribute
+the Library except as expressly provided under this License. Any
+attempt otherwise to copy, modify, sublicense, link with, or
+distribute the Library is void, and will automatically terminate your
+rights under this License. However, parties who have received copies,
+or rights, from you under this License will not have their licenses
+terminated so long as such parties remain in full compliance.
+
+ 9. You are not required to accept this License, since you have not
+signed it. However, nothing else grants you permission to modify or
+distribute the Library or its derivative works. These actions are
+prohibited by law if you do not accept this License. Therefore, by
+modifying or distributing the Library (or any work based on the
+Library), you indicate your acceptance of this License to do so, and
+all its terms and conditions for copying, distributing or modifying
+the Library or works based on it.
+
+ 10. Each time you redistribute the Library (or any work based on the
+Library), the recipient automatically receives a license from the
+original licensor to copy, distribute, link with or modify the Library
+subject to these terms and conditions. You may not impose any further
+restrictions on the recipients' exercise of the rights granted herein.
+You are not responsible for enforcing compliance by third parties with
+this License.
+
+ 11. If, as a consequence of a court judgment or allegation of patent
+infringement or for any other reason (not limited to patent issues),
+conditions are imposed on you (whether by court order, agreement or
+otherwise) that contradict the conditions of this License, they do not
+excuse you from the conditions of this License. If you cannot
+distribute so as to satisfy simultaneously your obligations under this
+License and any other pertinent obligations, then as a consequence you
+may not distribute the Library at all. For example, if a patent
+license would not permit royalty-free redistribution of the Library by
+all those who receive copies directly or indirectly through you, then
+the only way you could satisfy both it and this License would be to
+refrain entirely from distribution of the Library.
+
+If any portion of this section is held invalid or unenforceable under any
+particular circumstance, the balance of the section is intended to apply,
+and the section as a whole is intended to apply in other circumstances.
+
+It is not the purpose of this section to induce you to infringe any
+patents or other property right claims or to contest validity of any
+such claims; this section has the sole purpose of protecting the
+integrity of the free software distribution system which is
+implemented by public license practices. Many people have made
+generous contributions to the wide range of software distributed
+through that system in reliance on consistent application of that
+system; it is up to the author/donor to decide if he or she is willing
+to distribute software through any other system and a licensee cannot
+impose that choice.
+
+This section is intended to make thoroughly clear what is believed to
+be a consequence of the rest of this License.
+
+ 12. If the distribution and/or use of the Library is restricted in
+certain countries either by patents or by copyrighted interfaces, the
+original copyright holder who places the Library under this License may add
+an explicit geographical distribution limitation excluding those countries,
+so that distribution is permitted only in or among countries not thus
+excluded. In such case, this License incorporates the limitation as if
+written in the body of this License.
+
+ 13. The Free Software Foundation may publish revised and/or new
+versions of the Lesser General Public License from time to time.
+Such new versions will be similar in spirit to the present version,
+but may differ in detail to address new problems or concerns.
+
+Each version is given a distinguishing version number. If the Library
+specifies a version number of this License which applies to it and
+"any later version", you have the option of following the terms and
+conditions either of that version or of any later version published by
+the Free Software Foundation. If the Library does not specify a
+license version number, you may choose any version ever published by
+the Free Software Foundation.
+
+ 14. If you wish to incorporate parts of the Library into other free
+programs whose distribution conditions are incompatible with these,
+write to the author to ask for permission. For software which is
+copyrighted by the Free Software Foundation, write to the Free
+Software Foundation; we sometimes make exceptions for this. Our
+decision will be guided by the two goals of preserving the free status
+of all derivatives of our free software and of promoting the sharing
+and reuse of software generally.
+
+ NO WARRANTY
+
+ 15. BECAUSE THE LIBRARY IS LICENSED FREE OF CHARGE, THERE IS NO
+WARRANTY FOR THE LIBRARY, TO THE EXTENT PERMITTED BY APPLICABLE LAW.
+EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR
+OTHER PARTIES PROVIDE THE LIBRARY "AS IS" WITHOUT WARRANTY OF ANY
+KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE
+IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE
+LIBRARY IS WITH YOU. SHOULD THE LIBRARY PROVE DEFECTIVE, YOU ASSUME
+THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
+
+ 16. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN
+WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY
+AND/OR REDISTRIBUTE THE LIBRARY AS PERMITTED ABOVE, BE LIABLE TO YOU
+FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR
+CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE
+LIBRARY (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING
+RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A
+FAILURE OF THE LIBRARY TO OPERATE WITH ANY OTHER SOFTWARE), EVEN IF
+SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH
+DAMAGES.
+
+ END OF TERMS AND CONDITIONS
+
+ How to Apply These Terms to Your New Libraries
+
+ If you develop a new library, and you want it to be of the greatest
+possible use to the public, we recommend making it free software that
+everyone can redistribute and change. You can do so by permitting
+redistribution under these terms (or, alternatively, under the terms of the
+ordinary General Public License).
+
+ To apply these terms, attach the following notices to the library. It is
+safest to attach them to the start of each source file to most effectively
+convey the exclusion of warranty; and each file should have at least the
+"copyright" line and a pointer to where the full notice is found.
+
+ <one line to give the library's name and a brief idea of what it does.>
+ Copyright (C) <year> <name of author>
+
+ This library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ This library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with this library; if not, write to the Free Software
+ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
+
+Also add information on how to contact you by electronic and paper mail.
+
+You should also get your employer (if you work as a programmer) or your
+school, if any, to sign a "copyright disclaimer" for the library, if
+necessary. Here is a sample; alter the names:
+
+ Yoyodyne, Inc., hereby disclaims all copyright interest in the
+ library `Frob' (a library for tweaking knobs) written by James Random Hacker.
+
+ <signature of Ty Coon>, 1 April 1990
+ Ty Coon, President of Vice
+
+That's all there is to it!
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/licenses/melthofontsLicense.txt b/MLEB/UniversalLanguageSelector/data/fontrepo/licenses/melthofontsLicense.txt
new file mode 100644
index 00000000..35c74ddd
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/licenses/melthofontsLicense.txt
@@ -0,0 +1,61 @@
+This license is derived from the Bigelow & Holmes Font License
+found at http://www.xfree86.org/current/LICENSE2.html
+
+The following reasonable modifications have been made to the
+Bigelow & Holmes Font License:
+
+* All references to Luxi have been replaced with Meltho
+
+* All references to Bigelow & Holmes Inc. and URW++ GmbH haven
+ been replaced with Beth Mardutho: The Syriac Institute
+
+* The registered trademark notice belonging to Bigelow & Holmes
+ Inc. has been removed
+
+* Contact information has been modified to show that the
+ contact person for these fonts is the Director of the
+ Institute, George Kiraz.
+
+-------------------------------------------------------------
+
+Meltho fonts and font code copyright © 2002 by Beth Mardutho:
+The Syriac Institute. All Right Reserved.
+
+Permission is hereby granted, free of charge, to any person
+obtaining a copy of these Fonts and associated documentation
+files (the "Font Software"), to deal in the Font Software,
+including without limitation the rights to use, copy, merge,
+publish, distribute, sublicense, and/or sell copies of the
+Font Software, and to permit persons to whom the Font Software
+is furnished to do so, subject to the following conditions:
+
+The above copyright and trademark notices and this permission
+notice shall be included in all copies of one or more of the
+Font Software.
+
+The Font Software may not be modified, altered, or added to,
+and in particular the designs of glyphs or characters in the
+Fonts may not be modified nor may additional glyphs or
+characters be added to the Fonts. This License becomes null
+and void when the Fonts or Font Software have been modified.
+
+THE FONT SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY
+KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY
+WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE
+AND NONINFRINGEMENT OF COPYRIGHT, PATENT, TRADEMARK, OR OTHER
+RIGHT. IN NO EVENT SHALL BETH MARDUTHO: THE SYRIAC INSTITUTE BE
+LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, INCLUDING ANY
+GENERAL, SPECIAL, INDIRECT, INCIDENTAL, OR CONSEQUENTIAL DAMAGES,
+WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+FROM, OUT OF THE USE OR INABILITY TO USE THE FONT SOFTWARE OR
+FROM OTHER DEALINGS IN THE FONT SOFTWARE.
+
+Except as contained in this notice, the name of Beth Mardutho:
+The Syriac Institute shall not be used in advertising or otherwise
+to promote the sale, use or other dealings in this Font Software
+without prior written authorization from Beth Mardutho: The
+Syriac Institute.
+
+For further information, contact:
+George Kiraz, Director of Beth Mardutho
+gkiraz@bethmardutho.org
diff --git a/MLEB/UniversalLanguageSelector/data/fontrepo/scripts/compile.php b/MLEB/UniversalLanguageSelector/data/fontrepo/scripts/compile.php
new file mode 100644
index 00000000..1ab1726e
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/fontrepo/scripts/compile.php
@@ -0,0 +1,102 @@
+<?php
+
+if ( isset( $_SERVER['REQUEST_METHOD'] ) ) {
+ exit( "compile.php should be run from the command line\n" );
+}
+
+if ( !is_dir( '../fonts/' ) ) {
+ exit( "compile.php should be run from the data/fontrepo/scripts directory\n" );
+}
+
+$list = array();
+$list['base'] = '../data/fontrepo/fonts/';
+foreach ( glob( '../fonts/*/font.ini' ) as $inifile ) {
+ $conf = parse_ini_file( $inifile, true );
+ $languages = array();
+ $version = null;
+ foreach ( $conf as $fontname => $font ) {
+
+ if ( isset( $font['languages'] ) ) {
+ $languages = explode( ',', $font['languages'] );
+ foreach ( $languages as $rcode ) {
+ $rcode = trim( $rcode );
+ $code = str_replace( '*', '', $rcode );
+ if ( !isset( $list['languages'][$code] ) ) {
+ $list['languages'][$code] = array( 'system' );
+ }
+ if ( strpos( $rcode, '*' ) !== false ) {
+ unset( $list['languages'][$code][0] );
+ array_unshift( $list['languages'][$code], $fontname );
+ } else {
+ $list['languages'][$code][] = $fontname;
+ }
+ }
+ }
+ if ( isset( $font['version'] ) ) {
+ $version = $font['version'];
+ }
+ $list['fonts'][$fontname] = array(
+ 'version' => $version,
+ );
+
+ if ( isset( $font['fontweight'] ) ) {
+ $list['fonts'][$fontname]['fontweight'] = $font['fontweight'];
+ }
+ if ( isset( $font['fontstyle'] ) ) {
+ $list['fonts'][$fontname]['fontstyle'] = $font['fontstyle'];
+ }
+
+ $dir = dirname( $inifile );
+
+ if ( isset( $font['ttf'] ) ) {
+ $list['fonts'][$fontname]['ttf'] = basename( $dir ) . '/' . $font['ttf'];
+ }
+ if ( isset( $font['svg'] ) ) {
+ $list['fonts'][$fontname]['svg'] = basename( $dir ) . '/' . $font['svg'];
+ }
+ if ( isset( $font['eot'] ) ) {
+ $list['fonts'][$fontname]['eot'] = basename( $dir ) . '/' . $font['eot'];
+ }
+ if ( isset( $font['woff'] ) ) {
+ $list['fonts'][$fontname]['woff'] = basename( $dir ) . '/' . $font['woff'];
+ }
+ if ( isset( $font['woff2'] ) ) {
+ $list['fonts'][$fontname]['woff2'] = basename( $dir ) . '/' . $font['woff2'];
+ }
+
+ // If font formats are not explicitly defined, scan the directory.
+ if ( !isset( $list['fonts'][$fontname]['ttf'] ) ) {
+ foreach ( glob( "$dir/*.{eot,ttf,woff,woff2,svg}", GLOB_BRACE ) as $fontfile ) {
+ $type = substr( $fontfile, strrpos( $fontfile, '.' ) + 1 );
+ $list['fonts'][$fontname][$type] = str_replace( dirname( $dir ) . '/', '', $fontfile );
+ }
+ }
+
+ // Font variants
+ if ( isset( $font['bold'] ) ) {
+ $list['fonts'][$fontname]['variants']['bold'] = $font['bold'];
+ }
+ if ( isset( $font['bolditalic'] ) ) {
+ $list['fonts'][$fontname]['variants']['bolditalic'] = $font['bolditalic'];
+ }
+ if ( isset( $font['italic'] ) ) {
+ $list['fonts'][$fontname]['variants']['italic'] = $font['italic'];
+ }
+ }
+}
+
+ksort( $list['languages'] );
+ksort( $list['fonts'] );
+
+$json = json_encode( $list );
+$js = <<<JAVASCRIPT
+// Do not edit! This file is generated from data/fontrepo by data/fontrepo/scripts/compile.php
+( function ( $ ) {
+ $.webfonts = $.webfonts || {};
+ $.webfonts.repository = $json;
+}( jQuery ) );
+
+JAVASCRIPT;
+file_put_contents( '../../../resources/js/ext.uls.webfonts.repository.js', $js );
+
+echo "Done.\n";
diff --git a/MLEB/UniversalLanguageSelector/data/langnames.ser b/MLEB/UniversalLanguageSelector/data/langnames.ser
new file mode 100644
index 00000000..8eedcc85
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/data/langnames.ser
@@ -0,0 +1 @@
+a:773:{i:0;a:26:{i:1;s:2:"zu";s:12:"티베트어";s:2:"bo";s:47:"ஸ்விஸ் ஹை ஜெர்மன்";s:5:"de-ch";s:24:"ஸ்பானிஷ்";s:2:"es";s:9:"斐济文";s:2:"fj";s:9:"斐濟文";s:2:"fj";s:43:"ஸ்காட்ஸ் கேலிக்";s:2:"gd";s:40:"ஸ்விஸ் ஜெர்மன்";s:3:"gsw";s:15:"斐濟印地文";s:3:"hif";s:24:"ஸ்காட்ஸ்";s:3:"sco";s:24:"ஸ்லோவாக்";s:2:"sk";s:33:"ஸ்லோவேனியன்";s:2:"sl";s:24:"ஸாமோவான்";s:2:"sm";s:40:"ஸ்ரானன் டோங்கோ";s:3:"srn";s:18:"ஸ்வாடீ";s:2:"ss";s:24:"ஸ்வீடிஷ்";s:2:"sv";s:15:"티그리냐어";s:2:"ti";s:18:"ஸ்வானா";s:2:"tn";s:18:"ஸோங்கா";s:2:"ts";s:34:"ஸ்கோல்ட் சமி";s:3:"sms";s:83:"ஸ்டாண்டர்ட் மொராக்கன் தமாசைட்";s:3:"zgh";s:40:"ஸ்விஸ் பிரஞ்சு";s:5:"fr-ch";s:12:"티그레어";s:3:"tig";s:18:"ஸ்லாவ்";s:3:"den";s:9:"티비어";s:3:"tiv";s:9:"티얍어";s:3:"kcg";}i:113;a:59:{s:5:"qafar";s:2:"aa";s:9:"qafár af";s:2:"aa";s:18:"qədimi ingiliscə";s:3:"ang";s:14:"qırımtatarca";s:3:"crh";s:25:"qırımtatarca (latin)‎";s:8:"crh-latn";s:11:"qallunaatut";s:2:"da";s:12:"quyi sorbcha";s:3:"dsb";s:11:"qərbi friz";s:2:"fy";s:6:"qaqauz";s:3:"gag";s:8:"qalisian";s:2:"gl";s:7:"quarani";s:2:"gn";s:15:"qədimi yunanca";s:3:"grc";s:7:"qucarat";s:2:"gu";s:13:"qaraqalpaqsha";s:3:"kaa";s:16:"qara-qalpaq dili";s:3:"kaa";s:8:"qobilcha";s:3:"kab";s:7:"quicuio";s:2:"ki";s:5:"qazax";s:2:"kk";s:8:"qozoqcha";s:2:"kk";s:20:"qazaqşa (latın)‎";s:7:"kk-latn";s:23:"qazaqşa (türkïya)‎";s:5:"kk-tr";s:20:"qaraçay-balkar dili";s:3:"krc";s:9:"qırğız";s:2:"ky";s:8:"quirguiz";s:2:"ky";s:11:"qirgʻizcha";s:2:"ky";s:5:"qanda";s:2:"lg";s:7:"quechua";s:2:"qu";s:8:"quítxua";s:2:"qu";s:9:"quechuera";s:2:"qu";s:8:"quíchua";s:2:"qu";s:11:"qvechuancha";s:2:"qu";s:26:"quichua du haut-chimborazo";s:3:"qug";s:39:"quechua dell’altopiano del chimborazo";s:3:"qug";s:15:"qulla sami simi";s:3:"sma";s:18:"ထိုင်း";s:2:"th";s:18:"qədimi misir dili";s:3:"egy";s:7:"qa dili";s:3:"gaa";s:4:"qusi";s:3:"guz";s:13:"qoyra-chincha";s:3:"khq";s:7:"quitxé";s:3:"quc";s:7:"quiché";s:3:"quc";s:15:"quiché-sprooch";s:3:"quc";s:6:"quiche";s:3:"quc";s:10:"qichiancha";s:3:"quc";s:8:"qez dili";s:3:"gez";s:18:"qədimi fransızca";s:3:"fro";s:9:"qayo dili";s:3:"gay";s:11:"qabaya dili";s:3:"gba";s:12:"qilbert gili";s:3:"gil";s:15:"qədimi almanca";s:3:"goh";s:10:"qondi dili";s:3:"gon";s:14:"qorontalo dili";s:3:"gor";s:10:"qrebo dili";s:3:"grb";s:12:"qviçin dili";s:3:"gwi";s:9:"quimbundo";s:3:"kmb";s:14:"qədimi norsca";s:3:"non";s:14:"qədimi farsca";s:3:"peo";s:20:"qədimi provensialca";s:3:"pro";s:16:"qədimi irlandca";s:3:"sga";}i:768;a:24:{s:12:"አፋርኛ";s:2:"aa";s:15:"አብሐዚኛ";s:2:"ab";s:18:"አፍሪካንኛ";s:2:"af";s:21:"አፍሪቃንሰኛ";s:2:"af";s:12:"አካንኛ";s:2:"ak";s:12:"አማርኛ";s:2:"am";s:15:"አምሐረኛ";s:2:"am";s:15:"አሳሜዛዊ";s:2:"as";s:15:"አያማርኛ";s:2:"ay";s:21:"አዘርባጃንኛ";s:2:"az";s:24:"አዜርባይጃንኛ";s:2:"az";s:12:"አይሪሽ";s:2:"ga";s:15:"አርመናዊ";s:2:"hy";s:21:"አይስላንድኛ";s:2:"is";s:21:"አይስላንደኛ";s:2:"is";s:12:"니웨언어";s:3:"niu";s:31:"니안자어; 치츄어; 츄어";s:2:"ny";s:15:"አልቤኒኛ";s:2:"sq";s:12:"አኮሊኛ";s:3:"ach";s:9:"አገም";s:3:"agq";s:6:"አሱ";s:3:"asa";s:12:"니안콜어";s:3:"nyn";s:12:"니아스어";s:3:"nia";s:15:"니암웨지어";s:3:"nym";}i:575;a:603:{s:16:"الأفارية";s:2:"aa";s:10:"اَفار";s:2:"aa";s:18:"الأبخازية";s:2:"ab";s:20:"اَبخازِیان";s:2:"ab";s:16:"ابقازیان";s:2:"ab";s:22:"الأتشينيزية";s:3:"ace";s:18:"اَچَےنیٖز";s:3:"ace";s:22:"الأفريقانية";s:2:"af";s:22:"اَفریٖکانٛز";s:2:"af";s:16:"افريکاني";s:2:"af";s:18:"ایفریکانز";s:2:"af";s:16:"الأكانية";s:2:"ak";s:10:"اَکان";s:2:"ak";s:8:"اکان";s:2:"ak";s:16:"الأمهرية";s:2:"am";s:10:"امهری";s:2:"am";s:14:"اَمہاری";s:2:"am";s:12:"امهاري";s:2:"am";s:12:"امہاری";s:2:"am";s:20:"الأراجونية";s:2:"an";s:16:"اَراگونی";s:2:"an";s:35:"الإنجليزية القديمة";s:3:"ang";s:27:"انگلیسی باستان";s:3:"ang";s:16:"الأنجيكا";s:3:"anp";s:16:"اَنٛگِکا";s:3:"anp";s:14:"العربية";s:2:"ar";s:16:"الآرامية";s:3:"arc";s:14:"اَرَمیک";s:3:"arc";s:20:"الأروكانية";s:3:"arn";s:23:"ایرو کونِیَن";s:3:"arn";s:16:"الأسامية";s:2:"as";s:10:"اسٲمۍ";s:2:"as";s:19:"اسمائى ژبه";s:2:"as";s:16:"الأسترية";s:3:"ast";s:20:"ایسٹوٗریَن";s:3:"ast";s:20:"الأفاريكية";s:2:"av";s:14:"اَوارِک";s:2:"av";s:16:"الأيمارا";s:2:"ay";s:12:"ایمارا";s:2:"ay";s:24:"الأذربيجانية";s:2:"az";s:22:"اَزَربیجانی";s:2:"az";s:20:"الباشكيرية";s:2:"ba";s:22:"البيلوروسية";s:2:"be";s:18:"البلغارية";s:2:"bg";s:20:"البهوجبرية";s:3:"bho";s:20:"البيسلامية";s:2:"bi";s:18:"البامبارا";s:2:"bm";s:18:"البنغالية";s:2:"bn";s:14:"التبتية";s:2:"bo";s:20:"البريتونية";s:2:"br";s:16:"البوسنية";s:2:"bs";s:20:"البجينيزية";s:3:"bug";s:20:"الكتالانية";s:2:"ca";s:18:"الشيشانية";s:2:"ce";s:18:"السيبيونو";s:3:"ceb";s:18:"التشامورو";s:2:"ch";s:14:"الشوكتو";s:3:"cho";s:16:"الشيروكي";s:3:"chr";s:14:"الشايان";s:3:"chy";s:33:"السريانية الكردية";s:3:"ckb";s:20:"الكورسيكية";s:2:"co";s:10:"الكرى";s:2:"cr";s:35:"التركية الكريمينية";s:3:"crh";s:16:"التشيكية";s:2:"cs";s:20:"الكاشبايان";s:3:"csb";s:27:"اسلاوی کلیسایی";s:2:"cu";s:14:"التشفاش";s:2:"cv";s:14:"الولزية";s:2:"cy";s:22:"الدانماركية";s:2:"da";s:18:"الألمانية";s:2:"de";s:12:"الماني";s:2:"de";s:37:"الألمانية النمساوية";s:5:"de-at";s:50:"الألمانية العليا السويسرية";s:5:"de-ch";s:27:"الصربية السفلى";s:3:"dsb";s:20:"المالديفية";s:2:"dv";s:18:"الزونخاية";s:2:"dz";s:12:"الإيوي";s:2:"ee";s:13:"اوه‌ای";s:2:"ee";s:8:"ایٖو";s:2:"ee";s:6:"ایو";s:2:"ee";s:18:"اليونانية";s:2:"el";s:25:"امیلیانو-روما";s:3:"eml";s:20:"الإنجليزية";s:2:"en";s:14:"انگلیسی";s:2:"en";s:18:"اَنٛگیٖزۍ";s:2:"en";s:14:"انګلیسي";s:2:"en";s:14:"انگریزی";s:2:"en";s:35:"الإنجليزية الكندية";s:5:"en-ca";s:27:"انگلیسی کانادا";s:5:"en-ca";s:41:"الإنجليزية البريطانية";s:5:"en-gb";s:31:"انگلیسی بریتانیا";s:5:"en-gb";s:20:"الإسبرانتو";s:2:"eo";s:16:"اسپرانتو";s:2:"eo";s:22:"ایٚسپَرینٹو";s:2:"eo";s:18:"ایسپرانٹو";s:2:"eo";s:18:"الإسبانية";s:2:"es";s:18:"اسپانیایی";s:2:"es";s:18:"الإستونية";s:2:"et";s:18:"استونیایی";s:2:"et";s:20:"ایٚسٹونیَن";s:2:"et";s:14:"اسٹونین";s:2:"et";s:28:"اکسترامادورایی";s:3:"ext";s:16:"الفارسية";s:2:"fa";s:10:"الفلة";s:2:"ff";s:18:"الفنلندية";s:2:"fi";s:14:"الفيجية";s:2:"fj";s:16:"الفارويز";s:2:"fo";s:16:"الفرنسية";s:2:"fr";s:37:"الفريزينية الشمالية";s:3:"frr";s:20:"الفريلايان";s:3:"fur";s:18:"الفريزيان";s:2:"fy";s:20:"الأيرلندية";s:2:"ga";s:14:"ایرلندی";s:2:"ga";s:12:"اَیرِش";s:2:"ga";s:18:"ائيرلېنډي";s:2:"ga";s:14:"الغاغوز";s:3:"gag";s:37:"الغيلية الأسكتلندية";s:2:"gd";s:18:"الجاليكية";s:2:"gl";s:18:"الجواراني";s:2:"gn";s:14:"القوطية";s:3:"got";s:33:"اليونانية القديمة";s:3:"grc";s:37:"الألمانية السويسرية";s:3:"gsw";s:22:"الغوجاراتية";s:2:"gu";s:14:"المنكية";s:2:"gv";s:12:"الهوسا";s:2:"ha";s:14:"العبرية";s:2:"he";s:14:"الهندية";s:2:"hi";s:22:"الهيليجينون";s:3:"hil";s:21:"الهيري موتو";s:2:"ho";s:18:"الكرواتية";s:2:"hr";s:27:"الصربية العليا";s:3:"hsb";s:21:"اپر سربیائی";s:3:"hsb";s:16:"الهايتية";s:2:"ht";s:18:"الهنغارية";s:2:"hu";s:18:"الأرمينية";s:2:"hy";s:10:"ارمنی";s:2:"hy";s:18:"اَرمینیَن";s:2:"hy";s:10:"ارمني";s:2:"hy";s:12:"ارمینی";s:2:"hy";s:16:"الهيريرو";s:2:"hz";s:27:"اللّغة الوسيطة";s:2:"ia";s:26:"اِنٹَرلِنٛگوا";s:2:"ia";s:18:"انټرلنګوا";s:2:"ia";s:22:"الإندونيسية";s:2:"id";s:20:"اندونزیایی";s:2:"id";s:20:"اِنڈونیشیا";s:2:"id";s:22:"انډونېشيايي";s:2:"id";s:22:"انڈونیثیائی";s:2:"id";s:20:"الإنترلينج";s:2:"ie";s:18:"اکسیدنتال";s:2:"ie";s:31:"اِنٹَر لِنٛنگویے";s:2:"ie";s:14:"الإيجبو";s:2:"ig";s:14:"ایگبویی";s:2:"ig";s:10:"اِگبو";s:2:"ig";s:23:"السيتشيون يي";s:2:"ii";s:18:"الإينبياك";s:2:"ik";s:14:"اینوپیک";s:2:"ik";s:18:"اِنُپِیاک";s:2:"ik";s:16:"الإيلوكو";s:3:"ilo";s:16:"ایلوکویی";s:3:"ilo";s:12:"اِلوکو";s:3:"ilo";s:18:"الإنجوشية";s:3:"inh";s:14:"اینگوشی";s:3:"inh";s:14:"اِنٛگُش";s:3:"inh";s:12:"الإيدو";s:2:"io";s:8:"ایدو";s:2:"io";s:8:"اِڈو";s:2:"io";s:22:"الأيسلاندية";s:2:"is";s:14:"ایسلندی";s:2:"is";s:18:"الإيطالية";s:2:"it";s:18:"ایتالیایی";s:2:"it";s:16:"اِٹیلیَن";s:2:"it";s:14:"ایټالوي";s:2:"it";s:12:"اطالوی";s:2:"it";s:20:"الإينكتيتت";s:2:"iu";s:20:"اینوکتیتوت";s:2:"iu";s:20:"اِنُکتِتوٗ";s:2:"iu";s:18:"انیوکتیتت";s:2:"iu";s:18:"اليابانية";s:2:"ja";s:16:"اللوجبان";s:3:"jbo";s:14:"الجاوية";s:2:"jv";s:16:"الجورجية";s:2:"ka";s:25:"الكارا-كالباك";s:3:"kaa";s:16:"القبيلية";s:3:"kab";s:24:"الكاباردايان";s:3:"kbd";s:14:"الكونغو";s:2:"kg";s:14:"الكيكيو";s:2:"ki";s:20:"الكيونياما";s:2:"kj";s:26:"الكازاخستانية";s:2:"kk";s:20:"الكالاليست";s:2:"kl";s:16:"الخميرية";s:2:"km";s:16:"الكانادا";s:2:"kn";s:14:"الكورية";s:2:"ko";s:18:"الكانيوري";s:2:"kr";s:33:"الكاراتشاي-بالكار";s:3:"krc";s:18:"الكشميرية";s:2:"ks";s:14:"الكردية";s:2:"ku";s:12:"الكومي";s:2:"kv";s:16:"الكورنية";s:2:"kw";s:18:"القرغيزية";s:2:"ky";s:18:"اللاتينية";s:2:"la";s:22:"الإسباعبرية";s:3:"lad";s:24:"اللوكسمبرجية";s:2:"lb";s:26:"الليزجهايانية";s:3:"lez";s:14:"الجاندا";s:2:"lg";s:24:"الليمبرجيشية";s:2:"li";s:18:"اللينجالا";s:2:"ln";s:14:"اللاوية";s:2:"lo";s:12:"اللوزي";s:3:"loz";s:18:"اللتوانية";s:2:"lt";s:12:"اللشاي";s:3:"lus";s:16:"اللاتفية";s:2:"lv";s:18:"المايثيلي";s:3:"mai";s:14:"الموكشا";s:3:"mdf";s:22:"المالاجاشية";s:2:"mg";s:20:"المارشالية";s:2:"mh";s:16:"الماورية";s:2:"mi";s:26:"المينانجكاباو";s:3:"min";s:18:"المقدونية";s:2:"mk";s:20:"الماليالام";s:2:"ml";s:18:"المنغولية";s:2:"mn";s:16:"الماراثي";s:2:"mr";s:16:"المالطية";s:2:"mt";s:12:"الكريك";s:3:"mus";s:20:"الميرانديز";s:3:"mwl";s:16:"البورمية";s:2:"my";s:14:"الأرزية";s:3:"myv";s:14:"ارزیایی";s:3:"myv";s:16:"ایٚرزِیا";s:3:"myv";s:12:"النورو";s:2:"na";s:29:"اللغة النابولية";s:3:"nap";s:39:"البوكمالية النرويجية";s:2:"nb";s:31:"الألمانية السفلى";s:3:"nds";s:18:"النيبالية";s:2:"ne";s:16:"النيواري";s:3:"new";s:16:"الندونجا";s:2:"ng";s:18:"اندونگایی";s:2:"ng";s:12:"النيوي";s:3:"niu";s:18:"الهولندية";s:2:"nl";s:35:"النينورسك النرويجي";s:2:"nn";s:18:"النرويجية";s:2:"no";s:29:"السوتو الشمالية";s:3:"nso";s:16:"النافاجو";s:2:"nv";s:16:"النيانجا";s:2:"ny";s:22:"الأوكيتانية";s:2:"oc";s:16:"اوکیتایی";s:2:"oc";s:18:"اوکسیٖٹَن";s:2:"oc";s:18:"اوکسيټاني";s:2:"oc";s:16:"الأورومو";s:2:"om";s:16:"اورومویی";s:2:"om";s:14:"اوٚرومو";s:2:"om";s:12:"اورومو";s:2:"om";s:16:"الأورييا";s:2:"or";s:17:"اوریه‌ای";s:2:"or";s:14:"اوٚرِیا";s:2:"or";s:10:"اوريا";s:2:"or";s:12:"اورِیا";s:2:"or";s:18:"الأوسيتيك";s:2:"os";s:18:"اوٚسیٚٹِک";s:2:"os";s:12:"اوسیٹک";s:2:"os";s:18:"البنجابية";s:2:"pa";s:24:"البانجاسينان";s:3:"pag";s:20:"البامبانجا";s:3:"pam";s:24:"البابيامينتو";s:3:"pap";s:14:"البالية";s:2:"pi";s:18:"البولندية";s:2:"pl";s:18:"البشتونية";s:2:"ps";s:20:"البرتغالية";s:2:"pt";s:41:"البرتغالية البرازيلية";s:5:"pt-br";s:18:"الكويتشوا";s:2:"qu";s:20:"الرومانشية";s:2:"rm";s:12:"الرندي";s:2:"rn";s:18:"الرومانية";s:2:"ro";s:14:"الروسية";s:2:"ru";s:22:"الأرومانيان";s:3:"rup";s:16:"اَرومانی";s:3:"rup";s:26:"الكينيارواندا";s:2:"rw";s:22:"السنسكريتية";s:2:"sa";s:14:"الساخية";s:3:"sah";s:18:"السانتالي";s:3:"sat";s:18:"السردينية";s:2:"sc";s:14:"الصقلية";s:3:"scn";s:22:"الأسكتلندية";s:3:"sco";s:18:"اسکاتلندی";s:3:"sco";s:14:"السندية";s:2:"sd";s:27:"السامي الشمالي";s:2:"se";s:14:"السانجو";s:2:"sg";s:18:"السنهالية";s:2:"si";s:23:"انگلیسی ساده";s:6:"simple";s:20:"السلوفاكية";s:2:"sk";s:14:"اسلواکی";s:2:"sk";s:20:"السلوفانية";s:2:"sl";s:22:"اسلووینیایی";s:2:"sl";s:20:"الساموائية";s:2:"sm";s:27:"السامي الجنوبي";s:3:"sma";s:12:"الشونا";s:2:"sn";s:18:"الصومالية";s:2:"so";s:18:"الألبانية";s:2:"sq";s:18:"البانِیَن";s:2:"sq";s:12:"الباني";s:2:"sq";s:12:"البانی";s:2:"sq";s:14:"الصربية";s:2:"sr";s:27:"السرانان تونجو";s:3:"srn";s:14:"السواتي";s:2:"ss";s:29:"السوتو الجنوبية";s:2:"st";s:20:"السوندانية";s:2:"su";s:16:"السويدية";s:2:"sv";s:18:"السواحلية";s:2:"sw";s:18:"التاميلية";s:2:"ta";s:14:"التيلجو";s:2:"te";s:12:"التيتم";s:3:"tet";s:18:"الطاجيكية";s:2:"tg";s:22:"التايلاندية";s:2:"th";s:20:"التيجرينيا";s:2:"ti";s:20:"التركمانية";s:2:"tk";s:22:"التاغالوغية";s:2:"tl";s:18:"التسوانية";s:2:"tn";s:16:"التونغية";s:2:"to";s:21:"التوك بيسين";s:3:"tpi";s:14:"التركية";s:2:"tr";s:14:"السونجا";s:2:"ts";s:16:"التتارية";s:2:"tt";s:18:"التامبوكا";s:3:"tum";s:10:"التوي";s:2:"tw";s:18:"التاهيتية";s:2:"ty";s:12:"التُرك";s:3:"tyv";s:40:"الأمازيغية وسط الأطلس";s:3:"tzm";s:14:"الأدمرت";s:3:"udm";s:16:"اودمورتی";s:3:"udm";s:14:"اُدمُرت";s:3:"udm";s:16:"الأغورية";s:2:"ug";s:14:"اویغوری";s:2:"ug";s:12:"اويگور";s:2:"ug";s:30:"اویغوری (خط عربی)";s:7:"ug-arab";s:32:"اویغوری (خط لاتین)";s:7:"ug-latn";s:20:"الأوكرانية";s:2:"uk";s:16:"اوکراینی";s:2:"uk";s:18:"اوکرانايي";s:2:"uk";s:8:"اردو";s:2:"ur";s:14:"الأردية";s:2:"ur";s:12:"اُردوٗ";s:2:"ur";s:20:"الأوزباكية";s:2:"uz";s:10:"ازبکی";s:2:"uz";s:12:"اُزبیک";s:2:"uz";s:10:"ازبکي";s:2:"uz";s:10:"ازبیک";s:2:"uz";s:14:"الفيندا";s:2:"ve";s:20:"الفيتنامية";s:2:"vi";s:14:"الفوتيك";s:3:"vot";s:16:"الولونية";s:2:"wa";s:14:"الواراي";s:3:"war";s:12:"الولوف";s:2:"wo";s:16:"الكالميك";s:3:"xal";s:12:"الخوسا";s:2:"xh";s:16:"اليديشية";s:2:"yi";s:18:"اليوروبية";s:2:"yo";s:24:"الكَنْتُونية";s:3:"yue";s:16:"الزهيونج";s:2:"za";s:14:"الصينية";s:2:"zh";s:29:"الصينية المبسطة";s:7:"zh-hans";s:33:"الصينية التقليدية";s:7:"zh-hant";s:12:"الزولو";s:2:"zu";s:16:"الأكولية";s:3:"ach";s:12:"اَکولی";s:3:"ach";s:10:"اکولی";s:3:"ach";s:10:"الأغم";s:3:"agq";s:6:"اغم";s:3:"agq";s:44:"العربية الرسمية الحديثة";s:6:"ar-001";s:14:"البيمبا";s:3:"bem";s:12:"البودو";s:3:"brx";s:14:"القبطية";s:3:"cop";s:16:"الزارمية";s:3:"dje";s:14:"الديولا";s:3:"dua";s:8:"امبو";s:3:"ebu";s:12:"الإفيك";s:3:"efi";s:10:"افیکی";s:3:"efi";s:12:"ایٚفِک";s:3:"efi";s:10:"ایفِک";s:3:"efi";s:29:"المصرية القديمة";s:3:"egy";s:18:"الفلبينية";s:3:"fil";s:8:"الجا";s:3:"gaa";s:14:"الغيزية";s:3:"guz";s:12:"الحثية";s:3:"hit";s:14:"الكامبا";s:3:"kam";s:20:"الكونكانية";s:3:"kok";s:25:"اللبا-كاتانجا";s:2:"lu";s:19:"اللبا-لؤلؤ";s:3:"lua";s:8:"اللو";s:3:"luo";s:14:"الماساي";s:3:"mas";s:22:"المورسيانية";s:3:"mfe";s:14:"الموهوك";s:3:"moh";s:31:"النديبيل الشمالي";s:2:"nd";s:35:"انده‌بله‌ای شمالی";s:2:"nd";s:14:"الفلمنك";s:5:"nl-be";s:13:"ایٚن کو";s:3:"nqo";s:10:"اینکو";s:3:"nqo";s:31:"النديبيل الجنوبي";s:2:"nr";s:35:"انده‌بله‌ای جنوبی";s:2:"nr";s:12:"النوير";s:3:"nus";s:18:"النيانكول";s:3:"nyn";s:18:"الفينيقية";s:3:"phn";s:20:"المولدوفية";s:5:"ro-md";s:19:"اللول سامي";s:3:"smj";s:25:"الإيناري سامي";s:3:"smn";s:21:"ایناری سامی";s:3:"smn";s:21:"اِناری سَمی";s:3:"smn";s:19:"اناری سامی";s:3:"smn";s:23:"السكولت سامي";s:3:"sms";s:21:"اسکولت سامی";s:3:"sms";s:21:"اسکولٹ سامی";s:3:"sms";s:14:"القمرية";s:3:"swb";s:33:"الكونغو السواحلية";s:3:"swc";s:18:"الكلينجون";s:3:"tlh";s:52:"اَنزٲنۍ یا نَہ لَگہٕہار زبان";s:3:"und";s:10:"الفاي";s:3:"vai";s:10:"اونجو";s:3:"vun";s:54:"التمازيغية المغربية القياسية";s:3:"zgh";s:42:"اسٹینڈرڈ مغربی امازیقی";s:3:"zgh";s:16:"البلينية";s:3:"byn";s:41:"الإنجليزية الأسترالية";s:5:"en-au";s:31:"انگلیسی استرالیا";s:5:"en-au";s:52:"الإنجليزية الولايات المتحدة";s:5:"en-us";s:27:"انگلیسی امریکا";s:5:"en-us";s:27:"امریکی انگریزی";s:5:"en-us";s:44:"اسپانیایی امریکای لاتین";s:6:"es-419";s:37:"الإسبانية الأوروبية";s:5:"es-es";s:29:"اسپانیایی اروپا";s:5:"es-es";s:31:"الفرنسية الكندية";s:5:"fr-ca";s:35:"الفرنسية السويسرية";s:5:"fr-ch";s:10:"الجيز";s:3:"gez";s:39:"البرتغالية الأوروبية";s:5:"pt-pt";s:16:"السيدامو";s:3:"sid";s:12:"التيجر";s:3:"tig";s:20:"الأدانجمية";s:3:"ada";s:20:"اَدَنٛگمیے";s:3:"ada";s:14:"الأديجه";s:3:"ady";s:18:"اَدَیٖگیے";s:3:"ady";s:16:"الأفستية";s:2:"ae";s:14:"اوستایی";s:2:"ae";s:16:"اَویستَن";s:2:"ae";s:22:"الأفريهيلية";s:3:"afh";s:18:"اَفرِہِلی";s:3:"afh";s:16:"الآينوية";s:3:"ain";s:10:"اینوٗ";s:3:"ain";s:16:"الأكادية";s:3:"akk";s:8:"اکدی";s:3:"akk";s:18:"اَکادِیَن";s:3:"akk";s:18:"الأليوتية";s:3:"ale";s:14:"اَلویتی";s:3:"ale";s:35:"الألطائية الجنوبية";s:3:"alt";s:18:"الأراباهو";s:3:"arp";s:16:"اَراپاہو";s:3:"arp";s:20:"الأراواكية";s:3:"arw";s:14:"اَراوَک";s:3:"arw";s:16:"الأوادية";s:3:"awa";s:12:"اَوَدی";s:3:"awa";s:16:"البلوشية";s:3:"bal";s:25:"اللغة البالية";s:3:"ban";s:12:"الباسا";s:3:"bas";s:12:"البيجا";s:3:"bej";s:18:"البيكولية";s:3:"bik";s:14:"البينية";s:3:"bin";s:20:"السيكسيكية";s:3:"bla";s:16:"البراجية";s:3:"bra";s:18:"البرياتية";s:3:"bua";s:12:"الكادو";s:3:"cad";s:18:"الكاريبية";s:3:"car";s:14:"الأتسام";s:3:"cch";s:10:"اتسَم";s:3:"cch";s:16:"التشيبشا";s:3:"chb";s:20:"التشاجاتاي";s:3:"chg";s:18:"التشكيزية";s:3:"chk";s:12:"الماري";s:3:"chm";s:27:"الشينوك جارجون";s:3:"chn";s:22:"الشيباوايان";s:3:"chp";s:16:"الداكوتا";s:3:"dak";s:16:"الدارجوا";s:3:"dar";s:16:"الديلوير";s:3:"del";s:16:"السلافية";s:3:"den";s:16:"الدوجريب";s:3:"dgr";s:12:"الدنكا";s:3:"din";s:14:"الدوجري";s:3:"doi";s:31:"الهولندية الوسطى";s:3:"dum";s:14:"الدايلا";s:3:"dyu";s:18:"القرعانية";s:3:"dzg";s:14:"الإكاجك";s:3:"eka";s:12:"اکاجوک";s:3:"eka";s:16:"ایٚکاجُک";s:3:"eka";s:14:"الإمايت";s:3:"elx";s:20:"ایٚلامایِٹ";s:3:"elx";s:33:"الإنجليزية الوسطى";s:3:"enm";s:25:"انگلیسی میانه";s:3:"enm";s:16:"الإيوندو";s:3:"ewo";s:12:"اواندو";s:3:"ewo";s:16:"ایٚوونڈو";s:3:"ewo";s:12:"الفانج";s:3:"fan";s:14:"الفانتي";s:3:"fat";s:10:"الفون";s:3:"fon";s:29:"الفرنسية الوسطى";s:3:"frm";s:31:"الفرنسية القديمة";s:3:"fro";s:35:"الفريزينية الشرقية";s:3:"frs";s:12:"الجايو";s:3:"gay";s:12:"الجبيا";s:3:"gba";s:44:"الألمانية العليا الوسطى";s:3:"gmh";s:46:"الألمانية العليا القديمة";s:3:"goh";s:12:"الجندي";s:3:"gon";s:22:"الجورونتالو";s:3:"gor";s:14:"الجريبو";s:3:"grb";s:12:"الهيدا";s:3:"hai";s:18:"الهمونجية";s:3:"hmn";s:10:"الهبا";s:3:"hup";s:14:"الإيبان";s:3:"iba";s:10:"اِبان";s:3:"iba";s:29:"الجيدو - الفارسي";s:3:"jpr";s:27:"الجيدو - العربي";s:3:"jrb";s:16:"الكاتشين";s:3:"kac";s:8:"الجو";s:3:"kaj";s:10:"الكوي";s:3:"kaw";s:12:"الكورو";s:3:"kfo";s:14:"الكازية";s:3:"kha";s:18:"الخوتانيز";s:3:"kho";s:18:"الكيمبندو";s:3:"kmb";s:18:"الكوسراين";s:3:"kos";s:12:"الكبيل";s:3:"kpe";s:16:"الكريلية";s:3:"krl";s:12:"الكميك";s:3:"kum";s:16:"الكتيناي";s:3:"kut";s:16:"اللاهندا";s:3:"lah";s:14:"اللامبا";s:3:"lam";s:16:"اللوسينو";s:3:"lui";s:14:"اللوندا";s:3:"lun";s:16:"المادريز";s:3:"mad";s:12:"الماجا";s:3:"mag";s:18:"الماكاسار";s:3:"mak";s:18:"الماندينغ";s:3:"man";s:16:"الماندار";s:3:"mdr";s:12:"الميند";s:3:"men";s:33:"الأيرلندية الوسطى";s:3:"mga";s:25:"ایرلندی میانه";s:3:"mga";s:26:"الميكماكيونية";s:3:"mic";s:14:"المانشو";s:3:"mnc";s:18:"المانيبري";s:3:"mni";s:12:"الموسي";s:3:"mos";s:18:"المارواري";s:3:"mwr";s:12:"النياس";s:3:"nia";s:14:"النوجاي";s:3:"nog";s:25:"النورس القديم";s:3:"non";s:35:"النوارية التقليدية";s:3:"nwc";s:20:"النيامويزي";s:3:"nym";s:14:"النيورو";s:3:"nyo";s:14:"النزيما";s:3:"nzi";s:18:"الأوجيبوا";s:2:"oj";s:18:"اوجیبوایی";s:2:"oj";s:14:"اوجِبوا";s:2:"oj";s:14:"الأوساج";s:3:"osa";s:12:"اوسیجی";s:3:"osa";s:12:"اوٚسیج";s:3:"osa";s:33:"التركية العثمانية";s:3:"ota";s:27:"اوٹومَن تُرکِش";s:3:"ota";s:16:"البهلوية";s:3:"pal";s:16:"البالوان";s:3:"pau";s:31:"الفارسية القديمة";s:3:"peo";s:24:"البوهنبيايان";s:3:"pon";s:37:"البروفانسية القديمة";s:3:"pro";s:24:"الراجاسثانية";s:3:"raj";s:16:"الراباني";s:3:"rap";s:26:"الراروتونجاني";s:3:"rar";s:18:"السانداوي";s:3:"sad";s:35:"الآرامية السومارية";s:3:"sam";s:14:"الساساك";s:3:"sas";s:14:"السيلكب";s:3:"sel";s:35:"الأيرلندية القديمة";s:3:"sga";s:27:"ایرلندی باستان";s:3:"sga";s:14:"الشانية";s:3:"shn";s:31:"العربية التشادية";s:3:"shu";s:16:"السونينك";s:3:"snk";s:16:"السوجدين";s:3:"sog";s:10:"السرر";s:3:"srr";s:16:"السوكوما";s:3:"suk";s:12:"السوسو";s:3:"sus";s:18:"السومارية";s:3:"sux";s:18:"السريانية";s:3:"syr";s:12:"التيمن";s:3:"tem";s:16:"التيرينو";s:3:"ter";s:10:"التيف";s:3:"tiv";s:18:"التوكيلاو";s:3:"tkl";s:22:"التلينغيتية";s:3:"tli";s:18:"التاماشيك";s:3:"tmh";s:20:"التسيمشيان";s:3:"tsi";s:16:"التوفالو";s:3:"tvl";s:20:"اليجاريتيك";s:3:"uga";s:16:"اوگاریتی";s:3:"uga";s:16:"اُگارتِک";s:3:"uga";s:16:"الأمبندو";s:3:"umb";s:18:"امبوندویی";s:3:"umb";s:16:"الوالامو";s:3:"wal";s:12:"الواشو";s:3:"was";s:10:"الياو";s:3:"yao";s:14:"اليابيز";s:3:"yap";s:18:"الزابوتيك";s:3:"zap";s:16:"الزيناجا";s:3:"zen";s:14:"الزونية";s:3:"zun";s:29:"اسپانیایی مکزیک";s:5:"es-mx";}i:97;a:1370:{s:4:"afar";s:2:"aa";s:6:"afarca";s:2:"aa";s:7:"afarski";s:2:"aa";s:10:"afarština";s:2:"aa";s:7:"affareg";s:2:"aa";s:11:"afaršćina";s:2:"aa";s:5:"afara";s:2:"aa";s:5:"afari";s:2:"aa";s:8:"afáiris";s:2:"aa";s:5:"afár";s:2:"aa";s:9:"afahresch";s:2:"aa";s:6:"afarų";s:2:"aa";s:6:"afāru";s:2:"aa";s:9:"afarčina";s:2:"aa";s:11:"afarščina";s:2:"aa";s:8:"abkasies";s:2:"ab";s:10:"abkhazianu";s:2:"ab";s:5:"abxaz";s:2:"ab";s:8:"abkhazeg";s:2:"ab";s:10:"abhazijski";s:2:"ab";s:6:"abkhaz";s:2:"ab";s:13:"abcházština";s:2:"ab";s:8:"abchaseg";s:2:"ab";s:9:"abkhasisk";s:2:"ab";s:10:"abchasisch";s:2:"ab";s:13:"abchazšćina";s:2:"ab";s:11:"abkhaziagbe";s:2:"ab";s:9:"abkhazian";s:2:"ab";s:7:"abĥaza";s:2:"ab";s:7:"abjasio";s:2:"ab";s:7:"abhaasi";s:2:"ab";s:9:"abkhazera";s:2:"ab";s:10:"abkhaziskt";s:2:"ab";s:7:"abkhaze";s:2:"ab";s:8:"abcazian";s:2:"ab";s:9:"abchazysk";s:2:"ab";s:9:"abcáisis";s:2:"ab";s:9:"abchasais";s:2:"ab";s:7:"abkhazo";s:2:"ab";s:7:"abhaski";s:2:"ab";s:14:"abchazišćina";s:2:"ab";s:6:"abház";s:2:"ab";s:10:"abkasíska";s:2:"ab";s:6:"abcaso";s:2:"ab";s:11:"abchahsesch";s:2:"ab";s:10:"abchasesch";s:2:"ab";s:8:"abchazų";s:2:"ab";s:7:"abhāzu";s:2:"ab";s:8:"abkhazia";s:2:"ab";s:9:"abkażjan";s:2:"ab";s:9:"abchaasch";s:2:"ab";s:10:"abchazisch";s:2:"ab";s:8:"abchaski";s:2:"ab";s:8:"abcázio";s:2:"ab";s:9:"abchasian";s:2:"ab";s:7:"abhază";s:2:"ab";s:10:"abkazijski";s:2:"ab";s:12:"abcházčina";s:2:"ab";s:11:"abhaščina";s:2:"ab";s:9:"abkazisht";s:2:"ab";s:10:"abchaziska";s:2:"ab";s:7:"abhazca";s:2:"ab";s:8:"abxazcha";s:2:"ab";s:5:"acèh";s:3:"ace";s:8:"achinés";s:3:"ace";s:9:"akin dili";s:3:"ace";s:7:"achineg";s:3:"ace";s:9:"ačineski";s:3:"ace";s:5:"atjeh";s:3:"ace";s:10:"acehština";s:3:"ace";s:7:"acehneg";s:3:"ace";s:10:"achinesisk";s:3:"ace";s:12:"aceh-sprache";s:3:"ace";s:8:"achinese";s:3:"ace";s:8:"acehnés";s:3:"ace";s:7:"atšehi";s:3:"ace";s:6:"atšeh";s:3:"ace";s:4:"aceh";s:3:"ace";s:7:"atjeesk";s:3:"ace";s:8:"achinéz";s:3:"ace";s:8:"akkíska";s:3:"ace";s:8:"accinese";s:3:"ace";s:13:"aschenehsesch";s:3:"ace";s:12:"aceh-sprooch";s:3:"ace";s:9:"ačinezų";s:3:"ace";s:6:"ačinu";s:3:"ace";s:8:"aċiniż";s:3:"ace";s:6:"atjehs";s:3:"ace";s:6:"achém";s:3:"ace";s:10:"acehgiella";s:3:"ace";s:9:"acehčina";s:3:"ace";s:12:"ačejščina";s:3:"ace";s:11:"acehnesiska";s:3:"ace";s:9:"afrikaans";s:2:"af";s:12:"afrikanerski";s:2:"af";s:14:"afrikánština";s:2:"af";s:11:"affricâneg";s:2:"af";s:8:"afrikans";s:2:"af";s:11:"afrikaangbe";s:2:"af";s:9:"afrikansa";s:2:"af";s:10:"afrikáans";s:2:"af";s:9:"afrikaani";s:2:"af";s:10:"afrikaansa";s:2:"af";s:8:"afríska";s:2:"af";s:10:"afrikaansk";s:2:"af";s:11:"afracáinis";s:2:"af";s:10:"afraganais";s:2:"af";s:9:"afirkanci";s:2:"af";s:15:"afrikaanšćina";s:2:"af";s:11:"afríkanska";s:2:"af";s:9:"afrikansi";s:2:"af";s:9:"afrikanų";s:2:"af";s:9:"afrikandu";s:2:"af";s:11:"afrikaansch";s:2:"af";s:9:"afrikoota";s:2:"af";s:11:"africânder";s:2:"af";s:10:"africâner";s:2:"af";s:14:"afrikaans simi";s:2:"af";s:16:"afrikánsagiella";s:2:"af";s:13:"afrikánčina";s:2:"af";s:14:"afrikanščina";s:2:"af";s:11:"afrikaanays";s:2:"af";s:11:"afrikanisht";s:2:"af";s:10:"afrikaanca";s:2:"af";s:10:"afrikancha";s:2:"af";s:4:"akan";s:2:"ak";s:2:"ak";s:2:"ak";s:6:"akanca";s:2:"ak";s:7:"akankan";s:2:"ak";s:10:"akanština";s:2:"ak";s:6:"acaneg";s:2:"ak";s:11:"akanšćina";s:2:"ak";s:5:"akana";s:2:"ak";s:5:"akani";s:2:"ak";s:7:"akanera";s:2:"ak";s:5:"akaan";s:2:"ak";s:8:"acáinis";s:2:"ak";s:5:"akán";s:2:"ak";s:7:"akanski";s:2:"ak";s:9:"akahnesch";s:2:"ak";s:6:"akanų";s:2:"ak";s:5:"akanu";s:2:"ak";s:6:"akâan";s:2:"ak";s:9:"akančina";s:2:"ak";s:11:"akanščina";s:2:"ak";s:8:"akanisht";s:2:"ak";s:7:"akancha";s:2:"ak";s:19:"albánština (gheg)";s:3:"aln";s:14:"albanese ghego";s:3:"aln";s:27:"albanų kalbos gegų tarmė";s:3:"aln";s:18:"albański gegijski";s:3:"aln";s:11:"alemannisch";s:3:"gsw";s:8:"amharies";s:2:"am";s:6:"amarik";s:2:"am";s:8:"amharicu";s:2:"am";s:5:"amhar";s:2:"am";s:10:"amarikikan";s:2:"am";s:7:"amhareg";s:2:"am";s:8:"amharski";s:2:"am";s:8:"amhàric";s:2:"am";s:11:"amharština";s:2:"am";s:8:"amharisk";s:2:"am";s:9:"amharisch";s:2:"am";s:12:"amharšćina";s:2:"am";s:10:"amhariagbe";s:2:"am";s:7:"amharic";s:2:"am";s:6:"amhara";s:2:"am";s:8:"amárico";s:2:"am";s:6:"amhari";s:2:"am";s:8:"amharera";s:2:"am";s:9:"amhariskt";s:2:"am";s:9:"amharique";s:2:"am";s:6:"amaric";s:2:"am";s:8:"amhaarsk";s:2:"am";s:8:"amáiris";s:2:"am";s:9:"amtharais";s:2:"am";s:7:"amharik";s:2:"am";s:8:"amharico";s:2:"am";s:10:"amariikị";s:2:"am";s:10:"amharíska";s:2:"am";s:7:"amarico";s:2:"am";s:10:"amhahresch";s:2:"am";s:9:"amharesch";s:2:"am";s:7:"amharų";s:2:"am";s:6:"amharu";s:2:"am";s:8:"amharika";s:2:"am";s:9:"amħariku";s:2:"am";s:9:"amhaarsch";s:2:"am";s:7:"amhaars";s:2:"am";s:14:"afaan sidaamaa";s:2:"am";s:12:"amarico simi";s:2:"am";s:9:"amharică";s:2:"am";s:8:"amarîki";s:2:"am";s:10:"amharčina";s:2:"am";s:12:"amharščina";s:2:"am";s:7:"axmaari";s:2:"am";s:7:"amarike";s:2:"am";s:9:"amhariska";s:2:"am";s:8:"amhariki";s:2:"am";s:7:"amharca";s:2:"am";s:8:"amxarcha";s:2:"am";s:9:"aragonés";s:2:"an";s:8:"aragonca";s:2:"an";s:8:"aragoneg";s:2:"an";s:14:"aragonežanski";s:2:"an";s:9:"aragonès";s:2:"an";s:12:"aragonština";s:2:"an";s:11:"aragonesisk";s:2:"an";s:12:"aragonesisch";s:2:"an";s:13:"aragonšćina";s:2:"an";s:9:"aragonese";s:2:"an";s:7:"aragoni";s:2:"an";s:8:"aragonia";s:2:"an";s:9:"aragonais";s:2:"an";s:9:"aragonês";s:2:"an";s:10:"aragoneesk";s:2:"an";s:10:"aragóinis";s:2:"an";s:9:"aragonski";s:2:"an";s:9:"aragonéz";s:2:"an";s:6:"aragon";s:2:"an";s:9:"aragonska";s:2:"an";s:14:"arrajonehsesch";s:2:"an";s:12:"aragonesesch";s:2:"an";s:10:"aragonesų";s:2:"an";s:11:"aragoniešu";s:2:"an";s:8:"aragonsk";s:2:"an";s:11:"aragoneesch";s:2:"an";s:9:"aragonees";s:2:"an";s:10:"aragoński";s:2:"an";s:10:"aragoneză";s:2:"an";s:14:"aragoniagiella";s:2:"an";s:12:"aragónčina";s:2:"an";s:13:"aragonščina";s:2:"an";s:12:"aragonesiska";s:2:"an";s:13:"anglès antic";s:3:"ang";s:11:"altenglisch";s:3:"ang";s:18:"anglosaksojšćina";s:3:"ang";s:14:"ancien anglais";s:3:"ang";s:12:"altänglisch";s:3:"ang";s:15:"anglosakšćina";s:3:"ang";s:13:"ahl Änglesch";s:3:"ang";s:10:"alenglesch";s:3:"ang";s:6:"angika";s:3:"anp";s:12:"angikə dili";s:3:"anp";s:7:"angíka";s:3:"anp";s:7:"angikų";s:3:"anp";s:13:"angikaščina";s:3:"anp";s:7:"arabies";s:2:"ar";s:6:"arabik";s:2:"ar";s:6:"arabeg";s:2:"ar";s:7:"arapski";s:2:"ar";s:10:"arabština";s:2:"ar";s:7:"arabisk";s:2:"ar";s:8:"arabisch";s:2:"ar";s:11:"arabšćina";s:2:"ar";s:9:"arabiagbe";s:2:"ar";s:6:"arabic";s:2:"ar";s:5:"araba";s:2:"ar";s:7:"araabia";s:2:"ar";s:8:"arabiera";s:2:"ar";s:9:"aarabeere";s:2:"ar";s:6:"arabia";s:2:"ar";s:8:"arabiskt";s:2:"ar";s:5:"arabe";s:2:"ar";s:4:"arap";s:2:"ar";s:7:"arabysk";s:2:"ar";s:7:"araibis";s:2:"ar";s:7:"arabais";s:2:"ar";s:4:"arab";s:2:"ar";s:10:"arabiikị";s:2:"ar";s:9:"arabíska";s:2:"ar";s:5:"arabo";s:2:"ar";s:12:"arabiamiusut";s:2:"ar";s:9:"arahbesch";s:2:"ar";s:6:"arabek";s:2:"ar";s:8:"arabesch";s:2:"ar";s:6:"arabų";s:2:"ar";s:6:"arābu";s:2:"ar";s:8:"araabsch";s:2:"ar";s:9:"arabiffaa";s:2:"ar";s:7:"arabski";s:2:"ar";s:10:"arabe simi";s:2:"ar";s:6:"arabă";s:2:"ar";s:12:"arábagiella";s:2:"ar";s:6:"arâbo";s:2:"ar";s:9:"arabčina";s:2:"ar";s:11:"arabščina";s:2:"ar";s:8:"arabisht";s:2:"ar";s:8:"arabiska";s:2:"ar";s:7:"arapça";s:2:"ar";s:7:"arabcha";s:2:"ar";s:7:"aramees";s:3:"arc";s:7:"araméu";s:3:"arc";s:11:"aramik dili";s:3:"arc";s:7:"arameeg";s:3:"arc";s:8:"armajski";s:3:"arc";s:6:"arameu";s:3:"arc";s:12:"aramejština";s:3:"arc";s:7:"aramaeg";s:3:"arc";s:9:"aramæisk";s:3:"arc";s:10:"aramäisch";s:3:"arc";s:7:"aramaic";s:3:"arc";s:6:"arameo";s:3:"arc";s:6:"aramea";s:3:"arc";s:8:"araméen";s:3:"arc";s:8:"arameesk";s:3:"arc";s:7:"aramais";s:3:"arc";s:12:"aramääisch";s:3:"arc";s:9:"aramejski";s:3:"arc";s:6:"arámi";s:3:"arc";s:4:"aram";s:3:"arc";s:10:"arameíska";s:3:"arc";s:8:"aramaico";s:3:"arc";s:10:"aramäesch";s:3:"arc";s:9:"aramaikų";s:3:"arc";s:9:"aramiešu";s:3:"arc";s:7:"aramajk";s:3:"arc";s:8:"arameisk";s:3:"arc";s:11:"aramääsch";s:3:"arc";s:7:"arameic";s:3:"arc";s:9:"aramaică";s:3:"arc";s:11:"aramejčina";s:3:"arc";s:13:"aramejščina";s:3:"arc";s:9:"arameiska";s:3:"arc";s:7:"aramice";s:3:"arc";s:9:"araukanca";s:3:"arn";s:10:"araoukaneg";s:3:"arn";s:10:"araukanski";s:3:"arn";s:7:"araucà";s:3:"arn";s:14:"araukánština";s:3:"arn";s:9:"arawcaneg";s:3:"arn";s:9:"araukansk";s:3:"arn";s:11:"araukanisch";s:3:"arn";s:13:"arawkašćina";s:3:"arn";s:8:"araucano";s:3:"arn";s:9:"araukaani";s:3:"arn";s:7:"araukan";s:3:"arn";s:10:"araukaansk";s:3:"arn";s:14:"arawkanšćina";s:3:"arn";s:8:"araucani";s:3:"arn";s:12:"arákaníska";s:3:"arn";s:11:"araukanesch";s:3:"arn";s:10:"araukāņu";s:3:"arn";s:10:"arawkanjan";s:3:"arn";s:11:"araukaansch";s:3:"arn";s:11:"araukański";s:3:"arn";s:9:"araucanic";s:3:"arn";s:12:"araucaniană";s:3:"arn";s:11:"arokanijski";s:3:"arn";s:13:"araukánčina";s:3:"arn";s:14:"aravkanščina";s:3:"arn";s:10:"araukanska";s:3:"arn";s:14:"araukanya dili";s:3:"arn";s:14:"arabeg aljeria";s:3:"arq";s:24:"arabština (alžírská)";s:3:"arq";s:14:"arabeg algeria";s:3:"arq";s:20:"algerisches arabisch";s:3:"arq";s:22:"algerian spoken arabic";s:3:"arq";s:14:"algerianarabia";s:3:"arq";s:15:"arabe algérien";s:3:"arq";s:18:"arabais aildireach";s:3:"arq";s:12:"arab algeria";s:3:"arq";s:14:"arabo algerino";s:3:"arq";s:20:"aljehresch arahbesch";s:3:"arq";s:19:"algerescht arabesch";s:3:"arq";s:14:"alžyro arabų";s:3:"arq";s:18:"algerijns arabisch";s:3:"arq";s:17:"algierski arabski";s:3:"arq";s:17:"algerisk arabiska";s:3:"arq";s:13:"arabeg maroko";s:3:"ary";s:21:"arabština (marocká)";s:3:"ary";s:13:"arabeg moroco";s:3:"ary";s:14:"arabe marocain";s:3:"ary";s:17:"arabais mhorocach";s:3:"ary";s:11:"arab maroko";s:3:"ary";s:16:"arabo marocchino";s:3:"ary";s:13:"arab maghribi";s:3:"ary";s:12:"arabeg egipt";s:3:"arz";s:22:"arabština (egyptská)";s:3:"arz";s:15:"arabeg yr aifft";s:3:"arz";s:15:"arabe égyptien";s:3:"arz";s:20:"arabais Èipheiteach";s:3:"arz";s:10:"arab mesir";s:3:"arz";s:14:"arabo egiziano";s:3:"arz";s:8:"assamees";s:2:"as";s:7:"asamés";s:2:"as";s:5:"assam";s:2:"as";s:6:"asameg";s:2:"as";s:9:"asemijski";s:2:"as";s:8:"assamès";s:2:"as";s:10:"assamesisk";s:2:"as";s:11:"assamesisch";s:2:"as";s:11:"asamšćina";s:2:"as";s:9:"assamegbe";s:2:"as";s:8:"assamese";s:2:"as";s:5:"asama";s:2:"as";s:6:"assami";s:2:"as";s:8:"assamera";s:2:"as";s:11:"assamesiskt";s:2:"as";s:8:"assamais";s:2:"as";s:8:"assamês";s:2:"as";s:9:"assameesk";s:2:"as";s:7:"asaimis";s:2:"as";s:7:"asamais";s:2:"as";s:8:"assamés";s:2:"as";s:10:"asamisanci";s:2:"as";s:7:"asamski";s:2:"as";s:8:"asszámi";s:2:"as";s:8:"assamska";s:2:"as";s:12:"aßamehsesch";s:2:"as";s:11:"assamesesch";s:2:"as";s:6:"asamų";s:2:"as";s:9:"asamiešu";s:2:"as";s:8:"assamisk";s:2:"as";s:10:"assameesch";s:2:"as";s:11:"asames simi";s:2:"as";s:8:"asameză";s:2:"as";s:11:"asamščina";s:2:"as";s:8:"asaamiis";s:2:"as";s:10:"asamezisht";s:2:"as";s:11:"assamesiska";s:2:"as";s:7:"assamca";s:2:"as";s:8:"assamcha";s:2:"as";s:9:"asturianu";s:3:"ast";s:9:"asturicə";s:3:"ast";s:10:"asturijski";s:3:"ast";s:8:"asturià";s:3:"ast";s:11:"asturština";s:3:"ast";s:8:"asturisk";s:3:"ast";s:12:"asturianisch";s:3:"ast";s:12:"asturšćina";s:3:"ast";s:10:"asturiagbe";s:3:"ast";s:8:"asturian";s:3:"ast";s:9:"asturiano";s:3:"ast";s:8:"astuuria";s:3:"ast";s:7:"asturia";s:3:"ast";s:8:"asturien";s:3:"ast";s:8:"asturysk";s:3:"ast";s:9:"astúiris";s:3:"ast";s:9:"astùrais";s:3:"ast";s:14:"aschturianisch";s:3:"ast";s:7:"asztúr";s:3:"ast";s:5:"astur";s:3:"ast";s:11:"astúríska";s:3:"ast";s:15:"astuhrejahnesch";s:3:"ast";s:12:"asturianesch";s:3:"ast";s:10:"asturianų";s:3:"ast";s:11:"astūriešu";s:3:"ast";s:12:"asturiaansch";s:3:"ast";s:9:"asturisch";s:3:"ast";s:10:"asturyjski";s:3:"ast";s:10:"asturiană";s:3:"ast";s:13:"asturiagiella";s:3:"ast";s:11:"astúrčina";s:3:"ast";s:14:"asturijščina";s:3:"ast";s:9:"asturiska";s:3:"ast";s:10:"asturyasca";s:3:"ast";s:8:"aváricu";s:2:"av";s:9:"avarikcə";s:2:"av";s:4:"avar";s:2:"av";s:7:"avarski";s:2:"av";s:10:"avarština";s:2:"av";s:6:"afareg";s:2:"av";s:7:"avarisk";s:2:"av";s:8:"awarisch";s:2:"av";s:11:"awaršćina";s:2:"av";s:9:"avariagbe";s:2:"av";s:6:"avaric";s:2:"av";s:6:"avaari";s:2:"av";s:7:"avarysk";s:2:"av";s:8:"aváiris";s:2:"av";s:7:"avarais";s:2:"av";s:9:"avaríska";s:2:"av";s:5:"avaro";s:2:"av";s:9:"avahresch";s:2:"av";s:8:"awaresch";s:2:"av";s:8:"avarikų";s:2:"av";s:6:"avāru";s:2:"av";s:6:"avarik";s:2:"av";s:8:"awaarsch";s:2:"av";s:8:"avarisch";s:2:"av";s:7:"awarski";s:2:"av";s:6:"avară";s:2:"av";s:9:"avarčina";s:2:"av";s:11:"avarščina";s:2:"av";s:8:"avariska";s:2:"av";s:9:"avar dili";s:2:"av";s:9:"aymar aru";s:2:"ay";s:6:"aymara";s:2:"ay";s:7:"aymarca";s:2:"ay";s:6:"ajmara";s:2:"ay";s:6:"aimara";s:2:"ay";s:11:"ajmarština";s:2:"ay";s:12:"aymaršćina";s:2:"ay";s:8:"aymargbe";s:2:"ay";s:7:"aymarà";s:2:"ay";s:9:"aidhmiris";s:2:"ay";s:7:"aimará";s:2:"ay";s:7:"aímara";s:2:"ay";s:10:"aimahresch";s:2:"ay";s:7:"aimarų";s:2:"ay";s:6:"aimaru";s:2:"ay";s:10:"aymarčina";s:2:"ay";s:12:"ajmarščina";s:2:"ay";s:13:"azərbaycanca";s:2:"az";s:12:"azerbeidjans";s:2:"az";s:11:"azerbaixanu";s:2:"az";s:11:"azərbaycan";s:2:"az";s:5:"azeri";s:2:"az";s:15:"azerbejdžanski";s:2:"az";s:14:"azerbaidjanès";s:2:"az";s:12:"aserbaijaneg";s:2:"az";s:14:"aserbajdsjansk";s:2:"az";s:17:"aserbaidschanisch";s:2:"az";s:19:"azerbajdžanšćina";s:2:"az";s:13:"azerbaijangbe";s:2:"az";s:11:"azerbaijani";s:2:"az";s:12:"azerbajĝana";s:2:"az";s:6:"azerí";s:2:"az";s:14:"aserbaidžaani";s:2:"az";s:13:"azerbaijanera";s:2:"az";s:14:"azerbaijaniskt";s:2:"az";s:6:"azéri";s:2:"az";s:15:"azerbeidzjaansk";s:2:"az";s:15:"asarbaiseáinis";s:2:"az";s:15:"asarbaideànais";s:2:"az";s:11:"acerbaixano";s:2:"az";s:12:"azerbaijanci";s:2:"az";s:15:"azerbajdžanski";s:2:"az";s:19:"azerbajdźanšćina";s:2:"az";s:14:"azerbajdzsáni";s:2:"az";s:13:"azerbaidzhani";s:2:"az";s:10:"azerbaijan";s:2:"az";s:7:"aserska";s:2:"az";s:12:"azerbaigiano";s:2:"az";s:19:"aserbajdsjaniskisut";s:2:"az";s:19:"asserbaidschahnesch";s:2:"az";s:17:"aserbaidschanesch";s:2:"az";s:19:"azerbaidžaniečių";s:2:"az";s:15:"azerbaidžāņu";s:2:"az";s:13:"ażerbajġani";s:2:"az";s:17:"aserbaidschaansch";s:2:"az";s:14:"azerbeidzjaans";s:2:"az";s:17:"afaan azerbaijani";s:2:"az";s:7:"azerski";s:2:"az";s:11:"azerbaijano";s:2:"az";s:16:"azerbaiyano simi";s:2:"az";s:15:"aserbeidschanic";s:2:"az";s:6:"azeră";s:2:"az";s:17:"azerbajdžančina";s:2:"az";s:19:"azerbajdžanščina";s:2:"az";s:5:"azere";s:2:"az";s:15:"azerbajdzjanska";s:2:"az";s:7:"azerice";s:2:"az";s:19:"azerbaixanu del sur";s:3:"azb";s:11:"azeri ar su";s:3:"azb";s:20:"aserbaijaneg deheuol";s:3:"azb";s:18:"azéri méridional";s:3:"azb";s:24:"asarbaideànais dheasach";s:3:"azb";s:19:"azerbaijani selatan";s:3:"azb";s:17:"azero meridionale";s:3:"azb";s:18:"azerbaijan selatan";s:3:"azb";s:15:"afaan belarusia";s:2:"be";s:15:"afaan bulgariya";s:2:"bg";s:9:"arayanice";s:3:"bho";s:18:"afaan baangladeshi";s:2:"bn";s:14:"afaan bosniyaa";s:2:"bs";s:13:"afaan katalaa";s:2:"ca";s:24:"ချေချင်း";s:2:"ce";s:24:"ချာရိုကီ";s:3:"chr";s:24:"ခိုစီကန်";s:2:"co";s:12:"ခရီး";s:2:"cr";s:12:"ချက်";s:2:"cs";s:11:"afaan czech";s:2:"cs";s:15:"afaan deenmaark";s:2:"da";s:7:"alemán";s:2:"de";s:5:"alman";s:2:"de";s:11:"alimaɲikan";s:2:"de";s:8:"alamaneg";s:2:"de";s:7:"alemany";s:2:"de";s:8:"almaeneg";s:2:"de";s:7:"alemana";s:2:"de";s:8:"allemand";s:2:"de";s:8:"almaynek";s:2:"de";s:9:"alemanina";s:2:"de";s:14:"afaan jarmanii";s:2:"de";s:7:"alemão";s:2:"de";s:11:"aleman simi";s:2:"de";s:7:"almanca";s:2:"de";s:19:"avstriya almancası";s:5:"de-at";s:16:"alamaneg aostria";s:5:"de-at";s:20:"austrijski njemački";s:5:"de-at";s:17:"alemany austríac";s:5:"de-at";s:16:"almaeneg awstria";s:5:"de-at";s:28:"austriatɔwo ƒe germaniagbe";s:5:"de-at";s:15:"austrian german";s:5:"de-at";s:15:"aŭstra germana";s:5:"de-at";s:18:"alemán austríaco";s:5:"de-at";s:19:"allemand autrichien";s:5:"de-at";s:18:"alemán de austria";s:5:"de-at";s:19:"awstriska němčina";s:5:"de-at";s:19:"austurrísk þýska";s:5:"de-at";s:20:"austrijos vokiečių";s:5:"de-at";s:15:"austrijas vācu";s:5:"de-at";s:16:"austerriksk tysk";s:5:"de-at";s:20:"austriacki niemiecki";s:5:"de-at";s:18:"alemão austríaco";s:5:"de-at";s:19:"austrijski nemački";s:5:"de-at";s:21:"avstrijska nemščina";s:5:"de-at";s:20:"avusturya almancası";s:5:"de-at";s:19:"avstriya olmonchasi";s:5:"de-at";s:20:"altualemán de suiza";s:5:"de-ch";s:18:"alamaneg uhel suis";s:5:"de-ch";s:17:"alt alemany suís";s:5:"de-ch";s:26:"almaeneg safonol y swistir";s:5:"de-ch";s:21:"alto alemán de suiza";s:5:"de-ch";s:22:"aleman garaia (suitza)";s:5:"de-ch";s:15:"allemand suisse";s:5:"de-ch";s:22:"alt todesc de svuizare";s:5:"de-ch";s:29:"ard-ghearmáinis eilvéiseach";s:5:"de-ch";s:19:"alto alemán suízo";s:5:"de-ch";s:21:"alto tedesco svizzero";s:5:"de-ch";s:20:"alto alemão suíço";s:5:"de-ch";s:13:"aşağı sorb";s:3:"dsb";s:9:"alamsorbi";s:3:"dsb";s:8:"alasorbi";s:3:"dsb";s:11:"alsó szorb";s:3:"dsb";s:16:"aşağı sorbça";s:3:"dsb";s:13:"afaan giriiki";s:2:"el";s:10:"angilɛkan";s:2:"en";s:7:"anglès";s:2:"en";s:11:"angličtina";s:2:"en";s:5:"angla";s:2:"en";s:7:"anglais";s:2:"en";s:5:"angol";s:2:"en";s:7:"anglese";s:2:"en";s:9:"ꑱꇩꉙ";s:2:"en";s:6:"anglų";s:2:"en";s:6:"angļu";s:2:"en";s:7:"anglisy";s:2:"en";s:9:"angielski";s:2:"en";s:7:"anglëe";s:2:"en";s:12:"angleščina";s:2:"en";s:8:"anglisht";s:2:"en";s:16:"anglès canadenc";s:5:"en-ca";s:16:"anglais canadien";s:5:"en-ca";s:23:"angličtina (kanadská)";s:5:"en-ca";s:18:"anglishte kanadeze";s:5:"en-ca";s:17:"anglès britànic";s:5:"en-gb";s:19:"anglais britannique";s:5:"en-gb";s:12:"anglese (ru)";s:5:"en-gb";s:22:"angličtina (britská)";s:5:"en-gb";s:17:"angleščina (vb)";s:5:"en-gb";s:19:"anglishte britanike";s:5:"en-gb";s:16:"afaan esperantoo";s:2:"eo";s:12:"afaan ispeen";s:2:"es";s:15:"afaan istooniya";s:2:"et";s:12:"afaan baskuu";s:2:"eu";s:12:"afaan persia";s:2:"fa";s:15:"afaan fiilaandi";s:2:"fi";s:13:"afaan faroese";s:2:"fo";s:17:"afaan faransaayii";s:2:"fr";s:7:"arpetan";s:3:"frp";s:8:"arpitanu";s:3:"frp";s:9:"arpitaneg";s:3:"frp";s:9:"arpitaani";s:3:"frp";s:7:"arpitan";s:3:"frp";s:8:"arpitano";s:3:"frp";s:9:"arpitaans";s:3:"frp";s:9:"arpitanca";s:3:"frp";s:17:"afaan firisiyaani";s:2:"fy";s:6:"airių";s:2:"ga";s:15:"afaan ayirishii";s:2:"ga";s:6:"ayrish";s:2:"ga";s:14:"afaan galishii";s:2:"gl";s:10:"avañe'ẽ";s:2:"gn";s:13:"afaan guarani";s:2:"gn";s:14:"antieke grieks";s:3:"grc";s:13:"altgriechisch";s:3:"grc";s:13:"ancient greek";s:3:"grc";s:8:"aldgryks";s:3:"grc";s:12:"algriichesch";s:3:"grc";s:13:"antik yunanca";s:3:"grc";s:16:"alemán de suiza";s:3:"gsw";s:13:"alamaneg suis";s:3:"gsw";s:13:"alemany suís";s:3:"gsw";s:18:"almaeneg y swistir";s:3:"gsw";s:13:"alemán suizo";s:3:"gsw";s:16:"alemana (suitza)";s:3:"gsw";s:11:"alémanique";s:3:"gsw";s:14:"alemán suízo";s:3:"gsw";s:15:"alemão suíço";s:3:"gsw";s:14:"alsaciano simi";s:3:"gsw";s:14:"afaan gujarati";s:2:"gu";s:8:"awusakan";s:2:"ha";s:7:"awụsa";s:2:"ha";s:12:"afaan hebrew";s:2:"he";s:12:"afaan hindii";s:2:"hi";s:30:"ခရိုအေရှန်";s:2:"hr";s:14:"afaan croatian";s:2:"hr";s:11:"altu sorbiu";s:3:"hsb";s:10:"alt sòrab";s:3:"hsb";s:12:"alto sorabio";s:3:"hsb";s:11:"alto sorabo";s:3:"hsb";s:20:"aukštutinių sorbų";s:3:"hsb";s:10:"augšsorbu";s:3:"hsb";s:13:"alto sórabio";s:3:"hsb";s:16:"alto sorbio simi";s:3:"hsb";s:8:"aut sorb";s:3:"hsb";s:14:"afaan hangaari";s:2:"hu";s:7:"armeens";s:2:"hy";s:7:"armeniu";s:2:"hy";s:10:"armenianeg";s:2:"hy";s:6:"armeni";s:2:"hy";s:12:"arménština";s:2:"hy";s:7:"armeneg";s:2:"hy";s:7:"armensk";s:2:"hy";s:9:"armenisch";s:2:"hy";s:13:"armeńšćina";s:2:"hy";s:10:"armeniagbe";s:2:"hy";s:8:"armenian";s:2:"hy";s:6:"armena";s:2:"hy";s:7:"armenio";s:2:"hy";s:8:"armeenia";s:2:"hy";s:9:"armeniera";s:2:"hy";s:7:"armenia";s:2:"hy";s:8:"armenskt";s:2:"hy";s:9:"arménien";s:2:"hy";s:5:"armen";s:2:"hy";s:8:"armeensk";s:2:"hy";s:10:"airméinis";s:2:"hy";s:9:"airmeinis";s:2:"hy";s:11:"armeniyanci";s:2:"hy";s:8:"armenski";s:2:"hy";s:12:"armenšćina";s:2:"hy";s:9:"armeniano";s:2:"hy";s:8:"armenska";s:2:"hy";s:6:"armeno";s:2:"hy";s:10:"armeenesch";s:2:"hy";s:9:"armenesch";s:2:"hy";s:8:"armėnų";s:2:"hy";s:8:"armēņu";s:2:"hy";s:8:"armenjan";s:2:"hy";s:9:"armeensch";s:2:"hy";s:8:"arménio";s:2:"hy";s:8:"armênio";s:2:"hy";s:12:"armenio simi";s:2:"hy";s:8:"armeană";s:2:"hy";s:13:"armeenagiella";s:2:"hy";s:11:"arménčina";s:2:"hy";s:12:"armenščina";s:2:"hy";s:11:"armeeniyaan";s:2:"hy";s:9:"armenisht";s:2:"hy";s:9:"armeniska";s:2:"hy";s:8:"armancha";s:2:"hy";s:15:"alþjóðatunga";s:2:"ia";s:16:"afaan indoneziya";s:2:"id";s:14:"ayiislandiffaa";s:2:"is";s:10:"ayslandays";s:2:"is";s:16:"afaan xaaliyaani";s:2:"it";s:13:"afaan japanii";s:2:"ja";s:10:"afaan java";s:2:"jv";s:14:"afaan georgian";s:2:"ka";s:24:"ခဘိုင်လ်";s:3:"kab";s:9:"콩고어";s:2:"kg";s:18:"ခီခူယူ";s:2:"ki";s:4:"ambo";s:2:"kj";s:18:"ခါဇါခ်";s:2:"kk";s:30:"ခလာအ်လီဆပ်";s:2:"kl";s:9:"ခမာ";s:2:"km";s:13:"afaan kannada";s:2:"kn";s:11:"afaan korea";s:2:"ko";s:24:"ခိုနီရှ်";s:2:"kw";s:18:"ခရူဂစ်";s:2:"ky";s:13:"afaan laatini";s:2:"la";s:16:"afaan liituniyaa";s:2:"lt";s:15:"afaan lativiyaa";s:2:"lv";s:18:"afaan macedooniyaa";s:2:"mk";s:13:"afaan maratii";s:2:"mr";s:14:"afaan maltesii";s:2:"mt";s:16:"aşağı almanca";s:3:"nds";s:13:"alamaneg izel";s:3:"nds";s:9:"alamsaksa";s:3:"nds";s:8:"alasaksa";s:3:"nds";s:11:"alsónémet";s:3:"nds";s:13:"afaan nepalii";s:2:"ne";s:12:"afaan dachii";s:2:"nl";s:15:"afaan norwegian";s:2:"nn";s:14:"afaan norweyii";s:2:"no";s:16:"af noorwiijiyaan";s:2:"no";s:11:"afaan occit";s:2:"oc";s:11:"afaan oromo";s:2:"om";s:14:"afaan punjabii";s:2:"pa";s:23:"alemán de pennsylvania";s:3:"pdc";s:21:"alamaneg pennsylvania";s:3:"pdc";s:20:"almaeneg pensylfania";s:3:"pdc";s:24:"allemand de pennsylvanie";s:3:"pdc";s:16:"alemán palatinu";s:3:"pfl";s:16:"almaeneg palatin";s:3:"pfl";s:16:"allemand palatin";s:3:"pfl";s:14:"afaan polandii";s:2:"pl";s:13:"altpreußisch";s:3:"prg";s:13:"altpreussisch";s:3:"prg";s:9:"afghanskt";s:2:"ps";s:9:"afghanska";s:2:"ps";s:16:"afaan porchugaal";s:2:"pt";s:25:"afaan portugali (braazil)";s:5:"pt-br";s:24:"ခက်ချ်ဝါ";s:2:"qu";s:15:"afaan romaniyaa";s:2:"ro";s:12:"armãneashce";s:3:"rup";s:9:"aromanian";s:3:"rup";s:14:"afaan rushiyaa";s:2:"ru";s:8:"aromanca";s:3:"rup";s:9:"aroumaneg";s:3:"rup";s:11:"aromanijski";s:3:"rup";s:9:"aromanès";s:3:"rup";s:12:"arumunština";s:3:"rup";s:8:"aromaneg";s:3:"rup";s:9:"arumænsk";s:3:"rup";s:10:"aromunisch";s:3:"rup";s:8:"arrumano";s:3:"rup";s:8:"aromuuni";s:3:"rup";s:8:"aromania";s:3:"rup";s:12:"aromaniaansk";s:3:"rup";s:11:"arómáinis";s:3:"rup";s:9:"aromunski";s:3:"rup";s:7:"aromán";s:3:"rup";s:10:"arúmenska";s:3:"rup";s:7:"arumeno";s:3:"rup";s:10:"aromunesch";s:3:"rup";s:9:"aromanių";s:3:"rup";s:8:"aromūnu";s:3:"rup";s:10:"aromanijan";s:3:"rup";s:8:"aromansk";s:3:"rup";s:10:"aromuunsch";s:3:"rup";s:9:"aroemeens";s:3:"rup";s:10:"arumuński";s:3:"rup";s:7:"aromeno";s:3:"rup";s:8:"aromunic";s:3:"rup";s:9:"aromână";s:3:"rup";s:11:"arumunčina";s:3:"rup";s:13:"aromunščina";s:3:"rup";s:10:"arumänska";s:3:"rup";s:8:"albainis";s:3:"sco";s:6:"albais";s:3:"sco";s:15:"afaan sinhalese";s:2:"si";s:12:"afaan slovak";s:2:"sk";s:17:"afaan islovaniyaa";s:2:"sl";s:18:"aşağı silezyaca";s:3:"sli";s:8:"albanees";s:2:"sq";s:6:"albanu";s:2:"sq";s:5:"alban";s:2:"sq";s:7:"albaneg";s:2:"sq";s:8:"albanski";s:2:"sq";s:8:"albanès";s:2:"sq";s:12:"albánština";s:2:"sq";s:7:"albansk";s:2:"sq";s:9:"albanisch";s:2:"sq";s:12:"albanšćina";s:2:"sq";s:10:"albaniagbe";s:2:"sq";s:8:"albanian";s:2:"sq";s:6:"albana";s:2:"sq";s:8:"albanés";s:2:"sq";s:8:"albaania";s:2:"sq";s:9:"albaniera";s:2:"sq";s:7:"albania";s:2:"sq";s:8:"albanskt";s:2:"sq";s:8:"albanais";s:2:"sq";s:8:"albanês";s:2:"sq";s:9:"albaneesk";s:2:"sq";s:9:"albáinis";s:2:"sq";s:9:"albàinis";s:2:"sq";s:6:"albán";s:2:"sq";s:8:"albanese";s:2:"sq";s:8:"albanska";s:2:"sq";s:10:"albaanesch";s:2:"sq";s:9:"albanesch";s:2:"sq";s:7:"albanų";s:2:"sq";s:8:"albāņu";s:2:"sq";s:8:"albaniż";s:2:"sq";s:9:"albaansch";s:2:"sq";s:15:"afaan albaniyaa";s:2:"sq";s:9:"albański";s:2:"sq";s:12:"albanes simi";s:2:"sq";s:9:"albaneză";s:2:"sq";s:13:"albánagiella";s:2:"sq";s:11:"albánčina";s:2:"sq";s:12:"albanščina";s:2:"sq";s:11:"albaaniyaan";s:2:"sq";s:10:"arnavutça";s:2:"sq";s:8:"albancha";s:2:"sq";s:13:"afaan serbiya";s:2:"sr";s:16:"anyiehe sothogbe";s:2:"st";s:14:"afaan sudaanii";s:2:"su";s:14:"afaan suwidiin";s:2:"sv";s:13:"afaan tamilii";s:2:"ta";s:12:"afaan telugu";s:2:"te";s:11:"afaan tayii";s:2:"th";s:13:"afaan tigiree";s:2:"ti";s:12:"afaan turkii";s:2:"tr";s:25:"amazic del marroc central";s:3:"tzm";s:34:"atlas tamazight កណ្ដាល";s:3:"tzm";s:14:"afaan ukreenii";s:2:"uk";s:10:"afaan urdu";s:2:"ur";s:11:"afaan uzbek";s:2:"uz";s:14:"afaan veetinam";s:2:"vi";s:11:"afaan xhosa";s:2:"xh";s:19:"anʼanaviy xitoycha";s:7:"zh-hant";s:11:"afaan zuulu";s:2:"zu";s:5:"akoli";s:3:"ach";s:5:"acoli";s:3:"ach";s:10:"akoli dili";s:3:"ach";s:10:"akolština";s:3:"ach";s:14:"acholi-sprache";s:3:"ach";s:9:"acholiera";s:3:"ach";s:7:"atšoli";s:3:"ach";s:6:"acholi";s:3:"ach";s:6:"acioli";s:3:"ach";s:14:"acholi-sprooch";s:3:"ach";s:7:"akolių";s:3:"ach";s:6:"ačolu";s:3:"ach";s:6:"aczoli";s:3:"ach";s:6:"ačoli";s:3:"ach";s:14:"ačolijščina";s:3:"ach";s:5:"aghem";s:3:"agq";s:5:"aqhem";s:3:"agq";s:7:"aghemeg";s:3:"agq";s:8:"aghemgbe";s:3:"agq";s:6:"aghemi";s:3:"agq";s:8:"aghemera";s:3:"agq";s:12:"aghemšćina";s:3:"agq";s:4:"agem";s:3:"agq";s:7:"aghemų";s:3:"agq";s:6:"aghemu";s:3:"agq";s:12:"aghemščina";s:3:"agq";s:8:"agemisht";s:3:"agq";s:10:"ag‘emcha";s:3:"agq";s:13:"arabeg modern";s:6:"ar-001";s:33:"arabština (moderní standardní)";s:6:"ar-001";s:21:"arabeg modern safonol";s:6:"ar-001";s:23:"araabia (tänapäevane)";s:6:"ar-001";s:27:"arabiera moderno estandarra";s:6:"ar-001";s:22:"arabe standard moderne";s:6:"ar-001";s:22:"araibis chaighdeánach";s:6:"ar-001";s:19:"arab standar modern";s:6:"ar-001";s:22:"arabo moderno standard";s:6:"ar-001";s:19:"arab standard moden";s:6:"ar-001";s:24:"arabă standard modernă";s:6:"ar-001";s:33:"arabčina (moderná štandardná)";s:6:"ar-001";s:27:"arabishte standarde moderne";s:6:"ar-001";s:3:"asu";s:3:"asa";s:6:"asagbe";s:3:"asa";s:3:"asa";s:3:"asa";s:4:"asua";s:3:"asa";s:14:"asu (tanzania)";s:3:"asa";s:5:"assou";s:3:"asa";s:11:"asujščina";s:3:"asa";s:7:"asuisht";s:3:"asa";s:6:"asucha";s:3:"asa";s:15:"ချီဂါ";s:3:"cgg";s:16:"antieke egipties";s:3:"egy";s:16:"ancient egyptian";s:3:"egy";s:11:"aldegyptysk";s:3:"egy";s:13:"altägyptisch";s:3:"egy";s:14:"ahl Äjiptesch";s:3:"egy";s:16:"afaan filippinii";s:3:"fil";s:15:"ခမ်ဘာ";s:3:"kam";s:33:"ခဘူဗာဒီအာနူ";s:3:"kea";s:37:"ခိုရာ ချီအီနီ";s:3:"khq";s:30:"ခါလိမ်ဂျင်";s:3:"kln";s:18:"anyiehe ndebelegbe";s:2:"nr";s:8:"ankolera";s:3:"nyn";s:27:"ခီခ်အီချီ";s:3:"quc";s:49:"ခိုရာဘိုရို ဆမ်နီ";s:3:"ses";s:14:"anárašgiella";s:3:"smn";s:28:"ခိုလ် ဆာမိ";s:3:"sms";s:22:"콩고 스와힐리어";s:3:"swc";s:43:"ခွန်ဂို စွာဟီလီ";s:3:"swc";s:5:"ateso";s:3:"teo";s:14:"afaan kilingon";s:3:"tlh";s:33:"af aan la aqoon ama aan sax ahayn";s:3:"und";s:27:"amazic estàndard marroquí";s:3:"zgh";s:26:"amazighe standard marocain";s:3:"zgh";s:25:"akukho okuqukethwe kolimi";s:3:"zxx";s:23:"avstraliya ingiliscəsi";s:5:"en-au";s:19:"australski engleski";s:5:"en-au";s:18:"anglès australià";s:5:"en-au";s:17:"australsk engelsk";s:5:"en-au";s:22:"australisches englisch";s:5:"en-au";s:23:"awstralska engelšćina";s:5:"en-au";s:26:"australiatɔwo ƒe yevugbe";s:5:"en-au";s:18:"australian english";s:5:"en-au";s:16:"aŭstralia angla";s:5:"en-au";s:18:"australianenglanti";s:5:"en-au";s:18:"anglais australien";s:5:"en-au";s:18:"australysk ingelsk";s:5:"en-au";s:24:"auschtralischs Änglisch";s:5:"en-au";s:26:"awstralska jendźelšćina";s:5:"en-au";s:15:"ausztrál angol";s:5:"en-au";s:21:"australescht englesch";s:5:"en-au";s:18:"australijos anglų";s:5:"en-au";s:19:"austrālijas angļu";s:5:"en-au";s:20:"austraalsch engelsch";s:5:"en-au";s:18:"australisch engels";s:5:"en-au";s:18:"australisk engelsk";s:5:"en-au";s:22:"australijski angielski";s:5:"en-au";s:21:"australijski engleski";s:5:"en-au";s:25:"angličtina (austrálska)";s:5:"en-au";s:23:"avstralska angleščina";s:5:"en-au";s:21:"anglishte australiane";s:5:"en-au";s:19:"australisk engelska";s:5:"en-au";s:23:"avustralya İngilizcesi";s:5:"en-au";s:22:"avstraliya inglizchasi";s:5:"en-au";s:20:"amerika ingiliscəsi";s:5:"en-us";s:18:"američki engleski";s:5:"en-us";s:16:"anglès americà";s:5:"en-us";s:17:"angličtina (usa)";s:5:"en-us";s:18:"amerikansk engelsk";s:5:"en-us";s:23:"amerikanisches englisch";s:5:"en-us";s:21:"ameriska engelšćina";s:5:"en-us";s:16:"american english";s:5:"en-us";s:16:"amerikanenglanti";s:5:"en-us";s:18:"anglais américain";s:5:"en-us";s:19:"amerikaansk ingelsk";s:5:"en-us";s:23:"amerikanischs Änglisch";s:5:"en-us";s:24:"ameriska jendźelšćina";s:5:"en-us";s:14:"amerikai angol";s:5:"en-us";s:13:"anglese (sua)";s:5:"en-us";s:25:"amärrekaanesch Änglesch";s:5:"en-us";s:22:"amerikanescht englesch";s:5:"en-us";s:10:"asv angļu";s:5:"en-us";s:21:"amerikaansch engelsch";s:5:"en-us";s:17:"amerikaans engels";s:5:"en-us";s:22:"amerykański angielski";s:5:"en-us";s:23:"angličtina (americká)";s:5:"en-us";s:18:"angleščina (zda)";s:5:"en-us";s:19:"anglishte amerikane";s:5:"en-us";s:19:"amerikansk engelska";s:5:"en-us";s:21:"amerikan İngilizcesi";s:5:"en-us";s:15:"amerika hispana";s:6:"es-419";s:15:"amerikanespanja";s:6:"es-419";s:24:"amerykański hiszpański";s:6:"es-419";s:21:"avrupa İspanyolcası";s:5:"es-es";s:9:"aetóipis";s:3:"gez";s:16:"afaan protuguese";s:5:"pt-pt";s:19:"avrupa portekizcesi";s:5:"pt-pt";s:7:"adangme";s:3:"ada";s:12:"adangme dili";s:3:"ada";s:11:"adangmejski";s:3:"ada";s:8:"adangmeg";s:3:"ada";s:8:"adangmų";s:3:"ada";s:7:"adangmu";s:3:"ada";s:8:"andangme";s:3:"ada";s:15:"adangmejščina";s:3:"ada";s:6:"adyghe";s:3:"ady";s:10:"aduge dili";s:3:"ady";s:8:"adygeieg";s:3:"ady";s:9:"adigejski";s:3:"ady";s:7:"adigué";s:3:"ady";s:12:"adygejština";s:3:"ady";s:9:"adygeisch";s:3:"ady";s:9:"adyghegbe";s:3:"ady";s:6:"adigeo";s:3:"ady";s:7:"adõgee";s:3:"ady";s:5:"adyge";s:3:"ady";s:9:"adyghéen";s:3:"ady";s:6:"adygai";s:3:"ady";s:6:"adygei";s:3:"ady";s:6:"adýge";s:3:"ady";s:11:"adygéiesch";s:3:"ady";s:9:"adygėjų";s:3:"ady";s:5:"adigu";s:3:"ady";s:7:"adygees";s:3:"ady";s:9:"adygejski";s:3:"ady";s:6:"adigue";s:3:"ady";s:9:"adygčina";s:3:"ady";s:13:"adigejščina";s:3:"ady";s:9:"adygeiska";s:3:"ady";s:7:"adigece";s:3:"ady";s:10:"avestanín";s:2:"ae";s:9:"avestanca";s:2:"ae";s:7:"avesteg";s:2:"ae";s:10:"avestanski";s:2:"ae";s:8:"avèstic";s:2:"ae";s:14:"avestánština";s:2:"ae";s:9:"afestaneg";s:2:"ae";s:7:"avestan";s:2:"ae";s:9:"avestisch";s:2:"ae";s:9:"avéstico";s:2:"ae";s:6:"avesta";s:2:"ae";s:9:"avestique";s:2:"ae";s:8:"avestysk";s:2:"ae";s:10:"aivéistis";s:2:"ae";s:10:"avestanais";s:2:"ae";s:9:"avesztán";s:2:"ae";s:10:"avestíska";s:2:"ae";s:13:"avästahnesch";s:2:"ae";s:9:"avestesch";s:2:"ae";s:7:"avestų";s:2:"ae";s:8:"avestisk";s:2:"ae";s:8:"avestsch";s:2:"ae";s:10:"awestyjski";s:2:"ae";s:7:"avestic";s:2:"ae";s:9:"avestană";s:2:"ae";s:10:"avestčina";s:2:"ae";s:14:"avestijščina";s:2:"ae";s:9:"avestiska";s:2:"ae";s:8:"avestçe";s:2:"ae";s:8:"afrihili";s:3:"afh";s:13:"afrihili dili";s:3:"afh";s:9:"affrihili";s:3:"afh";s:11:"afríhílí";s:3:"afh";s:12:"afrehihlesch";s:3:"afh";s:9:"afriħili";s:3:"afh";s:4:"ainu";s:3:"ain";s:6:"aynuca";s:3:"ain";s:7:"ainoueg";s:3:"ain";s:9:"ainština";s:3:"ain";s:7:"ainŵeg";s:3:"ain";s:12:"ainu-sprache";s:3:"ain";s:6:"aïnou";s:3:"ain";s:10:"aidhniúis";s:3:"ain";s:13:"aínu (japan)";s:3:"ain";s:12:"ainu-sprooch";s:3:"ain";s:5:"ainų";s:3:"ain";s:4:"ajnu";s:3:"ain";s:8:"ainčina";s:3:"ain";s:12:"ainujščina";s:3:"ain";s:9:"ayni dili";s:3:"ain";s:8:"acadianu";s:3:"akk";s:9:"akadianca";s:3:"akk";s:6:"akadeg";s:3:"akk";s:9:"akadijski";s:3:"akk";s:6:"accadi";s:3:"akk";s:11:"akkadština";s:3:"akk";s:6:"acadeg";s:3:"akk";s:8:"akkadisk";s:3:"akk";s:9:"akkadisch";s:3:"akk";s:8:"akkadian";s:3:"akk";s:6:"acadio";s:3:"akk";s:5:"akadi";s:3:"akk";s:6:"akkadi";s:3:"akk";s:8:"akkadien";s:3:"akk";s:8:"akkadysk";s:3:"akk";s:8:"acáidis";s:3:"akk";s:6:"akkád";s:3:"akk";s:7:"akkadia";s:3:"akk";s:10:"akkadíska";s:3:"akk";s:6:"accado";s:3:"akk";s:9:"akahdesch";s:3:"akk";s:9:"akkadesch";s:3:"akk";s:9:"akadianų";s:3:"akk";s:9:"akadiešu";s:3:"akk";s:8:"akkadjen";s:3:"akk";s:8:"akkadsch";s:3:"akk";s:9:"akadyjski";s:3:"akk";s:8:"acadiano";s:3:"akk";s:7:"accadic";s:3:"akk";s:10:"akkadiană";s:3:"akk";s:10:"akkadčina";s:3:"akk";s:11:"akadščina";s:3:"akk";s:9:"akkadiska";s:3:"akk";s:9:"akad dili";s:3:"akk";s:5:"aleut";s:3:"ale";s:7:"aleutca";s:3:"ale";s:8:"aleouteg";s:3:"ale";s:5:"aljut";s:3:"ale";s:6:"aleuta";s:3:"ale";s:11:"aleutština";s:3:"ale";s:7:"alewteg";s:3:"ale";s:8:"aleutisk";s:3:"ale";s:9:"aleutisch";s:3:"ale";s:9:"aleutiano";s:3:"ale";s:7:"aleuudi";s:3:"ale";s:7:"aleutti";s:3:"ale";s:8:"aléoute";s:3:"ale";s:8:"aleutais";s:3:"ale";s:8:"aleutski";s:3:"ale";s:8:"aleúska";s:3:"ale";s:6:"aleuto";s:3:"ale";s:13:"ale’uhtesch";s:3:"ale";s:9:"aleutesch";s:3:"ale";s:7:"aleutų";s:3:"ale";s:6:"aleutu";s:3:"ale";s:8:"aleutsch";s:3:"ale";s:10:"aleoetisch";s:3:"ale";s:7:"aleucki";s:3:"ale";s:7:"aleúte";s:3:"ale";s:7:"aleutic";s:3:"ale";s:7:"aleută";s:3:"ale";s:10:"aleutčina";s:3:"ale";s:12:"aleutščina";s:3:"ale";s:9:"aleutiska";s:3:"ale";s:13:"altai del sur";s:3:"alt";s:13:"altaieg ar su";s:3:"alt";s:17:"altaic meridional";s:3:"alt";s:21:"altajština (jižní)";s:3:"alt";s:15:"altäeg deheuol";s:3:"alt";s:17:"altái meridional";s:3:"alt";s:5:"altai";s:3:"alt";s:13:"altaï du sud";s:3:"alt";s:13:"altai selatan";s:3:"alt";s:17:"altai meridionale";s:3:"alt";s:12:"altai do sul";s:3:"alt";s:14:"altaic dal sid";s:3:"alt";s:21:"altaică meridională";s:3:"alt";s:7:"arapaho";s:3:"arp";s:12:"arapaho dili";s:3:"arp";s:13:"arapažština";s:3:"arp";s:15:"arapaho-sprache";s:3:"arp";s:8:"arapahó";s:3:"arp";s:15:"arapaho-sprooch";s:3:"arp";s:8:"arapahų";s:3:"arp";s:7:"arapahu";s:3:"arp";s:8:"arapaħo";s:3:"arp";s:12:"arapaščina";s:3:"arp";s:6:"arawak";s:3:"arw";s:9:"aravakça";s:3:"arw";s:8:"arawakeg";s:3:"arw";s:6:"aravak";s:3:"arw";s:6:"arauac";s:3:"arw";s:16:"arawacké jazyky";s:3:"arw";s:8:"arawaceg";s:3:"arw";s:14:"arawak-sprache";s:3:"arw";s:8:"arahuaco";s:3:"arw";s:7:"aravaki";s:3:"arw";s:9:"aravakska";s:3:"arw";s:6:"aruaco";s:3:"arw";s:14:"arawak-sprooch";s:3:"arw";s:8:"aravakų";s:3:"arw";s:7:"aravaku";s:3:"arw";s:14:"arawak-spraken";s:3:"arw";s:8:"arauaqui";s:3:"arw";s:11:"arawačtina";s:3:"arw";s:12:"aravaščina";s:3:"arw";s:10:"arawakiska";s:3:"arw";s:11:"arawak dili";s:3:"arw";s:6:"awadhi";s:3:"awa";s:8:"avadicə";s:3:"awa";s:6:"avadhi";s:3:"awa";s:11:"awadhština";s:3:"awa";s:6:"awádi";s:3:"awa";s:6:"avadí";s:3:"awa";s:6:"avadhu";s:3:"awa";s:7:"awadħi";s:3:"awa";s:10:"avadhčina";s:3:"awa";s:11:"avadščina";s:3:"awa";s:6:"akoose";s:3:"bss";s:10:"akoosiagbe";s:3:"bss";s:7:"akūsų";s:3:"bss";s:5:"akose";s:3:"bss";s:5:"atsam";s:3:"cch";s:7:"atsamca";s:3:"cch";s:7:"atsameg";s:3:"cch";s:6:"atsami";s:3:"cch";s:6:"atszam";s:3:"cch";s:7:"atsamų";s:3:"cch";s:6:"atsamu";s:3:"cch";s:11:"athapaskisk";s:3:"den";s:14:"anglès mitjà";s:3:"enm";s:27:"angličtina (středověká)";s:3:"enm";s:15:"altfranzösisch";s:3:"fro";s:16:"ancien français";s:3:"fro";s:10:"aldfrânsk";s:3:"fro";s:13:"alfranséisch";s:3:"fro";s:16:"austurfrísneska";s:3:"frs";s:13:"austrumfrīzu";s:3:"frs";s:11:"austfrisisk";s:3:"frs";s:17:"altualemán mediu";s:3:"gmh";s:18:"alt alemany mitjà";s:3:"gmh";s:29:"alemán de la alta edad media";s:3:"gmh";s:21:"alemão medieval alto";s:3:"gmh";s:19:"alemão médio-alto";s:3:"gmh";s:19:"altualemán antiguu";s:3:"goh";s:17:"alt alemany antic";s:3:"goh";s:14:"althochdeutsch";s:3:"goh";s:31:"alemán de la alta edad antigua";s:3:"goh";s:20:"ancien haut allemand";s:3:"goh";s:14:"alsheechdútsk";s:3:"goh";s:16:"althochtüütsch";s:3:"goh";s:16:"alhéichdäitsch";s:3:"goh";s:20:"alemão arcaico alto";s:3:"goh";s:16:"arabais iùdhach";s:3:"jrb";s:12:"ခါစီ";s:3:"kha";s:11:"altnordisch";s:3:"non";s:9:"aldnoarsk";s:3:"non";s:10:"alnordesch";s:3:"non";s:10:"alt-newari";s:3:"nwc";s:9:"al-newari";s:3:"nwc";s:16:"anašinabščina";s:2:"oj";s:11:"altpersisch";s:3:"peo";s:10:"aldperzysk";s:3:"peo";s:10:"alpersesch";s:3:"peo";s:16:"altprovenzalisch";s:3:"pro";s:15:"aldprovençaals";s:3:"pro";s:15:"alprovenzalesch";s:3:"pro";s:18:"araméu samaritanu";s:3:"sam";s:22:"arameeg ar samaritaned";s:3:"sam";s:16:"arameu samarità";s:3:"sam";s:15:"aramaeg samaria";s:3:"sam";s:17:"arameo samaritano";s:3:"sam";s:19:"araméen samaritain";s:3:"sam";s:18:"aramais shamárach";s:3:"sam";s:21:"aramais shamaritanach";s:3:"sam";s:12:"aram samaria";s:3:"sam";s:19:"aramaico samaritano";s:3:"sam";s:17:"arameic samaritan";s:3:"sam";s:22:"aramaică samariteană";s:3:"sam";s:9:"altirisch";s:3:"sga";s:16:"ancien irlandais";s:3:"sga";s:7:"aldyrsk";s:3:"sga";s:8:"aliresch";s:3:"sga";s:12:"arabeg tchad";s:3:"shu";s:21:"arabština (čadská)";s:3:"shu";s:11:"arabeg chad";s:3:"shu";s:14:"arabe tchadien";s:3:"shu";s:16:"arabais seàdach";s:3:"shu";s:9:"arab suwa";s:3:"shu";s:14:"arabski (czad)";s:3:"shu";s:16:"arabă ciadiană";s:3:"shu";s:10:"altsyrisch";s:3:"syc";s:9:"alsyresch";s:3:"syc";s:5:"ameto";s:3:"wal";s:14:"arabeg tunizia";s:3:"aeb";s:21:"arabština (tuniská)";s:3:"aeb";s:14:"arabeg tunisia";s:3:"aeb";s:14:"arabe tunisien";s:3:"aeb";s:19:"arabais thuiniseach";s:3:"aeb";s:12:"arab tunisia";s:3:"aeb";s:14:"arabo tunisino";s:3:"aeb";s:7:"alabama";s:3:"akz";s:9:"alabamaeg";s:3:"akz";s:12:"alabamština";s:3:"akz";s:10:"alabamäeg";s:3:"akz";s:13:"alabamiečių";s:3:"akz";s:9:"alabamaca";s:3:"akz";s:6:"araona";s:3:"aro";s:11:"araonština";s:3:"aro";s:8:"araonaeg";s:3:"aro";s:7:"araonų";s:3:"aro";s:9:"araoniska";s:3:"aro";s:30:"amerikanische gebärdensprache";s:3:"ase";s:22:"american sign language";s:3:"ase";s:28:"amerikkalainen viittomakieli";s:3:"ase";s:32:"amärrekahnesche blendeschprohch";s:3:"ase";s:26:"amerikanesch zeechesprooch";s:3:"ase";s:23:"amerikos ženklų kalba";s:3:"ase";s:23:"amerikaanse gebarentaal";s:3:"ase";s:26:"amerykański język migowy";s:3:"ase";s:24:"amerikanskt teckenspråk";s:3:"ase";s:22:"amerikan İşaret dili";s:3:"ase";s:12:"alaskanjupik";s:3:"esu";s:7:"ao naga";s:3:"njo";s:23:"ao (jazyky nágálandu)";s:3:"njo";s:7:"ao-naga";s:3:"njo";s:2:"ao";s:3:"njo";s:23:"afro-asiaatsche spraken";s:3:"afa";s:14:"afro-azijatski";s:3:"afa";s:16:"algonkin-spraken";s:3:"alg";s:20:"algonkvijanski jezik";s:3:"alg";s:6:"apache";s:3:"apa";s:13:"apački jezik";s:3:"apa";s:20:"athabasksche spraken";s:3:"ath";s:9:"atapaskan";s:3:"ath";s:20:"austraalsche spraken";s:3:"aus";s:18:"australijski jezik";s:3:"aus";s:21:"austroneesche spraken";s:3:"map";s:15:"austronežanski";s:3:"map";s:17:"altaische spraken";s:3:"tut";s:15:"altaički jezik";s:3:"tut";}i:72;a:190:{s:8:"афар";s:2:"aa";s:14:"афарски";s:2:"aa";s:16:"афарська";s:2:"aa";s:18:"абхазская";s:2:"ab";s:16:"абхаская";s:2:"ab";s:14:"абхазки";s:2:"ab";s:19:"абхаз тілі";s:2:"ab";s:14:"абхазча";s:2:"ab";s:14:"апхаски";s:2:"ab";s:10:"абхаз";s:2:"ab";s:14:"абхазаг";s:2:"ab";s:18:"абхазский";s:2:"ab";s:14:"абхаски";s:2:"ab";s:16:"абхазька";s:2:"ab";s:14:"ачински";s:3:"ace";s:12:"ачешки";s:3:"ace";s:16:"ачехский";s:3:"ace";s:16:"ачехська";s:3:"ace";s:18:"афрыкаанс";s:2:"af";s:16:"африканс";s:2:"af";s:18:"африкаанс";s:2:"af";s:20:"африкаанча";s:2:"af";s:10:"африк";s:2:"af";s:8:"акан";s:2:"ak";s:12:"аканча";s:2:"ak";s:14:"акански";s:2:"ak";s:18:"амхарская";s:2:"am";s:16:"амхарски";s:2:"am";s:10:"амхар";s:2:"am";s:14:"амхарча";s:2:"am";s:18:"амхарский";s:2:"am";s:18:"амхарська";s:2:"am";s:20:"арагонская";s:2:"an";s:18:"арагонски";s:2:"an";s:20:"арагонский";s:2:"an";s:20:"арагонська";s:2:"an";s:12:"ангика";s:3:"anp";s:12:"ангіка";s:3:"anp";s:16:"арабская";s:2:"ar";s:14:"арабски";s:2:"ar";s:17:"араб тілі";s:2:"ar";s:12:"арабча";s:2:"ar";s:14:"арапски";s:2:"ar";s:8:"араб";s:2:"ar";s:14:"араббаг";s:2:"ar";s:16:"арабский";s:2:"ar";s:16:"арабська";s:2:"ar";s:20:"арамейская";s:3:"arc";s:18:"арамейски";s:3:"arc";s:18:"арамејски";s:3:"arc";s:20:"арамейский";s:3:"arc";s:20:"арамейська";s:3:"arc";s:22:"арауканский";s:3:"arn";s:22:"арауканська";s:3:"arn";s:31:"алжирски арапски";s:3:"arq";s:16:"асамская";s:2:"as";s:14:"асамски";s:2:"as";s:19:"ассам тілі";s:2:"as";s:14:"ассамча";s:2:"as";s:10:"ассам";s:2:"as";s:18:"ассамский";s:2:"as";s:18:"ассамська";s:2:"as";s:22:"астурыйская";s:3:"ast";s:16:"астурски";s:3:"ast";s:22:"астурийский";s:3:"ast";s:18:"астурська";s:3:"ast";s:8:"авар";s:2:"av";s:16:"аварская";s:2:"av";s:14:"аварски";s:2:"av";s:14:"авайраг";s:2:"av";s:16:"аварский";s:2:"av";s:16:"аварська";s:2:"av";s:12:"аймара";s:2:"ay";s:16:"ајмарски";s:2:"ay";s:30:"азербайджанская";s:2:"az";s:30:"азэрбайджанская";s:2:"az";s:28:"азербайджански";s:2:"az";s:24:"азербайжанча";s:2:"az";s:26:"азербејџански";s:2:"az";s:20:"азербайжан";s:2:"az";s:30:"азербайджанский";s:2:"az";s:30:"азербайджанська";s:2:"az";s:39:"аўстрыйская нямецкая";s:5:"de-at";s:33:"австрийски немски";s:5:"de-at";s:40:"австриялық неміс тілі";s:5:"de-at";s:25:"австри герман";s:5:"de-at";s:35:"австралиаг немыцаг";s:5:"de-at";s:39:"австрийский немецкий";s:5:"de-at";s:35:"афіцыйная нямецкая";s:9:"de-formal";s:20:"англійская";s:2:"en";s:20:"ангельская";s:2:"en";s:18:"английски";s:2:"en";s:23:"ағылшын тілі";s:2:"en";s:16:"англисче";s:2:"en";s:16:"англиски";s:2:"en";s:10:"англи";s:2:"en";s:16:"англисаг";s:2:"en";s:20:"английский";s:2:"en";s:20:"англійська";s:2:"en";s:34:"англійская (канад.)";s:5:"en-ca";s:41:"англійська британська";s:5:"en-gb";s:18:"армянская";s:2:"hy";s:16:"арменски";s:2:"hy";s:19:"армян тілі";s:2:"hy";s:14:"армянча";s:2:"hy";s:10:"армен";s:2:"hy";s:18:"армянский";s:2:"hy";s:20:"асецінская";s:2:"os";s:20:"асэтынская";s:2:"os";s:18:"арумънски";s:3:"rup";s:20:"арумынский";s:3:"rup";s:20:"арумунська";s:3:"rup";s:18:"албанская";s:2:"sq";s:20:"альбанская";s:2:"sq";s:16:"албански";s:2:"sq";s:10:"албан";s:2:"sq";s:14:"албанча";s:2:"sq";s:12:"албани";s:2:"sq";s:18:"албанский";s:2:"sq";s:18:"албанська";s:2:"sq";s:10:"аколи";s:3:"ach";s:10:"ачоли";s:3:"ach";s:10:"ачолі";s:3:"ach";s:8:"агем";s:3:"agq";s:10:"агхем";s:3:"agq";s:12:"агемче";s:3:"agq";s:14:"агемски";s:3:"agq";s:49:"азыркы адабий араб тилинде";s:6:"ar-001";s:41:"арабский литературный";s:6:"ar-001";s:6:"асу";s:3:"asa";s:10:"асуча";s:3:"asa";s:6:"аса";s:3:"asa";s:38:"англійская (аўстрал.)";s:5:"en-au";s:47:"аўстралійская ангельская";s:5:"en-au";s:43:"австралийски английски";s:5:"en-au";s:48:"австралиялық ағылшын тілі";s:5:"en-au";s:27:"австрали англи";s:5:"en-au";s:37:"австралиаг англисаг";s:5:"en-au";s:47:"австралийский английский";s:5:"en-au";s:29:"англійская (ЗША)";s:5:"en-us";s:45:"амэрыканская ангельская";s:5:"en-us";s:41:"американски английски";s:5:"en-us";s:46:"американдық ағылшын тілі";s:5:"en-us";s:39:"американски англиски";s:5:"en-us";s:29:"америкийн англи";s:5:"en-us";s:33:"америкаг англисаг";s:5:"en-us";s:45:"американский английский";s:5:"en-us";s:14:"адангме";s:3:"ada";s:20:"адыгейская";s:3:"ady";s:10:"адиге";s:3:"ady";s:18:"адигејски";s:3:"ady";s:16:"адыгейаг";s:3:"ady";s:20:"адыгейский";s:3:"ady";s:20:"адигейська";s:3:"ady";s:16:"авестски";s:2:"ae";s:20:"авестански";s:2:"ae";s:12:"авестӕ";s:2:"ae";s:22:"авестийский";s:2:"ae";s:22:"авестійська";s:2:"ae";s:16:"африхили";s:3:"afh";s:16:"африхілі";s:3:"afh";s:8:"айну";s:3:"ain";s:8:"ајну";s:3:"ain";s:14:"айнська";s:3:"ain";s:16:"акадзкая";s:3:"akk";s:14:"акадски";s:3:"akk";s:18:"аккадский";s:3:"akk";s:18:"аккадська";s:3:"akk";s:16:"алеуцкая";s:3:"ale";s:16:"алеутски";s:3:"ale";s:18:"алеутский";s:3:"ale";s:18:"алеутська";s:3:"ale";s:14:"арапахо";s:3:"arp";s:12:"аравак";s:3:"arw";s:16:"аравачки";s:3:"arw";s:20:"аравакский";s:3:"arw";s:20:"аравакська";s:3:"arw";s:10:"авади";s:3:"awa";s:12:"авадхи";s:3:"awa";s:12:"авадхі";s:3:"awa";s:10:"акосе";s:3:"bss";s:12:"акоосе";s:3:"bss";s:8:"акус";s:3:"bss";s:10:"атсам";s:3:"cch";s:8:"ацам";s:3:"cch";s:14:"аджыбве";s:2:"oj";s:18:"алабамски";s:3:"akz";s:12:"араона";s:3:"aro";s:50:"американски знаковен јазик";s:3:"ase";s:4:"ао";s:3:"njo";}i:438;a:35:{s:12:"আফার";s:2:"aa";s:27:"আব্খাজিয়";s:2:"ab";s:21:"আচিনিয়";s:3:"ace";s:30:"আফ্রিকান্স";s:2:"af";s:12:"আকান";s:2:"ak";s:21:"আমহারিক";s:2:"am";s:24:"আর্গোনিজ";s:2:"an";s:21:"আঙ্গীকা";s:3:"anp";s:12:"আরবী";s:2:"ar";s:21:"আরামাইক";s:3:"arc";s:15:"আসামি";s:2:"as";s:27:"আস্তুরিয়";s:3:"ast";s:18:"আভেরিক";s:2:"av";s:21:"আয়মারা";s:2:"ay";s:33:"আজারবাইজানী";s:2:"az";s:15:"আইরিশ";s:2:"ga";s:27:"আর্মেনিয়";s:2:"hy";s:39:"আইসল্যান্ডীয়";s:2:"is";s:27:"আরোমানিয়";s:3:"rup";s:24:"আলবেনীয়";s:2:"sq";s:15:"আকোলী";s:3:"ach";s:47:"আধুনিক আদর্শ আরবী";s:6:"ar-001";s:9:"আসু";s:3:"asa";s:65:"আদর্শ মরক্কোন তামাজিগাত";s:3:"zgh";s:43:"আমেরিকার ইংরেজি";s:5:"en-us";s:15:"আদেগে";s:3:"ady";s:27:"আবেস্তীয়";s:2:"ae";s:27:"আফ্রিহিলি";s:3:"afh";s:12:"আইনু";s:3:"ain";s:33:"আক্কাদিয়ান";s:3:"akk";s:15:"আলেউত";s:3:"ale";s:21:"আরাপাহো";s:3:"arp";s:24:"আরাওয়াক";s:3:"arw";s:21:"আওয়াধি";s:3:"awa";s:18:"আত্সাম";s:3:"cch";}i:224;a:10:{s:5:"àfar";s:2:"aa";s:5:"àkan";s:2:"ak";s:5:"àrab";s:2:"ar";s:5:"àvar";s:2:"av";s:24:"남아제르바이잔어";s:3:"azb";s:16:"남부 사미어";s:3:"sma";s:23:"àrab estàndard modern";s:6:"ar-001";s:22:"남부 은데벨레어";s:2:"nr";s:19:"남부 알타이어";s:3:"alt";s:13:"àrab txadià";s:3:"shu";}i:944;a:36:{s:18:"ཨ་ཕར་ཁ";s:2:"aa";s:36:"ཨཱབ་ཁ་ཟི་ཡ་ཁ";s:2:"ab";s:36:"ཨཕ་རི་ཀཱནས་ཁ";s:2:"af";s:30:"ཨམ་ཧ་རིཀ་ཁ";s:2:"am";s:30:"ཨེ་ར་བིཀ་ཁ";s:2:"ar";s:27:"ཨ་ས་མིས་ཁ";s:2:"as";s:45:"ཨ་ཛར་བྷའི་ཇཱན་ཁ";s:2:"az";s:66:"ཨཱོས་ཊྲི་ཡཱན་ཇཱར་མཱན་ཁ";s:5:"de-at";s:27:"ཨིང་ལིཤ་ཁ";s:2:"en";s:42:"ཨེས་པ་རཱན་ཏོ་ཁ";s:2:"eo";s:36:"ཨིས་པེ་ནིཤ་ཁ";s:2:"es";s:45:"ཨེས་ཊོ་ནི་ཡཱན་ཁ";s:2:"et";s:15:"ፐርሺያኛ";s:2:"fa";s:15:"ፐርሲያኛ";s:2:"fa";s:30:"ཨཱའི་རིཤ་ཁ";s:2:"ga";s:32:"Ἀρχαία ἑλληνικὴ";s:3:"grc";s:42:"ཨར་མི་ནི་ཡཱན་ཁ";s:2:"hy";s:51:"ཨིན་དོ་ནི་སི་སྐད།";s:2:"id";s:54:"ཨིན་ཌོ་ནེ་ཤི་ཡཱན་ཁ";s:2:"id";s:24:"ཨིག་བོ་ཁ";s:2:"ig";s:45:"ཨ་ཡིས་ལེན་ཌིཀ་ཁ";s:2:"is";s:39:"ཨི་ཊ་ལི་ཡཱན་ཁ";s:2:"it";s:36:"ཨཽ་རི་ཡ་སྐད།";s:2:"or";s:27:"ཨོ་རི་ཡ་ཁ";s:2:"or";s:39:"ཨུ་རུ་སུ་སྐད་";s:2:"ru";s:36:"ཨུ་རུ་སུའི་ཁ";s:2:"ru";s:45:"ཨཱལ་བེ་ནི་ཡཱན་ཁ";s:2:"sq";s:9:"트위어";s:2:"tw";s:24:"ཨུར་དུ་ཁ";s:2:"ur";s:27:"ཨུས་བེཀ་ཁ";s:2:"uz";s:63:"ཨི་ཇིཔ་ཤཱན (སྔ་དུས་ཀྱི)";s:3:"egy";s:75:"ཨཱོས་ཊྲེ་ལི་ཡཱན་ཨིང་ལིཤ་ཁ";s:5:"en-au";s:75:"ཨི་བེ་རི་ཡཱན་པོར་ཅུ་གིས་ཁ";s:5:"pt-pt";s:15:"델라웨어어";s:3:"del";s:12:"敘利亞文";s:3:"syr";s:15:"트심시안어";s:3:"tsi";}i:913;a:44:{s:8:"Αφάρ";s:2:"aa";s:18:"Αμπχαζικά";s:2:"ab";s:12:"Αχινίζ";s:3:"ace";s:18:"Αφρικάανς";s:2:"af";s:8:"Ακάν";s:2:"ak";s:14:"Αμαρικά";s:2:"am";s:20:"Αραγκονικά";s:2:"an";s:14:"Ανγκικά";s:3:"anp";s:14:"Αραβικά";s:2:"ar";s:16:"Αραμαϊκά";s:3:"arc";s:20:"Αρουκάνιαν";s:3:"arn";s:18:"Ασαμεζικά";s:2:"as";s:20:"Αστουριανά";s:3:"ast";s:12:"Αϊμάρα";s:2:"ay";s:30:"Αζερμπαϊτζανικά";s:2:"az";s:14:"Αγγλικά";s:2:"en";s:27:"Αγγλικά Καναδά";s:5:"en-ca";s:50:"Αγγλικά Ηνωμένου Βασιλείου";s:5:"en-gb";s:29:"Αρχαία Ελληνικά";s:3:"grc";s:14:"Αϊτιανά";s:2:"ht";s:16:"Αρμενικά";s:2:"hy";s:18:"Αρομανικά";s:3:"rup";s:16:"Αλβανικά";s:2:"sq";s:41:"Απλοποιημένα Κινεζικά";s:7:"zh-hans";s:10:"Ακολί";s:3:"ach";s:10:"Αγκέμ";s:3:"agq";s:33:"Αρχαία Αιγυπτιακά";s:3:"egy";s:35:"Αγγλικά Αυστραλίας";s:5:"en-au";s:31:"Αγγλικά Αμερικής";s:5:"en-us";s:18:"Αντάνγκμε";s:3:"ada";s:16:"Αντιγκέα";s:3:"ady";s:14:"Αβεστάν";s:2:"ae";s:16:"Αφριχίλι";s:3:"afh";s:10:"Αϊνού";s:3:"ain";s:16:"Ακάντιαν";s:3:"akk";s:10:"Αλούτ";s:3:"ale";s:14:"Αράπαχο";s:3:"arp";s:16:"Αραγουάκ";s:3:"arw";s:16:"Αγουαντί";s:3:"awa";s:10:"Ακόσι";s:3:"bss";s:10:"Ατσάμ";s:3:"cch";s:35:"Ανατολικά Φριζιανά";s:3:"frs";s:27:"Αρχαία Περσικά";s:3:"peo";s:32:"Αραβικά του Τσαντ";s:3:"shu";}i:570;a:50:{s:10:"آفاری";s:2:"aa";s:12:"آبخازی";s:2:"ab";s:8:"آچئی";s:3:"ace";s:16:"آفریکانس";s:2:"af";s:8:"آکان";s:2:"ak";s:14:"آراگونی";s:2:"an";s:12:"آنگیکا";s:3:"anp";s:10:"آرامی";s:3:"arc";s:10:"آسامی";s:2:"as";s:12:"آستوری";s:3:"ast";s:10:"آواری";s:2:"av";s:16:"آیمارایی";s:2:"ay";s:22:"آزربائیجانی";s:2:"az";s:12:"آلمانی";s:2:"de";s:23:"آلمانی اتریش";s:5:"de-at";s:29:"آسٹرِیَن جٔرمَن";s:5:"de-at";s:25:"آسٹریائی جرمن";s:5:"de-at";s:34:"آلمانی علیای سوئیس";s:5:"de-ch";s:14:"آرپیتان";s:3:"frp";s:12:"آئیرِش";s:2:"ga";s:25:"آلمانی سوئیسی";s:3:"gsw";s:18:"آسا نا جبة";s:2:"ie";s:20:"آیِسلینڈِک";s:2:"is";s:17:"آئس لینڈک";s:2:"is";s:21:"آلمانی سفلی";s:3:"nds";s:14:"آكسیٹان";s:2:"oc";s:6:"آسی";s:2:"os";s:37:"آلمانی پنسیلوانیایی";s:3:"pdc";s:14:"آرومانی";s:7:"roa-rup";s:18:"آلبانیایی";s:2:"sq";s:34:"آمازیغی اطلس مرکزی";s:3:"tzm";s:16:"آچولیایی";s:3:"ach";s:8:"آگیم";s:3:"agq";s:6:"آسو";s:3:"asa";s:36:"آمازیغی معیار مراکش";s:3:"zgh";s:39:"آسٹریلیَن اَنٛگریٖزۍ";s:5:"en-au";s:35:"آسٹریلیائی انگریزی";s:5:"en-au";s:21:"آدانگمه‌ای";s:3:"ada";s:16:"آدیجیایی";s:3:"ady";s:16:"آفریهیلی";s:3:"afh";s:12:"آینویی";s:3:"ain";s:12:"آلئوتی";s:3:"ale";s:23:"آلتایی جنوبی";s:3:"alt";s:18:"آراپاهویی";s:3:"arp";s:14:"آراواکی";s:3:"arw";s:34:"آلمانی علیای میانه";s:3:"gmh";s:36:"آلمانی علیای باستان";s:3:"goh";s:8:"آیبن";s:3:"iba";s:21:"آرامی سامری";s:3:"sam";s:18:"آلابامایی";s:3:"akz";}i:693;a:29:{s:12:"અફાર";s:2:"aa";s:24:"અબખાજિયન";s:2:"ab";s:15:"અચીની";s:3:"ace";s:12:"અકાન";s:2:"ak";s:24:"અર્ગોનીઝ";s:2:"an";s:18:"અંગીકા";s:3:"anp";s:12:"અરબી";s:2:"ar";s:21:"અર્માઇક";s:3:"arc";s:27:"અસ્તુરિયન";s:3:"ast";s:18:"અવેરિક";s:2:"av";s:27:"અઝરબૈજાની";s:2:"az";s:24:"અંગ્રેજી";s:2:"en";s:40:"અપ્પર સોર્બિયન";s:3:"hsb";s:27:"અરોમેનિયન";s:3:"rup";s:27:"અલ્બેનિયન";s:2:"sq";s:12:"અઘેમ";s:3:"agq";s:9:"અસુ";s:3:"asa";s:31:"અજ્ઞાત ભાષા";s:3:"und";s:46:"અમેરિકન અંગ્રેજી";s:5:"en-us";s:24:"અદાંગ્મી";s:3:"ada";s:15:"અદિઘે";s:3:"ady";s:21:"અવેસ્તન";s:2:"ae";s:27:"અફ્રિહિલી";s:3:"afh";s:30:"અક્કાદીયાન";s:3:"akk";s:15:"અલેઉત";s:3:"ale";s:21:"અરાપાહો";s:3:"arp";s:15:"અરાવક";s:3:"arw";s:12:"અવધી";s:3:"awa";s:15:"અત્સમ";s:3:"cch";}i:488;a:180:{s:12:"אפארית";s:2:"aa";s:14:"אַפֿאַר";s:2:"aa";s:12:"אבחזית";s:2:"ab";s:14:"אכינזית";s:3:"ace";s:16:"אפריקאנס";s:2:"af";s:22:"אַפֿריקאַנס";s:2:"af";s:8:"אקאן";s:2:"ak";s:12:"אמהרית";s:2:"am";s:18:"אַמהאַריש";s:2:"am";s:16:"אראגונית";s:2:"an";s:20:"אַראַגאניש";s:2:"an";s:23:"אנגלית עתיקה";s:3:"ang";s:21:"אַלט ענגליש";s:3:"ang";s:14:"אנג׳יקה";s:3:"anp";s:16:"אַראַביש";s:2:"ar";s:10:"ארמית";s:3:"arc";s:16:"אַראַמיש";s:3:"arc";s:16:"אראוקנית";s:3:"arn";s:12:"אסאמית";s:2:"as";s:16:"אַסאַמיש";s:2:"as";s:14:"אסטורית";s:3:"ast";s:12:"אבארית";s:2:"av";s:16:"איימארית";s:2:"ay";s:10:"אזרית";s:2:"az";s:32:"אַזערביידזשאַניש";s:2:"az";s:21:"トバ・バタク語";s:3:"bbc";s:18:"චෙරොකී";s:3:"chr";s:40:"সোরানি কুর্দিশ";s:3:"ckb";s:12:"චෙත්";s:2:"cs";s:50:"সুইস উচ্চ জার্মানি";s:5:"de-ch";s:26:"אונטער־סארביש";s:3:"dsb";s:8:"אווה";s:2:"ee";s:12:"אנגלית";s:2:"en";s:23:"אנגלית קנדית";s:5:"en-ca";s:25:"אנגלית בריטית";s:5:"en-gb";s:14:"אספרנטו";s:2:"eo";s:27:"স্প্যানিশ";s:2:"es";s:14:"אסטונית";s:2:"et";s:42:"トルネダール・フィンランド語";s:3:"fit";s:10:"אירית";s:2:"ga";s:10:"איריש";s:2:"ga";s:37:"স্কটস-গ্যেলিক";s:2:"gd";s:28:"אוראַלט־גריכיש";s:3:"grc";s:34:"সুইস জার্মান";s:3:"gsw";s:26:"אייבער־סארביש";s:3:"hsb";s:16:"אונגעריש";s:2:"hu";s:12:"ארמנית";s:2:"hy";s:16:"אַרמעניש";s:2:"hy";s:18:"אינדונזית";s:2:"id";s:20:"אינדאנעזיש";s:2:"id";s:20:"אינטרלינגה";s:2:"ie";s:10:"איגבו";s:2:"ig";s:34:"সিচুয়ান য়ি";s:2:"ii";s:16:"אינופיאק";s:2:"ik";s:12:"אילוקו";s:3:"ilo";s:16:"אינגושית";s:3:"inh";s:8:"אידו";s:2:"io";s:8:"אידא";s:2:"io";s:16:"איסלנדית";s:2:"is";s:20:"איסלאַנדיש";s:2:"is";s:14:"איטלקית";s:2:"it";s:22:"איטאַליעניש";s:2:"it";s:20:"אינוקטיטוט";s:2:"iu";s:10:"ארזיה";s:3:"myv";s:18:"אוקסיטנית";s:2:"oc";s:20:"אקסיטאַניש";s:2:"oc";s:12:"אורומו";s:2:"om";s:10:"אוריה";s:2:"or";s:12:"אוסטית";s:2:"os";s:12:"אסעטיש";s:2:"os";s:14:"ארומנית";s:3:"rup";s:21:"সংষ্কৃত";s:2:"sa";s:24:"সাঁওতালি";s:3:"sat";s:36:"সার্ডিনিয়ান";s:2:"sc";s:30:"সিসিলিয়ান";s:3:"scn";s:15:"স্কটস";s:3:"sco";s:18:"সিন্ধি";s:2:"sd";s:18:"সাঙ্গো";s:2:"sg";s:52:"সার্বো-ক্রোয়েশিয়";s:2:"sh";s:18:"সিংহলী";s:2:"si";s:21:"স্লোভাক";s:2:"sk";s:30:"স্লোভেনীয়";s:2:"sl";s:25:"אונטער שלעזיש";s:3:"sli";s:24:"সামোয়ান";s:2:"sm";s:18:"সোমালী";s:2:"so";s:12:"אלבנית";s:2:"sq";s:18:"אַלבאַניש";s:2:"sq";s:24:"সার্বীয়";s:2:"sr";s:40:"স্রানান টোঙ্গো";s:3:"srn";s:21:"সোয়াতি";s:2:"ss";s:18:"সুদানী";s:2:"su";s:18:"সুইডিশ";s:2:"sv";s:27:"সোয়াহিলি";s:2:"sw";s:12:"トゥル語";s:3:"tcy";s:18:"トルクメン語";s:2:"tk";s:21:"সোয়ানা";s:2:"tn";s:12:"トンガ語";s:2:"to";s:12:"トキポナ";s:8:"tokipona";s:21:"トク・ピシン語";s:3:"tpi";s:12:"トルコ語";s:2:"tr";s:15:"トゥロヨ語";s:3:"tru";s:15:"সঙ্গা";s:2:"ts";s:18:"トゥンブカ語";s:3:"tum";s:12:"トウィ語";s:2:"tw";s:15:"トゥヴァ語";s:3:"tyv";s:71:"সেন্ট্রাল আটলাস তামাজিগাত";s:3:"tzm";s:14:"אודמורט";s:3:"udm";s:14:"אויגהור";s:2:"ug";s:18:"אוקראינית";s:2:"uk";s:22:"אוקראַאיניש";s:2:"uk";s:10:"אורדו";s:2:"ur";s:14:"אוזבקית";s:2:"uz";s:16:"אוזבעקיש";s:2:"uz";s:9:"චීන";s:2:"zh";s:34:"সরলীকৃত চীনা";s:7:"zh-hans";s:10:"אקולי";s:3:"ach";s:10:"אהיים";s:3:"agq";s:6:"אסו";s:3:"asa";s:12:"චිගා";s:3:"cgg";s:9:"台塔文";s:3:"dav";s:8:"אמבו";s:3:"ebu";s:8:"אפיק";s:3:"efi";s:21:"সামবুরু";s:3:"saq";s:18:"সাঙ্গু";s:3:"sbp";s:12:"সেনা";s:3:"seh";s:21:"אינארי סאמי";s:3:"smn";s:34:"স্কোল্ট সামি";s:3:"sms";s:41:"אומבאַוואוסטע שפּראַך";s:3:"und";s:12:"সোগা";s:3:"xog";s:29:"אנגלית אוסטרלית";s:5:"en-au";s:29:"אנגלית אמריקאית";s:5:"en-us";s:28:"সুইস ফরাসি";s:5:"fr-ch";s:18:"সিডামো";s:3:"sid";s:10:"אדנמה";s:3:"ada";s:12:"אדיגית";s:3:"ady";s:10:"אבסטן";s:2:"ae";s:16:"אפריהילי";s:3:"afh";s:8:"אינו";s:3:"ain";s:10:"אכדית";s:3:"akk";s:16:"אַקאַדיש";s:3:"akk";s:10:"אלאוט";s:3:"ale";s:23:"אלטאי דרומית";s:3:"alt";s:10:"ארפהו";s:3:"arp";s:12:"ארוואק";s:3:"arw";s:14:"אוואדית";s:3:"awa";s:21:"সিকসিকা";s:3:"bla";s:10:"אקוסה";s:3:"bss";s:8:"אטסם";s:3:"cch";s:21:"স্ল্যাভ";s:3:"den";s:10:"אקיוק";s:3:"eka";s:25:"אנגלית תיכונה";s:3:"enm";s:12:"אוונדו";s:3:"ewo";s:34:"אַלט־פֿראַנצויזיש";s:3:"fro";s:29:"אַלט־ הויכדויטש";s:3:"goh";s:10:"איבאן";s:3:"iba";s:23:"אירית תיכונה";s:3:"mga";s:18:"אוג׳יבווה";s:2:"oj";s:12:"אוסג׳ה";s:3:"osa";s:23:"אַלט פּערסיש";s:3:"peo";s:36:"স্যান্ডাওয়ে";s:3:"sad";s:46:"সামারিটান আরামিক";s:3:"sam";s:27:"ארמית שומרונית";s:3:"sam";s:15:"সাসাক";s:3:"sas";s:21:"সেল্কুপ";s:3:"sel";s:21:"אירית עתיקה";s:3:"sga";s:20:"אַלט־איריש";s:3:"sga";s:24:"সোনিঙ্কে";s:3:"snk";s:27:"সোগডিয়ান";s:3:"sog";s:15:"সেরের";s:3:"srr";s:18:"সুকুমা";s:3:"suk";s:12:"সুসু";s:3:"sus";s:24:"সুমেরীয়";s:3:"sux";s:24:"সিরিয়াক";s:3:"syr";s:15:"トケラウ語";s:3:"tkl";s:21:"トリンギット語";s:3:"tli";s:23:"トンガ語(ニアサ)";s:3:"tog";s:27:"সিমশিয়ান";s:3:"tsi";s:16:"אוגריתית";s:3:"uga";s:16:"אומבונדו";s:3:"umb";s:14:"איביביו";s:3:"ibb";}i:309;a:65:{s:15:"अफ़ार";s:2:"aa";s:12:"अफार";s:2:"aa";s:33:"अब्ख़ाज़ियन";s:2:"ab";s:24:"अबखेजियन";s:2:"ab";s:33:"अब्खाजियाली";s:2:"ab";s:21:"अचाइनीस";s:3:"ace";s:15:"अचीनी";s:3:"ace";s:24:"अफ़्रीकी";s:2:"af";s:30:"अफ्रिकान्स";s:2:"af";s:9:"अकन";s:2:"ak";s:12:"अकान";s:2:"ak";s:21:"अम्हेरी";s:2:"am";s:24:"अम्हारिक";s:2:"am";s:21:"अर्गोनी";s:2:"an";s:24:"अर्गोनीज";s:2:"an";s:21:"अङ्गिका";s:3:"anp";s:18:"अंगिका";s:3:"anp";s:12:"अरबी";s:2:"ar";s:27:"अ‍ॅरेमाइक";s:3:"arc";s:18:"असमिया";s:2:"as";s:27:"अस्तुरियन";s:3:"ast";s:18:"अवेरिक";s:2:"av";s:30:"अ‍ॅव्हेरिक";s:2:"av";s:30:"अज़रबैजानी";s:2:"az";s:27:"अझरबैजानी";s:2:"az";s:27:"अजरबैजानी";s:2:"az";s:9:"벵골어";s:2:"bn";s:43:"अष्ट्रियन जर्मन";s:5:"de-at";s:27:"अंग्रेज़ी";s:2:"en";s:24:"अंग्रेजी";s:2:"en";s:40:"अप्पर सॉर्बियन";s:3:"hsb";s:27:"अन्तरभाषी";s:2:"ie";s:21:"अक्सिटन";s:2:"oc";s:27:"अरोमानियन";s:3:"rup";s:30:"अल्बानियाई";s:2:"sq";s:27:"अल्बानियन";s:2:"sq";s:27:"अल्बेनियन";s:2:"sq";s:30:"ვიეტნამური";s:2:"vi";s:24:"ვოლოფური";s:2:"wo";s:15:"अकोली";s:3:"ach";s:18:"अग्हेम";s:3:"agq";s:12:"अघेम";s:3:"agq";s:9:"असु";s:3:"asa";s:31:"अज्ञात भाषा";s:3:"und";s:9:"ვაი";s:3:"vai";s:15:"ვუნჯო";s:3:"vun";s:49:"अमेरिकी अंग्रेज़ी";s:5:"en-us";s:43:"अमेरिकन इंग्रजी";s:5:"en-us";s:24:"अदान्गमे";s:3:"ada";s:24:"अडांग्मे";s:3:"ada";s:15:"अदिघे";s:3:"ady";s:15:"अडिघे";s:3:"ady";s:21:"अवस्ताई";s:2:"ae";s:21:"अवेस्तन";s:2:"ae";s:27:"अफ्रिहिली";s:3:"afh";s:21:"अक्कादी";s:3:"akk";s:27:"अक्कादिआन";s:3:"akk";s:15:"अलेउत";s:3:"ale";s:18:"अराफाओ";s:3:"arp";s:15:"अरावक";s:3:"arw";s:12:"अवधी";s:3:"awa";s:15:"अत्सम";s:3:"cch";s:37:"अभिजात नेवारी";s:3:"nwc";s:40:"अभिजात सिरियाक";s:3:"syc";s:21:"ველაითა";s:3:"wal";}i:450;a:48:{s:15:"アファル語";s:2:"aa";s:15:"アブハズ語";s:2:"ab";s:12:"アチェ語";s:3:"ace";s:24:"アフリカーンス語";s:2:"af";s:12:"アカン語";s:2:"ak";s:15:"アレマン語";s:3:"als";s:15:"アムハラ語";s:2:"am";s:15:"アラゴン語";s:2:"an";s:15:"アンギカ語";s:3:"anp";s:15:"アラビア語";s:2:"ar";s:12:"アラム語";s:3:"arc";s:18:"アラウカン語";s:3:"arn";s:39:"アラビア語アルジェリア方言";s:3:"arq";s:33:"アラビア語モロッコ方言";s:3:"ary";s:33:"アラビア語エジプト方言";s:3:"arz";s:15:"アッサム語";s:2:"as";s:24:"アストゥリアス語";s:3:"ast";s:15:"アヴァル語";s:2:"av";s:15:"アイマラ語";s:2:"ay";s:27:"アゼルバイジャン語";s:2:"az";s:18:"アルピタン語";s:3:"frp";s:21:"アイルランド語";s:2:"ga";s:18:"アルメニア語";s:2:"hy";s:21:"アイスランド語";s:2:"is";s:6:"漢文";s:12:"zh-classical";s:21:"アルーマニア語";s:3:"rup";s:18:"アルバニア語";s:2:"sq";s:15:"アチョリ語";s:3:"ach";s:12:"アゲム語";s:3:"agq";s:9:"アス語";s:3:"asa";s:18:"アメリカ英語";s:5:"en-us";s:18:"アダングメ語";s:3:"ada";s:15:"アディゲ語";s:3:"ady";s:18:"アヴェスタ語";s:2:"ae";s:18:"アフリヒリ語";s:3:"afh";s:12:"アイヌ語";s:3:"ain";s:15:"アッカド語";s:3:"akk";s:15:"アレウト語";s:3:"ale";s:18:"アラパホー語";s:3:"arp";s:15:"アラワク語";s:3:"arw";s:18:"アワディー語";s:3:"awa";s:15:"アコース語";s:3:"bss";s:18:"アタパスカ語";s:3:"hup";s:36:"アラビア語チュニジア方言";s:3:"aeb";s:15:"アラバマ語";s:3:"akz";s:15:"アラオナ語";s:3:"aro";s:18:"アメリカ手話";s:3:"ase";s:18:"アオ・ナガ語";s:3:"njo";}i:304;a:50:{s:15:"აფარი";s:2:"aa";s:24:"აფხაზური";s:2:"ab";s:21:"აჩეხური";s:3:"ace";s:30:"აფრიკაანსი";s:2:"af";s:15:"აკანი";s:2:"ak";s:24:"ამჰარული";s:2:"am";s:27:"არაგონული";s:2:"an";s:18:"ანგიკა";s:3:"anp";s:21:"არაბული";s:2:"ar";s:24:"არამეული";s:3:"arc";s:21:"ასამური";s:2:"as";s:27:"ასტურიული";s:3:"ast";s:18:"აიმარა";s:2:"ay";s:39:"აზერბაიჯანული";s:2:"az";s:55:"ავსტრიული გერმანული";s:5:"de-at";s:30:"İsveçrə yüksək almancası";s:5:"de-ch";s:28:"İsviçre yüksek almancası";s:5:"de-ch";s:10:"İngilizce";s:2:"en";s:21:"İngiliz İngilizcesi";s:5:"en-gb";s:11:"İspanyolca";s:2:"es";s:10:"İrlandaca";s:2:"ga";s:16:"İskoç gal dili";s:2:"gd";s:21:"İsveçrə almancası";s:3:"gsw";s:20:"İsviçre almancası";s:3:"gsw";s:9:"İbranice";s:2:"he";s:9:"İbo dili";s:2:"ig";s:10:"İnguşça";s:3:"inh";s:10:"İzlandaca";s:2:"is";s:10:"İtalyanca";s:2:"it";s:24:"ალბანური";s:2:"sq";s:10:"İsveççe";s:2:"sv";s:15:"აჩოლი";s:3:"ach";s:15:"აღემი";s:3:"agq";s:9:"ასუ";s:3:"asa";s:9:"벰바어";s:3:"bem";s:61:"ავსტრალიური ინგლისური";s:5:"en-au";s:55:"ამერიკული ინგლისური";s:5:"en-us";s:24:"İsveçrə fransızcası";s:5:"fr-ch";s:23:"İsviçre fransızcası";s:5:"fr-ch";s:21:"ადანგმე";s:3:"ada";s:24:"ადიღეური";s:3:"ady";s:24:"ავესტური";s:2:"ae";s:21:"აინუური";s:3:"ain";s:21:"აქადური";s:3:"akk";s:24:"ალეუტური";s:3:"ale";s:21:"არაპაჰო";s:3:"arp";s:21:"არავაკი";s:3:"arw";s:15:"ავადი";s:3:"awa";s:54:"აღმოსავლეთფრიზიული";s:3:"frs";s:13:"İngriya dili";s:3:"izh";}i:39;a:15:{s:33:"ភាសាអាហ្វារ";s:2:"aa";s:42:"ភាសាអារ៉ាហ្គោន";s:2:"an";s:36:"ភាសាអីម៉ារ៉ា";s:2:"ay";s:30:"ភាសាប៊ូតាន";s:2:"dz";s:15:"ភឺសៀន";s:2:"fa";s:38:"ភាសាហ្កែលិគ (gd)";s:2:"gd";s:27:"ភាសាខ្មែរ";s:2:"km";s:12:"ភូមា";s:2:"my";s:30:"ភាសាន័រវែស";s:2:"no";s:30:"ភាសាសាមូអា";s:2:"sm";s:33:"ភាសាយីឌីហ្ស";s:2:"yi";s:21:"ភាសាចួង";s:2:"za";s:36:"ភាសាម៉ុលដាវី";s:5:"ro-md";s:6:"Џиз";s:3:"gez";s:39:"ភាសាអាវែស្តង់";s:2:"ae";}i:205;a:32:{s:15:"ಅಫಾರ್";s:2:"aa";s:30:"ಅಬ್ಖಾಜಿಯನ್";s:2:"ab";s:21:"ಅಛಿನೀಸ್";s:3:"ace";s:15:"ಅಕಾನ್";s:2:"ak";s:21:"ಅಂಹರಿಕ್";s:2:"am";s:24:"ಅರಗೊನೀಸ್";s:2:"an";s:21:"ಅರೇಬಿಕ್";s:2:"ar";s:21:"ಅರಾಮಿಕ್";s:3:"arc";s:27:"ಅಸ್ಸಾಮೀಸ್";s:2:"as";s:18:"ಅವರಿಕ್";s:2:"av";s:21:"ಅಯ್ಮಾರಾ";s:2:"ay";s:33:"ಅಜೆರ್ಬೈಜಾನಿ";s:2:"az";s:43:"ಅಪ್ಪರ್ ಸರ್ಬಿಯನ್";s:3:"hsb";s:30:"ಅರ್ಮೇನಿಯನ್";s:2:"hy";s:9:"Íogbóis";s:2:"ig";s:11:"Íoslainnis";s:2:"is";s:30:"ಅರೋಮಾನಿಯನ್";s:3:"rup";s:30:"ಅಲ್ಬೇನಿಯನ್";s:2:"sq";s:15:"ಅಕೋಲಿ";s:3:"ach";s:15:"ಅಘೆಮ್";s:3:"agq";s:9:"ಅಸು";s:3:"asa";s:66:"ಅಪರಿಚಿತ ಅಥವಾ ಅಮಾನ್ಯ ಭಾಷೆ";s:3:"und";s:49:"ಅಮೆರಿಕನ್ ಇಂಗ್ಲೀಷ್";s:5:"en-us";s:24:"ಅಡಂಗ್‌ಮೆ";s:3:"ada";s:15:"ಅಡೈಘೆ";s:3:"ady";s:24:"ಅವೆಸ್ಟನ್";s:2:"ae";s:30:"ಅಕ್ಕಾಡಿಯನ್";s:3:"akk";s:21:"ಅಲೆಯುಟ್";s:3:"ale";s:18:"ಅರಪಾಹೋ";s:3:"arp";s:21:"ಅರಾವಾಕ್";s:3:"arw";s:12:"ಅವಧಿ";s:3:"awa";s:18:"ಅಟ್ಸಮ್";s:3:"cch";}i:500;a:72:{s:12:"아파르어";s:2:"aa";s:9:"아체어";s:3:"ace";s:18:"아프리칸스어";s:2:"af";s:9:"아칸어";s:2:"ak";s:12:"아라곤어";s:2:"an";s:9:"아랍어";s:2:"ar";s:9:"아람어";s:3:"arc";s:15:"아라우칸어";s:3:"arn";s:9:"아샘어";s:2:"as";s:18:"아스투리아어";s:3:"ast";s:12:"아바릭어";s:2:"av";s:15:"아이마라어";s:2:"ay";s:21:"아제르바이잔어";s:2:"az";s:9:"富拉文";s:2:"ff";s:15:"아일랜드어";s:2:"ga";s:12:"아이티어";s:2:"ht";s:18:"아르메니아어";s:2:"hy";s:18:"아이슬란드어";s:2:"is";s:12:"לויבאן";s:3:"jbo";s:16:"לאזשבאָן";s:3:"jbo";s:12:"לטינית";s:2:"la";s:16:"לאטייניש";s:2:"la";s:10:"לדינו";s:3:"lad";s:14:"לאַדינא";s:3:"lad";s:22:"לוקסמבורגית";s:2:"lb";s:24:"לוקסעמבורגיש";s:2:"lb";s:10:"לזגית";s:3:"lez";s:18:"לימבורגיש";s:2:"li";s:12:"ליוויש";s:3:"liv";s:12:"לינגלה";s:2:"ln";s:8:"לאית";s:2:"lo";s:8:"לאַא";s:2:"lo";s:8:"לוזי";s:3:"loz";s:12:"ליטאית";s:2:"lt";s:14:"ליטוויש";s:2:"lt";s:10:"לושאי";s:3:"lus";s:10:"לטבית";s:2:"lv";s:10:"לעטיש";s:2:"lv";s:18:"ピカルディ語";s:3:"pcd";s:18:"ピエモンテ語";s:3:"pms";s:18:"아로마니아어";s:3:"rup";s:23:"לאפית צפונית";s:2:"se";s:12:"维吾尔文";s:2:"ug";s:12:"아콜리어";s:3:"ach";s:12:"아그햄어";s:3:"agq";s:9:"아수어";s:3:"asa";s:10:"לאנגי";s:3:"lag";s:10:"לקוטה";s:3:"lkt";s:19:"לובה-קטנגה";s:2:"lu";s:22:"לובה, לולואה";s:3:"lua";s:8:"לואו";s:3:"luo";s:8:"לויה";s:3:"luy";s:17:"לולה סאמי";s:3:"smj";s:26:"ללא תוכן לשוני";s:3:"zxx";s:12:"아당메어";s:3:"ada";s:12:"아닥헤어";s:3:"ady";s:15:"아베스타어";s:2:"ae";s:18:"아프리히리어";s:3:"afh";s:12:"아이누어";s:3:"ain";s:12:"아카드어";s:3:"akk";s:15:"아라파호어";s:3:"arp";s:15:"아라와크어";s:3:"arw";s:12:"아와히어";s:3:"awa";s:12:"아쿠즈어";s:3:"bss";s:9:"아삼어";s:3:"cch";s:8:"לנדה";s:3:"lah";s:8:"למבה";s:3:"lam";s:14:"לואיסנו";s:3:"lui";s:10:"לונדה";s:3:"lun";s:23:"아일랜드어, 중세";s:3:"mga";s:20:"아일랜드, 고대";s:3:"sga";s:9:"富特文";s:3:"bfd";}i:757;a:72:{s:12:"ອະຟາ";s:2:"aa";s:24:"ອາຟຣິການ";s:2:"af";s:15:"ອາການ";s:2:"ak";s:21:"ອຳຮາຣິກ";s:2:"am";s:30:"ອາຣາໂກເນັດ";s:2:"an";s:33:"ອັງກິດໂບຮານ";s:3:"ang";s:15:"ອາຣັບ";s:2:"ar";s:21:"ອາລາມິກ";s:3:"arc";s:30:"ອາຣົວຄານຽນ";s:3:"arn";s:24:"ອັສຊາມີສ";s:2:"as";s:24:"ອັສຕູຮຽນ";s:3:"ast";s:21:"ອາວາຣິກ";s:2:"av";s:21:"ອາຍມາລາ";s:2:"ay";s:33:"ອາເຊີໄບຈານິ";s:2:"az";s:40:"ອອສຕຣຽນ ເຈີແມນ";s:5:"de-at";s:12:"ອິວາ";s:2:"ee";s:18:"ອັງກິດ";s:2:"en";s:42:"ອັງກິດ (ເຄເນດຽນ)";s:5:"en-ca";s:42:"ອັງກິດ (ບຣິດທິຊ)";s:5:"en-gb";s:21:"ອາເມນຽນ";s:2:"hy";s:36:"ອິນເຕີລິງລົວ";s:2:"ia";s:30:"ອິນໂດເນຊຽນ";s:2:"id";s:36:"ອິນເຕີລິງກຣີ";s:2:"ie";s:15:"ອິກໂບ";s:2:"ig";s:24:"ອິນນູປຽກ";s:2:"ik";s:18:"ອິນກັຊ";s:3:"inh";s:12:"ອີໂດ";s:2:"io";s:21:"ອິຕາລຽນ";s:2:"it";s:33:"ອິນນຸກຕິຕັດ";s:2:"iu";s:12:"ንያንጃ";s:2:"ny";s:27:"ອັອກຊີຕານ";s:2:"oc";s:24:"ອອດເຊຕິກ";s:2:"os";s:27:"ອາໂຣມານຽນ";s:3:"rup";s:24:"ອານບານຽນ";s:2:"sq";s:50:"ອັດລາສ ທາມາຊີກ ກາງ";s:3:"tzm";s:18:"ອຸດມັດ";s:3:"udm";s:18:"ອຸຍເຄີ";s:2:"ug";s:18:"ອູຣະດູ";s:2:"ur";s:18:"ອຸສເບກ";s:2:"uz";s:18:"ອາໂຄລີ";s:3:"ach";s:18:"ອາເຮັມ";s:3:"agq";s:66:"ອາຣາບິກມາດຕະຖານສະໄໝໃໝ່";s:6:"ar-001";s:12:"ອາຊູ";s:3:"asa";s:15:"ອີຟິກ";s:3:"efi";s:30:"ອີຢິບບູຮານ";s:3:"egy";s:12:"ንጎባኛ";s:3:"jgo";s:9:"梅鲁文";s:3:"mer";s:9:"梅魯文";s:3:"mer";s:6:"梅塔";s:3:"mgo";s:6:"ንኮ";s:3:"nqo";s:15:"ອາຣວາ";s:3:"rwk";s:30:"ອີນາຣິຊາມິ";s:3:"smn";s:48:"ອັງກິດ (ອອສເຕຣລຽນ)";s:5:"en-au";s:48:"ອັງກິດ (ອາເມລິກັນ)";s:5:"en-us";s:21:"ອາແດງມີ";s:3:"ada";s:27:"ອາເວັສແຕນ";s:2:"ae";s:24:"ອັກກາດຽມ";s:3:"akk";s:18:"ອາເລີດ";s:3:"ale";s:24:"ອານໄຕໃຕ້";s:3:"alt";s:24:"ອາຣາປາໂຮ";s:3:"arp";s:21:"ອາຣາແວກ";s:3:"arw";s:18:"ອາວາຮິ";s:3:"awa";s:15:"ອາຄຸດ";s:3:"bss";s:18:"ອາດແຊມ";s:3:"cch";s:21:"ອີກາຈັກ";s:3:"eka";s:18:"ອີລາໄມ";s:3:"elx";s:27:"ອັງກິດກາງ";s:3:"enm";s:21:"ອີວອນດູ";s:3:"ewo";s:30:"ອີຣິຊເກົ່າ";s:3:"sga";s:25:"ອາລັບ-ຊາດ";s:3:"shu";s:21:"ອຳບັນດູ";s:3:"umb";s:12:"梅敦巴文";s:3:"byv";}i:333;a:40:{s:12:"അഫാർ";s:2:"aa";s:30:"അബ്‌ഖാസിയൻ";s:2:"ab";s:21:"അചിനീസ്";s:3:"ace";s:15:"അകാൻ‌";s:2:"ak";s:24:"അംഹാരിക്";s:2:"am";s:24:"അരഗോണീസ്";s:2:"an";s:18:"അറബിക്";s:2:"ar";s:24:"അരമായഭാഷ";s:3:"arc";s:21:"അവാരിക്";s:2:"av";s:18:"അയ്മാറ";s:2:"ay";s:27:"അസർബൈജാനി";s:2:"az";s:15:"白俄罗斯文";s:2:"be";s:15:"白俄羅斯文";s:2:"be";s:9:"झेक";s:2:"cs";s:9:"종카어";s:2:"dz";s:18:"झोंगखा";s:2:"dz";s:37:"അപ്പർ സോർബിയൻ";s:3:"hsb";s:24:"അർമേനിയൻ";s:2:"hy";s:24:"അൽബേനിയൻ";s:2:"sq";s:15:"झुआंग";s:2:"za";s:12:"झुलू";s:2:"zu";s:15:"അകോലി";s:3:"ach";s:18:"झार्मा";s:3:"dje";s:28:"അജ്ഞാത ഭാഷ";s:3:"und";s:52:"അമേരിക്കൻ ഇംഗ്ലീഷ്";s:5:"en-us";s:24:"അഡാങ്ഗമി";s:3:"ada";s:15:"അഡൈഗേ";s:3:"ady";s:27:"അവസ്റ്റാൻ";s:2:"ae";s:15:"അയിനു";s:3:"ain";s:27:"അക്കാഡിയൻ";s:3:"akk";s:21:"അലൈട്ട്";s:3:"ale";s:18:"അരപാഹോ";s:3:"arp";s:18:"അറാവക്";s:3:"arw";s:12:"അവധി";s:3:"awa";s:21:"അക്കൂസ്";s:3:"bss";s:24:"അറ്റ്സാം";s:3:"cch";s:21:"झेपोटेक";s:3:"zap";s:24:"झेनान्गा";s:3:"zen";s:12:"झुनी";s:3:"zun";s:12:"झाझा";s:3:"zza";}i:821;a:9:{s:15:"ଅଫାର୍";s:2:"aa";s:12:"ଅକନ୍";s:2:"ak";s:18:"ଅଁଗୀକା";s:3:"anp";s:49:"ଅଷ୍ଟ୍ରିଆନ୍ ଜର୍ମାନ";s:5:"de-at";s:15:"ዕብራስጥ";s:2:"he";s:48:"ଅଜଣା ଏବଂ ଅବୈଧ ଭାଷା";s:3:"und";s:55:"ଅଷ୍ଟ୍ରେଲିଆନ୍ ଇଁରାଜୀ";s:5:"en-au";s:18:"ଅଦ୍ୟଘେ";s:3:"ady";s:21:"ଅବେସ୍ତନ";s:2:"ae";}i:40;a:43:{s:14:"Афарски";s:2:"aa";s:12:"Аҧсшәа";s:2:"ab";s:18:"Абхаастыы";s:2:"ab";s:16:"Ачинески";s:3:"ace";s:30:"Аппырыкааныстыы";s:2:"af";s:26:"Арагонежански";s:2:"an";s:12:"Ангика";s:3:"anp";s:16:"Араабтыы";s:2:"ar";s:16:"Армајски";s:3:"arc";s:20:"Астуријски";s:3:"ast";s:14:"Аварски";s:2:"av";s:12:"Аймара";s:2:"ay";s:12:"Ајмара";s:2:"ay";s:32:"Адьырбайдьаанныы";s:2:"az";s:24:"Аҥылычаанныы";s:2:"en";s:14:"Англисӣ";s:2:"en";s:15:"갈리시아어";s:2:"gl";s:16:"Адыгэбзэ";s:8:"kbd-cyrl";s:36:"ម៉ាឡាហ្គាស៊ី";s:2:"mg";s:15:"ម៉ោរី";s:2:"mi";s:27:"ម៉ាសេដូនី";s:2:"mk";s:21:"មលយាល័ម";s:2:"ml";s:30:"ម៉ុងហ្គោលី";s:2:"mn";s:15:"មរាធិ";s:2:"mr";s:24:"ម៉ាឡេស៊ី";s:2:"ms";s:21:"ម៉ាល់តា";s:2:"mt";s:22:"Ароманијски";s:3:"rup";s:26:"Албаанскайдыы";s:2:"sq";s:10:"Аколи";s:3:"ach";s:29:"(atorsinnaanngitsoq oqaatsit)";s:3:"und";s:45:"មិន​ស្គាល់​ភាសា";s:3:"und";s:21:"ម៉ារ៉ុក";s:3:"zgh";s:22:"Адангмејски";s:3:"ada";s:18:"Адигејски";s:3:"ady";s:20:"Авестански";s:2:"ae";s:16:"Африхили";s:3:"afh";s:8:"Аину";s:3:"ain";s:18:"Акадијски";s:3:"akk";s:8:"Аљут";s:3:"ale";s:14:"Арапахо";s:3:"arp";s:12:"Аравак";s:3:"arw";s:12:"Авадхи";s:3:"awa";s:16:"Атсамски";s:3:"cch";}i:949;a:31:{s:18:"அஃபார்";s:2:"aa";s:33:"அப்காஜியான்";s:2:"ab";s:15:"அகான்";s:2:"ak";s:27:"அம்ஹாரிக்";s:2:"am";s:21:"அங்கிகா";s:3:"anp";s:18:"அரபிக்";s:2:"ar";s:21:"அராமைக்";s:3:"arc";s:21:"அஸ்ஸாமி";s:2:"as";s:30:"அஸ்துரியன்";s:3:"ast";s:21:"அவேரிக்";s:2:"av";s:18:"அய்மரா";s:2:"ay";s:30:"அஸர்பைஜானி";s:2:"az";s:49:"அப்பர் சோர்பியான்";s:3:"hsb";s:9:"ꏝꀪꉙ";s:2:"ja";s:30:"அரோமானியன்";s:3:"rup";s:30:"அல்பேனியன்";s:2:"sq";s:15:"அகோலி";s:3:"ach";s:15:"அகெம்";s:3:"agq";s:9:"அசு";s:3:"asa";s:43:"அறியப்படாத மொழி";s:3:"und";s:49:"அமெரிக்க ஆங்கிலம்";s:5:"en-us";s:21:"அதாங்மே";s:3:"ada";s:12:"அதகே";s:3:"ady";s:27:"அவெஸ்தான்";s:2:"ae";s:30:"அஃப்ரிஹிலி";s:3:"afh";s:30:"அக்கேதியன்";s:3:"akk";s:15:"அலூட்";s:3:"ale";s:15:"அரபஹோ";s:3:"arp";s:21:"அராவாக்";s:3:"arw";s:12:"அவதி";s:3:"awa";s:27:"அம்பொண்டு";s:3:"umb";}i:77;a:66:{s:15:"అఫార్";s:2:"aa";s:30:"అబ్ఖాజియన్";s:2:"ab";s:15:"అకాన్";s:2:"ak";s:27:"అమ్హారిక్";s:2:"am";s:24:"అరగోనిస్";s:2:"an";s:18:"అరబిక్";s:2:"ar";s:21:"అరామేక్";s:3:"arc";s:30:"అరౌకేనియన్";s:3:"arn";s:33:"египетски арапски";s:3:"arz";s:21:"అస్సామీ";s:2:"as";s:33:"అస్టురియాన్";s:3:"ast";s:21:"అవారిక్";s:2:"av";s:30:"అజర్బైజాని";s:2:"az";s:6:"еве";s:2:"ee";s:22:"емилијански";s:3:"egl";s:16:"енглески";s:2:"en";s:18:"есперанто";s:2:"eo";s:16:"естонски";s:2:"et";s:16:"естойнаг";s:2:"et";s:18:"естонська";s:2:"et";s:28:"екстремадурски";s:3:"ext";s:10:"еврей";s:2:"he";s:46:"అప్పర్ సోర్బియన్";s:3:"hsb";s:16:"ерменски";s:2:"hy";s:10:"ерзиа";s:3:"myv";s:18:"ерзјански";s:3:"myv";s:8:"ерзя";s:3:"myv";s:30:"అల్బేనియన్";s:2:"sq";s:15:"అకోలి";s:3:"ach";s:15:"అగేమ్";s:3:"agq";s:9:"అసు";s:3:"asa";s:8:"ембу";s:3:"ebu";s:8:"ефик";s:3:"efi";s:8:"ефік";s:3:"efi";s:18:"египетски";s:3:"egy";s:49:"అమెరికన్ ఇంగ్లీష్";s:5:"en-us";s:27:"европын испани";s:5:"es-es";s:35:"европӕйаг англисаг";s:5:"es-es";s:41:"европейский испанский";s:5:"es-es";s:44:"еуропалық португал тілі";s:5:"pt-pt";s:31:"европын португал";s:5:"pt-pt";s:41:"европӕйаг полтугалиаг";s:5:"pt-pt";s:49:"европейский португальский";s:5:"pt-pt";s:24:"అడాంగ్మే";s:3:"ada";s:27:"అడిగాబ్జే";s:3:"ady";s:27:"అవేస్టాన్";s:2:"ae";s:27:"అఫ్రిహిలి";s:3:"afh";s:33:"అక్కాడియాన్";s:3:"akk";s:21:"అలియుట్";s:3:"ale";s:21:"అరాపాహో";s:3:"arp";s:21:"అరావాక్";s:3:"arw";s:12:"అవధి";s:3:"awa";s:21:"అట్సామ్";s:3:"cch";s:12:"екажук";s:3:"eka";s:12:"екаџук";s:3:"eka";s:14:"екаджук";s:3:"eka";s:18:"еламитски";s:3:"elx";s:14:"еламски";s:3:"elx";s:16:"еламська";s:3:"elx";s:12:"евондо";s:3:"ewo";s:35:"еврейско-персийски";s:3:"jpr";s:32:"еврејскоперсиски";s:3:"jpr";s:37:"еврейско-персидский";s:3:"jpr";s:31:"еврейско-арабски";s:3:"jrb";s:30:"еврејскоарапски";s:3:"jrb";s:33:"еврейско-арабский";s:3:"jrb";}i:629;a:75:{s:18:"อะฟาร์";s:2:"aa";s:18:"อับคาซ";s:2:"ab";s:21:"อาเจะห์";s:3:"ace";s:15:"อาคัน";s:2:"ak";s:21:"อัมฮารา";s:2:"am";s:21:"อารากอน";s:2:"an";s:33:"อังกฤษโบราณ";s:3:"ang";s:21:"อังคิกา";s:3:"anp";s:18:"อาหรับ";s:2:"ar";s:24:"อราเมอิก";s:3:"arc";s:36:"อาเราคาเนียน";s:3:"arn";s:45:"อาหรับแอลจีเรีย";s:3:"arq";s:42:"อาหรับโมร็อกโก";s:3:"ary";s:66:"อาหรับพื้นเมืองอียิปต์";s:3:"arz";s:18:"อัสสัม";s:2:"as";s:30:"อัสตูเรียส";s:3:"ast";s:18:"อาวาร์";s:2:"av";s:36:"อาเซอร์ไบจาน";s:2:"az";s:45:"อาเซอร์ไบจานใต้";s:3:"azb";s:18:"อังกฤษ";s:2:"en";s:39:"อังกฤษ - แคนาดา";s:5:"en-ca";s:60:"อังกฤษ - สหราชอาณาจักร";s:5:"en-gb";s:24:"อาร์พิตา";s:3:"frp";s:12:"ሕንደኛ";s:2:"hi";s:30:"อาร์เมเนีย";s:2:"hy";s:42:"อินเตอร์ลิงกัว";s:2:"ia";s:33:"อินโดนีเชีย";s:2:"id";s:42:"อินเตอร์ลิงกิว";s:2:"ie";s:15:"อิกโบ";s:2:"ig";s:27:"อีนูเปียก";s:2:"ik";s:18:"อีโลโก";s:3:"ilo";s:18:"อินกุช";s:3:"inh";s:12:"อีโด";s:2:"io";s:18:"อิตาลี";s:2:"it";s:30:"อินุกติตุต";s:2:"iu";s:54:"อังกฤษคลีโอลจาเมกา";s:3:"jam";s:27:"อ็อกซิตัน";s:2:"oc";s:27:"ออสเซเตีย";s:2:"os";s:33:"อาโรมาเนียน";s:3:"rup";s:24:"อุดมูร์ต";s:3:"udm";s:18:"อุยกัว";s:2:"ug";s:15:"อูรดู";s:2:"ur";s:18:"อุซเบก";s:2:"uz";s:18:"อาโคลิ";s:3:"ach";s:18:"อักเฮม";s:3:"agq";s:63:"อาหรับมาตรฐานสมัยใหม่";s:6:"ar-001";s:12:"อาซู";s:3:"asa";s:15:"อีฟิก";s:3:"efi";s:36:"อียิปต์โบราณ";s:3:"egy";s:24:"อึนกอมบา";s:3:"jgo";s:51:"อังกฤษ - ออสเตรเลีย";s:5:"en-au";s:45:"อังกฤษ - อเมริกัน";s:5:"en-us";s:21:"อาแดงมี";s:3:"ada";s:21:"อะดืยเก";s:3:"ady";s:18:"อเวสตะ";s:2:"ae";s:18:"อักกาด";s:3:"akk";s:21:"อาลิวต์";s:3:"ale";s:24:"อัลไตใต้";s:3:"alt";s:24:"อาราปาโฮ";s:3:"arp";s:21:"อาราวัก";s:3:"arw";s:12:"อวธี";s:3:"awa";s:18:"อาโคซี";s:3:"bss";s:21:"อีกาจุก";s:3:"eka";s:24:"อีลาไมต์";s:3:"elx";s:30:"อังกฤษกลาง";s:3:"enm";s:21:"อีวันโด";s:3:"ewo";s:15:"อิบาน";s:3:"iba";s:48:"อราเมอิกซามาเรีย";s:3:"sam";s:28:"อาหรับ-ชาด";s:3:"shu";s:24:"อุมบุนดู";s:3:"umb";s:42:"อาหรับตูนิเซีย";s:3:"aeb";s:21:"อาเรานา";s:3:"aro";s:24:"อิบิบิโอ";s:3:"ibb";s:27:"อินเกรียน";s:3:"izh";s:24:"อ๋าวนากา";s:3:"njo";}i:108;a:1324:{s:16:"lea fakaʻafāla";s:2:"aa";s:18:"lea fakaʻapakasia";s:2:"ab";s:16:"lea fakaʻatisē";s:3:"ace";s:19:"lea fakaʻafilikana";s:2:"af";s:9:"lu-akaani";s:2:"ak";s:15:"lea fakaʻakani";s:2:"ak";s:24:"lea fakaʻalapēnia-keki";s:3:"aln";s:11:"lu-amhariki";s:2:"am";s:9:"liamariki";s:2:"am";s:17:"lea fakaʻameliki";s:2:"am";s:17:"lea fakaʻalakoni";s:2:"an";s:24:"lea fakapālangi-motuʻa";s:3:"ang";s:16:"lea fakaʻangika";s:3:"anp";s:9:"larabukan";s:2:"ar";s:7:"larabci";s:2:"ar";s:8:"luwarabu";s:2:"ar";s:7:"lialabo";s:2:"ar";s:16:"lea fakaʻalepea";s:2:"ar";s:18:"lea fakaʻalāmiti";s:3:"arc";s:14:"lea fakamapuse";s:3:"arn";s:26:"lea fakaʻalepea-ʻaisilia";s:3:"arq";s:23:"lea fakaʻalepea-moloko";s:3:"ary";s:26:"lea fakaʻalepea-ʻisipite";s:3:"arz";s:16:"lea fakaʻasamia";s:2:"as";s:19:"lea fakaʻasitūlia";s:3:"ast";s:17:"lea fakaʻavaliki";s:2:"av";s:14:"lea fakakotava";s:3:"avk";s:16:"lea fakaʻaimala";s:2:"ay";s:20:"lea fakaʻasapaisani";s:2:"az";s:26:"lea fakaʻasapaisani-tonga";s:3:"azb";s:16:"lea fakapasikili";s:2:"ba";s:16:"lea fakapavālia";s:3:"bar";s:21:"lea fakatōpe-pēteki";s:3:"bbc";s:10:"lubelarusi";s:2:"be";s:12:"libyelorisí";s:2:"be";s:16:"lea fakapelalusi";s:2:"be";s:12:"lubulugariya";s:2:"bg";s:10:"libiligali";s:2:"bg";s:17:"lea fakapulukalia";s:2:"bg";s:16:"lea fakaposipuli";s:3:"bho";s:16:"lea fakapisilama";s:2:"bi";s:16:"lea fakapanisali";s:3:"bjn";s:16:"lea fakapamipala";s:2:"bm";s:9:"lubengali";s:2:"bn";s:9:"libengali";s:2:"bn";s:17:"lea fakapengikali";s:2:"bn";s:14:"lea fakatipeti";s:2:"bo";s:19:"lea fakapisinupilia";s:3:"bpy";s:18:"lea fakapakitiāli";s:3:"bqi";s:8:"llydaweg";s:2:"br";s:16:"lea fakapeletoni";s:2:"br";s:15:"lea fakapalahui";s:3:"brh";s:15:"lea fakaposinia";s:2:"bs";s:14:"lea fakapukisi";s:3:"bug";s:16:"lea fakakatalani";s:2:"ca";s:12:"lea fakasese";s:2:"ce";s:15:"lea fakasepuano";s:3:"ceb";s:14:"lea fakakamolo";s:2:"ch";s:15:"lea fakasokitau";s:3:"cho";s:15:"lea fakaselokī";s:3:"chr";s:14:"lea fakaseiene";s:3:"chy";s:22:"lea fakakūtisi-solani";s:3:"ckb";s:15:"lea fakakōsika";s:2:"co";s:16:"lea fakakapiseno";s:3:"cps";s:13:"lea fakakelī";s:2:"cr";s:21:"lea fakatoake-kilimea";s:3:"crh";s:7:"luceeke";s:2:"cs";s:9:"litshekɛ";s:2:"cs";s:12:"lea fakaseki";s:2:"cs";s:16:"lea fakakasiupia";s:3:"csb";s:25:"lea fakasilavia-fakasiasi";s:2:"cu";s:14:"lea fakasuvasa";s:2:"cv";s:15:"lea fakauēlesi";s:2:"cy";s:19:"lea fakatenimaʻake";s:2:"da";s:7:"ludaaki";s:2:"de";s:8:"lialemá";s:2:"de";s:15:"lea fakasiamane";s:2:"de";s:20:"lialémani ya otrish";s:5:"de-at";s:27:"lea fakasiamane-ʻaositulia";s:5:"de-at";s:19:"lialémani ya swisi";s:5:"de-ch";s:30:"lea fakasiamane-hake-suisilani";s:5:"de-ch";s:11:"lae sorbies";s:3:"dsb";s:13:"lower sorbian";s:3:"dsb";s:15:"lužičkosrpski";s:3:"dsb";s:13:"lágsorbneska";s:3:"dsb";s:10:"lejassorbu";s:3:"dsb";s:10:"lavsorbisk";s:3:"dsb";s:11:"lågsorbisk";s:3:"dsb";s:12:"lågsorbiska";s:3:"dsb";s:19:"lea fakasōpia-hifo";s:3:"dsb";s:21:"lea fakatusuni-loloto";s:3:"dtp";s:14:"lea fakativehi";s:2:"dv";s:14:"lea fakaputeni";s:2:"dz";s:13:"lea fakaʻeue";s:2:"ee";s:16:"lea fakaʻemilia";s:3:"egl";s:19:"lugereeki/luyonaani";s:2:"el";s:8:"ligeleki";s:2:"el";s:14:"lea fakakalisi";s:2:"el";s:9:"lungereza";s:2:"en";s:13:"lingɛlɛ́sa";s:2:"en";s:16:"lea fakapālangi";s:2:"en";s:13:"linglänapük";s:2:"en";s:24:"lingɛlɛ́sa ya kanadá";s:5:"en-ca";s:24:"lea fakapālangi-kānata";s:5:"en-ca";s:33:"lingɛlɛ́sa ya ingɛlɛ́tɛlɛ";s:5:"en-gb";s:22:"lielbritānijas angļu";s:5:"en-gb";s:18:"lea fakapilitānia";s:5:"en-gb";s:21:"lea fakaʻesipulanito";s:2:"eo";s:9:"lusipanya";s:2:"es";s:9:"lisipanye";s:2:"es";s:17:"lea fakasipēnisi";s:2:"es";s:19:"lea fakaʻesitōnia";s:2:"et";s:15:"lea fakapāsiki";s:2:"eu";s:23:"lea fakaʻekisitematula";s:3:"ext";s:8:"luperusi";s:2:"fa";s:12:"lipelésanɛ";s:2:"fa";s:14:"lea fakapēsia";s:2:"fa";s:13:"lea fakafulā";s:2:"ff";s:16:"lea fakafinilani";s:2:"fi";s:26:"lea fakafinilani-tōnetale";s:3:"fit";s:12:"lea fakafisi";s:2:"fj";s:13:"lea fakafaloe";s:2:"fo";s:9:"lufalansa";s:2:"fr";s:12:"lifalansɛ́";s:2:"fr";s:17:"lea fakafalanisē";s:2:"fr";s:24:"lea fakafalanisē-kasuni";s:3:"frc";s:18:"lea fakaʻāpitano";s:3:"frp";s:23:"lea fakafilisia-tokelau";s:3:"frr";s:17:"lea fakafulilāni";s:3:"fur";s:13:"läänefriisi";s:2:"fy";s:12:"länsifriisi";s:2:"fy";s:22:"lea fakafilisia-hihifo";s:2:"fy";s:16:"lea fakaʻaelani";s:2:"ga";s:15:"lea fakakakausi";s:3:"gag";s:19:"lea fakasiaina-kani";s:3:"gan";s:15:"lea fakakaeliki";s:2:"gd";s:15:"lea fakakalisia";s:2:"gl";s:14:"lea fakakilaki";s:3:"glk";s:15:"lea fakakualani";s:2:"gn";s:14:"lea fakakotika";s:3:"got";s:19:"lea fakakalisimuʻa";s:3:"grc";s:11:"lialemaniki";s:3:"gsw";s:25:"lea fakasiamane-suisilani";s:3:"gsw";s:16:"lea fakakutalati";s:2:"gu";s:16:"lea fakamangikī";s:2:"gv";s:8:"luhawuza";s:2:"ha";s:13:"lea fakahausa";s:2:"ha";s:19:"lea fakasiaina-haka";s:3:"hak";s:16:"lea fakahauaiʻi";s:3:"haw";s:9:"liébeleo";s:2:"he";s:15:"lea fakahepelū";s:2:"he";s:7:"luhindu";s:2:"hi";s:7:"lihindi";s:2:"hi";s:15:"lea fakahinitī";s:2:"hi";s:20:"lea fakahihitī-fisi";s:3:"hif";s:19:"lea fakahilikainoni";s:3:"hil";s:17:"lea fakahili-motu";s:2:"ho";s:16:"lea fakakuloisia";s:2:"hr";s:19:"lea fakasōpia-hake";s:3:"hsb";s:13:"lea fakahaiti";s:2:"ht";s:9:"luhangare";s:2:"hu";s:8:"liongili";s:2:"hu";s:18:"lea fakahungakalia";s:2:"hu";s:17:"lea fakaʻāmenia";s:2:"hy";s:14:"lea fakahelelo";s:2:"hz";s:18:"lea fakavahaʻalea";s:2:"ia";s:12:"luyindonezya";s:2:"id";s:9:"lindonezi";s:2:"id";s:21:"lea fakaʻinitōnesia";s:2:"id";s:18:"lugha ya kisayansi";s:2:"ie";s:23:"lea fakavahaʻalingikē";s:2:"ie";s:6:"luyibo";s:2:"ig";s:16:"lea fakaʻikipō";s:2:"ig";s:19:"lea fakasisiuani-ī";s:2:"ii";s:18:"lea fakaʻinupiaki";s:2:"ik";s:15:"lea fakaʻiloko";s:3:"ilo";s:16:"lea fakaʻingusi";s:3:"inh";s:13:"lea fakaʻito";s:2:"io";s:18:"lea fakaʻaisilani";s:2:"is";s:8:"luyitale";s:2:"it";s:9:"litaliano";s:2:"it";s:16:"lea fakaʻītali";s:2:"it";s:21:"lea fakaʻinuketituti";s:2:"iu";s:8:"lujapani";s:2:"ja";s:7:"lizapɔ";s:2:"ja";s:15:"lea fakasiapani";s:2:"ja";s:24:"lea fakapālangi-samaika";s:3:"jam";s:6:"lojban";s:3:"jbo";s:12:"loğban dili";s:3:"jbo";s:7:"lojbani";s:3:"jbo";s:10:"lojbanisch";s:3:"jbo";s:10:"lodschbahn";s:3:"jbo";s:6:"loiban";s:3:"jbo";s:8:"ložbans";s:3:"jbo";s:16:"lea fakalosipani";s:3:"jbo";s:18:"lea fakaʻiutilani";s:3:"jut";s:10:"lunnajjava";s:2:"jv";s:6:"lizava";s:2:"jv";s:12:"lea fakasava";s:2:"jv";s:15:"lea fakaseōsia";s:2:"ka";s:21:"lea fakakala-kalipaki";s:3:"kaa";s:14:"lea fakakapile";s:3:"kab";s:18:"lea fakakapālitia";s:3:"kbd";s:16:"lea fakakongikō";s:2:"kg";s:14:"lea fakakouali";s:3:"khw";s:14:"lea fakakikuiu";s:2:"ki";s:21:"lea fakakilimanisikī";s:3:"kiu";s:16:"lea fakakuaniama";s:2:"kj";s:14:"lea fakakasaki";s:2:"kk";s:21:"lea fakakalaʻalisuti";s:2:"kl";s:5:"lukme";s:2:"km";s:10:"likambodza";s:2:"km";s:18:"lea fakakamipōtia";s:2:"km";s:14:"lea fakakanata";s:2:"kn";s:8:"lukoreya";s:2:"ko";s:8:"likoreya";s:2:"ko";s:14:"lea fakakōlea";s:2:"ko";s:22:"lea fakakomi-pelemiaki";s:3:"koi";s:14:"lea fakakanuli";s:2:"kr";s:23:"lea fakakalate-palakili";s:3:"krc";s:13:"lea fakakilio";s:3:"kri";s:17:"lea fakakinaraiā";s:3:"krj";s:17:"lea fakakāsimila";s:2:"ks";s:16:"lea fakakolongia";s:3:"ksh";s:15:"lea fakakulitī";s:2:"ku";s:12:"lea fakakomi";s:2:"kv";s:16:"lea fakakoniuali";s:2:"kw";s:15:"lea fakakīsisi";s:2:"ky";s:6:"latina";s:2:"la";s:5:"latyn";s:2:"la";s:7:"llatín";s:2:"la";s:6:"latın";s:2:"la";s:5:"latin";s:2:"la";s:8:"latinski";s:2:"la";s:6:"llatí";s:2:"la";s:6:"lladin";s:2:"la";s:6:"latein";s:2:"la";s:6:"latino";s:2:"la";s:6:"latín";s:2:"la";s:6:"ladina";s:2:"la";s:6:"laidin";s:2:"la";s:8:"laideann";s:2:"la";s:6:"latiin";s:2:"la";s:7:"lākina";s:2:"la";s:7:"latína";s:2:"la";s:12:"latiinerisut";s:2:"la";s:11:"lateijnesch";s:2:"la";s:7:"latäin";s:2:"la";s:7:"lotynų";s:2:"la";s:8:"latīņu";s:2:"la";s:9:"latiensch";s:2:"la";s:6:"latijn";s:2:"la";s:5:"latim";s:2:"la";s:7:"latină";s:2:"la";s:13:"láhtengiella";s:2:"la";s:10:"latinčina";s:2:"la";s:12:"latinščina";s:2:"la";s:7:"laatiin";s:2:"la";s:9:"latinisht";s:2:"la";s:14:"lea fakalatina";s:2:"la";s:7:"latince";s:2:"la";s:8:"lotincha";s:2:"la";s:6:"ladino";s:3:"lad";s:10:"ladin dili";s:3:"lad";s:5:"ladí";s:3:"lad";s:11:"ladinština";s:3:"lad";s:7:"ladiino";s:3:"lad";s:5:"ladin";s:3:"lad";s:9:"laidínis";s:3:"lad";s:9:"ladínska";s:3:"lad";s:7:"ladinsk";s:3:"lad";s:9:"ladiensch";s:3:"lad";s:9:"ladyński";s:3:"lad";s:12:"ladinščina";s:3:"lad";s:14:"lea fakalatino";s:3:"lad";s:15:"lëtzebuergesch";s:2:"lb";s:10:"luxemburgs";s:2:"lb";s:13:"luxemburgués";s:2:"lb";s:11:"lüksemburq";s:2:"lb";s:13:"luksembourgeg";s:2:"lb";s:13:"luksemburški";s:2:"lb";s:13:"luxemburguès";s:2:"lb";s:14:"lucemburština";s:2:"lb";s:12:"lwcsembwrgeg";s:2:"lb";s:12:"luxembourgsk";s:2:"lb";s:13:"luxemburgisch";s:2:"lb";s:16:"luxemburgšćina";s:2:"lb";s:13:"laksembɔggbe";s:2:"lb";s:13:"luxembourgish";s:2:"lb";s:11:"luksemburga";s:2:"lb";s:10:"letseburgi";s:2:"lb";s:12:"luxenburgera";s:2:"lb";s:9:"luxemburg";s:2:"lb";s:13:"luxemburgiskt";s:2:"lb";s:14:"luxembourgeois";s:2:"lb";s:14:"lussemburghês";s:2:"lb";s:13:"lucsambuirgis";s:2:"lb";s:13:"lugsamburgais";s:2:"lb";s:10:"luxemburgi";s:2:"lb";s:10:"luksemburg";s:2:"lb";s:15:"lúxemborgíska";s:2:"lb";s:14:"lussemburghese";s:2:"lb";s:13:"luxemborjesch";s:2:"lb";s:18:"liuksemburgiečių";s:2:"lb";s:15:"luksemburgiešu";s:2:"lb";s:10:"luxembourg";s:2:"lb";s:12:"letżburgiż";s:2:"lb";s:11:"luxemburgsk";s:2:"lb";s:12:"luxemborgsch";s:2:"lb";s:12:"luksemburski";s:2:"lb";s:13:"luxemburguês";s:2:"lb";s:17:"luxemburgues simi";s:2:"lb";s:12:"luxemburgais";s:2:"lb";s:14:"luxemburgheză";s:2:"lb";s:17:"luxemburggagiella";s:2:"lb";s:13:"luxemburčina";s:2:"lb";s:16:"luksemburščina";s:2:"lb";s:13:"luksemburgase";s:2:"lb";s:13:"luxemburgiska";s:2:"lb";s:20:"lea fakalakisimipeki";s:2:"lb";s:13:"lüksemburgca";s:2:"lb";s:14:"lyuksemburgcha";s:2:"lb";s:9:"lezghianu";s:3:"lez";s:11:"ləzqi dili";s:3:"lez";s:5:"lezgi";s:3:"lez";s:7:"lezgian";s:3:"lez";s:8:"lesguià";s:3:"lez";s:12:"lezginština";s:3:"lez";s:7:"lezgheg";s:3:"lez";s:8:"lezghian";s:3:"lez";s:8:"lesgisch";s:3:"lez";s:10:"lezghiagbe";s:3:"lez";s:8:"lezgiano";s:3:"lez";s:5:"lesgi";s:3:"lez";s:8:"lezghien";s:3:"lez";s:7:"lezgysk";s:3:"lez";s:9:"lezgiški";s:3:"lez";s:4:"lezg";s:3:"lez";s:7:"lezghia";s:3:"lez";s:9:"lesgíska";s:3:"lez";s:8:"lesgesch";s:3:"lez";s:8:"lezginų";s:3:"lez";s:8:"lezgīnu";s:3:"lez";s:8:"leżgjan";s:3:"lez";s:8:"lezgisch";s:3:"lez";s:9:"lezgijski";s:3:"lez";s:9:"lezghiano";s:3:"lez";s:11:"lezginčina";s:3:"lez";s:13:"lezginščina";s:3:"lez";s:15:"lea fakalesikia";s:3:"lez";s:7:"lezgice";s:3:"lez";s:18:"lingua franca nova";s:3:"lfn";s:23:"lea fakakavakava-foʻou";s:3:"lfn";s:7:"luganda";s:2:"lg";s:9:"lugandais";s:2:"lg";s:14:"lea fakakanita";s:2:"lg";s:8:"limburgs";s:2:"li";s:11:"limburgués";s:2:"li";s:15:"limburqiş dili";s:2:"li";s:10:"limbourgeg";s:2:"li";s:10:"limburgiš";s:2:"li";s:11:"limburguès";s:2:"li";s:12:"limburština";s:2:"li";s:9:"limbwrgeg";s:2:"li";s:9:"limburgsk";s:2:"li";s:11:"limburgisch";s:2:"li";s:13:"limburšćina";s:2:"li";s:10:"limburgish";s:2:"li";s:8:"limburgi";s:2:"li";s:7:"limburg";s:2:"li";s:12:"limbourgeois";s:2:"li";s:11:"limburghês";s:2:"li";s:9:"limburgia";s:2:"li";s:13:"limbúrgíska";s:2:"li";s:10:"limburgese";s:2:"li";s:11:"limburgesch";s:2:"li";s:12:"limburgiešu";s:2:"li";s:10:"limburgisk";s:2:"li";s:10:"limborgsch";s:2:"li";s:12:"limburgijski";s:2:"li";s:11:"limburguês";s:2:"li";s:10:"limburgais";s:2:"li";s:12:"limburgheză";s:2:"li";s:11:"limburčina";s:2:"li";s:13:"limburščina";s:2:"li";s:11:"limburgiska";s:2:"li";s:19:"lea fakalimipūliki";s:2:"li";s:9:"limburgca";s:2:"li";s:6:"ligure";s:3:"lij";s:9:"ligurianu";s:3:"lij";s:8:"ligurieg";s:3:"lij";s:11:"ligurština";s:3:"lij";s:9:"ligurisch";s:3:"lij";s:8:"ligurian";s:3:"lij";s:7:"liguuri";s:3:"lij";s:10:"liogúiris";s:3:"lij";s:10:"liogùrais";s:3:"lij";s:7:"liguria";s:3:"lij";s:9:"liguresch";s:3:"lij";s:8:"ligūrų";s:3:"lij";s:10:"liguryjski";s:3:"lij";s:9:"liguriska";s:3:"lij";s:15:"lea fakalikulia";s:3:"lij";s:7:"ligurca";s:3:"lij";s:12:"līvõ kēļ";s:3:"liv";s:9:"livonianu";s:3:"liv";s:11:"livonština";s:3:"liv";s:7:"livisch";s:3:"liv";s:8:"livonian";s:3:"liv";s:5:"liivi";s:3:"liv";s:8:"livonien";s:3:"liv";s:10:"liovóinis";s:3:"liv";s:6:"livone";s:3:"liv";s:7:"livesch";s:3:"liv";s:6:"lyvių";s:3:"liv";s:5:"lijfs";s:3:"liv";s:6:"liwski";s:3:"liv";s:9:"livoniska";s:3:"liv";s:15:"lea fakalivonia";s:3:"liv";s:7:"livonca";s:3:"liv";s:8:"lumbaart";s:3:"lmo";s:8:"lombardu";s:3:"lmo";s:13:"lombardština";s:3:"lmo";s:9:"lombardeg";s:3:"lmo";s:11:"lombardisch";s:3:"lmo";s:7:"lombard";s:3:"lmo";s:8:"lombardi";s:3:"lmo";s:10:"lombairdis";s:3:"lmo";s:10:"lombardais";s:3:"lmo";s:8:"lombardo";s:3:"lmo";s:11:"lombardesch";s:3:"lmo";s:9:"lombardų";s:3:"lmo";s:10:"lombardzki";s:3:"lmo";s:11:"lombardiska";s:3:"lmo";s:17:"lea fakalomipāti";s:3:"lmo";s:10:"lombardça";s:3:"lmo";s:8:"lingála";s:2:"ln";s:8:"lingaals";s:2:"ln";s:7:"lingala";s:2:"ln";s:7:"linqala";s:2:"ln";s:12:"lingalština";s:2:"ln";s:11:"liongáilis";s:2:"ln";s:9:"lingjalla";s:2:"ln";s:9:"lingaljan";s:2:"ln";s:11:"lingalčina";s:2:"ln";s:10:"lingalisht";s:2:"ln";s:13:"lea lingikala";s:2:"ln";s:9:"lingalcha";s:2:"ln";s:3:"lao";s:2:"lo";s:8:"laosianu";s:2:"lo";s:4:"laos";s:2:"lo";s:6:"laoseg";s:2:"lo";s:7:"laoški";s:2:"lo";s:7:"laosià";s:2:"lo";s:9:"laoština";s:2:"lo";s:5:"laoeg";s:2:"lo";s:8:"laotisch";s:2:"lo";s:10:"laošćina";s:2:"lo";s:6:"laogbe";s:2:"lo";s:5:"laŭa";s:2:"lo";s:8:"laosiano";s:2:"lo";s:7:"laosera";s:2:"lo";s:8:"laotiskt";s:2:"lo";s:10:"laotiaansk";s:2:"lo";s:7:"laoisis";s:2:"lo";s:6:"làtho";s:2:"lo";s:8:"laotiano";s:2:"lo";s:8:"laozisch";s:2:"lo";s:8:"laothian";s:2:"lo";s:6:"laoski";s:2:"lo";s:6:"laoszi";s:2:"lo";s:4:"laó";s:2:"lo";s:10:"lahootesch";s:2:"lo";s:8:"laotesch";s:2:"lo";s:11:"laosiečių";s:2:"lo";s:9:"laosiešu";s:2:"lo";s:7:"laotisk";s:2:"lo";s:8:"laootsch";s:2:"lo";s:9:"laotiaans";s:2:"lo";s:10:"laotański";s:2:"lo";s:8:"lao simi";s:2:"lo";s:4:"laot";s:2:"lo";s:10:"laoțiană";s:2:"lo";s:9:"laogiella";s:2:"lo";s:10:"laoščina";s:2:"lo";s:8:"laosisht";s:2:"lo";s:8:"laotiska";s:2:"lo";s:11:"lea fakalau";s:2:"lo";s:5:"laoca";s:2:"lo";s:7:"laoscha";s:2:"lo";s:4:"lozi";s:3:"loz";s:9:"lozi dili";s:3:"loz";s:9:"lozština";s:3:"loz";s:7:"loziera";s:3:"loz";s:4:"lozu";s:3:"loz";s:5:"lożi";s:3:"loz";s:12:"lea fakalosi";s:3:"loz";s:9:"lietuvių";s:2:"lt";s:6:"litaus";s:2:"lt";s:7:"lituanu";s:2:"lt";s:5:"litva";s:2:"lt";s:8:"lituaneg";s:2:"lt";s:9:"litvanski";s:2:"lt";s:6:"lituà";s:2:"lt";s:11:"litevština";s:2:"lt";s:9:"lithwaneg";s:2:"lt";s:8:"litauisk";s:2:"lt";s:9:"litauisch";s:2:"lt";s:12:"litawšćina";s:2:"lt";s:12:"lithuaniagbe";s:2:"lt";s:10:"lithuanian";s:2:"lt";s:6:"litova";s:2:"lt";s:7:"lituano";s:2:"lt";s:5:"leedu";s:2:"lt";s:10:"lituaniera";s:2:"lt";s:7:"liettua";s:2:"lt";s:8:"litavskt";s:2:"lt";s:9:"lituanien";s:2:"lt";s:6:"lituan";s:2:"lt";s:7:"litouws";s:2:"lt";s:11:"liotuáinis";s:2:"lt";s:10:"liotuainis";s:2:"lt";s:13:"lituweniyanci";s:2:"lt";s:8:"litavski";s:2:"lt";s:7:"litván";s:2:"lt";s:8:"lithuano";s:2:"lt";s:7:"lituavi";s:2:"lt";s:11:"litháíska";s:2:"lt";s:14:"litauenimiutut";s:2:"lt";s:10:"littouesch";s:2:"lt";s:9:"litauesch";s:2:"lt";s:11:"lietuviešu";s:2:"lt";s:9:"lithuania";s:2:"lt";s:9:"litwanjan";s:2:"lt";s:8:"litausch";s:2:"lt";s:8:"litewski";s:2:"lt";s:12:"lituano simi";s:2:"lt";s:11:"lituaniană";s:2:"lt";s:14:"liettuvagiella";s:2:"lt";s:10:"litovčina";s:2:"lt";s:12:"litovščina";s:2:"lt";s:11:"lituwaanays";s:2:"lt";s:10:"lituanisht";s:2:"lt";s:9:"litauiska";s:2:"lt";s:16:"lea fakalituania";s:2:"lt";s:10:"litvanyaca";s:2:"lt";s:8:"litovcha";s:2:"lt";s:8:"latgaļu";s:3:"ltg";s:10:"latgalianu";s:3:"ltg";s:12:"latgalština";s:3:"ltg";s:9:"latgalieg";s:3:"ltg";s:12:"lettgallisch";s:3:"ltg";s:9:"latgalian";s:3:"ltg";s:8:"latgalli";s:3:"ltg";s:9:"latgalien";s:3:"ltg";s:8:"letgallo";s:3:"ltg";s:12:"lettgallesch";s:3:"ltg";s:9:"latgalių";s:3:"ltg";s:8:"letgaals";s:3:"ltg";s:12:"lettgalliska";s:3:"ltg";s:16:"lea fakalatakale";s:3:"ltg";s:8:"lushayca";s:3:"lus";s:6:"lushai";s:3:"lus";s:6:"lušai";s:3:"lus";s:8:"lwshaieg";s:3:"lus";s:14:"lushai-sprache";s:3:"lus";s:6:"lušei";s:3:"lus";s:5:"lusai";s:3:"lus";s:16:"lushai-schpraach";s:3:"lus";s:7:"lúsaí";s:3:"lus";s:14:"lushai-sprooch";s:3:"lus";s:7:"lušeju";s:3:"lus";s:5:"luxaj";s:3:"lus";s:6:"lusahi";s:3:"lus";s:12:"lea fakamiso";s:3:"lus";s:9:"latviešu";s:2:"lv";s:7:"letties";s:2:"lv";s:6:"letón";s:2:"lv";s:7:"latış";s:2:"lv";s:7:"latvieg";s:2:"lv";s:8:"letonski";s:2:"lv";s:5:"letó";s:2:"lv";s:10:"lotyština";s:2:"lv";s:7:"latfieg";s:2:"lv";s:7:"lettisk";s:2:"lv";s:8:"lettisch";s:2:"lv";s:11:"letišćina";s:2:"lv";s:9:"latviagbe";s:2:"lv";s:7:"latvian";s:2:"lv";s:5:"latva";s:2:"lv";s:5:"läti";s:2:"lv";s:9:"letoniera";s:2:"lv";s:6:"latvia";s:2:"lv";s:8:"latviskt";s:2:"lv";s:6:"letton";s:2:"lv";s:5:"leton";s:2:"lv";s:8:"letlâns";s:2:"lv";s:7:"laitvis";s:2:"lv";s:9:"laitbheis";s:2:"lv";s:10:"latbiyanci";s:2:"lv";s:9:"latvijski";s:2:"lv";s:4:"lett";s:2:"lv";s:5:"latvi";s:2:"lv";s:9:"lettneska";s:2:"lv";s:7:"lettone";s:2:"lv";s:14:"letlandimiutut";s:2:"lv";s:9:"lättesch";s:2:"lv";s:8:"lettesch";s:2:"lv";s:7:"latvių";s:2:"lv";s:7:"latvjan";s:2:"lv";s:7:"latvisk";s:2:"lv";s:7:"lettsch";s:2:"lv";s:4:"lets";s:2:"lv";s:6:"letão";s:2:"lv";s:10:"leton simi";s:2:"lv";s:7:"letonă";s:2:"lv";s:13:"látviagiella";s:2:"lv";s:13:"latvijščina";s:2:"lv";s:10:"laatfiyaan";s:2:"lv";s:9:"letonisht";s:2:"lv";s:8:"lettiska";s:2:"lv";s:15:"lea fakalativia";s:2:"lv";s:7:"letonca";s:2:"lv";s:9:"latishcha";s:2:"lv";s:16:"literary chinese";s:3:"lzh";s:24:"lea fakasiaina-faʻutohi";s:3:"lzh";s:6:"lazuri";s:3:"lzz";s:3:"laz";s:3:"lzz";s:9:"lazština";s:3:"lzz";s:7:"lasisch";s:3:"lzz";s:4:"lazi";s:3:"lzz";s:4:"laze";s:3:"lzz";s:15:"lasesch sprooch";s:3:"lzz";s:7:"lazisch";s:3:"lzz";s:8:"lazyjski";s:3:"lzz";s:12:"lea fakalasu";s:3:"lzz";s:5:"lazca";s:3:"lzz";s:15:"lea fakamaitili";s:3:"mai";s:16:"lea fakamokisiā";s:3:"mdf";s:16:"lea fakamalakasi";s:2:"mg";s:15:"lea fakamāsolo";s:2:"mh";s:13:"lea fakamauli";s:2:"mi";s:20:"lea fakaminangikapau";s:3:"min";s:18:"lea fakamasitōnia";s:2:"mk";s:28:"lea fakaʻinitia-malāialami";s:2:"ml";s:19:"lea fakamongokōlia";s:2:"mn";s:14:"lea fakamalati";s:2:"mr";s:19:"lea fakamali-hihifo";s:3:"mrj";s:8:"lumalayi";s:2:"ms";s:8:"limalezi";s:2:"ms";s:13:"lea fakamalei";s:2:"ms";s:14:"lea fakamolota";s:2:"mt";s:14:"lea fakakileki";s:3:"mus";s:19:"lea fakamilanitēsi";s:3:"mwl";s:7:"lubbama";s:2:"my";s:9:"libilimá";s:2:"my";s:12:"lea fakapema";s:2:"my";s:16:"lea fakaʻelisia";s:3:"myv";s:20:"lea fakamasanitelani";s:3:"mzn";s:13:"lea fakanaulu";s:2:"na";s:23:"lea fakasiaina-mininani";s:3:"nan";s:18:"lea fakanapoletano";s:3:"nap";s:23:"lea fakanouaē-pokimali";s:2:"nb";s:10:"low german";s:3:"nds";s:9:"laagduits";s:3:"nds";s:25:"lágþýska; lágsaxneska";s:3:"nds";s:10:"lejasvācu";s:3:"nds";s:7:"lavtysk";s:3:"nds";s:8:"lågtysk";s:3:"nds";s:9:"lågtyska";s:3:"nds";s:20:"lea fakasiamane-hifo";s:3:"nds";s:23:"low saxon (netherlands)";s:6:"nds-nl";s:8:"lunepali";s:2:"ne";s:9:"linepalɛ";s:2:"ne";s:14:"lea fakanepali";s:2:"ne";s:14:"lea fakaneuali";s:3:"new";s:18:"lea fakanetongikā";s:2:"ng";s:13:"lea fakaniuē";s:3:"niu";s:9:"luholandi";s:2:"nl";s:9:"lifalamá";s:2:"nl";s:15:"lea fakahōlani";s:2:"nl";s:23:"lea fakanoauē-ninosiki";s:2:"nn";s:13:"lea fakanouē";s:2:"no";s:15:"lea fakanoviale";s:3:"nov";s:19:"leasotais thuathach";s:3:"nso";s:20:"lea fakasoto-tokelau";s:3:"nso";s:14:"lea fakanavaho";s:2:"nv";s:15:"lea fakanianisa";s:2:"ny";s:17:"lea fakaʻokitane";s:2:"oc";s:15:"lea fakaʻolomo";s:2:"om";s:25:"lea fakaʻinitia-ʻolāea";s:2:"or";s:17:"lea fakaʻosetiki";s:2:"os";s:9:"lupunjabi";s:2:"pa";s:10:"lipendzabi";s:2:"pa";s:17:"lea fakapūnusapi";s:2:"pa";s:19:"lea fakapangasinani";s:3:"pag";s:17:"lea fakapamipanga";s:3:"pam";s:20:"lea fakapapiamēnito";s:3:"pap";s:15:"lea fakapikāti";s:3:"pcd";s:29:"lea fakasiamane-penisilivania";s:3:"pdc";s:24:"lea fakasiamane-lafalafa";s:3:"pdt";s:24:"lea fakasiamane-palatine";s:3:"pfl";s:13:"lea fakapāli";s:2:"pi";s:7:"lengyel";s:2:"pl";s:9:"lupolandi";s:2:"pl";s:9:"lipolonɛ";s:2:"pl";s:6:"lenkų";s:2:"pl";s:15:"lea fakapōlani";s:2:"pl";s:6:"lehçe";s:2:"pl";s:17:"lea fakapiemonite";s:3:"pms";s:16:"lea fakaponitiki";s:3:"pnt";s:16:"lea fakapulūsia";s:3:"prg";s:15:"lea fakapasitō";s:2:"ps";s:11:"lupotugiizi";s:2:"pt";s:15:"lipulutugɛ́si";s:2:"pt";s:16:"lea fakapotukali";s:2:"pt";s:25:"lipulutugɛ́si ya brazil";s:5:"pt-br";s:26:"lea fakapotukali-palāsili";s:5:"pt-br";s:15:"lea fakakuetisa";s:2:"qu";s:26:"lea fakakuitisa-simipolaso";s:3:"qug";s:17:"lea fakaromaniolo";s:3:"rgn";s:12:"lea fakalifi";s:3:"rif";s:9:"liromansh";s:2:"rm";s:22:"lea fakalaito-lomēnia";s:2:"rm";s:15:"lea fakaluaniti";s:2:"rn";s:10:"lulomaniya";s:2:"ro";s:8:"liromani";s:2:"ro";s:16:"lea fakalōmenia";s:2:"ro";s:6:"lūkia";s:2:"ru";s:6:"lulasa";s:2:"ru";s:7:"lirisí";s:2:"ru";s:14:"lea fakalūsia";s:2:"ru";s:14:"lea fakalusini";s:3:"rue";s:18:"lea fakaʻalomania";s:3:"rup";s:10:"lunarwanda";s:2:"rw";s:20:"lea fakakiniāuanita";s:2:"rw";s:20:"lea fakasanisukuliti";s:2:"sa";s:12:"lea fakasaka";s:3:"sah";s:16:"lea fakasanitali";s:3:"sat";s:18:"lea fakasaletīnia";s:2:"sc";s:16:"lea fakasisīlia";s:3:"scn";s:18:"lea fakasikotilani";s:3:"sco";s:15:"lea fakasīniti";s:2:"sd";s:27:"lea fakasaletīnia-sasalesu";s:3:"sdc";s:10:"lapšćina";s:2:"se";s:20:"lapoński północny";s:2:"se";s:20:"lea fakasami-tokelau";s:2:"se";s:12:"lea fakaseli";s:3:"sei";s:16:"lea fakasangikō";s:2:"sg";s:17:"lea fakasamositia";s:3:"sgs";s:23:"lea fakakuloisia-sēpia";s:2:"sh";s:18:"lea fakataselihiti";s:3:"shi";s:17:"lea fakasingihala";s:2:"si";s:17:"lea fakasolāvaki";s:2:"sk";s:17:"lea fakasolovenia";s:2:"sl";s:14:"lower silesian";s:3:"sli";s:13:"lågsilesiska";s:3:"sli";s:20:"lea fakasilesia-hifo";s:3:"sli";s:16:"lea fakahaʻamoa";s:2:"sm";s:11:"lõunasaami";s:3:"sma";s:21:"lapoński południowy";s:3:"sma";s:16:"lullisámegiella";s:3:"sma";s:18:"lea fakasami-tonga";s:3:"sma";s:13:"lea fakasiona";s:2:"sn";s:10:"lusomaliya";s:2:"so";s:8:"lisomali";s:2:"so";s:14:"lea fakasomali";s:2:"so";s:19:"lea fakaʻalapēnia";s:2:"sq";s:14:"lea fakasēpia";s:2:"sr";s:25:"lea fakasuranane-tongikō";s:3:"srn";s:17:"lea fakasuasilani";s:2:"ss";s:11:"lõunasotho";s:2:"st";s:18:"leasotach dheasach";s:2:"st";s:18:"lea fakasoto-tonga";s:2:"st";s:25:"lea fakafilisia-satēlani";s:3:"stq";s:15:"lea fakasunitā";s:2:"su";s:9:"luswideni";s:2:"sv";s:9:"lisuwedɛ";s:2:"sv";s:16:"lea fakasuēteni";s:2:"sv";s:15:"lea fakasuahili";s:2:"sw";s:15:"lea fakasilesia";s:3:"szl";s:9:"lutamiiru";s:2:"ta";s:8:"litamuli";s:2:"ta";s:18:"తమిళము";s:2:"ta";s:14:"lea fakatamili";s:2:"ta";s:12:"తుళు";s:3:"tcy";s:12:"lea fakatulu";s:3:"tcy";s:18:"తెలుగు";s:2:"te";s:23:"lea fakaʻinitia-teluku";s:2:"te";s:14:"lea fakatetumu";s:3:"tet";s:15:"తజిక్";s:2:"tg";s:15:"lea fakatāsiki";s:2:"tg";s:8:"luttaayi";s:2:"th";s:6:"litaye";s:2:"th";s:15:"lea fakatailani";s:2:"th";s:30:"తిగ్రిన్యా";s:2:"ti";s:17:"lea fakatikilinia";s:2:"ti";s:13:"lammii turkii";s:2:"tk";s:27:"తుర్కమెన్";s:2:"tk";s:17:"lea fakatēkimeni";s:2:"tk";s:18:"తగలోగ్";s:2:"tl";s:17:"lea fakatakāloka";s:2:"tl";s:14:"lea fakatalisi";s:3:"tly";s:9:"lea suana";s:2:"tn";s:14:"lea faka-tonga";s:2:"to";s:13:"lea fakatonga";s:2:"to";s:19:"lea fakatoki-pisini";s:3:"tpi";s:6:"lutake";s:2:"tr";s:8:"litiliki";s:2:"tr";s:13:"lea fakatoake";s:2:"tr";s:14:"lea fakatuloio";s:3:"tru";s:15:"lea fakatisonga";s:2:"ts";s:14:"lea fakatatale";s:2:"tt";s:16:"lea fakatumepuka";s:3:"tum";s:14:"lea fakatusuī";s:2:"tw";s:24:"తహితియన్";s:2:"ty";s:14:"lea fakatahiti";s:2:"ty";s:16:"lea fakatuvīnia";s:3:"tyv";s:34:"lea fakatamasaiti-ʻatilasi-loloto";s:3:"tzm";s:19:"lea fakaʻutimuliti";s:3:"udm";s:17:"lea fakaʻuikūli";s:2:"ug";s:12:"luyukurayine";s:2:"uk";s:8:"likrɛni";s:2:"uk";s:21:"lea fakaʻūkalaʻine";s:2:"uk";s:8:"lu-urudu";s:2:"ur";s:6:"liurdu";s:2:"ur";s:15:"lea fakaʻūtū";s:2:"ur";s:17:"lea fakaʻusipeki";s:2:"uz";s:15:"lea fakavenitā";s:2:"ve";s:16:"lea fakavenēsia";s:3:"vec";s:14:"lea fakavepisi";s:3:"vep";s:12:"luvyetinaamu";s:2:"vi";s:13:"liviyetinámi";s:2:"vi";s:17:"lea fakavietinami";s:2:"vi";s:12:"länsiflaami";s:3:"vls";s:24:"lea fakavelamingi-hihifo";s:3:"vls";s:25:"lea fakafalanikoni-loloto";s:3:"vmf";s:16:"lea fakavolapiki";s:2:"vo";s:14:"lea fakavotiki";s:3:"vot";s:13:"lea fakavōlo";s:3:"vro";s:17:"lea fakaʻualonia";s:2:"wa";s:15:"lea fakaʻualai";s:3:"war";s:16:"lea fakaʻuolofo";s:2:"wo";s:18:"lea fakasiaina-uū";s:3:"wuu";s:16:"lea fakakalimiki";s:3:"xal";s:13:"lea fakatōsa";s:2:"xh";s:18:"lea fakamingilelia";s:3:"xmf";s:14:"lea fakaītisi";s:2:"yi";s:8:"luyoruba";s:2:"yo";s:17:"lea fakaʻiōlupa";s:2:"yo";s:19:"lea fakakuangitongi";s:3:"yue";s:14:"lea fakasuangi";s:2:"za";s:15:"lea fakasēlani";s:3:"zea";s:8:"lucayina";s:2:"zh";s:7:"lisinwa";s:2:"zh";s:14:"lea fakasiaina";s:2:"zh";s:28:"lea fakasiaina-fakafaingofua";s:7:"zh-hans";s:27:"lea fakasiaina-tukufakaholo";s:7:"zh-hant";s:7:"luzzulu";s:2:"zu";s:12:"lea fakasulu";s:2:"zu";s:15:"lea fakaʻakoli";s:3:"ach";s:17:"lea fakaʻakihemi";s:3:"agq";s:26:"lea fakaʻalepea (māmani)";s:6:"ar-001";s:13:"lea fakaʻasu";s:3:"asa";s:15:"lea fakapēmipa";s:3:"bem";s:12:"lea fakapena";s:3:"bez";s:13:"lea fakapōto";s:3:"brx";s:12:"lea fakakika";s:3:"cgg";s:16:"lea fakakopitika";s:3:"cop";s:13:"lea fakataita";s:3:"dav";s:15:"lea fakatisāma";s:3:"dje";s:13:"lea fakatuala";s:3:"dua";s:18:"lea fakaiola-fonī";s:3:"dyo";s:16:"lea fakaʻemipū";s:3:"ebu";s:15:"lea fakaʻefiki";s:3:"efi";s:22:"lea fakaʻisipitemuʻa";s:3:"egy";s:17:"lea fakafilipaini";s:3:"fil";s:11:"lea fakakā";s:3:"gaa";s:13:"lea fakakusī";s:3:"guz";s:14:"lea fakahitite";s:3:"hit";s:17:"lea fakanikōmipa";s:3:"jgo";s:14:"lea fakamasame";s:3:"jmc";s:14:"lea fakakamipa";s:3:"kam";s:17:"lea fakamakōnite";s:3:"kde";s:21:"lea fakakapuvelitianu";s:3:"kea";s:19:"lea fakakoila-sīni";s:3:"khq";s:18:"lea fakakalenisini";s:3:"kln";s:17:"lea fakakonikanī";s:3:"kok";s:14:"lea fakakuluki";s:3:"kru";s:17:"lea fakasiamipala";s:3:"ksb";s:13:"lea fakapafia";s:3:"ksf";s:5:"langi";s:3:"lag";s:8:"langiera";s:3:"lag";s:5:"lango";s:3:"lag";s:6:"langí";s:3:"lag";s:13:"langijščina";s:3:"lag";s:8:"langisht";s:3:"lag";s:13:"lea fakalangi";s:3:"lag";s:7:"langcha";s:3:"lag";s:6:"lakota";s:3:"lkt";s:11:"lakotština";s:3:"lkt";s:12:"lakotšćina";s:3:"lkt";s:8:"lakotera";s:3:"lkt";s:8:"lakhóta";s:3:"lkt";s:7:"lakóta";s:3:"lkt";s:14:"lakota-sprooch";s:3:"lkt";s:7:"lakotų";s:3:"lkt";s:6:"lakotu";s:3:"lkt";s:6:"lacota";s:3:"lkt";s:10:"lakotčina";s:3:"lkt";s:12:"lakotščina";s:3:"lkt";s:9:"lakotisht";s:3:"lkt";s:14:"lea fakalakota";s:3:"lkt";s:8:"lakotaca";s:3:"lkt";s:8:"lakotcha";s:3:"lkt";s:12:"luba-katanga";s:2:"lu";s:12:"luba-katanqa";s:2:"lu";s:12:"luba katanga";s:2:"lu";s:18:"lubu-katanžština";s:2:"lu";s:15:"luba-katangagbe";s:2:"lu";s:4:"luba";s:2:"lu";s:14:"luba-katangera";s:2:"lu";s:15:"lúba-cataingis";s:2:"lu";s:12:"lúbakatanga";s:2:"lu";s:11:"lubakatanga";s:2:"lu";s:12:"luba-catanga";s:2:"lu";s:11:"lubakatange";s:2:"lu";s:20:"lea fakalupa-katanga";s:2:"lu";s:14:"luba-katangcha";s:2:"lu";s:10:"luba-lulua";s:3:"lua";s:15:"luba-lulua dili";s:3:"lua";s:16:"luba-luluaština";s:3:"lua";s:12:"luba-lulugbe";s:3:"lua";s:10:"luluanluba";s:3:"lua";s:10:"luba lulua";s:3:"lua";s:9:"lubalulva";s:3:"lua";s:11:"luba-luluwa";s:3:"lua";s:17:"luba-luluánčina";s:3:"lua";s:18:"lea fakalupa-lulua";s:3:"lua";s:3:"luo";s:3:"luo";s:9:"luoština";s:3:"luo";s:4:"lŵo";s:3:"luo";s:11:"luo-sprache";s:3:"luo";s:6:"luoera";s:3:"luo";s:13:"luo-schpraach";s:3:"luo";s:5:"lúó";s:3:"luo";s:11:"luo-sprooch";s:3:"luo";s:4:"luwa";s:3:"luo";s:7:"luoisht";s:3:"luo";s:11:"lea fakaluo";s:3:"luo";s:6:"luocha";s:3:"luo";s:5:"luyia";s:3:"luy";s:5:"luhja";s:3:"luy";s:5:"lwyia";s:3:"luy";s:6:"luyana";s:3:"luy";s:5:"luhya";s:3:"luy";s:8:"luyiagbe";s:3:"luy";s:7:"luhyera";s:3:"luy";s:5:"lujia";s:3:"luy";s:10:"luyjanesch";s:3:"luy";s:4:"luja";s:3:"luy";s:5:"luhju";s:3:"luy";s:12:"luhijščina";s:3:"luy";s:8:"lujaisht";s:3:"luy";s:13:"lea fakaluīa";s:3:"luy";s:6:"luycha";s:3:"luy";s:13:"lea fakamasai";s:3:"mas";s:12:"lea fakamelu";s:3:"mer";s:17:"lea fakamolisieni";s:3:"mfe";s:22:"lea fakamakūa-meʻeto";s:3:"mgh";s:12:"lea fakameta";s:3:"mgo";s:15:"lea fakamohauki";s:3:"moh";s:17:"lea fakamunitangi";s:3:"mua";s:17:"llengües vàries";s:3:"mul";s:18:"lenguas múltiples";s:3:"mul";s:17:"lenghis multiplis";s:3:"mul";s:14:"lingwi diversi";s:3:"mul";s:14:"limbi multiple";s:3:"mul";s:12:"lugha nyingi";s:3:"mul";s:10:"lea tuifio";s:3:"mul";s:12:"lea fakanama";s:3:"naq";s:24:"lea fakanetepele-tokelau";s:2:"nd";s:25:"lea fakahōlani-pelesiume";s:5:"nl-be";s:14:"lea fakakuasio";s:3:"nmg";s:13:"lea fakanikō";s:3:"nqo";s:13:"lõunandebele";s:2:"nr";s:22:"lea fakanetepele-tonga";s:2:"nr";s:13:"lea fakanueli";s:3:"nus";s:17:"lea fakanianikole";s:3:"nyn";s:16:"lea fakafoinikia";s:3:"phn";s:14:"lea fakakīsē";s:3:"quc";s:18:"lea fakamolitāvia";s:5:"ro-md";s:15:"lea fakalomipō";s:3:"rof";s:12:"lea fakaluā";s:3:"rwk";s:16:"lea fakasamipulu";s:3:"saq";s:13:"lea fakasangu";s:3:"sbp";s:12:"lea fakasena";s:3:"seh";s:22:"lea fakakoilapolo-seni";s:3:"ses";s:9:"lule sami";s:3:"smj";s:10:"lulesamisk";s:3:"smj";s:13:"lule-lappisch";s:3:"smj";s:16:"lule-samišćina";s:3:"smj";s:10:"lule saami";s:3:"smj";s:12:"lule samiera";s:3:"smj";s:13:"luulajansaame";s:3:"smj";s:12:"lule-samisch";s:3:"smj";s:11:"lule számi";s:3:"smj";s:13:"lúlesamíska";s:3:"smj";s:13:"lule-lappesch";s:3:"smj";s:14:"lulėjo samių";s:3:"smj";s:11:"luleo sāmu";s:3:"smj";s:12:"lule-lappsch";s:3:"smj";s:14:"lapoński lule";s:3:"smj";s:21:"luleška samijščina";s:3:"smj";s:11:"lulesamiska";s:3:"smj";s:17:"lea fakasami-lule";s:3:"smj";s:13:"luli semiycha";s:3:"smj";s:15:"lapoński inari";s:3:"smn";s:20:"lea fakasami-ʻinali";s:3:"smn";s:15:"lapoński skolt";s:3:"sms";s:21:"lea fakasami-sikolita";s:3:"sms";s:17:"língua comoriana";s:3:"swb";s:14:"lea fakakomolo";s:3:"swb";s:24:"lea fakasuahili-kongikō";s:3:"swc";s:12:"lea fakateso";s:3:"teo";s:17:"lea fakakilingoni";s:3:"tlh";s:16:"lea fakatasauaki";s:3:"twq";s:19:"llingua desconocida";s:3:"und";s:18:"lengua desconocida";s:3:"und";s:21:"langue indéterminée";s:3:"und";s:34:"lingua descoñecida ou non válida";s:3:"und";s:18:"lingua imprecisata";s:3:"und";s:21:"lingwa mhux magħrufa";s:3:"und";s:25:"linguas betg determinadas";s:3:"und";s:19:"limbă necunoscută";s:3:"und";s:19:"lugha isiyojulikana";s:3:"und";s:31:"తెలియని భాష";s:3:"und";s:15:"lea taʻeʻiloa";s:3:"und";s:11:"lea fakavai";s:3:"vai";s:15:"lea fakavūniso";s:3:"vun";s:6:"lusoga";s:3:"xog";s:12:"lea fakasoka";s:3:"xog";s:24:"lea fakatamasaiti-moloko";s:3:"zgh";s:14:"lea fakapilini";s:3:"byn";s:31:"lea fakapālangi-ʻaositelēlia";s:5:"en-au";s:26:"lea fakapālangi-ʻamelika";s:5:"en-us";s:28:"latın amerikası ispancası";s:6:"es-419";s:24:"latinoamerički španski";s:6:"es-419";s:22:"latinamerikansk spansk";s:6:"es-419";s:29:"lateinamerikanisches spanisch";s:6:"es-419";s:32:"latin amerikatɔwo ƒe spaniagbe";s:6:"es-419";s:22:"latin american spanish";s:6:"es-419";s:27:"latynsk-amerikaansk spaansk";s:6:"es-419";s:30:"latiinamerikanischs schpanisch";s:6:"es-419";s:27:"latinoamerički španjolski";s:6:"es-419";s:22:"latin-amerikai spanyol";s:6:"es-419";s:30:"latäinamerikanescht spuenesch";s:6:"es-419";s:30:"lispanyoli ya ameríka latína";s:6:"es-419";s:24:"lotynų amerikos ispanų";s:6:"es-419";s:23:"latīņamerikas spāņu";s:6:"es-419";s:27:"latienamerikaansch spaansch";s:6:"es-419";s:25:"latijns-amerikaans spaans";s:6:"es-419";s:25:"latino-američki španski";s:6:"es-419";s:30:"latinskoameriška španščina";s:6:"es-419";s:23:"latinamerikansk spanska";s:6:"es-419";s:35:"lea fakasipēnisi lātini-ʻamelika";s:6:"es-419";s:28:"latin amerika İspanyolcası";s:6:"es-419";s:24:"lotin amerika ispanchasi";s:6:"es-419";s:20:"lispanyoli ya erópa";s:5:"es-es";s:27:"lea fakasipēnisi-‘iulope";s:5:"es-es";s:23:"lifalansɛ́ ya kanadá";s:5:"fr-ca";s:25:"lea fakafalanisē-kānata";s:5:"fr-ca";s:21:"lifalansɛ́ ya swisi";s:5:"fr-ch";s:27:"lea fakafalanisē-suisilani";s:5:"fr-ch";s:15:"lea fakasiʻisi";s:3:"gez";s:25:"lipulutugɛ́si ya erópa";s:5:"pt-pt";s:25:"lea fakapotukali-ʻiulope";s:5:"pt-pt";s:14:"lea fakasitamo";s:3:"sid";s:18:"lea fakatikilīnia";s:3:"tig";s:19:"lea fakaʻatangimē";s:3:"ada";s:16:"lea fakaʻatikē";s:3:"ady";s:19:"lea fakaʻavesitani";s:2:"ae";s:19:"lea fakaʻafilihili";s:3:"afh";s:14:"lea fakaʻainu";s:3:"ain";s:16:"lea fakaʻakatia";s:3:"akk";s:16:"lea fakaʻaleuti";s:3:"ale";s:22:"lea fakaʻalitai-tonga";s:3:"alt";s:17:"lea fakaʻalapaho";s:3:"arp";s:17:"lea fakaʻalauaki";s:3:"arw";s:15:"lea fakaʻauati";s:3:"awa";s:14:"lea fakapalusi";s:3:"bal";s:12:"lea fakapali";s:3:"ban";s:15:"lea fakapasaʻa";s:3:"bas";s:14:"lea fakapamuni";s:3:"bax";s:12:"lea fakapesa";s:3:"bej";s:14:"lea fakapikoli";s:3:"bik";s:12:"lea fakapini";s:3:"bin";s:17:"lea fakasikesikā";s:3:"bla";s:13:"lea fakapalai";s:3:"bra";s:16:"lea fakaʻakōse";s:3:"bss";s:15:"lea fakapuliati";s:3:"bua";s:12:"lea fakakato";s:3:"cad";s:14:"lea fakakalipa";s:3:"car";s:17:"lea fakaʻatisami";s:3:"cch";s:15:"lea fakasīpisa";s:3:"chb";s:16:"lea fakasakatāi";s:3:"chg";s:13:"lea fakatūke";s:3:"chk";s:13:"lea fakamalī";s:3:"chm";s:21:"lea fakasinuki-takote";s:3:"chn";s:17:"lea fakasipeuiani";s:3:"chp";s:14:"lea fakatakota";s:3:"dak";s:16:"lea fakatalakuā";s:3:"dar";s:16:"lea fakatelauale";s:3:"del";s:14:"lea fakasilave";s:3:"den";s:17:"lea fakatōkelipi";s:3:"dgr";s:16:"lea fakatingikā";s:3:"din";s:14:"lea fakatokili";s:3:"doi";s:24:"lea fakahōlani-lotoloto";s:3:"dum";s:13:"lea fakatiula";s:3:"dyu";s:14:"lea fakatasaka";s:3:"dzg";s:17:"lea fakaʻekaiuki";s:3:"eka";s:17:"lea fakaʻelamite";s:3:"elx";s:25:"lea fakapālangi-lotoloto";s:3:"enm";s:18:"lea fakaʻeuōnito";s:3:"ewo";s:13:"lea fakafangi";s:3:"fan";s:15:"lea fakafanitē";s:3:"fat";s:14:"lea fakafōngi";s:3:"fon";s:26:"lea fakafalanisē-lotoloto";s:3:"frm";s:25:"lea fakafalanisē-motuʻa";s:3:"fro";s:46:"తూర్పు ఫ్రిసియన్";s:3:"frs";s:22:"lea fakafilisia-hahake";s:3:"frs";s:12:"lea fakakaio";s:3:"gay";s:14:"lea fakakapaia";s:3:"gba";s:16:"lea fakakilipasi";s:3:"gil";s:29:"lea fakasiamane-hake-lotoloto";s:3:"gmh";s:28:"lea fakasiamane-hake-motuʻa";s:3:"goh";s:15:"lea fakakonitī";s:3:"gon";s:18:"lea fakakolonitalo";s:3:"gor";s:13:"lea fakakēpo";s:3:"grb";s:17:"lea fakaʻuīsini";s:3:"gwi";s:13:"lea fakahaita";s:3:"hai";s:14:"lea fakamōngi";s:3:"hmn";s:12:"lea fakahupa";s:3:"hup";s:15:"lea fakaʻipani";s:3:"iba";s:13:"lhudi-persjan";s:3:"jpr";s:22:"lea fakaʻiuteo-pēsia";s:3:"jpr";s:13:"lhudi-għarbi";s:3:"jrb";s:24:"lea fakaʻiuteo-ʻalepea";s:3:"jrb";s:14:"lea fakakasini";s:3:"kac";s:13:"lea fakasisū";s:3:"kaj";s:12:"lea fakakavi";s:3:"kaw";s:17:"lea fakakanēmipu";s:3:"kbl";s:12:"lea fakakolo";s:3:"kfo";s:13:"lea fakakāsi";s:3:"kha";s:16:"limbp khotaneză";s:3:"kho";s:15:"lea fakakōtani";s:3:"kho";s:19:"lea fakakimipūnitu";s:3:"kmb";s:15:"lea fakakosilae";s:3:"kos";s:14:"lea fakakepele";s:3:"kpe";s:15:"lea fakakalelia";s:3:"krl";s:14:"lea fakakumiki";s:3:"kum";s:15:"lea fakakutenai";s:3:"kut";s:6:"lahnda";s:3:"lah";s:11:"laxnda dili";s:3:"lah";s:5:"landa";s:3:"lah";s:11:"lahndština";s:3:"lah";s:9:"lahndagbe";s:3:"lah";s:11:"lahndanisch";s:3:"lah";s:5:"landu";s:3:"lah";s:11:"lahandčina";s:3:"lah";s:15:"lea fakalānita";s:3:"lah";s:5:"lamba";s:3:"lam";s:10:"lamba dili";s:3:"lam";s:10:"lambština";s:3:"lam";s:13:"lamba-sprache";s:3:"lam";s:10:"lambanisch";s:3:"lam";s:13:"lamba-sprooch";s:3:"lam";s:5:"lambu";s:3:"lam";s:15:"lea fakalamipā";s:3:"lam";s:10:"lolo bantu";s:3:"lol";s:7:"lomongo";s:3:"lol";s:16:"lea fakamongikō";s:3:"lol";s:7:"luiseno";s:3:"lui";s:12:"luyseno dili";s:3:"lui";s:8:"luisenyo";s:3:"lui";s:8:"luiseňo";s:3:"lui";s:15:"luiseno-sprache";s:3:"lui";s:8:"luiseño";s:3:"lui";s:8:"luisenjo";s:3:"lui";s:17:"luiseno-schpraach";s:3:"lui";s:9:"lúisenó";s:3:"lui";s:15:"luiseno-sprooch";s:3:"lui";s:7:"luisenu";s:3:"lui";s:10:"luwisinuż";s:3:"lui";s:13:"luisenščina";s:3:"lui";s:15:"lea fakaluiseno";s:3:"lui";s:5:"lunda";s:3:"lun";s:10:"lunda dili";s:3:"lun";s:10:"lundština";s:3:"lun";s:5:"lwnda";s:3:"lun";s:13:"lunda-sprache";s:3:"lun";s:15:"lunda-schpraach";s:3:"lun";s:6:"lúnda";s:3:"lun";s:13:"lunda-sprooch";s:3:"lun";s:5:"lundu";s:3:"lun";s:15:"lea fakalunitā";s:3:"lun";s:14:"lea fakamatula";s:3:"mad";s:14:"lea fakamakahi";s:3:"mag";s:16:"lea fakamakasali";s:3:"mak";s:20:"lea fakamanitīngiko";s:3:"man";s:12:"lea fakamapa";s:3:"mde";s:16:"lea fakamanetali";s:3:"mdr";s:15:"lea fakamenetī";s:3:"men";s:25:"lea fakaʻaelani-lotoloto";s:3:"mga";s:16:"lea fakamikemaki";s:3:"mic";s:15:"lea fakamanisū";s:3:"mnc";s:16:"lea fakamanipuli";s:3:"mni";s:12:"lea fakamosi";s:3:"mos";s:16:"lea fakamaliwali";s:3:"mwr";s:13:"lea fakaniasi";s:3:"nia";s:13:"lea fakanokai";s:3:"nog";s:22:"lea fakanoauē-motuʻa";s:3:"non";s:22:"lea fakaneuali-motuʻa";s:3:"nwc";s:17:"lea fakaniamiuesi";s:3:"nym";s:13:"lea fakaniolo";s:3:"nyo";s:14:"lea fakanesima";s:3:"nzi";s:18:"lea fakaʻosipiuā";s:2:"oj";s:16:"lea fakaʻosēse";s:3:"osa";s:23:"lea fakatoake-ʻotomani";s:3:"ota";s:15:"lea fakapālavi";s:3:"pal";s:13:"lea fakapalau";s:3:"pau";s:22:"lea fakapēsia-motuʻa";s:3:"peo";s:15:"lea fakaponapē";s:3:"pon";s:26:"lea fakapolovenisi-motuʻa";s:3:"pro";s:18:"lea fakalasasitani";s:3:"raj";s:15:"lea fakalapanui";s:3:"rap";s:17:"lea fakalalotonga";s:3:"rar";s:14:"lea fakalomani";s:3:"rom";s:16:"lea fakasanitaue";s:3:"sad";s:29:"lea fakasamalitani-ʻalāmiti";s:3:"sam";s:14:"lea fakasasaki";s:3:"sas";s:17:"lea fakangāmipai";s:3:"sba";s:16:"lea fakaselikupi";s:3:"sel";s:24:"lea fakaʻaelani-motuʻa";s:3:"sga";s:13:"lea fakasiani";s:3:"shn";s:22:"lea fakaʻalepea-sāti";s:3:"shu";s:17:"lea fakasoninekē";s:3:"snk";s:17:"lea fakasokitiana";s:3:"sog";s:16:"lea fakasēlēle";s:3:"srr";s:14:"lea fakasukuma";s:3:"suk";s:13:"lea fakasusū";s:3:"sus";s:15:"lea fakasumelia";s:3:"sux";s:23:"lea fakasuliāiā-muʻa";s:3:"syc";s:17:"lea fakasuliāiā";s:3:"syr";s:15:"lea fakatimenē";s:3:"tem";s:14:"lea fakateleno";s:3:"ter";s:12:"lea fakativi";s:3:"tiv";s:15:"lea fakatokelau";s:3:"tkl";s:20:"lea fakatilingikīte";s:3:"tli";s:17:"lea fakatamasieki";s:3:"tmh";s:13:"lingua tsonga";s:3:"tog";s:19:"lea fakaniasa-tonga";s:3:"tog";s:20:"lea fakatisīmisiani";s:3:"tsi";s:15:"lea fakatūvalu";s:3:"tvl";s:18:"lea fakaʻūkaliti";s:3:"uga";s:20:"lea fakaʻumipūnitu";s:3:"umb";s:17:"lea fakaʻuolaita";s:3:"wal";s:16:"lea fakaʻuasiō";s:3:"was";s:13:"lea fakaʻiao";s:3:"yao";s:14:"lea fakaʻiapi";s:3:"yap";s:19:"lea fakaʻiangipeni";s:3:"yav";s:16:"lea fakasapoteki";s:3:"zap";s:23:"lea fakaʻilonga-pilisi";s:3:"zbl";s:14:"lea fakasenaka";s:3:"zen";s:12:"lea fakasuni";s:3:"zun";s:14:"lea fakasāsā";s:3:"zza";s:25:"lea fakaʻalepea-tunīsia";s:3:"aeb";s:17:"lea fakaʻalapama";s:3:"akz";s:16:"lea fakaʻalaona";s:3:"aro";s:27:"llingua de signos americana";s:3:"ase";s:29:"langue des signes américaine";s:3:"ase";s:26:"lingua dei segni americana";s:3:"ase";s:26:"lea fakaʻilonga-ʻamelika";s:3:"ase";s:14:"lea fakakomala";s:3:"bbj";s:14:"lea fakapetavi";s:3:"bew";s:14:"lea fakapafuti";s:3:"bfd";s:14:"lea fakapataka";s:3:"bfq";s:12:"lea fakakome";s:3:"bkm";s:12:"lea fakapulu";s:3:"bum";s:17:"lea fakametūmipa";s:3:"byv";s:14:"lea fakakaiuka";s:3:"cay";s:27:"lea fakasipēnisi-mekisikou";s:5:"es-mx";s:22:"lea fakaiūpiki-loloto";s:3:"esu";s:25:"lea fakateli-soloasitelia";s:3:"gbz";s:23:"lea fakakonikanī-koani";s:3:"gom";s:15:"lea fakaʻuaiū";s:3:"guc";s:16:"lea fakafalefale";s:3:"gur";s:21:"lea fakasiaina-siangi";s:3:"hsn";s:16:"lea fakaʻipipio";s:3:"ibb";s:19:"lea fakaʻingiliani";s:3:"izh";s:13:"lea fakatiapi";s:3:"kcg";s:16:"lea fakakeniangi";s:3:"ken";s:17:"lea fakakaingangi";s:3:"kgp";s:12:"lea fakakako";s:3:"kkj";s:12:"lea fakamafa";s:3:"maf";s:17:"lea fakamenitauai";s:3:"mwv";s:13:"lea fakamiene";s:3:"mye";s:16:"lea fakaʻaonasa";s:3:"njo";s:19:"lea fakangiemipōni";s:3:"nnh";s:14:"lea fakalotuma";s:3:"rtm";s:20:"lea fakasaulasitilā";s:3:"saz";s:14:"lea fakaseneka";s:3:"see";s:12:"lea fakasaho";s:3:"ssy";s:14:"lea fakataloko";s:3:"trv";s:17:"lea fakaʻiēmipa";s:3:"ybb";s:8:"ємба";s:3:"ybb";s:18:"lea fakaʻualiseli";s:3:"wae";s:15:"lea fakaloviana";s:3:"rug";s:15:"lea fakaselaiā";s:3:"sly";s:15:"lea fakasākuli";s:3:"tkr";s:16:"lea fakasakōnia";s:3:"tsd";s:21:"lea fakatati-moselemi";s:3:"ttt";s:20:"lea fakaneʻēngatū";s:3:"yrl";s:7:"lappsch";s:3:"smi";}i:574;a:86:{s:14:"ئافارچە";s:2:"aa";s:16:"ئابخازچە";s:2:"ab";s:14:"ئاتجېچە";s:3:"ace";s:20:"ئافرىكانچە";s:2:"af";s:14:"ئاكانچە";s:2:"ak";s:18:"ئامخاراچە";s:2:"am";s:18:"ئاراگونچە";s:2:"an";s:18:"ئانگىكاچە";s:3:"anp";s:14:"ئەرەبچە";s:2:"ar";s:16:"ئارامۇچە";s:3:"arc";s:16:"ئاسسامچە";s:2:"as";s:22:"ئاستۇرىيەچە";s:3:"ast";s:14:"ئاۋارچە";s:2:"av";s:18:"ئايماراچە";s:2:"ay";s:16:"ئەزەرىچە";s:2:"az";s:37:"ئاۋستىرىيە گېرمانچە";s:5:"de-at";s:12:"ئېۋېچە";s:2:"ee";s:18:"ئىنگلىزچە";s:2:"en";s:35:"ئەنگلىيە ئىنگلىزچە";s:5:"en-gb";s:16:"ئىسپانچە";s:2:"es";s:16:"ئېستونچە";s:2:"et";s:20:"ئىرېلاندچە";s:2:"ga";s:18:"ئىبرانىچە";s:2:"he";s:16:"ئەرمەنچە";s:2:"hy";s:21:"ئارىلىق تىل";s:2:"ia";s:22:"ئىنتىرلىڭچە";s:2:"ie";s:12:"ئىبوچە";s:2:"ig";s:18:"ئىنۇپىكچە";s:2:"ik";s:20:"ئىلوكانوچە";s:3:"ilo";s:16:"ئىنگۇشچە";s:3:"inh";s:12:"ئىدوچە";s:2:"io";s:18:"ئىسلاندچە";s:2:"is";s:20:"ئىتاليانچە";s:2:"it";s:24:"ئىنۇكتىتۇتچە";s:2:"iu";s:14:"ئېرزاچە";s:3:"myv";s:20:"ئوكسىتانچە";s:2:"oc";s:16:"ئوروموچە";s:2:"om";s:16:"ئورىياچە";s:2:"or";s:20:"ئوسسېتچەچە";s:2:"os";s:18:"ئارومانچە";s:3:"rup";s:16:"ئالبانچە";s:2:"sq";s:18:"ئۇدمۇرتچە";s:3:"udm";s:28:"ئۇيغۇرچە / uyghurche";s:2:"ug";s:16:"ئۇيغۇرچە";s:7:"ug-arab";s:20:"ئۇكرائىنچە";s:2:"uk";s:14:"ئوردوچە";s:2:"ur";s:16:"ئۆزبېكچە";s:2:"uz";s:23:"ئاددىي خەنچە";s:7:"zh-hans";s:16:"ئاچولىچە";s:3:"ach";s:14:"ئاگەمچە";s:3:"agq";s:12:"ئاسۇچە";s:3:"asa";s:14:"ئېمبۇچە";s:3:"ebu";s:14:"ئېفىكچە";s:3:"efi";s:25:"ئىنارى سامىچە";s:3:"smn";s:52:"ئۆلچەملىك ماراكەش تامازىتچە";s:3:"zgh";s:41:"ئاۋسترالىيە ئىنگلىزچە";s:5:"en-au";s:35:"ئامېرىكا ئىنگلىزچە";s:5:"en-us";s:18:"ئاداڭمېچە";s:3:"ada";s:18:"ئادىگېيچە";s:3:"ady";s:18:"ئاۋېستاچە";s:2:"ae";s:22:"ئافرىخىلىچە";s:3:"afh";s:14:"ئاينۇچە";s:3:"ain";s:16:"ئاككادچە";s:3:"akk";s:18:"ئالېيۇتچە";s:3:"ale";s:20:"ئاراپاخوچە";s:3:"arp";s:18:"ئاراۋاكچە";s:3:"arw";s:16:"ئاۋادىچە";s:3:"awa";s:14:"ئاكۇسچە";s:3:"bss";s:16:"ئاتسامچە";s:3:"cch";s:39:"ئوتتۇرا گوللاندىيەچە";s:3:"dum";s:18:"ئېكاجۇكچە";s:3:"eka";s:18:"ئېلامىتچە";s:3:"elx";s:44:"ئوتتۇرا ئەسىر ئىنگلىزچە";s:3:"enm";s:18:"ئېۋوندوچە";s:3:"ewo";s:46:"ئوتتۇرا ئەسىر فىرانسۇزچە";s:3:"frm";s:59:"ئوتتۇرا ئەسىر ئېگىزلىك گېرمانچە";s:3:"gmh";s:14:"ئىبانچە";s:3:"iba";s:27:"ئىبرانى پارسچە";s:3:"jpr";s:29:"ئىبرانى ئەرەبچە";s:3:"jrb";s:46:"ئوتتۇرا ئەسىر ئىرېلاندچە";s:3:"mga";s:18:"ئوجىبۋاچە";s:2:"oj";s:22:"ئوساگېلارچە";s:3:"osa";s:25:"ئوسمان تۈركچە";s:3:"ota";s:22:"ئۇگارىتىكچە";s:3:"uga";s:20:"ئۇمبۇندۇچە";s:3:"umb";s:20:"ئىبىبىئوچە";s:3:"ibb";}i:116;a:1616:{s:12:"tiếng afar";s:2:"aa";s:16:"tiếng abkhazia";s:2:"ab";s:16:"tiếng achinese";s:3:"ace";s:15:"tiếng nam phi";s:2:"af";s:7:"takanit";s:2:"ak";s:6:"takant";s:2:"ak";s:12:"tiếng akan";s:2:"ak";s:9:"tamahrict";s:2:"am";s:8:"tamharit";s:2:"am";s:15:"tiếng amharic";s:2:"am";s:14:"tiếng aragon";s:2:"an";s:16:"tiếng anh cổ";s:3:"ang";s:14:"tiếng angika";s:3:"anp";s:8:"taɛrabt";s:2:"ar";s:8:"taεrabt";s:2:"ar";s:17:"tiếng Ả rập";s:2:"ar";s:15:"tiếng aramaic";s:3:"arc";s:18:"tiếng araucanian";s:3:"arn";s:13:"tiếng assam";s:2:"as";s:8:"ti assam";s:2:"as";s:16:"tiếng asturias";s:3:"ast";s:14:"tiếng avaric";s:2:"av";s:14:"tiếng aymara";s:2:"ay";s:18:"tiếng azerbaijan";s:2:"az";s:21:"బష్కిర్";s:2:"ba";s:15:"tiếng bashkir";s:2:"ba";s:11:"tabilarusit";s:2:"be";s:10:"tabilarust";s:2:"be";s:30:"బెలరుశియన్";s:2:"be";s:15:"tiếng belarus";s:2:"be";s:10:"tabulgarit";s:2:"bg";s:10:"tablɣarit";s:2:"bg";s:30:"బల్గేరియన్";s:2:"bg";s:11:"tabelɣarit";s:2:"bg";s:16:"tiếng bulgaria";s:2:"bg";s:16:"tiếng bhojpuri";s:3:"bho";s:24:"బిస్లామా";s:2:"bi";s:15:"tiếng bislama";s:2:"bi";s:18:"బంబారా";s:2:"bm";s:15:"tiếng bambara";s:2:"bm";s:10:"tabengalit";s:2:"bn";s:10:"tabnɣalit";s:2:"bn";s:21:"బెంగాలీ";s:2:"bn";s:11:"tabinɣalit";s:2:"bn";s:15:"tiếng bengali";s:2:"bn";s:10:"tibettaans";s:2:"bo";s:8:"tibetanu";s:2:"bo";s:5:"tibet";s:2:"bo";s:9:"tibetaneg";s:2:"bo";s:10:"tibetanski";s:2:"bo";s:7:"tibetà";s:2:"bo";s:11:"tibetština";s:2:"bo";s:7:"tibeteg";s:2:"bo";s:9:"tibetansk";s:2:"bo";s:9:"tibetisch";s:2:"bo";s:12:"tibetšćina";s:2:"bo";s:9:"tibetagbe";s:2:"bo";s:7:"tibetan";s:2:"bo";s:6:"tibeta";s:2:"bo";s:8:"tibetano";s:2:"bo";s:7:"tiibeti";s:2:"bo";s:8:"tibetera";s:2:"bo";s:6:"tiibet";s:2:"bo";s:10:"tibetanskt";s:2:"bo";s:9:"tibétain";s:2:"bo";s:10:"tibetaansk";s:2:"bo";s:9:"tibéidis";s:2:"bo";s:8:"tibeitis";s:2:"bo";s:10:"tibeetisch";s:2:"bo";s:6:"tibeti";s:2:"bo";s:8:"tíbeska";s:2:"bo";s:10:"tibehtesch";s:2:"bo";s:9:"tibetesch";s:2:"bo";s:12:"tibetiečių";s:2:"bo";s:10:"tibetiešu";s:2:"bo";s:8:"tibetjan";s:2:"bo";s:9:"tibeetsch";s:2:"bo";s:9:"tibetaans";s:2:"bo";s:11:"tybetański";s:2:"bo";s:13:"tibetano simi";s:2:"bo";s:9:"tibetană";s:2:"bo";s:12:"tibetagiella";s:2:"bo";s:10:"tibetčina";s:2:"bo";s:14:"tibetanščina";s:2:"bo";s:9:"tibetisht";s:2:"bo";s:10:"tibetanska";s:2:"bo";s:8:"tibetçe";s:2:"bo";s:8:"tibetcha";s:2:"bo";s:19:"tiếng tây tạng";s:2:"bo";s:33:"బిష్ణుప్రియ";s:3:"bpy";s:21:"బ్రెటన్";s:2:"br";s:14:"tiếng breton";s:2:"br";s:27:"బోస్నియన్";s:2:"bs";s:15:"tiếng nam tư";s:2:"bs";s:30:"బ్యుగినిస్";s:3:"bug";s:13:"tiếng bugin";s:3:"bug";s:15:"tiếng catalan";s:2:"ca";s:11:"tchetcheneg";s:2:"ce";s:7:"txetxè";s:2:"ce";s:11:"tsietsieneg";s:2:"ce";s:9:"tjetjensk";s:2:"ce";s:15:"tschetschenisch";s:2:"ce";s:11:"tšetšeeni";s:2:"ce";s:12:"tchétchène";s:2:"ce";s:12:"tsjetsjeensk";s:2:"ce";s:16:"tschetscheenisch";s:2:"ce";s:12:"tsjetsjenska";s:2:"ce";s:15:"tschetschenesch";s:2:"ce";s:11:"tsjetsjensk";s:2:"ce";s:15:"tschetscheensch";s:2:"ce";s:11:"tsjetsjeens";s:2:"ce";s:11:"tschetschen";s:2:"ce";s:10:"tjetjenska";s:2:"ce";s:15:"tiếng chechen";s:2:"ce";s:15:"tiếng cebuano";s:3:"ceb";s:9:"tsiamorro";s:2:"ch";s:9:"tšamorro";s:2:"ch";s:16:"tiếng chamorro";s:2:"ch";s:7:"tšokto";s:3:"cho";s:15:"tiếng choctaw";s:3:"cho";s:9:"tsierocî";s:3:"chr";s:9:"tšerokii";s:3:"chr";s:10:"txerokiera";s:3:"chr";s:16:"tiếng cherokee";s:3:"chr";s:17:"tsetsêhestâhese";s:3:"chy";s:16:"tiếng cheyenne";s:3:"chy";s:19:"tiếng kurd sorani";s:3:"ckb";s:15:"tiếng corsica";s:2:"co";s:12:"tiếng cree";s:2:"cr";s:15:"turcu de crimea";s:3:"crh";s:13:"turkeg krimea";s:3:"crh";s:16:"tàtar de crimea";s:3:"crh";s:21:"turečtina (krymská)";s:3:"crh";s:15:"tyrceg y crimea";s:3:"crh";s:18:"tártaro de crimea";s:3:"crh";s:15:"turc de crimée";s:3:"crh";s:17:"turcais chriomach";s:3:"crh";s:12:"tatar krimea";s:3:"crh";s:12:"turco crimeo";s:3:"crh";s:12:"turki krimea";s:3:"crh";s:16:"turco da crimeia";s:3:"crh";s:12:"tirc crimean";s:3:"crh";s:17:"turcă crimeeană";s:3:"crh";s:31:"tiếng thổ nhĩ kỳ crimean";s:3:"crh";s:9:"tsjeggies";s:2:"cs";s:7:"tchekeg";s:2:"cs";s:4:"txec";s:2:"cs";s:7:"tsieceg";s:2:"cs";s:8:"tjekkisk";s:2:"cs";s:11:"tschechisch";s:2:"cs";s:8:"tsɛkgbe";s:2:"cs";s:7:"tšehhi";s:2:"cs";s:8:"txekiera";s:2:"cs";s:7:"tšekki";s:2:"cs";s:8:"tchèque";s:2:"cs";s:9:"tsjechysk";s:2:"cs";s:10:"tékkneska";s:2:"cs";s:8:"tačikit";s:2:"cs";s:10:"tjekkiamut";s:2:"cs";s:13:"tschäschesch";s:2:"cs";s:11:"tschechesch";s:2:"cs";s:5:"tseky";s:2:"cs";s:9:"tsjekkisk";s:2:"cs";s:13:"tschech’sch";s:2:"cs";s:10:"tsjechisch";s:2:"cs";s:6:"tcheco";s:2:"cs";s:6:"tschec";s:2:"cs";s:6:"tyêki";s:2:"cs";s:8:"tatcikit";s:2:"cs";s:9:"tjeckiska";s:2:"cs";s:7:"tačikt";s:2:"cs";s:12:"tiếng séc";s:2:"cs";s:16:"tiếng kashubia";s:3:"csb";s:25:"tiếng slavơ nhà thờ";s:2:"cu";s:10:"tchouvatch";s:2:"cv";s:7:"txuvaix";s:2:"cv";s:14:"tschuwaschisch";s:2:"cv";s:9:"tšuvaši";s:2:"cv";s:9:"tšuvassi";s:2:"cv";s:10:"tchouvache";s:2:"cv";s:12:"tsjoevasjysk";s:2:"cv";s:14:"tschowaschesch";s:2:"cv";s:14:"tschuwaschesch";s:2:"cv";s:9:"tsjuvansk";s:2:"cv";s:16:"tschuwasch’sch";s:2:"cv";s:13:"tsjoevasjisch";s:2:"cv";s:10:"tschuvasch";s:2:"cv";s:11:"tjuvasjiska";s:2:"cv";s:15:"tiếng chuvash";s:2:"cv";s:13:"tiếng wales";s:2:"cy";s:5:"taani";s:2:"da";s:6:"tanska";s:2:"da";s:8:"tänisch";s:2:"da";s:19:"tiếng Đan mạch";s:2:"da";s:4:"tysk";s:2:"de";s:6:"týskt";s:2:"de";s:6:"todesc";s:2:"de";s:9:"tüütsch";s:2:"de";s:7:"tedesco";s:2:"de";s:7:"talmant";s:2:"de";s:8:"tyskisut";s:2:"de";s:7:"tudestg";s:2:"de";s:8:"talimant";s:2:"de";s:5:"tyska";s:2:"de";s:8:"talmanit";s:2:"de";s:14:"tiếng Đức";s:2:"de";s:17:"todesc de austrie";s:5:"de-at";s:17:"tedesco austriaco";s:5:"de-at";s:16:"tudestg austriac";s:5:"de-at";s:40:"tiếng thượng giéc-man (thụy sĩ)";s:5:"de-ch";s:19:"tiếng hạ sorbia";s:3:"dsb";s:14:"tiếng divehi";s:2:"dv";s:16:"tiếng dzongkha";s:2:"dz";s:11:"tiếng ewe";s:2:"ee";s:8:"tagrikit";s:2:"el";s:8:"tagrigit";s:2:"el";s:9:"tayunanit";s:2:"el";s:16:"tiếng hy lạp";s:2:"el";s:7:"turanci";s:2:"en";s:8:"taglizit";s:2:"en";s:8:"tuluttut";s:2:"en";s:8:"tanglizt";s:2:"en";s:11:"tiếng anh";s:2:"en";s:49:"బ్రిటిష్ ఇంగ్లీష్";s:5:"en-gb";s:17:"tiếng anh (anh)";s:5:"en-gb";s:25:"tiếng quốc tế ngữ";s:2:"eo";s:11:"taspenyulit";s:2:"es";s:10:"tasbnyulit";s:2:"es";s:11:"tasbelyunit";s:2:"es";s:20:"tiếng tây ban nha";s:2:"es";s:15:"tiếng estonia";s:2:"et";s:18:"బాస్క్";s:2:"eu";s:14:"tiếng basque";s:2:"eu";s:9:"tafarisit";s:2:"fa";s:8:"tafursit";s:2:"fa";s:14:"tiếng ba tư";s:2:"fa";s:13:"tiếng fulah";s:2:"ff";s:18:"tiếng phần lan";s:2:"fi";s:18:"tornedalen finnish";s:3:"fit";s:13:"tornedal-fins";s:3:"fit";s:18:"tornedalin fincesi";s:3:"fit";s:12:"tiếng fiji";s:2:"fj";s:13:"tiếng faore";s:2:"fo";s:9:"tubabukan";s:2:"fr";s:10:"tafransist";s:2:"fr";s:12:"tafṛansist";s:2:"fr";s:13:"tiếng pháp";s:2:"fr";s:28:"tiếng frisian miền bắc";s:3:"frr";s:16:"tiếng friulian";s:3:"fur";s:14:"tiếng frisia";s:2:"fy";s:14:"tiếng ai-len";s:2:"ga";s:14:"tiếng gagauz";s:3:"gag";s:22:"traditional gan script";s:8:"gan-hant";s:27:"tiếng xentơ (xcốt len)";s:2:"gd";s:16:"tiếng galician";s:2:"gl";s:15:"tiếng guarani";s:2:"gn";s:17:"tiếng gô-tích";s:3:"got";s:21:"tiếng hy lạp cổ";s:3:"grc";s:16:"tedesco svizzero";s:3:"gsw";s:15:"tudestg svizzer";s:3:"gsw";s:27:"tiếng Đức (thụy sĩ)";s:3:"gsw";s:16:"tiếng gujarati";s:2:"gu";s:12:"tiếng manx";s:2:"gv";s:8:"tahwasit";s:2:"ha";s:8:"tahawsat";s:2:"ha";s:13:"tiếng hausa";s:2:"ha";s:14:"tiếng hawaii";s:3:"haw";s:16:"tiếng do thái";s:2:"he";s:8:"tahendit";s:2:"hi";s:8:"tahindit";s:2:"hi";s:13:"tiếng hindi";s:2:"hi";s:18:"tiếng hiligaynon";s:3:"hil";s:17:"tiếng hiri motu";s:2:"ho";s:15:"tiếng croatia";s:2:"hr";s:24:"tiếng thượng sorbia";s:3:"hsb";s:13:"tiếng haiti";s:2:"ht";s:10:"tahungarit";s:2:"hu";s:10:"tahnɣarit";s:2:"hu";s:11:"tahenɣarit";s:2:"hu";s:15:"tiếng hungary";s:2:"hu";s:15:"tiếng armenia";s:2:"hy";s:14:"tiếng herero";s:2:"hz";s:30:"tiếng khoa học quốc tế";s:2:"ia";s:10:"tandunisit";s:2:"id";s:10:"tindunisit";s:2:"id";s:17:"tiếng indonesia";s:2:"id";s:19:"tiếng interlingue";s:2:"ie";s:6:"tigbut";s:2:"ig";s:12:"tiếng igbo";s:2:"ig";s:22:"tiếng di tứ xuyên";s:2:"ii";s:15:"tiếng inupiaq";s:2:"ik";s:13:"tiếng iloko";s:3:"ilo";s:14:"tiếng ingush";s:3:"inh";s:11:"tiếng ido";s:2:"io";s:15:"tiếng iceland";s:2:"is";s:6:"talian";s:2:"it";s:10:"talijanski";s:2:"it";s:12:"taṭalyanit";s:2:"it";s:6:"taljan";s:2:"it";s:11:"taṭalyant";s:2:"it";s:11:"taliančina";s:2:"it";s:8:"talyaani";s:2:"it";s:10:"tiếng Ý";s:2:"it";s:17:"tiếng inuktitut";s:2:"iu";s:9:"tajapunit";s:2:"ja";s:10:"tajabbunit";s:2:"ja";s:10:"tajappunit";s:2:"ja";s:14:"tiếng nhật";s:2:"ja";s:14:"tiếng lojban";s:3:"jbo";s:9:"tajavanit";s:2:"jv";s:12:"tiếng java";s:2:"jv";s:14:"tiếng gruzia";s:2:"ka";s:19:"tiếng kara-kalpak";s:3:"kaa";s:9:"taqbaylit";s:3:"kab";s:14:"tiếng kabyle";s:3:"kab";s:17:"tiếng kabardian";s:3:"kbd";s:13:"tiếng kongo";s:2:"kg";s:14:"tiếng kikuyu";s:2:"ki";s:16:"tiếng kuanyama";s:2:"kj";s:14:"tiếng kazakh";s:2:"kk";s:19:"tiếng kalaallisut";s:2:"kl";s:8:"takemrit";s:2:"km";s:7:"taxmirt";s:2:"km";s:18:"taxmert ,talammast";s:2:"km";s:15:"tiếng khơ-me";s:2:"km";s:15:"tiếng kannada";s:2:"kn";s:7:"takurit";s:2:"ko";s:12:"tiếng hàn";s:2:"ko";s:20:"tiếng komi-permyak";s:3:"koi";s:14:"tiếng kanuri";s:2:"kr";s:23:"tiếng karachay-balkar";s:3:"krc";s:16:"tiếng kashmiri";s:2:"ks";s:15:"tiếng cologne";s:3:"ksh";s:12:"tiếng kurd";s:2:"ku";s:12:"tiếng komi";s:2:"kv";s:16:"tiếng cornwall";s:2:"kw";s:14:"tiếng kyrgyz";s:2:"ky";s:15:"tiếng la-tinh";s:2:"la";s:14:"tiếng ladino";s:3:"lad";s:18:"tiếng luxembourg";s:2:"lb";s:16:"tiếng lezghian";s:3:"lez";s:13:"tiếng ganda";s:2:"lg";s:15:"tiếng limburg";s:2:"li";s:15:"tiếng lingala";s:2:"ln";s:12:"tiếng lào";s:2:"lo";s:12:"tiếng lozi";s:3:"loz";s:15:"tiếng lít-va";s:2:"lt";s:14:"tiếng lushai";s:3:"lus";s:14:"tiếng latvia";s:2:"lv";s:16:"tiếng maithili";s:3:"mai";s:14:"tiếng moksha";s:3:"mdf";s:16:"tiếng malagasy";s:2:"mg";s:16:"tiếng marshall";s:2:"mh";s:13:"tiếng maori";s:2:"mi";s:19:"tiếng minangkabau";s:3:"min";s:17:"tiếng macedonia";s:2:"mk";s:17:"tiếng malayalam";s:2:"ml";s:18:"tiếng mông cổ";s:2:"mn";s:15:"tiếng marathi";s:2:"mr";s:9:"tamalawit";s:2:"ms";s:9:"tamalizit";s:2:"ms";s:16:"tiếng malaysia";s:2:"ms";s:12:"tiếng malt";s:2:"mt";s:13:"tiếng creek";s:3:"mus";s:15:"tiếng miranda";s:3:"mwl";s:10:"taburmisit";s:2:"my";s:10:"tabirmanit";s:2:"my";s:21:"బర్మీస్";s:2:"my";s:10:"taburmanit";s:2:"my";s:22:"tiếng miến Điện";s:2:"my";s:13:"tiếng erzya";s:3:"myv";s:13:"tiếng nauru";s:2:"na";s:14:"tiếng napoli";s:3:"nap";s:23:"tiếng na uy (bokmål)";s:2:"nb";s:22:"tiếng hạ giéc-man";s:3:"nds";s:9:"tanipalit";s:2:"ne";s:18:"နီပါလီ";s:2:"ne";s:9:"tanibalit";s:2:"ne";s:10:"tanippalit";s:2:"ne";s:13:"tiếng nepal";s:2:"ne";s:14:"tiếng newari";s:3:"new";s:14:"tiếng ndonga";s:2:"ng";s:14:"tiếng niuean";s:3:"niu";s:8:"tadučit";s:2:"nl";s:10:"tahulandit";s:2:"nl";s:12:"tahulanḍit";s:2:"nl";s:15:"tiếng hà lan";s:2:"nl";s:55:"နော်ဝေး နီးနော်စ်ခ်";s:2:"nn";s:23:"tiếng na uy (nynorsk)";s:2:"nn";s:21:"နော်ဝေး";s:2:"no";s:13:"tiếng na uy";s:2:"no";s:14:"tiếng navajo";s:2:"nv";s:14:"tiếng nyanja";s:2:"ny";s:15:"tiếng occitan";s:2:"oc";s:13:"tiếng oromo";s:2:"om";s:13:"tiếng oriya";s:2:"or";s:15:"tiếng ossetic";s:2:"os";s:10:"tapunjabit";s:2:"pa";s:9:"tabnjabit";s:2:"pa";s:10:"tabenjabit";s:2:"pa";s:14:"tiếng punjab";s:2:"pa";s:18:"tiếng pangasinan";s:3:"pag";s:16:"tiếng pampanga";s:3:"pam";s:18:"tiếng papiamento";s:3:"pap";s:26:"tedesco della pennsylvania";s:3:"pdc";s:16:"tedesco palatino";s:3:"pfl";s:12:"tiếng pali";s:2:"pi";s:9:"tapulunit";s:2:"pl";s:9:"tabulunit";s:2:"pl";s:10:"tappulunit";s:2:"pl";s:14:"tiếng ba lan";s:2:"pl";s:14:"tiếng pashto";s:2:"ps";s:12:"tapurtugalit";s:2:"pt";s:13:"tabṛṭqizt";s:2:"pt";s:13:"taburtuɣalit";s:2:"pt";s:22:"tiếng bồ Đào nha";s:2:"pt";s:64:"బ్రెజీలియన్ పోర్చుగీస్";s:5:"pt-br";s:31:"tiếng bồ Đào nha (braxin)";s:5:"pt-br";s:15:"tiếng quechua";s:2:"qu";s:7:"tarifit";s:3:"rif";s:15:"tiếng romansh";s:2:"rm";s:13:"tiếng rundi";s:2:"rn";s:9:"tarumanit";s:2:"ro";s:11:"taṛumanit";s:2:"ro";s:14:"tiếng rumani";s:2:"ro";s:10:"tarandíne";s:8:"roa-tara";s:7:"tarusit";s:2:"ru";s:11:"tiếng nga";s:2:"ru";s:16:"tiếng aromania";s:3:"rup";s:10:"taruwandit";s:2:"rw";s:9:"tarwandit";s:2:"rw";s:19:"tiếng kinyarwanda";s:2:"rw";s:14:"tiếng phạn";s:2:"sa";s:13:"tiếng sakha";s:3:"sah";s:15:"tiếng santali";s:3:"sat";s:16:"tiếng sardinia";s:2:"sc";s:15:"tiếng sicilia";s:3:"scn";s:13:"tiếng scots";s:3:"sco";s:14:"tiếng sindhi";s:2:"sd";s:25:"tiếng sami miền bắc";s:2:"se";s:13:"tiếng sango";s:2:"sg";s:25:"tiếng xéc bi - croatia";s:2:"sh";s:33:"tašlḥiyt/ⵜⴰⵛⵍⵃⵉⵜ";s:3:"shi";s:9:"tachelhit";s:3:"shi";s:8:"taçelit";s:3:"shi";s:8:"tahelhit";s:3:"shi";s:9:"taixelhit";s:3:"shi";s:10:"taschelhit";s:3:"shi";s:9:"tašelhit";s:3:"shi";s:9:"tashelhit";s:3:"shi";s:10:"tachelhiti";s:3:"shi";s:10:"tachelhita";s:3:"shi";s:10:"tashelhiyt";s:3:"shi";s:11:"tachelhitų";s:3:"shi";s:9:"tamazight";s:3:"tmh";s:24:"tahelitska berberščina";s:3:"shi";s:9:"taşelhit";s:3:"shi";s:12:"tachilgitcha";s:3:"shi";s:17:"tiếng tachelhit";s:3:"shi";s:11:"tašlḥiyt";s:8:"shi-latn";s:15:"tiếng sinhala";s:2:"si";s:14:"tiếng slovak";s:2:"sk";s:16:"tiếng slovenia";s:2:"sl";s:16:"tedesco slesiano";s:3:"sli";s:13:"tiếng samoa";s:2:"sm";s:23:"tiếng sami miền nam";s:3:"sma";s:13:"tiếng shona";s:2:"sn";s:11:"taṣumalit";s:2:"so";s:9:"tasumalit";s:2:"so";s:14:"tiếng somali";s:2:"so";s:16:"tiếng an-ba-ni";s:2:"sq";s:14:"tiếng serbia";s:2:"sr";s:20:"tiếng sranan tongo";s:3:"srn";s:13:"tiếng swati";s:2:"ss";s:15:"tiếng sesotho";s:2:"st";s:13:"tiếng sudan";s:2:"su";s:8:"taswidit";s:2:"sv";s:22:"tiếng thụy Điển";s:2:"sv";s:15:"tiếng swahili";s:2:"sw";s:5:"tamil";s:2:"ta";s:10:"tamil kasa";s:2:"ta";s:9:"tamulikan";s:2:"ta";s:7:"tamileg";s:2:"ta";s:8:"tamilski";s:2:"ta";s:6:"tàmil";s:2:"ta";s:11:"tamilština";s:2:"ta";s:7:"tamilsk";s:2:"ta";s:9:"tamilisch";s:2:"ta";s:12:"tamilšćina";s:2:"ta";s:8:"tamilgbe";s:2:"ta";s:6:"tamila";s:2:"ta";s:6:"tamili";s:2:"ta";s:8:"tamilera";s:2:"ta";s:8:"tamilskt";s:2:"ta";s:6:"tamoul";s:2:"ta";s:8:"tamailis";s:2:"ta";s:8:"taimilis";s:2:"ta";s:10:"tamụlụ";s:2:"ta";s:9:"tamílska";s:2:"ta";s:11:"taṭamulit";s:2:"ta";s:10:"tamiilesch";s:2:"ta";s:9:"tamilesch";s:2:"ta";s:7:"tamilų";s:2:"ta";s:6:"tamilu";s:2:"ta";s:7:"tamoila";s:2:"ta";s:8:"tamilsch";s:2:"ta";s:6:"tâmil";s:2:"ta";s:10:"tamil simi";s:2:"ta";s:7:"tamilă";s:2:"ta";s:8:"tämûli";s:2:"ta";s:8:"tatamilt";s:2:"ta";s:10:"tamilčina";s:2:"ta";s:12:"tamilščina";s:2:"ta";s:6:"tamiil";s:2:"ta";s:6:"tamile";s:2:"ta";s:7:"tamilce";s:2:"ta";s:8:"tamilcha";s:2:"ta";s:13:"tiếng tamil";s:2:"ta";s:4:"tulu";s:3:"tcy";s:8:"touloueg";s:3:"tcy";s:10:"tuluština";s:3:"tcy";s:6:"toulou";s:3:"tcy";s:5:"tulų";s:3:"tcy";s:6:"tuluca";s:3:"tcy";s:6:"telugu";s:2:"te";s:6:"teluqu";s:2:"te";s:8:"telougou";s:2:"te";s:11:"telugština";s:2:"te";s:12:"telugšćina";s:2:"te";s:9:"telegugbe";s:2:"te";s:7:"telugua";s:2:"te";s:9:"teluguera";s:2:"te";s:9:"telugiskt";s:2:"te";s:9:"télougou";s:2:"te";s:6:"telegu";s:2:"te";s:11:"teileagúis";s:2:"te";s:8:"telúgú";s:2:"te";s:8:"telluuju";s:2:"te";s:7:"telugų";s:2:"te";s:11:"telugu simi";s:2:"te";s:10:"telugčina";s:2:"te";s:14:"telugijščina";s:2:"te";s:7:"teluugu";s:2:"te";s:6:"teluge";s:2:"te";s:9:"telugiska";s:2:"te";s:11:"telugu dili";s:2:"te";s:11:"telugvancha";s:2:"te";s:14:"tiếng telugu";s:2:"te";s:5:"tetun";s:3:"tet";s:5:"tetum";s:3:"tet";s:10:"tetum dili";s:3:"tet";s:11:"tetumština";s:3:"tet";s:7:"tetumeg";s:3:"tet";s:13:"tetum-sprache";s:3:"tet";s:8:"tetumgbe";s:3:"tet";s:6:"tetún";s:3:"tet";s:6:"tetumi";s:3:"tet";s:6:"tetuma";s:3:"tet";s:15:"tetum-schpraach";s:3:"tet";s:6:"tetúm";s:3:"tet";s:8:"tetumsch";s:3:"tet";s:13:"tetum-sprooch";s:3:"tet";s:6:"tetumu";s:3:"tet";s:6:"tétum";s:3:"tet";s:12:"tetumščina";s:3:"tet";s:9:"tadzjieks";s:2:"tg";s:14:"taxiquistanín";s:2:"tg";s:5:"tacik";s:2:"tg";s:6:"tadjik";s:2:"tg";s:10:"tadžički";s:2:"tg";s:13:"tádžičtina";s:2:"tg";s:7:"tajiceg";s:2:"tg";s:5:"tajik";s:2:"tg";s:12:"tadschikisch";s:2:"tg";s:15:"tadžikišćina";s:2:"tg";s:14:"tadzikistangbe";s:2:"tg";s:7:"taĝika";s:2:"tg";s:6:"tayiko";s:2:"tg";s:8:"tadžiki";s:2:"tg";s:13:"tajikistanera";s:2:"tg";s:9:"tadžikki";s:2:"tg";s:9:"tajikiskt";s:2:"tg";s:5:"tagic";s:2:"tg";s:11:"táidsícis";s:2:"tg";s:8:"taidigis";s:2:"tg";s:6:"taxico";s:2:"tg";s:14:"tadźikšćina";s:2:"tg";s:7:"tadzsik";s:2:"tg";s:10:"tadsjikska";s:2:"tg";s:6:"tagico";s:2:"tg";s:13:"tadschiikesch";s:2:"tg";s:12:"tadschikesch";s:2:"tg";s:9:"tadžikų";s:2:"tg";s:8:"tadžiku";s:2:"tg";s:6:"taġik";s:2:"tg";s:10:"tadsjikisk";s:2:"tg";s:11:"tadschiksch";s:2:"tg";s:10:"tatsjikisk";s:2:"tg";s:9:"tadżycki";s:2:"tg";s:7:"tajique";s:2:"tg";s:11:"tayiko simi";s:2:"tg";s:8:"tadjică";s:2:"tg";s:6:"tađik";s:2:"tg";s:12:"tadžičtina";s:2:"tg";s:13:"tadžiščina";s:2:"tg";s:10:"taxhikisht";s:2:"tg";s:11:"tadzjikiska";s:2:"tg";s:8:"tacikçe";s:2:"tg";s:8:"tojikcha";s:2:"tg";s:13:"tiếng tajik";s:2:"tg";s:23:"tajik (cyrillic script)";s:7:"tg-cyrl";s:7:"tojikī";s:7:"tg-latn";s:20:"tajik (latin script)";s:7:"tg-latn";s:4:"thai";s:2:"th";s:12:"taeland kasa";s:2:"th";s:10:"tailandés";s:2:"th";s:3:"tay";s:2:"th";s:7:"tayikan";s:2:"th";s:10:"tajlandski";s:2:"th";s:10:"tailandès";s:2:"th";s:10:"thajština";s:2:"th";s:10:"thailandsk";s:2:"th";s:13:"thailändisch";s:2:"th";s:15:"thailandšćina";s:2:"th";s:10:"tailandgbe";s:2:"th";s:4:"taja";s:2:"th";s:3:"tai";s:2:"th";s:12:"thailandiera";s:2:"th";s:4:"taay";s:2:"th";s:11:"thailendskt";s:2:"th";s:5:"thaï";s:2:"th";s:5:"thais";s:2:"th";s:11:"téalainnis";s:2:"th";s:6:"tàidh";s:2:"th";s:5:"taị";s:2:"th";s:10:"taílenska";s:2:"th";s:13:"taṭaylundit";s:2:"th";s:15:"thailandimiutut";s:2:"th";s:12:"tailändesch";s:2:"th";s:13:"thailännesch";s:2:"th";s:5:"tajų";s:2:"th";s:4:"taju";s:2:"th";s:8:"taioaney";s:2:"th";s:10:"tajlandiż";s:2:"th";s:6:"tajski";s:2:"th";s:10:"tailandês";s:2:"th";s:14:"tailandes simi";s:2:"th";s:10:"tailandais";s:2:"th";s:12:"thailandeză";s:2:"th";s:5:"thâi";s:2:"th";s:11:"tataylandit";s:2:"th";s:9:"thajčina";s:2:"th";s:10:"tajščina";s:2:"th";s:11:"taaylandays";s:2:"th";s:11:"tajlandisht";s:2:"th";s:12:"thailändska";s:2:"th";s:5:"tayca";s:2:"th";s:8:"taṭayt";s:2:"th";s:6:"taycha";s:2:"th";s:13:"tiếng thái";s:2:"th";s:8:"tigrinya";s:2:"ti";s:6:"tiqrin";s:2:"ti";s:8:"tigrigna";s:2:"ti";s:8:"tigrinja";s:2:"ti";s:14:"tigrinijština";s:2:"ti";s:11:"tigrinyagbe";s:2:"ti";s:7:"tigraja";s:2:"ti";s:8:"tigriña";s:2:"ti";s:10:"tigriñera";s:2:"ti";s:8:"tigrinis";s:2:"ti";s:10:"tigriyanci";s:2:"ti";s:13:"tigrinšćina";s:2:"ti";s:9:"tígrinja";s:2:"ti";s:7:"tigrino";s:2:"ti";s:15:"tijrenejaanesch";s:2:"ti";s:8:"tigrajų";s:2:"ti";s:8:"tigrinia";s:2:"ti";s:9:"tigrínia";s:2:"ti";s:13:"tigriña simi";s:2:"ti";s:8:"tigrină";s:2:"ti";s:8:"tigriňa";s:2:"ti";s:13:"tigrajščina";s:2:"ti";s:8:"tigrinje";s:2:"ti";s:9:"tigrincha";s:2:"ti";s:16:"tiếng tigrigya";s:2:"ti";s:11:"türkmençe";s:2:"tk";s:9:"turkmeens";s:2:"tk";s:9:"turcomanu";s:2:"tk";s:9:"türkmən";s:2:"tk";s:9:"turkmeneg";s:2:"tk";s:10:"turkmenski";s:2:"tk";s:7:"turcman";s:2:"tk";s:13:"turkmenština";s:2:"tk";s:9:"twrcmeneg";s:2:"tk";s:9:"turkmensk";s:2:"tk";s:11:"turkmenisch";s:2:"tk";s:15:"turkmeńšćina";s:2:"tk";s:10:"tɛkmengbe";s:2:"tk";s:7:"turkmen";s:2:"tk";s:8:"turkmena";s:2:"tk";s:9:"turcomano";s:2:"tk";s:10:"türkmeeni";s:2:"tk";s:11:"turkmeniera";s:2:"tk";s:9:"turkmeeni";s:2:"tk";s:10:"turkmenskt";s:2:"tk";s:9:"turkmène";s:2:"tk";s:7:"turcmen";s:2:"tk";s:12:"tuircméinis";s:2:"tk";s:10:"turcmanais";s:2:"tk";s:13:"tukmenistanci";s:2:"tk";s:14:"turkmenšćina";s:2:"tk";s:9:"türkmén";s:2:"tk";s:8:"turkmeno";s:2:"tk";s:11:"túrkmenska";s:2:"tk";s:10:"turcomanno";s:2:"tk";s:13:"törkmeenesch";s:2:"tk";s:11:"turkmenesch";s:2:"tk";s:10:"turkmėnų";s:2:"tk";s:10:"turkmēņu";s:2:"tk";s:8:"turkmeni";s:2:"tk";s:11:"turkmeensch";s:2:"tk";s:11:"turkmeński";s:2:"tk";s:9:"turcomeno";s:2:"tk";s:14:"turcomano simi";s:2:"tk";s:9:"turkmenă";s:2:"tk";s:13:"turkménčina";s:2:"tk";s:14:"turkmenščina";s:2:"tk";s:12:"turkumaanish";s:2:"tk";s:11:"turkmenisht";s:2:"tk";s:11:"turkmeniska";s:2:"tk";s:10:"türkmence";s:2:"tk";s:10:"turkmancha";s:2:"tk";s:12:"tiếng turk";s:2:"tk";s:7:"tagalog";s:3:"fil";s:12:"taqaloq dili";s:2:"tl";s:8:"tagalski";s:2:"tl";s:8:"tagàlog";s:2:"tl";s:9:"tagalogbe";s:2:"tl";s:8:"tagaloga";s:3:"fil";s:6:"tagalo";s:2:"tl";s:8:"tagalogi";s:2:"tl";s:11:"tagálaigis";s:2:"tl";s:9:"tagalogų";s:2:"tl";s:6:"tagalu";s:2:"tl";s:9:"tagalogue";s:2:"tl";s:10:"tagalčina";s:2:"tl";s:14:"tagalogščina";s:2:"tl";s:10:"takalotça";s:2:"tl";s:15:"tiếng tagalog";s:2:"tl";s:10:"talyština";s:3:"tly";s:7:"talisch";s:3:"tly";s:6:"talysh";s:3:"tly";s:7:"tališi";s:3:"tly";s:8:"taliscio";s:3:"tly";s:7:"talesch";s:3:"tly";s:8:"talyšų";s:3:"tly";s:8:"tałyski";s:3:"tly";s:10:"talışça";s:3:"tly";s:6:"tswana";s:2:"tn";s:6:"tsvana";s:2:"tn";s:14:"tswana-sprache";s:2:"tn";s:9:"tswanagbe";s:2:"tn";s:8:"tswanera";s:2:"tn";s:16:"tswana-schpraach";s:2:"tn";s:7:"tsúana";s:2:"tn";s:14:"tswana-sprooch";s:2:"tn";s:10:"tswančina";s:2:"tn";s:14:"tiếng tswana";s:2:"tn";s:8:"tongaans";s:2:"to";s:7:"tonganu";s:2:"to";s:5:"tonqa";s:2:"to";s:5:"tonga";s:3:"tog";s:9:"tongalès";s:2:"to";s:13:"tongánština";s:2:"to";s:6:"tongeg";s:2:"to";s:8:"tongansk";s:2:"to";s:9:"tongaisch";s:2:"to";s:13:"tonganšćina";s:2:"to";s:8:"tongagbe";s:2:"to";s:6:"tongan";s:2:"to";s:6:"tongaa";s:2:"to";s:7:"tongano";s:2:"to";s:7:"tongera";s:2:"to";s:9:"tonganskt";s:2:"to";s:8:"tonguien";s:2:"to";s:9:"tongaansk";s:2:"to";s:7:"tongais";s:2:"to";s:9:"tonganés";s:2:"to";s:9:"tonganski";s:2:"to";s:12:"tongašćina";s:2:"to";s:10:"tongverska";s:2:"to";s:12:"tongjaanesch";s:2:"to";s:9:"tongaesch";s:2:"to";s:8:"tonganų";s:2:"to";s:9:"tongiešu";s:2:"to";s:9:"tongaasch";s:2:"to";s:20:"tonga (tonga-øyane)";s:2:"to";s:9:"tonganês";s:2:"to";s:9:"tongčina";s:2:"to";s:11:"tongščina";s:2:"to";s:10:"tonganisht";s:2:"to";s:9:"tonganska";s:2:"to";s:7:"tongaca";s:2:"to";s:8:"tongocha";s:2:"to";s:13:"tiếng tonga";s:2:"to";s:9:"toki pona";s:8:"tokipona";s:9:"tok pisin";s:3:"tpi";s:14:"tok pisin dili";s:3:"tpi";s:11:"tok pisigbe";s:3:"tpi";s:10:"tok pisina";s:3:"tpi";s:9:"tok-pisin";s:3:"tpi";s:8:"tokpisin";s:3:"tpi";s:10:"took pisin";s:3:"tpi";s:9:"tokpisins";s:3:"tpi";s:17:"tiếng tok pisin";s:3:"tpi";s:8:"türkçe";s:2:"tr";s:5:"turks";s:2:"tr";s:12:"tɛɛki kasa";s:2:"tr";s:5:"turcu";s:2:"tr";s:5:"türk";s:2:"tr";s:9:"turikikan";s:2:"tr";s:6:"turkeg";s:2:"tr";s:6:"turski";s:2:"tr";s:4:"turc";s:2:"tr";s:10:"turečtina";s:2:"tr";s:6:"tyrceg";s:2:"tr";s:7:"tyrkisk";s:2:"tr";s:9:"türkisch";s:2:"tr";s:13:"turkojšćina";s:2:"tr";s:8:"tɛkigbe";s:2:"tr";s:7:"turkish";s:2:"tr";s:5:"turka";s:2:"tr";s:5:"turco";s:2:"tr";s:6:"türgi";s:2:"tr";s:8:"turkiera";s:2:"tr";s:8:"turkeere";s:2:"tr";s:6:"turkki";s:2:"tr";s:8:"turkiskt";s:2:"tr";s:7:"tuircis";s:2:"tr";s:7:"turcais";s:2:"tr";s:13:"turkowšćina";s:2:"tr";s:7:"török";s:2:"tr";s:5:"turki";s:2:"tr";s:10:"tọkiishi";s:2:"tr";s:9:"tyrkneska";s:2:"tr";s:10:"taṭurkit";s:2:"tr";s:11:"tyrkiskisut";s:2:"tr";s:9:"törkesch";s:2:"tr";s:9:"tierkesch";s:2:"tr";s:6:"turkų";s:2:"tr";s:5:"turku";s:2:"tr";s:6:"tiorka";s:2:"tr";s:4:"tork";s:2:"tr";s:8:"törksch";s:2:"tr";s:7:"turecki";s:2:"tr";s:10:"turco simi";s:2:"tr";s:4:"tirc";s:2:"tr";s:6:"turcă";s:2:"tr";s:8:"tûrûku";s:2:"tr";s:8:"taturkit";s:2:"tr";s:10:"turščina";s:2:"tr";s:8:"turqisht";s:2:"tr";s:8:"turkiska";s:2:"tr";s:7:"turkcha";s:2:"tr";s:23:"tiếng thổ nhĩ kỳ";s:2:"tr";s:11:"turojština";s:3:"tru";s:6:"turoyo";s:3:"tru";s:6:"turojo";s:3:"tru";s:7:"touroyo";s:3:"tru";s:6:"tsonga";s:2:"ts";s:8:"tsongaeg";s:2:"ts";s:9:"tsongagbe";s:2:"ts";s:8:"tsongera";s:2:"ts";s:14:"tiếng tsonga";s:2:"ts";s:7:"tataars";s:2:"tt";s:8:"tártaru";s:2:"tt";s:5:"tatar";s:2:"tt";s:8:"tatarski";s:2:"tt";s:6:"tàtar";s:2:"tt";s:11:"tatarština";s:2:"tt";s:7:"tatareg";s:2:"tt";s:8:"tatarisk";s:2:"tt";s:9:"tatarisch";s:2:"tt";s:12:"tataršćina";s:2:"tt";s:8:"tatargbe";s:2:"tt";s:6:"tatara";s:2:"tt";s:8:"tártaro";s:2:"tt";s:6:"tatari";s:2:"tt";s:8:"tatarera";s:2:"tt";s:7:"tataari";s:2:"tt";s:9:"tatariskt";s:2:"tt";s:6:"tartar";s:2:"tt";s:8:"tatairis";s:2:"tt";s:8:"tatarais";s:2:"tt";s:6:"tatár";s:2:"tt";s:8:"tatarska";s:2:"tt";s:6:"tataro";s:2:"tt";s:11:"tattaaresch";s:2:"tt";s:9:"tataresch";s:2:"tt";s:8:"totorių";s:2:"tt";s:7:"tatāru";s:2:"tt";s:9:"tataarsch";s:2:"tt";s:12:"tartaro simi";s:2:"tt";s:8:"tătară";s:2:"tt";s:11:"tatárčina";s:2:"tt";s:12:"tatarščina";s:2:"tt";s:9:"tatarisht";s:2:"tt";s:9:"tatariska";s:2:"tt";s:7:"tatarca";s:2:"tt";s:8:"tatarcha";s:2:"tt";s:13:"tiếng tatar";s:2:"tt";s:23:"tatar (cyrillic script)";s:7:"tt-cyrl";s:8:"tatarça";s:7:"tt-latn";s:20:"tatar (latin script)";s:7:"tt-latn";s:9:"toemboeka";s:3:"tum";s:7:"tumbuka";s:3:"tum";s:12:"tumbuka dili";s:3:"tum";s:12:"tumbukština";s:3:"tum";s:15:"tumbuka-sprache";s:3:"tum";s:9:"tumbukera";s:3:"tum";s:17:"tumbuka-schpraach";s:3:"tum";s:9:"túmbúka";s:3:"tum";s:15:"tumbuka-sprooch";s:3:"tum";s:8:"tumbukų";s:3:"tum";s:7:"tumbuku";s:3:"tum";s:13:"tumbukščina";s:3:"tum";s:15:"tiếng tumbuka";s:3:"tum";s:3:"twi";s:2:"tw";s:8:"tvi dili";s:2:"tw";s:3:"tvi";s:2:"tw";s:2:"tw";s:2:"tw";s:4:"tvii";s:2:"tw";s:4:"twia";s:2:"tw";s:7:"tíbhis";s:2:"tw";s:11:"tiwiniyanci";s:2:"tw";s:4:"tví";s:2:"tw";s:4:"tvī";s:2:"tw";s:7:"tiwiyan";s:2:"tw";s:11:"tiếng twi";s:2:"tw";s:8:"tahities";s:2:"ty";s:9:"tahitianu";s:2:"ty";s:11:"taxiti dili";s:2:"ty";s:10:"tahitianeg";s:2:"ty";s:11:"tahićanski";s:2:"ty";s:8:"tahitià";s:2:"ty";s:11:"tahitština";s:2:"ty";s:9:"tahitïeg";s:2:"ty";s:10:"tahitiansk";s:2:"ty";s:9:"tahitisch";s:2:"ty";s:13:"tahitišćina";s:2:"ty";s:9:"tahitigbe";s:2:"ty";s:8:"tahitian";s:2:"ty";s:9:"tahitiano";s:2:"ty";s:6:"tahiti";s:2:"ty";s:9:"tahitiera";s:2:"ty";s:9:"tahitiskt";s:2:"ty";s:8:"tahitien";s:2:"ty";s:8:"tahitysk";s:2:"ty";s:9:"taihítis";s:2:"ty";s:11:"tahítíska";s:2:"ty";s:8:"taitiano";s:2:"ty";s:9:"tahitesch";s:2:"ty";s:11:"taitiečių";s:2:"ty";s:9:"taitiešu";s:2:"ty";s:9:"taħitjan";s:2:"ty";s:8:"tahitisk";s:2:"ty";s:8:"tahitsch";s:2:"ty";s:10:"tahitiaans";s:2:"ty";s:11:"tahitański";s:2:"ty";s:10:"tahitiană";s:2:"ty";s:12:"tahitigiella";s:2:"ty";s:10:"tahitčina";s:2:"ty";s:12:"tahitščina";s:2:"ty";s:9:"tahitiska";s:2:"ty";s:11:"tahiti dili";s:2:"ty";s:14:"tiếng tahiti";s:2:"ty";s:9:"tuvinianu";s:3:"tyv";s:13:"tuvinyan dili";s:3:"tyv";s:5:"touva";s:3:"tyv";s:10:"tuvinijski";s:3:"tyv";s:8:"tuvinià";s:3:"tyv";s:11:"tuvinština";s:3:"tyv";s:8:"tuvinian";s:3:"tyv";s:9:"tuwinisch";s:3:"tyv";s:10:"tuviniagbe";s:3:"tyv";s:9:"tuviniano";s:3:"tyv";s:5:"tõva";s:3:"tyv";s:4:"tuva";s:3:"tyv";s:8:"tuvinysk";s:3:"tyv";s:5:"tuvai";s:3:"tyv";s:7:"tuvinia";s:3:"tyv";s:10:"túvínska";s:3:"tyv";s:9:"tuwinesch";s:3:"tyv";s:6:"tuvių";s:3:"tyv";s:8:"tuviešu";s:3:"tyv";s:8:"tuvinjan";s:3:"tyv";s:8:"tuvinisk";s:3:"tyv";s:8:"tuwinsch";s:3:"tyv";s:8:"toevaans";s:3:"tyv";s:9:"tuwiński";s:3:"tyv";s:7:"tuvană";s:3:"tyv";s:11:"tuviančina";s:3:"tyv";s:12:"tuvinščina";s:3:"tyv";s:9:"tuviniska";s:3:"tyv";s:6:"tuvaca";s:3:"tyv";s:16:"tiếng tuvinian";s:3:"tyv";s:27:"tamazight del atlas central";s:3:"tzm";s:28:"tamazight (střední maroko)";s:3:"tzm";s:31:"tamazight del marruecos central";s:3:"tzm";s:28:"tamazight (sintraal-marokko)";s:3:"tzm";s:28:"tamazight meadhan na h-atlas";s:3:"tzm";s:27:"tamazight marroquí central";s:3:"tzm";s:29:"tamazight (srjedźny marokko)";s:3:"tzm";s:23:"tamazight maroko tengah";s:3:"tzm";s:22:"tamazight atlas tengah";s:3:"tzm";s:28:"tamazight (centraal-marokko)";s:3:"tzm";s:26:"tamazight do atlas central";s:3:"tzm";s:27:"tamazight central marocană";s:3:"tzm";s:25:"tamašek (stredomarocký)";s:3:"tzm";s:24:"tamašek (srednji atlas)";s:3:"tzm";s:29:"tamaziatishte atlase qendrore";s:3:"tzm";s:9:"tamaziɣt";s:3:"tzm";s:39:"tiếng tamazight miền trung ma-rốc";s:3:"tzm";s:14:"tiếng udmurt";s:3:"udm";s:14:"tiếng uyghur";s:2:"ug";s:8:"tukranit";s:2:"uk";s:15:"tiếng ucraina";s:2:"uk";s:6:"turdut";s:2:"ur";s:12:"tiếng uđu";s:2:"ur";s:13:"tiếng uzbek";s:2:"uz";s:9:"tshivenda";s:2:"ve";s:11:"tshivenḓa";s:2:"ve";s:13:"tiếng venda";s:2:"ve";s:14:"tiếng việt";s:2:"vi";s:13:"tabyiṭnamit";s:2:"vi";s:10:"tafitnamit";s:2:"vi";s:12:"taviṭnamit";s:2:"vi";s:16:"tiếng volapük";s:2:"vo";s:13:"tiếng votic";s:3:"vot";s:15:"tiếng walloon";s:2:"wa";s:13:"tiếng waray";s:3:"war";s:13:"tiếng wolof";s:2:"wo";s:14:"tiếng kalmyk";s:3:"xal";s:13:"tiếng xhosa";s:2:"xh";s:14:"tiếng y-đit";s:2:"yi";s:9:"tayurubit";s:2:"yo";s:8:"tayrubat";s:2:"yo";s:9:"tayurubat";s:2:"yo";s:14:"tiếng yoruba";s:2:"yo";s:22:"tiếng quảng Đông";s:3:"yue";s:8:"tšuangi";s:2:"za";s:14:"tiếng zhuang";s:2:"za";s:9:"tsieineeg";s:2:"zh";s:7:"txinera";s:2:"zh";s:21:"tacinwat, tamundarint";s:2:"zh";s:8:"tacinwit";s:2:"zh";s:17:"tacinwit,mandarin";s:2:"zh";s:13:"tiếng trung";s:2:"zh";s:18:"tsieineeg symledig";s:7:"zh-hans";s:9:"tsainagbe";s:7:"zh-hans";s:15:"txinera soildua";s:7:"zh-hans";s:22:"tsieineeg traddodiadol";s:7:"zh-hant";s:21:"traditionelt kinesisk";s:7:"zh-hant";s:19:"traditional chinese";s:7:"zh-hant";s:20:"txinera tradizionala";s:7:"zh-hant";s:20:"tradisjoneel sineesk";s:7:"zh-hant";s:25:"tradizionells chineesisch";s:7:"zh-hant";s:16:"tradicinė kinų";s:7:"zh-hant";s:21:"tradisjonell kinesisk";s:7:"zh-hant";s:24:"traditschonell chineesch";s:7:"zh-hant";s:20:"traditioneel chinees";s:7:"zh-hant";s:26:"tradicionalna kitajščina";s:7:"zh-hant";s:22:"traditionell kinesiska";s:7:"zh-hant";s:7:"tazulut";s:2:"zu";s:12:"tiếng zulu";s:2:"zu";s:13:"tiếng acoli";s:3:"ach";s:13:"tiếng aghem";s:3:"agq";s:31:"tiếng Ả rập hiện đại";s:6:"ar-001";s:11:"tiếng asu";s:3:"asa";s:15:"బెంబా";s:3:"bem";s:13:"tiếng bemba";s:3:"bem";s:12:"బీనా";s:3:"bez";s:12:"tiếng bena";s:3:"bez";s:12:"బోడో";s:3:"brx";s:12:"tiếng bodo";s:3:"brx";s:13:"tiếng chiga";s:3:"cgg";s:14:"tiếng coptic";s:3:"cop";s:5:"taita";s:3:"dav";s:7:"taitera";s:3:"dav";s:6:"taíta";s:3:"dav";s:6:"taitų";s:3:"dav";s:5:"taitu";s:3:"dav";s:13:"taitajščina";s:3:"dav";s:8:"taitisht";s:3:"dav";s:7:"taitcha";s:3:"dav";s:13:"tiếng taita";s:3:"dav";s:13:"tiếng zarma";s:3:"dje";s:5:"tuala";s:3:"dua";s:13:"tiếng duala";s:3:"dua";s:18:"tiếng jola-fonyi";s:3:"dyo";s:12:"tiếng embu";s:3:"ebu";s:12:"tiếng efik";s:3:"efi";s:21:"tiếng ai cập cổ";s:3:"egy";s:16:"tiếng philipin";s:3:"fil";s:10:"tiếng ga";s:3:"gaa";s:13:"tiếng gusii";s:3:"guz";s:15:"tiếng hittite";s:3:"hit";s:14:"tiếng ngomba";s:3:"jgo";s:15:"tiếng machame";s:3:"jmc";s:13:"tiếng kamba";s:3:"kam";s:15:"tiếng makonde";s:3:"kde";s:20:"tiếng kabuverdianu";s:3:"kea";s:16:"timbuktu-songhoy";s:3:"khq";s:20:"tiếng koyra chiini";s:3:"khq";s:16:"tiếng kalenjin";s:3:"kln";s:15:"tiếng konkani";s:3:"kok";s:14:"tiếng kurukh";s:3:"kru";s:16:"tiếng shambala";s:3:"ksb";s:15:"బాఫియ";s:3:"ksf";s:13:"tiếng bafia";s:3:"ksf";s:13:"tiếng langi";s:3:"lag";s:14:"tiếng lakota";s:3:"lkt";s:20:"tiếng luba-katanga";s:2:"lu";s:18:"tiếng luba-lulua";s:3:"lua";s:11:"tiếng luo";s:3:"luo";s:13:"tiếng luyia";s:3:"luy";s:13:"tiếng masai";s:3:"mas";s:12:"tiếng meru";s:3:"mer";s:16:"tiếng morisyen";s:3:"mfe";s:22:"tiếng makhuwa-meetto";s:3:"mgh";s:15:"tiếng meta’";s:3:"mgo";s:14:"tiếng mohawk";s:3:"moh";s:15:"tiếng mundang";s:3:"mua";s:21:"többszörös nyelvek";s:3:"mul";s:28:"బహుళ భాషలు";s:3:"mul";s:12:"နာမာ";s:3:"naq";s:12:"tiếng nama";s:3:"naq";s:28:"tiếng ndebele miền bắc";s:2:"nd";s:15:"tiếng flemish";s:5:"nl-be";s:14:"tiếng kwasio";s:3:"nmg";s:12:"နကို";s:3:"nqo";s:14:"tiếng n’ko";s:3:"nqo";s:26:"tiếng ndebele miền nam";s:2:"nr";s:12:"နူအာ";s:3:"nus";s:12:"tiếng nuer";s:3:"nus";s:16:"tiếng nyankole";s:3:"nyn";s:17:"tiếng phoenicia";s:3:"phn";s:17:"tiếng kʼicheʼ";s:3:"quc";s:15:"tiếng moldova";s:5:"ro-md";s:13:"tiếng rombo";s:3:"rof";s:11:"tiếng rwa";s:3:"rwk";s:15:"tiếng samburu";s:3:"saq";s:13:"tiếng sangu";s:3:"sbp";s:12:"tiếng sena";s:3:"seh";s:23:"tiếng koyraboro senni";s:3:"ses";s:17:"tiếng lule sami";s:3:"smj";s:18:"tiếng inari sami";s:3:"smn";s:18:"tiếng skolt sami";s:3:"sms";s:13:"tiếng cômo";s:3:"swb";s:21:"tiếng swahili congo";s:3:"swc";s:4:"teso";s:3:"teo";s:7:"tesoera";s:3:"teo";s:6:"teszó";s:3:"teo";s:5:"tesó";s:3:"teo";s:8:"tezoisht";s:3:"teo";s:9:"tesoancha";s:3:"teo";s:12:"tiếng teso";s:3:"teo";s:15:"tiếng klingon";s:3:"tlh";s:7:"tasawaq";s:3:"twq";s:7:"tasavaq";s:3:"twq";s:7:"tasavak";s:3:"twq";s:10:"tasawakgbe";s:3:"twq";s:7:"taswaqi";s:3:"twq";s:8:"tasawaqa";s:3:"twq";s:9:"tasavakų";s:3:"twq";s:8:"tasavaku";s:3:"twq";s:10:"tasaukisht";s:3:"twq";s:10:"tosovoqcha";s:3:"twq";s:15:"tiếng tasawaq";s:3:"twq";s:16:"teanga anaithnid";s:3:"und";s:11:"tiếng vai";s:3:"vai";s:13:"tiếng vunjo";s:3:"vun";s:12:"tiếng soga";s:3:"xog";s:32:"tamazight estándar de marruecos";s:3:"zgh";s:6:"tamazi";s:3:"zgh";s:24:"tamacheg maroko standart";s:3:"zgh";s:32:"tamazight (standardní marocký)";s:3:"zgh";s:24:"tamazight safonol moroco";s:3:"zgh";s:18:"tamasikti (maroko)";s:3:"zgh";s:20:"tamazight estandarra";s:3:"zgh";s:28:"tamazight stannardach moroco";s:3:"zgh";s:31:"tamazight de marrocos estándar";s:3:"zgh";s:24:"tamazight maroko standar";s:3:"zgh";s:30:"tamazight del marocco standard";s:3:"zgh";s:27:"tamazight maghribi standard";s:3:"zgh";s:29:"tamazight padrão de marrocos";s:3:"zgh";s:28:"tamazight marroquino padrão";s:3:"zgh";s:28:"tamazight standard marocană";s:3:"zgh";s:32:"tamašek (štandardný marocký)";s:3:"zgh";s:29:"tamazishte standarde marokene";s:3:"zgh";s:27:"tamaziti msingi ya kimoroko";s:3:"zgh";s:40:"tiếng tamazight chuẩn của ma-rốc";s:3:"zgh";s:27:"tidak ada konten linguistik";s:3:"zxx";s:26:"tiada kandungan linguistik";s:3:"zxx";s:17:"til tarkibi yoʻq";s:3:"zxx";s:18:"బ్లిన్";s:3:"byn";s:12:"tiếng blin";s:3:"byn";s:18:"tiếng anh (mỹ)";s:5:"en-us";s:35:"tiếng tây ban nha (mỹ la tinh)";s:6:"es-419";s:12:"tiếng geez";s:3:"gez";s:14:"tiếng sidamo";s:3:"sid";s:5:"tigre";s:3:"tig";s:10:"tiqre dili";s:3:"tig";s:9:"tigreaneg";s:3:"tig";s:12:"tigrejština";s:3:"tig";s:6:"tigré";s:3:"tig";s:6:"tigree";s:3:"tig";s:9:"tigriški";s:3:"tig";s:6:"tígre";s:3:"tig";s:5:"tigru";s:3:"tig";s:11:"tigrejčina";s:3:"tig";s:13:"tigrejščina";s:3:"tig";s:13:"tiếng tigre";s:3:"tig";s:15:"tiếng adangme";s:3:"ada";s:14:"tiếng adyghe";s:3:"ady";s:15:"tiếng avestan";s:2:"ae";s:16:"tiếng afrihili";s:3:"afh";s:12:"tiếng ainu";s:3:"ain";s:15:"tiếng akkadia";s:3:"akk";s:13:"tiếng aleut";s:3:"ale";s:24:"tiếng altai miền nam";s:3:"alt";s:15:"tiếng arapaho";s:3:"arp";s:14:"tiếng arawak";s:3:"arw";s:14:"tiếng awadhi";s:3:"awa";s:18:"బాలుచి";s:3:"bal";s:15:"tiếng baluchi";s:3:"bal";s:24:"బాలినీస్";s:3:"ban";s:12:"tiếng bali";s:3:"ban";s:9:"బసా";s:3:"bas";s:13:"tiếng basaa";s:3:"bas";s:13:"tiếng bamun";s:3:"bax";s:12:"బేజా";s:3:"bej";s:12:"tiếng beja";s:3:"bej";s:18:"బికోల్";s:3:"bik";s:13:"tiếng bikol";s:3:"bik";s:12:"బిని";s:3:"bin";s:12:"tiếng bini";s:3:"bin";s:15:"tiếng siksika";s:3:"bla";s:18:"బ్రాజ్";s:3:"bra";s:12:"tiếng braj";s:3:"bra";s:14:"tiếng akoose";s:3:"bss";s:21:"బురియట్";s:3:"bua";s:14:"tiếng buriat";s:3:"bua";s:13:"tiếng caddo";s:3:"cad";s:13:"tiếng carib";s:3:"car";s:13:"tiếng atsam";s:3:"cch";s:7:"txibtxa";s:3:"chb";s:9:"tšibtša";s:3:"chb";s:11:"tschibtscha";s:3:"chb";s:15:"tiếng chibcha";s:3:"chb";s:8:"txagatai";s:3:"chg";s:13:"tschagataisch";s:3:"chg";s:9:"tšagatai";s:3:"chg";s:11:"tchaghataï";s:3:"chg";s:13:"tschagataesch";s:3:"chg";s:11:"tschagataic";s:3:"chg";s:16:"tiếng chagatai";s:3:"chg";s:10:"trukesisch";s:3:"chk";s:10:"tsukesegbe";s:3:"chk";s:7:"trukés";s:3:"chk";s:7:"tšuugi";s:3:"chk";s:10:"trukesesch";s:3:"chk";s:9:"trukeesch";s:3:"chk";s:4:"truk";s:3:"chk";s:12:"trukeščina";s:3:"chk";s:13:"tiếng chuuk";s:3:"chk";s:15:"tscheremissisch";s:3:"chm";s:11:"tsetsniagbe";s:3:"chm";s:12:"tiếng mari";s:3:"chm";s:17:"tšinuki žargoon";s:3:"chn";s:9:"tšipevai";s:3:"chp";s:17:"tiếng chipewyan";s:3:"chp";s:6:"takota";s:3:"dak";s:14:"tiếng dakota";s:3:"dak";s:11:"targiinisch";s:3:"dar";s:14:"tiếng dargwa";s:3:"dar";s:16:"tiếng delaware";s:3:"del";s:13:"tiếng slave";s:3:"den";s:6:"togrib";s:3:"dgr";s:14:"tiếng dogrib";s:3:"dgr";s:5:"tinka";s:3:"din";s:13:"tiếng dinka";s:3:"din";s:5:"togri";s:3:"doi";s:13:"tiếng dogri";s:3:"doi";s:26:"tiếng hà lan trung cổ";s:3:"dum";s:5:"tiula";s:3:"dyu";s:13:"tiếng dyula";s:3:"dyu";s:14:"tiếng dazaga";s:3:"dzg";s:14:"tiếng ekajuk";s:3:"eka";s:15:"tiếng elamite";s:3:"elx";s:22:"tiếng anh trung cổ";s:3:"enm";s:14:"tiếng ewondo";s:3:"ewo";s:12:"tiếng fang";s:3:"fan";s:13:"tiếng fanti";s:3:"fat";s:11:"tiếng fon";s:3:"fon";s:24:"tiếng pháp trung cổ";s:3:"frm";s:18:"tiếng pháp cổ";s:3:"fro";s:29:"tiếng frisian miền Đông";s:3:"frs";s:12:"tiếng gayo";s:3:"gay";s:13:"tiếng gbaya";s:3:"gba";s:15:"tiếng gilbert";s:3:"gil";s:18:"tedesco medio alto";s:3:"gmh";s:14:"tudestg mesaun";s:3:"gmh";s:38:"tiếng thượng giéc-man trung cổ";s:3:"gmh";s:19:"tedesco antico alto";s:3:"goh";s:32:"tiếng thượng giéc-man cổ";s:3:"goh";s:13:"tiếng gondi";s:3:"gon";s:17:"tiếng gorontalo";s:3:"gor";s:13:"tiếng grebo";s:3:"grb";s:17:"tiếng gwichʼin";s:3:"gwi";s:13:"tiếng haida";s:3:"hai";s:14:"tiếng hmông";s:3:"hmn";s:12:"tiếng hupa";s:3:"hup";s:12:"tiếng iban";s:3:"iba";s:20:"tiếng judeo-ba tư";s:3:"jpr";s:23:"tiếng judeo-Ả rập";s:3:"jrb";s:14:"tiếng kachin";s:3:"kac";s:11:"tiếng jju";s:3:"kaj";s:12:"tiếng kawi";s:3:"kaw";s:15:"tiếng kanembu";s:3:"kbl";s:12:"tiếng koro";s:3:"kfo";s:13:"tiếng khasi";s:3:"kha";s:14:"tiếng khotan";s:3:"kho";s:16:"tiếng kimbundu";s:3:"kmb";s:14:"tiếng kosrae";s:3:"kos";s:14:"tiếng kpelle";s:3:"kpe";s:16:"tiếng karelian";s:3:"krl";s:13:"tiếng kumyk";s:3:"kum";s:15:"tiếng kutenai";s:3:"kut";s:14:"tiếng lahnda";s:3:"lah";s:13:"tiếng lamba";s:3:"lam";s:13:"tiếng mongo";s:3:"lol";s:15:"tiếng luiseno";s:3:"lui";s:13:"tiếng lunda";s:3:"lun";s:14:"tiếng madura";s:3:"mad";s:14:"tiếng magahi";s:3:"mag";s:15:"tiếng makasar";s:3:"mak";s:16:"tiếng mandingo";s:3:"man";s:12:"tiếng maba";s:3:"mde";s:14:"tiếng mandar";s:3:"mdr";s:13:"tiếng mende";s:3:"men";s:25:"tiếng ai-len trung cổ";s:3:"mga";s:14:"tiếng micmac";s:3:"mic";s:14:"tiếng manchu";s:3:"mnc";s:16:"tiếng manipuri";s:3:"mni";s:13:"tiếng mossi";s:3:"mos";s:15:"tiếng marwari";s:3:"mwr";s:12:"tiếng nias";s:3:"nia";s:13:"tiếng nogai";s:3:"nog";s:18:"tiếng na uy cổ";s:3:"non";s:27:"tiếng newari cổ điển";s:3:"nwc";s:16:"tiếng nyamwezi";s:3:"nym";s:13:"tiếng nyoro";s:3:"nyo";s:13:"tiếng nzima";s:3:"nzi";s:14:"tiếng ojibwa";s:2:"oj";s:13:"tiếng osage";s:3:"osa";s:13:"turcu otomanu";s:3:"ota";s:13:"turkeg otoman";s:3:"ota";s:11:"turc otomà";s:3:"ota";s:22:"turečtina (osmanská)";s:3:"ota";s:13:"tyrceg otoman";s:3:"ota";s:13:"turco otomano";s:3:"ota";s:12:"turc ottoman";s:3:"ota";s:11:"turc otoman";s:3:"ota";s:17:"turcais otomanach";s:3:"ota";s:18:"turski - otomanski";s:3:"ota";s:12:"turki osmani";s:3:"ota";s:19:"tyrkneska, ottóman";s:3:"ota";s:14:"turco ottomano";s:3:"ota";s:13:"turku osmaņu";s:3:"ota";s:21:"tork (imperu ottoman)";s:3:"ota";s:12:"tirc ottoman";s:3:"ota";s:15:"turcă otomană";s:3:"ota";s:31:"tiếng thổ nhĩ kỳ ottoman";s:3:"ota";s:15:"tiếng pahlavi";s:3:"pal";s:15:"tiếng palauan";s:3:"pau";s:19:"tiếng ba tư cổ";s:3:"peo";s:17:"tiếng pohnpeian";s:3:"pon";s:23:"tiếng provençal cổ";s:3:"pro";s:18:"tiếng rajasthani";s:3:"raj";s:15:"tiếng rapanui";s:3:"rap";s:18:"tiếng rarotongan";s:3:"rar";s:7:"tzigane";s:3:"rom";s:14:"tiếng romany";s:3:"rom";s:15:"tiếng sandawe";s:3:"sad";s:25:"tiếng samaritan aramaic";s:3:"sam";s:13:"tiếng sasak";s:3:"sas";s:15:"tiếng ngambay";s:3:"sba";s:14:"tiếng selkup";s:3:"sel";s:19:"tiếng ai-len cổ";s:3:"sga";s:12:"tiếng shan";s:3:"shn";s:16:"tchadisk-arabisk";s:3:"shu";s:19:"tschadisch-arabisch";s:3:"shu";s:15:"tšaadi araabia";s:3:"shu";s:13:"tšadinarabia";s:3:"shu";s:16:"tsjadysk arabysk";s:3:"shu";s:19:"tschadesch-arabesch";s:3:"shu";s:13:"tsjad-arabisk";s:3:"shu";s:18:"tsjadisch arabisch";s:3:"shu";s:22:"tiếng Ả-rập chad";s:3:"shu";s:15:"tiếng soninke";s:3:"snk";s:15:"tiếng sogdien";s:3:"sog";s:13:"tiếng serer";s:3:"srr";s:14:"tiếng sukuma";s:3:"suk";s:12:"tiếng susu";s:3:"sus";s:15:"tiếng sumeria";s:3:"sux";s:26:"tiếng syria cổ điển";s:3:"syc";s:14:"tiếng syriac";s:3:"syr";s:5:"timne";s:3:"tem";s:10:"timne dili";s:3:"tem";s:5:"temne";s:3:"tem";s:6:"timneg";s:3:"tem";s:6:"tímne";s:3:"tem";s:5:"temnu";s:3:"tem";s:13:"temnejščina";s:3:"tem";s:13:"tiếng timne";s:3:"tem";s:11:"tereno dili";s:3:"ter";s:6:"tereno";s:3:"ter";s:6:"terena";s:3:"ter";s:14:"tereno-sprache";s:3:"ter";s:16:"tereno-schpraach";s:3:"ter";s:7:"terenó";s:3:"ter";s:14:"tereno-sprooch";s:3:"ter";s:14:"tiếng tereno";s:3:"ter";s:3:"tiv";s:3:"tiv";s:8:"tiv dili";s:3:"tiv";s:9:"tivština";s:3:"tiv";s:4:"tivi";s:3:"tiv";s:11:"tiv-sprache";s:3:"tiv";s:13:"tiv-schpraach";s:3:"tiv";s:4:"tív";s:3:"tiv";s:11:"tiv-sprooch";s:3:"tiv";s:4:"tivu";s:3:"tiv";s:3:"tiw";s:3:"tiv";s:10:"tivščina";s:3:"tiv";s:11:"tiếng tiv";s:3:"tiv";s:7:"tokelau";s:3:"tkl";s:12:"tokelay dili";s:3:"tkl";s:10:"tokelauès";s:3:"tkl";s:13:"tokelauština";s:3:"tkl";s:13:"tokelauanisch";s:3:"tkl";s:10:"tokelaugbe";s:3:"tkl";s:10:"tokelauano";s:3:"tkl";s:8:"tokelaus";s:3:"tkl";s:11:"tokelaunski";s:3:"tkl";s:8:"tokelaui";s:3:"tkl";s:11:"tókeláska";s:3:"tkl";s:13:"tokelauanesch";s:3:"tkl";s:12:"tokelaviešu";s:3:"tkl";s:10:"tokelausch";s:3:"tkl";s:11:"toquelauano";s:3:"tkl";s:12:"tokelaučina";s:3:"tkl";s:14:"tokelavščina";s:3:"tkl";s:11:"tokelauiska";s:3:"tkl";s:15:"tiếng tokelau";s:3:"tkl";s:12:"tlinqit dili";s:3:"tli";s:7:"tinglit";s:3:"tli";s:7:"tlingit";s:3:"tli";s:15:"tlingit-sprache";s:3:"tli";s:8:"tlingiti";s:3:"tli";s:17:"tlingit-schpraach";s:3:"tli";s:15:"tlingit-sprooch";s:3:"tli";s:8:"tlinkitu";s:3:"tli";s:9:"tlinguite";s:3:"tli";s:12:"tlingitčina";s:3:"tli";s:14:"tlingitščina";s:3:"tli";s:15:"tiếng tlingit";s:3:"tli";s:8:"tamashek";s:3:"tmh";s:13:"tamaşek dili";s:3:"tmh";s:8:"tamacheg";s:3:"tmh";s:8:"tamašek";s:3:"tmh";s:10:"tamasheceg";s:3:"tmh";s:7:"tamaseq";s:3:"tmh";s:9:"tamašeki";s:3:"tmh";s:8:"tamacheq";s:3:"tmh";s:7:"tamasek";s:3:"tmh";s:8:"tamasjek";s:3:"tmh";s:7:"tuaregu";s:3:"tmh";s:7:"tamaxek";s:3:"tmh";s:9:"tamaschek";s:3:"tmh";s:8:"tamaszek";s:3:"tmh";s:9:"tamaxeque";s:3:"tmh";s:8:"tamasheq";s:3:"tmh";s:13:"tamajaščina";s:3:"tmh";s:8:"tamaşek";s:3:"tmh";s:16:"tiếng tamashek";s:3:"tmh";s:19:"tonžština (nyasa)";s:3:"tog";s:14:"tsonga-sprache";s:3:"tog";s:15:"tonga del nyasa";s:3:"tog";s:9:"tšitonga";s:3:"tog";s:11:"tonga nyasa";s:3:"tog";s:16:"tsonga-schpraach";s:3:"tog";s:18:"tongverska (nyasa)";s:3:"tog";s:14:"tsonga-sprooch";s:3:"tog";s:13:"tonga (njasa)";s:3:"tog";s:13:"tonga (nyasa)";s:3:"tog";s:13:"tonga (niasa)";s:3:"tog";s:8:"toganês";s:3:"tog";s:18:"tonganês de nyasa";s:3:"tog";s:19:"tiếng nyasa tonga";s:3:"tog";s:9:"tsimshian";s:3:"tsi";s:9:"tsimšian";s:3:"tsi";s:9:"tsimshià";s:3:"tsi";s:19:"tsimšijské jazyky";s:3:"tsi";s:9:"tsimshisk";s:3:"tsi";s:17:"tsimshian-sprache";s:3:"tsi";s:10:"tsimshiano";s:3:"tsi";s:8:"tšimši";s:3:"tsi";s:7:"tsimši";s:3:"tsi";s:19:"tsimshian-schpraach";s:3:"tsi";s:8:"tsimshia";s:3:"tsi";s:10:"tsimsíska";s:3:"tsi";s:17:"tsimshian-sprooch";s:3:"tsi";s:19:"tsimshijské jazyky";s:3:"tsi";s:11:"tsimščina";s:3:"tsi";s:17:"tiếng tsimshian";s:3:"tsi";s:6:"tuvalu";s:3:"tvl";s:11:"tuvalu dili";s:3:"tvl";s:8:"tuvaluà";s:3:"tvl";s:11:"tuvalština";s:3:"tvl";s:8:"twfalweg";s:3:"tvl";s:9:"tuvalugbe";s:3:"tvl";s:9:"tuvaluano";s:3:"tvl";s:11:"tuvaluaansk";s:3:"tvl";s:11:"tuvaluanski";s:3:"tvl";s:11:"túvalúska";s:3:"tvl";s:10:"tuvaliešu";s:3:"tvl";s:10:"tuvaluaans";s:3:"tvl";s:10:"tuvalčina";s:3:"tvl";s:14:"tuvalujščina";s:3:"tvl";s:11:"tuvaluanska";s:3:"tvl";s:14:"tiếng tuvalu";s:3:"tvl";s:16:"tiếng ugaritic";s:3:"uga";s:15:"tiếng umbundu";s:3:"umb";s:14:"tiếng walamo";s:3:"wal";s:13:"tiếng washo";s:3:"was";s:11:"tiếng yao";s:3:"yao";s:11:"tiếng yap";s:3:"yap";s:15:"tiếng yangben";s:3:"yav";s:15:"tiếng zapotec";s:3:"zap";s:36:"బ్లిసింబల్స్";s:3:"zbl";s:14:"tiếng zenaga";s:3:"zen";s:12:"tiếng zuni";s:3:"zun";s:12:"tiếng zaza";s:3:"zza";s:20:"tunesisches arabisch";s:3:"aeb";s:22:"tunisian spoken arabic";s:3:"aeb";s:14:"tunisianarabia";s:3:"aeb";s:20:"tonehsesch arahbesch";s:3:"aeb";s:19:"tunesescht arabesch";s:3:"aeb";s:13:"tuniso arabų";s:3:"aeb";s:18:"tunesisch arabisch";s:3:"aeb";s:18:"tunezyjski arabski";s:3:"aeb";s:17:"tunisisk arabiska";s:3:"aeb";s:16:"tunus arapçası";s:3:"aeb";s:15:"tiếng ghomala";s:3:"bbj";s:13:"tiếng bafut";s:3:"bfd";s:11:"tiếng kom";s:3:"bkm";s:12:"tiếng bulu";s:3:"bum";s:15:"tiếng medumba";s:3:"byv";s:14:"tiếng cayuga";s:3:"cay";s:14:"tiếng ibibio";s:3:"ibb";s:4:"tyap";s:3:"kcg";s:10:"tiyap dili";s:3:"kcg";s:4:"tjap";s:3:"kcg";s:5:"tyapi";s:3:"kcg";s:22:"tjapska nigerijščina";s:3:"kcg";s:12:"tiếng tyap";s:3:"kcg";s:12:"tiếng kako";s:3:"kkj";s:12:"tiếng mafa";s:3:"maf";s:13:"tiếng myene";s:3:"mye";s:17:"tiếng ngiemboon";s:3:"nnh";s:14:"tiếng seneca";s:3:"see";s:12:"tiếng saho";s:3:"ssy";s:6:"taroko";s:3:"trv";s:7:"tarokó";s:3:"trv";s:14:"tiếng taroko";s:3:"trv";s:13:"tiếng yemba";s:3:"ybb";s:14:"tiếng walser";s:3:"wae";s:11:"tsachurisch";s:3:"tkr";s:7:"tsakhur";s:3:"tkr";s:7:"tsahuri";s:3:"tkr";s:11:"tsachuresch";s:3:"tkr";s:8:"tsakurų";s:3:"tkr";s:12:"tsakonština";s:3:"tsd";s:10:"tsakonisch";s:3:"tsd";s:9:"tsakonian";s:3:"tsd";s:8:"tsakonia";s:3:"tsd";s:9:"tsakonien";s:3:"tsd";s:10:"tsakonesch";s:3:"tsd";s:8:"tsakonų";s:3:"tsd";s:10:"tsakodiska";s:3:"tsd";s:8:"tsakonca";s:3:"tsd";s:9:"tatština";s:3:"ttt";s:7:"tatisch";s:3:"ttt";s:4:"tati";s:3:"ttt";s:14:"tati caucasien";s:3:"ttt";s:10:"tat muslim";s:3:"ttt";s:12:"tat islamico";s:3:"ttt";s:7:"tatesch";s:3:"ttt";s:5:"tacki";s:3:"ttt";s:6:"tatça";s:3:"ttt";s:12:"tekenspraken";s:3:"sgn";s:11:"thaispraken";s:3:"tai";s:9:"tai jezik";s:3:"tai";s:12:"tupi-spraken";s:3:"tup";s:10:"tupi jezik";s:3:"tup";}i:463;a:81:{s:9:"阿法文";s:2:"aa";s:33:"ඇබ්කාසියානු";s:2:"ab";s:18:"阿布哈西亚文";s:2:"ab";s:15:"阿布哈茲文";s:2:"ab";s:9:"阿肯文";s:2:"ak";s:9:"阿坎文";s:2:"ak";s:27:"ඇම්හාරික්";s:2:"am";s:15:"阿姆哈拉文";s:2:"am";s:12:"阿拉贡文";s:2:"an";s:12:"阿拉貢文";s:2:"an";s:12:"阿拉伯文";s:2:"ar";s:12:"阿拉米文";s:3:"arc";s:27:"阿爾及利亞阿拉伯文";s:3:"arq";s:24:"ඇසමියානු";s:2:"as";s:12:"阿萨姆文";s:2:"as";s:12:"阿薩姆文";s:2:"as";s:24:"阿斯图里亚思特文";s:3:"ast";s:18:"阿斯圖里亞文";s:3:"ast";s:12:"阿瓦尔文";s:2:"av";s:12:"阿瓦爾文";s:2:"av";s:15:"阿塞拜疆文";s:2:"az";s:26:"クルド語(ソラニー)";s:3:"ckb";s:12:"クリー語";s:2:"cr";s:30:"クリミア・タタール語";s:3:"crh";s:9:"捷克文";s:2:"cs";s:18:"クロアチア語";s:2:"hr";s:18:"クワニャマ語";s:2:"kj";s:15:"クメール語";s:2:"km";s:12:"クリオ語";s:3:"kri";s:12:"クルド語";s:2:"ku";s:15:"クリーク語";s:3:"mus";s:18:"阿罗马尼亚文";s:3:"rup";s:33:"ඇල්බේනියානු";s:2:"sq";s:18:"阿尔巴尼亚文";s:2:"sq";s:18:"阿爾巴尼亞文";s:2:"sq";s:21:"টোঙ্গান";s:2:"to";s:25:"টোক পিসিন";s:3:"tpi";s:18:"টোয়াই";s:2:"tw";s:30:"টুভিনিয়ান";s:3:"tyv";s:12:"阿乔利文";s:3:"ach";s:12:"阿僑利文";s:3:"ach";s:12:"ඇගම්";s:3:"agq";s:9:"阿苏文";s:3:"asa";s:9:"阿蘇文";s:3:"asa";s:12:"クルク語";s:3:"kru";s:15:"クワシオ語";s:3:"nmg";s:18:"クリンゴン語";s:3:"tlh";s:55:"ඇමෙරිකානු ඉංග්‍රීසි";s:5:"en-us";s:21:"টাইগ্রে";s:3:"tig";s:12:"阿当梅文";s:3:"ada";s:12:"阿當莫文";s:3:"ada";s:12:"阿迪何文";s:3:"ady";s:12:"阿迪各文";s:3:"ady";s:15:"阿维斯塔文";s:2:"ae";s:15:"阿緯斯陀文";s:2:"ae";s:18:"阿弗里希利文";s:3:"afh";s:12:"阿伊努文";s:3:"ain";s:12:"阿卡德文";s:3:"akk";s:12:"阿留申文";s:3:"ale";s:15:"阿拉帕霍文";s:3:"arp";s:15:"阿拉瓦克文";s:3:"arw";s:12:"阿瓦乔文";s:3:"awa";s:9:"阿瓦文";s:3:"awa";s:12:"阿库色文";s:3:"bss";s:12:"阿庫色文";s:3:"bss";s:9:"阿灿文";s:3:"cch";s:9:"阿燦文";s:3:"cch";s:12:"クペレ語";s:3:"kpe";s:12:"クムク語";s:3:"kum";s:15:"クテナイ語";s:3:"kut";s:18:"经典尼瓦尔文";s:3:"nwc";s:24:"阿拉伯文(查德)";s:3:"shu";s:18:"经典叙利亚文";s:3:"syc";s:21:"টাইম্নে";s:3:"tem";s:9:"টিভ";s:3:"tiv";s:21:"টোকেলাউ";s:3:"tkl";s:18:"টুভালু";s:3:"tvl";s:15:"阿拉巴馬文";s:3:"akz";s:15:"阿拉奧納文";s:3:"aro";s:21:"টাইয়াপ";s:3:"kcg";s:15:"阿沃那加文";s:3:"njo";}i:377;a:26:{s:18:"աբխազերեն";s:2:"ab";s:18:"աֆրիկաանս";s:2:"af";s:16:"աքաներեն";s:2:"ak";s:18:"ամհարերեն";s:2:"am";s:16:"արաբերեն";s:2:"ar";s:16:"ասամերեն";s:2:"as";s:24:"ադրբեջաներեն";s:2:"az";s:41:"ավստրիական գերմաներեն";s:5:"de-at";s:16:"անգլերեն";s:2:"en";s:33:"արևմտյան ֆրիզերեն";s:2:"fy";s:24:"റൊമാഞ്ച്";s:2:"rm";s:18:"റുണ്ടി";s:2:"rn";s:24:"റൊമാനിയൻ";s:2:"ro";s:15:"റഷ്യൻ";s:2:"ru";s:18:"ալբաներեն";s:2:"sq";s:33:"ավանդական չինարեն";s:7:"zh-hant";s:8:"աղեմ";s:3:"agq";s:8:"ասու";s:3:"asa";s:15:"റോംബോ";s:3:"rof";s:12:"റുവാ";s:3:"rwk";s:23:"անհայտ լեզու";s:3:"und";s:56:"առանց լեզվային բովանդակության";s:3:"zxx";s:39:"ավստրալական անգլերեն";s:5:"en-au";s:35:"ամերիկյան անգլերեն";s:5:"en-us";s:9:"딩카어";s:3:"din";s:15:"റോമനി";s:3:"rom";}i:50;a:74:{s:36:"អាប់ខាហ៊្សាន";s:2:"ab";s:39:"អាហ្វ្រីកាអាន";s:2:"af";s:24:"អាមហារីច";s:2:"am";s:21:"អារ៉ាប់";s:2:"ar";s:21:"អាសាមីស";s:2:"as";s:45:"អាហ៊្សែរបែហ្សង់";s:2:"az";s:22:"Каталаанныы";s:2:"ca";s:16:"Каталанӣ";s:2:"ca";s:6:"Кри";s:2:"cr";s:33:"Кримеански турски";s:3:"crh";s:24:"Кашубијански";s:3:"csb";s:30:"អាល្លឺម៉ង់";s:2:"de";s:52:"អាល្លឺម៉ង់ អូទ្រីស";s:5:"de-at";s:46:"អាល្លឺម៉ង់ ស្វីស";s:5:"de-ch";s:24:"អង់គ្លេស";s:2:"en";s:43:"អង់គ្លេស កាណាដា";s:5:"en-ca";s:70:"អង់គ្លេស ចក្រភព​អង់គ្លេស";s:5:"en-gb";s:39:"អេស្ពេរ៉ាន់តូ";s:2:"eo";s:24:"អេស្ប៉ាញ";s:2:"es";s:24:"អេស្តូនី";s:2:"et";s:18:"អៀរឡង់";s:2:"ga";s:43:"អាល្លឺម៉ង ស្វីស";s:3:"gsw";s:30:"អ៊ីស្រាអែល";s:2:"he";s:21:"អារមេនី";s:2:"hy";s:24:"អីនធើលីង";s:2:"ia";s:18:"អ៊ីកបូ";s:2:"ig";s:24:"អ៊ីស្លង់";s:2:"is";s:21:"អ៊ីតាលី";s:2:"it";s:25:"Кара-калпашки";s:3:"kaa";s:22:"Кабардијски";s:3:"kbd";s:10:"Конго";s:2:"kg";s:14:"Куањама";s:2:"kj";s:18:"Кэриэйдии";s:2:"ko";s:12:"Канури";s:2:"kr";s:27:"Карачај-балкар";s:3:"krc";s:8:"Крио";s:3:"kri";s:8:"Коми";s:2:"kv";s:16:"Кыргызча";s:2:"ky";s:18:"Кыргыстыы";s:2:"ky";s:12:"Кришки";s:3:"mus";s:24:"អូសីតាន់";s:2:"oc";s:21:"អូរីយ៉ា";s:2:"or";s:24:"អាល់បានី";s:2:"sq";s:27:"អ៊ុយហ្គឺរ";s:2:"ug";s:27:"អ៊ុយក្រែន";s:2:"uk";s:18:"អ៊ូរឌូ";s:2:"ur";s:45:"អ៊ូហ្សបេគីស្តង់";s:2:"uz";s:12:"Калмик";s:3:"xal";s:18:"Кантонски";s:3:"yue";s:16:"Кытайдыы";s:2:"zh";s:66:"អារ៉ាប់​ស្តង់ដារ​ទំនើប";s:6:"ar-001";s:14:"Коптски";s:3:"cop";s:12:"Курукх";s:3:"kru";s:16:"Коморски";s:3:"swb";s:20:"Клингонски";s:3:"tlh";s:55:"អង់គ្លេស អូស្ត្រាលី";s:5:"en-au";s:46:"អង់គ្លេស អាមេរិក";s:5:"en-us";s:64:"អេស្ប៉ាញ អាមេរីកឡាតាំង";s:6:"es-419";s:43:"អេស្ប៉ាញ អឺរ៉ុប";s:5:"es-es";s:8:"Кадо";s:3:"cad";s:16:"Карипски";s:3:"car";s:10:"Качин";s:3:"kac";s:8:"Кави";s:3:"kaw";s:8:"Коро";s:3:"kfo";s:8:"Каси";s:3:"kha";s:18:"Котанешки";s:3:"kho";s:16:"Кимбунду";s:3:"kmb";s:20:"Косреански";s:3:"kos";s:10:"Кпеле";s:3:"kpe";s:20:"Карелијски";s:3:"krl";s:10:"Кумик";s:3:"kum";s:14:"Кутенаи";s:3:"kut";s:29:"Класични невари";s:3:"nwc";s:33:"Класични сиријски";s:3:"syc";}i:517;a:16:{s:12:"압카즈어";s:2:"ab";s:15:"ලතින්";s:2:"la";s:36:"ලක්සැම්බර්ග්";s:2:"lb";s:21:"ලින්ගලා";s:2:"ln";s:9:"ලාඕ";s:2:"lo";s:36:"ලිතුවේනියානු";s:2:"lt";s:30:"ලැට්වියානු";s:2:"lv";s:9:"缅甸文";s:2:"my";s:21:"ලන්දේසි";s:2:"nl";s:12:"ලංගි";s:3:"lag";s:12:"ලකොට";s:3:"lkt";s:6:"ලු";s:2:"lu";s:9:"ලුඔ";s:3:"luo";s:18:"ලුයියා";s:3:"luy";s:25:"ලුලේ සාමි";s:3:"smj";s:62:"ලතින් ඇමරිකානු ස්පාඤ්ඤ";s:6:"es-419";}i:777;a:23:{s:24:"ແອບຄາຊຽນ";s:2:"ab";s:30:"ແອັກຊີເນັສ";s:3:"ace";s:21:"ແອນຈີກາ";s:3:"anp";s:15:"ແດນິຊ";s:2:"da";s:30:"ແອນຊຽນກຣີກ";s:3:"grc";s:15:"ແມງຊ໌";s:2:"gv";s:15:"ኩርድሽኛ";s:2:"ku";s:12:"ኩርድሽ";s:2:"ku";s:15:"ແກນດາ";s:2:"lg";s:33:"ແມັກເຊໂດນຽນ";s:2:"mk";s:15:"ແຊງໂກ";s:2:"sg";s:15:"簡体中国語";s:7:"zh-hans";s:12:"簡體中文";s:7:"zh-hans";s:15:"ແລນກິ";s:3:"lag";s:24:"ແອຟີຮີລີ";s:3:"afh";s:15:"ແຄດໂດ";s:3:"cad";s:9:"ແຟງ";s:3:"fan";s:15:"ແຟນຕີ";s:3:"fat";s:15:"ແລມບາ";s:3:"lam";s:21:"ແມັງໂກ້";s:3:"lol";s:15:"ແມນຈູ";s:3:"mnc";s:18:"ແຍງເບນ";s:3:"yav";s:15:"ແຢມບາ";s:3:"ybb";}i:129;a:54:{s:30:"အက်ခါဇူအနျ";s:2:"ab";s:33:"အာဖရိကန်းစ်";s:2:"af";s:18:"အာကိန်";s:2:"ak";s:30:"အန်ဟာရစျချ";s:2:"am";s:51:"အင်္ဂလိပ်စာဟောင်း";s:3:"ang";s:18:"အာရေဗီ";s:2:"ar";s:24:"အက္စမီစ်";s:2:"as";s:54:"အော်ဇောဘိုင်ဂျောနီ";s:2:"az";s:39:"အောက်ဆိုဘီအမ်";s:3:"dsb";s:27:"အင်္ဂလိပ်";s:2:"en";s:33:"အက္စပရန္တို";s:2:"eo";s:48:"အက်စ်တိုးနီးရန်း";s:2:"et";s:61:"အနောက်ပိုင်း ဖရီစီရန်";s:2:"fy";s:27:"အိုင်းရစ်";s:2:"ga";s:12:"హౌసా";s:2:"ha";s:24:"హవాయియన్";s:3:"haw";s:18:"హీబ్రు";s:2:"he";s:15:"హిందీ";s:2:"hi";s:37:"హిలి గేయినోన్";s:3:"hil";s:25:"హిరి మోటు";s:2:"ho";s:39:"အပေါ်ဆိုဘီအမ်";s:3:"hsb";s:21:"హైతియన్";s:2:"ht";s:30:"హన్గేరియన్";s:2:"hu";s:27:"အာမေနီအန်";s:2:"hy";s:18:"హిరేరో";s:2:"hz";s:39:"အင်ဒိုနီးရှား";s:2:"id";s:21:"အစ္ဂဘို";s:2:"ig";s:36:"အိုင်စ်လန္ဒီ";s:2:"is";s:15:"အီတလီ";s:2:"it";s:30:"အီနုခ်တီတု";s:2:"iu";s:24:"အာလာဂါစီ";s:2:"mg";s:37:"အနိမ့် ဂျာမန်";s:3:"nds";s:27:"အိုရိုမို";s:2:"om";s:21:"အိုရီရာ";s:2:"or";s:45:"အယ်လ်ဘေးနီးယန်း";s:2:"sq";s:70:"အလယ်အက်တ်လက်စ် တာမာဇိုက်";s:3:"tzm";s:18:"အော်ဒူ";s:2:"ur";s:27:"အာဂ်ဟိန်း";s:3:"agq";s:38:"အရေဗီ(ပုံမှန်)";s:6:"ar-001";s:12:"အာစု";s:3:"asa";s:15:"အမ်ဘူ";s:3:"ebu";s:24:"హిట్టిటే";s:3:"hit";s:76:"အကြိမ်များစွာ ဘာသာစကားများ";s:3:"mul";s:31:"အီနာရီ ဆာမိ";s:3:"smn";s:52:"အမေရိကန် အင်္ဂလိပ်";s:5:"en-us";s:49:"အလယ်ပိုင်း ဒတ်ချ်";s:3:"dum";s:58:"အလယ်ပိုင်း အင်္ဂလိပ်";s:3:"enm";s:51:"အလယ်ပိုင်းပြင်သစ်";s:3:"frm";s:58:"အရှေ့ပိုင်း ဖရီစီရန်";s:3:"frs";s:66:"အလယ်ပိုင်းအမြင့်ဂျာမန်";s:3:"gmh";s:12:"హైడా";s:3:"hai";s:12:"హుపా";s:3:"hup";s:58:"အလယ်ပိုင်း အိုင်းရစ်";s:3:"mga";s:46:"အိုင်းရစ် ဟောင်း";s:3:"sga";}i:822;a:30:{s:30:"ଆବ୍ଖାଜିଆନ୍";s:2:"ab";s:24:"ଆଚାଇନୀଜ୍";s:3:"ace";s:30:"ଆଫ୍ରିକାନସ୍";s:2:"af";s:21:"ଆମହାରକି";s:2:"am";s:21:"ଆର୍ଗୋନୀ";s:2:"an";s:18:"ଆରବିକ୍";s:2:"ar";s:24:"ଆରାମାଇକ୍";s:3:"arc";s:33:"ଆରାଉକାନିଆନ୍";s:3:"arn";s:15:"ଆସାମୀ";s:2:"as";s:30:"ଆଷ୍ଟୁରିଆନ୍";s:3:"ast";s:21:"ଆଭାରିକ୍";s:2:"av";s:18:"ଆୟମାରା";s:2:"ay";s:33:"ଆଜେରବାଇଜାନି";s:2:"az";s:30:"ଆର୍ମେନିଆନ୍";s:2:"hy";s:33:"ଆଇସଲାଣ୍ଡିକ୍";s:2:"is";s:30:"ଆରୋମାନିଆନ୍";s:3:"rup";s:27:"ଆଲବାନିଆନ୍";s:2:"sq";s:15:"ଆକୋଲି";s:3:"ach";s:12:"ଆଘେମ";s:3:"agq";s:9:"ଆସୁ";s:3:"asa";s:27:"ଆଦାଙ୍ଗେମ୍";s:3:"ada";s:27:"ଆଫ୍ରିହିଲି";s:3:"afh";s:12:"ଆଇନୁ";s:3:"ain";s:24:"ଆକାଡିଆନ୍";s:3:"akk";s:18:"ଆଲେଇଟୁ";s:3:"ale";s:21:"ଆରାପାହୋ";s:3:"arp";s:12:"ଆରୱକ";s:3:"arw";s:15:"ଆୱାଧି";s:3:"awa";s:18:"ଆତ୍ସମ୍";s:3:"cch";s:12:"耶姆巴文";s:3:"ybb";}i:565;a:17:{s:27:"ਅਬਖਾਜ਼ੀਅਨ";s:2:"ab";s:15:"ਅਚੀਨੀ";s:3:"ace";s:21:"ਅਫ਼ਰੀਕੀ";s:2:"af";s:12:"ਅਕਾਨ";s:2:"ak";s:21:"ਅਮਹਾਰਿਕ";s:2:"am";s:12:"ਅਰਬੀ";s:2:"ar";s:15:"ਅਸਾਮੀ";s:2:"as";s:33:"ਅਜ਼ਰਬਾਈਜਾਨੀ";s:2:"az";s:24:"ਅੰਗਰੇਜ਼ੀ";s:2:"en";s:34:"ਅੱਪਰ ਸੋਰਬੀਅਨ";s:3:"hsb";s:24:"ਅਰਮੀਨੀਆਈ";s:2:"hy";s:24:"ਅਲਬਾਨੀਆਈ";s:2:"sq";s:15:"ਅਕੋਲੀ";s:3:"ach";s:12:"ਅਗੇਮ";s:3:"agq";s:9:"ਅਸੂ";s:3:"asa";s:37:"ਅਣਪਛਾਤੀ ਭਾਸ਼ਾ";s:3:"und";s:43:"ਅਮਰੀਕੀ ਅੰਗਰੇਜ਼ੀ";s:5:"en-us";}i:107;a:1658:{s:9:"kiabkhazi";s:2:"ab";s:10:"kiafrikana";s:2:"af";s:6:"kiakan";s:2:"ak";s:7:"kiakani";s:2:"ak";s:8:"kiamhari";s:2:"am";s:19:"kiingereza cha kale";s:3:"ang";s:8:"kĩarabu";s:2:"ar";s:7:"kiarabu";s:2:"ar";s:7:"kiaramu";s:3:"arc";s:9:"kimapuche";s:3:"arn";s:21:"kiarabu cha kialjeria";s:3:"arq";s:17:"kiarabu cha misri";s:3:"arz";s:7:"kiassam";s:2:"as";s:6:"kotava";s:3:"avk";s:8:"kiaimara";s:2:"ay";s:11:"kiazabajani";s:2:"az";s:9:"kibashkir";s:2:"ba";s:10:"kibelarusi";s:2:"be";s:12:"kviterussisk";s:2:"be";s:10:"kibulgaria";s:2:"bg";s:9:"kibambara";s:2:"bm";s:8:"kibangla";s:2:"bn";s:9:"kibengali";s:2:"bn";s:8:"kitibeti";s:2:"bo";s:9:"kibretoni";s:2:"br";s:8:"kibosnia";s:2:"bs";s:9:"katalaans";s:2:"ca";s:7:"katalan";s:2:"ca";s:9:"katalaneg";s:2:"ca";s:10:"katalonski";s:2:"ca";s:14:"katalánština";s:2:"ca";s:11:"katalanisch";s:2:"ca";s:15:"katanlanšćina";s:2:"ca";s:9:"katalagbe";s:2:"ca";s:8:"kataluna";s:2:"ca";s:9:"katalaani";s:2:"ca";s:8:"katalana";s:2:"ca";s:10:"katalanskt";s:2:"ca";s:10:"katalaansk";s:2:"ca";s:12:"katalaanisch";s:2:"ca";s:13:"kataloniyanci";s:2:"ca";s:14:"katalanšćina";s:2:"ca";s:8:"katalán";s:2:"ca";s:11:"katalónska";s:2:"ca";s:13:"kattalahnesch";s:2:"ca";s:11:"katalanesch";s:2:"ca";s:9:"katalonų";s:2:"ca";s:10:"katalāņu";s:2:"ca";s:9:"katalansk";s:2:"ca";s:11:"katalaansch";s:2:"ca";s:11:"kataloński";s:2:"ca";s:15:"katalánagiella";s:2:"ca";s:13:"katalánčina";s:2:"ca";s:14:"katalonščina";s:2:"ca";s:8:"katalaan";s:2:"ca";s:11:"katalonisht";s:2:"ca";s:10:"katalanska";s:2:"ca";s:10:"kikatalani";s:2:"ca";s:9:"katalanca";s:2:"ca";s:10:"katalancha";s:2:"ca";s:12:"kebuano dili";s:3:"ceb";s:9:"kebúanó";s:3:"ceb";s:10:"kamorrogbe";s:2:"ch";s:8:"kamorró";s:2:"ch";s:6:"koktaw";s:3:"cho";s:10:"kicherokee";s:3:"chr";s:12:"kurdu sorani";s:3:"ckb";s:13:"kurdeg sorani";s:3:"ckb";s:11:"kurd sorani";s:3:"ckb";s:21:"kurdština (sorání)";s:3:"ckb";s:12:"kurdo sorani";s:3:"ckb";s:12:"kurdi sorani";s:3:"ckb";s:14:"kurdu (sorani)";s:3:"ckb";s:16:"kurdisk (sorani)";s:3:"ckb";s:13:"kurdă sorani";s:3:"ckb";s:20:"kurdčina (sorání)";s:3:"ckb";s:16:"kurdishte sorani";s:3:"ckb";s:18:"kikurdi cha sorani";s:3:"ckb";s:10:"korsikaans";s:2:"co";s:7:"korsika";s:2:"co";s:6:"korseg";s:2:"co";s:11:"korzikanski";s:2:"co";s:11:"korsičtina";s:2:"co";s:10:"korsikansk";s:2:"co";s:8:"korsisch";s:2:"co";s:12:"korsišćina";s:2:"co";s:9:"korsikera";s:2:"co";s:11:"korsikaansk";s:2:"co";s:9:"korzički";s:2:"co";s:8:"korzikai";s:2:"co";s:9:"korsíska";s:2:"co";s:8:"korsesch";s:2:"co";s:13:"korsikiečių";s:2:"co";s:11:"korsikāņu";s:2:"co";s:7:"korsiku";s:2:"co";s:7:"koorsch";s:2:"co";s:12:"korsykański";s:2:"co";s:11:"korzičtina";s:2:"co";s:12:"korziščina";s:2:"co";s:12:"korsikanisht";s:2:"co";s:11:"korsikanska";s:2:"co";s:10:"kikosikani";s:2:"co";s:9:"korsikaca";s:2:"co";s:10:"korsiancha";s:2:"co";s:14:"kapiznonština";s:3:"cps";s:8:"kri dili";s:2:"cr";s:3:"kri";s:2:"cr";s:11:"kríjština";s:2:"cr";s:4:"krii";s:2:"cr";s:4:"krí";s:2:"cr";s:4:"kree";s:2:"cr";s:3:"kry";s:2:"cr";s:4:"krī";s:2:"cr";s:4:"krij";s:2:"cr";s:11:"krijščina";s:2:"cr";s:15:"krım türkçə";s:3:"crh";s:17:"krimeanski turski";s:3:"crh";s:12:"krim tyrkisk";s:3:"crh";s:13:"krimtatarisch";s:3:"crh";s:12:"krimmitatari";s:3:"crh";s:13:"krimintataari";s:3:"crh";s:13:"krim-tataarsk";s:3:"crh";s:14:"krimski turski";s:3:"crh";s:13:"krími tatár";s:3:"crh";s:14:"krímtyrkneska";s:3:"crh";s:13:"krimtataresch";s:3:"crh";s:12:"krymo turkų";s:3:"crh";s:14:"krimas tatāru";s:3:"crh";s:12:"krimtatarisk";s:3:"crh";s:13:"krimtataarsch";s:3:"crh";s:12:"krim-tataars";s:3:"crh";s:15:"krymski turecki";s:3:"crh";s:19:"krymská turečtina";s:3:"crh";s:20:"krimska tatarščina";s:3:"crh";s:13:"krimtatariska";s:3:"crh";s:18:"kırım türkçesi";s:3:"crh";s:10:"kyɛk kasa";s:2:"cs";s:8:"kekkiskt";s:2:"cs";s:8:"kichecki";s:2:"cs";s:7:"kicheki";s:2:"cs";s:11:"kaszëbsczi";s:3:"csb";s:10:"kashubianu";s:3:"csb";s:14:"kaşubyan dili";s:3:"csb";s:9:"kachoubeg";s:3:"csb";s:13:"kašubijanski";s:3:"csb";s:12:"kašubština";s:3:"csb";s:9:"kasjubisk";s:3:"csb";s:11:"kaschubisch";s:3:"csb";s:9:"kashubian";s:3:"csb";s:8:"kašuubi";s:3:"csb";s:7:"kašubi";s:3:"csb";s:8:"kachoube";s:3:"csb";s:10:"kasjoebysk";s:3:"csb";s:9:"kašupski";s:3:"csb";s:5:"kasub";s:3:"csb";s:8:"kashubia";s:3:"csb";s:11:"kasúbíska";s:3:"csb";s:12:"kaschuhbesch";s:3:"csb";s:11:"kaschubesch";s:3:"csb";s:8:"kašubų";s:3:"csb";s:7:"kašubu";s:3:"csb";s:11:"kaschuubsch";s:3:"csb";s:11:"kasjoebisch";s:3:"csb";s:9:"kaszubski";s:3:"csb";s:9:"kaschubic";s:3:"csb";s:11:"kašubčina";s:3:"csb";s:13:"kašubščina";s:3:"csb";s:10:"kasjubiska";s:3:"csb";s:11:"kerkslawies";s:2:"cu";s:16:"kilsə slav dili";s:2:"cu";s:12:"kirkeslavisk";s:2:"cu";s:15:"kirchenslawisch";s:2:"cu";s:12:"kirikuslaavi";s:2:"cu";s:12:"kirkkoslaavi";s:2:"cu";s:11:"kerkslavysk";s:2:"cu";s:15:"kirkjuslavneska";s:2:"cu";s:17:"kerscheßlahwesch";s:2:"cu";s:15:"kiercheslawesch";s:2:"cu";s:14:"karkenslaavsch";s:2:"cu";s:12:"kerkslavisch";s:2:"cu";s:13:"kyrkjeslavisk";s:2:"cu";s:12:"kyrkslaviska";s:2:"cu";s:16:"kilise slavcası";s:2:"cu";s:8:"kembraeg";s:2:"cy";s:5:"kimra";s:2:"cy";s:6:"kõmri";s:2:"cy";s:5:"kymri";s:2:"cy";s:13:"kabilar welsh";s:2:"cy";s:7:"kembrek";s:2:"cy";s:6:"kimric";s:2:"cy";s:11:"kymragiella";s:2:"cy";s:8:"kiwelisi";s:2:"cy";s:8:"kenemaka";s:2:"da";s:9:"kidenmaki";s:2:"da";s:10:"kelemānia";s:2:"de";s:12:"kĩnjeremani";s:2:"de";s:10:"kijerumani";s:2:"de";s:14:"kidolnoserbski";s:3:"dsb";s:18:"kadazandusunština";s:3:"dtp";s:8:"kidivehi";s:2:"dv";s:9:"kizongkha";s:2:"dz";s:5:"kiewe";s:2:"ee";s:6:"kreeka";s:2:"el";s:7:"kreikka";s:2:"el";s:8:"kigiriki";s:2:"el";s:10:"kiingereza";s:2:"en";s:19:"kanada ingiliscəsi";s:5:"en-ca";s:17:"kanadski engleski";s:5:"en-ca";s:20:"kanadisches englisch";s:5:"en-ca";s:22:"kanadiska engelšćina";s:5:"en-ca";s:23:"kanadatɔwo ƒe yevugbe";s:5:"en-ca";s:12:"kanada angla";s:5:"en-ca";s:15:"kanadanenglanti";s:5:"en-ca";s:17:"kanadeesk ingelsk";s:5:"en-ca";s:20:"kanadischs Änglisch";s:5:"en-ca";s:25:"kanadiska jendźelšćina";s:5:"en-ca";s:13:"kanadai angol";s:5:"en-ca";s:15:"kanadísk enska";s:5:"en-ca";s:19:"kanadescht englesch";s:5:"en-ca";s:14:"kanados anglų";s:5:"en-ca";s:15:"kanādas angļu";s:5:"en-ca";s:18:"kanaadsch engelsch";s:5:"en-ca";s:16:"kanadisk engelsk";s:5:"en-ca";s:20:"kanadyjski angielski";s:5:"en-ca";s:21:"kanadska angleščina";s:5:"en-ca";s:20:"kanadensisk engelska";s:5:"en-ca";s:19:"kanada İngilizcesi";s:5:"en-ca";s:18:"kanada inglizchasi";s:5:"en-ca";s:11:"kiesperanto";s:2:"eo";s:10:"kihispania";s:2:"es";s:9:"kiestonia";s:2:"et";s:8:"kibasque";s:2:"eu";s:7:"kiajemi";s:2:"fa";s:10:"kifulfulde";s:2:"ff";s:10:"kifinlandi";s:2:"fi";s:6:"kifiji";s:2:"fj";s:7:"kifaroe";s:2:"fo";s:10:"kĩbaranja";s:2:"fr";s:9:"kifaransa";s:2:"fr";s:20:"kadžunų prancūzų";s:3:"frc";s:22:"kifrisia cha kaskazini";s:3:"frr";s:12:"kuzey frizce";s:3:"frr";s:15:"kʼabilan firsi";s:2:"fy";s:22:"kifrisia cha magharibi";s:2:"fy";s:10:"kiayalandi";s:2:"ga";s:9:"kigagauzi";s:3:"gag";s:28:"kinų kalbos dziangsi tarmė";s:3:"gan";s:22:"kʼabilan scots gaelic";s:2:"gd";s:18:"kigaeli cha uskoti";s:2:"gd";s:8:"kigalisi";s:2:"gl";s:9:"kiguarani";s:2:"gn";s:7:"konknni";s:8:"gom-latn";s:8:"kiyunani";s:3:"grc";s:20:"kuikilani kelemānia";s:3:"gsw";s:21:"kijerumani cha uswisi";s:3:"gsw";s:10:"kigujarati";s:2:"gu";s:6:"kimanx";s:2:"gv";s:7:"kihausa";s:2:"ha";s:25:"kinų kalbos hakų tarmė";s:3:"hak";s:7:"kihawai";s:3:"haw";s:9:"kiebrania";s:2:"he";s:10:"kĩhĩndĩ";s:2:"hi";s:7:"kihindi";s:2:"hi";s:8:"kroaties";s:2:"hr";s:7:"kroateg";s:2:"hr";s:8:"kroatisk";s:2:"hr";s:9:"kroatisch";s:2:"hr";s:10:"kroatiagbe";s:2:"hr";s:6:"kroata";s:2:"hr";s:9:"kroaziera";s:2:"hr";s:7:"kroatia";s:2:"hr";s:9:"kroatiskt";s:2:"hr";s:8:"kroatysk";s:2:"hr";s:9:"kroazisch";s:2:"hr";s:10:"kuroshiyan";s:2:"hr";s:7:"kroasia";s:2:"hr";s:11:"króatíska";s:2:"hr";s:10:"krowatesch";s:2:"hr";s:9:"kroatesch";s:2:"hr";s:7:"kroatų";s:2:"hr";s:5:"kroat";s:2:"hr";s:9:"kroaatsch";s:2:"hr";s:14:"kroátiagiella";s:2:"hr";s:16:"koro’eeshiyaan";s:2:"hr";s:9:"kroatisht";s:2:"hr";s:9:"kroatiska";s:2:"hr";s:8:"kroeshia";s:2:"hr";s:15:"kreyòl ayisyen";s:2:"ht";s:8:"kreolski";s:2:"ht";s:7:"kihaiti";s:2:"ht";s:9:"kihungari";s:2:"hu";s:9:"kiarmenia";s:2:"hy";s:8:"kiherero";s:2:"hz";s:12:"kiintalingua";s:2:"ia";s:11:"kiindonesia";s:2:"id";s:6:"kiigbo";s:2:"ig";s:11:"kiaisilandi";s:2:"is";s:10:"kĩtaliano";s:2:"it";s:10:"kiitaliano";s:2:"it";s:7:"kepanī";s:2:"ja";s:10:"kĩnjabani";s:2:"ja";s:8:"kijapani";s:2:"ja";s:6:"kijava";s:2:"jv";s:8:"kartvela";s:2:"ka";s:7:"kijojia";s:2:"ka";s:11:"kara-kalpak";s:3:"kaa";s:10:"karakalpak";s:3:"kaa";s:14:"kara-kalpaški";s:3:"kaa";s:15:"karakalpačtina";s:3:"kaa";s:13:"karakalpakisk";s:3:"kaa";s:14:"karakalpakisch";s:3:"kaa";s:11:"karakalpako";s:3:"kaa";s:11:"karakalpaki";s:3:"kaa";s:12:"karakalpakki";s:3:"kaa";s:11:"karakalpaks";s:3:"kaa";s:14:"karakalpakesch";s:3:"kaa";s:12:"karakalpakų";s:3:"kaa";s:11:"karakalpaku";s:3:"kaa";s:13:"karakalpaksch";s:3:"kaa";s:13:"karakałpacki";s:3:"kaa";s:16:"karakalpaščina";s:3:"kaa";s:14:"karakalpakiska";s:3:"kaa";s:13:"karakalpakça";s:3:"kaa";s:6:"kabyle";s:3:"kab";s:9:"kabileñu";s:3:"kab";s:6:"kabile";s:3:"kab";s:7:"kabileg";s:3:"kab";s:11:"kabylština";s:3:"kab";s:8:"kabylisk";s:3:"kab";s:9:"kabylisch";s:3:"kab";s:12:"kabylšćina";s:3:"kab";s:7:"kabiili";s:3:"kab";s:8:"kabilera";s:3:"kab";s:7:"kabyyli";s:3:"kab";s:8:"kabilski";s:3:"kab";s:6:"kabije";s:3:"kab";s:7:"kabíle";s:3:"kab";s:9:"kabylesch";s:3:"kab";s:8:"kebailų";s:3:"kab";s:6:"kabilu";s:3:"kab";s:8:"kabuljan";s:3:"kab";s:7:"kabylsk";s:3:"kab";s:9:"kabyylsch";s:3:"kab";s:8:"kabylski";s:3:"kab";s:10:"kabylčina";s:3:"kab";s:12:"kabilščina";s:3:"kab";s:9:"kabilisht";s:3:"kab";s:9:"kabyliska";s:3:"kab";s:9:"kikabylia";s:3:"kab";s:10:"kabiliyece";s:3:"kab";s:10:"kabardianu";s:3:"kbd";s:8:"kabardca";s:3:"kbd";s:8:"kabardeg";s:3:"kbd";s:11:"kabardijski";s:3:"kbd";s:8:"kabardí";s:3:"kbd";s:14:"kabardinština";s:3:"kbd";s:9:"kabardian";s:3:"kbd";s:12:"kabardinisch";s:3:"kbd";s:11:"kabardiagbe";s:3:"kbd";s:10:"kabardiano";s:3:"kbd";s:18:"kabardi-tšerkessi";s:3:"kbd";s:7:"kabardi";s:3:"kbd";s:8:"kabardin";s:3:"kbd";s:9:"kabardysk";s:3:"kbd";s:11:"kabardíska";s:3:"kbd";s:8:"kabardia";s:3:"kbd";s:12:"kabardinesch";s:3:"kbd";s:10:"kabardinų";s:3:"kbd";s:11:"kabardiešu";s:3:"kbd";s:9:"kabardisk";s:3:"kbd";s:12:"kabardiensch";s:3:"kbd";s:10:"kabardisch";s:3:"kbd";s:11:"kabardyjski";s:3:"kbd";s:8:"kabardic";s:3:"kbd";s:11:"kabardčina";s:3:"kbd";s:15:"kabardinščina";s:3:"kbd";s:11:"kabardinska";s:3:"kbd";s:10:"kabardeyce";s:3:"kbd";s:5:"kongo";s:2:"kg";s:9:"kongolees";s:2:"kg";s:10:"konqo dili";s:2:"kg";s:11:"konžština";s:2:"kg";s:12:"kongolesisch";s:2:"kg";s:8:"kongogbe";s:2:"kg";s:8:"kikongoa";s:2:"kg";s:9:"kongóska";s:2:"kg";s:12:"kongolesesch";s:2:"kg";s:11:"kikɔ́ngɔ";s:2:"kg";s:5:"kongu";s:2:"kg";s:7:"kikongo";s:2:"kg";s:9:"kongčina";s:2:"kg";s:13:"kongovščina";s:2:"kg";s:6:"khowar";s:3:"khw";s:8:"khovarų";s:3:"khw";s:6:"kikuyu";s:2:"ki";s:6:"kikuju";s:2:"ki";s:6:"kikuiu";s:2:"ki";s:11:"kikujština";s:2:"ki";s:2:"ki";s:2:"ki";s:9:"kikuyuera";s:2:"ki";s:16:"kikuyu-schpraach";s:2:"ki";s:9:"kíkújú";s:2:"ki";s:14:"kikuyu-sprooch";s:2:"ki";s:7:"kikujų";s:2:"ki";s:6:"kikuya";s:2:"ki";s:10:"kikujčina";s:2:"ki";s:12:"kikujščina";s:2:"ki";s:10:"kikujuisht";s:2:"ki";s:8:"kikikuyu";s:2:"ki";s:8:"kikuycha";s:2:"ki";s:10:"kırmancki";s:3:"kiu";s:9:"kirmanjki";s:3:"kiu";s:10:"kirmanckî";s:3:"kiu";s:11:"kirmandżki";s:3:"kiu";s:12:"kırmançça";s:3:"kiu";s:8:"kwanyama";s:2:"kj";s:8:"kuanyama";s:2:"kj";s:13:"kuanyama dili";s:2:"kj";s:8:"kuanjama";s:2:"kj";s:13:"kuaňamština";s:2:"kj";s:10:"kunyamagbe";s:2:"kj";s:9:"kúanjama";s:2:"kj";s:8:"kuaniama";s:2:"kj";s:8:"kvaņamu";s:2:"kj";s:8:"kuaňama";s:2:"kj";s:8:"kvanjama";s:2:"kj";s:10:"kikwanyama";s:2:"kj";s:6:"kazaks";s:2:"kk";s:14:"kazaquistanín";s:2:"kk";s:5:"kazak";s:2:"kk";s:8:"kazački";s:2:"kk";s:6:"kazakh";s:2:"kk";s:10:"kazaština";s:2:"kk";s:9:"kasakhisk";s:2:"kk";s:10:"kasachisch";s:2:"kk";s:13:"kazachšćina";s:2:"kk";s:13:"kazakhstangbe";s:2:"kk";s:7:"kazaĥa";s:2:"kk";s:6:"kazajo";s:2:"kk";s:7:"kasahhi";s:2:"kk";s:9:"kazakhera";s:2:"kk";s:7:"kazakki";s:2:"kk";s:9:"kazakiskt";s:2:"kk";s:5:"kazac";s:2:"kk";s:7:"kazachs";s:2:"kk";s:8:"kazaški";s:2:"kk";s:5:"kazah";s:2:"kk";s:8:"kasakska";s:2:"kk";s:6:"kazako";s:2:"kk";s:10:"kassakesch";s:2:"kk";s:10:"kasachesch";s:2:"kk";s:8:"kazachų";s:2:"kk";s:6:"kazahu";s:2:"kk";s:10:"kazakhstan";s:2:"kk";s:6:"każak";s:2:"kk";s:12:"kasach’sch";s:2:"kk";s:9:"kazachski";s:2:"kk";s:11:"kazajo simi";s:2:"kk";s:7:"kazahă";s:2:"kk";s:11:"kazakgiella";s:2:"kk";s:8:"kozački";s:2:"kk";s:11:"kazaščina";s:2:"kk";s:9:"kazakisht";s:2:"kk";s:9:"kazakiska";s:2:"kk";s:8:"kikazaki";s:2:"kk";s:8:"kazakça";s:2:"kk";s:22:"kazakh (arabic script)";s:7:"kk-arab";s:24:"kazakh (cyrillic script)";s:7:"kk-cyrl";s:21:"kazakh (latin script)";s:7:"kk-latn";s:14:"kazakh (china)";s:5:"kk-cn";s:19:"kazakh (kazakhstan)";s:5:"kk-kz";s:15:"kazakh (turkey)";s:5:"kk-tr";s:11:"kalaallisut";s:2:"kl";s:12:"kalalisutski";s:2:"kl";s:12:"kalaalisugbe";s:2:"kl";s:14:"kalaallisutera";s:2:"kl";s:9:"kalalisut";s:2:"kl";s:10:"kalallisut";s:2:"kl";s:24:"kalaallisut; grønlandsk";s:2:"kl";s:10:"kalalisute";s:2:"kl";s:13:"kikalaallisut";s:2:"kl";s:13:"kalallisutcha";s:2:"kl";s:5:"khmer";s:2:"km";s:13:"kambodia kasa";s:2:"km";s:5:"kxmer";s:2:"km";s:10:"kambojikan";s:2:"km";s:7:"kmerski";s:2:"km";s:12:"khmérština";s:2:"km";s:15:"kambodschanisch";s:2:"km";s:17:"kambodžanšćina";s:2:"km";s:8:"khmergbe";s:2:"km";s:5:"kmera";s:2:"km";s:7:"khmeeri";s:2:"km";s:9:"khemerera";s:2:"km";s:7:"kemeere";s:2:"km";s:12:"kambodjanskt";s:2:"km";s:12:"khmeršćina";s:2:"km";s:10:"kambodzsai";s:2:"km";s:11:"keme, etiti";s:2:"km";s:4:"kmer";s:2:"km";s:10:"kikambodia";s:2:"km";s:15:"kambodschanesch";s:2:"km";s:7:"khmerų";s:2:"km";s:6:"khmeru";s:2:"km";s:15:"kambodschaansch";s:2:"km";s:8:"khmerski";s:2:"km";s:10:"khmer simi";s:2:"km";s:7:"khmeră";s:2:"km";s:14:"kambodiagiella";s:2:"km";s:6:"kmêre";s:2:"km";s:11:"khmérčina";s:2:"km";s:11:"kmerščina";s:2:"km";s:11:"kamboodhian";s:2:"km";s:5:"kmere";s:2:"km";s:12:"kambodjanska";s:2:"km";s:6:"kmerce";s:2:"km";s:7:"kannada";s:2:"kn";s:7:"kanareg";s:2:"kn";s:6:"kanada";s:2:"kn";s:12:"kannadština";s:2:"kn";s:13:"kannadšćina";s:2:"kn";s:10:"kannadagbe";s:2:"kn";s:6:"kanara";s:2:"kn";s:9:"kannadera";s:2:"kn";s:9:"kannadski";s:2:"kn";s:7:"kanadų";s:2:"kn";s:7:"kannadu";s:2:"kn";s:12:"kannada simi";s:2:"kn";s:11:"kannadčina";s:2:"kn";s:9:"kannadays";s:2:"kn";s:6:"kanade";s:2:"kn";s:9:"kikannada";s:2:"kn";s:9:"kannadcha";s:2:"kn";s:8:"koreaans";s:2:"ko";s:10:"korea kasa";s:2:"ko";s:6:"koreya";s:2:"ko";s:7:"korekan";s:2:"ko";s:8:"koreaneg";s:2:"ko";s:8:"korejski";s:2:"ko";s:11:"korejština";s:2:"ko";s:8:"koreansk";s:2:"ko";s:10:"koreanisch";s:2:"ko";s:15:"korejańšćina";s:2:"ko";s:8:"koreagbe";s:2:"ko";s:6:"korean";s:2:"ko";s:5:"korea";s:2:"ko";s:7:"koreera";s:2:"ko";s:7:"koreere";s:2:"ko";s:9:"koreanskt";s:2:"ko";s:9:"koreaansk";s:2:"ko";s:11:"koreaanisch";s:2:"ko";s:6:"kōlea";s:2:"ko";s:12:"korejšćina";s:2:"ko";s:6:"koreai";s:2:"ko";s:5:"koria";s:2:"ko";s:8:"kóreska";s:2:"ko";s:7:"kikorea";s:2:"ko";s:11:"koreamiusut";s:2:"ko";s:13:"korrejaanesch";s:2:"ko";s:10:"koreanesch";s:2:"ko";s:13:"korėjiečių";s:2:"ko";s:10:"korejiešu";s:2:"ko";s:9:"koreanina";s:2:"ko";s:7:"korejan";s:2:"ko";s:10:"koreaansch";s:2:"ko";s:10:"koreański";s:2:"ko";s:11:"koreagiella";s:2:"ko";s:9:"koreyëen";s:2:"ko";s:11:"kórejčina";s:2:"ko";s:12:"korejščina";s:2:"ko";s:9:"kuuriyaan";s:2:"ko";s:10:"koreanisht";s:2:"ko";s:9:"koreanska";s:2:"ko";s:6:"korece";s:2:"ko";s:9:"koreyscha";s:2:"ko";s:13:"komi-permyaks";s:3:"koi";s:12:"komi-permyak";s:3:"koi";s:15:"komi-permjački";s:3:"koi";s:12:"komi-permiac";s:3:"koi";s:17:"komi-permjačtina";s:3:"koi";s:15:"komi-permjakisk";s:3:"koi";s:16:"komi-permjakisch";s:3:"koi";s:11:"komi permio";s:3:"koi";s:15:"komi-permyakera";s:3:"koi";s:13:"komipermjakki";s:3:"koi";s:12:"komi-permiak";s:3:"koi";s:18:"komski ili permski";s:3:"koi";s:13:"komi-permják";s:3:"koi";s:14:"kómí-permyak";s:3:"koi";s:14:"komių-permių";s:3:"koi";s:18:"komiešu-permiešu";s:3:"koi";s:14:"komipermjakisk";s:3:"koi";s:14:"komi-permjaaks";s:3:"koi";s:14:"komi-permiacki";s:3:"koi";s:17:"komi-permiačtina";s:3:"koi";s:18:"komi-permjaščina";s:3:"koi";s:17:"komishte permiake";s:3:"koi";s:16:"komi-permjakiska";s:3:"koi";s:13:"kikomipermyak";s:3:"koi";s:15:"komi-permyakcha";s:3:"koi";s:6:"kanuri";s:2:"kr";s:10:"kanur dili";s:2:"kr";s:7:"kanouri";s:2:"kr";s:14:"kanuri-sprache";s:2:"kr";s:10:"kanuriagbe";s:2:"kr";s:16:"kanuri-schpraach";s:2:"kr";s:8:"kanúrí";s:2:"kr";s:14:"kanuri-sprooch";s:2:"kr";s:6:"kanuru";s:2:"kr";s:9:"kanuursch";s:2:"kr";s:12:"kanurijčina";s:2:"kr";s:12:"kanurščina";s:2:"kr";s:8:"kikanuri";s:2:"kr";s:15:"karachay-balkar";s:3:"krc";s:16:"karatchay-balkar";s:3:"krc";s:15:"karačaj-balkar";s:3:"krc";s:8:"karatxai";s:3:"krc";s:24:"karačajevo-balkarština";s:3:"krc";s:15:"karatjai-balkar";s:3:"krc";s:25:"karatschaiisch-balkarisch";s:3:"krc";s:16:"karakay-bakargbe";s:3:"krc";s:18:"karatšai-balkaari";s:3:"krc";s:17:"karatchaï balkar";s:3:"krc";s:17:"karacsáj-balkár";s:3:"krc";s:15:"karachai balkar";s:3:"krc";s:14:"karasaíbalkar";s:3:"krc";s:25:"karatschaiesch-balkaresch";s:3:"krc";s:22:"karačiajų balkarijos";s:3:"krc";s:21:"karačaju un balkāru";s:3:"krc";s:24:"karatschaisch-balkaarsch";s:3:"krc";s:20:"karatsjaj-balkarisch";s:3:"krc";s:22:"karaczajsko-bałkarski";s:3:"krc";s:15:"karaceai-balkar";s:3:"krc";s:30:"karačajevsko-balkarský jazyk";s:3:"krc";s:22:"karačaj-balkarščina";s:3:"krc";s:17:"karaçay-balkarca";s:3:"krc";s:4:"krio";s:3:"kri";s:9:"kinaray-a";s:3:"krj";s:9:"kinaraj-a";s:3:"krj";s:8:"kinaraya";s:3:"krj";s:8:"kasjmirs";s:2:"ks";s:7:"kaşmir";s:2:"ks";s:8:"kashmiri";s:2:"ks";s:8:"kašmiri";s:2:"ks";s:14:"kašmírština";s:2:"ks";s:12:"kaschmirisch";s:2:"ks";s:14:"kašmiršćina";s:2:"ks";s:10:"kashmirgbe";s:2:"ks";s:8:"kaŝmira";s:2:"ks";s:9:"kašmiiri";s:2:"ks";s:10:"kashmirera";s:2:"ks";s:11:"kashmiriskt";s:2:"ks";s:8:"kasjmiri";s:2:"ks";s:10:"kašmirski";s:2:"ks";s:9:"kásmíri";s:2:"ks";s:7:"kashmir";s:2:"ks";s:10:"kasmírska";s:2:"ks";s:13:"kaschmieresch";s:2:"ks";s:12:"kaschmiresch";s:2:"ks";s:9:"kašmyrų";s:2:"ks";s:12:"kašmiriešu";s:2:"ks";s:7:"kaxmiri";s:2:"ks";s:12:"kaschmiersch";s:2:"ks";s:10:"kaszmirski";s:2:"ks";s:13:"kašmírčina";s:2:"ks";s:14:"kašmirščina";s:2:"ks";s:8:"kashmire";s:2:"ks";s:11:"kashmiriska";s:2:"ks";s:10:"kikashmiri";s:2:"ks";s:9:"keşmirce";s:2:"ks";s:10:"kashmircha";s:2:"ks";s:24:"kashmiri (arabic script)";s:7:"ks-arab";s:28:"kashmiri (devanagari script)";s:7:"ks-deva";s:7:"kelnski";s:3:"ksh";s:12:"kolínština";s:3:"ksh";s:7:"kölsch";s:3:"ksh";s:10:"kölníska";s:3:"ksh";s:8:"kolognų";s:3:"ksh";s:7:"kølnsk";s:3:"ksh";s:11:"kolínčina";s:3:"ksh";s:9:"kölniska";s:3:"ksh";s:15:"köln diyalekti";s:3:"ksh";s:6:"kurdî";s:2:"ku";s:8:"koerdies";s:2:"ku";s:5:"kürd";s:2:"ku";s:6:"kurdeg";s:2:"ku";s:7:"kurdski";s:2:"ku";s:4:"kurd";s:2:"ku";s:10:"kurdština";s:2:"ku";s:7:"kurdisk";s:2:"ku";s:8:"kurdisch";s:2:"ku";s:12:"kurdišćina";s:2:"ku";s:9:"kurdiagbe";s:2:"ku";s:7:"kurdish";s:2:"ku";s:5:"kurda";s:2:"ku";s:5:"kurdo";s:2:"ku";s:5:"kurdi";s:2:"ku";s:8:"kurduera";s:2:"ku";s:8:"kurdiskt";s:2:"ku";s:5:"kurde";s:2:"ku";s:8:"koerdysk";s:2:"ku";s:8:"kurdanci";s:2:"ku";s:10:"kúrdíska";s:2:"ku";s:11:"kurdiskisut";s:2:"ku";s:8:"kurdesch";s:2:"ku";s:6:"kurdų";s:2:"ku";s:5:"kurdu";s:2:"ku";s:7:"kurdiż";s:2:"ku";s:7:"kurdsch";s:2:"ku";s:9:"koerdisch";s:2:"ku";s:9:"kurdyjski";s:2:"ku";s:6:"kurdă";s:2:"ku";s:11:"kurdigiella";s:2:"ku";s:9:"kurdčina";s:2:"ku";s:11:"kurdščina";s:2:"ku";s:9:"kurdishka";s:2:"ku";s:8:"kurdiska";s:2:"ku";s:7:"kikurdi";s:2:"ku";s:8:"kürtçe";s:2:"ku";s:7:"kurdcha";s:2:"ku";s:20:"kurdî (latînî)‎";s:7:"ku-latn";s:22:"kurdish (latin script)";s:7:"ku-latn";s:4:"komi";s:2:"kv";s:9:"komi dili";s:2:"kv";s:11:"komijština";s:2:"kv";s:12:"komi-sprache";s:2:"kv";s:14:"komi-schpraach";s:2:"kv";s:8:"komíska";s:2:"kv";s:12:"komi-sprooch";s:2:"kv";s:8:"komiešu";s:2:"kv";s:10:"komigiella";s:2:"kv";s:10:"komijčina";s:2:"kv";s:12:"komijščina";s:2:"kv";s:4:"kome";s:2:"kv";s:6:"kikomi";s:2:"kv";s:8:"kernowek";s:2:"kw";s:7:"kornies";s:2:"kw";s:4:"korn";s:2:"kw";s:11:"kerneveureg";s:2:"kw";s:9:"korniški";s:2:"kw";s:10:"kornština";s:2:"kw";s:8:"kornisch";s:2:"kw";s:12:"kornišćina";s:2:"kw";s:5:"korni";s:2:"kw";s:10:"kornubiera";s:2:"kw";s:7:"kornski";s:2:"kw";s:7:"kornish";s:2:"kw";s:10:"kornbreska";s:2:"kw";s:8:"kernewek";s:2:"kw";s:8:"kornesch";s:2:"kw";s:6:"kornų";s:2:"kw";s:9:"korniešu";s:2:"kw";s:7:"korniku";s:2:"kw";s:7:"kornisk";s:2:"kw";s:8:"koornsch";s:2:"kw";s:9:"kornijski";s:2:"kw";s:11:"kornagiella";s:2:"kw";s:9:"kornčina";s:2:"kw";s:13:"kornijščina";s:2:"kw";s:8:"kornisht";s:2:"kw";s:8:"korniska";s:2:"kw";s:7:"kikorni";s:2:"kw";s:11:"kernevekçe";s:2:"kw";s:10:"kornishcha";s:2:"kw";s:9:"kirgisies";s:2:"ky";s:13:"kirguistanín";s:2:"ky";s:6:"kirgiz";s:2:"ky";s:8:"kirgiski";s:2:"ky";s:8:"kirguís";s:2:"ky";s:12:"kyrgyzština";s:2:"ky";s:9:"kirgisisk";s:2:"ky";s:10:"kirgisisch";s:2:"ky";s:12:"kirgišćina";s:2:"ky";s:13:"kirghistangbe";s:2:"ky";s:6:"kyrgyz";s:2:"ky";s:7:"kirgiza";s:2:"ky";s:8:"kirgiisi";s:2:"ky";s:9:"kirgizera";s:2:"ky";s:9:"kirgisikt";s:2:"ky";s:8:"kirghize";s:2:"ky";s:9:"kirgizysk";s:2:"ky";s:11:"kirgiisisch";s:2:"ky";s:10:"kirgizanci";s:2:"ky";s:9:"kirgiški";s:2:"ky";s:8:"kirghizo";s:2:"ky";s:8:"kirgiska";s:2:"ky";s:11:"kirjihsesch";s:2:"ky";s:10:"kirgisesch";s:2:"ky";s:8:"kirgizų";s:2:"ky";s:8:"kirgīzu";s:2:"ky";s:7:"kirghiz";s:2:"ky";s:7:"kirgiż";s:2:"ky";s:9:"kirgiesch";s:2:"ky";s:10:"kirgizisch";s:2:"ky";s:12:"kirghiz simi";s:2:"ky";s:7:"kirghis";s:2:"ky";s:10:"kârgâză";s:2:"ky";s:12:"kirgizština";s:2:"ky";s:12:"kirgiščina";s:2:"ky";s:7:"kirgiis";s:2:"ky";s:10:"kirgizisht";s:2:"ky";s:10:"kirgisiska";s:2:"ky";s:10:"kikirigizi";s:2:"ky";s:10:"kırgızca";s:2:"ky";s:8:"kilatini";s:2:"la";s:11:"kilasembagi";s:2:"lb";s:7:"kiganda";s:2:"lg";s:15:"淋布尔吉文";s:2:"li";s:9:"kilingala";s:2:"ln";s:7:"kilaosi";s:2:"lo";s:6:"kilozi";s:3:"loz";s:11:"kilithuania";s:2:"lt";s:8:"kilatvia";s:2:"lv";s:22:"klassisches chinesisch";s:3:"lzh";s:15:"klassinen kiina";s:3:"lzh";s:21:"klassescht chinesesch";s:3:"lzh";s:16:"klasikinė kinų";s:3:"lzh";s:16:"klassiek chinees";s:3:"lzh";s:11:"kajin-majol";s:2:"mh";s:7:"kimaori";s:2:"mi";s:11:"kimasedonia";s:2:"mk";s:17:"kabilar maleyalam";s:2:"ml";s:11:"kimalayalam";s:2:"ml";s:10:"kimongolia";s:2:"mn";s:17:"kʼabilan marathi";s:2:"mr";s:9:"kimarathi";s:2:"mr";s:9:"kimalesia";s:2:"ms";s:7:"kimalta";s:2:"mt";s:9:"krik dili";s:3:"mus";s:7:"kriški";s:3:"mus";s:11:"kríkština";s:3:"mus";s:4:"krik";s:3:"mus";s:5:"krík";s:3:"mus";s:6:"krykų";s:3:"mus";s:6:"krīku";s:3:"mus";s:5:"kriek";s:3:"mus";s:10:"kríkčina";s:3:"mus";s:7:"kiburma";s:2:"my";s:32:"kinų kalbos pietų minų tarmė";s:3:"nan";s:20:"književni norveški";s:2:"nb";s:21:"knjižna norveščina";s:2:"nb";s:18:"kibokmal cha norwe";s:2:"nb";s:8:"kinepali";s:2:"ne";s:8:"kinewari";s:3:"new";s:8:"kindonga";s:2:"ng";s:9:"kiholanzi";s:2:"nl";s:13:"kinorwe kipya";s:2:"nn";s:7:"kinorwe";s:2:"no";s:21:"kisotho cha kaskazini";s:3:"nso";s:11:"kuzey sotho";s:3:"nso";s:8:"kinyanja";s:2:"ny";s:9:"kiokitani";s:2:"oc";s:7:"kioromo";s:2:"om";s:7:"kioriya";s:2:"or";s:8:"kiosetia";s:2:"os";s:9:"kipunjabi";s:2:"pa";s:11:"kapampangan";s:3:"pam";s:9:"kipolandi";s:2:"pl";s:19:"kuzeybatı kafkasya";s:3:"pnt";s:8:"kipashto";s:2:"ps";s:6:"kireno";s:2:"pt";s:6:"keçua";s:2:"qu";s:8:"kechuaeg";s:2:"qu";s:7:"kvenča";s:2:"qu";s:14:"kečuánština";s:2:"qu";s:6:"kečua";s:2:"qu";s:10:"kwetsuagbe";s:2:"qu";s:6:"keĉua";s:2:"qu";s:7:"ketšua";s:2:"qu";s:6:"kecsua";s:2:"qu";s:8:"kvesjúa";s:2:"qu";s:11:"kättschowa";s:2:"qu";s:8:"kečujų";s:2:"qu";s:6:"kečvu";s:2:"qu";s:6:"keċwa";s:2:"qu";s:6:"keczua";s:2:"qu";s:13:"kečuánčina";s:2:"qu";s:14:"kečuanščina";s:2:"qu";s:9:"kiquechua";s:2:"qu";s:9:"keçuvaca";s:2:"qu";s:27:"kečuánština (chimborazo)";s:3:"qug";s:28:"kichwa (chimborazo-gebidder)";s:3:"qug";s:6:"kichwa";s:3:"qug";s:10:"kiromanshi";s:2:"rm";s:7:"kirundi";s:2:"rn";s:12:"kirundština";s:2:"rn";s:14:"kirundišćina";s:2:"rn";s:8:"kiroundi";s:2:"rn";s:10:"k-rundesch";s:2:"rn";s:11:"kirundčina";s:2:"rn";s:9:"kiromania";s:2:"ro";s:8:"kĩracia";s:2:"ru";s:6:"krievu";s:2:"ru";s:6:"kirusi";s:2:"ru";s:11:"kinyarwanda";s:2:"rw";s:11:"kinyarvanda";s:2:"rw";s:11:"kinjarvanda";s:2:"rw";s:16:"kiňarwandština";s:2:"rw";s:11:"kinjarwanda";s:2:"rw";s:11:"kinyaruanda";s:2:"rw";s:13:"kiniyaruwanda";s:2:"rw";s:8:"kiruanda";s:2:"rw";s:12:"kínjarvanda";s:2:"rw";s:15:"kinja-ruandesch";s:2:"rw";s:12:"kinjaruandų";s:2:"rw";s:11:"kiņaruanda";s:2:"rw";s:12:"kinya-ruanda";s:2:"rw";s:16:"kinyarwanda simi";s:2:"rw";s:11:"kiňarwanda";s:2:"rw";s:14:"kiniaruandisht";s:2:"rw";s:13:"kinyarvandcha";s:2:"rw";s:11:"kisanskriti";s:2:"sa";s:8:"kisindhi";s:2:"sd";s:20:"kisami cha kaskazini";s:2:"se";s:10:"kuzey sami";s:2:"se";s:7:"kisango";s:2:"sg";s:22:"kuroweshiyancin-sabiya";s:2:"sh";s:17:"kiserbia-kroeshia";s:2:"sh";s:9:"kisinhala";s:2:"si";s:10:"kislovakia";s:2:"sk";s:10:"kislovenia";s:2:"sl";s:6:"kāmoa";s:2:"sm";s:7:"kisamoa";s:2:"sm";s:17:"kisami cha kusini";s:3:"sma";s:7:"kishona";s:2:"sn";s:10:"kĩcumarĩ";s:2:"so";s:8:"kisomali";s:2:"so";s:9:"kialbania";s:2:"sq";s:8:"kiserbia";s:2:"sr";s:7:"kiswati";s:2:"ss";s:18:"kisotho cha kusini";s:2:"st";s:7:"kisunda";s:2:"su";s:7:"kuekene";s:2:"sv";s:7:"kiswidi";s:2:"sv";s:9:"kiswahili";s:2:"sw";s:10:"kiswahíli";s:2:"sw";s:7:"kitamil";s:2:"ta";s:8:"kitelugu";s:2:"te";s:7:"kitetum";s:3:"tet";s:8:"kitajiki";s:2:"tg";s:10:"kitailandi";s:2:"th";s:10:"kitigrinya";s:2:"ti";s:12:"kiturukimeni";s:2:"tk";s:8:"kitswana";s:2:"tn";s:7:"kitonga";s:2:"to";s:10:"kitokpisin";s:3:"tpi";s:8:"kituruki";s:2:"tr";s:8:"kitsonga";s:2:"ts";s:8:"kitatari";s:2:"tt";s:9:"kitumbuka";s:3:"tum";s:5:"kitwi";s:2:"tw";s:8:"kitahiti";s:2:"ty";s:22:"kesk-maroko tamazighti";s:3:"tzm";s:22:"keskiatlaksentamazight";s:3:"tzm";s:26:"közép-marokkói tamazigt";s:3:"tzm";s:8:"kiuiguri";s:2:"ug";s:9:"kiukrania";s:2:"uk";s:6:"kiurdu";s:2:"ur";s:8:"kiuzbeki";s:2:"uz";s:7:"kivenda";s:2:"ve";s:11:"kivietinamu";s:2:"vi";s:8:"kiwolofu";s:2:"wo";s:22:"kinų kalbos vu tarmė";s:3:"wuu";s:9:"kalmıqca";s:3:"xal";s:7:"kalmouk";s:3:"xal";s:6:"kalmik";s:3:"xal";s:11:"kalmyčtina";s:3:"xal";s:6:"kalmyk";s:3:"xal";s:12:"kalmückisch";s:3:"xal";s:8:"kalmõki";s:3:"xal";s:8:"kalmukki";s:3:"xal";s:7:"kalmük";s:3:"xal";s:6:"kalmuk";s:3:"xal";s:10:"kalmúkska";s:3:"xal";s:12:"kalmückesch";s:3:"xal";s:8:"kalmukų";s:3:"xal";s:7:"kalmiku";s:3:"xal";s:11:"kalmücksch";s:3:"xal";s:7:"kalmuks";s:3:"xal";s:9:"kałmucki";s:3:"xal";s:12:"kalmiščina";s:3:"xal";s:11:"kalmuckiska";s:3:"xal";s:10:"kalmıkça";s:3:"xal";s:4:"kosa";s:2:"xh";s:5:"ksosa";s:2:"xh";s:5:"koosa";s:2:"xh";s:5:"kosų";s:2:"xh";s:5:"khosu";s:2:"xh";s:5:"khosa";s:2:"xh";s:7:"kixhosa";s:2:"xh";s:6:"kiyidi";s:2:"yi";s:8:"kiyoruba";s:2:"yo";s:9:"kantonees";s:3:"yue";s:8:"kantoneg";s:3:"yue";s:9:"kantonski";s:3:"yue";s:12:"kantonština";s:3:"yue";s:11:"kantonesisk";s:3:"yue";s:12:"kantonesisch";s:3:"yue";s:7:"kantoni";s:3:"yue";s:13:"kantoninkiina";s:3:"yue";s:13:"kantonesískt";s:3:"yue";s:10:"kantoneesk";s:3:"yue";s:6:"kanton";s:3:"yue";s:10:"kantoneska";s:3:"yue";s:19:"kanton-schineesesch";s:3:"yue";s:8:"kantonek";s:3:"yue";s:12:"kantonesesch";s:3:"yue";s:27:"kinų kalbos kantono tarmė";s:3:"yue";s:11:"kantoniešu";s:3:"yue";s:10:"kantoński";s:3:"yue";s:12:"kantongiella";s:3:"yue";s:11:"kantončina";s:3:"yue";s:13:"kantonščina";s:3:"yue";s:12:"kantonesiska";s:3:"yue";s:8:"kantonca";s:3:"yue";s:11:"kyaena kasa";s:2:"zh";s:7:"kineski";s:2:"zh";s:8:"kinesisk";s:2:"zh";s:7:"kinagbe";s:2:"zh";s:5:"kiina";s:2:"zh";s:9:"kinesiskt";s:2:"zh";s:6:"kínai";s:2:"zh";s:10:"kínverska";s:2:"zh";s:8:"kĩcaina";s:2:"zh";s:11:"kineserisut";s:2:"zh";s:5:"kinų";s:2:"zh";s:13:"kiinnágiella";s:2:"zh";s:12:"kitajščina";s:2:"zh";s:9:"kinezisht";s:2:"zh";s:9:"kinesiska";s:2:"zh";s:7:"kichina";s:2:"zh";s:26:"kineski (pojednostavljeni)";s:7:"zh-hans";s:24:"kínverska (einfölduð)";s:7:"zh-hans";s:25:"kineski (pojednostavljen)";s:7:"zh-hans";s:23:"kinezishte e thjeshtuar";s:7:"zh-hans";s:23:"kineski (tradicionalni)";s:7:"zh-hant";s:24:"kínverska (hefðbundin)";s:7:"zh-hant";s:23:"kinezishte tradicionale";s:7:"zh-hant";s:16:"kichina cha jadi";s:7:"zh-hant";s:6:"kizulu";s:2:"zu";s:7:"kiakoli";s:3:"ach";s:7:"kiaghem";s:3:"agq";s:25:"kiarabu sanifu cha kisasa";s:6:"ar-001";s:5:"kiasu";s:3:"asa";s:7:"kibemba";s:3:"bem";s:6:"kibena";s:3:"bez";s:4:"kiga";s:3:"gaa";s:5:"kíga";s:3:"cgg";s:7:"kichiga";s:3:"cgg";s:6:"kigaca";s:3:"cgg";s:7:"kopties";s:3:"cop";s:9:"kopt dili";s:3:"cop";s:6:"kopteg";s:3:"cop";s:7:"koptski";s:3:"cop";s:10:"koptština";s:3:"cop";s:7:"koptisk";s:3:"cop";s:8:"koptisch";s:3:"cop";s:5:"kopti";s:3:"cop";s:7:"koptysk";s:3:"cop";s:4:"kopt";s:3:"cop";s:6:"koptik";s:3:"cop";s:9:"koptíska";s:3:"cop";s:8:"koptesch";s:3:"cop";s:6:"koptų";s:3:"cop";s:5:"koptu";s:3:"cop";s:7:"koptiku";s:3:"cop";s:7:"koptsch";s:3:"cop";s:9:"koptyjski";s:3:"cop";s:9:"koptčina";s:3:"cop";s:11:"koptščina";s:3:"cop";s:8:"koptiska";s:3:"cop";s:8:"kikhufti";s:3:"cop";s:8:"kıptice";s:3:"cop";s:7:"kitaita";s:3:"dav";s:7:"kizarma";s:3:"dje";s:7:"kiduala";s:3:"dua";s:12:"kijola-fonyi";s:3:"dyo";s:6:"kiembu";s:3:"ebu";s:6:"kjembu";s:3:"ebu";s:7:"kiefiki";s:3:"efi";s:7:"kimisri";s:3:"egy";s:10:"kifilipino";s:3:"fil";s:7:"kikisii";s:3:"guz";s:6:"kihiti";s:3:"hit";s:8:"kingomba";s:3:"jgo";s:9:"kimashami";s:3:"jmc";s:9:"kimachame";s:3:"jmc";s:5:"kamba";s:3:"kam";s:10:"kambština";s:3:"kam";s:7:"kambera";s:3:"kam";s:6:"kembų";s:3:"kam";s:5:"kambu";s:3:"kam";s:12:"kambaščina";s:3:"kam";s:9:"kambishte";s:3:"kam";s:7:"kikamba";s:3:"kam";s:7:"kambcha";s:3:"kam";s:9:"kimakonde";s:3:"kde";s:12:"kabuverdianu";s:3:"kea";s:11:"kabuverdian";s:3:"kea";s:13:"kapverdština";s:3:"kea";s:10:"kapverdisk";s:3:"kea";s:14:"kapverdšćina";s:3:"kea";s:15:"kapverdenkreoli";s:3:"kea";s:11:"kapverdiskt";s:3:"kea";s:19:"kaapverdysk creools";s:3:"kea";s:12:"kapvärdesch";s:3:"kea";s:13:"kaboverdiešu";s:3:"kea";s:11:"kappverdisk";s:3:"kea";s:20:"kaapverdisch creools";s:3:"kea";s:34:"kreolski wysp zielonego przylądka";s:3:"kea";s:12:"kapverdčina";s:3:"kea";s:15:"kabuverdianisht";s:3:"kea";s:11:"kapverdiska";s:3:"kea";s:14:"kikabuverdianu";s:3:"kea";s:14:"kabuverdiancha";s:3:"kea";s:12:"koyra chiini";s:3:"khq";s:12:"koyra çiini";s:3:"khq";s:12:"koyra-chiini";s:3:"khq";s:15:"koyra chiiniera";s:3:"khq";s:12:"kojra-csíni";s:3:"khq";s:11:"kojra čini";s:3:"khq";s:12:"koiračiinī";s:3:"khq";s:11:"koyra chini";s:3:"khq";s:13:"kojraçinisht";s:3:"khq";s:14:"kikoyra chiini";s:3:"khq";s:8:"kalenjin";s:3:"kln";s:3:"kln";s:3:"kln";s:8:"kalencin";s:3:"kln";s:10:"kalendžin";s:3:"kln";s:9:"kaljenjin";s:3:"kln";s:11:"kalenjinera";s:3:"kln";s:10:"kalendzsin";s:3:"kln";s:10:"kalenjinų";s:3:"kln";s:12:"kalendžīnu";s:3:"kln";s:15:"kalenjinščina";s:3:"kln";s:12:"kalenjinisht";s:3:"kln";s:10:"kikalenjin";s:3:"kln";s:11:"kalenjincha";s:3:"kln";s:7:"konkani";s:3:"kok";s:6:"konkan";s:3:"kok";s:13:"konkánština";s:3:"kok";s:11:"konkaniagbe";s:3:"kok";s:8:"konkaní";s:3:"kok";s:10:"konkaniera";s:3:"kok";s:9:"konkanių";s:3:"kok";s:7:"konkanu";s:3:"kok";s:12:"konkani simi";s:3:"kok";s:12:"konkánčina";s:3:"kok";s:13:"konkanščina";s:3:"kok";s:10:"konkanisht";s:3:"kok";s:3:"kok";s:3:"kok";s:9:"konkancha";s:3:"kok";s:6:"kurukh";s:3:"kru";s:10:"kurux dili";s:3:"kru";s:12:"kuruchština";s:3:"kru";s:8:"kuruški";s:3:"kru";s:5:"kuruh";s:3:"kru";s:5:"kuruk";s:3:"kru";s:7:"kúrúk";s:3:"kru";s:6:"kuruhu";s:3:"kru";s:6:"kurusk";s:3:"kru";s:11:"kurukhčina";s:3:"kru";s:8:"kisambaa";s:3:"ksb";s:7:"kibafia";s:3:"ksf";s:7:"kirangi";s:3:"lag";s:8:"kilakota";s:3:"lkt";s:12:"katanganluba";s:2:"lu";s:6:"kiluba";s:2:"lu";s:14:"kiluba-katanga";s:2:"lu";s:12:"kiluba-lulua";s:3:"lua";s:7:"kijaluo";s:3:"luo";s:7:"kiluhya";s:3:"luy";s:8:"kimaasai";s:3:"mas";s:6:"kimeru";s:3:"mer";s:19:"kreolski mauritiusa";s:3:"mfe";s:10:"kimoriseni";s:3:"mfe";s:16:"kimakhuwa-meetto";s:3:"mgh";s:6:"kimeta";s:3:"mgo";s:8:"kimohoki";s:3:"moh";s:9:"kimundang";s:3:"mua";s:13:"kelios kalbos";s:3:"mul";s:8:"khoekhoe";s:3:"naq";s:6:"kinama";s:3:"naq";s:23:"kindebele cha kaskazini";s:2:"nd";s:13:"kuzey ndebele";s:2:"nd";s:6:"kwasio";s:3:"nmg";s:6:"kvasio";s:3:"nmg";s:9:"kwasiogbe";s:3:"nmg";s:8:"kwasiera";s:3:"nmg";s:7:"kvasių";s:3:"nmg";s:8:"kuasisht";s:3:"nmg";s:8:"kikwasio";s:3:"nmg";s:9:"kvaziycha";s:3:"nmg";s:9:"kindebele";s:2:"nr";s:6:"kinuer";s:3:"nus";s:10:"kinyankole";s:3:"nyn";s:12:"腓尼基文";s:3:"phn";s:11:"k’iche’";s:3:"quc";s:9:"kʼicheʼ";s:3:"quc";s:5:"kiçe";s:3:"quc";s:5:"kiče";s:3:"quc";s:6:"kičé";s:3:"quc";s:13:"k’iche’ra";s:3:"quc";s:5:"kicse";s:3:"quc";s:5:"kiche";s:3:"quc";s:7:"kičių";s:3:"quc";s:5:"kicze";s:3:"quc";s:14:"kʼicheʼ simi";s:3:"quc";s:9:"kiçeisht";s:3:"quc";s:7:"kiçece";s:3:"quc";s:7:"kirombo";s:3:"rof";s:5:"kirwo";s:3:"rwk";s:9:"kisamburu";s:3:"saq";s:7:"kisangu";s:3:"sbp";s:6:"kisena";s:3:"seh";s:15:"koyraboro senni";s:3:"ses";s:14:"kojraboro seni";s:3:"ses";s:11:"koyra senni";s:3:"ses";s:16:"koyraboro sennia";s:3:"ses";s:12:"kojra-szenni";s:3:"ses";s:18:"koíraboró-senní";s:3:"ses";s:15:"koiraboro senni";s:3:"ses";s:19:"koryaboro senniycha";s:3:"ses";s:15:"kisami cha lule";s:3:"smj";s:16:"kisami cha inari";s:3:"smn";s:10:"koltasaami";s:3:"sms";s:11:"koltansaame";s:3:"sms";s:11:"koltta lapp";s:3:"sms";s:16:"kisami cha skolt";s:3:"sms";s:7:"komoreg";s:3:"swb";s:8:"komorski";s:3:"swb";s:11:"komorština";s:3:"swb";s:9:"komorisch";s:3:"swb";s:9:"komorogbe";s:3:"swb";s:7:"komoori";s:3:"swb";s:6:"komori";s:3:"swb";s:7:"komoria";s:3:"swb";s:11:"kommooresch";s:3:"swb";s:9:"komoresch";s:3:"swb";s:7:"komorų";s:3:"swb";s:6:"komoru";s:3:"swb";s:8:"komorisk";s:3:"swb";s:10:"komoryjski";s:3:"swb";s:10:"komorčina";s:3:"swb";s:7:"komorca";s:3:"swb";s:18:"konqo suahilicəsi";s:3:"swc";s:18:"kongoanski swahili";s:3:"swc";s:13:"kongo-suaheli";s:3:"swc";s:24:"kongojska swahilišćina";s:3:"swc";s:14:"kongo suahiili";s:3:"swc";s:16:"kongoko swahilia";s:3:"swc";s:8:"kingwana";s:3:"swc";s:18:"kiswahili na congo";s:3:"swc";s:22:"kongoska suahelšćina";s:3:"swc";s:17:"kongói szuahéli";s:3:"swc";s:13:"kongo swahili";s:3:"swc";s:16:"kongó-svahílí";s:3:"swc";s:13:"kongo-swahili";s:3:"swc";s:15:"kongo suahilių";s:3:"swc";s:13:"kongo svahili";s:3:"swc";s:19:"kongolesisk swahili";s:3:"swc";s:17:"kongijski suahili";s:3:"swc";s:17:"kongo svahiliycha";s:3:"swc";s:6:"kiteso";s:3:"teo";s:7:"klingon";s:3:"tlh";s:7:"klinqon";s:3:"tlh";s:10:"klingonski";s:3:"tlh";s:10:"klingonià";s:3:"tlh";s:13:"klingonština";s:3:"tlh";s:11:"klingonisch";s:3:"tlh";s:8:"klingona";s:3:"tlh";s:8:"klingoni";s:3:"tlh";s:10:"klingonera";s:3:"tlh";s:10:"klingonskt";s:3:"tlh";s:10:"klingonska";s:3:"tlh";s:11:"klingonesch";s:3:"tlh";s:9:"klingonų";s:3:"tlh";s:9:"klingoņu";s:3:"tlh";s:11:"klingoonsch";s:3:"tlh";s:11:"klingoński";s:3:"tlh";s:9:"klingonic";s:3:"tlh";s:12:"klingoniană";s:3:"tlh";s:13:"klingónčina";s:3:"tlh";s:14:"klingonščina";s:3:"tlh";s:8:"kiligoon";s:3:"tlh";s:10:"kiklingoni";s:3:"tlh";s:9:"klingonca";s:3:"tlh";s:9:"kitasawaq";s:3:"twq";s:5:"kivai";s:3:"vai";s:7:"kivunjo";s:3:"vun";s:6:"kisoga";s:3:"xog";s:19:"keine sprachinhalte";s:3:"zxx";s:26:"kän schpraachliche inhalt";s:3:"zxx";s:14:"kein schprooch";s:3:"zxx";s:20:"keng sproochinhalter";s:3:"zxx";s:17:"keen spraakinhold";s:3:"zxx";s:33:"không có nội dung ngôn ngữ";s:3:"zxx";s:20:"kastiliya ispancası";s:5:"es-es";s:20:"kihispania cha ulaya";s:5:"es-es";s:20:"kanada fransızcası";s:5:"fr-ca";s:18:"kanadski francuski";s:5:"fr-ca";s:24:"kanadisches französisch";s:5:"fr-ca";s:24:"kanadiska francojšćina";s:5:"fr-ca";s:25:"kanadatɔwo ƒe fransegbe";s:5:"fr-ca";s:13:"kanada franca";s:5:"fr-ca";s:13:"kanadanranska";s:5:"fr-ca";s:17:"kanadeesk frânsk";s:5:"fr-ca";s:23:"kanadischs französisch";s:5:"fr-ca";s:23:"kanadiska francošćina";s:5:"fr-ca";s:15:"kanadai francia";s:5:"fr-ca";s:17:"kanadísk franska";s:5:"fr-ca";s:22:"kanadescht franséisch";s:5:"fr-ca";s:18:"kanados prancūzų";s:5:"fr-ca";s:16:"kanādas franču";s:5:"fr-ca";s:22:"kanaadsch franzöösch";s:5:"fr-ca";s:15:"kanadisk fransk";s:5:"fr-ca";s:20:"kanadyjski francuski";s:5:"fr-ca";s:22:"kanadska francoščina";s:5:"fr-ca";s:19:"kanadensisk franska";s:5:"fr-ca";s:19:"kanada fransuzchasi";s:5:"fr-ca";s:9:"kuikilani";s:5:"fr-ch";s:9:"kige’ez";s:3:"gez";s:7:"kibasaa";s:3:"bas";s:7:"kibamun";s:3:"bax";s:6:"kibeja";s:3:"bej";s:5:"koose";s:3:"bss";s:5:"koszi";s:3:"bss";s:9:"kado dili";s:3:"cad";s:4:"kado";s:3:"cad";s:5:"kaddo";s:3:"cad";s:6:"kaddó";s:3:"cad";s:4:"kadu";s:3:"cad";s:11:"kadoščina";s:3:"cad";s:10:"karib dili";s:3:"car";s:7:"karibeg";s:3:"car";s:8:"karipski";s:3:"car";s:11:"karibština";s:3:"car";s:9:"karibisch";s:3:"car";s:7:"kariibi";s:3:"car";s:6:"karibi";s:3:"car";s:8:"karibysk";s:3:"car";s:10:"kariibisch";s:3:"car";s:5:"karib";s:3:"car";s:11:"karíbamál";s:3:"car";s:9:"karibesch";s:3:"car";s:7:"karibų";s:3:"car";s:7:"karību";s:3:"car";s:8:"karibisk";s:3:"car";s:18:"kariebsche spraken";s:3:"car";s:9:"karibský";s:3:"car";s:14:"karibski jezik";s:3:"car";s:9:"karibiska";s:3:"car";s:12:"keskhollandi";s:3:"dum";s:13:"keskihollanti";s:3:"dum";s:15:"közép holland";s:3:"dum";s:6:"kijula";s:3:"dyu";s:8:"kiekajuk";s:3:"eka";s:12:"krennsaozneg";s:3:"enm";s:11:"keskinglise";s:3:"enm";s:13:"keskienglanti";s:3:"enm";s:13:"közép angol";s:3:"enm";s:8:"kiewondo";s:3:"ewo";s:5:"kifon";s:3:"fon";s:14:"krenncʼhalleg";s:3:"frm";s:13:"keskprantsuse";s:3:"frm";s:11:"keskiranska";s:3:"frm";s:15:"közép francia";s:3:"frm";s:18:"kifaransa cha kale";s:3:"fro";s:12:"keleti fríz";s:3:"frs";s:22:"kifrisia cha mashariki";s:3:"frs";s:7:"kigbaya";s:3:"gba";s:13:"kiribatština";s:3:"gil";s:8:"kiribati";s:3:"gil";s:12:"kiribatiešu";s:3:"gil";s:10:"kiribatisk";s:3:"gil";s:12:"kiribatčina";s:3:"gil";s:14:"kiribatščina";s:3:"gil";s:13:"kiribati dili";s:3:"gil";s:18:"krennalamaneg uhel";s:3:"gmh";s:14:"keskülemsaksa";s:3:"gmh";s:14:"keskiyläsaksa";s:3:"gmh";s:21:"közép felső német";s:3:"gmh";s:15:"kutchin-sprache";s:3:"gwi";s:7:"kutchin";s:3:"gwi";s:11:"kutchinisch";s:3:"gwi";s:15:"kutchin-sprooch";s:3:"gwi";s:7:"kučinu";s:3:"gwi";s:6:"kachin";s:3:"kac";s:8:"kaçinca";s:3:"kac";s:6:"kačin";s:3:"kac";s:6:"katxin";s:3:"kac";s:12:"kačijština";s:3:"kac";s:14:"kachin-sprache";s:3:"kac";s:8:"katšini";s:3:"kac";s:7:"katšin";s:3:"kac";s:16:"kachin-schpraach";s:3:"kac";s:6:"kacsin";s:3:"kac";s:6:"kasín";s:3:"kac";s:14:"kachin-sprooch";s:3:"kac";s:7:"kačinu";s:3:"kac";s:6:"kaċin";s:3:"kac";s:6:"kaczin";s:3:"kac";s:12:"kačjinčina";s:3:"kac";s:13:"kačinščina";s:3:"kac";s:6:"kaçin";s:3:"kac";s:4:"kaje";s:3:"kaj";s:3:"kai";s:3:"kaj";s:6:"kadži";s:3:"kaj";s:4:"kawi";s:3:"kaw";s:9:"kavi dili";s:3:"kaw";s:4:"kavi";s:3:"kaw";s:5:"kaavi";s:3:"kaw";s:5:"kaví";s:3:"kaw";s:5:"kāvi";s:3:"kaw";s:7:"kanembu";s:3:"kbl";s:8:"kanembou";s:3:"kbl";s:8:"kanembų";s:3:"kbl";s:8:"kaņembu";s:3:"kbl";s:9:"kikanembu";s:3:"kbl";s:4:"koro";s:3:"kfo";s:9:"koro dili";s:3:"kfo";s:4:"koru";s:3:"kfo";s:6:"kikoro";s:3:"kfo";s:5:"khasi";s:3:"kha";s:4:"kasi";s:3:"kha";s:7:"khásí";s:3:"kha";s:13:"khasi-sprache";s:3:"kha";s:8:"khasigbe";s:3:"kha";s:8:"khasisch";s:3:"kha";s:5:"kaszi";s:3:"kha";s:5:"kasí";s:3:"kha";s:13:"khasi-sprooch";s:3:"kha";s:5:"khasu";s:3:"kha";s:11:"khasijčina";s:3:"kha";s:9:"khotanés";s:3:"kho";s:8:"khotaneg";s:3:"kho";s:12:"kotanizijski";s:3:"kho";s:9:"khotanès";s:3:"kho";s:11:"khotanesisk";s:3:"kho";s:9:"khotanese";s:3:"kho";s:8:"kotanés";s:3:"kho";s:7:"khotani";s:3:"kho";s:9:"khotanais";s:3:"kho";s:10:"khotaneesk";s:3:"kho";s:8:"kotanéz";s:3:"kho";s:6:"khotan";s:3:"kho";s:7:"kotaska";s:3:"kho";s:9:"kotanezų";s:3:"kho";s:8:"kotaniż";s:3:"kho";s:9:"khotanees";s:3:"kho";s:9:"khotanês";s:3:"kho";s:12:"kotanščina";s:3:"kho";s:12:"khotanesiska";s:3:"kho";s:8:"kimbundu";s:3:"kmb";s:13:"kimbundu dili";s:3:"kmb";s:13:"kimbundština";s:3:"kmb";s:16:"kimbundu-sprache";s:3:"kmb";s:10:"kimboundou";s:3:"kmb";s:18:"kimbundu-schpraach";s:3:"kmb";s:10:"kimbúndú";s:3:"kmb";s:16:"kimbundu-sprooch";s:3:"kmb";s:9:"kosraeanu";s:3:"kos";s:13:"kosreyan dili";s:3:"kos";s:6:"kosrae";s:3:"kos";s:10:"kosreanski";s:3:"kos";s:8:"kosraeà";s:3:"kos";s:12:"kosrajština";s:3:"kos";s:8:"kosraean";s:3:"kos";s:12:"kosraeanisch";s:3:"kos";s:10:"kosraeagbe";s:3:"kos";s:9:"kosraeano";s:3:"kos";s:7:"kusaien";s:3:"kos";s:11:"kosraeaansk";s:3:"kos";s:6:"kosrei";s:3:"kos";s:5:"kosre";s:3:"kos";s:8:"kosraska";s:3:"kos";s:12:"kosraeanesch";s:3:"kos";s:9:"kosreanų";s:3:"kos";s:12:"kosrājiešu";s:3:"kos";s:8:"kosrejan";s:3:"kos";s:10:"kosraeansk";s:3:"kos";s:12:"kosraeaansch";s:3:"kos";s:10:"kosraeaans";s:3:"kos";s:6:"kusaie";s:3:"kos";s:13:"kosrajščina";s:3:"kos";s:10:"kosreanska";s:3:"kos";s:6:"kpelle";s:3:"kpe";s:11:"kpelle dili";s:3:"kpe";s:5:"kpele";s:3:"kpe";s:14:"kpelle-sprache";s:3:"kpe";s:7:"kpellé";s:3:"kpe";s:16:"kpelle-schpraach";s:3:"kpe";s:14:"kpelle-sprooch";s:3:"kpe";s:6:"kpellu";s:3:"kpe";s:13:"kpelejščina";s:3:"kpe";s:9:"karelianu";s:3:"krl";s:13:"karelyan dili";s:3:"krl";s:8:"karelieg";s:3:"krl";s:10:"karelijski";s:3:"krl";s:11:"karelština";s:3:"krl";s:7:"karelsk";s:3:"krl";s:9:"karelisch";s:3:"krl";s:8:"karelian";s:3:"krl";s:7:"karjala";s:3:"krl";s:8:"karelysk";s:3:"krl";s:7:"karelai";s:3:"krl";s:7:"karelia";s:3:"krl";s:9:"karélska";s:3:"krl";s:9:"karelesch";s:3:"krl";s:7:"karelų";s:3:"krl";s:8:"karēļu";s:3:"krl";s:9:"kareelsch";s:3:"krl";s:8:"karelski";s:3:"krl";s:10:"kareliană";s:3:"krl";s:10:"karelčina";s:3:"krl";s:12:"karelščina";s:3:"krl";s:8:"karelska";s:3:"krl";s:9:"karelyaca";s:3:"krl";s:5:"kumyk";s:3:"kum";s:10:"kumuk dili";s:3:"kum";s:5:"kumik";s:3:"kum";s:6:"kúmik";s:3:"kum";s:10:"kumyčtina";s:3:"kum";s:5:"kymyk";s:3:"kum";s:10:"kumükisch";s:3:"kum";s:9:"kumikagbe";s:3:"kum";s:7:"kumõki";s:3:"kum";s:7:"kumykki";s:3:"kum";s:6:"koumyk";s:3:"kum";s:7:"koemuks";s:3:"kum";s:6:"kumük";s:3:"kum";s:7:"kúmík";s:3:"kum";s:10:"kumükesch";s:3:"kum";s:7:"kumikų";s:3:"kum";s:6:"kumiku";s:3:"kum";s:10:"kumücksch";s:3:"kum";s:7:"kumycki";s:3:"kum";s:5:"kumuk";s:3:"kum";s:11:"kumiščina";s:3:"kum";s:9:"kumykiska";s:3:"kum";s:8:"kumukça";s:3:"kum";s:7:"kutenai";s:3:"kut";s:12:"kutenay dili";s:3:"kut";s:13:"kutenajština";s:3:"kut";s:7:"kutenaj";s:3:"kut";s:15:"kutenai-sprache";s:3:"kut";s:17:"kutenai-schpraach";s:3:"kut";s:9:"kútenaí";s:3:"kut";s:15:"kutenai-sprooch";s:3:"kut";s:8:"kutenaju";s:3:"kut";s:12:"kutenajčina";s:3:"kut";s:14:"kutenajščina";s:3:"kut";s:7:"kimongo";s:3:"lol";s:7:"kilunda";s:3:"lun";s:6:"khotta";s:3:"mag";s:8:"kimagahi";s:3:"mag";s:6:"kimaba";s:3:"mde";s:7:"kimende";s:3:"men";s:15:"krenniwerzhoneg";s:3:"mga";s:8:"keskiiri";s:3:"mga";s:10:"keski-iiri";s:3:"mga";s:11:"közép ír";s:3:"mga";s:7:"kimoore";s:3:"mos";s:16:"klasični nevari";s:3:"nwc";s:17:"klassisk newarisk";s:3:"nwc";s:16:"klassinen newari";s:3:"nwc";s:15:"klassiek newari";s:3:"nwc";s:16:"klasični newari";s:3:"nwc";s:17:"klasszikus newari";s:3:"nwc";s:20:"klassísk nevaríska";s:3:"nwc";s:17:"klasikinė nevari";s:3:"nwc";s:16:"klasiskā nevaru";s:3:"nwc";s:15:"klassisk newari";s:3:"nwc";s:19:"klassiek nepalbhasa";s:3:"nwc";s:21:"klasická nevárčina";s:3:"nwc";s:22:"klasična nevarščina";s:3:"nwc";s:18:"klassisk newariska";s:3:"nwc";s:17:"kinewari cha kale";s:3:"nwc";s:13:"klasik nevari";s:3:"nwc";s:10:"kinyamwezi";s:3:"nym";s:7:"kinyoro";s:3:"nyo";s:7:"kinzema";s:3:"nzi";s:16:"kiajemi cha kale";s:3:"peo";s:9:"kirapanui";s:3:"rap";s:11:"kiraratonga";s:3:"rar";s:9:"kisandawe";s:3:"sad";s:21:"kiaramu cha wasamaria";s:3:"sam";s:17:"kiarabu cha chadi";s:3:"shu";s:9:"kisoninke";s:3:"snk";s:8:"kisukuma";s:3:"suk";s:6:"kisusu";s:3:"sus";s:18:"klasični sirijski";s:3:"syc";s:15:"klassisk syrisk";s:3:"syc";s:21:"klassikaline süüria";s:3:"syc";s:15:"klassiek syrysk";s:3:"syc";s:16:"klasični sirski";s:3:"syc";s:16:"klasszikus szír";s:3:"syc";s:20:"klassísk sýrlenska";s:3:"syc";s:21:"klasikinė siriečių";s:3:"syc";s:19:"klasiskā sīriešu";s:3:"syc";s:16:"klassiek syrisch";s:3:"syc";s:19:"klasická sýrčina";s:3:"syc";s:20:"klasična sirščina";s:3:"syc";s:16:"klassisk syriska";s:3:"syc";s:17:"klasik süryanice";s:3:"syc";s:7:"kitemne";s:3:"tem";s:5:"kiyao";s:3:"yao";s:22:"ký hiệu blissymbols";s:3:"zbl";s:9:"kighomala";s:3:"bbj";s:7:"kibafut";s:3:"bfd";s:3:"kom";s:3:"bkm";s:6:"komgbe";s:3:"bkm";s:5:"komų";s:3:"bkm";s:4:"komu";s:3:"bkm";s:5:"kikom";s:3:"bkm";s:6:"kibulu";s:3:"bum";s:9:"kimedumba";s:3:"byv";s:11:"kajugština";s:3:"cay";s:6:"kajuga";s:3:"cay";s:7:"kajúga";s:3:"cay";s:9:"kaijūgų";s:3:"cay";s:19:"konkánština (goa)";s:3:"gom";s:14:"konkani de goa";s:3:"gom";s:13:"konkani goano";s:3:"gom";s:13:"konkani (goa)";s:3:"gom";s:26:"kinų kalbos hunano tarmė";s:3:"hsn";s:8:"kiibibio";s:3:"ibb";s:6:"katabu";s:3:"kcg";s:7:"kenyang";s:3:"ken";s:8:"kaingang";s:3:"kgp";s:4:"kako";s:3:"kkj";s:7:"kakogbe";s:3:"kkj";s:5:"kakó";s:3:"kkj";s:6:"kikako";s:3:"kkj";s:6:"kimafa";s:3:"maf";s:6:"kisaho";s:3:"ssy";s:7:"kiyemba";s:3:"ybb";s:12:"kunstspraken";s:3:"art";s:18:"kaukaasche spraken";s:3:"cau";s:8:"kavkaski";s:3:"cau";s:16:"keltsche spraken";s:3:"cel";s:13:"keltski jezik";s:3:"cel";s:27:"kreoolsch-engelsche spraken";s:3:"cpe";s:42:"kreolski ili pidžin zasnovan na engleskom";s:3:"cpe";s:31:"kreoolsch-franzöösche spraken";s:3:"cpf";s:43:"kreolski ili pidžin zasnovan na francuskom";s:3:"cpf";s:30:"kreoolsch-portugeesche spraken";s:3:"cpp";s:44:"kreolski ili pidžin baziran na portugalskom";s:3:"cpp";s:18:"kreoolsche spraken";s:3:"crp";s:20:"kreolski ili pidžin";s:3:"crp";s:20:"kuschietsche spraken";s:3:"cus";s:17:"kušitički jezik";s:3:"cus";s:9:"kareensch";s:3:"kar";s:8:"karenski";s:3:"kar";s:15:"khoisan-spraken";s:3:"khi";s:15:"koisanski jezik";s:3:"khi";s:11:"kru-spraken";s:3:"kro";s:3:"kru";s:3:"kro";}i:105;a:913:{s:13:"isi-abkhazian";s:2:"ab";s:16:"ikinyafurikaneri";s:2:"af";s:8:"isibhulu";s:2:"af";s:13:"isi-afrikaans";s:2:"af";s:7:"igikani";s:2:"ak";s:8:"isi-akan";s:2:"ak";s:11:"ikimuhariki";s:2:"am";s:12:"inyamuhariki";s:2:"am";s:11:"isi-amharic";s:2:"am";s:15:"inglés antiguu";s:3:"ang";s:15:"inglés antiguo";s:3:"ang";s:12:"inggris kuno";s:3:"ang";s:14:"inglese antico";s:3:"ang";s:14:"ingliż, antik";s:3:"ang";s:15:"inglês arcaico";s:3:"ang";s:7:"icarabu";s:2:"ar";s:8:"icyarabu";s:2:"ar";s:10:"isi-arabic";s:2:"ar";s:11:"isi-mapuche";s:3:"arn";s:10:"icyasamizi";s:2:"as";s:11:"isiassamese";s:2:"as";s:12:"isi-assamese";s:2:"as";s:10:"isi-aymara";s:2:"ay";s:16:"inyazeribayijani";s:2:"az";s:15:"isi-azerbaijani";s:2:"az";s:11:"isi-bashkir";s:2:"ba";s:13:"ikibelarusiya";s:2:"be";s:14:"isi-belarusian";s:2:"be";s:16:"ikinyabuligariya";s:2:"bg";s:12:"isi-bulgaria";s:2:"bg";s:11:"isi-bulgari";s:2:"bg";s:10:"isi-bihari";s:2:"bh";s:11:"isi-bambara";s:2:"bm";s:10:"ikibengali";s:2:"bn";s:11:"isi-bengali";s:2:"bn";s:11:"isi-tibetan";s:2:"bo";s:12:"inyebiritoni";s:2:"br";s:10:"isi-breton";s:2:"br";s:12:"inyebosiniya";s:2:"bs";s:10:"isi-bosnia";s:2:"bs";s:11:"isi-bosnian";s:2:"bs";s:11:"igikatalani";s:2:"ca";s:11:"isi-calatan";s:2:"ca";s:11:"isi-catalan";s:2:"ca";s:12:"isi-cherokee";s:3:"chr";s:18:"isi-sorani kurdish";s:3:"ckb";s:12:"isi-corsican";s:2:"co";s:7:"igiceke";s:2:"cs";s:9:"isi-czech";s:2:"cs";s:9:"ikigaluwa";s:2:"cy";s:9:"isi-welsh";s:2:"cy";s:10:"ikidaninwa";s:2:"da";s:18:"డేనిష్";s:2:"da";s:10:"isi-danish";s:2:"da";s:7:"ikidage";s:2:"de";s:10:"isi-german";s:2:"de";s:15:"itävallansaksa";s:5:"de-at";s:19:"isi-austrian german";s:5:"de-at";s:21:"isi-swiss high german";s:5:"de-ch";s:11:"izelsorabeg";s:3:"dsb";s:17:"isi-lower sorbian";s:3:"dsb";s:10:"isi-divehi";s:2:"dv";s:12:"isi-dzongkha";s:2:"dz";s:6:"ivicha";s:2:"ee";s:7:"isi-ewe";s:2:"ee";s:29:"italų kalbos emilijos tarmė";s:3:"egl";s:9:"ikigereki";s:2:"el";s:9:"isi-greek";s:2:"el";s:7:"inglés";s:2:"en";s:7:"ingilis";s:2:"en";s:7:"inglise";s:2:"en";s:8:"ingelesa";s:2:"en";s:7:"inglês";s:2:"en";s:7:"ingelsk";s:2:"en";s:7:"inggris";s:2:"en";s:7:"inglese";s:2:"en";s:8:"inggeris";s:2:"en";s:7:"ingliż";s:2:"en";s:8:"ingliffa";s:2:"en";s:11:"ingles simi";s:2:"en";s:10:"icongereza";s:2:"en";s:11:"icyongereza";s:2:"en";s:9:"ingiriisi";s:2:"en";s:9:"inglizcha";s:2:"en";s:8:"isingesi";s:2:"en";s:9:"i-english";s:2:"en";s:18:"inglés de canadá";s:5:"en-ca";s:18:"inglés canadiense";s:5:"en-ca";s:16:"inglês canadês";s:5:"en-ca";s:17:"inglés canadiano";s:5:"en-ca";s:14:"inggris kanada";s:5:"en-ca";s:16:"inglese canadese";s:5:"en-ca";s:15:"inggeris kanada";s:5:"en-ca";s:17:"inglês canadiano";s:5:"en-ca";s:17:"inglês canadense";s:5:"en-ca";s:18:"i-canadian english";s:5:"en-ca";s:24:"inglés de gran bretaña";s:5:"en-gb";s:18:"inglés británico";s:5:"en-gb";s:15:"inglise (briti)";s:5:"en-gb";s:16:"inglês britanic";s:5:"en-gb";s:15:"inggris inggris";s:5:"en-gb";s:18:"inglese britannico";s:5:"en-gb";s:16:"inggeris british";s:5:"en-gb";s:18:"ingliż brittaniku";s:5:"en-gb";s:18:"inglês britânico";s:5:"en-gb";s:33:"ingiriisi (boqortooyada midowday)";s:5:"en-gb";s:17:"i-british english";s:5:"en-gb";s:13:"icyesiperanto";s:2:"eo";s:9:"isberento";s:2:"eo";s:13:"isi-esperanto";s:2:"eo";s:5:"ispan";s:2:"es";s:11:"ispaniyanci";s:2:"es";s:7:"ispanų";s:2:"es";s:12:"icesipanyolo";s:2:"es";s:13:"icyesipanyolo";s:2:"es";s:9:"isbaanish";s:2:"es";s:8:"ispancha";s:2:"es";s:11:"isi-spanish";s:2:"es";s:11:"istoniyanci";s:2:"et";s:7:"igauņu";s:2:"et";s:12:"icyesitoniya";s:2:"et";s:11:"istooniyaan";s:2:"et";s:12:"isi-estonian";s:2:"et";s:11:"isi-estonia";s:2:"et";s:9:"ikibasiki";s:2:"eu";s:10:"isi-basque";s:2:"eu";s:36:"ispanų kalbos ekstremadūros tarmė";s:3:"ext";s:9:"igiperisi";s:2:"fa";s:10:"inyeperisi";s:2:"fa";s:10:"isi-persia";s:2:"fa";s:11:"isi-persian";s:2:"fa";s:12:"igifinilande";s:2:"fi";s:11:"isi-finnish";s:2:"fi";s:10:"isi-fijian";s:2:"fj";s:12:"inyefaroyizi";s:2:"fo";s:11:"isi-faroese";s:2:"fo";s:10:"igifaransa";s:2:"fr";s:10:"isi-french";s:2:"fr";s:13:"igifiriziyani";s:2:"fy";s:11:"isi-frisian";s:2:"fy";s:19:"isi-western frisian";s:2:"fy";s:4:"iers";s:2:"ga";s:9:"irlandés";s:2:"ga";s:6:"irland";s:2:"ga";s:10:"iwerzhoneg";s:2:"ga";s:5:"irski";s:2:"ga";s:9:"irlandès";s:2:"ga";s:8:"irština";s:2:"ga";s:4:"irsk";s:2:"ga";s:6:"irisch";s:2:"ga";s:9:"iršćina";s:2:"ga";s:11:"irelanɖgbe";s:2:"ga";s:5:"irish";s:2:"ga";s:7:"irlanda";s:2:"ga";s:4:"iiri";s:2:"ga";s:9:"irlandais";s:2:"ga";s:5:"iersk";s:2:"ga";s:7:"iirisch";s:2:"ga";s:9:"irlandese";s:2:"ga";s:8:"irlandia";s:2:"ga";s:13:"irlandimiutut";s:2:"ga";s:7:"ieresch";s:2:"ga";s:6:"iresch";s:2:"ga";s:7:"ireland";s:2:"ga";s:9:"irlandiż";s:2:"ga";s:6:"iersch";s:2:"ga";s:9:"irlandzki";s:2:"ga";s:9:"irlandês";s:2:"ga";s:13:"irlandes simi";s:2:"ga";s:10:"irlandeză";s:2:"ga";s:10:"ikirilandi";s:2:"ga";s:11:"iirragiella";s:2:"ga";s:9:"irščina";s:2:"ga";s:11:"irlandezçe";s:2:"ga";s:6:"iriska";s:2:"ga";s:9:"irlandcha";s:2:"ga";s:9:"isi-irish";s:2:"ga";s:10:"isi-gagauz";s:3:"gag";s:25:"ikigaluwa cy’igisweduwa";s:2:"gd";s:12:"iskot giilik";s:2:"gd";s:17:"i-scottish gaelic";s:2:"gd";s:11:"ikigalisiya";s:2:"gl";s:12:"isi-galician";s:2:"gl";s:11:"isi-galicia";s:2:"gl";s:12:"inyaguwarani";s:2:"gn";s:11:"isi-guarani";s:2:"gn";s:16:"isi-swiss german";s:3:"gsw";s:12:"inyegujarati";s:2:"gu";s:12:"isi-gujarati";s:2:"gu";s:8:"isi-manx";s:2:"gv";s:9:"igihawusa";s:2:"ha";s:9:"isi-hausa";s:2:"ha";s:12:"isi-hawaiian";s:3:"haw";s:5:"ivrit";s:2:"he";s:6:"ibrani";s:2:"he";s:6:"ivrits";s:2:"he";s:11:"igiheburayo";s:2:"he";s:7:"ibroniy";s:2:"he";s:10:"isi-hebrew";s:2:"he";s:8:"inidikan";s:2:"hi";s:8:"igihindi";s:2:"hi";s:8:"indishte";s:2:"hi";s:9:"isi-hindi";s:2:"hi";s:7:"ilonggo";s:3:"hil";s:13:"igikorowasiya";s:2:"hr";s:11:"isi-croatia";s:2:"hr";s:12:"isi-croatian";s:2:"hr";s:17:"isi-upper sorbian";s:3:"hsb";s:11:"isi-haitian";s:2:"ht";s:15:"ikinyahongiriya";s:2:"hu";s:12:"igihongiriya";s:2:"hu";s:13:"isi-hungarian";s:2:"hu";s:14:"ikinyarumeniya";s:2:"hy";s:11:"isiarmenian";s:2:"hy";s:11:"isi-armenia";s:2:"hy";s:11:"interlingua";s:2:"ia";s:16:"interlingua dili";s:2:"ia";s:11:"interlingva";s:2:"ia";s:12:"interlingvao";s:2:"ia";s:12:"interlíngua";s:2:"ia";s:12:"interlinguwa";s:2:"ia";s:19:"izilimi ezihlangene";s:2:"ia";s:10:"indonesies";s:2:"id";s:15:"indonihyia kasa";s:2:"id";s:9:"indonesiu";s:2:"id";s:7:"indonez";s:2:"id";s:9:"indonezeg";s:2:"id";s:12:"indonezijski";s:2:"id";s:8:"indonesi";s:2:"id";s:13:"indonéština";s:2:"id";s:9:"indoneseg";s:2:"id";s:10:"indonesisk";s:2:"id";s:11:"indonesisch";s:2:"id";s:13:"indonešćina";s:2:"id";s:12:"indonesiagbe";s:2:"id";s:10:"indonesian";s:2:"id";s:9:"indonezia";s:2:"id";s:9:"indonesio";s:2:"id";s:10:"indoneesia";s:2:"id";s:11:"indonesiera";s:2:"id";s:9:"indonesia";s:2:"id";s:11:"indonesiskt";s:2:"id";s:11:"indonésien";s:2:"id";s:11:"indinéisis";s:2:"id";s:11:"innd-innsis";s:2:"id";s:8:"indonéz";s:2:"id";s:11:"indonesiano";s:2:"id";s:9:"indonisia";s:2:"id";s:13:"indónesíska";s:2:"id";s:15:"indonesiamiutut";s:2:"id";s:12:"indoneesesch";s:2:"id";s:11:"indonesesch";s:2:"id";s:14:"indoneziečių";s:2:"id";s:13:"indonēziešu";s:2:"id";s:13:"indonezianina";s:2:"id";s:11:"indoneżjan";s:2:"id";s:10:"indoneesch";s:2:"id";s:12:"indonezyjski";s:2:"id";s:10:"indonésio";s:2:"id";s:14:"indonesio simi";s:2:"id";s:8:"indonais";s:2:"id";s:13:"ikinyendoziya";s:2:"id";s:12:"indoneziană";s:2:"id";s:15:"indonesiagiella";s:2:"id";s:14:"indonézština";s:2:"id";s:16:"indonezijščina";s:2:"id";s:13:"indunuusiyaan";s:2:"id";s:11:"indonezisht";s:2:"id";s:11:"indonesiska";s:2:"id";s:11:"indoneyzcha";s:2:"id";s:14:"isi-indonesian";s:2:"id";s:11:"interlingue";s:2:"ie";s:16:"interlingue dili";s:2:"ie";s:11:"interlingve";s:2:"ie";s:11:"intagulanci";s:2:"ie";s:10:"interligua";s:2:"ie";s:10:"interkalba";s:2:"ie";s:14:"isiinterlingue";s:2:"ie";s:9:"iru Èdè";s:2:"ie";s:7:"izilimu";s:2:"ie";s:4:"igbo";s:2:"ig";s:4:"iqbo";s:2:"ig";s:8:"igibokan";s:2:"ig";s:10:"igboština";s:2:"ig";s:7:"igbogbe";s:2:"ig";s:3:"ibo";s:2:"ig";s:7:"igboera";s:2:"ig";s:8:"igiboore";s:2:"ig";s:11:"inyamuranci";s:2:"ig";s:5:"igbó";s:2:"ig";s:12:"igbo-sprooch";s:2:"ig";s:5:"igbų";s:2:"ig";s:9:"igbo simi";s:2:"ig";s:7:"ikigubo";s:2:"ig";s:11:"igboščina";s:2:"ig";s:4:"igbe";s:2:"ig";s:7:"igbocha";s:2:"ig";s:8:"isi-igbo";s:2:"ig";s:14:"isi-sichuan yi";s:2:"ii";s:8:"iñupiak";s:2:"ik";s:7:"inupiaq";s:2:"ik";s:12:"inupiaq dili";s:2:"ik";s:7:"inupiak";s:2:"ik";s:13:"inupiakština";s:2:"ik";s:9:"inwpiaceg";s:2:"ik";s:9:"injupiaki";s:2:"ik";s:13:"iniúipiaicis";s:2:"ik";s:8:"inupiaku";s:2:"ik";s:7:"inupjak";s:2:"ik";s:9:"inupiaque";s:2:"ik";s:13:"inupiaščina";s:2:"ik";s:9:"inuktitut";s:2:"iu";s:7:"ilokano";s:3:"ilo";s:5:"iloko";s:3:"ilo";s:10:"iloko dili";s:3:"ilo";s:6:"ilocà";s:3:"ilo";s:13:"ilokánština";s:3:"ilo";s:8:"ilocaneg";s:3:"ilo";s:15:"ilokano-sprache";s:3:"ilo";s:8:"ilikogbe";s:3:"ilo";s:7:"ilocano";s:3:"ilo";s:6:"ilokó";s:3:"ilo";s:15:"ilokano-sprooch";s:3:"ilo";s:5:"iloku";s:3:"ilo";s:12:"ilokánčina";s:3:"ilo";s:13:"ilokanščina";s:3:"ilo";s:6:"ingush";s:3:"inh";s:11:"inquş dili";s:3:"inh";s:9:"ingoucheg";s:3:"inh";s:11:"ingušetski";s:3:"inh";s:7:"ingúix";s:3:"inh";s:10:"inguština";s:3:"inh";s:8:"ingwsieg";s:3:"inh";s:11:"inguschisch";s:3:"inh";s:9:"ingusigbe";s:3:"inh";s:7:"inguši";s:3:"inh";s:8:"inguuši";s:3:"inh";s:8:"ingouche";s:3:"inh";s:7:"ingoesj";s:3:"inh";s:8:"iongúis";s:3:"inh";s:5:"ingus";s:3:"inh";s:10:"ingushetia";s:3:"inh";s:6:"ingús";s:3:"inh";s:11:"inguschesch";s:3:"inh";s:8:"ingušų";s:3:"inh";s:7:"ingušu";s:3:"inh";s:9:"ingusjisk";s:3:"inh";s:13:"ingusch’sch";s:3:"inh";s:13:"ingoesjetisch";s:3:"inh";s:7:"inguski";s:3:"inh";s:7:"inguche";s:3:"inh";s:8:"ingușă";s:3:"inh";s:11:"inguščina";s:3:"inh";s:10:"ingusjiska";s:3:"inh";s:3:"ido";s:2:"io";s:8:"ido dili";s:2:"io";s:11:"ido-sprache";s:2:"io";s:4:"idó";s:2:"io";s:11:"ido-sprooch";s:2:"io";s:9:"islandés";s:2:"is";s:6:"island";s:2:"is";s:8:"islandeg";s:2:"is";s:9:"islandski";s:2:"is";s:9:"islandès";s:2:"is";s:12:"islandština";s:2:"is";s:8:"islandsk";s:2:"is";s:11:"isländisch";s:2:"is";s:13:"islandšćina";s:2:"is";s:11:"icelanɖgbe";s:2:"is";s:9:"icelandic";s:2:"is";s:7:"islanda";s:2:"is";s:7:"islandi";s:2:"is";s:10:"islandiera";s:2:"is";s:7:"islanti";s:2:"is";s:9:"islandais";s:2:"is";s:9:"islandês";s:2:"is";s:12:"innis tìlis";s:2:"is";s:12:"iisländisch";s:2:"is";s:7:"izlandi";s:2:"is";s:9:"islandese";s:2:"is";s:8:"islandia";s:2:"is";s:13:"islandimiusut";s:2:"is";s:12:"ißländesch";s:2:"is";s:11:"islännesch";s:2:"is";s:8:"islandų";s:2:"is";s:7:"iceland";s:2:"is";s:10:"iżlandiż";s:2:"is";s:10:"ieslandsch";s:2:"is";s:8:"ijslands";s:2:"is";s:9:"islandzki";s:2:"is";s:13:"islandes simi";s:2:"is";s:10:"islandeză";s:2:"is";s:10:"igisilande";s:2:"is";s:15:"islánddagiella";s:2:"is";s:11:"islandčina";s:2:"is";s:13:"islandščina";s:2:"is";s:10:"islandisht";s:2:"is";s:10:"isländska";s:2:"is";s:9:"islandcha";s:2:"is";s:13:"isi-icelandic";s:2:"is";s:8:"italiano";s:2:"it";s:9:"italiaans";s:2:"it";s:10:"italy kasa";s:2:"it";s:8:"italianu";s:2:"it";s:7:"italyan";s:2:"it";s:8:"italikan";s:2:"it";s:9:"italianeg";s:2:"it";s:11:"italijanski";s:2:"it";s:7:"italià";s:2:"it";s:10:"italština";s:2:"it";s:9:"italiensk";s:2:"it";s:11:"italienisch";s:2:"it";s:11:"italšćina";s:2:"it";s:9:"italiagbe";s:2:"it";s:7:"italian";s:2:"it";s:5:"itala";s:2:"it";s:7:"itaalia";s:2:"it";s:8:"italiera";s:2:"it";s:10:"italiyeere";s:2:"it";s:6:"italia";s:2:"it";s:7:"italskt";s:2:"it";s:7:"italien";s:2:"it";s:10:"italiaansk";s:2:"it";s:9:"iodáilis";s:2:"it";s:12:"italiänisch";s:2:"it";s:10:"italiyanci";s:2:"it";s:5:"italo";s:2:"it";s:12:"italiamiutut";s:2:"it";s:6:"italek";s:2:"it";s:11:"italienesch";s:2:"it";s:6:"italų";s:2:"it";s:7:"itāļu";s:2:"it";s:10:"italianina";s:2:"it";s:5:"itali";s:2:"it";s:11:"italieensch";s:2:"it";s:13:"italiano simi";s:2:"it";s:11:"igitaliyani";s:2:"it";s:9:"italiană";s:2:"it";s:13:"itáliagiella";s:2:"it";s:15:"italijanščina";s:2:"it";s:8:"italisht";s:2:"it";s:10:"italienska";s:2:"it";s:10:"italyancha";s:2:"it";s:11:"isi-italian";s:2:"it";s:10:"innuïties";s:2:"iu";s:15:"inuktitutština";s:2:"iu";s:9:"inwctitwt";s:2:"iu";s:12:"inuitšćina";s:2:"iu";s:6:"inuita";s:2:"iu";s:10:"inuktituti";s:2:"iu";s:8:"inuitera";s:2:"iu";s:9:"ionúitis";s:2:"iu";s:5:"inuit";s:2:"iu";s:8:"inukitut";s:2:"iu";s:11:"inúktitút";s:2:"iu";s:7:"inuītu";s:2:"iu";s:14:"inuktitut simi";s:2:"iu";s:16:"inuktitutščina";s:2:"iu";s:2:"iu";s:2:"iu";s:12:"inuktitutcha";s:2:"iu";s:13:"isi-inuktitut";s:2:"iu";s:9:"ikiyapani";s:2:"ja";s:12:"isi-japanese";s:2:"ja";s:25:"inglés criollu xamaicanu";s:3:"jam";s:11:"iútlainnis";s:3:"jut";s:7:"iáivis";s:2:"jv";s:10:"ikinyejava";s:2:"jv";s:8:"inyejava";s:2:"jv";s:12:"isi-javanese";s:2:"jv";s:14:"inyejeworujiya";s:2:"ka";s:11:"isi-georgia";s:2:"ka";s:12:"isi-georgian";s:2:"ka";s:10:"isi-kabyle";s:3:"kab";s:9:"isi-kongo";s:2:"kg";s:10:"isi-kikuyu";s:2:"ki";s:10:"isi-kazakh";s:2:"kk";s:15:"isi-kalaallisut";s:2:"kl";s:12:"igikambodiya";s:2:"km";s:11:"isicambodia";s:2:"km";s:9:"isi-khmer";s:2:"km";s:9:"igikanada";s:2:"kn";s:11:"isi-kannada";s:2:"kn";s:12:"ikinyakoreya";s:2:"ko";s:9:"igikoreya";s:2:"ko";s:10:"isi-korean";s:2:"ko";s:16:"isi-komi-permyak";s:3:"koi";s:12:"isi-kashmiri";s:2:"ks";s:13:"inyekuridishi";s:2:"ku";s:11:"isi-kurdish";s:2:"ku";s:11:"isi-cornish";s:2:"kw";s:10:"inkerigizi";s:2:"ky";s:10:"isi-kyrgyz";s:2:"ky";s:9:"ikilatini";s:2:"la";s:9:"isi-latin";s:2:"la";s:13:"iddew-sbaeneg";s:3:"lad";s:17:"isi-luxembourgish";s:2:"lb";s:9:"isi-ganda";s:2:"lg";s:8:"ilingala";s:2:"ln";s:7:"iilwimi";s:2:"ln";s:11:"isi-lingala";s:2:"ln";s:13:"ikilawotiyani";s:2:"lo";s:11:"isiloathian";s:2:"lo";s:5:"i-lao";s:2:"lo";s:8:"isi-lozi";s:3:"loz";s:13:"ikilituwaniya";s:2:"lt";s:14:"isi-lithuanian";s:2:"lt";s:16:"ikinyaletoviyani";s:2:"lv";s:11:"isi-latvian";s:2:"lv";s:12:"isi-malagasy";s:2:"mg";s:9:"isi-maori";s:2:"mi";s:15:"ikimasedoniyani";s:2:"mk";s:14:"isi-macedonian";s:2:"mk";s:13:"ikimalayalami";s:2:"ml";s:13:"isi-malayalam";s:2:"ml";s:10:"ikimongoli";s:2:"mn";s:12:"isimongolian";s:2:"mn";s:13:"isi-mongolian";s:2:"mn";s:9:"ikimarati";s:2:"mr";s:11:"isi-marathi";s:2:"mr";s:14:"ikinyamaleziya";s:2:"ms";s:9:"ikimalayi";s:2:"ms";s:9:"isi-malay";s:2:"ms";s:11:"ikimaliteze";s:2:"mt";s:11:"isi-maltese";s:2:"mt";s:16:"ikinyabirimaniya";s:2:"my";s:11:"isi-burmese";s:2:"my";s:15:"ioruais bokmål";s:2:"nb";s:21:"isi-norwegian bokmål";s:2:"nb";s:13:"isel almaeneg";s:3:"nds";s:9:"ikinepali";s:2:"ne";s:10:"isi-nepali";s:2:"ne";s:9:"iseldireg";s:2:"nl";s:10:"iseldiryek";s:2:"nl";s:10:"igiholandi";s:2:"nl";s:12:"ikinerilande";s:2:"nl";s:9:"డచ్";s:2:"nl";s:9:"isi-dutch";s:2:"nl";s:26:"inyenoruveji (nyonorusiki)";s:2:"nn";s:22:"isi-norwegia (nynorsk)";s:2:"nn";s:19:"i-norwegian nynorsk";s:2:"nn";s:7:"ioruais";s:2:"no";s:11:"ikinoruveji";s:2:"no";s:13:"isi-norwegian";s:2:"no";s:9:"isinoweyi";s:2:"no";s:18:"isi-northern sotho";s:3:"nso";s:10:"isi-nyanja";s:2:"ny";s:12:"inyogusitani";s:2:"oc";s:11:"iso-occitan";s:2:"oc";s:12:"isi-osithani";s:2:"oc";s:9:"isi-oromo";s:2:"om";s:8:"inyoriya";s:2:"or";s:9:"isi-oriya";s:2:"or";s:11:"isi-ossetic";s:2:"os";s:10:"igipunjabi";s:2:"pa";s:11:"isi-punjabi";s:2:"pa";s:13:"ikinyapolonye";s:2:"pl";s:9:"igipolone";s:2:"pl";s:10:"isi-polish";s:2:"pl";s:29:"italų kalbos pjemonto tarmė";s:3:"pms";s:9:"impashito";s:2:"ps";s:10:"isi-pashto";s:2:"ps";s:13:"igiporutugari";s:2:"pt";s:13:"igiporutugali";s:2:"pt";s:14:"isi-portuguese";s:2:"pt";s:24:"inyeporutigali (brezili)";s:5:"pt-br";s:25:"isi-brazillian portuguese";s:5:"pt-br";s:11:"isi-quechua";s:2:"qu";s:30:"italų kalbos romanijos tarmė";s:3:"rgn";s:11:"isi-romansh";s:2:"rm";s:8:"ikirundi";s:2:"rn";s:9:"isi-rundi";s:2:"rn";s:14:"ikinyarumaniya";s:2:"ro";s:12:"isi-romanian";s:2:"ro";s:8:"irisikan";s:2:"ru";s:9:"ikirusiya";s:2:"ru";s:11:"isi-russian";s:2:"ru";s:12:"ikinyarwanda";s:2:"rw";s:15:"isi-kinyarwanda";s:2:"rw";s:12:"igisansikiri";s:2:"sa";s:9:"isanskrit";s:2:"sa";s:12:"isi-sanskrit";s:2:"sa";s:5:"iacut";s:3:"sah";s:7:"iacwteg";s:3:"sah";s:7:"iakoute";s:3:"sah";s:6:"iacuto";s:3:"sah";s:8:"igisindi";s:2:"sd";s:9:"isisindhi";s:2:"sd";s:10:"isi-sindhi";s:2:"sd";s:19:"iparraldeko samiera";s:2:"se";s:17:"isi-northern sami";s:2:"se";s:9:"isi-sango";s:2:"sg";s:26:"inyeseribiya na korowasiya";s:2:"sh";s:13:"isi-tachelhit";s:3:"shi";s:13:"inyesimpaleze";s:2:"si";s:13:"isi-sinhalese";s:2:"si";s:9:"i-sinhala";s:2:"si";s:11:"igisilovaki";s:2:"sk";s:9:"isloofaak";s:2:"sk";s:10:"isi-slovak";s:2:"sk";s:16:"ikinyasiloveniya";s:2:"sl";s:13:"islofeeniyaan";s:2:"sl";s:13:"isi-slovenian";s:2:"sl";s:11:"is-silesieg";s:3:"sli";s:10:"isi-samoan";s:2:"sm";s:17:"isi-southern sami";s:3:"sma";s:9:"isi-shona";s:2:"sn";s:9:"igisomali";s:2:"so";s:11:"isisomaliya";s:2:"so";s:10:"isi-somali";s:2:"so";s:12:"icyalubaniya";s:2:"sq";s:11:"isi-albania";s:2:"sq";s:9:"igiseribe";s:2:"sr";s:10:"isi-serbia";s:2:"sr";s:11:"isi-serbian";s:2:"sr";s:17:"idioma surinamês";s:3:"srn";s:8:"isiswati";s:2:"ss";s:10:"inyesesoto";s:2:"st";s:8:"isisuthu";s:2:"st";s:10:"inyesudani";s:2:"su";s:12:"isi-sudanese";s:2:"su";s:13:"isi-sundanese";s:2:"su";s:6:"isveç";s:2:"sv";s:11:"igisuweduwa";s:2:"sv";s:11:"isi-swedish";s:2:"sv";s:10:"igiswahili";s:2:"sw";s:11:"isi-swahili";s:2:"sw";s:9:"igitamili";s:2:"ta";s:9:"isi-tamil";s:2:"ta";s:9:"igitelugu";s:2:"te";s:10:"isi-telegu";s:2:"te";s:10:"isi-telugu";s:2:"te";s:9:"isi-tetum";s:3:"tet";s:9:"isi-tajik";s:2:"tg";s:15:"ikinyatayilandi";s:2:"th";s:7:"igitayi";s:2:"th";s:8:"isi-thai";s:2:"th";s:13:"inyatigirinya";s:2:"ti";s:12:"isi-tigrinya";s:2:"ti";s:14:"inyeturukimeni";s:2:"tk";s:11:"isi-turkmen";s:2:"tk";s:10:"isi-tswana";s:2:"tn";s:10:"isi-tongan";s:2:"to";s:13:"isi-tok pisin";s:3:"tpi";s:11:"igiturukiya";s:2:"tr";s:11:"isi-turkish";s:2:"tr";s:10:"isi-tsonga";s:2:"ts";s:9:"isi-tatar";s:2:"tt";s:11:"isi-tumbuka";s:3:"tum";s:8:"inyetuwi";s:2:"tw";s:12:"isi-tahitian";s:2:"ty";s:27:"isi-central atlas tamazight";s:3:"tzm";s:9:"ikiwiguri";s:2:"ug";s:10:"isi uighur";s:2:"ug";s:10:"isi-uighur";s:2:"ug";s:14:"ikinyayukereni";s:2:"uk";s:12:"isi-ukranian";s:2:"uk";s:13:"isi-ukrainian";s:2:"uk";s:10:"inyeyurudu";s:2:"ur";s:8:"isi-urdu";s:2:"ur";s:12:"inyeyuzubeki";s:2:"uz";s:9:"isi-uzbek";s:2:"uz";s:9:"isi-venda";s:2:"ve";s:16:"ikinyaviyetinamu";s:2:"vi";s:14:"isi-vietnamese";s:2:"vi";s:9:"isi-wolof";s:2:"wo";s:8:"isixhosa";s:2:"xh";s:10:"isi-khoosa";s:2:"xh";s:13:"isixhosa simi";s:2:"xh";s:10:"inyehawusa";s:2:"xh";s:14:"iddew-almaeneg";s:2:"yi";s:8:"iùdhais";s:2:"yi";s:8:"iídiche";s:2:"yi";s:5:"idiș";s:2:"yi";s:11:"inyeyidishi";s:2:"yi";s:10:"isi-yidish";s:2:"yi";s:6:"ioruba";s:2:"yo";s:6:"iorwba";s:2:"yo";s:9:"iarúibis";s:2:"yo";s:10:"ёруба";s:2:"yo";s:9:"ikiyoruba";s:2:"yo";s:10:"isi-yoruba";s:2:"yo";s:9:"igishinwa";s:2:"zh";s:11:"isi-chinese";s:2:"zh";s:22:"isi-sipmlified chinese";s:7:"zh-hans";s:23:"isi-traditional chinese";s:7:"zh-hant";s:7:"isizulu";s:2:"zu";s:12:"isizulu simi";s:2:"zu";s:7:"ikizulu";s:2:"zu";s:8:"inyezulu";s:2:"zu";s:9:"isi-acoli";s:3:"ach";s:9:"isi-aghem";s:3:"agq";s:33:"isi-arabic esijwayelekile samanje";s:6:"ar-001";s:9:"isi-bemba";s:3:"bem";s:8:"isi-bena";s:3:"bez";s:8:"isi-bodo";s:3:"brx";s:9:"isi-chiga";s:3:"cgg";s:9:"isi-taita";s:3:"dav";s:9:"isi-zarma";s:3:"dje";s:9:"isi-duala";s:3:"dua";s:14:"isi-jola-fonyl";s:3:"dyo";s:8:"isi-embu";s:3:"ebu";s:11:"ibibioefika";s:3:"efi";s:6:"ibibio";s:3:"ibb";s:8:"isi-efik";s:3:"efi";s:14:"ikinyafilipine";s:3:"fil";s:10:"isi-taglog";s:3:"fil";s:12:"isi-filipino";s:3:"fil";s:6:"isi-ga";s:3:"gaa";s:9:"isi-gusli";s:3:"guz";s:10:"isi-ngomba";s:3:"jgo";s:11:"isi-machame";s:3:"jmc";s:9:"isi-kamba";s:3:"kam";s:11:"isi-makonde";s:3:"kde";s:16:"isi-kabuverdianu";s:3:"kea";s:16:"isi-koyra chiini";s:3:"khq";s:12:"isi-kalenjin";s:3:"kln";s:11:"isi-konkani";s:3:"kok";s:12:"isi-shambala";s:3:"ksb";s:9:"isi-bafia";s:3:"ksf";s:9:"isi-langi";s:3:"lag";s:10:"isi-lakota";s:3:"lkt";s:16:"isi-luba-katanga";s:2:"lu";s:14:"isi-luba-lulua";s:3:"lua";s:7:"isi-luo";s:3:"luo";s:9:"isi-luyia";s:3:"luy";s:9:"isi-masai";s:3:"mas";s:8:"isi-meru";s:3:"mer";s:12:"isi-morisyen";s:3:"mfe";s:18:"isi-makhuwa-meetto";s:3:"mgh";s:11:"isi-meta’";s:3:"mgo";s:10:"isi-mohawk";s:3:"moh";s:11:"isi-mundang";s:3:"mua";s:13:"iomadh cànan";s:3:"mul";s:18:"idiomas múltiplos";s:3:"mul";s:8:"isi-nama";s:3:"naq";s:22:"iparraldeko ndebeleera";s:2:"nd";s:17:"isi-north ndebele";s:2:"nd";s:11:"isi-flemish";s:5:"nl-be";s:10:"isi-kwasio";s:3:"nmg";s:10:"isi-n’ko";s:3:"nqo";s:8:"isi-nuer";s:3:"nus";s:12:"isi-nyankole";s:3:"nyn";s:13:"isi-kʼicheʼ";s:3:"quc";s:13:"isi-moldavian";s:5:"ro-md";s:9:"isi-rombo";s:3:"rof";s:7:"isi-rwa";s:3:"rwk";s:11:"isi-samburu";s:3:"saq";s:9:"isi-sangu";s:3:"sbp";s:8:"isi-sena";s:3:"seh";s:19:"isi-koyraboro senni";s:3:"ses";s:13:"isi-lule sami";s:3:"smj";s:10:"inari sami";s:3:"smn";s:14:"inari-lappisch";s:3:"smn";s:17:"inari-samišćina";s:3:"smn";s:11:"inari saami";s:3:"smn";s:13:"inari samiera";s:3:"smn";s:11:"inarinsaame";s:3:"smn";s:13:"inari-samisch";s:3:"smn";s:9:"inar sami";s:3:"smn";s:14:"inari-lappesch";s:3:"smn";s:13:"inario samių";s:3:"smn";s:11:"inari sāmu";s:3:"smn";s:13:"inari-lappsch";s:3:"smn";s:20:"inarska samijščina";s:3:"smn";s:14:"inari semiycha";s:3:"smn";s:14:"isi-inari sami";s:3:"smn";s:14:"isi-skolt sami";s:3:"sms";s:17:"isi-congo swahili";s:3:"swc";s:8:"isi-teso";s:3:"teo";s:13:"inyekilingoni";s:3:"tlh";s:11:"isi-klingon";s:3:"tlh";s:11:"isi-tasawaq";s:3:"twq";s:17:"idioma desconegut";s:3:"und";s:14:"iaith anhysbys";s:3:"und";s:13:"indeterminade";s:3:"und";s:16:"ismeretlen nyelv";s:3:"und";s:19:"idioma desconhecido";s:3:"und";s:7:"isi-vai";s:3:"vai";s:9:"isi-vunjo";s:3:"vun";s:8:"isi-soga";s:3:"xog";s:31:"isi-standard moroccan tamazight";s:3:"zgh";s:23:"intet sprogligt indhold";s:3:"zxx";s:26:"inget språkligt innehåll";s:3:"zxx";s:19:"inglés australiano";s:5:"en-au";s:18:"inglês australian";s:5:"en-au";s:17:"inggris australia";s:5:"en-au";s:19:"inglese australiano";s:5:"en-au";s:18:"inggeris australia";s:5:"en-au";s:18:"ingliż awstraljan";s:5:"en-au";s:19:"inglês australiano";s:5:"en-au";s:23:"isi-austrillian english";s:5:"en-au";s:17:"inglés americanu";s:5:"en-us";s:22:"inglés estadounidense";s:5:"en-us";s:13:"inglise (usa)";s:5:"en-us";s:14:"ingelesa (aeb)";s:5:"en-us";s:14:"ingles merecan";s:5:"en-us";s:26:"inglés dos estados unidos";s:5:"en-us";s:15:"inggris amerika";s:5:"en-us";s:17:"inglese americano";s:5:"en-us";s:11:"inggeris as";s:5:"en-us";s:16:"ingliż amerikan";s:5:"en-us";s:17:"inglês americano";s:5:"en-us";s:20:"ingiriisi (maraykan)";s:5:"en-us";s:18:"i-american english";s:5:"en-us";s:28:"isbaanishka laatiin ameerika";s:6:"es-419";s:26:"isi-latin american spanish";s:6:"es-419";s:25:"iberiatɔwo ƒe spaniagbe";s:5:"es-es";s:21:"ibeerischs schpanisch";s:5:"es-es";s:17:"ibeersch spaansch";s:5:"es-es";s:14:"iberisk spansk";s:5:"es-es";s:17:"iberijskišpanski";s:5:"es-es";s:20:"iberska španščina";s:5:"es-es";s:18:"isbaanish (isbayn)";s:5:"es-es";s:19:"isi-canadian french";s:5:"fr-ca";s:16:"isi-swiss french";s:5:"fr-ch";s:27:"iberiatɔwo ƒe portugalgbe";s:5:"pt-pt";s:23:"iberischs portugiisisch";s:5:"pt-pt";s:20:"ibeersch portugeesch";s:5:"pt-pt";s:30:"inyeporutigali (igiporutigali)";s:5:"pt-pt";s:21:"iberijski portugalski";s:5:"pt-pt";s:23:"iberska portugalščina";s:5:"pt-pt";s:25:"isi-portuguese (portugal)";s:5:"pt-pt";s:23:"isi-european portuguese";s:5:"pt-pt";s:15:"డకోటా";s:3:"dak";s:24:"డార్గ్వా";s:3:"dar";s:24:"డెలావేర్";s:3:"del";s:24:"డోగ్రిబ్";s:3:"dgr";s:15:"డింకా";s:3:"din";s:18:"డోగ్రి";s:3:"doi";s:15:"iseldireg canol";s:3:"dum";s:18:"డ్యులా";s:3:"dyu";s:13:"inglés mediu";s:3:"enm";s:16:"inglés medieval";s:3:"enm";s:24:"inggris abad pertengahan";s:3:"enm";s:13:"inglese medio";s:3:"enm";s:18:"ingliż, medjevali";s:3:"enm";s:16:"inglês medieval";s:3:"enm";s:14:"inglês médio";s:3:"enm";s:18:"istočni frizijski";s:3:"frs";s:9:"idafriisi";s:3:"frs";s:10:"itäfriisi";s:3:"frs";s:17:"istočnofrizijski";s:3:"frs";s:9:"ikiribati";s:3:"gil";s:4:"iban";s:3:"iba";s:9:"iban dili";s:3:"iba";s:10:"ibanština";s:3:"iba";s:6:"ibaneg";s:3:"iba";s:5:"ibani";s:3:"iba";s:8:"ibanisch";s:3:"iba";s:5:"ibanu";s:3:"iba";s:6:"ibanag";s:3:"iba";s:9:"ibančina";s:3:"iba";s:11:"ibanščina";s:3:"iba";s:7:"ibanska";s:3:"iba";s:13:"iddew-bersieg";s:3:"jpr";s:13:"ibrani-persia";s:3:"jpr";s:14:"iudeo-persană";s:3:"jpr";s:12:"iddew-arabeg";s:3:"jrb";s:11:"ibrani-arab";s:3:"jrb";s:12:"iudeo-arabă";s:3:"jrb";s:15:"idioma carélio";s:3:"krl";s:24:"irština (středověká)";s:3:"mga";s:18:"irlandés medieval";s:3:"mga";s:14:"irski, srednji";s:3:"mga";s:25:"irlandia abad pertengahan";s:3:"mga";s:15:"irlandese medio";s:3:"mga";s:20:"irlandiż, medjevali";s:3:"mga";s:19:"irlandês, medieval";s:3:"mga";s:16:"irlandês médio";s:3:"mga";s:16:"irlandais mesaun";s:3:"mga";s:19:"irlandeză mijlocie";s:3:"mga";s:17:"irlandés antiguu";s:3:"sga";s:15:"irlandès antic";s:3:"sga";s:17:"irština (stará)";s:3:"sga";s:17:"irlandés antiguo";s:3:"sga";s:13:"irlandia kuno";s:3:"sga";s:16:"irlandese antico";s:3:"sga";s:16:"irlandiż, antik";s:3:"sga";s:17:"irlandês arcaico";s:3:"sga";s:14:"irlandais vegl";s:3:"sga";s:16:"irlandeză veche";s:3:"sga";s:23:"iaith arwyddion america";s:3:"ase";s:10:"itaŋikomi";s:3:"bkm";s:19:"isi-mexican spanish";s:5:"es-mx";s:9:"ibibiogbe";s:3:"ibb";s:6:"ibibis";s:3:"ibb";s:7:"ibibió";s:3:"ibb";s:8:"ingrianu";s:3:"izh";s:12:"ingrijština";s:3:"izh";s:10:"ischorisch";s:3:"izh";s:7:"ingrian";s:3:"izh";s:10:"inkeroinen";s:3:"izh";s:7:"ingrien";s:3:"izh";s:7:"ingrico";s:3:"izh";s:14:"ingjrijahnesch";s:3:"izh";s:10:"ischoresch";s:3:"izh";s:6:"ingrų";s:3:"izh";s:8:"ingrisch";s:3:"izh";s:9:"ingryjski";s:3:"izh";s:8:"ingriska";s:3:"izh";s:7:"iembaeg";s:3:"ybb";s:33:"indianerspraken in zentralamerika";s:3:"cai";s:3:"ijo";s:3:"ijo";s:19:"indoarische spraken";s:3:"inc";s:5:"indik";s:3:"inc";s:23:"indogermaansche spraken";s:3:"ine";s:19:"indo-evropski jezik";s:3:"ine";s:17:"iraansche spraken";s:3:"ira";s:13:"iranski jezik";s:3:"ira";s:18:"irokeesche spraken";s:3:"iro";s:12:"irokvojanski";s:3:"iro";s:31:"indianerspraken in noordamerika";s:3:"nai";s:32:"indianerspraken in süüdamerika";s:3:"sai";}i:950;a:14:{s:27:"ஆச்சினீஸ்";s:3:"ace";s:36:"ஆஃப்ரிகான்ஸ்";s:2:"af";s:27:"ஆர்கோனீஸ்";s:2:"an";s:46:"ஆஸ்திரிய ஜெர்மன்";s:5:"de-at";s:24:"ஆங்கிலம்";s:2:"en";s:30:"ஆர்மேனியன்";s:2:"hy";s:12:"ፖሊሽኛ";s:2:"pl";s:9:"ፖሊሽ";s:2:"pl";s:18:"ፖርቹጋልኛ";s:2:"pt";s:18:"ፖርቱጋሊኛ";s:2:"pt";s:40:"ፖርቱጋልኛ (ናይ ብራዚል)";s:5:"pt-br";s:61:"ஆஸ்திரேலியன் ஆங்கிலம்";s:5:"en-au";s:43:"ፖርቱጋልኛ (ናይ ፖርቱጋል)";s:5:"pt-pt";s:18:"ஆட்சம்";s:3:"cch";}i:78;a:22:{s:21:"ఆఖినీస్";s:3:"ace";s:33:"ఆఫ్రికాన్స్";s:2:"af";s:15:"ఆంగిక";s:3:"anp";s:55:"ఆస్ట్రేలియన్ జర్మన్";s:5:"de-at";s:50:"жогорку немисче (Швейцария)";s:5:"de-ch";s:14:"жонгуча";s:2:"dz";s:10:"жонха";s:2:"dz";s:18:"ఆంగ్లం";s:2:"en";s:27:"жоғарғы лужица";s:3:"hsb";s:33:"жогорку сорбианча";s:3:"hsb";s:30:"ఆర్మేనియన్";s:2:"hy";s:19:"жапон тілі";s:2:"ja";s:18:"жаванизче";s:2:"jv";s:24:"ఆక్సిటన్";s:2:"oc";s:30:"ఆరోమేనియన్";s:3:"rup";s:46:"жеңілдетілген қытай тілі";s:7:"zh-hans";s:65:"ఆధునిక ప్రామాణిక అరబిక్";s:6:"ar-001";s:21:"жола-фониче";s:3:"dyo";s:17:"жола-фони";s:3:"dyo";s:61:"ఆస్ట్రేలియన్ ఇంగ్లీష్";s:5:"en-au";s:25:"жаргон чинуук";s:3:"chn";s:6:"жжи";s:3:"kaj";}i:122;a:174:{s:9:"亚齐文";s:3:"ace";s:28:"zuid-azerbeidzjaans arabisch";s:3:"azb";s:7:"zâmani";s:2:"de";s:18:"zwitsers hoogduits";s:5:"de-ch";s:6:"zazaki";s:3:"zza";s:43:"లోవర్ సోర్బియన్";s:3:"dsb";s:13:"zentral-dusun";s:3:"dtp";s:13:"ziemeļfrīzu";s:3:"frr";s:16:"zapadnofrizijski";s:2:"fy";s:18:"zachodniofryzyjski";s:2:"fy";s:21:"západná frízština";s:2:"fy";s:12:"zwitserduits";s:3:"gsw";s:15:"亚美尼亚文";s:2:"hy";s:13:"zichuan yicha";s:2:"ii";s:10:"zapɔnekan";s:2:"ja";s:8:"zaponëe";s:2:"ja";s:24:"లోజ్బాన్";s:3:"jbo";s:8:"zavanëe";s:2:"jv";s:11:"zazakština";s:3:"kiu";s:18:"లాటిన్";s:2:"la";s:18:"లాడినో";s:3:"lad";s:39:"లుక్సంబర్గిష్";s:2:"lb";s:27:"లేజ్ఘియన్";s:3:"lez";s:33:"లిమ్బర్గిష్";s:2:"li";s:18:"లింగాల";s:2:"ln";s:12:"లావో";s:2:"lo";s:12:"లోజి";s:3:"loz";s:33:"లిథుయేనియన్";s:2:"lt";s:12:"లుషై";s:3:"lus";s:27:"లాట్వియన్";s:2:"lv";s:17:"zachodniomaryjski";s:3:"mrj";s:25:"లో జర్మన్";s:3:"nds";s:11:"ziemeļsotu";s:3:"nso";s:12:"ziemeļsāmu";s:2:"se";s:12:"zuid-samisch";s:3:"sma";s:10:"zuid-sotho";s:2:"st";s:6:"zweeds";s:2:"sv";s:7:"zviedru";s:2:"sv";s:5:"zwana";s:2:"tn";s:22:"zentralatlas-tamazight";s:3:"tzm";s:24:"ယူကရိန်း";s:2:"uk";s:19:"zachodnioflamandzki";s:3:"vls";s:4:"zosa";s:2:"xh";s:6:"zhuang";s:2:"za";s:5:"zuang";s:2:"za";s:8:"zhuangbe";s:2:"za";s:6:"zsuang";s:2:"za";s:7:"zeêuws";s:3:"zea";s:10:"zeelandés";s:3:"zea";s:8:"zelandeg";s:3:"zea";s:13:"zélandština";s:3:"zea";s:9:"zêlandeg";s:3:"zea";s:6:"zeeuws";s:3:"zea";s:10:"zélandais";s:3:"zea";s:9:"zelandese";s:3:"zea";s:8:"zelandų";s:3:"zea";s:9:"zelandzki";s:3:"zea";s:11:"zeeländska";s:3:"zea";s:9:"zelandaca";s:3:"zea";s:6:"zoeloe";s:2:"zu";s:4:"zulu";s:2:"zu";s:5:"zulú";s:2:"zu";s:7:"zulukan";s:2:"zu";s:8:"zouloueg";s:2:"zu";s:10:"zuluština";s:2:"zu";s:7:"zulugbe";s:2:"zu";s:5:"zulua";s:2:"zu";s:7:"zuluera";s:2:"zu";s:6:"zoulou";s:2:"zu";s:12:"zulušćina"";s:2:"zu";s:5:"zulų";s:2:"zu";s:5:"zolò";s:2:"zu";s:5:"zûlu";s:2:"zu";s:12:"zulujščina";s:2:"zu";s:5:"zuulu";s:2:"zu";s:6:"zuluca";s:2:"zu";s:9:"zuluancha";s:2:"zu";s:9:"亚罕文";s:3:"agq";s:26:"zamonavij standart arabcha";s:6:"ar-001";s:5:"zarma";s:3:"dje";s:10:"zarmština";s:3:"dje";s:7:"zarmaeg";s:3:"dje";s:7:"zamagbe";s:3:"dje";s:7:"zarmera";s:3:"dje";s:7:"zarmais";s:3:"dje";s:6:"zarmų";s:3:"dje";s:5:"zarmu";s:3:"dje";s:13:"zarmajščina";s:3:"dje";s:8:"zarmisht";s:3:"dje";s:8:"zarmacha";s:3:"dje";s:11:"zelenortski";s:3:"kea";s:31:"zelenortskootoška kreolščina";s:3:"kea";s:22:"západná songhajčina";s:3:"khq";s:15:"లాంగీ";s:3:"lag";s:15:"లకొటా";s:3:"lkt";s:25:"లూబ-కటాంగ";s:2:"lu";s:28:"లుబా-లులువ";s:3:"lua";s:12:"లువో";s:3:"luo";s:15:"లుయియ";s:3:"luy";s:14:"ziemeļndebelu";s:2:"nd";s:11:"zuid-ndbele";s:2:"nr";s:24:"ယန်ကိုလီ";s:3:"nyn";s:25:"లులే సామి";s:3:"smj";s:3:"zgh";s:3:"zgh";s:25:"లిపి లేదు";s:3:"zxx";s:71:"లాటిన్ అమెరికెన్ స్పానిష్";s:6:"es-419";s:14:"zwitsers frans";s:5:"fr-ch";s:14:"zuid-altaïsch";s:3:"alt";s:13:"zsidó-perzsa";s:3:"jpr";s:11:"zsidó-arab";s:3:"jrb";s:18:"లాహండా";s:3:"lah";s:15:"లాంబా";s:3:"lam";s:21:"లుఇసేనో";s:3:"lui";s:15:"లుండా";s:3:"lun";s:21:"鄂圖曼土耳其文";s:3:"ota";s:19:"zigüünerschpraach";s:3:"rom";s:21:"లింగిట్";s:3:"tli";s:7:"zimxjan";s:3:"tsi";s:8:"zapoteca";s:3:"zap";s:12:"zapotek dili";s:3:"zap";s:7:"zapoteg";s:3:"zap";s:10:"zapotečki";s:3:"zap";s:13:"zapotéčtina";s:3:"zap";s:9:"zapoteceg";s:3:"zap";s:7:"zapotec";s:3:"zap";s:11:"zapotekisch";s:3:"zap";s:8:"zapoteco";s:3:"zap";s:10:"zapoteekki";s:3:"zap";s:10:"zapotèque";s:3:"zap";s:8:"zapoték";s:3:"zap";s:7:"zapotek";s:3:"zap";s:11:"zapotekesch";s:3:"zap";s:9:"zapotekų";s:3:"zap";s:11:"zapoteeksch";s:3:"zap";s:9:"zapotecki";s:3:"zap";s:9:"zapotecă";s:3:"zap";s:13:"zapoteščina";s:3:"zap";s:20:"znakovni jezik bliss";s:3:"zbl";s:11:"zenaqa dili";s:3:"zen";s:6:"zenaga";s:3:"zen";s:6:"zenagu";s:3:"zen";s:11:"zenaščina";s:3:"zen";s:9:"zuni dili";s:3:"zun";s:4:"zuni";s:3:"zun";s:11:"zunijština";s:3:"zun";s:12:"zuni-sprache";s:3:"zun";s:7:"zúinis";s:3:"zun";s:14:"zuni-schpraach";s:3:"zun";s:12:"zuni-sprooch";s:3:"zun";s:5:"zunju";s:3:"zun";s:5:"zunhi";s:3:"zun";s:10:"zuniština";s:3:"zun";s:12:"zunijščina";s:3:"zun";s:9:"zaza dili";s:3:"zza";s:4:"zaza";s:3:"zza";s:7:"zazäeg";s:3:"zza";s:11:"zázáíska";s:3:"zza";s:6:"zázá";s:3:"zza";s:12:"zazajščina";s:3:"zza";s:8:"zazaiska";s:3:"zza";s:6:"zazaca";s:3:"zza";s:26:"znaková řeč (americká)";s:3:"ase";s:20:"zentral-alaska-yupik";s:3:"esu";s:14:"zätrahl-jupik";s:3:"esu";s:16:"zoroastrian dari";s:3:"gbz";s:18:"zoroastrialaisdari";s:3:"gbz";s:21:"zoroastrianescht dari";s:3:"gbz";s:15:"zoroastrų dari";s:3:"gbz";s:17:"zoroastrisch dari";s:3:"gbz";s:22:"zaratusztriański dari";s:3:"gbz";s:16:"zoroastrisk dari";s:3:"gbz";s:18:"zerdüşt daricesi";s:3:"gbz";s:8:"zaconico";s:3:"tsd";s:5:"zande";s:3:"znd";}i:126;a:10:{s:9:"亞齊文";s:3:"ace";s:15:"亞塞拜然文";s:2:"az";s:15:"亞美尼亞文";s:2:"hy";s:25:"శిషువన్ ఈ";s:2:"ii";s:33:"သင်္သကရိုက်";s:2:"sa";s:15:"明格列爾文";s:3:"xmf";s:9:"亞罕文";s:3:"agq";s:18:"శంబాలా";s:3:"ksb";s:24:"శింషీయన్";s:3:"tsi";s:12:"明打威文";s:3:"mwv";}i:694;a:9:{s:27:"આફ્રિકન્સ";s:2:"af";s:40:"આલ્જેરિયન અરબી";s:3:"arq";s:15:"આસામી";s:2:"as";s:18:"આયમારા";s:2:"ay";s:15:"આઇરિશ";s:2:"ga";s:27:"આર્મેનિયન";s:2:"hy";s:30:"આઇસલેન્ડિક";s:2:"is";s:27:"現代標準アラビア語";s:6:"ar-001";s:24:"現代標準阿拉伯文";s:6:"ar-001";}i:206;a:9:{s:33:"ಆಫ್ರಿಕಾನ್ಸ್";s:2:"af";s:18:"ಆಂಗಿಕಾ";s:3:"anp";s:30:"ಆಸ್ಟುರಿಯನ್";s:3:"ast";s:49:"ಆಸ್ಟ್ರಿಯನ್ ಜರ್ಮನ್";s:5:"de-at";s:12:"Ҷопонӣ";s:2:"ja";s:16:"Ҷаванизӣ";s:2:"jv";s:65:"ಆಧುನಿಕ ಪ್ರಮಾಣಿತ ಅರೇಬಿಕ್";s:6:"ar-001";s:61:"ಆಸ್ಟ್ರೇಲಿಯನ್ ಇಂಗ್ಲೀಷ್";s:5:"en-au";s:27:"ಆಫ್ರಿಹಿಲಿ";s:3:"afh";}i:334;a:11:{s:36:"ആഫ്രിക്കാൻസ്";s:2:"af";s:15:"ആൻഗിക";s:3:"anp";s:27:"ആസ്സാമീസ്";s:2:"as";s:21:"ხუნძური";s:2:"av";s:27:"ხორვატული";s:2:"hr";s:27:"ആരോമാനിയൻ";s:3:"rup";s:12:"ആഘേം";s:3:"agq";s:74:"ആധുനിക സ്റ്റാൻഡേർഡ് അറബിക്";s:6:"ar-001";s:9:"ആസു";s:3:"asa";s:28:"ხეთური ენა";s:3:"hit";s:27:"ആഫ്രിഹിലി";s:3:"afh";}i:461;a:16:{s:30:"අප්‍රිකානු";s:2:"af";s:15:"අකාන්";s:2:"ak";s:15:"අරාබි";s:2:"ar";s:33:"අසර්බයිජාන්";s:2:"az";s:24:"අයර්ලන්ත";s:2:"ga";s:27:"අයිස්ලන්ත";s:2:"is";s:12:"キクユ語";s:2:"ki";s:24:"キルマンジュキ語";s:3:"kiu";s:18:"キナライア語";s:3:"krj";s:15:"キルギス語";s:2:"ky";s:9:"绍纳文";s:2:"sn";s:21:"ঝু্য়াঙ";s:2:"za";s:9:"අසු";s:3:"asa";s:12:"キチェ語";s:3:"quc";s:15:"キリバス語";s:3:"gil";s:18:"キンブンド語";s:3:"kmb";}i:115;a:1739:{s:6:"seburu";s:2:"af";s:9:"se-amhari";s:2:"am";s:13:"staroengleski";s:3:"ang";s:16:"staroangličtina";s:3:"ang";s:13:"sean-bhéarla";s:3:"ang";s:13:"seann-bheurla";s:3:"ang";s:13:"senoji anglų";s:3:"ang";s:9:"senangļu";s:3:"ang";s:14:"staroangielski";s:3:"ang";s:18:"stará angličtina";s:3:"ang";s:18:"stara angleščina";s:3:"ang";s:7:"se-arab";s:2:"ar";s:14:"se-azerbaijani";s:2:"az";s:21:"südaserbaidschanisch";s:3:"azb";s:17:"south azerbaijani";s:3:"azb";s:23:"södasserbaidschahnesch";s:3:"azb";s:22:"süd-aserbaidschanesch";s:3:"azb";s:16:"sydazerbadjanska";s:3:"azb";s:10:"samogitian";s:3:"sgs";s:16:"southern balochi";s:3:"bcc";s:12:"se-belarusia";s:2:"be";s:11:"se-bulgaria";s:2:"bg";s:9:"se-bihari";s:2:"bh";s:10:"se-bengali";s:2:"bn";s:9:"se-bosnia";s:2:"bs";s:8:"sebosnia";s:2:"bs";s:10:"se-catalia";s:2:"ca";s:7:"sisinis";s:2:"ce";s:10:"sebuanogbe";s:3:"ceb";s:4:"sebu";s:3:"ceb";s:12:"seabúáinis";s:3:"ceb";s:7:"sebuano";s:3:"ceb";s:9:"sebuāņu";s:3:"ceb";s:7:"sibwano";s:3:"ceb";s:13:"sebuanščina";s:3:"ceb";s:10:"seamóiris";s:2:"ch";s:6:"siocto";s:3:"cho";s:7:"sjoktá";s:3:"cho";s:8:"seiricis";s:3:"chr";s:6:"sjeyen";s:3:"chy";s:15:"sorani koerdies";s:3:"ckb";s:12:"sorani kürd";s:3:"ckb";s:16:"soranski kurdski";s:3:"ckb";s:6:"sorani";s:3:"ckb";s:14:"sorani kurdish";s:3:"ckb";s:6:"sorana";s:3:"ckb";s:12:"sorani kurdi";s:3:"ckb";s:9:"soraniera";s:3:"ckb";s:7:"soranî";s:3:"ckb";s:13:"szoráni kurd";s:3:"ckb";s:17:"sorani-kúrdíska";s:3:"ckb";s:15:"soranių kurdų";s:3:"ckb";s:12:"sorani curdo";s:3:"ckb";s:13:"sorâni curdo";s:3:"ckb";s:20:"soranska kurdščina";s:3:"ckb";s:17:"soranisk kurdiska";s:3:"ckb";s:16:"sorani kurd tili";s:3:"ckb";s:6:"seicis";s:2:"cs";s:7:"seacais";s:2:"cs";s:8:"se-czech";s:2:"cs";s:8:"se czeck";s:2:"cs";s:13:"slavoneg iliz";s:2:"cu";s:14:"staroslovenski";s:2:"cu";s:18:"staroslověnština";s:2:"cu";s:18:"slavon d’église";s:2:"cu";s:16:"sclâf de glesie";s:2:"cu";s:20:"slavais na heaglaise";s:2:"cu";s:23:"slàbhais na h-eaglaise";s:2:"cu";s:18:"slavo della chiesa";s:2:"cu";s:13:"slavik gereja";s:2:"cu";s:18:"slaviku tal-knisja";s:2:"cu";s:28:"staro-cerkiewno-słowiański";s:2:"cu";s:16:"slav da baselgia";s:2:"cu";s:8:"slavonă";s:2:"cu";s:28:"stara cerkvena slovanščina";s:2:"cu";s:8:"suvaisis";s:2:"cv";s:7:"sjúvas";s:2:"cv";s:8:"se-welsh";s:2:"cy";s:8:"se-dutch";s:2:"da";s:5:"saksa";s:2:"de";s:11:"se-jeremane";s:2:"de";s:21:"schweizer hochdeutsch";s:5:"de-ch";s:20:"switserse hoog-duits";s:5:"de-ch";s:17:"schweizerhøjtysk";s:5:"de-ch";s:33:"swizerlanɖ germaniagbe kɔkɔtɔ";s:5:"de-ch";s:17:"swiss high german";s:5:"de-ch";s:13:"svisa germana";s:5:"de-ch";s:18:"saksa (kõrgsaksa)";s:5:"de-ch";s:17:"sveitsinyläsaksa";s:5:"de-ch";s:21:"switsersk heechdútsk";s:5:"de-ch";s:23:"schwiizer hochtüütsch";s:5:"de-ch";s:17:"svájci felnémet";s:5:"de-ch";s:20:"svissnesk háþýska";s:5:"de-ch";s:25:"schwäizer héichdäitsch";s:5:"de-ch";s:18:"sveitsisk høytysk";s:5:"de-ch";s:22:"swiezer hoochdüütsch";s:5:"de-ch";s:18:"sveitsisk høgtysk";s:5:"de-ch";s:20:"schweizisk högtyska";s:5:"de-ch";s:21:"shvesariya olmonchasi";s:5:"de-ch";s:11:"sorbeg isaf";s:3:"dsb";s:15:"sorbio inferior";s:3:"dsb";s:19:"sorbais Íochtarach";s:3:"dsb";s:20:"sòrbais Ìochdarach";s:3:"dsb";s:13:"sorbia rendah";s:3:"dsb";s:13:"sérvio baixo";s:3:"dsb";s:14:"sorabă de jos";s:3:"dsb";s:19:"sorbishte e poshtme";s:3:"dsb";s:9:"seoinicis";s:2:"dz";s:8:"se-greek";s:2:"el";s:8:"segerika";s:2:"el";s:7:"saozneg";s:2:"en";s:7:"saesneg";s:2:"en";s:7:"sowsnek";s:2:"en";s:11:"senyesemane";s:2:"en";s:6:"sekgoa";s:2:"en";s:14:"saozneg kanada";s:5:"en-ca";s:14:"saesneg canada";s:5:"en-ca";s:19:"saozneg breizh-veur";s:5:"en-gb";s:15:"saesneg prydain";s:5:"en-gb";s:12:"se-esperanto";s:2:"eo";s:12:"sperantapük";s:2:"eo";s:6:"spaans";s:2:"es";s:10:"spain kasa";s:2:"es";s:9:"spagnoleg";s:2:"es";s:7:"sbaeneg";s:2:"es";s:6:"spansk";s:2:"es";s:8:"spanisch";s:2:"es";s:9:"spaniagbe";s:2:"es";s:7:"spanish";s:2:"es";s:7:"spanskt";s:2:"es";s:8:"spagnûl";s:2:"es";s:7:"spaansk";s:2:"es";s:9:"spáinnis";s:2:"es";s:10:"spàinntis";s:2:"es";s:10:"schpanisch";s:2:"es";s:7:"spanyol";s:2:"es";s:8:"spænska";s:2:"es";s:8:"spagnolo";s:2:"es";s:10:"spanskisut";s:2:"es";s:11:"schpahnesch";s:2:"es";s:7:"spaynek";s:2:"es";s:9:"spuenesch";s:2:"es";s:7:"spāņu";s:2:"es";s:8:"sepanyol";s:2:"es";s:7:"spanjol";s:2:"es";s:8:"spaansch";s:2:"es";s:7:"spagnol";s:2:"es";s:9:"spaniolă";s:2:"es";s:15:"spánskkagiella";s:2:"es";s:9:"spanjisht";s:2:"es";s:7:"sespain";s:2:"es";s:7:"spanska";s:2:"es";s:13:"spanyänapük";s:2:"es";s:10:"se-estonia";s:2:"et";s:9:"se-basque";s:2:"eu";s:9:"se-persia";s:2:"fa";s:15:"ఫ్యుల";s:2:"ff";s:5:"suomi";s:2:"fi";s:5:"soome";s:2:"fi";s:7:"suomių";s:2:"fi";s:4:"somu";s:2:"fi";s:11:"suomagiella";s:2:"fi";s:10:"se-finnish";s:2:"fi";s:24:"ఫిన్నిష్";s:2:"fi";s:10:"se-finland";s:2:"fi";s:32:"suomių kalbos tornedalio tarmė";s:3:"fit";s:21:"ఫిజియన్";s:2:"fj";s:13:"savalimmiutut";s:2:"fo";s:10:"se-foroese";s:2:"fo";s:24:"ఫారోయీజ్";s:2:"fo";s:9:"se-french";s:2:"fr";s:21:"ఫ్రెంచ్";s:2:"fr";s:7:"se fora";s:2:"fr";s:17:"severno-frizijski";s:3:"frr";s:17:"sjevernofrizijski";s:3:"frr";s:20:"severná frízština";s:3:"frr";s:21:"severna frizijščina";s:3:"frr";s:33:"ఫ్రియులియన్";s:3:"fur";s:9:"se-frisia";s:2:"fy";s:8:"se-irish";s:2:"ga";s:10:"sinaeg gan";s:3:"gan";s:21:"simplified gan script";s:8:"gan-hans";s:14:"skotse gallies";s:2:"gd";s:16:"skot gaelik dili";s:2:"gd";s:6:"skoseg";s:2:"gd";s:19:"skotská gaelština";s:2:"gd";s:14:"skotsk gælisk";s:2:"gd";s:21:"schottisches gälisch";s:2:"gd";s:20:"skɔtlanɖ gaeliagbe";s:2:"gd";s:15:"scottish gaelic";s:2:"gd";s:16:"skotskt gæliskt";s:2:"gd";s:14:"schotsk gaelic";s:2:"gd";s:21:"schottisch-gäälisch";s:2:"gd";s:10:"skót gael";s:2:"gd";s:12:"scoto gaelic";s:2:"gd";s:14:"skosk gelíska";s:2:"gd";s:21:"schottescht gällesch";s:2:"gd";s:12:"scots gaelic";s:2:"gd";s:19:"schottsch gäälsch";s:2:"gd";s:15:"schots-gaelisch";s:2:"gd";s:14:"skotsk-gælisk";s:2:"gd";s:16:"szkocki gaelicki";s:2:"gd";s:15:"se-scots gaelic";s:2:"gd";s:10:"se-galicia";s:2:"gl";s:11:"starogrčki";s:3:"grc";s:14:"starořečtina";s:3:"grc";s:14:"sean-ghréigis";s:3:"grc";s:16:"senovės graikų";s:3:"grc";s:10:"sengrieķu";s:3:"grc";s:11:"starogrecki";s:3:"grc";s:15:"starogréčtina";s:3:"grc";s:15:"stara grščina";s:3:"grc";s:15:"switserse duits";s:3:"gsw";s:13:"schweizertysk";s:3:"gsw";s:16:"schweizerdeutsch";s:3:"gsw";s:32:"swizerlanɖtɔwo ƒe germaniagbe";s:3:"gsw";s:12:"swiss german";s:3:"gsw";s:13:"sveitsinsaksa";s:3:"gsw";s:15:"switsers dútsk";s:3:"gsw";s:18:"schwiizertüütsch";s:3:"gsw";s:14:"svájci német";s:3:"gsw";s:17:"svissnesk þýska";s:3:"gsw";s:16:"schwitzerdütsch";s:3:"gsw";s:18:"schwäizerdäitsch";s:3:"gsw";s:12:"sveitsertysk";s:3:"gsw";s:16:"swiezerdüütsch";s:3:"gsw";s:21:"szwajcarski niemiecki";s:3:"gsw";s:14:"schweizertyska";s:3:"gsw";s:22:"shveysariya nemischasi";s:3:"gsw";s:11:"se-gujarati";s:2:"gu";s:12:"sinaeg hakka";s:3:"hak";s:9:"se-hebrew";s:2:"he";s:9:"se heberu";s:2:"he";s:8:"se-hindi";s:2:"hi";s:10:"se-croatia";s:2:"hr";s:12:"sorbeg uchaf";s:3:"hsb";s:15:"sorbio superior";s:3:"hsb";s:18:"sorbais uachtarach";s:3:"hsb";s:19:"sòrbais uachdarach";s:3:"hsb";s:11:"sorbia atas";s:3:"hsb";s:17:"sorábio superior";s:3:"hsb";s:14:"sorabă de sus";s:3:"hsb";s:19:"sorbiane e sipërme";s:3:"hsb";s:11:"se-hungaria";s:2:"hu";s:14:"se-interlingua";s:2:"ia";s:12:"se-indonesia";s:2:"id";s:10:"sichuan yi";s:2:"ii";s:10:"siçuan yi";s:2:"ii";s:10:"sičuan ji";s:2:"ii";s:14:"s’-čchuan i";s:2:"ii";s:12:"sichuani jii";s:2:"ii";s:11:"sichuan yia";s:2:"ii";s:12:"sichuanin-yi";s:2:"ii";s:14:"sezuanischs yi";s:2:"ii";s:12:"szecsuán ji";s:2:"ii";s:11:"sísúanjí";s:2:"ii";s:13:"sičuaņas ji";s:2:"ii";s:10:"sichuan-yi";s:2:"ii";s:11:"syczuański";s:2:"ii";s:24:"s’čchuanská ioština";s:2:"ii";s:20:"sečuanska jiščina";s:2:"ii";s:11:"sishuanisht";s:2:"ii";s:9:"szezuan i";s:2:"ii";s:10:"se-iceland";s:2:"is";s:10:"se-tariana";s:2:"it";s:11:"se italiano";s:2:"it";s:9:"saponeere";s:2:"ja";s:10:"seapáinis";s:2:"ja";s:9:"seapanais";s:2:"ja";s:9:"se-japane";s:2:"ja";s:8:"se japan";s:2:"ja";s:9:"sawaneere";s:2:"jv";s:9:"se-javane";s:2:"jv";s:8:"seoirsis";s:2:"ka";s:9:"se-geogia";s:2:"ka";s:10:"se-kannada";s:2:"kn";s:8:"se-korea";s:2:"ko";s:8:"se korea";s:2:"ko";s:9:"se-latino";s:2:"la";s:6:"silozi";s:3:"loz";s:11:"se-lithuano";s:2:"lt";s:15:"sinaeg lennegel";s:3:"lzh";s:21:"sìnis an litreachais";s:3:"lzh";s:12:"se-masedonia";s:2:"mk";s:12:"se-malayalam";s:2:"ml";s:10:"se-marathi";s:2:"mr";s:8:"se-malay";s:2:"ms";s:10:"se-maltese";s:2:"mt";s:14:"sinaeg min nan";s:3:"nan";s:9:"se-nepali";s:2:"ne";s:8:"se dutch";s:2:"nl";s:19:"se-norway (nynorsk)";s:2:"nn";s:9:"se-norway";s:2:"no";s:16:"sesotho sa leboa";s:3:"nso";s:15:"sotho del norte";s:3:"nso";s:14:"sotho an norzh";s:3:"nso";s:12:"severni soto";s:3:"nso";s:19:"sotho septentrional";s:3:"nso";s:20:"sotština (severní)";s:3:"nso";s:15:"sotho gogleddol";s:3:"nso";s:13:"sotho du nord";s:3:"nso";s:19:"sotho setentrionâl";s:3:"nso";s:21:"sútúis an tuaiscirt";s:3:"nso";s:14:"sjeverni sotho";s:3:"nso";s:11:"sotho utara";s:3:"nso";s:14:"sotho del nord";s:3:"nso";s:15:"soto, ta’ fuq";s:3:"nso";s:16:"sotho północny";s:3:"nso";s:17:"soto setentrional";s:3:"nso";s:21:"sesotho sa leboa simi";s:3:"nso";s:14:"sotho dal nord";s:3:"nso";s:13:"sotho de nord";s:3:"nso";s:18:"severná sothčina";s:3:"nso";s:18:"severna sotščina";s:3:"nso";s:9:"siséivis";s:2:"ny";s:11:"schi-schewa";s:2:"ny";s:10:"se-occitan";s:2:"oc";s:10:"se-punjabi";s:2:"pa";s:9:"se-polish";s:2:"pl";s:9:"se poland";s:2:"pl";s:11:"se-portugal";s:2:"pt";s:12:"se potoketsi";s:2:"pt";s:22:"seputukesi (sa brazil)";s:5:"pt-br";s:10:"se-romania";s:2:"ro";s:7:"se roma";s:2:"ro";s:9:"se-rushia";s:2:"ru";s:8:"sanskrit";s:2:"sa";s:10:"sánscritu";s:2:"sa";s:10:"sanskriteg";s:2:"sa";s:9:"sànscrit";s:2:"sa";s:7:"sanskrt";s:2:"sa";s:8:"sansgrit";s:2:"sa";s:10:"sanskrigbe";s:2:"sa";s:9:"sanskrito";s:2:"sa";s:10:"sánscrito";s:2:"sa";s:9:"sanskriti";s:2:"sa";s:10:"sanskritoa";s:2:"sa";s:8:"sanscrit";s:2:"sa";s:9:"sanskriet";s:2:"sa";s:9:"sanscrait";s:2:"sa";s:10:"sanschkrit";s:2:"sa";s:10:"sanskrtski";s:2:"sa";s:10:"szanszkrit";s:2:"sa";s:9:"sanscrito";s:2:"sa";s:9:"sanskerta";s:2:"sa";s:9:"sanskrít";s:2:"sa";s:10:"sanskritas";s:2:"sa";s:9:"sanskrits";s:2:"sa";s:8:"sanskryt";s:2:"sa";s:10:"sânscrito";s:2:"sa";s:14:"sanscrito simi";s:2:"sa";s:10:"sanscrită";s:2:"sa";s:12:"sanskritisht";s:2:"sa";s:11:"sanskritçe";s:2:"sa";s:11:"sanskritcha";s:2:"sa";s:5:"sakha";s:3:"sah";s:7:"sakagbe";s:3:"sah";s:7:"sachais";s:3:"sah";s:10:"sakha simi";s:3:"sah";s:7:"santali";s:3:"sat";s:11:"santal dili";s:3:"sat";s:13:"santálština";s:3:"sat";s:10:"santaligbe";s:3:"sat";s:6:"santal";s:3:"sat";s:10:"santáilis";s:3:"sat";s:9:"szantáli";s:3:"sat";s:8:"santalí";s:3:"sat";s:7:"santalu";s:3:"sat";s:11:"santalčina";s:3:"sat";s:13:"santalščina";s:3:"sat";s:5:"sardu";s:2:"sc";s:11:"sardin dili";s:2:"sc";s:6:"sardeg";s:2:"sc";s:11:"sardinijski";s:2:"sc";s:4:"sard";s:2:"sc";s:10:"sardština";s:2:"sc";s:8:"sardinsk";s:2:"sc";s:8:"sardisch";s:2:"sc";s:13:"sardinšćina";s:2:"sc";s:9:"sardinian";s:2:"sc";s:5:"sardo";s:2:"sc";s:9:"sardiinia";s:2:"sc";s:5:"sardi";s:2:"sc";s:5:"sarde";s:2:"sc";s:10:"sardegnûl";s:2:"sc";s:9:"sardinysk";s:2:"sc";s:10:"sairdínis";s:2:"sc";s:8:"sàrdais";s:2:"sc";s:7:"sardski";s:2:"sc";s:11:"szardíniai";s:2:"sc";s:8:"sardinia";s:2:"sc";s:10:"sardínska";s:2:"sc";s:8:"sardesch";s:2:"sc";s:13:"sardiniečių";s:2:"sc";s:12:"sardīniešu";s:2:"sc";s:9:"sardinjan";s:2:"sc";s:7:"sardsch";s:2:"sc";s:8:"sardijns";s:2:"sc";s:10:"sardyński";s:2:"sc";s:11:"sardiniană";s:2:"sc";s:11:"sardigiella";s:2:"sc";s:12:"sardínčina";s:2:"sc";s:13:"sardinščina";s:2:"sc";s:8:"sardiska";s:2:"sc";s:13:"sardunya dili";s:2:"sc";s:9:"sicilianu";s:3:"scn";s:11:"sisili dili";s:3:"scn";s:8:"sikilieg";s:3:"scn";s:12:"sicilijanski";s:3:"scn";s:8:"sicilià";s:3:"scn";s:11:"sicilština";s:3:"scn";s:7:"sisileg";s:3:"scn";s:10:"siciliansk";s:3:"scn";s:12:"sizilianisch";s:3:"scn";s:16:"sicilianišćina";s:3:"scn";s:8:"sicilian";s:3:"scn";s:9:"siciliano";s:3:"scn";s:9:"sitsiilia";s:3:"scn";s:7:"sisilia";s:3:"scn";s:8:"sicilien";s:3:"scn";s:11:"siciliaansk";s:3:"scn";s:7:"sicilis";s:3:"scn";s:7:"sisilis";s:3:"scn";s:10:"sicilijski";s:3:"scn";s:12:"sicilšćina";s:3:"scn";s:10:"szicíliai";s:3:"scn";s:10:"sikileyska";s:3:"scn";s:12:"sizilianesch";s:3:"scn";s:12:"siciliečių";s:3:"scn";s:11:"sicīliešu";s:3:"scn";s:12:"siziliaansch";s:3:"scn";s:10:"siciliaans";s:3:"scn";s:10:"sycylijski";s:3:"scn";s:10:"siciliană";s:3:"scn";s:13:"sisiliagiella";s:3:"scn";s:11:"sicílčina";s:3:"scn";s:16:"sicilijanščina";s:3:"scn";s:11:"sicilianska";s:3:"scn";s:9:"sicilyaca";s:3:"scn";s:5:"scots";s:3:"sco";s:5:"skots";s:3:"sco";s:10:"skots dili";s:3:"sco";s:6:"skoteg";s:3:"sco";s:10:"skotština";s:3:"sco";s:6:"sgoteg";s:3:"sco";s:6:"skotsk";s:3:"sco";s:10:"schottisch";s:3:"sco";s:6:"skotti";s:3:"sco";s:7:"scozês";s:3:"sco";s:6:"schots";s:3:"sco";s:5:"skót";s:3:"sco";s:10:"skotlandia";s:3:"sco";s:6:"skoska";s:3:"sco";s:8:"scozzese";s:3:"sco";s:10:"schottesch";s:3:"sco";s:5:"skotu";s:3:"sco";s:10:"skoċċiż";s:3:"sco";s:9:"schottsch";s:3:"sco";s:7:"szkocki";s:3:"sco";s:4:"scot";s:3:"sco";s:7:"skotska";s:3:"sco";s:6:"sindhi";s:2:"sd";s:5:"sindi";s:2:"sd";s:11:"sindhština";s:2:"sd";s:11:"sindšćina";s:2:"sd";s:8:"sindhgbe";s:2:"sd";s:5:"sinda";s:2:"sd";s:7:"sindhia";s:2:"sd";s:6:"sindis";s:2:"sd";s:10:"sindiyanci";s:2:"sd";s:13:"sindhišćina";s:2:"sd";s:7:"szindhi";s:2:"sd";s:6:"sindí";s:2:"sd";s:6:"sinndi";s:2:"sd";s:6:"sindų";s:2:"sd";s:6:"sindhu";s:2:"sd";s:11:"sindhi simi";s:2:"sd";s:10:"sindhčina";s:2:"sd";s:11:"sindščina";s:2:"sd";s:10:"sindxiycha";s:2:"sd";s:9:"sassaresu";s:3:"sdc";s:15:"sardu sassarés";s:3:"sdc";s:9:"sasareseg";s:3:"sdc";s:12:"sassarština";s:3:"sdc";s:18:"sasareseg sardinia";s:3:"sdc";s:10:"sassarisch";s:3:"sdc";s:19:"sassarese sardinian";s:3:"sdc";s:13:"sassarinsardi";s:3:"sdc";s:15:"sarde sassarais";s:3:"sdc";s:9:"sassarese";s:3:"sdc";s:12:"sassaresesch";s:3:"sdc";s:18:"sasaresų sardinų";s:3:"sdc";s:9:"sassarees";s:3:"sdc";s:9:"sassarski";s:3:"sdc";s:20:"sassaresisk sardiska";s:3:"sdc";s:15:"sassari sarduca";s:3:"sdc";s:11:"sámegiella";s:2:"se";s:14:"sami del norte";s:2:"se";s:14:"sámi an norzh";s:2:"se";s:13:"sjeverni sami";s:3:"sma";s:18:"sami septentrional";s:2:"se";s:21:"sámština (severní)";s:2:"se";s:14:"sami gogleddol";s:2:"se";s:12:"sami du nord";s:2:"se";s:18:"sami setentrionâl";s:2:"se";s:15:"sáimis thuaidh";s:2:"se";s:17:"sàmais thuathach";s:2:"se";s:13:"sami do norte";s:2:"se";s:18:"sewjerosamišćina";s:2:"se";s:10:"sami utara";s:2:"se";s:13:"sami del nord";s:2:"se";s:38:"sami ភាគ​ខាង​ជើង";s:2:"se";s:14:"sami ta’ fuq";s:2:"se";s:13:"sami dal nord";s:2:"se";s:12:"sami de nord";s:2:"se";s:12:"severni sami";s:2:"se";s:13:"severné sami";s:2:"se";s:20:"severna samijščina";s:2:"se";s:16:"samishte veriore";s:2:"se";s:17:"shimoliy semiycha";s:2:"se";s:10:"seriština";s:3:"sei";s:4:"seri";s:3:"sei";s:5:"séri";s:3:"sei";s:7:"sängö";s:2:"sg";s:5:"sango";s:2:"sg";s:5:"sanqo";s:2:"sg";s:10:"sangština";s:2:"sg";s:8:"sangogbe";s:2:"sg";s:6:"sangoa";s:2:"sg";s:8:"sangoera";s:2:"sg";s:6:"sangho";s:2:"sg";s:8:"sangóis";s:2:"sg";s:7:"szangó";s:2:"sg";s:6:"sangó";s:2:"sg";s:6:"sangjo";s:2:"sg";s:9:"sangoisht";s:2:"sg";s:10:"sangoancha";s:2:"sg";s:11:"samogitisch";s:3:"sgs";s:10:"samogiitti";s:3:"sgs";s:10:"samogitien";s:3:"sgs";s:10:"samogitico";s:3:"sgs";s:11:"samogitesch";s:3:"sgs";s:11:"samogitiska";s:3:"sgs";s:10:"samogitçe";s:3:"sgs";s:45:"srpskohrvatski / српскохрватски";s:2:"sh";s:14:"serwo-kroaties";s:2:"sh";s:12:"serbo-croata";s:2:"sh";s:13:"serb-xorvatca";s:2:"sh";s:12:"serb-kroateg";s:2:"sh";s:14:"srpskohrvatski";s:2:"sh";s:10:"serbocroat";s:2:"sh";s:17:"srbochorvatština";s:2:"sh";s:13:"serbo-croateg";s:2:"sh";s:13:"serbokroatisk";s:2:"sh";s:15:"serbo-kroatisch";s:2:"sh";s:19:"serbochorwatšćina";s:2:"sh";s:16:"serbo-croatiagbe";s:2:"sh";s:14:"serbo-croatian";s:2:"sh";s:12:"serbo-kroata";s:2:"sh";s:11:"serbocroata";s:2:"sh";s:15:"serbia-horvaadi";s:2:"sh";s:14:"serbokroaziera";s:2:"sh";s:13:"serbokroaatti";s:2:"sh";s:14:"serbokroatiskt";s:2:"sh";s:12:"serbo-croate";s:2:"sh";s:13:"servokroatysk";s:2:"sh";s:17:"seirbea-chróitis";s:2:"sh";s:19:"sèirb-chròthaisis";s:2:"sh";s:15:"srpsko-hrvatski";s:2:"sh";s:12:"szerbhorvát";s:2:"sh";s:11:"serbocroate";s:2:"sh";s:13:"serbo-kroasia";s:2:"sh";s:17:"serbókróatíska";s:2:"sh";s:12:"serbo-croato";s:2:"sh";s:15:"särbokowatesch";s:2:"sh";s:15:"serbo-kroatesch";s:2:"sh";s:14:"serbų-kroatų";s:2:"sh";s:14:"serbu-horvātu";s:2:"sh";s:12:"serbocroatia";s:2:"sh";s:11:"serbo-kroat";s:2:"sh";s:14:"servokroatisch";s:2:"sh";s:17:"serbsko-chorwacki";s:2:"sh";s:12:"servo-croata";s:2:"sh";s:11:"serbo-croat";s:2:"sh";s:14:"sârbo-croată";s:2:"sh";s:18:"serbokroatiagiella";s:2:"sh";s:17:"srbochorvátčina";s:2:"sh";s:15:"srbohrvaščina";s:2:"sh";s:9:"serbiyaan";s:2:"sh";s:15:"serbo-kroatisht";s:2:"sh";s:14:"serbokroatiska";s:2:"sh";s:18:"sırp-hırvat dili";s:2:"sh";s:7:"sinhala";s:2:"si";s:6:"sinhal";s:2:"si";s:9:"singhaleg";s:2:"si";s:10:"singaleski";s:2:"si";s:9:"singalès";s:2:"si";s:13:"sinhálština";s:2:"si";s:8:"sinhaleg";s:2:"si";s:11:"singalesisk";s:2:"si";s:13:"singhalesisch";s:2:"si";s:13:"singalšćina";s:2:"si";s:9:"sinhalgbe";s:2:"si";s:7:"singali";s:2:"si";s:12:"sinhalesiskt";s:2:"si";s:8:"sinalês";s:2:"si";s:9:"singalees";s:2:"si";s:10:"siolóinis";s:2:"si";s:10:"sinhalanci";s:2:"si";s:11:"sinhaleški";s:2:"si";s:14:"singhalšćina";s:2:"si";s:10:"szingaléz";s:2:"si";s:9:"sinhalese";s:2:"si";s:11:"singalíska";s:2:"si";s:9:"singalese";s:2:"si";s:14:"singjaleesesch";s:2:"si";s:13:"singhalesesch";s:2:"si";s:8:"sinhalų";s:2:"si";s:9:"singāļu";s:2:"si";s:10:"sinħaliż";s:2:"si";s:12:"singhaleesch";s:2:"si";s:10:"syngaleski";s:2:"si";s:9:"singalais";s:2:"si";s:11:"singhaleză";s:2:"si";s:11:"sinhalčina";s:2:"si";s:13:"singalščina";s:2:"si";s:9:"sinhaleys";s:2:"si";s:7:"sinhale";s:2:"si";s:10:"se-sinhali";s:2:"si";s:12:"singalesiska";s:2:"si";s:8:"seylanca";s:2:"si";s:9:"sinholcha";s:2:"si";s:14:"simple english";s:6:"simple";s:11:"slovenčina";s:2:"sk";s:8:"slowaaks";s:2:"sk";s:6:"slovak";s:2:"sk";s:8:"slovakeg";s:2:"sk";s:9:"slovački";s:2:"sk";s:12:"slovenština";s:2:"sk";s:8:"slofaceg";s:2:"sk";s:9:"slovakisk";s:2:"sk";s:10:"slowakisch";s:2:"sk";s:14:"słowakšćina";s:2:"sk";s:11:"slovakiagbe";s:2:"sk";s:7:"slovaka";s:2:"sk";s:7:"slovaki";s:2:"sk";s:8:"slovakki";s:2:"sk";s:10:"slovakiskt";s:2:"sk";s:8:"slovaque";s:2:"sk";s:6:"slovac";s:2:"sk";s:10:"slóvaicis";s:2:"sk";s:11:"slòbhacais";s:2:"sk";s:8:"szlovák";s:2:"sk";s:7:"slovaco";s:2:"sk";s:12:"slóvakíska";s:2:"sk";s:8:"slovacco";s:2:"sk";s:13:"slovakimiusut";s:2:"sk";s:10:"slowakesch";s:2:"sk";s:8:"slovakų";s:2:"sk";s:8:"slovāku";s:2:"sk";s:7:"slovakk";s:2:"sk";s:10:"slowaaksch";s:2:"sk";s:9:"słowacki";s:2:"sk";s:8:"slovacă";s:2:"sk";s:15:"slovákiagiella";s:2:"sk";s:12:"slovaščina";s:2:"sk";s:11:"sllovakisht";s:2:"sk";s:9:"se-slovak";s:2:"sk";s:10:"slovakiska";s:2:"sk";s:9:"slovakça";s:2:"sk";s:9:"slovakcha";s:2:"sk";s:13:"slovenščina";s:2:"sl";s:8:"sloweens";s:2:"sl";s:6:"sloven";s:2:"sl";s:8:"sloveneg";s:2:"sl";s:11:"slovenački";s:2:"sl";s:12:"slovinština";s:2:"sl";s:8:"slofeneg";s:2:"sl";s:8:"slovensk";s:2:"sl";s:10:"slowenisch";s:2:"sl";s:16:"słowjeńšćina";s:2:"sl";s:11:"sloveniagbe";s:2:"sl";s:9:"slovenian";s:2:"sl";s:7:"slovena";s:2:"sl";s:8:"sloveeni";s:2:"sl";s:9:"slovenskt";s:2:"sl";s:8:"slovène";s:2:"sl";s:9:"sloveensk";s:2:"sl";s:12:"slóivéinis";s:2:"sl";s:11:"slòbhainis";s:2:"sl";s:9:"slovenski";s:2:"sl";s:15:"słowjenšćina";s:2:"sl";s:8:"szlovén";s:2:"sl";s:7:"sloveno";s:2:"sl";s:10:"slóvenska";s:2:"sl";s:10:"slowenesch";s:2:"sl";s:9:"slovėnų";s:2:"sl";s:9:"slovēņu";s:2:"sl";s:8:"slovenia";s:2:"sl";s:10:"sloweensch";s:2:"sl";s:8:"sloveens";s:2:"sl";s:11:"słoweński";s:2:"sl";s:8:"slovenă";s:2:"sl";s:13:"slovenagiella";s:2:"sl";s:11:"slovinčina";s:2:"sl";s:11:"sllovenisht";s:2:"sl";s:11:"se-slovania";s:2:"sl";s:9:"slovenska";s:2:"sl";s:8:"slovence";s:2:"sl";s:9:"slovencha";s:2:"sl";s:9:"schläsch";s:3:"sli";s:10:"schlesisch";s:3:"sli";s:13:"sleesiansaksa";s:3:"sli";s:13:"silesia bawah";s:3:"sli";s:24:"sileziečių žemaičių";s:3:"sli";s:15:"silezisch duits";s:3:"sli";s:8:"samoaans";s:2:"sm";s:7:"samoanu";s:2:"sm";s:10:"samoa dili";s:2:"sm";s:6:"samoan";s:2:"sm";s:9:"samoanski";s:2:"sm";s:6:"samoà";s:2:"sm";s:11:"samojština";s:2:"sm";s:7:"samöeg";s:2:"sm";s:8:"samoansk";s:2:"sm";s:10:"samoanisch";s:2:"sm";s:11:"samošćina";s:2:"sm";s:8:"samoagbe";s:2:"sm";s:5:"samoa";s:2:"sm";s:7:"samoano";s:2:"sm";s:7:"samoera";s:2:"sm";s:8:"samoiskt";s:2:"sm";s:9:"samoaansk";s:2:"sm";s:7:"samóis";s:2:"sm";s:9:"samothais";s:2:"sm";s:12:"samoašćina";s:2:"sm";s:7:"szamoai";s:2:"sm";s:8:"samóska";s:2:"sm";s:12:"sammohanesch";s:2:"sm";s:10:"samoanesch";s:2:"sm";s:9:"samoāņu";s:2:"sm";s:7:"samojan";s:2:"sm";s:10:"samoaansch";s:2:"sm";s:10:"samoański";s:2:"sm";s:8:"samoană";s:2:"sm";s:11:"samoagiella";s:2:"sm";s:10:"samojčina";s:2:"sm";s:13:"samoanščina";s:2:"sm";s:9:"samoanska";s:2:"sm";s:9:"suid-sami";s:3:"sma";s:12:"sami del sur";s:3:"sma";s:11:"sámi ar su";s:3:"sma";s:15:"sami meridional";s:3:"sma";s:20:"sámština (jižní)";s:3:"sma";s:12:"sami deheuol";s:3:"sma";s:9:"sydsamisk";s:3:"sma";s:12:"süd-samisch";s:3:"sma";s:13:"southern sami";s:3:"sma";s:11:"sami du sud";s:3:"sma";s:11:"sûd-samysk";s:3:"sma";s:16:"sàmais dheasach";s:3:"sma";s:12:"saami do sur";s:3:"sma";s:14:"süüd-samisch";s:3:"sma";s:12:"sami selatan";s:3:"sma";s:14:"suðursamíska";s:3:"sma";s:12:"sami del sud";s:3:"sma";s:44:"sami ភាគ​ខាង​ត្បូង";s:3:"sma";s:11:"südsamesch";s:3:"sma";s:10:"sørsamisk";s:3:"sma";s:14:"süüd-lappsch";s:3:"sma";s:11:"sami do sul";s:3:"sma";s:12:"sami dal sid";s:3:"sma";s:11:"sami de sud";s:3:"sma";s:15:"samishte jugore";s:3:"sma";s:10:"sydsamiska";s:3:"sma";s:5:"shona";s:2:"sn";s:8:"shonagbe";s:2:"sn";s:7:"shonera";s:2:"sn";s:7:"seoinis";s:2:"sn";s:7:"schhona";s:2:"sn";s:4:"sona";s:2:"sn";s:11:"schi-schona";s:2:"sn";s:6:"schona";s:2:"sn";s:5:"szona";s:2:"sn";s:8:"shonisht";s:2:"sn";s:9:"shoniycha";s:2:"sn";s:10:"soomaaliga";s:2:"so";s:8:"somalies";s:2:"so";s:12:"somalia kasa";s:2:"so";s:8:"somalín";s:2:"so";s:6:"somali";s:2:"so";s:9:"somalikan";s:2:"so";s:8:"somalski";s:2:"so";s:12:"somálština";s:2:"so";s:7:"somaleg";s:2:"so";s:8:"somalisk";s:2:"so";s:13:"somališćina";s:2:"so";s:10:"somaliagbe";s:2:"so";s:6:"somala";s:2:"so";s:7:"somalí";s:2:"so";s:7:"somaali";s:2:"so";s:9:"somaliera";s:2:"so";s:7:"somalii";s:2:"so";s:9:"somaliskt";s:2:"so";s:5:"somal";s:2:"so";s:8:"somalysk";s:2:"so";s:9:"somáilis";s:2:"so";s:9:"somàilis";s:2:"so";s:10:"szomáliai";s:2:"so";s:9:"sómalska";s:2:"so";s:6:"somalo";s:2:"so";s:10:"somaalesch";s:2:"so";s:12:"somaliečių";s:2:"so";s:8:"somāļu";s:2:"so";s:11:"somalianina";s:2:"so";s:9:"somaalsch";s:2:"so";s:9:"somalisch";s:2:"so";s:10:"somalijski";s:2:"so";s:9:"somaleză";s:2:"so";s:8:"somalïi";s:2:"so";s:11:"somálčina";s:2:"so";s:12:"somalščina";s:2:"so";s:8:"soomaali";s:2:"so";s:9:"somalisht";s:2:"so";s:9:"somaliska";s:2:"so";s:8:"somalice";s:2:"so";s:9:"somalicha";s:2:"so";s:5:"shqip";s:2:"sq";s:11:"se-albanian";s:2:"sq";s:7:"serwies";s:2:"sr";s:6:"serbiu";s:2:"sr";s:4:"serb";s:2:"sr";s:6:"serbeg";s:2:"sr";s:6:"srpski";s:2:"sr";s:5:"serbi";s:2:"sr";s:9:"srbština";s:2:"sr";s:7:"serbisk";s:2:"sr";s:8:"serbisch";s:2:"sr";s:12:"serbišćina";s:2:"sr";s:9:"serbiagbe";s:2:"sr";s:7:"serbian";s:2:"sr";s:5:"serba";s:2:"sr";s:6:"serbio";s:2:"sr";s:6:"serbia";s:2:"sr";s:8:"serbiera";s:2:"sr";s:8:"serbiskt";s:2:"sr";s:5:"serbe";s:2:"sr";s:4:"serp";s:2:"sr";s:7:"servysk";s:2:"sr";s:7:"seirbis";s:2:"sr";s:8:"sèirbis";s:2:"sr";s:7:"sabiyan";s:2:"sr";s:5:"szerb";s:2:"sr";s:5:"serbo";s:2:"sr";s:9:"serbneska";s:2:"sr";s:9:"särbesch";s:2:"sr";s:8:"serbesch";s:2:"sr";s:6:"serbų";s:2:"sr";s:5:"serbu";s:2:"sr";s:7:"serbsch";s:2:"sr";s:8:"servisch";s:2:"sr";s:7:"serbski";s:2:"sr";s:7:"sérvio";s:2:"sr";s:11:"serbio simi";s:2:"sr";s:7:"sârbă";s:2:"sr";s:12:"serbiagiella";s:2:"sr";s:8:"srbčina";s:2:"sr";s:10:"srbščina";s:2:"sr";s:10:"seerbiyaan";s:2:"sr";s:8:"serbisht";s:2:"sr";s:10:"se-serbian";s:2:"sr";s:8:"serbiska";s:2:"sr";s:8:"sırpça";s:2:"sr";s:7:"serbcha";s:2:"sr";s:25:"serbian (cyrillic script)";s:5:"sr-ec";s:20:"srpski (latinica)‎";s:5:"sr-el";s:22:"serbian (latin script)";s:5:"sr-el";s:11:"sranantongo";s:3:"srn";s:12:"sranan tongo";s:3:"srn";s:17:"sranan tonqo dili";s:3:"srn";s:15:"srananski tongo";s:3:"srn";s:6:"sranan";s:3:"srn";s:10:"srananisch";s:3:"srn";s:7:"sranani";s:3:"srn";s:14:"szranai tongó";s:3:"srn";s:10:"srananesch";s:3:"srn";s:10:"sranantogo";s:3:"srn";s:11:"surinaamsch";s:3:"srn";s:23:"surinamska kreolščina";s:3:"srn";s:7:"siswati";s:2:"ss";s:5:"swazi";s:2:"ss";s:5:"swati";s:2:"ss";s:10:"svati dili";s:2:"ss";s:5:"svati";s:2:"ss";s:12:"siswatština";s:2:"ss";s:7:"swatgbe";s:2:"ss";s:6:"svazia";s:2:"ss";s:6:"svaasi";s:2:"ss";s:8:"swatiera";s:2:"ss";s:8:"swatiskt";s:2:"ss";s:7:"suaisis";s:2:"ss";s:9:"sziszuati";s:2:"ss";s:6:"svatí";s:2:"ss";s:11:"si-swatesch";s:2:"ss";s:5:"svatu";s:2:"ss";s:11:"svazijčina";s:2:"ss";s:13:"svazijščina";s:2:"ss";s:7:"sisvati";s:2:"ss";s:7:"sesotho";s:2:"st";s:10:"suid-sotho";s:2:"st";s:13:"sotho del sur";s:2:"st";s:11:"sesoto dili";s:2:"st";s:11:"sotho ar su";s:2:"st";s:6:"sesoto";s:2:"st";s:16:"sotho meridional";s:2:"st";s:19:"sotština (jižní)";s:2:"st";s:8:"sesotheg";s:2:"st";s:8:"sydsotho";s:2:"st";s:18:"süd-sotho-sprache";s:2:"st";s:14:"southern sotho";s:2:"st";s:4:"sota";s:2:"st";s:18:"sesotho meridional";s:2:"st";s:17:"sotho meridionâl";s:2:"st";s:10:"sûd-sotho";s:2:"st";s:10:"seasóitis";s:2:"st";s:22:"süüd-sotho-schpraach";s:2:"st";s:9:"sesotanci";s:2:"st";s:8:"sesotski";s:2:"st";s:9:"szeszotó";s:2:"st";s:13:"sotho selatan";s:2:"st";s:12:"suðursótó";s:2:"st";s:13:"sotho del sud";s:2:"st";s:10:"söd-sooto";s:2:"st";s:18:"süd-sotho-sprooch";s:2:"st";s:15:"soto, t’isfel";s:2:"st";s:10:"sør-sotho";s:2:"st";s:12:"süüd-sotho";s:2:"st";s:9:"sørsotho";s:2:"st";s:17:"sotho południowy";s:2:"st";s:11:"soto do sul";s:2:"st";s:13:"sotho dal sid";s:2:"st";s:7:"sesooto";s:2:"st";s:9:"seeltersk";s:3:"stq";s:14:"saterfriesisch";s:3:"stq";s:17:"saterfrizišćina";s:3:"stq";s:17:"saterland frisian";s:3:"stq";s:17:"saterlandinfriisi";s:3:"stq";s:14:"saterfriesesch";s:3:"stq";s:17:"saterlendo fryzų";s:3:"stq";s:10:"saterfries";s:3:"stq";s:13:"saterfrisiska";s:3:"stq";s:18:"saterland frizcesi";s:3:"stq";s:9:"sundanees";s:2:"su";s:9:"sondanés";s:2:"su";s:5:"sudan";s:2:"su";s:8:"sundaneg";s:2:"su";s:8:"sudanski";s:2:"su";s:9:"sundanès";s:2:"su";s:10:"sundština";s:2:"su";s:8:"swndaneg";s:2:"su";s:11:"sundanesisk";s:2:"su";s:12:"sundanesisch";s:2:"su";s:13:"sundanšćina";s:2:"su";s:8:"sudangbe";s:2:"su";s:9:"sundanese";s:2:"su";s:5:"sunda";s:2:"su";s:9:"sundanés";s:2:"su";s:9:"sundanera";s:2:"su";s:12:"sundanesiskt";s:2:"su";s:10:"soundanais";s:2:"su";s:9:"sundanês";s:2:"su";s:11:"soendaneesk";s:2:"su";s:7:"sundais";s:2:"su";s:9:"sundanski";s:2:"su";s:16:"sundanezišćina";s:2:"su";s:10:"szundanéz";s:2:"su";s:10:"súndanska";s:2:"su";s:13:"sindaneesesch";s:2:"su";s:12:"sundanesesch";s:2:"su";s:6:"sundų";s:2:"su";s:11:"sundaniešu";s:2:"su";s:9:"sundaniż";s:2:"su";s:11:"sundaneesch";s:2:"su";s:10:"soendanees";s:2:"su";s:9:"sundajski";s:2:"su";s:9:"sundanais";s:2:"su";s:10:"sundaneză";s:2:"su";s:9:"sundčina";s:2:"su";s:13:"sundanščina";s:2:"su";s:10:"suudaaniis";s:2:"su";s:10:"sundanisht";s:2:"su";s:12:"se-sundanese";s:2:"su";s:12:"sundanesiska";s:2:"su";s:10:"sunda dili";s:2:"su";s:9:"sundancha";s:2:"su";s:7:"svenska";s:2:"sv";s:6:"sweeds";s:2:"sv";s:11:"sweden kasa";s:2:"sv";s:5:"suecu";s:2:"sv";s:10:"suwɛdikan";s:2:"sv";s:6:"svedeg";s:2:"sv";s:4:"suec";s:2:"sv";s:6:"swedeg";s:2:"sv";s:6:"svensk";s:2:"sv";s:10:"schwedisch";s:2:"sv";s:9:"swedengbe";s:2:"sv";s:7:"swedish";s:2:"sv";s:5:"sveda";s:2:"sv";s:5:"sueco";s:2:"sv";s:8:"suediera";s:2:"sv";s:9:"sweedeere";s:2:"sv";s:7:"svenskt";s:2:"sv";s:8:"suédois";s:2:"sv";s:7:"svedês";s:2:"sv";s:10:"sualainnis";s:2:"sv";s:7:"suainis";s:2:"sv";s:5:"svéd";s:2:"sv";s:7:"svedese";s:2:"sv";s:6:"swedia";s:2:"sv";s:12:"sụwidiishi";s:2:"sv";s:7:"sænska";s:2:"sv";s:10:"svenskisut";s:2:"sv";s:11:"schweedesch";s:2:"sv";s:10:"schwedesch";s:2:"sv";s:5:"soisa";s:2:"sv";s:6:"sweden";s:2:"sv";s:7:"svediż";s:2:"sv";s:8:"sweedsch";s:2:"sv";s:8:"szwedzki";s:2:"sv";s:10:"sueco simi";s:2:"sv";s:7:"svedais";s:2:"sv";s:8:"suedeză";s:2:"sv";s:8:"sueduäa";s:2:"sv";s:8:"swiidhis";s:2:"sv";s:8:"suedisht";s:2:"sv";s:9:"se-sweden";s:2:"sv";s:8:"shvedcha";s:2:"sv";s:7:"swahili";s:2:"sw";s:9:"suaḥili";s:2:"sw";s:7:"suahili";s:2:"sw";s:7:"svahili";s:2:"sw";s:12:"svahilština";s:2:"sw";s:7:"suaheli";s:2:"sw";s:14:"swahilišćina";s:2:"sw";s:7:"svahila";s:2:"sw";s:8:"suahiili";s:2:"sw";s:10:"svahaílis";s:2:"sw";s:13:"suahelšćina";s:2:"sw";s:9:"szuahéli";s:2:"sw";s:9:"svahílí";s:2:"sw";s:13:"swahilimiutut";s:2:"sw";s:11:"suaheelesch";s:2:"sw";s:9:"suahilių";s:2:"sw";s:8:"swaħili";s:2:"sw";s:9:"suwahilii";s:2:"sw";s:7:"suaíli";s:2:"sw";s:12:"suajili simi";s:2:"sw";s:11:"svahilčina";s:2:"sw";s:9:"sawaaxili";s:2:"sw";s:10:"suahilisht";s:2:"sw";s:10:"se-swahili";s:2:"sw";s:9:"svahilcha";s:2:"sw";s:9:"silesianu";s:3:"szl";s:10:"slezština";s:3:"szl";s:8:"silesieg";s:3:"szl";s:18:"schlesisch (polen)";s:3:"szl";s:8:"silesian";s:3:"szl";s:7:"sleesia";s:3:"szl";s:9:"silésien";s:3:"szl";s:9:"siléisis";s:3:"szl";s:7:"silesia";s:3:"szl";s:8:"slesiano";s:3:"szl";s:10:"schlesesch";s:3:"szl";s:12:"sileziečių";s:3:"szl";s:9:"silezisch";s:3:"szl";s:9:"silesiska";s:3:"szl";s:9:"silezyaca";s:3:"szl";s:8:"se-tamil";s:2:"ta";s:9:"se-telegu";s:2:"te";s:7:"se-thai";s:2:"th";s:11:"se-tigrinya";s:2:"ti";s:8:"setswana";s:2:"tn";s:10:"svana dili";s:2:"tn";s:13:"setswanština";s:2:"tn";s:9:"setchwana";s:2:"tn";s:8:"suáinis";s:2:"tn";s:10:"szecsuáni";s:2:"tn";s:12:"se-zwaanesch";s:2:"tn";s:13:"setsuana simi";s:2:"tn";s:8:"setsvana";s:2:"tn";s:8:"se-theki";s:2:"tr";s:10:"sonqa dili";s:2:"ts";s:7:"songais";s:2:"ts";s:24:"sentraal atlas tamazight";s:3:"tzm";s:27:"sentralmarokkansk tamazight";s:3:"tzm";s:10:"se-ukrania";s:2:"uk";s:7:"se-urdu";s:2:"ur";s:8:"se-uzbek";s:2:"uz";s:10:"se-vietnam";s:2:"vi";s:9:"sinaeg wu";s:3:"wuu";s:5:"sósa";s:2:"xh";s:8:"se xhosa";s:2:"xh";s:10:"siuáingis";s:2:"za";s:6:"súang";s:2:"za";s:12:"seeländisch";s:3:"zea";s:8:"seelanti";s:3:"zea";s:11:"séalainnis";s:3:"zea";s:12:"seelännesch";s:3:"zea";s:7:"sjinees";s:2:"zh";s:9:"siniwakan";s:2:"zh";s:6:"sinaeg";s:2:"zh";s:9:"sinuwaare";s:2:"zh";s:7:"sineesk";s:2:"zh";s:6:"sínis";s:2:"zh";s:6:"sìnis";s:2:"zh";s:12:"schineesesch";s:2:"zh";s:15:"sinoa, mandarin";s:2:"zh";s:8:"shinuäa";s:2:"zh";s:19:"sadələşmiş çin";s:7:"zh-hans";s:14:"sinaeg eeunaet";s:7:"zh-hans";s:18:"simplified chinese";s:7:"zh-hans";s:17:"sínis shimplithe";s:7:"zh-hans";s:18:"sìnis shimplichte";s:7:"zh-hans";s:36:"schineesesch en de eijfacher schreff";s:7:"zh-hans";s:21:"supaprastintoji kinų";s:7:"zh-hans";s:26:"soddalashtirilgan xitoycha";s:7:"zh-hans";s:16:"sinaeg hengounel";s:7:"zh-hant";s:21:"sínis thraidisiúnta";s:7:"zh-hant";s:20:"sìnis thradaiseanta";s:7:"zh-hant";s:41:"schineesesch en de tradizjonälle schreff";s:7:"zh-hant";s:4:"swlw";s:2:"zu";s:5:"suulu";s:2:"zu";s:11:"suluŋkoore";s:2:"zu";s:4:"sulu";s:2:"zu";s:8:"súlúis";s:2:"zu";s:6:"súlú";s:2:"zu";s:7:"se zulu";s:2:"zu";s:28:"stöðluð nútímaarabíska";s:6:"ar-001";s:20:"schtandatt arahbesch";s:6:"ar-001";s:30:"sodobna standardna arabščina";s:6:"ar-001";s:5:"sjiga";s:3:"cgg";s:14:"staroegipatski";s:3:"egy";s:14:"sean-Éigiptis";s:3:"egy";s:21:"senovės egiptiečių";s:3:"egy";s:19:"starożytny egipski";s:3:"egy";s:14:"staroegyptský";s:3:"egy";s:21:"stara egipčanščina";s:3:"egy";s:10:"se-tagalog";s:3:"fil";s:24:"ఫిలిపినో";s:3:"fil";s:8:"shambala";s:3:"ksb";s:10:"shambalera";s:3:"ksb";s:7:"sambala";s:3:"ksb";s:8:"sjambala";s:3:"ksb";s:11:"shambalisht";s:3:"ksb";s:11:"shambalacha";s:3:"ksb";s:34:"složené (víceřádkové) jazyky";s:3:"mul";s:16:"sjeverni ndebele";s:2:"nd";s:15:"sewjero-ndebele";s:2:"nd";s:15:"severni ndebele";s:2:"nd";s:16:"severné ndebele";s:2:"nd";s:21:"severna ndebelščina";s:2:"nd";s:18:"shimoliy ndebelcha";s:2:"nd";s:24:"ఫ్లెమిష్";s:5:"nl-be";s:12:"suid-ndebele";s:2:"nr";s:10:"sydndebele";s:2:"nr";s:20:"süd-ndebele-sprache";s:2:"nr";s:13:"south ndebele";s:2:"nr";s:11:"sûd-ndbele";s:2:"nr";s:24:"süüd-ndebele-schpraach";s:2:"nr";s:13:"suðurndebele";s:2:"nr";s:20:"süd-ndebele-sprooch";s:2:"nr";s:12:"sør-ndebele";s:2:"nr";s:14:"süüd-ndebele";s:2:"nr";s:21:"ఫోనికన్";s:3:"phn";s:7:"samburu";s:3:"saq";s:8:"sambŵrw";s:3:"saq";s:10:"samburuera";s:3:"saq";s:8:"szamburu";s:3:"saq";s:9:"sambúrú";s:3:"saq";s:9:"sambūrų";s:3:"saq";s:13:"samburščina";s:3:"saq";s:10:"samburisht";s:3:"saq";s:9:"samburcha";s:3:"saq";s:5:"sangu";s:3:"sbp";s:5:"sanqu";s:3:"sbp";s:11:"sangoština";s:3:"sbp";s:5:"sangw";s:3:"sbp";s:8:"sangugbe";s:3:"sbp";s:8:"sanguera";s:3:"sbp";s:6:"szangu";s:3:"sbp";s:6:"sangú";s:3:"sbp";s:6:"sangų";s:3:"sbp";s:13:"sangujščina";s:3:"sbp";s:9:"sanguisht";s:3:"sbp";s:10:"sanguancha";s:3:"sbp";s:4:"sena";s:3:"seh";s:6:"senera";s:3:"seh";s:5:"szena";s:3:"seh";s:5:"senų";s:3:"seh";s:4:"senu";s:3:"seh";s:9:"senaishte";s:3:"seh";s:8:"seniycha";s:3:"seh";s:16:"songhai oriental";s:3:"ses";s:18:"senishte kojrabore";s:3:"ses";s:12:"sámi luleå";s:3:"smj";s:9:"sami lule";s:3:"smj";s:22:"sámština (lulejská)";s:3:"smj";s:9:"sami lwle";s:3:"smj";s:12:"sami de lule";s:3:"smj";s:12:"sáimis lule";s:3:"smj";s:12:"sàmais lule";s:3:"smj";s:10:"saami lule";s:3:"smj";s:12:"sami di lule";s:3:"smj";s:14:"sami lule simi";s:3:"smj";s:11:"sami (lule)";s:3:"smj";s:15:"samishte luleje";s:3:"smj";s:11:"sámi inari";s:3:"smn";s:14:"sami d’inari";s:3:"smn";s:23:"sámština (inarijská)";s:3:"smn";s:10:"sami inari";s:3:"smn";s:13:"sàmais inari";s:3:"smn";s:11:"saami inari";s:3:"smn";s:13:"sami di inari";s:3:"smn";s:15:"sami inari simi";s:3:"smn";s:12:"sami (inari)";s:3:"smn";s:15:"samishte inarie";s:3:"smn";s:10:"skolt sami";s:3:"sms";s:5:"skolt";s:3:"sms";s:11:"sámi skolt";s:3:"sms";s:14:"skoltski jezik";s:3:"sms";s:10:"sami skolt";s:3:"sms";s:22:"sámština (skoltská)";s:3:"sms";s:10:"sami scolt";s:3:"sms";s:12:"skoltesamisk";s:3:"sms";s:14:"skolt-lappisch";s:3:"sms";s:17:"skolt-samišćina";s:3:"sms";s:13:"skolt samiera";s:3:"sms";s:13:"sàmais skolt";s:3:"sms";s:11:"saami skolt";s:3:"sms";s:13:"skolt-samisch";s:3:"sms";s:14:"skoltesamíska";s:3:"sms";s:14:"skolt-lappesch";s:3:"sms";s:13:"skolto samių";s:3:"sms";s:10:"skoltsāmu";s:3:"sms";s:13:"skolt-lappsch";s:3:"sms";s:15:"sami skolt simi";s:3:"sms";s:12:"sami (skolt)";s:3:"sms";s:18:"samijščina skolt";s:3:"sms";s:15:"samishte skolte";s:3:"sms";s:12:"skoltsamiska";s:3:"sms";s:15:"shkolt semiycha";s:3:"sms";s:10:"shimaorees";s:3:"swb";s:8:"shimaore";s:3:"swb";s:9:"shimaoré";s:3:"swb";s:11:"shimaorisch";s:3:"swb";s:12:"shimaoríska";s:3:"swb";s:14:"shimaorigiella";s:3:"swb";s:8:"shikomor";s:3:"swb";s:15:"swahili (kongo)";s:3:"swc";s:17:"swahili del congo";s:3:"swc";s:17:"suahili del congo";s:3:"swc";s:20:"svahilština (kongo)";s:3:"swc";s:17:"swahili’r congo";s:3:"swc";s:16:"swahili du congo";s:3:"swc";s:21:"svahaílis an chongó";s:3:"swc";s:17:"suahili congolés";s:3:"swc";s:16:"suaíli do congo";s:3:"swc";s:13:"swahili congo";s:3:"swc";s:23:"svahilčina (konžská)";s:3:"swc";s:15:"svahili (kongo)";s:3:"swc";s:19:"suahilishte kongoje";s:3:"swc";s:10:"se-klingon";s:3:"tlh";s:7:"szavák";s:3:"twq";s:4:"soga";s:3:"xog";s:4:"soqa";s:3:"xog";s:9:"sogština";s:3:"xog";s:6:"sogera";s:3:"xog";s:5:"szoga";s:3:"xog";s:5:"sóga";s:3:"xog";s:5:"sogų";s:3:"xog";s:4:"sogu";s:3:"xog";s:10:"sogščina";s:3:"xog";s:7:"sogisht";s:3:"xog";s:8:"sogancha";s:3:"xog";s:31:"standaard marokkaanse tamazight";s:3:"zgh";s:30:"standardni marokanski tamazigt";s:3:"zgh";s:33:"standardny marokkański tamazight";s:3:"zgh";s:27:"standard moroccan tamazight";s:3:"zgh";s:31:"standert marokkaanske tamazight";s:3:"zgh";s:31:"standardni marokanski tamazight";s:3:"zgh";s:31:"staðlað marokkóskt tamazight";s:3:"zgh";s:30:"standartinė maroko tamazigtų";s:3:"zgh";s:28:"standarta marokāņu berberu";s:3:"zgh";s:29:"standard marrokansk tamazight";s:3:"zgh";s:27:"standardni maroški tamazig";s:3:"zgh";s:31:"standart berberi dili tamazight";s:3:"zgh";s:25:"standart marokash tamazit";s:3:"zgh";s:28:"sense contingut lingüístic";s:3:"zxx";s:27:"sin contenido lingüístico";s:3:"zxx";s:25:"sans contenu linguistique";s:3:"zxx";s:31:"susbaint nach eil ‘na chànan";s:3:"zxx";s:25:"sen contido lingüístico";s:3:"zxx";s:26:"sem conteúdo linguístico";s:3:"zxx";s:17:"saozneg aostralia";s:5:"en-au";s:17:"saesneg awstralia";s:5:"en-au";s:15:"saozneg amerika";s:5:"en-us";s:15:"saesneg america";s:5:"en-us";s:23:"spagnoleg amerika latin";s:6:"es-419";s:21:"sbaeneg america ladin";s:6:"es-419";s:27:"spagnûl de americhe latine";s:6:"es-419";s:30:"spáinnis mheiriceá laidinigh";s:6:"es-419";s:38:"spàinntis na h-aimeireaga laidinneach";s:6:"es-419";s:21:"spanyol amerika latin";s:6:"es-419";s:24:"spagnolo latinoamericano";s:6:"es-419";s:34:"schpaanesch uß latting-ammärrika";s:6:"es-419";s:22:"sepanyol amerika latin";s:6:"es-419";s:21:"spagnol latinamerican";s:6:"es-419";s:27:"spaniolă latino-americană";s:6:"es-419";s:27:"spanjishte amerikano-latine";s:6:"es-419";s:16:"spagnoleg europa";s:5:"es-es";s:13:"sbaeneg ewrop";s:5:"es-es";s:15:"spagnûl iberic";s:5:"es-es";s:17:"spáinnis eorpach";s:5:"es-es";s:19:"spàinntis eòrpach";s:5:"es-es";s:13:"spanyol eropa";s:5:"es-es";s:16:"spagnolo europeo";s:5:"es-es";s:25:"schpahnesch en schpahneje";s:5:"es-es";s:15:"sepanyol eropah";s:5:"es-es";s:14:"spagnol iberic";s:5:"es-es";s:20:"spaniolă europeană";s:5:"es-es";s:20:"spanjishte evropiane";s:5:"es-es";s:17:"schweizisk fransk";s:5:"fr-ch";s:22:"schweizer französisch";s:5:"fr-ch";s:30:"swizerlanɖtɔwo ƒe fransegbe";s:5:"fr-ch";s:12:"swiss french";s:5:"fr-ch";s:12:"svisa franca";s:5:"fr-ch";s:14:"sveitsinranska";s:5:"fr-ch";s:17:"switserse frânsk";s:5:"fr-ch";s:22:"schwiizer französisch";s:5:"fr-ch";s:15:"svájci francia";s:5:"fr-ch";s:17:"svissnesk franska";s:5:"fr-ch";s:22:"schwäizer franséisch";s:5:"fr-ch";s:16:"sveitsisk fransk";s:5:"fr-ch";s:20:"swiezer franzöösch";s:5:"fr-ch";s:21:"szwajcarski francuski";s:5:"fr-ch";s:18:"schweizisk franska";s:5:"fr-ch";s:23:"shvesariya fransuzchasi";s:5:"fr-ch";s:13:"staroetiopski";s:3:"gez";s:22:"se-portugal (portugal)";s:5:"pt-pt";s:6:"sidamo";s:3:"sid";s:11:"sidamo dili";s:3:"sid";s:8:"szidamó";s:3:"sid";s:8:"sídamó";s:3:"sid";s:6:"sidamu";s:3:"sid";s:12:"sidamščina";s:3:"sid";s:10:"sydaltaisk";s:3:"alt";s:13:"süd-altaisch";s:3:"alt";s:14:"southern altai";s:3:"alt";s:13:"sûd-altaïsk";s:3:"alt";s:15:"süüd-altaisch";s:3:"alt";s:15:"suðuraltaíska";s:3:"alt";s:12:"süd-alaesch";s:3:"alt";s:11:"søraltaisk";s:3:"alt";s:10:"sør-altai";s:3:"alt";s:11:"sydaltaiska";s:3:"alt";s:7:"siksika";s:3:"bla";s:13:"siksikə dili";s:3:"bla";s:7:"siksiku";s:3:"bla";s:7:"síbsja";s:3:"chb";s:9:"sjagataí";s:3:"chg";s:10:"sjúkíska";s:3:"chk";s:7:"sínúk";s:3:"chn";s:11:"sípevíska";s:3:"chp";s:4:"siuu";s:3:"dak";s:5:"slave";s:3:"den";s:6:"slavey";s:3:"den";s:7:"slavski";s:3:"den";s:30:"slejvština (athabaský jazyk)";s:3:"den";s:6:"sleivi";s:3:"den";s:5:"slevi";s:3:"den";s:6:"sclâf";s:3:"den";s:6:"szlevi";s:3:"den";s:9:"slavneska";s:3:"den";s:6:"sleivu";s:3:"den";s:4:"slav";s:3:"den";s:7:"slavisk";s:3:"den";s:6:"slavej";s:3:"den";s:11:"slovančina";s:3:"den";s:13:"slavejščina";s:3:"den";s:17:"srednji holandski";s:3:"dum";s:20:"stredná holandčina";s:3:"dum";s:22:"srednja nizozemščina";s:3:"dum";s:16:"srednji engleski";s:3:"enm";s:13:"saesneg canol";s:3:"enm";s:20:"stredná angličtina";s:3:"enm";s:20:"srednja angleščina";s:3:"enm";s:15:"ఫాంగ్";s:3:"fan";s:15:"ఫాంటి";s:3:"fat";s:12:"ఫాన్";s:3:"fon";s:17:"srednji francuski";s:3:"frm";s:23:"stredná francúzština";s:3:"frm";s:21:"srednja francoščina";s:3:"frm";s:14:"starofrancuski";s:3:"fro";s:14:"sean-fhraincis";s:3:"fro";s:15:"seann-fhraingis";s:3:"fro";s:17:"senoji prancūzų";s:3:"fro";s:10:"senfranču";s:3:"fro";s:21:"stará francúzština";s:3:"fro";s:19:"stara francoščina";s:3:"fro";s:12:"saterfreesch";s:3:"frs";s:23:"srednji visoki nemački";s:3:"gmh";s:24:"stredná horná nemčina";s:3:"gmh";s:25:"srednja visoka nemščina";s:3:"gmh";s:13:"staronemački";s:3:"goh";s:21:"sean-ard-ghearmáinis";s:3:"goh";s:22:"seann-Àrd-gearmailtis";s:3:"goh";s:22:"staronjemački, visoki";s:3:"goh";s:29:"senoji aukštosios vokietijos";s:3:"goh";s:13:"senaugšvācu";s:3:"goh";s:22:"staro-wysoko-niemiecki";s:3:"goh";s:22:"stará horná nemčina";s:3:"goh";s:23:"stara visoka nemščina";s:3:"goh";s:7:"sakisch";s:3:"kho";s:4:"saki";s:3:"kho";s:7:"sakesch";s:3:"kho";s:7:"saaksch";s:3:"kho";s:13:"srednji irski";s:3:"mga";s:17:"stredná írčina";s:3:"mga";s:17:"srednja irščina";s:3:"mga";s:12:"stari norski";s:3:"non";s:16:"sean-lochlainnis";s:3:"non";s:17:"seann-lochlannais";s:3:"non";s:14:"staronorveški";s:3:"non";s:12:"sennorvēģu";s:3:"non";s:16:"skandinav, antik";s:3:"non";s:14:"staronordyjski";s:3:"non";s:16:"stará nórčina";s:3:"non";s:19:"stara nordijščina";s:3:"non";s:14:"staropersijski";s:3:"peo";s:14:"staroperština";s:3:"peo";s:13:"sean-pheirsis";s:3:"peo";s:14:"seann-pheirsis";s:3:"peo";s:14:"staroperzijski";s:3:"peo";s:13:"senoji persų";s:3:"peo";s:8:"senpersu";s:3:"peo";s:11:"staroperski";s:3:"peo";s:17:"stará perzština";s:3:"peo";s:19:"stara perzijščina";s:3:"peo";s:17:"staroprovansalski";s:3:"pro";s:20:"senovės provansalų";s:3:"pro";s:15:"senprovansiešu";s:3:"pro";s:17:"staroprowansalski";s:3:"pro";s:20:"stará okcitánčina";s:3:"pro";s:22:"stara provansalščina";s:3:"pro";s:12:"sandave dili";s:3:"sad";s:7:"sandawe";s:3:"sad";s:7:"sandave";s:3:"sad";s:12:"sandawština";s:3:"sad";s:9:"sandäweg";s:3:"sad";s:15:"sandawe-sprache";s:3:"sad";s:17:"sandawe-schpraach";s:3:"sad";s:8:"szandave";s:3:"sad";s:15:"sandawe-sprooch";s:3:"sad";s:7:"sandavi";s:3:"sad";s:7:"sandavu";s:3:"sad";s:14:"samaritan dili";s:3:"sam";s:22:"samaritanski aramejski";s:3:"sam";s:11:"samarština";s:3:"sam";s:11:"samaritansk";s:3:"sam";s:13:"samaritanisch";s:3:"sam";s:17:"samaritan aramaic";s:3:"sam";s:15:"samaaria aramea";s:3:"sam";s:14:"samarianaramea";s:3:"sam";s:21:"samaritaansk-arameesk";s:3:"sam";s:22:"samarijanski aramejski";s:3:"sam";s:20:"szamaritánus arámi";s:3:"sam";s:19:"samversk arameíska";s:3:"sam";s:13:"samaritanesch";s:3:"sam";s:18:"samarėjų aramių";s:3:"sam";s:20:"samārijas aramiešu";s:3:"sam";s:8:"samritan";s:3:"sam";s:20:"samaritansk arameisk";s:3:"sam";s:13:"samaritaansch";s:3:"sam";s:19:"samaritaans-aramees";s:3:"sam";s:23:"samarytański aramejski";s:3:"sam";s:25:"samaritánska aramejčina";s:3:"sam";s:26:"samaritanska aramejščina";s:3:"sam";s:12:"samaritanska";s:3:"sam";s:17:"samarit aramcası";s:3:"sam";s:5:"sasak";s:3:"sas";s:10:"sasak dili";s:3:"sas";s:11:"sasakština";s:3:"sas";s:7:"sasaceg";s:3:"sas";s:6:"sasaki";s:3:"sas";s:6:"sasaku";s:3:"sas";s:5:"saska";s:3:"sas";s:10:"sasačtina";s:3:"sas";s:11:"sasaščina";s:3:"sas";s:11:"selkup dili";s:3:"sel";s:6:"selkap";s:3:"sel";s:6:"selkup";s:3:"sel";s:12:"selkupština";s:3:"sel";s:8:"selcypeg";s:3:"sel";s:9:"selkupisk";s:3:"sel";s:10:"selkupisch";s:3:"sel";s:8:"sölkupi";s:3:"sel";s:8:"selkuppi";s:3:"sel";s:8:"selkoupe";s:3:"sel";s:9:"selkupski";s:3:"sel";s:8:"szölkup";s:3:"sel";s:7:"selkúp";s:3:"sel";s:10:"selkupesch";s:3:"sel";s:7:"selkupu";s:3:"sel";s:9:"selkupsch";s:3:"sel";s:8:"selkoeps";s:3:"sel";s:13:"selkupagiella";s:3:"sel";s:11:"selkupčina";s:3:"sel";s:13:"selkupščina";s:3:"sel";s:10:"staroirski";s:3:"sga";s:13:"sean-ghaeilge";s:3:"sga";s:14:"seann-ghaeilge";s:3:"sga";s:13:"senoji airių";s:3:"sga";s:7:"senīru";s:3:"sga";s:14:"staroirlandzki";s:3:"sga";s:15:"stará írčina";s:3:"sga";s:15:"stara irščina";s:3:"sga";s:4:"shan";s:3:"shn";s:13:"schan-sprache";s:3:"shn";s:15:"schan-schpraach";s:3:"shn";s:3:"san";s:3:"shn";s:4:"sjan";s:3:"shn";s:13:"schan-sprooch";s:3:"shn";s:5:"schan";s:3:"shn";s:9:"shan dili";s:3:"shn";s:7:"soninke";s:3:"snk";s:12:"soninke dili";s:3:"snk";s:11:"sonikština";s:3:"snk";s:8:"soninceg";s:3:"snk";s:15:"soninke-sprache";s:3:"snk";s:8:"soninké";s:3:"snk";s:17:"soninke-schpraach";s:3:"snk";s:8:"szoninke";s:3:"snk";s:8:"sóninke";s:3:"snk";s:15:"soninke-sprooch";s:3:"snk";s:7:"soninku";s:3:"snk";s:9:"soninquê";s:3:"snk";s:13:"soqdiyen dili";s:3:"sog";s:7:"sogdieg";s:3:"sog";s:12:"sodžijenski";s:3:"sog";s:7:"sogdià";s:3:"sog";s:10:"sogdština";s:3:"sog";s:6:"sogdeg";s:3:"sog";s:9:"sogdiansk";s:3:"sog";s:8:"sogdisch";s:3:"sog";s:7:"sogdien";s:3:"sog";s:8:"sogdiano";s:3:"sog";s:5:"sogdi";s:3:"sog";s:7:"sogdysk";s:3:"sog";s:10:"sogdánais";s:3:"sog";s:8:"sogdíen";s:3:"sog";s:8:"sogdesch";s:3:"sog";s:9:"sogdiešu";s:3:"sog";s:7:"sogdisk";s:3:"sog";s:9:"sogdyjski";s:3:"sog";s:7:"sogdian";s:3:"sog";s:11:"sogdijčina";s:3:"sog";s:8:"sogdiska";s:3:"sog";s:13:"sogdiana dili";s:3:"sog";s:5:"serer";s:3:"srr";s:11:"serer dilii";s:3:"srr";s:11:"sererština";s:3:"srr";s:13:"serer-sprache";s:3:"srr";s:6:"sereri";s:3:"srr";s:8:"sérère";s:3:"srr";s:15:"serer-schpraach";s:3:"srr";s:6:"szerer";s:3:"srr";s:13:"serer-sprooch";s:3:"srr";s:7:"sererų";s:3:"srr";s:7:"serēru";s:3:"srr";s:6:"serere";s:3:"srr";s:12:"sererščina";s:3:"srr";s:6:"sukuma";s:3:"suk";s:11:"sukuma dili";s:3:"suk";s:6:"swcwma";s:3:"suk";s:14:"sukuma-sprache";s:3:"suk";s:16:"sukuma-schpraach";s:3:"suk";s:7:"szukuma";s:3:"suk";s:8:"súkúma";s:3:"suk";s:14:"sukuma-sprooch";s:3:"suk";s:6:"sukumu";s:3:"suk";s:4:"susu";s:3:"sus";s:9:"susu dili";s:3:"sus";s:5:"susú";s:3:"sus";s:7:"swsŵeg";s:3:"sus";s:7:"soussou";s:3:"sus";s:6:"soesoe";s:3:"sus";s:6:"szuszu";s:3:"sus";s:6:"súsú";s:3:"sus";s:5:"sosso";s:3:"sus";s:12:"susujščina";s:3:"sus";s:7:"sumeriu";s:3:"sux";s:13:"sumeryan dili";s:3:"sux";s:7:"sumereg";s:3:"sux";s:8:"sumerski";s:3:"sux";s:6:"sumeri";s:3:"sux";s:11:"sumerština";s:3:"sux";s:7:"swmereg";s:3:"sux";s:8:"sumerisk";s:3:"sux";s:9:"sumerisch";s:3:"sux";s:8:"sumerian";s:3:"sux";s:7:"sumerio";s:3:"sux";s:9:"sumérien";s:3:"sux";s:7:"sumeric";s:3:"sux";s:9:"soemerysk";s:3:"sux";s:10:"suiméiris";s:3:"sux";s:6:"sumér";s:3:"sux";s:7:"sumeria";s:3:"sux";s:9:"súmerska";s:3:"sux";s:6:"sumero";s:3:"sux";s:9:"sumeresch";s:3:"sux";s:8:"sumerjan";s:3:"sux";s:8:"sumersch";s:3:"sux";s:10:"soemerisch";s:3:"sux";s:10:"sumeryjski";s:3:"sux";s:8:"sumério";s:3:"sux";s:10:"sumeriană";s:3:"sux";s:10:"sumerčina";s:3:"sux";s:12:"sumerščina";s:3:"sux";s:9:"sumeriska";s:3:"sux";s:8:"sümerce";s:3:"sux";s:16:"siriacu clásicu";s:3:"syc";s:13:"sirieg klasel";s:3:"syc";s:16:"siríac clàssic";s:3:"syc";s:21:"syrština (klasická)";s:3:"syc";s:17:"siríaco clásico";s:3:"syc";s:18:"syriaque classique";s:3:"syc";s:23:"suraidheac chlasaigeach";s:3:"syc";s:13:"suriah klasik";s:3:"syc";s:16:"siriaco classico";s:3:"syc";s:8:"syriacki";s:3:"syc";s:18:"siríaco clássico";s:3:"syc";s:13:"siric classic";s:3:"syc";s:17:"siriacă clasică";s:3:"syc";s:7:"siriacu";s:3:"syr";s:11:"siryak dili";s:3:"syr";s:6:"sirieg";s:3:"syr";s:8:"sirijski";s:3:"syr";s:7:"siríac";s:3:"syr";s:9:"syrština";s:3:"syr";s:6:"syrieg";s:3:"syr";s:6:"syrisk";s:3:"syr";s:7:"syrisch";s:3:"syr";s:6:"syriac";s:3:"syr";s:7:"siriaco";s:3:"syr";s:8:"süüria";s:3:"syr";s:6:"syyria";s:3:"syr";s:8:"syriaque";s:3:"syr";s:6:"syrysk";s:3:"syr";s:7:"siricis";s:3:"syr";s:10:"suraidheac";s:3:"syr";s:8:"szíriai";s:3:"syr";s:6:"suriah";s:3:"syr";s:10:"sýrlenska";s:3:"syr";s:7:"syresch";s:3:"syr";s:5:"sirų";s:3:"syr";s:9:"sīriešu";s:3:"syr";s:6:"sirjan";s:3:"syr";s:7:"syyrsch";s:3:"syr";s:8:"syryjski";s:3:"syr";s:8:"siríaco";s:3:"syr";s:12:"siriaco simi";s:3:"syr";s:5:"siric";s:3:"syr";s:8:"siriacă";s:3:"syr";s:9:"sýrčina";s:3:"syr";s:10:"sirščina";s:3:"syr";s:7:"syriska";s:3:"syr";s:10:"süryanice";s:3:"syr";s:13:"simşyan dili";s:3:"tsi";s:9:"sapoteegi";s:3:"zap";s:8:"sapótek";s:3:"zap";s:8:"sapoteku";s:3:"zap";s:14:"símbols bliss";s:3:"zbl";s:15:"símbolos bliss";s:3:"zbl";s:14:"symboles bliss";s:3:"zbl";s:14:"símbolos blis";s:3:"zbl";s:16:"simbols da bliss";s:3:"zbl";s:15:"simboluri bilss";s:3:"zbl";s:13:"systém bliss";s:3:"zbl";s:6:"senaga";s:3:"zen";s:5:"sunji";s:3:"zun";s:6:"súní";s:3:"zun";s:4:"seki";s:3:"bum";s:19:"spagnoleg mecʼhiko";s:5:"es-mx";s:15:"sbaeneg mecsico";s:5:"es-mx";s:22:"spáinnis mheicsiceach";s:5:"es-mx";s:22:"spàinntis mheagsagach";s:5:"es-mx";s:18:"spanyol (mexikói)";s:5:"es-mx";s:15:"spanyol meksiko";s:5:"es-mx";s:18:"spagnolo messicano";s:5:"es-mx";s:23:"schpahnesch en mäxikoh";s:5:"es-mx";s:15:"sepanyol mexico";s:5:"es-mx";s:15:"spagnol mexican";s:5:"es-mx";s:19:"spaniolă mexicană";s:5:"es-mx";s:20:"spanjishte meksikane";s:5:"es-mx";s:11:"sinaeg xian";s:3:"hsn";s:10:"saurashtra";s:3:"saz";s:17:"saurášterština";s:3:"saz";s:10:"sauraštri";s:3:"saz";s:11:"sauraštrų";s:3:"saz";s:14:"saurasztryjski";s:3:"saz";s:7:"séneca";s:3:"see";s:6:"seneca";s:3:"see";s:7:"szeneka";s:3:"see";s:7:"senecų";s:3:"see";s:6:"seneku";s:3:"see";s:6:"seneka";s:3:"see";s:4:"saho";s:3:"ssy";s:6:"szahó";s:3:"ssy";s:6:"seediq";s:3:"trv";s:18:"semietsche spraken";s:3:"sem";s:14:"semitski jezik";s:3:"sem";s:13:"selajarština";s:3:"sly";s:7:"selayar";s:3:"sly";s:9:"selajarų";s:3:"sly";s:3:"sly";s:3:"sly";s:7:"sahurca";s:3:"tkr";s:6:"salish";s:3:"sal";s:17:"sališanski jezik";s:3:"sal";s:13:"sioux-spraken";s:3:"sio";s:14:"siuanski jezik";s:3:"sio";s:22:"sinotibeetsche spraken";s:3:"sit";s:21:"sino-tibetanski jezik";s:3:"sit";s:17:"slaavsche spraken";s:3:"sla";s:15:"slovenski jezik";s:3:"sla";s:10:"sami jezik";s:3:"smi";s:7:"songhai";s:3:"son";s:6:"songai";s:3:"son";s:7:"sorbsch";s:3:"wen";s:17:"sorbijanski jezik";s:3:"wen";}i:649;a:17:{s:30:"แอฟริกานส์";s:2:"af";s:12:"แฟโร";s:2:"fo";s:9:"แลซ";s:3:"lzz";s:12:"ሩንዲኛ";s:2:"rn";s:15:"แซงโก";s:2:"sg";s:27:"แอลเบเนีย";s:2:"sq";s:15:"แลนจี";s:3:"lag";s:21:"แซมบูรู";s:3:"saq";s:15:"แซงกู";s:3:"sbp";s:27:"แอฟริฮีลี";s:3:"afh";s:18:"แอตแซม";s:3:"cch";s:24:"แกรเลียน";s:3:"krl";s:15:"แลมบา";s:3:"lam";s:15:"แมนจู";s:3:"mnc";s:18:"แยงเบน";s:3:"yav";s:24:"แอละแบมา";s:3:"akz";s:24:"แซคเซอร์";s:3:"tkr";}i:200;a:99:{s:14:"Èdè afrikani";s:2:"af";s:11:"Èdè akani";s:2:"ak";s:13:"Èdè amariki";s:2:"am";s:13:"Èdè arabiki";s:2:"ar";s:17:"Èdè azerbaijani";s:2:"az";s:14:"Èdè belarusi";s:2:"be";s:13:"Èdè bugaria";s:2:"bg";s:13:"Èdè bengali";s:2:"bn";s:13:"Èdè bretoni";s:2:"br";s:12:"Èdè bosnia";s:2:"bs";s:12:"Èdè catala";s:2:"ca";s:11:"Èdè seeki";s:2:"cs";s:12:"Èdè welshi";s:2:"cy";s:21:"Èdè ilẹ̀ denmark";s:2:"da";s:20:"Èdè ilẹ̀ gemani";s:2:"de";s:22:"저지 소르비아어";s:3:"dsb";s:12:"Èdè giriki";s:2:"el";s:20:"Èdè gẹ̀ẹ́sì";s:2:"en";s:15:"Èdè esperanto";s:2:"eo";s:14:"Èdè sipanisi";s:2:"es";s:13:"Èdè estonia";s:2:"et";s:11:"Èdè baski";s:2:"eu";s:11:"Èdè pasia";s:2:"fa";s:12:"Èdè finisi";s:2:"fi";s:13:"Èdè faroesi";s:2:"fo";s:14:"Èdè faransé";s:2:"fr";s:12:"Èdè frisia";s:2:"fy";s:13:"Èdè ireland";s:2:"ga";s:28:"Èdè gaelik ti ilu scotland";s:2:"gd";s:13:"Èdè galicia";s:2:"gl";s:13:"Èdè guarani";s:2:"gn";s:14:"Èdè gujarati";s:2:"gu";s:11:"Èdè hausa";s:2:"ha";s:12:"Èdè heberu";s:2:"he";s:11:"Èdè hindi";s:2:"hi";s:13:"Èdè kroatia";s:2:"hr";s:14:"Èdè hungaria";s:2:"hu";s:17:"Èdè ile armenia";s:2:"hy";s:10:"Èdè pipo";s:2:"ia";s:15:"Èdè indonasia";s:2:"id";s:9:"Èdè ibo";s:2:"ig";s:15:"Èdè icelandic";s:2:"is";s:14:"Èdè italiani";s:2:"it";s:14:"Èdè japanisi";s:2:"ja";s:14:"Èdè javanasi";s:2:"jv";s:13:"Èdè georgia";s:2:"ka";s:12:"Èdè kameri";s:2:"km";s:13:"Èdè kannada";s:2:"kn";s:11:"Èdè koria";s:2:"ko";s:12:"Èdè latini";s:2:"la";s:15:"Èdè lithuania";s:2:"lt";s:14:"Èdè latvianu";s:2:"lv";s:15:"Èdè macedonia";s:2:"mk";s:13:"Èdè marathi";s:2:"mr";s:12:"Èdè malaya";s:2:"ms";s:11:"Èdè malta";s:2:"mt";s:13:"Èdè bumiisi";s:2:"my";s:16:"저지 독일어";s:3:"nds";s:12:"Èdè nepali";s:2:"ne";s:10:"Èdè duki";s:2:"nl";s:12:"Èdè norway";s:2:"no";s:14:"Èdè occitani";s:2:"oc";s:13:"Èdè punjabi";s:2:"pa";s:21:"Èdè ilẹ̀ polandi";s:2:"pl";s:14:"Èdè pọtugi";s:2:"pt";s:13:"Èdè romania";s:2:"ro";s:18:"Èdè ̣rọọsia";s:2:"ru";s:13:"Èdè ruwanda";s:2:"rw";s:19:"Èdè awon ara indo";s:2:"sa";s:12:"Èdè sindhi";s:2:"sd";s:21:"Èdè serbo-croatiani";s:2:"sh";s:15:"Èdè sinhalese";s:2:"si";s:13:"Èdè slovaki";s:2:"sk";s:14:"Èdè slovenia";s:2:"sl";s:17:"Èdè ara somalia";s:2:"so";s:13:"Èdè albania";s:2:"sq";s:12:"Èdè serbia";s:2:"sr";s:12:"Èdè sesoto";s:2:"st";s:12:"Èdè sudani";s:2:"su";s:15:"Èdè suwidiisi";s:2:"sv";s:13:"Èdè swahili";s:2:"sw";s:12:"Èdè tamili";s:2:"ta";s:12:"Èdè telugu";s:2:"te";s:9:"Èdè tai";s:2:"th";s:14:"Èdè tigrinya";s:2:"ti";s:13:"Èdè turkmen";s:2:"tk";s:17:"Èdè tọọkisi";s:2:"tr";s:12:"Èdè ukania";s:2:"uk";s:9:"Èdè udu";s:2:"ur";s:11:"Èdè uzbek";s:2:"uz";s:14:"Èdè jetinamu";s:2:"vi";s:11:"Èdè xhosa";s:2:"xh";s:14:"Èdè yiddishi";s:2:"yi";s:14:"Èdè yorùbá";s:2:"yo";s:13:"Èdè mandari";s:2:"zh";s:12:"Èdè Ṣulu";s:2:"zu";s:19:"Èipheitis Àrsaidh";s:3:"egy";s:14:"Èdè tagalogi";s:3:"fil";s:14:"Èdè klingoni";s:3:"tlh";}i:335;a:49:{s:15:"南非荷兰文";s:2:"af";s:15:"南非荷蘭文";s:2:"af";s:33:"南部アゼルバイジャン語";s:3:"azb";s:18:"南亞塞拜然文";s:3:"azb";s:24:"南部バローチー語";s:3:"bcc";s:9:"ഇവ്";s:2:"ee";s:24:"ഇംഗ്ലീഷ്";s:2:"en";s:39:"ഇന്റർലിൻ‌ഗ്വാ";s:2:"ia";s:30:"ഇൻഡോനേഷ്യൻ";s:2:"id";s:33:"ഇന്റർലിംഗ്വ";s:2:"ie";s:15:"ഇഗ്ബോ";s:2:"ig";s:27:"ഇനുപിയാക്";s:2:"ik";s:15:"ഇലോകോ";s:3:"ilo";s:24:"ഇംഗ്വിഷ്";s:3:"inh";s:9:"ഇഡോ";s:2:"io";s:27:"ഇറ്റാലിയൻ";s:2:"it";s:48:"ഇനുക്റ്റിറ്റട്ട്";s:2:"iu";s:27:"टाचेल्हिट";s:3:"shi";s:15:"南サーミ語";s:3:"sma";s:12:"南萨米文";s:3:"sma";s:12:"南薩米文";s:3:"sma";s:15:"南部ソト語";s:2:"st";s:12:"南索托文";s:2:"st";s:21:"टर्कमेन";s:2:"tk";s:21:"टागालोग";s:2:"tl";s:15:"टोंगन";s:2:"to";s:18:"टोङ्गन";s:2:"to";s:25:"टोक पिसिन";s:3:"tpi";s:18:"टर्किश";s:2:"tr";s:12:"ट्वी";s:2:"tw";s:24:"टुवीनियन";s:3:"tyv";s:12:"ഇൻകോ";s:3:"nqo";s:18:"南ンデベレ語";s:2:"nr";s:18:"南恩德贝勒文";s:2:"nr";s:15:"南地畢列文";s:2:"nr";s:28:"ഇനാരി സാമി";s:3:"smn";s:12:"टेसो";s:3:"teo";s:18:"टासवाक";s:3:"twq";s:21:"टाइग्रे";s:3:"tig";s:18:"南アルタイ語";s:3:"alt";s:15:"南阿尔泰文";s:3:"alt";s:15:"南阿爾泰文";s:3:"alt";s:12:"ഇബാൻ";s:3:"iba";s:15:"路易塞诺文";s:3:"lui";s:15:"路易塞諾文";s:3:"lui";s:18:"टिम्ने";s:3:"tem";s:21:"टोकेलाऊ";s:3:"tkl";s:18:"टुवालु";s:3:"tvl";s:21:"ഇബീബിയോ";s:3:"ibb";}i:98;a:873:{s:6:"blugbe";s:2:"ak";s:22:"boares eaŋgalasgiella";s:3:"ang";s:6:"baskir";s:2:"ba";s:7:"bashkir";s:2:"ba";s:9:"başqırd";s:2:"ba";s:7:"bachkir";s:2:"ba";s:10:"baškirski";s:2:"ba";s:7:"baixkir";s:2:"ba";s:13:"baškirština";s:2:"ba";s:10:"bashcorteg";s:2:"ba";s:12:"baschkirisch";s:2:"ba";s:14:"baškiršćina";s:2:"ba";s:9:"bashkigbe";s:2:"ba";s:8:"baŝkira";s:2:"ba";s:9:"baškiiri";s:2:"ba";s:11:"bashkirrera";s:2:"ba";s:10:"basjkiersk";s:2:"ba";s:10:"baiscíris";s:2:"ba";s:7:"baskír";s:2:"ba";s:8:"baschiro";s:2:"ba";s:13:"baschkihresch";s:2:"ba";s:12:"baschkiresch";s:2:"ba";s:9:"baškirų";s:2:"ba";s:9:"baškīru";s:2:"ba";s:6:"baxkir";s:2:"ba";s:9:"basjkirsk";s:2:"ba";s:12:"baschkiersch";s:2:"ba";s:9:"basjkiers";s:2:"ba";s:10:"baszkirski";s:2:"ba";s:11:"baskir simi";s:2:"ba";s:8:"baschkir";s:2:"ba";s:9:"bașkiră";s:2:"ba";s:7:"baškir";s:2:"ba";s:12:"baškirčina";s:2:"ba";s:14:"baškirščina";s:2:"ba";s:11:"bashkirisht";s:2:"ba";s:11:"basjkiriska";s:2:"ba";s:12:"başkırtça";s:2:"ba";s:10:"boshqircha";s:2:"ba";s:8:"boarisch";s:3:"bar";s:7:"bávaru";s:3:"bar";s:8:"bavarieg";s:3:"bar";s:11:"bavorština";s:3:"bar";s:8:"bairisch";s:3:"bar";s:8:"bavarian";s:3:"bar";s:7:"baijeri";s:3:"bar";s:8:"bavarois";s:3:"bar";s:9:"baváiris";s:3:"bar";s:7:"bavaria";s:3:"bar";s:8:"bavarese";s:3:"bar";s:8:"bairesch";s:3:"bar";s:7:"bavarų";s:3:"bar";s:6:"beiers";s:3:"bar";s:8:"bawarski";s:3:"bar";s:8:"bayerska";s:3:"bar";s:12:"bavyera dili";s:3:"bar";s:10:"batak toba";s:8:"bbc-latn";s:10:"batak-toba";s:3:"bbc";s:13:"bikol central";s:3:"bcl";s:12:"belarus kasa";s:2:"be";s:10:"bielorrusu";s:2:"be";s:7:"belarus";s:2:"be";s:13:"biyelorisikan";s:2:"be";s:9:"belaruseg";s:2:"be";s:10:"bjeloruski";s:2:"be";s:9:"bielorús";s:2:"be";s:13:"běloruština";s:2:"be";s:9:"belarwseg";s:2:"be";s:15:"běłorušćina";s:2:"be";s:12:"belarusiagbe";s:2:"be";s:10:"belarusian";s:2:"be";s:8:"belorusa";s:2:"be";s:10:"bielorruso";s:2:"be";s:13:"bielorrusiera";s:2:"be";s:9:"belaruuse";s:2:"be";s:11:"biélorusse";s:2:"be";s:9:"bielorùs";s:2:"be";s:12:"bealarúisis";s:2:"be";s:11:"bealaruisis";s:2:"be";s:11:"belarusanci";s:2:"be";s:8:"belorusz";s:2:"be";s:10:"bielorusso";s:2:"be";s:9:"belarusia";s:2:"be";s:9:"belaruusu";s:2:"be";s:11:"baltarusių";s:2:"be";s:10:"baltkrievu";s:2:"be";s:9:"bielorosy";s:2:"be";s:9:"belarussu";s:2:"be";s:11:"białoruski";s:2:"be";s:11:"bielorrusso";s:2:"be";s:15:"bielorruso simi";s:2:"be";s:9:"bieloruss";s:2:"be";s:10:"bielorusă";s:2:"be";s:11:"bielörûsi";s:2:"be";s:9:"beloruski";s:2:"be";s:13:"bieloruština";s:2:"be";s:13:"beloruščina";s:2:"be";s:13:"beleruusiyaan";s:2:"be";s:13:"bjellorusisht";s:2:"be";s:12:"beyaz rusça";s:2:"be";s:10:"belaruscha";s:2:"be";s:38:"belarusian (taraškievica orthography)";s:9:"be-tarask";s:8:"bulgaars";s:2:"bg";s:14:"bɔlgeria kasa";s:2:"bg";s:8:"búlgaru";s:2:"bg";s:6:"bolqar";s:2:"bg";s:11:"buligarikan";s:2:"bg";s:8:"bulgareg";s:2:"bg";s:8:"bugarski";s:2:"bg";s:7:"búlgar";s:2:"bg";s:12:"bulharština";s:2:"bg";s:8:"bwlgareg";s:2:"bg";s:8:"bulgarsk";s:2:"bg";s:10:"bulgarisch";s:2:"bg";s:13:"bulgaršćina";s:2:"bg";s:11:"bulgariagbe";s:2:"bg";s:9:"bulgarian";s:2:"bg";s:7:"bulgara";s:2:"bg";s:8:"búlgaro";s:2:"bg";s:9:"bulgaaria";s:2:"bg";s:10:"bulgariera";s:2:"bg";s:10:"bulgariire";s:2:"bg";s:8:"bulgaria";s:2:"bg";s:9:"bulgarskt";s:2:"bg";s:7:"bulgare";s:2:"bg";s:6:"bulgar";s:2:"bg";s:9:"bulgaarsk";s:2:"bg";s:10:"bulgáiris";s:2:"bg";s:9:"bulgarais";s:2:"bg";s:11:"bulgaarisch";s:2:"bg";s:10:"bulgaranci";s:2:"bg";s:14:"bołharšćina";s:2:"bg";s:7:"bolgár";s:2:"bg";s:7:"bulgaro";s:2:"bg";s:15:"bọlụgarịa";s:2:"bg";s:10:"búlgarska";s:2:"bg";s:12:"bulljaaresch";s:2:"bg";s:10:"bulgaresch";s:2:"bg";s:8:"bulgarų";s:2:"bg";s:8:"bulgāru";s:2:"bg";s:8:"biolgara";s:2:"bg";s:7:"bulgaru";s:2:"bg";s:10:"bulgaarsch";s:2:"bg";s:10:"bułgarski";s:2:"bg";s:12:"bulgaro simi";s:2:"bg";s:8:"bulgară";s:2:"bg";s:15:"bulgáriagiella";s:2:"bg";s:9:"bulugäri";s:2:"bg";s:11:"bulharčina";s:2:"bg";s:13:"bolgarščina";s:2:"bg";s:12:"bulgeeriyaan";s:2:"bg";s:11:"bullgarisht";s:2:"bg";s:10:"bulgariska";s:2:"bg";s:8:"bulgarca";s:2:"bg";s:9:"bolgarcha";s:2:"bg";s:9:"bihaarsch";s:2:"bh";s:8:"biharski";s:2:"bh";s:8:"bhojpuri";s:3:"bho";s:14:"bxoçpuri dili";s:3:"bho";s:7:"bojpuri";s:3:"bho";s:13:"bhojpurština";s:3:"bho";s:11:"bhodschpuri";s:3:"bho";s:10:"bhodžpuri";s:3:"bho";s:9:"bodzspuri";s:3:"bho";s:9:"bojpúrí";s:3:"bho";s:9:"baučpuri";s:3:"bho";s:11:"bhodžpūru";s:3:"bho";s:10:"bhodźpuri";s:3:"bho";s:15:"bhódžpurčina";s:3:"bho";s:9:"bodžpuri";s:3:"bho";s:7:"bislama";s:2:"bi";s:12:"bislama dili";s:2:"bi";s:12:"bislamština";s:2:"bi";s:13:"bislamšćina";s:2:"bi";s:10:"bislamagbe";s:2:"bi";s:7:"bislamo";s:2:"bi";s:10:"bichelamar";s:2:"bi";s:10:"bioslaimis";s:2:"bi";s:8:"bíslama";s:2:"bi";s:9:"bišlamā";s:2:"bi";s:8:"bislamá";s:2:"bi";s:13:"bislamščina";s:2:"bi";s:13:"bahasa banjar";s:3:"bjn";s:6:"banjar";s:3:"bjn";s:14:"bandžarština";s:3:"bjn";s:12:"banjaresisch";s:3:"bjn";s:12:"banjaresesch";s:3:"bjn";s:10:"bandžarų";s:3:"bjn";s:10:"banjariska";s:3:"bjn";s:11:"banjar dili";s:3:"bjn";s:10:"bamanankan";s:2:"bm";s:7:"bambara";s:2:"bm";s:9:"bamanakan";s:2:"bm";s:12:"bambarština";s:2:"bm";s:8:"bambareg";s:2:"bm";s:15:"bambara-sprache";s:2:"bm";s:10:"bambaragbe";s:2:"bm";s:9:"bambarera";s:2:"bm";s:15:"bambara-sprooch";s:2:"bm";s:8:"bambarų";s:2:"bm";s:7:"bambaru";s:2:"bm";s:11:"bambarčina";s:2:"bm";s:13:"bambarščina";s:2:"bm";s:9:"bambarcha";s:2:"bm";s:8:"bengaals";s:2:"bn";s:12:"bengali kasa";s:2:"bn";s:9:"bengalín";s:2:"bn";s:6:"benqal";s:2:"bn";s:11:"bɛngalikan";s:2:"bn";s:7:"bengali";s:2:"bn";s:9:"bengalski";s:2:"bn";s:8:"bengalí";s:2:"bn";s:13:"bengálština";s:2:"bn";s:8:"bengaleg";s:2:"bn";s:10:"bengalisch";s:2:"bn";s:13:"bengalšćina";s:2:"bn";s:9:"bengalgbe";s:2:"bn";s:7:"bengala";s:2:"bn";s:9:"bengalera";s:2:"bn";s:10:"bengaliskt";s:2:"bn";s:9:"bengalês";s:2:"bn";s:9:"bengaalsk";s:2:"bn";s:11:"beangáilis";s:2:"bn";s:10:"beangailis";s:2:"bn";s:8:"bengáli";s:2:"bn";s:9:"bengalska";s:2:"bn";s:9:"bengalese";s:2:"bn";s:13:"bengalimiutut";s:2:"bn";s:13:"bängjaalesch";s:2:"bn";s:10:"bengalesch";s:2:"bn";s:8:"bengalų";s:2:"bn";s:9:"bengāļu";s:2:"bn";s:8:"benggala";s:2:"bn";s:10:"bengaalsch";s:2:"bn";s:11:"bangla simi";s:2:"bn";s:6:"bengal";s:2:"bn";s:10:"bengaleză";s:2:"bn";s:12:"bengalgiella";s:2:"bn";s:8:"bengäli";s:2:"bn";s:12:"bengálčina";s:2:"bn";s:13:"bengalščina";s:2:"bn";s:8:"bangaali";s:2:"bn";s:10:"bengalisht";s:2:"bn";s:8:"bengalce";s:2:"bn";s:9:"bengalcha";s:2:"bn";s:11:"bishnupriya";s:3:"bpy";s:26:"bišnuprijskomanipurština";s:3:"bpy";s:21:"bishnupuriya manipuri";s:3:"bpy";s:10:"bišnupria";s:3:"bpy";s:18:"bischnuprejahnesch";s:3:"bpy";s:12:"bišnuprijos";s:3:"bpy";s:20:"bisznuprija-manipuri";s:3:"bpy";s:9:"bakhtiari";s:3:"bqi";s:16:"bachtijárština";s:3:"bqi";s:12:"bachtiarisch";s:3:"bqi";s:8:"bahtiari";s:3:"bqi";s:12:"bachtiaresch";s:3:"bqi";s:11:"bachtiarski";s:3:"bqi";s:9:"bahtiyari";s:3:"bqi";s:9:"brezhoneg";s:2:"br";s:7:"bretons";s:2:"br";s:7:"bretón";s:2:"br";s:8:"bretonca";s:2:"br";s:9:"bretonski";s:2:"br";s:6:"bretó";s:2:"br";s:12:"bretonština";s:2:"br";s:8:"bretonsk";s:2:"br";s:10:"bretonisch";s:2:"br";s:13:"bretonšćina";s:2:"br";s:9:"bretongbe";s:2:"br";s:6:"breton";s:2:"br";s:7:"bretona";s:2:"br";s:8:"bretooni";s:2:"br";s:9:"bretoiera";s:2:"br";s:7:"bretoni";s:2:"br";s:9:"bretonskt";s:2:"br";s:11:"briotáinis";s:2:"br";s:9:"breatnais";s:2:"cy";s:12:"brötoonisch";s:2:"br";s:11:"buretananci";s:2:"br";s:10:"bretónska";s:2:"br";s:7:"bretone";s:2:"br";s:11:"bettohnesch";s:2:"br";s:10:"bretonesch";s:2:"br";s:8:"bretonų";s:2:"br";s:8:"bretoņu";s:2:"br";s:7:"brenton";s:2:"br";s:10:"bretoonsch";s:2:"br";s:10:"bretoński";s:2:"br";s:7:"bretão";s:2:"br";s:11:"breton simi";s:2:"br";s:8:"bretonă";s:2:"br";s:13:"bretonagiella";s:2:"br";s:12:"bretónčina";s:2:"br";s:13:"bretonščina";s:2:"br";s:7:"bereton";s:2:"br";s:9:"bretonska";s:2:"br";s:9:"bretoncha";s:2:"br";s:8:"bráhuí";s:3:"brh";s:6:"brahui";s:3:"brh";s:7:"brahweg";s:3:"brh";s:12:"brahujština";s:3:"brh";s:7:"brahoui";s:3:"brh";s:11:"brahuijesch";s:3:"brh";s:8:"brahujų";s:3:"brh";s:9:"brahuiska";s:3:"brh";s:7:"brohice";s:3:"brh";s:8:"bosanski";s:2:"bs";s:7:"bosnies";s:2:"bs";s:6:"bosniu";s:2:"bs";s:7:"bosniak";s:2:"bs";s:6:"bosneg";s:2:"bs";s:7:"bosnià";s:2:"bs";s:11:"bosenština";s:2:"bs";s:7:"bosnieg";s:2:"bs";s:7:"bosnisk";s:2:"bs";s:8:"bosnisch";s:2:"bs";s:12:"bosnišćina";s:2:"bs";s:9:"bosniagbe";s:2:"bs";s:7:"bosnian";s:2:"bs";s:6:"bosnia";s:2:"bs";s:6:"bosnio";s:2:"bs";s:8:"bosniera";s:2:"bs";s:8:"bosniskt";s:2:"bs";s:9:"bosniaque";s:2:"bs";s:7:"bosniac";s:2:"bs";s:7:"bosnysk";s:2:"bs";s:7:"boisnis";s:2:"bs";s:7:"bosnais";s:2:"bs";s:10:"bosniyanci";s:2:"bs";s:8:"bosnyák";s:2:"bs";s:8:"bosniaco";s:2:"bs";s:9:"bosníska";s:2:"bs";s:9:"boßnesch";s:2:"bs";s:8:"bosnesch";s:2:"bs";s:7:"bosnių";s:2:"bs";s:9:"bosniešu";s:2:"bs";s:8:"bosnijan";s:2:"bs";s:10:"bośniacki";s:2:"bs";s:7:"bósnio";s:2:"bs";s:11:"bosnio simi";s:2:"bs";s:9:"bosniacă";s:2:"bs";s:12:"bosniagiella";s:2:"bs";s:12:"bosniačtina";s:2:"bs";s:12:"bosanščina";s:2:"bs";s:8:"boosniya";s:2:"bs";s:12:"boshnjakisht";s:2:"bs";s:8:"bosniska";s:2:"bs";s:10:"boşnakça";s:2:"bs";s:9:"bosniycha";s:2:"bs";s:8:"buginés";s:3:"bug";s:10:"bugin dili";s:3:"bug";s:4:"bugi";s:3:"bug";s:14:"buginežanskii";s:3:"bug";s:5:"bugui";s:3:"bug";s:10:"bugiština";s:3:"bug";s:10:"buginesisk";s:3:"bug";s:11:"buginesisch";s:3:"bug";s:11:"bugišćina";s:3:"bug";s:8:"buginese";s:3:"bug";s:9:"bugineesk";s:3:"bug";s:8:"buiginis";s:3:"bug";s:12:"bugineesisch";s:3:"bug";s:8:"buginski";s:3:"bug";s:15:"buginezišćina";s:3:"bug";s:8:"buginéz";s:3:"bug";s:5:"bugis";s:3:"bug";s:9:"búgíska";s:3:"bug";s:12:"bujinehsesch";s:3:"bug";s:11:"buginesesch";s:3:"bug";s:9:"buginezų";s:3:"bug";s:4:"bugu";s:3:"bug";s:8:"buginiż";s:3:"bug";s:10:"bugineesch";s:3:"bug";s:8:"buginees";s:3:"bug";s:9:"bugiński";s:3:"bug";s:9:"buguinês";s:3:"bug";s:9:"bugineză";s:3:"bug";s:12:"buginščina";s:3:"bug";s:11:"buginesiska";s:3:"bug";s:18:"చెచెన్";s:2:"ce";s:18:"చమర్రో";s:2:"ch";s:27:"చొచ్కతావ్";s:3:"cho";s:18:"చెరోకీ";s:3:"chr";s:18:"చేయేన్";s:3:"chy";s:12:"చెక్";s:2:"cs";s:22:"bahasa gereja slavonia";s:2:"cu";s:18:"bažnytinė slavų";s:2:"cu";s:13:"baznīcslāvu";s:2:"cu";s:37:"చర్చ స్లావిక్";s:2:"cu";s:18:"చువాష్";s:2:"cv";s:18:"ဂျာမန်";s:2:"de";s:11:"baxu sorbiu";s:3:"dsb";s:11:"baix sòrab";s:3:"dsb";s:14:"behe-sorabiera";s:3:"dsb";s:10:"bas-sorabe";s:3:"dsb";s:13:"baixo sorabio";s:3:"dsb";s:12:"basso sorabo";s:3:"dsb";s:14:"baixo sórabio";s:3:"dsb";s:16:"bajo sorbio simi";s:3:"dsb";s:9:"bass sorb";s:3:"dsb";s:10:"bhutanisch";s:2:"dz";s:7:"butáni";s:2:"dz";s:10:"butahnesch";s:2:"dz";s:10:"bhutanesch";s:2:"dz";s:7:"botijų";s:2:"dz";s:10:"bhutaansch";s:2:"dz";s:12:"bhutanesiska";s:2:"dz";s:10:"butan dili";s:2:"dz";s:9:"ဂရိ";s:2:"el";s:7:"borɔfo";s:2:"en";s:7:"béarla";s:2:"en";s:6:"beurla";s:2:"en";s:17:"béarla ceanadach";s:5:"en-ca";s:14:"beurla chanada";s:5:"en-ca";s:15:"british english";s:5:"en-gb";s:22:"britaniya ingiliscəsi";s:5:"en-gb";s:18:"britanski engleski";s:5:"en-gb";s:15:"britisk engelsk";s:5:"en-gb";s:19:"britisches englisch";s:5:"en-gb";s:21:"britiska engelšćina";s:5:"en-gb";s:24:"britaintɔwo ƒe yevugbe";s:5:"en-gb";s:11:"brita angla";s:5:"en-gb";s:18:"britannianenglanti";s:5:"en-gb";s:14:"britsk ingelsk";s:5:"en-gb";s:18:"béarla briotanach";s:5:"en-gb";s:17:"beurla bhreatainn";s:5:"en-gb";s:19:"britischs Änglisch";s:5:"en-gb";s:24:"britiska jendźelšćina";s:5:"en-gb";s:10:"brit angol";s:5:"en-gb";s:11:"bresk enska";s:5:"en-gb";s:18:"britescht englesch";s:5:"en-gb";s:17:"brietsch engelsch";s:5:"en-gb";s:12:"brits engels";s:5:"en-gb";s:19:"brytyjski angielski";s:5:"en-gb";s:17:"brittisk engelska";s:5:"en-gb";s:21:"britaniya inglizchasi";s:5:"en-gb";s:7:"baskies";s:2:"eu";s:4:"bask";s:2:"eu";s:9:"baskijski";s:2:"eu";s:4:"basc";s:2:"eu";s:11:"baskičtina";s:2:"eu";s:6:"basgeg";s:2:"eu";s:7:"baskisk";s:2:"eu";s:8:"baskisch";s:2:"eu";s:12:"baskišćina";s:2:"eu";s:8:"basqugbe";s:2:"eu";s:6:"basque";s:2:"eu";s:5:"baski";s:2:"eu";s:8:"baskiskt";s:2:"eu";s:7:"baskysk";s:2:"eu";s:7:"bascais";s:2:"eu";s:7:"basgais";s:2:"eu";s:5:"baszk";s:2:"eu";s:5:"basco";s:2:"eu";s:9:"baskneska";s:2:"eu";s:8:"baskesch";s:2:"eu";s:6:"baskek";s:2:"eu";s:6:"baskų";s:2:"eu";s:5:"basku";s:2:"eu";s:7:"basksch";s:2:"eu";s:6:"bască";s:2:"eu";s:13:"baskovščina";s:2:"eu";s:6:"basquu";s:2:"eu";s:8:"baskisht";s:2:"eu";s:8:"baskiska";s:2:"eu";s:7:"baskça";s:2:"eu";s:7:"baskcha";s:2:"eu";s:14:"batı frizcesi";s:2:"fy";s:18:"ဂါဂါဇ်";s:3:"gag";s:8:"bagalike";s:2:"gl";s:24:"ဂါလာစီယံ";s:2:"gl";s:24:"ဂူအာရာနီ";s:2:"gn";s:24:"ဂူဂျာရသီ";s:2:"gu";s:13:"böversorbsch";s:3:"hsb";s:16:"bahasa indonesia";s:2:"id";s:15:"ဂျပန်";s:2:"ja";s:28:"beurla crìtheolach diameuga";s:3:"jam";s:9:"basa jawa";s:2:"jv";s:33:"ဂျာဗားနီးစ်";s:2:"jv";s:33:"ဂျော်ဂျီယန်";s:2:"ka";s:15:"ဂန်ဒီ";s:2:"lg";s:15:"basa banyumasan";s:7:"map-bms";s:16:"baso minangkabau";s:3:"min";s:8:"bergmari";s:3:"mrj";s:13:"bahasa melayu";s:2:"ms";s:15:"bahasa muskogee";s:3:"mus";s:8:"birmaans";s:2:"my";s:13:"bɛɛmis kasa";s:2:"my";s:7:"birmanu";s:2:"my";s:5:"birma";s:2:"my";s:11:"birimanikan";s:2:"my";s:8:"birmaneg";s:2:"my";s:9:"burmanski";s:2:"my";s:6:"birmà";s:2:"my";s:10:"barmština";s:2:"my";s:8:"byrmaneg";s:2:"my";s:9:"burmesisk";s:2:"my";s:10:"birmanisch";s:2:"my";s:12:"burmašćina";s:2:"my";s:8:"burmagbe";s:2:"my";s:7:"burmese";s:2:"my";s:7:"birmano";s:2:"my";s:10:"burmatarra";s:2:"my";s:8:"burmeese";s:2:"my";s:5:"burma";s:2:"my";s:10:"burmesiskt";s:2:"my";s:6:"birman";s:2:"my";s:7:"birmees";s:2:"my";s:7:"burmais";s:2:"my";s:8:"burmanci";s:2:"my";s:6:"burmai";s:2:"my";s:9:"burmneska";s:2:"my";s:11:"burmessesch";s:2:"my";s:10:"birmanesch";s:2:"my";s:11:"birmiečių";s:2:"my";s:9:"birmiešu";s:2:"my";s:7:"birmana";s:2:"my";s:7:"burmiż";s:2:"my";s:10:"birmaansch";s:2:"my";s:10:"birmański";s:2:"my";s:9:"birmanês";s:2:"my";s:10:"birmaneză";s:2:"my";s:11:"burmagiella";s:2:"my";s:9:"barmčina";s:2:"my";s:13:"burmanščina";s:2:"my";s:10:"birmanisht";s:2:"my";s:10:"burmesiska";s:2:"my";s:7:"burmaca";s:2:"my";s:9:"birmancha";s:2:"my";s:13:"bân-lâm-gú";s:10:"zh-min-nan";s:14:"bokmal norveç";s:2:"nb";s:14:"bokmal noruego";s:2:"nb";s:18:"bokmala (norvegia)";s:2:"nb";s:21:"bokmål na nirribhidh";s:2:"nb";s:16:"bokmål norwegia";s:2:"nb";s:14:"bokmål norway";s:2:"nb";s:19:"bokmahal norveġiż";s:2:"nb";s:7:"bokmål";s:2:"nb";s:18:"bokmål norueguês";s:2:"nb";s:22:"bokmalishte norvegjeze";s:2:"nb";s:12:"baxu alemán";s:3:"nds";s:12:"baix alemany";s:3:"nds";s:12:"bajo alemán";s:3:"nds";s:12:"bas-allemand";s:3:"nds";s:10:"bas todesc";s:3:"nds";s:13:"basso tedesco";s:3:"nds";s:13:"baixo alemão";s:3:"nds";s:13:"baixo-alemão";s:3:"nds";s:12:"bass tudestg";s:3:"nds";s:7:"belanda";s:2:"nl";s:11:"bắc sotho";s:3:"nso";s:8:"bunjaabi";s:2:"pa";s:12:"bas-prussien";s:3:"pdt";s:7:"boolish";s:2:"pl";s:7:"bashtuu";s:2:"ps";s:10:"boortaqiis";s:2:"pt";s:23:"braziliya portuqalcası";s:5:"pt-br";s:23:"brasiliansk portugisisk";s:5:"pt-br";s:29:"brasilianisches portugiesisch";s:5:"pt-br";s:25:"brazilska portugalšćina";s:5:"pt-br";s:27:"braziltɔwo ƒe portugalgbe";s:5:"pt-br";s:20:"brazilian portuguese";s:5:"pt-br";s:15:"brazilportugala";s:5:"pt-br";s:18:"brasilianportugali";s:5:"pt-br";s:22:"brazyljaansk portugees";s:5:"pt-br";s:28:"brasilianischs portugiisisch";s:5:"pt-br";s:21:"brazilski portugalski";s:5:"pt-br";s:20:"brazíliai portugál";s:5:"pt-br";s:24:"brasílísk portúgalska";s:5:"pt-br";s:29:"brasilljaanesch pochtojesesch";s:5:"pt-br";s:27:"brasilianescht portugisesch";s:5:"pt-br";s:21:"brazilijos portugalų";s:5:"pt-br";s:23:"brazīlijas portugāļu";s:5:"pt-br";s:25:"brasiliaansch portugeesch";s:5:"pt-br";s:21:"braziliaans portugees";s:5:"pt-br";s:23:"brazylijski portugalski";s:5:"pt-br";s:25:"brazilska portugalščina";s:5:"pt-br";s:22:"boortaqiiska baraasiil";s:5:"pt-br";s:24:"brasiliansk portugisiska";s:5:"pt-br";s:21:"brezilya portekizcesi";s:5:"pt-br";s:23:"braziliya portugalchasi";s:5:"pt-br";s:7:"burunda";s:2:"rn";s:8:"basulake";s:2:"sk";s:8:"basulabe";s:2:"sl";s:13:"bas-silésien";s:3:"sli";s:10:"basa sunda";s:2:"su";s:12:"benátština";s:3:"vec";s:12:"bhiet-namais";s:2:"vi";s:14:"batı flamanca";s:3:"vls";s:6:"bazosa";s:2:"xh";s:18:"చైనీస్";s:2:"zh";s:25:"basitleştirilmiş Çince";s:7:"zh-hans";s:15:"blema tsainagbe";s:7:"zh-hant";s:5:"bemba";s:3:"bem";s:10:"bembština";s:3:"bem";s:6:"bembeg";s:3:"bem";s:13:"bemba-sprache";s:3:"bem";s:8:"bembagbe";s:3:"bem";s:7:"bembera";s:3:"bem";s:7:"beimbis";s:3:"bem";s:13:"bemba-sprooch";s:3:"bem";s:6:"bembų";s:3:"bem";s:5:"bembu";s:3:"bem";s:8:"bembacha";s:3:"bem";s:4:"bena";s:3:"bez";s:7:"benagbe";s:3:"bez";s:6:"benera";s:3:"bez";s:15:"bena (tanzania)";s:3:"bez";s:5:"béna";s:3:"bez";s:5:"benų";s:3:"bez";s:12:"benajščina";s:3:"bez";s:7:"benacha";s:3:"bez";s:4:"bodo";s:3:"brx";s:10:"bodoština";s:3:"brx";s:7:"bodogbe";s:3:"brx";s:5:"bodoa";s:3:"brx";s:7:"bodoera";s:3:"brx";s:6:"bódó";s:3:"brx";s:5:"boddo";s:3:"brx";s:12:"bodojščina";s:3:"brx";s:3:"brx";s:3:"brx";s:7:"bodocha";s:3:"brx";s:37:"ဂျိုလာ-ဖွန်ရီ";s:3:"dyo";s:15:"ဂူစီး";s:3:"guz";s:18:"ဂွမ်ဘာ";s:3:"jgo";s:5:"bafia";s:3:"ksf";s:6:"baffia";s:3:"ksf";s:8:"bafiagbe";s:3:"ksf";s:7:"bafiera";s:3:"ksf";s:6:"bafía";s:3:"ksf";s:5:"bafų";s:3:"ksf";s:6:"bafiju";s:3:"ksf";s:10:"bafianisht";s:3:"ksf";s:8:"bafiycha";s:3:"ksf";s:15:"beberapa bahasa";s:3:"mul";s:16:"birden fazla dil";s:3:"mul";s:6:"bissio";s:3:"nmg";s:20:"bahasa tidak dikenal";s:3:"und";s:22:"bahasa tidak diketahui";s:3:"und";s:14:"bilinmeyen dil";s:3:"und";s:28:"bez lingvističkog sadržaja";s:3:"zxx";s:23:"bez jezičnog sadržaja";s:3:"zxx";s:23:"bez lingvistiska satura";s:3:"zxx";s:23:"bla kontent lingwistiku";s:3:"zxx";s:37:"brak treści o charakterze językowym";s:3:"zxx";s:22:"bez jazykového obsahu";s:3:"zxx";s:25:"brez jezikoslovne vsebine";s:3:"zxx";s:4:"blin";s:3:"byn";s:8:"bilincə";s:3:"byn";s:5:"bilin";s:3:"byn";s:10:"blinština";s:3:"byn";s:6:"bilini";s:3:"byn";s:5:"blín";s:3:"byn";s:6:"bilinu";s:3:"byn";s:11:"blinščina";s:3:"byn";s:18:"béarla astrálach";s:5:"en-au";s:17:"beurla astràilia";s:5:"en-au";s:21:"béarla meiriceánach";s:5:"en-us";s:22:"beurla na h-aimeireaga";s:5:"en-us";s:16:"bandarísk enska";s:5:"en-us";s:23:"boortaqiis (boortuqaal)";s:5:"pt-pt";s:7:"baluchi";s:3:"bal";s:10:"baluc dili";s:3:"bal";s:9:"baloutchi";s:3:"bal";s:7:"baluči";s:3:"bal";s:7:"balutxi";s:3:"bal";s:13:"balúčština";s:3:"bal";s:7:"balwtsi";s:3:"bal";s:12:"belutschisch";s:3:"bal";s:8:"belutši";s:3:"bal";s:11:"baloetsjysk";s:3:"bal";s:8:"baluchì";s:3:"bal";s:7:"balucsi";s:3:"bal";s:8:"balúkí";s:3:"bal";s:6:"beluci";s:3:"bal";s:13:"beluhtschesch";s:3:"bal";s:12:"belutschesch";s:3:"bal";s:8:"beludžu";s:3:"bal";s:7:"baluċi";s:3:"bal";s:9:"beloetsji";s:3:"bal";s:8:"beludżi";s:3:"bal";s:8:"balúchi";s:3:"bal";s:9:"belutschi";s:3:"bal";s:11:"balúčtina";s:3:"bal";s:16:"beludžijščina";s:3:"bal";s:10:"baluchiska";s:3:"bal";s:8:"balinés";s:3:"ban";s:8:"balincə";s:3:"ban";s:7:"balineg";s:3:"ban";s:12:"balinezijski";s:3:"ban";s:8:"balinès";s:3:"ban";s:11:"balijština";s:3:"ban";s:7:"balïeg";s:3:"ban";s:10:"balinesisk";s:3:"ban";s:11:"balinesisch";s:3:"ban";s:8:"balinese";s:3:"ban";s:4:"bali";s:3:"ban";s:8:"balinais";s:3:"ban";s:9:"balineesk";s:3:"ban";s:7:"bailís";s:3:"ban";s:8:"balinéz";s:3:"ban";s:8:"balíska";s:3:"ban";s:12:"balinehsesch";s:3:"ban";s:11:"balinesesch";s:3:"ban";s:9:"balinezų";s:3:"ban";s:8:"baliešu";s:3:"ban";s:8:"baliniż";s:3:"ban";s:10:"balineesch";s:3:"ban";s:8:"balinees";s:3:"ban";s:8:"balijski";s:3:"ban";s:8:"balinês";s:3:"ban";s:9:"balineză";s:3:"ban";s:10:"balijčina";s:3:"ban";s:12:"balijščina";s:3:"ban";s:11:"balinesiska";s:3:"ban";s:9:"bali dili";s:3:"ban";s:5:"basaa";s:3:"bas";s:9:"basa dili";s:3:"bas";s:4:"basa";s:3:"bas";s:7:"basâeg";s:3:"bas";s:13:"basaa-sprache";s:3:"bas";s:8:"basaagbe";s:3:"bas";s:5:"bassa";s:3:"bas";s:5:"basza";s:3:"bas";s:13:"basaa-sprooch";s:3:"bas";s:5:"basų";s:3:"bas";s:4:"basu";s:3:"bas";s:5:"bamun";s:3:"bax";s:8:"bamunski";s:3:"bax";s:7:"bamwmeg";s:3:"bax";s:7:"bamugbe";s:3:"bax";s:6:"bamuni";s:3:"bax";s:5:"bamum";s:3:"bax";s:6:"bamoun";s:3:"bax";s:7:"bamunų";s:3:"bax";s:6:"bamumu";s:3:"bax";s:8:"bamunska";s:3:"bax";s:4:"beja";s:3:"bej";s:9:"beja dili";s:3:"bej";s:8:"bedawieg";s:3:"bej";s:6:"bedža";s:3:"bej";s:7:"bejäeg";s:3:"bej";s:7:"bedauye";s:3:"bej";s:5:"bedja";s:3:"bej";s:6:"bedzsa";s:3:"bej";s:5:"begia";s:3:"bej";s:6:"bėjų";s:3:"bej";s:6:"bedžu";s:3:"bej";s:7:"bedscha";s:3:"bej";s:6:"bedża";s:3:"bej";s:5:"bikol";s:3:"bik";s:7:"bikolca";s:3:"bik";s:5:"bicol";s:3:"bik";s:11:"bikolština";s:3:"bik";s:13:"bikol-sprache";s:3:"bik";s:6:"bikoli";s:3:"bik";s:9:"bikolisch";s:3:"bik";s:6:"bíkol";s:3:"bik";s:13:"bikol-sprooch";s:3:"bik";s:7:"bikolų";s:3:"bik";s:6:"bikolu";s:3:"bik";s:14:"bikolski jezik";s:3:"bik";s:4:"bini";s:3:"bin";s:9:"bini dili";s:3:"bin";s:12:"bini-sprache";s:3:"bin";s:6:"bíní";s:3:"bin";s:12:"bini-sprooch";s:3:"bin";s:4:"binu";s:3:"bin";s:9:"blackfoot";s:3:"bla";s:17:"blackfoot-sprache";s:3:"bla";s:19:"blackfoot-schpraach";s:3:"bla";s:17:"blackfoot-sprooch";s:3:"bla";s:4:"braj";s:3:"bra";s:9:"braj dili";s:3:"bra";s:12:"bradžština";s:3:"bra";s:11:"braj-bhakha";s:3:"bra";s:7:"bradži";s:3:"bra";s:6:"bradž";s:3:"bra";s:5:"braí";s:3:"bra";s:8:"brajesch";s:3:"bra";s:6:"brajų";s:3:"bra";s:11:"bradžiešu";s:3:"bra";s:6:"bradź";s:3:"bra";s:11:"bradžčina";s:3:"bra";s:18:"bradžbakanščina";s:3:"bra";s:7:"bakossi";s:3:"bss";s:6:"buriat";s:3:"bua";s:11:"buryat dili";s:3:"bua";s:7:"bouriat";s:3:"bua";s:12:"burjatština";s:3:"bua";s:8:"bwriateg";s:3:"bua";s:9:"buriatisk";s:3:"bua";s:10:"burjatisch";s:3:"bua";s:8:"burjaadi";s:3:"bua";s:9:"burjaatti";s:3:"bua";s:8:"bouriate";s:3:"bua";s:11:"buiriáitis";s:3:"bua";s:7:"burját";s:3:"bua";s:8:"búríat";s:3:"bua";s:12:"burejahtesch";s:3:"bua";s:10:"burjatesch";s:3:"bua";s:8:"buriatų";s:3:"bua";s:7:"burjatu";s:3:"bua";s:6:"burjat";s:3:"bua";s:10:"burjaatsch";s:3:"bua";s:11:"boerjatisch";s:3:"bua";s:9:"burjatisk";s:3:"bua";s:8:"buriacki";s:3:"bua";s:11:"buriatčina";s:3:"bua";s:13:"burjatščina";s:3:"bua";s:11:"burjätiska";s:3:"bua";s:6:"buryat";s:3:"bua";s:18:"చిబ్చా";s:3:"chb";s:15:"చాగటై";s:3:"chg";s:18:"చూకిస్";s:3:"chk";s:40:"చినూక్ జార్గన్";s:3:"chn";s:20:"biệt ngữ chinook";s:3:"chn";s:30:"చిపెవ్యాన్";s:3:"chp";s:14:"belanda tengah";s:3:"dum";s:43:"ဂျူဒီယို-ပါရှန်";s:3:"jpr";s:43:"ဂျူဒီယို-အာရေဗျ";s:3:"jrb";s:12:"చేవా";s:2:"oj";s:5:"belau";s:3:"pau";s:15:"blisimbols dili";s:3:"zbl";s:5:"bliss";s:3:"zbl";s:10:"blisimboli";s:3:"zbl";s:13:"bliss systém";s:3:"zbl";s:12:"blisssymbols";s:3:"zbl";s:12:"blissymboler";s:3:"zbl";s:13:"bliss-symbole";s:3:"zbl";s:11:"blissymbols";s:3:"zbl";s:13:"blissümbolid";s:3:"zbl";s:10:"blisskieli";s:3:"zbl";s:12:"blissymbolen";s:3:"zbl";s:13:"bliss-symbool";s:3:"zbl";s:21:"bliss jelképrendszer";s:3:"zbl";s:10:"blissymbol";s:3:"zbl";s:10:"blisstákn";s:3:"zbl";s:14:"bliss-symboler";s:3:"zbl";s:13:"blissimbolika";s:3:"zbl";s:14:"bliss-symbolen";s:3:"zbl";s:15:"blis sembolleri";s:3:"zbl";s:22:"bahasa isyarat amerika";s:3:"ase";s:6:"betawi";s:3:"bew";s:11:"batavština";s:3:"bew";s:6:"betavi";s:3:"bew";s:9:"betawiska";s:3:"bew";s:5:"bafut";s:3:"bfd";s:8:"bafutgbe";s:3:"bfd";s:6:"bafuti";s:3:"bfd";s:7:"bafutų";s:3:"bfd";s:6:"bafutu";s:3:"bfd";s:6:"badaga";s:3:"bfq";s:11:"badagština";s:3:"bfq";s:6:"bagada";s:3:"bfq";s:7:"bamekon";s:3:"bkm";s:4:"bulu";s:3:"bum";s:4:"bwlw";s:3:"bum";s:7:"bulugbe";s:3:"bum";s:6:"boulou";s:3:"bum";s:8:"bagangte";s:3:"byv";s:19:"bamileké-ngiemboon";s:3:"nnh";s:15:"bamileké-jemba";s:3:"ybb";s:5:"banda";s:3:"bad";s:8:"bamileke";s:3:"bai";s:16:"baltsche spraken";s:3:"bat";s:15:"baltički jezik";s:3:"bat";s:13:"berberspraken";s:3:"ber";s:6:"berber";s:3:"ber";s:12:"bantuspraken";s:3:"bnt";s:5:"bantu";s:3:"bnt";s:5:"batak";s:3:"btk";}i:310;a:21:{s:12:"आकान";s:2:"ak";s:15:"आसामी";s:2:"as";s:18:"आयमारा";s:2:"ay";s:15:"आइरिश";s:2:"ga";s:15:"आयरिश";s:2:"ga";s:33:"ზემოსორბული";s:3:"hsb";s:30:"आर्मेनियाई";s:2:"hy";s:27:"आर्मेनियन";s:2:"hy";s:33:"आर्मेनियाली";s:2:"hy";s:24:"आइसलैंडी";s:2:"is";s:24:"आईसलँडिक";s:2:"is";s:36:"आइसल्यान्डिक";s:2:"is";s:13:"Ķelnes vācu";s:3:"ksh";s:12:"ზულუ";s:2:"zu";s:12:"आघेम";s:3:"agq";s:44:"आधुनिक मानक अरबी";s:6:"ar-001";s:56:"आधुनिक प्रमाणित अरबी";s:6:"ar-001";s:9:"आसु";s:3:"asa";s:15:"ზარმა";s:3:"dje";s:18:"ზენაგა";s:3:"zen";s:18:"ზაზაკი";s:3:"zza";}i:612;a:72:{s:18:"ⵜⴰⴽⴰⵏⵜ";s:2:"ak";s:24:"ⵜⴰⵎⵀⴰⵔⵉⵜ";s:2:"am";s:21:"ⵜⴰⵄⵔⴰⴱⵜ";s:2:"ar";s:30:"ⵜⴰⴱⵉⵍⴰⵔⵓⵙⵜ";s:2:"be";s:27:"ⵜⴰⴱⵍⵖⴰⵔⵉⵜ";s:2:"bg";s:27:"ⵜⴰⴱⵏⵖⴰⵍⵉⵜ";s:2:"bn";s:12:"柴羅基文";s:3:"chr";s:24:"ⵜⴰⵜⵛⵉⴽⵉⵜ";s:2:"cs";s:24:"ⵜⴰⵍⵉⵎⴰⵏⵜ";s:2:"de";s:24:"ⵜⴰⴳⵔⵉⴳⵉⵜ";s:2:"el";s:24:"ⵜⴰⵏⴳⵍⵉⵣⵜ";s:2:"en";s:30:"ⵜⴰⵙⴱⵏⵢⵓⵍⵉⵜ";s:2:"es";s:24:"ⵜⴰⴼⵓⵔⵙⵉⵜ";s:2:"fa";s:30:"ⵜⴰⴼⵔⴰⵏⵙⵉⵙⵜ";s:2:"fr";s:24:"ⵜⴰⵀⴰⵡⵙⴰⵜ";s:2:"ha";s:24:"ⵜⴰⵀⵉⵏⴷⵉⵜ";s:2:"hi";s:27:"ⵜⴰⵀⵏⵖⴰⵔⵉⵜ";s:2:"hu";s:30:"ⵜⴰⵏⴷⵓⵏⵉⵙⵉⵜ";s:2:"id";s:18:"ⵜⵉⴳⴱⵓⵜ";s:2:"ig";s:27:"ⵜⴰⵟⴰⵍⵢⴰⵏⵜ";s:2:"it";s:30:"ⵜⴰⵊⴰⴱⴱⵓⵏⵉⵜ";s:2:"ja";s:27:"ⵜⴰⵊⴰⴼⴰⵏⵉⵜ";s:2:"jv";s:21:"ⵜⴰⵅⵎⵉⵔⵜ";s:2:"km";s:21:"ⵜⴰⴽⵓⵔⵉⵜ";s:2:"ko";s:27:"ⵜⴰⵎⴰⵍⴰⵡⵉⵜ";s:2:"ms";s:30:"ⵜⴰⴱⵉⵔⵎⴰⵏⵉⵜ";s:2:"my";s:27:"ⵜⴰⵏⵉⴱⴰⵍⵉⵜ";s:2:"ne";s:12:"尼泊尔文";s:2:"ne";s:12:"尼泊爾文";s:2:"ne";s:12:"尼瓦尔文";s:3:"new";s:12:"尼瓦爾文";s:3:"new";s:30:"ⵜⴰⵀⵓⵍⴰⵏⴷⵉⵜ";s:2:"nl";s:12:"尼扬扎文";s:2:"ny";s:12:"尼揚賈文";s:2:"ny";s:27:"ⵜⴰⴱⵏⵊⴰⴱⵉⵜ";s:2:"pa";s:27:"ⵜⴰⴱⵓⵍⵓⵏⵉⵜ";s:2:"pl";s:27:"ⵜⴰⴱⵕⵟⵇⵉⵣⵜ";s:2:"pt";s:27:"ⵜⴰⵔⵓⵎⴰⵏⵉⵜ";s:2:"ro";s:21:"ⵜⴰⵔⵓⵙⵉⵜ";s:2:"ru";s:30:"ⵜⴰⵔⵓⵡⴰⵏⴷⵉⵜ";s:2:"rw";s:24:"ⵜⴰⵎⴰⵣⵉⵖⵜ";s:3:"tzm";s:21:"ⵜⴰⵛⵍⵃⵉⵜ";s:8:"shi-tfng";s:27:"ⵜⴰⵙⵓⵎⴰⵍⵉⵜ";s:2:"so";s:24:"ⵜⴰⵙⵡⵉⴷⵉⵜ";s:2:"sv";s:24:"ⵜⴰⵜⴰⵎⵉⵍⵜ";s:2:"ta";s:12:"塔吉克文";s:2:"tg";s:33:"ⵜⴰⵜⴰⵢⵍⴰⵏⴷⵉⵜ";s:2:"th";s:12:"塔加洛文";s:2:"tl";s:15:"塔加路族文";s:2:"tl";s:12:"塔里什文";s:3:"tly";s:24:"ⵜⴰⵜⵓⵔⴽⵉⵜ";s:2:"tr";s:12:"塔塔尔文";s:2:"tt";s:12:"塔西提文";s:2:"ty";s:18:"塔马齐格特文";s:3:"tzm";s:18:"塔馬齊格特文";s:3:"tzm";s:24:"ⵜⵓⴽⵔⴰⵏⵉⵜ";s:2:"uk";s:18:"ⵜⵓⵔⴷⵓⵜ";s:2:"ur";s:30:"ⵜⴰⴼⵉⵜⵏⴰⵎⵉⵜ";s:2:"vi";s:24:"ⵜⴰⵢⵔⵓⴱⴰⵜ";s:2:"yo";s:24:"ⵜⴰⵛⵉⵏⵡⵉⵜ";s:2:"zh";s:21:"ⵜⴰⵣⵓⵍⵓⵜ";s:2:"zu";s:15:"尼昂科勒文";s:3:"nyn";s:15:"尼揚科萊文";s:3:"nyn";s:12:"尼亚斯文";s:3:"nia";s:12:"尼亞斯文";s:3:"nia";s:18:"尼亚姆韦齐文";s:3:"nym";s:15:"尼揚韋齊文";s:3:"nym";s:12:"尼约罗文";s:3:"nyo";s:12:"尼奧囉文";s:3:"nyo";s:12:"尼茲馬文";s:3:"nzi";s:15:"塔马奇克文";s:3:"tmh";s:15:"塔馬奇克文";s:3:"tmh";}i:99;a:529:{s:8:"chiakani";s:2:"ak";s:9:"chiamaric";s:2:"am";s:8:"chiarabu";s:2:"ar";s:6:"carabi";s:2:"ar";s:18:"cezayir arapçası";s:3:"arq";s:11:"chibelarusi";s:2:"be";s:12:"chibulgarian";s:2:"bg";s:10:"chibengali";s:2:"bn";s:7:"català";s:2:"ca";s:8:"catalán";s:2:"ca";s:9:"catalaneg";s:2:"ca";s:9:"catalansk";s:2:"ca";s:7:"catalan";s:2:"ca";s:11:"catalóinis";s:2:"ca";s:10:"catalanais";s:2:"ca";s:8:"catalano";s:2:"ca";s:9:"catalonia";s:2:"ca";s:9:"catalaans";s:2:"ca";s:8:"catalão";s:2:"ca";s:12:"catalan simi";s:2:"ca";s:9:"catalană";s:2:"ca";s:22:"chavacano de zamboanga";s:7:"cbk-zam";s:8:"chechenu";s:2:"ce";s:7:"chechen";s:2:"ce";s:8:"checheno";s:2:"ce";s:5:"cecen";s:2:"ce";s:7:"csecsen";s:2:"ce";s:6:"ceceno";s:2:"ce";s:11:"czeczeński";s:2:"ce";s:8:"chechene";s:2:"ce";s:7:"cecenă";s:2:"ce";s:7:"cebuano";s:3:"ceb";s:7:"cebuanu";s:3:"ceb";s:6:"cebuà";s:3:"ceb";s:13:"cebuánština";s:3:"ceb";s:5:"cebui";s:3:"ceb";s:8:"cebuanų";s:3:"ceb";s:8:"cebuansk";s:3:"ceb";s:12:"cebuánčina";s:3:"ceb";s:7:"chamoru";s:2:"ch";s:8:"chamorro";s:2:"ch";s:8:"chamorru";s:2:"ch";s:16:"chamorro-sprache";s:2:"ch";s:8:"csamoró";s:2:"ch";s:16:"chamorro-sprooch";s:2:"ch";s:7:"choctaw";s:3:"cho";s:7:"choktaw";s:3:"cho";s:14:"choctawšćina";s:3:"cho";s:7:"csoktó";s:3:"cho";s:9:"cherokees";s:3:"chr";s:8:"cheroqui";s:3:"chr";s:8:"cherokee";s:3:"chr";s:7:"cseroki";s:3:"chr";s:13:"cherokee-mál";s:3:"chr";s:11:"cherokesisk";s:3:"chr";s:10:"czirokeski";s:3:"chr";s:13:"cheroqui simi";s:3:"chr";s:12:"cherokesiska";s:3:"chr";s:9:"cherokcha";s:3:"chr";s:8:"cheyenne";s:3:"chy";s:7:"cheyene";s:3:"chy";s:6:"csejen";s:3:"chy";s:7:"cheiene";s:3:"chy";s:13:"cwrdeg sorani";s:3:"ckb";s:16:"cùrdais soranî";s:3:"ckb";s:13:"curdo soraní";s:3:"ckb";s:12:"curdo sorani";s:3:"ckb";s:17:"chawpi kurdo simi";s:3:"ckb";s:5:"corsu";s:2:"co";s:4:"cors";s:2:"co";s:6:"corseg";s:2:"co";s:8:"corsican";s:2:"co";s:5:"corso";s:2:"co";s:5:"corse";s:2:"co";s:9:"corsaicis";s:2:"co";s:7:"corsais";s:2:"co";s:7:"corsica";s:2:"co";s:10:"corsicaans";s:2:"co";s:8:"córsico";s:2:"co";s:10:"corso simi";s:2:"co";s:10:"corsicană";s:2:"co";s:13:"corsicagiella";s:2:"co";s:9:"capiceño";s:3:"cps";s:8:"capiznon";s:3:"cps";s:4:"cree";s:2:"cr";s:3:"cri";s:2:"cr";s:6:"craís";s:2:"cr";s:15:"crimean turkish";s:3:"crh";s:30:"crimean turkish; crimean tatar";s:3:"crh";s:30:"crimean turkish (latin script)";s:8:"crh-latn";s:33:"crimean turkish (cyrillic script)";s:8:"crh-cyrl";s:5:"checu";s:2:"cs";s:8:"cɛkikan";s:2:"cs";s:5:"czech";s:2:"cs";s:5:"checo";s:2:"cs";s:7:"cekkere";s:2:"cs";s:3:"cec";s:2:"cs";s:4:"cseh";s:2:"cs";s:6:"cheska";s:2:"cs";s:8:"cheekị";s:2:"cs";s:4:"ceco";s:2:"cs";s:6:"czeski";s:2:"cs";s:10:"checo simi";s:2:"cs";s:5:"cehă";s:2:"cs";s:8:"chiczech";s:2:"cs";s:7:"chexcha";s:2:"cs";s:7:"caixubi";s:3:"csb";s:7:"casubio";s:3:"csb";s:11:"caisiúibis";s:3:"csb";s:10:"caisiubais";s:3:"csb";s:11:"cașubiană";s:3:"csb";s:13:"church slavic";s:2:"cu";s:13:"chileslawisch";s:2:"cu";s:16:"crkvenoslavenski";s:2:"cu";s:21:"cirkevná slovančina";s:2:"cu";s:7:"chuvash";s:2:"cv";s:6:"csuvas";s:2:"cv";s:8:"czuwaski";s:2:"cv";s:9:"ciuvașă";s:2:"cv";s:7:"cymraeg";s:2:"cy";s:2:"cy";s:2:"cy";s:7:"cuimris";s:2:"cy";s:11:"chijerimani";s:2:"de";s:13:"central dusun";s:3:"dtp";s:16:"centrinio dusuno";s:3:"dtp";s:8:"chigreek";s:2:"el";s:8:"chirungu";s:2:"en";s:16:"canadian english";s:5:"en-ca";s:16:"canadisk engelsk";s:5:"en-ca";s:15:"canadees engels";s:5:"en-ca";s:10:"chispanish";s:2:"es";s:10:"chipeshiya";s:2:"fa";s:11:"chifurenchi";s:2:"fr";s:5:"cajun";s:3:"frc";s:12:"cajun french";s:3:"frc";s:11:"cajun-frans";s:3:"frc";s:13:"cajun-franska";s:3:"frc";s:19:"cajun fransızcası";s:3:"frc";s:9:"chinu gan";s:3:"gan";s:8:"chihausa";s:2:"ha";s:11:"chinu hakka";s:3:"hak";s:16:"cànan hawai’i";s:3:"haw";s:5:"cibri";s:2:"he";s:8:"chihindi";s:2:"hi";s:6:"croata";s:2:"hr";s:5:"croat";s:2:"hr";s:13:"chorvatština";s:2:"hr";s:7:"croateg";s:2:"hr";s:14:"chorwatšćina";s:2:"hr";s:8:"croatian";s:2:"hr";s:6:"croate";s:2:"hr";s:7:"cravuat";s:2:"hr";s:8:"cróitis";s:2:"hr";s:11:"cròthaisis";s:2:"hr";s:6:"croato";s:2:"hr";s:9:"chorwacki";s:2:"hr";s:11:"croata simi";s:2:"hr";s:7:"croată";s:2:"hr";s:13:"chorvátčina";s:2:"hr";s:11:"creol haiti";s:2:"ht";s:18:"criól háítíoch";s:2:"ht";s:17:"crìtheol haidhti";s:2:"ht";s:10:"chihungari";s:2:"hu";s:12:"chiindonesia";s:2:"id";s:7:"chiigbo";s:2:"ig";s:10:"chitariana";s:2:"it";s:9:"chijapani";s:2:"ja";s:26:"créole anglais jamaïcain";s:3:"jam";s:17:"creolo giamaicano";s:3:"jam";s:7:"chijava";s:2:"jv";s:9:"cava dili";s:2:"jv";s:12:"cairtbheilis";s:2:"ka";s:13:"cara-calpaceg";s:3:"kaa";s:14:"cara-chalpáis";s:3:"kaa";s:8:"cabilenc";s:3:"kab";s:7:"cabileg";s:3:"kab";s:6:"cabila";s:3:"kab";s:6:"cabilo";s:3:"kab";s:19:"circaseg dwyreiniol";s:3:"kbd";s:5:"congo";s:2:"kg";s:8:"congóis";s:2:"kg";s:8:"conguês";s:2:"kg";s:9:"congolês";s:2:"kg";s:10:"congoleză";s:2:"kg";s:12:"chovarština";s:3:"khw";s:8:"ciocúis";s:2:"ki";s:12:"cuainiáimis";s:2:"kj";s:8:"casacheg";s:2:"kk";s:8:"casaicis";s:2:"kk";s:9:"casachais";s:2:"kk";s:6:"casaco";s:2:"kk";s:7:"cazaque";s:2:"kk";s:5:"casac";s:2:"kk";s:7:"chmereg";s:2:"km";s:9:"ciméiris";s:2:"km";s:6:"cmèar";s:2:"km";s:10:"cambodiano";s:2:"km";s:4:"cmer";s:2:"km";s:11:"cambodschan";s:2:"km";s:8:"chikhema";s:2:"km";s:8:"canarés";s:2:"kn";s:9:"cannadais";s:2:"kn";s:7:"canarim";s:2:"kn";s:8:"canarês";s:2:"kn";s:7:"coreanu";s:2:"ko";s:6:"coreà";s:2:"ko";s:6:"coreeg";s:2:"ko";s:7:"coreano";s:2:"ko";s:7:"coréen";s:2:"ko";s:6:"corean";s:2:"ko";s:9:"cóiréis";s:2:"ko";s:11:"coirèanais";s:2:"ko";s:12:"coreano simi";s:2:"ko";s:9:"coreeană";s:2:"ko";s:8:"chikoria";s:2:"ko";s:6:"canwri";s:2:"kr";s:9:"canúiris";s:2:"kr";s:7:"canúri";s:2:"kr";s:11:"cachemirés";s:2:"ks";s:8:"caixmiri";s:2:"ks";s:9:"cashmireg";s:2:"ks";s:9:"cachemiro";s:2:"ks";s:10:"caismíris";s:2:"ks";s:9:"caismiris";s:2:"ks";s:8:"cachemir";s:2:"ks";s:8:"caxemira";s:2:"ks";s:9:"cașmiră";s:2:"ks";s:9:"colonianu";s:3:"ksh";s:9:"colognian";s:3:"ksh";s:7:"cwleneg";s:3:"ksh";s:10:"cologniani";s:3:"ksh";s:9:"coloniese";s:3:"ksh";s:5:"curdu";s:2:"ku";s:6:"cwrdeg";s:2:"ku";s:4:"curd";s:2:"ku";s:7:"coirdis";s:2:"ku";s:8:"cùrdais";s:2:"ku";s:5:"curdo";s:2:"ku";s:4:"comi";s:2:"kv";s:6:"coimis";s:2:"kv";s:8:"córnicu";s:2:"kw";s:7:"còrnic";s:2:"kw";s:8:"cernyweg";s:2:"kw";s:7:"cornisk";s:2:"kw";s:7:"cornish";s:2:"kw";s:8:"córnico";s:2:"kw";s:8:"cornique";s:2:"kw";s:11:"cornualiês";s:2:"kw";s:7:"coirnis";s:2:"kw";s:8:"còrnais";s:2:"kw";s:7:"cornico";s:2:"kw";s:6:"cornic";s:2:"kw";s:8:"cornică";s:2:"kw";s:8:"cirgiseg";s:2:"ky";s:8:"cirgisis";s:2:"ky";s:11:"cìorgasais";s:2:"ky";s:9:"chirghiso";s:2:"ky";s:16:"chinu lliterariu";s:3:"lzh";s:19:"chinois littéraire";s:3:"lzh";s:15:"cinese classico";s:3:"lzh";s:18:"chiński klasyczny";s:3:"lzh";s:8:"chimalay";s:2:"ms";s:5:"creek";s:3:"mus";s:8:"chiburma";s:2:"my";s:13:"chinu min nan";s:3:"nan";s:9:"chinepali";s:2:"ne";s:11:"cànan niue";s:3:"niu";s:8:"chidutch";s:2:"nl";s:9:"chi-chewa";s:2:"ny";s:8:"chichewa";s:2:"ny";s:5:"chewa";s:2:"ny";s:15:"chewa-schpraach";s:2:"ny";s:10:"chipunjabi";s:2:"pa";s:9:"chipolish";s:2:"pl";s:11:"chiputukezi";s:2:"pt";s:9:"ceatsuais";s:2:"qu";s:7:"ceatsua";s:2:"qu";s:27:"chimborazo hochland-quechua";s:3:"qug";s:27:"chimborazo highland quichua";s:3:"qug";s:26:"chimborazonylänköketšua";s:3:"qug";s:25:"chimborazo górski keczua";s:3:"qug";s:26:"chimborazo-höglandskichwa";s:3:"qug";s:11:"chiromanian";s:2:"ro";s:10:"chirashiya";s:2:"ru";s:13:"ciniarŵandeg";s:2:"rw";s:13:"ciniaruaindis";s:2:"rw";s:9:"chirwanda";s:2:"rw";s:17:"chincha sami simi";s:2:"se";s:11:"cmique itom";s:3:"sei";s:6:"chleuh";s:3:"shi";s:9:"cingalés";s:2:"si";s:10:"cinghalais";s:2:"si";s:9:"cingalês";s:2:"si";s:13:"cingales simi";s:2:"si";s:12:"cənubi sami";s:3:"sma";s:8:"chishona";s:2:"sn";s:9:"chisomali";s:2:"so";s:12:"cànan sunda";s:2:"su";s:10:"chiswedish";s:2:"sv";s:8:"chitamil";s:2:"ta";s:7:"chithai";s:2:"th";s:5:"cvana";s:2:"tn";s:5:"cvanu";s:2:"tn";s:11:"cvanščina";s:2:"tn";s:10:"chiturkish";s:2:"tr";s:5:"conga";s:2:"ts";s:5:"congu";s:2:"ts";s:10:"chitumbuka";s:3:"tum";s:2:"ci";s:2:"tw";s:27:"centralmarokkansk tamazight";s:3:"tzm";s:26:"centralnoatlaski tamazight";s:3:"tzm";s:23:"central atlas tamazight";s:3:"tzm";s:26:"centrinio maroko tamazitų";s:3:"tzm";s:25:"centrālmarokas tamazīts";s:3:"tzm";s:30:"centralnomarokański tamazight";s:3:"tzm";s:27:"centralmarockansk tamazight";s:3:"tzm";s:10:"chiukrenia";s:2:"uk";s:7:"chiurdu";s:2:"ur";s:10:"chivietnam";s:2:"vi";s:8:"chinu wu";s:3:"wuu";s:10:"chinois wu";s:3:"wuu";s:6:"calmuc";s:3:"xal";s:8:"calmyceg";s:3:"xal";s:10:"cailmícis";s:3:"xal";s:8:"calmucă";s:3:"xal";s:7:"cóisis";s:2:"xh";s:9:"chiyoruba";s:2:"yo";s:9:"cantonés";s:3:"yue";s:9:"cantonès";s:3:"yue";s:9:"cantoneeg";s:3:"yue";s:9:"cantongbe";s:3:"yue";s:9:"cantonese";s:6:"zh-yue";s:9:"cantonais";s:3:"yue";s:9:"cantainis";s:3:"yue";s:9:"cantonês";s:3:"yue";s:10:"cantoneză";s:3:"yue";s:6:"chuang";s:2:"za";s:6:"czuang";s:2:"za";s:5:"chinu";s:2:"zh";s:10:"chinesisch";s:2:"zh";s:11:"chinšćina";s:2:"zh";s:7:"chinese";s:2:"zh";s:5:"chino";s:2:"zh";s:7:"chinois";s:2:"zh";s:6:"cinês";s:2:"zh";s:7:"chinés";s:2:"zh";s:11:"chineesisch";s:2:"zh";s:5:"china";s:2:"zh";s:6:"cinese";s:2:"zh";s:6:"chinek";s:2:"zh";s:10:"chinesesch";s:2:"zh";s:4:"cina";s:2:"zh";s:9:"chineesch";s:2:"zh";s:7:"chinees";s:2:"zh";s:8:"chiński";s:2:"zh";s:7:"chinês";s:2:"zh";s:10:"chino simi";s:2:"zh";s:7:"chinais";s:2:"zh";s:8:"chineză";s:2:"zh";s:10:"chichinese";s:2:"zh";s:17:"classical chinese";s:12:"zh-classical";s:15:"chinese (china)";s:5:"zh-cn";s:18:"chinu simplificáu";s:7:"zh-hans";s:24:"chinesisch (vereinfacht)";s:7:"zh-hans";s:25:"chinšćina (zjadnorjona)";s:7:"zh-hans";s:18:"chino simplificado";s:7:"zh-hans";s:18:"chinois simplifié";s:7:"zh-hans";s:19:"cinês semplificât";s:7:"zh-hans";s:20:"chinés simplificado";s:7:"zh-hans";s:25:"chinšćina (zjednorjena)";s:7:"zh-hans";s:24:"china (aksara sederhana)";s:7:"zh-hans";s:19:"cinese semplificato";s:7:"zh-hans";s:13:"chinek sempel";s:7:"zh-hans";s:24:"chinesesch (vereinfacht)";s:7:"zh-hans";s:12:"cina ringkas";s:7:"zh-hans";s:22:"chiński (uproszczony)";s:7:"zh-hans";s:20:"chinês simplificado";s:7:"zh-hans";s:20:"chinais simplifitgà";s:7:"zh-hans";s:22:"chineză simplificată";s:7:"zh-hans";s:17:"chinu tradicional";s:7:"zh-hant";s:25:"chinesisch (traditionell)";s:7:"zh-hant";s:27:"chinšćina (tradicionalna)";s:7:"zh-hant";s:17:"chino tradicional";s:7:"zh-hant";s:20:"chinois traditionnel";s:7:"zh-hant";s:19:"cinês tradizionâl";s:7:"zh-hant";s:19:"chinés tradicional";s:7:"zh-hant";s:26:"china (aksara tradisional)";s:7:"zh-hant";s:19:"cinese tradizionale";s:7:"zh-hant";s:19:"chînek tradycyonal";s:7:"zh-hant";s:25:"chinesesch (traditionell)";s:7:"zh-hant";s:16:"cina tradisional";s:7:"zh-hant";s:21:"chiński (tradycyjny)";s:7:"zh-hant";s:19:"chinês tradicional";s:7:"zh-hant";s:19:"chinais tradiziunal";s:7:"zh-hant";s:23:"chineză tradițională";s:7:"zh-hant";s:19:"chinese (hong kong)";s:5:"zh-hk";s:17:"chinese (min nan)";s:10:"zh-min-nan";s:19:"chinese (singapore)";s:5:"zh-sg";s:16:"chinese (taiwan)";s:5:"zh-tw";s:7:"chizulu";s:2:"zu";s:5:"chiga";s:3:"cgg";s:7:"chigera";s:3:"cgg";s:12:"ఛిగా";s:3:"cgg";s:7:"chigcha";s:3:"cgg";s:5:"coptu";s:3:"cop";s:5:"copte";s:3:"cop";s:6:"copteg";s:3:"cop";s:6:"coptic";s:3:"cop";s:5:"copto";s:3:"cop";s:7:"coptais";s:3:"cop";s:5:"copta";s:3:"cop";s:6:"coptă";s:3:"cop";s:12:"chetitština";s:3:"hit";s:11:"chetitčina";s:3:"hit";s:5:"camba";s:3:"kam";s:12:"cabuverdianu";s:3:"kea";s:17:"crioll capverdià";s:3:"kea";s:13:"caboferdianeg";s:3:"kea";s:13:"cape verdegbe";s:3:"kea";s:20:"criollo caboverdiano";s:3:"kea";s:19:"cabo verdeko kreola";s:3:"kea";s:10:"capverdien";s:3:"kea";s:12:"caboverdiano";s:3:"kea";s:12:"capoverdiano";s:3:"kea";s:13:"cabo-verdiano";s:3:"kea";s:7:"concani";s:3:"kok";s:10:"concáinis";s:3:"kok";s:9:"curúicis";s:3:"kru";s:8:"chambala";s:3:"ksb";s:6:"ciluba";s:3:"lua";s:18:"criollo mauriciano";s:3:"mfe";s:17:"créole mauricien";s:3:"mfe";s:17:"crioulo mauritano";s:3:"mfe";s:17:"creolo mauriziano";s:3:"mfe";s:19:"cənub ndebele dili";s:2:"nr";s:9:"comorianu";s:3:"swb";s:8:"comorià";s:3:"swb";s:7:"comoreg";s:3:"swb";s:8:"comorian";s:3:"swb";s:9:"comorense";s:3:"swb";s:8:"comorien";s:3:"swb";s:8:"comorais";s:3:"swb";s:7:"comorei";s:3:"swb";s:9:"comoriano";s:3:"swb";s:7:"comoria";s:3:"swb";s:9:"comoreză";s:3:"swb";s:19:"congolesisk swahili";s:3:"swc";s:13:"congo swahili";s:3:"swc";s:21:"cànan neo-aithnichte";s:3:"und";s:9:"castelán";s:5:"es-es";s:15:"canadisk fransk";s:5:"fr-ca";s:15:"canadian french";s:5:"fr-ca";s:14:"canadees frans";s:5:"fr-ca";s:20:"circaseg gorllewinol";s:3:"ady";s:17:"cənub altay dili";s:3:"alt";s:5:"caddo";s:3:"cad";s:4:"cado";s:3:"cad";s:6:"caribe";s:3:"car";s:5:"carib";s:3:"car";s:7:"caribeg";s:3:"car";s:8:"caribisk";s:3:"car";s:8:"caribico";s:3:"car";s:9:"caribisch";s:3:"car";s:7:"caribic";s:3:"car";s:7:"chibcha";s:3:"chb";s:15:"chibcha-sprache";s:3:"chb";s:7:"csibcsa";s:3:"chb";s:15:"chibcha-sprooch";s:3:"chb";s:15:"chibcha-spraken";s:3:"chb";s:7:"czibcza";s:3:"chb";s:8:"chagatai";s:3:"chg";s:9:"chagatái";s:3:"chg";s:9:"csagatáj";s:3:"chg";s:10:"ciagataico";s:3:"chg";s:11:"czagatajski";s:3:"chg";s:8:"chuukés";s:3:"chk";s:5:"chuuk";s:3:"chk";s:8:"chuukese";s:3:"chk";s:9:"chuukeesk";s:3:"chk";s:7:"csukéz";s:3:"chk";s:6:"chuuke";s:3:"chk";s:10:"chuukesisk";s:3:"chk";s:8:"chuukees";s:3:"chk";s:8:"chuukais";s:3:"chk";s:11:"chuukesiska";s:3:"chk";s:7:"chinook";s:3:"chn";s:14:"chinook jargon";s:3:"chn";s:14:"chinook-jargon";s:3:"chn";s:15:"chinook žargon";s:3:"chn";s:14:"csinuk zsargon";s:3:"chn";s:10:"chipewyanu";s:3:"chp";s:9:"chipewyan";s:3:"chp";s:8:"csipevé";s:3:"chp";s:11:"chipewiansk";s:3:"chp";s:11:"ciribeasais";s:3:"gil";s:6:"càseg";s:3:"kha";s:13:"chotánština";s:3:"kho";s:10:"chotański";s:3:"kho";s:11:"chotančina";s:3:"kho";s:8:"carelià";s:3:"krl";s:7:"careleg";s:3:"krl";s:7:"carelio";s:3:"krl";s:9:"carélien";s:3:"krl";s:10:"cairéilis";s:3:"krl";s:9:"careliano";s:3:"krl";s:8:"carelian";s:3:"krl";s:7:"cwmiceg";s:3:"kum";s:8:"chilamba";s:3:"lam";s:16:"classical newari";s:3:"nwc";s:9:"cygański";s:3:"rom";s:14:"chadian arabic";s:3:"shu";s:11:"csádi arab";s:3:"shu";s:14:"chadian arabų";s:3:"shu";s:12:"chadian arab";s:3:"shu";s:13:"chad-arabiska";s:3:"shu";s:16:"classical syriac";s:3:"syc";s:10:"csimsiáni";s:3:"tsi";s:11:"cimšiāņu";s:3:"tsi";s:30:"cainnt-shanais na h-aimeireaga";s:3:"ase";s:5:"comeg";s:3:"bkm";s:6:"cayuga";s:3:"cay";s:13:"central yupik";s:3:"esu";s:27:"centrinės aliaskos jupikų";s:3:"esu";s:11:"chinu xiang";s:3:"hsn";s:10:"caingangue";s:3:"kgp";s:12:"cachurština";s:3:"tkr";s:9:"cachurski";s:3:"tkr";s:9:"cakoński";s:3:"tsd";s:12:"cham-spraken";s:3:"cmc";}i:103;a:598:{s:5:"gegë";s:3:"aln";s:16:"gheg d’albania";s:3:"aln";s:5:"gegeg";s:3:"aln";s:14:"ghegeg albania";s:3:"aln";s:7:"gegisch";s:3:"aln";s:13:"gheg albanian";s:3:"aln";s:3:"geg";s:3:"aln";s:7:"guègue";s:3:"aln";s:7:"gegesch";s:3:"aln";s:7:"gegiska";s:3:"aln";s:18:"gheg arnavutçası";s:3:"aln";s:13:"gammelengelsk";s:3:"ang";s:13:"gammalengelsk";s:3:"ang";s:7:"għarbi";s:2:"ar";s:14:"güney azerice";s:3:"azb";s:21:"టిబెటన్";s:2:"bo";s:6:"galés";s:2:"cy";s:9:"gal·lès";s:2:"cy";s:8:"galesera";s:2:"cy";s:7:"gallois";s:2:"cy";s:6:"galês";s:2:"cy";s:7:"gallese";s:2:"cy";s:10:"gales simi";s:2:"cy";s:7:"galeză";s:2:"cy";s:5:"galce";s:2:"cy";s:7:"gyaaman";s:2:"de";s:11:"germaniagbe";s:2:"de";s:6:"german";s:2:"de";s:7:"germana";s:2:"de";s:11:"gearmáinis";s:2:"de";s:11:"gearmailtis";s:2:"de";s:7:"germano";s:2:"de";s:8:"germană";s:2:"de";s:11:"gjermanisht";s:2:"de";s:20:"gearmáinis ostarach";s:5:"de-at";s:24:"gearmailtis na h-ostaire";s:5:"de-at";s:19:"germană austriacă";s:5:"de-at";s:22:"gjermanishte austriake";s:5:"de-at";s:28:"gornjonjemački (švicarski)";s:5:"de-ch";s:29:"germană standard elvețiană";s:5:"de-ch";s:42:"gjermanishte zvicerane (dialekti i alpeve)";s:5:"de-ch";s:23:"german (formal address)";s:9:"de-formal";s:6:"grieks";s:2:"el";s:10:"greek kasa";s:2:"el";s:6:"griegu";s:2:"el";s:11:"gɛrɛsikan";s:2:"el";s:9:"gresianeg";s:2:"el";s:6:"grčki";s:2:"el";s:4:"grec";s:2:"el";s:5:"groeg";s:2:"el";s:6:"græsk";s:2:"el";s:10:"griechisch";s:2:"el";s:13:"grichišćina";s:2:"el";s:8:"grisigbe";s:2:"el";s:5:"greek";s:2:"el";s:5:"greka";s:2:"el";s:6:"griego";s:2:"el";s:8:"greziera";s:2:"el";s:5:"gerke";s:2:"el";s:8:"grikiskt";s:2:"el";s:5:"grêc";s:2:"el";s:5:"gryks";s:2:"el";s:8:"gréigis";s:2:"el";s:8:"greugais";s:2:"el";s:5:"grego";s:2:"el";s:8:"girkanci";s:2:"el";s:12:"grjekšćina";s:2:"el";s:7:"görög";s:2:"el";s:5:"greco";s:2:"el";s:9:"giriikị";s:2:"el";s:7:"gríska";s:2:"el";s:10:"griichesch";s:2:"el";s:7:"graikų";s:2:"el";s:7:"grieķu";s:2:"el";s:5:"grika";s:2:"el";s:5:"grieg";s:2:"el";s:5:"gresk";s:2:"el";s:8:"greeksch";s:2:"el";s:6:"grecki";s:2:"el";s:11:"griego simi";s:2:"el";s:7:"greacă";s:2:"el";s:13:"greikkagiella";s:2:"el";s:7:"gerêki";s:2:"el";s:10:"gréčtina";s:2:"el";s:9:"grščina";s:2:"el";s:6:"giriik";s:2:"el";s:8:"greqisht";s:2:"el";s:8:"grekiska";s:2:"el";s:10:"gĩthungũ";s:2:"en";s:6:"galleg";s:2:"fr";s:19:"gʻarbiy friziancha";s:2:"fy";s:7:"gaeilge";s:2:"ga";s:9:"gwyddeleg";s:2:"ga";s:8:"gaelikoa";s:2:"ga";s:16:"gaelic irlandês";s:2:"ga";s:6:"gagauz";s:3:"gag";s:9:"gagaouzeg";s:3:"gag";s:9:"gagauški";s:3:"gag";s:7:"gagaús";s:3:"gag";s:12:"gagauzština";s:3:"gag";s:9:"gagauzisk";s:3:"gag";s:10:"gagausisch";s:3:"gag";s:13:"gagauzšćina";s:3:"gag";s:7:"gagauzo";s:3:"gag";s:8:"gagauusi";s:3:"gag";s:9:"gagauzera";s:3:"gag";s:7:"gagauzi";s:3:"gag";s:8:"gagaouze";s:3:"gag";s:8:"gagauski";s:3:"gag";s:14:"gagauzišćina";s:3:"gag";s:6:"gagás";s:3:"gag";s:10:"gagausesch";s:3:"gag";s:9:"gagaūzų";s:3:"gag";s:7:"gagauzu";s:3:"gag";s:9:"gagausisk";s:3:"gag";s:11:"gagaoezisch";s:3:"gag";s:10:"găgăuză";s:3:"gag";s:12:"gagavščina";s:3:"gag";s:10:"gagauzisht";s:3:"gag";s:10:"gagauziska";s:3:"gag";s:9:"gagavuzca";s:3:"gag";s:8:"gagozcha";s:3:"gag";s:3:"gan";s:3:"gan";s:9:"gan-kiina";s:3:"gan";s:14:"gan-chinesesch";s:3:"gan";s:12:"gan Çincesi";s:3:"gan";s:9:"gàidhlig";s:2:"gd";s:17:"gaélicu escocés";s:2:"gd";s:16:"gaèlic escocès";s:2:"gd";s:15:"gaeleg yr alban";s:2:"gd";s:5:"gaela";s:2:"gd";s:17:"gaélico escocés";s:2:"gd";s:5:"gaeli";s:2:"gd";s:19:"gaélique écossais";s:2:"gd";s:14:"gaelic scozês";s:2:"gd";s:17:"gaeilge na halban";s:2:"gd";s:17:"gaelik skotlandia";s:2:"gd";s:16:"gaelico scozzese";s:2:"gd";s:5:"gēlu";s:2:"gd";s:18:"galliku skoċċiż";s:2:"gd";s:17:"gaélico escocês";s:2:"gd";s:20:"gaelico escoces simi";s:2:"gd";s:11:"gaelic scot";s:2:"gd";s:19:"gaelică scoțiană";s:2:"gd";s:7:"galisht";s:2:"gd";s:6:"galego";s:2:"gl";s:8:"galisies";s:2:"gl";s:7:"gallegu";s:2:"gl";s:7:"galizeg";s:2:"gl";s:6:"galski";s:2:"gl";s:6:"gallec";s:2:"gl";s:13:"galicijština";s:2:"gl";s:8:"galisieg";s:2:"gl";s:8:"galicisk";s:2:"gl";s:9:"galizisch";s:2:"gl";s:13:"galicišćina";s:2:"gl";s:9:"galatagbe";s:2:"gl";s:8:"galician";s:2:"gl";s:6:"galega";s:2:"gl";s:7:"gallego";s:2:"gl";s:7:"galeegi";s:2:"gl";s:9:"galiziera";s:2:"gl";s:7:"galicia";s:2:"gl";s:9:"galisiskt";s:2:"gl";s:8:"galicien";s:2:"gl";s:8:"galizian";s:2:"gl";s:8:"galisysk";s:2:"gl";s:9:"gailísis";s:2:"gl";s:9:"gailìsis";s:2:"gl";s:10:"galicijski";s:2:"gl";s:9:"galíciai";s:2:"gl";s:7:"galisia";s:2:"gl";s:10:"galíanska";s:2:"gl";s:9:"galiziano";s:2:"gl";s:9:"galizesch";s:2:"gl";s:7:"galisų";s:2:"gl";s:10:"galisiešu";s:2:"gl";s:9:"gallegjan";s:2:"gl";s:8:"galisisk";s:2:"gl";s:9:"galicisch";s:2:"gl";s:10:"galicyjski";s:2:"gl";s:12:"gallego simi";s:2:"gl";s:10:"galiciană";s:2:"gl";s:13:"galícijčina";s:2:"gl";s:14:"galicijščina";s:2:"gl";s:11:"galiisiyaan";s:2:"gl";s:6:"galike";s:2:"gl";s:9:"galiciska";s:2:"gl";s:10:"galiçyaca";s:2:"gl";s:11:"galitsiycha";s:2:"gl";s:6:"gilaki";s:3:"glk";s:10:"gilačtina";s:3:"glk";s:10:"giliański";s:3:"glk";s:8:"gilanice";s:3:"glk";s:7:"guarani";s:2:"gn";s:8:"guaraní";s:2:"gn";s:7:"gvarani";s:2:"gn";s:12:"guaranština";s:2:"gn";s:9:"guarangbe";s:2:"gn";s:8:"gvarania";s:2:"gn";s:8:"guaranii";s:2:"gn";s:10:"guaraniera";s:2:"gn";s:8:"guaranì";s:2:"gn";s:10:"guaráinis";s:2:"gn";s:13:"guwaraniyanci";s:2:"gn";s:8:"gvaraní";s:2:"gn";s:9:"gvaranių";s:2:"gn";s:7:"gvaranu";s:2:"gn";s:7:"gwarani";s:2:"gn";s:15:"gvaranijščina";s:2:"gn";s:7:"guraani";s:2:"gn";s:10:"guaranisht";s:2:"gn";s:12:"guarani dili";s:2:"gn";s:8:"gorancha";s:2:"gn";s:27:"goan konkani (latin script)";s:8:"gom-latn";s:6:"goties";s:3:"got";s:7:"góticu";s:3:"got";s:6:"gotça";s:3:"got";s:5:"goteg";s:3:"got";s:6:"gotski";s:3:"got";s:6:"gòtic";s:3:"got";s:10:"gótština";s:3:"got";s:6:"gotheg";s:3:"got";s:6:"gotisk";s:3:"got";s:7:"gotisch";s:3:"got";s:11:"gotišćina";s:3:"got";s:6:"gothic";s:3:"got";s:7:"gótico";s:3:"got";s:5:"gooti";s:3:"got";s:6:"gootti";s:3:"got";s:7:"gotique";s:3:"got";s:5:"gotic";s:3:"got";s:7:"gothysk";s:3:"got";s:6:"gotais";s:3:"got";s:10:"gotšćina";s:3:"got";s:4:"gót";s:3:"got";s:6:"gothik";s:3:"got";s:8:"gotneska";s:3:"got";s:6:"gotico";s:3:"got";s:7:"gotesch";s:3:"got";s:5:"gotų";s:3:"got";s:4:"gotu";s:3:"got";s:6:"gotiku";s:3:"got";s:7:"gootsch";s:3:"got";s:8:"gothisch";s:3:"got";s:5:"gocki";s:3:"got";s:7:"gotică";s:3:"got";s:9:"gótčina";s:3:"got";s:10:"gotščina";s:3:"got";s:7:"gotiska";s:3:"got";s:14:"griegu antiguu";s:3:"grc";s:10:"grec antic";s:3:"grc";s:14:"griego antiguo";s:3:"grc";s:11:"grec ancien";s:3:"grc";s:17:"greugais Àrsaidh";s:3:"grc";s:12:"grego antigo";s:3:"grc";s:12:"greco antico";s:3:"grc";s:11:"greek purba";s:3:"grc";s:12:"grieg, antik";s:3:"grc";s:11:"gammelgresk";s:3:"grc";s:11:"gammalgresk";s:3:"grc";s:15:"grego clássico";s:3:"grc";s:13:"grego arcaico";s:3:"grc";s:9:"grec vegl";s:3:"grc";s:13:"greacă veche";s:3:"grc";s:24:"gearmáinis eilvéiseach";s:3:"gsw";s:24:"gearmailtis eilbheiseach";s:3:"gsw";s:20:"germană elvețiană";s:3:"gsw";s:22:"gjermanishte zvicerane";s:3:"gsw";s:10:"goedjarati";s:2:"gu";s:9:"guyaratí";s:2:"gu";s:8:"gujarati";s:2:"gu";s:10:"gudžarati";s:2:"gu";s:16:"gudžarátština";s:2:"gu";s:8:"gwjarati";s:2:"gu";s:16:"gudžaratšćina";s:2:"gu";s:9:"guĝarata";s:2:"gu";s:10:"gujaratera";s:2:"gu";s:8:"gujariti";s:2:"gu";s:14:"gúisearáitis";s:2:"gu";s:11:"guxaratiano";s:2:"gu";s:12:"gudžaratski";s:2:"gu";s:10:"gudzsarati";s:2:"gu";s:10:"gújaratí";s:2:"gu";s:14:"gutscharatesch";s:2:"gu";s:11:"gudžaratų";s:2:"gu";s:10:"gudžaratu";s:2:"gu";s:7:"gujerat";s:2:"gu";s:9:"guġarati";s:2:"gu";s:11:"gudźaracki";s:2:"gu";s:8:"guzerate";s:2:"gu";s:13:"gujarati simi";s:2:"gu";s:14:"gujaratagiella";s:2:"gu";s:15:"gudžarátčina";s:2:"gu";s:16:"gudžaratščina";s:2:"gu";s:9:"gujaraati";s:2:"gu";s:12:"guxharatisht";s:2:"gu";s:11:"güceratça";s:2:"gu";s:10:"gujoratcha";s:2:"gu";s:5:"gaelg";s:2:"gv";s:15:"gaélico manés";s:2:"gv";s:8:"gavaycha";s:3:"haw";s:21:"gornjolužičkosrpski";s:3:"hsb";s:17:"górnoserbšćina";s:3:"hsb";s:13:"goi-sorabiera";s:3:"hsb";s:15:"gornjolužički";s:3:"hsb";s:15:"górnołużycki";s:3:"hsb";s:16:"gornji sorbijski";s:3:"hsb";s:27:"gornja lužiška srbščina";s:3:"hsb";s:7:"gaitcha";s:2:"ht";s:18:"gjuha nderkombtare";s:2:"ie";s:11:"gyapan kasa";s:2:"ja";s:16:"японская";s:2:"ja";s:14:"японски";s:2:"ja";s:9:"gjaponês";s:2:"ja";s:10:"giapponese";s:2:"ja";s:12:"япончо";s:2:"ja";s:8:"япон";s:2:"ja";s:14:"япойнаг";s:2:"ja";s:9:"giapunais";s:2:"ja";s:16:"японский";s:2:"ja";s:16:"японська";s:2:"ja";s:13:"gyabanis kasa";s:2:"jv";s:16:"яванская";s:2:"jv";s:14:"явански";s:2:"jv";s:9:"giavanese";s:2:"jv";s:6:"ява";s:2:"jv";s:16:"яванский";s:2:"jv";s:16:"яванська";s:2:"jv";s:8:"georgies";s:2:"ka";s:7:"gürcü";s:2:"ka";s:9:"gruzijski";s:2:"ka";s:8:"georgià";s:2:"ka";s:13:"gruzínština";s:2:"ka";s:7:"georgeg";s:2:"ka";s:8:"georgisk";s:2:"ka";s:9:"georgisch";s:2:"ka";s:13:"georgišćina";s:2:"ka";s:9:"gɔgiagbe";s:2:"ka";s:8:"georgian";s:2:"ka";s:9:"georgiano";s:2:"ka";s:7:"gruusia";s:2:"ka";s:9:"georgiera";s:2:"ka";s:7:"georgia";s:2:"ka";s:9:"georgiskt";s:2:"ka";s:9:"géorgien";s:2:"ka";s:10:"gjeorgjian";s:2:"ka";s:8:"georgysk";s:2:"ka";s:5:"grúz";s:2:"ka";s:10:"georgíska";s:2:"ka";s:9:"georgesch";s:2:"ka";s:8:"gruzinų";s:2:"ka";s:8:"gruzīnu";s:2:"ka";s:8:"georgsch";s:2:"ka";s:10:"gruziński";s:2:"ka";s:14:"georgiano simi";s:2:"ka";s:10:"georgiană";s:2:"ka";s:13:"georgiagiella";s:2:"ka";s:12:"gruzínčina";s:2:"ka";s:13:"gruzinščina";s:2:"ka";s:11:"gjeorgjisht";s:2:"ka";s:9:"georgiska";s:2:"ka";s:9:"gürcüce";s:2:"ka";s:9:"gruzincha";s:2:"ka";s:9:"gĩkũyũ";s:2:"ki";s:6:"gikuyu";s:2:"ki";s:11:"grenlandès";s:2:"kl";s:11:"grónština";s:2:"kl";s:11:"grønlandsk";s:2:"kl";s:14:"grönländisch";s:2:"kl";s:16:"grönlandšćina";s:2:"kl";s:9:"gronlanda";s:2:"kl";s:12:"groenlandés";s:2:"kl";s:8:"grööni";s:2:"kl";s:12:"groenlandais";s:2:"kl";s:10:"grienlâns";s:2:"kl";s:16:"gröönländisch";s:2:"kl";s:17:"gröndlandšćina";s:2:"kl";s:10:"grönlandi";s:2:"kl";s:11:"grænlenska";s:2:"kl";s:14:"grönlännesch";s:2:"kl";s:13:"grenlandiešu";s:2:"kl";s:14:"gröönlandsch";s:2:"kl";s:10:"groenlands";s:2:"kl";s:11:"grenlandzki";s:2:"kl";s:12:"groenlandês";s:2:"kl";s:16:"groenlandes simi";s:2:"kl";s:12:"grönlandais";s:2:"kl";s:10:"grónčina";s:2:"kl";s:15:"grenlandščina";s:2:"kl";s:13:"grönländska";s:2:"kl";s:14:"grönland dili";s:2:"kl";s:15:"gwara kolońska";s:3:"ksh";s:15:"giudeo-spagnolo";s:3:"lad";s:5:"ganda";s:2:"lg";s:10:"gandština";s:2:"lg";s:11:"gandšćina";s:2:"lg";s:7:"gandera";s:2:"lg";s:15:"ganda-schpraach";s:2:"lg";s:13:"ganda-sprooch";s:2:"lg";s:5:"gandu";s:2:"lg";s:9:"gandčina";s:2:"lg";s:8:"gandisht";s:2:"lg";s:7:"gandcha";s:2:"lg";s:16:"girjedárogiella";s:2:"nb";s:23:"gearmáinis Íochtarach";s:3:"nds";s:14:"germana de jos";s:3:"nds";s:10:"gollandcha";s:2:"nl";s:25:"gearmailtis phennsylvania";s:3:"pdc";s:14:"якуцкая";s:3:"sah";s:14:"якутски";s:3:"sah";s:8:"якут";s:3:"sah";s:16:"якутский";s:3:"sah";s:16:"якутська";s:3:"sah";s:33:"టాచెల్‌హిట్";s:3:"shi";s:12:"gagana samoa";s:2:"sm";s:11:"güney sami";s:3:"sma";s:12:"güney sotho";s:2:"st";s:12:"టేటం";s:3:"tet";s:21:"టాంగాన్";s:2:"to";s:31:"టోక్ పిసిన్";s:3:"tpi";s:21:"టర్కిష్";s:2:"tr";s:15:"టాటర్";s:2:"tt";s:21:"టుంబుకా";s:3:"tum";s:12:"ట్వి";s:2:"tw";s:27:"టువినియన్";s:3:"tyv";s:15:"ဇိုစာ";s:2:"xh";s:8:"giúdais";s:2:"yi";s:17:"geleneksel Çince";s:7:"zh-hant";s:12:"ဇူလူ";s:2:"zu";s:23:"għarbi standard modern";s:6:"ar-001";s:12:"టైటా";s:3:"dav";s:12:"ဇာမာ";s:3:"dje";s:14:"gammelegyptisk";s:3:"egy";s:14:"gammalegyptisk";s:3:"egy";s:3:"gaa";s:3:"gaa";s:2:"ga";s:3:"gaa";s:8:"gaština";s:3:"gaa";s:10:"ga-sprache";s:3:"gaa";s:6:"gɛgbe";s:3:"gaa";s:10:"ga-sprooch";s:3:"gaa";s:3:"gã";s:3:"gaa";s:5:"gusii";s:3:"guz";s:5:"gusí";s:3:"guz";s:8:"gusiiera";s:3:"guz";s:6:"guszii";s:3:"guz";s:13:"gusii-sprooch";s:3:"guz";s:4:"gusi";s:3:"guz";s:12:"gusijščina";s:3:"guz";s:7:"gusisht";s:3:"guz";s:6:"guzcha";s:3:"guz";s:16:"grænhöfðeyska";s:3:"kea";s:22:"gbegbɔgblɔ sɔgbɔwo";s:3:"mul";s:14:"güney ndebele";s:2:"nr";s:11:"gao-songhay";s:3:"ses";s:12:"టెసో";s:3:"teo";s:21:"టసావాఖ్";s:3:"twq";s:18:"gbegbɔgblɔ manya";s:3:"und";s:24:"geen linguistiese inhoud";s:3:"zxx";s:21:"gbegbɔgblɔ manɔmee";s:3:"zxx";s:26:"gjin linguïstyske ynhâld";s:3:"zxx";s:25:"gan ábhar teangeolaíoch";s:3:"zxx";s:26:"geen linguïstische inhoud";s:3:"zxx";s:13:"galleg kanada";s:5:"fr-ca";s:11:"galleg suis";s:5:"fr-ch";s:4:"geez";s:3:"gez";s:5:"gezeg";s:3:"gez";s:5:"gueez";s:3:"gez";s:7:"ge’ez";s:3:"gez";s:6:"guèze";s:3:"gez";s:4:"gís";s:3:"gez";s:3:"gyz";s:3:"gez";s:5:"gēzu";s:3:"gez";s:3:"ges";s:3:"gez";s:4:"gyyz";s:3:"gez";s:18:"టీగ్రె";s:3:"tig";s:14:"güney altayca";s:3:"alt";s:13:"gergo chinook";s:3:"chn";s:12:"gammelfransk";s:3:"fro";s:12:"gammalfransk";s:3:"fro";s:4:"gayo";s:3:"gay";s:4:"gajo";s:3:"gay";s:4:"gaio";s:3:"gay";s:5:"gajó";s:3:"gay";s:10:"gajščina";s:3:"gay";s:5:"gbaya";s:3:"gba";s:5:"gbaja";s:3:"gba";s:5:"gbaia";s:3:"gba";s:13:"gbaya-sprache";s:3:"gba";s:13:"gbaya-sprooch";s:3:"gba";s:5:"gbaju";s:3:"gba";s:11:"gbajščina";s:3:"gba";s:10:"gilbertés";s:3:"gil";s:9:"gilberteg";s:3:"gil";s:11:"gilbertški";s:3:"gil";s:10:"gilbertès";s:3:"gil";s:12:"gilbertesisk";s:3:"gil";s:13:"gilbertesisch";s:3:"gil";s:10:"gilbertgbe";s:3:"gil";s:10:"gilbertese";s:3:"gil";s:10:"gilbertais";s:3:"gil";s:11:"gilberteesk";s:3:"gil";s:10:"gilbertski";s:3:"gil";s:7:"gilbert";s:3:"gil";s:9:"gilberska";s:3:"gil";s:13:"gilbertesesch";s:3:"gil";s:10:"gilbertjan";s:3:"gil";s:12:"gilberteesch";s:3:"gil";s:10:"gilbertees";s:3:"gil";s:13:"gilbertański";s:3:"gil";s:10:"gilbertês";s:3:"gil";s:11:"gilbertină";s:3:"gil";s:11:"gilbertiska";s:3:"gil";s:26:"germană mijlocie înaltă";s:3:"gmh";s:14:"gammelhøytysk";s:3:"goh";s:14:"gammalhøgtysk";s:3:"goh";s:23:"germană veche înaltă";s:3:"goh";s:5:"gondi";s:3:"gon";s:11:"góndština";s:3:"gon";s:13:"gondi-sprache";s:3:"gon";s:6:"gondí";s:3:"gon";s:13:"gondi-sprooch";s:3:"gon";s:13:"gondu valodas";s:3:"gon";s:10:"góndčina";s:3:"gon";s:9:"gorontalo";s:3:"gor";s:10:"gorontaló";s:3:"gor";s:9:"gorontalu";s:3:"gor";s:15:"gorontalščina";s:3:"gor";s:5:"grebo";s:3:"grb";s:13:"grebo-sprache";s:3:"grb";s:6:"grebó";s:3:"grb";s:6:"gerbó";s:3:"grb";s:5:"gerbo";s:3:"grb";s:13:"grebo-sprooch";s:3:"grb";s:11:"grebščina";s:3:"grb";s:9:"gwichʼin";s:3:"gwi";s:10:"gwich’in";s:3:"gwi";s:7:"gwichin";s:3:"gwi";s:9:"gvitšini";s:3:"gwi";s:8:"gwitšin";s:3:"gwi";s:7:"gvicsin";s:3:"gwi";s:8:"gvísín";s:3:"gwi";s:8:"gvičino";s:3:"gwi";s:7:"gwiċin";s:3:"gwi";s:8:"gvich'in";s:3:"gwi";s:17:"gyðingapersneska";s:3:"jpr";s:15:"giudeo persiano";s:3:"jpr";s:15:"giudaic-persian";s:3:"jpr";s:17:"gyðingaarabíska";s:3:"jrb";s:12:"giudeo arabo";s:3:"jrb";s:12:"giudaic-arab";s:3:"jrb";s:13:"gárjilgiella";s:3:"krl";s:24:"gaèlic irlandès mitjà";s:3:"mga";s:15:"gwyddeleg canol";s:3:"mga";s:11:"gammelnorsk";s:3:"non";s:11:"gammalnorsk";s:3:"non";s:13:"gammelpersisk";s:3:"peo";s:13:"gammalpersisk";s:3:"peo";s:18:"gammelprovençalsk";s:3:"pro";s:18:"gammalprovençalsk";s:3:"pro";s:10:"gammelirsk";s:3:"sga";s:10:"gammalirsk";s:3:"sga";s:15:"టింనే";s:3:"tem";s:18:"టెరెనో";s:3:"ter";s:12:"టివ్";s:3:"tiv";s:24:"టోకెలావ్";s:3:"tkl";s:21:"టామషేక్";s:3:"tmh";s:18:"టువాలు";s:3:"tvl";s:4:"яо";s:3:"yao";s:10:"япезе";s:3:"yap";s:4:"яп";s:3:"yap";s:10:"янбан";s:3:"yav";s:12:"янгбен";s:3:"yav";s:43:"టునీషియా అరబిక్";s:3:"aeb";s:7:"ghomala";s:3:"bbj";s:10:"ghomalagbe";s:3:"bbj";s:10:"ghomala’";s:3:"bbj";s:6:"gomala";s:3:"bbj";s:12:"ghomálá’";s:3:"bbj";s:8:"ghomalų";s:3:"bbj";s:6:"gomalu";s:3:"bbj";s:5:"gabri";s:3:"gbz";s:12:"goan konkani";s:3:"gom";s:11:"goa-konkani";s:3:"gom";s:11:"goankonkani";s:3:"gom";s:12:"goan-konkani";s:3:"gom";s:13:"goa konkanių";s:3:"gom";s:11:"goa konkani";s:3:"gom";s:15:"goa konkanicesi";s:3:"gom";s:7:"gurenne";s:3:"gur";s:6:"gurune";s:3:"gur";s:18:"ట్యాప్";s:3:"kcg";s:32:"goan konkani (devanagari script)";s:8:"gom-deva";s:29:"goan konkani (kannada script)";s:8:"gom-knda";s:31:"goan konkani (malayalam script)";s:8:"gom-mlym";s:28:"goan konkani (arabic script)";s:8:"gom-arab";s:19:"germaansche spraken";s:3:"gem";s:15:"germanski jezik";s:3:"gem";}i:466;a:2:{s:27:"ゲグ・アルバニア語";s:3:"aln";s:12:"ゲエズ語";s:3:"gez";}i:75;a:113:{s:27:"гешки албански";s:3:"aln";s:18:"германски";s:2:"de";s:12:"герман";s:2:"de";s:14:"грэцкая";s:2:"el";s:12:"гръцки";s:2:"el";s:17:"грек тілі";s:2:"el";s:12:"грекче";s:2:"el";s:10:"грчки";s:2:"el";s:8:"грек";s:2:"el";s:18:"греческий";s:2:"el";s:14:"грецька";s:2:"el";s:20:"гішпанская";s:2:"es";s:16:"гагаузки";s:3:"gag";s:12:"гагауз";s:3:"gag";s:16:"гагаузча";s:3:"gag";s:16:"гагауски";s:3:"gag";s:10:"гагуз";s:3:"gag";s:20:"гагаузский";s:3:"gag";s:18:"гагаузька";s:3:"gag";s:6:"ган";s:3:"gan";s:16:"гэльский";s:2:"gd";s:18:"гаельська";s:2:"gd";s:22:"галісійская";s:2:"gl";s:22:"галіцыйская";s:2:"gl";s:20:"галисийски";s:2:"gl";s:8:"гали";s:2:"gl";s:18:"галисияча";s:2:"gl";s:18:"галициски";s:2:"gl";s:10:"галик";s:2:"gl";s:22:"галисийский";s:2:"gl";s:20:"галицијски";s:2:"gl";s:22:"галісійська";s:2:"gl";s:16:"гилански";s:3:"glk";s:14:"гуарані";s:2:"gn";s:14:"гуарани";s:2:"gn";s:12:"гуараш";s:2:"gn";s:18:"гварански";s:2:"gn";s:14:"гварани";s:2:"gn";s:18:"готически";s:3:"got";s:12:"готски";s:3:"got";s:14:"готский";s:3:"got";s:14:"готська";s:3:"got";s:14:"гуяраці";s:2:"gu";s:18:"гуджарати";s:2:"gu";s:18:"гужаратча";s:2:"gu";s:16:"гуџарати";s:2:"gu";s:16:"гужарати";s:2:"gu";s:18:"гуджараті";s:2:"gu";s:10:"гавай";s:3:"haw";s:14:"гавайча";s:3:"haw";s:18:"гавайский";s:3:"haw";s:18:"гавайська";s:3:"haw";s:12:"гіндзі";s:2:"hi";s:10:"гінді";s:2:"hi";s:24:"горнолужишки";s:3:"hsb";s:24:"горнолужички";s:3:"hsb";s:37:"горњи лужичкосрпски";s:3:"hsb";s:12:"гаитян";s:2:"ht";s:14:"гаитиче";s:2:"ht";s:10:"гаити";s:2:"ht";s:20:"гаитянский";s:2:"ht";s:20:"гаїтянська";s:2:"ht";s:12:"гереро";s:2:"hz";s:20:"грузінская";s:2:"ka";s:18:"грузински";s:2:"ka";s:21:"грузин тілі";s:2:"ka";s:16:"грузинче";s:2:"ka";s:16:"грузиски";s:2:"ka";s:8:"гүрж";s:2:"ka";s:18:"гуырдзиаг";s:2:"ka";s:20:"грузинский";s:2:"ka";s:18:"грузијски";s:2:"ka";s:20:"грузинська";s:2:"ka";s:24:"грэнляндзкая";s:2:"kl";s:22:"гренландски";s:2:"kl";s:24:"гренландский";s:2:"kl";s:10:"ганда";s:2:"lg";s:14:"гандача";s:2:"lg";s:20:"галандская";s:2:"nl";s:18:"голландча";s:2:"nl";s:14:"голланд";s:2:"nl";s:22:"голландский";s:2:"nl";s:22:"голландська";s:2:"nl";s:12:"ᏓᎶᏂᎨ";s:2:"zh";s:4:"га";s:3:"gaa";s:10:"гусии";s:3:"guz";s:12:"гусиче";s:3:"guz";s:8:"гуси";s:3:"guz";s:8:"гузы";s:3:"guz";s:10:"гусії";s:3:"guz";s:8:"гииз";s:3:"gez";s:6:"гиз";s:3:"gez";s:8:"геэз";s:3:"gez";s:8:"гєез";s:3:"gez";s:8:"гайо";s:3:"gay";s:8:"гајо";s:3:"gay";s:8:"гбая";s:3:"gba";s:10:"гбаја";s:3:"gba";s:10:"гбайя";s:3:"gba";s:20:"гилбертски";s:3:"gil";s:24:"гилбертански";s:3:"gil";s:24:"гильбертский";s:3:"gil";s:24:"гільбертська";s:3:"gil";s:10:"гонди";s:3:"gon";s:10:"гонді";s:3:"gon";s:18:"горонтало";s:3:"gor";s:10:"гребо";s:3:"grb";s:12:"гвичин";s:3:"gwi";s:18:"гвичински";s:3:"gwi";s:12:"гомала";s:3:"bbj";s:14:"гхомала";s:3:"bbj";s:29:"гоански конкани";s:3:"gom";s:14:"гвахиро";s:3:"guc";}i:648;a:94:{s:36:"เกกแอลเบเนีย";s:3:"aln";s:21:"เบลารุส";s:2:"be";s:21:"เบงกาลี";s:2:"bn";s:18:"เบรตัน";s:2:"br";s:15:"เชเชน";s:2:"ce";s:12:"เซบู";s:3:"ceb";s:21:"เชอโรกี";s:3:"chr";s:21:"เชเยนเน";s:3:"chy";s:36:"เคิร์ดโซรานี";s:3:"ckb";s:12:"เช็ก";s:2:"cs";s:36:"เชอร์ชสลาวิก";s:2:"cu";s:15:"เวลส์";s:2:"cy";s:24:"เดนมาร์ก";s:2:"da";s:21:"เยอรมัน";s:2:"de";s:48:"เยอรมัน - ออสเตรีย";s:5:"de-at";s:45:"เยอรมันสูง (สวิส)";s:5:"de-ch";s:12:"เอเว";s:2:"ee";s:24:"เอมีเลีย";s:3:"egl";s:33:"เอสเปอรันโต";s:2:"eo";s:27:"เอสโตเนีย";s:2:"et";s:42:"เอกซ์เตรมาดูรา";s:3:"ext";s:27:"เปอร์เซีย";s:2:"fa";s:33:"เยอรมันสวิส";s:3:"gsw";s:15:"เฮาชา";s:2:"ha";s:12:"เฮติ";s:2:"ht";s:18:"เฮเรโร";s:2:"hz";s:21:"เสฉวนยิ";s:2:"ii";s:33:"เคอร์มานิกิ";s:3:"kiu";s:12:"เขมร";s:2:"km";s:18:"เกาหลี";s:2:"ko";s:18:"เคิร์ด";s:2:"ku";s:24:"เลซเกียน";s:3:"lez";s:15:"เมารี";s:2:"mi";s:12:"엘즈야어";s:3:"myv";s:27:"เอียร์ซยา";s:3:"myv";s:60:"เยอรมันต่ำ - แซกซอนต่ำ";s:3:"nds";s:15:"เนปาล";s:2:"ne";s:18:"เนวาร์";s:3:"new";s:21:"เนียนจา";s:2:"ny";s:57:"เยอรมันเพนซิลเวเนีย";s:3:"pdc";s:27:"เพลาท์ดิช";s:3:"pdt";s:48:"เยอรมันพาลาทิเนต";s:3:"pfl";s:12:"เซรี";s:3:"sei";s:49:"เซอร์โบ-โครเอเชีย";s:2:"sh";s:27:"เซอร์เบีย";s:2:"sr";s:18:"เตลูกู";s:2:"te";s:15:"เตตุม";s:3:"tet";s:42:"เติร์กเมนิสถาน";s:2:"tk";s:15:"เวนดา";s:2:"ve";s:21:"เวเนโต้";s:3:"vec";s:15:"เวปส์";s:3:"vep";s:24:"เวียดนาม";s:2:"vi";s:39:"เฟลมิชตะวันตก";s:3:"vls";s:40:"เมน-ฟรานโกเนีย";s:3:"vmf";s:27:"เมเกรเลีย";s:3:"xmf";s:21:"เซแลนด์";s:3:"zea";s:15:"เบมบา";s:3:"bem";s:12:"เบนา";s:3:"bez";s:18:"เอ็มบู";s:3:"ebu";s:12:"เมรู";s:3:"mer";s:12:"เมตา";s:3:"mgo";s:45:"เอ็นเดเบเลเหนือ";s:2:"nd";s:18:"เฟลมิช";s:5:"nl-be";s:18:"เอ็นโก";s:3:"nqo";s:39:"เอ็นเดเบเลใต้";s:2:"nr";s:18:"เนือร์";s:3:"nus";s:27:"เนียนโกเล";s:3:"nyn";s:12:"เซนา";s:3:"seh";s:12:"เตโซ";s:3:"teo";s:12:"เบจา";s:3:"bej";s:24:"เดลาแวร์";s:3:"del";s:9:"엘람어";s:3:"elx";s:42:"เยอรมันสูงกลาง";s:3:"gmh";s:45:"เยอรมันสูงโบราณ";s:3:"goh";s:15:"เกรโบ";s:3:"grb";s:15:"เมนเด";s:3:"men";s:42:"เนวาร์ดั้งเดิม";s:3:"nwc";s:27:"เนียมเวซี";s:3:"nym";s:42:"เปอร์เซียโบราณ";s:3:"peo";s:18:"เซลคุป";s:3:"sel";s:18:"เซแรร์";s:3:"srr";s:18:"เทเรโน";s:3:"ter";s:12:"เย้า";s:3:"yao";s:18:"เซนากา";s:3:"zen";s:18:"เบตาวี";s:3:"bew";s:21:"เมดุมบา";s:3:"byv";s:21:"เกินยาง";s:3:"ken";s:21:"เคนก่าง";s:3:"kgp";s:24:"เม็นตาไว";s:3:"mwv";s:27:"เสาราษฏร์";s:3:"saz";s:18:"เซนิกา";s:3:"see";s:15:"เยมบา";s:3:"ybb";s:24:"เซลายาร์";s:3:"sly";s:24:"เหงงกาตุ";s:3:"yrl";}i:995;a:2:{s:24:"蓋格阿爾巴尼亞文";s:3:"aln";s:12:"蓋楚瓦文";s:2:"qu";}i:703;a:11:{s:24:"એમ્હારિક";s:2:"am";s:27:"એરોકૈનિયન";s:3:"arn";s:33:"એસ્પેરાન્ટો";s:2:"eo";s:27:"એસ્ટોનિયન";s:2:"et";s:18:"એર્ઝયા";s:3:"myv";s:15:"એકોલી";s:3:"ach";s:12:"એફિક";s:3:"efi";s:15:"એન’કો";s:3:"nqo";s:18:"એકાજુક";s:3:"eka";s:21:"એલામાઇટ";s:3:"elx";s:9:"岗德文";s:3:"gon";}i:516;a:6:{s:12:"암하라어";s:2:"am";s:15:"ヤクート語";s:3:"sah";s:9:"분조어";s:3:"vun";s:9:"ヤオ語";s:3:"yao";s:12:"ヤップ語";s:3:"yap";s:15:"ヤンベン語";s:3:"yav";}i:198;a:2:{s:8:"Ænglisc";s:3:"ang";s:18:"Үзбиэктии";s:2:"uz";}i:89;a:263:{s:30:"стараанглійская";s:3:"ang";s:30:"стараангельская";s:3:"ang";s:28:"староанглийски";s:3:"ang";s:26:"староанглиски";s:3:"ang";s:30:"староанглийский";s:3:"ang";s:14:"себуано";s:3:"ceb";s:18:"себуански";s:3:"ceb";s:20:"себуанська";s:3:"ceb";s:21:"сорани тілі";s:3:"ckb";s:21:"сорани курд";s:3:"ckb";s:31:"сорански курдски";s:3:"ckb";s:21:"сорани күрд";s:3:"ckb";s:29:"сорани курдский";s:3:"ckb";s:27:"сорани курдски";s:3:"ckb";s:53:"словѣньскъ / ⰔⰎⰑⰂⰡⰐⰠⰔⰍⰟ";s:2:"cu";s:29:"северен фризски";s:3:"frr";s:30:"севернофризиски";s:3:"frr";s:24:"старагрэцкая";s:3:"grc";s:34:"старажытнагрэцкая";s:3:"grc";s:20:"старогрчки";s:3:"grc";s:14:"сомихаг";s:2:"hy";s:21:"съчуански и";s:2:"ii";s:24:"сычуан и тілі";s:2:"ii";s:14:"сычуань";s:2:"ii";s:17:"сечуан ји";s:2:"ii";s:14:"сичуань";s:2:"ii";s:16:"солонгос";s:2:"ko";s:23:"северен сото";s:3:"nso";s:25:"сото северный";s:3:"nso";s:25:"сото північна";s:3:"nso";s:16:"санскрыт";s:2:"sa";s:24:"санкскритски";s:2:"sa";s:16:"санскрит";s:2:"sa";s:20:"санскритче";s:2:"sa";s:17:"саха тыла";s:3:"sah";s:14:"сантали";s:3:"sat";s:22:"сантальська";s:3:"sat";s:18:"сардински";s:2:"sc";s:20:"сардинский";s:2:"sc";s:20:"сардинська";s:2:"sc";s:22:"сицилиански";s:3:"scn";s:24:"сицилијански";s:3:"scn";s:22:"сицилийский";s:3:"scn";s:22:"сицилійська";s:3:"scn";s:12:"сіндхі";s:2:"sd";s:12:"синдхи";s:2:"sd";s:16:"синдхиче";s:2:"sd";s:10:"синди";s:2:"sd";s:35:"сасарски сардински";s:3:"sdc";s:28:"северносаамски";s:2:"se";s:27:"солтүстік сами";s:2:"se";s:30:"севернолапонски";s:2:"se";s:30:"северносаамский";s:2:"se";s:23:"северни сами";s:2:"se";s:33:"саамська північна";s:2:"se";s:8:"сери";s:3:"sei";s:10:"санго";s:2:"sg";s:14:"сангочо";s:2:"sg";s:20:"самогитски";s:3:"sgs";s:33:"сербска-харвацкая";s:2:"sh";s:32:"сэрбскахарвацкая";s:2:"sh";s:28:"сърбохърватски";s:2:"sh";s:20:"сербхорват";s:2:"sh";s:21:"серб-хорват";s:2:"sh";s:28:"српскохрватски";s:2:"sh";s:34:"сербскохорватский";s:2:"sh";s:37:"сербсько-хорватська";s:2:"sh";s:22:"сінгальская";s:2:"si";s:18:"синхалски";s:2:"si";s:12:"сингал";s:2:"si";s:18:"сингалача";s:2:"si";s:14:"синхала";s:2:"si";s:22:"сингальский";s:2:"si";s:22:"сингальська";s:2:"si";s:41:"спрошчаная ангельская";s:6:"simple";s:18:"славацкая";s:2:"sk";s:16:"словашки";s:2:"sk";s:12:"словак";s:2:"sk";s:16:"словакча";s:2:"sk";s:16:"словачки";s:2:"sk";s:18:"словацкий";s:2:"sk";s:18:"словацька";s:2:"sk";s:20:"славенская";s:2:"sl";s:18:"словенски";s:2:"sl";s:12:"словен";s:2:"sl";s:16:"словенче";s:2:"sl";s:20:"словенечки";s:2:"sl";s:20:"словенский";s:2:"sl";s:20:"словеначки";s:2:"sl";s:20:"словенська";s:2:"sl";s:18:"самоански";s:2:"sm";s:20:"самоанский";s:2:"sm";s:20:"самоанська";s:2:"sm";s:29:"саамский (южный)";s:3:"sma";s:33:"саамська південна";s:3:"sma";s:22:"самалійская";s:2:"so";s:20:"сомалийски";s:2:"so";s:12:"сомали";s:2:"so";s:16:"сомаличе";s:2:"so";s:18:"сомалиски";s:2:"so";s:16:"сомалски";s:2:"so";s:12:"сомалі";s:2:"so";s:21:"српски / srpski";s:2:"sr";s:16:"сербская";s:2:"sr";s:16:"сэрбская";s:2:"sr";s:14:"сръбски";s:2:"sr";s:17:"серб тілі";s:2:"sr";s:12:"сербче";s:2:"sr";s:12:"српски";s:2:"sr";s:8:"серб";s:2:"sr";s:16:"сербский";s:2:"sr";s:16:"сербська";s:2:"sr";s:34:"српски (ћирилица)‎";s:5:"sr-ec";s:35:"сэрбская (кірыліца)";s:5:"sr-ec";s:35:"сэрбская (лацініца)";s:5:"sr-el";s:23:"сранан тонго";s:3:"srn";s:25:"срански тонго";s:3:"srn";s:10:"суази";s:2:"ss";s:10:"свати";s:2:"ss";s:10:"свази";s:2:"ss";s:14:"сісваті";s:2:"ss";s:12:"сесуто";s:2:"st";s:12:"сесото";s:2:"st";s:19:"сото южный";s:2:"st";s:25:"сото південна";s:2:"st";s:18:"суданская";s:2:"su";s:18:"сундански";s:2:"su";s:10:"судан";s:2:"su";s:16:"сунданча";s:2:"su";s:14:"сундски";s:2:"su";s:12:"сундан";s:2:"su";s:20:"сунданский";s:2:"su";s:16:"судански";s:2:"su";s:20:"сунданська";s:2:"su";s:14:"суахілі";s:2:"sw";s:14:"суахили";s:2:"sw";s:18:"суахиличе";s:2:"sw";s:14:"свахили";s:2:"sw";s:57:"среднеатласский тамазигхтский";s:3:"tzm";s:39:"спрошчаная кітайская";s:7:"zh-hans";s:56:"съвременен стандартен арабски";s:6:"ar-001";s:25:"стандарт араб";s:6:"ar-001";s:52:"сучасна стандартна арабська";s:6:"ar-001";s:28:"стараэгіпецкая";s:3:"egy";s:28:"староегипетски";s:3:"egy";s:29:"северен ндебеле";s:2:"nd";s:31:"солтүстік ндебел";s:2:"nd";s:31:"северный ндебели";s:2:"nd";s:29:"северни ндебеле";s:2:"nd";s:14:"самбуру";s:3:"saq";s:18:"самбуруча";s:3:"saq";s:14:"самбүрү";s:3:"saq";s:10:"сангу";s:3:"sbp";s:14:"сангуча";s:3:"sbp";s:10:"сангү";s:3:"sbp";s:8:"сена";s:3:"seh";s:12:"сенача";s:3:"seh";s:25:"саамська луле";s:3:"smj";s:27:"саамська інарі";s:3:"smn";s:25:"сколт-саамски";s:3:"sms";s:19:"сколт саам";s:3:"sms";s:25:"сколт саамиче";s:3:"sms";s:33:"сколтски лапонски";s:3:"sms";s:19:"сколт сами";s:3:"sms";s:29:"скольт-саамский";s:3:"sms";s:29:"саамська скольт";s:3:"sms";s:8:"сога";s:3:"xog";s:12:"согача";s:3:"xog";s:58:"стандартен марокански тамазигт";s:3:"zgh";s:64:"стандарден марокански тамазигтски";s:3:"zgh";s:58:"стандардни марокански тамазигт";s:3:"zgh";s:66:"стандартна марокканська берберська";s:3:"zgh";s:12:"сидамо";s:3:"sid";s:12:"сидама";s:3:"sid";s:12:"сідамо";s:3:"sid";s:14:"сиксика";s:3:"bla";s:14:"сіксіка";s:3:"bla";s:12:"слейви";s:3:"den";s:12:"слејви";s:3:"den";s:20:"славянский";s:3:"den";s:10:"слейв";s:3:"den";s:45:"средновековен холандски";s:3:"dum";s:30:"среднохоландски";s:3:"dum";s:38:"средненидерландский";s:3:"dum";s:42:"середньонідерландська";s:3:"dum";s:45:"средновековен английски";s:3:"enm";s:28:"средноанглиски";s:3:"enm";s:32:"среднеанглийский";s:3:"enm";s:36:"середньоанглійська";s:3:"enm";s:41:"средновековен френски";s:3:"frm";s:30:"среднофранцуски";s:3:"frm";s:34:"среднефранцузский";s:3:"frm";s:36:"середньофранцузька";s:3:"frm";s:32:"старафранцузская";s:3:"fro";s:24:"старофренски";s:3:"fro";s:28:"старофранцуски";s:3:"fro";s:32:"старофранцузский";s:3:"fro";s:39:"средновековен немски";s:3:"gmh";s:40:"средногорногермански";s:3:"gmh";s:40:"средневерхненемецкий";s:3:"gmh";s:46:"середньоверхньонімецька";s:3:"gmh";s:34:"старовисоконемски";s:3:"goh";s:38:"старогорногермански";s:3:"goh";s:45:"средновековен ирландски";s:3:"mga";s:22:"средноирски";s:3:"mga";s:32:"среднеирландский";s:3:"mga";s:36:"середньоірландська";s:3:"mga";s:30:"старанарвежская";s:3:"non";s:28:"старанарвэская";s:3:"non";s:28:"старонорвежски";s:3:"non";s:26:"старонордиски";s:3:"non";s:30:"старонорвежский";s:3:"non";s:26:"старотурецкий";s:3:"ota";s:28:"средноперсиски";s:3:"pal";s:30:"стараперсідская";s:3:"peo";s:30:"старапэрсыдзкая";s:3:"peo";s:28:"староперсийски";s:3:"peo";s:26:"староперсиски";s:3:"peo";s:30:"староперсидский";s:3:"peo";s:38:"стараправансальская";s:3:"pro";s:34:"старопровансалски";s:3:"pro";s:38:"старопровансальский";s:3:"pro";s:12:"сандве";s:3:"sad";s:14:"сандаве";s:3:"sad";s:43:"самаритански арамейски";s:3:"sam";s:41:"самарјански арамејски";s:3:"sam";s:47:"самаритянский арамейский";s:3:"sam";s:47:"самаритянська арамейська";s:3:"sam";s:10:"сасак";s:3:"sas";s:14:"сасачки";s:3:"sas";s:12:"сасаки";s:3:"sas";s:18:"сасакська";s:3:"sas";s:12:"селкуп";s:3:"sel";s:18:"селкупски";s:3:"sel";s:22:"селькупский";s:3:"sel";s:22:"селькупська";s:3:"sel";s:30:"стараірландская";s:3:"sga";s:28:"староирландски";s:3:"sga";s:20:"староирски";s:3:"sga";s:30:"староирландский";s:3:"sga";s:14:"сонинке";s:3:"snk";s:14:"сонінке";s:3:"snk";s:18:"согдийски";s:3:"sog";s:20:"согдийский";s:3:"sog";s:20:"согдійська";s:3:"sog";s:10:"серер";s:3:"srr";s:12:"сукума";s:3:"suk";s:8:"сусу";s:3:"sus";s:16:"сумерски";s:3:"sux";s:35:"сирійська класична";s:3:"syc";s:16:"сирийски";s:3:"syr";s:14:"сириски";s:3:"syr";s:18:"сирийский";s:3:"syr";s:18:"сирійська";s:3:"syr";s:18:"сапатэкаў";s:3:"zap";s:22:"сапотекский";s:3:"zap";s:22:"сапотекська";s:3:"zap";s:10:"сјанг";s:3:"hsn";s:18:"саураштра";s:3:"saz";s:12:"сенека";s:3:"see";s:8:"сахо";s:3:"ssy";s:25:"сэміцкая мова";s:3:"sem";s:20:"селајарски";s:3:"sly";}i:474;a:26:{s:40:"প্রাচীন ইংরেজী";s:3:"ang";s:43:"পশ্চিম ফ্রিসিয়";s:2:"fy";s:37:"প্রাচীন গ্রীক";s:3:"grc";s:24:"পাঞ্জাবী";s:2:"pa";s:33:"পাঙ্গাসিনান";s:3:"pag";s:30:"পাম্পাঙ্গা";s:3:"pam";s:39:"পাপিয়ামেন্টো";s:3:"pap";s:12:"পালি";s:2:"pi";s:15:"পোলিশ";s:2:"pl";s:18:"পাশ্তু";s:2:"ps";s:24:"পর্তুগীজ";s:2:"pt";s:15:"ズールー語";s:2:"zu";s:43:"প্রাচীন মিশরীয়";s:3:"egy";s:37:"প্রাচীন ফরাসি";s:3:"fro";s:40:"পূর্ব ফ্রিসিয়";s:3:"frs";s:59:"প্রাচীন উচ্চ জার্মানি";s:3:"goh";s:34:"প্রাচীন নর্স";s:3:"non";s:46:"প্রাচীন নেওয়ারী";s:3:"nwc";s:24:"পাহ্লাভি";s:3:"pal";s:33:"পালায়ুয়ান";s:3:"pau";s:40:"প্রাচীন ফার্সি";s:3:"peo";s:36:"পোহ্নপেইয়ান";s:3:"pon";s:52:"প্রাচীন প্রোভেনসাল";s:3:"pro";s:37:"প্রাচীন আইরিশ";s:3:"sga";s:37:"প্রাচীন সিরিও";s:3:"syc";s:9:"ズニ語";s:3:"zun";}i:104;a:391:{s:10:"hensaozneg";s:3:"ang";s:11:"hen saesneg";s:3:"ang";s:12:"hviderussisk";s:2:"be";s:13:"hvitarussiskt";s:2:"be";s:15:"hvítrússneska";s:2:"be";s:12:"hviterussisk";s:2:"be";s:11:"harshen cak";s:2:"cs";s:12:"hen slafoneg";s:2:"cu";s:6:"helene";s:2:"el";s:7:"hispana";s:2:"es";s:9:"hispaania";s:2:"es";s:11:"hiszpański";s:2:"es";s:13:"hi xi estonia";s:2:"et";s:16:"höglandsskotska";s:2:"gd";s:15:"hencʼhresianeg";s:3:"grc";s:8:"hen roeg";s:3:"grc";s:5:"hausa";s:2:"ha";s:6:"haousa";s:2:"ha";s:6:"haussa";s:2:"ha";s:9:"hauština";s:2:"ha";s:5:"hawsa";s:2:"ha";s:8:"hausagbe";s:2:"ha";s:6:"haŭsa";s:2:"ha";s:12:"hawsaŋkoore";s:2:"ha";s:7:"haoussa";s:2:"ha";s:7:"hásais";s:2:"ha";s:6:"hausza";s:2:"ha";s:5:"hása";s:2:"ha";s:6:"haußa";s:2:"ha";s:6:"hausų";s:2:"ha";s:5:"hausu";s:2:"ha";s:7:"haúça";s:2:"ha";s:7:"hauçá";s:2:"ha";s:10:"hausa simi";s:2:"ha";s:12:"haussagiella";s:2:"ha";s:7:"haüsä";s:2:"ha";s:10:"havščina";s:2:"ha";s:8:"hausisht";s:2:"ha";s:5:"hakka";s:3:"hak";s:11:"hakka-kiina";s:3:"hak";s:8:"haicéis";s:3:"hak";s:16:"hakka-chinesesch";s:3:"hak";s:14:"hakka Çincesi";s:3:"hak";s:7:"hawai`i";s:3:"haw";s:8:"hawaiies";s:3:"haw";s:8:"hawaianu";s:3:"haw";s:5:"havay";s:3:"haw";s:7:"hawaieg";s:3:"haw";s:8:"havajski";s:3:"haw";s:7:"hawaià";s:3:"haw";s:11:"havajština";s:3:"haw";s:8:"hawäieg";s:3:"haw";s:10:"hawaiiansk";s:3:"haw";s:9:"hawaiisch";s:3:"haw";s:13:"hawaiišćina";s:3:"haw";s:8:"hawaigbe";s:3:"haw";s:8:"hawaiian";s:3:"haw";s:6:"havaja";s:3:"haw";s:8:"hawaiano";s:3:"haw";s:5:"havai";s:3:"haw";s:9:"hawaiiera";s:3:"haw";s:7:"havaiji";s:3:"haw";s:11:"hawaiianskt";s:3:"haw";s:8:"hawaïen";s:3:"haw";s:11:"hawaïaansk";s:3:"haw";s:7:"haváis";s:3:"haw";s:12:"hawaiianisch";s:3:"haw";s:6:"hawaii";s:3:"haw";s:9:"havaíska";s:3:"haw";s:12:"hauajaanesch";s:3:"haw";s:9:"hawaiesch";s:3:"haw";s:12:"havajiečių";s:3:"haw";s:10:"havajiešu";s:3:"haw";s:8:"hawaiisk";s:3:"haw";s:12:"hawaiiaansch";s:3:"haw";s:10:"hawaïaans";s:3:"haw";s:8:"hawajski";s:3:"haw";s:8:"havaiano";s:3:"haw";s:7:"hawaian";s:3:"haw";s:10:"hawaiiană";s:3:"haw";s:12:"hawaiigiella";s:3:"haw";s:10:"havajčina";s:3:"haw";s:12:"havajščina";s:3:"haw";s:8:"hauajane";s:3:"haw";s:9:"hawaiiska";s:3:"haw";s:11:"hawaii dili";s:3:"haw";s:8:"hebreeus";s:2:"he";s:7:"hebréu";s:2:"he";s:7:"hebraeg";s:2:"he";s:9:"hebrejski";s:2:"he";s:6:"hebreu";s:2:"he";s:12:"hebrejština";s:2:"he";s:8:"hebraisk";s:2:"he";s:10:"hebräisch";s:2:"he";s:13:"hebrejšćina";s:2:"he";s:8:"hebrigbe";s:2:"he";s:6:"hebrew";s:2:"he";s:6:"hebrea";s:2:"he";s:6:"hebreo";s:2:"he";s:7:"heebrea";s:2:"he";s:8:"hebreera";s:2:"he";s:6:"heprea";s:2:"he";s:9:"hebraiskt";s:2:"he";s:7:"hébreu";s:2:"he";s:10:"hebreeuwsk";s:2:"he";s:6:"hebera";s:2:"he";s:6:"héber";s:2:"he";s:8:"hebreska";s:2:"he";s:12:"hebraimiutut";s:2:"he";s:11:"hebräjesch";s:2:"he";s:10:"hebräesch";s:2:"he";s:8:"hebrajų";s:2:"he";s:11:"hebrääsch";s:2:"he";s:9:"hebreeuws";s:2:"he";s:9:"hebrajski";s:2:"he";s:8:"hebraico";s:2:"he";s:11:"hebreo simi";s:2:"he";s:11:"hebrejčina";s:2:"he";s:13:"hebrejščina";s:2:"he";s:9:"hebraisht";s:2:"he";s:9:"hebreiska";s:2:"he";s:5:"hindi";s:2:"hi";s:10:"hindština";s:2:"hi";s:12:"hindišćina";s:2:"hi";s:8:"hindigbe";s:2:"hi";s:5:"hinda";s:2:"hi";s:6:"hindia";s:2:"hi";s:6:"hinndi";s:2:"hi";s:9:"hiondúis";s:2:"hi";s:6:"hindis";s:2:"hi";s:13:"harshen hindi";s:2:"hi";s:7:"hindski";s:2:"hi";s:6:"hindí";s:2:"hi";s:11:"hindimiutut";s:2:"hi";s:6:"híndi";s:2:"hi";s:10:"hindi simi";s:2:"hi";s:11:"hindigiella";s:2:"hi";s:6:"hîndi";s:2:"hi";s:9:"hindčina";s:2:"hi";s:13:"hindujščina";s:2:"hi";s:7:"hintçe";s:2:"hi";s:7:"hindcha";s:2:"hi";s:13:"hindi de fiji";s:3:"hif";s:19:"hindština (fidži)";s:3:"hif";s:13:"hindi fidjien";s:3:"hif";s:17:"hiondúis fhidsí";s:3:"hif";s:19:"hindis fhìditheach";s:3:"hif";s:10:"hindi fiji";s:3:"hif";s:13:"hindi figiano";s:3:"hif";s:17:"hindi fidżyjskie";s:3:"hif";s:10:"hiligaynon";s:3:"hil";s:15:"hiliqaynon dili";s:3:"hil";s:10:"hiligajnon";s:3:"hil";s:10:"hiligainon";s:3:"hil";s:16:"hiligajnonština";s:3:"hil";s:18:"hiligaynon-sprache";s:3:"hil";s:12:"hiligenɔgbe";s:3:"hil";s:11:"hiligainoni";s:3:"hil";s:9:"hiligaino";s:3:"hil";s:13:"hilgeanóinis";s:3:"hil";s:14:"hiligaynonisch";s:3:"hil";s:12:"híligaínon";s:3:"hil";s:9:"hiligayna";s:3:"hil";s:18:"hiligaynon-sprooch";s:3:"hil";s:11:"hiligainonu";s:3:"hil";s:15:"hiligajnončina";s:3:"hil";s:17:"hiligajnonščina";s:3:"hil";s:9:"hiri motu";s:2:"ho";s:14:"hiri motu dili";s:2:"ho";s:8:"hirimotu";s:2:"ho";s:9:"hiri-motu";s:2:"ho";s:12:"hiri motugbe";s:2:"ho";s:12:"hírímótú";s:2:"ho";s:8:"hrvatski";s:2:"hr";s:8:"horvaadi";s:2:"hr";s:7:"horvát";s:2:"hr";s:8:"horvātu";s:2:"hr";s:11:"hrvaščina";s:2:"hr";s:10:"hırvatça";s:2:"hr";s:7:"hunsrik";s:3:"hrx";s:13:"hornjoserbsce";s:3:"hsb";s:12:"hoog-sorbies";s:3:"hsb";s:24:"hornolužická srbština";s:3:"hsb";s:11:"haut-sorabe";s:3:"hsb";s:17:"hornjoserbšćina";s:3:"hsb";s:12:"hásorbneska";s:3:"hsb";s:11:"høysorbisk";s:3:"hsb";s:11:"høgsorbisk";s:3:"hsb";s:23:"hornolužická srbčina";s:3:"hsb";s:12:"högsorbiska";s:3:"hsb";s:3:"hsb";s:3:"hsb";s:10:"haïtiaans";s:2:"ht";s:8:"haitianu";s:2:"ht";s:5:"haiti";s:2:"ht";s:7:"haitieg";s:2:"ht";s:10:"haićanski";s:2:"ht";s:7:"haitià";s:2:"ht";s:10:"haitština";s:2:"ht";s:7:"haitisk";s:2:"ht";s:11:"haitianisch";s:2:"ht";s:12:"haitišćina";s:2:"ht";s:8:"haitigbe";s:2:"ht";s:7:"haitian";s:2:"ht";s:13:"haitia kreola";s:2:"ht";s:8:"haitiano";s:2:"ht";s:8:"haitiera";s:2:"ht";s:8:"haitiskt";s:2:"ht";s:8:"haïtien";s:2:"ht";s:11:"haïtiaansk";s:2:"ht";s:8:"haitisch";s:2:"ht";s:10:"haítíska";s:2:"ht";s:12:"ha’iitesch";s:2:"ht";s:11:"haitianesch";s:2:"ht";s:7:"haičio";s:2:"ht";s:9:"haitiešu";s:2:"ht";s:21:"haitiaansch-kreoolsch";s:2:"ht";s:18:"haïtiaans creools";s:2:"ht";s:10:"haitański";s:2:"ht";s:21:"haitiano criollo simi";s:2:"ht";s:9:"haitiană";s:2:"ht";s:11:"haitigiella";s:2:"ht";s:9:"haitčina";s:2:"ht";s:22:"haitijska kreolščina";s:2:"ht";s:10:"haitiançe";s:2:"ht";s:8:"haitiska";s:2:"ht";s:10:"haiti dili";s:2:"ht";s:8:"hongaars";s:2:"hu";s:11:"hangri kasa";s:2:"hu";s:8:"húngaru";s:2:"hu";s:8:"hungareg";s:2:"hu";s:9:"hongarès";s:2:"hu";s:8:"hwngareg";s:2:"hu";s:13:"hungoršćina";s:2:"hu";s:10:"hungarigbe";s:2:"hu";s:9:"hungarian";s:2:"hu";s:7:"hungara";s:2:"hu";s:8:"húngaro";s:2:"hu";s:10:"hungariera";s:2:"hu";s:10:"hongariire";s:2:"hu";s:8:"hongrois";s:2:"hu";s:9:"hongaarsk";s:2:"hu";s:15:"harshen hungari";s:2:"hu";s:7:"hungaro";s:2:"hu";s:8:"hungaria";s:2:"hu";s:8:"hongroà";s:2:"hu";s:7:"hungary";s:2:"hu";s:12:"hungaro simi";s:2:"hu";s:9:"hongruäa";s:2:"hu";s:11:"hangariyaan";s:2:"hu";s:10:"hungarisht";s:2:"hu";s:13:"hi xi hungary";s:2:"hu";s:6:"herero";s:2:"hz";s:10:"herer dili";s:2:"hz";s:11:"hererština";s:2:"hz";s:14:"herero-sprache";s:2:"hz";s:8:"héréro";s:2:"hz";s:10:"heiréiris";s:2:"hz";s:7:"hereró";s:2:"hz";s:14:"herero-sprooch";s:2:"hz";s:6:"hereru";s:2:"hz";s:18:"harshen indunusiya";s:2:"id";s:13:"hi xi iceland";s:2:"is";s:13:"harshen kimar";s:2:"km";s:14:"harshen koreya";s:2:"ko";s:15:"hi xi lithuania";s:2:"lt";s:12:"hi xi latvia";s:2:"lv";s:9:"hill mari";s:3:"mrj";s:13:"harshen malai";s:2:"ms";s:14:"harshen maltis";s:2:"mt";s:7:"holland";s:2:"nl";s:9:"holandski";s:2:"nl";s:9:"hollandsk";s:2:"nl";s:10:"hɔlandgbe";s:2:"nl";s:8:"hollandi";s:2:"nl";s:8:"hollanti";s:2:"nl";s:10:"hollendskt";s:2:"nl";s:9:"holandés";s:2:"nl";s:7:"holanci";s:2:"nl";s:7:"hōlani";s:2:"nl";s:9:"hollenska";s:2:"nl";s:14:"hollandimiutut";s:2:"nl";s:12:"holländesch";s:2:"nl";s:12:"hollännesch";s:2:"nl";s:11:"holandiešu";s:2:"nl";s:8:"holandey";s:2:"nl";s:9:"holandês";s:2:"nl";s:16:"hollánddagiella";s:2:"nl";s:9:"holandëe";s:2:"nl";s:11:"holandčina";s:2:"nl";s:9:"holandays";s:2:"nl";s:10:"holandisht";s:2:"nl";s:10:"hollandaca";s:2:"nl";s:13:"harshen polan";s:2:"pl";s:9:"henbruseg";s:3:"prg";s:16:"harshen portugal";s:2:"pt";s:13:"hi xi romania";s:2:"ro";s:18:"hegoaldeko samiera";s:3:"sma";s:19:"hegoaldeko sothoera";s:2:"st";s:15:"harshen suwedan";s:2:"sv";s:16:"harshen suwahili";s:2:"sw";s:16:"harshen turkiyya";s:2:"tr";s:15:"harshen yukuren";s:2:"uk";s:12:"harshen urdu";s:2:"ur";s:17:"harshen biyetinam";s:2:"vi";s:5:"hosza";s:2:"xh";s:6:"hoosta";s:2:"xh";s:5:"hiina";s:2:"zh";s:11:"harshen sin";s:2:"zh";s:20:"hiina (lihtsustatud)";s:7:"zh-hans";s:24:"hiina (traditsiooniline)";s:7:"zh-hant";s:19:"hagyományos kínai";s:7:"zh-hant";s:12:"harshen zulu";s:2:"zu";s:10:"henegipteg";s:3:"egy";s:11:"hen eiffteg";s:3:"egy";s:8:"hetities";s:3:"hit";s:6:"hitita";s:3:"hit";s:11:"hittit dili";s:3:"hit";s:6:"hitite";s:3:"hit";s:6:"hetheg";s:3:"hit";s:9:"hittitisk";s:3:"hit";s:10:"hethitisch";s:3:"hit";s:7:"hittite";s:3:"hit";s:4:"heti";s:3:"hit";s:6:"heetti";s:3:"hit";s:9:"hettitysk";s:3:"hit";s:5:"hitis";s:3:"hit";s:8:"hetitski";s:3:"hit";s:5:"hitit";s:3:"hit";s:11:"hettitíska";s:3:"hit";s:10:"hethitesch";s:3:"hit";s:7:"hititų";s:3:"hit";s:4:"hetu";s:3:"hit";s:10:"hettittisk";s:3:"hit";s:9:"hethitsch";s:3:"hit";s:10:"hettitisch";s:3:"hit";s:7:"hetycki";s:3:"hit";s:7:"hitită";s:3:"hit";s:12:"hetitščina";s:3:"hit";s:10:"hettitiska";s:3:"hit";s:8:"hititçe";s:3:"hit";s:17:"hizkuntza anitzak";s:3:"mul";s:19:"hizkuntza ezezaguna";s:3:"und";s:23:"hakuna maudhui ya lugha";s:3:"zxx";s:19:"hispaania (euroopa)";s:5:"es-es";s:28:"holandština (středověká)";s:3:"dum";s:16:"holandês médio";s:3:"dum";s:12:"hencʼhalleg";s:3:"fro";s:12:"hen ffrangeg";s:3:"fro";s:30:"hornoněmčina (středověká)";s:3:"gmh";s:16:"henalamaneg uhel";s:3:"goh";s:23:"hornoněmčina (stará)";s:3:"goh";s:18:"hen uchel almaeneg";s:3:"goh";s:5:"haida";s:3:"hai";s:10:"hayda dili";s:3:"hai";s:10:"haidština";s:3:"hai";s:13:"haida-sprache";s:3:"hai";s:5:"haidi";s:3:"hai";s:6:"haída";s:3:"hai";s:13:"haida-sprooch";s:3:"hai";s:5:"haido";s:3:"hai";s:5:"haidu";s:3:"hai";s:11:"haidščina";s:3:"hai";s:5:"hmong";s:3:"hmn";s:11:"hmongština";s:3:"hmn";s:7:"hmongeg";s:3:"hmn";s:6:"hmongi";s:3:"hmn";s:6:"hmongu";s:3:"hmn";s:10:"hmongijski";s:3:"hmn";s:14:"hmong daw simi";s:3:"hmn";s:11:"hmonščina";s:3:"hmn";s:11:"hmongspråk";s:3:"hmn";s:4:"hupa";s:3:"hup";s:9:"hupa dili";s:3:"hup";s:7:"húipis";s:3:"hup";s:5:"húpa";s:3:"hup";s:4:"hupu";s:3:"hup";s:8:"hupčina";s:3:"hup";s:10:"hotaniešu";s:3:"kho";s:7:"hotanca";s:3:"kho";s:9:"hennorseg";s:3:"non";s:10:"hen norseg";s:3:"non";s:10:"hen newari";s:3:"nwc";s:9:"henberseg";s:3:"peo";s:11:"hen bersieg";s:3:"peo";s:13:"henbrovañseg";s:3:"pro";s:15:"hen brofensaleg";s:3:"pro";s:13:"heniwerzhoneg";s:3:"sga";s:12:"hen wyddeleg";s:3:"sga";s:10:"hen syrieg";s:3:"syc";s:9:"himachali";s:3:"him";s:9:"himačali";s:3:"him";}i:111;a:277:{s:10:"oldengelsk";s:3:"ang";s:11:"old english";s:3:"ang";s:12:"ooldengelsch";s:3:"ang";s:9:"oudengels";s:3:"ang";s:13:"ozarbayjoncha";s:2:"az";s:13:"orta kürtçe";s:3:"ckb";s:15:"osztrák német";s:5:"de-at";s:17:"oostenrijks duits";s:5:"de-at";s:12:"orta kadazan";s:3:"dtp";s:5:"oyibo";s:2:"en";s:17:"oarjifriisagiella";s:2:"fy";s:9:"oldgræsk";s:3:"grc";s:12:"ooldgreeksch";s:3:"grc";s:9:"oudgrieks";s:3:"grc";s:12:"obersorbisch";s:3:"hsb";s:12:"oppersorbysk";s:3:"hsb";s:13:"oppersorbisch";s:3:"hsb";s:9:"oŋirikan";s:2:"hu";s:9:"ongjarês";s:2:"hu";s:10:"ormiański";s:2:"hy";s:10:"otsiherero";s:2:"hz";s:11:"okcidentalo";s:2:"ie";s:5:"olasz";s:2:"it";s:17:"ova Çirmişçesi";s:3:"mrj";s:9:"oshiwambo";s:2:"ng";s:9:"olandekan";s:2:"nl";s:8:"olandês";s:2:"nl";s:9:"ollainnis";s:2:"nl";s:8:"olandese";s:2:"nl";s:7:"olandų";s:2:"nl";s:8:"olandiż";s:2:"nl";s:9:"ollandais";s:2:"nl";s:9:"olandeză";s:2:"nl";s:17:"ođđadárogiella";s:2:"nn";s:7:"occitan";s:2:"oc";s:9:"oksitaans";s:2:"oc";s:8:"occitanu";s:2:"oc";s:9:"oksitanca";s:2:"oc";s:8:"okitaneg";s:2:"oc";s:7:"occità";s:2:"oc";s:14:"okcitánština";s:2:"oc";s:9:"ocsitaneg";s:2:"oc";s:9:"occitansk";s:2:"oc";s:11:"okzitanisch";s:2:"oc";s:14:"okcitanšćina";s:2:"oc";s:8:"okcitana";s:2:"oc";s:8:"occitano";s:2:"oc";s:11:"okzitaniera";s:2:"oc";s:9:"oksitaani";s:2:"oc";s:6:"ocitan";s:2:"oc";s:10:"occitaansk";s:2:"oc";s:11:"ocsatáinis";s:2:"oc";s:10:"ogsatanais";s:2:"oc";s:8:"ositanci";s:2:"oc";s:10:"okcitanski";s:2:"oc";s:9:"okszitán";s:2:"oc";s:8:"ositania";s:2:"oc";s:13:"oksítaníska";s:2:"oc";s:11:"okzitanesch";s:2:"oc";s:9:"očitarų";s:2:"oc";s:10:"oksitāņu";s:2:"oc";s:9:"occitania";s:2:"oc";s:9:"oċċitan";s:2:"oc";s:9:"oksitansk";s:2:"oc";s:11:"okzitaansch";s:2:"oc";s:9:"occitaans";s:2:"oc";s:11:"occitânico";s:2:"oc";s:13:"occitano simi";s:2:"oc";s:9:"occitană";s:2:"oc";s:15:"oksitánagiella";s:2:"oc";s:13:"okcitánčina";s:2:"oc";s:14:"okcitanščina";s:2:"oc";s:7:"okitaan";s:2:"oc";s:11:"oksitanisht";s:2:"oc";s:10:"occitanska";s:2:"oc";s:6:"oromoo";s:2:"om";s:5:"oromo";s:2:"om";s:10:"oromština";s:2:"om";s:5:"oroma";s:2:"om";s:8:"oromoera";s:2:"om";s:7:"oraimis";s:2:"om";s:7:"oromski";s:2:"om";s:7:"oromói";s:2:"om";s:6:"oromų";s:2:"om";s:5:"oromu";s:2:"om";s:12:"oromo (afan)";s:2:"om";s:9:"oromčina";s:2:"om";s:9:"oromoisht";s:2:"om";s:8:"oromocha";s:2:"om";s:5:"oriya";s:2:"or";s:7:"orijski";s:2:"or";s:12:"orojišćina";s:2:"or";s:8:"oriyagbe";s:2:"or";s:5:"orijo";s:2:"or";s:4:"oria";s:2:"or";s:7:"oriyera";s:2:"or";s:5:"orija";s:2:"or";s:4:"odia";s:2:"or";s:8:"oirísis";s:2:"or";s:8:"oriyanci";s:2:"or";s:11:"orijšćina";s:2:"or";s:6:"oriija";s:2:"or";s:6:"orijų";s:2:"or";s:5:"oriju";s:2:"or";s:9:"odia simi";s:2:"or";s:11:"orijščina";s:2:"or";s:5:"orije";s:2:"or";s:10:"oriya dili";s:2:"or";s:7:"oriycha";s:2:"or";s:8:"osseties";s:2:"os";s:8:"oséticu";s:2:"os";s:11:"osetik dili";s:2:"os";s:6:"oseteg";s:2:"os";s:7:"osetski";s:2:"os";s:5:"osset";s:2:"os";s:10:"osetština";s:2:"os";s:8:"ossetisk";s:2:"os";s:9:"ossetisch";s:2:"os";s:10:"ossetiagbe";s:2:"os";s:7:"ossetic";s:2:"os";s:8:"osético";s:2:"os";s:7:"osseedi";s:2:"os";s:8:"osetiera";s:2:"os";s:8:"osseetti";s:2:"os";s:9:"ossetiskt";s:2:"os";s:7:"ossète";s:2:"os";s:6:"osetic";s:2:"os";s:8:"ossetysk";s:2:"os";s:9:"oiséitis";s:2:"os";s:6:"osetio";s:2:"os";s:9:"ossezisch";s:2:"os";s:6:"oszét";s:2:"os";s:7:"ossetia";s:2:"os";s:10:"ossetíska";s:2:"os";s:8:"ossetico";s:2:"os";s:10:"oßeetesch";s:2:"os";s:9:"ossetesch";s:2:"os";s:8:"osetinų";s:2:"os";s:8:"osetīnu";s:2:"os";s:6:"ossete";s:2:"os";s:9:"ossettiku";s:2:"os";s:8:"ossetsch";s:2:"os";s:9:"osetyjski";s:2:"os";s:9:"ossético";s:2:"os";s:6:"osetă";s:2:"os";s:9:"osetčina";s:2:"os";s:13:"osetinščina";s:2:"os";s:9:"ossetiska";s:2:"os";s:7:"osetçe";s:2:"os";s:12:"oudpruisisch";s:3:"prg";s:5:"orosz";s:2:"ru";s:18:"orta fas tamazigti";s:3:"tzm";s:10:"oudmourteg";s:3:"udm";s:9:"oudmourte";s:3:"udm";s:9:"oedmoerts";s:3:"udm";s:9:"ouigoureg";s:2:"ug";s:9:"ouïghour";s:2:"ug";s:8:"oeigoers";s:2:"ug";s:10:"oekraïens";s:2:"uk";s:12:"okrainianina";s:2:"uk";s:6:"oerdoe";s:2:"ur";s:6:"ourdou";s:2:"ur";s:5:"ordò";s:2:"ur";s:10:"oʻzbekcha";s:2:"uz";s:8:"oezbeeks";s:2:"uz";s:8:"ouzbekeg";s:2:"uz";s:6:"ouzbek";s:2:"uz";s:11:"oldegyptisk";s:3:"egy";s:12:"oudegyptisch";s:3:"egy";s:13:"oraon-sprache";s:3:"kru";s:6:"oraoni";s:3:"kru";s:15:"oraon-schpraach";s:3:"kru";s:13:"oraon-sprooch";s:3:"kru";s:5:"oraon";s:3:"kru";s:8:"olulujia";s:3:"luy";s:8:"oluluyia";s:3:"luy";s:27:"onbekende of ongeldige taal";s:3:"und";s:14:"onbekende taal";s:3:"und";s:19:"onbestëmmt sprooch";s:3:"und";s:16:"obestämt språk";s:3:"und";s:17:"ortacaq hollandca";s:3:"dum";s:14:"olandese medio";s:3:"dum";s:19:"olandiż, medjevali";s:3:"dum";s:16:"ollandais mesaun";s:3:"dum";s:18:"olandeză mijlocie";s:3:"dum";s:23:"ortaçağ felemenkçesi";s:3:"dum";s:18:"ortacaq ingiliscə";s:3:"enm";s:22:"ortaçağ İngilizcesi";s:3:"enm";s:18:"ortacaq fransızca";s:3:"frm";s:23:"ortaçağ fransızcası";s:3:"frm";s:9:"oldfransk";s:3:"fro";s:10:"old french";s:3:"fro";s:16:"ooldfranzöösch";s:3:"fro";s:8:"oudfrans";s:3:"fro";s:12:"ostfriesisch";s:3:"frs";s:14:"oschtfriesisch";s:3:"frs";s:12:"ostfriesesch";s:3:"frs";s:10:"oost-fries";s:3:"frs";s:24:"ortacaq yüksək almanca";s:3:"gmh";s:28:"ortaçağ yüksek almancası";s:3:"gmh";s:11:"oldhøjtysk";s:3:"goh";s:15:"old high german";s:3:"goh";s:18:"ooldhoochdüütsch";s:3:"goh";s:12:"oudhoogduits";s:3:"goh";s:16:"ortacaq irlandca";s:3:"mga";s:23:"ortaçağ İrlandacası";s:3:"mga";s:11:"oldislandsk";s:3:"non";s:9:"old norse";s:3:"non";s:11:"ooldnoorsch";s:3:"non";s:8:"oudnoors";s:3:"non";s:11:"oold-newari";s:3:"nwc";s:6:"ojibwa";s:2:"oj";s:11:"ocibva dili";s:2:"oj";s:6:"ojibva";s:2:"oj";s:15:"odžibvejština";s:2:"oj";s:14:"ojibwa-sprache";s:2:"oj";s:9:"odžibvei";s:2:"oj";s:8:"odžibwa";s:2:"oj";s:16:"ojibwa-schpraach";s:2:"oj";s:14:"ojibwa-sprooch";s:2:"oj";s:8:"odžibvu";s:2:"oj";s:7:"oġibwa";s:2:"oj";s:8:"odżibwa";s:2:"oj";s:8:"odžibva";s:2:"oj";s:7:"odjibwa";s:2:"oj";s:11:"ojibva dili";s:2:"oj";s:10:"osage dili";s:3:"osa";s:5:"osage";s:3:"osa";s:6:"osageg";s:3:"osa";s:13:"osage-sprache";s:3:"osa";s:8:"oseidži";s:3:"osa";s:15:"osage-schpraach";s:3:"osa";s:13:"osage-sprooch";s:3:"osa";s:8:"osaġjan";s:3:"osa";s:9:"osagčina";s:3:"osa";s:10:"osman dili";s:3:"ota";s:16:"otomanski turski";s:3:"ota";s:17:"osmannisk-tyrkisk";s:3:"ota";s:9:"osmanisch";s:3:"ota";s:15:"ottoman turkish";s:3:"ota";s:12:"osmanitürgi";s:3:"ota";s:6:"osmani";s:3:"ota";s:16:"ottomaansk-turks";s:3:"ota";s:16:"ottomán török";s:3:"ota";s:9:"osmanesch";s:3:"ota";s:14:"osmanų turkų";s:3:"ota";s:17:"ottomansk tyrkisk";s:3:"ota";s:9:"osmaansch";s:3:"ota";s:15:"ottomaans-turks";s:3:"ota";s:17:"osmańsko-turecki";s:3:"ota";s:20:"osmanská turečtina";s:3:"ota";s:20:"otomanska turščina";s:3:"ota";s:10:"ottomanska";s:3:"ota";s:19:"osmanlı türkçesi";s:3:"ota";s:10:"oldpersisk";s:3:"peo";s:11:"old persian";s:3:"peo";s:14:"ooldpers’sch";s:3:"peo";s:11:"oudperzisch";s:3:"peo";s:14:"oldprovencalsk";s:3:"pro";s:14:"old provençal";s:3:"pro";s:17:"ooldprovenzaalsch";s:3:"pro";s:15:"oudprovençaals";s:3:"pro";s:18:"osterinsel-sprache";s:3:"rap";s:22:"oschterinsel-schpraach";s:3:"rap";s:21:"ouschterinsel-sprooch";s:3:"rap";s:18:"oosterinsel-spraak";s:3:"rap";s:7:"oldirsk";s:3:"sga";s:9:"old irish";s:3:"sga";s:11:"oold-iersch";s:3:"sga";s:7:"oudiers";s:3:"sga";s:12:"oold-syyrsch";s:3:"syc";s:9:"ougariteg";s:3:"uga";s:11:"ougaritique";s:3:"uga";s:10:"oegaritysk";s:3:"uga";s:11:"oegaritisch";s:3:"uga";s:17:"otomangue-spraken";s:3:"oto";s:15:"otomanski jezik";s:3:"oto";}i:928;a:36:{s:27:"Παλαιά Αγγλικά";s:3:"ang";s:14:"Περσικά";s:2:"fa";s:30:"མ་ལ་ག་སི་ཁ";s:2:"mg";s:27:"མ་ཨོ་རི་ཁ";s:2:"mi";s:48:"མ་སེ་ཌོ་ནི་ཡཱན་ཁ";s:2:"mk";s:30:"མ་ལ་ཡ་ལམ་ཁ";s:2:"ml";s:33:"མ་ར་ཐི་སྐད།";s:2:"mr";s:24:"མ་ར་ཐི་ཁ";s:2:"mr";s:30:"མ་ལ་ཡ་སྐད།";s:2:"ms";s:18:"མ་ལེ་ཁ";s:2:"ms";s:21:"མཱལ་ཊ་ཁ";s:2:"mt";s:20:"Παντζαπικά";s:2:"pa";s:22:"Πανγκασινάν";s:3:"pag";s:18:"Παμπάνγκα";s:3:"pam";s:20:"Παπιαμέντο";s:3:"pap";s:8:"Πάλι";s:2:"pi";s:16:"Πολωνικά";s:2:"pl";s:16:"Ποντιακά";s:3:"pnt";s:10:"Πάστο";s:2:"ps";s:22:"Πορτογαλικά";s:2:"pt";s:41:"Πορτογαλικά Βραζιλίας";s:5:"pt-br";s:39:"Παραδοσιακά Κινεζικά";s:7:"zh-hant";s:9:"문당어";s:3:"mua";s:33:"Πολλαπλές γλώσσες";s:3:"mul";s:154:"མིའི་ཤེས་རྟོགས་མ་བྱུང་བ། ཡང་ན་ཆད་ལྷག་ཅན་གྱི་སྐད་བརྡ།";s:3:"und";s:37:"Πορτογαλικά Ευρώπης";s:5:"pt-pt";s:27:"Παλαιά Γαλλικά";s:3:"fro";s:38:"Παλαιά Άνω Γερμανικά";s:3:"goh";s:21:"མན་ཇུ་ཁ";s:3:"mnc";s:30:"མ་ནི་པུ་རི";s:3:"mni";s:31:"Παλαιά Νορβηγικά";s:3:"non";s:14:"Παχλάβι";s:3:"pal";s:16:"Παλάουαν";s:3:"pau";s:16:"Ποχπέιαν";s:3:"pon";s:33:"Παλαιά Προβενσιάλ";s:3:"pro";s:31:"Παλαιά Ιρλανδικά";s:3:"sga";}i:118;a:317:{s:11:"vanainglise";s:3:"ang";s:13:"vieri inglês";s:3:"ang";s:17:"valtakunnanaramea";s:3:"arc";s:9:"valgevene";s:2:"be";s:13:"valkovenäjä";s:2:"be";s:21:"vilges-ruoššagiella";s:2:"be";s:8:"vitryska";s:2:"be";s:9:"velština";s:2:"cy";s:9:"valisiskt";s:2:"cy";s:7:"velški";s:2:"cy";s:6:"velska";s:2:"cy";s:5:"valų";s:2:"cy";s:9:"velsiešu";s:2:"cy";s:15:"valižanščina";s:2:"cy";s:10:"vokiečių";s:2:"de";s:5:"vācu";s:2:"de";s:26:"visoka nemščina (Švica)";s:5:"de-ch";s:4:"viro";s:2:"et";s:5:"vascu";s:2:"eu";s:27:"ဖင်နစ်ရှ်";s:2:"fi";s:5:"võro";s:3:"vro";s:15:"ဖီဂျီ";s:2:"fj";s:27:"ဖာရိုအိစ်";s:2:"fo";s:11:"vestfrisikt";s:2:"fy";s:16:"vesturfrísneska";s:2:"fy";s:14:"vakarų fryzų";s:2:"fy";s:11:"vestfrisisk";s:2:"fy";s:13:"västfrisiska";s:2:"fy";s:10:"vanakreeka";s:3:"grc";s:11:"vieri grêc";s:3:"grc";s:15:"మంకస్";s:2:"gv";s:7:"vengrų";s:2:"hu";s:8:"vengrcha";s:2:"hu";s:18:"మైథిలి";s:3:"mai";s:18:"మొక్షా";s:3:"mdf";s:21:"మాలాగసి";s:2:"mg";s:27:"మార్షలీస్";s:2:"mh";s:15:"మయోరి";s:2:"mi";s:33:"మినాంగ్కాబో";s:3:"min";s:27:"మసడోనియన్";s:2:"mk";s:18:"మలయాళం";s:2:"ml";s:27:"మంగోలియన్";s:2:"mn";s:15:"మరాఠీ";s:2:"mr";s:9:"vuorimari";s:3:"mrj";s:12:"vakarų mari";s:3:"mrj";s:12:"västmariska";s:3:"mrj";s:15:"మలేయ్";s:2:"ms";s:24:"మాల్టీస్";s:2:"mt";s:27:"మిరాండిస్";s:3:"mwl";s:36:"vokiečių kalbos žemaičių tarmė";s:3:"pdt";s:31:"vokiečių kalbos pfalco tarmė";s:3:"pfl";s:4:"vene";s:2:"ru";s:8:"venäjä";s:2:"ru";s:7:"valaque";s:3:"rup";s:10:"vlăheşte";s:8:"ruq-latn";s:5:"venda";s:2:"ve";s:10:"venda dili";s:2:"ve";s:13:"venda-sprache";s:2:"ve";s:8:"vendagbe";s:2:"ve";s:7:"vendera";s:2:"ve";s:7:"veindis";s:2:"ve";s:15:"venda-schpraach";s:2:"ve";s:13:"venda-sprooch";s:2:"ve";s:5:"vendu";s:2:"ve";s:9:"vendčina";s:2:"ve";s:7:"vèneto";s:3:"vec";s:9:"venecianu";s:3:"vec";s:9:"venetisch";s:3:"vec";s:8:"venetian";s:3:"vec";s:8:"venetsia";s:3:"vec";s:9:"vénitien";s:3:"vec";s:10:"veinéisis";s:3:"vec";s:7:"venesia";s:3:"vec";s:6:"veneto";s:3:"vec";s:9:"venezesch";s:3:"vec";s:7:"venetų";s:3:"vec";s:10:"venetiaans";s:3:"vec";s:11:"venetianska";s:3:"vec";s:10:"venedikçe";s:3:"vec";s:14:"vepsän kel’";s:3:"vep";s:9:"vepština";s:3:"vep";s:4:"veps";s:3:"vep";s:6:"vepsä";s:3:"vep";s:5:"vepse";s:3:"vep";s:5:"vepso";s:3:"vep";s:6:"vepsų";s:3:"vep";s:11:"viëtnamees";s:2:"vi";s:13:"viɛtnam kasa";s:2:"vi";s:10:"vietnamín";s:2:"vi";s:7:"vyetnam";s:2:"vi";s:9:"vietnameg";s:2:"vi";s:11:"vijetnamski";s:2:"vi";s:10:"vietnamita";s:2:"vi";s:13:"vietnamština";s:2:"vi";s:12:"vietnamesisk";s:2:"vi";s:13:"vietnamesisch";s:2:"vi";s:14:"vietnamšćina";s:2:"vi";s:10:"vietnamgbe";s:2:"vi";s:10:"vietnamese";s:2:"vi";s:8:"vjetnama";s:2:"vi";s:8:"vietnami";s:2:"vi";s:10:"vietnamera";s:2:"vi";s:7:"vietnam";s:2:"vi";s:13:"vietnamesiskt";s:2:"vi";s:10:"vietnamien";s:2:"vi";s:10:"vietnamite";s:2:"vi";s:10:"vietnamees";s:2:"vi";s:11:"vítneaimis";s:2:"vi";s:15:"viyetịnaamụ";s:2:"vi";s:11:"víetnamska";s:2:"vi";s:14:"vietnamimiusut";s:2:"vi";s:17:"vijätnammeesesch";s:2:"vi";s:13:"vietnamesesch";s:2:"vi";s:14:"vietnamiečių";s:2:"vi";s:12:"vjetnamiešu";s:2:"vi";s:13:"vietnamianina";s:2:"vi";s:10:"vjetnamiż";s:2:"vi";s:12:"vietnameesch";s:2:"vi";s:15:"vietnamita simi";s:2:"vi";s:10:"vietnamais";s:2:"vi";s:11:"vietnameză";s:2:"vi";s:13:"vietnamgiella";s:2:"vi";s:8:"vietnäm";s:2:"vi";s:12:"vietnamčina";s:2:"vi";s:14:"vietnamščina";s:2:"vi";s:11:"vietnamisht";s:2:"vi";s:13:"vietnamesiska";s:2:"vi";s:9:"vietnamca";s:2:"vi";s:10:"vyetnamcha";s:2:"vi";s:23:"vlámština (západní)";s:3:"vls";s:17:"vakarų flamandų";s:3:"vls";s:17:"västflamländska";s:3:"vls";s:8:"volapük";s:2:"vo";s:13:"volapük dili";s:2:"vo";s:7:"volapyk";s:2:"vo";s:8:"volapuko";s:2:"vo";s:9:"volapüki";s:2:"vo";s:7:"volapuk";s:2:"vo";s:8:"volapiuk";s:2:"vo";s:8:"volapiks";s:2:"vo";s:9:"volapuque";s:2:"vo";s:7:"vaďďa";s:3:"vot";s:10:"votik dili";s:3:"vot";s:8:"votyakeg";s:3:"vot";s:6:"votski";s:3:"vot";s:6:"vòtic";s:3:"vot";s:9:"votština";s:3:"vot";s:6:"votisk";s:3:"vot";s:5:"votic";s:3:"vot";s:7:"vótico";s:3:"vot";s:5:"vadja";s:3:"vot";s:5:"vatja";s:3:"vot";s:4:"vote";s:3:"vot";s:6:"votysk";s:3:"vot";s:7:"votják";s:3:"vot";s:5:"votia";s:3:"vot";s:8:"votíska";s:3:"vot";s:4:"voto";s:3:"vot";s:5:"votik";s:3:"vot";s:4:"votu";s:3:"vot";s:7:"votisch";s:3:"vot";s:8:"vodčina";s:3:"vot";s:12:"votjaščina";s:3:"vot";s:7:"votiska";s:3:"vot";s:11:"võruština";s:3:"vro";s:4:"voro";s:3:"vro";s:5:"võru";s:3:"vro";s:6:"valón";s:2:"wa";s:10:"valun dili";s:2:"wa";s:5:"valun";s:2:"wa";s:5:"való";s:2:"wa";s:11:"valonština";s:2:"wa";s:8:"vallonsk";s:2:"wa";s:8:"vallooni";s:2:"wa";s:7:"valloni";s:2:"wa";s:5:"valon";s:2:"wa";s:10:"vallúnais";s:2:"wa";s:8:"valonski";s:2:"wa";s:6:"vallon";s:2:"wa";s:10:"vallónska";s:2:"wa";s:7:"vallone";s:2:"wa";s:7:"valonų";s:2:"wa";s:7:"valoņu";s:2:"wa";s:6:"valão";s:2:"wa";s:7:"valonă";s:2:"wa";s:13:"vallonagiella";s:2:"wa";s:11:"valónčina";s:2:"wa";s:12:"valonščina";s:2:"wa";s:9:"vallonska";s:2:"wa";s:7:"valonca";s:2:"wa";s:10:"varay dili";s:3:"war";s:5:"varej";s:3:"war";s:5:"varai";s:3:"war";s:6:"varaó";s:3:"war";s:6:"varaí";s:3:"war";s:6:"varaju";s:3:"war";s:12:"varajščina";s:3:"war";s:5:"varay";s:3:"war";s:5:"volof";s:2:"wo";s:6:"volofa";s:2:"wo";s:6:"volofi";s:2:"wo";s:8:"volaifis";s:2:"wo";s:7:"volofų";s:2:"wo";s:6:"volofu";s:2:"wo";s:12:"volofščina";s:2:"wo";s:8:"volofça";s:2:"wo";s:8:"volofcha";s:2:"wo";s:9:"vahcuengh";s:2:"za";s:24:"veräifachts chineesisch";s:7:"zh-hans";s:21:"vereenfacht chineesch";s:7:"zh-hans";s:21:"vereenvoudigd chinees";s:7:"zh-hans";s:14:"vieri egjizian";s:3:"egy";s:30:"ဖိလစ်ပီနို";s:3:"fil";s:15:"మకొమ్";s:3:"jmc";s:18:"మకొండే";s:3:"kde";s:18:"మాసాయి";s:3:"mas";s:12:"మెరు";s:3:"mer";s:30:"మొరిస్యేన్";s:3:"mfe";s:34:"మక్వా-మిట్టో";s:3:"mgh";s:12:"మెటా";s:3:"mgo";s:18:"మోహుక్";s:3:"moh";s:21:"ముదాంగ్";s:3:"mua";s:16:"veelvuldige tale";s:3:"mul";s:12:"više jezika";s:3:"mul";s:14:"varias linguas";s:3:"mul";s:17:"vairākas valodas";s:3:"mul";s:15:"viaceré jazyky";s:3:"mul";s:12:"več jezikov";s:3:"mul";s:6:"vlaams";s:5:"nl-be";s:11:"vlámština";s:5:"nl-be";s:27:"ဖလီမစ်ရှ်";s:5:"nl-be";s:33:"మొల్డావియన్";s:5:"ro-md";s:3:"vai";s:3:"vai";s:6:"vaigbe";s:3:"vai";s:6:"vaiera";s:3:"vai";s:4:"vaï";s:3:"vai";s:13:"vai-schpraach";s:3:"vai";s:4:"vaí";s:3:"vai";s:11:"vai-sprooch";s:3:"vai";s:4:"vaju";s:3:"vai";s:10:"vajščina";s:3:"vai";s:6:"vaisht";s:3:"vai";s:3:"vaj";s:3:"vai";s:8:"vayancha";s:3:"vai";s:5:"vunjo";s:3:"vun";s:5:"vunyo";s:3:"vun";s:6:"vunjoa";s:3:"vun";s:6:"vunjó";s:3:"vun";s:7:"vundžo";s:3:"vun";s:8:"vunjisht";s:3:"vun";s:10:"vunjoancha";s:3:"vun";s:18:"vakioitu tamazight";s:3:"zgh";s:12:"మారి";s:3:"chm";s:18:"vidurio vokietijos";s:3:"dum";s:16:"vidusholandiešu";s:3:"dum";s:25:"మధ్యమ డచ్";s:3:"dum";s:16:"vidurio anglijos";s:3:"enm";s:11:"vidusangļu";s:3:"enm";s:34:"మధ్యమ ఆంగ్లం";s:3:"enm";s:20:"vidurio prancūzijos";s:3:"frm";s:12:"vidusfranču";s:3:"frm";s:37:"మధ్యమ ప్రెంచ్";s:3:"frm";s:13:"vanaprantsuse";s:3:"fro";s:14:"vieri francês";s:3:"fro";s:22:"východná frízština";s:3:"frs";s:21:"vzhodna frizijščina";s:3:"frs";s:30:"vidurio aukštosios vokietijos";s:3:"gmh";s:15:"vidusaugšvācu";s:3:"gmh";s:41:"మధ్యమ హై జర్మన్";s:3:"gmh";s:14:"vanaülemsaksa";s:3:"goh";s:25:"vegl tudestg da scrittira";s:3:"goh";s:15:"మోంగ్";s:3:"hmn";s:15:"మొంగో";s:3:"lol";s:24:"మాదురీస్";s:3:"mad";s:15:"మగాహి";s:3:"mag";s:21:"మకాసార్";s:3:"mak";s:21:"మండింగో";s:3:"man";s:18:"మండార్";s:3:"mdr";s:15:"మెండే";s:3:"men";s:15:"vidurio airijos";s:3:"mga";s:9:"vidusīru";s:3:"mga";s:31:"మధ్యమ ఐరిష్";s:3:"mga";s:21:"మికమాక్";s:3:"mic";s:12:"మంచు";s:3:"mnc";s:21:"మణిపూరి";s:3:"mni";s:18:"మోస్సి";s:3:"mos";s:24:"మార్వాడి";s:3:"mwr";s:12:"vanapõhjala";s:3:"non";s:13:"vieux norrois";s:3:"non";s:16:"vieri norvegjês";s:3:"non";s:10:"vananevari";s:3:"nwc";s:9:"važāžu";s:3:"osa";s:11:"vanapärsia";s:3:"peo";s:13:"vieri persian";s:3:"peo";s:12:"vanaprovansi";s:3:"pro";s:16:"vieri provenzâl";s:3:"pro";s:8:"vanaiiri";s:3:"sga";s:15:"vieri irlandês";s:3:"sga";s:11:"valamo dili";s:3:"wal";s:6:"valamo";s:3:"wal";s:6:"volamo";s:3:"wal";s:7:"valamó";s:3:"wal";s:6:"valamu";s:3:"wal";s:12:"valamščina";s:3:"wal";s:10:"vaşo dili";s:3:"was";s:5:"vašo";s:3:"was";s:5:"vasó";s:3:"was";s:6:"vasjó";s:3:"was";s:13:"vašajščina";s:3:"was";s:5:"vaşo";s:3:"was";s:52:"మెక్సికన్ స్పానిష్";s:5:"es-mx";s:5:"vajų";s:3:"guc";s:10:"veštački";s:3:"art";s:8:"valserų";s:3:"wae";s:14:"vallisas vācu";s:3:"wae";s:19:"verschedene spraken";s:3:"mis";s:17:"vakašanski jezik";s:3:"wak";}i:109;a:1064:{s:15:"muinaisenglanti";s:3:"ang";s:10:"mapudungun";s:3:"arn";s:7:"mapuche";s:3:"arn";s:7:"mapuĉa";s:3:"arn";s:8:"maputxea";s:3:"arn";s:10:"mapúitsis";s:3:"arn";s:12:"mapudungunų";s:3:"arn";s:12:"mapuche simi";s:3:"arn";s:10:"mapuçisht";s:3:"arn";s:11:"mapuchiycha";s:3:"arn";s:8:"maġribi";s:3:"ary";s:23:"marokkanisches arabisch";s:3:"ary";s:22:"moroccan spoken arabic";s:3:"ary";s:13:"marokonarabia";s:3:"ary";s:22:"marokahnesch arahbesch";s:3:"ary";s:22:"marokkanescht arabesch";s:3:"ary";s:13:"maroko arabų";s:3:"ary";s:19:"marokkaans arabisch";s:3:"ary";s:19:"marokański arabski";s:3:"ary";s:19:"marockansk arabiska";s:3:"ary";s:18:"mısır arapçası";s:3:"arz";s:21:"mìng-dĕ̤ng-ngṳ̄";s:3:"cdo";s:16:"min dong chinese";s:3:"cdo";s:14:"malsuprasoraba";s:3:"dsb";s:13:"maledivština";s:2:"dv";s:11:"maledivisch";s:2:"dv";s:5:"mahla";s:2:"dv";s:8:"maldiivi";s:2:"dv";s:9:"maldivien";s:2:"dv";s:12:"malediivisch";s:2:"dv";s:10:"maldivesch";s:2:"dv";s:12:"maldīviešu";s:2:"dv";s:11:"maledievsch";s:2:"dv";s:10:"malediwski";s:2:"dv";s:9:"maledivic";s:2:"dv";s:12:"ѕонгка";s:2:"dz";s:13:"mo/seperishia";s:2:"fa";s:10:"meänkieli";s:3:"fit";s:14:"muinaiskreikka";s:3:"grc";s:4:"manx";s:2:"gv";s:6:"manés";s:2:"gv";s:5:"manks";s:2:"gv";s:7:"manaveg";s:2:"gv";s:9:"manština";s:2:"gv";s:7:"manaweg";s:2:"gv";s:10:"manšćina";s:2:"gv";s:7:"mänksi";s:2:"gv";s:7:"manxera";s:2:"gv";s:6:"manksi";s:2:"gv";s:9:"manainnis";s:2:"gv";s:15:"manx-gäälisch";s:2:"gv";s:6:"manski";s:2:"gv";s:11:"man-szigeti";s:2:"gv";s:6:"manska";s:2:"gv";s:10:"meniečių";s:2:"gv";s:8:"meniešu";s:2:"gv";s:5:"mansk";s:2:"gv";s:11:"manksgiella";s:2:"gv";s:8:"mančina";s:2:"gv";s:10:"manščina";s:2:"gv";s:6:"mankse";s:2:"gv";s:6:"mencha";s:2:"gv";s:4:"motu";s:2:"ho";s:14:"motúis hírí";s:2:"ho";s:6:"magyar";s:2:"hu";s:5:"macar";s:2:"hu";s:9:"mađarski";s:2:"hu";s:12:"maďarština";s:2:"hu";s:14:"madźaršćina";s:2:"hu";s:8:"magịya";s:2:"hu";s:9:"maghiară";s:2:"hu";s:11:"maďarčina";s:2:"hu";s:14:"madžarščina";s:2:"hu";s:7:"macarca";s:2:"hu";s:10:"mo/sejojia";s:2:"ka";s:11:"mizo ţawng";s:3:"lus";s:4:"mizo";s:3:"lus";s:10:"mizoština";s:3:"lus";s:13:"mizorámčina";s:3:"lus";s:8:"maithili";s:3:"mai";s:12:"maitili dili";s:3:"mai";s:7:"maitili";s:3:"mai";s:14:"maithiliština";s:3:"mai";s:10:"maitiligbe";s:3:"mai";s:10:"maítílí";s:3:"mai";s:7:"majtili";s:3:"mai";s:12:"maithilčina";s:3:"mai";s:6:"moksha";s:3:"mdf";s:11:"mokşa dili";s:3:"mdf";s:6:"mokša";s:3:"mdf";s:15:"mordovià moksa";s:3:"mdf";s:13:"mokšanština";s:3:"mdf";s:6:"mocsia";s:3:"mdf";s:10:"moktsiagbe";s:3:"mdf";s:5:"moksa";s:3:"mdf";s:18:"mokschamordwinisch";s:3:"mdf";s:7:"moksán";s:3:"mdf";s:6:"mokšu";s:3:"mdf";s:7:"mokscha";s:3:"mdf";s:6:"moksja";s:3:"mdf";s:5:"mocsa";s:3:"mdf";s:12:"mokšagiella";s:3:"mdf";s:13:"mokšiančina";s:3:"mdf";s:14:"mokšavščina";s:3:"mdf";s:8:"malagasy";s:2:"mg";s:10:"malgassies";s:2:"mg";s:7:"malgaxe";s:2:"mg";s:7:"malaqas";s:2:"mg";s:9:"malgacheg";s:2:"mg";s:12:"malagazijski";s:2:"mg";s:7:"malgaix";s:2:"mg";s:11:"malgaština";s:2:"mg";s:9:"malagaseg";s:2:"mg";s:11:"malagassisk";s:2:"mg";s:12:"madagassisch";s:2:"mg";s:12:"malgašćina";s:2:"mg";s:11:"malagasegbe";s:2:"mg";s:8:"malagasa";s:2:"mg";s:8:"malgache";s:2:"mg";s:9:"malagassi";s:2:"mg";s:11:"malagasyera";s:2:"mg";s:11:"malagasiskt";s:2:"mg";s:10:"malagasysk";s:2:"mg";s:11:"malagáisis";s:2:"mg";s:10:"malagasais";s:2:"mg";s:9:"malgaški";s:2:"mg";s:16:"malagassišćina";s:2:"mg";s:7:"málgas";s:2:"mg";s:8:"malagasi";s:2:"mg";s:12:"malagasíska";s:2:"mg";s:9:"malgascio";s:2:"mg";s:15:"malagassiskisut";s:2:"mg";s:13:"madajaßkesch";s:2:"mg";s:17:"malagassi-sprooch";s:2:"mg";s:9:"malagasų";s:2:"mg";s:8:"malagasu";s:2:"mg";s:9:"malagażi";s:2:"mg";s:11:"madagassisk";s:2:"mg";s:12:"malagassisch";s:2:"mg";s:8:"malgaski";s:2:"mg";s:9:"malgașă";s:2:"mg";s:13:"malagaščina";s:2:"mg";s:8:"malageze";s:2:"mg";s:12:"malagassiska";s:2:"mg";s:10:"malgaşça";s:2:"mg";s:12:"malagasiycha";s:2:"mg";s:11:"marshallés";s:2:"mh";s:12:"marşal dili";s:2:"mh";s:8:"marshall";s:2:"mh";s:10:"maršalski";s:2:"mh";s:11:"marshallès";s:2:"mh";s:14:"maršálština";s:2:"mh";s:9:"marsialeg";s:2:"mh";s:11:"marshallese";s:2:"mh";s:15:"marschallesisch";s:2:"mh";s:10:"marshalgbe";s:2:"mh";s:10:"marshalés";s:2:"mh";s:9:"maršalli";s:2:"mh";s:11:"marshallees";s:2:"mh";s:10:"mairsillis";s:2:"mh";s:11:"marshallais";s:2:"mh";s:9:"marshalli";s:2:"mh";s:11:"marshallska";s:2:"mh";s:15:"marschallesesch";s:2:"mh";s:14:"maršalo salų";s:2:"mh";s:13:"māršaliešu";s:2:"mh";s:7:"marxall";s:2:"mh";s:13:"marshallesisk";s:2:"mh";s:14:"marschalleesch";s:2:"mh";s:10:"marshalês";s:2:"mh";s:12:"marschallais";s:2:"mh";s:12:"marshalleză";s:2:"mh";s:17:"marshallovščina";s:2:"mh";s:12:"marshalliska";s:2:"mh";s:22:"marshall adaları dili";s:2:"mh";s:6:"māori";s:2:"mi";s:5:"maori";s:2:"mi";s:6:"maorí";s:2:"mi";s:7:"maorski";s:2:"mi";s:10:"maorština";s:2:"mi";s:12:"maorišćina";s:2:"mi";s:7:"maorgbe";s:2:"mi";s:6:"maoria";s:2:"mi";s:6:"maoori";s:2:"mi";s:8:"maoriera";s:2:"mi";s:8:"maoriskt";s:2:"mi";s:7:"maorais";s:2:"mi";s:11:"maoršćina";s:2:"mi";s:11:"maorimiutut";s:2:"mi";s:7:"maahori";s:2:"mi";s:7:"maorių";s:2:"mi";s:5:"maoru";s:2:"mi";s:9:"maoryjski";s:2:"mi";s:10:"maori simi";s:2:"mi";s:11:"maorigiella";s:2:"mi";s:11:"maorijčina";s:2:"mi";s:11:"maorščina";s:2:"mi";s:8:"maorisht";s:2:"mi";s:10:"maori dili";s:2:"mi";s:9:"maoriycha";s:2:"mi";s:11:"minangkabau";s:3:"min";s:16:"minanqkaban dili";s:3:"min";s:19:"minangkabau-sprache";s:3:"min";s:21:"minangkabau-schpraach";s:3:"min";s:12:"mínangkabá";s:3:"min";s:11:"menangkabau";s:3:"min";s:19:"minangkabau-sprooch";s:3:"min";s:9:"minankabu";s:3:"min";s:12:"minangkabavu";s:3:"min";s:11:"minangkabaw";s:3:"min";s:10:"minangkabu";s:3:"min";s:16:"minangkabaučina";s:3:"min";s:10:"masedonies";s:2:"mk";s:9:"macedoniu";s:2:"mk";s:7:"makedon";s:2:"mk";s:9:"makedoneg";s:2:"mk";s:10:"makedonski";s:2:"mk";s:8:"macedoni";s:2:"mk";s:13:"makedonština";s:2:"mk";s:9:"macedoneg";s:2:"mk";s:9:"makedonsk";s:2:"mk";s:11:"mazedonisch";s:2:"mk";s:15:"makedońšćina";s:2:"mk";s:12:"makedoniagbe";s:2:"mk";s:10:"macedonian";s:2:"mk";s:8:"makedona";s:2:"mk";s:9:"macedonio";s:2:"mk";s:10:"makedoonia";s:2:"mk";s:11:"mazedoniera";s:2:"mk";s:9:"makedonia";s:2:"mk";s:10:"makedonskt";s:2:"mk";s:11:"macédonien";s:2:"mk";s:7:"macedon";s:2:"mk";s:10:"macedonysk";s:2:"mk";s:11:"macadóinis";s:2:"mk";s:10:"masadonais";s:2:"mk";s:14:"makedonšćina";s:2:"mk";s:8:"macedón";s:2:"mk";s:8:"macedone";s:2:"mk";s:11:"makedónska";s:2:"mk";s:12:"mazedoonesch";s:2:"mk";s:11:"mazedonesch";s:2:"mk";s:9:"makedonų";s:2:"mk";s:13:"maķedoniešu";s:2:"mk";s:9:"macedonia";s:2:"mk";s:11:"maċedonjan";s:2:"mk";s:11:"mazedoonsch";s:2:"mk";s:11:"macedonisch";s:2:"mk";s:11:"macedoński";s:2:"mk";s:10:"macedónio";s:2:"mk";s:10:"macedônio";s:2:"mk";s:14:"macedonio simi";s:2:"mk";s:12:"macedoneană";s:2:"mk";s:15:"makedoniagiella";s:2:"mk";s:13:"macedónčina";s:2:"mk";s:14:"makedonščina";s:2:"mk";s:13:"masadooniyaan";s:2:"mk";s:11:"maqedonisht";s:2:"mk";s:10:"makedonska";s:2:"mk";s:9:"makedonca";s:2:"mk";s:10:"makedoncha";s:2:"mk";s:9:"malabaars";s:2:"ml";s:9:"malayalam";s:2:"ml";s:9:"malajalam";s:2:"ml";s:10:"malaiàlam";s:2:"ml";s:16:"malajálamština";s:2:"ml";s:14:"malajamšćina";s:2:"ml";s:9:"malayagbe";s:2:"ml";s:10:"malajalama";s:2:"ml";s:10:"malajalami";s:2:"ml";s:12:"malayalamera";s:2:"ml";s:13:"mailéalaimis";s:2:"ml";s:7:"malabar";s:2:"ml";s:12:"malajalamski";s:2:"ml";s:10:"malajálam";s:2:"ml";s:10:"mallajalam";s:2:"ml";s:10:"malajalių";s:2:"ml";s:8:"malajalu";s:2:"ml";s:15:"malayaalamiffaa";s:2:"ml";s:8:"malaiala";s:2:"ml";s:14:"malayalam simi";s:2:"ml";s:15:"malajálamčina";s:2:"ml";s:16:"malajalamščina";s:2:"ml";s:10:"malajalame";s:2:"ml";s:10:"malayamcha";s:2:"ml";s:8:"mongools";s:2:"mn";s:6:"mongol";s:2:"mn";s:6:"monqol";s:2:"mn";s:8:"mongoleg";s:2:"mn";s:9:"mongolski";s:2:"mn";s:12:"mongolština";s:2:"mn";s:8:"mongolsk";s:2:"mn";s:10:"mongolisch";s:2:"mn";s:13:"mongolšćina";s:2:"mn";s:11:"mongoliagbe";s:2:"mn";s:9:"mongolian";s:2:"mn";s:7:"mongola";s:2:"mn";s:7:"mongoli";s:2:"mn";s:10:"mongoliera";s:2:"mn";s:10:"mongoliskt";s:2:"mn";s:6:"mongul";s:2:"mn";s:10:"mongóilis";s:2:"mn";s:9:"mongolais";s:2:"mn";s:9:"mongolico";s:2:"mn";s:8:"mongolia";s:2:"mn";s:10:"mongólska";s:2:"mn";s:7:"mongolo";s:2:"mn";s:11:"mongjolesch";s:2:"mn";s:10:"mongolesch";s:2:"mn";s:8:"mongolų";s:2:"mn";s:8:"mongoļu";s:2:"mn";s:9:"mongoljan";s:2:"mn";s:10:"mongoolsch";s:2:"mn";s:11:"mongol simi";s:2:"mn";s:8:"mongolic";s:2:"mn";s:8:"mongolă";s:2:"mn";s:14:"mongoliagiella";s:2:"mn";s:11:"mongolčina";s:2:"mn";s:13:"mongolščina";s:2:"mn";s:8:"mangooli";s:2:"mn";s:10:"mongolisht";s:2:"mn";s:10:"mongoliska";s:2:"mn";s:8:"moğolca";s:2:"mn";s:14:"mo‘g‘ulcha";s:2:"mn";s:10:"moldaawsch";s:2:"mo";s:9:"moldavski";s:5:"ro-md";s:7:"marathi";s:2:"mr";s:6:"marati";s:2:"mr";s:13:"maráthština";s:2:"mr";s:9:"marathisk";s:2:"mr";s:13:"maratišćina";s:2:"mr";s:11:"marathiagbe";s:2:"mr";s:6:"marata";s:2:"mr";s:9:"marathera";s:2:"mr";s:10:"marathiskt";s:2:"mr";s:7:"marathe";s:2:"mr";s:8:"maraitis";s:2:"mr";s:9:"marathski";s:2:"mr";s:7:"maratí";s:2:"mr";s:11:"marraatesch";s:2:"mr";s:7:"maratų";s:2:"mr";s:6:"maratu";s:2:"mr";s:12:"marathi simi";s:2:"mr";s:12:"maráthčina";s:2:"mr";s:12:"maratščina";s:2:"mr";s:7:"maarati";s:2:"mr";s:9:"maratisht";s:2:"mr";s:8:"maratcha";s:2:"mr";s:15:"mari occidental";s:3:"mrj";s:20:"marieg ar cʼhornôg";s:3:"mrj";s:23:"marijština (západní)";s:3:"mrj";s:17:"mairis iartharach";s:3:"mrj";s:16:"mari occidentale";s:3:"mrj";s:6:"maleis";s:2:"ms";s:10:"malay kasa";s:2:"ms";s:6:"malayu";s:2:"ms";s:5:"malay";s:2:"ms";s:10:"malɛzikan";s:2:"ms";s:8:"malayseg";s:2:"ms";s:8:"malajski";s:2:"ms";s:5:"malai";s:2:"ms";s:11:"malajština";s:2:"ms";s:7:"maleieg";s:2:"ms";s:9:"malaiisch";s:2:"ms";s:12:"malajšćina";s:2:"ms";s:8:"malaygbe";s:2:"ms";s:6:"malaja";s:2:"ms";s:6:"malayo";s:2:"ms";s:10:"malaysiera";s:2:"ms";s:9:"malayeere";s:2:"ms";s:7:"malaiji";s:2:"ms";s:9:"malajiskt";s:2:"ms";s:6:"malais";s:2:"ms";s:6:"malês";s:2:"ms";s:7:"malaeis";s:2:"ms";s:9:"malaidhis";s:2:"ms";s:6:"malaio";s:2:"ms";s:6:"maláj";s:2:"ms";s:6:"melayu";s:2:"ms";s:6:"maleyi";s:2:"ms";s:9:"malaíska";s:2:"ms";s:6:"malese";s:2:"ms";s:11:"mallaijesch";s:2:"ms";s:9:"malaiesch";s:2:"ms";s:12:"malajiečių";s:2:"ms";s:10:"malajiešu";s:2:"ms";s:7:"malajan";s:2:"ms";s:8:"malayisk";s:2:"ms";s:8:"malaisch";s:2:"ms";s:11:"malaayiffaa";s:2:"ms";s:11:"malayo simi";s:2:"ms";s:6:"malaic";s:2:"ms";s:8:"malaeză";s:2:"ms";s:6:"malëe";s:2:"ms";s:10:"malajčina";s:2:"ms";s:12:"malajščina";s:2:"ms";s:6:"malaay";s:2:"ms";s:9:"malajisht";s:2:"ms";s:9:"malajiska";s:2:"ms";s:7:"malayca";s:2:"ms";s:8:"malaycha";s:2:"ms";s:5:"malti";s:2:"mt";s:7:"maltees";s:2:"mt";s:7:"maltés";s:2:"mt";s:5:"malta";s:2:"mt";s:6:"malteg";s:2:"mt";s:9:"malteški";s:2:"mt";s:7:"maltès";s:2:"mt";s:10:"maltština";s:2:"mt";s:9:"maltesisk";s:2:"mt";s:10:"maltesisch";s:2:"mt";s:12:"maltašćina";s:2:"mt";s:8:"maltagbe";s:2:"mt";s:7:"maltese";s:2:"mt";s:7:"maltera";s:2:"mt";s:10:"maltesiskt";s:2:"mt";s:7:"maltais";s:2:"mt";s:7:"maltês";s:2:"mt";s:8:"máltais";s:2:"mt";s:7:"máltai";s:2:"mt";s:9:"maltneska";s:2:"mt";s:11:"malteesesch";s:2:"mt";s:10:"maltesesch";s:2:"mt";s:11:"maltiečių";s:2:"mt";s:9:"maltiešu";s:2:"mt";s:9:"malteesch";s:2:"mt";s:10:"maltański";s:2:"mt";s:11:"maltes simi";s:2:"mt";s:8:"malteză";s:2:"mt";s:11:"maltagiella";s:2:"mt";s:9:"melteški";s:2:"mt";s:9:"maltčina";s:2:"mt";s:12:"malteščina";s:2:"mt";s:7:"maltiis";s:2:"mt";s:8:"maltisht";s:2:"mt";s:10:"maltesiska";s:2:"mt";s:7:"maltaca";s:2:"mt";s:8:"maltacha";s:2:"mt";s:7:"mvskoke";s:3:"mus";s:7:"muskogi";s:3:"mus";s:16:"muskogee-sprache";s:3:"mus";s:7:"maskogi";s:3:"mus";s:18:"muskogee-schpraach";s:3:"mus";s:16:"muskogee-sprooch";s:3:"mus";s:16:"muskogee-spraken";s:3:"mus";s:8:"muskogee";s:3:"mus";s:9:"mirandés";s:3:"mwl";s:11:"mirand dili";s:3:"mwl";s:11:"mirandeški";s:3:"mwl";s:9:"mirandès";s:3:"mwl";s:12:"mirandština";s:3:"mwl";s:8:"mirandeg";s:3:"mwl";s:11:"mirandesisk";s:3:"mwl";s:12:"mirandesisch";s:3:"mwl";s:9:"mirandese";s:3:"mwl";s:7:"miranda";s:3:"mwl";s:10:"mirandeesi";s:3:"mwl";s:9:"mirandais";s:3:"mwl";s:9:"mirandês";s:3:"mwl";s:9:"mirandees";s:3:"mwl";s:12:"mioraindéis";s:3:"mwl";s:9:"mirandski";s:3:"mwl";s:9:"mirandéz";s:3:"mwl";s:13:"mirandesíska";s:3:"mwl";s:12:"mirandesesch";s:3:"mwl";s:10:"mirandezų";s:3:"mwl";s:11:"mirandiešu";s:3:"mwl";s:9:"mirandiż";s:3:"mwl";s:11:"mirandeesch";s:3:"mwl";s:10:"mirandeză";s:3:"mwl";s:11:"mirandčina";s:3:"mwl";s:14:"mirandeščina";s:3:"mwl";s:12:"mirandesiska";s:3:"mwl";s:12:"miranda dili";s:3:"mwl";s:8:"mịanma";s:2:"my";s:19:"miamära, birimäni";s:2:"my";s:14:"mordovià erza";s:3:"myv";s:10:"mordvinski";s:3:"myv";s:11:"mazanderani";s:3:"mzn";s:18:"mázandaránština";s:3:"mzn";s:14:"masanderanisch";s:3:"mzn";s:11:"mazandarani";s:3:"mzn";s:12:"mazandérani";s:3:"mzn";s:13:"mazenderanių";s:3:"mzn";s:14:"mazanderański";s:3:"mzn";s:12:"mazenderanca";s:3:"mzn";s:7:"min nan";s:3:"nan";s:15:"min nan chinese";s:3:"nan";s:14:"min nan -kiina";s:3:"nan";s:6:"minnan";s:3:"nan";s:18:"min-nan-chinesesch";s:3:"nan";s:8:"minnanyu";s:3:"nan";s:10:"minnański";s:3:"nan";s:16:"min nan Çincesi";s:3:"nan";s:21:"mennonitisk lågtyska";s:3:"pdt";s:14:"muinaispreussi";s:3:"prg";s:14:"makedo-rumania";s:3:"rup";s:16:"megleno-romanian";s:3:"ruq";s:34:"megleno-romanian (cyrillic script)";s:8:"ruq-cyrl";s:31:"megleno-romanian (latin script)";s:8:"ruq-latn";s:12:"mo/sesundane";s:2:"su";s:12:"థాయ్";s:2:"th";s:27:"mərkəzi atlas tamazicəsi";s:3:"tzm";s:19:"marokanski tamazigt";s:3:"tzm";s:28:"maroko erdialdeko tamazighta";s:3:"tzm";s:20:"marokanski tamazight";s:3:"tzm";s:25:"mëttlert-atlas-tamazight";s:3:"tzm";s:26:"markaziy atlas vaqt zonasi";s:3:"tzm";s:14:"mainfränkisch";s:3:"vmf";s:13:"maininfrankki";s:3:"vmf";s:14:"mainfränkesch";s:3:"vmf";s:19:"meński frankoński";s:3:"vmf";s:14:"main-frankiska";s:3:"vmf";s:19:"main frankonya dili";s:3:"vmf";s:13:"mingrelština";s:3:"xmf";s:11:"mingrelisch";s:3:"xmf";s:10:"mingrelian";s:3:"xmf";s:8:"mingreli";s:3:"xmf";s:11:"mingrélien";s:3:"xmf";s:9:"mengrelio";s:3:"xmf";s:19:"mingrelesch sprooch";s:3:"xmf";s:8:"megrelų";s:3:"xmf";s:9:"mingreels";s:3:"xmf";s:9:"megrelski";s:3:"xmf";s:8:"megrelce";s:3:"xmf";s:16:"mandarịịnị";s:2:"zh";s:25:"moderne standaard arabies";s:6:"ar-001";s:25:"modern standart Ərəbcə";s:6:"ar-001";s:26:"moderni standardni arapski";s:6:"ar-001";s:23:"moderne standardarabisk";s:6:"ar-001";s:21:"modernes hocharabisch";s:6:"ar-001";s:25:"moderna wusokoarabšćina";s:6:"ar-001";s:22:"modern standard arabic";s:6:"ar-001";s:19:"moderna norma araba";s:6:"ar-001";s:23:"modern standert arabysk";s:6:"ar-001";s:25:"moderna wysokoarabšćina";s:6:"ar-001";s:22:"modern szabányos arab";s:6:"ar-001";s:22:"modernt héicharabesch";s:6:"ar-001";s:26:"mūsdienu standarta arābu";s:6:"ar-001";s:24:"moderne standard arabisk";s:6:"ar-001";s:25:"modern standaard arabisch";s:6:"ar-001";s:23:"modern standardarabiska";s:6:"ar-001";s:23:"modern standart arapça";s:6:"ar-001";s:14:"muinasegiptuse";s:3:"egy";s:13:"muinaisegypti";s:3:"egy";s:10:"mesir kuno";s:3:"egy";s:7:"machame";s:3:"jmc";s:6:"maçam";s:3:"jmc";s:7:"mašame";s:3:"jmc";s:8:"matsiame";s:3:"jmc";s:9:"machamera";s:3:"jmc";s:8:"masjáme";s:3:"jmc";s:8:"mačamų";s:3:"jmc";s:7:"mačamu";s:3:"jmc";s:15:"mačamejščina";s:3:"jmc";s:10:"maçamisht";s:3:"jmc";s:9:"machamcha";s:3:"jmc";s:7:"makonde";s:3:"kde";s:6:"makond";s:3:"kde";s:8:"macondeg";s:3:"kde";s:9:"makondera";s:3:"kde";s:8:"makondų";s:3:"kde";s:7:"maconde";s:3:"kde";s:13:"makondščina";s:3:"kde";s:10:"makondisht";s:3:"kde";s:8:"maqondiy";s:3:"kde";s:5:"masai";s:3:"mas";s:5:"masay";s:3:"mas";s:6:"massai";s:3:"mas";s:11:"masajština";s:3:"mas";s:14:"massai-sprache";s:3:"mas";s:12:"masaišćina";s:3:"mas";s:6:"masái";s:3:"mas";s:8:"masaiera";s:3:"mas";s:6:"maasai";s:3:"mas";s:16:"massai-schpraach";s:3:"mas";s:8:"masajski";s:3:"mas";s:6:"masaí";s:3:"mas";s:14:"massai-sprooch";s:3:"mas";s:7:"masajų";s:3:"mas";s:6:"masaju";s:3:"mas";s:5:"masaj";s:3:"mas";s:3:"maa";s:3:"mas";s:10:"masajčina";s:3:"mas";s:12:"masajščina";s:3:"mas";s:8:"masaisht";s:3:"mas";s:10:"massajiska";s:3:"mas";s:8:"masaycha";s:3:"mas";s:4:"meru";s:3:"mer";s:5:"mêrw";s:3:"mer";s:7:"meruera";s:3:"mer";s:5:"merou";s:3:"mer";s:5:"merú";s:3:"mer";s:12:"meru-sprooch";s:3:"mer";s:5:"merų";s:3:"mer";s:8:"meruisht";s:3:"mer";s:7:"merucha";s:3:"mer";s:8:"morisjen";s:3:"mfe";s:8:"morisyen";s:3:"mfe";s:8:"morisien";s:3:"mfe";s:7:"moriseg";s:3:"mfe";s:20:"mauricijski kreolski";s:3:"mfe";s:9:"mauricià";s:3:"mfe";s:24:"mauricijská kreolština";s:3:"mfe";s:23:"mauriciska kreolšćina";s:3:"mfe";s:21:"mauritiuse kreoolkeel";s:3:"mfe";s:21:"mauritaniako kreolera";s:3:"mfe";s:16:"mauritiusi kreol";s:3:"mfe";s:11:"máritíska";s:3:"mfe";s:9:"morisijų";s:3:"mfe";s:18:"maurīcijas kreolu";s:3:"mfe";s:17:"mauritisk-kreolsk";s:3:"mfe";s:24:"maurícijská kreolčina";s:3:"mfe";s:15:"morisjenščina";s:3:"mfe";s:16:"mauritansk kreol";s:3:"mfe";s:11:"morisyencha";s:3:"mfe";s:14:"makhuwa-meetto";s:3:"mgh";s:13:"maxuva-meetto";s:3:"mgh";s:13:"makhuwa-metto";s:3:"mgh";s:14:"makuwa-mitogbe";s:3:"mgh";s:17:"makhuwa-meettoera";s:3:"mgh";s:12:"makua-meetto";s:3:"mgh";s:11:"makua-metó";s:3:"mgh";s:11:"makua-maeto";s:3:"mgh";s:5:"makua";s:3:"mgh";s:5:"macua";s:3:"mgh";s:11:"makuva-meto";s:3:"mgh";s:9:"makuamito";s:3:"mgh";s:15:"makuva-mittocha";s:3:"mgh";s:7:"meta’";s:3:"mgo";s:4:"meta";s:3:"mgo";s:6:"metaʼ";s:3:"mgo";s:6:"metera";s:3:"mgo";s:8:"méta’";s:3:"mgo";s:3:"mgo";s:3:"mgo";s:8:"metaisht";s:3:"mgo";s:7:"metacha";s:3:"mgo";s:6:"mohawk";s:3:"moh";s:6:"mohavk";s:3:"moh";s:8:"mahavski";s:3:"moh";s:12:"mohawkština";s:3:"moh";s:7:"mohoceg";s:3:"moh";s:13:"mohawkšćina";s:3:"moh";s:7:"mohoogi";s:3:"moh";s:9:"mohawkera";s:3:"moh";s:10:"móháicis";s:3:"moh";s:16:"mohawk-schpraach";s:3:"moh";s:9:"móhíska";s:3:"moh";s:14:"mohawk-sprooch";s:3:"moh";s:5:"mohok";s:3:"moh";s:7:"mohauku";s:3:"moh";s:6:"moħak";s:3:"moh";s:7:"moicano";s:3:"moh";s:11:"mohawk simi";s:3:"moh";s:11:"mohawkčina";s:3:"moh";s:11:"mohoščina";s:3:"moh";s:10:"mohaukisht";s:3:"moh";s:11:"mohavk dili";s:3:"moh";s:9:"mohaukcha";s:3:"moh";s:7:"mundang";s:3:"mua";s:7:"mundanq";s:3:"mua";s:3:"mas";s:3:"mua";s:9:"mundangbe";s:3:"mua";s:8:"mundangi";s:3:"mua";s:9:"mudangera";s:3:"mua";s:9:"mundangų";s:3:"mua";s:8:"mundangu";s:3:"mua";s:11:"mundagishte";s:3:"mua";s:10:"mundangcha";s:3:"mua";s:20:"múltiples llingües";s:3:"mul";s:16:"mwy nag un iaith";s:3:"mul";s:12:"mehrsprachig";s:3:"mul";s:18:"multiple languages";s:3:"mul";s:10:"mitu keelt";s:3:"mul";s:13:"monia kieliä";s:3:"mul";s:11:"multilingue";s:3:"mul";s:14:"meardere talen";s:3:"mul";s:15:"mehrschpraachig";s:3:"mul";s:16:"margvísleg mál";s:3:"mul";s:11:"multilingua";s:3:"mul";s:13:"méisproocheg";s:3:"mul";s:11:"mehrsprakig";s:3:"mul";s:14:"meerdere talen";s:3:"mul";s:9:"moldawies";s:5:"ro-md";s:7:"moldavu";s:5:"ro-md";s:6:"moldav";s:5:"ro-md";s:8:"moldoveg";s:5:"ro-md";s:6:"moldau";s:5:"ro-md";s:12:"moldavština";s:5:"ro-md";s:8:"moldofeg";s:5:"ro-md";s:9:"moldovisk";s:5:"ro-md";s:10:"moldauisch";s:5:"ro-md";s:14:"moldawišćina";s:5:"ro-md";s:9:"moldavian";s:5:"ro-md";s:7:"moldavo";s:5:"ro-md";s:7:"moldova";s:5:"ro-md";s:7:"moldave";s:5:"ro-md";s:7:"moldâf";s:5:"ro-md";s:9:"moldavysk";s:5:"ro-md";s:10:"moldáivis";s:5:"ro-md";s:10:"moldobhais";s:5:"ro-md";s:10:"moldawisch";s:5:"ro-md";s:13:"moldawšćina";s:5:"ro-md";s:7:"moldvai";s:5:"ro-md";s:8:"moldavia";s:5:"ro-md";s:10:"moldóvska";s:5:"ro-md";s:10:"moldawesch";s:5:"ro-md";s:8:"moldavų";s:5:"ro-md";s:8:"moldāvu";s:5:"ro-md";s:9:"moldavjan";s:5:"ro-md";s:8:"moldovsk";s:5:"ro-md";s:9:"moldavisk";s:5:"ro-md";s:10:"mołdawski";s:5:"ro-md";s:9:"moldávio";s:5:"ro-md";s:14:"moldovenească";s:5:"ro-md";s:11:"moldavčina";s:5:"ro-md";s:13:"moldavščina";s:5:"ro-md";s:11:"moldavishte";s:5:"ro-md";s:10:"moldaviska";s:5:"ro-md";s:9:"moldovaca";s:5:"ro-md";s:17:"moldovan rumincha";s:5:"ro-md";s:11:"määramata";s:3:"und";s:24:"määrittämätön kieli";s:3:"und";s:19:"marokkói tamazight";s:3:"zgh";s:32:"marokkanescht standard-tamazight";s:3:"zgh";s:29:"marockansk standard-tamazight";s:3:"zgh";s:14:"mittekeeleline";s:3:"zxx";s:4:"mari";s:3:"chm";s:9:"mari dili";s:3:"chm";s:6:"marieg";s:3:"chm";s:11:"marijština";s:3:"chm";s:5:"marí";s:3:"chm";s:6:"mairis";s:3:"chm";s:8:"mariešu";s:3:"chm";s:8:"maryjski";s:3:"chm";s:10:"marigiella";s:3:"chm";s:10:"marijčina";s:3:"chm";s:12:"marijščina";s:3:"chm";s:7:"mariska";s:3:"chm";s:15:"middelhollandsk";s:3:"dum";s:21:"mittelniederländisch";s:3:"dum";s:12:"middle dutch";s:3:"dum";s:18:"moyen néerlandais";s:3:"dum";s:17:"middelnederlânsk";s:3:"dum";s:15:"meán-ollainnis";s:3:"dum";s:16:"meadhan-dhuitsis";s:3:"dum";s:20:"mittelniderländisch";s:3:"dum";s:13:"miðhollenska";s:3:"dum";s:20:"meddelnehderlängsch";s:3:"dum";s:19:"mëttelhollännesch";s:3:"dum";s:17:"mellomnederlandsk";s:3:"dum";s:19:"middelnedderlandsch";s:3:"dum";s:16:"middelnederlands";s:3:"dum";s:17:"mellumnederlandsk";s:3:"dum";s:18:"medelnederländska";s:3:"dum";s:13:"middelengelsk";s:3:"enm";s:14:"mittelenglisch";s:3:"enm";s:14:"middle english";s:3:"enm";s:13:"moyen anglais";s:3:"enm";s:13:"middelingelsk";s:3:"enm";s:14:"meán-bhéarla";s:3:"enm";s:15:"meadhan-bheurla";s:3:"enm";s:15:"mittelänglisch";s:3:"enm";s:9:"miðenska";s:3:"enm";s:15:"meddelänglesch";s:3:"enm";s:15:"mëttelenglesch";s:3:"enm";s:13:"mellomengelsk";s:3:"enm";s:14:"middelengelsch";s:3:"enm";s:12:"middelengels";s:3:"enm";s:13:"medelengelska";s:3:"enm";s:12:"middelfransk";s:3:"frm";s:18:"mittelfranzösisch";s:3:"frm";s:13:"middle french";s:3:"frm";s:15:"moyen français";s:3:"frm";s:13:"middelfrânsk";s:3:"frm";s:15:"meán-fhraincis";s:3:"frm";s:17:"meadhan-fhraingis";s:3:"frm";s:11:"miðfranska";s:3:"frm";s:18:"mëttelfranséisch";s:3:"frm";s:12:"mellomfransk";s:3:"frm";s:18:"middelfranzöösch";s:3:"frm";s:11:"middelfrans";s:3:"frm";s:12:"medelfranska";s:3:"frm";s:13:"muinaisranska";s:3:"fro";s:14:"middelhøjtysk";s:3:"gmh";s:17:"mittelhochdeutsch";s:3:"gmh";s:18:"middle high german";s:3:"gmh";s:19:"moyen haut-allemand";s:3:"gmh";s:17:"middelheechdútsk";s:3:"gmh";s:22:"meán-ard-ghearmáinis";s:3:"gmh";s:24:"meadhan-Àrd-gearmailtis";s:3:"gmh";s:19:"mittelhochtüütsch";s:3:"gmh";s:14:"miðháþýska";s:3:"gmh";s:21:"mëttelhéichdäitsch";s:3:"gmh";s:14:"mellomhøytysk";s:3:"gmh";s:20:"middelhoochdüütsch";s:3:"gmh";s:15:"middelhoogduits";s:3:"gmh";s:14:"mellomhøgtysk";s:3:"gmh";s:14:"medelhögtyska";s:3:"gmh";s:16:"muinaisyläsaksa";s:3:"goh";s:9:"mongondou";s:3:"gor";s:9:"monq dili";s:3:"hmn";s:12:"miao-sprache";s:3:"hmn";s:7:"mongais";s:3:"hmn";s:4:"miao";s:3:"hmn";s:12:"miao-sprooch";s:3:"hmn";s:12:"miao-spraken";s:3:"hmn";s:6:"mbundu";s:3:"umb";s:5:"mongo";s:3:"lol";s:10:"monqo dili";s:3:"lol";s:10:"mongština";s:3:"lol";s:6:"mongó";s:3:"lol";s:5:"mongu";s:3:"lol";s:8:"madurés";s:3:"mad";s:12:"maduriz dili";s:3:"mad";s:10:"madureški";s:3:"mad";s:8:"madurès";s:3:"mad";s:11:"madurština";s:3:"mad";s:7:"madwreg";s:3:"mad";s:8:"madurese";s:3:"mad";s:11:"maduresisch";s:3:"mad";s:6:"madura";s:3:"mad";s:8:"madurais";s:3:"mad";s:8:"madurees";s:3:"mad";s:8:"madurski";s:3:"mad";s:7:"madurai";s:3:"mad";s:9:"madúrska";s:3:"mad";s:11:"maduresesch";s:3:"mad";s:9:"madurezų";s:3:"mad";s:10:"maduriešu";s:3:"mad";s:8:"maduriż";s:3:"mad";s:10:"maduresisk";s:3:"mad";s:10:"madureesch";s:3:"mad";s:9:"madoerees";s:3:"mad";s:10:"madurajski";s:3:"mad";s:8:"madurês";s:3:"mad";s:9:"madureză";s:3:"mad";s:10:"madurčina";s:3:"mad";s:12:"madurščina";s:3:"mad";s:11:"maduresiska";s:3:"mad";s:11:"madura dili";s:3:"mad";s:6:"magahi";s:3:"mag";s:11:"maqahi dili";s:3:"mag";s:13:"magahijština";s:3:"mag";s:6:"magali";s:3:"mag";s:7:"magahí";s:3:"mag";s:10:"magahiešu";s:3:"mag";s:7:"magaħi";s:3:"mag";s:11:"magadhčina";s:3:"mag";s:12:"magadščina";s:3:"mag";s:7:"makasar";s:3:"mak";s:12:"makasar dili";s:3:"mak";s:8:"makassar";s:3:"mak";s:13:"makasarština";s:3:"mak";s:9:"macasareg";s:3:"mak";s:12:"makassarisch";s:3:"mak";s:7:"macasar";s:3:"mak";s:9:"makassari";s:3:"mak";s:10:"makassaars";s:3:"mak";s:8:"makaszar";s:3:"mak";s:12:"makassaresch";s:3:"mak";s:8:"makasaro";s:3:"mak";s:8:"makasaru";s:3:"mak";s:11:"makassarsch";s:3:"mak";s:12:"makasarčina";s:3:"mak";s:14:"makasarščina";s:3:"mak";s:8:"mandingo";s:3:"man";s:14:"məndinqo dili";s:3:"man";s:8:"mandinga";s:3:"man";s:13:"mandingština";s:3:"man";s:15:"manding-sprache";s:3:"man";s:7:"malinke";s:3:"man";s:9:"mandingue";s:3:"man";s:17:"manding-schpraach";s:3:"man";s:9:"mandingó";s:3:"man";s:15:"manding-sprooch";s:3:"man";s:8:"mandingu";s:3:"man";s:10:"mandingwan";s:3:"man";s:7:"manding";s:3:"man";s:5:"mande";s:3:"man";s:4:"maba";s:3:"mde";s:5:"mabų";s:3:"mde";s:4:"mabu";s:3:"mde";s:6:"mandar";s:3:"mdr";s:11:"mandar dili";s:3:"mdr";s:8:"mandareg";s:3:"mdr";s:12:"mandaresisch";s:3:"mdr";s:7:"mandari";s:3:"mdr";s:12:"mandaresesch";s:3:"mdr";s:7:"mandaru";s:3:"mdr";s:11:"mandareesch";s:3:"mdr";s:11:"mandarčina";s:3:"mdr";s:13:"mandarščina";s:3:"mdr";s:5:"mende";s:3:"men";s:10:"mende dili";s:3:"men";s:6:"mendeg";s:3:"men";s:13:"mende-sprache";s:3:"men";s:6:"mendé";s:3:"men";s:7:"meindis";s:3:"men";s:15:"mende-schpraach";s:3:"men";s:13:"mende-sprooch";s:3:"men";s:5:"mendu";s:3:"men";s:5:"mendi";s:3:"men";s:10:"middelirsk";s:3:"mga";s:12:"mittelirisch";s:3:"mga";s:12:"middle irish";s:3:"mga";s:15:"moyen irlandais";s:3:"mga";s:10:"middeliers";s:3:"mga";s:14:"meán-ghaeilge";s:3:"mga";s:16:"meadhan-ghaeilge";s:3:"mga";s:10:"miðírska";s:3:"mga";s:13:"mëtteliresch";s:3:"mga";s:10:"mellomirsk";s:3:"mga";s:12:"middeliersch";s:3:"mga";s:11:"medeliriska";s:3:"mga";s:6:"micmac";s:3:"mic";s:11:"mikmak dili";s:3:"mic";s:6:"mikmak";s:3:"mic";s:8:"micmaceg";s:3:"mic";s:14:"micmac-sprache";s:3:"mic";s:7:"mikmaki";s:3:"mic";s:9:"mi’kmaq";s:3:"mic";s:16:"micmac-schpraach";s:3:"mic";s:14:"micmac-sprooch";s:3:"mic";s:7:"mikmaku";s:3:"mic";s:6:"mikmek";s:3:"mic";s:10:"miquemaque";s:3:"mic";s:11:"mikmakčina";s:3:"mic";s:12:"mikmaščina";s:3:"mic";s:7:"manchú";s:3:"mnc";s:11:"mançu dili";s:3:"mnc";s:7:"manchou";s:3:"mnc";s:6:"manču";s:3:"mnc";s:6:"manxú";s:3:"mnc";s:13:"mandžuština";s:3:"mnc";s:6:"manshw";s:3:"mnc";s:6:"manchu";s:3:"mnc";s:13:"mandschurisch";s:3:"mnc";s:7:"mandžu";s:3:"mnc";s:7:"mantšu";s:3:"mnc";s:8:"mandchou";s:3:"mnc";s:8:"mantsjoe";s:3:"mnc";s:11:"mandžurski";s:3:"mnc";s:7:"mandzsu";s:3:"mnc";s:9:"manchuria";s:3:"mnc";s:7:"mansjú";s:3:"mnc";s:13:"mandschuresch";s:3:"mnc";s:10:"mandžūru";s:3:"mnc";s:10:"manċurjan";s:3:"mnc";s:7:"mandsju";s:3:"mnc";s:13:"mandschuursch";s:3:"mnc";s:12:"manciuriană";s:3:"mnc";s:15:"mandžurščina";s:3:"mnc";s:11:"manchuriska";s:3:"mnc";s:14:"mançurya dili";s:3:"mnc";s:8:"manipuri";s:3:"mni";s:14:"manipüri dili";s:3:"mni";s:9:"manipurí";s:3:"mni";s:13:"manipurština";s:3:"mni";s:8:"manipwri";s:3:"mni";s:15:"meithei-sprache";s:3:"mni";s:9:"manipoeri";s:3:"mni";s:11:"manapúiris";s:3:"mni";s:17:"meithei-schpraach";s:3:"mni";s:10:"manipurski";s:3:"mni";s:11:"manípúrí";s:3:"mni";s:15:"meithei-sprooch";s:3:"mni";s:9:"manipūru";s:3:"mni";s:6:"meitei";s:3:"mni";s:12:"manipuryjski";s:3:"mni";s:7:"manipur";s:3:"mni";s:13:"manípurčina";s:3:"mni";s:14:"manipurščina";s:3:"mni";s:5:"mossi";s:3:"mos";s:9:"mosi dili";s:3:"mos";s:4:"mosi";s:3:"mos";s:5:"moré";s:3:"mos";s:13:"mossi-sprache";s:3:"mos";s:4:"more";s:3:"mos";s:15:"mossi-schpraach";s:3:"mos";s:5:"moszi";s:3:"mos";s:6:"mossí";s:3:"mos";s:13:"mossi-sprooch";s:3:"mos";s:4:"mosu";s:3:"mos";s:12:"mosijščina";s:3:"mos";s:7:"marwari";s:3:"mwr";s:12:"maruari dili";s:3:"mwr";s:7:"marvari";s:3:"mwr";s:14:"márvárština";s:3:"mwr";s:8:"marwarî";s:3:"mwr";s:10:"marmhairis";s:3:"mwr";s:10:"marwarisch";s:3:"mwr";s:8:"marvarí";s:3:"mwr";s:7:"marvaru";s:3:"mwr";s:8:"marawari";s:3:"mwr";s:13:"marvarščina";s:3:"mwr";s:12:"muinaisnorja";s:3:"non";s:14:"mittelpersisch";s:3:"pal";s:15:"mëttelpersesch";s:3:"pal";s:16:"middelpers’sch";s:3:"pal";s:13:"medelpersiska";s:3:"pal";s:13:"muinaispersia";s:3:"peo";s:18:"muinaisprovensaali";s:3:"pro";s:11:"mustlaskeel";s:3:"rom";s:11:"muinaisiiri";s:3:"sga";s:13:"muinaissyyria";s:3:"syc";s:12:"malawintonga";s:3:"tog";s:22:"malavijska tongščina";s:3:"tog";s:14:"mbundu-sprache";s:3:"umb";s:16:"mbundu-schpraach";s:3:"umb";s:14:"mbundu-sprooch";s:3:"umb";s:7:"medumba";s:3:"byv";s:10:"medumbagbe";s:3:"byv";s:8:"medumbų";s:3:"byv";s:7:"medumbu";s:3:"byv";s:18:"meksika ispancası";s:5:"es-mx";s:18:"meksički španski";s:5:"es-mx";s:16:"mexicansk spansk";s:5:"es-mx";s:22:"mexikanisches spanisch";s:5:"es-mx";s:25:"mexikańska špańšćina";s:5:"es-mx";s:15:"mexican spanish";s:5:"es-mx";s:15:"meksika hispana";s:5:"es-mx";s:15:"meksikonespanja";s:5:"es-mx";s:19:"meksikaansk spaansk";s:5:"es-mx";s:21:"meksički španjolski";s:5:"es-mx";s:21:"mexiska španišćina";s:5:"es-mx";s:19:"mexíkósk spænska";s:5:"es-mx";s:22:"mexikanescht spuenesch";s:5:"es-mx";s:16:"meksikos ispanų";s:5:"es-mx";s:16:"meksikas spāņu";s:5:"es-mx";s:17:"meksikansk spansk";s:5:"es-mx";s:16:"mexicaans spaans";s:5:"es-mx";s:24:"meksykański hiszpański";s:5:"es-mx";s:17:"mexikansk spanska";s:5:"es-mx";s:22:"meksika İspanyolcası";s:5:"es-mx";s:18:"meksika ispanchasi";s:5:"es-mx";s:16:"merkezi yupikçe";s:3:"esu";s:5:"mkako";s:3:"kkj";s:4:"mafa";s:3:"maf";s:7:"mafagbe";s:3:"maf";s:5:"mafų";s:3:"maf";s:4:"mafu";s:3:"maf";s:8:"mentawai";s:3:"mwv";s:14:"mentavajština";s:3:"mwv";s:9:"mentawaï";s:3:"mwv";s:8:"mentavai";s:3:"mwv";s:5:"myene";s:3:"mye";s:8:"myenegbe";s:3:"mye";s:7:"myènè";s:3:"mye";s:6:"mjenų";s:3:"mye";s:5:"mjenu";s:3:"mye";s:10:"muslim tat";s:3:"ttt";s:16:"musulmonų tatų";s:3:"ttt";s:10:"moslim tat";s:3:"ttt";s:4:"musi";s:3:"mui";s:31:"megleno-romanian (greek script)";s:8:"ruq-grek";s:17:"mon-khmer-spraken";s:3:"mkh";s:17:"mon-kmerski jezik";s:3:"mkh";s:6:"manobo";s:3:"mno";s:12:"manobo jezik";s:3:"mno";s:13:"munda-spraken";s:3:"mun";s:11:"munda jezik";s:3:"mun";s:12:"maya-spraken";s:3:"myn";s:14:"majanski jezik";s:3:"myn";}i:226;a:15:{s:11:"âldingelsk";s:3:"ang";s:15:"ಚೆಚನ್";s:2:"ce";s:24:"ಚೋಕ್ಟಾವ್";s:3:"cho";s:18:"ಚೆರೋಕೀ";s:3:"chr";s:24:"ಚೀಯೆನ್ನೇ";s:3:"chy";s:40:"ಚರ್ಚ್ ಸ್ಲಾವಿಕ್";s:2:"cu";s:18:"ಚುವಾಶ್";s:2:"cv";s:9:"爪哇文";s:2:"jv";s:18:"ಚೈನೀಸ್";s:2:"zh";s:12:"ಚಿಗಾ";s:3:"cgg";s:18:"ಚಿಬ್ಚಾ";s:3:"chb";s:18:"ಚಗಟಾಯ್";s:3:"chg";s:18:"ಚೂಕಿಸೆ";s:3:"chk";s:43:"ಚಿನೂಕ್ ಜಾರ್ಗೋನ್";s:3:"chn";s:30:"ಚಿಪೆವ್ಯಾನ್";s:3:"chp";}i:716;a:46:{s:37:"જુની અંગ્રેજી";s:3:"ang";s:21:"ຄາຕາລານ";s:2:"ca";s:18:"ຄໍຊິກາ";s:2:"co";s:6:"ຄີ";s:2:"cr";s:36:"ຄຣີເມນເຕີຄິຊ";s:3:"crh";s:15:"જર્મન";s:2:"de";s:21:"જાપાનીઝ";s:2:"ja";s:21:"જાવાનીસ";s:2:"jv";s:30:"જ્યોર્જિઅન";s:2:"ka";s:15:"ຄອງໂກ";s:2:"kg";s:18:"ຄິຄູຢຸ";s:2:"ki";s:15:"ຄາຊັກ";s:2:"kk";s:21:"ຄັນນາດາ";s:2:"kn";s:18:"ຄານຸລິ";s:2:"kr";s:27:"ຄັດຊະມີຣີ";s:2:"ks";s:15:"ຄໍນິຊ";s:2:"kw";s:12:"ຄຣິກ";s:3:"mus";s:15:"ຄີຊົວ";s:2:"qu";s:30:"ຄິນຢາວານດາ";s:2:"rw";s:9:"ቬንዳ";s:2:"ve";s:18:"ຄອບຕິກ";s:3:"cop";s:31:"જોલા-ફોન્યી";s:3:"dyo";s:30:"ຄາເວີເດຍນູ";s:3:"kea";s:28:"ຄອຍຣາ ຊິນີ";s:3:"khq";s:27:"ຄາເລັນຈິນ";s:3:"kln";s:37:"ຄອງໂກ ຊວາຮີລິ";s:3:"swc";s:21:"ຄຣິງກອນ";s:3:"tlh";s:15:"ຄາຣິບ";s:3:"car";s:31:"જૂની ફ્રેંચ";s:3:"fro";s:27:"જિલ્બરટીઝ";s:3:"gil";s:38:"જૂની હાઇ જર્મન";s:3:"goh";s:37:"જુદેઓ-પર્શિયન";s:3:"jpr";s:28:"જુદેઓ-અરબી";s:3:"jrb";s:12:"જ્જુ";s:3:"kaj";s:21:"ຄາແນມບູ";s:3:"kbl";s:12:"ຄາສິ";s:3:"kha";s:24:"ຄິມບັນດູ";s:3:"kmb";s:15:"ຄູສໄລ";s:3:"kos";s:15:"ຄູມີກ";s:3:"kum";s:18:"ຄູເທໄນ";s:3:"kut";s:28:"જૂની નોર્સ";s:3:"non";s:28:"જૂની ફારસી";s:3:"peo";s:43:"જુની પ્રોવેન્સલ";s:3:"pro";s:28:"જૂની આયરિશ";s:3:"sga";s:18:"ຄາຢູກາ";s:3:"cay";s:12:"ຄາໂກ";s:3:"kkj";}i:346;a:55:{s:46:"पुरानी अंग्रेज़ी";s:3:"ang";s:40:"पुरातन इंग्रजी";s:3:"ang";s:52:"पश्चिमी फ़्रिसियाई";s:2:"fy";s:46:"पश्चिमी फ्रिशियन";s:2:"fy";s:40:"प्राचीन यूनानी";s:3:"grc";s:37:"प्राचीन ग्रीक";s:3:"grc";s:12:"卢森堡文";s:2:"lb";s:12:"卢干达文";s:2:"lg";s:9:"卢晒文";s:3:"lus";s:15:"ഒറോമോ";s:2:"om";s:12:"ഒഡിയ";s:2:"or";s:33:"ഒസ്സെറ്റിക്";s:2:"os";s:18:"पंजाबी";s:2:"pa";s:27:"पंगासीनान";s:3:"pag";s:30:"पाम्पान्गा";s:3:"pam";s:36:"पापियामेन्टो";s:3:"pap";s:12:"पालि";s:2:"pi";s:12:"पाली";s:2:"pi";s:15:"पोलिश";s:2:"pl";s:15:"पश्तो";s:2:"ps";s:18:"पाश्तो";s:2:"ps";s:27:"पुर्तगाली";s:2:"pt";s:27:"पोर्तुगीज";s:2:"pt";s:24:"पोर्तुगी";s:2:"pt";s:12:"卢旺达文";s:2:"rw";s:37:"पारंपरिक चीनी";s:7:"zh-hant";s:40:"पारंपारिक चीनी";s:7:"zh-hant";s:49:"परम्परागत चिनियाँ";s:7:"zh-hant";s:40:"प्राचीन मिस्री";s:3:"egy";s:49:"प्राचीन इजिप्शियन";s:3:"egy";s:9:"卢奥文";s:3:"luo";s:9:"卢雅文";s:3:"luy";s:68:"प्रमाण मोरोक्कन तॅमॅझायट";s:3:"zgh";s:42:"पोर्तुगी (युरोप)";s:5:"pt-pt";s:49:"पुरातन फ़्रांसीसी";s:3:"fro";s:37:"पुरातन फ्रेंच";s:3:"fro";s:43:"पूर्वी फ्रीसीयन";s:3:"frs";s:52:"पौर्वात्य फ्रिशियन";s:3:"frs";s:44:"पुरातन हाइ जर्मन";s:3:"goh";s:34:"पुराना नॉर्स";s:3:"non";s:34:"पुरातन नॉर्स";s:3:"non";s:46:"पारम्परिक नेवारी";s:3:"nwc";s:15:"ഒസേജ്";s:3:"osa";s:24:"पाह्लावी";s:3:"pal";s:15:"पहलवी";s:3:"pal";s:18:"पलोउआन";s:3:"pau";s:21:"पालाउआन";s:3:"pau";s:34:"पुरानी फारसी";s:3:"peo";s:34:"पुरातन फारसी";s:3:"peo";s:27:"पोह्नपिएन";s:3:"pon";s:27:"पोह्नपियन";s:3:"pon";s:49:"पुरानी प्रोवेन्सल";s:3:"pro";s:55:"पुरातन प्रोव्हेन्सल";s:3:"pro";s:34:"पुरानी आइरिश";s:3:"sga";s:34:"पुरातन आयरिश";s:3:"sga";}i:243;a:24:{s:7:"óangol";s:3:"ang";s:18:"ಫುಲಾಹ್";s:2:"ff";s:24:"ಫಿನ್ನಿಶ್";s:2:"fi";s:21:"ಫಿಜಿಯನ್";s:2:"fj";s:15:"ಫರೋಸಿ";s:2:"fo";s:21:"ಫ್ರೆಂಚ್";s:2:"fr";s:33:"ಫ್ರಿಯುಲಿಯನ್";s:3:"fur";s:9:"ógörög";s:3:"grc";s:6:"óría";s:2:"or";s:11:"óegyiptomi";s:3:"egy";s:24:"ಫಿಲಿಪಿನೊ";s:3:"fil";s:24:"ಫ್ಲೆಮಿಷ್";s:5:"nl-be";s:27:"ಫೀನಿಷಿಯನ್";s:3:"phn";s:18:"óþekkt tungumál";s:3:"und";s:15:"ಫೆಂಗ್";s:3:"fan";s:15:"ಫಾಂಟಿ";s:3:"fat";s:12:"ಫೋನ್";s:3:"fon";s:9:"ófrancia";s:3:"fro";s:15:"ófelső német";s:3:"goh";s:12:"óskandináv";s:3:"non";s:6:"ósage";s:3:"osa";s:8:"óperzsa";s:3:"peo";s:12:"óprovánszi";s:3:"pro";s:5:"óír";s:3:"sga";}i:102;a:580:{s:9:"fornenska";s:3:"ang";s:12:"fornengelska";s:3:"ang";s:14:"fas arapçası";s:3:"ary";s:46:"ဆိုရာနီ ကူဒစ်ရှ်";s:3:"ckb";s:50:"ဆွစ် အမြင့် ဂျာမန်";s:5:"de-ch";s:4:"fars";s:2:"fa";s:5:"farsi";s:2:"fa";s:8:"farsaidh";s:2:"fa";s:6:"farsî";s:2:"fa";s:7:"faarisi";s:2:"fa";s:7:"farsça";s:2:"fa";s:7:"forscha";s:2:"fa";s:8:"fulfulde";s:2:"ff";s:5:"fulah";s:2:"ff";s:9:"fula dili";s:2:"ff";s:3:"ful";s:2:"ff";s:10:"fulbština";s:2:"ff";s:5:"ffwla";s:2:"ff";s:7:"fulagbe";s:2:"ff";s:4:"fula";s:2:"ff";s:5:"fulbe";s:2:"ff";s:6:"fulani";s:2:"ff";s:9:"fuláinis";s:2:"ff";s:5:"fúla";s:2:"ff";s:7:"fulahų";s:2:"ff";s:4:"fulu";s:2:"ff";s:6:"fulaħ";s:2:"ff";s:10:"fulah simi";s:2:"ff";s:9:"fulbčina";s:2:"ff";s:10:"fulščina";s:2:"ff";s:4:"fins";s:2:"fi";s:10:"finlandés";s:2:"fi";s:3:"fin";s:2:"fi";s:6:"finneg";s:2:"fi";s:6:"finski";s:2:"fi";s:6:"finès";s:2:"fi";s:9:"finština";s:2:"fi";s:7:"ffinneg";s:2:"fi";s:5:"finsk";s:2:"fi";s:8:"finnisch";s:2:"fi";s:10:"finšćina";s:2:"fi";s:11:"finlanɖgbe";s:2:"fi";s:7:"finnish";s:2:"fi";s:5:"finna";s:2:"fi";s:6:"finés";s:2:"fi";s:11:"finlandiera";s:2:"fi";s:6:"finskt";s:2:"fi";s:7:"finnois";s:2:"fi";s:10:"finlandês";s:2:"fi";s:11:"fionlainnis";s:2:"fi";s:12:"fionnlannais";s:2:"fi";s:4:"finn";s:2:"fi";s:7:"finnese";s:2:"fi";s:7:"finnska";s:2:"fi";s:10:"finlandese";s:2:"fi";s:14:"finlandimiutut";s:2:"fi";s:8:"finnesch";s:2:"fi";s:7:"finland";s:2:"fi";s:10:"finlandiż";s:2:"fi";s:7:"finnsch";s:2:"fi";s:7:"fiński";s:2:"fi";s:10:"fines simi";s:2:"fi";s:10:"finlandais";s:2:"fi";s:11:"finlandeză";s:2:"fi";s:9:"fínčina";s:2:"fi";s:10:"finščina";s:2:"fi";s:12:"fiinlaandees";s:2:"fi";s:11:"finlandisht";s:2:"fi";s:6:"finska";s:2:"fi";s:5:"fince";s:2:"fi";s:6:"fincha";s:2:"fi";s:24:"finlandés de tornedalen";s:3:"fit";s:24:"finština (tornedalská)";s:3:"fit";s:16:"ffinneg tornedal";s:3:"fit";s:20:"finnois tornédalien";s:3:"fit";s:25:"finlandese del tornedalen";s:3:"fit";s:9:"fidjiaans";s:2:"fj";s:6:"fixanu";s:2:"fj";s:4:"fici";s:2:"fj";s:7:"fidjieg";s:2:"fj";s:10:"fidžijski";s:2:"fj";s:6:"fijià";s:2:"fj";s:13:"fidžijština";s:2:"fj";s:8:"ffijïeg";s:2:"fj";s:8:"fijiansk";s:2:"fj";s:7:"fidschi";s:2:"fj";s:13:"fidžišćina";s:2:"fj";s:8:"fidzigbe";s:2:"fj";s:6:"fijian";s:2:"fj";s:6:"fiĝia";s:2:"fj";s:7:"fiyiano";s:2:"fj";s:6:"fidži";s:2:"fj";s:7:"fijiera";s:2:"fj";s:10:"fidjianskt";s:2:"fj";s:7:"fidjien";s:2:"fj";s:6:"fizian";s:2:"fj";s:6:"fijysk";s:2:"fj";s:6:"fidsis";s:2:"fj";s:6:"fìdis";s:2:"fj";s:7:"fixiano";s:2:"fj";s:13:"fidschianisch";s:2:"fj";s:13:"fidźišćina";s:2:"fj";s:6:"fidzsi";s:2:"fj";s:4:"fiji";s:2:"fj";s:10:"fídjeyska";s:2:"fj";s:7:"figiano";s:2:"fj";s:10:"fidschesch";s:2:"fj";s:13:"fidschianesch";s:2:"fj";s:8:"fidžių";s:2:"fj";s:10:"fidžiešu";s:2:"fj";s:5:"fiġi";s:2:"fj";s:13:"fidschiaansch";s:2:"fj";s:7:"fijisch";s:2:"fj";s:10:"fidżijski";s:2:"fj";s:7:"fijiano";s:2:"fj";s:9:"fidschian";s:2:"fj";s:8:"fijiană";s:2:"fj";s:11:"fidjigiella";s:2:"fj";s:12:"fidžijčina";s:2:"fj";s:14:"fidžijščina";s:2:"fj";s:8:"fixhiane";s:2:"fj";s:9:"fijianska";s:2:"fj";s:9:"fiji dili";s:2:"fj";s:6:"fijcha";s:2:"fj";s:9:"føroyskt";s:2:"fo";s:7:"faroees";s:2:"fo";s:7:"feroés";s:2:"fo";s:5:"farer";s:2:"fo";s:7:"faeroeg";s:2:"fo";s:6:"farski";s:2:"fo";s:7:"feroès";s:2:"fo";s:10:"faerština";s:2:"fo";s:8:"ffaröeg";s:2:"fo";s:8:"færøsk";s:2:"fo";s:10:"färöisch";s:2:"fo";s:12:"ferejšćina";s:2:"fo";s:8:"faroegbe";s:2:"fo";s:7:"faroese";s:2:"fo";s:5:"feroa";s:2:"fo";s:7:"fääri";s:2:"fo";s:7:"faroera";s:2:"fo";s:9:"féroïen";s:2:"fo";s:7:"faroês";s:2:"fo";s:10:"faeröersk";s:2:"fo";s:7:"faróis";s:2:"fo";s:10:"fàrothais";s:2:"fo";s:7:"faroés";s:2:"fo";s:8:"ferojski";s:2:"fo";s:13:"färöšćina";s:2:"fo";s:8:"feröeri";s:2:"fo";s:4:"faro";s:2:"fo";s:9:"færeyska";s:2:"fo";s:13:"färröeresch";s:2:"fo";s:10:"färöesch";s:2:"fo";s:7:"farerų";s:2:"fo";s:5:"fēru";s:2:"fo";s:5:"faroe";s:2:"fo";s:7:"fawriż";s:2:"fo";s:9:"færøysk";s:2:"fo";s:11:"färöösch";s:2:"fo";s:9:"faeröers";s:2:"fo";s:8:"farerski";s:2:"fo";s:7:"feroês";s:2:"fo";s:11:"feroes simi";s:2:"fo";s:7:"ferrais";s:2:"fo";s:8:"faroeză";s:2:"fo";s:11:"fearagiella";s:2:"fo";s:9:"faerčina";s:2:"fo";s:10:"ferščina";s:2:"fo";s:7:"farowsi";s:2:"fo";s:8:"faroisht";s:2:"fo";s:10:"färöiska";s:2:"fo";s:10:"faroe dili";s:2:"fo";s:8:"farercha";s:2:"fo";s:9:"français";s:2:"fr";s:5:"frans";s:2:"fr";s:8:"frɛnkye";s:2:"fr";s:8:"francés";s:2:"fr";s:8:"fransız";s:2:"fr";s:9:"francuski";s:2:"fr";s:8:"francès";s:2:"fr";s:14:"francouzština";s:2:"fr";s:8:"ffrangeg";s:2:"fr";s:6:"fransk";s:2:"fr";s:12:"französisch";s:2:"fr";s:14:"francojšćina";s:2:"fr";s:9:"fransegbe";s:2:"fr";s:6:"french";s:2:"fr";s:6:"franca";s:2:"fr";s:9:"frantsesa";s:2:"fr";s:10:"farayseere";s:2:"fr";s:7:"franskt";s:2:"fr";s:8:"francês";s:2:"fr";s:7:"frânsk";s:2:"fr";s:8:"fraincis";s:2:"fr";s:8:"fraingis";s:2:"fr";s:10:"faransanci";s:2:"fr";s:13:"francošćina";s:2:"fr";s:7:"francia";s:2:"fr";s:8:"francese";s:2:"fr";s:9:"fụrench";s:2:"fr";s:7:"franska";s:2:"fr";s:10:"franskisut";s:2:"fr";s:14:"franzüüsesch";s:2:"fr";s:7:"frenkek";s:2:"fr";s:11:"franséisch";s:2:"fr";s:7:"franču";s:2:"fr";s:8:"frantsay";s:2:"fr";s:9:"franċiż";s:2:"fr";s:12:"franzöösch";s:2:"fr";s:12:"frances simi";s:2:"fr";s:7:"franzos";s:2:"fr";s:9:"franceză";s:2:"fr";s:15:"fránskkagiella";s:2:"fr";s:8:"farânzi";s:2:"fr";s:14:"francúzština";s:2:"fr";s:13:"francoščina";s:2:"fr";s:9:"faransiis";s:2:"fr";s:11:"frëngjisht";s:2:"fr";s:10:"fransızca";s:2:"fr";s:10:"fransuzcha";s:2:"fr";s:16:"français cadien";s:3:"frc";s:14:"francés cajun";s:3:"frc";s:26:"francouzština (kajunská)";s:3:"frc";s:14:"ffrangeg cajwn";s:3:"frc";s:14:"francese cajun";s:3:"frc";s:23:"franko-provensálština";s:3:"frp";s:19:"frankoprovenzalisch";s:3:"frp";s:17:"franco-provençal";s:3:"frp";s:16:"francoprovenzale";s:3:"frp";s:19:"frankoprovenzalesch";s:3:"frp";s:19:"franko-prowansalski";s:3:"frp";s:18:"frankoprovensalska";s:3:"frp";s:17:"frisón del norte";s:3:"frr";s:15:"frizeg an norzh";s:3:"frr";s:20:"frisó septentrional";s:3:"frr";s:21:"fríština (severní)";s:3:"frr";s:17:"ffriseg y gogledd";s:3:"frr";s:21:"frisón septentrional";s:3:"frr";s:14:"frison du nord";s:3:"frr";s:25:"freaslainnis an tuaiscirt";s:3:"frr";s:23:"frìoslannais thuathach";s:3:"frr";s:12:"frisia utara";s:3:"frr";s:22:"frisone settentrionale";s:3:"frr";s:20:"frísio setentrional";s:3:"frr";s:13:"fris dal nord";s:3:"frr";s:17:"frizonă nordică";s:3:"frr";s:6:"furlan";s:3:"fur";s:9:"friulianu";s:3:"fur";s:10:"friul dili";s:3:"fur";s:10:"frioulaneg";s:3:"fur";s:10:"friulijski";s:3:"fur";s:8:"friülà";s:3:"fur";s:12:"furlanština";s:3:"fur";s:8:"ffriwleg";s:3:"fur";s:8:"friulian";s:3:"fur";s:9:"friulisch";s:3:"fur";s:8:"friulano";s:3:"fur";s:7:"friuuli";s:3:"fur";s:6:"friuli";s:3:"fur";s:8:"frioulan";s:3:"fur";s:8:"friulysk";s:3:"fur";s:9:"friúilis";s:3:"fur";s:9:"friùilis";s:3:"fur";s:8:"friulski";s:3:"fur";s:10:"fríúlska";s:3:"fur";s:9:"friulesch";s:3:"fur";s:6:"frulan";s:3:"fur";s:7:"friūlu";s:3:"fur";s:9:"frijuljan";s:3:"fur";s:10:"friuliansk";s:3:"fur";s:9:"friuulsch";s:3:"fur";s:7:"friulan";s:3:"fur";s:9:"friulană";s:3:"fur";s:10:"friulčina";s:3:"fur";s:13:"furlanščina";s:3:"fur";s:11:"friulianska";s:3:"fur";s:5:"frysk";s:2:"fy";s:18:"frisón occidental";s:2:"fy";s:20:"frizeg ar cʼhornôg";s:2:"fy";s:9:"frizijski";s:2:"fy";s:15:"frisó oriental";s:2:"fy";s:10:"fríština";s:2:"fy";s:19:"ffriseg y gorllewin";s:2:"fy";s:7:"frisisk";s:2:"fy";s:12:"frizišćina";s:2:"fy";s:5:"frisa";s:2:"fy";s:8:"frisiera";s:2:"fy";s:17:"frison occidental";s:2:"fy";s:7:"frisian";s:2:"fy";s:23:"freaslainnis iartharach";s:2:"fy";s:21:"frìoslannais siarach";s:2:"fy";s:7:"frisón";s:2:"fy";s:9:"friesisch";s:2:"fy";s:5:"fríz";s:2:"fy";s:8:"frisiano";s:2:"fy";s:12:"frisia barat";s:2:"fy";s:19:"frisone occidentale";s:2:"fy";s:8:"friżjan";s:2:"fy";s:5:"fries";s:2:"fy";s:18:"frísico ocidental";s:2:"fy";s:17:"frísio ocidental";s:2:"fy";s:11:"frison simi";s:2:"fy";s:4:"fris";s:2:"fy";s:21:"frizonă occidentală";s:2:"fy";s:13:"frizijščina";s:2:"fy";s:18:"firiisiyan galbeed";s:2:"fy";s:11:"frizianisht";s:2:"fy";s:11:"forngríska";s:3:"grc";s:12:"forngrekiska";s:3:"grc";s:31:"ဆွစ် ဂျာမန်";s:3:"gsw";s:10:"fiji hindi";s:8:"hif-latn";s:13:"fidschi-hindi";s:3:"hif";s:12:"fidžinhindi";s:3:"hif";s:13:"fidžio hindi";s:3:"hif";s:13:"fijisch hindi";s:3:"hif";s:10:"fiji-hindi";s:3:"hif";s:14:"fiji hintçesi";s:3:"hif";s:25:"fiji hindi (latin script)";s:8:"hif-latn";s:12:"felső szorb";s:3:"hsb";s:18:"francique ripuaire";s:3:"ksh";s:9:"falčtina";s:3:"pfl";s:14:"fornpreussiska";s:3:"prg";s:17:"fotigis (burazil)";s:5:"pt-br";s:18:"ဆမ်ဂို";s:2:"sg";s:18:"ဆင်ဟာလ";s:2:"si";s:22:"южносаамски";s:3:"sma";s:21:"ဆိုမာလီ";s:2:"so";s:30:"ဆားဗီးယန်း";s:2:"sr";s:20:"frisón de saterland";s:3:"stq";s:26:"fríština (saterlandská)";s:3:"stq";s:19:"frison de saterland";s:3:"stq";s:22:"fryzyjski saterlandzki";s:3:"stq";s:15:"ဆူဒန်";s:2:"su";s:18:"ဆွီဒင်";s:2:"sv";s:21:"ဆြာဟီလီ";s:2:"sw";s:8:"fotiaceg";s:3:"udm";s:6:"fendeg";s:2:"ve";s:7:"feniseg";s:3:"vec";s:9:"fietnameg";s:2:"vi";s:11:"fiitnaamays";s:2:"vi";s:19:"flamencu occidental";s:3:"vls";s:25:"flandrezeg ar c’hornôg";s:3:"vls";s:19:"fflemeg gorllewinol";s:3:"vls";s:18:"flamand occidental";s:3:"vls";s:17:"flannrais siarach";s:3:"vls";s:21:"fiammingo occidentale";s:3:"vls";s:18:"franconien du main";s:3:"vmf";s:18:"forenklet kinesisk";s:7:"zh-hans";s:22:"ferienfâldich sineesk";s:7:"zh-hans";s:17:"forenkla kinesisk";s:7:"zh-hans";s:20:"förenklad kinesiska";s:7:"zh-hans";s:12:"fonyi jolera";s:3:"dyo";s:11:"fornegypska";s:3:"egy";s:13:"fornegyptiska";s:3:"egy";s:9:"filippyns";s:3:"fil";s:8:"filipín";s:3:"fil";s:8:"filippin";s:3:"fil";s:9:"filipineg";s:3:"fil";s:10:"filipinski";s:3:"fil";s:7:"filipí";s:3:"fil";s:14:"filipínština";s:3:"fil";s:10:"ffilipineg";s:3:"fil";s:10:"filippinsk";s:3:"fil";s:8:"filipino";s:3:"fil";s:14:"filipinšćina";s:3:"fil";s:10:"filipingbe";s:3:"fil";s:8:"filipina";s:3:"fil";s:11:"filipiniskt";s:3:"fil";s:7:"filipin";s:3:"fil";s:9:"filipynsk";s:3:"fil";s:10:"filipínis";s:3:"fil";s:9:"filipinis";s:3:"fil";s:11:"filippínó";s:3:"fil";s:12:"filippseyska";s:3:"fil";s:9:"filippino";s:3:"fil";s:3:"fil";s:3:"fil";s:14:"filipiniečių";s:3:"fil";s:13:"filipīniešu";s:3:"fil";s:9:"filipijns";s:3:"fil";s:13:"filipino simi";s:3:"fil";s:11:"filipineză";s:3:"fil";s:17:"filippiinnagiella";s:3:"fil";s:13:"filipínčina";s:3:"fil";s:14:"filipinščina";s:3:"fil";s:10:"filipinase";s:3:"fil";s:11:"filippinska";s:3:"fil";s:9:"filipince";s:3:"fil";s:10:"filipincha";s:3:"fil";s:11:"flere sprog";s:3:"mul";s:12:"flere språk";s:3:"mul";s:13:"fleire språk";s:3:"mul";s:12:"flera språk";s:3:"mul";s:8:"flamencu";s:5:"nl-be";s:7:"flamand";s:5:"nl-be";s:10:"flandrezeg";s:5:"nl-be";s:9:"flamanski";s:5:"nl-be";s:7:"flamenc";s:5:"nl-be";s:7:"fflemeg";s:5:"nl-be";s:6:"flamsk";s:5:"nl-be";s:9:"flämisch";s:5:"nl-be";s:11:"flamšćina";s:5:"nl-be";s:9:"flemiagbe";s:5:"nl-be";s:7:"flemish";s:5:"nl-be";s:7:"flandra";s:5:"nl-be";s:8:"flamenco";s:5:"nl-be";s:6:"flaami";s:5:"nl-be";s:10:"flandriera";s:5:"nl-be";s:7:"flamant";s:5:"nl-be";s:9:"flannrais";s:5:"nl-be";s:11:"fläämisch";s:5:"nl-be";s:8:"flæmska";s:5:"nl-be";s:9:"fiammingo";s:5:"nl-be";s:9:"flämesch";s:5:"nl-be";s:9:"flamandų";s:5:"nl-be";s:6:"flāmu";s:5:"nl-be";s:10:"fläämsch";s:5:"nl-be";s:19:"flamandzki (belgia)";s:5:"nl-be";s:8:"flamengo";s:5:"nl-be";s:4:"flam";s:5:"nl-be";s:9:"flamandă";s:5:"nl-be";s:10:"flámčina";s:5:"nl-be";s:11:"flamščina";s:5:"nl-be";s:8:"flamande";s:5:"nl-be";s:12:"flamländska";s:5:"nl-be";s:8:"flamanca";s:5:"nl-be";s:10:"flamandcha";s:5:"nl-be";s:23:"южен ндебеле";s:2:"nr";s:8:"fenisies";s:3:"phn";s:7:"feniciu";s:3:"phn";s:12:"foyenik dili";s:3:"phn";s:10:"fenikianeg";s:3:"phn";s:11:"feničanski";s:3:"phn";s:6:"fenici";s:3:"phn";s:11:"féničtina";s:3:"phn";s:9:"fønikisk";s:3:"phn";s:7:"fenicio";s:3:"phn";s:9:"foiniikia";s:3:"phn";s:8:"foinikia";s:3:"phn";s:9:"foenisysk";s:3:"phn";s:8:"fenički";s:3:"phn";s:9:"főniciai";s:3:"phn";s:7:"funisia";s:3:"phn";s:11:"fönikíska";s:3:"phn";s:12:"finikiečių";s:3:"phn";s:11:"feniķiešu";s:3:"phn";s:8:"feniċju";s:3:"phn";s:10:"foenicisch";s:3:"phn";s:7:"fenicki";s:3:"phn";s:8:"fenício";s:3:"phn";s:8:"fenizian";s:3:"phn";s:10:"feniciană";s:3:"phn";s:10:"feničtina";s:3:"phn";s:15:"feničanščina";s:3:"phn";s:9:"feniciska";s:3:"phn";s:11:"fenike dili";s:3:"phn";s:21:"ဆန်ဘူရု";s:3:"saq";s:15:"ဆန်ဂု";s:3:"sbp";s:5:"faieg";s:3:"vai";s:15:"ဆိုဂါ";s:3:"xog";s:26:"fară conținut lingvistic";s:3:"zxx";s:19:"francés de canadá";s:5:"fr-ca";s:17:"francès canadenc";s:5:"fr-ca";s:15:"ffrangeg canada";s:5:"fr-ca";s:19:"francés canadiense";s:5:"fr-ca";s:18:"français canadien";s:5:"fr-ca";s:19:"francês dal canade";s:5:"fr-ca";s:19:"fraincis cheanadach";s:5:"fr-ca";s:16:"fraingis chanada";s:5:"fr-ca";s:18:"francés canadiano";s:5:"fr-ca";s:17:"francese canadese";s:5:"fr-ca";s:25:"franzüüsesch uß kanada";s:5:"fr-ca";s:18:"franċiż kanadiż";s:5:"fr-ca";s:18:"francês canadiano";s:5:"fr-ca";s:18:"francês canadense";s:5:"fr-ca";s:16:"franzos canadais";s:5:"fr-ca";s:20:"franceză canadiană";s:5:"fr-ca";s:26:"francúzština (kanadská)";s:5:"fr-ca";s:21:"frëngjishte kanadeze";s:5:"fr-ca";s:17:"francés de suiza";s:5:"fr-ch";s:14:"francès suís";s:5:"fr-ch";s:18:"ffrangeg y swistir";s:5:"fr-ch";s:14:"francés suizo";s:5:"fr-ch";s:16:"français suisse";s:5:"fr-ch";s:20:"francês de svuizare";s:5:"fr-ch";s:21:"fraincis eilvéiseach";s:5:"fr-ch";s:21:"fraingis eilbheiseach";s:5:"fr-ch";s:15:"francés suízo";s:5:"fr-ch";s:17:"francese svizzero";s:5:"fr-ch";s:30:"franzüüsesch uß de schweijz";s:5:"fr-ch";s:19:"franċiż Żvizzeru";s:5:"fr-ch";s:34:"ဆွစ် ပြင်သစ်";s:5:"fr-ch";s:16:"francês suíço";s:5:"fr-ch";s:15:"franzos svizzer";s:5:"fr-ch";s:21:"franceză elvețiană";s:5:"fr-ch";s:30:"francúzština (švajčiarska)";s:5:"fr-ch";s:25:"faransiis (iswiiserlaand)";s:5:"fr-ch";s:22:"frëngjishte zvicerane";s:5:"fr-ch";s:24:"южноалтайски";s:3:"alt";s:26:"южноалтайский";s:3:"alt";s:4:"fang";s:3:"fan";s:9:"fang dili";s:3:"fan";s:6:"fangbe";s:3:"fan";s:5:"fangi";s:3:"fan";s:5:"fangu";s:3:"fan";s:6:"fangue";s:3:"fan";s:9:"fangčina";s:3:"fan";s:13:"fangijščina";s:3:"fan";s:5:"fanti";s:3:"fat";s:10:"fanti dili";s:3:"fat";s:10:"fantština";s:3:"fat";s:6:"ffanti";s:3:"fat";s:13:"fanti-sprache";s:3:"fat";s:15:"fanti-schpraach";s:3:"fat";s:6:"fantí";s:3:"fat";s:13:"fanti-sprooch";s:3:"fat";s:5:"fantu";s:3:"fat";s:13:"fantijščina";s:3:"fat";s:3:"fon";s:3:"fon";s:8:"fon dili";s:3:"fon";s:9:"fonština";s:3:"fon";s:11:"fon-sprache";s:3:"fon";s:4:"foni";s:3:"fon";s:4:"fón";s:3:"fon";s:11:"fon-sprooch";s:3:"fon";s:4:"fonu";s:3:"fon";s:3:"fom";s:3:"fon";s:8:"fončina";s:3:"fon";s:10:"fonščina";s:3:"fon";s:11:"fonspråket";s:3:"fon";s:14:"francés mediu";s:3:"frm";s:15:"francès mitjà";s:3:"frm";s:30:"francouzština (středověká)";s:3:"frm";s:14:"ffrangeg canol";s:3:"frm";s:17:"francés medieval";s:3:"frm";s:18:"francuski, srednji";s:3:"frm";s:14:"francese medio";s:3:"frm";s:20:"franċiż, medjevali";s:3:"frm";s:17:"francês medieval";s:3:"frm";s:15:"francês médio";s:3:"frm";s:14:"franzos mesaun";s:3:"frm";s:18:"franceză mijlocie";s:3:"frm";s:16:"francés antiguu";s:3:"fro";s:14:"francès antic";s:3:"fro";s:23:"francouzština (stará)";s:3:"fro";s:16:"francés antiguo";s:3:"fro";s:11:"fornfranska";s:3:"fro";s:15:"francese antico";s:3:"fro";s:16:"franċiż, antik";s:3:"fro";s:16:"francês arcaico";s:3:"fro";s:12:"franzos vegl";s:3:"fro";s:15:"franceză veche";s:3:"fro";s:16:"frisón oriental";s:3:"frs";s:15:"frizeg ar reter";s:3:"frs";s:17:"frisó occidental";s:3:"frs";s:23:"fríština (východní)";s:3:"frs";s:17:"ffriseg y dwyrain";s:3:"frs";s:15:"frison oriental";s:3:"frs";s:20:"frìoslannais earach";s:3:"frs";s:12:"frisia timur";s:3:"frs";s:17:"frisone orientale";s:3:"frs";s:18:"fryzyjski wschodni";s:3:"frs";s:16:"frísio oriental";s:3:"frs";s:16:"frisão oriental";s:3:"frs";s:15:"fris da l’ost";s:3:"frs";s:19:"frizonă orientală";s:3:"frs";s:14:"fornháþýska";s:3:"goh";s:13:"fornhögtyska";s:3:"goh";s:12:"fornnordiska";s:3:"non";s:13:"fornpersneska";s:3:"peo";s:12:"fornpersiska";s:3:"peo";s:17:"fornpróvensalska";s:3:"pro";s:16:"fornprovensalska";s:3:"pro";s:10:"fornírska";s:3:"sga";s:10:"forniriska";s:3:"sga";s:3:"fut";s:3:"bfd";s:6:"frafra";s:3:"gur";s:8:"farefare";s:3:"gur";s:21:"finnougrische spraken";s:3:"fiu";s:16:"filipinski jezik";s:3:"phi";}i:476;a:66:{s:9:"古英語";s:3:"ang";s:9:"古英文";s:3:"ang";s:18:"বাশকির";s:2:"ba";s:30:"বেলারুশিয়";s:2:"be";s:27:"বুলগেরিয়";s:2:"bg";s:21:"বিসলামা";s:2:"bi";s:21:"বামবারা";s:2:"bm";s:15:"বাংলা";s:2:"bn";s:61:"বিষ্ণুপ্রিয়া মণিপুরী";s:3:"bpy";s:18:"ব্রেটন";s:2:"br";s:24:"বসনীয়ান";s:2:"bs";s:18:"বুগিনি";s:3:"bug";s:55:"ඔස්ට්‍රියානු ජර්මන්";s:5:"de-at";s:40:"ব্রিটিশ ইংরেজি";s:5:"en-gb";s:15:"বাস্ক";s:2:"eu";s:21:"古代ギリシャ語";s:3:"grc";s:12:"古希腊文";s:3:"grc";s:12:"古希臘文";s:3:"grc";s:15:"古吉拉特文";s:2:"gu";s:15:"বর্মি";s:2:"my";s:15:"ඔරොමෝ";s:2:"om";s:15:"ඔරියා";s:2:"or";s:52:"ব্রাজিলের পর্তুগীজ";s:5:"pt-br";s:12:"르완다어";s:2:"rw";s:18:"ゼーランド語";s:3:"zea";s:18:"বেম্বা";s:3:"bem";s:12:"বেনা";s:3:"bez";s:12:"বড়ো";s:3:"brx";s:21:"古代エジプト語";s:3:"egy";s:12:"古埃及文";s:3:"egy";s:9:"古西文";s:3:"guz";s:21:"বাফিয়া";s:3:"ksf";s:52:"বহুগুণিতক ভাষাসমূহ";s:3:"mul";s:9:"르와어";s:3:"rwk";s:15:"ব্লিন";s:3:"byn";s:18:"বেলুচী";s:3:"bal";s:24:"বালিনীয়";s:3:"ban";s:12:"বাসা";s:3:"bas";s:12:"বেজা";s:3:"bej";s:15:"বিকোল";s:3:"bik";s:12:"বিনি";s:3:"bin";s:15:"ব্রাজ";s:3:"bra";s:24:"বুরিয়াত";s:3:"bua";s:18:"古フランス語";s:3:"fro";s:9:"古法文";s:3:"fro";s:15:"বায়া";s:3:"gba";s:18:"古高ドイツ語";s:3:"goh";s:15:"古高地德文";s:3:"goh";s:21:"古高地日耳曼文";s:3:"goh";s:15:"古ノルド語";s:3:"non";s:15:"古诺尔斯文";s:3:"non";s:15:"古諾爾斯文";s:3:"non";s:21:"古典ネワール語";s:3:"nwc";s:15:"古尼瓦爾文";s:3:"nwc";s:21:"古代ペルシア語";s:3:"peo";s:15:"古老波斯文";s:3:"peo";s:12:"古波斯文";s:3:"peo";s:24:"古期プロバンス語";s:3:"pro";s:18:"古普羅旺斯文";s:3:"pro";s:27:"古期アイルランド語";s:3:"sga";s:15:"古爱尔兰文";s:3:"sga";s:15:"古愛爾蘭文";s:3:"sga";s:12:"古粟特文";s:3:"sog";s:18:"古典シリア語";s:3:"syc";s:15:"古敘利亞文";s:3:"syc";s:12:"ゼナガ語";s:3:"zen";}i:331;a:14:{s:43:"ძველი ინგლისური";s:3:"ang";s:21:"ძონგკხა";s:2:"dz";s:37:"Գաելյան Շոտլանդերեն";s:2:"gd";s:40:"ძველი ბერძნული";s:3:"grc";s:9:"溫達文";s:2:"ve";s:39:"ძველეგვიპტური";s:3:"egy";s:9:"溫舊文";s:3:"vun";s:18:"छगाताई";s:3:"chg";s:40:"ძველი ფრანგული";s:3:"fro";s:55:"ძველი ზემოგერმანული";s:3:"goh";s:51:"ძველსკანდინავიური";s:3:"non";s:40:"ძველი სპარსული";s:3:"peo";s:46:"ძველი პროვანსული";s:3:"pro";s:46:"ძველი ირლანდიური";s:3:"sga";}i:242;a:23:{s:46:"ಪ್ರಾಚೀನ ಇಂಗ್ಲೀಷ್";s:3:"ang";s:24:"ಪರ್ಶಿಯನ್";s:2:"fa";s:46:"ಪಶ್ಚಿಮ ಫ್ರಿಸಿಯನ್";s:2:"fy";s:40:"ಪ್ರಾಚೀನ ಗ್ರೀಕ್";s:3:"grc";s:18:"ಪಂಜಾಬಿ";s:2:"pa";s:27:"ಪಂಗಾಸಿನನ್";s:3:"pag";s:21:"ಪಂಪಾಂಗಾ";s:3:"pam";s:30:"ಪಾಪಿಯಮೆಂಟೋ";s:3:"pap";s:12:"ಪಾಲಿ";s:2:"pi";s:18:"ಪೋಲಿಶ್";s:2:"pl";s:18:"ಪಾಷ್ಟೋ";s:2:"ps";s:30:"ಪೋರ್ಚುಗೀಸ್";s:2:"pt";s:52:"ಪ್ರಾಚೀನ ಈಜಿಪ್ಟಿಯನ್";s:3:"egy";s:43:"ಪ್ರಾಚೀನ ಫ್ರೆಂಚ್";s:3:"fro";s:43:"ಪೂರ್ವ ಫ್ರಿಸಿಯನ್";s:3:"frs";s:47:"ಪ್ರಾಚೀನ ಹೈ ಜರ್ಮನ್";s:3:"goh";s:40:"ಪ್ರಾಚೀನ ನೋರ್ಸ್";s:3:"non";s:18:"ಪಹ್ಲವಿ";s:3:"pal";s:18:"ಪಲುಆನ್";s:3:"pau";s:46:"ಪ್ರಾಚೀನ ಪರ್ಶಿಯನ್";s:3:"peo";s:33:"ಪೋನ್‌‌ಪಿಯನ್";s:3:"pon";s:61:"ಪ್ರಾಚೀನ ಪ್ರೊವೆನ್ಶಿಯಲ್";s:3:"pro";s:37:"ಪ್ರಾಚೀನ ಐರಿಷ್";s:3:"sga";}i:256;a:66:{s:13:"고대 영어";s:3:"ang";s:21:"ಸೆಬುಆನೋ";s:3:"ceb";s:43:"ಸೊರಾನಿ ಕುರ್ದಿಷ್";s:3:"ckb";s:44:"ಸ್ವಿಸ್ ಹೈ ಜರ್ಮನ್";s:5:"de-ch";s:28:"고지 독일어 (스위스)";s:5:"de-ch";s:30:"ಸ್ಪ್ಯಾನಿಷ್";s:2:"es";s:49:"ಸ್ಕಾಟಿಶ್ ಗ್ಯಾಲಿಕ್";s:2:"gd";s:9:"고트어";s:3:"got";s:37:"ಸ್ವಿಸ್ ಜರ್ಮನ್";s:3:"gsw";s:22:"고지 소르비아어";s:3:"hsb";s:12:"匈牙利文";s:2:"hu";s:28:"ಸಿಚುಅನ್ ಯಿ";s:2:"ii";s:9:"폰틱어";s:3:"pnt";s:21:"ಸಂಸ್ಕೃತ";s:2:"sa";s:18:"ಸಂತಾಲಿ";s:3:"sat";s:30:"ಸರ್ಡೀನಿಯನ್";s:2:"sc";s:27:"ಸಿಸಿಲಿಯನ್";s:3:"scn";s:24:"ಸ್ಕೋಟ್ಸ್";s:3:"sco";s:15:"ಸಿಂಧಿ";s:2:"sd";s:15:"ಸಾಂಗೋ";s:2:"sg";s:49:"ಸರ್ಬೋ-ಕ್ರೊಯೇಶಿಯನ್";s:2:"sh";s:15:"ಸಿಂಹಳ";s:2:"si";s:24:"ಸ್ಲೋವಾಕ್";s:2:"sk";s:33:"ಸ್ಲೋವೇನಿಯನ್";s:2:"sl";s:18:"ಸಮೋವನ್";s:2:"sm";s:18:"ಸೊಮಾಲಿ";s:2:"so";s:24:"ಸರ್ಬಿಯನ್";s:2:"sr";s:37:"ಸ್ರಾನನ್ ಟೋಂಗೋ";s:3:"srn";s:18:"ಸ್ವಾತಿ";s:2:"ss";s:27:"ಸುಂಡಾನೀಸ್";s:2:"su";s:24:"ಸ್ವೀಡಿಷ್";s:2:"sv";s:21:"ಸ್ವಹಿಲಿ";s:2:"sw";s:18:"ಸ್ವಾನಾ";s:2:"tn";s:15:"ಸೋಂಗಾ";s:2:"ts";s:40:"ಸರಳೀಕೃತ ಚೈನೀಸ್";s:7:"zh-hans";s:52:"ಸಾಂಪ್ರದಾಯಿಕ ಚೈನೀಸ್";s:7:"zh-hant";s:18:"ಸಂಬುರು";s:3:"saq";s:12:"ಸಂಗು";s:3:"sbp";s:9:"ಸೆನ";s:3:"seh";s:31:"ಸ್ಕೋಟ್ ಸಾಮಿ";s:3:"sms";s:9:"ಸೊಗ";s:3:"xog";s:83:"ಸ್ಟ್ಯಾಂಡರ್ಡ್ ಮೊರೊಕ್ಕನ್ ಟಮಜೈಟ್";s:3:"zgh";s:40:"ಸ್ವಿಸ್ ಫ್ರೆಂಚ್";s:5:"fr-ch";s:18:"ಸಿಡಾಮೋ";s:3:"sid";s:24:"ಸಿಕ್ಸಿಕಾ";s:3:"bla";s:18:"ಸ್ಲೇವ್";s:3:"den";s:6:"폰어";s:3:"fon";s:19:"고대 프랑스어";s:3:"fro";s:23:"고대 고지 독일어";s:3:"goh";s:15:"고론탈로어";s:3:"gor";s:22:"고대 페르시아어";s:3:"peo";s:22:"고대 프로방스어";s:3:"pro";s:18:"ಸಂಡಾವೇ";s:3:"sad";s:43:"ಸಮರಿಟನ್ ಅರಾಮಿಕ್";s:3:"sam";s:15:"ಸಸಾಕ್";s:3:"sas";s:21:"ಸೆಲ್ಕಪ್";s:3:"sel";s:21:"ಸೋನಿಂಕೆ";s:3:"snk";s:27:"ಸೋಗ್ಡಿಏನ್";s:3:"sog";s:18:"ಸೇರೇರ್";s:3:"srr";s:18:"ಸುಕುಮಾ";s:3:"suk";s:12:"ಸುಸು";s:3:"sus";s:27:"ಸುಮೇರಿಯನ್";s:3:"sux";s:21:"ಸಿರಿಯಕ್";s:3:"syr";s:24:"ಸಿಂಶಿಯನ್";s:3:"tsi";s:12:"고말라어";s:3:"bbj";s:16:"고아 콘칸어";s:3:"gom";}i:662;a:54:{s:29:"پرون اَنٛگریٖزی";s:3:"ang";s:12:"پارسچە";s:2:"fa";s:12:"پنجابی";s:3:"pnb";s:14:"پَنجٲبۍ";s:2:"pa";s:12:"پنجابي";s:2:"pa";s:16:"پەنجابچە";s:2:"pa";s:22:"پانگاسینانی";s:3:"pag";s:22:"پَنٛگاسِنَن";s:3:"pag";s:24:"پانگاسىنانچە";s:3:"pag";s:20:"پامپانگایی";s:3:"pam";s:18:"پَمپَنٛگا";s:3:"pam";s:20:"پامپانگاچە";s:3:"pam";s:18:"پاپیامنتو";s:3:"pap";s:24:"پَپِیامیٚنٹو";s:3:"pap";s:26:"پاپىيامەنتۇچە";s:3:"pap";s:8:"پالی";s:2:"pi";s:12:"پالىچە";s:2:"pi";s:10:"پالِش";s:2:"pl";s:12:"پولنډي";s:2:"pl";s:14:"پولەكچە";s:2:"pl";s:16:"پولستانی";s:2:"pl";s:16:"پیدمونتی";s:3:"pms";s:8:"پروس";s:3:"prg";s:8:"پښتو";s:2:"ps";s:8:"پشتو";s:2:"ps";s:12:"پَشتوٗ";s:2:"ps";s:14:"پۇشتۇچە";s:2:"ps";s:14:"پرتغالی";s:2:"pt";s:18:"پُرتَگیٖز";s:2:"pt";s:16:"پورتګالي";s:2:"pt";s:20:"پورتۇگالچە";s:2:"pt";s:16:"پُرتگالی";s:2:"pt";s:25:"پرتغالی برزیل";s:5:"pt-br";s:27:"پرتگال (برازيل)";s:5:"pt-br";s:9:"ሶዞኛ";s:2:"st";s:6:"ሶጋ";s:3:"xog";s:25:"پرتغالی اروپا";s:5:"pt-pt";s:29:"پرتګالي (پرتګال)";s:5:"pt-pt";s:21:"پرون فریٚنچ";s:3:"fro";s:28:"پرون ہاے جٔرمَن";s:3:"goh";s:19:"پرون نارسی";s:3:"non";s:10:"پهلوی";s:3:"pal";s:14:"پَہلَوی";s:3:"pal";s:18:"پەھلەۋىچە";s:3:"pal";s:16:"پالائویی";s:3:"pau";s:18:"پَلااُواں";s:3:"pau";s:14:"پالاۋچە";s:3:"pau";s:19:"پرون فارسی";s:3:"peo";s:12:"پانپیی";s:3:"pon";s:18:"پانپیٚیَن";s:3:"pon";s:22:"پوناپېئانچە";s:3:"pon";s:29:"پرووانسی باستان";s:3:"pro";s:29:"پرون پروویٚنچَل";s:3:"pro";s:19:"پرون ایرِش";s:3:"sga";}i:370;a:24:{s:34:"പഴയ ഇംഗ്ലീഷ്";s:3:"ang";s:21:"പേർഷ്യൻ";s:2:"fa";s:43:"പശ്ചിമ ഫ്രിഷിയൻ";s:2:"fy";s:38:"പുരാതന യവന ഭാഷ";s:3:"grc";s:21:"പഞ്ചാബി";s:2:"pa";s:27:"പങ്കാസിനൻ";s:3:"pag";s:18:"പാംപൻഗ";s:3:"pam";s:33:"പാപിയാമെൻറൊ";s:3:"pap";s:12:"പാലി";s:2:"pi";s:18:"പോളിഷ്";s:2:"pl";s:15:"പഷ്തു";s:2:"ps";s:33:"പോർച്ചുഗീസ്";s:2:"pt";s:49:"പ്രാചീന ഈജിപ്ഷ്യൻ";s:3:"egy";s:21:"പലഭാഷകൾ";s:3:"mul";s:31:"പഴയ ഫ്രഞ്ച്";s:3:"fro";s:47:"പ്രാചീന ഉച്ച ജർമൻ";s:3:"goh";s:31:"പഴയ പേർഷ്യൻ";s:3:"non";s:21:"പാഹ്ലവി";s:3:"pal";s:18:"പലാവുൻ";s:3:"pau";s:43:"പ്രാചീന പേർഷ്യൻ";s:3:"peo";s:21:"പൊൻപിയൻ";s:3:"pon";s:27:"പ്രൊവൻഷ്ൽ";s:3:"pro";s:37:"പ്രാചീന ഐറിഷ്";s:3:"sga";s:52:"പുരാതന സുറിയാനിഭാഷ";s:3:"syc";}i:858;a:25:{s:37:"ପୁରୁଣା ଇଁରାଜୀ";s:3:"ang";s:24:"ପର୍ସିଆନ୍";s:2:"fa";s:46:"ପଶ୍ଚିମ ଫ୍ରିସିୟନ୍";s:2:"fy";s:43:"ପ୍ରାଚୀନ୍ ୟୁନାନୀ";s:3:"grc";s:21:"ପଞ୍ଜାବୀ";s:2:"pa";s:39:"ପାଙ୍ଗାସିନିଆନ୍";s:3:"pag";s:30:"ପାମ୍ପାଙ୍ଗା";s:3:"pam";s:36:"ପାପିୟାମିଣ୍ଟୋ";s:3:"pap";s:12:"ପାଲି";s:2:"pi";s:18:"ପୋଲିଶ୍";s:2:"pl";s:18:"ପାସ୍ତୋ";s:2:"ps";s:39:"ପର୍ତ୍ତୁଗ୍ରୀଜ୍";s:2:"pt";s:49:"ପାରମ୍ପରିକ ଚାଇନୀଜ୍";s:7:"zh-hant";s:43:"ପ୍ରାଚୀନ୍ ମିଶିରି";s:3:"egy";s:40:"ପୁରୁଣା ଫ୍ରେଞ୍ଚ";s:3:"fro";s:46:"ପୂର୍ବ ଫ୍ରିସିୟାନ୍";s:3:"frs";s:50:"ପୁରୁଣା ହାଇ ଜର୍ମାନ୍";s:3:"goh";s:31:"ପୁରୁଣା ନର୍ସ";s:3:"non";s:46:"ପାରମ୍ପରିକ ନେୱାରୀ";s:3:"nwc";s:24:"ପାହ୍ଲାଭି";s:3:"pal";s:24:"ପାଲାଉଆନ୍";s:3:"pau";s:43:"ପୁରୁଣା ପର୍ସିଆନ୍";s:3:"peo";s:24:"ପୋହପିଏନ୍";s:3:"pon";s:58:"ପୁରୁଣା ପ୍ରେଭେନେସିଆଲ୍";s:3:"pro";s:34:"ପୁରୁଣା ଇରିଶ୍";s:3:"sga";}i:88;a:63:{s:27:"рагон англисаг";s:3:"ang";s:15:"ఐమారా";s:2:"ay";s:15:"ఐరిష్";s:2:"ga";s:31:"рагон бердзейнаг";s:3:"grc";s:15:"ఐయోకో";s:3:"ilo";s:30:"ఐస్లాండిక్";s:2:"is";s:9:"자바어";s:2:"jv";s:20:"ромањолски";s:3:"rgn";s:12:"рифски";s:3:"rif";s:27:"рэта-раманская";s:2:"rm";s:24:"реторомански";s:2:"rm";s:12:"романш";s:2:"rm";s:16:"романшча";s:2:"rm";s:20:"романшский";s:2:"rm";s:25:"рето-романски";s:2:"rm";s:26:"ретороманська";s:2:"rm";s:10:"рунди";s:2:"rn";s:14:"рундиче";s:2:"rn";s:10:"рунді";s:2:"rn";s:18:"румынская";s:2:"ro";s:16:"румънски";s:2:"ro";s:10:"румын";s:2:"ro";s:14:"румынча";s:2:"ro";s:16:"романски";s:2:"ro";s:18:"румынский";s:2:"ro";s:16:"румунски";s:2:"ro";s:18:"румунська";s:2:"ro";s:14:"русский";s:2:"ru";s:12:"руская";s:2:"ru";s:18:"расейская";s:2:"ru";s:10:"руски";s:2:"ru";s:18:"російська";s:2:"ru";s:20:"русиньскый";s:3:"rue";s:16:"русински";s:3:"rue";s:16:"руандача";s:2:"rw";s:12:"руанда";s:3:"rwk";s:12:"자르마어";s:3:"dje";s:25:"рагон египтаг";s:3:"egy";s:10:"ромбо";s:3:"rof";s:14:"ромбочо";s:3:"rof";s:6:"рва";s:3:"rwk";s:6:"руа";s:3:"rwk";s:10:"руача";s:3:"rwk";s:9:"ఐను";s:3:"ain";s:25:"рагон францаг";s:3:"fro";s:15:"ఐబాన్";s:3:"iba";s:28:"раджастханская";s:3:"raj";s:24:"раджастански";s:3:"raj";s:22:"раџастански";s:3:"raj";s:22:"раджастхани";s:3:"raj";s:22:"раджастхані";s:3:"raj";s:15:"рапа нуи";s:3:"rap";s:20:"рапанујски";s:3:"rap";s:14:"рапануи";s:3:"rap";s:14:"рапануї";s:3:"rap";s:20:"рапотонган";s:3:"rar";s:26:"раротонгански";s:3:"rar";s:28:"раротонганский";s:3:"rar";s:18:"раротонга";s:3:"rar";s:12:"ромски";s:3:"rom";s:9:"자자어";s:3:"zza";s:20:"ротумански";s:3:"rtm";s:20:"ровијански";s:3:"rug";}i:602;a:45:{s:43:"ਪੁਰਾਣੀ ਅੰਗਰੇਜ਼ੀ";s:3:"ang";s:33:"قەدىمكى ئىنگلىزچە";s:3:"ang";s:23:"قىرىم تۈركچە";s:3:"crh";s:33:"قەدىمكى سلاۋيانچە";s:2:"cu";s:40:"ਪੱਛਮੀ ਫ੍ਰਿਸੀਅਨ";s:2:"fy";s:25:"قدیٖم یوٗنٲنی";s:3:"grc";s:37:"ਪੁਰਾਤਨ ਯੂਨਾਨੀ";s:3:"grc";s:29:"قەدىمكى گىرېكچە";s:3:"grc";s:23:"قره‌قالپاقی";s:3:"kaa";s:25:"قارا-قالپاقچە";s:3:"kaa";s:12:"قبایلی";s:3:"kab";s:12:"قبائلی";s:3:"kab";s:10:"قزاقی";s:2:"kk";s:14:"قازاقچە";s:2:"kk";s:8:"قزاخ";s:2:"kk";s:30:"قازاقشا (تٴوتە)‏";s:7:"kk-arab";s:26:"قزاقی (خط عربی)";s:7:"kk-arab";s:30:"قزاقی (خط سریلیک)";s:7:"kk-cyrl";s:30:"قزاقی (خط لاتینی)";s:7:"kk-latn";s:30:"قازاقشا (جۇنگو)‏";s:5:"kk-cn";s:20:"قزافی(چینی)";s:5:"kk-cn";s:29:"قزاقی (قزاقستان)";s:5:"kk-kz";s:23:"قزاقی (ترکیە)";s:5:"kk-tr";s:34:"قره‌چایی‐بالکاری";s:3:"krc";s:31:"قاراچاي-بالقارچە";s:3:"krc";s:12:"قرقیزی";s:2:"ky";s:16:"قىرغىزچە";s:2:"ky";s:18:"ਪੰਜਾਬੀ";s:2:"pa";s:9:"ਪਲੀ";s:2:"pi";s:21:"ਪੋਲੈਂਡੀ";s:2:"pl";s:15:"ਪਸ਼ਤੋ";s:2:"ps";s:24:"ਪੁਰਤਗਾਲੀ";s:2:"pt";s:12:"قلموقی";s:3:"xal";s:16:"قالماقچە";s:3:"xal";s:8:"قبطی";s:3:"cop";s:23:"قدیٖمی مِصری";s:3:"egy";s:34:"ਪੁਰਾਤਨ ਮਿਸਰੀ";s:3:"egy";s:29:"قەدىمكى مىسىرچە";s:3:"egy";s:35:"قەدىمكى فىرانسۇزچە";s:3:"fro";s:48:"قەدىمكى ئېگىزلىك گېرمانچە";s:3:"goh";s:14:"قۇمۇقچە";s:3:"kum";s:31:"قەدىمكى نورۋېگچە";s:3:"non";s:29:"قەدىمكى پارىسچە";s:3:"peo";s:37:"قەدىمكى پروۋېنچالچە";s:3:"pro";s:35:"قەدىمكى ئىرېلاندچە";s:3:"sga";}i:101;a:393:{s:12:"englais vegl";s:3:"ang";s:14:"engleză veche";s:3:"ang";s:15:"eski İngilizce";s:3:"ang";s:35:"эгіпецкая арабская";s:3:"arz";s:22:"egyptian spoken arabic";s:3:"arz";s:13:"egyptinarabia";s:3:"arz";s:19:"egyptescht arabesch";s:3:"arz";s:13:"egipto arabų";s:3:"arz";s:18:"egyptisch arabisch";s:3:"arz";s:15:"egipski arabski";s:3:"arz";s:17:"egyptisk arabiska";s:3:"arz";s:11:"eteläazeri";s:3:"azb";s:23:"eslávicu eclesiásticu";s:2:"cu";s:18:"eslau eclesiàstic";s:2:"cu";s:20:"eslavo eclesiástico";s:2:"cu";s:15:"egyházi szláv";s:2:"cu";s:17:"eastenryks dútsk";s:5:"de-at";s:7:"eʋegbe";s:2:"ee";s:3:"ewe";s:2:"ee";s:3:"eve";s:2:"ee";s:9:"eweština";s:2:"ee";s:4:"ewé";s:2:"ee";s:6:"eweera";s:2:"ee";s:6:"эве";s:2:"ee";s:10:"эбече";s:2:"ee";s:11:"ewe-sprooch";s:2:"ee";s:5:"evių";s:2:"ee";s:3:"evu";s:2:"ee";s:6:"эвэ";s:2:"ee";s:11:"evenščina";s:2:"ee";s:8:"emiliàn";s:3:"egl";s:8:"emilianu";s:3:"egl";s:12:"emilijština";s:3:"egl";s:11:"emilianisch";s:3:"egl";s:7:"emilian";s:3:"egl";s:6:"emilia";s:3:"egl";s:8:"emiliano";s:3:"egl";s:13:"emilijahnesch";s:3:"egl";s:11:"emilianesch";s:3:"egl";s:9:"emilijski";s:3:"egl";s:8:"emiliska";s:3:"egl";s:11:"emilia dili";s:3:"egl";s:20:"emiliàn e rumagnòl";s:3:"eml";s:18:"emiliano-romagnolo";s:3:"eml";s:7:"english";s:2:"en";s:6:"engels";s:2:"en";s:8:"engleski";s:2:"en";s:7:"engelsk";s:2:"en";s:8:"englisch";s:2:"en";s:12:"engelšćina";s:2:"en";s:9:"engeleere";s:2:"en";s:8:"englanti";s:2:"en";s:5:"enskt";s:2:"en";s:5:"enska";s:2:"en";s:8:"englesch";s:2:"en";s:8:"engelsch";s:2:"en";s:7:"englais";s:2:"en";s:8:"engleză";s:2:"en";s:14:"eaŋgalsgiella";s:2:"en";s:8:"engelska";s:2:"en";s:16:"englais canadais";s:5:"en-ca";s:19:"engleză canadiană";s:5:"en-ca";s:17:"englais britannic";s:5:"en-gb";s:19:"engleză britanică";s:5:"en-gb";s:9:"esperanto";s:2:"eo";s:18:"эсперанта";s:2:"eo";s:18:"эспэранта";s:2:"eo";s:10:"esperanteg";s:2:"eo";s:12:"esperantogbe";s:2:"eo";s:10:"esperantoa";s:2:"eo";s:10:"espéranto";s:2:"eo";s:11:"eschperanto";s:2:"eo";s:11:"eszperantó";s:2:"eo";s:10:"esperantó";s:2:"eo";s:18:"эсперанто";s:2:"eo";s:12:"esperantocha";s:2:"eo";s:8:"español";s:2:"es";s:12:"esipaɲolkan";s:2:"es";s:8:"espanyol";s:2:"es";s:10:"espainiera";s:2:"es";s:7:"espanja";s:2:"es";s:8:"espagnol";s:2:"es";s:8:"espaniol";s:2:"es";s:9:"espaniola";s:2:"es";s:15:"စပိန်";s:2:"es";s:8:"espanhol";s:2:"es";s:13:"español simi";s:2:"es";s:9:"espanyöl";s:2:"es";s:5:"eesti";s:2:"et";s:7:"estnies";s:2:"et";s:7:"estoniu";s:2:"et";s:5:"eston";s:2:"et";s:18:"эстонская";s:2:"et";s:7:"estoneg";s:2:"et";s:8:"estonski";s:2:"et";s:8:"estonià";s:2:"et";s:11:"estonština";s:2:"et";s:6:"estisk";s:2:"et";s:8:"estnisch";s:2:"et";s:11:"estišćina";s:2:"et";s:10:"estoniagbe";s:2:"et";s:8:"estonian";s:2:"et";s:6:"estona";s:2:"et";s:7:"estonio";s:2:"et";s:9:"estoniera";s:2:"et";s:10:"estlendskt";s:2:"et";s:8:"estonien";s:2:"et";s:9:"estlânsk";s:2:"et";s:10:"eastóinis";s:2:"et";s:9:"eastoinis";s:2:"et";s:9:"estoniano";s:2:"et";s:9:"eestnisch";s:2:"et";s:4:"esti";s:2:"et";s:9:"eistneska";s:2:"et";s:6:"estone";s:2:"et";s:19:"эстон тілі";s:2:"et";s:14:"estlandimiutut";s:2:"et";s:14:"эстончо";s:2:"et";s:8:"estnesch";s:2:"et";s:5:"estų";s:2:"et";s:12:"эстони";s:2:"et";s:7:"estonia";s:2:"et";s:8:"estonjan";s:2:"et";s:7:"estisch";s:2:"et";s:9:"estoński";s:2:"et";s:8:"estónio";s:2:"et";s:12:"estonio simi";s:2:"et";s:10:"estoniană";s:2:"et";s:18:"эстонский";s:2:"et";s:11:"esttegiella";s:2:"et";s:11:"estónčina";s:2:"et";s:12:"estonščina";s:2:"et";s:9:"estonisht";s:2:"et";s:8:"estniska";s:2:"et";s:7:"estonca";s:2:"et";s:8:"estoncha";s:2:"et";s:7:"euskara";s:2:"eu";s:8:"euskareg";s:2:"eu";s:6:"eŭska";s:2:"eu";s:7:"euskera";s:2:"eu";s:12:"euskera simi";s:2:"eu";s:10:"estremeñu";s:3:"ext";s:16:"extremadurština";s:3:"ext";s:12:"extremadureg";s:3:"ext";s:14:"extremadurisch";s:3:"ext";s:12:"extremaduran";s:3:"ext";s:11:"extremadura";s:3:"ext";s:12:"estrémègne";s:3:"ext";s:10:"estremegno";s:3:"ext";s:14:"extremaduresch";s:3:"ext";s:10:"extremeens";s:3:"ext";s:13:"estremadurski";s:3:"ext";s:17:"ekstremadura dili";s:3:"ext";s:18:"eskoziako gaelikoa";s:2:"gd";s:6:"ebraic";s:2:"he";s:8:"eabhrais";s:2:"he";s:6:"eabhra";s:2:"he";s:7:"ebraico";s:2:"he";s:6:"ebrajk";s:2:"he";s:8:"ebraică";s:2:"he";s:7:"erməni";s:2:"hy";s:8:"ermenice";s:2:"hy";s:11:"endonesiire";s:2:"id";s:11:"enndonezïi";s:2:"id";s:9:"endonezce";s:2:"id";s:28:"စီချွမ် ရီ";s:2:"ii";s:6:"eskima";s:2:"ik";s:39:"eastern canadian (aboriginal syllabics)";s:8:"ike-cans";s:31:"eastern canadian (latin script)";s:8:"ike-latn";s:12:"engjuschesch";s:3:"inh";s:7:"eidaleg";s:2:"it";s:9:"eadailtis";s:2:"it";s:13:"etalljänesch";s:2:"it";s:12:"edebi Çince";s:3:"lzh";s:4:"ebon";s:2:"mh";s:12:"eastern mari";s:3:"mhr";s:12:"эрзянь";s:3:"myv";s:5:"erzya";s:3:"myv";s:10:"erzya dili";s:3:"myv";s:4:"erza";s:3:"myv";s:6:"erzija";s:3:"myv";s:12:"erzjanština";s:3:"myv";s:17:"ersja-mordwinisch";s:3:"myv";s:9:"erziyagbe";s:3:"myv";s:4:"ersa";s:3:"myv";s:5:"ersä";s:3:"myv";s:5:"erzja";s:3:"myv";s:8:"erzjány";s:3:"myv";s:5:"eryza";s:3:"myv";s:5:"ersja";s:3:"myv";s:17:"ersja-mordwinesch";s:3:"myv";s:7:"erzyjų";s:3:"myv";s:5:"erzju";s:3:"myv";s:8:"эрзя";s:3:"myv";s:10:"ersagiella";s:3:"myv";s:11:"erzjančina";s:3:"myv";s:13:"erzjanščina";s:3:"myv";s:5:"erjya";s:3:"myv";s:12:"erromantxera";s:2:"rm";s:11:"errumaniera";s:2:"ro";s:9:"errusiera";s:2:"ru";s:8:"escocès";s:3:"sco";s:8:"escocés";s:3:"sco";s:15:"စကော့";s:3:"sco";s:8:"escocês";s:3:"sco";s:15:"စင်ဒီ";s:2:"sd";s:8:"eslovacu";s:2:"sk";s:7:"eslovac";s:2:"sk";s:8:"eslovaco";s:2:"sk";s:11:"eslovakiera";s:2:"sk";s:21:"စလိုဗက်";s:2:"sk";s:13:"eslovaco simi";s:2:"sk";s:8:"eslovenu";s:2:"sl";s:7:"eslovè";s:2:"sl";s:8:"esloveno";s:2:"sl";s:11:"esloveniera";s:2:"sl";s:42:"စလိုဗေးနီးယမ်း";s:2:"sl";s:13:"esloveno simi";s:2:"sl";s:11:"eteläsaame";s:3:"sma";s:11:"eteläsotho";s:2:"st";s:23:"egyszerűsített kínai";s:7:"zh-hans";s:4:"embu";s:3:"ebu";s:5:"embú";s:3:"ebu";s:4:"embw";s:3:"ebu";s:7:"embugbe";s:3:"ebu";s:5:"embua";s:3:"ebu";s:5:"embou";s:3:"ebu";s:12:"эмбуча";s:3:"ebu";s:8:"эмбу";s:3:"ebu";s:12:"embujščina";s:3:"ebu";s:8:"embuisht";s:3:"ebu";s:7:"embucha";s:3:"ebu";s:4:"efik";s:3:"efi";s:9:"efik dili";s:3:"efi";s:7:"efikski";s:3:"efi";s:10:"efikština";s:3:"efi";s:6:"efigbe";s:3:"efi";s:5:"efiki";s:3:"efi";s:7:"efikera";s:3:"efi";s:8:"efikisch";s:3:"efi";s:5:"efík";s:3:"efi";s:8:"эфик";s:3:"efi";s:5:"efiku";s:3:"efi";s:6:"efique";s:3:"efi";s:10:"efiščina";s:3:"efi";s:15:"exipciu antiguu";s:3:"egy";s:12:"egipci antic";s:3:"egy";s:18:"egyptština stará";s:3:"egy";s:15:"egipcio antiguo";s:3:"egy";s:14:"exipcio antigo";s:3:"egy";s:15:"egiziano antico";s:3:"egy";s:9:"egyptesch";s:3:"egy";s:17:"eġizzjan (antik)";s:3:"egy";s:18:"egípcio clássico";s:3:"egy";s:16:"egípcio arcaico";s:3:"egy";s:13:"egipzian vegl";s:3:"egy";s:16:"egipteană veche";s:3:"egy";s:17:"eski mısır dili";s:3:"egy";s:7:"ettitic";s:3:"hit";s:4:"enko";s:3:"nqo";s:14:"etelä-ndebele";s:2:"nr";s:12:"စီနာ";s:3:"seh";s:11:"enaresamisk";s:3:"smn";s:13:"enaresamíska";s:3:"smn";s:12:"enaresamiska";s:3:"smn";s:10:"e panjohur";s:3:"und";s:30:"ensin conteníu llingüísticu";s:3:"zxx";s:28:"ez dago eduki linguistikorik";s:3:"zxx";s:27:"ei kielellistä sisältöä";s:3:"zxx";s:21:"ekkert tungumálaefni";s:3:"zxx";s:18:"englais australian";s:5:"en-au";s:21:"engleză australiană";s:5:"en-au";s:20:"engelsk (amerikansk)";s:5:"en-us";s:16:"englais american";s:5:"en-us";s:19:"engleză americană";s:5:"en-us";s:14:"engleski (sad)";s:5:"en-us";s:24:"espanyol hispanoamericà";s:6:"es-419";s:20:"español de américa";s:6:"es-419";s:26:"espagnol latino-américain";s:6:"es-419";s:24:"español latinoamericano";s:6:"es-419";s:25:"espanhol latino-americano";s:6:"es-419";s:17:"evropski španski";s:5:"es-es";s:16:"espanyol europeu";s:5:"es-es";s:17:"europæisk spansk";s:5:"es-es";s:22:"europäisches spanisch";s:5:"es-es";s:24:"europejska špańšćina";s:5:"es-es";s:16:"european spanish";s:5:"es-es";s:15:"eŭropa hispana";s:5:"es-es";s:19:"español de españa";s:5:"es-es";s:19:"espainiera (europa)";s:5:"es-es";s:15:"espanjanespanja";s:5:"es-es";s:19:"espagnol d’europe";s:5:"es-es";s:17:"europeesk spaansk";s:5:"es-es";s:20:"europski španjolski";s:5:"es-es";s:22:"europska španišćina";s:5:"es-es";s:16:"európai spanyol";s:5:"es-es";s:17:"evrópsk spænska";s:5:"es-es";s:22:"europäescht spuenesch";s:5:"es-es";s:15:"europos ispanų";s:5:"es-es";s:15:"eiropas spāņu";s:5:"es-es";s:32:"စပိန်(ဥရောပ)";s:5:"es-es";s:16:"europeisk spansk";s:5:"es-es";s:15:"europees spaans";s:5:"es-es";s:22:"europejski hiszpański";s:5:"es-es";s:16:"espanhol europeu";s:5:"es-es";s:17:"europeisk spanska";s:5:"es-es";s:8:"etioopia";s:3:"gez";s:11:"etiópčina";s:3:"gez";s:12:"etiopščina";s:3:"gez";s:9:"etiopiska";s:3:"gez";s:22:"europæisk portugisisk";s:5:"pt-pt";s:27:"europäisches portugiesisch";s:5:"pt-pt";s:26:"europejska portugalšćina";s:5:"pt-pt";s:19:"european portuguese";s:5:"pt-pt";s:15:"eŭropportugala";s:5:"pt-pt";s:18:"europees portugees";s:5:"pt-pt";s:20:"europski portugalski";s:5:"pt-pt";s:24:"europska portugalšćina";s:5:"pt-pt";s:18:"európai portugál";s:5:"pt-pt";s:21:"evrópsk portúgalska";s:5:"pt-pt";s:25:"europäescht portugisesch";s:5:"pt-pt";s:18:"europos portugalų";s:5:"pt-pt";s:19:"eiropas portugāļu";s:5:"pt-pt";s:21:"europeisk portugisisk";s:5:"pt-pt";s:22:"europejski portugalski";s:5:"pt-pt";s:22:"europeisk portugisiska";s:5:"pt-pt";s:3:"edo";s:3:"bin";s:6:"ekajuk";s:3:"eka";s:11:"ekacuk dili";s:3:"eka";s:9:"ekadžuki";s:3:"eka";s:8:"ekadzsuk";s:3:"eka";s:7:"ekajúk";s:3:"eka";s:7:"ekajuka";s:3:"eka";s:9:"ekadžuku";s:3:"eka";s:14:"экаджук";s:3:"eka";s:8:"ekadžuk";s:3:"eka";s:7:"elamita";s:3:"elx";s:11:"elamit dili";s:3:"elx";s:6:"elameg";s:3:"elx";s:9:"elamitski";s:3:"elx";s:12:"elamitština";s:3:"elx";s:9:"elamitisk";s:3:"elx";s:8:"elamisch";s:3:"elx";s:7:"elamite";s:3:"elx";s:6:"eelami";s:3:"elx";s:5:"elami";s:3:"elx";s:9:"elamitysk";s:3:"elx";s:7:"elamais";s:3:"elx";s:6:"elamit";s:3:"elx";s:4:"elam";s:3:"elx";s:7:"elamít";s:3:"elx";s:9:"elamitico";s:3:"elx";s:8:"elamesch";s:3:"elx";s:8:"elamitų";s:3:"elx";s:9:"elamiešu";s:3:"elx";s:10:"elamittisk";s:3:"elx";s:8:"elaamsch";s:3:"elx";s:10:"elamitisch";s:3:"elx";s:8:"elamicki";s:3:"elx";s:8:"elamitic";s:3:"elx";s:8:"elamită";s:3:"elx";s:16:"эламский";s:3:"elx";s:9:"elamčina";s:3:"elx";s:11:"elamščina";s:3:"elx";s:10:"elamitiska";s:3:"elx";s:17:"engleski, srednji";s:3:"enm";s:14:"englais mesaun";s:3:"enm";s:17:"engleză mijlocie";s:3:"enm";s:6:"ewondo";s:3:"ewo";s:11:"evondo dili";s:3:"ewo";s:6:"evondo";s:3:"ewo";s:9:"ewondogbe";s:3:"ewo";s:7:"evondó";s:3:"ewo";s:6:"evondu";s:3:"ewo";s:12:"эвондо";s:3:"ewo";s:14:"evondovščina";s:3:"ewo";s:15:"eski fransızca";s:3:"fro";s:15:"eastern frisian";s:3:"frs";s:10:"east-frysk";s:3:"frs";s:20:"eski yüksek almanca";s:3:"goh";s:10:"eski norse";s:3:"non";s:12:"eski farsça";s:3:"peo";s:14:"eski provensal";s:3:"pro";s:15:"eski İrlandaca";s:3:"sga";s:12:"elliceanisch";s:3:"tvl";s:12:"elliceanesch";s:3:"tvl";s:12:"elliceaansch";s:3:"tvl";s:19:"español de méxico";s:5:"es-mx";s:18:"espanyol de mèxic";s:5:"es-mx";s:17:"espagnol mexicain";s:5:"es-mx";s:19:"espanhol do méxico";s:5:"es-mx";s:17:"espanhol mexicano";s:5:"es-mx";s:15:"eastern yiddish";s:3:"ydd";}i:57;a:42:{s:26:"Староенглески";s:3:"ang";s:28:"Старословенски";s:2:"cu";s:33:"Северно-фризијски";s:3:"frr";s:37:"Солтүстік Шотландия";s:2:"gd";s:20:"Старогрчки";s:3:"grc";s:29:"Солтүстік сотхо";s:3:"nso";s:23:"Северни сото";s:3:"nso";s:14:"Сантали";s:3:"sat";s:20:"Сардињаски";s:2:"sc";s:24:"Сицилијански";s:3:"scn";s:28:"Српскохрватски";s:2:"sh";s:20:"Словаактыы";s:2:"sk";s:18:"Самоански";s:2:"sm";s:29:"Сранански тонго";s:3:"srn";s:10:"Свати";s:2:"ss";s:12:"Сесото";s:2:"st";s:28:"Староегипатски";s:3:"egy";s:12:"Сидамо";s:3:"sid";s:12:"Сисика";s:3:"bla";s:14:"Славски";s:3:"den";s:31:"Средњи холандски";s:3:"dum";s:29:"Средњи енглески";s:3:"enm";s:31:"Средњи француски";s:3:"frm";s:28:"Старофранцуски";s:3:"fro";s:40:"Средњи високи немачки";s:3:"gmh";s:24:"Старонемачки";s:3:"goh";s:23:"Средњи ирски";s:3:"mga";s:23:"Стари норски";s:3:"non";s:28:"Староперсијски";s:3:"peo";s:34:"Старопровансалски";s:3:"pro";s:14:"Сандаве";s:3:"sad";s:43:"Самаритански арамејски";s:3:"sam";s:10:"Сасак";s:3:"sas";s:12:"Селкап";s:3:"sel";s:20:"Староирски";s:3:"sga";s:14:"Сонинке";s:3:"snk";s:20:"Соџијенски";s:3:"sog";s:10:"Серер";s:3:"srr";s:12:"Сукума";s:3:"suk";s:8:"Сусу";s:3:"sus";s:16:"Сумерски";s:3:"sux";s:16:"Сиријски";s:3:"syr";}i:986;a:59:{s:37:"பழைய ஆங்கிலம்";s:3:"ang";s:24:"பாஷ்கிர்";s:2:"ba";s:33:"பெலாருஷியன்";s:2:"be";s:30:"பல்கேரியன்";s:2:"bg";s:24:"போஜ்பூரி";s:3:"bho";s:24:"பிஸ்லாமா";s:2:"bi";s:21:"பம்பாரா";s:2:"bm";s:42:"பிஷ்ணுப்பிரியா";s:3:"bpy";s:27:"பிரெட்டன்";s:2:"br";s:27:"போஸ்னியன்";s:2:"bs";s:24:"புகினீஸ்";s:3:"bug";s:18:"பூடானி";s:2:"dz";s:55:"பிரிட்டிஷ் ஆங்கிலம்";s:5:"en-gb";s:15:"பஸ்க்";s:2:"eu";s:27:"பெர்ஷியன்";s:2:"fa";s:24:"பிரெஞ்சு";s:2:"fr";s:46:"பண்டைய கிரேக்கம்";s:3:"grc";s:28:"பிஜி இந்தி";s:3:"hif";s:21:"பர்மிஸ்";s:2:"my";s:21:"பஞ்சாபி";s:2:"pa";s:30:"பன்காசினன்";s:3:"pag";s:27:"பம்பாங்கா";s:3:"pam";s:33:"பபியேமென்டோ";s:3:"pap";s:61:"பென்சில்வேனிய ஜெர்மன்";s:3:"pdc";s:12:"பாலி";s:2:"pi";s:18:"போலிஷ்";s:2:"pl";s:15:"பஷ்தோ";s:2:"ps";s:42:"போர்ச்சுக்கீஸ்";s:2:"pt";s:63:"போர்ச்சுகீஸ் (பிரேசில்)";s:5:"pt-br";s:43:"பாரம்பரிய சீனம்";s:7:"zh-hant";s:18:"பெம்பா";s:3:"bem";s:12:"பெனா";s:3:"bez";s:12:"போடோ";s:3:"brx";s:49:"பண்டைய எகிப்தியன்";s:3:"egy";s:21:"பாஃபியா";s:3:"ksf";s:28:"பல மொழிகள்";s:3:"mul";s:24:"பிலெமிஷ்";s:5:"nl-be";s:18:"ப்லின்";s:3:"byn";s:18:"பெலுசி";s:3:"bal";s:21:"பலினீஸ்";s:3:"ban";s:12:"பாஸா";s:3:"bas";s:12:"பேஜா";s:3:"bej";s:18:"பிகோல்";s:3:"bik";s:12:"பினி";s:3:"bin";s:18:"ப்ராஜ்";s:3:"bra";s:24:"புரியாத்";s:3:"bua";s:40:"பழைய ஃப்ரென்ச்";s:3:"fro";s:9:"பயா";s:3:"gba";s:41:"பழைய ஹை ஜெர்மன்";s:3:"goh";s:31:"பழைய நோர்ஸ்";s:3:"non";s:46:"பாரம்பரிய நேவாரி";s:3:"nwc";s:21:"பாஹ்லவி";s:3:"pal";s:21:"பலௌவ்ன்";s:3:"pau";s:40:"பழைய பெர்ஷியன்";s:3:"peo";s:49:"பழைய ப்ரோவென்சால்";s:3:"pro";s:28:"பழைய ஐரிஷ்";s:3:"sga";s:52:"பாரம்பரிய சிரியாக்";s:3:"syc";s:48:"ப்லிஸ்ஸிம்பால்ஸ்";s:3:"zbl";s:12:"படகா";s:3:"bfq";}i:114;a:355:{s:37:"ప్రాచీన ఆగ్లం";s:3:"ang";s:9:"昂加文";s:3:"anp";s:24:"ဒိန်းမတ်";s:2:"da";s:18:"ဒွန်ကာ";s:2:"dz";s:24:"పర్షియన్";s:2:"fa";s:6:"ranska";s:2:"fr";s:12:"rietumfrīzu";s:2:"fy";s:46:"పశ్చిమ ఫ్రిసియన్";s:2:"fy";s:40:"ప్రాచీన గ్రీక్";s:3:"grc";s:10:"ripoarisch";s:3:"ksh";s:13:"rotse-sprache";s:3:"loz";s:15:"rotse-schpraach";s:3:"loz";s:13:"rotse-sprooch";s:3:"loz";s:5:"rotse";s:3:"loz";s:18:"ဒတ်ချ်";s:2:"nl";s:10:"њанџа";s:2:"ny";s:18:"పంజాబీ";s:2:"pa";s:31:"పంగా సినాన్";s:3:"pag";s:18:"పంపగ్న";s:3:"pam";s:27:"పపియమేంటో";s:3:"pap";s:12:"పాలీ";s:2:"pi";s:18:"పోలిష్";s:2:"pl";s:18:"పాష్టో";s:2:"ps";s:30:"పోర్చుగీస్";s:2:"pt";s:9:"runa simi";s:2:"qu";s:8:"runasimi";s:2:"qu";s:10:"runa shimi";s:3:"qug";s:9:"rumagnôl";s:3:"rgn";s:8:"romañol";s:3:"rgn";s:10:"romagnoleg";s:3:"rgn";s:14:"romaňolština";s:3:"rgn";s:8:"romagnol";s:3:"rgn";s:9:"romagnoli";s:3:"rgn";s:9:"romagnolo";s:3:"rgn";s:10:"romanyolca";s:3:"rgn";s:7:"rifianu";s:3:"rif";s:10:"rífština";s:3:"rif";s:7:"riffian";s:3:"rif";s:7:"riffain";s:3:"rif";s:5:"rifų";s:3:"rif";s:8:"riffijns";s:3:"rif";s:10:"riffianska";s:3:"rif";s:15:"rif berbericesi";s:3:"rif";s:9:"rumantsch";s:2:"rm";s:12:"reto-romaans";s:2:"rm";s:8:"romanche";s:2:"rm";s:9:"retoroman";s:2:"rm";s:10:"romañcheg";s:2:"rm";s:13:"reto-romanski";s:2:"rm";s:12:"retoromànic";s:2:"rm";s:17:"rétorománština";s:2:"rm";s:9:"romaunsch";s:2:"rm";s:12:"rætoromansk";s:2:"rm";s:14:"rätoromanisch";s:2:"rm";s:17:"retoromańšćina";s:2:"rm";s:10:"romanshgbe";s:2:"rm";s:7:"romansh";s:2:"rm";s:8:"romanĉa";s:2:"rm";s:14:"retorrománico";s:2:"rm";s:11:"retoromaani";s:2:"rm";s:7:"rumanç";s:2:"rm";s:13:"reto-romaansk";s:2:"rm";s:9:"rómainis";s:2:"rm";s:7:"rumains";s:2:"rm";s:7:"romanš";s:2:"rm";s:16:"retoromanšćina";s:2:"rm";s:12:"réto-román";s:2:"rm";s:10:"reto-roman";s:2:"rm";s:9:"rómanska";s:2:"rm";s:8:"romancio";s:2:"rm";s:15:"rätoromaanesch";s:2:"rm";s:14:"rätoromanesch";s:2:"rm";s:11:"retoromanų";s:2:"rm";s:12:"retoromāņu";s:2:"rm";s:11:"reto-romanz";s:2:"rm";s:11:"retoromansk";s:2:"rm";s:14:"rätoromaansch";s:2:"rm";s:13:"retoromański";s:2:"rm";s:13:"romanche simi";s:2:"rm";s:9:"romanșă";s:2:"rm";s:13:"romanšgiella";s:2:"rm";s:16:"rétorománčina";s:2:"rm";s:16:"retoromanščina";s:2:"rm";s:4:"rome";s:2:"rm";s:13:"rätoromanska";s:2:"rm";s:10:"romanşça";s:2:"rm";s:8:"romancha";s:2:"rm";s:6:"romani";s:3:"rom";s:5:"rundi";s:2:"rn";s:5:"rwndi";s:2:"rn";s:13:"rundi-sprache";s:2:"rn";s:8:"rundigbe";s:2:"rn";s:8:"rundiera";s:2:"rn";s:6:"roundi";s:2:"rn";s:8:"rúindis";s:2:"rn";s:15:"rundi-schpraach";s:2:"rn";s:7:"rúndí";s:2:"rn";s:13:"rundi-sprooch";s:2:"rn";s:5:"rundu";s:2:"rn";s:11:"rundščina";s:2:"rn";s:8:"rundisht";s:2:"rn";s:7:"rundcha";s:2:"rn";s:8:"română";s:2:"ro";s:8:"roemeens";s:2:"ro";s:12:"romenia kasa";s:2:"ro";s:6:"rumanu";s:2:"ro";s:6:"rumın";s:2:"ro";s:9:"rumanikan";s:2:"ro";s:8:"roumaneg";s:2:"ro";s:8:"rumunski";s:2:"ro";s:8:"romanès";s:2:"ro";s:11:"rumunština";s:2:"ro";s:7:"rwmaneg";s:2:"ro";s:8:"rumænsk";s:2:"ro";s:10:"rumänisch";s:2:"ro";s:12:"rumunšćina";s:2:"ro";s:10:"romaniagbe";s:2:"ro";s:8:"romanian";s:2:"ro";s:6:"rumana";s:2:"ro";s:6:"rumano";s:2:"ro";s:8:"rumeenia";s:2:"ro";s:9:"romaneere";s:2:"ro";s:7:"romania";s:2:"ro";s:8:"romanskt";s:2:"ro";s:7:"roumain";s:2:"ro";s:5:"romen";s:2:"ro";s:9:"roemeensk";s:2:"ro";s:10:"rómáinis";s:2:"ro";s:9:"romàinis";s:2:"ro";s:8:"romanés";s:2:"ro";s:11:"romaniyanci";s:2:"ro";s:9:"rumunjski";s:2:"ro";s:6:"román";s:2:"ro";s:9:"romaniano";s:2:"ro";s:7:"rumania";s:2:"ro";s:7:"rumenia";s:2:"ro";s:9:"rúmenska";s:2:"ro";s:6:"rumeno";s:2:"ro";s:13:"rumænimiutut";s:2:"ro";s:10:"rumänesch";s:2:"ro";s:7:"rumunų";s:2:"ro";s:8:"rumāņu";s:2:"ro";s:11:"romanianina";s:2:"ro";s:5:"rumen";s:2:"ro";s:7:"rumensk";s:2:"ro";s:11:"rumäänsch";s:2:"ro";s:9:"rumuński";s:2:"ro";s:6:"romeno";s:2:"ro";s:11:"rumano simi";s:2:"ro";s:14:"romániagiella";s:2:"ro";s:7:"rumëen";s:2:"ro";s:10:"rumunčina";s:2:"ro";s:12:"romunščina";s:2:"ro";s:7:"romanka";s:2:"ro";s:9:"rumanisht";s:2:"ro";s:9:"rumänska";s:2:"ro";s:7:"romence";s:2:"ro";s:8:"rumincha";s:2:"ro";s:7:"russies";s:2:"ru";s:11:"rahyia kasa";s:2:"ru";s:4:"rusu";s:2:"ru";s:3:"rus";s:2:"ru";s:8:"rusianeg";s:2:"ru";s:5:"ruski";s:2:"ru";s:8:"ruština";s:2:"ru";s:5:"rwseg";s:2:"ru";s:7:"russisk";s:2:"ru";s:8:"russisch";s:2:"ru";s:9:"rušćina";s:2:"ru";s:10:"rɔtsiagbe";s:2:"ru";s:7:"russian";s:2:"ru";s:4:"rusa";s:2:"ru";s:4:"ruso";s:2:"ru";s:4:"riis";s:2:"ru";s:8:"russiskt";s:2:"ru";s:5:"russe";s:2:"ru";s:7:"russysk";s:2:"ru";s:7:"rúisis";s:2:"ru";s:6:"ruisis";s:2:"ru";s:8:"rashanci";s:2:"ru";s:5:"russo";s:2:"ru";s:5:"rusia";s:2:"ru";s:8:"rọshan";s:2:"ru";s:10:"rússneska";s:2:"ru";s:8:"russisut";s:2:"ru";s:10:"rußßesch";s:2:"ru";s:6:"russek";s:2:"ru";s:8:"russesch";s:2:"ru";s:5:"rusų";s:2:"ru";s:9:"rosianina";s:2:"ru";s:5:"russu";s:2:"ru";s:10:"russ’sch";s:2:"ru";s:8:"rosyjski";s:2:"ru";s:9:"ruso simi";s:2:"ru";s:4:"russ";s:2:"ru";s:5:"rusă";s:2:"ru";s:14:"ruoššagiella";s:2:"ru";s:5:"rûsi";s:2:"ru";s:9:"ruščina";s:2:"ru";s:5:"ruush";s:2:"ru";s:7:"rusisht";s:2:"ru";s:5:"ryska";s:2:"ru";s:6:"rusça";s:2:"ru";s:6:"ruscha";s:2:"ru";s:11:"rusänapük";s:2:"ru";s:5:"rusyn";s:3:"rue";s:12:"rusínština";s:3:"rue";s:10:"russinisch";s:3:"rue";s:7:"ruteeni";s:3:"rue";s:8:"ruthène";s:3:"rue";s:6:"ruteno";s:3:"rue";s:10:"russinesch";s:3:"rue";s:7:"rusinų";s:3:"rue";s:9:"roetheens";s:3:"rue";s:9:"rusiński";s:3:"rue";s:7:"rusince";s:3:"rue";s:8:"rwandees";s:2:"rw";s:12:"rewanda kasa";s:2:"rw";s:2:"rw";s:2:"rw";s:10:"ruwandakan";s:2:"rw";s:8:"ruandès";s:2:"rw";s:9:"ruandisch";s:2:"rw";s:10:"ruwandagbe";s:2:"rw";s:6:"ruanda";s:3:"rwk";s:12:"ruwaanndeere";s:2:"rw";s:6:"rwanda";s:2:"rw";s:8:"ruandés";s:2:"rw";s:9:"rụwanda";s:2:"rw";s:9:"ruandesch";s:2:"rw";s:6:"roande";s:2:"rw";s:8:"ruandsch";s:2:"rw";s:8:"ruandäa";s:2:"rw";s:12:"ruandščina";s:2:"rw";s:6:"rootsi";s:2:"sv";s:6:"ruotsi";s:2:"sv";s:12:"ruoŧagiella";s:2:"sv";s:10:"reo tahiti";s:2:"ty";s:6:"rukiga";s:3:"cgg";s:15:"ဒူအလာ";s:3:"dua";s:52:"ప్రాచీన ఇజిప్షియన్";s:3:"egy";s:14:"њанколе";s:3:"nyn";s:16:"romanés moldavo";s:5:"ro-md";s:5:"rombo";s:3:"rof";s:8:"rombogbe";s:3:"rof";s:8:"romboera";s:3:"rof";s:6:"rombó";s:3:"rof";s:10:"romboishte";s:3:"rof";s:8:"rombacha";s:3:"rof";s:3:"rwa";s:3:"rwk";s:3:"rua";s:3:"rwk";s:3:"rwo";s:3:"rwk";s:6:"rwagbe";s:3:"rwk";s:6:"rwaera";s:3:"rwk";s:4:"rúa";s:3:"rwk";s:7:"ruaisht";s:3:"rwk";s:3:"rwk";s:3:"rwk";s:8:"ruandcha";s:3:"rwk";s:71:"ప్రామాణిక మొరొకన్ తమజియట్";s:3:"zgh";s:25:"rómanskamerísk spænska";s:6:"es-419";s:21:"ဒါကိုတာ";s:3:"dak";s:18:"ဒီလာဝဲ";s:3:"del";s:43:"ప్రాచీన ప్రెంచ్";s:3:"fro";s:12:"rytų fryzų";s:3:"frs";s:47:"ప్రాచీన హై జర్మన్";s:3:"goh";s:18:"పెల్లే";s:3:"kpe";s:40:"ప్రాచిన నోర్స్";s:3:"non";s:14:"њамвези";s:3:"nym";s:8:"њоро";s:3:"nyo";s:21:"పహ్లావి";s:3:"pal";s:21:"పాలుఆన్";s:3:"pau";s:46:"ప్రాచీన పర్షియన్";s:3:"peo";s:33:"పోహ్న్పెయన్";s:3:"pon";s:55:"ప్రాచీన ప్రోవెంసాల్";s:3:"pro";s:12:"rajasthanín";s:3:"raj";s:13:"racastan dili";s:3:"raj";s:10:"rajasthani";s:3:"raj";s:10:"rađastani";s:3:"raj";s:18:"rádžastánština";s:3:"raj";s:11:"rajasthaneg";s:3:"raj";s:11:"radžastani";s:3:"raj";s:13:"radzsasztáni";s:3:"raj";s:10:"rajastaní";s:3:"raj";s:11:"radžastano";s:3:"raj";s:13:"radžastāņu";s:3:"raj";s:10:"raġastani";s:3:"raj";s:12:"radźasthani";s:3:"raj";s:9:"rajastani";s:3:"raj";s:15:"radžastančina";s:3:"raj";s:17:"radžastanščina";s:3:"raj";s:11:"rapanu dili";s:3:"rap";s:7:"rapanui";s:3:"rap";s:13:"rapanujština";s:3:"rap";s:8:"rapanŵi";s:3:"rap";s:8:"rapa nui";s:3:"rap";s:9:"rapanúí";s:3:"rap";s:8:"rapanuju";s:3:"rap";s:7:"rapanwi";s:3:"rap";s:12:"rapanujčina";s:3:"rap";s:14:"rapanujščina";s:3:"rap";s:15:"rarotonqan dili";s:3:"rar";s:9:"rarotonga";s:3:"rar";s:10:"rarotongan";s:3:"rar";s:10:"rarotongà";s:3:"rar";s:17:"rarotongánština";s:3:"rar";s:10:"raratongeg";s:3:"rar";s:14:"rarotonganisch";s:3:"rar";s:11:"rarotongano";s:3:"rar";s:11:"rarotongien";s:3:"rar";s:11:"rarotonški";s:3:"rar";s:10:"rarotongai";s:3:"rar";s:12:"rarótongska";s:3:"rar";s:14:"rarotonganesch";s:3:"rar";s:13:"rarotongiešu";s:3:"rar";s:11:"rarotongani";s:3:"rar";s:12:"rarotongansk";s:3:"rar";s:14:"rarotongaansch";s:3:"rar";s:15:"rarotongščina";s:3:"rar";s:13:"rarotonganska";s:3:"rar";s:7:"romaní";s:3:"rom";s:10:"roman dili";s:3:"rom";s:8:"romanieg";s:3:"rom";s:9:"romština";s:3:"rom";s:6:"romany";s:3:"rom";s:8:"romainis";s:3:"rom";s:8:"romanais";s:3:"rom";s:6:"romski";s:3:"rom";s:4:"roma";s:3:"rom";s:5:"romų";s:3:"rom";s:8:"romanês";s:3:"rom";s:9:"rómčina";s:3:"rom";s:10:"romščina";s:3:"rom";s:7:"romanca";s:3:"rom";s:37:"ప్రాచీన ఐరిష్";s:3:"sga";s:19:"њаса тонга";s:3:"tog";s:8:"rotumanu";s:3:"rtm";s:13:"rotumanština";s:3:"rtm";s:9:"rotumaneg";s:3:"rtm";s:11:"rotumanisch";s:3:"rtm";s:7:"rotuman";s:3:"rtm";s:6:"rotuma";s:3:"rtm";s:8:"rotumano";s:3:"rtm";s:11:"rotumanesch";s:3:"rtm";s:9:"rotumanų";s:3:"rtm";s:9:"rotumaans";s:3:"rtm";s:11:"rotumański";s:3:"rtm";s:11:"rotumänska";s:3:"rtm";s:12:"rovianština";s:3:"rug";s:7:"roviana";s:3:"rug";s:8:"rovianos";s:3:"rug";s:9:"rovianska";s:3:"rug";s:14:"њенгату";s:3:"yrl";s:12:"razni jezici";s:3:"mis";s:18:"romaansche spraken";s:3:"roa";s:14:"romanski jezik";s:3:"roa";s:3:"run";s:4:"root";}i:76;a:84:{s:32:"давньоанглійська";s:3:"ang";s:15:"코르시카어";s:2:"co";s:12:"дацкая";s:2:"da";s:12:"датски";s:2:"da";s:6:"дат";s:2:"da";s:10:"датча";s:2:"da";s:12:"дански";s:2:"da";s:8:"дани";s:2:"da";s:12:"даниаг";s:2:"da";s:14:"датский";s:2:"da";s:14:"данська";s:2:"da";s:24:"долнолужишки";s:3:"dsb";s:24:"долнолужички";s:3:"dsb";s:35:"доњи лужичкосрпски";s:3:"dsb";s:16:"дусунски";s:3:"dtp";s:12:"дивехи";s:2:"dv";s:12:"дівехі";s:2:"dv";s:12:"дзонха";s:2:"dz";s:15:"дзонг-кэ";s:2:"dz";s:15:"дзонг-ке";s:2:"dz";s:9:"希腊文";s:2:"el";s:9:"希臘文";s:2:"el";s:24:"древногръцки";s:3:"grc";s:30:"древнегреческий";s:3:"grc";s:26:"давньогрецька";s:3:"grc";s:12:"希伯来文";s:2:"he";s:12:"希伯來文";s:2:"he";s:15:"希利盖农文";s:3:"hil";s:15:"希利蓋農文";s:3:"hil";s:15:"希里莫图文";s:2:"ho";s:19:"дээд сорби";s:3:"hsb";s:12:"코와르어";s:3:"khw";s:21:"코미페르먀크어";s:3:"koi";s:9:"코미어";s:2:"kv";s:28:"долносаксонски";s:3:"nds";s:28:"долногермански";s:3:"nds";s:12:"希尔哈文";s:3:"shi";s:12:"希爾哈文";s:3:"shi";s:26:"долношлезиски";s:3:"sli";s:9:"코사어";s:2:"xh";s:36:"дәстүрлі қытай тілі";s:7:"zh-hant";s:12:"джерма";s:3:"dje";s:10:"дуала";s:3:"dua";s:14:"дуалача";s:3:"dua";s:10:"диола";s:3:"dyo";s:21:"дьола-фоньи";s:3:"dyo";s:19:"дьола-фоні";s:3:"dyo";s:32:"древнеегипетский";s:3:"egy";s:32:"давньоєгипетська";s:3:"egy";s:19:"코이라 친니어";s:3:"khq";s:12:"코카니어";s:3:"kok";s:23:"декілька мов";s:3:"mul";s:25:"코이야보로 세니어";s:3:"ses";s:12:"코모로어";s:3:"swb";s:12:"希達摩文";s:3:"sid";s:16:"дакотски";s:3:"dak";s:12:"дакота";s:3:"dak";s:12:"даргва";s:3:"dar";s:20:"даргінська";s:3:"dar";s:14:"делауер";s:3:"del";s:14:"делавер";s:3:"del";s:22:"делаварский";s:3:"del";s:22:"делаварська";s:3:"del";s:12:"догриб";s:3:"dgr";s:18:"догрипски";s:3:"dgr";s:20:"догрибська";s:3:"dgr";s:10:"динка";s:3:"din";s:10:"дінка";s:3:"din";s:10:"догри";s:3:"doi";s:10:"догрі";s:3:"doi";s:10:"диула";s:3:"dyu";s:23:"диула (дьюла)";s:3:"dyu";s:10:"діула";s:3:"dyu";s:12:"дазага";s:3:"dzg";s:18:"дазагский";s:3:"dzg";s:32:"давньофранцузька";s:3:"fro";s:40:"древневерхненемецкий";s:3:"goh";s:42:"давньоверхньонімецька";s:3:"goh";s:9:"코로어";s:3:"kfo";s:18:"코스라이엔어";s:3:"kos";s:30:"давньонорвезька";s:3:"non";s:26:"давньоперська";s:3:"peo";s:40:"давньопровансальська";s:3:"pro";s:32:"давньоірландська";s:3:"sga";}i:521;a:22:{s:9:"앙가어";s:3:"anp";s:6:"英語";s:2:"en";s:6:"英文";s:2:"en";s:12:"英式英文";s:5:"en-gb";s:12:"ラテン語";s:2:"la";s:15:"ラディノ語";s:3:"lad";s:9:"ラク語";s:3:"lbe";s:9:"ラオ語";s:2:"lo";s:18:"ラトガリア語";s:3:"ltg";s:15:"ラトビア語";s:2:"lv";s:9:"ラズ語";s:3:"lzz";s:12:"ශෝනා";s:2:"sn";s:12:"ශෝසා";s:2:"xh";s:21:"ශාම්බලා";s:3:"ksb";s:12:"ランギ語";s:3:"lag";s:12:"ラコタ語";s:3:"lkt";s:18:"ラフンダー語";s:3:"lah";s:12:"ランバ語";s:3:"lam";s:27:"ラージャスターン語";s:3:"raj";s:15:"ラパヌイ語";s:3:"rap";s:18:"ラロトンガ語";s:3:"rar";s:15:"英格裏亞文";s:3:"izh";}i:819;a:2:{s:12:"ዓረብኛ";s:2:"ar";s:12:"ዓረበኛ";s:2:"ar";}i:225;a:18:{s:6:"árabe";s:2:"ar";s:18:"árabe d’arxelia";s:3:"arq";s:19:"árabe de marruecos";s:3:"ary";s:17:"árabe d’exiptu";s:3:"arz";s:12:"ásámština";s:2:"as";s:10:"ásamčina";s:2:"as";s:21:"ázerbájdžánština";s:2:"az";s:31:"ázerbájdžánština (jižní)";s:3:"azb";s:18:"álki kiinágiella";s:7:"zh-hans";s:27:"árbevirolaš kiinnágiella";s:7:"zh-hant";s:24:"árabe estándar modernu";s:6:"ar-001";s:24:"árabe estándar moderno";s:6:"ar-001";s:22:"árabe moderno padrão";s:6:"ar-001";s:14:"árabe moderno";s:6:"ar-001";s:16:"áströlsk enska";s:5:"en-au";s:15:"árabe chadiano";s:3:"shu";s:15:"árabe do chade";s:3:"shu";s:16:"árabe de túnez";s:3:"aeb";}i:601;a:60:{s:6:"ərəb";s:2:"ar";s:10:"فارسی";s:2:"fa";s:10:"فارسي";s:2:"fa";s:12:"فولایی";s:2:"ff";s:10:"فُلاہ";s:2:"ff";s:12:"فۇلاچە";s:2:"ff";s:14:"فنلاندی";s:2:"fi";s:10:"فِنِش";s:2:"fi";s:14:"فینلنډي";s:2:"fi";s:10:"فىنچە";s:2:"fi";s:10:"فینیش";s:2:"fi";s:14:"فیجیایی";s:2:"fj";s:12:"فِجیَن";s:2:"fj";s:12:"فىجىچە";s:2:"fj";s:6:"فجی";s:2:"fj";s:12:"فارویی";s:2:"fo";s:10:"فَروس";s:2:"fo";s:12:"فاروئې";s:2:"fo";s:16:"فائېروچە";s:2:"fo";s:14:"فیروئیز";s:2:"fo";s:14:"فرانسوی";s:2:"fr";s:12:"فریٚنچ";s:2:"fr";s:14:"فرانسوي";s:2:"fr";s:20:"فىرانسۇزچە";s:2:"fr";s:16:"فرانسیسی";s:2:"fr";s:25:"فرانسوی کاژون";s:3:"frc";s:21:"فریزی شمالی";s:3:"frr";s:18:"فریولیایی";s:3:"fur";s:18:"فروٗلِیَن";s:3:"fur";s:20:"فىرىئۇلىچە";s:3:"fur";s:19:"فریزی غربی";s:2:"fy";s:10:"فريزي";s:2:"fy";s:15:"ənənəvi çin";s:7:"zh-hant";s:16:"فیلیپینی";s:3:"fil";s:18:"فِلِپیٖنو";s:3:"fil";s:20:"فىلىپپىنچە";s:3:"fil";s:14:"فلیپینو";s:3:"fil";s:12:"فلمنگی";s:5:"nl-be";s:14:"فلیٚمِش";s:5:"nl-be";s:12:"فلیمِش";s:5:"nl-be";s:10:"فنیقی";s:3:"phn";s:18:"فونیٖشیَن";s:3:"phn";s:20:"فىنىكىيەچە";s:3:"phn";s:10:"فونجو";s:3:"vun";s:27:"فرانسوی کانادا";s:5:"fr-ca";s:25:"فرانسوی سوئیس";s:5:"fr-ch";s:10:"فانکی";s:3:"fan";s:10:"فینٛگ";s:3:"fan";s:10:"فاڭچە";s:3:"fan";s:16:"فانتیایی";s:3:"fat";s:10:"فانٹی";s:3:"fat";s:14:"فانتىچە";s:3:"fat";s:8:"فونی";s:3:"fon";s:6:"فون";s:3:"fon";s:10:"فونچە";s:3:"fon";s:25:"فرانسوی میانه";s:3:"frm";s:27:"فرانسوی باستان";s:3:"fro";s:19:"فریزی شرقی";s:3:"frs";s:21:"فارسی یهودی";s:3:"jpr";s:23:"فارسی باستان";s:3:"peo";}i:593;a:17:{s:8:"عربی";s:2:"ar";s:8:"عربي";s:2:"ar";s:25:"عربی الجزائری";s:3:"arq";s:21:"عربی مراکشی";s:3:"ary";s:17:"عربی مصری";s:3:"arz";s:18:"ਡੈਨਿਸ਼";s:2:"da";s:8:"عبری";s:2:"he";s:12:"عبرٲنۍ";s:2:"he";s:8:"عبري";s:2:"he";s:12:"عبرانی";s:2:"he";s:9:"ਡੱਚ";s:2:"nl";s:17:"عربی رسمی";s:6:"ar-001";s:15:"ਡੂਆਲਾ";s:3:"dua";s:12:"عیلامی";s:3:"elx";s:19:"عربی یهودی";s:3:"jrb";s:17:"عربی چادی";s:3:"shu";s:19:"عربی تونسی";s:3:"aeb";}i:699;a:6:{s:8:"ʻalapia";s:2:"ar";s:8:"ʻailiki";s:2:"ga";s:17:"ʻŌlelo hawaiʻi";s:3:"haw";s:10:"ʻĪkālia";s:2:"it";s:50:"ʻike ʻole ‘ia a kūpono ʻole paha ka ʻōlelo";s:3:"und";s:13:"ʻikai ha lea";s:3:"zxx";}i:506;a:11:{s:10:"ערבית";s:2:"ar";s:12:"ענגליש";s:2:"en";s:22:"עספּעראַנטא";s:2:"eo";s:10:"עסטיש";s:2:"et";s:15:"ペルシア語";s:2:"fa";s:10:"עברית";s:2:"he";s:33:"ペンシルバニアドイツ語";s:3:"pdc";s:25:"ערבית ספרותית";s:6:"ar-001";s:12:"עילמית";s:3:"elx";s:23:"ערבית יהודית";s:3:"jrb";s:23:"ערבית צ׳אדית";s:3:"shu";}i:808;a:3:{s:10:"ܐܪܡܝܐ";s:3:"arc";s:9:"ወልሽ";s:2:"cy";s:12:"迈蒂利文";s:3:"mai";}i:320;a:13:{s:18:"ऐरेमेक";s:3:"arc";s:12:"ऐमरा";s:2:"ay";s:36:"რეტორომანული";s:2:"rm";s:15:"რუნდი";s:2:"rn";s:24:"რუმინული";s:2:"ro";s:18:"რუსული";s:2:"ru";s:16:"졸라 포니어";s:3:"dyo";s:15:"რომბო";s:3:"rof";s:9:"რუა";s:3:"rwk";s:9:"ऐनू";s:3:"ain";s:27:"რაჯასთანი";s:3:"raj";s:21:"რაპანუი";s:3:"rap";s:33:"რაროტონგული";s:3:"rar";}i:635;a:14:{s:9:"ማፑቼ";s:3:"arn";s:15:"ማንክስኛ";s:2:"gv";s:15:"ማላጋስኛ";s:2:"mg";s:12:"ማዮሪኛ";s:2:"mi";s:15:"ማሴዶንኛ";s:2:"mk";s:15:"ማክዶኒኛ";s:2:"mk";s:18:"ማላያላምኛ";s:2:"ml";s:12:"ማራቲኛ";s:2:"mr";s:12:"ማላይኛ";s:2:"ms";s:15:"ማልቲስኛ";s:2:"mt";s:12:"ማቻሜኛ";s:3:"jmc";s:12:"ማኮንዴ";s:3:"kde";s:9:"ማሳይ";s:3:"mas";s:16:"ማኩዋ ሜቶ";s:3:"mgh";}i:84;a:187:{s:12:"мапуче";s:3:"arn";s:16:"мапучеде";s:3:"arn";s:14:"мапучки";s:3:"arn";s:12:"мапүчи";s:3:"arn";s:35:"марокански арапски";s:3:"ary";s:22:"мальдивский";s:2:"dv";s:14:"манкски";s:2:"gv";s:8:"мэнс";s:2:"gv";s:16:"манксыча";s:2:"gv";s:10:"манкс";s:2:"gv";s:14:"мэнский";s:2:"gv";s:16:"менкська";s:2:"gv";s:14:"мажарча";s:2:"hu";s:16:"мађарски";s:2:"hu";s:16:"мӕхъӕлон";s:3:"inh";s:18:"콜로그니안어";s:3:"ksh";s:8:"мизо";s:3:"lus";s:16:"майтхили";s:3:"mai";s:14:"маитили";s:3:"mai";s:16:"майтхілі";s:3:"mai";s:14:"мокшень";s:3:"mdf";s:10:"мокша";s:3:"mdf";s:18:"мокшански";s:3:"mdf";s:20:"мокшанский";s:3:"mdf";s:22:"мальгашская";s:2:"mg";s:16:"малгашки";s:2:"mg";s:16:"малагаси";s:2:"mg";s:18:"малагасча";s:2:"mg";s:26:"малагасийский";s:2:"mg";s:26:"малагасійська";s:2:"mg";s:18:"маршалезе";s:2:"mh";s:18:"маршалски";s:2:"mh";s:24:"маршалльский";s:2:"mh";s:24:"маршалльська";s:2:"mh";s:14:"маорски";s:2:"mi";s:10:"маори";s:2:"mi";s:14:"маориче";s:2:"mi";s:10:"маорі";s:2:"mi";s:18:"минангбау";s:3:"min";s:22:"минангкабау";s:3:"min";s:22:"мінангкабау";s:3:"min";s:20:"македонски";s:2:"mk";s:22:"македонская";s:2:"mk";s:23:"македон тілі";s:2:"mk";s:18:"македончо";s:2:"mk";s:14:"македон";s:2:"mk";s:16:"мӕчъидон";s:2:"mk";s:22:"македонский";s:2:"mk";s:22:"македонська";s:2:"mk";s:24:"малаяламская";s:2:"ml";s:16:"малаялам";s:2:"ml";s:18:"малайялам";s:2:"ml";s:22:"малайаламча";s:2:"ml";s:18:"малајалам";s:2:"ml";s:16:"малайлам";s:2:"ml";s:12:"монгол";s:2:"mn";s:22:"мангольская";s:2:"mn";s:18:"монголски";s:2:"mn";s:21:"моңғол тілі";s:2:"mn";s:16:"моңголчо";s:2:"mn";s:22:"монгольский";s:2:"mn";s:22:"монгольська";s:2:"mn";s:24:"молдовеняскэ";s:2:"mo";s:20:"малдаўская";s:5:"ro-md";s:14:"маратхі";s:2:"mr";s:12:"марати";s:2:"mr";s:14:"маратхи";s:2:"mr";s:16:"маратиче";s:2:"mr";s:18:"малайская";s:2:"ms";s:16:"малайски";s:2:"ms";s:10:"малай";s:2:"ms";s:14:"малайча";s:2:"ms";s:16:"малајски";s:2:"ms";s:18:"малайский";s:2:"ms";s:18:"малайська";s:2:"ms";s:22:"мальтыйская";s:2:"mt";s:18:"малтийски";s:2:"mt";s:12:"мальта";s:2:"mt";s:16:"малтизче";s:2:"mt";s:16:"малтешки";s:2:"mt";s:10:"малти";s:2:"mt";s:22:"мальтийский";s:2:"mt";s:22:"мальтійська";s:2:"mt";s:22:"мирандийски";s:3:"mwl";s:18:"мирандски";s:3:"mwl";s:24:"мирандийский";s:3:"mwl";s:20:"мірандська";s:3:"mwl";s:26:"мазендерански";s:3:"mzn";s:49:"менонитски долногермански";s:3:"pdt";s:12:"러시아어";s:2:"ru";s:34:"мајнскофранконски";s:3:"vmf";s:18:"мегрелски";s:3:"xmf";s:50:"модеран стандардни арапски";s:6:"ar-001";s:12:"мачаме";s:3:"jmc";s:16:"мачамече";s:3:"jmc";s:12:"мачамэ";s:3:"jmc";s:14:"маконде";s:3:"kde";s:18:"макондече";s:3:"kde";s:10:"масаі";s:3:"mas";s:16:"масайски";s:3:"mas";s:10:"масай";s:3:"mas";s:14:"масайча";s:3:"mas";s:16:"масајски";s:3:"mas";s:10:"масаи";s:3:"mas";s:10:"масаї";s:3:"mas";s:8:"меру";s:3:"mer";s:12:"меруча";s:3:"mer";s:16:"морисиен";s:3:"mfe";s:20:"морисианча";s:3:"mfe";s:16:"морисјен";s:3:"mfe";s:14:"морисен";s:3:"mfe";s:45:"маврикийский креольский";s:3:"mfe";s:45:"маврикійська креольська";s:3:"mfe";s:19:"макуа мето";s:3:"mgh";s:23:"макуа-меетто";s:3:"mgh";s:14:"макуача";s:3:"mgh";s:21:"макува-мито";s:3:"mgh";s:23:"макува-меето";s:3:"mgh";s:8:"мета";s:3:"mgo";s:12:"метөчө";s:3:"mgo";s:12:"мохоук";s:3:"moh";s:12:"мохоки";s:3:"moh";s:16:"мохаукча";s:3:"moh";s:16:"мохавски";s:3:"moh";s:12:"мохаук";s:3:"moh";s:10:"мохок";s:3:"moh";s:12:"магавк";s:3:"moh";s:14:"мунданг";s:3:"mua";s:18:"мундангча";s:3:"mua";s:22:"многоезични";s:3:"mul";s:18:"молдовски";s:5:"ro-md";s:25:"молдован тілі";s:5:"ro-md";s:20:"молдованча";s:5:"ro-md";s:18:"молдавски";s:5:"ro-md";s:12:"молдав";s:5:"ro-md";s:20:"молдавский";s:5:"ro-md";s:20:"молдавська";s:5:"ro-md";s:60:"марокколық стандартты тамазигхт";s:3:"zgh";s:59:"марокко тамазигт адабий тилинде";s:3:"zgh";s:16:"марийски";s:3:"chm";s:14:"мариски";s:3:"chm";s:43:"марийский (черемисский)";s:3:"chm";s:18:"марійська";s:3:"chm";s:10:"монга";s:3:"lol";s:10:"монго";s:3:"lol";s:16:"мадурски";s:3:"mad";s:18:"мадурский";s:3:"mad";s:18:"мадурська";s:3:"mad";s:12:"магахи";s:3:"mag";s:14:"магадхі";s:3:"mag";s:14:"макасар";s:3:"mak";s:20:"макасарски";s:3:"mak";s:24:"макассарский";s:3:"mak";s:22:"макасарська";s:3:"mak";s:16:"мандынга";s:3:"man";s:16:"мандинго";s:3:"man";s:16:"мандінго";s:3:"man";s:8:"маба";s:3:"mde";s:18:"мабанский";s:3:"mde";s:12:"мандар";s:3:"mdr";s:18:"мандарски";s:3:"mdr";s:20:"мандарский";s:3:"mdr";s:20:"мандарська";s:3:"mdr";s:10:"мендэ";s:3:"men";s:10:"менде";s:3:"men";s:12:"микмак";s:3:"mic";s:12:"мікмак";s:3:"mic";s:20:"манчжурски";s:3:"mnc";s:18:"манџурски";s:3:"mnc";s:24:"маньчжурский";s:3:"mnc";s:22:"манчжурська";s:3:"mnc";s:16:"манипури";s:3:"mni";s:22:"манипурский";s:3:"mni";s:16:"маніпурі";s:3:"mni";s:8:"мосі";s:3:"mos";s:8:"моси";s:3:"mos";s:10:"моссі";s:3:"mos";s:14:"марвари";s:3:"mwr";s:14:"марварі";s:3:"mwr";s:14:"медумба";s:3:"byv";s:39:"мексикански испански";s:5:"es-mx";s:40:"мексикалық испан тілі";s:5:"es-mx";s:31:"мексикийн испани";s:5:"es-mx";s:8:"мафа";s:3:"maf";s:10:"мјене";s:3:"mye";s:10:"миене";s:3:"mye";s:8:"миін";s:3:"mye";}i:478;a:46:{s:18:"মাপুচি";s:3:"arn";s:12:"ゾンカ語";s:2:"dz";s:24:"ম্যাঙ্কস";s:2:"gv";s:18:"মৈথিলি";s:3:"mai";s:15:"মোকশা";s:3:"mdf";s:24:"মালাগাসি";s:2:"mg";s:27:"মার্শালিজ";s:2:"mh";s:15:"মাওরি";s:2:"mi";s:42:"মিনাঙ্গ্‌কাবাউ";s:3:"min";s:36:"ম্যাসিডোনীয়";s:2:"mk";s:30:"মালায়ালাম";s:2:"ml";s:27:"মঙ্গোলিয়";s:2:"mn";s:18:"মারাঠি";s:2:"mr";s:15:"মালয়";s:2:"ms";s:21:"মল্টিয়";s:2:"mt";s:27:"মিরান্ডিজ";s:3:"mwl";s:18:"মাকামে";s:3:"jmc";s:24:"মাকোন্দে";s:3:"kde";s:15:"মাসাই";s:3:"mas";s:12:"মেরু";s:3:"mer";s:27:"মরিসিয়ান";s:3:"mfe";s:40:"মাখুয়া-মেত্তো";s:3:"mgh";s:12:"মেটা";s:3:"mgo";s:18:"মোহাওক";s:3:"moh";s:21:"মুদাঙ্গ";s:3:"mua";s:24:"মলদাভিয়";s:5:"ro-md";s:12:"俾路支文";s:3:"bal";s:12:"মারি";s:3:"chm";s:22:"মধ্য ডাচ";s:3:"dum";s:31:"মধ্য ইংরেজি";s:3:"enm";s:28:"মধ্য ফরাসি";s:3:"frm";s:50:"মধ্য-উচ্চ জার্মানি";s:3:"gmh";s:18:"মোঙ্গো";s:3:"lol";s:24:"মাদুরেসে";s:3:"mad";s:18:"মাগাহি";s:3:"mag";s:27:"ম্যাকাসার";s:3:"mak";s:36:"ম্যান্ডিঙ্গো";s:3:"man";s:27:"ম্যাণ্ডার";s:3:"mdr";s:18:"মেন্ডে";s:3:"men";s:28:"মধ্য আইরিশ";s:3:"mga";s:24:"মিকম্যাক";s:3:"mic";s:18:"মাঞ্চু";s:3:"mnc";s:21:"মণিপুরী";s:3:"mni";s:9:"মসি";s:3:"mos";s:27:"মারোয়ারি";s:3:"mwr";s:61:"ম্যাক্সিকান স্প্যানিশ";s:5:"es-mx";}i:605;a:183:{s:19:"ماپوچه‌ای";s:3:"arn";s:12:"ماپۇچە";s:3:"arn";s:12:"ماپوچے";s:3:"arn";s:8:"مصرى";s:3:"arz";s:21:"ਭੋਜਪੁਰੀ";s:3:"bho";s:36:"ตุรกีไครเมีย";s:3:"crh";s:14:"مالدیوی";s:2:"dv";s:25:"مغربی فرِشیَن";s:2:"fy";s:25:"مغربی فریسیئن";s:2:"fy";s:8:"مانی";s:2:"gv";s:12:"مینٛکس";s:2:"gv";s:10:"مانچە";s:2:"gv";s:10:"مینکس";s:2:"gv";s:21:"موتویی هیری";s:2:"ho";s:10:"مجاری";s:2:"hu";s:14:"ماجارچە";s:2:"hu";s:19:"میان‌زبان";s:2:"ia";s:12:"مىزوچە";s:3:"lus";s:14:"مایدیلی";s:3:"mai";s:14:"میتَھلی";s:3:"mai";s:18:"مايتىلىچە";s:3:"mai";s:12:"مکشایی";s:3:"mdf";s:10:"موکشا";s:3:"mdf";s:14:"موكشاچە";s:3:"mdf";s:22:"مالاگاسیایی";s:2:"mg";s:16:"مَلاگَسی";s:2:"mg";s:12:"ملغاسي";s:2:"mg";s:24:"ماداغاسقارچە";s:2:"mg";s:14:"ملاگاسی";s:2:"mg";s:14:"مارشالی";s:2:"mh";s:18:"مارشَلیٖز";s:2:"mh";s:16:"مارشالچە";s:2:"mh";s:8:"ماری";s:3:"chm";s:18:"مائوریایی";s:2:"mi";s:10:"ماوری";s:2:"mi";s:14:"ماۋرىچە";s:2:"mi";s:10:"ماؤری";s:2:"mi";s:27:"مینانگ‌کابویی";s:3:"min";s:24:"مِنَنٛگکَباو";s:3:"min";s:26:"مىناڭكابائۇچە";s:3:"min";s:12:"مقدونی";s:2:"mk";s:20:"میکَڈونیَن";s:2:"mk";s:12:"مقدوني";s:2:"mk";s:18:"ماكېدونچە";s:2:"mk";s:18:"مقدونیائی";s:2:"mk";s:20:"مالایالامی";s:2:"ml";s:16:"مٔلیالَم";s:2:"ml";s:16:"مالايالم";s:2:"ml";s:18:"مالايامچە";s:2:"ml";s:16:"مالایالم";s:2:"ml";s:10:"مغولی";s:2:"mn";s:16:"مَنٛگولی";s:2:"mn";s:10:"مغولي";s:2:"mn";s:16:"موڭغۇلچە";s:2:"mn";s:12:"منگؤلی";s:2:"mn";s:10:"مراتی";s:2:"mr";s:14:"مَرٲٹھۍ";s:2:"mr";s:12:"مراټهي";s:2:"mr";s:14:"ماراتچە";s:2:"mr";s:12:"مراٹهی";s:2:"mr";s:12:"مالایی";s:2:"ms";s:10:"مَلَے";s:2:"ms";s:10:"ملایا";s:2:"ms";s:14:"مالايچە";s:2:"ms";s:12:"مالائی";s:2:"ms";s:10:"مالتی";s:2:"mt";s:14:"مَلتیٖس";s:2:"mt";s:14:"مالټايي";s:2:"mt";s:14:"مالتاچە";s:2:"mt";s:10:"مالٹی";s:2:"mt";s:18:"مِراندیٖز";s:3:"mwl";s:20:"مىراندېسچە";s:3:"mwl";s:16:"مازِرونی";s:3:"mzn";s:18:"مازندرانی";s:3:"mzn";s:13:"مین نان";s:3:"nan";s:23:"مگلنو رومانی";s:3:"ruq";s:41:"مگلنو رومانی (خط سرلیک)";s:8:"ruq-cyrl";s:41:"مگلنو رومانی (خط لاتین)";s:8:"ruq-latn";s:12:"ตูลู";s:3:"tcy";s:24:"ติกริญญา";s:2:"ti";s:24:"ตากาล็อก";s:2:"tl";s:15:"ตองกา";s:2:"to";s:15:"ตุรกี";s:2:"tr";s:18:"ตูโรโย";s:3:"tru";s:18:"ตาตาร์";s:2:"tt";s:18:"ตาฮิตี";s:2:"ty";s:12:"ตูวา";s:3:"tyv";s:46:"مەركىزى ئاتلاس تاماچاگىت";s:3:"tzm";s:27:"مۇرەككەپ خەنچە";s:7:"zh-hant";s:36:"ماڈرن اسٹینڈرڈ عربی";s:6:"ar-001";s:15:"مصری کهن";s:3:"egy";s:12:"ماتشيم";s:3:"jmc";s:19:"ماچامه‌ای";s:3:"jmc";s:14:"ماچامچە";s:3:"jmc";s:10:"ماشیم";s:3:"jmc";s:14:"ماكونده";s:3:"kde";s:14:"ماکونده";s:3:"kde";s:18:"ماكوندېچە";s:3:"kde";s:12:"ماسایی";s:3:"mas";s:10:"مَساے";s:3:"mas";s:14:"ماسايچە";s:3:"mas";s:10:"ماسای";s:3:"mas";s:8:"ميرو";s:3:"mer";s:10:"مرویی";s:3:"mer";s:12:"مېرۇچە";s:3:"mer";s:8:"میرو";s:3:"mer";s:14:"موریسین";s:3:"mfe";s:20:"مورىسيېنچە";s:3:"mfe";s:16:"موریسیین";s:3:"mfe";s:21:"ماخاوا-ميتو";s:3:"mgh";s:17:"ماکوا متو";s:3:"mgh";s:16:"ماكۇۋاچە";s:3:"mgh";s:8:"ميتا";s:3:"mgo";s:10:"متایی";s:3:"mgo";s:15:"مېتاچە’";s:3:"mgo";s:8:"میٹا";s:3:"mgo";s:12:"موهاکی";s:3:"moh";s:10:"موہاک";s:3:"moh";s:14:"موخوكچە";s:3:"moh";s:12:"موہاوک";s:3:"moh";s:10:"مندنج";s:3:"mua";s:16:"ماندانگی";s:3:"mua";s:16:"مۇنداڭچە";s:3:"mua";s:12:"منڈانگ";s:3:"mua";s:14:"مۇئېرچە";s:3:"nus";s:20:"مولداویایی";s:5:"ro-md";s:20:"مولداوِیَن";s:5:"ro-md";s:14:"مالدووا";s:5:"ro-md";s:24:"ตัสซาวัค";s:3:"twq";s:15:"ตีเกร";s:3:"tig";s:12:"毕库尔文";s:3:"bik";s:14:"ماریایی";s:3:"chm";s:12:"مارىچە";s:3:"chm";s:27:"مشرِقی فرِشیَن";s:3:"frs";s:10:"مۆڭچە";s:3:"hmn";s:12:"منغولى";s:3:"lol";s:14:"مونگویی";s:3:"lol";s:12:"مونٛگو";s:3:"lol";s:14:"مونگوچە";s:3:"lol";s:16:"مادورایی";s:3:"mad";s:16:"مَدُریٖز";s:3:"mad";s:18:"مادۇرېسچە";s:3:"mad";s:18:"ماگاهیایی";s:3:"mag";s:10:"مَگاے";s:3:"mag";s:16:"ماگاخىچە";s:3:"mag";s:14:"ماکاسار";s:3:"mak";s:14:"مَکَسار";s:3:"mak";s:18:"ماكاسارچە";s:3:"mak";s:20:"ماندینگویی";s:3:"man";s:18:"مَندِنٛگو";s:3:"man";s:20:"ماندىنگوچە";s:3:"man";s:8:"مابا";s:3:"mde";s:12:"ماباچە";s:3:"mde";s:12:"ماندار";s:3:"mdr";s:12:"مَندَر";s:3:"mdr";s:16:"ماندارچە";s:3:"mdr";s:15:"منده‌ای";s:3:"men";s:12:"میندیے";s:3:"men";s:14:"مېندېچە";s:3:"men";s:14:"میکماکی";s:3:"mic";s:12:"مِکمیک";s:3:"mic";s:16:"مىكماكچە";s:3:"mic";s:14:"مانچویی";s:3:"mnc";s:14:"مانٛچوٗ";s:3:"mnc";s:14:"مانجۇچە";s:3:"mnc";s:15:"میته‌ای";s:3:"mni";s:18:"مَنیپوٗری";s:3:"mni";s:20:"مانىپۇرىچە";s:3:"mni";s:14:"ماسیایی";s:3:"mos";s:8:"موسی";s:3:"mos";s:14:"موسسىچە";s:3:"mos";s:14:"مارواری";s:3:"mwr";s:14:"مارواڑی";s:3:"mwr";s:18:"مارۋارىچە";s:3:"mwr";s:39:"ตุรกีออตโตมัน";s:3:"ota";s:18:"ตูวาลู";s:3:"tvl";s:18:"مېدۇمباچە";s:3:"byv";s:31:"مېكسىكا ئىسپانچە";s:5:"es-mx";s:29:"میکسیکن ہسپانوی";s:5:"es-mx";s:12:"مافاچە";s:3:"maf";s:14:"ميېنېچە";s:3:"mye";s:27:"ตัตมุสลิม";s:3:"ttt";s:43:"مگلنو رومانی (خط یونانی)";s:8:"ruq-grek";}i:350;a:102:{s:18:"मापूचे";s:3:"arn";s:18:"मापुची";s:3:"arn";s:18:"मापुचे";s:3:"arn";s:11:"Şayen dili";s:3:"chy";s:18:"मैंक्स";s:2:"gv";s:18:"मांक्स";s:2:"gv";s:21:"मान्क्स";s:2:"gv";s:49:"माथिल्लो सोर्बियन";s:3:"hsb";s:12:"ഖമെർ";s:2:"km";s:12:"坎那達文";s:2:"kn";s:18:"मैथिली";s:3:"mai";s:15:"मोक्ष";s:3:"mdf";s:24:"मालागासी";s:2:"mg";s:18:"मलागसी";s:2:"mg";s:21:"मलागासी";s:2:"mg";s:27:"मार्शलीज़";s:2:"mh";s:24:"मार्शलीज";s:2:"mh";s:15:"माओरी";s:2:"mi";s:36:"मिनांग्काबाउ";s:3:"min";s:33:"मैसिडोनियाई";s:2:"mk";s:30:"मॅसेडोनियन";s:2:"mk";s:36:"म्याकेडोनियन";s:2:"mk";s:18:"मलयालम";s:2:"ml";s:21:"मल्याळम";s:2:"ml";s:27:"मंगोलीयाई";s:2:"mn";s:24:"मंगोलियन";s:2:"mn";s:15:"मंगोल";s:2:"mn";s:15:"मराठी";s:2:"mr";s:9:"मलय";s:2:"ms";s:15:"मलाया";s:2:"ms";s:24:"माल्टीज़";s:2:"mt";s:24:"माल्टिज्";s:2:"mt";s:21:"माल्टिज";s:2:"mt";s:21:"मिरांडी";s:3:"mwl";s:27:"मिरांडिज्";s:3:"mwl";s:20:"Նորվեգերեն";s:2:"no";s:47:"मध्य एटलस तमाज़ित";s:3:"tzm";s:53:"मध्य ऍटलास तॅमॅझायट";s:3:"tzm";s:9:"ഖോസ";s:2:"xh";s:21:"मैकहैमे";s:3:"jmc";s:15:"मशामे";s:3:"jmc";s:18:"माचामे";s:3:"jmc";s:18:"मैकोंड";s:3:"kde";s:24:"माकोन्दे";s:3:"kde";s:24:"माकोन्डे";s:3:"kde";s:12:"मसाई";s:3:"mas";s:15:"मासाल";s:3:"mas";s:12:"मेरु";s:3:"mer";s:12:"मेरू";s:3:"mer";s:27:"मोरीस्येन";s:3:"mfe";s:27:"मोरिस्येन";s:3:"mfe";s:21:"मोरिसेन";s:3:"mfe";s:37:"मैखुवा-मीट्टो";s:3:"mgh";s:43:"माखुव्हा-मीट्टो";s:3:"mgh";s:37:"माखुवा-मिट्टो";s:3:"mgh";s:12:"मेटा";s:3:"mgo";s:12:"मीटा";s:3:"mgo";s:15:"मोहौक";s:3:"moh";s:15:"मोहॉक";s:3:"moh";s:12:"मोहक";s:3:"moh";s:21:"मुंडैंग";s:3:"mua";s:21:"मुंडांग";s:3:"mua";s:21:"मुन्डाङ";s:3:"mua";s:27:"मोलडावियन";s:5:"ro-md";s:36:"मोल्डाव्हियन";s:5:"ro-md";s:30:"माल्डाभियन";s:5:"ro-md";s:62:"मानक मोरक्कन तामाज़ाइट";s:3:"zgh";s:65:"मानक मोरोक्कोन तामाजिघट";s:3:"zgh";s:12:"मारी";s:3:"chm";s:40:"मध्य पुर्तगाली";s:3:"dum";s:19:"मिडल डच";s:3:"dum";s:55:"मध्यकालीन अंग्रेज़ी";s:3:"enm";s:34:"मिडल इंग्रजी";s:3:"enm";s:58:"मध्यकालीन फ़्रांसीसी";s:3:"frm";s:31:"मिडल फ्रेंच";s:3:"frm";s:53:"मध्यकालीन हाइ जर्मन";s:3:"gmh";s:38:"मिडल हाय जर्मन";s:3:"gmh";s:12:"माँग";s:3:"hmn";s:15:"मोंगो";s:3:"lol";s:21:"मादुरीस";s:3:"mad";s:15:"मगाही";s:3:"mag";s:12:"मगही";s:3:"mag";s:15:"मकासर";s:3:"mak";s:18:"मकस्सर";s:3:"mak";s:27:"मन्डिन्गो";s:3:"man";s:15:"मंधार";s:3:"mdr";s:15:"मंडार";s:3:"mdr";s:18:"मेन्डे";s:3:"men";s:37:"मध्यकाल आइरिश";s:3:"mga";s:28:"मिडल आयरिश";s:3:"mga";s:18:"मिकमैक";s:3:"mic";s:18:"मिकमॅक";s:3:"mic";s:15:"मन्चु";s:3:"mnc";s:18:"मान्चु";s:3:"mnc";s:21:"मणिपूरी";s:3:"mni";s:21:"मणिपुरी";s:3:"mni";s:18:"मोस्सी";s:3:"mos";s:24:"मारवाड़ी";s:3:"mwr";s:21:"मारवाडी";s:3:"mwr";s:46:"मैक्सिकन स्पेनिश";s:5:"es-mx";s:46:"मेक्सिकन स्पॅनिश";s:5:"es-mx";s:9:"坎剛文";s:3:"kgp";}i:396;a:24:{s:14:"մապուչի";s:3:"arn";s:15:"구자라트어";s:2:"gu";s:14:"մեներեն";s:2:"gv";s:22:"մալագասերեն";s:2:"mg";s:10:"մաորի";s:2:"mi";s:22:"մակեդոներեն";s:2:"mk";s:18:"մալայալամ";s:2:"ml";s:20:"մոնղոլերեն";s:2:"mn";s:12:"մարաթի";s:2:"mr";s:18:"մալայերեն";s:2:"ms";s:16:"մալթերեն";s:2:"mt";s:9:"구시어";s:3:"guz";s:12:"մաշամե";s:3:"jmc";s:14:"մակոնդե";s:3:"kde";s:12:"샴발라어";s:3:"ksb";s:10:"մասաի";s:3:"mas";s:10:"մերու";s:3:"mer";s:16:"մորիսյեն";s:3:"mfe";s:23:"մաքուա-մետտո";s:3:"mgh";s:8:"մետա";s:3:"mgo";s:12:"մոհավք";s:3:"moh";s:16:"մունդանգ";s:3:"mua";s:20:"մոլդովերեն";s:5:"ro-md";s:39:"մեքսիկական իսպաներեն";s:5:"es-mx";}i:315;a:41:{s:33:"მაპუდუნგუნი";s:3:"arn";s:18:"მენური";s:2:"gv";s:12:"მიზო";s:3:"lus";s:21:"მაითილი";s:3:"mai";s:15:"მოქშა";s:3:"mdf";s:33:"მალაგასიური";s:2:"mg";s:15:"მაორი";s:2:"mi";s:33:"მინანგკაბაუ";s:3:"min";s:30:"მაკედონური";s:2:"mk";s:36:"მალაიალამური";s:2:"ml";s:27:"მონღოლური";s:2:"mn";s:21:"მარათჰი";s:2:"mr";s:24:"მალაიური";s:2:"ms";s:21:"მალტური";s:2:"mt";s:27:"მირანდული";s:3:"mwl";s:9:"佛羅文";s:3:"vro";s:27:"მარგალური";s:3:"xmf";s:21:"მაკონდე";s:3:"kde";s:15:"მასაი";s:3:"mas";s:12:"მერუ";s:3:"mer";s:27:"მორისიენი";s:3:"mfe";s:34:"მაქუვა-მეეტო";s:3:"mgh";s:25:"მეტა’ ენა";s:3:"mgo";s:27:"მოჰაუკური";s:3:"moh";s:24:"მუნდანგი";s:3:"mua";s:12:"佛兰芒文";s:5:"nl-be";s:12:"佛蘭芒文";s:5:"nl-be";s:27:"მოლდავური";s:5:"ro-md";s:21:"მარიული";s:3:"chm";s:15:"მონგო";s:3:"lol";s:18:"მაგაჰი";s:3:"mag";s:12:"მაბა";s:3:"mde";s:15:"მენდე";s:3:"men";s:21:"მიკმაკი";s:3:"mic";s:30:"მანჯურიული";s:3:"mnc";s:24:"მანიპური";s:3:"mni";s:15:"მოორე";s:3:"mos";s:21:"მარვარი";s:3:"mwr";s:52:"მექსიკური ესპანური";s:5:"es-mx";s:12:"მაფა";s:3:"maf";s:15:"მიენე";s:3:"mye";}i:246;a:49:{s:15:"ಮಪುಚೆ";s:3:"arn";s:18:"österrikisk tyska";s:5:"de-at";s:27:"ಮ್ಯಾಂಕ್ಸ್";s:2:"gv";s:8:"örmény";s:2:"hy";s:18:"ಮೈಥಿಲಿ";s:3:"mai";s:15:"ಮೋಕ್ಷ";s:3:"mdf";s:18:"ಮಲಗಾಸಿ";s:2:"mg";s:33:"ಮಾರ್ಶಲ್ಲೀಸ್";s:2:"mh";s:18:"ಮಾವೋರಿ";s:2:"mi";s:36:"ಮಿನಂಗ್‌ಕಬಾವು";s:3:"min";s:33:"ಮೆಸಿಡೋನಿಯನ್";s:2:"mk";s:18:"ಮಲಯಾಳಂ";s:2:"ml";s:27:"ಮಂಗೋಲಿಯನ್";s:2:"mn";s:15:"ಮರಾಠಿ";s:2:"mr";s:12:"ಮಲಯ್";s:2:"ms";s:24:"ಮಾಲ್ಟೀಸ್";s:2:"mt";s:53:"ಮಧ್ಯ ಅಟ್ಲಾಸ್ ಟಮಜೈಟ್";s:3:"tzm";s:7:"özbək";s:2:"uz";s:18:"ಮ್ಯಕಮೆ";s:3:"jmc";s:27:"ಮ್ಯಾಕೊಂಡ್";s:3:"kde";s:15:"ಮಸಾಯ್";s:3:"mas";s:12:"ಮೆರು";s:3:"mer";s:21:"ಮೊರಿಸನ್";s:3:"mfe";s:41:"ಮ್ಯಖುವಾ- ಮೀಟ್ಟೊ";s:3:"mgh";s:12:"ಮೆಟಾ";s:3:"mgo";s:24:"ಮೊಹಾವ್ಕ್";s:3:"moh";s:21:"ಮುಂಡಂಗ್";s:3:"mua";s:33:"ಮೊಲ್ಡೆವಿಯನ್";s:5:"ro-md";s:12:"ಮಾರಿ";s:3:"chm";s:22:"ಮಧ್ಯ ಡಚ್";s:3:"dum";s:37:"ಮಧ್ಯ ಇಂಗ್ಲೀಷ್";s:3:"enm";s:34:"ಮಧ್ಯ ಫ್ರೆಂಚ್";s:3:"frm";s:12:"östfrisiska";s:3:"frs";s:38:"ಮಧ್ಯ ಹೈ ಜರ್ಮನ್";s:3:"gmh";s:15:"ಮೋಂಗ್";s:3:"hmn";s:15:"ಮೊಂಗೋ";s:3:"lol";s:21:"ಮದುರೀಸ್";s:3:"mad";s:15:"ಮಗಾಹಿ";s:3:"mag";s:18:"ಮಕಾಸರ್";s:3:"mak";s:21:"ಮಂಡಿಂಗೊ";s:3:"man";s:18:"ಮಂದಾರ್";s:3:"mdr";s:15:"ಮೆಂಡೆ";s:3:"men";s:28:"ಮಧ್ಯ ಐರಿಷ್";s:3:"mga";s:33:"ಮಿಕ್‌ಮ್ಯಾಕ್";s:3:"mic";s:12:"ಮಂಚು";s:3:"mnc";s:21:"ಮಣಿಪುರಿ";s:3:"mni";s:18:"ಮೊಸ್ಸಿ";s:3:"mos";s:24:"ಮಾರ್ವಾಡಿ";s:3:"mwr";s:58:"ಮೆಕ್ಸಿಕನ್ ಸ್ಪ್ಯಾನಿಷ್";s:5:"es-mx";}i:374;a:53:{s:18:"മാപുചി";s:3:"arn";s:15:"മാൻസ്";s:2:"gv";s:12:"മിസോ";s:3:"lus";s:18:"മൈഥിലി";s:3:"mai";s:15:"മോക്ഷ";s:3:"mdf";s:18:"മലഗാസി";s:2:"mg";s:30:"മാർഷല്ലീസ്";s:2:"mh";s:15:"മവോറി";s:2:"mi";s:27:"മിനാങ്കബൗ";s:3:"min";s:30:"മാസിഡോണിയൻ";s:2:"mk";s:18:"മലയാളം";s:2:"ml";s:24:"മംഗോളിയൻ";s:2:"mn";s:21:"മറാത്തി";s:2:"mr";s:15:"മലെയ്";s:2:"ms";s:27:"മാൾട്ടീസ്";s:2:"mt";s:24:"മിരാൻറസേ";s:3:"mwl";s:12:"坦米爾文";s:2:"ta";s:68:"മധ്യ അറ്റ്‌ലസ് ടമാസൈറ്റ്";s:3:"tzm";s:12:"മചേം";s:3:"jmc";s:27:"മക്കോണ്ടെ";s:3:"kde";s:15:"മസായ്";s:3:"mas";s:12:"മേരു";s:3:"mer";s:21:"മൊറിസിൻ";s:3:"mfe";s:37:"മാഖുവാ-മീത്തോ";s:3:"mgh";s:18:"മേത്താ";s:3:"mgo";s:18:"മോഹാക്";s:3:"moh";s:27:"മുന്ദാംഗ്";s:3:"mua";s:27:"മോൾഡാവിയൻ";s:5:"ro-md";s:71:"മൊറോക്കൻ സാധാരണ താമസൈറ്റ്";s:3:"zgh";s:12:"മാരി";s:3:"chm";s:34:"മദ്ധ്യ ഡച്ച്";s:3:"dum";s:43:"മദ്ധ്യ ഇംഗ്ലീഷ്";s:3:"enm";s:40:"മദ്ധ്യ ഫ്രഞ്ച്";s:3:"frm";s:44:"മദ്ധ്യ ഉച്ച ജർമൻ";s:3:"gmh";s:12:"മോങ്";s:3:"hmn";s:18:"മോങ്കോ";s:3:"lol";s:21:"മദുരേസേ";s:3:"mad";s:15:"മഗാഹി";s:3:"mag";s:15:"മകാസർ";s:3:"mak";s:24:"മണ്ഡിൻഗോ";s:3:"man";s:9:"മാബ";s:3:"mde";s:18:"മണ്ഡാർ";s:3:"mdr";s:15:"മെൻഡെ";s:3:"men";s:34:"മദ്ധ്യ ഐറിഷ്";s:3:"mga";s:24:"മിക്മാക്";s:3:"mic";s:12:"മൻചു";s:3:"mnc";s:27:"മണിപ്പൂരി";s:3:"mni";s:18:"മൊസ്സി";s:3:"mos";s:18:"മർവാരി";s:3:"mwr";s:18:"മെഡുംബ";s:3:"byv";s:55:"മെക്സിക്കൻ സ്പാനിഷ്";s:5:"es-mx";s:9:"മാഫ";s:3:"maf";s:12:"മയീൻ";s:3:"mye";}i:121;a:124:{s:21:"မာပုချီ";s:3:"arn";s:8:"yovoncha";s:2:"dz";s:5:"yunan";s:2:"el";s:6:"yunani";s:2:"el";s:7:"yunanca";s:2:"el";s:8:"yunoncha";s:2:"el";s:7:"yevugbe";s:2:"en";s:21:"yaren mutanen finland";s:2:"fi";s:61:"မြောက်ပိုင်း ဖရီစီရန်";s:3:"frr";s:11:"yunani kuno";s:3:"grc";s:18:"မန်းဇ်";s:2:"gv";s:9:"yahudanci";s:2:"he";s:12:"yuxarı sorb";s:3:"hsb";s:9:"yläsorbi";s:3:"hsb";s:15:"yukarı sorbça";s:3:"hsb";s:14:"yuqori sorbcha";s:3:"hsb";s:21:"yare tsakanin kasashe";s:2:"ia";s:10:"yndonezysk";s:2:"id";s:13:"yi de sichuan";s:2:"ii";s:12:"yieg sichuan";s:2:"ii";s:10:"yi sichuan";s:2:"ii";s:2:"yi";s:2:"ii";s:14:"yi de sichuán";s:2:"ii";s:13:"yi du sichuan";s:2:"ii";s:13:"yi sichuanés";s:2:"ii";s:7:"yi simi";s:2:"ii";s:7:"yslands";s:2:"is";s:7:"yslâns";s:2:"is";s:21:"yaren mutanen iceland";s:2:"is";s:5:"yapon";s:2:"ja";s:8:"yaponcha";s:2:"ja";s:12:"yutland dili";s:3:"jut";s:4:"yava";s:2:"jv";s:8:"yavancha";s:2:"jv";s:163:"မောင်းရီ (နယူးဇီလန်ကျွန်းရှိ ပင်ရင်းတိုင်းရင်းသားလူမျိုး)";s:2:"mi";s:33:"မာစီဒိုနီယံ";s:2:"mk";s:27:"မလေးရာလမ်";s:2:"ml";s:42:"မွန်ဂိုလီးယန်း";s:2:"mn";s:15:"မာရသီ";s:2:"mr";s:12:"မလေး";s:2:"ms";s:27:"မောလ္တီစ်";s:2:"mt";s:30:"မြန်မာဘာသာ";s:2:"my";s:18:"yaren kasar norway";s:2:"nn";s:20:"yaren mutanen norway";s:2:"no";s:10:"yakut dili";s:3:"sah";s:8:"yakouteg";s:3:"sah";s:5:"yakut";s:3:"sah";s:8:"yakutça";s:3:"sah";s:12:"yukreeniyaan";s:2:"uk";s:7:"yiddish";s:2:"yi";s:11:"yahudi dili";s:2:"yi";s:7:"yídish";s:2:"yi";s:7:"yadhish";s:2:"yi";s:6:"yidiş";s:2:"yi";s:8:"yorùbá";s:2:"yo";s:6:"yoruba";s:2:"yo";s:9:"yorubakan";s:2:"yo";s:7:"yorouba";s:2:"yo";s:9:"yorubagbe";s:2:"yo";s:8:"yorubera";s:2:"yo";s:8:"yorrubaa";s:2:"yo";s:8:"yarbanci";s:2:"yo";s:8:"yôrobà";s:2:"yo";s:11:"yoruba simi";s:2:"yo";s:7:"yoruuba";s:2:"yo";s:8:"yorubaca";s:2:"yo";s:8:"yorubcha";s:2:"yo";s:23:"yksinkertaistettu kiina";s:7:"zh-hans";s:11:"yleisarabia";s:6:"ar-001";s:13:"yola-fonyicha";s:3:"dyo";s:18:"မချာမီ";s:3:"jmc";s:24:"မာခွန်ဒီ";s:3:"kde";s:21:"မာဆိုင်";s:3:"mas";s:12:"မီရု";s:3:"mer";s:36:"မိုရှီစ်ယန်း";s:3:"mfe";s:40:"မာခူဝါ-မီအီတို";s:3:"mgh";s:12:"မီတာ";s:3:"mgo";s:27:"မိုဟော့ခ်";s:3:"moh";s:21:"မန်ဒန်း";s:3:"mua";s:12:"yezhoù lies";s:3:"mul";s:11:"yezh dianav";s:3:"und";s:85:"မသိ သို့မဟုတ် မရှိ သော ဘာသာစကား";s:3:"und";s:65:"မိုရိုကန် တွမ်မဇိုတ် စံ";s:3:"zgh";s:18:"yevropa ispanchasi";s:5:"es-es";s:20:"yaren kasar portugal";s:5:"pt-pt";s:21:"yevropa portugalchasi";s:5:"pt-pt";s:12:"yuzev-perseg";s:3:"jpr";s:17:"yahudi farsçası";s:3:"jpr";s:12:"yuzev-arabeg";s:3:"jrb";s:17:"yahudi arapçası";s:3:"jrb";s:21:"မန်ချူး";s:3:"mnc";s:21:"မနိပူရီ";s:3:"mni";s:3:"yao";s:3:"yao";s:8:"yao dili";s:3:"yao";s:11:"yao-sprache";s:3:"yao";s:13:"yao-schpraach";s:3:"yao";s:11:"yao (bantu)";s:3:"yao";s:11:"yao-sprooch";s:3:"yao";s:6:"yapés";s:3:"yap";s:10:"yapiz dili";s:3:"yap";s:5:"yapeg";s:3:"yap";s:6:"yapeà";s:3:"yap";s:6:"yapese";s:3:"yap";s:9:"yapesisch";s:3:"yap";s:9:"yapesigbe";s:3:"yap";s:6:"yapois";s:3:"yap";s:6:"yapees";s:3:"yap";s:9:"yapesesch";s:3:"yap";s:8:"yapesisk";s:3:"yap";s:8:"yapeesch";s:3:"yap";s:6:"yapais";s:3:"yap";s:7:"yapeză";s:3:"yap";s:6:"yapça";s:3:"yap";s:7:"yangben";s:3:"yav";s:10:"yangbengbe";s:3:"yav";s:8:"yangbeni";s:3:"yav";s:13:"yupik central";s:3:"esu";s:14:"youpik central";s:3:"esu";s:14:"yupik centrale";s:3:"esu";s:8:"yup’ik";s:3:"esu";s:5:"yupik";s:3:"ypk";s:25:"yupik środkowosyberyjski";s:3:"esu";s:5:"yemba";s:3:"ybb";s:8:"yembagbe";s:3:"ybb";}i:606;a:100:{s:18:"ਮਾਪੁਚੇ";s:3:"arn";s:15:"ਮੈਂਕਸ";s:2:"gv";s:15:"ਮੈਥਲੀ";s:3:"mai";s:21:"ਮੇਲੇਗਸੀ";s:2:"mg";s:15:"ਮਾਉਰੀ";s:2:"mi";s:27:"ਮੈਕਡੋਨੀਆਈ";s:2:"mk";s:18:"ਮਲਿਆਲਮ";s:2:"ml";s:24:"ਮੰਗੋਲੀਅਨ";s:2:"mn";s:15:"ਮਰਾਠੀ";s:2:"mr";s:9:"ਮਲਯ";s:2:"ms";s:21:"ਮਾਲਟੀਜ਼";s:2:"mt";s:16:"نائورویی";s:2:"na";s:10:"ناورُ";s:2:"na";s:14:"ناۋرۇچە";s:2:"na";s:10:"ناپلی";s:3:"nap";s:20:"نیٖپالیٹَن";s:3:"nap";s:16:"ناپولىچە";s:3:"nap";s:29:"ناروییَن بوکمال";s:2:"nb";s:35:"نورۋىگىيە بوكمالچە";s:2:"nb";s:27:"نارویجین بوکمل";s:2:"nb";s:10:"نپالی";s:2:"ne";s:14:"نیٚپٲلۍ";s:2:"ne";s:12:"نېپالي";s:2:"ne";s:14:"نېپالچە";s:2:"ne";s:12:"نیپالی";s:2:"ne";s:16:"نواریایی";s:3:"new";s:14:"نیٚواری";s:3:"new";s:16:"نېۋارىچە";s:3:"new";s:16:"ندونگاچە";s:2:"ng";s:10:"نیویی";s:3:"niu";s:14:"نِیویَن";s:3:"niu";s:14:"نيۇئېچە";s:3:"niu";s:26:"نرس جدید نروژی";s:2:"nn";s:34:"ناروییَن نَے نورسک";s:2:"nn";s:33:"ناروېئي (نائنورسک)";s:2:"nn";s:33:"نورویجینی نینورسک";s:2:"nn";s:25:"نروژی (بوکمال)";s:2:"no";s:16:"ناروییَن";s:2:"no";s:14:"ناروېئې";s:2:"no";s:16:"نورۋېگچە";s:2:"no";s:16:"نارویجین";s:2:"no";s:16:"ناواهویی";s:2:"nv";s:12:"نَواجو";s:2:"nv";s:16:"ناۋاخوچە";s:2:"nv";s:16:"نیانجایی";s:2:"ny";s:14:"نِیَنجا";s:2:"ny";s:16:"نيانجاچە";s:2:"ny";s:12:"نیانجا";s:2:"ny";s:44:"ਮੱਧ ਐਟਲਸ ਤਮਾਜ਼ਿਤ";s:3:"tzm";s:12:"نغومبا";s:3:"jgo";s:12:"نگومبا";s:3:"jgo";s:16:"نگومباچە";s:3:"jgo";s:15:"ਮਚਾਮੇ";s:3:"jmc";s:15:"ਮਕੋਂਡ";s:3:"kde";s:12:"ਮਸਾਈ";s:3:"mas";s:12:"ਮੇਰੂ";s:3:"mer";s:24:"ਮੋਰੀਸਿਅਨ";s:3:"mfe";s:31:"ਮਖੋਵਾ-ਮਿੱਟੋ";s:3:"mgh";s:12:"ਮੇਟਾ";s:3:"mgo";s:18:"ਮੋਹਾਵਕ";s:3:"moh";s:21:"ਮੁੰਡੇਂਗ";s:3:"mua";s:8:"ناما";s:3:"naq";s:12:"نامایی";s:3:"naq";s:12:"ناماچە";s:3:"naq";s:6:"نکو";s:3:"nqo";s:12:"نىكوچە";s:3:"nqo";s:8:"نویر";s:3:"nus";s:23:"نیانکوله‌ای";s:3:"nyn";s:16:"نِیَنکول";s:3:"nyn";s:22:"نىيانكولېچە";s:3:"nyn";s:12:"نینکول";s:3:"nyn";s:27:"ਮੋਲਡਾਵੀਆਈ";s:5:"ro-md";s:23:"نامعلوم زبان";s:3:"und";s:62:"ਮਿਆਰੀ ਮੋਰੋਕੇਨ ਟਾਮਾਜ਼ਿਕ";s:3:"zgh";s:12:"ਮਾਰੀ";s:3:"chm";s:21:"ਮਨੀਪੁਰੀ";s:3:"mni";s:10:"نیاسی";s:3:"nia";s:10:"نِیاس";s:3:"nia";s:14:"نىئاسچە";s:3:"nia";s:10:"نغایی";s:3:"nog";s:10:"نوگاے";s:3:"nog";s:14:"نوغايچە";s:3:"nog";s:19:"نرس باستان";s:3:"non";s:29:"نواریایی کلاسیک";s:3:"nwc";s:14:"نېۋارچە";s:3:"nwc";s:23:"نیام‌وزیایی";s:3:"nym";s:20:"نِیَمویٚزی";s:3:"nym";s:20:"نيامۋېزىچە";s:3:"nym";s:14:"نیورویی";s:3:"nyo";s:12:"نِیورو";s:3:"nyo";s:16:"نىئوروچە";s:3:"nyo";s:14:"نزیمایی";s:3:"nzi";s:14:"نَظیٖما";s:3:"nzi";s:16:"نىزەماچە";s:3:"nzi";s:10:"نامبي";s:3:"sba";s:18:"نگامبايچە";s:3:"sba";s:23:"نیاسا ٹونٛگا";s:3:"tog";s:25:"نياسا توڭانچە";s:3:"tog";s:43:"ਮੈਕਸੀਕਨ ਸਪੈਨਿਸ਼";s:5:"es-mx";s:18:"نگېمبۇنچە";s:3:"nnh";}i:512;a:38:{s:15:"මපුචෙ";s:3:"arn";s:9:"부기어";s:3:"bug";s:24:"මැන්ක්ස්";s:2:"gv";s:18:"මලගාසි";s:2:"mg";s:18:"මාවොරි";s:2:"mi";s:36:"මැසිඩෝනියානු";s:2:"mk";s:21:"මලයාලම්";s:2:"ml";s:33:"මොංගෝලියානු";s:2:"mn";s:15:"මරාති";s:2:"mr";s:12:"මැලේ";s:2:"ms";s:24:"මොල්ටිස්";s:2:"mt";s:12:"רומאנש";s:2:"rm";s:12:"רומנית";s:2:"ro";s:14:"רומעניש";s:2:"ro";s:10:"רוסית";s:2:"ru";s:10:"רוסיש";s:2:"ru";s:14:"רוסיניש";s:3:"rue";s:56:"මධ්‍යම ඇට්ලස් ටමසිට්";s:3:"tzm";s:18:"මැකාමී";s:3:"jmc";s:24:"මැකොන්ඩ්";s:3:"kde";s:15:"මසායි";s:3:"mas";s:12:"මෙරු";s:3:"mer";s:30:"මොරිස්යෙම්";s:3:"mfe";s:28:"මඛුවා-මීටෝ";s:3:"mgh";s:12:"මෙටා";s:3:"mgo";s:24:"මොහොව්ක්";s:3:"moh";s:15:"ムンダン語";s:3:"mua";s:21:"මුන්ඩන්";s:3:"mua";s:10:"רומבו";s:3:"rof";s:8:"רווא";s:3:"rwk";s:12:"부리아타";s:3:"bua";s:14:"ראג׳סטן";s:3:"raj";s:12:"רפאנוי";s:3:"rap";s:18:"ררוטונגאן";s:3:"rar";s:14:"רומאנית";s:3:"rom";s:18:"ムブンドゥ語";s:3:"umb";s:52:"මෙක්සිකානු ස්පාඤ්ඤ";s:5:"es-mx";s:30:"ムスリム・タタール語";s:3:"ttt";}i:990;a:50:{s:15:"மபுசே";s:3:"arn";s:9:"世界文";s:2:"eo";s:61:"மேற்கத்திய ஃப்ரிஷியன்";s:2:"fy";s:24:"மேங்க்ஸ்";s:2:"gv";s:18:"மைதிலி";s:3:"mai";s:24:"மோக்க்ஷா";s:3:"mdf";s:18:"மலகாஸி";s:2:"mg";s:30:"மார்ஷெலிஷ்";s:2:"mh";s:12:"மௌரி";s:2:"mi";s:33:"மின்னாங்கபௌ";s:3:"min";s:33:"மாஸிடோனியன்";s:2:"mk";s:24:"மலையாளம்";s:2:"ml";s:30:"மங்கோலியன்";s:2:"mn";s:21:"மராத்தி";s:2:"mr";s:15:"மலாய்";s:2:"ms";s:24:"மால்டிஸ்";s:2:"mt";s:30:"மிரான்டீஸ்";s:3:"mwl";s:56:"மத்திய அட்லஸ் தமசைட்";s:3:"tzm";s:74:"மாடர்ன் ஸ்டாண்டர்ட் அரபிக்";s:6:"ar-001";s:18:"மாசெம்";s:3:"jmc";s:21:"மகொண்டே";s:3:"kde";s:18:"மாசாய்";s:3:"mas";s:12:"மெரு";s:3:"mer";s:27:"மொரிசியன்";s:3:"mfe";s:34:"மகுவா-மீட்டோ";s:3:"mgh";s:12:"மேடா";s:3:"mgo";s:24:"மோஹாவ்க்";s:3:"moh";s:24:"முன்டாங்";s:3:"mua";s:33:"மோல்டாவியன்";s:5:"ro-md";s:71:"மொழி உள்ளடக்கம் ஏதுமில்லை";s:3:"zxx";s:12:"மாரி";s:3:"chm";s:34:"மத்திய டச்சு";s:3:"dum";s:43:"மத்திய ஆங்கிலம்";s:3:"enm";s:46:"மத்திய ஃப்ரென்ச்";s:3:"frm";s:47:"மத்திய ஹை ஜெர்மன்";s:3:"gmh";s:18:"மாங்க்";s:3:"hmn";s:18:"மோங்கோ";s:3:"lol";s:21:"மதுரீஸ்";s:3:"mad";s:15:"மகாஹி";s:3:"mag";s:21:"மகாசார்";s:3:"mak";s:30:"மான்டிங்கோ";s:3:"man";s:24:"மான்டார்";s:3:"mdr";s:18:"மென்டீ";s:3:"men";s:34:"மத்திய ஐரிஷ்";s:3:"mga";s:24:"மிக்மாக்";s:3:"mic";s:15:"மன்சு";s:3:"mnc";s:21:"மனிபூரி";s:3:"mni";s:18:"மோஸ்ஸி";s:3:"mos";s:24:"மார்வாரி";s:3:"mwr";s:52:"மெக்சிகன் ஸ்பானிஷ்";s:5:"es-mx";}i:532;a:32:{s:12:"马普切文";s:3:"arn";s:12:"ヴォロ語";s:3:"vro";s:12:"프랑스어";s:2:"fr";s:18:"프리우리안어";s:3:"fur";s:15:"프리지아어";s:2:"fy";s:12:"马恩岛文";s:2:"gv";s:18:"리투아니아어";s:2:"lt";s:15:"马尔加什文";s:2:"mg";s:12:"马绍尔文";s:2:"mh";s:12:"马其顿文";s:2:"mk";s:18:"马拉雅拉姆文";s:2:"ml";s:12:"马拉地文";s:2:"mr";s:9:"马来文";s:2:"ms";s:12:"马耳他文";s:2:"mt";s:21:"ヴェネツィア語";s:3:"vec";s:15:"ヴェプス語";s:3:"vep";s:21:"ヴォラピュク語";s:2:"vo";s:15:"ヴォート語";s:3:"vot";s:12:"马切姆文";s:3:"jmc";s:12:"马孔德文";s:3:"kde";s:9:"马夸文";s:3:"mgh";s:12:"ヴァイ語";s:3:"vai";s:15:"ヴンジョ語";s:3:"vun";s:24:"프랑스어 (캐나다)";s:5:"fr-ca";s:24:"프랑스어 (스위스)";s:5:"fr-ch";s:9:"马里文";s:3:"chm";s:12:"马都拉文";s:3:"mad";s:12:"马加伊文";s:3:"mag";s:9:"马坝文";s:3:"mde";s:15:"马尔瓦利文";s:3:"mwr";s:9:"马法文";s:3:"maf";s:15:"ヴァリス語";s:3:"wae";}i:340;a:61:{s:12:"馬普切文";s:3:"arn";s:21:"तिब्बती";s:2:"bo";s:18:"तिबेटी";s:2:"bo";s:40:"तल्लो सोर्बियन";s:3:"dsb";s:15:"馬拉加什文";s:2:"mg";s:12:"馬紹爾文";s:2:"mh";s:12:"馬其頓文";s:2:"mk";s:18:"馬來亞拉姆文";s:2:"ml";s:12:"馬拉地文";s:2:"mr";s:9:"馬來文";s:2:"ms";s:12:"馬爾他文";s:2:"mt";s:9:"룬디어";s:2:"rn";s:27:"तैचेल्हित";s:3:"shi";s:27:"ताशेल्हिट";s:3:"shi";s:12:"तमिल";s:2:"ta";s:15:"तामिळ";s:2:"ta";s:15:"तामिल";s:2:"ta";s:18:"तेलुगू";s:2:"te";s:15:"तेलगू";s:2:"te";s:18:"तेलुगु";s:2:"te";s:15:"तेतुम";s:3:"tet";s:15:"ताजिक";s:2:"tg";s:30:"तिग्रीन्या";s:2:"ti";s:30:"तिग्रिन्या";s:2:"ti";s:24:"तुर्कमेन";s:2:"tk";s:21:"तागालोग";s:2:"tl";s:24:"त्स्वाना";s:2:"tn";s:18:"तुर्की";s:2:"tr";s:15:"तातार";s:2:"tt";s:12:"तातर";s:2:"tt";s:21:"तम्बूका";s:3:"tum";s:24:"तुम्बुका";s:3:"tum";s:24:"ताहितियन";s:2:"ty";s:24:"ताहितीयन";s:2:"ty";s:24:"तुवीनियन";s:3:"tyv";s:12:"तैता";s:3:"dav";s:15:"तायता";s:3:"dav";s:15:"ताइता";s:3:"dav";s:12:"馬恰美文";s:3:"jmc";s:12:"馬孔德文";s:3:"kde";s:9:"馬賽文";s:3:"mas";s:9:"馬夸文";s:3:"mgh";s:12:"삼부루어";s:3:"saq";s:12:"तेसो";s:3:"teo";s:27:"तासाव्हाक";s:3:"twq";s:21:"तासावाक";s:3:"twq";s:9:"馬里文";s:3:"chm";s:9:"룬다어";s:3:"lun";s:12:"馬都拉文";s:3:"mad";s:12:"馬加伊文";s:3:"mag";s:9:"馬巴文";s:3:"mde";s:15:"馬爾尼裡文";s:3:"mwr";s:18:"तेरेनो";s:3:"ter";s:9:"तिव";s:3:"tiv";s:21:"तोकेलाऊ";s:3:"tkl";s:24:"त्लिंगित";s:3:"tli";s:21:"तामाशेक";s:3:"tmh";s:30:"त्सिमीशियन";s:3:"tsi";s:18:"तुवालु";s:3:"tvl";s:15:"त्याप";s:3:"kcg";s:9:"馬法文";s:3:"maf";}i:580;a:36:{s:16:"جازايرية";s:3:"arq";s:12:"جٔرمَن";s:2:"de";s:8:"جرمن";s:2:"de";s:14:"جونخایی";s:2:"dz";s:12:"جاپٲنۍ";s:2:"ja";s:12:"جاپانی";s:2:"ja";s:15:"جاوه‌ای";s:2:"jv";s:16:"جَوَنیٖز";s:2:"jv";s:12:"جاوايې";s:2:"jv";s:8:"جاوی";s:2:"jv";s:16:"جارجِیَن";s:2:"ka";s:16:"جورجيائي";s:2:"ka";s:10:"جارجی";s:2:"ka";s:21:"جنوٗبی سَمی";s:3:"sma";s:36:"جەنۇبى سامى تىللىرى";s:3:"sma";s:19:"جنوبی سامی";s:3:"sma";s:19:"جنوبی ستھو";s:2:"st";s:25:"جەنۇبى سوتوچە";s:2:"st";s:21:"جنوبی سوتھو";s:2:"st";s:9:"테툼어";s:3:"tet";s:12:"جۇاڭچە";s:2:"za";s:19:"جولا فونيا";s:3:"dyo";s:12:"جولاچە";s:3:"dyo";s:21:"جنوب ڈیٚبیل";s:2:"nr";s:31:"جەنۇبى ندەبەلەچە";s:2:"nr";s:9:"테조어";s:3:"teo";s:27:"جنوٗبی اَلتایی";s:3:"alt";s:40:"جەنۇبى ئالتاي تىللىرى";s:3:"alt";s:12:"جغتایی";s:3:"chg";s:21:"جوڈیو فارسی";s:3:"jpr";s:19:"جوڈیو عربی";s:3:"jrb";s:4:"جو";s:3:"kaj";s:8:"جُوٗ";s:3:"kaj";s:8:"جۇچە";s:3:"kaj";s:12:"테레노어";s:3:"ter";s:12:"澤納加文";s:3:"zen";}i:508;a:57:{s:19:"알제리 아랍어";s:3:"arq";s:24:"ボージュプリー語";s:3:"bho";s:15:"ボスニア語";s:2:"bs";s:34:"පහළ සෝබියානු";s:3:"dsb";s:10:"פרסית";s:2:"fa";s:27:"පර්සියානු";s:2:"fa";s:14:"פּערסיש";s:2:"fa";s:8:"פולה";s:2:"ff";s:10:"פינית";s:2:"fi";s:12:"פֿיניש";s:2:"fi";s:12:"פיג׳ית";s:2:"fj";s:14:"פֿידזשי";s:2:"fj";s:16:"פארואזית";s:2:"fo";s:16:"פֿאַראיש";s:2:"fo";s:18:"ප්‍රංශ";s:2:"fr";s:24:"פֿראַנצויזיש";s:2:"fr";s:25:"פריזית צפונית";s:3:"frr";s:14:"פריולית";s:3:"fur";s:12:"פריזית";s:2:"fy";s:23:"פידזשי הינדי";s:3:"hif";s:16:"פנג׳אבית";s:2:"pa";s:16:"פנגסינאן";s:3:"pag";s:14:"פמפאניה";s:3:"pam";s:16:"פפיאמנטו";s:3:"pap";s:8:"פאלי";s:2:"pi";s:12:"פולנית";s:2:"pl";s:18:"පෝලන්ත";s:2:"pl";s:14:"פּויליש";s:2:"pl";s:16:"פּרייסיש";s:3:"prg";s:10:"פאשטו";s:2:"ps";s:15:"පෂ්ටො";s:2:"ps";s:16:"פּאַשטאָ";s:2:"ps";s:18:"פורטוגלית";s:2:"pt";s:24:"පෘතුගීසි";s:2:"pt";s:22:"פּארטוגעזיש";s:2:"pt";s:35:"פורטוגלית ברזילאית";s:5:"pt-br";s:15:"알바니아어";s:2:"sq";s:9:"ボド語";s:3:"brx";s:18:"פיליפינית";s:3:"fil";s:21:"පිලිපීන";s:3:"fil";s:20:"פֿיליפּינא";s:3:"fil";s:10:"פלמית";s:5:"nl-be";s:14:"פֿלעמיש";s:5:"nl-be";s:12:"פניקית";s:3:"phn";s:21:"알 수 없는 언어";s:3:"und";s:35:"פורטוגלית אירופאית";s:5:"pt-pt";s:12:"알류트어";s:3:"ale";s:6:"פנג";s:3:"fan";s:10:"פאנטי";s:3:"fat";s:6:"פון";s:3:"fon";s:27:"פריזיאן מזרחית";s:3:"frs";s:23:"פרסית יהודית";s:3:"jpr";s:10:"פלאבי";s:3:"pal";s:12:"פלוואן";s:3:"pau";s:21:"פרסית עתיקה";s:3:"peo";s:14:"פונפיאן";s:3:"pon";s:27:"פרובנסאל עתיקה";s:3:"pro";}i:734;a:47:{s:37:"મોરોક્કન અરબી";s:3:"ary";s:18:"માંક્સ";s:2:"gv";s:18:"મૈથિલી";s:3:"mai";s:15:"મોક્ષ";s:3:"mdf";s:18:"મલાગસી";s:2:"mg";s:24:"માર્શલીઝ";s:2:"mh";s:15:"માઓરી";s:2:"mi";s:36:"મિનાંગ્કાબાઉ";s:3:"min";s:30:"મેસેડોનિયન";s:2:"mk";s:18:"મલયાલમ";s:2:"ml";s:27:"મોંગોલિયન";s:2:"mn";s:15:"મરાઠી";s:2:"mr";s:9:"મલય";s:2:"ms";s:21:"માલ્ટિઝ";s:2:"mt";s:21:"મિરાંડી";s:3:"mwl";s:62:"મોડર્ન સ્ટાન્ડર્ડ અરબી";s:6:"ar-001";s:15:"મકામે";s:3:"jmc";s:21:"મકોન્ડે";s:3:"kde";s:12:"મસાઇ";s:3:"mas";s:12:"મેરુ";s:3:"mer";s:27:"મોરીસ્યેન";s:3:"mfe";s:37:"માખુવા-મીટ્ટુ";s:3:"mgh";s:12:"મેતા";s:3:"mgo";s:15:"મોહૌક";s:3:"moh";s:24:"મુનડાન્ગ";s:3:"mua";s:27:"મોલડાવિયન";s:5:"ro-md";s:12:"મારી";s:3:"chm";s:19:"મધ્ય ડચ";s:3:"dum";s:40:"મિડિલ અંગ્રેજી";s:3:"enm";s:34:"મિડિલ ફ્રેંચ";s:3:"frm";s:38:"મધ્ય હાઇ જર્મન";s:3:"gmh";s:12:"મોંગ";s:3:"hmn";s:12:"મોગો";s:3:"lol";s:21:"માદુરીસ";s:3:"mad";s:12:"મગહી";s:3:"mag";s:15:"મકાસર";s:3:"mak";s:27:"મન્ડિન્ગો";s:3:"man";s:15:"મંડાર";s:3:"mdr";s:18:"મેન્ડે";s:3:"men";s:31:"મિડિલ આઇરિશ";s:3:"mga";s:18:"મિકમેક";s:3:"mic";s:18:"માન્ચુ";s:3:"mnc";s:21:"મણિપુરી";s:3:"mni";s:18:"મોસ્સી";s:3:"mos";s:21:"મારવાડી";s:3:"mwr";s:46:"મેક્સિકન સ્પેનિશ";s:5:"es-mx";s:31:"મુસ્લિમ તાટ";s:3:"ttt";}i:784;a:6:{s:19:"모로코 아랍어";s:3:"ary";s:12:"모크샤어";s:3:"mdf";s:21:"耐諾斯克挪威文";s:2:"nn";s:15:"모리스얀어";s:3:"mfe";s:12:"모호크어";s:3:"moh";s:9:"모시어";s:3:"mos";}i:705;a:145:{s:21:"摩洛哥阿拉伯文";s:3:"ary";s:15:"ቡልጋሪኛ";s:2:"bg";s:14:"کاتالان";s:2:"ca";s:12:"کَتلان";s:2:"ca";s:12:"کټلاني";s:2:"ca";s:18:"کاٹالانین";s:2:"ca";s:12:"کَمورو";s:2:"ch";s:10:"کوردی";s:3:"ckb";s:21:"کردی سورانی";s:3:"ckb";s:10:"کورسی";s:2:"co";s:16:"کارسِکَن";s:2:"co";s:16:"کوراسیکن";s:2:"co";s:12:"کریایی";s:2:"cr";s:6:"کری";s:2:"cr";s:25:"کرٕمیٖن تُرکی";s:3:"crh";s:12:"کاشوبی";s:3:"csb";s:20:"کَشوٗبِیَن";s:3:"csb";s:41:"کینَڈِیٲیی اَنٛگریٖزۍ";s:5:"en-ca";s:29:"کینیڈین انگریزی";s:5:"en-ca";s:37:"کونکانی گن (خط لاتین)";s:8:"gom-latn";s:10:"کروات";s:2:"hr";s:16:"کروشِیَن";s:2:"hr";s:14:"کروواتي";s:2:"hr";s:10:"کراتی";s:2:"hr";s:49:"کانادایی شرقی (هجاهای بومی)";s:8:"ike-cans";s:45:"کانادایی شرقی (خط لاتینی)";s:8:"ike-latn";s:21:"کارا کَلپَک";s:3:"kaa";s:14:"کَبایِل";s:3:"kab";s:18:"کاباردینی";s:3:"kbd";s:20:"کَبارڈِیَن";s:3:"kbd";s:12:"کنگویی";s:2:"kg";s:12:"کونٛگو";s:2:"kg";s:10:"کانگو";s:2:"kg";s:10:"کھوار";s:3:"khw";s:10:"کهوار";s:3:"khw";s:16:"کیکویویی";s:2:"ki";s:14:"کِکُیوٗ";s:2:"ki";s:8:"کیکو";s:2:"ki";s:16:"کرمانجکی";s:3:"kiu";s:16:"کوانیاما";s:2:"kj";s:18:"کُوانیاما";s:2:"kj";s:10:"کازَخ";s:2:"kk";s:18:"کَلالِسُت";s:2:"kl";s:41:"کمبوډيايې يا د کمبوډيا";s:2:"km";s:19:"کاناده‌ای";s:2:"kn";s:10:"کَنَڑ";s:2:"kn";s:10:"کنأډه";s:2:"kn";s:12:"کنّاڈا";s:2:"kn";s:13:"کره‌ای";s:2:"ko";s:12:"کوریَن";s:2:"ko";s:14:"کوريائي";s:2:"ko";s:14:"کوریائی";s:2:"ko";s:21:"کومی پرمیاک";s:3:"koi";s:18:"کانوریایی";s:2:"kr";s:14:"کَنوٗری";s:2:"kr";s:25:"کراچیے بَلکار";s:3:"krc";s:12:"کشمیری";s:2:"ks";s:10:"کٲشُر";s:7:"ks-arab";s:28:"کشمیری (خط عربی)";s:7:"ks-arab";s:38:"کشمیری (خط دیواناگری)";s:7:"ks-deva";s:8:"کردی";s:2:"ku";s:12:"کُردِش";s:2:"ku";s:8:"کردي";s:2:"ku";s:8:"کردش";s:2:"ku";s:26:"کردی (خط لاتین)";s:7:"ku-latn";s:14:"کومیایی";s:2:"kv";s:8:"کومی";s:2:"kv";s:14:"کرنوالی";s:2:"kw";s:12:"کورنِش";s:2:"kw";s:10:"کورنش";s:2:"kw";s:12:"کِرگِز";s:2:"ky";s:10:"کرګيز";s:2:"ky";s:12:"کرغیزی";s:2:"ky";s:10:"کریکی";s:3:"mus";s:10:"کریٖک";s:3:"mus";s:12:"ቡርማኛ";s:2:"my";s:12:"کچوایی";s:2:"qu";s:16:"کُویشُوا";s:2:"qu";s:12:"کویچوآ";s:2:"qu";s:26:"کینیارواندایی";s:2:"rw";s:20:"کِنیاوِندا";s:2:"rw";s:22:"کینیاروانڈا";s:2:"rw";s:12:"桑塔利文";s:3:"sat";s:9:"桑戈文";s:2:"sg";s:12:"کالمِک";s:3:"xal";s:10:"کھوسا";s:2:"xh";s:14:"کانتونی";s:6:"zh-yue";s:12:"کاپٹِک";s:3:"cop";s:14:"کامبایی";s:3:"kam";s:10:"کامبا";s:3:"kam";s:22:"کابووردیانو";s:3:"kea";s:18:"کوجراچینی";s:3:"khq";s:14:"کالنجین";s:3:"kln";s:12:"کنکانی";s:3:"kok";s:14:"کونکَنی";s:3:"kok";s:12:"کونکنی";s:3:"kok";s:12:"کوروخی";s:3:"kru";s:12:"کُرُکھ";s:3:"kru";s:12:"摩霍克文";s:3:"moh";s:12:"کوازیو";s:3:"nmg";s:11:"کیچه‌";s:3:"quc";s:15:"摩尔多瓦文";s:5:"ro-md";s:15:"摩爾多瓦文";s:5:"ro-md";s:12:"桑布鲁文";s:3:"saq";s:9:"桑古文";s:3:"sbp";s:25:"کویرابورا سنی";s:3:"ses";s:12:"کوموری";s:3:"swb";s:23:"کانگو سواحلی";s:3:"swc";s:14:"کلینگون";s:3:"tlh";s:16:"کِلِنگون";s:3:"tlh";s:16:"کلينګاني";s:3:"tlh";s:10:"کلنگن";s:3:"tlh";s:54:"کانٛہہ تہِ لِسانیاتی مواد نہٕ";s:3:"zxx";s:37:"کوئی لسانی مواد نہیں";s:3:"zxx";s:29:"کَنیڈیَن فریٚنچ";s:5:"fr-ca";s:31:"کینیڈین فرانسیسی";s:5:"fr-ca";s:12:"کادویی";s:3:"cad";s:8:"کاڈو";s:3:"cad";s:12:"کاریبی";s:3:"car";s:10:"کارِب";s:3:"car";s:12:"کاچینی";s:3:"kac";s:10:"کاچِن";s:3:"kac";s:14:"کاویایی";s:3:"kaw";s:8:"کَوی";s:3:"kaw";s:8:"کورو";s:3:"kfo";s:10:"کھاسی";s:3:"kha";s:18:"کھوتَنیٖز";s:3:"kho";s:20:"کیمبوندویی";s:3:"kmb";s:18:"کِمبُندوٗ";s:3:"kmb";s:16:"کوسرییَن";s:3:"kos";s:15:"کپله‌ای";s:3:"kpe";s:12:"کَپیلی";s:3:"kpe";s:18:"کَریلِیَن";s:3:"krl";s:12:"کومیکی";s:3:"kum";s:10:"کُمِک";s:3:"kum";s:10:"کوتنی";s:3:"kut";s:14:"کُتینَے";s:3:"kut";s:29:"کلاسِکَل نیواری";s:3:"nwc";s:12:"桑達韋文";s:3:"sad";s:12:"翁本杜文";s:3:"umb";s:19:"کونکانی گن";s:3:"gom";s:45:"کونکانی گن (خط دیواناگری)";s:8:"gom-deva";s:39:"کونکانی گن (خط کانادا)";s:8:"gom-knda";s:45:"کونکانی گن (خط مالایالمی)";s:8:"gom-mlym";s:35:"کونکانی گن (خط عربی)";s:8:"gom-arab";}i:196;a:12:{s:21:"Ägyptisches arabisch";s:3:"arz";s:20:"Äjiptesch arahbesch";s:3:"arz";s:9:"Änglisch";s:2:"en";s:9:"Änglesch";s:2:"en";s:20:"Änglesch uß kanada";s:5:"en-ca";s:31:"Änglesch uß jruußbrettannije";s:5:"en-gb";s:9:"Äßnesch";s:2:"et";s:9:"로반어";s:3:"jbo";s:9:"로지어";s:3:"loz";s:10:"Ägyptisch";s:3:"egy";s:9:"Ägyptsch";s:3:"egy";s:26:"Änglesch uß außtraalije";s:5:"en-au";}i:696;a:3:{s:40:"ઈજિપ્શિયન અરબી";s:3:"arz";s:6:"ઈવ";s:2:"ee";s:21:"墨西哥西班牙文";s:5:"es-mx";}i:60;a:28:{s:19:"이집트 아랍어";s:3:"arz";s:10:"Форсӣ";s:2:"fa";s:10:"Фулах";s:2:"ff";s:10:"Финнӣ";s:2:"fi";s:12:"Фарозӣ";s:2:"fo";s:18:"Фаронсавӣ";s:2:"fr";s:20:"Фриулијски";s:3:"fur";s:16:"Фрисианӣ";s:2:"fy";s:12:"이그보어";s:2:"ig";s:18:"이누피아크어";s:2:"ik";s:12:"이로코어";s:3:"ilo";s:9:"이도어";s:2:"io";s:15:"이탈리아어";s:2:"it";s:18:"이눅티투트어";s:2:"iu";s:12:"이디시어";s:2:"yi";s:9:"이픽어";s:3:"efi";s:21:"이집트어 (고대)";s:3:"egy";s:18:"Филиппинӣ";s:3:"fil";s:20:"Феничански";s:3:"phn";s:19:"이나리 사미어";s:3:"smn";s:37:"ᏄᏬᎵᏍᏛᎾ ᎦᏬᏂᎯᏍᏗ";s:3:"und";s:12:"이카죽어";s:3:"eka";s:12:"이원도어";s:3:"ewo";s:8:"Фанг";s:3:"fan";s:10:"Фанти";s:3:"fat";s:6:"Фон";s:3:"fon";s:9:"이반어";s:3:"iba";s:15:"이비비오어";s:3:"ibb";}i:80;a:72:{s:40:"ఈజిప్ట్ అరబిక్";s:3:"arz";s:9:"ఈవీ";s:2:"ee";s:16:"испански";s:2:"es";s:19:"испан тілі";s:2:"es";s:14:"испанча";s:2:"es";s:12:"испани";s:2:"es";s:16:"испайнаг";s:2:"es";s:18:"испанский";s:2:"es";s:30:"ఈస్టొనియన్";s:2:"et";s:18:"ирландски";s:2:"ga";s:21:"ирланд тілі";s:2:"ga";s:16:"ирландча";s:2:"ga";s:10:"ирски";s:2:"ga";s:12:"ирланд";s:2:"ga";s:18:"ирландиаг";s:2:"ga";s:20:"ирландский";s:2:"ga";s:10:"иврит";s:2:"he";s:14:"ивритте";s:2:"he";s:22:"интерлингва";s:2:"ia";s:22:"интерлингво";s:2:"ia";s:24:"индонезийски";s:2:"id";s:23:"индонез тілі";s:2:"id";s:18:"индонезче";s:2:"id";s:22:"индонезиски";s:2:"id";s:16:"индонези";s:2:"id";s:26:"индонезийский";s:2:"id";s:24:"индонежански";s:2:"id";s:22:"интерлингве";s:2:"ie";s:8:"игбо";s:2:"ig";s:12:"игбочо";s:2:"ig";s:14:"инупиак";s:2:"ik";s:20:"инупијачки";s:2:"ik";s:10:"илоко";s:3:"ilo";s:18:"илокански";s:3:"ilo";s:20:"ингушетски";s:3:"inh";s:14:"ингушки";s:3:"inh";s:18:"ингушский";s:3:"inh";s:6:"идо";s:2:"io";s:9:"ఈడౌ";s:2:"io";s:18:"исландски";s:2:"is";s:12:"исланд";s:2:"is";s:16:"исландча";s:2:"is";s:20:"исландский";s:2:"is";s:20:"италиански";s:2:"it";s:23:"итальян тілі";s:2:"it";s:18:"италиянча";s:2:"it";s:22:"италијански";s:2:"it";s:10:"итали";s:2:"it";s:14:"италиаг";s:2:"it";s:22:"итальянский";s:2:"it";s:18:"инуктитут";s:2:"iu";s:22:"инуктитутта";s:2:"iu";s:9:"콘월어";s:2:"kw";s:8:"ирон";s:2:"os";s:8:"идиш";s:2:"yi";s:12:"идишче";s:2:"yi";s:10:"иддиш";s:2:"yi";s:25:"инари-саамски";s:3:"smn";s:19:"инари саам";s:3:"smn";s:25:"инари саамиче";s:3:"smn";s:31:"инарски лапонски";s:3:"smn";s:19:"инари сами";s:3:"smn";s:27:"инари-саамский";s:3:"smn";s:15:"无语言内容";s:3:"zxx";s:38:"ибериялық испан тілі";s:5:"es-es";s:29:"испанча (Европа)";s:5:"es-es";s:29:"източен фризски";s:3:"frs";s:30:"источнофризиски";s:3:"frs";s:8:"ибан";s:3:"iba";s:16:"ибанский";s:3:"iba";s:12:"ибибио";s:3:"ibb";s:14:"ижорски";s:3:"izh";}i:467;a:31:{s:18:"埃及阿拉伯文";s:3:"arz";s:12:"コタヴァ";s:3:"avk";s:15:"コルシカ語";s:2:"co";s:9:"埃维文";s:2:"ee";s:9:"埃維文";s:2:"ee";s:15:"埃米利安文";s:3:"egl";s:24:"埃斯特雷馬杜拉文";s:3:"ext";s:12:"コンゴ語";s:2:"kg";s:15:"コワール語";s:3:"khw";s:27:"コミ・ペルミャク語";s:3:"koi";s:9:"コミ語";s:2:"kv";s:24:"コーンウォール語";s:2:"kw";s:28:"උතුරු සාමි";s:2:"se";s:18:"උයිගර්";s:2:"ug";s:15:"උර්දු";s:2:"ur";s:21:"උස්බෙක්";s:2:"uz";s:9:"コサ語";s:2:"xh";s:12:"コプト語";s:3:"cop";s:12:"埃菲克文";s:3:"efi";s:24:"コイラ・チーニ語";s:3:"khq";s:15:"コンカニ語";s:3:"kok";s:43:"උතුරු එන්ඩිබෙලෙ";s:2:"nd";s:30:"コイラボロ・センニ語";s:3:"ses";s:12:"コモロ語";s:3:"swb";s:27:"コンゴ・スワヒリ語";s:3:"swc";s:15:"埃克丘克文";s:3:"eka";s:9:"埃蘭文";s:3:"elx";s:9:"コロ語";s:3:"kfo";s:15:"コータン語";s:3:"kho";s:15:"コスラエ語";s:3:"kos";s:9:"コム語";s:3:"bkm";}i:437;a:9:{s:21:"অসমীয়া";s:2:"as";s:58:"অস্ট্রিয়ান জার্মানি";s:5:"de-at";s:24:"অক্সিটান";s:2:"oc";s:15:"অরোমো";s:2:"om";s:28:"অজানা ভাষা";s:3:"und";s:52:"অস্ট্রেলীয় ইংরেজি";s:5:"en-au";s:21:"অদাগ্মে";s:3:"ada";s:15:"অজ্জু";s:3:"kaj";s:37:"অটোমান তুর্কি";s:3:"ota";}i:347;a:42:{s:30:"ഓസ്‌ട്രിയൻ";s:3:"ast";s:43:"ഓസ്‌ട്രിയൻ ജർമൻ";s:5:"de-at";s:18:"फ़ारसी";s:2:"fa";s:15:"फारसी";s:2:"fa";s:15:"फुलाह";s:2:"ff";s:18:"फ़िनिश";s:2:"fi";s:21:"फिन्निश";s:2:"fi";s:15:"फिनिश";s:2:"fi";s:15:"फ़ीजी";s:2:"fj";s:18:"फिजियन";s:2:"fj";s:24:"फिजियाली";s:2:"fj";s:24:"फ़ैरोइज़";s:2:"fo";s:15:"फरोइज";s:2:"fo";s:15:"फारोज";s:2:"fo";s:21:"फ़्रेंच";s:2:"fr";s:18:"फ्रेंच";s:2:"fr";s:30:"फ्रान्सेली";s:2:"fr";s:33:"फ्रीयुलीयान";s:3:"fur";s:33:"फ्रियुलियान";s:3:"fur";s:24:"फ्रिजीयन";s:2:"fy";s:30:"ഓക്‌സിറ്റൻ";s:2:"oc";s:9:"ślůnski";s:3:"szl";s:8:"śląski";s:3:"szl";s:27:"फ़िलिपीनो";s:3:"fil";s:24:"फिलिपिनो";s:3:"fil";s:24:"फिलिपिनी";s:3:"fil";s:24:"फ़्लेमिश";s:5:"nl-be";s:21:"फ्लेमिश";s:5:"nl-be";s:27:"फोएनिशियन";s:3:"phn";s:24:"फोनिशियन";s:3:"phn";s:61:"ഓസ്‌ട്രേലിയൻ ഇംഗ്ലീഷ്";s:5:"en-au";s:28:"średniowieczny niderlandzki";s:3:"dum";s:17:"średnioangielski";s:3:"enm";s:15:"फैन्ग";s:3:"fan";s:9:"फँग";s:3:"fan";s:15:"फन्टी";s:3:"fat";s:9:"फॉन";s:3:"fon";s:17:"średniofrancuski";s:3:"frm";s:25:"średnio-wysoko-niemiecki";s:3:"gmh";s:17:"średnioirlandzki";s:3:"mga";s:21:"ഓജിബ്വാ";s:2:"oj";s:49:"ഓട്ടോമൻ തുർക്കിഷ്";s:3:"ota";}i:902;a:3:{s:12:"Άβαρικ";s:2:"av";s:8:"Άσου";s:3:"asa";s:27:"Άγνωστη γλώσσα";s:3:"und";}i:82;a:309:{s:12:"котава";s:3:"avk";s:22:"каталонская";s:2:"ca";s:22:"каталёнская";s:2:"ca";s:20:"каталонски";s:2:"ca";s:14:"каталан";s:2:"ca";s:18:"каталанча";s:2:"ca";s:20:"каталайнаг";s:2:"ca";s:22:"каталанский";s:2:"ca";s:22:"каталонська";s:2:"ca";s:14:"кебуано";s:3:"ceb";s:29:"кюрдски (сорани)";s:3:"ckb";s:31:"курдська (сорані)";s:3:"ckb";s:22:"корсикански";s:2:"co";s:25:"корсикан тілі";s:2:"co";s:20:"корсиканча";s:2:"co";s:22:"корзикански";s:2:"co";s:12:"корсик";s:2:"co";s:24:"корсиканский";s:2:"co";s:24:"корсиканська";s:2:"co";s:16:"капизнон";s:3:"cps";s:8:"крии";s:2:"cr";s:6:"кри";s:2:"cr";s:18:"криийский";s:2:"cr";s:6:"крі";s:2:"cr";s:33:"крымска-татарская";s:3:"crh";s:30:"кримскотатарски";s:3:"crh";s:26:"кримскотурски";s:3:"crh";s:33:"крымско-татарский";s:3:"crh";s:34:"кримськотатарська";s:3:"crh";s:52:"крымска-татарская (лацініца)";s:8:"crh-latn";s:46:"къырымтатарджа (Кирилл)‎";s:8:"crh-cyrl";s:52:"крымска-татарская (кірыліца)";s:8:"crh-cyrl";s:16:"кашубски";s:3:"csb";s:16:"кашупски";s:3:"csb";s:24:"кашубианский";s:3:"csb";s:18:"кашубська";s:3:"csb";s:39:"канадзкая ангельская";s:5:"en-ca";s:35:"канадски английски";s:5:"en-ca";s:42:"канадалық ағылшын тілі";s:5:"en-ca";s:21:"канад англи";s:5:"en-ca";s:35:"канадӕйаг англисаг";s:5:"en-ca";s:39:"канадский английский";s:5:"en-ca";s:35:"каџунски француски";s:3:"frc";s:24:"каракалпашки";s:3:"kaa";s:24:"каракалпачки";s:3:"kaa";s:28:"каракалпакский";s:3:"kaa";s:26:"каракалпацька";s:3:"kaa";s:16:"кабилски";s:3:"kab";s:10:"кабил";s:3:"kab";s:14:"кабылча";s:3:"kab";s:12:"кабиле";s:3:"kab";s:20:"кабильский";s:3:"kab";s:20:"кабільська";s:3:"kab";s:18:"кабардиан";s:3:"kbd";s:22:"кабардински";s:3:"kbd";s:12:"кӕсгон";s:3:"kbd";s:24:"кабардинский";s:3:"kbd";s:24:"кабардинська";s:3:"kbd";s:20:"конгоански";s:2:"kg";s:10:"конго";s:2:"kg";s:22:"конґолезька";s:2:"kg";s:16:"коварски";s:3:"khw";s:10:"кикую";s:2:"ki";s:12:"кикуйю";s:2:"ki";s:16:"кикуйиче";s:2:"ki";s:12:"кикују";s:2:"ki";s:12:"кикуюү";s:2:"ki";s:12:"кікуйю";s:2:"ki";s:14:"кваняма";s:2:"kj";s:14:"квањама";s:2:"kj";s:12:"кунама";s:2:"kj";s:18:"казахская";s:2:"kk";s:16:"казаская";s:2:"kk";s:16:"казахски";s:2:"kk";s:14:"казакча";s:2:"kk";s:24:"казакстански";s:2:"kk";s:18:"казахский";s:2:"kk";s:14:"казашки";s:2:"kk";s:18:"казахська";s:2:"kk";s:35:"казаская (арабская)";s:7:"kk-arab";s:20:"калаалисут";s:2:"kl";s:24:"калаалисутча";s:2:"kl";s:18:"калалисут";s:2:"kl";s:22:"калааллісут";s:2:"kl";s:16:"кхмерски";s:2:"km";s:10:"кхмер";s:2:"km";s:12:"кмерче";s:2:"km";s:14:"кмерски";s:2:"km";s:12:"камбож";s:2:"km";s:18:"кхмерский";s:2:"km";s:18:"кхмерська";s:2:"km";s:14:"каннада";s:2:"kn";s:18:"каннадача";s:2:"kn";s:12:"канада";s:2:"kn";s:18:"карэйская";s:2:"ko";s:16:"корейски";s:2:"ko";s:19:"кәріс тілі";s:2:"ko";s:14:"корейче";s:2:"ko";s:16:"корејски";s:2:"ko";s:18:"корейский";s:2:"ko";s:18:"корейська";s:2:"ko";s:29:"карэйская (КНДР)";s:5:"ko-kp";s:25:"коми-пермяцки";s:3:"koi";s:28:"коми-пермь тілі";s:3:"koi";s:25:"коми-пермякча";s:3:"koi";s:27:"коми-пермјачки";s:3:"koi";s:21:"коми-пермяк";s:3:"koi";s:27:"коми-пермяцкий";s:3:"koi";s:23:"коми-пермски";s:3:"koi";s:30:"комі-перм’яцька";s:3:"koi";s:12:"канури";s:2:"kr";s:12:"канурі";s:2:"kr";s:31:"къарачай-малкъар";s:3:"krc";s:33:"карачай-балкарски";s:3:"krc";s:41:"карачаевско-балкарски";s:3:"krc";s:39:"карачаево-балкарский";s:3:"krc";s:39:"карачаєво-балкарська";s:3:"krc";s:8:"крио";s:3:"kri";s:20:"кинарајски";s:3:"krj";s:18:"кашмирски";s:2:"ks";s:21:"кашмир тілі";s:2:"ks";s:16:"кашмирче";s:2:"ks";s:12:"кашмир";s:2:"ks";s:14:"кашмири";s:2:"ks";s:20:"кашмірська";s:2:"ks";s:16:"колоњски";s:3:"ksh";s:10:"кёльш";s:3:"ksh";s:16:"колоніан";s:3:"ksh";s:16:"курдская";s:2:"ku";s:14:"кюрдски";s:2:"ku";s:17:"күрд тілі";s:2:"ku";s:12:"курдча";s:2:"ku";s:14:"курдски";s:2:"ku";s:8:"күрд";s:2:"ku";s:12:"курдаг";s:2:"ku";s:16:"курдский";s:2:"ku";s:16:"курдська";s:2:"ku";s:8:"коми";s:2:"kv";s:8:"комі";s:2:"kv";s:20:"корнуолски";s:2:"kw";s:12:"корниш";s:2:"kw";s:16:"корнишче";s:2:"kw";s:14:"корнски";s:2:"kw";s:10:"корны";s:2:"kw";s:20:"корнийский";s:2:"kw";s:20:"корнволски";s:2:"kw";s:20:"корнійська";s:2:"kw";s:18:"кыргыская";s:2:"ky";s:16:"киргизки";s:2:"ky";s:16:"кыргызча";s:2:"ky";s:16:"киргиски";s:2:"ky";s:12:"киргиз";s:2:"ky";s:20:"киргизский";s:2:"ky";s:18:"киргизька";s:2:"ky";s:31:"книжевен кинески";s:3:"lzh";s:19:"кырык мары";s:3:"mrj";s:8:"крик";s:3:"mus";s:8:"крік";s:3:"mus";s:10:"кечуа";s:2:"qu";s:14:"кечуача";s:2:"qu";s:18:"кечуански";s:2:"qu";s:18:"кичвански";s:3:"qug";s:20:"киняруанда";s:2:"rw";s:22:"киньяруанда";s:2:"rw";s:20:"кинярванда";s:2:"rw";s:22:"кинјаруанда";s:2:"rw";s:22:"кіньяруанда";s:2:"rw";s:12:"калмик";s:3:"xal";s:16:"калмички";s:3:"xal";s:18:"калмыцкий";s:3:"xal";s:18:"калмицька";s:3:"xal";s:10:"ксоса";s:2:"xh";s:10:"ксоза";s:2:"xh";s:12:"косача";s:2:"xh";s:8:"коса";s:2:"xh";s:10:"кхоса";s:2:"xh";s:18:"кантонски";s:3:"yue";s:20:"кантонский";s:3:"yue";s:20:"кантонська";s:3:"yue";s:18:"кітайская";s:2:"zh";s:16:"китайски";s:2:"zh";s:14:"кытайча";s:2:"zh";s:14:"кинески";s:2:"zh";s:14:"китайаг";s:2:"zh";s:18:"китайский";s:2:"zh";s:18:"китайська";s:2:"zh";s:53:"кытайча (жөнөкөйлөштүрүлгөн)";s:7:"zh-hans";s:31:"кытайча (салттуу)";s:7:"zh-hant";s:8:"кига";s:3:"cgg";s:8:"кіга";s:3:"cgg";s:14:"копцкая";s:3:"cop";s:14:"коптски";s:3:"cop";s:12:"коптаг";s:3:"cop";s:16:"коптский";s:3:"cop";s:16:"коптська";s:3:"cop";s:10:"камба";s:3:"kam";s:14:"камбача";s:3:"kam";s:42:"крэольская (Капа-Вэрдэ)";s:3:"kea";s:28:"кабовердиански";s:3:"kea";s:24:"кабувердиана";s:3:"kea";s:22:"кабувердиче";s:3:"kea";s:24:"кабувердиану";s:3:"kea";s:24:"кабүвердиану";s:3:"kea";s:24:"кабувердьяну";s:3:"kea";s:24:"кабувердіану";s:3:"kea";s:21:"койра чиини";s:3:"khq";s:19:"койра чини";s:3:"khq";s:23:"койра чиниче";s:3:"khq";s:21:"којра чиини";s:3:"khq";s:21:"койра чіїні";s:3:"khq";s:18:"календжин";s:3:"kln";s:16:"каленжин";s:3:"kln";s:18:"каленжиче";s:3:"kln";s:16:"каленџин";s:3:"kln";s:14:"конкани";s:3:"kok";s:18:"конканиче";s:3:"kok";s:14:"конкані";s:3:"kok";s:10:"курук";s:3:"kru";s:10:"курух";s:3:"kru";s:12:"курукх";s:3:"kru";s:12:"квасио";s:3:"nmg";s:16:"квасиочо";s:3:"nmg";s:12:"квазио";s:3:"nmg";s:12:"квазіо";s:3:"nmg";s:8:"киче";s:3:"quc";s:12:"кичече";s:3:"quc";s:11:"к’иче";s:3:"quc";s:8:"кіче";s:3:"quc";s:27:"койраборо сени";s:3:"ses";s:29:"койраборо сенни";s:3:"ses";s:33:"койраборо сенниче";s:3:"ses";s:27:"којраборо сени";s:3:"ses";s:25:"кёраборо сени";s:3:"ses";s:27:"койраборо сені";s:3:"ses";s:16:"коморски";s:3:"swb";s:24:"коморијански";s:3:"swb";s:18:"коморский";s:3:"swb";s:18:"коморська";s:3:"swb";s:35:"конгоански суахили";s:3:"swc";s:34:"конго суахили тілі";s:3:"swc";s:29:"конго суахаличе";s:3:"swc";s:35:"конгоански свахили";s:3:"swc";s:25:"конго свахили";s:3:"swc";s:39:"конголезский суахили";s:3:"swc";s:35:"конгійське суахілі";s:3:"swc";s:14:"клінгон";s:3:"tlh";s:14:"клингон";s:3:"tlh";s:18:"клингончо";s:3:"tlh";s:20:"клингонски";s:3:"tlh";s:21:"клингон хэл";s:3:"tlh";s:22:"клингонский";s:3:"tlh";s:39:"канадзкая француская";s:5:"fr-ca";s:31:"канадски френски";s:5:"fr-ca";s:42:"канадалық француз тілі";s:5:"fr-ca";s:21:"канад франц";s:5:"fr-ca";s:33:"канадӕйаг францаг";s:5:"fr-ca";s:41:"канадский французский";s:5:"fr-ca";s:10:"каддо";s:3:"cad";s:8:"кадо";s:3:"cad";s:16:"карибски";s:3:"car";s:16:"карипски";s:3:"car";s:10:"кариб";s:3:"car";s:18:"карібська";s:3:"car";s:10:"кучін";s:3:"gwi";s:16:"качински";s:3:"kac";s:18:"качинский";s:3:"kac";s:10:"качін";s:3:"kac";s:8:"каџе";s:3:"kaj";s:10:"каджи";s:3:"kaj";s:8:"кави";s:3:"kaw";s:8:"каві";s:3:"kaw";s:14:"канембу";s:3:"kbl";s:8:"коро";s:3:"kfo";s:10:"кхаси";s:3:"kha";s:8:"каси";s:3:"kha";s:10:"кхасі";s:3:"kha";s:12:"котски";s:3:"kho";s:16:"кимбунду";s:3:"kmb";s:26:"кимбундийский";s:3:"kmb";s:16:"кімбунду";s:3:"kmb";s:14:"косраен";s:3:"kos";s:18:"козрејски";s:3:"kos";s:22:"косраенский";s:3:"kos";s:12:"косрае";s:3:"kos";s:10:"кпеле";s:3:"kpe";s:12:"кпелле";s:3:"kpe";s:12:"кпеллє";s:3:"kpe";s:16:"карелски";s:3:"krl";s:20:"карельский";s:3:"krl";s:20:"карельська";s:3:"krl";s:16:"кумикски";s:3:"kum";s:14:"кумички";s:3:"kum";s:18:"кумыкский";s:3:"kum";s:16:"кумицька";s:3:"kum";s:14:"кутенай";s:3:"kut";s:20:"кутенајски";s:3:"kut";s:14:"кутенаи";s:3:"kut";s:14:"кутенаї";s:3:"kut";s:33:"класически невари";s:3:"nwc";s:33:"класичен неварски";s:3:"nwc";s:37:"класически сирийски";s:3:"syc";s:31:"класичен сириски";s:3:"syc";s:43:"классический сирийский";s:3:"syc";s:6:"ком";s:3:"bkm";s:12:"кајуга";s:3:"cay";s:12:"кайюга";s:3:"cay";s:12:"кењанг";s:3:"ken";s:20:"каинганшки";s:3:"kgp";s:8:"како";s:3:"kkj";}i:650;a:51:{s:18:"โคตาวา";s:3:"avk";s:21:"โภชปุรี";s:3:"bho";s:15:"โกธิก";s:3:"got";s:27:"โครเอเชีย";s:2:"hr";s:18:"โลชบัน";s:3:"jbo";s:18:"โควาร์";s:3:"khw";s:46:"โคมิ-เปียร์เมียค";s:3:"koi";s:15:"โคโลญ";s:3:"ksh";s:12:"โกมิ";s:2:"kv";s:12:"โลซิ";s:3:"loz";s:21:"โนเวียล";s:3:"nov";s:27:"โซโทเหนือ";s:3:"nso";s:18:"โอโรโม";s:2:"om";s:18:"โอริยา";s:2:"or";s:21:"โปแลนด์";s:2:"pl";s:24:"โปรตุเกส";s:2:"pt";s:45:"โปรตุเกส - บราซิล";s:5:"pt-br";s:21:"โรมัณโญ";s:3:"rgn";s:21:"โรแมนซ์";s:2:"rm";s:24:"โรมาเนีย";s:2:"ro";s:12:"โชนา";s:2:"sn";s:18:"โซมาลี";s:2:"so";s:21:"โซโทใต้";s:2:"st";s:21:"โวลาพึค";s:2:"vo";s:15:"โวทิก";s:3:"vot";s:12:"โวโร";s:3:"vro";s:15:"โวลอฟ";s:2:"wo";s:18:"โยรูบา";s:2:"yo";s:12:"โพโฑ";s:3:"brx";s:28:"โจลา-ฟอนยี";s:3:"dyo";s:30:"โคย์ราชีนี";s:3:"khq";s:21:"โมฮอว์ก";s:3:"moh";s:45:"โคย์ราโบโรเซนนี";s:3:"ses";s:30:"โคเมอเรียน";s:3:"swb";s:12:"โซกา";s:3:"xog";s:42:"โปรตุเกส - ยุโรป";s:5:"pt-pt";s:18:"โดกริบ";s:3:"dgr";s:15:"โฑครี";s:3:"doi";s:12:"โคโร";s:3:"kfo";s:15:"โคตัน";s:3:"kho";s:12:"โมซี";s:3:"mos";s:12:"โนไก";s:3:"nog";s:21:"โอจิบวา";s:2:"oj";s:18:"โอซากี";s:3:"osa";s:42:"โปรวองซาลโบราณ";s:3:"pro";s:18:"โรมานี";s:3:"rom";s:21:"โซนีนเก";s:3:"snk";s:21:"โตเกเลา";s:3:"tkl";s:18:"โคมาลา";s:3:"bbj";s:21:"โรทูมัน";s:3:"rtm";s:24:"โรเวียนา";s:3:"rug";}i:185;a:18:{s:12:"科塔瓦文";s:3:"avk";s:12:"科西嘉文";s:2:"co";s:9:"科瓦文";s:3:"khw";s:25:"科米-彼尔米亚克文";s:3:"koi";s:25:"科米-彼爾米亞克文";s:3:"koi";s:9:"科隆文";s:3:"ksh";s:9:"科米文";s:2:"kv";s:9:"科萨文";s:2:"xh";s:9:"科薩文";s:2:"xh";s:12:"科普特文";s:3:"cop";s:12:"科摩罗文";s:3:"swb";s:18:"科洛涅达罗文";s:3:"gor";s:15:"科隆達羅文";s:3:"gor";s:9:"科罗文";s:3:"kfo";s:9:"科羅文";s:3:"kfo";s:15:"科斯拉伊文";s:3:"kos";s:15:"科斯雷恩文";s:3:"kos";s:9:"科姆文";s:3:"bkm";}i:652;a:20:{s:24:"ไอย์มารา";s:2:"ay";s:15:"브르타뉴어";s:2:"br";s:15:"브라후이어";s:3:"brh";s:15:"ไอริช";s:2:"ga";s:27:"ไอซ์แลนด์";s:2:"is";s:18:"ไมถิลี";s:3:"mai";s:45:"ไซลีเซียตอนล่าง";s:3:"sli";s:24:"ไซลีเซีย";s:3:"szl";s:9:"ไทย";s:2:"th";s:12:"ไททา";s:3:"dav";s:6:"ไว";s:3:"vai";s:45:"ไม่มีข้อมูลภาษา";s:3:"zxx";s:9:"브린어";s:3:"byn";s:12:"ไอนุ";s:3:"ain";s:12:"브라지어";s:3:"bra";s:12:"ไฮดา";s:3:"hai";s:27:"ไอริชกลาง";s:3:"mga";s:30:"ไอริชโบราณ";s:3:"sga";s:18:"ไทใหญ่";s:3:"shn";s:33:"ไนอะซาตองกา";s:3:"tog";}i:406;a:10:{s:12:"艾马拉文";s:2:"ay";s:12:"艾馬拉文";s:2:"ay";s:29:"վերին սորբիերեն";s:3:"hsb";s:16:"վրացերեն";s:2:"ka";s:22:"վիետնամերեն";s:2:"vi";s:10:"վոլոֆ";s:2:"wo";s:6:"վաի";s:3:"vai";s:12:"վունջո";s:3:"vun";s:15:"艾卡朱克文";s:3:"eka";s:15:"艾拉米特文";s:3:"elx";}i:578;a:119:{s:29:"ترکی آذربایجانی";s:2:"az";s:12:"تورکجه";s:3:"azb";s:28:"ترکی آذری جنوبی";s:3:"azb";s:8:"تبتی";s:2:"bo";s:10:"تِبتی";s:2:"bo";s:14:"تىبەتچە";s:2:"bo";s:19:"ترکی کریمه";s:3:"crh";s:37:"ترکی کریمه (خط لاتین)";s:8:"crh-latn";s:37:"ترکی کریمه (خط سرلیک)";s:8:"crh-cyrl";s:23:"توۋەن سېربچە";s:3:"dsb";s:27:"تۆۋەن گېرمانچە";s:3:"nds";s:12:"تشلحيت";s:3:"shi";s:17:"تاچل‌هیت";s:3:"shi";s:19:"تاکی‌تاکی";s:3:"srn";s:12:"تامیلی";s:2:"ta";s:10:"تَمِل";s:2:"ta";s:8:"تامل";s:2:"ta";s:14:"تامىلچە";s:2:"ta";s:6:"تمل";s:2:"ta";s:8:"تولو";s:3:"tcy";s:14:"تلوگویی";s:2:"te";s:12:"تیلگوٗ";s:2:"te";s:12:"تېليګو";s:2:"te";s:16:"تېلۇگۇچە";s:2:"te";s:10:"تیلگو";s:2:"te";s:10:"تتومی";s:3:"tet";s:14:"تېتۇمچە";s:3:"tet";s:12:"تاجیکی";s:2:"tg";s:10:"تاجِک";s:2:"tg";s:8:"تاجک";s:2:"tg";s:14:"تاجىكچە";s:2:"tg";s:30:"تاجیکی (خط سرلیک)";s:7:"tg-cyrl";s:30:"تاجیکی (خط لاتین)";s:7:"tg-latn";s:14:"تایلندی";s:2:"th";s:8:"تھاے";s:2:"th";s:16:"تايلېنډي";s:2:"th";s:18:"تايلاندچە";s:2:"th";s:10:"تھائی";s:2:"th";s:20:"تیگرینیایی";s:2:"ti";s:14:"تيګريني";s:2:"ti";s:20:"تىگرىنياچە";s:2:"ti";s:12:"ترکمنی";s:2:"tk";s:14:"تُرکمین";s:2:"tk";s:12:"ترکمني";s:2:"tk";s:18:"تۈركمەنچە";s:2:"tk";s:12:"ترکمان";s:2:"tk";s:16:"تاگالوگی";s:2:"tl";s:14:"تَماشیک";s:2:"tl";s:18:"تاگالوگچە";s:2:"tl";s:16:"تسوانایی";s:2:"tn";s:14:"تونگایی";s:2:"to";s:14:"توڭانچە";s:2:"to";s:21:"توک‌پیسینی";s:3:"tpi";s:21:"توك-پىسىنچە";s:3:"tpi";s:27:"ترکی استانبولی";s:2:"tr";s:12:"تُرکِش";s:2:"tr";s:8:"ترکي";s:2:"tr";s:12:"تۈركچە";s:2:"tr";s:8:"ترکی";s:2:"tr";s:16:"تسونگایی";s:2:"ts";s:12:"تاتاری";s:2:"tt";s:10:"تَتار";s:2:"tt";s:10:"تاتار";s:2:"tt";s:14:"تاتارچە";s:2:"tt";s:30:"تاتاری (خط سرلیک)";s:7:"tt-cyrl";s:30:"تاتاری (خط لاتین)";s:7:"tt-latn";s:18:"تومبوکایی";s:3:"tum";s:14:"تُمبُکا";s:3:"tum";s:18:"تۇمبۇكاچە";s:3:"tum";s:17:"توی‌یایی";s:2:"tw";s:6:"توی";s:2:"tw";s:12:"تىۋىچە";s:2:"tw";s:18:"تاهیتیایی";s:2:"ty";s:18:"تاہیشِیَن";s:2:"ty";s:14:"تاختىچە";s:2:"ty";s:12:"تاہیتی";s:2:"ty";s:12:"تووایی";s:3:"tyv";s:18:"تُویٖنیَن";s:3:"tyv";s:12:"توۋاچە";s:3:"tyv";s:10:"تشيغا";s:3:"cgg";s:8:"تيتا";s:3:"dav";s:10:"تایتا";s:3:"dav";s:14:"تايتاچە";s:3:"dav";s:10:"تائتا";s:3:"dav";s:12:"تګالوګ";s:3:"fil";s:12:"尚巴拉文";s:3:"ksb";s:8:"تيسو";s:3:"teo";s:10:"تسویی";s:3:"teo";s:12:"تېسوچە";s:3:"teo";s:8:"تیسو";s:3:"teo";s:14:"تاساواق";s:3:"twq";s:12:"تسواکی";s:3:"twq";s:28:"تىل مەزمۇنى يوق";s:3:"zxx";s:17:"تیگره‌ای";s:3:"tig";s:14:"تىگرېچە";s:3:"tig";s:21:"ترکی عثمانی";s:3:"ota";s:15:"تمنه‌ای";s:3:"tem";s:14:"تېمنېچە";s:3:"tem";s:8:"ترنو";s:3:"ter";s:16:"تېرېناچە";s:3:"ter";s:8:"تیوی";s:3:"tiv";s:8:"تیٖو";s:3:"tiv";s:10:"تىۋچە";s:3:"tiv";s:18:"توكېلاۋچە";s:3:"tkl";s:19:"تلین‌گیتی";s:3:"tli";s:20:"تىلىنگىتچە";s:3:"tli";s:14:"تاماشقی";s:3:"tmh";s:14:"تاماشیک";s:3:"tmh";s:18:"تاماشېكچە";s:3:"tmh";s:23:"تونجا - نياسا";s:3:"tog";s:25:"تونگایی نیاسا";s:3:"tog";s:21:"تسیم‌شیانی";s:3:"tsi";s:16:"تووالویی";s:3:"tvl";s:14:"تُوالوٗ";s:3:"tvl";s:16:"تۇۋالۇچە";s:3:"tvl";s:10:"تیاپی";s:3:"kcg";s:10:"تَیَپ";s:3:"kcg";s:12:"تياپچە";s:3:"kcg";s:16:"توروكوچە";s:3:"trv";}i:241;a:2:{s:29:"әзірбайжан тілі";s:2:"az";s:10:"ñeengatú";s:3:"yrl";}i:90;a:164:{s:16:"тӕтӕйраг";s:2:"az";s:8:"тоба";s:3:"bbc";s:16:"тыбэцкая";s:2:"bo";s:16:"тибетски";s:2:"bo";s:19:"тибет тілі";s:2:"bo";s:14:"тибетче";s:2:"bo";s:8:"төвд";s:2:"bo";s:18:"тибетский";s:2:"bo";s:20:"тибетански";s:2:"bo";s:18:"тибетська";s:2:"bo";s:36:"төменгі лужица тілі";s:3:"dsb";s:33:"төмөнкү сорбианча";s:3:"dsb";s:39:"турнедаленски фински";s:3:"fit";s:15:"ఒరోమో";s:2:"om";s:15:"ఒరియా";s:2:"or";s:21:"ఒసేటిక్";s:2:"os";s:25:"түндүк самиче";s:2:"se";s:16:"ташелхит";s:3:"shi";s:18:"ташелитче";s:3:"shi";s:16:"тачелхит";s:3:"shi";s:16:"тахелхит";s:3:"shi";s:14:"тачеліт";s:3:"shi";s:27:"түштүк саамиче";s:3:"sma";s:20:"тамільская";s:2:"ta";s:16:"тамилски";s:2:"ta";s:10:"тамил";s:2:"ta";s:14:"тамилче";s:2:"ta";s:20:"тамильский";s:2:"ta";s:20:"тамільська";s:2:"ta";s:8:"тулу";s:3:"tcy";s:12:"тэлугу";s:2:"te";s:12:"телугу";s:2:"te";s:16:"телугуча";s:2:"te";s:12:"тэлүгү";s:2:"te";s:10:"тетум";s:3:"tet";s:12:"тоҷикӣ";s:7:"tg-cyrl";s:20:"таджыкская";s:2:"tg";s:18:"таджыцкая";s:2:"tg";s:18:"таджикски";s:2:"tg";s:19:"тәжік тілі";s:2:"tg";s:14:"тажикче";s:2:"tg";s:26:"таџикистански";s:2:"tg";s:10:"тажик";s:2:"tg";s:20:"таджикский";s:2:"tg";s:18:"таджицька";s:2:"tg";s:37:"таджыцкая (кірыліца)";s:7:"tg-cyrl";s:37:"таджыцкая (лацініца)";s:7:"tg-latn";s:14:"тайская";s:2:"th";s:12:"тайски";s:2:"th";s:6:"тай";s:2:"th";s:10:"тайча";s:2:"th";s:20:"тајландски";s:2:"th";s:14:"тайский";s:2:"th";s:14:"тайська";s:2:"th";s:16:"тыгрынья";s:2:"ti";s:14:"тигриня";s:2:"ti";s:16:"тигринья";s:2:"ti";s:20:"тигриниача";s:2:"ti";s:14:"тигриња";s:2:"ti";s:14:"тигрина";s:2:"ti";s:22:"туркменская";s:2:"tk";s:22:"туркмэнская";s:2:"tk";s:20:"туркменски";s:2:"tk";s:16:"түрікмен";s:2:"tk";s:18:"түркмөнчө";s:2:"tk";s:14:"туркмен";s:2:"tk";s:22:"туркменский";s:2:"tk";s:22:"туркменська";s:2:"tk";s:14:"тагалог";s:2:"tl";s:20:"тагальська";s:2:"tl";s:23:"толышә зывон";s:3:"tly";s:14:"талишки";s:3:"tly";s:12:"тсвана";s:2:"tn";s:10:"тонга";s:2:"to";s:12:"тонган";s:2:"to";s:14:"тонгача";s:2:"to";s:18:"тонгански";s:2:"to";s:20:"тонганский";s:2:"to";s:20:"тонганська";s:2:"to";s:17:"ток писин";s:3:"tpi";s:17:"ток-писин";s:3:"tpi";s:17:"ток-пісін";s:3:"tpi";s:16:"турэцкая";s:2:"tr";s:12:"турски";s:2:"tr";s:10:"түрік";s:2:"tr";s:12:"түркчө";s:2:"tr";s:8:"турк";s:2:"tr";s:16:"турецкий";s:2:"tr";s:16:"турецька";s:2:"tr";s:12:"туројо";s:3:"tru";s:12:"туройо";s:3:"tru";s:12:"тсонга";s:2:"ts";s:23:"татарча/tatarça";s:2:"tt";s:18:"татарская";s:2:"tt";s:16:"татарски";s:2:"tt";s:19:"татар тілі";s:2:"tt";s:14:"татарча";s:7:"tt-cyrl";s:10:"татар";s:2:"tt";s:18:"татарский";s:2:"tt";s:18:"татарська";s:2:"tt";s:37:"татарская (кірыліца)";s:7:"tt-cyrl";s:37:"татарская (лацініца)";s:7:"tt-latn";s:14:"тумбука";s:3:"tum";s:6:"туи";s:2:"tw";s:6:"тви";s:2:"tw";s:6:"тві";s:2:"tw";s:18:"таитянски";s:2:"ty";s:16:"тахитски";s:2:"ty";s:20:"таитянский";s:2:"ty";s:20:"таїтянська";s:2:"ty";s:15:"тыва дыл";s:3:"tyv";s:18:"тувінская";s:3:"tyv";s:16:"тувински";s:3:"tyv";s:16:"тувански";s:3:"tyv";s:18:"тувинский";s:3:"tyv";s:18:"тувинська";s:3:"tyv";s:38:"төв атласын тамазайт";s:3:"tzm";s:41:"традыцыйная кітайская";s:7:"zh-hant";s:39:"традиционен китайски";s:7:"zh-hant";s:41:"традиционален кинески";s:7:"zh-hant";s:33:"традицион китайаг";s:7:"zh-hant";s:43:"традиционный китайский";s:7:"zh-hant";s:10:"таита";s:3:"dav";s:14:"таитача";s:3:"dav";s:10:"тайта";s:3:"dav";s:10:"таіта";s:3:"dav";s:20:"тагальская";s:3:"fil";s:29:"түндүк ндыбелче";s:2:"nd";s:8:"тесо";s:3:"teo";s:12:"тесочо";s:3:"teo";s:8:"тэсо";s:3:"teo";s:14:"тасавак";s:3:"twq";s:18:"тасабакча";s:3:"twq";s:14:"тазавак";s:3:"twq";s:29:"тодорхойгүй хэл";s:3:"und";s:14:"тамазит";s:3:"zgh";s:26:"тамазигхтский";s:3:"zgh";s:34:"тілдік мазмұны жоқ";s:3:"zxx";s:32:"тилдик мазмун жок";s:3:"zxx";s:10:"тигре";s:3:"tig";s:15:"ఒసాజ్";s:3:"osa";s:46:"ఒట్టోమన్ టర్కిష్";s:3:"ota";s:10:"темне";s:3:"tem";s:10:"тимне";s:3:"tem";s:12:"терено";s:3:"ter";s:6:"тив";s:3:"tiv";s:8:"тиви";s:3:"tiv";s:6:"тів";s:3:"tiv";s:20:"токелайски";s:3:"tkl";s:24:"токелауански";s:3:"tkl";s:22:"токелайский";s:3:"tkl";s:14:"токелау";s:3:"tkl";s:14:"тлингит";s:3:"tli";s:14:"тлінгіт";s:3:"tli";s:14:"тамашек";s:3:"tmh";s:22:"тувалуански";s:3:"tvl";s:12:"тувалу";s:3:"tvl";s:29:"туниски арапски";s:3:"aeb";s:8:"туап";s:3:"kcg";s:8:"тјап";s:3:"kcg";s:8:"тьяп";s:3:"kcg";s:8:"тіап";s:3:"kcg";s:12:"тароко";s:3:"trv";s:12:"татски";s:3:"ttt";}i:571;a:4:{s:20:"أذربائجاني";s:2:"az";s:16:"أيسلېنډي";s:2:"is";s:8:"أنكو";s:3:"nqo";s:8:"أكوس";s:3:"bss";}i:726;a:19:{s:43:"દક્ષિણ ઝરબૈજાની";s:3:"azb";s:18:"દિવેહી";s:2:"dv";s:14:"ھاۋايچە";s:3:"haw";s:14:"ھىندىچە";s:2:"hi";s:21:"ھىرى موتۇچە";s:2:"ho";s:14:"ھايتىچە";s:2:"ht";s:26:"ھىندونېزىيەچە";s:2:"id";s:31:"દક્ષિણ સામી";s:3:"sma";s:12:"ቶንጋኛ";s:2:"to";s:16:"ቶክ ፒሲን";s:3:"tpi";s:59:"ھازىرقى زامان ئۆلچەملىك ئەرەبچە";s:6:"ar-001";s:15:"દુઆલા";s:3:"dua";s:34:"દક્ષિણ દેબેલ";s:2:"nr";s:37:"દક્ષિણ અલ્તાઇ";s:3:"alt";s:18:"દાકોતા";s:3:"dak";s:21:"દાર્ગવા";s:3:"dar";s:21:"દેલેવેર";s:3:"del";s:18:"દિન્કા";s:3:"din";s:14:"ھەيدەچە";s:3:"hai";}i:112;a:624:{s:20:"pietų azerbaidžano";s:3:"azb";s:36:"јужноазербејџански";s:3:"azb";s:18:"południowoazerski";s:3:"azb";s:15:"တိဘက်";s:2:"bo";s:10:"pelekānia";s:2:"en";s:17:"pelekāne kanakā";s:5:"en-ca";s:20:"pelekānia pekekāne";s:5:"en-gb";s:7:"paniolo";s:2:"es";s:5:"panya";s:2:"es";s:7:"persies";s:2:"fa";s:14:"pɛɛhyia kasa";s:2:"fa";s:5:"persa";s:2:"fa";s:11:"perisanikan";s:2:"fa";s:6:"perseg";s:2:"fa";s:9:"perzijski";s:2:"fa";s:9:"perština";s:2:"fa";s:7:"persisk";s:2:"fa";s:8:"persisch";s:2:"fa";s:12:"persišćina";s:2:"fa";s:9:"persiagbe";s:2:"fa";s:7:"persian";s:2:"fa";s:7:"pärsia";s:2:"fa";s:8:"persiera";s:2:"fa";s:8:"perseere";s:2:"fa";s:8:"persiskt";s:2:"fa";s:6:"persan";s:2:"fa";s:7:"perzysk";s:2:"fa";s:7:"peirsis";s:2:"fa";s:9:"parisanci";s:2:"fa";s:6:"perzsa";s:2:"fa";s:8:"persiano";s:2:"fa";s:6:"persia";s:2:"fa";s:6:"peshan";s:2:"fa";s:9:"persneska";s:2:"fa";s:11:"persiskisut";s:2:"fa";s:9:"pärsesch";s:2:"fa";s:8:"persesch";s:2:"fa";s:6:"persų";s:2:"fa";s:9:"persiešu";s:2:"fa";s:5:"parsi";s:2:"fa";s:7:"persjan";s:2:"fa";s:10:"pers’sch";s:2:"fa";s:8:"perzisch";s:2:"fa";s:6:"perski";s:2:"fa";s:10:"persa simi";s:2:"fa";s:8:"persană";s:2:"fa";s:13:"persijagiella";s:2:"fa";s:9:"persijski";s:2:"fa";s:10:"perzština";s:2:"fa";s:13:"perzijščina";s:2:"fa";s:8:"persisht";s:2:"fa";s:8:"persiska";s:2:"fa";s:6:"pulaar";s:2:"ff";s:4:"peul";s:2:"ff";s:6:"pīkī";s:2:"fj";s:9:"prantsuse";s:2:"fr";s:6:"palani";s:2:"fr";s:7:"prancis";s:2:"fr";s:10:"prancūzų";s:2:"fr";s:8:"perancis";s:2:"fr";s:12:"põhjafriisi";s:3:"frr";s:13:"pohjoisfriisi";s:3:"frr";s:19:"północnofryzyjski";s:3:"frr";s:18:"јерменски";s:2:"hy";s:16:"јапонски";s:2:"ja";s:16:"јапански";s:2:"ja";s:6:"patois";s:3:"jam";s:33:"јамајски креолски";s:3:"jam";s:12:"јитски";s:3:"jut";s:16:"јавански";s:2:"jv";s:9:"permikomi";s:3:"koi";s:19:"permska komišćina";s:3:"koi";s:8:"permiaco";s:3:"koi";s:15:"레즈기안어";s:3:"lez";s:12:"నౌరు";s:2:"na";s:22:"јужномински";s:3:"nan";s:33:"నియాపోలిటన్";s:3:"nap";s:58:"నార్వీజియన్ బొక్మాల్";s:2:"nb";s:14:"plattdüütsch";s:3:"nds";s:18:"నేపాలి";s:2:"ne";s:18:"నెవారి";s:3:"new";s:27:"నియూఇయాన్";s:3:"niu";s:67:"నార్విజియాన్ న్యోర్స్క్";s:2:"nn";s:36:"నార్విజియాన్";s:2:"no";s:17:"puo ya kwa norway";s:2:"no";s:4:"pedi";s:3:"nso";s:7:"pediera";s:3:"nso";s:12:"pohjoissotho";s:3:"nso";s:15:"నవాహో";s:2:"nv";s:24:"న్యాన్జా";s:2:"ny";s:12:"provansalski";s:2:"oc";s:8:"provansi";s:2:"oc";s:12:"prowansalski";s:2:"oc";s:10:"provençal";s:2:"oc";s:8:"pandjabi";s:2:"pa";s:13:"pungyabi kasa";s:2:"pa";s:8:"punyabí";s:2:"pa";s:7:"pəncab";s:2:"pa";s:12:"pɛnijabikan";s:2:"pa";s:7:"punjabi";s:2:"pa";s:11:"pandžabski";s:2:"pa";s:7:"panjabi";s:2:"pa";s:16:"paňdžábština";s:2:"pa";s:8:"pwnjabeg";s:2:"pa";s:15:"pandžabšćina";s:2:"pa";s:10:"pundzabgbe";s:2:"pa";s:8:"panĝaba";s:2:"pa";s:8:"punjabí";s:2:"pa";s:9:"pandžabi";s:2:"pa";s:9:"punjabera";s:2:"pa";s:10:"punjabeere";s:2:"pa";s:10:"punjabiskt";s:2:"pa";s:8:"pendjabi";s:2:"pa";s:12:"puinseáibis";s:2:"pa";s:13:"pandschabisch";s:2:"pa";s:11:"pandžapski";s:2:"pa";s:15:"pandźabšćina";s:2:"pa";s:10:"pandzsábi";s:2:"pa";s:9:"púnjabí";s:2:"pa";s:13:"panschaabesch";s:2:"pa";s:13:"pandschabesch";s:2:"pa";s:10:"pendžabų";s:2:"pa";s:9:"pandžabu";s:2:"pa";s:7:"penjabi";s:2:"pa";s:8:"punġabi";s:2:"pa";s:12:"pandschabsch";s:2:"pa";s:11:"pendżabski";s:2:"pa";s:12:"punyabi simi";s:2:"pa";s:13:"panjabigiella";s:2:"pa";s:9:"penzäbï";s:2:"pa";s:14:"pandžábčina";s:2:"pa";s:15:"pandžabščina";s:2:"pa";s:8:"panxhabe";s:2:"pa";s:9:"pencapça";s:2:"pa";s:9:"panjobcha";s:2:"pa";s:10:"pangasinan";s:3:"pag";s:15:"panqasinan dili";s:3:"pag";s:11:"pangasinski";s:3:"pag";s:7:"pangasi";s:3:"pag";s:16:"pangasinanština";s:3:"pag";s:10:"pangasineg";s:3:"pag";s:18:"pangasinan-sprache";s:3:"pag";s:11:"pangsinagbe";s:3:"pag";s:11:"pangasinán";s:3:"pag";s:11:"pangasinani";s:3:"pag";s:14:"pangasinanisch";s:3:"pag";s:11:"pangaszinan";s:3:"pag";s:9:"pangasina";s:3:"pag";s:13:"pangasínmál";s:3:"pag";s:18:"pangasinan-sprooch";s:3:"pag";s:11:"pangasinanu";s:3:"pag";s:11:"pangasinjan";s:3:"pag";s:9:"pangasino";s:3:"pag";s:10:"pangasinã";s:3:"pag";s:15:"pangasinančina";s:3:"pag";s:17:"pangasinanščina";s:3:"pag";s:8:"pampanga";s:3:"pam";s:13:"pampanqa dili";s:3:"pam";s:9:"pampangà";s:3:"pam";s:8:"papangau";s:3:"pam";s:18:"pampanggan-sprache";s:3:"pam";s:9:"pampangan";s:3:"pam";s:20:"pampanggan-schpraach";s:3:"pam";s:18:"pampanggan-sprooch";s:3:"pam";s:10:"pampanganu";s:3:"pam";s:8:"pampamga";s:3:"pam";s:10:"pampanggan";s:3:"pam";s:8:"pampango";s:3:"pam";s:13:"pampanščina";s:3:"pam";s:10:"papiamentu";s:3:"pap";s:10:"papiamento";s:3:"pap";s:15:"papyamento dili";s:3:"pap";s:13:"papiamentogbe";s:3:"pap";s:10:"papiaments";s:3:"pap";s:11:"papiamentó";s:3:"pap";s:12:"papíamentó";s:3:"pap";s:10:"papiemento";s:3:"pap";s:10:"papjamento";s:3:"pap";s:15:"papiamento simi";s:3:"pap";s:6:"picard";s:3:"pcd";s:7:"pícaru";s:3:"pcd";s:8:"pikardeg";s:3:"pcd";s:12:"picardština";s:3:"pcd";s:8:"picardeg";s:3:"pcd";s:10:"picardisch";s:3:"pcd";s:7:"picardi";s:3:"pcd";s:8:"piccardo";s:3:"pcd";s:10:"picardesch";s:3:"pcd";s:8:"pikardų";s:3:"pcd";s:11:"pikardyjski";s:3:"pcd";s:10:"pikardiska";s:3:"pcd";s:11:"picard dili";s:3:"pcd";s:19:"pennsylvaniadeutsch";s:3:"pdc";s:19:"pennsylvania german";s:3:"pdc";s:18:"pennsylvaniansaksa";s:3:"pdc";s:20:"pennsylvaniadäitsch";s:3:"pdc";s:24:"pensilvanijos vokiečių";s:3:"pdc";s:18:"pennsylvania-duits";s:3:"pdc";s:13:"pensylwański";s:3:"pdc";s:17:"pennsylvaniatyska";s:3:"pdc";s:22:"pensilvanya almancası";s:3:"pdc";s:12:"plautdietsch";s:3:"pdt";s:13:"plattdäitsch";s:3:"pdt";s:9:"pälzisch";s:3:"pfl";s:10:"pfälzisch";s:3:"pfl";s:15:"palatine german";s:3:"pfl";s:7:"pfaltsi";s:3:"pfl";s:19:"pfälzesch däitsch";s:3:"pfl";s:9:"paltsisch";s:3:"pfl";s:11:"palatynacki";s:3:"pfl";s:11:"pfalz-tyska";s:3:"pfl";s:18:"palatin almancası";s:3:"pfl";s:9:"pali dili";s:2:"pi";s:4:"pali";s:2:"pi";s:6:"pálí";s:2:"pi";s:5:"paali";s:2:"pi";s:7:"páilis";s:2:"pi";s:5:"palí";s:2:"pi";s:5:"pāli";s:2:"pi";s:8:"palijski";s:2:"pi";s:5:"páli";s:2:"pi";s:12:"palijščina";s:2:"pi";s:6:"polski";s:2:"pl";s:5:"pools";s:2:"pl";s:12:"pɔland kasa";s:2:"pl";s:6:"polacu";s:2:"pl";s:6:"polyak";s:2:"pl";s:9:"polonekan";s:2:"pl";s:7:"poloneg";s:2:"pl";s:7:"poljski";s:2:"pl";s:8:"polonès";s:2:"pl";s:9:"polština";s:2:"pl";s:6:"pwyleg";s:2:"pl";s:5:"polsk";s:2:"pl";s:8:"polnisch";s:2:"pl";s:11:"pólšćina";s:2:"pl";s:9:"polandgbe";s:2:"pl";s:6:"polish";s:2:"pl";s:4:"pola";s:2:"pl";s:6:"polaco";s:2:"pl";s:5:"poola";s:2:"pl";s:9:"poloniera";s:2:"pl";s:9:"poloneere";s:2:"pl";s:5:"puola";s:2:"pl";s:6:"polskt";s:2:"pl";s:8:"polonais";s:2:"pl";s:5:"polac";s:2:"pl";s:6:"poalsk";s:2:"pl";s:9:"polainnis";s:2:"pl";s:10:"pòlainnis";s:2:"pl";s:8:"polonese";s:2:"pl";s:8:"poliishi";s:2:"pl";s:7:"pólska";s:2:"pl";s:7:"polacco";s:2:"pl";s:12:"polenimiutut";s:2:"pl";s:9:"pollnesch";s:2:"pl";s:8:"polnesch";s:2:"pl";s:5:"poļu";s:2:"pl";s:7:"poloney";s:2:"pl";s:6:"poland";s:2:"pl";s:7:"pollakk";s:2:"pl";s:7:"poolsch";s:2:"pl";s:8:"polonês";s:2:"pl";s:11:"polaco simi";s:2:"pl";s:9:"poloneză";s:2:"pl";s:13:"polskkagiella";s:2:"pl";s:8:"polonëe";s:2:"pl";s:10:"poľština";s:2:"pl";s:11:"poljščina";s:2:"pl";s:9:"polonisht";s:2:"pl";s:6:"polska";s:2:"pl";s:9:"polyakcha";s:2:"pl";s:11:"piemontèis";s:3:"pms";s:10:"piamontés";s:3:"pms";s:9:"piemonteg";s:3:"pms";s:12:"piemonština";s:3:"pms";s:10:"piedmonteg";s:3:"pms";s:13:"piemontesisch";s:3:"pms";s:11:"piedmontese";s:3:"pms";s:8:"piemonte";s:3:"pms";s:11:"piémontais";s:3:"pms";s:10:"piemontese";s:3:"pms";s:13:"piemontesesch";s:3:"pms";s:11:"piëmontees";s:3:"pms";s:9:"piemoncki";s:3:"pms";s:13:"piemontesiska";s:3:"pms";s:11:"piyemontece";s:3:"pms";s:6:"ponteg";s:3:"pnt";s:10:"pontština";s:3:"pnt";s:8:"pontisch";s:3:"pnt";s:6:"pontic";s:3:"pnt";s:16:"pontoksenkreikka";s:3:"pnt";s:8:"pontique";s:3:"pnt";s:7:"pontico";s:3:"pnt";s:8:"pontesch";s:3:"pnt";s:5:"ponto";s:3:"pnt";s:9:"pontyjski";s:3:"pnt";s:8:"pontiska";s:3:"pnt";s:10:"prūsiskan";s:3:"prg";s:8:"prusianu";s:3:"prg";s:9:"pruština";s:3:"prg";s:6:"prwseg";s:3:"prg";s:9:"prusčina";s:3:"prg";s:8:"prussian";s:3:"prg";s:8:"prussien";s:3:"prg";s:8:"prúisis";s:3:"prg";s:7:"pruisis";s:3:"prg";s:10:"prušćina";s:3:"prg";s:9:"prussiano";s:3:"prg";s:9:"preisesch";s:3:"prg";s:7:"prūsų";s:3:"prg";s:6:"pruski";s:3:"prg";s:8:"prusyaca";s:3:"prg";s:6:"pasjto";s:2:"ps";s:6:"pashtu";s:2:"ps";s:6:"puştu";s:2:"ps";s:6:"pachto";s:2:"ps";s:10:"paštunski";s:2:"ps";s:6:"paixtu";s:2:"ps";s:11:"paštština";s:2:"ps";s:6:"pashto";s:2:"ps";s:7:"paschtu";s:2:"ps";s:14:"paštunšćina";s:2:"ps";s:9:"pashtogbe";s:2:"ps";s:7:"paŝtoa";s:2:"ps";s:7:"pastún";s:2:"ps";s:6:"puštu";s:2:"ps";s:8:"paxtuera";s:2:"ps";s:6:"paštu";s:2:"ps";s:7:"pasjtoe";s:2:"ps";s:7:"paistis";s:2:"ps";s:6:"pachtu";s:2:"ps";s:7:"paxtún";s:2:"ps";s:9:"pashtanci";s:2:"ps";s:5:"pastu";s:2:"ps";s:6:"pastú";s:2:"ps";s:12:"pashtomiutut";s:2:"ps";s:13:"paschtuunesch";s:2:"ps";s:10:"puštūnų";s:2:"ps";s:6:"paxtun";s:2:"ps";s:6:"paszto";s:2:"ps";s:6:"pastó";s:2:"ps";s:11:"pashto simi";s:2:"ps";s:7:"paschto";s:2:"ps";s:9:"paștună";s:2:"ps";s:10:"paštčina";s:2:"ps";s:14:"paštunščina";s:2:"ps";s:8:"peştuca";s:2:"ps";s:11:"pushtu tili";s:2:"ps";s:10:"português";s:2:"pt";s:9:"portugees";s:2:"pt";s:15:"pɔɔtugal kasa";s:2:"pt";s:10:"portugués";s:2:"pt";s:8:"portuqal";s:2:"pt";s:14:"pɔritigalikan";s:2:"pt";s:10:"portugaleg";s:2:"pt";s:11:"portugalski";s:2:"pt";s:10:"portuguès";s:2:"pt";s:14:"portugalština";s:2:"pt";s:10:"portiwgeeg";s:2:"pt";s:11:"portugisisk";s:2:"pt";s:13:"portugiesisch";s:2:"pt";s:15:"portugalšćina";s:2:"pt";s:11:"pɔtugalgbe";s:2:"pt";s:10:"portuguese";s:2:"pt";s:9:"portugala";s:2:"pt";s:9:"portugali";s:2:"pt";s:9:"portugesa";s:2:"pt";s:10:"purtugeere";s:2:"pt";s:12:"portugisiskt";s:2:"pt";s:9:"portugais";s:2:"pt";s:10:"portughês";s:2:"pt";s:10:"portugeesk";s:2:"pt";s:14:"portaingéilis";s:2:"pt";s:11:"portagailis";s:2:"pt";s:13:"portugiisisch";s:2:"pt";s:7:"pukikī";s:2:"pt";s:9:"portugál";s:2:"pt";s:9:"portugese";s:2:"pt";s:8:"portugis";s:2:"pt";s:6:"potoki";s:2:"pt";s:12:"portúgalska";s:2:"pt";s:10:"portoghese";s:2:"pt";s:15:"portugalimiutut";s:2:"pt";s:13:"pochtojesesch";s:2:"pt";s:11:"portyngalek";s:2:"pt";s:12:"portugisesch";s:2:"pt";s:10:"portugalų";s:2:"pt";s:11:"portugāļu";s:2:"pt";s:9:"portiogey";s:2:"pt";s:9:"portugiż";s:2:"pt";s:11:"portugeesch";s:2:"pt";s:14:"portugues simi";s:2:"pt";s:11:"portugheză";s:2:"pt";s:16:"portugálagiella";s:2:"pt";s:16:"portugëe, pûra";s:2:"pt";s:13:"portugalčina";s:2:"pt";s:15:"portugalščina";s:2:"pt";s:12:"portugalisht";s:2:"pt";s:12:"portugisiska";s:2:"pt";s:10:"portekizce";s:2:"pt";s:8:"putukezi";s:2:"pt";s:11:"portugalcha";s:2:"pt";s:14:"portugänapük";s:2:"pt";s:20:"português do brasil";s:5:"pt-br";s:21:"portugués del brasil";s:5:"pt-br";s:17:"portugaleg brazil";s:5:"pt-br";s:21:"portuguès del brasil";s:5:"pt-br";s:17:"portiwgeeg brasil";s:5:"pt-br";s:20:"portugués de brasil";s:5:"pt-br";s:20:"portugais brésilien";s:5:"pt-br";s:20:"portughês brasilian";s:5:"pt-br";s:27:"portaingéilis na brasaíle";s:5:"pt-br";s:24:"portagailis bhraisileach";s:5:"pt-br";s:21:"portugués brasileiro";s:5:"pt-br";s:16:"pukikī palakila";s:5:"pt-br";s:15:"portugis brasil";s:5:"pt-br";s:21:"portoghese brasiliano";s:5:"pt-br";s:18:"portyngalek brasil";s:5:"pt-br";s:15:"portugis brazil";s:5:"pt-br";s:19:"portugais brasilian";s:5:"pt-br";s:23:"portugheză braziliană";s:5:"pt-br";s:26:"portugalčina (brazílska)";s:5:"pt-br";s:24:"portugalishte braziliane";s:5:"pt-br";s:14:"portokugusseee";s:5:"pt-br";s:15:"레토로만어";s:2:"rm";s:16:"јакутски";s:3:"sah";s:11:"põhjasaami";s:2:"se";s:12:"pohjoissaame";s:2:"se";s:27:"တောင်ဆာမိ";s:2:"se";s:33:"တာချယ်လ်ဟစ်";s:3:"shi";s:26:"pódpołdnjowa samišćina";s:3:"sma";s:13:"pietų samių";s:3:"sma";s:26:"јужнолапонски";s:3:"sma";s:46:"တောင်ပိုင်း ဆာမိ";s:3:"sma";s:19:"јужни сами";s:3:"sma";s:35:"pódpołdnjowa sotšćina (sesotho)";s:2:"st";s:13:"pietų sesuto";s:2:"st";s:18:"တမီးလ်";s:2:"ta";s:18:"တီလီဂု";s:2:"te";s:21:"တာဂွီခ်";s:2:"tg";s:27:"တီဂ်ရင်ရာ";s:2:"ti";s:18:"တခ္မင်";s:2:"tk";s:18:"တွန်ဂါ";s:2:"to";s:15:"တာကစ်";s:2:"tr";s:9:"တတာ";s:2:"tt";s:8:"polapola";s:2:"ty";s:24:"pléimeannais iartharach";s:3:"vls";s:21:"pagrindinė frankonų";s:3:"vmf";s:10:"јидиш";s:2:"yi";s:16:"јорупски";s:2:"yo";s:12:"јоруба";s:2:"yo";s:6:"pākē";s:2:"zh";s:15:"တရုတ်";s:2:"zh";s:26:"pākē hoʻomaʻalahi ʻia";s:7:"zh-hans";s:27:"poenostavljena kitajščina";s:7:"zh-hans";s:17:"perinteinen kiina";s:7:"zh-hant";s:14:"pākē kuʻuna";s:7:"zh-hant";s:4:"pare";s:3:"asa";s:21:"တိုင်တာ";s:3:"dav";s:17:"јола-фоњи";s:3:"dyo";s:13:"philippiensch";s:3:"fil";s:14:"pluraj lingvoj";s:3:"mul";s:9:"pluriling";s:3:"mul";s:6:"నమ";s:3:"naq";s:21:"pódpołnocne ndebele";s:2:"nd";s:13:"põhjandebele";s:2:"nd";s:15:"pohjois-ndebele";s:2:"nd";s:33:"တောင်ဒီဘီလီ";s:2:"nd";s:13:"pléimeannais";s:5:"nl-be";s:12:"న్కో";s:3:"nqo";s:14:"pietų ndebele";s:2:"nr";s:25:"јужен ндебеле";s:2:"nr";s:18:"న్యుర్";s:3:"nus";s:30:"న్యాన్కోలె";s:3:"nyn";s:9:"phoeniceg";s:3:"phn";s:11:"phönikisch";s:3:"phn";s:10:"phoenician";s:3:"phn";s:10:"phénicien";s:3:"phn";s:11:"phönikesch";s:3:"phn";s:11:"phönieksch";s:3:"phn";s:15:"တီဆို";s:3:"teo";s:24:"တာဆာဝါခ်";s:3:"twq";s:21:"pelekāne nū hōlani";s:5:"en-au";s:20:"pelekānia ʻamelika";s:5:"en-us";s:14:"palani kanakā";s:5:"fr-ca";s:14:"prancis kanada";s:5:"fr-ca";s:15:"perancis kanada";s:5:"fr-ca";s:13:"prancis swiss";s:5:"fr-ch";s:20:"perancis switzerland";s:5:"fr-ch";s:25:"portuqaliya portuqalcası";s:5:"pt-pt";s:17:"portugaleg europa";s:5:"pt-pt";s:22:"portuguès de portugal";s:5:"pt-pt";s:23:"portugalština (evropa)";s:5:"pt-pt";s:16:"portiwgeeg ewrop";s:5:"pt-pt";s:22:"portugués de portugal";s:5:"pt-pt";s:19:"portugali (euroopa)";s:5:"pt-pt";s:18:"portugesa (europa)";s:5:"pt-pt";s:19:"portugalinportugali";s:5:"pt-pt";s:20:"portugais d’europe";s:5:"pt-pt";s:17:"portughês iberic";s:5:"pt-pt";s:24:"portaingéilis ibéarach";s:5:"pt-pt";s:20:"portagailis eòrpach";s:5:"pt-pt";s:18:"portugués europeo";s:5:"pt-pt";s:14:"portugis eropa";s:5:"pt-pt";s:18:"portoghese europeo";s:5:"pt-pt";s:28:"pochtojesesch uß pochtojall";s:5:"pt-pt";s:15:"portugis eropah";s:5:"pt-pt";s:18:"português europeu";s:5:"pt-pt";s:17:"portugais iberian";s:5:"pt-pt";s:22:"portugheză europeană";s:5:"pt-pt";s:25:"portugalčina (európska)";s:5:"pt-pt";s:23:"portugalishte evropiane";s:5:"pt-pt";s:15:"pietų altajaus";s:3:"alt";s:26:"јужноалтајски";s:3:"alt";s:20:"południowoałtajski";s:3:"alt";s:14:"pidgin chinook";s:3:"chn";s:14:"patuà chinook";s:3:"chn";s:14:"pangwe-sprache";s:3:"fan";s:16:"pangwe-schpraach";s:3:"fan";s:14:"pangwe-sprooch";s:3:"fan";s:6:"pangwe";s:3:"fan";s:24:"prancis abad pertengahan";s:3:"frm";s:12:"prancis kuno";s:3:"fro";s:16:"peirsis iùdhach";s:3:"jpr";s:18:"panjabi occidental";s:3:"lah";s:23:"puinseáibis iartharach";s:3:"lah";s:18:"నియాస్";s:3:"nia";s:12:"నోగై";s:3:"nog";s:24:"న్యంవేజి";s:3:"nym";s:15:"నిఓరో";s:3:"nyo";s:12:"paxlavi dili";s:3:"pal";s:7:"pahlavi";s:3:"pal";s:12:"pahlavština";s:3:"pal";s:7:"pahlafi";s:3:"pal";s:7:"pahlevi";s:3:"pal";s:7:"palaví";s:3:"pal";s:7:"pehlevi";s:3:"pal";s:8:"paħlavi";s:3:"pal";s:7:"pálavi";s:3:"pal";s:8:"pahlaví";s:3:"pal";s:12:"pehlevi dili";s:3:"pal";s:8:"palauanu";s:3:"pau";s:9:"palayanca";s:3:"pau";s:5:"palau";s:3:"pau";s:10:"palauanski";s:3:"pau";s:7:"palauà";s:3:"pau";s:11:"palauština";s:3:"pau";s:9:"palauansk";s:3:"pau";s:8:"paluagbe";s:3:"pau";s:7:"palauan";s:3:"pau";s:8:"palauano";s:3:"pau";s:10:"palauaansk";s:3:"pau";s:9:"palabhais";s:3:"pau";s:6:"palaui";s:3:"pau";s:8:"paláska";s:3:"pau";s:10:"palaviešu";s:3:"pau";s:8:"palawjan";s:3:"pau";s:8:"palauisk";s:3:"pau";s:8:"palausch";s:3:"pau";s:6:"palaus";s:3:"pau";s:9:"palauană";s:3:"pau";s:10:"palaučina";s:3:"pau";s:14:"palavanščina";s:3:"pau";s:10:"palau dili";s:3:"pau";s:13:"persa antiguu";s:3:"peo";s:11:"persa antic";s:3:"peo";s:13:"persa antiguo";s:3:"peo";s:13:"persan ancien";s:3:"peo";s:11:"persia kuno";s:3:"peo";s:15:"persiano antico";s:3:"peo";s:13:"persjan antik";s:3:"peo";s:13:"persa arcaico";s:3:"peo";s:12:"persian vegl";s:3:"peo";s:14:"persană veche";s:3:"peo";s:10:"pohnpeianu";s:3:"pon";s:13:"ponpeyan dili";s:3:"pon";s:7:"pohnpei";s:3:"pon";s:9:"ponpejski";s:3:"pon";s:8:"ponapeà";s:3:"pon";s:13:"pohnpeiština";s:3:"pon";s:11:"pohnpeianeg";s:3:"pon";s:6:"ponape";s:3:"pon";s:12:"ponapeanisch";s:3:"pon";s:10:"ponpeiagbe";s:3:"pon";s:9:"pohnpeian";s:3:"pon";s:10:"pohnpeiano";s:3:"pon";s:7:"poonpei";s:3:"pon";s:12:"pohnpeiaansk";s:3:"pon";s:8:"pohnpeia";s:3:"pon";s:9:"ponpeiska";s:3:"pon";s:12:"ponapeanesch";s:3:"pon";s:8:"ponapės";s:3:"pon";s:10:"ponapiešu";s:3:"pon";s:8:"ponpejan";s:3:"pon";s:8:"ponapisk";s:3:"pon";s:12:"ponapeaansch";s:3:"pon";s:11:"pohnpeiaans";s:3:"pon";s:8:"ponapean";s:3:"pon";s:11:"pohnpeiană";s:3:"pon";s:12:"pohnpeičina";s:3:"pon";s:13:"ponpejščina";s:3:"pon";s:17:"provenzal antiguu";s:3:"pro";s:16:"provençal antic";s:3:"pro";s:16:"provensálština";s:3:"pro";s:17:"provenzal antiguo";s:3:"pro";s:17:"provençal ancien";s:3:"pro";s:14:"provencal lama";s:3:"pro";s:17:"provenzale antico";s:3:"pro";s:16:"provenzal, antik";s:3:"pro";s:19:"provençal, arcaico";s:3:"pro";s:18:"provençal arcaico";s:3:"pro";s:14:"provenzal vegl";s:3:"pro";s:17:"provensală veche";s:3:"pro";s:37:"న్యాసా టోన్గా";s:3:"tog";s:6:"јао";s:3:"yao";s:12:"јапски";s:3:"yap";s:14:"јенгбен";s:3:"yav";s:10:"јемба";s:3:"ybb";s:12:"papuaspraken";s:3:"paa";s:15:"papuanski jezik";s:3:"paa";s:33:"philippinen-austroneesche spraken";s:3:"phi";s:7:"prakrit";s:3:"pra";s:16:"prakritski jezik";s:3:"pra";}i:491;a:25:{s:41:"דרום אַזערביידזשאַניש";s:3:"azb";s:8:"דנית";s:2:"da";s:10:"דעניש";s:2:"da";s:10:"דײַטש";s:2:"de";s:10:"דיבהי";s:2:"dv";s:12:"דזונקה";s:2:"dz";s:24:"דרום־פֿריזיש";s:3:"frr";s:18:"ニウーエイ語";s:3:"niu";s:18:"ニャンジャ語";s:2:"ny";s:10:"דואלה";s:3:"dua";s:19:"דרום נדבלה";s:2:"nr";s:18:"ニャンコレ語";s:3:"nyn";s:10:"דקוטה";s:3:"dak";s:12:"דרגווה";s:3:"dar";s:12:"דלאוור";s:3:"del";s:12:"דוגריב";s:3:"dgr";s:10:"דינקה";s:3:"din";s:10:"דוגרי";s:3:"doi";s:10:"דיולה";s:3:"dyu";s:12:"דזאנגה";s:3:"dzg";s:12:"ニアス語";s:3:"nia";s:21:"ニャムウェジ語";s:3:"nym";s:12:"ニョロ語";s:3:"nyo";s:12:"ニャン語";s:3:"ken";s:24:"ニェエンガトゥ語";s:3:"yrl";}i:73;a:167:{s:18:"башҡортса";s:2:"ba";s:20:"башкірская";s:2:"ba";s:18:"башкирски";s:2:"ba";s:23:"башқұрт тілі";s:2:"ba";s:16:"башкырча";s:2:"ba";s:12:"башкир";s:2:"ba";s:16:"башкираг";s:2:"ba";s:20:"башкирский";s:2:"ba";s:20:"башкирська";s:2:"ba";s:18:"баварская";s:3:"bar";s:16:"баварски";s:3:"bar";s:20:"беларуская";s:2:"be";s:18:"беларуски";s:2:"be";s:23:"беларус тілі";s:2:"be";s:18:"беларусча";s:2:"be";s:18:"белоруски";s:2:"be";s:16:"беларусь";s:2:"be";s:22:"белорусский";s:2:"be";s:20:"білоруська";s:2:"be";s:48:"беларуская (тарашкевіца)‎";s:8:"be-x-old";s:45:"беларуская (тарашкевіца)";s:8:"be-x-old";s:18:"български";s:2:"bg";s:20:"балгарская";s:2:"bg";s:20:"баўгарская";s:2:"bg";s:21:"болгар тілі";s:2:"bg";s:16:"болгарча";s:2:"bg";s:16:"бугарски";s:2:"bg";s:12:"болгар";s:2:"bg";s:18:"болгайраг";s:2:"bg";s:20:"болгарский";s:2:"bg";s:20:"болгарська";s:2:"bg";s:14:"божпури";s:3:"bho";s:14:"боџпури";s:3:"bho";s:18:"бходжпури";s:3:"bho";s:18:"бходжпурі";s:3:"bho";s:14:"бислама";s:2:"bi";s:14:"біслама";s:2:"bi";s:18:"банџарски";s:3:"bjn";s:14:"бамбара";s:2:"bm";s:18:"бамбарада";s:2:"bm";s:24:"бамбарийский";s:2:"bm";s:22:"бенгальская";s:2:"bn";s:22:"бэнгальская";s:2:"bn";s:18:"бенгалски";s:2:"bn";s:21:"бенгал тілі";s:2:"bn";s:22:"бангладешче";s:2:"bn";s:12:"бенгал";s:2:"bn";s:22:"бенгальский";s:2:"bn";s:22:"бенгальська";s:2:"bn";s:20:"бишнуприја";s:3:"bpy";s:22:"бахтијарски";s:3:"bqi";s:20:"брэтонская";s:2:"br";s:18:"бретонски";s:2:"br";s:21:"бретон тілі";s:2:"br";s:16:"бретончо";s:2:"br";s:12:"бретон";s:2:"br";s:20:"бретонский";s:2:"br";s:20:"бретонська";s:2:"br";s:18:"брахујски";s:3:"brh";s:20:"баснійская";s:2:"bs";s:22:"басьнійская";s:2:"bs";s:18:"босненски";s:2:"bs";s:21:"босния тілі";s:2:"bs";s:16:"боснийче";s:2:"bs";s:16:"босански";s:2:"bs";s:10:"босни";s:2:"bs";s:14:"босниаг";s:2:"bs";s:20:"боснийский";s:2:"bs";s:20:"боснійська";s:2:"bs";s:16:"бугински";s:3:"bug";s:14:"бугиски";s:3:"bug";s:18:"бугийский";s:3:"bug";s:18:"бугійська";s:3:"bug";s:12:"буряад";s:3:"bxr";s:16:"бурацкая";s:3:"bua";s:20:"бердзейнаг";s:2:"el";s:41:"брытанская ангельская";s:5:"en-gb";s:37:"британски английски";s:5:"en-gb";s:46:"британиялық ағылшын тілі";s:5:"en-gb";s:35:"британски англиски";s:5:"en-gb";s:29:"британийн англи";s:5:"en-gb";s:35:"бритайнаг англисаг";s:5:"en-gb";s:41:"британский английский";s:5:"en-gb";s:16:"баскская";s:2:"eu";s:20:"баскаўская";s:2:"eu";s:10:"баски";s:2:"eu";s:8:"баск";s:2:"eu";s:12:"баскча";s:2:"eu";s:16:"баскиски";s:2:"eu";s:12:"баскаг";s:2:"eu";s:16:"баскский";s:2:"eu";s:18:"баскијски";s:2:"eu";s:16:"баскська";s:2:"eu";s:19:"батыс фриз";s:2:"fy";s:23:"батыш фризче";s:2:"fy";s:25:"баруун фризын";s:2:"fy";s:18:"бӕлхъӕрон";s:3:"krc";s:18:"бирмански";s:2:"my";s:12:"бирман";s:2:"my";s:14:"бурмача";s:2:"my";s:18:"бурмански";s:2:"my";s:8:"бирм";s:2:"my";s:20:"бирманский";s:2:"my";s:20:"бірманська";s:2:"my";s:31:"букмол (Норвегія)";s:2:"nb";s:10:"балба";s:2:"ne";s:49:"бразыльская партугальская";s:5:"pt-br";s:48:"бразилиялық португал тілі";s:5:"pt-br";s:41:"бразилиаг португалиаг";s:5:"pt-br";s:49:"бразильский португальский";s:5:"pt-br";s:48:"борбордук Атлас тамазитче";s:3:"tzm";s:10:"бемба";s:3:"bem";s:14:"бембача";s:3:"bem";s:8:"бена";s:3:"bez";s:12:"бенача";s:3:"bez";s:8:"бодо";s:3:"brx";s:17:"бодо тілі";s:3:"brx";s:12:"бододо";s:3:"brx";s:10:"бафия";s:3:"ksf";s:10:"бафиа";s:3:"ksf";s:14:"бафияча";s:3:"ksf";s:12:"бафија";s:3:"ksf";s:10:"бафіа";s:3:"ksf";s:23:"белгісіз тіл";s:3:"und";s:27:"белгисиз тилде";s:3:"und";s:52:"без лингвистично съдържание";s:3:"zxx";s:48:"без лингвистичка содржина";s:3:"zxx";s:46:"без языкового содержания";s:3:"zxx";s:50:"без лингвистичког садржаја";s:3:"zxx";s:16:"биленски";s:3:"byn";s:21:"билин (блин)";s:3:"byn";s:8:"блін";s:3:"byn";s:12:"балучи";s:3:"bal";s:18:"белуџиски";s:3:"bal";s:20:"белуджский";s:3:"bal";s:12:"балучі";s:3:"bal";s:20:"балинейски";s:3:"ban";s:14:"балиски";s:3:"ban";s:18:"балийский";s:3:"ban";s:18:"балійська";s:3:"ban";s:8:"баса";s:3:"bas";s:16:"бамунски";s:3:"bax";s:10:"бамум";s:3:"bax";s:6:"бея";s:3:"bej";s:8:"беџа";s:3:"bej";s:10:"беджа";s:3:"bej";s:16:"биколски";s:3:"bik";s:20:"бикольский";s:3:"bik";s:20:"бікольська";s:3:"bik";s:8:"бини";s:3:"bin";s:8:"біні";s:3:"bin";s:10:"брадж";s:3:"bra";s:8:"брај";s:3:"bra";s:10:"брауи";s:3:"bra";s:16:"бурятски";s:3:"bua";s:18:"бурјатски";s:3:"bua";s:14:"бурятаг";s:3:"bua";s:18:"бурятский";s:3:"bua";s:18:"бурятська";s:3:"bua";s:23:"блис символи";s:3:"zbl";s:22:"блиссимболи";s:3:"zbl";s:26:"блиссимволика";s:3:"zbl";s:21:"блісса мова";s:3:"zbl";s:16:"бетавски";s:3:"bew";s:10:"бафут";s:3:"bfd";s:12:"бадага";s:3:"bfq";s:8:"булу";s:3:"bum";}i:707;a:19:{s:15:"ባስኪርኛ";s:2:"ba";s:15:"ባምባርኛ";s:2:"bm";s:43:"ઓસ્ટ્રિઅન જર્મન";s:5:"de-at";s:12:"ባስክኛ";s:2:"eu";s:16:"ګلېشيايي";s:2:"gl";s:12:"ګوراني";s:2:"gn";s:12:"ګجراتي";s:2:"gu";s:12:"莫克沙文";s:3:"mdf";s:21:"ઓક્સિટન";s:2:"oc";s:15:"ઓરોમો";s:2:"om";s:24:"ઓસ્સેટિક";s:2:"os";s:25:"ባህላዊ ቻይንኛ";s:7:"zh-hant";s:9:"ባፊያ";s:3:"ksf";s:12:"莫霍克文";s:3:"moh";s:58:"ઓસ્ટ્રેલિયન અંગ્રેજી";s:5:"en-au";s:9:"莫西文";s:3:"mos";s:24:"ઓઝિંબ્વા";s:2:"oj";s:12:"ઓસેજ";s:3:"osa";s:40:"ઓટોમાન તુર્કિશ";s:3:"ota";}i:924;a:75:{s:14:"Μπασκίρ";s:2:"ba";s:18:"Μποζπούρι";s:3:"bho";s:16:"Μπισλάμα";s:2:"bi";s:16:"Μπαμπάρα";s:2:"bm";s:18:"Μπενγκάλι";s:2:"bn";s:16:"Μπουγκίζ";s:3:"bug";s:33:"པར་ཤི་ཡཱན་ཁ";s:2:"fa";s:8:"Μανξ";s:2:"gv";s:16:"Μαϊτχίλι";s:3:"mai";s:10:"Μόκσα";s:3:"mdf";s:16:"Μαλαγάσι";s:2:"mg";s:12:"Μάρσαλ";s:2:"mh";s:10:"Μάορι";s:2:"mi";s:26:"Μινανγκαμπάου";s:3:"min";s:20:"Μαλαγιαλάμ";s:2:"ml";s:18:"Μογγολικά";s:2:"mn";s:12:"Μαράθι";s:2:"mr";s:10:"Μαλάι";s:2:"ms";s:18:"Μαλτεζικά";s:2:"mt";s:22:"Μιραντεζικά";s:3:"mwl";s:30:"པཱན་ཇ་བི་ཁ";s:2:"pa";s:12:"པ་ལི";s:2:"pi";s:30:"པོ་ལན་སྐད།";s:2:"pl";s:24:"པོ་ལིཤ་ཁ";s:2:"pl";s:24:"པཱཤ་ཏོ་ཁ";s:2:"ps";s:36:"པོར་ཅུ་གིས་ཁ";s:2:"pt";s:67:"པ་ཞའི་མི། ཕི་ཐོ་ཡའི་མི།";s:5:"pt-br";s:12:"Μπέμπα";s:3:"bem";s:10:"Μπένα";s:3:"bez";s:12:"Μπόντο";s:3:"brx";s:12:"Μάχαμε";s:3:"jmc";s:14:"Μακόντε";s:3:"kde";s:12:"Μπάφια";s:3:"ksf";s:10:"Μασάι";s:3:"mas";s:10:"Μερού";s:3:"mer";s:16:"Μορίσιεν";s:3:"mfe";s:23:"Μακούβα-Μέτο";s:3:"mgh";s:8:"Μετά";s:3:"mgo";s:10:"Μοχόκ";s:3:"moh";s:18:"Μουντάνγκ";s:3:"mua";s:18:"Μολδαβικά";s:5:"ro-md";s:10:"Μπλιν";s:3:"byn";s:18:"Μπαλούτσι";s:3:"bal";s:16:"Μπαλινίζ";s:3:"ban";s:10:"Μπάσα";s:3:"bas";s:14:"Μπαμούν";s:3:"bax";s:10:"Μπέζα";s:3:"bej";s:12:"Μπικόλ";s:3:"bik";s:10:"Μπίνι";s:3:"bin";s:12:"Μπρατζ";s:3:"bra";s:16:"Μπουριάτ";s:3:"bua";s:8:"Μάρι";s:3:"chm";s:27:"Μέσα Ολλανδικά";s:3:"dum";s:23:"Μέσα Αγγλικά";s:3:"enm";s:23:"Μέσα Γαλλικά";s:3:"frm";s:34:"Μέσα Άνω Γερμανικά";s:3:"gmh";s:12:"Μόνγκο";s:3:"lol";s:18:"Μαντουρίζ";s:3:"mad";s:14:"Μαγκάχι";s:3:"mag";s:14:"Μακαζάρ";s:3:"mak";s:18:"Μαντίνγκο";s:3:"man";s:10:"Μάμπα";s:3:"mde";s:12:"Μανδάρ";s:3:"mdr";s:10:"Μέντε";s:3:"men";s:27:"Μέσα Ιρλανδικά";s:3:"mga";s:12:"Μικμάκ";s:3:"mic";s:14:"Μαντσού";s:3:"mnc";s:18:"Μανιπούρι";s:3:"mni";s:8:"Μόσι";s:3:"mos";s:18:"Μαργουάρι";s:3:"mwr";s:14:"Μπαφούτ";s:3:"bfd";s:14:"Μπουλού";s:3:"bum";s:18:"Μεντούμπα";s:3:"byv";s:8:"Μάφα";s:3:"maf";s:10:"Μιένε";s:3:"mye";}i:576;a:116:{s:14:"باشغیری";s:2:"ba";s:14:"بَشکیٖر";s:2:"ba";s:18:"باشقىرتچە";s:2:"ba";s:12:"باشکیر";s:2:"ba";s:12:"بایرنی";s:3:"bar";s:23:"بلوچی مکرانی";s:3:"bcc";s:21:"بلوچی جنوبی";s:3:"bcc";s:14:"بلوروسی";s:2:"be";s:22:"بیلَروٗشیَن";s:2:"be";s:16:"بېلاروسي";s:2:"be";s:18:"بېلارۇسچە";s:2:"be";s:16:"بیلاروسی";s:2:"be";s:44:"بلاروسی (دستورخط کلاسیک)";s:9:"be-tarask";s:12:"بلغاری";s:2:"bg";s:8:"بینا";s:3:"bez";s:12:"بلغاري";s:2:"bg";s:16:"بۇلغارچە";s:2:"bg";s:14:"بوجپوری";s:3:"bho";s:16:"بوجپوٗری";s:3:"bho";s:18:"بوجپۇرىچە";s:3:"bho";s:14:"بیسلاما";s:2:"bi";s:14:"بِسلاما";s:2:"bi";s:18:"بىسلاماچە";s:2:"bi";s:14:"بانجاری";s:3:"bjn";s:18:"بامبارایی";s:2:"bm";s:14:"بَمبارا";s:2:"bm";s:18:"بامباراچە";s:2:"bm";s:12:"بمبارا";s:2:"bm";s:12:"بنگالی";s:2:"bn";s:16:"بَنٛگٲلۍ";s:2:"bn";s:12:"بنګالي";s:2:"bn";s:16:"بېنگالچە";s:2:"bn";s:14:"بختياري";s:3:"bqi";s:14:"بختیاری";s:3:"bqi";s:18:"برتانیایی";s:2:"br";s:12:"بریٹَن";s:2:"br";s:12:"برېتون";s:2:"br";s:18:"بىرېتونچە";s:2:"br";s:10:"بریٹن";s:2:"br";s:14:"براهوئی";s:3:"brh";s:16:"بوسنیایی";s:2:"bs";s:16:"بوسنِیَن";s:2:"bs";s:10:"بوسني";s:2:"bs";s:18:"بوسنىيەچە";s:2:"bs";s:10:"بوسنی";s:2:"bs";s:14:"بوگیایی";s:3:"bug";s:14:"بَگنیٖز";s:3:"bug";s:12:"بۇگىچە";s:3:"bug";s:29:"بوٚنِم ساربِیَن";s:3:"dsb";s:14:"بۇتانچە";s:2:"dz";s:37:"بَرطانوی اَنٛگریٖزۍ";s:5:"en-gb";s:29:"برطانوی انگریزی";s:5:"en-gb";s:10:"باسکی";s:2:"eu";s:8:"باسک";s:2:"eu";s:10:"باسکي";s:2:"eu";s:14:"باسكىچە";s:2:"eu";s:21:"بین لسانیات";s:2:"ia";s:15:"برمه‌ای";s:2:"my";s:12:"بٔمیٖز";s:2:"my";s:14:"بىرماچە";s:2:"my";s:8:"برمی";s:2:"my";s:25:"بوکسمال نروژی";s:2:"nb";s:25:"بوٚنِم جٔرمَن";s:3:"nds";s:33:"برازیٖلی پُتَگیٖز";s:5:"pt-br";s:41:"بىرازىلىيە پورتۇگالچە";s:5:"pt-br";s:29:"برازیلی پرتگالی";s:5:"pt-br";s:12:"بمبایی";s:3:"bem";s:12:"بیٚمبا";s:3:"bem";s:14:"بېمباچە";s:3:"bem";s:10:"بیمبا";s:3:"bem";s:8:"بينا";s:3:"bez";s:10:"بنایی";s:3:"bez";s:12:"بېناچە";s:3:"bez";s:12:"بودویی";s:3:"brx";s:12:"بودوچە";s:3:"brx";s:8:"بوڈو";s:3:"brx";s:10:"بافيا";s:3:"ksf";s:14:"بافیایی";s:3:"ksf";s:16:"بافىياچە";s:3:"ksf";s:12:"ਐਂਕੋ";s:3:"nqo";s:28:"بدون محتوى لغوي";s:3:"zxx";s:32:"بدون محتوای زبانی";s:3:"zxx";s:8:"بلین";s:3:"byn";s:10:"بٕلِن";s:3:"byn";s:14:"بىلىنچە";s:3:"byn";s:10:"بلوچی";s:3:"bal";s:14:"بَلوٗچی";s:3:"bal";s:10:"بلوڅي";s:3:"bal";s:16:"بېلۇجىچە";s:3:"bal";s:14:"بالیایی";s:3:"ban";s:16:"بالِنیٖز";s:3:"ban";s:12:"بالىچە";s:3:"ban";s:12:"باسایی";s:3:"bas";s:8:"باسا";s:3:"bas";s:12:"باساچە";s:3:"bas";s:8:"بامن";s:3:"bax";s:10:"بمونی";s:3:"bax";s:14:"بامۇنچە";s:3:"bax";s:10:"بجایی";s:3:"bej";s:8:"بیجا";s:3:"bej";s:12:"بېجاچە";s:3:"bej";s:12:"بیکولی";s:3:"bik";s:10:"بِکول";s:3:"bik";s:14:"بىكولچە";s:3:"bik";s:8:"بینی";s:3:"bin";s:8:"بِنی";s:3:"bin";s:12:"بىنىچە";s:3:"bin";s:8:"براج";s:3:"bra";s:8:"برٛج";s:3:"bra";s:14:"بىراجچە";s:3:"bra";s:14:"بوریاتی";s:3:"bua";s:14:"بُرِیَت";s:3:"bua";s:18:"بۇرىياتچە";s:3:"bua";s:29:"بىلىس بەلگىلىرى";s:3:"zbl";s:14:"بافۇتچە";s:3:"bfd";s:12:"بۇلۇچە";s:3:"bum";}i:732;a:45:{s:18:"બશ્કીર";s:2:"ba";s:30:"બેલારુશિયન";s:2:"be";s:27:"બલ્ગેરિયન";s:2:"bg";s:24:"બિસ્લામા";s:2:"bi";s:24:"બામ્બારા";s:2:"bm";s:18:"બંગાળી";s:2:"bn";s:36:"બિષ્નુપ્રિયા";s:3:"bpy";s:21:"બ્રેટોન";s:2:"br";s:21:"બ્રાહુઈ";s:3:"brh";s:24:"બોસ્નિયન";s:2:"bs";s:18:"બગિનીસ";s:3:"bug";s:12:"ቼሮኬኛ";s:3:"chr";s:9:"ቼክኛ";s:2:"cs";s:18:"ດີວີຮີ";s:2:"dv";s:21:"ດີຊອງຄາ";s:2:"dz";s:46:"બ્રિટિશ અંગ્રેજી";s:5:"en-gb";s:15:"બાસ્ક";s:2:"eu";s:18:"બર્મીઝ";s:2:"my";s:9:"ດັຊ";s:2:"nl";s:58:"બ્રાઝિલીયન પોર્ટુગીઝ";s:5:"pt-br";s:12:"올로프어";s:2:"wo";s:18:"બેમ્બા";s:3:"bem";s:12:"બેના";s:3:"bez";s:12:"બોડો";s:3:"brx";s:15:"ດົວລາ";s:3:"dua";s:15:"બફિયા";s:3:"ksf";s:31:"બહુવિધ ભાષા";s:3:"mul";s:15:"બ્લિન";s:3:"byn";s:15:"બલૂચી";s:3:"bal";s:21:"બાલિનીસ";s:3:"ban";s:9:"બસા";s:3:"bas";s:12:"બામન";s:3:"bax";s:12:"બેજા";s:3:"bej";s:15:"બિકોલ";s:3:"bik";s:12:"બિની";s:3:"bin";s:21:"બુરિયાત";s:3:"bua";s:18:"ດາໂກຕາ";s:3:"dak";s:15:"ດາກວາ";s:3:"dar";s:15:"ດິນກາ";s:3:"din";s:15:"ດອກຣີ";s:3:"doi";s:18:"ດັກກາງ";s:3:"dum";s:12:"ດູລາ";s:3:"dyu";s:18:"ດາຊາກາ";s:3:"dzg";s:12:"બાયા";s:3:"gba";s:39:"બ્લિસિમ્બોલ્સ";s:3:"zbl";}i:489;a:58:{s:14:"בשקירית";s:2:"ba";s:14:"בווארית";s:3:"bar";s:14:"בײַעריש";s:3:"bar";s:16:"בלארוסית";s:2:"be";s:20:"בעלאַרוסיש";s:2:"be";s:14:"בולגרית";s:2:"bg";s:18:"בולגאַריש";s:2:"bg";s:16:"בוג׳פורי";s:3:"bho";s:12:"ביסלמה";s:2:"bi";s:12:"במבארה";s:2:"bm";s:12:"בנגלית";s:2:"bn";s:18:"בענגאַליש";s:2:"bn";s:14:"ברטונית";s:2:"br";s:16:"ברעטאניש";s:2:"br";s:12:"בוסנית";s:2:"bs";s:12:"באסניש";s:2:"bs";s:16:"בוגינזית";s:3:"bug";s:9:"촉토어";s:3:"cho";s:12:"ドイツ語";s:2:"de";s:10:"בסקית";s:2:"eu";s:14:"באַסקיש";s:2:"eu";s:15:"হাউসা";s:2:"ha";s:33:"হাওয়াইয়ান";s:3:"haw";s:18:"হিব্রু";s:2:"he";s:18:"হিন্দি";s:2:"hi";s:39:"হিলিগ্যায়নোন";s:3:"hil";s:25:"হিরি মোতু";s:2:"ho";s:27:"হাইতিয়ান";s:2:"ht";s:30:"হাঙ্গেরীয়";s:2:"hu";s:18:"হেরেরো";s:2:"hz";s:14:"בורמזית";s:2:"my";s:18:"בירמאַניש";s:2:"my";s:8:"במבה";s:3:"bem";s:6:"בנה";s:3:"bez";s:8:"בודו";s:3:"brx";s:15:"ドゥアラ語";s:3:"dua";s:21:"হিট্টিট";s:3:"hit";s:10:"באפיה";s:3:"ksf";s:8:"בלין";s:3:"byn";s:14:"באלוצ׳י";s:3:"bal";s:14:"בלינזית";s:3:"ban";s:20:"באַלינעזיש";s:3:"ban";s:8:"בסאא";s:3:"bas";s:8:"באקס";s:3:"bax";s:8:"בז׳ה";s:3:"bej";s:10:"ביקול";s:3:"bik";s:8:"ביני";s:3:"bin";s:10:"בראג׳";s:3:"bra";s:12:"בוריאט";s:3:"bua";s:15:"ドグリブ語";s:3:"dgr";s:18:"ドーグリー語";s:3:"doi";s:15:"হাইডা";s:3:"hai";s:18:"হ্‌মোঙ";s:3:"hmn";s:12:"হুপা";s:3:"hup";s:12:"復活島文";s:3:"rap";s:20:"בליסימבולס";s:3:"zbl";s:10:"באפוט";s:3:"bfd";s:8:"בולו";s:3:"bum";}i:348;a:45:{s:18:"बशख़िर";s:2:"ba";s:18:"बष्किर";s:2:"ba";s:21:"बाश्किर";s:2:"ba";s:24:"बेलारूसी";s:2:"be";s:30:"बेलारुशियन";s:2:"be";s:33:"बुल्गारियाई";s:2:"bg";s:27:"बल्गेरियन";s:2:"bg";s:36:"बुल्गेरियाली";s:2:"bg";s:24:"बिस्लामा";s:2:"bi";s:24:"बाम्बारा";s:2:"bm";s:18:"बंगाली";s:2:"bn";s:18:"ब्रेटन";s:2:"br";s:21:"ब्रेतॉन";s:2:"br";s:27:"बोस्नियाई";s:2:"bs";s:24:"बोस्नियन";s:2:"bs";s:30:"बोस्नियाली";s:2:"bs";s:18:"बगिनीस";s:3:"bug";s:49:"ब्रिटिश अंग्रेज़ी";s:5:"en-gb";s:43:"ब्रिटिश इंग्रजी";s:5:"en-gb";s:15:"बास्क";s:2:"eu";s:21:"बर्मीज़";s:2:"my";s:15:"बर्मी";s:2:"my";s:9:"네팔어";s:2:"ne";s:12:"네와르어";s:3:"new";s:15:"네덜란드어";s:2:"nl";s:55:"ब्राज़ीली पुर्तगाली";s:5:"pt-br";s:58:"ब्राझिलियन पोर्तुगीज";s:5:"pt-br";s:18:"बेम्बा";s:3:"bem";s:12:"बेना";s:3:"bez";s:12:"बोडो";s:3:"brx";s:12:"बफिआ";s:3:"ksf";s:18:"बाफिया";s:3:"ksf";s:15:"ब्लिन";s:3:"byn";s:15:"बलूची";s:3:"bal";s:15:"बलुची";s:3:"bal";s:21:"बालिनीस";s:3:"ban";s:9:"बसा";s:3:"bas";s:12:"बेजा";s:3:"bej";s:15:"बिकोल";s:3:"bik";s:12:"बिनी";s:3:"bin";s:12:"ब्रज";s:3:"bra";s:21:"बुरियात";s:3:"bua";s:12:"बाया";s:3:"gba";s:21:"네와르어 (고전)";s:3:"nwc";s:39:"ब्लिसिम्बॉल्स";s:3:"zbl";}i:378;a:41:{s:20:"բաշկիրերեն";s:2:"ba";s:24:"բելառուսերեն";s:2:"be";s:22:"բուլղարերեն";s:2:"bg";s:14:"բամբարա";s:2:"bm";s:20:"բենգալերեն";s:2:"bn";s:20:"բրետոներեն";s:2:"br";s:18:"բոսնիերեն";s:2:"bs";s:34:"ലോവർ സോർബിയൻ";s:3:"dsb";s:37:"բրիտանական անգլերեն";s:5:"en-gb";s:16:"բասկերեն";s:2:"eu";s:21:"ലോജ്ബാൻ";s:3:"jbo";s:21:"ലാറ്റിൻ";s:2:"la";s:18:"ലാഡിനോ";s:3:"lad";s:36:"ലക്‌സംബർഗിഷ്";s:2:"lb";s:24:"ലഹ്ഗിയാൻ";s:3:"lez";s:27:"ലിംബർഗിഷ്";s:2:"li";s:18:"ലിംഗാല";s:2:"ln";s:12:"ലാവോ";s:2:"lo";s:12:"ലൊസി";s:3:"loz";s:30:"ലിത്വാനിയൻ";s:2:"lt";s:30:"ലാറ്റ്വിയൻ";s:2:"lv";s:20:"բիրմայերեն";s:2:"my";s:19:"ലോ ജർമൻ";s:3:"nds";s:47:"բրազիլական պորտուգալերեն";s:5:"pt-br";s:10:"բեմբա";s:3:"bem";s:8:"բենա";s:3:"bez";s:8:"բոդո";s:3:"brx";s:10:"բաֆիա";s:3:"ksf";s:15:"ലാംഗി";s:3:"lag";s:18:"ലഗോത്ത";s:3:"lkt";s:28:"ലുബ-കറ്റംഗ";s:2:"lu";s:25:"ലൂബ-ലുലുവ";s:3:"lua";s:12:"ലുവോ";s:3:"luo";s:15:"ലുയിയ";s:3:"luy";s:22:"ലൂലീ സമി";s:3:"smj";s:77:"ലാറ്റിൻ അമേരിക്കൻ സ്‌പാനിഷ്";s:6:"es-419";s:18:"ലഹ്‌ൻഡ";s:3:"lah";s:9:"ലംബ";s:3:"lam";s:24:"ലൂയിസെനോ";s:3:"lui";s:12:"ലുൻഡ";s:3:"lun";s:33:"ലിംഗ്വിറ്റ്";s:3:"tli";}i:496;a:60:{s:18:"バシキール語";s:2:"ba";s:39:"バイエルン・オーストリア語";s:3:"bar";s:18:"バンジャル語";s:3:"bjn";s:15:"バンバラ語";s:2:"bm";s:12:"טיבטית";s:2:"bo";s:14:"טיבעטיש";s:2:"bo";s:27:"バフティヤーリー語";s:3:"bqi";s:24:"טטרית של קרים";s:3:"crh";s:12:"טשעכיש";s:2:"cs";s:12:"バスク語";s:2:"eu";s:18:"バニュマス語";s:7:"map-bms";s:14:"טצ׳להיט";s:3:"shi";s:12:"טמילית";s:2:"ta";s:12:"טאַמיל";s:2:"ta";s:10:"טלוגו";s:2:"te";s:8:"טטום";s:3:"tet";s:14:"טג׳יקית";s:2:"tg";s:18:"טיגרינאית";s:2:"ti";s:16:"טורקמנית";s:2:"tk";s:18:"טורקמעניש";s:2:"tk";s:10:"טגלוג";s:2:"tl";s:18:"טאַגאַלאג";s:2:"tl";s:14:"טוניסיה";s:2:"tn";s:10:"טונגן";s:2:"to";s:17:"טוק פיסין";s:3:"tpi";s:12:"טורקית";s:2:"tr";s:12:"טסונגה";s:2:"ts";s:10:"טטרית";s:2:"tt";s:16:"טאָטעריש";s:2:"tt";s:14:"טומבוקה";s:3:"tum";s:8:"טווי";s:2:"tw";s:12:"טהיטית";s:2:"ty";s:14:"טובינית";s:3:"tyv";s:37:"טמזייט של מרכז מרוקו";s:3:"tzm";s:10:"טאיטה";s:3:"dav";s:15:"バフィア語";s:3:"ksf";s:6:"טסו";s:3:"teo";s:12:"טסוואק";s:3:"twq";s:12:"טיגרית";s:3:"tig";s:10:"טיגרע";s:3:"tig";s:18:"バルーチー語";s:3:"bal";s:9:"バリ語";s:3:"ban";s:9:"バサ語";s:3:"bas";s:12:"バムン語";s:3:"bax";s:15:"司克司卡文";s:3:"bla";s:12:"司雷夫文";s:3:"den";s:9:"バヤ語";s:3:"gba";s:29:"טורקית עותומנית";s:3:"ota";s:10:"טימנה";s:3:"tem";s:8:"טרנו";s:3:"ter";s:6:"טיב";s:3:"tiv";s:12:"טוקלאו";s:3:"tkl";s:14:"טלינגיט";s:3:"tli";s:10:"טמאשק";s:3:"tmh";s:16:"טסימשיאן";s:3:"tsi";s:12:"טובאלו";s:3:"tvl";s:15:"バフット語";s:3:"bfd";s:12:"バダガ語";s:3:"bfq";s:8:"טיאפ";s:3:"kcg";s:10:"טרוקו";s:3:"trv";}i:305;a:37:{s:27:"ბაშკირული";s:2:"ba";s:30:"ბელორუსული";s:2:"be";s:27:"ბულგარული";s:2:"bg";s:21:"ბოჯპური";s:3:"bho";s:21:"ბამბარა";s:2:"bm";s:27:"ბენგალური";s:2:"bn";s:27:"ბრეტონული";s:2:"br";s:24:"ბოსნიური";s:2:"bs";s:24:"ბერძნული";s:2:"el";s:55:"ბრიტანული ინგლისური";s:5:"en-gb";s:21:"ბასკური";s:2:"eu";s:21:"ბირმული";s:2:"my";s:67:"ბრაზილიური პორტუგალიური";s:5:"pt-br";s:12:"特塔姆文";s:3:"tet";s:12:"特松加文";s:2:"ts";s:9:"特威文";s:2:"tw";s:9:"광둥어";s:3:"yue";s:15:"ბემბა";s:3:"bem";s:12:"ბენა";s:3:"bez";s:12:"ბოდო";s:3:"brx";s:15:"ბაფია";s:3:"ksf";s:9:"特索文";s:3:"teo";s:18:"ბილინი";s:3:"byn";s:18:"ბელუჯი";s:3:"bal";s:24:"ბალინური";s:3:"ban";s:12:"ბასა";s:3:"bas";s:18:"ბამუნი";s:3:"bax";s:12:"ბეჯა";s:3:"bej";s:15:"ბრაჯი";s:3:"bra";s:27:"ბურიატული";s:3:"bua";s:12:"特拉华文";s:3:"del";s:18:"ბოშური";s:3:"rom";s:12:"特列纳文";s:3:"ter";s:15:"特林吉特文";s:3:"tli";s:15:"特林基特文";s:3:"tli";s:42:"ბლისსიმბოლოები";s:3:"zbl";s:18:"特薩克尼恩文";s:3:"tsd";}i:36;a:17:{s:18:"បែស្កឺ";s:2:"ba";s:27:"បេឡារុស្ស";s:2:"be";s:30:"ប៊ុលហ្ការី";s:2:"bg";s:24:"បាម្បារា";s:2:"bm";s:30:"បង់ក្លាដែស";s:2:"bn";s:27:"ប្រីស្តុន";s:2:"br";s:18:"បូស្នី";s:2:"bs";s:18:"បាស្កេ";s:2:"eu";s:18:"បារាំង";s:2:"fr";s:24:"𐌲𐌿𐍄𐌹𐍃𐌺";s:3:"got";s:18:"ᎬᏩᎵᏲᏥᎢ";s:2:"it";s:9:"간다어";s:2:"lg";s:21:"បឹនជាពិ";s:2:"pa";s:9:"팔리어";s:2:"pi";s:18:"ប៉ូឡូញ";s:2:"pl";s:18:"បាស្តូ";s:2:"ps";s:12:"팔레비어";s:3:"pal";}i:244;a:28:{s:21:"ಬಶ್ಕಿರ್";s:2:"ba";s:30:"ಬೆಲರೂಸಿಯನ್";s:2:"be";s:30:"ಬಲ್ಗೇರಿಯನ್";s:2:"bg";s:24:"ಬಿಸ್ಲಾಮಾ";s:2:"bi";s:18:"ಬಂಬಾರಾ";s:2:"bm";s:21:"ಬೆಂಗಾಲಿ";s:2:"bn";s:21:"ಬ್ರೆಟನ್";s:2:"br";s:27:"ಬೋಸ್ನಿಯನ್";s:2:"bs";s:24:"ಬುಗಿನೀಸ್";s:3:"bug";s:49:"ಬ್ರಿಟಿಷ್ ಇಂಗ್ಲೀಷ್";s:5:"en-gb";s:18:"ಬಾಸ್ಕ್";s:2:"eu";s:21:"ಬರ್ಮೀಸ್";s:2:"my";s:64:"ಬ್ರೆಜಿಲಿಯನ್ ಪೋರ್ಚುಗೀಸ್";s:5:"pt-br";s:15:"ಬೆಂಬಾ";s:3:"bem";s:9:"ಬೆನ";s:3:"bez";s:12:"ಬೋಡೊ";s:3:"brx";s:12:"ಬಫಿಯ";s:3:"ksf";s:52:"ಬಹುಸಂಖ್ಯೆಯ ಭಾಷೆಗಳು";s:3:"mul";s:18:"ಬ್ಲಿನ್";s:3:"byn";s:15:"ಬಲೂಚಿ";s:3:"bal";s:21:"ಬಲಿನೀಸ್";s:3:"ban";s:9:"ಬಸಾ";s:3:"bas";s:12:"ಬೇಜಾ";s:3:"bej";s:18:"ಬಿಕೊಲ್";s:3:"bik";s:12:"ಬಿನಿ";s:3:"bin";s:18:"ಬ್ರಾಜ್";s:3:"bra";s:21:"ಬುರಿಯಟ್";s:3:"bua";s:45:"ಬ್ಲಿಸ್‌ಸಿಂಬಲ್ಸ್";s:3:"zbl";}i:148;a:7:{s:15:"바슈키르어";s:2:"ba";s:12:"바스크어";s:2:"eu";s:12:"바피아어";s:3:"ksf";s:9:"바이어";s:3:"vai";s:9:"바사어";s:3:"bas";s:9:"바문어";s:3:"bax";s:12:"바푸트어";s:3:"bfd";}i:738;a:52:{s:15:"ບາຣກີ";s:2:"ba";s:24:"ບັງກາຣຽນ";s:2:"bg";s:21:"ບິສລະມາ";s:2:"bi";s:21:"ບາມບາຣາ";s:2:"bm";s:18:"ບອສນຽນ";s:2:"bs";s:24:"ບູຈີເນັດ";s:3:"bug";s:15:"ບັສກີ";s:2:"eu";s:21:"લોજ્બાન";s:3:"jbo";s:15:"લેટિન";s:2:"la";s:18:"લાદીનો";s:3:"lad";s:36:"લક્ઝેમબર્ગિશ";s:2:"lb";s:21:"લેઝધીયન";s:3:"lez";s:53:"લિંગ્વા ફેન્કા નોવા";s:3:"lfn";s:30:"લિંબૂર્ગિશ";s:2:"li";s:21:"લિંગાલા";s:2:"ln";s:21:"લાઓથિયન";s:2:"lo";s:12:"લોઝી";s:3:"loz";s:24:"લિથુનિયન";s:2:"lt";s:15:"લુશાઇ";s:3:"lus";s:21:"લાતવિયન";s:2:"lv";s:22:"લો જર્મન";s:3:"nds";s:46:"ບຣາຊິລຽນ ປໍຕູກີສ";s:5:"pt-br";s:12:"ບີນາ";s:3:"bez";s:15:"ບາເຟຍ";s:3:"ksf";s:12:"લંગી";s:3:"lag";s:18:"લાકોટા";s:3:"lkt";s:37:"લ્યૂબા કટાંગા";s:2:"lu";s:34:"લ્યૂબા-લુલુઆ";s:3:"lua";s:15:"લ્યુઓ";s:3:"luo";s:15:"લુઈયા";s:3:"luy";s:28:"લ્યુલ સામી";s:3:"smj";s:48:"ບໍ່ສາມາດລະບຸພາສາ";s:3:"und";s:48:"ບໍ່ມີເນື້ອຫາພາສາ";s:3:"zxx";s:12:"ບລິນ";s:3:"byn";s:59:"લેટિન અમેરિકન સ્પેનિશ";s:6:"es-419";s:18:"ບາລູຊີ";s:3:"bal";s:24:"ບາລີເນັດ";s:3:"ban";s:12:"ບາຊາ";s:3:"bas";s:15:"ບາມຸນ";s:3:"bax";s:12:"ບີເຈ";s:3:"bej";s:15:"ບີຄອນ";s:3:"bik";s:12:"ບີນີ";s:3:"bin";s:9:"ບຣາ";s:3:"bra";s:15:"ບູຣຽດ";s:3:"bua";s:12:"ບາຍາ";s:3:"gba";s:21:"લાહન્ડા";s:3:"lah";s:18:"લામ્બા";s:3:"lam";s:21:"લુઇસેનો";s:3:"lui";s:18:"લુન્ડા";s:3:"lun";s:18:"લિંગિત";s:3:"tli";s:15:"ບາຟັດ";s:3:"bfd";s:12:"ບູລູ";s:3:"bum";}i:372;a:32:{s:18:"ബഷ്ഖിർ";s:2:"ba";s:30:"ബെലാറുഷ്യൻ";s:2:"be";s:24:"ബൾഗേറിയൻ";s:2:"bg";s:24:"ബിസ്‌ലാമ";s:2:"bi";s:15:"ബംബാറ";s:2:"bm";s:18:"ബംഗാളി";s:2:"bn";s:24:"ബ്രെട്ടൺ";s:2:"br";s:15:"보스니아어";s:2:"bs";s:24:"ബോസ്നിയൻ";s:2:"bs";s:24:"ബുഗിനീസ്";s:3:"bug";s:55:"ബ്രിട്ടീഷ് ഇംഗ്ലീഷ്";s:5:"en-gb";s:21:"ബാസ്‌ക്";s:2:"eu";s:18:"ബർമീസ്";s:2:"my";s:61:"ബ്രസീലിയൻ പോർച്ചുഗീസ്";s:5:"pt-br";s:9:"보틱어";s:3:"vot";s:12:"ബേംബ";s:3:"bem";s:12:"ബെനാ";s:3:"bez";s:9:"보도어";s:3:"brx";s:12:"ബോഡോ";s:3:"brx";s:15:"ബ്ലിൻ";s:3:"byn";s:15:"ബലൂചി";s:3:"bal";s:24:"ബാലിനീസ്";s:3:"ban";s:6:"ബസ";s:3:"bas";s:15:"ബാമുൻ";s:3:"bax";s:9:"ബേജ";s:3:"bej";s:15:"ബികോൽ";s:3:"bik";s:12:"ബിനി";s:3:"bin";s:15:"ബ്രജ്";s:3:"bra";s:27:"ബുറിയത്ത്";s:3:"bua";s:39:"ബ്ലിസ്സിംബൽസ്";s:3:"zbl";s:21:"ബാഫട്ട്";s:3:"bfd";s:12:"ബുളു";s:3:"bum";}i:120;a:85:{s:30:"ဘက်ရှ်ကီအာ";s:2:"ba";s:18:"ဘီလာရု";s:2:"be";s:33:"ဘူဂေးရီးယား";s:2:"bg";s:21:"ဘန်ဘာရာ";s:2:"bm";s:24:"ဘင်္ဂါလီ";s:2:"bn";s:21:"ဘရီတွန်";s:2:"br";s:36:"ဘော့စ်နီးယား";s:2:"bs";s:7:"xeienne";s:3:"chy";s:6:"xajenn";s:3:"chy";s:8:"xi czech";s:2:"cs";s:9:"xi danish";s:2:"da";s:11:"xi jarimani";s:2:"de";s:6:"xongka";s:2:"dz";s:9:"xi giriki";s:2:"el";s:9:"xi nghezi";s:2:"en";s:8:"xi spain";s:2:"es";s:21:"ဘစ်က္ကီ";s:2:"eu";s:10:"xi finnish";s:2:"fi";s:8:"xi furwa";s:2:"fr";s:7:"xauscha";s:2:"ha";s:8:"xiheberu";s:2:"he";s:6:"xorvat";s:2:"hr";s:9:"xorvatcha";s:2:"hr";s:9:"xi ithali";s:2:"it";s:8:"xaponés";s:2:"ja";s:9:"xi japani";s:2:"ja";s:8:"xavanés";s:2:"jv";s:8:"xeorxanu";s:2:"ka";s:9:"xeorxiano";s:2:"ka";s:7:"xmercha";s:2:"km";s:7:"xikorea";s:2:"ko";s:15:"미낭카바우";s:3:"min";s:12:"미란데어";s:3:"mwl";s:30:"ဘွတ်မော်လ်";s:2:"nb";s:7:"xi bunu";s:2:"nl";s:9:"xi norway";s:2:"no";s:9:"xi polixi";s:2:"pl";s:43:"ဘရာဇီး ပေါ်တူဂီ";s:5:"pt-br";s:21:"రోమన్ష్";s:2:"rm";s:12:"రండి";s:2:"rn";s:27:"రోమానియన్";s:2:"ro";s:18:"రష్యన్";s:2:"ru";s:10:"xi rhaxiya";s:2:"ru";s:4:"xona";s:2:"sn";s:9:"xi swiden";s:2:"sv";s:8:"xitsonga";s:2:"ts";s:14:"xi-zongjanesch";s:2:"ts";s:5:"xhosa";s:2:"xh";s:4:"xosa";s:2:"xh";s:9:"xhoština";s:2:"xh";s:8:"xhosagbe";s:2:"xh";s:7:"xhosera";s:2:"xh";s:5:"xhose";s:2:"xh";s:8:"xosancha";s:2:"xh";s:6:"xinès";s:2:"zh";s:8:"xitoycha";s:2:"zh";s:18:"xinès simplificat";s:7:"zh-hans";s:18:"xinès tradicional";s:7:"zh-hant";s:18:"ဘိန်ဘာ";s:3:"bem";s:12:"ဘီနာ";s:3:"bez";s:11:"xhula-fonji";s:3:"dyo";s:18:"ဘာဖီအာ";s:3:"ksf";s:15:"రోంబో";s:3:"rof";s:12:"ర్వా";s:3:"rwk";s:90:"ဘာသာစကား နှင့် ပတ်သက် သောအရာမရှိ";s:3:"zxx";s:12:"ဘာလီ";s:3:"ban";s:12:"ဘာဆာ";s:3:"bas";s:15:"xíriga chinook";s:3:"chn";s:11:"xudeo-persa";s:3:"jpr";s:12:"xudeo-árabe";s:3:"jrb";s:9:"xazi dili";s:3:"kha";s:10:"xotan dili";s:3:"kho";s:12:"미크맥어";s:3:"mic";s:27:"రాజస్తాని";s:3:"raj";s:27:"రాపన్యుయి";s:3:"rap";s:33:"రారోటొంగాన్";s:3:"rar";s:18:"రోమానీ";s:3:"rom";s:3:"xan";s:3:"shn";s:5:"xiang";s:3:"hsn";s:13:"xiang chinese";s:3:"hsn";s:11:"xiang-kiina";s:3:"hsn";s:16:"xiang-chinesesch";s:3:"hsn";s:7:"xiangyu";s:3:"hsn";s:14:"xiang Çincesi";s:3:"hsn";s:12:"미예네어";s:3:"mye";}i:860;a:29:{s:18:"ବଶଖିର୍";s:2:"ba";s:33:"ବେଲାରୁଷିଆନ୍";s:2:"be";s:30:"ବୁଲଗେରିଆନ୍";s:2:"bg";s:21:"ବିସଲାମା";s:2:"bi";s:24:"ବାମ୍ବାରା";s:2:"bm";s:21:"ବଙ୍ଗାଳୀ";s:2:"bn";s:21:"ବ୍ରେଟନ୍";s:2:"br";s:24:"ବୁଗୀନୀଜ୍";s:3:"bug";s:43:"ବ୍ରିଟିଶ୍ ଇଁରାଜୀ";s:5:"en-gb";s:24:"ବାସ୍କ୍ୱି";s:2:"eu";s:21:"ବର୍ମୀଜ୍";s:2:"my";s:67:"ବ୍ରାଜିଲିଆନ୍ ପର୍ତ୍ତୁଗୀଜ୍";s:5:"pt-br";s:21:"ବୋଲାପୁକ";s:2:"vo";s:12:"칼미크어";s:3:"xal";s:18:"ବେମ୍ବା";s:3:"bem";s:12:"ବେନା";s:3:"bez";s:12:"칼렌진어";s:3:"kln";s:37:"ବିବିଧ ଭାଷାମାନ";s:3:"mul";s:18:"ବ୍ଲିନ୍";s:3:"byn";s:18:"ବାଲୁଚି";s:3:"bal";s:24:"ବାଲିନୀଜ୍";s:3:"ban";s:12:"ବାସା";s:3:"bas";s:12:"ବେଜା";s:3:"bej";s:18:"ବିକୋଲ୍";s:3:"bik";s:12:"ବିନି";s:3:"bin";s:24:"ବିକ୍ସିକା";s:3:"bla";s:18:"ବ୍ରାଜ୍";s:3:"bra";s:21:"ବୁରିଆଟ୍";s:3:"bua";s:36:"ବ୍ଲିସିମ୍ବଲସ୍";s:3:"zbl";}i:604;a:127:{s:18:"ਬਸ਼ਕੀਰ";s:2:"ba";s:24:"ਬੇਲਾਰੂਸੀ";s:2:"be";s:27:"ਬੁਲਗਾਰੀਆਈ";s:2:"bg";s:15:"比斯拉马文";s:2:"bi";s:15:"比斯拉馬文";s:2:"bi";s:18:"ਬੰਬਾਰਾ";s:2:"bm";s:18:"ਬੰਗਾਲੀ";s:2:"bn";s:24:"比什奴普萊利亞文";s:3:"bpy";s:15:"ਬਰੇਟਨ";s:2:"br";s:21:"ਬੋਸਨੀਆਈ";s:2:"bs";s:27:"ดูซุนกลาง";s:3:"dtp";s:46:"ਬਰਤਾਨਵੀ ਅੰਗਰੇਜ਼ੀ";s:5:"en-gb";s:19:"لغة الباسك";s:2:"eu";s:12:"ਬਾਸਕ";s:2:"eu";s:28:"لغة أهل الهاواي";s:3:"haw";s:12:"لوجبان";s:3:"jbo";s:16:"لوجبانچە";s:3:"jbo";s:12:"لاتینی";s:2:"la";s:14:"لاتیٖنی";s:2:"la";s:12:"لاتیني";s:2:"la";s:14:"لاتىنچە";s:2:"la";s:12:"لاطینی";s:2:"la";s:12:"لادینو";s:3:"lad";s:12:"لیڈِنو";s:3:"lad";s:16:"لادىنوچە";s:3:"lad";s:22:"لوگزامبورگی";s:2:"lb";s:26:"لُکھزیمبورگِش";s:2:"lb";s:28:"لىيۇكسېمبۇرگچە";s:2:"lb";s:32:"لگژمبرگ کا باشندہ";s:2:"lb";s:8:"لزگی";s:3:"lez";s:16:"لیزگِیَن";s:3:"lez";s:16:"لېزگىنچە";s:3:"lez";s:16:"لیمبورگی";s:2:"li";s:18:"لِمبٔرگِش";s:2:"li";s:18:"لىمبۇرگچە";s:2:"li";s:14:"لینگالا";s:2:"ln";s:14:"لِنگالا";s:2:"ln";s:18:"لىنگالاچە";s:2:"ln";s:14:"لِنگَلا";s:2:"ln";s:12:"لائوسی";s:2:"lo";s:6:"لاو";s:2:"lo";s:12:"لويتين";s:2:"lo";s:14:"لائوسچە";s:2:"lo";s:6:"لاؤ";s:2:"lo";s:8:"لوری";s:3:"lrc";s:14:"لوزیایی";s:3:"loz";s:8:"لوزی";s:3:"loz";s:12:"لوزىچە";s:3:"loz";s:20:"لیتوانیایی";s:2:"lt";s:22:"لِتھوانِیَن";s:2:"lt";s:14:"ليتواني";s:2:"lt";s:14:"لىتۋاچە";s:2:"lt";s:20:"لتھُواینین";s:2:"lt";s:14:"لاتگالی";s:3:"ltg";s:15:"لوشه‌ای";s:3:"lus";s:12:"لُسہاے";s:3:"lus";s:16:"لتونیایی";s:2:"lv";s:16:"لَتوِیَن";s:2:"lv";s:14:"لېټواني";s:2:"lv";s:18:"لاتۋىيەچە";s:2:"lv";s:12:"لیٹوین";s:2:"lv";s:21:"لغة الملايو";s:2:"ms";s:12:"ਬਰਮੀ";s:2:"my";s:15:"ดองกา";s:2:"ng";s:15:"ดัตช์";s:2:"nl";s:14:"لهستانی";s:2:"pl";s:58:"ਬ੍ਰਾਜ਼ੀਲੀਆਈ ਪੁਰਤਗਾਲੀ";s:5:"pt-br";s:15:"ਬੇਮਬਾ";s:3:"bem";s:12:"ਬੇਨਾ";s:3:"bez";s:12:"ਬੋਡੋ";s:3:"brx";s:15:"ดัวลา";s:3:"dua";s:15:"ਬਫ਼ੀਆ";s:3:"ksf";s:10:"لانجي";s:3:"lag";s:10:"لانگی";s:3:"lag";s:14:"لانگىچە";s:3:"lag";s:12:"لاكوتا";s:3:"lkt";s:12:"لاکوتا";s:3:"lkt";s:12:"لاکوٹا";s:3:"lkt";s:29:"لوبایی‐کاتانگا";s:2:"lu";s:27:"لوُبا کَتَنٛگا";s:2:"lu";s:27:"لۇبا-كاتانگاچە";s:2:"lu";s:21:"لبا-كاتانجا";s:2:"lu";s:25:"لوبایی‐لولوا";s:3:"lua";s:25:"لوٗبا لوٗلُوا";s:3:"lua";s:21:"لۇبا-لۇئاچە";s:3:"lua";s:21:"لیوبا لولوآ";s:3:"lua";s:12:"لوئویی";s:3:"luo";s:8:"لُوو";s:3:"luo";s:12:"لۇئوچە";s:3:"luo";s:4:"لو";s:3:"luo";s:8:"لويا";s:3:"luy";s:8:"لویا";s:3:"luy";s:12:"لۇياچە";s:3:"luy";s:21:"لغات متعددة";s:3:"mul";s:17:"لوله سامی";s:3:"smj";s:19:"لولیے سَمی";s:3:"smj";s:21:"لۇلې سامىچە";s:3:"smj";s:15:"لول سامی";s:3:"smj";s:26:"لغة غير معروفة";s:3:"und";s:9:"比林文";s:3:"byn";s:38:"لیٹٕن امریٖکی سپینِش";s:6:"es-419";s:44:"لاتىن ئامېرىكا ئىسپانچە";s:6:"es-419";s:40:"لاطینی امریکی ہسپانوی";s:6:"es-419";s:29:"لِبیریَن سپینِش";s:5:"es-es";s:35:"لِبیریَن پُرتَگیٖز";s:5:"pt-pt";s:12:"比科爾文";s:3:"bik";s:9:"比尼文";s:3:"bin";s:18:"ดาโกทา";s:3:"dak";s:21:"ดาร์กิน";s:3:"dar";s:15:"ดิงกา";s:3:"din";s:27:"ดัตช์กลาง";s:3:"dum";s:15:"ดิวลา";s:3:"dyu";s:18:"ดาซากา";s:3:"dzg";s:29:"لغة أهل جبل طارق";s:3:"gil";s:12:"لاهندا";s:3:"lah";s:14:"لَہَندا";s:3:"lah";s:14:"لانداچە";s:3:"lah";s:10:"لامبا";s:3:"lam";s:10:"لَمبا";s:3:"lam";s:14:"لامباچە";s:3:"lam";s:12:"لویسنو";s:3:"lui";s:16:"لویِسینو";s:3:"lui";s:20:"لۇيسېنگوچە";s:3:"lui";s:14:"لوندایی";s:3:"lun";s:10:"لُندا";s:3:"lun";s:14:"لۇنداچە";s:3:"lun";s:48:"ดารีโซโรอัสเตอร์";s:3:"gbz";}i:510;a:59:{s:24:"බාෂ්කිර්";s:2:"ba";s:33:"බෙලරුසියානු";s:2:"be";s:33:"බල්ගේරියානු";s:2:"bg";s:18:"බම්බරා";s:2:"bm";s:21:"බෙංගාලි";s:2:"bn";s:27:"බ්‍රේටොන්";s:2:"br";s:30:"බොස්නියානු";s:2:"bs";s:14:"צ׳צ׳נית";s:2:"ce";s:12:"צ׳מורו";s:2:"ch";s:14:"צ׳וקטאו";s:3:"cho";s:12:"צ׳רוקי";s:3:"chr";s:10:"צ׳כית";s:2:"cs";s:12:"צ׳ובאש";s:2:"cv";s:61:"බ්‍රිතාන්‍ය ඉංග්‍රීසි";s:5:"en-gb";s:18:"බොස්කෝ";s:2:"eu";s:12:"צרפתית";s:2:"fr";s:49:"බටහිර ෆ්‍රිසියානු";s:2:"fy";s:12:"マン島語";s:2:"gv";s:21:"マイティリー語";s:3:"mai";s:21:"マダガスカル語";s:2:"mg";s:18:"マーシャル語";s:2:"mh";s:12:"マオリ語";s:2:"mi";s:18:"マケドニア語";s:2:"mk";s:21:"マラヤーラム語";s:2:"ml";s:21:"マラーティー語";s:2:"mr";s:12:"マレー語";s:2:"ms";s:12:"マルタ語";s:2:"mt";s:15:"බුරුම";s:2:"my";s:27:"マーザンダラーン語";s:3:"mzn";s:46:"බ්‍රසීල පෘතුගීසි";s:5:"pt-br";s:24:"マインフランク語";s:3:"vmf";s:18:"බෙම්බා";s:3:"bem";s:12:"බෙනා";s:3:"bez";s:12:"බොඩො";s:3:"brx";s:10:"צ׳יגה";s:3:"cgg";s:15:"マチャメ語";s:3:"jmc";s:15:"マコンデ語";s:3:"kde";s:18:"බාෆියා";s:3:"ksf";s:12:"マサイ語";s:3:"mas";s:24:"マクア・ミート語";s:3:"mgh";s:19:"צפון נדבלה";s:2:"nd";s:23:"צרפתית קנדית";s:5:"fr-ca";s:29:"צרפתית שוויצרית";s:5:"fr-ch";s:14:"צ׳יבצ׳ה";s:3:"chb";s:16:"צ׳אגאטאי";s:3:"chg";s:12:"צ׳וקסה";s:3:"chk";s:9:"マリ語";s:3:"chm";s:18:"צ׳יפוויאן";s:3:"chp";s:25:"צרפתית תיכונה";s:3:"frm";s:23:"צרפתית עתיקה";s:3:"fro";s:15:"マドゥラ語";s:3:"mad";s:15:"マガヒー語";s:3:"mag";s:18:"マカッサル語";s:3:"mak";s:21:"マンディンゴ語";s:3:"man";s:9:"マバ語";s:3:"mde";s:15:"マンダル語";s:3:"mdr";s:15:"マニプリ語";s:3:"mni";s:24:"マールワーリー語";s:3:"mwr";s:12:"マファ語";s:3:"maf";}i:610;a:58:{s:21:"บัชคีร์";s:2:"ba";s:24:"บาวาเรีย";s:3:"bar";s:27:"บาตักโทบา";s:3:"bbc";s:27:"บัลแกเรีย";s:2:"bg";s:21:"บิสลามา";s:2:"bi";s:21:"บันจาร์";s:3:"bjn";s:21:"บัมบารา";s:2:"bm";s:27:"บักติยารี";s:3:"bqi";s:18:"บราฮุย";s:3:"brh";s:21:"บอสเนีย";s:2:"bs";s:15:"บูกิส";s:3:"bug";s:34:"ਲੋਅਰ ਸੋਰਬੀਅਨ";s:3:"dsb";s:15:"บัสเก";s:2:"eu";s:29:"يۇقىرىقى سېربچە";s:3:"hsb";s:23:"يىچە (سىچۈەن)";s:2:"ii";s:14:"ياپونچە";s:2:"ja";s:12:"ياۋاچە";s:2:"jv";s:18:"ਲਾਤੀਨੀ";s:2:"la";s:33:"ਲਕਜ਼ਮਬਰਗਿਸ਼";s:2:"lb";s:21:"ਲਿੰਗਾਲਾ";s:2:"ln";s:9:"ਲਾਓ";s:2:"lo";s:27:"ਲਿਥੁਆਨੀਅਨ";s:2:"lt";s:21:"ਲਾਟਵਿਅਨ";s:2:"lv";s:25:"يېڭى نورۋېگچە";s:2:"nn";s:12:"บาลี";s:2:"pi";s:21:"บุรุนดี";s:2:"rn";s:14:"ياقۇتچە";s:3:"sah";s:24:"บอตสวานา";s:2:"tn";s:8:"يديش";s:2:"yi";s:16:"يىددىشچە";s:2:"yi";s:16:"يورۇباچە";s:2:"yo";s:18:"บาเฟีย";s:3:"ksf";s:15:"ਲੰਗਾਈ";s:3:"lag";s:15:"ਲਕੋਟਾ";s:3:"lkt";s:34:"ਲੂਬਾ-ਕਾਟਾਂਗਾ";s:2:"lu";s:9:"ਲੂਓ";s:3:"luo";s:12:"ਲੂਈਆ";s:3:"luy";s:25:"ਲਿਊਲ ਸਾਮੀ";s:3:"smj";s:17:"يوچۇن تىل";s:3:"und";s:12:"บลิน";s:3:"byn";s:53:"ਲਾਤੀਨੀ ਅਮਰੀਕੀ ਸਪੇਨੀ";s:6:"es-419";s:31:"ياۋروپا ئىسپانچە";s:5:"es-es";s:35:"ياۋروپا پورتۇگالچە";s:5:"pt-pt";s:18:"บาลูชิ";s:3:"bal";s:15:"บาหลี";s:3:"ban";s:12:"บาสา";s:3:"bas";s:15:"บามัน";s:3:"bax";s:15:"บิกอล";s:3:"bik";s:12:"บินี";s:3:"bin";s:21:"บูเรียต";s:3:"bua";s:10:"ياۋچە";s:3:"yao";s:10:"ياپچە";s:3:"yap";s:12:"يانجبن";s:3:"yav";s:16:"ياڭبەنچە";s:3:"yav";s:36:"บลิสซิมโบลส์";s:3:"zbl";s:15:"บาฟัต";s:3:"bfd";s:12:"บูลู";s:3:"bum";s:14:"يېمباچە";s:3:"ybb";}i:52;a:44:{s:15:"巴什客尔文";s:2:"ba";s:15:"巴什客爾文";s:2:"ba";s:15:"巴伐利亞文";s:3:"bar";s:18:"巴塔克托巴文";s:3:"bbc";s:18:"巴赫蒂亞里文";s:3:"bqi";s:12:"乔克托文";s:3:"cho";s:14:"Мальдив";s:2:"dv";s:12:"巴斯克文";s:2:"eu";s:10:"Манкс";s:2:"gv";s:12:"Маҷорӣ";s:2:"hu";s:22:"Међујезички";s:2:"ie";s:14:"Маитили";s:3:"mai";s:10:"Мокша";s:3:"mdf";s:18:"Маршалски";s:2:"mh";s:22:"Минангкабау";s:3:"min";s:18:"Моҕуоллуу";s:2:"mn";s:20:"Мирандешки";s:3:"mwl";s:18:"巴克摩挪威文";s:2:"nb";s:9:"巴利文";s:2:"pi";s:18:"巴西葡萄牙文";s:5:"pt-br";s:12:"巴菲亚文";s:3:"ksf";s:12:"巴菲亞文";s:3:"ksf";s:9:"ᎼᎻᎦ";s:3:"moh";s:9:"巴里文";s:3:"ban";s:9:"巴萨文";s:3:"bas";s:9:"巴薩文";s:3:"bas";s:12:"巴姆穆文";s:3:"bax";s:12:"巴勒比文";s:3:"car";s:8:"Мари";s:3:"chm";s:10:"Монго";s:3:"lol";s:18:"Мадурешки";s:3:"mad";s:12:"Магахи";s:3:"mag";s:14:"Макасар";s:3:"mak";s:16:"Мандинго";s:3:"man";s:12:"Мандар";s:3:"mdr";s:10:"Менде";s:3:"men";s:12:"Микмак";s:3:"mic";s:10:"Манчу";s:3:"mnc";s:16:"Манипури";s:3:"mni";s:8:"Моси";s:3:"mos";s:14:"Марвари";s:3:"mwr";s:12:"巴列維文";s:3:"pal";s:12:"巴非特文";s:3:"bfd";s:12:"巴達加文";s:3:"bfq";}i:382;a:15:{s:13:"žemaitėška";s:3:"sgs";s:18:"žemutinių sorbų";s:3:"dsb";s:24:"židovská španielčina";s:3:"lad";s:15:"皮埃蒙特文";s:3:"pms";s:13:"žemaitština";s:3:"sgs";s:11:"žemaičių";s:3:"sgs";s:37:"ശ്രാനൻ ഡോങ്കോ";s:3:"srn";s:22:"զուլուսերեն";s:2:"zu";s:10:"զարմա";s:3:"dje";s:24:"žádný jazykový obsah";s:3:"zxx";s:26:"žedno rěcne wopśimjeśe";s:3:"zxx";s:21:"žadyn rěčny wobsah";s:3:"zxx";s:21:"židovská perzština";s:3:"jpr";s:20:"židovská arabčina";s:3:"jrb";s:4:"žju";s:3:"kaj";}i:587;a:163:{s:16:"ساموگیتی";s:3:"sgs";s:10:"سبویی";s:3:"ceb";s:14:"سیباونو";s:3:"ceb";s:12:"سېبۇچە";s:3:"ceb";s:25:"سورانى كۇردچە";s:3:"ckb";s:21:"سورانی کردش";s:3:"ckb";s:23:"سلافية كنسية";s:2:"cu";s:29:"سٕوِس ہاےجٔرمَن";s:5:"de-ch";s:26:"سوئس ہائی جرمن";s:5:"de-ch";s:12:"سپینِش";s:2:"es";s:25:"سکوٹِش گیےلِک";s:2:"gd";s:27:"سکاټلېنډي ګېلک";s:2:"gd";s:12:"سكوتچە";s:2:"gd";s:19:"سکاٹ گیلِک";s:2:"gd";s:23:"سٕوِس جٔرمَن";s:3:"gsw";s:17:"سوئس جرمن";s:3:"gsw";s:19:"سِچوان یٖی";s:2:"ii";s:15:"سچوان ای";s:2:"ii";s:23:"سوتویی شمالی";s:3:"nso";s:14:"سنسکریت";s:2:"sa";s:16:"سَنسکرٕت";s:2:"sa";s:14:"سنسکریټ";s:2:"sa";s:20:"سانسكرىتچە";s:2:"sa";s:16:"سَنسکرِت";s:2:"sa";s:14:"سانتالی";s:3:"sat";s:14:"سَنتالی";s:3:"sat";s:18:"سانتالىچە";s:3:"sat";s:20:"ساردینیایی";s:2:"sc";s:16:"سراڈیٖنی";s:2:"sc";s:22:"ساردىنىيەچە";s:2:"sc";s:12:"سیسیلی";s:3:"scn";s:18:"سِچِلِیَن";s:3:"scn";s:22:"سىتسىلىيەچە";s:3:"scn";s:10:"سکاٹس";s:3:"sco";s:8:"سنڌي";s:2:"sd";s:8:"سندی";s:2:"sd";s:10:"سِندی";s:2:"sd";s:10:"سندهي";s:2:"sd";s:14:"سىندىچە";s:2:"sd";s:10:"سندھی";s:2:"sd";s:19:"سامی شمالی";s:2:"se";s:14:"سانگویی";s:2:"sg";s:10:"سَنگو";s:2:"sg";s:14:"سانگوچە";s:2:"sg";s:10:"سانغو";s:3:"sbp";s:29:"سیٚربو کروشِیَن";s:2:"sh";s:23:"سرب-کروشيايي";s:2:"sh";s:27:"سېرب-كرودىيەچە";s:2:"sh";s:25:"سربو-کروئیشین";s:2:"sh";s:14:"سینهالی";s:2:"si";s:14:"سِنہالا";s:2:"si";s:14:"سينهالي";s:2:"si";s:16:"سىنگالچە";s:2:"si";s:12:"سنہالا";s:2:"si";s:12:"سلووَک";s:2:"sk";s:14:"سلوواکي";s:2:"sk";s:18:"سىلوۋاكچە";s:2:"sk";s:12:"سلوواک";s:2:"sk";s:18:"سلووینیَن";s:2:"sl";s:14:"سلوواني";s:2:"sl";s:24:"سىلوۋېنىيەچە";s:2:"sl";s:20:"سلووینیائی";s:2:"sl";s:27:"سیلزیایی پایین";s:3:"sli";s:14:"ساموآیی";s:2:"sm";s:14:"سَمواَن";s:2:"sm";s:16:"ساموئاچە";s:2:"sm";s:12:"ساموآن";s:2:"sm";s:19:"سامی جنوبی";s:3:"sma";s:18:"سومالیایی";s:2:"so";s:12:"سومٲلی";s:2:"so";s:12:"سومالي";s:2:"so";s:16:"سومالىچە";s:2:"so";s:16:"سٔربِیَن";s:2:"sr";s:14:"سربيائي";s:2:"sr";s:12:"سېربچە";s:2:"sr";s:27:"سرٛانَن ٹونٛگو";s:3:"srn";s:27:"سىرانان-توڭوچە";s:3:"srn";s:16:"سوازیایی";s:2:"ss";s:10:"سواتی";s:2:"ss";s:16:"سىۋاتىچە";s:2:"ss";s:23:"سوتویی جنوبی";s:2:"st";s:12:"سيسوتو";s:2:"st";s:14:"سوندایی";s:2:"su";s:18:"سَنڈَنیٖز";s:2:"su";s:12:"سوډاني";s:2:"su";s:14:"سۇنداچە";s:2:"su";s:14:"سنڈانیز";s:2:"su";s:10:"سوئدی";s:2:"sv";s:14:"سویٖڈِش";s:2:"sv";s:12:"سویډنی";s:2:"sv";s:10:"سویڈش";s:2:"sv";s:12:"سواحلی";s:2:"sw";s:14:"سواہِلی";s:2:"sw";s:14:"سواهېلي";s:2:"sw";s:16:"سىۋالىچە";s:2:"sw";s:16:"سیلزیایی";s:3:"szl";s:10:"سوانا";s:2:"tn";s:16:"سىۋاناچە";s:2:"tn";s:14:"سونگاچە";s:2:"ts";s:38:"سینٹرل ایٹلس ٹمازائٹ";s:3:"tzm";s:21:"سیٚود چیٖنی";s:7:"zh-hans";s:14:"سامبورو";s:3:"saq";s:18:"سامبۇرۇچە";s:3:"saq";s:10:"سانگو";s:3:"sbp";s:14:"سانگۇچە";s:3:"sbp";s:8:"سينا";s:3:"seh";s:6:"سنا";s:3:"seh";s:12:"سېناچە";s:3:"seh";s:8:"سینا";s:3:"seh";s:19:"سکولٹ سَمی";s:3:"sms";s:25:"سىكولت سامىچە";s:3:"sms";s:25:"سواحلی کنگویی";s:3:"swc";s:8:"سوجا";s:3:"xog";s:12:"سوگایی";s:3:"xog";s:12:"سوگاچە";s:3:"xog";s:8:"سوگا";s:3:"xog";s:23:"سٕوٕس فریٚنچ";s:5:"fr-ch";s:19:"سوئس فرینچ";s:5:"fr-ch";s:16:"سیدامویی";s:3:"sid";s:12:"سِدامو";s:3:"sid";s:16:"سىداموچە";s:3:"sid";s:14:"سِکسِکا";s:3:"bla";s:18:"سىكسىكاچە";s:3:"bla";s:8:"سلیو";s:3:"den";s:12:"سلاۋچە";s:3:"den";s:14:"سىگانچە";s:3:"rom";s:21:"سانداوه‌ای";s:3:"sad";s:16:"سَندَویے";s:3:"sad";s:18:"سانداۋېچە";s:3:"sad";s:33:"سَمارِتَن اَرامیک";s:3:"sam";s:22:"سامارىتانچە";s:3:"sam";s:12:"ساساکی";s:3:"sas";s:10:"سَسَک";s:3:"sas";s:14:"ساساكچە";s:3:"sas";s:12:"سلکوپی";s:3:"sel";s:14:"سیٚلکُپ";s:3:"sel";s:16:"سېلكاپچە";s:3:"sel";s:21:"سونینکه‌ای";s:3:"snk";s:16:"سونِنکیے";s:3:"snk";s:18:"سونىنكەچە";s:3:"snk";s:8:"سغدی";s:3:"sog";s:16:"سوگڈِیَن";s:3:"sog";s:14:"سوغدىچە";s:3:"sog";s:10:"سریری";s:3:"srr";s:12:"سیٚریر";s:3:"srr";s:14:"سېرېرچە";s:3:"srr";s:16:"سوکومایی";s:3:"suk";s:12:"سُکُما";s:3:"suk";s:16:"سۇكۇماچە";s:3:"suk";s:12:"سوسویی";s:3:"sus";s:10:"سُسوٗ";s:3:"sus";s:12:"سۇسۇچە";s:3:"sus";s:10:"سومری";s:3:"sux";s:16:"سُمیریَن";s:3:"sux";s:14:"سۈمەرچە";s:3:"sux";s:29:"سريانية تقليدية";s:3:"syc";s:25:"سریانی کلاسیک";s:3:"syc";s:12:"سریانی";s:3:"syr";s:16:"سیٖریٲیی";s:3:"syr";s:16:"سۈرىيەچە";s:3:"syr";s:18:"سىمشيانچە";s:3:"tsi";s:18:"سېكنېكاچە";s:3:"see";s:12:"ساخوچە";s:3:"ssy";}i:469;a:18:{s:21:"サモギティア語";s:7:"bat-smg";s:24:"サンスクリット語";s:2:"sa";s:21:"サンターリー語";s:3:"sat";s:21:"サルデーニャ語";s:2:"sc";s:36:"サッサリ・サルデーニャ語";s:3:"sdc";s:12:"サンゴ語";s:2:"sg";s:22:"サモギティア語)";s:3:"sgs";s:12:"サモア語";s:2:"sm";s:9:"থাই";s:2:"th";s:15:"サンバー語";s:3:"ksb";s:15:"サンブル語";s:3:"saq";s:12:"サング語";s:3:"sbp";s:18:"サンダウェ語";s:3:"sad";s:27:"サマリア・アラム語";s:3:"sam";s:12:"ササク語";s:3:"sas";s:15:"サポテカ語";s:3:"zap";s:27:"サウラーシュトラ語";s:3:"saz";s:9:"サホ語";s:3:"ssy";}i:499;a:11:{s:15:"ビコール語";s:3:"bcl";s:15:"ビスラマ語";s:2:"bi";s:39:"ビシュヌプリヤ・マニプリ語";s:3:"bpy";s:27:"כורדית סוראנית";s:3:"ckb";s:8:"כמער";s:2:"km";s:12:"כורדית";s:2:"ku";s:12:"ビルマ語";s:2:"my";s:14:"כינעזיש";s:2:"zh";s:12:"ビリン語";s:3:"byn";s:12:"ビコル語";s:3:"bik";s:9:"ビニ語";s:3:"bin";}i:119;a:141:{s:11:"wit-russies";s:2:"be";s:13:"weißrussisch";s:2:"be";s:13:"weissrussisch";s:2:"be";s:11:"wyt-russysk";s:2:"be";s:13:"wiissrussisch";s:2:"be";s:13:"wiißrußesch";s:2:"be";s:14:"wäissrussesch";s:2:"be";s:14:"wittruss’sch";s:2:"be";s:12:"wit-russisch";s:2:"be";s:7:"wallies";s:2:"cy";s:8:"walisisk";s:2:"cy";s:9:"walisisch";s:2:"cy";s:13:"walizišćina";s:2:"cy";s:8:"walesgbe";s:2:"cy";s:5:"welsh";s:2:"cy";s:5:"welsk";s:2:"cy";s:4:"wale";s:2:"cy";s:6:"walesi";s:2:"cy";s:11:"wallihsesch";s:2:"cy";s:9:"walisesch";s:2:"cy";s:5:"wales";s:2:"cy";s:4:"welx";s:2:"cy";s:8:"waliesch";s:2:"cy";s:11:"welishiffaa";s:2:"cy";s:8:"walijski";s:2:"cy";s:10:"waleština";s:2:"cy";s:9:"walesiska";s:2:"cy";s:28:"wysokoniemiecki (szwajcaria)";s:5:"de-ch";s:10:"џонга";s:2:"dz";s:52:"ဗြိတိသျှ အင်္ဂလိပ်";s:5:"en-gb";s:9:"wes-fries";s:2:"fy";s:13:"westfriesisch";s:2:"fy";s:15:"western frisian";s:2:"fy";s:10:"west-frysk";s:2:"fy";s:14:"wäßfriisesch";s:2:"fy";s:13:"westfriesesch";s:2:"fy";s:11:"westfreesch";s:2:"fy";s:9:"wordhonek";s:2:"ga";s:10:"węgierski";s:2:"hu";s:7:"włoski";s:2:"it";s:9:"west-mari";s:3:"mrj";s:9:"ဗမာ";s:2:"my";s:15:"western punjabi";s:3:"pnb";s:18:"యాకుట్";s:3:"sah";s:5:"wigur";s:2:"ug";s:8:"wcreineg";s:2:"uk";s:4:"wrdw";s:2:"ur";s:7:"wsbeceg";s:2:"uz";s:5:"wenda";s:2:"ve";s:7:"wenecki";s:3:"vec";s:8:"wepsisch";s:3:"vep";s:8:"wepsesch";s:3:"vep";s:6:"wepski";s:3:"vep";s:14:"wiyɛtinamukan";s:2:"vi";s:12:"wiyetnameere";s:2:"vi";s:9:"wiekanama";s:2:"vi";s:24:"ဗီယက်နမ်";s:2:"vi";s:10:"wietnamski";s:2:"vi";s:10:"west-vlams";s:3:"vls";s:13:"westflämisch";s:3:"vls";s:12:"west flemish";s:3:"vls";s:13:"westflämesch";s:3:"vls";s:11:"west-vlaams";s:3:"vls";s:7:"wotisch";s:3:"vot";s:7:"wotesch";s:3:"vot";s:7:"wootsch";s:3:"vot";s:8:"wotiacki";s:3:"vot";s:5:"walon";s:2:"wa";s:8:"walloneg";s:2:"wa";s:7:"walwneg";s:2:"wa";s:10:"wallonisch";s:2:"wa";s:12:"walonšćina";s:2:"wa";s:7:"walloon";s:2:"wa";s:6:"wallon";s:2:"wa";s:5:"waals";s:2:"wa";s:11:"wallounesch";s:2:"wa";s:10:"walloonsch";s:2:"wa";s:9:"waloński";s:2:"wa";s:7:"winaray";s:3:"war";s:5:"waray";s:3:"war";s:11:"waray-waray";s:3:"war";s:11:"warajština";s:3:"war";s:8:"waraygbe";s:3:"war";s:5:"warai";s:3:"war";s:5:"waraj";s:3:"war";s:5:"wolof";s:2:"wo";s:6:"wòlof";s:2:"wo";s:11:"wolofština";s:2:"wo";s:6:"woloff";s:2:"wo";s:8:"wolofgbe";s:2:"wo";s:6:"wólof";s:2:"wo";s:8:"wolofera";s:2:"wo";s:10:"wolof simi";s:2:"wo";s:2:"wu";s:3:"wuu";s:8:"wu-kiina";s:3:"wuu";s:13:"wu-chinesesch";s:3:"wuu";s:4:"wuyu";s:3:"wuu";s:11:"wu Çincesi";s:3:"wuu";s:18:"యోరుబా";s:2:"yo";s:14:"џуаншки";s:2:"za";s:21:"współczesny arabski";s:6:"ar-001";s:5:"wemba";s:3:"bem";s:18:"ဗိုဒို";s:3:"brx";s:17:"џола фоњи";s:3:"dyo";s:15:"wiele języków";s:3:"mul";s:15:"ဗိုင်";s:3:"vai";s:3:"wai";s:3:"vai";s:21:"ဗန်ဂျို";s:3:"vun";s:52:"యూరోపియన్ స్పానిష్";s:5:"es-es";s:58:"యూరోపియన్ పోర్చుగీస్";s:5:"pt-pt";s:8:"џула";s:3:"dyu";s:8:"wgariteg";s:3:"uga";s:8:"wolaytta";s:3:"wal";s:6:"walamo";s:3:"wal";s:12:"wolajtština";s:3:"wal";s:14:"walamo-sprache";s:3:"wal";s:8:"wolaitta";s:3:"wal";s:16:"walamo-schpraach";s:3:"wal";s:14:"walamo-sprooch";s:3:"wal";s:5:"washo";s:3:"was";s:8:"waština";s:3:"was";s:13:"washo-sprache";s:3:"was";s:15:"washo-schpraach";s:3:"was";s:13:"washo-sprooch";s:3:"was";s:4:"waxo";s:3:"was";s:9:"యాఒ";s:3:"yao";s:18:"యాపిస్";s:3:"yap";s:5:"wayuu";s:3:"guc";s:12:"wayúuština";s:3:"guc";s:6:"wayúu";s:3:"guc";s:6:"walser";s:3:"wae";s:10:"walsertysk";s:3:"wae";s:15:"walser-dialekte";s:3:"wae";s:8:"walsegbe";s:3:"wae";s:7:"walseri";s:3:"wae";s:13:"walserdütsch";s:3:"wae";s:16:"walliserdäitsch";s:3:"wae";s:11:"walserčina";s:3:"wae";s:11:"walsertyska";s:3:"wae";s:6:"wortel";s:4:"root";s:12:"wakashaansch";s:3:"wak";}i:708;a:7:{s:15:"ቤላራሻኛ";s:2:"be";s:15:"비슬라마어";s:2:"bi";s:15:"ቤንጋሊኛ";s:2:"bn";s:9:"ቤምባ";s:3:"bem";s:6:"ቤና";s:3:"bez";s:9:"비콜어";s:3:"bik";s:9:"비니어";s:3:"bin";}i:926;a:24:{s:33:"བེལ་ཨ་རུས་ཁ";s:2:"be";s:45:"བཱལ་གེ་རི་ཡཱན་ཁ";s:2:"bg";s:42:"བྷང་ག་ལའི་སྐད།";s:2:"bn";s:21:"བངྒ་ལ་ཁ";s:2:"bn";s:21:"བོད་ཡིག";s:2:"bo";s:24:"བོད་སྐད་";s:2:"bo";s:15:"བོད་ཁ";s:2:"bo";s:39:"བྷོས་ནི་ཡཱན་ཁ";s:2:"bs";s:51:"བྲི་ཊིཤ་ཨིང་ལིཤ་ཁ";s:5:"en-gb";s:18:"བཱསཀ་ཁ";s:2:"eu";s:24:"བར་མིས་ཁ";s:2:"my";s:75:"བྲ་ཛི་ལི་ཡཱན་པོར་ཅུ་གིས་ཁ";s:5:"pt-br";s:12:"ጾንጋኛ";s:2:"ts";s:36:"བེཊ་ནཱ་མིས་ཁ";s:2:"vi";s:9:"瓦隆文";s:2:"wa";s:9:"瓦赖文";s:3:"war";s:9:"瓦瑞文";s:3:"war";s:9:"瓦伊文";s:3:"vai";s:12:"瓦拉莫文";s:3:"wal";s:9:"瓦绍文";s:3:"was";s:9:"瓦紹文";s:3:"was";s:9:"瓦尤文";s:3:"guc";s:12:"瓦尔瑟文";s:3:"wae";s:9:"瓦瑟文";s:3:"wae";}i:923;a:33:{s:22:"Λευκορωσικά";s:2:"be";s:45:"ནུབ་ཕྼི་སི་ཡན་ཁ";s:2:"fy";s:14:"Λόζμπαν";s:3:"jbo";s:9:"逻辑文";s:3:"jbo";s:16:"Λατινικά";s:2:"la";s:12:"Λαδίνο";s:3:"lad";s:30:"Λουξεμβουργιανά";s:2:"lb";s:16:"Λαζγκιάν";s:3:"lez";s:24:"Λιμβουργιανά";s:2:"li";s:16:"Λινγκάλα";s:2:"ln";s:16:"Λαοθιανά";s:2:"lo";s:8:"Λόζι";s:3:"loz";s:20:"Λιθουανικά";s:2:"lt";s:12:"Λουσάι";s:3:"lus";s:16:"Λετονικά";s:2:"lv";s:69:"ནོར་ཝེ་ཇི་ཡཱན་བོཀ་མཱལ་ཁ";s:2:"nb";s:21:"ནེ་པ་ལི";s:2:"ne";s:27:"ནེ་པཱལི་ཁ";s:2:"ne";s:21:"ནི་ཝ་རི";s:3:"new";s:30:"ནོ་ཝེ་སྐད།";s:2:"nn";s:63:"ནོར་ཝེ་ཇི་ཡཱན་ནོརསཀ་ཁ";s:2:"nn";s:42:"ནོར་ཝི་ཇི་ཡན་ཁ";s:2:"no";s:12:"Λάνγκι";s:3:"lag";s:12:"Λακότα";s:3:"lkt";s:29:"Λούμπα-Κατάνγκα";s:2:"lu";s:27:"Λούμπα-Λουλούα";s:3:"lua";s:8:"Λούο";s:3:"luo";s:12:"Λουχία";s:3:"luy";s:19:"Λούλε Σάμι";s:3:"smj";s:10:"Λάχδα";s:3:"lah";s:10:"Λάμπα";s:3:"lam";s:16:"Λουισένο";s:3:"lui";s:12:"Λούντα";s:3:"lun";}i:505;a:88:{s:18:"ベラルーシ語";s:2:"be";s:48:"ベラルーシ語(タラシケヴィツァ)";s:8:"be-x-old";s:15:"ベンガル語";s:2:"bn";s:18:"סעבואַניש";s:3:"ceb";s:40:"סלאבית כנסייתית עתיקה";s:2:"cu";s:23:"סורבית נמוכה";s:3:"dsb";s:12:"ספרדית";s:2:"es";s:23:"סקאטיש געליש";s:2:"gd";s:23:"סורבית גבוהה";s:3:"hsb";s:19:"סיצ׳ואן יי";s:2:"ii";s:55:"නෝවේජියානු බොක්මාල්";s:2:"nb";s:15:"නේපාල";s:2:"ne";s:70:"නොවේර්ජියානු නයිනෝර්ස්ක්";s:2:"nn";s:23:"סוטו הצפונית";s:3:"nso";s:14:"סנסקריט";s:2:"sa";s:18:"סאַנסקריט";s:2:"sa";s:8:"סאחה";s:3:"sah";s:12:"סאנטלי";s:3:"sat";s:14:"סרדינית";s:2:"sc";s:14:"סאַרדיש";s:2:"sc";s:20:"סיציליאנית";s:3:"scn";s:22:"סיציליאַניש";s:3:"scn";s:12:"סקוטית";s:3:"sco";s:10:"סקאטס";s:3:"sco";s:14:"סינדהית";s:2:"sd";s:12:"סינדהי";s:2:"sd";s:8:"סנגו";s:2:"sg";s:23:"סרבו-קרואטית";s:2:"sh";s:28:"סערבא־קראאַטיש";s:2:"sh";s:12:"סינהלה";s:2:"si";s:18:"סינהאַליש";s:2:"si";s:14:"סלובקית";s:2:"sk";s:20:"סלאוואַקיש";s:2:"sk";s:14:"סלובנית";s:2:"sl";s:18:"סלאוועניש";s:2:"sl";s:12:"סמואית";s:2:"sm";s:20:"סאַמאאַניש";s:2:"sm";s:21:"סאמי דרומית";s:3:"sma";s:12:"סומלית";s:2:"so";s:16:"סאמאַליש";s:2:"so";s:10:"סרבית";s:2:"sr";s:12:"סערביש";s:2:"sr";s:21:"סרנאן טונגו";s:3:"srn";s:16:"סיסוואטי";s:2:"ss";s:12:"ססות׳ו";s:2:"st";s:14:"סונדנית";s:2:"su";s:16:"סווהילית";s:2:"sw";s:20:"סוואַהיליש";s:2:"sw";s:12:"ベンダ語";s:2:"ve";s:15:"ベトナム語";s:2:"vi";s:10:"סינית";s:2:"zh";s:23:"סינית מפושטת";s:7:"zh-hans";s:25:"סינית מסורתית";s:7:"zh-hant";s:44:"නවීන සම්මත අරාබි";s:6:"ar-001";s:12:"ベンバ語";s:3:"bem";s:9:"ベナ語";s:3:"bez";s:18:"නොම්බා";s:3:"jgo";s:12:"නාමා";s:3:"naq";s:15:"නොයර්";s:3:"nus";s:24:"නයන්කොළේ";s:3:"nyn";s:12:"סמבורו";s:3:"saq";s:10:"סאנגו";s:3:"sbp";s:6:"סנה";s:3:"seh";s:19:"סקולט סאמי";s:3:"sms";s:35:"סווהילי קונגולטזית";s:3:"swc";s:37:"නොදන්නා භාෂාව";s:3:"und";s:8:"סוגה";s:3:"xog";s:41:"ספרדית לטינו־אמריקאית";s:6:"es-419";s:29:"ספרדית אירופאית";s:5:"es-es";s:10:"סידמו";s:3:"sid";s:12:"ベジャ語";s:3:"bej";s:14:"סיקסיקה";s:3:"bla";s:12:"סלאבית";s:3:"den";s:14:"סנדאווה";s:3:"sad";s:8:"ססאק";s:3:"sas";s:10:"סלקופ";s:3:"sel";s:14:"סונינקה";s:3:"snk";s:14:"סוגדיאן";s:3:"sog";s:6:"סרר";s:3:"srr";s:12:"סוקומה";s:3:"suk";s:8:"סוסו";s:3:"sus";s:14:"סומעריש";s:3:"sux";s:23:"סירית קלאסית";s:3:"syc";s:10:"סורית";s:3:"syr";s:15:"ベタウィ語";s:3:"bew";s:29:"ספרדית מקסיקנית";s:5:"es-mx";s:8:"סנקה";s:3:"see";s:8:"סאהו";s:3:"ssy";}i:296;a:1:{s:15:"벨라루스어";s:2:"be";}i:776;a:52:{s:30:"ເບລາຣັສຊຽນ";s:2:"be";s:24:"ເບັງກາລີ";s:2:"bn";s:18:"ເບຣຕັນ";s:2:"br";s:9:"ເຊກ";s:2:"cs";s:9:"ເວວ";s:2:"cy";s:24:"ເຢຍລະມັນ";s:2:"de";s:33:"ເອສເປີຣັນໂຕ";s:2:"eo";s:24:"ເອສໂຕນຽນ";s:2:"et";s:18:"ເປີຊຽນ";s:2:"fa";s:40:"ເວສເທີນ ຟຣິຊຽນ";s:2:"fy";s:18:"ເຮົາຊາ";s:2:"ha";s:21:"ເຮິຮິໂຣ";s:2:"hz";s:21:"ເຊສວຍຢີ";s:2:"ii";s:21:"ເກົາຫລີ";s:2:"ko";s:18:"ເຄີດິສ";s:2:"ku";s:18:"ເກຍກີສ";s:2:"ky";s:15:"ເອີຍາ";s:3:"myv";s:64:"ເຢຍລະມັນຕ່ຳ ແຊກຊອນຕໍ່ຳ";s:3:"nds";s:18:"ເນປາລີ";s:2:"ne";s:27:"ເອັນດອງກາ";s:2:"ng";s:31:"ເຊີໂບ-ໂກເຊຍ";s:2:"sh";s:18:"ເຊີບຽນ";s:2:"sr";s:18:"ເຕລູກູ";s:2:"te";s:15:"ເຕຕູມ";s:3:"tet";s:24:"ເທີກເມັນ";s:2:"tk";s:24:"ເຕສະວານາ";s:2:"tn";s:18:"ເທີຄິຊ";s:2:"tr";s:21:"ເຕຊອງກາ";s:2:"ts";s:15:"ເວນດາ";s:2:"ve";s:18:"ເບັມບາ";s:3:"bem";s:18:"ເອັມບູ";s:3:"ebu";s:12:"ເມຣູ";s:3:"mer";s:12:"ເມທາ";s:3:"mgo";s:42:"ເອັນເດເບເລເໜືອ";s:2:"nd";s:18:"ເອັນໂກ";s:3:"nqo";s:9:"ເນີ";s:3:"nus";s:12:"ເຕໂຊ";s:3:"teo";s:37:"ເຄເນດຽນ ຝຣັ່ງ";s:5:"fr-ca";s:18:"ເອດີຮິ";s:3:"ady";s:18:"ເດລາວາ";s:3:"del";s:42:"ເຢຍລະມັນສູງກາງ";s:3:"gmh";s:48:"ເຢຍລະມັນສູງໂບຮານ";s:3:"goh";s:15:"ເມນເດ";s:3:"men";s:36:"ເນວາດັ້ງເດີມ";s:3:"nwc";s:33:"ເປີເຊຍໂບຮານ";s:3:"peo";s:18:"ເຊນຄັບ";s:3:"sel";s:15:"ເຊເລີ";s:3:"srr";s:18:"ເຕເລໂນ";s:3:"ter";s:15:"ເຢົ້າ";s:3:"yao";s:18:"ເຊນາກາ";s:3:"zen";s:21:"ເມດູມບາ";s:3:"byv";s:52:"ເມັກຊິກັນ ສະແປນນິຊ";s:5:"es-mx";}i:357;a:24:{s:24:"वेलारूसी";s:2:"be";s:15:"वेल्श";s:2:"cy";s:21:"वर्मेली";s:2:"my";s:31:"Սերբա-Խորվաթերեն";s:2:"sh";s:12:"Սեսոտո";s:2:"st";s:15:"विघुर";s:2:"ug";s:18:"वेन्दा";s:2:"ve";s:21:"व्हेंदा";s:2:"ve";s:24:"वियतनामी";s:2:"vi";s:30:"व्हिएतनामी";s:2:"vi";s:21:"वोलापुक";s:2:"vo";s:15:"वॉटिक";s:3:"vot";s:21:"वाल्लून";s:2:"wa";s:15:"वालून";s:2:"wa";s:12:"वारै";s:3:"war";s:12:"वारे";s:3:"war";s:18:"वोलोफ़";s:2:"wo";s:15:"वोलोफ";s:2:"wo";s:15:"वुलुफ";s:2:"wo";s:34:"विविध भाषाएँ";s:3:"mul";s:9:"वाई";s:3:"vai";s:15:"वुंजो";s:3:"vun";s:15:"वलामो";s:3:"wal";s:12:"वाशो";s:3:"was";}i:41;a:32:{s:22:"Бөлөрүүстүү";s:2:"be";s:16:"Белорусӣ";s:2:"be";s:20:"Булҕаардыы";s:2:"bg";s:14:"Булғорӣ";s:2:"bg";s:12:"Биҳарӣ";s:2:"bh";s:14:"Бојпури";s:3:"bho";s:14:"Бислама";s:2:"bi";s:18:"Бенгаллыы";s:2:"bn";s:14:"Бенгалӣ";s:2:"bn";s:14:"Бретонӣ";s:2:"br";s:20:"Босныйалыы";s:2:"bs";s:16:"Босниягӣ";s:2:"bs";s:24:"Бугинежански";s:3:"bug";s:12:"威尔士文";s:2:"cy";s:12:"威爾斯文";s:2:"cy";s:10:"Баскӣ";s:2:"eu";s:20:"Бэҥгиэрдии";s:2:"hu";s:23:"Байни забонӣ";s:2:"ia";s:41:"Бразилски португалски";s:5:"pt-br";s:12:"威尼斯文";s:3:"vec";s:15:"យរូបា";s:2:"yo";s:8:"Блин";s:3:"byn";s:12:"Балучи";s:3:"bal";s:24:"Балинезијски";s:3:"ban";s:8:"Баса";s:3:"bas";s:8:"Беја";s:3:"bej";s:10:"Бикол";s:3:"bik";s:8:"Бини";s:3:"bin";s:8:"Брај";s:3:"bra";s:12:"Буриат";s:3:"bua";s:25:"동부 프리슬란드어";s:3:"frs";s:20:"Блисимболи";s:3:"zbl";}i:914;a:19:{s:20:"Βουλγαρικά";s:2:"bg";s:18:"Βρετονικά";s:2:"br";s:16:"Βοσνιακά";s:2:"bs";s:14:"Βασκικά";s:2:"eu";s:29:"Βόρεια Φριζιανά";s:3:"frr";s:18:"Βιρμανικά";s:2:"my";s:21:"Βόρεια Σόθο";s:3:"nso";s:21:"Βόρεια Σάμι";s:2:"se";s:30:"ཊཱརཀ་མེན་ཁ";s:2:"tk";s:27:"ཊོང་གྷན་ཁ";s:2:"to";s:27:"ཊཱར་ཀིཤ་ཁ";s:2:"tr";s:18:"ཊ་ཊར་ཁ";s:2:"tt";s:10:"Βένδα";s:2:"ve";s:20:"Βιετναμικά";s:2:"vi";s:14:"Βόλαπικ";s:2:"vo";s:10:"Βότικ";s:3:"vot";s:6:"Βάι";s:3:"vai";s:14:"Βούντζο";s:3:"vun";s:12:"Βάλσερ";s:3:"wae";}i:502;a:64:{s:18:"ブルガリア語";s:2:"bg";s:15:"ブルトン語";s:2:"br";s:24:"ブラーフーイー語";s:3:"brh";s:9:"ブギ語";s:3:"bug";s:18:"ブリヤート語";s:3:"bua";s:24:"מערב־פֿריזיש";s:2:"fy";s:10:"מאנית";s:2:"gv";s:12:"מאַנקס";s:2:"gv";s:8:"מיזא";s:3:"lus";s:16:"מאיטילית";s:3:"mai";s:10:"מוקשה";s:3:"mdf";s:12:"מלגשית";s:2:"mg";s:12:"מרשאלס";s:2:"mh";s:12:"מאורית";s:2:"mi";s:14:"מאַאריש";s:2:"mi";s:18:"מיננגקבאו";s:3:"min";s:14:"מקדונית";s:2:"mk";s:20:"מאַקעדאניש";s:2:"mk";s:14:"מלאיאלם";s:2:"ml";s:26:"מאַלאַיאַלאַם";s:2:"ml";s:16:"מונגולית";s:2:"mn";s:16:"מאנגאליש";s:2:"mn";s:10:"מרטהי";s:2:"mr";s:10:"מלאית";s:2:"ms";s:10:"מלטית";s:2:"mt";s:18:"מאַלטעזיש";s:2:"mt";s:16:"מירנדזית";s:3:"mwl";s:23:"מערב פֿלעמיש";s:3:"vls";s:21:"מצרית עתיקה";s:3:"egy";s:12:"מצ׳אמה";s:3:"jmc";s:12:"מקונדה";s:3:"kde";s:12:"מאסאית";s:3:"mas";s:6:"מרו";s:3:"mer";s:16:"מוריסיין";s:3:"mfe";s:19:"מקואה-מיטו";s:3:"mgh";s:6:"מטא";s:3:"mgo";s:10:"מוהוק";s:3:"moh";s:14:"מונדאנג";s:3:"mua";s:17:"מספר שפות";s:3:"mul";s:14:"מולדבית";s:5:"ro-md";s:12:"ブラジ語";s:3:"bra";s:8:"מארי";s:3:"chm";s:21:"מיטל ענגליש";s:3:"enm";s:24:"מזרח־פֿריזיש";s:3:"frs";s:27:"מיטל הויכדויטש";s:3:"gmh";s:8:"מונג";s:3:"hmn";s:10:"מונגו";s:3:"lol";s:12:"מדורסה";s:3:"mad";s:14:"מאגאהית";s:3:"mag";s:10:"מקסאר";s:3:"mak";s:14:"מנדינגו";s:3:"man";s:8:"מאבא";s:3:"mde";s:10:"מנדאר";s:3:"mdr";s:8:"מנדה";s:3:"men";s:10:"מיקמק";s:3:"mic";s:10:"מנצ׳ו";s:3:"mnc";s:16:"מניפורית";s:3:"mni";s:8:"מוסי";s:3:"mos";s:14:"מרווארי";s:3:"mwr";s:21:"ブリスシンボル";s:3:"zbl";s:9:"ブル語";s:3:"bum";s:12:"מדומבה";s:3:"byv";s:8:"מאפא";s:3:"maf";s:10:"מאיין";s:3:"mye";}i:520;a:10:{s:15:"불가리아어";s:2:"bg";s:18:"වේල්ස්";s:2:"cy";s:27:"වියට්නාම්";s:2:"vi";s:18:"වොලොෆ්";s:2:"wo";s:12:"ヨルバ語";s:2:"yo";s:9:"වයි";s:3:"vai";s:18:"වුන්ජෝ";s:3:"vun";s:78:"වාග් විද්‍යා අන්තර්ගතයක් නැත";s:3:"zxx";s:12:"吐瓦魯文";s:3:"tvl";s:9:"불루어";s:3:"bum";}i:117;a:242:{s:16:"urunyabuligariya";s:2:"bg";s:25:"భోజ్ పూరి";s:3:"bho";s:4:"uels";s:2:"cy";s:9:"uellsisht";s:2:"cy";s:7:"uelscha";s:2:"cy";s:18:"ပါရှန်";s:2:"fa";s:21:"ပြင်သစ်";s:2:"fr";s:11:"uhelsorabeg";s:3:"hsb";s:13:"upper sorbian";s:3:"hsb";s:13:"uewersorbesch";s:3:"hsb";s:7:"ungarsk";s:2:"hu";s:9:"ungarisch";s:2:"hu";s:6:"ungari";s:2:"hu";s:6:"unkari";s:2:"hu";s:8:"ungarskt";s:2:"hu";s:9:"ungáiris";s:2:"hu";s:8:"ungairis";s:2:"hu";s:9:"ungverska";s:2:"hu";s:9:"ungherese";s:2:"hu";s:10:"unjarresch";s:2:"hu";s:9:"ungaresch";s:2:"hu";s:7:"ungāru";s:2:"hu";s:8:"ungeriż";s:2:"hu";s:9:"ungaarsch";s:2:"hu";s:8:"ungarais";s:2:"hu";s:12:"ungárgiella";s:2:"hu";s:8:"ungerska";s:2:"hu";s:22:"ururimi gahuzamiryango";s:2:"ia";s:12:"uruhuzandimi";s:2:"ie";s:10:"urijština";s:2:"or";s:10:"uríjčina";s:2:"or";s:24:"ပန်ချာပီ";s:2:"pa";s:12:"ပါဠိ";s:2:"pi";s:18:"ပိုလန်";s:2:"pl";s:24:"ပါရှ်တို";s:2:"ps";s:24:"ပေါ်တူဂီ";s:2:"pt";s:7:"ulahça";s:3:"rup";s:13:"uusmelaneesia";s:3:"tpi";s:6:"udmurt";s:3:"udm";s:11:"udmurt dili";s:3:"udm";s:12:"udmurtština";s:3:"udm";s:10:"udmurtisch";s:3:"udm";s:9:"udmurtgbe";s:3:"udm";s:7:"udmurdi";s:3:"udm";s:8:"udmurtti";s:3:"udm";s:9:"udmairtis";s:3:"udm";s:9:"udmurtski";s:3:"udm";s:10:"udmurtesch";s:3:"udm";s:8:"udmurtų";s:3:"udm";s:7:"udmurtu";s:3:"udm";s:9:"udmurtsch";s:3:"udm";s:8:"udmurcki";s:3:"udm";s:13:"udmurtagiella";s:3:"udm";s:11:"udmurtčina";s:3:"udm";s:13:"udmurtščina";s:3:"udm";s:10:"udmurtiska";s:3:"udm";s:9:"udmurtça";s:3:"udm";s:6:"uighur";s:2:"ug";s:5:"uigur";s:2:"ug";s:6:"uyğur";s:2:"ug";s:8:"ujgurski";s:2:"ug";s:11:"ujgurština";s:2:"ug";s:8:"uygurisk";s:2:"ug";s:9:"uigurisch";s:2:"ug";s:12:"ujguršćina";s:2:"ug";s:9:"uighurgbe";s:2:"ug";s:6:"uyghur";s:2:"ug";s:6:"ujgura";s:2:"ug";s:7:"uiguuri";s:2:"ug";s:9:"uigurrera";s:2:"ug";s:10:"uigiúiris";s:2:"ug";s:8:"ugiranci";s:2:"ug";s:5:"ujgur";s:2:"ug";s:6:"uiguro";s:2:"ug";s:13:"uj’juuersch";s:2:"ug";s:9:"uiguresch";s:2:"ug";s:8:"uigūrų";s:2:"ug";s:6:"uiguru";s:2:"ug";s:8:"uigurisk";s:2:"ug";s:9:"uiguursch";s:2:"ug";s:10:"uigur simi";s:2:"ug";s:7:"uiguric";s:2:"ug";s:7:"uigură";s:2:"ug";s:10:"ujgurčina";s:2:"ug";s:12:"ujgurščina";s:2:"ug";s:6:"ujgure";s:2:"ug";s:9:"uiguriska";s:2:"ug";s:7:"uygurca";s:2:"ug";s:10:"uygʻurcha";s:2:"ug";s:22:"uyghur (arabic script)";s:7:"ug-arab";s:9:"uyghurche";s:7:"ug-latn";s:21:"uyghur (latin script)";s:7:"ug-latn";s:10:"ukren kasa";s:2:"uk";s:7:"ucraín";s:2:"uk";s:7:"ukrayna";s:2:"uk";s:12:"ukɛrɛnikan";s:2:"uk";s:8:"ukraineg";s:2:"uk";s:10:"ukrajinski";s:2:"uk";s:10:"ucraïnès";s:2:"uk";s:13:"ukrajinština";s:2:"uk";s:8:"ukrainsk";s:2:"uk";s:10:"ukrainisch";s:2:"uk";s:13:"ukrainšćina";s:2:"uk";s:9:"ukraingbe";s:2:"uk";s:9:"ukrainian";s:2:"uk";s:7:"ukraina";s:2:"uk";s:9:"ucraniano";s:2:"uk";s:9:"ukrainera";s:2:"uk";s:10:"ukereneere";s:2:"uk";s:9:"ukrainskt";s:2:"uk";s:9:"ukrainien";s:2:"uk";s:6:"ucrain";s:2:"uk";s:9:"ucràinis";s:2:"uk";s:8:"ucraíno";s:2:"uk";s:6:"ukrán";s:2:"uk";s:10:"ukrainiano";s:2:"uk";s:10:"ukureenị";s:2:"uk";s:7:"ucraino";s:2:"uk";s:13:"ukrainimiusut";s:2:"uk";s:10:"ukrainesch";s:2:"uk";s:13:"ukrainiečių";s:2:"uk";s:8:"ukraiņu";s:2:"uk";s:7:"ukraine";s:2:"uk";s:8:"ukranjan";s:2:"uk";s:9:"ukrainsch";s:2:"uk";s:10:"ukraiński";s:2:"uk";s:14:"ucraniano simi";s:2:"uk";s:8:"ucranais";s:2:"uk";s:11:"ucraineană";s:2:"uk";s:13:"ukrainagiella";s:2:"uk";s:7:"ukrêni";s:2:"uk";s:12:"ukrajinčina";s:2:"uk";s:14:"ukrajinščina";s:2:"uk";s:10:"ukrainisht";s:2:"uk";s:9:"ukrainska";s:2:"uk";s:9:"ukraynaca";s:2:"uk";s:9:"ukraincha";s:2:"uk";s:9:"urdu kasa";s:2:"ur";s:2:"ur";s:2:"ur";s:4:"urdu";s:2:"ur";s:8:"urudukan";s:2:"ur";s:5:"urdú";s:2:"ur";s:9:"urdština";s:2:"ur";s:11:"urdušćina";s:2:"ur";s:7:"urdugbe";s:2:"ur";s:5:"urduo";s:2:"ur";s:5:"urdua";s:2:"ur";s:7:"urdúis";s:2:"ur";s:6:"urdski";s:2:"ur";s:5:"urudu";s:2:"ur";s:10:"urdumiutut";s:2:"ur";s:10:"urdu/hindi";s:2:"ur";s:5:"urdų";s:2:"ur";s:9:"urdu simi";s:2:"ur";s:10:"urdugiella";s:2:"ur";s:8:"urdčina";s:2:"ur";s:12:"urdujščina";s:2:"ur";s:5:"urduu";s:2:"ur";s:6:"urduca";s:2:"ur";s:7:"urducha";s:2:"ur";s:14:"uzbequistanín";s:2:"uz";s:8:"uzbečki";s:2:"uz";s:5:"uzbek";s:2:"uz";s:10:"uzbečtina";s:2:"uz";s:8:"usbekisk";s:2:"uz";s:9:"usbekisch";s:2:"uz";s:12:"usbekšćina";s:2:"uz";s:13:"uzbekistangbe";s:2:"uz";s:6:"uzbeka";s:2:"uz";s:6:"uzbeko";s:2:"uz";s:6:"usbeki";s:2:"uz";s:8:"uzbekera";s:2:"uz";s:7:"uzbekki";s:2:"uz";s:9:"uzbekiskt";s:2:"uz";s:5:"uzbec";s:2:"uz";s:8:"usbagais";s:2:"uz";s:6:"uzbeco";s:2:"uz";s:12:"uzbekšćina";s:2:"uz";s:6:"usbeco";s:2:"uz";s:11:"ußbeekesch";s:2:"uz";s:9:"usbekesch";s:2:"uz";s:7:"uzbekų";s:2:"uz";s:6:"uzbeku";s:2:"uz";s:10:"uzbekistan";s:2:"uz";s:6:"użbek";s:2:"uz";s:9:"usbeeksch";s:2:"uz";s:7:"uzbecki";s:2:"uz";s:7:"usbeque";s:2:"uz";s:11:"uzbeko simi";s:2:"uz";s:5:"usbec";s:2:"uz";s:7:"uzbecă";s:2:"uz";s:11:"uzbeščina";s:2:"uz";s:7:"usbakis";s:2:"uz";s:6:"uzbeke";s:2:"uz";s:9:"uzbekiska";s:2:"uz";s:16:"upper franconian";s:3:"vmf";s:7:"uólofe";s:2:"wo";s:8:"ulufisht";s:2:"wo";s:12:"都阿拉文";s:3:"dua";s:12:"ukendt sprog";s:3:"und";s:19:"unbestimmte sprache";s:3:"und";s:16:"unknown language";s:3:"und";s:11:"ukjent mál";s:3:"und";s:23:"unbeschtimmti schpraach";s:3:"und";s:13:"ukjent språk";s:3:"und";s:18:"unbestimmte spraak";s:3:"und";s:16:"ulimi olungaziwa";s:3:"und";s:22:"uten språklig innhold";s:3:"zxx";s:22:"utan språkleg innhald";s:3:"zxx";s:28:"u.s.dukɔmetɔwo ƒe yevugbe";s:5:"en-us";s:11:"usona angla";s:5:"en-us";s:39:"ပြင်သစ်ဟောင်း";s:3:"fro";s:20:"uchel almaeneg canol";s:3:"gmh";s:40:"ပါရှန် အဟောင်း";s:3:"peo";s:10:"ugaríticu";s:3:"uga";s:13:"uqaritik dili";s:3:"uga";s:9:"ugaritski";s:3:"uga";s:9:"ugarític";s:3:"uga";s:12:"ugaritština";s:3:"uga";s:10:"ugaristisk";s:3:"uga";s:10:"ugaritisch";s:3:"uga";s:8:"ugaritic";s:3:"uga";s:10:"ugarítico";s:3:"uga";s:7:"ugariti";s:3:"uga";s:6:"ugarit";s:3:"uga";s:9:"ugaritico";s:3:"uga";s:10:"ugaritesch";s:3:"uga";s:11:"ugaritiešu";s:3:"uga";s:9:"ugaritiku";s:3:"uga";s:9:"ugaritisk";s:3:"uga";s:9:"ugaritsch";s:3:"uga";s:8:"ugarycki";s:3:"uga";s:10:"ugaritică";s:3:"uga";s:11:"ugaritčina";s:3:"uga";s:15:"ugaritski jezik";s:3:"uga";s:10:"ugaritiska";s:3:"uga";s:11:"ugarit dili";s:3:"uga";s:7:"umbundu";s:3:"umb";s:12:"umbundu dili";s:3:"umb";s:13:"umbundščina";s:3:"umb";s:6:"uaúis";s:3:"guc";s:17:"ugro-finski jezik";s:3:"fiu";}i:445;a:3:{s:15:"保加利亚文";s:2:"bg";s:15:"保加利亞文";s:2:"bg";s:9:"纽埃文";s:3:"niu";}i:349;a:71:{s:21:"भोजपुरी";s:3:"bho";s:24:"കറ്റാലാൻ";s:2:"ca";s:15:"കമോറോ";s:2:"ch";s:27:"കോർസിക്കൻ";s:2:"co";s:12:"ക്രീ";s:2:"cr";s:49:"ക്രിമിയൻ ടർക്കിഷ്";s:3:"crh";s:27:"കാഷുബിയാൻ";s:3:"csb";s:46:"കനേഡിയൻ ഇംഗ്ലീഷ്";s:5:"en-ca";s:30:"ക്രൊയേഷ്യൻ";s:2:"hr";s:31:"കര-കാൽപ്പക്";s:3:"kaa";s:12:"കബൈൽ";s:3:"kab";s:24:"കബർഡിയാൻ";s:3:"kbd";s:15:"കോംഗോ";s:2:"kg";s:18:"കികൂയു";s:2:"ki";s:24:"ക്വാന്യമ";s:2:"kj";s:15:"കസാഖ്";s:2:"kk";s:36:"കലാല്ലിസട്ട്";s:2:"kl";s:15:"കന്നഡ";s:2:"kn";s:18:"കൊറിയൻ";s:2:"ko";s:46:"കോമി-പെർമ്യാക്ക്";s:3:"koi";s:15:"കനൂറി";s:2:"kr";s:28:"കരചൈ-ബാൽകർ";s:3:"krc";s:27:"കാശ്‌മീരി";s:2:"ks";s:30:"കൊളോഞ്ഞിയൻ";s:3:"ksh";s:27:"കുർദ്ദിഷ്";s:2:"ku";s:12:"കോമി";s:2:"kv";s:21:"കോർണിഷ്";s:2:"kw";s:21:"കിർഗിസ്";s:2:"ky";s:24:"ക്രീക്ക്";s:3:"mus";s:27:"ക്വെച്ചുവ";s:2:"qu";s:36:"കിന്യാർവാണ്ട";s:2:"rw";s:5:"ŝona";s:2:"sn";s:24:"भियतनामी";s:2:"vi";s:18:"കൽമൈക്";s:3:"xal";s:27:"കാന്റണീസ്";s:3:"yue";s:30:"കോപ്റ്റിക്";s:3:"cop";s:9:"കംബ";s:3:"kam";s:36:"കബുവെർദിയാനു";s:3:"kea";s:28:"കൊയ്റ ചീനി";s:3:"khq";s:24:"കലെഞ്ഞിൻ";s:3:"kln";s:21:"കൊങ്കണി";s:3:"kok";s:18:"കുരുഖ്";s:3:"kru";s:24:"ക്വാസിയോ";s:3:"nmg";s:24:"ക്വിച്ചെ";s:3:"quc";s:9:"蘭博文";s:3:"rof";s:49:"കൊയ്റാബൊറോ സെന്നി";s:3:"ses";s:24:"കൊമോറിയൻ";s:3:"swb";s:40:"കോംഗോ സ്വാഹിലി";s:3:"swc";s:24:"ക്ലിംഗോൺ";s:3:"tlh";s:9:"भाइ";s:3:"vai";s:18:"भुन्जो";s:3:"vun";s:74:"भाषावैज्ञानिक सामग्री नाही";s:3:"zxx";s:47:"भाषिक सामग्री छैन";s:3:"zxx";s:43:"കനേഡിയൻ ഫ്രഞ്ച്";s:5:"fr-ca";s:12:"കാഡോ";s:3:"cad";s:18:"കാരിബ്";s:3:"car";s:15:"കാചിൻ";s:3:"kac";s:12:"കാവി";s:3:"kaw";s:18:"കനെംബു";s:3:"kbl";s:12:"കോറോ";s:3:"kfo";s:21:"ക്ലിംഗൻ";s:3:"kmb";s:21:"കൊസറേയൻ";s:3:"kos";s:21:"കപെല്ലേ";s:3:"kpe";s:21:"കരീലിയൻ";s:3:"krl";s:18:"കുമൈക്";s:3:"kum";s:18:"കുതേനൈ";s:3:"kut";s:9:"蘭巴文";s:3:"lam";s:49:"ക്ലാസിക്കൽ നേവാരി";s:3:"nwc";s:9:"കോം";s:3:"bkm";s:12:"കയൂഗ";s:3:"cay";s:15:"കക്കോ";s:3:"kkj";}i:477;a:13:{s:21:"ভোজপুরি";s:3:"bho";s:12:"ソマリ語";s:2:"so";s:18:"ভেন্ডা";s:2:"ve";s:30:"ভিয়েতনামী";s:2:"vi";s:21:"ভোলাপুক";s:2:"vo";s:15:"ভোটিক";s:3:"vot";s:9:"ভাই";s:3:"vai";s:18:"ভুঞ্জো";s:3:"vun";s:9:"ソガ語";s:3:"xog";s:74:"ভাষাভিত্তিক বিষয়বস্তু নেই";s:3:"zxx";s:70:"ඕස්ට්‍රේලියානු ඉංග්‍රීසි";s:5:"en-au";s:15:"ソニンケ語";s:3:"snk";s:12:"ソグド語";s:3:"sog";}i:733;a:14:{s:21:"ભોજપુરી";s:3:"bho";s:9:"哥特文";s:3:"got";s:9:"哥德文";s:3:"got";s:24:"ຕິກຣິນຢາ";s:2:"ti";s:21:"ຕາກາລອກ";s:2:"tl";s:18:"ຕຳບູກາ";s:3:"tum";s:21:"ຕາຮີຕຽນ";s:2:"ty";s:21:"ຕູວີນຽນ";s:3:"tyv";s:21:"ຕາຊາວັກ";s:3:"twq";s:36:"ຕູກີອອດໂຕມັນ";s:3:"ota";s:9:"ຕີວ";s:3:"tiv";s:18:"ຕູວາລູ";s:3:"tvl";s:9:"ຕີບ";s:3:"kcg";s:18:"ຕາໂລໂກ";s:3:"trv";}i:245;a:1:{s:21:"ಭೋಜಪುರಿ";s:3:"bho";}i:840;a:23:{s:15:"호즈푸리어";s:3:"bho";s:25:"የሶራኒ ኩርድኛ";s:3:"ckb";s:31:"የኦስትሪያ ጀርመን";s:5:"de-at";s:41:"የስዊዝ ከፍተኛ ጀርመንኛ";s:5:"de-ch";s:34:"የታችኛው ሶርቢያንኛ";s:3:"dsb";s:31:"የካናዳ እንግሊዝኛ";s:5:"en-ca";s:34:"የብሪቲሽ እንግሊዝኛ";s:5:"en-gb";s:28:"የምዕራብ ፍሪስኛ";s:2:"fy";s:25:"የስዊዝ ጀርመን";s:3:"gsw";s:34:"የላይኛው ሶርቢያንኛ";s:3:"hsb";s:28:"የኖርዌይ ቦክማል";s:2:"nb";s:34:"የኖርዌይ ናይኖርስክ";s:2:"nn";s:34:"የብራዚል ፖርቹጋልኛ";s:5:"pt-br";s:12:"夸西奥文";s:3:"nmg";s:12:"夸西奧文";s:3:"nmg";s:43:"የአውስትራሊያ እንግሊዝኛ";s:5:"en-au";s:34:"የአሜሪካ እንግሊዝኛ";s:5:"en-us";s:38:"የላቲን አሜሪካ ስፓኒሽ";s:6:"es-419";s:31:"የአውሮፓ እስፓንኛ";s:5:"es-es";s:31:"የካናዳ ፈረንሳይኛ";s:5:"fr-ca";s:31:"የስዊዝ ፈረንሳይኛ";s:5:"fr-ch";s:34:"የአውሮፓ ፖርቹጋልኛ";s:5:"pt-pt";s:9:"호탄어";s:3:"kho";}i:778;a:49:{s:18:"ໂບພູຣິ";s:3:"bho";s:37:"ໂຊຣານິ ເຄີດິຊ";s:3:"ckb";s:27:"ໂບດສລາວິກ";s:2:"cu";s:24:"ໂຄຣເອທຽນ";s:2:"hr";s:18:"ໂລບບັນ";s:3:"jbo";s:9:"ኪኩዩ";s:2:"ki";s:34:"ໂຄມີ-ເພີມຢັກ";s:3:"koi";s:24:"ໂຄລອກນຽນ";s:3:"ksh";s:12:"ໂຄມິ";s:2:"kv";s:15:"ኪርጊዝኛ";s:2:"ky";s:12:"ኪሩጋዚ";s:2:"ky";s:12:"ໂລຊິ";s:3:"loz";s:24:"ໂຊໂທເໜືອ";s:3:"nso";s:18:"ໂອໂຣໂມ";s:2:"om";s:18:"ໂອຣິຢາ";s:2:"or";s:15:"ໂປລິຊ";s:2:"pl";s:15:"ໂຣແມນ";s:2:"rm";s:21:"ໂຣແມນຽນ";s:2:"ro";s:24:"ኪንያርዋንድኛ";s:2:"rw";s:12:"ໂຊນາ";s:2:"sn";s:18:"ໂຊມາລີ";s:2:"so";s:21:"ໂຊໂທໃຕ້";s:2:"st";s:21:"ໂວລາພັກ";s:2:"vo";s:15:"ໂວຕິກ";s:3:"vot";s:12:"ໂຮຊາ";s:2:"xh";s:18:"ໂຢຣູບາ";s:2:"yo";s:12:"ໂບດູ";s:3:"brx";s:28:"ໂຈລາ-ຟອນຢີ";s:3:"dyo";s:12:"菲律宾文";s:3:"fil";s:12:"菲律賓文";s:3:"fil";s:12:"ໂມຫາ";s:3:"moh";s:6:"ኪቼ";s:3:"quc";s:21:"ໂມດາວຽນ";s:5:"ro-md";s:43:"ໂຄຍຣາໂບໂຣ ເຊນນິ";s:3:"ses";s:21:"ໂຄໂນຣຽນ";s:3:"swb";s:12:"ໂຊກາ";s:3:"xog";s:74:"ໂມຣັອກແຄນ ທາມາຊີກ ມາດຕະຖານ";s:3:"zgh";s:18:"ໂດກຣິບ";s:3:"dgr";s:27:"ໂກຣອນຕາໂຣ";s:3:"gor";s:12:"ໂຄໂລ";s:3:"kfo";s:15:"ໂຄຕັນ";s:3:"kho";s:12:"ໂນໂຣ";s:3:"nyo";s:21:"ໂອຈິບວາ";s:2:"oj";s:15:"ໂອແຊກ";s:3:"osa";s:39:"ໂປວອງຊານໂບຮານ";s:3:"pro";s:18:"ໂຣເມນີ";s:3:"rom";s:21:"ໂຊນິນກີ";s:3:"snk";s:24:"ໂຕເກເລົາ";s:3:"tkl";s:18:"ໂຄມາລາ";s:3:"bbj";}i:373;a:4:{s:27:"ഭോജ്‌പൂരി";s:3:"bho";s:15:"ഭാഫിയ";s:3:"ksf";s:85:"ഭാഷാപരമായ ഉള്ളടക്കമൊന്നുമില്ല";s:3:"zxx";s:9:"滕内文";s:3:"tem";}i:861;a:10:{s:21:"ଭୋଜପୁରୀ";s:3:"bho";s:18:"ଭୂଟାନୀ";s:2:"dz";s:9:"法罗文";s:2:"fo";s:9:"法羅文";s:2:"fo";s:6:"法文";s:2:"fr";s:25:"法蘭克-普羅旺斯文";s:3:"frp";s:18:"ଭେଣ୍ଡା";s:2:"ve";s:30:"ଭିଏତନାମିଜ୍";s:2:"vi";s:18:"ଭୋଟିକ୍";s:3:"vot";s:9:"ଭାଇ";s:3:"vai";}i:338;a:3:{s:15:"博杰普尔文";s:3:"bho";s:15:"博傑普爾文";s:3:"bho";s:9:"博多文";s:3:"brx";}i:706;a:1:{s:15:"ቢስላምኛ";s:2:"bi";}i:677;a:2:{s:12:"班亞爾文";s:3:"bjn";s:12:"班巴拉文";s:2:"bm";}i:164;a:1:{s:12:"밤바라어";s:2:"bm";}i:997;a:17:{s:24:"வங்காளம்";s:2:"bn";s:18:"வெல்ஷ்";s:2:"cy";s:52:"வடக்கு ஃப்ரிஸியான்";s:3:"frr";s:31:"வடக்கு சோதோ";s:3:"nso";s:28:"வடக்கு சமி";s:2:"se";s:18:"வென்டா";s:2:"ve";s:33:"வியட்நாமிஸ்";s:2:"vi";s:18:"வோட்க்";s:3:"vot";s:12:"வாரே";s:3:"war";s:9:"貝納文";s:3:"bez";s:37:"வடக்கு தெபெலே";s:2:"nd";s:6:"வை";s:3:"vai";s:18:"வுன்ஜோ";s:3:"vun";s:9:"貝扎文";s:3:"bej";s:18:"வாலாமோ";s:3:"wal";s:12:"வாஷோ";s:3:"was";s:12:"貝塔維文";s:3:"bew";}i:704;a:5:{s:15:"በንጋሊኛ";s:2:"bn";s:12:"哈萨克文";s:2:"kk";s:12:"哈薩克文";s:2:"kk";s:9:"ઐનુ";s:3:"ain";s:9:"멘데어";s:3:"men";}i:391;a:24:{s:12:"孟加拉文";s:2:"bn";s:22:"կատալաներեն";s:2:"ca";s:20:"կորսիկերեն";s:2:"co";s:35:"կանադական անգլերեն";s:5:"en-ca";s:18:"կաբիլերեն";s:3:"kab";s:16:"կիկույու";s:2:"ki";s:22:"կալաալիսուտ";s:2:"kl";s:14:"կաննադա";s:2:"kn";s:16:"կորեերեն";s:2:"ko";s:23:"կոմի-պերմյակ";s:3:"koi";s:16:"կոռներեն";s:2:"kw";s:47:"կենտրոնատլասյան թամազիխտ";s:3:"tzm";s:10:"կամբա";s:3:"kam";s:28:"կուբավերդիանու";s:3:"kea";s:19:"կոյրա չինի";s:3:"khq";s:16:"կալենջին";s:3:"kln";s:14:"կոնկանի";s:3:"kok";s:9:"朗吉文";s:3:"lag";s:12:"կվասիո";s:3:"nmg";s:8:"կիչե";s:3:"quc";s:29:"կոյրաբորո սեննի";s:3:"ses";s:31:"կոնգոյի սուահիլի";s:3:"swc";s:37:"կանադական ֆրանսերեն";s:5:"fr-ca";s:6:"孟文";s:3:"hmn";}i:722;a:49:{s:15:"ቲቤታንኛ";s:2:"bo";s:15:"ຊີເຄນ";s:2:"ce";s:18:"ຊີບູໂນ";s:3:"ceb";s:18:"ຊາມໍໂຣ";s:2:"ch";s:18:"ຊອກຕິວ";s:3:"cho";s:18:"ຊີໂຣກີ";s:3:"chr";s:21:"ຊີເຢນນີ";s:3:"chy";s:15:"ຊູວາຊ";s:2:"cv";s:36:"ຊໍບຽນຕໍ່ກວ່າ";s:3:"dsb";s:33:"ຊຸບເປີຊໍບຽນ";s:3:"hsb";s:12:"ຊາກາ";s:3:"sah";s:21:"ຊານທາລິ";s:3:"sat";s:21:"ຊີຊິລີນ";s:3:"scn";s:24:"ຊາມິເໜືອ";s:2:"se";s:15:"ຊາມົວ";s:2:"sm";s:21:"ຊາມິໃຕ້";s:3:"sma";s:15:"ຊຣາຕິ";s:2:"ss";s:27:"ຊຸນແດນນີສ";s:2:"su";s:21:"ຊວາຮີລິ";s:2:"sw";s:12:"ຊວາງ";s:2:"za";s:12:"ຊູລູ";s:2:"zu";s:12:"ຊີກາ";s:3:"cgg";s:12:"ຊາມາ";s:3:"dje";s:21:"ຊຳບາລ້າ";s:3:"ksb";s:18:"ຊຳບູຣູ";s:3:"saq";s:15:"ຊານກູ";s:3:"sbp";s:12:"ຊີນາ";s:3:"seh";s:18:"ຊິດາໂມ";s:3:"sid";s:21:"ຊິກຊິກາ";s:3:"bla";s:15:"ຊິບຊາ";s:3:"chb";s:18:"ຊາກາໄຕ";s:3:"chg";s:15:"ຊູເກດ";s:3:"chk";s:30:"ຊີນຸກຈາກອນ";s:3:"chn";s:24:"ຊີພິວຢານ";s:3:"chp";s:18:"ຊີເລັບ";s:3:"den";s:18:"ຊັນດາວ";s:3:"sad";s:15:"ຊາຊັກ";s:3:"sas";s:18:"ຊອກດິນ";s:3:"sog";s:21:"ຊູຄູມ້າ";s:3:"suk";s:12:"ຊູຊູ";s:3:"sus";s:24:"ຊູເມີເລຍ";s:3:"sux";s:48:"ຊີເລຍແບບດັ້ງເດີມ";s:3:"syc";s:15:"ຊີເລຍ";s:3:"syr";s:24:"ຊີມຊີແອນ";s:3:"tsi";s:21:"ຊາໂປແຕບ";s:3:"zap";s:12:"ຊູນີ";s:3:"zun";s:12:"ຊາຊາ";s:3:"zza";s:18:"ຊີນີກາ";s:3:"see";s:12:"ຊາໂຮ";s:3:"ssy";}i:468;a:25:{s:21:"তিব্বতি";s:2:"bo";s:12:"ゴート語";s:3:"got";s:24:"তাচেলহিত";s:3:"shi";s:15:"তামিল";s:2:"ta";s:18:"তেলেগু";s:2:"te";s:15:"তেতুম";s:3:"tet";s:15:"তাজিক";s:2:"tg";s:9:"태국어";s:2:"th";s:30:"তিগরিনিয়া";s:2:"ti";s:27:"তুর্কমেনী";s:2:"tk";s:18:"তাগালগ";s:2:"tl";s:18:"তুর্কী";s:2:"tr";s:15:"তাতার";s:2:"tt";s:24:"তুম্বুকা";s:3:"tum";s:30:"তাহিতিয়ান";s:2:"ty";s:15:"তাইতা";s:3:"dav";s:12:"তেসো";s:3:"teo";s:27:"তাসাওয়াক";s:3:"twq";s:21:"ゴーンディー語";s:3:"gon";s:18:"ゴロンタロ語";s:3:"gor";s:18:"তেরেনো";s:3:"ter";s:27:"ত্লিঙ্গিট";s:3:"tli";s:21:"তামাশেক";s:3:"tmh";s:15:"ゴーマラ語";s:3:"bbj";s:24:"ゴア・コンカニ語";s:3:"gom";}i:920;a:6:{s:18:"Θιβετιανά";s:2:"bo";s:12:"웨일스어";s:2:"cy";s:39:"ཐའའི་ཡུལ་སྐད།";s:2:"th";s:18:"ཐཱའི་ཁ";s:2:"th";s:39:"ཐུར་ཁེའི་སྐད།";s:2:"tr";s:6:"豐文";s:3:"fon";}i:724;a:29:{s:24:"તિબેટીયન";s:2:"bo";s:9:"오크어";s:2:"oc";s:12:"오로모어";s:2:"om";s:12:"오리야어";s:2:"or";s:12:"오세트어";s:2:"os";s:24:"તેશીલહિટ";s:3:"shi";s:12:"તમિલ";s:2:"ta";s:12:"તુલુ";s:3:"tcy";s:18:"તેલુગુ";s:2:"te";s:9:"ቴተም";s:3:"tet";s:15:"તેતુમ";s:3:"tet";s:15:"તાજીક";s:2:"tg";s:24:"તુર્કમેન";s:2:"tk";s:24:"ત્સ્વાના";s:2:"tn";s:12:"તતાર";s:2:"tt";s:24:"તુમ્બુકા";s:3:"tum";s:24:"તાહિતિયન";s:2:"ty";s:12:"તૈતા";s:3:"dav";s:6:"ቴሶ";s:3:"teo";s:12:"તેસો";s:3:"teo";s:18:"તસાવાક";s:3:"twq";s:18:"오지브웨이어";s:2:"oj";s:15:"오세이지어";s:3:"osa";s:18:"તેરેનો";s:3:"ter";s:9:"તિવ";s:3:"tiv";s:21:"તોકેલાઉ";s:3:"tkl";s:21:"તામાશેખ";s:3:"tmh";s:18:"તુવાલુ";s:3:"tvl";s:15:"ત્યાપ";s:3:"kcg";}i:407;a:6:{s:18:"տիբեթերեն";s:2:"bo";s:16:"տաշելհիթ";s:3:"shi";s:18:"տաջիկերեն";s:2:"tg";s:10:"տոնգա";s:2:"to";s:8:"տեսո";s:3:"teo";s:14:"տասավաք";s:3:"twq";}i:481;a:25:{s:15:"チベット語";s:2:"bo";s:18:"チャバカノ語";s:7:"cbk-zam";s:18:"チェチェン語";s:2:"ce";s:15:"チャモロ語";s:2:"ch";s:18:"チョクトー語";s:3:"cho";s:18:"チェロキー語";s:3:"chr";s:12:"チェコ語";s:2:"cs";s:18:"チュヴァシ語";s:2:"cv";s:15:"東部マリ語";s:3:"mhr";s:36:"チンボラソ高地ケチュア語";s:3:"qug";s:9:"東加文";s:2:"to";s:12:"チワン語";s:2:"za";s:9:"チガ語";s:3:"cgg";s:12:"東桑海文";s:3:"ses";s:15:"チャワイ語";s:3:"cch";s:15:"チブチャ語";s:3:"chb";s:18:"チャガタイ語";s:3:"chg";s:15:"チューク語";s:3:"chk";s:21:"チヌーク混成語";s:3:"chn";s:21:"チペワイアン語";s:3:"chp";s:18:"東フリジア語";s:3:"frs";s:18:"東弗里西亞文";s:3:"frs";s:27:"チャド・アラビア語";s:3:"shu";s:24:"東加文(尼亞薩)";s:3:"tog";s:15:"チムシュ語";s:3:"tsi";}i:322;a:19:{s:24:"ტიბეტური";s:2:"bo";s:14:"łatyńšćina";s:2:"la";s:14:"łaćonšćina";s:2:"la";s:10:"łaciński";s:2:"la";s:10:"łatgalski";s:3:"ltg";s:9:"łotewski";s:2:"lv";s:24:"ტამილური";s:2:"ta";s:18:"ტელუგუ";s:2:"te";s:24:"ტაჯიკური";s:2:"tg";s:9:"ტაი";s:2:"th";s:18:"ტსვანა";s:2:"tn";s:27:"ტონგანური";s:2:"to";s:12:"ტუვა";s:3:"tyv";s:49:"ტრადიციული ჩინური";s:7:"zh-hant";s:15:"ტაიტა";s:3:"dav";s:12:"ტესო";s:3:"teo";s:24:"ტასავაქი";s:3:"twq";s:36:"łatyńskoamerikańska špańšćina";s:6:"es-419";s:32:"łaćonskoameriska španišćina";s:6:"es-419";}i:33;a:8:{s:12:"ទីបេ";s:2:"bo";s:9:"ᎩᎵᏏ";s:2:"en";s:15:"利古里亞文";s:3:"lij";s:15:"利伏尼亞文";s:3:"liv";s:21:"ទីរិនយា";s:2:"ti";s:36:"ទួគមេនីស្តង់";s:2:"tk";s:15:"ទួរគី";s:2:"tr";s:12:"ទ្វី";s:2:"tw";}i:231;a:41:{s:27:"ಟಿಬೇಟಿಯನ್";s:2:"bo";s:12:"çeçen dili";s:2:"ce";s:12:"çamoro dili";s:2:"ch";s:12:"çoktau dili";s:3:"cho";s:7:"çiroki";s:3:"chr";s:7:"çeroki";s:3:"chr";s:11:"çeyen dili";s:3:"chy";s:4:"çex";s:2:"cs";s:8:"çekisht";s:2:"cs";s:12:"çuvaş dili";s:2:"cv";s:30:"ಟಷೆಲ್‍ಹಿಟ್";s:3:"shi";s:15:"ಟೇಟಮ್";s:3:"tet";s:30:"ಟಿಗ್ರಿನ್ಯಾ";s:2:"ti";s:30:"ಟರ್ಕ್‌ಮೆನ್";s:2:"tk";s:27:"ಟ್ಯಾಗಲೋಗ್";s:2:"tl";s:18:"ಟೋಂಗನ್";s:2:"to";s:31:"ಟೋಕ್ ಪಿಸಿನ್";s:3:"tpi";s:21:"ಟರ್ಕಿಶ್";s:2:"tr";s:15:"ಟಾಟರ್";s:2:"tt";s:12:"ಟ್ವಿ";s:2:"tw";s:27:"ಟುವಿನಿಯನ್";s:3:"tyv";s:4:"çin";s:2:"zh";s:5:"çiqa";s:3:"cgg";s:8:"çigisht";s:3:"cgg";s:9:"ಟೈಟ";s:3:"dav";s:12:"ಟೆಸೊ";s:3:"teo";s:15:"ಟಸವಕ್";s:3:"twq";s:18:"ಟೈಗ್ರೆ";s:3:"tig";s:13:"çibçə dili";s:3:"chb";s:14:"çağatay dili";s:3:"chg";s:11:"çukiz dili";s:3:"chk";s:17:"çinuk ləhçəsi";s:3:"chn";s:14:"çipevyan dili";s:3:"chp";s:18:"ಟಿಮ್ನೆ";s:3:"tem";s:18:"ಟೆರೆನೋ";s:3:"ter";s:12:"ಟಿವ್";s:3:"tiv";s:24:"ಟೊಕೆಲಾವ್";s:3:"tkl";s:27:"ಟ್ಲಿಂಗಿಟ್";s:3:"tli";s:21:"ಟಮಾಷೆಕ್";s:3:"tmh";s:18:"ಟುವಾಲು";s:3:"tvl";s:18:"ಟ್ಯಾಪ್";s:3:"kcg";}i:735;a:21:{s:21:"ທິເບທັນ";s:2:"bo";s:27:"ທີແນງກາບູ";s:3:"min";s:15:"યાકૂત";s:3:"sah";s:24:"ທາເຊວຫິດ";s:3:"shi";s:15:"ທາມິລ";s:2:"ta";s:15:"ທາຈິກ";s:2:"tg";s:18:"ທອງການ";s:2:"to";s:24:"ທອກພີຊິນ";s:3:"tpi";s:12:"ທາທາ";s:2:"tt";s:9:"ທວີ";s:2:"tw";s:30:"યુક્રેનિયન";s:2:"uk";s:21:"યિદ્દિશ";s:2:"yi";s:18:"યોરૂબા";s:2:"yo";s:46:"યુરોપિયન સ્પેનિશ";s:5:"es-es";s:52:"યુરોપિયન પોર્ટુગીઝ";s:5:"pt-pt";s:15:"ທີມເນ";s:3:"tem";s:21:"ທລີງກິດ";s:3:"tli";s:24:"ທາມາກເຊກ";s:3:"tmh";s:27:"યુગેરિટિક";s:3:"uga";s:9:"યાઓ";s:3:"yao";s:15:"યાપીસ";s:3:"yap";}i:359;a:20:{s:21:"ടിബറ്റൻ";s:2:"bo";s:21:"ടെറ്റും";s:3:"tet";s:10:"ŧaigiella";s:2:"th";s:27:"ടൈഗ്രിന്യ";s:2:"ti";s:15:"ടോംഗൻ";s:2:"to";s:28:"ടോക് പിസിൻ";s:3:"tpi";s:24:"ടർക്കിഷ്";s:2:"tr";s:18:"ടാട്ടർ";s:2:"tt";s:18:"ടുംബുക";s:3:"tum";s:8:"Տուի";s:2:"tw";s:12:"ട്വി";s:2:"tw";s:12:"ടെസോ";s:3:"teo";s:24:"ടസവാക്ക്";s:3:"twq";s:18:"ടൈഗ്രി";s:3:"tig";s:15:"ടിംനേ";s:3:"tem";s:18:"ടെറേനോ";s:3:"ter";s:12:"ടിവ്";s:3:"tiv";s:24:"ടൊക്കേലൗ";s:3:"tkl";s:18:"ടമഷേക്";s:3:"tmh";s:18:"ട്യാപ്";s:3:"kcg";}i:852;a:36:{s:24:"ତିବେତାନ୍";s:2:"bo";s:18:"카탈로니아어";s:2:"ca";s:15:"카슈비아어";s:3:"csb";s:9:"ዴኒሽ";s:2:"da";s:18:"카라칼파크어";s:3:"kaa";s:15:"카바르디어";s:3:"kbd";s:12:"카자흐어";s:2:"kk";s:25:"카라챠이-발카르어";s:3:"krc";s:15:"카슈미르어";s:2:"ks";s:18:"ତାମିଲ୍";s:2:"ta";s:18:"ତେଲୁଗୁ";s:2:"te";s:18:"ତେତୁମ୍";s:3:"tet";s:18:"ତାଜିକ୍";s:2:"tg";s:27:"ତୁର୍କମେନ୍";s:2:"tk";s:24:"ତୁର୍କିସ୍";s:2:"tr";s:18:"ତାତାର୍";s:2:"tt";s:12:"ତ୍ୱି";s:2:"tw";s:27:"ତାହିତିଆନ୍";s:2:"ty";s:27:"ତୁଭିନିଆନ୍";s:3:"tyv";s:9:"카도어";s:3:"cad";s:12:"카리브어";s:3:"car";s:9:"카친어";s:3:"kac";s:9:"카위어";s:3:"kaw";s:12:"카넴부어";s:3:"kbl";s:9:"카시어";s:3:"kha";s:15:"카렐리야어";s:3:"krl";s:15:"ତିମନେ";s:3:"tem";s:18:"ତେରେନୋ";s:3:"ter";s:12:"ତୀଭ୍";s:3:"tiv";s:30:"ତ୍ଲିଙ୍ଗିଟ୍";s:3:"tli";s:24:"ତାମାଶେକ୍";s:3:"tmh";s:33:"ତିସିମିସିଆନ୍";s:3:"tsi";s:18:"ତୁଭାଲୁ";s:3:"tvl";s:12:"카유가어";s:3:"cay";s:18:"ତ୍ୟାପ୍";s:3:"kcg";s:9:"카코어";s:3:"kkj";}i:596;a:11:{s:18:"ਤਿੱਬਤੀ";s:2:"bo";s:12:"ਤਮਿਲ";s:2:"ta";s:15:"ਤੇਲਗੂ";s:2:"te";s:15:"ਤਾਜਿਕ";s:2:"tg";s:27:"ਤਿਗ੍ਰੀਨਿਆ";s:2:"ti";s:21:"ਤੁਰਕਮੇਨ";s:2:"tk";s:15:"ਤੁਰਕੀ";s:2:"tr";s:12:"ਤਤਾਰ";s:2:"tt";s:12:"ਤ੍ਵਿ";s:2:"tw";s:12:"필리핀어";s:3:"fil";s:21:"ਤਾਸਾਵਿਕ";s:3:"twq";}i:58;a:25:{s:18:"Тибиэттии";s:2:"bo";s:16:"Тамыллыы";s:2:"ta";s:18:"Төлүгүлүү";s:2:"te";s:10:"Тетум";s:3:"tet";s:20:"Тадьыыктыы";s:2:"tg";s:10:"Тађик";s:2:"tg";s:12:"Тоҷикӣ";s:2:"tg";s:16:"Тагалски";s:2:"tl";s:12:"Тсвана";s:2:"tn";s:17:"Ток Писин";s:3:"tpi";s:12:"Тсонга";s:2:"ts";s:14:"Тумбука";s:3:"tum";s:6:"Тви";s:2:"tw";s:20:"Тахићански";s:2:"ty";s:20:"Тувинијски";s:3:"tyv";s:10:"Тигре";s:3:"tig";s:10:"Тимне";s:3:"tem";s:12:"Терено";s:3:"ter";s:6:"Тив";s:3:"tiv";s:14:"Токелау";s:3:"tkl";s:14:"Тлингит";s:3:"tli";s:14:"Тамашек";s:3:"tmh";s:16:"Тсимшиан";s:3:"tsi";s:12:"Тувалу";s:3:"tvl";s:8:"Тјап";s:3:"kcg";}i:495;a:17:{s:18:"ටිබෙට්";s:2:"bo";s:12:"ハウサ語";s:2:"ha";s:12:"ハワイ語";s:3:"haw";s:12:"ハイチ語";s:2:"ht";s:18:"ハンガリー語";s:2:"hu";s:27:"ටචේල්හිට්";s:3:"shi";s:15:"ටජික්";s:2:"tg";s:33:"ටිග්‍රින්යා";s:2:"ti";s:27:"ටර්ක්මෙන්";s:2:"tk";s:15:"ටොංගා";s:2:"to";s:15:"ටාටර්";s:2:"tt";s:15:"ටයිටා";s:3:"dav";s:10:"חיתית";s:3:"hit";s:12:"ටෙසෝ";s:3:"teo";s:18:"ටසවාක්";s:3:"twq";s:12:"ハイダ語";s:3:"hai";s:49:"ටියුනිසියනු අරාබි";s:3:"aeb";}i:980;a:20:{s:33:"திபெத்தியன்";s:2:"bo";s:18:"திவேஹி";s:2:"dv";s:18:"தோங்கா";s:2:"ng";s:21:"தசேஹித்";s:3:"shi";s:28:"தெற்கு சமி";s:3:"sma";s:31:"தெற்கு ஸோதோ";s:2:"st";s:15:"தமிழ்";s:2:"ta";s:24:"தெலுங்கு";s:2:"te";s:18:"தாஜிக்";s:2:"tg";s:12:"தாய்";s:2:"th";s:24:"தும்புகா";s:3:"tum";s:37:"தெற்கு தெபெலே";s:2:"nr";s:34:"தெற்கு அல்தை";s:3:"alt";s:15:"தகோடா";s:3:"dak";s:24:"தார்குவா";s:3:"dar";s:24:"தெலாவேர்";s:3:"del";s:9:"후파어";s:3:"hup";s:12:"윤번두어";s:3:"umb";s:34:"துனிசிய அரபு";s:3:"aeb";s:18:"தையாப்";s:3:"kcg";}i:607;a:40:{s:15:"ทิเบต";s:2:"bo";s:18:"ਯੂਨਾਨੀ";s:2:"el";s:14:"هسپانوي";s:2:"es";s:14:"هوسیایی";s:2:"ha";s:18:"هاوائیایی";s:3:"haw";s:8:"هندی";s:2:"hi";s:8:"هندي";s:2:"hi";s:23:"هندی فیجیایی";s:3:"hif";s:37:"هندی فیجی (خط لاتینی)";s:8:"hif-latn";s:25:"هیلی‌گاینونی";s:3:"hil";s:18:"هائیتیایی";s:2:"ht";s:10:"هنګري";s:2:"hu";s:14:"هریرویی";s:2:"hz";s:15:"هیل ماری";s:3:"mrj";s:10:"هلندی";s:2:"nl";s:14:"هالېنډي";s:2:"nl";s:27:"ทาเชลีห์ท";s:3:"shi";s:12:"ทมิฬ";s:2:"ta";s:15:"ทาจิก";s:2:"tg";s:15:"ทาลิช";s:3:"tly";s:27:"ท็อกพิซิน";s:3:"tpi";s:21:"ทุมบูกา";s:3:"tum";s:9:"ทวิ";s:2:"tw";s:54:"ทามาไซต์แอตลาสกลาง";s:3:"tzm";s:27:"ਯੂਕਰੇਨੀਆਈ";s:2:"uk";s:18:"ਯੋਰੂਬਾ";s:2:"yo";s:8:"هیتی";s:3:"hit";s:69:"ทามาไซต์โมร็อกโกมาตรฐาน";s:3:"zgh";s:31:"ਯੂਰਪੀ ਸਪੇਨੀ";s:5:"es-es";s:40:"ਯੂਰਪੀ ਪੁਰਤਗਾਲੀ";s:5:"pt-pt";s:21:"هلندی میانه";s:3:"dum";s:14:"هایدایی";s:3:"hai";s:10:"همونگ";s:3:"hmn";s:8:"هوپا";s:3:"hup";s:15:"ทิมเน";s:3:"tem";s:9:"ทิฟ";s:3:"tiv";s:21:"ทลิงกิต";s:3:"tli";s:21:"ทามาเชก";s:3:"tmh";s:15:"ทีแยป";s:3:"kcg";s:18:"ทาโรโก";s:3:"trv";}i:255;a:1:{s:6:"藏文";s:2:"bo";}i:614;a:8:{s:30:"พิศนุปริยะ";s:3:"bpy";s:12:"พม่า";s:2:"my";s:24:"พีดมอนต์";s:3:"pms";s:18:"พอนติก";s:3:"pnt";s:15:"พาชตู";s:2:"ps";s:12:"พัรช";s:3:"bra";s:21:"พอห์นเพ";s:3:"pon";s:12:"พทคะ";s:3:"bfq";}i:709;a:60:{s:15:"ብሬቶንኛ";s:2:"br";s:12:"ብሬቶን";s:2:"br";s:15:"કતલાન";s:2:"ca";s:18:"કેમોરો";s:2:"ch";s:24:"કોર્સિકન";s:2:"co";s:12:"ક્રી";s:2:"cr";s:43:"ક્રિમિયન તુર્કી";s:3:"crh";s:24:"કાશુબિયન";s:3:"csb";s:49:"કેનેડિયન અંગ્રેજી";s:5:"en-ca";s:27:"ક્રોએશિયન";s:2:"hr";s:28:"કારા-કલ્પક";s:3:"kaa";s:15:"કબાઇલ";s:3:"kab";s:27:"કબાર્ડિયન";s:3:"kbd";s:15:"કોંગો";s:2:"kg";s:18:"કિકુયૂ";s:2:"ki";s:30:"ક્વાન્યામા";s:2:"kj";s:12:"કઝાખ";s:2:"kk";s:30:"કલાલ્લિસુત";s:2:"kl";s:15:"કન્નડ";s:2:"kn";s:18:"કોરિયન";s:2:"ko";s:37:"કોમી-પર્મ્યાક";s:3:"koi";s:15:"કનુરી";s:2:"kr";s:34:"કરાચય-બલ્કાર";s:3:"krc";s:24:"કાશ્મીરી";s:2:"ks";s:21:"કુર્દિશ";s:2:"ku";s:12:"કોમી";s:2:"kv";s:21:"કોર્નિશ";s:2:"kw";s:21:"કિર્ગીઝ";s:2:"ky";s:15:"ક્રિક";s:3:"mus";s:21:"ક્વેચુઆ";s:2:"qu";s:39:"કિન્યારવાન્ડા";s:2:"rw";s:21:"કાલ્મિક";s:3:"xal";s:24:"કેંટોનીઝ";s:3:"yue";s:21:"કોપ્ટિક";s:3:"cop";s:15:"કમ્બા";s:3:"kam";s:36:"કાબુવર્ડિઆનુ";s:3:"kea";s:28:"કોયરા ચિનિ";s:3:"khq";s:18:"કલેજિન";s:3:"kln";s:18:"કોંકણી";s:3:"kok";s:15:"કુરૂખ";s:3:"kru";s:21:"ક્વાસિઓ";s:3:"nmg";s:12:"કિચે";s:3:"quc";s:46:"કોયરાબોરો સેન્ની";s:3:"ses";s:24:"કોમોરિયન";s:3:"swb";s:40:"કોંગો સ્વાહિલી";s:3:"swc";s:27:"ક્લિન્ગોન";s:3:"tlh";s:81:"કોઇ ભાષાશાસ્ત્રીય સામગ્રી નથી";s:3:"zxx";s:9:"ብሊን";s:3:"byn";s:43:"કેનેડિયન ફ્રેંચ";s:5:"fr-ca";s:15:"કડ્ડો";s:3:"cad";s:12:"કરિબ";s:3:"car";s:15:"કાચિન";s:3:"kac";s:12:"કાવી";s:3:"kaw";s:12:"કોરો";s:3:"kfo";s:27:"કિમ્બન્દુ";s:3:"kmb";s:21:"કોસરિયન";s:3:"kos";s:24:"ક્પેલ્લે";s:3:"kpe";s:21:"કરેલિયન";s:3:"krl";s:15:"કુમીક";s:3:"kum";s:21:"કુતેનાઇ";s:3:"kut";}i:67;a:15:{s:15:"布里多尼文";s:2:"br";s:15:"布列塔尼文";s:2:"br";s:12:"布拉維文";s:3:"brh";s:9:"布吉文";s:3:"bug";s:12:"布吉斯文";s:3:"bug";s:18:"Ыспаанныы";s:2:"es";s:22:"Ытаалыйалыы";s:2:"it";s:9:"布林文";s:3:"byn";s:12:"布拉杰文";s:3:"bra";s:15:"布里亚特文";s:3:"bua";s:15:"布里阿特文";s:3:"bua";s:15:"布利斯符号";s:3:"zbl";s:15:"布列斯符號";s:3:"zbl";s:9:"布鲁文";s:3:"bum";s:9:"布魯文";s:3:"bum";}i:710;a:8:{s:18:"ቦስኒያንኛ";s:2:"bs";s:15:"ቦስኒያን";s:2:"bs";s:9:"车臣文";s:2:"ce";s:15:"ખ્મેર";s:2:"km";s:12:"ખોસા";s:2:"xh";s:6:"ቦዶ";s:3:"brx";s:12:"ખાસી";s:3:"kha";s:21:"ખોતાનીસ";s:3:"kho";}i:837;a:47:{s:21:"କାଟଲାନ୍";s:2:"bs";s:24:"କାଟାଲାନ୍";s:2:"ca";s:30:"କୋର୍ସିକାନ୍";s:2:"co";s:12:"କ୍ରୀ";s:2:"cr";s:49:"କ୍ରୀମିନ୍ ତୁର୍କୀସ୍";s:3:"crh";s:27:"କାଶୁବିଆନ୍";s:3:"csb";s:46:"କାନାଡିଆନ୍ ଇଁରାଜୀ";s:5:"en-ca";s:30:"କ୍ରୋଆଟିଆନ୍";s:2:"hr";s:31:"କାରା-କଲ୍ପକ୍";s:3:"kaa";s:18:"କବାଇଲ୍";s:3:"kab";s:33:"କାବାର୍ଡିଆନ୍";s:3:"kbd";s:15:"କଙ୍ଗୋ";s:2:"kg";s:18:"କୀକୁୟୁ";s:2:"ki";s:30:"କ୍ୱାନ୍ୟାମ୍";s:2:"kj";s:18:"କାଜାକ୍";s:2:"kk";s:15:"କନ୍ନଡ";s:2:"kn";s:21:"କୋରିଆନ୍";s:2:"ko";s:15:"କନୁରୀ";s:2:"kr";s:34:"କରାଚୟ-ବଲ୍କାର";s:3:"krc";s:24:"କାଶ୍ମିରୀ";s:2:"ks";s:30:"କୁର୍ଦ୍ଦିଶ୍";s:2:"ku";s:12:"କୋମି";s:2:"kv";s:24:"କୋର୍ନିସ୍";s:2:"kw";s:21:"କିରଗିଜ୍";s:2:"ky";s:18:"କ୍ରୀକ୍";s:3:"mus";s:21:"କ୍ୱେଚୁଆ";s:2:"qu";s:39:"କିନ୍ୟାରୱାଣ୍ଡା";s:2:"rw";s:24:"କାଲ୍ମୀକ୍";s:3:"xal";s:21:"କପ୍ଟିକ୍";s:3:"cop";s:15:"କମ୍ବା";s:3:"kam";s:21:"କୋନକାନୀ";s:3:"kok";s:15:"କୁରୁଖ";s:3:"kru";s:27:"କ୍ଲିଙ୍ଗନ୍";s:3:"tlh";s:84:"କୌଣସି ଲିଙ୍ଗୁଇଷ୍ଟ ସାମଗ୍ରୀ ନାହିଁ";s:3:"zxx";s:49:"କାନାଡିଆନ୍ ଫ୍ରେଞ୍ଚ";s:5:"fr-ca";s:12:"କାଡୋ";s:3:"cad";s:18:"କାରିବ୍";s:3:"car";s:15:"କଚିନ୍";s:3:"kac";s:12:"କାୱି";s:3:"kaw";s:12:"କୋରୋ";s:3:"kfo";s:30:"କିମ୍ବୁଣ୍ଡୁ";s:3:"kmb";s:21:"କୋସରୈନ୍";s:3:"kos";s:18:"କୈପେଲେ";s:3:"kpe";s:30:"କାରେଲିୟାନ୍";s:3:"krl";s:18:"କୁମୀକ୍";s:3:"kum";s:21:"କୁତେନାଉ";s:3:"kut";s:49:"କ୍ଲାସିକାଲ୍ ସିରିକ୍";s:3:"syc";}i:874;a:9:{s:15:"波斯尼亚文";s:2:"bs";s:15:"波士尼亞文";s:2:"bs";s:9:"波斯文";s:2:"fa";s:18:"ጊዮርጊያኛ";s:2:"ka";s:9:"波兰文";s:2:"pl";s:9:"波蘭文";s:2:"pl";s:12:"波纳佩文";s:3:"pon";s:12:"波那貝文";s:3:"pon";s:12:"谢列尔文";s:3:"srr";}i:661;a:11:{s:19:"ᨅᨔ ᨕᨘᨁᨗ";s:3:"bug";s:12:"ስፓኒሽ";s:2:"es";s:15:"ስንሃልኛ";s:2:"si";s:15:"ስሎቫክኛ";s:2:"sk";s:15:"ስሎቨክኛ";s:2:"sk";s:12:"ስሎቪኛ";s:2:"sl";s:12:"ስቁቪኛ";s:2:"sl";s:12:"ስዋቲኛ";s:2:"ss";s:15:"ስዊድንኛ";s:2:"sv";s:15:"ስዋሂሊኛ";s:2:"sw";s:19:"ስኮልት ሳሚ";s:3:"sms";}i:779;a:15:{s:15:"ካታላንኛ";s:2:"ca";s:12:"ካታላን";s:2:"ca";s:12:"ካብይል";s:3:"kab";s:12:"ካዛክኛ";s:2:"kk";s:18:"ካላሊሱትኛ";s:2:"kl";s:12:"ካናዳኛ";s:2:"kn";s:12:"ካማደኛ";s:2:"kn";s:15:"ካሽሚርኛ";s:2:"ks";s:15:"沃蒂艾克文";s:3:"udm";s:15:"沃拉普克文";s:2:"vo";s:12:"沃提克文";s:3:"vot";s:12:"沃洛夫文";s:2:"wo";s:9:"ካምባ";s:3:"kam";s:21:"ካቡቨርዲያኑ";s:3:"kea";s:15:"ካለንጂን";s:3:"kln";}i:453;a:58:{s:21:"কাতালান";s:2:"ca";s:24:"কর্সিকান";s:2:"co";s:12:"ক্রি";s:2:"cr";s:49:"ক্রিমিয়ান তুর্কি";s:3:"crh";s:30:"কাশুবিয়ান";s:3:"csb";s:43:"কানাডীয় ইংরেজি";s:5:"en-ca";s:33:"ক্রোয়েশীয়";s:2:"hr";s:34:"কারা-কাল্পাক";s:3:"kaa";s:21:"কাবাইলে";s:3:"kab";s:36:"কাবার্ডিয়ান";s:3:"kbd";s:15:"কঙ্গো";s:2:"kg";s:27:"কিকু্ইয়ু";s:2:"ki";s:36:"কোয়ানিয়ামা";s:2:"kj";s:15:"কাজাখ";s:2:"kk";s:39:"ক্যালাল্লিসুট";s:2:"kl";s:33:"কম্বোডিয়ান";s:2:"km";s:27:"কান্নাড়ী";s:2:"kn";s:24:"কোরিয়ান";s:2:"ko";s:31:"কমি-পারমিআক";s:3:"koi";s:18:"কানুরি";s:2:"kr";s:37:"কারচে-বাল্কার";s:3:"krc";s:24:"কাশ্মীরী";s:2:"ks";s:18:"কুর্দি";s:2:"ku";s:12:"কোমি";s:2:"kv";s:18:"কর্ণিশ";s:2:"kw";s:21:"কির্গিজ";s:2:"ky";s:15:"ক্রিক";s:3:"mus";s:21:"কেচুয়া";s:2:"qu";s:30:"欽博拉索海蘭蓋丘亞文";s:3:"qug";s:45:"কিনয়ারোয়ান্ডা";s:2:"rw";s:21:"কাল্মইক";s:3:"xal";s:30:"ক্যানটোনীজ";s:3:"yue";s:15:"কপটিক";s:3:"cop";s:18:"কাম্বা";s:3:"kam";s:42:"কাবুভারদিয়ানু";s:3:"kea";s:31:"কোয়রা চীনি";s:3:"khq";s:24:"কালেনজিন";s:3:"kln";s:24:"কোঙ্কানি";s:3:"kok";s:15:"কুরুখ";s:3:"kru";s:24:"কোয়াসিও";s:3:"nmg";s:15:"কি‘চে";s:3:"quc";s:49:"কোয়রাবেনো সেন্নী";s:3:"ses";s:27:"কমোরিয়ান";s:3:"swb";s:43:"কঙ্গো সোয়াহিলি";s:3:"swc";s:24:"ক্লিঙ্গন";s:3:"tlh";s:40:"কানাডীয় ফরাসি";s:5:"fr-ca";s:18:"ক্যাডো";s:3:"cad";s:21:"ক্যারিব";s:3:"car";s:15:"কাচিন";s:3:"kac";s:12:"কাউই";s:3:"kaw";s:12:"কোরো";s:3:"kfo";s:30:"কিম্বুন্দু";s:3:"kmb";s:24:"কোস্রাইন";s:3:"kos";s:27:"ক্‌পেল্লে";s:3:"kpe";s:30:"কারেলিয়ান";s:3:"krl";s:15:"কুমিক";s:3:"kum";s:21:"কুটেনাই";s:3:"kut";s:12:"欽西安文";s:3:"tsi";}i:904;a:16:{s:30:"ཀེ་ཊ་ལཱན་ཁ";s:2:"ca";s:63:"ཀེ་ན་ཌི་ཡཱན་ཨིང་ལིཤ་ཁ";s:5:"en-ca";s:45:"ཀྲོ་ཨེ་ཤི་ཡཱན་ཁ";s:2:"hr";s:21:"ཀ་ཛགས་ཁ";s:2:"kk";s:30:"ཀནྣ་ཌ་སྐད།";s:2:"kn";s:21:"ཀ་ན་ཌ་ཁ";s:2:"kn";s:33:"ཀོ་རི་ཡཱན་ཁ";s:2:"ko";s:33:"ཀཱཤ་མི་རི་ཁ";s:2:"ks";s:24:"ཀར་ཌིཤ་ཁ";s:2:"ku";s:27:"ཀིར་གིས་ཁ";s:2:"ky";s:10:"Έρζυα";s:3:"myv";s:30:"ཀྭེ་ཆུ་ཨ་ཁ";s:2:"qu";s:10:"Έμπου";s:3:"ebu";s:54:"ཀེ་ན་ཌི་ཡཱན་ཕྲནཅ་ཁ";s:5:"fr-ca";s:21:"ཀ་ཆིན་ཁ";s:3:"kac";s:21:"ཀོ་རོ་ཁ";s:3:"kfo";}i:922;a:69:{s:20:"Καταλανικά";s:2:"ca";s:18:"Κεμπουάνο";s:3:"ceb";s:14:"Καμόρρο";s:2:"ch";s:29:"Κουρδικά Σοράνι";s:3:"ckb";s:22:"Κορσικανικά";s:2:"co";s:6:"Κρι";s:2:"cr";s:20:"Κασούμπιαν";s:3:"csb";s:16:"Κροατικά";s:2:"hr";s:21:"Κάρα-Καλπάκ";s:3:"kaa";s:14:"Καμπίλε";s:3:"kab";s:24:"Καμπαρντιανά";s:3:"kbd";s:12:"Κονγκό";s:2:"kg";s:18:"Κικούγιου";s:2:"ki";s:22:"Κουανιγιάμα";s:2:"kj";s:16:"Καζακικά";s:2:"kk";s:22:"Καλαάλισουτ";s:2:"kl";s:22:"Καμποτζιανά";s:2:"km";s:14:"Κανάντα";s:2:"kn";s:18:"Κορεατικά";s:2:"ko";s:23:"Κόμι-Περμιάκ";s:3:"koi";s:14:"Κανούρι";s:2:"kr";s:31:"Καρατσάι-Μπαλκάρ";s:3:"krc";s:14:"Κασμίρι";s:2:"ks";s:16:"Κολωνικά";s:3:"ksh";s:16:"Κουρδικά";s:2:"ku";s:8:"Κόμι";s:2:"kv";s:12:"Κόρνις";s:2:"kw";s:18:"Κυργιζικά";s:2:"ky";s:8:"Κρικ";s:3:"mus";s:27:"Κάτω Γερμανικά";s:3:"nds";s:14:"Κετσούα";s:2:"qu";s:22:"Κινιαρβάντα";s:2:"rw";s:12:"Καλμίκ";s:3:"xal";s:22:"Καντονέζικα";s:3:"yue";s:16:"Κινεζικά";s:2:"zh";s:14:"Κοπτικά";s:3:"cop";s:10:"Κάμπα";s:3:"kam";s:21:"Κόιρα Τσίνι";s:3:"khq";s:18:"Καλεντζίν";s:3:"kln";s:14:"Κονκάνι";s:3:"kok";s:14:"Κουρούχ";s:3:"kru";s:12:"Κβάσιο";s:3:"nmg";s:8:"Κισέ";s:3:"quc";s:29:"Κοϊραμπόρο Σένι";s:3:"ses";s:16:"Κομόρρια";s:3:"swb";s:29:"Κονγκό Σουαχίλι";s:3:"swc";s:16:"Κλίνγκον";s:3:"tlh";s:12:"蒂格雷文";s:3:"tig";s:10:"Κάντο";s:3:"cad";s:12:"Καρίμπ";s:3:"car";s:12:"Κατσίν";s:3:"kac";s:10:"Κάουι";s:3:"kaw";s:16:"Κανέμπου";s:3:"kbl";s:8:"Κόρο";s:3:"kfo";s:8:"Κάσι";s:3:"kha";s:16:"Κοτανικά";s:3:"kho";s:20:"Κιμπούντου";s:3:"kmb";s:20:"Κοσραενικά";s:3:"kos";s:10:"Κπέλε";s:3:"kpe";s:18:"Καρελιακά";s:3:"krl";s:18:"Κουμγιούκ";s:3:"kum";s:16:"Κουτενάι";s:3:"kut";s:29:"Κλασικά Νεουάρι";s:3:"nwc";s:29:"Κλασικά Συριακά";s:3:"syc";s:9:"蒂夫文";s:3:"tiv";s:15:"蒂姆西亚文";s:3:"tsi";s:6:"Κομ";s:3:"bkm";s:18:"Καγιούγκα";s:3:"cay";s:8:"Κάκο";s:3:"kkj";}i:511;a:78:{s:14:"קטלאנית";s:2:"ca";s:22:"קאַטאַלאניש";s:2:"ca";s:12:"קבואנו";s:3:"ceb";s:18:"קורסיקנית";s:2:"co";s:6:"קרי";s:2:"cr";s:22:"קרים־טערקיש";s:3:"crh";s:14:"קשוביאן";s:3:"csb";s:16:"קאַשוביש";s:3:"csb";s:34:"קלויסטער־סלאַוויש";s:2:"cu";s:14:"קרואטית";s:2:"hr";s:16:"קראאַטיש";s:2:"hr";s:19:"קארא-קלפאק";s:3:"kaa";s:10:"קבילה";s:3:"kab";s:12:"קברדית";s:3:"kbd";s:10:"קונגו";s:2:"kg";s:12:"קיקויו";s:2:"ki";s:16:"קואניאמה";s:2:"kj";s:10:"קזחית";s:2:"kk";s:18:"קאַזאַכיש";s:2:"kk";s:22:"קאלאליסוטית";s:2:"kl";s:10:"קמרית";s:2:"km";s:10:"קנאדה";s:2:"kn";s:18:"קאַנאַדאַ";s:2:"kn";s:16:"קוריאנית";s:2:"ko";s:14:"קארעאיש";s:2:"ko";s:25:"קומי-פרמיאקית";s:3:"koi";s:12:"קאנורי";s:2:"kr";s:21:"קראצ׳י-בלקר";s:3:"krc";s:14:"קשמירית";s:2:"ks";s:16:"קולוניאן";s:3:"ksh";s:12:"קורדיש";s:2:"ku";s:8:"קומי";s:2:"kv";s:12:"קורנית";s:2:"kw";s:12:"קארניש";s:2:"kw";s:16:"קירגיזית";s:2:"ky";s:16:"קירגיזיש";s:2:"ky";s:21:"ミナンカバウ語";s:3:"min";s:8:"קריק";s:3:"mus";s:15:"ミランダ語";s:3:"mwl";s:12:"קצ׳ואה";s:2:"qu";s:14:"קירונדי";s:2:"rn";s:20:"קינירואנדה";s:2:"rw";s:10:"קלמיק";s:3:"xal";s:10:"קסוסה";s:2:"xh";s:16:"קנטונזית";s:3:"yue";s:12:"קופטית";s:3:"cop";s:8:"קמבה";s:3:"kam";s:22:"קאבוורדיאנו";s:3:"kea";s:21:"קוירה צ׳יני";s:3:"khq";s:16:"קאלנג׳ין";s:3:"kln";s:14:"קונקאני";s:3:"kok";s:10:"קורוק";s:3:"kru";s:14:"קוואסיו";s:3:"nmg";s:10:"קיצ׳ה";s:3:"quc";s:25:"קויראבורו סני";s:3:"ses";s:12:"קומורו";s:3:"swb";s:14:"קאמאריש";s:3:"swb";s:32:"קאנגא־סוואַהיליש";s:3:"swc";s:14:"קלינגון";s:3:"tlh";s:8:"קאדו";s:3:"cad";s:10:"קאריב";s:3:"car";s:10:"קצ׳ין";s:3:"kac";s:10:"קאווי";s:3:"kaw";s:10:"קנמבו";s:3:"kbl";s:8:"קורו";s:3:"kfo";s:8:"קאסי";s:3:"kha";s:16:"קוטאנזית";s:3:"kho";s:16:"קימבונדו";s:3:"kmb";s:16:"קוסראיאן";s:3:"kos";s:8:"קפלה";s:3:"kpe";s:12:"קארלית";s:3:"krl";s:10:"קומיק";s:3:"kum";s:12:"קוטנאי";s:3:"kut";s:15:"ミクマク語";s:3:"mic";s:6:"קום";s:3:"bkm";s:12:"קאיוגה";s:3:"cay";s:8:"קאקו";s:3:"kkj";s:12:"ミエネ語";s:3:"mye";}i:325;a:116:{s:21:"कातालान";s:2:"ca";s:24:"क्याटालन";s:2:"ca";s:15:"कमोरो";s:2:"ch";s:18:"कॅमोरो";s:2:"ch";s:24:"कोर्सीकन";s:2:"co";s:24:"कॉर्सिकन";s:2:"co";s:24:"कोर्सिकन";s:2:"co";s:12:"क्री";s:2:"cr";s:40:"क्रीमीन तुर्की";s:3:"crh";s:43:"क्राइमीन तुर्की";s:3:"crh";s:24:"काशुबियन";s:3:"csb";s:36:"ქვემოსორბული";s:3:"dsb";s:46:"कनाडाई अंग्रेज़ी";s:5:"en-ca";s:43:"कॅनडियन इंग्रजी";s:5:"en-ca";s:30:"क्रोएशियाई";s:2:"hr";s:27:"क्रोएशियन";s:2:"hr";s:33:"क्रोएशियाली";s:2:"hr";s:21:"ქართული";s:2:"ka";s:28:"कारा-कल्पक";s:3:"kaa";s:15:"कबाइल";s:3:"kab";s:15:"काबिल";s:3:"kab";s:27:"कबार्डियन";s:3:"kbd";s:15:"कोंगो";s:2:"kg";s:15:"काँगो";s:2:"kg";s:18:"किकुयू";s:2:"ki";s:18:"किकुयु";s:2:"ki";s:30:"क्वान्यामा";s:2:"kj";s:18:"कज़ाख़";s:2:"kk";s:12:"कझाक";s:2:"kk";s:15:"काजाख";s:2:"kk";s:27:"कलाल्लिसत";s:2:"kl";s:27:"कालालिसुट";s:2:"kl";s:21:"ქმერული";s:2:"km";s:18:"कन्नड़";s:2:"kn";s:15:"कन्नड";s:2:"kn";s:21:"कन्नाडा";s:2:"kn";s:21:"कोरियाई";s:2:"ko";s:18:"कोरियन";s:2:"ko";s:24:"कोरियाली";s:2:"ko";s:34:"कोमी-पर्मयाक";s:3:"koi";s:34:"कोमी-परम्याक";s:3:"koi";s:37:"कोमी-पर्म्याक";s:3:"koi";s:15:"कनुरी";s:2:"kr";s:34:"कराचय-बल्कार";s:3:"krc";s:34:"कराचय-बाल्कर";s:3:"krc";s:28:"कॉशुर / کٲشُر";s:2:"ks";s:21:"कश्मीरी";s:2:"ks";s:27:"ქაშმირული";s:2:"ks";s:24:"काश्मीरी";s:2:"ks";s:15:"कॉशुर";s:7:"ks-deva";s:21:"कुर्दिश";s:2:"ku";s:21:"ქურთული";s:2:"ku";s:12:"कोमी";s:2:"kv";s:21:"कोर्निश";s:2:"kw";s:24:"किर्गीज़";s:2:"ky";s:18:"किरगीझ";s:2:"ky";s:21:"किर्गिज";s:2:"ky";s:15:"क्रीक";s:3:"mus";s:42:"ქვემოგერმანული";s:3:"nds";s:21:"क्वेचुआ";s:2:"qu";s:24:"क्वेचुवा";s:2:"qu";s:36:"किन्यारवांडा";s:2:"rw";s:42:"किन्यार्वान्डा";s:2:"rw";s:39:"किन्यारवान्डा";s:2:"rw";s:71:"केन्द्रीय एट्लास टामाजिघट";s:3:"tzm";s:21:"काल्मिक";s:3:"xal";s:15:"ქჰოსა";s:2:"xh";s:27:"कैंटोनीज़";s:3:"yue";s:21:"कँटोनीज";s:3:"yue";s:12:"किगा";s:3:"cgg";s:21:"कॉप्टिक";s:3:"cop";s:15:"कम्बा";s:3:"kam";s:18:"काम्बा";s:3:"kam";s:42:"काबुवेर्दियानु";s:3:"kea";s:36:"काबवर्दियानु";s:3:"kea";s:42:"काबुभेर्डियानु";s:3:"kea";s:28:"कोयरा चीनी";s:3:"khq";s:28:"कोयरा चिनी";s:3:"khq";s:21:"कलेंजिन";s:3:"kln";s:24:"कालेंजीन";s:3:"kln";s:27:"कालेन्जिन";s:3:"kln";s:18:"कोंकणी";s:3:"kok";s:24:"कोन्कानी";s:3:"kok";s:15:"कुरूख";s:3:"kru";s:21:"क्वासिओ";s:3:"nmg";s:24:"क्वासियो";s:3:"nmg";s:9:"किश";s:3:"quc";s:15:"कीशेइ";s:3:"quc";s:12:"किचे";s:3:"quc";s:46:"कोयराबोरो सेन्नी";s:3:"ses";s:24:"कोमोरियन";s:3:"swb";s:40:"कांगो स्वाहिली";s:3:"swc";s:40:"काँगो स्वाहिली";s:3:"swc";s:43:"कोङ्गो स्वाहिली";s:3:"swc";s:21:"क्लिंगन";s:3:"tlh";s:24:"क्लिंगोन";s:3:"tlh";s:24:"क्लिङ्गन";s:3:"tlh";s:57:"कोई भाषा सामग्री नहीं";s:3:"zxx";s:40:"कनाडाई फ़्रेंच";s:5:"fr-ca";s:40:"कॅनडियन फ्रेंच";s:5:"fr-ca";s:18:"कैड्डो";s:3:"cad";s:18:"कॅड्डो";s:3:"cad";s:15:"कैरिब";s:3:"car";s:15:"कॅरिब";s:3:"car";s:15:"काचिन";s:3:"kac";s:12:"कावी";s:3:"kaw";s:12:"कोरो";s:3:"kfo";s:27:"किम्बन्दु";s:3:"kmb";s:18:"कोसरैन";s:3:"kos";s:21:"कोसरियन";s:3:"kos";s:24:"क्पेल्लै";s:3:"kpe";s:24:"क्पेल्ले";s:3:"kpe";s:21:"करेलियन";s:3:"krl";s:15:"कुमीक";s:3:"kum";s:21:"कुतेनाई";s:3:"kut";s:43:"क्लासिकल सिरिएक";s:3:"syc";}i:459;a:32:{s:18:"カタロニア語";s:2:"ca";s:12:"カピス語";s:3:"cps";s:18:"カシューブ語";s:3:"csb";s:15:"カナダ英語";s:5:"en-ca";s:21:"カラカルパク語";s:3:"kaa";s:12:"カビル語";s:3:"kab";s:15:"カバルド語";s:3:"kbd";s:12:"カザフ語";s:2:"kk";s:15:"カンナダ語";s:2:"kn";s:12:"カヌリ語";s:2:"kr";s:18:"カラチャイ語";s:3:"krc";s:18:"カシミール語";s:2:"ks";s:18:"カルムイク語";s:3:"xal";s:12:"カンバ語";s:3:"kam";s:39:"カーボベルデ・クレオール語";s:3:"kea";s:18:"カレンジン語";s:3:"kln";s:18:"律勒欧萨米文";s:3:"smj";s:12:"カドー語";s:3:"cad";s:12:"カリブ語";s:3:"car";s:9:"芳格文";s:3:"fan";s:9:"芳族文";s:3:"fan";s:9:"芳蒂文";s:3:"fat";s:12:"カチン語";s:3:"kac";s:12:"カジェ語";s:3:"kaj";s:12:"カウィ語";s:3:"kaw";s:15:"カネンブ語";s:3:"kbl";s:9:"カシ語";s:3:"kha";s:15:"カレリア語";s:3:"krl";s:15:"カユーガ語";s:3:"cay";s:12:"カタブ語";s:3:"kcg";s:21:"カインガング語";s:3:"kgp";s:9:"カコ語";s:3:"kkj";}i:313;a:62:{s:30:"კატალანური";s:2:"ca";s:9:"閩東語";s:3:"cdo";s:27:"კორსიკული";s:2:"co";s:9:"კრი";s:2:"cr";s:24:"კაშუბური";s:3:"csb";s:52:"კანადური ინგლისური";s:5:"en-ca";s:43:"उत्तरी फ्रीसीयन";s:3:"frr";s:43:"उत्तरी फ्रिशियन";s:3:"frr";s:24:"კაბილური";s:3:"kab";s:15:"კონგო";s:2:"kg";s:18:"კიკუიუ";s:2:"ki";s:18:"კანადა";s:2:"kn";s:21:"კორეული";s:2:"ko";s:43:"კომი-პერმიაკული";s:3:"koi";s:18:"კანური";s:2:"kr";s:12:"კომი";s:2:"kv";s:21:"კორნული";s:2:"kw";s:15:"კრიკი";s:3:"mus";s:9:"閩南語";s:10:"zh-min-nan";s:31:"उत्तरी सोथो";s:3:"nso";s:18:"उड़िया";s:2:"or";s:15:"उडिया";s:2:"or";s:15:"კეჩუა";s:2:"qu";s:33:"კინიარუანდა";s:2:"rw";s:31:"उत्तरी सामी";s:2:"se";s:21:"उदमुर्त";s:3:"udm";s:15:"उइगुर";s:2:"ug";s:15:"उइघुर";s:2:"ug";s:15:"उर्दू";s:2:"ur";s:15:"उर्दु";s:2:"ur";s:21:"उज़्बेक";s:2:"uz";s:18:"उझ्बेक";s:2:"uz";s:21:"उज्बेकी";s:2:"uz";s:27:"კანტონური";s:3:"yue";s:21:"კოპტური";s:3:"cop";s:24:"კიმაშამი";s:3:"jmc";s:15:"კამბა";s:3:"kam";s:36:"კაბუვერდიანუ";s:3:"kea";s:31:"კოირა-ჩიინი";s:3:"khq";s:27:"კალენჯინი";s:3:"kln";s:21:"კონკანი";s:3:"kok";s:18:"კურუქი";s:3:"kru";s:34:"उत्तरी देबेल";s:2:"nd";s:34:"उत्तर देबेली";s:2:"nd";s:40:"उत्तर नेडेबेले";s:2:"nd";s:18:"კვასიო";s:3:"nmg";s:12:"კიჩე";s:3:"quc";s:40:"კოირაბორო-სენი";s:3:"ses";s:24:"კომორული";s:3:"swb";s:40:"კონგოს სუაჰილი";s:3:"swc";s:24:"კლინგონი";s:3:"tlh";s:49:"კანადური ფრანგული";s:5:"fr-ca";s:18:"კაჩინი";s:3:"kac";s:24:"კიმბუნდუ";s:3:"kmb";s:18:"კუსაიე";s:3:"kos";s:15:"კპელე";s:3:"kpe";s:27:"კარელიური";s:3:"krl";s:21:"კუტენაი";s:3:"kut";s:52:"კლასიკური ნევარული";s:3:"nwc";s:49:"კლასიკური სირიული";s:3:"syc";s:27:"उम्बुन्डु";s:3:"umb";s:18:"კაიუგა";s:3:"cay";}i:16;a:11:{s:21:"កាតាឡាន";s:2:"ca";s:15:"ក្រិច";s:2:"el";s:21:"ក្រូអាត";s:2:"hr";s:42:"កាហ្សាក់ស្តង់់";s:2:"kk";s:15:"កន្នដ";s:2:"kn";s:15:"កូរ៉េ";s:2:"ko";s:21:"កាស្មៀរ";s:2:"ks";s:9:"紐埃文";s:3:"niu";s:21:"កេទជួអា";s:2:"qu";s:6:"丰文";s:3:"fon";s:9:"팀니어";s:3:"tem";}i:221;a:58:{s:21:"ಕೆಟಲಾನ್";s:2:"ca";s:15:"ಕಮೊರೊ";s:2:"ch";s:27:"ಕೋರ್ಸಿಕನ್";s:2:"co";s:12:"ಕ್ರೀ";s:2:"cr";s:49:"ಕ್ರಿಮೀಯನ್ ಟರ್ಕಿಷ್";s:3:"crh";s:24:"ಕಶುಬಿಯನ್";s:3:"csb";s:52:"ಕೆನೆಡಿಯನ್ ಇಂಗ್ಲೀಷ್";s:5:"en-ca";s:33:"ಕ್ರೊಯೇಶಿಯನ್";s:2:"hr";s:34:"ಕಾರಾ-ಕಲ್ಪಾಕ್";s:3:"kaa";s:15:"ಕಬೈಲ್";s:3:"kab";s:27:"ಕಬರ್ಡಿಯನ್";s:3:"kbd";s:15:"ಕೊಂಗೊ";s:2:"kg";s:18:"ಕಿಕುಯು";s:2:"ki";s:33:"ಕ್ವಾನ್‌ಯಾಮಾ";s:2:"kj";s:12:"ಕಝಕ್";s:2:"kk";s:33:"ಕಲಾಲ್ಲಿಸುಟ್";s:2:"kl";s:15:"ಕನ್ನಡ";s:2:"kn";s:21:"ಕೊರಿಯನ್";s:2:"ko";s:37:"ಕೊಮಿ-ಪರ್ಮ್ಯಕ್";s:3:"koi";s:15:"ಕನುರಿ";s:2:"kr";s:37:"ಕರಚಯ್-ಬಲ್ಕಾರ್";s:3:"krc";s:24:"ಕಾಶ್ಮೀರಿ";s:2:"ks";s:24:"ಕುರ್ದಿಷ್";s:2:"ku";s:12:"ಕೋಮಿ";s:2:"kv";s:24:"ಕೋರ್ನಿಷ್";s:2:"kw";s:24:"ಕಿರ್ಗಿಜ್";s:2:"ky";s:18:"ಕಾಡಿನೋ";s:3:"lad";s:18:"ಕ್ರೀಕ್";s:3:"mus";s:27:"ಕಿರಾಂಡೀಸ್";s:3:"mwl";s:24:"ಕ್ವೆಚುವಾ";s:2:"qu";s:39:"ಕೀನ್ಯಾರುವಾಂಡಾ";s:2:"rw";s:24:"ಕಲ್‌ಮೈಕ್";s:3:"xal";s:15:"ಕ್ಸೋಸ";s:2:"xh";s:27:"ಕಾಂಟೊನೀಸ್";s:3:"yue";s:24:"ಕೊಪ್ಟಿಕ್";s:3:"cop";s:12:"ಕಂಬಾ";s:3:"kam";s:36:"ಕಬುವೆರ್ಡಿಯನು";s:3:"kea";s:28:"ಕೊಯ್ರ ಚೀನಿ";s:3:"khq";s:24:"ಕಲೆಂಜಿನ್";s:3:"kln";s:18:"ಕೊಂಕಣಿ";s:3:"kok";s:18:"ಕುರುಖ್";s:3:"kru";s:12:"ಕಿಷೆ";s:3:"quc";s:46:"ಕೊಯ್ರಬೊರೊ ಸೆನ್ನಿ";s:3:"ses";s:27:"ಕೊಮೊರಿಯನ್";s:3:"swb";s:37:"ಕಾಂಗೊ ಸ್ವಹಿಲಿ";s:3:"swc";s:24:"ಕ್ಲಿಂಗನ್";s:3:"tlh";s:49:"ಕೆನೆಡಿಯನ್ ಫ್ರೆಂಚ್";s:5:"fr-ca";s:24:"ಕ್ಯಾಡ್ಡೋ";s:3:"cad";s:18:"ಕಾರಿಬ್";s:3:"car";s:15:"ಕಚಿನ್";s:3:"kac";s:12:"ಕಾವಿ";s:3:"kaw";s:12:"ಕೋರೋ";s:3:"kfo";s:24:"ಕಿಂಬುಂಡು";s:3:"kmb";s:24:"ಕೊಸರಿಯನ್";s:3:"kos";s:21:"ಕಪೆಲ್ಲೆ";s:3:"kpe";s:24:"ಕರೇಲಿಯನ್";s:3:"krl";s:18:"ಕುಮೈಕ್";s:3:"kum";s:24:"ಕುಟೇನಾಯ್";s:3:"kut";}i:96;a:64:{s:21:"ကာတာလန်";s:2:"ca";s:39:"швайцарская нямецкая";s:5:"de-ch";s:49:"швейцарски горногермански";s:5:"de-ch";s:38:"швейцари дээр герман";s:5:"de-ch";s:35:"швйецариаг немыцаг";s:5:"de-ch";s:51:"швейцарский верхненемецкий";s:5:"de-ch";s:48:"швајцарски високи немачки";s:5:"de-ch";s:43:"ကနေဒါ အင်္ဂလိပ်";s:5:"en-ca";s:14:"шпански";s:2:"es";s:39:"шатландская гэльская";s:2:"gd";s:39:"шатляндзкая гэльская";s:2:"gd";s:33:"шотландски галски";s:2:"gd";s:27:"шкотски гелски";s:2:"gd";s:23:"шотланд келт";s:2:"gd";s:33:"швейцарски немски";s:3:"gsw";s:44:"швейцариялық неміс тілі";s:3:"gsw";s:39:"швајцарски германски";s:3:"gsw";s:29:"швейцари герман";s:3:"gsw";s:39:"швейцарский немецкий";s:3:"gsw";s:17:"шичуан еи";s:2:"ii";s:21:"ကွန်ဂို";s:2:"kg";s:21:"ကန္နာဒါ";s:2:"kn";s:30:"ကိုးရီးယား";s:2:"ko";s:34:"ကိုမီ-ပါမြက်";s:3:"koi";s:30:"ကက်ရှ်မီရီ";s:2:"ks";s:9:"ကဒ်";s:2:"ku";s:30:"ကင်ရာဝန်ဒါ";s:2:"rw";s:22:"шатляндзкая";s:3:"sco";s:20:"шотландски";s:3:"sco";s:33:"шкотски германски";s:3:"sco";s:22:"шотландский";s:3:"sco";s:22:"шотландська";s:3:"sco";s:8:"шона";s:2:"sn";s:12:"шонача";s:2:"sn";s:16:"шведская";s:2:"sv";s:16:"швэдзкая";s:2:"sv";s:14:"шведски";s:2:"sv";s:8:"швед";s:2:"sv";s:12:"шведче";s:2:"sv";s:16:"шведский";s:2:"sv";s:16:"шведська";s:2:"sv";s:16:"шлезиски";s:3:"szl";s:21:"ကွန်ကနီ";s:3:"kok";s:14:"шамбала";s:3:"ksb";s:20:"шамабалача";s:3:"ksb";s:34:"шпански (во Европа)";s:5:"es-es";s:37:"ကနေဒါ ပြင်သစ်";s:5:"fr-ca";s:43:"швайцарская француская";s:5:"fr-ch";s:35:"швейцарски френски";s:5:"fr-ch";s:48:"швейцариялық француз тілі";s:5:"fr-ch";s:27:"швейцари франц";s:5:"fr-ch";s:35:"швейцариаг францаг";s:5:"fr-ch";s:45:"швейцарский французский";s:5:"fr-ch";s:15:"ကချင်";s:3:"kac";s:6:"шан";s:3:"shn";s:14:"шанский";s:3:"shn";s:14:"шанська";s:3:"shn";s:18:"шумерская";s:3:"sux";s:16:"шумерски";s:3:"sux";s:18:"шумерский";s:3:"sux";s:18:"шумерська";s:3:"sux";s:12:"戈马拉文";s:3:"bbj";s:12:"戈馬拉文";s:3:"bbj";s:23:"штучная мова";s:3:"art";}i:581;a:30:{s:21:"ਕੈਟਾਲਾਨ";s:2:"ca";s:21:"ਕੋਰਸੀਕਨ";s:2:"co";s:49:"ਕੈਨੇਡੀਅਨ ਅੰਗਰੇਜ਼ੀ";s:5:"en-ca";s:8:"حبشي";s:2:"et";s:30:"ਕ੍ਰੋਏਸ਼ਿਆਈ";s:2:"hr";s:15:"ਕਬਾਇਲ";s:3:"kab";s:18:"ਕਿਕੂਯੂ";s:2:"ki";s:18:"ਕਜ਼ਾਖ਼";s:2:"kk";s:30:"ਕਲਾਅੱਲੀਸੁਟ";s:2:"kl";s:12:"ਕੰਨੜ";s:2:"kn";s:18:"ਕੋਰੀਆਈ";s:2:"ko";s:34:"ਕੋਮੀ-ਪੇਰਮਿਆਕ";s:3:"koi";s:21:"ਕਸ਼ਮੀਰੀ";s:2:"ks";s:12:"ਕੁਰਦ";s:2:"ku";s:21:"ਕੋਰਨਿਸ਼";s:2:"kw";s:21:"ਕਿਰਗੀਜ਼";s:2:"ky";s:21:"ਕਕੇਸ਼ੁਆ";s:2:"qu";s:33:"ਕਿਨਿਆਰਵਾਂਡਾ";s:2:"rw";s:12:"ਕੰਬਾ";s:3:"kam";s:36:"ਕਾਬੁਵੇਰਦਿਆਨੂ";s:3:"kea";s:28:"ਕੋਯਰਾ ਚੀਨੀ";s:3:"khq";s:18:"ਕਲੇਜਿਨ";s:3:"kln";s:18:"ਕੋਂਕਣੀ";s:3:"kok";s:31:"ਕਈ ਭਾਸ਼ਾਵਾਂ";s:3:"mul";s:18:"ਕਵਾਸਿਓ";s:3:"nmg";s:12:"ਕੇਸ਼";s:3:"quc";s:43:"ਕੋਇਰਾਬੋਰੋ ਸੇਂਨੀ";s:3:"ses";s:37:"ਕਾਂਗੋ ਸਵਾਹਿਲੀ";s:3:"swc";s:60:"ਕੋਈ ਭਾਸ਼ਾਈ ਸਮੱਗਰੀ ਨਹੀਂ";s:3:"zxx";s:49:"ਕੈਨੇਡੀਅਨ ਫਰਾਂਸੀਸੀ";s:5:"fr-ca";}i:482;a:52:{s:18:"කැටලන්";s:2:"ca";s:36:"ක්‍රොඑශියානු";s:2:"co";s:58:"කැනේඩියානු ඉංග්‍රීසි";s:5:"en-ca";s:39:"ක්‍රෝයේශියානු";s:2:"hr";s:18:"লোজবান";s:3:"jbo";s:15:"කැබලා";s:3:"kab";s:18:"කිකුයු";s:2:"ki";s:15:"කසාඛ්";s:2:"kk";s:24:"කලාලිසට්";s:2:"kl";s:12:"කමර්";s:2:"km";s:15:"කණ්ණඩ";s:2:"kn";s:24:"කොරියානු";s:2:"ko";s:40:"කොමි-පර්මියාක්";s:3:"koi";s:24:"කාෂ්මීර්";s:2:"ks";s:18:"කුර්දි";s:2:"ku";s:30:"කෝනීසියානු";s:2:"kw";s:24:"කිර්ගිස්";s:2:"ky";s:15:"লাটিন";s:2:"la";s:18:"লাডিনো";s:3:"lad";s:45:"লুক্সেমবার্গীয়";s:2:"lb";s:27:"লেজঘিয়ান";s:3:"lez";s:33:"লিম্বুর্গিশ";s:2:"li";s:24:"লিঙ্গালা";s:2:"ln";s:9:"লাও";s:2:"lo";s:12:"লোজি";s:3:"loz";s:33:"লিথুয়েনীয়";s:2:"lt";s:15:"লুশাই";s:3:"lus";s:27:"লাত্‌ভীয়";s:2:"lv";s:24:"ක්වීචුවා";s:2:"qu";s:36:"කින්යර්වන්ඩා";s:2:"rw";s:18:"කැම්බා";s:3:"kam";s:39:"කබුවෙර්ඩියානෝ";s:3:"kea";s:31:"කොයිරා චිනි";s:3:"khq";s:24:"කලෙන්ජන්";s:3:"kln";s:21:"කොන්කනි";s:3:"kok";s:18:"লাঙ্গি";s:3:"lag";s:18:"লাকোটা";s:3:"lkt";s:37:"লুবা-কাটাঙ্গা";s:2:"lu";s:34:"লুবা-লুলুয়া";s:3:"lua";s:15:"লুয়ো";s:3:"luo";s:18:"লুইয়া";s:3:"luy";s:21:"කුවාසිඔ";s:3:"nmg";s:18:"කියිචේ";s:3:"quc";s:49:"කෝයිරාබොරො සෙන්නි";s:3:"ses";s:25:"লুলে সামি";s:3:"smj";s:43:"කොන්ගෝ ස්වාහිලි";s:3:"swc";s:74:"ল্যাটিন আমেরিকান স্প্যানিশ";s:6:"es-419";s:49:"කැනේඩියානු ප්‍රංශ";s:5:"fr-ca";s:18:"লান্ডা";s:3:"lah";s:18:"লাম্বা";s:3:"lam";s:21:"লুইসেনো";s:3:"lui";s:18:"লুন্ডা";s:3:"lun";}i:965;a:75:{s:27:"கேட்டலான்";s:2:"ca";s:27:"கோர்சிகன்";s:2:"co";s:12:"க்ரீ";s:2:"cr";s:52:"கிரிமியன் துர்க்கி";s:3:"crh";s:24:"கஷுபியன்";s:3:"csb";s:27:"கிரேக்கம்";s:2:"el";s:46:"கனடியன் ஆங்கிலம்";s:5:"en-ca";s:18:"காகௌஸ்";s:3:"gag";s:27:"காலிஸியன்";s:2:"gl";s:18:"குரானி";s:2:"gn";s:18:"கோதிக்";s:3:"got";s:27:"குஜராத்தி";s:2:"gu";s:27:"குரோஷியன்";s:2:"hr";s:34:"காரா-கல்பாக்";s:3:"kaa";s:21:"கபாய்ல்";s:3:"kab";s:30:"கபார்டியன்";s:3:"kbd";s:18:"காங்கோ";s:2:"kg";s:18:"கிகுயூ";s:2:"ki";s:30:"குவான்யாமா";s:2:"kj";s:15:"கசாக்";s:2:"kk";s:27:"கலாலிசூட்";s:2:"kl";s:18:"கெமெர்";s:2:"km";s:21:"கன்னடம்";s:2:"kn";s:21:"கொரியன்";s:2:"ko";s:43:"கொமி-பெர்ம்யாக்";s:3:"koi";s:15:"கனுரி";s:2:"kr";s:37:"கராசே-பல்கார்";s:3:"krc";s:24:"காஷ்மிரி";s:2:"ks";s:24:"குர்திஷ்";s:2:"ku";s:12:"கோமி";s:2:"kv";s:24:"கார்னிஷ்";s:2:"kw";s:24:"கிர்கிஸ்";s:2:"ky";s:18:"கான்டா";s:2:"lg";s:18:"க்ரீக்";s:3:"mus";s:24:"கிவேசுவா";s:2:"qu";s:42:"கின்யாருவான்டா";s:2:"rw";s:21:"கல்மிக்";s:3:"xal";s:30:"காண்டோனீஸ்";s:3:"yue";s:24:"காப்டிக்";s:3:"cop";s:6:"கா";s:3:"gaa";s:12:"குஸி";s:3:"guz";s:15:"கம்பா";s:3:"kam";s:39:"கபுவெர்தியானு";s:3:"kea";s:31:"கொய்ரா சீனீ";s:3:"khq";s:27:"கலின்ஜின்";s:3:"kln";s:21:"கொங்கணி";s:3:"kok";s:18:"குருக்";s:3:"kru";s:24:"க்வாசியோ";s:3:"nmg";s:12:"கீசீ";s:3:"quc";s:49:"கொய்ராபோரோ சென்னி";s:3:"ses";s:27:"கொமோரியன்";s:3:"swb";s:43:"காங்கோ சுவாஹிலி";s:3:"swc";s:30:"க்ளிங்கோன்";s:3:"tlh";s:40:"கனடிய பிரெஞ்சு";s:5:"fr-ca";s:12:"கீஜ்";s:3:"gez";s:12:"கேடோ";s:3:"cad";s:15:"கரீப்";s:3:"car";s:55:"கிழக்கு ஃப்ரிஸியான்";s:3:"frs";s:9:"கயோ";s:3:"gay";s:36:"கில்பெர்டீஸ்";s:3:"gil";s:18:"கோன்டி";s:3:"gon";s:27:"கோரோன்டலோ";s:3:"gor";s:18:"க்ரேபோ";s:3:"grb";s:24:"குவிசின்";s:3:"gwi";s:18:"காசின்";s:3:"kac";s:12:"காவி";s:3:"kaw";s:12:"கோரோ";s:3:"kfo";s:12:"காஸி";s:3:"kha";s:24:"கோதானீஸ்";s:3:"kho";s:30:"கிம்புன்து";s:3:"kmb";s:24:"கோஸ்ரைன்";s:3:"kos";s:24:"க்பெல்லே";s:3:"kpe";s:24:"கரேலியன்";s:3:"krl";s:21:"கும்இக்";s:3:"kum";s:18:"குடேனை";s:3:"kut";}i:93;a:107:{s:21:"కెటలాన్";s:2:"ca";s:27:"కోర్సికన్";s:2:"co";s:12:"క్రి";s:2:"cr";s:49:"క్రిమియన్ టర్కిష్";s:3:"crh";s:24:"కషుబియన్";s:3:"csb";s:49:"కెనడియన్ ఇంగ్లీష్";s:5:"en-ca";s:12:"ꑭꀠꑸꉙ";s:2:"es";s:10:"хауза";s:2:"ha";s:10:"хауса";s:2:"ha";s:14:"хаусача";s:2:"ha";s:8:"хака";s:3:"hak";s:16:"хавайски";s:3:"haw";s:16:"хавајски";s:3:"haw";s:10:"хавай";s:3:"haw";s:18:"хебрејски";s:2:"he";s:12:"хіндзі";s:2:"hi";s:10:"хинди";s:2:"hi";s:14:"хиндиче";s:2:"hi";s:20:"хилигайнон";s:3:"hil";s:26:"хилигајнонски";s:3:"hil";s:20:"хілігайнон";s:3:"hil";s:17:"хири моту";s:2:"ho";s:16:"хиримоту";s:2:"ho";s:17:"хірі-моту";s:2:"ho";s:18:"харвацкая";s:2:"hr";s:18:"хърватски";s:2:"hr";s:12:"хорват";s:2:"hr";s:16:"хорватча";s:2:"hr";s:16:"хрватски";s:2:"hr";s:16:"хорватаг";s:2:"hr";s:20:"хорватский";s:2:"hr";s:33:"క్రొయెషియన్";s:2:"hr";s:20:"хорватська";s:2:"hr";s:18:"хаитянски";s:2:"ht";s:14:"хаитски";s:2:"ht";s:12:"хереро";s:2:"hz";s:34:"కారా-కల్పాక్";s:3:"kaa";s:18:"కాబిల్";s:3:"kab";s:30:"కబార్డియన్";s:3:"kbd";s:15:"కోంగో";s:2:"kg";s:18:"కికుయు";s:2:"ki";s:27:"క్వాన్యామ";s:2:"kj";s:10:"хасаг";s:2:"kk";s:12:"కజఖ్";s:2:"kk";s:33:"కలాల్లిసూట్";s:2:"kl";s:15:"కన్నడ";s:2:"kn";s:21:"కొరియన్";s:2:"ko";s:34:"కోమి-పర్మాక్";s:3:"koi";s:18:"కానురి";s:2:"kr";s:34:"కరచే-బల్కార్";s:3:"krc";s:24:"కాశ్మీరి";s:2:"ks";s:21:"కర్డిష్";s:2:"ku";s:12:"కోమి";s:2:"kv";s:24:"కోర్నిష్";s:2:"kw";s:24:"కిర్గిజ్";s:2:"ky";s:18:"క్రీక్";s:3:"mus";s:18:"холандски";s:2:"nl";s:18:"కెషుయా";s:2:"qu";s:36:"కిన్యర్వాండా";s:2:"rw";s:17:"хойд сами";s:2:"se";s:25:"хорватын серб";s:2:"sh";s:12:"хальмг";s:3:"xal";s:21:"కల్మిక్";s:3:"xal";s:8:"хоса";s:2:"xh";s:24:"కాంటనీస్";s:3:"yue";s:10:"хятад";s:2:"zh";s:37:"хялбаршуулсан хятад";s:7:"zh-hans";s:9:"콥트어";s:3:"cop";s:24:"కోప్టిక్";s:3:"cop";s:12:"хитски";s:3:"hit";s:16:"хетитски";s:3:"hit";s:16:"хеттский";s:3:"hit";s:12:"хітіті";s:3:"hit";s:12:"కంబా";s:3:"kam";s:39:"కాబువేర్దియను";s:3:"kea";s:34:"కొయరా చీన్నీ";s:3:"khq";s:24:"కలెంజిన్";s:3:"kln";s:18:"కొంకణి";s:3:"kok";s:18:"కూరుఖ్";s:3:"kru";s:23:"хойд ндебеле";s:2:"nd";s:24:"క్వాసియె";s:3:"nmg";s:12:"కిచే";s:3:"quc";s:9:"賽納文";s:3:"seh";s:49:"కోయోరాబోరో సెన్నీ";s:3:"ses";s:27:"కొమొరియన్";s:3:"swb";s:40:"కాంగో స్వాహిలి";s:3:"swc";s:27:"క్లింగాన్";s:3:"tlh";s:45:"хэл зүйн агуулга байхгүй";s:3:"zxx";s:49:"కెనడియెన్ ఫ్రెంచ్";s:5:"fr-ca";s:18:"కేడ్డో";s:3:"cad";s:18:"కేరిబ్";s:3:"car";s:10:"хайда";s:3:"hai";s:10:"хајда";s:3:"hai";s:10:"хмонг";s:3:"hmn";s:8:"хупа";s:3:"hup";s:18:"కాచిన్";s:3:"kac";s:12:"కావి";s:3:"kaw";s:12:"కోరో";s:3:"kfo";s:16:"хотански";s:3:"kho";s:18:"хотанский";s:3:"kho";s:26:"хотаносакська";s:3:"kho";s:27:"కిమ్బుండు";s:3:"kmb";s:27:"కోస్రేయన్";s:3:"kos";s:24:"కరేలియన్";s:3:"krl";s:24:"хъуымыхъхъаг";s:3:"kum";s:24:"కుమ్యిక్";s:3:"kum";s:18:"కుటేనై";s:3:"kut";}i:585;a:73:{s:21:"กาตาลัง";s:2:"ca";s:24:"กาปิซนอน";s:3:"cps";s:12:"กรีก";s:2:"el";s:21:"กากาอุซ";s:3:"gag";s:24:"กาลิเซีย";s:2:"gl";s:18:"กิลากี";s:3:"glk";s:21:"กวารานี";s:2:"gn";s:27:"กรีกโบราณ";s:3:"grc";s:31:"การา-กาลพาก";s:3:"kaa";s:15:"กาไบล";s:3:"kab";s:18:"กีกูยู";s:2:"ki";s:21:"กวนยามา";s:2:"kj";s:27:"กรีนแลนด์";s:2:"kl";s:21:"กันนาดา";s:2:"kn";s:27:"กินารายอา";s:3:"krj";s:21:"กัศมีร์";s:2:"ks";s:18:"رومانیولو";s:3:"rgn";s:12:"رومانش";s:2:"rm";s:18:"رومانىشچە";s:2:"rm";s:16:"روندیایی";s:2:"rn";s:10:"رُندی";s:2:"rn";s:14:"رۇندىچە";s:2:"rn";s:10:"رونڈی";s:2:"rn";s:18:"رومانیایی";s:2:"ro";s:12:"رومٲنی";s:2:"ro";s:12:"روماني";s:2:"ro";s:20:"رۇمىنىيەچە";s:2:"ro";s:10:"رومنی";s:2:"ro";s:8:"روسی";s:2:"ru";s:10:"روٗسی";s:2:"ru";s:8:"روسي";s:2:"ru";s:10:"رۇسچە";s:2:"ru";s:18:"رىۋانداچە";s:2:"rw";s:24:"กวางตุ้ง";s:3:"yue";s:23:"رِوٲجی چیٖنی";s:7:"zh-hant";s:21:"روایتی چینی";s:7:"zh-hant";s:6:"กา";s:3:"gaa";s:15:"กุซซี";s:3:"guz";s:21:"กอนกานี";s:3:"kok";s:15:"กุรุข";s:3:"kru";s:21:"กวาซิโอ";s:3:"nmg";s:12:"กีเช";s:3:"quc";s:10:"رومبو";s:3:"rof";s:14:"رومبویی";s:3:"rof";s:14:"رومبوچە";s:3:"rof";s:6:"روا";s:3:"rwk";s:10:"روایی";s:3:"rwk";s:12:"رىۋاچە";s:3:"rwk";s:9:"กีซ";s:3:"gez";s:12:"กาโย";s:3:"gay";s:15:"กบายา";s:3:"gba";s:27:"กิลเบอร์ต";s:3:"gil";s:15:"กอนดิ";s:3:"gon";s:27:"กอรอนทาโล";s:3:"gor";s:21:"กวิชอิน";s:3:"gwi";s:18:"กะฉิ่น";s:3:"kac";s:9:"กวี";s:3:"kaw";s:12:"กาสี";s:3:"kha";s:15:"กาแปล";s:3:"kpe";s:16:"راجستانی";s:3:"raj";s:20:"راجِستھٲنۍ";s:3:"raj";s:20:"راجاستانچە";s:3:"raj";s:16:"راپانویی";s:3:"rap";s:14:"رَپانوی";s:3:"rap";s:18:"راپانىيچە";s:3:"rap";s:22:"راروتونگایی";s:3:"rar";s:22:"رَروٹونٛگَن";s:3:"rar";s:16:"رومانویی";s:3:"rom";s:12:"رومَنی";s:3:"rom";s:15:"กัมเบ";s:3:"sba";s:42:"رموز المعايير الأساسية";s:3:"zbl";s:6:"กม";s:3:"bkm";s:39:"กอนกานีของกัว";s:3:"gom";}i:603;a:74:{s:18:"كاتالانچە";s:2:"ca";s:14:"كورساچە";s:2:"co";s:10:"كرىچە";s:2:"cr";s:18:"كاسزۇبىچە";s:3:"csb";s:31:"كانادا ئىنگلىزچە";s:5:"en-ca";s:18:"ਫ਼ਾਰਸੀ";s:2:"fa";s:18:"ਫਿਨਿਸ਼";s:2:"fi";s:18:"ਫ਼ਿਜ਼ੀ";s:2:"fj";s:21:"ਫ਼ੇਰੋਸੇ";s:2:"fo";s:24:"ਫਰਾਂਸੀਸੀ";s:2:"fr";s:28:"ਫਿਜੀ ਹਿੰਦੀ";s:3:"hif";s:16:"كابىلېچە";s:3:"kab";s:20:"كاباردەيچە";s:3:"kbd";s:14:"كونگوچە";s:2:"kg";s:16:"كىكۇيۇچە";s:2:"ki";s:22:"كىۋانياماچە";s:2:"kj";s:16:"كالاليست";s:2:"kl";s:16:"كىخمېرچە";s:2:"km";s:18:"كانناداچە";s:2:"kn";s:16:"كورېيەچە";s:2:"ko";s:25:"كومي-بيرماياك";s:3:"koi";s:16:"كانۇرىچە";s:2:"kr";s:16:"كەشمىرچە";s:2:"ks";s:14:"كولىشچە";s:3:"ksh";s:12:"كۇردچە";s:2:"ku";s:28:"كوردي (عەرەبی)‏";s:7:"ku-arab";s:12:"كومىچە";s:2:"kv";s:16:"كورنىشچە";s:2:"kw";s:14:"كىرىكچە";s:3:"mus";s:14:"كېچياچە";s:2:"qu";s:16:"كوپتىكچە";s:3:"cop";s:24:"ਫਿਲੀਪਿਨੋ";s:3:"fil";s:14:"كامباچە";s:3:"kam";s:24:"كابوفيرديانو";s:3:"kea";s:28:"كابۇۋېردىيانچە";s:3:"kea";s:22:"كابويرديانو";s:3:"kea";s:21:"كويرا تشيني";s:3:"khq";s:23:"كويرا چىنىچە";s:3:"khq";s:19:"كويرا شيني";s:3:"khq";s:16:"كالينجين";s:3:"kln";s:20:"كالېنجىنچە";s:3:"kln";s:18:"كونكانىچە";s:3:"kok";s:12:"كرخانة";s:3:"kru";s:14:"كۇرۇكچە";s:3:"kru";s:19:"كۆپ تىللار";s:3:"mul";s:21:"ਫਲੈਮਿਸ਼";s:5:"nl-be";s:12:"كواسيو";s:3:"nmg";s:18:"كۋاسىيوچە";s:3:"nmg";s:12:"كوايسو";s:3:"nmg";s:8:"كيشي";s:3:"quc";s:8:"كيشی";s:3:"quc";s:27:"كويرابورو سيني";s:3:"ses";s:27:"كويرابورو سينی";s:3:"ses";s:16:"كومورىچە";s:3:"swb";s:27:"كونگو سىۋالىچە";s:3:"swc";s:20:"كىلىنگونچە";s:3:"tlh";s:33:"كانادا فىرانسۇزچە";s:5:"fr-ca";s:14:"كاددوچە";s:3:"cad";s:14:"كارىبچە";s:3:"car";s:14:"كاچىنچە";s:3:"kac";s:12:"كاۋىچە";s:3:"kaw";s:12:"كانمبو";s:3:"kbl";s:18:"كانېمبۇچە";s:3:"kbl";s:12:"كوروچە";s:3:"kfo";s:12:"كاسىچە";s:3:"kha";s:20:"كىمبۇندۇچە";s:3:"kmb";s:18:"كوسرايېچە";s:3:"kos";s:18:"كىپەللېچە";s:3:"kpe";s:14:"كارەلچە";s:3:"krl";s:18:"كۇتەنايچە";s:3:"kut";s:31:"كلاسسىك سۈرىيەچە";s:3:"syc";s:10:"كومچە";s:3:"bkm";s:16:"كايۇگاچە";s:3:"cay";s:12:"كاكوچە";s:3:"kkj";}i:152;a:13:{s:18:"加泰罗尼亚文";s:2:"ca";s:18:"加泰羅尼亞文";s:2:"ca";s:15:"加拿大英文";s:5:"en-ca";s:12:"加告兹文";s:3:"gag";s:12:"加告茲文";s:3:"gag";s:15:"加利西亚文";s:2:"gl";s:15:"加利西亞文";s:2:"gl";s:6:"加文";s:3:"gaa";s:9:"加族文";s:3:"gaa";s:15:"加拿大法文";s:5:"fr-ca";s:12:"加勒比文";s:3:"car";s:9:"加約文";s:3:"gay";s:15:"加涅姆布文";s:3:"kbl";}i:670;a:54:{s:24:"چینی مین شرقی";s:3:"cdo";s:8:"چچنی";s:2:"ce";s:10:"چیچَن";s:2:"ce";s:14:"چېچىنچە";s:2:"ce";s:16:"چامورویی";s:2:"ch";s:18:"چامورروچە";s:2:"ch";s:14:"چوکتویی";s:3:"cho";s:12:"چوکتَو";s:3:"cho";s:16:"چوكتاۋچە";s:3:"cho";s:16:"چروکیایی";s:3:"chr";s:14:"چیٚروکی";s:3:"chr";s:16:"چېروكىچە";s:3:"chr";s:12:"چیروکی";s:3:"chr";s:14:"چېيېنچە";s:3:"chy";s:6:"چکی";s:2:"cs";s:8:"چیٚک";s:2:"cs";s:6:"چېک";s:2:"cs";s:10:"چېخچە";s:2:"cs";s:6:"چیک";s:2:"cs";s:21:"چٔرچ سلاوِک";s:2:"cu";s:12:"چوواشی";s:2:"cv";s:10:"چُواش";s:2:"cv";s:14:"چۇۋاشچە";s:2:"cv";s:17:"چینی ادبی";s:3:"lzh";s:9:"ሾናኛ";s:2:"sn";s:12:"چوانگی";s:2:"za";s:8:"چینی";s:2:"zh";s:10:"چیٖنی";s:2:"zh";s:8:"چیني";s:2:"zh";s:21:"چینی کلاسیک";s:12:"zh-classical";s:17:"چینی (چین)";s:5:"zh-cn";s:26:"چینی ساده‌شده";s:7:"zh-hans";s:28:"چینی (آسان کردہ)";s:7:"zh-hans";s:17:"چینی سنتی";s:7:"zh-hant";s:24:"چینی (هنگ کنگ)";s:5:"zh-hk";s:24:"چینی (مین نان)";s:10:"zh-min-nan";s:25:"چینی (سنگاپور)";s:5:"zh-sg";s:23:"چینی (تایوان)";s:5:"zh-tw";s:8:"چیگا";s:3:"cgg";s:12:"چىگاچە";s:3:"cgg";s:19:"چندین زبان";s:3:"mul";s:10:"چیبچا";s:3:"chb";s:12:"چیٖبچا";s:3:"chb";s:14:"چىبچاچە";s:3:"chb";s:14:"چھَگتاے";s:3:"chg";s:18:"چاغاتايچە";s:3:"chg";s:8:"چوکی";s:3:"chk";s:12:"چُکیٖز";s:3:"chk";s:10:"چۇكچە";s:3:"chk";s:25:"چِنوٗک جارگَن";s:3:"chn";s:27:"چىنۇك-ژارگونچە";s:3:"chn";s:24:"چیپه‌ویه‌ای";s:3:"chp";s:20:"چىپېۋيانچە";s:3:"chp";s:21:"چاد ئەرەبچە";s:3:"shu";}i:85;a:135:{s:14:"нохчийн";s:2:"ce";s:16:"нямецкая";s:2:"de";s:12:"немски";s:2:"de";s:19:"неміс тілі";s:2:"de";s:14:"немисче";s:2:"de";s:14:"немыцаг";s:2:"de";s:16:"немецкий";s:2:"de";s:14:"немачки";s:2:"de";s:16:"німецька";s:2:"de";s:30:"нямецкая (аўстр.)";s:5:"de-at";s:30:"нямецкая (швейц.)";s:5:"de-ch";s:67:"неміс тілінің швейцариялық диалекті";s:5:"de-ch";s:26:"нижнелужицкий";s:3:"dsb";s:28:"нижньолужицька";s:3:"dsb";s:35:"немисче (Швейцария)";s:3:"gsw";s:39:"німецька швейцарська";s:3:"gsw";s:21:"нэгдмэл хэл";s:2:"ie";s:12:"носуча";s:2:"ii";s:8:"носу";s:2:"ii";s:9:"日本語";s:2:"ja";s:6:"日文";s:2:"ja";s:12:"日德蘭文";s:3:"jut";s:10:"науру";s:2:"na";s:20:"науруански";s:2:"na";s:28:"нэапалітанская";s:3:"nap";s:26:"неаполитански";s:3:"nap";s:18:"неаполски";s:3:"nap";s:28:"неаполитанский";s:3:"nap";s:28:"неаполітанська";s:3:"nap";s:31:"нарвэская букмал";s:2:"nb";s:33:"нарвэская (букмал)";s:2:"nb";s:29:"норвежки букмол";s:2:"nb";s:35:"норвегиялық букмол";s:2:"nb";s:31:"норвежче (Букмал)";s:2:"nb";s:29:"норвешки букмол";s:2:"nb";s:31:"норвегийн букмол";s:2:"nb";s:33:"норвежский букмол";s:2:"nb";s:29:"норвешки бокмал";s:2:"nb";s:30:"нижнегерманский";s:3:"nds";s:28:"нижньонімецька";s:3:"nds";s:20:"непальская";s:2:"ne";s:16:"непалски";s:2:"ne";s:10:"непал";s:2:"ne";s:14:"непалча";s:2:"ne";s:20:"непальский";s:2:"ne";s:20:"непальська";s:2:"ne";s:16:"неварски";s:3:"new";s:18:"неварский";s:3:"new";s:12:"неварі";s:3:"new";s:12:"ндонга";s:2:"ng";s:12:"ниуеан";s:3:"niu";s:16:"ниуејски";s:3:"niu";s:8:"ниуэ";s:3:"niu";s:8:"ніуе";s:3:"niu";s:26:"нідэрляндзкая";s:2:"nl";s:24:"нидерландски";s:2:"nl";s:27:"нидерланд тілі";s:2:"nl";s:37:"нарвежская (нюнорск)";s:2:"nn";s:33:"нарвэская (нюнашк)";s:2:"nn";s:29:"норвежки нюношк";s:2:"nn";s:37:"норвегиялық нинорск";s:2:"nn";s:33:"норвежче (Нинорск)";s:2:"nn";s:31:"норвешки нинорск";s:2:"nn";s:33:"норвегийн нинорск";s:2:"nn";s:35:"норвежский нюнорск";s:2:"nn";s:31:"нюношк (Норвегія)";s:2:"nn";s:20:"нарвежская";s:2:"no";s:33:"нарвэская (букмол)";s:2:"no";s:16:"норвежки";s:2:"no";s:12:"норвег";s:2:"no";s:16:"норвежче";s:2:"no";s:16:"норвешки";s:2:"no";s:14:"норвеги";s:2:"no";s:20:"норвежский";s:2:"no";s:18:"норвезька";s:2:"no";s:14:"новијал";s:3:"nov";s:12:"навахо";s:2:"nv";s:14:"ньянджа";s:2:"ny";s:18:"帕皮亚门托文";s:3:"pap";s:18:"帕皮阿門托文";s:3:"pap";s:12:"нгомба";s:3:"jgo";s:16:"нгомбача";s:3:"jgo";s:31:"несколько языков";s:3:"mul";s:8:"нама";s:3:"naq";s:12:"намача";s:3:"naq";s:31:"ндебелє північна";s:2:"nd";s:6:"нко";s:3:"nqo";s:10:"нкочо";s:3:"nqo";s:25:"ндебели южный";s:2:"nr";s:31:"ндебелє південна";s:2:"nr";s:8:"нуер";s:3:"nus";s:12:"нуерче";s:3:"nus";s:8:"нуэр";s:3:"nus";s:16:"нианколе";s:3:"nyn";s:20:"ныйанколчо";s:3:"nyn";s:14:"нянколе";s:3:"nyn";s:16:"ньянколе";s:3:"nyn";s:16:"нјанколе";s:3:"nyn";s:27:"невядомая мова";s:3:"und";s:18:"невядомая";s:3:"und";s:22:"неопределен";s:3:"und";s:27:"непознат јазик";s:3:"und";s:25:"нӕзонгӕ ӕвзаг";s:3:"und";s:31:"неизвестный язык";s:3:"und";s:27:"непознат језик";s:3:"und";s:25:"невідома мова";s:3:"und";s:38:"немає мовного вмісту";s:3:"zxx";s:8:"ниас";s:3:"nia";s:10:"нијас";s:3:"nia";s:14:"ніаська";s:3:"nia";s:18:"нагайская";s:3:"nog";s:10:"ногаи";s:3:"nog";s:16:"ногајски";s:3:"nog";s:18:"ногайский";s:3:"nog";s:18:"ногайська";s:3:"nog";s:39:"невари (классический)";s:3:"nwc";s:29:"неварі класична";s:3:"nwc";s:16:"ниамвези";s:3:"nym";s:16:"ньямвези";s:3:"nym";s:16:"ньямвезі";s:3:"nym";s:10:"нуоро";s:3:"nyo";s:10:"ньоро";s:3:"nyo";s:10:"нзима";s:3:"nzi";s:10:"нзіма";s:3:"nzi";s:12:"帕拉维文";s:3:"pal";s:9:"帕劳文";s:3:"pau";s:14:"нгембеј";s:3:"sba";s:22:"нгамбайский";s:3:"sba";s:14:"нгамбай";s:3:"sba";s:23:"нианса тонга";s:3:"tog";s:23:"ньяса (тонга)";s:3:"tog";s:21:"ньяса тонга";s:3:"tog";s:16:"нгиембун";s:3:"nnh";s:18:"нгиембунд";s:3:"nnh";s:14:"нгємбун";s:3:"nnh";}i:95;a:77:{s:18:"чачэнская";s:2:"ce";s:16:"чеченски";s:2:"ce";s:18:"чеченский";s:2:"ce";s:18:"чеченська";s:2:"ce";s:12:"чаморо";s:2:"ch";s:16:"чаморски";s:2:"ch";s:14:"чаморро";s:2:"ch";s:10:"чокто";s:3:"cho";s:18:"чоктавски";s:3:"cho";s:12:"чоктав";s:3:"cho";s:12:"чероки";s:3:"chr";s:21:"чероки тілі";s:3:"chr";s:16:"черокиче";s:3:"chr";s:18:"черокиски";s:3:"chr";s:12:"чироки";s:3:"chr";s:12:"черокі";s:3:"chr";s:16:"чейенски";s:3:"chy";s:16:"чејенски";s:3:"chy";s:12:"чейенн";s:3:"chy";s:12:"чейєнн";s:3:"chy";s:14:"чэшская";s:2:"cs";s:12:"чэская";s:2:"cs";s:10:"чешки";s:2:"cs";s:15:"чех тілі";s:2:"cs";s:10:"чехче";s:2:"cs";s:6:"чех";s:2:"cs";s:10:"чехаг";s:2:"cs";s:14:"чешский";s:2:"cs";s:12:"чеська";s:2:"cs";s:18:"чувашская";s:2:"cv";s:16:"чуваская";s:2:"cv";s:14:"чувашки";s:2:"cv";s:14:"чувашаг";s:2:"cv";s:18:"чувашский";s:2:"cv";s:16:"чуваська";s:2:"cv";s:18:"గ్రీక్";s:2:"el";s:18:"గాగౌజ్";s:3:"gag";s:27:"గెలిషియన్";s:2:"gl";s:18:"గురాని";s:2:"gn";s:18:"గోథిక్";s:3:"got";s:21:"గుజరాతి";s:2:"gu";s:15:"గాండా";s:2:"lg";s:16:"чинянджа";s:2:"ny";s:12:"чжуань";s:2:"za";s:10:"чжуан";s:2:"za";s:8:"чига";s:3:"cgg";s:12:"чигача";s:3:"cgg";s:6:"గా";s:3:"gaa";s:18:"గుస్సీ";s:3:"guz";s:15:"గోంబా";s:3:"jgo";s:10:"чыбча";s:3:"chb";s:10:"чибча";s:3:"chb";s:10:"чібча";s:3:"chb";s:14:"чагатай";s:3:"chg";s:20:"чагатајски";s:3:"chg";s:22:"чагатайский";s:3:"chg";s:22:"чагатайська";s:3:"chg";s:8:"чуук";s:3:"chk";s:10:"чучки";s:3:"chk";s:18:"чукотский";s:3:"chk";s:16:"чуукська";s:3:"chk";s:27:"чинучки жаргон";s:3:"chn";s:23:"чинук жаргон";s:3:"chn";s:18:"чиипувски";s:3:"chp";s:22:"чипевјански";s:3:"chp";s:18:"чипевайян";s:3:"chp";s:17:"чіпев’ян";s:3:"chp";s:12:"గాయో";s:3:"gay";s:18:"గ్బాయా";s:3:"gba";s:33:"గిల్బర్టీస్";s:3:"gil";s:15:"గోండి";s:3:"gon";s:24:"గోరోంటలా";s:3:"gor";s:18:"గ్రేబో";s:3:"grb";s:24:"గ్విచిన్";s:3:"gwi";s:27:"чадски арапски";s:3:"shu";s:25:"чадский арабс";s:3:"shu";s:35:"чадійська арабська";s:3:"shu";}i:458;a:29:{s:15:"চেচেন";s:2:"ce";s:27:"চেবুয়ানো";s:3:"ceb";s:18:"চামেরো";s:2:"ch";s:15:"চক্টো";s:3:"cho";s:18:"চেরোকী";s:3:"chr";s:9:"চেক";s:2:"cs";s:37:"চার্চ স্লাভিও";s:2:"cu";s:15:"চুবাস";s:2:"cv";s:22:"客家語/hak-kâ-ngî";s:3:"hak";s:9:"客家語";s:3:"hak";s:9:"客家話";s:3:"hak";s:30:"オランダ低ザクセン語";s:6:"nds-nl";s:15:"オランダ語";s:2:"nl";s:12:"オック語";s:2:"oc";s:12:"オロモ語";s:2:"om";s:15:"オリヤー語";s:2:"or";s:15:"オセット語";s:2:"os";s:12:"চীনা";s:2:"zh";s:12:"চিগা";s:3:"cgg";s:27:"オーストラリア英語";s:5:"en-au";s:15:"চিবচা";s:3:"chb";s:21:"চাগাতাই";s:3:"chg";s:12:"চুকি";s:3:"chk";s:37:"চিনুক পরিভাষা";s:3:"chn";s:27:"চিপেওয়ান";s:3:"chp";s:21:"オジブウェー語";s:2:"oj";s:15:"オセージ語";s:3:"osa";s:24:"オスマントルコ語";s:3:"ota";s:28:"চিত্র ভাষা";s:3:"zbl";}i:269;a:88:{s:10:"čečenski";s:2:"ce";s:13:"čečenština";s:2:"ce";s:10:"čečėnų";s:2:"ce";s:8:"čečenu";s:2:"ce";s:12:"čečenčina";s:2:"ce";s:14:"čečenščina";s:2:"ce";s:7:"čamoro";s:2:"ch";s:13:"čamoršćina";s:2:"ch";s:8:"čamorų";s:2:"ch";s:8:"čamorru";s:2:"ch";s:11:"čamorčina";s:2:"ch";s:13:"čamorščina";s:2:"ch";s:10:"čoktavski";s:3:"cho";s:11:"čoktština";s:3:"cho";s:7:"čoktau";s:3:"cho";s:8:"čoktavu";s:3:"cho";s:12:"čoktavčina";s:3:"cho";s:14:"čoktavščina";s:3:"cho";s:7:"čiroki";s:3:"chr";s:15:"čerokézština";s:3:"chr";s:7:"čeroki";s:3:"chr";s:9:"čerokių";s:3:"chr";s:7:"čiroku";s:3:"chr";s:8:"čerokí";s:3:"chr";s:14:"čerokeščina";s:3:"chr";s:9:"čejenski";s:3:"chy";s:12:"čejenština";s:3:"chy";s:8:"čajenų";s:3:"chy";s:11:"čejenčina";s:3:"chy";s:13:"čejenščina";s:3:"chy";s:9:"čeština";s:2:"cs";s:7:"češki";s:2:"cs";s:10:"češćina";s:2:"cs";s:11:"čěšćina";s:2:"cs";s:6:"čekų";s:2:"cs";s:5:"čehu";s:2:"cs";s:13:"čeahkagiella";s:2:"cs";s:10:"češčina";s:2:"cs";s:9:"čuvaški";s:2:"cv";s:11:"čuvaština";s:2:"cv";s:10:"čiuvašų";s:2:"cv";s:8:"čuvašu";s:2:"cv";s:12:"čuvaščina";s:2:"cv";s:26:"čínština (dialekty gan)";s:3:"gan";s:28:"čínština (dialekty hakka)";s:3:"hak";s:12:"国际文字";s:2:"ia";s:19:"国际文字(e)";s:2:"ie";s:23:"čínština (klasická)";s:3:"lzh";s:29:"čínština (dialekty minnan)";s:3:"nan";s:8:"čičeva";s:2:"ny";s:5:"čewa";s:2:"ny";s:25:"čínština (dialekty wu)";s:3:"wuu";s:12:"čuangština";s:2:"za";s:11:"čuangčina";s:2:"za";s:11:"čínština";s:2:"zh";s:28:"čínština (zjednodušená)";s:7:"zh-hans";s:24:"čínština (tradičná)";s:7:"zh-hant";s:5:"čiga";s:3:"cgg";s:6:"čigų";s:3:"cgg";s:13:"čigajščina";s:3:"cgg";s:7:"čibča";s:3:"chb";s:7:"čibču";s:3:"chb";s:15:"čibčevščina";s:3:"chb";s:8:"čagatai";s:3:"chg";s:14:"čagatajština";s:3:"chg";s:8:"čagatų";s:3:"chg";s:13:"čagatajčina";s:3:"chg";s:15:"čagatajščina";s:3:"chg";s:8:"čukeski";s:3:"chk";s:10:"čukština";s:3:"chk";s:8:"čukesų";s:3:"chk";s:6:"čūku";s:3:"chk";s:9:"činukski";s:3:"chn";s:14:"činuk pidžin";s:3:"chn";s:16:"činuk žargonas";s:3:"chn";s:16:"činuku žargons";s:3:"chn";s:18:"činucký žargón";s:3:"chn";s:17:"činuški žargon";s:3:"chn";s:12:"čipvijanski";s:3:"chp";s:14:"čipevajština";s:3:"chp";s:10:"čipvėjų";s:3:"chp";s:11:"čipevaianu";s:3:"chp";s:13:"čipevajčina";s:3:"chp";s:13:"čipevščina";s:3:"chp";s:8:"čigānu";s:3:"rom";s:15:"čadski arapski";s:3:"shu";s:18:"čadská arabčina";s:3:"shu";s:28:"čínština (dialekty xiang)";s:3:"hsn";}i:932;a:49:{s:18:"Τσέτσνιαν";s:2:"ce";s:16:"Τσοκτάου";s:3:"cho";s:12:"喬克托文";s:3:"cho";s:14:"Τσερόκι";s:3:"chr";s:33:"Τουρκικά Κριμαίας";s:3:"crh";s:14:"Τσεχικά";s:2:"cs";s:12:"喬治亞文";s:2:"ka";s:16:"Τασελχίτ";s:3:"shi";s:10:"Ταμίλ";s:2:"ta";s:18:"Τελούγκου";s:2:"te";s:12:"Τέτουμ";s:3:"tet";s:12:"Τατζίκ";s:2:"tg";s:20:"Ταϊλανδικά";s:2:"th";s:18:"Τιγκρίνυα";s:2:"ti";s:22:"Τουρκμενικά";s:2:"tk";s:18:"Ταγκαλόγκ";s:2:"tl";s:18:"Τσιγουάνα";s:2:"tn";s:20:"Τονγκανικά";s:2:"to";s:17:"Τοκ Πισίν";s:3:"tpi";s:16:"Τουρκικά";s:2:"tr";s:14:"Τσόνγκα";s:2:"ts";s:10:"Τατάρ";s:2:"tt";s:18:"Τουμπούκα";s:3:"tum";s:8:"Τούι";s:2:"tw";s:16:"Ταϊτιανά";s:2:"ty";s:18:"Τουβίνιαν";s:3:"tyv";s:46:"Ταμαζίτ Κεντρικού Μαρόκο";s:3:"tzm";s:12:"Τσίγκα";s:3:"cgg";s:10:"Τάιτα";s:3:"dav";s:19:"Τζόλα-Φόνι";s:3:"dyo";s:8:"Τέσο";s:3:"teo";s:14:"Τασαβάκ";s:3:"twq";s:46:"Τυπικά Ταμαζίγκτ Μαρόκου";s:3:"zgh";s:12:"Τίγκρε";s:3:"tig";s:16:"Τσίμπτσα";s:3:"chb";s:18:"Τσαγκατάι";s:3:"chg";s:16:"Τσουκίζι";s:3:"chk";s:18:"Τσίπιουαν";s:3:"chp";s:8:"Τζου";s:3:"kaj";s:10:"Τίμνε";s:3:"tem";s:12:"Τερένο";s:3:"ter";s:6:"Τιβ";s:3:"tiv";s:16:"Τοκελάου";s:3:"tkl";s:16:"Τλίνγκιτ";s:3:"tli";s:14:"Ταμασέκ";s:3:"tmh";s:16:"Τσίμσιαν";s:3:"tsi";s:16:"Τουβαλού";s:3:"tvl";s:10:"Τουάπ";s:3:"kcg";s:12:"Ταρόκο";s:3:"trv";}i:100;a:277:{s:10:"deideanais";s:2:"ce";s:5:"dansk";s:2:"da";s:5:"deens";s:2:"da";s:6:"danés";s:2:"da";s:9:"danimarka";s:2:"da";s:5:"daneg";s:2:"da";s:6:"danski";s:2:"da";s:6:"danès";s:2:"da";s:10:"dánština";s:2:"da";s:8:"dänisch";s:2:"da";s:10:"danšćina";s:2:"da";s:10:"denmarkgbe";s:2:"da";s:6:"danish";s:2:"da";s:4:"dana";s:2:"da";s:7:"daniera";s:2:"da";s:6:"danskt";s:2:"da";s:6:"danois";s:2:"da";s:6:"danês";s:2:"da";s:6:"deensk";s:2:"da";s:11:"danmhairgis";s:2:"da";s:12:"dinamarqués";s:2:"da";s:4:"dán";s:2:"da";s:6:"danese";s:2:"da";s:6:"danska";s:2:"da";s:9:"dähnesch";s:2:"da";s:5:"danek";s:2:"da";s:8:"dänesch";s:2:"da";s:5:"danų";s:2:"da";s:6:"dāņu";s:2:"da";s:7:"denmark";s:2:"da";s:6:"daniż";s:2:"da";s:9:"däänsch";s:2:"da";s:7:"duński";s:2:"da";s:12:"dinamarquês";s:2:"da";s:10:"danes simi";s:2:"da";s:6:"danais";s:2:"da";s:7:"daneză";s:2:"da";s:14:"dánskkagiella";s:2:"da";s:9:"dánčina";s:2:"da";s:10:"danščina";s:2:"da";s:10:"danmarkays";s:2:"da";s:7:"danisht";s:2:"da";s:5:"danca";s:2:"da";s:6:"datcha";s:2:"da";s:7:"deutsch";s:2:"de";s:5:"duits";s:2:"de";s:8:"docceere";s:2:"de";s:6:"dútsk";s:2:"de";s:8:"däitsch";s:2:"de";s:9:"düütsch";s:2:"de";s:13:"duiskkagiella";s:2:"de";s:18:"జర్మన్";s:2:"de";s:22:"deutsch uß Ößterich";s:5:"de-at";s:23:"deutsch uß de schweijz";s:5:"de-ch";s:21:"deutsch (sie-form)‎";s:9:"de-formal";s:12:"dolnoserbski";s:3:"dsb";s:20:"donjolužičkosrpski";s:3:"dsb";s:24:"dolnolužická srbština";s:3:"dsb";s:16:"dolnoserbšćina";s:3:"dsb";s:17:"delnjoserbšćina";s:3:"dsb";s:14:"dolnołużycki";s:3:"dsb";s:23:"dolnolužická srbčina";s:3:"dsb";s:27:"dolnja lužiška srbščina";s:3:"dsb";s:17:"dusun bundu-liwan";s:3:"dtp";s:13:"dusun central";s:3:"dtp";s:5:"dusun";s:3:"dtp";s:14:"dusun centrale";s:3:"dtp";s:15:"dusun centralny";s:3:"dtp";s:6:"divehi";s:2:"dv";s:10:"diveh dili";s:2:"dv";s:10:"divehijski";s:2:"dv";s:6:"difehi";s:2:"dv";s:8:"divehgbe";s:2:"dv";s:9:"divehiera";s:2:"dv";s:9:"divéihis";s:2:"dv";s:8:"dívehí";s:2:"dv";s:10:"divehjesch";s:2:"dv";s:7:"diveħi";s:2:"dv";s:11:"divehi simi";s:2:"dv";s:12:"divehigiella";s:2:"dv";s:11:"diveščina";s:2:"dv";s:8:"dzongkha";s:2:"dz";s:6:"dzonqa";s:2:"dz";s:7:"džonga";s:2:"dz";s:7:"dzongka";s:2:"dz";s:8:"dzongkä";s:2:"dz";s:11:"dzongkhagbe";s:2:"dz";s:6:"dzonko";s:2:"dz";s:10:"dschongkha";s:2:"dz";s:7:"dsongka";s:2:"dz";s:7:"dzongke";s:2:"dz";s:8:"dżongka";s:2:"dz";s:6:"dzonga";s:2:"dz";s:14:"dzongkhagiella";s:2:"dz";s:6:"dzonka";s:2:"dz";s:18:"జొన్ఖా";s:2:"dz";s:29:"didžiosios britanijos anglų";s:5:"en-gb";s:27:"dʼan/ʼyar kabilar andalus";s:2:"eo";s:21:"dan/ʼyar kabilar bas";s:2:"eu";s:9:"dan ailan";s:2:"ga";s:12:"ꑴꄊꆺꉙ";s:2:"it";s:9:"dzapangbe";s:2:"ja";s:21:"జాపనీస్";s:2:"ja";s:25:"danų kalbos jutų tarmė";s:3:"jut";s:9:"dzavangbe";s:2:"jv";s:11:"deàbhanais";s:2:"jv";s:21:"జావనీస్";s:2:"jv";s:27:"జార్జియన్";s:2:"ka";s:25:"dan/ʼyar kabilar kannada";s:2:"kn";s:13:"dialek kolsch";s:3:"ksh";s:17:"dan kabilar latin";s:2:"la";s:14:"dan masedoniya";s:2:"mk";s:14:"dorerin naoero";s:2:"na";s:10:"dannorvega";s:2:"nb";s:14:"dolnoněmčina";s:3:"nds";s:15:"dolnonimšćina";s:3:"nds";s:14:"donjonjemački";s:3:"nds";s:15:"delnjoněmčina";s:3:"nds";s:15:"dolnosaksoński";s:3:"nds";s:15:"dolná nemčina";s:3:"nds";s:5:"dongo";s:2:"ng";s:8:"dɛɛkye";s:2:"nl";s:5:"dutch";s:2:"nl";s:8:"dacceere";s:2:"nl";s:7:"duitsis";s:2:"nl";s:9:"dọọch";s:2:"nl";s:11:"dárogiella";s:2:"no";s:15:"dziehe sothogbe";s:3:"nso";s:12:"diné bizaad";s:2:"nv";s:7:"deitsch";s:3:"pdc";s:14:"dziehe samigbe";s:2:"se";s:16:"davvisámegiella";s:2:"se";s:13:"dolnośląski";s:3:"sli";s:12:"déli számi";s:3:"sma";s:12:"dienvidsāmu";s:3:"sma";s:28:"dʼan/ʼyar kabilar albaniya";s:2:"sq";s:11:"dienvidsotu";s:2:"st";s:25:"dʼan/ʼyar kabilar telug";s:2:"te";s:7:"dagalog";s:2:"tl";s:11:"durkagiella";s:2:"tr";s:7:"džuanu";s:2:"za";s:18:"జువాన్";s:2:"za";s:12:"జూలూ";s:2:"zu";s:6:"djerma";s:3:"dje";s:7:"dżerma";s:3:"dje";s:18:"జార్మా";s:3:"dje";s:5:"duala";s:3:"dua";s:6:"douala";s:3:"dua";s:10:"dualština";s:3:"dua";s:8:"dualagbe";s:3:"dua";s:7:"dualera";s:3:"dua";s:6:"dúala";s:3:"dua";s:6:"dualų";s:3:"dua";s:5:"dualu";s:3:"dua";s:5:"dwala";s:3:"dua";s:8:"dualisht";s:3:"dua";s:7:"dualcha";s:3:"dua";s:5:"diola";s:3:"dyo";s:14:"dzola-fonyigbe";s:3:"dyo";s:11:"diola-fogny";s:3:"dyo";s:12:"džiola-foni";s:3:"dyo";s:12:"diola-fonjī";s:3:"dyo";s:28:"జోలా-ఫోనయి";s:3:"dyo";s:11:"dan filifin";s:3:"fil";s:14:"digər dillər";s:3:"mul";s:17:"dziehe ndebelegbe";s:2:"nd";s:13:"déli ndebele";s:2:"nr";s:14:"dienvidndebelu";s:2:"nr";s:20:"dovdameahttun giella";s:3:"und";s:19:"dil məzmunu yoxdur";s:3:"zxx";s:6:"diyezh";s:3:"zxx";s:22:"dim cynnwys ieithyddol";s:3:"zxx";s:22:"dilbilim içeriği yok";s:3:"zxx";s:5:"džiz";s:3:"gez";s:12:"జీజ్";s:3:"gez";s:11:"dél-altaji";s:3:"alt";s:17:"dienvidaltajiešu";s:3:"alt";s:10:"džagatajs";s:3:"chg";s:6:"dakota";s:3:"dak";s:11:"dakota dili";s:3:"dak";s:11:"dakotština";s:3:"dak";s:8:"dacotaeg";s:3:"dak";s:14:"dakota-sprache";s:3:"dak";s:12:"dakota jezik";s:3:"dak";s:7:"dakóta";s:3:"dak";s:14:"dakota-sprooch";s:3:"dak";s:7:"dakotų";s:3:"dak";s:6:"dakotu";s:3:"dak";s:6:"dacota";s:3:"dak";s:10:"dakotčina";s:3:"dak";s:12:"dakotščina";s:3:"dak";s:6:"dargwa";s:3:"dar";s:11:"darqva dili";s:3:"dar";s:6:"dargva";s:3:"dar";s:7:"darguà";s:3:"dar";s:10:"dargština";s:3:"dar";s:10:"darginisch";s:3:"dar";s:5:"dargi";s:3:"dar";s:10:"darginesch";s:3:"dar";s:5:"dargu";s:3:"dar";s:10:"dargiensch";s:3:"dar";s:10:"dargwijski";s:3:"dar";s:11:"darginčina";s:3:"dar";s:13:"darginščina";s:3:"dar";s:9:"darginska";s:3:"dar";s:8:"dargince";s:3:"dar";s:8:"delaware";s:3:"del";s:12:"delaver dili";s:3:"del";s:7:"delaver";s:3:"del";s:13:"delawarština";s:3:"del";s:16:"delaware-sprache";s:3:"del";s:8:"delavari";s:3:"del";s:18:"delaware-schpraach";s:3:"del";s:10:"delavarski";s:3:"del";s:8:"delavár";s:3:"del";s:16:"delaware-sprooch";s:3:"del";s:8:"delavero";s:3:"del";s:9:"delavēru";s:3:"del";s:10:"delawerjan";s:3:"del";s:12:"delawarčina";s:3:"del";s:14:"delavarščina";s:3:"del";s:6:"dogrib";s:3:"dgr";s:11:"doqrib dili";s:3:"dgr";s:7:"dogribi";s:3:"dgr";s:7:"dogríb";s:3:"dgr";s:8:"dogribų";s:3:"dgr";s:7:"dogribu";s:3:"dgr";s:11:"dogribčina";s:3:"dgr";s:5:"dinka";s:3:"din";s:10:"dinka dili";s:3:"din";s:10:"dinkština";s:3:"din";s:5:"dinca";s:3:"din";s:13:"dinka-sprache";s:3:"din";s:13:"dinka-sprooch";s:3:"din";s:6:"dinkų";s:3:"din";s:5:"dinku";s:3:"din";s:5:"dogri";s:3:"doi";s:10:"doqri dili";s:3:"doi";s:11:"dogarština";s:3:"doi";s:6:"dogrí";s:3:"doi";s:5:"dogru";s:3:"doi";s:7:"dógrí";s:3:"doi";s:5:"dyula";s:3:"dyu";s:10:"dyula dili";s:3:"dyu";s:5:"djula";s:3:"dyu";s:13:"dyula-sprache";s:3:"dyu";s:5:"diula";s:3:"dyu";s:6:"dioula";s:3:"dyu";s:6:"djúla";s:3:"dyu";s:13:"dyula-sprooch";s:3:"dyu";s:6:"dyulų";s:3:"dyu";s:6:"diūlu";s:3:"dyu";s:6:"diúla";s:3:"dyu";s:6:"dazaga";s:3:"dzg";s:13:"dassajahnesch";s:3:"dzg";s:7:"dazagų";s:3:"dzg";s:4:"dazu";s:3:"dzg";s:14:"doğu frizcesi";s:3:"frs";s:49:"జ్యుడియో-పర్షియన్";s:3:"jpr";s:43:"జ్యుడియో-అరబిక్";s:3:"jrb";s:12:"జ్యూ";s:3:"kaj";s:19:"de landa-schprooche";s:3:"lah";s:12:"జీమా";s:3:"nzi";s:21:"జపోటెక్";s:3:"zap";s:18:"జెనాగా";s:3:"zen";s:12:"జుని";s:3:"zun";s:12:"జాజా";s:3:"zza";s:17:"dari zoroastrianu";s:3:"gbz";s:29:"daríjština (zoroastrijská)";s:3:"gbz";s:20:"dareg y zoroastriaid";s:3:"gbz";s:16:"dari zoroastrien";s:3:"gbz";s:17:"dari zoroastriano";s:3:"gbz";s:11:"dalecarlian";s:3:"dlc";s:5:"dajak";s:3:"day";s:8:"dajaški";s:3:"day";s:19:"drawiedsche spraken";s:3:"dra";s:17:"dravidijski jezik";s:3:"dra";}i:714;a:12:{s:12:"ચેચન";s:2:"ce";s:18:"ચોક્તૌ";s:3:"cho";s:9:"ચેક";s:2:"cs";s:34:"ચર્ચ સ્લાવિક";s:2:"cu";s:15:"ચૂવાશ";s:2:"cv";s:15:"ຂະເໝນ";s:2:"km";s:15:"ቪትናምኛ";s:2:"vi";s:18:"ચાઇનીઝ";s:2:"zh";s:12:"ચિગા";s:3:"cgg";s:18:"ચિબ્ચા";s:3:"chb";s:18:"ચૂકીસે";s:3:"chk";s:34:"ચિનૂક જાર્ગન";s:3:"chn";}i:330;a:15:{s:12:"चेचन";s:2:"ce";s:18:"चोक्तौ";s:3:"cho";s:18:"चेरोकी";s:3:"chr";s:9:"चेक";s:2:"cs";s:34:"चर्च साल्विक";s:2:"cu";s:40:"चर्च स्लाव्हिक";s:2:"cu";s:15:"चूवाश";s:2:"cv";s:83:"ცენტრალური მოროკოს ტამაზიგხტი";s:3:"tzm";s:12:"चीनी";s:2:"zh";s:21:"चिनियाँ";s:2:"zh";s:12:"चिगा";s:3:"cgg";s:18:"चिब्चा";s:3:"chb";s:15:"चूकीस";s:3:"chk";s:18:"चूकीसे";s:3:"chk";s:34:"चिनूक जारगॉन";s:3:"chn";}i:329;a:17:{s:21:"ჩეჩნური";s:2:"ce";s:15:"ჩოკტო";s:3:"cho";s:18:"ჩეროკი";s:3:"chr";s:18:"ჩეიენი";s:3:"chy";s:18:"ჩეხური";s:2:"cs";s:24:"ჩუვაშური";s:2:"cv";s:42:"ჩრდილოფრიზიული";s:3:"frr";s:22:"Ակվիտաներեն";s:2:"oc";s:46:"ჩრდილოეთ საამური";s:2:"se";s:18:"ჩინური";s:2:"zh";s:12:"ჩიგა";s:3:"cgg";s:46:"ჩრდილოეთ ნდებელე";s:2:"nd";s:15:"ჩიბჩა";s:3:"chb";s:31:"ჩინუკი ვავა";s:3:"chn";s:12:"佩瓦扬文";s:3:"chp";s:12:"金邦杜文";s:3:"kmb";s:40:"ჩადური არაბული";s:3:"shu";}i:404;a:9:{s:9:"체첸어";s:2:"ce";s:12:"체로키어";s:3:"chr";s:9:"체코어";s:2:"cs";s:20:"ռոմանշերեն";s:2:"rm";s:12:"ռունդի";s:2:"rn";s:20:"ռումիներեն";s:2:"ro";s:16:"ռուսերեն";s:2:"ru";s:10:"ռոմբո";s:3:"rof";s:6:"ռվա";s:3:"rwk";}i:354;a:66:{s:12:"ചെചൻ";s:2:"ce";s:30:"ചോക്റ്റാവ്";s:3:"cho";s:24:"ചിയേന്നേ";s:3:"chy";s:18:"ചെക്ക്";s:2:"cs";s:43:"ചർച്ച് സ്ലാവിക്";s:2:"cu";s:18:"ചുവാഷ്";s:2:"cv";s:37:"लोअर सोर्बियन";s:3:"dsb";s:30:"लनुक्टिटुट";s:2:"iu";s:21:"लोज्बान";s:3:"jbo";s:15:"लैटिन";s:2:"la";s:15:"लॅटिन";s:2:"la";s:21:"ल्याटिन";s:2:"la";s:18:"लादीनो";s:3:"lad";s:33:"लग्ज़मबर्गी";s:2:"lb";s:36:"लक्झेंबर्गिश";s:2:"lb";s:39:"लक्जेम्बर्गिस";s:2:"lb";s:27:"लेज़्घीयन";s:3:"lez";s:24:"लेझ्घीयन";s:3:"lez";s:27:"लिंबर्गिश";s:2:"li";s:30:"लिंबूर्गिश";s:2:"li";s:21:"लिंगाला";s:2:"ln";s:9:"लाओ";s:2:"lo";s:15:"लोज़ी";s:3:"loz";s:12:"लोझि";s:3:"loz";s:30:"लिथुआनियाई";s:2:"lt";s:27:"लिथुआनियन";s:2:"lt";s:33:"लिथुआनियाली";s:2:"lt";s:15:"लुशाई";s:3:"lus";s:24:"लातवियाई";s:2:"lv";s:30:"लात्व्हियन";s:2:"lv";s:30:"लात्भियाली";s:2:"lv";s:22:"लो जर्मन";s:3:"nds";s:18:"ചൈനീസ്";s:2:"zh";s:43:"ചീനഭാഷ-ലളിതലിപി";s:7:"zh-hans";s:58:"ചീനഭാഷ-പരമ്പരാഗതലിപി";s:7:"zh-hant";s:9:"ചിഗ";s:3:"cgg";s:15:"लांगि";s:3:"lag";s:15:"लांगी";s:3:"lag";s:18:"लाङ्गी";s:3:"lag";s:18:"लैकोटा";s:3:"lkt";s:18:"लाकोटा";s:3:"lkt";s:18:"लोकोता";s:3:"lkt";s:37:"ल्यूबा-कटांगा";s:2:"lu";s:37:"लुबा-काताङ्गा";s:2:"lu";s:34:"ल्यूबा-लुलुआ";s:3:"lua";s:28:"लुबा-लुलुआ";s:3:"lua";s:15:"ल्युओ";s:3:"luo";s:9:"लुओ";s:3:"luo";s:18:"ल्युईआ";s:3:"luy";s:21:"ल्युइया";s:3:"luy";s:15:"लुइया";s:3:"luy";s:28:"ल्युल सामी";s:3:"smj";s:25:"लुले सामी";s:3:"smj";s:56:"लैटिन अमेरिकी स्पेनी";s:6:"es-419";s:59:"लॅटिन अमेरिकन स्पॅनिश";s:6:"es-419";s:15:"ചിബ്ച";s:3:"chb";s:12:"ചഗതൈ";s:3:"chg";s:18:"ചൂകീസ്";s:3:"chk";s:34:"ചിനൂഗ്-ജാർഗൺ";s:3:"chn";s:24:"ചിപേവ്യൻ";s:3:"chp";s:24:"लाह्न्डा";s:3:"lah";s:18:"लाम्बा";s:3:"lam";s:21:"लुइसेनो";s:3:"lui";s:18:"लुन्डा";s:3:"lun";s:25:"ചാഡ് അറബി";s:3:"shu";s:18:"लिंगित";s:3:"tli";}i:266;a:13:{s:7:"Ċeċen";s:2:"ce";s:8:"Ċamorro";s:2:"ch";s:7:"Ċostaw";s:3:"cho";s:8:"Ċerokij";s:3:"chr";s:4:"Ċek";s:2:"cs";s:6:"Ċuvax";s:2:"cv";s:17:"Ċiċewa; njanġa";s:2:"ny";s:7:"Ċiniż";s:2:"zh";s:19:"Ċiniż simplifikat";s:7:"zh-hans";s:7:"Ċibċa";s:3:"chb";s:8:"Ċagataj";s:3:"chg";s:7:"Ċukese";s:3:"chk";s:9:"Ċipewjan";s:3:"chp";}i:842;a:17:{s:15:"ଚେଚନ୍";s:2:"ce";s:18:"ଚାମୋରୋ";s:2:"ch";s:15:"ଚୋଟୱା";s:3:"cho";s:18:"ଚେରୋକୀ";s:3:"chr";s:18:"ଚେଚେନା";s:3:"chy";s:12:"ଚେକ୍";s:2:"cs";s:43:"ଚର୍ଚ୍ଚ ସ୍ଲାଭିକ୍";s:2:"cu";s:18:"ଚୁଭାଶ୍";s:2:"cv";s:12:"迪维希文";s:2:"dv";s:12:"迪維西文";s:2:"dv";s:9:"ዪዲሽ";s:2:"yi";s:21:"ଚାଇନୀଜ୍";s:2:"zh";s:18:"ଚିବ୍ଚା";s:3:"chb";s:18:"ଚୁକୀସେ";s:3:"chk";s:43:"ଚିନୁକ୍ ଜାରଗାଁନ୍";s:3:"chn";s:24:"ଚିପେୱାନ୍";s:3:"chp";s:12:"迪尤拉文";s:3:"dyu";}i:94;a:23:{s:16:"цӕцӕйнаг";s:2:"ce";s:35:"църковно славянски";s:2:"cu";s:32:"црковнословенски";s:2:"cu";s:36:"церковнославянский";s:2:"cu";s:39:"церковнослов’янська";s:2:"cu";s:18:"ఖ్మేర్";s:2:"km";s:10:"цвана";s:2:"tn";s:10:"цонга";s:2:"ts";s:49:"централноатласки тамазигт";s:3:"tzm";s:60:"централно марокански тамазитски";s:3:"tzm";s:57:"центральномароканська тамазіт";s:3:"tzm";s:12:"ఖాసి";s:3:"kha";s:21:"ఖటోనీస్";s:3:"kho";s:25:"цигански език";s:3:"rom";s:16:"цигайнаг";s:3:"rom";s:18:"цыганский";s:3:"rom";s:18:"циганська";s:3:"rom";s:20:"цимшиански";s:3:"tsi";s:22:"цимшијански";s:3:"tsi";s:14:"цимшиан";s:3:"tsi";s:32:"централнојупички";s:3:"esu";s:16:"цахурски";s:3:"tkr";s:16:"цаконски";s:3:"tsd";}i:586;a:28:{s:12:"ਚੇਚਨ";s:2:"ce";s:18:"ਚੇਰੋਕੀ";s:3:"chr";s:9:"ਚੈਕ";s:2:"cs";s:16:"زونٛگکھا";s:2:"dz";s:10:"زونگا";s:2:"ts";s:14:"زُہانٛگ";s:2:"za";s:14:"زیلاندی";s:3:"zea";s:12:"ਚੀਨੀ";s:2:"zh";s:12:"زولویی";s:2:"zu";s:10:"زُلوٗ";s:2:"zu";s:8:"زولو";s:2:"zu";s:12:"زۇلۇچە";s:2:"zu";s:12:"ਚੀਗਾ";s:3:"cgg";s:8:"زرما";s:3:"dje";s:14:"زارماچە";s:3:"dje";s:21:"زبان نامشخص";s:3:"und";s:14:"زاپوتکی";s:3:"zap";s:16:"زَپوتیٚک";s:3:"zap";s:18:"زاپوتېكچە";s:3:"zap";s:10:"زناگا";s:3:"zen";s:12:"زیناگا";s:3:"zen";s:16:"زېناگاچە";s:3:"zen";s:14:"زونیایی";s:3:"zun";s:10:"زوٗنی";s:3:"zun";s:12:"زۇنىچە";s:3:"zun";s:8:"زازا";s:3:"zza";s:12:"زازایی";s:3:"zza";s:12:"زازاچە";s:3:"zza";}i:268;a:16:{s:10:"Čečenski";s:2:"ce";s:7:"Čamoro";s:2:"ch";s:10:"Čoktavski";s:3:"cho";s:7:"Čeroki";s:3:"chr";s:9:"Čejenski";s:3:"chy";s:7:"Češki";s:2:"cs";s:9:"Čuvaški";s:2:"cv";s:30:"Čimboraso aukštumų kečujų";s:3:"qug";s:7:"Čibča";s:3:"chb";s:8:"Čagatai";s:3:"chg";s:8:"Čukeski";s:3:"chk";s:9:"Činukski";s:3:"chn";s:12:"Čipvijanski";s:3:"chp";s:12:"폼페이어";s:3:"pon";s:13:"Čadas arābu";s:3:"shu";s:13:"Čamski jezik";s:3:"cmc";}i:63;a:14:{s:16:"Чеченски";s:2:"ce";s:12:"Чаморо";s:2:"ch";s:18:"Чоктавски";s:3:"cho";s:16:"Чејенски";s:3:"chy";s:20:"Чиэскэйдии";s:2:"cs";s:8:"Чехӣ";s:2:"cs";s:14:"Чӑвашла";s:2:"cv";s:14:"Чувашки";s:2:"cv";s:8:"Чинӣ";s:2:"zh";s:10:"Чибча";s:3:"chb";s:14:"Чагатаи";s:3:"chg";s:14:"Чукески";s:3:"chk";s:16:"Чинукски";s:3:"chn";s:22:"Чипвијански";s:3:"chp";}i:970;a:50:{s:18:"செசென்";s:2:"ce";s:24:"செபுவானோ";s:3:"ceb";s:18:"சாமோரோ";s:2:"ch";s:18:"சோக்தௌ";s:3:"cho";s:18:"செரொகி";s:3:"chr";s:18:"செயேனி";s:3:"chy";s:43:"சொரானி குர்திஷ்";s:3:"ckb";s:12:"செக்";s:2:"cs";s:40:"சர்ச் ஸ்லாவிக்";s:2:"cu";s:18:"சுவாஷ்";s:2:"cv";s:12:"楚瓦什文";s:2:"cv";s:28:"சிசுவான் ஈ";s:2:"ii";s:33:"சமஸ்கிருதம்";s:2:"sa";s:24:"சான்டாலி";s:3:"sat";s:27:"சாடினியன்";s:2:"sc";s:27:"சிசிலியன்";s:3:"scn";s:18:"சிந்தி";s:2:"sd";s:18:"சாங்கோ";s:2:"sg";s:46:"செர்போ-க்ரோஷியன்";s:2:"sh";s:24:"சிங்களம்";s:2:"si";s:18:"சோமாலி";s:2:"so";s:27:"செர்பியன்";s:2:"sr";s:30:"சுண்டானீஸ்";s:2:"su";s:24:"சுவாஹிலி";s:2:"sw";s:15:"சீனம்";s:2:"zh";s:12:"சிகா";s:3:"cgg";s:18:"சார்மா";s:3:"dje";s:21:"சம்புரு";s:3:"saq";s:15:"சங்கு";s:3:"sbp";s:12:"செனா";s:3:"seh";s:12:"சோகா";s:3:"xog";s:18:"சிடாமோ";s:3:"sid";s:24:"சிக்சிகா";s:3:"bla";s:18:"சிப்சா";s:3:"chb";s:18:"சூகிசே";s:3:"chk";s:12:"楚吾克文";s:3:"chk";s:43:"சினூக் ஜார்கான்";s:3:"chn";s:30:"சிபெவ்யான்";s:3:"chp";s:24:"சான்டாவே";s:3:"sad";s:46:"சமாரிடன் அராமைக்";s:3:"sam";s:18:"சாசாக்";s:3:"sas";s:24:"செல்குப்";s:3:"sel";s:24:"சோனின்கே";s:3:"snk";s:27:"சோக்தியன்";s:3:"sog";s:18:"செரெர்";s:3:"srr";s:18:"சுகுமா";s:3:"suk";s:12:"சுசு";s:3:"sus";s:27:"சுமேரியன்";s:3:"sux";s:24:"சிரியாக்";s:3:"syr";s:33:"சௌராஷ்டிரம்";s:3:"saz";}i:199;a:23:{s:9:"Çeçence";s:2:"ce";s:9:"Çerokice";s:3:"chr";s:7:"Çekçe";s:2:"cs";s:10:"Çuvaşça";s:2:"cv";s:12:"西班牙文";s:2:"es";s:18:"西フリジア語";s:2:"fy";s:18:"西弗里西亚文";s:2:"fy";s:18:"西弗里西亞文";s:2:"fy";s:18:"西里莫圖土文";s:2:"ho";s:12:"Çitral dili";s:3:"khw";s:12:"西馬裏文";s:3:"mrj";s:12:"庇卡底文";s:3:"pcd";s:12:"西西里文";s:3:"scn";s:15:"西利西亞文";s:3:"szl";s:18:"西フラマン語";s:3:"vls";s:15:"西佛蘭德文";s:3:"vls";s:9:"西蘭文";s:3:"zea";s:6:"Çince";s:2:"zh";s:12:"西桑海文";s:3:"khq";s:18:"西非书面文字";s:3:"nqo";s:24:"西班牙文(歐洲)";s:5:"es-es";s:14:"Çağatay dili";s:3:"chg";s:15:"Çad arapçası";s:3:"shu";}i:554;a:1:{s:9:"車臣文";s:2:"ce";}i:744;a:51:{s:21:"સિબુઆનો";s:3:"ceb";s:40:"સોરાની કુર્દિશ";s:3:"ckb";s:41:"સ્વિસ હાય જર્મન";s:5:"de-ch";s:21:"સ્પેનિશ";s:2:"es";s:37:"સ્કોટ્સ ગેલિક";s:2:"gd";s:31:"સ્વિસ જર્મન";s:3:"gsw";s:25:"સિચુઆન યી";s:2:"ii";s:21:"સંસ્કૃત";s:2:"sa";s:18:"સંતાલી";s:3:"sat";s:30:"સાર્દિનિયન";s:2:"sc";s:27:"સિસિલિયાન";s:3:"scn";s:21:"સ્કોટ્સ";s:3:"sco";s:15:"સિંધી";s:2:"sd";s:15:"સાંગો";s:2:"sg";s:43:"સર્બો-ક્રોએશિયન";s:2:"sh";s:21:"સિંહાલી";s:2:"si";s:21:"સ્લોવૅક";s:2:"sk";s:30:"સ્લોવેનિયન";s:2:"sl";s:15:"સામોન";s:2:"sm";s:18:"સોમાલી";s:2:"so";s:21:"સર્બિયન";s:2:"sr";s:37:"સ્રાનન ટોન્ગો";s:3:"srn";s:18:"સ્વાતી";s:2:"ss";s:28:"સદર્ન સોથો";s:2:"st";s:21:"સંડેનીઝ";s:2:"su";s:21:"સ્વીડિશ";s:2:"sv";s:24:"સ્વાહિલી";s:2:"sw";s:15:"સોંગા";s:2:"ts";s:68:"સેન્ટ્રલ ઍટ્લસ તામાઝિગ્ટ";s:3:"tzm";s:40:"સરળીકૃત ચાઇનીઝ";s:7:"zh-hans";s:21:"સમ્બુરુ";s:3:"saq";s:15:"સાંગુ";s:3:"sbp";s:12:"સેના";s:3:"seh";s:34:"સ્કોલ્ટ સામી";s:3:"sms";s:12:"સોગા";s:3:"xog";s:34:"સ્વિસ ફ્રેંચ";s:5:"fr-ch";s:18:"સિદામો";s:3:"sid";s:24:"સિક્સિકા";s:3:"bla";s:15:"સ્લેવ";s:3:"den";s:18:"સોંડવે";s:3:"sad";s:43:"સામરિટાન અરેમિક";s:3:"sam";s:15:"સાસાક";s:3:"sas";s:18:"સેલ્કપ";s:3:"sel";s:24:"સોનિન્કે";s:3:"snk";s:24:"સોગ્ડિએન";s:3:"sog";s:15:"સેરેર";s:3:"srr";s:18:"સુકુમા";s:3:"suk";s:12:"સુસુ";s:3:"sus";s:24:"સુમેરિયન";s:3:"sux";s:18:"સિરિએક";s:3:"syr";s:24:"સિમ્શિયન";s:3:"tsi";}i:360;a:91:{s:21:"सिबुआनो";s:3:"ceb";s:40:"सोरानी कुर्दिश";s:3:"ckb";s:44:"स्विस उच्च जर्मन";s:5:"de-ch";s:41:"स्विस हाय जर्मन";s:5:"de-ch";s:41:"स्वीस हाई जर्मन";s:5:"de-ch";s:18:"स्पेनी";s:2:"es";s:21:"स्पॅनिश";s:2:"es";s:21:"स्पेनिस";s:2:"es";s:49:"स्काट्स् गायेलिक्";s:2:"gd";s:37:"स्कॉट्स गेलिक";s:2:"gd";s:37:"स्कट्स गाएलिक";s:2:"gd";s:31:"स्विस जर्मन";s:3:"gsw";s:31:"स्वीस जर्मन";s:3:"gsw";s:9:"印地文";s:2:"hi";s:18:"印度尼西亚文";s:2:"id";s:9:"印尼文";s:2:"id";s:25:"सिचुआन यी";s:2:"ii";s:25:"सिचुआन यि";s:2:"ii";s:12:"印古什文";s:3:"inh";s:27:"संस्कृतम्";s:2:"sa";s:21:"संस्कृत";s:2:"sa";s:18:"संताली";s:3:"sat";s:30:"सार्दिनियन";s:2:"sc";s:27:"सर्दिनियन";s:2:"sc";s:24:"सिसिलियन";s:3:"scn";s:21:"स्कॉट्स";s:3:"sco";s:15:"सिंधी";s:2:"sd";s:18:"सिन्धी";s:2:"sd";s:15:"सांगो";s:2:"sg";s:18:"साङ्गो";s:2:"sg";s:43:"सेर्बो-क्रोएशन्";s:2:"sh";s:43:"सर्बो-क्रोएशियन";s:2:"sh";s:18:"सिंहली";s:2:"si";s:18:"सिंहला";s:2:"si";s:24:"सिन्हाला";s:2:"si";s:21:"स्लोवाक";s:2:"sk";s:27:"स्लोव्हाक";s:2:"sk";s:36:"स्लोभाकियाली";s:2:"sk";s:33:"स्लोवेनियाई";s:2:"sl";s:36:"स्लोव्हेनियन";s:2:"sl";s:36:"स्लोभेनियाली";s:2:"sl";s:15:"सामोन";s:2:"sm";s:18:"सामोअन";s:2:"sm";s:18:"सोमाली";s:2:"so";s:24:"सर्बियाई";s:2:"sr";s:21:"सर्बियन";s:2:"sr";s:27:"सर्बियाली";s:2:"sr";s:40:"स्रानान टॉन्गो";s:3:"srn";s:18:"स्वाती";s:2:"ss";s:18:"सेसोथो";s:2:"st";s:21:"सुंडानी";s:2:"su";s:24:"सुंदानीज";s:2:"su";s:18:"सुडानी";s:2:"su";s:21:"स्वीडिश";s:2:"sv";s:21:"स्विडिश";s:2:"sv";s:24:"स्वाहिली";s:2:"sw";s:30:"सेत्स्वाना";s:2:"tn";s:15:"सोंगा";s:2:"ts";s:34:"सरलीकृत चीनी";s:7:"zh-hans";s:43:"सरलिकृत चिनियाँ";s:7:"zh-hans";s:24:"सैम्बुरु";s:3:"saq";s:21:"सांबुरू";s:3:"saq";s:24:"साम्बुरू";s:3:"saq";s:15:"सैंगु";s:3:"sbp";s:15:"सांगु";s:3:"sbp";s:18:"साङ्गु";s:3:"sbp";s:12:"सेना";s:3:"seh";s:34:"स्कोल्ट सामी";s:3:"sms";s:31:"स्कोइट सामी";s:3:"sms";s:12:"सोगा";s:3:"xog";s:37:"स्विस फ़्रेंच";s:5:"fr-ch";s:34:"स्विस फ्रेंच";s:5:"fr-ch";s:18:"सिदामो";s:3:"sid";s:24:"सिक्सिका";s:3:"bla";s:15:"स्लेव";s:3:"den";s:21:"स्लाव्ह";s:3:"den";s:21:"सन्डावे";s:3:"sad";s:15:"सँडवे";s:3:"sad";s:43:"सामैरिटन अरैमिक";s:3:"sam";s:43:"सामरिटान अरॅमिक";s:3:"sam";s:15:"सासाक";s:3:"sas";s:18:"सेल्कप";s:3:"sel";s:24:"सोनिन्के";s:3:"snk";s:24:"सोग्डिएन";s:3:"sog";s:15:"सेरेर";s:3:"srr";s:18:"सुकुमा";s:3:"suk";s:12:"सुसु";s:3:"sus";s:24:"सुमेरियन";s:3:"sux";s:18:"सिरिएक";s:3:"syr";s:21:"सिरियाक";s:3:"syr";s:24:"सिम्शियन";s:3:"tsi";}i:475;a:21:{s:15:"セブアノ語";s:3:"ceb";s:18:"ফার্সি";s:2:"fa";s:18:"ফুলাহ্";s:2:"ff";s:15:"ফিনিশ";s:2:"fi";s:15:"ফিজিও";s:2:"fj";s:21:"ফেরাউনি";s:2:"fo";s:15:"ফরাসি";s:2:"fr";s:33:"ফ্রিউলিয়ান";s:3:"fur";s:9:"セリ語";s:3:"sei";s:30:"セルボ・クロアチア語";s:2:"sh";s:15:"セルビア語";s:2:"sr";s:24:"ফিলিপিনো";s:3:"fil";s:21:"ফ্লেমিশ";s:5:"nl-be";s:30:"ফোনিশীয়ান";s:3:"phn";s:9:"セナ語";s:3:"seh";s:21:"ফ্যাঙ্গ";s:3:"fan";s:18:"ফান্তি";s:3:"fat";s:6:"ফন";s:3:"fon";s:15:"セリクプ語";s:3:"sel";s:12:"セレル語";s:3:"srr";s:12:"セネカ語";s:3:"see";}i:464;a:14:{s:15:"세부아노어";s:3:"ceb";s:18:"グアラニー語";s:2:"gn";s:21:"グジャラート語";s:2:"gu";s:15:"グルジア語";s:2:"ka";s:24:"グリーンランド語";s:2:"kl";s:31:"세르비아-크로아티아어";s:2:"sh";s:15:"세르비아어";s:2:"sr";s:15:"세츠와나어";s:2:"tn";s:12:"グシイ語";s:3:"guz";s:9:"세나어";s:3:"seh";s:12:"グレボ語";s:3:"grb";s:21:"グウィッチン語";s:3:"gwi";s:12:"세레르어";s:3:"srr";s:12:"세네카어";s:3:"see";}i:384;a:58:{s:24:"സെബുവാനോ";s:3:"ceb";s:40:"സൊറാനി കുർദിഷ്";s:3:"ckb";s:38:"സ്വിസ് ഹൈ ജർമൻ";s:5:"de-ch";s:15:"സോങ്ക";s:2:"dz";s:27:"സ്‌പാനിഷ്";s:2:"es";s:49:"സ്കോട്ടിഷ് ഗൈലിക്";s:2:"gd";s:37:"സ്വിസ് ജർമ്മൻ";s:3:"gsw";s:27:"സംസ്‌കൃതം";s:2:"sa";s:9:"സാഖ";s:3:"sah";s:21:"സന്താലി";s:3:"sat";s:27:"സർഡിനിയാൻ";s:2:"sc";s:24:"സിസിലിയൻ";s:3:"scn";s:24:"സ്കോട്സ്";s:3:"sco";s:18:"സിന്ധി";s:2:"sd";s:15:"സാംഗോ";s:2:"sg";s:46:"സെർബോ-ക്രൊയേഷ്യൻ";s:2:"sh";s:15:"സിംഹള";s:2:"si";s:24:"സ്ലോവാക്";s:2:"sk";s:30:"സ്ലോവേനിയൻ";s:2:"sl";s:15:"സമോവൻ";s:2:"sm";s:18:"സോമാലി";s:2:"so";s:21:"സെർബിയൻ";s:2:"sr";s:24:"സ്വാറ്റി";s:2:"ss";s:24:"സുഡാനീസ്";s:2:"su";s:24:"സ്വീഡിഷ്";s:2:"sv";s:24:"സ്വാഹിലി";s:2:"sw";s:21:"സ്വാംഗ്";s:2:"za";s:12:"സുലു";s:2:"zu";s:18:"സാർമ്മ";s:3:"dje";s:18:"സംബുരു";s:3:"saq";s:12:"സംഗു";s:3:"sbp";s:9:"സേന";s:3:"seh";s:37:"സ്കോൾട്ട് സമി";s:3:"sms";s:12:"സോഗോ";s:3:"xog";s:40:"സ്വിസ് ഫ്രഞ്ച്";s:5:"fr-ch";s:18:"സിഡാമോ";s:3:"sid";s:21:"സിക്സിക";s:3:"bla";s:18:"സ്ലേവ്";s:3:"den";s:9:"സിമ";s:3:"nzi";s:18:"സാൻഡവേ";s:3:"sad";s:58:"സമരിയാക്കാരുടെ അരമായ";s:3:"sam";s:15:"സസാക്";s:3:"sas";s:18:"സെൽകപ്";s:3:"sel";s:6:"샨어";s:3:"shn";s:21:"സോണിൻകെ";s:3:"snk";s:24:"സോജിഡിയൻ";s:3:"sog";s:12:"സെറർ";s:3:"srr";s:15:"സുകുമ";s:3:"suk";s:12:"സുസു";s:3:"sus";s:24:"സുമേരിയൻ";s:3:"sux";s:24:"സുറിയാനി";s:3:"syr";s:21:"സിംഷ്യൻ";s:3:"tsi";s:30:"സാപ്പോടെക്";s:3:"zap";s:12:"സെനഗ";s:3:"zen";s:12:"സുനി";s:3:"zun";s:12:"സാസാ";s:3:"zza";s:15:"സെനേക";s:3:"see";s:12:"സാഹോ";s:3:"ssy";}i:872;a:43:{s:21:"ସୀବୁଆନୋ";s:3:"ceb";s:40:"ସୋରାନି କୁର୍ଦିଶ";s:3:"ckb";s:50:"ସ୍ବିସ୍ ହାଇ ଜର୍ମାନ୍";s:5:"de-ch";s:24:"ସ୍ପାନିସ୍";s:2:"es";s:43:"ସ୍କଟିସ୍ ଗାଏଲିକ୍";s:2:"gd";s:40:"ସ୍ବିସ୍ ଜର୍ମାନ୍";s:3:"gsw";s:28:"ସିଚୁଆନ୍ ୟୀ";s:2:"ii";s:21:"ସଂସ୍କୃତ";s:2:"sa";s:24:"ସାନ୍ତାଳି";s:3:"sat";s:30:"ସର୍ଦିନିଆନ୍";s:2:"sc";s:27:"ସିଶିଲିଆନ୍";s:3:"scn";s:18:"ସ୍କଟସ୍";s:3:"sco";s:18:"ସିନ୍ଧୀ";s:2:"sd";s:18:"ସାଙ୍ଗୋ";s:2:"sg";s:46:"ସର୍ବୋ-କ୍ରୋଆଟିଆନ୍";s:2:"sh";s:15:"ସିଂହଳ";s:2:"si";s:24:"ସ୍ଲୋଭାକ୍";s:2:"sk";s:33:"ସ୍ଲୋଭେନିଆନ୍";s:2:"sl";s:21:"ସାମୋଆନ୍";s:2:"sm";s:21:"ସୋମାଲିଆ";s:2:"so";s:24:"ସର୍ବିଆନ୍";s:2:"sr";s:18:"ସ୍ବାତୀ";s:2:"ss";s:18:"ସେସୋଥୋ";s:2:"st";s:24:"ସୁଦାନୀଜ୍";s:2:"su";s:24:"ସ୍ୱେଡିସ୍";s:2:"sv";s:24:"ସ୍ୱାହିଲ୍";s:2:"sw";s:24:"ସେସ୍ବାନା";s:2:"tn";s:15:"ସୋଂଗା";s:2:"ts";s:43:"ସରଳିକରଣ ଚାଇନୀଜ୍";s:7:"zh-hans";s:34:"ସ୍କୋଲ୍ଟ ସାମୀ";s:3:"sms";s:43:"ସ୍ବିସ୍ ଫ୍ରେଞ୍ଚ୍";s:5:"fr-ch";s:18:"ସିଦାମୋ";s:3:"sid";s:18:"ସ୍ଲେଭ୍";s:3:"den";s:28:"ସ୍ବିଚ୍ ଇନ୍";s:3:"gwi";s:21:"ସଣ୍ଡାୱେ";s:3:"sad";s:49:"ସାମୌରିଟନ୍ ଆରମାଇକ୍";s:3:"sam";s:18:"ସାସାକ୍";s:3:"sas";s:21:"ସେଲ୍କପ୍";s:3:"sel";s:24:"ସୋନିଙ୍କେ";s:3:"snk";s:24:"ସୋଗଡିଏନ୍";s:3:"sog";s:18:"ସୁକୁମା";s:3:"suk";s:27:"ସୁମେରିଆନ୍";s:3:"sux";s:18:"ସିରିକ୍";s:3:"syr";}i:62;a:4:{s:14:"Цебуано";s:3:"ceb";s:9:"祖鲁文";s:2:"zu";s:9:"祖魯文";s:2:"zu";s:9:"祖尼文";s:3:"zun";}i:128;a:52:{s:21:"సేబుఆనో";s:3:"ceb";s:43:"సొరాని కుర్దిష్";s:3:"ckb";s:44:"స్విస్ హై జర్మన్";s:5:"de-ch";s:24:"స్పానిష్";s:2:"es";s:43:"స్కాటిష్ గేలిక్";s:2:"gd";s:37:"స్విస్ జర్మన్";s:3:"gsw";s:24:"సంస్కృతం";s:2:"sa";s:18:"సంటాలి";s:3:"sat";s:33:"సార్డీనియన్";s:2:"sc";s:27:"సిసిలియన్";s:3:"scn";s:24:"స్కాట్స్";s:3:"sco";s:15:"సింధీ";s:2:"sd";s:15:"సాంగో";s:2:"sg";s:52:"సేర్బో-క్రొయేషియన్";s:2:"sh";s:18:"సింహళం";s:2:"si";s:24:"స్లోవాక్";s:2:"sk";s:36:"స్లోవేనియాన్";s:2:"sl";s:18:"సమోవన్";s:2:"sm";s:18:"సోమాలి";s:2:"so";s:27:"సెర్బియన్";s:2:"sr";s:37:"స్రానన్ టోనగో";s:3:"srn";s:18:"స్వాతి";s:2:"ss";s:24:"సుడానీస్";s:2:"su";s:24:"స్వీడిష్";s:2:"sv";s:24:"స్వాహిలి";s:2:"sw";s:27:"సెటస్వానా";s:2:"tn";s:15:"సోంగా";s:2:"ts";s:71:"సెంట్రల్ అట్లాస్ టామాజైట్";s:3:"tzm";s:40:"సరళీకృత చైనీస్";s:7:"zh-hans";s:49:"సాంప్రదాయక చైనీస్";s:7:"zh-hant";s:18:"సంబురు";s:3:"saq";s:15:"సాంగు";s:3:"sbp";s:12:"సెనా";s:3:"seh";s:37:"స్కోల్ట్ సామి";s:3:"sms";s:12:"సొగా";s:3:"xog";s:40:"స్విస్ ఫ్రెంచ్";s:5:"fr-ch";s:18:"సిడామో";s:3:"sid";s:25:"సిక్ సికా";s:3:"bla";s:18:"స్లేవ్";s:3:"den";s:49:"సాంప్రదాయ న్యుఆరి";s:3:"nwc";s:18:"సండావి";s:3:"sad";s:43:"సమారిటన్ అరమేక్";s:3:"sam";s:12:"ససక్";s:3:"sas";s:21:"సేల్కప్";s:3:"sel";s:21:"సోనింకి";s:3:"snk";s:27:"సోగ్డియన్";s:3:"sog";s:18:"సెరేర్";s:3:"srr";s:18:"సుకుమా";s:3:"suk";s:12:"సుసు";s:3:"sus";s:30:"సుమేరియాన్";s:3:"sux";s:52:"సాంప్రదాయ సిరియాక్";s:3:"syc";s:24:"సిరియాక్";s:3:"syr";}i:487;a:12:{s:9:"宿务文";s:3:"ceb";s:9:"宿霧文";s:3:"ceb";s:18:"デンマーク語";s:2:"da";s:15:"ディベヒ語";s:2:"dv";s:18:"苏格兰盖尔文";s:2:"gd";s:12:"苏格兰文";s:3:"sco";s:18:"苏里南汤加文";s:3:"srn";s:18:"デラウェア語";s:3:"del";s:15:"ディンカ語";s:3:"din";s:12:"苏库马文";s:3:"suk";s:9:"苏苏文";s:3:"sus";s:9:"苏马文";s:3:"sux";}i:264;a:4:{s:12:"차모로어";s:2:"ch";s:15:"차가타이어";s:3:"chg";s:25:"차디언 아라비아어";s:3:"shu";s:12:"차후르어";s:3:"tkr";}i:594;a:14:{s:24:"ชามอร์โร";s:2:"ch";s:24:"ช็อกทอว์";s:3:"cho";s:15:"ชูวัช";s:2:"cv";s:29:"غەربى فىرىزيەچە";s:2:"fy";s:12:"غاغاوز";s:3:"gag";s:9:"ชวา";s:2:"jv";s:21:"ชัมบาลา";s:3:"ksb";s:15:"ชิบชา";s:3:"chb";s:18:"ชะกะไต";s:3:"chg";s:9:"ชูก";s:3:"chk";s:36:"ชินุกจาร์กอน";s:3:"chn";s:24:"ชิพิวยัน";s:3:"chp";s:10:"غوتشن";s:3:"gwi";s:8:"غجري";s:3:"rom";}i:597;a:9:{s:12:"查莫罗文";s:2:"ch";s:12:"查莫洛文";s:2:"ch";s:21:"ญี่ปุ่น";s:2:"ja";s:12:"雅库特文";s:3:"sah";s:12:"雅庫特文";s:3:"sah";s:9:"ਥਾਈ";s:2:"th";s:9:"查加文";s:3:"chg";s:9:"雅浦文";s:3:"yap";s:12:"查庫爾文";s:3:"tkr";}i:24;a:3:{s:9:"ᎠᏣᏗ";s:3:"cho";s:12:"ᎠᏂᏓᏥ";s:2:"de";s:9:"ᎠᎫᏌ";s:3:"mus";}i:91;a:49:{s:9:"ᏣᎳᎩ";s:3:"chr";s:12:"уелски";s:2:"cy";s:12:"уелшче";s:2:"cy";s:8:"уэлс";s:2:"cy";s:10:"уираг";s:2:"he";s:16:"унгарски";s:2:"hu";s:10:"унгар";s:2:"hu";s:16:"угорська";s:2:"hu";s:12:"ᏣᏩᏂᏏ";s:2:"ja";s:16:"уырыссаг";s:2:"ru";s:12:"удмурт";s:3:"udm";s:18:"удмурцкая";s:3:"udm";s:18:"удмуртски";s:3:"udm";s:20:"удмуртский";s:3:"udm";s:20:"удмуртська";s:3:"udm";s:18:"уйгурская";s:2:"ug";s:16:"уйгурски";s:2:"ug";s:14:"уйгурча";s:2:"ug";s:16:"ујгурски";s:2:"ug";s:10:"уйгар";s:2:"ug";s:18:"уйгурский";s:2:"ug";s:18:"уйгурська";s:2:"ug";s:20:"українська";s:2:"uk";s:20:"украінская";s:2:"uk";s:18:"украински";s:2:"uk";s:21:"украин тілі";s:2:"uk";s:16:"украинче";s:2:"uk";s:12:"украйн";s:2:"uk";s:20:"украинский";s:2:"uk";s:20:"украјински";s:2:"uk";s:8:"урду";s:2:"ur";s:12:"урдуча";s:2:"ur";s:18:"узбекская";s:2:"uz";s:16:"узбэцкая";s:2:"uz";s:16:"узбекски";s:2:"uz";s:26:"узбекистански";s:2:"uz";s:10:"узбек";s:2:"uz";s:18:"узбекский";s:2:"uz";s:14:"узбечки";s:2:"uz";s:16:"узбецька";s:2:"uz";s:14:"уолофчо";s:2:"wo";s:39:"упрощенный китайский";s:7:"zh-hans";s:29:"уламжлалт хятад";s:7:"zh-hant";s:9:"帛琉文";s:3:"pau";s:18:"угаритски";s:3:"uga";s:20:"угаритский";s:3:"uga";s:20:"угаритська";s:3:"uga";s:14:"умбунду";s:3:"umb";s:8:"уашо";s:3:"was";}i:265;a:5:{s:7:"ĉeroka";s:3:"chr";s:6:"ĉeĥa";s:2:"cs";s:5:"ĉina";s:2:"zh";s:16:"ĉina simpligita";s:7:"zh-hans";s:14:"ĉina tradicia";s:7:"zh-hant";}i:742;a:8:{s:18:"શેરોકી";s:3:"chr";s:21:"શેયેન્ન";s:3:"chy";s:12:"શોના";s:2:"sn";s:21:"શમ્બાલા";s:3:"ksb";s:27:"શિપેવ્યાન";s:3:"chp";s:18:"ພາລາວີ";s:3:"pal";s:15:"ພອນເພ";s:3:"pon";s:9:"શેન";s:3:"shn";}i:358;a:11:{s:18:"शेरोकी";s:3:"chr";s:21:"शेयेन्न";s:3:"chy";s:12:"शोणा";s:2:"sn";s:12:"शोना";s:2:"sn";s:12:"शिगा";s:3:"cgg";s:21:"शम्बाला";s:3:"ksb";s:21:"शांबाला";s:3:"ksb";s:24:"शाम्बाला";s:3:"ksb";s:27:"शिपेव्यान";s:3:"chp";s:9:"शैन";s:3:"shn";s:9:"शॅन";s:3:"shn";}i:399;a:7:{s:12:"շերոկի";s:3:"chr";s:54:"շվեյցարական բարձր գերմաներեն";s:5:"de-ch";s:43:"շվեյցարական գերմաներեն";s:3:"gsw";s:8:"շոնա";s:2:"sn";s:16:"շվեդերեն";s:2:"sv";s:14:"շամբալա";s:3:"ksb";s:41:"շվեյցարական ֆրանսերեն";s:5:"fr-ch";}i:22;a:2:{s:18:"ឆេរូគី";s:3:"chr";s:9:"ឆេក";s:2:"cs";}i:383;a:9:{s:24:"ഷെരോക്കി";s:3:"chr";s:6:"էվե";s:2:"ee";s:18:"էսպերանտո";s:2:"eo";s:18:"էստոներեն";s:2:"et";s:21:"ഷുവാൻയി";s:2:"ii";s:9:"ഷോണ";s:2:"sn";s:10:"էմբու";s:3:"ebu";s:15:"ഷംഭാള";s:3:"ksb";s:9:"ഷാൻ";s:3:"shn";}i:443;a:1:{s:12:"彻罗基文";s:3:"chr";}i:486;a:12:{s:21:"শাইয়েন";s:3:"chy";s:12:"শোনা";s:2:"sn";s:12:"テルグ語";s:2:"te";s:15:"テトゥン語";s:3:"tet";s:21:"ティグリニア語";s:2:"ti";s:24:"শাম্বালা";s:3:"ksb";s:9:"テソ語";s:3:"teo";s:15:"ティグレ語";s:3:"tig";s:9:"শান";s:3:"shn";s:12:"テムネ語";s:3:"tem";s:15:"テレーノ語";s:3:"ter";s:12:"ティブ語";s:3:"tiv";}i:931;a:52:{s:12:"Σεγιέν";s:3:"chy";s:20:"ދިވެހިބަސް";s:2:"dv";s:29:"Σκωτικά Κελτικά";s:2:"gd";s:19:"Σικουάν Γι";s:2:"ii";s:9:"洛兹文";s:3:"loz";s:9:"洛齊文";s:3:"loz";s:30:"Σλαβομακεδονικά";s:2:"mk";s:22:"Σανσκριτικά";s:2:"sa";s:14:"Σαντάλι";s:3:"sat";s:18:"Σαρδινικά";s:2:"sc";s:18:"Σικελιανά";s:3:"scn";s:14:"Σκωτικά";s:3:"sco";s:10:"Σίντι";s:2:"sd";s:12:"Σάνγκο";s:2:"sg";s:26:"Σερβοκροατικά";s:2:"sh";s:22:"Σινχαλεζικά";s:2:"si";s:18:"Σλοβακικά";s:2:"sk";s:18:"Σλοβενικά";s:2:"sl";s:12:"Σαμόαν";s:2:"sm";s:10:"Σχόνα";s:2:"sn";s:12:"Σομάλι";s:2:"so";s:14:"Σερβικά";s:2:"sr";s:25:"Σρανάρ Τόνγκο";s:3:"srn";s:12:"Σουάτι";s:2:"ss";s:18:"Σουδανικά";s:2:"su";s:16:"Σουηδικά";s:2:"sv";s:16:"Σουαχίλι";s:2:"sw";s:44:"Σύγχρονα Τυπικά Αραβικά";s:6:"ar-001";s:14:"Σάμπαλα";s:3:"ksb";s:18:"Σαμπούρου";s:3:"saq";s:14:"Σάνγκου";s:3:"sbp";s:8:"Σένα";s:3:"seh";s:19:"Σκολτ Σάμι";s:3:"sms";s:10:"Σόγκα";s:3:"xog";s:14:"Σιντάμο";s:3:"sid";s:14:"Σικσίκα";s:3:"bla";s:14:"Σλαβικά";s:3:"den";s:18:"Σαντάγουε";s:3:"sad";s:37:"Σαμαρίτικα Αραμαϊκά";s:3:"sam";s:10:"Σασάκ";s:3:"sas";s:14:"Σελκούπ";s:3:"sel";s:6:"Σαν";s:3:"shn";s:14:"Σονίνκε";s:3:"snk";s:18:"Σογκντιέν";s:3:"sog";s:10:"Σερέρ";s:3:"srr";s:16:"Σουκούμα";s:3:"suk";s:12:"Σούσου";s:3:"sus";s:18:"Σουμερικά";s:3:"sux";s:14:"Συριακά";s:3:"syr";s:20:"Σύμβολα bliss";s:3:"zbl";s:12:"Σένεκα";s:3:"see";s:8:"Σάχο";s:3:"ssy";}i:353;a:67:{s:8:"šaieeni";s:3:"chy";s:7:"šejenu";s:3:"chy";s:8:"španski";s:2:"es";s:14:"španělština";s:2:"es";s:13:"špańšćina";s:2:"es";s:11:"španjolski";s:2:"es";s:13:"španišćina";s:2:"es";s:13:"španielčina";s:2:"es";s:12:"španščina";s:2:"es";s:18:"šiaurinių fryzų";s:3:"frr";s:15:"škotski galski";s:2:"gd";s:12:"šotišćina";s:2:"gd";s:15:"škotski-galski";s:2:"gd";s:19:"šotiska gelšćina";s:2:"gd";s:16:"škotų (gėlų)";s:2:"gd";s:19:"škótska gaelčina";s:2:"gd";s:19:"škotska gelščina";s:2:"gd";s:21:"švajcarski njemački";s:3:"gsw";s:21:"šwicarska nimšćina";s:3:"gsw";s:13:"šveitsisaksa";s:3:"gsw";s:20:"švicarski njemački";s:3:"gsw";s:20:"šwicarska němčina";s:3:"gsw";s:16:"šiaurės sothų";s:3:"nso";s:8:"škotski";s:3:"sco";s:5:"šoti";s:3:"sco";s:7:"škotų";s:3:"sco";s:11:"škótčina";s:3:"sco";s:12:"škotščina";s:3:"sco";s:16:"šiaurės samių";s:2:"se";s:6:"šilhu";s:3:"shi";s:5:"šona";s:2:"sn";s:10:"šonština";s:2:"sn";s:11:"šonšćina";s:2:"sn";s:12:"šonašćina";s:2:"sn";s:6:"šonų";s:2:"sn";s:5:"šonu";s:2:"sn";s:9:"šončina";s:2:"sn";s:11:"šonščina";s:2:"sn";s:8:"švedski";s:2:"sv";s:12:"švédština";s:2:"sv";s:12:"šwedšćina";s:2:"sv";s:7:"švedų";s:2:"sv";s:11:"švédčina";s:2:"sv";s:12:"švedščina";s:2:"sv";s:33:"šiuolaikinė standartinė arabų";s:6:"ar-001";s:8:"šambala";s:3:"ksb";s:9:"šambalų";s:3:"ksb";s:8:"šambalu";s:3:"ksb";s:18:"šiaurės ndebelų";s:2:"nd";s:8:"šikomor";s:3:"swb";s:33:"španielčina (latinskoamerická)";s:6:"es-419";s:23:"španělština (evropa)";s:5:"es-es";s:25:"španielčina (európska)";s:5:"es-es";s:21:"švajcarski francuski";s:5:"fr-ch";s:25:"šwicarska francojšćina";s:5:"fr-ch";s:20:"švicarski francuski";s:5:"fr-ch";s:24:"šwicarska francošćina";s:5:"fr-ch";s:24:"švicarska francoščina";s:5:"fr-ch";s:4:"šan";s:3:"shn";s:10:"šanština";s:3:"shn";s:5:"šani";s:3:"shn";s:5:"šanu";s:3:"shn";s:9:"šančina";s:3:"shn";s:11:"šanščina";s:3:"shn";s:8:"šumerų";s:3:"sux";s:7:"šumeru";s:3:"sux";s:24:"španielčina (mexická)";s:5:"es-mx";}i:588;a:74:{s:12:"شایانی";s:3:"chy";s:10:"شییون";s:3:"chy";s:24:"คอร์ซิกา";s:2:"co";s:9:"ครี";s:2:"cr";s:27:"คาซูเบียน";s:3:"csb";s:12:"ਜਰਮਨ";s:2:"de";s:56:"شىۋىتسارىيە ئېگىزلىك گېرمانچە";s:5:"de-ch";s:21:"ਜ਼ੋਂਗਖਾ";s:2:"dz";s:9:"피지어";s:2:"fj";s:27:"شُمٲلی فرِشیَن";s:3:"frr";s:31:"شىمالى فىرىزيەچە";s:3:"frr";s:18:"คุชราต";s:2:"gu";s:16:"피지 힌디어";s:3:"hif";s:15:"ਜਪਾਨੀ";s:2:"ja";s:24:"ਜਾਵਾਨੀਜ਼";s:2:"jv";s:21:"ਜਾਰਜੀਆਈ";s:2:"ka";s:30:"คาร์บาเดีย";s:3:"kbd";s:15:"คองโก";s:2:"kg";s:15:"คาซัค";s:2:"kk";s:18:"คานูรี";s:2:"kr";s:40:"คาราไช-บัลคาร์";s:3:"krc";s:15:"คริโอ";s:3:"kri";s:21:"คอร์นิช";s:2:"kw";s:21:"คีร์กีซ";s:2:"ky";s:12:"ครีก";s:3:"mus";s:19:"شمالی ستھو";s:3:"nso";s:25:"شىمالى سوتوچە";s:3:"nso";s:21:"شمالی سوتھو";s:3:"nso";s:18:"ควิชัว";s:2:"qu";s:66:"ควิชัวไฮแลนด์ชิมโบราโซ";s:3:"qug";s:24:"شوتلاندىيەچە";s:3:"sco";s:21:"شُمٲلی سَمی";s:2:"se";s:25:"شىمالى سامىچە";s:2:"se";s:19:"شمالی سامی";s:2:"se";s:14:"شىلخاچە";s:3:"shi";s:12:"شونایی";s:2:"sn";s:8:"شونا";s:2:"sn";s:12:"شوناچە";s:2:"sn";s:12:"شۋېدچە";s:2:"sv";s:12:"텔루구어";s:2:"te";s:24:"คัลมืยค์";s:3:"xal";s:24:"คะห์โอซา";s:2:"xh";s:15:"ਜ਼ੁਲੂ";s:2:"zu";s:12:"คีกา";s:3:"cgg";s:18:"คอปติก";s:3:"cop";s:18:"ਜ਼ਾਰਮਾ";s:3:"dje";s:28:"ਜੋਲਾ-ਫੋਇਨੀ";s:3:"dyo";s:15:"คัมบา";s:3:"kam";s:45:"คาบูเวอร์เดียนู";s:3:"kea";s:24:"คาเลนจิน";s:3:"kln";s:14:"شامبالا";s:3:"ksb";s:18:"شامبالاچە";s:3:"ksb";s:21:"شُمال ڈَبیل";s:2:"nd";s:31:"شىمالى ندەبەلەچە";s:2:"nd";s:19:"شمالی دبیل";s:2:"nd";s:29:"شەرقىي سوڭخايچە";s:3:"ses";s:21:"คลิงกอน";s:3:"tlh";s:31:"شىمالىي سوڭخايچە";s:3:"twq";s:43:"شىۋىتسارىيە فىرانسۇزچە";s:5:"fr-ch";s:15:"คัดโด";s:3:"cad";s:15:"คาริบ";s:3:"car";s:14:"شیپویان";s:3:"chp";s:29:"شەرقى فىرىزيەچە";s:3:"frs";s:9:"คจู";s:3:"kaj";s:21:"คาเนมบู";s:3:"kbl";s:24:"คิมบุนดู";s:3:"kmb";s:15:"คูสไร";s:3:"kos";s:21:"คูมืยค์";s:3:"kum";s:18:"คูเทไน";s:3:"kut";s:8:"شانی";s:3:"shn";s:6:"شان";s:3:"shn";s:10:"شانچە";s:3:"shn";s:18:"คายูกา";s:3:"cay";s:12:"คาโก";s:3:"kkj";}i:513;a:34:{s:10:"שאיין";s:3:"chy";s:16:"שפּאַניש";s:2:"es";s:25:"북부 프리슬란드어";s:3:"frr";s:12:"吉拉基文";s:3:"glk";s:12:"吉库尤文";s:2:"ki";s:12:"吉庫尤文";s:2:"ki";s:15:"吉尔吉斯文";s:2:"ky";s:15:"吉爾吉斯文";s:2:"ky";s:33:"メノナイト低地ドイツ語";s:3:"pdt";s:16:"북부 사미어";s:2:"se";s:8:"שונה";s:2:"sn";s:10:"שאנאַ";s:2:"sn";s:12:"שוודית";s:2:"sv";s:14:"שוועדיש";s:2:"sv";s:12:"שלעזיש";s:3:"szl";s:15:"メグレル語";s:3:"xmf";s:12:"שמבאלה";s:3:"ksb";s:9:"メル語";s:3:"mer";s:9:"メタ語";s:3:"mgo";s:22:"북부 은데벨레어";s:2:"nd";s:22:"שפה לא ידועה";s:3:"und";s:21:"שפּאַניש (es)";s:5:"es-es";s:9:"吉兹文";s:3:"gez";s:9:"吉茲文";s:3:"gez";s:18:"吉尔伯特斯文";s:3:"gil";s:21:"吉爾伯特群島文";s:3:"gil";s:15:"吉维克琴文";s:3:"gwi";s:12:"メンデ語";s:3:"men";s:12:"吉普赛文";s:3:"rom";s:12:"吉普賽文";s:3:"rom";s:6:"שאן";s:3:"shn";s:12:"שומרית";s:3:"sux";s:18:"メドゥンバ語";s:3:"byv";s:18:"メンタワイ語";s:3:"mwv";}i:471;a:12:{s:18:"シャイアン語";s:3:"chy";s:15:"シチリア語";s:3:"scn";s:12:"シンド語";s:2:"sd";s:15:"シンハラ語";s:2:"si";s:18:"シンプル英語";s:6:"simple";s:12:"ショナ語";s:2:"sn";s:15:"シレジア語";s:3:"szl";s:12:"シダモ語";s:3:"sid";s:15:"シクシカ語";s:3:"bla";s:12:"シャン語";s:3:"shn";s:18:"シュメール語";s:3:"sux";s:12:"シリア語";s:3:"syr";}i:380;a:8:{s:12:"샤이엔어";s:3:"chy";s:16:"դանիերեն";s:2:"da";s:15:"厄爾茲亞文";s:3:"myv";s:8:"żmudzki";s:3:"sgs";s:15:"볼라퓌크어";s:2:"vo";s:12:"դուալա";s:3:"dua";s:15:"żargon chinook";s:3:"chn";s:12:"孔卡尼文";s:3:"gom";}i:106;a:287:{s:16:"język czejenów";s:3:"chy";s:4:"jeeg";s:2:"cs";s:9:"jamusanci";s:2:"de";s:6:"jerman";s:2:"de";s:6:"jamaan";s:2:"de";s:6:"jarmal";s:2:"de";s:14:"jerman austria";s:5:"de-at";s:19:"jerman tinggi swiss";s:5:"de-ch";s:24:"jerman halus switzerland";s:5:"de-ch";s:22:"jarmal (iswiiserlaand)";s:5:"de-ch";s:6:"juisht";s:2:"ee";s:11:"jrihschesch";s:2:"el";s:15:"jendźelšćina";s:2:"en";s:11:"jalliizesch";s:2:"gl";s:12:"juwaraanesch";s:2:"gn";s:12:"jerman swiss";s:3:"gsw";s:18:"jerman switzerland";s:3:"gsw";s:9:"jermenski";s:2:"hy";s:9:"japannees";s:2:"ja";s:7:"japaneg";s:2:"ja";s:8:"japanski";s:2:"ja";s:8:"japonès";s:2:"ja";s:11:"japonština";s:2:"ja";s:8:"japaneeg";s:2:"ja";s:7:"japansk";s:2:"ja";s:9:"japanisch";s:2:"ja";s:13:"japańšćina";s:2:"ja";s:8:"japanese";s:2:"ja";s:6:"japana";s:2:"ja";s:8:"japonés";s:2:"ja";s:7:"jaapani";s:2:"ja";s:9:"japoniera";s:2:"ja";s:6:"japani";s:2:"ja";s:8:"japanskt";s:2:"ja";s:8:"japonais";s:2:"ja";s:6:"japans";s:2:"ja";s:9:"japananci";s:2:"ja";s:12:"japanšćina";s:2:"ja";s:6:"japán";s:2:"ja";s:8:"japonese";s:2:"ja";s:6:"jepang";s:2:"ja";s:8:"japanska";s:2:"ja";s:12:"japanimiusut";s:2:"ja";s:10:"japaanesch";s:2:"ja";s:7:"japanek";s:2:"ja";s:9:"japanesch";s:2:"ja";s:7:"japonų";s:2:"ja";s:8:"japāņu";s:2:"ja";s:7:"japoney";s:2:"ja";s:5:"jepun";s:2:"ja";s:9:"japaansch";s:2:"ja";s:9:"japoński";s:2:"ja";s:8:"japonês";s:2:"ja";s:12:"japones simi";s:2:"ja";s:9:"japoneză";s:2:"ja";s:13:"japánagiella";s:2:"ja";s:10:"japončina";s:2:"ja";s:12:"japonščina";s:2:"ja";s:10:"jabbaaniis";s:2:"ja";s:9:"japonisht";s:2:"ja";s:7:"japonca";s:2:"ja";s:21:"jamajská kreolština";s:3:"jam";s:31:"jamaikanisch-kreolische sprache";s:3:"jam";s:23:"jamaican creole english";s:3:"jam";s:22:"jamaikankreolienglanti";s:3:"jam";s:23:"jamaikahnesch-Änglesch";s:3:"jam";s:22:"jamaikanesch-kreolesch";s:3:"jam";s:23:"jamaikos kreolų anglų";s:3:"jam";s:18:"jamaicaans creools";s:3:"jam";s:8:"jamajski";s:3:"jam";s:24:"jamaikansk engelsk kreol";s:3:"jam";s:19:"jamaika patois dili";s:3:"jam";s:4:"jysk";s:3:"jut";s:10:"jutlandés";s:3:"jut";s:9:"jutština";s:3:"jut";s:8:"jütisch";s:3:"jut";s:6:"jutish";s:3:"jut";s:6:"juutti";s:3:"jut";s:4:"jute";s:3:"jut";s:10:"jutlandico";s:3:"jut";s:8:"jütesch";s:3:"jut";s:8:"jutlands";s:3:"jut";s:10:"jutlandzki";s:3:"jut";s:11:"jylländska";s:3:"jut";s:7:"javaans";s:2:"jv";s:9:"javanekan";s:2:"jv";s:7:"javaneg";s:2:"jv";s:8:"javanski";s:2:"jv";s:8:"javanès";s:2:"jv";s:12:"javánština";s:2:"jv";s:8:"jafanaeg";s:2:"jv";s:10:"javanesisk";s:2:"jv";s:9:"javanisch";s:2:"jv";s:11:"javašćina";s:2:"jv";s:8:"javanese";s:2:"jv";s:4:"java";s:2:"jv";s:8:"javanés";s:2:"jv";s:5:"jaava";s:2:"jv";s:6:"javera";s:2:"jv";s:11:"javanesiskt";s:2:"jv";s:8:"javanais";s:2:"jv";s:8:"javaansk";s:2:"jv";s:9:"jabananci";s:2:"jv";s:6:"jávai";s:2:"jv";s:4:"jawa";s:2:"jv";s:8:"javanska";s:2:"jv";s:10:"javahnesch";s:2:"jv";s:9:"javanesch";s:2:"jv";s:10:"javiečių";s:2:"jv";s:8:"javiešu";s:2:"jv";s:7:"javaney";s:2:"jv";s:9:"javaansch";s:2:"jv";s:8:"jawajski";s:2:"jv";s:8:"javanês";s:2:"jv";s:9:"javaneză";s:2:"jv";s:10:"javagiella";s:2:"jv";s:9:"jávčina";s:2:"jv";s:12:"javanščina";s:2:"jv";s:9:"jafaaniis";s:2:"jv";s:9:"javanisht";s:2:"jv";s:11:"javanesiska";s:2:"jv";s:9:"jorjianeg";s:2:"ka";s:9:"jojiyanci";s:2:"ka";s:12:"je’orjesch";s:2:"ka";s:11:"joorijiyaan";s:2:"ka";s:5:"jemer";s:2:"km";s:13:"jerman rendah";s:3:"nds";s:13:"jaunnorvēģu";s:2:"nn";s:19:"jerman pennsylvania";s:3:"pdc";s:9:"ᏲᏂᎢ";s:2:"ru";s:5:"jakut";s:3:"sah";s:11:"jakutština";s:3:"sah";s:9:"jakutisch";s:3:"sah";s:7:"jakuudi";s:3:"sah";s:8:"jakuutti";s:3:"sah";s:7:"jakoets";s:3:"sah";s:8:"jakutski";s:3:"sah";s:6:"jakút";s:3:"sah";s:10:"jackutesch";s:3:"sah";s:9:"jakutesch";s:3:"sah";s:7:"jakutų";s:3:"sah";s:6:"jakutu";s:3:"sah";s:7:"jakutsk";s:3:"sah";s:9:"jakuutsch";s:3:"sah";s:7:"jakucki";s:3:"sah";s:10:"jakutčina";s:3:"sah";s:12:"jakutščina";s:3:"sah";s:9:"jakutiska";s:3:"sah";s:11:"južni sami";s:3:"sma";s:17:"južnosamišćina";s:3:"sma";s:12:"južné sami";s:3:"sma";s:19:"južna samijščina";s:3:"sma";s:16:"janubiy semiycha";s:3:"sma";s:26:"južnosotšćina (sesotho)";s:2:"st";s:17:"južná sothčina";s:2:"st";s:7:"jiddisj";s:2:"yi";s:6:"jidiš";s:2:"yi";s:8:"jiddisch";s:2:"yi";s:11:"jidišćina";s:2:"yi";s:4:"jida";s:2:"yi";s:7:"jidiši";s:2:"yi";s:8:"jiddisha";s:2:"yi";s:7:"jiddiš";s:2:"yi";s:8:"jiddiskt";s:2:"yi";s:7:"jiddysk";s:2:"yi";s:6:"jiddis";s:2:"yi";s:9:"jiddíska";s:2:"yi";s:8:"jiddesch";s:2:"yi";s:7:"jidišs";s:2:"yi";s:6:"jiddix";s:2:"yi";s:7:"jiddisk";s:2:"yi";s:6:"jidysz";s:2:"yi";s:6:"jiddic";s:2:"yi";s:5:"jiden";s:2:"yi";s:10:"jorubanski";s:2:"yo";s:11:"jorubština";s:2:"yo";s:12:"jorubšćina";s:2:"yo";s:6:"joruba";s:2:"yo";s:13:"jorubašćina";s:2:"yo";s:8:"jórúba";s:2:"yo";s:7:"joruuba";s:2:"yo";s:7:"jorubų";s:2:"yo";s:6:"jorubu";s:2:"yo";s:10:"jorubčina";s:2:"yo";s:12:"jorubščina";s:2:"yo";s:9:"jorubisht";s:2:"yo";s:11:"juənq dili";s:2:"za";s:7:"jayniis";s:2:"zh";s:10:"jola-fonyi";s:3:"dyo";s:9:"jola-fony";s:3:"dyo";s:17:"jola-fonjiščina";s:3:"dyo";s:3:"jgo";s:3:"jgo";s:14:"južni ndebele";s:2:"nr";s:19:"južná ndebelčina";s:2:"nr";s:20:"južna ndebelščina";s:2:"nr";s:16:"julevsámegiella";s:3:"smj";s:27:"jungtinių valstijų anglų";s:5:"en-us";s:12:"južni altai";s:3:"alt";s:18:"južná altajčina";s:3:"alt";s:19:"južna altajščina";s:3:"alt";s:12:"jerga chinuk";s:3:"chn";s:14:"jargon chinook";s:3:"chn";s:15:"jargão chinook";s:3:"chn";s:4:"jula";s:3:"dyu";s:9:"旺杜文";s:3:"ewo";s:23:"jerman abad pertengahan";s:3:"gmh";s:11:"jerman kuno";s:3:"goh";s:11:"judo-farsca";s:3:"jpr";s:15:"judeo-persijski";s:3:"jpr";s:10:"judeopersa";s:3:"jpr";s:14:"judeoperština";s:3:"jpr";s:15:"jødisk-persisk";s:3:"jpr";s:17:"jüdisch-persisch";s:3:"jpr";s:13:"judeo-persian";s:3:"jpr";s:11:"judeo-persa";s:3:"jpr";s:12:"juudipärsia";s:3:"jpr";s:15:"juutalaispersia";s:3:"jpr";s:13:"judéo-persan";s:3:"jpr";s:13:"judeo-perzysk";s:3:"jpr";s:19:"jüüdisch-persisch";s:3:"jpr";s:18:"judejsko-perzijski";s:3:"jpr";s:19:"jühdesch-pärsesch";s:3:"jpr";s:17:"jiddesch-persesch";s:3:"jpr";s:15:"judėjų persų";s:3:"jpr";s:13:"jūdpersiešu";s:3:"jpr";s:12:"jødepersisk";s:3:"jpr";s:20:"jöödsch-pers’sch";s:3:"jpr";s:14:"judeo-perzisch";s:3:"jpr";s:11:"judeoperski";s:3:"jpr";s:13:"judaico-persa";s:3:"jpr";s:22:"judovska perzijščina";s:3:"jpr";s:15:"judisk persiska";s:3:"jpr";s:14:"jude-ərəbcə";s:3:"jrb";s:13:"judeo-arapski";s:3:"jrb";s:10:"judeoàrab";s:3:"jrb";s:15:"judeoarabština";s:3:"jrb";s:15:"jødisk-arabisk";s:3:"jrb";s:17:"jüdisch-arabisch";s:3:"jrb";s:12:"judeo-arabic";s:3:"jrb";s:12:"judeo-árabe";s:3:"jrb";s:12:"juudiaraabia";s:3:"jrb";s:15:"juutalaisarabia";s:3:"jrb";s:12:"judéo-arabe";s:3:"jrb";s:13:"judeo-arabysk";s:3:"jrb";s:19:"jüüdisch-arabisch";s:3:"jrb";s:16:"judejsko-arapski";s:3:"jrb";s:17:"jiddesch-arabesch";s:3:"jrb";s:15:"judėjų arabų";s:3:"jrb";s:10:"jūdarābu";s:3:"jrb";s:12:"jødearabisk";s:3:"jrb";s:18:"jöödsch-araabsch";s:3:"jrb";s:14:"judeo-arabisch";s:3:"jrb";s:12:"judeoarabski";s:3:"jrb";s:16:"judaico-arábico";s:3:"jrb";s:20:"judovska arabščina";s:3:"jrb";s:15:"judisk arabiska";s:3:"jrb";s:3:"jju";s:3:"kaj";s:7:"ju dili";s:3:"kaj";s:2:"ju";s:3:"kaj";s:3:"jao";s:3:"yao";s:9:"jaoština";s:3:"yao";s:4:"jaó";s:3:"yao";s:11:"jaojščina";s:3:"yao";s:8:"japeški";s:3:"yap";s:9:"japština";s:3:"yap";s:4:"japi";s:3:"yap";s:6:"japski";s:3:"yap";s:8:"japíska";s:3:"yap";s:7:"japezų";s:3:"yap";s:8:"japiešu";s:3:"yap";s:6:"japese";s:3:"yap";s:8:"japčina";s:3:"yap";s:10:"japščina";s:3:"yap";s:9:"japetiska";s:3:"yap";s:13:"jangbenština";s:3:"yav";s:7:"jangben";s:3:"yav";s:9:"jangbenų";s:3:"yav";s:8:"janbaņu";s:3:"yav";s:31:"jupikština (středoaljašská)";s:3:"esu";s:5:"jemba";s:3:"ybb";s:6:"jembų";s:3:"ybb";s:5:"jembu";s:3:"ybb";s:37:"jezik centralno-američkih indijanaca";s:3:"cai";s:35:"jezik severno-američkih indijanaca";s:3:"nai";s:34:"jezik južno-američkih indijanaca";s:3:"sai";s:13:"jezik znakova";s:3:"sgn";s:5:"jupik";s:3:"ypk";}i:799;a:2:{s:9:"夏延文";s:3:"chy";s:12:"夏威夷文";s:3:"haw";}i:801;a:2:{s:12:"沙伊安文";s:3:"chy";s:18:"沙特菲士蘭文";s:3:"stq";}i:405;a:19:{s:29:"սորանի (քրդերեն)";s:3:"ckb";s:31:"ստորին սորբիերեն";s:3:"dsb";s:19:"սիխուան յի";s:2:"ii";s:16:"սանսկրիտ";s:2:"sa";s:12:"սինդհի";s:2:"sd";s:10:"սանգո";s:2:"sg";s:20:"սինհալերեն";s:2:"si";s:20:"սլովակերեն";s:2:"sk";s:20:"սլովեներեն";s:2:"sl";s:20:"սոմալիերեն";s:2:"so";s:16:"սերբերեն";s:2:"sr";s:22:"սունդաներեն";s:2:"su";s:16:"սուահիլի";s:2:"sw";s:18:"սամբուրու";s:3:"saq";s:12:"սանգու";s:3:"sbp";s:8:"սենա";s:3:"seh";s:19:"սկոլտ սամի";s:3:"sms";s:8:"սոգա";s:3:"xog";s:52:"ստանդարտ մարոկական թամազիղտ";s:3:"zgh";}i:321;a:47:{s:40:"სორანი ქურთული";s:3:"ckb";s:49:"საეკლესიო სლავური";s:2:"cu";s:46:"ऑस्ट्रियाई जर्मन";s:5:"de-at";s:43:"ऑस्ट्रियन जर्मन";s:5:"de-at";s:24:"სპარსული";s:2:"fa";s:21:"სომხური";s:2:"hy";s:28:"სიჩუანის ი";s:2:"ii";s:24:"ऑक्सितान";s:2:"oc";s:27:"სანსკრიტი";s:2:"sa";s:30:"სარდინიული";s:2:"sc";s:27:"სიცილიური";s:3:"scn";s:24:"სინდჰური";s:2:"sd";s:15:"სანგო";s:2:"sg";s:46:"სერბულ-ხორვატული";s:2:"sh";s:27:"სინჰალური";s:2:"si";s:27:"სლოვაკური";s:2:"sk";s:27:"სლოვენური";s:2:"sl";s:15:"სამოა";s:2:"sm";s:43:"სამხრეთ საამური";s:3:"sma";s:27:"სომალიური";s:2:"so";s:21:"სერბული";s:2:"sr";s:47:"სამხრეთ სოთოს ენა";s:2:"st";s:21:"სუნდური";s:2:"su";s:21:"სუაჰილი";s:2:"sw";s:15:"繁体中国語";s:7:"zh-hant";s:12:"繁体中文";s:7:"zh-hant";s:12:"繁體中文";s:7:"zh-hant";s:12:"香巴拉文";s:3:"ksb";s:21:"სამბურუ";s:3:"saq";s:15:"სანგუ";s:3:"sbp";s:12:"სენა";s:3:"seh";s:37:"სკოლტ-საამური";s:3:"sms";s:12:"სოგა";s:3:"xog";s:92:"სტანდარტული მაროკოული ტამაზიგხტი";s:3:"zgh";s:64:"ऑस्ट्रेलियाई अंग्रेज़ी";s:5:"en-au";s:55:"ऑस्ट्रेलियन इंग्रजी";s:5:"en-au";s:43:"სამხრეთ ალთაური";s:3:"alt";s:18:"სლეივი";s:3:"den";s:52:"საშუალო ჰოლანდიური";s:3:"dum";s:49:"საშუალო ინგლისური";s:3:"enm";s:46:"საშუალო ფრანგული";s:3:"frm";s:61:"საშუალო ზემოგერმანული";s:3:"gmh";s:52:"საშუალო ირლანდიური";s:3:"mga";s:49:"სამარიულ-არამეული";s:3:"sam";s:27:"სელკუპური";s:3:"sel";s:21:"სირიული";s:3:"syr";s:18:"სენეკა";s:3:"see";}i:47;a:19:{s:21:"សុរ៉ានី";s:3:"ckb";s:27:"សំស្ក្រឹត";s:2:"sa";s:33:"សើបូក្រូទៀន";s:2:"sh";s:27:"ស្រីលង្កា";s:2:"si";s:27:"ស្លូវ៉ាគី";s:2:"sk";s:27:"ស្លូវ៉ានី";s:2:"sl";s:21:"សូម៉ាលី";s:2:"so";s:9:"សើប";s:2:"sr";s:18:"សេសូដូ";s:2:"st";s:18:"ស៊ូដង់";s:2:"su";s:21:"ស៊ុយអែដ";s:2:"sv";s:27:"ស្វាហ៊ីលី";s:2:"sw";s:12:"សូលូ";s:2:"zu";s:16:"Зуулулуу";s:2:"zu";s:8:"Зулу";s:2:"zu";s:18:"Запотечки";s:3:"zap";s:12:"Зенага";s:3:"zen";s:8:"Зуни";s:3:"zun";s:8:"Заза";s:3:"zza";}i:548;a:8:{s:22:"소라니 쿠르드어";s:3:"ckb";s:12:"림버거어";s:2:"li";s:18:"소토어 (북부)";s:3:"nso";s:15:"소말리아어";s:2:"so";s:18:"소토어 (남부)";s:2:"st";s:9:"소가어";s:3:"xog";s:12:"소닌케어";s:3:"snk";s:15:"소그디엔어";s:3:"sog";}i:616;a:36:{s:40:"ਸੋਰਾਨੀ ਕੁਰਦਿਸ਼";s:3:"ckb";s:35:"ਸਵਿਸ ਹਾਈ ਜਰਮਨ";s:5:"de-ch";s:15:"ਸਪੇਨੀ";s:2:"es";s:25:"ਸਵਿਸ ਜਰਮਨ";s:3:"gsw";s:12:"하우사어";s:2:"ha";s:12:"하와이어";s:3:"haw";s:25:"ਸਿਚੁਆਨ ਯੀ";s:2:"ii";s:24:"ਸੰਸਕ੍ਰਿਤ";s:2:"sa";s:18:"ਸੰਥਾਲੀ";s:3:"sat";s:15:"ਸਿੰਧੀ";s:2:"sd";s:15:"ਸਾਂਗੋ";s:2:"sg";s:21:"ਸਿੰਹਾਲਾ";s:2:"si";s:18:"ਸਲੋਵਾਕ";s:2:"sk";s:27:"ਸਲੋਵੇਨੀਆਈ";s:2:"sl";s:15:"ਸ਼ੋਨਾ";s:2:"sn";s:18:"ਸੋਮਾਲੀ";s:2:"so";s:18:"ਸਰਬੀਆਈ";s:2:"sr";s:18:"ਸੂਡਾਨੀ";s:2:"su";s:21:"ਸਵੀਡਿਸ਼";s:2:"sv";s:21:"ਸਵਾਹਿਲੀ";s:2:"sw";s:22:"ਸਰਲ ਚੀਨੀ";s:7:"zh-hans";s:12:"简体中文";s:7:"zh-hans";s:24:"现代标准阿拉伯文";s:6:"ar-001";s:15:"하타이트어";s:3:"hit";s:21:"ਸ਼ੰਬਾਲਾ";s:3:"ksb";s:18:"ਸਮਬੁਰੂ";s:3:"saq";s:15:"ਸੇਂਗੋ";s:3:"sbp";s:12:"ਸੇਨਾ";s:3:"seh";s:28:"ਸਕੌਲਟ ਸਾਮੀ";s:3:"sms";s:48:"ภาษาที่ไม่รู้จัก";s:3:"und";s:12:"ਸੋਗਾ";s:3:"xog";s:27:"언어 관련 내용 없음";s:3:"zxx";s:37:"ਸਵਿਸ ਫਰਾਂਸੀਸੀ";s:5:"fr-ch";s:12:"하이다어";s:3:"hai";s:12:"ਸ਼ਾਨ";s:3:"shn";s:45:"ภาษามืออเมริกัน";s:3:"ase";}i:523;a:41:{s:43:"සොරානි කුර්දිෂ්";s:3:"ckb";s:50:"ස්විස් උසස් ජර්මන්";s:5:"de-ch";s:21:"ස්පාඤ්ඤ";s:2:"es";s:37:"ස්විස් ජර්මනි";s:3:"gsw";s:28:"සිචුආන් යී";s:2:"ii";s:24:"ルクセンブルク語";s:2:"lb";s:12:"倫巴底文";s:3:"lmo";s:15:"ルシャイ語";s:3:"lus";s:15:"ルンディ語";s:2:"rn";s:18:"ルーマニア語";s:2:"ro";s:12:"ルシン語";s:3:"rue";s:15:"ルワンダ語";s:2:"rw";s:21:"සංස්කෘත";s:2:"sa";s:18:"සින්ධි";s:2:"sd";s:24:"සන්ග්‍රෝ";s:2:"sg";s:15:"සිංහල";s:2:"si";s:24:"ස්ලෝවැක්";s:2:"sk";s:36:"ස්ලෝවේනියානු";s:2:"sl";s:18:"සෝමාලි";s:2:"so";s:27:"සර්බියානු";s:2:"sr";s:36:"සන්ඩනීසියානු";s:2:"su";s:21:"ස්වීඩන්";s:2:"sv";s:24:"ස්වාහිලි";s:2:"sw";s:28:"සුළුකළ චීන";s:7:"zh-hans";s:49:"සාම්ප්‍රදායික චීන";s:7:"zh-hant";s:12:"සුලු";s:2:"zu";s:24:"ルバ・カタンガ語";s:2:"lu";s:21:"ルバ・ルルア語";s:3:"lua";s:9:"ルオ語";s:3:"luo";s:12:"ルヒヤ語";s:3:"luy";s:9:"ルワ語";s:3:"rwk";s:21:"සම්බුරු";s:3:"saq";s:12:"සංගු";s:3:"sbp";s:12:"සෙනා";s:3:"seh";s:21:"ルレ・サーミ語";s:3:"smj";s:37:"ස්කොල්ට් සාමි";s:3:"sms";s:12:"සොගා";s:3:"xog";s:65:"සම්මත මොරොක්කෝ ටමසිග්ත්";s:3:"zgh";s:37:"ස්විස් ප්‍රංශ";s:5:"fr-ch";s:21:"ルイセーニョ語";s:3:"lui";s:12:"ルンダ語";s:3:"lun";}i:34;a:13:{s:21:"索拉尼库尔德文";s:3:"ckb";s:21:"索拉尼庫爾德文";s:3:"ckb";s:8:"Њања";s:2:"ny";s:12:"索马里文";s:2:"so";s:12:"索馬利文";s:2:"so";s:9:"索加文";s:3:"xog";s:14:"Њамвези";s:3:"nym";s:8:"Њоро";s:3:"nyo";s:12:"索尼基文";s:3:"snk";s:18:"索格底亞納文";s:3:"sog";s:19:"Њаса тонга";s:3:"tog";s:27:"索羅亞斯德教達里文";s:3:"gbz";s:18:"索拉什特拉文";s:3:"saz";}i:782;a:9:{s:15:"ኮርሲካኛ";s:2:"co";s:12:"ኮንጎኛ";s:2:"kg";s:12:"ኮሪያኛ";s:2:"ko";s:22:"ኮሚ ፔርምያክ";s:3:"koi";s:12:"ኮርኒሽ";s:2:"kw";s:16:"ኮይራ ቺኒ";s:3:"khq";s:9:"ኮካኒ";s:3:"kok";s:22:"ኮይራቦሮ ሴኒ";s:3:"ses";s:22:"ኮንጎ ስዋሂሊ";s:3:"swc";}i:345;a:35:{s:12:"卡皮茲文";s:3:"cps";s:9:"卡舒文";s:3:"csb";s:12:"卡舒布文";s:3:"csb";s:9:"řečtina";s:2:"el";s:12:"卡真法文";s:3:"frc";s:21:"卡拉卡尔帕克文";s:3:"kaa";s:21:"卡拉卡爾帕克文";s:3:"kaa";s:12:"卡比尔文";s:3:"kab";s:12:"卡比爾文";s:3:"kab";s:15:"卡巴尔达文";s:3:"kbd";s:15:"卡巴爾達文";s:3:"kbd";s:12:"卡纳达文";s:2:"kn";s:12:"卡努里文";s:2:"kr";s:12:"卡努裡文";s:2:"kr";s:27:"卡拉恰伊巴尔卡尔文";s:3:"krc";s:25:"卡拉柴-包爾卡爾文";s:3:"krc";s:15:"卡尔梅克文";s:3:"xal";s:15:"卡爾梅克文";s:3:"xal";s:12:"卡姆巴文";s:3:"kam";s:18:"卡布佛得鲁文";s:3:"kea";s:18:"卡布威爾第文";s:3:"kea";s:12:"卡伦金文";s:3:"kln";s:12:"卡倫金文";s:3:"kln";s:9:"상구어";s:3:"sbp";s:9:"卡多文";s:3:"cad";s:9:"卡琴文";s:3:"kac";s:9:"卡捷文";s:3:"kaj";s:9:"卡威文";s:3:"kaw";s:12:"卡念布文";s:3:"kbl";s:9:"卡西文";s:3:"kha";s:15:"卡累利阿文";s:3:"krl";s:12:"卡尤加文";s:3:"cay";s:12:"卡塔布文";s:3:"kcg";s:9:"卡库文";s:3:"kkj";s:9:"卡庫文";s:3:"kkj";}i:110;a:679:{s:37:"nēhiyawēwin / ᓀᐦᐃᔭᐍᐏᐣ";s:2:"cr";s:9:"njemački";s:2:"de";s:9:"němčina";s:2:"de";s:10:"nimšćina";s:2:"de";s:6:"német";s:2:"de";s:9:"niemiecki";s:2:"de";s:8:"nemački";s:2:"de";s:8:"nemčina";s:2:"de";s:10:"nemščina";s:2:"de";s:8:"nemischa";s:2:"de";s:19:"nemčina (rakúska)";s:5:"de-at";s:35:"němčina standardní (Švýcarsko)";s:5:"de-ch";s:34:"nemčina (švajčiarska spisovná)";s:5:"de-ch";s:12:"nedersorbisk";s:3:"dsb";s:14:"niedersorbisch";s:3:"dsb";s:12:"nedersorbysk";s:3:"dsb";s:13:"nidersorbisch";s:3:"dsb";s:14:"niddersorbesch";s:3:"dsb";s:13:"neddersorbsch";s:3:"dsb";s:13:"nedersorbisch";s:3:"dsb";s:17:"niski sorbijanski";s:3:"dsb";s:18:"దివేహి";s:2:"dv";s:18:"іспанская";s:2:"es";s:18:"іспанська";s:2:"es";s:16:"na vosa vakaviti";s:2:"fj";s:10:"nordfriisk";s:3:"frr";s:11:"nordfrisisk";s:3:"frr";s:13:"nordfriesisch";s:3:"frr";s:16:"northern frisian";s:3:"frr";s:11:"noard-frysk";s:3:"frr";s:17:"norðurfrísneska";s:3:"frr";s:13:"nordfriesesch";s:3:"frr";s:12:"noordfreesch";s:3:"frr";s:11:"noord-fries";s:3:"frr";s:12:"nordfrisiska";s:3:"frr";s:20:"ірландская";s:2:"ga";s:20:"ірляндзкая";s:2:"ga";s:20:"ірландська";s:2:"ga";s:23:"němčina (Švýcarsko)";s:3:"gsw";s:24:"nemčina (švajčiarska)";s:3:"gsw";s:19:"nemščina (Švica)";s:3:"gsw";s:10:"іўрыт";s:2:"he";s:10:"іврит";s:2:"he";s:22:"інтэрлінгва";s:2:"ia";s:22:"інтерлінгва";s:2:"ia";s:26:"інданезійская";s:2:"id";s:26:"інданэзійская";s:2:"id";s:26:"індонезійська";s:2:"id";s:22:"інтэрлінгве";s:2:"ie";s:22:"інтерлінгве";s:2:"ie";s:8:"ігбо";s:2:"ig";s:5:"nwosw";s:2:"ii";s:14:"інупіак";s:2:"ik";s:20:"ілоканська";s:3:"ilo";s:16:"інгуская";s:3:"inh";s:16:"інгуська";s:3:"inh";s:6:"ідо";s:2:"io";s:20:"ісландская";s:2:"is";s:22:"ісьляндзкая";s:2:"is";s:20:"ісландська";s:2:"is";s:22:"італьянская";s:2:"it";s:20:"італійська";s:2:"it";s:18:"інуктітут";s:2:"iu";s:21:"naujoji frankų kalba";s:3:"lfn";s:6:"ngalų";s:2:"ln";s:5:"nauru";s:2:"na";s:10:"nauru dili";s:2:"na";s:7:"naurueg";s:2:"na";s:7:"nauruà";s:2:"na";s:10:"naurština";s:2:"na";s:8:"nawrŵeg";s:2:"na";s:9:"nauruisch";s:2:"na";s:12:"naurušćina";s:2:"na";s:8:"naurugbe";s:2:"na";s:5:"naura";s:2:"na";s:8:"nauruano";s:2:"na";s:7:"nauruan";s:2:"na";s:10:"nauruaansk";s:2:"na";s:8:"nárúis";s:2:"na";s:6:"nabhru";s:2:"na";s:6:"naurui";s:2:"na";s:9:"nárúska";s:2:"na";s:9:"nauruesch";s:2:"na";s:6:"naurų";s:2:"na";s:10:"nauruiešu";s:2:"na";s:6:"nawuru";s:2:"na";s:9:"nauruusch";s:2:"na";s:9:"nauruaans";s:2:"na";s:13:"naurujščina";s:2:"na";s:8:"nāhuatl";s:3:"nah";s:7:"nahuatl";s:3:"nah";s:10:"napulitano";s:3:"nap";s:10:"napolitanu";s:3:"nap";s:15:"neapolital dili";s:3:"nap";s:11:"napolitaneg";s:3:"nap";s:13:"neapolitanski";s:3:"nap";s:9:"napolità";s:3:"nap";s:12:"neapolština";s:3:"nap";s:7:"naplieg";s:3:"nap";s:12:"neapolitansk";s:3:"nap";s:14:"neapolitanisch";s:3:"nap";s:10:"neapolitan";s:3:"nap";s:10:"napolitano";s:3:"nap";s:6:"napoli";s:3:"nap";s:10:"napolitain";s:3:"nap";s:9:"napoletan";s:3:"nap";s:12:"napolitaansk";s:3:"nap";s:12:"napolitanski";s:3:"nap";s:8:"nápolyi";s:3:"nap";s:11:"napólíska";s:3:"nap";s:10:"napoletano";s:3:"nap";s:14:"neapolitanesch";s:3:"nap";s:13:"neapoliečių";s:3:"nap";s:11:"neapoliešu";s:3:"nap";s:11:"napolitansk";s:3:"nap";s:14:"neapolitaansch";s:3:"nap";s:11:"napolitaans";s:3:"nap";s:14:"neapolitański";s:3:"nap";s:11:"napolitană";s:3:"nap";s:11:"neapolčina";s:3:"nap";s:16:"napolitanščina";s:3:"nap";s:12:"napolitanska";s:3:"nap";s:8:"napolice";s:3:"nap";s:13:"norsk bokmål";s:2:"no";s:14:"noorse bokmål";s:2:"nb";s:15:"noruegu bokmål";s:2:"nb";s:16:"norvegeg bokmål";s:2:"nb";s:16:"norveški bokmal";s:2:"nb";s:14:"noruec bokmål";s:2:"nb";s:19:"norština (bokmål)";s:2:"nb";s:15:"norwyeg bokmål";s:2:"nb";s:18:"norwegisch bokmål";s:2:"nb";s:17:"norwegske bokmål";s:2:"nb";s:17:"nɔweigbe bokmål";s:2:"nb";s:17:"norwegian bokmål";s:2:"nb";s:13:"norra bokmål";s:2:"nb";s:14:"norjan bokmål";s:2:"nb";s:14:"norskt bokmál";s:2:"nb";s:18:"norvégien bokmål";s:2:"nb";s:18:"norvegjês bokmål";s:2:"nb";s:15:"noors - bokmål";s:2:"nb";s:17:"noruegués bokmal";s:2:"nb";s:23:"norwegšćina (bokmål)";s:2:"nb";s:14:"norvég bokmal";s:2:"nb";s:15:"norskt bókmál";s:2:"nb";s:17:"norvegese bokmål";s:2:"nb";s:20:"norrweejesch bokmål";s:2:"nb";s:18:"norwegesch bokmål";s:2:"nb";s:35:"norvegijos rašytinė – būkmolų";s:2:"nb";s:17:"norvēģu bukmols";s:2:"nb";s:18:"norweegsch bokmål";s:2:"nb";s:18:"norweski (bokmål)";s:2:"nb";s:18:"norueguês bokmål";s:2:"nb";s:17:"norvegais bokmål";s:2:"nb";s:19:"norvegiană bokmål";s:2:"nb";s:17:"norveški bokmål";s:2:"nb";s:15:"nórsky bokmål";s:2:"nb";s:14:"norskt bokmål";s:2:"nb";s:18:"norveççe bokmål";s:2:"nb";s:16:"norvegcha bokmal";s:2:"nb";s:14:"niski nemački";s:3:"nds";s:9:"nedertysk";s:3:"nds";s:13:"niederdeutsch";s:3:"nds";s:14:"nidertüütsch";s:3:"nds";s:14:"nidderdäitsch";s:3:"nds";s:13:"nedersaksisch";s:3:"nds";s:16:"nizka nemščina";s:3:"nds";s:12:"nedersaksies";s:6:"nds-nl";s:8:"nepalees";s:2:"ne";s:11:"nɛpal kasa";s:2:"ne";s:8:"nepalés";s:2:"ne";s:5:"nepal";s:2:"ne";s:9:"nepalekan";s:2:"ne";s:7:"nepaleg";s:2:"ne";s:8:"nepalski";s:2:"ne";s:8:"nepalès";s:2:"ne";s:12:"nepálština";s:2:"ne";s:10:"nepalesisk";s:2:"ne";s:11:"nepalesisch";s:2:"ne";s:12:"nepalšćina";s:2:"ne";s:8:"nepalgbe";s:2:"ne";s:6:"nepali";s:2:"ne";s:6:"nepala";s:2:"ne";s:7:"nepalí";s:2:"ne";s:8:"nepalera";s:2:"ne";s:10:"nepaaleere";s:2:"ne";s:8:"nepalskt";s:2:"ne";s:9:"népalais";s:2:"ne";s:8:"nepalês";s:2:"ne";s:10:"neipeailis";s:2:"ne";s:10:"neapàilis";s:2:"ne";s:7:"nepáli";s:2:"ne";s:8:"nepalese";s:2:"ne";s:8:"nepalska";s:2:"ne";s:13:"nepallessesch";s:2:"ne";s:11:"nepalesesch";s:2:"ne";s:12:"nepaliečių";s:2:"ne";s:11:"nepāliešu";s:2:"ne";s:6:"nepale";s:2:"ne";s:8:"nepaliż";s:2:"ne";s:10:"nepaleesch";s:2:"ne";s:7:"nepalsk";s:2:"ne";s:11:"nepali simi";s:2:"ne";s:8:"nepalais";s:2:"ne";s:9:"nepaleză";s:2:"ne";s:12:"nepaligiella";s:2:"ne";s:8:"nepalëe";s:2:"ne";s:11:"nepálčina";s:2:"ne";s:12:"nepalščina";s:2:"ne";s:7:"nebaali";s:2:"ne";s:9:"nepalisht";s:2:"ne";s:11:"nepalesiska";s:2:"ne";s:7:"nepalce";s:2:"ne";s:8:"nepalcha";s:2:"ne";s:6:"newari";s:3:"new";s:11:"nevari dili";s:3:"new";s:6:"nevari";s:3:"new";s:13:"névárština";s:3:"new";s:6:"newaeg";s:3:"new";s:9:"newarisch";s:3:"new";s:7:"nevarí";s:3:"new";s:6:"nevaru";s:3:"new";s:8:"newarski";s:3:"new";s:11:"nevárčina";s:3:"new";s:12:"nevarščina";s:3:"new";s:9:"newariska";s:3:"new";s:6:"ndonga";s:2:"ng";s:11:"nqonka dili";s:2:"ng";s:11:"ndondština";s:2:"ng";s:8:"ndongais";s:2:"ng";s:7:"ndongų";s:2:"ng";s:6:"ndongu";s:2:"ng";s:15:"దోంగా";s:2:"ng";s:5:"niuē";s:3:"niu";s:7:"niueanu";s:3:"niu";s:11:"niyuan dili";s:3:"niu";s:4:"niue";s:3:"niu";s:6:"niuean";s:3:"niu";s:6:"niueà";s:3:"niu";s:10:"niueština";s:3:"niu";s:12:"niue-sprache";s:3:"niu";s:7:"niuegbe";s:3:"niu";s:7:"niueano";s:3:"niu";s:5:"niué";s:3:"niu";s:9:"niueaansk";s:3:"niu";s:9:"níobhais";s:3:"niu";s:14:"niue-schpraach";s:3:"niu";s:7:"niujski";s:3:"niu";s:4:"niui";s:3:"niu";s:5:"niuea";s:3:"niu";s:8:"níveska";s:3:"niu";s:12:"niue-sprooch";s:3:"niu";s:7:"niuenų";s:3:"niu";s:8:"niuāņu";s:3:"niu";s:9:"nijuwejan";s:3:"niu";s:8:"niueansk";s:3:"niu";s:8:"niueaans";s:3:"niu";s:8:"niueană";s:3:"niu";s:12:"niuejščina";s:3:"niu";s:9:"niueanska";s:3:"niu";s:10:"nederlands";s:2:"nl";s:11:"neerlandés";s:2:"nl";s:11:"nederlandeg";s:2:"nl";s:11:"neerlandès";s:2:"nl";s:13:"nizozemština";s:2:"nl";s:15:"niederländisch";s:2:"nl";s:15:"nižozemšćina";s:2:"nl";s:10:"nederlanda";s:2:"nl";s:12:"nederlandera";s:2:"nl";s:12:"néerlandais";s:2:"nl";s:11:"nederlânsk";s:2:"nl";s:14:"niderländisch";s:2:"nl";s:10:"nizozemski";s:2:"nl";s:12:"nederlandese";s:2:"nl";s:11:"nederlandsk";s:2:"nl";s:13:"nedderlandsch";s:2:"nl";s:12:"niderlandzki";s:2:"nl";s:15:"neerlandes simi";s:2:"nl";s:14:"nizozemščina";s:2:"nl";s:13:"nederländska";s:2:"nl";s:25:"nederlands (informeel)‎";s:11:"nl-informal";s:13:"norsk nynorsk";s:2:"nn";s:18:"noorweegse nynorsk";s:2:"nn";s:15:"noruegu nynorsk";s:2:"nn";s:16:"nünorsk norveç";s:2:"nn";s:16:"norvegeg nynorsk";s:2:"nn";s:16:"norveški njorsk";s:2:"nn";s:14:"noruec nynorsk";s:2:"nn";s:19:"norština (nynorsk)";s:2:"nn";s:15:"norwyeg nynorsk";s:2:"nn";s:7:"nynorsk";s:2:"nn";s:18:"norwegisch nynorsk";s:2:"nn";s:17:"norwegske nynorsk";s:2:"nn";s:17:"nɔweigbe ninɔsk";s:2:"nn";s:17:"norwegian nynorsk";s:2:"nn";s:10:"novnorvega";s:2:"nn";s:15:"nynorsk noruego";s:2:"nn";s:13:"norra nynorsk";s:2:"nn";s:18:"nynorsk norvegiera";s:2:"nn";s:14:"norjan nynorsk";s:2:"nn";s:9:"nýnorskt";s:2:"nn";s:18:"norvégien nynorsk";s:2:"nn";s:18:"norvegjês nynorsk";s:2:"nn";s:15:"noors - nynorsk";s:2:"nn";s:11:"nua-ioruais";s:2:"nn";s:21:"nynorsk na nirribhidh";s:2:"nn";s:18:"noruegués nynorsk";s:2:"nn";s:13:"novonorveški";s:2:"nn";s:23:"norwegšćina (nynorsk)";s:2:"nn";s:15:"norvég nynorsk";s:2:"nn";s:20:"norvegiano (nynorsk)";s:2:"nn";s:16:"nynorsk norwegia";s:2:"nn";s:9:"nýnorska";s:2:"nn";s:17:"norvegese nynorsk";s:2:"nn";s:16:"neu-norrweejesch";s:2:"nn";s:18:"norwegesch nynorsk";s:2:"nn";s:16:"naujoji norvegų";s:2:"nn";s:14:"nynorsk norway";s:2:"nn";s:18:"ninorsk norveġiż";s:2:"nn";s:18:"norweegsch nynorsk";s:2:"nn";s:18:"norweski (nynorsk)";s:2:"nn";s:18:"norueguês nynorsk";s:2:"nn";s:18:"nynorsk norueguês";s:2:"nn";s:18:"norvegiais nynorsk";s:2:"nn";s:19:"norvegiană nynorsk";s:2:"nn";s:15:"nórsky nynorsk";s:2:"nn";s:16:"novonorveščina";s:2:"nn";s:24:"nowrwejiyan (naynoroski)";s:2:"nn";s:19:"ninorske norvegjeze";s:2:"nn";s:8:"nynorska";s:2:"nn";s:18:"norveççe nynorsk";s:2:"nn";s:17:"norvegcha ninorsk";s:2:"nn";s:5:"noors";s:2:"no";s:7:"noruegu";s:2:"no";s:12:"norveç dili";s:2:"no";s:8:"norvegeg";s:2:"no";s:9:"norveški";s:2:"no";s:6:"noruec";s:2:"no";s:9:"norština";s:2:"no";s:7:"norwyeg";s:2:"no";s:5:"norsk";s:2:"no";s:10:"norwegisch";s:2:"no";s:13:"norwegšćina";s:2:"no";s:9:"nɔweigbe";s:2:"no";s:19:"norwegian (bokmål)";s:2:"no";s:7:"norvega";s:2:"no";s:7:"noruego";s:2:"no";s:5:"norra";s:2:"no";s:10:"norvegiera";s:2:"no";s:5:"norja";s:2:"no";s:6:"norskt";s:2:"no";s:10:"norvégien";s:2:"no";s:10:"norvegjês";s:2:"no";s:9:"nirribhis";s:2:"no";s:10:"noruegués";s:2:"no";s:7:"norvég";s:2:"no";s:10:"norvegiano";s:2:"no";s:8:"norwegia";s:2:"no";s:6:"norska";s:2:"no";s:9:"norvegese";s:2:"no";s:12:"norrweejesch";s:2:"no";s:10:"norwegesch";s:2:"no";s:8:"norvegų";s:2:"no";s:9:"norvēģu";s:2:"no";s:6:"norway";s:2:"no";s:10:"norveġiż";s:2:"no";s:10:"norweegsch";s:2:"no";s:8:"norweski";s:2:"no";s:10:"norueguês";s:2:"no";s:12:"noruego simi";s:2:"no";s:10:"norvegiais";s:2:"no";s:11:"norvegiană";s:2:"no";s:9:"nórčina";s:2:"no";s:12:"norveščina";s:2:"no";s:11:"norvegjisht";s:2:"no";s:10:"norveççe";s:2:"no";s:6:"novial";s:3:"nov";s:9:"nouormand";s:3:"nrm";s:11:"noord-sotho";s:3:"nso";s:9:"nordsotho";s:3:"nso";s:18:"nord-sotho-sprache";s:3:"nso";s:14:"northern sotho";s:3:"nso";s:11:"noard-sotho";s:3:"nso";s:20:"nord-sotho-schpraach";s:3:"nso";s:13:"norðursótó";s:3:"nso";s:10:"nood-sooto";s:3:"nso";s:18:"nord-sotho-sprooch";s:3:"nso";s:10:"nord-sotho";s:3:"nso";s:6:"navajo";s:2:"nv";s:11:"navayo dili";s:2:"nv";s:9:"navacʼho";s:2:"nv";s:6:"navaho";s:2:"nv";s:12:"navažština";s:2:"nv";s:6:"nafaho";s:2:"nv";s:10:"navachóis";s:2:"nv";s:16:"navajo-schpraach";s:2:"nv";s:7:"navahó";s:2:"nv";s:7:"navajų";s:2:"nv";s:6:"navahu";s:2:"nv";s:7:"navaħo";s:2:"nv";s:6:"nawaho";s:2:"nv";s:12:"navajščina";s:2:"nv";s:11:"navaho dili";s:2:"nv";s:6:"nyanja";s:2:"ny";s:11:"nyanca dili";s:2:"ny";s:6:"njanja";s:2:"ny";s:6:"nianja";s:2:"ny";s:14:"nyanja-sprache";s:2:"ny";s:9:"nyanjagbe";s:2:"ny";s:8:"njandža";s:2:"ny";s:23:"njanja; sísjeva; sjeva";s:2:"ny";s:14:"nyanja-sprooch";s:2:"ny";s:8:"njandża";s:2:"ny";s:11:"njanščina";s:2:"ny";s:26:"němčina (pensylvánská)";s:3:"pdc";s:24:"němčina (plautdietsch)";s:3:"pdt";s:16:"norfuk / pitkern";s:3:"pih";s:15:"noordelike sami";s:2:"se";s:10:"nordsamisk";s:2:"se";s:12:"nord-samisch";s:2:"se";s:13:"northern sami";s:2:"se";s:12:"noard-samysk";s:2:"se";s:15:"norðursamíska";s:2:"se";s:18:"nood-lappländesch";s:2:"se";s:11:"nordsamesch";s:2:"se";s:13:"noord-saamsch";s:2:"se";s:13:"noord-samisch";s:2:"se";s:11:"nordsamiska";s:2:"se";s:20:"němčina (slezská)";s:3:"sli";s:16:"nidderschlesesch";s:3:"sli";s:31:"దక్షిణ సామి";s:3:"sma";s:31:"దక్షిణ సోతో";s:2:"st";s:14:"neumelanesisch";s:3:"tpi";s:14:"neimelanesesch";s:3:"tpi";s:38:"němčina (mohansko-franské dialekty)";s:3:"vmf";s:8:"ідыш";s:2:"yi";s:8:"ідиш";s:2:"yi";s:25:"nuadh-arabais stannardach";s:6:"ar-001";s:15:"దుఆలా";s:3:"dua";s:6:"ngomba";s:3:"jgo";s:6:"nqomba";s:3:"jgo";s:8:"ngamambo";s:3:"jgo";s:7:"ngombų";s:3:"jgo";s:6:"ngombe";s:3:"jgo";s:7:"nguemba";s:3:"jgo";s:9:"ngombisht";s:3:"jgo";s:8:"ngombcha";s:3:"jgo";s:9:"norisjene";s:3:"mfe";s:19:"nhiều ngôn ngữ";s:3:"mul";s:4:"nama";s:3:"naq";s:10:"namaština";s:3:"naq";s:6:"namera";s:3:"naq";s:9:"namaishte";s:3:"naq";s:7:"namacha";s:3:"naq";s:13:"noord-ndebele";s:2:"nd";s:17:"ndebele del norte";s:2:"nd";s:16:"ndebele an norzh";s:2:"nd";s:21:"ndebele septentrional";s:2:"nd";s:18:"ndebele (zimbabwe)";s:2:"nd";s:17:"ndebele gogleddol";s:2:"nd";s:11:"nordndebele";s:2:"nd";s:20:"nord-ndebele-sprache";s:2:"nd";s:13:"north ndebele";s:2:"nd";s:18:"ndébélé du nord";s:2:"nd";s:21:"ndebele setentrionâl";s:2:"nd";s:12:"noard-ndbele";s:2:"nd";s:24:"ndeibéilis an tuaiscirt";s:2:"nd";s:17:"ndebele thuathach";s:2:"nd";s:16:"ndebele do norte";s:2:"nd";s:22:"nord-ndebele-schpraach";s:2:"nd";s:13:"ndebele utara";s:2:"nd";s:15:"norður-ndebele";s:2:"nd";s:16:"ndebele del nord";s:2:"nd";s:12:"nood-ndebele";s:2:"nd";s:20:"nord-ndebele-sprooch";s:2:"nd";s:18:"ndebele, ta’ fuq";s:2:"nd";s:12:"nord-ndebele";s:2:"nd";s:18:"ndebele północny";s:2:"nd";s:16:"ndebele dal nord";s:2:"nd";s:15:"ndebele de nord";s:2:"nd";s:19:"ndebelishte veriore";s:2:"nd";s:6:"ngumba";s:3:"nmg";s:6:"n’ko";s:3:"nqo";s:3:"nqo";s:3:"nqo";s:3:"nko";s:3:"nqo";s:4:"n-ko";s:3:"nqo";s:5:"nʼko";s:3:"nqo";s:4:"nkoo";s:3:"nqo";s:9:"n’koera";s:3:"nqo";s:7:"n’kó";s:3:"nqo";s:4:"nkå";s:3:"nqo";s:7:"nkoisht";s:3:"nqo";s:5:"n-kå";s:3:"nqo";s:8:"nqoancha";s:3:"nqo";s:15:"ndebele del sur";s:2:"nr";s:13:"ndebele ar su";s:2:"nr";s:18:"ndebele meridional";s:2:"nr";s:24:"ndebele (jižní afrika)";s:2:"nr";s:15:"ndebele deheuol";s:2:"nr";s:17:"ndébélé du sud";s:2:"nr";s:23:"ndeibéilis an deiscirt";s:2:"nr";s:16:"ndebele dheasach";s:2:"nr";s:15:"ndebele selatan";s:2:"nr";s:15:"ndebele del sud";s:2:"nr";s:18:"ndebele, t’isfel";s:2:"nr";s:19:"ndebele południowy";s:2:"nr";s:14:"ndebele do sul";s:2:"nr";s:15:"ndebele dal sid";s:2:"nr";s:14:"ndebele de sud";s:2:"nr";s:37:"దక్షిణ దెబెలె";s:2:"nr";s:4:"nuer";s:3:"nus";s:10:"nuerština";s:3:"nus";s:7:"nŵereg";s:3:"nus";s:7:"nuergbe";s:3:"nus";s:5:"nueri";s:3:"nus";s:7:"nuerera";s:3:"nus";s:5:"núer";s:3:"nus";s:6:"nuerų";s:3:"nus";s:5:"nueru";s:3:"nus";s:11:"nuerščina";s:3:"nus";s:8:"nuerisht";s:3:"nus";s:7:"noyrcha";s:3:"nus";s:8:"nyankole";s:3:"nyn";s:7:"nyankol";s:3:"nyn";s:8:"njankole";s:3:"nyn";s:8:"niancole";s:3:"nyn";s:5:"nkole";s:3:"nyn";s:9:"nyankolé";s:3:"nyn";s:9:"niankolų";s:3:"nyn";s:11:"niankolisht";s:3:"nyn";s:10:"nyankolcha";s:3:"nyn";s:16:"nuortalašgiella";s:3:"sms";s:12:"naməlum dil";s:3:"und";s:30:"nepoznati ili nevažeći jezik";s:3:"und";s:15:"neznámý jazyk";s:3:"und";s:13:"njeznata rěc";s:3:"und";s:15:"nekonata lingvo";s:3:"und";s:15:"nepoznati jezik";s:3:"und";s:14:"njeznata rěč";s:3:"und";s:15:"nežinoma kalba";s:3:"und";s:16:"nezināma valoda";s:3:"und";s:15:"nieznany język";s:3:"und";s:29:"nepoznat ili nevažeći jezik";s:3:"und";s:14:"neznámy jazyk";s:3:"und";s:27:"neznan ali neveljaven jezik";s:3:"und";s:13:"nomaʼlum til";s:3:"und";s:31:"ngôn ngữ không xác định";s:3:"und";s:21:"no linguistic content";s:3:"zxx";s:11:"nelingvaĵo";s:3:"zxx";s:27:"nincs nyelvészeti tartalom";s:3:"zxx";s:28:"nessun contenuto linguistico";s:3:"zxx";s:22:"nėra kalbinio turinio";s:3:"zxx";s:27:"nagins cuntegns linguistics";s:3:"zxx";s:29:"nuk ka përmbajtje gjuhësore";s:3:"zxx";s:42:"іспанская (лацінаамер.)";s:6:"es-419";s:33:"іспанська (Європа)";s:5:"es-es";s:34:"దక్షిణ ఆల్టై";s:3:"alt";s:5:"nkosi";s:3:"bss";s:17:"neerlandés mediu";s:3:"dum";s:17:"nederlandeg krenn";s:3:"dum";s:18:"neerlandès mitjà";s:3:"dum";s:20:"neerlandés medieval";s:3:"dum";s:19:"nizozemski, srednji";s:3:"dum";s:25:"njemački, srednji visoki";s:3:"gmh";s:16:"ібанська";s:3:"iba";s:25:"іудео-перська";s:3:"jpr";s:27:"іудео-арабська";s:3:"jrb";s:21:"norsunluurannikonkoro";s:3:"kfo";s:7:"naurski";s:3:"kos";s:4:"nias";s:3:"nia";s:9:"nyas dili";s:3:"nia";s:12:"nias-sprache";s:3:"nia";s:5:"niasi";s:3:"nia";s:14:"nias-schpraach";s:3:"nia";s:5:"nías";s:3:"nia";s:12:"nias-sprooch";s:3:"nia";s:5:"njasu";s:3:"nia";s:5:"nijas";s:3:"nia";s:12:"niasánčina";s:3:"nia";s:10:"niaščina";s:3:"nia";s:5:"nogai";s:3:"nog";s:10:"noqay dili";s:3:"nog";s:5:"nogay";s:3:"nog";s:11:"nogajština";s:3:"nog";s:6:"nogaï";s:3:"nog";s:8:"nogaisch";s:3:"nog";s:8:"nogajski";s:3:"nog";s:5:"nogaj";s:3:"nog";s:7:"nógaí";s:3:"nog";s:5:"nogų";s:3:"nog";s:6:"nogaju";s:3:"nog";s:10:"nogajčina";s:3:"nog";s:12:"nogajščina";s:3:"nog";s:7:"nogayca";s:3:"nog";s:15:"noruegu antiguu";s:3:"non";s:13:"nòrdic antic";s:3:"non";s:21:"norština historická";s:3:"non";s:16:"nórdico antiguo";s:3:"non";s:10:"norse kuno";s:3:"non";s:8:"norræna";s:3:"non";s:12:"norse antico";s:3:"non";s:5:"norsu";s:3:"non";s:10:"norse, old";s:3:"non";s:16:"nórdico arcaico";s:3:"non";s:11:"nordic vegl";s:3:"non";s:14:"nordică veche";s:3:"non";s:15:"newari clásicu";s:3:"nwc";s:13:"newari klasel";s:3:"nwc";s:15:"newari clàssic";s:3:"nwc";s:23:"newarština (klasická)";s:3:"nwc";s:15:"newari clásico";s:3:"nwc";s:17:"newarî classique";s:3:"nwc";s:13:"newari klasik";s:3:"nwc";s:15:"newari classico";s:3:"nwc";s:18:"newarski klasyczny";s:3:"nwc";s:16:"newari clássico";s:3:"nwc";s:14:"newari classic";s:3:"nwc";s:15:"newari clasică";s:3:"nwc";s:8:"nyamwezi";s:3:"nym";s:13:"nyamvezi dili";s:3:"nym";s:8:"njamvezi";s:3:"nym";s:8:"nyamwesi";s:3:"nym";s:8:"niamwezi";s:3:"nym";s:16:"nyamwezi-sprache";s:3:"nym";s:8:"njamvesi";s:3:"nym";s:18:"nyamwezi-schpraach";s:3:"nym";s:9:"nyamvézi";s:3:"nym";s:9:"njamvesí";s:3:"nym";s:16:"nyamwezi-sprooch";s:3:"nym";s:8:"niamvezi";s:3:"nym";s:9:"njamweżi";s:3:"nym";s:13:"njamveščina";s:3:"nym";s:8:"nyamvezi";s:3:"nym";s:5:"nyoro";s:3:"nyo";s:11:"niyoro dili";s:3:"nyo";s:5:"njoro";s:3:"nyo";s:5:"nioro";s:3:"nyo";s:11:"nyoro sprog";s:3:"nyo";s:6:"nyoró";s:3:"nyo";s:7:"njóró";s:3:"nyo";s:5:"nzima";s:3:"nzi";s:11:"nizima dili";s:3:"nzi";s:5:"nzema";s:3:"nzi";s:6:"nzimeg";s:3:"nzi";s:6:"nsíma";s:3:"nzi";s:5:"nzemu";s:3:"nzi";s:6:"nżima";s:3:"nzi";s:7:"ngambay";s:3:"sba";s:9:"ngambeieg";s:3:"sba";s:7:"ngembay";s:3:"sba";s:7:"ngambai";s:3:"sba";s:9:"ngambajų";s:3:"sba";s:8:"ngambeju";s:3:"sba";s:17:"niyasa tonga dili";s:3:"tog";s:11:"nyasa tonga";s:3:"tog";s:11:"njasa tonga";s:3:"tog";s:14:"nyasa tongansk";s:3:"tog";s:15:"nyasa del tonga";s:3:"tog";s:12:"niasa tongos";s:3:"tog";s:12:"njasas tongu";s:3:"tog";s:14:"nyasa-tongansk";s:3:"tog";s:14:"nyasatonganska";s:3:"tog";s:12:"ібібіо";s:3:"ibb";s:9:"ngiemboon";s:3:"nnh";s:12:"ngiemboongbe";s:3:"nnh";s:10:"ngiembooni";s:3:"nnh";s:11:"ngiembūnų";s:3:"nnh";s:10:"ngjembūnu";s:3:"nnh";s:18:"němčina (walser)";s:3:"wae";s:9:"nheengatu";s:3:"yrl";s:10:"nheengatou";s:3:"yrl";s:8:"njengatu";s:3:"yrl";s:8:"nhengatu";s:3:"yrl";s:26:"nigerkordofaansche spraken";s:3:"nic";s:25:"niger-kordofanijski jezik";s:3:"nic";s:16:"nuubsche spraken";s:3:"nub";s:14:"nubijski jezik";s:3:"nub";s:24:"nilosaharaansche spraken";s:3:"ssa";s:19:"nilo-saharski jezik";s:3:"ssa";}i:356;a:15:{s:9:"크리어";s:2:"cr";s:43:"크리민 터키어; 크리민 타타르어";s:3:"crh";s:18:"ജർമ്മൻ";s:2:"de";s:12:"디베히어";s:2:"dv";s:18:"크로아티아어";s:2:"hr";s:27:"ജപ്പാനീസ്";s:2:"ja";s:24:"ജാവാനീസ്";s:2:"jv";s:21:"ജോർജിയൻ";s:2:"ka";s:12:"크리크어";s:3:"mus";s:12:"크리올어";s:3:"kea";s:15:"크와시오어";s:3:"nmg";s:40:"ജൂഡിയോ-പേർഷ്യൻ";s:3:"jpr";s:37:"ജൂഡിയോ-അറബിക്";s:3:"jrb";s:12:"ജ്ജു";s:3:"kaj";s:12:"크펠레어";s:3:"kpe";}i:811;a:12:{s:12:"克里族文";s:2:"cr";s:9:"克裡文";s:2:"cr";s:24:"克里米亚土耳其文";s:3:"crh";s:69:"克里米亞半島的土耳其文;克里米亞半島的塔塔爾文";s:3:"crh";s:15:"克罗地亚文";s:2:"hr";s:18:"克羅埃西亞文";s:2:"hr";s:15:"克什米尔文";s:2:"ks";s:12:"克里克文";s:3:"mus";s:30:"克里奧文(模里西斯)";s:3:"mfe";s:12:"克林贡文";s:3:"tlh";s:12:"克林貢文";s:3:"tlh";s:12:"克佩列文";s:3:"kpe";}i:327;a:36:{s:43:"ყირიმულ-თურქული";s:3:"crh";s:15:"ग्रीक";s:2:"el";s:18:"गागौज़";s:3:"gag";s:18:"गागाउझ";s:3:"gag";s:15:"गगाउज";s:3:"gag";s:24:"गैलिशियन";s:2:"gl";s:24:"गॅलिशियन";s:2:"gl";s:27:"गलिसियाली";s:2:"gl";s:21:"गुआरानी";s:2:"gn";s:18:"गुआरनी";s:2:"gn";s:21:"गुजरानी";s:2:"gn";s:15:"गॉथिक";s:3:"got";s:21:"गुजराती";s:2:"gu";s:39:"ყარაყალფახური";s:3:"kaa";s:30:"ყაბარდოული";s:3:"kbd";s:24:"ყაზახური";s:2:"kk";s:33:"ग्रीनलैंडिक";s:2:"kl";s:52:"ყარაჩაულ-ბალყარული";s:3:"krc";s:27:"ყირგიზული";s:2:"ky";s:15:"गांडा";s:2:"lg";s:18:"गान्डा";s:2:"lg";s:27:"ყალმუხური";s:3:"xal";s:6:"गा";s:3:"gaa";s:12:"गुसी";s:3:"guz";s:9:"गसी";s:3:"guz";s:18:"गोम्बा";s:3:"jgo";s:12:"गीज़";s:3:"gez";s:9:"गीझ";s:3:"gez";s:12:"गायो";s:3:"gay";s:18:"ग्बाया";s:3:"gba";s:27:"गिल्बरतीस";s:3:"gil";s:15:"गाँडी";s:3:"gon";s:30:"गोरोन्तालो";s:3:"gor";s:18:"ग्रेबो";s:3:"grb";s:24:"ग्विच’इन";s:3:"gwi";s:24:"ყუმუხური";s:3:"kum";}i:909;a:1:{s:15:"ཅེཀ་ཁ";s:2:"cs";}i:401;a:3:{s:14:"չեխերեն";s:2:"cs";s:14:"չինարեն";s:2:"zh";s:8:"չիգա";s:3:"cgg";}i:228;a:15:{s:12:"ಜೆಕ್";s:2:"cs";s:18:"ಜರ್ಮನ್";s:2:"de";s:24:"ಜೋಂಗ್‌ಖಾ";s:2:"dz";s:21:"ಜಾಪನೀಸ್";s:2:"ja";s:24:"ಜಾವಾನೀಸ್";s:2:"jv";s:27:"ಜಾರ್ಜಿಯನ್";s:2:"ka";s:12:"ಜುಲು";s:2:"zu";s:15:"ಜರ್ಮಾ";s:3:"dje";s:28:"ಜೊಲ-ಫೊನ್ಯಿ";s:3:"dyo";s:43:"ಜೂಡಿಯೋ-ಪರ್ಶಿಯನ್";s:3:"jpr";s:40:"ಜೂಡಿಯೋ-ಅರೇಬಿಕ್";s:3:"jrb";s:12:"ಜ್ಜು";s:3:"kaj";s:12:"ಜೀಮಾ";s:3:"nzi";s:12:"제나가어";s:3:"zen";s:12:"ಜಾಝಾ";s:3:"zza";}i:713;a:36:{s:21:"ກາຊູບຽນ";s:3:"csb";s:12:"ກຣີກ";s:2:"el";s:21:"ກາກາອຸຊ";s:3:"gag";s:21:"ກາລິຊຽນ";s:2:"gl";s:21:"ກົວຣານີ";s:2:"gn";s:18:"ກອດຮິກ";s:3:"got";s:24:"ກູຈາຣາຕິ";s:2:"gu";s:31:"ກາຣາ-ການປາກ";s:3:"kaa";s:18:"ກາໄບລ໌";s:3:"kab";s:21:"ກາບາດຽນ";s:3:"kbd";s:21:"ກວນຍາມາ";s:2:"kj";s:30:"ກຣີນແລນລິດ";s:2:"kl";s:34:"ກາຣາໄຊ-ບານກາ";s:3:"krc";s:15:"莱兹依昂文";s:3:"lez";s:18:"ການມິກ";s:3:"xal";s:24:"ກວາງຕຸ້ງ";s:3:"yue";s:6:"ກາ";s:3:"gaa";s:12:"ກູຊິ";s:3:"guz";s:15:"ກາມບາ";s:3:"kam";s:21:"ກອນການີ";s:3:"kok";s:15:"ກູຣູກ";s:3:"kru";s:21:"ກວາຊີໂອ";s:3:"nmg";s:9:"ቩንጆ";s:3:"vun";s:6:"ກີ";s:3:"gez";s:12:"悉达摩文";s:3:"sid";s:12:"ກາໂຢ";s:3:"gay";s:30:"ກິນເບີເທັດ";s:3:"gil";s:15:"ກອນດີ";s:3:"gon";s:9:"岡德文";s:3:"gon";s:15:"ກຣີໂບ";s:3:"grb";s:15:"ກາຊິນ";s:3:"kac";s:12:"ກະວີ";s:3:"kaw";s:15:"ກາແປຣ";s:3:"kpe";s:21:"ກາເຣລຽນ";s:3:"krl";s:12:"ກຳເບ";s:3:"sba";s:9:"ກົມ";s:3:"bkm";}i:917;a:10:{s:41:"Εκκλησιαστικά Σλαβικά";s:2:"cu";s:16:"Ελληνικά";s:2:"el";s:18:"Εσπεράντο";s:2:"eo";s:16:"Εσθονικά";s:2:"et";s:35:"Ελβετικά Γερμανικά";s:3:"gsw";s:14:"Εβραϊκά";s:2:"he";s:8:"Εφίκ";s:3:"efi";s:16:"Εκατζούκ";s:3:"eka";s:14:"Ελαμάιτ";s:3:"elx";s:16:"Εγουόντο";s:3:"ewo";}i:945;a:6:{s:18:"教会スラブ語";s:2:"cu";s:9:"蒙古文";s:2:"mn";s:15:"ፑንጃብኛ";s:2:"pa";s:15:"ፑንጃቢኛ";s:2:"pa";s:9:"蒙当文";s:3:"mua";s:9:"蒙當文";s:3:"mua";}i:368;a:22:{s:19:"교회 슬라브어";s:2:"cu";s:49:"നോർത്തേൻ ഫ്രിഷ്യൻ";s:3:"frr";s:12:"നൗറു";s:2:"na";s:39:"നെപ്പോളിറ്റാൻ";s:3:"nap";s:49:"നോർവീജിയൻ ബുക്‌മൽ";s:2:"nb";s:24:"നേപ്പാളി";s:2:"ne";s:18:"നേവാരി";s:3:"new";s:21:"ന്യുവാൻ";s:3:"niu";s:58:"നോർവീജിയൻ നൈനോർക്‌സ്";s:2:"nn";s:27:"നോർവീജിയൻ";s:2:"no";s:37:"നോർത്തേൻ സോതോ";s:3:"nso";s:15:"നവാഹൊ";s:2:"nv";s:15:"ന്യൻജ";s:2:"ny";s:9:"നാമ";s:3:"naq";s:37:"നോർത്ത് ഡെബിൾ";s:2:"nd";s:15:"നുവേർ";s:3:"nus";s:24:"ന്യാൻകോൾ";s:3:"nyn";s:18:"നിയാസ്";s:3:"nia";s:12:"നോഗൈ";s:3:"nog";s:27:"ന്യാംവേസി";s:3:"nym";s:18:"ന്യോറോ";s:3:"nyo";s:34:"ന്യാസാ ഡോങ്ക";s:3:"tog";}i:447;a:14:{s:18:"宗教斯拉夫文";s:2:"cu";s:9:"宗卡文";s:2:"dz";s:12:"এয়ে";s:2:"ee";s:33:"এস্পেরান্তো";s:2:"eo";s:27:"এস্তোনীয়";s:2:"et";s:21:"এরজিয়া";s:3:"myv";s:27:"এন্দোঙ্গা";s:2:"ng";s:9:"宗加文";s:2:"ts";s:12:"এঘেম";s:3:"agq";s:15:"এম্বু";s:3:"ebu";s:12:"এফিক";s:3:"efi";s:15:"এন’কো";s:3:"nqo";s:21:"এলামাইট";s:3:"elx";s:22:"এন্.জিমা";s:3:"nzi";}i:935;a:17:{s:12:"Χουβάς";s:2:"cv";s:12:"Χάουσα";s:2:"ha";s:20:"Χαβανεζικά";s:3:"haw";s:10:"Χίντι";s:2:"hi";s:22:"Χιλιγκαγιόν";s:3:"hil";s:19:"Χίρι Μότου";s:2:"ho";s:12:"Χερέρο";s:2:"hz";s:30:"ཟུ་ལུ་སྐད།";s:2:"zu";s:21:"ཟུ་ལུ་ཁ";s:2:"zu";s:12:"Χιτίτε";s:3:"hit";s:58:"Χωρίς γλωσσολογικό περιεχόμενο";s:3:"zxx";s:12:"Χάιντα";s:3:"hai";s:12:"Χμονγκ";s:3:"hmn";s:10:"Χούπα";s:3:"hup";s:36:"ཟེ་ན་གཱ་སྐད།";s:3:"zen";s:30:"ཟུ་ནི་སྐད།";s:3:"zun";s:27:"ཟ་ཟཱ་སྐད།";s:3:"zza";}i:628;a:2:{s:12:"추바시어";s:2:"cv";s:9:"추크어";s:3:"chk";}i:74;a:59:{s:18:"валійская";s:2:"cy";s:12:"валлий";s:2:"cy";s:12:"велшки";s:2:"cy";s:20:"валлийский";s:2:"cy";s:20:"валлійська";s:2:"cy";s:51:"верхньонімецька (Швейцарія)";s:5:"de-ch";s:28:"верхнелужицкий";s:3:"hsb";s:30:"верхньолужицька";s:3:"hsb";s:20:"венгерская";s:2:"hu";s:18:"вугорская";s:2:"hu";s:12:"венгер";s:2:"hu";s:18:"венгериаг";s:2:"hu";s:20:"венгерский";s:2:"hu";s:20:"вірменська";s:2:"hy";s:12:"влашки";s:3:"rup";s:10:"венда";s:2:"ve";s:16:"венетски";s:3:"vec";s:12:"вепшки";s:3:"vep";s:23:"в’етнамская";s:2:"vi";s:22:"віетнамская";s:2:"vi";s:20:"виетнамски";s:2:"vi";s:14:"вьетнам";s:2:"vi";s:18:"вьетнамча";s:2:"vi";s:22:"вьетнамский";s:2:"vi";s:22:"вијетнамски";s:2:"vi";s:22:"вʼєтнамська";s:2:"vi";s:14:"валапюк";s:2:"vo";s:14:"волапюк";s:2:"vo";s:14:"волапик";s:2:"vo";s:17:"волап’юк";s:2:"vo";s:10:"вотик";s:3:"vot";s:12:"вотски";s:3:"vot";s:14:"водский";s:3:"vot";s:14:"водська";s:3:"vot";s:8:"виру";s:3:"vro";s:16:"валонски";s:2:"wa";s:20:"валлонский";s:2:"wa";s:20:"валлонська";s:2:"wa";s:10:"варай";s:3:"war";s:16:"варајски";s:3:"war";s:10:"волоф";s:2:"wo";s:16:"волофски";s:2:"wo";s:4:"ву";s:3:"wuu";s:6:"ваи";s:3:"vai";s:6:"вай";s:3:"vai";s:12:"вайиче";s:3:"vai";s:6:"вај";s:3:"vai";s:6:"ваї";s:3:"vai";s:12:"вунджо";s:3:"vun";s:14:"вунжочо";s:3:"vun";s:10:"вунџо";s:3:"vun";s:10:"вунжо";s:3:"vun";s:10:"вуньо";s:3:"vun";s:35:"восточный фризский";s:3:"frs";s:12:"валамо";s:3:"wal";s:12:"воламо";s:3:"wal";s:8:"вашо";s:3:"was";s:12:"валсер";s:3:"wae";s:18:"валисский";s:3:"wae";}i:451;a:9:{s:18:"ওয়েলশ";s:2:"cy";s:21:"ওড়িয়া";s:2:"or";s:18:"ওসেটিক";s:2:"os";s:21:"ওয়ালুন";s:2:"wa";s:18:"ওয়ারে";s:3:"war";s:24:"ওজিবওয়া";s:2:"oj";s:12:"ওসেজ";s:3:"osa";s:24:"ওয়ালামো";s:3:"wal";s:18:"ওয়াশো";s:3:"was";}i:933;a:4:{s:18:"ཝེལཤ་ཁ";s:2:"cy";s:24:"ཝི་གུར་ཁ";s:2:"ug";s:42:"ཝུའུ་ཏུའུ་སྐད།";s:2:"ur";s:24:"ཝོ་ལོཕ་ཁ";s:2:"wo";}i:927;a:17:{s:14:"Ουαλικά";s:2:"cy";s:16:"Ουγγρικά";s:2:"hu";s:18:"Ολλανδικά";s:2:"nl";s:20:"Οκσιτανικά";s:2:"oc";s:10:"Ορόμο";s:2:"om";s:12:"Ορίγια";s:2:"or";s:14:"Οσετικά";s:2:"os";s:18:"Ουντμούρτ";s:3:"udm";s:20:"Ουιγουρικά";s:2:"ug";s:18:"Ουκρανικά";s:2:"uk";s:14:"Ουρντού";s:2:"ur";s:20:"Ουζμπεκικά";s:2:"uz";s:18:"Οζιβίγουα";s:2:"oj";s:8:"Οσάζ";s:3:"osa";s:35:"Οθωμανικά Τουρκικά";s:3:"ota";s:20:"Ουγκαρίτικ";s:3:"uga";s:20:"Ουμπούντου";s:3:"umb";}i:608;a:45:{s:10:"ویلزی";s:2:"cy";s:10:"ویٚلش";s:2:"cy";s:10:"ويلشي";s:2:"cy";s:8:"ویلش";s:2:"cy";s:18:"ธิเวหิ";s:2:"dv";s:15:"ሀንጋሪኛ";s:2:"hu";s:21:"ਰੋਮਾਂਸ਼";s:2:"rm";s:15:"ਰੁੰਡੀ";s:2:"rn";s:24:"ਰੋਮਾਨੀਆਈ";s:2:"ro";s:12:"ਰੂਸੀ";s:2:"ru";s:12:"وندایی";s:2:"ve";s:10:"ویندا";s:2:"ve";s:10:"وینڈا";s:2:"ve";s:6:"وپس";s:3:"vep";s:14:"ویتنامی";s:2:"vi";s:22:"وِیَتنَمیٖز";s:2:"vi";s:14:"وېتنامي";s:2:"vi";s:12:"ولاپوک";s:2:"vo";s:14:"وولَپُک";s:2:"vo";s:6:"وتی";s:3:"vot";s:10:"ووتِک";s:3:"vot";s:12:"والونی";s:2:"wa";s:12:"وَلوٗن";s:2:"wa";s:12:"وارایی";s:3:"war";s:10:"وَریے";s:3:"war";s:10:"ولوفی";s:2:"wo";s:10:"وولوف";s:2:"wo";s:4:"وو";s:3:"wuu";s:31:"ਰਵਾਇਤੀ ਚੀਨੀ";s:7:"zh-hant";s:21:"واریاہ زبان";s:3:"mul";s:15:"ਰੋਮਬੋ";s:3:"rof";s:9:"ਰਵਾ";s:3:"rwk";s:10:"ویایی";s:3:"vai";s:6:"واے";s:3:"vai";s:8:"وائی";s:3:"vai";s:8:"ونجو";s:3:"vun";s:29:"وَستی پُرتُگالی";s:3:"dum";s:31:"وَسطی اَنٛگریٖزۍ";s:3:"enm";s:21:"وسطی فریٚنچ";s:3:"frm";s:30:"وَسطی ہاے جٔرمَن";s:3:"gmh";s:21:"وَستی ایرِش";s:3:"mga";s:24:"ਰਾਜਸਥਾਨੀ";s:3:"raj";s:12:"والامو";s:3:"wal";s:12:"واشویی";s:3:"was";s:8:"واشو";s:3:"was";}i:741;a:14:{s:15:"વેલ્શ";s:2:"cy";s:15:"ຝຣັ່ງ";s:2:"fr";s:18:"વેન્દા";s:2:"ve";s:30:"વિયેતનામીસ";s:2:"vi";s:21:"વોલાપુક";s:2:"vo";s:15:"વોટિક";s:3:"vot";s:15:"વાલૂન";s:2:"wa";s:12:"વારે";s:3:"war";s:15:"વોલોફ";s:2:"wo";s:9:"વાઇ";s:3:"vai";s:18:"વુન્જો";s:3:"vun";s:12:"વ્રજ";s:3:"bra";s:15:"વલામો";s:3:"wal";s:12:"વાશો";s:3:"was";}i:493;a:16:{s:10:"ולשית";s:2:"cy";s:14:"וועלשיש";s:2:"cy";s:15:"ネパール語";s:2:"ne";s:15:"ネワール語";s:3:"new";s:10:"וונדה";s:2:"ve";s:16:"ויאטנמית";s:2:"vi";s:26:"וויעטנאַמעזיש";s:2:"vi";s:20:"וואלאַפּוק";s:2:"vo";s:10:"ווטיק";s:3:"vot";s:12:"וואלון";s:2:"wa";s:10:"ווראי";s:3:"war";s:6:"ואי";s:3:"vai";s:12:"וונג׳ו";s:3:"vun";s:12:"וולאמו";s:3:"wal";s:10:"וואשו";s:3:"was";s:12:"וואלסר";s:3:"wae";}i:400;a:7:{s:18:"ուելսերեն";s:2:"cy";s:9:"풀라어";s:2:"ff";s:12:"Ɛndonezikan";s:2:"id";s:22:"ույղուրերեն";s:2:"ug";s:22:"ուկրաիներեն";s:2:"uk";s:12:"ուրդու";s:2:"ur";s:20:"ուզբեկերեն";s:2:"uz";}i:454;a:12:{s:18:"ウェールズ語";s:2:"cy";s:12:"খমের";s:2:"km";s:18:"ウドムルト語";s:3:"udm";s:15:"ウイグル語";s:2:"ug";s:18:"ウクライナ語";s:2:"uk";s:18:"ウルドゥー語";s:2:"ur";s:15:"ウズベク語";s:2:"uz";s:15:"ウォロフ語";s:2:"wo";s:12:"খাশি";s:3:"kha";s:21:"খোটানিজ";s:3:"kho";s:15:"ウガリト語";s:3:"uga";s:18:"ウォライタ語";s:3:"wal";}i:323;a:17:{s:21:"უელსური";s:2:"cy";s:21:"უნგრული";s:2:"hu";s:18:"ओसीटान";s:2:"oc";s:15:"ओरोमो";s:2:"om";s:15:"ओरिया";s:2:"or";s:24:"ओस्सेटिक";s:2:"os";s:27:"უდმურტული";s:3:"udm";s:24:"უიღურული";s:2:"ug";s:27:"უკრაინული";s:2:"uk";s:12:"ურდუ";s:2:"ur";s:24:"უზბეკური";s:2:"uz";s:18:"ओलापुक";s:2:"vo";s:28:"უცნობი ენა";s:3:"und";s:21:"ओजिब्वा";s:2:"oj";s:12:"ओसेज";s:3:"osa";s:40:"ओटोमान तुर्किश";s:3:"ota";s:27:"უგარითული";s:3:"uga";}i:44;a:19:{s:9:"វេល";s:2:"cy";s:22:"Даатскайдыы";s:2:"da";s:14:"Даниягӣ";s:2:"da";s:20:"Дивехијски";s:2:"dv";s:22:"Дьоппуоннуу";s:2:"ja";s:12:"팜팡가어";s:3:"pam";s:18:"乌德穆尔特文";s:3:"udm";s:12:"乌克兰文";s:2:"uk";s:12:"乌尔都文";s:2:"ur";s:15:"乌兹别克文";s:2:"uz";s:18:"វៀតណាម";s:2:"vi";s:21:"វូឡុហ្វ";s:2:"wo";s:12:"Дакота";s:3:"dak";s:12:"Даргва";s:3:"dar";s:14:"Делавер";s:3:"del";s:12:"Догриб";s:3:"dgr";s:10:"Динка";s:3:"din";s:10:"Догри";s:3:"doi";s:15:"乌加里特文";s:3:"uga";}i:253;a:12:{s:18:"ವೆಲ್ಶ್";s:2:"cy";s:15:"ವೆಂಡಾ";s:2:"ve";s:36:"ವಿಯೇಟ್ನಾಮೀಸ್";s:2:"vi";s:24:"ವೋಲಾಪುಕ್";s:2:"vo";s:18:"ವೋಟಿಕ್";s:3:"vot";s:18:"ವಾಲೂನ್";s:2:"wa";s:15:"ವರಾಯ್";s:3:"war";s:18:"ವೋಲೋಫ್";s:2:"wo";s:12:"ವಾಯಿ";s:3:"vai";s:15:"ವುಂಜೊ";s:3:"vun";s:15:"ವಲಾಮೋ";s:3:"wal";s:12:"ವಾಷೋ";s:3:"was";}i:381;a:24:{s:15:"വെൽഷ്";s:2:"cy";s:18:"եբրայերեն";s:2:"he";s:18:"依奴皮维克文";s:2:"ik";s:18:"依奴皮維克文";s:2:"ik";s:22:"Žemutinės vokietijos";s:3:"nds";s:28:"വടക്കൻ സമി";s:2:"se";s:15:"വെന്ദ";s:2:"ve";s:39:"വിയറ്റ്നാമീസ്";s:2:"vi";s:24:"വോളാപുക്";s:2:"vo";s:24:"വോട്ടിക്";s:3:"vot";s:18:"വല്ലൂൺ";s:2:"wa";s:18:"വാരേയ്";s:3:"war";s:18:"വൊളോഫ്";s:2:"wo";s:9:"依地文";s:2:"yi";s:25:"Žaliojo kyšulio kreolų";s:3:"kea";s:6:"വൈ";s:3:"vai";s:18:"വുഞ്ജോ";s:3:"vun";s:37:"եվրոպական իսպաներեն";s:5:"es-es";s:45:"եվրոպական պորտուգալերեն";s:5:"pt-pt";s:12:"依汪都文";s:3:"ewo";s:4:"Žju";s:3:"kaj";s:12:"വലമൊ";s:3:"wal";s:12:"വാഷൊ";s:3:"was";s:15:"വാൾസർ";s:3:"wae";}i:125;a:19:{s:9:"ဝေလ";s:2:"cy";s:18:"వెల్ష్";s:2:"cy";s:6:"ဝီ";s:2:"ee";s:12:"ဝီဂါ";s:2:"ug";s:15:"వెండా";s:2:"ve";s:33:"వియత్నామీస్";s:2:"vi";s:24:"వోలాపుక్";s:2:"vo";s:18:"వోటిక్";s:3:"vot";s:18:"వాలూన్";s:2:"wa";s:12:"వారే";s:3:"war";s:21:"ဝူလိုဖ်";s:2:"wo";s:18:"వొలాఫ్";s:2:"wo";s:9:"贝纳文";s:3:"bez";s:21:"ဝါဆီအို";s:3:"nmg";s:6:"ဝါ";s:3:"rwk";s:12:"వాయి";s:3:"vai";s:15:"వుంజొ";s:3:"vun";s:18:"వాలామో";s:3:"wal";s:12:"వాషో";s:3:"was";}i:929;a:17:{s:15:"ୱେଲ୍ସ";s:2:"cy";s:16:"Ρομανικά";s:2:"rm";s:12:"Ρούντι";s:2:"rn";s:18:"Ρουμανικά";s:2:"ro";s:12:"Ρωσικά";s:2:"ru";s:18:"ୱାଲୁନ୍";s:2:"wa";s:12:"ୱାରୈ";s:3:"war";s:15:"ୱୋଲଫ୍";s:2:"wo";s:10:"Ρόμπο";s:3:"rof";s:8:"Ρουά";s:3:"rwk";s:18:"ୱୌସେଜ୍";s:3:"osa";s:18:"Ραζασθάνι";s:3:"raj";s:16:"Ραπανούι";s:3:"rap";s:22:"Ραροτονγκάν";s:3:"rar";s:12:"Ρομανί";s:3:"rom";s:15:"ୱାଲମୋ";s:3:"wal";s:12:"ୱାସୋ";s:3:"was";}i:613;a:10:{s:15:"ਵੈਲਜ਼";s:2:"cy";s:24:"ฝรั่งเศส";s:2:"fr";s:42:"ฝรั่งเศสกาฌ็อง";s:3:"frc";s:24:"ਵੀਅਤਨਾਮੀ";s:2:"vi";s:15:"ਵੋਲੋਫ";s:2:"wo";s:9:"ਵਾਈ";s:3:"vai";s:15:"ਵੂੰਜੋ";s:3:"vun";s:39:"ฝรั่งเศส (สวิส)";s:5:"fr-ch";s:36:"ฝรั่งเศสกลาง";s:3:"frm";s:39:"ฝรั่งเศสโบราณ";s:3:"fro";}i:739;a:21:{s:12:"ۋېلشچە";s:2:"cy";s:21:"ປັນຈາບີ";s:2:"pa";s:30:"ປານກາຊີມານ";s:3:"pag";s:24:"ປາມປານກາ";s:3:"pam";s:36:"ປາມເປຍເມັນໂທ";s:3:"pap";s:12:"ປາລີ";s:2:"pi";s:15:"ປາສໂຕ";s:2:"ps";s:21:"ປໍຕູກີສ";s:2:"pt";s:14:"ۋېنداچە";s:2:"ve";s:20:"ۋىيېتنامچە";s:2:"vi";s:18:"ۋولاپۇكچە";s:2:"vo";s:12:"ۋوتېچە";s:3:"vot";s:16:"ۋاللۇنچە";s:2:"wa";s:14:"ۋارايچە";s:3:"war";s:14:"ۋولوفچە";s:2:"wo";s:10:"ۋايچە";s:3:"vai";s:14:"ۋۇنجوچە";s:3:"vun";s:24:"ປາລົວອານ";s:3:"pau";s:18:"ۋولايتاچە";s:3:"wal";s:12:"ۋاشوچە";s:3:"was";s:16:"ۋالسېرچە";s:3:"wae";}i:465;a:18:{s:15:"ডেনিশ";s:2:"da";s:9:"ඉව්";s:2:"ee";s:27:"ඉංග්‍රීසි";s:2:"en";s:33:"ケイジャン・フランス語";s:3:"frc";s:34:"ඉහළ සෝබියානු";s:3:"hsb";s:39:"ඉන්දුනීසියානු";s:2:"id";s:15:"ඉග්බෝ";s:2:"ig";s:15:"ඉතාලි";s:2:"it";s:33:"ඉනුක්ටිටුට්";s:2:"iu";s:12:"ケルン語";s:3:"ksh";s:9:"ডাচ";s:2:"nl";s:15:"ケチュア語";s:2:"qu";s:28:"ඉනාරි සාමි";s:3:"smn";s:18:"ডাকোটা";s:3:"dak";s:27:"ডেলাওয়ের";s:3:"del";s:15:"ডিংকা";s:3:"din";s:15:"ডিউলা";s:3:"dyu";s:12:"叙利亚文";s:3:"syr";}i:919;a:7:{s:42:"ཏེན་མག་གི་སྐད།";s:2:"da";s:33:"ཏཱ་མིལ་སྐད།";s:2:"ta";s:21:"ཏ་མིལ་ཁ";s:2:"ta";s:39:"ཏེ་ལུ་གུ་སྐད།";s:2:"te";s:30:"ཏེ་ལུ་གུ་ཁ";s:2:"te";s:21:"ཏ་ཇིཀ་ཁ";s:2:"tg";s:30:"ཏིག་རི་ཉ་ཁ";s:2:"ti";}i:916;a:5:{s:24:"ཌེ་ནིཤ་ཁ";s:2:"da";s:12:"Δανικά";s:2:"da";s:29:"Δυτικά Φριζιανά";s:2:"fy";s:12:"瓜拉尼文";s:2:"gn";s:12:"ཌཆ་ཁ";s:2:"nl";}i:583;a:33:{s:16:"دانمارکی";s:2:"da";s:14:"دانىشچە";s:2:"da";s:12:"دِویہی";s:2:"dv";s:16:"دىۋەخىچە";s:2:"dv";s:19:"دۇنيا تىلى";s:2:"eo";s:18:"ਗਾਗੌਜ਼";s:3:"gag";s:27:"ਗੈਲਿਸ਼ਿਅਨ";s:2:"gl";s:21:"ਗੁਆਰਾਨੀ";s:2:"gn";s:21:"ਗੁਜਰਾਤੀ";s:2:"gu";s:15:"ਗਾਂਡਾ";s:2:"lg";s:14:"دوآلایی";s:3:"dua";s:12:"دُوالا";s:3:"dua";s:16:"دۇئالاچە";s:3:"dua";s:10:"دوالا";s:3:"dua";s:19:"دیولا فونی";s:3:"dyo";s:12:"ਗੁਸੀ";s:3:"guz";s:16:"داکوتایی";s:3:"dak";s:16:"داكوتاچە";s:3:"dak";s:14:"دارقینی";s:3:"dar";s:12:"دَرگوا";s:3:"dar";s:18:"دارگىۋاچە";s:3:"dar";s:14:"دلاواری";s:3:"del";s:20:"دېلاۋارېچە";s:3:"del";s:12:"دوگریب";s:3:"dgr";s:16:"دوگرىبچە";s:3:"dgr";s:14:"دینکایی";s:3:"din";s:14:"دىنكاچە";s:3:"din";s:10:"دوگری";s:3:"doi";s:14:"دوگرىچە";s:3:"doi";s:16:"دایولایی";s:3:"dyu";s:16:"دىيۇلاچە";s:3:"dyu";s:16:"دازاگاچە";s:3:"dzg";s:19:"دری زرتشتی";s:3:"gbz";}i:721;a:11:{s:15:"ડેનિશ";s:2:"da";s:27:"ડ્ઝોંગ્ખા";s:2:"dz";s:18:"ડોન્ગા";s:2:"ng";s:6:"ડચ";s:2:"nl";s:18:"ቱርክመንኛ";s:2:"tk";s:12:"ቱርክኛ";s:2:"tr";s:12:"ቱርከኛ";s:2:"tr";s:12:"ቱምቡካ";s:3:"tum";s:21:"ડોગ્રિબ";s:3:"dgr";s:18:"ડોગ્રી";s:3:"doi";s:18:"ડ્યુલા";s:3:"dyu";}i:337;a:19:{s:15:"डेनिश";s:2:"da";s:15:"डॅनिश";s:2:"da";s:18:"룩셈부르크어";s:2:"lb";s:18:"डोन्गा";s:2:"ng";s:15:"डोंगा";s:2:"ng";s:6:"डच";s:2:"nl";s:30:"ഉഡ്മുർട്ട്";s:3:"udm";s:18:"ഉയ്ഘുർ";s:2:"ug";s:27:"ഉക്രേനിയൻ";s:2:"uk";s:15:"ഉറുദു";s:2:"ur";s:30:"ഉസ്‌ബെക്ക്";s:2:"uz";s:24:"डिलैवेयर";s:3:"del";s:24:"डेलॅवेयर";s:3:"del";s:21:"डोग्रिब";s:3:"dgr";s:18:"डोग्री";s:3:"doi";s:15:"डोगरी";s:3:"doi";s:18:"ड्युला";s:3:"dyu";s:30:"ഉഗറിട്ടിക്";s:3:"uga";s:24:"ഉംബുന്ദു";s:3:"umb";}i:307;a:14:{s:21:"დანიური";s:2:"da";s:18:"დივეჰი";s:2:"dv";s:48:"დასავლეთფრიზიული";s:2:"fy";s:61:"დასავლეთ გრენლანდიური";s:2:"kl";s:15:"დუალა";s:3:"dua";s:15:"დიოლა";s:3:"dyo";s:31:"დენე სულინე";s:3:"chp";s:18:"დაკოტა";s:3:"dak";s:24:"დარგუული";s:3:"dar";s:30:"დელავარული";s:3:"del";s:21:"დოგრიბი";s:3:"dgr";s:15:"დინკა";s:3:"din";s:15:"დოგრი";s:3:"doi";s:15:"დიულა";s:3:"dyu";}i:26;a:3:{s:24:"ដាណឺម៉ាក";s:2:"da";s:8:"Ђула";s:3:"dyu";s:4:"Ђу";s:3:"kaj";}i:233;a:24:{s:24:"ಡ್ಯಾನಿಶ್";s:2:"da";s:5:"éwé";s:2:"ee";s:8:"émilien";s:3:"egl";s:5:"észt";s:2:"et";s:15:"爱沙尼亚文";s:2:"et";s:8:"éuscaro";s:2:"eu";s:13:"északi fríz";s:3:"frr";s:12:"爱尔兰文";s:2:"ga";s:15:"ಡೋಂಗಾ";s:2:"ng";s:9:"ಡಚ್";s:2:"nl";s:14:"északi szotó";s:3:"nso";s:9:"écossais";s:3:"sco";s:14:"északi számi";s:2:"se";s:18:"ಡುವಾಲಾ";s:3:"dua";s:16:"égyptien ancien";s:3:"egy";s:15:"északi ndebele";s:2:"nd";s:12:"ಡಕೋಟ";s:3:"dak";s:24:"ಡೆಲಾವೇರ್";s:3:"del";s:24:"ಡೋಗ್ರಿಬ್";s:3:"dgr";s:15:"ಡಿಂಕಾ";s:3:"din";s:18:"ಡೋಗ್ರಿ";s:3:"doi";s:18:"ಡ್ಯೂಲಾ";s:3:"dyu";s:8:"élamite";s:3:"elx";s:7:"éwondo";s:3:"ewo";}i:940;a:2:{s:12:"덴마크어";s:2:"da";s:15:"ཤཱན་ཁ";s:3:"shn";}i:672;a:13:{s:10:"ڈینِش";s:2:"da";s:8:"ڈینش";s:2:"da";s:12:"ڈیویہی";s:2:"dv";s:12:"ڈونٛگا";s:2:"ng";s:6:"ڈَچ";s:2:"nl";s:4:"ڈچ";s:2:"nl";s:29:"ቀለል ያለ ቻይንኛ";s:7:"zh-hans";s:10:"ڈکوٹا";s:3:"dak";s:18:"ڈیٚلوییَر";s:3:"del";s:12:"ڈاگرِب";s:3:"dgr";s:10:"ڈِنکا";s:3:"din";s:10:"ڈوگری";s:3:"doi";s:14:"ڈِیوٗلا";s:3:"dyu";}i:361;a:36:{s:18:"ഡാനിഷ്";s:2:"da";s:12:"हौसा";s:2:"ha";s:15:"हाउसा";s:2:"ha";s:12:"हवाई";s:3:"haw";s:18:"हवाईयन";s:3:"haw";s:18:"हवाइयन";s:3:"haw";s:18:"हिब्रू";s:2:"he";s:18:"हिब्रु";s:2:"he";s:18:"हिन्दी";s:2:"hi";s:15:"हिंदी";s:2:"hi";s:24:"हिलिगेनन";s:3:"hil";s:27:"हिलीगेनॉन";s:3:"hil";s:25:"हिरी मोटू";s:2:"ho";s:25:"हिरी मॉटू";s:2:"ho";s:21:"हैतियाई";s:2:"ht";s:18:"हैतीयन";s:2:"ht";s:24:"हैटियाली";s:2:"ht";s:27:"हंगेरियाई";s:2:"hu";s:24:"हंगेरियन";s:2:"hu";s:30:"हंग्रीयाली";s:2:"hu";s:15:"हरैरो";s:2:"hz";s:15:"हरेरो";s:2:"hz";s:15:"ഡോങ്ക";s:2:"ng";s:15:"ഡച്ച്";s:2:"nl";s:15:"突尼西亞文";s:2:"tn";s:18:"हिताइत";s:3:"hit";s:24:"हिट्टिते";s:3:"hit";s:18:"ഡകോട്ട";s:3:"dak";s:18:"ഡർഗ്വാ";s:3:"dar";s:24:"ഡോഗ്രിബ്";s:3:"dgr";s:18:"ഡോഗ്രി";s:3:"doi";s:15:"ഡാസാഗ";s:3:"dzg";s:12:"हैडा";s:3:"hai";s:18:"ह्मॉंग";s:3:"hmn";s:12:"हूपा";s:3:"hup";s:21:"突尼斯阿拉伯文";s:3:"aeb";}i:849;a:12:{s:24:"ଡାନ୍ନିସ୍";s:2:"da";s:18:"ଡିଭେହୀ";s:2:"dv";s:18:"ଡୋଙ୍ଗା";s:2:"ng";s:9:"ଡଚ୍";s:2:"nl";s:12:"ዱዋላኛ";s:3:"dua";s:15:"ଡୁଆନା";s:3:"dua";s:18:"ଡାକୋଟା";s:3:"dak";s:24:"ଡାରାଗ୍ୱା";s:3:"dar";s:24:"ଡେଲାୱେର୍";s:3:"del";s:24:"ଡୋଗ୍ରିବ୍";s:3:"dgr";s:18:"ଡୋଗ୍ରୀ";s:3:"doi";s:15:"ଡୁଆଲା";s:3:"dyu";}i:673;a:1:{s:8:"ډېنش";s:2:"da";}i:497;a:25:{s:18:"ඩැනිශ්";s:2:"da";s:24:"ඩිසොන්කා";s:2:"dz";s:12:"יוונית";s:2:"el";s:23:"יוונית עתיקה";s:3:"grc";s:10:"יפנית";s:2:"ja";s:20:"יאַפּאַניש";s:2:"ja";s:14:"יאוונית";s:2:"jv";s:24:"יאַוואַנעזיש";s:2:"jv";s:18:"パンジャブ語";s:2:"pa";s:21:"パンガシナン語";s:3:"pag";s:18:"パンパンガ語";s:3:"pam";s:21:"パピアメント語";s:3:"pap";s:12:"パーリ語";s:2:"pi";s:21:"パシュトゥー語";s:2:"ps";s:12:"ייִדיש";s:2:"yi";s:10:"יידיש";s:2:"yi";s:12:"יורובה";s:2:"yo";s:15:"ඩුආලා";s:3:"dua";s:24:"יידיש־פערסיש";s:3:"jpr";s:21:"パフラヴィー語";s:3:"pal";s:12:"パラオ語";s:3:"pau";s:6:"יאו";s:3:"yao";s:12:"יאפזית";s:3:"yap";s:12:"יאנגבן";s:3:"yav";s:8:"ימבה";s:3:"ybb";}i:975;a:31:{s:18:"டேனிஷ்";s:2:"da";s:12:"凯尔特文";s:2:"kw";s:15:"டச்சு";s:2:"nl";s:18:"டெடும்";s:3:"tet";s:30:"டிக்ரின்யா";s:2:"ti";s:27:"டர்க்மென்";s:2:"tk";s:24:"டாகாலோக்";s:2:"tl";s:24:"டோங்கான்";s:2:"to";s:31:"டோக் பிஸின்";s:3:"tpi";s:21:"டர்கிஷ்";s:2:"tr";s:15:"டாடர்";s:2:"tt";s:12:"ட்வி";s:2:"tw";s:27:"டஹிதியான்";s:2:"ty";s:27:"டுவினியன்";s:3:"tyv";s:12:"டைடா";s:3:"dav";s:18:"டுவாலா";s:3:"dua";s:12:"டெசோ";s:3:"teo";s:18:"டசவாக்";s:3:"twq";s:18:"டைக்ரே";s:3:"tig";s:24:"டோக்ரிப்";s:3:"dgr";s:18:"டின்கா";s:3:"din";s:18:"டோக்ரி";s:3:"doi";s:18:"ட்யூலா";s:3:"dyu";s:18:"டிம்னே";s:3:"tem";s:18:"டெரெனோ";s:3:"ter";s:12:"டிவ்";s:3:"tiv";s:18:"டோகேலௌ";s:3:"tkl";s:30:"டிலிங்கிட்";s:3:"tli";s:24:"டாமாஷேக்";s:3:"tmh";s:33:"ட்ஸிம்ஷியன்";s:3:"tsi";s:18:"டுவாலு";s:3:"tvl";}i:25;a:4:{s:9:"丹麦文";s:2:"da";s:9:"丹麥文";s:2:"da";s:12:"응곰바어";s:3:"jgo";s:9:"응코어";s:3:"nqo";}i:864;a:14:{s:12:"ጀርመን";s:2:"de";s:40:"ରେହେଟୋ-ରୋମାନ୍ସ";s:2:"rm";s:18:"ରୁଣ୍ଡି";s:2:"rn";s:27:"ରୋମାନିଆନ୍";s:2:"ro";s:18:"ରଷିଆନ୍";s:2:"ru";s:15:"우드말트어";s:3:"udm";s:18:"우크라이나어";s:2:"uk";s:12:"우르두어";s:2:"ur";s:15:"우즈베크어";s:2:"uz";s:18:"ରୋମ୍ବୋ";s:3:"rof";s:27:"ରାଜସ୍ଥାନୀ";s:3:"raj";s:21:"ରାପାନୁଇ";s:3:"rap";s:33:"ରାରୋତୋଙ୍ଗନ୍";s:3:"rar";s:18:"ରୋମାନି";s:3:"rom";}i:460;a:22:{s:21:"জার্মান";s:2:"de";s:18:"জোঙ্গা";s:2:"dz";s:15:"ガガウズ語";s:3:"gag";s:15:"ガリシア語";s:2:"gl";s:18:"জাপানি";s:2:"ja";s:18:"জাভানি";s:2:"jv";s:27:"জর্জিয়ান";s:2:"ka";s:12:"ガンダ語";s:2:"lg";s:12:"জোসা";s:2:"xh";s:12:"জুলু";s:2:"zu";s:9:"줄루어";s:2:"zu";s:18:"জার্মা";s:3:"dje";s:12:"杜亞拉文";s:3:"dua";s:19:"জলা-ফনী";s:3:"dyo";s:6:"ガ語";s:3:"gaa";s:9:"ガヨ語";s:3:"gay";s:34:"জুদেও ফার্সি";s:3:"jpr";s:28:"জুদেও আরবি";s:3:"jrb";s:21:"জাপোটেক";s:3:"zap";s:18:"জেনাগা";s:3:"zen";s:12:"জুনি";s:3:"zun";s:12:"জাজা";s:3:"zza";}i:936;a:3:{s:33:"འཇར་མན་གྱི།";s:2:"de";s:18:"ፈረንሳይኛ";s:2:"fr";s:36:"འབར་མའི་སྐད།";s:2:"my";}i:911;a:14:{s:27:"ཇཱར་མཱན་ཁ";s:2:"de";s:15:"ཇོང་ཁ";s:2:"dz";s:33:"ཇཱ་པཱ་ནིས་ཁ";s:2:"ja";s:30:"ཇཱ་བ་ནིས་ཁ";s:2:"jv";s:33:"ཇཽ་ཇི་ཡཱན་ཁ";s:2:"ka";s:18:"ୟାକୁଟ୍";s:3:"sah";s:18:"ୟୁଘୁର୍";s:2:"ug";s:33:"ୟୁକ୍ରାନିଆନ୍";s:2:"uk";s:18:"ୟିଡିସ୍";s:2:"yi";s:18:"ୟୋରୁବା";s:2:"yo";s:36:"ୟୁ.ଏସ୍. ଇଁରାଜୀ";s:5:"en-us";s:27:"ୟୁଗୋରଟିକ୍";s:3:"uga";s:9:"ୟାଓ";s:3:"yao";s:18:"ୟାପୀସ୍";s:3:"yap";}i:915;a:41:{s:18:"Γερμανικά";s:2:"de";s:35:"Γερμανικά Αυστρίας";s:5:"de-at";s:35:"Γερμανικά Ελβετίας";s:5:"de-ch";s:40:"Γλώσσα Κάτω Λουσατίας";s:3:"dsb";s:4:"Γι";s:2:"ee";s:14:"Γαλλικά";s:2:"fr";s:18:"Γκαγκάουζ";s:3:"gag";s:18:"Γαλικιανά";s:2:"gl";s:18:"Γκουαρανί";s:2:"gn";s:14:"Γοτθικά";s:3:"got";s:22:"Γκουγιαράτι";s:2:"gu";s:38:"Γλώσσα Άνω Λουσατίας";s:3:"hsb";s:18:"Γεωργιανά";s:2:"ka";s:12:"Γκάντα";s:2:"lg";s:14:"Γιακούτ";s:3:"sah";s:16:"Γουαλούν";s:2:"wa";s:14:"Γουάρει";s:3:"war";s:14:"Γουόλοφ";s:2:"wo";s:12:"Γίντις";s:2:"yi";s:18:"Γιορούμπα";s:2:"yo";s:6:"Γκα";s:3:"gaa";s:12:"Γκούσι";s:3:"guz";s:57:"Γλώσσα του Πράσινου Ακρωτηρίου";s:3:"kea";s:27:"Γαλλικά Καναδά";s:5:"fr-ca";s:31:"Γαλλικά Ελβετίας";s:5:"fr-ch";s:8:"Γκιζ";s:3:"gez";s:12:"Γκάγιο";s:3:"gay";s:16:"Γκμπάγια";s:3:"gba";s:22:"Γκιλμπερτίζ";s:3:"gil";s:12:"Γκόντι";s:3:"gon";s:20:"Γκοροντάλο";s:3:"gor";s:14:"Γκρίμπο";s:3:"grb";s:18:"Γκουίτσιν";s:3:"gwi";s:16:"Γουάλαμο";s:3:"wal";s:12:"Γουασό";s:3:"was";s:8:"Γιάο";s:3:"yao";s:12:"Γιαπίζ";s:3:"yap";s:20:"Γιανγκμπέν";s:3:"yav";s:9:"洋卞文";s:3:"yav";s:14:"Γκομάλα";s:3:"bbj";s:12:"Γιέμπα";s:3:"ybb";}i:490;a:44:{s:12:"גרמנית";s:2:"de";s:18:"ජර්මන්";s:2:"de";s:27:"גרמנית אוסטרית";s:5:"de-at";s:42:"גרמנית שוויצרית (גבוהה)";s:5:"de-ch";s:12:"גריכיש";s:2:"el";s:14:"גגאוזית";s:3:"gag";s:23:"גאלית סקוטית";s:2:"gd";s:18:"גליציאנית";s:2:"gl";s:16:"גאַלישיש";s:2:"gl";s:12:"גוארני";s:2:"gn";s:10:"גותית";s:3:"got";s:10:"גאטיש";s:3:"got";s:29:"גרמנית שוויצרית";s:3:"gsw";s:18:"גוג׳ראטית";s:2:"gu";s:12:"ජපන්";s:2:"ja";s:12:"ජාවා";s:2:"jv";s:14:"גאורגית";s:2:"ka";s:30:"ජෝර්ජියානු";s:2:"ka";s:16:"גרוזיניש";s:2:"ka";s:10:"גאנדה";s:2:"lg";s:12:"ナウル語";s:2:"na";s:12:"ナポリ語";s:3:"nap";s:23:"גרמנית תחתית";s:3:"nds";s:12:"ナバホ語";s:2:"nv";s:21:"ජන්ජාබි";s:2:"pa";s:15:"史瓦希里文";s:2:"sw";s:12:"ג׳ולוף";s:2:"wo";s:28:"ජොල-ෆෝනියි";s:3:"dyo";s:4:"גא";s:3:"gaa";s:8:"גוסי";s:3:"guz";s:9:"ナマ語";s:3:"naq";s:27:"史瓦希里文(剛果)";s:3:"swc";s:6:"געז";s:3:"gez";s:8:"גאיו";s:3:"gay";s:10:"גבאיה";s:3:"gba";s:18:"גילברטזית";s:3:"gil";s:38:"גרמנית בינונית-גבוהה";s:3:"gmh";s:34:"גרמנית עתיקה גבוהה";s:3:"goh";s:10:"גונדי";s:3:"gon";s:18:"גורונטאלו";s:3:"gor";s:8:"גרבו";s:3:"grb";s:16:"גוויצ׳ין";s:3:"gwi";s:8:"ג׳יו";s:3:"kaj";s:8:"גומל";s:3:"bbj";}i:332;a:28:{s:15:"जर्मन";s:2:"de";s:24:"ज़ोन्गखा";s:2:"dz";s:18:"जोङ्खा";s:2:"dz";s:18:"जापानी";s:2:"ja";s:15:"जपानी";s:2:"ja";s:24:"जावानीज़";s:2:"jv";s:21:"जावानीज";s:2:"jv";s:21:"जाभानिज";s:2:"jv";s:27:"जॉर्जियाई";s:2:"ka";s:24:"जॉर्जियन";s:2:"ka";s:27:"जर्जियाली";s:2:"ka";s:18:"ज़ुआंग";s:2:"za";s:15:"ज़ुलू";s:2:"zu";s:12:"जुलु";s:2:"zu";s:15:"जर्मा";s:3:"dje";s:25:"जोला-फोंई";s:3:"dyo";s:28:"जोला-फोंयी";s:3:"dyo";s:28:"जोला-फोनिल";s:3:"dyo";s:27:"जिल्बरटीज";s:3:"gil";s:37:"जुदेओ-पर्शियन";s:3:"jpr";s:31:"जुदेओ-फारसी";s:3:"jpr";s:34:"जुदेओ-अरेबिक";s:3:"jrb";s:28:"जुदेओ-अरबी";s:3:"jrb";s:12:"ज्जु";s:3:"kaj";s:24:"ज़ेपोटेक";s:3:"zap";s:27:"ज़ेनान्गा";s:3:"zen";s:15:"ज़ूनी";s:3:"zun";s:18:"ज़ाज़ा";s:3:"zza";}i:379;a:13:{s:20:"գերմաներեն";s:2:"de";s:22:"գագաուզերեն";s:3:"gag";s:18:"գալիսերեն";s:2:"gl";s:16:"գուարանի";s:2:"gn";s:18:"գուջարաթի";s:2:"gu";s:10:"գանդա";s:2:"lg";s:6:"Żwang";s:2:"za";s:5:"Żulu";s:2:"zu";s:10:"գուսի";s:3:"guz";s:8:"Żingaru";s:3:"rom";s:8:"Żapotek";s:3:"zap";s:7:"Żenaga";s:3:"zen";s:5:"Żuni";s:3:"zun";}i:235;a:7:{s:9:"ꄓꇩꉙ";s:2:"de";s:12:"四川イ語";s:2:"ii";s:12:"四川彝文";s:2:"ii";s:12:"庫爾德文";s:2:"ku";s:12:"庫魯科文";s:3:"kru";s:12:"庫密克文";s:3:"kum";s:12:"庫特奈文";s:3:"kut";}i:254;a:6:{s:7:"þýska";s:2:"de";s:12:"ಶೋನಾ";s:2:"sn";s:12:"ಶಂಬಲ";s:3:"ksb";s:46:"ಶಾಸ್ತ್ರೀಯ ನೇವಾರಿ";s:3:"nwc";s:12:"ಶಾನ್";s:3:"shn";s:49:"ಶಾಸ್ತ್ರೀಯ ಸಿರಿಯಕ್";s:3:"syc";}i:306;a:12:{s:27:"გერმანული";s:2:"de";s:27:"გაგაუზური";s:3:"gag";s:27:"გალისიური";s:2:"gl";s:21:"გუარანი";s:2:"gn";s:18:"გოთური";s:3:"got";s:24:"გუჯარათი";s:2:"gu";s:15:"განდა";s:2:"lg";s:58:"გამარტივებული ჩინური";s:7:"zh-hans";s:15:"გუსიი";s:3:"guz";s:15:"გეეზი";s:3:"gez";s:15:"გბაია";s:3:"gba";s:15:"გონდი";s:3:"gon";}i:21;a:5:{s:9:"독일어";s:2:"de";s:20:"독일어(스위스)";s:3:"gsw";s:9:"ចិន";s:2:"zh";s:42:"ចិន​អក្សរ​កាត់";s:7:"zh-hans";s:39:"ចិន​អក្សរ​ពេញ";s:7:"zh-hant";}i:288;a:13:{s:10:"Ġermaniż";s:2:"de";s:10:"Ġappuniż";s:2:"ja";s:9:"Ġavaniż";s:2:"jv";s:9:"Ġorġjan";s:2:"ka";s:33:"Ġermaniż komuni; sassonu komuni";s:3:"nds";s:12:"베트남어";s:2:"vi";s:9:"베나어";s:3:"bez";s:9:"베자어";s:3:"bej";s:19:"Ġargon taċ-Ċinuk";s:3:"chn";s:27:"Ġermaniku, medjevali pulit";s:3:"gmh";s:23:"Ġermaniku, antik pulit";s:3:"goh";s:6:"Ġerbo";s:3:"grb";s:9:"満州語";s:3:"mnc";}i:844;a:14:{s:21:"ଜର୍ମାନ୍";s:2:"de";s:24:"ଜାପାନୀଜ୍";s:2:"ja";s:24:"ଜାଭାନୀଜ୍";s:2:"jv";s:24:"ଜର୍ଜିଆନ୍";s:2:"ka";s:18:"ଜୁଆଙ୍ଗ";s:2:"za";s:12:"ଜୁଲୁ";s:2:"zu";s:30:"ଜିବ୍ରାଟୀଜ୍";s:3:"gil";s:40:"ଜୁଡେଓ-ପର୍ସିଆନ୍";s:3:"jpr";s:34:"ଜୁଡେଓ-ଆରବୀକ୍";s:3:"jrb";s:12:"ଜ୍ଜୁ";s:3:"kaj";s:24:"ଜାପୋଟେକ୍";s:3:"zap";s:18:"ଜେନାଗା";s:3:"zen";s:12:"ଜୁନୀ";s:3:"zun";s:12:"ଜାଜା";s:3:"zza";}i:53;a:18:{s:18:"Ниэмэстии";s:2:"de";s:12:"Немисӣ";s:2:"de";s:30:"ឥណ្ឌូណេស៊ី";s:2:"id";s:10:"Науру";s:2:"na";s:26:"Неаполитански";s:3:"nap";s:25:"Ниски немачки";s:3:"nds";s:20:"Ньыпааллыы";s:2:"ne";s:12:"Невари";s:3:"new";s:12:"Ндонга";s:2:"ng";s:12:"Ниуеан";s:3:"niu";s:16:"Норвешки";s:2:"no";s:14:"Норвегӣ";s:2:"no";s:12:"Навахо";s:2:"nv";s:18:"Нууччалыы";s:2:"ru";s:9:"Н’ко";s:3:"nqo";s:8:"Ниас";s:3:"nia";s:10:"Ногаи";s:3:"nog";s:10:"Нзима";s:3:"nzi";}i:972;a:23:{s:21:"ஜெர்மன்";s:2:"de";s:30:"ஜப்பானியம்";s:2:"ja";s:24:"ஜாவானீஸ்";s:2:"jv";s:27:"ஜார்ஜியன்";s:2:"ka";s:9:"라틴어";s:2:"la";s:12:"라디노어";s:3:"lad";s:9:"라오어";s:2:"lo";s:15:"라트비아어";s:2:"lv";s:18:"ஜுவாங்";s:2:"za";s:12:"ஜுலு";s:2:"zu";s:34:"ஜோலா-ஃபோன்யி";s:3:"dyo";s:12:"라코타어";s:3:"lkt";s:46:"ஜூதேயோ-பெர்ஷியன்";s:3:"jpr";s:40:"ஜூதேயோ-அராபிக்";s:3:"jrb";s:12:"ஜ்ஜூ";s:3:"kaj";s:12:"라한다어";s:3:"lah";s:15:"라자스탄어";s:3:"raj";s:12:"라파뉴이";s:3:"rap";s:15:"라로통가어";s:3:"rar";s:24:"ஜாபோடெக்";s:3:"zap";s:15:"ஜெனகா";s:3:"zen";s:12:"ஜூனி";s:3:"zun";s:12:"ஜாஜா";s:3:"zza";}i:711;a:79:{s:16:"گېرمانچە";s:2:"de";s:15:"ગ્રીક";s:2:"el";s:14:"گىرېكچە";s:2:"el";s:14:"گاگائوز";s:3:"gag";s:15:"ગાગાઝ";s:3:"gag";s:4:"گن";s:3:"gan";s:27:"گیلی اسکاتلندی";s:2:"gd";s:18:"گالیسیایی";s:2:"gl";s:24:"ગેલિશિયન";s:2:"gl";s:18:"گیلِشِیَن";s:2:"gl";s:24:"گالىتسىيانچە";s:2:"gl";s:18:"گالیشیائی";s:2:"gl";s:10:"گیلکی";s:3:"glk";s:14:"گوارانی";s:2:"gn";s:21:"ગુઆરાની";s:2:"gn";s:16:"گُوارَنی";s:2:"gn";s:20:"گۇئارانىچە";s:2:"gn";s:14:"گُارانی";s:2:"gn";s:10:"گوتیک";s:3:"got";s:15:"ગોથિક";s:3:"got";s:12:"گوتھِک";s:3:"got";s:10:"گوتچە";s:3:"got";s:39:"گېرمانچە شىۋىتسارىيە";s:3:"gsw";s:21:"ગુજરાતી";s:2:"gu";s:12:"گجراتی";s:2:"gu";s:14:"گُجرٲتی";s:2:"gu";s:18:"گۇجاراتچە";s:2:"gu";s:8:"گرجی";s:2:"ka";s:18:"گىرۇزىنچە";s:2:"ka";s:16:"گرینلندی";s:2:"kl";s:22:"گىرېنلاندچە";s:2:"kl";s:14:"گاندایی";s:2:"lg";s:15:"ગાંડા";s:2:"lg";s:10:"گاندا";s:2:"lg";s:14:"گانداچە";s:2:"lg";s:10:"گینڈا";s:2:"lg";s:24:"گوللاندىيەچە";s:2:"nl";s:12:"僧伽罗文";s:2:"si";s:12:"僧伽羅文";s:2:"si";s:18:"گۇاڭدوڭچە";s:3:"yue";s:8:"گایی";s:3:"gaa";s:4:"گا";s:3:"gaa";s:8:"گاچە";s:3:"gaa";s:8:"گوسی";s:3:"guz";s:12:"ગુસી";s:3:"guz";s:12:"گۇسىچە";s:3:"guz";s:6:"گسی";s:3:"guz";s:10:"گومبا";s:3:"jgo";s:13:"گی‌ئزی";s:3:"gez";s:9:"ગીઝ";s:3:"gez";s:8:"گیٖز";s:3:"gez";s:10:"گىزچە";s:3:"gez";s:12:"گایویی";s:3:"gay";s:12:"ગાયો";s:3:"gay";s:10:"گیےیو";s:3:"gay";s:12:"گايوچە";s:3:"gay";s:14:"گبایایی";s:3:"gba";s:10:"گبایا";s:3:"gba";s:16:"گىباياچە";s:3:"gba";s:14:"گیلبرتی";s:3:"gil";s:20:"گِلبٔرٹیٖز";s:3:"gil";s:18:"گىلبېرتچە";s:3:"gil";s:10:"گوندی";s:3:"gon";s:15:"ગોંડી";s:3:"gon";s:14:"گوندىچە";s:3:"gon";s:18:"گورونتالو";s:3:"gor";s:30:"ગોરોન્તાલો";s:3:"gor";s:18:"گورینٹیلو";s:3:"gor";s:22:"گورونتالوچە";s:3:"gor";s:14:"گریبویی";s:3:"grb";s:18:"ગ્રેબો";s:3:"grb";s:10:"گرِبو";s:3:"grb";s:14:"گرېبوچە";s:3:"grb";s:15:"گویچ این";s:3:"gwi";s:24:"ગ્વિચ’ઇન";s:3:"gwi";s:17:"گُوِچ اِن";s:3:"gwi";s:18:"گىۋىچىنچە";s:3:"gwi";s:16:"گومالاچە";s:3:"bbj";s:31:"ગોઅન કોંકણી";s:3:"gom";}i:503;a:8:{s:6:"德文";s:2:"de";s:18:"දිවෙහි";s:2:"dv";s:18:"德文(瑞士)";s:3:"gsw";s:18:"プファルツ語";s:3:"pfl";s:15:"プロシア語";s:3:"prg";s:28:"දකුණු සාමි";s:3:"sma";s:12:"දෙමළ";s:2:"ta";s:12:"德拉瓦文";s:3:"del";}i:214;a:12:{s:25:"Österreichisches deutsch";s:5:"de-at";s:26:"Öschtriichischs tüütsch";s:5:"de-at";s:30:"Öösterrieksch hoochdüütsch";s:5:"de-at";s:30:"ಎಸ್ಪೆರಾಂಟೊ";s:2:"eo";s:30:"ಎಸ್ಟೊನಿಯನ್";s:2:"et";s:24:"ಎರ್‌ಝ್ಯಾ";s:3:"myv";s:9:"Özbekçe";s:2:"uz";s:12:"ಎಂಬು";s:3:"ebu";s:15:"ಎಫಿಕ್";s:3:"efi";s:18:"ಎನ್‌ಕೋ";s:3:"nqo";s:21:"ಎಕಾಜುಕ್";s:3:"eka";s:21:"ಎಲಾಮೈಟ್";s:3:"elx";}i:248;a:15:{s:14:"østrigsk tysk";s:5:"de-at";s:16:"østerriksk tysk";s:5:"de-at";s:12:"øvresorbisk";s:3:"hsb";s:24:"ರೊಮಾನ್ಷ್";s:2:"rm";s:15:"ರುಂಡಿ";s:2:"rn";s:27:"ರೊಮೇನಿಯನ್";s:2:"ro";s:18:"ರಷ್ಯನ್";s:2:"ru";s:15:"ರೊಂಬೊ";s:3:"rof";s:9:"ರುವ";s:3:"rwk";s:11:"østfrisisk";s:3:"frs";s:30:"ರಾಜಾಸ್ಥಾನಿ";s:3:"raj";s:24:"ರಾಪಾನುಯಿ";s:3:"rap";s:30:"ರಾರೋಟೊಂಗನ್";s:3:"rar";s:18:"ರೋಮಾನಿ";s:3:"rom";s:6:"湘語";s:3:"hsn";}i:201;a:3:{s:25:"Éisträichescht däitsch";s:5:"de-at";s:19:"ұйғыр тілі";s:2:"ug";s:9:"温旧文";s:3:"vun";}i:137;a:2:{s:40:"ဩစတြီးယ ဂျာမန်";s:5:"de-at";s:55:"ဩစတြေးလျှ အင်္ဂလိပ်";s:5:"en-au";}i:566;a:5:{s:34:"ਆਸਟਰੀਆਈ ਜਰਮਨ";s:5:"de-at";s:12:"ਆਇਰੀ";s:2:"ga";s:27:"ਆਈਸਲੈਂਡਿਕ";s:2:"is";s:47:"ਆਧੁਨਿਕ ਮਿਆਰੀ ਅਰਬੀ";s:6:"ar-001";s:55:"ਆਸਟ੍ਰੇਲੀਆਈ ਅੰਗਰੇਜ਼ੀ";s:5:"en-au";}i:885;a:9:{s:15:"奥地利德文";s:5:"de-at";s:15:"奥克西唐文";s:2:"oc";s:12:"奥洛莫文";s:2:"om";s:12:"奥里亚文";s:2:"or";s:12:"奥塞梯文";s:2:"os";s:12:"식시카어";s:3:"bla";s:15:"奥吉布瓦文";s:2:"oj";s:12:"奥萨格文";s:3:"osa";s:21:"奥托曼土耳其文";s:3:"ota";}i:942;a:20:{s:81:"སུ་ཡིས་གི་མཐོ་སའི་ཇཱར་མཱན་ཁ";s:5:"de-ch";s:48:"སུ་ཡིས་ཇཱར་མཱན་ཁ";s:3:"gsw";s:24:"སོག་སྐད།";s:2:"mn";s:30:"སོག་པོའི་ཁ";s:2:"mn";s:30:"སཾ་སྐྲྀ་ཏ།";s:2:"sa";s:27:"སཾསྐྲྀཏ་ཁ";s:2:"sa";s:27:"སིན་དཱི་ཁ";s:2:"sd";s:27:"སིང་ཧ་ལ་ཁ";s:2:"si";s:33:"སུ་ལོ་བཱཀ་ཁ";s:2:"sk";s:51:"སུ་ལོ་བི་ནི་ཡཱན་ཁ";s:2:"sl";s:27:"སོ་མ་ལི་ཁ";s:2:"so";s:39:"སཱར་བྷི་ཡཱན་ཁ";s:2:"sr";s:36:"སཱུན་ད་ནིས་ཁ";s:2:"su";s:30:"སུའི་ཌིཤ་ཁ";s:2:"sv";s:33:"སྭཱ་ཧི་ལི་ཁ";s:2:"sw";s:64:"སྟབས་བརྡའི། ཀྲུང་གོའི།";s:7:"zh-hans";s:45:"སྲོལ་རྒྱུན་གྱི།";s:7:"zh-hant";s:57:"སྔ་དུས་ཀྱི་རྒྱ་མི་ཁ";s:7:"zh-hant";s:57:"སྐད་རིག་ནང་དོན་མེདཔ";s:3:"zxx";s:39:"སུ་ཡིས་ཕྲནཅ་ཁ";s:5:"fr-ch";}i:192;a:1:{s:32:"Àrd-ghearmailtis na h-eilbheise";s:5:"de-ch";}i:161;a:2:{s:29:"標準ドイツ語(スイス)";s:5:"de-ch";s:30:"標準摩洛哥塔馬塞特文";s:3:"zgh";}i:328;a:24:{s:73:"შვეიცარიული ზემოგერმანული";s:5:"de-ch";s:52:"შოტლანდიური გელური";s:2:"gd";s:61:"შვეიცარიული გერმანული";s:3:"gsw";s:13:"ňandžština";s:2:"ny";s:18:"산스크리트어";s:2:"sa";s:12:"산탈리어";s:3:"sat";s:9:"산고어";s:2:"sg";s:15:"შილჰა";s:3:"shi";s:12:"შონა";s:2:"sn";s:21:"შვედური";s:2:"sv";s:21:"შამბალა";s:3:"ksb";s:13:"ňankolština";s:3:"nyn";s:8:"ňankole";s:3:"nyn";s:12:"言語不明";s:3:"und";s:21:"言語的内容なし";s:3:"zxx";s:58:"შვეიცარიული ფრანგული";s:5:"fr-ch";s:14:"ňamwežština";s:3:"nym";s:8:"ňamwezi";s:3:"nym";s:10:"ňorština";s:3:"nyo";s:5:"ňoro";s:3:"nyo";s:12:"산다웨어";s:3:"sad";s:12:"შანი";s:3:"shn";s:24:"შუმერული";s:3:"sux";s:11:"ňasa tonga";s:3:"tog";}i:754;a:18:{s:41:"ສະວິສ ໄຮ ເຈີແມນ";s:5:"de-ch";s:24:"ສະແປນນິຊ";s:2:"es";s:33:"ສະກັອດເກລິກ";s:2:"gd";s:34:"ສະວິສ ເຈີແມນ";s:3:"gsw";s:27:"ສັນສະກຣິດ";s:2:"sa";s:21:"ສາດີນຽນ";s:2:"sc";s:12:"ສກອດ";s:3:"sco";s:15:"ສິນທິ";s:2:"sd";s:21:"ສິນຫາລາ";s:2:"si";s:24:"ສະໂລແວັກ";s:2:"sk";s:27:"ສະໂລເວນຽນ";s:2:"sl";s:36:"ສຣານນານຕອນໂກ";s:3:"srn";s:21:"ສະວີດິຊ";s:2:"sv";s:18:"ኒያንኮልኛ";s:3:"nyn";s:24:"ສກອດຊາມິ";s:3:"sms";s:31:"ສະວິສ ຝຣັ່ງ";s:5:"fr-ch";s:28:"ສາມາຣິແຕນ-";s:3:"sam";s:42:"ສັນຍາລັກບລີຊິມ";s:3:"zbl";}i:352;a:37:{s:36:"Šveicarijos aukštutinė vokiečių";s:5:"de-ch";s:19:"Šveices augšvācu";s:5:"de-ch";s:27:"Švajcarski visoki nemački";s:5:"de-ch";s:8:"Španski";s:2:"es";s:15:"Škotski galski";s:2:"gd";s:23:"Šveicarijos vokiečių";s:3:"gsw";s:14:"Šveices vācu";s:3:"gsw";s:20:"Švajcarsko nemački";s:3:"gsw";s:9:"ꆈꌠꉙ";s:2:"ii";s:21:"रोमान्श";s:2:"rm";s:21:"रोमानिश";s:2:"rm";s:18:"रुन्दी";s:2:"rn";s:18:"रूण्डी";s:2:"rn";s:27:"रोमानियाई";s:2:"ro";s:24:"रोमानियन";s:2:"ro";s:30:"रोमानियाली";s:2:"ro";s:12:"रूसी";s:2:"ru";s:15:"रशियन";s:2:"ru";s:8:"Škotski";s:3:"sco";s:5:"Šona";s:2:"sn";s:8:"Švedski";s:2:"sv";s:18:"रोम्बो";s:3:"rof";s:9:"रवा";s:3:"rwk";s:15:"रव्हा";s:3:"rwk";s:15:"र्‌वा";s:3:"rwk";s:23:"Šveicarijos prancūzų";s:5:"fr-ch";s:16:"Šveices franču";s:5:"fr-ch";s:21:"Švajcarski francuski";s:5:"fr-ch";s:12:"ഘാസി";s:3:"kha";s:30:"ഘോറ്റാനേസേ";s:3:"kho";s:27:"राजस्थानी";s:3:"raj";s:21:"रापानुई";s:3:"rap";s:27:"रारोतोंगन";s:3:"rar";s:27:"रारोटोंगन";s:3:"rar";s:18:"रोमानी";s:3:"rom";s:4:"Šan";s:3:"shn";s:15:"ഘോമാല";s:3:"bbj";}i:790;a:4:{s:18:"瑞士高地德文";s:5:"de-ch";s:12:"瑞士德文";s:3:"gsw";s:9:"瑞典文";s:2:"sv";s:12:"瑞士法文";s:5:"fr-ch";}i:640;a:5:{s:24:"高地德文(瑞士)";s:5:"de-ch";s:9:"에웨어";s:2:"ee";s:18:"에스페란토어";s:2:"eo";s:18:"에스토니아어";s:2:"et";s:9:"高棉文";s:2:"km";}i:470;a:13:{s:12:"ザザキ語";s:3:"diq";s:18:"দিবেহি";s:2:"dv";s:55:"দক্ষিণাঞ্চলীয় সামি";s:3:"sma";s:31:"দক্ষিন সোথো";s:2:"st";s:27:"ザーターフリジア語";s:3:"stq";s:12:"ザルマ語";s:3:"dje";s:21:"দুয়ালা";s:3:"dua";s:43:"দক্ষিণ এনডেবেলে";s:2:"nr";s:34:"দক্ষিন আলতাই";s:3:"alt";s:27:"দার্গওয়া";s:3:"dar";s:21:"দোগ্রীব";s:3:"dgr";s:15:"দোগরি";s:3:"doi";s:9:"ザザ語";s:3:"zza";}i:472;a:27:{s:52:"নিম্নতর সোর্বিয়ান";s:3:"dsb";s:36:"ジャマイカ・クレオール語";s:3:"jam";s:12:"ジャワ語";s:2:"jv";s:15:"নাউরু";s:2:"na";s:36:"নেয়াপোলিটান";s:3:"nap";s:55:"নরওয়েজিয়ান বোকমাল";s:2:"nb";s:40:"নিম্ন জার্মানি";s:3:"nds";s:18:"নেপালী";s:2:"ne";s:24:"নেওয়ারি";s:3:"new";s:21:"নিউয়ান";s:3:"niu";s:61:"নরওয়েজীয়ান নিনর্স্ক";s:2:"nn";s:30:"নরওয়েজীয়";s:2:"no";s:18:"নাভাজো";s:2:"nv";s:27:"নায়াঞ্জা";s:2:"ny";s:12:"歐利亞文";s:2:"or";s:27:"ジョラ=フォニィ語";s:3:"dyo";s:12:"নামা";s:3:"naq";s:18:"নুয়ার";s:3:"nus";s:39:"ন্যায়াঙ্কোলে";s:3:"nyn";s:12:"ジュラ語";s:3:"dyu";s:18:"নিয়াস";s:3:"nia";s:15:"নোগাই";s:3:"nog";s:42:"ন্যায়ামওয়েজি";s:3:"nym";s:18:"ন্যোরো";s:3:"nyo";s:12:"歐塞奇文";s:3:"osa";s:12:"셀쿠프어";s:3:"sel";s:40:"নায়াসা টোঙ্গা";s:3:"tog";}i:589;a:7:{s:19:"صُربی سفلی";s:3:"dsb";s:19:"صُربی علیا";s:3:"hsb";s:22:"صرب و کرواتی";s:2:"sh";s:12:"صومالی";s:2:"so";s:8:"صربی";s:2:"sr";s:26:"صربی (خط سرلیک)";s:5:"sr-ec";s:26:"صربی (خط لاتین)";s:5:"sr-el";}i:728;a:22:{s:40:"નિમ્ન સોર્બિયન";s:3:"dsb";s:49:"નોર્ધર્ન ફ્રિશિયન";s:3:"frr";s:15:"નાઉરૂ";s:2:"na";s:27:"નેપોલિટાન";s:3:"nap";s:49:"નોર્વેજીયન બોકમાલ";s:2:"nb";s:18:"નેપાળી";s:2:"ne";s:18:"નેવાડી";s:3:"new";s:18:"નિયુઆન";s:3:"niu";s:61:"નૉર્વેજીયન નાયનૉર્સ્ક";s:2:"nn";s:30:"નૉર્વેજીયન";s:2:"no";s:18:"નાવાજો";s:2:"nv";s:24:"ન્યાન્જા";s:2:"ny";s:21:"નગોમ્બા";s:3:"jgo";s:9:"નમા";s:3:"naq";s:12:"નુએર";s:3:"nus";s:24:"ન્યાનકોલ";s:3:"nyn";s:15:"નિયાસ";s:3:"nia";s:15:"નોગાઇ";s:3:"nog";s:27:"ન્યામવેઝી";s:3:"nym";s:18:"ન્યોરો";s:3:"nyo";s:18:"ન્ઝિમા";s:3:"nzi";s:37:"ન્યાસા ટોન્ગા";s:3:"tog";}i:344;a:43:{s:40:"निचला सॉर्बियन";s:3:"dsb";s:15:"ഐറിഷ്";s:2:"ga";s:14:"Հայերեն";s:2:"hy";s:33:"ഐസ്‌ലാൻഡിക്";s:2:"is";s:15:"नाउरू";s:2:"na";s:12:"नउरू";s:2:"na";s:24:"नीपोलिटन";s:3:"nap";s:27:"नेपोलिटान";s:3:"nap";s:52:"नॉर्वेजियाई बोकमाल";s:2:"nb";s:49:"नॉर्वेजियन बोकमाल";s:2:"nb";s:40:"नर्वेली बोकमाल";s:2:"nb";s:31:"निचला जर्मन";s:3:"nds";s:18:"नेपाली";s:2:"ne";s:18:"नेपाळी";s:2:"ne";s:28:"नेपाल भाषा";s:3:"new";s:21:"नेवाड़ी";s:3:"new";s:18:"नेवारी";s:3:"new";s:18:"नियुआन";s:3:"niu";s:64:"नॉर्वेजियाई नॉयनॉर्स्क";s:2:"nn";s:58:"नॉर्वेजियन न्योर्स्क";s:2:"nn";s:52:"नर्वेली नाइनोर्स्क";s:2:"nn";s:33:"नॉर्वेजियाई";s:2:"no";s:30:"नोर्वेजियन";s:2:"no";s:33:"नर्वेजियाली";s:2:"no";s:18:"नावाजो";s:2:"nv";s:21:"न्यानजा";s:2:"ny";s:24:"न्यान्जा";s:2:"ny";s:31:"नॉर्दन सामी";s:2:"se";s:18:"नगोंबा";s:3:"jgo";s:12:"नामा";s:3:"naq";s:9:"नको";s:3:"nqo";s:12:"नुएर";s:3:"nus";s:24:"न्यानकोल";s:3:"nyn";s:27:"न्यान्कोल";s:3:"nyn";s:16:"룰레 사미어";s:3:"smj";s:15:"नियास";s:3:"nia";s:15:"नोगाई";s:3:"nog";s:30:"न्यामवेज़ी";s:3:"nym";s:27:"न्यामवेझी";s:3:"nym";s:18:"न्योरो";s:3:"nyo";s:21:"न्ज़ीमा";s:3:"nzi";s:18:"न्झिमा";s:3:"nzi";s:37:"न्यासा टोन्गा";s:3:"tog";}i:302;a:5:{s:18:"低ソルビア語";s:3:"dsb";s:18:"低地ドイツ語";s:3:"nds";s:12:"低地德文";s:3:"nds";s:18:"低シレジア語";s:3:"sli";s:18:"穆斯林塔特文";s:3:"ttt";}i:250;a:32:{s:43:"ಲೋವರ್ ಸೋರ್ಬಿಯನ್";s:3:"dsb";s:24:"ಲೊಜ್ಬಾನ್";s:3:"jbo";s:24:"ಲ್ಯಾಟಿನ್";s:2:"la";s:30:"ಲಕ್ಸಂಬರ್ಗ್";s:2:"lb";s:27:"ಲೆಜ್ಘಿಯನ್";s:3:"lez";s:30:"ಲಿಂಬರ್ಗಿಶ್";s:2:"li";s:18:"ಲಿಂಗಾಲ";s:2:"ln";s:12:"ಲಾವೋ";s:2:"lo";s:12:"ಲೋಝಿ";s:3:"loz";s:33:"ಲಿಥುವೇನಿಯನ್";s:2:"lt";s:18:"ಲುಶಾಯ್";s:3:"lus";s:24:"ಲಟ್ವಿಯನ್";s:2:"lv";s:25:"ಲೋ ಜರ್ಮನ್";s:3:"nds";s:8:"údmúrt";s:3:"udm";s:8:"úígúr";s:2:"ug";s:11:"úkraínska";s:2:"uk";s:6:"úrdú";s:2:"ur";s:9:"úsbekska";s:2:"uz";s:15:"ಲಾಂಗಿ";s:3:"lag";s:12:"ಲಕೊಟ";s:3:"lkt";s:31:"ಲೂಬಾ-ಕಟಾಂಗಾ";s:2:"lu";s:22:"ಲುಬ-ಲುಲಾ";s:3:"lua";s:12:"ಲುವೋ";s:3:"luo";s:15:"ಲುಯಿಯ";s:3:"luy";s:25:"ಲೂಲ್ ಸಾಮಿ";s:3:"smj";s:80:"ಲ್ಯಾಟಿನ್ ಅಮೇರಿಕನ್ ಸ್ಪ್ಯಾನಿಶ್";s:6:"es-419";s:15:"ಲಹಂಡಾ";s:3:"lah";s:12:"ಲಂಬಾ";s:3:"lam";s:24:"ಲೂಯಿಸೆನೋ";s:3:"lui";s:15:"ಲುಂಡಾ";s:3:"lun";s:13:"úgarítíska";s:3:"uga";s:10:"úmbúndú";s:3:"umb";}i:83;a:112:{s:21:"ловер-сорби";s:3:"dsb";s:14:"лоджбан";s:3:"jbo";s:12:"ложбан";s:3:"jbo";s:9:"剛果文";s:2:"kg";s:18:"лацінская";s:2:"la";s:16:"латински";s:2:"la";s:10:"латын";s:2:"la";s:14:"латынча";s:2:"la";s:10:"латин";s:2:"la";s:14:"латинаг";s:2:"la";s:18:"латинский";s:2:"la";s:18:"латинська";s:2:"la";s:12:"ладино";s:3:"lad";s:12:"ладіно";s:3:"lad";s:26:"люксембургски";s:2:"lb";s:20:"люксембург";s:2:"lb";s:24:"люксембургча";s:2:"lb";s:24:"луксембуршки";s:2:"lb";s:28:"люксембургский";s:2:"lb";s:26:"люксембурзька";s:2:"lb";s:10:"лакку";s:3:"lbe";s:10:"лезги";s:3:"lez";s:18:"лезгински";s:3:"lez";s:12:"лекъаг";s:3:"lez";s:20:"лезгинский";s:3:"lez";s:20:"лезгінська";s:3:"lez";s:34:"лингва франка нова";s:3:"lfn";s:20:"лимбургски";s:2:"li";s:18:"лимбуршки";s:2:"li";s:22:"лимбургский";s:2:"li";s:26:"лімбургійська";s:2:"li";s:16:"лигурски";s:3:"lij";s:16:"ливонски";s:3:"liv";s:20:"ломбардски";s:3:"lmo";s:14:"лінгала";s:2:"ln";s:14:"лингала";s:2:"ln";s:18:"лингалача";s:2:"ln";s:14:"лаоская";s:2:"lo";s:12:"лаоски";s:2:"lo";s:17:"лаос тілі";s:2:"lo";s:10:"лаочо";s:2:"lo";s:12:"лаошки";s:2:"lo";s:8:"лаос";s:2:"lo";s:16:"лаосский";s:2:"lo";s:14:"лаоська";s:2:"lo";s:8:"лози";s:3:"loz";s:8:"лозі";s:3:"loz";s:18:"літоўская";s:2:"lt";s:20:"летувіская";s:2:"lt";s:16:"литовски";s:2:"lt";s:19:"литва тілі";s:2:"lt";s:14:"литовчо";s:2:"lt";s:18:"литвански";s:2:"lt";s:10:"литва";s:2:"lt";s:18:"литовский";s:2:"lt";s:18:"литовська";s:2:"lt";s:18:"латгалски";s:3:"ltg";s:10:"лушаи";s:3:"lus";s:10:"лушай";s:3:"lus";s:10:"лушей";s:3:"lus";s:18:"латышская";s:2:"lv";s:16:"латыская";s:2:"lv";s:18:"латвийски";s:2:"lv";s:19:"латыш тілі";s:2:"lv";s:14:"латышча";s:2:"lv";s:16:"латвиски";s:2:"lv";s:10:"латви";s:2:"lv";s:18:"латышский";s:2:"lv";s:16:"летонски";s:2:"lv";s:20:"латвійська";s:2:"lv";s:10:"ласки";s:3:"lzz";s:37:"литературен арапски";s:6:"ar-001";s:10:"ланги";s:3:"lag";s:19:"ланги тілі";s:3:"lag";s:14:"лангиче";s:3:"lag";s:10:"лангі";s:3:"lag";s:12:"лакота";s:3:"lkt";s:16:"лакотача";s:3:"lkt";s:16:"лакотски";s:3:"lkt";s:23:"луба катанга";s:2:"lu";s:23:"луба-катанга";s:2:"lu";s:27:"луба-катангача";s:2:"lu";s:19:"луба-лулуа";s:3:"lua";s:6:"луо";s:3:"luo";s:10:"луочо";s:3:"luo";s:39:"луо (Кения и Танзания)";s:3:"luo";s:6:"луя";s:3:"luy";s:10:"лухиа";s:3:"luy";s:14:"лухияча";s:3:"luy";s:8:"луја";s:3:"luy";s:8:"луяа";s:3:"luy";s:10:"лухья";s:3:"luy";s:10:"лујиа";s:3:"luy";s:8:"луйя";s:3:"luy";s:23:"луле-саамски";s:3:"smj";s:17:"луле саам";s:3:"smj";s:23:"лөлө саамиче";s:3:"smj";s:29:"лулски лапонски";s:3:"smj";s:17:"люле сами";s:3:"smj";s:25:"луле-саамский";s:3:"smj";s:17:"луле сами";s:3:"smj";s:53:"латын американдық испан тілі";s:6:"es-419";s:42:"латин америкийн испани";s:6:"es-419";s:48:"латинаг америкаг англисаг";s:6:"es-419";s:55:"латиноамериканский испанский";s:6:"es-419";s:12:"лахнда";s:3:"lah";s:10:"ланда";s:3:"lah";s:10:"ламба";s:3:"lam";s:16:"луисеньо";s:3:"lui";s:18:"лујсењски";s:3:"lui";s:16:"луїсеньо";s:3:"lui";s:10:"лунда";s:3:"lun";}i:856;a:20:{s:40:"ନିଚଳା ସର୍ବିଆନ୍";s:3:"dsb";s:12:"칸나다어";s:2:"kn";s:12:"칸누리어";s:2:"kr";s:15:"ନାଉରୁ";s:2:"na";s:30:"ନୀପୋଲିଟାନ୍";s:3:"nap";s:46:"ନରୱେଜିଆନ୍ ବୋକମଲ୍";s:2:"nb";s:18:"ନେପାଳୀ";s:2:"ne";s:18:"ନେୱାରୀ";s:3:"new";s:21:"ନିୟୁଆନ୍";s:3:"niu";s:55:"ନରୱେଜିଆନ୍ ନିୟୋର୍ସ୍କ";s:2:"nn";s:27:"ନରୱେଜିଆନ୍";s:2:"no";s:18:"ନାଭାଜୋ";s:2:"nv";s:21:"ନିୟାଞ୍ଜ";s:2:"ny";s:27:"ନ୍ୟାନକୋଲ୍";s:3:"nyn";s:18:"ନୀୟାସ୍";s:3:"nia";s:15:"ନୋଗାଇ";s:3:"nog";s:27:"ନ୍ୟାମୱେଜୀ";s:3:"nym";s:18:"ନ୍ୟାରୋ";s:3:"nyo";s:37:"ନ୍ୟାସା ଟୋଙ୍ଗୋ";s:3:"tog";s:15:"奈恩加圖文";s:3:"yrl";}i:994;a:26:{s:43:"லோயர் சோர்பியன்";s:3:"dsb";s:21:"லோஜ்பன்";s:3:"jbo";s:21:"லத்தின்";s:2:"la";s:15:"லடினோ";s:3:"lad";s:42:"லக்ஸம்போர்கிஷ்";s:2:"lb";s:27:"லெஜ்ஜியன்";s:3:"lez";s:33:"லிம்பர்கிஷ்";s:2:"li";s:24:"லிங்காலா";s:2:"ln";s:12:"லாவோ";s:2:"lo";s:12:"லோசி";s:3:"loz";s:33:"லிதுவேனியன்";s:2:"lt";s:15:"லுஷய்";s:3:"lus";s:27:"லாட்வியன்";s:2:"lv";s:28:"லோ ஜெர்மன்";s:3:"nds";s:15:"லங்கி";s:3:"lag";s:15:"லகோடா";s:3:"lkt";s:34:"லுபா-கடாங்கா";s:2:"lu";s:31:"லுபா-லுலுலா";s:3:"lua";s:12:"லுயோ";s:3:"luo";s:18:"லுயியா";s:3:"luy";s:22:"லுலே சமி";s:3:"smj";s:71:"லத்தின் அமெரிக்க ஸ்பானிஷ்";s:6:"es-419";s:18:"லஹன்டா";s:3:"lah";s:15:"லம்பா";s:3:"lam";s:24:"லுய்சேனோ";s:3:"lui";s:18:"லூன்டா";s:3:"lun";}i:595;a:35:{s:42:"ซอร์บส์ตอนล่าง";s:3:"dsb";s:15:"ซองคา";s:2:"dz";s:36:"ซอร์บส์ตอนบน";s:3:"hsb";s:12:"ซาฮา";s:3:"sah";s:24:"ซาร์เดญา";s:2:"sc";s:18:"ซิซิลี";s:3:"scn";s:51:"ซาร์ดิเนียซาสซารี";s:3:"sdc";s:27:"ซามิเหนือ";s:2:"se";s:33:"ซาโมจิเตียน";s:3:"sgs";s:15:"ซามัว";s:2:"sm";s:21:"ซามิใต้";s:3:"sma";s:24:"ซูรินาเม";s:3:"srn";s:15:"ซุนดา";s:2:"su";s:27:"ซิิตซองกา";s:2:"ts";s:12:"ซูลู";s:2:"zu";s:18:"ซาร์มา";s:3:"dje";s:24:"ซามิลูเล";s:3:"smj";s:30:"ซามิอีนารี";s:3:"smn";s:30:"ซามิสคอลต์";s:3:"sms";s:18:"澳大利亚英文";s:5:"en-au";s:18:"ซิดาโม";s:3:"sid";s:21:"ซันดาเว";s:3:"sad";s:15:"ซาซัก";s:3:"sas";s:18:"ซอกดีน";s:3:"sog";s:18:"ซูคูมา";s:3:"suk";s:12:"ซูซู";s:3:"sus";s:15:"ซูเมอ";s:3:"sux";s:51:"ซีเรียแบบดั้งเดิม";s:3:"syc";s:18:"ซีเรีย";s:3:"syr";s:24:"ซิมชีแอน";s:3:"tsi";s:21:"ซาโปเตก";s:3:"zap";s:12:"ซูนิ";s:3:"zun";s:12:"ซาซา";s:3:"zza";s:12:"ซาโฮ";s:3:"ssy";s:24:"ซาโคเนีย";s:3:"tsd";}i:584;a:1:{s:23:"ذیلی سربیائی";s:3:"dsb";}i:979;a:2:{s:12:"下索布文";s:3:"dsb";s:18:"下西利西亞文";s:3:"sli";}i:13;a:33:{s:21:"中央ドゥスン語";s:3:"dtp";s:15:"中部杜順文";s:3:"dtp";s:12:"納瓦霍文";s:2:"nv";s:39:"中央アトラス・タマジクト語";s:3:"tzm";s:6:"中文";s:2:"zh";s:9:"中国語";s:2:"zh";s:27:"中文(中国大陆)‎";s:5:"zh-cn";s:21:"中国語(中国)";s:5:"zh-cn";s:21:"中文(简体)‎";s:7:"zh-hans";s:21:"中文(繁體)‎";s:7:"zh-hant";s:21:"中文(香港)‎";s:5:"zh-hk";s:21:"中国語(香港)";s:5:"zh-hk";s:21:"中文(澳門)‎";s:5:"zh-mo";s:27:"中文(马来西亚)‎";s:5:"zh-my";s:24:"中文(新加坡)‎";s:5:"zh-sg";s:33:"中国語(シンガポール)";s:5:"zh-sg";s:21:"中文(台灣)‎";s:5:"zh-tw";s:21:"中国語(台湾)";s:5:"zh-tw";s:9:"納馬文";s:3:"naq";s:21:"中世オランダ語";s:3:"dum";s:15:"中古荷兰文";s:3:"dum";s:15:"中古荷蘭文";s:3:"dum";s:9:"中英語";s:3:"enm";s:12:"中古英文";s:3:"enm";s:21:"中期フランス語";s:3:"frm";s:12:"中古法文";s:3:"frm";s:18:"中高ドイツ語";s:3:"gmh";s:18:"中古高地德文";s:3:"gmh";s:27:"中期アイルランド語";s:3:"mga";s:18:"中古爱尔兰文";s:3:"mga";s:18:"中古愛爾蘭文";s:3:"mga";s:36:"中央アラスカ・ユピック語";s:3:"esu";s:15:"中尤皮克文";s:3:"esu";}i:850;a:1:{s:9:"ዲቬህ";s:2:"dv";}i:921;a:29:{s:30:"དི་བེ་ཧི་ཁ";s:2:"dv";s:42:"དབིན་ཇིའི་སྐད།";s:2:"en";s:66:"དབིན་ཇིའི་སྐད། (ཁེ་ན་ཌ་)";s:5:"en-ca";s:99:"དབིན་ཇིའི་སྐད། (དབིན་ཇིའི་རྒྱལ་ཁབ་)";s:5:"en-gb";s:16:"Ισπανικά";s:2:"es";s:18:"Ιρλανδικά";s:2:"ga";s:26:"Ιντερλίνγκουα";s:2:"ia";s:22:"Ινδονησιακά";s:2:"id";s:26:"Ιντερλίνγκουε";s:2:"ie";s:16:"Ινουπιάκ";s:2:"ik";s:10:"Ιλόκο";s:3:"ilo";s:14:"Ινγκούς";s:3:"inh";s:18:"Ισλανδικά";s:2:"is";s:45:"དབྱི་ཏ་་ལའི་མི།";s:2:"it";s:14:"Ιταλικά";s:2:"it";s:22:"Ινουκτιτούτ";s:2:"iu";s:16:"Ιαπωνικά";s:2:"ja";s:20:"Ιαβανεζικά";s:2:"jv";s:19:"Ινάρι Σάμι";s:3:"smn";s:60:"དབིན་ཇིའི་སྐད། (ཨ་རི་)";s:5:"en-us";s:52:"Ισπανικά Λατινικής Αμερικής";s:6:"es-419";s:31:"Ισπανικά Ευρώπης";s:5:"es-es";s:33:"Ιδιωματικά Σινούκ";s:3:"chn";s:24:"ད་ཀོ་ཏ་ཁ";s:3:"dak";s:10:"Ιμπάν";s:3:"iba";s:31:"Ιουδαϊκά-Περσικά";s:3:"jpr";s:31:"Ιουδαϊκά-Αραβικά";s:3:"jrb";s:31:"Ισπανικά Μεξικού";s:5:"es-mx";s:16:"Ιμπίμπιο";s:3:"ibb";}i:925;a:49:{s:14:"Ντιβέχι";s:2:"dv";s:18:"Ντζόνγκχα";s:2:"dz";s:24:"ཕི་ནིཤ་ཁ";s:2:"fi";s:33:"ཕི་ཇི་ཡཱན་ཁ";s:2:"fj";s:33:"ཕཱ་རོ་ཨིས་ཁ";s:2:"fo";s:18:"ཕྲནཅ་ཁ";s:2:"fr";s:14:"Ναούρου";s:2:"na";s:24:"Ναπολιτανικά";s:3:"nap";s:33:"Νορβηγικά Μποκμάλ";s:2:"nb";s:12:"Νεπάλι";s:2:"ne";s:16:"Νεγουάρι";s:3:"new";s:14:"Ντόνγκα";s:2:"ng";s:14:"Νιούεαν";s:3:"niu";s:33:"Νορβηγικά Νινόρσκ";s:2:"nn";s:18:"Νορβηγικά";s:2:"no";s:12:"Νάβαχο";s:2:"nv";s:14:"Νιάντζα";s:2:"ny";s:30:"ཕི་ཐོ་ཡའི།";s:2:"pt";s:19:"Νότια Σάμι";s:3:"sma";s:19:"Νότια Σόθο";s:2:"st";s:15:"ጽዋናዊኛ";s:2:"tn";s:6:"粵語";s:6:"zh-yue";s:14:"Ντουάλα";s:3:"dua";s:39:"ཕི་ལི་པི་ནོ་ཁ";s:3:"fil";s:14:"Νγκόμπα";s:3:"jgo";s:8:"Νάμα";s:3:"naq";s:27:"Ντεμπέλε Βορρά";s:2:"nd";s:33:"ཕྷེལེ་མིཤ་ཁ";s:5:"nl-be";s:9:"Ν’Κο";s:3:"nqo";s:27:"Ντεμπέλε Νότου";s:2:"nr";s:10:"Νουέρ";s:3:"nus";s:16:"Νιανκόλε";s:3:"nyn";s:27:"Νότια Αλαταϊκά";s:3:"alt";s:14:"Ντακότα";s:3:"dak";s:18:"Ντάργκουα";s:3:"dar";s:20:"Ντέλαγουερ";s:3:"del";s:18:"Ντόγκριμπ";s:3:"dgr";s:12:"Ντίνκα";s:3:"din";s:14:"Ντόγκρι";s:3:"doi";s:18:"Ντογιούλα";s:3:"dyu";s:16:"Νταζάγκα";s:3:"dzg";s:8:"Νίας";s:3:"nia";s:12:"Νογκάι";s:3:"nog";s:20:"Νιαμγουέζι";s:3:"nym";s:10:"Νιόρο";s:3:"nyo";s:10:"Νζίμα";s:3:"nzi";s:16:"Νγκαμπέι";s:3:"sba";s:23:"Νιάσα Τόνγκα";s:3:"tog";s:20:"Νγκιεμπούν";s:3:"nnh";}i:342;a:20:{s:18:"दिवेही";s:2:"dv";s:33:"എസ്‌പരാന്റോ";s:2:"eo";s:33:"എസ്റ്റോണിയൻ";s:2:"et";s:31:"दक्षिण सामी";s:3:"sma";s:43:"दक्षिणात्य सामी";s:3:"sma";s:34:"दक्षिणी सामी";s:3:"sma";s:15:"दुआला";s:3:"dua";s:18:"दुवाला";s:3:"dua";s:12:"എംബു";s:3:"ebu";s:15:"എഫിക്";s:3:"efi";s:34:"दक्षिण देबेल";s:2:"nr";s:49:"दक्षिणात्य देबेली";s:2:"nr";s:40:"दक्षिणी अल्ताई";s:3:"alt";s:49:"दक्षिणात्य अल्ताई";s:3:"alt";s:18:"दाकोता";s:3:"dak";s:21:"दार्गवा";s:3:"dar";s:18:"दिन्का";s:3:"din";s:21:"എകാജുക്";s:3:"eka";s:27:"എലാമൈറ്റ്";s:3:"elx";s:18:"എവോൻഡോ";s:3:"ewo";}i:238;a:6:{s:18:"ದಿವೆಹಿ";s:2:"dv";s:31:"ದಕ್ಷಿಣ ಸಾಮಿ";s:3:"sma";s:31:"ದಕ್ಷಿಣ ಸೋಥೋ";s:2:"st";s:37:"ದಕ್ಷಿಣ ದೆಬೆಲೆ";s:2:"nr";s:40:"ದಕ್ಷಿಣ ಅಲ್ಟಾಯ್";s:3:"alt";s:21:"ದರ್ಗ್ವಾ";s:3:"dar";}i:366;a:6:{s:18:"ദിവെഹി";s:2:"dv";s:15:"ദ്വാല";s:3:"dua";s:40:"ദക്ഷിണ നെഡിബിൾ";s:2:"nr";s:18:"ദലവാരെ";s:3:"del";s:12:"ദിൻക";s:3:"din";s:15:"ദ്വൈല";s:3:"dyu";}i:853;a:2:{s:18:"ድዞንግኻኛ";s:2:"dz";s:9:"ଥାଇ";s:2:"th";}i:938;a:10:{s:18:"རྫོང་ཁ";s:2:"dz";s:9:"ፊኒሽ";s:2:"fi";s:9:"ፊጂኛ";s:2:"fj";s:33:"རི་པིན་སྐད་";s:2:"ja";s:33:"རོ་མེ་ནིཤ་ཁ";s:2:"rm";s:42:"རོ་མེ་ནི་ཡཱན་ཁ";s:2:"ro";s:24:"རྒྱ་སྐད་";s:2:"zh";s:24:"རྒྱ་མི་ཁ";s:2:"zh";s:48:"རྒྱ་མི་ཁ་འཇམ་སངམ";s:7:"zh-hans";s:15:"ፊሊፒንኛ";s:3:"fil";}i:403;a:2:{s:14:"ջոնգքհա";s:2:"dz";s:19:"ջոլա-ֆոնյի";s:3:"dyo";}i:688;a:8:{s:14:"ژونگکھا";s:2:"dz";s:10:"ژاپنی";s:2:"ja";s:12:"ژونٛگا";s:2:"ts";s:8:"ژوسا";s:2:"xh";s:15:"수쿠마족어";s:3:"suk";s:9:"수수어";s:3:"sus";s:12:"수메르어";s:3:"sux";s:18:"ژھِمشِیان";s:3:"tsi";}i:981;a:1:{s:9:"不丹文";s:2:"dz";}i:770;a:8:{s:6:"ኢዊ";s:2:"ee";s:21:"ኢስቶኒያንኛ";s:2:"et";s:21:"ኢንቴርሊንጓ";s:2:"ia";s:22:"ኢንቴር ቋንቋ";s:2:"ia";s:18:"ኢንዶኔዥኛ";s:2:"id";s:12:"ኢግቦኛ";s:2:"ig";s:9:"ኢቦኛ";s:3:"ebu";s:16:"ኢናሪ ሳሚ";s:3:"smn";}i:312;a:27:{s:9:"ईवे";s:2:"ee";s:27:"ინგლისური";s:2:"en";s:30:"ირლანდიური";s:2:"ga";s:33:"ईन्टरलिंगुआ";s:2:"ia";s:45:"ინტერლინგუალური";s:2:"ia";s:33:"ინდონეზიური";s:2:"id";s:33:"ईन्टरलिंगुइ";s:2:"ie";s:30:"ინტერლინგი";s:2:"ie";s:15:"ईग्बो";s:2:"ig";s:12:"იგბო";s:2:"ig";s:24:"ინგუშური";s:3:"inh";s:9:"იდო";s:2:"io";s:30:"ისლანდიური";s:2:"is";s:24:"იტალიური";s:2:"it";s:30:"ინუკტიტუტი";s:2:"iu";s:24:"იაპონური";s:2:"ja";s:18:"იავური";s:2:"jv";s:12:"조지아어";s:2:"ka";s:24:"იაკუტური";s:3:"sah";s:15:"იდიში";s:2:"yi";s:18:"იორუბა";s:2:"yo";s:37:"ინარი-საამური";s:3:"smn";s:15:"იბანი";s:3:"iba";s:40:"იუდეო-სპარსული";s:3:"jpr";s:37:"იუდეო-არაბული";s:3:"jrb";s:25:"조로아스터 다리어";s:3:"gbz";s:18:"იბიბიო";s:3:"ibb";}i:456;a:12:{s:12:"エウェ語";s:2:"ee";s:15:"エミリア語";s:3:"egl";s:33:"エミリア・ロマーニャ語";s:3:"eml";s:21:"エスペラント語";s:2:"eo";s:18:"エストニア語";s:2:"et";s:30:"エストレマドゥーラ語";s:3:"ext";s:15:"エルジャ語";s:3:"myv";s:12:"エンブ語";s:3:"ebu";s:15:"エフィク語";s:3:"efi";s:18:"エカジュク語";s:3:"eka";s:12:"エラム語";s:3:"elx";s:18:"エウォンド語";s:3:"ewo";}i:308;a:11:{s:9:"ევე";s:2:"ee";s:27:"ესპერანტო";s:2:"eo";s:24:"ესპანური";s:2:"es";s:24:"ესტონური";s:2:"et";s:21:"ებრაული";s:2:"he";s:15:"ერზია";s:3:"myv";s:12:"ემბუ";s:3:"ebu";s:15:"ეფიკი";s:3:"efi";s:49:"ევროპული ესპანური";s:5:"es-es";s:61:"ევროპული პორტუგალიური";s:5:"pt-pt";s:18:"ევონდო";s:3:"ewo";}i:208;a:5:{s:9:"ಈವ್";s:2:"ee";s:12:"나우루어";s:2:"na";s:12:"나폴리어";s:3:"nap";s:12:"나바호어";s:2:"nv";s:9:"나마어";s:3:"naq";}i:319;a:14:{s:9:"एवे";s:2:"ee";s:30:"एस्पेरेंतो";s:2:"eo";s:30:"एस्परान्टो";s:2:"eo";s:33:"एस्पेरान्तो";s:2:"eo";s:30:"एस्टोनियाई";s:2:"et";s:21:"एर्ज़या";s:3:"myv";s:21:"एर्झ्या";s:3:"myv";s:15:"एम्बु";s:3:"ebu";s:15:"एम्बू";s:3:"ebu";s:12:"एफिक";s:3:"efi";s:28:"एकविध भाषा";s:3:"mul";s:15:"एन्को";s:3:"nqo";s:18:"एकाजुक";s:3:"eka";s:21:"एलामाइट";s:3:"elx";}i:311;a:39:{s:9:"इवि";s:2:"ee";s:21:"इंग्रजी";s:2:"en";s:27:"इस्टोनियन";s:2:"et";s:33:"इस्टोनियाली";s:2:"et";s:18:"蘇格蘭蓋爾文";s:2:"gd";s:33:"इंटरलिंग्वा";s:2:"ia";s:39:"इन्टर्लिङ्गुआ";s:2:"ia";s:33:"इंडोनेशियाई";s:2:"id";s:30:"इंडोनेशियन";s:2:"id";s:39:"इन्डोनेसियाली";s:2:"id";s:27:"इन्टरलिंग";s:2:"ie";s:15:"इग्बो";s:2:"ig";s:27:"इनुपियाक्";s:2:"ik";s:24:"इनूपियाक";s:2:"ik";s:15:"इलोको";s:3:"ilo";s:15:"इंगुश";s:3:"inh";s:9:"इडौ";s:2:"io";s:18:"इतालवी";s:2:"it";s:21:"इटालियन";s:2:"it";s:27:"इनूकीटूत्";s:2:"iu";s:27:"इनुकिटुट्";s:2:"iu";s:12:"蘇格蘭文";s:3:"sco";s:18:"蘇拉南東墎文";s:3:"srn";s:24:"თიგრინია";s:2:"ti";s:30:"თურქმენული";s:2:"tk";s:21:"თურქული";s:2:"tr";s:21:"თათრული";s:2:"tt";s:9:"თუი";s:2:"tw";s:10:"ķīniešu";s:2:"zh";s:25:"ķīniešu vienkāršotā";s:7:"zh-hans";s:25:"ķīniešu tradicionālā";s:7:"zh-hant";s:89:"თანამედროვე სტანდარტული არაბული";s:6:"ar-001";s:28:"इनारी सामी";s:3:"smn";s:15:"თიგრე";s:3:"tig";s:21:"इवोन्डो";s:3:"ewo";s:12:"इबान";s:3:"iba";s:12:"蘇庫馬文";s:3:"suk";s:9:"蘇蘇文";s:3:"sus";s:9:"蘇美文";s:3:"sux";}i:823;a:17:{s:9:"ଇୱେ";s:2:"ee";s:18:"ଇଂରାଜୀ";s:2:"en";s:15:"ଇରିସ୍";s:2:"ga";s:39:"ଇର୍ଣ୍ଟଲିଙ୍ଗୁଆ";s:2:"ia";s:36:"ଇଣ୍ଡୋନେସିଆନ୍";s:2:"id";s:42:"ଇର୍ଣ୍ଟରଲିଙ୍ଗୁଇ";s:2:"ie";s:15:"ଇଗ୍ବୋ";s:2:"ig";s:27:"ଇନୁପିୟାକ୍";s:2:"ik";s:15:"ଇଲୋକୋ";s:3:"ilo";s:24:"ଇଁଙ୍ଗୁଶ୍";s:3:"inh";s:9:"ଇଡୋ";s:2:"io";s:24:"ଇଟାଲିଆନ୍";s:2:"it";s:24:"ଇନକୀଟୁତ୍";s:2:"iu";s:12:"大溪地文";s:2:"ty";s:28:"ଇନାରୀ ସାମି";s:3:"smn";s:21:"ଇୱୋଣ୍ଡୋ";s:3:"ewo";s:15:"ଇବାନ୍";s:3:"iba";}i:568;a:4:{s:9:"ਈਵਈ";s:2:"ee";s:15:"말라가시어";s:2:"mg";s:15:"말라얄람어";s:2:"ml";s:12:"말레이어";s:2:"ms";}i:952;a:3:{s:9:"ஈவ்";s:2:"ee";s:21:"ஈகாஜுக்";s:3:"eka";s:15:"틀링깃족어";s:3:"tli";}i:877;a:3:{s:12:"ግሪክኛ";s:2:"el";s:12:"ግሪከኛ";s:2:"el";s:12:"ግዕዝኛ";s:3:"gez";}i:455;a:17:{s:15:"গ্রিক";s:2:"el";s:18:"গাগাউজ";s:3:"gag";s:30:"গ্যালিশিয়";s:2:"gl";s:27:"গুয়ারানি";s:2:"gn";s:12:"গথিক";s:3:"got";s:21:"গুজরাটি";s:2:"gu";s:18:"গান্ডা";s:2:"lg";s:6:"গা";s:3:"gaa";s:12:"গুসী";s:3:"guz";s:18:"গোম্বা";s:3:"jgo";s:9:"গীজ";s:3:"gez";s:15:"গায়ো";s:3:"gay";s:30:"গিলবার্টিজ";s:3:"gil";s:18:"গোন্ডি";s:3:"gon";s:30:"গোরোন্তালো";s:3:"gor";s:18:"গ্রেবো";s:3:"grb";s:24:"গওইচ্’ইন";s:3:"gwi";}i:906;a:9:{s:18:"གྲིཀ་ཁ";s:2:"el";s:42:"གལ་ཨིས་ཨི་ཡན་ཁ";s:2:"gl";s:33:"གུ་ཝ་ར་ནི་ཁ";s:2:"gn";s:62:"གིརིཀ, སྔ་དུས་ཀྱི (༡༤༥༣)";s:3:"grc";s:39:"གུཇ་རཱཏི་སྐད།";s:2:"gu";s:33:"གུ་ཇ་ར་ཏི་ཁ";s:2:"gu";s:12:"Ίγκμπο";s:2:"ig";s:8:"Ίντο";s:2:"io";s:21:"གཱ་སྐད།";s:3:"gaa";}i:740;a:25:{s:12:"یونانی";s:2:"el";s:14:"یوٗنٲنی";s:2:"el";s:12:"یوناني";s:2:"el";s:19:"یونانی کهن";s:3:"grc";s:17:"یی سیچوان";s:2:"ii";s:12:"یاقوتی";s:3:"sah";s:10:"یاکُت";s:3:"sah";s:12:"یوئگہر";s:2:"ug";s:22:"یوٗکرینیٲیی";s:2:"uk";s:20:"یوکرینیائی";s:2:"uk";s:6:"یدی";s:2:"yi";s:10:"یِدِش";s:2:"yi";s:6:"یدش";s:2:"yi";s:16:"یوروبایی";s:2:"yo";s:12:"یورُبا";s:2:"yo";s:12:"یوروبا";s:2:"yo";s:36:"یوٗ ایٚس اَنٛگریٖزۍ";s:5:"en-us";s:25:"یورپی ہسپانوی";s:5:"es-es";s:25:"یورپی پرتگالی";s:5:"pt-pt";s:18:"یُمبُندوٗ";s:3:"umb";s:12:"یائویی";s:3:"yao";s:6:"یاو";s:3:"yao";s:8:"یاپی";s:3:"yap";s:12:"یَپیٖز";s:3:"yap";s:21:"ییدیشی شرقی";s:3:"ydd";}i:351;a:48:{s:18:"यूनानी";s:2:"el";s:24:"ഗ്രീക്ക്";s:2:"el";s:16:"şimal fris dili";s:3:"frr";s:18:"ഗാഗൂസ്";s:3:"gag";s:21:"ഗലീഷ്യൻ";s:2:"gl";s:18:"ഗ്വരനീ";s:2:"gn";s:24:"ഗോഥിക്ക്";s:3:"got";s:27:"ഗുജറാത്തി";s:2:"gu";s:6:"ꆇꉙ";s:2:"ii";s:15:"ഗാണ്ട";s:2:"lg";s:16:"şimal soto dili";s:3:"nso";s:15:"याकूत";s:3:"sah";s:12:"şimali sami";s:2:"se";s:5:"şona";s:2:"sn";s:33:"यूक्रेनियाई";s:2:"uk";s:30:"युक्रेनियन";s:2:"uk";s:24:"युक्रेनी";s:2:"uk";s:18:"येहुदी";s:2:"yi";s:21:"यिद्दिश";s:2:"yi";s:21:"यिद्दिस";s:2:"yi";s:18:"योरूबा";s:2:"yo";s:18:"योरुबा";s:2:"yo";s:18:"योरूवा";s:2:"yo";s:6:"ഗാ";s:3:"gaa";s:12:"ഗുസീ";s:3:"guz";s:15:"ഗോമ്പ";s:3:"jgo";s:8:"şambala";s:3:"ksb";s:15:"şimali ndebele";s:2:"nd";s:40:"यूरोपीय स्पेनी";s:5:"es-es";s:46:"युरोपियन स्पॅनिश";s:5:"es-es";s:46:"युरोपेली स्पेनिस";s:5:"es-es";s:12:"ഗീസ്";s:3:"gez";s:49:"यूरोपीय पुर्तगाली";s:5:"pt-pt";s:52:"युरोपियन पोर्तुगीज";s:5:"pt-pt";s:9:"ഗയൊ";s:3:"gay";s:12:"ഗബ്യ";s:3:"gba";s:21:"ഗിൽബർസേ";s:3:"gil";s:18:"ഗോണ്ഡി";s:3:"gon";s:27:"ഗൊറോൻറാലോ";s:3:"gor";s:15:"ഗ്രബൊ";s:3:"grb";s:31:"ഗ്വിച്ച് ഇൻ";s:3:"gwi";s:18:"ഗംബായ്";s:3:"sba";s:9:"şan dili";s:3:"shn";s:27:"युगैरिटिक";s:3:"uga";s:27:"युगॅरिटिक";s:3:"uga";s:9:"याओ";s:3:"yao";s:15:"यापीस";s:3:"yap";s:18:"ഗീംബൂൺ";s:3:"nnh";}i:392;a:11:{s:16:"հունարեն";s:2:"el";s:12:"հաուսա";s:2:"ha";s:20:"հավայիերեն";s:3:"haw";s:10:"հինդի";s:2:"hi";s:16:"հաիթերեն";s:2:"ht";s:22:"հունգարերեն";s:2:"hu";s:14:"հայերեն";s:2:"hy";s:20:"հոլանդերեն";s:2:"nl";s:31:"հյուսիսային սամի";s:2:"se";s:27:"հարավային սամի";s:3:"sma";s:37:"հյուսիսային նդեբելե";s:2:"nd";}i:462;a:3:{s:15:"ギリシャ語";s:2:"el";s:12:"ギラキ語";s:3:"glk";s:33:"ආර්මේනියානු";s:2:"hy";}i:223;a:17:{s:18:"ಗ್ರೀಕ್";s:2:"el";s:15:"ಗಗೌಜ್";s:3:"gag";s:33:"ಗ್ಯಾಲಿಶಿಯನ್";s:2:"gl";s:18:"ಗೌರಾನಿ";s:2:"gn";s:18:"ಗೋಥಿಕ್";s:3:"got";s:21:"ಗುಜರಾತಿ";s:2:"gu";s:15:"ಗಾಂಡಾ";s:2:"lg";s:3:"ಗ";s:3:"gaa";s:12:"ಗುಸಿ";s:3:"guz";s:12:"ಗೀಝ್";s:3:"gez";s:12:"ಗಾಯೋ";s:3:"gay";s:18:"ಗ್ಬಾಯಾ";s:3:"gba";s:33:"ಗಿಲ್ಬರ್ಟೀಸ್";s:3:"gil";s:15:"ಗೊಂಡಿ";s:3:"gon";s:27:"ಗೊರೊಂಟಾಲೋ";s:3:"gor";s:18:"ಗ್ರೇಬೋ";s:3:"grb";s:30:"ಗ್ವಿಚ್‌ಇನ್";s:3:"gwi";}i:536;a:5:{s:12:"그리스어";s:2:"el";s:20:"그리스어, 고대";s:3:"grc";s:15:"그린란드어";s:2:"kl";s:12:"그바야어";s:3:"gba";s:12:"그위친어";s:3:"gwi";}i:839;a:14:{s:18:"ଗ୍ରୀକ୍";s:2:"el";s:24:"ଗାଲସିଆନ୍";s:2:"gl";s:21:"ଗୁଆରାନୀ";s:2:"gn";s:18:"ଗୋଥିକ୍";s:3:"got";s:24:"ଗୁଜୁରାଟୀ";s:2:"gu";s:39:"ଗ୍ରୀନଲାଣ୍ଡିକ୍";s:2:"kl";s:15:"ଗନ୍ଦା";s:2:"lg";s:6:"ଗା";s:3:"gaa";s:12:"ଗୀଜ୍";s:3:"gez";s:12:"ଗାୟୋ";s:3:"gay";s:15:"ଗବାୟା";s:3:"gba";s:18:"ଗୋଣ୍ଡି";s:3:"gon";s:30:"ଗୋରୋଣ୍ଟାଲୋ";s:3:"gor";s:18:"ଗ୍ରେବୋ";s:3:"grb";}i:43;a:19:{s:18:"Гириэктии";s:2:"el";s:18:"Галисианӣ";s:2:"gl";s:12:"Горанӣ";s:2:"gn";s:12:"Готски";s:3:"got";s:16:"Гуҷаратӣ";s:2:"gu";s:16:"ГӀалгӀай";s:3:"inh";s:22:"Гурусууннуу";s:2:"ka";s:10:"Гурҷӣ";s:2:"ka";s:30:"លុចហ្សំបួរ";s:2:"lb";s:21:"លីនកាឡា";s:2:"ln";s:27:"លីទុយអានី";s:2:"lt";s:4:"Га";s:3:"gaa";s:8:"Гајо";s:3:"gay";s:10:"Гбаја";s:3:"gba";s:20:"Гилбертшки";s:3:"gil";s:10:"Гонди";s:3:"gon";s:18:"Горонтало";s:3:"gor";s:10:"Гребо";s:3:"grb";s:15:"Гвич’ин";s:3:"gwi";}i:484;a:12:{s:18:"ග්‍රීක";s:2:"el";s:15:"ගගාස්";s:3:"gag";s:30:"ගැලීසියානු";s:2:"gl";s:21:"ගුවාරනි";s:2:"gn";s:21:"ගුජරාටි";s:2:"gu";s:15:"ගන්ඩා";s:2:"lg";s:12:"ツワナ語";s:2:"tn";s:15:"ツォンガ語";s:2:"ts";s:12:"ගුසී";s:3:"guz";s:12:"ツバル語";s:3:"tvl";s:15:"ツァフル語";s:3:"tkr";s:15:"ツァコン語";s:3:"tsd";}i:70;a:1:{s:10:"Юнонӣ";s:2:"el";}i:773;a:6:{s:18:"እንግሊዝኛ";s:2:"en";s:28:"እስኮትስ ጌልክኛ";s:2:"gd";s:18:"እንዶኑሲኛ";s:2:"id";s:24:"እንተርሊንግወ";s:2:"ie";s:18:"እኑፒያቅኛ";s:2:"ik";s:21:"እኑክቲቱትኛ";s:2:"iu";}i:439;a:29:{s:18:"ইংরেজি";s:2:"en";s:45:"ইন্টারলিঙ্গুয়া";s:2:"ia";s:33:"ইন্দোনেশীয়";s:2:"id";s:33:"ইন্টারলিঙ্গ";s:2:"ie";s:18:"ইগ্‌বো";s:2:"ig";s:27:"ইনুপিয়াক";s:2:"ik";s:15:"ইলোকো";s:3:"ilo";s:18:"ইঙ্গুশ";s:3:"inh";s:9:"ইডো";s:2:"io";s:21:"ইতালীয়";s:2:"it";s:30:"ইনুক্টিটুট";s:2:"iu";s:12:"盧森堡文";s:2:"lb";s:9:"盧晒文";s:3:"lus";s:15:"盧森尼亞文";s:3:"rue";s:12:"盧安達文";s:2:"rw";s:21:"ইয়াকুট";s:3:"sah";s:30:"ইউক্রেনীয়";s:2:"uk";s:18:"ইওরুবা";s:2:"yo";s:9:"盧奧文";s:3:"luo";s:9:"盧雅文";s:3:"luy";s:28:"ইনারি সামি";s:3:"smn";s:52:"ইউরোপীয় স্প্যানিশ";s:5:"es-es";s:46:"ইউরোপের পর্তুগীজ";s:5:"pt-pt";s:18:"ইকাজুক";s:3:"eka";s:18:"ইওন্ডো";s:3:"ewo";s:12:"ইবান";s:3:"iba";s:12:"盧恩達文";s:3:"lun";s:15:"ইয়াও";s:3:"yao";s:24:"ইয়াপেসে";s:3:"yap";}i:207;a:19:{s:24:"ಇಂಗ್ಲೀಷ್";s:2:"en";s:27:"‏אינטרלינגואה";s:2:"ia";s:39:"ಇಂಟರ್‌ಲಿಂಗ್ವಾ";s:2:"ia";s:33:"ಇಂಡೋನೇಶಿಯನ್";s:2:"id";s:30:"ಇಂಟರ್ಲಿಂಗ್";s:2:"ie";s:15:"ಇಗ್ಬೊ";s:2:"ig";s:6:"Ïgbö";s:2:"ig";s:27:"ಇನುಪಿಯಾಕ್";s:2:"ik";s:21:"ಇಲ್ಲಿಕೋ";s:3:"ilo";s:18:"ಇಂಗುಷ್";s:3:"inh";s:9:"ಇಡೊ";s:2:"io";s:24:"ಇಟಾಲಿಯನ್";s:2:"it";s:33:"ಇನುಕ್ಟಿಟುಟ್";s:2:"iu";s:32:"‏נורבגית ספרותית";s:2:"nb";s:17:"‏וולאפיק";s:2:"vo";s:25:"ಇನರಿ ಸಾಮಿ";s:3:"smn";s:18:"ಇವಾಂಡೋ";s:3:"ewo";s:15:"ಇಬಾನ್";s:3:"iba";s:26:"‏נורדית עתיקה";s:3:"non";}i:689;a:5:{s:6:"영어";s:2:"en";s:18:"영어 (캐나다)";s:5:"en-ca";s:18:"영어 (영국식)";s:5:"en-gb";s:14:"영어(호주)";s:5:"en-au";s:14:"영어, 중세";s:3:"enm";}i:452;a:21:{s:18:"イギリス英語";s:5:"en-gb";s:9:"芬兰文";s:2:"fi";s:9:"芬蘭文";s:2:"fi";s:24:"インターリングア";s:2:"ia";s:21:"インドネシア語";s:2:"id";s:21:"インターリング";s:2:"ie";s:9:"イボ語";s:2:"ig";s:21:"イヌピアック語";s:2:"ik";s:15:"イロカノ語";s:3:"ilo";s:18:"イングーシ語";s:3:"inh";s:9:"イド語";s:2:"io";s:15:"イタリア語";s:2:"it";s:30:"イヌクウティトット語";s:2:"iu";s:21:"イディッシュ語";s:2:"yi";s:9:"주앙어";s:2:"za";s:24:"イナリ・サーミ語";s:3:"smn";s:12:"イバン語";s:3:"iba";s:9:"주니어";s:3:"zun";s:15:"イビビオ語";s:3:"ibb";s:18:"イングリア語";s:3:"izh";s:15:"イエンバ語";s:3:"ybb";}i:772;a:3:{s:18:"ኤስፐራንቶ";s:2:"eo";s:18:"ኤስቶኒአን";s:2:"et";s:9:"ኤፊክ";s:3:"efi";}i:831;a:7:{s:33:"ଏସ୍ପାରେଣ୍ଟୋ";s:2:"eo";s:30:"ଏସ୍ତୋନିଆନ୍";s:2:"et";s:18:"ଏର୍ଜୟା";s:3:"myv";s:15:"ଏଫିକ୍";s:3:"efi";s:15:"ଏନ୍କୋ";s:3:"nqo";s:21:"ଏକାଜୁକ୍";s:3:"eka";s:24:"ଏଲାମାଇଟ୍";s:3:"elx";}i:567;a:8:{s:27:"ਇਸਪੇਰਾਂਟੋ";s:2:"eo";s:24:"ਇਸਟੋਨੀਆਈ";s:2:"et";s:33:"ਇੰਡੋਨੇਸ਼ੀਆਈ";s:2:"id";s:12:"ਇਗਬੋ";s:2:"ig";s:18:"ਇਤਾਲਵੀ";s:2:"it";s:24:"ਇੰਕਟੀਟੂਤ";s:2:"iu";s:12:"ਇੰਬੂ";s:3:"ebu";s:28:"ਇਨਾਰੀ ਸਾਮੀ";s:3:"smn";}i:473;a:29:{s:30:"එස්පැරන්ටෝ";s:2:"eo";s:15:"スペイン語";s:2:"es";s:33:"එස්තෝනියානු";s:2:"et";s:36:"スコットランド・ゲール語";s:2:"gd";s:21:"スイスドイツ語";s:3:"gsw";s:24:"スコットランド語";s:3:"sco";s:18:"スロバキア語";s:2:"sk";s:18:"スロベニア語";s:2:"sl";s:15:"スリナム語";s:3:"srn";s:12:"スワジ語";s:2:"ss";s:12:"スンダ語";s:2:"su";s:21:"スウェーデン語";s:2:"sv";s:15:"スワヒリ語";s:2:"sw";s:31:"중앙모로코 타마지트어";s:3:"tzm";s:9:"중국어";s:2:"zh";s:17:"중국어(간체)";s:7:"zh-hans";s:17:"중국어(번체)";s:7:"zh-hant";s:15:"එම්බු";s:3:"ebu";s:18:"එන්‘කෝ";s:3:"nqo";s:27:"スコルト・サーミ語";s:3:"sms";s:22:"중남미 스페인어";s:6:"es-419";s:35:"スペイン語(イベリア半島)";s:5:"es-es";s:18:"スレイビー語";s:3:"den";s:22:"중세 네덜란드어";s:3:"dum";s:19:"중세 프랑스어";s:3:"frm";s:23:"중세 고지 독일어";s:3:"gmh";s:12:"スクマ語";s:3:"suk";s:9:"スス語";s:3:"sus";s:18:"スラヤール語";s:3:"sly";}i:958;a:8:{s:30:"எஸ்பரேன்டோ";s:2:"eo";s:30:"எஸ்டோனியன்";s:2:"et";s:58:"எளிதாக்கப்பட்ட சீனம்";s:7:"zh-hans";s:15:"எம்பு";s:3:"ebu";s:18:"எஃபிக்";s:3:"efi";s:18:"என்‘கோ";s:3:"nqo";s:18:"எலமைட்";s:3:"elx";s:21:"எவோன்டோ";s:3:"ewo";}i:86;a:37:{s:30:"ఎస్పరెన్టొ";s:2:"eo";s:20:"оксидентал";s:2:"ie";s:20:"окцидентал";s:2:"ie";s:19:"олык марий";s:3:"mhr";s:21:"ఎర్జియా";s:3:"myv";s:20:"окситански";s:2:"oc";s:14:"окситан";s:2:"oc";s:22:"окситанский";s:2:"oc";s:12:"окитан";s:2:"oc";s:10:"оромо";s:2:"om";s:14:"оромочо";s:2:"om";s:8:"орыя";s:2:"or";s:8:"ория";s:2:"or";s:12:"орияча";s:2:"or";s:10:"орија";s:2:"or";s:8:"орія";s:2:"or";s:14:"осетски";s:2:"os";s:12:"осетин";s:2:"os";s:20:"осетинский";s:2:"os";s:20:"осетинська";s:2:"os";s:17:"орыс тілі";s:2:"ru";s:12:"орусча";s:2:"ru";s:8:"орос";s:2:"ru";s:27:"оңтүстік саами";s:3:"sma";s:55:"орталық атлас тамасагихт тілі";s:3:"tzm";s:33:"опростен китайски";s:7:"zh-hans";s:15:"ఎఫిక్";s:3:"efi";s:21:"ఎలామైట్";s:3:"elx";s:18:"ఎవోండొ";s:3:"ewo";s:14:"оджибва";s:2:"oj";s:12:"оџибва";s:2:"oj";s:14:"оджібва";s:2:"oj";s:12:"оседжи";s:3:"osa";s:12:"осашки";s:3:"osa";s:12:"осейдж";s:3:"osa";s:31:"отомански турски";s:3:"ota";s:18:"османська";s:3:"ota";}i:69;a:5:{s:18:"Эсперанто";s:2:"eo";s:9:"ᏍᏆᏂ";s:2:"es";s:24:"Эстиэнийэлии";s:2:"et";s:12:"Эстонӣ";s:2:"et";s:18:"Эрмээннии";s:2:"hy";}i:934;a:14:{s:30:"ཞི་པན་ཡའི།";s:2:"es";s:12:"Φουλάχ";s:2:"ff";s:20:"Φινλανδικά";s:2:"fi";s:10:"Φίτζι";s:2:"fj";s:10:"Φαρόε";s:2:"fo";s:18:"Φριούλιαν";s:3:"fur";s:30:"ཞི་ལན་སྐད།";s:2:"si";s:18:"ཞོ་ས་ཁ";s:2:"xh";s:26:"Φιλιππινεζικά";s:3:"fil";s:20:"Φλαμανδικά";s:5:"nl-be";s:18:"Φοινικικά";s:3:"phn";s:10:"Φανγκ";s:3:"fan";s:10:"Φάντι";s:3:"fat";s:6:"Φον";s:3:"fon";}i:387;a:8:{s:18:"իսպաներեն";s:2:"es";s:20:"իռլանդերեն";s:2:"ga";s:22:"ինդոնեզերեն";s:2:"id";s:8:"իգբո";s:2:"ig";s:20:"իսլանդերեն";s:2:"is";s:16:"իտալերեն";s:2:"it";s:22:"ինուկտիտուտ";s:2:"iu";s:19:"ինարի սամի";s:3:"smn";}i:828;a:8:{s:12:"스페인어";s:2:"es";s:25:"스코틀랜드 게일어";s:2:"gd";s:18:"스코틀랜드어";s:3:"sco";s:15:"스리랑카어";s:2:"si";s:19:"스라난 통가어";s:3:"srn";s:12:"스웨덴어";s:2:"sv";s:15:"스와힐리어";s:2:"sw";s:19:"스콜트 사미어";s:3:"sms";}i:48;a:27:{s:12:"Испанӣ";s:2:"es";s:27:"ហ្វាំងឡង់";s:2:"fi";s:21:"ហ៊្វីជី";s:2:"fj";s:21:"ហ្វារូស";s:2:"fo";s:48:"ហ្វ្រីស៊ានខាងលិច";s:2:"fy";s:14:"Ирландӣ";s:2:"ga";s:33:"ហ្គាលីស្យាន";s:2:"gl";s:27:"ហ្គូរ៉ានី";s:2:"gn";s:33:"ហ្កុយ៉ារាទី";s:2:"gu";s:12:"ហូសា";s:2:"ha";s:12:"ហាវៃ";s:3:"haw";s:18:"ហិណ្ឌូ";s:2:"hi";s:12:"ហៃទី";s:2:"ht";s:21:"ហុងគ្រី";s:2:"hu";s:22:"Интерлингва";s:2:"ia";s:16:"Индонезӣ";s:2:"id";s:10:"Илоко";s:3:"ilo";s:16:"Ингвишки";s:3:"inh";s:6:"Идо";s:2:"io";s:14:"Исландӣ";s:2:"is";s:30:"ហ្សក​ហ្ស៊ី";s:2:"ka";s:21:"ហុល្លង់";s:2:"nl";s:8:"Ирон";s:2:"os";s:27:"ហ្វីលីពីន";s:3:"fil";s:41:"Иберијски португалски";s:5:"pt-pt";s:33:"Источни фризијски";s:3:"frs";s:8:"Ибан";s:3:"iba";}i:626;a:17:{s:12:"สเปน";s:2:"es";s:33:"สกอตส์กาลิก";s:2:"gd";s:12:"ሒንዱኛ";s:2:"hi";s:21:"สันสกฤต";s:2:"sa";s:21:"สันตาลี";s:3:"sat";s:18:"สกอตส์";s:3:"sco";s:15:"สินธุ";s:2:"sd";s:15:"สิงหล";s:2:"si";s:18:"สโลวัก";s:2:"sk";s:27:"สโลวีเนีย";s:2:"sl";s:15:"สวาติ";s:2:"ss";s:18:"สวีเดน";s:2:"sv";s:21:"สวาฮีลี";s:2:"sw";s:37:"สวาฮีลี-คองโก";s:3:"swc";s:30:"สเปน (ยุโรป)";s:5:"es-es";s:21:"สิกสิกา";s:3:"bla";s:15:"สเลวี";s:3:"den";}i:729;a:19:{s:14:"ہسپانوی";s:2:"es";s:10:"ہاوسا";s:2:"ha";s:8:"ہؤسا";s:2:"ha";s:16:"ہوایِیَن";s:3:"haw";s:10:"ہوائی";s:3:"haw";s:10:"ہِندی";s:2:"hi";s:8:"ہندی";s:2:"hi";s:20:"ہِلیٖگینَن";s:3:"hil";s:19:"ہِری موتوٗ";s:2:"ho";s:29:"ہیٚرِم ساربِیَن";s:3:"hsb";s:14:"ہیتِیاں";s:2:"ht";s:8:"ہیتی";s:2:"ht";s:20:"ہَنٛگیریَن";s:2:"hu";s:14:"ہنگیرین";s:2:"hu";s:16:"ہیٚریٖرو";s:2:"hz";s:14:"ہِتایِت";s:3:"hit";s:10:"ہَیدا";s:3:"hai";s:12:"ہمونٛگ";s:3:"hmn";s:8:"ہُپا";s:3:"hup";}i:859;a:20:{s:15:"愛沙尼亞文";s:2:"et";s:15:"ଫୁଲାହ";s:2:"ff";s:24:"ଫିନ୍ନିସ୍";s:2:"fi";s:12:"ଫିଜି";s:2:"fj";s:21:"ଫାରୋଏସେ";s:2:"fo";s:21:"ଫ୍ରେଞ୍ଚ";s:2:"fr";s:36:"ଫ୍ରିୟୁଲୀୟାନ୍";s:3:"fur";s:12:"愛爾蘭文";s:2:"ga";s:15:"米南卡保文";s:3:"min";s:15:"米南卡堡文";s:3:"min";s:15:"米兰德斯文";s:3:"mwl";s:15:"米蘭德斯文";s:3:"mwl";s:24:"ଫିଲିପିନୋ";s:3:"fil";s:24:"ଫ୍ଲେମିଶ୍";s:5:"nl-be";s:27:"ଫୋନେସିଆନ୍";s:3:"phn";s:15:"ଫାଙ୍ଗ";s:3:"fan";s:18:"ଫାଣ୍ଟି";s:3:"fat";s:9:"ଫନ୍";s:3:"fon";s:15:"米克马克文";s:3:"mic";s:15:"米克馬克文";s:3:"mic";}i:92;a:82:{s:10:"фарсі";s:2:"fa";s:14:"фарсыча";s:2:"fa";s:8:"фула";s:2:"ff";s:10:"фулах";s:2:"ff";s:14:"фінская";s:2:"fi";s:12:"фински";s:2:"fi";s:6:"фин";s:2:"fi";s:10:"финче";s:2:"fi";s:14:"финлянд";s:2:"fi";s:12:"финнаг";s:2:"fi";s:14:"финский";s:2:"fi";s:14:"фінська";s:2:"fi";s:20:"фіджыйская";s:2:"fj";s:18:"фиджийски";s:2:"fj";s:10:"фиджи";s:2:"fj";s:12:"фижиче";s:2:"fj";s:14:"фиџиски";s:2:"fj";s:8:"фижи";s:2:"fj";s:16:"фиџијски";s:2:"fj";s:10:"фіджі";s:2:"fj";s:18:"фарэрская";s:2:"fo";s:18:"фарьорски";s:2:"fo";s:10:"фарер";s:2:"fo";s:14:"фароэче";s:2:"fo";s:12:"фарски";s:2:"fo";s:14:"фарераг";s:2:"fo";s:18:"фарерский";s:2:"fo";s:18:"фарерська";s:2:"fo";s:22:"французская";s:2:"fr";s:20:"француская";s:2:"fr";s:14:"френски";s:2:"fr";s:23:"француз тілі";s:2:"fr";s:18:"французча";s:2:"fr";s:18:"француски";s:2:"fr";s:10:"франц";s:2:"fr";s:14:"францаг";s:2:"fr";s:22:"французский";s:2:"fr";s:20:"французька";s:2:"fr";s:36:"франкопровансалски";s:3:"frp";s:33:"фризский северный";s:3:"frr";s:31:"фризька північна";s:3:"frr";s:22:"фриулиански";s:3:"fur";s:18:"фурлански";s:3:"fur";s:20:"фриульский";s:3:"fur";s:20:"фріульська";s:3:"fur";s:16:"фрызская";s:2:"fy";s:18:"фризийски";s:2:"fy";s:33:"фіджыйская гіндзі";s:3:"hif";s:25:"фиџиски хинди";s:3:"hif";s:52:"фіджыйская гіндзі (лацініца)";s:8:"hif-latn";s:29:"францын окситан";s:2:"oc";s:32:"фалечкогермански";s:3:"pfl";s:20:"филипински";s:3:"fil";s:16:"филиппин";s:3:"fil";s:16:"филипино";s:3:"fil";s:20:"филиппинаг";s:3:"fil";s:24:"филиппинский";s:3:"fil";s:24:"філіппінська";s:3:"fil";s:22:"фламандская";s:5:"nl-be";s:20:"фламандски";s:5:"nl-be";s:23:"фламанд тілі";s:5:"nl-be";s:18:"фламандча";s:5:"nl-be";s:14:"фламанд";s:5:"nl-be";s:22:"фламандский";s:5:"nl-be";s:18:"фламански";s:5:"nl-be";s:22:"фламандська";s:5:"nl-be";s:22:"фінікійская";s:3:"phn";s:20:"финикийски";s:3:"phn";s:18:"феникиски";s:3:"phn";s:22:"финикийский";s:3:"phn";s:37:"фінікійсько-пунічна";s:3:"phn";s:36:"французская (канад.)";s:5:"fr-ca";s:38:"француски (во Канада)";s:5:"fr-ca";s:36:"французская (швейц.)";s:5:"fr-ch";s:8:"фанг";s:3:"fan";s:10:"фанти";s:3:"fat";s:10:"фанті";s:3:"fat";s:6:"фон";s:3:"fon";s:27:"фризька східна";s:3:"frs";s:6:"콤어";s:3:"bkm";s:16:"фарефаре";s:3:"gur";s:56:"фіджыйская гіндзі (дэванагары)";s:8:"hif-deva";}i:87;a:75:{s:20:"пэрсыдзкая";s:2:"fa";s:18:"персийски";s:2:"fa";s:19:"парсы тілі";s:2:"fa";s:16:"персиски";s:2:"fa";s:8:"перс";s:2:"fa";s:18:"персайнаг";s:2:"fa";s:20:"персидский";s:2:"fa";s:18:"персијски";s:2:"fa";s:14:"перська";s:2:"fa";s:28:"правансальская";s:2:"oc";s:16:"панджабі";s:2:"pa";s:20:"пенджабски";s:2:"pa";s:14:"пенджаб";s:2:"pa";s:18:"пунжабиче";s:2:"pa";s:18:"пенџапски";s:2:"pa";s:12:"панжаб";s:2:"pa";s:16:"панджаби";s:2:"pa";s:14:"панџаби";s:2:"pa";s:20:"пангасинан";s:3:"pag";s:26:"пангасинански";s:3:"pag";s:28:"пангасінанська";s:3:"pag";s:16:"пампанга";s:3:"pam";s:20:"папиаменту";s:3:"pap";s:22:"папијаменто";s:3:"pap";s:20:"папьяменто";s:3:"pap";s:21:"пап’яменто";s:3:"pap";s:18:"пикардски";s:3:"pcd";s:45:"пенсилваниски германски";s:3:"pdc";s:8:"пали";s:2:"pi";s:8:"палі";s:2:"pi";s:16:"польская";s:2:"pl";s:12:"полски";s:2:"pl";s:19:"поляк тілі";s:2:"pl";s:14:"полякча";s:2:"pl";s:10:"польш";s:2:"pl";s:16:"польский";s:2:"pl";s:12:"пољски";s:2:"pl";s:16:"польська";s:2:"pl";s:20:"пиемонтски";s:3:"pms";s:14:"понтски";s:3:"pnt";s:14:"пруская";s:3:"prg";s:12:"пруски";s:3:"prg";s:10:"пушту";s:2:"ps";s:8:"пущу";s:2:"ps";s:14:"пашточо";s:2:"ps";s:18:"паштунски";s:2:"ps";s:10:"пашто";s:2:"ps";s:26:"партугальская";s:2:"pt";s:22:"португалски";s:2:"pt";s:25:"португал тілі";s:2:"pt";s:20:"португалча";s:2:"pt";s:16:"португал";s:2:"pt";s:22:"португалиаг";s:2:"pt";s:26:"португальский";s:2:"pt";s:26:"португальська";s:2:"pt";s:42:"партугальская (бразіл.)";s:5:"pt-br";s:31:"португал (бразил)";s:5:"pt-br";s:39:"поедноставен кинески";s:7:"zh-hans";s:25:"повеќе јазици";s:3:"mul";s:35:"португалча (Европа)";s:5:"pt-pt";s:42:"португалски (во Европа)";s:5:"pt-pt";s:41:"португальська (Європа)";s:5:"pt-pt";s:34:"південноалтайська";s:3:"alt";s:18:"ఏకాజక్";s:3:"eka";s:22:"пехлевийски";s:3:"pal";s:24:"пехлевийский";s:3:"pal";s:14:"пехлеві";s:3:"pal";s:14:"палауан";s:3:"pau";s:20:"палауански";s:3:"pau";s:10:"палау";s:3:"pau";s:22:"палауанська";s:3:"pau";s:18:"похнпеиан";s:3:"pon";s:18:"понпејски";s:3:"pon";s:12:"понапе";s:3:"pon";s:24:"провансалски";s:3:"pro";}i:731;a:15:{s:15:"ફારસી";s:2:"fa";s:15:"ફુલાહ";s:2:"ff";s:15:"ફિનિશ";s:2:"fi";s:18:"ફિજીયન";s:2:"fj";s:21:"ફોરિસ્ત";s:2:"fo";s:21:"ફ્રેન્ચ";s:2:"fr";s:33:"ફ્રિયુલિયાન";s:3:"fur";s:28:"ફીજી હિંદી";s:3:"hif";s:12:"ቻይንኛ";s:2:"zh";s:24:"ફિલિપિનો";s:3:"fil";s:21:"ફ્લેમિશ";s:5:"nl-be";s:24:"ફોનિશિયન";s:3:"phn";s:12:"ફેંગ";s:3:"fan";s:15:"ફન્ટી";s:3:"fat";s:9:"ફોન";s:3:"fon";}i:402;a:3:{s:18:"պարսկերեն";s:2:"fa";s:26:"պորտուգալերեն";s:2:"pt";s:33:"պարզեցված չինարեն";s:7:"zh-hans";}i:168;a:3:{s:15:"페르시아어";s:2:"fa";s:9:"페로어";s:2:"fo";s:15:"페니키아어";s:3:"phn";}i:55;a:17:{s:22:"Пиэрсийэлии";s:2:"fa";s:14:"Пииннии";s:2:"fi";s:24:"Пырансуустуу";s:2:"fr";s:19:"Перем Коми";s:3:"koi";s:24:"Провансалски";s:2:"oc";s:22:"Пандьаабтыы";s:2:"pa";s:22:"Пангасински";s:3:"pag";s:16:"Пампанга";s:3:"pam";s:20:"Папиаменто";s:3:"pap";s:8:"Пали";s:2:"pi";s:24:"Португааллыы";s:2:"pt";s:18:"Португалӣ";s:2:"pt";s:37:"Португалӣ (Бразилия)";s:5:"pt-br";s:22:"Пилипииннии";s:3:"fil";s:14:"Пахлави";s:3:"pal";s:20:"Палауански";s:3:"pau";s:18:"Понпејски";s:3:"pon";}i:501;a:19:{s:12:"フラニ語";s:2:"ff";s:21:"フィンランド語";s:2:"fi";s:15:"フィジー語";s:2:"fj";s:15:"フェロー語";s:2:"fo";s:15:"フランス語";s:2:"fr";s:15:"フリウリ語";s:3:"fur";s:33:"フィジー・ヒンディー語";s:3:"hif";s:18:"තෙළිඟු";s:2:"te";s:12:"තායි";s:2:"th";s:18:"තුර්කි";s:2:"tr";s:15:"ꈝꐯꍏꇩꉙ";s:7:"zh-hans";s:18:"フィリピノ語";s:3:"fil";s:21:"フレミッシュ語";s:5:"nl-be";s:18:"フェニキア語";s:3:"phn";s:15:"ファング語";s:3:"fan";s:21:"ファンティー語";s:3:"fat";s:12:"フォン語";s:3:"fon";s:12:"フモン語";s:3:"hmn";s:15:"フラフラ語";s:3:"gur";}i:743;a:13:{s:12:"ຟູລາ";s:2:"ff";s:18:"ຟິນນິຊ";s:2:"fi";s:15:"ຟິຈຽນ";s:2:"fj";s:15:"ຟາໂຣສ";s:2:"fo";s:30:"ຟຣີຊຽນເໜືອ";s:3:"frr";s:18:"ຟຣີລຽນ";s:3:"fur";s:24:"ຟີລິປີໂນ";s:3:"fil";s:18:"ຟລີມິຊ";s:5:"nl-be";s:21:"ຟີນີເຊຍ";s:3:"phn";s:9:"ຟອນ";s:3:"fon";s:33:"ຟຮັ່ງເສດກາງ";s:3:"frm";s:39:"ຟຮັ່ງເສດໂບຮານ";s:3:"fro";s:45:"ຟຣີຊຽນຕາເວັນອອກ";s:3:"frs";}i:371;a:12:{s:9:"ഫുല";s:2:"ff";s:24:"ഫിന്നിഷ്";s:2:"fi";s:18:"ഫിജിയൻ";s:2:"fj";s:18:"ഫാറോസ്";s:2:"fo";s:21:"ഫ്രഞ്ച്";s:2:"fr";s:33:"ഫ്രിയുലിയാൻ";s:3:"fur";s:30:"ഫിലിപ്പിനോ";s:3:"fil";s:21:"ഫ്ലമിഷ്";s:5:"nl-be";s:24:"ഫീനിഷ്യൻ";s:3:"phn";s:9:"ഫങ്";s:3:"fan";s:30:"ഫിലിപ്പീനോ";s:3:"fat";s:9:"ഫോൻ";s:3:"fon";}i:947;a:13:{s:15:"ஃபுலா";s:2:"ff";s:27:"ஃபின்னிஷ்";s:2:"fi";s:24:"ஃபிஜியன்";s:2:"fj";s:24:"ஃபரோயிஸ்";s:2:"fo";s:36:"ஃப்ரியூலியன்";s:3:"fur";s:12:"ፓሽቶኛ";s:2:"ps";s:9:"ፓሽቶ";s:2:"ps";s:27:"ஃபிலிபினோ";s:3:"fil";s:30:"ஃபொனிஷியன்";s:3:"phn";s:18:"ஃபங்க்";s:3:"fan";s:21:"ஃபான்டி";s:3:"fat";s:15:"ஃபான்";s:3:"fon";s:33:"ஃபோன்பெயென்";s:3:"pon";}i:615;a:15:{s:18:"ฟูลาฮ์";s:2:"ff";s:24:"ฟินแลนด์";s:2:"fi";s:60:"ฟินแลนด์ทอร์เนดาเล็น";s:3:"fit";s:12:"ฟิจิ";s:2:"fj";s:39:"ฟริเซียนเหนือ";s:3:"frr";s:15:"ฟรูลี";s:3:"fur";s:45:"ฟริเซียนตะวันตก";s:2:"fy";s:63:"ฟรีเซียนซัทเธอร์แลนด์";s:3:"stq";s:30:"ฟิลิปปินส์";s:3:"fil";s:24:"ฟินิเชีย";s:3:"phn";s:9:"ฟอง";s:3:"fan";s:15:"ฟันติ";s:3:"fat";s:9:"ฟอน";s:3:"fon";s:48:"ฟริเซียนตะวันออก";s:3:"frs";s:18:"ฟราฟรา";s:3:"gur";}i:827;a:2:{s:9:"夫拉文";s:2:"ff";s:12:"ዛርማኛ";s:3:"dje";}i:414;a:6:{s:16:"ֆիններեն";s:2:"fi";s:16:"ֆիջիերեն";s:2:"fj";s:20:"ֆարյորերեն";s:2:"fo";s:18:"ֆրանսերեն";s:2:"fr";s:22:"ֆիլիպիներեն";s:3:"fil";s:22:"ֆլամանդերեն";s:5:"nl-be";}i:324;a:17:{s:18:"ფინური";s:2:"fi";s:12:"ფიჯი";s:2:"fj";s:24:"ფარერული";s:2:"fo";s:24:"ფრანგული";s:2:"fr";s:24:"ფრიულური";s:3:"fur";s:15:"里菲亞諾文";s:3:"rif";s:18:"사르디니아어";s:2:"sc";s:12:"사모아어";s:2:"sm";s:30:"ფილიპინური";s:3:"fil";s:33:"ფლამანდიური";s:5:"nl-be";s:27:"ფინიკიური";s:3:"phn";s:12:"ფონი";s:3:"fon";s:21:"ფალაური";s:3:"pal";s:22:"사마리아 아랍어";s:3:"sam";s:12:"사사크어";s:3:"sas";s:15:"사포테크어";s:3:"zap";s:9:"사호어";s:3:"ssy";}i:592;a:14:{s:12:"핀란드어";s:2:"fi";s:18:"จีนกาน";s:3:"gan";s:18:"จีนแคะ";s:3:"hak";s:9:"จัท";s:3:"jut";s:24:"จอร์เจีย";s:2:"ka";s:30:"จีนคลาสสิก";s:3:"lzh";s:30:"จีนมินหนาน";s:3:"nan";s:18:"จีนอู๋";s:3:"wuu";s:12:"จ้วง";s:2:"za";s:9:"จีน";s:2:"zh";s:27:"จีนตัวย่อ";s:7:"zh-hans";s:30:"จีนตัวเต็ม";s:7:"zh-hant";s:24:"จีนเซียง";s:3:"hsn";s:18:"จีมบูน";s:3:"nnh";}i:526;a:5:{s:24:"ෆින්ලන්ත";s:2:"fi";s:12:"ෆීජි";s:2:"fj";s:18:"ෆාරෝස්";s:2:"fo";s:15:"ෆර්මා";s:3:"dje";s:24:"ෆ්ලෙමිශ්";s:5:"nl-be";}i:176;a:8:{s:18:"托爾訥芬蘭文";s:3:"fit";s:12:"히브리어";s:2:"he";s:16:"히리 모투어";s:2:"ho";s:15:"托克皮辛文";s:3:"tpi";s:12:"托比辛文";s:3:"tpi";s:9:"히몸어";s:3:"hmn";s:12:"托克劳文";s:3:"tkl";s:12:"托克勞文";s:3:"tkl";}i:939;a:8:{s:9:"ፋሮኛ";s:2:"fo";s:33:"ལཱ་ཏིན་སྐད།";s:2:"la";s:24:"ལེ་ཊིན་ཁ";s:2:"la";s:36:"ལག་ཛམ་བོརྒ་ཁ";s:2:"lb";s:24:"ལཱ་ཝོས་ཁ";s:2:"lo";s:51:"ལི་ཐུ་ཝེ་ནི་ཡཱན་ཁ";s:2:"lt";s:33:"ལཊ་བི་ཡཱན་ཁ";s:2:"lv";s:102:"ལེ་ཊིན་ཨ་མེ་རི་ཀཱན་གི་ཨིས་པེ་ནིཤ་ཁ";s:6:"es-419";}i:943;a:11:{s:36:"ཧྥ་རན་སིའི་།";s:2:"fr";s:18:"ཧཝ་ས་ཁ";s:2:"ha";s:30:"ཧ་ཝ་ཡིའི་ཁ";s:3:"haw";s:24:"ཧེ་བྲུ་ཁ";s:2:"he";s:18:"ཧིན་དི";s:2:"hi";s:24:"ཧིན་དི་ཁ";s:2:"hi";s:33:"ཧེ་ཏི་ཡཱན་ཁ";s:2:"ht";s:45:"ཧཱང་གྷ་རི་ཡཱན་ཁ";s:2:"hu";s:33:"ཧའོ་ལན་སྐད།";s:2:"nl";s:39:"ཧྲུའི་ཏན་སྐད།";s:2:"sv";s:9:"肯揚文";s:3:"ken";}i:30;a:4:{s:9:"ᎦᎸᏥ";s:2:"fr";s:15:"邦阿西楠文";s:3:"pag";s:12:"邦板牙文";s:3:"pam";s:9:"ᎦᏳᎦ";s:3:"cay";}i:172;a:3:{s:9:"ꃔꇩꉙ";s:2:"fr";s:12:"게이즈어";s:3:"gez";s:12:"게르보어";s:3:"grb";}i:441;a:13:{s:70:"উত্তরাঞ্চলীয় ফ্রিসিয়ান";s:3:"frr";s:43:"উচ্চ সোর্বিয়ান";s:3:"hsb";s:37:"উপস্থাপন ভাষা";s:2:"ie";s:52:"উত্তরাঞ্চলীয় সোথো";s:3:"nso";s:52:"উত্তরাঞ্চলীয় সামি";s:2:"se";s:21:"উডমুর্ট";s:3:"udm";s:15:"উইঘুর";s:2:"ug";s:15:"উর্দু";s:2:"ur";s:24:"উজবেকীয়";s:2:"uz";s:15:"উওলোফ";s:2:"wo";s:43:"উত্তর এন্দেবিলি";s:2:"nd";s:24:"উগারিটিক";s:3:"uga";s:27:"উম্বুন্দু";s:3:"umb";}i:271;a:15:{s:18:"北フリジア語";s:3:"frr";s:18:"北弗里西亚文";s:3:"frr";s:18:"北弗里西亞文";s:3:"frr";s:12:"北印度文";s:2:"hi";s:15:"北紮紮其文";s:3:"kiu";s:15:"北部ソト語";s:3:"nso";s:12:"北索托文";s:3:"nso";s:15:"北サーミ語";s:2:"se";s:12:"北萨米文";s:2:"se";s:15:"北方薩米文";s:2:"se";s:18:"北ンデベレ語";s:2:"nd";s:18:"北恩德贝勒文";s:2:"nd";s:15:"北地畢列文";s:2:"nd";s:12:"北桑海文";s:3:"twq";s:5:"ďula";s:3:"dyu";}i:209;a:11:{s:43:"ಉತ್ತರ ಫ್ರಿಸಿಯನ್";s:3:"frr";s:28:"ಉತ್ತರ ಸೋಥೋ";s:3:"nso";s:28:"ಉತ್ತರ ಸಾಮಿ";s:2:"se";s:30:"ಉಡ್‌ಮುರ್ಟ್";s:3:"udm";s:18:"ಉಯಿಘರ್";s:2:"ug";s:30:"ಉಕ್ರೈನಿಯನ್";s:2:"uk";s:15:"ಉರ್ದು";s:2:"ur";s:21:"ಉಜ್ಬೇಕ್";s:2:"uz";s:34:"ಉತ್ತರ ದೆಬೆಲೆ";s:2:"nd";s:27:"ಉಗಾರಿಟಿಕ್";s:3:"uga";s:21:"ಉಂಬುಂಡು";s:3:"umb";}i:825;a:10:{s:46:"ଉତ୍ତର ଫ୍ରିସିୟାନ୍";s:3:"frr";s:34:"ଉପର ସର୍ବିଆନ୍";s:3:"hsb";s:31:"ଉତ୍ତରୀ ସୋଥୋ";s:3:"nso";s:28:"ଉତ୍ତର ସାମି";s:2:"se";s:27:"ଉଦମୂର୍ତ୍ତ";s:3:"udm";s:21:"ଉର୍ଦ୍ଦୁ";s:2:"ur";s:18:"ଉଜବେକ୍";s:2:"uz";s:9:"ዙሉኛ";s:2:"zu";s:37:"ଉତ୍ତର ନେଡବେଲେ";s:2:"nd";s:27:"ଉମ୍ବୁଣ୍ଡୁ";s:3:"umb";}i:81;a:15:{s:43:"ఉత్తర ఫ్రిసియన్";s:3:"frr";s:28:"ఉత్తర సోతో";s:3:"nso";s:28:"ఉత్తర సామి";s:2:"se";s:27:"ఉడ్ముర్ట్";s:3:"udm";s:21:"ఉయ్‌ఘర్";s:2:"ug";s:30:"ఉక్రేనియన్";s:2:"uk";s:15:"ఉర్దూ";s:2:"ur";s:21:"ఉజ్బెక్";s:2:"uz";s:12:"йоруба";s:2:"yo";s:16:"йорубача";s:2:"yo";s:34:"ఉత్తర దెబెలె";s:2:"nd";s:4:"йю";s:3:"kaj";s:27:"ఉగారిటిక్";s:3:"uga";s:24:"ఉమ్బుండు";s:3:"umb";s:10:"йемба";s:3:"ybb";}i:343;a:5:{s:12:"弗留利文";s:3:"fur";s:18:"ഏഴ്സ്യ";s:3:"myv";s:12:"拿波里文";s:3:"nap";s:14:"Կլինգոն";s:3:"tlh";s:15:"弗拉弗拉文";s:3:"gur";}i:611;a:14:{s:21:"ɣetoɖoƒe frisiagbe";s:2:"fy";s:12:"ሃውሳኛ";s:2:"ha";s:12:"ሃዊያኛ";s:3:"haw";s:12:"ሃይትኛ";s:2:"ht";s:9:"毛利文";s:2:"mi";s:18:"ปัญจาบ";s:2:"pa";s:27:"ปางาซีนัน";s:3:"pag";s:21:"ปัมปางา";s:3:"pam";s:33:"ปาเปียเมนโต";s:3:"pap";s:18:"ปิการ์";s:3:"pcd";s:24:"ปรัสเซีย";s:3:"prg";s:27:"毛里求斯克里奥尔文";s:3:"mfe";s:24:"ปะห์ลาวี";s:3:"pal";s:15:"ปาเลา";s:3:"pau";}i:730;a:21:{s:46:"પશ્ચિમી ફ્રિશિયન";s:2:"fy";s:37:"પ્રાચીન ગ્રીક";s:3:"grc";s:34:"પશ્ચિમી મારી";s:3:"mrj";s:18:"પંજાબી";s:2:"pa";s:27:"પંગાસીનાન";s:3:"pag";s:27:"પમ્પાન્ગા";s:3:"pam";s:36:"પાપિયામેન્ટો";s:3:"pap";s:12:"પાલી";s:2:"pi";s:15:"પોલીશ";s:2:"pl";s:15:"પશ્તો";s:2:"ps";s:27:"પોર્ટુગીઝ";s:2:"pt";s:43:"પારંપરિક ચાઇનીઝ";s:7:"zh-hant";s:9:"ቺጋኛ";s:3:"cgg";s:49:"પ્રાચીન ઇજીપ્શિયન";s:3:"egy";s:71:"પ્રમાણભૂત મોરોક્કન ટમાઝિટ";s:3:"zgh";s:40:"પૂર્વ ફ્રિશિયન";s:3:"frs";s:43:"પરંપરાગત નેવારી";s:3:"nwc";s:15:"પહલવી";s:3:"pal";s:18:"પલાઉઆન";s:3:"pau";s:21:"પોહપિએન";s:3:"pon";s:43:"પરંપરાગત સિરિએક";s:3:"syc";}i:79;a:41:{s:30:"западнофризиски";s:2:"fy";s:31:"западно-фризский";s:2:"fy";s:33:"западни фризијски";s:2:"fy";s:29:"західно-фризька";s:2:"fy";s:36:"ఇంటర్లింగ్వా";s:2:"ia";s:33:"ఇండోనేషియన్";s:2:"id";s:31:"ఇంటర్ లింగ్";s:2:"ie";s:15:"ఇగ్బో";s:2:"ig";s:24:"ఇనూపైఏక్";s:2:"ik";s:18:"ఇంగుష్";s:3:"inh";s:24:"ఇటాలియన్";s:2:"it";s:33:"ఇనుక్టిటుట్";s:2:"iu";s:12:"зазаки";s:3:"kiu";s:28:"западномариски";s:3:"mrj";s:41:"затерландски фризиски";s:3:"stq";s:32:"западнофламански";s:3:"vls";s:21:"ఇడ్డిష్";s:2:"yi";s:10:"зуанг";s:2:"za";s:18:"зеландски";s:3:"zea";s:8:"зулу";s:2:"zu";s:14:"зулуски";s:2:"zu";s:12:"зулуча";s:2:"zu";s:16:"зулуська";s:2:"zu";s:10:"зарма";s:3:"dje";s:14:"замрача";s:3:"dje";s:12:"ఇంబు";s:3:"ebu";s:39:"зеленортски креолски";s:3:"kea";s:12:"複数言語";s:3:"mul";s:28:"ఇనారి సామి";s:3:"smn";s:22:"зогдијански";s:3:"sog";s:14:"запотек";s:3:"zap";s:18:"запотечки";s:3:"zap";s:12:"зенага";s:3:"zen";s:18:"зенагский";s:3:"zen";s:8:"зуни";s:3:"zun";s:10:"зуньи";s:3:"zun";s:10:"зуньї";s:3:"zun";s:8:"заза";s:3:"zza";s:12:"зазакі";s:3:"zza";s:33:"зороастриски дари";s:3:"gbz";s:21:"ఇబిబియో";s:3:"ibb";}i:941;a:2:{s:12:"ፍሪሰኛ";s:2:"fy";s:12:"ፍሌሚሽ";s:5:"nl-be";}i:237;a:15:{s:6:"írskt";s:2:"ga";s:3:"ír";s:2:"ga";s:6:"írska";s:2:"ga";s:8:"írčina";s:2:"ga";s:6:"ígbó";s:2:"ig";s:10:"ínúpíak";s:2:"ik";s:7:"ílokó";s:3:"ilo";s:5:"ídó";s:2:"io";s:9:"íslenska";s:2:"is";s:10:"íslendskt";s:2:"is";s:8:"ítalska";s:2:"it";s:12:"ಥಾಯ್";s:2:"th";s:33:"ӕнцонгонд китайаг";s:7:"zh-hans";s:5:"íban";s:3:"iba";s:16:"írlandés mediu";s:3:"mga";}i:216;a:8:{s:15:"ಐರಿಷ್";s:2:"ga";s:30:"ಐಸ್ಲಾಂಡಿಕ್";s:2:"is";s:15:"쿠안야마어";s:2:"kj";s:12:"쿠르드어";s:2:"ku";s:12:"쿠르크어";s:3:"kru";s:9:"ಐನು";s:3:"ain";s:9:"쿠믹어";s:3:"kum";s:12:"쿠테네어";s:3:"kut";}i:780;a:15:{s:15:"ໄອຣິສ";s:2:"ga";s:15:"ໄຮຕຽນ";s:2:"ht";s:18:"ໄອໂລໂກ";s:3:"ilo";s:27:"ໄອສແລນດິກ";s:2:"is";s:18:"ໄມທີລິ";s:3:"mai";s:6:"ໄທ";s:2:"th";s:12:"ໄຕຕາ";s:3:"dav";s:6:"ໄວ";s:3:"vai";s:15:"ໄທກຣີ";s:3:"tig";s:12:"ໄອນູ";s:3:"ain";s:12:"ໄຮດາ";s:3:"hai";s:15:"ໄອບານ";s:3:"iba";s:24:"ໄອລິດກາງ";s:3:"mga";s:18:"ໄທໃຫ່ຍ";s:3:"shn";s:24:"ໄອໄບໄບໂອ";s:3:"ibb";}i:299;a:2:{s:4:"īru";s:2:"ga";s:12:"īslandiešu";s:2:"is";}i:960;a:5:{s:15:"ஐரிஷ்";s:2:"ga";s:33:"ஐஸ்லென்டிக்";s:2:"is";s:49:"ஐரோப்பிய ஸ்பானிஷ்";s:5:"es-es";s:61:"ஐரோப்பிய போர்ச்சுகீஸ்";s:5:"pt-pt";s:9:"ஐனு";s:3:"ain";}i:875;a:5:{s:12:"ጋጉዝኛ";s:3:"gag";s:12:"ጋሊሺያ";s:2:"gl";s:12:"ጋለቪኛ";s:2:"gl";s:12:"ጋንዳኛ";s:2:"lg";s:3:"ጋ";s:3:"gaa";}i:32;a:15:{s:15:"가가우스어";s:3:"gag";s:15:"新共同語言";s:3:"lfn";s:15:"판가시난어";s:3:"pag";s:10:"Јакут";s:3:"sah";s:6:"ថៃ";s:2:"th";s:10:"Јидиш";s:2:"yi";s:6:"가어";s:3:"gaa";s:25:"Јужни ндебеле";s:2:"nr";s:21:"Јужни алтаи";s:3:"alt";s:9:"판티어";s:3:"fat";s:9:"가요어";s:3:"gay";s:29:"Јудео-персијски";s:3:"jpr";s:25:"Јудео-арапски";s:3:"jrb";s:6:"Јао";s:3:"yao";s:14:"Јапешки";s:3:"yap";}i:123;a:17:{s:6:"贛語";s:3:"gan";s:21:"贛語(繁體)‎";s:8:"gan-hant";s:40:"ရှေးဟောင်း ဂရိ";s:3:"grc";s:18:"ᐃᓄᒃᑎᑐᑦ";s:8:"ike-cans";s:28:"ᐃᓄᒃᑎᑐᑦ/inuktitut";s:2:"iu";s:12:"ရောမ";s:2:"rm";s:18:"ရွန်ဒီ";s:2:"rn";s:30:"ရိုမေနီယား";s:2:"ro";s:12:"ရုရှ";s:2:"ru";s:15:"ရှိနာ";s:2:"sn";s:21:"ရိုရုဘာ";s:2:"yo";s:52:"ရိုးရှင်းသော တရုတ်";s:7:"zh-hans";s:55:"ရှေးရိုးစဉ်လာ တရုတ်";s:7:"zh-hant";s:49:"ရှေးဟောင်း အီဂျစ်";s:3:"egy";s:24:"ရှန်ဘာလာ";s:3:"ksb";s:21:"ရွမ်ဘို";s:3:"rof";s:15:"ရှမ်း";s:3:"shn";}i:195;a:2:{s:21:"赣语(简体)‎";s:8:"gan-hans";s:9:"広東語";s:6:"zh-yue";}i:582;a:23:{s:27:"خط گن ساده‌شده";s:8:"gan-hans";s:18:"خط گن سنتی";s:8:"gan-hant";s:16:"خائۇساچە";s:2:"ha";s:24:"خىلىگاينونچە";s:3:"hil";s:16:"خورۋاتچە";s:2:"hr";s:16:"خېرېروچە";s:2:"hz";s:8:"خمری";s:2:"km";s:10:"خَمیر";s:2:"km";s:12:"ਖਮੇਰ";s:2:"km";s:8:"خمیر";s:2:"km";s:9:"諾魯文";s:2:"na";s:12:"諾維亞文";s:3:"nov";s:12:"خوسایی";s:2:"xh";s:12:"ਖੋਸਾ";s:2:"xh";s:8:"خوسا";s:2:"xh";s:12:"خوساچە";s:2:"xh";s:10:"خەنچە";s:2:"zh";s:16:"خىتتىتچە";s:3:"hit";s:12:"خۇپاچە";s:3:"hup";s:14:"خاسیایی";s:3:"kha";s:8:"ختنی";s:3:"kho";s:14:"خوتەنچە";s:3:"kho";s:9:"諾蓋文";s:3:"nog";}i:64;a:10:{s:27:"Шкотски Галски";s:2:"gd";s:29:"Шотландӣ-Галикӣ";s:2:"gd";s:35:"Швајцарски немачки";s:3:"gsw";s:42:"인테르링구아 (국제보조어협회)";s:2:"ia";s:18:"인도네시아어";s:2:"id";s:18:"인테르링구에";s:2:"ie";s:12:"인귀시어";s:3:"inh";s:14:"Шкотски";s:3:"sco";s:10:"Шведӣ";s:2:"sv";s:6:"Шан";s:3:"shn";}i:600;a:9:{s:12:"길라키어";s:3:"glk";s:43:"ਨਾਰਵੇਜਿਆਈ ਬੋਕਮਲ";s:2:"nb";s:18:"ਨੇਪਾਲੀ";s:2:"ne";s:52:"ਨਾਰਵੇਜਿਆਈ ਨਿਓਨੌਰਸਕ";s:2:"nn";s:27:"ਨਾਰਵੇਜੀਅਨ";s:2:"no";s:18:"ਨਗੋਂਬਾ";s:3:"jgo";s:12:"ਨਾਮਾ";s:3:"naq";s:12:"ਨੁਏਰ";s:3:"nus";s:24:"ਨਿਆਂਕੋਲੇ";s:3:"nyn";}i:883;a:5:{s:12:"ጓራኒኛ";s:2:"gn";s:9:"ጓራኒ";s:2:"gn";s:9:"葛摩文";s:3:"swb";s:12:"葛巴亚文";s:3:"gba";s:12:"葛巴亞文";s:3:"gba";}i:284;a:1:{s:12:"과라니어";s:2:"gn";}i:873;a:16:{s:15:"ጉጃርቲኛ";s:2:"gu";s:15:"ጉጃራቲኛ";s:2:"gu";s:12:"ହୌସା";s:2:"ha";s:21:"ହାୱାଇନ୍";s:3:"haw";s:24:"ହେବ୍ର୍ୟୁ";s:2:"he";s:18:"ହିନ୍ଦୀ";s:2:"hi";s:27:"ହିଲିଗୈନନ୍";s:3:"hil";s:25:"ହିରି ମୋଟୁ";s:2:"ho";s:24:"ହୈତାୟିନ୍";s:2:"ht";s:30:"ହଙ୍ଗେରିଆନ୍";s:2:"hu";s:18:"ହେରେରୋ";s:2:"hz";s:12:"ጉስሊኛ";s:3:"guz";s:18:"ହିତୀତେ";s:3:"hit";s:15:"ହାଇଡା";s:3:"hai";s:15:"ହଁଙ୍ଗ";s:3:"hmn";s:12:"ହୁପା";s:3:"hup";}i:609;a:14:{s:12:"맹크스어";s:2:"gv";s:18:"นาอูรู";s:2:"na";s:18:"นาโปลี";s:3:"nap";s:42:"นอร์เวย์บุคมอล";s:2:"nb";s:12:"นีอู";s:3:"niu";s:45:"นอร์เวย์นีนอสก์";s:2:"nn";s:24:"นอร์เวย์";s:2:"no";s:18:"นาวาโฮ";s:2:"nv";s:9:"ꊉꇩꉙ";s:2:"ru";s:12:"นามา";s:3:"naq";s:15:"นีอัส";s:3:"nia";s:30:"นอร์สโบราณ";s:3:"non";s:18:"นิโอโร";s:3:"nyo";s:15:"นซิมา";s:3:"nzi";}i:862;a:36:{s:18:"ମାଁକ୍ସ";s:2:"gv";s:18:"ମୈଥିଳୀ";s:3:"mai";s:15:"ମୋକ୍ଷ";s:3:"mdf";s:24:"ମାଲାଗାସୀ";s:2:"mg";s:30:"ମାର୍ଶାଲୀଜ୍";s:2:"mh";s:15:"ମାଓରୀ";s:2:"mi";s:33:"ମିନାଙ୍ଗାବାଉ";s:3:"min";s:30:"ମାକଡୋନିଆନ୍";s:2:"mk";s:24:"ମାଲାୟଲମ୍";s:2:"ml";s:30:"ମଙ୍ଗୋଲିଆନ୍";s:2:"mn";s:15:"ମରାଠୀ";s:2:"mr";s:12:"ମାଲୟ";s:2:"ms";s:21:"ମାଲଟୀଜ୍";s:2:"mt";s:30:"ମିରାଣ୍ଡିଜ୍";s:3:"mwl";s:28:"ମାନକ ଆରବିକ";s:6:"ar-001";s:15:"ମାସାଇ";s:3:"mas";s:15:"ମୋହୌକ";s:3:"moh";s:30:"ମୋଲଡୋଭିଆନ୍";s:5:"ro-md";s:12:"ମାରୀ";s:3:"chm";s:46:"ମଧ୍ୟ ପର୍ତ୍ତୁଗାଲୀ";s:3:"dum";s:31:"ମଧ୍ୟ ଇଁରାଜୀ";s:3:"enm";s:34:"ମଧ୍ୟ ଫ୍ରେଞ୍ଚ";s:3:"frm";s:50:"ମିଡିଲ୍ ହାଇ ଜର୍ମାନ୍";s:3:"gmh";s:15:"ମଙ୍ଗୋ";s:3:"lol";s:24:"ମାଦୁରୀସ୍";s:3:"mad";s:18:"ମାଗାହୀ";s:3:"mag";s:18:"ମକାସର୍";s:3:"mak";s:30:"ମାଣ୍ଡିଙ୍ଗୋ";s:3:"man";s:18:"ମନ୍ଦାର";s:3:"mdr";s:18:"ମେଣ୍ଡେ";s:3:"men";s:28:"ମଧ୍ୟ ଇରିଶ୍";s:3:"mga";s:21:"ମିକମୌକ୍";s:3:"mic";s:18:"ମାଞ୍ଚୁ";s:3:"mnc";s:21:"ମଣିପୁରୀ";s:3:"mni";s:12:"ମୋସି";s:3:"mos";s:21:"ମାରୱାରୀ";s:3:"mwr";}i:617;a:48:{s:15:"มานซ์";s:2:"gv";s:12:"ਹੌਸਾ";s:2:"ha";s:12:"ਹਵਾਈ";s:3:"haw";s:15:"ਹਿਬਰੂ";s:2:"he";s:15:"ਹਿੰਦੀ";s:2:"hi";s:18:"ਹੈਤੀਆਈ";s:2:"ht";s:21:"ਹੰਗਰੀਆਈ";s:2:"hu";s:27:"ሉክዘምበርገርኛ";s:2:"lb";s:18:"ሉቴንያንኛ";s:2:"lt";s:15:"มอคชา";s:3:"mdf";s:24:"มาลากาซี";s:2:"mg";s:30:"มาร์แชลลิส";s:2:"mh";s:30:"มีนังกาเบา";s:3:"min";s:30:"มาซิโดเนีย";s:2:"mk";s:27:"มาลายาลัม";s:2:"ml";s:27:"มองโกเลีย";s:2:"mn";s:15:"มราฐี";s:2:"mr";s:33:"มารีตะวันตก";s:3:"mrj";s:18:"มาเลย์";s:2:"ms";s:15:"มอลตา";s:2:"mt";s:21:"มีรันดา";s:3:"mwl";s:33:"มาซันดารานี";s:3:"mzn";s:18:"มาชาเม";s:3:"jmc";s:21:"มาคอนเด";s:3:"kde";s:19:"ሉባ ካታንጋ";s:2:"lu";s:13:"ሉባ-ሉሏ";s:3:"lua";s:6:"ሉኦ";s:3:"luo";s:9:"ሉዪያ";s:3:"luy";s:12:"มาไซ";s:3:"mas";s:24:"มอริสเยน";s:3:"mfe";s:37:"มากัววา-มีทโท";s:3:"mgh";s:18:"มันดัง";s:3:"mua";s:21:"มอลโดวา";s:5:"ro-md";s:13:"ሉሌ ሳሚ";s:3:"smj";s:12:"มารี";s:3:"chm";s:9:"ม้ง";s:3:"hmn";s:15:"มองโก";s:3:"lol";s:18:"มาดูรา";s:3:"mad";s:12:"มคหี";s:3:"mag";s:24:"มากาซาร์";s:3:"mak";s:24:"มันดิงกา";s:3:"man";s:12:"มาบา";s:3:"mde";s:21:"มานดาร์";s:3:"mdr";s:18:"มิกแมก";s:3:"mic";s:21:"มณีปุระ";s:3:"mni";s:21:"มารวาฑี";s:3:"mwr";s:12:"มาฟา";s:3:"maf";s:12:"มยีน";s:3:"mye";}i:364;a:26:{s:9:"曼島文";s:2:"gv";s:33:"താച്ചലിറ്റ്";s:3:"shi";s:31:"തെക്കൻ സാമി";s:3:"sma";s:31:"തെക്കൻ സോതോ";s:2:"st";s:15:"തമിഴ്";s:2:"ta";s:24:"തെലുങ്ക്";s:2:"te";s:18:"താജിക്";s:2:"tg";s:12:"തായ്";s:2:"th";s:27:"തുർക്‌മെൻ";s:2:"tk";s:21:"തഗാലോഗ്";s:2:"tl";s:21:"ത്സ്വാന";s:2:"tn";s:18:"ത്സോംഗ";s:2:"ts";s:24:"താഹിതിയൻ";s:2:"ty";s:24:"തുവിനിയൻ";s:3:"tyv";s:9:"തൈത";s:3:"dav";s:21:"曼德文字 (n’ko)";s:3:"nqo";s:12:"클링온어";s:3:"tlh";s:32:"표준 모로코 타마제크어";s:3:"zgh";s:43:"തെക്കൻ അൾത്തായി";s:3:"alt";s:12:"曼丁哥文";s:3:"man";s:12:"曼达尔文";s:3:"mdr";s:9:"曼達文";s:3:"mdr";s:15:"曼尼普里文";s:3:"mni";s:15:"曼尼普裡文";s:3:"mni";s:18:"തുവാലു";s:3:"tvl";s:21:"തരോക്കോ";s:3:"trv";}i:717;a:9:{s:7:"ḥausa";s:2:"ha";s:12:"ઝુઆગ";s:2:"za";s:12:"ઝુલુ";s:2:"zu";s:15:"ઝર્મા";s:3:"dje";s:21:"ઝેપોટેક";s:3:"zap";s:18:"ઝેનાગા";s:3:"zen";s:12:"ઝૂની";s:3:"zun";s:12:"ઝાઝા";s:3:"zza";s:49:"ઝોરોસ્ટ્રિઅન દારી";s:3:"gbz";}i:745;a:43:{s:12:"હૌસા";s:2:"ha";s:21:"હાવાઇયન";s:3:"haw";s:18:"હીબ્રુ";s:2:"he";s:18:"હિન્દી";s:2:"hi";s:27:"હિલિગેનોન";s:3:"hil";s:25:"હિરી મોટૂ";s:2:"ho";s:18:"હૈતીયન";s:2:"ht";s:24:"હંગેરિયન";s:2:"hu";s:18:"હેરેરો";s:2:"hz";s:15:"ມອກຊາ";s:3:"mdf";s:27:"ມາລາກາສຊີ";s:2:"mg";s:27:"ມາຊານເລັດ";s:2:"mh";s:15:"ມາວຣິ";s:2:"mi";s:24:"ມາເລອາລຳ";s:2:"ml";s:24:"ມອງໂກເລຍ";s:2:"mn";s:18:"ມາຣາທີ";s:2:"mr";s:12:"ມາເລ";s:2:"ms";s:18:"ມອລທີສ";s:2:"mt";s:21:"ມີລັນດາ";s:3:"mwl";s:15:"ມຽນມາ";s:2:"my";s:24:"હિટ્ટિતે";s:3:"hit";s:15:"ມາແຊມ";s:3:"jmc";s:21:"ມາຄອນເດ";s:3:"kde";s:12:"ມາໄຊ";s:3:"mas";s:24:"ມໍຣິສເຢນ";s:3:"mfe";s:34:"ມາຄູວາ-ມີດໂຕ";s:3:"mgh";s:18:"ມັນດັງ";s:3:"mua";s:12:"ມາຣິ";s:3:"chm";s:12:"હૈડા";s:3:"hai";s:9:"ມອງ";s:3:"hmn";s:12:"હૂપા";s:3:"hup";s:18:"ມາດູລາ";s:3:"mad";s:18:"ມາກາຮິ";s:3:"mag";s:21:"ມາກາຊາຣ";s:3:"mak";s:24:"ມັນດິງກາ";s:3:"man";s:12:"ມາບາ";s:3:"mde";s:18:"ມານດາຣ";s:3:"mdr";s:18:"ມິກແມກ";s:3:"mic";s:24:"ມານີພູຣິ";s:3:"mni";s:15:"ມອສຊີ";s:3:"mos";s:18:"ມາວາຣິ";s:3:"mwr";s:12:"ມາຟາ";s:3:"maf";s:15:"ມໍຢິນ";s:3:"mye";}i:492;a:17:{s:10:"האוסה";s:2:"ha";s:14:"האַוסאַ";s:2:"ha";s:12:"הוואית";s:3:"haw";s:16:"העברעאיש";s:2:"he";s:10:"הינדי";s:2:"hi";s:20:"היליגאינון";s:3:"hil";s:17:"הארי מוטו";s:2:"ho";s:12:"האיטית";s:2:"ht";s:14:"הונגרית";s:2:"hu";s:8:"הררו";s:2:"hz";s:14:"הולנדית";s:2:"nl";s:16:"האלענדיש";s:2:"nl";s:19:"הולה-פוניי";s:3:"dyo";s:12:"ヌエル語";s:3:"nus";s:27:"הולנדית תיכונה";s:3:"dum";s:10:"האידה";s:3:"hai";s:8:"הופה";s:3:"hup";}i:336;a:13:{s:15:"ჰაუსა";s:2:"ha";s:24:"ჰავაიური";s:3:"haw";s:15:"ჰინდი";s:2:"hi";s:24:"ჰაიტიური";s:2:"ht";s:12:"루샤이어";s:3:"lus";s:15:"루마니아어";s:2:"ro";s:9:"루신어";s:3:"rue";s:19:"루바-카탄가어";s:2:"lu";s:19:"루바-룰루아어";s:3:"lua";s:9:"루오어";s:3:"luo";s:9:"루야어";s:3:"luy";s:49:"ഈസ്റ്റേൺ ഫ്രിഷ്യൻ";s:3:"frs";s:15:"루이세노어";s:3:"lui";}i:257;a:15:{s:12:"ಹೌಸಾ";s:2:"ha";s:24:"ಹವಾಯಿಯನ್";s:3:"haw";s:24:"ಹೀಬ್ರ್ಯೂ";s:2:"he";s:15:"ಹಿಂದಿ";s:2:"hi";s:27:"ಹಿಲಿಗೇನನ್";s:3:"hil";s:25:"ಹಿರಿ ಮೊಟು";s:2:"ho";s:21:"ಹೈತಿಯನ್";s:2:"ht";s:27:"ಹಂಗೇರಿಯನ್";s:2:"hu";s:18:"ಹೆರೆರೊ";s:2:"hz";s:19:"өмнөд сами";s:3:"sma";s:10:"өзбек";s:2:"uz";s:14:"өзбекче";s:2:"uz";s:24:"ಹಿಟ್ಟಿಟೆ";s:3:"hit";s:12:"ಹೈಡಾ";s:3:"hai";s:12:"ಹೂಪಾ";s:3:"hup";}i:385;a:21:{s:9:"ഹൗസ";s:2:"ha";s:21:"ഹവായിയൻ";s:3:"haw";s:18:"ഹീബ്രു";s:2:"he";s:18:"ഹിന്ദി";s:2:"hi";s:30:"ഹിലിഗയ്നോൺ";s:3:"hil";s:25:"ഹിരി മോതു";s:2:"ho";s:27:"ഹെയ്‌തിയൻ";s:2:"ht";s:24:"ഹംഗേറിയൻ";s:2:"hu";s:18:"ഹെരേരൊ";s:2:"hz";s:18:"թամիլերեն";s:2:"ta";s:16:"թելուգու";s:2:"te";s:14:"թայերեն";s:2:"th";s:16:"թիգրինիա";s:2:"ti";s:24:"թուրքմեներեն";s:2:"tk";s:18:"թուրքերեն";s:2:"tr";s:18:"թաթարերեն";s:2:"tt";s:10:"թաիթա";s:3:"dav";s:30:"ഹിറ്റൈറ്റേ";s:3:"hit";s:9:"ഹൈഡ";s:3:"hai";s:9:"ഹൂപ";s:3:"hup";s:6:"满文";s:3:"mnc";}i:294;a:13:{s:6:"Ħawsa";s:2:"ha";s:9:"Ħawajjan";s:3:"haw";s:6:"Ħindi";s:2:"hi";s:10:"Ħiri motu";s:2:"ho";s:7:"Ħerero";s:2:"hz";s:9:"圖盧文";s:3:"tcy";s:12:"圖羅尤文";s:3:"tru";s:15:"圖姆布卡文";s:3:"tum";s:6:"Ħoża";s:2:"xh";s:7:"Ħittit";s:3:"hit";s:6:"Ħajda";s:3:"hai";s:6:"Ħmong";s:3:"hmn";s:5:"Ħupa";s:3:"hup";}i:127;a:9:{s:15:"ဟာဥစာ";s:2:"ha";s:18:"ဟာဝေယံ";s:3:"haw";s:21:"ဟီးဘရူး";s:2:"he";s:18:"ဟိန္ဒီ";s:2:"hi";s:27:"ဟာအီတီအန်";s:2:"ht";s:21:"ဟန်ဂေရီ";s:2:"hu";s:9:"షోన";s:2:"sn";s:12:"షోసా";s:2:"xh";s:12:"షాన్";s:3:"shn";}i:524;a:7:{s:12:"හෝසා";s:2:"ha";s:15:"හවායි";s:3:"haw";s:12:"හීබෲ";s:2:"he";s:18:"හින්දි";s:2:"hi";s:15:"හයිටි";s:2:"ht";s:33:"හන්ගේරියානු";s:2:"hu";s:12:"レズギ語";s:3:"lez";}i:1;a:12:{s:12:"ஹௌஸா";s:2:"ha";s:24:"ஹவாயியன்";s:3:"haw";s:18:"ஹீப்ரூ";s:2:"he";s:36:"ஹிலிகாய்னான்";s:3:"hil";s:31:"ஹிரி மோட்டு";s:2:"ho";s:27:"ஹைத்தியன்";s:2:"ht";s:30:"ஹங்கேரியன்";s:2:"hu";s:18:"ஹெரேரோ";s:2:"hz";s:12:"ஹோசா";s:2:"xh";s:24:"ஹிட்டைட்";s:3:"hit";s:12:"ஹைடா";s:3:"hai";s:12:"ஹுபா";s:3:"hup";}i:946;a:2:{s:9:"豪萨文";s:2:"ha";s:9:"豪撒文";s:2:"ha";}i:758;a:10:{s:21:"ຮາໄວອຽນ";s:3:"haw";s:18:"ຮີບຣິວ";s:2:"he";s:15:"ຮິນດິ";s:2:"hi";s:27:"ຮິຣິໄກນອນ";s:3:"hil";s:24:"ຮິຣິໂມຕູ";s:2:"ho";s:24:"ຮັງກາຣຽນ";s:2:"hu";s:40:"ኖርዌይኛ (ናይ ኝኖርስክ)";s:2:"nn";s:18:"ኖርዌጂያን";s:2:"no";s:15:"ຮິດໄຕ";s:3:"hit";s:12:"ຮູປາ";s:3:"hup";}i:630;a:9:{s:15:"ฮาวาย";s:3:"haw";s:15:"ฮิบรู";s:2:"he";s:15:"ฮินดี";s:2:"hi";s:27:"ฮินดีฟิจิ";s:3:"hif";s:27:"ฮีลีกัยนน";s:3:"hil";s:24:"ฮีรีโมตู";s:2:"ho";s:21:"ฮังการี";s:2:"hu";s:21:"ฮิตไตต์";s:3:"hit";s:12:"ฮูปา";s:3:"hup";}i:504;a:35:{s:15:"ヘブライ語";s:2:"he";s:12:"ヘレロ語";s:2:"hz";s:12:"נאורית";s:2:"na";s:18:"נפוליטנית";s:3:"nap";s:26:"נאַפּאליטַניש";s:3:"nap";s:20:"נידערדײַטש";s:3:"nds";s:12:"נפאלית";s:2:"ne";s:18:"נעפּאַליש";s:2:"ne";s:12:"נווארי";s:3:"new";s:12:"נדונגה";s:2:"ng";s:14:"ניואיאן";s:3:"niu";s:23:"נורבגית חדשה";s:2:"nn";s:26:"נײַ־נארוועגיש";s:2:"nn";s:14:"נורבגית";s:2:"no";s:18:"נארוועגיש";s:2:"no";s:8:"נבחו";s:2:"nv";s:14:"ניאנג׳ה";s:2:"ny";s:12:"潘加辛文";s:3:"pag";s:12:"潘帕嘉文";s:3:"pam";s:20:"נארדסאַמיש";s:2:"se";s:10:"נגומה";s:3:"jgo";s:8:"נאמה";s:3:"naq";s:8:"נ׳קו";s:3:"nqo";s:8:"נואר";s:3:"nus";s:16:"ניאנקולה";s:3:"nyn";s:19:"ניב צ׳ינוק";s:3:"chn";s:8:"ניאס";s:3:"nia";s:10:"נוגאי";s:3:"nog";s:27:"נווארית קלאסית";s:3:"nwc";s:16:"ניאמווזי";s:3:"nym";s:10:"ניורו";s:3:"nyo";s:10:"נזימה";s:3:"nzi";s:12:"נגמבאי";s:3:"sba";s:21:"ניאסה טונגה";s:3:"tog";s:16:"נגיאמבון";s:3:"nnh";}i:71;a:3:{s:10:"Яҳудӣ";s:2:"he";s:38:"Яҳудии Аврупои шарқӣ";s:2:"yi";s:9:"ᏏᏂᎦ";s:3:"see";}i:498;a:4:{s:18:"ヒンディー語";s:2:"hi";s:21:"ヒリガイノン語";s:3:"hil";s:15:"ヒリモツ語";s:2:"ho";s:18:"ヒッタイト語";s:3:"hit";}i:180;a:1:{s:9:"힌디어";s:2:"hi";}i:951;a:14:{s:15:"இந்தி";s:2:"hi";s:36:"இண்டர்லிங்வா";s:2:"ia";s:36:"இந்தோனேஷியன்";s:2:"id";s:30:"இன்டர்லிங்";s:2:"ie";s:15:"இக்போ";s:2:"ig";s:27:"இனுபியாக்";s:2:"ik";s:15:"இலோகோ";s:3:"ilo";s:21:"இங்குஷ்";s:3:"inh";s:9:"இடோ";s:2:"io";s:30:"இத்தாலியன்";s:2:"it";s:27:"இனுகிடூட்";s:2:"iu";s:21:"இத்திஷ்";s:2:"yi";s:25:"இனாரி சமி";s:3:"smn";s:15:"இபான்";s:3:"iba";}i:202;a:3:{s:10:"Ҳиндӣ";s:2:"hi";s:6:"Ênnde";s:2:"it";s:16:"Ҳолландӣ";s:2:"nl";}i:756;a:4:{s:15:"헤리가뇬어";s:3:"hil";s:12:"헤레로어";s:2:"hz";s:12:"ኔፓሊኛ";s:2:"ne";s:12:"ኔፖሊኛ";s:2:"ne";}i:61;a:10:{s:20:"Хилигајнон";s:3:"hil";s:17:"Хири Моту";s:2:"ho";s:14:"Хаитски";s:2:"ht";s:12:"Хереро";s:2:"hz";s:18:"Хаһаахтыы";s:2:"kk";s:9:"巽他文";s:2:"su";s:12:"Хитите";s:3:"hit";s:10:"Хаида";s:3:"hai";s:10:"Хмонг";s:3:"hmn";s:8:"Хупа";s:3:"hup";}i:781;a:5:{s:18:"ክሮሽያንኛ";s:2:"hr";s:28:"ክመርኛ ማእከላዊ";s:2:"km";s:12:"ክዋሲዮ";s:3:"nmg";s:18:"ክሊንጎንኛ";s:3:"tlh";s:21:"ክሊንግኦንኛ";s:3:"tlh";}i:389;a:2:{s:20:"խորվաթերեն";s:2:"hr";s:12:"處奇斯文";s:3:"chk";}i:252;a:4:{s:10:"ülemsorbi";s:3:"hsb";s:15:"포르투갈어";s:2:"pt";s:27:"포르투갈어 (브라질)";s:5:"pt-br";s:7:"üzbég";s:2:"uz";}i:314;a:25:{s:37:"ऊपरी सॉर्बियन";s:3:"hsb";s:21:"ლოჟბანი";s:3:"jbo";s:24:"ლათინური";s:2:"la";s:18:"ლადინო";s:3:"lad";s:39:"ლუქსემბურგული";s:2:"lb";s:24:"ლეზგიური";s:3:"lez";s:30:"ლიმბურგული";s:2:"li";s:21:"ლინგალა";s:2:"ln";s:21:"ლაოსური";s:2:"lo";s:12:"ლოზი";s:3:"loz";s:21:"ლიტვური";s:2:"lt";s:24:"ლატვიური";s:2:"lv";s:15:"ლანგი";s:3:"lag";s:18:"ლაკოტა";s:3:"lkt";s:34:"ლუბა-კატანგა";s:2:"lu";s:28:"ლუბა-კასაი";s:3:"lua";s:9:"ლუო";s:3:"luo";s:15:"ლუჰია";s:3:"luy";s:34:"ლულე-საამური";s:3:"smj";s:78:"ლინგვისტური შიგთავსი არ არის";s:3:"zxx";s:74:"ლათინურ ამერიკული ესპანური";s:6:"es-419";s:15:"ლანდა";s:3:"lah";s:15:"ლამბა";s:3:"lam";s:24:"ლუისენიო";s:3:"lui";s:15:"ლუნდა";s:3:"lun";}i:978;a:2:{s:18:"上ソルビア語";s:3:"hsb";s:12:"上索布文";s:3:"hsb";}i:23;a:5:{s:9:"海地文";s:2:"ht";s:15:"ជប៉ុន";s:2:"ja";s:12:"ជ្វា";s:2:"jv";s:9:"海达文";s:3:"hai";s:9:"海達文";s:3:"hai";}i:749;a:21:{s:12:"헝가리어";s:2:"hu";s:15:"ລາຕິນ";s:2:"la";s:18:"ລາດີໂນ";s:3:"lad";s:36:"ລັກເຊມບວກກິຊ";s:2:"lb";s:15:"ລີຊຽນ";s:3:"lez";s:27:"ລິມເບີກີຊ";s:2:"li";s:21:"ລິງກາລາ";s:2:"ln";s:9:"ລາວ";s:2:"lo";s:24:"ລິທົວນຽນ";s:2:"lt";s:12:"ລູໄຊ";s:3:"lus";s:18:"ລັດວຽນ";s:2:"lv";s:18:"ລາໂກຕາ";s:3:"lkt";s:34:"ລູບາ-ຄາຕັງກາ";s:2:"lu";s:28:"ລູບາ-ລູລົວ";s:3:"lua";s:9:"ລົວ";s:3:"luo";s:12:"ລູໄຍ";s:3:"luy";s:21:"ລຸນຊາມິ";s:3:"smj";s:68:"ລາຕິນ ອາເມຣິກັນ ສະແປນນິຊ";s:6:"es-419";s:15:"ລານດາ";s:3:"lah";s:18:"ລູເຊໂນ";s:3:"lui";s:15:"ລຸນດາ";s:3:"lun";}i:203;a:5:{s:12:"赫雷罗文";s:2:"hz";s:12:"赫雷羅文";s:2:"hz";s:27:"​​ស៊ីន្តី";s:2:"sd";s:9:"赫梯文";s:3:"hit";s:9:"赫蒙文";s:3:"hmn";}i:695;a:13:{s:30:"ઇંટરલિંગુઆ";s:2:"ia";s:33:"ઇન્ડોનેશિયન";s:2:"id";s:24:"ઇંટરલિંગ";s:2:"ie";s:15:"ઇગ્બો";s:2:"ig";s:24:"ઇનુપિયાક";s:2:"ik";s:15:"ઇલોકો";s:3:"ilo";s:15:"ઇંગુશ";s:3:"inh";s:9:"ઇડૌ";s:2:"io";s:21:"ઇટાલિયન";s:2:"it";s:24:"ઇનુકિટૂટ";s:2:"iu";s:28:"ઇનારી સામી";s:3:"smn";s:21:"ઇવોન્ડો";s:3:"ewo";s:12:"ઇબાન";s:3:"iba";}i:339;a:3:{s:24:"Ինտերլինգուա";s:2:"ia";s:18:"Ինտերլինգ";s:2:"ie";s:8:"Իդիշ";s:2:"yi";}i:283;a:2:{s:9:"國際文";s:2:"ia";s:16:"國際文(e)";s:2:"ie";}i:234;a:10:{s:9:"伊布文";s:2:"ig";s:15:"伊洛干诺文";s:3:"ilo";s:12:"伊洛闊文";s:3:"ilo";s:9:"伊多文";s:2:"io";s:9:"越南文";s:2:"vi";s:18:"伊纳里萨米文";s:3:"smn";s:18:"伊納裡薩米文";s:3:"smn";s:9:"伊班文";s:3:"iba";s:15:"伊比比奥文";s:3:"ibb";s:15:"伊比比奧文";s:3:"ibb";}i:658;a:4:{s:15:"ሲቹንዪኛ";s:2:"ii";s:15:"ሲንድሂኛ";s:2:"sd";s:15:"ሲንሃልኛ";s:2:"si";s:12:"ሲዳምኛ";s:3:"sid";}i:416;a:1:{s:13:"쓰촨 이어";s:2:"ii";}i:59;a:9:{s:14:"Унупиак";s:2:"ik";s:12:"Урисоӣ";s:2:"or";s:12:"Удмурт";s:3:"udm";s:18:"Уйгуурдуу";s:2:"ug";s:28:"Украйыыньыстыы";s:2:"uk";s:14:"Украинӣ";s:2:"uk";s:8:"Урду";s:2:"ur";s:18:"Угаритски";s:3:"uga";s:14:"Умбунду";s:3:"umb";}i:912;a:2:{s:9:"冰岛文";s:2:"is";s:9:"冰島文";s:2:"is";}i:899;a:1:{s:15:"ጣሊያንኛ";s:2:"it";}i:847;a:9:{s:12:"意大利文";s:2:"it";s:27:"ଟ୍ରିଗିନିଆ";s:2:"ti";s:21:"ଟାଗାଲଗ୍";s:2:"tl";s:18:"ଟୋଙ୍ଗା";s:2:"to";s:31:"ଟୋକ୍ ପିସିନ୍";s:3:"tpi";s:24:"ଟୁମ୍ବୁକା";s:3:"tum";s:12:"意第緒文";s:2:"yi";s:21:"ଟାଇଗ୍ରେ";s:3:"tig";s:21:"ଟୋକେଲାଉ";s:3:"tkl";}i:681;a:8:{s:12:"義大利文";s:2:"it";s:12:"恩东加文";s:2:"ng";s:12:"恩東加文";s:2:"ng";s:9:"恩布文";s:3:"ebu";s:9:"恩艮巴";s:3:"jgo";s:15:"恩格姆巴文";s:3:"jgo";s:12:"恩济马文";s:3:"nzi";s:12:"恩甘澎文";s:3:"nnh";}i:240;a:21:{s:12:"因纽特文";s:2:"iu";s:12:"因紐特文";s:2:"iu";s:12:"ನೌರು";s:2:"na";s:33:"ನಿಯಾಪೊಲಿಟನ್";s:3:"nap";s:55:"ನಾರ್ವೆಜಿಯನ್ ಬೊಕ್ಮಲ್";s:2:"nb";s:18:"ನೇಪಾಳಿ";s:2:"ne";s:18:"ನೇವಾರೀ";s:3:"new";s:21:"ನಿಯುವನ್";s:3:"niu";s:58:"ನಾರ್ವೆಜಿಯನ್ ನೈನೊಸ್ಕ್";s:2:"nn";s:33:"ನಾರ್ವೇಜಿಯನ್";s:2:"no";s:15:"ನವಾಜೊ";s:2:"nv";s:21:"ನ್ಯಾಂಜಾ";s:2:"ny";s:15:"ನೊಂಬಾ";s:3:"jgo";s:6:"ನಮ";s:3:"naq";s:15:"ನೂಯರ್";s:3:"nus";s:33:"ನ್ಯಾನ್‌ಕೋಲೆ";s:3:"nyn";s:18:"ನಿಯಾಸ್";s:3:"nia";s:18:"ನೊಗಾಯ್";s:3:"nog";s:36:"ನ್ಯಾಮ್‌ವೆಂಜಿ";s:3:"nym";s:18:"ನ್ಯೋರೋ";s:3:"nyo";s:34:"ನ್ಯಾಸಾ ಟೋಂಗಾ";s:3:"tog";}i:867;a:4:{s:12:"ጃፓንኛ";s:2:"ja";s:12:"ጃቫንኛ";s:2:"jv";s:9:"韓国語";s:2:"ko";s:6:"韓文";s:2:"ko";}i:395;a:4:{s:18:"ճապոներեն";s:2:"ja";s:18:"ճավայերեն";s:2:"jv";s:12:"望加锡文";s:3:"mak";s:12:"望加錫文";s:3:"mak";}i:68;a:1:{s:9:"일본어";s:2:"ja";}i:725;a:6:{s:21:"ຍີ່ປຸ່ນ";s:2:"ja";s:9:"થાઈ";s:2:"th";s:12:"ትግርኛ";s:2:"ti";s:9:"ትዊኛ";s:2:"tw";s:6:"ትዊ";s:2:"tw";s:9:"ትግረ";s:3:"tig";}i:273;a:2:{s:27:"牙買加克裏奧爾英文";s:3:"jam";s:5:"đula";s:3:"dyu";}i:525;a:11:{s:15:"ロジバン語";s:3:"jbo";s:18:"ロンバルド語";s:3:"lmo";s:9:"ロジ語";s:3:"loz";s:18:"ロマーニャ語";s:3:"rgn";s:18:"ロマンシュ語";s:2:"rm";s:9:"ロマ語";s:3:"rmy";s:12:"ロシア語";s:2:"ru";s:12:"ロンボ語";s:3:"rof";s:18:"ロマーニー語";s:3:"rom";s:12:"ロツマ語";s:3:"rtm";s:18:"ロヴィアナ語";s:3:"rug";}i:866;a:24:{s:21:"ଲୋଜବାନ୍";s:3:"jbo";s:18:"ଲାଟିନ୍";s:2:"la";s:18:"ଲାଦିନୋ";s:3:"lad";s:39:"ଲକ୍ସେମବର୍ଗିସ୍";s:2:"lb";s:27:"ଲେଜଗିୟାନ୍";s:3:"lez";s:36:"ଲିମ୍ବୁର୍ଗିସ୍";s:2:"li";s:24:"ଲିଙ୍ଗାଲା";s:2:"ln";s:9:"ଲାଓ";s:2:"lo";s:12:"ଲୋଜି";s:3:"loz";s:30:"ଲିଥୁଆନିଆନ୍";s:2:"lt";s:15:"ଲୁସାଉ";s:3:"lus";s:24:"ଲାଟଭିଆନ୍";s:2:"lv";s:28:"ଲୋ ଜର୍ମାନ୍";s:3:"nds";s:43:"ଲ୍ୟୁବା-କାଟାଙ୍ଗା";s:2:"lu";s:28:"ଲୁବା-ଲୁଲୁଆ";s:3:"lua";s:9:"ଲୁଓ";s:3:"luo";s:25:"ଲୁଲେ ସାମି";s:3:"smj";s:71:"ଲାଟିନ୍ ଆମେରିକାନ୍ ସ୍ପାନିଶ୍";s:6:"es-419";s:52:"ଲେବେରିଆନ୍ ସ୍ପାନିଶ୍";s:5:"es-es";s:61:"ଲେବେରିଆନ୍ ପର୍ତ୍ତୁଗୀଜ୍";s:5:"pt-pt";s:24:"ଲାହାଣ୍ଡା";s:3:"lah";s:18:"ଲାମ୍ବା";s:3:"lam";s:21:"ଲୁଇସେନୋ";s:3:"lui";s:18:"ଲୁଣ୍ଡା";s:3:"lun";}i:51;a:18:{s:12:"Лојбан";s:3:"jbo";s:18:"Латыынныы";s:2:"la";s:12:"Лотинӣ";s:2:"la";s:12:"Ладино";s:3:"lad";s:14:"Лезгиан";s:3:"lez";s:18:"Лимбургиш";s:2:"li";s:10:"Лаосӣ";s:2:"lo";s:8:"Лози";s:3:"loz";s:14:"Литвонӣ";s:2:"lt";s:10:"Лушаи";s:3:"lus";s:16:"Латвиягӣ";s:2:"lv";s:21:"賓夕法尼亞德文";s:3:"pdc";s:18:"Лаҳистонӣ";s:2:"pl";s:19:"Луба-лулуа";s:3:"lua";s:10:"Ланда";s:3:"lah";s:10:"Ламба";s:3:"lam";s:14:"Луисено";s:3:"lui";s:10:"Лунда";s:3:"lun";}i:7;a:1:{s:9:"邏輯文";s:3:"jbo";}i:518;a:3:{s:18:"ユトランド語";s:3:"jut";s:27:"ユダヤ・ペルシア語";s:3:"jpr";s:27:"ユダヤ・アラビア語";s:3:"jrb";}i:720;a:10:{s:21:"ຈາແວນີສ";s:2:"jv";s:15:"ຈໍຈຽນ";s:2:"ka";s:12:"ተሉጉኛ";s:2:"te";s:9:"ຈີນ";s:2:"zh";s:39:"ຈີນແບບຮຽບງ່າຍ";s:7:"zh-hans";s:42:"ຈີນແບບດັ້ງເດີມ";s:7:"zh-hant";s:34:"ຈູແດວ-ເພີຊຽນ";s:3:"jpr";s:37:"ຈູແດວ-ອາລາບິກ";s:3:"jrb";s:9:"ຈຣູ";s:3:"kaj";s:21:"ຈີ່ມບູນ";s:3:"nnh";}i:870;a:7:{s:15:"ጆርጂያን";s:2:"ka";s:12:"ଶୋନା";s:2:"sn";s:37:"ଶାରାନା ଟୋଙ୍ଗୋ";s:3:"srn";s:19:"ጆላ ፎንያኛ";s:3:"dyo";s:12:"ଶାନ୍";s:3:"shn";s:18:"ଶେରେର୍";s:3:"srr";s:12:"ଶୁଶୁ";s:3:"sus";}i:684;a:5:{s:15:"格鲁吉亚文";s:2:"ka";s:12:"格陵兰文";s:2:"kl";s:12:"格陵蘭文";s:2:"kl";s:12:"格列博文";s:3:"grb";s:9:"뉴로어";s:3:"nyo";}i:964;a:1:{s:12:"커바일어";s:3:"kab";}i:18;a:5:{s:9:"刚果文";s:2:"kg";s:36:"គៀរហ្គីស្តង់";s:2:"ky";s:12:"刚卡尼文";s:3:"kok";s:21:"刚果斯瓦希里文";s:3:"swc";s:57:"គ្មាន​ទិន្នន័យ​ភាសា";s:3:"zxx";}i:412;a:10:{s:12:"키쿠유어";s:2:"ki";s:16:"քմերերեն";s:2:"km";s:20:"քաշմիրերեն";s:2:"ks";s:14:"քրդերեն";s:2:"ku";s:15:"키르기스어";s:2:"ky";s:12:"քեչուա";s:2:"qu";s:22:"քինյարվանդա";s:2:"rw";s:10:"քսոզա";s:2:"xh";s:9:"키체어";s:3:"quc";s:15:"키리바시어";s:3:"gil";}i:485;a:1:{s:12:"宽亚玛文";s:2:"kj";}i:291;a:1:{s:12:"廣亞馬文";s:2:"kj";}i:179;a:7:{s:14:"қазақша";s:2:"kk";s:19:"қазақ тілі";s:2:"kk";s:30:"қазақша (кирил)‎";s:7:"kk-cyrl";s:38:"қазақша (Қазақстан)‎";s:5:"kk-kz";s:21:"қырғыз тілі";s:2:"ky";s:19:"қытай тілі";s:2:"zh";s:53:"қазіргі стандартты араб тілі";s:6:"ar-001";}i:394;a:2:{s:18:"ղազախերեն";s:2:"kk";s:16:"ղրղզերեն";s:2:"ky";}i:905;a:3:{s:24:"ཁེ་མེར་ཁ";s:2:"km";s:42:"ཁོ་རེ་ཡའི་སྐད།";s:2:"ko";s:33:"ཁ་ངོ་མ་ཤེསཔ";s:3:"und";}i:326;a:9:{s:12:"खमेर";s:2:"km";s:15:"ख्मेर";s:2:"km";s:15:"ख़ोसा";s:2:"xh";s:12:"खोसा";s:2:"xh";s:8:"ņankolu";s:3:"nyn";s:12:"खासी";s:3:"kha";s:21:"खोतानीस";s:3:"kho";s:8:"ņamvezu";s:3:"nym";s:5:"ņoru";s:3:"nyo";}i:17;a:2:{s:15:"ខ្មែរ";s:2:"km";s:24:"ខ្លិងសុន";s:3:"tlh";}i:222;a:10:{s:15:"ಖಮೇರ್";s:2:"km";s:18:"普法爾茨德文";s:3:"pfl";s:12:"普魯士文";s:3:"prg";s:12:"普什图文";s:2:"ps";s:12:"普什圖文";s:2:"ps";s:24:"ಖ್ವಾಸಿಯೊ";s:3:"nmg";s:12:"ಖಾಸಿ";s:3:"kha";s:24:"ಖೋಟಾನೀಸ್";s:3:"kho";s:15:"普罗文斯文";s:3:"pro";s:21:"„bliss“ simbolių";s:3:"zbl";}i:868;a:2:{s:15:"캄보디아어";s:2:"km";s:9:"캄바어";s:3:"kam";}i:838;a:7:{s:18:"ଖ୍ମେର୍";s:2:"km";s:12:"ẞlovakesch";s:2:"sk";s:13:"ẞloveenesch";s:2:"sl";s:12:"ଖୋସା";s:2:"xh";s:9:"迦约文";s:3:"gay";s:12:"ଖାସୀ";s:3:"kha";s:24:"ଖୋତାନୀଜ୍";s:3:"kho";}i:620;a:3:{s:9:"한국어";s:2:"ko";s:18:"한국어 (조선)";s:5:"ko-kp";s:15:"까꼬토끄어";s:3:"kaj";}i:889;a:3:{s:6:"韩文";s:2:"ko";s:12:"葡萄牙文";s:2:"pt";s:24:"葡萄牙文(歐洲)";s:5:"pt-pt";}i:622;a:15:{s:27:"塞拉利昂克裏奧爾文";s:3:"kri";s:9:"ሎዚኛ";s:3:"loz";s:28:"塞尔维亚-克罗地亚文";s:2:"sh";s:30:"塞爾維亞克羅埃西亞文";s:2:"sh";s:15:"塞內加爾文";s:2:"sn";s:15:"塞尔维亚文";s:2:"sr";s:15:"塞爾維亞文";s:2:"sr";s:12:"塞索托文";s:2:"st";s:15:"塞茨瓦纳文";s:2:"tn";s:9:"塞纳文";s:3:"seh";s:15:"塞尔库普文";s:3:"sel";s:12:"塞雷爾文";s:3:"srr";s:12:"塞内卡文";s:3:"see";s:12:"塞訥卡文";s:3:"see";s:12:"塞拉亞文";s:3:"sly";}i:522;a:10:{s:15:"基那來阿文";s:3:"krj";s:36:"リングア・フランカ・ノバ";s:3:"lfn";s:18:"リンブルフ語";s:2:"li";s:15:"リグリア語";s:3:"lij";s:18:"リヴォニア語";s:3:"liv";s:15:"リンガラ語";s:2:"ln";s:18:"リトアニア語";s:2:"lt";s:12:"リーフ語";s:3:"rif";s:12:"基隆迪文";s:2:"rn";s:9:"基切文";s:3:"quc";}i:888;a:9:{s:15:"喀什米爾文";s:2:"ks";s:9:"신디어";s:2:"sd";s:12:"泰米尔文";s:2:"ta";s:12:"泰卢固文";s:2:"te";s:12:"泰盧固文";s:2:"te";s:9:"泰頓文";s:3:"tet";s:6:"泰文";s:2:"th";s:12:"泰雷諾文";s:3:"ter";s:19:"튀니지 아랍어";s:3:"aeb";}i:19;a:2:{s:9:"ឃឺដ";s:2:"ku";s:9:"ឃសា";s:2:"xh";}i:211;a:5:{s:12:"库尔德文";s:2:"ku";s:12:"库鲁克文";s:3:"kru";s:12:"库梅克文";s:3:"kum";s:12:"库特内文";s:3:"kut";s:8:"Óisibis";s:2:"oj";}i:247;a:10:{s:12:"康瓦耳文";s:2:"kw";s:18:"ಯಾಕುಟ್";s:3:"sah";s:21:"ಯಡ್ಡಿಶ್";s:2:"yi";s:18:"ಯೊರುಬಾ";s:2:"yo";s:77:"ಯಾವುದೇ ಭಾಷಾಸಂಬಂಧಿ ವಿಷಯವಿಲ್ಲ";s:3:"zxx";s:58:"ಯುರೋಪಿಯನ್ ಸ್ಪ್ಯಾನಿಷ್";s:5:"es-es";s:58:"ಯೂರೋಪಿಯನ್ ಪೋರ್ಚುಗೀಸ್";s:5:"pt-pt";s:9:"ಯಾಓ";s:3:"yao";s:15:"ಯಪೀಸೆ";s:3:"yap";s:9:"康姆文";s:3:"bkm";}i:178;a:2:{s:14:"Қирғизӣ";s:2:"ky";s:9:"干達文";s:2:"lg";}i:619;a:15:{s:12:"ላቲንኛ";s:2:"la";s:12:"ላውስኛ";s:2:"lo";s:15:"ላትቪያን";s:2:"lv";s:15:"ላቲቪያን";s:2:"lv";s:24:"ริฟฟิอัน";s:3:"rif";s:21:"รัสเซีย";s:2:"ru";s:15:"รูซิน";s:3:"rue";s:18:"รวันดา";s:2:"rw";s:9:"ላንጊ";s:3:"lag";s:9:"ላኮታ";s:3:"lkt";s:15:"รอมโบ";s:3:"rof";s:9:"รวา";s:3:"rwk";s:21:"ราชสถาน";s:3:"raj";s:18:"ราปานู";s:3:"rap";s:27:"ราโรทองกา";s:3:"rar";}i:388;a:14:{s:18:"լատիներեն";s:2:"la";s:34:"լյուքսեմբուրգերեն";s:2:"lb";s:14:"լինգալա";s:2:"ln";s:16:"լաոսերեն";s:2:"lo";s:16:"լիտվերեն";s:2:"lt";s:18:"լատվիերեն";s:2:"lv";s:14:"լեհերեն";s:2:"pl";s:10:"լանգի";s:3:"lag";s:12:"լակոտա";s:3:"lkt";s:25:"լուբա-կատանգա";s:2:"lu";s:8:"լուո";s:3:"luo";s:10:"լույա";s:3:"luy";s:19:"լուլե սամի";s:3:"smj";s:49:"լատինաամերիկյան իսպաներեն";s:6:"es-419";}i:49;a:6:{s:18:"ឡាតំាង";s:2:"la";s:9:"ឡាវ";s:2:"lo";s:24:"ឡាតវីយ៉ា";s:2:"lv";s:12:"旁遮普文";s:2:"pa";s:15:"旁狄希臘文";s:3:"pnt";s:9:"팡그어";s:3:"fan";}i:124;a:13:{s:18:"လက်တင်";s:2:"la";s:30:"လူဇင်ဘတ်က်";s:2:"lb";s:21:"လင်ဂါလာ";s:2:"ln";s:15:"လာအို";s:2:"lo";s:33:"လစ္သူအာနီယံ";s:2:"lt";s:21:"လက္ဘီအံ";s:2:"lv";s:15:"လန်ဂီ";s:3:"lag";s:21:"လာကိုတာ";s:3:"lkt";s:34:"လူဘာ-ခါတန်ဂါ";s:2:"lu";s:15:"လူအို";s:3:"luo";s:18:"လူရီအာ";s:3:"luy";s:25:"လူလီ ဆာမိ";s:3:"smj";s:52:"လက်တင်အမေရိက စပိန်";s:6:"es-419";}i:621;a:23:{s:15:"ละติน";s:2:"la";s:18:"ลาดิโน";s:3:"lad";s:36:"ลักเซมเบิร์ก";s:2:"lb";s:48:"ลิงกัวฟรังกาโนวา";s:3:"lfn";s:27:"ลิมเบิร์ก";s:2:"li";s:24:"ลิกูเรีย";s:3:"lij";s:24:"ลิโวเนีย";s:3:"liv";s:24:"ลอมบาร์ด";s:3:"lmo";s:21:"ลิงกาลา";s:2:"ln";s:9:"ลาว";s:2:"lo";s:27:"ลิทัวเนีย";s:2:"lt";s:18:"ลัตเกล";s:3:"ltg";s:12:"ลูไช";s:3:"lus";s:21:"ลัตเวีย";s:2:"lv";s:12:"ልቤኒኛ";s:2:"sq";s:18:"ลาโกตา";s:3:"lkt";s:34:"ลูบา-กาตองกา";s:2:"lu";s:28:"ลูบา-ลูลัว";s:3:"lua";s:9:"ลัว";s:3:"luo";s:18:"ลูเยีย";s:3:"luy";s:21:"ลาฮ์นดา";s:3:"lah";s:21:"ลุยเซโน";s:3:"lui";s:15:"ลันดา";s:3:"lun";}i:289;a:17:{s:9:"拉丁文";s:2:"la";s:12:"拉迪诺文";s:3:"lad";s:12:"拉迪諾文";s:3:"lad";s:15:"拉特加萊文";s:3:"ltg";s:15:"拉脱维亚文";s:2:"lv";s:15:"拉脫維亞文";s:2:"lv";s:9:"拉茲文";s:3:"lzz";s:12:"拉科塔文";s:3:"lkt";s:15:"ꅉꀋꌠꅇꂷ";s:3:"und";s:24:"拉丁美洲西班牙文";s:6:"es-419";s:12:"拉亨达文";s:3:"lah";s:12:"拉亨達文";s:3:"lah";s:15:"拉贾斯坦文";s:3:"raj";s:18:"拉賈斯坦諸文";s:3:"raj";s:15:"拉帕努伊文";s:3:"rap";s:15:"拉罗汤加文";s:3:"rar";s:15:"拉羅通加文";s:3:"rar";}i:15;a:1:{s:12:"列茲干文";s:3:"lez";}i:553;a:2:{s:26:"링구아 프랑카 노바";s:3:"lfn";s:12:"링갈라어";s:2:"ln";}i:618;a:10:{s:21:"ยูกันดา";s:2:"lg";s:15:"ሊንጋላኛ";s:2:"ln";s:18:"ሊቱአኒየን";s:2:"lt";s:18:"ยูเครน";s:2:"uk";s:9:"ยิว";s:2:"yi";s:37:"ยิว-เปอร์เซีย";s:3:"jpr";s:28:"ยิว-อาหรับ";s:3:"jrb";s:21:"ยูการิต";s:3:"uga";s:9:"ยัป";s:3:"yap";s:27:"ยูพิกกลาง";s:3:"esu";}i:519;a:2:{s:9:"林堡文";s:2:"li";s:12:"林加拉文";s:2:"ln";}i:769;a:5:{s:9:"老挝文";s:2:"lo";s:18:"ኡዊግሁርኛ";s:2:"ug";s:12:"ኡርዱኛ";s:2:"ur";s:15:"ኡዝቤክኛ";s:2:"uz";s:15:"ኡዝበክኛ";s:2:"uz";}i:534;a:3:{s:6:"寮文";s:2:"lo";s:9:"隆迪文";s:2:"rn";s:9:"隆达文";s:3:"lun";}i:435;a:3:{s:12:"立陶宛文";s:2:"lt";s:12:"纳瓦霍文";s:2:"nv";s:9:"纳马文";s:3:"naq";}i:991;a:7:{s:6:"文言";s:12:"zh-classical";s:9:"文言文";s:3:"lzh";s:18:"யாகுட்";s:3:"sah";s:9:"文达文";s:2:"ve";s:18:"யோருபா";s:2:"yo";s:12:"யாவ்";s:3:"yao";s:18:"யாபேசி";s:3:"yap";}i:560;a:18:{s:12:"마이틸리";s:3:"mai";s:15:"마셜제도어";s:2:"mh";s:12:"마오리어";s:2:"mi";s:18:"마케도니아어";s:2:"mk";s:12:"마라티어";s:2:"mr";s:18:"마잔데라니어";s:3:"mzn";s:12:"마차메어";s:3:"jmc";s:12:"마콘데어";s:3:"kde";s:12:"마사이어";s:3:"mas";s:22:"마크후와-메토어";s:3:"mgh";s:9:"마리어";s:3:"chm";s:12:"마두라어";s:3:"mad";s:9:"마가히";s:3:"mag";s:12:"마카사어";s:3:"mak";s:9:"마바어";s:3:"mde";s:15:"마니푸리어";s:3:"mni";s:15:"마르와리어";s:3:"mwr";s:9:"마파어";s:3:"maf";}i:993;a:3:{s:12:"邁蒂利文";s:3:"mai";s:9:"랑기어";s:3:"lag";s:9:"胡帕文";s:3:"hup";}i:514;a:13:{s:15:"モクシャ語";s:3:"mdf";s:15:"モンゴル語";s:2:"mn";s:8:"תאית";s:2:"th";s:36:"යුක්රේනියානු";s:2:"uk";s:18:"යොරූබා";s:2:"yo";s:39:"モーリシャス・クレオール語";s:3:"mfe";s:18:"モーホーク語";s:3:"moh";s:18:"モルダビア語";s:5:"ro-md";s:40:"תמזיע׳ת מרוקאית תקנית";s:3:"zgh";s:43:"යුරෝපීය ස්පාඤ්ඤ";s:5:"es-es";s:46:"යුරෝපීය පෘතුගීසි";s:5:"pt-pt";s:12:"モンゴ語";s:3:"lol";s:9:"モシ語";s:3:"mos";}i:638;a:4:{s:18:"ሞንጎላዊኛ";s:2:"mn";s:15:"ሞሪሲየኛ";s:3:"mfe";s:12:"ሞሃውክ";s:3:"moh";s:18:"ሞልዳቫዊና";s:5:"ro-md";}i:805;a:3:{s:9:"몽고어";s:2:"mn";s:6:"梵文";s:2:"sa";s:9:"몽구어";s:3:"lol";}i:665;a:2:{s:15:"山地マリ語";s:3:"mrj";s:9:"집시어";s:3:"rom";}i:436;a:1:{s:16:"서부 마리어";s:3:"mrj";}i:792;a:2:{s:9:"몰타어";s:2:"mt";s:12:"몰도바어";s:5:"ro-md";}i:260;a:3:{s:9:"버마어";s:2:"my";s:12:"폴란드어";s:2:"pl";s:9:"곤디어";s:3:"gon";}i:236;a:7:{s:9:"緬甸文";s:2:"my";s:15:"ತಮಿಳು";s:2:"ta";s:12:"ತುಳು";s:3:"tcy";s:18:"ತೆಲುಗು";s:2:"te";s:18:"ತಾಜಿಕ್";s:2:"tg";s:21:"ತುಂಬುಕಾ";s:3:"tum";s:24:"ತಹಿತಿಯನ್";s:2:"ty";}i:45;a:8:{s:12:"Ерзија";s:3:"myv";s:14:"Ефикски";s:3:"efi";s:29:"-ongerscheidlijje schprooche-";s:3:"mul";s:22:"-onbikannte-schprooch-";s:3:"und";s:12:"Екајук";s:3:"eka";s:18:"Еламитски";s:3:"elx";s:12:"Евондо";s:3:"ewo";s:18:"乍得阿拉伯文";s:3:"shu";}i:959;a:1:{s:21:"ஏர்ஜியா";s:3:"myv";}i:420;a:2:{s:12:"俄日亚文";s:3:"myv";s:6:"俄文";s:2:"ru";}i:802;a:1:{s:18:"瑪詹德拉尼文";s:3:"mzn";}i:755;a:5:{s:9:"ናኡሩ";s:2:"na";s:44:"ናይ ቱርኪ ሰብዓይ (ቱርካዊ)";s:2:"tk";s:21:"ຫວຽດນາມ";s:2:"vi";s:24:"ຫລາຍພາສາ";s:3:"mul";s:6:"ናማ";s:3:"naq";}i:316;a:19:{s:15:"ნაურუ";s:2:"na";s:39:"ნეაპოლიტანური";s:3:"nap";s:52:"ნორვეგიული ბუკმოლი";s:2:"nb";s:24:"ნეპალური";s:2:"ne";s:18:"ნევარი";s:3:"new";s:36:"ნიდერლანდური";s:2:"nl";s:58:"ნორვეგიული ნიუნორსკი";s:2:"nn";s:30:"ნორვეგიული";s:2:"no";s:18:"ნავახო";s:2:"nv";s:18:"ნიანჯა";s:2:"ny";s:18:"ნგომბა";s:3:"jgo";s:12:"ნამა";s:3:"naq";s:9:"ნკო";s:3:"nqo";s:15:"ნუერი";s:3:"nus";s:24:"ნიანკოლე";s:3:"nyn";s:21:"ნოღაური";s:3:"nog";s:24:"ნიამვეზი";s:3:"nym";s:15:"ნიორო";s:3:"nyo";s:15:"ნზიმა";s:3:"nzi";}i:737;a:18:{s:18:"ນາຢູລູ";s:2:"na";s:18:"ນາໂປລີ";s:3:"nap";s:43:"ນໍເວຈຽນ ບັອກມອລ";s:2:"nb";s:18:"ນີວາຣິ";s:3:"new";s:15:"ນີ່ອູ";s:3:"niu";s:37:"ນໍເວຈຽນ ນີນອກ";s:2:"nn";s:15:"ນໍເວຍ";s:2:"no";s:18:"ນາວາໂຈ";s:2:"nv";s:15:"ນານຈາ";s:2:"ny";s:12:"ນາມາ";s:3:"naq";s:27:"ນີບີລີໃຕ້";s:2:"nr";s:18:"ນານຄອນ";s:3:"nyn";s:18:"ນີ່ອັດ";s:3:"nia";s:12:"ນໍໄກ";s:3:"nog";s:21:"ນໍໂບຮານ";s:3:"non";s:21:"ນາມວີຊິ";s:3:"nym";s:12:"ນິມາ";s:3:"nzi";s:36:"ນາຍອາຊາຕອງກາ";s:3:"tog";}i:984;a:20:{s:15:"நவ்ரூ";s:2:"na";s:33:"நியோபோலிடன்";s:3:"nap";s:58:"நார்வேஜியன் பொக்மால்";s:2:"nb";s:18:"நேபாளி";s:2:"ne";s:18:"நெவாரி";s:3:"new";s:24:"நியூவான்";s:3:"niu";s:70:"நார்வேஜியன் நியூநார்ஸ்க்";s:2:"nn";s:18:"நார்வே";s:2:"no";s:15:"நவாஜோ";s:2:"nv";s:18:"நயன்ஜா";s:2:"ny";s:21:"நகொம்பா";s:3:"jgo";s:12:"நாமா";s:3:"naq";s:18:"நியூர்";s:3:"nus";s:30:"நியான்கோலே";s:3:"nyn";s:18:"நியாஸ்";s:3:"nia";s:12:"நோகை";s:3:"nog";s:30:"நியாம்வேஜி";s:3:"nym";s:18:"நியோரோ";s:3:"nyo";s:18:"நிஜ்மா";s:3:"nzi";s:34:"நயாசா டோங்கா";s:3:"tog";}i:785;a:1:{s:9:"瑙鲁文";s:2:"na";}i:398;a:8:{s:35:"նորվեգերեն բուկմոլ";s:2:"nb";s:18:"նեպալերեն";s:2:"ne";s:39:"նորվեգերեն նյունորսկ";s:2:"nn";s:12:"նգոմբա";s:3:"jgo";s:8:"նամա";s:3:"naq";s:6:"նկո";s:3:"nqo";s:10:"նուեր";s:3:"nus";s:16:"նյանկոլե";s:3:"nyn";}i:494;a:17:{s:38:"ノルウェー語(ブークモール)";s:2:"nb";s:38:"ノルウェー語(ニーノシュク)";s:2:"nn";s:42:"ノルウェー語(ブークモール)";s:2:"no";s:15:"ノヴィアル";s:3:"nov";s:15:"ノルマン語";s:3:"nrm";s:42:"ノーフォーク語・ピトケアン語";s:3:"pih";s:12:"ז׳ואנג";s:2:"za";s:8:"זולו";s:2:"zu";s:10:"זארמה";s:3:"dje";s:22:"זשאלא־פֿאני";s:3:"dyo";s:19:"猶太教-波斯文";s:3:"jpr";s:18:"猶太阿拉伯文";s:3:"jrb";s:12:"ノガイ語";s:3:"nog";s:12:"זאפוטק";s:3:"zap";s:10:"זנאגה";s:3:"zen";s:8:"זוני";s:3:"zun";s:8:"זאזא";s:3:"zza";}i:35;a:5:{s:43:"ន័រវែស បុកម៉ាល់";s:2:"nb";s:21:"នេប៉ាល់";s:2:"ne";s:34:"ន័រវែស នីនូស";s:2:"nn";s:12:"别姆巴文";s:3:"bem";s:9:"别札文";s:3:"bej";}i:432;a:5:{s:26:"노르웨이어(보크말)";s:2:"nb";s:32:"노르웨이어(니노르스크)";s:2:"nn";s:15:"노르웨이어";s:2:"no";s:12:"노가이어";s:3:"nog";s:20:"노르웨이, 고대";s:3:"non";}i:386;a:4:{s:21:"挪威博克马尔文";s:2:"nb";s:21:"挪威尼诺斯克文";s:2:"nn";s:9:"挪威文";s:2:"no";s:56:"ժամանակակից ստանդարտ արաբերեն";s:6:"ar-001";}i:531;a:6:{s:15:"ンドンガ語";s:2:"ng";s:15:"ンゴンバ語";s:3:"jgo";s:9:"ンコ語";s:3:"nqo";s:12:"ンゼマ語";s:3:"nzi";s:18:"ンガムバイ語";s:3:"sba";s:24:"ンジエムブーン語";s:3:"nnh";}i:712;a:5:{s:12:"느동가어";s:2:"ng";s:12:"느지마어";s:3:"nzi";s:15:"느감바이어";s:3:"sba";s:15:"느기엠본어";s:3:"nnh";s:9:"옘바어";s:3:"ybb";}i:848;a:4:{s:6:"ደች";s:2:"nl";s:19:"ደቡባዊ ሳሚ";s:3:"sma";s:9:"兰博文";s:3:"rof";s:9:"兰巴文";s:3:"lam";}i:655;a:2:{s:9:"荷兰文";s:2:"nl";s:9:"荷蘭文";s:2:"nl";}i:656;a:9:{s:19:"ሰሜናዊ ሶቶ";s:3:"nso";s:19:"ሰሜናዊ ሳሚ";s:2:"se";s:28:"ሰርቦ-ክሮኤሽያኛ";s:2:"sh";s:26:"ሰርቦ- ክሮዊታን";s:2:"sh";s:12:"ሰርቢኛ";s:2:"sr";s:9:"ሰሴቶ";s:2:"st";s:15:"ሰዋሂሊኛ";s:2:"sw";s:9:"엠부어";s:3:"ebu";s:22:"ሰሜን ንዴብሌ";s:2:"nd";}i:697;a:9:{s:25:"ઉતરી સોથો";s:3:"nso";s:15:"ઉડિયા";s:2:"or";s:34:"ઉત્તરીય સામી";s:2:"se";s:21:"ઉદમુર્ત";s:3:"udm";s:15:"ઉઇગુર";s:2:"ug";s:15:"ઉર્દૂ";s:2:"ur";s:18:"ઉઝ્બેક";s:2:"uz";s:25:"ઉતર દેબેલ";s:2:"nd";s:27:"ઉમ્બુન્ડૂ";s:3:"umb";}i:774;a:5:{s:15:"ኦኪታንኛ";s:2:"oc";s:12:"ኦሮሞኛ";s:2:"om";s:12:"ኦሪያኛ";s:2:"or";s:9:"ኦሪያ";s:2:"or";s:12:"ኦሴቲክ";s:2:"os";}i:317;a:6:{s:30:"ოქსიტანური";s:2:"oc";s:15:"ორომო";s:2:"om";s:12:"ორია";s:2:"or";s:15:"ოსური";s:2:"os";s:9:"圭契文";s:3:"gwi";s:18:"ოჯიბვე";s:2:"oj";}i:218;a:7:{s:18:"ಒಸಿಟನ್";s:2:"oc";s:15:"ಒರಿಯಾ";s:2:"or";s:27:"ಒಸ್ಸೆಟಿಕ್";s:2:"os";s:10:"Úcráinis";s:2:"uk";s:19:"Úisbéiceastáinis";s:2:"uz";s:21:"ಒಜಿಬ್ವಾ";s:2:"oj";s:49:"ಒಟ್ಟೋಮನ್ ತುರ್ಕಿಷ್";s:3:"ota";}i:835;a:6:{s:21:"ଓସିଟାନ୍";s:2:"oc";s:15:"ଓରୋମୋ";s:2:"om";s:15:"ଓଡ଼ିଆ";s:2:"or";s:21:"ଓସେଟିକ୍";s:2:"os";s:15:"ଓଜିୱା";s:2:"oj";s:49:"ଓଟ୍ଟୋମନ୍ ତୁର୍କିସ୍";s:3:"ota";}i:962;a:8:{s:24:"ஒக்கிடன்";s:2:"oc";s:15:"ஒரோமோ";s:2:"om";s:15:"ஒரியா";s:2:"or";s:27:"ஒசெட்டிக்";s:2:"os";s:21:"ஒலாபூக்";s:2:"vo";s:21:"ஒவாலூன்";s:2:"wa";s:18:"ஒலூஃப்";s:2:"wo";s:49:"ஒட்டோமன் துர்க்கி";s:3:"ota";}i:887;a:4:{s:15:"奧克西坦文";s:2:"oc";s:12:"奧羅莫文";s:2:"om";s:12:"奧塞提文";s:2:"os";s:15:"奧杰布瓦文";s:2:"oj";}i:413;a:2:{s:10:"օրոմո";s:2:"om";s:10:"օրիյա";s:2:"or";}i:219;a:3:{s:15:"ಓರೊಮೋ";s:2:"om";s:5:"Ûrdu";s:2:"ur";s:15:"ಓಸಾಜ್";s:3:"osa";}i:579;a:1:{s:15:"ਓਰੋਮੋ";s:2:"om";}i:569;a:6:{s:12:"ਉੜੀਆ";s:2:"or";s:28:"ਉੱਤਰੀ ਸਾਮੀ";s:2:"se";s:15:"ਉਇਗੁਰ";s:2:"ug";s:12:"ਉਰਦੂ";s:2:"ur";s:18:"ਉਜ਼ਬੇਕ";s:2:"uz";s:37:"ਉੱਤਰੀ ਨਡੇਬੇਲੇ";s:2:"nd";}i:54;a:4:{s:14:"Осетски";s:2:"os";s:12:"Ојибва";s:2:"oj";s:10:"Осаге";s:3:"osa";s:31:"Отомански турски";s:3:"ota";}i:411;a:2:{s:20:"փենջաբերեն";s:2:"pa";s:14:"փուշթու";s:2:"ps";}i:318;a:5:{s:27:"პენჯაბური";s:2:"pa";s:12:"პალი";s:2:"pi";s:24:"პოლონური";s:2:"pl";s:15:"პუშტუ";s:2:"ps";s:36:"პორტუგალიური";s:2:"pt";}i:144;a:1:{s:9:"펀잡어";s:2:"pa";}i:28;a:3:{s:18:"파피아먼토어";s:3:"pap";s:12:"파슈토어";s:2:"ps";s:15:"파라우안어";s:3:"pau";}i:272;a:3:{s:18:"門諾低地德文";s:3:"pdt";s:5:"Đula";s:3:"dyu";s:9:"門德文";s:3:"men";}i:509;a:6:{s:18:"ポーランド語";s:2:"pl";s:30:"ポントス・ギリシャ語";s:3:"pnt";s:18:"ポルトガル語";s:2:"pt";s:9:"총가어";s:2:"ts";s:38:"ポルトガル語(イベリア半島)";s:5:"pt-pt";s:15:"ポンペイ語";s:3:"pon";}i:65;a:3:{s:12:"ᏉᏧᎦᎵ";s:2:"pt";s:18:"鲁巴加丹加文";s:2:"lu";s:15:"鲁巴鲁瓦文";s:3:"lua";}i:37;a:2:{s:12:"ꁍꄨꑸꉙ";s:2:"pt";s:21:"ផ្លាមីស";s:5:"nl-be";}i:38;a:3:{s:36:"ព័រទុយហ្កាល់";s:2:"pt";s:61:"ព័រទុយហ្គាល់ ប្រេស៊ីល";s:5:"pt-br";s:55:"ព័រទុយហ្គាល់ អឺរ៉ុប";s:5:"pt-pt";}i:992;a:12:{s:18:"ꀠꑟꁍꄨꑸꉙ";s:5:"pt-br";s:12:"케추아어";s:2:"qu";s:24:"ரோமான்ஷ்";s:2:"rm";s:18:"ருண்டி";s:2:"rn";s:27:"ரோமேனியன்";s:2:"ro";s:18:"ரஷியன்";s:2:"ru";s:18:"ரோம்போ";s:3:"rof";s:12:"ருவா";s:3:"rwk";s:27:"ராஜஸ்தானி";s:3:"raj";s:18:"ரபனுய்";s:3:"rap";s:30:"ரரோடோங்கன்";s:3:"rar";s:18:"ரோமானி";s:3:"rom";}i:789;a:1:{s:9:"ኵቿኛ";s:2:"qu";}i:422;a:2:{s:12:"盖丘亚文";s:2:"qu";s:12:"约鲁巴文";s:2:"yo";}i:645;a:7:{s:18:"羅馬格諾里文";s:3:"rgn";s:12:"羅曼斯文";s:2:"rm";s:15:"羅馬尼亞文";s:2:"ro";s:18:"羅馬尼亞語系";s:3:"rup";s:9:"羅瓦文";s:3:"rwk";s:15:"羅圖馬島文";s:3:"rtm";s:15:"羅維阿納文";s:3:"rug";}i:654;a:7:{s:12:"ሮማንሽ";s:2:"rm";s:15:"ሮማኒያን";s:2:"ro";s:25:"美茵-法蘭克尼亞文";s:3:"vmf";s:9:"美塔文";s:3:"mgo";s:9:"ሮምቦ";s:3:"rof";s:12:"美式英文";s:5:"en-us";s:12:"美國手語";s:3:"ase";}i:480;a:14:{s:21:"রোমান্স";s:2:"rm";s:18:"রুন্দি";s:2:"rn";s:24:"রোমানীয়";s:2:"ro";s:9:"রুশ";s:2:"ru";s:15:"রম্বো";s:3:"rof";s:18:"রাওয়া";s:3:"rwk";s:12:"ダコタ語";s:3:"dak";s:15:"ダルガン語";s:3:"dar";s:12:"ダザガ語";s:3:"dzg";s:27:"রাজস্থানী";s:3:"raj";s:21:"রাপানুই";s:3:"rap";s:30:"রারোটোংগান";s:3:"rar";s:18:"রোমানি";s:3:"rom";s:35:"ダリー語(ゾロアスター教)";s:3:"gbz";}i:736;a:10:{s:21:"રોમાન્શ";s:2:"rm";s:18:"રૂન્દી";s:2:"rn";s:24:"રોમાનિયન";s:2:"ro";s:15:"રશિયન";s:2:"ru";s:18:"રોમ્બો";s:3:"rof";s:9:"રવા";s:3:"rwk";s:27:"રાજસ્થાની";s:3:"raj";s:21:"રાપાનુઇ";s:3:"rap";s:27:"રારોટોંગન";s:3:"rar";s:18:"રોમાની";s:3:"rom";}i:42;a:14:{s:21:"រ៉ូម៉ង់";s:2:"rm";s:18:"រូន្ឌី";s:2:"rn";s:21:"រូម៉ានី";s:2:"ro";s:21:"រុស្ស៊ី";s:2:"ru";s:16:"Влахесте";s:8:"ruq-cyrl";s:10:"Венда";s:2:"ve";s:14:"Волапук";s:2:"vo";s:12:"Вотски";s:3:"vot";s:10:"Валун";s:2:"wa";s:10:"Варај";s:3:"war";s:21:"Више језика";s:3:"mul";s:12:"Валамо";s:3:"wal";s:8:"Вашо";s:3:"was";s:20:"Валзерська";s:3:"wae";}i:515;a:6:{s:24:"රොමෑන්ශ්";s:2:"rm";s:18:"රුන්ඩි";s:2:"rn";s:30:"රොමේනියානු";s:2:"ro";s:24:"රුසියානු";s:2:"ru";s:18:"රෝම්බෝ";s:3:"rof";s:12:"ර්වා";s:3:"rwk";}i:599;a:3:{s:12:"罗曼什文";s:2:"rm";s:15:"罗马尼亚文";s:2:"ro";s:9:"罗瓦文";s:3:"rwk";}i:747;a:6:{s:15:"ຣຸນດິ";s:2:"rn";s:18:"ຣັດຊຽນ";s:2:"ru";s:15:"ຣົມໂບ";s:3:"rof";s:27:"ຣາຈັສທານິ";s:3:"raj";s:21:"ຣາປານຸຍ";s:3:"rap";s:30:"ຣາໂຣທອນການ";s:3:"rar";}i:56;a:8:{s:18:"Румыынныы";s:2:"ro";s:12:"Руминӣ";s:2:"ro";s:8:"Русӣ";s:2:"ru";s:6:"Рва";s:3:"rwk";s:18:"Рађастани";s:3:"raj";s:14:"Рапануи";s:3:"rap";s:20:"Раротонган";s:3:"rar";s:12:"Романи";s:3:"rom";}i:479;a:15:{s:15:"タラント語";s:8:"roa-tara";s:21:"タシルハイト語";s:3:"shi";s:12:"タミル語";s:2:"ta";s:12:"タジク語";s:2:"tg";s:9:"タイ語";s:2:"th";s:15:"タガログ語";s:2:"tl";s:15:"タリシュ語";s:3:"tly";s:15:"タタール語";s:2:"tt";s:12:"タヒチ語";s:2:"ty";s:24:"য়িদ্দিশ";s:2:"yi";s:12:"タイタ語";s:3:"dav";s:15:"タサワク語";s:3:"twq";s:41:"タマージク語(モロッコ公用語)";s:3:"zgh";s:18:"タマシェク語";s:3:"tmh";s:12:"タロコ語";s:3:"trv";}i:651;a:1:{s:9:"ራሽኛ";s:2:"ru";}i:659;a:5:{s:21:"ሳንስክሪትኛ";s:2:"sa";s:12:"ሳንጎኛ";s:2:"sg";s:12:"ሳሞአኛ";s:2:"sm";s:12:"ሳምቡሩ";s:3:"saq";s:9:"ሳንጉ";s:3:"sbp";}i:556;a:3:{s:12:"야큐트어";s:3:"sah";s:6:"吴语";s:3:"wuu";s:12:"야오족어";s:3:"yao";}i:955;a:2:{s:12:"散塔利文";s:3:"sat";s:12:"散达维文";s:3:"sad";}i:832;a:7:{s:9:"萨丁文";s:2:"sc";s:12:"萨摩亚文";s:2:"sm";s:9:"萨伊文";s:3:"mas";s:15:"萨玛利亚文";s:3:"sam";s:12:"萨萨克文";s:3:"sas";s:15:"萨波蒂克文";s:3:"zap";s:9:"萨霍文";s:3:"ssy";}i:746;a:9:{s:9:"撒丁文";s:2:"sc";s:24:"ຢູເຄຣນຽນ";s:2:"uk";s:9:"ຢິວ";s:2:"yi";s:12:"哲尔马文";s:3:"dje";s:46:"ຢູໂຣປຽນ ສະແປນນິຊ";s:5:"es-es";s:43:"ຢູໂຣປຽນ ປໍຕູກີສ";s:5:"pt-pt";s:12:"撒撒克文";s:3:"sas";s:21:"ຢູກາລິກ";s:3:"uga";s:9:"ຢັບ";s:3:"yap";}i:884;a:5:{s:15:"시칠리아어";s:3:"scn";s:15:"시스와티어";s:2:"ss";s:12:"시다모어";s:3:"sid";s:21:"시리아어 (고전)";s:3:"syc";s:12:"시리아어";s:3:"syr";}i:449;a:1:{s:9:"信德文";s:2:"sd";}i:217;a:9:{s:25:"薩丁尼亞-薩薩里文";s:3:"sdc";s:18:"薩莫吉希亞文";s:3:"sgs";s:12:"薩摩亞文";s:2:"sm";s:10:"Ùigiurais";s:2:"ug";s:5:"Ùrdu";s:2:"ur";s:12:"薩布魯文";s:3:"saq";s:24:"薩瑪利亞阿拉姆文";s:3:"sam";s:15:"薩波特克文";s:3:"zap";s:9:"薩霍文";s:3:"ssy";}i:791;a:5:{s:9:"瑟里文";s:3:"sei";s:18:"魯巴加丹加文";s:2:"lu";s:18:"魯巴魯魯亞文";s:3:"lua";s:15:"魯勒薩米文";s:3:"smj";s:15:"瑟爾卡普文";s:3:"sel";}i:723;a:9:{s:15:"ታቼልሂት";s:3:"shi";s:12:"ታሚልኛ";s:2:"ta";s:12:"ታጂኪኛ";s:2:"tg";s:9:"ታይኛ";s:2:"th";s:15:"ታጋሎገኛ";s:3:"fil";s:12:"ታታርኛ";s:2:"tt";s:15:"ታሂታንኛ";s:2:"ty";s:12:"ታይታኛ";s:3:"dav";s:12:"ታሳዋቅ";s:3:"twq";}i:440;a:10:{s:15:"타셸히트어";s:3:"shi";s:9:"타밀어";s:2:"ta";s:12:"타지크어";s:2:"tg";s:15:"타갈로그어";s:2:"tl";s:12:"타타르어";s:2:"tt";s:12:"타히티어";s:2:"ty";s:12:"타이타어";s:3:"dav";s:15:"타사와크어";s:3:"twq";s:12:"타마섹어";s:3:"tmh";s:12:"타로코어";s:3:"trv";}i:591;a:4:{s:21:"ਟਚੇਲਹਿਟ";s:3:"shi";s:15:"ਟੌਂਗਨ";s:2:"to";s:12:"ਟੇਟਾ";s:3:"dav";s:12:"ਟੇਸੋ";s:3:"teo";}i:836;a:4:{s:18:"슬로바키아어";s:2:"sk";s:18:"슬로베니아어";s:2:"sl";s:12:"요루바어";s:2:"yo";s:12:"슬라브어";s:3:"den";}i:31;a:13:{s:15:"斯洛伐克文";s:2:"sk";s:18:"斯洛文尼亚文";s:2:"sl";s:18:"斯洛維尼亞文";s:2:"sl";s:12:"斯瓦特文";s:2:"ss";s:15:"斯瓦希里文";s:2:"sw";s:15:"តាមីល";s:2:"ta";s:18:"តេលុគុ";s:2:"te";s:42:"តាដហ្សីគីស្តង់";s:2:"tg";s:21:"តុងហ្គោ";s:2:"to";s:15:"តាតារ";s:2:"tt";s:18:"斯科特萨米文";s:3:"sms";s:18:"斯科特薩米文";s:3:"sms";s:9:"斯拉夫";s:3:"den";}i:197;a:1:{s:14:"Åarjelsaemien";s:3:"sma";}i:854;a:4:{s:31:"ଦକ୍ଷିଣ ସାମି";s:3:"sma";s:40:"ଦକ୍ଷିଣ ନେଡବେଲେ";s:2:"nr";s:37:"ଦକ୍ଷିଣ ଆଲ୍ଟାଇ";s:3:"alt";s:18:"ଦିଙ୍କା";s:3:"din";}i:598;a:1:{s:28:"ਦੱਖਣੀ ਸਾਮੀ";s:3:"sma";}i:660;a:3:{s:9:"쇼나어";s:2:"sn";s:6:"ሴና";s:3:"seh";s:16:"블리스 심볼";s:3:"zbl";}i:999;a:4:{s:12:"ஷோனா";s:2:"sn";s:21:"ஷம்பாலா";s:3:"ksb";s:12:"ஷகதை";s:3:"chg";s:12:"ஷான்";s:3:"shn";}i:657;a:17:{s:12:"ሱማልኛ";s:2:"so";s:12:"ሱዳንኛ";s:2:"su";s:10:"ٹیٹَم";s:3:"tet";s:8:"ٹیٹم";s:3:"tet";s:16:"ٹِگرِنیا";s:2:"ti";s:14:"ٹگرینیا";s:2:"ti";s:15:"ٹیگا لوگ";s:2:"tl";s:12:"ٹونٛگا";s:2:"to";s:10:"ٹونگن";s:2:"to";s:17:"ٹاک پِسِن";s:3:"tpi";s:17:"ٹوک پِسِن";s:3:"tpi";s:12:"ٹمبوکا";s:3:"tum";s:14:"ٹاےگریے";s:3:"tig";s:12:"ٹِمنیے";s:3:"tem";s:16:"ٹیٚریٚنو";s:3:"ter";s:16:"ٹوکیٖلاو";s:3:"tkl";s:16:"ٹِلِنگِت";s:3:"tli";}i:692;a:1:{s:9:"순다어";s:2:"su";}i:341;a:1:{s:9:"थाई";s:2:"th";}i:719;a:10:{s:33:"ટાઇગ્રિનિયા";s:2:"ti";s:21:"ટાગાલોગ";s:2:"tl";s:18:"ટોંગાન";s:2:"to";s:25:"ટોક પિસિન";s:3:"tpi";s:18:"ટર્કીશ";s:2:"tr";s:15:"ટ્વાઇ";s:2:"tw";s:24:"ટુવીનિયન";s:3:"tyv";s:15:"ງອມບາ";s:3:"jgo";s:21:"ટાઇગ્રે";s:3:"tig";s:18:"ટિમ્ને";s:3:"tem";}i:552;a:7:{s:18:"提格里尼亚文";s:2:"ti";s:18:"提格利尼亞文";s:2:"ti";s:9:"터키어";s:2:"tr";s:12:"提格雷文";s:3:"tig";s:20:"터키어, 오스만";s:3:"ota";s:9:"提姆文";s:3:"tem";s:9:"提夫文";s:3:"tiv";}i:804;a:3:{s:15:"투르크멘어";s:2:"tk";s:15:"투비니안어";s:3:"tyv";s:12:"투발루어";s:3:"tvl";}i:303;a:4:{s:12:"土库曼文";s:2:"tk";s:12:"土庫曼文";s:2:"tk";s:12:"土耳其文";s:2:"tr";s:9:"土凡文";s:3:"tyv";}i:448;a:2:{s:12:"탈리쉬어";s:3:"tly";s:43:"ঐতিহ্যবাহি চীনা";s:7:"zh-hant";}i:685;a:2:{s:9:"통가어";s:2:"to";s:27:"통가어 (니아살랜드)";s:3:"tog";}i:748;a:2:{s:9:"汤加文";s:2:"to";s:30:"汤加文(尼亚萨地区)";s:3:"tog";}i:664;a:2:{s:16:"토크 피신어";s:3:"tpi";s:21:"토켈라우제도어";s:3:"tkl";}i:786;a:1:{s:8:"Ṫuroyo";s:3:"tru";}i:851;a:1:{s:9:"韃靼文";s:2:"tt";}i:820;a:1:{s:12:"툼부카어";s:3:"tum";}i:890;a:1:{s:12:"通布卡文";s:3:"tum";}i:270;a:2:{s:9:"图瓦文";s:3:"tyv";s:12:"图瓦卢文";s:3:"tvl";}i:632;a:2:{s:44:"መካከለኛ አትላስ ታማዚግት";s:3:"tzm";s:41:"መደበኛ የሞሮኮ ታማዚግት";s:3:"zgh";}i:953;a:6:{s:27:"உட்முர்ட்";s:3:"udm";s:21:"உய்குர்";s:2:"ug";s:30:"உக்ரைனியன்";s:2:"uk";s:15:"உருது";s:2:"ur";s:21:"உஸ்பெக்";s:2:"uz";s:27:"உகாரிட்க்";s:3:"uga";}i:937;a:7:{s:33:"ཡུ་གུར་སྐད།";s:2:"ug";s:39:"ཡུ་ཀྲ་ནི་སྐད།";s:2:"uk";s:51:"ཡུ་ཀེ་རེ་ནི་ཡཱན་ཁ";s:2:"uk";s:30:"ཡོ་ནན་སྐད།";s:2:"vi";s:27:"ཡོ་རུ་བ་ཁ";s:2:"yo";s:48:"ཡུ་ཨེས་ཨིང་ལིཤ་ཁ";s:5:"en-us";s:69:"ཡུ་རོབ་ཀྱི་ཨིས་པེ་ནིཤ་ཁ";s:5:"es-es";}i:948;a:4:{s:12:"위구르어";s:2:"ug";s:12:"達科他文";s:3:"dak";s:15:"達爾格瓦文";s:3:"dar";s:9:"達薩文";s:3:"dzg";}i:262;a:2:{s:12:"Ӯйғурӣ";s:2:"ug";s:12:"Ӯзбекӣ";s:2:"uz";}i:173;a:2:{s:12:"維吾爾文";s:2:"ug";s:12:"維普森文";s:3:"vep";}i:841;a:2:{s:15:"ዩክሬንኛ";s:2:"uk";s:15:"ዩክረኒኛ";s:2:"uk";}i:879;a:4:{s:12:"烏克蘭文";s:2:"uk";s:9:"烏都文";s:2:"ur";s:15:"烏茲別克文";s:2:"uz";s:12:"烏加列文";s:3:"uga";}i:134;a:1:{s:21:"ဦးဇ်ဘက်";s:2:"uz";}i:292;a:1:{s:9:"벤다어";s:2:"ve";}i:718;a:1:{s:15:"ቮላፑክኛ";s:2:"vo";}i:527;a:4:{s:12:"ワロン語";s:2:"wa";s:12:"ワライ語";s:3:"war";s:12:"ワショ語";s:3:"was";s:9:"ワユ語";s:3:"guc";}i:760;a:1:{s:9:"왈론어";s:2:"wa";}i:751;a:9:{s:15:"ວໍລູມ";s:2:"wa";s:12:"ວາເລ";s:3:"war";s:15:"ວໍລອບ";s:2:"wo";s:15:"ວັນໂຈ";s:3:"vun";s:9:"峇里文";s:3:"ban";s:18:"ວິດອິນ";s:3:"gwi";s:18:"ວາລາໂມ";s:3:"wal";s:12:"ວາໂຊ";s:3:"was";s:15:"ວາເຊີ";s:3:"wae";}i:623;a:7:{s:18:"วาโลนี";s:2:"wa";s:18:"วาเรย์";s:3:"war";s:15:"วุนจู";s:3:"vun";s:18:"วาลาโม";s:3:"wal";s:12:"วาโช";s:3:"was";s:12:"วายู";s:3:"guc";s:24:"วัลเซอร์";s:3:"wae";}i:752;a:3:{s:12:"와라이어";s:3:"war";s:12:"와라모어";s:3:"wal";s:9:"와쇼어";s:3:"was";}i:814;a:2:{s:12:"ዎሎፍኛ";s:2:"wo";s:9:"瑶族文";s:3:"yao";}i:577;a:2:{s:6:"呉語";s:3:"wuu";s:9:"양본어";s:3:"yav";}i:555;a:1:{s:6:"吳語";s:3:"wuu";}i:830;a:1:{s:9:"ዞሳኛ";s:2:"xh";}i:918;a:8:{s:8:"Ζόσα";s:2:"xh";s:14:"Ζουάνγκ";s:2:"za";s:12:"Ζουλού";s:2:"zu";s:10:"Ζάρμα";s:3:"dje";s:14:"Ζάποτεκ";s:3:"zap";s:14:"Ζενάγκα";s:3:"zen";s:10:"Ζούνι";s:3:"zun";s:8:"Ζάζα";s:3:"zza";}i:845;a:1:{s:12:"ይዲሽኛ";s:2:"yi";}i:375;a:9:{s:24:"യിദ്ദിഷ്";s:2:"yi";s:18:"യൊറൂബാ";s:2:"yo";s:28:"യോല-ഫോന്യി";s:3:"dyo";s:52:"യൂറോപ്യൻ സ്‌പാനിഷ്";s:5:"es-es";s:58:"യൂറോപ്യൻ പോർച്ചുഗീസ്";s:5:"pt-pt";s:12:"യാവോ";s:3:"yao";s:24:"യെപ്പീസ്";s:3:"yap";s:24:"യാംഗ്ബെൻ";s:3:"yav";s:9:"യംബ";s:3:"ybb";}i:846;a:2:{s:15:"ዮሩባዊኛ";s:2:"yo";s:18:"ଞ୍ଜିମା";s:3:"nzi";}i:397;a:1:{s:14:"յորուբա";s:2:"yo";}i:4;a:1:{s:12:"約魯巴文";s:2:"yo";}i:908;a:1:{s:6:"粤语";s:3:"yue";}i:833;a:1:{s:15:"ዡዋንግኛ";s:2:"za";}i:285;a:1:{s:7:"ĝuanga";s:2:"za";}i:229;a:4:{s:21:"ಝೂವಾಂಗ್";s:2:"za";s:24:"ಝೋಪೊಟೆಕ್";s:3:"zap";s:18:"ಝೆನಾಗಾ";s:3:"zen";s:12:"ಝೂನಿ";s:3:"zun";}i:46;a:1:{s:10:"Жуанг";s:2:"za";}i:766;a:1:{s:6:"壮文";s:2:"za";}i:767;a:1:{s:6:"壯文";s:2:"za";}i:807;a:1:{s:9:"ꍏꇩꉙ";s:2:"zh";}i:974;a:1:{s:15:"ꀎꋏꍏꇩꉙ";s:7:"zh-hant";}i:824;a:5:{s:38:"ዘመናዊ መደበኛ ዓረብኛ";s:6:"ar-001";s:9:"치가어";s:3:"cgg";s:12:"치브차어";s:3:"chb";s:48:"치누크어와 영어 프랑스어의 혼성어";s:3:"chn";s:12:"치페우얀";s:3:"chp";}i:788;a:1:{s:23:"현대 표준 아랍어";s:6:"ar-001";}i:29;a:1:{s:12:"別姆巴文";s:3:"bem";}i:855;a:3:{s:9:"奇加文";s:3:"cgg";s:12:"奇布查文";s:3:"chb";s:15:"奇佩瓦揚文";s:3:"chp";}i:166;a:2:{s:12:"扎爾馬文";s:3:"dje";s:9:"扎扎文";s:3:"zza";}i:300;a:2:{s:12:"드와라어";s:3:"dua";s:12:"드율라어";s:3:"dyu";}i:417;a:1:{s:9:"朱拉文";s:3:"dyo";}i:573;a:3:{s:8:"إمبو";s:3:"ebu";s:46:"إسبانية أمريكا اللاتينية";s:6:"es-419";s:12:"얍페세어";s:3:"yap";}i:701;a:1:{s:15:"ઍમ્બુ";s:3:"ebu";}i:275;a:1:{s:12:"ēģiptiešu";s:3:"egy";}i:2;a:1:{s:9:"貢根文";s:3:"kok";}i:667;a:1:{s:12:"ሻምባላ";s:3:"ksb";}i:636;a:2:{s:6:"ሜሩ";s:3:"mer";s:6:"ሜታ";s:3:"mgo";}i:700;a:3:{s:9:"메루어";s:3:"mer";s:9:"메타어";s:3:"mgo";s:12:"메둠바어";s:3:"byv";}i:633;a:1:{s:15:"ሙንዳንግ";s:3:"mua";}i:796;a:5:{s:13:"다중 언어";s:3:"mul";s:12:"다코타어";s:3:"dak";s:15:"다르그와어";s:3:"dar";s:12:"다장가어";s:3:"dzg";s:6:"瑤文";s:3:"yao";}i:627;a:1:{s:24:"หลายภาษา";s:3:"mul";}i:810;a:5:{s:12:"多种语系";s:3:"mul";s:12:"多種語言";s:3:"mul";s:15:"多格里布文";s:3:"dgr";s:12:"多格拉文";s:3:"doi";s:12:"多格來文";s:3:"doi";}i:540;a:1:{s:12:"플라망어";s:5:"nl-be";}i:753;a:1:{s:9:"ኑዌር";s:3:"nus";}i:572;a:1:{s:12:"누에르어";s:3:"nus";}i:162;a:2:{s:12:"努埃尔文";s:3:"nus";s:12:"努埃爾文";s:3:"nus";}i:212;a:1:{s:9:"롬보어";s:3:"rof";}i:653;a:1:{s:6:"ርዋ";s:3:"rwk";}i:996;a:2:{s:12:"东桑海文";s:3:"ses";s:18:"东弗里西亚文";s:3:"frs";}i:843;a:2:{s:25:"ያልታወቀ ቋንቋ";s:3:"und";s:15:"ଛଗତାଇ";s:3:"chg";}i:410;a:2:{s:12:"未知语言";s:3:"und";s:12:"未知語言";s:3:"und";}i:715;a:2:{s:6:"ቫይ";s:3:"vai";s:18:"છગાતાઇ";s:3:"chg";}i:631;a:1:{s:30:"标准摩洛哥塔马塞特文";s:3:"zgh";}i:683;a:1:{s:38:"ቋንቋዊ ይዘት አይደለም";s:3:"zxx";}i:961;a:1:{s:15:"無語言內容";s:3:"zxx";}i:976;a:6:{s:22:"유럽식 스페인어";s:5:"es-es";s:25:"유럽식 포르투갈어";s:5:"pt-pt";s:22:"유대-페르시아어";s:3:"jpr";s:22:"유대-아라비아어";s:3:"jrb";s:9:"甘拜文";s:3:"sba";s:15:"유가리틱어";s:3:"uga";}i:431;a:2:{s:18:"欧洲西班牙文";s:5:"es-es";s:18:"欧洲葡萄牙文";s:5:"pt-pt";}i:133;a:1:{s:40:"ဥရောပ ပေါ်တူဂီ";s:5:"pt-pt";}i:156;a:2:{s:12:"발루치어";s:3:"bal";s:9:"발리어";s:3:"ban";}i:675;a:1:{s:15:"錫克錫卡文";s:3:"bla";}i:865;a:3:{s:12:"契布卡文";s:3:"chb";s:12:"契努克文";s:3:"chn";s:12:"契奴克文";s:3:"chn";}i:798;a:3:{s:12:"达科他文";s:3:"dak";s:15:"达尔格瓦文";s:3:"dar";s:12:"达扎葛文";s:3:"dzg";}i:20;a:2:{s:15:"도그리브어";s:3:"dgr";s:12:"도그리어";s:3:"doi";}i:969;a:1:{s:9:"丁卡文";s:3:"din";}i:369;a:2:{s:15:"犹太波斯文";s:3:"jpr";s:18:"犹太阿拉伯文";s:3:"jrb";}i:644;a:2:{s:9:"和田文";s:3:"kho";s:9:"和闐文";s:3:"kho";}i:428;a:1:{s:12:"킴분두어";s:3:"kmb";}i:988;a:1:{s:9:"람바어";s:3:"lam";}i:426;a:1:{s:9:"芒戈文";s:3:"lol";}i:564;a:3:{s:12:"만딩고어";s:3:"man";s:12:"만다르어";s:3:"mdr";s:9:"만주어";s:3:"mnc";}i:376;a:4:{s:9:"门迪文";s:3:"men";s:27:"രാജസ്ഥാനി";s:3:"raj";s:21:"രാപനൂയി";s:3:"rap";s:30:"രാരോടോങ്കൻ";s:3:"rar";}i:415;a:1:{s:9:"滿族文";s:3:"mnc";}i:834;a:1:{s:9:"诺盖文";s:3:"nog";}i:963;a:2:{s:18:"ஓஜிபவா";s:2:"oj";s:15:"ஓசேஜ்";s:3:"osa";}i:528;a:1:{s:6:"掸文";s:3:"shn";}i:763;a:1:{s:6:"撣文";s:3:"shn";}i:982;a:3:{s:12:"姆本杜文";s:3:"umb";s:12:"姆耶内文";s:3:"mye";s:12:"姆耶內文";s:3:"mye";}i:901;a:1:{s:12:"泽纳加文";s:3:"zen";}i:826;a:2:{s:12:"太鲁阁文";s:3:"trv";s:12:"太魯閣文";s:3:"trv";}i:900;a:1:{s:9:"월저어";s:3:"wae";}} \ No newline at end of file
diff --git a/MLEB/UniversalLanguageSelector/i18n/ace.json b/MLEB/UniversalLanguageSelector/i18n/ace.json
new file mode 100644
index 00000000..aefc20cd
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/i18n/ace.json
@@ -0,0 +1,51 @@
+{
+ "@metadata": {
+ "authors": [
+ "Si Gam Acèh",
+ "Ayie7791"
+ ]
+ },
+ "ext-uls-select-language-settings-icon-tooltip": "Atô bahsa",
+ "ext-uls-undo-language-tooltip-text": "Bahsa meugantoë nibak $1",
+ "ext-uls-language-settings-preferences-link": "Neuatô bahsa leubèh le",
+ "ext-uls-display-settings-title": "Atô seuneudeuh",
+ "ext-uls-display-settings-language-tab": "Bahsa",
+ "ext-uls-display-settings-fonts-tab": "Haraih",
+ "ext-uls-display-settings-title-short": "Seuneudeuh",
+ "ext-uls-display-settings-desc": "Atô bahsa keu menu ngón haraih",
+ "ext-uls-language-settings-title": "Atô bahsa",
+ "ext-uls-language-settings-apply": "Ngui neuatô",
+ "ext-uls-language-settings-cancel": "Pubateuë",
+ "ext-uls-language-buttons-help": "Gantoë bahsa menu. Bahsa asoë hana teupeungarôh.",
+ "ext-uls-display-settings-font-settings": "Atô haraih",
+ "ext-uls-display-settings-ui-language": "Seuneudeuh bahsa",
+ "ext-uls-display-settings-anon-label": "Seuneudeuh bahsa:",
+ "ext-uls-display-settings-anon-same-as-content": "$1 (saban lagèë asoë)",
+ "ext-uls-display-settings-anon-log-in-cta": "[[Special:UserLogin|Neutamöng log]] mangat jeuët neupiléh bahsa la'én keu menu.",
+ "ext-uls-webfonts-select-for": "Piléh haraih keu $1",
+ "ext-uls-webfonts-select-for-ui-info": "Haraih nyang geungui keu seuneudeuih ureuëng ngui",
+ "ext-uls-webfonts-select-for-content-info": "Haraih nyang geungui keu asoë",
+ "ext-uls-webfonts-system-font": "Haraih sistem",
+ "ext-uls-back-to-display-settings": "Riwang u atô seuneudeuih",
+ "ext-uls-input-settings-title": "Atô peunasoë",
+ "ext-uls-input-settings-title-short": "Peunasoë",
+ "ext-uls-input-settings-desc": "Tuléh lam bahsa la'én?",
+ "ext-uls-input-settings-ime-settings": "Kri pasoë keu $1",
+ "ext-uls-input-settings-ui-language": "Bahsa nyang geungui keu teumuléh",
+ "ext-uls-back-to-input-settings": "Riwang u atô peunasoë",
+ "ext-uls-ime-help": "Kri ngui",
+ "ext-uls-disable-input-method": "Ngui papeuën haraih aseuli",
+ "ext-uls-input-settings-more-languages-tooltip": "Leubèh le bahsa",
+ "jquery-ime-other-languages": "Bahsa la’én",
+ "jquery-ime-disable-text": "Ngui papeuën haraih aseuli",
+ "jquery-ime-help": "Beunantu",
+ "ext-uls-input-disable": "Peumaté peukakaih pasoë",
+ "ext-uls-input-enable": "Peuudép peukakaih pasoë",
+ "ext-uls-input-disable-info": "Peukakaih pasoë teupeumaté",
+ "ext-uls-input-settings-noime": "Hana kri pasoë keu bahsa nyoë",
+ "ext-uls-input-disable-notification": "Peukakaih pasoë teupeumaté",
+ "ext-uls-input-disable-notification-undo": "Pubateuë",
+ "ext-uls-input-disable-notification-info-personal": "Droëneuh jeuët neupeuudép peukakaih pasoë pajan mantöng nibak neuatô bahsa",
+ "ext-uls-input-disable-notification-info-interlanguage": "Droëneuh jeuët neupeuudép peukakaih pasoë baranggajan nibak neuatô bahsa nyang na bak binèh dapeuta bahsa",
+ "ext-uls-language-settings-applying": "Peujak..."
+}
diff --git a/MLEB/UniversalLanguageSelector/i18n/af.json b/MLEB/UniversalLanguageSelector/i18n/af.json
new file mode 100644
index 00000000..8ab8fed3
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/i18n/af.json
@@ -0,0 +1,48 @@
+{
+ "@metadata": {
+ "authors": [
+ "Naudefj"
+ ]
+ },
+ "ext-uls-select-language-settings-icon-tooltip": "Taalvoorkeure",
+ "ext-uls-undo-language-tooltip-text": "Taal verander vanaf $1",
+ "ext-uls-language-settings-preferences-link": "Meer taal-voorkeure",
+ "ext-uls-display-settings-title": "Vertoon-voorkeure",
+ "ext-uls-display-settings-language-tab": "Taal",
+ "ext-uls-display-settings-fonts-tab": "Lettertipes",
+ "ext-uls-display-settings-title-short": "Vertoon",
+ "ext-uls-display-settings-desc": "Stel taal vir keuseskerms en lettertipes.",
+ "ext-uls-language-settings-title": "Taalvoorkeure",
+ "ext-uls-language-settings-apply": "Pas toe",
+ "ext-uls-language-settings-cancel": "Kanselleer",
+ "ext-uls-language-buttons-help": "Verander die taal vir keuseskerms. Die taal van inhoud sal die verander nie.",
+ "ext-uls-display-settings-font-settings": "Lettertipe-voorkeure",
+ "ext-uls-display-settings-ui-language": "Vertoontaal",
+ "ext-uls-display-settings-anon-label": "Vertoontaal:",
+ "ext-uls-display-settings-anon-same-as-content": "Engels (selfde as inhoud)",
+ "ext-uls-display-settings-anon-log-in-cta": "[[Special:UserLogin|Meld aan]] om 'n ander taal vir keuseskerms te kies.",
+ "ext-uls-webfonts-select-for": "Kies lettertipe vir $1",
+ "ext-uls-webfonts-select-for-ui-info": "Lettertipe vir koppelvlak",
+ "ext-uls-webfonts-select-for-content-info": "Lettertipe vir inhoud",
+ "ext-uls-webfonts-system-font": "Stelsel-lettertipe",
+ "ext-uls-back-to-display-settings": "Terug na vertoon-voorkeure",
+ "ext-uls-input-settings-title": "Invoer-voorkeure",
+ "ext-uls-input-settings-title-short": "Invoer",
+ "ext-uls-input-settings-desc": "Skryf in 'n ander taal?",
+ "ext-uls-input-settings-ime-settings": "Invoermetodes vir $1",
+ "ext-uls-input-settings-ui-language": "Taal vir invoer",
+ "ext-uls-back-to-input-settings": "Terug na invoer-voorkeure",
+ "ext-uls-disable-input-method": "Gebruik standaard toetsbord",
+ "ext-uls-input-settings-more-languages-tooltip": "Meer tale",
+ "jquery-ime-other-languages": "Ander tale",
+ "jquery-ime-disable-text": "Gebruik standaard toetsbord",
+ "jquery-ime-help": "Hulp",
+ "ext-uls-input-disable": "Deaktiveer invoer-gereedskap",
+ "ext-uls-input-enable": "Aktiveer invoer-gereedskap",
+ "ext-uls-input-disable-info": "Invoer-gereedskap is gedeaktiveer",
+ "ext-uls-input-settings-noime": "Geen invoermetodes is vir die taal beskikbaar nie",
+ "ext-uls-input-disable-notification": "Invoer-gereedskap is gedeaktiveer",
+ "ext-uls-input-disable-notification-undo": "Maak ongedaan",
+ "ext-uls-input-disable-notification-info-personal": "U kan die invoer-gereedskap weer via die taal-voorkeure aktiveer",
+ "ext-uls-input-disable-notification-info-interlanguage": "U kan die invoer-gereedskap enige tyd weer via die taal-voorkeure langs die lys van tale aktiveer."
+}
diff --git a/MLEB/UniversalLanguageSelector/i18n/ang.json b/MLEB/UniversalLanguageSelector/i18n/ang.json
new file mode 100644
index 00000000..92622217
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/i18n/ang.json
@@ -0,0 +1,33 @@
+{
+ "@metadata": {
+ "authors": [
+ "Gott wisst"
+ ]
+ },
+ "ext-uls-select-language-settings-icon-tooltip": "Sprǣce setednessa",
+ "ext-uls-undo-language-tooltip-text": "Sprǣc wæs andwended fram $1",
+ "ext-uls-language-settings-preferences-link": "Mā sprǣce setednessa",
+ "ext-uls-display-settings-title": "Īwunge setednessa",
+ "ext-uls-display-settings-language-tab": "Sprǣc",
+ "ext-uls-display-settings-fonts-tab": "Stæfcynn",
+ "ext-uls-display-settings-title-short": "Īwung",
+ "ext-uls-display-settings-desc": "Cēosan þā sprǣce þe bēo gebrocen on getalum and stæfcynnum.",
+ "ext-uls-language-settings-title": "Sprǣce setednessa",
+ "ext-uls-language-settings-apply": "Astellan setednessa",
+ "ext-uls-language-buttons-help": "Andwendan þā sprǣce getala. Sēo sprǣc þǣre innunge ne biþ nā gehrinen.",
+ "ext-uls-display-settings-font-settings": "Stæfcynna setednessa",
+ "ext-uls-display-settings-ui-language": "Īwunge sprǣc",
+ "ext-uls-display-settings-anon-label": "Īwunge sprǣc:",
+ "ext-uls-display-settings-anon-same-as-content": "Englisc (gelīc þǣre innunge)",
+ "ext-uls-display-settings-anon-log-in-cta": "[[Special:UserLogin|Inmelda]] to cēosenne ōðre sprǣce on getalum.",
+ "ext-uls-webfonts-select-for": "Cēos stæfcynn for $1",
+ "ext-uls-webfonts-select-for-ui-info": "Stæfcynn þe bēo gebrocen on gewealdes andwlitan",
+ "ext-uls-webfonts-select-for-content-info": "Stæfcynn þe bēo gebrocen on innunge",
+ "ext-uls-webfonts-system-font": "Endebyrdnesse stæfcynn",
+ "ext-uls-back-to-display-settings": "Gān eft tō īwunge setednessa",
+ "ext-uls-input-settings-desc": "Wrītst þū on ōðerre sprǣce?",
+ "ext-uls-input-settings-ui-language": "Sprǣc þe bēo gebrocen on wrītunge",
+ "ext-uls-input-settings-more-languages-tooltip": "Mā sprǣca",
+ "jquery-ime-other-languages": "Ōðra sprǣca",
+ "jquery-ime-help": "Help"
+}
diff --git a/MLEB/UniversalLanguageSelector/i18n/ar.json b/MLEB/UniversalLanguageSelector/i18n/ar.json
new file mode 100644
index 00000000..a6a9e49d
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/i18n/ar.json
@@ -0,0 +1,61 @@
+{
+ "@metadata": {
+ "authors": [
+ "ترجمان05",
+ "زكريا",
+ "Asaifm",
+ "Tarawneh"
+ ]
+ },
+ "uls-desc": "يمنح المستخدم عدة طرق لاختيار لغة، وضبط إعدادات اللغة",
+ "uls-plang-title-languages": "لغات",
+ "ext-uls-select-language-settings-icon-tooltip": "إعدادات اللغة",
+ "ext-uls-undo-language-tooltip-text": "غيرت اللغة من $1",
+ "ext-uls-language-settings-preferences-link": "المزيد من إعدادات اللغة",
+ "uls-betafeature-label": "وصلات اللغة المدمجة",
+ "uls-betafeature-desc": "تقوم بإظهار قائمة مختصرة للغات، حيث تعمل الخاصية على إظهار اللغات التي تهمك أكثر.",
+ "ext-uls-display-settings-title": "إعدادات العرض",
+ "ext-uls-display-settings-language-tab": "لغة",
+ "ext-uls-display-settings-fonts-tab": "خطوط",
+ "ext-uls-display-settings-title-short": "عرض",
+ "ext-uls-display-settings-desc": "حدد اللغة المستخدمة للقوائم والخطوط.",
+ "ext-uls-language-settings-title": "إعدادات اللغة",
+ "ext-uls-language-settings-apply": "طبق الإعدادات",
+ "ext-uls-language-settings-cancel": "ألغ",
+ "ext-uls-language-buttons-help": "غير لغة القوائم. لن تتغير لغة المحتوى.",
+ "ext-uls-display-settings-font-settings": "إعدادات الخط",
+ "ext-uls-display-settings-ui-language": "لغة العرض",
+ "ext-uls-display-settings-anon-label": "لغة العرض:",
+ "ext-uls-display-settings-anon-same-as-content": "$1 (كما في المحتوى)",
+ "ext-uls-display-settings-anon-log-in-cta": "[[Special:UserLogin|سجل الدخول]] لتحديد لغة مختلفة للقوائم.",
+ "ext-uls-webfonts-settings-title": "تحميل الخطوط عند الحاجة",
+ "ext-uls-webfonts-settings-info": "حمل الخطوط الناقصة تلقائيا ومكن من اختيار الخطوط المفضلة.",
+ "ext-uls-webfonts-settings-info-link": "مزيد من المعلومات",
+ "ext-uls-webfonts-select-for": "حدد خطا للغة $1",
+ "ext-uls-webfonts-select-for-ui-info": "الخط المستعمل لواجهة المستخدم",
+ "ext-uls-webfonts-select-for-content-info": "الخط المستعمل للمحتوى",
+ "ext-uls-webfonts-system-font": "خط النظام",
+ "ext-uls-back-to-display-settings": "العودة إلى إعدادات العرض",
+ "ext-uls-input-settings-title": "إعدادات الإدخال",
+ "ext-uls-input-settings-title-short": "إدخال",
+ "ext-uls-input-settings-desc": "الكتابة بلغة مختلفة؟",
+ "ext-uls-input-settings-ime-settings": "أساليب الإدخال باللغة $1",
+ "ext-uls-input-settings-ui-language": "اللغة المستخدمة للكتابة",
+ "ext-uls-back-to-input-settings": "العودة إلى إعدادات الإدخال",
+ "ext-uls-ime-help": "كيفية الاستخدام",
+ "ext-uls-disable-input-method": "استخدام لوحة المفاتيح الأصلية",
+ "ext-uls-input-settings-more-languages-tooltip": "المزيد من اللغات",
+ "jquery-ime-other-languages": "لغات أخرى",
+ "jquery-ime-disable-text": "استخدام لوحة المفاتيح الأصلية",
+ "jquery-ime-help": "مساعدة",
+ "ext-uls-input-disable": "تعطيل أدوات الإدخال",
+ "ext-uls-input-enable": "تشغيل أدوات الإدخال",
+ "ext-uls-input-disable-info": "عطلت أدوات الإدخال.",
+ "ext-uls-input-settings-noime": "ما من أساليب إدخال متوفرة لهذه اللغة.",
+ "ext-uls-input-disable-notification": "أدوات الإدخال عطلت.",
+ "ext-uls-input-disable-notification-undo": "إلغاء",
+ "ext-uls-input-disable-notification-info-personal": "بوسعك تشغيل أدوات الإدخال في أي وقت في إعدادات اللغة.",
+ "ext-uls-input-disable-notification-info-interlanguage": "بوسعك تشغيل أدوات الإدخال في أي وقت في إعدادات اللغة الموجودة بجانب قائمة اللغات.",
+ "ext-uls-language-settings-applying": "تطبيق...",
+ "ext-uls-compact-link-count": "{{PLURAL:$1|بقية الوصلات: $1}}"
+}
diff --git a/MLEB/UniversalLanguageSelector/i18n/arc.json b/MLEB/UniversalLanguageSelector/i18n/arc.json
new file mode 100644
index 00000000..f5139eb0
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/i18n/arc.json
@@ -0,0 +1,50 @@
+{
+ "@metadata": {
+ "authors": [
+ "Basharh"
+ ]
+ },
+ "uls-plang-title-languages": "ܠܫܢ̈ܐ",
+ "ext-uls-select-language-settings-icon-tooltip": "ܛܘܝܒ̈ܐ ܕܠܫܢܐ",
+ "ext-uls-undo-language-tooltip-text": "ܠܫܢܐ ܐܫܬܚܠܦ ܡܢ $1",
+ "ext-uls-language-settings-preferences-link": "ܛܘܝܒ̈ܐ ܕܠܫܢܐ ܝܬܝܪ",
+ "ext-uls-display-settings-title": "ܛܘܝܒ̈ܐ ܕܚܘܘܝܐ",
+ "ext-uls-display-settings-language-tab": "ܠܫܢܐ",
+ "ext-uls-display-settings-fonts-tab": "ܣܪ̈ܛܐ",
+ "ext-uls-display-settings-title-short": "ܚܘܘܝܐ",
+ "ext-uls-display-settings-desc": "ܛܟܣ ܠܫܢܐ ܕܡܟܬܒܘܬ̈ܐ ܘܣܪ̈ܛܐ",
+ "ext-uls-language-settings-title": "ܛܘܝܒ̈ܐ ܕܠܫܢܐ",
+ "ext-uls-language-settings-apply": "ܐܦܠܚ ܛܘܝܒ̈ܐ",
+ "ext-uls-language-settings-cancel": "ܒܛܘܠ",
+ "ext-uls-language-buttons-help": "ܫܚܠܦ ܠܫܢܐ ܕܡܟܬܒܘܬ̈ܐ. ܠܫܢܐ ܕܚܒܝܫܬ̈ܐ ܠܐ ܡܫܬܚܠܦ ܗܪܟܐ.",
+ "ext-uls-display-settings-font-settings": "ܛܘܝܒ̈ܐ ܕܣܪ̈ܛܐ",
+ "ext-uls-display-settings-ui-language": "ܠܫܢܐ ܕܚܘܘܝܐ",
+ "ext-uls-display-settings-anon-label": "ܠܫܢܐ ܕܚܘܘܝܐ",
+ "ext-uls-display-settings-anon-same-as-content": "$1 (ܐܝܟ ܚܒܝܫܬ̈ܐ)",
+ "ext-uls-display-settings-anon-log-in-cta": "[[Special:UserLogin|ܥܘܠ]] ܠܓܒܝܬܐ ܕܠܫܢܐ ܐܚܪܢܐ ܠܡܟܬܒܘܬ̈ܐ.",
+ "ext-uls-webfonts-select-for": "ܬܚܡ ܣܪܛܐ ܠܠܫܢܐ $1",
+ "ext-uls-webfonts-select-for-ui-info": "ܣܪܛܐ ܕܐܬܬܦܠܚ ܒܐܣܟܡ ܦܐܬܐ ܕܡܦܠܚܢܐ",
+ "ext-uls-webfonts-select-for-content-info": "ܣܪܛܐ ܕܐܬܬܦܠܚ ܒܚܒܝܫܬ̈ܐ",
+ "ext-uls-webfonts-system-font": "ܣܪܛܐ ܕܛܟܣܐ",
+ "ext-uls-back-to-display-settings": "ܦܢܝ ܠܛܘܝܒ̈ܐ ܕܚܘܘܝܐ",
+ "ext-uls-input-settings-title": "ܛܘܝܒ̈ܐ ܕܠܫܢܐ ܕܥܘܠܠܐ",
+ "ext-uls-input-settings-title-short": "ܠܫܢܐ ܕܥܘܠܠܐ",
+ "ext-uls-input-settings-desc": "ܐܟܬܒ ܒܠܫܢܐ ܐܚܪܢܐ؟",
+ "ext-uls-input-settings-ime-settings": "ܫܒܝܠ̈ܐ ܕܥܘܠܠܐ ܒܠܫܢܐ $1",
+ "ext-uls-input-settings-ui-language": "ܠܫܢܐ ܕܡܬܦܠܚ ܠܟܬܒܬܐ",
+ "ext-uls-back-to-input-settings": "ܦܢܝ ܠܛܘܝܒ̈ܐ ܕܥܘܠܠܐ",
+ "ext-uls-ime-help": "ܐܝܟܢܝܘܬܐ ܕܦܘܠܚܐ",
+ "ext-uls-disable-input-method": "ܐܦܠܚ ܠܘܚܝܬܐ ܕܩܠܝܕ̈ܐ ܫܪܫܝܬܐ",
+ "ext-uls-input-settings-more-languages-tooltip": "ܠܫܢ̈ܐ ܝܬܝܪ",
+ "jquery-ime-other-languages": "ܠܫܢ̈ܐ ܐܚܪ̈ܢܐ",
+ "jquery-ime-disable-text": "ܐܦܠܚ ܠܘܚܝܬܐ ܕܩܠܝܕ̈ܐ ܫܪܫܝܬܐ",
+ "jquery-ime-help": "ܥܘܕܪܢܐ",
+ "ext-uls-input-disable": "ܒܛܘܠ ܬܘܦܥܠܐ ܕܡܐܢ̈ܐ ܕܥܘܠܠܐ ܕܠܫܢܐ",
+ "ext-uls-input-enable": "ܬܦܥܠ ܡܐܢ̈ܐ ܕܥܘܠܠܐ ܕܠܫܢܐ",
+ "ext-uls-input-disable-info": "ܡܐܢ̈ܐ ܕܥܘܠܠܐ ܕܠܫܢܐ ܠܐ ܬܘܦܥܠ̈ܐ ܐܢܘܢ",
+ "ext-uls-input-settings-noime": "ܠܝܬ ܫܒܝܠ̈ܐ ܕܥܘܠܠܐ ܕܠܫܢܐ ܠܗܢܐ ܠܫܢܐ",
+ "ext-uls-input-disable-notification": "ܫܒܝܠ̈ܐ ܕܥܘܠܠܐ ܕܠܫܢܐ ܠܐ ܬܘܦܥܠ̈ܐ ܐܢܘܢ",
+ "ext-uls-input-disable-notification-undo": "ܠܐ ܬܥܒܕ",
+ "ext-uls-input-disable-notification-info-personal": "ܡܨܬ ܕܬܦܥܠܬ ܫܒܝܠ̈ܐ ܕܥܘܠܠܐ ܕܠܫܢܐ ܒܐܝܢܐ ܥܕܢܐ ܡܢ ܛܘܝܒ̈ܐ ܕܠܫܢܐ",
+ "ext-uls-input-disable-notification-info-interlanguage": "ܡܨܬ ܕܬܦܥܠܬ ܫܒܝܠ̈ܐ ܕܥܘܠܠܐ ܕܠܫܢܐ ܒܐܝܢܐ ܥܕܢܐ ܡܢ ܛܘܝܒ̈ܐ ܕܠܫܢܐ ܓܢܒ ܡܟܬܒܘܬܐ ܕܠܫܢܐ"
+}
diff --git a/MLEB/UniversalLanguageSelector/i18n/arq.json b/MLEB/UniversalLanguageSelector/i18n/arq.json
new file mode 100644
index 00000000..11ce2fdf
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/i18n/arq.json
@@ -0,0 +1,9 @@
+{
+ "@metadata": {
+ "authors": [
+ "Bachounda"
+ ]
+ },
+ "uls-desc": "يجيب للمستخدم بزاف الطرق لتخيار لوغه، و تستاف باراميترات اللوغه",
+ "uls-plang-title-languages": "لوغات"
+}
diff --git a/MLEB/UniversalLanguageSelector/i18n/as.json b/MLEB/UniversalLanguageSelector/i18n/as.json
new file mode 100644
index 00000000..fe84ba06
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/i18n/as.json
@@ -0,0 +1,9 @@
+{
+ "@metadata": {
+ "authors": [
+ "Gitartha.bordoloi"
+ ]
+ },
+ "uls-desc": "ব্যৱহাৰকাৰীক ভাষা নিৰ্বাচন কৰিবলৈ আৰু ভাষাৰ ছেটিং সলাবলৈ বিভিন্ন উপায় দিয়ে",
+ "uls-plang-title-languages": "ভাষাসমূহ"
+}
diff --git a/MLEB/UniversalLanguageSelector/i18n/ast.json b/MLEB/UniversalLanguageSelector/i18n/ast.json
new file mode 100644
index 00000000..2656e83b
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/i18n/ast.json
@@ -0,0 +1,59 @@
+{
+ "@metadata": {
+ "authors": [
+ "Esbardu",
+ "Xuacu"
+ ]
+ },
+ "uls-desc": "Ufre al usuariu delles maneres pa seleicionar una llingua y axustar la configuración de llingua",
+ "uls-plang-title-languages": "Llingües",
+ "ext-uls-select-language-settings-icon-tooltip": "Preferencies de llingua",
+ "ext-uls-undo-language-tooltip-text": "La llingua camudó dende $1",
+ "ext-uls-language-settings-preferences-link": "Más preferencies de llingua",
+ "uls-betafeature-label": "Enllaces de llingües compactos",
+ "uls-betafeature-desc": "Amuesa una versión más curtia de la llista de llingües, sólo coles más relevantes pa vusté.",
+ "ext-uls-display-settings-title": "Opciones de presentación",
+ "ext-uls-display-settings-language-tab": "Llingua",
+ "ext-uls-display-settings-fonts-tab": "Tipografía",
+ "ext-uls-display-settings-title-short": "Presentación",
+ "ext-uls-display-settings-desc": "Configurar la llingua pa los menús y les fontes.",
+ "ext-uls-language-settings-title": "Preferencies de llingua",
+ "ext-uls-language-settings-apply": "Aplicar la configuración",
+ "ext-uls-language-settings-cancel": "Encaboxar",
+ "ext-uls-language-buttons-help": "Camuda la llingua de los menús. Nun afeutará a la llingua del conteníu.",
+ "ext-uls-display-settings-font-settings": "Preferencies de tipografía",
+ "ext-uls-display-settings-ui-language": "Llingua de la interfaz",
+ "ext-uls-display-settings-anon-label": "Llingua de la interfaz:",
+ "ext-uls-display-settings-anon-same-as-content": "$1 (igual que'l conteníu)",
+ "ext-uls-display-settings-anon-log-in-cta": "[[Special:UserLogin|Anicie sesión]] pa seleicionar una llingua diferente pa los menús.",
+ "ext-uls-webfonts-settings-title": "Descargar tipografía cuando seya necesario",
+ "ext-uls-webfonts-settings-info": "Descargar la tipografía que falta y permitir seleicionar la tipografía preferida.",
+ "ext-uls-webfonts-settings-info-link": "Más información",
+ "ext-uls-webfonts-select-for": "Seleiciona la tipografía pal $1",
+ "ext-uls-webfonts-select-for-ui-info": "Tipografía usada pa la interfaz d'usuariu",
+ "ext-uls-webfonts-select-for-content-info": "Tipografía usada pal conteníu",
+ "ext-uls-webfonts-system-font": "Tipografía del sistema",
+ "ext-uls-back-to-display-settings": "Volver a les opciones de presentación",
+ "ext-uls-input-settings-title": "Opciones d'entrada",
+ "ext-uls-input-settings-title-short": "Entrada",
+ "ext-uls-input-settings-desc": "¿Escribes nuna llingua diferente?",
+ "ext-uls-input-settings-ime-settings": "Métodos d'entrada pal $1",
+ "ext-uls-input-settings-ui-language": "Llingua usada pa escribir",
+ "ext-uls-back-to-input-settings": "Volver a les opciones d'entrada",
+ "ext-uls-ime-help": "Cómo usalu",
+ "ext-uls-disable-input-method": "Usar el tecláu nativu",
+ "ext-uls-input-settings-more-languages-tooltip": "Más llingües",
+ "jquery-ime-other-languages": "Otres llingües",
+ "jquery-ime-disable-text": "Usar el tecláu nativu",
+ "jquery-ime-help": "Ayuda",
+ "ext-uls-input-disable": "Desactivar les ferramientes d'entrada",
+ "ext-uls-input-enable": "Activar les ferramientes d'entrada",
+ "ext-uls-input-disable-info": "Les ferramientes d'entrada tan desactivaes.",
+ "ext-uls-input-settings-noime": "Nun hai métodos d'entrada disponibles pa esta llingua.",
+ "ext-uls-input-disable-notification": "Desactivaronse les ferramientes d'entrada",
+ "ext-uls-input-disable-notification-undo": "Desfacer",
+ "ext-uls-input-disable-notification-info-personal": "Pue activar les ferramientes d'entrada en cualquier momentu dende la configuración d'idioma.",
+ "ext-uls-input-disable-notification-info-interlanguage": "Pue activar les ferramientes d'entrada en cualquier momentu dende la configuración d'idioma que ta cabo la llista de llingües.",
+ "ext-uls-language-settings-applying": "Aplicando...",
+ "ext-uls-compact-link-count": "{{PLURAL:$1|Una llingua más|$1 llingües más}}"
+}
diff --git a/MLEB/UniversalLanguageSelector/i18n/az.json b/MLEB/UniversalLanguageSelector/i18n/az.json
new file mode 100644
index 00000000..0b114a48
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/i18n/az.json
@@ -0,0 +1,10 @@
+{
+ "@metadata": {
+ "authors": [
+ "Interfase"
+ ]
+ },
+ "uls-plang-title-languages": "Dillər",
+ "ext-uls-select-language-settings-icon-tooltip": "Dilin təyin edilməsi",
+ "ext-uls-undo-language-tooltip-text": "Əvvəlki dil: $1"
+}
diff --git a/MLEB/UniversalLanguageSelector/i18n/azb.json b/MLEB/UniversalLanguageSelector/i18n/azb.json
new file mode 100644
index 00000000..47b784ae
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/i18n/azb.json
@@ -0,0 +1,38 @@
+{
+ "@metadata": {
+ "authors": [
+ "Mousa"
+ ]
+ },
+ "ext-uls-undo-language-tooltip-text": "دیل $1-دن دَییشدیریلدی",
+ "ext-uls-display-settings-title": "گؤسترمک تنظیملری",
+ "ext-uls-display-settings-title-short": "گؤستر",
+ "ext-uls-display-settings-desc": "مِنولار و یازی‌تیپلره ایشلنن دیلی تنظیمله",
+ "ext-uls-language-settings-title": "دیل تنظیملری",
+ "ext-uls-language-settings-apply": "تنظیملری اعمال ائت",
+ "ext-uls-language-settings-cancel": "لغو ائت",
+ "ext-uls-display-settings-font-settings": "یازی‌تیپی تنظیملری",
+ "ext-uls-display-settings-ui-language": "گؤسترمک دیلی",
+ "ext-uls-webfonts-settings-title": "یازی‌تیپینی لازیم اولاندا اندیر",
+ "ext-uls-webfonts-settings-info": "اؤزل اسکریپلرده یازینی گؤسترمگه وِب‌یازی‌تیپلری اندیریله‌جکلر.",
+ "ext-uls-webfonts-settings-info-link": "چوخ بیلگیلر",
+ "ext-uls-webfonts-select-for": "$1 اوچون یازی‌تیپی سئچین",
+ "ext-uls-webfonts-select-for-ui-info": "ایستیفاده‌چی آرا-اوزونه ایشلنن یازی‌تیپی",
+ "ext-uls-webfonts-select-for-content-info": "یازیلارا ایشلنن یازی‌تیپی",
+ "ext-uls-back-to-display-settings": "گؤسترمک تنظیملرینه قاییت",
+ "ext-uls-input-settings-title": "گیریش تنظیملری",
+ "ext-uls-input-settings-title-short": "گیریش",
+ "ext-uls-input-settings-desc": "بیر باشقا دیل‌ده یازیرسینیز؟",
+ "ext-uls-input-settings-ime-settings": "$1 اوچون گیریش یول‌لاری",
+ "ext-uls-input-settings-ui-language": "یازماغا ایشلنن دیل",
+ "ext-uls-back-to-input-settings": "گیریش تنظیملرینه قاییت",
+ "ext-uls-disable-input-method": "گیریش یولونو ایشدن سال",
+ "ext-uls-input-settings-more-languages-tooltip": "چوخ دیل‌لر",
+ "jquery-ime-other-languages": "آیری دیل‌لر",
+ "jquery-ime-disable-text": "گیریش یولونو ایشدن سال",
+ "jquery-ime-help": "یاردیم",
+ "ext-uls-input-disable": "گیریش یولو آراجلارینی ایشدن سال",
+ "ext-uls-input-enable": "گیریش یولو آراجلارینی ایشه سال",
+ "ext-uls-input-disable-info": "گیریش یولو آراجلاری ایشدن دوشدولر.",
+ "ext-uls-input-settings-noime": "هئچ گیریش یول‌لاری بو دیل اوچون ال‌ده یوخدور."
+}
diff --git a/MLEB/UniversalLanguageSelector/i18n/be-tarask.json b/MLEB/UniversalLanguageSelector/i18n/be-tarask.json
new file mode 100644
index 00000000..5ee457a0
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/i18n/be-tarask.json
@@ -0,0 +1,54 @@
+{
+ "@metadata": {
+ "authors": [
+ "Wizardist"
+ ]
+ },
+ "uls-desc": "Дае карыстальніку некалькі спосабаў выбраць мову і зьмяніць моўныя налады",
+ "uls-plang-title-languages": "Мовы",
+ "ext-uls-select-language-settings-icon-tooltip": "Моўныя налады",
+ "ext-uls-undo-language-tooltip-text": "Папярэдняя мова — $1",
+ "ext-uls-language-settings-preferences-link": "Больш моўных наладаў",
+ "ext-uls-display-settings-title": "Налады выгляду",
+ "ext-uls-display-settings-language-tab": "Мова",
+ "ext-uls-display-settings-fonts-tab": "Шрыфты",
+ "ext-uls-display-settings-title-short": "Выгляд",
+ "ext-uls-display-settings-desc": "Выберыце мову мэню і шрыфты.",
+ "ext-uls-language-settings-title": "Моўныя налады",
+ "ext-uls-language-settings-apply": "Захаваць налады",
+ "ext-uls-language-settings-cancel": "Скасаваць",
+ "ext-uls-language-buttons-help": "Зьмяніце мову інтэрфэйсу. Мова зьместу ня будзе зьмененая.",
+ "ext-uls-display-settings-font-settings": "Шрыфтавыя налады",
+ "ext-uls-display-settings-ui-language": "Мова інтэрфэйсу",
+ "ext-uls-display-settings-anon-label": "Мова інтэрфэйсу:",
+ "ext-uls-display-settings-anon-same-as-content": "Беларуская (тарашкевіца) (як і зьмест)",
+ "ext-uls-display-settings-anon-log-in-cta": "[[Special:UserLogin|Увайдзіце]], каб выбраць іншую мову інтэрфэйсу.",
+ "ext-uls-webfonts-settings-title": "Загружаць шрыфты на патрэбу",
+ "ext-uls-webfonts-settings-info": "Вэб-шрыфты будуць загружацца для адлюстраваньня тэксту адмысловымі скрыптамі.",
+ "ext-uls-webfonts-settings-info-link": "Болей зьвестак",
+ "ext-uls-webfonts-select-for": "Шрыфт для мовы $1",
+ "ext-uls-webfonts-select-for-ui-info": "Шрыфт для інтэрфэйсу",
+ "ext-uls-webfonts-select-for-content-info": "Шрыфт для зьместу",
+ "ext-uls-webfonts-system-font": "Сыстэмны шрыфт",
+ "ext-uls-back-to-display-settings": "Вярнуцца да наладаў выгляду",
+ "ext-uls-input-settings-title": "Налады ўводу",
+ "ext-uls-input-settings-title-short": "Увод",
+ "ext-uls-input-settings-desc": "Пішаце на іншай мове?",
+ "ext-uls-input-settings-ime-settings": "Мэтады ўводу для мовы $1",
+ "ext-uls-input-settings-ui-language": "Мова ўводу",
+ "ext-uls-back-to-input-settings": "Вярнуцца да наладаў уводу",
+ "ext-uls-ime-help": "Як карыстацца",
+ "ext-uls-disable-input-method": "Ужываць сыстэмную клявіятуру",
+ "ext-uls-input-settings-more-languages-tooltip": "Болей моваў",
+ "jquery-ime-other-languages": "Іншыя мовы",
+ "jquery-ime-disable-text": "Ужываць сыстэмную клявіятуру",
+ "jquery-ime-help": "Дапамога",
+ "ext-uls-input-disable": "Выключыць прылады для ўводу",
+ "ext-uls-input-enable": "Уключыць прылады для ўводу",
+ "ext-uls-input-disable-info": "Прылады для ўводу выключаныя.",
+ "ext-uls-input-settings-noime": "Для гэтай мовы мэтадаў уводу няма.",
+ "ext-uls-input-disable-notification": "Прылады для ўводу былі выключаныя",
+ "ext-uls-input-disable-notification-undo": "Скасаваць",
+ "ext-uls-input-disable-notification-info-personal": "Вы можаце ўключыць прылады для ўводу зноў у моўных наладах.",
+ "ext-uls-input-disable-notification-info-interlanguage": "Вы можаце ўключыць прылады для ўводу зноў у моўных наладах побач са сьпісам моваў."
+}
diff --git a/MLEB/UniversalLanguageSelector/i18n/bg.json b/MLEB/UniversalLanguageSelector/i18n/bg.json
new file mode 100644
index 00000000..3fb9a6a7
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/i18n/bg.json
@@ -0,0 +1,53 @@
+{
+ "@metadata": {
+ "authors": [
+ "DCLXVI",
+ "Spiritia",
+ "Termininja"
+ ]
+ },
+ "ext-uls-select-language-settings-icon-tooltip": "Езикови настройки",
+ "ext-uls-undo-language-tooltip-text": "Предишен език: $1",
+ "ext-uls-language-settings-preferences-link": "Още езикови настройки",
+ "ext-uls-display-settings-title": "Настройки на изгледа",
+ "ext-uls-display-settings-language-tab": "Език",
+ "ext-uls-display-settings-fonts-tab": "Шрифтове",
+ "ext-uls-display-settings-title-short": "Изглед",
+ "ext-uls-display-settings-desc": "Настройка на езика, използван в менютата и шрифтовете.",
+ "ext-uls-language-settings-title": "Езикови настройки",
+ "ext-uls-language-settings-apply": "Прилагане на настройките",
+ "ext-uls-language-settings-cancel": "Отказ",
+ "ext-uls-language-buttons-help": "Промяна езика на менютата. Езикът на съдържанието няма да бъде сменен.",
+ "ext-uls-display-settings-font-settings": "Настройки на шрифта",
+ "ext-uls-display-settings-ui-language": "Език на изгледа",
+ "ext-uls-display-settings-anon-label": "Език за показване:",
+ "ext-uls-display-settings-anon-same-as-content": "Български (същияткато на съдържанието)",
+ "ext-uls-display-settings-anon-log-in-cta": "За избиране на друг език за менютата е необходимо [[Special:UserLogin|влизане]] в системата.",
+ "ext-uls-webfonts-settings-title": "Изтегляне на шрифта при необходимост",
+ "ext-uls-webfonts-settings-info": "Ще бъдат свалени уебшрифтове за визуализиране на специалните символи в текста.",
+ "ext-uls-webfonts-settings-info-link": "Още информация",
+ "ext-uls-webfonts-select-for": "Избор на шрифт за $1",
+ "ext-uls-webfonts-select-for-ui-info": "Шрифт за потребителския интерфейс",
+ "ext-uls-webfonts-select-for-content-info": "Шрифт за съдържанието",
+ "ext-uls-webfonts-system-font": "Системен шрифт",
+ "ext-uls-back-to-display-settings": "Обратно към настройките на изгледа",
+ "ext-uls-input-settings-title": "Настройки на входа",
+ "ext-uls-input-settings-title-short": "Вход (въвеждани данни)",
+ "ext-uls-input-settings-desc": "На друг език ли пишете?",
+ "ext-uls-input-settings-ime-settings": "Методи за въвеждане на вход на $1",
+ "ext-uls-input-settings-ui-language": "Език за писане",
+ "ext-uls-back-to-input-settings": "Обратно към настройките на входа",
+ "ext-uls-disable-input-method": "Използване на оригиналната клавиатура",
+ "ext-uls-input-settings-more-languages-tooltip": "Още езици",
+ "jquery-ime-other-languages": "Други езици",
+ "jquery-ime-disable-text": "Използване на стандартната клавиатура",
+ "jquery-ime-help": "Помощ",
+ "ext-uls-input-disable": "Изключване на инструментите за въвеждане",
+ "ext-uls-input-enable": "Включване на инструментите за въвеждане",
+ "ext-uls-input-disable-info": "Инструментите за въвеждане са изключени.",
+ "ext-uls-input-settings-noime": "За този език не са достъпни методи за въвеждане на вход",
+ "ext-uls-input-disable-notification": "Инструментите за въвеждане бяха изключени",
+ "ext-uls-input-disable-notification-undo": "Отмяна",
+ "ext-uls-input-disable-notification-info-personal": "Можете да активирате инструментите за въвеждане по всяко време от езиковите настройки.",
+ "ext-uls-input-disable-notification-info-interlanguage": "Можете да разрешите инструментите за въвеждане по всяко време от езиковите настройки до списъка с езици."
+}
diff --git a/MLEB/UniversalLanguageSelector/i18n/bho.json b/MLEB/UniversalLanguageSelector/i18n/bho.json
new file mode 100644
index 00000000..c7e20873
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/i18n/bho.json
@@ -0,0 +1,48 @@
+{
+ "@metadata": {
+ "authors": [
+ "Nepaboy"
+ ]
+ },
+ "ext-uls-select-language-settings-icon-tooltip": "भाषा सेटिंग्स",
+ "ext-uls-undo-language-tooltip-text": "$1 से भाषा बदल दिहल गईल",
+ "ext-uls-language-settings-preferences-link": "अउर अधिक भाषा सेटिंग्स",
+ "ext-uls-display-settings-title": "प्रदर्शन सेटिंग्स",
+ "ext-uls-display-settings-language-tab": "भाषा",
+ "ext-uls-display-settings-fonts-tab": "लिपी",
+ "ext-uls-display-settings-title-short": "प्रदर्शन",
+ "ext-uls-display-settings-desc": "मेनु आ लिपी खातिर प्रयोग भाषा सेट करीं",
+ "ext-uls-language-settings-title": "भाषा सेटिंग्स",
+ "ext-uls-language-settings-apply": "सेटिंग्स लागू करीं",
+ "ext-uls-language-settings-cancel": "रद्द करीं",
+ "ext-uls-language-buttons-help": "मेनु के भाषा बदलीं। सामग्री भाषा प्रभावित ना होखी।",
+ "ext-uls-display-settings-font-settings": "लिपी सेटिंग्स",
+ "ext-uls-display-settings-ui-language": "प्रदर्शित भाषा",
+ "ext-uls-display-settings-anon-label": "प्रदर्शित भाषाः",
+ "ext-uls-display-settings-anon-same-as-content": "भोजपुरी (जईसे सामग्री बा)",
+ "ext-uls-display-settings-anon-log-in-cta": "मेनू में कउनो अन्य भाषा के चुनाव करे खातिर [[Special:UserLogin|खाता में प्रवेश]] करीं।",
+ "ext-uls-webfonts-select-for": "$1 खातिर लिपी चुनीं",
+ "ext-uls-webfonts-select-for-content-info": "सामग्री खातिर प्रयोग लिपी",
+ "ext-uls-webfonts-system-font": "सिस्टम लिपी",
+ "ext-uls-back-to-display-settings": "वापस प्रदर्शन सेटिंग्स पर जाईं",
+ "ext-uls-input-settings-title": "इनपुट सेटिंग्स",
+ "ext-uls-input-settings-title-short": "इनपुट",
+ "ext-uls-input-settings-desc": "दोसर भाषा लिख रहल बा?",
+ "ext-uls-input-settings-ime-settings": "$1 खातिर इनपुट विधी",
+ "ext-uls-input-settings-ui-language": "लिखे खातिर प्रयोग भाषा",
+ "ext-uls-back-to-input-settings": "वापस इनपुट सेटिंग्स पर जाईं",
+ "ext-uls-ime-help": "कइसे प्रयोग करब",
+ "ext-uls-disable-input-method": "आपन कुंजीपटल के प्रयोग करीं",
+ "ext-uls-input-settings-more-languages-tooltip": "अधिक भाषा",
+ "jquery-ime-other-languages": "अन्य भाषा",
+ "jquery-ime-disable-text": "आपन कुंजीपटल के प्रयोग करीं",
+ "jquery-ime-help": "मदद",
+ "ext-uls-input-disable": "इनपुट औजार के निष्क्रिय करीं",
+ "ext-uls-input-enable": "इनपुट औजार के सक्रिय करीं",
+ "ext-uls-input-disable-info": "इनपुट औजार निष्क्रिय बा।",
+ "ext-uls-input-settings-noime": "इ भाषा खातिर कउनो इनपुट विधी उपलब्ध नईखे।",
+ "ext-uls-input-disable-notification": "इनपुट औजार कुल निष्क्रिय बा",
+ "ext-uls-input-disable-notification-undo": "पूर्ववत",
+ "ext-uls-input-disable-notification-info-personal": "भाषा सेटिंग्स में जाके कभी भी रउआ इनपुट औजार के सक्रिय कर सकत बानी।",
+ "ext-uls-input-disable-notification-info-interlanguage": "भाषा सूची के आगे भाषा सेटिंग्स में जाके रउआ कभी भी इनपुट औजार के सक्रिय कर सकत बानी।"
+}
diff --git a/MLEB/UniversalLanguageSelector/i18n/bn.json b/MLEB/UniversalLanguageSelector/i18n/bn.json
new file mode 100644
index 00000000..e4686c22
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/i18n/bn.json
@@ -0,0 +1,59 @@
+{
+ "@metadata": {
+ "authors": [
+ "Aftab1995",
+ "Bellayet"
+ ]
+ },
+ "uls-desc": "ব্যবহারকারীকে ভাষা নির্বাচন এবং ভাষা সম্পর্কিত সেটিং সমন্বয়ের বিভিন্ন উপায় দেয়",
+ "uls-plang-title-languages": "ভাষা",
+ "ext-uls-select-language-settings-icon-tooltip": "ভাষা সেটিং",
+ "ext-uls-undo-language-tooltip-text": "$1 হতে ভাষার পরিবর্তন",
+ "ext-uls-language-settings-preferences-link": "আরও ভাষা সেটিং",
+ "uls-betafeature-label": "সংক্ষেপিত ভাষা সংযোগ",
+ "uls-betafeature-desc": "অন্যান্য ভাষাসমূহের সাথে ভাষার তালিকার একটি সংক্ষিপ্ত সংস্করণ দেখাবে, যা আপনার কাছে আরো বেশি প্রাসঙ্গিক।",
+ "ext-uls-display-settings-title": "প্রদর্শন সেটিং",
+ "ext-uls-display-settings-language-tab": "ভাষা",
+ "ext-uls-display-settings-fonts-tab": "ফন্ট",
+ "ext-uls-display-settings-title-short": "প্রদর্শন",
+ "ext-uls-display-settings-desc": "মেন্যু এবং ফন্টের জন্য ব্যবহৃত ভাষা নির্বাচন করুন।",
+ "ext-uls-language-settings-title": "ভাষা সেটিং",
+ "ext-uls-language-settings-apply": "সেটিং প্রয়োগ",
+ "ext-uls-language-settings-cancel": "বাতিল",
+ "ext-uls-language-buttons-help": "মেন্যুর ভাষা পরিবর্তন করুন। কণ্টেন্টের ভাষায় কোন প্রভাব পড়বে না।",
+ "ext-uls-display-settings-font-settings": "ফন্ট সেটিং",
+ "ext-uls-display-settings-ui-language": "প্রদর্শন ভাষা",
+ "ext-uls-display-settings-anon-label": "প্রদর্শন ভাষা:",
+ "ext-uls-display-settings-anon-same-as-content": "$1 (কন্টেন্টের মত)",
+ "ext-uls-display-settings-anon-log-in-cta": "মেন্যুর জন্য আলাদা ভাষা নির্বাচন করতে [[Special:UserLogin|প্রবেশ]] করুন।",
+ "ext-uls-webfonts-settings-title": "ফন্ট ডাউনলোড করুন যখন প্রয়োজন হবে?",
+ "ext-uls-webfonts-settings-info": "স্বয়ংক্রিয়ভাবে অনুপস্থিত ফন্ট ডাউনলোড করুন এবং পছন্দের ফন্ট নির্বাচনের অনুমতি দিন।",
+ "ext-uls-webfonts-settings-info-link": "আরও তথ্য",
+ "ext-uls-webfonts-select-for": "$1 এর জন্য ফন্ট নির্বাচন",
+ "ext-uls-webfonts-select-for-ui-info": "ব্যবহারকারী ইন্টারফেসের জন্য ব্যবহৃত ফন্ট",
+ "ext-uls-webfonts-select-for-content-info": "কন্টেন্টের জন্য ব্যবহৃত ফন্ট",
+ "ext-uls-webfonts-system-font": "সিস্টেম ফন্ট",
+ "ext-uls-back-to-display-settings": "প্রদর্শন সেটিং এ ফিরে যাও",
+ "ext-uls-input-settings-title": "ইনপুট সেটিং",
+ "ext-uls-input-settings-title-short": "ইনপুট",
+ "ext-uls-input-settings-desc": "লেখার জন্য ভিন্ন কোনো ভাষা?",
+ "ext-uls-input-settings-ime-settings": "$1 এর জন্য ইনপুট পদ্ধতি",
+ "ext-uls-input-settings-ui-language": "লেখার জন্য ব্যবহৃত ভাষা",
+ "ext-uls-back-to-input-settings": "ইনপুট সেটিং এ ফিরে যাও",
+ "ext-uls-ime-help": "ব্যবহার পদ্ধতি",
+ "ext-uls-disable-input-method": "স্থানীয় কিবোর্ড ব্যবহার করুন",
+ "ext-uls-input-settings-more-languages-tooltip": "আরও ভাষা",
+ "jquery-ime-other-languages": "অন্যান্য ভাষাসমূহ",
+ "jquery-ime-disable-text": "স্থানীয় কিবোর্ড ব্যবহার করুন",
+ "jquery-ime-help": "সাহায্য",
+ "ext-uls-input-disable": "ইনপুট টুল নিস্ক্রিয় করো",
+ "ext-uls-input-enable": "ইনপুট টুল সক্রিয় করো",
+ "ext-uls-input-disable-info": "ইনপুট টুল নিস্ক্রিয় রয়েছে।",
+ "ext-uls-input-settings-noime": "এই ভাষার জন্য কোন ইনপুট পদ্ধতি নাই।",
+ "ext-uls-input-disable-notification": "ইনপুট টুল নিস্ক্রিয় করা হয়েছে",
+ "ext-uls-input-disable-notification-undo": "পূর্বাবস্থায় ফেরাও",
+ "ext-uls-input-disable-notification-info-personal": "আপনি ভাষা সেটিং থেকে যে কোনো সময়ে ইনপুট টুল সক্রিয় করতে পারেন।",
+ "ext-uls-input-disable-notification-info-interlanguage": "আপনি ভাষার তালিকার পাশে ভাষা সেটিং থেকে যে কোনো সময়ে ইনপুট টুল সক্রিয় করতে পারেন।",
+ "ext-uls-language-settings-applying": "প্রয়োগ হচ্ছে...",
+ "ext-uls-compact-link-count": "{{PLURAL:$1|আরও একটি ভাষা|আরও $1টি ভাষা}}"
+}
diff --git a/MLEB/UniversalLanguageSelector/i18n/br.json b/MLEB/UniversalLanguageSelector/i18n/br.json
new file mode 100644
index 00000000..43ca3b08
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/i18n/br.json
@@ -0,0 +1,49 @@
+{
+ "@metadata": {
+ "authors": [
+ "Fohanno",
+ "Y-M D",
+ "Fulup"
+ ]
+ },
+ "uls-plang-title-languages": "Yezhoù",
+ "ext-uls-select-language-settings-icon-tooltip": "Arventennoù ar yezh",
+ "ext-uls-undo-language-tooltip-text": "Yezh kemmet eus $1",
+ "ext-uls-language-settings-preferences-link": "Muioc'h a arventennoù yezh",
+ "ext-uls-display-settings-title": "Diskwel an arventennoù",
+ "ext-uls-display-settings-language-tab": "Yezh",
+ "ext-uls-display-settings-fonts-tab": "Fontoù",
+ "ext-uls-display-settings-title-short": "Diskwel",
+ "ext-uls-display-settings-desc": "Dibab ar yezh implijet evit al lañserioù hag ar fontoù",
+ "ext-uls-language-settings-title": "Arventennoù ar yezh",
+ "ext-uls-language-settings-apply": "Arloañ an arventennoù",
+ "ext-uls-language-settings-cancel": "Nullañ",
+ "ext-uls-language-buttons-help": "Kemmañ yezh al lañser. Ne vo ket kemmet yezh an danvez.",
+ "ext-uls-display-settings-font-settings": "Arventennoù ar font",
+ "ext-uls-display-settings-ui-language": "Yezhoù diskwel",
+ "ext-uls-display-settings-anon-label": "Yezhoù diskwel :",
+ "ext-uls-display-settings-anon-same-as-content": "$1 (evel evit an danvez)",
+ "ext-uls-display-settings-anon-log-in-cta": "[[Special:UserLogin|Kevreañ]] evit dibab ur yezh all evit al lañserioù.",
+ "ext-uls-webfonts-settings-title": "Pellgargañ ar font pa vez ezhomm",
+ "ext-uls-webfonts-settings-info-link": "Muioc'h a ditouroù",
+ "ext-uls-webfonts-select-for": "Dibab ar font evit $1",
+ "ext-uls-webfonts-select-for-ui-info": "Font implijet evit an etrefas",
+ "ext-uls-webfonts-select-for-content-info": "Font implijet evit an danvez",
+ "ext-uls-webfonts-system-font": "Font ar sistem",
+ "ext-uls-back-to-display-settings": "Distreiñ d'an arventennoù diskwel",
+ "ext-uls-input-settings-title": "Arventennoù bizskrivañ",
+ "ext-uls-input-settings-desc": "Skrivañ en ur yezh disheñvel ?",
+ "ext-uls-input-settings-ui-language": "Yezh implijet evit skrivañ",
+ "ext-uls-back-to-input-settings": "Distreiñ d'an arventennoù bizskrivañ",
+ "ext-uls-ime-help": "Doare implijout",
+ "ext-uls-disable-input-method": "Implijout ur c'hlavier dibar",
+ "ext-uls-input-settings-more-languages-tooltip": "Muioc'h a yezhoù",
+ "jquery-ime-other-languages": "Yezhoù all",
+ "jquery-ime-disable-text": "Implijout ur c'hlavier dibar",
+ "jquery-ime-help": "Skoazell",
+ "ext-uls-input-disable": "Diweredekaat an ostilhoù bizskrivañ",
+ "ext-uls-input-enable": "Gweredekaat an ostilhoù bizskrivañ",
+ "ext-uls-input-disable-notification-undo": "Dizober",
+ "ext-uls-language-settings-applying": "O lakaat e pleustr...",
+ "ext-uls-compact-link-count": "{{PLURAL:$1|Ur|$1}} yezh ouzhpenn"
+}
diff --git a/MLEB/UniversalLanguageSelector/i18n/bs.json b/MLEB/UniversalLanguageSelector/i18n/bs.json
new file mode 100644
index 00000000..5fb134d3
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/i18n/bs.json
@@ -0,0 +1,54 @@
+{
+ "@metadata": {
+ "authors": [
+ "DzWiki"
+ ]
+ },
+ "uls-desc": "Daje korisniku nekoliko načina da izabere jezik i da prilagodi postavke jezika",
+ "uls-plang-title-languages": "Jezici",
+ "ext-uls-select-language-settings-icon-tooltip": "Postavke jezika",
+ "ext-uls-undo-language-tooltip-text": "Jezik promijenjen sa $1",
+ "ext-uls-language-settings-preferences-link": "Više jezičnih postavki",
+ "ext-uls-display-settings-title": "Postavke prikaza",
+ "ext-uls-display-settings-language-tab": "Jezik",
+ "ext-uls-display-settings-fonts-tab": "Fontovi",
+ "ext-uls-display-settings-title-short": "Prikaz",
+ "ext-uls-display-settings-desc": "Postavi jezik koji će se koristiti za menije i fontove",
+ "ext-uls-language-settings-title": "Postavke jezika",
+ "ext-uls-language-settings-apply": "Primijeni postavke",
+ "ext-uls-language-settings-cancel": "Otkaži",
+ "ext-uls-language-buttons-help": "Promijenite jezik menija. Jezik sadržaja neće biti promijenjen.",
+ "ext-uls-display-settings-font-settings": "Postavke fonta",
+ "ext-uls-display-settings-ui-language": "Jezika za prikaz",
+ "ext-uls-display-settings-anon-label": "Jezik prikaza:",
+ "ext-uls-display-settings-anon-same-as-content": "$1 (isto kao i sadržaj)",
+ "ext-uls-display-settings-anon-log-in-cta": "[[Special:UserLogin|Prijavite se]] kako biste izabrali drugi jezik za menije.",
+ "ext-uls-webfonts-settings-info-link": "Više informacija",
+ "ext-uls-webfonts-select-for": "Izaberite font za $1",
+ "ext-uls-webfonts-select-for-ui-info": "Font korišćen za korisnički interfejs",
+ "ext-uls-webfonts-select-for-content-info": "Font korišćen za sadržaj",
+ "ext-uls-webfonts-system-font": "Sistemski font",
+ "ext-uls-back-to-display-settings": "Nazad na postavke prikaza",
+ "ext-uls-input-settings-title": "Postavke unosa",
+ "ext-uls-input-settings-title-short": "Unos",
+ "ext-uls-input-settings-desc": "Pišete na drugom jeziku?",
+ "ext-uls-input-settings-ime-settings": "Načini unosa za $1",
+ "ext-uls-input-settings-ui-language": "Jezik korišćen za pisanje",
+ "ext-uls-back-to-input-settings": "Nazad na postavke unosa",
+ "ext-uls-ime-help": "Kako se koristi",
+ "ext-uls-disable-input-method": "Koristite izvornu tastaturu",
+ "ext-uls-input-settings-more-languages-tooltip": "Više jezika",
+ "jquery-ime-other-languages": "Drugi jezici",
+ "jquery-ime-disable-text": "Koristite izvornu tastaturu",
+ "jquery-ime-help": "Pomoć",
+ "ext-uls-input-disable": "Onemogući alate za unos",
+ "ext-uls-input-enable": "Omogući alate za unos",
+ "ext-uls-input-disable-info": "Alati za unos su onemogućeni",
+ "ext-uls-input-settings-noime": "Nema dostupne metoda unosa za ovaj jezik.",
+ "ext-uls-input-disable-notification": "Alati za unos su onemogućeni",
+ "ext-uls-input-disable-notification-undo": "Povrati",
+ "ext-uls-input-disable-notification-info-personal": "Možete omogućiti alate za unos bilo koje vrijeme na postavke jezika.",
+ "ext-uls-input-disable-notification-info-interlanguage": "Alate za unos možete u svakom trenutku omogućiti u jezičnim postavkama pored jezičnog spiska.",
+ "ext-uls-language-settings-applying": "Primjenjujem...",
+ "ext-uls-compact-link-count": "{{PLURAL:$1|Još jedan jezik|Još $1 druga jezika|Još $1 drugih jezika}}"
+}
diff --git a/MLEB/UniversalLanguageSelector/i18n/ca.json b/MLEB/UniversalLanguageSelector/i18n/ca.json
new file mode 100644
index 00000000..491fea62
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/i18n/ca.json
@@ -0,0 +1,53 @@
+{
+ "@metadata": {
+ "authors": [
+ "Pginer",
+ "Vriullop"
+ ]
+ },
+ "uls-desc": "Dóna a l'usuari diverses maneres per seleccionar una llengua i ajustar la seva configuració",
+ "uls-plang-title-languages": "Llengües",
+ "ext-uls-language-settings-preferences-link": "Més configuracions de llengua",
+ "ext-uls-display-settings-title": "Configuració de presentació",
+ "ext-uls-display-settings-language-tab": "Llengua",
+ "ext-uls-display-settings-title-short": "Presentació",
+ "ext-uls-display-settings-desc": "Defineix la llengua utilitzada per als menús i tipus de lletra.",
+ "ext-uls-language-settings-title": "Configuració de llengua",
+ "ext-uls-language-settings-apply": "Aplica la configuració",
+ "ext-uls-language-settings-cancel": "Cancel·la",
+ "ext-uls-language-buttons-help": "Canvia la llengua dels menús. La llengua del contingut no es veurà afectada.",
+ "ext-uls-display-settings-font-settings": "Configuració de fonts",
+ "ext-uls-display-settings-ui-language": "Llengua de la interfície",
+ "ext-uls-display-settings-anon-label": "Llengua de la interfície:",
+ "ext-uls-display-settings-anon-same-as-content": "$1 (com el contingut)",
+ "ext-uls-display-settings-anon-log-in-cta": "[[Special:UserLogin|Inicieu sessió]] per seleccionar una altra llengua per als menús.",
+ "ext-uls-webfonts-settings-title": "Descarrega fonts quan sigui necessari",
+ "ext-uls-webfonts-settings-info": "Descarrega automàticament les fonts mancants i permet la selecció de tipus de lletra preferits.",
+ "ext-uls-webfonts-settings-info-link": "Més informació",
+ "ext-uls-webfonts-select-for": "Selecciona tipus de lletra per a $1",
+ "ext-uls-webfonts-select-for-ui-info": "Tipus de lletra usat per a la interfície d'usuari",
+ "ext-uls-webfonts-select-for-content-info": "Tipus de lletra usat per al contingut",
+ "ext-uls-webfonts-system-font": "Tipus de lletra del sistema",
+ "ext-uls-back-to-display-settings": "Torna a la configuració de presentació",
+ "ext-uls-input-settings-title": "Configuració d'escriptura",
+ "ext-uls-input-settings-title-short": "Entrada",
+ "ext-uls-input-settings-desc": "Escriviu en una altra llengua?",
+ "ext-uls-input-settings-ime-settings": "Mètodes d'entrada per a $1",
+ "ext-uls-input-settings-ui-language": "Llengua emprada per escriure",
+ "ext-uls-back-to-input-settings": "Torna a la configuració d'escriptura",
+ "ext-uls-ime-help": "Instruccions d'ús",
+ "ext-uls-disable-input-method": "Teclat original",
+ "ext-uls-input-settings-more-languages-tooltip": "Més llengües",
+ "jquery-ime-other-languages": "Altres llengües",
+ "jquery-ime-disable-text": "Teclat original",
+ "jquery-ime-help": "Ajuda",
+ "ext-uls-input-disable": "Desactiva eines d'entrada",
+ "ext-uls-input-enable": "Activa eines d'entrada",
+ "ext-uls-input-disable-info": "Les eines d'entrada estan desactivades.",
+ "ext-uls-input-settings-noime": "No hi ha cap mètode d'entrada disponible per a aquesta llengua.",
+ "ext-uls-input-disable-notification": "Les eines d'entrada han estat desactivades",
+ "ext-uls-input-disable-notification-undo": "Desfés",
+ "ext-uls-input-disable-notification-info-personal": "Podeu habilitar les eines d'entrada en qualsevol moment des de la configuració de llengua.",
+ "ext-uls-input-disable-notification-info-interlanguage": "Podeu habilitar les eines d'entrada en qualsevol moment des de la configuració de llengua al costat de la llista de llengües.",
+ "ext-uls-language-settings-applying": "Aplicant…"
+}
diff --git a/MLEB/UniversalLanguageSelector/i18n/ce.json b/MLEB/UniversalLanguageSelector/i18n/ce.json
new file mode 100644
index 00000000..d9518ca1
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/i18n/ce.json
@@ -0,0 +1,59 @@
+{
+ "@metadata": {
+ "authors": [
+ "Умар",
+ "Nemo bis"
+ ]
+ },
+ "uls-desc": "Декъашхойн таро хуьлуьйту масийтта кепара мотт харжа а мотт дIахIотто а",
+ "uls-plang-title-languages": "Меттанаш",
+ "ext-uls-select-language-settings-icon-tooltip": "Мотт дIахIоттор",
+ "ext-uls-undo-language-tooltip-text": "Хьалхара мотт: $1",
+ "ext-uls-language-settings-preferences-link": "Кхин мотт дIахIоттор",
+ "uls-betafeature-label": "Меттанийн хьажоргийн боца могӀа",
+ "uls-betafeature-desc": "Гайта меттанийн боца могӀа, хьона кест-кеста йоьшуш болу меттанаш бен хира бац.",
+ "ext-uls-display-settings-title": "Сурт хӀоттор дӀахӀоттор",
+ "ext-uls-display-settings-language-tab": "Мотт",
+ "ext-uls-display-settings-fonts-tab": "Шрифташ",
+ "ext-uls-display-settings-title-short": "Сурт хӀоттор",
+ "ext-uls-display-settings-desc": "Меню а шрифташан а мотт",
+ "ext-uls-language-settings-title": "Мотт дIахIоттор",
+ "ext-uls-language-settings-apply": "Ӏалашдан",
+ "ext-uls-language-settings-cancel": "Цаоьшу",
+ "ext-uls-language-buttons-help": "Хийца меньюн мотт. Чулацаман мотт хийца лур бац.",
+ "ext-uls-display-settings-font-settings": "Шрифташ дӀахӀоттор",
+ "ext-uls-display-settings-ui-language": "Сурт хӀотторан мотт",
+ "ext-uls-display-settings-anon-label": "Сурт хӀотторан мотт:",
+ "ext-uls-display-settings-anon-same-as-content": "$1 (чулацаман сана)",
+ "ext-uls-display-settings-anon-log-in-cta": "Меню мотт харжа [[Special:UserLogin|системин чугӀо]].",
+ "ext-uls-webfonts-settings-title": "Оьшуш хилахь чуяха шрифташ",
+ "ext-uls-webfonts-settings-info": "Ша чуяха йоцу шрифташ, гӀоли шрифташ харжа магийта.",
+ "ext-uls-webfonts-settings-info-link": "Кхин тӀе хаам",
+ "ext-uls-webfonts-select-for": "Шрифт харжар цу $1",
+ "ext-uls-webfonts-select-for-ui-info": "Декъашхочун интерфейсан шрифт",
+ "ext-uls-webfonts-select-for-content-info": "Йозан шрифт",
+ "ext-uls-webfonts-system-font": "Системан шрифт",
+ "ext-uls-back-to-display-settings": "Юха гӀо",
+ "ext-uls-input-settings-title": "Яздаран гӀирс къастор",
+ "ext-uls-input-settings-title-short": "Яздар",
+ "ext-uls-input-settings-desc": "Кхечу маттахь язъйо ахь?",
+ "ext-uls-input-settings-ime-settings": "$1 маттана клавиатураш",
+ "ext-uls-input-settings-ui-language": "Йозан мотт",
+ "ext-uls-back-to-input-settings": "Юха гӀо",
+ "ext-uls-ime-help": "Муха лелайо",
+ "ext-uls-disable-input-method": "ДӀаяйа клавиатуран раскладка",
+ "ext-uls-input-settings-more-languages-tooltip": "Лелолуш долу меттанаш",
+ "jquery-ime-other-languages": "Кхин меттанаш",
+ "jquery-ime-disable-text": "ДӀаяйа клавиатуран раскладка",
+ "jquery-ime-help": "ГӀо",
+ "ext-uls-input-disable": "ДӀабайа яздаран гӀирс",
+ "ext-uls-input-enable": "ДӀаэца яздаран гӀирс",
+ "ext-uls-input-disable-info": "Яздаран гӀирс дӀабайина.",
+ "ext-uls-input-settings-noime": "ХӀокху меттан раскладкаш билгалйина яц.",
+ "ext-uls-input-disable-notification": "Яздаран гӀирс дӀабайина.",
+ "ext-uls-input-disable-notification-undo": "Цаоьшу",
+ "ext-uls-input-disable-notification-info-personal": "Яздаран гӀирс лело йиш ю муьлхачу хенахь мотт хуьйцу гӀирсан чохь.",
+ "ext-uls-input-disable-notification-info-interlanguage": "Яздаран гӀирс лело йиш ю муьлхачу хенахь мотт хуьйцу гӀирсан чохь.",
+ "ext-uls-language-settings-applying": "ДӀахӀоттор…",
+ "ext-uls-compact-link-count": "Кхин {{PLURAL:$1|цхьан маттахь|$1 меттанашкахь}}"
+}
diff --git a/MLEB/UniversalLanguageSelector/i18n/ckb.json b/MLEB/UniversalLanguageSelector/i18n/ckb.json
new file mode 100644
index 00000000..c7d51ba4
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/i18n/ckb.json
@@ -0,0 +1,52 @@
+{
+ "@metadata": {
+ "authors": [
+ "Calak"
+ ]
+ },
+ "uls-desc": "ڕێگای جۆربەجۆر بۆ بەکارھێنەر بۆ ھەڵبژاردنی زمان و جێبەجێکردنی ڕێکخستنەکانی زمان دخاتە ڕوو.",
+ "uls-plang-title-languages": "زمانەکان",
+ "ext-uls-select-language-settings-icon-tooltip": "ڕێکخستنەکانی زمان",
+ "ext-uls-undo-language-tooltip-text": "زمان گۆڕدرا لە $1",
+ "ext-uls-language-settings-preferences-link": "ڕێکخستنەکانی زیاتری زمان",
+ "ext-uls-display-settings-title": "ڕێکخستنەکانی پێشاندان",
+ "ext-uls-display-settings-language-tab": "زمان",
+ "ext-uls-display-settings-fonts-tab": "فۆنتەکان",
+ "ext-uls-display-settings-title-short": "پێشاندان",
+ "ext-uls-display-settings-desc": "زمانی بەکاگیراوی مێنووکان و فۆنتەکان ھەڵبژێرە.",
+ "ext-uls-language-settings-title": "ڕێکخستنەکانی زمان",
+ "ext-uls-language-settings-apply": "ڕێکخستنەکان بەکاربەرە",
+ "ext-uls-language-settings-cancel": "ھەڵیوەشێنەوە",
+ "ext-uls-language-buttons-help": "زمانی مێنووکان بگۆڕە. زمانی دەقەکانی ویکی ناگۆڕدرێ.",
+ "ext-uls-display-settings-font-settings": "ڕێکخستنەکانی فۆنت",
+ "ext-uls-display-settings-ui-language": "پێشاندانی زمان",
+ "ext-uls-display-settings-anon-label": "پێشاندانی زمان:",
+ "ext-uls-display-settings-anon-same-as-content": "$1 (وەکوو ناوەرۆک)",
+ "ext-uls-display-settings-anon-log-in-cta": "بۆ ھەڵبژاردنی زمانی جیاواز بۆ مێنووکان [[تایبەت:UserLogin|بچۆ ژوورەوە]].",
+ "ext-uls-webfonts-settings-info-link": "زانیاریی زیاتر",
+ "ext-uls-webfonts-select-for": "فۆنت ھەڵبژێرە بۆ زمانی $1",
+ "ext-uls-webfonts-select-for-ui-info": "فۆنتی بەکارگیراو بۆ ڕووکاری بەکارھێنەر",
+ "ext-uls-webfonts-select-for-content-info": "فۆنتی بەکارگیراو بۆ ناوەرۆک",
+ "ext-uls-webfonts-system-font": "فۆنتی سیستەم",
+ "ext-uls-back-to-display-settings": "گەڕانەوە بۆ ڕێکخستنەکانی پێشاندان",
+ "ext-uls-input-settings-title": "ڕێکخستنەکانی تەختەکلیل",
+ "ext-uls-input-settings-title-short": "تەختەکلیل",
+ "ext-uls-input-settings-desc": "بە زمانێکی جیاواز دەنووسی؟",
+ "ext-uls-input-settings-ime-settings": "شێوەازەکانی تەختەکلیل بۆ زمانی $1",
+ "ext-uls-input-settings-ui-language": "زمانی بەکارگیراو بۆ نووسین",
+ "ext-uls-back-to-input-settings": "گەڕانەوە بۆ ڕێکخستنەکانی تەختەکلیل",
+ "ext-uls-ime-help": "چۆنێتیی بەکارھێنان",
+ "ext-uls-disable-input-method": "تەختەکلیلی سەرەکی بەکاربھێنە",
+ "ext-uls-input-settings-more-languages-tooltip": "زمانەکانی تر",
+ "jquery-ime-other-languages": "زمانەکانی تر",
+ "jquery-ime-disable-text": "تەختەکلیلی سەرەکی بەکاربھێنە",
+ "jquery-ime-help": "یارمەتی",
+ "ext-uls-input-disable": "ئامرازەکانی تەختەکلیل ناچالاک بکە",
+ "ext-uls-input-enable": "ئامرازەکانی تەختەکلیل چالاک بکە",
+ "ext-uls-input-disable-info": "ئامرازەکانی تەختەکلیل ناچالاکە.",
+ "ext-uls-input-settings-noime": "ھیچ شێوازێکی تەختەکلیل بۆ ئەم زمانە بوونی نییە.",
+ "ext-uls-input-disable-notification": "ئامرازەکانی تەختەکلیل ناچالاک کراون.",
+ "ext-uls-input-disable-notification-undo": "پووچەڵکردنەوە",
+ "ext-uls-input-disable-notification-info-personal": "ھەر کات ویستت دەتوانی ئامرازەکانی تەختەکلیل لە بەشی ڕێکخستنەکانی زمان چالاک بکەی.",
+ "ext-uls-input-disable-notification-info-interlanguage": "ھەر کات ویستت دەتوانی ئامرازەکانی تەختەکلیل لە بەشی ڕێکخستنەکانی زمان لە لای پێرستی زمانەکان چالاک بکەی."
+}
diff --git a/MLEB/UniversalLanguageSelector/i18n/co.json b/MLEB/UniversalLanguageSelector/i18n/co.json
new file mode 100644
index 00000000..5278b35b
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/i18n/co.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Paulu"
+ ]
+ },
+ "ext-uls-input-settings-desc": "Scrivi in una lingua sfarente?"
+}
diff --git a/MLEB/UniversalLanguageSelector/i18n/cs.json b/MLEB/UniversalLanguageSelector/i18n/cs.json
new file mode 100644
index 00000000..5aa0a0cc
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/i18n/cs.json
@@ -0,0 +1,59 @@
+{
+ "@metadata": {
+ "authors": [
+ "Littledogboy",
+ "Mormegil"
+ ]
+ },
+ "uls-desc": "Nabízí uživateli několik způsobů volby jazyka a úpravy jazykových nastavení",
+ "uls-plang-title-languages": "Jazyky",
+ "ext-uls-select-language-settings-icon-tooltip": "Jazyková nastavení",
+ "ext-uls-undo-language-tooltip-text": "Jazyk změněn z $1",
+ "ext-uls-language-settings-preferences-link": "Další jazyková nastavení",
+ "uls-betafeature-label": "Kompaktní mezijazykové odkazy",
+ "uls-betafeature-desc": "Zobrazovat kratší verzi seznamu jazyků, obsahující jen jazyky, které jsou pro vás důležité.",
+ "ext-uls-display-settings-title": "Nastavení zobrazení",
+ "ext-uls-display-settings-language-tab": "Jazyk",
+ "ext-uls-display-settings-fonts-tab": "Písma",
+ "ext-uls-display-settings-title-short": "Zobrazení",
+ "ext-uls-display-settings-desc": "Nastavit jazyk používaný pro menu a písma.",
+ "ext-uls-language-settings-title": "Jazyková nastavení",
+ "ext-uls-language-settings-apply": "Použít nastavení",
+ "ext-uls-language-settings-cancel": "Storno",
+ "ext-uls-language-buttons-help": "Změní jazyk nabídek. Neovlivní to jazyk obsahu.",
+ "ext-uls-display-settings-font-settings": "Nastavení písem",
+ "ext-uls-display-settings-ui-language": "Jazyk rozhraní",
+ "ext-uls-display-settings-anon-label": "Jazyk rozhraní:",
+ "ext-uls-display-settings-anon-same-as-content": "$1 (jako obsah)",
+ "ext-uls-display-settings-anon-log-in-cta": "Jiný jazyk pro nabídky si můžete zvolit po [[Special:UserLogin|přihlášení]].",
+ "ext-uls-webfonts-settings-title": "V případě potřeby stáhnout písma",
+ "ext-uls-webfonts-settings-info": "Stahuje chybějící písma automaticky a umožňuje volbu preferovaných písem.",
+ "ext-uls-webfonts-settings-info-link": "Více informací",
+ "ext-uls-webfonts-select-for": "Vyberte písmo pro jazyk $1",
+ "ext-uls-webfonts-select-for-ui-info": "Písmo používané pro uživatelské rozhraní",
+ "ext-uls-webfonts-select-for-content-info": "Písmo používané pro obsah",
+ "ext-uls-webfonts-system-font": "Systémové písmo",
+ "ext-uls-back-to-display-settings": "Zpět na nastavení zobrazení",
+ "ext-uls-input-settings-title": "Nastavení vstupu",
+ "ext-uls-input-settings-title-short": "Vstup",
+ "ext-uls-input-settings-desc": "Píšete jiným jazykem?",
+ "ext-uls-input-settings-ime-settings": "Metody zadávání znaků pro jazyk $1",
+ "ext-uls-input-settings-ui-language": "Jazyk, kterým píšete",
+ "ext-uls-back-to-input-settings": "Zpět na nastavení vstupu",
+ "ext-uls-ime-help": "Jak používat",
+ "ext-uls-disable-input-method": "Používat původní klávesnici",
+ "ext-uls-input-settings-more-languages-tooltip": "Další jazyky",
+ "jquery-ime-other-languages": "Jiné jazyky",
+ "jquery-ime-disable-text": "Používat původní klávesnici",
+ "jquery-ime-help": "Nápověda",
+ "ext-uls-input-disable": "Vypnout nástroje pro vstup",
+ "ext-uls-input-enable": "Zapnout nástroje pro vstup",
+ "ext-uls-input-disable-info": "Nástroje pro vstup jsou vypnuty.",
+ "ext-uls-input-settings-noime": "Pro tento jazyk nejsou k dispozici žádné metody zadávání znaků.",
+ "ext-uls-input-disable-notification": "Nástroje pro vstup jsou vypnuty",
+ "ext-uls-input-disable-notification-undo": "Zpět",
+ "ext-uls-input-disable-notification-info-personal": "Nástroje pro vstup můžete kdykoli zapnout v jazykových nastaveních.",
+ "ext-uls-input-disable-notification-info-interlanguage": "Nástroje pro vstup můžete kdykoli zapnout v jazykových nastaveních vedle seznamu jazyků.",
+ "ext-uls-language-settings-applying": "Provádí se…",
+ "ext-uls-compact-link-count": "$1 {{PLURAL:$1|další jazyk|další jazyky|dalších jazyků}}"
+}
diff --git a/MLEB/UniversalLanguageSelector/i18n/cu.json b/MLEB/UniversalLanguageSelector/i18n/cu.json
new file mode 100644
index 00000000..c06f83cc
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/i18n/cu.json
@@ -0,0 +1,24 @@
+{
+ "@metadata": {
+ "authors": [
+ "ОйЛ"
+ ]
+ },
+ "uls-desc": "Срѣдьство дѣлꙗ польꙃєватєльска оустроѥниꙗ ѩꙁꙑка и съвѧꙁанъ вєщии",
+ "uls-plang-title-languages": "ѩꙁꙑци",
+ "ext-uls-select-language-settings-icon-tooltip": "ѩꙁꙑка строи",
+ "ext-uls-undo-language-tooltip-text": "ѩꙁꙑкъ иꙁмѣнєнъ ѥстъ отъ $1",
+ "ext-uls-language-settings-preferences-link": "вѧщи ѩꙁꙑка строи",
+ "ext-uls-display-settings-language-tab": "ѩꙁꙑкъ",
+ "ext-uls-display-settings-fonts-tab": "боукъвиѥ",
+ "ext-uls-language-settings-title": "ѩꙁꙑка строи",
+ "ext-uls-display-settings-font-settings": "боукъвиꙗ строи",
+ "ext-uls-display-settings-anon-same-as-content": "$1 (ꙗко жє съдрьжаниѥ)",
+ "ext-uls-webfonts-select-for": "боукъвиꙗ иꙁборъ $1 дѣлꙗ",
+ "ext-uls-webfonts-system-font": "сѷстимьно боуквиѥ",
+ "ext-uls-input-settings-desc": "иномь ѩꙁꙑкомь пьшєши ли ?",
+ "ext-uls-input-settings-ui-language": "ѩꙁꙑкъ пьсаниꙗ дѣлꙗ",
+ "ext-uls-input-settings-more-languages-tooltip": "вѧщи ѩꙁꙑци",
+ "jquery-ime-other-languages": "дроуꙃи ѩꙁꙑци",
+ "jquery-ime-help": "помощь"
+}
diff --git a/MLEB/UniversalLanguageSelector/i18n/cy.json b/MLEB/UniversalLanguageSelector/i18n/cy.json
new file mode 100644
index 00000000..27365840
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/i18n/cy.json
@@ -0,0 +1,60 @@
+{
+ "@metadata": {
+ "authors": [
+ "Lloffiwr",
+ "Robin Owain",
+ "Nemo bis"
+ ]
+ },
+ "uls-desc": "Yn cynnig sawl ffordd i'r defnyddiwr allu dewis iaith a newid gosodiadau iaith",
+ "uls-plang-title-languages": "Ieithoedd",
+ "ext-uls-select-language-settings-icon-tooltip": "Gosodiadau iaith",
+ "ext-uls-undo-language-tooltip-text": "Newidiwyd yr iaith o $1",
+ "ext-uls-language-settings-preferences-link": "Rhagor o osodiadau iaith",
+ "uls-betafeature-label": "Cysylltau iaith cryno",
+ "uls-betafeature-desc": "Dangos fersiwn byrach o restr yr ieithoedd, gan ddangos dim ond yr ieithoedd sydd yn debygol o fod yn berthnasol i chi.",
+ "ext-uls-display-settings-title": "Gosodiadau'r sgrîn",
+ "ext-uls-display-settings-language-tab": "Iaith",
+ "ext-uls-display-settings-fonts-tab": "Ffontiau",
+ "ext-uls-display-settings-title-short": "Golwg",
+ "ext-uls-display-settings-desc": "Gosod iaith y dewislenni, a ffont.",
+ "ext-uls-language-settings-title": "Gosodiadau iaith",
+ "ext-uls-language-settings-apply": "Rhodder y gosodiadau ar waith",
+ "ext-uls-language-settings-cancel": "Diddymer",
+ "ext-uls-language-buttons-help": "Newid iaith y dewislenni. Ni fydd iaith y cynnwys yn newid.",
+ "ext-uls-display-settings-font-settings": "Gosodiadau ffont",
+ "ext-uls-display-settings-ui-language": "Iaith y rhyngwyneb",
+ "ext-uls-display-settings-anon-label": "Iaith y rhyngwyneb:",
+ "ext-uls-display-settings-anon-same-as-content": "$1 (yr un fath â'r cynnwys)",
+ "ext-uls-display-settings-anon-log-in-cta": "[[Special:UserLogin|Mewngofnodwch]] er mwyn dewis iaith arall i'r dewislenni.",
+ "ext-uls-webfonts-settings-title": "Llwytho ffontiau i lawr pan fo angen",
+ "ext-uls-webfonts-settings-info": "Lawrlwytho ffontiau sydd yn eisiau yn awtomatig, a galluogi dewis ffontiau.",
+ "ext-uls-webfonts-settings-info-link": "Rhagor o wybodaeth",
+ "ext-uls-webfonts-select-for": "Dewis ffont ar gyfer $1",
+ "ext-uls-webfonts-select-for-ui-info": "Ffont y rhyngwyneb",
+ "ext-uls-webfonts-select-for-content-info": "Ffont y cynnwys",
+ "ext-uls-webfonts-system-font": "Ffont y sustem",
+ "ext-uls-back-to-display-settings": "Yn ôl i osodiadau golwg y sgrîn",
+ "ext-uls-input-settings-title": "Gosodiadau mewnbynnu",
+ "ext-uls-input-settings-title-short": "Mewnbwn",
+ "ext-uls-input-settings-desc": "Am ysgrifennu mewn iaith arall?",
+ "ext-uls-input-settings-ime-settings": "Dulliau ysgrifennu yn $1",
+ "ext-uls-input-settings-ui-language": "Iaith ysgrifennu",
+ "ext-uls-back-to-input-settings": "Yn ôl i osodiadau mewnbynnu",
+ "ext-uls-ime-help": "Cymorth i'w ddefnyddio",
+ "ext-uls-disable-input-method": "Defnyddio bysellfwrdd gwreiddiol y peiriant",
+ "ext-uls-input-settings-more-languages-tooltip": "Rhagor o ieithoedd",
+ "jquery-ime-other-languages": "Ieithoedd eraill",
+ "jquery-ime-disable-text": "Defnyddio bysellfwrdd gwreiddiol y peiriant",
+ "jquery-ime-help": "Cymorth",
+ "ext-uls-input-disable": "Analluoger yr offer mewnbynnu",
+ "ext-uls-input-enable": "Galluoger yr offer mewnbynnu",
+ "ext-uls-input-disable-info": "Analluogwyd yr offer mewnbynnu.",
+ "ext-uls-input-settings-noime": "Nid oes moddau arbennig o fewnbynnu'r iaith hon ar gael.",
+ "ext-uls-input-disable-notification": "Analluogwyd yr offer mewnbynnu",
+ "ext-uls-input-disable-notification-undo": "Dadwneud",
+ "ext-uls-input-disable-notification-info-personal": "Gallwch alluogi'r offer mewnbynnu unrhyw bryd, drwy'r gosodiadau iaith.",
+ "ext-uls-input-disable-notification-info-interlanguage": "Gallwch alluogi'r offer mewnbynnu unrhyw bryd drwy'r gosodiadau iaith, wrth ymyl rhestr yr ieithoedd.",
+ "ext-uls-language-settings-applying": "Wrthi'n gosod...",
+ "ext-uls-compact-link-count": "{{PLURAL:$1|$1 iaith arall}}"
+}
diff --git a/MLEB/UniversalLanguageSelector/i18n/da.json b/MLEB/UniversalLanguageSelector/i18n/da.json
new file mode 100644
index 00000000..0bb6b9ce
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/i18n/da.json
@@ -0,0 +1,62 @@
+{
+ "@metadata": {
+ "authors": [
+ "Byrial",
+ "Christian List",
+ "Peter Alberti",
+ "Cgtdk",
+ "Sarrus"
+ ]
+ },
+ "uls-desc": "Giver brugeren forskellige måder at vælge et sprog og at justere indstillingerne for sproget",
+ "uls-plang-title-languages": "Sprog",
+ "ext-uls-select-language-settings-icon-tooltip": "Sprogindstillinger",
+ "ext-uls-undo-language-tooltip-text": "Sprog ændret fra $1",
+ "ext-uls-language-settings-preferences-link": "Flere sprogindstillinger",
+ "uls-betafeature-label": "Kompakte sproglinks",
+ "uls-betafeature-desc": "Vis en kortere version af sproglisten, kun med de sprog, der er mest relevante for dig.",
+ "ext-uls-display-settings-title": "Visningsindstillinger",
+ "ext-uls-display-settings-language-tab": "Sprog",
+ "ext-uls-display-settings-fonts-tab": "Skrifttyper",
+ "ext-uls-display-settings-title-short": "Visning",
+ "ext-uls-display-settings-desc": "Vælg det sprog, der bruges til menuer, og skrifttyper.",
+ "ext-uls-language-settings-title": "Sprogindstillinger",
+ "ext-uls-language-settings-apply": "Anvend indstillinger",
+ "ext-uls-language-settings-cancel": "Afbryd",
+ "ext-uls-language-buttons-help": "Skift sprog i menuerne. Indholdssproget vil ikke blive påvirket.",
+ "ext-uls-display-settings-font-settings": "Skrifttypeindstillinger",
+ "ext-uls-display-settings-ui-language": "Brugerfladens sprog",
+ "ext-uls-display-settings-anon-label": "Brugerfladens sprog:",
+ "ext-uls-display-settings-anon-same-as-content": "$1 (samme som for indhold)",
+ "ext-uls-display-settings-anon-log-in-cta": "[[Special:UserLogin|Log ind]] for at vælge et andet sprog til menuerne.",
+ "ext-uls-webfonts-settings-title": "Hent skrifttyper, når det er nødvendigt",
+ "ext-uls-webfonts-settings-info": "Hent manglende skrifttyper automatisk og tillad udvalg af foretrukne skrifttyper.",
+ "ext-uls-webfonts-settings-info-link": "Flere oplysninger",
+ "ext-uls-webfonts-select-for": "Vælg skrifttype for $1",
+ "ext-uls-webfonts-select-for-ui-info": "Skrifttype, der bruges til brugergrænsefladen",
+ "ext-uls-webfonts-select-for-content-info": "Skrifttype, der bruges til indhold",
+ "ext-uls-webfonts-system-font": "Systemskrifttypen",
+ "ext-uls-back-to-display-settings": "Tilbage til visningsindstillinger",
+ "ext-uls-input-settings-title": "Indtastningsindstillinger",
+ "ext-uls-input-settings-title-short": "Indtastning",
+ "ext-uls-input-settings-desc": "Skriver du på et andet sprog?",
+ "ext-uls-input-settings-ime-settings": "Indtastningsmetoder for $1",
+ "ext-uls-input-settings-ui-language": "Sprog, der skrives på",
+ "ext-uls-back-to-input-settings": "Tilbage til indtastningsindstillinger",
+ "ext-uls-ime-help": "Hvordan man bruger",
+ "ext-uls-disable-input-method": "Brug standardtastatur",
+ "ext-uls-input-settings-more-languages-tooltip": "Flere sprog",
+ "jquery-ime-other-languages": "Andre sprog",
+ "jquery-ime-disable-text": "Brug standardtastatur",
+ "jquery-ime-help": "Hjælp",
+ "ext-uls-input-disable": "Slå indtastningsværktøjer fra",
+ "ext-uls-input-enable": "Slå indtastningsværktøjer til",
+ "ext-uls-input-disable-info": "Indtastningsværktøjer er slået fra.",
+ "ext-uls-input-settings-noime": "Der er ingen indtastningsmetoder for dette sprog.",
+ "ext-uls-input-disable-notification": "Indtastningsværktøjer er blevet slået fra",
+ "ext-uls-input-disable-notification-undo": "Fortryd ændring",
+ "ext-uls-input-disable-notification-info-personal": "Du kan altid slå indtastningsværktøjerne til i sprogindstillingerne.",
+ "ext-uls-input-disable-notification-info-interlanguage": "Du kan altid slå indtastningsværktøjerne til i sprogindstillingerne ved siden af sproglisten.",
+ "ext-uls-language-settings-applying": "Anvender...",
+ "ext-uls-compact-link-count": "{{PLURAL:$1|Et sprog til|$1 sprog til}}"
+}
diff --git a/MLEB/UniversalLanguageSelector/i18n/de.json b/MLEB/UniversalLanguageSelector/i18n/de.json
new file mode 100644
index 00000000..222faef7
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/i18n/de.json
@@ -0,0 +1,60 @@
+{
+ "@metadata": {
+ "authors": [
+ "Metalhead64",
+ "Se4598",
+ "Kghbln"
+ ]
+ },
+ "uls-desc": "Ermöglicht verschiedene Wege, eine Sprache auszuwählen und Spracheinstellungen anzupassen",
+ "uls-plang-title-languages": "Sprachen",
+ "ext-uls-select-language-settings-icon-tooltip": "Spracheinstellungen",
+ "ext-uls-undo-language-tooltip-text": "Sprache geändert von $1",
+ "ext-uls-language-settings-preferences-link": "Weitere Spracheinstellungen",
+ "uls-betafeature-label": "Kompakte Sprachlinks",
+ "uls-betafeature-desc": "Zeigt eine kürzere Version der Sprachenliste mit den für dich relevanten Sprachen an.",
+ "ext-uls-display-settings-title": "Anzeigeeinstellungen",
+ "ext-uls-display-settings-language-tab": "Sprache",
+ "ext-uls-display-settings-fonts-tab": "Schriftarten",
+ "ext-uls-display-settings-title-short": "Anzeige",
+ "ext-uls-display-settings-desc": "Sprache, die für Menüs und Schriftarten verwendet wird.",
+ "ext-uls-language-settings-title": "Spracheinstellungen",
+ "ext-uls-language-settings-apply": "Einstellungen anwenden",
+ "ext-uls-language-settings-cancel": "Abbrechen",
+ "ext-uls-language-buttons-help": "Ändert die Menüsprache. Die Inhaltssprache wird nicht geändert.",
+ "ext-uls-display-settings-font-settings": "Schriftarteinstellungen",
+ "ext-uls-display-settings-ui-language": "Anzeigesprache",
+ "ext-uls-display-settings-anon-label": "Anzeigesprache:",
+ "ext-uls-display-settings-anon-same-as-content": "$1 (wie der Inhalt)",
+ "ext-uls-display-settings-anon-log-in-cta": "[[Special:UserLogin|Melde dich an]], um eine andere Menüsprache auszuwählen.",
+ "ext-uls-webfonts-settings-title": "Schriftarten herunterladen, falls nötig",
+ "ext-uls-webfonts-settings-info": "Fehlende Schriftarten automatisch herunterladen und Auswahl bevorzugter Schriftarten ermöglichen.",
+ "ext-uls-webfonts-settings-info-link": "Mehr Informationen",
+ "ext-uls-webfonts-select-for": "Schriftart für $1 auswählen",
+ "ext-uls-webfonts-select-for-ui-info": "Schriftart für die Benutzeroberfläche",
+ "ext-uls-webfonts-select-for-content-info": "Schriftart für den Inhalt",
+ "ext-uls-webfonts-system-font": "Systemschriftart",
+ "ext-uls-back-to-display-settings": "Zurück zu den Anzeigeeinstellungen",
+ "ext-uls-input-settings-title": "Eingabeeinstellungen",
+ "ext-uls-input-settings-title-short": "Eingabe",
+ "ext-uls-input-settings-desc": "In einer anderen Sprache schreiben?",
+ "ext-uls-input-settings-ime-settings": "Eingabemethoden für $1",
+ "ext-uls-input-settings-ui-language": "Verwendete Sprache zum Schreiben",
+ "ext-uls-back-to-input-settings": "Zurück zu den Eingabeeinstellungen",
+ "ext-uls-ime-help": "Hilfe zur Benutzung",
+ "ext-uls-disable-input-method": "Native Tastatur verwenden",
+ "ext-uls-input-settings-more-languages-tooltip": "Mehr Sprachen",
+ "jquery-ime-other-languages": "Andere Sprachen",
+ "jquery-ime-disable-text": "Native Tastatur verwenden",
+ "jquery-ime-help": "Hilfe",
+ "ext-uls-input-disable": "Eingabewerkzeuge deaktivieren",
+ "ext-uls-input-enable": "Eingabewerkzeuge aktivieren",
+ "ext-uls-input-disable-info": "Die Eingabewerkzeuge sind deaktiviert.",
+ "ext-uls-input-settings-noime": "Für diese Sprache sind keine Eingabemethoden verfügbar.",
+ "ext-uls-input-disable-notification": "Die Eingabewerkzeuge wurden deaktiviert",
+ "ext-uls-input-disable-notification-undo": "Rückgängig",
+ "ext-uls-input-disable-notification-info-personal": "Du kannst die Eingabewerkzeuge zu jeder Zeit in den Spracheinstellungen aktivieren.",
+ "ext-uls-input-disable-notification-info-interlanguage": "Du kannst die Eingabewerkzeuge zu jeder Zeit in den Spracheinstellungen neben der Sprachenliste aktivieren.",
+ "ext-uls-language-settings-applying": "Anwenden …",
+ "ext-uls-compact-link-count": "{{PLURAL:$1|Eine weitere Sprache|$1 weitere Sprachen}}"
+}
diff --git a/MLEB/UniversalLanguageSelector/i18n/diq.json b/MLEB/UniversalLanguageSelector/i18n/diq.json
new file mode 100644
index 00000000..05e85d62
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/i18n/diq.json
@@ -0,0 +1,28 @@
+{
+ "@metadata": {
+ "authors": [
+ "Gorizon",
+ "Marmase",
+ "Mirzali"
+ ]
+ },
+ "uls-plang-title-languages": "Zıwani",
+ "ext-uls-select-language-settings-icon-tooltip": "Eyarê zıwani",
+ "ext-uls-language-settings-preferences-link": "Dahana véşi zıwani",
+ "ext-uls-display-settings-language-tab": "Zıwan",
+ "ext-uls-display-settings-fonts-tab": "Fonti",
+ "ext-uls-display-settings-title-short": "Asen",
+ "ext-uls-language-settings-cancel": "Bıtexelne",
+ "ext-uls-display-settings-font-settings": "Eyarê tipê nuştey",
+ "ext-uls-display-settings-ui-language": "Zıwanê asnayışi",
+ "ext-uls-display-settings-anon-label": "Zıwanê asnayışi:",
+ "ext-uls-ime-help": "Seni ke fêno kar",
+ "ext-uls-disable-input-method": "Hesıbyaye klavyer bıkarne",
+ "ext-uls-input-settings-more-languages-tooltip": "Zewbi zıwani",
+ "jquery-ime-other-languages": "Zıwanê bini",
+ "jquery-ime-disable-text": "Hesıbyaye klavyer bıkarne",
+ "jquery-ime-help": "Peşti",
+ "ext-uls-input-disable-notification-undo": "Peyser biya",
+ "ext-uls-language-settings-applying": "Dezgeyeno...",
+ "apihelp-ulslocalization-param-language": "Eyarê zıwani."
+}
diff --git a/MLEB/UniversalLanguageSelector/i18n/dsb.json b/MLEB/UniversalLanguageSelector/i18n/dsb.json
new file mode 100644
index 00000000..844fe8a8
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/i18n/dsb.json
@@ -0,0 +1,58 @@
+{
+ "@metadata": {
+ "authors": [
+ "Michawiki"
+ ]
+ },
+ "uls-desc": "Dawa wužywarjeju wšake metody, aby rěc wubrał a rěcne nastajenja pśiměrił",
+ "uls-plang-title-languages": "Rěcy",
+ "ext-uls-select-language-settings-icon-tooltip": "Rěcne nastajenja",
+ "ext-uls-undo-language-tooltip-text": "Rěc $1 změnjona",
+ "ext-uls-language-settings-preferences-link": "Dalšne rěcne nastajenja",
+ "uls-betafeature-label": "Kompaktne mjazyrěcne wótkaze",
+ "uls-betafeature-desc": "Krotšu wersiju rěcneje lisćiny pokazaś, jano z tymi rěcami, kótarež su relewantne za tebje.",
+ "ext-uls-display-settings-title": "Nastajenja za zwobraznjenje",
+ "ext-uls-display-settings-language-tab": "Rěc",
+ "ext-uls-display-settings-fonts-tab": "Pisma",
+ "ext-uls-display-settings-title-short": "Zwobraznjenje",
+ "ext-uls-display-settings-desc": "Rěc za menije a pisma póstajiś",
+ "ext-uls-language-settings-title": "Rěcne nastajenja",
+ "ext-uls-language-settings-apply": "Nastajenja nałožyś",
+ "ext-uls-language-settings-cancel": "Pśetergnuś",
+ "ext-uls-language-buttons-help": "Rěc menijow změniś. Rěc wopśimjeśa se njezměnijo.",
+ "ext-uls-display-settings-font-settings": "Pismowe nastajenja",
+ "ext-uls-display-settings-ui-language": "Zwobraznjowańska rěc",
+ "ext-uls-display-settings-anon-label": "Zwobraznjowańska rěc:",
+ "ext-uls-display-settings-anon-same-as-content": "$1 (ako wopśimjeśe)",
+ "ext-uls-display-settings-anon-log-in-cta": "[[Special:UserLogin|Pśizjaw se]], aby drugu rěc za menije wubrał.",
+ "ext-uls-webfonts-settings-title": "Pisma ześěgnuś, jolic trěbne",
+ "ext-uls-webfonts-settings-info": "Felujuce pisma awtomatiski ześěgnuś a wuběranje preferěrowanych pismow zmóžniś.",
+ "ext-uls-webfonts-settings-info-link": "Dalšne informacije",
+ "ext-uls-webfonts-select-for": "Pismo za $1 wubraś",
+ "ext-uls-webfonts-select-for-ui-info": "Pismo za wužywarski powjerch",
+ "ext-uls-webfonts-select-for-content-info": "Pismo za wopśimjeśe",
+ "ext-uls-webfonts-system-font": "Systemowe pismo",
+ "ext-uls-back-to-display-settings": "Slědk k nastajenjam zwobraznjenja",
+ "ext-uls-input-settings-title": "Nastajenja za zapódaśe",
+ "ext-uls-input-settings-title-short": "Zapódaśe",
+ "ext-uls-input-settings-desc": "W drugej rěcy pisaś?",
+ "ext-uls-input-settings-ime-settings": "Zapódawańske metody za $1",
+ "ext-uls-input-settings-ui-language": "Rěc, kótaraž wužywa se za pisanje",
+ "ext-uls-back-to-input-settings": "Slědk k nastajenjam za zapódaśe",
+ "ext-uls-ime-help": "Pokazki za wužywanje",
+ "ext-uls-disable-input-method": "Popšawnu tastaturu wužywaś",
+ "ext-uls-input-settings-more-languages-tooltip": "Dalšne rěcy",
+ "jquery-ime-other-languages": "Druge rěcy",
+ "jquery-ime-disable-text": "Popšawnu tastaturu wužywaś",
+ "jquery-ime-help": "Pomoc",
+ "ext-uls-input-disable": "Zapódawańske rědy znjemóžniś",
+ "ext-uls-input-enable": "Zapódawańske rědy zmóžniś",
+ "ext-uls-input-disable-info": "Zapódawańske rědy su znjemóžnjone.",
+ "ext-uls-input-settings-noime": "Za toś tu rěc žedne zapodawańske metody k dispoziciji njestoje.",
+ "ext-uls-input-disable-notification": "Zapódawańske rědy su se znjemóžnili",
+ "ext-uls-input-disable-notification-undo": "Anulěrowaś",
+ "ext-uls-input-disable-notification-info-personal": "Móžoš zapódawańske rědy kuždy cas z rěcnych nastajenjow zmóžniś.",
+ "ext-uls-input-disable-notification-info-interlanguage": "Móžoš zapódawańske rědy kuždy cas z rěcnych nastajenjow pódla lisćiny rěcow zmóžniś.",
+ "ext-uls-language-settings-applying": "Nałožujo se...",
+ "ext-uls-compact-link-count": "{{PLURAL:$1Jadna dalšna rěc|$1 dalšnej rěcy|$1 dalšne rěcy|$1 dalšnych rěcow}}"
+}
diff --git a/MLEB/UniversalLanguageSelector/i18n/el.json b/MLEB/UniversalLanguageSelector/i18n/el.json
new file mode 100644
index 00000000..30a7db37
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/i18n/el.json
@@ -0,0 +1,54 @@
+{
+ "@metadata": {
+ "authors": [
+ "Geraki",
+ "Glavkos",
+ "Protnet"
+ ]
+ },
+ "uls-desc": "Προσφέρει στο χρήστη μια σειρά από τρόπους να επιλέξει γλώσσα και να προσαρμόσει τις γλωσσικές ρυθμίσεις",
+ "uls-plang-title-languages": "Γλώσσες",
+ "ext-uls-select-language-settings-icon-tooltip": "Ρυθμίσεις γλώσσας",
+ "ext-uls-undo-language-tooltip-text": "Η γλώσσα άλλαξε από $1",
+ "ext-uls-language-settings-preferences-link": "Περισσότερες ρυθμίσεις γλώσσας",
+ "ext-uls-display-settings-title": "Ρυθμίσεις απεικόνισης",
+ "ext-uls-display-settings-language-tab": "Γλώσσα",
+ "ext-uls-display-settings-fonts-tab": "Γραμματοσειρές",
+ "ext-uls-display-settings-title-short": "Εμφάνιση",
+ "ext-uls-display-settings-desc": "Ορίστε τη γλώσσα που χρησιμοποιείται στα μενού και γραμματοσειρές.",
+ "ext-uls-language-settings-title": "Ρυθμίσεις γλώσσας",
+ "ext-uls-language-settings-apply": "Εφαρμογή ρυθμίσεων",
+ "ext-uls-language-settings-cancel": "Ακύρωση",
+ "ext-uls-language-buttons-help": "Αλλάξτε τη γλώσσα των μενού. Η γλώσσα του περιεχόμενου δεν θα επηρεαστεί.",
+ "ext-uls-display-settings-font-settings": "Ρυθμίσεις γραμματοσειράς",
+ "ext-uls-display-settings-ui-language": "Γλώσσα εμφάνισης",
+ "ext-uls-display-settings-anon-label": "Γλώσσα εμφάνισης:",
+ "ext-uls-display-settings-anon-same-as-content": "Αγγλικά (ίδια με το περιεχόμενο)",
+ "ext-uls-display-settings-anon-log-in-cta": "[[Special:UserLogin|Συνδεθείτε]] για να επιλέξετε μια διαφορετική γλώσσα για τα μενού.",
+ "ext-uls-webfonts-select-for": "Επιλέξτε τη γραμματοσειρά για $1",
+ "ext-uls-webfonts-select-for-ui-info": "Γραμματοσειρά που χρησιμοποιείται για την διεπαφή χρήστη",
+ "ext-uls-webfonts-select-for-content-info": "Γραμματοσειρά που χρησιμοποιείται για το περιεχόμενο",
+ "ext-uls-webfonts-system-font": "Γραμματοσειρά του συστήματος",
+ "ext-uls-back-to-display-settings": "Πίσω στις ρυθμίσεις εμφάνισης",
+ "ext-uls-input-settings-title": "Ρυθμίσεις εισόδου",
+ "ext-uls-input-settings-title-short": "Είσαγωγή",
+ "ext-uls-input-settings-desc": "Γράφετε σε μια διαφορετική γλώσσα;",
+ "ext-uls-input-settings-ime-settings": "Μέθοδοι εισαγωγής για $1",
+ "ext-uls-input-settings-ui-language": "Γλώσσα που χρησιμοποιείται για τη γραφή",
+ "ext-uls-back-to-input-settings": "Πίσω στις ρυθμίσεις εισαγωγής",
+ "ext-uls-ime-help": "Πώς να τη χρησιμοποιήσετε",
+ "ext-uls-disable-input-method": "Χρήση μητρικού πληκτρολόγιου",
+ "ext-uls-input-settings-more-languages-tooltip": "Περισσότερες γλώσσες",
+ "jquery-ime-other-languages": "Άλλες γλώσσες",
+ "jquery-ime-disable-text": "Χρήση μητρικού πληκτρολόγιου",
+ "jquery-ime-help": "Βοήθεια",
+ "ext-uls-input-disable": "Απενεργοποίηση εργαλείων εισαγωγής",
+ "ext-uls-input-enable": "Ενεργοποίηση εργαλείων εισαγωγής",
+ "ext-uls-input-disable-info": "Τα εργαλεία εισαγωγής είναι απενεργοποιημένα.",
+ "ext-uls-input-settings-noime": "Δεν είναι διαθέσιμα εργαλεία εισαγωγής για αυτή τη γλώσσα.",
+ "ext-uls-input-disable-notification": "Τα εργαλεία εισαγωγής έχουν απενεργοποιηθεί.",
+ "ext-uls-input-disable-notification-undo": "Αναίρεση",
+ "ext-uls-input-disable-notification-info-personal": "Μπορείτε να ενεργοποιήσετε τα εργαλεία εισαγωγής, ανά πάσα στιγμή από τις ρυθμίσεις γλώσσας.",
+ "ext-uls-input-disable-notification-info-interlanguage": "Μπορείτε να ενεργοποιήσετε τα εργαλεία εισαγωγής, ανά πάσα στιγμή από τις ρυθμίσεις γλώσσας δίπλα από τη λίστα γλωσσών.",
+ "ext-uls-language-settings-applying": "Εφαρμογή..."
+}
diff --git a/MLEB/UniversalLanguageSelector/i18n/en.json b/MLEB/UniversalLanguageSelector/i18n/en.json
new file mode 100644
index 00000000..72aeaefe
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/i18n/en.json
@@ -0,0 +1,74 @@
+{
+ "@metadata": {
+ "authors": [
+ "Nike",
+ "Kunal Mehta",
+ "Niharika",
+ "Amire80",
+ "Santhosh Thottingal"
+ ],
+ "message-documentation": "qqq"
+ },
+ "uls-desc": "Gives the user several ways to select a language and to adjust language settings",
+ "uls-plang-title-languages": "Languages",
+ "uls-ime-helppage": "https://www.mediawiki.org/wiki/Special:MyLanguage/Help:Extension:UniversalLanguageSelector/Input_methods/$1",
+ "ext-uls-select-language-settings-icon-tooltip": "Language settings",
+ "ext-uls-undo-language-tooltip-text": "Language changed from $1",
+ "ext-uls-language-settings-preferences-link": "More language settings",
+ "uls-betafeature-label": "Compact language links",
+ "uls-betafeature-desc": "Show a shorter version of the language list, with just the languages that are more relevant to you.",
+ "ext-uls-display-settings-title": "Display settings",
+ "ext-uls-display-settings-language-tab": "Language",
+ "ext-uls-display-settings-fonts-tab": "Fonts",
+ "ext-uls-display-settings-title-short": "Display",
+ "ext-uls-display-settings-desc": "Set language used for menus and fonts.",
+ "ext-uls-language-settings-title": "Language settings",
+ "ext-uls-language-settings-apply": "Apply settings",
+ "ext-uls-language-settings-cancel": "Cancel",
+ "ext-uls-language-buttons-help": "Change the language of menus. Content language will not be affected.",
+ "ext-uls-display-settings-font-settings": "Font settings",
+ "ext-uls-display-settings-ui-language": "Display language",
+ "ext-uls-display-settings-anon-label": "Display language:",
+ "ext-uls-display-settings-anon-same-as-content": "$1 (same as content)",
+ "ext-uls-display-settings-anon-log-in-cta": "[[Special:UserLogin|Log in]] to select a different language for menus.",
+ "ext-uls-webfonts-settings-title": "Download fonts when needed",
+ "ext-uls-webfonts-settings-info": "Download missing fonts automatically and allow selection of preferred fonts.",
+ "ext-uls-webfonts-settings-info-link": "More information",
+ "ext-uls-webfonts-select-for": "Select font for $1",
+ "ext-uls-webfonts-select-for-ui-info": "Font used for user interface",
+ "ext-uls-webfonts-select-for-content-info": "Font used for content",
+ "ext-uls-webfonts-system-font": "System font",
+ "ext-uls-back-to-display-settings": "Back to display settings",
+ "ext-uls-input-settings-title": "Input settings",
+ "ext-uls-input-settings-title-short": "Input",
+ "ext-uls-input-settings-desc": "Writing in a different language?",
+ "ext-uls-input-settings-ime-settings": "Input methods for $1",
+ "ext-uls-input-settings-ui-language": "Language used for writing",
+ "ext-uls-back-to-input-settings": "Back to input settings",
+ "ext-uls-ime-help": "How to use",
+ "ext-uls-disable-input-method": "Use native keyboard",
+ "ext-uls-input-settings-more-languages-tooltip": "More languages",
+ "jquery-ime-other-languages": "Other languages",
+ "jquery-ime-disable-text": "Use native keyboard",
+ "jquery-ime-help": "Help",
+ "ext-uls-input-disable": "Disable input tools",
+ "ext-uls-input-enable": "Enable input tools",
+ "ext-uls-input-disable-info": "Input tools are disabled.",
+ "ext-uls-input-settings-noime": "No input methods are available for this language.",
+ "ext-uls-input-disable-notification": "Input tools have been disabled",
+ "ext-uls-input-disable-notification-undo": "Undo",
+ "ext-uls-input-disable-notification-info-personal": "You can enable the input tools at any time from the language settings.",
+ "ext-uls-input-disable-notification-info-interlanguage": "You can enable the input tools at any time from the language settings next to the language list.",
+ "ext-uls-language-settings-applying": "Applying...",
+ "ext-uls-compact-link-count": "{{PLURAL:$1|One more language|$1 more languages}}",
+ "apihelp-languagesearch-description": "Search for language names in any script.",
+ "apihelp-languagesearch-param-search": "Search string.",
+ "apihelp-languagesearch-param-typos": "Number of spelling mistakes allowed in the search string.",
+ "apihelp-languagesearch-example-1": "Search for \"Te\"",
+ "apihelp-languagesearch-example-2": "Search for \"ഫി\"",
+ "apihelp-languagesearch-example-3": "Search for \"ഫി\", allowing one typo",
+ "apihelp-ulslocalization-description": "Get the localization of ULS in given language.",
+ "apihelp-ulslocalization-param-language": "Language string.",
+ "apihelp-ulslocalization-example-1": "Get Tamil localization",
+ "apihelp-ulslocalization-example-2": "Get Hindi localization"
+}
diff --git a/MLEB/UniversalLanguageSelector/i18n/eo.json b/MLEB/UniversalLanguageSelector/i18n/eo.json
new file mode 100644
index 00000000..a1251b68
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/i18n/eo.json
@@ -0,0 +1,58 @@
+{
+ "@metadata": {
+ "authors": [
+ "KuboF"
+ ]
+ },
+ "uls-desc": "Proponas al uzanto kelkajn manierojn por elekti lingvon kaj modifi lingvajn agordojn",
+ "uls-plang-title-languages": "Lingvoj",
+ "ext-uls-select-language-settings-icon-tooltip": "Lingvaj agordoj",
+ "ext-uls-undo-language-tooltip-text": "Lingvo ŝanĝita de $1",
+ "ext-uls-language-settings-preferences-link": "Pliaj lingvaj agordoj",
+ "uls-betafeature-label": "Kompaktaj lingvaj ligiloj",
+ "uls-betafeature-desc": "Montri malpli longan version de lingvaj ligiloj kun ligiloj nur al tiujn lingvoj, kiuj estas iom signifaj por vi.",
+ "ext-uls-display-settings-title": "Montri agordojn",
+ "ext-uls-display-settings-language-tab": "Lingvo",
+ "ext-uls-display-settings-fonts-tab": "Tiparoj",
+ "ext-uls-display-settings-title-short": "Montrado",
+ "ext-uls-display-settings-desc": "Agordu lingvon uzotan por menuoj kaj tiparoj.",
+ "ext-uls-language-settings-title": "Lingvaj agordoj",
+ "ext-uls-language-settings-apply": "Apliki agordojn",
+ "ext-uls-language-settings-cancel": "Nuligi",
+ "ext-uls-language-buttons-help": "Ŝanĝi lingvon de menuoj. Lingvo de enhavo ne estos influita.",
+ "ext-uls-display-settings-font-settings": "Tiparaj agordoj",
+ "ext-uls-display-settings-ui-language": "Montrolingvo",
+ "ext-uls-display-settings-anon-label": "Montrolingvo:",
+ "ext-uls-display-settings-anon-same-as-content": "$1 (same kiel enhavo)",
+ "ext-uls-display-settings-anon-log-in-cta": "Alian lingvon de menuoj vi povas elekti post [[Special:UserLogin|ensaluto]]",
+ "ext-uls-webfonts-settings-title": "Laŭ neceso elŝuti tiparon.",
+ "ext-uls-webfonts-settings-info": "Elŝuti mankantajn tiparojn aŭtomate kaj ebligi elekton de preferataj tiparoj.",
+ "ext-uls-webfonts-settings-info-link": "Pliaj informoj",
+ "ext-uls-webfonts-select-for": "Elekti tiparon por $1",
+ "ext-uls-webfonts-select-for-ui-info": "Tiparo uzata por uzanto-interfaco",
+ "ext-uls-webfonts-select-for-content-info": "Tiparo uzata por enhavo",
+ "ext-uls-webfonts-system-font": "Sistema tiparo",
+ "ext-uls-back-to-display-settings": "Reen al agordoj de montrado",
+ "ext-uls-input-settings-title": "Enigaj agordoj",
+ "ext-uls-input-settings-title-short": "Enigo",
+ "ext-uls-input-settings-desc": "Ĉu vi skribas en alia lingvo?",
+ "ext-uls-input-settings-ime-settings": "Enig-metodoj por $1",
+ "ext-uls-input-settings-ui-language": "Lingvo uzata por skribado",
+ "ext-uls-back-to-input-settings": "Reen al enigaj agordoj",
+ "ext-uls-ime-help": "Kiel uzi",
+ "ext-uls-disable-input-method": "Uzi indiĝenan klavaron",
+ "ext-uls-input-settings-more-languages-tooltip": "Pliaj lingvoj",
+ "jquery-ime-other-languages": "Aliaj lingvoj",
+ "jquery-ime-disable-text": "Uzi indiĝenan klavaron",
+ "jquery-ime-help": "Helpo",
+ "ext-uls-input-disable": "Malŝalti enigajn ilojn",
+ "ext-uls-input-enable": "Ŝalti enigajn ilojn",
+ "ext-uls-input-disable-info": "Enigaj ilojn estas malŝaltitaj",
+ "ext-uls-input-settings-noime": "Por tiu ĉi lingvo ne estas disponeblaj enigaj iloj.",
+ "ext-uls-input-disable-notification": "Enigaj iloj estis malŝaltitaj",
+ "ext-uls-input-disable-notification-undo": "Malfari",
+ "ext-uls-input-disable-notification-info-personal": "Vi povas iam ajn ŝalti enigajn ilojn en lingvaj agordoj.",
+ "ext-uls-input-disable-notification-info-interlanguage": "Vi povas iam ajn ŝalti enigajn ilojn en lingvaj agordoj ĉe lingvolisto.",
+ "ext-uls-language-settings-applying": "Aplikiĝado...",
+ "ext-uls-compact-link-count": "{{PLURAL:$1|Unu plia lingvo|$1 pliaj lingvoj}}"
+}
diff --git a/MLEB/UniversalLanguageSelector/i18n/es.json b/MLEB/UniversalLanguageSelector/i18n/es.json
new file mode 100644
index 00000000..033c38a4
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/i18n/es.json
@@ -0,0 +1,63 @@
+{
+ "@metadata": {
+ "authors": [
+ "Armando-Martin",
+ "Fitoschido",
+ "Larjona",
+ "Ovruni",
+ "Pginer",
+ "Ihojose",
+ "Macofe"
+ ]
+ },
+ "uls-desc": "Ofrece al usuario varias formas para seleccionar un idioma y ajustar su configuración",
+ "uls-plang-title-languages": "Idiomas",
+ "ext-uls-select-language-settings-icon-tooltip": "Opciones de idioma",
+ "ext-uls-undo-language-tooltip-text": "El idioma cambió de $1",
+ "ext-uls-language-settings-preferences-link": "Más opciones de idioma",
+ "uls-betafeature-label": "Lista de idiomas compacta",
+ "uls-betafeature-desc": "Muestra una versión reducida de la lista de idiomas, que incluye solo aquellos que son más relevantes para ti.",
+ "ext-uls-display-settings-title": "Configuración de presentación",
+ "ext-uls-display-settings-language-tab": "Idioma",
+ "ext-uls-display-settings-fonts-tab": "Tipos de letra",
+ "ext-uls-display-settings-title-short": "Presentación",
+ "ext-uls-display-settings-desc": "Configurar el idioma para los menús y las fuentes.",
+ "ext-uls-language-settings-title": "Configuración de idioma",
+ "ext-uls-language-settings-apply": "Aplicar la configuración",
+ "ext-uls-language-settings-cancel": "Cancelar",
+ "ext-uls-language-buttons-help": "Cambiar el idioma de los menús. El idioma del contenido no se verá afectado.",
+ "ext-uls-display-settings-font-settings": "Configuración de fuentes",
+ "ext-uls-display-settings-ui-language": "Idioma de la presentación",
+ "ext-uls-display-settings-anon-label": "Idioma de la presentación:",
+ "ext-uls-display-settings-anon-same-as-content": "$1 (igual que el contenido)",
+ "ext-uls-display-settings-anon-log-in-cta": "[[Special:UserLogin|Inicie sesión]] para seleccionar un idioma diferente para los menús.",
+ "ext-uls-webfonts-settings-title": "Descargar fuentes cuando sea necesario",
+ "ext-uls-webfonts-settings-info": "Las fuentes se descargarán para mostrar texto en otros sistemas de escritura.",
+ "ext-uls-webfonts-settings-info-link": "Más información",
+ "ext-uls-webfonts-select-for": "Seleccione fuente para $1",
+ "ext-uls-webfonts-select-for-ui-info": "Fuente usada para la interfaz de usuario",
+ "ext-uls-webfonts-select-for-content-info": "Fuente usada para el contenido",
+ "ext-uls-webfonts-system-font": "Tipo de letra del sistema",
+ "ext-uls-back-to-display-settings": "Volver a la configuración de la presentación",
+ "ext-uls-input-settings-title": "Configuración de la entrada",
+ "ext-uls-input-settings-title-short": "Entrada",
+ "ext-uls-input-settings-desc": "¿Escribes en un idioma diferente?",
+ "ext-uls-input-settings-ime-settings": "Métodos de entrada para $1",
+ "ext-uls-input-settings-ui-language": "Idioma usado para escribir",
+ "ext-uls-back-to-input-settings": "Volver a la configuración de entrada",
+ "ext-uls-ime-help": "Cómo utilizar",
+ "ext-uls-disable-input-method": "Usar teclado nativo",
+ "ext-uls-input-settings-more-languages-tooltip": "Más idiomas",
+ "jquery-ime-other-languages": "Otros idiomas",
+ "jquery-ime-disable-text": "Usar teclado nativo",
+ "jquery-ime-help": "Ayuda",
+ "ext-uls-input-disable": "Desactivar las herramientas de entrada",
+ "ext-uls-input-enable": "Activar las herramientas de entrada",
+ "ext-uls-input-disable-info": "Las herramientas de entrada están desactivadas.",
+ "ext-uls-input-settings-noime": "No hay métodos de entrada disponibles para este idioma.",
+ "ext-uls-input-disable-notification": "Se han desactivado las herramientas de entrada",
+ "ext-uls-input-disable-notification-undo": "Deshacer",
+ "ext-uls-input-disable-notification-info-personal": "Puede activar las herramientas de entrada en cualquier momento desde las opciones de idioma.",
+ "ext-uls-input-disable-notification-info-interlanguage": "Puede activar las herramientas de entrada en cualquier momento desde las opciones de idioma junto a la lista de idiomas.",
+ "ext-uls-language-settings-applying": "Aplicando…"
+}
diff --git a/MLEB/UniversalLanguageSelector/i18n/et.json b/MLEB/UniversalLanguageSelector/i18n/et.json
new file mode 100644
index 00000000..bd8d029b
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/i18n/et.json
@@ -0,0 +1,59 @@
+{
+ "@metadata": {
+ "authors": [
+ "Avjoska",
+ "Pikne"
+ ]
+ },
+ "uls-desc": "Võimaldab kasutajal mitmel viisil keelt valida ja keelesätteid kohandada.",
+ "uls-plang-title-languages": "Keeled",
+ "ext-uls-select-language-settings-icon-tooltip": "Keelesätted",
+ "ext-uls-undo-language-tooltip-text": "Keel vahetatud, enne: $1",
+ "ext-uls-language-settings-preferences-link": "Veel keelesätteid",
+ "uls-betafeature-label": "Kompaktsed keelelingid",
+ "uls-betafeature-desc": "Näitab keelelinkide lühemat versiooni, milles on vaid sinu jaoks enam huvi pakkuvad keeled.",
+ "ext-uls-display-settings-title": "Kuvasätted",
+ "ext-uls-display-settings-language-tab": "Keel",
+ "ext-uls-display-settings-fonts-tab": "Kirjatüübid",
+ "ext-uls-display-settings-title-short": "Kuva",
+ "ext-uls-display-settings-desc": "Vali menüüdes ja kirjatüüpide juures kasutatav keel.",
+ "ext-uls-language-settings-title": "Keelesätted",
+ "ext-uls-language-settings-apply": "Rakenda sätted",
+ "ext-uls-language-settings-cancel": "Loobu",
+ "ext-uls-language-buttons-help": "Muuda menüüde keelt. Sisu keel ei muutu.",
+ "ext-uls-display-settings-font-settings": "Kirjatüübisätted",
+ "ext-uls-display-settings-ui-language": "Kuvakeel",
+ "ext-uls-display-settings-anon-label": "Kuvakeel:",
+ "ext-uls-display-settings-anon-same-as-content": "$1 (sama, mis sisul)",
+ "ext-uls-display-settings-anon-log-in-cta": "[[Special:UserLogin|Logi sisse]], et menüüde jaoks erinev keel valida.",
+ "ext-uls-webfonts-settings-title": "Laadi alla kirjatüübid, kui tarvis",
+ "ext-uls-webfonts-settings-info": "Laadi puuduvad kirjatüübid alla iseenesest ja luba eelistatud kirjatüüpide valimine.",
+ "ext-uls-webfonts-settings-info-link": "Lisateave",
+ "ext-uls-webfonts-select-for": "Vali kirjatüüp ($1)",
+ "ext-uls-webfonts-select-for-ui-info": "Kasutajaliidese jaoks kasutatav kirjatüüp",
+ "ext-uls-webfonts-select-for-content-info": "Sisu joaks kasutatav kirjatüüp",
+ "ext-uls-webfonts-system-font": "Süsteemi kirjatüüp",
+ "ext-uls-back-to-display-settings": "Naase kuvasätete juurde",
+ "ext-uls-input-settings-title": "Sisestussätted",
+ "ext-uls-input-settings-title-short": "Sisestus",
+ "ext-uls-input-settings-desc": "Kas kirjutad muus keeles?",
+ "ext-uls-input-settings-ime-settings": "Sisestusviis ($1)",
+ "ext-uls-input-settings-ui-language": "Kirjutamisel kasutatav keel",
+ "ext-uls-back-to-input-settings": "Naase sisestussätete juurde",
+ "ext-uls-ime-help": "Kasutusabi",
+ "ext-uls-disable-input-method": "Kasuta emakeelset sõrmistikku",
+ "ext-uls-input-settings-more-languages-tooltip": "Rohkem keeli",
+ "jquery-ime-other-languages": "Teised keeled",
+ "jquery-ime-disable-text": "Kasuta emakeelset sõrmistikku",
+ "jquery-ime-help": "Abi",
+ "ext-uls-input-disable": "Keela sisestusriistad",
+ "ext-uls-input-enable": "Luba sisestusriistad",
+ "ext-uls-input-disable-info": "Sisestusriistad on keelatud.",
+ "ext-uls-input-settings-noime": "Selle keele jaoks pole sisestusviise saadaval.",
+ "ext-uls-input-disable-notification": "Sisestusriistad on keelatud.",
+ "ext-uls-input-disable-notification-undo": "Võta tagasi",
+ "ext-uls-input-disable-notification-info-personal": "Saad alati keelesätetes sisestusriistad lubada.",
+ "ext-uls-input-disable-notification-info-interlanguage": "Saad alati keelesätetes keelte loendi kõrval sisestusriistad lubada.",
+ "ext-uls-language-settings-applying": "Rakendamine...",
+ "ext-uls-compact-link-count": "Veel {{PLURAL:$1|üks keel|$1 keelt}}"
+}
diff --git a/MLEB/UniversalLanguageSelector/i18n/eu.json b/MLEB/UniversalLanguageSelector/i18n/eu.json
new file mode 100644
index 00000000..0b938e83
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/i18n/eu.json
@@ -0,0 +1,18 @@
+{
+ "@metadata": {
+ "authors": [
+ "Xabier Armendaritz"
+ ]
+ },
+ "ext-uls-select-language-settings-icon-tooltip": "Hizkuntza ezarpenak",
+ "ext-uls-language-settings-preferences-link": "Hizkuntza ezarpen gehiago",
+ "ext-uls-display-settings-title-short": "Bistaratzea",
+ "ext-uls-display-settings-desc": "Ezar ezazu menuetarako eta letra tipoetarako hizkuntza.",
+ "ext-uls-language-settings-title": "Hizkuntza ezarpenak",
+ "ext-uls-language-settings-apply": "Aplikatu ezarpenak",
+ "ext-uls-language-settings-cancel": "Utzi",
+ "ext-uls-language-buttons-help": "Aldatu menuen hizkuntza. Edukien hizkuntza ez da aldatuko.",
+ "ext-uls-display-settings-ui-language": "Bistaratze hizkuntza",
+ "ext-uls-display-settings-anon-label": "Bistaratze hizkuntza:",
+ "ext-uls-input-settings-title-short": "Sarrera"
+}
diff --git a/MLEB/UniversalLanguageSelector/i18n/fa.json b/MLEB/UniversalLanguageSelector/i18n/fa.json
new file mode 100644
index 00000000..abca55e6
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/i18n/fa.json
@@ -0,0 +1,63 @@
+{
+ "@metadata": {
+ "authors": [
+ "Calak",
+ "Ebraminio",
+ "Mjbmr",
+ "Reza1615",
+ "Mahan",
+ "Armin1392"
+ ]
+ },
+ "uls-desc": "به کاربر راه‌های مختلفی برای انتخاب زبان و تنظیم تنظیمات زبان می‌دهد",
+ "uls-plang-title-languages": "زبان‌ها",
+ "ext-uls-select-language-settings-icon-tooltip": "تنظیمات زبان",
+ "ext-uls-undo-language-tooltip-text": "تغییر زبان از $1",
+ "ext-uls-language-settings-preferences-link": "تنظیمات بیشتر زبان",
+ "uls-betafeature-label": "پیوندهای زبانی فشرده",
+ "uls-betafeature-desc": "نمایش یک نسخه کوتاه‌تر فهرست زبان، با فقط زبانی که بیشتر به شما مربوط است.",
+ "ext-uls-display-settings-title": "تنظیمات نمایش",
+ "ext-uls-display-settings-language-tab": "زبان",
+ "ext-uls-display-settings-fonts-tab": "قلم‌ها",
+ "ext-uls-display-settings-title-short": "نمایش",
+ "ext-uls-display-settings-desc": "زبان مورد استفاده منوها و قلم را تنظیم کنید.",
+ "ext-uls-language-settings-title": "تنظیمات زبان",
+ "ext-uls-language-settings-apply": "اعمال تنظیمات",
+ "ext-uls-language-settings-cancel": "لغو",
+ "ext-uls-language-buttons-help": "تغییر زبان منوها. زبان متن‌های ویکی تغییر نمی‌یابد.",
+ "ext-uls-display-settings-font-settings": "تنظیمات قلم",
+ "ext-uls-display-settings-ui-language": "نمایش زبان",
+ "ext-uls-display-settings-anon-label": "نمایش زبان",
+ "ext-uls-display-settings-anon-same-as-content": "$1 (به مانند مطالب)",
+ "ext-uls-display-settings-anon-log-in-cta": " [[Special:UserLogin|ورود]] برای انتخاب زبان متفاوتی برای منوها.",
+ "ext-uls-webfonts-settings-title": "دریافت قلم‌های مورد نیاز",
+ "ext-uls-webfonts-settings-info": "دریافت خودکار قلم‌های ناموجود و اجازهٔ انتخاب قلم‌های ترجیح‌داده‌شده.",
+ "ext-uls-webfonts-settings-info-link": "اطلاعات بیشتر",
+ "ext-uls-webfonts-select-for": "انتخاب قلم برای $1",
+ "ext-uls-webfonts-select-for-ui-info": "قلم مورد استفادهٔ رابط کاربری",
+ "ext-uls-webfonts-select-for-content-info": "قلم مورد استفاده محتوا",
+ "ext-uls-webfonts-system-font": "قلم دستگاه",
+ "ext-uls-back-to-display-settings": "بازگشت برای نمایش‌دادن تنظیمات",
+ "ext-uls-input-settings-title": "تنظیمات ورودی",
+ "ext-uls-input-settings-title-short": "ورودی",
+ "ext-uls-input-settings-desc": "با زبان متفاوتی می‌نویسید؟",
+ "ext-uls-input-settings-ime-settings": "روش ورودی برای $1",
+ "ext-uls-input-settings-ui-language": "زبان مورد استفاده برای نوشتن",
+ "ext-uls-back-to-input-settings": "بازگشت برای واردکردن تنظیمات",
+ "ext-uls-ime-help": "نحوه استفاده",
+ "ext-uls-disable-input-method": "استفاده از صفحه‌کلید بومی",
+ "ext-uls-input-settings-more-languages-tooltip": "زبان‌های بیشتر",
+ "jquery-ime-other-languages": "زبان‌های دیگر",
+ "jquery-ime-disable-text": "استفاده از صفحه‌کلید بومی",
+ "jquery-ime-help": "راهنما",
+ "ext-uls-input-disable": "غیرفعال‌کردن ابزارهای ورودی",
+ "ext-uls-input-enable": "فعال‌کردن ابزارهای ورودی",
+ "ext-uls-input-disable-info": "ابزارهای ورودی غیرفعال است.",
+ "ext-uls-input-settings-noime": "هیچ روش ورودی‌ای برای این زبان در دسترس نیست.",
+ "ext-uls-input-disable-notification": "ابزارهای ورودی غیرفعال شده‌اند",
+ "ext-uls-input-disable-notification-undo": "واگردانی",
+ "ext-uls-input-disable-notification-info-personal": "در هر زمان می‌توانید ابزارهای ورودی را از بخش تنظیمات زبان فعال کنید.",
+ "ext-uls-input-disable-notification-info-interlanguage": "در هر زمان می توانید ابزارهای ورودی را از بخش تنظیمات زبان در کنار فهرست زبان‌ها فعال است.",
+ "ext-uls-language-settings-applying": "اعمال‌کردن...",
+ "ext-uls-compact-link-count": "{{PLURAL:$1|یک زبان دیگر|$1 زبان دیگر}}"
+}
diff --git a/MLEB/UniversalLanguageSelector/i18n/fi.json b/MLEB/UniversalLanguageSelector/i18n/fi.json
new file mode 100644
index 00000000..6c7189e8
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/i18n/fi.json
@@ -0,0 +1,60 @@
+{
+ "@metadata": {
+ "authors": [
+ "Crt",
+ "Nedergard",
+ "Nike",
+ "Olli",
+ "Pxos",
+ "Stryn"
+ ]
+ },
+ "uls-desc": "Tarjoaa useita tapoja valita kieli ja asettaa kieliasetukset",
+ "uls-plang-title-languages": "Kielet",
+ "ext-uls-select-language-settings-icon-tooltip": "Kieliasetukset",
+ "ext-uls-undo-language-tooltip-text": "Kieli vaihdettu kielestä $1",
+ "ext-uls-language-settings-preferences-link": "Lisää kieliasetuksia",
+ "uls-betafeature-label": "Kielilinkit tiivistetysti",
+ "uls-betafeature-desc": "Näytä lyhyempi versio kielilinkkilistasta, sisältäen vain kielet, jotka ovat osuvampia sinulle.",
+ "ext-uls-display-settings-title": "Näyttöasetukset",
+ "ext-uls-display-settings-language-tab": "Kieli",
+ "ext-uls-display-settings-fonts-tab": "Kirjasimet",
+ "ext-uls-display-settings-title-short": "Näyttö",
+ "ext-uls-display-settings-desc": "Aseta kieli, jota käytetään valikoissa ja kirjasimissa.",
+ "ext-uls-language-settings-title": "Kieliasetukset",
+ "ext-uls-language-settings-apply": "Käytä asetuksia",
+ "ext-uls-language-settings-cancel": "Peru",
+ "ext-uls-language-buttons-help": "Vaihda valikkojen kieli. Sisällön kieli ei muutu.",
+ "ext-uls-display-settings-font-settings": "Kirjasinasetukset",
+ "ext-uls-display-settings-ui-language": "Käyttöliittymän kieli",
+ "ext-uls-display-settings-anon-label": "Käyttöliittymän kieli:",
+ "ext-uls-display-settings-anon-same-as-content": "$1 (sama kuin sisällön)",
+ "ext-uls-display-settings-anon-log-in-cta": "[[Special:UserLogin|Kirjaudu sisään]], jos haluat valita eri kielen valikoille.",
+ "ext-uls-webfonts-settings-title": "Lataa tarvittaessa",
+ "ext-uls-webfonts-settings-info": "Lataa puuttuvat kirjasimet automaattisesti ja salli sopivimpien kirjasimien valinta.",
+ "ext-uls-webfonts-settings-info-link": "Lisätietoja",
+ "ext-uls-webfonts-select-for": "Kirjasin kielelle $1",
+ "ext-uls-webfonts-select-for-ui-info": "Käyttöliittymän kirjasin",
+ "ext-uls-webfonts-select-for-content-info": "Sisällön kirjasin",
+ "ext-uls-webfonts-system-font": "Järjestelmän kirjasin",
+ "ext-uls-back-to-display-settings": "Takaisin näyttöasetuksiin",
+ "ext-uls-input-settings-title": "Kirjoitusasetukset",
+ "ext-uls-input-settings-title-short": "Kirjoitus",
+ "ext-uls-input-settings-desc": "Kirjoittamassa toisella kielellä?",
+ "ext-uls-input-settings-ime-settings": "Syöttötavat kielelle $1",
+ "ext-uls-input-settings-ui-language": "Kirjoituksen kieli",
+ "ext-uls-back-to-input-settings": "Takaisin kirjoitusasetuksiin",
+ "ext-uls-ime-help": "Kuinka tätä käytetään",
+ "ext-uls-disable-input-method": "Käytä järjestelmän näppäimistöä",
+ "ext-uls-input-settings-more-languages-tooltip": "Lisää kieliä",
+ "jquery-ime-other-languages": "Muut kielet",
+ "jquery-ime-disable-text": "Käytä järjestelmän näppäimistöä",
+ "jquery-ime-help": "Ohje",
+ "ext-uls-input-disable": "Poista syöttötavat käytöstä",
+ "ext-uls-input-enable": "Ota syöttötavat käyttöön",
+ "ext-uls-input-disable-info": "Syöttötavat eivät ole käytössä.",
+ "ext-uls-input-settings-noime": "Tälle kielelle ei ole syöttötapoja.",
+ "ext-uls-input-disable-notification": "Syöttötavat on poistettu käytöstä",
+ "ext-uls-input-disable-notification-undo": "Kumoa",
+ "ext-uls-compact-link-count": "$1 {{PLURAL:$1|kieli|kieltä}} lisää"
+}
diff --git a/MLEB/UniversalLanguageSelector/i18n/fr.json b/MLEB/UniversalLanguageSelector/i18n/fr.json
new file mode 100644
index 00000000..8cc4df96
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/i18n/fr.json
@@ -0,0 +1,65 @@
+{
+ "@metadata": {
+ "authors": [
+ "Gomoko",
+ "Hyperborean",
+ "Ltrlg",
+ "Metroitendo",
+ "Sherbrooke",
+ "Wyz",
+ "Jgaignerot",
+ "Urhixidur"
+ ]
+ },
+ "uls-desc": "Donne à l’utilisateur plusieurs manières de sélectionner une langue et d’ajuster les paramètres de langue",
+ "uls-plang-title-languages": "Langues",
+ "ext-uls-select-language-settings-icon-tooltip": "Paramètres de langue",
+ "ext-uls-undo-language-tooltip-text": "Langue modifiée de $1",
+ "ext-uls-language-settings-preferences-link": "Plus de paramètres de langue",
+ "uls-betafeature-label": "Compacter les liens de langue",
+ "uls-betafeature-desc": "Afficher une version abrégée de la liste des langues, avec juste les langues qui vous intéressent le plus.",
+ "ext-uls-display-settings-title": "Afficher les paramètres",
+ "ext-uls-display-settings-language-tab": "Langue",
+ "ext-uls-display-settings-fonts-tab": "Polices de caractères",
+ "ext-uls-display-settings-title-short": "Affichage",
+ "ext-uls-display-settings-desc": "Définir la langue utilisée pour les menus et les polices de caractères.",
+ "ext-uls-language-settings-title": "Paramètres de langue",
+ "ext-uls-language-settings-apply": "Appliquer les paramètres",
+ "ext-uls-language-settings-cancel": "Annuler",
+ "ext-uls-language-buttons-help": "Modifier la langue des menus. La langue du contenu ne sera pas concernée.",
+ "ext-uls-display-settings-font-settings": "Paramètres de fonte",
+ "ext-uls-display-settings-ui-language": "Langue d'affichage",
+ "ext-uls-display-settings-anon-label": "Langue d'affichage :",
+ "ext-uls-display-settings-anon-same-as-content": "$1 (comme le contenu)",
+ "ext-uls-display-settings-anon-log-in-cta": "[[Special:UserLogin|Se connecter]] pour sélectionner une autre langue pour les menus.",
+ "ext-uls-webfonts-settings-title": "Télécharger les polices au besoin",
+ "ext-uls-webfonts-settings-info": "Télécharger automatiquement les polices absentes et permettre la sélection des polices préférées.",
+ "ext-uls-webfonts-settings-info-link": "Plus d’information",
+ "ext-uls-webfonts-select-for": "Sélectionner une police pour $1",
+ "ext-uls-webfonts-select-for-ui-info": "Police utilisée pour l’interface utilisateur",
+ "ext-uls-webfonts-select-for-content-info": "Police utilisée pour le contenu",
+ "ext-uls-webfonts-system-font": "Police système",
+ "ext-uls-back-to-display-settings": "Retour aux paramètres d'affichage",
+ "ext-uls-input-settings-title": "Paramètres d’entrée",
+ "ext-uls-input-settings-title-short": "Entrée",
+ "ext-uls-input-settings-desc": "Écrire dans une autre langue?",
+ "ext-uls-input-settings-ime-settings": "Méthodes de saisie pour $1",
+ "ext-uls-input-settings-ui-language": "Langue utilisée pour écrire",
+ "ext-uls-back-to-input-settings": "Retour aux paramètres de saisie",
+ "ext-uls-ime-help": "Mode d’emploi",
+ "ext-uls-disable-input-method": "Utiliser un clavier local",
+ "ext-uls-input-settings-more-languages-tooltip": "Plus de langues",
+ "jquery-ime-other-languages": "Autres langues",
+ "jquery-ime-disable-text": "Utiliser un clavier local",
+ "jquery-ime-help": "Aide",
+ "ext-uls-input-disable": "Désactiver les outils d'entrée",
+ "ext-uls-input-enable": "Activer les outils d'entrée",
+ "ext-uls-input-disable-info": "Les outils d'entrée sont désactivés.",
+ "ext-uls-input-settings-noime": "Aucune méthode de saisie n’est disponible pour cette langue.",
+ "ext-uls-input-disable-notification": "Les outils d'entrée ont été désactivés",
+ "ext-uls-input-disable-notification-undo": "Annuler",
+ "ext-uls-input-disable-notification-info-personal": "Vous pouvez activer les outils d'entrée à tout moment dans vos paramètres de langue.",
+ "ext-uls-input-disable-notification-info-interlanguage": "Vous pouvez activer les outils d'entrée à tout moment depuis les paramètres de langue à côté de la liste des langues.",
+ "ext-uls-language-settings-applying": "Application en cours…",
+ "ext-uls-compact-link-count": "{{PLURAL:$1|Une langue de plus|$1 langues de plus}}"
+}
diff --git a/MLEB/UniversalLanguageSelector/i18n/frp.json b/MLEB/UniversalLanguageSelector/i18n/frp.json
new file mode 100644
index 00000000..1d1ee15f
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/i18n/frp.json
@@ -0,0 +1,37 @@
+{
+ "@metadata": {
+ "authors": [
+ "ChrisPtDe"
+ ]
+ },
+ "ext-uls-undo-language-tooltip-text": "Lengoua changiêye dês $1",
+ "ext-uls-display-settings-title": "Configuracion de visualisacion",
+ "ext-uls-display-settings-title-short": "Visualisacion",
+ "ext-uls-display-settings-desc": "Dèfenir la lengoua empleyêye por los menus et les polices.",
+ "ext-uls-language-settings-title": "Configuracion de lengoua",
+ "ext-uls-language-settings-apply": "Aplicar la configuracion",
+ "ext-uls-language-settings-cancel": "Anular",
+ "ext-uls-display-settings-font-settings": "Configuracion de police",
+ "ext-uls-display-settings-ui-language": "Lengoua de visualisacion",
+ "ext-uls-webfonts-settings-title": "Tèlèchargiér la police quand fôt",
+ "ext-uls-webfonts-settings-info-link": "Més d’enformacions",
+ "ext-uls-webfonts-select-for": "Chouèsir la police por $1",
+ "ext-uls-webfonts-select-for-ui-info": "Police empleyêye por l’entèrface utilisator",
+ "ext-uls-webfonts-select-for-content-info": "Police empleyêye por lo contegnu",
+ "ext-uls-back-to-display-settings": "Retôrn a la configuracion de visualisacion",
+ "ext-uls-input-settings-title": "Configuracion d’entrâ",
+ "ext-uls-input-settings-title-short": "Entrâ",
+ "ext-uls-input-settings-desc": "Ècrire dens n’ôtra lengoua ?",
+ "ext-uls-input-settings-ime-settings": "Mètodes d’entrâ por $1",
+ "ext-uls-input-settings-ui-language": "Lengoua empleyêye por ècrire",
+ "ext-uls-back-to-input-settings": "Retôrn a la configuracion d’entrâ",
+ "ext-uls-disable-input-method": "Dèsactivar la mètoda d’entrâ",
+ "ext-uls-input-settings-more-languages-tooltip": "Més de lengoues",
+ "jquery-ime-other-languages": "Ôtres lengoues",
+ "jquery-ime-disable-text": "Dèsactivar la mètoda d’entrâ",
+ "jquery-ime-help": "Éde",
+ "ext-uls-input-disable": "Dèsactivar los outils de mètoda d’entrâ",
+ "ext-uls-input-enable": "Activar los outils de mètoda d’entrâ",
+ "ext-uls-input-disable-info": "Los outils de mètoda d’entrâ sont dèsactivâs.",
+ "ext-uls-input-settings-noime": "Niona mètoda d’entrâ est disponibla por ceta lengoua."
+}
diff --git a/MLEB/UniversalLanguageSelector/i18n/frr.json b/MLEB/UniversalLanguageSelector/i18n/frr.json
new file mode 100644
index 00000000..3aa5896e
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/i18n/frr.json
@@ -0,0 +1,58 @@
+{
+ "@metadata": {
+ "authors": [
+ "Murma174"
+ ]
+ },
+ "uls-desc": "Maaget det mögelk, en spriak ütjtuschüken an spriakiinstelangen tu feranrin",
+ "uls-plang-title-languages": "Spriaken",
+ "ext-uls-select-language-settings-icon-tooltip": "Spriakiinstelangen",
+ "ext-uls-undo-language-tooltip-text": "Spriak feranert faan $1",
+ "ext-uls-language-settings-preferences-link": "Muar spriakiinstelangen",
+ "uls-betafeature-label": "Tuupfaadet spriaklinks",
+ "uls-betafeature-desc": "Wiset en kurter spriakenlist mä för di wichtag spriaken.",
+ "ext-uls-display-settings-title": "Iinstelangen för't uunwisin",
+ "ext-uls-display-settings-language-tab": "Spriak",
+ "ext-uls-display-settings-fonts-tab": "Skraften",
+ "ext-uls-display-settings-title-short": "Uunwisin",
+ "ext-uls-display-settings-desc": "Spriak för menüüs an skraften iinracht.",
+ "ext-uls-language-settings-title": "Spriakiinstelangen",
+ "ext-uls-language-settings-apply": "Iinstelangen brük",
+ "ext-uls-language-settings-cancel": "Ufbreeg",
+ "ext-uls-language-buttons-help": "Feranert det menüüspriak. Spriak faan teksten woort ei feranert.",
+ "ext-uls-display-settings-font-settings": "Skraftiinstelangen",
+ "ext-uls-display-settings-ui-language": "Uunwiset spriak",
+ "ext-uls-display-settings-anon-label": "Uunwiset spriak:",
+ "ext-uls-display-settings-anon-same-as-content": "$1 (detsalew üs a teksten)",
+ "ext-uls-display-settings-anon-log-in-cta": "[[Special:UserLogin|Melde di uun]], am en ööder spriak för't menüü iintustelen.",
+ "ext-uls-webfonts-settings-title": "Skraftoorten deeloose, wan nuadag.",
+ "ext-uls-webfonts-settings-info": "Brükt skraftoorten automaatisk deelloose an en ütjwool faan skraftoorten mögelk maage.",
+ "ext-uls-webfonts-settings-info-link": "Muar diartu",
+ "ext-uls-webfonts-select-for": "Skraft för $1 ütjschük",
+ "ext-uls-webfonts-select-for-ui-info": "Skraft för di brüker-skak",
+ "ext-uls-webfonts-select-for-content-info": "Skraft för teksten",
+ "ext-uls-webfonts-system-font": "Süsteemskraft",
+ "ext-uls-back-to-display-settings": "Turag tu a iinstelangen för't uunwisin",
+ "ext-uls-input-settings-title": "Iinstelangen för't skriiwen",
+ "ext-uls-input-settings-title-short": "Skriiw",
+ "ext-uls-input-settings-desc": "Uun en ööder spriak skriiw?",
+ "ext-uls-input-settings-ime-settings": "Skriiw-muudin för $1",
+ "ext-uls-input-settings-ui-language": "Spriak för't skriiwen",
+ "ext-uls-back-to-input-settings": "Turag tu a iinstelangen för't skriiwen",
+ "ext-uls-ime-help": "Hü det gongt",
+ "ext-uls-disable-input-method": "Natiif tastatuur brük",
+ "ext-uls-input-settings-more-languages-tooltip": "Muar spriaken",
+ "jquery-ime-other-languages": "Ööder spriaken",
+ "jquery-ime-disable-text": "Natiif tastatuur brük",
+ "jquery-ime-help": "Halep",
+ "ext-uls-input-disable": "Werktjüügen tu skriiwen ei aktiwiare",
+ "ext-uls-input-enable": "Werktjüügen tu skriiwen aktiwiare",
+ "ext-uls-input-disable-info": "Werktjüügen tu skriiwen san ei aktiif.",
+ "ext-uls-input-settings-noime": "För detdiar spriak san nian ööder skriiw-muudin diar.",
+ "ext-uls-input-disable-notification": "Werktjüügen tu skriiwen san ei muar aktiif.",
+ "ext-uls-input-disable-notification-undo": "Turag",
+ "ext-uls-input-disable-notification-info-personal": "Dü könst a werktjüügen tu skriiwen tu arke tidj uun a spriakiinstelangen aktiwiare.",
+ "ext-uls-input-disable-notification-info-interlanguage": "Dü könst a werktjüügen tu skriiwen tu arke tidj uun a spriakiinstelangen üüb sidj faan det spriakenlist aktiwiare.",
+ "ext-uls-language-settings-applying": "Brüken ...",
+ "ext-uls-compact-link-count": "{{PLURAL:$1|Ian spriak muar|$1 spriaken muar}}"
+}
diff --git a/MLEB/UniversalLanguageSelector/i18n/fur.json b/MLEB/UniversalLanguageSelector/i18n/fur.json
new file mode 100644
index 00000000..df823d9b
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/i18n/fur.json
@@ -0,0 +1,18 @@
+{
+ "@metadata": {
+ "authors": [
+ "Klenje"
+ ]
+ },
+ "ext-uls-select-language-settings-icon-tooltip": "Impuestazions de lenghe",
+ "ext-uls-display-settings-language-tab": "Lenghe",
+ "ext-uls-display-settings-fonts-tab": "Caratars",
+ "ext-uls-language-settings-title": "Impuestazions de lenghe",
+ "ext-uls-language-settings-apply": "Apliche lis impuestazions",
+ "ext-uls-language-settings-cancel": "Scancele",
+ "ext-uls-display-settings-font-settings": "Impuestazions dai caratars",
+ "ext-uls-webfonts-settings-info-link": "Altris informazions",
+ "ext-uls-input-settings-more-languages-tooltip": "Altris lenghis",
+ "jquery-ime-other-languages": "Altris lenghis",
+ "jquery-ime-help": "Jutori"
+}
diff --git a/MLEB/UniversalLanguageSelector/i18n/fy.json b/MLEB/UniversalLanguageSelector/i18n/fy.json
new file mode 100644
index 00000000..e58f4ab0
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/i18n/fy.json
@@ -0,0 +1,18 @@
+{
+ "@metadata": {
+ "authors": [
+ "Kening Aldgilles",
+ "Robin0van0der0vliet"
+ ]
+ },
+ "uls-plang-title-languages": "Talen",
+ "ext-uls-display-settings-language-tab": "Taal",
+ "ext-uls-language-settings-title": "Taalynstellings",
+ "ext-uls-language-settings-apply": "Ynstellingen tapasse",
+ "ext-uls-language-settings-cancel": "Annulearje",
+ "ext-uls-display-settings-font-settings": "Lettertype ynstellingen",
+ "ext-uls-display-settings-ui-language": "Taal sjen litte",
+ "ext-uls-display-settings-anon-label": "Taal sjen litte:",
+ "ext-uls-webfonts-settings-info-link": "Mear ynformaasje",
+ "jquery-ime-help": "Help"
+}
diff --git a/MLEB/UniversalLanguageSelector/i18n/gd.json b/MLEB/UniversalLanguageSelector/i18n/gd.json
new file mode 100644
index 00000000..3d1b8958
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/i18n/gd.json
@@ -0,0 +1,58 @@
+{
+ "@metadata": {
+ "authors": [
+ "GunChleoc"
+ ]
+ },
+ "uls-desc": "Bheir seo iomadh dòigh dhan chleachdaiche gus cànan a thaghadh 's na roghainnean cànain aige a ghleusadh.",
+ "uls-plang-title-languages": "Cànain",
+ "ext-uls-select-language-settings-icon-tooltip": "Roghainnean cànain",
+ "ext-uls-undo-language-tooltip-text": "Chaidh an cànan atharrachadh o $1",
+ "ext-uls-language-settings-preferences-link": "Barrachd roghainnean cànain",
+ "uls-betafeature-label": "Ceanglaichean cànain goirid",
+ "uls-betafeature-desc": "Seall dreach as giorra de liosta nan cànan leis na cànain na tha as cudromaiche dhut a-mhàin.",
+ "ext-uls-display-settings-title": "Roghainnean an t-seallaidh",
+ "ext-uls-display-settings-language-tab": "Cànan",
+ "ext-uls-display-settings-fonts-tab": "Cruthan-clò",
+ "ext-uls-display-settings-title-short": "Sealladh",
+ "ext-uls-display-settings-desc": "Suidhich an cànan a thèid a chleachdadh airson clàran-taice 's cruthan-clò.",
+ "ext-uls-language-settings-title": "Roghainnean cànain",
+ "ext-uls-language-settings-apply": "Cuir na roghainnean an sàs",
+ "ext-uls-language-settings-cancel": "Sguir dheth",
+ "ext-uls-language-buttons-help": "Atharraich cànan nan clàran-taice. Cha bhi buaidh air cànan na susbainte.",
+ "ext-uls-display-settings-font-settings": "Roghainnean crutha-chlò",
+ "ext-uls-display-settings-ui-language": "Cànan an t-seallaidh",
+ "ext-uls-display-settings-anon-label": "Cànan an t-seallaidh:",
+ "ext-uls-display-settings-anon-same-as-content": "$1 (mar a tha an t-susbaint)",
+ "ext-uls-display-settings-anon-log-in-cta": "[[Special:UserLogin|Log a-steach]] gus cànan eadar-dhealaichte a thaghadh airson nan clàran-taice.",
+ "ext-uls-webfonts-settings-title": "Luchdaich a-nuas cruthan-clò ma tha seo a dhìth",
+ "ext-uls-webfonts-settings-info": "Luchdaich a-nuas na cruthan-clò a tha a dhìth gu fèin-obrachail agus ceadaich gun tèid annsachdan nan cruthan-clò a thaghadh.",
+ "ext-uls-webfonts-settings-info-link": "Barrachd fiosrachaidh",
+ "ext-uls-webfonts-select-for": "Tagh cruth-clò airson $1",
+ "ext-uls-webfonts-select-for-ui-info": "An cruth-clò a thèid a chleachdadh airson na h-eadar-aghaidh",
+ "ext-uls-webfonts-select-for-content-info": "An cruth-clò a thèid a chleachdadh airson na susbainte",
+ "ext-uls-webfonts-system-font": "Cruth-clò an t-siostaim",
+ "ext-uls-back-to-display-settings": "Till gu roghainnean an t-seallaidh",
+ "ext-uls-input-settings-title": "Roghainnean ion-chuir",
+ "ext-uls-input-settings-title-short": "Ion-chur",
+ "ext-uls-input-settings-desc": "A' sgrìobhadh ann an cànan eile?",
+ "ext-uls-input-settings-ime-settings": "Modhan ion-chuir airson $1",
+ "ext-uls-input-settings-ui-language": "An cànan a chleachdas tu airson sgrìobhadh",
+ "ext-uls-back-to-input-settings": "Till gu roghainnean an t-seallaidh",
+ "ext-uls-ime-help": "Mar a chleachdas tu seo",
+ "ext-uls-disable-input-method": "Cleachd am meur-chlàr tùsail",
+ "ext-uls-input-settings-more-languages-tooltip": "Barrachd chànain",
+ "jquery-ime-other-languages": "Cànain eile",
+ "jquery-ime-disable-text": "Cleachd am meur-chlàr tùsail",
+ "jquery-ime-help": "Cobhair",
+ "ext-uls-input-disable": "Cuir na h-innealan ion-chuir à comas",
+ "ext-uls-input-enable": "Cuir na h-innealan ion-chuir an comas",
+ "ext-uls-input-disable-info": "Tha na h-innealan ion-chuir à comas",
+ "ext-uls-input-settings-noime": "chan eil modh ion-chuir ri fhaighinn airson a' chànain seo.",
+ "ext-uls-input-disable-notification": "Chaidh na h-innealan ion-chuir a chur à comas",
+ "ext-uls-input-disable-notification-undo": "Neo-dhèan",
+ "ext-uls-input-disable-notification-info-personal": "'S urrainn dhut na h-innealan ion-chuir a chur an comas uair sam bith o na roghainnean cànain.",
+ "ext-uls-input-disable-notification-info-interlanguage": "'S urrainn dhut na h-innealan ion-chuir a chur an comas uair sam bith o na roghainnean cànain ri taobh liosta nan cànan.",
+ "ext-uls-language-settings-applying": "'Ga chur an sàs...",
+ "ext-uls-compact-link-count": "$1 {{PLURAL:$1|chànan|chànan|cànain|cànan}} a bharrachd"
+}
diff --git a/MLEB/UniversalLanguageSelector/i18n/gl.json b/MLEB/UniversalLanguageSelector/i18n/gl.json
new file mode 100644
index 00000000..1663b9d4
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/i18n/gl.json
@@ -0,0 +1,59 @@
+{
+ "@metadata": {
+ "authors": [
+ "Toliño",
+ "Nemo bis"
+ ]
+ },
+ "uls-desc": "Dá ao usuario varios xeitos de seleccionar unha lingua e de axustar as preferencias da mesma",
+ "uls-plang-title-languages": "Linguas",
+ "ext-uls-select-language-settings-icon-tooltip": "Opcións de lingua",
+ "ext-uls-undo-language-tooltip-text": "A lingua cambiou desde o $1",
+ "ext-uls-language-settings-preferences-link": "Máis opcións de lingua",
+ "uls-betafeature-label": "Ligazóns lingüísticas compactas",
+ "uls-betafeature-desc": "Mostrar unha versión máis curta da lista de linguas, unicamente coas linguas máis relevantes para vostede.",
+ "ext-uls-display-settings-title": "Opcións de visualización",
+ "ext-uls-display-settings-language-tab": "Lingua",
+ "ext-uls-display-settings-fonts-tab": "Tipos de letra",
+ "ext-uls-display-settings-title-short": "Visualización",
+ "ext-uls-display-settings-desc": "Establecer a lingua usada nos menús e os tipos de letra.",
+ "ext-uls-language-settings-title": "Opcións de lingua",
+ "ext-uls-language-settings-apply": "Aplicar a configuración",
+ "ext-uls-language-settings-cancel": "Cancelar",
+ "ext-uls-language-buttons-help": "Modificar a lingua dos menús. A lingua do contido non se verá afectada.",
+ "ext-uls-display-settings-font-settings": "Opcións do tipo de letra",
+ "ext-uls-display-settings-ui-language": "Lingua da interface",
+ "ext-uls-display-settings-anon-label": "Lingua da interface:",
+ "ext-uls-display-settings-anon-same-as-content": "$1 (como o contido)",
+ "ext-uls-display-settings-anon-log-in-cta": "[[Special:UserLogin|Acceda ao sistema]] para seleccionar unha lingua diferente para os menús.",
+ "ext-uls-webfonts-settings-title": "Descargar os tipos de letra se fose necesario",
+ "ext-uls-webfonts-settings-info": "Descargar automaticamente os tipos de letra que faltan e permitir a selección dos tipos de letra preferidos.",
+ "ext-uls-webfonts-settings-info-link": "Máis información",
+ "ext-uls-webfonts-select-for": "Seleccione o tipo de letra para o $1",
+ "ext-uls-webfonts-select-for-ui-info": "Tipo de letra usado para a interface de usuario",
+ "ext-uls-webfonts-select-for-content-info": "Tipo de letra usado para o contido",
+ "ext-uls-webfonts-system-font": "Tipo de letra do sistema",
+ "ext-uls-back-to-display-settings": "Volver ás opcións de visualización",
+ "ext-uls-input-settings-title": "Opcións de entrada",
+ "ext-uls-input-settings-title-short": "Entrada",
+ "ext-uls-input-settings-desc": "Escribe nunha lingua diferente?",
+ "ext-uls-input-settings-ime-settings": "Métodos de entrada para o $1",
+ "ext-uls-input-settings-ui-language": "Lingua usada para escribir",
+ "ext-uls-back-to-input-settings": "Volver ás opcións de entrada",
+ "ext-uls-ime-help": "Como usalo",
+ "ext-uls-disable-input-method": "Usar o teclado nativo",
+ "ext-uls-input-settings-more-languages-tooltip": "Máis linguas",
+ "jquery-ime-other-languages": "Outras linguas",
+ "jquery-ime-disable-text": "Usar o teclado nativo",
+ "jquery-ime-help": "Axuda",
+ "ext-uls-input-disable": "Desactivar as ferramentas de entrada",
+ "ext-uls-input-enable": "Activar as ferramentas de entrada",
+ "ext-uls-input-disable-info": "As ferramentas de entrada están desactivadas.",
+ "ext-uls-input-settings-noime": "Non hai ningún método de entrada para esta lingua.",
+ "ext-uls-input-disable-notification": "As ferramentas de entrada foron desactivadas",
+ "ext-uls-input-disable-notification-undo": "Desfacer",
+ "ext-uls-input-disable-notification-info-personal": "Pode activar as ferramentas de entrada en calquera momento desde as opcións de lingua.",
+ "ext-uls-input-disable-notification-info-interlanguage": "Pode activar as ferramentas de entrada en calquera momento desde as opcións de lingua, ao carón da lista de linguas.",
+ "ext-uls-language-settings-applying": "Aplicando...",
+ "ext-uls-compact-link-count": "{{PLURAL:$1|Unha lingua máis|$1 linguas máis}}"
+}
diff --git a/MLEB/UniversalLanguageSelector/i18n/gom-latn.json b/MLEB/UniversalLanguageSelector/i18n/gom-latn.json
new file mode 100644
index 00000000..800206e0
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/i18n/gom-latn.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "The Discoverer"
+ ]
+ },
+ "uls-plang-title-languages": "Bhaso"
+}
diff --git a/MLEB/UniversalLanguageSelector/i18n/gom.json b/MLEB/UniversalLanguageSelector/i18n/gom.json
new file mode 100644
index 00000000..800206e0
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/i18n/gom.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "The Discoverer"
+ ]
+ },
+ "uls-plang-title-languages": "Bhaso"
+}
diff --git a/MLEB/UniversalLanguageSelector/i18n/gu.json b/MLEB/UniversalLanguageSelector/i18n/gu.json
new file mode 100644
index 00000000..10aac8e1
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/i18n/gu.json
@@ -0,0 +1,59 @@
+{
+ "@metadata": {
+ "authors": [
+ "Ashok modhvadia",
+ "KartikMistry"
+ ]
+ },
+ "uls-desc": "સભ્યને ભાષા પસંદગી અને ગોઠવણીઓ માટેનાં અનેક માર્ગો પૂરા પાડે છે",
+ "uls-plang-title-languages": "ભાષાઓ",
+ "ext-uls-select-language-settings-icon-tooltip": "ભાષા ગોઠવણીઓ",
+ "ext-uls-undo-language-tooltip-text": "$1 માંથી ભાષા બદલવામાં આવી",
+ "ext-uls-language-settings-preferences-link": "વધુ ભાષા ગોઠવણીઓ",
+ "uls-betafeature-label": "ટૂંકી ભાષા કડીઓ",
+ "uls-betafeature-desc": "તમને સંબંધિત ભાષાઓની જ, ભાષા કડીઓનું ટૂંકી આવૃત્તિ દર્શાવે છે.",
+ "ext-uls-display-settings-title": "દેખાવ ગોઠવણીઓ",
+ "ext-uls-display-settings-language-tab": "ભાષા",
+ "ext-uls-display-settings-fonts-tab": "ફોન્ટ્સ",
+ "ext-uls-display-settings-title-short": "દેખાવ",
+ "ext-uls-display-settings-desc": "મેનુઓ અને ફોન્ટ્સ માટે વપરાયેલ ભાષા પસંદ કરો.",
+ "ext-uls-language-settings-title": "ભાષા ગોઠવણીઓ",
+ "ext-uls-language-settings-apply": "ગોઠવણીઓ લાગુ કરો",
+ "ext-uls-language-settings-cancel": "રદ કરો",
+ "ext-uls-language-buttons-help": "મેનુઓની ભાષા બદલો. વિગતોની ભાષા બદલાશે નહી.",
+ "ext-uls-display-settings-font-settings": "ફોન્ટ ગોઠવણીઓ",
+ "ext-uls-display-settings-ui-language": "ભાષા દર્શાવો",
+ "ext-uls-display-settings-anon-label": "ભાષા દર્શાવો:",
+ "ext-uls-display-settings-anon-same-as-content": "$1 (વિગતની જેમ જ)",
+ "ext-uls-display-settings-anon-log-in-cta": "મેનુઓ માટે બીજી ભાષા પસંદ કરવા માટે [[Special:UserLogin|પ્રવેશ કરો]].",
+ "ext-uls-webfonts-settings-title": "જ્યારે જરુર હોય ત્યારે ફોન્ટ ડાઉનલોડ કરો",
+ "ext-uls-webfonts-settings-info": "ખૂટતાં ફોન્ટ્સ આપમેળે ડાઉનલોડ કરો અને માનીતા ફોન્ટ્સની પસંદગી કરવા દો.",
+ "ext-uls-webfonts-settings-info-link": "વધુ માહિતી",
+ "ext-uls-webfonts-select-for": "$1 માટે ફોન્ટ પસંદ કરો",
+ "ext-uls-webfonts-select-for-ui-info": "સભ્ય દેખાવ માટે વપરાયેલ ફોન્ટ",
+ "ext-uls-webfonts-select-for-content-info": "વિગતો માટે વપરાયેલ ફોન્ટ",
+ "ext-uls-webfonts-system-font": "સિસ્ટમ ફોન્ટ",
+ "ext-uls-back-to-display-settings": "દેખાવ ગોઠવણીઓ પર પાછા જાવ",
+ "ext-uls-input-settings-title": "ઇનપુટ ગોઠવણીઓ",
+ "ext-uls-input-settings-title-short": "ઇનપુટ",
+ "ext-uls-input-settings-desc": "બીજી ભાષામાં લખી રહ્યા છો?",
+ "ext-uls-input-settings-ime-settings": "$1 માટે ઇનપુટ પધ્ધતિઓ",
+ "ext-uls-input-settings-ui-language": "લખવા માટે વપરાયેલ ભાષા",
+ "ext-uls-back-to-input-settings": "ઇનપુટ ગોઠવણીઓ પર પાછા જાવ",
+ "ext-uls-ime-help": "કેવી રીતે વાપરવું",
+ "ext-uls-disable-input-method": "પોતાનું કીબોર્ડ વાપરો",
+ "ext-uls-input-settings-more-languages-tooltip": "વધુ ભાષાઓ",
+ "jquery-ime-other-languages": "અન્ય ભાષાઓ",
+ "jquery-ime-disable-text": "પોતાનું કીબોર્ડ વાપરો",
+ "jquery-ime-help": "મદદ",
+ "ext-uls-input-disable": "ઇનપુટ સાધનો નિષ્ક્રિય કરો",
+ "ext-uls-input-enable": "ઇનપુટ સાધનો સક્રિય કરો",
+ "ext-uls-input-disable-info": "ઇનપુટ સાધનો નિષ્ક્રિય છે.",
+ "ext-uls-input-settings-noime": "આ ભાષા માટે કોઇપણ ઇનપુટ પધ્ધતિઓ પ્રાપ્ત નથી.",
+ "ext-uls-input-disable-notification": "ઇનપુટ સાધનો નિષ્ક્રિય કરેલ છે",
+ "ext-uls-input-disable-notification-undo": "રદ કરો",
+ "ext-uls-input-disable-notification-info-personal": "ભાષા ગોઠવણીઓ વડે તમે ગમે તે સમયે ઇનપુટ સાધનો સક્રિય કરી શકો છો.",
+ "ext-uls-input-disable-notification-info-interlanguage": "ભાષા યાદીની બાજુ પર આવેલ ભાષા ગોઠવણીઓ વડે તમે ગમે તે સમયે ઇનપુટ સાધનો સક્રિય કરી શકો છો.",
+ "ext-uls-language-settings-applying": "લાગુ પાડે છે...",
+ "ext-uls-compact-link-count": "{{PLURAL:$1|વધુ એક ભાષા|વધુ $1 ભાષાઓ}}"
+}
diff --git a/MLEB/UniversalLanguageSelector/i18n/gv.json b/MLEB/UniversalLanguageSelector/i18n/gv.json
new file mode 100644
index 00000000..467eeb09
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/i18n/gv.json
@@ -0,0 +1,13 @@
+{
+ "@metadata": {
+ "authors": [
+ "Danielquayle"
+ ]
+ },
+ "ext-uls-select-language-settings-icon-tooltip": "Soieaghyn çhengey",
+ "ext-uls-undo-language-tooltip-text": "Çhengey caghlaait voish $1",
+ "ext-uls-display-settings-language-tab": "Çhengey",
+ "ext-uls-display-settings-fonts-tab": "Aghtyn clouscreeu",
+ "ext-uls-display-settings-title-short": "Taishbyney",
+ "ext-uls-language-settings-title": "Soieaghyn çhengey"
+}
diff --git a/MLEB/UniversalLanguageSelector/i18n/he.json b/MLEB/UniversalLanguageSelector/i18n/he.json
new file mode 100644
index 00000000..9519bc07
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/i18n/he.json
@@ -0,0 +1,63 @@
+{
+ "@metadata": {
+ "message-documentation": "qqq",
+ "authors": [
+ "Amire80",
+ "Yona b",
+ "Guycn2"
+ ]
+ },
+ "uls-desc": "נותן למשתמשים מספר דרכים לבחור שפה ולכוונן את הגדרות השפה",
+ "uls-plang-title-languages": "שפות",
+ "ext-uls-select-language-settings-icon-tooltip": "הגדרות שפה",
+ "ext-uls-undo-language-tooltip-text": "השפה השתנתה מ{{GRAMMAR:תחילית|$1}}",
+ "ext-uls-language-settings-preferences-link": "הגדרות שפה נוספות",
+ "uls-betafeature-label": "רשימת קישורי שפה מקוצרת",
+ "uls-betafeature-desc": "הצגת גרסה מקוצרת של רשימת השפות, רק עם השפות שרלוונטיות לך.",
+ "ext-uls-display-settings-title": "הגדרות תצוגה",
+ "ext-uls-display-settings-language-tab": "שפה",
+ "ext-uls-display-settings-fonts-tab": "גופנים",
+ "ext-uls-display-settings-title-short": "תצוגה",
+ "ext-uls-display-settings-desc": "בחירת שפה לתפריטים.",
+ "ext-uls-language-settings-title": "הגדרות שפה",
+ "ext-uls-language-settings-apply": "החלת שינויים",
+ "ext-uls-language-settings-cancel": "ביטול",
+ "ext-uls-language-buttons-help": "שינוי שפת התפריטים. שפת התוכן לא תשתנה.",
+ "ext-uls-display-settings-font-settings": "הגדרות גופנים",
+ "ext-uls-display-settings-ui-language": "שפת התצוגה",
+ "ext-uls-display-settings-anon-label": "שפת תצוגה:",
+ "ext-uls-display-settings-anon-same-as-content": "$1 (כמו שפת התוכן)",
+ "ext-uls-display-settings-anon-log-in-cta": "יש [[Special:UserLogin|להיכנס לחשבון]] כדי לבחור שפה אחרת עבור תפריטים.",
+ "ext-uls-webfonts-settings-title": "הורדת גופן כשזה נחוץ",
+ "ext-uls-webfonts-settings-info": "הורדת גופנים באופן אוטומטי ובחירת הגופן המועדף.",
+ "ext-uls-webfonts-settings-info-link": "מידע נוסף",
+ "ext-uls-webfonts-select-for": "בחירת גופן עבור $1",
+ "ext-uls-webfonts-select-for-ui-info": "גופן לממשק משתמש",
+ "ext-uls-webfonts-select-for-content-info": "גופן לתוכן",
+ "ext-uls-webfonts-system-font": "גופן המערכת",
+ "ext-uls-back-to-display-settings": "חזרה להגדרות תצוגה",
+ "ext-uls-input-settings-title": "הגדרות קלט",
+ "ext-uls-input-settings-title-short": "קלט",
+ "ext-uls-input-settings-desc": "כתיבה בשפה אחרת",
+ "ext-uls-input-settings-ime-settings": "פריסות מקלדות עבור $1",
+ "ext-uls-input-settings-ui-language": "שפות לכתיבה",
+ "ext-uls-back-to-input-settings": "חזרה להגדרות קלט",
+ "ext-uls-ime-help": "איך להשתמש בזה",
+ "ext-uls-disable-input-method": "להשתמש במקלדת המובנית",
+ "ext-uls-input-settings-more-languages-tooltip": "עוד שפות",
+ "jquery-ime-other-languages": "שפות אחרות",
+ "jquery-ime-disable-text": "להשתמש במקלדת המובנית",
+ "jquery-ime-help": "עזרה",
+ "ext-uls-input-disable": "כיבוי כלי קלט",
+ "ext-uls-input-enable": "הפעלת כלי קלט",
+ "ext-uls-input-disable-info": "כלי הקלט כבויים.",
+ "ext-uls-input-settings-noime": "לא הוגדרו פריסות מקלדת לשפה הזאת.",
+ "ext-uls-input-disable-notification": "כלי הקלט כובו",
+ "ext-uls-input-disable-notification-undo": "ביטול",
+ "ext-uls-input-disable-notification-info-personal": "באפשרותך להפעיל את כלי הקלט בכל זמן מהגדרות השפה.",
+ "ext-uls-input-disable-notification-info-interlanguage": "באפשרותך להפעיל את כלי הקלט בכל זמן מהגדרות השפה שליד רשימת השפות.",
+ "ext-uls-language-settings-applying": "החלה...",
+ "ext-uls-compact-link-count": "עוד {{PLURAL:$1|שפה אחת|$1 שפות}}",
+ "apihelp-ulslocalization-example-1": "קבלת תרגום לטמילית",
+ "apihelp-ulslocalization-example-2": "קבלת תרגום להינדי"
+}
diff --git a/MLEB/UniversalLanguageSelector/i18n/hi.json b/MLEB/UniversalLanguageSelector/i18n/hi.json
new file mode 100644
index 00000000..c63ba56a
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/i18n/hi.json
@@ -0,0 +1,61 @@
+{
+ "@metadata": {
+ "authors": [
+ "Siddhartha Ghai",
+ "Vdhatterwal",
+ "Vivek Rai",
+ "Goelujjwal"
+ ]
+ },
+ "uls-desc": "सदस्य को भाषा चुनने और भाषा विकल्प बदलने के कई तरीके देता है",
+ "uls-plang-title-languages": "भाषाएँ",
+ "ext-uls-select-language-settings-icon-tooltip": "भाषा विकल्प",
+ "ext-uls-undo-language-tooltip-text": "भाषा $1 से बदली गयी",
+ "ext-uls-language-settings-preferences-link": "अधिक भाषा विकल्प",
+ "uls-betafeature-label": "संक्षिप्त भाषा कड़ियाँ",
+ "uls-betafeature-desc": "संक्षिप्त भाषा सूची दिखाएँ, केवल उन भाषाओं के साथ जो आपसे सम्बद्ध हों।",
+ "ext-uls-display-settings-title": "दृश्यता विकल्प",
+ "ext-uls-display-settings-language-tab": "भाषा",
+ "ext-uls-display-settings-fonts-tab": "टंकन (फ़ॉण्ट)",
+ "ext-uls-display-settings-title-short": "प्रदर्शन",
+ "ext-uls-display-settings-desc": "मेन्यू और फ़ॉण्ट में प्रयोग हेतु भाषा सेट करें",
+ "ext-uls-language-settings-title": "भाषा विकल्प",
+ "ext-uls-language-settings-apply": "सेटिंग लागू करें",
+ "ext-uls-language-settings-cancel": "रद्द करें",
+ "ext-uls-language-buttons-help": "मेन्यू की भाषा बदलें। सामग्री की भाषा पर असर नहीं पड़ेगा।",
+ "ext-uls-display-settings-font-settings": "टंकन विकल्प",
+ "ext-uls-display-settings-ui-language": "प्रदर्शन भाषा",
+ "ext-uls-display-settings-anon-label": "प्रदर्शन भाषा:",
+ "ext-uls-display-settings-anon-same-as-content": "$1 (सामग्री के समान)",
+ "ext-uls-display-settings-anon-log-in-cta": "मेन्यू में किसी अन्य भाषा का चुनाव करने के लिए [[Special:UserLogin|लॉग इन]] करें।",
+ "ext-uls-webfonts-settings-title": "ज़रूरत अनुसार फ़ॉण्ट डाउनलोड करें",
+ "ext-uls-webfonts-settings-info": "जो फ़ॉण्ट मौजूद नहीं हैं स्वचालित रूप से डाउनलोड करें और पसंद अनुसार फ़ॉण्ट चुनने का विकल्प दें।",
+ "ext-uls-webfonts-settings-info-link": "अधिक जानकारी",
+ "ext-uls-webfonts-select-for": "$1 के लिये फ़ॉण्ट चुनें",
+ "ext-uls-webfonts-select-for-ui-info": "अंतरफल के लिये प्रयुक्त फ़ॉण्ट",
+ "ext-uls-webfonts-select-for-content-info": "सामग्री के लिये प्रयुक्त फ़ॉण्ट",
+ "ext-uls-webfonts-system-font": "सिस्टम फ़ॉण्ट",
+ "ext-uls-back-to-display-settings": "प्रदर्शन विकल्प में वापिस जायें",
+ "ext-uls-input-settings-title": "इनपुट विकल्प",
+ "ext-uls-input-settings-title-short": "इनपुट",
+ "ext-uls-input-settings-desc": "किसी अन्य भाषा में लिखना है?",
+ "ext-uls-input-settings-ime-settings": "$1 के लिये इनपुट विधियाँ",
+ "ext-uls-input-settings-ui-language": "लेखन में प्रयुक्त भाषा",
+ "ext-uls-back-to-input-settings": "इनपुट विकल्प में वापिस जायें",
+ "ext-uls-ime-help": "प्रयोग कैसे करें",
+ "ext-uls-disable-input-method": "डिवाइस का कुंजीपटल प्रयोग करें",
+ "ext-uls-input-settings-more-languages-tooltip": "अधिक भाषाएँ",
+ "jquery-ime-other-languages": "अन्य भाषाएँ",
+ "jquery-ime-disable-text": "डिवाइस का कुंजीपटल प्रयोग करें",
+ "jquery-ime-help": "सहायता",
+ "ext-uls-input-disable": "इनपुट उपकरण अक्षम करें",
+ "ext-uls-input-enable": "इनपुट उपकरण सक्षम करें",
+ "ext-uls-input-disable-info": "इनपुट उपकरण अक्षम हैं।",
+ "ext-uls-input-settings-noime": "इस भाषा के लिए कोई इनपुट विधियाँ उपलब्ध नहीं हैं।",
+ "ext-uls-input-disable-notification": "इनपुट उपकरण को अक्षम किया गया है",
+ "ext-uls-input-disable-notification-undo": "पूर्ववत करें",
+ "ext-uls-input-disable-notification-info-personal": "आप किसी भी समय भाषा विकल्प में से इनपुट उपकरण सक्षम कर सकते हैं।",
+ "ext-uls-input-disable-notification-info-interlanguage": "आप किसी भी समय भाषा सूची के साथ स्थित भाषा विकल्प में से इनपुट उपकरण सक्षम कर सकते हैं।",
+ "ext-uls-language-settings-applying": "लागू हो रहा है...",
+ "ext-uls-compact-link-count": "{{PLURAL:$1|एक और भाषा|$1 और भाषाएँ}}"
+}
diff --git a/MLEB/UniversalLanguageSelector/i18n/hr.json b/MLEB/UniversalLanguageSelector/i18n/hr.json
new file mode 100644
index 00000000..7801345b
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/i18n/hr.json
@@ -0,0 +1,58 @@
+{
+ "@metadata": {
+ "authors": [
+ "Roberta F.",
+ "SpeedyGonsales",
+ "MaGa"
+ ]
+ },
+ "uls-plang-title-languages": "Jezične postavke",
+ "ext-uls-select-language-settings-icon-tooltip": "Jezične postavke",
+ "ext-uls-undo-language-tooltip-text": "Jezik promijenjen, prethodno je bio postavljen $1",
+ "ext-uls-language-settings-preferences-link": "Više jezičnih postavki",
+ "uls-betafeature-label": "Sažete poveznice na druge jezike",
+ "uls-betafeature-desc": "Kraći popis s poveznicama na druge jezike, samo s jezicima koji su Vam najvažniji.",
+ "ext-uls-display-settings-title": "Prikaži postavke",
+ "ext-uls-display-settings-language-tab": "Jezik",
+ "ext-uls-display-settings-fonts-tab": "Fontovi",
+ "ext-uls-display-settings-title-short": "Prikaz",
+ "ext-uls-display-settings-desc": "Postavi jezik koji će se rabiti za izbornike i fontove",
+ "ext-uls-language-settings-title": "Jezične postavke",
+ "ext-uls-language-settings-apply": "Primijeni postavke",
+ "ext-uls-language-settings-cancel": "Odustani",
+ "ext-uls-language-buttons-help": "Promijenite jezik izbornika. Jezik sadržaja ne će biti promijenjen.",
+ "ext-uls-display-settings-font-settings": "Postavke fonta (ili fontova)",
+ "ext-uls-display-settings-ui-language": "Prikaži jezik",
+ "ext-uls-display-settings-anon-label": "Prikaži jezik:",
+ "ext-uls-display-settings-anon-same-as-content": "Hrvatski (isto kao sadržaj)",
+ "ext-uls-display-settings-anon-log-in-cta": "[[Special:UserLogin|Prijavi se]] za odabir različitih jezika u izborniku.",
+ "ext-uls-webfonts-settings-title": "Preuzimanje fontova po potrebi",
+ "ext-uls-webfonts-settings-info": "Automatsko preuzimanje fontova koji nedostaju i omogućavanje odabira preferiranih fontova.",
+ "ext-uls-webfonts-settings-info-link": "Više informacija",
+ "ext-uls-webfonts-select-for": "Odaberi font za $1",
+ "ext-uls-webfonts-select-for-ui-info": "Odabrani font za suradničko sučelje",
+ "ext-uls-webfonts-select-for-content-info": "Odabrani font za sadržaj",
+ "ext-uls-webfonts-system-font": "Sustavni font",
+ "ext-uls-back-to-display-settings": "Povratak na prikaz postavki",
+ "ext-uls-input-settings-title": "Upis postavki",
+ "ext-uls-input-settings-title-short": "Unos",
+ "ext-uls-input-settings-desc": "Želite li pisati na drugom jeziku?",
+ "ext-uls-input-settings-ime-settings": "Način unosa za $1",
+ "ext-uls-input-settings-ui-language": "Primijenjeni jezik za pisanje",
+ "ext-uls-back-to-input-settings": "Povratak na unos postavki",
+ "ext-uls-disable-input-method": "Rabi sustavnu tipkovnicu",
+ "ext-uls-input-settings-more-languages-tooltip": "{{PLURAL:$1|Još jedan jezik|Još $1 druga jezika|Još $1 drugih jezika}}",
+ "jquery-ime-other-languages": "Drugi jezici",
+ "jquery-ime-disable-text": "Rabi sustavnu tipkovnicu",
+ "jquery-ime-help": "Pomoć",
+ "ext-uls-input-disable": "Onemogući alate za unos",
+ "ext-uls-input-enable": "Omogući alate za unos",
+ "ext-uls-input-disable-info": "Onemogućeni su alati za unos.",
+ "ext-uls-input-settings-noime": "Za ovaj jezik načini unosa nisu na raspolaganju.",
+ "ext-uls-input-disable-notification": "Alati za unos bili su onemogućeni.",
+ "ext-uls-input-disable-notification-undo": "Vrati",
+ "ext-uls-input-disable-notification-info-personal": "Alate za unos možete u svakome trenutku omogućiti u jezičnim postavkama.",
+ "ext-uls-input-disable-notification-info-interlanguage": "Alate za unos možete u svakom trenutku omogućiti u jezičnim postavkama pored jezičnog popisa.",
+ "ext-uls-language-settings-applying": "Primjenjujem...",
+ "ext-uls-compact-link-count": "{{PLURAL:$1|Još jedan jezik|Još $1 druga jezika|Još $1 drugih jezika}}"
+}
diff --git a/MLEB/UniversalLanguageSelector/i18n/hsb.json b/MLEB/UniversalLanguageSelector/i18n/hsb.json
new file mode 100644
index 00000000..5c91da15
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/i18n/hsb.json
@@ -0,0 +1,58 @@
+{
+ "@metadata": {
+ "authors": [
+ "Michawiki"
+ ]
+ },
+ "uls-desc": "Dawa wužiwarjej wšelake metody, zo by rěč wubrał a rěčne nastajenja přiměrił",
+ "uls-plang-title-languages": "Rěče",
+ "ext-uls-select-language-settings-icon-tooltip": "Rěčne nastajenja",
+ "ext-uls-undo-language-tooltip-text": "Rěč $1 změnjena",
+ "ext-uls-language-settings-preferences-link": "Dalše rěčne nastajenja",
+ "uls-betafeature-label": "Kompaktne mjezyrěčne wotkazy",
+ "uls-betafeature-desc": "Krótšu wersiju rěčneje lisćiny pokazać, z jenož tymi rěčemi, kotrež su relewantne za tebje.",
+ "ext-uls-display-settings-title": "Nastajenja za zwobraznjenje",
+ "ext-uls-display-settings-language-tab": "Rěč",
+ "ext-uls-display-settings-fonts-tab": "Pisma",
+ "ext-uls-display-settings-title-short": "Zwobraznić",
+ "ext-uls-display-settings-desc": "Rěč za menije a pisma postajić",
+ "ext-uls-language-settings-title": "Rěčne nastajenja",
+ "ext-uls-language-settings-apply": "Nastajenja nałožić",
+ "ext-uls-language-settings-cancel": "Přetorhnyć",
+ "ext-uls-language-buttons-help": "Rěč menijow změnić. Rěč wobsaha so njezměni.",
+ "ext-uls-display-settings-font-settings": "Pismowe nastajenja",
+ "ext-uls-display-settings-ui-language": "Rěč za zwobraznjenje",
+ "ext-uls-display-settings-anon-label": "Rěč za zwobraznjenje:",
+ "ext-uls-display-settings-anon-same-as-content": "$1 (kaž wobsah)",
+ "ext-uls-display-settings-anon-log-in-cta": "[[Special:UserLogin|Přizjew so]], zo by druhu rěč za menije wubrał.",
+ "ext-uls-webfonts-settings-title": "Pisma sćahnyć, jeli trěbne",
+ "ext-uls-webfonts-settings-info": "Falowace pisma awtomatisce sćahnyć a wuběranje preferowanych pismow zmóžnić.",
+ "ext-uls-webfonts-settings-info-link": "Dalše informacije",
+ "ext-uls-webfonts-select-for": "Wubjer pismo za $1",
+ "ext-uls-webfonts-select-for-ui-info": "Pismo za wužiwarski powjerch",
+ "ext-uls-webfonts-select-for-content-info": "Pismo za wobsah",
+ "ext-uls-webfonts-system-font": "Systemowe pismo",
+ "ext-uls-back-to-display-settings": "Wróćo k nastajenjam zwobraznjenja",
+ "ext-uls-input-settings-title": "Nastajenja za zapodaće",
+ "ext-uls-input-settings-title-short": "Zapodaće",
+ "ext-uls-input-settings-desc": "W druhej rěči pisać?",
+ "ext-uls-input-settings-ime-settings": "Zapodawanske metody za $1",
+ "ext-uls-input-settings-ui-language": "Rěč, kotraž so za pisanje wužiwa",
+ "ext-uls-back-to-input-settings": "Wróćo k nastajenjam za zapodaće",
+ "ext-uls-ime-help": "Pokiwy za wužiwanje",
+ "ext-uls-disable-input-method": "Poprawnu tastaturu wužiwać",
+ "ext-uls-input-settings-more-languages-tooltip": "Dalše rěče",
+ "jquery-ime-other-languages": "Druhe rěče",
+ "jquery-ime-disable-text": "Poprawnu tastaturu wužiwać",
+ "jquery-ime-help": "Pomoc",
+ "ext-uls-input-disable": "Zapodawanske nastroje znjemóžnić",
+ "ext-uls-input-enable": "Zapodawanske nastroje zmóžnić",
+ "ext-uls-input-disable-info": "Zapodawanske nastroje su znjemóžnjene.",
+ "ext-uls-input-settings-noime": "Za tutu rěč žane zapodawanske metody k dispoziciji njesteja.",
+ "ext-uls-input-disable-notification": "Zapodawanske nastroje su so znjemóžnili",
+ "ext-uls-input-disable-notification-undo": "Cofnyć",
+ "ext-uls-input-disable-notification-info-personal": "Móžeš zapodawanske nastroje kóždy čas z rěčnych nastajenjow zmóžnić.",
+ "ext-uls-input-disable-notification-info-interlanguage": "Móžeš zapodawanske nastroje kóždy čas z rěčnych nastajenjow pódla lisćiny rěčow zmóžnić.",
+ "ext-uls-language-settings-applying": "Nałožuje so...",
+ "ext-uls-compact-link-count": "{{PLURAL:$1Jedna dalša rěč|$1 dalšej rěči|$1 dalše rěče|$1 dalšich rěčow}}"
+}
diff --git a/MLEB/UniversalLanguageSelector/i18n/hu.json b/MLEB/UniversalLanguageSelector/i18n/hu.json
new file mode 100644
index 00000000..0f09b5e3
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/i18n/hu.json
@@ -0,0 +1,58 @@
+{
+ "@metadata": {
+ "authors": [
+ "R-Joe",
+ "Tgr",
+ "BáthoryPéter",
+ "Tacsipacsi",
+ "Dorgan"
+ ]
+ },
+ "uls-plang-title-languages": "Nyelvek",
+ "ext-uls-select-language-settings-icon-tooltip": "Nyelvi beállítások",
+ "ext-uls-undo-language-tooltip-text": "A nyelv megváltozott erről: $1",
+ "ext-uls-language-settings-preferences-link": "További nyelvi beállítások",
+ "uls-betafeature-label": "Rövidített interwiki lista",
+ "uls-betafeature-desc": "Egy rövidebb változatát mutatja a nyelvi hivatkozások listájának, csak a számodra fontosabb nyelvekkel.",
+ "ext-uls-display-settings-title": "Megjelenítési beállítások",
+ "ext-uls-display-settings-language-tab": "Nyelv",
+ "ext-uls-display-settings-fonts-tab": "Betűkészletek",
+ "ext-uls-display-settings-title-short": "Megjelenítés",
+ "ext-uls-display-settings-desc": "A menükben és a betűkészlet kiválasztásához használt nyelv megadása",
+ "ext-uls-language-settings-title": "Nyelvi beállítások",
+ "ext-uls-language-settings-apply": "Beállítások alkalmazása",
+ "ext-uls-language-settings-cancel": "Mégsem",
+ "ext-uls-language-buttons-help": "Menük nyelvének módosítása. A tartalom nyelve nem fog változni.",
+ "ext-uls-display-settings-font-settings": "Betűtípus beállítások",
+ "ext-uls-display-settings-ui-language": "Megjelenítési nyelv",
+ "ext-uls-display-settings-anon-label": "Megjelenítési nyelv:",
+ "ext-uls-display-settings-anon-same-as-content": "$1 (ugyanaz, mint a tartalom)",
+ "ext-uls-display-settings-anon-log-in-cta": "A menük nyelvének megváltoztatásához [[Special:UserLogin|jelentkezz be]]",
+ "ext-uls-webfonts-settings-title": "Töltse le a hiányzó betűkészleteket",
+ "ext-uls-webfonts-settings-info-link": "További információk",
+ "ext-uls-webfonts-select-for": "Betűtípus kiválasztása ehhez: $1",
+ "ext-uls-webfonts-select-for-ui-info": "A felhasználói felülethez használt betűtípus",
+ "ext-uls-webfonts-select-for-content-info": "A tartalomhoz használt betűtípus",
+ "ext-uls-webfonts-system-font": "Rendszer-betűtípus",
+ "ext-uls-back-to-display-settings": "Vissza a megjelenítési beállításokhoz",
+ "ext-uls-input-settings-title": "Beviteli beállítások",
+ "ext-uls-input-settings-title-short": "Bevitel",
+ "ext-uls-input-settings-desc": "Más nyelven írsz?",
+ "ext-uls-input-settings-ime-settings": "Beviteli módok a következőhöz: $1",
+ "ext-uls-input-settings-ui-language": "Íráshoz használt nyelv",
+ "ext-uls-back-to-input-settings": "Vissza a beviteli beállításokhoz",
+ "ext-uls-ime-help": "Használati útmutató",
+ "ext-uls-input-settings-more-languages-tooltip": "További nyelvek",
+ "jquery-ime-other-languages": "További nyelvek",
+ "jquery-ime-help": "Súgó",
+ "ext-uls-input-disable": "Beviteli eszközök letiltása",
+ "ext-uls-input-enable": "Beviteli eszközök engedélyezése",
+ "ext-uls-input-disable-info": "A beviteli eszközök le vannak tiltva.",
+ "ext-uls-input-settings-noime": "Beviteli módszerek nem állnak rendelkezésre ezen a nyelven.",
+ "ext-uls-input-disable-notification": "A beviteli eszközök le lettek tiltva",
+ "ext-uls-input-disable-notification-undo": "Visszavonás",
+ "ext-uls-input-disable-notification-info-personal": "Bármikor engedélyezheted a beviteli eszközöket a nyelvi beállításaid között.",
+ "ext-uls-input-disable-notification-info-interlanguage": "Bármikor engedélyezheted a beviteli eszközöket a nyelvi beállításaid között, a nyelvközi hivatkozások között.",
+ "ext-uls-language-settings-applying": "Alkalmazás…",
+ "ext-uls-compact-link-count": "{{PLURAL:$1|Egy további nyelv|$1 további nyelv}}"
+}
diff --git a/MLEB/UniversalLanguageSelector/i18n/hy.json b/MLEB/UniversalLanguageSelector/i18n/hy.json
new file mode 100644
index 00000000..585f00f1
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/i18n/hy.json
@@ -0,0 +1,52 @@
+{
+ "@metadata": {
+ "authors": [
+ "M hamlet",
+ "Xelgen"
+ ]
+ },
+ "uls-desc": "Օգտագործողին թույլ է տալիս մի քանի եղանակաով ընտրել լեզուներ և լեզվական կարգավորումներ",
+ "uls-plang-title-languages": "Լեզուներ",
+ "ext-uls-select-language-settings-icon-tooltip": "Լեզվական կարգավորումներ",
+ "ext-uls-undo-language-tooltip-text": "Լեզուն փոխվել է $1ից։",
+ "ext-uls-language-settings-preferences-link": "Հավելյալ լեզվական կարգավորումներ։",
+ "ext-uls-display-settings-language-tab": "Լեզու",
+ "ext-uls-display-settings-fonts-tab": "Տառատեսակներ",
+ "ext-uls-display-settings-title-short": "Ցուցադրել",
+ "ext-uls-display-settings-desc": "Միջներեսի և տառատեսակների լեզուն։",
+ "ext-uls-language-settings-title": "Լեզվական կարգավորումներ",
+ "ext-uls-language-settings-apply": "Կիրառել կարգավորումները։",
+ "ext-uls-language-settings-cancel": "Չեղարկել",
+ "ext-uls-language-buttons-help": "Փոխել կայքի միջերեսի լեզուն։ Կայքի բովանդակության լեզուն չի փոխվի։",
+ "ext-uls-display-settings-font-settings": "Տառատեսակի կարգավորումներ",
+ "ext-uls-display-settings-ui-language": "Ցուցադրման լեզու",
+ "ext-uls-display-settings-anon-label": "Ցուցադրման լեզու․",
+ "ext-uls-display-settings-anon-same-as-content": "Հայերեն (նույնը ինչ բովանդակությունը)",
+ "ext-uls-display-settings-anon-log-in-cta": "[[Special:UserLogin|Մուտք գործեք]] միջերեսի այլ լեզու ընտրելու համար։",
+ "ext-uls-webfonts-select-for": "Ընտրեք $1ի տառատեսակը",
+ "ext-uls-webfonts-select-for-ui-info": "Միջերեսի համար օգտագործվող տառատեսակը",
+ "ext-uls-webfonts-select-for-content-info": "Պարունակության տառատեսակ",
+ "ext-uls-webfonts-system-font": "Ձեր համակարգչի տառատեսակներ",
+ "ext-uls-back-to-display-settings": "Հետ դեպի ցուցադրման կարգավորումներ",
+ "ext-uls-input-settings-title": "Ներածման կարգավորումներ",
+ "ext-uls-input-settings-title-short": "Ներածում",
+ "ext-uls-input-settings-desc": "Գրում եք ա՞յլ լեզվով։",
+ "ext-uls-input-settings-ime-settings": "Ստեղնաշարեր $1ի համար",
+ "ext-uls-input-settings-ui-language": "Գրելու համար օգտագործվող լեզու",
+ "ext-uls-back-to-input-settings": "Հետ դեպի ներածման կարգավորումներ",
+ "ext-uls-ime-help": "Օգնություն",
+ "ext-uls-disable-input-method": "Ձեր համակարգչի ստեղնաշար",
+ "ext-uls-input-settings-more-languages-tooltip": "Այլ լեզուներ",
+ "jquery-ime-other-languages": "Այլ լեզուներ",
+ "jquery-ime-disable-text": "Ձեր համակարգչի ստեղնաշար",
+ "jquery-ime-help": "Օգնություն",
+ "ext-uls-input-disable": "Անջատել ներածման գործիքը",
+ "ext-uls-input-enable": "Միացնել ներածման գործիքը",
+ "ext-uls-input-disable-info": "Ներածման գործիքը անջատված է",
+ "ext-uls-input-settings-noime": "Այս լեզվի համար ստեղնաշար չկա։",
+ "ext-uls-input-disable-notification": "Ներածման գործիքները անջատվել են։",
+ "ext-uls-input-disable-notification-undo": "Հետարկել",
+ "ext-uls-input-disable-notification-info-personal": "Դուք ցանկացած պահին կարող եք միացնել ներածման գործիքները, լեզվական կարգավորումներից։",
+ "ext-uls-input-disable-notification-info-interlanguage": "Դուք ցանկացած պահին կարող եք միացնել ներածման գործիքները լեզվական կարգավորումներում, լեզուների ցանկի կողքը։",
+ "ext-uls-language-settings-applying": "Կիրառում․․․"
+}
diff --git a/MLEB/UniversalLanguageSelector/i18n/ia.json b/MLEB/UniversalLanguageSelector/i18n/ia.json
new file mode 100644
index 00000000..38a57892
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/i18n/ia.json
@@ -0,0 +1,55 @@
+{
+ "@metadata": {
+ "authors": [
+ "McDutchie"
+ ]
+ },
+ "uls-desc": "Da al usator plure manieras de seliger un lingua e adjustar le configuration de lingua",
+ "uls-plang-title-languages": "Linguas",
+ "ext-uls-select-language-settings-icon-tooltip": "Configuration de lingua",
+ "ext-uls-undo-language-tooltip-text": "Lingua cambiate ab $1",
+ "ext-uls-language-settings-preferences-link": "Altere parametros de lingua",
+ "ext-uls-display-settings-title": "Optiones de visualisation",
+ "ext-uls-display-settings-language-tab": "Lingua",
+ "ext-uls-display-settings-fonts-tab": "Typos de litteras",
+ "ext-uls-display-settings-title-short": "Visualisation",
+ "ext-uls-display-settings-desc": "Definir le lingua usate pro menus e typos de litteras.",
+ "ext-uls-language-settings-title": "Configuration de lingua",
+ "ext-uls-language-settings-apply": "Applicar configuration",
+ "ext-uls-language-settings-cancel": "Cancellar",
+ "ext-uls-language-buttons-help": "Cambia le lingua de menus. Le lingua de contento non essera cambiate.",
+ "ext-uls-display-settings-font-settings": "Configuration de typo de litteras",
+ "ext-uls-display-settings-ui-language": "Lingua del interfacie",
+ "ext-uls-display-settings-anon-label": "Lingua del interfacie:",
+ "ext-uls-display-settings-anon-same-as-content": "$1 (como le contento)",
+ "ext-uls-display-settings-anon-log-in-cta": "[[Special:UserLogin|Aperi session]] pro seliger un altere lingua pro le menus.",
+ "ext-uls-webfonts-settings-title": "Discargar typos de litteras quando necessari",
+ "ext-uls-webfonts-settings-info": "Discargar automaticamente le typos de litteras mancante e permitter le selection de typos de litteras preferite.",
+ "ext-uls-webfonts-settings-info-link": "Plus information",
+ "ext-uls-webfonts-select-for": "Selige typo de litteras pro $1",
+ "ext-uls-webfonts-select-for-ui-info": "Typo de litteras usate pro le interfacie de usator",
+ "ext-uls-webfonts-select-for-content-info": "Typo de litteras usate pro le contento",
+ "ext-uls-webfonts-system-font": "Typo de litteras del systema",
+ "ext-uls-back-to-display-settings": "Retornar al optiones de visualisation",
+ "ext-uls-input-settings-title": "Optiones de entrata",
+ "ext-uls-input-settings-title-short": "Entrata",
+ "ext-uls-input-settings-desc": "Scriber in un altere lingua?",
+ "ext-uls-input-settings-ime-settings": "Methodos de entrata pro $1",
+ "ext-uls-input-settings-ui-language": "Lingua usate pro scriber",
+ "ext-uls-back-to-input-settings": "Retornar al optiones de entrata",
+ "ext-uls-ime-help": "Como usar",
+ "ext-uls-disable-input-method": "Usar claviero native",
+ "ext-uls-input-settings-more-languages-tooltip": "Plus linguas",
+ "jquery-ime-other-languages": "Altere linguas",
+ "jquery-ime-disable-text": "Usar claviero native",
+ "jquery-ime-help": "Adjuta",
+ "ext-uls-input-disable": "Disactivar instrumentos de entrata",
+ "ext-uls-input-enable": "Activar instrumentos de entrata",
+ "ext-uls-input-disable-info": "Le instrumentos de entrata es disactivate.",
+ "ext-uls-input-settings-noime": "Nulle instrumento de entrata es disponibile pro iste lingua.",
+ "ext-uls-input-disable-notification": "Le instrumentos de entrata ha essite disactivate",
+ "ext-uls-input-disable-notification-undo": "Disfacer",
+ "ext-uls-input-disable-notification-info-personal": "Tu pote activar le instrumentos de entrata a omne momento in le configuration de lingua.",
+ "ext-uls-input-disable-notification-info-interlanguage": "Tu pote activar le instrumentos de entrata a omne momento in le configuration de lingua al latere del lista de linguas.",
+ "ext-uls-language-settings-applying": "Applica..."
+}
diff --git a/MLEB/UniversalLanguageSelector/i18n/id.json b/MLEB/UniversalLanguageSelector/i18n/id.json
new file mode 100644
index 00000000..a962a042
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/i18n/id.json
@@ -0,0 +1,56 @@
+{
+ "@metadata": {
+ "authors": [
+ "Farras",
+ "Iwan Novirion",
+ "පසිඳු කාවින්ද"
+ ]
+ },
+ "uls-desc": "Memberikan pengguna beberapa cara untuk memilih bahasa dan menyesuaikan pengaturan bahasa",
+ "uls-plang-title-languages": "Bahasa",
+ "ext-uls-select-language-settings-icon-tooltip": "Setelan bahasa",
+ "ext-uls-undo-language-tooltip-text": "Bahasa berubah dari $1",
+ "ext-uls-language-settings-preferences-link": "Pengaturan bahasa lanjutan",
+ "ext-uls-display-settings-title": "Setelan tampilan",
+ "ext-uls-display-settings-language-tab": "Bahasa",
+ "ext-uls-display-settings-fonts-tab": "Huruf",
+ "ext-uls-display-settings-title-short": "Tampilan",
+ "ext-uls-display-settings-desc": "Pengaturan bahasa untuk menu dan huruf",
+ "ext-uls-language-settings-title": "Setelan bahasa",
+ "ext-uls-language-settings-apply": "Terapkan setelan",
+ "ext-uls-language-settings-cancel": "Batalkan",
+ "ext-uls-language-buttons-help": "Mengubah bahasa menu. Bahasa konten tidak akan terpengaruh.",
+ "ext-uls-display-settings-font-settings": "Setelan huruf",
+ "ext-uls-display-settings-ui-language": "Tampilan bahasa",
+ "ext-uls-display-settings-anon-label": "Tampilan bahasa:",
+ "ext-uls-display-settings-anon-same-as-content": "Inggris (sama seperti konten)",
+ "ext-uls-display-settings-anon-log-in-cta": "[[Special:UserLogin|Masuk log]] guna memilih bahasa yang berbeda untuk menu.",
+ "ext-uls-webfonts-settings-title": "Unduh huruf bila diperlukan.",
+ "ext-uls-webfonts-settings-info": "Huruf web akan diunduh untuk menampilkan teks pada skrip khusus.",
+ "ext-uls-webfonts-settings-info-link": "Informasi lebih lanjut",
+ "ext-uls-webfonts-select-for": "Pilih huruf untuk $1",
+ "ext-uls-webfonts-select-for-ui-info": "Huruf yang digunakan untuk antarmuka pengguna",
+ "ext-uls-webfonts-select-for-content-info": "Huruf yang digunakan untuk konten",
+ "ext-uls-webfonts-system-font": "Huruf sistem",
+ "ext-uls-back-to-display-settings": "Kembali ke setelan tampilan",
+ "ext-uls-input-settings-title": "Setelan masukan",
+ "ext-uls-input-settings-title-short": "Masukan",
+ "ext-uls-input-settings-desc": "Menulis dalam bahasa yang berbeda?",
+ "ext-uls-input-settings-ime-settings": "Metode masukan untuk $1",
+ "ext-uls-input-settings-ui-language": "Bahasa yang digunakan untuk menulis",
+ "ext-uls-back-to-input-settings": "Kembali ke setelan masukan",
+ "ext-uls-ime-help": "Cara menggunakan",
+ "ext-uls-disable-input-method": "Gunakan keyboard standar",
+ "ext-uls-input-settings-more-languages-tooltip": "Lebih banyak bahasa",
+ "jquery-ime-other-languages": "Bahasa-bahasa lain",
+ "jquery-ime-disable-text": "Gunakan keyboard standar",
+ "jquery-ime-help": "Bantuan",
+ "ext-uls-input-disable": "Nonaktifkan perkakas input",
+ "ext-uls-input-enable": "Aktifkan perkakas input",
+ "ext-uls-input-disable-info": "Perkakas input nonaktif.",
+ "ext-uls-input-settings-noime": "Metode masukan tidak tersedia untuk bahasa ini.",
+ "ext-uls-input-disable-notification": "Perangkat input dinonaktifkan",
+ "ext-uls-input-disable-notification-undo": "Batal",
+ "ext-uls-input-disable-notification-info-personal": "Anda dapat mengaktifkan perangkat input setiap saat dari pengaturan bahasa.",
+ "ext-uls-input-disable-notification-info-interlanguage": "Anda dapat mengaktifkan perangkat input setiap saat dari pengaturan bahasa di sebelah daftar bahasa."
+}
diff --git a/MLEB/UniversalLanguageSelector/i18n/ilo.json b/MLEB/UniversalLanguageSelector/i18n/ilo.json
new file mode 100644
index 00000000..32a35c9c
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/i18n/ilo.json
@@ -0,0 +1,68 @@
+{
+ "@metadata": {
+ "authors": [
+ "Lam-ang"
+ ]
+ },
+ "uls-desc": "Mangited iti agar-aramat kadagiti nadumaduma a pamay-an iti panagpili ti maysa a pagsasao ken ti panagbaliw kadagiti pannakaisaad ti pagsasao",
+ "uls-plang-title-languages": "Dagiti pagsasao",
+ "ext-uls-select-language-settings-icon-tooltip": "Dagiti pannakaisaad ti pagsasao",
+ "ext-uls-undo-language-tooltip-text": "Binaliwan ti pagsasao manipud ti $1",
+ "ext-uls-language-settings-preferences-link": "Adu pay a pannakaisaad ti pagsasao",
+ "uls-betafeature-label": "Kompakto a silsilpo ti pagsasao",
+ "uls-betafeature-desc": "Ipakita ti ababa a bersion ti listaan ti pagsasao, ken dagiti laeng pagsasao a maitunos kaniam.",
+ "ext-uls-display-settings-title": "Idaya dagiti pannakaisaad",
+ "ext-uls-display-settings-language-tab": "Pagsasao",
+ "ext-uls-display-settings-fonts-tab": "Kita ti letletra",
+ "ext-uls-display-settings-title-short": "Idaya",
+ "ext-uls-display-settings-desc": "Isaad ti pagsasao nga inus-usar para kadagiti pagpilian ken letletra.",
+ "ext-uls-language-settings-title": "Dagiti pannakaisaad ti pagsasao",
+ "ext-uls-language-settings-apply": "Ipakat dagiti pannakaisaad",
+ "ext-uls-language-settings-cancel": "Ukasen",
+ "ext-uls-language-buttons-help": "Baliwan ti pagsasao dagiti pagpilian. Ti pagsasao ti linaon ket saanto a maaringan.",
+ "ext-uls-display-settings-font-settings": "Dagiti pannakaisaad ti letra",
+ "ext-uls-display-settings-ui-language": "Idaya ti pagsasao",
+ "ext-uls-display-settings-anon-label": "Idaya ti pagsasao:",
+ "ext-uls-display-settings-anon-same-as-content": "$1 (kapada ti linaon)",
+ "ext-uls-display-settings-anon-log-in-cta": "[[Special:UserLogin|Sumrek]] tapno makapili ti sabali a pagsasao para kadagiti pagpilian.",
+ "ext-uls-webfonts-settings-title": "Agikarga kadagiti kita ti letra no masapul",
+ "ext-uls-webfonts-settings-info": "Ti panangikarga kadagiti awan a kita ti letra ket automatiko ken mangipalubos iti panagpili kadagiti kaykayat a kita ti letra.",
+ "ext-uls-webfonts-settings-info-link": "Adu pay a pakaammo",
+ "ext-uls-webfonts-select-for": "Agpili iti letra para iti $1",
+ "ext-uls-webfonts-select-for-ui-info": "Letra nga inus-usar para iti interface ti agar-aramat",
+ "ext-uls-webfonts-select-for-content-info": "Letra nga inus-sar para iti linaon",
+ "ext-uls-webfonts-system-font": "Letra ti sistema",
+ "ext-uls-back-to-display-settings": "Agsubli kadagiti pannakaisaad ti panagidaya",
+ "ext-uls-input-settings-title": "Dagiti pannakaisaad ti ikabil",
+ "ext-uls-input-settings-title-short": "Ti ikabil",
+ "ext-uls-input-settings-desc": "Agsursuratka iti sabali a pagsasao?",
+ "ext-uls-input-settings-ime-settings": "Dagiti ikabil a pamay-an para iti $1",
+ "ext-uls-input-settings-ui-language": "Pagsasao nga inus-usar para iti panagsurat",
+ "ext-uls-back-to-input-settings": "Agsubli kadagiti pannakaisaad ti ikabil",
+ "ext-uls-ime-help": "Kasano ti agusar",
+ "ext-uls-disable-input-method": "Agusar iti patneng a teklado",
+ "ext-uls-input-settings-more-languages-tooltip": "Dagiti adu pay a pagsasao",
+ "jquery-ime-other-languages": "Dagiti sabali a pagsasao",
+ "jquery-ime-disable-text": "Agusar iti patneng a teklado",
+ "jquery-ime-help": "Tulong",
+ "ext-uls-input-disable": "Ibaldado dagiti ramit ti ikabil",
+ "ext-uls-input-enable": "Pakabaelan dagiti ramit ti ikabil",
+ "ext-uls-input-disable-info": "Dagiti ramit ti ikabil ket nabaldadon.",
+ "ext-uls-input-settings-noime": "Awan dagiti pamay-an ti ikabil ti mabalin a magun-od para iti daytoy a pagsasao.",
+ "ext-uls-input-disable-notification": "Dagiti ramit ti ikabil ket nabaldadon.",
+ "ext-uls-input-disable-notification-undo": "Ibabawi",
+ "ext-uls-input-disable-notification-info-personal": "Mabalinmo a pakabaelan dagiti ramit ti ikabil iti aniaman a panawen manipud kadagiti pannakaisaad ti pagsasao.",
+ "ext-uls-input-disable-notification-info-interlanguage": "Mabalinmo a pakabaelan dagiti ramit ti ikabil manipud kadagiti pannakaisaad ti pagsasao idiay kaabay ti listaan ti pagsasao.",
+ "ext-uls-language-settings-applying": "Ipakpakat...",
+ "ext-uls-compact-link-count": "{{PLURAL:$1|Maysa pay a pagsasao|$1 pay kadagiti pagsasao}}",
+ "apihelp-languagesearch-description": "Agbiruk kadagiti nagan ti pagsasao iti ania man nga eskritu.",
+ "apihelp-languagesearch-param-search": "Kuerdas ti panagbiruk.",
+ "apihelp-languagesearch-param-typos": "Bilang dagiti kamali ti panangiletra a maipalubos iti kuerdas ti panagbiruk.",
+ "apihelp-languagesearch-example-1": "Agbiruk para iti \"Te\"",
+ "apihelp-languagesearch-example-2": "Agbiruk para iti \"ഫി\"",
+ "apihelp-languagesearch-example-3": "Agbiruk para iti \"ഫി\", a mangipalubos iti maysa a kamali",
+ "apihelp-ulslocalization-description": "Alaen ti lokalisasion ti ULS iti naited a pagsasao.",
+ "apihelp-ulslocalization-param-language": "Kuerdas ti pagsasao.",
+ "apihelp-ulslocalization-example-1": "Alaen ti lokalisasion ti Tamil",
+ "apihelp-ulslocalization-example-2": "Alaen ti lokalisasion ti Hindi"
+}
diff --git a/MLEB/UniversalLanguageSelector/i18n/it.json b/MLEB/UniversalLanguageSelector/i18n/it.json
new file mode 100644
index 00000000..ce5daa91
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/i18n/it.json
@@ -0,0 +1,61 @@
+{
+ "@metadata": {
+ "authors": [
+ "Beta16",
+ "Raoli",
+ "Darth Kule",
+ "Nemo bis"
+ ]
+ },
+ "uls-desc": "Fornisce agli utenti diversi modi di selezionare una lingua e sistemare le impostazioni della lingua",
+ "uls-plang-title-languages": "Lingue",
+ "ext-uls-select-language-settings-icon-tooltip": "Impostazioni per la lingua",
+ "ext-uls-undo-language-tooltip-text": "Lingua modificata da $1",
+ "ext-uls-language-settings-preferences-link": "Ulteriori impostazioni per la lingua",
+ "uls-betafeature-label": "Interwiki compatti",
+ "uls-betafeature-desc": "Mostra una versione ridotta dell'elenco degli interwiki, cioè i collegamenti alle lingue nelle quali una pagina è disponibile, limitata a quelle più rilevanti per te.",
+ "ext-uls-display-settings-title": "Impostazioni di visualizzazione",
+ "ext-uls-display-settings-language-tab": "Lingua",
+ "ext-uls-display-settings-fonts-tab": "Tipi di carattere",
+ "ext-uls-display-settings-title-short": "Lettura",
+ "ext-uls-display-settings-desc": "Imposta la lingua usata per menù e caratteri.",
+ "ext-uls-language-settings-title": "Impostazioni per la lingua",
+ "ext-uls-language-settings-apply": "Applica impostazioni",
+ "ext-uls-language-settings-cancel": "Annulla",
+ "ext-uls-language-buttons-help": "Cambia la lingua dei menu. La lingua dei contenuti non sarà modificata.",
+ "ext-uls-display-settings-font-settings": "Impostazioni per tipo di caratteri",
+ "ext-uls-display-settings-ui-language": "Lingua di visualizzazione",
+ "ext-uls-display-settings-anon-label": "Lingua di visualizzazione:",
+ "ext-uls-display-settings-anon-same-as-content": "$1 (come il contenuto)",
+ "ext-uls-display-settings-anon-log-in-cta": "[[Special:UserLogin|Accedi]] per selezionare una lingua diversa per i menu.",
+ "ext-uls-webfonts-settings-title": "Scarica i tipi di carattere quando necessario",
+ "ext-uls-webfonts-settings-info": "Scarica automaticamente i font mancanti e consente la selezione dei tipi di carattere preferiti.",
+ "ext-uls-webfonts-settings-info-link": "Ulteriori informazioni",
+ "ext-uls-webfonts-select-for": "Seleziona tipo di carattere per $1",
+ "ext-uls-webfonts-select-for-ui-info": "Tipo di carattere usato per l'interfaccia utente",
+ "ext-uls-webfonts-select-for-content-info": "Tipo di carattere usato per il contenuto",
+ "ext-uls-webfonts-system-font": "Font di sistema",
+ "ext-uls-back-to-display-settings": "Ritorna alle impostazioni di visualizzazione",
+ "ext-uls-input-settings-title": "Impostazioni di scrittura",
+ "ext-uls-input-settings-title-short": "Scrittura",
+ "ext-uls-input-settings-desc": "Scrivi in una lingua diversa?",
+ "ext-uls-input-settings-ime-settings": "Metodi di scrittura per $1",
+ "ext-uls-input-settings-ui-language": "Lingua usata per la scrittura",
+ "ext-uls-back-to-input-settings": "Ritorna alle impostazioni di scrittura",
+ "ext-uls-ime-help": "Come usarlo",
+ "ext-uls-disable-input-method": "Utilizza la tastiera nativa",
+ "ext-uls-input-settings-more-languages-tooltip": "Altre lingue",
+ "jquery-ime-other-languages": "Altre lingue",
+ "jquery-ime-disable-text": "Utilizza la tastiera nativa",
+ "jquery-ime-help": "Aiuto",
+ "ext-uls-input-disable": "Disabilita gli strumenti di scrittura",
+ "ext-uls-input-enable": "Abilita gli strumenti di scrittura",
+ "ext-uls-input-disable-info": "Gli strumenti di scrittura sono disabilitati.",
+ "ext-uls-input-settings-noime": "Nessun metodo di scrittura è disponibile per questa lingua.",
+ "ext-uls-input-disable-notification": "Gli strumenti di scrittura sono stati disabilitati",
+ "ext-uls-input-disable-notification-undo": "Annulla",
+ "ext-uls-input-disable-notification-info-personal": "È possibile attivare in qualsiasi momento gli strumenti di scrittura dalle impostazioni della lingua.",
+ "ext-uls-input-disable-notification-info-interlanguage": "È possibile attivare in qualsiasi momento gli strumenti di scrittura dalle impostazioni della lingua, vicino all'elenco delle lingue.",
+ "ext-uls-language-settings-applying": "Applicando...",
+ "ext-uls-compact-link-count": "{{PLURAL:$1|Un'altra lingua|Altre $1 lingue}}"
+}
diff --git a/MLEB/UniversalLanguageSelector/i18n/ja.json b/MLEB/UniversalLanguageSelector/i18n/ja.json
new file mode 100644
index 00000000..8cb66e89
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/i18n/ja.json
@@ -0,0 +1,59 @@
+{
+ "@metadata": {
+ "authors": [
+ "Fryed-peach",
+ "Shirayuki"
+ ]
+ },
+ "uls-desc": "言語を選択するため/言語設定を調整するための、いくつかの方法を利用者に提供する",
+ "uls-plang-title-languages": "言語",
+ "ext-uls-select-language-settings-icon-tooltip": "言語の設定",
+ "ext-uls-undo-language-tooltip-text": "言語を$1から変更しました。",
+ "ext-uls-language-settings-preferences-link": "言語のその他の設定",
+ "uls-betafeature-label": "言語リンクを短縮",
+ "uls-betafeature-desc": "他言語リストを短くし、あなたに関係がある言語だけ表示するようにする。",
+ "ext-uls-display-settings-title": "表示設定",
+ "ext-uls-display-settings-language-tab": "言語",
+ "ext-uls-display-settings-fonts-tab": "フォント",
+ "ext-uls-display-settings-title-short": "表示",
+ "ext-uls-display-settings-desc": "メニューで使用する言語やフォントを設定します。",
+ "ext-uls-language-settings-title": "言語の設定",
+ "ext-uls-language-settings-apply": "設定を適用",
+ "ext-uls-language-settings-cancel": "キャンセル",
+ "ext-uls-language-buttons-help": "メニューの言語を変更します。本文の言語には影響しません。",
+ "ext-uls-display-settings-font-settings": "フォントの設定",
+ "ext-uls-display-settings-ui-language": "表示言語",
+ "ext-uls-display-settings-anon-label": "表示言語:",
+ "ext-uls-display-settings-anon-same-as-content": "$1 (本文と同じ)",
+ "ext-uls-display-settings-anon-log-in-cta": "メニューを他の言語で表示するには[[Special:UserLogin|ログイン]]してください。",
+ "ext-uls-webfonts-settings-title": "フォントが必要な際にダウンロードする",
+ "ext-uls-webfonts-settings-info": "不足しているフォントを自動的にダウンロードして、適切なフォントを選択できるようにします。",
+ "ext-uls-webfonts-settings-info-link": "詳細情報",
+ "ext-uls-webfonts-select-for": "$1用のフォントの選択",
+ "ext-uls-webfonts-select-for-ui-info": "ユーザーインターフェイスに使用するフォント",
+ "ext-uls-webfonts-select-for-content-info": "本文に使用するフォント",
+ "ext-uls-webfonts-system-font": "システム フォント",
+ "ext-uls-back-to-display-settings": "表示設定に戻る",
+ "ext-uls-input-settings-title": "入力設定",
+ "ext-uls-input-settings-title-short": "入力",
+ "ext-uls-input-settings-desc": "別の言語で入力しますか?",
+ "ext-uls-input-settings-ime-settings": "$1の入力メソッド",
+ "ext-uls-input-settings-ui-language": "入力に使用する言語",
+ "ext-uls-back-to-input-settings": "入力設定に戻る",
+ "ext-uls-ime-help": "使用法",
+ "ext-uls-disable-input-method": "ネイティブ キーボードを使用",
+ "ext-uls-input-settings-more-languages-tooltip": "その他の言語",
+ "jquery-ime-other-languages": "他の言語",
+ "jquery-ime-disable-text": "ネイティブ キーボードを使用",
+ "jquery-ime-help": "ヘルプ",
+ "ext-uls-input-disable": "入力ツールを無効化",
+ "ext-uls-input-enable": "入力ツールを有効化",
+ "ext-uls-input-disable-info": "入力ツールは無効になっています。",
+ "ext-uls-input-settings-noime": "この言語で利用できる入力メソッドはありません。",
+ "ext-uls-input-disable-notification": "入力ツールを無効にしました",
+ "ext-uls-input-disable-notification-undo": "取り消す",
+ "ext-uls-input-disable-notification-info-personal": "言語の設定で、いつでも入力ツールを有効にできます。",
+ "ext-uls-input-disable-notification-info-interlanguage": "言語一覧の隣にある言語の設定で、いつでも入力ツールを有効にできます。",
+ "ext-uls-language-settings-applying": "適用しています...",
+ "ext-uls-compact-link-count": "{{PLURAL:$1|他 $1 言語}}"
+}
diff --git a/MLEB/UniversalLanguageSelector/i18n/ka.json b/MLEB/UniversalLanguageSelector/i18n/ka.json
new file mode 100644
index 00000000..94a33273
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/i18n/ka.json
@@ -0,0 +1,56 @@
+{
+ "@metadata": {
+ "authors": [
+ "David1010",
+ "Tokoko",
+ "Otogi",
+ "გიორგიმელა"
+ ]
+ },
+ "uls-desc": "აძლევს მომხმარებელს ენის არჩევისა და კონფიგურაციის საშუალებას",
+ "uls-plang-title-languages": "ენები",
+ "ext-uls-select-language-settings-icon-tooltip": "ენის პარამეტრები",
+ "ext-uls-undo-language-tooltip-text": "წინა ენა: $1",
+ "ext-uls-language-settings-preferences-link": "მეტი ენის პარამეტრები",
+ "uls-betafeature-label": "ენის კომპაქტური ბმულები",
+ "uls-betafeature-desc": "აჩვენებს საერთაშორისო ბმულების შემოკლებულ ვარიანტს; ჩანს მხოლოდ თქვენთვის უფრო შესაბამისი ენათშორისი ბმულები.",
+ "ext-uls-display-settings-title": "ჩვენების პარამეტრები",
+ "ext-uls-display-settings-language-tab": "ენა",
+ "ext-uls-display-settings-fonts-tab": "შრიფტები",
+ "ext-uls-display-settings-title-short": "ჩვენება",
+ "ext-uls-display-settings-desc": "მენიუსა და შრიფტების ენა.",
+ "ext-uls-language-settings-title": "ენის პარამეტრები",
+ "ext-uls-language-settings-apply": "პარამეტრების გამოყენება",
+ "ext-uls-language-settings-cancel": "გაუქმება",
+ "ext-uls-language-buttons-help": "მენიუს ენის შეცვლა. შინაარსის ენა არ შეიცვლება.",
+ "ext-uls-display-settings-font-settings": "შრიფტის პარამეტრები",
+ "ext-uls-display-settings-ui-language": "ნაჩვენები ენა",
+ "ext-uls-display-settings-anon-label": "ნაჩვენები ენა:",
+ "ext-uls-display-settings-anon-same-as-content": "$1 (შინაარსის მსგავსი)",
+ "ext-uls-display-settings-anon-log-in-cta": "[[Special:UserLogin|შედით სისტემაში]] რათა მენიუს სხვა ენა აირჩიოთ.",
+ "ext-uls-webfonts-settings-title": "შრიფტის გადმოწერა საჭიროების შემთხვევაში",
+ "ext-uls-webfonts-settings-info": "შრიფტები ჩამოიტვირთება სპეციალური ნაწერების საჩვენებლად.",
+ "ext-uls-webfonts-settings-info-link": "მეტი ინფორმაცია",
+ "ext-uls-webfonts-select-for": "$1-თვის შრიფტის არჩევა",
+ "ext-uls-webfonts-select-for-ui-info": "მომხმარებლის ინტერფეისის შრიფტი",
+ "ext-uls-webfonts-select-for-content-info": "ტექსტის შრიფტი",
+ "ext-uls-webfonts-system-font": "სისტემური შრიფტი",
+ "ext-uls-back-to-display-settings": "ჩვენების პარამეტრებზე დაბრუნება",
+ "ext-uls-input-settings-title": "შეყვანის პარამეტრები",
+ "ext-uls-input-settings-title-short": "შეყვანა",
+ "ext-uls-input-settings-desc": "სხვა ენაზე წერა?",
+ "ext-uls-input-settings-ime-settings": "წერის მეთოდები $1-თვის",
+ "ext-uls-input-settings-ui-language": "წერის ენა",
+ "ext-uls-back-to-input-settings": "შეყვანის პარამეტრებზე დაბრუნება",
+ "ext-uls-ime-help": "როგორ გამოვიყენო",
+ "ext-uls-disable-input-method": "მშობლიური კლავიატურის გამოყენება",
+ "ext-uls-input-settings-more-languages-tooltip": "მეტი ენა",
+ "jquery-ime-other-languages": "სხვა ენები",
+ "jquery-ime-disable-text": "მშობლიური კლავიატურის გამოყენება",
+ "jquery-ime-help": "დახმარება",
+ "ext-uls-input-disable": "საწერი ხელსაწყოების გამორთვა",
+ "ext-uls-input-enable": "საწერი ხელწასყოების ჩართვა",
+ "ext-uls-input-disable-info": "საწერი ხელსაწყოები გამორთულია.",
+ "ext-uls-input-settings-noime": "წერის მეთოდები ამ ენისათვის არ არის განსაზღვრული.",
+ "ext-uls-input-disable-notification-undo": "დაბრუნება"
+}
diff --git a/MLEB/UniversalLanguageSelector/i18n/kk-cyrl.json b/MLEB/UniversalLanguageSelector/i18n/kk-cyrl.json
new file mode 100644
index 00000000..7f61f31f
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/i18n/kk-cyrl.json
@@ -0,0 +1,56 @@
+{
+ "@metadata": {
+ "authors": [
+ "Arystanbek"
+ ]
+ },
+ "uls-plang-title-languages": "Тілдер",
+ "ext-uls-select-language-settings-icon-tooltip": "Тіл баптаулары",
+ "ext-uls-undo-language-tooltip-text": "$1 дегеннен тіл өзгертілді",
+ "ext-uls-language-settings-preferences-link": "Қосымша тіл баптаулары",
+ "uls-betafeature-label": "Тіл сілтемелерін ықшамдау",
+ "uls-betafeature-desc": "Тіл тізімін қысқа нұқсада көрсетеді",
+ "ext-uls-display-settings-title": "Көрініс баптаулары",
+ "ext-uls-display-settings-language-tab": "Тіл",
+ "ext-uls-display-settings-fonts-tab": "Қаріптер",
+ "ext-uls-display-settings-title-short": "Бейнебет",
+ "ext-uls-display-settings-desc": "Қаріптер және мәзірлерде қолданылған тілді орнату.",
+ "ext-uls-language-settings-title": "Тіл баптаулары",
+ "ext-uls-language-settings-apply": "Баптауларды қолдану",
+ "ext-uls-language-settings-cancel": "Болдырмау",
+ "ext-uls-language-buttons-help": "Мәзір тілін өзгерту. Контент тіліне әсер етпейді.",
+ "ext-uls-display-settings-font-settings": "Қаріп баптаулары",
+ "ext-uls-display-settings-ui-language": "Бейнебет тілі",
+ "ext-uls-display-settings-anon-label": "Бейнебет тілі:",
+ "ext-uls-display-settings-anon-same-as-content": "$1 (кейбір контент үшін)",
+ "ext-uls-display-settings-anon-log-in-cta": "Мәзір үшін басқа тілді таңдау үшін [[Special:UserLogin|кіріңіз]].",
+ "ext-uls-webfonts-settings-title": "Қаріпті түсіріп алуды қажет етеді",
+ "ext-uls-webfonts-settings-info-link": "Толығырақ мәлімет",
+ "ext-uls-webfonts-select-for": "$1 үшін қаріп таңдау",
+ "ext-uls-webfonts-select-for-ui-info": "Қатысушы интерфейсі үшін қолданылған қаріп",
+ "ext-uls-webfonts-select-for-content-info": "Мағлұмат үшін қолданылған қаріп",
+ "ext-uls-webfonts-system-font": "Жүйе қаріпі",
+ "ext-uls-back-to-display-settings": "Бейнебет баутауларына қайту",
+ "ext-uls-input-settings-title": "Енгізу баптаулары",
+ "ext-uls-input-settings-title-short": "Енгізу",
+ "ext-uls-input-settings-desc": "Басқа тілде жазасыз ба?",
+ "ext-uls-input-settings-ime-settings": "$1 үшін енгізу тәсілі",
+ "ext-uls-input-settings-ui-language": "Жазу үшін қолданылған тіл",
+ "ext-uls-back-to-input-settings": "Енгізу баптауларына қайту",
+ "ext-uls-ime-help": "Қалай қолданады",
+ "ext-uls-disable-input-method": "Жергілікті пернетақтаны қолдану",
+ "ext-uls-input-settings-more-languages-tooltip": "Қосымша тілдер",
+ "jquery-ime-other-languages": "Басқа тілдер",
+ "jquery-ime-disable-text": "Жергілікті пернетақтаны қолдану",
+ "jquery-ime-help": "Анықтама",
+ "ext-uls-input-disable": "Енгізу құралдарын өшіру",
+ "ext-uls-input-enable": "Енгізу құралдарын қосу",
+ "ext-uls-input-disable-info": "Енгізу құралдары өшірілген.",
+ "ext-uls-input-settings-noime": "Бұл тіл үшін енгізу әдістері қолжетімді емес",
+ "ext-uls-input-disable-notification": "Енгізу құралдары өшірілді",
+ "ext-uls-input-disable-notification-undo": "Болдырмау",
+ "ext-uls-input-disable-notification-info-personal": "Сіз тіл баптауларынан кез келген уақытта енгізу құралдарын қоса аласыз.",
+ "ext-uls-input-disable-notification-info-interlanguage": "Сіз тіл баптаулары тіл тізімі қатарынан кез келген уақытта енгізу құралдарын қоса аласыз.",
+ "ext-uls-language-settings-applying": "Қолданылуда...",
+ "ext-uls-compact-link-count": "{{PLURAL:$1|тағы бір тілде|тағы $1 тілде}}"
+}
diff --git a/MLEB/UniversalLanguageSelector/i18n/km.json b/MLEB/UniversalLanguageSelector/i18n/km.json
new file mode 100644
index 00000000..3cae78f5
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/i18n/km.json
@@ -0,0 +1,48 @@
+{
+ "@metadata": {
+ "authors": [
+ "គីមស៊្រុន"
+ ]
+ },
+ "ext-uls-select-language-settings-icon-tooltip": "ការកំណត់ភាសា",
+ "ext-uls-undo-language-tooltip-text": "ភាសាបានផ្លាស់ប្ដូរពី $1",
+ "ext-uls-language-settings-preferences-link": "ការកំណត់ភាសាបន្ថែមទៀត",
+ "ext-uls-display-settings-title": "ការកំណត់គំហើញ",
+ "ext-uls-display-settings-language-tab": "ភាសា",
+ "ext-uls-display-settings-fonts-tab": "ពុម្ព​អក្សរ​",
+ "ext-uls-display-settings-title-short": "បង្ហាញ",
+ "ext-uls-display-settings-desc": "កំណត់ភាសាសម្រាប់ម៉ឺនុយនិងពុម្ភអក្សរ។",
+ "ext-uls-language-settings-title": "ការកំណត់ភាសា",
+ "ext-uls-language-settings-apply": "អនុវត្តការកំណត់",
+ "ext-uls-language-settings-cancel": "បោះបង់",
+ "ext-uls-language-buttons-help": "ផ្លាសប្ដូរភាសាម៉ឺនុយ។ ភាសារបស់ខ្លឹមសារអត្ថបទមិនប្រែប្រួលទេ។",
+ "ext-uls-display-settings-font-settings": "ការកំណត់ពុម្ភអក្សរ",
+ "ext-uls-display-settings-ui-language": "ភាសាសម្រាប់បង្ហាញ",
+ "ext-uls-display-settings-anon-label": "ភាសាសម្រាប់បង្ហាញ៖",
+ "ext-uls-display-settings-anon-same-as-content": "ភាសាអង់គ្លេស (ដូចខ្លឹមសារដើម)",
+ "ext-uls-display-settings-anon-log-in-cta": "[[Special:UserLogin|កត់ឈ្មោះចូល]]ដើម្បីជ្រើសរើសភាសាមួយផ្សេងទៀតអោយម៉ឺនុយ។",
+ "ext-uls-webfonts-select-for": "ជ្រើសរើសពុម្ភអក្សរសម្រាប់ $1",
+ "ext-uls-webfonts-select-for-ui-info": "ពុម្ភអក្សរសម្រាប់អន្តរមុខអ្នកប្រើប្រាស់",
+ "ext-uls-webfonts-select-for-content-info": "ពុម្ភអក្សរសម្រាប់ខ្លឹមសារអត្ថបទ",
+ "ext-uls-webfonts-system-font": "ពុម្ភអក្សរប្រព័ន្ធ",
+ "ext-uls-back-to-display-settings": "ត្រលប់ទៅការកំណត់គំហើញ",
+ "ext-uls-input-settings-title": "ការកំណត់ការវាយបញ្ចូល",
+ "ext-uls-input-settings-title-short": "ការវាយបញ្ចូល",
+ "ext-uls-input-settings-desc": "តើអ្នកកំពុងសរសេរជាភាសាមួយផ្សេងទៀតឬ?",
+ "ext-uls-input-settings-ime-settings": "វិធីវាយបញ្ចូលសម្រាប់ $1",
+ "ext-uls-input-settings-ui-language": "ភាសាសម្រាប់សរសេរ",
+ "ext-uls-back-to-input-settings": "ត្រលប់ទៅការកំណត់ការវាយបញ្ចូល",
+ "ext-uls-disable-input-method": "ប្រើក្ដារច្នុចជាភាសាដើម",
+ "ext-uls-input-settings-more-languages-tooltip": "ភាសាបន្ថែមទៀត",
+ "jquery-ime-other-languages": "ភាសាដទៃទៀត",
+ "jquery-ime-disable-text": "ប្រើក្ដារច្នុចជាភាសាដើម",
+ "jquery-ime-help": "ជំនួយ",
+ "ext-uls-input-disable": "មិនប្រើឧបករណ៍វាយបញ្ចូល",
+ "ext-uls-input-enable": "ប្រើឧបករណ៍វាយបញ្ចូល",
+ "ext-uls-input-disable-info": "ឧបករណ៍វាយបញ្ចូលត្រូវបានបិទមិនអោយប្រើ។",
+ "ext-uls-input-settings-noime": "គ្មានវិធី​វាយបញ្ចូលណាមួយ​ដែលអាចប្រើសម្រាប់ភាសានេះទេ។",
+ "ext-uls-input-disable-notification": "ឧបករណ៍វាយបញ្ចូលត្រូវបានបើកអោយប្រើ។",
+ "ext-uls-input-disable-notification-undo": "មិនធ្វើវិញ",
+ "ext-uls-input-disable-notification-info-personal": "អ្នកអាចបើកអោយប្រើឧបករណ៍វាយបញ្ចូលពេលណាក៏បាន ដោយចូលទៅកាន់ការកំណត់ភាសា។",
+ "ext-uls-input-disable-notification-info-interlanguage": "អ្នកអាចបើកអោយប្រើឧបករណ៍វាយបញ្ចូលពេលណាក៏បាន ដោយចូលទៅកាន់ការកំណត់ភាសា​ដែលនៅក្បែរបញ្ជីភាសា។"
+}
diff --git a/MLEB/UniversalLanguageSelector/i18n/kn.json b/MLEB/UniversalLanguageSelector/i18n/kn.json
new file mode 100644
index 00000000..05a29cc6
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/i18n/kn.json
@@ -0,0 +1,43 @@
+{
+ "@metadata": {
+ "authors": [
+ "Akoppad",
+ "VASANTH S.N."
+ ]
+ },
+ "uls-desc": "ಬಳಕೆದಾರರಿಗೆ ಭಾಷೆಯನ್ನು ಆರಿಸಲು ಮತ್ತು ಭಾಷೆಯ ವ್ಯವಸ್ಥೆಗಳನ್ನು ಹೊಂದಿಸಲು ಹಲವಾರು ಮಾರ್ಗಗಳನ್ನು ನೀಡುತ್ತದೆ",
+ "uls-plang-title-languages": "ಭಾಷೆಗಳು",
+ "ext-uls-select-language-settings-icon-tooltip": "ಭಾಷಾ ವ್ಯವಸ್ಥೆಗಳು",
+ "ext-uls-undo-language-tooltip-text": "ಈ ಭಾಷೆಯಿಂದ $1 ಬದಲಾಗಿಸಿದೆ",
+ "ext-uls-language-settings-preferences-link": "ನಾನಾ ಭಾಷಾ ವ್ಯವಸ್ಥೆಗಳು",
+ "ext-uls-display-settings-title": "ಪ್ರದರ್ಶಿಸಿಕ ನಿಲುವುಗಳು",
+ "ext-uls-display-settings-language-tab": "ಭಾಷೆ",
+ "ext-uls-display-settings-fonts-tab": "ಲಿಪಿ",
+ "ext-uls-display-settings-title-short": "ಪ್ರದರ್ಶಿಸು",
+ "ext-uls-display-settings-desc": " ಸಲಹಾಕಾರಗಳಿಗೆ ಮತ್ತು ಲಿಪಿಗಳಿಗೆ ಭಾಷೆಯನ್ನು ಸ್ಥಾಪಿಸಿ",
+ "ext-uls-language-settings-title": "ಭಾಷಾ ವ್ಯವಸ್ಥೆಗಳು",
+ "ext-uls-language-settings-apply": "ನಿಲುವುಗಳನ್ನು ಹೊಂದಿಸಿ",
+ "ext-uls-language-settings-cancel": "ರದ್ದು ಮಾಡು",
+ "ext-uls-display-settings-ui-language": "ಪ್ರದರ್ಶಕ ಭಾಷೆ",
+ "ext-uls-display-settings-anon-label": "ಪ್ರದರ್ಶಕ ಭಾಷೆ",
+ "ext-uls-input-settings-title": "ಒಳಬರುವಿಕೆ ವ್ಯವಸ್ಥೆಗಳು",
+ "ext-uls-input-settings-title-short": "ಒಳಬರುವಿಕೆ",
+ "ext-uls-input-settings-desc": "ಬೇರೆ ಭಾಷೆಯಲ್ಲಿ ಬರೆಯುತ್ತಿದ್ದಿರ ?",
+ "ext-uls-input-settings-ime-settings": "$1 ಕ್ಕೆ ಒಳಗೆ ಹಾಕುವ ಸಾದನಗಳ",
+ "ext-uls-input-settings-ui-language": "ಬರೆಯಲು ಉಪಯೋಗಿಸುವ ಭಾಷೆ",
+ "ext-uls-back-to-input-settings": "ಒಳಬರುವಿಕೆ ಸದನೆಗಳಿಗೆ ಹಿಂದಿರುಗಿ",
+ "ext-uls-ime-help": "ಹೇಗೆ ಉಪಯೋಗಿಸುವುದು",
+ "ext-uls-disable-input-method": "ದೇಶೀಯ keyboard ಬಳಸಿ",
+ "ext-uls-input-settings-more-languages-tooltip": "ಹೆಚ್ಚಿನ ಭಾಷೆಗಳು",
+ "jquery-ime-other-languages": "ಇತರೆ ಭಾಷೆಗಳು",
+ "jquery-ime-disable-text": "ದೇಶೀಯ keyboard ಬಳಸಿ",
+ "jquery-ime-help": "ಸಹಾಯ",
+ "ext-uls-input-disable": "ಒಳಗೆ ಸೇರಿಸುವ ಸಲಕರಣೆಗಳನ್ನು ನಿಷ್ಕ್ರಿಯಗೊಳಿಸಿ",
+ "ext-uls-input-enable": "ಒಳಗೆ ಸೇರಿಸುವ ಸಲಕರಣೆಗಳನ್ನು ಸಕ್ರಿಯಗೊಳಿಸಿ",
+ "ext-uls-input-disable-info": "ಒಳಗೆ ಸೇರಿಸುವ ಸಲಕರಣೆಗಳನ್ನು ನಿಷ್ಕ್ರಿಯಗೊಂದಿದೆ",
+ "ext-uls-input-settings-noime": "ಈ ಭಾಷೆಗೆ ಒಳಗೆ ಹಾಕುವ ವಿದಾನಗಳು ಲಭ್ಯವಿಲ್ಲ",
+ "ext-uls-input-disable-notification": "ಒಳಗೆ ಸೇರಿಸುವ ಸಲಕರಣೆಗಳನ್ನು ನಿಷ್ಕ್ರಿಯಗೊಳಿಸಿಲಾಗಿದೆ",
+ "ext-uls-input-disable-notification-undo": "ಕಳಚು",
+ "ext-uls-input-disable-notification-info-personal": "ನೀವು ಒಳಗೆ ಹಾಕುವ ಸಾದನಗಳನ್ನು ಭಾಷೆಯ ಭಂಗಿಯಲ್ಲಿ ಯಾವಾಗ ಬೇಕಾದರೂ ಸಕ್ರಿಯಗೊಳಿಸಬಹದು",
+ "ext-uls-input-disable-notification-info-interlanguage": "ಭಾಷೆಗಳ ಪಟ್ಟಿಯ ಪಕ್ಕದಲ್ಲಿರುವ ಭಾಷೆಯ ಭಂಗಿಯಯಿಂದ ನೀವು ಒಳಗೆ ಹಾಕುವ ಸಾದನಗಳನ್ನು ಯಾವಾಗ ಬೇಕಾದರೂ ಸಕ್ರಿಯಗೊಳಿಸಬಹದು"
+}
diff --git a/MLEB/UniversalLanguageSelector/i18n/ko.json b/MLEB/UniversalLanguageSelector/i18n/ko.json
new file mode 100644
index 00000000..33f955db
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/i18n/ko.json
@@ -0,0 +1,62 @@
+{
+ "@metadata": {
+ "authors": [
+ "Hym411",
+ "Kwj2772",
+ "아라",
+ "Priviet",
+ "Revi"
+ ]
+ },
+ "uls-desc": "사용자에게 언어를 선택하고 언어 설정을 바꾸는 몇 가지 방법을 제공합니다",
+ "uls-plang-title-languages": "언어",
+ "ext-uls-select-language-settings-icon-tooltip": "언어 설정",
+ "ext-uls-undo-language-tooltip-text": "$1에서 언어가 바뀌었습니다",
+ "ext-uls-language-settings-preferences-link": "자세한 언어 설정",
+ "uls-betafeature-label": "소형 언어 링크",
+ "uls-betafeature-desc": "당신과 더 관련된 짧은 버전의 언어 목록을 보여줍니다.",
+ "ext-uls-display-settings-title": "보기 설정",
+ "ext-uls-display-settings-language-tab": "언어",
+ "ext-uls-display-settings-fonts-tab": "글꼴",
+ "ext-uls-display-settings-title-short": "보기",
+ "ext-uls-display-settings-desc": "메뉴와 글꼴에 사용하는 언어를 설정합니다.",
+ "ext-uls-language-settings-title": "언어 설정",
+ "ext-uls-language-settings-apply": "설정 적용",
+ "ext-uls-language-settings-cancel": "취소",
+ "ext-uls-language-buttons-help": "메뉴의 언어를 바꿉니다. 내용 언어는 영향을 받지 않습니다.",
+ "ext-uls-display-settings-font-settings": "글꼴 설정",
+ "ext-uls-display-settings-ui-language": "보일 언어",
+ "ext-uls-display-settings-anon-label": "보일 언어:",
+ "ext-uls-display-settings-anon-same-as-content": "$1 (내용과 같음)",
+ "ext-uls-display-settings-anon-log-in-cta": "메뉴의 다른 언어를 선택하려면 [[Special:UserLogin|로그인]]하세요.",
+ "ext-uls-webfonts-settings-title": "필요할 때 글꼴 내려받기",
+ "ext-uls-webfonts-settings-info": "없는 폰트를 자동으로 내려받고 선호하는 글꼴을 선택할 수 있도록 허용합니다.",
+ "ext-uls-webfonts-settings-info-link": "자세한 정보",
+ "ext-uls-webfonts-select-for": "$1에 대한 글꼴 선택",
+ "ext-uls-webfonts-select-for-ui-info": "사용자 인터페이스에 사용할 글꼴",
+ "ext-uls-webfonts-select-for-content-info": "내용에 사용할 글꼴",
+ "ext-uls-webfonts-system-font": "시스템 글꼴",
+ "ext-uls-back-to-display-settings": "보기 설정으로 돌아가기",
+ "ext-uls-input-settings-title": "입력 설정",
+ "ext-uls-input-settings-title-short": "입력",
+ "ext-uls-input-settings-desc": "다른 언어로 입력하겠습니까?",
+ "ext-uls-input-settings-ime-settings": "$1에 대한 입력 방식",
+ "ext-uls-input-settings-ui-language": "입력에 사용할 언어",
+ "ext-uls-back-to-input-settings": "입력 설정으로 돌아가기",
+ "ext-uls-ime-help": "사용 방법",
+ "ext-uls-disable-input-method": "네이티브 키보드 사용",
+ "ext-uls-input-settings-more-languages-tooltip": "기타 언어",
+ "jquery-ime-other-languages": "다른 언어",
+ "jquery-ime-disable-text": "네이티브 키보드 사용",
+ "jquery-ime-help": "도움말",
+ "ext-uls-input-disable": "입력 도구 비활성화",
+ "ext-uls-input-enable": "입력 도구 활성화",
+ "ext-uls-input-disable-info": "입력 도구가 비활성화되어 있습니다.",
+ "ext-uls-input-settings-noime": "이 언어에 대해 입력 방식을 사용할 수 없습니다.",
+ "ext-uls-input-disable-notification": "입력 도구가 비활성화되었습니다",
+ "ext-uls-input-disable-notification-undo": "되돌리기",
+ "ext-uls-input-disable-notification-info-personal": "언어 설정에서 언제든지 입력 도구를 활성화할 수 있습니다.",
+ "ext-uls-input-disable-notification-info-interlanguage": "언어 목록 옆에 있는 언어 설정에서 언제든지 입력 도구를 활성화할 수 있습니다.",
+ "ext-uls-language-settings-applying": "적용 중....",
+ "ext-uls-compact-link-count": "{{PLURAL:$1|한개의 다른 언어|$1개의 다른 언어}}"
+}
diff --git a/MLEB/UniversalLanguageSelector/i18n/krc.json b/MLEB/UniversalLanguageSelector/i18n/krc.json
new file mode 100644
index 00000000..8ac1da31
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/i18n/krc.json
@@ -0,0 +1,58 @@
+{
+ "@metadata": {
+ "authors": [
+ "Iltever"
+ ]
+ },
+ "uls-desc": "Къошулуучугъа тил сайларгъа эмда тил джарашдырыуланы тюрлендирирге талай амал береди",
+ "uls-plang-title-languages": "Тилле",
+ "ext-uls-select-language-settings-icon-tooltip": "Тил джарашдырыула",
+ "ext-uls-undo-language-tooltip-text": "Алгъыннгы тил: $1",
+ "ext-uls-language-settings-preferences-link": "Къошакъ тил джарашдырыула",
+ "uls-betafeature-label": "Тил джибериулени компакт тизмеси",
+ "uls-betafeature-desc": "Тил джибериулени тизмесини, къуру сизге керекли болгъан тилле бла, къысха вариантын кёргюзтеди.",
+ "ext-uls-display-settings-title": "Кёрюнюуню джарашдырыулары",
+ "ext-uls-display-settings-language-tab": "Тил",
+ "ext-uls-display-settings-fonts-tab": "Шрифтле",
+ "ext-uls-display-settings-title-short": "Кёрюнюу",
+ "ext-uls-display-settings-desc": "Менюла бла шрифтлени тили",
+ "ext-uls-language-settings-title": "Тил джарашдырыула",
+ "ext-uls-language-settings-apply": "Хайырландыр",
+ "ext-uls-language-settings-cancel": "Ызына ал",
+ "ext-uls-language-buttons-help": "Менюну тилин тюрлендир. Ичиндегини тилине тийиллик тюлдю.",
+ "ext-uls-display-settings-font-settings": "Шрифт джарашдырыула",
+ "ext-uls-display-settings-ui-language": "Кёрюнюуню тили",
+ "ext-uls-display-settings-anon-label": "Кёрюнюуню тили:",
+ "ext-uls-display-settings-anon-same-as-content": "$1 (ичиндегини тилича)",
+ "ext-uls-display-settings-anon-log-in-cta": "Менюлагъа башха тил сайлар ючюн [[Special:UserLogin|кирген этигиз]].",
+ "ext-uls-webfonts-settings-title": "Керек болгъанда шрифтлени джюкле",
+ "ext-uls-webfonts-settings-info": "Болмагъан шрифтлени автомат халда джюклеу эмда изленнген шрифтлени сайларгъа эркинлик бериу.",
+ "ext-uls-webfonts-settings-info-link": "Къошакъ билги",
+ "ext-uls-webfonts-select-for": "$1 ючюн шрифт сайла",
+ "ext-uls-webfonts-select-for-ui-info": "Къошулуучуну интерфейсини шрифти",
+ "ext-uls-webfonts-select-for-content-info": "Текст ючюн шрифт",
+ "ext-uls-webfonts-system-font": "Система шрифт",
+ "ext-uls-back-to-display-settings": "Кёрюнюу джарашдырыулагъа къайыт",
+ "ext-uls-input-settings-title": "Джазыу джарашдырыула",
+ "ext-uls-input-settings-title-short": "Джазыу",
+ "ext-uls-input-settings-desc": "Башха тилдеми джазасыз?",
+ "ext-uls-input-settings-ime-settings": "$1 ючюн клавиатурала",
+ "ext-uls-input-settings-ui-language": "Джазаргъа ючюн хайырланнган тил",
+ "ext-uls-back-to-input-settings": "Джазыу джарашдырыулагъа къайыт",
+ "ext-uls-ime-help": "Къалай хайырландырылады?",
+ "ext-uls-disable-input-method": "Кесинги клавиатурангы хайырландыр",
+ "ext-uls-input-settings-more-languages-tooltip": "Дагъыда тилле",
+ "jquery-ime-other-languages": "Башха тилле",
+ "jquery-ime-disable-text": "Кесинги клавиатурангы хайырландыр",
+ "jquery-ime-help": "Ангылатыу",
+ "ext-uls-input-disable": "Джазыу адырланы джукълат",
+ "ext-uls-input-enable": "Джазыу адырланы джандыр",
+ "ext-uls-input-disable-info": "Джазыу адырла джукъландыла.",
+ "ext-uls-input-settings-noime": "Бу тил ючюн клавиатураны халы айгъакъланмагъанды.",
+ "ext-uls-input-disable-notification": "Джазыу адырла джукъландыла.",
+ "ext-uls-input-disable-notification-undo": "Ызына ал",
+ "ext-uls-input-disable-notification-info-personal": "Джазыу адырланы хар заманда да тил джарашдырыуладан джандырыргъа боллукъду.",
+ "ext-uls-input-disable-notification-info-interlanguage": "Джазыу адырланы хар заманда да тил тизимни къатындагъы тил джарашдырыуладан джандырыргъа боллукъду.",
+ "ext-uls-language-settings-applying": "Сингдирилиую...",
+ "ext-uls-compact-link-count": "Энтда {{PLURAL:$1|бир тилде|$1 тилде}}"
+}
diff --git a/MLEB/UniversalLanguageSelector/i18n/ksh.json b/MLEB/UniversalLanguageSelector/i18n/ksh.json
new file mode 100644
index 00000000..6fab8d56
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/i18n/ksh.json
@@ -0,0 +1,47 @@
+{
+ "@metadata": {
+ "authors": [
+ "Purodha"
+ ]
+ },
+ "uls-desc": "Jit dä Metmaachere ongerscheidlejje Müjjeleschkeite, en Schprohch ußzewähle un Enschtällonge för Schprohche ze maache.",
+ "ext-uls-select-language-settings-icon-tooltip": "Enschtällonge för de Schprohch",
+ "ext-uls-undo-language-tooltip-text": "De Sprooch es von vörher $1 ömjeschtallt.",
+ "ext-uls-display-settings-title": "Enschtällonge för et Aanzeije",
+ "ext-uls-display-settings-language-tab": "De Schprohch",
+ "ext-uls-display-settings-fonts-tab": "De Schreff",
+ "ext-uls-display-settings-title-short": "Aanzeije",
+ "ext-uls-display-settings-desc": "Donn de Schprohch för de Menühs un de Schreff-Zoote enschtälle.",
+ "ext-uls-language-settings-title": "Schprohche-Enschtällonge",
+ "ext-uls-language-settings-apply": "Lohß Jonn!",
+ "ext-uls-language-settings-cancel": "Ophüre",
+ "ext-uls-language-buttons-help": "Donn de Schprohch för de Menühß un de Bedehnong ömschtälle. Dem Wiki singe Enhalld, un däm sing Schprohch, hät dermet nix ze donn.",
+ "ext-uls-display-settings-font-settings": "Enschtällonge för Schreff",
+ "ext-uls-display-settings-ui-language": "De Schprohch för de Bovverfläsch ze Bedehne",
+ "ext-uls-display-settings-anon-label": "De Schprohch för de Bovverfläsch ze Bedehne:",
+ "ext-uls-display-settings-anon-same-as-content": "Ripoaaresch, wi dem Wiki singe Enhald",
+ "ext-uls-display-settings-anon-log-in-cta": "[[Special:UserLogin|Donn enlogge]], öm Der en ander Schprohch för de Menühß un et Bedehne uß_ze_söhke.",
+ "ext-uls-webfonts-settings-title": "Donn di Schreff eronge laade, wann nüüdesch",
+ "ext-uls-webfonts-settings-info": "Schrefte ussem Wäb wääde eronge jelaade, öm Täxte en besöndere Schreff-Zoote aanzezeije.",
+ "ext-uls-webfonts-settings-info-link": "Mieh Aanjaabe",
+ "ext-uls-webfonts-select-for": "De Schreff för $1 ußsöhke",
+ "ext-uls-webfonts-select-for-ui-info": "De Schreff för et Bedeene un de Bovverfläsch",
+ "ext-uls-webfonts-select-for-content-info": "De Schreff för der Enhalld",
+ "ext-uls-webfonts-system-font": "De Schtandat_Schreff_Zoot",
+ "ext-uls-back-to-display-settings": "Retuur noh de Enschtällonge",
+ "ext-uls-input-settings-title": "Enschtällonge för Enjaabe",
+ "ext-uls-input-settings-title-short": "Enjaabe",
+ "ext-uls-input-settings-desc": "Schriive en en andere Schprohch?",
+ "ext-uls-input-settings-ime-settings": "Enjaabe-Metoode för $1",
+ "ext-uls-input-settings-ui-language": "Di Schprohch, di för et Schriive jebruch weed",
+ "ext-uls-back-to-input-settings": "Retuur noh de Enschtällonge för et Enjävve",
+ "ext-uls-disable-input-method": "Ennjaabe-Aat affschallde",
+ "ext-uls-input-settings-more-languages-tooltip": "Mieh Schprohche",
+ "jquery-ime-other-languages": "Ander Schprohche",
+ "jquery-ime-disable-text": "Ennjaabe-Aat affschallde",
+ "jquery-ime-help": "Hölp",
+ "ext-uls-input-disable": "Et Wärkzüsch för de Ennjaabe-Aat affschallde",
+ "ext-uls-input-enable": "Et Wärkzüsch för de Ennjaabe-Aat enschallde",
+ "ext-uls-input-disable-info": "De Wärkzüsch för de Ennjaabe-Aat sin affjeschalldt",
+ "ext-uls-input-settings-noime": "Mer han kein äxtra Ennjahbe-Aate för di Schprohch."
+}
diff --git a/MLEB/UniversalLanguageSelector/i18n/ku-latn.json b/MLEB/UniversalLanguageSelector/i18n/ku-latn.json
new file mode 100644
index 00000000..ce1d7850
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/i18n/ku-latn.json
@@ -0,0 +1,12 @@
+{
+ "@metadata": {
+ "authors": [
+ "George Animal",
+ "Ghybu"
+ ]
+ },
+ "uls-plang-title-languages": "Ziman",
+ "ext-uls-display-settings-language-tab": "Ziman",
+ "jquery-ime-other-languages": "Zimanên din",
+ "jquery-ime-help": "Alîkarî"
+}
diff --git a/MLEB/UniversalLanguageSelector/i18n/kw.json b/MLEB/UniversalLanguageSelector/i18n/kw.json
new file mode 100644
index 00000000..de5f0278
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/i18n/kw.json
@@ -0,0 +1,49 @@
+{
+ "@metadata": {
+ "authors": [
+ "Nrowe"
+ ]
+ },
+ "ext-uls-select-language-settings-icon-tooltip": "Settyansow yeth",
+ "ext-uls-undo-language-tooltip-text": "Chanjyes re beu an yeth dhyworth $1",
+ "ext-uls-language-settings-preferences-link": "Moy settyansow yeth",
+ "ext-uls-display-settings-title": "Settyansow an skrin",
+ "ext-uls-display-settings-language-tab": "Yeth",
+ "ext-uls-display-settings-fonts-tab": "Fontys",
+ "ext-uls-display-settings-title-short": "Skrin",
+ "ext-uls-display-settings-desc": "Settya an yeth rag rolyow ha fontys.",
+ "ext-uls-language-settings-title": "Settyansow yeth",
+ "ext-uls-language-settings-apply": "Gweytha an settyansow",
+ "ext-uls-language-settings-cancel": "Hedhi",
+ "ext-uls-language-buttons-help": "Chanjya yeth an rolyow. Ny vydh chanjyes yeth an dalgh.",
+ "ext-uls-display-settings-font-settings": "Settyansow fontys",
+ "ext-uls-display-settings-ui-language": "Yeth diskwedhes",
+ "ext-uls-display-settings-anon-label": "Yeth diskwedhes:",
+ "ext-uls-display-settings-anon-same-as-content": "Kernewek (keth ha'n dalgh)",
+ "ext-uls-display-settings-anon-log-in-cta": "[[Special:UserLogin|Olmgemewgh]] rag dewis yeth dyffrans rag rolyow.",
+ "ext-uls-webfonts-select-for": "Dewis font rag $1",
+ "ext-uls-webfonts-select-for-ui-info": "Font an ynterfas devnydhyer",
+ "ext-uls-webfonts-select-for-content-info": "Font an dalgh",
+ "ext-uls-webfonts-system-font": "Font an system",
+ "ext-uls-back-to-display-settings": "War-dhelergh dhe settyansow an skrin",
+ "ext-uls-input-settings-title": "Settyansow ynworrans",
+ "ext-uls-input-settings-title-short": "Ynworrans",
+ "ext-uls-input-settings-desc": "Ow skrifa yn yeth aral?",
+ "ext-uls-input-settings-ime-settings": "Fordhow ynworra rag $1",
+ "ext-uls-input-settings-ui-language": "Yeth rag skrifa",
+ "ext-uls-back-to-input-settings": "War-dhelergh dhe settyansow ynworrans",
+ "ext-uls-ime-help": "Fatel devnydhya",
+ "ext-uls-disable-input-method": "Devnydhya bysowel genesik",
+ "ext-uls-input-settings-more-languages-tooltip": "Moy yethow",
+ "jquery-ime-other-languages": "Yethow erel",
+ "jquery-ime-disable-text": "Devnydhya bysowel genesik",
+ "jquery-ime-help": "Gweres",
+ "ext-uls-input-disable": "Dialosegi toulys ynworra",
+ "ext-uls-input-enable": "Galosegi toulys ynworra",
+ "ext-uls-input-disable-info": "Dialosegys yw toulys ynworra",
+ "ext-uls-input-settings-noime": "Nyns eus fordh ynworra vyth kavadow rag an yeth-ma.",
+ "ext-uls-input-disable-notification": "Dialosegys re beu toulys ynworra",
+ "ext-uls-input-disable-notification-undo": "Diswul",
+ "ext-uls-input-disable-notification-info-personal": "Hwi a yll galosegi an toulys ynworra orth termyn vyth y'n settyansow yeth.",
+ "ext-uls-input-disable-notification-info-interlanguage": "Hwi a yll galosegi an toulys ynworra orth termyn vyth dhyworth an settyansow yeth ryb an rol yethow."
+}
diff --git a/MLEB/UniversalLanguageSelector/i18n/ky.json b/MLEB/UniversalLanguageSelector/i18n/ky.json
new file mode 100644
index 00000000..32ec453c
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/i18n/ky.json
@@ -0,0 +1,36 @@
+{
+ "@metadata": {
+ "authors": [
+ "Growingup",
+ "Викиней"
+ ]
+ },
+ "uls-desc": "Колдонуучуга тил тандоонун бир нече жолун берип, тил ырастоолорду аткарууга мүмкүн кылат.",
+ "uls-plang-title-languages": "Тилдер",
+ "ext-uls-select-language-settings-icon-tooltip": "Тил ырастоолору",
+ "ext-uls-undo-language-tooltip-text": "Мурдагы тили: $1",
+ "ext-uls-language-settings-preferences-link": "Кошумча тил ырастоолору",
+ "ext-uls-display-settings-title": "Көрүнүш ырастоолору",
+ "ext-uls-display-settings-language-tab": "Тили",
+ "ext-uls-display-settings-fonts-tab": "Шрифттер",
+ "ext-uls-display-settings-title-short": "Көрүнүш",
+ "ext-uls-display-settings-desc": "Меню жана шрифттердин тили",
+ "ext-uls-language-settings-title": "Тил ырастоолору",
+ "ext-uls-language-settings-apply": "Ырастоолорду колдонуу",
+ "ext-uls-language-settings-cancel": "Жокко чыгаруу",
+ "ext-uls-language-buttons-help": "Менюнун тилин өзгөртүү, Мазмундун тили өзгөртүлбөйт.",
+ "ext-uls-display-settings-font-settings": "Шрифт ырастоолору",
+ "ext-uls-display-settings-ui-language": "Көрүнүш тили",
+ "ext-uls-display-settings-anon-label": "Көрүнүш тили",
+ "ext-uls-display-settings-anon-same-as-content": "Кыргызча (мазмундук тил катары)",
+ "ext-uls-display-settings-anon-log-in-cta": "Менюнун тилин өзгөртүү үчүн [[Special:UserLogin|кириңиз]].",
+ "ext-uls-webfonts-select-for": "$1 тили үчүн шрифт",
+ "ext-uls-webfonts-system-font": "Системдин шрифти",
+ "ext-uls-back-to-display-settings": "Көрүнүш ырастоолоруна кайтуу",
+ "ext-uls-input-settings-title-short": "Кириш",
+ "ext-uls-input-settings-desc": "Бөлөк тилде жазасызбы?",
+ "ext-uls-input-settings-ui-language": "Жазуу тили",
+ "ext-uls-input-settings-more-languages-tooltip": "Кошумча тилдер",
+ "jquery-ime-other-languages": "Башка тилдерде",
+ "jquery-ime-help": "Жардам"
+}
diff --git a/MLEB/UniversalLanguageSelector/i18n/la.json b/MLEB/UniversalLanguageSelector/i18n/la.json
new file mode 100644
index 00000000..27a122b4
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/i18n/la.json
@@ -0,0 +1,35 @@
+{
+ "@metadata": {
+ "authors": [
+ "Autokrator"
+ ]
+ },
+ "uls-plang-title-languages": "Linguis aliis",
+ "ext-uls-select-language-settings-icon-tooltip": "Praeferentiae linguae",
+ "ext-uls-undo-language-tooltip-text": "Lingua commota ex $1",
+ "ext-uls-language-settings-preferences-link": "Plura",
+ "ext-uls-display-settings-title": "Praeferentias monstrare",
+ "ext-uls-display-settings-language-tab": "Lingua",
+ "ext-uls-display-settings-fonts-tab": "Scripturae",
+ "ext-uls-display-settings-title-short": "Depictio",
+ "ext-uls-display-settings-desc": "Linguam per navigatrum atque scripturam ligere",
+ "ext-uls-language-settings-title": "Praeferentiae linguae",
+ "ext-uls-language-settings-apply": "Praeferentias mutare",
+ "ext-uls-language-settings-cancel": "Abrogare",
+ "ext-uls-language-buttons-help": "Linguam navigatri mutare. Lingua contentorum non mutabitur.",
+ "ext-uls-display-settings-font-settings": "Praeferentiae scripturae",
+ "ext-uls-display-settings-ui-language": "Lingua depictionis",
+ "ext-uls-display-settings-anon-label": "Lingua depictionis",
+ "ext-uls-display-settings-anon-same-as-content": "$1 (eadem ac contenta)",
+ "ext-uls-webfonts-select-for": "Scripturam ligere per $1",
+ "ext-uls-webfonts-select-for-ui-info": "Scriptura navigatri",
+ "ext-uls-webfonts-select-for-content-info": "Scriptura contentorum",
+ "ext-uls-back-to-display-settings": "Reddere ad praeferentias depictionis",
+ "ext-uls-input-settings-desc": "Uterisne alia lingua?",
+ "ext-uls-input-settings-ui-language": "Lingua adhibita ad scribendum",
+ "ext-uls-ime-help": "Auxilium",
+ "ext-uls-input-settings-more-languages-tooltip": "Plurae linguae",
+ "jquery-ime-other-languages": "Aliae linguae",
+ "jquery-ime-help": "Auxilium",
+ "ext-uls-input-disable-notification-undo": "Abrogare"
+}
diff --git a/MLEB/UniversalLanguageSelector/i18n/lad.json b/MLEB/UniversalLanguageSelector/i18n/lad.json
new file mode 100644
index 00000000..d91a2a74
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/i18n/lad.json
@@ -0,0 +1,12 @@
+{
+ "@metadata": {
+ "authors": [
+ "Menachem.Moreira"
+ ]
+ },
+ "uls-plang-title-languages": "Lenguas",
+ "ext-uls-display-settings-language-tab": "Lengua",
+ "ext-uls-ime-help": "Komo se uza",
+ "jquery-ime-other-languages": "Otras lenguas",
+ "jquery-ime-help": "Ayudo"
+}
diff --git a/MLEB/UniversalLanguageSelector/i18n/lb.json b/MLEB/UniversalLanguageSelector/i18n/lb.json
new file mode 100644
index 00000000..ddedc83e
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/i18n/lb.json
@@ -0,0 +1,58 @@
+{
+ "@metadata": {
+ "authors": [
+ "Robby",
+ "Soued031",
+ "Xabier Armendaritz"
+ ]
+ },
+ "uls-desc": "Gëtt dem Benotzer verschidde Méiglechkeete fir eng Sprooch erauszesichen an d'Parameter vun der Sprooch festzeleeën",
+ "uls-plang-title-languages": "Sproochen",
+ "ext-uls-select-language-settings-icon-tooltip": "Sproochastellungen",
+ "ext-uls-undo-language-tooltip-text": "Sprooch geännert vu(n) $1",
+ "ext-uls-language-settings-preferences-link": "Méi Sproochastellungen",
+ "uls-betafeature-label": "Kompakt Sproochlinken",
+ "uls-betafeature-desc": "Méi eng kuerz Versioun vun der Lëscht vun de Sprooche weisen, mat just deene Sproochen déi fir Iech méi relevant sinn.",
+ "ext-uls-display-settings-title": "Astellunge weisen",
+ "ext-uls-display-settings-language-tab": "Sprooch",
+ "ext-uls-display-settings-fonts-tab": "Schrëftarten",
+ "ext-uls-display-settings-title-short": "Weisen",
+ "ext-uls-display-settings-desc": "Sprooch astellen déi fir d'Menüen a Buschtawe benotzt gëtt",
+ "ext-uls-language-settings-title": "Sproochastellungen",
+ "ext-uls-language-settings-apply": "Astellungen uwenden",
+ "ext-uls-language-settings-cancel": "Ofbriechen",
+ "ext-uls-language-buttons-help": "Ännert d'Sprooch vun de Menüen. D'Sprooch vum Inhalt gëtt net geännert.",
+ "ext-uls-display-settings-font-settings": "Astellunge vun de Schrëften",
+ "ext-uls-display-settings-ui-language": "Sprooch fir ze weisen",
+ "ext-uls-display-settings-anon-label": "Sprooch fir ze weisen:",
+ "ext-uls-display-settings-anon-same-as-content": "$1 (sou wéi den Inhalt)",
+ "ext-uls-display-settings-anon-log-in-cta": "[[Special:UserLogin|Loggt Iech a]] fir eng aner Sprooch fir d'Menüen ze wielen.",
+ "ext-uls-webfonts-settings-title": "Fonten erofluede wann dat néideg ass",
+ "ext-uls-webfonts-settings-info-link": "Méi Informatiounen",
+ "ext-uls-webfonts-select-for": "Schrëftzort fir $1 eraussichen",
+ "ext-uls-webfonts-select-for-ui-info": "Schrëft déi fir de Benotzer-Interface benotzt gëtt",
+ "ext-uls-webfonts-select-for-content-info": "Schrëft déi fir den Inhalt benotzt gëtt",
+ "ext-uls-webfonts-system-font": "System-Schrëftform",
+ "ext-uls-back-to-display-settings": "Zréck op d'Astellunge vum Weisen",
+ "ext-uls-input-settings-title": "Input-Astellungen",
+ "ext-uls-input-settings-title-short": "Input",
+ "ext-uls-input-settings-desc": "An enger anerer Sprooch schreiwen?",
+ "ext-uls-input-settings-ime-settings": "Input-Methode fir $1",
+ "ext-uls-input-settings-ui-language": "Sprooch déi fir d'Schreiwe benotzt gëtt",
+ "ext-uls-back-to-input-settings": "Zréck op d'input-Astellungen",
+ "ext-uls-ime-help": "Wéi benotzen",
+ "ext-uls-disable-input-method": "Är Tastatur benotzen",
+ "ext-uls-input-settings-more-languages-tooltip": "Méi Sproochen",
+ "jquery-ime-other-languages": "Aner Sproochen",
+ "jquery-ime-disable-text": "Är Tastatur benotzen",
+ "jquery-ime-help": "Hëllef",
+ "ext-uls-input-disable": "'input tools' ausschalten",
+ "ext-uls-input-enable": "'input tools' aschalten",
+ "ext-uls-input-disable-info": "'input tools' sinn ausgeschalt.",
+ "ext-uls-input-settings-noime": "Fir dës Sprooch si keng Input-Methoden disponibel.",
+ "ext-uls-input-disable-notification": "'input tools' goufen ausgeschalt.",
+ "ext-uls-input-disable-notification-undo": "Réckgängeg maachen",
+ "ext-uls-input-disable-notification-info-personal": "Dir kënnt d''input tools' zu all Ament vun de Sproochastellungen aus aschalten.",
+ "ext-uls-input-disable-notification-info-interlanguage": "Dir kënnt d''input tools' zu all Ament vun de Sproochastellungen nieft der Lëscht vun de Sproochen aschalten",
+ "ext-uls-compact-link-count": "{{PLURAL:$1|Eng Sprooch méi|$1 Sprooche méi}}"
+}
diff --git a/MLEB/UniversalLanguageSelector/i18n/lrc.json b/MLEB/UniversalLanguageSelector/i18n/lrc.json
new file mode 100644
index 00000000..d50b53d2
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/i18n/lrc.json
@@ -0,0 +1,38 @@
+{
+ "@metadata": {
+ "authors": [
+ "Mogoeilor",
+ "Bonevarluri"
+ ]
+ },
+ "uls-plang-title-languages": "زونا",
+ "ext-uls-select-language-settings-icon-tooltip": "تنظيمات زون",
+ "ext-uls-language-settings-preferences-link": "میزونکاری زونیا بیشتر",
+ "ext-uls-display-settings-language-tab": "زون",
+ "ext-uls-display-settings-fonts-tab": "فونتيا",
+ "ext-uls-display-settings-title-short": "نشون ديئن",
+ "ext-uls-language-settings-title": "تنظيمات زون",
+ "ext-uls-language-settings-apply": "وه کار ونن میزونکاریا",
+ "ext-uls-language-settings-cancel": "رد كردن",
+ "ext-uls-display-settings-font-settings": "میزونکاری فونت",
+ "ext-uls-display-settings-ui-language": "نشون دئن زون",
+ "ext-uls-display-settings-anon-label": "نشون دئن زون:",
+ "ext-uls-display-settings-anon-same-as-content": "$1 (چی یه گل مینونه)",
+ "ext-uls-display-settings-anon-log-in-cta": "[[ویجه:وامین اومائن کارور|وامین اومائن]] سی انتخاو یه گل زون هنی د دیارگه یا.",
+ "ext-uls-webfonts-settings-info-link": "دونسمنيا بیشتر",
+ "ext-uls-webfonts-select-for-ui-info": "فونت استفاده بیه سی مین پیوست کارور",
+ "ext-uls-back-to-display-settings": "ورئرد د میزونکاری نشون دئن",
+ "ext-uls-input-settings-title": "میزونکاری درینده",
+ "ext-uls-input-settings-title-short": "درینده",
+ "ext-uls-input-settings-desc": "نیسنن د زون هنی؟",
+ "ext-uls-input-settings-ime-settings": "روشتیا دریندئه سی $1",
+ "ext-uls-input-settings-ui-language": "زون استفاده بیه سی نیسنن",
+ "ext-uls-back-to-input-settings": "ورئرد د میزونکاری دریندئه",
+ "ext-uls-ime-help": "چه جوری وه کار گرته با",
+ "ext-uls-input-settings-more-languages-tooltip": "زونيا بيشتر",
+ "jquery-ime-other-languages": "د زونيا هنی",
+ "jquery-ime-help": "هومياری",
+ "ext-uls-language-settings-applying": "د حال و بال وه کار گرتن....",
+ "apihelp-languagesearch-example-1": "پی جوری سی \"Te\"",
+ "apihelp-languagesearch-example-2": "پی جوری سی \"ഫി\""
+}
diff --git a/MLEB/UniversalLanguageSelector/i18n/lt.json b/MLEB/UniversalLanguageSelector/i18n/lt.json
new file mode 100644
index 00000000..1c563345
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/i18n/lt.json
@@ -0,0 +1,50 @@
+{
+ "@metadata": {
+ "authors": [
+ "Mantak111"
+ ]
+ },
+ "uls-desc": "Suteikia vartotojui keliais būdais, pasirinkti kalbą ir sureguliuoti kalbos parametrus.",
+ "uls-plang-title-languages": "Kalbos",
+ "ext-uls-select-language-settings-icon-tooltip": "Kalbos nustatymai",
+ "ext-uls-undo-language-tooltip-text": "Kalba pakeista iš $1",
+ "ext-uls-language-settings-preferences-link": "Daugiau kalbos parametrų",
+ "ext-uls-display-settings-title": "Ekrano parametrai",
+ "ext-uls-display-settings-language-tab": "Kalba",
+ "ext-uls-display-settings-fonts-tab": "Šriftai",
+ "ext-uls-display-settings-title-short": "Rodyti",
+ "ext-uls-display-settings-desc": "Nustatyti kalbą naudojant meniu ir šriftus.",
+ "ext-uls-language-settings-title": "Kalbos parametrai",
+ "ext-uls-language-settings-apply": "Taikyti parametrus",
+ "ext-uls-language-settings-cancel": "Atšaukti",
+ "ext-uls-language-buttons-help": "Pakeiskite meniu kalbą. Turinio kalba neturi būti paveikta.",
+ "ext-uls-display-settings-font-settings": "Šrifto parametrai",
+ "ext-uls-display-settings-ui-language": "Rodymo kalba",
+ "ext-uls-display-settings-anon-label": "Rodymo kalba:",
+ "ext-uls-display-settings-anon-same-as-content": "Lietuvių (toks pat kaip turinys)",
+ "ext-uls-display-settings-anon-log-in-cta": "[[Special:UserLogin|Prisijunkite]], kad pasirinktumėte skirtingą kalbą meniu.",
+ "ext-uls-webfonts-select-for": "Pasirinkite šriftą $1",
+ "ext-uls-webfonts-select-for-ui-info": "Šriftas naudojamas vartotojo sąsajai",
+ "ext-uls-webfonts-select-for-content-info": "Šriftas naudojamas turiniui",
+ "ext-uls-webfonts-system-font": "Sistemos šriftas",
+ "ext-uls-back-to-display-settings": "Grįžti į rodymo parametrus",
+ "ext-uls-input-settings-title": "Įvesties parametrai",
+ "ext-uls-input-settings-title-short": "Įvestis",
+ "ext-uls-input-settings-desc": "Rašote kita kalba?",
+ "ext-uls-input-settings-ime-settings": "Įvesties metodai $1",
+ "ext-uls-input-settings-ui-language": "Kalba naudojama rašybai",
+ "ext-uls-back-to-input-settings": "Grįžti į įvesties parametrus",
+ "ext-uls-disable-input-method": "Naudoti klaviatūrą",
+ "ext-uls-input-settings-more-languages-tooltip": "Daugiau kalbų",
+ "jquery-ime-other-languages": "Kitos kalbos",
+ "jquery-ime-disable-text": "Naudoti klaviatūrą",
+ "jquery-ime-help": "Pagalba",
+ "ext-uls-input-disable": "Išjungti įvesties priemones",
+ "ext-uls-input-enable": "Įgalinti įvesties priemones",
+ "ext-uls-input-disable-info": "Įvesties priemonės yra uždraustos.",
+ "ext-uls-input-settings-noime": "Jokių įvesties metodų yra prieinama šia kalba.",
+ "ext-uls-input-disable-notification": "Įvesties priemonės yra išjungtos",
+ "ext-uls-input-disable-notification-undo": "Anuliuoti",
+ "ext-uls-input-disable-notification-info-personal": "Jūs galite įgalinti įvesties priemones bet kuriuo metu iš kalbos parametrų.",
+ "ext-uls-input-disable-notification-info-interlanguage": "Jūs galite įgalinti įvesties priemones bet kuriuo metu iš kalbos parametrų šalia kalbos sąrašo."
+}
diff --git a/MLEB/UniversalLanguageSelector/i18n/lv.json b/MLEB/UniversalLanguageSelector/i18n/lv.json
new file mode 100644
index 00000000..ba6783cc
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/i18n/lv.json
@@ -0,0 +1,11 @@
+{
+ "@metadata": {
+ "authors": [
+ "Edgars2007",
+ "Papuass"
+ ]
+ },
+ "uls-desc": "Ļauj lietotājam dažādos veidos izvēlēties valodu un pielāgot valodas iestatījumus",
+ "uls-plang-title-languages": "Valodas",
+ "ext-uls-undo-language-tooltip-text": "Valoda nomainīta no $1"
+}
diff --git a/MLEB/UniversalLanguageSelector/i18n/lzh.json b/MLEB/UniversalLanguageSelector/i18n/lzh.json
new file mode 100644
index 00000000..911ca492
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/i18n/lzh.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Jason924tw"
+ ]
+ },
+ "ext-uls-display-settings-language-tab": "語"
+}
diff --git a/MLEB/UniversalLanguageSelector/i18n/min.json b/MLEB/UniversalLanguageSelector/i18n/min.json
new file mode 100644
index 00000000..b83ab6de
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/i18n/min.json
@@ -0,0 +1,53 @@
+{
+ "@metadata": {
+ "authors": [
+ "Iwan Novirion"
+ ]
+ },
+ "uls-desc": "Mangagiah pangguno caro untuak mamiliah bahaso dan manyasuaian pangaturannyo",
+ "uls-plang-title-languages": "Bahaso",
+ "ext-uls-select-language-settings-icon-tooltip": "Pangaturan bahaso",
+ "ext-uls-undo-language-tooltip-text": "Bahaso barubah dari $1",
+ "ext-uls-language-settings-preferences-link": "Pangaturan bahaso lanjutan",
+ "ext-uls-display-settings-title": "Pangaturan tampilan",
+ "ext-uls-display-settings-language-tab": "Bahaso",
+ "ext-uls-display-settings-fonts-tab": "Hurup",
+ "ext-uls-display-settings-title-short": "Tampilan",
+ "ext-uls-display-settings-desc": "Pangaturan untuak menu jo hurup",
+ "ext-uls-language-settings-title": "Pangaturan bahaso",
+ "ext-uls-language-settings-apply": "Terapkan pangaturan",
+ "ext-uls-language-settings-cancel": "Batalan",
+ "ext-uls-language-buttons-help": "Maubah bahaso menu. Bahaso konten indak sato tapangaruah.",
+ "ext-uls-display-settings-font-settings": "Pangaturan hurup",
+ "ext-uls-display-settings-ui-language": "Bahaso tampilan",
+ "ext-uls-display-settings-anon-label": "Bahaso tampilan",
+ "ext-uls-display-settings-anon-same-as-content": "Inggirih (samo jo konten)",
+ "ext-uls-display-settings-anon-log-in-cta": "[[Special:UserLogin|Masuak log]] guno mamiliah bahaso nan lain untuak menu.",
+ "ext-uls-webfonts-settings-title": "Unduah hurup bilo paralu.",
+ "ext-uls-webfonts-settings-info": "Hurup web ka diunduah untuak manampilan teks pado skrip khusuih.",
+ "ext-uls-webfonts-settings-info-link": "Informasi labiah lanjuik",
+ "ext-uls-webfonts-select-for": "Piliah hurup untuak $1",
+ "ext-uls-webfonts-select-for-ui-info": "Hurup nan untuak antarmuko pangguno",
+ "ext-uls-webfonts-select-for-content-info": "Hurup nan untuak konten",
+ "ext-uls-webfonts-system-font": "Hurup sistem",
+ "ext-uls-back-to-display-settings": "Baliak ka pangaturan tampilan",
+ "ext-uls-input-settings-title": "Pangaturan masuakan",
+ "ext-uls-input-settings-title-short": "Masuakan",
+ "ext-uls-input-settings-desc": "Manulih jo bahaso nan babedo?",
+ "ext-uls-input-settings-ime-settings": "Metode masuakan untuak $1",
+ "ext-uls-input-settings-ui-language": "Bahaso nan digunoan untuak manulih",
+ "ext-uls-back-to-input-settings": "Baliak ka pangaturan masuakan",
+ "ext-uls-disable-input-method": "Nonaktipan metode masuakan.",
+ "ext-uls-input-settings-more-languages-tooltip": "Labiah banyak bahaso",
+ "jquery-ime-other-languages": "Bahaso-bahaso lain",
+ "jquery-ime-disable-text": "Nonaktipan metode masuakan",
+ "jquery-ime-help": "Bantuan",
+ "ext-uls-input-disable": "Nonaktipan metode masuakan",
+ "ext-uls-input-enable": "Aktipan metode masuakan",
+ "ext-uls-input-disable-info": "Metode masuakan dinonaktipan.",
+ "ext-uls-input-settings-noime": "Metode masuakan indak tasadio untuak bahaso iko.",
+ "ext-uls-input-disable-notification": "Parangkaik input dinonaktipan",
+ "ext-uls-input-disable-notification-undo": "Ulang",
+ "ext-uls-input-disable-notification-info-personal": "Sanak dapek mangaktipan parangkaik input tiok saaik dari pangaturan bahaso.",
+ "ext-uls-input-disable-notification-info-interlanguage": "Sanak dapek mangaktipan parangkaik input tiok saaik dari pangaturan bahaso di sabalah daftar bahaso."
+}
diff --git a/MLEB/UniversalLanguageSelector/i18n/mk.json b/MLEB/UniversalLanguageSelector/i18n/mk.json
new file mode 100644
index 00000000..1ce99c07
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/i18n/mk.json
@@ -0,0 +1,68 @@
+{
+ "@metadata": {
+ "authors": [
+ "Bjankuloski06"
+ ]
+ },
+ "uls-desc": "Му дава на корисникот неколку начини за избор на јазик и прилагодување на јазичните поставки",
+ "uls-plang-title-languages": "Јазици",
+ "ext-uls-select-language-settings-icon-tooltip": "Јазични поставки",
+ "ext-uls-undo-language-tooltip-text": "Јазикот сменет од изворниот $1",
+ "ext-uls-language-settings-preferences-link": "Уште јазични поставки",
+ "uls-betafeature-label": "Збиени јазични врски",
+ "uls-betafeature-desc": "Прикажува скратена верзија на јазичните врски, односно само оние јазици што се однесуваат на вас",
+ "ext-uls-display-settings-title": "Поставки за приказ",
+ "ext-uls-display-settings-language-tab": "Јазик",
+ "ext-uls-display-settings-fonts-tab": "Фонтови",
+ "ext-uls-display-settings-title-short": "Приказ",
+ "ext-uls-display-settings-desc": "Јазик на менијата и фонтовите.",
+ "ext-uls-language-settings-title": "Јазични поставки",
+ "ext-uls-language-settings-apply": "Примени ги поставките",
+ "ext-uls-language-settings-cancel": "Откажи",
+ "ext-uls-language-buttons-help": "Измена на јазикот на менијата. Не го менува јазикот на содржината.",
+ "ext-uls-display-settings-font-settings": "Поставки за фонт",
+ "ext-uls-display-settings-ui-language": "Јазик за приказ",
+ "ext-uls-display-settings-anon-label": "Јазик за приказ:",
+ "ext-uls-display-settings-anon-same-as-content": "$1 (исто како содржината)",
+ "ext-uls-display-settings-anon-log-in-cta": "[[Special:UserLogin|Најавете се]] за да изберете друг јазик за менијата.",
+ "ext-uls-webfonts-settings-title": "Преземи фонтови кога ќе треба",
+ "ext-uls-webfonts-settings-info": "Автоматски преземи ги фонтовите што недостасуваат и дај избор на претпочитани фонтови",
+ "ext-uls-webfonts-settings-info-link": "Повеќе информации",
+ "ext-uls-webfonts-select-for": "Одбери фонт за $1",
+ "ext-uls-webfonts-select-for-ui-info": "Фонт за корисничкиот посредник",
+ "ext-uls-webfonts-select-for-content-info": "Фонт за содржините",
+ "ext-uls-webfonts-system-font": "Системски фонт",
+ "ext-uls-back-to-display-settings": "Назад на нагодувањата за приказ",
+ "ext-uls-input-settings-title": "Вносни поставки",
+ "ext-uls-input-settings-title-short": "Внос",
+ "ext-uls-input-settings-desc": "Пишувате на друг јазик?",
+ "ext-uls-input-settings-ime-settings": "Вносни методи за $1",
+ "ext-uls-input-settings-ui-language": "Јазик на пишување",
+ "ext-uls-back-to-input-settings": "Назад на вносните поставки",
+ "ext-uls-ime-help": "Помош со користење",
+ "ext-uls-disable-input-method": "Користи ја матичната тастатура",
+ "ext-uls-input-settings-more-languages-tooltip": "Повеќе јазици",
+ "jquery-ime-other-languages": "Други јазици",
+ "jquery-ime-disable-text": "Користи ја матичната тастатура",
+ "jquery-ime-help": "Помош",
+ "ext-uls-input-disable": "Исклучи вносни алатки",
+ "ext-uls-input-enable": "Вклучи вносни алатки",
+ "ext-uls-input-disable-info": "Вносните алатки се исклучени.",
+ "ext-uls-input-settings-noime": "Нема вносни методи за овој јазик.",
+ "ext-uls-input-disable-notification": "Вносните алатки се исклучени",
+ "ext-uls-input-disable-notification-undo": "Врати",
+ "ext-uls-input-disable-notification-info-personal": "Вносните алатки можете да ги вклучите во јазичните поставки во секое време.",
+ "ext-uls-input-disable-notification-info-interlanguage": "Вносните алатки можете да ги вклучите во во секое време во јазичните поставки, веднаш до списокот на јазици.",
+ "ext-uls-language-settings-applying": "Применувам...",
+ "ext-uls-compact-link-count": "Уште на {{PLURAL:$1|еден јазик|$1 јазика}}",
+ "apihelp-languagesearch-description": "Пребарајте имиња на јазици на било кое писмо.",
+ "apihelp-languagesearch-param-search": "Низа за пребарување.",
+ "apihelp-languagesearch-param-typos": "Број на допуштени грешки при пишување во низата на пребарувањето.",
+ "apihelp-languagesearch-example-1": "Пребарај „Te“",
+ "apihelp-languagesearch-example-2": "Пребарај „ഫി“",
+ "apihelp-languagesearch-example-3": "Пребарај „ഫി“, допуштајќи една грешка при пишување",
+ "apihelp-ulslocalization-description": "Дај превод на универзалниот јазичен избрач на даден јазик.",
+ "apihelp-ulslocalization-param-language": "Јазична низа.",
+ "apihelp-ulslocalization-example-1": "Дај превод на тамилски",
+ "apihelp-ulslocalization-example-2": "Дај превод на хинди"
+}
diff --git a/MLEB/UniversalLanguageSelector/i18n/ml.json b/MLEB/UniversalLanguageSelector/i18n/ml.json
new file mode 100644
index 00000000..cb7f6201
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/i18n/ml.json
@@ -0,0 +1,62 @@
+{
+ "@metadata": {
+ "authors": [
+ "Praveenp",
+ "Santhosh Thottingal",
+ "Santhosh.thottingal",
+ "Vssun",
+ "Vnrakeshpnm"
+ ]
+ },
+ "uls-desc": "ഭാഷ തിരഞ്ഞെടുക്കുന്നതിനും സജ്ജീകരിക്കുന്നതിനുമുള്ള സംവിധാനം",
+ "uls-plang-title-languages": "ഭാഷകൾ",
+ "ext-uls-select-language-settings-icon-tooltip": "ഭാഷാ സജ്ജീകരണങ്ങൾ",
+ "ext-uls-undo-language-tooltip-text": "ഭാഷ മാറിയിരിക്കുന്നു. പഴയ ഭാഷ: $1",
+ "ext-uls-language-settings-preferences-link": "കൂടുതൽ ഭാഷാസജ്ജീകരണങ്ങൾ",
+ "uls-betafeature-label": "ഒതുക്കമുള്ള ഭാഷാ കണ്ണികൾ",
+ "uls-betafeature-desc": "താങ്കളെ സംബന്ധിച്ച് പ്രസക്തമായ ഭാഷകൾ മാത്രം ഉൾപ്പെടുന്ന, ചുരുക്കിയ പട്ടിക പ്രദർശിപ്പിക്കുക.",
+ "ext-uls-display-settings-title": "പ്രദർശന സജ്ജീകരണങ്ങൾ",
+ "ext-uls-display-settings-language-tab": "ഭാഷ",
+ "ext-uls-display-settings-fonts-tab": "ഫോണ്ടുകൾ",
+ "ext-uls-display-settings-title-short": "പ്രദർശനം",
+ "ext-uls-display-settings-desc": "ഫോണ്ടുകളും സമ്പർക്കമുഖത്തിന്റെ ഭാഷയും ക്രമീകരിക്കുക.",
+ "ext-uls-language-settings-title": "ഭാഷാ സജ്ജീകരണങ്ങൾ",
+ "ext-uls-language-settings-apply": "സജ്ജമാക്കുക",
+ "ext-uls-language-settings-cancel": "റദ്ദാക്കുക",
+ "ext-uls-language-buttons-help": "മെനുകളുടെ ഭാഷ മാറ്റുക. ഉള്ളടക്കത്തിന്റെ ഭാഷ മാറില്ല.",
+ "ext-uls-display-settings-font-settings": "ഫോണ്ട് സജ്ജീകരണങ്ങൾ",
+ "ext-uls-display-settings-ui-language": "സമ്പർക്കമുഖ ഭാഷ",
+ "ext-uls-display-settings-anon-label": "സമ്പർക്കമുഖ ഭാഷ:",
+ "ext-uls-display-settings-anon-same-as-content": "$1 (ഉള്ളടക്കത്തിന്റെ ഭാഷ)",
+ "ext-uls-display-settings-anon-log-in-cta": "മെനുകളുടെ ഭാഷ മാറ്റുന്നതിനു [[Special:UserLogin|ലോഗിൻ]] ചെയ്യുക.",
+ "ext-uls-webfonts-settings-title": "ആവശ്യമുള്ളപ്പോൾ ഫോണ്ടുകൾ ഡൗൺലോഡ് ചെയ്യുക",
+ "ext-uls-webfonts-settings-info": "ലഭ്യമല്ലാത്ത ഫോണ്ടുകൾ സ്വതേ ഡൗൺലോഡ് ചെയ്യപ്പെടും ഒപ്പം ഇഷ്ടപ്പെട്ട ഫോണ്ടുകൾ തിരഞ്ഞെടുക്കാൻ അവസരവുമുണ്ടാകും.",
+ "ext-uls-webfonts-settings-info-link": "കൂടുതൽ വിവരങ്ങൾ",
+ "ext-uls-webfonts-select-for": "$1 ഭാഷയ്ക്കുള്ള ഫോണ്ട്",
+ "ext-uls-webfonts-select-for-ui-info": "ഉപയോക്തൃ സമ്പർക്കമുഖത്തിനുള്ള ഫോണ്ട്",
+ "ext-uls-webfonts-select-for-content-info": "ഉള്ളടക്കത്തിനുള്ള ഫോണ്ട്",
+ "ext-uls-webfonts-system-font": "സിസ്റ്റത്തിലെ ഫോണ്ട്",
+ "ext-uls-back-to-display-settings": "പ്രദർശനസജ്ജീകരണങ്ങളിലേക്ക് മടങ്ങുക",
+ "ext-uls-input-settings-title": "എഴുത്തു സജ്ജീകരണങ്ങൾ",
+ "ext-uls-input-settings-title-short": "എഴുത്ത്",
+ "ext-uls-input-settings-desc": "വേറെ ഭാഷകളിൽ എഴുതാനുണ്ടോ?",
+ "ext-uls-input-settings-ime-settings": "$1 ഭാഷയ്ക്കുള്ള എഴുത്തുപകരണങ്ങൾ",
+ "ext-uls-input-settings-ui-language": "എഴുതാനുള്ള ഭാഷ",
+ "ext-uls-back-to-input-settings": "എഴുതൽ സജ്ജീകരണങ്ങളിലേക്ക് മടങ്ങുക",
+ "ext-uls-ime-help": "ഉപയോഗരീതി",
+ "ext-uls-disable-input-method": "സിസ്റ്റത്തിലെ കീബോർഡ് ഉപയോഗിക്കുക",
+ "ext-uls-input-settings-more-languages-tooltip": "കൂടുതൽ ഭാഷകൾ",
+ "jquery-ime-other-languages": "മറ്റു ഭാഷകൾ",
+ "jquery-ime-disable-text": "സിസ്റ്റത്തിലെ കീബോർഡ് ഉപയോഗിക്കുക",
+ "jquery-ime-help": "സഹായം",
+ "ext-uls-input-disable": "എഴുത്തുപകരണം പ്രവർത്തനരഹിതമാക്കുക",
+ "ext-uls-input-enable": "എഴുത്തുപകരണം സജ്ജമാക്കുക",
+ "ext-uls-input-disable-info": "എഴുത്തുപകരണം പ്രവർത്തനരഹിതമാക്കിയിരിക്കുന്നു.",
+ "ext-uls-input-settings-noime": "ഈ ഭാഷയ്ക്ക് എഴുത്തുപകരണങ്ങളൊന്നും ലഭ്യമല്ല.",
+ "ext-uls-input-disable-notification": "എഴുത്തുപകരണം പ്രവർത്തനരഹിതമാക്കിയിരിക്കുന്നു.",
+ "ext-uls-input-disable-notification-undo": "തിരസ്ക്കരിക്കുക",
+ "ext-uls-input-disable-notification-info-personal": "ഭാഷാ സജ്ജീകരണങ്ങൾ ഉപയോഗിച്ച് താങ്കൾക്ക് എഴുത്തുപകരണം വീണ്ടും പ്രവർത്തനസജ്ജമാക്കാം.",
+ "ext-uls-input-disable-notification-info-interlanguage": "ഭാഷകളുടെ പട്ടികയ്ക്കടുത്തുള്ള ഭാഷാ സജ്ജീകരണങ്ങൾ ഉപയോഗിച്ച് താങ്കൾക്ക് എഴുത്തുപകരണം വീണ്ടും പ്രവർത്തനസജ്ജമാക്കാം.",
+ "ext-uls-language-settings-applying": "സജ്ജമാക്കുന്നു...",
+ "ext-uls-compact-link-count": "{{PLURAL:$1|ഒരു ഭാഷ കൂടി|$1 ഭാഷകൾ കൂടി}}"
+}
diff --git a/MLEB/UniversalLanguageSelector/i18n/mn.json b/MLEB/UniversalLanguageSelector/i18n/mn.json
new file mode 100644
index 00000000..dfac70d1
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/i18n/mn.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Mongol"
+ ]
+ },
+ "uls-betafeature-desc": "Өөрт илүү хамааралтай хэлний жагсаалтын богино хувилбарыг харуулах"
+}
diff --git a/MLEB/UniversalLanguageSelector/i18n/mr.json b/MLEB/UniversalLanguageSelector/i18n/mr.json
new file mode 100644
index 00000000..e60ca77c
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/i18n/mr.json
@@ -0,0 +1,55 @@
+{
+ "@metadata": {
+ "authors": [
+ "Mahitgar",
+ "V.narsikar"
+ ]
+ },
+ "uls-desc": "सदस्यांना भाषा निवडण्याचे आणि त्यांची मांडणी अनुकूल करण्याचे अनेक मार्ग उपलब्ध करते",
+ "uls-plang-title-languages": "भाषा",
+ "ext-uls-select-language-settings-icon-tooltip": "भाषा सेटींग्स",
+ "ext-uls-undo-language-tooltip-text": "$1 पासुन भाषा बदलली",
+ "ext-uls-language-settings-preferences-link": "अधिकचे भाषा मांडणी पर्याय",
+ "ext-uls-display-settings-title": "मांडणी दाखवा",
+ "ext-uls-display-settings-language-tab": "भाषा",
+ "ext-uls-display-settings-fonts-tab": "टंक (फाँट)",
+ "ext-uls-display-settings-title-short": "दर्शवा",
+ "ext-uls-display-settings-desc": "मेनु व फाँटच्या वापरासाठी भाषेची निवड करा.",
+ "ext-uls-language-settings-title": "भाषा सेटींग्स",
+ "ext-uls-language-settings-apply": "मांडणी (सेटींग्ज) लागु करा",
+ "ext-uls-language-settings-cancel": "रद्द करा",
+ "ext-uls-language-buttons-help": "सुचालन(मेनु)ची भाषा बदला.अंगीकृत भाषेवर (कंटेंट लॅंग्वेज) त्याचा परिणाम होणार नाही.",
+ "ext-uls-display-settings-font-settings": "फाँटची मांडणी (सेटींग्ज)",
+ "ext-uls-display-settings-ui-language": "भाषा दाखवा",
+ "ext-uls-display-settings-anon-label": "भाषा दाखवा:",
+ "ext-uls-display-settings-anon-same-as-content": "$1 (मजकुराच्या भाषेनुसार)",
+ "ext-uls-display-settings-anon-log-in-cta": "दुसऱ्या कोणत्याही भाषेचा उपयोग करण्यासाठी [[Special:UserLogin|प्रवेश]] करा",
+ "ext-uls-webfonts-settings-title": "आवश्यकता भासल्यास टंकांचे अधिभारण करा",
+ "ext-uls-webfonts-settings-info": "हरविलेल्या टंकांचे स्वयंचलितरित्या अधिभारण करा व पसंतीतले टंक निवडण्यास परवानगी द्या.",
+ "ext-uls-webfonts-select-for": "$1 करिता टंक(फाँट) निवडा",
+ "ext-uls-webfonts-select-for-ui-info": "सदस्य आंतरपृष्ठासाठी (इंटरफेस) वापरलेला फाँट",
+ "ext-uls-webfonts-select-for-content-info": "आशयासाठी वापरण्यात आलेला फाँट",
+ "ext-uls-webfonts-system-font": "प्रणालीतील (सिस्टीम) फाँट",
+ "ext-uls-back-to-display-settings": "'मांडणी दाखवा'कडे परत जा",
+ "ext-uls-input-settings-title": "क्षेपन मांडणी (टायपींग/ईनपुट सेटींग्ज)",
+ "ext-uls-input-settings-title-short": "क्षेपन (टायपींग ईनपुट)",
+ "ext-uls-input-settings-desc": "वेगळ्या भाषेत लिहीत आहात? <br /> (ULS सध्या यथादृश्यसंपादकात उपलब्ध नाही,मराठी टायपींग सध्या केवळ स्रोत संपादन पद्धतीतच उपलब्ध आहे)",
+ "ext-uls-input-settings-ime-settings": " $1 साठी क्षेपन पद्धती (टायपींग/ईनपुट मेथड्स)",
+ "ext-uls-input-settings-ui-language": "लिहिण्यासाठी वापरलेली भाषा",
+ "ext-uls-back-to-input-settings": "क्षेपन मांडणी (टायपींग/ईनपुट सेटींग्ज)कडे परत जा",
+ "ext-uls-ime-help": "कसे वापरावे ?",
+ "ext-uls-disable-input-method": "संगणक कळफलकाची मुळ भाषा वापरा",
+ "ext-uls-input-settings-more-languages-tooltip": "अधिक भाषा",
+ "jquery-ime-other-languages": "इतर भाषा",
+ "jquery-ime-disable-text": "संगणक कळफलकभाषा वापरा",
+ "jquery-ime-help": "साहाय्य",
+ "ext-uls-input-disable": "क्षेपन(टायपींग) साधनांचा वापर बंद करा",
+ "ext-uls-input-enable": "क्षेपन(टायपींग) साधनांचा वापर सुरु करा",
+ "ext-uls-input-disable-info": "क्षेपन(टायपींग) साधने बंद केली आहेत.",
+ "ext-uls-input-settings-noime": "या भाषेसाठी कोणत्याही क्षेपन पद्धती (टायपींग/ईनपुट मेथड्स) उपलब्ध नाहीत.",
+ "ext-uls-input-disable-notification": "क्षेपन(टायपींग) साधने बंद करण्यात आलेली आहेत.",
+ "ext-uls-input-disable-notification-undo": "रद्द करा",
+ "ext-uls-input-disable-notification-info-personal": "आपण क्षेपन साधनांचा (टायपींग/इनपुट टुल्स) वापर 'भाषा मांडणी'(लॅंग्वेज सेटींग्ज)तुन कधीही पुर्ववत् करु शकता.",
+ "ext-uls-input-disable-notification-info-interlanguage": "भाषेच्या यादीशेजारी असलेल्या क्षेपन साधनांचा (टायपींग/इनपुट टुल्स) वापर आपण 'भाषा मांडणी'(लॅंग्वेज सेटींग्ज)तुन कधीही पुर्ववत् करु शकता.",
+ "ext-uls-language-settings-applying": "लागू करीत आहे..."
+}
diff --git a/MLEB/UniversalLanguageSelector/i18n/ms.json b/MLEB/UniversalLanguageSelector/i18n/ms.json
new file mode 100644
index 00000000..4031156f
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/i18n/ms.json
@@ -0,0 +1,55 @@
+{
+ "@metadata": {
+ "authors": [
+ "Anakmalaysia",
+ "Xabier Armendaritz"
+ ]
+ },
+ "uls-desc": "Membolehkan pengguna memilih bahasa dan mengubah tetapan bahasa dengan pelbagai cara",
+ "uls-plang-title-languages": "Bahasa",
+ "ext-uls-select-language-settings-icon-tooltip": "Tetapan bahasa",
+ "ext-uls-undo-language-tooltip-text": "Bahasa ditukar dari $1",
+ "ext-uls-language-settings-preferences-link": "Tetapan bahasa lanjutan",
+ "ext-uls-display-settings-title": "Tetapan paparan",
+ "ext-uls-display-settings-language-tab": "Bahasa",
+ "ext-uls-display-settings-fonts-tab": "Fon",
+ "ext-uls-display-settings-title-short": "Paparan",
+ "ext-uls-display-settings-desc": "Tetapkan bahasa yang digunakan untuk menu dan rupa huruf.",
+ "ext-uls-language-settings-title": "Tetapan bahasa",
+ "ext-uls-language-settings-apply": "Gunakan tetapan",
+ "ext-uls-language-settings-cancel": "Batalkan",
+ "ext-uls-language-buttons-help": "Menukar bahasa menu. Bahasa kandungan tidak terjejas.",
+ "ext-uls-display-settings-font-settings": "Tetapan rupa huruf",
+ "ext-uls-display-settings-ui-language": "Bahasa paparan",
+ "ext-uls-display-settings-anon-label": "Bahasa paparan:",
+ "ext-uls-display-settings-anon-same-as-content": "Bahasa Melayu (sama dengan kandungan)",
+ "ext-uls-display-settings-anon-log-in-cta": "[[Special:UserLogin|Log masuk]] untuk memilih bahasa yang lain untuk menu.",
+ "ext-uls-webfonts-settings-title": "Muat turun rupa huruf apabila diperlukan",
+ "ext-uls-webfonts-settings-info": "Webfont akan dimuat turun untuk memaparkan teks dalam tulisan khas.",
+ "ext-uls-webfonts-settings-info-link": "Maklumat lanjut",
+ "ext-uls-webfonts-select-for": "Pilih rupa huruf untuk $1",
+ "ext-uls-webfonts-select-for-ui-info": "Rupa huruf yang digunakan untuk antaramuka pengguna",
+ "ext-uls-webfonts-select-for-content-info": "Rupa huruf yang digunakan untuk isi kandungan",
+ "ext-uls-webfonts-system-font": "Fon sistem",
+ "ext-uls-back-to-display-settings": "Kembali ke tetapan paparan",
+ "ext-uls-input-settings-title": "Tetapan input",
+ "ext-uls-input-settings-title-short": "Input",
+ "ext-uls-input-settings-desc": "Menulis dalam bahasa lain?",
+ "ext-uls-input-settings-ime-settings": "Kaedah input untuk $1",
+ "ext-uls-input-settings-ui-language": "Bahasa yang digunakan untuk menulis",
+ "ext-uls-back-to-input-settings": "Kembali ke tetapan input",
+ "ext-uls-ime-help": "Cara penggunaan",
+ "ext-uls-disable-input-method": "Gunakan papan kekunci asal",
+ "ext-uls-input-settings-more-languages-tooltip": "Bahasa lain",
+ "jquery-ime-other-languages": "Bahasa-bahasa lain",
+ "jquery-ime-disable-text": "Gunakan papan kekunci asal",
+ "jquery-ime-help": "Bantuan",
+ "ext-uls-input-disable": "Matikan peralatan input",
+ "ext-uls-input-enable": "Hidupkan peralatan input",
+ "ext-uls-input-disable-info": "Peralatan input telah dimatikan.",
+ "ext-uls-input-settings-noime": "Tiada kaedah input untuk bahasa ini.",
+ "ext-uls-input-disable-notification": "Peralatan input dimatikan",
+ "ext-uls-input-disable-notification-undo": "Nyahbuat",
+ "ext-uls-input-disable-notification-info-personal": "Anda boleh menghidupkan peralatan input pada bila-bila masa dari tetapan bahasa.",
+ "ext-uls-input-disable-notification-info-interlanguage": "Anda boleh menghidupkan peralatan input pada bila-bila masa dari tetapan bahasa dekat dengan senarai bahasa."
+}
diff --git a/MLEB/UniversalLanguageSelector/i18n/mt.json b/MLEB/UniversalLanguageSelector/i18n/mt.json
new file mode 100644
index 00000000..94488478
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/i18n/mt.json
@@ -0,0 +1,40 @@
+{
+ "@metadata": {
+ "authors": [
+ "Chrisportelli"
+ ]
+ },
+ "ext-uls-select-language-settings-icon-tooltip": "Konfigurazzjoni tal-lingwa",
+ "ext-uls-undo-language-tooltip-text": "Il-lingwa nbidlet minn $1",
+ "ext-uls-display-settings-title": "Konfigurazzjoni tal-viżwal",
+ "ext-uls-display-settings-language-tab": "Lingwa",
+ "ext-uls-display-settings-fonts-tab": "Tipi",
+ "ext-uls-display-settings-title-short": "Viżwal",
+ "ext-uls-display-settings-desc": "Iddefenixxi l-lingwa wżata għall-menus u t-tipi.",
+ "ext-uls-language-settings-title": "Konfigurazzjoni tal-lingwa",
+ "ext-uls-language-settings-cancel": "Ħassar",
+ "ext-uls-language-buttons-help": "Biddel il-lingwa tal-menus. Il-lingwa tal-kontenut mhux se tinbidel.",
+ "ext-uls-display-settings-ui-language": "Lingwa tal-viżwal",
+ "ext-uls-display-settings-anon-label": "Lingwa tal-viżwal:",
+ "ext-uls-display-settings-anon-same-as-content": "Malti (bħall-kontenut)",
+ "ext-uls-display-settings-anon-log-in-cta": "[[Special:UserLogin|Idħol]] sabiex tagħżel lingwa differenti għall-menus.",
+ "ext-uls-webfonts-select-for": "Agħżel it-tipa għal $1",
+ "ext-uls-webfonts-select-for-ui-info": "Tipa wżata għall-interfaċċa tal-utent",
+ "ext-uls-webfonts-select-for-content-info": "Tipa wżata għall-kontenut",
+ "ext-uls-webfonts-system-font": "Tipa tas-sistema",
+ "ext-uls-input-settings-title-short": "Kitba",
+ "ext-uls-input-settings-desc": "Inti tikteb b'lingwa differenti?",
+ "ext-uls-input-settings-ime-settings": "Metodi ta' kitba għal $1",
+ "ext-uls-input-settings-ui-language": "Lingwa wżata għall-kitba",
+ "ext-uls-disable-input-method": "Uża t-tastiera nattiva",
+ "ext-uls-input-settings-more-languages-tooltip": "Aktar lingwi",
+ "jquery-ime-other-languages": "Lingwi oħra",
+ "jquery-ime-disable-text": "Uża t-tastiera nattiva",
+ "jquery-ime-help": "Għajnuna",
+ "ext-uls-input-disable": "Iddiżattiva l-istrumenti tal-kitba",
+ "ext-uls-input-enable": "Ippermetti l-għodda tal-kitba",
+ "ext-uls-input-disable-info": "L-għodda tal-kitba huma diżattivati.",
+ "ext-uls-input-settings-noime": "L-ebda metodu ta' kitba mhu disponibbli għal din il-lingwa.",
+ "ext-uls-input-disable-notification": "L-għodda tal-kitba ġew diżattivati",
+ "ext-uls-input-disable-notification-undo": "Reġġa' lura"
+}
diff --git a/MLEB/UniversalLanguageSelector/i18n/nap.json b/MLEB/UniversalLanguageSelector/i18n/nap.json
new file mode 100644
index 00000000..48fe3e94
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/i18n/nap.json
@@ -0,0 +1,13 @@
+{
+ "@metadata": {
+ "authors": [
+ "Chelin",
+ "C.R.",
+ "Nemo bis"
+ ]
+ },
+ "uls-plang-title-languages": "Lengue",
+ "uls-betafeature-label": "Cumpatta cullegamiente lenguisteche",
+ "uls-betafeature-desc": "Mmusta na verziona cchiù curta d' 'a lista 'e llengue, sulamente cu 'e llengue ca songo 'e cchiù mpurtante pe' tte.",
+ "ext-uls-language-settings-cancel": "Canciella"
+}
diff --git a/MLEB/UniversalLanguageSelector/i18n/nb.json b/MLEB/UniversalLanguageSelector/i18n/nb.json
new file mode 100644
index 00000000..d2056f84
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/i18n/nb.json
@@ -0,0 +1,58 @@
+{
+ "@metadata": {
+ "authors": [
+ "Danmichaelo"
+ ]
+ },
+ "uls-desc": "Gir brukeren flere måter å velge språk på og endre språkinnstillinger",
+ "uls-plang-title-languages": "Språk",
+ "ext-uls-select-language-settings-icon-tooltip": "Språkinnstillinger",
+ "ext-uls-undo-language-tooltip-text": "Språk endret fra $1",
+ "ext-uls-language-settings-preferences-link": "Flere språkinnstillinger",
+ "uls-betafeature-label": "Kompakte språklenker",
+ "uls-betafeature-desc": "Vis en kortere utgave av språklisten, med kun språk som er relevante for deg.",
+ "ext-uls-display-settings-title": "Visningsinnstillinger",
+ "ext-uls-display-settings-language-tab": "Språk",
+ "ext-uls-display-settings-fonts-tab": "Skrifttyper",
+ "ext-uls-display-settings-title-short": "Visning",
+ "ext-uls-display-settings-desc": "Velg språk og skrifttyper for brukergrensesnittet.",
+ "ext-uls-language-settings-title": "Språkinnstillinger",
+ "ext-uls-language-settings-apply": "Bruk innstillinger",
+ "ext-uls-language-settings-cancel": "Avbryt",
+ "ext-uls-language-buttons-help": "Endre språk for brukergrensesnittet. Innholdet vil ikke bli påvirket.",
+ "ext-uls-display-settings-font-settings": "Skrifttypeinnstillinger",
+ "ext-uls-display-settings-ui-language": "Visningsspråk",
+ "ext-uls-display-settings-anon-label": "Visningsspråk:",
+ "ext-uls-display-settings-anon-same-as-content": "$1 (samme som for innhold)",
+ "ext-uls-display-settings-anon-log-in-cta": "[[Special:UserLogin|Logg inn]] for å velge et annet språk for brukergrensesnittet.",
+ "ext-uls-webfonts-settings-title": "Last ned skrifttyper når det er nødvendig",
+ "ext-uls-webfonts-settings-info": "Last ned manglende skrifttyper automatisk og tillat valg av foretrukne skrifttyper.",
+ "ext-uls-webfonts-settings-info-link": "Mer informasjon",
+ "ext-uls-webfonts-select-for": "Velg skrifttype for $1",
+ "ext-uls-webfonts-select-for-ui-info": "Skrifttype for brukergrensesnittet",
+ "ext-uls-webfonts-select-for-content-info": "Skrifttype for innholdet",
+ "ext-uls-webfonts-system-font": "Systemets skrifttype",
+ "ext-uls-back-to-display-settings": "Tilbake til visningsinnstillinger",
+ "ext-uls-input-settings-title": "Inndatainnstillinger",
+ "ext-uls-input-settings-title-short": "Inndata",
+ "ext-uls-input-settings-desc": "Skriver du på et annet språk?",
+ "ext-uls-input-settings-ime-settings": "Inndatametoder for $1",
+ "ext-uls-input-settings-ui-language": "Språk brukt for skriving",
+ "ext-uls-back-to-input-settings": "Tilbake til inndatainnstillinger",
+ "ext-uls-ime-help": "Hjelp",
+ "ext-uls-disable-input-method": "Bruk standardtastatur",
+ "ext-uls-input-settings-more-languages-tooltip": "Flere språk",
+ "jquery-ime-other-languages": "Andre språk",
+ "jquery-ime-disable-text": "Bruk standardtastatur",
+ "jquery-ime-help": "Hjelp",
+ "ext-uls-input-disable": "Skru av inndataverktøy",
+ "ext-uls-input-enable": "Skru på inndataverktøy",
+ "ext-uls-input-disable-info": "Inndataverktøy er avskrudd.",
+ "ext-uls-input-settings-noime": "Ingen inndatametoder er tilgjengelige for dette språket.",
+ "ext-uls-input-disable-notification": "Inndataverktøy er avskrudd",
+ "ext-uls-input-disable-notification-undo": "Angre",
+ "ext-uls-input-disable-notification-info-personal": "Du kan når som helst skru på inndataverktøy fra språkinnstillingene.",
+ "ext-uls-input-disable-notification-info-interlanguage": "Du kan når som helst skru på inndataverktøy fra språkinnstillingene ved siden av språklisten.",
+ "ext-uls-language-settings-applying": "Tar i bruk…",
+ "ext-uls-compact-link-count": "{{PLURAL:$1|Ett språk til|$1 språk til}}"
+}
diff --git a/MLEB/UniversalLanguageSelector/i18n/nds-nl.json b/MLEB/UniversalLanguageSelector/i18n/nds-nl.json
new file mode 100644
index 00000000..d976356f
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/i18n/nds-nl.json
@@ -0,0 +1,49 @@
+{
+ "@metadata": {
+ "authors": [
+ "Servien"
+ ]
+ },
+ "ext-uls-select-language-settings-icon-tooltip": "Taalinstellingen",
+ "ext-uls-undo-language-tooltip-text": "Taal ewiezigd van $1",
+ "ext-uls-language-settings-preferences-link": "Meer taalinstellingen",
+ "ext-uls-display-settings-title": "Weergave-instellingen",
+ "ext-uls-display-settings-language-tab": "Taal",
+ "ext-uls-display-settings-fonts-tab": "Lettertypen",
+ "ext-uls-display-settings-title-short": "Weergave",
+ "ext-uls-display-settings-desc": "Taal kiezen veur menu's en lettertypen.",
+ "ext-uls-language-settings-title": "Taalinstellingen",
+ "ext-uls-language-settings-apply": "Laot kulen!",
+ "ext-uls-language-settings-cancel": "Aofbreken",
+ "ext-uls-language-buttons-help": "Wiezig de taal van menu's. De taal van de inhoud wörden niet ewiezigd.",
+ "ext-uls-display-settings-font-settings": "Lettertype-instellingen",
+ "ext-uls-display-settings-ui-language": "Taal veur weergave",
+ "ext-uls-display-settings-anon-label": "Weergavetaal:",
+ "ext-uls-display-settings-anon-same-as-content": "$1 (t zelfde as de inhoud)",
+ "ext-uls-display-settings-anon-log-in-cta": "[[Special:UserLogin|Meld je eigen an]] um n aandere taal veur menu's te kiezen.",
+ "ext-uls-webfonts-select-for": "Lettertype kiezen veur $1",
+ "ext-uls-webfonts-select-for-ui-info": "Lettertype veur de gebrukersumgeving",
+ "ext-uls-webfonts-select-for-content-info": "Lettertype veur de inhoud",
+ "ext-uls-webfonts-system-font": "Systeemlettertype",
+ "ext-uls-back-to-display-settings": "Weerumme naor weergave-instellingen",
+ "ext-uls-input-settings-title": "Invoerinstellingen",
+ "ext-uls-input-settings-title-short": "Invoer",
+ "ext-uls-input-settings-desc": "Schrieven in n aandere taal?",
+ "ext-uls-input-settings-ime-settings": "Invoermethoden veur $1",
+ "ext-uls-input-settings-ui-language": "Taal waorin eschreven wörden",
+ "ext-uls-back-to-input-settings": "Weerumme naor invoerinstellingen",
+ "ext-uls-ime-help": "Hoe um te gebruken",
+ "ext-uls-disable-input-method": "Standardtoetsebord gebruken",
+ "ext-uls-input-settings-more-languages-tooltip": "Meer talen",
+ "jquery-ime-other-languages": "Aandere talen",
+ "jquery-ime-disable-text": "Standardtoetsebord gebruken",
+ "jquery-ime-help": "Hulpe",
+ "ext-uls-input-disable": "Invoermethoden uutzetten",
+ "ext-uls-input-enable": "Invoermethoden anzetten",
+ "ext-uls-input-disable-info": "Invoermethoden bin uutezet.",
+ "ext-uls-input-settings-noime": "Der bin gien invoermethoden beschikbaor veur disse taal.",
+ "ext-uls-input-disable-notification": "Invoermethoden bin uutezet",
+ "ext-uls-input-disable-notification-undo": "Weerummedreien",
+ "ext-uls-input-disable-notification-info-personal": "Je kunnen de invoermethoden weer anzetten via de taalinstellingen.",
+ "ext-uls-input-disable-notification-info-interlanguage": "Je kunnen de invoermethoden weer anzetten via de taalinstellingen naost de lieste mit talen."
+}
diff --git a/MLEB/UniversalLanguageSelector/i18n/nl.json b/MLEB/UniversalLanguageSelector/i18n/nl.json
new file mode 100644
index 00000000..704bd810
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/i18n/nl.json
@@ -0,0 +1,62 @@
+{
+ "@metadata": {
+ "authors": [
+ "Siebrand",
+ "Wiki13",
+ "Southparkfan",
+ "Arent",
+ "SPQRobin"
+ ]
+ },
+ "uls-desc": "Biedt gebruikers verschillende mogelijkheden om een taal te kiezen en bijbehorende instellingen aan te passen",
+ "uls-plang-title-languages": "Talen",
+ "ext-uls-select-language-settings-icon-tooltip": "Taalinstellingen",
+ "ext-uls-undo-language-tooltip-text": "Taal gewijzigd van $1",
+ "ext-uls-language-settings-preferences-link": "Meer taalinstellingen",
+ "uls-betafeature-label": "Compacte taalkoppelingen",
+ "uls-betafeature-desc": "Een kortere versie van de talenlijst weergeven, met alleen de talen die het meest relevant zijn voor u.",
+ "ext-uls-display-settings-title": "Weergaveinstellingen",
+ "ext-uls-display-settings-language-tab": "Taal",
+ "ext-uls-display-settings-fonts-tab": "Lettertypen",
+ "ext-uls-display-settings-title-short": "Weergave",
+ "ext-uls-display-settings-desc": "Taal instellen voor menu's en lettertypen.",
+ "ext-uls-language-settings-title": "Taalinstellingen",
+ "ext-uls-language-settings-apply": "Instellingen toepassen",
+ "ext-uls-language-settings-cancel": "Annuleren",
+ "ext-uls-language-buttons-help": "Wijzig de taal van menu's. De taal van de inhoud wordt niet gewijzigd.",
+ "ext-uls-display-settings-font-settings": "Lettertypeinstellingen",
+ "ext-uls-display-settings-ui-language": "Taal voor weergave",
+ "ext-uls-display-settings-anon-label": "Weergavetaal:",
+ "ext-uls-display-settings-anon-same-as-content": "$1 (zelfde als inhoud)",
+ "ext-uls-display-settings-anon-log-in-cta": "[[Special:UserLogin|Meld u aan]] om een andere taal voor menu's te kiezen.",
+ "ext-uls-webfonts-settings-title": "Lettertypes downloaden indien nodig",
+ "ext-uls-webfonts-settings-info": "Ontbrekende lettertypen automatisch downloaden en het selecteren van voorkeurslettertypen mogelijk maken.",
+ "ext-uls-webfonts-settings-info-link": "Meer informatie",
+ "ext-uls-webfonts-select-for": "Lettertype selecteren voor $1",
+ "ext-uls-webfonts-select-for-ui-info": "Lettertype voor gebruikersinterface",
+ "ext-uls-webfonts-select-for-content-info": "Lettertype voor inhoud",
+ "ext-uls-webfonts-system-font": "Systeemlettertype",
+ "ext-uls-back-to-display-settings": "Terug naar weergaveinstellingen",
+ "ext-uls-input-settings-title": "Invoerinstellingen",
+ "ext-uls-input-settings-title-short": "Invoer",
+ "ext-uls-input-settings-desc": "Schrijven in een andere taal?",
+ "ext-uls-input-settings-ime-settings": "Invoermethoden voor $1",
+ "ext-uls-input-settings-ui-language": "Taal voor invoer",
+ "ext-uls-back-to-input-settings": "Terug naar invoerinstellingen",
+ "ext-uls-ime-help": "Hoe gebruiken",
+ "ext-uls-disable-input-method": "Standaard toetsenbord gebruiken",
+ "ext-uls-input-settings-more-languages-tooltip": "Meer talen",
+ "jquery-ime-other-languages": "Andere talen",
+ "jquery-ime-disable-text": "Standaard toetsenbord gebruiken",
+ "jquery-ime-help": "Hulp",
+ "ext-uls-input-disable": "Invoermethoden uitschakelen",
+ "ext-uls-input-enable": "Invoermethoden inschakelen",
+ "ext-uls-input-disable-info": "Invoermethoden zijn uitgeschakeld.",
+ "ext-uls-input-settings-noime": "Er zijn geen invoermethoden beschikbaar voor deze taal.",
+ "ext-uls-input-disable-notification": "Invoermethoden zijn uitgeschakeld",
+ "ext-uls-input-disable-notification-undo": "Ongedaan maken",
+ "ext-uls-input-disable-notification-info-personal": "U kunt de invoermethoden weer inschakelen via de taalinstellingen.",
+ "ext-uls-input-disable-notification-info-interlanguage": "U kunt de invoermethoden weer inschakelen via de taalinstellingen naast de lijst met talen.",
+ "ext-uls-language-settings-applying": "Toepassen...",
+ "ext-uls-compact-link-count": "{{PLURAL:$1|Nog een taal|Nog $1 talen}}"
+}
diff --git a/MLEB/UniversalLanguageSelector/i18n/nn.json b/MLEB/UniversalLanguageSelector/i18n/nn.json
new file mode 100644
index 00000000..1c49da9a
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/i18n/nn.json
@@ -0,0 +1,54 @@
+{
+ "@metadata": {
+ "authors": [
+ "Njardarlogar"
+ ]
+ },
+ "uls-desc": "Gjev brukaren fleire måtar å velja eit språk på og dessutan å endra språkinnstillingane",
+ "uls-plang-title-languages": "Språk",
+ "ext-uls-select-language-settings-icon-tooltip": "Språkinnstillingar",
+ "ext-uls-undo-language-tooltip-text": "Språk endra frå $1",
+ "ext-uls-language-settings-preferences-link": "Fleire språkinnstillingar",
+ "ext-uls-display-settings-title": "Visingsinnstillingar",
+ "ext-uls-display-settings-language-tab": "Språk",
+ "ext-uls-display-settings-fonts-tab": "Skrifttypar",
+ "ext-uls-display-settings-title-short": "Vising",
+ "ext-uls-display-settings-desc": "Vel språk for menyar og skrifttypar.",
+ "ext-uls-language-settings-title": "Språkinnstillingar",
+ "ext-uls-language-settings-apply": "Bruk innstillingar",
+ "ext-uls-language-settings-cancel": "Bryt av",
+ "ext-uls-language-buttons-help": "Endra språket i menyane. Språket på innhaldet vert ikkje påverka.",
+ "ext-uls-display-settings-font-settings": "Skrifttypeinnstillingar",
+ "ext-uls-display-settings-ui-language": "Visingsspråk",
+ "ext-uls-display-settings-anon-label": "Visingsspråk:",
+ "ext-uls-display-settings-anon-same-as-content": "Nynorsk (same som innhaldet)",
+ "ext-uls-display-settings-anon-log-in-cta": "[[Special:UserLogin|Skriv deg inn]] for å velja eit anna språk for menyane.",
+ "ext-uls-webfonts-settings-title": "Last ned skrifttypar når det tarvst",
+ "ext-uls-webfonts-settings-info": "Internettskrifttypar vil verta lasta ned for å visa tekst i særskilde skriftsystem.",
+ "ext-uls-webfonts-settings-info-link": "Meir informasjon",
+ "ext-uls-webfonts-select-for": "Vel skrifttype for",
+ "ext-uls-webfonts-select-for-ui-info": "Skrifttype nytta for brukargrensesnittet",
+ "ext-uls-webfonts-select-for-content-info": "Skrifttype nytta for innhaldet",
+ "ext-uls-webfonts-system-font": "Systemskrifttype",
+ "ext-uls-back-to-display-settings": "Attende til visingsinnstillingar",
+ "ext-uls-input-settings-title": "Innstillingar for inndata",
+ "ext-uls-input-settings-title-short": "Inndata",
+ "ext-uls-input-settings-desc": "Skriv du på eit anna språk?",
+ "ext-uls-input-settings-ime-settings": "Metodar for inndata for $1",
+ "ext-uls-input-settings-ui-language": "Språk nytta for skriving",
+ "ext-uls-back-to-input-settings": "Attende til inndatainnstillingar",
+ "ext-uls-ime-help": "Korleis bruka",
+ "ext-uls-disable-input-method": "Bruk normaltastatur",
+ "ext-uls-input-settings-more-languages-tooltip": "Fleire språk",
+ "jquery-ime-other-languages": "Andre språk",
+ "jquery-ime-disable-text": "Bruk normaltastatur",
+ "jquery-ime-help": "Hjelp",
+ "ext-uls-input-disable": "Slå av inndataverktøy",
+ "ext-uls-input-enable": "Slå på inndataverktøy",
+ "ext-uls-input-disable-info": "Inndataverktøya er slegne av.",
+ "ext-uls-input-settings-noime": "Ingen inndatametodar er tilgjengelege for dette språket.",
+ "ext-uls-input-disable-notification": "Inndataverktøya vart slegne av",
+ "ext-uls-input-disable-notification-undo": "Angra",
+ "ext-uls-input-disable-notification-info-personal": "Du kan slå på inndataverktøya kva tid som helst frå språkinnstillingane.",
+ "ext-uls-input-disable-notification-info-interlanguage": "Du kan slå på inndataverktøya kva tid som helst frå språkinnstillingane ved sida av språklista."
+}
diff --git a/MLEB/UniversalLanguageSelector/i18n/oc.json b/MLEB/UniversalLanguageSelector/i18n/oc.json
new file mode 100644
index 00000000..ceae7273
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/i18n/oc.json
@@ -0,0 +1,29 @@
+{
+ "@metadata": {
+ "authors": [
+ "Cedric31",
+ "Ltrlg"
+ ]
+ },
+ "uls-desc": "Dona a l’utilizaire mantun biais de seleccionar una lenga e d’ajustar los paramètres de lenga",
+ "uls-betafeature-label": "Compactar los ligams de lenga",
+ "uls-betafeature-desc": "Afichar una version abreujada de la lista de las lengas, amb sonque las lengas que vos interèssan lo mai.",
+ "ext-uls-display-settings-title": "Afichar los paramètres",
+ "ext-uls-display-settings-language-tab": "Lenga",
+ "ext-uls-display-settings-fonts-tab": "Poliças de caractèrs",
+ "ext-uls-display-settings-title-short": "Afichatge",
+ "ext-uls-language-settings-title": "Paramètres de lenga",
+ "ext-uls-language-settings-apply": "Aplicar los paramètres",
+ "ext-uls-language-settings-cancel": "Anullar",
+ "ext-uls-display-settings-font-settings": "Paramètres de poliça",
+ "ext-uls-display-settings-ui-language": "Lenga d'afichatge",
+ "ext-uls-display-settings-anon-label": "Lenga d'afichatge :",
+ "ext-uls-display-settings-anon-same-as-content": "$1 (coma lo contengut)",
+ "ext-uls-input-settings-ui-language": "Lenga utilizada per escriure",
+ "ext-uls-ime-help": "Mòde d’emplec",
+ "ext-uls-disable-input-method": "Utilizar un clavièr local",
+ "ext-uls-input-settings-more-languages-tooltip": "Mai de lengas",
+ "ext-uls-input-disable-notification-undo": "Anullar",
+ "ext-uls-language-settings-applying": "Mesa en òbra en cors…",
+ "ext-uls-compact-link-count": "{{PLURAL:$1|Una lenga mai|$1 lengas mai}}"
+}
diff --git a/MLEB/UniversalLanguageSelector/i18n/or.json b/MLEB/UniversalLanguageSelector/i18n/or.json
new file mode 100644
index 00000000..1392f5bc
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/i18n/or.json
@@ -0,0 +1,48 @@
+{
+ "@metadata": {
+ "authors": [
+ "Psubhashish"
+ ]
+ },
+ "ext-uls-select-language-settings-icon-tooltip": "ଭାଷା ସେଟିଙ୍ଗ",
+ "ext-uls-undo-language-tooltip-text": "$1ରୁ ଭାଷା ବଦଳିଗଲା",
+ "ext-uls-language-settings-preferences-link": "ଅଧିକ ଭାଷା ସେଟିଙ୍ଗ",
+ "ext-uls-display-settings-title": "ଦେଖଣା ସେଟିଙ୍ଗ",
+ "ext-uls-display-settings-language-tab": "ଭାଷା",
+ "ext-uls-display-settings-fonts-tab": "ଫଣ୍ଟ",
+ "ext-uls-display-settings-title-short": "ଦେଖଣା",
+ "ext-uls-display-settings-desc": "ମେନୁ ଓ ଫଣ୍ଟ ପାଇଁ ଭାଷା ବାଛନ୍ତୁ",
+ "ext-uls-language-settings-title": "ଭାଷା ସେଟିଙ୍ଗ",
+ "ext-uls-language-settings-apply": "ନୂଆ ସେଟିଙ୍ଗ ସଚଳ କରନ୍ତୁ",
+ "ext-uls-language-settings-cancel": "ନାକଚ",
+ "ext-uls-language-buttons-help": "ମେନୁର ଭାଷା ବଦଳାନ୍ତୁ । ବିଷ‌ୟବସ୍ତୁର ଭାଷା ପ୍ରଭାବିତ ହେବନାହିଁ ।",
+ "ext-uls-display-settings-font-settings": "ଫଣ୍ଟ ସେଟିଙ୍ଗ",
+ "ext-uls-display-settings-ui-language": "ଦେଖଣା ଭାଷା",
+ "ext-uls-display-settings-anon-label": "ଦେଖଣା ଭାଷା:",
+ "ext-uls-display-settings-anon-same-as-content": "ଓଡ଼ିଆ (ବିଷୟବସ୍ତୁର ଭାଷାରେ)",
+ "ext-uls-display-settings-anon-log-in-cta": "ମେନୁରେ ଅଲଗା ଭାଷା ପାଇଁ [[Special:UserLogin|ଲଗ ଇନ (Log in)‌‌]] କରନ୍ତୁ ।",
+ "ext-uls-webfonts-select-for": "$1 ପାଇଁ ଫଣ୍ଟ ବାଛନ୍ତୁ",
+ "ext-uls-webfonts-select-for-ui-info": "ଇଉଜର ଇଣ୍ଟରଫେସ ପାଇଁ ଫଣ୍ଟ ବାଛନ୍ତୁ",
+ "ext-uls-webfonts-select-for-content-info": "ବିଷୟବସ୍ତୁ ପାଇଁ ବ୍ୟବ‌ହୃତ ଫଣ୍ଟ",
+ "ext-uls-webfonts-system-font": "ସିଷ୍ଟମ ଫଣ୍ଟ",
+ "ext-uls-back-to-display-settings": "ଦେଖଣା ସେଟିଙ୍ଗକୁ ଫେରିଯାନ୍ତୁ",
+ "ext-uls-input-settings-title": "ଇନପୁଟ ସେଟିଙ୍ଗ",
+ "ext-uls-input-settings-title-short": "ଇନପୁଟ",
+ "ext-uls-input-settings-desc": "ଅଲଗା ଭାଷାରେ ଲେଖୁଛନ୍ତି କି?",
+ "ext-uls-input-settings-ime-settings": "$1 ପାଇଁ ଇନପୁଟ ବିଧି",
+ "ext-uls-input-settings-ui-language": "ଲେଖିବା ନିମନ୍ତେ ବ୍ୟବ‌ହୃତ ଭାଷା",
+ "ext-uls-back-to-input-settings": "ଇନପୁଟ ସେଟିଙ୍ଗକୁ ଫେରିଯାନ୍ତୁ",
+ "ext-uls-disable-input-method": "ନିଜ ଭାଷାର କି-ବୋର୍ଡ଼ ବ୍ୟବ‌ହାର କରନ୍ତୁ",
+ "ext-uls-input-settings-more-languages-tooltip": "ଅଧିକ ଭାଷା",
+ "jquery-ime-other-languages": "ଅଲଗା ଭାଷା",
+ "jquery-ime-disable-text": "ଆପଣଙ୍କ ନିଜ ଭାଷା",
+ "jquery-ime-help": "ସ‌ହ‌ଯୋଗ",
+ "ext-uls-input-disable": "ଇନପୁଟ ଟୁଲ ଅଚଳ କରାଇବେ",
+ "ext-uls-input-enable": "ଇନପୁଟ ଟୁଲ ସଚଳ କରାଇବେ",
+ "ext-uls-input-disable-info": "ଇନପୁଟ ଟୁଲ ଅଚଳ କରାଯାଇଛି ।",
+ "ext-uls-input-settings-noime": "ଆପଣଙ୍କ ଭାଷା ପାଇଁ କୌଣସି ଇନପୁଟ ଟୁଲ ମିଳୁନାହିଁ ।",
+ "ext-uls-input-disable-notification": "ଇନପୁଟ ଟୁଲ ଅଚଳ କରାଯାଇଛି",
+ "ext-uls-input-disable-notification-undo": "ପଛକୁ ଫେରିବା",
+ "ext-uls-input-disable-notification-info-personal": "ଭାଷା ସେଟିଙ୍ଗରୁ ଇନପୁଟ ଟୁଲ ସବୁବେଳେ ସଚଳ କରିପାରିବେ ।",
+ "ext-uls-input-disable-notification-info-interlanguage": "ଭାଷା ସେଟିଙ୍ଗରୁ ଇନପୁଟ ଟୁଲ ସବୁବେଳେ ସଚଳ କରିପାରିବେ ଓ ଭାଷା ବାଛିପାରିବେ ।"
+}
diff --git a/MLEB/UniversalLanguageSelector/i18n/os.json b/MLEB/UniversalLanguageSelector/i18n/os.json
new file mode 100644
index 00000000..15775054
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/i18n/os.json
@@ -0,0 +1,43 @@
+{
+ "@metadata": {
+ "authors": [
+ "Bouron",
+ "Xaris333",
+ "Amikeco"
+ ]
+ },
+ "uls-desc": "Архайæгæн дæтты цалдæр фадат æвзаг равзарынæн æмæ йын уаг сæвæрынæн",
+ "ext-uls-select-language-settings-icon-tooltip": "Æвзаджы уагæвæрдтæ",
+ "ext-uls-undo-language-tooltip-text": "Ивд æвзаг у $1",
+ "ext-uls-display-settings-title": "Æвдисыны уаг",
+ "ext-uls-display-settings-language-tab": "Γλώσσα",
+ "ext-uls-display-settings-title-short": "Æвдыст",
+ "ext-uls-display-settings-desc": "Меню æмæ шрифтты æвзаг æвæрынæн.",
+ "ext-uls-language-settings-title": "Æвзаджы уагæвæрдтæ",
+ "ext-uls-language-settings-apply": "Уаг сæвæрын",
+ "ext-uls-language-settings-cancel": "Ныууадзын",
+ "ext-uls-display-settings-font-settings": "Шрифты уаг",
+ "ext-uls-display-settings-ui-language": "Æвдисыны æвзаг",
+ "ext-uls-webfonts-settings-title": "Шрифт æвгæд цæуæд, куы хъæуа, уæд",
+ "ext-uls-webfonts-settings-info": "Вебшрифттæ æвгæд цæудзысты цæмæй сæрмагонд скрипттæ æвдисой.",
+ "ext-uls-webfonts-settings-info-link": "Фылдæр информаци",
+ "ext-uls-webfonts-select-for": "$1, йæ шрифт æвзарæн",
+ "ext-uls-webfonts-select-for-ui-info": "Интерфейсы шрифт",
+ "ext-uls-webfonts-select-for-content-info": "Мидисы шрифт",
+ "ext-uls-back-to-display-settings": "Фæстæмæ, æвдисыны уагæвæрдтæм",
+ "ext-uls-input-settings-title": "Бафыссыны уаг",
+ "ext-uls-input-settings-title-short": "Фыссын",
+ "ext-uls-input-settings-desc": "Æндæр æвзагыл фыссыс?",
+ "ext-uls-input-settings-ime-settings": "$1, йæ фыссыны фадæттæ",
+ "ext-uls-input-settings-ui-language": "Фыссыны æвзаг",
+ "ext-uls-back-to-input-settings": "Фæстæмæ фыссыны уагæвæрдтæм",
+ "ext-uls-disable-input-method": "Фыссыны фадæттæ ахицæн кæнын",
+ "ext-uls-input-settings-more-languages-tooltip": "Фылдæр æвзæгтæ",
+ "jquery-ime-other-languages": "Æндæр æвзæгтæ",
+ "jquery-ime-disable-text": "Фыссыны фадæттæ ахицæн кæнын",
+ "jquery-ime-help": "Æххуыс",
+ "ext-uls-input-disable": "Фыссыны фадæтты фæрæзтæ ахицæн кæнын",
+ "ext-uls-input-enable": "Фыссыны фадæтты фæрæзтæ баиу кæнын",
+ "ext-uls-input-disable-info": "Фыссыны фадæтты фæрæзтæ хицæн сты.",
+ "ext-uls-input-settings-noime": "Ницы фыссыны фадат ис ацы æвзагæн."
+}
diff --git a/MLEB/UniversalLanguageSelector/i18n/pa.json b/MLEB/UniversalLanguageSelector/i18n/pa.json
new file mode 100644
index 00000000..c891ffd1
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/i18n/pa.json
@@ -0,0 +1,50 @@
+{
+ "@metadata": {
+ "authors": [
+ "Babanwalia"
+ ]
+ },
+ "uls-desc": "ਵਰਤੋਂਕਾਰ ਨੂੰ ਭਾਸ਼ਾਂ ਚੁਣਨ ਅਤੇ ਭਾਸ਼ਾ ਸੈਟਿੰਗਾਂ ਠੀਕ ਕਰਨ ਲਈ ਕਈ ਤਰੀਕੇ ਸੌਂਪਦਾ ਹੈ",
+ "uls-plang-title-languages": "ਬੋਲੀਆਂ",
+ "ext-uls-select-language-settings-icon-tooltip": "ਬੋਲੀ ਦੀਆਂ ਸੈਟਿੰਗਾਂ",
+ "ext-uls-undo-language-tooltip-text": "ਭਾਸ਼ਾ $1 ਤੋਂ ਬਦਲੀ ਗਈ",
+ "ext-uls-language-settings-preferences-link": "ਬੋਲੀ ਦੀਆਂ ਹੋਰ ਸੈਟਿੰਗਾਂ",
+ "ext-uls-display-settings-title": "ਪ੍ਰਦਰਸ਼ਨੀ ਸੈਟਿੰਗਾਂ",
+ "ext-uls-display-settings-language-tab": "ਭਾਸ਼ਾ",
+ "ext-uls-display-settings-fonts-tab": "ਫ਼ੌਂਟ",
+ "ext-uls-display-settings-title-short": "ਪ੍ਰਦਰਸ਼ਨੀ",
+ "ext-uls-display-settings-desc": "ਮੀਨੂ ਅਤੇ ਫ਼ੌਂਤ ਲਈ ਵਰਤੀ ਜਾਂਦੀ ਭਾਸ਼ਾ ਸੈੱਟ ਕਰੋ।",
+ "ext-uls-language-settings-title": "ਬੋਲੀ ਦੀਆਂ ਸੈਟਿੰਗਾਂ",
+ "ext-uls-language-settings-apply": "ਸੈਟਿੰਗਾਂ ਲਾਗੂ ਕਰੋ",
+ "ext-uls-language-settings-cancel": "ਰੱਦ ਕਰੋ",
+ "ext-uls-language-buttons-help": "ਮੀਨੂ ਦੀ ਭਾਸ਼ਾ ਬਦਲੋ। ਸਮੱਗਰੀ ਦੀ ਭਾਸ਼ਾ ਨੂੰ ਕੋਈ ਫ਼ਰਕ ਨਹੀਂ ਪਵੇਗਾ।",
+ "ext-uls-display-settings-font-settings": "ਫ਼ੌਂਟ ਸੈਟਿੰਗਾਂ",
+ "ext-uls-display-settings-ui-language": "ਪ੍ਰਦਰਸ਼ਨੀ ਭਾਸ਼ਾ",
+ "ext-uls-display-settings-anon-label": "ਪ੍ਰਦਰਸ਼ਨੀ ਭਾਸ਼ਾ:",
+ "ext-uls-display-settings-anon-same-as-content": "ਅੰਗਰੇਜ਼ੀ (ਸਮੱਗਰੀ ਵਰਗੀ ਹੀ)",
+ "ext-uls-display-settings-anon-log-in-cta": "ਮੀਨੂ ਲਈ ਵੱਖਰੀ ਭਾਸ਼ਾ ਚੁਣਨ ਲਈ [[Special:UserLogin|ਦਾਖ਼ਲਾ ਲਵੋ]]",
+ "ext-uls-webfonts-select-for": "$1 ਲਈ ਫ਼ੌਂਟ ਚੁਣੋ",
+ "ext-uls-webfonts-select-for-ui-info": "ਵਰਤੋਂਕਾਰ ਇੰਟਰਫ਼ੇਸ ਲਈ ਵਰਤਿਆ ਗਿਆ ਫ਼ੌਂਟ",
+ "ext-uls-webfonts-select-for-content-info": "ਸਮੱਗਰੀ ਲਈ ਵਰਤਿਆ ਫ਼ੌਂਟ",
+ "ext-uls-webfonts-system-font": "ਸਿਸਟਮ ਫ਼ੌਂਟ",
+ "ext-uls-back-to-display-settings": "ਪ੍ਰਦਰਸ਼ਨੀ ਸੈਟਿੰਗਾਂ ਵੱਲ ਵਾਪਸ",
+ "ext-uls-input-settings-title": "ਇਨਪੁਟ ਸੈਟਿੰਗਾਂ",
+ "ext-uls-input-settings-title-short": "ਇਨਪੁਟ",
+ "ext-uls-input-settings-desc": "ਕਿਸੇ ਹੋਰ ਭਾਸ਼ਾ ਵਿਚ ਲਿਖ ਰਹੇ ਹੋ?",
+ "ext-uls-input-settings-ime-settings": "$1 ਲਈ ਇਨਪੁਟ ਜ਼ਰੀਏ",
+ "ext-uls-input-settings-ui-language": "ਲਿਖਾਈ ਲਈ ਵਰਤੀ ਭਾਸ਼ਾ",
+ "ext-uls-back-to-input-settings": "ਇਨਪੁਟ ਸੈਟਿੰਗਾਂ ਵੱਲ ਵਾਪਸ",
+ "ext-uls-disable-input-method": "ਦੇਸੀ ਕੀਬੋਰਡ ਵਰਤੋ",
+ "ext-uls-input-settings-more-languages-tooltip": "ਹੋਰ ਬੋਲੀਆਂ",
+ "jquery-ime-other-languages": "ਹੋਰ ਬੋਲੀਆਂ",
+ "jquery-ime-disable-text": "ਦੇਸੀ ਕੀਬੋਰਡ ਵਰਤੋ",
+ "jquery-ime-help": "ਮਦਦ",
+ "ext-uls-input-disable": "ਇਨਪੁਟ ਜ਼ਰੀਏ ਬੰਦ ਕਰੋ",
+ "ext-uls-input-enable": "ਇਨਪੁਟ ਜ਼ਰੀਏ ਚਾਲੂ ਕਰੋ",
+ "ext-uls-input-disable-info": "ਇਨਪੁਟ ਜ਼ਰੀਏ ਬੰਦ ਹਨ।",
+ "ext-uls-input-settings-noime": "ਇਸ ਭਾਸ਼ਾ ਲਈ ਕੋਈ ਇਨਪੁਟ ਜ਼ਰੀਏ ਉਪਲਬਧ ਨਹੀਂ ਹਨ।",
+ "ext-uls-input-disable-notification": "ਇਨਪੁਟ ਜ਼ਰੀਏ ਬੰਦ ਕਰ ਦਿੱਤੇ ਗਏ ਹਨ",
+ "ext-uls-input-disable-notification-undo": "ਅਣਕਿੱਤਾ ਕਰੋ",
+ "ext-uls-input-disable-notification-info-personal": "ਤੁਸੀਂ ਭਾਸ਼ਾ ਸੈਟਿੰਗਾਂ ਤੋਂ ਕਿਸੇ ਵੀ ਵਕਤ ਇਨਪੁਟ ਜ਼ਰੀਏ ਚਾਲੂ ਕਰ ਸਕਦੇ ਹੋ।",
+ "ext-uls-input-disable-notification-info-interlanguage": "ਤੁਸੀਂ ਭਾਸ਼ਾ ਸੂਚੀ ਦੇ ਅੱਗੇ ਦਿੱਤੀਆਂ ਗਈਆਂ ਭਾਸ਼ਾ ਸੈਟਿੰਗਾਂ ਤੋਂ ਕਿਸੇ ਵੀ ਵਕਤ ਇਨਪੁਟ ਜ਼ਰੀਏ ਚਾਲੂ ਕਰ ਸਕਦੇ ਹੋ।"
+}
diff --git a/MLEB/UniversalLanguageSelector/i18n/pl.json b/MLEB/UniversalLanguageSelector/i18n/pl.json
new file mode 100644
index 00000000..58b35cbc
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/i18n/pl.json
@@ -0,0 +1,64 @@
+{
+ "@metadata": {
+ "authors": [
+ "Matma Rex",
+ "Rezonansowy",
+ "WTM",
+ "Chrumps",
+ "BeginaFelicysym",
+ "Nemo bis",
+ "Peter Bowman"
+ ]
+ },
+ "uls-desc": "Daje użytkownikowi kilka sposobów, aby wybrać język i dostosować ustawienia języka",
+ "uls-plang-title-languages": "Języki",
+ "ext-uls-select-language-settings-icon-tooltip": "Ustawienia języka",
+ "ext-uls-undo-language-tooltip-text": "Poprzedni język: $1",
+ "ext-uls-language-settings-preferences-link": "Więcej ustawień języka",
+ "uls-betafeature-label": "Skrócona wersja linków interwiki",
+ "uls-betafeature-desc": "Pokazuj krótszą wersję listy odnośników interwiki, zawierającą tylko języki, które są istotne dla Ciebie.",
+ "ext-uls-display-settings-title": "Ustawienia wyświetlania",
+ "ext-uls-display-settings-language-tab": "Język",
+ "ext-uls-display-settings-fonts-tab": "Czcionka",
+ "ext-uls-display-settings-title-short": "Wyświetlanie",
+ "ext-uls-display-settings-desc": "Wybierz język interfejsu oraz czcionki.",
+ "ext-uls-language-settings-title": "Ustawienia języka",
+ "ext-uls-language-settings-apply": "Zastosuj ustawienia",
+ "ext-uls-language-settings-cancel": "Anuluj",
+ "ext-uls-language-buttons-help": "Zmienia język interfejsu. Język wyświetlanej zawartości pozostaje bez zmian.",
+ "ext-uls-display-settings-font-settings": "Ustawienia czcionek",
+ "ext-uls-display-settings-ui-language": "Język wyświetlania",
+ "ext-uls-display-settings-anon-label": "Język wyświetlania:",
+ "ext-uls-display-settings-anon-same-as-content": "$1 (tak samo, jak i treść)",
+ "ext-uls-display-settings-anon-log-in-cta": "[[Special:UserLogin|Zaloguj się]] aby wybrać inny język interfejsu.",
+ "ext-uls-webfonts-settings-title": "Pobierz czcionki, gdy to konieczne",
+ "ext-uls-webfonts-settings-info": "Pobieraj brakujące czcionki automatycznie.",
+ "ext-uls-webfonts-settings-info-link": "Więcej informacji",
+ "ext-uls-webfonts-select-for": "Czcionka dla języka: $1",
+ "ext-uls-webfonts-select-for-ui-info": "Czcionka interfejsu użytkownika",
+ "ext-uls-webfonts-select-for-content-info": "Czcionka zawartości",
+ "ext-uls-webfonts-system-font": "Domyślna czcionka systemowa",
+ "ext-uls-back-to-display-settings": "Powrót do ustawień wyświetlania",
+ "ext-uls-input-settings-title": "Ustawienia wprowadzania tekstu",
+ "ext-uls-input-settings-title-short": "Wprowadzanie tekstu",
+ "ext-uls-input-settings-desc": "Piszesz w innym języku?",
+ "ext-uls-input-settings-ime-settings": "Metody wprowadzania tekstu w języku: $1",
+ "ext-uls-input-settings-ui-language": "Język pisania",
+ "ext-uls-back-to-input-settings": "Powrót do ustawień wprowadzania tekstu",
+ "ext-uls-ime-help": "Jak się z tego korzysta?",
+ "ext-uls-disable-input-method": "Użyj rodzimej klawiatury",
+ "ext-uls-input-settings-more-languages-tooltip": "Więcej języków",
+ "jquery-ime-other-languages": "Inne języki",
+ "jquery-ime-disable-text": "Użyj swojej klawiatury",
+ "jquery-ime-help": "Pomoc",
+ "ext-uls-input-disable": "Wyłącz narzędzia wprowadzania tekstu",
+ "ext-uls-input-enable": "Włącz narzędzia wprowadzania tekstu",
+ "ext-uls-input-disable-info": "Narzędzia wprowadzania tekstu są wyłączone.",
+ "ext-uls-input-settings-noime": "Dla tego języka nie ma specjalnych metod wprowadzania tekstu.",
+ "ext-uls-input-disable-notification": "Narzędzia wprowadzania tekstu zostały wyłączone",
+ "ext-uls-input-disable-notification-undo": "Cofnij",
+ "ext-uls-input-disable-notification-info-personal": "Możesz w dowolnym momencie włączyć narzędzia wprowadzania tekstu w ustawieniach języka.",
+ "ext-uls-input-disable-notification-info-interlanguage": "Możesz w dowolnym momencie włączyć narzędzia wprowadzania tekstu w ustawieniach języka, obok listy języków.",
+ "ext-uls-language-settings-applying": "Realizacja w toku...",
+ "ext-uls-compact-link-count": "{{PLURAL:$1|Kolejny język|$1 kolejne języki|$1 kolejnych języków}}"
+}
diff --git a/MLEB/UniversalLanguageSelector/i18n/pms.json b/MLEB/UniversalLanguageSelector/i18n/pms.json
new file mode 100644
index 00000000..7f07eff8
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/i18n/pms.json
@@ -0,0 +1,56 @@
+{
+ "@metadata": {
+ "authors": [
+ "Borichèt",
+ "Dragonòt"
+ ]
+ },
+ "uls-desc": "A dà a l'utent vàire manere ëd selessioné na lenga e ëd sistemé j'ampostassion ëd lenga",
+ "uls-plang-title-languages": "Lenghe",
+ "ext-uls-select-language-settings-icon-tooltip": "Paràmeter ëd lenga",
+ "ext-uls-undo-language-tooltip-text": "Lenga cangià da $1",
+ "ext-uls-language-settings-preferences-link": "Pi d'ampostassion ëd lenga",
+ "ext-uls-display-settings-title": "Ampostassion ëd visualisassion",
+ "ext-uls-display-settings-language-tab": "Lenga",
+ "ext-uls-display-settings-fonts-tab": "Tipo ëd caràter",
+ "ext-uls-display-settings-title-short": "Visualisa",
+ "ext-uls-display-settings-desc": "Amposté la lenga dovrà për jë mnù e ij caràter.",
+ "ext-uls-language-settings-title": "Ampostassion ëd lenga",
+ "ext-uls-language-settings-apply": "Apliché j'ampostassion",
+ "ext-uls-language-settings-cancel": "Scancela",
+ "ext-uls-language-buttons-help": "Modifiché la lenga djë mnù. La lenga dël contnù a sarà pa modificà.",
+ "ext-uls-display-settings-font-settings": "Ampostassion ëd caràter",
+ "ext-uls-display-settings-ui-language": "Lenga ëd visualisassion",
+ "ext-uls-display-settings-anon-label": "Lenga ëd visualisassion:",
+ "ext-uls-display-settings-anon-same-as-content": "$1 (coma ël contnù)",
+ "ext-uls-display-settings-anon-log-in-cta": "[[Special:UserLogin|Rintré ant ël sistema]] për selessioné n'àutra lenga për jë mnu.",
+ "ext-uls-webfonts-settings-title": "Dëscarié ij caràter quand a-i na j'é damanca",
+ "ext-uls-webfonts-settings-info": "Dëscarié an automàtich ij caràter mancant e përmëtte la selession dij caràter preferì.",
+ "ext-uls-webfonts-settings-info-link": "Pi d'anformassion",
+ "ext-uls-webfonts-select-for": "Selessioné ij caràter për $1",
+ "ext-uls-webfonts-select-for-ui-info": "Caràter dovrà për l'antërfacia utent",
+ "ext-uls-webfonts-select-for-content-info": "Caràter dovrà për ël contnù",
+ "ext-uls-webfonts-system-font": "Tìpo ëd caràter dël sistema",
+ "ext-uls-back-to-display-settings": "André a j'ampostassion ëd visualisassion",
+ "ext-uls-input-settings-title": "Ampostassion d'anseriment",
+ "ext-uls-input-settings-title-short": "Anseriment",
+ "ext-uls-input-settings-desc": "Scrive ant n'àutra lenga?",
+ "ext-uls-input-settings-ime-settings": "Métod d'anseriment për $1",
+ "ext-uls-input-settings-ui-language": "Lenga dovrà për scrive",
+ "ext-uls-back-to-input-settings": "André a j'ampostassion d'anseriment",
+ "ext-uls-ime-help": "Coma dovré",
+ "ext-uls-disable-input-method": "Dovré na tastadura local",
+ "ext-uls-input-settings-more-languages-tooltip": "Pì 'd lenghe",
+ "jquery-ime-other-languages": "Àutre lenghe",
+ "jquery-ime-disable-text": "Dovré na tastadura local",
+ "jquery-ime-help": "Agiut",
+ "ext-uls-input-disable": "Disabilité j'utiss d'imission",
+ "ext-uls-input-enable": "Abilité j'utiss d'imission",
+ "ext-uls-input-disable-info": "J'utiss d'imission a son disabilità.",
+ "ext-uls-input-settings-noime": "Gnun métod d'imission a l'é disponìbij për costa lenga.",
+ "ext-uls-input-disable-notification": "J'utiss d'imission a son ëstàit disativà",
+ "ext-uls-input-disable-notification-undo": "Buté 'me ch'a l'era",
+ "ext-uls-input-disable-notification-info-personal": "A peul ativé j'utiss d'imission an qualsëssìa moment an soe ampostassion ëd lenga.",
+ "ext-uls-input-disable-notification-info-interlanguage": "A peul ativé j'utiss d'imission an qualsëssìa moment ant j'ampostassion ëd lenga da banda dla lista dle lenghe.",
+ "ext-uls-language-settings-applying": "Ativassion an cors..."
+}
diff --git a/MLEB/UniversalLanguageSelector/i18n/ps.json b/MLEB/UniversalLanguageSelector/i18n/ps.json
new file mode 100644
index 00000000..6dc4940d
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/i18n/ps.json
@@ -0,0 +1,50 @@
+{
+ "@metadata": {
+ "authors": [
+ "Ahmed-Najib-Biabani-Ibrahimkhel"
+ ]
+ },
+ "uls-plang-title-languages": "ژبې",
+ "ext-uls-select-language-settings-icon-tooltip": "د ژبې امستنې",
+ "ext-uls-undo-language-tooltip-text": "له $1 څخه مو ژبه بدله شوه",
+ "ext-uls-language-settings-preferences-link": "د نورو ژبو امستنې",
+ "ext-uls-display-settings-title": "د ښکارېدو امستنې",
+ "ext-uls-display-settings-language-tab": "ژبه",
+ "ext-uls-display-settings-fonts-tab": "ليکبڼې",
+ "ext-uls-display-settings-title-short": "ښکارېدنه",
+ "ext-uls-display-settings-desc": "د غورنۍ او ليکبڼو لپاره کارېدونکې ژبه ټاکل",
+ "ext-uls-language-settings-title": "د ژبې امستنې",
+ "ext-uls-language-settings-apply": "امستنې پلي کول",
+ "ext-uls-language-settings-cancel": "ناگارل",
+ "ext-uls-language-buttons-help": "د ژبې غورنۍ بدلول. د مېنځپانگې ژبه نه اغېزمنه کېږي.",
+ "ext-uls-display-settings-font-settings": "د ليکبڼې امستنې",
+ "ext-uls-display-settings-ui-language": "د ښکارېدنې ژبه",
+ "ext-uls-display-settings-anon-label": "د ښکارېدنې ژبه:",
+ "ext-uls-display-settings-anon-same-as-content": "$1 (مېنځپانگې ته ورته)",
+ "ext-uls-display-settings-anon-log-in-cta": "د غورنۍ لپاره د يوې بلې ژبې د ټاکلو په خاطر [[Special:UserLogin|غونډال ته ننوځئ]].",
+ "ext-uls-webfonts-settings-info-link": "نور مالومات",
+ "ext-uls-webfonts-select-for": "د $1 لپاره ليکبڼه ټاکل",
+ "ext-uls-webfonts-select-for-ui-info": "د ليدنمخ لپاره کارېدونکې ليکبڼه",
+ "ext-uls-webfonts-select-for-content-info": "د مېنځپانگې لپاره کارېدونکې ليکبڼه",
+ "ext-uls-webfonts-system-font": "غونډال ليکبڼه",
+ "ext-uls-back-to-display-settings": "د ښکارېدنې امستنو ته ورگرځېدل",
+ "ext-uls-input-settings-title": "د ننوتنې امستنې",
+ "ext-uls-input-settings-title-short": "ننوتنه",
+ "ext-uls-input-settings-desc": "په يوې بلې ژبې ليکل غواړې؟",
+ "ext-uls-input-settings-ime-settings": "د $1 لپاره د ننوتنې چلندلارې",
+ "ext-uls-input-settings-ui-language": "د ليکلو لپاره کارېدونکې ژبه",
+ "ext-uls-back-to-input-settings": "د ننوتنې امستنو ته ورگرځېدل",
+ "ext-uls-disable-input-method": "ولسي ليکدړه کارول",
+ "ext-uls-input-settings-more-languages-tooltip": "نورې ژبې",
+ "jquery-ime-other-languages": "نورې ژبې",
+ "jquery-ime-disable-text": "ولسي ليکدړه کارول",
+ "jquery-ime-help": "لارښود",
+ "ext-uls-input-disable": "د ننوتنې اوزار ناچارنول",
+ "ext-uls-input-enable": "د ننوتنې اوزار چارنول",
+ "ext-uls-input-disable-info": "د ننوتنې اوزارونه ناچارن شوي.",
+ "ext-uls-input-settings-noime": "د دې ژبې لپاره د ننوتنې هېڅ کومه چلندلار نشته.",
+ "ext-uls-input-disable-notification": "د ننوتنې اوزار ناچارن شوي.",
+ "ext-uls-input-disable-notification-undo": "ناکړل",
+ "ext-uls-input-disable-notification-info-personal": "تاسې د ننوتلو اوزارونه هر وخت د ژبې امستنو څخه چارنولی شی.",
+ "ext-uls-input-disable-notification-info-interlanguage": "تاسې د ننوتلو اوزارونه هر وخت، د ژبې لړليک څنگ ته، د ژب-امستنو څخه چارنولی شی."
+}
diff --git a/MLEB/UniversalLanguageSelector/i18n/pt-br.json b/MLEB/UniversalLanguageSelector/i18n/pt-br.json
new file mode 100644
index 00000000..0e884a17
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/i18n/pt-br.json
@@ -0,0 +1,58 @@
+{
+ "@metadata": {
+ "authors": [
+ "Jaideraf",
+ "Luckas",
+ "Caio1478",
+ "Helder.wiki"
+ ]
+ },
+ "uls-desc": "Oferece ao usuário várias maneiras para selecionar um idioma e ajustar as configurações de idioma",
+ "uls-plang-title-languages": "Idiomas",
+ "ext-uls-select-language-settings-icon-tooltip": "Configurações de idioma",
+ "ext-uls-undo-language-tooltip-text": "Idioma foi mudado de $1",
+ "ext-uls-language-settings-preferences-link": "Mais configurações de idioma",
+ "ext-uls-display-settings-title": "Exibir configurações",
+ "ext-uls-display-settings-language-tab": "Idioma",
+ "ext-uls-display-settings-fonts-tab": "Fontes",
+ "ext-uls-display-settings-title-short": "Exibição",
+ "ext-uls-display-settings-desc": "Configurar o idioma para os menus e as fontes.",
+ "ext-uls-language-settings-title": "Configurações de idioma",
+ "ext-uls-language-settings-apply": "Aplicar configurações",
+ "ext-uls-language-settings-cancel": "Cancelar",
+ "ext-uls-language-buttons-help": "Mude o idioma dos menus. O idioma do conteúdo não será afetado.",
+ "ext-uls-display-settings-font-settings": "Configurações de fontes",
+ "ext-uls-display-settings-ui-language": "Exibir idioma",
+ "ext-uls-display-settings-anon-label": "Exibir idioma:",
+ "ext-uls-display-settings-anon-same-as-content": "$1 (o mesmo que o conteúdo)",
+ "ext-uls-display-settings-anon-log-in-cta": "[[Special:UserLogin|Entre]] para selecionar um idioma diferente para os menus.",
+ "ext-uls-webfonts-settings-title": "Baixar fontes quando necessário",
+ "ext-uls-webfonts-settings-info": "Baixar fontes ausentes automaticamente e permitir a seleção de fontes preferenciais.",
+ "ext-uls-webfonts-settings-info-link": "Mais informações",
+ "ext-uls-webfonts-select-for": "Selecione fonte para $1",
+ "ext-uls-webfonts-select-for-ui-info": "Fonte utilizada para a interface de usuário",
+ "ext-uls-webfonts-select-for-content-info": "Fonte utilizada para o conteúdo",
+ "ext-uls-webfonts-system-font": "Fonte do sistema",
+ "ext-uls-back-to-display-settings": "Voltar para as configurações de exibição",
+ "ext-uls-input-settings-title": "Configurações de entrada de texto",
+ "ext-uls-input-settings-title-short": "Entrada de texto",
+ "ext-uls-input-settings-desc": "Escrevendo em um idioma diferente?",
+ "ext-uls-input-settings-ime-settings": "Métodos de entrada de texto para $1",
+ "ext-uls-input-settings-ui-language": "Idioma utilizado para escrever",
+ "ext-uls-back-to-input-settings": "Voltar para as configurações de entrada de texto",
+ "ext-uls-ime-help": "Como utilizar",
+ "ext-uls-disable-input-method": "Utilizar o teclado nativo",
+ "ext-uls-input-settings-more-languages-tooltip": "Mais idiomas",
+ "jquery-ime-other-languages": "Outros idiomas",
+ "jquery-ime-disable-text": "Utilizar o teclado nativo",
+ "jquery-ime-help": "Ajuda",
+ "ext-uls-input-disable": "Desativar ferramentas de entrada de texto",
+ "ext-uls-input-enable": "Habilitar ferramentas de entrada de texto",
+ "ext-uls-input-disable-info": "Ferramentas de entrada de texto desabilitadas.",
+ "ext-uls-input-settings-noime": "Não há métodos de entrada disponíveis para este idioma.",
+ "ext-uls-input-disable-notification": "As ferramentas de entrada de texto foram desabilitadas",
+ "ext-uls-input-disable-notification-undo": "Desfazer",
+ "ext-uls-input-disable-notification-info-personal": "Você pode habilitar as ferramentas de entrada de texto a qualquer momento a partir das configurações de idioma.",
+ "ext-uls-input-disable-notification-info-interlanguage": "Você pode habilitar as ferramentas de entrada de texto a qualquer momento a partir das configurações de idioma próximo da lista de idiomas.",
+ "ext-uls-language-settings-applying": "Aplicando…"
+}
diff --git a/MLEB/UniversalLanguageSelector/i18n/pt.json b/MLEB/UniversalLanguageSelector/i18n/pt.json
new file mode 100644
index 00000000..13da291f
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/i18n/pt.json
@@ -0,0 +1,63 @@
+{
+ "@metadata": {
+ "authors": [
+ "Luckas",
+ "Malafaya",
+ "Hamilton Abreu",
+ "Vitorvicentevalente",
+ "Fúlvio",
+ 555
+ ]
+ },
+ "uls-desc": "Fornece ao utilizador várias maneiras de selecionar um idioma e ajustar suas configurações.",
+ "uls-plang-title-languages": "Idiomas",
+ "ext-uls-select-language-settings-icon-tooltip": "Configurações de idioma",
+ "ext-uls-undo-language-tooltip-text": "Idioma alterado de $1",
+ "ext-uls-language-settings-preferences-link": "Mais configurações de idioma",
+ "uls-betafeature-label": "Ligações de idioma compactadas",
+ "uls-betafeature-desc": "Mostra uma lista reduzida de idiomas, com apenas as línguas mais relevantes para si.",
+ "ext-uls-display-settings-title": "Configurações de exibição",
+ "ext-uls-display-settings-language-tab": "Idioma",
+ "ext-uls-display-settings-fonts-tab": "Fontes",
+ "ext-uls-display-settings-title-short": "Exibição",
+ "ext-uls-display-settings-desc": "Configurar o idioma usado nos menus e fontes.",
+ "ext-uls-language-settings-title": "Configurações de idioma",
+ "ext-uls-language-settings-apply": "Aplicar configurações",
+ "ext-uls-language-settings-cancel": "Cancelar",
+ "ext-uls-language-buttons-help": "Alterar o idioma dos menus. O idioma do conteúdo não será afectado.",
+ "ext-uls-display-settings-font-settings": "Configurações de fonte",
+ "ext-uls-display-settings-ui-language": "Idioma de exibição",
+ "ext-uls-display-settings-anon-label": "Idioma de exibição:",
+ "ext-uls-display-settings-anon-same-as-content": "$1 (igual ao conteúdo)",
+ "ext-uls-display-settings-anon-log-in-cta": "[[Special:UserLogin|Iniciar sessão]] para seleccionar um idioma diferente para os menus.",
+ "ext-uls-webfonts-settings-title": "Descarrega fontes quando necessário",
+ "ext-uls-webfonts-settings-info": "Descarrega fontes em falta automaticamente e permite selecção de fontes preferenciais.",
+ "ext-uls-webfonts-settings-info-link": "Mais informação",
+ "ext-uls-webfonts-select-for": "Seleccionar fonte para $1",
+ "ext-uls-webfonts-select-for-ui-info": "Fonte utilizada para a interface de utilizador",
+ "ext-uls-webfonts-select-for-content-info": "Fonte utilizada para o conteúdo",
+ "ext-uls-webfonts-system-font": "Fonte do sistema",
+ "ext-uls-back-to-display-settings": "Voltar às configurações de exibição",
+ "ext-uls-input-settings-title": "Configurações de entrada",
+ "ext-uls-input-settings-title-short": "Entrada",
+ "ext-uls-input-settings-desc": "Escreve num idioma diferente?",
+ "ext-uls-input-settings-ime-settings": "Métodos de entrada para $1",
+ "ext-uls-input-settings-ui-language": "Idioma utilizado para escrever",
+ "ext-uls-back-to-input-settings": "Voltar às configurações de entrada",
+ "ext-uls-ime-help": "Como usar",
+ "ext-uls-disable-input-method": "Usar teclado nativo",
+ "ext-uls-input-settings-more-languages-tooltip": "Mais idiomas",
+ "jquery-ime-other-languages": "Outros idiomas",
+ "jquery-ime-disable-text": "Usar teclado nativo",
+ "jquery-ime-help": "Ajuda",
+ "ext-uls-input-disable": "Desactivar ferramentas de entrada",
+ "ext-uls-input-enable": "Activar ferramentas de entrada",
+ "ext-uls-input-disable-info": "As ferramentas de entrada estão desactivadas.",
+ "ext-uls-input-settings-noime": "Não existem métodos de entrada disponíveis para este idioma.",
+ "ext-uls-input-disable-notification": "As ferramentas de entrada foram desactivadas",
+ "ext-uls-input-disable-notification-undo": "Desfazer",
+ "ext-uls-input-disable-notification-info-personal": "Pode activar as ferramentas de entrada quando quiser a partir das configurações de idioma.",
+ "ext-uls-input-disable-notification-info-interlanguage": "Pode activar as ferramentas de entrada quando quiser a partir das configurações de idioma, ao lado da lista de idiomas.",
+ "ext-uls-language-settings-applying": "A aplicar...",
+ "ext-uls-compact-link-count": "{{PLURAL:$1|Um outro idioma|$1 outros idiomas}}"
+}
diff --git a/MLEB/UniversalLanguageSelector/i18n/qqq.json b/MLEB/UniversalLanguageSelector/i18n/qqq.json
new file mode 100644
index 00000000..948bd1d5
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/i18n/qqq.json
@@ -0,0 +1,76 @@
+{
+ "@metadata": {
+ "authors": [
+ "Amire80",
+ "Hyperborean",
+ "Lloffiwr",
+ "Shirayuki",
+ "Siebrand",
+ "Nemo bis",
+ "Raymond",
+ "Liuxinyu970226"
+ ]
+ },
+ "uls-desc": "Extension description",
+ "uls-plang-title-languages": "A title for the are in the sidebar in which the interlanguage links are supposed to appear.\nThis title is shown when there are no interlanguage links there, but an icon that enables the ULS is shown.\n{{Identical|Language}}",
+ "uls-ime-helppage": "Target page for ime helps. Parameters:\n* $1 - ime id. Intended for wiki local customization. e.g. cyrl-palochka",
+ "ext-uls-select-language-settings-icon-tooltip": "A tooltip for the icon that shows the language selector.\n{{Identical|Language settings}}",
+ "ext-uls-undo-language-tooltip-text": "Text for the tooltip appearing when language is changed. Parameters:\n* $1 - the previous language acronym",
+ "ext-uls-language-settings-preferences-link": "Text for the link showin in user preference screen",
+ "uls-betafeature-label": "Used as checkbox label for beta feature. \"Compact\" is an adjective and \"language links\" is a short name for the interlanguage links, also known as interwiki (links) in the sidebar of a page.\n\nThe description for this label is {{msg-mw|Uls-betafeature-desc}}.",
+ "uls-betafeature-desc": "Description for the [[mw:Universal Language Selector/Design/Interlanguage links|compact interlanguage links beta feature]]. The \"language list\" is the \"{{int:otherlanguages}}\" box in the sidebar, also known as interwikis.\n\nThis description is for the checkbox label {{msg-mw|Uls-betafeature-label}}.",
+ "ext-uls-display-settings-title": "Display settings title text",
+ "ext-uls-display-settings-language-tab": "A button label, which shows the language selection buttons.\n{{Identical|Language}}",
+ "ext-uls-display-settings-fonts-tab": "A button label, which shows the fonts settings.\n{{Identical|Font}}",
+ "ext-uls-display-settings-title-short": "A short name for display settings screen. Can be a translation for \"Display\".\n{{Identical|Display}}",
+ "ext-uls-display-settings-desc": "Short description about display settings. 'Set language used for menus and set fonts' is equivalent in meaning to the source message.",
+ "ext-uls-language-settings-title": "Title text for language settings screen.\n{{Identical|Language settings}}",
+ "ext-uls-language-settings-apply": "Label for apply settings button in language settings screen",
+ "ext-uls-language-settings-cancel": "Label for cancel button in language settings screen.\n{{Identical|Cancel}}",
+ "ext-uls-language-buttons-help": "Help text that appears above the language selection buttons in the Display settings panel.",
+ "ext-uls-display-settings-font-settings": "Subsection title for font settings",
+ "ext-uls-display-settings-ui-language": "Sub section title for selecting UI language.\n{{Identical|Display language}}",
+ "ext-uls-display-settings-anon-label": "A label that appears to anonymous users before the message {{msg-mw|Ext-uls-display-settings-anon-same-as-content}}.\n{{Identical|Display language}}",
+ "ext-uls-display-settings-anon-same-as-content": "Text that appears to anonymous users after the label {{msg-mw|Jquery-uls-ext-uls-display-settings-anon-label}}.\n\nParameters:\n* $1 - ...",
+ "ext-uls-display-settings-anon-log-in-cta": "A call to action for an anonymous user to log in.",
+ "ext-uls-webfonts-settings-title": "Short title for enabling webfonts",
+ "ext-uls-webfonts-settings-info": "Webfonts will be downloaded for displaying text in special scripts.",
+ "ext-uls-webfonts-settings-info-link": "More information link text for webfonts\n{{Identical|More information}}",
+ "ext-uls-webfonts-select-for": "Label for font selector dropdown. $1 is a language name",
+ "ext-uls-webfonts-select-for-ui-info": "Information displayed under font selector",
+ "ext-uls-webfonts-select-for-content-info": "Information displayed under font selector",
+ "ext-uls-webfonts-system-font": "Value in a dropdown. System font means that instead of using a specific font provided by this extension, the default font defined in the browser or operating system is used.",
+ "ext-uls-back-to-display-settings": "Text for the link shown when language selector is accessed from language settings.",
+ "ext-uls-input-settings-title": "Title text for input settings screen",
+ "ext-uls-input-settings-title-short": "Short title for input settings screen",
+ "ext-uls-input-settings-desc": "Short description about input settings. Users are asked if they're trying to type in a language different from the current one, so that they can select the desired language and write more easily.",
+ "ext-uls-input-settings-ime-settings": "*$1 - language name",
+ "ext-uls-input-settings-ui-language": "Sub section title for input settings screen",
+ "ext-uls-back-to-input-settings": "Text for the link shown when language selector is accessed from language settings.",
+ "ext-uls-ime-help": "Used as tooltip for the link pointing to {{msg-mw|Uls-ime-helppage}}.\n\ne.g. [[mw:Special:MyLanguage/Help:Extension:UniversalLanguageSelector/Input methods/as-inscript|mw:Help:Extension:UniversalLanguageSelector/Input methods/as-inscript]]",
+ "ext-uls-disable-input-method": "Used as label of radio button.\n\nA \"native keyboard\" is the keyboard that was loaded on the original device (as opposed to a keyboard with key/character combinations according to software added to the machine).",
+ "ext-uls-input-settings-more-languages-tooltip": "Tool tip text for the '...' selector to select more languages.\n{{Identical|More languages}}",
+ "jquery-ime-other-languages": "Title text used for language list in the input method selector menu.\n{{Identical|Otherlanguages}}",
+ "jquery-ime-disable-text": "Label used for disabling input method from input method selector menu",
+ "jquery-ime-help": "Text for help link.\n{{Identical|Help}}",
+ "ext-uls-input-disable": "Label for disable input tools submit button",
+ "ext-uls-input-enable": "Label for enable input tools button",
+ "ext-uls-input-disable-info": "Info text for the disable input tools button",
+ "ext-uls-input-settings-noime": "Text to be shown when no input methods are available for a selected language",
+ "ext-uls-input-disable-notification": "Notification bubble text when input methods are disabled",
+ "ext-uls-input-disable-notification-undo": "Undo link text in the input method disable notification bubble.\n\nPreceded by the notification message {{msg-mw|Ext-uls-input-disable-notification}}.\n{{Identical|Undo}}",
+ "ext-uls-input-disable-notification-info-personal": "Notification bubble text when input methods are disabled, appears if the ULS is at personal toolbar",
+ "ext-uls-input-disable-notification-info-interlanguage": "Notification bubble text when input methods are disabled, appears if the ULS is at interlanguage toolbar",
+ "ext-uls-language-settings-applying": "Label for apply settings button in language settings screen, while settings being saved. Please keep it short.",
+ "ext-uls-compact-link-count": "Message next to list of languages which indicates that there are more languages than the ones shown. Parameters:\n* $1 - number of languages",
+ "apihelp-languagesearch-description": "{{doc-apihelp-description|languagesearch}}",
+ "apihelp-languagesearch-param-search": "{{doc-apihelp-param|languagesearch|search}}\n{{Identical|Search string}}",
+ "apihelp-languagesearch-param-typos": "{{doc-apihelp-param|languagesearch|typos}}",
+ "apihelp-languagesearch-example-1": "{{doc-apihelp-example|languagesearch}}",
+ "apihelp-languagesearch-example-2": "{{doc-apihelp-example|languagesearch}}",
+ "apihelp-languagesearch-example-3": "{{doc-apihelp-example|languagesearch}}",
+ "apihelp-ulslocalization-description": "{{doc-apihelp-description|ulslocalization}}",
+ "apihelp-ulslocalization-param-language": "{{doc-apihelp-param|ulslocalization|language}}",
+ "apihelp-ulslocalization-example-1": "{{doc-apihelp-example|ulslocalization}}",
+ "apihelp-ulslocalization-example-2": "{{doc-apihelp-example|ulslocalization}}"
+}
diff --git a/MLEB/UniversalLanguageSelector/i18n/qu.json b/MLEB/UniversalLanguageSelector/i18n/qu.json
new file mode 100644
index 00000000..ac61ad57
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/i18n/qu.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "AlimanRuna"
+ ]
+ },
+ "uls-plang-title-languages": "Rimaykuna"
+}
diff --git a/MLEB/UniversalLanguageSelector/i18n/ro.json b/MLEB/UniversalLanguageSelector/i18n/ro.json
new file mode 100644
index 00000000..17934803
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/i18n/ro.json
@@ -0,0 +1,58 @@
+{
+ "@metadata": {
+ "authors": [
+ "Minisarm"
+ ]
+ },
+ "uls-desc": "Oferă utilizatorului mai multe modalități de a selecta o limbă și de a modifica setările de limbă",
+ "uls-plang-title-languages": "Limbi",
+ "ext-uls-select-language-settings-icon-tooltip": "Setări de limbă",
+ "ext-uls-undo-language-tooltip-text": "Limba schimbată din $1",
+ "ext-uls-language-settings-preferences-link": "Mai multe setări de limbă",
+ "uls-betafeature-label": "Legături interlinguale compacte",
+ "uls-betafeature-desc": "Afișează o versiune trunchiată a listei de legături interlinguale, care conține doar limbile relevante pentru dumneavoastră.",
+ "ext-uls-display-settings-title": "Setări afișare",
+ "ext-uls-display-settings-language-tab": "Limbă",
+ "ext-uls-display-settings-fonts-tab": "Fonturi",
+ "ext-uls-display-settings-title-short": "Afișare",
+ "ext-uls-display-settings-desc": "Setați limba utilizată pentru meniuri și fonturi.",
+ "ext-uls-language-settings-title": "Setări limbă",
+ "ext-uls-language-settings-apply": "Aplică setările",
+ "ext-uls-language-settings-cancel": "Revocare",
+ "ext-uls-language-buttons-help": "Modifică limba meniurilor. Limba conținutului nu va fi afectată.",
+ "ext-uls-display-settings-font-settings": "Setări font",
+ "ext-uls-display-settings-ui-language": "Limbă afișare",
+ "ext-uls-display-settings-anon-label": "Limba interfeței:",
+ "ext-uls-display-settings-anon-same-as-content": "$1 (asemenea conținutului)",
+ "ext-uls-display-settings-anon-log-in-cta": "[[Special:UserLogin|Autentificați-vă]] pentru a alege o altă limbă pentru meniuri.",
+ "ext-uls-webfonts-settings-title": "Descarcă fonturile atunci când este necesar",
+ "ext-uls-webfonts-settings-info": "Descarcă fonturile lipsă în mod automat și permite selectarea fonturilor preferate.",
+ "ext-uls-webfonts-settings-info-link": "Mai multe informații",
+ "ext-uls-webfonts-select-for": "Selectați fontul pentru $1",
+ "ext-uls-webfonts-select-for-ui-info": "Font utilizat pentru interfață",
+ "ext-uls-webfonts-select-for-content-info": "Font utilizat pentru conținut",
+ "ext-uls-webfonts-system-font": "Fontul sistemului",
+ "ext-uls-back-to-display-settings": "Înapoi la setările de afișare",
+ "ext-uls-input-settings-title": "Setări introducere",
+ "ext-uls-input-settings-title-short": "Introducere",
+ "ext-uls-input-settings-desc": "Scrieți în altă limbă?",
+ "ext-uls-input-settings-ime-settings": "Metode de introducere pentru $1",
+ "ext-uls-input-settings-ui-language": "Limbă utilizată pentru scriere",
+ "ext-uls-back-to-input-settings": "Înapoi la setările de introducere",
+ "ext-uls-ime-help": "Mod de utilizare",
+ "ext-uls-disable-input-method": "Folosește tastatura nativă",
+ "ext-uls-input-settings-more-languages-tooltip": "Mai multe limbi",
+ "jquery-ime-other-languages": "Alte limbi",
+ "jquery-ime-disable-text": "Folosește tastatura nativă",
+ "jquery-ime-help": "Ajutor",
+ "ext-uls-input-disable": "Dezactivează uneltele pentru introducere",
+ "ext-uls-input-enable": "Activează uneltele pentru introducere",
+ "ext-uls-input-disable-info": "Uneltele pentru introducere sunt dezactivate.",
+ "ext-uls-input-settings-noime": "Nicio metodă de introducere nu este disponibilă pentru această limbă.",
+ "ext-uls-input-disable-notification": "Uneltele pentru introducere au fost dezactivate",
+ "ext-uls-input-disable-notification-undo": "Anulează",
+ "ext-uls-input-disable-notification-info-personal": "Puteți activa uneltele pentru introducere oricând din setările de limbă.",
+ "ext-uls-input-disable-notification-info-interlanguage": "Puteți activa uneltele pentru introducere oricând din setările de limbă aflate lângă lista cu limbile disponibile.",
+ "ext-uls-language-settings-applying": "Se aplică...",
+ "ext-uls-compact-link-count": "{{PLURAL:$1|Încă o limbă|Încă $1 limbi|Încă $1 de limbi}}"
+}
diff --git a/MLEB/UniversalLanguageSelector/i18n/roa-tara.json b/MLEB/UniversalLanguageSelector/i18n/roa-tara.json
new file mode 100644
index 00000000..e71da0dc
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/i18n/roa-tara.json
@@ -0,0 +1,54 @@
+{
+ "@metadata": {
+ "authors": [
+ "Joetaras"
+ ]
+ },
+ "uls-desc": "Dèje diverse mode a l'utende de scacchià 'na lènghe e de consiglià le 'mbostaziune d'a lènghe",
+ "uls-plang-title-languages": "Lènghe",
+ "ext-uls-select-language-settings-icon-tooltip": "'Mbostaziune de lènghe",
+ "ext-uls-undo-language-tooltip-text": "Lènghe cangiate da $1",
+ "ext-uls-language-settings-preferences-link": "Otre 'mbostaziune d'a lènghe",
+ "ext-uls-display-settings-title": "Fà vedè le 'mbostaziune",
+ "ext-uls-display-settings-language-tab": "Lènghe",
+ "ext-uls-display-settings-fonts-tab": "Carattere",
+ "ext-uls-display-settings-title-short": "Fà vedè",
+ "ext-uls-display-settings-desc": "'Mboste 'a lènghe ausate pe menu e carattere.",
+ "ext-uls-language-settings-title": "'Mbostaziune d'a lènghe",
+ "ext-uls-language-settings-apply": "Appliche le 'mbostaziune",
+ "ext-uls-language-settings-cancel": "Annulle",
+ "ext-uls-language-buttons-help": "Cange 'a lènghe de le menu. 'A lènghe de le condenute non ge cange.",
+ "ext-uls-display-settings-font-settings": "'Mbostaziune d'u carattere",
+ "ext-uls-display-settings-ui-language": "Lènghe da fà vedè",
+ "ext-uls-display-settings-anon-label": "Fà vedè le lènghe:",
+ "ext-uls-display-settings-anon-same-as-content": "$1 ('u stesse cumme condenute)",
+ "ext-uls-display-settings-anon-log-in-cta": "[[Special:UserLogin|Tràse]] pe scacchià 'na lènghe diverse pe le menu.",
+ "ext-uls-webfonts-settings-title": "Scareche le carattere quanne abbesògne",
+ "ext-uls-webfonts-settings-info-link": "Cchiù 'mbormaziune",
+ "ext-uls-webfonts-select-for": "Scacchie 'u carattere pe $1",
+ "ext-uls-webfonts-select-for-ui-info": "Carattere ausate pe l'inderfacce utende",
+ "ext-uls-webfonts-select-for-content-info": "Carattere ausate pe condenute",
+ "ext-uls-webfonts-system-font": "Carattere de sisteme",
+ "ext-uls-back-to-display-settings": "Tuèrne rrete a fà vedè le 'mbostaziune",
+ "ext-uls-input-settings-title": "'Mbostaziune de l'ingresse",
+ "ext-uls-input-settings-title-short": "Ingresse",
+ "ext-uls-input-settings-desc": "Ste scrive cu 'na lènghe diverse?",
+ "ext-uls-input-settings-ime-settings": "Metode de ingresse pe $1",
+ "ext-uls-input-settings-ui-language": "Lènghe ausate pe scrivere",
+ "ext-uls-back-to-input-settings": "Tuèrne rrete a le 'mbostaziune de l'ingresse",
+ "ext-uls-ime-help": "Cumme se ause",
+ "ext-uls-disable-input-method": "Ause 'na tastiere native",
+ "ext-uls-input-settings-more-languages-tooltip": "Cchiù lènghe",
+ "jquery-ime-other-languages": "Otre lènghe",
+ "jquery-ime-disable-text": "Ause 'na tastiere native",
+ "jquery-ime-help": "Ajiute",
+ "ext-uls-input-disable": "Disabbilite le struminde de l'ingresse",
+ "ext-uls-input-enable": "Abbilite le struminde de l'ingresse",
+ "ext-uls-input-disable-info": "Le struminde de l'ingresse onne state disabbilitate.",
+ "ext-uls-input-settings-noime": "Nisciune metode de ingresse jè disponibbile pe sta lènghe.",
+ "ext-uls-input-disable-notification": "Le struminde de ingresse onne state disabbilitate",
+ "ext-uls-input-disable-notification-undo": "Annulle",
+ "ext-uls-input-disable-notification-info-personal": "Tu puè abbilità le struminde de ingresse ogne vote da le 'mbostaziune d'a lènghe.",
+ "ext-uls-input-disable-notification-info-interlanguage": "Tu puè abbilità le struminde de ingresse ogne vote da le 'mbostaziune d'a lènghe successive a l'elenghe de le lènghe.",
+ "ext-uls-language-settings-applying": "Stoche a appleche..."
+}
diff --git a/MLEB/UniversalLanguageSelector/i18n/ru.json b/MLEB/UniversalLanguageSelector/i18n/ru.json
new file mode 100644
index 00000000..52339905
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/i18n/ru.json
@@ -0,0 +1,64 @@
+{
+ "@metadata": {
+ "authors": [
+ "Amire80",
+ "Okras",
+ "Putnik",
+ "ShinePhantom",
+ "Умар",
+ "Kaganer",
+ "Iltever"
+ ]
+ },
+ "uls-desc": "Даёт пользователю несколько способов выбрать язык и произвести установки языка",
+ "uls-plang-title-languages": "Языки",
+ "ext-uls-select-language-settings-icon-tooltip": "Установки языка",
+ "ext-uls-undo-language-tooltip-text": "Предыдущий язык: $1",
+ "ext-uls-language-settings-preferences-link": "Дополнительные установки языка",
+ "uls-betafeature-label": "Компактный список языковых ссылок",
+ "uls-betafeature-desc": "Показывает сокращенный вариант списка языков, только с языками, которые являются более актуальными для вас.",
+ "ext-uls-display-settings-title": "Установки отображения",
+ "ext-uls-display-settings-language-tab": "Язык",
+ "ext-uls-display-settings-fonts-tab": "Шрифты",
+ "ext-uls-display-settings-title-short": "Отображение",
+ "ext-uls-display-settings-desc": "Язык меню и шрифтов",
+ "ext-uls-language-settings-title": "Установки языка",
+ "ext-uls-language-settings-apply": "Применить установки",
+ "ext-uls-language-settings-cancel": "Отмена",
+ "ext-uls-language-buttons-help": "Изменить язык меню. Язык содержимого не будет затронут.",
+ "ext-uls-display-settings-font-settings": "Установки шрифта",
+ "ext-uls-display-settings-ui-language": "Язык отображения",
+ "ext-uls-display-settings-anon-label": "Язык отображения:",
+ "ext-uls-display-settings-anon-same-as-content": "$1 (такой же, как у содержимого)",
+ "ext-uls-display-settings-anon-log-in-cta": "[[Special:UserLogin|Войдите]], чтобы выбрать другой язык для меню.",
+ "ext-uls-webfonts-settings-title": "Скачать шрифты при необходимости",
+ "ext-uls-webfonts-settings-info": "Автоматически загружать отсутствующие шрифты и разрешить выбор предпочтительных шрифтов.",
+ "ext-uls-webfonts-settings-info-link": "Дополнительная информация",
+ "ext-uls-webfonts-select-for": "Выбор шрифта для $1",
+ "ext-uls-webfonts-select-for-ui-info": "Шрифт интерфейса пользователя",
+ "ext-uls-webfonts-select-for-content-info": "Шрифт для текста",
+ "ext-uls-webfonts-system-font": "Системный шрифт",
+ "ext-uls-back-to-display-settings": "Обратно к установкам отображения",
+ "ext-uls-input-settings-title": "Установки ввода",
+ "ext-uls-input-settings-title-short": "Ввод",
+ "ext-uls-input-settings-desc": "Пишете на другом языке?",
+ "ext-uls-input-settings-ime-settings": "Клавиатуры для $1",
+ "ext-uls-input-settings-ui-language": "Язык письма",
+ "ext-uls-back-to-input-settings": "Обратно к установкам ввода",
+ "ext-uls-ime-help": "Как пользоваться",
+ "ext-uls-disable-input-method": "Использовать родную клавиатуру",
+ "ext-uls-input-settings-more-languages-tooltip": "Дополнительные языки",
+ "jquery-ime-other-languages": "Другие языки",
+ "jquery-ime-disable-text": "Использовать родную клавиатуру",
+ "jquery-ime-help": "Справка",
+ "ext-uls-input-disable": "Отключить инструменты ввода",
+ "ext-uls-input-enable": "Включить инструменты ввода",
+ "ext-uls-input-disable-info": "Инструменты ввода отключены.",
+ "ext-uls-input-settings-noime": "Для этого языка не были определены раскладки.",
+ "ext-uls-input-disable-notification": "Инструменты ввода были отключены",
+ "ext-uls-input-disable-notification-undo": "Отменить",
+ "ext-uls-input-disable-notification-info-personal": "Инструменты ввода можно включить в любое время из установок языка.",
+ "ext-uls-input-disable-notification-info-interlanguage": "Инструменты ввода можно включить в любое время из установок языка рядом со списком языков.",
+ "ext-uls-language-settings-applying": "Применение…",
+ "ext-uls-compact-link-count": "Ещё на {{PLURAL:$1|одном языке|$1 языках}}"
+}
diff --git a/MLEB/UniversalLanguageSelector/i18n/rue.json b/MLEB/UniversalLanguageSelector/i18n/rue.json
new file mode 100644
index 00000000..528287b9
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/i18n/rue.json
@@ -0,0 +1,10 @@
+{
+ "@metadata": {
+ "authors": [
+ "Tkalyn"
+ ]
+ },
+ "uls-plang-title-languages": "Языкы",
+ "ext-uls-select-language-settings-icon-tooltip": "Языковы наставлїня",
+ "ext-uls-language-settings-title": "Языковы наставлїня"
+}
diff --git a/MLEB/UniversalLanguageSelector/i18n/scn.json b/MLEB/UniversalLanguageSelector/i18n/scn.json
new file mode 100644
index 00000000..47b9f758
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/i18n/scn.json
@@ -0,0 +1,49 @@
+{
+ "@metadata": {
+ "authors": [
+ "Gmelfi"
+ ]
+ },
+ "ext-uls-select-language-settings-icon-tooltip": "Mpustazzioni pâ lingua",
+ "ext-uls-undo-language-tooltip-text": "Lingua canciata a pàrtiri di $1",
+ "ext-uls-language-settings-preferences-link": "Àutri mpustazzioni pâ lingua",
+ "ext-uls-display-settings-title": "Mpustazzioni di visualizzazzioni",
+ "ext-uls-display-settings-language-tab": "Lingua",
+ "ext-uls-display-settings-fonts-tab": "Tipa di carattiri",
+ "ext-uls-display-settings-title-short": "Littura",
+ "ext-uls-display-settings-desc": "Mposta la lingua usata pi minù e carattiri.",
+ "ext-uls-language-settings-title": "Mpustazzioni pâ lingua",
+ "ext-uls-language-settings-apply": "Applica li mpustazzioni",
+ "ext-uls-language-settings-cancel": "Annulla",
+ "ext-uls-language-buttons-help": "Cancia la lingua dî minù. La lingua dî cuntinuti nun veni canciata.",
+ "ext-uls-display-settings-font-settings": "Mpustazzioni pî tipa di carattiri",
+ "ext-uls-display-settings-ui-language": "Lingua di visualizzazzioni",
+ "ext-uls-display-settings-anon-label": "Lingua di visualizzazioni:",
+ "ext-uls-display-settings-anon-same-as-content": "$1 (come lu cuntinutu)",
+ "ext-uls-display-settings-anon-log-in-cta": "[[Special:UserLogin|Trasi]] pi silizziunari na lingua sparti pô minù.",
+ "ext-uls-webfonts-select-for": "Selezziona tipu di carattiri per $1",
+ "ext-uls-webfonts-select-for-ui-info": "Tipu di carattiri usatu pâ ntirfaccia utenti",
+ "ext-uls-webfonts-select-for-content-info": "Tipu di caratteri usatu pô cuntinutu",
+ "ext-uls-webfonts-system-font": "Font di sistema",
+ "ext-uls-back-to-display-settings": "Arritorna ê mpustazzioni di visualizzazioni",
+ "ext-uls-input-settings-title": "Mpustazzioni di scrittura",
+ "ext-uls-input-settings-title-short": "Scrittura",
+ "ext-uls-input-settings-desc": "Scrivi nti na lingua sparti?",
+ "ext-uls-input-settings-ime-settings": "Mètoda di scrittura pi $1",
+ "ext-uls-input-settings-ui-language": "Lingua usata pâ scrittura",
+ "ext-uls-back-to-input-settings": "Arritorna ê mpustazzioni di scrittura",
+ "ext-uls-ime-help": "Comu usàrlu",
+ "ext-uls-disable-input-method": "Utilizza la tastiera nativa",
+ "ext-uls-input-settings-more-languages-tooltip": "Cchiossai lingui",
+ "jquery-ime-other-languages": "Àutri lingui",
+ "jquery-ime-disable-text": "Utilizza la tastiera nativa",
+ "jquery-ime-help": "Aiutu",
+ "ext-uls-input-disable": "Disabbilita li strummenta di scrittura",
+ "ext-uls-input-enable": "Abbilita li strummenta di scrittura",
+ "ext-uls-input-disable-info": "Li strummenta di scrittura sunnu disabbilitati.",
+ "ext-uls-input-settings-noime": "Nuddu metudu di scrittura è dispunibbili pi sta lingua.",
+ "ext-uls-input-disable-notification": "Li strummenta di scrittura foru disabbilitati",
+ "ext-uls-input-disable-notification-undo": "Annulla",
+ "ext-uls-input-disable-notification-info-personal": "È pussibbili attivari quannegghiè li strummenta di scrittura a pàrtiri dê mpustazzioni dâ lingua.",
+ "ext-uls-input-disable-notification-info-interlanguage": "È pussibbili attivari quannegghiè li strummenta di scrittura a pàrtiri dê mpustazzioni dâ lingua, vicinu a l'alencu dê lingui."
+}
diff --git a/MLEB/UniversalLanguageSelector/i18n/sco.json b/MLEB/UniversalLanguageSelector/i18n/sco.json
new file mode 100644
index 00000000..217cd7e8
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/i18n/sco.json
@@ -0,0 +1,55 @@
+{
+ "@metadata": {
+ "authors": [
+ "John Reid"
+ ]
+ },
+ "uls-desc": "Gies the uiser several waas tae select ae leid n tae adjust leid settins",
+ "uls-plang-title-languages": "Leids",
+ "ext-uls-select-language-settings-icon-tooltip": "Leid settins",
+ "ext-uls-undo-language-tooltip-text": "Leid chynged fae $1",
+ "ext-uls-language-settings-preferences-link": "Mair leid settins",
+ "uls-betafeature-label": "Compact leid airtins",
+ "uls-betafeature-desc": "Shaw ae shorter version o the leid leet, wi just the leids that ar mai reelevant fer ye.",
+ "ext-uls-display-settings-title": "Displey settins",
+ "ext-uls-display-settings-language-tab": "Leid",
+ "ext-uls-display-settings-title-short": "Displey",
+ "ext-uls-display-settings-desc": "Set leid uised fer menus n fonts.",
+ "ext-uls-language-settings-title": "Leid settins",
+ "ext-uls-language-settings-apply": "Applie settins",
+ "ext-uls-language-buttons-help": "Chynge the leid o menus. Content leid will na be affectit.",
+ "ext-uls-display-settings-font-settings": "Font settins",
+ "ext-uls-display-settings-ui-language": "Displey leid",
+ "ext-uls-display-settings-anon-label": "Displey leid:",
+ "ext-uls-display-settings-anon-same-as-content": "$1 (same aes content)",
+ "ext-uls-display-settings-anon-log-in-cta": "[[Special:UserLogin|Log in]] tae select ae differant leid fer menus.",
+ "ext-uls-webfonts-settings-title": "Doonlaid fonts whan needit",
+ "ext-uls-webfonts-settings-info": "Doonlaid missin fonts autaematiclie n permit selection o preferred fonts.",
+ "ext-uls-webfonts-settings-info-link": "Mair information",
+ "ext-uls-webfonts-select-for": "Select font fer $1",
+ "ext-uls-webfonts-select-for-ui-info": "Font uised fer uiser interface",
+ "ext-uls-webfonts-select-for-content-info": "Font uised fer content",
+ "ext-uls-back-to-display-settings": "Back tae the displey settins",
+ "ext-uls-input-settings-title": "Inpit settins",
+ "ext-uls-input-settings-title-short": "Inpit",
+ "ext-uls-input-settings-desc": "Writin in ae differant leid?",
+ "ext-uls-input-settings-ime-settings": "Inpit methyds fer $1",
+ "ext-uls-input-settings-ui-language": "Leid uised fer writin",
+ "ext-uls-back-to-input-settings": "Back tae the inpit settins",
+ "ext-uls-ime-help": "Hou tae uise",
+ "ext-uls-disable-input-method": "Uise nateeve keybuird",
+ "ext-uls-input-settings-more-languages-tooltip": "Mair leids",
+ "jquery-ime-other-languages": "Ither leids",
+ "jquery-ime-disable-text": "Uise nateeve keybuird",
+ "jquery-ime-help": "Heelp",
+ "ext-uls-input-disable": "Disable inpit tuils",
+ "ext-uls-input-enable": "Enable inpit tuils",
+ "ext-uls-input-disable-info": "Inpit tuils ar disabled.",
+ "ext-uls-input-settings-noime": "Nae inpit methyds ar available fer this leid.",
+ "ext-uls-input-disable-notification": "Inpit tuils hae been disabled",
+ "ext-uls-input-disable-notification-undo": "Ondae",
+ "ext-uls-input-disable-notification-info-personal": "Ye can enable the inpit tuils at onie time fae the leid settins.",
+ "ext-uls-input-disable-notification-info-interlanguage": "Ye can enable the inpit tuils at onie time fae the leid settins nex til the leid leet.",
+ "ext-uls-language-settings-applying": "Appliein...",
+ "ext-uls-compact-link-count": "{{PLURAL:$1|yin mair leid|$1 mair leids}}"
+}
diff --git a/MLEB/UniversalLanguageSelector/i18n/si.json b/MLEB/UniversalLanguageSelector/i18n/si.json
new file mode 100644
index 00000000..48b89d98
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/i18n/si.json
@@ -0,0 +1,40 @@
+{
+ "@metadata": {
+ "authors": [
+ "පසිඳු කාවින්ද",
+ "Sahan.ssw"
+ ]
+ },
+ "uls-plang-title-languages": "භාෂාවන්",
+ "ext-uls-undo-language-tooltip-text": "$1 ගෙන් භාෂාව වෙනස් වුණි",
+ "ext-uls-display-settings-title": "සන්දර්ශන සැකසුම්",
+ "ext-uls-display-settings-title-short": "සන්දර්ශනය",
+ "ext-uls-display-settings-desc": "මෙනු සහ අක්ෂර සඳහා භාවිතා වන භාෂාවක් සකසන්න.",
+ "ext-uls-language-settings-title": "භාෂා සැකසුම්",
+ "ext-uls-language-settings-apply": "සැකසුම් යොමන්න",
+ "ext-uls-language-settings-cancel": "අවලංගු කරන්න",
+ "ext-uls-display-settings-font-settings": "අක්ෂර සැකසුම්",
+ "ext-uls-display-settings-ui-language": "සන්දර්ශන භාෂාව",
+ "ext-uls-webfonts-settings-title": "අවශ්‍ය වූ විට අක්ෂර බාගන්න",
+ "ext-uls-webfonts-settings-info": "නැති අක්ෂර ස්වයංක්‍රීයව බාගත කිරීම හා කොටසට ගැළපෙන අක්ෂර යොදන්න",
+ "ext-uls-webfonts-settings-info-link": "තවත් තොරතුරු",
+ "ext-uls-webfonts-select-for": "$1 සඳහා අක්ෂරය තෝරන්න",
+ "ext-uls-webfonts-select-for-ui-info": "පරිශීලක අතුරුමුහුණත සඳහා භාවිතා කරන අක්ෂරය",
+ "ext-uls-webfonts-select-for-content-info": "අන්තර්ගතය සඳහා භාවිතා කරන අක්ෂරය",
+ "ext-uls-back-to-display-settings": "සංදර්ශක සැකසුම් වෙත නැවතත්",
+ "ext-uls-input-settings-title": "ආදාන සැකසුම්",
+ "ext-uls-input-settings-title-short": "ආදානය",
+ "ext-uls-input-settings-desc": "වෙනත් භාෂාවකින් ලියනවද?",
+ "ext-uls-input-settings-ime-settings": "$1 සඳහා ආදාන ක්‍රම",
+ "ext-uls-input-settings-ui-language": "ලිවීම සඳහා භාවිතා කරන භාෂාව",
+ "ext-uls-back-to-input-settings": "ආදාන සැකසුම් වෙත නැවතත්",
+ "ext-uls-disable-input-method": "සහජ යතුරුපුවරුව භාවිතා කරන්න",
+ "ext-uls-input-settings-more-languages-tooltip": "තවත් භාෂාවන්",
+ "jquery-ime-other-languages": "වෙනත් භාෂාවන්",
+ "jquery-ime-disable-text": "සහජ යතුරුපුවරුව භාවිතා කරන්න",
+ "jquery-ime-help": "උදව්",
+ "ext-uls-input-disable": "යෙදවුම් මෙවලම් අක්‍රිය කරන්න",
+ "ext-uls-input-enable": "යෙදවුම් මෙවලම් සක්‍රිය කරන්න",
+ "ext-uls-input-disable-info": "යෙදවුම් මෙවලම් අක්‍රියයි.",
+ "ext-uls-input-settings-noime": "මෙම භාෂාව සඳහා ආදාන ක්‍රම කිසිවක් ලබා ගත නොහැක."
+}
diff --git a/MLEB/UniversalLanguageSelector/i18n/sk.json b/MLEB/UniversalLanguageSelector/i18n/sk.json
new file mode 100644
index 00000000..ecd10503
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/i18n/sk.json
@@ -0,0 +1,57 @@
+{
+ "@metadata": {
+ "authors": [
+ "Sudo77(new)",
+ "KuboF"
+ ]
+ },
+ "uls-desc": "Ponúka používateľovi niekoľko spôsobov výberu jazyka a úpravy jazykových nastavení",
+ "uls-plang-title-languages": "Jazyky",
+ "ext-uls-select-language-settings-icon-tooltip": "Jazykové nastavenia",
+ "ext-uls-undo-language-tooltip-text": "Jazyk zmenený z $1",
+ "ext-uls-language-settings-preferences-link": "Dalšie jazykové nastavenia",
+ "uls-betafeature-label": "Kompaktné medzijazykové odkazy",
+ "uls-betafeature-desc": "Zobrazovať kratšiu verziu zoznamu jazykov, obsahujúcu len jazyky, ktoré sú pre vás dôležité.",
+ "ext-uls-display-settings-title": "Nastavenia zobrazenia",
+ "ext-uls-display-settings-language-tab": "Jazyk",
+ "ext-uls-display-settings-fonts-tab": "Písma",
+ "ext-uls-display-settings-title-short": "Zobrazenie",
+ "ext-uls-display-settings-desc": "Nastaviť jazyk používaný pre menu a písma.",
+ "ext-uls-language-settings-title": "Jazykové nastavenia",
+ "ext-uls-language-settings-apply": "Použiť nastavenia",
+ "ext-uls-language-settings-cancel": "Zrušiť",
+ "ext-uls-language-buttons-help": "Zmení jazyk menu. Neovplyvní to jazyk obsahu.",
+ "ext-uls-display-settings-font-settings": "Nastavenia písma",
+ "ext-uls-display-settings-ui-language": "Jazyk rozhrania",
+ "ext-uls-display-settings-anon-label": "Jazyk rozhrania",
+ "ext-uls-display-settings-anon-same-as-content": "$1 (rovnako ako obsah)",
+ "ext-uls-display-settings-anon-log-in-cta": "Iný jazyk pre ponuky si môžete zvoliť po [[Special:UserLogin|prihlásení]].",
+ "ext-uls-webfonts-settings-info-link": "Viac informácií",
+ "ext-uls-webfonts-select-for": "Vyberte písmo pre $1",
+ "ext-uls-webfonts-select-for-ui-info": "Písmo použité pre používateľské rozhranie",
+ "ext-uls-webfonts-select-for-content-info": "Písmo použité pre obsah",
+ "ext-uls-webfonts-system-font": "Systémové písmo",
+ "ext-uls-back-to-display-settings": "Späť na nastavenia zobrazenia",
+ "ext-uls-input-settings-title": "Nastavenia vstupu",
+ "ext-uls-input-settings-title-short": "Vstup",
+ "ext-uls-input-settings-desc": "Píšete iným jazykom?",
+ "ext-uls-input-settings-ime-settings": "Metódy vstupu pre $1",
+ "ext-uls-input-settings-ui-language": "Jazyk používaný pre písanie",
+ "ext-uls-back-to-input-settings": "Späť na nastavenia vstupu",
+ "ext-uls-ime-help": "Ako používať",
+ "ext-uls-disable-input-method": "Používať pôvodnú klávesnicu",
+ "ext-uls-input-settings-more-languages-tooltip": "Ďalšie jazyky",
+ "jquery-ime-other-languages": "Iné jazyky",
+ "jquery-ime-disable-text": "Používať pôvodnú klávesnicu",
+ "jquery-ime-help": "Pomoc",
+ "ext-uls-input-disable": "Vypnúť nástroje pre vstup",
+ "ext-uls-input-enable": "Zapnúť nástroje pre vstup",
+ "ext-uls-input-disable-info": "Nástroje pre vstup sú vypnuté.",
+ "ext-uls-input-settings-noime": "Pre tento jazyk nie sú k dispozícii žiadne metódy zadávania znakov.",
+ "ext-uls-input-disable-notification": "Nástroje pre vstup boli vypnuté",
+ "ext-uls-input-disable-notification-undo": "Vrátiť",
+ "ext-uls-input-disable-notification-info-personal": "Nástroje pre vstup môžete kedykoľvek zapnúť v jazykových nastaveniach.",
+ "ext-uls-input-disable-notification-info-interlanguage": "Nástroje pre vstup môžete kedykoľvek zapnúť v jazykových nastaveniach vedľa zoznamu jazykov.",
+ "ext-uls-language-settings-applying": "Aplikuje sa...",
+ "ext-uls-compact-link-count": "{{PLURAL:$1|Ďalší jazyk|$1 ďalších jazykov}}"
+}
diff --git a/MLEB/UniversalLanguageSelector/i18n/sl.json b/MLEB/UniversalLanguageSelector/i18n/sl.json
new file mode 100644
index 00000000..dfd2547e
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/i18n/sl.json
@@ -0,0 +1,59 @@
+{
+ "@metadata": {
+ "authors": [
+ "Eleassar",
+ "Dbc334"
+ ]
+ },
+ "uls-desc": "Daje uporabniku več načinov izbire jezika in prilagoditve jezikovnih nastavitev",
+ "uls-plang-title-languages": "Jeziki",
+ "ext-uls-select-language-settings-icon-tooltip": "Nastavitve jezika",
+ "ext-uls-undo-language-tooltip-text": "Sprememba jezika iz $1",
+ "ext-uls-language-settings-preferences-link": "Več jezikovnih nastavitev",
+ "uls-betafeature-label": "Strnjene jezikovne povezave",
+ "uls-betafeature-desc": "Prikaži krajšo različico seznama jezikov, samo z jeziki, ki so za vas bolj primerni.",
+ "ext-uls-display-settings-title": "Nastavitve prikaza",
+ "ext-uls-display-settings-language-tab": "Jezik",
+ "ext-uls-display-settings-fonts-tab": "Pisave",
+ "ext-uls-display-settings-title-short": "Prikaz",
+ "ext-uls-display-settings-desc": "Nastavite jezik menijev in pisav.",
+ "ext-uls-language-settings-title": "Jezikovne nastavitve",
+ "ext-uls-language-settings-apply": "Uporabi nastavitve",
+ "ext-uls-language-settings-cancel": "Prekliči",
+ "ext-uls-language-buttons-help": "Spremeni jezik menijev. Na jezik vsebine to ne bo vplivalo.",
+ "ext-uls-display-settings-font-settings": "Nastavitve pisav",
+ "ext-uls-display-settings-ui-language": "Jezik prikaza",
+ "ext-uls-display-settings-anon-label": "Jezik prikaza:",
+ "ext-uls-display-settings-anon-same-as-content": "$1 (enako kot vsebina)",
+ "ext-uls-display-settings-anon-log-in-cta": "Za izbiro drugačnega jezika za menije se [[Special:UserLogin|prijavite]].",
+ "ext-uls-webfonts-settings-title": "Prenesi pisave, ko je to potrebno",
+ "ext-uls-webfonts-settings-info": "Samodejno prenesi manjkajoče povezave in omogoči izbor želenih pisav.",
+ "ext-uls-webfonts-settings-info-link": "Več o tem",
+ "ext-uls-webfonts-select-for": "Izberite pisavo za $1",
+ "ext-uls-webfonts-select-for-ui-info": "Pisava, uporabljena za uporabniški vmesnik",
+ "ext-uls-webfonts-select-for-content-info": "Pisava, uporabljena za vsebino",
+ "ext-uls-webfonts-system-font": "Pisava sistema",
+ "ext-uls-back-to-display-settings": "Nazaj na nastavitve prikaza",
+ "ext-uls-input-settings-title": "Nastavitve vnosa",
+ "ext-uls-input-settings-title-short": "Vnos",
+ "ext-uls-input-settings-desc": "Pišete v drugem jeziku?",
+ "ext-uls-input-settings-ime-settings": "Načini vnosa za $1",
+ "ext-uls-input-settings-ui-language": "Jezik za pisanje",
+ "ext-uls-back-to-input-settings": "Nazaj na nastavitve vnosa",
+ "ext-uls-ime-help": "Kako uporabljati",
+ "ext-uls-disable-input-method": "Uporabljajte za jezik prirejeno tipkovnico",
+ "ext-uls-input-settings-more-languages-tooltip": "Več jezikov",
+ "jquery-ime-other-languages": "Drugi jeziki",
+ "jquery-ime-disable-text": "Uporabljajte tipkovnico, prilagojeno za jezik",
+ "jquery-ime-help": "Pomoč",
+ "ext-uls-input-disable": "Onemogoči orodja za vnos",
+ "ext-uls-input-enable": "Omogoči orodja za vnos",
+ "ext-uls-input-disable-info": "Orodja za vnos so onemogočena.",
+ "ext-uls-input-settings-noime": "Za ta jezik ni na razpolago noben način vnosa.",
+ "ext-uls-input-disable-notification": "Orodja za vnos so onemogočena",
+ "ext-uls-input-disable-notification-undo": "Razveljavi",
+ "ext-uls-input-disable-notification-info-personal": "Orodja za vnos lahko prek jezikovnih nastavitev omogočite kadar koli.",
+ "ext-uls-input-disable-notification-info-interlanguage": "Orodja za vnos lahko prek jezikovnih nastavitev poleg seznama jezikov omogočite kadar koli.",
+ "ext-uls-language-settings-applying": "Uveljavljanje ...",
+ "ext-uls-compact-link-count": "{{PLURAL:$1|1=Še en jezik|Še $1 jezik|Še $1 jezika|Še $1 jeziki|Še $1 jezikov}}"
+}
diff --git a/MLEB/UniversalLanguageSelector/i18n/so.json b/MLEB/UniversalLanguageSelector/i18n/so.json
new file mode 100644
index 00000000..0604d29c
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/i18n/so.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Abshirdheere"
+ ]
+ },
+ "ext-uls-language-settings-preferences-link": "Dooqyo dheeraad ah e luqada"
+}
diff --git a/MLEB/UniversalLanguageSelector/i18n/sq.json b/MLEB/UniversalLanguageSelector/i18n/sq.json
new file mode 100644
index 00000000..4fc26b4e
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/i18n/sq.json
@@ -0,0 +1,48 @@
+{
+ "@metadata": {
+ "authors": [
+ "Olsi"
+ ]
+ },
+ "ext-uls-select-language-settings-icon-tooltip": "Cilësimet e gjuhës",
+ "ext-uls-undo-language-tooltip-text": "Gjuha u ndryshua nga $1",
+ "ext-uls-language-settings-preferences-link": "Më shumë cilësime për gjuhët",
+ "ext-uls-display-settings-title": "Cilësimet e shfaqjes",
+ "ext-uls-display-settings-language-tab": "Gjuha",
+ "ext-uls-display-settings-fonts-tab": "Shkrimet",
+ "ext-uls-display-settings-title-short": "Shfaqja",
+ "ext-uls-display-settings-desc": "Vendos gjuhën e përdorur për menutë dhe shkrimet.",
+ "ext-uls-language-settings-title": "Cilësimet e gjuhës",
+ "ext-uls-language-settings-apply": "Apliko cilësimet",
+ "ext-uls-language-settings-cancel": "Anulo",
+ "ext-uls-language-buttons-help": "Ndrysho gjuhën e menuve. Gjuha e përmbajtjes nuk do të pësojë ndryshim.",
+ "ext-uls-display-settings-font-settings": "Cilësimet e shkrimit",
+ "ext-uls-display-settings-ui-language": "Shfaq gjuhën",
+ "ext-uls-display-settings-anon-label": "Shfaq gjuhën:",
+ "ext-uls-display-settings-anon-same-as-content": "Shqip (njësoj si përmbajtja)",
+ "ext-uls-display-settings-anon-log-in-cta": "[[Special:UserLogin|Identifikohu]] për të zgjedhur një gjuhë tjetër për menutë.",
+ "ext-uls-webfonts-select-for": "Zgjidh shkrimin për $1",
+ "ext-uls-webfonts-select-for-ui-info": "Shkrimi i përdorur për ndërfaqen e përdoruesit",
+ "ext-uls-webfonts-select-for-content-info": "Shkrimi i përdorur për përmbajtjen",
+ "ext-uls-webfonts-system-font": "Sistemi i shkrimit",
+ "ext-uls-back-to-display-settings": "Prapa te cilësimet e shfaqjes",
+ "ext-uls-input-settings-title": "Cilësimet e të shkruarit",
+ "ext-uls-input-settings-title-short": "Shkrimi",
+ "ext-uls-input-settings-desc": "Dëshironi të shkruani në një gjuhë tjetër?",
+ "ext-uls-input-settings-ime-settings": "Metodat e të shkruarit për $1",
+ "ext-uls-input-settings-ui-language": "Gjuha e përdorur për të shkruar",
+ "ext-uls-back-to-input-settings": "Prapa te cilësimet e të shkruarit",
+ "ext-uls-disable-input-method": "Përdor tastierën vendase",
+ "ext-uls-input-settings-more-languages-tooltip": "Më shumë gjuhë",
+ "jquery-ime-other-languages": "Gjuhët e tjera",
+ "jquery-ime-disable-text": "Përdor tastierën vendase",
+ "jquery-ime-help": "Ndihmë",
+ "ext-uls-input-disable": "Çaktivizo mjetet e shkrimit",
+ "ext-uls-input-enable": "Aktivizo mjetet e shkrimit",
+ "ext-uls-input-disable-info": "Mjetet e shkrimit u çaktivizuan.",
+ "ext-uls-input-settings-noime": "Nuk ka metoda shkrimi për këtë gjuhë.",
+ "ext-uls-input-disable-notification": "Mjetet e shkrimit janë çaktivizuar",
+ "ext-uls-input-disable-notification-undo": "Zhbëj",
+ "ext-uls-input-disable-notification-info-personal": "Ju mund t'i aktivizoni mjetet e shkrimit në çdo kohë nga cilësimet e gjuhës.",
+ "ext-uls-input-disable-notification-info-interlanguage": "Ju mund t'i çaktivizoni mjetet e shkrimit në çdo kohë nga cilësimet e gjuhës ngjitur me listën e gjuhëve."
+}
diff --git a/MLEB/UniversalLanguageSelector/i18n/sr-ec.json b/MLEB/UniversalLanguageSelector/i18n/sr-ec.json
new file mode 100644
index 00000000..98b67d99
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/i18n/sr-ec.json
@@ -0,0 +1,59 @@
+{
+ "@metadata": {
+ "authors": [
+ "Milicevic01",
+ "Милан Јелисавчић"
+ ]
+ },
+ "uls-desc": "Даје кориснику неколико начина да изабере језик и да прилагоди поставке језика",
+ "uls-plang-title-languages": "Језици",
+ "ext-uls-select-language-settings-icon-tooltip": "Подешавања језика",
+ "ext-uls-undo-language-tooltip-text": "Језик промењен са $1",
+ "ext-uls-language-settings-preferences-link": "Додатне језичке поставке",
+ "uls-betafeature-label": "Сажете везе ка другим језицима",
+ "uls-betafeature-desc": "Прикажује краћу језичку листу само са вама битним језицима.",
+ "ext-uls-display-settings-title": "Подешавања приказа",
+ "ext-uls-display-settings-language-tab": "Језик",
+ "ext-uls-display-settings-fonts-tab": "Фонтови",
+ "ext-uls-display-settings-title-short": "Приказ",
+ "ext-uls-display-settings-desc": "Подесите језик који се ће се користити за меније и фонтове",
+ "ext-uls-language-settings-title": "Подешавања језика",
+ "ext-uls-language-settings-apply": "Примени",
+ "ext-uls-language-settings-cancel": "Откажи",
+ "ext-uls-language-buttons-help": "Промена језика менија. Језик садржаја неће бити промењен.",
+ "ext-uls-display-settings-font-settings": "Подешавања фонта",
+ "ext-uls-display-settings-ui-language": "Језик за приказ",
+ "ext-uls-display-settings-anon-label": "Језик приказa:",
+ "ext-uls-display-settings-anon-same-as-content": "$1 (исто као и садржај)",
+ "ext-uls-display-settings-anon-log-in-cta": "[[Special:UserLogin|Пријавите се]] како бисте изабрали други језик за меније.",
+ "ext-uls-webfonts-settings-title": "Преузми фонтове кад год је потребно",
+ "ext-uls-webfonts-settings-info": "Аутоматски преузима недостајуће фонтове и омогућава избор пожељнијих фонтова.",
+ "ext-uls-webfonts-settings-info-link": "Више информација",
+ "ext-uls-webfonts-select-for": "Изаберите фонт за $1",
+ "ext-uls-webfonts-select-for-ui-info": "Фонт коришћен за кориснички интерфејс",
+ "ext-uls-webfonts-select-for-content-info": "Фонт коришћен за садржај",
+ "ext-uls-webfonts-system-font": "Системски фонт",
+ "ext-uls-back-to-display-settings": "Назад на подешавање приказа",
+ "ext-uls-input-settings-title": "Подешавања уноса",
+ "ext-uls-input-settings-title-short": "Унос",
+ "ext-uls-input-settings-desc": "Пишете на другом језику?",
+ "ext-uls-input-settings-ime-settings": "Начин уноса за $1",
+ "ext-uls-input-settings-ui-language": "Језик коришћен за писање",
+ "ext-uls-back-to-input-settings": "Назад на подешавање уноса",
+ "ext-uls-ime-help": "Како се користи",
+ "ext-uls-disable-input-method": "Користи изворну тастатуру",
+ "ext-uls-input-settings-more-languages-tooltip": "Више језика",
+ "jquery-ime-other-languages": "Остали језици",
+ "jquery-ime-disable-text": "Користи изворну тастатуру",
+ "jquery-ime-help": "Помоћ",
+ "ext-uls-input-disable": "Онемогући алате за унос",
+ "ext-uls-input-enable": "Омогући алате за унос",
+ "ext-uls-input-disable-info": "Алати за унос су онемогућени",
+ "ext-uls-input-settings-noime": "Нема доступне методе уноса за овај језик.",
+ "ext-uls-input-disable-notification": "Алати за унос су онемогућени",
+ "ext-uls-input-disable-notification-undo": "Опозови",
+ "ext-uls-input-disable-notification-info-personal": "Можете омогућити алате за унос у било које време на подешавањима језика.",
+ "ext-uls-input-disable-notification-info-interlanguage": "Можете омогућити алатке за унос у било које време на подешавањима језика поред списка језика.",
+ "ext-uls-language-settings-applying": "Примењујем...",
+ "ext-uls-compact-link-count": "{{PLURAL:$1|Још један језик|Још $1 језика}}"
+}
diff --git a/MLEB/UniversalLanguageSelector/i18n/sr-el.json b/MLEB/UniversalLanguageSelector/i18n/sr-el.json
new file mode 100644
index 00000000..23e312bc
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/i18n/sr-el.json
@@ -0,0 +1,58 @@
+{
+ "@metadata": {
+ "authors": [
+ "Milicevic01"
+ ]
+ },
+ "uls-desc": "Daje korisniku nekoliko načina da izabere jezik i da prilagodi postavke jezika",
+ "uls-plang-title-languages": "Jezici",
+ "ext-uls-select-language-settings-icon-tooltip": "Podešavanja jezika",
+ "ext-uls-undo-language-tooltip-text": "Jezik promenjen sa $1",
+ "ext-uls-language-settings-preferences-link": "Dodatne jezičke postavke",
+ "uls-betafeature-label": "Sažete veze ka drugim jezicima",
+ "uls-betafeature-desc": "Prikažuje kraću jezičku listu samo sa vama bitnim jezicima.",
+ "ext-uls-display-settings-title": "Podešavanja prikaza",
+ "ext-uls-display-settings-language-tab": "Jezik",
+ "ext-uls-display-settings-fonts-tab": "Fontovi",
+ "ext-uls-display-settings-title-short": "Prikaz",
+ "ext-uls-display-settings-desc": "Podesite jezik koji se će se koristiti za menije i fontove",
+ "ext-uls-language-settings-title": "Podešavanja jezika",
+ "ext-uls-language-settings-apply": "Primeni",
+ "ext-uls-language-settings-cancel": "Otkaži",
+ "ext-uls-language-buttons-help": "Promena jezika menija. Jezik sadržaja neće biti promenjen.",
+ "ext-uls-display-settings-font-settings": "Podešavanja fonta",
+ "ext-uls-display-settings-ui-language": "Jezik za prikaz",
+ "ext-uls-display-settings-anon-label": "Jezik prikaza:",
+ "ext-uls-display-settings-anon-same-as-content": "$1 (isto kao i sadržaj)",
+ "ext-uls-display-settings-anon-log-in-cta": "[[Special:UserLogin|Prijavite se]] kako biste izabrali drugi jezik za menije.",
+ "ext-uls-webfonts-settings-title": "Preuzmi fontove kad god je potrebno",
+ "ext-uls-webfonts-settings-info": "Automatski preuzima nedostajuće fontove i omogućava izbor poželjnijih fontova.",
+ "ext-uls-webfonts-settings-info-link": "Više informacija",
+ "ext-uls-webfonts-select-for": "Izaberite font za $1",
+ "ext-uls-webfonts-select-for-ui-info": "Font korišćen za korisnički interfejs",
+ "ext-uls-webfonts-select-for-content-info": "Font korišćen za sadržaj",
+ "ext-uls-webfonts-system-font": "Sistemski font",
+ "ext-uls-back-to-display-settings": "Nazad na podešavanje prikaza",
+ "ext-uls-input-settings-title": "Podešavanja unosa",
+ "ext-uls-input-settings-title-short": "Unos",
+ "ext-uls-input-settings-desc": "Pišete na drugom jeziku?",
+ "ext-uls-input-settings-ime-settings": "Način unosa za $1",
+ "ext-uls-input-settings-ui-language": "Jezik korišćen za pisanje",
+ "ext-uls-back-to-input-settings": "Nazad na podešavanje unosa",
+ "ext-uls-ime-help": "Kako se koristi",
+ "ext-uls-disable-input-method": "Koristi izvornu tastaturu",
+ "ext-uls-input-settings-more-languages-tooltip": "Više jezika",
+ "jquery-ime-other-languages": "Ostali jezici",
+ "jquery-ime-disable-text": "Koristi izvornu tastaturu",
+ "jquery-ime-help": "Pomoć",
+ "ext-uls-input-disable": "Onemogući alate za unos",
+ "ext-uls-input-enable": "Omogući alate za unos",
+ "ext-uls-input-disable-info": "Alati za unos su onemogućeni",
+ "ext-uls-input-settings-noime": "Nema dostupne metoda unosa za ovaj jezik.",
+ "ext-uls-input-disable-notification": "Alati za unos su onemogućeni",
+ "ext-uls-input-disable-notification-undo": "Opozovi",
+ "ext-uls-input-disable-notification-info-personal": "Možete omogućiti alate za unos u bilo koje vreme na podešavanjima jezika.",
+ "ext-uls-input-disable-notification-info-interlanguage": "Možete omogućiti alatke za unos u bilo koje vreme na podešavanjima jezika pored spiska jezika.",
+ "ext-uls-language-settings-applying": "Primenjujem...",
+ "ext-uls-compact-link-count": "{{PLURAL:$1|Još jedan jezik|Još $1 jezika}}"
+}
diff --git a/MLEB/UniversalLanguageSelector/i18n/sv.json b/MLEB/UniversalLanguageSelector/i18n/sv.json
new file mode 100644
index 00000000..88ad0211
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/i18n/sv.json
@@ -0,0 +1,70 @@
+{
+ "@metadata": {
+ "authors": [
+ "Jopparn",
+ "WikiPhoenix",
+ "Lokal Profil"
+ ]
+ },
+ "uls-desc": "Ger användaren flera sätt att välja ett språk och justera språkinställningar",
+ "uls-plang-title-languages": "Språk",
+ "ext-uls-select-language-settings-icon-tooltip": "Språkinställningar",
+ "ext-uls-undo-language-tooltip-text": "Språk ändrades från $1",
+ "ext-uls-language-settings-preferences-link": "Fler språkinställningar",
+ "uls-betafeature-label": "Kompakta språklänkar",
+ "uls-betafeature-desc": "Visa en kortare version av språklistan, med bara de språk som är mer relevanta för dig.",
+ "ext-uls-display-settings-title": "Visningsinställningar",
+ "ext-uls-display-settings-language-tab": "Språk",
+ "ext-uls-display-settings-fonts-tab": "Typsnitt",
+ "ext-uls-display-settings-title-short": "Visning",
+ "ext-uls-display-settings-desc": "Ange språk för menyer och teckensnitt.",
+ "ext-uls-language-settings-title": "Språkinställningar",
+ "ext-uls-language-settings-apply": "Tillämpa inställningar",
+ "ext-uls-language-settings-cancel": "Avbryt",
+ "ext-uls-language-buttons-help": "Ändra språk i menyer. Innehållsspråk kommer inte att påverkas.",
+ "ext-uls-display-settings-font-settings": "Teckensnittsinställningar",
+ "ext-uls-display-settings-ui-language": "Visningsspråk",
+ "ext-uls-display-settings-anon-label": "Visningsspråk:",
+ "ext-uls-display-settings-anon-same-as-content": "$1 (samma som innehållet)",
+ "ext-uls-display-settings-anon-log-in-cta": "[[Special:UserLogin|Logga in]] för att välja ett annat språk för menyer.",
+ "ext-uls-webfonts-settings-title": "Ladda ned teckensnitt när det behövs",
+ "ext-uls-webfonts-settings-info": "Ladda ner saknade teckensnitt automatiskt och tillåt val av föredragna teckensnitt.",
+ "ext-uls-webfonts-settings-info-link": "Mer information",
+ "ext-uls-webfonts-select-for": "Välj teckensnitt för $1",
+ "ext-uls-webfonts-select-for-ui-info": "Teckensnitt för användargränssnittet",
+ "ext-uls-webfonts-select-for-content-info": "Teckensnittet för innehåll",
+ "ext-uls-webfonts-system-font": "Systemteckensnitt",
+ "ext-uls-back-to-display-settings": "Tillbaka till visningsinställningar",
+ "ext-uls-input-settings-title": "Inställningar för indata",
+ "ext-uls-input-settings-title-short": "Indata",
+ "ext-uls-input-settings-desc": "Skriver du på ett annat språk?",
+ "ext-uls-input-settings-ime-settings": "Metoder för indata för $1",
+ "ext-uls-input-settings-ui-language": "Språk som används för att skriva",
+ "ext-uls-back-to-input-settings": "Tillbaka till inställningar för indata",
+ "ext-uls-ime-help": "Hur man använder",
+ "ext-uls-disable-input-method": "Använd standardtangentbord",
+ "ext-uls-input-settings-more-languages-tooltip": "Fler språk",
+ "jquery-ime-other-languages": "Andra språk:",
+ "jquery-ime-disable-text": "Använd standardtangentbord",
+ "jquery-ime-help": "Hjälp",
+ "ext-uls-input-disable": "Inaktivera verktyg för indata",
+ "ext-uls-input-enable": "Aktivera indataverktyg",
+ "ext-uls-input-disable-info": "Verktyg för indata är inaktiverade.",
+ "ext-uls-input-settings-noime": "Inga metoder för indata finns tillgängliga för detta språk.",
+ "ext-uls-input-disable-notification": "Verktyg för indata har inaktiverats.",
+ "ext-uls-input-disable-notification-undo": "Ångra",
+ "ext-uls-input-disable-notification-info-personal": "Du kan aktivera verktygen för indata när som helst från språkinställningarna.",
+ "ext-uls-input-disable-notification-info-interlanguage": "Du kan aktivera verktygen för indata när som helst från språkinställningarna bredvid språklistan.",
+ "ext-uls-language-settings-applying": "Tillämpar...",
+ "ext-uls-compact-link-count": "{{PLURAL:$1|Ett språk till|$1 språk till}}",
+ "apihelp-languagesearch-description": "Sök efter språknamn i valfritt skriftsystem.",
+ "apihelp-languagesearch-param-search": "Söksträng.",
+ "apihelp-languagesearch-param-typos": "Antalet felstavningar som tillåts i söksträngen.",
+ "apihelp-languagesearch-example-1": "Sök efter \"Te\"",
+ "apihelp-languagesearch-example-2": "Sök efter \"ഫി\"",
+ "apihelp-languagesearch-example-3": "Sök efter \"ഫി\", tillåter ett stavfel",
+ "apihelp-ulslocalization-description": "Få lokalanpassningen av ULS på ett visst språk.",
+ "apihelp-ulslocalization-param-language": "Språksträng.",
+ "apihelp-ulslocalization-example-1": "Få lokalanpassning för Tamil",
+ "apihelp-ulslocalization-example-2": "Få lokalanpassning för Hindi"
+}
diff --git a/MLEB/UniversalLanguageSelector/i18n/sw.json b/MLEB/UniversalLanguageSelector/i18n/sw.json
new file mode 100644
index 00000000..490d2aaf
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/i18n/sw.json
@@ -0,0 +1,52 @@
+{
+ "@metadata": {
+ "authors": [
+ "Lloffiwr",
+ "Muddyb Blast Producer"
+ ]
+ },
+ "ext-uls-select-language-settings-icon-tooltip": "Mipangilio ya lugha",
+ "ext-uls-undo-language-tooltip-text": "Lugha imebadilishwa kutoka $1",
+ "ext-uls-language-settings-preferences-link": "Mipangilio mingine ya lugha",
+ "ext-uls-display-settings-title": "Mipangilio ya kusano",
+ "ext-uls-display-settings-language-tab": "Lugha",
+ "ext-uls-display-settings-fonts-tab": "Fonti",
+ "ext-uls-display-settings-title-short": "Kusano",
+ "ext-uls-display-settings-desc": "Weka lugha inayotumika kwa ajili ya menyu na herufi.",
+ "ext-uls-language-settings-title": "Mipangilio ya lugha",
+ "ext-uls-language-settings-apply": "Weka mipangilio",
+ "ext-uls-language-settings-cancel": "Ghairi",
+ "ext-uls-language-buttons-help": "Badilisha lugha ya kusano. Lugha ya yaliyomo haitabadilika.",
+ "ext-uls-display-settings-font-settings": "Mipangilio ya maandishi",
+ "ext-uls-display-settings-ui-language": "Lugha ya kusano",
+ "ext-uls-display-settings-anon-label": "Lugha ya kusano:",
+ "ext-uls-display-settings-anon-same-as-content": "Kiswahili (ndiye pia lugha ya yaliyomo)",
+ "ext-uls-display-settings-anon-log-in-cta": "[[Special:UserLogin|Sajili]] ili kuchagua lugha tofauti kwa ajili ya kusano.",
+ "ext-uls-webfonts-settings-title": "Pakua mtindo wa maandishi unapohitajika",
+ "ext-uls-webfonts-settings-info": "Mitindo ya herufi ya tarakalishi itapakuzwa ili kuonesha maandishi maalumu.",
+ "ext-uls-webfonts-settings-info-link": "Maelezo zaidi",
+ "ext-uls-webfonts-select-for": "Chagua mtindo wa herufi kwa ajili ya $1",
+ "ext-uls-webfonts-select-for-ui-info": "Maandishi yatumikayo kwa ajili ya kusano za mtumiaji",
+ "ext-uls-webfonts-select-for-content-info": "Mtindo wa herufi kwa ajili ya yaliyomo",
+ "ext-uls-webfonts-system-font": "Fonti ya chaguo-msingi",
+ "ext-uls-back-to-display-settings": "Rudi kwa mipangilio ya kusano",
+ "ext-uls-input-settings-title": "Mipangilio ya kuingiza",
+ "ext-uls-input-settings-title-short": "Ingizo",
+ "ext-uls-input-settings-desc": "Unaandika kwa lugha tofauti?",
+ "ext-uls-input-settings-ime-settings": "Njia za kuingiza kwa ajili ya $1",
+ "ext-uls-input-settings-ui-language": "Lugha inayotumiwa kwa ajili ya kuandikia",
+ "ext-uls-back-to-input-settings": "Rudi kwa njia za kuingiza",
+ "ext-uls-disable-input-method": "Tumia baobonye ya kimsingi cha mashine",
+ "ext-uls-input-settings-more-languages-tooltip": "Lugha nyingine zaidi",
+ "jquery-ime-other-languages": "Lugha zingine",
+ "jquery-ime-disable-text": "Tumia baobonye ya kimsingi cha mashine",
+ "jquery-ime-help": "Msaada",
+ "ext-uls-input-disable": "Lemaza zana za kuingiza",
+ "ext-uls-input-enable": "Wezesha zana za kuingiza",
+ "ext-uls-input-disable-info": "Zana za kuingiza zimelemazwa.",
+ "ext-uls-input-settings-noime": "Zana za kuingiza hazipatikani kwa ajili ya lugha hii.",
+ "ext-uls-input-disable-notification": "Zana za kuingiza zimelemazwa.",
+ "ext-uls-input-disable-notification-undo": "Tengua",
+ "ext-uls-input-disable-notification-info-personal": "Unaweza kuwezesha zana za kuingiza wakati wowote kwa kupitia mipangilio ya lugha.",
+ "ext-uls-input-disable-notification-info-interlanguage": "Unaweza kuwezesha zana za kuingiza wakati wowote kwa kupitia mipangilio ya lugha iliyopo kando ya orodha ya lugha."
+}
diff --git a/MLEB/UniversalLanguageSelector/i18n/ta.json b/MLEB/UniversalLanguageSelector/i18n/ta.json
new file mode 100644
index 00000000..2fb99d23
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/i18n/ta.json
@@ -0,0 +1,50 @@
+{
+ "@metadata": {
+ "authors": [
+ "Karthi.dr",
+ "Logicwiki",
+ "Sank",
+ "Santhosh.thottingal"
+ ]
+ },
+ "uls-desc": "பயனருக்கு மொழியை மாற்றவும் மொழி அமைப்புகளை மாற்றவும் செய்ய பல வழிகளை தருகின்றது",
+ "ext-uls-select-language-settings-icon-tooltip": "மொழி அமைப்புகள்",
+ "ext-uls-undo-language-tooltip-text": "மொழி $1 லிருந்து மாற்றப்பட்டது",
+ "ext-uls-language-settings-preferences-link": "மேலதிக மொழி அமைப்புகள்",
+ "ext-uls-display-settings-title": "வெளியீட்டு அமைப்புகள்",
+ "ext-uls-display-settings-language-tab": "மொழி",
+ "ext-uls-display-settings-fonts-tab": "எழுத்துருக்கள்",
+ "ext-uls-display-settings-title-short": "வெளியீடு",
+ "ext-uls-display-settings-desc": "இடைமுகப்பு மற்றும் எழுத்துருக்களுக்கான மொழியை தேர்வுசெய்க",
+ "ext-uls-language-settings-title": "மொழி அமைப்புகள்",
+ "ext-uls-language-settings-apply": "அமைப்புகளை பயன்படுத்து",
+ "ext-uls-language-settings-cancel": "விட்டுவிடு",
+ "ext-uls-display-settings-font-settings": "எழுத்துரு அமைப்புகள்",
+ "ext-uls-display-settings-ui-language": "இடைமுகப்பிற்கான மொழி",
+ "ext-uls-webfonts-settings-title": "தேவையெனில் எழுத்துருவை பதிவிறக்கு",
+ "ext-uls-webfonts-settings-info": "சிறப்பான எழுத்துவடிவங்கள் கொண்ட உரையை காண்பிக்க இணைய எழுத்துருக்கள் பதிவிறக்கப் படும்",
+ "ext-uls-webfonts-settings-info-link": "மேலதிக தகவல்கள்",
+ "ext-uls-webfonts-select-for": "$1 க்கு எழுத்துருவை தேர்வு செய்க",
+ "ext-uls-webfonts-select-for-ui-info": "இடைமுகப்பு பயன்படுத்தும் எழுத்துரு",
+ "ext-uls-webfonts-select-for-content-info": "உள்ளடக்கத்திற்கான எழுத்துரு",
+ "ext-uls-back-to-display-settings": "வெளியீட்டு அமைப்புகளுக்கு பின்செல்",
+ "ext-uls-input-settings-title": "உள்ளீட்டு அமைப்புகள்",
+ "ext-uls-input-settings-title-short": "உள்ளீடு",
+ "ext-uls-input-settings-desc": "வேற்று மொழியில் உள்ளிட வேண்டுமா?",
+ "ext-uls-input-settings-ime-settings": "$1 க்கான தட்டச்சு முறைகள்",
+ "ext-uls-input-settings-ui-language": "எழுதுவதற்கான மொழி",
+ "ext-uls-back-to-input-settings": "உள்ளீட்டு அமைப்புகளுக்கு பின்செல்",
+ "ext-uls-disable-input-method": "சொந்த விசைப்பலகையை பயன்படுத்து",
+ "ext-uls-input-settings-more-languages-tooltip": "மேலதிக மொழிகள்",
+ "jquery-ime-other-languages": "பிற மொழிகள்",
+ "jquery-ime-disable-text": "சொந்த விசைப்பலகையை பயன்படுத்து",
+ "jquery-ime-help": "உதவி",
+ "ext-uls-input-disable": "உள்ளீட்டுக் கருவியை முடக்கு",
+ "ext-uls-input-enable": "தட்டச்சுக் கருவியை செயலாக்கு",
+ "ext-uls-input-disable-info": "தட்டச்சுக் கருவி முடக்கப்பட்டுள்ளது.",
+ "ext-uls-input-settings-noime": "எந்தவொரு உள்ளீட்டுக்கருவியும் இம்மொழிக்கு கிடைக்கப்பெறவில்லை",
+ "ext-uls-input-disable-notification": "உள்ளீட்டுக் கருவிகள் முடக்கப்பட்டுள்ளன",
+ "ext-uls-input-disable-notification-undo": "செயல்தவிர்",
+ "ext-uls-input-disable-notification-info-personal": "உள்ளீட்டுக் கருவிகளை எந்நேரமும் மொழி அமைப்புக்களில் செயலாக்கலாம்.",
+ "ext-uls-input-disable-notification-info-interlanguage": "உள்ளீட்டுக் கருவிகளை எந்நேரத்திலும் மொழிப்பட்டியலிற்கு அடுத்ததாக உள்ள மொழி அமைப்புக்களில் செயலாக்கலாம்."
+}
diff --git a/MLEB/UniversalLanguageSelector/i18n/te.json b/MLEB/UniversalLanguageSelector/i18n/te.json
new file mode 100644
index 00000000..444402c2
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/i18n/te.json
@@ -0,0 +1,40 @@
+{
+ "@metadata": {
+ "authors": [
+ "Veeven",
+ "Arjunaraoc",
+ "రహ్మానుద్దీన్"
+ ]
+ },
+ "uls-plang-title-languages": "భాషలు",
+ "ext-uls-select-language-settings-icon-tooltip": "భాషా అమరికలు",
+ "ext-uls-undo-language-tooltip-text": "భాషను $1 నుండి మార్చారు",
+ "ext-uls-language-settings-preferences-link": "మరిన్ని భాషా అమరికలు",
+ "ext-uls-display-settings-title": "ప్రదర్శన అమరికలు",
+ "ext-uls-display-settings-language-tab": "భాష",
+ "ext-uls-display-settings-fonts-tab": "ఖతులు",
+ "ext-uls-display-settings-title-short": "దర్శనం",
+ "ext-uls-display-settings-desc": "మెనూలు మరియు ఖతుల కోసం వాడే భాషను ఎంచుకోండి.",
+ "ext-uls-language-settings-title": "భాషా అమరికలు",
+ "ext-uls-language-settings-apply": "అమరికలను వర్తింపజేయి",
+ "ext-uls-language-settings-cancel": "రద్దుచేయి",
+ "ext-uls-language-buttons-help": "మెనూల భాషను మార్చండి. విషయపు భాష మారదు.",
+ "ext-uls-display-settings-font-settings": "ఖతి అమరికలు",
+ "ext-uls-display-settings-ui-language": "ప్రదర్శనా భాష",
+ "ext-uls-display-settings-anon-label": "ప్రదర్శనా భాష:",
+ "ext-uls-display-settings-anon-same-as-content": "$1 (విషయపు భాషే)",
+ "ext-uls-webfonts-select-for-ui-info": "వాడుకరి ముఖాంతరానికి వాడాల్సిన ఖతి",
+ "ext-uls-webfonts-select-for-content-info": "విషయానికి వాడాల్సిన ఖతి",
+ "ext-uls-back-to-display-settings": "తిరిగి ప్రదర్శన అమరికలకు",
+ "ext-uls-input-settings-title": "ఇన్‌పుట్ అమరికలు",
+ "ext-uls-input-settings-title-short": "ఇన్‌పుట్",
+ "ext-uls-input-settings-desc": "మరో భాషలో వ్రాస్తున్నారా?",
+ "ext-uls-input-settings-ime-settings": "$1 ఇన్‌పుట్ పద్ధతులు",
+ "ext-uls-input-settings-ui-language": "వ్రాయడానికి వాడే భాష",
+ "ext-uls-back-to-input-settings": "తిరిగి ఇన్‌పుట్ అమరికలకు",
+ "ext-uls-ime-help": "ఎలా ఉపయోగించాలి",
+ "ext-uls-input-settings-more-languages-tooltip": "మరిన్ని భాషలు",
+ "jquery-ime-other-languages": "ఇతర భాషలు",
+ "jquery-ime-help": "సహాయం",
+ "ext-uls-input-disable-notification-undo": "రద్దుచెయ్యి"
+}
diff --git a/MLEB/UniversalLanguageSelector/i18n/tl.json b/MLEB/UniversalLanguageSelector/i18n/tl.json
new file mode 100644
index 00000000..f72ca3e8
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/i18n/tl.json
@@ -0,0 +1,26 @@
+{
+ "@metadata": {
+ "authors": [
+ "Sky Harbor",
+ "AnakngAraw"
+ ]
+ },
+ "uls-desc": "Nagbibigay sa tagagamit ng ilang mga paraan upang makapili ng isang wika at upang mabago ang mga katakdaan ng wika",
+ "ext-uls-select-language-settings-icon-tooltip": "Mga kagustuhan sa wika",
+ "ext-uls-undo-language-tooltip-text": "Ipinalit ang wika mula sa $1",
+ "ext-uls-display-settings-language-tab": "Wika",
+ "ext-uls-display-settings-fonts-tab": "Estilo ng titik",
+ "ext-uls-display-settings-desc": "Itakda ang wikang ginagamit para sa mga menu at estilo ng titik.",
+ "ext-uls-language-settings-apply": "Ilapat ang mga kagustuhan",
+ "ext-uls-language-settings-cancel": "Huwag ituloy",
+ "ext-uls-language-buttons-help": "Palitan ang wika ng mga menu. Hindi maaapektuhan ang wika ng nilalaman.",
+ "ext-uls-display-settings-anon-same-as-content": "$1 (pareho ng nilalaman)",
+ "ext-uls-display-settings-anon-log-in-cta": "[[Special:UserLogin|Lumagda]] upang mamili ng ibang wika para sa mga menu.",
+ "ext-uls-webfonts-select-for": "Mamili ng estilo ng titik para sa $1",
+ "ext-uls-webfonts-select-for-content-info": "Estilo ng titik na ginagamit para sa nilalaman",
+ "ext-uls-webfonts-system-font": "Estilo ng titik na gamit ng sistema",
+ "ext-uls-input-settings-desc": "Nais mong magsulat gamit ng ibang wika?",
+ "ext-uls-disable-input-method": "Gamitin ang katutubong tipaan",
+ "jquery-ime-disable-text": "Gamitin ang katutubong tipaan",
+ "jquery-ime-help": "Tulong"
+}
diff --git a/MLEB/UniversalLanguageSelector/i18n/tr.json b/MLEB/UniversalLanguageSelector/i18n/tr.json
new file mode 100644
index 00000000..1010097d
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/i18n/tr.json
@@ -0,0 +1,61 @@
+{
+ "@metadata": {
+ "authors": [
+ "Emperyan",
+ "Incelemeelemani",
+ "Meelo",
+ "Rapsar"
+ ]
+ },
+ "uls-desc": "Kullanıcının bir dil seçmesi ve dil ayarlarını değiştirmesi için seçenekler sağlar.",
+ "uls-plang-title-languages": "Diller",
+ "ext-uls-select-language-settings-icon-tooltip": "Dil ayarları",
+ "ext-uls-undo-language-tooltip-text": "Dil, $1 dilinden değiştirildi.",
+ "ext-uls-language-settings-preferences-link": "Daha fazla dil ayarları",
+ "uls-betafeature-label": "Daraltılmış dil bağlantıları",
+ "uls-betafeature-desc": "Yalnızca sizinle daha alakalı olan dillerin yer aldığı, daha kısa bir dil listesi görüntüler.",
+ "ext-uls-display-settings-title": "Ekran ayarları",
+ "ext-uls-display-settings-language-tab": "Dil",
+ "ext-uls-display-settings-fonts-tab": "Yazı tipleri",
+ "ext-uls-display-settings-title-short": "Görünüm",
+ "ext-uls-display-settings-desc": "Menüler ve yazı tipleri için kullanılan dili ayarlayın.",
+ "ext-uls-language-settings-title": "Dil ayarları",
+ "ext-uls-language-settings-apply": "Ayarları uygula",
+ "ext-uls-language-settings-cancel": "İptal",
+ "ext-uls-language-buttons-help": "Menülerin dilini değiştirin. Bundan içerik dili etkilenmez.",
+ "ext-uls-display-settings-font-settings": "Yazı tipi ayarları",
+ "ext-uls-display-settings-ui-language": "Görüntüleme dili",
+ "ext-uls-display-settings-anon-label": "Görüntüleme dili:",
+ "ext-uls-display-settings-anon-same-as-content": "$1 (içerik ile aynı)",
+ "ext-uls-display-settings-anon-log-in-cta": "Menüler için farklı bir dil seçmek için [[Special:UserLogin|oturum açın]].",
+ "ext-uls-webfonts-settings-title": "Gerektiğinde yazı tipi indir",
+ "ext-uls-webfonts-settings-info": "Otomatik olarak eksik yazı tiplerini indir ve tercih edilen yazı tiplerinin seçimine izin ver.",
+ "ext-uls-webfonts-settings-info-link": "Daha fazla bilgi",
+ "ext-uls-webfonts-select-for": "$1 için yazı tipi seçin",
+ "ext-uls-webfonts-select-for-ui-info": "Arayüz için kullanılan yazı tipi",
+ "ext-uls-webfonts-select-for-content-info": "İçerik için kullanılan yazı tipi",
+ "ext-uls-webfonts-system-font": "Sistem yazı tipi",
+ "ext-uls-back-to-display-settings": "Ayarları görüntülemek için geri dön",
+ "ext-uls-input-settings-title": "Giriş ayarları",
+ "ext-uls-input-settings-title-short": "Giriş",
+ "ext-uls-input-settings-desc": "Farklı dilde mi yazıyorsun?",
+ "ext-uls-input-settings-ime-settings": "$1 için giriş yöntemleri",
+ "ext-uls-input-settings-ui-language": "Yazmak için kullanılan dil",
+ "ext-uls-back-to-input-settings": "Giriş ayarlarını görüntülemek için geri dön",
+ "ext-uls-ime-help": "Nasıl kullanılır?",
+ "ext-uls-disable-input-method": "Geçerli klavyeyi kullan",
+ "ext-uls-input-settings-more-languages-tooltip": "Daha fazla dil",
+ "jquery-ime-other-languages": "Diğer diller",
+ "jquery-ime-disable-text": "Geçerli klavyeyi kullan",
+ "jquery-ime-help": "Yardım",
+ "ext-uls-input-disable": "Giriş araçlarını devre dışı bırak",
+ "ext-uls-input-enable": "Giriş araçlarını etkinleştir",
+ "ext-uls-input-disable-info": "Giriş araçları devre dışı.",
+ "ext-uls-input-settings-noime": "Bu dil için giriş yöntemleri mevcut değil.",
+ "ext-uls-input-disable-notification": "Giriş araçları devre dışı bırakıldı",
+ "ext-uls-input-disable-notification-undo": "Geri al",
+ "ext-uls-input-disable-notification-info-personal": "Dil ayarlarınızı istediğiniz zaman giriş araçlarından etkinleştirebilirsiniz.",
+ "ext-uls-input-disable-notification-info-interlanguage": "Dil ayarlarını dil listesinin yanında bulunan giriş araçlarından etkinleştirebilirsiniz.",
+ "ext-uls-language-settings-applying": "Uygulanıyor...",
+ "ext-uls-compact-link-count": "{{PLURAL:$1|Bir dil daha|$1 dilden fazla}}"
+}
diff --git a/MLEB/UniversalLanguageSelector/i18n/tt-cyrl.json b/MLEB/UniversalLanguageSelector/i18n/tt-cyrl.json
new file mode 100644
index 00000000..1577791c
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/i18n/tt-cyrl.json
@@ -0,0 +1,44 @@
+{
+ "@metadata": {
+ "authors": [
+ "Ильнар"
+ ]
+ },
+ "ext-uls-select-language-settings-icon-tooltip": "Тел көйләнмәләре",
+ "ext-uls-undo-language-tooltip-text": "Алдагы тел: $1",
+ "ext-uls-language-settings-preferences-link": "Өстәмә тел көйләнмәләре",
+ "ext-uls-display-settings-title": "Күрсәтү көйләнмәләре",
+ "ext-uls-display-settings-language-tab": "Тел",
+ "ext-uls-display-settings-fonts-tab": "Шрифтлар",
+ "ext-uls-display-settings-title-short": "Күрсәтү",
+ "ext-uls-display-settings-desc": "Меню һәм шрифт теле",
+ "ext-uls-language-settings-title": "Тел көйләнмәләре",
+ "ext-uls-language-settings-apply": "Көйләнмәләрне саклау",
+ "ext-uls-language-settings-cancel": "Баш тарту",
+ "ext-uls-language-buttons-help": "Меню телен үзгәртү. Эчтәлекнең теле үзгәртелмәячәк.",
+ "ext-uls-display-settings-font-settings": "Шрифт көйләнмәләре",
+ "ext-uls-display-settings-ui-language": "Сайланган тел",
+ "ext-uls-display-settings-anon-label": "Сайланган тел:",
+ "ext-uls-display-settings-anon-same-as-content": "татарча (эчтәлектәге кебек)",
+ "ext-uls-display-settings-anon-log-in-cta": "Меню өчен башка телне сайлау өчен, [[Special:UserLogin|керегез]].",
+ "ext-uls-webfonts-select-for": "$1 өчен шрифт сайлау",
+ "ext-uls-webfonts-select-for-ui-info": "Кулланучының интерфейс шрифты",
+ "ext-uls-webfonts-select-for-content-info": "Текст өчен шрифт",
+ "ext-uls-webfonts-system-font": "Система шрифты",
+ "ext-uls-back-to-display-settings": "Күрсәтү көйләнмәләренә кайту",
+ "ext-uls-input-settings-title": "Кертү көйләнмәләре",
+ "ext-uls-input-settings-title-short": "Кертү",
+ "ext-uls-input-settings-desc": "Башка телдә язасызмы?",
+ "ext-uls-input-settings-ime-settings": "$1 өчен көймәләр",
+ "ext-uls-input-settings-ui-language": "Хат теле",
+ "ext-uls-back-to-input-settings": "Кертү көйләнмәләренә кайту",
+ "ext-uls-disable-input-method": "Төп көймәләрне куллану",
+ "ext-uls-input-settings-more-languages-tooltip": "Башка телләр",
+ "jquery-ime-other-languages": "Башка телләрдә",
+ "jquery-ime-disable-text": "Төп көймәләрне куллану",
+ "jquery-ime-help": "Ярдәм",
+ "ext-uls-input-settings-noime": "Әлеге тел өчен күчерелү куелмаган.",
+ "ext-uls-input-disable-notification": "Кертү җиһазлары ябылды",
+ "ext-uls-input-disable-notification-undo": "Кире кагу",
+ "ext-uls-input-disable-notification-info-personal": "Кертү җиһазларын тел көйләнмәләреннән кабызырга мөмкин."
+}
diff --git a/MLEB/UniversalLanguageSelector/i18n/uk.json b/MLEB/UniversalLanguageSelector/i18n/uk.json
new file mode 100644
index 00000000..e93df4f5
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/i18n/uk.json
@@ -0,0 +1,63 @@
+{
+ "@metadata": {
+ "authors": [
+ "Andriykopanytsia",
+ "Base",
+ "RLuts",
+ "Ата",
+ "Юрій Булка",
+ "SteveR"
+ ]
+ },
+ "uls-desc": "Надає користувачу декілька способів вибрати мову та налаштувати мовні параметри.",
+ "uls-plang-title-languages": "Мови",
+ "ext-uls-select-language-settings-icon-tooltip": "Налаштування мови",
+ "ext-uls-undo-language-tooltip-text": "Мову змінено з $1",
+ "ext-uls-language-settings-preferences-link": "Додаткові налаштування мови",
+ "uls-betafeature-label": "Компактні мовні посилання",
+ "uls-betafeature-desc": "Переглянути скорочену версію списку мов лише з тими мовами, які найпридатніші для вас.",
+ "ext-uls-display-settings-title": "Налаштування відображення",
+ "ext-uls-display-settings-language-tab": "Мова",
+ "ext-uls-display-settings-fonts-tab": "Шрифти",
+ "ext-uls-display-settings-title-short": "Відображення",
+ "ext-uls-display-settings-desc": "Встановити мову меню та шрифтів.",
+ "ext-uls-language-settings-title": "Налаштування мови",
+ "ext-uls-language-settings-apply": "Застосувати налаштування",
+ "ext-uls-language-settings-cancel": "Скасувати",
+ "ext-uls-language-buttons-help": "Змінити мову меню. Мова вмісту не зміниться.",
+ "ext-uls-display-settings-font-settings": "Налаштування шрифту",
+ "ext-uls-display-settings-ui-language": "Мова для відображення",
+ "ext-uls-display-settings-anon-label": "Мова відтворення:",
+ "ext-uls-display-settings-anon-same-as-content": "$1 (так само, як і вміст)",
+ "ext-uls-display-settings-anon-log-in-cta": "[[Special:UserLogin|Увійдіть в систему]], щоб вибрати іншу мову меню.",
+ "ext-uls-webfonts-settings-title": "Завантажити шрифти за необхідності",
+ "ext-uls-webfonts-settings-info": "Автоматично завантажувати відсутні шрифти і дозволити вибір бажаних шрифтів.",
+ "ext-uls-webfonts-settings-info-link": "Додаткова інформація",
+ "ext-uls-webfonts-select-for": "Оберіть шрифт для мови $1",
+ "ext-uls-webfonts-select-for-ui-info": "Шрифт для інтерфейсу користувача",
+ "ext-uls-webfonts-select-for-content-info": "Шрифт для тексту",
+ "ext-uls-webfonts-system-font": "Системний шрифт",
+ "ext-uls-back-to-display-settings": "Назад до налаштувань відображення",
+ "ext-uls-input-settings-title": "Налаштування вводу",
+ "ext-uls-input-settings-title-short": "Ввід",
+ "ext-uls-input-settings-desc": "Пишете іншою мовою?",
+ "ext-uls-input-settings-ime-settings": "Метод вводу для мови $1",
+ "ext-uls-input-settings-ui-language": "Мова вводу",
+ "ext-uls-back-to-input-settings": "Назад до налаштувань вводу",
+ "ext-uls-ime-help": "Як використовувати",
+ "ext-uls-disable-input-method": "Використовувати рідну клавіатуру",
+ "ext-uls-input-settings-more-languages-tooltip": "Більше мов",
+ "jquery-ime-other-languages": "Інші мови",
+ "jquery-ime-disable-text": "Використовувати рідну клавіатуру",
+ "jquery-ime-help": "Довідка",
+ "ext-uls-input-disable": "Вимкнути інструмент вводу",
+ "ext-uls-input-enable": "Увімкнути інструмент вводу",
+ "ext-uls-input-disable-info": "Інструмент вводу вимкнено.",
+ "ext-uls-input-settings-noime": "Для цієї мови немає методів вводу.",
+ "ext-uls-input-disable-notification": "Знаряддя вводу вимкнено",
+ "ext-uls-input-disable-notification-undo": "Скасувати",
+ "ext-uls-input-disable-notification-info-personal": "Ви можете увімкнути знаряддя вводу в будь-який момент через налаштування мови.",
+ "ext-uls-input-disable-notification-info-interlanguage": "Ви можете увімкнути знаряддя вводу в будь-який момент через налаштування мови біля переліку мов.",
+ "ext-uls-language-settings-applying": "Застосування...",
+ "ext-uls-compact-link-count": "Ще {{PLURAL:$1|одна мова|$1 мови|$1 мов}}"
+}
diff --git a/MLEB/UniversalLanguageSelector/i18n/ur.json b/MLEB/UniversalLanguageSelector/i18n/ur.json
new file mode 100644
index 00000000..9be6cd2e
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/i18n/ur.json
@@ -0,0 +1,14 @@
+{
+ "@metadata": {
+ "authors": [
+ "Noor2020",
+ "Muhammad Shuaib"
+ ]
+ },
+ "uls-desc": "صارف کو زبان کے انتخاب اور زبان کی ترتیبات کی تنظیم کے لیے متعدد راہیں فراہم کرتا ہے",
+ "uls-plang-title-languages": "زبانیں",
+ "ext-uls-select-language-settings-icon-tooltip": "زبان کی ترتیبات",
+ "ext-uls-undo-language-tooltip-text": "$1 سے زبان تبدیل ہوگئی",
+ "ext-uls-language-settings-preferences-link": "مزید ترتیبات زبان",
+ "ext-uls-language-buttons-help": "مینیو کی زبان تبدیل کریں ۔ مواد کی بولی اثرانداز نہیں ہوں گے ۔"
+}
diff --git a/MLEB/UniversalLanguageSelector/i18n/uz.json b/MLEB/UniversalLanguageSelector/i18n/uz.json
new file mode 100644
index 00000000..afab6979
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/i18n/uz.json
@@ -0,0 +1,19 @@
+{
+ "@metadata": {
+ "authors": [
+ "Akmalzhon",
+ "CoderSI",
+ "Sociologist"
+ ]
+ },
+ "uls-plang-title-languages": "Tillar",
+ "ext-uls-display-settings-title": "Koʻrsatish moslamalari",
+ "ext-uls-display-settings-title-short": "Koʻrsatish",
+ "ext-uls-language-settings-title": "Til moslamalari",
+ "ext-uls-language-settings-cancel": "Bekor qilish",
+ "ext-uls-display-settings-ui-language": "Displey tili",
+ "ext-uls-display-settings-anon-label": "Displey tili",
+ "jquery-ime-other-languages": "Boshqa tillarda",
+ "jquery-ime-help": "Yordam",
+ "ext-uls-compact-link-count": "Yana {{PLURAL:$1|bitta tilda|$1 ta tillarda}}"
+}
diff --git a/MLEB/UniversalLanguageSelector/i18n/vec.json b/MLEB/UniversalLanguageSelector/i18n/vec.json
new file mode 100644
index 00000000..a11a8cb9
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/i18n/vec.json
@@ -0,0 +1,55 @@
+{
+ "@metadata": {
+ "authors": [
+ "GatoSelvadego"
+ ]
+ },
+ "uls-desc": "Fornise ai utenti difarenti modi de sełesionar na lengua e de sistemar łe inpostasion de ła lengua",
+ "uls-plang-title-languages": "Lengue",
+ "ext-uls-select-language-settings-icon-tooltip": "Inpostasion par ła lengua",
+ "ext-uls-undo-language-tooltip-text": "Lengua canbià da $1",
+ "ext-uls-language-settings-preferences-link": "Altre inpostasion par ła lengua",
+ "ext-uls-display-settings-title": "Inpostasion de vixuałixasion",
+ "ext-uls-display-settings-language-tab": "Lengua",
+ "ext-uls-display-settings-fonts-tab": "Tipi de caratare",
+ "ext-uls-display-settings-title-short": "Vixuałixa",
+ "ext-uls-display-settings-desc": "Inposta ła lengua doparà par menù e caratari",
+ "ext-uls-language-settings-title": "Inpostasion par ła lengua",
+ "ext-uls-language-settings-apply": "Àplica inpostasion",
+ "ext-uls-language-settings-cancel": "Łasa star",
+ "ext-uls-language-buttons-help": "Canbia ła lengua dei menù. Ła lengua dei contegnùi no ła vegnarà canbià.",
+ "ext-uls-display-settings-font-settings": "Inpostasion par tipo de caratari",
+ "ext-uls-display-settings-ui-language": "Lengua de vixuałixasion",
+ "ext-uls-display-settings-anon-label": "Lengua de vixuałixasion:",
+ "ext-uls-display-settings-anon-same-as-content": "$1 (come el contegnùo)",
+ "ext-uls-display-settings-anon-log-in-cta": "[[Special:UserLogin|Intra]] par sełesionar na lengua difarente pa' i menù.",
+ "ext-uls-webfonts-settings-title": "Scarga i tipi de caratere co xe nesesario",
+ "ext-uls-webfonts-settings-info": "Scarga i tipi de caratere automategamente e permeti ła sełesion dei tipi de carateri preferìi.",
+ "ext-uls-webfonts-settings-info-link": "Pì informasion",
+ "ext-uls-webfonts-select-for": "Sełesiona tipo de caratare par $1",
+ "ext-uls-webfonts-select-for-ui-info": "Tipo de caratare doparà par l'interfacia utente",
+ "ext-uls-webfonts-select-for-content-info": "Tipo de caratere doparà pa'l contegnùo",
+ "ext-uls-webfonts-system-font": "Font de sistema",
+ "ext-uls-back-to-display-settings": "Torna a łe inpostasion de vixuałixasion",
+ "ext-uls-input-settings-title": "Inpostasion de scritura",
+ "ext-uls-input-settings-title-short": "Scritura",
+ "ext-uls-input-settings-desc": "Scrivito inte na lengua difarente?",
+ "ext-uls-input-settings-ime-settings": "Metodi de scritura par $1",
+ "ext-uls-input-settings-ui-language": "Lengua doparà par ła scritura",
+ "ext-uls-back-to-input-settings": "Torna a łe inpostasion de scritura",
+ "ext-uls-ime-help": "Come dopararlo",
+ "ext-uls-disable-input-method": "Dopara ła tastiera nativa",
+ "ext-uls-input-settings-more-languages-tooltip": "Pì lengue",
+ "jquery-ime-other-languages": "Altre lengue",
+ "jquery-ime-disable-text": "Dopara ła tastiera nativa",
+ "jquery-ime-help": "Jùteme",
+ "ext-uls-input-disable": "Dixabiłita i strumenti de scritura",
+ "ext-uls-input-enable": "Abiłita i strumenti de scritura",
+ "ext-uls-input-disable-info": "I strumenti de scritura i xe dixabiłitai.",
+ "ext-uls-input-settings-noime": "Nisun metodo de scritura xe disponibiłe par sta lengua.",
+ "ext-uls-input-disable-notification": "I strumenti de scritura i xe stai dixabiłitai.",
+ "ext-uls-input-disable-notification-undo": "Anuła",
+ "ext-uls-input-disable-notification-info-personal": "Xe posibiłe ativar in calsiasi momento i strumenti de scritura da łe inpostasion de ła lengua.",
+ "ext-uls-input-disable-notification-info-interlanguage": "Xe posibiłe ativar in calsiasi momento i strumenti de scritura da łe inpostasion de ła lengua, visin a ła vacheta de łe lengue.",
+ "ext-uls-language-settings-applying": "Drio aplicar..."
+}
diff --git a/MLEB/UniversalLanguageSelector/i18n/vi.json b/MLEB/UniversalLanguageSelector/i18n/vi.json
new file mode 100644
index 00000000..5b134f00
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/i18n/vi.json
@@ -0,0 +1,69 @@
+{
+ "@metadata": {
+ "authors": [
+ "Minh Nguyen",
+ "Max20091"
+ ]
+ },
+ "uls-desc": "Trình bày giao diện để lựa chọn ngôn ngữ và điều chỉnh các tùy chọn ngôn ngữ",
+ "uls-plang-title-languages": "Ngôn ngữ",
+ "ext-uls-select-language-settings-icon-tooltip": "Tùy chọn ngôn ngữ",
+ "ext-uls-undo-language-tooltip-text": "Đã đổi ngôn ngữ từ $1",
+ "ext-uls-language-settings-preferences-link": "Thêm tùy chọn ngôn ngữ",
+ "uls-betafeature-label": "Danh sách liên kết ngôn ngữ thu gọn",
+ "uls-betafeature-desc": "Thu gọn danh sách các liên kết giữa ngôn ngữ để chỉ hiển thị các ngôn ngữ mà bạn có thể muốn sử dụng.",
+ "ext-uls-display-settings-title": "Tùy chọn trình bày",
+ "ext-uls-display-settings-language-tab": "Ngôn ngữ",
+ "ext-uls-display-settings-fonts-tab": "Phông chữ",
+ "ext-uls-display-settings-title-short": "Trình bày",
+ "ext-uls-display-settings-desc": "Đặt ngôn ngữ của các trình đơn và phông chữ.",
+ "ext-uls-language-settings-title": "Tùy chọn ngôn ngữ",
+ "ext-uls-language-settings-apply": "Áp dụng tùy chọn",
+ "ext-uls-language-settings-cancel": "Hủy bỏ",
+ "ext-uls-language-buttons-help": "Thay đổi ngôn ngữ của các trình đơn. Nội dung sẽ không thay đổi ngôn ngữ.",
+ "ext-uls-display-settings-font-settings": "Tùy chọn phông chữ",
+ "ext-uls-display-settings-ui-language": "Ngôn ngữ trình bày",
+ "ext-uls-display-settings-anon-label": "Ngôn ngữ trình bày:",
+ "ext-uls-display-settings-anon-same-as-content": "$1 (phù hợp với nội dung)",
+ "ext-uls-display-settings-anon-log-in-cta": "[[Special:UserLogin|Đăng nhập]] để chọn ngôn ngữ khác cho các trình đơn.",
+ "ext-uls-webfonts-settings-title": "Tải về phông chữ khi nào cần",
+ "ext-uls-webfonts-settings-info": "Tự động tải về các phông chữ bị thiếu và cho phép lựa chọn các phông chữ ưa thích.",
+ "ext-uls-webfonts-settings-info-link": "Thêm thông tin",
+ "ext-uls-webfonts-select-for": "Chọn phông chữ $1",
+ "ext-uls-webfonts-select-for-ui-info": "Phông chữ giao diện",
+ "ext-uls-webfonts-select-for-content-info": "Phông chữ nội dung",
+ "ext-uls-webfonts-system-font": "Phông chữ của máy",
+ "ext-uls-back-to-display-settings": "Quay về tùy chọn trình bày",
+ "ext-uls-input-settings-title": "Tùy chọn nhập văn bản",
+ "ext-uls-input-settings-title-short": "Nhập văn bản",
+ "ext-uls-input-settings-desc": "Có muốn viết trong ngôn ngữ khác?",
+ "ext-uls-input-settings-ime-settings": "Bộ gõ $1",
+ "ext-uls-input-settings-ui-language": "Ngôn ngữ viết",
+ "ext-uls-back-to-input-settings": "Quay về tùy chọn nhập văn bản",
+ "ext-uls-ime-help": "Cách sử dụng",
+ "ext-uls-disable-input-method": "Sử dụng bàn phím gốc",
+ "ext-uls-input-settings-more-languages-tooltip": "Thêm ngôn ngữ",
+ "jquery-ime-other-languages": "Ngôn ngữ khác",
+ "jquery-ime-disable-text": "Sử dụng bàn phím gốc",
+ "jquery-ime-help": "Trợ giúp",
+ "ext-uls-input-disable": "Tắt bộ gõ",
+ "ext-uls-input-enable": "Bật bộ gõ",
+ "ext-uls-input-disable-info": "Bộ gõ đang tắt.",
+ "ext-uls-input-settings-noime": "Ngôn ngữ này không có bộ gõ nào.",
+ "ext-uls-input-disable-notification": "Bộ gõ đã được tắt",
+ "ext-uls-input-disable-notification-undo": "Hoàn tác",
+ "ext-uls-input-disable-notification-info-personal": "Bạn có thể bật bộ gõ bất cứ lúc nào từ tùy chọn ngôn ngữ.",
+ "ext-uls-input-disable-notification-info-interlanguage": "Bạn có thể bật bộ gõ bất cứ lúc nào từ tùy chọn ngôn ngữ bên cạnh danh sách ngôn ngữ.",
+ "ext-uls-language-settings-applying": "Đang áp dụng…",
+ "ext-uls-compact-link-count": "{{PLURAL:$1|Một ngôn ngữ|$1 ngôn ngữ}} nữa",
+ "apihelp-languagesearch-description": "Tìm kiếm các tên người dùng trong hệ thống viết nào.",
+ "apihelp-languagesearch-param-search": "Chuỗi tìm kiếm.",
+ "apihelp-languagesearch-param-typos": "Số lỗi chính tả được cho phép trong chuỗi tìm kiếm.",
+ "apihelp-languagesearch-example-1": "Tìm kiếm cho “Te”",
+ "apihelp-languagesearch-example-2": "Tìm kiếm cho “ഫി”",
+ "apihelp-languagesearch-example-3": "Tìm kiếm cho “ഫി” mà cho phép một lỗi chính tả",
+ "apihelp-ulslocalization-description": "Lấy bản dịch ULS trong ngôn ngữ được chỉ định.",
+ "apihelp-ulslocalization-param-language": "Chuỗi ngôn ngữ.",
+ "apihelp-ulslocalization-example-1": "Lấy bản dịch tiếng Tamil",
+ "apihelp-ulslocalization-example-2": "Lấy bản dịch tiếng Hindi"
+}
diff --git a/MLEB/UniversalLanguageSelector/i18n/vo.json b/MLEB/UniversalLanguageSelector/i18n/vo.json
new file mode 100644
index 00000000..bd300e4b
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/i18n/vo.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Malafaya"
+ ]
+ },
+ "ext-uls-input-settings-desc": "Penol-li püko votik?"
+}
diff --git a/MLEB/UniversalLanguageSelector/i18n/yi.json b/MLEB/UniversalLanguageSelector/i18n/yi.json
new file mode 100644
index 00000000..f9c39535
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/i18n/yi.json
@@ -0,0 +1,53 @@
+{
+ "@metadata": {
+ "authors": [
+ "פוילישער"
+ ]
+ },
+ "uls-desc": "גיט דעם באניצער עטלעכע וועגן אויסצוקלויבן א שפראך און אנצופאסן שפראך־איינשטעלונגען",
+ "uls-plang-title-languages": "שפּראַכן",
+ "ext-uls-select-language-settings-icon-tooltip": "שפראך איינשטעלונגען",
+ "ext-uls-undo-language-tooltip-text": "שפראַך געענדערט פֿון $1",
+ "ext-uls-language-settings-preferences-link": "נאך שפראך איינשטעלונגען",
+ "ext-uls-display-settings-title": "אויסשטעל איינשטעלונגען",
+ "ext-uls-display-settings-language-tab": "שפראַך",
+ "ext-uls-display-settings-fonts-tab": "פֿאנטן",
+ "ext-uls-display-settings-title-short": "אויסשטעלונג",
+ "ext-uls-display-settings-desc": "שפראַך פֿאר מעניוס און פֿאנטן",
+ "ext-uls-language-settings-title": "שפראַך איינשטעלונגען",
+ "ext-uls-language-settings-apply": "אָנווענדן איינשטעלונגען",
+ "ext-uls-language-settings-cancel": "אַנולירן",
+ "ext-uls-language-buttons-help": "ענדערן מעניו־שפראַך. אינהאַלט־שפראַך ווערט נישט געענדערט.",
+ "ext-uls-display-settings-font-settings": "פֿאנט איינשטעלונגען",
+ "ext-uls-display-settings-ui-language": "אויסשטעל שפראַך",
+ "ext-uls-display-settings-anon-label": "אויסשטעל שפראַך:",
+ "ext-uls-display-settings-anon-same-as-content": "$1 (אזוי ווי אינהאַלט)",
+ "ext-uls-display-settings-anon-log-in-cta": "[[Special:UserLogin|ארײַנלאגירן]] כדי אויסקלויבן אן אנדער מעניו־שפראַך.",
+ "ext-uls-webfonts-settings-title": "אַראָפלאָדן פֿאנטן ווען נייטיק",
+ "ext-uls-webfonts-settings-info": "אראפלאדן פעלנדע פֿאנטן אויטאמאטיש און דערמעגלעכן אויסקלויבן פרעפערירטע שריפֿטן.",
+ "ext-uls-webfonts-settings-info-link": "נאך אינפֿאָרמאַציע",
+ "ext-uls-webfonts-select-for": "אויסקלויבן פֿאנט פֿאר $1",
+ "ext-uls-webfonts-select-for-ui-info": "פֿאנט פֿאר באניצער אייבערפֿלאך",
+ "ext-uls-webfonts-select-for-content-info": "פֿאנט פֿאר אינהאלט",
+ "ext-uls-webfonts-system-font": "סיסטעם־פֿאנט",
+ "ext-uls-back-to-display-settings": "צוריק צו אויסשטעל איינשטעלונגען",
+ "ext-uls-input-settings-title": "איינגאב איינשטעלונגען",
+ "ext-uls-input-settings-title-short": "איינגאב",
+ "ext-uls-input-settings-desc": "שרײַבן אין אן אנדער שפראך?",
+ "ext-uls-input-settings-ime-settings": "איינגאב מעטאדן פאר $1",
+ "ext-uls-input-settings-ui-language": "שפראך גענוצט פאר שרייבן",
+ "ext-uls-back-to-input-settings": "צוריק צו איינגאב איינשטעלונגען",
+ "ext-uls-ime-help": "וויאזוי צו ניצן",
+ "ext-uls-disable-input-method": "ניצן נאַטיוון קלאוויאטור",
+ "ext-uls-input-settings-more-languages-tooltip": "נאך שפראַכן",
+ "jquery-ime-other-languages": "אַנדערע שפראַכן",
+ "jquery-ime-disable-text": "ניצן נאַטיוון קלאוויאטור",
+ "jquery-ime-help": "הילף",
+ "ext-uls-input-disable": "אומאקטיווירן איינגאב געצייג",
+ "ext-uls-input-enable": "אקטיוויזירן איינגאב געצייג",
+ "ext-uls-input-disable-info": "איינגאב געצייג זענען אומאקטיוויזירט.",
+ "ext-uls-input-settings-noime": "זענען נישט פֿאראן קייט איינגאב מעטאדן פֿאר דער שפראך.",
+ "ext-uls-input-disable-notification": "איינגאב געצייג זענען געווארן אומאקטיוויזירט",
+ "ext-uls-input-disable-notification-undo": "אַנולירן",
+ "ext-uls-input-disable-notification-info-personal": "איר קענט אקטיוויזירן די איינגאב געצייג אבי ווען פון די שפראך שטעלונגען."
+}
diff --git a/MLEB/UniversalLanguageSelector/i18n/zh-hans.json b/MLEB/UniversalLanguageSelector/i18n/zh-hans.json
new file mode 100644
index 00000000..d5e7a516
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/i18n/zh-hans.json
@@ -0,0 +1,75 @@
+{
+ "@metadata": {
+ "authors": [
+ "Xiaomingyan",
+ "Yfdyh000",
+ "Zhangjintao",
+ "Zhuyifei1999",
+ "Liuxinyu970226",
+ "Shizhao",
+ "Li3939108",
+ "Shirayuki"
+ ]
+ },
+ "uls-desc": "为用户提供多种方法来选择语言和调整语言设置",
+ "uls-plang-title-languages": "语言",
+ "ext-uls-select-language-settings-icon-tooltip": "语言设置",
+ "ext-uls-undo-language-tooltip-text": "语言已更改自$1",
+ "ext-uls-language-settings-preferences-link": "更多语言设置",
+ "uls-betafeature-label": "紧凑语言链接",
+ "uls-betafeature-desc": "显示语言列表的简短版本,这些语言与您的语言相关。",
+ "ext-uls-display-settings-title": "显示设置",
+ "ext-uls-display-settings-language-tab": "语言",
+ "ext-uls-display-settings-fonts-tab": "字体",
+ "ext-uls-display-settings-title-short": "显示",
+ "ext-uls-display-settings-desc": "设置菜单语言和字体。",
+ "ext-uls-language-settings-title": "语言设置",
+ "ext-uls-language-settings-apply": "应用设置",
+ "ext-uls-language-settings-cancel": "取消",
+ "ext-uls-language-buttons-help": "更改菜单语言。内容语言不会受到影响。",
+ "ext-uls-display-settings-font-settings": "字体设置",
+ "ext-uls-display-settings-ui-language": "显示语言",
+ "ext-uls-display-settings-anon-label": "显示语言:",
+ "ext-uls-display-settings-anon-same-as-content": "$1(与内容相同)",
+ "ext-uls-display-settings-anon-log-in-cta": "[[Special:UserLogin|登录]]以选择菜单语言。",
+ "ext-uls-webfonts-settings-title": "需要时下载字体",
+ "ext-uls-webfonts-settings-info": "自动下载缺少的字体并允许选择首选字体。",
+ "ext-uls-webfonts-settings-info-link": "更多信息",
+ "ext-uls-webfonts-select-for": "选择$1的字体",
+ "ext-uls-webfonts-select-for-ui-info": "用户界面字体",
+ "ext-uls-webfonts-select-for-content-info": "内容字体",
+ "ext-uls-webfonts-system-font": "系统字体",
+ "ext-uls-back-to-display-settings": "返回显示设置",
+ "ext-uls-input-settings-title": "输入设置",
+ "ext-uls-input-settings-title-short": "输入",
+ "ext-uls-input-settings-desc": "要输入其他语言?",
+ "ext-uls-input-settings-ime-settings": "$1输入法",
+ "ext-uls-input-settings-ui-language": "输入语言",
+ "ext-uls-back-to-input-settings": "返回输入设置",
+ "ext-uls-ime-help": "如何使用",
+ "ext-uls-disable-input-method": "使用本地键盘",
+ "ext-uls-input-settings-more-languages-tooltip": "更多语言",
+ "jquery-ime-other-languages": "其他语言",
+ "jquery-ime-disable-text": "使用本地键盘",
+ "jquery-ime-help": "帮助",
+ "ext-uls-input-disable": "停用输入工具",
+ "ext-uls-input-enable": "启用输入工具",
+ "ext-uls-input-disable-info": "输入工具已停用。",
+ "ext-uls-input-settings-noime": "没有该语言的输入法。",
+ "ext-uls-input-disable-notification": "输入工具已停用",
+ "ext-uls-input-disable-notification-undo": "撤销",
+ "ext-uls-input-disable-notification-info-personal": "你可以在任何时间在语言设置中启用输入工具。",
+ "ext-uls-input-disable-notification-info-interlanguage": "你可以在任何时间在语言列表旁的语言设置中启用输入工具。",
+ "ext-uls-language-settings-applying": "正在应用...",
+ "ext-uls-compact-link-count": "还有$1种语言",
+ "apihelp-languagesearch-description": "使用任何字母搜索语言名称。",
+ "apihelp-languagesearch-param-search": "搜索字符串。",
+ "apihelp-languagesearch-param-typos": "搜索字符串中允许的拼写错误数量。",
+ "apihelp-languagesearch-example-1": "搜索“Te”",
+ "apihelp-languagesearch-example-2": "搜索“ഫി”",
+ "apihelp-languagesearch-example-3": "搜索“ഫി”,允许一个错字",
+ "apihelp-ulslocalization-description": "获得指定语言的ULS本地化。",
+ "apihelp-ulslocalization-param-language": "语言字符串。",
+ "apihelp-ulslocalization-example-1": "获得泰米尔语本地化",
+ "apihelp-ulslocalization-example-2": "获得印地语本地化"
+}
diff --git a/MLEB/UniversalLanguageSelector/i18n/zh-hant.json b/MLEB/UniversalLanguageSelector/i18n/zh-hant.json
new file mode 100644
index 00000000..29043efe
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/i18n/zh-hant.json
@@ -0,0 +1,65 @@
+{
+ "@metadata": {
+ "authors": [
+ "Ch.Andrew",
+ "Justincheng12345",
+ "Liuxinyu970226",
+ "Simon Shek",
+ "Spring Roll Conan",
+ "Liangent",
+ "LNDDYL",
+ "Cwlin0416"
+ ]
+ },
+ "uls-desc": "為使用者提供多種方法來選擇語言和調整語言設定",
+ "uls-plang-title-languages": "語言",
+ "ext-uls-select-language-settings-icon-tooltip": "語言設定",
+ "ext-uls-undo-language-tooltip-text": "語言已從 $1 更改",
+ "ext-uls-language-settings-preferences-link": "更多語言設定",
+ "uls-betafeature-label": "簡潔版語言連結",
+ "uls-betafeature-desc": "顯示較簡潔的語言清單,僅顯示與您相關的語言。",
+ "ext-uls-display-settings-title": "顯示設定",
+ "ext-uls-display-settings-language-tab": "語言",
+ "ext-uls-display-settings-fonts-tab": "字型",
+ "ext-uls-display-settings-title-short": "顯示",
+ "ext-uls-display-settings-desc": "設定選單及字型使用的語言。",
+ "ext-uls-language-settings-title": "語言設定",
+ "ext-uls-language-settings-apply": "套用設定",
+ "ext-uls-language-settings-cancel": "取消",
+ "ext-uls-language-buttons-help": "更改選單使用的語言,不會影響內容語言。",
+ "ext-uls-display-settings-font-settings": "字型設定",
+ "ext-uls-display-settings-ui-language": "顯示語言",
+ "ext-uls-display-settings-anon-label": "顯示語言:",
+ "ext-uls-display-settings-anon-same-as-content": "$1 (與內容相同)",
+ "ext-uls-display-settings-anon-log-in-cta": "[[Special:UserLogin|登入]]為選單選擇其他語言。",
+ "ext-uls-webfonts-settings-title": "需要時下載字型",
+ "ext-uls-webfonts-settings-info": "自動下載缺少的字型並允許選擇偏好字型。",
+ "ext-uls-webfonts-settings-info-link": "更多資訊",
+ "ext-uls-webfonts-select-for": "為 $1 選擇字型",
+ "ext-uls-webfonts-select-for-ui-info": "用於使用者介面的字型",
+ "ext-uls-webfonts-select-for-content-info": "用於內容的字型",
+ "ext-uls-webfonts-system-font": "系統字型",
+ "ext-uls-back-to-display-settings": "返回顯示設定",
+ "ext-uls-input-settings-title": "輸入設定",
+ "ext-uls-input-settings-title-short": "輸入",
+ "ext-uls-input-settings-desc": "使用不同的語言寫作嗎?",
+ "ext-uls-input-settings-ime-settings": "$1 的輸入法",
+ "ext-uls-input-settings-ui-language": "寫作使用的語言",
+ "ext-uls-back-to-input-settings": "回到輸入設定",
+ "ext-uls-ime-help": "如何使用",
+ "ext-uls-disable-input-method": "使用原生鍵盤",
+ "ext-uls-input-settings-more-languages-tooltip": "更多語言",
+ "jquery-ime-other-languages": "其他語言",
+ "jquery-ime-disable-text": "使用原生鍵盤",
+ "jquery-ime-help": "說明",
+ "ext-uls-input-disable": "停用輸入工具",
+ "ext-uls-input-enable": "開啟輸入工具",
+ "ext-uls-input-disable-info": "已停用輸入工具。",
+ "ext-uls-input-settings-noime": "沒有提供此語言的輸入法。",
+ "ext-uls-input-disable-notification": "輸入工具已停用。",
+ "ext-uls-input-disable-notification-undo": "還原",
+ "ext-uls-input-disable-notification-info-personal": "你可隨時在語言設定中開啟輸入工具。",
+ "ext-uls-input-disable-notification-info-interlanguage": "你可隨時在語言清單旁的語言設定中開啟輸入工具。",
+ "ext-uls-language-settings-applying": "套用中...",
+ "ext-uls-compact-link-count": "其他 $1 個語言"
+}
diff --git a/MLEB/UniversalLanguageSelector/includes/ResourceLoaderULSJsonMessageModule.php b/MLEB/UniversalLanguageSelector/includes/ResourceLoaderULSJsonMessageModule.php
new file mode 100644
index 00000000..16e1c0c2
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/includes/ResourceLoaderULSJsonMessageModule.php
@@ -0,0 +1,63 @@
+<?php
+/**
+ * ResourceLoaderModule subclass for loading the json
+ * based localization to client-side code.
+ *
+ * @file
+ * @ingroup Extensions
+ * @author Santhosh Thottingal
+ */
+
+/**
+ * Packages a remote schema as a JavaScript ResourceLoader module.
+ * @since 2013.11
+ */
+class ResourceLoaderULSJsonMessageModule extends ResourceLoaderModule {
+ /**
+ * Part of the ResourceLoader module interface.
+ * Declares the core ext.uls.i18n module as a dependency.
+ * @return string[] Module names.
+ */
+ function getDependencies() {
+ return array( 'ext.uls.i18n' );
+ }
+
+ /**
+ * Gets the last modified timestamp of this module.
+ * The last modified timestamp controls caching.
+ * @param ResourceLoaderContext $context
+ * @return int Unix timestamp.
+ */
+ function getModifiedTime( ResourceLoaderContext $context ) {
+ $code = $context->getLanguage();
+ if ( !Language::isValidCode( $code ) ) {
+ $code = 'en';
+ }
+
+ $mtimes = array_map(
+ 'filemtime',
+ ULSJsonMessageLoader::getFilenames( $code )
+ );
+ // Make sure we have at least one entry
+ $mtimes[] = 1;
+
+ return max( $mtimes );
+ }
+
+ /**
+ * Get the message strings for the current UI language. Uses
+ * mw.uls.loadLocalization to register them on the frontend.
+ * @param ResourceLoaderContext $context
+ * @return string JavaScript code.
+ */
+ function getScript( ResourceLoaderContext $context ) {
+ $code = $context->getLanguage();
+ if ( !Language::isValidCode( $code ) ) {
+ $code = 'en';
+ }
+
+ $params = array( $code, ULSJsonMessageLoader::getMessages( $code ) );
+
+ return Xml::encodeJsCall( 'mw.uls.loadLocalization', $params );
+ }
+}
diff --git a/MLEB/UniversalLanguageSelector/includes/ResourceLoaderULSModule.php b/MLEB/UniversalLanguageSelector/includes/ResourceLoaderULSModule.php
new file mode 100644
index 00000000..de625d99
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/includes/ResourceLoaderULSModule.php
@@ -0,0 +1,95 @@
+<?php
+/**
+ * Resource loader module for UniversalLanguageSelector
+ *
+ * Copyright (C) 2012 Alolita Sharma, Amir Aharoni, Arun Ganesh, Brandon Harris,
+ * Niklas Laxström, Pau Giner, Santhosh Thottingal, Siebrand Mazeland and other
+ * contributors. See CREDITS for a list.
+ *
+ * UniversalLanguageSelector is dual licensed GPLv2 or later and MIT. You don't
+ * have to do anything special to choose one license or the other and you don't
+ * have to notify anyone which license you are using. You are free to use
+ * UniversalLanguageSelector in commercial projects as long as the copyright
+ * header is left intact. See files GPL-LICENSE and MIT-LICENSE for details.
+ *
+ * @file
+ * @author Niklas Laxström
+ * @ingroup Extensions
+ * @licence GNU General Public Licence 2.0 or later
+ * @licence MIT License
+ */
+
+/**
+ * Resource loader module for providing MediaWiki language names.
+ */
+class ResourceLoaderULSModule extends ResourceLoaderModule {
+ protected $targets = array( 'desktop', 'mobile' );
+
+ /**
+ * Get all the dynamic data for the content language to an array.
+ *
+ * @param string $languageCode Language code
+ * @return array
+ */
+ protected function getData( $languageCode ) {
+ $vars = array();
+ $vars['wgULSLanguages'] = Language::fetchLanguageNames(
+ $languageCode,
+ 'mwfile'
+ );
+
+ return $vars;
+ }
+
+ /**
+ * @param $context ResourceLoaderContext
+ * @return string JavaScript code
+ */
+ public function getScript( ResourceLoaderContext $context ) {
+ $languageCode = $context->getLanguage();
+ $out = '';
+ foreach ( $this->getData( $languageCode ) as $key => $value ) {
+ $out .= Xml::encodeJsCall( 'mw.config.set', array( $key, $value ) );
+ }
+
+ return $out;
+ }
+
+ /**
+ * Gets the last modified time for this module depending on the given
+ * context.
+ *
+ * @param $context ResourceLoaderContext
+ * @return int Unix timestamp
+ */
+ public function getModifiedTime( ResourceLoaderContext $context ) {
+ $languageCode = $context->getLanguage();
+
+ $cache = wfGetCache( CACHE_ANYTHING );
+
+ // Since we are updating the timestamp on hash change, we need to
+ // cache the hash per language to avoid updating the timestamp when
+ // different languages are being requested.
+ $key = wfMemcKey(
+ 'uls',
+ 'modulemodifiedhash',
+ $this->getName(),
+ $languageCode
+ );
+
+ $data = $this->getData( $languageCode );
+ $hash = md5( serialize( $data ) );
+
+ $result = $cache->get( $key );
+ if ( is_array( $result ) && $result['hash'] === $hash ) {
+ return $result['timestamp'];
+ }
+ $timestamp = wfTimestamp();
+ $cache->set( $key, array(
+ 'hash' => $hash,
+ 'timestamp' => $timestamp,
+ ) );
+
+ return $timestamp;
+ }
+}
diff --git a/MLEB/UniversalLanguageSelector/includes/ULSJsonMessageLoader.php b/MLEB/UniversalLanguageSelector/includes/ULSJsonMessageLoader.php
new file mode 100644
index 00000000..856a5164
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/includes/ULSJsonMessageLoader.php
@@ -0,0 +1,79 @@
+<?php
+/**
+ * Json formatted MessageLoader for ULS
+ *
+ * Copyright (C) 2013 Alolita Sharma, Amir Aharoni, Arun Ganesh, Brandon Harris,
+ * Niklas Laxström, Pau Giner, Santhosh Thottingal, Siebrand Mazeland and other
+ * contributors. See CREDITS for a list.
+ *
+ * UniversalLanguageSelector is dual licensed GPLv2 or later and MIT. You don't
+ * have to do anything special to choose one license or the other and you don't
+ * have to notify anyone which license you are using. You are free to use
+ * UniversalLanguageSelector in commercial projects as long as the copyright
+ * header is left intact. See files GPL-LICENSE and MIT-LICENSE for details.
+ *
+ * @file
+ * @ingroup Extensions
+ * @licence GNU General Public Licence 2.0 or later
+ * @licence MIT License
+ * @since 2013.11
+ */
+
+class ULSJsonMessageLoader {
+ /**
+ * Returns all message files that are used to load messages for the given
+ * language.
+ * @param string $language Language code.
+ * @return string[]
+ */
+ public static function getFilenames( $language ) {
+ $filenames = array();
+
+ $languages = Language::getFallbacksFor( $language );
+ // Prepend the requested language code
+ // to load them all in one loop
+ array_unshift( $languages, $language );
+
+ // jQuery.uls localization
+ foreach ( $languages as $language ) {
+ $filenames[] = __DIR__ . "/../lib/jquery.uls/i18n/$language.json";
+ }
+
+ // mediaWiki.uls localization
+ foreach ( $languages as $language ) {
+ $filenames[] = __DIR__ . "/../i18n/$language.json";
+ }
+
+ $filenames = array_filter( $filenames, function( $filename ) {
+ return file_exists( $filename );
+ } );
+
+ return $filenames;
+ }
+
+ /**
+ * Get messages for the given language.
+ * @param string $language Language code.
+ * @return array
+ */
+ public static function getMessages( $language ) {
+ $contents = array();
+
+ foreach ( self::getFilenames( $language ) as $filename ) {
+ $contents += self::loadI18nFile( $filename );
+ }
+
+ return $contents;
+ }
+
+ /**
+ * Load messages from a json file.
+ * @param string $filename Directory of the json file.
+ * @return array
+ */
+ protected static function loadI18nFile( $filename ) {
+ $contents = file_get_contents( $filename );
+
+ return json_decode( $contents, true );
+ }
+}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.i18n/jquery.i18n.emitter.js b/MLEB/UniversalLanguageSelector/lib/jquery.i18n/jquery.i18n.emitter.js
new file mode 100644
index 00000000..b26f147d
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.i18n/jquery.i18n.emitter.js
@@ -0,0 +1,168 @@
+/**
+ * jQuery Internationalization library
+ *
+ * Copyright (C) 2011-2013 Santhosh Thottingal, Neil Kandalgaonkar
+ *
+ * jquery.i18n is dual licensed GPLv2 or later and MIT. You don't have to do
+ * anything special to choose one license or the other and you don't have to
+ * notify anyone which license you are using. You are free to use
+ * UniversalLanguageSelector in commercial projects as long as the copyright
+ * header is left intact. See files GPL-LICENSE and MIT-LICENSE for details.
+ *
+ * @licence GNU General Public Licence 2.0 or later
+ * @licence MIT License
+ */
+
+( function ( $ ) {
+ 'use strict';
+
+ var MessageParserEmitter = function () {
+ this.language = $.i18n.languages[String.locale] || $.i18n.languages['default'];
+ };
+
+ MessageParserEmitter.prototype = {
+ constructor: MessageParserEmitter,
+
+ /**
+ * (We put this method definition here, and not in prototype, to make
+ * sure it's not overwritten by any magic.) Walk entire node structure,
+ * applying replacements and template functions when appropriate
+ *
+ * @param {Mixed} node abstract syntax tree (top node or subnode)
+ * @param {Array} replacements for $1, $2, ... $n
+ * @return {Mixed} single-string node or array of nodes suitable for
+ * jQuery appending.
+ */
+ emit: function ( node, replacements ) {
+ var ret, subnodes, operation,
+ messageParserEmitter = this;
+
+ switch ( typeof node ) {
+ case 'string':
+ case 'number':
+ ret = node;
+ break;
+ case 'object':
+ // node is an array of nodes
+ subnodes = $.map( node.slice( 1 ), function ( n ) {
+ return messageParserEmitter.emit( n, replacements );
+ } );
+
+ operation = node[0].toLowerCase();
+
+ if ( typeof messageParserEmitter[operation] === 'function' ) {
+ ret = messageParserEmitter[operation]( subnodes, replacements );
+ } else {
+ throw new Error( 'unknown operation "' + operation + '"' );
+ }
+
+ break;
+ case 'undefined':
+ // Parsing the empty string (as an entire expression, or as a
+ // paramExpression in a template) results in undefined
+ // Perhaps a more clever parser can detect this, and return the
+ // empty string? Or is that useful information?
+ // The logical thing is probably to return the empty string here
+ // when we encounter undefined.
+ ret = '';
+ break;
+ default:
+ throw new Error( 'unexpected type in AST: ' + typeof node );
+ }
+
+ return ret;
+ },
+
+ /**
+ * Parsing has been applied depth-first we can assume that all nodes
+ * here are single nodes Must return a single node to parents -- a
+ * jQuery with synthetic span However, unwrap any other synthetic spans
+ * in our children and pass them upwards
+ *
+ * @param {Array} nodes Mixed, some single nodes, some arrays of nodes.
+ * @return String
+ */
+ concat: function ( nodes ) {
+ var result = '';
+
+ $.each( nodes, function ( i, node ) {
+ // strings, integers, anything else
+ result += node;
+ } );
+
+ return result;
+ },
+
+ /**
+ * Return escaped replacement of correct index, or string if
+ * unavailable. Note that we expect the parsed parameter to be
+ * zero-based. i.e. $1 should have become [ 0 ]. if the specified
+ * parameter is not found return the same string (e.g. "$99" ->
+ * parameter 98 -> not found -> return "$99" ) TODO throw error if
+ * nodes.length > 1 ?
+ *
+ * @param {Array} nodes One element, integer, n >= 0
+ * @param {Array} replacements for $1, $2, ... $n
+ * @return {string} replacement
+ */
+ replace: function ( nodes, replacements ) {
+ var index = parseInt( nodes[0], 10 );
+
+ if ( index < replacements.length ) {
+ // replacement is not a string, don't touch!
+ return replacements[index];
+ } else {
+ // index not found, fallback to displaying variable
+ return '$' + ( index + 1 );
+ }
+ },
+
+ /**
+ * Transform parsed structure into pluralization n.b. The first node may
+ * be a non-integer (for instance, a string representing an Arabic
+ * number). So convert it back with the current language's
+ * convertNumber.
+ *
+ * @param {Array} nodes List [ {String|Number}, {String}, {String} ... ]
+ * @return {String} selected pluralized form according to current
+ * language.
+ */
+ plural: function ( nodes ) {
+ var count = parseFloat( this.language.convertNumber( nodes[0], 10 ) ),
+ forms = nodes.slice( 1 );
+
+ return forms.length ? this.language.convertPlural( count, forms ) : '';
+ },
+
+ /**
+ * Transform parsed structure into gender Usage
+ * {{gender:gender|masculine|feminine|neutral}}.
+ *
+ * @param {Array} nodes List [ {String}, {String}, {String} , {String} ]
+ * @return {String} selected gender form according to current language
+ */
+ gender: function ( nodes ) {
+ var gender = nodes[0],
+ forms = nodes.slice( 1 );
+
+ return this.language.gender( gender, forms );
+ },
+
+ /**
+ * Transform parsed structure into grammar conversion. Invoked by
+ * putting {{grammar:form|word}} in a message
+ *
+ * @param {Array} nodes List [{Grammar case eg: genitive}, {String word}]
+ * @return {String} selected grammatical form according to current
+ * language.
+ */
+ grammar: function ( nodes ) {
+ var form = nodes[0],
+ word = nodes[1];
+
+ return word && form && this.language.convertGrammar( word, form );
+ }
+ };
+
+ $.extend( $.i18n.parser.emitter, new MessageParserEmitter() );
+}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.i18n/jquery.i18n.fallbacks.js b/MLEB/UniversalLanguageSelector/lib/jquery.i18n/jquery.i18n.fallbacks.js
new file mode 100644
index 00000000..0b2eafbf
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.i18n/jquery.i18n.fallbacks.js
@@ -0,0 +1,186 @@
+/**
+ * jQuery Internationalization library
+ *
+ * Copyright (C) 2012 Santhosh Thottingal
+ *
+ * jquery.i18n is dual licensed GPLv2 or later and MIT. You don't have to do anything special to
+ * choose one license or the other and you don't have to notify anyone which license you are using.
+ * You are free to use UniversalLanguageSelector in commercial projects as long as the copyright
+ * header is left intact. See files GPL-LICENSE and MIT-LICENSE for details.
+ *
+ * @licence GNU General Public Licence 2.0 or later
+ * @licence MIT License
+ */
+( function ( $, undefined ) {
+ 'use strict';
+
+ $.i18n = $.i18n || {};
+ $.extend( $.i18n.fallbacks, {
+ 'ab': ['ru'],
+ 'ace': ['id'],
+ 'aln': ['sq'],
+ // Not so standard - als is supposed to be Tosk Albanian,
+ // but in Wikipedia it's used for a Germanic language.
+ 'als': ['gsw', 'de'],
+ 'an': ['es'],
+ 'anp': ['hi'],
+ 'arn': ['es'],
+ 'arz': ['ar'],
+ 'av': ['ru'],
+ 'ay': ['es'],
+ 'ba': ['ru'],
+ 'bar': ['de'],
+ 'bat-smg': ['sgs', 'lt'],
+ 'bcc': ['fa'],
+ 'be-x-old': ['be-tarask'],
+ 'bh': ['bho'],
+ 'bjn': ['id'],
+ 'bm': ['fr'],
+ 'bpy': ['bn'],
+ 'bqi': ['fa'],
+ 'bug': ['id'],
+ 'cbk-zam': ['es'],
+ 'ce': ['ru'],
+ 'crh': ['crh-latn'],
+ 'crh-cyrl': ['ru'],
+ 'csb': ['pl'],
+ 'cv': ['ru'],
+ 'de-at': ['de'],
+ 'de-ch': ['de'],
+ 'de-formal': ['de'],
+ 'dsb': ['de'],
+ 'dtp': ['ms'],
+ 'egl': ['it'],
+ 'eml': ['it'],
+ 'ff': ['fr'],
+ 'fit': ['fi'],
+ 'fiu-vro': ['vro', 'et'],
+ 'frc': ['fr'],
+ 'frp': ['fr'],
+ 'frr': ['de'],
+ 'fur': ['it'],
+ 'gag': ['tr'],
+ 'gan': ['gan-hant', 'zh-hant', 'zh-hans'],
+ 'gan-hans': ['zh-hans'],
+ 'gan-hant': ['zh-hant', 'zh-hans'],
+ 'gl': ['pt'],
+ 'glk': ['fa'],
+ 'gn': ['es'],
+ 'gsw': ['de'],
+ 'hif': ['hif-latn'],
+ 'hsb': ['de'],
+ 'ht': ['fr'],
+ 'ii': ['zh-cn', 'zh-hans'],
+ 'inh': ['ru'],
+ 'iu': ['ike-cans'],
+ 'jut': ['da'],
+ 'jv': ['id'],
+ 'kaa': ['kk-latn', 'kk-cyrl'],
+ 'kbd': ['kbd-cyrl'],
+ 'khw': ['ur'],
+ 'kiu': ['tr'],
+ 'kk': ['kk-cyrl'],
+ 'kk-arab': ['kk-cyrl'],
+ 'kk-latn': ['kk-cyrl'],
+ 'kk-cn': ['kk-arab', 'kk-cyrl'],
+ 'kk-kz': ['kk-cyrl'],
+ 'kk-tr': ['kk-latn', 'kk-cyrl'],
+ 'kl': ['da'],
+ 'ko-kp': ['ko'],
+ 'koi': ['ru'],
+ 'krc': ['ru'],
+ 'ks': ['ks-arab'],
+ 'ksh': ['de'],
+ 'ku': ['ku-latn'],
+ 'ku-arab': ['ckb'],
+ 'kv': ['ru'],
+ 'lad': ['es'],
+ 'lb': ['de'],
+ 'lbe': ['ru'],
+ 'lez': ['ru'],
+ 'li': ['nl'],
+ 'lij': ['it'],
+ 'liv': ['et'],
+ 'lmo': ['it'],
+ 'ln': ['fr'],
+ 'ltg': ['lv'],
+ 'lzz': ['tr'],
+ 'mai': ['hi'],
+ 'map-bms': ['jv', 'id'],
+ 'mg': ['fr'],
+ 'mhr': ['ru'],
+ 'min': ['id'],
+ 'mo': ['ro'],
+ 'mrj': ['ru'],
+ 'mwl': ['pt'],
+ 'myv': ['ru'],
+ 'mzn': ['fa'],
+ 'nah': ['es'],
+ 'nap': ['it'],
+ 'nds': ['de'],
+ 'nds-nl': ['nl'],
+ 'nl-informal': ['nl'],
+ 'no': ['nb'],
+ 'os': ['ru'],
+ 'pcd': ['fr'],
+ 'pdc': ['de'],
+ 'pdt': ['de'],
+ 'pfl': ['de'],
+ 'pms': ['it'],
+ 'pt': ['pt-br'],
+ 'pt-br': ['pt'],
+ 'qu': ['es'],
+ 'qug': ['qu', 'es'],
+ 'rgn': ['it'],
+ 'rmy': ['ro'],
+ 'roa-rup': ['rup'],
+ 'rue': ['uk', 'ru'],
+ 'ruq': ['ruq-latn', 'ro'],
+ 'ruq-cyrl': ['mk'],
+ 'ruq-latn': ['ro'],
+ 'sa': ['hi'],
+ 'sah': ['ru'],
+ 'scn': ['it'],
+ 'sg': ['fr'],
+ 'sgs': ['lt'],
+ 'sli': ['de'],
+ 'sr': ['sr-ec'],
+ 'srn': ['nl'],
+ 'stq': ['de'],
+ 'su': ['id'],
+ 'szl': ['pl'],
+ 'tcy': ['kn'],
+ 'tg': ['tg-cyrl'],
+ 'tt': ['tt-cyrl', 'ru'],
+ 'tt-cyrl': ['ru'],
+ 'ty': ['fr'],
+ 'udm': ['ru'],
+ 'ug': ['ug-arab'],
+ 'uk': ['ru'],
+ 'vec': ['it'],
+ 'vep': ['et'],
+ 'vls': ['nl'],
+ 'vmf': ['de'],
+ 'vot': ['fi'],
+ 'vro': ['et'],
+ 'wa': ['fr'],
+ 'wo': ['fr'],
+ 'wuu': ['zh-hans'],
+ 'xal': ['ru'],
+ 'xmf': ['ka'],
+ 'yi': ['he'],
+ 'za': ['zh-hans'],
+ 'zea': ['nl'],
+ 'zh': ['zh-hans'],
+ 'zh-classical': ['lzh'],
+ 'zh-cn': ['zh-hans'],
+ 'zh-hant': ['zh-hans'],
+ 'zh-hk': ['zh-hant', 'zh-hans'],
+ 'zh-min-nan': ['nan'],
+ 'zh-mo': ['zh-hk', 'zh-hant', 'zh-hans'],
+ 'zh-my': ['zh-sg', 'zh-hans'],
+ 'zh-sg': ['zh-hans'],
+ 'zh-tw': ['zh-hant', 'zh-hans'],
+ 'zh-yue': ['yue']
+ } );
+}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.i18n/jquery.i18n.js b/MLEB/UniversalLanguageSelector/lib/jquery.i18n/jquery.i18n.js
new file mode 100644
index 00000000..461ec94b
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.i18n/jquery.i18n.js
@@ -0,0 +1,282 @@
+/**
+ * jQuery Internationalization library
+ *
+ * Copyright (C) 2012 Santhosh Thottingal
+ *
+ * jquery.i18n is dual licensed GPLv2 or later and MIT. You don't have to do
+ * anything special to choose one license or the other and you don't have to
+ * notify anyone which license you are using. You are free to use
+ * UniversalLanguageSelector in commercial projects as long as the copyright
+ * header is left intact. See files GPL-LICENSE and MIT-LICENSE for details.
+ *
+ * @licence GNU General Public Licence 2.0 or later
+ * @licence MIT License
+ */
+
+( function ( $ ) {
+ 'use strict';
+
+ var nav, I18N,
+ slice = Array.prototype.slice;
+ /**
+ * @constructor
+ * @param {Object} options
+ */
+ I18N = function ( options ) {
+ // Load defaults
+ this.options = $.extend( {}, I18N.defaults, options );
+
+ this.parser = this.options.parser;
+ this.locale = this.options.locale;
+ this.messageStore = this.options.messageStore;
+ this.languages = {};
+
+ this.init();
+ };
+
+ I18N.prototype = {
+ /**
+ * Initialize by loading locales and setting up
+ * String.prototype.toLocaleString and String.locale.
+ */
+ init: function () {
+ var i18n = this;
+
+ // Set locale of String environment
+ String.locale = i18n.locale;
+
+ // Override String.localeString method
+ String.prototype.toLocaleString = function () {
+ var localeParts, localePartIndex, value, locale, fallbackIndex,
+ tryingLocale, message;
+
+ value = this.valueOf();
+ locale = i18n.locale;
+ fallbackIndex = 0;
+
+ while ( locale ) {
+ // Iterate through locales starting at most-specific until
+ // localization is found. As in fi-Latn-FI, fi-Latn and fi.
+ localeParts = locale.split( '-' );
+ localePartIndex = localeParts.length;
+
+ do {
+ tryingLocale = localeParts.slice( 0, localePartIndex ).join( '-' );
+ message = i18n.messageStore.get( tryingLocale, value );
+
+ if ( message ) {
+ return message;
+ }
+
+ localePartIndex--;
+ } while ( localePartIndex );
+
+ if ( locale === 'en' ) {
+ break;
+ }
+
+ locale = ( $.i18n.fallbacks[i18n.locale] && $.i18n.fallbacks[i18n.locale][fallbackIndex] ) ||
+ i18n.options.fallbackLocale;
+ $.i18n.log( 'Trying fallback locale for ' + i18n.locale + ': ' + locale );
+
+ fallbackIndex++;
+ }
+
+ // key not found
+ return '';
+ };
+ },
+
+ /*
+ * Destroy the i18n instance.
+ */
+ destroy: function () {
+ $.removeData( document, 'i18n' );
+ },
+
+ /**
+ * General message loading API This can take a URL string for
+ * the json formatted messages. Example:
+ * <code>load('path/to/all_localizations.json');</code>
+ *
+ * To load a localization file for a locale:
+ * <code>
+ * load('path/to/de-messages.json', 'de' );
+ * </code>
+ *
+ * To load a localization file from a directory:
+ * <code>
+ * load('path/to/i18n/directory', 'de' );
+ * </code>
+ * The above method has the advantage of fallback resolution.
+ * ie, it will automatically load the fallback locales for de.
+ * For most usecases, this is the recommended method.
+ * It is optional to have trailing slash at end.
+ *
+ * A data object containing message key- message translation mappings
+ * can also be passed. Example:
+ * <code>
+ * load( { 'hello' : 'Hello' }, optionalLocale );
+ * </code>
+ *
+ * A source map containing key-value pair of languagename and locations
+ * can also be passed. Example:
+ * <code>
+ * load( {
+ * 'bn': 'i18n/bn.json',
+ * 'he': 'i18n/he.json',
+ * 'en': 'i18n/en.json'
+ * } )
+ * </code>
+ *
+ * If the data argument is null/undefined/false,
+ * all cached messages for the i18n instance will get reset.
+ *
+ * @param {String|Object} source
+ * @param {String} locale Language tag
+ * @returns {jQuery.Promise}
+ */
+ load: function ( source, locale ) {
+ var fallbackLocales, locIndex, fallbackLocale, sourceMap = {};
+
+ if ( typeof source === 'string' &&
+ source.split('.').pop() !== 'json'
+ ) {
+ fallbackLocales = ( $.i18n.fallbacks[locale] || [] )
+ .concat( this.options.fallbackLocale );
+ for ( locIndex in fallbackLocales ) {
+ fallbackLocale = fallbackLocales[locIndex];
+ sourceMap[fallbackLocale] = source + '/' + fallbackLocale + '.json';
+ }
+ return this.load( sourceMap );
+ } else {
+ return this.messageStore.load( source, locale );
+ }
+
+ },
+
+ /**
+ * Does parameter and magic word substitution.
+ *
+ * @param {string} key Message key
+ * @param {Array} parameters Message parameters
+ * @return {string}
+ */
+ parse: function ( key, parameters ) {
+ var message = key.toLocaleString();
+ // FIXME: This changes the state of the I18N object,
+ // should probably not change the 'this.parser' but just
+ // pass it to the parser.
+ this.parser.language = $.i18n.languages[$.i18n().locale] || $.i18n.languages['default'];
+ if( message === '' ) {
+ message = key;
+ }
+ return this.parser.parse( message, parameters );
+ }
+ };
+
+ /**
+ * Process a message from the $.I18N instance
+ * for the current document, stored in jQuery.data(document).
+ *
+ * @param {string} key Key of the message.
+ * @param {string} param1 [param...] Variadic list of parameters for {key}.
+ * @return {string|$.I18N} Parsed message, or if no key was given
+ * the instance of $.I18N is returned.
+ */
+ $.i18n = function ( key, param1 ) {
+ var parameters,
+ i18n = $.data( document, 'i18n' ),
+ options = typeof key === 'object' && key;
+
+ // If the locale option for this call is different then the setup so far,
+ // update it automatically. This doesn't just change the context for this
+ // call but for all future call as well.
+ // If there is no i18n setup yet, don't do this. It will be taken care of
+ // by the `new I18N` construction below.
+ // NOTE: It should only change language for this one call.
+ // Then cache instances of I18N somewhere.
+ if ( options && options.locale && i18n && i18n.locale !== options.locale ) {
+ String.locale = i18n.locale = options.locale;
+ }
+
+ if ( !i18n ) {
+ i18n = new I18N( options );
+ $.data( document, 'i18n', i18n );
+ }
+
+ if ( typeof key === 'string' ) {
+ if ( param1 !== undefined ) {
+ parameters = slice.call( arguments, 1 );
+ } else {
+ parameters = [];
+ }
+
+ return i18n.parse( key, parameters );
+ } else {
+ // FIXME: remove this feature/bug.
+ return i18n;
+ }
+ };
+
+ $.fn.i18n = function () {
+ var i18n = $.data( document, 'i18n' );
+
+ if ( !i18n ) {
+ i18n = new I18N();
+ $.data( document, 'i18n', i18n );
+ }
+ String.locale = i18n.locale;
+ return this.each( function () {
+ var $this = $( this ),
+ messageKey = $this.data( 'i18n' );
+
+ if ( messageKey ) {
+ $this.text( i18n.parse( messageKey ) );
+ } else {
+ $this.find( '[data-i18n]' ).i18n();
+ }
+ } );
+ };
+
+ String.locale = String.locale || $( 'html' ).attr( 'lang' );
+
+ if ( !String.locale ) {
+ if ( typeof window.navigator !== undefined ) {
+ nav = window.navigator;
+ String.locale = nav.language || nav.userLanguage || '';
+ } else {
+ String.locale = '';
+ }
+ }
+
+ $.i18n.languages = {};
+ $.i18n.messageStore = $.i18n.messageStore || {};
+ $.i18n.parser = {
+ // The default parser only handles variable substitution
+ parse: function ( message, parameters ) {
+ return message.replace( /\$(\d+)/g, function ( str, match ) {
+ var index = parseInt( match, 10 ) - 1;
+ return parameters[index] !== undefined ? parameters[index] : '$' + match;
+ } );
+ },
+ emitter: {}
+ };
+ $.i18n.fallbacks = {};
+ $.i18n.debug = false;
+ $.i18n.log = function ( /* arguments */ ) {
+ if ( window.console && $.i18n.debug ) {
+ window.console.log.apply( window.console, arguments );
+ }
+ };
+ /* Static members */
+ I18N.defaults = {
+ locale: String.locale,
+ fallbackLocale: 'en',
+ parser: $.i18n.parser,
+ messageStore: $.i18n.messageStore
+ };
+
+ // Expose constructor
+ $.i18n.constructor = I18N;
+}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.i18n/jquery.i18n.language.js b/MLEB/UniversalLanguageSelector/lib/jquery.i18n/jquery.i18n.language.js
new file mode 100644
index 00000000..ee6eacbc
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.i18n/jquery.i18n.language.js
@@ -0,0 +1,471 @@
+/*global pluralRuleParser */
+( function ( $ ) {
+ 'use strict';
+
+ var language = {
+ // CLDR plural rules generated using
+ // libs/CLDRPluralRuleParser/tools/PluralXML2JSON.html
+ 'pluralRules': {
+ 'ak': {
+ 'one': 'n = 0..1'
+ },
+ 'am': {
+ 'one': 'i = 0 or n = 1'
+ },
+ 'ar': {
+ 'zero': 'n = 0',
+ 'one': 'n = 1',
+ 'two': 'n = 2',
+ 'few': 'n % 100 = 3..10',
+ 'many': 'n % 100 = 11..99'
+ },
+ 'be': {
+ 'one': 'n % 10 = 1 and n % 100 != 11',
+ 'few': 'n % 10 = 2..4 and n % 100 != 12..14',
+ 'many': 'n % 10 = 0 or n % 10 = 5..9 or n % 100 = 11..14'
+ },
+ 'bh': {
+ 'one': 'n = 0..1'
+ },
+ 'bn': {
+ 'one': 'i = 0 or n = 1'
+ },
+ 'br': {
+ 'one': 'n % 10 = 1 and n % 100 != 11,71,91',
+ 'two': 'n % 10 = 2 and n % 100 != 12,72,92',
+ 'few': 'n % 10 = 3..4,9 and n % 100 != 10..19,70..79,90..99',
+ 'many': 'n != 0 and n % 1000000 = 0'
+ },
+ 'bs': {
+ 'one': 'v = 0 and i % 10 = 1 and i % 100 != 11 or f % 10 = 1 and f % 100 != 11',
+ 'few': 'v = 0 and i % 10 = 2..4 and i % 100 != 12..14 or f % 10 = 2..4 and f % 100 != 12..14'
+ },
+ 'cs': {
+ 'one': 'i = 1 and v = 0',
+ 'few': 'i = 2..4 and v = 0',
+ 'many': 'v != 0'
+ },
+ 'cy': {
+ 'zero': 'n = 0',
+ 'one': 'n = 1',
+ 'two': 'n = 2',
+ 'few': 'n = 3',
+ 'many': 'n = 6'
+ },
+ 'da': {
+ 'one': 'n = 1 or t != 0 and i = 0,1'
+ },
+ 'fa': {
+ 'one': 'i = 0 or n = 1'
+ },
+ 'ff': {
+ 'one': 'i = 0,1'
+ },
+ 'fil': {
+ 'one': 'i = 0..1 and v = 0'
+ },
+ 'fr': {
+ 'one': 'i = 0,1'
+ },
+ 'ga': {
+ 'one': 'n = 1',
+ 'two': 'n = 2',
+ 'few': 'n = 3..6',
+ 'many': 'n = 7..10'
+ },
+ 'gd': {
+ 'one': 'n = 1,11',
+ 'two': 'n = 2,12',
+ 'few': 'n = 3..10,13..19'
+ },
+ 'gu': {
+ 'one': 'i = 0 or n = 1'
+ },
+ 'guw': {
+ 'one': 'n = 0..1'
+ },
+ 'gv': {
+ 'one': 'n % 10 = 1',
+ 'two': 'n % 10 = 2',
+ 'few': 'n % 100 = 0,20,40,60'
+ },
+ 'he': {
+ 'one': 'i = 1 and v = 0',
+ 'two': 'i = 2 and v = 0',
+ 'many': 'v = 0 and n != 0..10 and n % 10 = 0'
+ },
+ 'hi': {
+ 'one': 'i = 0 or n = 1'
+ },
+ 'hr': {
+ 'one': 'v = 0 and i % 10 = 1 and i % 100 != 11 or f % 10 = 1 and f % 100 != 11',
+ 'few': 'v = 0 and i % 10 = 2..4 and i % 100 != 12..14 or f % 10 = 2..4 and f % 100 != 12..14'
+ },
+ 'hy': {
+ 'one': 'i = 0,1'
+ },
+ 'is': {
+ 'one': 't = 0 and i % 10 = 1 and i % 100 != 11 or t != 0'
+ },
+ 'iu': {
+ 'one': 'n = 1',
+ 'two': 'n = 2'
+ },
+ 'iw': {
+ 'one': 'i = 1 and v = 0',
+ 'two': 'i = 2 and v = 0',
+ 'many': 'v = 0 and n != 0..10 and n % 10 = 0'
+ },
+ 'kab': {
+ 'one': 'i = 0,1'
+ },
+ 'kn': {
+ 'one': 'i = 0 or n = 1'
+ },
+ 'kw': {
+ 'one': 'n = 1',
+ 'two': 'n = 2'
+ },
+ 'lag': {
+ 'zero': 'n = 0',
+ 'one': 'i = 0,1 and n != 0'
+ },
+ 'ln': {
+ 'one': 'n = 0..1'
+ },
+ 'lt': {
+ 'one': 'n % 10 = 1 and n % 100 != 11..19',
+ 'few': 'n % 10 = 2..9 and n % 100 != 11..19',
+ 'many': 'f != 0'
+ },
+ 'lv': {
+ 'zero': 'n % 10 = 0 or n % 100 = 11..19 or v = 2 and f % 100 = 11..19',
+ 'one': 'n % 10 = 1 and n % 100 != 11 or v = 2 and f % 10 = 1 and f % 100 != 11 or v != 2 and f % 10 = 1'
+ },
+ 'mg': {
+ 'one': 'n = 0..1'
+ },
+ 'mk': {
+ 'one': 'v = 0 and i % 10 = 1 or f % 10 = 1'
+ },
+ 'mo': {
+ 'one': 'i = 1 and v = 0',
+ 'few': 'v != 0 or n = 0 or n != 1 and n % 100 = 1..19'
+ },
+ 'mr': {
+ 'one': 'i = 0 or n = 1'
+ },
+ 'mt': {
+ 'one': 'n = 1',
+ 'few': 'n = 0 or n % 100 = 2..10',
+ 'many': 'n % 100 = 11..19'
+ },
+ 'naq': {
+ 'one': 'n = 1',
+ 'two': 'n = 2'
+ },
+ 'nso': {
+ 'one': 'n = 0..1'
+ },
+ 'pa': {
+ 'one': 'n = 0..1'
+ },
+ 'pl': {
+ 'one': 'i = 1 and v = 0',
+ 'few': 'v = 0 and i % 10 = 2..4 and i % 100 != 12..14',
+ 'many': 'v = 0 and i != 1 and i % 10 = 0..1 or v = 0 and i % 10 = 5..9 or v = 0 and i % 100 = 12..14'
+ },
+ 'pt': {
+ 'one': 'i = 1 and v = 0 or i = 0 and t = 1'
+ },
+ 'pt_PT': {
+ 'one': 'n = 1 and v = 0'
+ },
+ 'ro': {
+ 'one': 'i = 1 and v = 0',
+ 'few': 'v != 0 or n = 0 or n != 1 and n % 100 = 1..19'
+ },
+ 'ru': {
+ 'one': 'v = 0 and i % 10 = 1 and i % 100 != 11',
+ 'many': 'v = 0 and i % 10 = 0 or v = 0 and i % 10 = 5..9 or v = 0 and i % 100 = 11..14'
+ },
+ 'se': {
+ 'one': 'n = 1',
+ 'two': 'n = 2'
+ },
+ 'sh': {
+ 'one': 'v = 0 and i % 10 = 1 and i % 100 != 11 or f % 10 = 1 and f % 100 != 11',
+ 'few': 'v = 0 and i % 10 = 2..4 and i % 100 != 12..14 or f % 10 = 2..4 and f % 100 != 12..14'
+ },
+ 'shi': {
+ 'one': 'i = 0 or n = 1',
+ 'few': 'n = 2..10'
+ },
+ 'si': {
+ 'one': 'n = 0,1 or i = 0 and f = 1'
+ },
+ 'sk': {
+ 'one': 'i = 1 and v = 0',
+ 'few': 'i = 2..4 and v = 0',
+ 'many': 'v != 0'
+ },
+ 'sl': {
+ 'one': 'v = 0 and i % 100 = 1',
+ 'two': 'v = 0 and i % 100 = 2',
+ 'few': 'v = 0 and i % 100 = 3..4 or v != 0'
+ },
+ 'sma': {
+ 'one': 'n = 1',
+ 'two': 'n = 2'
+ },
+ 'smi': {
+ 'one': 'n = 1',
+ 'two': 'n = 2'
+ },
+ 'smj': {
+ 'one': 'n = 1',
+ 'two': 'n = 2'
+ },
+ 'smn': {
+ 'one': 'n = 1',
+ 'two': 'n = 2'
+ },
+ 'sms': {
+ 'one': 'n = 1',
+ 'two': 'n = 2'
+ },
+ 'sr': {
+ 'one': 'v = 0 and i % 10 = 1 and i % 100 != 11 or f % 10 = 1 and f % 100 != 11',
+ 'few': 'v = 0 and i % 10 = 2..4 and i % 100 != 12..14 or f % 10 = 2..4 and f % 100 != 12..14'
+ },
+ 'ti': {
+ 'one': 'n = 0..1'
+ },
+ 'tl': {
+ 'one': 'i = 0..1 and v = 0'
+ },
+ 'tzm': {
+ 'one': 'n = 0..1 or n = 11..99'
+ },
+ 'uk': {
+ 'one': 'v = 0 and i % 10 = 1 and i % 100 != 11',
+ 'few': 'v = 0 and i % 10 = 2..4 and i % 100 != 12..14',
+ 'many': 'v = 0 and i % 10 = 0 or v = 0 and i % 10 = 5..9 or v = 0 and i % 100 = 11..14'
+ },
+ 'wa': {
+ 'one': 'n = 0..1'
+ },
+ 'zu': {
+ 'one': 'i = 0 or n = 1'
+ }
+ },
+
+
+ /**
+ * Plural form transformations, needed for some languages.
+ *
+ * @param count
+ * integer Non-localized quantifier
+ * @param forms
+ * array List of plural forms
+ * @return string Correct form for quantifier in this language
+ */
+ convertPlural: function ( count, forms ) {
+ var pluralRules,
+ pluralFormIndex,
+ index,
+ explicitPluralPattern = new RegExp('\\d+=', 'i'),
+ formCount,
+ form;
+
+ if ( !forms || forms.length === 0 ) {
+ return '';
+ }
+
+ // Handle for Explicit 0= & 1= values
+ for ( index = 0; index < forms.length; index++ ) {
+ form = forms[index];
+ if ( explicitPluralPattern.test( form ) ) {
+ formCount = parseInt( form.substring( 0, form.indexOf( '=' ) ), 10 );
+ if ( formCount === count ) {
+ return ( form.substr( form.indexOf( '=' ) + 1 ) );
+ }
+ forms[index] = undefined;
+ }
+ }
+
+ forms = $.map( forms, function ( form ) {
+ if ( form !== undefined ) {
+ return form;
+ }
+ } );
+
+ pluralRules = this.pluralRules[$.i18n().locale];
+
+ if ( !pluralRules ) {
+ // default fallback.
+ return ( count === 1 ) ? forms[0] : forms[1];
+ }
+
+ pluralFormIndex = this.getPluralForm( count, pluralRules );
+ pluralFormIndex = Math.min( pluralFormIndex, forms.length - 1 );
+
+ return forms[pluralFormIndex];
+ },
+
+ /**
+ * For the number, get the plural for index
+ *
+ * @param number
+ * @param pluralRules
+ * @return plural form index
+ */
+ getPluralForm: function ( number, pluralRules ) {
+ var i,
+ pluralForms = [ 'zero', 'one', 'two', 'few', 'many', 'other' ],
+ pluralFormIndex = 0;
+
+ for ( i = 0; i < pluralForms.length; i++ ) {
+ if ( pluralRules[pluralForms[i]] ) {
+ if ( pluralRuleParser( pluralRules[pluralForms[i]], number ) ) {
+ return pluralFormIndex;
+ }
+
+ pluralFormIndex++;
+ }
+ }
+
+ return pluralFormIndex;
+ },
+
+ /**
+ * Converts a number using digitTransformTable.
+ *
+ * @param {number} num Value to be converted
+ * @param {boolean} integer Convert the return value to an integer
+ */
+ 'convertNumber': function ( num, integer ) {
+ var tmp, item, i,
+ transformTable, numberString, convertedNumber;
+
+ // Set the target Transform table:
+ transformTable = this.digitTransformTable( $.i18n().locale );
+ numberString = '' + num;
+ convertedNumber = '';
+
+ if ( !transformTable ) {
+ return num;
+ }
+
+ // Check if the restore to Latin number flag is set:
+ if ( integer ) {
+ if ( parseFloat( num, 10 ) === num ) {
+ return num;
+ }
+
+ tmp = [];
+
+ for ( item in transformTable ) {
+ tmp[transformTable[item]] = item;
+ }
+
+ transformTable = tmp;
+ }
+
+ for ( i = 0; i < numberString.length; i++ ) {
+ if ( transformTable[numberString[i]] ) {
+ convertedNumber += transformTable[numberString[i]];
+ } else {
+ convertedNumber += numberString[i];
+ }
+ }
+
+ return integer ? parseFloat( convertedNumber, 10 ) : convertedNumber;
+ },
+
+ /**
+ * Grammatical transformations, needed for inflected languages.
+ * Invoked by putting {{grammar:form|word}} in a message.
+ * Override this method for languages that need special grammar rules
+ * applied dynamically.
+ *
+ * @param word {String}
+ * @param form {String}
+ * @return {String}
+ */
+ convertGrammar: function ( word, form ) { /*jshint unused: false */
+ return word;
+ },
+
+ /**
+ * Provides an alternative text depending on specified gender. Usage
+ * {{gender:[gender|user object]|masculine|feminine|neutral}}. If second
+ * or third parameter are not specified, masculine is used.
+ *
+ * These details may be overriden per language.
+ *
+ * @param gender
+ * string male, female, or anything else for neutral.
+ * @param forms
+ * array List of gender forms
+ *
+ * @return string
+ */
+ 'gender': function ( gender, forms ) {
+ if ( !forms || forms.length === 0 ) {
+ return '';
+ }
+
+ while ( forms.length < 2 ) {
+ forms.push( forms[forms.length - 1] );
+ }
+
+ if ( gender === 'male' ) {
+ return forms[0];
+ }
+
+ if ( gender === 'female' ) {
+ return forms[1];
+ }
+
+ return ( forms.length === 3 ) ? forms[2] : forms[0];
+ },
+
+ /**
+ * Get the digit transform table for the given language
+ * See http://cldr.unicode.org/translation/numbering-systems
+ * @param language
+ * @returns {Array|boolean} List of digits in the passed language or false
+ * representation, or boolean false if there is no information.
+ */
+ digitTransformTable: function ( language ) {
+ var tables = {
+ ar: '٠١٢٣٤٥٦٧٨٩',
+ fa: '۰۱۲۳۴۵۶۷۸۹',
+ ml: '൦൧൨൩൪൫൬൭൮൯',
+ kn: '೦೧೨೩೪೫೬೭೮೯',
+ lo: '໐໑໒໓໔໕໖໗໘໙',
+ or: '୦୧୨୩୪୫୬୭୮୯',
+ kh: '០១២៣៤៥៦៧៨៩',
+ pa: '੦੧੨੩੪੫੬੭੮੯',
+ gu: '૦૧૨૩૪૫૬૭૮૯',
+ hi: '०१२३४५६७८९',
+ my: '၀၁၂၃၄၅၆၇၈၉',
+ ta: '௦௧௨௩௪௫௬௭௮௯',
+ te: '౦౧౨౩౪౫౬౭౮౯',
+ th: '๐๑๒๓๔๕๖๗๘๙', //FIXME use iso 639 codes
+ bo: '༠༡༢༣༤༥༦༧༨༩' //FIXME use iso 639 codes
+ };
+
+ if ( !tables[language] ) {
+ return false;
+ }
+
+ return tables[language].split( '' );
+ }
+ };
+
+ $.extend( $.i18n.languages, {
+ 'default': language
+ } );
+}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.i18n/jquery.i18n.messagestore.js b/MLEB/UniversalLanguageSelector/lib/jquery.i18n/jquery.i18n.messagestore.js
new file mode 100644
index 00000000..a8e10f9d
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.i18n/jquery.i18n.messagestore.js
@@ -0,0 +1,126 @@
+/**
+ * jQuery Internationalization library - Message Store
+ *
+ * Copyright (C) 2012 Santhosh Thottingal
+ *
+ * jquery.i18n is dual licensed GPLv2 or later and MIT. You don't have to do anything special to
+ * choose one license or the other and you don't have to notify anyone which license you are using.
+ * You are free to use UniversalLanguageSelector in commercial projects as long as the copyright
+ * header is left intact. See files GPL-LICENSE and MIT-LICENSE for details.
+ *
+ * @licence GNU General Public Licence 2.0 or later
+ * @licence MIT License
+ */
+
+( function ( $, window, undefined ) {
+ 'use strict';
+
+ var MessageStore = function () {
+ this.messages = {};
+ this.sources = {};
+ };
+
+ /**
+ * See https://github.com/wikimedia/jquery.i18n/wiki/Specification#wiki-Message_File_Loading
+ */
+ MessageStore.prototype = {
+
+ /**
+ * General message loading API This can take a URL string for
+ * the json formatted messages.
+ * <code>load('path/to/all_localizations.json');</code>
+ *
+ * This can also load a localization file for a locale <code>
+ * load( 'path/to/de-messages.json', 'de' );
+ * </code>
+ * A data object containing message key- message translation mappings
+ * can also be passed Eg:
+ * <code>
+ * load( { 'hello' : 'Hello' }, optionalLocale );
+ * </code> If the data argument is
+ * null/undefined/false,
+ * all cached messages for the i18n instance will get reset.
+ *
+ * @param {String|Object} source
+ * @param {String} locale Language tag
+ * @return {jQuery.Promise}
+ */
+ load: function ( source, locale ) {
+ var key = null,
+ deferred = null,
+ deferreds = [],
+ messageStore = this;
+
+ if ( typeof source === 'string' ) {
+ // This is a URL to the messages file.
+ $.i18n.log( 'Loading messages from: ' + source );
+ deferred = jsonMessageLoader( source )
+ .done( function ( localization ) {
+ messageStore.set( locale, localization );
+ } );
+
+ return deferred.promise();
+ }
+
+ if ( locale ) {
+ // source is an key-value pair of messages for given locale
+ messageStore.set( locale, source );
+
+ return $.Deferred().resolve();
+ } else {
+ // source is a key-value pair of locales and their source
+ for ( key in source ) {
+ if ( Object.prototype.hasOwnProperty.call( source, key ) ) {
+ locale = key;
+ // No {locale} given, assume data is a group of languages,
+ // call this function again for each language.
+ deferreds.push( messageStore.load( source[key], locale ) );
+ }
+ }
+ return $.when.apply( $, deferreds );
+ }
+
+ },
+
+ /**
+ * Set messages to the given locale.
+ * If locale exists, add messages to the locale.
+ * @param locale
+ * @param messages
+ */
+ set: function( locale, messages ) {
+ if ( !this.messages[locale] ) {
+ this.messages[locale] = messages;
+ } else {
+ this.messages[locale] = $.extend( this.messages[locale], messages );
+ }
+ },
+
+ /**
+ *
+ * @param locale
+ * @param messageKey
+ * @returns {Boolean}
+ */
+ get: function ( locale, messageKey ) {
+ return this.messages[locale] && this.messages[locale][messageKey];
+ }
+ };
+
+
+ function jsonMessageLoader( url ) {
+ var deferred = $.Deferred();
+
+ $.getJSON( url )
+ .done( deferred.resolve )
+ .fail( function ( jqxhr, settings, exception ) {
+ $.i18n.log( 'Error in loading messages from ' + url + ' Exception: ' + exception );
+ // Ignore 404 exception, because we are handling fallabacks explicitly
+ deferred.resolve();
+ } );
+
+ return deferred.promise();
+ }
+
+ $.extend( $.i18n.messageStore, new MessageStore() );
+}( jQuery, window ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.i18n/jquery.i18n.parser.js b/MLEB/UniversalLanguageSelector/lib/jquery.i18n/jquery.i18n.parser.js
new file mode 100644
index 00000000..7dc26e6e
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.i18n/jquery.i18n.parser.js
@@ -0,0 +1,309 @@
+/**
+ * jQuery Internationalization library
+ *
+ * Copyright (C) 2011-2013 Santhosh Thottingal, Neil Kandalgaonkar
+ *
+ * jquery.i18n is dual licensed GPLv2 or later and MIT. You don't have to do
+ * anything special to choose one license or the other and you don't have to
+ * notify anyone which license you are using. You are free to use
+ * UniversalLanguageSelector in commercial projects as long as the copyright
+ * header is left intact. See files GPL-LICENSE and MIT-LICENSE for details.
+ *
+ * @licence GNU General Public Licence 2.0 or later
+ * @licence MIT License
+ */
+
+( function ( $ ) {
+ 'use strict';
+
+ var MessageParser = function ( options ) {
+ this.options = $.extend( {}, $.i18n.parser.defaults, options );
+ this.language = $.i18n.languages[String.locale] || $.i18n.languages['default'];
+ this.emitter = $.i18n.parser.emitter;
+ };
+
+ MessageParser.prototype = {
+
+ constructor: MessageParser,
+
+ simpleParse: function ( message, parameters ) {
+ return message.replace( /\$(\d+)/g, function ( str, match ) {
+ var index = parseInt( match, 10 ) - 1;
+
+ return parameters[index] !== undefined ? parameters[index] : '$' + match;
+ } );
+ },
+
+ parse: function ( message, replacements ) {
+ if ( message.indexOf( '{{' ) < 0 ) {
+ return this.simpleParse( message, replacements );
+ }
+
+ this.emitter.language = $.i18n.languages[$.i18n().locale] ||
+ $.i18n.languages['default'];
+
+ return this.emitter.emit( this.ast( message ), replacements );
+ },
+
+ ast: function ( message ) {
+ var pipe, colon, backslash, anyCharacter, dollar, digits, regularLiteral,
+ regularLiteralWithoutBar, regularLiteralWithoutSpace, escapedOrLiteralWithoutBar,
+ escapedOrRegularLiteral, templateContents, templateName, openTemplate,
+ closeTemplate, expression, paramExpression, result,
+ pos = 0;
+
+ // Try parsers until one works, if none work return null
+ function choice ( parserSyntax ) {
+ return function () {
+ var i, result;
+
+ for ( i = 0; i < parserSyntax.length; i++ ) {
+ result = parserSyntax[i]();
+
+ if ( result !== null ) {
+ return result;
+ }
+ }
+
+ return null;
+ };
+ }
+
+ // Try several parserSyntax-es in a row.
+ // All must succeed; otherwise, return null.
+ // This is the only eager one.
+ function sequence ( parserSyntax ) {
+ var i, res,
+ originalPos = pos,
+ result = [];
+
+ for ( i = 0; i < parserSyntax.length; i++ ) {
+ res = parserSyntax[i]();
+
+ if ( res === null ) {
+ pos = originalPos;
+
+ return null;
+ }
+
+ result.push( res );
+ }
+
+ return result;
+ }
+
+ // Run the same parser over and over until it fails.
+ // Must succeed a minimum of n times; otherwise, return null.
+ function nOrMore ( n, p ) {
+ return function () {
+ var originalPos = pos,
+ result = [],
+ parsed = p();
+
+ while ( parsed !== null ) {
+ result.push( parsed );
+ parsed = p();
+ }
+
+ if ( result.length < n ) {
+ pos = originalPos;
+
+ return null;
+ }
+
+ return result;
+ };
+ }
+
+ // Helpers -- just make parserSyntax out of simpler JS builtin types
+
+ function makeStringParser ( s ) {
+ var len = s.length;
+
+ return function () {
+ var result = null;
+
+ if ( message.substr( pos, len ) === s ) {
+ result = s;
+ pos += len;
+ }
+
+ return result;
+ };
+ }
+
+ function makeRegexParser ( regex ) {
+ return function () {
+ var matches = message.substr( pos ).match( regex );
+
+ if ( matches === null ) {
+ return null;
+ }
+
+ pos += matches[0].length;
+
+ return matches[0];
+ };
+ }
+
+ pipe = makeStringParser( '|' );
+ colon = makeStringParser( ':' );
+ backslash = makeStringParser( '\\' );
+ anyCharacter = makeRegexParser( /^./ );
+ dollar = makeStringParser( '$' );
+ digits = makeRegexParser( /^\d+/ );
+ regularLiteral = makeRegexParser( /^[^{}\[\]$\\]/ );
+ regularLiteralWithoutBar = makeRegexParser( /^[^{}\[\]$\\|]/ );
+ regularLiteralWithoutSpace = makeRegexParser( /^[^{}\[\]$\s]/ );
+
+ // There is a general pattern:
+ // parse a thing;
+ // if it worked, apply transform,
+ // otherwise return null.
+ // But using this as a combinator seems to cause problems
+ // when combined with nOrMore().
+ // May be some scoping issue.
+ function transform ( p, fn ) {
+ return function () {
+ var result = p();
+
+ return result === null ? null : fn( result );
+ };
+ }
+
+ // Used to define "literals" within template parameters. The pipe
+ // character is the parameter delimeter, so by default
+ // it is not a literal in the parameter
+ function literalWithoutBar () {
+ var result = nOrMore( 1, escapedOrLiteralWithoutBar )();
+
+ return result === null ? null : result.join( '' );
+ }
+
+ function literal () {
+ var result = nOrMore( 1, escapedOrRegularLiteral )();
+
+ return result === null ? null : result.join( '' );
+ }
+
+ function escapedLiteral () {
+ var result = sequence( [ backslash, anyCharacter ] );
+
+ return result === null ? null : result[1];
+ }
+
+ choice( [ escapedLiteral, regularLiteralWithoutSpace ] );
+ escapedOrLiteralWithoutBar = choice( [ escapedLiteral, regularLiteralWithoutBar ] );
+ escapedOrRegularLiteral = choice( [ escapedLiteral, regularLiteral ] );
+
+ function replacement () {
+ var result = sequence( [ dollar, digits ] );
+
+ if ( result === null ) {
+ return null;
+ }
+
+ return [ 'REPLACE', parseInt( result[1], 10 ) - 1 ];
+ }
+
+ templateName = transform(
+ // see $wgLegalTitleChars
+ // not allowing : due to the need to catch "PLURAL:$1"
+ makeRegexParser( /^[ !"$&'()*,.\/0-9;=?@A-Z\^_`a-z~\x80-\xFF+\-]+/ ),
+
+ function ( result ) {
+ return result.toString();
+ }
+ );
+
+ function templateParam () {
+ var expr,
+ result = sequence( [ pipe, nOrMore( 0, paramExpression ) ] );
+
+ if ( result === null ) {
+ return null;
+ }
+
+ expr = result[1];
+
+ // use a "CONCAT" operator if there are multiple nodes,
+ // otherwise return the first node, raw.
+ return expr.length > 1 ? [ 'CONCAT' ].concat( expr ) : expr[0];
+ }
+
+ function templateWithReplacement () {
+ var result = sequence( [ templateName, colon, replacement ] );
+
+ return result === null ? null : [ result[0], result[2] ];
+ }
+
+ function templateWithOutReplacement () {
+ var result = sequence( [ templateName, colon, paramExpression ] );
+
+ return result === null ? null : [ result[0], result[2] ];
+ }
+
+ templateContents = choice( [
+ function () {
+ var res = sequence( [
+ // templates can have placeholders for dynamic
+ // replacement eg: {{PLURAL:$1|one car|$1 cars}}
+ // or no placeholders eg:
+ // {{GRAMMAR:genitive|{{SITENAME}}}
+ choice( [ templateWithReplacement, templateWithOutReplacement ] ),
+ nOrMore( 0, templateParam )
+ ] );
+
+ return res === null ? null : res[0].concat( res[1] );
+ },
+ function () {
+ var res = sequence( [ templateName, nOrMore( 0, templateParam ) ] );
+
+ if ( res === null ) {
+ return null;
+ }
+
+ return [ res[0] ].concat( res[1] );
+ }
+ ] );
+
+ openTemplate = makeStringParser( '{{' );
+ closeTemplate = makeStringParser( '}}' );
+
+ function template () {
+ var result = sequence( [ openTemplate, templateContents, closeTemplate ] );
+
+ return result === null ? null : result[1];
+ }
+
+ expression = choice( [ template, replacement, literal ] );
+ paramExpression = choice( [ template, replacement, literalWithoutBar ] );
+
+ function start () {
+ var result = nOrMore( 0, expression )();
+
+ if ( result === null ) {
+ return null;
+ }
+
+ return [ 'CONCAT' ].concat( result );
+ }
+
+ result = start();
+
+ /*
+ * For success, the pos must have gotten to the end of the input
+ * and returned a non-null.
+ * n.b. This is part of language infrastructure, so we do not throw an internationalizable message.
+ */
+ if ( result === null || pos !== message.length ) {
+ throw new Error( 'Parse error at position ' + pos.toString() + ' in input: ' + message );
+ }
+
+ return result;
+ }
+
+ };
+
+ $.extend( $.i18n.parser, new MessageParser() );
+}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.i18n/languages/bs.js b/MLEB/UniversalLanguageSelector/lib/jquery.i18n/languages/bs.js
new file mode 100644
index 00000000..5370069e
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.i18n/languages/bs.js
@@ -0,0 +1,22 @@
+/**
+ * Bosnian (bosanski) language functions
+ */
+( function ( $ ) {
+ 'use strict';
+
+ $.i18n.languages.bs = $.extend( {}, $.i18n.languages['default'], {
+ convertGrammar: function ( word, form ) {
+ switch ( form ) {
+ case 'instrumental': // instrumental
+ word = 's ' + word;
+ break;
+ case 'lokativ': // locative
+ word = 'o ' + word;
+ break;
+ }
+
+ return word;
+ }
+ } );
+
+}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.i18n/languages/dsb.js b/MLEB/UniversalLanguageSelector/lib/jquery.i18n/languages/dsb.js
new file mode 100644
index 00000000..cc069ebf
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.i18n/languages/dsb.js
@@ -0,0 +1,22 @@
+/**
+ * Lower Sorbian (Dolnoserbski) language functions
+ */
+( function ( $ ) {
+ 'use strict';
+
+ $.i18n.languages.dsb = $.extend( {}, $.i18n.languages['default'], {
+ convertGrammar: function ( word, form ) {
+ switch ( form ) {
+ case 'instrumental': // instrumental
+ word = 'z ' + word;
+ break;
+ case 'lokatiw': // lokatiw
+ word = 'wo ' + word;
+ break;
+ }
+
+ return word;
+ }
+ } );
+
+}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.i18n/languages/fi.js b/MLEB/UniversalLanguageSelector/lib/jquery.i18n/languages/fi.js
new file mode 100644
index 00000000..d8e9578a
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.i18n/languages/fi.js
@@ -0,0 +1,49 @@
+/**
+ * Finnish (Suomi) language functions
+ *
+ * @author Santhosh Thottingal
+ */
+
+( function ( $ ) {
+ 'use strict';
+
+ $.i18n.languages.fi = $.extend( {}, $.i18n.languages['default'], {
+ convertGrammar: function ( word, form ) {
+ // vowel harmony flag
+ var aou = word.match( /[aou][^äöy]*$/i ),
+ origWord = word;
+ if ( word.match( /wiki$/i ) ) {
+ aou = false;
+ }
+
+ // append i after final consonant
+ if ( word.match( /[bcdfghjklmnpqrstvwxz]$/i ) ) {
+ word += 'i';
+ }
+
+ switch ( form ) {
+ case 'genitive':
+ word += 'n';
+ break;
+ case 'elative':
+ word += ( aou ? 'sta' : 'stä' );
+ break;
+ case 'partitive':
+ word += ( aou ? 'a' : 'ä' );
+ break;
+ case 'illative':
+ // Double the last letter and add 'n'
+ word += word.substr( word.length - 1 ) + 'n';
+ break;
+ case 'inessive':
+ word += ( aou ? 'ssa' : 'ssä' );
+ break;
+ default:
+ word = origWord;
+ break;
+ }
+
+ return word;
+ }
+ } );
+}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.i18n/languages/ga.js b/MLEB/UniversalLanguageSelector/lib/jquery.i18n/languages/ga.js
new file mode 100644
index 00000000..1aceab75
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.i18n/languages/ga.js
@@ -0,0 +1,38 @@
+/**
+ * Irish (Gaeilge) language functions
+ */
+( function ( $ ) {
+ 'use strict';
+
+ $.i18n.languages.ga = $.extend( {}, $.i18n.languages['default'], {
+ convertGrammar: function ( word, form ) {
+ if ( form === 'ainmlae' ) {
+ switch ( word ) {
+ case 'an Domhnach':
+ word = 'Dé Domhnaigh';
+ break;
+ case 'an Luan':
+ word = 'Dé Luain';
+ break;
+ case 'an Mháirt':
+ word = 'Dé Mháirt';
+ break;
+ case 'an Chéadaoin':
+ word = 'Dé Chéadaoin';
+ break;
+ case 'an Déardaoin':
+ word = 'Déardaoin';
+ break;
+ case 'an Aoine':
+ word = 'Dé hAoine';
+ break;
+ case 'an Satharn':
+ word = 'Dé Sathairn';
+ break;
+ }
+ }
+
+ return word;
+ }
+ } );
+}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.i18n/languages/he.js b/MLEB/UniversalLanguageSelector/lib/jquery.i18n/languages/he.js
new file mode 100644
index 00000000..cbbe90b9
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.i18n/languages/he.js
@@ -0,0 +1,31 @@
+/**
+ * Hebrew (עברית) language functions
+ */
+( function ( $ ) {
+ 'use strict';
+
+ $.i18n.languages.he = $.extend( {}, $.i18n.languages['default'], {
+ convertGrammar: function ( word, form ) {
+ switch ( form ) {
+ case 'prefixed':
+ case 'תחילית': // the same word in Hebrew
+ // Duplicate prefixed "Waw", but only if it's not already double
+ if ( word.substr( 0, 1 ) === 'ו' && word.substr( 0, 2 ) !== 'וו' ) {
+ word = 'ו' + word;
+ }
+
+ // Remove the "He" if prefixed
+ if ( word.substr( 0, 1 ) === 'ה' ) {
+ word = word.substr( 1, word.length );
+ }
+
+ // Add a hyphen (maqaf) before numbers and non-Hebrew letters
+ if ( word.substr( 0, 1 ) < 'א' || word.substr( 0, 1 ) > 'ת' ) {
+ word = '־' + word;
+ }
+ }
+
+ return word;
+ }
+ } );
+}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.i18n/languages/hsb.js b/MLEB/UniversalLanguageSelector/lib/jquery.i18n/languages/hsb.js
new file mode 100644
index 00000000..957616f6
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.i18n/languages/hsb.js
@@ -0,0 +1,21 @@
+/**
+ * Upper Sorbian (Hornjoserbsce) language functions
+ */
+( function ( $ ) {
+ 'use strict';
+
+ $.i18n.languages.hsb = $.extend( {}, $.i18n.languages['default'], {
+ convertGrammar: function ( word, form ) {
+ switch ( form ) {
+ case 'instrumental': // instrumental
+ word = 'z ' + word;
+ break;
+ case 'lokatiw': // lokatiw
+ word = 'wo ' + word;
+ break;
+ }
+
+ return word;
+ }
+ } );
+}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.i18n/languages/hu.js b/MLEB/UniversalLanguageSelector/lib/jquery.i18n/languages/hu.js
new file mode 100644
index 00000000..1177b850
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.i18n/languages/hu.js
@@ -0,0 +1,26 @@
+/**
+ * Hungarian language functions
+ *
+ * @author Santhosh Thottingal
+ */
+( function ( $ ) {
+ 'use strict';
+
+ $.i18n.languages.hu = $.extend( {}, $.i18n.languages['default'], {
+ convertGrammar: function ( word, form ) {
+ switch ( form ) {
+ case 'rol':
+ word += 'ról';
+ break;
+ case 'ba':
+ word += 'ba';
+ break;
+ case 'k':
+ word += 'k';
+ break;
+ }
+
+ return word;
+ }
+ } );
+}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.i18n/languages/hy.js b/MLEB/UniversalLanguageSelector/lib/jquery.i18n/languages/hy.js
new file mode 100644
index 00000000..9c568992
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.i18n/languages/hy.js
@@ -0,0 +1,25 @@
+/**
+ * Armenian (Հայերեն) language functions
+ */
+
+( function ( $ ) {
+ 'use strict';
+
+ $.i18n.languages.hy = $.extend( {}, $.i18n.languages['default'], {
+ convertGrammar: function ( word, form ) {
+ if ( form === 'genitive' ) { // սեռական հոլով
+ if ( word.substr( -1 ) === 'ա' ) {
+ word = word.substr( 0, word.length - 1 ) + 'այի';
+ } else if ( word.substr( -1 ) === 'ո' ) {
+ word = word.substr( 0, word.length - 1 ) + 'ոյի';
+ } else if ( word.substr( -4 ) === 'գիրք' ) {
+ word = word.substr( 0, word.length - 4 ) + 'գրքի';
+ } else {
+ word = word + 'ի';
+ }
+ }
+
+ return word;
+ }
+ } );
+}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.i18n/languages/la.js b/MLEB/UniversalLanguageSelector/lib/jquery.i18n/languages/la.js
new file mode 100644
index 00000000..11c1122d
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.i18n/languages/la.js
@@ -0,0 +1,54 @@
+/**
+ * Latin (lingua Latina) language functions
+ *
+ * @author Santhosh Thottingal
+ */
+
+( function ( $ ) {
+ 'use strict';
+
+ $.i18n.languages.la = $.extend( {}, $.i18n.languages['default'], {
+ convertGrammar: function ( word, form ) {
+ switch ( form ) {
+ case 'genitive':
+ // only a few declensions, and even for those mostly the singular only
+ word = word.replace( /u[ms]$/i, 'i' ); // 2nd declension singular
+ word = word.replace( /ommunia$/i, 'ommunium' ); // 3rd declension neuter plural (partly)
+ word = word.replace( /a$/i, 'ae' ); // 1st declension singular
+ word = word.replace( /libri$/i, 'librorum' ); // 2nd declension plural (partly)
+ word = word.replace( /nuntii$/i, 'nuntiorum' ); // 2nd declension plural (partly)
+ word = word.replace( /tio$/i, 'tionis' ); // 3rd declension singular (partly)
+ word = word.replace( /ns$/i, 'ntis' );
+ word = word.replace( /as$/i, 'atis' );
+ word = word.replace( /es$/i, 'ei' ); // 5th declension singular
+ break;
+ case 'accusative':
+ // only a few declensions, and even for those mostly the singular only
+ word = word.replace( /u[ms]$/i, 'um' ); // 2nd declension singular
+ word = word.replace( /ommunia$/i, 'am' ); // 3rd declension neuter plural (partly)
+ word = word.replace( /a$/i, 'ommunia' ); // 1st declension singular
+ word = word.replace( /libri$/i, 'libros' ); // 2nd declension plural (partly)
+ word = word.replace( /nuntii$/i, 'nuntios' );// 2nd declension plural (partly)
+ word = word.replace( /tio$/i, 'tionem' ); // 3rd declension singular (partly)
+ word = word.replace( /ns$/i, 'ntem' );
+ word = word.replace( /as$/i, 'atem' );
+ word = word.replace( /es$/i, 'em' ); // 5th declension singular
+ break;
+ case 'ablative':
+ // only a few declensions, and even for those mostly the singular only
+ word = word.replace( /u[ms]$/i, 'o' ); // 2nd declension singular
+ word = word.replace( /ommunia$/i, 'ommunibus' ); // 3rd declension neuter plural (partly)
+ word = word.replace( /a$/i, 'a' ); // 1st declension singular
+ word = word.replace( /libri$/i, 'libris' ); // 2nd declension plural (partly)
+ word = word.replace( /nuntii$/i, 'nuntiis' ); // 2nd declension plural (partly)
+ word = word.replace( /tio$/i, 'tione' ); // 3rd declension singular (partly)
+ word = word.replace( /ns$/i, 'nte' );
+ word = word.replace( /as$/i, 'ate' );
+ word = word.replace( /es$/i, 'e' ); // 5th declension singular
+ break;
+ }
+
+ return word;
+ }
+ } );
+}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.i18n/languages/ml.js b/MLEB/UniversalLanguageSelector/lib/jquery.i18n/languages/ml.js
new file mode 100644
index 00000000..f724b7b2
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.i18n/languages/ml.js
@@ -0,0 +1,98 @@
+/**
+ * Malayalam language functions
+ *
+ * @author Santhosh Thottingal
+ */
+
+( function ( $ ) {
+ 'use strict';
+
+ $.i18n.languages.ml = $.extend( {}, $.i18n.languages['default'], {
+ convertGrammar: function ( word, form ) {
+ form = form.toLowerCase();
+ switch ( form ) {
+ case 'ഉദ്ദേശിക':
+ case 'dative':
+ if ( word.substr( -1 ) === 'ു' ||
+ word.substr( -1 ) === 'ൂ' ||
+ word.substr( -1 ) === 'ൗ' ||
+ word.substr( -1 ) === 'ൌ'
+ ) {
+ word += 'വിന്';
+ } else if ( word.substr( -1 ) === 'ം' ) {
+ word = word.substr( 0, word.length - 1 ) + 'ത്തിന്';
+ } else if ( word.substr( -1 ) === 'ൻ' ) {
+ // Atomic chillu n. അവൻ -> അവന്
+ word = word.substr( 0, word.length - 1 ) + 'ന്';
+ } else if ( word.substr( -3 ) === 'ന്\u200d' ) {
+ // chillu n. അവൻ -> അവന്
+ word = word.substr( 0, word.length - 1 );
+ } else if ( word.substr( -1 ) === 'ൾ' || word.substr( -3 ) === 'ള്\u200d' ) {
+ word += 'ക്ക്';
+ } else if ( word.substr( -1 ) === 'ർ' || word.substr( -3 ) === 'ര്\u200d' ) {
+ word += 'ക്ക്';
+ } else if ( word.substr( -1 ) === 'ൽ' ) {
+ // Atomic chillu ൽ , ഫയൽ -> ഫയലിന്
+ word = word.substr( 0, word.length - 1 ) + 'ലിന്';
+ } else if ( word.substr( -3 ) === 'ല്\u200d' ) {
+ // chillu ല്\u200d , ഫയല്\u200d -> ഫയലിന്
+ word = word.substr( 0, word.length - 2 ) + 'ിന്';
+ } else if ( word.substr( -2 ) === 'ു്' ) {
+ word = word.substr( 0, word.length - 2 ) + 'ിന്';
+ } else if ( word.substr( -1 ) === '്' ) {
+ word = word.substr( 0, word.length - 1 ) + 'ിന്';
+ } else {
+ // കാവ്യ -> കാവ്യയ്ക്ക്, ഹരി -> ഹരിയ്ക്ക്, മല -> മലയ്ക്ക്
+ word += 'യ്ക്ക്';
+ }
+
+ break;
+ case 'സംബന്ധിക':
+ case 'genitive':
+ if ( word.substr( -1 ) === 'ം' ) {
+ word = word.substr( 0, word.length - 1 ) + 'ത്തിന്റെ';
+ } else if ( word.substr( -2 ) === 'ു്' ) {
+ word = word.substr( 0, word.length - 2 ) + 'ിന്റെ';
+ } else if ( word.substr( -1 ) === '്' ) {
+ word = word.substr( 0, word.length - 1 ) + 'ിന്റെ';
+ } else if ( word.substr( -1 ) === 'ു' ||
+ word.substr( -1 ) === 'ൂ' ||
+ word.substr( -1 ) === 'ൗ' ||
+ word.substr( -1 ) === 'ൌ'
+ ) {
+ word += 'വിന്റെ';
+ } else if ( word.substr( -1 ) === 'ൻ' ) {
+ // Atomic chillu n. അവൻ -> അവന്റെ
+ word = word.substr( 0, word.length - 1 ) + 'ന്റെ';
+ } else if ( word.substr( -3 ) === 'ന്\u200d' ) {
+ // chillu n. അവൻ -> അവന്റെ
+ word = word.substr( 0, word.length - 1 ) + 'റെ';
+ } else if ( word.substr( -3 ) === 'ള്\u200d' ) {
+ // chillu n. അവൾ -> അവളുടെ
+ word = word.substr( 0, word.length - 2 ) + 'ുടെ';
+ } else if ( word.substr( -1 ) === 'ൾ' ) {
+ // Atomic chillu n. അവള്\u200d -> അവളുടെ
+ word = word.substr( 0, word.length - 1 ) + 'ളുടെ';
+ } else if ( word.substr( -1 ) === 'ൽ' ) {
+ // Atomic l. മുയല്\u200d -> മുയലിന്റെ
+ word = word.substr( 0, word.length - 1 ) + 'ലിന്റെ';
+ } else if ( word.substr( -3 ) === 'ല്\u200d' ) {
+ // chillu l. മുയല്\u200d -> അവളുടെ
+ word = word.substr( 0, word.length - 2 ) + 'ിന്റെ';
+ } else if ( word.substr( -3 ) === 'ര്\u200d' ) {
+ // chillu r. അവര്\u200d -> അവരുടെ
+ word = word.substr( 0, word.length - 2 ) + 'ുടെ';
+ } else if ( word.substr( -1 ) === 'ർ' ) {
+ // Atomic chillu r. അവർ -> അവരുടെ
+ word = word.substr( 0, word.length - 1 ) + 'രുടെ';
+ } else {
+ word += 'യുടെ';
+ }
+
+ break;
+ }
+
+ return word;
+ }
+ } );
+}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.i18n/languages/os.js b/MLEB/UniversalLanguageSelector/lib/jquery.i18n/languages/os.js
new file mode 100644
index 00000000..67dccfb3
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.i18n/languages/os.js
@@ -0,0 +1,78 @@
+/**
+ * Ossetian (Ирон) language functions
+ *
+ * @author Santhosh Thottingal
+ */
+
+( function ( $ ) {
+ 'use strict';
+
+ $.i18n.languages.os = $.extend( {}, $.i18n.languages['default'], {
+ convertGrammar: function ( word, form ) {
+ var endAllative, jot, hyphen, ending;
+
+ // Ending for allative case
+ endAllative = 'мæ';
+ // Variable for 'j' beetwen vowels
+ jot = '';
+ // Variable for "-" for not Ossetic words
+ hyphen = '';
+ // Variable for ending
+ ending = '';
+
+ // Checking if the $word is in plural form
+ if ( word.match( /тæ$/i ) ) {
+ word = word.substring( 0, word.length - 1 );
+ endAllative = 'æм';
+ }
+ // Works if word is in singular form.
+ // Checking if word ends on one of the vowels: е, ё, и, о, ы, э, ю,
+ // я.
+ else if ( word.match( /[аæеёиоыэюя]$/i ) ) {
+ jot = 'й';
+ }
+ // Checking if word ends on 'у'. 'У' can be either consonant 'W' or
+ // vowel 'U' in cyrillic Ossetic.
+ // Examples: {{grammar:genitive|аунеу}} = аунеуы,
+ // {{grammar:genitive|лæппу}} = лæппуйы.
+ else if ( word.match( /у$/i ) ) {
+ if ( !word.substring( word.length - 2, word.length - 1 )
+ .match( /[аæеёиоыэюя]$/i ) ) {
+ jot = 'й';
+ }
+ } else if ( !word.match( /[бвгджзйклмнопрстфхцчшщьъ]$/i ) ) {
+ hyphen = '-';
+ }
+
+ switch ( form ) {
+ case 'genitive':
+ ending = hyphen + jot + 'ы';
+ break;
+ case 'dative':
+ ending = hyphen + jot + 'æн';
+ break;
+ case 'allative':
+ ending = hyphen + endAllative;
+ break;
+ case 'ablative':
+ if ( jot === 'й' ) {
+ ending = hyphen + jot + 'æ';
+ } else {
+ ending = hyphen + jot + 'æй';
+ }
+ break;
+ case 'superessive':
+ ending = hyphen + jot + 'ыл';
+ break;
+ case 'equative':
+ ending = hyphen + jot + 'ау';
+ break;
+ case 'comitative':
+ ending = hyphen + 'имæ';
+ break;
+ }
+
+ return word + ending;
+ }
+ } );
+}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.i18n/languages/ru.js b/MLEB/UniversalLanguageSelector/lib/jquery.i18n/languages/ru.js
new file mode 100644
index 00000000..893b2386
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.i18n/languages/ru.js
@@ -0,0 +1,29 @@
+/**
+ * Russian (Русский) language functions
+ */
+
+( function ( $ ) {
+ 'use strict';
+
+ $.i18n.languages.ru = $.extend( {}, $.i18n.languages['default'], {
+ convertGrammar: function ( word, form ) {
+ if ( form === 'genitive' ) { // родительный падеж
+ if ( word.substr( -1 ) === 'ь' ) {
+ word = word.substr( 0, word.length - 1 ) + 'я';
+ } else if ( word.substr( -2 ) === 'ия' ) {
+ word = word.substr( 0, word.length - 2 ) + 'ии';
+ } else if ( word.substr( -2 ) === 'ка' ) {
+ word = word.substr( 0, word.length - 2 ) + 'ки';
+ } else if ( word.substr( -2 ) === 'ти' ) {
+ word = word.substr( 0, word.length - 2 ) + 'тей';
+ } else if ( word.substr( -2 ) === 'ды' ) {
+ word = word.substr( 0, word.length - 2 ) + 'дов';
+ } else if ( word.substr( -3 ) === 'ник' ) {
+ word = word.substr( 0, word.length - 3 ) + 'ника';
+ }
+ }
+
+ return word;
+ }
+ } );
+}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.i18n/languages/sl.js b/MLEB/UniversalLanguageSelector/lib/jquery.i18n/languages/sl.js
new file mode 100644
index 00000000..a3aafc3b
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.i18n/languages/sl.js
@@ -0,0 +1,26 @@
+/**
+ * Slovenian (Slovenščina) language functions
+ */
+
+( function ( $ ) {
+ 'use strict';
+
+ $.i18n.languages.sl = $.extend( {}, $.i18n.languages['default'], {
+ convertGrammar: function ( word, form ) {
+ switch ( form ) {
+ // locative
+ case 'mestnik':
+ word = 'o ' + word;
+
+ break;
+ // instrumental
+ case 'orodnik':
+ word = 'z ' + word;
+
+ break;
+ }
+
+ return word;
+ }
+ } );
+}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.i18n/languages/uk.js b/MLEB/UniversalLanguageSelector/lib/jquery.i18n/languages/uk.js
new file mode 100644
index 00000000..8e69efcd
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.i18n/languages/uk.js
@@ -0,0 +1,39 @@
+/**
+ * Ukrainian (Українська) language functions
+ */
+
+( function ( $ ) {
+ 'use strict';
+
+ $.i18n.languages.uk = $.extend( {}, $.i18n.languages['default'], {
+ convertGrammar: function ( word, form ) {
+ switch ( form ) {
+ case 'genitive': // родовий відмінок
+ if ( word.substr( -1 ) === 'ь' ) {
+ word = word.substr( 0, word.length - 1 ) + 'я';
+ } else if ( word.substr( -2 ) === 'ія' ) {
+ word = word.substr( 0, word.length - 2 ) + 'ії';
+ } else if ( word.substr( -2 ) === 'ка' ) {
+ word = word.substr( 0, word.length - 2 ) + 'ки';
+ } else if ( word.substr( -2 ) === 'ти' ) {
+ word = word.substr( 0, word.length - 2 ) + 'тей';
+ } else if ( word.substr( -2 ) === 'ды' ) {
+ word = word.substr( 0, word.length - 2 ) + 'дов';
+ } else if ( word.substr( -3 ) === 'ник' ) {
+ word = word.substr( 0, word.length - 3 ) + 'ника';
+ }
+
+ break;
+ case 'accusative': // знахідний відмінок
+ if ( word.substr( -2 ) === 'ія' ) {
+ word = word.substr( 0, word.length - 2 ) + 'ію';
+ }
+
+ break;
+ }
+
+ return word;
+ }
+ } );
+
+}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/css/jquery.ime.css b/MLEB/UniversalLanguageSelector/lib/jquery.ime/css/jquery.ime.css
new file mode 100644
index 00000000..9a254cc5
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/css/jquery.ime.css
@@ -0,0 +1,220 @@
+.imeselector {
+ position: absolute;
+ /* @embed */
+ background: url('../images/ime-active.png') no-repeat left center;
+ /* @embed */
+ background-image: -webkit-linear-gradient(transparent, transparent), url('../images/ime-active.svg');
+ /* @embed */
+ background-image: linear-gradient(transparent, transparent), url('../images/ime-active.svg');
+ background-color: rgba(255,255,255,0.75);
+ background-position: left 3px center;
+ background-position-x: 3px;
+ height: 15px;
+ font-size: small;
+ padding: 2px 2px 1px 20px;
+ box-shadow: 0 1px 3px 0 #777;
+ margin-top: 0;
+ text-align: left;
+ font-family: sans-serif;
+ white-space: nowrap;
+ z-index: 1000;
+}
+
+.imeselector:hover {
+ box-shadow: 0 1px 3px 0 #565656;
+ border-top: none;
+ background-color: rgba(255,255,255,0.85);
+}
+
+.imeselector a,
+.ime-disable {
+ cursor: pointer;
+ text-decoration: none;
+ outline: none;
+ color: #222222;
+ line-height: 1em;
+ padding-top: 4px;
+ padding-bottom: 4px;
+}
+
+.ime-setting-caret {
+ margin-left: 2px;
+ margin-top: 8px;
+ border-left: 4px solid transparent;
+ border-right: 4px solid transparent;
+ border-top: 4px solid #565656;
+ content: "";
+ display: inline-block;
+ height: 0;
+ vertical-align: top;
+ width: 0;
+
+}
+
+span.ime-disable-link {
+ padding-left: 20px;
+ white-space: nowrap;
+}
+
+span.ime-disable-shortcut {
+ text-align: right;
+ margin-left: 10px;
+ color: #888;
+ font-size: smaller;
+ padding-right: 4px;
+}
+
+.ime-list-title,
+.ime-lang-title {
+ color: #39d;
+ border-bottom: solid 1px #39d;
+ text-align: left;
+ font-size: larger;
+ font-weight: normal;
+ padding-bottom: 5px;
+ padding-left: 20px;
+ padding-top: 9px;
+ margin: 0 0 1px;
+}
+
+.ime-language-list-wrapper {
+ position: relative;
+ padding: 0;
+ display: block;
+ overflow-y: auto;
+ max-height: 150px;
+}
+
+.imeselector-menu {
+ position: absolute;
+ top: 14px;
+ right: 0;
+ z-index: 1000;
+ display: none;
+ float: left;
+ margin-top: 13px;
+ min-width: 160px;
+ padding: 0;
+ border: 1px solid #888;
+ background-color: #FFFFFF;
+ border-radius: 5px;
+ -webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);
+ -moz-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);
+ box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);
+ -webkit-background-clip: padding-box;
+ -moz-background-clip: padding;
+ background-clip: padding-box;
+ text-align: left;
+}
+
+.imeselector-menu.ime-right {
+ right: auto;
+}
+
+.imeselector-menu ul {
+ width: 100%;
+ padding: 0;
+ margin: 0;
+ list-style: none;
+}
+
+/* The triangle shaped callout */
+.imeselector-menu:before {
+ border-bottom: 7px solid #888;
+ border-left: 7px solid transparent;
+ border-right: 7px solid transparent;
+ content: "";
+ display: inline-block;
+ right: 9px;
+ position: absolute;
+ top: -7px;
+}
+
+.imeselector-menu.ime-right:before {
+ right: auto;
+ left: 9px;
+}
+
+.imeselector-menu:after {
+ border-bottom: 6px solid #FFFFFF;
+ border-left: 6px solid transparent;
+ border-right: 6px solid transparent;
+ content: "";
+ display: inline-block;
+ right: 10px;
+ position: absolute;
+ top: -6px;
+}
+
+
+.imeselector-menu.ime-right:after {
+ right: auto;
+ left: 10px;
+}
+
+.imeselector-menu.ime-position-top:before {
+ border-bottom: 0 none;
+ border-top: 7px solid #888;
+ top: auto;
+ bottom: -7px;
+}
+
+.imeselector-menu.ime-position-top:after {
+ border-bottom: 0 none;
+ border-top: 6px solid #FFFFFF;
+ top: auto;
+ bottom: -6px;
+}
+
+.imeselector-menu .ime-checked {
+ /* @embed */
+ background: url(../images/tick.png) no-repeat left center;
+ /* @embed */
+ background-image: -webkit-linear-gradient(transparent, transparent), url('../images/tick.svg');
+ /* @embed */
+ background-image: linear-gradient(transparent, transparent), url('../images/tick.svg');
+ background-position: left 4px center;
+ background-position-x: 4px;
+}
+
+.imeselector-menu .ime-help-link {
+ background-color: #f0f0f0;
+ border-radius: 0 0 5px 5px;
+ border-top: 1px solid #ddd;
+ margin-top: 6px;
+ padding: 2px 0;
+ color: #444;
+}
+
+.imeselector-menu .ime-help-link > a:hover {
+ background-color: #f0f0f0;
+ color: #000;
+}
+
+.imeselector-menu .selectable-row-item {
+ display: block;
+ padding-left: 20px;
+ padding-right: 20px;
+ font-weight: normal;
+ color: #333333;
+ outline: none;
+ white-space: nowrap;
+ position: relative;
+}
+
+.imeselector-menu .selectable-row {
+ cursor: pointer;
+}
+
+.imeselector-menu .selectable-row:hover {
+ background-color: #f0f0f0;
+}
+
+.ime-open {
+ *z-index: 1000;
+ display: block;
+}
+
+.imeselector-menu li {
+ position: relative;
+}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/images/ime-active.png b/MLEB/UniversalLanguageSelector/lib/jquery.ime/images/ime-active.png
new file mode 100644
index 00000000..e299c827
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/images/ime-active.png
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/images/ime-active.svg b/MLEB/UniversalLanguageSelector/lib/jquery.ime/images/ime-active.svg
new file mode 100644
index 00000000..a9dcfdb2
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/images/ime-active.svg
@@ -0,0 +1 @@
+<?xml version="1.0" encoding="UTF-8"?><svg xmlns="http://www.w3.org/2000/svg" width="15" height="11"><path d="M9 1.281c-.124.259-.185.599-.5.688-.55.081-1.133.018-1.688 0-.866-.032-1.733-.148-2.594 0-.588.157-.953.727-1.188 1.25-.178.416-.271.836-.344 1.281h-2.688v11.5h20v-11.5h-16.344c.109-.52.203-1.057.563-1.469.222-.231.587-.17.875-.188 1.212.003 2.415.179 3.625.063.463-.058.812-.455.969-.875l.188-.438-.875-.313zm-7.125 5.844h1.563c.094 0 .188.093.188.188v1.531c0 .094-.093.188-.188.188h-1.563c-.094 0-.156-.093-.156-.188v-1.531c0-.094.062-.188.156-.188zm2.844 0h1.563c.094 0 .156.093.156.188v1.531c0 .094-.062.188-.156.188h-1.563c-.094 0-.156-.093-.156-.188v-1.531c0-.094.062-.188.156-.188zm2.844 0h1.563c.094 0 .156.093.156.188v1.531c0 .094-.062.188-.156.188h-1.563c-.094 0-.188-.093-.188-.188v-1.531c0-.094.093-.188.188-.188zm2.813 0h1.563c.094 0 .188.093.188.188v1.531c0 .094-.093.188-.188.188h-1.563c-.094 0-.156-.093-.156-.188v-1.531c0-.094.062-.188.156-.188zm2.844 0h1.563c.094 0 .156.093.156.188v1.531c0 .094-.062.188-.156.188h-1.563c-.094 0-.156-.093-.156-.188v-1.531c0-.094.062-.188.156-.188zm2.844 0h1.531c.094 0 .188.093.188.188v1.531c0 .094-.093.188-.188.188h-1.531c-.094 0-.188-.093-.188-.188v-1.531c0-.094.093-.188.188-.188zm-12.844 3h1.563c.094 0 .156.093.156.188v1.563c0 .094-.062.156-.156.156h-1.563c-.094 0-.156-.062-.156-.156v-1.563c0-.094.062-.188.156-.188zm2.906 0h1.563c.094 0 .188.093.188.188v1.563c0 .094-.093.156-.188.156h-1.563c-.094 0-.156-.062-.156-.156v-1.563c0-.094.062-.188.156-.188zm2.938 0h1.531c.094 0 .188.093.188.188v1.563c0 .094-.093.156-.188.156h-1.531c-.094 0-.188-.062-.188-.156v-1.563c0-.094.093-.188.188-.188zm2.906 0h1.563c.094 0 .156.093.156.188v1.563c0 .094-.062.156-.156.156h-1.563c-.094 0-.188-.062-.188-.156v-1.563c0-.094.093-.188.188-.188zm2.906 0h1.563c.094 0 .156.093.156.188v1.563c0 .094-.062.156-.156.156h-1.563c-.094 0-.156-.062-.156-.156v-1.563c0-.094.062-.188.156-.188zm-10.875 3.563h12c.088 0 .156.068.156.156v.844c0 .088-.068.156-.156.156h-12c-.088 0-.156-.068-.156-.156v-.844c0-.088.068-.156.156-.156z" fill="#565656" transform="scale(.75) translate(0 -1.3)"/></svg> \ No newline at end of file
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/images/tick.png b/MLEB/UniversalLanguageSelector/lib/jquery.ime/images/tick.png
new file mode 100644
index 00000000..5499831b
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/images/tick.png
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/images/tick.svg b/MLEB/UniversalLanguageSelector/lib/jquery.ime/images/tick.svg
new file mode 100644
index 00000000..1e548a3c
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/images/tick.svg
@@ -0,0 +1 @@
+<?xml version="1.0" encoding="UTF-8"?><svg xmlns="http://www.w3.org/2000/svg" width="12" height="9"><path d="M11.226.257l-6.718 6.453-2.699-2.575-1.292 1.302c1.33 1.273 2.65 2.557 3.99 3.821 2.654-2.591 5.337-5.153 8.01-7.726z" fill="#222"/></svg> \ No newline at end of file
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/jquery.ime.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/jquery.ime.js
new file mode 100644
index 00000000..a191683d
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/jquery.ime.js
@@ -0,0 +1,2496 @@
+/*! jquery.ime - v0.1.0+20141028
+* https://github.com/wikimedia/jquery.ime
+* Copyright (c) 2014 Santhosh Thottingal; Licensed GPL, MIT */
+( function ( $ ) {
+ 'use strict';
+
+ // rangy is defined in the rangy library
+ /*global rangy */
+
+ /**
+ * IME Class
+ * @param {Function} [options.helpHandler] Called for each input method row in the selector
+ * @param {Object} options.helpHandler.imeSelector
+ * @param {String} options.helpHandler.ime Id of the input method
+ */
+ function IME( element, options ) {
+ this.$element = $( element );
+ // This needs to be delayed here since extending language list happens at DOM ready
+ $.ime.defaults.languages = arrayKeys( $.ime.languages );
+ this.options = $.extend( {}, $.ime.defaults, options );
+ this.active = false;
+ this.shifted = false;
+ this.inputmethod = null;
+ this.language = null;
+ this.context = '';
+ this.selector = this.$element.imeselector( this.options );
+ this.listen();
+ }
+
+ IME.prototype = {
+ constructor: IME,
+
+ /**
+ * Listen for events and bind to handlers
+ */
+ listen: function () {
+ this.$element.on( 'keypress.ime', $.proxy( this.keypress, this ) );
+ this.$element.on( 'keyup.ime', $.proxy( this.keyup, this ) );
+ this.$element.on( 'keydown.ime', $.proxy( this.keydown, this ) );
+ this.$element.on( 'destroy.ime', $.proxy( this.destroy, this ) );
+ this.$element.on( 'enable.ime', $.proxy( this.enable, this ) );
+ this.$element.on( 'disable.ime', $.proxy( this.disable, this ) );
+ },
+
+ /**
+ * Transliterate a given string input based on context and input method definition.
+ * If there are no matching rules defined, returns the original string.
+ *
+ * @param {string} input
+ * @param {string} context
+ * @param {boolean} altGr whether altGr key is pressed or not
+ * @returns {object} transliteration object
+ * @returns {bool} return.noop Whether to consider input processed or passed through.
+ * @returns {string} return.output the transliterated input or input unmodified.
+ */
+ transliterate: function ( input, context, altGr ) {
+ var patterns, regex, rule, replacement, i, retval;
+
+ if ( altGr ) {
+ patterns = this.inputmethod.patterns_x || [];
+ } else {
+ patterns = this.inputmethod.patterns || [];
+ }
+
+ if ( this.shifted ) {
+ // if shift is pressed give priority for the patterns_shift
+ // if exists.
+ // Example: Shift+space where shift does not alter the keycode
+ patterns = ( this.inputmethod.patterns_shift || [] )
+ .concat( patterns );
+ }
+
+ if ( $.isFunction( patterns ) ) {
+ // For backwards compatibility, allow the rule functions to return plain
+ // string. Determine noop by checking whether input is different from
+ // output. If the rule function returns object, just return it as-is.
+ retval = patterns.call( this, input, context );
+ if ( typeof retval === 'string' ) {
+ return { noop: input === retval, output: retval };
+ }
+
+ return retval;
+ }
+
+ for ( i = 0; i < patterns.length; i++ ) {
+ rule = patterns[i];
+ regex = new RegExp( rule[0] + '$' );
+
+ // Last item in the rules.
+ // It can also be a function, because the replace
+ // method can have a function as the second argument.
+ replacement = rule.slice( -1 )[0];
+
+ // Input string match test
+ if ( regex.test( input ) ) {
+ // Context test required?
+ if ( rule.length === 3 ) {
+ if ( new RegExp( rule[1] + '$' ).test( context ) ) {
+ return { noop: false, output: input.replace( regex, replacement ) };
+ }
+ } else {
+ return { noop: false, output: input.replace( regex, replacement ) };
+ }
+ }
+ }
+
+ // No matches, return the input
+ return { noop: true, output: input };
+ },
+
+ keyup: function ( e ) {
+ if ( e.which === 16 ) { // shift key
+ this.shifted = false;
+ }
+ },
+
+ keydown: function ( e ) {
+ if ( e.which === 16 ) { // shift key
+ this.shifted = true;
+ }
+ },
+
+ /**
+ * Keypress handler
+ * @param {jQuery.Event} e Event
+ * @returns {Boolean}
+ */
+ keypress: function ( e ) {
+ var altGr = false,
+ c, startPos, pos, endPos, divergingPos, input, replacement;
+
+ if ( !this.active ) {
+ return true;
+ }
+
+ if ( !this.inputmethod ) {
+ return true;
+ }
+
+ // handle backspace
+ if ( e.which === 8 ) {
+ // Blank the context
+ this.context = '';
+ return true;
+ }
+
+ if ( e.altKey || e.altGraphKey ) {
+ altGr = true;
+ }
+
+ // Don't process ASCII control characters except linefeed,
+ // as well as anything involving Ctrl, Meta and Alt,
+ // but do process extended keymaps
+ if ( ( e.which < 32 && e.which !== 13 && !altGr ) || e.ctrlKey || e.metaKey ) {
+ // Blank the context
+ this.context = '';
+
+ return true;
+ }
+
+ c = String.fromCharCode( e.which );
+
+ // Get the current caret position. The user may have selected text to overwrite,
+ // so get both the start and end position of the selection. If there is no selection,
+ // startPos and endPos will be equal.
+ pos = this.getCaretPosition( this.$element );
+ startPos = pos[0];
+ endPos = pos[1];
+
+ // Get the last few characters before the one the user just typed,
+ // to provide context for the transliteration regexes.
+ // We need to append c because it hasn't been added to $this.val() yet
+ input = this.lastNChars(
+ this.$element.val() || this.$element.text(),
+ startPos,
+ this.inputmethod.maxKeyLength
+ );
+ input += c;
+
+ replacement = this.transliterate( input, this.context, altGr );
+
+ // Update the context
+ this.context += c;
+
+ if ( this.context.length > this.inputmethod.contextLength ) {
+ // The buffer is longer than needed, truncate it at the front
+ this.context = this.context.substring(
+ this.context.length - this.inputmethod.contextLength
+ );
+ }
+
+ // Allow rules to explicitly define whether we match something.
+ // Otherwise we cannot distinguish between no matching rule and
+ // rule that provides identical output but consumes the event
+ // to prevent normal behavior. See Udmurt layout which uses
+ // altgr rules to allow typing the original character.
+ if ( replacement.noop ) {
+ return true;
+ }
+
+ // Drop a common prefix, if any
+ divergingPos = this.firstDivergence( input, replacement.output );
+ input = input.substring( divergingPos );
+ replacement.output = replacement.output.substring( divergingPos );
+ replaceText( this.$element, replacement.output, startPos - input.length + 1, endPos );
+
+ e.stopPropagation();
+
+ return false;
+ },
+
+ /**
+ * Check whether the input method is active or not
+ * @returns {Boolean}
+ */
+ isActive: function () {
+ return this.active;
+ },
+
+ /**
+ * Disable the input method
+ */
+ disable: function () {
+ this.active = false;
+ $.ime.preferences.setIM( 'system' );
+ },
+
+ /**
+ * Enable the input method
+ */
+ enable: function () {
+ this.active = true;
+ },
+
+ /**
+ * Toggle the active state of input method
+ */
+ toggle: function () {
+ this.active = !this.active;
+ },
+
+ /**
+ * Destroy the binding of ime to the editable element
+ */
+ destroy: function () {
+ $( 'body' ).off( '.ime' );
+ this.$element.off( '.ime' ).removeData( 'ime' ).removeData( 'imeselector' );
+ },
+
+ /**
+ * Get the current input method
+ * @returns {string} Current input method id
+ */
+ getIM: function () {
+ return this.inputmethod;
+ },
+
+ /**
+ * Set the current input method
+ * @param {string} inputmethodId
+ */
+ setIM: function ( inputmethodId ) {
+ this.inputmethod = $.ime.inputmethods[inputmethodId];
+ $.ime.preferences.setIM( inputmethodId );
+ },
+
+ /**
+ * Set the current Language
+ * @param {string} languageCode
+ * @returns {Boolean}
+ */
+ setLanguage: function ( languageCode ) {
+ if ( !$.ime.languages[languageCode] ) {
+ debug( 'Language ' + languageCode + ' is not known to jquery.ime.' );
+
+ return false;
+ }
+
+ this.language = languageCode;
+ $.ime.preferences.setLanguage( languageCode );
+ return true;
+ },
+
+ /**
+ * Get current language
+ * @returns {string}
+ */
+ getLanguage: function () {
+ return this.language;
+ },
+
+ /**
+ * load an input method by given id
+ * @param {string} inputmethodId
+ * @return {jQuery.Promise}
+ */
+ load: function ( inputmethodId ) {
+ var ime = this,
+ deferred = $.Deferred(),
+ dependency;
+
+ if ( $.ime.inputmethods[inputmethodId] ) {
+ return deferred.resolve();
+ }
+
+ // Validate the input method id.
+ if ( !$.ime.sources[inputmethodId] ) {
+ return deferred.reject();
+ }
+
+ dependency = $.ime.sources[inputmethodId].depends;
+ if ( dependency && !$.ime.inputmethods[dependency] ) {
+ ime.load( dependency ).done( function () {
+ ime.load( inputmethodId ).done( function () {
+ deferred.resolve();
+ } );
+ } );
+
+ return deferred;
+ }
+
+ debug( 'Loading ' + inputmethodId );
+ deferred = $.ajax( {
+ url: ime.options.imePath + $.ime.sources[inputmethodId].source,
+ dataType: 'script',
+ cache: true
+ } ).done( function () {
+ debug( inputmethodId + ' loaded' );
+ } ).fail( function ( jqxhr, settings, exception ) {
+ debug( 'Error in loading inputmethod ' + inputmethodId + ' Exception: ' + exception );
+ } );
+
+ return deferred.promise();
+ },
+
+ /**
+ * Returns an array [start, end] of the beginning
+ * and the end of the current selection in $element
+ * @returns {Array}
+ */
+ getCaretPosition: function ( $element ) {
+ return getCaretPosition( $element );
+ },
+
+ /**
+ * Set the caret position in the div.
+ * @param {jQuery} $element The content editable div element
+ * @param {Object} position An object with start and end properties.
+ * @return {Array} If the cursor could not be placed at given position, how
+ * many characters had to go back to place the cursor
+ */
+ setCaretPosition: function ( $element, position ) {
+ return setCaretPosition( $element, position );
+ },
+
+ /**
+ * Find the point at which a and b diverge, i.e. the first position
+ * at which they don't have matching characters.
+ *
+ * @param a String
+ * @param b String
+ * @return Position at which a and b diverge, or -1 if a === b
+ */
+ firstDivergence: function ( a, b ) {
+ return firstDivergence( a, b );
+ },
+
+ /**
+ * Get the n characters in str that immediately precede pos
+ * Example: lastNChars( 'foobarbaz', 5, 2 ) === 'ba'
+ *
+ * @param str String to search in
+ * @param pos Position in str
+ * @param n Number of characters to go back from pos
+ * @return Substring of str, at most n characters long, immediately preceding pos
+ */
+ lastNChars: function ( str, pos, n ) {
+ return lastNChars( str, pos, n );
+ }
+ };
+
+ /**
+ * jQuery plugin ime
+ * @param {Object} option
+ */
+ $.fn.ime = function ( option ) {
+ return this.each( function () {
+ var data,
+ $this = $( this ),
+ options = typeof option === 'object' && option;
+
+ // Some exclusions: IME shouldn't be applied to textareas with
+ // these properties.
+ if ( $this.prop( 'readonly' ) ||
+ $this.prop( 'disabled' ) ||
+ $this.hasClass( 'noime' ) ) {
+ return;
+ }
+
+ data = $this.data( 'ime' );
+
+ if ( !data ) {
+ data = new IME( this, options );
+ $this.data( 'ime', data );
+ }
+
+ if ( typeof option === 'string' ) {
+ data[option]();
+ }
+ } );
+ };
+
+ $.ime = {};
+ $.ime.inputmethods = {};
+ $.ime.sources = {};
+ $.ime.preferences = {};
+ $.ime.languages = {};
+
+ var defaultInputMethod = {
+ contextLength: 0,
+ maxKeyLength: 1
+ };
+
+ $.ime.register = function ( inputMethod ) {
+ $.ime.inputmethods[inputMethod.id] = $.extend( {}, defaultInputMethod, inputMethod );
+ };
+
+ // default options
+ $.ime.defaults = {
+ imePath: '../', // Relative/Absolute path for the rules folder of jquery.ime
+ languages: [], // Languages to be used- by default all languages
+ helpHandler: null // Called for each ime option in the menu
+ };
+
+ /**
+ * private function for debugging
+ */
+ function debug( $obj ) {
+ if ( window.console && window.console.log ) {
+ window.console.log( $obj );
+ }
+ }
+
+ /**
+ * Returns an array [start, end] of the beginning
+ * and the end of the current selection in $element
+ */
+ function getCaretPosition( $element ) {
+ var el = $element.get( 0 ),
+ start = 0,
+ end = 0,
+ normalizedValue,
+ range,
+ textInputRange,
+ len,
+ newLines,
+ endRange;
+
+ if ( $element.is( '[contenteditable]' ) ) {
+ return getDivCaretPosition( el );
+ }
+
+ if ( typeof el.selectionStart === 'number' && typeof el.selectionEnd === 'number' ) {
+ start = el.selectionStart;
+ end = el.selectionEnd;
+ } else {
+ // IE
+ range = document.selection.createRange();
+
+ if ( range && range.parentElement() === el ) {
+ len = el.value.length;
+ normalizedValue = el.value.replace( /\r\n/g, '\n' );
+ newLines = normalizedValue.match( /\n/g );
+
+ // Create a working TextRange that lives only in the input
+ textInputRange = el.createTextRange();
+ textInputRange.moveToBookmark( range.getBookmark() );
+
+ // Check if the start and end of the selection are at the very end
+ // of the input, since moveStart/moveEnd doesn't return what we want
+ // in those cases
+ endRange = el.createTextRange();
+ endRange.collapse( false );
+
+ if ( textInputRange.compareEndPoints( 'StartToEnd', endRange ) > -1 ) {
+ if ( newLines ) {
+ start = end = len - newLines.length;
+ } else {
+ start = end = len;
+ }
+ } else {
+ start = -textInputRange.moveStart( 'character', -len );
+
+ if ( textInputRange.compareEndPoints( 'EndToEnd', endRange ) > -1 ) {
+ end = len;
+ } else {
+ end = -textInputRange.moveEnd( 'character', -len );
+ }
+ }
+ }
+ }
+
+ return [start, end];
+ }
+
+ /**
+ * Helper function to get an IE TextRange object for an element
+ */
+ function rangeForElementIE( element ) {
+ var selection;
+
+ if ( element.nodeName.toLowerCase() === 'input' ) {
+ selection = element.createTextRange();
+ } else {
+ selection = document.body.createTextRange();
+ selection.moveToElementText( element );
+ }
+
+ return selection;
+ }
+
+ function replaceText( $element, replacement, start, end ) {
+ var selection,
+ length,
+ newLines,
+ scrollTop,
+ range,
+ correction,
+ textNode,
+ element = $element.get( 0 );
+
+ if ( $element.is( '[contenteditable]' ) ) {
+ correction = setCaretPosition( $element, {
+ start: start,
+ end: end
+ } );
+
+ selection = rangy.getSelection();
+ range = selection.getRangeAt( 0 );
+
+ if ( correction[0] > 0 ) {
+ replacement = selection.toString().substring( 0, correction[0] ) + replacement;
+ }
+
+ textNode = document.createTextNode( replacement );
+ range.deleteContents();
+ range.insertNode( textNode );
+ range.commonAncestorContainer.normalize();
+ start = end = start + replacement.length - correction[0];
+ setCaretPosition( $element, {
+ start: start,
+ end: end
+ } );
+
+ return;
+ }
+
+ if ( typeof element.selectionStart === 'number' && typeof element.selectionEnd === 'number' ) {
+ // IE9+ and all other browsers
+ scrollTop = element.scrollTop;
+
+ // Replace the whole text of the text area:
+ // text before + replacement + text after.
+ // This could be made better if range selection worked on browsers.
+ // But for complex scripts, browsers place cursor in unexpected places
+ // and it's not possible to fix cursor programmatically.
+ // Ref Bug https://bugs.webkit.org/show_bug.cgi?id=66630
+ element.value = element.value.substring( 0, start ) +
+ replacement +
+ element.value.substring( end, element.value.length );
+
+ // restore scroll
+ element.scrollTop = scrollTop;
+ // set selection
+ element.selectionStart = element.selectionEnd = start + replacement.length;
+ } else {
+ // IE8 and lower
+ selection = rangeForElementIE(element);
+ length = element.value.length;
+ // IE doesn't count \n when computing the offset, so we won't either
+ newLines = element.value.match( /\n/g );
+
+ if ( newLines ) {
+ length = length - newLines.length;
+ }
+
+ selection.moveStart( 'character', start );
+ selection.moveEnd( 'character', end - length );
+
+ selection.text = replacement;
+ selection.collapse( false );
+ selection.select();
+ }
+ }
+
+ function getDivCaretPosition( element ) {
+ var charIndex = 0,
+ start = 0,
+ end = 0,
+ foundStart = false,
+ foundEnd = false,
+ sel = rangy.getSelection();
+
+ function traverseTextNodes( node, range ) {
+ var i, childNodesCount;
+
+ if ( node.nodeType === Node.TEXT_NODE ) {
+ if ( !foundStart && node === range.startContainer ) {
+ start = charIndex + range.startOffset;
+ foundStart = true;
+ }
+
+ if ( foundStart && node === range.endContainer ) {
+ end = charIndex + range.endOffset;
+ foundEnd = true;
+ }
+
+ charIndex += node.length;
+ } else {
+ childNodesCount = node.childNodes.length;
+
+ for ( i = 0; i < childNodesCount; ++i ) {
+ traverseTextNodes( node.childNodes[i], range );
+ if ( foundEnd ) {
+ break;
+ }
+ }
+ }
+ }
+
+ if ( sel.rangeCount ) {
+ traverseTextNodes( element, sel.getRangeAt( 0 ) );
+ }
+
+ return [ start, end ];
+ }
+
+ function setCaretPosition( $element, position ) {
+ var currentPosition,
+ startCorrection = 0,
+ endCorrection = 0,
+ element = $element[0];
+
+ setDivCaretPosition( element, position );
+ currentPosition = getDivCaretPosition( element );
+ // see Bug https://bugs.webkit.org/show_bug.cgi?id=66630
+ while ( position.start !== currentPosition[0] ) {
+ position.start -= 1; // go back one more position.
+ if ( position.start < 0 ) {
+ // never go beyond 0
+ break;
+ }
+ setDivCaretPosition( element, position );
+ currentPosition = getDivCaretPosition( element );
+ startCorrection += 1;
+ }
+
+ while ( position.end !== currentPosition[1] ) {
+ position.end += 1; // go forward one more position.
+ setDivCaretPosition( element, position );
+ currentPosition = getDivCaretPosition( element );
+ endCorrection += 1;
+ if ( endCorrection > 10 ) {
+ // XXX avoid rare case of infinite loop here.
+ break;
+ }
+ }
+
+ return [startCorrection, endCorrection];
+ }
+
+ /**
+ * Set the caret position in the div.
+ * @param {Element} element The content editable div element
+ * @param position
+ */
+ function setDivCaretPosition( element, position ) {
+ var nextCharIndex,
+ charIndex = 0,
+ range = rangy.createRange(),
+ foundStart = false,
+ foundEnd = false;
+
+ range.collapseToPoint( element, 0 );
+
+ function traverseTextNodes( node ) {
+ var i, len;
+
+ if ( node.nodeType === 3 ) {
+ nextCharIndex = charIndex + node.length;
+
+ if ( !foundStart && position.start >= charIndex && position.start <= nextCharIndex ) {
+ range.setStart( node, position.start - charIndex );
+ foundStart = true;
+ }
+
+ if ( foundStart && position.end >= charIndex && position.end <= nextCharIndex ) {
+ range.setEnd( node, position.end - charIndex );
+ foundEnd = true;
+ }
+
+ charIndex = nextCharIndex;
+ } else {
+ for ( i = 0, len = node.childNodes.length; i < len; ++i ) {
+ traverseTextNodes( node.childNodes[i] );
+ if ( foundEnd ) {
+ rangy.getSelection().setSingleRange( range );
+ break;
+ }
+ }
+ }
+ }
+
+ traverseTextNodes( element );
+
+ }
+
+ /**
+ * Find the point at which a and b diverge, i.e. the first position
+ * at which they don't have matching characters.
+ *
+ * @param a String
+ * @param b String
+ * @return Position at which a and b diverge, or -1 if a === b
+ */
+ function firstDivergence( a, b ) {
+ var minLength, i;
+
+ minLength = a.length < b.length ? a.length : b.length;
+
+ for ( i = 0; i < minLength; i++ ) {
+ if ( a.charCodeAt( i ) !== b.charCodeAt( i ) ) {
+ return i;
+ }
+ }
+
+ return -1;
+ }
+
+ /**
+ * Get the n characters in str that immediately precede pos
+ * Example: lastNChars( 'foobarbaz', 5, 2 ) === 'ba'
+ *
+ * @param str String to search in
+ * @param pos Position in str
+ * @param n Number of characters to go back from pos
+ * @return Substring of str, at most n characters long, immediately preceding pos
+ */
+ function lastNChars( str, pos, n ) {
+ if ( n === 0 ) {
+ return '';
+ } else if ( pos <= n ) {
+ return str.substr( 0, pos );
+ } else {
+ return str.substr( pos - n, n );
+ }
+ }
+
+ function arrayKeys ( obj ) {
+ return $.map( obj, function( element, index ) {
+ return index;
+ } );
+ }
+}( jQuery ) );
+
+( function ( $ ) {
+ 'use strict';
+
+ var selectorTemplate, MutationObserver;
+
+ function IMESelector( element, options ) {
+ this.$element = $( element );
+ this.options = $.extend( {}, IMESelector.defaults, options );
+ this.active = false;
+ this.$imeSetting = null;
+ this.$menu = null;
+ this.inputmethod = null;
+ this.timer = null;
+ this.init();
+ this.listen();
+ }
+
+ IMESelector.prototype = {
+ constructor: IMESelector,
+
+ init: function () {
+ this.prepareSelectorMenu();
+ this.position();
+ this.$imeSetting.hide();
+ },
+
+ prepareSelectorMenu: function () {
+ // TODO: In this approach there is a menu for each editable area.
+ // With correct event mapping we can probably reduce it to one menu.
+ this.$imeSetting = $( selectorTemplate );
+ this.$menu = $( '<div class="imeselector-menu" role="menu">' );
+ this.$menu.append(
+ imeListTitle(),
+ imeList(),
+ toggleMenuItem(),
+ languageListTitle()
+ );
+
+ this.prepareLanguageList();
+ this.$menu.append( this.helpLink() );
+
+ if ( $.i18n ) {
+ this.$menu.i18n();
+ }
+
+ this.$imeSetting.append( this.$menu );
+ $( 'body' ).append( this.$imeSetting );
+ },
+
+ stopTimer: function () {
+ if ( this.timer ) {
+ clearTimeout( this.timer );
+ this.timer = null;
+ }
+
+ this.$imeSetting.stop( true, true );
+ },
+
+ resetTimer: function () {
+ var imeselector = this;
+
+ this.stopTimer();
+
+ this.timer = setTimeout(
+ function () {
+ imeselector.$imeSetting.animate( {
+ 'opacity': 0,
+ 'marginTop': '-20px'
+ }, 500, function () {
+ imeselector.$imeSetting.hide();
+ // Restore properties for the next time it becomes visible:
+ imeselector.$imeSetting.css( 'opacity', 1 );
+ imeselector.$imeSetting.css( 'margin-top', 0 );
+ } );
+ }, this.options.timeout
+ );
+ },
+
+ focus: function () {
+ // Hide all other IME settings and collapse open menus
+ $( 'div.imeselector' ).hide();
+ $( 'div.imeselector-menu' ).removeClass( 'ime-open' );
+ this.$imeSetting.show();
+ this.resetTimer();
+ },
+
+ show: function () {
+ this.$menu.addClass( 'ime-open' );
+ this.stopTimer();
+ this.$imeSetting.show();
+
+ return false;
+ },
+
+ hide: function () {
+ this.$menu.removeClass( 'ime-open' );
+ this.resetTimer();
+
+ return false;
+ },
+
+ toggle: function () {
+ if ( this.$menu.hasClass( 'ime-open' ) ) {
+ this.hide();
+ } else {
+ this.show();
+ }
+ },
+
+ /**
+ * Bind the events and listen
+ */
+ listen: function () {
+ var imeselector = this;
+
+ imeselector.$imeSetting.on( 'click.ime', function ( e ) {
+ var t = $( e.target );
+
+ if ( t.hasClass( 'imeselector-toggle' ) ) {
+ imeselector.toggle();
+ }
+
+ return false;
+ } );
+
+ imeselector.$element.on( 'blur.ime', function () {
+ if ( !imeselector.$imeSetting.hasClass( 'ime-onfocus' ) ) {
+ imeselector.$imeSetting.hide();
+ imeselector.hide();
+ }
+ } );
+
+ // Hide the menu when clicked outside
+ $( 'html' ).click( function () {
+ imeselector.hide();
+ } );
+
+ // ... but when clicked on window do not propagate it.
+ this.$menu.on( 'click', function ( event ) {
+ event.stopPropagation();
+ } );
+
+ imeselector.$imeSetting.mouseenter( function () {
+ // We don't want the selector to disappear
+ // while the user is trying to click it
+ imeselector.stopTimer();
+ imeselector.$imeSetting.addClass( 'ime-onfocus' );
+ } ).mouseleave( function () {
+ imeselector.resetTimer();
+ imeselector.$imeSetting.removeClass( 'ime-onfocus' );
+ } );
+
+ imeselector.$menu.on( 'click.ime', 'li', function() {
+ imeselector.$element.focus();
+
+ return false;
+ } );
+
+ imeselector.$menu.on( 'click.ime', 'li.ime-im', function () {
+ imeselector.selectIM( $( this ).data( 'ime-inputmethod' ) );
+ imeselector.$element.trigger( 'setim.ime', $( this ).data( 'ime-inputmethod' ) );
+
+ return false;
+ } );
+
+ imeselector.$menu.on( 'click.ime', 'li.ime-lang', function () {
+ var im = imeselector.selectLanguage( $( this ).attr( 'lang' ) );
+
+ imeselector.$element.trigger( 'setim.ime', im );
+
+ return false;
+ } );
+
+ imeselector.$menu.on( 'click.ime', 'div.ime-disable', function () {
+ imeselector.disableIM();
+
+ return false;
+ } );
+
+ // Just make it work as a regular link
+ imeselector.$menu.on( 'click.ime', '.ime-help-link', function ( e ) {
+ e.stopPropagation();
+ } );
+
+ imeselector.$element.on( 'focus.ime', function ( e ) {
+ imeselector.selectLanguage( imeselector.decideLanguage() );
+ imeselector.focus();
+ e.stopPropagation();
+ } );
+
+ imeselector.$element.attrchange( function ( ) {
+ if ( imeselector.$element.is( ':hidden' ) ) {
+ imeselector.$imeSetting.hide();
+ }
+ } );
+
+ // Possible resize of textarea
+ imeselector.$element.on( 'mouseup.ime', $.proxy( this.position, this ) );
+ imeselector.$element.on( 'keydown.ime', $.proxy( this.keydown, this ) );
+
+ // Update IM selector position when the window is resized
+ // or the browser window is zoomed in or zoomed out
+ $( window ).resize( function () {
+ imeselector.position();
+ } );
+ },
+
+ /**
+ * Keydown event handler. Handles shortcut key presses
+ *
+ * @context {HTMLElement}
+ * @param {jQuery.Event} e
+ */
+ keydown: function ( e ) {
+ var ime = $( e.target ).data( 'ime' ),
+ firstInputmethod,
+ previousInputMethods,
+ languageCode;
+
+ this.focus(); // shows the trigger in case it is hidden
+
+ if ( isShortcutKey( e ) ) {
+ if ( ime.isActive() ) {
+ this.disableIM();
+ this.$element.trigger( 'setim.ime', 'system' );
+ } else {
+ if ( this.inputmethod !== null ) {
+ this.selectIM( this.inputmethod.id );
+ this.$element.trigger( 'setim.ime', this.inputmethod.id );
+ } else {
+ languageCode = this.decideLanguage();
+ this.selectLanguage( languageCode );
+
+ if ( !ime.isActive() && $.ime.languages[languageCode] ) {
+ // Even after pressing toggle shortcut again, it is still disabled
+ // Check if there is a previously used input method.
+ previousInputMethods = $.ime.preferences.getPreviousInputMethods();
+
+ if ( previousInputMethods[0] ) {
+ this.selectIM( previousInputMethods[0] );
+ } else {
+ // Provide the default input method in this case.
+ firstInputmethod = $.ime.languages[languageCode].inputmethods[0];
+ this.selectIM( firstInputmethod );
+ }
+ }
+ }
+ }
+
+ e.preventDefault();
+ e.stopPropagation();
+
+ return false;
+ }
+
+ return true;
+ },
+
+ /**
+ * Position the im selector relative to the edit area
+ */
+ position: function () {
+ var menuWidth, menuTop, menuLeft, elementPosition,
+ top, left, verticalRoom, overflowsOnRight,
+ imeSelector = this,
+ rtlElement = this.$element.css( 'direction' ) === 'rtl',
+ $window = $( window );
+
+ this.focus(); // shows the trigger in case it is hidden
+
+ elementPosition = this.$element.offset();
+ top = elementPosition.top + this.$element.outerHeight();
+ left = elementPosition.left;
+
+ // RTL element position fix
+ if ( !rtlElement ) {
+ left = elementPosition.left + this.$element.outerWidth() -
+ this.$imeSetting.outerWidth();
+ }
+
+ // While determining whether to place the selector above or below the input box,
+ // take into account the value of scrollTop, to avoid the selector from always
+ // getting placed above the input box since window.height would be less than top
+ // if the page has been scrolled.
+ verticalRoom = $window.height() + $( document ).scrollTop() - top;
+
+ if ( verticalRoom < this.$imeSetting.outerHeight() ) {
+ top = elementPosition.top - this.$imeSetting.outerHeight();
+ menuTop = this.$menu.outerHeight() +
+ this.$imeSetting.outerHeight();
+
+ // Flip the menu to the top only if it can fit in the space there
+ if ( menuTop < top ) {
+ this.$menu
+ .addClass( 'ime-position-top' )
+ .css( 'top', -menuTop );
+ }
+ }
+
+ this.$element.parents().each( function() {
+ if ( $( this ).css( 'position' ) === 'fixed' ) {
+ imeSelector.$imeSetting.css( 'position', 'fixed' );
+
+ return false;
+ }
+ } );
+
+ this.$imeSetting.css( {
+ top: top,
+ left: left
+ } );
+
+ menuWidth = this.$menu.width();
+ overflowsOnRight = ( left + menuWidth ) > $window.width();
+
+ // Adjust horizontal position if there's
+ // not enough space on any side
+ if ( menuWidth > left ||
+ rtlElement && overflowsOnRight
+ ) {
+ if ( rtlElement ) {
+ if ( overflowsOnRight ) {
+ this.$menu.addClass( 'ime-right' );
+ menuLeft = this.$imeSetting.outerWidth() - menuWidth;
+ } else {
+ menuLeft = 0;
+ }
+ } else {
+ this.$menu.addClass( 'ime-right' );
+ menuLeft = elementPosition.left;
+ }
+
+ this.$menu.css( 'left', menuLeft );
+ }
+ },
+
+ /**
+ * Select a language
+ *
+ * @param {string} languageCode
+ * @return {string|bool} Selected input method id or false
+ */
+ selectLanguage: function ( languageCode ) {
+ var ime, imePref, language;
+
+ // consider language codes case insensitive
+ languageCode = languageCode && languageCode.toLowerCase();
+
+ ime = this.$element.data( 'ime' );
+ imePref = $.ime.preferences.getIM( languageCode );
+ language = $.ime.languages[languageCode];
+
+ this.setMenuTitle( this.getAutonym( languageCode ) );
+
+ if ( !language ) {
+ return false;
+ }
+
+ if ( ime.getLanguage() === languageCode ) {
+ // Nothing to do. It is same as the current language,
+ // but check whether the input method changed.
+ if ( ime.inputmethod && ime.inputmethod.id !== imePref ) {
+ this.selectIM( $.ime.preferences.getIM( languageCode ) );
+ }
+
+ return $.ime.preferences.getIM( languageCode );
+ }
+
+ this.$menu.find( 'li.ime-lang' ).show();
+ this.$menu.find( 'li[lang=' + languageCode + ']' ).hide();
+
+ this.prepareInputMethods( languageCode );
+ this.hide();
+ // And select the default inputmethod
+ ime.setLanguage( languageCode );
+ this.inputmethod = null;
+ this.selectIM( $.ime.preferences.getIM( languageCode ) );
+
+ return $.ime.preferences.getIM( languageCode );
+ },
+
+ /**
+ * Get the autonym by language code.
+ *
+ * @param {string} languageCode
+ * @return {string} The autonym
+ */
+ getAutonym: function ( languageCode ) {
+ return $.ime.languages[languageCode]
+ && $.ime.languages[languageCode].autonym;
+ },
+
+ /**
+ * Set the title of the selector menu.
+ *
+ * @param {string} title
+ */
+ setMenuTitle: function ( title ) {
+ this.$menu.find( '.ime-list-title' ).text( title );
+ },
+
+ /**
+ * Decide on initial language to select
+ */
+ decideLanguage: function () {
+ if ( $.ime.preferences.getLanguage() ) {
+ // There has been an override by the user,
+ // so return the language selected by user
+ return $.ime.preferences.getLanguage();
+ }
+
+ if ( this.$element.attr( 'lang' ) &&
+ $.ime.languages[ this.$element.attr( 'lang' ) ]
+ ) {
+ return this.$element.attr( 'lang' );
+ }
+
+ // There is either no IMs for the given language attr
+ // or there is no lang attr at all.
+ return $.ime.preferences.getDefaultLanguage();
+ },
+
+ /**
+ * Select an input method
+ *
+ * @param {string} inputmethodId
+ */
+ selectIM: function ( inputmethodId ) {
+ var imeselector = this,
+ ime;
+
+ if ( !inputmethodId ) {
+ return;
+ }
+
+ this.$menu.find( '.ime-checked' ).removeClass( 'ime-checked' );
+ this.$menu.find( 'li[data-ime-inputmethod=' + inputmethodId + ']' )
+ .addClass( 'ime-checked' );
+ ime = this.$element.data( 'ime' );
+
+ if ( inputmethodId === 'system' ) {
+ this.disableIM();
+
+ return;
+ }
+
+ ime.load( inputmethodId ).done( function () {
+ imeselector.inputmethod = $.ime.inputmethods[inputmethodId];
+ imeselector.hide();
+ ime.enable();
+ ime.setIM( inputmethodId );
+ imeselector.$imeSetting.find( 'a.ime-name' ).text(
+ $.ime.sources[inputmethodId].name
+ );
+
+ imeselector.position();
+
+ // Save this preference
+ $.ime.preferences.save();
+ } );
+ },
+
+ /**
+ * Disable the inputmethods (Use the system input method)
+ */
+ disableIM: function () {
+ this.$menu.find( '.ime-checked' ).removeClass( 'ime-checked' );
+ this.$menu.find( 'div.ime-disable' ).addClass( 'ime-checked' );
+ this.$element.data( 'ime' ).disable();
+ this.$imeSetting.find( 'a.ime-name' ).text( '' );
+ this.hide();
+ this.position();
+
+ // Save this preference
+ $.ime.preferences.save();
+ },
+
+ /**
+ * Prepare language list
+ */
+ prepareLanguageList: function () {
+ var languageCodeIndex,
+ $languageListWrapper,
+ $languageList,
+ languageList,
+ $languageItem,
+ $language,
+ languageCode,
+ language;
+
+ // Language list can be very long, so we use a container with
+ // overflow auto
+ $languageListWrapper = $( '<div class="ime-language-list-wrapper">' );
+ $languageList = $( '<ul class="ime-language-list">' );
+
+ if ( $.isFunction( this.options.languages ) ) {
+ languageList = this.options.languages();
+ } else {
+ languageList = this.options.languages;
+ }
+
+ for ( languageCodeIndex in languageList ) {
+ languageCode = languageList[languageCodeIndex];
+ language = $.ime.languages[languageCode];
+
+ if ( !language ) {
+ continue;
+ }
+
+ $languageItem = $( '<a>' )
+ .attr( 'href', '#' )
+ .text( this.getAutonym( languageCode ) )
+ .addClass( 'selectable-row-item autonym' );
+ $language = $( '<li class="ime-lang selectable-row">' ).attr( 'lang', languageCode );
+ $language.append( $languageItem );
+ $languageList.append( $language );
+ }
+
+ $languageListWrapper.append( $languageList );
+ this.$menu.append( $languageListWrapper );
+
+ if ( this.options.languageSelector ) {
+ this.$menu.append( this.options.languageSelector() );
+ }
+ },
+
+ /**
+ * Prepare input methods in menu for the given language code
+ *
+ * @param {string} languageCode
+ */
+ prepareInputMethods: function ( languageCode ) {
+ var language = $.ime.languages[languageCode],
+ $imeList = this.$menu.find( '.ime-list' ),
+ imeSelector = this;
+
+ $imeList.empty();
+
+ $.each( language.inputmethods, function ( index, inputmethod ) {
+ var $imeItem, $inputMethod, source, name;
+
+ source = $.ime.sources[inputmethod];
+ if ( !source ) {
+ return;
+ }
+ name = source.name;
+
+ $imeItem = $( '<a>' )
+ .attr( 'href', '#' )
+ .text( name )
+ .addClass( 'selectable-row-item' );
+
+ $inputMethod = $( '<li>' )
+ .attr( 'data-ime-inputmethod', inputmethod )
+ .addClass( 'ime-im selectable-row' )
+ .append( '<span class="ime-im-check"></span>', $imeItem );
+
+ if ( imeSelector.options.helpHandler ) {
+ $inputMethod.append( imeSelector.options.helpHandler.call( imeSelector, inputmethod ) );
+ }
+
+ $imeList.append( $inputMethod );
+ } );
+ },
+
+ /**
+ * Create a help link element.
+ * @return {jQuery}
+ */
+ helpLink: function () {
+ return $( '<div class="ime-help-link selectable-row">' )
+ .append( $( '<a>' ).text( 'Help' )
+ .addClass( 'selectable-row-item' )
+ .attr( {
+ 'href': 'http://github.com/wikimedia/jquery.ime',
+ 'target': '_blank',
+ 'data-i18n': 'jquery-ime-help'
+ } )
+ );
+ }
+ };
+
+ IMESelector.defaults = {
+ defaultLanguage: 'en',
+ timeout: 2500 // Milliseconds after which IME widget hides itself.
+ };
+
+ /*
+ * imeselector PLUGIN DEFINITION
+ */
+
+ $.fn.imeselector = function ( options ) {
+ return this.each( function () {
+ var $this = $( this ),
+ data = $this.data( 'imeselector' );
+
+ if ( !data ) {
+ $this.data( 'imeselector', ( data = new IMESelector( this, options ) ) );
+ }
+
+ if ( typeof options === 'string' ) {
+ data[options].call( $this );
+ }
+ } );
+ };
+
+ $.fn.imeselector.Constructor = IMESelector;
+
+ function languageListTitle() {
+ return $( '<h3>' )
+ .addClass( 'ime-lang-title' )
+ .attr( 'data-i18n', 'jquery-ime-other-languages' )
+ .text( 'Other languages' );
+ }
+
+ function imeList() {
+ return $( '<ul>' ).addClass( 'ime-list' );
+ }
+
+ function imeListTitle() {
+ return $( '<h3>' ).addClass( 'ime-list-title autonym' );
+ }
+
+ function toggleMenuItem() {
+ return $( '<div class="ime-disable selectable-row">' ).append(
+ $( '<span>' )
+ .attr( {
+ 'class': 'ime-disable-link',
+ 'data-i18n': 'jquery-ime-disable-text'
+ } )
+ .addClass( 'ime-checked' )
+ .text( 'System input method' ),
+ $( '<span>' )
+ .addClass( 'ime-disable-shortcut' )
+ .text( 'CTRL+M' )
+ );
+ }
+
+ selectorTemplate = '<div class="imeselector imeselector-toggle">' +
+ '<a class="ime-name imeselector-toggle" href="#"></a>' +
+ '<b class="ime-setting-caret imeselector-toggle"></b></div>';
+
+ MutationObserver = window.MutationObserver ||
+ window.WebKitMutationObserver ||
+ window.MozMutationObserver;
+
+ /**
+ * Check whether a keypress event corresponds to the shortcut key
+ *
+ * @param {event} event
+ * @return {bool} true if the key is a shortcut key
+ */
+ function isShortcutKey( event ) {
+ // 77 - The letter M, for Ctrl-M
+ // 13 - The Enter key
+ return event.ctrlKey && !event.altKey && ( event.which === 77 || event.which === 13 );
+ }
+
+ function isDOMAttrModifiedSupported() {
+ var p = document.createElement( 'p' ),
+ flag = false;
+
+ if ( p.addEventListener ) {
+ p.addEventListener( 'DOMAttrModified', function () {
+ flag = true;
+ }, false );
+ } else if ( p.attachEvent ) {
+ p.attachEvent( 'onDOMAttrModified', function () {
+ flag = true;
+ } );
+ } else {
+ return false;
+ }
+
+ p.setAttribute( 'id', 'target' );
+
+ return flag;
+ }
+
+ $.fn.attrchange = function ( callback ) {
+ if ( MutationObserver ) {
+ var observer;
+
+ observer = new MutationObserver( function ( mutations ) {
+ mutations.forEach( function ( e ) {
+ callback.call( e.target, e.attributeName );
+ } );
+ } );
+
+ return this.each( function () {
+ observer.observe( this, {
+ subtree: false,
+ attributes: true
+ } );
+ } );
+ } else if ( isDOMAttrModifiedSupported() ) {
+ return this.on( 'DOMAttrModified', function ( e ) {
+ callback.call( this, e.originalEvent.attrName );
+ } );
+ } else if ( 'onpropertychange' in document.body ) {
+ return this.on( 'propertychange', function () {
+ callback.call( this, window.event.propertyName );
+ } );
+ }
+ };
+}( jQuery ) );
+
+( function ( $ ) {
+ 'use strict';
+
+ $.extend( $.ime.preferences, {
+ registry: {
+ isDirty: false,
+ language: null,
+ previousLanguages: [], // array of previous languages
+ previousInputMethods: [], // array of previous inputmethods
+ imes: {
+ 'en': 'system'
+ }
+ },
+
+ setLanguage: function ( language ) {
+ // Do nothing if there's no actual change
+ if ( language === this.registry.language ) {
+ return;
+ }
+
+ this.registry.language = language;
+ this.registry.isDirty = true;
+ if ( !this.registry.previousLanguages ) {
+ this.registry.previousLanguages = [];
+ }
+
+ // Add to the previous languages, but avoid duplicates.
+ if ( $.inArray( language, this.registry.previousLanguages ) === -1 ) {
+ this.registry.previousLanguages.unshift( language );
+ this.registry.previousLanguages = this.registry.previousLanguages.slice( 0, 5 );
+ }
+ },
+
+ getLanguage: function () {
+ return this.registry.language;
+ },
+
+ getDefaultLanguage: function () {
+ return 'en';
+ },
+
+ getPreviousLanguages: function () {
+ return this.registry.previousLanguages;
+ },
+
+ getPreviousInputMethods: function () {
+ return this.registry.previousInputMethods;
+ },
+
+ // Set the given IM as the last used for the language
+ setIM: function ( inputMethod ) {
+ if ( !this.registry.imes ) {
+ this.registry.imes = {};
+ }
+
+ // Do nothing if there's no actual change
+ if ( inputMethod === this.registry.imes[this.registry.language] ) {
+ return;
+ }
+
+ this.registry.imes[this.getLanguage()] = inputMethod;
+ this.registry.isDirty = true;
+ if ( !this.registry.previousInputMethods ) {
+ this.registry.previousInputMethods = [];
+ }
+
+ // Add to the previous languages,
+ if ( inputMethod !== 'system' ) {
+ this.registry.previousInputMethods.unshift( inputMethod );
+ this.registry.previousInputMethods = this.registry.previousInputMethods.slice( 0, 5 );
+ }
+ },
+
+ // Return the last used or the default IM for language
+ getIM: function ( language ) {
+ if ( !this.registry.imes ) {
+ this.registry.imes = {};
+ }
+
+ return this.registry.imes[language] || 'system';
+ },
+
+ save: function () {
+ // save registry in cookies or localstorage
+ },
+
+ load: function () {
+ // load registry from cookies or localstorage
+ }
+ } );
+}( jQuery ) );
+
+( function ( $ ) {
+ 'use strict';
+
+ $.extend( $.ime.sources, {
+ 'am-transliteration': {
+ name: 'ትራንስልተራትዖን',
+ source: 'rules/am/am-transliteration.js'
+ },
+ 'ar-kbd': {
+ name: 'أرابيك',
+ source: 'rules/ar/ar-kbd.js'
+ },
+ 'as-avro': {
+ name: 'অভ্ৰ',
+ source: 'rules/as/as-avro.js'
+ },
+ 'as-bornona': {
+ name: 'বৰ্ণনা',
+ source: 'rules/as/as-bornona.js'
+ },
+ 'as-inscript': {
+ name: 'ইনস্ক্ৰিপ্ট',
+ source: 'rules/as/as-inscript.js'
+ },
+ 'as-inscript2': {
+ name: 'ইনস্ক্ৰিপ্ট ২',
+ source: 'rules/as/as-inscript2.js'
+ },
+ 'as-phonetic': {
+ name: 'ফনেটিক',
+ source: 'rules/as/as-phonetic.js'
+ },
+ 'as-transliteration': {
+ name: 'প্ৰতিৰূপান্তৰণ',
+ source: 'rules/as/as-transliteration.js'
+ },
+ 'batak-qwerty': {
+ name: 'Batak QWERTY',
+ source: 'rules/bbc/batak-qwerty.js'
+ },
+ 'be-kbd': {
+ name: 'Стандартная',
+ source: 'rules/be/be-kbd.js'
+ },
+ 'be-latin': {
+ name: 'Łacinka',
+ source: 'rules/be/be-latin.js'
+ },
+ 'be-transliteration': {
+ name: 'Транслітэрацыя',
+ source: 'rules/be/be-transliteration.js'
+ },
+ 'ber-tfng': {
+ name: 'Tifinagh',
+ source: 'rules/ber/ber-tfng.js'
+ },
+ 'bn-avro': {
+ name: 'অভ্র',
+ source: 'rules/bn/bn-avro.js'
+ },
+ 'bn-inscript': {
+ name: 'ইনস্ক্ৰিপ্ট',
+ source: 'rules/bn/bn-inscript.js'
+ },
+ 'bn-inscript2': {
+ name: 'ইনস্ক্ৰিপ্ট ২',
+ source: 'rules/bn/bn-inscript2.js'
+ },
+ 'bn-nkb': {
+ name: 'ন্যাশনাল কিবোর্ড',
+ source: 'rules/bn/bn-nkb.js'
+ },
+ 'bn-probhat': {
+ name: 'প্রভাত',
+ source: 'rules/bn/bn-probhat.js'
+ },
+ 'bo-ewts': {
+ name: 'Tibetan EWTS',
+ source: 'rules/bo/bo-ewts.js'
+ },
+ 'brx-inscript': {
+ name: 'इनस्क्रिप्ट',
+ source: 'rules/brx/brx-inscript.js'
+ },
+ 'brx-inscript2': {
+ name: 'इनस्क्रिप्ट २',
+ source: 'rules/brx/brx-inscript2.js'
+ },
+ 'ckb-transliteration-arkbd': {
+ name: 'باشووری',
+ source: 'rules/ckb/ckb-transliteration-arkbd.js'
+ },
+ 'ckb-transliteration-fakbd': {
+ name: 'ڕۆژھەڵاتی',
+ source: 'rules/ckb/ckb-transliteration-fakbd.js'
+ },
+ 'ckb-transliteration-lakbd': {
+ name: 'لاتینی',
+ source: 'rules/ckb/ckb-transliteration-lakbd.js'
+ },
+ 'cv-cyr-altgr': {
+ name: 'Чăвашла (AltGr)',
+ source: 'rules/cv/cv-cyr-altgr.js'
+ },
+ 'cv-lat-altgr': {
+ name: 'Căvašla (AltGr)',
+ source: 'rules/cv/cv-lat-altgr.js'
+ },
+ 'cv-cyr-numbers': {
+ name: 'Чăвашла (цифрилисем)',
+ source: 'rules/cv/cv-cyr-numbers.js'
+ },
+ 'cyrl-palochka': {
+ name: 'Palochka',
+ source: 'rules/cyrl/cyrl-palochka.js'
+ },
+ 'da-normforms': {
+ name: 'normalformer',
+ source: 'rules/da/da-normforms.js'
+ },
+ 'doi-inscript2': {
+ name: 'इनस्क्रिप्ट २',
+ source: 'rules/doi/doi-inscript2.js'
+ },
+ 'eo-transliteration': {
+ name: 'transliterigo',
+ source: 'rules/eo/eo-transliteration.js'
+ },
+ 'eo-h': {
+ name: 'Esperanto h',
+ source: 'rules/eo/eo-h.js'
+ },
+ 'eo-h-f': {
+ name: 'Esperanto h fundamente',
+ source: 'rules/eo/eo-h-f.js'
+ },
+ 'eo-plena': {
+ name: 'Esperanto plena',
+ source: 'rules/eo/eo-plena.js'
+ },
+ 'eo-q': {
+ name: 'Esperanto q sistemo',
+ source: 'rules/eo/eo-q.js'
+ },
+ 'eo-vi': {
+ name: 'Esperanto vi sistemo',
+ source: 'rules/eo/eo-vi.js'
+ },
+ 'eo-x': {
+ name: 'Esperanto x sistemo',
+ source: 'rules/eo/eo-x.js'
+ },
+ 'fa-kbd': {
+ name: 'فارسی',
+ source: 'rules/fa/fa-kbd.js'
+ },
+ 'fo-normforms': {
+ name: 'Føroyskt',
+ source: 'rules/fo/fo-normforms.js'
+ },
+ 'fi-transliteration': {
+ name: 'translitterointi',
+ source: 'rules/fi/fi-transliteration.js'
+ },
+ 'lud-transliteration': {
+ name: 'lud',
+ source: 'rules/lud/lud-transliteration.js'
+ },
+ 'hi-transliteration': {
+ name: 'लिप्यंतरण',
+ source: 'rules/hi/hi-transliteration.js'
+ },
+ 'hi-inscript': {
+ name: 'इनस्क्रिप्ट',
+ source: 'rules/hi/hi-inscript.js'
+ },
+ 'hi-inscript2': {
+ name: 'इनस्क्रिप्ट २',
+ source: 'rules/hi/hi-inscript2.js'
+ },
+ 'hi-phonetic': {
+ name: 'फोनेटिक',
+ source: 'rules/hi/hi-phonetic.js'
+ },
+ 'is-normforms': {
+ name: 'Venjuleg eyðublöð',
+ source: 'rules/is/is-normforms.js'
+ },
+ 'jv-transliteration': {
+ name: 'Transliteration',
+ source: 'rules/jv/jv-transliteration.js'
+ },
+ 'mai-inscript': {
+ name: 'इनस्क्रिप्ट',
+ source: 'rules/mai/mai-inscript.js',
+ depends: 'hi-inscript'
+ },
+ 'mai-inscript2': {
+ name: 'इनस्क्रिप्ट २',
+ source: 'rules/mai/mai-inscript2.js',
+ depends: 'hi-inscript2'
+ },
+ 'hi-bolnagri': {
+ name: 'बोलनागरी',
+ source: 'rules/hi/hi-bolnagri.js'
+ },
+ 'ml-transliteration': {
+ name: 'ലിപ്യന്തരണം',
+ source: 'rules/ml/ml-transliteration.js'
+ },
+ 'ml-inscript': {
+ name: 'ഇൻസ്ക്രിപ്റ്റ്',
+ source: 'rules/ml/ml-inscript.js'
+ },
+ 'ml-inscript2': {
+ name: 'ഇൻസ്ക്രിപ്റ്റ് 2',
+ source: 'rules/ml/ml-inscript2.js'
+ },
+ 'sv-normforms': {
+ name: 'Normal forms',
+ source: 'rules/sv/sv-normforms.js'
+ },
+ 'ta-inscript': {
+ name: 'இன்ஸ்கிரிப்ட்',
+ source: 'rules/ta/ta-inscript.js'
+ },
+ 'ta-inscript2': {
+ name: 'இன்ஸ்கிரிப்ட் 2',
+ source: 'rules/ta/ta-inscript2.js'
+ },
+ 'ta-transliteration': {
+ name: 'எழுத்துப்பெயர்ப்பு',
+ source: 'rules/ta/ta-transliteration.js'
+ },
+ 'ta-99': {
+ name: 'தமிழ்99',
+ source: 'rules/ta/ta-99.js'
+ },
+ 'ta-bamini': {
+ name: 'பாமினி',
+ source: 'rules/ta/ta-bamini.js'
+ },
+ 'th-kedmanee': {
+ name: 'เกษมณี',
+ source: 'rules/th/th-kedmanee.js'
+ },
+ 'th-pattachote': {
+ name: 'ปัตตะโชติ',
+ source: 'rules/th/th-pattachote.js'
+ },
+ 'de-transliteration': {
+ name: 'Deutsch Tilde',
+ source: 'rules/de/de-transliteration.js'
+ },
+ 'el-kbd': {
+ name: 'Τυπική πληκτρολόγιο',
+ source: 'rules/el/el-kbd.js'
+ },
+ 'he-standard-2012': {
+ name: 'עברית עם ניקוד על בסיס אנגלית',
+ source: 'rules/he/he-standard-2012.js'
+ },
+ 'he-standard-2012-extonly': {
+ name: 'עברית עם ניקוד',
+ source: 'rules/he/he-standard-2012-extonly.js'
+ },
+ 'hr-kbd': {
+ name: 'Croatian kbd',
+ source: 'rules/hr/hr-kbd.js'
+ },
+ 'hy-ephonetic': {
+ name: 'Հնչյունային դասավորություն',
+ source: 'rules/hy/hy-ephonetic.js'
+ },
+ 'hy-typewriter': {
+ name: 'Գրամեքենայի դասավորություն',
+ source: 'rules/hy/hy-typewriter.js'
+ },
+ 'hy-ephoneticalt': {
+ name: 'Հնչյունային նոր (R→Ր, F→Թ)',
+ source: 'rules/hy/hy-ephoneticalt.js'
+ },
+ 'hy-emslegacy': {
+ name: 'Մայքրոսոֆթի հին արևելահայերեն',
+ source: 'rules/hy/hy-emslegacy.js'
+ },
+ 'hy-wmslegacy': {
+ name: 'Մայքրոսոֆթի հին արևմտահայերեն',
+ source: 'rules/hy/hy-wmslegacy.js'
+ },
+ 'gu-inscript': {
+ name: 'ઇનસ્ક્રિપ્ટ',
+ source: 'rules/gu/gu-inscript.js'
+ },
+ 'gu-inscript2': {
+ name: 'ઇનસ્ક્રિપ્ટ ૨',
+ source: 'rules/gu/gu-inscript2.js'
+ },
+ 'gu-phonetic': {
+ name: 'ફોનૅટિક',
+ source: 'rules/gu/gu-phonetic.js'
+ },
+ 'gu-transliteration': {
+ name: 'લિપ્યાંતરણ',
+ source: 'rules/gu/gu-transliteration.js'
+ },
+ 'ka-transliteration': {
+ name: 'ტრანსლიტერაცია',
+ source: 'rules/ka/ka-transliteration.js'
+ },
+ 'ka-kbd': {
+ name: 'სტანდარტული კლავიატურის',
+ source: 'rules/ka/ka-kbd.js'
+ },
+ 'kk-arabic': {
+ name: 'Kazakh Arabic transliteration',
+ source: 'rules/kk/kk-arabic.js'
+ },
+ 'kk-kbd': {
+ name: 'Кирил',
+ source: 'rules/kk/kk-kbd.js'
+ },
+ 'kn-inscript': {
+ name: 'ಇನ್ಸ್ಕ್ರಿಪ್ಟ್',
+ source: 'rules/kn/kn-inscript.js'
+ },
+ 'kn-inscript2': {
+ name: 'ಇನ್\u200cಸ್ಕ್ರಿಪ್ಟ್ ೨',
+ source: 'rules/kn/kn-inscript2.js'
+ },
+ 'kn-transliteration': {
+ name: 'ಲಿಪ್ಯಂತರಣ',
+ source: 'rules/kn/kn-transliteration.js'
+ },
+ 'kn-kgp': {
+ name: 'KGP/Nudi/KP Rao',
+ source: 'rules/kn/kn-kgp.js'
+ },
+ 'ky-cyrl-alt': {
+ name: 'Кыргыз Alt',
+ source: 'rules/ky/ky-cyrl-alt.js'
+ },
+ 'gom-inscript2': {
+ name: 'इनस्क्रिप्ट २',
+ source: 'rules/gom/gom-inscript2.js'
+ },
+ 'ks-inscript': {
+ name: 'इनस्क्रिप्ट',
+ source: 'rules/ks/ks-inscript.js'
+ },
+ 'ks-kbd': {
+ name: 'Kashmiri Arabic',
+ source: 'rules/ks/ks-kbd.js'
+ },
+ 'ku-h': {
+ name: 'Kurdî-h',
+ source: 'rules/ku/ku-h.js'
+ },
+ 'ku-tr': {
+ name: 'Kurdî-tr',
+ source: 'rules/ku/ku-tr.js'
+ },
+ 'lo-kbd': {
+ name: 'າຶກ',
+ source: 'rules/lo/lo-kbd.js'
+ },
+ 'mh': {
+ name: 'Kajin M̧ajeļ',
+ source: 'rules/mh/mh.js'
+ },
+ 'mn-cyrl': {
+ name: 'Кирилл',
+ source: 'rules/mn/mn-cyrl.js'
+ },
+ 'mni-inscript2': {
+ name: 'ইনস্ক্ৰিপ্ট ২',
+ source: 'rules/mni/mni-inscript2.js'
+ },
+ 'mr-inscript': {
+ name: 'मराठी लिपी',
+ source: 'rules/mr/mr-inscript.js'
+ },
+ 'mr-inscript2': {
+ name: 'मराठी इनस्क्रिप्ट २',
+ source: 'rules/mr/mr-inscript2.js'
+ },
+ 'mr-transliteration': {
+ name: 'अक्षरांतरण',
+ source: 'rules/mr/mr-transliteration.js'
+ },
+ 'mr-phonetic': {
+ name: 'फोनेटिक',
+ source: 'rules/mr/mr-phonetic.js'
+ },
+ 'my-xkb': {
+ name: 'မြန်မာဘာသာ xkb',
+ source: 'rules/my/my-xkb.js'
+ },
+ 'ne-inscript': {
+ name: 'इनस्क्रिप्ट',
+ source: 'rules/ne/ne-inscript.js'
+ },
+ 'ne-inscript2': {
+ name: 'इनस्क्रिप्ट २',
+ source: 'rules/ne/ne-inscript2.js'
+ },
+ 'ne-transliteration': {
+ name: 'ट्रांस्लितेरेशन',
+ source: 'rules/ne/ne-transliteration.js'
+ },
+ 'ne-rom': {
+ name: 'Romanized',
+ source: 'rules/ne/ne-rom.js'
+ },
+ 'ne-trad': {
+ name: 'Traditional',
+ source: 'rules/ne/ne-trad.js'
+ },
+ 'nb-normforms': {
+ name: 'Normal transliterasjon',
+ source: 'rules/nb/nb-normforms.js'
+ },
+ 'nb-tildeforms': {
+ name: 'Tildemerket transliterasjon',
+ source: 'rules/nb/nb-tildeforms.js'
+ },
+ 'nn-tildeforms': {
+ name: 'Tildemerkt transliterasjon',
+ source: 'rules/nb/nb-tildeforms.js'
+ },
+ 'or-transliteration': {
+ name: 'ଟ୍ରାନ୍ସଲିଟରେସନ',
+ source: 'rules/or/or-transliteration.js'
+ },
+ 'or-inscript': {
+ name: 'ଇନସ୍କ୍ରିପ୍ଟ',
+ source: 'rules/or/or-inscript.js'
+ },
+ 'or-inscript2': {
+ name: 'ଇନସ୍କ୍ରିପ୍ଟ2',
+ source: 'rules/or/or-inscript2.js'
+ },
+ 'or-lekhani': {
+ name: 'ଲେଖନୀ',
+ source: 'rules/or/or-lekhani.js'
+ },
+ 'or-phonetic': {
+ name: 'ଫୋନେଟିକ',
+ source: 'rules/or/or-phonetic.js'
+ },
+ 'sd-inscript2': {
+ name: 'इनस्क्रिप्ट २',
+ source: 'rules/sd/sd-inscript2.js'
+ },
+ 'se-normforms': {
+ name: 'Normal forms',
+ source: 'rules/se/se-normforms.js'
+ },
+ 'sk-kbd': {
+ name: 'Štandardná',
+ source: 'rules/sk/sk-kbd.js'
+ },
+ 'sr-kbd': {
+ name: 'Стандардна',
+ source: 'rules/sr/sr-kbd.js'
+ },
+ 'te-inscript': {
+ name: 'ఇన్\u200dస్క్రిప్ట్',
+ source: 'rules/te/te-inscript.js'
+ },
+ 'te-inscript2': {
+ name: 'ఇన్\u200dస్క్రిప్ట్ 2',
+ source: 'rules/te/te-inscript2.js'
+ },
+ 'te-transliteration': {
+ name: 'లిప్యంతరీకరణ',
+ source: 'rules/te/te-transliteration.js'
+ },
+ 'pa-inscript': {
+ name: 'ਇਨਸ੍ਕ੍ਰਿਪ੍ਟ',
+ source: 'rules/pa/pa-inscript.js'
+ },
+ 'pa-inscript2': {
+ name: 'ਇਨਸ੍ਕ੍ਰਿਪ੍ਟ2',
+ source: 'rules/pa/pa-inscript2.js'
+ },
+ 'pa-jhelum': {
+ name: 'ਜੇਹਲਮ',
+ source: 'rules/pa/pa-jhelum.js'
+ },
+ 'pa-transliteration': {
+ name: 'ਤ੍ਰਾਨ੍ਸ੍ਲਿਤੇਰਾਤਿਓਂ',
+ source: 'rules/pa/pa-transliteration.js'
+ },
+ 'pa-phonetic': {
+ name: 'ਫੋਨੇਟਿਕ',
+ source: 'rules/pa/pa-phonetic.js'
+ },
+ 'ru-jcuken': {
+ name: 'ЙЦУКЕН',
+ source: 'rules/ru/ru-jcuken.js'
+ },
+ 'ru-kbd': {
+ name: 'кбд',
+ source: 'rules/ru/ru-kbd.js'
+ },
+ 'ru-phonetic': {
+ name: 'фонетический',
+ source: 'rules/ru/ru-phonetic.js'
+ },
+ 'ru-yawerty': {
+ name: 'yawerty',
+ source: 'rules/ru/ru-yawerty.js'
+ },
+ 'sa-iast': {
+ name: 'Romanized',
+ source: 'rules/sa/sa-iast.js'
+ },
+ 'sa-inscript': {
+ name: 'इनस्क्रिप्ट',
+ source: 'rules/sa/sa-inscript.js'
+ },
+ 'sa-inscript2': {
+ name: 'इनस्क्रिप्ट २',
+ source: 'rules/sa/sa-inscript2.js'
+ },
+ 'sa-transliteration': {
+ name: 'ट्रन्स्लितेरतिओन्',
+ source: 'rules/sa/sa-transliteration.js'
+ },
+ 'sah-transliteration': {
+ name: 'Transliteration',
+ source: 'rules/sah/sah-transliteration.js'
+ },
+ 'sat-inscript2': {
+ name: 'इनस्क्रिप्ट २',
+ source: 'rules/sat/sat-inscript2.js'
+ },
+ 'si-singlish': {
+ name: 'සිංග්ලිෂ්',
+ source: 'rules/si/si-singlish.js'
+ },
+ 'si-wijesekara': {
+ name: 'විජේසේකර',
+ source: 'rules/si/si-wijesekara.js'
+ },
+ 'ur-phonetic': {
+ name: 'صوتی',
+ source: 'rules/ur/ur-phonetic.js'
+ },
+ 'ur-transliteration': {
+ name: 'ٹرانسلٹریشن',
+ source: 'rules/ur/ur-transliteration.js'
+ },
+ 'ipa-sil': {
+ name: 'International Phonetic Alphabet - SIL',
+ source: 'rules/fonipa/ipa-sil.js'
+ },
+ 'ipa-x-sampa': {
+ name: 'International Phonetic Alphabet - X-SAMPA',
+ source: 'rules/fonipa/ipa-x-sampa.js'
+ },
+ 'udm-alt': {
+ name: 'Удмурт ALT',
+ source: 'rules/udm/udm-alt.js'
+ },
+ 'uk-kbd': {
+ name: 'кбд',
+ source: 'rules/uk/uk-kbd.js'
+ },
+ 'ug-kbd': {
+ name: 'Uyghur kbd',
+ source: 'rules/ug/ug-kbd.js'
+ },
+ 'uz-kbd': {
+ name: 'Uzbek kbd',
+ source: 'rules/uz/uz-kbd.js'
+ },
+ 'vec-GVU': {
+ name: 'Venetian',
+ source: 'rules/vec/vec-GVU.js'
+ }
+ } );
+
+ $.extend( $.ime.languages, {
+ 'ady': {
+ autonym: 'адыгэбзэ',
+ inputmethods: [ 'cyrl-palochka' ]
+ },
+ 'ahr': {
+ autonym: 'अहिराणी',
+ inputmethods: [ 'mr-transliteration', 'mr-inscript' ]
+ },
+ 'am': {
+ autonym: 'አማርኛ',
+ inputmethods: [ 'am-transliteration' ]
+ },
+ 'ar': {
+ autonym: 'العربية',
+ inputmethods: [ 'ar-kbd' ]
+ },
+ 'as': {
+ autonym: 'অসমীয়া',
+ inputmethods: [ 'as-transliteration', 'as-avro', 'as-bornona', 'as-inscript', 'as-phonetic', 'as-inscript2' ]
+ },
+ 'av': {
+ autonym: 'авар',
+ inputmethods: [ 'cyrl-palochka' ]
+ },
+ 'bbc': {
+ autonym: 'Batak',
+ inputmethods: [ 'batak-qwerty' ]
+ },
+ 'be': {
+ autonym: 'беларуская',
+ inputmethods: [ 'be-transliteration', 'be-latin', 'be-kbd' ]
+ },
+ 'be-tarask': {
+ autonym: 'беларуская (тарашкевіца)',
+ inputmethods: [ 'be-transliteration', 'be-latin' ]
+ },
+ 'bh': {
+ autonym: 'भोजपुरी',
+ inputmethods: [ 'hi-transliteration' ]
+ },
+ 'bho': {
+ autonym: 'भोजपुरी',
+ inputmethods: [ 'hi-transliteration' ]
+ },
+ 'bn': {
+ autonym: 'বাংলা',
+ inputmethods: [ 'bn-avro', 'bn-inscript', 'bn-nkb', 'bn-probhat', 'bn-inscript2' ]
+ },
+ 'bo': {
+ autonym: 'བོད་ཡིག།',
+ inputmethods: [ 'bo-ewts' ]
+ },
+ 'brx': {
+ autonym: 'बोड़ो',
+ inputmethods: [ 'brx-inscript', 'brx-inscript2' ]
+ },
+ 'ckb': {
+ autonym: 'کوردی',
+ inputmethods: [ 'ckb-transliteration-arkbd', 'ckb-transliteration-fakbd', 'ckb-transliteration-lakbd' ]
+ },
+ 'ce': {
+ autonym: 'нохчийн',
+ inputmethods: [ 'cyrl-palochka' ]
+ },
+ 'cv': {
+ autonym: 'Чăвашла',
+ inputmethods: [ 'cv-cyr-altgr', 'cv-lat-altgr', 'cv-cyr-numbers' ]
+ },
+ 'da': {
+ autonym: 'Dansk',
+ inputmethods: [ 'da-normforms' ]
+ },
+ 'de': {
+ autonym: 'Deutsch',
+ inputmethods: [ 'de-transliteration' ]
+ },
+ 'diq': {
+ autonym: 'Kirdkî',
+ inputmethods: [ 'ku-h', 'ku-tr' ]
+ },
+ 'doi': {
+ autonym: 'डोगरी',
+ inputmethods: [ 'doi-inscript2' ]
+ },
+ 'en': {
+ autonym: 'English',
+ inputmethods: [ 'ipa-sil', 'ipa-x-sampa' ]
+ },
+ 'el': {
+ autonym: 'Ελληνικά',
+ inputmethods: [ 'el-kbd' ]
+ },
+ 'eo': {
+ autonym: 'Esperanto',
+ inputmethods: [ 'eo-transliteration', 'eo-h', 'eo-h-f', 'eo-plena', 'eo-q', 'eo-vi', 'eo-x' ]
+ },
+ 'fa': {
+ autonym: 'فارسی',
+ inputmethods: [ 'fa-kbd' ]
+ },
+ 'fo': {
+ autonym: 'Føroyskt',
+ inputmethods: [ 'fo-normforms' ]
+ },
+ 'fi': {
+ autonym: 'Suomi',
+ inputmethods: [ 'fi-transliteration' ]
+ },
+ 'lud': {
+ autonym: 'lüüdi',
+ inputmethods: [ 'lud-transliteration' ]
+ },
+ 'gom': {
+ autonym: 'कोंकणी',
+ inputmethods: [ 'hi-transliteration', 'hi-inscript', 'gom-inscript2' ]
+ },
+ 'gu': {
+ autonym: 'ગુજરાતી',
+ inputmethods: [ 'gu-transliteration', 'gu-inscript', 'gu-inscript2', 'gu-phonetic' ]
+ },
+ 'he': {
+ autonym: 'עברית',
+ inputmethods: [ 'he-standard-2012-extonly', 'he-standard-2012' ]
+ },
+ 'hi': {
+ autonym: 'हिन्दी',
+ inputmethods: [ 'hi-transliteration', 'hi-inscript', 'hi-bolnagri', 'hi-phonetic', 'hi-inscript2' ]
+ },
+ 'hr': {
+ autonym: 'Hrvatski',
+ inputmethods: [ 'hr-kbd' ]
+ },
+ 'hy': {
+ autonym: 'հայերեն',
+ inputmethods: [ 'hy-ephonetic', 'hy-typewriter', 'hy-ephoneticalt', 'hy-emslegacy', 'hy-wmslegacy' ]
+ },
+ 'hne': {
+ autonym: 'छत्तीसगढ़ी',
+ inputmethods: [ 'hi-transliteration' ]
+ },
+ 'is': {
+ autonym: 'Íslenska',
+ inputmethods: [ 'is-normforms' ]
+ },
+ 'fonipa': {
+ autonym: 'International Phonetic Alphabet',
+ inputmethods: [ 'ipa-sil', 'ipa-x-sampa' ]
+ },
+ 'jv': {
+ autonym: 'ꦧꦱꦗꦮ',
+ inputmethods: [ 'jv-transliteration' ]
+ },
+ 'ka': {
+ autonym: 'ქართული ენა',
+ inputmethods: [ 'ka-transliteration', 'ka-kbd' ]
+ },
+ 'kbd': {
+ autonym: 'адыгэбзэ (къэбэрдеибзэ)',
+ inputmethods: [ 'cyrl-palochka' ]
+ },
+ 'kk': {
+ autonym: 'Қазақша',
+ inputmethods: [ 'kk-kbd', 'kk-arabic' ]
+ },
+ 'kn': {
+ autonym: 'ಕನ್ನಡ',
+ inputmethods: [ 'kn-transliteration', 'kn-inscript', 'kn-kgp', 'kn-inscript2' ]
+ },
+ 'ks': {
+ autonym: 'कॉशुर / کٲشُر',
+ inputmethods: [ 'ks-inscript', 'ks-kbd' ]
+ },
+ 'ky': {
+ autonym: 'Кыргыз',
+ inputmethods: [ 'ky-cyrl-alt' ]
+ },
+ 'kab': {
+ autonym: 'ⵜⴰⵇⴱⴰⵢⵍⵉⵜ',
+ inputmethods: [ 'ber-tfng' ]
+ },
+ 'ku': {
+ autonym: 'Kurdî',
+ inputmethods: [ 'ku-h', 'ku-tr' ]
+ },
+ 'lbe': {
+ autonym: 'лакку',
+ inputmethods: [ 'cyrl-palochka' ]
+ },
+ 'lez': {
+ autonym: 'лезги',
+ inputmethods: [ 'cyrl-palochka' ]
+ },
+ 'lo': {
+ autonym: 'ລາວ',
+ inputmethods: [ 'lo-kbd' ]
+ },
+ 'mai': {
+ autonym: 'मैथिली',
+ inputmethods: [ 'mai-inscript', 'mai-inscript2' ]
+ },
+ 'mh': {
+ autonym: 'Kajin M̧ajeļ',
+ inputmethods: [ 'mh' ]
+ },
+ 'ml': {
+ autonym: 'മലയാളം',
+ inputmethods: [ 'ml-transliteration', 'ml-inscript', 'ml-inscript2' ]
+ },
+ 'mn': {
+ autonym: 'Монгол',
+ inputmethods: [ 'mn-cyrl' ]
+ },
+ 'mni': {
+ autonym: 'Manipuri',
+ inputmethods: [ 'mni-inscript2' ]
+ },
+ 'mr': {
+ autonym: 'मराठी',
+ inputmethods: [ 'mr-transliteration', 'mr-inscript2', 'mr-inscript', 'mr-phonetic' ]
+ },
+ 'my': {
+ autonym: 'မြန်မာ',
+ inputmethods: [ 'my-xkb' ]
+ },
+ 'ne': {
+ autonym: 'नेपाली',
+ inputmethods: [ 'ne-transliteration', 'ne-inscript2', 'ne-inscript', 'ne-rom', 'ne-trad' ]
+ },
+ 'new': {
+ autonym: 'नेपाल भाषा',
+ inputmethods: [ 'hi-transliteration', 'hi-inscript' ]
+ },
+ 'nb': {
+ autonym: 'Norsk (bokmål)',
+ inputmethods: [ 'nb-normforms', 'nb-tildeforms' ]
+ },
+ 'nn': {
+ autonym: 'Norsk (nynorsk)',
+ inputmethods: [ 'nb-normforms', 'nn-tildeforms' ]
+ },
+ 'or': {
+ autonym: 'ଓଡ଼ିଆ',
+ inputmethods: [ 'or-phonetic', 'or-transliteration', 'or-inscript', 'or-inscript2', 'or-lekhani' ]
+ },
+ 'pa': {
+ autonym: 'ਪੰਜਾਬੀ',
+ inputmethods: [ 'pa-transliteration', 'pa-inscript', 'pa-phonetic', 'pa-inscript2', 'pa-jhelum' ]
+ },
+ 'rif': {
+ autonym: 'ⵜⴰⵔⵉⴼⵉⵜ',
+ inputmethods: [ 'ber-tfng' ]
+ },
+ 'ru': {
+ autonym: 'русский',
+ inputmethods: [ 'ru-jcuken', 'ru-kbd', 'ru-phonetic', 'ru-yawerty' ]
+ },
+ 'sah': {
+ autonym: 'саха тыла',
+ inputmethods: [ 'sah-transliteration' ]
+ },
+ 'sa': {
+ autonym: 'संस्कृत',
+ inputmethods: [ 'sa-transliteration', 'sa-inscript2', 'sa-inscript', 'sa-iast' ]
+ },
+ 'sat': {
+ autonym: 'संताली',
+ inputmethods: [ 'sat-inscript2']
+ },
+ 'sd': {
+ autonym: 'सिंधी',
+ inputmethods: [ 'sd-inscript2' ]
+ },
+ 'se': {
+ autonym: 'Davvisámegiella',
+ inputmethods: [ 'se-normforms' ]
+ },
+ 'shi': {
+ autonym: 'ⵜⴰⵛⵍⵃⵉⵜ',
+ inputmethods: [ 'ber-tfng' ]
+ },
+ 'si': {
+ autonym: 'සිංහල',
+ inputmethods: [ 'si-singlish', 'si-wijesekara' ]
+ },
+ 'sk': {
+ autonym: 'Slovenčina',
+ inputmethods: [ 'sk-kbd' ]
+ },
+ 'sr': {
+ autonym: 'Српски / srpski',
+ inputmethods: [ 'sr-kbd' ]
+ },
+ 'sv': {
+ autonym: 'Svenska',
+ inputmethods: [ 'sv-normforms' ]
+ },
+ 'ta': {
+ autonym: 'தமிழ்',
+ inputmethods: [ 'ta-transliteration', 'ta-99', 'ta-inscript', 'ta-bamini', 'ta-inscript2' ]
+ },
+ 'tcy': {
+ autonym: 'ತುಳು',
+ inputmethods: [ 'kn-transliteration' ]
+ },
+ 'te': {
+ autonym: 'తెలుగు',
+ inputmethods: [ 'te-transliteration', 'te-inscript', 'te-inscript2' ]
+ },
+ 'th': {
+ autonym: 'ไทย',
+ inputmethods: [ 'th-kedmanee', 'th-pattachote' ]
+ },
+ 'tkr': {
+ autonym: 'цӀаӀхна миз',
+ inputmethods: [ 'cyrl-palochka' ]
+ },
+ 'tzm': {
+ autonym: 'ⵜⴰⵎⴰⵣⵉⵖⵜ',
+ inputmethods: [ 'ber-tfng' ]
+ },
+ 'udm': {
+ autonym: 'удмурт',
+ inputmethods: [ 'udm-alt' ]
+ },
+ 'uk': {
+ autonym: 'Українська',
+ inputmethods: [ 'uk-kbd' ]
+ },
+ 'ug': {
+ autonym: 'ئۇيغۇرچە / Uyghurche',
+ inputmethods: [ 'ug-kbd' ]
+ },
+ 'ur': {
+ autonym: 'اردو',
+ inputmethods: [ 'ur-transliteration', 'ur-phonetic' ]
+ },
+ 'uz': {
+ autonym: 'Oʻzbekcha',
+ inputmethods: [ 'uz-kbd' ]
+ },
+ 'vec': {
+ autonym: 'Venetian',
+ inputmethods: [ 'vec-GVU' ]
+ }
+ } );
+
+}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/README.md b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/README.md
new file mode 100644
index 00000000..6197920c
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/README.md
@@ -0,0 +1,107 @@
+jQuery.ime Input method specification
+=====================================
+
+Input methods are defined in javascript files. An input method is a javascript
+object and it is passed to $.ime.register() method to register with jquery.ime
+
+eg: $.ime.register( hebrewStandardKeyboard );
+
+Metadata fields
+---------------
+
+id: A mandatory unique identifier that represents the input method.
+eg: "hindi-inscript"
+
+name: A mandatory short name for the input method. eg: Hindi InScript
+
+description: An optional short description about the input method.
+eg: "keyboard layout as per inscript standard"
+
+date: An optional string to represent when this input method was written.
+Format should be: yyyy-mm-dd
+
+author: An optional string containing the authors name. Can contain email
+address as well. eg: "Santhosh Thottingal, <santhosh.thottingal@gmail.com>"
+
+URL: A mandatory string containing URL for source where keyboard is defined,
+information about trademark restrictions if any, layout and help.
+
+license: An optional string containing licence information. Eg: "CC-BY-SA" or
+"GPLv3".
+
+version: An optional string containing version information.
+
+Input method definition
+-----------------------
+
+patterns: A regular expression table that maps the original inputs to the
+target language.
+
+eg:
+patterns: [
+ [ 'q', '/' ],
+ [ 'w', '\'' ],
+ [ 'e', 'ק' ],
+ [ 'r', 'ר' ],
+ [ 't', 'א' ],
+ [ 'y', 'ט' ],
+ [ 'u', 'ו' ],
+ [ 'i', 'ן' ],
+ [ 'o', 'ם' ],
+ [ 'p', 'פ' ]
+ ...
+ // These characters are mirrored in RTL languages
+ [ '\\(', ')' ],
+ [ '\\)', '(' ],
+ [ '\\[', ']' ],
+ [ '\\]', '[' ]
+ ]
+
+Any valid regular expression is possible as first element of each array item.
+More examples
+ [ '([ക-ഹ])a', '$1ാ' ]
+ [ '(([ൺ-ൿം])\u200c+)?I', '$2ഐ' ]
+
+In the above example, $1, $1 etc are according to the normal regular expression
+replace syntax.
+
+The second member of pattern can be a function as well. For eg:
+
+patterns: [ [ '[a-z]', function ( $1 ) {
+ return $1.toUpperCase();
+ } ] ]
+
+This rule replace all key strokes to its upper case character.
+
+contextLength: Length of the context to remember. jquery.ime can replace the
+text based on the previously typed characters. eg:
+
+ [ 'ൿh', 'c', 'ച്' ]
+
+Note that this pattern definition has 3 members, the middle one is the context.
+This rule is interpreted as
+
+The current key is h, previous key is c. For the previous key press c, we have
+a transliteration ൿ. But if it is followed by h and ൿ is indeed from key press
+c, replace ൿh with ച്
+
+To make this work, we need to remember the previous key strokes. How many of
+them we need to remember? contextLength should have that value.
+
+This is optional field with default value 0. ie, we don't remember previous key
+strokes by default.
+
+maxKeyLength: While trying to find possible matches, we need to know how many
+characters from the current typing location(cursor) should be used before
+giving up.
+
+maxKeyLength defines it. Normally it is the length of largest regex sequence in
+the patterns.
+
+This field is optional and default value is 1.
+
+Examples
+--------
+
+For complete examples, please refer the existing input method definitions.
+
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/am/am-transliteration.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/am/am-transliteration.js
new file mode 100644
index 00000000..511bcfec
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/am/am-transliteration.js
@@ -0,0 +1,432 @@
+( function ( $ ) {
+ 'use strict';
+
+ var amTransliteration = {
+ id: 'am-transliteration',
+ name: 'Amharic Transliteration',
+ description: 'Amharic Transliteration',
+ date: '2012-09-09',
+ URL: 'http://am.wikipedia.org/wiki/%E1%8A%A5%E1%88%AD%E1%8B%B3%E1%89%B3:%E1%8A%A2%E1%89%B5%E1%8B%AE%E1%8D%92%E1%8A%AD_%E1%88%B4%E1%88%AB',
+ author: 'Elfalem [[User:Elfalem]])',
+ license: 'GPLv3',
+ version: '1.0',
+ contextLength: 1,
+ maxKeyLength: 2,
+ patterns: [
+ [ '\\\\([A-Za-z\\>\\<_~ ])', '\\\\', '$1' ], // include space also
+
+ [ '፼0', '፲፼' ], // 10000 and 0 becomes 10 10000
+ [ '፲፻0', '፼' ], // 10x100 and 0 becomes 10000
+ [ '፻0', '፲፻' ], // NUM_100 and 0 becomes 10 100
+
+ [ '፻0', '፲፻' ], // 1000
+
+ [ '፳0', '፪፻' ], // 200
+ [ '፴0', '፫፻' ], // 300
+ [ '፵0', '፬፻' ], // 400
+ [ '፶0', '፭፻' ], // 500
+ [ '፷0', '፮፻' ], // 600
+ [ '፸0', '፯፻' ], // 700
+ [ '፹0', '፰፻' ], // 800
+ [ '፺0', '፱፻' ], // 900
+
+ [ '፩0', '፲' ], // 10
+ [ '፪0', '፳' ], // 20
+ [ '፫0', '፴' ], // 30
+ [ '፬0', '፵' ], // 40
+ [ '፭0', '፶' ], // 50
+ [ '፮0', '፷' ], // 60
+ [ '፯0', '፸' ], // 70
+ [ '፰0', '፹' ], // 80
+ [ '፱0', '፺' ], // 90
+ [ '፲0', '፻' ], // 100
+
+ [ '1', '፩' ],
+ [ '2', '፪' ],
+ [ '3', '፫' ],
+ [ '4', '፬' ],
+ [ '5', '፭' ],
+ [ '6', '፮' ],
+ [ '7', '፯' ],
+ [ '8', '፰' ],
+ [ '9', '፱' ],
+
+ [ 'ህe', 'ሀ' ],
+ [ 'ህu', 'ሁ' ],
+ [ 'ህi', 'ሂ' ],
+ [ 'ህa', 'ሃ' ],
+ [ '(ሀe|ህE)', 'ሄ' ],
+ [ 'ህo', 'ሆ' ],
+ [ 'ህW', 'ኋ' ],
+
+ [ 'ልe', 'ለ' ],
+ [ 'ልu', 'ሉ' ],
+ [ 'ልi', 'ሊ' ],
+ [ 'ልa', 'ላ' ],
+ [ '(ለe|ልE)', 'ሌ' ],
+ [ 'ልo', 'ሎ' ],
+ [ 'ልW', 'ሏ' ],
+
+ [ 'ሕe', 'ሐ' ],
+ [ 'ሕu', 'ሑ' ],
+ [ 'ሕi', 'ሒ' ],
+ [ 'ሕa', 'ሓ' ],
+ [ '(ሐe|ሕE)', 'ሔ' ],
+ [ 'ሕo', 'ሖ' ],
+ [ 'ሕW', 'ሗ' ],
+
+ [ 'ምe', 'መ' ],
+ [ 'ምu', 'ሙ' ],
+ [ 'ምi', 'ሚ' ],
+ [ 'ምa', 'ማ' ],
+ [ '(መe|ምE)', 'ሜ' ],
+ [ 'ምo', 'ሞ' ],
+ [ 'ምW', 'ሟ' ],
+
+ [ 'ርe', 'ረ' ],
+ [ 'ርu', 'ሩ' ],
+ [ 'ርi', 'ሪ' ],
+ [ 'ርa', 'ራ' ],
+ [ '(ረe|ርE)', 'ሬ' ],
+ [ 'ርo', 'ሮ' ],
+ [ 'ርW', 'ሯ' ],
+
+ [ 'ስe', 'ሰ' ],
+ [ 'ስu', 'ሱ' ],
+ [ 'ስi', 'ሲ' ],
+ [ 'ስa', 'ሳ' ],
+ [ '(ሰe|ስE)', 'ሴ' ],
+ [ 'ስo', 'ሶ' ],
+ [ 'ስW', 'ሷ' ],
+
+ [ 'ሥe', 'ሠ' ],
+ [ 'ሥu', 'ሡ' ],
+ [ 'ሥi', 'ሢ' ],
+ [ 'ሥa', 'ሣ' ],
+ [ '(ሠe|ሥE)', 'ሤ' ],
+ [ 'ሥo', 'ሦ' ],
+ [ 'ሥW', 'ሧ' ],
+
+ [ 'ሽe', 'ሸ' ],
+ [ 'ሽu', 'ሹ' ],
+ [ 'ሽi', 'ሺ' ],
+ [ 'ሽa', 'ሻ' ],
+ [ '(ሸe|ሽE)', 'ሼ' ],
+ [ 'ሽo', 'ሾ' ],
+ [ 'ሽW', 'ሿ' ],
+
+ [ 'ቅe', 'ቀ' ],
+ [ 'ቅu', 'ቁ' ],
+ [ 'ቅi', 'ቂ' ],
+ [ 'ቅa', 'ቃ' ],
+ [ '(ቀe|ቅE)', 'ቄ' ],
+ [ 'ቅo', 'ቆ' ],
+
+ [ 'ቋe', 'ቈ' ],
+ [ '(ቋu|ቋW)', 'ቍ' ],
+ [ 'ቋi', 'ቊ' ],
+ [ 'ቋa', 'ቋ' ],
+ [ 'ቋo', 'ቌ' ],
+
+ [ 'ቕe', 'ቐ' ],
+ [ 'ቕu', 'ቑ' ],
+ [ 'ቕi', 'ቒ' ],
+ [ 'ቕa', 'ቓ' ],
+ [ '(ቐe|ቕE)', 'ቔ' ],
+ [ 'ቕo', 'ቖ' ],
+ [ 'ቕW', 'ቛ' ],
+
+ [ '(ቛe|ቛee)', 'ቜ' ], // the second pattern probably won't be invoked in any case
+ [ 'ቛu', 'ቘ' ],
+ [ 'ቛi', 'ቚ' ],
+ [ 'ቛa', 'ቝ' ],
+
+ [ 'ብe', 'በ' ],
+ [ 'ብu', 'ቡ' ],
+ [ 'ብi', 'ቢ' ],
+ [ 'ብa', 'ባ' ],
+ [ '(በe|ብE)', 'ቤ' ],
+ [ 'ብo', 'ቦ' ],
+ [ 'ብW', 'ቧ' ],
+
+ [ 'ቭe', 'ቨ' ],
+ [ 'ቭu', 'ቩ' ],
+ [ 'ቭi', 'ቪ' ],
+ [ 'ቭa', 'ቫ' ],
+ [ '(ቨe|ቭE)', 'ቬ' ],
+ [ 'ቭo', 'ቮ' ],
+ [ 'ቭW', 'ቯ' ],
+
+ [ 'ትe', 'ተ' ],
+ [ 'ትu', 'ቱ' ],
+ [ 'ትi', 'ቲ' ],
+ [ 'ትa', 'ታ' ],
+ [ '(ተe|ትE)', 'ቴ' ],
+ [ 'ትo', 'ቶ' ],
+ [ 'ትW', 'ቷ' ],
+
+ [ 'ችe', 'ቸ' ],
+ [ 'ችu', 'ቹ' ],
+ [ 'ችi', 'ቺ' ],
+ [ 'ችa', 'ቻ' ],
+ [ '(ቸe|ችE)', 'ቼ' ],
+ [ 'ችo', 'ቾ' ],
+ [ 'ችW', 'ቿ' ],
+
+ [ 'ንe', 'ነ' ],
+ [ 'ንu', 'ኑ' ],
+ [ 'ንi', 'ኒ' ],
+ [ 'ንa', 'ና' ],
+ [ '(ነe|ንE)', 'ኔ' ],
+ [ 'ንo', 'ኖ' ],
+ [ 'ንW', 'ኗ' ],
+
+ [ 'ኝe', 'ኘ' ],
+ [ 'ኝu', 'ኙ' ],
+ [ 'ኝi', 'ኚ' ],
+ [ 'ኝa', 'ኛ' ],
+ [ '(ኘe|ኝE)', 'ኜ' ],
+ [ 'ኝo', 'ኞ' ],
+ [ 'ኝW', 'ኟ' ],
+
+ [ 'ክe', 'ከ' ],
+ [ 'ክu', 'ኩ' ],
+ [ 'ክi', 'ኪ' ],
+ [ 'ክa', 'ካ' ],
+ [ '(ከe|ክE)', 'ኬ' ],
+ [ 'ክo', 'ኮ' ],
+ [ 'ክW', 'ኳ' ],
+
+ [ 'ኳe', 'ኰ' ],
+ [ '(ኳu|ኳ\')', 'ኵ' ],
+ [ 'ኳi', 'ኲ' ],
+ [ '(ኰe|ኳE)', 'ኴ' ],
+
+ [ 'ኽe', 'ኸ' ],
+ [ 'ኽu', 'ኹ' ],
+ [ 'ኽi', 'ኺ' ],
+ [ 'ኽa', 'ኻ' ],
+ [ '(ኸe|ኽE)', 'ኼ' ],
+ [ 'ኽo', 'ኾ' ],
+ [ 'ኽW', 'ዃ' ],
+
+ [ 'ዃe', 'ዀ' ],
+ [ '(ዃu|ዃ\')', 'ዅ' ],
+ [ 'ዃi', 'ዂ' ],
+ [ 'ዃE', 'ዄ' ],
+
+ [ 'ውe', 'ወ' ],
+ [ 'ውu', 'ዉ' ],
+ [ 'ውi', 'ዊ' ],
+ [ 'ውa', 'ዋ' ],
+ [ '(ወe|ውE)', 'ዌ' ],
+ [ 'ውo', 'ዎ' ],
+
+ [ 'ዝe', 'ዘ' ],
+ [ 'ዝu', 'ዙ' ],
+ [ 'ዝi', 'ዚ' ],
+ [ 'ዝa', 'ዛ' ],
+ [ '(ዘe|ዝE)', 'ዜ' ],
+ [ 'ዝo', 'ዞ' ],
+ [ 'ዝW', 'ዟ' ],
+
+ [ 'ዥe', 'ዠ' ],
+ [ 'ዥu', 'ዡ' ],
+ [ 'ዥi', 'ዢ' ],
+ [ 'ዥa', 'ዣ' ],
+ [ '(ዠe|ዥE)', 'ዤ' ],
+ [ 'ዥo', 'ዦ' ],
+ [ 'ዥW', 'ዧ' ],
+
+ [ 'ይe', 'የ' ],
+ [ 'ይu', 'ዩ' ],
+ [ 'ይi', 'ዪ' ],
+ [ 'ይa', 'ያ' ],
+ [ '(የe|ይE)', 'ዬ' ],
+ [ 'ይo', 'ዮ' ],
+
+ [ 'ድe', 'ደ' ],
+ [ 'ድu', 'ዱ' ],
+ [ 'ድi', 'ዲ' ],
+ [ 'ድa', 'ዳ' ],
+ [ '(ደe|ድE)', 'ዴ' ],
+ [ 'ድo', 'ዶ' ],
+ [ 'ድW', 'ዷ' ],
+
+ [ 'ዽe', 'ዸ' ],
+ [ 'ዽu', 'ዹ' ],
+ [ 'ዽi', 'ዺ' ],
+ [ 'ዽa', 'ዻ' ],
+ [ '(ዸe|ዽE)', 'ዼ' ],
+ [ 'ዽo', 'ዾ' ],
+ [ 'ዽW', 'ዿ' ],
+
+ [ 'ጅe', 'ጀ' ],
+ [ 'ጅu', 'ጁ' ],
+ [ 'ጅi', 'ጂ' ],
+ [ 'ጅa', 'ጃ' ],
+ [ '(ጀe|ጅE)', 'ጄ' ],
+ [ 'ጅo', 'ጆ' ],
+ [ 'ጅW', 'ጇ' ],
+
+ [ 'ግe', 'ገ' ],
+ [ 'ግu', 'ጉ' ],
+ [ 'ግi', 'ጊ' ],
+ [ 'ግa', 'ጋ' ],
+ [ '(ገe|ግE)', 'ጌ' ],
+ [ 'ግo', 'ጎ' ],
+
+ [ 'ጓe', 'ጐ' ],
+ [ '(ጓu|ጓ\')', 'ጕ' ],
+ [ 'ጓi', 'ጒ' ],
+ [ '(ጐe|ጓE)', 'ጔ' ],
+
+ [ 'ጝe', 'ጘ' ],
+ [ 'ጝu', 'ጙ' ],
+ [ 'ጝi', 'ጚ' ],
+ [ 'ጝa', 'ጛ' ],
+ [ '(ጘe|ጝE)', 'ጜ' ],
+ [ 'ጝo', 'ጞ' ],
+
+ [ 'ጥe', 'ጠ' ],
+ [ 'ጥu', 'ጡ' ],
+ [ 'ጥi', 'ጢ' ],
+ [ 'ጥa', 'ጣ' ],
+ [ '(ጠe|ጥE)', 'ጤ' ],
+ [ 'ጥo', 'ጦ' ],
+ [ 'ጥW', 'ጧ' ],
+
+ [ 'ጭe', 'ጨ' ],
+ [ 'ጭu', 'ጩ' ],
+ [ 'ጭi', 'ጪ' ],
+ [ 'ጭa', 'ጫ' ],
+ [ '(ጨe|ጭE)', 'ጬ' ],
+ [ 'ጭo', 'ጮ' ],
+ [ 'ጭW', 'ጯ' ],
+
+ [ 'ጵe', 'ጰ' ],
+ [ 'ጵu', 'ጱ' ],
+ [ 'ጵi', 'ጲ' ],
+ [ 'ጵa', 'ጳ' ],
+ [ '(ጰe|ጵE)', 'ጴ' ],
+ [ 'ጵo', 'ጶ' ],
+ [ 'ጵW', 'ጷ' ],
+
+ [ 'ጽe', 'ጸ' ],
+ [ 'ጽu', 'ጹ' ],
+ [ 'ጽi', 'ጺ' ],
+ [ 'ጽa', 'ጻ' ],
+ [ '(ጸe|ጽE)', 'ጼ' ],
+ [ 'ጽo', 'ጾ' ],
+ [ 'ጽW', 'ጿ' ],
+
+ [ 'ፅe', 'ፀ' ],
+ [ 'ፅu', 'ፁ' ],
+ [ 'ፅi', 'ፂ' ],
+ [ 'ፅa', 'ፃ' ],
+ [ '(ፀe|ፅE)', 'ፄ' ],
+ [ 'ፅo', 'ፆ' ],
+
+ [ 'ፍe', 'ፈ' ],
+ [ 'ፍu', 'ፉ' ],
+ [ 'ፍi', 'ፊ' ],
+ [ 'ፍa', 'ፋ' ],
+ [ '(ፈe|ፍE)', 'ፌ' ],
+ [ 'ፍo', 'ፎ' ],
+ [ 'ፍW', 'ፏ' ],
+ [ 'ፍY', 'ፚ' ],
+
+ [ 'ፕe', 'ፐ' ],
+ [ 'ፕu', 'ፑ' ],
+ [ 'ፕi', 'ፒ' ],
+ [ 'ፕa', 'ፓ' ],
+ [ '(ፐe|ፕE)', 'ፔ' ],
+ [ 'ፕo', 'ፖ' ],
+ [ 'ፕW', 'ፗ' ],
+
+ // the following mappings are not documented in Ethiopic sera
+ [ 'ኅu', 'ኁ' ],
+ [ 'ኅi', 'ኂ' ],
+ [ 'ኅa', 'ኃ' ],
+ [ 'ኅE', 'ኄ' ],
+ [ 'ኅo', 'ኆ' ],
+ [ 'ኅW', 'ኋ' ],
+ //end
+
+ [ 'ህh', 'ኅ' ],
+ [ 'h', 'ህ' ],
+ [ '(l|L)', 'ል' ],
+ [ 'H', 'ሕ' ],
+ [ '(m|M)', 'ም' ],
+ [ '(r|R)', 'ር' ],
+ [ 'ስs', 'ሥ' ],
+ [ 's', 'ስ' ],
+ [ '(x|X)', 'ሽ' ],
+ [ 'q', 'ቅ' ],
+ [ 'ቅW', 'ቋ' ],
+ [ 'Q', 'ቕ' ],
+ [ 'ቕW', 'ቛ' ],
+ [ '(b|B)', 'ብ' ],
+ [ '(v|V)', 'ቭ' ],
+ [ 't', 'ት' ],
+ [ 'c', 'ች' ],
+ [ 'n', 'ን' ],
+ [ 'N', 'ኝ' ],
+ [ 'k', 'ክ' ],
+ [ '(ክW|ኳa)', 'ኳ' ],
+ [ 'K', 'ኽ' ],
+ [ '(ኽW|ዃa)', 'ዃ' ],
+ [ 'z', 'ዝ' ],
+ [ 'Z', 'ዥ' ],
+ [ '(y|Y)', 'ይ' ],
+ [ 'd', 'ድ' ],
+ [ 'D', 'ዽ' ],
+ [ '(j|J)', 'ጅ' ],
+ [ 'g', 'ግ' ],
+ [ '(ግW|ጓa)', 'ጓ' ],
+ [ 'G', 'ጝ' ],
+ [ 'T', 'ጥ' ],
+ [ 'C', 'ጭ' ],
+ [ 'P', 'ጵ' ],
+ [ 'ጽS', 'ፅ' ],
+ [ 'S', 'ጽ' ],
+ [ '(f|F)', 'ፍ' ],
+ [ 'p', 'ፕ' ],
+ [ '(w|W)', 'ው' ],
+
+ // vowels
+ // the following mappings are not documented in Ethiopic sera
+ [ 'አa', 'ዓ' ],
+ [ 'A', 'ኣ' ],
+ [ 'አe', 'ዐ' ],
+ [ 'ኡu', 'ዑ' ],
+ [ 'ኢi', 'ዒ' ],
+ [ 'ኤE', 'ዔ' ],
+ [ 'እe', 'ዕ' ],
+ [ 'ኦo', 'ዖ' ],
+ //end undocumented
+
+ [ 'እa', 'ኧ' ],
+ [ 'e', 'እ' ],
+ [ 'u', 'ኡ' ],
+ [ 'i', 'ኢ' ],
+ [ 'a', 'አ' ],
+ [ 'E', 'ኤ' ],
+ [ 'o', 'ኦ' ],
+ //end vowels
+
+ [ '\\<\\<', '«' ],
+ [ '\\>\\>', '»' ],
+ [ '\\?\\?', '፧' ],
+ [ '\\*\\*', '፨' ],
+ [ '\\;', '፤' ],
+ [ '፡\\:', '።' ],
+ [ ',', '፣' ],
+ [ '፡-', '፦' ],
+ [ '\\:', '፡' ]
+
+ ]
+ };
+
+ $.ime.register( amTransliteration );
+}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ar/ar-kbd.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ar/ar-kbd.js
new file mode 100644
index 00000000..6ca5ccd1
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ar/ar-kbd.js
@@ -0,0 +1,115 @@
+( function ( $ ) {
+ 'use strict';
+
+ var arKbd = {
+ id: 'ar-kbd',
+ name: 'kbd',
+ description: 'Arabic keyboard layout',
+ date: '2013-02-09',
+ URL: 'http://github.com/wikimedia/jquery.ime',
+ author: 'Parag Nemade',
+ license: 'GPLv3',
+ version: '1.0',
+ patterns: [
+ ['1', '١'],
+ ['2', '٢'],
+ ['3', '٣'],
+ ['4', '٤'],
+ ['5', '٥'],
+ ['6', '٦'],
+ ['7', '٧'],
+ ['8', '٨'],
+ ['9', '٩'],
+ ['0', '٠'],
+ ['`', 'ذ'],
+
+ ['q', 'ض'],
+ ['w', 'ص'],
+ ['e', 'ث'],
+ ['r', 'ق'],
+ ['t', 'ف'],
+ ['y', 'غ'],
+ ['u', 'ع'],
+ ['i', 'ه'],
+ ['o', 'خ'],
+ ['p', 'ح'],
+ ['\\[', 'ج'],
+ ['\\]', 'د'],
+
+ ['a', 'ش'],
+ ['s', 'س'],
+ ['d', 'ي'],
+ ['f', 'ب'],
+ ['g', 'ل'],
+ ['h', 'ا'],
+ ['j', 'ت'],
+ ['k', 'ن'],
+ ['l', 'م'],
+ [';', 'ك'],
+ ['\'', 'ط'],
+
+ ['z', 'ئ'],
+ ['x', 'ء'],
+ ['c', 'ؤ'],
+ ['v', 'ر'],
+ ['b', 'لا'],
+ ['n', 'ى'],
+ ['m', 'ة'],
+ [',', 'و'],
+ ['\\.', 'ز'],
+ ['/', 'ظ'],
+
+ ['\\(', ')'],
+ ['\\)', '('],
+ ['\\~', 'ّ'],
+
+ ['Q', 'َ'],
+ ['W', 'ً'],
+ ['E', 'ُ'],
+ ['R', 'ٌ'],
+ ['T', 'لإ'],
+ ['Y', 'إ'],
+ ['U', '`'],
+ ['I', '÷'],
+ ['O', '×'],
+ ['P', '؛'],
+ ['\\{', '>'],
+ ['\\}', '<'],
+
+ ['A', 'ِ'],
+ ['S', 'ٍ'],
+ ['D', ']'],
+ ['F', '['],
+ ['G', 'لأ'],
+ ['H', 'أ'],
+ ['J', 'ـ'],
+ ['K', '،'],
+ ['L', '/'],
+
+ ['Z', '~'],
+ ['X', 'ْ'],
+ ['C', '}'],
+ ['V', '{'],
+ ['B', 'لآ'],
+ ['N', 'آ'],
+ ['M', '\''],
+ ['\\<', ','],
+ ['\\>', '.'],
+ ['\\?', '؟']
+ ],
+ patterns_x: [
+ [',', '>'],
+ ['\\.', '<'],
+ ['\\[', ']'],
+ ['\\]', '['],
+ ['J', '\u200d'],
+ ['L', '\u200e'],
+ ['N', '\u200c'],
+ ['R', '\u200f'],
+ ['\\{', '}'],
+ ['\\}', '{']
+ ]
+ };
+
+ $.ime.register( arKbd );
+}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/as/as-avro.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/as/as-avro.js
new file mode 100644
index 00000000..3fd422b3
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/as/as-avro.js
@@ -0,0 +1,168 @@
+( function ( $ ) {
+ 'use strict';
+
+ var asAvro = {
+ id: 'as-avro',
+ name: 'অভ্ৰ',
+ description: 'Assamese Avro layout based on Bengali Avro input method',
+ date: '2012-10-10',
+ URL: 'http://github.com/wikimedia/jquery.ime',
+ author: 'Junaid P V',
+ license: 'GPLv3',
+ version: '1.0',
+ contextLength: 0,
+ maxKeyLength: 2,
+ patterns: [
+ ['([ক-হড়ঢ়য়ৰ])্?ৰৰi', '[^o`]', '$1ৃ'],
+ ['ৰৰi', '[^o`]', 'ঋ'],
+
+ ['(([ক-হড়ঢ়য়ৰ])|য়)o', '[^o`]', '$1'], // য় cannot be included in the range, why? everywhere else it is OK!
+ ['([ক-হড়ঢ়য়ৰ])a', '[^o`]', '$1া'],
+ ['([ক-হড়ঢ়য়ৰ])i', '[^o`]', '$1ি'],
+ ['([ক-হড়ঢ়য়ৰ])I', '[^o`]', '$1ী'],
+ ['([ক-হড়ঢ়য়ৰ])u', '[^o`]', '$1ু'],
+ ['([ক-হড়ঢ়য়ৰ])U', '[^o`]', '$1ূ'],
+ ['([ক-হড়ঢ়য়ৰ])o', '[o`]', '$1ু'],
+ ['([ক-হড়ঢ়য়ৰ])e', '[^o`]', '$1ে'],
+ ['([ক-হড়ঢ়য়ৰ])োI', '[^o`]', '$1ৈ'],
+ ['([ক-হড়ঢ়য়ৰ])O', '[^o`]', '$1ো'],
+ ['([ক-হড়ঢ়য়ৰ])োU', '[^o`]', '$1ৌ'],
+
+ //'চচh', '[^o`]', 'চ্চ'],
+
+ ['([কঙলষস])(k|K)', '[^o`]', '$1্ক'],
+ ['([ঙদল])(g|G)', '[^o`]', '$1্গ'],
+ ['গg', '[^o`]', 'জ্ঞ'],
+ ['([চশ])c', '[^o`]', '$1্চ'],
+ ['([জঞব])j', '[^o`]', '$1্জ'],
+ ['নj', '[^o`]', 'ঞ্জ'],
+ ['([কটণনপলষস])T', '[^o`]', '$1্ট'],
+ ['([ডণনল])D', '[^o`]', '$1্ড'],
+ ['([গষহ])N', '[^o`]', '$1্ণ'],
+ ['([কতনপশসহ])t', '[^o`]', '$1্ত'],
+ ['([দনব])d', '[^o`]', '$1্দ'],
+ ['([গঘণতধনপমশসহ])n', '[^o`]', '$1্ন'],
+ ['([পমলস])p', '[^o`]', '$1্প'],
+ ['([বমল])b', '[^o`]', '$1্ব'],
+ ['([দম])(v|V)', '[^o`]', '$1্ভ'],
+ ['([কগঙটণতদধনমলশষসহ])m', '[^o`]', '$1্ম'],
+ ['([ক-ঘচ-ঝট-যলশ-হড়ঢ়য়])r', '[^o`]', '$1্ৰ'],
+ ['([কগপ-বমলশসহ])l', '[^o`]', '$1্ল'],
+ ['([কনপ])s', '[^o`]', '$1্স'],
+ ['([ক-হড়ঢ়য়ৰ])w', '[^o`]', '$1্ব'],
+ ['([ক-হড়ঢ়য়ৰ])y', '[^o`]', '$1্য'],
+ ['নc', '[^o`]', 'ঞ্চ'],
+
+ ['ত`', '`', 'ৎ'],
+
+ ['ক্ক(h|H)', '[^o`]', 'ক্ষ'],
+ ['কশ(h|H)', '[^o`]', 'ক্ষ'],
+ //'([অ-ঔা-ৌ])ৰৰk', '[^o]', '$1র্ক'],
+
+ ['ৰৰk', '(o|a|i|I|u|U|e|O|OI|OU|rri)rr', 'র্ক'],
+ ['ৰৰg', '(o|a|i|I|u|U|e|O|OI|OU|rri)rr', 'র্গ'],
+ ['ৰৰc', '(o|a|i|I|u|U|e|O|OI|OU|rri)rr', 'র্চ'],
+ ['ৰৰj', '(o|a|i|I|u|U|e|O|OI|OU|rri)rr', 'র্জ'],
+ ['ৰৰT', '(o|a|i|I|u|U|e|O|OI|OU|rri)rr', 'র্ট'],
+ ['ৰৰD', '(o|a|i|I|u|U|e|O|OI|OU|rri)rr', 'র্ড'],
+ ['ৰৰN', '(o|a|i|I|u|U|e|O|OI|OU|rri)rr', 'র্ণ'],
+ ['ৰৰt', '(o|a|i|I|u|U|e|O|OI|OU|rri)rr', 'র্ত'],
+ ['ৰৰd', '(o|a|i|I|u|U|e|O|OI|OU|rri)rr', 'র্দ'],
+ ['ৰৰn', '(o|a|i|I|u|U|e|O|OI|OU|rri)rr', 'র্ন'],
+ ['ৰৰp', '(o|a|i|I|u|U|e|O|OI|OU|rri)rr', 'র্প'],
+ ['ৰৰf', '(o|a|i|I|u|U|e|O|OI|OU|rri)rr', 'র্ফ'],
+ ['ৰৰb', '(o|a|i|I|u|U|e|O|OI|OU|rri)rr', 'র্ব'],
+ ['ৰৰv', '(o|a|i|I|u|U|e|O|OI|OU|rri)rr', 'র্ভ'],
+ ['ৰৰm', '(o|a|i|I|u|U|e|O|OI|OU|rri)rr', 'র্ম'],
+ ['ৰৰz', '(o|a|i|I|u|U|e|O|OI|OU|rri)rr', 'র্য'],
+ ['ৰৰl', '(o|a|i|I|u|U|e|O|OI|OU|rri)rr', 'র্ল'],
+ ['ৰৰS', '(o|a|i|I|u|U|e|O|OI|OU|rri)rr', 'র্শ'],
+ ['ৰৰs', '(o|a|i|I|u|U|e|O|OI|OU|rri)rr', 'র্স'],
+ ['ৰৰh', '(o|a|i|I|u|U|e|O|OI|OU|rri)rr', 'র্হ'],
+ ['ৰৰR', '(o|a|i|I|u|U|e|O|OI|OU|rri)rr', 'র্ড়'],
+ ['ৰৰ(y|Y)', '(o|a|i|I|u|U|e|O|OI|OU|rri)rr', 'র্য়'],
+
+ ['শ(h|H)', 'S', 'ষ'],
+
+ ['অo', '[^`]', 'উ'],
+ ['এe', '[^o`]', 'ঈ'],
+
+ ['কh', '[^o`]', 'খ'],
+ ['গh', '[^o`]', 'ঘ'],
+ ['ণg', '[^o`]', 'ঙ'],
+ ['চh', '[^o`]', 'ছ'],
+ ['জh', '[^o`]', 'ঝ'],
+ ['ণG', '[^o`]', 'ঞ'],
+ ['টh', '[^o`]', 'ঠ'],
+ ['ডh', '[^o`]', 'ঢ'],
+ ['তh', '[^o`]', 'থ'],
+ ['দh', '[^o`]', 'ধ'],
+ ['পh', '[^o`]', 'ফ'],
+ ['বh', '[^o`]', 'ভ'],
+ ['(সh)', '[^o`]', 'শ'],
+ ['ড়h', '[^o`]', 'ঢ়'],
+ ['ত্`', '[^o`]', 'ৎ'],
+ ['নg', '[^o`]', 'ং'],
+ ['ঃ`', '[^o`]', ':'],
+ ['ৰৰi', '[^o`]', 'ঋ'],
+ ['ওI', '[^o`]', 'ঐ'],
+ ['ওU', '[^o`]', 'ঔ'],
+ ['(k|K)', 'ক'],
+ ['(g|G)', 'গ'],
+ ['(c|C)', 'চ'],
+ ['j', 'জ'],
+ ['T', 'ট'],
+ ['D', 'ড'],
+ ['N', 'ণ'],
+ ['t', 'ত'],
+ ['d', 'দ'],
+ ['n', 'ন'],
+ ['(p|P)', 'প'],
+ ['f', 'ফ'],
+ ['(b|B)', 'ব'],
+ ['(v|V)', 'ভ'],
+ ['(m|M)', 'ম'],
+ ['z', 'য'],
+ ['r', 'ৰ'],
+ ['(l|L)', 'ল'],
+ ['S', 'শ'],
+ ['s', 'স'],
+ ['(h|H)', 'হ'],
+ ['R', 'ড়'],
+ ['(y|Y)', 'য়'],
+
+ ['Z','্য'],
+
+ ['o', 'অ'],
+ ['(a|A)', 'আ'],
+ ['i', 'ই'],
+ ['I', 'ঈ'],
+ ['u', 'উ'],
+ ['U', 'ঊ'],
+ ['e', 'এ'],
+ ['O', 'ও'],
+
+ ['0', '০'],
+ ['1', '১'],
+ ['2', '২'],
+ ['3', '৩'],
+ ['4', '৪'],
+ ['5', '৫'],
+ ['6', '৬'],
+ ['7', '৭'],
+ ['8', '৮'],
+ ['9', '৯'],
+
+ ['\\\\\\.', '.'],
+
+ [',,','্'],
+ ['\\:','ঃ'],
+ ['\\^','ঁ'],
+ ['\\.', '।'],
+ ['\\$', '৳'],
+ ['ঃ`', ':'],
+ ['`', '']]
+ };
+
+ $.ime.register( asAvro );
+}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/as/as-bornona.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/as/as-bornona.js
new file mode 100644
index 00000000..6daa8d3a
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/as/as-bornona.js
@@ -0,0 +1,84 @@
+( function ( $ ) {
+ 'use strict';
+
+ var asBornona = {
+ id: 'as-bornona',
+ name: 'বৰ্ণনা',
+ description: 'Bornona input method for Assamese',
+ date: '2012-10-10',
+ URL: 'http://github.com/wikimedia/jquery.ime',
+ author: 'Junaid P V',
+ license: 'GPLv3',
+ version: '1.0',
+ contextLength: 0,
+ maxKeyLength: 0,
+ patterns: [
+ ['q', 'ং'],
+ ['Q', 'ঙ'],
+ ['w', 'ঢ'],
+ ['W', 'ঠ'],
+ ['e', 'ে'],
+ ['E', 'ৈ'],
+ ['r', 'ৰ'],
+ ['R', 'ৃ'],
+ ['t', 'ত'],
+ ['T', 'ট'],
+ ['y', 'ধ'],
+ ['Y', 'থ'],
+ ['u', 'ু'],
+ ['U', 'ূ'],
+ ['i', 'ি'],
+ ['I', 'ী'],
+ ['o', 'ো'],
+ ['O', 'ৌ'],
+ ['p', 'প'],
+ ['P', '্ৰ'],
+ ['\\|', 'র'],
+ ['\\\\', 'ৱ'],
+ ['a', 'া'],
+ ['A', 'অ'],
+ ['s', 'স'],
+ ['S', 'শ'],
+ ['d', 'দ'],
+ ['D', 'ড'],
+ ['f', 'ফ'],
+ ['F', 'ৰ্ফ'],
+ ['g', 'গ'],
+ ['G', 'ঘ'],
+ ['h', '্'],
+ ['H', 'হ'],
+ ['j', 'জ'],
+ ['J', 'ঝ'],
+ ['k', 'ক'],
+ ['K', 'খ'],
+ ['l', 'ল'],
+ ['L', '।'],
+ ['z', 'য'],
+ ['Z', 'ড়'],
+ ['x', 'ষ'],
+ ['X', 'ঢ়'],
+ ['c', 'চ'],
+ ['C', 'ছ'],
+ ['v', 'ভ'],
+ ['V', '্য'],
+ ['b', 'ব'],
+ ['B', 'য়'],
+ ['n', 'ন'],
+ ['N', 'ণ'],
+ ['m', 'ম'],
+ ['M', 'ঞ'],
+ ['0', '০'],
+ ['1', '১'],
+ ['2', '২'],
+ ['3', '৩'],
+ ['4', '৪'],
+ ['5', '৫'],
+ ['6', '৬'],
+ ['7', '৭'],
+ ['8', '৮'],
+ ['9', '৯'],
+ ['\\`', '\u200C']]
+ };
+
+ $.ime.register( asBornona );
+}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/as/as-inscript.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/as/as-inscript.js
new file mode 100644
index 00000000..e2491f4e
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/as/as-inscript.js
@@ -0,0 +1,124 @@
+( function ( $ ) {
+ 'use strict';
+
+ var asInScript = {
+ id: 'as-inscript',
+ name: 'ইনস্ক্ৰিপ্ট',
+ description: 'InScript input method for Assamese according to CDAC\'s Enhanced InScript Keyboard Layout 5.2',
+ date: '2012-10-10',
+ URL: 'http://github.com/wikimedia/jquery.ime',
+ author: 'Junaid P V',
+ license: 'GPLv3',
+ version: '1.0',
+ contextLength: 0,
+ maxKeyLength: 0,
+ patterns: [
+ ['X', 'ঁ'],
+ ['x', 'ং'],
+ ['_', 'ঃ'],
+ ['D', 'অ'],
+ ['E', 'আ'],
+ ['F', 'ই'],
+ ['R', 'ঈ'],
+ ['G', 'উ'],
+ ['T', 'ঊ'],
+ ['\\+', 'ঋ'],
+ ['S', 'এ'],
+ ['W', 'ঐ'],
+ ['A', 'ও'],
+ ['Q', 'ঔ'],
+ ['k', 'ক'],
+ ['K', 'খ'],
+ ['i', 'গ'],
+ ['I', 'ঘ'],
+ ['U', 'ঙ'],
+ [';', 'চ'],
+ ['\\:', 'ছ'],
+ ['p', 'জ'],
+ ['P', 'ঝ'],
+ ['\\}', 'ঞ'],
+ ['\'', 'ট'],
+ ['\"', 'ঠ'],
+ ['\\[', 'ড'],
+ ['\\{', 'ঢ'],
+ ['C', 'ণ'],
+ ['l', 'ত'],
+ ['L', 'থ'],
+ ['o', 'দ'],
+ ['O', 'ধ'],
+ ['v', 'ন'],
+ ['h', 'প'],
+ ['H', 'ফ'],
+ ['y', 'ব'],
+ ['Y', 'ভ'],
+ ['c', 'ম'],
+ ['\\?', 'য'],
+ ['j', '\u09F0'],
+ ['J', 'ৎ'],
+ ['n', 'ল'],
+ ['M', 'শ'],
+ ['\\<', 'ষ'],
+ ['m', 'স'],
+ ['u', 'হ'],
+ ['\\]', '়'],
+ ['e', 'া'],
+ ['f', 'ি'],
+ ['r', 'ী'],
+ ['g', 'ু'],
+ ['t', 'ূ'],
+ ['\\=', 'ৃ'],
+ ['s', 'ে'],
+ ['w', 'ৈ'],
+ ['a', 'ো'],
+ ['q', 'ৌ'],
+ ['d', '্'],
+ ['/', 'য়'],
+ ['\\>', '৤'],
+ ['0', '০'],
+ ['1', '১'],
+ ['2', '২'],
+ ['3', '৩'],
+ ['4', '৪'],
+ ['5', '৫'],
+ ['6', '৬'],
+ ['7', '৭'],
+ ['8', '৮'],
+ ['9', '৯'],
+ ['z', 'ʼ'],
+ ['\\!', 'অ্যা'],
+ ['\\#', '্\u09F0'],
+ ['\\$', '\u09F0্'],
+ ['\\%', 'জ্ঞ'],
+ ['\\^', 'ত্র'],
+ ['\\&', 'ক্ষ'],
+ ['\\*', 'শ্র'],
+ ['\\(', '\u200D'],
+ ['\\)', '\u200C']],
+ patterns_x: [
+ ['F', 'ঌ'],
+ ['\\>', 'ঽ'],
+ ['\\=', 'ৠ'],
+ ['l', 'ৎ'],
+ ['\\[', 'ড়'],
+ ['\\{', 'ঢ়'],
+ ['\\+', 'ৠ'],
+ ['R', 'ৡ'],
+ ['f', 'ৢ'],
+ ['r', 'ৣ'],
+ ['\\.', '৥'],
+ ['x', '৺'],
+ ['\\<', '৲'],
+ [',', '৳'],
+ ['\\!', '৴'],
+ ['\\@', '৵'],
+ ['\\#', '৶'],
+ ['\\$', '৷'],
+ ['\\%', '৸'],
+ ['\\^', '৹'],
+ ['\\?', '৻'],
+ ['4', '₹']]
+
+ };
+
+ $.ime.register( asInScript );
+}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/as/as-inscript2.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/as/as-inscript2.js
new file mode 100644
index 00000000..e7da7dd8
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/as/as-inscript2.js
@@ -0,0 +1,128 @@
+( function ( $ ) {
+ 'use strict';
+
+ var asInScript2 = {
+ id: 'as-inscript2',
+ name: 'ইনস্ক্ৰিপ্ট ২',
+ description: 'Enhanced InScript keyboard for Assamese language',
+ date: '2013-02-09',
+ URL: 'http://github.com/wikimedia/jquery.ime',
+ author: 'Parag Nemade',
+ license: 'GPLv3',
+ version: '1.0',
+ patterns: [
+ ['\\!', 'অ্যা'],
+ ['1', '১'],
+ ['2', '২'],
+ ['\\#', '্ৰ'],
+ ['3', '৩'],
+ ['\\$', 'ৰ্'],
+ ['4', '৪'],
+ ['\\%', 'জ্ঞ'],
+ ['5', '৫'],
+ ['\\^', 'ত্র'],
+ ['6', '৬'],
+ ['\\&', 'ক্ষ'],
+ ['7', '৭'],
+ ['\\*', 'শ্র'],
+ ['8', '৮'],
+ ['9', '৯'],
+ ['\\(', '('],
+ ['\\)', ')'],
+ ['0', '০'],
+ ['\"', 'ঠ'],
+ ['\'', 'ট'],
+ [',', ','],
+ ['-', '-'],
+ ['\\.', '.'],
+ ['/', 'য়'],
+ [':', 'ছ'],
+ [';', 'চ'],
+ ['\\<', 'ষ'],
+ ['\\=', 'ৃ'],
+ ['\\+', 'ঋ'],
+ ['\\>', '।'],
+ ['\\?', 'য'],
+ ['A', 'ও'],
+ ['C', 'ণ'],
+ ['D', 'অ'],
+ ['E', 'আ'],
+ ['F', 'ই'],
+ ['G', 'উ'],
+ ['H', 'ফ'],
+ ['I', 'ঘ'],
+ ['K', 'খ'],
+ ['L', 'থ'],
+ ['M', 'শ'],
+ ['O', 'ধ'],
+ ['P', 'ঝ'],
+ ['Q', 'ঔ'],
+ ['R', 'ঈ'],
+ ['S', 'এ'],
+ ['T', 'ঊ'],
+ ['U', 'ঙ'],
+ ['W', 'ঐ'],
+ ['X', 'ঁ'],
+ ['Y', 'ভ'],
+ ['\\{', 'ঢ'],
+ ['\\[', 'ড'],
+ ['\\}', 'ঞ'],
+ ['\\]', '়'],
+ ['\\_', 'ঃ'],
+ ['a', 'ো'],
+ ['b', 'ৱ'],
+ ['c', 'ম'],
+ ['d', '্'],
+ ['e', 'া'],
+ ['f', 'ি'],
+ ['g', 'ু'],
+ ['h', 'প'],
+ ['i', 'গ'],
+ ['j', 'ৰ'],
+ ['k', 'ক'],
+ ['l', 'ত'],
+ ['m', 'স'],
+ ['n', 'ল'],
+ ['o', 'দ'],
+ ['p', 'জ'],
+ ['q', 'ৌ'],
+ ['r', 'ী'],
+ ['s', 'ে'],
+ ['t', 'ূ'],
+ ['u', 'হ'],
+ ['v', 'ন'],
+ ['w', 'ৈ'],
+ ['x', 'ং'],
+ ['y', 'ব'],
+ ['z', 'ʼ']
+ ],
+ patterns_x: [
+ ['\\!', '৴'],
+ ['1', '\u200d'],
+ ['\\@', '৵'],
+ ['2', '\u200c'],
+ ['\\#', '৶'],
+ ['\\$', '৷'],
+ ['4', '₹'],
+ ['\\%', '৸'],
+ ['\\^', '৹'],
+ [',', '৳'],
+ ['\\.', '॥'],
+ ['/', '্য'],
+ ['\\<', '৲'],
+ ['\\=', 'ৄ'],
+ ['\\+', 'ৠ'],
+ ['\\>', 'ঽ'],
+ ['F', 'ঌ'],
+ ['R', 'ৡ'],
+ ['\\{', 'ঢ়'],
+ ['\\[', 'ড়'],
+ ['f', 'ৢ'],
+ ['l', 'ৎ'],
+ ['r', 'ৣ'],
+ ['x', '৺']
+ ]
+ };
+
+ $.ime.register( asInScript2 );
+}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/as/as-phonetic.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/as/as-phonetic.js
new file mode 100644
index 00000000..b877c430
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/as/as-phonetic.js
@@ -0,0 +1,112 @@
+( function ( $ ) {
+ 'use strict';
+
+ var asPhonetic = {
+ id: 'as-phonetic',
+ name: 'phonetic',
+ description: 'Phonetic keyboard for Assamese script',
+ date: '2013-02-09',
+ URL: 'http://github.com/wikimedia/jquery.ime',
+ author: 'Parag Nemade',
+ license: 'GPLv3',
+ version: '1.0',
+ patterns: [
+ ['\\!', '!'],
+ ['1', '১'],
+ ['\\@', '@'],
+ ['2', '২'],
+ ['\\#', '#'],
+ ['3', '৩'],
+ ['\\$', 'ৎ'],
+ ['4', '৪'],
+ ['\\%', '%'],
+ ['5', '৫'],
+ ['\\^', 'ঞ'],
+ ['6', '৬'],
+ ['\\&', '&'],
+ ['7', '৭'],
+ ['\\*', '*'],
+ ['8', '৮'],
+ ['\\(', '('],
+ ['9', '৯'],
+ ['\\)', ')'],
+ ['0', '০'],
+ ['\\_', '_'],
+ ['\\-', '-'],
+ ['\\+', '+'],
+ ['\\=', '='],
+ ['Q', 'ধ'],
+ ['q', 'দ'],
+ ['W', 'ঊ'],
+ ['w', 'ূ'],
+ ['E', 'ঈ'],
+ ['e', 'ী'],
+ ['R', 'ড়'],
+ ['r', 'ৰ'],
+ ['T', 'ঠ'],
+ ['t', 'ট'],
+ ['Y', 'ঐ'],
+ ['y', 'এ'],
+ ['U', 'উ'],
+ ['u', 'ু'],
+ ['I', 'ই'],
+ ['i', 'ি'],
+ ['O', 'ঔ'],
+ ['o', 'ও'],
+ ['P', 'ফ'],
+ ['p', 'প'],
+ ['\\{', 'ৈ'],
+ ['\\[', 'ে'],
+ ['\\}', 'ৌ'],
+ ['\\]', 'ো'],
+ ['A', 'অ'],
+ ['a', 'া'],
+ ['S', 'ষ'],
+ ['s', 'স'],
+ ['D', 'ঢ'],
+ ['d', 'ড'],
+ ['F', 'থ'],
+ ['f', 'ত'],
+ ['G', 'ঘ'],
+ ['g', 'গ'],
+ ['H', 'ঃ'],
+ ['h', 'হ'],
+ ['J', 'ঝ'],
+ ['j', 'জ'],
+ ['K', 'খ'],
+ ['k', 'ক'],
+ ['L', 'ং'],
+ ['l', 'ল'],
+ [':', ':'],
+ [';', ';'],
+ ['"', '"'],
+ ['\'', '\''],
+ ['\\|', '৺'],
+ ['\\\\', 'ৱ'],
+ ['\\~', '\u200c'],
+ ['\\`', '\u200d'],
+ ['Z', 'য'],
+ ['z', 'য়'],
+ ['X', 'ঢ়'],
+ ['x', 'শ'],
+ ['C', 'ছ'],
+ ['c', 'চ'],
+ ['V', 'ঋ'],
+ ['v', 'আ'],
+ ['B', 'ভ'],
+ ['b', 'ব'],
+ ['N', 'ণ'],
+ ['n', 'ন'],
+ ['M', 'ঙ'],
+ ['m', 'ম'],
+ ['\\<', 'ৃ'],
+ [',', ','],
+ ['\\>', 'ঁ'],
+ ['\\.', '।'],
+ ['\\?', '?'],
+ ['/', '্']
+ ]
+ };
+
+ $.ime.register( asPhonetic );
+}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/as/as-transliteration.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/as/as-transliteration.js
new file mode 100644
index 00000000..379005a5
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/as/as-transliteration.js
@@ -0,0 +1,114 @@
+( function ( $ ) {
+ 'use strict';
+
+ var asTransliteration = {
+ id: 'as-transliteration',
+ name: 'প্ৰতিৰূপান্তৰণ',
+ description: 'Assamese Transliteration input method',
+ date: '2012-10-10',
+ URL: 'http://github.com/wikimedia/jquery.ime',
+ author: 'Junaid P V',
+ license: 'GPLv3',
+ version: '1.0',
+ contextLength: 8,
+ maxKeyLength: 0,
+ patterns: [
+ ['([ক-হড়-য়ৰৱ])(্ড়্ড়্i|্q)', '$1ৃ'], // <consonant>RRi or <consonant>q
+
+ ['(ড়্ড়্i|q)', 'ঋ'], // RRi or q
+
+ ['([ক-হড়-য়ৰৱ])্o', '$1'], // <consonant>o
+ ['([ক-হড়-য়ৰৱ])্a', '$1া'], // <consonant>a
+ ['([ক-হড়-য়ৰৱ])্i', '$1ি'], // <consonant>i
+ ['([ক-হড়-য়ৰৱ])(িi|্I)', '$1ী'], // <consonant>ii or <consonant>I
+ ['([ক-হড়-য়ৰৱ])্u', '$1ু'], // <consonant>u
+ ['([ক-হড়-য়ৰৱ])(ুu|্U)', '$1ূ'], // <consonant>uu or <consonant>U
+
+ ['([ক-হড়-য়ৰৱ])্e', '$1ে'], // <consonant>e
+ ['([ক-হড়-য়ৰৱ])i', '$1ৈ'], // <consonant>oi
+ ['([ক-হড়-য়ৰৱ])্O', '$1ো'], // <consonant>O
+ ['([ক-হড়-য়ৰৱ])u', '$1ৌ'], // <consonant>ou
+
+ ['(খ্y|c)', 'ক্ষ্'], // khy or c
+
+ ['ইi', 'ঈ'], // ii
+ ['উu', 'ঊ'], // uu
+ ['অi', 'ঐ'], // oi
+ ['অu', 'ঔ'], // ou
+ ['ত্~', 'ৎ'], // t~
+
+ ['ক্h', 'খ্'], // kh
+ ['গ্h', 'ঘ্'], // gh
+ ['ন্g', 'ঙ্'], // ng
+ ['জ্h', 'ঝ্'], // jh
+ ['(ন্~|Y)', 'ঞ্'], // n~ or Y
+ ['ট্h', 'ঠ্'], // Th
+ ['ড্h', 'ঢ্'], // Dh
+ ['ত্h', 'থ্'], // th
+ ['দ্h', 'ধ্'], // dh
+ ['(প্h|f)', 'ফ্'], // ph or f
+ ['(ব্h|v)', 'ভ্'], // bh or v
+ ['শ্h', 'ষ্'], // Xh
+ ['ড়্h', 'ঢ়্'], // Rh
+
+ ['(M|ন্G)', 'ং'], // M or nG
+
+ ['o', 'অ'],
+ ['a', 'আ'],
+ ['i', 'ই'],
+ ['I', 'ঈ'],
+ ['u', 'উ'],
+ ['U', 'ঊ'],
+ ['e', 'এ'],
+ ['O', 'ও'],
+
+ ['H', 'ঃ'],
+ ['\\^', 'ঁ'],
+ ['ণ্~', 'ঁ'], // N~
+ ['C', '৺'],
+
+ ['k', 'ক্'],
+ ['g', 'গ্'],
+ ['s', 'চ্'],
+ ['S', 'ছ্'],
+ ['j', 'জ্'],
+ ['T', 'ট্'],
+ ['D', 'ড্'],
+ ['N', 'ণ্'],
+ ['t', 'ত্'],
+ ['d', 'দ্'],
+ ['n', 'ন্'],
+ ['p', 'প্'],
+ ['b', 'ব্'],
+ ['m', 'ম্'],
+ ['z', 'য্'],
+ ['r', 'ৰ্'],
+ ['l', 'ল্'],
+ ['w', 'ৱ্'],
+ ['X', 'শ্'],
+ ['x', 'স্'],
+ ['h', 'হ্'],
+ ['R', 'ড়্'],
+ ['y', 'য়্'],
+
+ ['\\\\\\.', '.'],
+ ['।\\.', '॥'],
+ ['\\.', '।'],
+
+ ['0', '০'],
+ ['1', '১'],
+ ['2', '২'],
+ ['3', '৩'],
+ ['4', '৪'],
+ ['5', '৫'],
+ ['6', '৬'],
+ ['7', '৭'],
+ ['8', '৮'],
+ ['9', '৯'],
+
+ ['(\u200C)*_', '\u200C'],
+ ['(\u200D)*`', '\u200D']]
+ };
+
+ $.ime.register( asTransliteration );
+}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/bbc/batak-qwerty.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/bbc/batak-qwerty.js
new file mode 100644
index 00000000..0ae5cffa
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/bbc/batak-qwerty.js
@@ -0,0 +1,89 @@
+( function ( $ ) {
+ 'use strict';
+
+ var batakQwertyKbd = {
+ id: 'batak-qwerty',
+ name: 'Batak QWERTY',
+ description: 'QWERTY-based Batak keyboard',
+ date: '2014-04-20',
+ URL: 'http://evertype.com/fonts/batak/',
+ author: 'design by Michael Everson, implementation by Amir E. Aharoni',
+ version: '1.0',
+ patterns: [
+ [ 'q', 'ᯥ' ],
+ [ 'w', 'ᯋ' ],
+ [ 'e', 'ᯧ' ],
+ [ 'r', 'ᯒ' ],
+ [ 't', 'ᯖ' ],
+ [ 'y', 'ᯛ' ],
+ [ 'u', 'ᯮ' ],
+ [ 'i', 'ᯪ' ],
+ [ 'o', 'ᯬ' ],
+ [ 'p', 'ᯇ' ],
+
+ [ 'a', 'ᯀ' ],
+ [ 's', 'ᯘ' ],
+ [ 'd', 'ᯑ' ],
+ [ 'f', '᯲' ],
+ [ 'g', 'ᯎ' ],
+ [ 'h', 'ᯂ' ],
+ [ 'j', 'ᯐ' ],
+ [ 'k', 'ᯤ' ],
+ [ 'l', 'ᯞ' ],
+
+ [ 'z', 'ᯝ' ],
+ [ 'x', 'ᯢ' ],
+ [ 'c', 'ᯡ' ],
+ [ 'v', 'ᯣ' ],
+ [ 'b', 'ᯅ' ],
+ [ 'n', 'ᯉ' ],
+ [ 'm', 'ᯔ' ],
+
+ [ 'Q', 'ᯍ' ],
+ [ 'W', 'ᯌ' ],
+ [ 'E', 'ᯨ' ],
+ [ 'R', 'ᯓ' ],
+ [ 'T', 'ᯗ' ],
+ [ 'Y', 'ᯜ' ],
+ [ 'U', 'ᯯ' ],
+ [ 'I', 'ᯫ' ],
+ [ 'O', 'ᯭ' ],
+ [ 'P', 'ᯈ' ],
+
+ [ 'A', 'ᯁ' ],
+ [ 'S', 'ᯙ' ],
+
+ [ 'F', '᯳' ],
+ [ 'G', 'ᯏ' ],
+ [ 'H', 'ᯃ' ],
+ [ 'J', 'ᯄ' ],
+
+ [ 'L', 'ᯟ' ],
+
+ [ 'Z', 'ᯚ' ],
+
+ [ 'B', 'ᯆ' ],
+ [ 'N', 'ᯊ' ],
+ [ 'M', 'ᯕ' ],
+
+ [ '`', 'ᯠ' ],
+ [ '=', 'ᯱ' ],
+ [ '\\+', '᯦' ],
+ [ '-', '' ],
+ [ '_', 'ᯩ' ],
+
+ [ 'B', 'ᯆ' ]
+ ],
+ patterns_x: [
+ [ '4', '᯼' ],
+ [ '5', '᯽' ],
+ [ '6', '᯾' ],
+ [ '7', '᯿' ],
+
+ [ 'w', 'ᯍ' ],
+ [ '`', '`' ]
+ ]
+ };
+
+ $.ime.register( batakQwertyKbd );
+}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/be/be-kbd.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/be/be-kbd.js
new file mode 100644
index 00000000..d3d4abe7
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/be/be-kbd.js
@@ -0,0 +1,101 @@
+( function ( $ ) {
+ 'use strict';
+
+ var beKbd = {
+ id: 'be-kbd',
+ name: 'Belarusian kbd',
+ description: 'Belarusian keyboard layout',
+ date: '2013-02-09',
+ URL: 'http://github.com/wikimedia/jquery.ime',
+ author: 'Parag Nemade',
+ license: 'GPLv3',
+ version: '1.0',
+ patterns: [
+ ['\\`', 'ё'],
+ ['q', 'й'],
+ ['w', 'ц'],
+ ['e', 'у'],
+ ['r', 'к'],
+ ['t', 'е'],
+ ['y', 'н'],
+ ['u', 'г'],
+ ['i', 'ш'],
+ ['o', 'ў'],
+ ['p', 'з'],
+ ['\\[', 'х'],
+ ['\\]', '\''],
+ ['a', 'ф'],
+ ['s', 'ы'],
+ ['d', 'в'],
+ ['f', 'а'],
+ ['g', 'п'],
+ ['h', 'р'],
+ ['j', 'о'],
+ ['k', 'л'],
+ ['l', 'д'],
+ [';', 'ж'],
+ ['\'', 'э'],
+ ['\\\\', '\\'],
+ ['z', 'я'],
+ ['x', 'ч'],
+ ['c', 'с'],
+ ['v', 'м'],
+ ['b', 'і'],
+ ['n', 'т'],
+ ['m', 'ь'],
+ [',', 'б'],
+ ['\\.', 'ю'],
+ ['/', '.'],
+ ['\\!', '!'],
+ ['\\@', '\"'],
+ ['\\#', '№'],
+ ['\\$', ';'],
+ ['\\%', '%'],
+ ['\\^', ':'],
+ ['\\&', '?'],
+ ['\\*', '*'],
+ ['\\(', '('],
+ ['\\)', ')'],
+ ['\\_', '_'],
+ ['\\+', '+'],
+ ['\\~', 'Ё'],
+ ['Q', 'Й'],
+ ['W', 'Ц'],
+ ['E', 'У'],
+ ['R', 'К'],
+ ['T', 'Е'],
+ ['Y', 'Н'],
+ ['U', 'Г'],
+ ['I', 'Ш'],
+ ['O', 'Ў'],
+ ['P', 'З'],
+ ['\\{', 'Х'],
+ ['\\}', '\''],
+ ['A', 'Ф'],
+ ['S', 'Ы'],
+ ['D', 'В'],
+ ['F', 'А'],
+ ['G', 'П'],
+ ['H', 'Р'],
+ ['J', 'О'],
+ ['K', 'Л'],
+ ['L', 'Д'],
+ [':', 'Ж'],
+ ['\"', 'Э'],
+ ['\\|', '|'],
+ ['Z', 'Я'],
+ ['X', 'Ч'],
+ ['C', 'С'],
+ ['V', 'М'],
+ ['B', 'І'],
+ ['N', 'Т'],
+ ['M', 'Ь'],
+ ['\\<', 'Б'],
+ ['\\>', 'Ю'],
+ ['\\?', ',']
+ ]
+
+ };
+ $.ime.register( beKbd );
+
+}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/be/be-latin.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/be/be-latin.js
new file mode 100644
index 00000000..ca6c9954
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/be/be-latin.js
@@ -0,0 +1,38 @@
+( function ( $ ) {
+ 'use strict';
+
+ var beLatin = {
+ id: 'be-latin',
+ name: 'Belarusian Łacinka',
+ description: 'Belarusian Latin alphabet input method',
+ date: '2012-11-06',
+ URL: 'http://github.com/wikimedia/jquery.ime',
+ author: 'Pavel Selitskas',
+ license: 'GPLv3',
+ version: '1.0',
+ contextLength: 1,
+ maxKeyLength: 1,
+ patterns: [
+ [ '=S', 'Š' ],
+ [ '=U', 'Ŭ' ],
+ [ '-S', 'Ś' ],
+ [ '-L', 'Ł' ],
+ [ '-Z', 'Ź' ],
+ [ '=Z', 'Ž' ],
+ [ '-C', 'Ć' ],
+ [ '=C', 'Č' ],
+ [ '-N', 'Ń' ],
+ [ '=s', 'š' ],
+ [ '=u', 'ŭ' ],
+ [ '-s', 'ś' ],
+ [ '-l', 'ł' ],
+ [ '-z', 'ź' ],
+ [ '=z', 'ž' ],
+ [ '-c', 'ć' ],
+ [ '=c', 'č' ],
+ [ '-n', 'ń' ]
+ ]
+ };
+
+ $.ime.register( beLatin );
+}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/be/be-transliteration.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/be/be-transliteration.js
new file mode 100644
index 00000000..c8d29de1
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/be/be-transliteration.js
@@ -0,0 +1,94 @@
+( function ( $ ) {
+ 'use strict';
+
+ var beTransliteration = {
+ id: 'be-transliteration',
+ name: 'Belarusian Transliteration',
+ description: 'Belarusian transliteration per Belarusian winkeys',
+ date: '2012-11-06',
+ URL: 'http://github.com/wikimedia/jquery.ime',
+ author: 'Pavel Selitskas',
+ license: 'GPLv3',
+ version: '1.0',
+ patterns: [
+ ['~', 'Ё'],
+ ['Q', 'Й'],
+ ['W', 'Ц'],
+ ['E', 'У'],
+ ['R', 'К'],
+ ['T', 'Е'],
+ ['Y', 'Н'],
+ ['U', 'Г'],
+ ['I', 'Ш'],
+ ['O', 'Ў'],
+ ['P', 'З'],
+ ['\\{', 'Х'],
+ ['\\}', '\''],
+ ['A', 'Ф'],
+ ['S', 'Ы'],
+ ['D', 'В'],
+ ['F', 'А'],
+ ['G', 'П'],
+ ['H', 'Р'],
+ ['J', 'О'],
+ ['K', 'Л'],
+ ['L', 'Д'],
+ [':', 'Ж'],
+ ['"', 'Э'],
+ ['Z', 'Я'],
+ ['X', 'Ч'],
+ ['C', 'С'],
+ ['V', 'М'],
+ ['B', 'І'],
+ ['N', 'Т'],
+ ['M', 'Ь'],
+ ['<', 'Б'],
+ ['>', 'Ю'],
+ ['\\?', ','],
+
+ ['`', 'ё'],
+ ['q', 'й'],
+ ['w', 'ц'],
+ ['e', 'у'],
+ ['r', 'к'],
+ ['t', 'е'],
+ ['y', 'н'],
+ ['u', 'г'],
+ ['i', 'ш'],
+ ['o', 'ў'],
+ ['p', 'з'],
+ ['\\[', 'х'],
+ ['\\]', '\''],
+ ['a', 'ф'],
+ ['s', 'ы'],
+ ['d', 'в'],
+ ['f', 'а'],
+ ['g', 'п'],
+ ['h', 'р'],
+ ['j', 'о'],
+ ['k', 'л'],
+ ['l', 'д'],
+ [';', 'ж'],
+ ['\'', 'э'],
+ ['z', 'я'],
+ ['x', 'ч'],
+ ['c', 'с'],
+ ['v', 'м'],
+ ['b', 'і'],
+ ['n', 'т'],
+ ['m', 'ь'],
+ [',', 'б'],
+ ['\\.', 'ю'],
+ ['/', '.'],
+
+ ['@', '"'], // 2
+ ['#', '№'], // 3
+ ['\\$', ';'], // 4
+ // '%' is the same // 5
+ ['^', ':'], // 6
+ ['&', '?']] // 7
+ // '*', '(' and ')' are the same // 8, 9, 0
+ };
+
+ $.ime.register( beTransliteration );
+}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ber/ber-tfng.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ber/ber-tfng.js
new file mode 100644
index 00000000..1da69eda
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ber/ber-tfng.js
@@ -0,0 +1,54 @@
+( function ( $ ) {
+ 'use strict';
+
+ var berTfng = {
+ id: 'ber-tfng',
+ name: 'Tifinagh Transliteration',
+ description: 'Transliteration input method for Tifinagh script',
+ date: '2012-10-10',
+ URL: 'http://www.ircam.ma/fr/index.php?soc=telec&rd=2',
+ author: '',
+ license: '',
+ version: '1.0',
+ contextLength: 0,
+ maxKeyLength: 0,
+ patterns: [
+ ['a', 'ⴰ'],
+ ['b', 'ⴱ'],
+ ['c', 'ⵛ'],
+ ['d', 'ⴷ'],
+ ['D', 'ⴹ'],
+ ['e', 'ⴻ'],
+ ['f', 'ⴼ'],
+ ['F', 'ⴼⵯ'],
+ ['g', 'ⴳ'],
+ ['G', 'ⴳⵯ'],
+ ['h', 'ⵀ'],
+ ['i', 'ⵉ'],
+ ['j', 'ⵊ'],
+ ['k', 'ⴽ'],
+ ['K', 'ⴽⵯ'],
+ ['l', 'ⵍ'],
+ ['m', 'ⵎ'],
+ ['n', 'ⵏ'],
+ ['o', 'ⵄ'],
+ ['p', 'ⵃ'],
+ ['q', 'ⵇ'],
+ ['Q', 'ⵈ'],
+ ['r', 'ⵔ'],
+ ['R', 'ⵕ'],
+ ['s', 'ⵙ'],
+ ['S', 'ⵚ'],
+ ['t', 'ⵜ'],
+ ['T', 'ⵟ'],
+ ['v', 'ⵖ'],
+ ['u', 'ⵓ'],
+ ['w', 'ⵡ'],
+ ['y', 'ⵢ'],
+ ['x', 'ⵅ'],
+ ['z', 'ⵣ'],
+ ['Z', 'ⵥ']]
+ };
+ $.ime.register( berTfng );
+
+}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/bn/bn-avro.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/bn/bn-avro.js
new file mode 100644
index 00000000..af16cd21
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/bn/bn-avro.js
@@ -0,0 +1,194 @@
+( function ( $ ) {
+ 'use strict';
+
+ var bnAvro = {
+ id: 'bn-avro',
+ name: 'অভ্র',
+ description: 'Bengali Avro input method',
+ date: '2012-10-10',
+ URL: 'http://github.com/wikimedia/jquery.ime',
+ author: 'Junaid P V',
+ license: 'GPLv3',
+ version: '1.0',
+ contextLength: 4,
+ maxKeyLength: 5,
+ patterns: [
+ ['([ক-হড়ঢ়য়])্?ররi','[^o`]', '$1ৃ'],
+ ['ররi','[^o`]', 'ঋ'],
+ ['ঙহo', 'ঙ্ঘ'],
+ ['([ক-হড়ঢ়য়])াZ', '[^o`]', '$1্যা'],
+ ['(([ক-হড়ঢ়য়])|য়)o','[^o`]', '$1'], // য় cannot be included in the range, why? everywhere else it is OK!
+ ['([ক-হড়ঢ়য়])a','[^o`]', '$1া'],
+ ['([ক-হড়ঢ়য়])i','[^o`]', '$1ি'],
+ ['([ক-হড়ঢ়য়])(I|েe)','[^o`]', '$1ী'],
+ ['([ক-হড়ঢ়য়])u','[^o`]', '$1ু'],
+ ['([ক-হড়ঢ়য়])U','[^o`]', '$1ূ'],
+ ['([ক-হড়ঢ়য়])o','[o`]', '$1ু'],
+ ['([ক-হড়ঢ়য়])e','[^o`]', '$1ে'],
+ ['([ক-হড়ঢ়য়])োI','[^o`]', '$1ৈ'],
+ ['([ক-হড়ঢ়য়])O','[^o`]', '$1ো'],
+ ['([ক-হড়ঢ়য়])োU','[^o`]', '$1ৌ'],
+
+ ['([ক-হড়ঢ়য়][িুেো]|[এইওউ])a','[^o`]', '$1য়া'],
+ ['([ক-হড়ঢ়য়][াে]|[আএ])o', '[^o`]', '$1ও'],
+
+ ['([কঙলষস])(k|K)','[^o`]','$1্ক'],
+ ['([ঙদল])(g|G)','[^o`]','$1্গ'],
+ ['গg','[^o`]','জ্ঞ'],
+ ['([চশ])c','[^o`]','$1্চ'],
+ ['([জঞব])j','[^o`]','$1্জ'],
+ ['নj','[^o`]','ঞ্জ'],
+ ['([কটণনপলষস])T','[^o`]','$1্ট'],
+ ['([ডণনল])D','[^o`]','$1্ড'],
+ ['([গষহ])N','[^o`]','$1্ণ'],
+ ['([কতনপশসহ])t','[^o`]','$1্ত'],
+ ['([দনব])d','[^o`]','$1্দ'],
+ ['([গঘণতধনপমশসহ])n','[^o`]','$1্ন'],
+ ['([পমলষস])p','[^o`]','$1্প'],
+ ['([স])f', '[^o`]', '$1্ফ'],
+ ['([বমল])b','[^o`]','$1্ব'],
+ ['([দম])(v|V)','[^o`]','$1্ভ'],
+ ['([কগঙটণতদধনমলশষসহ])m','[^o`]','$1্ম'],
+ ['([ক-ঘচ-ঝট-যলশ-হড়ঢ়য়])r','[^o`]','$1্র'],
+ ['([কগপ-বমলশসহ])l','[^o`]','$1্ল'],
+ ['([কনপ])s','[^o`]','$1্স'],
+ ['([ক-হড়ঢ়য়])w','[^o`]','$1্ব'],
+ ['([ক-হড়ঢ়য়])y','[^o`]','$1্য'],
+ ['নc','[^o`]','ঞ্চ'],
+
+ ['ত`','`', 'ৎ'],
+
+ ['ক্ক(h|H)','[^o`]','ক্ষ'],
+ ['কশ(h|H)','[^o`]','ক্ষ'],
+
+ ['ররk','(o|a|i|I|u|U|e|O|OI|OU|rri)rr','র্ক'],
+ ['ররg','(o|a|i|I|u|U|e|O|OI|OU|rri)rr','র্গ'],
+ ['ররc','(o|a|i|I|u|U|e|O|OI|OU|rri)rr','র্চ'],
+ ['ররj','(o|a|i|I|u|U|e|O|OI|OU|rri)rr','র্জ'],
+ ['ররT','(o|a|i|I|u|U|e|O|OI|OU|rri)rr','র্ট'],
+ ['ররD','(o|a|i|I|u|U|e|O|OI|OU|rri)rr','র্ড'],
+ ['ররN','(o|a|i|I|u|U|e|O|OI|OU|rri)rr','র্ণ'],
+ ['ররt','(o|a|i|I|u|U|e|O|OI|OU|rri)rr','র্ত'],
+ ['ররd','(o|a|i|I|u|U|e|O|OI|OU|rri)rr','র্দ'],
+ ['ররn','(o|a|i|I|u|U|e|O|OI|OU|rri)rr','র্ন'],
+ ['ররp','(o|a|i|I|u|U|e|O|OI|OU|rri)rr','র্প'],
+ ['ররf','(o|a|i|I|u|U|e|O|OI|OU|rri)rr','র্ফ'],
+ ['ররb','(o|a|i|I|u|U|e|O|OI|OU|rri)rr','র্ব'],
+ ['ররv','(o|a|i|I|u|U|e|O|OI|OU|rri)rr','র্ভ'],
+ ['ররm','(o|a|i|I|u|U|e|O|OI|OU|rri)rr','র্ম'],
+ ['ররz','(o|a|i|I|u|U|e|O|OI|OU|rri)rr','র্য'],
+ ['ররl','(o|a|i|I|u|U|e|O|OI|OU|rri)rr','র্ল'],
+ ['ররS','(o|a|i|I|u|U|e|O|OI|OU|rri)rr','র্শ'],
+ ['ররs','(o|a|i|I|u|U|e|O|OI|OU|rri)rr','র্স'],
+ ['ররh','(o|a|i|I|u|U|e|O|OI|OU|rri)rr','র্হ'],
+ ['ররR','(o|a|i|I|u|U|e|O|OI|OU|rri)rr','র্ড়'],
+ ['রর(y|Y)','(o|a|i|I|u|U|e|O|OI|OU|rri)rr','র্য়'],
+
+ ['ংo', 'ঙ্গ'],
+ ['ংi', 'ঙ্গি'],
+ ['ংI', 'ঙ্গী'],
+ ['(ংu|ঙ্গo)', 'ঙ্গু'],
+ ['ংU', 'ঙ্গূ'],
+ ['ং', 'ঙ্গি'],
+ ['ং', 'ঙ্গি'],
+
+ ['শ(h|H)','S', 'ষ'],
+
+ ['অo','[^`]', 'উ'],
+ ['এe','[^o`]', 'ঈ'],
+
+ ['ক(h|H)','[^o`]', 'খ'],
+ ['গ(h|H)','[^o`]', 'ঘ'],
+ ['ণg','[^o`]', 'ঙ'],
+ ['চ(h|H)','[^o`]', 'ছ'],
+ ['জ(h|H)','[^o`]', 'ঝ'],
+ ['ণG','[^o`]', 'ঞ'],
+ ['ট(h|H)','[^o`]', 'ঠ'],
+ ['ড(h|H)','[^o`]', 'ঢ'],
+ ['ত(h|H)','[^o`]', 'থ'],
+ ['দ(h|H)','[^o`]', 'ধ'],
+ ['প(h|H)','[^o`]', 'ফ'],
+ ['ব(h|H)','[^o`]', 'ভ'],
+ ['(স(h|H))','[^o`]', 'শ'],
+ ['ড়(h|H)','[^o`]', 'ঢ়'],
+ ['ত্`','[^o`]', 'ৎ'],
+ ['নg','[^o`]', 'ং'],
+ ['ঃ`','[^o`]', ':'],
+ ['ররi','[^o`]', 'ঋ'],
+ ['ওI','[^o`]', 'ঐ'],
+ ['ওU','[^o`]', 'ঔ'],
+
+ ['আ`', 'া'],
+ ['ই`', 'ি'],
+ ['ঈ`', 'ী'],
+ ['উ`', 'ু'],
+ ['ঊ`', 'ূ'],
+ ['এ`', 'ে'],
+ ['আ`', 'া'],
+ ['আ`', 'া'],
+ ['আ`', 'া'],
+ ['আ`', 'া'],
+ ['আ`', 'া'],
+ ['আ`', 'া'],
+
+ ['([kKqQ])', 'ক'],
+ ['(g|G)', 'গ'],
+ ['(c|C)', 'চ'],
+ ['(j|J)', 'জ'],
+ ['T', 'ট'],
+ ['D', 'ড'],
+ ['N', 'ণ'],
+ ['t', 'ত'],
+ ['d', 'দ'],
+ ['n', 'ন'],
+ ['(p|P)', 'প'],
+ ['f', 'ফ'],
+ ['(b|B)', 'ব'],
+ ['(v|V)', 'ভ'],
+ ['(m|M)', 'ম'],
+ ['z', 'য'],
+ ['r', 'র'],
+ ['(l|L)', 'ল'],
+ ['S', 'শ'],
+ ['s', 'স'],
+ ['(h|H)', 'হ'],
+ ['R', 'ড়'],
+ ['w', 'ও'],
+ ['x', 'ক্স'],
+ ['(y|Y)', 'য়'],
+
+ ['Z', '্য'],
+
+ ['o', 'অ'],
+ ['(a|A)', 'আ'],
+ ['i', 'ই'],
+ ['I', 'ঈ'],
+ ['u', 'উ'],
+ ['U', 'ঊ'],
+ ['(e|E)', 'এ'],
+ ['O', 'ও'],
+
+ ['0', '০'],
+ ['1', '১'],
+ ['2', '২'],
+ ['3', '৩'],
+ ['4', '৪'],
+ ['5', '৫'],
+ ['6', '৬'],
+ ['7', '৭'],
+ ['8', '৮'],
+ ['9', '৯'],
+
+ ['\\\\\\.', '.'],
+
+ [',,', '্'],
+ ['\\:', 'ঃ'],
+ ['\\^', 'ঁ'],
+ ['\\.', '।'],
+ ['\\$', '৳'],
+ ['ঃ`', ':'],
+ ['`', '']]
+ };
+
+ $.ime.register( bnAvro );
+}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/bn/bn-inscript.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/bn/bn-inscript.js
new file mode 100644
index 00000000..f26a97a0
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/bn/bn-inscript.js
@@ -0,0 +1,123 @@
+( function ( $ ) {
+ 'use strict';
+
+ var bnInScript = {
+ id: 'bn-inscript',
+ name: 'ইনস্ক্ৰিপ্ট',
+ description: 'Bengali InScript input method',
+ date: '2012-10-10',
+ URL: 'http://github.com/wikimedia/jquery.ime',
+ author: 'Junaid P V',
+ license: 'GPLv3',
+ version: '1.0',
+ contextLength: 0,
+ maxKeyLength: 0,
+ patterns: [
+ ['X', 'ঁ'],
+ ['x', 'ং'],
+ ['_', 'ঃ'],
+ ['D', 'অ'],
+ ['E', 'আ'],
+ ['F', 'ই'],
+ ['R', 'ঈ'],
+ ['G', 'উ'],
+ ['T', 'ঊ'],
+ ['\\+', 'ঋ'],
+ ['S', 'এ'],
+ ['W', 'ঐ'],
+ ['A', 'ও'],
+ ['Q', 'ঔ'],
+ ['k', 'ক'],
+ ['K', 'খ'],
+ ['i', 'গ'],
+ ['I', 'ঘ'],
+ ['U', 'ঙ'],
+ [';', 'চ'],
+ ['\\:', 'ছ'],
+ ['p', 'জ'],
+ ['P', 'ঝ'],
+ ['\\}', 'ঞ'],
+ ['\'', 'ট'],
+ ['\"', 'ঠ'],
+ ['\\[', 'ড'],
+ ['\\{', 'ঢ'],
+ ['C', 'ণ'],
+ ['l', 'ত'],
+ ['L', 'থ'],
+ ['o', 'দ'],
+ ['O', 'ধ'],
+ ['v', 'ন'],
+ ['h', 'প'],
+ ['H', 'ফ'],
+ ['y', 'ব'],
+ ['Y', 'ভ'],
+ ['c', 'ম'],
+ ['\\?', 'য'],
+ ['j', 'র'],
+ ['J', 'ৎ'],
+ ['n', 'ল'],
+ ['M', 'শ'],
+ ['\\<', 'ষ'],
+ ['m', 'স'],
+ ['u', 'হ'],
+ ['\\]', '়'],
+ ['e', 'া'],
+ ['f', 'ি'],
+ ['r', 'ী'],
+ ['g', 'ু'],
+ ['t', 'ূ'],
+ ['\\=', 'ৃ'],
+ ['s', 'ে'],
+ ['w', 'ৈ'],
+ ['a', 'ো'],
+ ['q', 'ৌ'],
+ ['d', '্'],
+ ['/', 'য়'],
+ ['\\>', '৤'],
+ ['0', '০'],
+ ['1', '১'],
+ ['2', '২'],
+ ['3', '৩'],
+ ['4', '৪'],
+ ['5', '৫'],
+ ['6', '৬'],
+ ['7', '৭'],
+ ['8', '৮'],
+ ['9', '৯'],
+ ['z', 'ʼ'],
+ ['\\!', 'অ্যা'],
+ ['\\#', '্র'],
+ ['\\$', 'র্'],
+ ['\\%', 'জ্ঞ'],
+ ['\\^', 'ত্র'],
+ ['\\&', 'ক্ষ'],
+ ['\\*', 'শ্র'],
+ ['\\(', '\u200D'],
+ ['\\)', '\u200C']],
+ patterns_x: [
+ ['F', 'ঌ'],
+ ['\\>', 'ঽ'],
+ ['\\=', 'ৠ'],
+ ['l', 'ৎ'],
+ ['\\[', 'ড়'],
+ ['\\{', 'ঢ়'],
+ ['\\+', 'ৠ'],
+ ['R', 'ৡ'],
+ ['f', 'ৢ'],
+ ['r', 'ৣ'],
+ ['\\.', '৥'],
+ ['x', '৺'],
+ ['\\<', '৲'],
+ [',', '৳'],
+ ['\\!', '৴'],
+ ['\\@', '৵'],
+ ['\\#', '৶'],
+ ['\\$', '৷'],
+ ['\\%', '৸'],
+ ['\\^', '৹'],
+ ['\\?', '৻'],
+ ['4', '₹']]
+ };
+
+ $.ime.register( bnInScript );
+}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/bn/bn-inscript2.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/bn/bn-inscript2.js
new file mode 100644
index 00000000..3ea9e284
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/bn/bn-inscript2.js
@@ -0,0 +1,128 @@
+( function ( $ ) {
+ 'use strict';
+
+ var bnInScript2 = {
+ id: 'bn-inscript2',
+ name: 'ইনস্ক্ৰিপ্ট ২',
+ description: 'Enhanced InScript keyboard for Bengali language',
+ date: '2013-02-09',
+ URL: 'http://github.com/wikimedia/jquery.ime',
+ author: 'Parag Nemade',
+ license: 'GPLv3',
+ version: '1.0',
+ patterns: [
+ ['\\!', 'অ্যা'],
+ ['1', '১'],
+ ['2', '২'],
+ ['\\#', '্র'],
+ ['3', '৩'],
+ ['\\$', 'র্'],
+ ['4', '৪'],
+ ['\\%', 'জ্ঞ'],
+ ['5', '৫'],
+ ['\\^', 'ত্র'],
+ ['6', '৬'],
+ ['\\&', 'ক্ষ'],
+ ['7', '৭'],
+ ['\\*', 'শ্র'],
+ ['8', '৮'],
+ ['9', '৯'],
+ ['\\(', '('],
+ ['\\)', ')'],
+ ['0', '০'],
+ ['\"', 'ঠ'],
+ ['\'', 'ট'],
+ [',', ','],
+ ['-', '-'],
+ ['\\.', '.'],
+ ['/', 'য়'],
+ [':', 'ছ'],
+ [';', 'চ'],
+ ['\\<', 'ষ'],
+ ['\\=', 'ৃ'],
+ ['\\+', 'ঋ'],
+ ['\\>', '।'],
+ ['\\?', 'য'],
+ ['A', 'ও'],
+ ['C', 'ণ'],
+ ['D', 'অ'],
+ ['E', 'আ'],
+ ['F', 'ই'],
+ ['G', 'উ'],
+ ['H', 'ফ'],
+ ['I', 'ঘ'],
+ ['K', 'খ'],
+ ['L', 'থ'],
+ ['M', 'শ'],
+ ['O', 'ধ'],
+ ['P', 'ঝ'],
+ ['Q', 'ঔ'],
+ ['R', 'ঈ'],
+ ['S', 'এ'],
+ ['T', 'ঊ'],
+ ['U', 'ঙ'],
+ ['W', 'ঐ'],
+ ['X', 'ঁ'],
+ ['Y', 'ভ'],
+ ['\\{', 'ঢ'],
+ ['\\[', 'ড'],
+ ['\\}', 'ঞ'],
+ ['\\]', '়'],
+ ['\\_', 'ঃ'],
+ ['a', 'ো'],
+ ['c', 'ম'],
+ ['d', '্'],
+ ['e', 'া'],
+ ['f', 'ি'],
+ ['g', 'ু'],
+ ['h', 'প'],
+ ['i', 'গ'],
+ ['j', 'র'],
+ ['k', 'ক'],
+ ['l', 'ত'],
+ ['m', 'স'],
+ ['n', 'ল'],
+ ['o', 'দ'],
+ ['p', 'জ'],
+ ['q', 'ৌ'],
+ ['r', 'ী'],
+ ['s', 'ে'],
+ ['t', 'ূ'],
+ ['u', 'হ'],
+ ['v', 'ন'],
+ ['w', 'ৈ'],
+ ['x', 'ং'],
+ ['y', 'ব'],
+ ['z', 'ʼ']
+ ],
+ patterns_x: [
+ ['\\!', '৴'],
+ ['1', '\u200d'],
+ ['\\@', '৵'],
+ ['2', '\u200c'],
+ ['\\#', '৶'],
+ ['\\$', '৷'],
+ ['4', '₹'],
+ ['\\%', '৸'],
+ ['\\^', '৹'],
+ [',', '৳'],
+ ['\\.', '॥'],
+ ['/', '্য'],
+ ['\\<', '৲'],
+ ['\\=', 'ৄ'],
+ ['\\+', 'ৠ'],
+ ['\\>', 'ঽ'],
+ ['\\?', '৻'],
+ ['F', 'ঌ'],
+ ['R', 'ৡ'],
+ ['\\{', 'ঢ়'],
+ ['\\[', 'ড়'],
+ ['f', 'ৢ'],
+ ['l', 'ৎ'],
+ ['r', 'ৣ'],
+ ['x', '৺']
+ ]
+ };
+
+ $.ime.register( bnInScript2 );
+}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/bn/bn-nkb.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/bn/bn-nkb.js
new file mode 100644
index 00000000..7a35a214
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/bn/bn-nkb.js
@@ -0,0 +1,133 @@
+( function ( $ ) {
+ 'use strict';
+
+ var bnNkb = {
+ id: 'bn-nkb',
+ name: 'National Keyboard',
+ description: 'Bengali National Keyboard input method',
+ date: '2012-10-10',
+ URL: 'http://github.com/wikimedia/jquery.ime',
+ author: 'Junaid P V',
+ license: 'GPLv3',
+ version: '1.0',
+ contextLength: 0,
+ maxKeyLength: 0,
+ patterns: [
+ ['1', '১'],
+ ['2', '২'],
+ ['3', '৩'],
+ ['4', '৪'],
+ ['5', '৫'],
+ ['6', '৬'],
+ ['7', '৭'],
+ ['8', '৮'],
+ ['9', '৯'],
+ ['0', '০'],
+
+ ['q', 'ঙ'],
+ ['w', 'য'],
+ ['e', 'ড'],
+ ['r', 'প'],
+ ['t', 'ট'],
+ ['y', 'চ'],
+ ['u', 'জ'],
+ ['i', 'হ'],
+ ['o', 'গ'],
+ ['p', 'ড়'],
+
+ ['a', 'ৃ'],
+ ['s', 'ু'],
+ ['d', 'ি'],
+ ['f', 'ব'],
+ ['g', '্'],
+ ['h', 'া'],
+ ['j', 'ক'],
+ ['k', 'ত'],
+ ['l', 'দ'],
+
+ ['z', 'ঁ'],
+ ['x', 'ো'],
+ ['c', 'ে'],
+ ['v', 'র'],
+ ['b', 'ন'],
+ ['n', 'স'],
+ ['m', 'ম'],
+
+ ['Q', 'ং'],
+ ['W', 'য়'],
+ ['E', 'ঢ'],
+ ['R', 'ফ'],
+ ['T', 'ঠ'],
+ ['Y', 'ছ'],
+ ['U', 'ঝ'],
+ ['I', 'ঞ'],
+ ['O', 'ঘ'],
+ ['P', 'ঢ়'],
+
+ ['A', 'ৗ'],
+ ['S', 'ূ'],
+ ['D', 'ী'],
+ ['F', 'ভ'],
+ ['G', '।'],
+ ['H', 'অ'],
+ ['J', 'খ'],
+ ['K', 'থ'],
+ ['L', 'ধ'],
+
+ ['Z', 'ঃ'],
+ ['X', 'ৌ'],
+ ['C', 'ৈ'],
+ ['V', 'ল'],
+ ['B', 'ণ'],
+ ['N', 'ষ'],
+ ['M', 'শ']],
+ patterns_x: [
+ ['1', '৴'],
+ ['2', '৵'],
+ ['3', '৶'],
+ ['4', '৳'],
+ ['5', '৷'],
+ ['6', '৸'],
+ ['7', 'ं'],
+ ['0', '৹'],
+ ['\\-', '\u200C'],
+ ['\\=', '\u200D'],
+
+ ['q', 'ৢ'],
+ ['w', '্য'],
+ ['e', 'ৄ'],
+ ['i', 'ঽ'],
+
+ ['a', 'ঋ'],
+ ['s', 'উ'],
+ ['d', 'ই'],
+ ['f', 'ৰ'],
+ ['g', '॥'],
+ ['h', 'আ'],
+ ['j', '঱'],
+ ['k', 'ঢ'],
+ ['l', 'ঌ'],
+
+ ['z', '৺'],
+ ['x', 'ও'],
+ ['c', 'এ'],
+ ['v', '্র'],
+ ['\\.', '়'],
+
+ ['\\$', '৲'],
+ ['\\^', '঳'],
+
+ ['Q', 'ৣ'],
+
+ ['A', 'ৠ'],
+ ['S', 'ঊ'],
+ ['D', 'ঈ'],
+ ['F', 'ৱ'],
+ ['L', 'ৡ'],
+
+ ['X', 'ঔ'],
+ ['C', 'ঐ']]
+ };
+
+ $.ime.register( bnNkb );
+}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/bn/bn-probhat.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/bn/bn-probhat.js
new file mode 100644
index 00000000..eed5ac5d
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/bn/bn-probhat.js
@@ -0,0 +1,102 @@
+( function ( $ ) {
+ 'use strict';
+
+ var bnProbhat = {
+ id: 'bn-probhat',
+ name: 'Bengali Probhat',
+ description: 'Bengali Probhat input method for Bengali',
+ date: '2012-10-10',
+ URL: 'http://github.com/wikimedia/jquery.ime',
+ author: 'Nasir Khan Saikat',
+ license: 'GPLv3',
+ version: '1.0',
+ contextLength: 0,
+ maxKeyLength: 0,
+ patterns: [
+ ['1', '১'],
+ ['2', '২'],
+ ['3', '৩'],
+ ['4', '৪'],
+ ['5', '৫'],
+ ['6', '৬'],
+ ['7', '৭'],
+ ['8', '৮'],
+ ['9', '৯'],
+ ['0', '০'],
+
+ ['q', 'দ'],
+ ['w', 'ূ'],
+ ['e', 'ী'],
+ ['r', 'র'],
+ ['t', 'ট'],
+ ['y', 'এ'],
+ ['u', 'ু'],
+ ['i', 'ি'],
+ ['o', 'ও'],
+ ['p', 'প'],
+
+ ['a', 'া'],
+ ['s', 'স'],
+ ['d', 'ড'],
+ ['f', 'ত'],
+ ['g', 'গ'],
+ ['h', 'হ'],
+ ['j', 'জ'],
+ ['k', 'ক'],
+ ['l', 'ল'],
+
+ ['z', 'য়'],
+ ['x', 'শ'],
+ ['c', 'চ'],
+ ['v', 'আ'],
+ ['b', 'ব'],
+ ['n', 'ন'],
+ ['m', 'ম'],
+
+ ['Q', 'ধ'],
+ ['W', 'ঊ'],
+ ['E', 'ঈ'],
+ ['R', 'ড়'],
+ ['T', 'ঠ'],
+ ['Y', 'ঐ'],
+ ['U', 'উ'],
+ ['I', 'ই'],
+ ['O', 'ঔ'],
+ ['P', 'ফ'],
+
+ ['A', 'অ'],
+ ['S', 'ষ'],
+ ['D', 'ঢ'],
+ ['F', 'থ'],
+ ['G', 'ঘ'],
+ ['H', 'ঃ'],
+ ['J', 'ঝ'],
+ ['K', 'খ'],
+ ['L', 'ং'],
+
+ ['Z', 'য'],
+ ['X', 'ঢ়'],
+ ['C', 'ছ'],
+ ['V', 'ঋ'],
+ ['B', 'ভ'],
+ ['N', 'ণ'],
+ ['M', 'ঙ'],
+
+ ['`', '\u200D'],
+ ['\\$', '৳'],
+ ['\\&', 'ঞ'],
+ ['\\*', 'ৎ'],
+ ['\\[', 'ে'],
+ ['\\]', 'ো'],
+ ['\\{', 'ৈ'],
+ ['\\}', 'ৌ'],
+ ['\\|', '॥'],
+ ['\\.', '।'],
+ ['/', '্'],
+ ['<', 'ৃ'],
+ ['>', 'ঁ'],
+ ['\\\\', '\u200C']]
+ };
+
+ $.ime.register( bnProbhat );
+}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/bo/bo-ewts.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/bo/bo-ewts.js
new file mode 100644
index 00000000..d390dac7
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/bo/bo-ewts.js
@@ -0,0 +1,284 @@
+( function ( $ ) {
+ 'use strict';
+
+ var boEWTS = {
+ id: 'bo-ewts',
+ name: 'Tibetan EWTS transliteration',
+ description: 'Tibetan Extended Wylie Transliteration, based on the work of thdl.',
+ date: '2014-07-09',
+ URL: 'http://www.thlib.org/reference/transliteration/#!essay=/thl/ewts',
+ author: 'Elie Roux <elie.roux@telecom-bretagne.eu>',
+ license: 'GPLv3',
+ version: '1.1',
+ contextLength: 2,
+ maxKeyLength: 5,
+ patterns: [
+ // ambiguous cases with b as prefix
+ ['བྲk', 'r', 'བརྐ'],
+ ['བྲg', 'r', 'བརྒ'],
+ ['བྲl', 'r', 'བརླ'],
+ ['བྲj', 'r', 'བརྗ'],
+ ['བྲt', 'r', 'བརྟ'],
+ ['བྲd', 'r', 'བརྡ'],
+ ['བྲn', 'r', 'བརྣ '],
+ ['བླt', 'l', 'བལྟ'],
+ ['བླd', 'l', 'བལྡ'],
+ // Standard Tibetan Stacks listed at <http://www.thlib.org/reference/transliteration/tibstacks.php>
+ // some are handled magically and don't need to appear here.
+ ['རྐy', 'k', 'རྐྱ'],
+ ['རྒy', 'g', 'རྒྱ'],
+ ['རྨy', 'm', 'རྨྱ'],
+ ['རྒw', 'g', 'རྒྭ'],
+ ['རྩw', 's', 'རྩྭ'],
+ ['སྐy', 'k', 'སྐྱ'],
+ ['སྒy', 'g', 'སྒྱ'],
+ ['སྤy', 'p', 'སྤྱ'],
+ ['སྦy', 'b', 'སྦྱ'],
+ ['སྨy', 'm', 'སྨྱ'],
+ ['སྐr', 'k', 'སྐྲ'],
+ ['སྒr', 'g', 'སྒྲ'],
+ ['སྣr', 'n', 'སྣྲ'],
+ ['སྤr', 'p', 'སྤྲ'],
+ ['སྦr', 'b', 'སྦྲ'],
+ ['སྨr', 'm', 'སྨྲ'],
+ ['གྲw', 'r', 'གྲྭ'],
+ ['དྲw', 'r', 'དྲྭ'],
+ ['ཕྱw', 'y', 'ཕྱྭ'],
+ ['རk', 'r', 'རྐ'],
+ ['རg', 'r', 'རྒ'],
+ ['རj', 'r', 'རྗ'],
+ ['རt', 'r', 'རྟ'],
+ ['རd', 'r', 'རྡ'],
+ ['རn', 'r', 'རྣ '],
+ ['རb', 'r', 'རྦ'],
+ ['རm', 'r', 'རྨ'],
+ ['ལk', 'l', 'ལྐ'],
+ ['ལg', 'l', 'ལྒ'],
+ ['ལc', 'l', 'ལྕ'],
+ ['ལj', 'l', 'ལྗ'],
+ ['ལt', 'l', 'ལྟ'],
+ ['ལd', 'l', 'སྡ'],
+ ['ལp', 'l', 'ལྤ'],
+ ['ལb', 'l', 'ལྦ'],
+ ['ལh', 'l', 'ལྷ'],
+ ['སk', 's', 'སྐ'],
+ ['སg', 's', 'སྒ'],
+ ['སt', 's', 'སྟ'],
+ ['སd', 's', 'སྡ'],
+ ['སn', 's', 'སྣ'],
+ ['སp', 's', 'སྤ'],
+ ['སb', 's', 'སྦ'],
+ ['སm', 's', 'སྨ'],
+ ['སྟs', 't', 'སྩ'],
+ ['ཀw', 'k', 'ཀྭ'],
+ ['ཁw', 'h', 'ཁྭ'],
+ ['གw', 'g', 'གྭ'],
+ ['ཅw', 'c', 'ཅྭ'],
+ ['ཉw', 'y', 'ཉྭ'],
+ ['ཏw', 't', 'ཏྭ'],
+ ['དw', 'd', 'དྭ'],
+ ['ཙw', 's', 'ཙྭ'],
+ ['ཚw', 'h', 'ཚྭ'],
+ ['ཞw', 'h', 'ཞྭ'],
+ ['ཟw', 'z', 'ཟྭ'],
+ ['རw', 'r', 'རྭ'],
+ ['ཤw', 'h', 'ཤྭ'],
+ ['སw', 's', 'སྭ'],
+ ['ཧw', 'h', 'ཧྭ'],
+ ['ཀy', 'k', 'ཀྱ'],
+ ['ཁy', 'h', 'ཁྱ'],
+ ['གy', 'g', 'གྱ'],
+ ['པy', 'p', 'པྱ'],
+ ['ཕy', 'h', 'ཕྱ'],
+ ['བy', 'b', 'བྱ'],
+ ['མy', 'm', 'མྱ'],
+ ['ཀr', 'k', 'ཀྲ'],
+ ['ཁr', 'h', 'ཁྲ'],
+ ['གr', 'g', 'གྲ'],
+ ['ཏr', 't', 'ཏྲ'],
+ ['ཐr', 'h', 'ཐྲ'],
+ ['དr', 'd', 'དྲ'],
+ ['པr', 'p', 'པྲ'],
+ ['ཕr', 'h', 'ཕྲ'],
+ ['བr', 'b', 'བྲ'],
+ ['མr', 'm', 'མྲ'],
+ ['ཤr', 'h', 'ཤྲ'],
+ ['སr', 's', 'སྲ'],
+ ['ཧr', 'h', 'ཧྲ'],
+ ['ཀl', 'k', 'ཀླ'],
+ ['གl', 'g', 'གླ'],
+ ['བl', 'b', 'བླ'],
+ ['ཟl', 'z', 'ཟླ'],
+ ['རl', 'r', 'རླ'],
+ ['སl', 's', 'སླ'],
+ ['ཨོM', 'o', 'ༀ'],
+ ['\\.', ''],
+ ['\\+', ''],
+ ['-', ''],
+ ['S', ''],
+ // subjoined letters:
+ ['k', '\\+', 'ྐ'],
+ ['g', '\\+', 'ྒ'],
+ ['ྣg', 'ྔ'],
+ ['c', '\\+', 'ྕ'],
+ ['ྕh', 'ྖ'],
+ ['j', '\\+', 'ྗ'],
+ ['ྣy', 'ྙ'],
+ ['T', '\\+', 'ྚ'],
+ ['ྚh', 'ྛ'],
+ ['D', '\\+', 'ྜ'],
+ ['N', '\\+', 'ྞ'],
+ ['t', '\\+', 'ྟ'],
+ ['ྟh', 'ྠ'],
+ ['d', '\\+', 'ྡ'],
+ ['n', '\\+', 'ྣ'],
+ ['p', '\\+', 'ྤ'],
+ ['ྤh', 'ྥ'],
+ ['b', '\\+', 'ྦ'],
+ ['m', '\\+', 'ྨ'],
+ ['ྟs', 'ྩ'],
+ ['ྩh', 'ྪ'],
+ ['ྡz', 'ྫ'],
+ ['w', '\\+', 'ྭ'],
+ ['ྯh', 'ྮ'],
+ ['z', '\\+', 'ྯ'],
+ ['\'', '\\+', 'ྰ'],
+ ['y', '\\+', 'ྱ'],
+ ['r', '\\+', 'ྲ'],
+ ['l', '\\+', 'ླ'],
+ ['ྶh', 'ྴ'],
+ ['ཀh', '\\+S', 'ཀྵ'],
+ ['ྐh', '\\+S', 'ྐྵ'],
+ ['ྐh', 'ྑ'],
+ ['h', '\\+S', 'ྵ'],
+ ['s', '\\+', 'ྶ'],
+ ['གh', '\\+', 'གྷ'],
+ ['ཌh', '\\+', 'ཌྷ'],
+ ['དh', '\\+', 'དྷ'],
+ ['བh', '\\+', 'བྷ'],
+ ['ཛh', '\\+', 'ཛྷ'],
+ ['ྒh', '\\+', 'ྒྷ'],
+ ['ྜh', '\\+', 'ྜྷ'],
+ ['ྡh', '\\+', 'ྡྷ'],
+ ['ྦh', '\\+', 'ྦྷ'],
+ ['ྫh', '\\+', 'ྫྷ'],
+ ['h', '\\+', 'ྷ'],
+ ['v', '\\+', 'ྦ༹'],
+ ['f', '\\+', 'ྥ༹'],
+ ['W', '\\+', 'ྺ'],
+ ['Y', '\\+', 'ྻ'],
+ ['R', '\\+', 'ྼ'],
+ ['Z', '\\+', '༹'],
+ // consonants
+ ['k', 'ཀ'],
+ ['ཀh', 'k', 'ཁ'],
+ ['g', 'ག'],
+ ['ནg', 'n', 'ང'],
+ ['c', 'ཅ'],
+ ['ཅh', 'c', 'ཆ'],
+ ['j', 'ཇ'],
+ ['ནy', 'n', 'ཉ'],
+ ['T', 'ཊ'],
+ ['ཊh', 'T', 'ཋ'],
+ ['D', 'ཌ'],
+ ['N', 'ཎ'],
+ ['t', 'ཏ'],
+ ['ཏh', 't', 'ཐ'],
+ ['d', 'ད'],
+ ['n', 'ན'],
+ ['p', 'པ'],
+ ['པh', 'p', 'ཕ'],
+ ['b', 'བ'],
+ ['m', 'མ'],
+ ['ཏs', 't', 'ཙ'],
+ ['ཙh', 's', 'ཚ'],
+ ['དz', 'd', 'ཛ'],
+ ['w', 'ཝ'],
+ ['ཟh', 'z', 'ཞ'],
+ ['z', 'ཟ'],
+ ['\'', 'འ'],
+ ['y', 'ཡ'],
+ ['r', 'ར'],
+ ['l', 'ལ'],
+ ['སh', 's', 'ཤ'],
+ ['h', 'S', 'ཥ'],
+ ['s', 'ས'],
+ ['h', 'ཧ'],
+ ['f', 'ཕ༹'],
+ ['v', 'བ༹'],
+ ['R', 'ཪ'],
+ // vowels after consonnants or vowels
+ ['([ཀ-ྼ])i', 'a', '$1ཻ'],
+ ['([ཀ-ྼ])u', 'a', '$1ཽ'],
+ ['ྲi', '-', 'ྲྀ'],
+ ['ླi', '-', 'ླྀ'],
+ ['([ཀ-ྼ])i', '-', '$1ྀ'],
+ ['([ཀ-ྼ])རI', 'r-', '$1ྲཱྀ'],
+ ['([ཀ-ྼ])ལI', 'l-', '$1ླཱྀ'],
+ ['རI', 'r-', 'ཨྲཱྀ'],
+ ['ལI', 'l-', 'ཨླཱྀ'],
+ ['([ཀ-ྼ])I', '-', '$1ཱྀ'],
+ ['([ཀ-ྼ])a', '$1'],
+ ['([ཀ-ྼ])i', '$1ི'],
+ ['([ཀ-ྼ])u', '$1ུ'],
+ ['([ཀ-ྼ])e', '$1ེ'],
+ ['([ཀ-ྼ])o', '$1ོ'],
+ ['([ཀ-ྼ])A', '$1ཱ'],
+ ['([ཀ-ྼ])I', '$1ཱི'],
+ ['([ཀ-ྼ])U', '$1ཱུ'],
+ // vowels after something else
+ ['a', 'ཨ'],
+ ['i', '-', 'ཨྀ'],
+ ['A', 'ཨཱ'],
+ ['I', '-', 'ཨཱྀ'],
+ ['I', 'ཨཱི'],
+ ['U', 'ཨཱུ'],
+ ['i', 'ཨི'],
+ ['u', 'ཨུ'],
+ ['e', 'ཨེ'],
+ ['o', 'ཨོ'],
+ // numbers
+ ['0', '༠'],
+ ['1', '༡'],
+ ['2', '༢'],
+ ['3', '༣'],
+ ['4', '༤'],
+ ['5', '༥'],
+ ['6', '༦'],
+ ['7', '༧'],
+ ['8', '༨'],
+ ['9', '༩'],
+ // sanskrit marks
+ ['H', 'ཿ'],
+ ['M', 'ཾ'],
+ ['~M', 'ྃ'],
+ ['~M`', 'ྂ'],
+ ['\\?', '྄'],
+ ['&', '྅'],
+ // punctuation
+ [' ', '་'],
+ ['\\*', '༌'],
+ ['\\/', '།'],
+ ['\\/\\/', '༎'],
+ [';', '༏'],
+ ['\\|', '༑'],
+ ['\\!', '༈'],
+ ['\\:', '༔'],
+ ['_', ' '],
+ ['\\=', '༴'],
+ ['@', '༄'],
+ ['#', '༅'],
+ ['\\$', '༆'],
+ ['%', '༇'],
+ ['<', '༺'],
+ ['>', '༻'],
+ ['\\(', '༼'],
+ ['\\)', '༽'],
+ ['~X', '༵'],
+ ['X', '༷'],
+ ['\\^', '༹']
+ ]
+ };
+
+ $.ime.register( boEWTS );
+}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/brx/brx-inscript.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/brx/brx-inscript.js
new file mode 100644
index 00000000..e706d191
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/brx/brx-inscript.js
@@ -0,0 +1,112 @@
+( function ( $ ) {
+ 'use strict';
+
+ var brxInscript = {
+ id: 'brx-inscript',
+ name: 'Bodo Inscript',
+ description: 'Bodo Inscript input method',
+ date: '2012-10-10',
+ URL: 'http://github.com/wikimedia/jquery.ime',
+ author: 'Junaid P V',
+ license: 'GPLv3',
+ version: '1.0',
+ contextLength: 0,
+ maxKeyLength: 0,
+ patterns: [
+ ['X', '\u0901'],
+ ['x', '\u0902'],
+ ['_', '\u0903'],
+ ['D', '\u0905'],
+ ['E', '\u0906'],
+ ['F', '\u0907'],
+ ['R', '\u0908'],
+ ['G', '\u0909'],
+ ['T', '\u090A'],
+ ['\\+', '\u090B'],
+ ['S', '\u090F'],
+ ['W', '\u0910'],
+ ['A', '\u0913'],
+ ['Q', '\u0914'],
+ ['k', '\u0915'],
+ ['K', '\u0916'],
+ ['i', '\u0917'],
+ ['I', '\u0918'],
+ ['U', '\u0919'],
+ [';', '\u091A'],
+ ['\\:', '\u091B'],
+ ['p', '\u091C'],
+ ['P', '\u091D'],
+ ['\\}', '\u091E'],
+ ['\'', '\u091F'],
+ ['"', '\u0920'],
+ ['\\[', '\u0921'],
+ ['\\{', '\u0922'],
+ ['C', '\u0923'],
+ ['l', '\u0924'],
+ ['L', '\u0925'],
+ ['o', '\u0926'],
+ ['O', '\u0927'],
+ ['v', '\u0928'],
+ ['h', '\u092A'],
+ ['H', '\u092B'],
+ ['y', '\u092C'],
+ ['Y', '\u092D'],
+ ['c', '\u092E'],
+ ['/', '\u092F'],
+ ['j', '\u0930'],
+ ['n', '\u0932'],
+ ['b', '\u0935'],
+ ['M', '\u0936'],
+ ['\\<', '\u0937'],
+ ['m', '\u0938'],
+ ['u', '\u0939'],
+ ['\\]', '\u093C'],
+ ['e', '\u093E'],
+ ['f', '\u093F'],
+ ['r', '\u0940'],
+ ['g', '\u0941'],
+ ['t', '\u0942'],
+ ['\\=', '\u0943'],
+ ['s', '\u0947'],
+ ['w', '\u0948'],
+ ['a', '\u094B'],
+ ['q', '\u094C'],
+ ['d', '\u094D'],
+ ['\\>', '\u0964'],
+ ['0', '\u0966'],
+ ['1', '\u0967'],
+ ['2', '\u0968'],
+ ['3', '\u0969'],
+ ['4', '\u096A'],
+ ['5', '\u096B'],
+ ['6', '\u096C'],
+ ['7', '\u096D'],
+ ['8', '\u096E'],
+ ['9', '\u096F'],
+ ['\\#', '\u094D\u0930'],
+ ['\\$', '\u0930\u094D'],
+ ['\\%', '\u091C\u094D\u091E'],
+ ['\\^', '\u0924\u094D\u0930'],
+ ['\\&', '\u0915\u094D\u0937'],
+ ['\\*', '\u0936\u094D\u0930'],
+ ['\\(', '\u200D'],
+ ['\\)', '\u200C']],
+ patterns_x: [
+ ['F', '\u090C'],
+ ['N', '\u0933'],
+ ['\\>', '\u093D'],
+ ['\\=', '\u0944'],
+ ['X', '\u0950'],
+ ['e', '\u0951'],
+ ['d', '\u0952'],
+ ['\\+', '\u0960'],
+ ['R', '\u0961'],
+ ['f', '\u0962'],
+ ['r', '\u0963'],
+ ['\\.', '\u0965'],
+ [',', '\u0970'],
+ ['\\$', '\u20B9']]
+ };
+
+ $.ime.register( brxInscript );
+}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/brx/brx-inscript2.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/brx/brx-inscript2.js
new file mode 100644
index 00000000..14bb0ff0
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/brx/brx-inscript2.js
@@ -0,0 +1,117 @@
+( function ( $ ) {
+ 'use strict';
+
+ var brxInScript2 = {
+ id: 'brx-inscript2',
+ name: 'बोडो इनस्क्रिप्ट २',
+ description: 'Enhanced InScript keyboard for Bodo language',
+ date: '2013-20-13',
+ author: 'Parag Nemade',
+ license: 'GPLv3',
+ version: '1.0',
+ patterns: [
+ ['1', '१'],
+ ['2', '२'],
+ ['\\#", "्र'],
+ ['3', '३'],
+ ['\\$', 'र्'],
+ ['4', '४'],
+ ['5', '५'],
+ ['6', '६'],
+ ['7', '७'],
+ ['8', '८'],
+ ['\\(', '('],
+ ['9', '९'],
+ ['\\]', ']'],
+ ['0', '०'],
+ ['\\_", "ः'],
+ ['\\-', '-'],
+ ['\\+', 'ऋ'],
+ ['\\=', 'ृ'],
+ ['Q', 'औ'],
+ ['q', 'ौ'],
+ ['W', 'ऐ'],
+ ['w', 'ै'],
+ ['E', 'आ'],
+ ['e', 'ा'],
+ ['R', 'ई'],
+ ['r', 'ी'],
+ ['T', 'ऊ'],
+ ['t', 'ू'],
+ ['Y', 'भ'],
+ ['y', 'ब'],
+ ['U', 'ङ'],
+ ['u', 'ह'],
+ ['I', 'घ'],
+ ['i', 'ग'],
+ ['O', 'ध'],
+ ['o', 'द'],
+ ['P', 'झ'],
+ ['p', 'ज'],
+ ['\\{', 'ढ'],
+ ['\\[', 'ड'],
+ ['\\}', 'ञ'],
+ ['\\]', '़'],
+ ['A', 'ओ'],
+ ['a', 'ो'],
+ ['S', 'ए'],
+ ['s', 'े'],
+ ['D', 'अ'],
+ ['d', '्'],
+ ['F', 'इ'],
+ ['f', 'ि'],
+ ['G', 'उ'],
+ ['g', 'ु'],
+ ['H', 'फ'],
+ ['h', 'प'],
+ ['j', 'र'],
+ ['K', 'ख'],
+ ['k', 'क'],
+ ['L', 'थ'],
+ ['l', 'त'],
+ [':', 'छ'],
+ [';', 'च'],
+ ['\"', 'ठ'],
+ ['\'', 'ट'],
+ ['z', 'ʼ'],
+ ['X', 'ँ'],
+ ['x', 'ं'],
+ ['C', 'ण'],
+ ['c', 'म'],
+ ['v', 'न'],
+ ['b', 'व'],
+ ['n', 'ल'],
+ ['M', 'श'],
+ ['m', 'स'],
+ ['\\<', 'ष'],
+ [',', ','],
+ ['\\>', '।'],
+ ['\\.', '.'],
+ ['/', 'य'],
+ ['\\%', 'ज्ञ'],
+ ['\\^', 'त्र'],
+ ['\\&', 'क्ष'],
+ ['\\*', 'श्र']
+ ],
+ patterns_x: [
+ ['1', '\u200d'],
+ ['2', '\u200c'],
+ ['4', '₹'],
+ ['\\+', 'ॠ'],
+ ['\\=', 'ॄ'],
+ ['e', '॑'],
+ ['i', 'ग़'],
+ ['R', 'ॡ'],
+ ['r', 'ॣ'],
+ ['d', '॒'],
+ ['F', 'ऌ'],
+ ['f', 'ॢ'],
+ ['X', 'ॐ'],
+ ['N', 'ळ'],
+ [',', '॰'],
+ ['\\>', 'ऽ'],
+ ['\\.', '॥']]
+ };
+
+ $.ime.register( brxInScript2 );
+}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ckb/ckb-transliteration-arkbd.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ckb/ckb-transliteration-arkbd.js
new file mode 100644
index 00000000..77e98ea1
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ckb/ckb-transliteration-arkbd.js
@@ -0,0 +1,103 @@
+( function ( $ ) {
+ 'use strict';
+
+ var ckbTransliterationArkbd = {
+ id: 'ckb-transliteration-arkbd',
+ name: 'باشووری',
+ description: 'Central Kurdish keyboard based on Arabic keyboard',
+ date: '2013-07-06',
+ URL: 'http://github.com/wikimedia/jquery.ime',
+ author: 'Çalak',
+ license: 'GPLv3',
+ version: '1.0',
+ patterns: [
+ ['`', 'ژ'],
+ ['1', '١'],
+ ['2', '٢'],
+ ['3', '٣'],
+ ['4', '٤'],
+ ['5', '٥'],
+ ['6', '٦'],
+ ['7', '٧'],
+ ['8', '٨'],
+ ['9', '٩'],
+ ['0', '٠'],
+
+ ['q', 'چ'],
+ ['w', 'ص'],
+ ['e', 'پ'],
+ ['r', 'ق'],
+ ['t', 'ف'],
+ ['y', 'غ'],
+ ['u', 'ع'],
+ ['i', 'ھ'],
+ ['o', 'خ'],
+ ['p', 'ح'],
+ ['\\[', 'ج'],
+ ['\\]', 'د'],
+
+ ['a', 'ش'],
+ ['s', 'س'],
+ ['d', 'ی'],
+ ['f', 'ب'],
+ ['g', 'ل'],
+ ['h', 'ا'],
+ ['j', 'ت'],
+ ['k', 'ن'],
+ ['l', 'م'],
+ ['\\;', 'ک'],
+ ['\'', 'گ'],
+
+ ['z', 'ئ'],
+ ['x', 'ء'],
+ ['c', 'ۆ'],
+ ['v', 'ر'],
+ ['b', 'لا'],
+ ['n', 'ى'],
+ ['m', 'ە'],
+ ['\\,', 'و'],
+ ['\\.', 'ز'],
+
+ ['\\%', '٪'],
+ ['\\(', ')'],
+ ['\\)', '('],
+
+ ['Q', 'ض'],
+ ['W', '}'],
+ ['E', 'ث'],
+ ['R', '{'],
+ ['T', 'ڤ'],
+ ['Y', 'إ'],
+ ['U', 'ۊ'],
+ ['I', '\''],
+ ['O', '\"'],
+ ['P', '؛'],
+ ['\\{', '>'],
+ ['\\}', '<'],
+
+ ['A', '['],
+ ['S', ']'],
+ ['D', 'ێ'],
+ ['F', ''],
+ ['G', 'ڵ'],
+ ['H', 'أ'],
+ ['J', 'ـ'],
+ ['K', '،'],
+ ['L', '\\'],
+ ['\"', 'ط'],
+
+ ['Z', 'ڎ'],
+ ['X', 'وو'],
+ ['C', 'ؤ'],
+ ['V', 'ڕ'],
+ ['B', 'ڵا'],
+ ['N', 'آ'],
+ ['M', 'ة'],
+ ['\\<', '٫'],
+ ['\\>', '.'],
+ ['\\?', '؟']
+ ]
+ };
+
+ $.ime.register( ckbTransliterationArkbd );
+}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ckb/ckb-transliteration-fakbd.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ckb/ckb-transliteration-fakbd.js
new file mode 100644
index 00000000..01cf59d8
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ckb/ckb-transliteration-fakbd.js
@@ -0,0 +1,104 @@
+( function ( $ ) {
+ 'use strict';
+
+ var ckbTransliterationFakbd = {
+ id: 'ckb-transliteration-fakbd',
+ name: 'ڕۆژھەڵاتی',
+ description: 'Central Kurdish keyboard based on Persian keyboard',
+ date: '2013-07-06',
+ URL: 'http://github.com/wikimedia/jquery.ime',
+ author: 'Çalak',
+ license: 'GPLv3',
+ version: '1.0',
+ patterns: [
+ ['`', 'پ'],
+ ['1', '١'],
+ ['2', '٢'],
+ ['3', '٣'],
+ ['4', '٤'],
+ ['5', '٥'],
+ ['6', '٦'],
+ ['7', '٧'],
+ ['8', '٨'],
+ ['9', '٩'],
+ ['0', '٠'],
+
+ ['q', 'ڵ'],
+ ['w', 'ۆ'],
+ ['e', 'ێ'],
+ ['r', 'ق'],
+ ['t', 'ف'],
+ ['y', 'غ'],
+ ['u', 'ع'],
+ ['i', 'ە'],
+ ['o', 'خ'],
+ ['p', 'ح'],
+ ['\\[', 'ج'],
+ ['\\]', 'چ'],
+ ['\\\\', 'ژ'],
+
+ ['a', 'ش'],
+ ['s', 'س'],
+ ['d', 'ی'],
+ ['f', 'ب'],
+ ['g', 'ل'],
+ ['h', 'ا'],
+ ['j', 'ت'],
+ ['k', 'ن'],
+ ['l', 'م'],
+ ['\\;', 'ک'],
+ ['\'', 'گ'],
+
+ ['z', 'ڤ'],
+ ['x', 'ھ'],
+ ['c', 'ز'],
+ ['v', 'ر'],
+ ['b', 'ڕ'],
+ ['n', 'د'],
+ ['m', 'ئ'],
+ ['\\,', 'و'],
+ ['\\.', '.'],
+ ['/', '/'],
+
+ ['\\%', '٪'],
+ ['\\(', ')'],
+ ['\\)', '('],
+
+ ['Q', 'ض'],
+ ['W', 'ص'],
+ ['E', 'ث'],
+ ['R', 'ك'],
+ ['T', '،'],
+ ['Y', '؛'],
+ ['U', '\\'],
+ ['I', ']'],
+ ['O', '['],
+ ['P', '\''],
+ ['\\{', '}'],
+ ['\\}', '{'],
+
+ ['A', 'ڎ'],
+ ['S', 'إ'],
+ ['D', 'ي'],
+ ['F', 'ة'],
+ ['G', 'ۀ'],
+ ['H', 'آ'],
+ ['J', 'ـ'],
+ ['K', '»'],
+ ['L', '«'],
+
+ ['Z', 'ظ'],
+ ['X', 'ط'],
+ ['C', 'ژ'],
+ ['V', 'ؤ'],
+ ['B', 'ذ'],
+ ['N', '\u200cأ'],
+ ['M', 'ء'],
+ ['\\<', '>'],
+ ['\\>', '<'],
+ ['\\?', '؟']
+ ]
+ };
+
+ $.ime.register( ckbTransliterationFakbd );
+}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ckb/ckb-transliteration-lakbd.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ckb/ckb-transliteration-lakbd.js
new file mode 100644
index 00000000..f5bea06f
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ckb/ckb-transliteration-lakbd.js
@@ -0,0 +1,100 @@
+( function ( $ ) {
+ 'use strict';
+
+ var ckbTransliterationLakbd = {
+ id: 'ckb-transliteration-lakbd',
+ name: 'لاتینی',
+ description: 'Central Kurdish keyboard based on Latin keyboard',
+ date: '2013-07-06',
+ URL: 'http://github.com/wikimedia/jquery.ime',
+ author: 'Çalak',
+ license: 'GPLv3',
+ version: '1.0',
+ patterns: [
+ ['1', '١'],
+ ['2', '٢'],
+ ['3', '٣'],
+ ['4', '٤'],
+ ['5', '٥'],
+ ['6', '٦'],
+ ['7', '٧'],
+ ['8', '٨'],
+ ['9', '٩'],
+ ['0', '٠'],
+
+ ['q', 'ق'],
+ ['w', 'و'],
+ ['e', 'ە'],
+ ['r', 'ر'],
+ ['t', 'ت'],
+ ['y', 'ی'],
+ ['u', 'ئ'],
+ ['i', 'ح'],
+ ['o', 'ۆ'],
+ ['p', 'پ'],
+ ['\\[', ']'],
+ ['\\]', '['],
+
+ ['a', 'ا'],
+ ['s', 'س'],
+ ['d', 'د'],
+ ['f', 'ف'],
+ ['g', 'گ'],
+ ['h', 'ھ'],
+ ['j', 'ژ'],
+ ['k', 'ک'],
+ ['l', 'ل'],
+ ['\\;', '؛'],
+
+ ['z', 'ز'],
+ ['x', 'خ'],
+ ['c', 'ج'],
+ ['v', 'ڤ'],
+ ['b', 'ب'],
+ ['n', 'ن'],
+ ['m', 'م'],
+ ['\\,', '،'],
+ ['\\.', '.'],
+
+ ['\\%', '٪'],
+ ['\\(', ')'],
+ ['\\)', '('],
+
+ ['Q', 'ڎ'],
+ ['W', 'وو'],
+ ['E', 'ێ'],
+ ['R', 'ڕ'],
+ ['T', 'ط'],
+ ['Y', 'ي'],
+ ['U', 'ء'],
+ ['I', 'ع'],
+ ['O', 'ؤ'],
+ ['P', 'ث'],
+ ['\\{', '}'],
+ ['\\}', '{'],
+
+ ['A', 'آ'],
+ ['S', 'ش'],
+ ['D', 'ذ'],
+ ['F', 'إ'],
+ ['G', 'غ'],
+ ['H', 'ه'],
+ ['J', 'أ'],
+ ['K', 'ك'],
+ ['L', 'ڵ'],
+
+ ['Z', 'ض'],
+ ['X', 'ص'],
+ ['C', 'چ'],
+ ['V', 'ظ'],
+ ['B', 'ى'],
+ ['N', 'ة'],
+ ['M', 'ـ'],
+ ['\\<', '>'],
+ ['\\>', '<'],
+ ['\\?', '؟']
+ ]
+ };
+
+ $.ime.register( ckbTransliterationLakbd );
+}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/cv/README.md b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/cv/README.md
new file mode 100644
index 00000000..069431a8
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/cv/README.md
@@ -0,0 +1,26 @@
+Chuvash keyboard layouts
+========================
+
+This directory contains different Chuvash keyboard layouts.
+
+The Chuvash alphabet contains all the 33 letters from the Russian alphabet and
+four additional letters: ӑ ӗ ҫ ӳ
+
+
+Chuvash AltGr — Чăвашла AltGr
+-----------------------------
+The default keyboard layout in [chuvash.org](http://chuvash.org) which uses
+the standard Russian keyboard layouts plus additional four Chuvash letters.
+They are typed using the AltGr button.
+
+Unfortunately only in firefox AltGr combinations work well.
+
+Chuvash Mercen — Căvašla Mercen
+-------------------------------
+This keyboard layout is based on [Mercen](https://sites.google.com/site/mercen77/)
+and comes from CVLat movement.
+
+"Chuvash Cyrillic"
+-----------------
+This keyboard layout is designed by Ikăruk and uses the number row buttons for
+adding the additional letters. No AltGr is needed.
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/cv/cv-cyr-altgr.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/cv/cv-cyr-altgr.js
new file mode 100644
index 00000000..176c97b0
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/cv/cv-cyr-altgr.js
@@ -0,0 +1,120 @@
+// This Chuvash keyboard layout is the "official" layout
+// in chuvash.org
+// This implementation is based on ru-jcuken ime rule
+// which supports both transliteration mode and the native jcuken
+// Along them there are four Chuvash letters ă ĕ ç ÿ
+// The keyboard layout is an agreement
+// of the Chuvash Language Committee 2009-03-12
+// http://comissi.chv.su/node/23
+// This layout differs from the agreement in that matter
+// that all letters are from the Cyrillic subset of Unicode
+
+( function ( $ ) {
+ 'use strict';
+
+ var cv = {
+ id: 'cv-cyr-altgr',
+ name: 'Чăвашла (AltGr)',
+ description: 'AltGr пускăчлă чăваш сарăмĕ',
+ date: '2013-03-24',
+ URL: 'http://comissi.chv.su/',
+ author: 'Anatoly Mironov, @mirontoli',
+ license: 'MIT',
+ version: '1.0',
+ patterns: [
+ ['Q', 'Й'],
+ ['W', 'Ц'],
+ ['E', 'У'],
+ ['R', 'К'],
+ ['T', 'Е'],
+ ['Y', 'Н'],
+ ['U', 'Г'],
+ ['I', 'Ш'],
+ ['O', 'Щ'],
+ ['P', 'З'],
+ ['{', 'Х'],
+ ['}', 'Ъ'],
+ ['A', 'Ф'],
+ ['S', 'Ы'],
+ ['D', 'В'],
+ ['F', 'А'],
+ ['G', 'П'],
+ ['H', 'Р'],
+ ['J', 'О'],
+ ['K', 'Л'],
+ ['L', 'Д'],
+ [':', 'Ж'],
+ ['"', 'Э'],
+ ['Z', 'Я'],
+ ['X', 'Ч'],
+ ['C', 'С'],
+ ['V', 'М'],
+ ['B', 'И'],
+ ['N', 'Т'],
+ ['M', 'Ь'],
+ ['<', 'Б'],
+ ['>', 'Ю'],
+ ['\\?', ','],
+
+ ['q', 'й'],
+ ['w', 'ц'],
+ ['e', 'у'],
+ ['r', 'к'],
+ ['t', 'е'],
+ ['y', 'н'],
+ ['u', 'г'],
+ ['i', 'ш'],
+ ['o', 'щ'],
+ ['p', 'з'],
+ ['\\[', 'х'],
+ ['\\]', 'ъ'],
+ ['a', 'ф'],
+ ['s', 'ы'],
+ ['d', 'в'],
+ ['f', 'а'],
+ ['g', 'п'],
+ ['h', 'р'],
+ ['j', 'о'],
+ ['k', 'л'],
+ ['l', 'д'],
+ [';', 'ж'],
+ ['\'', 'э'],
+ ['z', 'я'],
+ ['x', 'ч'],
+ ['c', 'с'],
+ ['v', 'м'],
+ ['b', 'и'],
+ ['n', 'т'],
+ ['m', 'ь'],
+ [',', 'б'],
+ ['\\.', 'ю'],
+ ['/', '.'],
+
+ ['`', 'ё'],
+ ['~', 'Ё'],
+
+ // ! is the same // 1
+ ['@', '"'], // 2
+ ['#', '№'], // 3
+ ['\\$', ';'], // 4
+ // '%' is the same // 5
+ ['^', ':'], // 6
+ ['&', '?'] // 7
+ // '*', '(' and ')' are the same // 8, 9, 0
+ ],
+ //support both qwerty and jcuken keyboards
+ patterns_x: [
+ ['f|а', 'ӑ'],
+ ['F|А', 'Ӑ'],
+ ['t|е', 'ӗ'],
+ ['T|Е', 'Ӗ'],
+ ['c|с', 'ҫ'],
+ ['C|С', 'Ҫ'],
+ ['e|у', 'ӳ'],
+ ['E|У', 'Ӳ']
+ ]
+ };
+
+ $.ime.register( cv );
+
+}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/cv/cv-cyr-numbers.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/cv/cv-cyr-numbers.js
new file mode 100644
index 00000000..91a57135
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/cv/cv-cyr-numbers.js
@@ -0,0 +1,112 @@
+// This Chuvash keyboard layout is designed by Ikăruk
+// http://ru.wikipedia.org/wiki/Чувашские_раскладки_клавиатуры#Раскладка_«Chuvash_Cyrillic»
+// This uses the number row of the keyboard
+// as it is in Sakha keyboard layout, in Bashkir, Slovak and many more
+// Some other keys are added which are often used in wikipedia editing
+// all letters are from the Cyrillic subset of Unicode
+
+( function ( $ ) {
+ 'use strict';
+
+ var cv = {
+ id: 'cv-cyr-numbers',
+ name: 'Чăвашла (Цифрили)',
+ description: 'Икăрук туса хунă, цифрисене усă куракан сарăм',
+ date: '2013-03-24',
+ URL: 'http://comissi.chv.su/',
+ author: 'Anatoly Mironov, @mirontoli',
+ license: 'MIT',
+ version: '1.0',
+ patterns: [
+ ['Q', 'Й'],
+ ['W', 'Ц'],
+ ['E', 'У'],
+ ['R', 'К'],
+ ['T', 'Е'],
+ ['Y', 'Н'],
+ ['U', 'Г'],
+ ['I', 'Ш'],
+ ['O', 'Щ'],
+ ['P', 'З'],
+ ['{', 'Х'],
+ ['}', 'Ъ'],
+ ['A', 'Ф'],
+ ['S', 'Ы'],
+ ['D', 'В'],
+ ['F', 'А'],
+ ['G', 'П'],
+ ['H', 'Р'],
+ ['J', 'О'],
+ ['K', 'Л'],
+ ['L', 'Д'],
+ [':', 'Ж'],
+ ['"', 'Э'],
+ ['Z', 'Я'],
+ ['X', 'Ч'],
+ ['C', 'С'],
+ ['V', 'М'],
+ ['B', 'И'],
+ ['N', 'Т'],
+ ['M', 'Ь'],
+ ['<', 'Б'],
+ ['>', 'Ю'],
+ ['\\?', ','],
+
+ ['q', 'й'],
+ ['w', 'ц'],
+ ['e', 'у'],
+ ['r', 'к'],
+ ['t', 'е'],
+ ['y', 'н'],
+ ['u', 'г'],
+ ['i', 'ш'],
+ ['o', 'щ'],
+ ['p', 'з'],
+ ['\\[', 'х'],
+ ['\\]', 'ъ'],
+ ['a', 'ф'],
+ ['s', 'ы'],
+ ['d', 'в'],
+ ['f', 'а'],
+ ['g', 'п'],
+ ['h', 'р'],
+ ['j', 'о'],
+ ['k', 'л'],
+ ['l', 'д'],
+ [';', 'ж'],
+ ['\'', 'э'],
+ ['z', 'я'],
+ ['x', 'ч'],
+ ['c', 'с'],
+ ['v', 'м'],
+ ['b', 'и'],
+ ['n', 'т'],
+ ['m', 'ь'],
+ [',', 'б'],
+ ['\\.', 'ю'],
+ ['/', '.'],
+
+ ['`', 'ё'],
+ ['~', 'Ё'],
+ ['1', '?'], // 1
+ ['2', '\''], // 2
+ ['@', '"'], // 2
+ ['3', 'ҫ'], // 3
+ ['#|№', 'Ҫ'], // 3
+ ['4', '|'], // 4
+ ['\\$', ';'], // 4
+ ['5', 'ӳ'], // 5
+ ['%', 'Ӳ'], // 5
+ ['6', '—'], // 6
+ ['\\^', ':'], // 6
+ ['7', 'ӗ'], // 7
+ ['&|\\?', 'Ӗ'], // 7
+ ['8', 'ӑ'], // 8
+ ['\\*', 'Ӑ'], // 8
+ ['9', '['], // 9
+ ['0', ']'] // 0
+ ]
+ };
+
+ $.ime.register( cv );
+}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/cv/cv-lat-altgr.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/cv/cv-lat-altgr.js
new file mode 100644
index 00000000..a225293e
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/cv/cv-lat-altgr.js
@@ -0,0 +1,33 @@
+// This Chuvash keyboard is a stripped version of latin Mercen
+// https://sites.google.com/site/mercen77/
+// http://cvlat.blogspot.com
+// only Chuvash diacritics are used, no additional letters for Turkish or dead keys implemented (for now?)
+
+( function ( $ ) {
+ 'use strict';
+
+ var cv = {
+ id: 'cv-lat-altgr',
+ name: 'Căvašla - Mercen',
+ description: 'CVLat usă kurakan Mercen',
+ date: '2013-03-21',
+ URL: 'https://sites.google.com/site/mercen77/',
+ author: 'Anatoly Mironov, @mirontoli',
+ license: 'MIT',
+ version: '1.0',
+ patterns_x: [
+ ['a', 'ă'],
+ ['A', 'Ă'],
+ ['e', 'ĕ'],
+ ['E', 'Ĕ'],
+ ['s', 'ş'],
+ ['S', 'Ş'],
+ ['d|h', 'š'],
+ ['D|H', 'Š'],
+ ['w|u', 'ü'],
+ ['W|U', 'Ü']
+ ]
+ };
+
+ $.ime.register( cv );
+}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/cyrl/cyrl-palochka.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/cyrl/cyrl-palochka.js
new file mode 100644
index 00000000..f4e8d8e4
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/cyrl/cyrl-palochka.js
@@ -0,0 +1,43 @@
+/**
+ * An input method for the Cyrillic alphabet with palochka, which is used by many languages in the
+ * North Caucasus region. Most keyboard layouts don't support this letter, so people frequently type
+ * other similarly looking characters instead, but this causes various problems, for example when
+ * automatically converting from uppercase to lowercase and vice-versa.
+ *
+ * This layout assumes that the standard Russian keyboard layout is used. All the rules produce the
+ * same character palochka, and the characters used are the same that are often used by the speakers
+ * of these languages online: 1. Latin small 'l'. 2. Latin capital 'I'. 3. Ukrainian capital 'І'. 4.
+ * Alt-1 (the digit one). 5. Alt-д (Cyrillic small 'de', on the same key as Latin 'l'). 6. Alt-ш
+ * (Cyrillic small 'sha', on the same key as Latin 'i'). 7. Alt-Ш (Cyrillic capital 'sha', on the
+ * same key as Latin 'I').
+ */
+
+( function ( $ ) {
+ 'use strict';
+ // All the characters are very similar in appearance,
+ // so it's better to give them names to avoid confusion.
+ var cyrlPalochka;
+
+ cyrlPalochka = {
+ id: 'cyrl-palochka',
+ name: 'Cyrillic Palochka',
+ description: 'Palochka input method for Cyrillic',
+ date: '2012-10-10',
+ URL: 'http://github.com/wikimedia/jquery.ime',
+ author: 'Amir E. Aharoni',
+ license: 'GPLv3',
+ version: '1.0',
+ patterns: [
+ [ 'l', 'Ӏ' ],
+ [ 'I', 'Ӏ' ],
+ [ 'І', 'Ӏ' ] ],
+ patterns_x: [
+ [ '1', 'Ӏ' ],
+ [ 'д', 'Ӏ' ],
+ [ 'ш', 'Ӏ' ],
+ [ 'Ш', 'Ӏ' ] ]
+ };
+
+ $.ime.register( cyrlPalochka );
+
+}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/da/da-normforms.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/da/da-normforms.js
new file mode 100644
index 00000000..382cd0f3
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/da/da-normforms.js
@@ -0,0 +1,49 @@
+( function ( $ ) {
+ 'use strict';
+
+ var defs = {
+ id: 'da-normforms',
+ name: 'Dansk',
+ description: 'Danish input method with most common form transliterated',
+ date: '2012-12-04',
+ URL: 'http://www.evertype.com/alphabets/danish.pdf',
+ author: 'John Erling Blad',
+ license: 'GPLv3',
+ version: '1.0',
+ contextLength: 1,
+ maxKeyLength: 3,
+ patterns: [
+ // The most common transliterations
+ [ 'aa', 'å' ],
+ [ 'AA', 'Å' ],
+ [ 'Aa', 'Å' ],
+ [ 'ae', 'æ' ],
+ [ 'AE', 'Æ' ],
+ [ 'Ae', 'Æ' ],
+ [ 'oe', 'ø' ],
+ [ 'OE', 'Ø' ],
+ [ 'Oe', 'Ø' ],
+ // The previous as negated transliterations, mostly for names
+ [ 'åa', 'a', 'aa' ],
+ [ 'ÅA', 'A', 'AA' ],
+ [ 'Åa', 'A', 'Aa' ],
+ [ 'åA', 'a', 'aA' ],
+ [ 'æe', 'e', 'ae' ],
+ [ 'ÆE', 'E', 'AE' ],
+ [ 'Æe', 'E', 'Ae' ],
+ [ 'æE', 'e', 'aE' ],
+ [ 'øe', 'e', 'oe' ],
+ [ 'ØE', 'E', 'OE' ],
+ [ 'Øe', 'E', 'Oe' ], // this fails for some names like "Øen"
+ [ 'øE', 'e', 'oE' ]
+ // historically similar forms
+ // "Å" is sometimes written as "Aa", and "å" as "aa", but in names
+ // it is not generally acceptable to use this transliteration. To
+ // handle those situations we need some oposite forms.
+ // There is a similar character "Å" for the length unit Angstrom,
+ // but this is not the upper case letter Å.
+ ]
+ };
+
+ $.ime.register( defs );
+}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/de/de-transliteration.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/de/de-transliteration.js
new file mode 100644
index 00000000..b4308196
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/de/de-transliteration.js
@@ -0,0 +1,27 @@
+( function ( $ ) {
+ 'use strict';
+
+ var de = {
+ id: 'de-transliteration',
+ name: 'Deutsch Tilde',
+ description: 'German input method',
+ date: '2012-11-20',
+ URL: 'http://github.com/wikimedia/jquery.ime',
+ author: 'Erik Moeller',
+ license: 'Public domain',
+ version: '1.0',
+ contextLength: 1,
+ maxKeyLength: 1,
+ patterns: [
+ [ '~A', 'Ä' ],
+ [ '~O', 'Ö' ],
+ [ '~U', 'Ü' ],
+ [ '~a', 'ä' ],
+ [ '~o', 'ö' ],
+ [ '~u', 'ü' ],
+ [ '~s', 'ß' ],
+ [ '~S', 'ß' ] ]
+ };
+
+ $.ime.register( de );
+}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/doi/doi-inscript2.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/doi/doi-inscript2.js
new file mode 100644
index 00000000..52f095fa
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/doi/doi-inscript2.js
@@ -0,0 +1,119 @@
+( function ( $ ) {
+ 'use strict';
+
+ var doiInScript2 = {
+ id: 'doi-inscript2',
+ name: 'डोगरी इनस्क्रिप्ट २',
+ description: 'Enhanced InScript keyboard for Dogri language',
+ date: '2013-02-13',
+ author: 'Parag Nemade',
+ license: 'GPLv3',
+ version: '1.0',
+ patterns: [
+ ['1', '१'],
+ ['2', '२'],
+ ['\\#', '्र'],
+ ['3', '३'],
+ ['\\$', 'र्'],
+ ['4', '४'],
+ ['5', '५'],
+ ['6', '६'],
+ ['7', '७'],
+ ['8', '८'],
+ ['\\(', '('],
+ ['9', '९'],
+ ['\\]', ']'],
+ ['0', '०'],
+ ['\\_', 'ः'],
+ ['\\-', '-'],
+ ['\\+', 'ऋ'],
+ ['\\=', 'ृ'],
+ ['Q', 'औ'],
+ ['q", "ौ'],
+ ['W', 'ऐ'],
+ ['w', 'ै'],
+ ['E', 'आ'],
+ ['e', 'ा'],
+ ['R', 'ई'],
+ ['r', 'ी'],
+ ['T', 'ऊ'],
+ ['t', 'ू'],
+ ['Y', 'भ'],
+ ['y', 'ब'],
+ ['U', 'ङ'],
+ ['u', 'ह'],
+ ['I', 'घ'],
+ ['i', 'ग'],
+ ['O', 'ध'],
+ ['o', 'द'],
+ ['P', 'झ'],
+ ['p', 'ज'],
+ ['\\{', 'ढ'],
+ ['\\[', 'ड'],
+ ['\\}', 'ञ'],
+ ['\\]', '़'],
+ ['A', 'ओ'],
+ ['a', 'ो'],
+ ['S', 'ए'],
+ ['s', 'े'],
+ ['D', 'अ'],
+ ['d', '्'],
+ ['F', 'इ'],
+ ['f', 'ि'],
+ ['G', 'उ'],
+ ['g', 'ु'],
+ ['H', 'फ'],
+ ['h', 'प'],
+ ['j', 'र'],
+ ['K', 'ख'],
+ ['k', 'क'],
+ ['L', 'थ'],
+ ['l', 'त'],
+ [':', 'छ'],
+ [';', 'च'],
+ ['\"', 'ठ'],
+ ['\'', 'ट'],
+ ['z', 'ʼ'],
+ ['X', 'ँ'],
+ ['C', 'ण'],
+ ['c', 'म'],
+ ['v', 'न'],
+ ['b', 'व'],
+ ['n', 'ल'],
+ ['M', 'श'],
+ ['m', 'स'],
+ ['\\<', 'ष'],
+ [',', ','],
+ ['\\>', '।'],
+ ['\\.', '.'],
+ ['/', 'य'],
+ ['\\%', 'ज्ञ'],
+ ['\\^', 'त्र'],
+ ['\\&', 'क्ष'],
+ ['\\*', 'श्र']
+ ],
+ patterns_x: [
+ ['1', '\u200d'],
+ ['2', '\u200c'],
+ ['4', '₹'],
+ ['\\+', 'ॠ'],
+ ['\\=', 'ृ'],
+ ['e', '॑'],
+ ['i', 'ग़'],
+ ['R', 'ॡ'],
+ ['r', 'ॣ'],
+ ['p', 'ज़'],
+ ['\\{', 'ढ़'],
+ ['\\[', 'ड़'],
+ ['d', '॒'],
+ ['F', 'ऌ'],
+ ['f', 'ॢ'],
+ ['H', 'फ़'],
+ ['X', 'ॐ'],
+ ['N', 'ळ'],
+ ['\\>', 'ऽ'],
+ ['\\.', '॥']]
+ };
+
+ $.ime.register( doiInScript2 );
+}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/el/el-kbd.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/el/el-kbd.js
new file mode 100644
index 00000000..13d042dc
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/el/el-kbd.js
@@ -0,0 +1,95 @@
+( function ( $ ) {
+ 'use strict';
+
+ var elKbd = {
+ id: 'el-kbd',
+ name: 'Greek kbd',
+ description: 'Greek kbd keyboard layout',
+ date: '2013-02-11',
+ URL: 'http://github.com/wikimedia/jquery.ime',
+ author: 'Parag Nemade',
+ license: 'GPLv3',
+ version: '1.0',
+ patterns: [
+ ['΄¨i', 'ΐ'],
+ ['¨΄i', 'ΐ'],
+ ['΄¨y', 'ΰ'],
+ ['¨΄y', 'ΰ'],
+ ['¨i', 'ϊ'],
+ ['¨y', 'ϋ'],
+ ['¨I', 'Ϊ'],
+ ['¨Y', 'Ϋ'],
+ ['΄a', 'ά'],
+ ['΄e', 'έ'],
+ ['΄h', 'ή'],
+ ['΄i', 'ί'],
+ ['΄o', 'ό'],
+ ['΄y', 'ύ'],
+ ['΄v', 'ώ'],
+ ['΄A', 'Ά'],
+ ['΄E', 'Έ'],
+ ['΄H', 'Ή'],
+ ['΄I', 'Ί'],
+ ['΄O', 'Ό'],
+ ['΄Y', 'Ύ'],
+ ['΄V', 'Ώ'],
+ ['q', ';'],
+ ['w', 'ς'],
+ ['e', 'ε'],
+ ['r', 'ρ'],
+ ['t', 'τ'],
+ ['y', 'υ'],
+ ['u', 'θ'],
+ ['i', 'ι'],
+ ['o', 'ο'],
+ ['p', 'π'],
+ ['\\[', '['],
+ ['\\]', ']'],
+ ['a', 'α'],
+ ['s', 'σ'],
+ ['d', 'δ'],
+ ['f', 'φ'],
+ ['g', 'γ'],
+ ['h', 'η'],
+ ['j', 'ξ'],
+ ['k', 'κ'],
+ ['l', 'λ'],
+ [';', '΄'],
+ ['z', 'ζ'],
+ ['x', 'χ'],
+ ['c', 'ψ'],
+ ['v', 'ω'],
+ ['b', 'β'],
+ ['n', 'ν'],
+ ['m', 'μ'],
+ ['Q', ':'],
+ ['W', 'Σ'],
+ ['E', 'Ε'],
+ ['R', 'Ρ'],
+ ['T', 'Τ'],
+ ['Y', 'Υ'],
+ ['U', 'Θ'],
+ ['I', 'Ι'],
+ ['O', 'Ο'],
+ ['P', 'Π'],
+ ['A', 'Α'],
+ ['S', 'Σ'],
+ ['D', 'Δ'],
+ ['F', 'Φ'],
+ ['G', 'Γ'],
+ ['H', 'Η'],
+ ['J', 'Ξ'],
+ ['K', 'Κ'],
+ ['L', 'Λ'],
+ [':', '¨'],
+ ['Z', 'Ζ'],
+ ['X', 'Χ'],
+ ['C', 'Ψ'],
+ ['V', 'Ω'],
+ ['B', 'Β'],
+ ['N', 'Ν'],
+ ['M', 'Μ']]
+ };
+
+ $.ime.register( elKbd );
+}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/eo/eo-h-f.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/eo/eo-h-f.js
new file mode 100644
index 00000000..cecf1ae5
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/eo/eo-h-f.js
@@ -0,0 +1,59 @@
+( function ( $ ) {
+ 'use strict';
+
+ var eoHF = {
+ id: 'eo-h-f',
+ name: 'Espernto h-f',
+ description: 'writing Esperanto-letters using Zamenhof\'s fundamental system.',
+ date: '2013-02-12',
+ URL: 'http://github.com/wikimedia/jquery.ime',
+ author: 'Parag Nemade',
+ license: 'GPLv3',
+ version: '1.0',
+ patterns: [
+ ['ĉh', 'ch'],
+ ['ĝh', 'gh'],
+ ['ĥh', 'hh'],
+ ['ĵh', 'jh'],
+ ['ŝh', 'sh'],
+ ['aŭu', 'au'],
+ ['eŭu', 'eu'],
+ ['Ĉh', 'Ch'],
+ ['Ĝh', 'Gh'],
+ ['Ĥh', 'Hh'],
+ ['Ĵh', 'Jh'],
+ ['Ŝh', 'Sh'],
+ ['Aŭu', 'Au'],
+ ['Eŭu', 'Eu'],
+ ['ĈH', 'CH'],
+ ['ĜH', 'GH'],
+ ['ĤH', 'HH'],
+ ['ĴH', 'JH'],
+ ['ŜH', 'SH'],
+ ['AŬU', 'AU'],
+ ['EŬU', 'EU'],
+ ['ch', 'ĉ'],
+ ['gh', 'ĝ'],
+ ['hh', 'ĥ'],
+ ['jh', 'ĵ'],
+ ['sh', 'ŝ'],
+ ['au', 'aŭ'],
+ ['eu', 'eŭ'],
+ ['Ch', 'Ĉ'],
+ ['Gh', 'Ĝ'],
+ ['Hh', 'Ĥ'],
+ ['Jh', 'Ĵ'],
+ ['Sh', 'Ŝ'],
+ ['Au', 'Aŭ'],
+ ['Eu', 'Eŭ'],
+ ['CH', 'Ĉ'],
+ ['GH', 'Ĝ'],
+ ['HH', 'Ĥ'],
+ ['JH', 'Ĵ'],
+ ['SH', 'Ŝ'],
+ ['AU', 'AŬ'],
+ ['EU', 'EŬ']]
+ };
+
+ $.ime.register( eoHF );
+}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/eo/eo-h.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/eo/eo-h.js
new file mode 100644
index 00000000..0fe4b898
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/eo/eo-h.js
@@ -0,0 +1,54 @@
+( function ( $ ) {
+ 'use strict';
+
+ var eoH = {
+ id: 'eo-h',
+ name: 'Esperanto h',
+ description: 'writing Esperanto-letters adding h\'s.',
+ date: '2013-02-12',
+ URL: 'http://github.com/wikimedia/jquery.ime',
+ author: 'Parag Nemade',
+ license: 'GPLv3',
+ version: '1.0',
+ patterns: [
+ ['ĉh', 'ch'],
+ ['ĝh', 'gh'],
+ ['ĥh', 'hh'],
+ ['ĵh', 'jh'],
+ ['ŝh', 'sh'],
+ ['ŭh', 'uh'],
+ ['Ĉh', 'Ch'],
+ ['Ĝh', 'Gh'],
+ ['Ĥh', 'Hh'],
+ ['Ĵh', 'Jh'],
+ ['Ŝh', 'Sh'],
+ ['Ŭh', 'Uh'],
+ ['ĈH', 'CH'],
+ ['ĜH', 'GH'],
+ ['ĤH', 'HH'],
+ ['ĴH', 'JH'],
+ ['ŜH', 'SH'],
+ ['ŬH', 'UH'],
+
+ ['ch', 'ĉ'],
+ ['gh', 'ĝ'],
+ ['hh', 'ĥ'],
+ ['jh', 'ĵ'],
+ ['sh', 'ŝ'],
+ ['uh', 'ŭ'],
+ ['Ch', 'Ĉ'],
+ ['Gh', 'Ĝ'],
+ ['Hh', 'Ĥ'],
+ ['Jh', 'Ĵ'],
+ ['Sh', 'Ŝ'],
+ ['Uh', 'Ŭ'],
+ ['CH', 'Ĉ'],
+ ['GH', 'Ĝ'],
+ ['HH', 'Ĥ'],
+ ['JH', 'Ĵ'],
+ ['SH', 'Ŝ'],
+ ['UH', 'Ŭ']]
+ };
+
+ $.ime.register( eoH );
+}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/eo/eo-plena.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/eo/eo-plena.js
new file mode 100644
index 00000000..d0b529b2
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/eo/eo-plena.js
@@ -0,0 +1,99 @@
+( function ( $ ) {
+ 'use strict';
+
+ var eoPlena = {
+ id: 'eo-plena',
+ name: 'Esperanto plena',
+ description: 'writing Esperanto-letters with the fundamental system and the X-system, like the default of EK.',
+ date: '2013-02-12',
+ URL: 'http://github.com/wikimedia/jquery.ime',
+ author: 'Parag Nemade',
+ license: 'GPLv3',
+ version: '1.0',
+ patterns: [
+ ['ĉx', 'cx'],
+ ['ĝx', 'gx'],
+ ['ĥx', 'hx'],
+ ['ĵx', 'jx'],
+ ['ŝx', 'sx'],
+ ['ŭx', 'ux'],
+ ['Ĉx', 'Cx'],
+ ['Ĝx', 'Gx'],
+ ['Ĥx', 'Hx'],
+ ['Ĵx', 'Jx'],
+ ['Ŝx', 'Sx'],
+ ['Ŭx', 'Ux'],
+ ['ĈX', 'CX'],
+ ['ĜX', 'GX'],
+ ['ĤX', 'HX'],
+ ['ĴX', 'JX'],
+ ['ŜX', 'SX'],
+ ['ŬX', 'UX'],
+
+ ['ĉh', 'ch'],
+ ['ĝh', 'gh'],
+ ['ĥh', 'hh'],
+ ['ĵh', 'jh'],
+ ['ŝh', 'sh'],
+ ['aŭu', 'au'],
+ ['eŭu', 'eu'],
+ ['Ĉh', 'Ch'],
+ ['Ĝh', 'Gh'],
+ ['Ĥh', 'Hh'],
+ ['Ĵh', 'Jh'],
+ ['Ŝh', 'Sh'],
+ ['Aŭu', 'Au'],
+ ['Eŭu', 'Eu'],
+ ['ĈH', 'CH'],
+ ['ĜH', 'GH'],
+ ['ĤH', 'HH'],
+ ['ĴH', 'JH'],
+ ['ŜH', 'SH'],
+ ['AŬU', 'AU'],
+ ['EŬU', 'EU'],
+
+ ['cx', 'ĉ'],
+ ['gx', 'ĝ'],
+ ['hx', 'ĥ'],
+ ['jx', 'ĵ'],
+ ['sx', 'ŝ'],
+ ['ux', 'ŭ'],
+ ['Cx', 'Ĉ'],
+ ['Gx', 'Ĝ'],
+ ['Hx', 'Ĥ'],
+ ['Jx', 'Ĵ'],
+ ['Sx', 'Ŝ'],
+ ['Ux', 'Ŭ'],
+ ['CX', 'Ĉ'],
+ ['GX', 'Ĝ'],
+ ['HX', 'Ĥ'],
+ ['JX', 'Ĵ'],
+ ['SX', 'Ŝ'],
+ ['UX', 'Ŭ'],
+
+ ['ch', 'ĉ'],
+ ['gh', 'ĝ'],
+ ['hh', 'ĥ'],
+ ['jh', 'ĵ'],
+ ['sh', 'ŝ'],
+ ['au', 'aŭ'],
+ ['eu', 'eŭ'],
+ ['Ch', 'Ĉ'],
+ ['Gh', 'Ĝ'],
+ ['Hh', 'Ĥ'],
+ ['Jh', 'Ĵ'],
+ ['Sh', 'Ŝ'],
+ ['Au', 'Aŭ'],
+ ['Eu', 'Eŭ'],
+ ['CH', 'Ĉ'],
+ ['GH', 'Ĝ'],
+ ['HH', 'Ĥ'],
+ ['JH', 'Ĵ'],
+ ['SH', 'Ŝ'],
+ ['AU', 'AŬ'],
+ ['EU', 'EŬ']
+ ]
+ };
+
+ $.ime.register( eoPlena );
+}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/eo/eo-q.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/eo/eo-q.js
new file mode 100644
index 00000000..978cdaaf
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/eo/eo-q.js
@@ -0,0 +1,55 @@
+( function ( $ ) {
+ 'use strict';
+
+ var eoQ = {
+ id: 'eo-q',
+ name: 'Espernto q',
+ description: 'writing Esperanto-letters adding q\'s.',
+ date: '2013-02-09',
+ URL: 'http://github.com/wikimedia/jquery.ime',
+ author: 'Parag Nemade',
+ license: 'GPLv3',
+ version: '1.0',
+ patterns: [
+ ['ĉq', 'cq'],
+ ['ĝq', 'gq'],
+ ['ĥq', 'hq'],
+ ['ĵq', 'jq'],
+ ['ŝq', 'sq'],
+ ['ŭq', 'uq'],
+ ['Ĉq', 'Cq'],
+ ['Ĝq', 'Gq'],
+ ['Ĥq', 'Hq'],
+ ['Ĵq', 'Jq'],
+ ['Ŝq', 'Sq'],
+ ['Ŭq', 'Uq'],
+ ['ĈQ', 'CQ'],
+ ['ĜQ', 'GQ'],
+ ['ĤQ', 'HQ'],
+ ['ĴQ', 'JQ'],
+ ['ŜQ', 'SQ'],
+ ['ŬQ', 'UQ'],
+
+ ['cq', 'ĉ'],
+ ['gq', 'ĝ'],
+ ['hq', 'ĥ'],
+ ['jq', 'ĵ'],
+ ['sq', 'ŝ'],
+ ['uq', 'ŭ'],
+ ['Cq', 'Ĉ'],
+ ['Gq', 'Ĝ'],
+ ['Hq', 'Ĥ'],
+ ['Jq', 'Ĵ'],
+ ['Sq', 'Ŝ'],
+ ['Uq', 'Ŭ'],
+ ['CQ', 'Ĉ'],
+ ['GQ', 'Ĝ'],
+ ['HQ', 'Ĥ'],
+ ['JQ', 'Ĵ'],
+ ['SQ', 'Ŝ'],
+ ['UQ', 'Ŭ']]
+
+ };
+
+ $.ime.register( eoQ);
+}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/eo/eo-transliteration.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/eo/eo-transliteration.js
new file mode 100644
index 00000000..fa82fd66
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/eo/eo-transliteration.js
@@ -0,0 +1,45 @@
+( function ( $ ) {
+ 'use strict';
+
+ function prepareRules () {
+ var rules = [], chars;
+
+ chars = {
+ C: 'Ĉ',
+ G: 'Ĝ',
+ H: 'Ĥ',
+ J: 'Ĵ',
+ S: 'Ŝ',
+ U: 'Ŭ',
+ c: 'ĉ',
+ g: 'ĝ',
+ h: 'ĥ',
+ j: 'ĵ',
+ s: 'ŝ',
+ u: 'ŭ'
+ };
+
+ $.each( chars, function ( ascii, accented ) {
+ rules.push( [ ascii + '[Xx]', ascii, accented ] );
+ rules.push( [ accented + '([Xx])', '[Xx]', ascii + '$1' ] );
+ } );
+
+ return rules;
+ }
+
+ var eoTransliteration = {
+ id: 'eo-transliteration',
+ name: 'Esperanto Transliteration',
+ description: 'Esperanto x-code transliteration',
+ date: '2012-10-10',
+ URL: 'http://github.com/wikimedia/jquery.ime',
+ author: 'Brion Vibber',
+ license: 'GPLv3',
+ version: '1.0',
+ contextLength: 1,
+ maxKeyLength: 1,
+ patterns: prepareRules()
+ };
+
+ $.ime.register( eoTransliteration );
+}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/eo/eo-vi.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/eo/eo-vi.js
new file mode 100644
index 00000000..b1d0586e
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/eo/eo-vi.js
@@ -0,0 +1,65 @@
+( function ( $ ) {
+ 'use strict';
+
+ var eoVi = {
+ id: 'eo-vi',
+ name: 'Esperanto vi',
+ description: 'writing Esperanto-letters using double key press (the X-system).',
+ date: '2013-02-12',
+ URL: 'http://github.com/wikimedia/jquery.ime',
+ author: 'Parag Nemade',
+ license: 'GPLv3',
+ version: '1.0',
+ patterns: [
+ ['ĉc', 'cc'],
+ ['ĝg', 'gg'],
+ ['ĥh', 'hh'],
+ ['ĵj', 'jj'],
+ ['ŝs', 'ss'],
+ ['ŭu', 'uu'],
+ ['Ĉc', 'Cc'],
+ ['Ĝg', 'Gg'],
+ ['Ĥh', 'Hh'],
+ ['Ĵj', 'Jj'],
+ ['Ŝs', 'Ss'],
+ ['Ŭu', 'Uu'],
+ ['aŭu', 'au'],
+ ['eŭu', 'eu'],
+ ['Aŭu', 'Au'],
+ ['Eŭu', 'Eu'],
+ ['AŬU', 'AU'],
+ ['EŬU', 'EU'],
+ ['ĈC', 'CC'],
+ ['ĜG', 'GG'],
+ ['ĤH', 'HH'],
+ ['ĴJ', 'JJ'],
+ ['ŜS', 'SS'],
+ ['ŬU', 'UU'],
+ ['cc', 'ĉ'],
+ ['gg', 'ĝ'],
+ ['hh', 'ĥ'],
+ ['jj', 'ĵ'],
+ ['ss', 'ŝ'],
+ ['uu', 'ŭ'],
+ ['au', 'aŭ'],
+ ['eu', 'eŭ'],
+ ['Cc', 'Ĉ'],
+ ['Gg', 'Ĝ'],
+ ['Hh', 'Ĥ'],
+ ['Jj', 'Ĵ'],
+ ['Ss', 'Ŝ'],
+ ['Uu', 'Ŭ'],
+ ['Au', 'Aŭ'],
+ ['Eu', 'Eŭ'],
+ ['AU', 'AŬ'],
+ ['EU', 'EŬ'],
+ ['CC', 'Ĉ'],
+ ['GG', 'Ĝ'],
+ ['HH', 'Ĥ'],
+ ['JJ', 'Ĵ'],
+ ['SS', 'Ŝ'],
+ ['UU', 'Ŭ']]
+ };
+
+ $.ime.register( eoVi );
+}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/eo/eo-x.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/eo/eo-x.js
new file mode 100644
index 00000000..3d7c96ef
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/eo/eo-x.js
@@ -0,0 +1,53 @@
+( function ( $ ) {
+ 'use strict';
+
+ var eoX = {
+ id: 'eo-x',
+ name: 'Esperanto x',
+ description: 'writing Esperanto-letters adding x\'s (the X-system).',
+ date: '2013-02-12',
+ URL: 'http://github.com/wikimedia/jquery.ime',
+ author: 'Parag Nemade',
+ license: 'GPLv3',
+ version: '1.0',
+ patterns: [
+ ['ĉx', 'cx'],
+ ['ĝx', 'gx'],
+ ['ĥx', 'hx'],
+ ['ĵx', 'jx'],
+ ['ŝx', 'sx'],
+ ['ŭx', 'ux'],
+ ['Ĉx', 'Cx'],
+ ['Ĝx', 'Gx'],
+ ['Ĥx', 'Hx'],
+ ['Ĵx', 'Jx'],
+ ['Ŝx', 'Sx'],
+ ['Ŭx', 'Ux'],
+ ['ĈX', 'CX'],
+ ['ĜX', 'GX'],
+ ['ĤX', 'HX'],
+ ['ĴX', 'JX'],
+ ['ŜX', 'SX'],
+ ['ŬX', 'UX'],
+ ['cx', 'ĉ'],
+ ['gx', 'ĝ'],
+ ['hx', 'ĥ'],
+ ['jx', 'ĵ'],
+ ['sx', 'ŝ'],
+ ['ux', 'ŭ'],
+ ['Cx', 'Ĉ'],
+ ['Gx', 'Ĝ'],
+ ['Hx', 'Ĥ'],
+ ['Jx', 'Ĵ'],
+ ['Sx', 'Ŝ'],
+ ['Ux', 'Ŭ'],
+ ['CX', 'Ĉ'],
+ ['GX', 'Ĝ'],
+ ['HX', 'Ĥ'],
+ ['JX', 'Ĵ'],
+ ['SX', 'Ŝ'],
+ ['UX', 'Ŭ']]
+ };
+
+ $.ime.register( eoX );
+}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/fa/fa-kbd.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/fa/fa-kbd.js
new file mode 100644
index 00000000..d0421377
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/fa/fa-kbd.js
@@ -0,0 +1,167 @@
+( function ( $ ) {
+ 'use strict';
+
+ var faKbd = {
+ id: 'fa-kbd',
+ name: 'kbd',
+ description: 'Persian standard (ISIRI 9147) keyboard layout',
+ date: '2013-08-30',
+ URL: 'http://www.isiri.org/portal/files/std/9147.pdf',
+ author: 'Ebrahim Byagowi',
+ license: 'GPLv3',
+ version: '1.0',
+ patterns: [
+ ['`', '\u200d'],
+ ['1', '۱'],
+ ['2', '۲'],
+ ['3', '۳'],
+ ['4', '۴'],
+ ['5', '۵'],
+ ['6', '۶'],
+ ['7', '۷'],
+ ['8', '۸'],
+ ['9', '۹'],
+ ['0', '۰'],
+
+ ['q', 'ض'],
+ ['w', 'ص'],
+ ['e', 'ث'],
+ ['r', 'ق'],
+ ['t', 'ف'],
+ ['y', 'غ'],
+ ['u', 'ع'],
+ ['i', 'ه'],
+ ['o', 'خ'],
+ ['p', 'ح'],
+ ['\\[', 'ج'],
+ ['\\]', 'چ'],
+
+ ['a', 'ش'],
+ ['s', 'س'],
+ ['d', 'ی'],
+ ['f', 'ب'],
+ ['g', 'ل'],
+ ['h', 'ا'],
+ ['j', 'ت'],
+ ['k', 'ن'],
+ ['l', 'م'],
+ [';', 'ک'],
+ ['\'', 'گ'],
+
+ ['z', 'ظ'],
+ ['x', 'ط'],
+ ['c', 'ز'],
+ ['v', 'ر'],
+ ['b', 'ذ'],
+ ['n', 'د'],
+ ['m', 'پ'],
+ [',', 'و'],
+ ['\\.', '.'],
+ ['/', '/'],
+
+ ['~', '÷'],
+ ['\\!', '!'],
+ ['@', '٬'],
+ ['#', '٫'],
+ ['\\$', '﷼'],
+ ['%', '٪'],
+ ['\\^', '×'],
+ ['&', '،'],
+ ['\\*', '*'],
+ ['\\(', ')'],
+ ['\\)', '('],
+ ['_', 'ـ'],
+
+ ['Q', 'ْ'],
+ ['W', 'ٌ'],
+ ['E', 'ٍ'],
+ ['R', 'ً'],
+ ['T', 'ُ'],
+ ['Y', 'ِ'],
+ ['U', 'َ'],
+ ['I', 'ّ'],
+ ['O', ']'],
+ ['P', '['],
+ ['\\{', '}'],
+ ['\\}', '{'],
+
+ ['A', 'ؤ'],
+ ['S', 'ئ'],
+ ['D', 'ي'],
+ ['F', 'إ'],
+ ['G', 'أ'],
+ ['H', 'آ'],
+ ['J', 'ة'],
+ ['K', '»'],
+ ['L', '«'],
+ ['\\:', ':'],
+ ['"', '؛'],
+
+ ['Z', 'ك'],
+ ['X', 'ٓ'],
+ ['C', 'ژ'],
+ ['V', 'ٰ'],
+ ['B', '\u200c'],
+ ['N', 'ٔ'],
+ ['M', 'ء'],
+ ['<', '>'],
+ ['>', '<'],
+ ['\\?', '؟']
+ ],
+ patterns_x: [
+ ['`', '~'],
+ ['1', '`'],
+ ['2', '@'],
+ ['3', '#'],
+ ['4', '$'],
+ ['5', '%'],
+ ['6', '^'],
+ ['7', '&'],
+ ['8', '•'],
+ ['9', '\u200e'],
+ ['0', '\u200f'],
+
+ ['q', '°'],
+ ['w', ''],
+ ['e', '€'],
+ ['r', ''],
+ ['t', ''],
+ ['y', ''],
+ ['u', ''],
+ ['i', '\u202d'],
+ ['o', '\u202e'],
+ ['p', '\u202c'],
+ ['\\[', '\u202a'],
+ ['\\]', '\u202b'],
+
+ ['a', ''],
+ ['s', ''],
+ ['d', 'ى'],
+ ['f', ''],
+ ['g', ''],
+ ['h', 'ٱ'],
+ ['j', ''],
+ ['k', '﴾'],
+ ['l', '﴿'],
+ [';', ';'],
+ ['\'', '"'],
+
+ ['z', ''],
+ ['x', ''],
+ ['c', ''],
+ ['v', 'ٖ'],
+ ['b', '\u200d'],
+ ['n', 'ٕ'],
+ ['m', '…'],
+ [',', ','],
+ ['\\.', '\''],
+ ['/', '?'],
+ [' ', '\xa0']
+ ],
+ patterns_shift: [
+ [' ', '\u200c']
+ ]
+ };
+
+ $.ime.register( faKbd );
+}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/fi/fi-transliteration.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/fi/fi-transliteration.js
new file mode 100644
index 00000000..15e70448
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/fi/fi-transliteration.js
@@ -0,0 +1,32 @@
+( function ( $ ) {
+ 'use strict';
+
+ var fiTransliteration = {
+ id: 'fi-transliteration',
+ name: 'translitterointi',
+ description: 'Finnish transliteration',
+ date: '2012-11-10',
+ URL: 'http://github.com/wikimedia/jquery.ime',
+ author: 'Niklas Laxström',
+ license: 'GPLv3',
+ version: '1.0',
+ contextLength: 0,
+ maxKeyLength: 2,
+ patterns: [
+ ['\\.a', 'å'],
+ ['\\.A', 'Å'],
+ [':a', 'ä'],
+ [':A', 'Ä'],
+ [':o', 'ö'],
+ [':O', 'Ö'],
+ ['shh', 'š'],
+ ['Shh', 'Š'],
+ ['\\.e', '€']
+ ],
+ patterns_x: [
+ ['e', '€']
+ ]
+ };
+
+ $.ime.register( fiTransliteration );
+}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/fo/fo-normforms.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/fo/fo-normforms.js
new file mode 100644
index 00000000..460cb227
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/fo/fo-normforms.js
@@ -0,0 +1,65 @@
+( function ( $ ) {
+ 'use strict';
+
+ var defs = {
+ id: 'fo-normforms',
+ name: 'Føroyskt',
+ description: 'Faroese input method with most common form transliterated',
+ date: '2012-12-04',
+ URL: 'http://www.evertype.com/alphabets/faroese.pdf',
+ author: 'John Erling Blad',
+ license: 'GPLv3',
+ version: '1.0',
+ contextLength: 1,
+ maxKeyLength: 3,
+ patterns: [
+ // Uses "'" as an accent
+ [ '\'a', 'á' ],
+ [ '\'A', 'Á' ],
+ [ '\'i', 'í' ],
+ [ '\'I', 'Í' ],
+ [ '\'o', 'ó' ],
+ [ '\'O', 'Ó' ],
+ [ '\'u', 'ú' ],
+ [ '\'U', 'Ú' ],
+ [ '\'y', 'ý' ],
+ [ '\'Y', 'Ý' ],
+ // Uses "~" as "approximatly similar to"
+ [ '~d', 'ð' ],
+ [ '~D', 'Ð' ],
+ [ '~o', 'ö' ],
+ [ '~O', 'Ö' ],
+ // The most common transliterations (also the Danish letters)
+ [ 'aa', 'å' ],
+ [ 'AA', 'Å' ],
+ [ 'Aa', 'Å' ],
+ [ 'ae', 'æ' ],
+ [ 'AE', 'Æ' ],
+ [ 'Ae', 'Æ' ],
+ [ 'oe', 'ø' ],
+ [ 'OE', 'Ø' ],
+ [ 'Oe', 'Ø' ],
+ // The previous as negated transliterations, mostly for names
+ [ 'åa', 'a', 'aa' ],
+ [ 'ÅA', 'A', 'AA' ],
+ [ 'Åa', 'A', 'Aa' ],
+ [ 'åA', 'a', 'aA' ],
+ [ 'æe', 'e', 'ae' ],
+ [ 'ÆE', 'E', 'AE' ],
+ [ 'Æe', 'E', 'Ae' ],
+ [ 'æE', 'e', 'aE' ],
+ [ 'øe', 'e', 'oe' ],
+ [ 'ØE', 'E', 'OE' ],
+ [ 'Øe', 'E', 'Oe' ], // this fails for some names like "Øen"
+ [ 'øE', 'e', 'oE' ]
+ // historically similar forms
+ // "Å" is sometimes written as "Aa", and "å" as "aa", but in names
+ // it is not generally acceptable to use this transliteration. To
+ // handle those situations we need some oposite forms.
+ // There is a similar character "Å" for the length unit Angstrom,
+ // but this is not the upper case letter Å.
+ ]
+ };
+
+ $.ime.register( defs );
+}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/fonipa/ipa-sil.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/fonipa/ipa-sil.js
new file mode 100644
index 00000000..5dde561e
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/fonipa/ipa-sil.js
@@ -0,0 +1,240 @@
+( function ( $ ) {
+ 'use strict';
+
+ var ipaSil = {
+ id: 'ipa-sil',
+ name: 'International Phonetic Alphabet - SIL',
+ description: 'International Phonetic Alphabet - SIL',
+ date: '2012-11-23',
+ URL: 'http://scripts.sil.org/cms/scripts/page.php?site_id=nrsi&id=UniIPAKeyboard',
+ author: 'mapping by Martin Hosken and Lorna A. Priest; implementation by Amir E. Aharoni',
+ license: 'GPLv3',
+ version: '1.0',
+ contextLength: 0,
+ maxKeyLength: 2,
+ patterns: [
+ ['B=', 'ʙ'],
+ ['f=', 'ɸ'],
+ ['b=', 'β'],
+
+ ['m>', 'ɱ'],
+ ['v<', 'ⱱ'],
+ ['v=', 'ʋ'],
+
+ ['t=', 'θ'],
+ ['d=', 'ð'],
+
+ ['r>', 'ɾ'],
+ ['l=', 'ɬ'],
+ ['l>', 'ɮ'],
+ ['r=', 'ɹ'],
+
+ ['s=', 'ʃ'],
+ ['z=', 'ʒ'],
+
+ ['t<', 'ʈ'],
+ ['d<', 'ɖ'],
+ ['n<', 'ɳ'],
+ ['r<', 'ɽ'],
+ ['s<', 'ʂ'],
+ ['z<', 'ʐ'],
+ ['R<', 'ɻ'],
+ ['l<', 'ɭ'],
+
+ ['j=', 'ɟ'],
+ ['n=', 'ɲ'],
+ ['c=', 'ç'],
+ ['j<', 'ʝ'],
+ ['L<', 'ʎ'],
+
+ ['g<', 'ɡ'],
+ ['n>', 'ŋ'],
+ ['g=', 'ɣ'],
+ ['w>', 'ɰ'],
+ ['L=', 'ʟ'],
+
+ ['G=', 'ɢ'],
+ ['N=', 'ɴ'],
+ ['R=', 'ʀ'],
+ ['x=', 'χ'],
+ ['R>', 'ʁ'],
+
+ ['h>', 'ħ'],
+ ['\\?<', 'ʕ'],
+
+ ['\\?=', 'ʔ'],
+ ['h<', 'ɦ'],
+
+ ['p=', 'ʘ'],
+ ['ǃ<', 'ǀ'], // This is not an exclamation mark
+ ['!', 'ǃ'],
+ ['ǃ=', 'ǂ'], // This is not an exclamation mark
+ ['ǃ>', 'ǁ'], // This is not an exclamation mark
+
+ ['b>', 'ɓ'],
+ ['d>', 'ɗ'],
+ ['j>', 'ʄ'],
+ ['g>', 'ɠ'],
+ ['G>', 'ʛ'],
+
+ ['w=', 'ʍ'],
+ ['y<', 'ɥ'],
+ ['h=', 'ɥ'],
+ ['H=', 'ʜ'],
+ ['Q<', 'ʢ'],
+ ['Q=', 'ʡ'],
+ // TODO non-IPA retroflex hooks
+
+ ['c<', 'ɕ'],
+ ['z>', 'ʑ'],
+ ['L>', 'ɺ'],
+ ['H<', 'ɧ'],
+
+ ['i=', 'ɪ'],
+ ['e<', 'ɛ'],
+ ['a<', 'æ'],
+
+ ['y=', 'ʏ'],
+ ['o>', 'ø'],
+ ['E<', 'œ'],
+ ['E>', 'ɶ'],
+
+ ['I=', 'ɨ'],
+ ['E=', 'ɘ'],
+ ['e=', 'ə'],
+ ['e>', 'ɜ'],
+ ['a>', 'ɐ'],
+ ['U=', 'ʉ'],
+ ['O=', 'ɵ'],
+ ['O<', 'ɞ'],
+
+ ['u=', 'ɯ'],
+ ['O>', 'ɤ'],
+ ['u>', 'ʌ'],
+ ['a=', 'ɑ'],
+ ['u', 'u'],
+ ['u<', 'ʊ'],
+ ['o<', 'ɔ'],
+ ['o=', 'ɒ'],
+
+ ['ˈ}', 'ˌ'], // }}
+ ['}', 'ˈ'],
+ ['ː:', 'ˑ'], // ::
+ ['ˑ:', 'ːː'], // ::: // Not IPA sanctioned
+ [':', 'ː'],
+ ['\\*\\*\\*', '\u0306'], // Combining breve
+ ['\\.<', '|'],
+ ['\\.=', '‖'],
+ ['#=', '‿'],
+
+ // Tones
+ ['([˥-˩])4', '$1˥'],
+ ['([˥-˩])3', '$1˦'],
+ ['([˥-˩])2', '$1˧'],
+ ['([˥-˩])1', '$1˨'],
+ ['([˥-˩])0', '$1˩'],
+ ['#4', '˥'],
+ ['#3', '˦'],
+ ['#2', '˧'],
+ ['#1', '˨'],
+ ['#0', '˩'],
+ ['(?:\u0300)3', '\u030C'], // @13 - Combining caron
+ ['(?:\u0301)1', '\u0302'], // @31 - Combining circumflex accent
+ ['(?:\u0304)3', '\u1dc4'], // @23 - Combining macron-acute
+ ['(?:\u0300)2', '\u1dc5'], // @12 - Combining grave-macron
+ ['(?:\u030C)1', '\u1dc8'], // @131 - Combining grave-acute-grave
+ ['(?:\u0304)1', '\u1dc6'], // @21 - Combining macron-grave // Not IPA sanctioned
+ ['(?:\u0301)2', '\u1dc7'], // @32 - Combining acute-macron // Not IPA sanctioned
+ ['(?:\u0302)3', '\u1dc9'], // @313 - Combining acute-grave-acute // Not IPA sanctioned
+ ['(?:\u030a)4', '\u030b'], // Combining double acute accent
+ ['(?:\u030a)3', '\u0301'], // Combining acute accent
+ ['(?:\u030a)2', '\u0304'], // Combining macron
+ ['(?:\u030a)1', '\u0300'], // Combining grave accent
+ ['(?:\u030a)0', '\u030f'], // Combining double grave accent
+
+ // Tone numbers (non-IPA)
+ ['\\^0', '⁰'], // Not IPA sanctioned
+ ['\\^1', '¹'], // Not IPA sanctioned
+ ['\\^2', '²'], // Not IPA sanctioned
+ ['\\^3', '³'], // Not IPA sanctioned
+ ['\\^4', '⁴'], // Not IPA sanctioned
+ ['\\^5', '⁵'], // Not IPA sanctioned
+ ['\\^6', '⁶'], // Not IPA sanctioned
+ ['\\^7', '⁷'], // Not IPA sanctioned
+ ['\\^8', '⁸'], // Not IPA sanctioned
+ ['\\^9', '⁹'], // Not IPA sanctioned
+ // This character is called "Superscript hyphen" in the layout document,
+ // and "Superscript minus" in Unicode
+ ['\\^-', '⁻'], // Not IPA sanctioned
+
+ ['ꜛ>', '↗'], // #>>
+ ['ꜜ<', '↘'], // #<<
+ ['#<', 'ꜜ'],
+ ['#>', 'ꜛ'],
+
+ // Diacritics and suprasegmentals
+ ['h\\^', 'ʰ'],
+ ['w\\^', 'ʷ'],
+ ['j\\^', 'ʲ'],
+ ['ɣ\\^', 'ˠ'], // g=
+ ['ʕ\\^', 'ˤ'], // ?<
+ ['n\\^', 'ⁿ'],
+ ['l\\^', 'ˡ'],
+ // TODO non-IPA superscripts
+
+ ['ʽ\\[', '˞'], // [[[
+ ['\\[\\[', 'ʽ'], // [[ // Not IPA sanctioned
+ ['(?:\u031a)\\]', '‘'], // ]]]] // Not IPA sanctioned
+ ['ʼ\\]', '\u031a'], // ]]] // Combining left angle above
+ ['\\]\\]', 'ʼ'], // ]]
+
+ ['(?:\u032f)\\$', '\u0330'], // $$$ // Combining tilde below
+ ['(?:\u0329)\\$', '\u032f'], // $$ // Combining inverted breve below
+ ['\\$', '\u0329'], // $ // Combining vertical line below
+
+ // TODO non-IPA retroflex hooks
+
+ ['(?:\u032c)%', '\u0324'], // %%% // Combining diaeresis below
+ ['(?:\u0325)%', '\u032c'], // %% // Combining caron below
+ ['%', '\u0325'], // % // Combining ring below
+
+ // TODO non-IPA palatal hooks
+
+ ['@', '\u030a'], // Combining ring above
+
+ ['(?:\u033c)\\{', '\u0323'], // {{{{{ // Combining dot below
+ ['(?:\u033b)\\{', '\u033c'], // {{{{ // Combining seagull below
+ ['(?:\u033a)\\{', '\u033b'], // {{{ // Combining square below
+ ['(?:\u032a)\\{', '\u033a'], // {{ // Combining inverted bridge below
+ ['\\{', '\u032a'], // { // Combining bridge below
+
+ ['(?:\u0303)~', '\u0334'], // ~~ // Combining tilde overlay
+ ['~', '\u0303'], // ~ // Combining tilde
+
+ ['(?:\u0306)\\*', '\u0307'], // **** // Combining dot above
+ ['(?:\u033d)\\*', '\u0306'], // *** // Combining breve
+ ['(?:\u0308)\\*', '\u033d'], // ** // Combining x above
+ ['\\*', '\u0308'], // * // Combining diaeresis
+
+ // TODO Find out what the m with the five asterisks is.
+
+ ['#&', '\u0361'], // Combining double inverted breve
+ ['(?:\u030a)&', '\u035c'], // @& // Combining double breve below
+
+ ['(?:\u0318)\\+', '\u0339'], // ++++ // Combining right half ring below
+ ['(?:\u0319)_', '\u031c'], // ____ // Combining left half ring below
+ ['(?:\u031d)\\+', '\u0318'], // +++ // Combining left tack below
+ ['(?:\u031e)_', '\u0319'], // ___ // Combining right tack below
+ ['(?:\u031f)\\+', '\u031d'], // ++ // Combining up tack below
+ ['(?:\u0320)_', '\u031e'], // __ // Combining down tack below
+ ['\\+', '\u031f'], // + // Combining plus sign below
+ ['_', '\u0320'], // _ // Combining minus sign below
+
+ ['=>', '→'], // Not IPA sanctioned
+ ['s>', 'σ'], // Not IPA sanctioned
+ ['=<', '\u200d'] // Combining Grapheme Joiner
+ ]
+ };
+
+ $.ime.register( ipaSil );
+} ( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/fonipa/ipa-x-sampa.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/fonipa/ipa-x-sampa.js
new file mode 100644
index 00000000..546401a5
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/fonipa/ipa-x-sampa.js
@@ -0,0 +1,189 @@
+( function ( $ ) {
+ 'use strict';
+
+ var ipaSil = {
+ id: 'ipa-x-sampa',
+ name: 'International Phonetic Alphabet - X-SAMPA',
+ description: 'International Phonetic Alphabet - X-SAMPA',
+ date: '2012-11-26',
+ URL: 'http://www.phon.ucl.ac.uk/home/sampa/x-sampa.htm',
+ author: 'mapping by John C. Wells; implementation by Amir E. Aharoni',
+ license: 'GPLv3',
+ version: '1.0',
+ contextLength: 0,
+ maxKeyLength: 4,
+ patterns: [
+ // Tones
+ ['_/', '\u030C'], // Combining caron
+ ['_\\\\', '\u0302'], // Combining circumflex accent
+ ['_ɥ_T', '\u1dc4'], // _H_T - Combining macron-acute
+ ['_β_L', '\u1dc5'], // _B_L - Combining grave-macron
+ ['_ʁ_F', '\u1dc8'], // _R_F - Combining grave-acute-grave
+
+ ['β\\\\', 'ʙ'],
+ ['p\\\\', 'ɸ'],
+ ['B', 'β'],
+
+ ['F', 'ɱ'],
+ // ⱱ is not in X-SAMPA
+ ['P', 'ʋ'],
+ ['v\\\\', 'ʋ'],
+
+ ['T', 'θ'],
+ ['D', 'ð'],
+
+ ['4', 'ɾ'],
+ ['K', 'ɬ'],
+ ['ɬ\\\\', 'ɮ'],
+ ['r\\\\', 'ɹ'],
+
+ ['S', 'ʃ'],
+ ['Z', 'ʒ'],
+
+ ['t`', 'ʈ'],
+ ['d`', 'ɖ'],
+ ['n`', 'ɳ'],
+ ['r`', 'ɽ'],
+ ['s`', 'ʂ'],
+ ['z`', 'ʐ'],
+ ['ɹ`', 'ɻ'],
+ ['l`', 'ɭ'],
+
+ ['ɲ\\\\', 'ɟ'],
+ ['J', 'ɲ'],
+ ['C', 'ç'],
+ ['j\\\\', 'ʝ'],
+ ['L', 'ʎ'],
+
+ ['g', 'ɡ'],
+ ['_N', '\u033c'], // Combining seagull below
+ ['N', 'ŋ'],
+ ['_G', 'ˠ'],
+ ['G', 'ɣ'],
+ ['ɯ\\\\', 'ɰ'],
+ ['ʎ\\\\', 'ʟ'],
+
+ ['ɣ\\\\', 'ɢ'],
+ ['ŋ\\\\', 'ɴ'],
+ ['ʁ\\\\', 'ʀ'],
+ ['_X', '\u0306'], // Combining breve
+ ['X', 'χ'],
+ ['R', 'ʁ'],
+
+ ['χ\\\\', 'ħ'],
+ ['_ʔ\\\\', 'ˤ'],
+ ['ʔ\\\\', 'ʕ'],
+
+ ['\\?', 'ʔ'],
+ ['h\\\\', 'ɦ'],
+
+ ['ɔ\\\\', 'ʘ'],
+ ['ǀ\\|\\\\', 'ǁ'],
+ ['\\|\\\\', 'ǀ'],
+ ['ꜜ\\\\', 'ǃ'], // !\ -> Retroflex (postalveolar) click
+ ['_?=', '\u0329'], // Combining vertical line below
+ ['\u0329\\\\', 'ǂ'],
+
+ ['b_<', 'ɓ'],
+ ['d_<', 'ɗ'],
+ ['ɟ_<', 'ʄ'],
+ ['ɡ_<', 'ɠ'],
+ ['ɢ_<', 'ʛ'],
+
+ ['W', 'ʍ'],
+ ['H', 'ɥ'],
+ ['ɥ\\\\', 'ʜ'],
+ ['<\\\\', 'ʢ'],
+ ['>\\\\', 'ʡ'],
+
+ ['s\\\\', 'ɕ'],
+ ['z\\\\', 'ʑ'],
+ ['l\\\\', 'ɺ'],
+ ['x\\\\', 'ɧ'],
+
+ ['I', 'ɪ'],
+ ['E', 'ɛ'],
+ ['\\{', 'æ'],
+
+ ['Y', 'ʏ'],
+ ['2', 'ø'],
+ ['9', 'œ'],
+ ['&', 'ɶ'],
+
+ ['1', 'ɨ'],
+ ['ə\\\\', 'ɘ'],
+ ['@', 'ə'],
+ ['ɜ\\\\', 'ɞ'],
+ ['3', 'ɜ'],
+ ['6', 'ɐ'],
+ ['_\\}', '\u031a'],
+ ['\\}', 'ʉ'],
+ ['8', 'ɵ'],
+
+ ['M', 'ɯ'],
+ ['7', 'ɤ'],
+ ['V', 'ʌ'],
+ ['_A', '\u0318'], // Combining right tack below
+ ['A', 'ɑ'],
+ ['U', 'ʊ'],
+ ['_O', '\u0339'], // ++++ // Combining right half ring below
+ ['O', 'ɔ'],
+ ['Q', 'ɒ'],
+
+ ['%', 'ˌ'],
+ ['_"', '\u0308'], // Combining diaeresis
+ ['"', 'ˈ'],
+ ['ː\\\\', 'ˑ'],
+ [':', 'ː'],
+ ['\\.<', '|'],
+ ['\\|\\|', '‖'],
+ ['-\\\\', '‿'],
+
+ ['<ʁ>', '↗'], // <R>
+ ['<ɱ>', '↘'], // <F>
+ ['!', 'ꜜ'],
+ ['_\\^', '\u032f'], // Combining inverted breve below
+ ['\\^', 'ꜛ'],
+
+ // Diacritics and suprasegmentals
+ ['_h', 'ʰ'],
+ ['_w', 'ʷ'],
+ ['_j', 'ʲ'],
+ // see above for ˠ
+ // see above for ˤ
+ ['_n', 'ⁿ'],
+ ['_l', 'ˡ'],
+
+ ['`', '˞'],
+ ['_>', 'ʼ'],
+ // See above for No audible release
+ // See above for Syllabic
+ // See above for Non-syllabic
+ ['_k', '\u0330'], // Combining tilde below
+
+ ['([ɱɮɳɖʐɻɽɭɲɟʝjŋɡɣɰ])_0', '$1\u030a'], // Combining ring above
+ ['(.)_0', '$1\u0325'], // Combining ring below
+ ['_v', '\u032c'], // Combining caron below
+ ['_t', '\u0324'], // Combining diaeresis below
+ ['_d', '\u032a'], // Combining bridge below
+ ['_a', '\u033a'], // Combining inverted bridge below
+ ['_m', '\u033b'], // Combining square below
+ // See above for linguolabial
+ ['_?~', '\u0303'], // Combining tilde
+ ['_e', '\u0334'], // Combining tilde overlay
+ // See above for centralised
+ ['_x', '\u033d'], // Combining x above
+ // See above for extra short
+ ['_\\+', '\u031f'], // Combining plus sign below
+ ['_-', '\u0320'], // Combining minus sign below
+ ['_r', '\u031d'], // Combining up tack below
+ ['_o', '\u031e'], // Combining down tack below
+ // See above for advanced tongue root
+ ['_q', '\u0319'], // Combining left tack below
+ // See above for more rounded
+ ['_c', '\u031c']
+ ]
+ };
+
+ $.ime.register( ipaSil );
+} ( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/gom/gom-inscript2.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/gom/gom-inscript2.js
new file mode 100644
index 00000000..49d8aee6
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/gom/gom-inscript2.js
@@ -0,0 +1,119 @@
+( function ( $ ) {
+ 'use strict';
+
+ var gomInScript2 = {
+ id: 'gom-inscript2',
+ name: 'कोंकणी इनस्क्रिप्ट २',
+ description: 'Enhanced InScript keyboard for Kokani language',
+ date: '2012-11-06',
+ author: 'Parag Nemade',
+ license: 'GPLv3',
+ version: '1.0',
+ patterns: [
+ ['\\!', 'ॲ'],
+ ['1', '१'],
+ ['\\@', 'ॅ'],
+ ['2', '२'],
+ ['\\#', '्र'],
+ ['3', '३'],
+ ['\\$', 'र्'],
+ ['4', '४'],
+ ['5', '५'],
+ ['6', '६'],
+ ['7', '७'],
+ ['8', '८'],
+ ['\\(', '('],
+ ['9', '९'],
+ ['\\]', ']'],
+ ['0', '०'],
+ ['\\_', 'ः'],
+ ['\\-', '-'],
+ ['\\+', 'ऋ'],
+ ['\\=', 'ृ'],
+ ['Q', 'औ'],
+ ['q', 'ौ'],
+ ['W', 'ऐ'],
+ ['w', 'ै'],
+ ['E', 'आ'],
+ ['e', 'ा'],
+ ['R', 'ई'],
+ ['r', 'ी'],
+ ['T', 'ऊ'],
+ ['t', 'ू'],
+ ['Y', 'भ'],
+ ['y', 'ब'],
+ ['U', 'ङ'],
+ ['u', 'ह'],
+ ['I', 'घ'],
+ ['i', 'ग'],
+ ['O', 'ध'],
+ ['o', 'द'],
+ ['P', 'झ'],
+ ['p', 'ज'],
+ ['\\{', 'ढ'],
+ ['\\[', 'ड'],
+ ['\\}', 'ञ'],
+ ['\\]', '़'],
+ ['A', 'ओ'],
+ ['a', 'ो'],
+ ['S', 'ए'],
+ ['s', 'े'],
+ ['D', 'अ'],
+ ['d', '्'],
+ ['F', 'इ'],
+ ['f', 'ि'],
+ ['G', 'उ'],
+ ['g', 'ु'],
+ ['H', 'फ'],
+ ['h', 'प'],
+ ['J', 'ऱ'],
+ ['j', 'र'],
+ ['K', 'ख'],
+ ['k', 'क'],
+ ['L', 'थ'],
+ ['l', 'त'],
+ [':', 'छ'],
+ [';', 'च'],
+ ['"', 'ठ'],
+ ['\\\'', 'ट'],
+ ['X', 'ँ'],
+ ['x', 'ं'],
+ ['C', 'ण'],
+ ['c', 'म'],
+ ['v', 'न'],
+ ['b', 'व'],
+ ['N', 'ळ'],
+ ['n', 'ल'],
+ ['M', 'श'],
+ ['m', 'स'],
+ ['\\<', 'ष'],
+ [',', ','],
+ ['\\>', '।'],
+ ['\\.', '.'],
+ ['/', 'य'],
+ ['\\%', 'ज्ञ'],
+ ['\\^', 'त्र'],
+ ['\\&', 'क्ष'],
+ ['\\*', 'श्र']
+ ],
+ patterns_x: [
+ ['1', '\u200d'],
+ ['2', '\u200c'],
+ ['4', '₹'],
+ ['\\+', 'ॠ'],
+ ['\\=', 'ॄ'],
+ ['e', '॑'],
+ ['R', 'ॡ'],
+ ['r', 'ॣ'],
+ ['d', '॒'],
+ ['F', 'ऌ'],
+ ['f', 'ॢ'],
+ ['X', 'ॐ'],
+ [',', '॰'],
+ ['\\>', 'ऽ'],
+ ['\\.', '॥']
+ ]
+ };
+
+ $.ime.register( gomInScript2 );
+}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/gu/gu-inscript.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/gu/gu-inscript.js
new file mode 100644
index 00000000..ac1a8cbc
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/gu/gu-inscript.js
@@ -0,0 +1,113 @@
+( function ( $ ) {
+ 'use strict';
+
+ var guInscript = {
+ id: 'gu-inscript',
+ name: 'ઇનસ્ક્રિપ્ટ',
+ description: 'Inscript keyboard for Gujarati script',
+ date: '2012-10-14',
+ author: 'Junaid P V',
+ license: 'GPLv3',
+ version: '1.0',
+ patterns: [
+ ['X', '\u0A81'],
+ ['x', '\u0A82'],
+ ['_', '\u0A83'],
+ ['D', '\u0A85'],
+ ['E', '\u0A86'],
+ ['F', '\u0A87'],
+ ['R', '\u0A88'],
+ ['G', '\u0A89'],
+ ['T', '\u0A8A'],
+ ['\\+', '\u0A8B'],
+ ['!', '\u0A8D'],
+ ['S', '\u0A8F'],
+ ['W', '\u0A90'],
+ ['\\|', '\u0A91'],
+ ['A', '\u0A93'],
+ ['Q', '\u0A94'],
+ ['k', '\u0A95'],
+ ['K', '\u0A96'],
+ ['i', '\u0A97'],
+ ['I', '\u0A98'],
+ ['U', '\u0A99'],
+ [';', '\u0A9A'],
+ ['\\:', '\u0A9B'],
+ ['p', '\u0A9C'],
+ ['P', '\u0A9D'],
+ ['\\}', '\u0A9E'],
+ ['\'', '\u0A9F'],
+ ['"', '\u0AA0'],
+ ['\\[', '\u0AA1'],
+ ['\\{', '\u0AA2'],
+ ['C', '\u0AA3'],
+ ['l', '\u0AA4'],
+ ['L', '\u0AA5'],
+ ['o', '\u0AA6'],
+ ['O', '\u0AA7'],
+ ['v', '\u0AA8'],
+ ['h', '\u0AAA'],
+ ['H', '\u0AAB'],
+ ['y', '\u0AAC'],
+ ['Y', '\u0AAD'],
+ ['c', '\u0AAE'],
+ ['/', '\u0AAF'],
+ ['j', '\u0AB0'],
+ ['n', '\u0AB2'],
+ ['N', '\u0AB3'],
+ ['b', '\u0AB5'],
+ ['M', '\u0AB6'],
+ ['\\<', '\u0AB7'],
+ ['m', '\u0AB8'],
+ ['u', '\u0AB9'],
+ ['\\}', '\u0ABC'],
+ ['e', '\u0ABE'],
+ ['f', '\u0ABF'],
+ ['r', '\u0AC0'],
+ ['g', '\u0AC1'],
+ ['t', '\u0AC2'],
+ ['\\=', '\u0AC3'],
+ ['\\@', '\u0AC5'],
+ ['s', '\u0AC7'],
+ ['w', '\u0AC8'],
+ ['\\\\', '\u0AC9'],
+ ['a', '\u0ACB'],
+ ['q', '\u0ACC'],
+ ['d', '\u0ACD'],
+ ['\\>', '\u0AE4'],
+ ['0', '\u0AE6'],
+ ['1', '\u0AE7'],
+ ['2', '\u0AE8'],
+ ['3', '\u0AE9'],
+ ['4', '\u0AEA'],
+ ['5', '\u0AEB'],
+ ['6', '\u0AEC'],
+ ['7', '\u0AED'],
+ ['8', '\u0AEE'],
+ ['9', '\u0AEF'],
+ ['\\#', '\u0ACD\u0AB0'],
+ ['\\$', '\u0AB0\u0ACD'],
+ ['\\%', '\u0A9C\u0ACD\u0A9E'],
+ ['\\^', '\u0AA4\u0ACD\u0AB0'],
+ ['\\&', '\u0A95\u0ACD\u0AB7'],
+ ['\\*', '\u0AB6\u0ACD\u0AB0'],
+ ['\\(', '\u200D'],
+ ['\\)', '\u200C'] ],
+
+ patterns_x: [
+ ['F', '\u0A8C'],
+ ['\\>', '\u0ABD'],
+ ['\\=', '\u0AC4'],
+ ['X', '\u0AD0'],
+ ['\\+', '\u0AE0'],
+ ['R', '\u0AE1'],
+ ['f', '\u0AE2'],
+ ['r', '\u0AE3'],
+ ['\\.', '\u0AE5'],
+ ['\\<', '\u0AF1'],
+ ['$', '\u20B9'] ]
+
+ };
+
+ $.ime.register( guInscript );
+}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/gu/gu-inscript2.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/gu/gu-inscript2.js
new file mode 100644
index 00000000..cb60e6c1
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/gu/gu-inscript2.js
@@ -0,0 +1,118 @@
+( function ( $ ) {
+ 'use strict';
+
+ var guInScript2 = {
+ id: 'gu-inscript2',
+ name: 'ઇનસ્ક્રિપ્ટ ૨',
+ description: 'Enhanced InScript keyboard for Gujarati script',
+ date: '2013-11-15',
+ author: 'Parag Nemade',
+ license: 'GPLv3',
+ version: '1.0',
+ patterns: [
+ ['!', 'ઍ'],
+ ['1', '૧'],
+ ['\\@', 'ૅ'],
+ ['2', '૨'],
+ ['\\#', '્ર'],
+ ['3', '૩'],
+ ['\\$', 'ર્'],
+ ['4', '૪'],
+ ['5', '૫'],
+ ['6', '૬'],
+ ['7', '૭'],
+ ['8', '૮'],
+ ['\\(', '('],
+ ['9', '૯'],
+ ['\\)', ')'],
+ ['0', '૦'],
+ ['\\_', 'ઃ'],
+ ['\\-', '-'],
+ ['\\+', 'ઋ'],
+ ['\\=', 'ૃ'],
+ ['Q', 'ઔ'],
+ ['q', 'ૌ'],
+ ['W', 'ઐ'],
+ ['w', 'ૈ'],
+ ['E', 'આ'],
+ ['e', 'ા'],
+ ['R', 'ઈ'],
+ ['r', 'ી'],
+ ['T', 'ઊ'],
+ ['t', 'ૂ'],
+ ['Y', 'ભ'],
+ ['y', 'બ'],
+ ['U', 'ઙ'],
+ ['u', 'હ'],
+ ['I', 'ઘ'],
+ ['i', 'ગ'],
+ ['O', 'ધ'],
+ ['o', 'દ'],
+ ['P', 'ઝ'],
+ ['p', 'જ'],
+ ['\\{', 'ઢ'],
+ ['\\[', 'ડ'],
+ ['\\}', 'ઞ'],
+ ['\\]', '઼'],
+ ['A', 'ઓ'],
+ ['a', 'ો'],
+ ['S', 'એ'],
+ ['s', 'ે'],
+ ['D', 'અ'],
+ ['d', '્'],
+ ['F', 'ઇ'],
+ ['f', 'િ'],
+ ['G', 'ઉ'],
+ ['g', 'ુ'],
+ ['H', 'ફ'],
+ ['h', 'પ'],
+ ['j', 'ર'],
+ ['K', 'ખ'],
+ ['k', 'ક'],
+ ['L', 'થ'],
+ ['l', 'ત'],
+ [':', 'છ'],
+ [';', 'ચ'],
+ ['\"', 'ઠ'],
+ ['\\\'', 'ટ'],
+ ['\\|', 'ઑ'],
+ ['\\', 'ૉ'],
+ ['X', 'ઁ'],
+ ['x', 'ં'],
+ ['C', 'ણ'],
+ ['c', 'મ'],
+ ['v', 'ન'],
+ ['b', 'વ'],
+ ['N', 'ળ'],
+ ['n', 'લ'],
+ ['M', 'શ'],
+ ['m', 'સ'],
+ ['\\<', 'ષ'],
+ [',', ','],
+ ['\\>', '।'],
+ ['\\.', '.'],
+ ['/', 'ય'],
+ ['\\%', 'જ્ઞ'],
+ ['\\^', 'ત્ર'],
+ ['\\&', 'ક્ષ'],
+ ['\\*', 'શ્ર']
+ ],
+ patterns_x: [
+ ['1', '\u200d'],
+ ['2', '\u200c'],
+ ['4', '₹'],
+ ['\\+', 'ૠ'],
+ ['\\=', 'ૄ'],
+ ['R', 'ૡ'],
+ ['r', 'ૣ'],
+ ['F', 'ઌ'],
+ ['f', 'ૢ'],
+ ['X', 'ૐ'],
+ [',', '૱'],
+ ['\\>', '૥'],
+ ['\\.', 'ઽ']
+ ]
+ };
+
+ $.ime.register( guInScript2 );
+}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/gu/gu-phonetic.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/gu/gu-phonetic.js
new file mode 100644
index 00000000..109aeab7
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/gu/gu-phonetic.js
@@ -0,0 +1,110 @@
+( function ( $ ) {
+ 'use strict';
+
+ var guPhonetic = {
+ id: 'gu-phonetic',
+ name: 'ફોનૅટિક',
+ description: 'Phonetic keyboard for Gujarati script',
+ date: '2013-11-15',
+ author: 'Parag Nemade',
+ license: 'GPLv3',
+ version: '1.0',
+ patterns: [
+ ['\\~', 'ઍ'],
+ ['\\`', 'ૅ'],
+ ['\\!', '!'],
+ ['1', '૧'],
+ ['\\@', '@'],
+ ['2', '૨'],
+ ['\\#', '#'],
+ ['3', '૩'],
+ ['\\$', '$'],
+ ['4', '૪'],
+ ['\\&', '૱'],
+ ['5', '૫'],
+ ['6', '૬'],
+ ['7', '૭'],
+ ['8', '૮'],
+ ['\\(', '('],
+ ['9', '૯'],
+ ['\\)', ')'],
+ ['0', '૦'],
+ ['\\_', '_'],
+ ['\\-', '-'],
+ ['\\+', '+'],
+ ['\\=', '='],
+ ['Q', 'ઔ'],
+ ['q', 'ઓ'],
+ ['W', 'ઠ'],
+ ['w', 'ટ'],
+ ['E', 'ૈ'],
+ ['e', 'ે'],
+ ['R', 'ૃ'],
+ ['r', 'ર'],
+ ['T', 'થ'],
+ ['t', 'ત'],
+ ['Y', 'ય઼'],
+ ['y', 'ય'],
+ ['U', 'ૂ'],
+ ['u', 'ુ'],
+ ['I', 'ી'],
+ ['i', 'િ'],
+ ['O', 'ૌ'],
+ ['o', 'ો'],
+ ['P', 'ફ'],
+ ['p', 'પ'],
+ ['\\{', 'ઢ'],
+ ['\\[', 'ડ'],
+ ['\\}', 'ર઼'],
+ ['\\]', 'ઋ'],
+ ['A', 'આ'],
+ ['a', 'ા'],
+ ['S', 'શ'],
+ ['s', 'સ'],
+ ['D', 'ધ'],
+ ['d', 'દ'],
+ ['F', 'અ'],
+ ['f', '્'],
+ ['G', 'ઘ'],
+ ['g', 'ગ'],
+ ['H', 'ઃ'],
+ ['h', 'હ'],
+ ['J', 'ઝ'],
+ ['j', 'જ'],
+ ['K', 'ખ'],
+ ['k', 'ક'],
+ ['L', 'ળ'],
+ ['l', 'લ'],
+ [':', 'ઈ'],
+ [';', 'ઇ'],
+ ['"', 'ઊ'],
+ ['\\\'', 'ઉ'],
+ ['\\|', 'ઑ'],
+ ['\\\\', 'ૉ'],
+ ['Z', 'ઁ'],
+ ['z', 'ઙ'],
+ ['x', 'ષ'],
+ ['C', 'છ'],
+ ['c', 'ચ'],
+ ['V', 'ઽ'],
+ ['v', 'વ'],
+ ['B', 'ભ'],
+ ['b', 'બ'],
+ ['N', 'ણ'],
+ ['n', 'ન'],
+ ['M', 'ં'],
+ ['m', 'મ'],
+ ['\\<', 'ૐ'],
+ [',', ','],
+ ['\\>', '઼'],
+ ['\\.', '.'],
+ ['\\?', 'ઐ'],
+ ['/', 'એ'],
+ ['X', 'ક્ષ'],
+ ['\\%', 'જ્ઞ'],
+ ['\\^', 'ત્ર'],
+ ['\\*', 'શ્ર']]
+ };
+
+ $.ime.register( guPhonetic );
+}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/gu/gu-transliteration.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/gu/gu-transliteration.js
new file mode 100644
index 00000000..3dd489b2
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/gu/gu-transliteration.js
@@ -0,0 +1,156 @@
+( function ( $ ) {
+ 'use strict';
+
+ var guTransliteration = {
+ id: 'gu-transliteration',
+ name: 'લિપ્યાંતરણ',
+ description: 'Gujarati transliteration',
+ date: '2012-10-14',
+ URL: 'http://github.com/wikimedia/jquery.ime',
+ author: 'Jaldeep R Vasavada ([[User:JaldeepVasavada]]) / Amir E. Aharoni ([[User:Amire80]])',
+ license: 'GPLv3',
+ version: '1.0',
+ contextLength: 2,
+ maxKeyLength: 4,
+ patterns: [
+ ['ક્h', 'c', 'ચ'],
+ ['\\\\([A-Za-z\\>_~\\.0-9])', '\\\\', '$1'],
+
+ ['([ક-હ]઼?)્a', '$1'],
+ ['([ક-હ]઼?)્A', '$1ા'],
+ ['([ક-હ]઼?)a', '$1ા'],
+ ['([ક-હ]઼?)્i', '$1િ'],
+ ['([ક-હ]઼?)(્I|િi|ેe)', '$1ી'],
+ ['([ક-હ]઼?)્u', '$1ુ'],
+ ['([ક-હ]઼?)(ુu|્U|ોo)', '$1ૂ'],
+ ['([ક-હ]઼?)્R', '$1ૃ'],
+ ['([ક-હ]઼?)ૃR', '$1ૄ'],
+ ['([ક-હ]઼?)ે\\^', '$1ૅ'],
+ ['([ક-હ]઼?)્e', '$1ે'],
+ ['([ક-હ]઼?)્E', '$1ૅ'],
+ ['([ક-હ]઼?)ો\\^', '$1ૉ'],
+ ['([ક-હ]઼?)i', '$1ૈ'],
+ ['([ક-હ]઼?)્o', '$1ો'],
+ ['([ક-હ]઼?)્O', '$1ૉ'],
+ ['([ક-હ]઼?)u', '$1ૌ'],
+
+ ['([ક-હ]઼?)ૃa', '$1્ર'],
+ ['([ક-હ]઼?)ૃA', '$1્રા'],
+ ['([ક-હ]઼?)ૃi', '$1્રિ'],
+ ['([ક-હ]઼?)ૃI', '$1્રી'],
+ ['([ક-હ]઼?)ૃu', '$1્રુ'],
+ ['([ક-હ]઼?)ૃU', '$1્રૂ'],
+ ['([ક-હ]઼?)ૃ\\^', '$1્રૅ'],
+ ['([ક-હ]઼?)ૃe', '$1્રે'],
+ ['([ક-હ]઼?)ૃE', '$1્રૅ'],
+ ['([ક-હ]઼?)ૃo', '$1્રો'],
+ ['([ક-હ]઼?)ૃO', '$1્રો'],
+ ['([ક-હ]઼?)ૃ\\~', '$1્ર્'],
+
+ ['([ક-હ])્J', '$1઼્'],
+
+ ['અa', 'આ'],
+ ['(ઑo|ઉu)', 'ઊ'],
+ ['ઍ\\^', 'એ'],
+ ['અi', 'ઐ'],
+ ['અ\\^', 'ઍ'],
+ ['(ઇi|ઍe)', 'ઈ'],
+ ['ઑ\\^', 'ઓ'],
+ ['અu', 'ઔ'],
+ ['ઋR', 'ૠ'],
+ ['ળ્l', 'ઌ'],
+ ['ઌl', 'ૡ'],
+ ['ં\\^', 'ઁ'],
+ ['ઑM', 'ૐ'],
+
+ ['રY', 'ર્ય'],
+
+ ['ક્h', 'ખ્'], // kh
+ ['ગ્h', 'ઘ્'], // gh
+ ['ન્g', 'ઙ્'], // ng
+ ['ચ્h', 'છ્'], // chh
+ ['જ્h', 'ઝ્'], // jh
+ ['જ્n', 'જ્ઞ્'], // jn
+ ['ગ્n', 'જ્ઞ્'], //gn
+ ['ન્j', 'ઞ્'], // ny
+ ['ટ્h', 'ઠ્'], // Th
+ ['ડ્h', 'ઢ્'], // Dh
+ ['ત્h', 'થ્'], // th
+ ['દ્h', 'ધ્'], // dh
+ ['પ્h', 'ફ્'], // ph
+ ['બ્h', 'ભ્'], // bh
+
+ ['ઋa', 'ર'],
+ ['ઋA', 'રા'],
+ ['ઋi', 'રિ'],
+ ['ઋI', 'રી'],
+ ['ઋu', 'રુ'],
+ ['ઋU', 'રૂ'],
+ ['ઋ\\^', 'રૅ'],
+ ['ઋe', 'રે'],
+ ['ઋE', 'રૅ'],
+ ['ઋo', 'રો'],
+ ['ઋ\\~', 'ર્'],
+
+ ['સ્h', 'શ્'],
+ ['ક઼્h', 'ખ'],
+
+ ['a', 'અ'],
+ ['b', 'બ્'],
+ ['c', 'ચ્'],
+ ['d', 'દ્'],
+ ['e', 'એ'],
+ ['f', 'ફ્'],
+ ['g', 'ગ્'],
+ ['h', 'હ્'],
+ ['i', 'ઇ'],
+ ['j', 'જ્'],
+ ['k', 'ક્'],
+ ['l', 'લ્'],
+ ['m', 'મ્'],
+ ['n', 'ન્'],
+ ['o', 'ઓ'],
+ ['p', 'પ્'],
+ ['r', 'ર્'],
+ ['s', 'સ્'],
+ ['t', 'ત્'],
+ ['u', 'ઉ'],
+ ['(v|w)', 'વ્'],
+ ['x', 'ક્ષ્'],
+ ['y', 'ય્'],
+ ['(z|Z)', 'ઝ્'],
+ ['A', 'આ'],
+ ['D', 'ડ્'],
+ ['E', 'ઍ'],
+ ['F', 'ફ્'],
+ ['H', 'ઃ'],
+ ['I', 'ઈ'],
+ ['L', 'ળ્'],
+ ['M', 'ં'],
+ ['N', 'ણ્'],
+ ['O', 'ઑ'],
+ ['R', 'ઋ'],
+ ['S', 'ષ્'],
+ ['T', 'ટ્'],
+ ['U', 'ઊ'],
+ ['0', '૦'],
+ ['1', '૧'],
+ ['2', '૨'],
+ ['3', '૩'],
+ ['4', '૪'],
+ ['5', '૫'],
+ ['6', '૬'],
+ ['7', '૭'],
+ ['8', '૮'],
+ ['9', '૯'],
+
+ // Danda characters are only needed in some text, so '.' is not mapped to it.
+ ['।K', '॥'], // Double danda, must be before danda
+ ['K', '।'], // Danda
+ ['//', 'ઽ'],
+ ['J', '઼'], // Nukta
+ ['(\u200C)*`', '\u200C']] // ZWNJ
+ };
+
+ $.ime.register( guTransliteration );
+}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/he/he-standard-2012-extonly.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/he/he-standard-2012-extonly.js
new file mode 100644
index 00000000..b5397826
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/he/he-standard-2012-extonly.js
@@ -0,0 +1,66 @@
+( function ( $ ) {
+ 'use strict';
+
+ var heStandardExtOnly = {
+ id: 'he-standard-2012-extonly',
+ name: 'Hebrew 2012',
+ description: 'Hebrew keyboard according to Israeli Standard 1452',
+ date: '2012-10-15',
+ URL: 'http://www.lingnu.com/he/howto/78-si1452.html',
+ author: 'Amir E. Aharoni (אָמִיר אֱלִישָׁע אַהֲרוֹנִי, [[User:Amire80]])',
+ license: 'GPLv3',
+ version: '1.0',
+ patterns: [], //// Empty, because the assumption is that the user is using a Hebrew keyboard already
+ patterns_x: [
+ ['\u05E9', 'ְ'], // Sheva, ש
+
+ ['\u05E7', 'ָ'], // Qamats, ק
+ ['\u05E8', 'ֳ'], // Hataf qamats, ר
+ ['\u05E4', 'ַ'], // Patah, פ
+ ['\\]', 'ֲ'], // Hataf patah, ]
+
+ ['\u05E6', 'ֵ'], // Tsere, צ
+ ['\u05E1', 'ֶ'], // Segol, ס
+ ['\u05D1', 'ֱ'], // Hataf segol, ב
+
+ ['\u05D7', 'ִ'], // Hiriq, ח
+
+ ['\u05D5', 'ֹ'], // Holam, ו
+
+ ['\\\\', 'ֻ'], // Qubuts, \
+
+ ['\u05D3', 'ּ'], // Dagesh, ד
+
+ ['/', 'ׂ'], // Sin dot
+ ['\'', 'ׁ'], // Shin dot
+
+ ['-', '\u05BE'], // Maqaf
+ ['=', '–'], // Qav mafrid - en dash
+ ['\\[', 'ֿ'], // Rafe
+ ['1', 'ֽ'], // Meteg
+ ['3', '€'], // Euro sign
+ ['4', '₪'], // Sheqel sign
+ ['5', '°'], // Degree
+ ['6', '֫'], // Ole
+ ['8', '×'], // Multiplication
+ ['9', '\u200e'], // LRM
+ ['0', '\u200f'], // RLM
+ ['\\.', '÷'], // Division
+
+ ['\u05D8', 'װ'], // Double vav, ט
+ ['\u05D9', 'ײ'], // Double yod, י
+ ['\u05E2', 'ױ'], // Vav-yod, ע
+
+ // Some source code editors may show the next two lines
+ // in a weird way because of auto-directionality.
+ [';', '׳'], // Geresh, ';'
+ [',', '״'], // Gershayim, ','
+ ['\u05E3', '„'], // Opening double quote, ף
+ ['\u05DA', '”'], // Closing double quote, ך
+ ['\u05E5', '‚'], // Opening single quote, ץ
+ ['\u05EA', '’'] // Closing single quote, ת
+ ]
+ };
+
+ $.ime.register( heStandardExtOnly );
+}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/he/he-standard-2012.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/he/he-standard-2012.js
new file mode 100644
index 00000000..5ee16598
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/he/he-standard-2012.js
@@ -0,0 +1,117 @@
+( function ( $ ) {
+ 'use strict';
+
+ var heStandard = {
+ id: 'he-standard-2012',
+ name: 'Hebrew 2012 (from English)',
+ description: 'Hebrew keyboard according to Israeli Standard 1452',
+ date: '2012-10-15',
+ URL: 'http://www.lingnu.com/he/howto/78-si1452.html',
+ author: 'Amir E. Aharoni (אָמִיר אֱלִישָׁע אַהֲרוֹנִי, [[User:Amire80]])',
+ license: 'GPLv3',
+ version: '1.0',
+ contextLength: 0,
+ maxKeyLength: 0,
+ patterns: [
+ [ 'q', '/' ],
+ [ 'w', '\'' ],
+ [ 'e', 'ק' ],
+ [ 'r', 'ר' ],
+ [ 't', 'א' ],
+ [ 'y', 'ט' ],
+ [ 'u', 'ו' ],
+ [ 'i', 'ן' ],
+ [ 'o', 'ם' ],
+ [ 'p', 'פ' ],
+
+ [ 'a', 'ש' ],
+ [ 's', 'ד' ],
+ [ 'd', 'ג' ],
+ [ 'f', 'כ' ],
+ [ 'g', 'ע' ],
+ [ 'h', 'י' ],
+ [ 'j', 'ח' ],
+ [ 'k', 'ל' ],
+ [ 'l', 'ך' ],
+ [ ';', 'ף' ],
+ [ '\'', ',' ],
+
+ [ 'z', 'ז' ],
+ [ 'x', 'ס' ],
+ [ 'c', 'ב' ],
+ [ 'v', 'ה' ],
+ [ 'b', 'נ' ],
+ [ 'n', 'מ' ],
+ [ 'm', 'צ' ],
+ [ ',', 'ת' ],
+ [ '\\.', 'ץ' ],
+ [ '/', '.' ],
+
+ [ '`', ';' ],
+
+ // These characters are mirrored in RTL languages
+ [ '\\(', ')' ],
+ [ '\\)', '(' ],
+ [ '\\[', ']' ],
+ [ '\\]', '[' ],
+ [ '{', '}' ],
+ [ '}', '{' ],
+ [ '<', '>' ],
+ [ '>', '<' ]
+ ],
+
+ // Your text editor may show the resulting characters in
+ // the next lines as empty. These are diacritics.
+ patterns_x: [
+ [ 'a', 'ְ' ], // Sheva
+
+ [ 'e', 'ָ' ], // Qamats
+ [ 'r', 'ֳ' ], // Hataf qamats
+ [ 'p', 'ַ' ], // Patah
+ [ '\\[', 'ֲ' ], // Hataf patah
+
+ [ 'm', 'ֵ' ], // Tsere
+ [ 'x', 'ֶ' ], // Segol
+ [ 'c', 'ֱ' ], // Hataf segol
+
+ [ 'j', 'ִ' ], // Hiriq
+
+ [ 'u', 'ֹ' ], // Holam
+
+ [ '\\\\', 'ֻ' ], // Qubuts
+
+ [ 's', 'ּ' ], // Dagesh
+
+ [ 'q', 'ׂ' ], // Sin dot
+ [ 'w', 'ׁ' ], // Shin dot
+
+ [ '-', '־' ], // Maqaf
+ [ '=', '–' ], // Qav mafrid - en dash
+ [ '\\]', 'ֿ' ], // Rafe
+ [ '1', 'ֽ' ], // Meteg
+ [ '3', '€' ], // Euro sign
+ [ '4', '₪' ], // Sheqel sign
+ [ '5', '°' ], // Degree
+ [ '6', '֫' ], // Ole
+ [ '8', '×' ], // Multiplication
+ [ '9', '\u200e' ], // LRM
+ [ '0', '\u200f' ], // RLM
+ [ '/', '÷' ], // Division
+
+ [ 'y', 'װ' ], // Double vav
+ [ 'h', 'ײ' ], // Double yod
+ [ 'H', 'ײַ' ], // Yod yod patah
+ [ 'g', 'ױ' ], // Vav-yod
+
+ [ '`', '׳' ], // Geresh
+ [ '\'', '״' ], // Gershayim
+ [ ';', '„' ], // Opening double quote
+ [ 'l', '”' ], // Closing double quote
+ [ '\\.', '‚' ], // Opening single quote
+ [ ',', '’' ] // Closing single quote
+ ]
+ };
+
+ $.ime.register( heStandard );
+
+}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/hi/hi-bolnagri.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/hi/hi-bolnagri.js
new file mode 100644
index 00000000..7ea921a4
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/hi/hi-bolnagri.js
@@ -0,0 +1,108 @@
+( function ( $ ) {
+ 'use strict';
+
+ var hiBolNagri = {
+ id: 'hi-bolnagri',
+ name: 'बोलनागरी',
+ description: 'BolNagri phonetic keymap for Devanagari script',
+ date: '2012-03-28',
+ URL: 'http://www.indlinux.org/wiki/index.php/BolNagri',
+ author: 'G Karunakar',
+ license: 'GPLv3',
+ version: '1.0',
+ contextLength: 0,
+ maxKeyLength: 1,
+ patterns: [
+ [ 'a', 'ा' ],
+ [ 'b', 'ब' ],
+ [ 'c', 'च' ],
+ [ 'd', 'द' ],
+ [ 'e', 'े' ],
+ [ 'f', 'ट' ],
+ [ 'g', 'ग' ],
+ [ 'h', 'ह' ],
+ [ 'i', 'ि' ],
+ [ 'j', 'ज' ],
+ [ 'k', 'क' ],
+ [ 'l', 'ल' ],
+ [ 'm', 'म' ],
+ [ 'n', 'न' ],
+ [ 'o', 'ो' ],
+ [ 'p', 'प' ],
+ [ 'q', '\u200C' ], // ZWNJ
+ [ 'r', 'र' ],
+ [ 's', 'स' ],
+ [ 't', 'त' ],
+ [ 'u', 'ु' ],
+ [ 'v', 'ड' ],
+ [ 'w', 'व' ],
+ [ 'x', '्' ], // Halant
+ [ 'y', 'य' ],
+ [ 'z', 'श' ],
+ [ 'A', 'आ' ],
+ [ 'B', 'भ' ],
+ [ 'C', 'छ' ],
+ [ 'D', 'ध' ],
+ [ 'E', 'ै' ],
+ [ 'F', 'ठ' ],
+ [ 'G', 'घ' ],
+ [ 'H', 'ः' ], // Visarga
+ [ 'I', 'ी' ],
+ [ 'J', 'झ' ],
+ [ 'K', 'ख' ],
+ [ 'L', 'ळ' ],
+ [ 'M', 'ऽ' ],
+ [ 'N', 'ण' ],
+ [ 'O', 'ौ' ],
+ [ 'P', 'फ' ],
+ [ 'Q', '\u200D' ], // ZWJ
+ [ 'R', 'ृ' ],
+ [ 'S', 'ष' ],
+ [ 'T', 'थ' ],
+ [ 'U', 'ू' ],
+ [ 'V', 'ढ' ],
+ [ 'W', 'ॐ' ],
+ [ 'X', 'ॉ' ],
+ [ 'Y', 'ञ' ],
+ [ 'Z', 'ॅ' ],
+ [ '\\$', '₹' ],
+ [ '\\`', 'ं' ],
+ [ '\\~', 'ँ' ],
+ [ '\\\\', '।' ], // Danda
+ [ '\\|', '॥' ],
+ [ '\\.', '़' ],
+ [ '\\<', '॰' ] ],
+
+ patterns_x: [
+ [ 'a', 'अ' ],
+ [ 'A', 'आ' ],
+ [ 'i', 'इ' ],
+ [ 'I', 'ई' ],
+ [ 'u', 'उ' ],
+ [ 'U', 'ऊ' ], // altgr+U triggers file upload!
+ [ 'e', 'ए' ],
+ [ 'E', 'ऐ' ],
+ [ 'o', 'ओ' ],
+ [ 'O', 'औ' ],
+ [ 'r', 'ऱ' ],
+ [ 'R', 'ऋ' ],
+ [ 'Z', 'ऍ' ],
+ [ 'X', 'ऑ' ],
+ [ 'l', 'ॢ' ],
+ [ 'L', 'ऌ' ],
+ // Dev digits
+ [ '0', '०' ],
+ [ '1', '१' ],
+ [ '2', '२' ],
+ [ '3', '३' ],
+ [ '4', '४' ],
+ [ '5', '५' ],
+ [ '6', '६' ],
+ [ '7', '७' ],
+ [ '8', '८' ],
+ [ '9', '९' ] ]
+
+ };
+
+ $.ime.register( hiBolNagri );
+}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/hi/hi-inscript.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/hi/hi-inscript.js
new file mode 100644
index 00000000..9e462769
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/hi/hi-inscript.js
@@ -0,0 +1,122 @@
+( function ( $ ) {
+ 'use strict';
+
+ var hiInScript = {
+ id: 'hi-inscript',
+ name: 'इनस्क्रिप्ट',
+ description: 'InScript keyboard for Devanagari script',
+ date: '2011-02-26',
+ author: 'Junaid P V',
+ license: 'GPLv3',
+ version: '1.0',
+ contextLength: 0,
+ maxKeyLength: 1,
+ patterns: [
+ [ 'X', '\u0901' ],
+ [ 'x', '\u0902' ],
+ [ '_', '\u0903' ],
+ [ 'D', '\u0905' ],
+ [ 'E', '\u0906' ],
+ [ 'F', '\u0907' ],
+ [ 'R', '\u0908' ],
+ [ 'G', '\u0909' ],
+ [ 'T', '\u090A' ],
+ [ '\\+', '\u090B' ],
+ [ '!', '\u090D' ],
+ [ 'S', '\u090F' ],
+ [ 'W', '\u0910' ],
+ [ '\\|', '\u0911' ],
+ [ 'A', '\u0913' ],
+ [ 'Q', '\u0914' ],
+ [ 'k', '\u0915' ],
+ [ 'K', '\u0916' ],
+ [ 'i', '\u0917' ],
+ [ 'I', '\u0918' ],
+ [ 'U', '\u0919' ],
+ [ ';', '\u091A' ],
+ [ '\\:', '\u091B' ],
+ [ 'p', '\u091C' ],
+ [ 'P', '\u091D' ],
+ [ '\\}', '\u091E' ],
+ [ '\'', '\u091F' ],
+ [ '"', '\u0920' ],
+ [ '\\[', '\u0921' ],
+ [ '\\{', '\u0922' ],
+ [ 'C', '\u0923' ],
+ [ 'l', '\u0924' ],
+ [ 'L', '\u0925' ],
+ [ 'o', '\u0926' ],
+ [ 'O', '\u0927' ],
+ [ 'v', '\u0928' ],
+ [ 'h', '\u092A' ],
+ [ 'H', '\u092B' ],
+ [ 'y', '\u092C' ],
+ [ 'Y', '\u092D' ],
+ [ 'c', '\u092E' ],
+ [ '/', '\u092F' ],
+ [ 'j', '\u0930' ],
+ [ 'n', '\u0932' ],
+ [ 'b', '\u0935' ],
+ [ 'M', '\u0936' ],
+ [ '\\<', '\u0937' ],
+ [ 'm', '\u0938' ],
+ [ 'u', '\u0939' ],
+ [ '\\]', '\u093C' ],
+ [ 'e', '\u093E' ],
+ [ 'f', '\u093F' ],
+ [ 'r', '\u0940' ],
+ [ 'g', '\u0941' ],
+ [ 't', '\u0942' ],
+ [ '\\=', '\u0943' ],
+ [ '\\@', '\u0945' ],
+ [ 's', '\u0947' ],
+ [ 'w', '\u0948' ],
+ [ '\\\\', '\u0949' ],
+ [ 'a', '\u094B' ],
+ [ 'q', '\u094C' ],
+ [ 'd', '\u094D' ],
+ [ '\\>', '\u0964' ],
+ [ '0', '\u0966' ],
+ [ '1', '\u0967' ],
+ [ '2', '\u0968' ],
+ [ '3', '\u0969' ],
+ [ '4', '\u096A' ],
+ [ '5', '\u096B' ],
+ [ '6', '\u096C' ],
+ [ '7', '\u096D' ],
+ [ '8', '\u096E' ],
+ [ '9', '\u096F' ],
+ [ '\\#', '\u094D\u0930' ],
+ [ '\\$', '\u0930\u094D' ],
+ [ '\\%', '\u091C\u094D\u091E' ],
+ [ '\\^', '\u0924\u094D\u0930' ],
+ [ '\\&', '\u0915\u094D\u0937' ],
+ [ '\\*', '\u0936\u094D\u0930' ],
+ [ '\\(', '\u200D' ],
+ [ '\\)', '\u200C' ] ],
+
+ patterns_x: [
+ [ 'F', '\u090C' ],
+ [ 'N', '\u0933' ],
+ [ '\\>', '\u093D' ],
+ [ '\\=', '\u0944' ],
+ [ 'X', '\u0950' ],
+ [ 'e', '\u0951' ],
+ [ 'd', '\u0952' ],
+ [ 'k', '\u0958' ],
+ [ 'K', '\u0959' ],
+ [ 'i', '\u095A' ],
+ [ 'p', '\u095B' ],
+ [ '\\[', '\u095C' ],
+ [ '\\+', '\u0960' ],
+ [ 'R', '\u0961' ],
+ [ 'f', '\u0962' ],
+ [ 'r', '\u0963' ],
+ [ '\\.', '\u0965' ],
+ [ ',', '\u0970' ],
+ [ '\\$', '\u20B9' ] ]
+
+ };
+
+ $.ime.register( hiInScript );
+}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/hi/hi-inscript2.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/hi/hi-inscript2.js
new file mode 100644
index 00000000..446dc2a6
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/hi/hi-inscript2.js
@@ -0,0 +1,127 @@
+( function ( $ ) {
+ 'use strict';
+
+ var hiInScript2 = {
+ id: 'hi-inscript2',
+ name: 'इनस्क्रिप्ट २',
+ description: 'Enhanced InScript keyboard for Hindi language',
+ date: '2013-20-13',
+ author: 'Parag Nemade',
+ license: 'GPLv3',
+ version: '1.0',
+ patterns: [
+ ['\\!', 'ऍ'],
+ ['\\@', 'ॅ'],
+ ['1', '१'],
+ ['2', '२'],
+ ['\\#', '्र'],
+ ['3', '३'],
+ ['\\$', 'र्'],
+ ['4', '४'],
+ ['5', '५'],
+ ['6', '६'],
+ ['7', '७'],
+ ['8', '८'],
+ ['\\(', '('],
+ ['9', '९'],
+ ['\\]', ']'],
+ ['0', '०'],
+ ['\\_', 'ः'],
+ ['\\-', '-'],
+ ['\\+', 'ऋ'],
+ ['\\=', 'ृ'],
+ ['Q', 'औ'],
+ ['q', 'ौ'],
+ ['W', 'ऐ'],
+ ['w', 'ै'],
+ ['E', 'आ'],
+ ['e', 'ा'],
+ ['R', 'ई'],
+ ['r', 'ी'],
+ ['T', 'ऊ'],
+ ['t', 'ू'],
+ ['Y', 'भ'],
+ ['y', 'ब'],
+ ['U', 'ङ'],
+ ['u', 'ह'],
+ ['I', 'घ'],
+ ['i', 'ग'],
+ ['O', 'ध'],
+ ['o', 'द'],
+ ['P', 'झ'],
+ ['p', 'ज'],
+ ['\\{', 'ढ'],
+ ['\\[', 'ड'],
+ ['\\}', 'ञ'],
+ ['\\]', '़'],
+ ['A', 'ओ'],
+ ['a', 'ो'],
+ ['S', 'ए'],
+ ['s', 'े'],
+ ['D', 'अ'],
+ ['d', '्'],
+ ['F', 'इ'],
+ ['f', 'ि'],
+ ['G', 'उ'],
+ ['g', 'ु'],
+ ['H', 'फ'],
+ ['h', 'प'],
+ ['j', 'र'],
+ ['K', 'ख'],
+ ['k', 'क'],
+ ['L', 'थ'],
+ ['l', 'त'],
+ [':', 'छ'],
+ [';', 'च'],
+ ['\"', 'ठ'],
+ ['\'', 'ट'],
+ ['\\|', 'ऑ'],
+ ['\\\\', 'ॉ'],
+ ['X', 'ँ'],
+ ['x', 'ं'],
+ ['C', 'ण'],
+ ['c', 'म'],
+ ['v', 'न'],
+ ['b', 'व'],
+ ['n', 'ल'],
+ ['M', 'श'],
+ ['m', 'स'],
+ ['\\<', 'ष'],
+ [',', ','],
+ ['\\>', '।'],
+ ['\\.', '.'],
+ ['/', 'य'],
+ ['\\%', 'ज्ञ'],
+ ['\\^', 'त्र'],
+ ['\\&', 'क्ष'],
+ ['\\*', 'श्र']
+ ],
+ patterns_x: [
+ ['1', '\u200d'],
+ ['2', '\u200c'],
+ ['4', '₹'],
+ ['\\+', 'ॠ'],
+ ['\\=', 'ॄ'],
+ ['e', '॑'],
+ ['i', 'ग़'],
+ ['R', 'ॡ'],
+ ['r', 'ॣ'],
+ ['p', 'ज़'],
+ ['\\{', 'ढ़'],
+ ['\\[', 'ड़'],
+ ['H', 'फ़'],
+ ['K', 'ख़'],
+ ['k', 'क़'],
+ ['d', '॒'],
+ ['F', 'ऌ'],
+ ['f', 'ॢ'],
+ ['X', 'ॐ'],
+ ['N', 'ळ'],
+ [',', '॰'],
+ ['\\>', 'ऽ'],
+ ['\\.', '॥']
+ ]
+ };
+
+ $.ime.register( hiInScript2 );
+}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/hi/hi-phonetic.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/hi/hi-phonetic.js
new file mode 100644
index 00000000..d2ddd5ec
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/hi/hi-phonetic.js
@@ -0,0 +1,111 @@
+( function ( $ ) {
+ 'use strict';
+
+ var hiPhonetic = {
+ id: 'hi-phonetic',
+ name: 'फोनेटिक',
+ description: 'Phonetic keyboard for Hindi language',
+ date: '2013-02-09',
+ author: 'Parag Nemade',
+ license: 'GPLv3',
+ version: '1.0',
+ patterns: [
+ ['्f', '्\u200c'],
+ ['\\~', 'ऎ'],
+ ['\\`','ॆ'],
+ ['\\!', 'ऍ'],
+ ['1', '१'],
+ ['\\@', 'ॅ'],
+ ['2', '२'],
+ ['\\#', 'ऑ'],
+ ['3', '३'],
+ ['\\$','ॉ'],
+ ['4', '४'],
+ ['\\%', 'ञ'],
+ ['5', '५'],
+ ['6', '६'],
+ ['7', '७'],
+ ['8', '८'],
+ ['\\(', '('],
+ ['9', '९'],
+ ['\\)', ')'],
+ ['0', '०'],
+ ['\\_', '_'],
+ ['\\-', '-'],
+ ['\\+', '+'],
+ ['\\=', '='],
+ ['Q', 'औ'],
+ ['q', 'ओ'],
+ ['W', 'ठ'],
+ ['w', 'ट'],
+ ['E', 'ै'],
+ ['e', 'े'],
+ ['R', 'ृ'],
+ ['r', 'र'],
+ ['T', 'थ'],
+ ['t', 'त'],
+ ['Y', 'य़'],
+ ['y', 'य'],
+ ['U', 'ू'],
+ ['u', 'ु'],
+ ['I', 'ी'],
+ ['i', 'ि'],
+ ['O', 'ौ'],
+ ['o', 'ो'],
+ ['P', 'फ'],
+ ['p', 'प'],
+ ['\\{', 'ढ'],
+ ['\\[', 'ड'],
+ ['\\}', 'ऱ'],
+ ['\\]', 'ऋ'],
+ ['A', 'आ'],
+ ['a', 'ा'],
+ ['S', 'श'],
+ ['s', 'स'],
+ ['D', 'ध'],
+ ['d', 'द'],
+ ['F', 'अ'],
+ ['f', '्'],
+ ['G', 'घ'],
+ ['g', 'ग'],
+ ['H', 'ः'],
+ ['h', 'ह'],
+ ['J', 'झ'],
+ ['j', 'ज'],
+ ['K', 'ख'],
+ ['k', 'क'],
+ ['L', 'ळ'],
+ ['l', 'ल'],
+ [':', 'ई'],
+ [';', 'इ'],
+ ['"', 'ऊ'],
+ ['\'', 'उ'],
+ ['\\|', 'ऒ'],
+ ['\\\\', 'ो'],
+ ['Z', 'ँ'],
+ ['z', 'ङ'],
+ ['x', 'ष'],
+ ['C', 'छ'],
+ ['c', 'च'],
+ ['V', 'ऴ'],
+ ['v', 'व'],
+ ['B', 'भ'],
+ ['b', 'ब'],
+ ['N', 'ण'],
+ ['n', 'न'],
+ ['M', 'ं'],
+ ['m', 'म'],
+ ['\\<', 'ऩ'],
+ [',', ','],
+ ['\\>', '़'],
+ ['\\.', '।'],
+ ['\\?', 'ऐ'],
+ ['/', 'ए'],
+ ['\\^', 'ज्ञ'],
+ ['X', 'क्ष'],
+ ['\\*', 'श्र']
+ ]
+ };
+
+ $.ime.register( hiPhonetic );
+}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/hi/hi-transliteration.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/hi/hi-transliteration.js
new file mode 100644
index 00000000..442e650d
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/hi/hi-transliteration.js
@@ -0,0 +1,198 @@
+( function ( $ ) {
+ 'use strict';
+
+ var hiTransliteration = {
+ id: 'hi-transliteration',
+ name: 'लिप्यंतरण',
+ description: 'Transliteration keyboard for Devanagari script',
+ date: '2011-11-20',
+ author: 'Junaid P V',
+ license: 'GPLv3',
+ version: '1.0',
+ contextLength: 1,
+ maxKeyLength: 3,
+ patterns: [
+ [ '\\\\([A-Za-z\\>_~\\.0-9])', '\\\\', '$1' ],
+
+ [ '([क-ह]़?)्a', '$1' ],
+
+ // Bug 35990 - Schwa syncope rule in Devanagari transliteration
+ [ '([क-ह]़?)्\\~', '$1्' ],
+
+ // Translate full stop (.) to danda
+ [ '([क-ह]़?)्\\.', '\\~', '$1्।' ],
+ [ '([क-ह]़?)्\\.', '$1।' ],
+
+ // Translate digits
+ [ '([क-ह]़?)्0', '\\~', '$1्०' ],
+ [ '([क-ह]़?)्1', '\\~', '$1्१' ],
+ [ '([क-ह]़?)्2', '\\~', '$1्२' ],
+ [ '([क-ह]़?)्3', '\\~', '$1्३' ],
+ [ '([क-ह]़?)्4', '\\~', '$1्४' ],
+ [ '([क-ह]़?)्5', '\\~', '$1्५' ],
+ [ '([क-ह]़?)्6', '\\~', '$1्६' ],
+ [ '([क-ह]़?)्7', '\\~', '$1्७' ],
+ [ '([क-ह]़?)्8', '\\~', '$1्८' ],
+ [ '([क-ह]़?)्9', '\\~', '$1्९' ],
+ [ '([क-ह]़?)्\\r', '\\~', '$1्\r' ],
+
+ [ '([क-ह]़?)्0', '$1०' ],
+ [ '([क-ह]़?)्1', '$1१' ],
+ [ '([क-ह]़?)्2', '$1२' ],
+ [ '([क-ह]़?)्3', '$1३' ],
+ [ '([क-ह]़?)्4', '$1४' ],
+ [ '([क-ह]़?)्5', '$1५' ],
+ [ '([क-ह]़?)्6', '$1६' ],
+ [ '([क-ह]़?)्7', '$1७' ],
+ [ '([क-ह]़?)्8', '$1८' ],
+ [ '([क-ह]़?)्9', '$1९' ],
+ [ '([क-ह]़?)्\\r', '$1\r' ],
+
+ [ '([क-ह]़?)्A', '$1ा' ],
+ [ '([क-ह]़?)a', '$1ा' ],
+ [ '([क-ह]़?)्i', '$1ि' ],
+ [ '([क-ह]़?)(्I|िi|ेe)', '$1ी' ],
+ [ '([क-ह]़?)्u', '$1ु' ],
+ [ '([क-ह]़?)(ुu|्U|ोo)', '$1ू' ],
+ [ '([क-ह]़?)्R', '$1ृ' ],
+ [ '([क-ह]़?)ृR', '$1ॄ' ],
+ [ '([क-ह]़?)्ळ्l', '$1ॢ' ],
+ [ '([क-ह]़?)ॢl', '$1ॣ' ],
+ [ '([क-ह]़?)्e', '$1े' ],
+ [ '([क-ह]़?)्E', '$1ॅ' ],
+ [ '([क-ह]़?)i', '$1ै' ],
+ [ '([क-ह]़?)्o', '$1ो' ],
+ [ '([क-ह]़?)्O', '$1ॉ' ],
+ [ '([क-ह]़?)u', '$1ौ' ],
+ [ '([क-ह]़?)ृa', '$1्ऱ' ],
+ [ '([क-ह]़?)ृA', '$1्ऱा' ],
+ [ '([क-ह]़?)ृi', '$1्ऱि' ],
+ [ '([क-ह]़?)ृI', '$1्ऱी' ],
+ [ '([क-ह]़?)ृu', '$1्ऱु' ],
+ [ '([क-ह]़?)ृU', '$1्ऱू' ],
+ [ '([क-ह]़?)ृ\\^', '$1्ऱॅ' ],
+ [ '([क-ह]़?)ृe', '$1्ऱॆ' ],
+ [ '([क-ह]़?)ृE', '$1्ऱे' ],
+ [ '([क-ह]़?)ृo', '$1्ऱॊ' ],
+ [ '([क-ह]़?)ृO', '$1्ऱो' ],
+ [ '([क-ह]़?)ृ\\~', '$1्ऱ्' ],
+ [ '([अ-ह]़)(्?)\\`', '$1$2' ],
+ [ '([क-ह])(ा|ि|ी|ु|ू|े|ै|ॅ|ो|ौ|ॉ|ृ|्)\\`', '$1़$2' ],
+
+ [ 'अa', 'आ' ],
+ [ 'उu', 'ऊ' ],
+ [ 'अi', 'ऐ' ],
+ [ 'अ\\^', 'ॲ' ],
+ [ 'इi', 'ई' ],
+ [ 'अu', 'औ' ],
+ [ 'ऋR', 'ॠ' ],
+ [ 'ळ्l', 'ऌ' ],
+ [ 'ऌl', 'ॡ' ],
+ [ 'ं(m|M|\\^)', 'ँ' ], // Candrabindu
+ [ 'आऊM', 'ॐ' ], // AUM (OM)
+
+ [ 'क्h', 'ख्' ],
+ [ 'ग्h', 'घ्' ],
+ [ 'न्g', 'ङ्' ],
+ [ 'च्h', 'छ्' ],
+ [ 'ज्h', 'झ्' ],
+ [ 'न्j', 'ञ्' ],
+ [ 'ट्h', 'ठ्' ],
+ [ 'ड्h', 'ढ्' ],
+ [ 'त्h', 'थ्' ],
+ [ 'द्h', 'ध्' ],
+ [ 'प्h', 'फ्' ],
+ [ 'ब्h', 'भ्' ],
+ [ 'ऋa', 'ऱ' ],
+ [ 'ऋA', 'ऱा' ],
+ [ 'ऋi', 'ऱि' ],
+ [ 'ऋI', 'ऱी' ],
+ [ 'ऋu', 'ऱु' ],
+ [ 'ऋU', 'ऱू' ],
+ [ 'ऋ\\^', 'ऱॅ' ],
+ [ 'ऋe', 'ऱे' ],
+ [ 'ऋE', 'ऱे' ],
+ [ 'ऋo', 'ऱो' ],
+ [ 'ऋO', 'ऱो' ],
+ [ 'ऋ\\~', 'ऱ्' ],
+
+ [ 'स्h', 'श्' ],
+ [ 'श्h', 'ष्' ],
+ [ 'क़्h', 'ख़्' ],
+ [ 'ज़्h', 'ऴ्' ],
+ [ '।\\.', '॥' ], // Double danda
+ [ '([ग्|ज्]़?)्Y', 'ज्ञ्' ],
+
+ [ 'a', 'अ' ],
+ [ 'b', 'ब्' ],
+ [ 'c', 'च्' ],
+ [ 'd', 'द्' ],
+ [ 'e', 'ए' ],
+ [ 'f', 'फ्' ],
+ [ 'g', 'ग्' ],
+ [ 'h', 'ह्' ],
+ [ 'i', 'इ' ],
+ [ 'j', 'ज्' ],
+ [ 'k', 'क्' ],
+ [ 'l', 'ल्' ],
+ [ 'm', 'म्' ],
+ [ 'n', 'न्' ],
+ [ 'o', 'ओ' ],
+ [ 'p', 'प्' ],
+ [ 'q', 'क़्' ],
+ [ 'r', 'र्' ],
+ [ 's', 'स्' ],
+ [ 't', 'त्' ],
+ [ 'u', 'उ' ],
+ [ '(v|w)', 'व्' ],
+ [ 'x', 'क्ष्' ],
+ [ 'y', 'य्' ],
+ [ 'z', 'ज़्' ],
+ [ 'A', 'आ' ],
+ [ 'B', 'ब्ब्' ],
+ [ 'C', 'क्क्' ],
+ [ 'D', 'ड्' ],
+ [ 'E', 'ऍ' ],
+ [ 'F', 'फ़्' ],
+ [ 'G', 'ग्ग्' ],
+ [ 'H', 'ः' ], // Visarga
+ [ 'I', 'ई' ],
+ [ 'J', 'ज्ज्' ],
+ [ 'K', 'क्क्' ],
+ [ 'L', 'ळ्' ],
+ [ 'M', 'ं' ],
+ [ 'N', 'ण्' ],
+ [ 'O', 'ऑ' ],
+ [ 'P', 'प्प्' ],
+ [ 'R', 'ऋ' ],
+ [ 'S', 'श्' ],
+ [ 'T', 'ट्' ],
+ [ 'U', 'ऊ' ],
+ [ '(V|W)', 'व्व्' ],
+ [ 'X', 'क्ष्' ],
+ [ 'Y', 'ञ्' ],
+ [ 'Z', '.' ],
+ [ '0', '०' ],
+ [ '1', '१' ],
+ [ '2', '२' ],
+ [ '3', '३' ],
+ [ '4', '४' ],
+ [ '5', '५' ],
+ [ '6', '६' ],
+ [ '7', '७' ],
+ [ '8', '८' ],
+ [ '9', '९' ],
+ [ '~', '्' ], // Virama
+ [ '\\.', '।' ], // Danda
+ [ '//', 'ऽ' ],
+ [ '\\`', '़' ], // Nukta
+
+ // The last rules in the Schwa syncope rule section:
+ // If virama not added explicitly, catch all other characters from the US keyboard,
+ // remove virama and send the character itself ($2).
+ [ '([क-ह]़?)्(.)', '\\~', '$1्$2' ],
+ [ '([क-ह]़?)्(.)', '$1$2' ] ]
+ };
+
+ $.ime.register( hiTransliteration );
+}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/hr/hr-kbd.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/hr/hr-kbd.js
new file mode 100644
index 00000000..2c0b8229
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/hr/hr-kbd.js
@@ -0,0 +1,60 @@
+( function ( $ ) {
+ 'use strict';
+
+ var hrKbd = {
+ id: 'hr-kbd',
+ name: 'Croatian kbd',
+ description: 'Croatian keyboard layout',
+ date: '2013-02-11',
+ URL: 'http://github.com/wikimedia/jquery.ime',
+ author: 'Parag Nemade',
+ license: 'GPLv3',
+ version: '1.0',
+ patterns: [
+ ['¸c', 'ç'],
+ ['¸C', 'Ç'],
+ ['¸s', 'ş'],
+ ['¸S', 'Ş'],
+ ['¨a', 'ä'],
+ ['¨A', 'Ä'],
+ ['¨e', 'ë'],
+ ['¨E', 'Ë'],
+ ['¨o', 'ö'],
+ ['¨O', 'Ö'],
+ ['¨u', 'ü'],
+ ['¨U', 'Ü'],
+ ['\\@', '\"'],
+ ['\\^', '&'],
+ ['\\&', '/'],
+ ['\\*', '('],
+ ['\\(', ')'],
+ ['\\)', '='],
+ ['\\-', '\''],
+ ['\\_', '?'],
+ ['\\=', '+'],
+ ['\\+', '*'],
+ ['\\`', '¸'],
+ ['\\~', '¨'],
+ ['y', 'z'],
+ ['Y', 'Z'],
+ ['\\[', 'š'],
+ ['\\{', 'Š'],
+ ['\\]', 'đ'],
+ ['\\}', 'Đ'],
+ [';', 'č'],
+ [':', 'Č'],
+ ['\'', 'ć'],
+ ['\"', 'Ć'],
+ ['\\\\', 'ž'],
+ ['\\|', 'Ž'],
+ ['z', 'y'],
+ ['Z', 'Y'],
+ ['\\<', ';'],
+ ['\\>', ':'],
+ ['/', '-'],
+ ['\\?', '_']
+ ]
+ };
+
+ $.ime.register( hrKbd );
+}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/hy/hy-emslegacy.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/hy/hy-emslegacy.js
new file mode 100644
index 00000000..7886f3b3
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/hy/hy-emslegacy.js
@@ -0,0 +1,169 @@
+/**
+ * Eastern Armenian phonetic layout introduced by Microsoft in Windows 2000 and depreceated
+ * in Windows 8.
+ * Original layout was created in late 90-ies based on Unicode 3, and was never updated
+ * since release, causing it to be incompatible with Unicode.
+ *
+ * This layout version complies with Unicode 6.1, including all valid Armenian punctuation signs,
+ * mijaket (outside of main Armenian Unicode range) and Dram (AMD) sign under USD sign (Shift + 4).
+ * Please, double-check with Unicode before making any changes here.
+ *
+ * Layout supports extended keys, with AltGr (Alt or Alt+Ctrl on some systems) + key,
+ * producing digits and punctuation marks from standard US keyboard layout.
+ */
+
+( function ( $ ) {
+ 'use strict';
+
+ var hyEmslegacy = {
+ id: 'hy-emslegacy',
+ name: 'ՄՍ Արևելահայերեն (հնացած)',
+ description: 'Legacy keyboard layout for Eastern Armenian by Microsoft',
+ date: '2013-02-11',
+ URL: 'http://www.microsoft.com/resources/msdn/goglobal/keyboards/kbdarme.html',
+ author: 'Parag Nemade, Aleksey Chalabyan',
+ license: 'GPLv3',
+ version: '1.1',
+ patterns: [
+ ['1', '։'],
+ ['\\!', '1'],
+ ['2', 'ձ'],
+ ['\\@', 'Ձ'],
+ ['3', 'յ'],
+ ['\\#', 'Յ'],
+ ['4', '՛'],
+ ['\\$', '֏'],
+ ['5', ','],
+ ['\\%', '4'],
+ ['6', '-'],
+ ['\\^', '9'],
+ ['7', '․'],
+ ['\\&', 'և'],
+ ['8', '«'],
+ ['\\*', '('],
+ ['9', '»'],
+ ['\\(', ')'],
+ ['0', 'օ'],
+ ['\\)', 'Օ'],
+ ['\\-', 'ռ'],
+ ['\\_', 'Ռ'],
+ ['\\=', 'ժ'],
+ ['\\+', 'Ժ'],
+ ['\\`', '՝'],
+ ['\\~', '՜'],
+ ['q', 'խ'],
+ ['Q', 'Խ'],
+ ['w', 'ւ'],
+ ['W', 'Ւ'],
+ ['e', 'է'],
+ ['E', 'Է'],
+ ['r', 'ր'],
+ ['R', 'Ր'],
+ ['t', 'տ'],
+ ['T', 'Տ'],
+ ['y', 'ե'],
+ ['Y', 'Ե'],
+ ['u', 'ը'],
+ ['U', 'Ը'],
+ ['i', 'ի'],
+ ['I', 'Ի'],
+ ['o', 'ո'],
+ ['O', 'Ո'],
+ ['p', 'պ'],
+ ['P', 'Պ'],
+ ['\\[', 'չ'],
+ ['\\{', 'Չ'],
+ ['\\]', 'ջ'],
+ ['\\}', 'Ջ'],
+ ['\\\\', '\''],
+ ['\\|', '՞'],
+ ['a', 'ա'],
+ ['A', 'Ա'],
+ ['s', 'ս'],
+ ['S', 'Ս'],
+ ['d', 'դ'],
+ ['D', 'Դ'],
+ ['f', 'ֆ'],
+ ['F', 'Ֆ'],
+ ['g', 'ք'],
+ ['G', 'Ք'],
+ ['h', 'հ'],
+ ['H', 'Հ'],
+ ['j', 'ճ'],
+ ['J', 'Ճ'],
+ ['k', 'կ'],
+ ['K', 'Կ'],
+ ['l', 'լ'],
+ ['L', 'Լ'],
+ [';', 'թ'],
+ [':', 'Թ'],
+ ['\'', 'փ'],
+ ['\"', 'Փ'],
+ ['z', 'զ'],
+ ['Z', 'Զ'],
+ ['x', 'ց'],
+ ['X', 'Ց'],
+ ['c', 'գ'],
+ ['C', 'Գ'],
+ ['v', 'վ'],
+ ['V', 'Վ'],
+ ['b', 'բ'],
+ ['B', 'Բ'],
+ ['n', 'ն'],
+ ['N', 'Ն'],
+ ['m', 'մ'],
+ ['M', 'Մ'],
+ [',', 'շ'],
+ ['\\<', 'Շ'],
+ ['\\.', 'ղ'],
+ ['\\>', 'Ղ'],
+ ['/', 'ծ'],
+ ['\\?', 'Ծ']
+ ],
+ patterns_x: [
+ ['1', '1'],
+ ['\\!', '!'],
+ ['2', '2'],
+ ['\\@', '@'],
+ ['3', '3'],
+ ['\\#', '#'],
+ ['4', '4'],
+ ['\\$', '$'],
+ ['5', '5'],
+ ['\\%', '%'],
+ ['6', '6'],
+ ['\\^', '^'],
+ ['7', '7'],
+ ['\\&', '&'],
+ ['8', '8'],
+ ['\\*', '*'],
+ ['9', '9'],
+ ['\\(', '('],
+ ['0', '0'],
+ ['\\)', ')'],
+ ['\\-', '-'],
+ ['\\_', '_'],
+ ['\\=', '='],
+ ['\\+', '+'],
+ ['\\`', '`'],
+ ['\\~', '~'],
+ ['\\[', '['],
+ ['\\{', '{'],
+ ['\\]', ']'],
+ ['\\}', '}'],
+ ['\\\\', '\\'],
+ ['\\|', '|'],
+ [';', ';'],
+ ['\\:', ':'],
+ ['\'', '\''],
+ ['\"', '\"'],
+ ['\\<', '<'],
+ ['\\.', '.'],
+ ['\\>', '>'],
+ ['/', '/'],
+ ['\\?', '?']
+ ]
+ };
+
+ $.ime.register( hyEmslegacy );
+}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/hy/hy-ephonetic.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/hy/hy-ephonetic.js
new file mode 100644
index 00000000..9580ef7d
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/hy/hy-ephonetic.js
@@ -0,0 +1,173 @@
+/**
+ * This is a phonetic layout for the Armenian language (hy, arm, hye).
+ * The layout comes from DOS times, and was later popularised by KDWin and
+ * WinKeys keyboard "drivers".
+ * While not as efficient and well-thought as the official typewriter layout, it is very popular as
+ * it uses similary sounding Latin letters, which is very handy, as keyboards in Armenia
+ * don't come engraved with Armenian letters.
+ *
+ * This layout complies with Unicode 6.1, including all valid Armenian punctuation signs,
+ * mijaket (outside of main Armenian Unicode range) and Dram (AMD) sign.
+ * Please, double-check with Unicode before making any changes here.
+ *
+ * Layout supports extended keys, with AltGr (Alt or Alt+Ctrl on some systems) + key,
+ * producing digits and punctuation marks from standard US keyboard layout.
+ */
+
+( function ( $ ) {
+ 'use strict';
+
+ var hyEphonetic = {
+ id: 'hy-ephonetic',
+ name: 'Հայերեն Հնչյունային',
+ description: 'Armenian phonetic (Eastern) keyboard layout',
+ date: '2013-07-06',
+ URL: 'http://hy.am',
+ author: 'Aleksey Chalabyan Ալեքսեյ Չալաբյան a.k.a Xelgen',
+ license: 'GPLv3',
+ version: '1.0',
+ contextLength: 0,
+ maxKeyLength: 0,
+ patterns: [
+ ['1', 'է'],
+ ['\\!', 'Է'],
+ ['2', 'թ'],
+ ['\\@', 'Թ'],
+ ['3', 'փ'],
+ ['\\#', 'Փ'],
+ ['4', 'ձ'],
+ ['\\$', 'Ձ'],
+ ['5', 'ջ'],
+ ['\\%', 'Ջ'],
+ ['6', '֏'],
+ ['\\^', '('],
+ ['7', 'և'],
+ ['\\&', ')'],
+ ['8', 'ր'],
+ ['\\*', 'Ր'],
+ ['9', 'չ'],
+ ['\\(', 'Չ'],
+ ['0', 'ճ'],
+ ['\\)', 'Ճ'],
+ ['\\-', '–'],
+ ['\\_', '—'],
+ ['\\=', 'ժ'],
+ ['\\+', 'Ժ'],
+ ['\\`', '՝'],
+ ['\\~', '՜'],
+ ['q', 'ք'],
+ ['Q', 'Ք'],
+ ['w', 'ո'],
+ ['W', 'Ո'],
+ ['e', 'ե'],
+ ['E', 'Ե'],
+ ['r', 'ռ'],
+ ['R', 'Ռ'],
+ ['t', 'տ'],
+ ['T', 'Տ'],
+ ['y', 'ը'],
+ ['Y', 'Ը'],
+ ['u', 'ւ'],
+ ['U', 'Ւ'],
+ ['i', 'ի'],
+ ['I', 'Ի'],
+ ['o', 'օ'],
+ ['O', 'Օ'],
+ ['p', 'պ'],
+ ['P', 'Պ'],
+ ['\\[', 'խ'],
+ ['\\{', 'Խ'],
+ ['\\]', 'ծ'],
+ ['\\}', 'Ծ'],
+ ['\\\\', 'շ'],
+ ['\\|', 'Շ'],
+ ['a', 'ա'],
+ ['A', 'Ա'],
+ ['s', 'ս'],
+ ['S', 'Ս'],
+ ['d', 'դ'],
+ ['D', 'Դ'],
+ ['f', 'ֆ'],
+ ['F', 'Ֆ'],
+ ['g', 'գ'],
+ ['G', 'Գ'],
+ ['h', 'հ'],
+ ['H', 'Հ'],
+ ['j', 'յ'],
+ ['J', 'Յ'],
+ ['k', 'կ'],
+ ['K', 'Կ'],
+ ['l', 'լ'],
+ ['L', 'Լ'],
+ [';', ';'],
+ [':', '։'],
+ ['\'', '՛'],
+ ['\"', '"'],
+ ['z', 'զ'],
+ ['Z', 'Զ'],
+ ['x', 'ղ'],
+ ['X', 'Ղ'],
+ ['c', 'ց'],
+ ['C', 'Ց'],
+ ['v', 'վ'],
+ ['V', 'Վ'],
+ ['b', 'բ'],
+ ['B', 'Բ'],
+ ['n', 'ն'],
+ ['N', 'Ն'],
+ ['m', 'մ'],
+ ['M', 'Մ'],
+ [',', ','],
+ ['\\<', '«'],
+ ['\\.', '․'],
+ ['\\>', '»'],
+ ['/', '…'],
+ ['\\?', '՞']
+ ],
+ patterns_x: [
+ ['1', '1'],
+ ['\\!', '!'],
+ ['2', '2'],
+ ['\\@', '@'],
+ ['3', '3'],
+ ['\\#', '#'],
+ ['4', '4'],
+ ['\\$', '$'],
+ ['5', '5'],
+ ['\\%', '%'],
+ ['6', '6'],
+ ['\\^', '^'],
+ ['7', '7'],
+ ['\\&', '&'],
+ ['8', '8'],
+ ['\\*', '*'],
+ ['9', '9'],
+ ['\\(', '('],
+ ['0', '0'],
+ ['\\)', ')'],
+ ['\\-', '-'],
+ ['\\_', '_'],
+ ['\\=', '='],
+ ['\\+', '+'],
+ ['\\`', '`'],
+ ['\\~', '~'],
+ ['\\[', '['],
+ ['\\{', '{'],
+ ['\\]', ']'],
+ ['\\}', '}'],
+ ['\\\\', '\\'],
+ ['\\|', '|'],
+ [';', ';'],
+ ['\\:', ':'],
+ ['\'', '\''],
+ ['\"', '\"'],
+ ['\\<', '<'],
+ ['\\.', '.'],
+ ['\\>', '>'],
+ ['/', '/'],
+ ['\\?', '?']
+ ]
+ };
+
+ $.ime.register( hyEphonetic );
+}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/hy/hy-ephoneticalt.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/hy/hy-ephoneticalt.js
new file mode 100644
index 00000000..0fb0ea47
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/hy/hy-ephoneticalt.js
@@ -0,0 +1,171 @@
+/**
+ * This is alternative phonetic layout for Armenian language (hy, arm, hye).
+ * Based on Armenian phonetic layout, it improves few things, by placing ր under latin r,
+ * as ր is much more frequent in Armenian. ռ goes under 8, where ր is in standart phonetic.
+ * Another change, which is not yet in xkb, ( as of July 2013), is swapping ֆ and թ: Ֆ is
+ * placed under F, where left index finger is, but is the least used letter in Armenian,
+ * so much more used թ takes it place, comming down from 2.
+ *
+ * This layout complies with Unicode 6.1, including all valid Armenian punctuation signs,
+ * mijaket (outside of main Armenian Unicode range) and Dram (AMD) sign.
+ * Please, double-check with Unicode before making any changes here.
+ *
+ * Layout supports extended keys, with AltGr (Alt or Alt+Ctrl on some systems) + key,
+ * producing digits and punctuation marks from standard US keyboard layout.
+ */
+
+( function ( $ ) {
+ 'use strict';
+
+ var hyEphonetic = {
+ id: 'hy-ephoneticalt',
+ name: 'Հայերեն Հնչյունային (R->Ր, F->Թ)',
+ description: 'Eastern Armenian alternative phonetic keyboard layout',
+ date: '2013-07-08',
+ URL: 'http://github.com/wikimedia/jquery.ime',
+ author: 'Aleksey Chalabyan Ալեքսեյ Չալաբյան a.k.a Xelgen',
+ license: 'GPLv3',
+ version: '1.0',
+ patterns: [
+ ['1', 'է'],
+ ['\\!', 'Է'],
+ ['2', 'ֆ'],
+ ['\\@', 'Ֆ'],
+ ['3', 'փ'],
+ ['\\#', 'Փ'],
+ ['4', 'ձ'],
+ ['\\$', 'Ձ'],
+ ['5', 'ջ'],
+ ['\\%', 'Ջ'],
+ ['6', '֏'],
+ ['\\^', '('],
+ ['7', 'և'],
+ ['\\&', ')'],
+ ['8', 'ռ'],
+ ['\\*', 'Ռ'],
+ ['9', 'չ'],
+ ['\\(', 'Չ'],
+ ['0', 'ճ'],
+ ['\\)', 'Ճ'],
+ ['\\-', '–'],
+ ['\\_', '—'],
+ ['\\=', 'ժ'],
+ ['\\+', 'Ժ'],
+ ['\\`', '՝'],
+ ['\\~', '՜'],
+ ['q', 'ք'],
+ ['Q', 'Ք'],
+ ['w', 'ո'],
+ ['W', 'Ո'],
+ ['e', 'ե'],
+ ['E', 'Ե'],
+ ['r', 'ր'],
+ ['R', 'Ր'],
+ ['t', 'տ'],
+ ['T', 'Տ'],
+ ['y', 'ը'],
+ ['Y', 'Ը'],
+ ['u', 'ւ'],
+ ['U', 'Ւ'],
+ ['i', 'ի'],
+ ['I', 'Ի'],
+ ['o', 'օ'],
+ ['O', 'Օ'],
+ ['p', 'պ'],
+ ['P', 'Պ'],
+ ['\\[', 'խ'],
+ ['\\{', 'Խ'],
+ ['\\]', 'ծ'],
+ ['\\}', 'Ծ'],
+ ['\\\\', 'շ'],
+ ['\\|', 'Շ'],
+ ['a', 'ա'],
+ ['A', 'Ա'],
+ ['s', 'ս'],
+ ['S', 'Ս'],
+ ['d', 'դ'],
+ ['D', 'Դ'],
+ ['f', 'թ'],
+ ['F', 'Թ'],
+ ['g', 'գ'],
+ ['G', 'Գ'],
+ ['h', 'հ'],
+ ['H', 'Հ'],
+ ['j', 'յ'],
+ ['J', 'Յ'],
+ ['k', 'կ'],
+ ['K', 'Կ'],
+ ['l', 'լ'],
+ ['L', 'Լ'],
+ [';', ';'],
+ [':', '։'],
+ ['\'', '՛'],
+ ['\"', '"'],
+ ['z', 'զ'],
+ ['Z', 'Զ'],
+ ['x', 'ղ'],
+ ['X', 'Ղ'],
+ ['c', 'ց'],
+ ['C', 'Ց'],
+ ['v', 'վ'],
+ ['V', 'Վ'],
+ ['b', 'բ'],
+ ['B', 'Բ'],
+ ['n', 'ն'],
+ ['N', 'Ն'],
+ ['m', 'մ'],
+ ['M', 'Մ'],
+ [',', ','],
+ ['\\<', '«'],
+ ['\\.', '․'],
+ ['\\>', '»'],
+ ['/', '…'],
+ ['\\?', '՞']
+ ],
+ patterns_x: [
+ ['1', '1'],
+ ['\\!', '!'],
+ ['2', '2'],
+ ['\\@', '@'],
+ ['3', '3'],
+ ['\\#', '#'],
+ ['4', '4'],
+ ['\\$', '$'],
+ ['5', '5'],
+ ['\\%', '%'],
+ ['6', '6'],
+ ['\\^', '^'],
+ ['7', '7'],
+ ['\\&', '&'],
+ ['8', '8'],
+ ['\\*', '*'],
+ ['9', '9'],
+ ['\\(', '('],
+ ['0', '0'],
+ ['\\)', ')'],
+ ['\\-', '-'],
+ ['\\_', '_'],
+ ['\\=', '='],
+ ['\\+', '+'],
+ ['\\`', '`'],
+ ['\\~', '~'],
+ ['\\[', '['],
+ ['\\{', '{'],
+ ['\\]', ']'],
+ ['\\}', '}'],
+ ['\\\\', '\\'],
+ ['\\|', '|'],
+ [';', ';'],
+ ['\\:', ':'],
+ ['\'', '\''],
+ ['\"', '\"'],
+ ['\\<', '<'],
+ ['\\.', '.'],
+ ['\\>', '>'],
+ ['/', '/'],
+ ['\\?', '?']
+ ]
+ };
+
+ $.ime.register( hyEphonetic );
+}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/hy/hy-typewriter.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/hy/hy-typewriter.js
new file mode 100644
index 00000000..63b18725
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/hy/hy-typewriter.js
@@ -0,0 +1,168 @@
+/**
+ * Armenian typewriter layout
+ * Based on themonly official state standard for Armenian keyboard layout:
+ * http://www.sarm.am/en/standarts/view/5741
+ *
+ * This layout complies with Unicode 6.1, including all valid Armenian punctuation signs,
+ * mijaket (outside of main Armenian Unicode range) and Dram (AMD) sign.
+ * Please, double-check with Unicode before making any changes here.
+ *
+ * Layout supports extended keys, with AltGr (Alt or Alt+Ctrl on some systems) + key,
+ * producing digits and punctuation marks from standard US keyboard layout.
+ */
+
+( function ( $ ) {
+ 'use strict';
+
+ var hyTypewriter = {
+ id: 'hy-typewriter',
+ name: 'Հայերեն Գրամեքենա',
+ description: 'Armenian typewriter keyboard layout',
+ date: '2013-07-08',
+ URL: 'http://www.sarm.am/en/standarts/view/5741',
+ author: 'Aleksey Chalabyan Ալեքսեյ Չալաբյան a.k.a Xelgen',
+ license: 'GPLv3',
+ version: '1.0',
+ patterns: [
+ ['1', 'ֆ'],
+ ['\\!', 'Ֆ'],
+ ['2', 'ձ'],
+ ['\\@', 'Ձ'],
+ ['3', '-'],
+ ['\\#', ''],
+ ['4', ','],
+ ['\\$', '֏'],
+ ['5', '։'],
+ ['\\%', '֊'],
+ ['6', '՞'],
+ ['\\^', '—'],
+ ['7', '․'],
+ ['\\&', 'և'],
+ ['8', '՛'],
+ ['\\*', '՚'],
+ ['9', ')'],
+ ['\\(', '('],
+ ['0', 'օ'],
+ ['\\)', 'Օ'],
+ ['\\-', 'է'],
+ ['\\_', 'Է'],
+ ['\\=', 'ղ'],
+ ['\\+', 'Ղ'],
+ ['\\`', '՝'],
+ ['\\~', '՜'],
+ ['q', 'ճ'],
+ ['Q', 'Ճ'],
+ ['w', 'փ'],
+ ['W', 'Փ'],
+ ['e', 'բ'],
+ ['E', 'Բ'],
+ ['r', 'ս'],
+ ['R', 'Ս'],
+ ['t', 'մ'],
+ ['T', 'Մ'],
+ ['y', 'ո'],
+ ['Y', 'Ո'],
+ ['u', 'ւ'],
+ ['U', 'Ւ'],
+ ['i', 'կ'],
+ ['I', 'Կ'],
+ ['o', 'ը'],
+ ['O', 'Ը'],
+ ['p', 'թ'],
+ ['P', 'Թ'],
+ ['\\[', 'ծ'],
+ ['\\{', 'Ծ'],
+ ['\\]', 'ց'],
+ ['\\}', 'Ց'],
+ ['\\\\', '»'],
+ ['\\|', '«'],
+ ['a', 'ջ'],
+ ['A', 'Ջ'],
+ ['s', 'վ'],
+ ['S', 'Վ'],
+ ['d', 'գ'],
+ ['D', 'Գ'],
+ ['f', 'ե'],
+ ['F', 'Ե'],
+ ['g', 'ա'],
+ ['G', 'Ա'],
+ ['h', 'ն'],
+ ['H', 'Ն'],
+ ['j', 'ի'],
+ ['J', 'Ի'],
+ ['k', 'տ'],
+ ['K', 'Տ'],
+ ['l', 'հ'],
+ ['L', 'Հ'],
+ [';', 'պ'],
+ [':', 'Պ'],
+ ['\'', 'ր'],
+ ['\"', 'Ր'],
+ ['z', 'ժ'],
+ ['Z', 'Ժ'],
+ ['x', 'դ'],
+ ['X', 'Դ'],
+ ['c', 'չ'],
+ ['C', 'Չ'],
+ ['v', 'յ'],
+ ['V', 'Յ'],
+ ['b', 'զ'],
+ ['B', 'Զ'],
+ ['n', 'լ'],
+ ['N', 'Լ'],
+ ['m', 'ք'],
+ ['M', 'Ք'],
+ [',', 'խ'],
+ ['\\<', 'Խ'],
+ ['\\.', 'շ'],
+ ['\\>', 'Շ'],
+ ['/', 'ռ'],
+ ['\\?', 'Ռ']
+ ],
+ patterns_x: [
+ ['1', '1'],
+ ['\\!', '!'],
+ ['2', '2'],
+ ['\\@', '@'],
+ ['3', '3'],
+ ['\\#', '#'],
+ ['4', '4'],
+ ['\\$', '$'],
+ ['5', '5'],
+ ['\\%', '%'],
+ ['6', '6'],
+ ['\\^', '^'],
+ ['7', '7'],
+ ['\\&', '&'],
+ ['8', '8'],
+ ['\\*', '*'],
+ ['9', '9'],
+ ['\\(', '('],
+ ['0', '0'],
+ ['\\)', ')'],
+ ['\\-', '-'],
+ ['\\_', '_'],
+ ['\\=', '='],
+ ['\\+', '+'],
+ ['\\`', '`'],
+ ['\\~', '~'],
+ ['\\[', '['],
+ ['\\{', '{'],
+ ['\\]', ']'],
+ ['\\}', '}'],
+ ['\\\\', '\\'],
+ ['\\|', '|'],
+ [';', ';'],
+ ['\\:', ':'],
+ ['\'', '\''],
+ ['\"', '\"'],
+ ['\\<', '<'],
+ ['\\.', '.'],
+ ['\\>', '>'],
+ ['/', '/'],
+ ['\\?', '?']
+ ]
+ };
+
+ $.ime.register( hyTypewriter );
+}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/hy/hy-wmslegacy.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/hy/hy-wmslegacy.js
new file mode 100644
index 00000000..bec1c09b
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/hy/hy-wmslegacy.js
@@ -0,0 +1,169 @@
+/**
+ * Western Armenian phonetic layout introduced by Microsoft in Windows 2000 and depreceated
+ * in Windows 8.
+ * Original layout was created in late 90-ies based on Unicode 3, and was never updated
+ * since release, causing it to be incompatible with Unicode.
+ *
+ * This layout version complies with Unicode 6.1, including all valid Armenian punctuation signs,
+ * mijaket (outside of main Armenian Unicode range) and Dram (AMD) sign under USD sign (Shift + 4).
+ * Please, double-check with Unicode before making any changes here.
+ *
+ * Layout supports extended keys, with AltGr (Alt or Alt+Ctrl on some systems) + key,
+ * producing digits and punctuation marks from standard US keyboard layout.
+ */
+
+( function ( $ ) {
+ 'use strict';
+
+ var hyWmslegacy = {
+ id: 'hy-wmslegacy',
+ name: 'ՄՍ Արևմտահայերեն (հնացած)',
+ description: 'Legacy keyboard layout for Western Armenian by Microsoft',
+ date: '2013-07-08',
+ URL: 'http://www.microsoft.com/resources/msdn/goglobal/keyboards/kbdarmw.html',
+ author: 'Aleksey Chalabyan Ալեքսեյ Չալաբյան a.k.a Xelgen',
+ license: 'GPLv3',
+ version: '1.0',
+ patterns: [
+ ['1', '։'],
+ ['\\!', '1'],
+ ['2', 'ձ'],
+ ['\\@', 'Ձ'],
+ ['3', 'յ'],
+ ['\\#', 'Յ'],
+ ['4', '՛'],
+ ['\\$', '֏'],
+ ['5', ','],
+ ['\\%', '4'],
+ ['6', '-'],
+ ['\\^', '9'],
+ ['7', '․'],
+ ['\\&', 'և'],
+ ['8', '«'],
+ ['\\*', '('],
+ ['9', '»'],
+ ['\\(', ')'],
+ ['0', 'օ'],
+ ['\\)', 'Օ'],
+ ['\\-', 'ռ'],
+ ['\\_', 'Ռ'],
+ ['\\=', 'ժ'],
+ ['\\+', 'Ժ'],
+ ['\\`', '՝'],
+ ['\\~', '՜'],
+ ['q', 'խ'],
+ ['Q', 'Խ'],
+ ['w', 'վ'],
+ ['W', 'Վ'],
+ ['e', 'է'],
+ ['E', 'Է'],
+ ['r', 'ր'],
+ ['R', 'Ր'],
+ ['t', 'դ'],
+ ['T', 'Դ'],
+ ['y', 'ե'],
+ ['Y', 'Ե'],
+ ['u', 'ը'],
+ ['U', 'Ը'],
+ ['i', 'ի'],
+ ['I', 'Ի'],
+ ['o', 'ո'],
+ ['O', 'Ո'],
+ ['p', 'բ'],
+ ['P', 'Բ'],
+ ['\\[', 'չ'],
+ ['\\{', 'Չ'],
+ ['\\]', 'ջ'],
+ ['\\}', 'Ջ'],
+ ['\\\\', '\''],
+ ['\\|', '՞'],
+ ['a', 'ա'],
+ ['A', 'Ա'],
+ ['s', 'ս'],
+ ['S', 'Ս'],
+ ['d', 'տ'],
+ ['D', 'Տ'],
+ ['f', 'ֆ'],
+ ['F', 'Ֆ'],
+ ['g', 'կ'],
+ ['G', 'Կ'],
+ ['h', 'հ'],
+ ['H', 'Հ'],
+ ['j', 'ճ'],
+ ['J', 'Ճ'],
+ ['k', 'ք'],
+ ['K', 'Ք'],
+ ['l', 'լ'],
+ ['L', 'Լ'],
+ [';', 'թ'],
+ [':', 'Թ'],
+ ['\'', 'փ'],
+ ['\"', 'Փ'],
+ ['z', 'զ'],
+ ['Z', 'Զ'],
+ ['x', 'ց'],
+ ['X', 'Ց'],
+ ['c', 'գ'],
+ ['C', 'Գ'],
+ ['v', 'ւ'],
+ ['V', 'Ւ'],
+ ['b', 'պ'],
+ ['B', 'Պ'],
+ ['n', 'ն'],
+ ['N', 'Ն'],
+ ['m', 'մ'],
+ ['M', 'Մ'],
+ [',', 'շ'],
+ ['\\<', 'Շ'],
+ ['\\.', 'ղ'],
+ ['\\>', 'Ղ'],
+ ['/', 'ծ'],
+ ['\\?', 'Ծ']
+ ],
+ patterns_x: [
+ ['1', '1'],
+ ['\\!', '!'],
+ ['2', '2'],
+ ['\\@', '@'],
+ ['3', '3'],
+ ['\\#', '#'],
+ ['4', '4'],
+ ['\\$', '$'],
+ ['5', '5'],
+ ['\\%', '%'],
+ ['6', '6'],
+ ['\\^', '^'],
+ ['7', '7'],
+ ['\\&', '&'],
+ ['8', '8'],
+ ['\\*', '*'],
+ ['9', '9'],
+ ['\\(', '('],
+ ['0', '0'],
+ ['\\)', ')'],
+ ['\\-', '-'],
+ ['\\_', '_'],
+ ['\\=', '='],
+ ['\\+', '+'],
+ ['\\`', '`'],
+ ['\\~', '~'],
+ ['\\[', '['],
+ ['\\{', '{'],
+ ['\\]', ']'],
+ ['\\}', '}'],
+ ['\\\\', '\\'],
+ ['\\|', '|'],
+ [';', ';'],
+ ['\\:', ':'],
+ ['\'', '\''],
+ ['\"', '\"'],
+ ['\\<', '<'],
+ ['\\.', '.'],
+ ['\\>', '>'],
+ ['/', '/'],
+ ['\\?', '?']
+ ]
+ };
+
+ $.ime.register( hyWmslegacy );
+}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/is/is-normforms.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/is/is-normforms.js
new file mode 100644
index 00000000..a37c99b0
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/is/is-normforms.js
@@ -0,0 +1,78 @@
+( function ( $ ) {
+ 'use strict';
+
+ var defs = {
+ id: 'is-normforms',
+ name: 'Íslenska',
+ description: 'Islandic input method with most common form transliterated',
+ date: '2012-12-04',
+ URL: 'http://www.evertype.com/alphabets/icelandic.pdf',
+ author: 'John Erling Blad',
+ license: 'GPLv3',
+ version: '1.0',
+ contextLength: 1,
+ maxKeyLength: 3,
+ patterns: [
+ // Uses "'" as an accent
+ [ '\'a', 'á' ],
+ [ '\'A', 'Á' ],
+ [ '\'i', 'í' ],
+ [ '\'I', 'Í' ],
+ [ '\'e', 'é' ],
+ [ '\'E', 'É' ],
+ [ '\'o', 'ó' ],
+ [ '\'O', 'Ó' ],
+ [ '\'u', 'ú' ],
+ [ '\'U', 'Ú' ],
+ [ '\'y', 'ý' ],
+ [ '\'Y', 'Ý' ],
+ // Uses "~" as "approximatly similar to"
+ [ '~a', 'ä' ],
+ [ '~A', 'Ä' ],
+ [ '~e', 'ë' ],
+ [ '~E', 'Ë' ],
+ [ '~d', 'ð' ],
+ [ '~D', 'Ð' ],
+ [ '~o', 'ø' ],
+ [ '~O', 'Ø' ],
+ // The most common transliterations (also the Danish letters)
+ [ 'th', 'þ' ],
+ [ 'TH', 'Þ' ],
+ [ 'Th', 'Þ' ],
+ [ 'aa', 'å' ],
+ [ 'AA', 'Å' ],
+ [ 'Aa', 'Å' ],
+ [ 'ae', 'æ' ],
+ [ 'AE', 'Æ' ],
+ [ 'Ae', 'Æ' ],
+ [ 'oe', 'ö' ],
+ [ 'OE', 'Ö' ],
+ [ 'Oe', 'Ö' ],
+ // The previous as negated transliterations, mostly for names
+ [ 'þh', 'h', 'th' ],
+ [ 'ÞA', 'H', 'TH' ],
+ [ 'Þh', 'H', 'Th' ],
+ [ 'þA', 'h', 'tH' ],
+ [ 'åa', 'a', 'aa' ],
+ [ 'ÅA', 'A', 'AA' ],
+ [ 'Åa', 'A', 'Aa' ],
+ [ 'åA', 'a', 'aA' ],
+ [ 'æe', 'e', 'ae' ],
+ [ 'ÆE', 'E', 'AE' ],
+ [ 'Æe', 'E', 'Ae' ],
+ [ 'æE', 'e', 'aE' ],
+ [ 'öe', 'e', 'oe' ],
+ [ 'ÖE', 'E', 'OE' ],
+ [ 'Öe', 'E', 'Oe' ],
+ [ 'öE', 'e', 'oE' ]
+ // historically similar forms
+ // "Å" is sometimes written as "Aa", and "å" as "aa", but in names
+ // it is not generally acceptable to use this transliteration. To
+ // handle those situations we need some oposite forms.
+ // There is a similar character "Å" for the length unit Angstrom,
+ // but this is not the upper case letter Å.
+ ]
+ };
+
+ $.ime.register( defs );
+}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/jv/jv-transliteration.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/jv/jv-transliteration.js
new file mode 100644
index 00000000..6b02062c
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/jv/jv-transliteration.js
@@ -0,0 +1,273 @@
+( function ( $ ) {
+ 'use strict';
+
+ var jvTransliteration = {
+ id: 'jv-transliteration',
+ name: 'Javanese',
+ description: 'Javanese transliteration',
+ date: '2013-08-10',
+ URL: 'http://github.com/wikimedia/jquery.ime',
+ author: 'Bennylin',
+ license: 'GPLv3',
+ version: '1.1',
+ contextLength: 1,
+ maxKeyLength: 2,
+ patterns: [
+ [ '\\\\([A-Za-z\\>_~\\.0-9])', '\\\\', '$1' ],
+ ['ꦝ꧀q', '','ꦞ꧀'], // Dha murda
+ ['ꦚ꧀q', '','ꦘ꧀'], // Nya murda
+ ['ꦧ꧀q', '','ꦨ꧀'], // Ba murda
+ ['ꦕ꧀q', '','ꦖ꧀'], // Ca murda(?)
+ ['ꦒ꧀q', '','ꦓ꧀'], // Ga murda
+ ['ꦗ꧀q', '','ꦙ꧀'], // Ja Mahaprana
+ ['ꦏ꧀q', '','ꦑ꧀'], // Ka murda
+ ['ꦤ꧀q', '','ꦟ꧀'], // Na murda
+ ['ꦥ꧀q', '','ꦦ꧀'], // Pa murda
+ ['ꦱ꧀q', '','ꦯ꧀'], // Sa murda
+ ['ꦠ꧀q', '','ꦡ꧀'], // Ta murda
+
+ // VII. Vocal ended with special pasangan followed by vocal = back to normal
+ ['ꦃa', '','ꦲ'], // vocal ended with -h followed by a
+ ['ꦃe', '','ꦲꦺ'], // vocal ended with -h followed by e
+ ['ꦃi', '','ꦲꦶ'], // vocal ended with -h followed by i
+ ['ꦃo', '','ꦲꦺꦴ'], // vocal ended with -h followed by o
+ ['ꦃu', '','ꦲꦸ'], // vocal ended with -h followed by u
+
+ ['ꦂa', '','ꦫ'], // vocal ended with -r followed by a
+ ['ꦂe', '','ꦫꦺ'], // vocal ended with -r followed by e
+ ['ꦂi', '','ꦫꦶ'], // vocal ended with -r followed by i
+ ['ꦂo', '','ꦫꦺꦴ'], // vocal ended with -r followed by o
+ ['ꦂu', '','ꦫꦸ'], // vocal ended with -r followed by u
+ ['ꦂy', '','ꦫꦾ'], // vocal ended with -r followed by y (Special)
+
+ ['ꦁa', '','ꦔ'], // vocal ended with -ng followed by a
+ ['ꦁe', '','ꦔꦺ'], // vocal ended with -ng followed by e
+ ['ꦁi', '','ꦔꦶ'], // vocal ended with -ng followed by i
+ ['ꦁo', '','ꦔꦺꦴ'], // vocal ended with -ng followed by o
+ ['ꦁu', '','ꦔꦸ'], // vocal ended with -ng followed by u
+
+ // VI. Vocal (lowercase, uppercase, extended) ended with h/r/ng = special pasangan (-h, -r, -ng)
+ ['꧀​h', '','꧀ꦲ꧀'],
+ // vocal a ended with h/r/ng
+ ['(ꦲ|ꦤ|ꦕ|ꦫ|ꦏ|ꦢ|ꦠ|ꦱ|ꦮ|ꦭ|ꦥ|ꦝ|ꦗ|ꦪ|ꦚ|ꦩ|ꦒ|ꦧ|ꦛ|ꦔ|ꦘ|ꦿ|ꦾ|ꦨ|ꦖ|ꦓ|ꦑ|ꦟ|ꦦ|ꦯ|ꦡ|꦳)(h|H)', '','$1ꦃ'], // hanacaraka + h = -h
+ ['(ꦲ|ꦤ|ꦕ|ꦫ|ꦏ|ꦢ|ꦠ|ꦱ|ꦮ|ꦭ|ꦥ|ꦝ|ꦗ|ꦪ|ꦚ|ꦩ|ꦒ|ꦧ|ꦛ|ꦔ|ꦘ|ꦿ|ꦾ|ꦨ|ꦖ|ꦓ|ꦑ|ꦟ|ꦦ|ꦯ|ꦡ|꦳)(r|R)', '','$1ꦂ'], // hanacaraka + r = -r
+ ['(ꦲ|ꦤ|ꦕ|ꦫ|ꦏ|ꦢ|ꦠ|ꦱ|ꦮ|ꦭ|ꦥ|ꦝ|ꦗ|ꦪ|ꦚ|ꦩ|ꦒ|ꦧ|ꦛ|ꦔ|ꦘ|ꦿ|ꦾ|ꦨ|ꦖ|ꦓ|ꦑ|ꦟ|ꦦ|ꦯ|ꦡ|꦳)(ꦤ|ꦟ)꧀(g|G)', '','$1ꦁ'], // hanacaraka + ng = -ng
+ // other vocals ended with h/r/ng
+ ['(ꦴ|ꦻ|ꦍ|ꦺ|ꦼ|ꦶ|ꦷ|ꦸ|ꦹ|ꦄ|ꦌ|ꦆ|ꦎ|ꦈ)(h|H)', '','$1ꦃ'], // other vocal ended with -h
+ ['(ꦴ|ꦻ|ꦍ|ꦺ|ꦼ|ꦶ|ꦷ|ꦸ|ꦹ|ꦄ|ꦌ|ꦆ|ꦎ|ꦈ)(r|R)', '','$1ꦂ'], // other vocal ended with -r
+ ['(ꦴ|ꦻ|ꦍ|ꦺ|ꦼ|ꦶ|ꦷ|ꦸ|ꦹ|ꦄ|ꦌ|ꦆ|ꦎ|ꦈ)(ꦤ|ꦟ)꧀(g|G)', '','$1ꦁ'], // other vocal ended with -ng
+
+ // V. Lower case consonant followed by lower case consonant: Basic
+ // Note: not all of these combination are valid in Javanese language, for example -hn-,
+ // so they are here only for logical reason, practically they should never be used.
+ // Obvious removal are noted (such as -yy-). th, dh, ny, ng, c, h, r, w, y are special cases:
+
+ // pasangan 'ha'(ꦲ/ꦃ) is considered final, exception: about 60 words can be found of "ha" followed by consonant y/r/l/w
+ // pasangan 'ra'(ꦫ/ꦂ) is considered final, exception: 5 words can be found of "ra" followed by consonant y/w
+ // pasangan bigraf nga(ꦔ/ꦁ) is considered final, exception: "nga" can only be found followed by consonant y/r/l/w
+ // (some problem may occur - see http://jv.wikipedia.org/wiki/Dhiskusi_Panganggo:Bennylin/Narayam#Ng)
+ // pasangan bigraf nya can only be found followed by consonant r/l/w, and
+ // although not found in Latin, it also found in Javanese script representation of nasal sounds ñ (see nyc and nyj)
+ // pasangan bigraf dha can only be found followed by consonant y/r/ w
+ // pasangan bigraf tha can only be found followed by consonant r
+ // the letter 'w' can only be found followed by consonant y/r/l/w (nasal for 'u')
+ // the letter 'c' can only be found followed by consonant r/l, and ch
+ // the letter 'y' can only be found followed by consonant w (nasal for 'i')
+
+ ['꧀a', '',''], // default vowel is a, so, remove the pangkon
+ ['꧀A', '','ꦄ'], // A
+ ['(ꦤ|ꦏ|ꦢ|ꦠ|ꦱ|ꦭ|ꦥ|ꦗ|ꦩ|ꦒ|ꦧ|ꦘ|ꦨ|ꦖ|ꦓ|ꦑ|ꦟ|ꦦ|ꦯ|ꦡ)꧀b', '','$1꧀ꦧ꧀'],
+ ['(ꦤ|ꦏ|ꦢ|ꦠ|ꦱ|ꦭ|ꦥ|ꦗ|ꦩ|ꦒ|ꦧ|ꦘ|ꦨ|ꦖ|ꦓ|ꦑ|ꦟ|ꦦ|ꦯ|ꦡ)꧀B', '','$1꧀ꦨ꧀'], // pasangan Ba murda
+ ['ꦤ꧀​(c|C)', '','ꦚ꧀ꦕ꧀'], // n+zero-width-space+c
+ ['ꦤ꧀(c|C)', '','ꦚ꧀ꦕ꧀'], // n followed by c became nasalized (nasal sound 'ny' + c)(REF:nyc)
+ ['(ꦕ|ꦏ|ꦢ|ꦠ|ꦱ|ꦭ|ꦥ|ꦗ|ꦩ|ꦒ|ꦧ|ꦘ|ꦨ|ꦖ|ꦓ|ꦑ|ꦟ|ꦦ|ꦯ|ꦡ)꧀c', '','$1꧀ꦕ꧀'],
+ ['(ꦕ|ꦏ|ꦢ|ꦠ|ꦱ|ꦭ|ꦥ|ꦗ|ꦩ|ꦒ|ꦧ|ꦘ|ꦨ|ꦖ|ꦓ|ꦑ|ꦟ|ꦦ|ꦯ|ꦡ)꧀C', '','$1꧀ꦖ꧀'], // pasangan Ca murda(?)
+ ['(ꦤ|ꦏ|ꦢ|ꦠ|ꦱ|ꦭ|ꦥ|ꦗ|ꦩ|ꦒ|ꦧ|ꦘ|ꦨ|ꦖ|ꦓ|ꦑ|ꦟ|ꦦ|ꦯ|ꦡ)꧀d', '','$1꧀ꦢ꧀'],
+ ['(ꦤ|ꦏ|ꦢ|ꦠ|ꦱ|ꦭ|ꦥ|ꦗ|ꦩ|ꦒ|ꦧ|ꦘ|ꦨ|ꦖ|ꦓ|ꦑ|ꦟ|ꦦ|ꦯ|ꦡ)꧀D', '','$1꧀ꦣ꧀'],
+ ['꧀e', '','ꦺ'], // é|è
+ ['꧀E', '','ꦌ'], // É|È
+ ['(ꦤ|ꦏ|ꦢ|ꦠ|ꦱ|ꦭ|ꦥ|ꦗ|ꦩ|ꦒ|ꦧ|ꦘ|ꦨ|ꦖ|ꦓ|ꦑ|ꦟ|ꦦ|ꦯ|ꦡ)꧀(f|v|F|V)', '','$1꧀ꦥ꦳꧀'],
+ ['(ꦕ|ꦏ|ꦢ|ꦠ|ꦱ|ꦭ|ꦥ|ꦗ|ꦩ|ꦒ|ꦧ|ꦘ|ꦨ|ꦖ|ꦓ|ꦑ|ꦟ|ꦦ|ꦯ|ꦡ)꧀g', '','$1꧀ꦒ꧀'], // can't be started with n, reserved for bigraf ng
+ ['(ꦕ|ꦏ|ꦢ|ꦠ|ꦱ|ꦭ|ꦥ|ꦗ|ꦩ|ꦒ|ꦧ|ꦘ|ꦨ|ꦖ|ꦓ|ꦑ|ꦟ|ꦦ|ꦯ|ꦡ)꧀G', '','$1꧀ꦓ꧀'], // pasangan Ga murda (can't be started with n - see II. 2.)
+ ['(ꦤ|ꦱ|ꦭ|ꦥ|ꦗ|ꦩ|ꦧ|ꦘ|ꦨ|ꦖ|ꦓ|ꦑ|ꦟ|ꦦ|ꦯ|ꦡ)꧀(h|H)', '','$1꧀ꦲ꧀'], // can't be started with k/d/t/g, reserved for bigraf kh/dh/th/gh
+ ['꧀i', '','ꦶ'], // i
+ ['꧀I', '','ꦆ'], // I
+ ['ꦤ꧀​(j|J)', '','ꦤ꧀ꦗ꧀'], // n+zero-width-space+j
+ ['ꦤ꧀(j|J)', '','ꦚ꧀ꦗ꧀'], // n followed by j became nasalized (nasal sound 'ny' + j)(REF:nyj)
+ ['(ꦕ|ꦏ|ꦢ|ꦠ|ꦱ|ꦭ|ꦥ|ꦗ|ꦩ|ꦒ|ꦧ|ꦘ|ꦨ|ꦖ|ꦓ|ꦑ|ꦟ|ꦦ|ꦯ|ꦡ)꧀(j|J)', '','$1꧀ꦗ꧀'],
+ ['(ꦤ|ꦏ|ꦢ|ꦠ|ꦱ|ꦭ|ꦥ|ꦗ|ꦩ|ꦒ|ꦧ|ꦘ|ꦨ|ꦖ|ꦓ|ꦑ|ꦟ|ꦦ|ꦯ|ꦡ)꧀k', '','$1꧀ꦏ꧀'],
+ ['(ꦤ|ꦏ|ꦢ|ꦠ|ꦱ|ꦭ|ꦥ|ꦗ|ꦩ|ꦒ|ꦧ|ꦘ|ꦨ|ꦖ|ꦓ|ꦑ|ꦟ|ꦦ|ꦯ|ꦡ)꧀K', '','$1꧀ꦑ꧀'], // pasangan Ka murda
+ ['(ꦲ|ꦃ|ꦤ|ꦕ|ꦏ|ꦢ|ꦠ|ꦱ|ꦮ|ꦭ|ꦥ|ꦗ|ꦚ|ꦩ|ꦒ|ꦧ|ꦔ|ꦁ|ꦘ|ꦨ|ꦖ|ꦓ|ꦑ|ꦟ|ꦦ|ꦯ|ꦡ)꧀(l|L)', '','$1꧀ꦭ꧀'],
+ ['(ꦤ|ꦏ|ꦢ|ꦠ|ꦱ|ꦭ|ꦥ|ꦗ|ꦩ|ꦒ|ꦧ|ꦘ|ꦨ|ꦖ|ꦓ|ꦑ|ꦟ|ꦦ|ꦯ|ꦡ)꧀(m|M)', '','$1꧀ꦩ꧀'],
+ ['(ꦤ|ꦏ|ꦢ|ꦠ|ꦱ|ꦭ|ꦥ|ꦗ|ꦩ|ꦒ|ꦧ|ꦘ|ꦨ|ꦖ|ꦓ|ꦑ|ꦟ|ꦦ|ꦯ|ꦡ)꧀n', '','$1꧀ꦤ꧀'],
+ ['(ꦤ|ꦏ|ꦢ|ꦠ|ꦱ|ꦭ|ꦥ|ꦗ|ꦩ|ꦒ|ꦧ|ꦘ|ꦨ|ꦖ|ꦓ|ꦑ|ꦟ|ꦦ|ꦯ|ꦡ)꧀N', '','$1꧀ꦟ꧀'], // pasangan Na murda
+ ['꧀o', '','ꦺꦴ'], // o
+ ['꧀O', '','ꦎ'], // O
+ ['(ꦤ|ꦏ|ꦢ|ꦠ|ꦱ|ꦭ|ꦥ|ꦗ|ꦩ|ꦒ|ꦧ|ꦘ|ꦨ|ꦖ|ꦓ|ꦑ|ꦟ|ꦦ|ꦯ|ꦡ)꧀p', '','$1꧀ꦥ꧀'],
+ ['(ꦤ|ꦏ|ꦢ|ꦠ|ꦱ|ꦭ|ꦥ|ꦗ|ꦩ|ꦒ|ꦧ|ꦘ|ꦨ|ꦖ|ꦓ|ꦑ|ꦟ|ꦦ|ꦯ|ꦡ)꧀P', '','$1꧀ꦦ꧀'], // pasangan Pa murda
+ // q
+ ['(ꦲ|ꦃ|ꦤ|ꦕ|ꦏ|ꦢ|ꦠ|ꦱ|ꦮ|ꦭ|ꦥ|ꦝ|ꦗ|ꦚ|ꦩ|ꦒ|ꦧ|ꦛ|ꦔ|ꦁ|ꦘ|ꦨ|ꦖ|ꦓ|ꦑ|ꦟ|ꦦ|ꦯ|ꦡ)꧀​r', '','$1꧀ꦫ꧀'], // consonant+zero-width-space+(r|R) doesn't make special biconsonant -ra
+ ['(ꦲ|ꦃ|ꦤ|ꦕ|ꦏ|ꦢ|ꦠ|ꦱ|ꦮ|ꦭ|ꦥ|ꦝ|ꦗ|ꦚ|ꦩ|ꦒ|ꦧ|ꦛ|ꦔ|ꦁ|ꦘ|ꦨ|ꦖ|ꦓ|ꦑ|ꦟ|ꦦ|ꦯ|ꦡ)꧀​R', '','$1꧀ꦬ꧀'], // consonant+zero-width-space+(r|R) doesn't make special biconsonant -ra
+ ['(ꦲ|ꦃ|ꦤ|ꦕ|ꦏ|ꦢ|ꦠ|ꦱ|ꦮ|ꦭ|ꦥ|ꦝ|ꦗ|ꦚ|ꦩ|ꦒ|ꦧ|ꦛ|ꦔ|ꦁ|ꦘ|ꦨ|ꦖ|ꦓ|ꦑ|ꦟ|ꦦ|ꦯ|ꦡ)꧀(r|R)', '','$1ꦿ'], // special biconsonant -ra
+ ['(ꦤ|ꦏ|ꦢ|ꦠ|ꦱ|ꦭ|ꦥ|ꦗ|ꦩ|ꦒ|ꦧ|ꦘ|ꦨ|ꦖ|ꦓ|ꦑ|ꦟ|ꦦ|ꦯ|ꦡ)꧀s', '','$1꧀ꦱ꧀'],
+ ['(ꦤ|ꦏ|ꦢ|ꦠ|ꦱ|ꦭ|ꦥ|ꦗ|ꦩ|ꦒ|ꦧ|ꦘ|ꦨ|ꦖ|ꦓ|ꦑ|ꦟ|ꦦ|ꦯ|ꦡ)꧀S', '','$1꧀ꦯ꧀'], // pasangan Sa murda
+ ['(ꦤ|ꦏ|ꦢ|ꦠ|ꦱ|ꦭ|ꦥ|ꦗ|ꦩ|ꦒ|ꦧ|ꦘ|ꦨ|ꦖ|ꦓ|ꦑ|ꦟ|ꦦ|ꦯ|ꦡ)꧀t', '','$1꧀ꦠ꧀'],
+ ['(ꦤ|ꦏ|ꦢ|ꦠ|ꦱ|ꦭ|ꦥ|ꦗ|ꦩ|ꦒ|ꦧ|ꦘ|ꦨ|ꦖ|ꦓ|ꦑ|ꦟ|ꦦ|ꦯ|ꦡ)꧀T', '','$1꧀ꦡ꧀'], // pasangan Ta murda
+ ['꧀u', '','ꦸ'], // u
+ ['꧀U', '','ꦈ'], // U
+ // v = f
+ ['(ꦲ|ꦃ|ꦤ|ꦫ|ꦂ|ꦏ|ꦢ|ꦠ|ꦱ|ꦮ|ꦭ|ꦥ|ꦝ|ꦗ|ꦪ|ꦚ|ꦩ|ꦒ|ꦧ|ꦔ|ꦁ|ꦘ|ꦨ|ꦖ|ꦓ|ꦑ|ꦟ|ꦦ|ꦯ|ꦡ)꧀(w|W)꧀', '','$1꧀ꦮ'],
+ ['(ꦲ|ꦃ|ꦫ|ꦂ|ꦏ|ꦢ|ꦠ|ꦱ|ꦮ|ꦭ|ꦥ|ꦝ|ꦗ|ꦩ|ꦒ|ꦧ|ꦔ|ꦘ|ꦨ|ꦖ|ꦓ|ꦑ|ꦟ|ꦦ|ꦯ|ꦡ)꧀​(y|Y)', '','$1꧀ꦪ꧀'], // consonant+zero-width-space+(y|Y) doesn't make special biconsonant -ya
+
+ ['(ꦲ|ꦃ|ꦫ|ꦂ|ꦏ|ꦢ|ꦠ|ꦱ|ꦮ|ꦭ|ꦥ|ꦝ|ꦗ|ꦩ|ꦒ|ꦧ|ꦔ|ꦘ|ꦨ|ꦖ|ꦓ|ꦑ|ꦦ|ꦯ|ꦡ)꧀(y|Y)', '','$1ꦾ'], // special biconsonant -ya,
+ // can't be started with n or y, reserved for bigraf ny (REF:-yy-)
+ ['(ꦤ|ꦏ|ꦠ|ꦱ|ꦭ|ꦥ|ꦗ|ꦩ|ꦒ|ꦧ|ꦘ|ꦨ|ꦖ|ꦓ|ꦑ|ꦟ|ꦦ|ꦯ|ꦡ)꧀(z|Z)', '','$1ꦾꦗ꦳꧀'], // can't be started with d, reserved for bigraf dz
+
+ // IV. 1. Special consonant
+ ['(ꦾ|ꦿ)a', '','$1'],
+ ['ꦿx', '','ꦽ'], // special biconsonant -rê
+ ['ꦊq', '','ꦋ'], // special character lê Raswadi
+ ['ꦭ꧀x', '','ꦊ'], // special character lê
+ ['ꦫ꧀x', '','ꦉ'], // special character rê
+ ['ꦌx', '','ꦄꦼ'], // Ê
+ ['꧀x', '','ꦼ'], // x is another way to write ê
+ ['꧀X', '','ꦄꦼ'], // X is another way to write Ê
+
+ // IV. 3. Extended vowel
+ // long a (aa) - see II.
+ ['(ꦲ|ꦤ|ꦕ|ꦫ|ꦏ|ꦢ|ꦠ|ꦱ|ꦮ|ꦭ|ꦥ|ꦝ|ꦗ|ꦪ|ꦚ|ꦩ|ꦒ|ꦧ|ꦛ|ꦔ|ꦘ|ꦨ|ꦖ|ꦓ|ꦑ|ꦟ|ꦦ|ꦯ|ꦡ|꦳)i', '','$1ꦻ'], // hanacaraka + i = -ai
+ ['(ꦲ|ꦤ|ꦕ|ꦫ|ꦏ|ꦢ|ꦠ|ꦱ|ꦮ|ꦭ|ꦥ|ꦝ|ꦗ|ꦪ|ꦚ|ꦩ|ꦒ|ꦧ|ꦛ|ꦔ|ꦘ|ꦨ|ꦖ|ꦓ|ꦑ|ꦟ|ꦦ|ꦯ|ꦡ|꦳)u', '','$1ꦻꦴ'], // hanacaraka + u = -au
+ ['ꦄi', '','ꦍ'], // Ai
+ ['ꦄu', '','ꦎꦴ'], // Au
+ ['ꦶi', '','ꦷ'], // long i (ii)
+ ['ꦆi', '','ꦇ'], // long i (Ii)
+ ['ꦸu', '','ꦹ'], // long u (uu)
+ ['ꦈu', '','ꦈꦴ'], // long u (Uu)
+ ['ꦺꦴo', '','ꦵ'], // Sundanese -o
+
+ // IV. 2. Extended consonant
+ ['ꦱ꧀​(s|h)', '','ꦰ꧀'], // s_s (with zero-width-space)
+ ['ꦏ꧀​h', '','ꦏ꧀ꦲ꧀'], // k_h (with zero-width-space)
+ ['ꦒ꧀​h', '','ꦒ꧀ꦲ꧀'], // g_h (with zero-width-space)
+ ['ꦢ꧀​z', '','ꦢ꧀ꦗ꦳꧀'], // d_z (with zero-width-space)
+ ['ꦗ꧀​h', '','ꦙ'], // j_h (with zero-width-space)
+ ['ꦱ꧀(s|h)', '','ꦰ꧀'], // ss/sh
+ ['ꦏ꧀h', '','ꦏ꦳'], // kh
+ ['ꦒ꧀h', '','ꦒ꦳'], // gh
+ ['ꦢ꧀z', '','ꦢ꦳'], // dz
+ ['ꦗ꧀h', '','ꦙ'], // jh/Ja mahaprana
+
+ // III. Non-words
+ // q and Q are special characters for choosing less used characters by pressing q/Q multiple times (rotating back)
+ [' ', '','​'], // zero-width-space, since javanese have no space
+ ['꧅q', '','꧁'], // rêrênggan kiwa
+ ['꧄q', '','꧅'], // pada luhur
+ ['꧃q', '','꧄'], // pada madya
+ ['꧂q', '', '꧃'],// pada andhap
+ ['꧁q', '','꧂'], // rêrênggan têngên
+ ['Q', '','꧁'], // rêrênggan kiwa
+ ['꧟[Q|q]', '','꧀'], // pangkon
+ ['꧞[Q|q]', '','꧟'], // pada isen-isen
+ ['꧆[Q|q]', '','꧞'], // pada tirta tumetes
+ ['ꦀ[Q|q]', '', '꧆'],// pada windu
+ ['꦳[Q|q]', '','ꦀ'], // panyangga
+ ['꧀[Q|q]', '','꦳'], // cecak telu
+ ['q', '','꧀'], // pangkon - to cut off the default -a vowel
+
+ ['ꦫq', '','ꦿ'], // another way to write -ra
+ ['ꦪq', '','ꦾ'], // another way to write -ya
+
+ // II. 1. Alphabetical ha-na-ca-ra-ka
+ ['ꦠ꧀​h', '','ꦠ꧀ꦲ꧀'], // t_h (with zero-width-space)
+ ['ꦢ꧀​h', '','ꦢ꧀ꦲ꧀'], // d_h (with zero-width-space)
+ ['ꦤ꧀​y', '','ꦚ꧀ꦪ꧀'], // n_y (with zero-width-space)
+ ['ꦤ꧀​g', '','ꦔ꧀ꦒ꧀'], // n_g (with zero-width-space)
+ ['ꦠ꧀h', '','ꦛ꧀'], // th
+ ['ꦢ꧀h', '','ꦝ꧀'], // dh
+ ['ꦤ꧀y', '','ꦚ꧀'], // ny
+ ['ꦤ꧀g', '','ꦁ'], // ng
+ ['a', '','ꦲ'],
+ ['b', '','ꦧ꧀'],
+ ['c', '','ꦕ꧀'],
+ ['d', '','ꦢ꧀'],
+ ['e', '','ꦲꦺ'], // é|è
+ ['(f|v)', '','ꦥ꦳꧀'],
+ ['g', '','ꦒ꧀'],
+ ['h', '','ꦲ꧀'],
+ ['i', '','ꦲꦶ'],
+ ['j', '','ꦗ꧀'],
+ ['k', '','ꦏ꧀'],
+ ['l', '','ꦭ꧀'],
+ ['m', '','ꦩ꧀'],
+ ['n', '','ꦤ꧀'],
+ ['o', '','ꦲꦺꦴ'],
+ ['p', '','ꦥ꧀'],
+ // q = special letters, see III.
+ ['r', '','ꦫ꧀'],
+ ['s', '','ꦱ꧀'],
+ ['t', '','ꦠ꧀'],
+ ['u', '','ꦲꦸ'],
+ // v = f
+ ['w', '','ꦮ꧀'],
+ ['x', '','ꦲꦼ'], // ê
+ ['y', '','ꦪ꧀'],
+ ['z', '','ꦗ꦳꧀'],
+
+ // II. Basic Letters:
+ // II. 2. Capital Ha-Na-Ca-Ra-Ka (Aksara Murda)
+ ['(ꦠ|ꦡ)꧀(h|H)', '','ꦛ꧀'],
+ ['ꦣ꧀h', '','ꦞ꧀'], // Dha murda
+ ['(ꦢ|ꦣ)꧀H', '','ꦞ꧀'], // Dha murda
+ ['ꦟ꧀y', '','ꦘ꧀'], // Nya murda
+ ['(ꦤ|ꦟ)꧀Y', '','ꦘ꧀'], // NYA murda
+ ['(ꦤ|ꦟ)꧀(g|G)', '','ꦔ꧀'],// nga
+ ['A', '','ꦄ'], // A
+ ['B', '','ꦨ꧀'], // Ba murda
+ ['C', '','ꦖ꧀'], // Ca murda(?)
+ ['D', '','ꦣ꧀'],
+ ['E', '','ꦌ'], // É|È
+ ['(F|V)', '','ꦥ꦳꧀'],
+ ['G', '','ꦓ꧀'], // Ga murda
+ ['H', '','ꦲ꧀'],
+ ['I', '','ꦆ'], // I
+ ['J', '','ꦙ꧀'],// Ja Mahaprana
+ ['K', '','ꦑ꧀'], // Ka murda
+ ['L', '','ꦭ꧀'],
+ ['M', '','ꦩ꧀'],
+ ['N', '','ꦟ꧀'], // Na murda
+ ['O', '','ꦎ'], // O
+ ['P', '','ꦦ꧀'], // Pa murda
+ // Q = special letters, see III.
+ ['R', '','ꦬ꧀'],
+ ['S', '','ꦯ꧀'], // Sa murda
+ ['T', '','ꦡ꧀'], // Ta murda
+ ['U', '','ꦈ'], // U
+ // V = F
+ ['W', '','ꦮ꧀'],
+ ['X', '','ꦄꦼ'], // X is another way to write Ê
+ ['Y', '','ꦪ꧀'],
+ ['Z', '','ꦗ꦳꧀'],
+
+ // I. Number
+ ['0', '','꧐'],
+ ['1', '','꧑'],
+ ['2', '','꧒'],
+ ['3', '','꧓'],
+ ['4', '','꧔'],
+ ['5', '','꧕'],
+ ['6', '','꧖'],
+ ['7', '','꧗'],
+ ['8', '','꧘'],
+ ['9', '','꧙'],
+ [':', '','꧇'], // 'enclose Javanese numbers, e.g. ":1:"'
+ [',', '','꧈'], // 'comma'
+ ['\\.', '','꧉'], // 'period'
+ ['꧊\\|', '','꧋'], // 'opening paragraph character'
+ ['\\|', '','꧊'], // 'poem character'
+ ['\\(', '','꧌'], // 'Javanese opening bracket'
+ ['\\)', '','꧍'] // 'Javanese closing bracket'
+ ]
+ };
+
+ $.ime.register( jvTransliteration );
+}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ka/ka-kbd.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ka/ka-kbd.js
new file mode 100644
index 00000000..a974a686
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ka/ka-kbd.js
@@ -0,0 +1,56 @@
+( function ( $ ) {
+ 'use strict';
+
+ var kaKbd = {
+ id: 'ka-kbd',
+ name: 'Georgian kbd',
+ description: 'Georgian kbd keyboard layout',
+ date: '2013-02-12',
+ URL: 'http://github.com/wikimedia/jquery.ime',
+ author: 'Parag Nemade',
+ license: 'GPLv3',
+ version: '1.0',
+ patterns: [
+ ['.k', 'კ'],
+ ['.p', 'პ'],
+ ['+z', 'ჟ'],
+ ['.t', 'ტ'],
+ ['.g', 'ღ'],
+ ['+s', 'შ'],
+ ['.+c', 'ჭ'],
+ ['+c', 'ჩ'],
+ ['.c', 'წ'],
+ ['+j', 'ჯ'],
+ ['ყ1', 'ჴ'],
+ ['ე0', 'ჱ'],
+ ['ო1', 'ჵ'],
+ ['ი1', 'ჲ'],
+ ['a', 'ა'],
+ ['b', 'ბ'],
+ ['g', 'გ'],
+ ['d', 'დ'],
+ ['e', 'ე'],
+ ['v', 'ვ'],
+ ['z', 'ზ'],
+ ['t', 'თ'],
+ ['i', 'ი'],
+ ['l', 'ლ'],
+ ['m', 'მ'],
+ ['n', 'ნ'],
+ ['o', 'ო'],
+ ['r', 'რ'],
+ ['s', 'ს'],
+ ['u', 'უ'],
+ ['p', 'ფ'],
+ ['k', 'ქ'],
+ ['q', 'ყ'],
+ ['c', 'ც'],
+ ['j', 'ძ'],
+ ['x', 'ხ'],
+ ['h', 'ჰ'],
+ ['w', 'ჳ'],
+ ['f', 'ჶ']]
+ };
+
+ $.ime.register( kaKbd );
+}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ka/ka-transliteration.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ka/ka-transliteration.js
new file mode 100644
index 00000000..08fc1db5
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ka/ka-transliteration.js
@@ -0,0 +1,58 @@
+( function ( $ ) {
+ 'use strict';
+
+ var kaTransliteration = {
+ id: 'ka-transliteration',
+ name: 'ტრანსლიტერაცია',
+ description: 'Georgian transliteration',
+ date: '2012-10-14',
+ URL: 'http://github.com/wikimedia/jquery.ime',
+ author: 'Ioseb Dzmanashvili (http://www.code.ge), [[User:Hooman]], Srikanth L',
+ license: 'MIT',
+ version: '1.0',
+ contextLength: 3,
+ maxKeyLength: 1,
+ patterns: [
+ ['\\\\([A-Za-z|\\~|\\`])', '\\\\', '$1'],
+ ['`', '„'],
+ ['~', '“'],
+ ['q', 'ქ'],
+ ['w', 'წ'],
+ ['e', 'ე'],
+ ['r', 'რ'],
+ ['t', 'ტ'],
+ ['y', 'ყ'],
+ ['u', 'უ'],
+ ['i', 'ი'],
+ ['o', 'ო'],
+ ['p', 'პ'],
+
+ ['a', 'ა'],
+ ['s', 'ს'],
+ ['d', 'დ'],
+ ['f', 'ფ'],
+ ['g', 'გ'],
+ ['h', 'ჰ'],
+ ['j', 'ჯ'],
+ ['k', 'კ'],
+ ['l', 'ლ'],
+
+ ['z', 'ზ'],
+ ['x', 'ხ'],
+ ['c', 'ც'],
+ ['v', 'ვ'],
+ ['b', 'ბ'],
+ ['n', 'ნ'],
+ ['m', 'მ'],
+
+ ['W', 'ჭ'],
+ ['R', 'ღ'],
+ ['T', 'თ'],
+ ['S', 'შ'],
+ ['J', 'ჟ'],
+ ['Z', 'ძ'],
+ ['C', 'ჩ']]
+ };
+
+ $.ime.register( kaTransliteration );
+}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/kk/kk-arabic.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/kk/kk-arabic.js
new file mode 100644
index 00000000..72db1d3b
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/kk/kk-arabic.js
@@ -0,0 +1,62 @@
+( function ( $ ) {
+ 'use strict';
+
+ var kkArabic = {
+ id: 'kk-arabic',
+ name: 'Kazak arabic',
+ description: 'Kazak arabic in Arabic script keyboard layout',
+ date: '2013-02-12',
+ URL: 'http://github.com/wikimedia/jquery.ime',
+ author: 'Parag Nemade',
+ license: 'GPLv3',
+ version: '1.0',
+ patterns: [
+ ['a', 'ا'],
+ ['A', 'ٵ'],
+ ['b', 'ب'],
+ ['v', 'ۆ'],
+ ['g', 'گ'],
+ ['R', 'ع'],
+ ['d', 'د'],
+ ['e', 'ە'],
+ ['j', 'ج'],
+ ['z', 'ز'],
+ ['y', 'ي'],
+ ['k', 'ك'],
+ ['q', 'ق'],
+ ['l', 'ل'],
+ ['m', 'م'],
+ ['n', 'ن'],
+ ['N', 'ڭ'],
+ ['o', 'و'],
+ ['O', 'ٶ'],
+ ['p', 'پ'],
+ ['r', 'ر'],
+ ['s', 'س'],
+ ['t', 'ت'],
+ ['w', 'ۋ'],
+ ['u', 'ۇ'],
+ ['U', 'ٷ'],
+ ['f', 'ف'],
+ ['H', 'ح'],
+ ['h', 'ه'],
+ ['c', 'چ'],
+ ['S', 'ش'],
+ ['I', 'ى'],
+ ['i', 'ٸ'],
+ [';', '؛'],
+ [',', '،'],
+ ['\\?', '?'],
+ ['\\<', '>'],
+ ['\\>', '<'],
+ ['\\(', ')'],
+ ['\\)', '('],
+ ['\\[', ']'],
+ ['\\]', '['],
+ ['\\{', '}'],
+ ['\\}', '{']
+ ]
+ };
+
+ $.ime.register( kkArabic );
+}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/kk/kk-kbd.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/kk/kk-kbd.js
new file mode 100644
index 00000000..4a6e273e
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/kk/kk-kbd.js
@@ -0,0 +1,108 @@
+( function ( $ ) {
+ 'use strict';
+
+ var kkKbd = {
+ id: 'kk-kbd',
+ name: 'Kazak kbd',
+ description: 'Kazak kbd in Cyrillic script keyboard layout',
+ date: '2013-02-12',
+ URL: 'http://github.com/wikimedia/jquery.ime',
+ author: 'Parag Nemade',
+ license: 'GPLv3',
+ version: '1.0',
+ patterns: [
+ ['`', '('],
+ ['\\~', ')'],
+ ['1', '\"'],
+ ['2', 'ә'],
+ ['\\@', 'Ә'],
+ ['3', 'і'],
+ ['\\#', 'І'],
+ ['4', 'ӊ'],
+ ['\\$', 'Ӊ'],
+ ['5', 'ғ'],
+ ['\\%', 'Ғ'],
+ ['6', ','],
+ ['\\^', ';'],
+ ['7', '.'],
+ ['\\&', ':'],
+ ['8', 'ү'],
+ ['\\*', 'Ү'],
+ ['9', 'ұ'],
+ ['\\(', 'Ұ'],
+ ['0', 'қ'],
+ ['\\)', 'Қ'],
+ ['\\-', 'ө'],
+ ['\\_', 'Ө'],
+ ['\\=', 'һ'],
+ ['\\+', 'Һ'],
+ ['q', 'й'],
+ ['Q', 'Й'],
+ ['w', 'ц'],
+ ['W', 'Ц'],
+ ['e', 'у'],
+ ['E', 'У'],
+ ['r', 'к'],
+ ['R', 'К'],
+ ['t', 'е'],
+ ['T', 'Е'],
+ ['y', 'н'],
+ ['Y', 'Н'],
+ ['u', 'г'],
+ ['U', 'Г'],
+ ['i', 'ш'],
+ ['I', 'Ш'],
+ ['o', 'щ'],
+ ['O', 'Щ'],
+ ['p', 'з'],
+ ['P', 'З'],
+ ['\\[', 'х'],
+ ['\\{', 'Х'],
+ ['\\]', 'ъ'],
+ ['\\}', 'Ъ'],
+ ['a', 'ф'],
+ ['A', 'Ф'],
+ ['s', 'ы'],
+ ['S', 'Ы'],
+ ['d', 'в'],
+ ['D', 'В'],
+ ['f', 'а'],
+ ['F', 'А'],
+ ['g', 'п'],
+ ['G', 'П'],
+ ['h', 'р'],
+ ['H', 'Р'],
+ ['j', 'о'],
+ ['J', 'О'],
+ ['k', 'л'],
+ ['K', 'Л'],
+ ['l', 'д'],
+ ['L', 'Д'],
+ [';', 'ж'],
+ [':', 'Ж'],
+ ['\'', 'э'],
+ ['\"', 'Э'],
+ ['z', 'я'],
+ ['Z', 'Я'],
+ ['x', 'ч'],
+ ['X', 'Ч'],
+ ['c', 'с'],
+ ['C', 'С'],
+ ['v', 'м'],
+ ['V', 'М'],
+ ['b', 'и'],
+ ['B', 'И'],
+ ['n', 'т'],
+ ['N', 'Т'],
+ ['m', 'ь'],
+ ['M', 'Ь'],
+ [',', 'б'],
+ ['\\<', 'Б'],
+ ['\\.', 'ю'],
+ ['\\>', 'Ю'],
+ ['/', '№']
+ ]
+ };
+
+ $.ime.register( kkKbd );
+}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/kn/kn-inscript.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/kn/kn-inscript.js
new file mode 100644
index 00000000..33a0f607
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/kn/kn-inscript.js
@@ -0,0 +1,111 @@
+( function ( $ ) {
+ 'use strict';
+
+ var knInscript = {
+ id: 'kn-inscript',
+ name: 'ಇನ್\u200cಸ್ಕ್ರಿಪ್ಟ್',
+ description: 'Inscript keyboard for Kannada script',
+ date: '2012-10-14',
+ author: 'Junaid P V',
+ license: 'GPLv3',
+ version: '1.0',
+ patterns: [
+ ['x', '\u0C82'],
+ ['_', '\u0C83'],
+ ['D', '\u0C85'],
+ ['E', '\u0C86'],
+ ['F', '\u0C87'],
+ ['R', '\u0C88'],
+ ['G', '\u0C89'],
+ ['T', '\u0C8A'],
+ ['\\+', '\u0C8B'],
+ ['Z', '\u0C8E'],
+ ['S', '\u0C8F'],
+ ['W', '\u0C90'],
+ ['~', '\u0C92'],
+ ['A', '\u0C93'],
+ ['Q', '\u0C94'],
+ ['k', '\u0C95'],
+ ['K', '\u0C96'],
+ ['i', '\u0C97'],
+ ['I', '\u0C98'],
+ ['U', '\u0C99'],
+ [';', '\u0C9A'],
+ ['\\:', '\u0C9B'],
+ ['p', '\u0C9C'],
+ ['P', '\u0C9D'],
+ ['\\}', '\u0C9E'],
+ ['\'', '', '\u0C9F'],
+ ['"', '\u0CA0'],
+ ['\\[', '\u0CA1'],
+ ['\\{', '\u0CA2'],
+ ['C', '\u0CA3'],
+ ['l', '\u0CA4'],
+ ['L', '\u0CA5'],
+ ['o', '\u0CA6'],
+ ['O', '\u0CA7'],
+ ['v', '\u0CA8'],
+ ['h', '\u0CAA'],
+ ['H', '\u0CAB'],
+ ['y', '\u0CAC'],
+ ['Y', '\u0CAD'],
+ ['c', '\u0CAE'],
+ ['/', '\u0CAF'],
+ ['j', '\u0CB0'],
+ ['J', '\u0CB1'],
+ ['n', '\u0CB2'],
+ ['N', '\u0CB3'],
+ ['b', '\u0CB5'],
+ ['M', '\u0CB6'],
+ [',', '\u0CB7'],
+ ['m', '\u0CB8'],
+ ['u', '\u0CB9'],
+ ['\\]', '\u0CBC'],
+ ['e', '\u0CBE'],
+ ['f', '\u0CBF'],
+ ['r', '\u0CC0'],
+ ['g', '\u0CC1'],
+ ['t', '\u0CC2'],
+ ['\\=', '\u0CC3'],
+ ['z', '\u0CC6'],
+ ['s', '\u0CC7'],
+ ['w', '\u0CC8'],
+ ['`', '\u0CCA'],
+ ['a', '\u0CCB'],
+ ['q', '\u0CCC'],
+ ['d', '\u0CCD'],
+ ['t', '\u0CC2'],
+ ['0', '\u0CE6'],
+ ['1', '\u0CE7'],
+ ['2', '\u0CE8'],
+ ['3', '\u0CE9'],
+ ['4', '\u0CEA'],
+ ['5', '\u0CEB'],
+ ['6', '\u0CEC'],
+ ['7', '\u0CED'],
+ ['8', '\u0CEE'],
+ ['9', '\u0CEF'],
+ ['\\#', '\u0CCD\u0CB0'],
+ ['\\%', '\u0C9C\u0CCD\u0C9E'],
+ ['\\^', '\u0CA4\u0CCD\u0CB0'],
+ ['\\&', '\u0C95\u0CCD\u0CB0'],
+ ['\\(', '\u200D'],
+ ['\\)', '\u200C']],
+ patterns_x: [
+ ['F', '\uC88C'],
+ ['\\>', '\u0CBD'],
+ ['\\=', '\u0CC4'],
+ ['H', '\u0CDE'],
+ ['\\+', '\u0CE0'],
+ ['R', '\u0CE1'],
+ ['f', '\u0CE2'],
+ ['r', '\u0CE3'],
+ ['\\>', '\u0CE4'],
+ ['\\.', '\u0CE5'],
+ ['u', '\u0CF1'],
+ ['j', '\u0CF2'],
+ ['\\$', '\u20B9']]
+ };
+
+ $.ime.register( knInscript );
+}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/kn/kn-inscript2.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/kn/kn-inscript2.js
new file mode 100644
index 00000000..5a01dc96
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/kn/kn-inscript2.js
@@ -0,0 +1,119 @@
+( function ( $ ) {
+ 'use strict';
+
+ var knInscript2 = {
+ id: 'kn-inscript2',
+ name: 'ಇನ್\u200cಸ್ಕ್ರಿಪ್ಟ್ ೨',
+ description: 'Enhanced InScript keyboard for Kannada script',
+ date: '2013-01-16',
+ author: 'Parag Nemade',
+ license: 'GPLv3',
+ version: '1.0',
+ patterns: [
+ ['1', '೧'],
+ ['2', '೨'],
+ ['\\#', '್ರ'],
+ ['3', '೩'],
+ ['\\$', 'ರ್'],
+ ['4', '೪'],
+ ['5', '೫'],
+ ['6', '೬'],
+ ['7', '೭'],
+ ['8', '೮'],
+ ['\\(', '('],
+ ['9', '೯'],
+ ['\\)', ')'],
+ ['0', '೦'],
+ ['\\_', 'ಃ'],
+ ['\\-', '-'],
+ ['\\+', 'ಋ'],
+ ['\\=', 'ೃ'],
+ ['Q', 'ಔ'],
+ ['q', 'ೌ'],
+ ['W', 'ಐ'],
+ ['w', 'ೈ'],
+ ['E', 'ಆ'],
+ ['e', 'ಾ'],
+ ['R', 'ಈ'],
+ ['r', 'ೀ'],
+ ['T', 'ಊ'],
+ ['t', 'ೂ'],
+ ['Y', 'ಭ'],
+ ['y', 'ಬ'],
+ ['U', 'ಙ'],
+ ['u', 'ಹ'],
+ ['I', 'ಘ'],
+ ['i', 'ಗ'],
+ ['O', 'ಧ'],
+ ['o', 'ದ'],
+ ['P', 'ಝ'],
+ ['p', 'ಜ'],
+ ['\\{', 'ಢ'],
+ ['\\[', 'ಡ'],
+ ['\\}', 'ಞ'],
+ ['\\]', '಼'],
+ ['A', 'ಓ'],
+ ['a', 'ೋ'],
+ ['S', 'ಏ'],
+ ['s', 'ೇ'],
+ ['D', 'ಅ'],
+ ['d', '್'],
+ ['F', 'ಇ'],
+ ['f', 'ಿ'],
+ ['G', 'ಉ'],
+ ['g', 'ು'],
+ ['H', 'ಫ'],
+ ['h', 'ಪ'],
+ ['J', 'ಱ'],
+ ['j', 'ರ'],
+ ['K', 'ಖ'],
+ ['k', 'ಕ'],
+ ['L', 'ಥ'],
+ ['l', 'ತ'],
+ [':', 'ಛ'],
+ [';', 'ಚ'],
+ ['"', 'ಠ'],
+ ['\\\'', 'ಟ'],
+ ['\\~', 'ಒ'],
+ ['`\\', 'ೊ'],
+ ['Z', 'ಎ'],
+ ['z', 'ೆ'],
+ ['x', 'ಂ'],
+ ['C', 'ಣ'],
+ ['c', 'ಮ'],
+ ['v', 'ನ'],
+ ['b', 'ವ'],
+ ['N', 'ಳ'],
+ ['n', 'ಲ'],
+ ['M', 'ಶ'],
+ ['m', 'ಸ'],
+ ['\\<', 'ಷ'],
+ [',', ','],
+ ['\\>', '।'],
+ ['\\.', '.'],
+ ['/', 'ಯ'],
+ ['\\%', 'ಜ್ಞ'],
+ ['\\^', 'ತ್ರ'],
+ ['\\&', 'ಕ್ಷ'],
+ ['\\*', 'ಶ್ರ']
+ ],
+ patterns_x: [
+ ['1', '\u200d'],
+ ['2', '\u200c'],
+ ['4', '₹'],
+ ['\\+', 'ೠ'],
+ ['\\=', 'ೄ'],
+ ['R', 'ೡ'],
+ ['r', 'ೣ'],
+ ['u', 'ೱ'],
+ ['F','ಌ'],
+ ['f', 'ೢ'],
+ ['H', 'ೞ'],
+ ['j', 'ೲ'],
+ ['\\>', 'ಽ'],
+ ['\\.', '॥']
+ ]
+ };
+
+ $.ime.register( knInscript2 );
+}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/kn/kn-kgp.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/kn/kn-kgp.js
new file mode 100644
index 00000000..3676c118
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/kn/kn-kgp.js
@@ -0,0 +1,104 @@
+( function ( $ ) {
+ 'use strict';
+
+ var knKGP = {
+ id: 'kn-kgp',
+ name: 'ಕಗಪ/ನುಡಿ',
+ description: 'Kannada kgp/nudi/KP Rao layout',
+ date: '2012-11-09',
+ URL: 'http://github.com/wikimedia/jquery.ime',
+ author: 'Aravinda VK<mail@aravindavk.in>',
+ license: 'GPLv3,MIT',
+ version: '1.0',
+ contextLength: 4,
+ maxKeyLength: 2,
+ patterns: [
+ ['([ಕ-ಹೞ]಼?)f', '$1್'],
+ ['([ಕ-ಹೞ]಼?್)f', '$1'],
+ ['\\\\([A-Za-z\\>_~\\.0-9])', '\\\\', '$1'],
+ ['([ಕ-ಹೞ]಼?)A', '$1ಾ'],
+ ['([ಕ-ಹೞ]಼?)i', '$1ಿ'],
+ ['([ಕ-ಹೞ]಼?)I', '$1ೀ'],
+ ['([ಕ-ಹೞ]಼?)u', '$1ು'],
+ ['([ಕ-ಹೞ]಼?)U', '$1ೂ'],
+ ['([ಕ-ಹೞ]಼?)R', '$1ೃ'],
+ ['([ಕ-ಹೞ]಼?)ೃX', '$1ೄ'],
+ ['([ಕ-ಹೞ]಼?)e', '$1ೆ'],
+ ['([ಕ-ಹೞ]಼?)E', '$1ೇ'],
+ ['([ಕ-ಹೞ]಼?)Y', '$1ೈ'],
+ ['([ಕ-ಹೞ]಼?)o', '$1ೊ'],
+ ['([ಕ-ಹೞ]಼?)O', '$1ೋ'],
+ ['([ಕ-ಹೞ]಼?)V', '$1ೌ'],
+ ['ಸX', 'ಽ'],
+ ['([ಕ-ಹೞ]಼?\u200D)f', '$1್'],
+ ['(\u200D)F', '\u200C'], // 0x200C Zero width non-joiner
+ ['F', '\u200D'], // 0x200D Zero width joiner
+ ['k', 'ಕ'],
+ ['K', 'ಖ'],
+ ['g', 'ಗ'],
+ ['G', 'ಘ'],
+ ['Z', 'ಙ'],
+ ['c', 'ಚ'],
+ ['C', 'ಛ'],
+ ['j', 'ಜ'],
+ ['ಜX', 'ಜ಼'],
+ ['J', 'ಝ'],
+ ['z', 'ಞ'],
+ ['q', 'ಟ'],
+ ['Q', 'ಠ'],
+ ['w', 'ಡ'],
+ ['W', 'ಢ'],
+ ['N', 'ಣ'],
+ ['t', 'ತ'],
+ ['T', 'ಥ'],
+ ['d', 'ದ'],
+ ['D', 'ಧ'],
+ ['n', 'ನ'],
+ ['p', 'ಪ'],
+ ['P', 'ಫ'],
+ ['ಫX', 'ಫ಼'],
+ ['b', 'ಬ'],
+ ['B', 'ಭ'],
+ ['m', 'ಮ'],
+ ['y', 'ಯ'],
+ ['r', 'ರ'],
+ ['ರX', 'ಱ'],
+ ['l', 'ಲ'],
+ ['v', 'ವ'],
+ ['S', 'ಶ'],
+ ['x', 'ಷ'],
+ ['s', 'ಸ'],
+ ['h', 'ಹ'],
+ ['L', 'ಳ'],
+ ['ಳX', 'ೞ'],
+ ['a', 'ಅ'],
+ ['A', 'ಆ'],
+ ['i', 'ಇ'],
+ ['I', 'ಈ'],
+ ['u', 'ಉ'],
+ ['U', 'ಊ'],
+ ['R', 'ಋ'],
+ ['ಋX', 'ೠ'],
+ ['e', 'ಎ'],
+ ['E', 'ಏ'],
+ ['Y', 'ಐ'],
+ ['o', 'ಒ'],
+ ['O', 'ಓ'],
+ ['V', 'ಔ'],
+ ['M', 'ಂ'],
+ ['H', 'ಃ'],
+ ['0', '೦'],
+ ['1', '೧'],
+ ['2', '೨'],
+ ['3', '೩'],
+ ['4', '೪'],
+ ['5', '೫'],
+ ['6', '೬'],
+ ['7', '೭'],
+ ['8', '೮'],
+ ['9', '೯']
+ ]
+ };
+
+ $.ime.register( knKGP );
+}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/kn/kn-transliteration.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/kn/kn-transliteration.js
new file mode 100644
index 00000000..ced94338
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/kn/kn-transliteration.js
@@ -0,0 +1,154 @@
+( function ( $ ) {
+ 'use strict';
+
+ var knTransliteration = {
+ id: 'kn-transliteration',
+ name: 'ಲಿಪ್ಯಂತರಣ',
+ description: 'Kannada transliteration',
+ date: '2012-10-14',
+ URL: 'http://github.com/wikimedia/jquery.ime',
+ author: 'M G Harish, HP Nadig ',
+ license: 'GPLv3',
+ version: '1.0',
+ contextLength: 5,
+ maxKeyLength: 3,
+ patterns: [
+ ['ಕ್h','c','ಚ್'],
+ ['\\\\([A-Za-z\\>_~\\.0-9])','\\\\','$1'],
+ // For users accustomed to Baraha
+ ['ಜ್್j', 'ಜ್ಞ್'],
+ ['([ಕ-ಹೞ]಼?)್a', '$1'],
+ ['([ಕ-ಹೞ]಼?)್A', '$1ಾ'],
+ ['([ಕ-ಹೞ]಼?)a', '$1ಾ'],
+ ['([ಕ-ಹೞ]಼?)್i', '$1ಿ'],
+ ['([ಕ-ಹೞ]಼?)(್I|ಿi|ೆe)', '$1ೀ'],
+ ['([ಕ-ಹೞ]಼?)್u', '$1ು'],
+ ['([ಕ-ಹೞ]಼?)(ುu|್U|ೊo)', '$1ೂ'],
+ ['([ಕ-ಹೞ]಼?)್R', '$1ೃ'],
+ ['([ಕ-ಹೞ]಼?)ೃR', '$1ೄ'],
+ ['([ಕ-ಹೞ]಼?)್e', '$1ೆ'],
+ ['([ಕ-ಹೞ]಼?)್E', '$1ೇ'],
+ ['([ಕ-ಹೞ]಼?)i', '$1ೈ'],
+ ['([ಕ-ಹೞ]಼?)್o', '$1ೊ'],
+ ['([ಕ-ಹೞ]಼?)್O', '$1ೋ'],
+ ['([ಕ-ಹೞ]಼?)u', '$1ೌ'],
+ ['([ಕ-ಹೞ])್\\`', '$1़್'],
+ ['([ಕ-ಹೞ]಼?)್W', '$1ೌ'],
+ ['([ಕ-ಹೞ]಼?)್Y', '$1ೈ'],
+
+ ['ಅa', 'ಆ'],
+ ['(ಒo|ಉu)', 'ಊ'],
+ ['ಅi', 'ಐ'],
+ ['(ಇi|ಎe)', 'ಈ'],
+ ['ಅu', 'ಔ'],
+ ['ಋR', 'ೠ'],
+ ['ಓ~M', 'ॐ'],
+
+ ['~l', 'ೞ್'],
+ ['~h', 'ಹ್'],
+ ['~r', 'ಱ್'],
+ ['q', 'ಱ್'],
+ ['Q', 'ೞ್'],
+ ['ಕ್h', 'ಖ್'],
+ ['ಗ್h', 'ಘ್'],
+ ['~g', 'ಙ್'],
+ ['~N', 'ಙ್'],
+ ['ಚ್h', 'ಛ್'],
+ ['ಜ್h', 'ಝ್'],
+ ['~j', 'ಞ್'],
+ ['~n', 'ಞ್'],
+ ['ಟ್h', 'ಠ್'],
+ ['ಡ್h', 'ಢ್'],
+ ['ತ್h', 'ಥ್'],
+ ['ದ್h', 'ಧ್'],
+ ['ಪ್h', 'ಫ್'],
+ ['ಬ್h', 'ಭ್'],
+ ['ಸ್h', 'ಶ್'],
+ ['ಶ್h', 'ಷ್'],
+
+ ['ಋa', 'ರ'],
+ ['ಋA', 'ರಾ'],
+ ['ಋi', 'ರಿ'],
+ ['ಋI', 'ರೀ'],
+ ['ಋu', 'ರು'],
+ ['ಋU', 'ರೂ'],
+ ['ಋe', 'ರೆ'],
+ ['ಋE', 'ರೇ'],
+
+ ['X', '\u200C'], // 0x200C Zero width non-joiner
+ ['x', '\u200D'], // 0x200D Zero width joiner
+
+ ['([ಕ-ಹೞ]಼?)ೃa', '$1್ರ'],
+ ['([ಕ-ಹೞ]಼?)ೃA', '$1್ರಾ'],
+ ['([ಕ-ಹೞ]಼?)ೃi', '$1್ರಿ'],
+ ['([ಕ-ಹೞ]಼?)ೃI', '$1್ರೀ'],
+ ['([ಕ-ಹೞ]಼?)ೃu', '$1್ರು'],
+ ['([ಕ-ಹೞ]಼?)ೃU', '$1್ರೂ'],
+ ['([ಕ-ಹೞ]಼?)ೃe', '$1್ರೆ'],
+ ['([ಕ-ಹೞ]಼?)ೃE', '$1್ರೇ'],
+ ['([ಕ-ಹೞ]಼?)ೃo', '$1್ರೊ'],
+ ['([ಕ-ಹೞ]಼?)ೃO', '$1್ರೋ'],
+ ['([ಕ-ಹೞ]಼?)ೃ\\~', '$1್ರ್'],
+
+ ['।\\.', '॥'],
+
+ ['a', 'ಅ'],
+ ['b', 'ಬ್'],
+ ['c', 'ಚ್'],
+ ['d', 'ದ್'],
+ ['e', 'ಎ'],
+ ['g', 'ಗ್'],
+ ['h', 'ಹ್'],
+ ['i', 'ಇ'],
+ ['j', 'ಜ್'],
+ ['k', 'ಕ್'],
+ ['l', 'ಲ್'],
+ ['m', 'ಮ್'],
+ ['n', 'ನ್'],
+ ['o', 'ಒ'],
+ ['p', 'ಪ್'],
+ ['r', 'ರ್'],
+ ['s', 'ಸ್'],
+ ['t', 'ತ್'],
+ ['u', 'ಉ'],
+ ['(v|w)', 'ವ್'],
+ ['y', 'ಯ್'],
+ ['A', 'ಆ'],
+ ['B', 'ಭ್'],
+ ['C', 'ಛ್'],
+ ['D', 'ಡ್'],
+ ['E', 'ಏ'],
+ ['G', 'ಘ್'],
+ ['H', 'ಃ'],
+ ['I', 'ಈ'],
+ ['J', 'ಝ್'],
+ ['K', 'ಖ್'],
+ ['L', 'ಳ್'],
+ ['M', 'ಂ'],
+ ['N', 'ಣ್'],
+ ['O', 'ಓ'],
+ ['P', 'ಫ್'],
+ ['R', 'ಋ'],
+ ['S', 'ಶ್'],
+ ['T', 'ಟ್'],
+ ['U', 'ಊ'],
+ ['V', 'ವ್'],
+ ['W','','ಔ'],
+ ['Y', 'ಐ'],
+ ['(z|Z)', 'ಜ಼್'],
+ ['(f|F)', 'ಫ಼್'],
+ ['0', '೦'],
+ ['1', '೧'],
+ ['2', '೨'],
+ ['3', '೩'],
+ ['4', '೪'],
+ ['5', '೫'],
+ ['6', '೬'],
+ ['7', '೭'],
+ ['8', '೮'],
+ ['9', '೯'],
+ ['//', 'ಽ']]
+ };
+
+ $.ime.register( knTransliteration );
+}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ks/ks-inscript.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ks/ks-inscript.js
new file mode 100644
index 00000000..06bcffe6
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ks/ks-inscript.js
@@ -0,0 +1,129 @@
+( function ( $ ) {
+ 'use strict';
+
+ var ksInScript = {
+ id: 'ks-inscript',
+ name: 'InScript',
+ description: 'InScript keyboard for Kashmiri language using Devanagari script',
+ date: '2013-02-09',
+ author: 'Parag Nemade',
+ license: 'GPLv3',
+ version: '1.0',
+ contextLength: 1,
+ maxKeyLength: 3,
+ patterns: [
+ ['्d', '्\u200c'],
+ ['ग_', 'ॻ'],
+ ['ज_', 'ॼ'],
+ ['ड_', 'ॾ'],
+ ['ब_', 'ॿ'],
+ ['\\!', 'ऍ'],
+ ['1', '१'],
+ ['\\@', 'ॅ'],
+ ['2', '२'],
+ ['\\#', '#'],
+ ['3', '३'],
+ ['\\$', '$'],
+ ['4', '४'],
+ ['5', '५'],
+ ['6', '६'],
+ ['7', '७'],
+ ['8', '८'],
+ ['\\(', '('],
+ ['9', '९'],
+ ['\\)', ')'],
+ ['0', '०'],
+ ['\\_', 'ः'],
+ ['\\-', '-'],
+ ['\\+', 'ऋ'],
+ ['\\=', 'ृ'],
+ ['Q', 'औ'],
+ ['q', 'ौ'],
+ ['W', 'ऐ'],
+ ['w', 'ै'],
+ ['E', 'आ'],
+ ['e', 'ा'],
+ ['R', 'ई'],
+ ['r', 'ी'],
+ ['T', 'ऊ'],
+ ['t', 'ू'],
+ ['Y', 'भ'],
+ ['y', 'ब'],
+ ['U', 'ङ'],
+ ['u', 'ह'],
+ ['I', 'घ'],
+ ['i', 'ग'],
+ ['O', 'ध'],
+ ['o', 'द'],
+ ['P', 'झ'],
+ ['p', 'ज'],
+ ['\\{', 'ढ'],
+ ['\\[', 'ड'],
+ ['\\}', 'ञ'],
+ ['\\]', '़'],
+ ['A', 'ओ'],
+ ['a', 'ो'],
+ ['S', 'ए'],
+ ['s', 'े'],
+ ['D', 'अ'],
+ ['d', '्'],
+ ['F', 'इ'],
+ ['f', 'ि'],
+ ['H', 'फ'],
+ ['h', 'प'],
+ ['J', 'ऱ'],
+ ['j', 'र'],
+ ['K', 'ख'],
+ ['k', 'क'],
+ ['L', 'थ'],
+ ['l', 'त'],
+ [':', 'छ'],
+ [';', 'च'],
+ ['\"', 'ठ'],
+ ['\'', 'ट'],
+ ['\\|', 'ऑ'],
+ ['\\\\', 'ॉ'],
+ ['\\~', 'ऒ'],
+ ['\\`', 'ॊ'],
+ ['Z', 'ऎ'],
+ ['z', 'ॆ'],
+ ['X', 'ँ'],
+ ['x', 'ं'],
+ ['C', 'ण'],
+ ['c', 'म'],
+ ['V', 'ऩ'],
+ ['v', 'न'],
+ ['B', 'ऴ'],
+ ['b', 'व'],
+ ['N', 'ळ'],
+ ['n', 'ल'],
+ ['M', 'श'],
+ ['m', 'स'],
+ ['\\<', 'ष'],
+ [',', ','],
+ ['\\>', '।'],
+ ['\\.', '.'],
+ ['\\?', 'य़'],
+ ['/', 'य'],
+ ['\\%', 'ज्ञ'],
+ ['\\^', 'त्र'],
+ ['\\&', 'क्ष'],
+ ['\\*', 'श्र']
+ ],
+ patterns_x: [
+ ['4', '₹'],
+ ['Q', 'ॵ'],
+ ['q', 'ॏ' ],
+ ['T', 'ॷ'],
+ ['t', 'ॗ'],
+ ['A', 'ॴ'],
+ ['a', 'ऻ'],
+ ['G', 'ॶ'],
+ ['g', 'ॖ'],
+ ['Z', 'ॳ'],
+ ['z', 'ऺ']
+ ]
+ };
+
+ $.ime.register( ksInScript );
+}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ks/ks-kbd.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ks/ks-kbd.js
new file mode 100644
index 00000000..4f01b12a
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ks/ks-kbd.js
@@ -0,0 +1,112 @@
+( function ( $ ) {
+ 'use strict';
+
+ var ksKbd = {
+ id: 'ks-Kbd',
+ name: 'Kbd',
+ description: 'Kbd keyboard for Kashmiri language using Arabic script',
+ date: '2013-02-09',
+ author: 'Parag Nemade',
+ license: 'GPLv3',
+ version: '1.0',
+ patterns: [
+ ['\\~', 'ٓ'],
+ ['\\!', '!'],
+ ['1', '۱'],
+ ['\\@', '@'],
+ ['2', '۲'],
+ ['\\#', '#'],
+ ['3', '۳'],
+ ['\\$', '$'],
+ ['4', '۴'],
+ ['5', '۵'],
+ ['6', '۶'],
+ ['7', '۷'],
+ ['8', '۸'],
+ ['\\(', ')'],
+ ['9', '۹'],
+ ['\\)', '('],
+ ['0', '۰'],
+ ['\\_', 'ّ'],
+ ['\\-', '-'],
+ ['\\+', '+'],
+ ['\\=', '='],
+ ['Q', 'ﷺ'],
+ ['q', 'ق'],
+ ['W', 'ؤ'],
+ ['w', 'و'],
+ ['E', 'ئ'],
+ ['e', 'ع'],
+ ['R', 'ڑ'],
+ ['r', 'ر'],
+ ['T', 'ٹ'],
+ ['t', 'ت'],
+ ['Y', '\u0601'],
+ ['y', 'ے'],
+ ['U', '،'],
+ ['u', 'ء'],
+ ['I', 'ۆ'],
+ ['i', 'ی'],
+ ['O', 'ۃ'],
+ ['o', 'ہ'],
+ ['P', 'إ'],
+ ['p', 'پ'],
+ ['\\{', 'ٰ'],
+ ['\\[', ']'],
+ ['\\}', 'ٰ'],
+ ['\\]', '['],
+ ['A', 'آ'],
+ ['a', 'ا'],
+ ['S', 'ش'],
+ ['s', 'س'],
+ ['D', 'ڈ'],
+ ['d', 'د'],
+ ['F', 'ُ'],
+ ['f', 'ف'],
+ ['G', 'غ'],
+ ['g', 'گ'],
+ ['H', 'ح'],
+ ['h', 'ھ'],
+ ['J', 'ژ'],
+ ['j', 'ج'],
+ ['K', 'خ'],
+ ['k', 'ک'],
+ ['L', 'ؓ'],
+ ['l', 'ل'],
+ [':', ':'],
+ [';', '؛'],
+ ['\"', '\"'],
+ ['\'', 'ٰ'],
+ ['\\|', 'أ'],
+ ['\\\\', '؎'],
+ ['\\~', 'ً'],
+ ['`', 'ٍ'],
+ ['Z', 'ذ'],
+ ['z', 'ز'],
+ ['X', 'ض'],
+ ['x', 'ص'],
+ ['C', 'ث'],
+ ['c', 'چ'],
+ ['V', 'ظ'],
+ ['v', 'ط'],
+ ['B', 'أ'],
+ ['b', 'ب'],
+ ['N', 'ں'],
+ ['n', 'ن'],
+ ['M', 'ٔ'],
+ ['m', 'م'],
+ ['\\>', 'َ'],
+ [',', '،'],
+ ['\\<', 'ِ'],
+ ['\\.', '۔'],
+ ['\\?', '؟'],
+ ['/', '/'],
+ ['\\%', '%'],
+ ['\\^', '^'],
+ ['\\&', '&'],
+ ['\\*', '*']
+ ]
+ };
+
+ $.ime.register( ksKbd );
+}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ku/ku-h.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ku/ku-h.js
new file mode 100644
index 00000000..2757885c
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ku/ku-h.js
@@ -0,0 +1,47 @@
+( function ( $ ) {
+ 'use strict';
+
+ var kuH = {
+ id: 'ku-h',
+ name: 'Kurdî-h',
+ description: 'writing Kurdish-letters adding h\'s',
+ date: '2013-06-26',
+ URL: 'http://github.com/wikimedia/jquery.ime',
+ author: 'Ghybu',
+ license: 'GPLv3',
+ version: '1.0',
+ contextLength: 1,
+ patterns: [
+ ['çh', 'h', 'ch'],
+ ['şh', 'h', 'sh'],
+ ['ḧh', 'h', 'hh'],
+ ['ẍh', 'h', 'xh'],
+ ['êe', 'e', 'ee'],
+ ['îi', 'i', 'ii'],
+ ['ûu', 'u', 'uu'],
+ ['Ç(H|h)', '(H|h)', 'C$1'],
+ ['Ş(H|h)', '(H|h)', 'S$1'],
+ ['Ḧ(H|h)', '(H|h)', 'H$1'],
+ ['Ẍ(H|h)', '(H|h)', 'X$1'],
+ ['Ê(E|e)', '(E|e)', 'E$1'],
+ ['Î(I|i)', '(I|i)', 'I$1'],
+ ['Û(U|u)', '(U|u)', 'U$1'],
+
+ ['ch', 'ç'],
+ ['sh', 'ş'],
+ ['hh', 'ḧ'],
+ ['xh', 'ẍ'],
+ ['ee', 'ê'],
+ ['ii', 'î'],
+ ['uu', 'û'],
+ ['C(H|h)', 'Ç'],
+ ['S(H|h)', 'Ş'],
+ ['H(H|h)', 'Ḧ'],
+ ['X(H|h)', 'Ẍ'],
+ ['E(E|e)', 'Ê'],
+ ['I(I|i)', 'Î'],
+ ['U(U|u)', 'Û']]
+ };
+
+ $.ime.register( kuH );
+}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ku/ku-tr.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ku/ku-tr.js
new file mode 100644
index 00000000..5853df6e
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ku/ku-tr.js
@@ -0,0 +1,32 @@
+( function ( $ ) {
+ 'use strict';
+
+ var kuTr = {
+ id: 'ku-tr',
+ name: 'Kurdî-tr',
+ description: 'writing Kurdish-letters using the TR keyboard',
+ date: '2013-06-26',
+ URL: 'http://github.com/wikimedia/jquery.ime',
+ author: 'Ghybu',
+ license: 'GPLv3',
+ version: '1.0',
+ contextLength: 1,
+ patterns: [
+ ['ḧh', 'h', 'hh'],
+ ['Ḧ(H|h)', '(H|h)', 'H$1'],
+
+ ['ğ', 'ẍ'],
+ ['ı', 'i'],
+ ['i', 'î'],
+ ['ö', 'ê'],
+ ['ü', 'û'],
+ ['hh', 'ḧ'],
+ ['Ğ', 'Ẍ'],
+ ['İ', 'Î'],
+ ['Ö', 'Ê'],
+ ['Ü', 'Û'],
+ ['H(H|h)', 'Ḧ']]
+ };
+
+ $.ime.register( kuTr );
+}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ky/ky-cyrl-alt.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ky/ky-cyrl-alt.js
new file mode 100644
index 00000000..3a9850a7
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ky/ky-cyrl-alt.js
@@ -0,0 +1,25 @@
+( function ( $ ) {
+ 'use strict';
+
+ var kyCyrlAlt = {
+ id: 'ky-cyrl-alt',
+ name: 'Кыргыз Alt',
+ description: 'Кыргыз Alt',
+ date: '2013-08-10',
+ URL: 'http://github.com/wikimedia/jquery.ime',
+ author: 'Amir (Алексей) Aharoni',
+ license: 'GPLv3',
+ version: '1.0',
+ patterns: [],
+ patterns_x: [
+ ['н', 'ң'],
+ ['Н', 'Ң'],
+ ['о', 'ө'],
+ ['О', 'Ө'],
+ ['у', 'ү'],
+ ['У', 'Ү']
+ ]
+ };
+
+ $.ime.register( kyCyrlAlt );
+}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/lo/lo-kbd.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/lo/lo-kbd.js
new file mode 100644
index 00000000..081b38b3
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/lo/lo-kbd.js
@@ -0,0 +1,122 @@
+( function ( $ ) {
+ 'use strict';
+
+ var loKbd = {
+ id: 'lo-kbd',
+ name: 'Lao kbd',
+ description: 'Lao kbd keyboard layout',
+ date: '2013-02-12',
+ URL: 'http://github.com/wikimedia/jquery.ime',
+ author: 'Parag Nemade',
+ license: 'GPLv3',
+ version: '1.0',
+ patterns: [
+ ['\\!', '1'],
+ ['\"', '='],
+ ['\\#', '3'],
+ ['\\$', '4'],
+ ['\\&', '5'],
+ ['\\%', '໌'],
+ ['\'', 'ງ'],
+ ['\\(', '7'],
+ ['\\)', '8'],
+ ['\\*', '6'],
+ ['\\+', 'ໍ'],
+ [',', 'ມ'],
+ ['\\-', 'ຊ'],
+ ['\\.', 'ໃ'],
+ ['/', 'ຝ'],
+ ['0', 'ຂ'],
+ ['1', 'ຢ'],
+ ['2', 'ຟ'],
+ ['3', 'ໂ'],
+ ['4', 'ຖ'],
+ ['5', 'ຸ'],
+ ['6', 'ູ'],
+ ['7', 'ຄ'],
+ ['8', 'ຕ'],
+ ['9', 'ຈ'],
+ [':', '%'],
+ [';', 'ວ'],
+ ['\\<', 'ໝ'],
+ ['\\=', 'ໍ'],
+ ['\\>', '$'],
+ ['\\?', ')'],
+ ['\\@', '2'],
+ ['A', 'ັ'],
+ ['B', 'ຶ'],
+ ['C', 'ຯ'],
+ ['D', '.'],
+ ['E', 'ຳ'],
+ ['F', ','],
+ ['G', ':'],
+ ['H', '໊'],
+ ['I', 'ຮ'],
+ ['J', '໋'],
+ ['K', '!'],
+ ['L', '?'],
+ ['M', 'ໆ'],
+ ['N', 'ື'],
+ ['O', 'ໜ'],
+ ['P', 'ຽ'],
+ ['Q', 'ົ'],
+ ['R', '_'],
+ ['S', ';'],
+ ['T', '+'],
+ ['U', 'ີ'],
+ ['V', 'x'],
+ ['W', '0'],
+ ['X', '('],
+ ['Y', 'ິ'],
+ ['Z', '\"'],
+ ['\\[', 'ບ'],
+ ['\\]', 'ລ'],
+ ['\\^', 'ຼ'],
+ ['\\_', '9'],
+ ['`', '*'],
+ ['a', 'ັ'],
+ ['b', 'ຶ'],
+ ['c', 'ແ'],
+ ['d', 'ກ'],
+ ['e', 'ຳ'],
+ ['f', 'ດ'],
+ ['g', 'ເ'],
+ ['h', '້'],
+ ['i', 'ຣ'],
+ ['j', '່'],
+ ['k', 'າ'],
+ ['l', 'ສ'],
+ ['m', 'ທ'],
+ ['n', 'ື'],
+ ['o', 'ນ'],
+ ['p', 'ຍ'],
+ ['q', 'ົ'],
+ ['r', 'ພ'],
+ ['s', 'ຫ'],
+ ['t', 'ະ'],
+ ['u', 'ີ'],
+ ['v', 'ອ'],
+ ['w', 'ໄ'],
+ ['x', 'ປ'],
+ ['y', 'ິ'],
+ ['z', 'ຜ'],
+ ['\\{', '-'],
+ ['\\|', 'ຫຼ'],
+ ['\\}', '/'],
+ ['~', '໌'],
+ ['\\\\', '\\'],
+ ['0', '໐'],
+ ['1', '໑'],
+ ['2', '໒'],
+ ['3', '໓'],
+ ['4', '໔'],
+ ['5', '໕'],
+ ['6', '໖'],
+ ['7', '໗'],
+ ['8', '໘'],
+ ['9', '໙']
+ ]
+ };
+
+ $.ime.register( loKbd );
+}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/lud/lud-transliteration.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/lud/lud-transliteration.js
new file mode 100644
index 00000000..cfc2aa78
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/lud/lud-transliteration.js
@@ -0,0 +1,29 @@
+( function ( $ ) {
+ 'use strict';
+
+ var mapping = {
+ id: 'lud-transliteration',
+ name: 'lud',
+ description: 'Ludic transliteration',
+ date: '2014-06-14',
+ URL: 'http://github.com/wikimedia/jquery.ime',
+ author: 'Niklas Laxström',
+ license: 'MIT',
+ version: '1.0',
+ contextLength: 0,
+ maxKeyLength: 2,
+ patterns: [
+ ['ch', 'č'],
+ ['C[hH]', 'Č'],
+ ['sh', 'š'],
+ ['S[hH]', 'Š'],
+ ['zh', 'ž'],
+ ['Z[hH]', 'Ž'],
+ ['y', 'ü'],
+ ['Y', 'Ü'],
+ ['\'', '’']
+ ]
+ };
+
+ $.ime.register( mapping );
+}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/mai/mai-inscript.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/mai/mai-inscript.js
new file mode 100644
index 00000000..849f3886
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/mai/mai-inscript.js
@@ -0,0 +1,22 @@
+( function ( $ ) {
+ 'use strict';
+
+ var hiInScript, maithiliPatterns, maithiliInScript;
+ hiInScript = $.ime.inputmethods['hi-inscript'];
+ maithiliPatterns = $.extend( hiInScript.patterns, [ [ 'z', '\u02BC' ] ] ); // apostrophe
+
+ maithiliInScript = {
+ id: 'mai-inscript',
+ name: 'इनस्क्रिप्ट',
+ description: 'InScript keyboard for Maithili',
+ date: '2011-02-26',
+ license: 'GPLv3',
+ version: '1.0',
+ contextLength: 0,
+ maxKeyLength: 1,
+ patterns: maithiliPatterns,
+ patterns_x: hiInScript.patterns_x
+ };
+
+ $.ime.register( maithiliInScript );
+}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/mai/mai-inscript2.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/mai/mai-inscript2.js
new file mode 100644
index 00000000..e228e9e9
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/mai/mai-inscript2.js
@@ -0,0 +1,25 @@
+( function ( $ ) {
+ 'use strict';
+
+ var hiInScript2, maithiliPatterns2, maithiliInScript2;
+
+ hiInScript2 = $.ime.inputmethods['hi-inscript2'];
+ maithiliPatterns2 = $.extend( hiInScript2.patterns,
+ [ [ 'z', '\u02BC' ] ]
+ ); // apostrophe
+
+ maithiliInScript2 = {
+ id: 'mai-inscript2',
+ name: 'इनस्क्रिप्ट २',
+ description: 'InScript2 keyboard for Maithili',
+ date: '2013-02-13',
+ license: 'GPLv3',
+ version: '1.0',
+ contextLength: 0,
+ maxKeyLength: 1,
+ patterns: maithiliPatterns2,
+ patterns_x: hiInScript2.patterns_x
+ };
+
+ $.ime.register( maithiliInScript2 );
+}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/mh/mh.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/mh/mh.js
new file mode 100644
index 00000000..108dd032
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/mh/mh.js
@@ -0,0 +1,43 @@
+/**
+ * Businesses and government offices in the Republic of the Marshall Islands typically use
+ * a font to replace eight letters that are typically unused in the Marshallese language
+ * with Marshallese letters.
+ * Sample English translations: http://mapmeld.github.com/olpc-rmi/laptops.html
+ * Pronunciation: http://www.rmiembassyus.org/Marshallese%20Phrasebook.htm
+ */
+
+( function ( $ ) {
+ 'use strict';
+
+ var mh = {
+ id: 'mh',
+ name: 'Kajin M̧ajeļ',
+ description: 'Marshallese Language',
+ date: '2013-03-29',
+ URL: 'http://github.com/wikimedia/jquery.ime',
+ author: 'Nick Doiron, <ndoiron@mapmeld.com>',
+ license: 'GPLv3',
+ version: '1.0',
+ patterns: [
+ ['Y', 'Ū'],
+ ['S', 'Ā'],
+ ['F', 'Ņ'],
+ ['G', 'N̄'],
+ ['H', 'M̧'],
+ ['X', 'O̧'],
+ ['C', 'Ō'],
+ ['V', 'Ļ'],
+
+ ['y', 'ū'],
+ ['s', 'ā'],
+ ['f', 'ņ'],
+ ['g', 'n̄'],
+ ['h', 'm̧'],
+ ['x', 'o̧'],
+ ['c', 'ō'],
+ ['v', 'ļ']
+ ]
+ };
+
+ $.ime.register( mh );
+}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ml/ml-inscript.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ml/ml-inscript.js
new file mode 100644
index 00000000..6a722618
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ml/ml-inscript.js
@@ -0,0 +1,90 @@
+( function ( $ ) {
+ 'use strict';
+
+ var inscript = {
+ id: 'ml-inscript',
+ name: 'ഇൻസ്ക്രിപ്റ്റ്',
+ description: 'Malayalam InScript',
+ date: '2012-10-03',
+ URL: 'http://github.com/wikimedia/jquery.ime',
+ author: 'Junaid P V',
+ license: 'GPLv3',
+ version: '1.0',
+ contextLength: 0,
+ maxKeyLength: 2,
+ patterns: [
+ [ '`', 'ൊ' ],
+ [ '~', 'ഒ' ],
+ [ '_', 'ഃ' ],
+ [ '=', 'ൃ' ],
+ [ '\\+', 'ഋ' ],
+ [ '\\\\', '\u200C' ],
+ [ 'q', 'ൗ' ],
+ [ 'Q', 'ഔ' ],
+ [ 'w', 'ൈ' ],
+ [ 'W', 'ഐ' ],
+ [ 'e', 'ാ' ],
+ [ 'E', 'ആ' ],
+ [ 'r', 'ീ' ],
+ [ 'R', 'ഈ' ],
+ [ 't', 'ൂ' ],
+ [ 'T', 'ഊ' ],
+ [ 'y', 'ബ' ],
+ [ 'Y', 'ഭ' ],
+ [ 'u', 'ഹ' ],
+ [ 'U', 'ങ' ],
+ [ 'i', 'ഗ' ],
+ [ 'I', 'ഘ' ],
+ [ 'o', 'ദ' ],
+ [ 'O', 'ധ' ],
+ [ 'p', 'ജ' ],
+ [ 'P', 'ഝ' ],
+ [ '\\[', 'ഡ' ],
+ [ '\\{', 'ഢ' ],
+ [ 'ണ്\\]', 'ൺ' ],
+ [ 'ന്\\]', 'ൻ' ],
+ [ 'ര്\\]', 'ർ' ],
+ [ 'ല്\\]', 'ൽ' ],
+ [ 'ള്\\]', 'ൾ' ],
+ [ 'ക്\\]', 'ൿ' ],
+ [ '\\}', 'ഞ' ],
+ [ 'a', 'ോ' ],
+ [ 'A', 'ഓ' ],
+ [ 's', 'േ' ],
+ [ 'S', 'ഏ' ],
+ [ 'd', '്' ],
+ [ 'D', 'അ' ],
+ [ 'f', 'ി' ],
+ [ 'F', 'ഇ' ],
+ [ 'g', 'ു' ],
+ [ 'G', 'ഉ' ],
+ [ 'h', 'പ' ],
+ [ 'H', 'ഫ' ],
+ [ 'j', 'ര' ],
+ [ 'J', 'റ' ],
+ [ 'k', 'ക' ],
+ [ 'K', 'ഖ' ],
+ [ 'l', 'ത' ],
+ [ 'L', 'ഥ' ],
+ [ ';', 'ച' ],
+ [ ':', 'ഛ' ],
+ [ '\'', 'ട' ],
+ [ '"', 'ഠ' ],
+ [ 'z', 'െ' ],
+ [ 'Z', 'എ' ],
+ [ 'x', 'ം' ],
+ [ 'c', 'മ' ],
+ [ 'C', 'ണ' ],
+ [ 'v', 'ന' ],
+ [ 'b', 'വ' ],
+ [ 'B', 'ഴ' ],
+ [ 'n', 'ല' ],
+ [ 'N', 'ള' ],
+ [ 'm', 'സ' ],
+ [ 'M', 'ശ' ],
+ [ '<', 'ഷ' ],
+ [ '/', 'യ' ] ]
+ };
+
+ $.ime.register( inscript );
+}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ml/ml-inscript2.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ml/ml-inscript2.js
new file mode 100644
index 00000000..9c609485
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ml/ml-inscript2.js
@@ -0,0 +1,132 @@
+( function ( $ ) {
+ 'use strict';
+
+ var mlInScript2 = {
+ id: 'ml-inscript2',
+ name: 'ഇൻസ്ക്രിപ്റ്റ് 2',
+ description: 'Enhanced InScript for Malayalam InScript',
+ date: '2013-01-16',
+ URL: 'http://github.com/wikimedia/jquery.ime',
+ author: 'Parag Nemade',
+ license: 'GPLv3',
+ version: '1.0',
+ contextLength: 0,
+ maxKeyLength: 2,
+ patterns: [
+ ['1', '൧'],
+ ['2', '൨'],
+ ['3', '൩'],
+ ['\\#', '്ര'],
+ ['4', '൪'],
+ ['5', '൫'],
+ ['6', '൬'],
+ ['7', '൭'],
+ ['\\&', 'ക്ഷ'],
+ ['8', '൮'],
+ ['\\*', 'ൾ'],
+ ['\\(', '('],
+ ['9', '൯'],
+ ['\\)', ')'],
+ ['0', '൦'],
+ ['\\_', 'ഃ'],
+ ['\\-', '-'],
+ ['\\+', 'ഋ'],
+ ['\\=', 'ൃ'],
+ ['Q', 'ഔ'],
+ ['q', 'ൗ'],
+ ['W', 'ഐ'],
+ ['w', 'ൈ'],
+ ['E', 'ആ'],
+ ['e', 'ാ'],
+ ['R', 'ഈ'],
+ ['r', 'ീ'],
+ ['T', 'ഊ'],
+ ['t', 'ൂ'],
+ ['Y', 'ഭ'],
+ ['y', 'ബ'],
+ ['U', 'ങ'],
+ ['u', 'ഹ'],
+ ['I', 'ഘ'],
+ ['i', 'ഗ'],
+ ['O', 'ധ'],
+ ['o', 'ദ'],
+ ['P', 'ഝ'],
+ ['p', 'ജ'],
+ ['\\{', 'ഢ'],
+ ['\\[', 'ഡ'],
+ ['\\}', 'ഞ'],
+ ['\\\\', 'ർ'],
+ ['A', 'ഓ'],
+ ['a', 'ോ'],
+ ['S', 'ഏ'],
+ ['s', 'േ'],
+ ['D', 'അ'],
+ ['d', '്'],
+ ['F', 'ഇ'],
+ ['f', 'ി'],
+ ['G', 'ഉ'],
+ ['g', 'ു'],
+ ['H', 'ഫ'],
+ ['h', 'പ'],
+ ['J', 'റ'],
+ ['j', 'ര'],
+ ['K', 'ഖ'],
+ ['k', 'ക'],
+ ['L', 'ഥ'],
+ ['l', 'ത'],
+ [':', 'ഛ'],
+ [';', 'ച'],
+ ['"', 'ഠ'],
+ ['\\\'', 'ട'],
+ ['\\~', 'ഒ'],
+ ['\\`', 'ൊ'],
+ ['Z', 'എ'],
+ ['z', 'െ'],
+ ['X', 'ൺ'],
+ ['x', 'ം'],
+ ['C', 'ണ'],
+ ['c', 'മ'],
+ ['V', 'ൻ'],
+ ['v', 'ന'],
+ ['B', 'ഴ'],
+ ['b', 'വ'],
+ ['N', 'ള'],
+ ['n', 'ല'],
+ ['M', 'ശ'],
+ ['m', 'സ'],
+ ['\\<', 'ഷ'],
+ [',', ','],
+ ['\\>', 'ൽ'],
+ ['\\.', '.'],
+ ['/', 'യ']
+ ],
+ patterns_x: [
+ ['1', '\u200d'],
+ ['\\!', '൰'],
+ ['2', '\u200c'],
+ ['\\@', '൱'],
+ ['\\#', '൲'],
+ ['\\$', '൳'],
+ ['4', '₹'],
+ ['\\%', '൴'],
+ ['\\^', '൵'],
+ ['\\+', 'ൠ'],
+ ['\\=', 'ൄ'],
+ ['q', 'ൌ'],
+ ['R', 'ൡ'],
+ ['r', 'ൣ'],
+ ['F', 'ഌ'],
+ ['f', 'ൢ'],
+ ['j', 'ർ'],
+ ['k', 'ൿ'],
+ ['c', 'ൺ'],
+ ['v', '൹'],
+ ['N', 'ൾ'],
+ ['n', 'ൽ'],
+ ['\\>', 'ഽ'],
+ ['\\.', '॥']
+ ]
+ };
+
+ $.ime.register( mlInScript2 );
+}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ml/ml-transliteration.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ml/ml-transliteration.js
new file mode 100644
index 00000000..ee0f803f
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ml/ml-transliteration.js
@@ -0,0 +1,338 @@
+( function ( $ ) {
+ 'use strict';
+
+ var mltransliteration = {
+ id: 'ml-transliteration',
+ name: 'ലിപ്യന്തരണം',
+ description: 'Malayalam Transliteration based input method',
+ date: '2012-10-03',
+ URL: 'http://github.com/wikimedia/jquery.ime',
+ author: 'Junaid P V',
+ license: 'GPLv3',
+ version: '1.0',
+ contextLength: 2,
+ maxKeyLength: 4,
+ patterns: [
+ [ '(\u200c)+a', 'അ' ],
+ [ '(\u200c)+A', 'ആ' ],
+ [ '(\u200c)+i', 'ഇ' ],
+ [ '(\u200c)+u', 'ഉ' ],
+ [ '(\u200c)+U', 'ഊ' ],
+ [ '(\u200c)+R', 'ഋ' ],
+ [ '(\u200c)+e', 'എ' ],
+ [ '(\u200c)+E', 'ഏ' ],
+ [ '(\u200c)+I', 'ഐ' ],
+ [ '(\u200c)+o', 'ഒ' ],
+ [ '(\u200c)+O', 'ഓ' ],
+ [ '(\u200c)+H', 'ഃ' ],
+ [ 'ൻൿh', 'nc', 'ഞ്ച്' ],
+ [ 'ൿh', 'c', 'ച്' ],
+ [ 'ക്ക്h', 'cc', 'ച്ച്' ],
+ [ 'ല്പ്p', 'lp', 'ൽപ്പ്' ],
+
+ [ '\\\\([A-Za-z\\>_~])', '\\\\', '$1' ],
+
+ [ '([ക-ഹ])്R', '$1ൃ' ],
+ [ 'ന്ന്j', 'ഞ്ഞ്' ],
+ [ 'ന്ന്g', 'ങ്ങ്' ],
+ [ 'റ്റ്h', 'ത്' ],
+ [ 'റ്റ്t', 'ട്ട്' ],
+ [ 'ന്റ്h', 'ന്ത്' ],
+ [ '([ക-ഹ])്ല്l', 'L', '$1\u0d62' ],
+ [ '([ക-ഹ])\u0d62l', '$1\u0d63' ],
+ [ '([അ-ഊഌഎ-ഐഒ-ഹ])([ഽ-ൂെ-ൌൗ])+R', '$1$2റ്' ],
+ [ '([ക-ഹ])ൃa', '$1്ര' ],
+ [ '([ക-ഹ])ൃA', '$1്രാ' ],
+ [ '([ക-ഹ])ൃi', '$1്രി' ],
+ [ '([ക-ഹ])ൃI', '$1്രീ' ],
+ [ '([ക-ഹ])ൃu', '$1്രു' ],
+ [ '([ക-ഹ])ൃU', '$1്രൂ' ],
+ [ '([ക-ഹ])ൃe', '$1്രെ' ],
+ [ '([ക-ഹ])ൃE', '$1്രേ' ],
+ [ '([ക-ഹ])ൃo', '$1്രൊ' ],
+ [ '([ക-ഹ])ൃO', '$1്രോ' ],
+ [ '([ക-ഹ])്(l|L)', '$1്ല്' ],
+ [ 'അa', 'ആ' ],
+ [ 'അi', 'ഐ' ],
+ [ 'അu', 'ഔ' ],
+ [ 'ഇi', 'ഈ' ],
+ [ 'ഉu', 'ഊ' ],
+ [ 'ഊo', 'ഊഊ' ],
+ [ 'ഋR', 'ൠ' ],
+ [ 'ഋa', 'റ' ],
+ [ 'ഋA', 'റാ' ],
+ [ 'ഋi', 'റി' ],
+ [ 'ഋI', 'റീ' ],
+ [ 'ഋu', 'റു' ],
+ [ 'ഋU', 'റൂ' ],
+ [ 'ഋe', 'റെ' ],
+ [ 'ഋE', 'റേ' ],
+ [ 'ഋo', 'റൊ' ],
+ [ 'ഋO', 'റോ' ],
+ [ 'ഋ~', 'റ്' ],
+ [ 'ഌl', 'ൡ' ],
+ [ 'എe', 'ഈ' ],
+ [ 'ഒo', 'ഊ' ],
+ [ 'ാa', 'ാാ' ],
+ [ 'ീi', 'ീീ' ],
+ [ 'ൂu', 'ൂൂ' ],
+ [ 'ൂo', 'ൂൂ' ],
+ [ 'ൄR', 'ൄൄ' ],
+ [ 'േE', 'േേ' ],
+ [ 'ോO', 'ോോ' ],
+ [ 'ൗu', 'ൗൗ' ],
+ [ '\u0d62\\^', '\u0d63' ],
+ [ '\u0d63\\^', '\u0d63\u0d63' ],
+ [ 'ക്h', 'ഖ്' ],
+ [ 'ഗ്h', 'ഘ്' ],
+ [ 'ൻg', 'ങ്' ],
+ [ 'ച്h', 'ഛ്' ],
+ [ 'ജ്h', 'ഝ്' ],
+ [ 'ട്h', 'ഠ്' ],
+ [ 'ഡ്h', 'ഢ്' ],
+ [ 'ത്h', 'ഥ്' ],
+ [ 'ദ്h', 'ധ്' ],
+ [ 'പ്h', 'ഫ്' ],
+ [ 'ബ്h', 'ഭ്' ],
+ [ 'ംa', 'മ' ],
+ [ 'ംA', 'മാ' ],
+ [ 'ംi', 'മി' ],
+ [ 'ംI', 'മീ' ],
+ [ 'ംu', 'മു' ],
+ [ 'ംU', 'മൂ' ],
+ [ 'ംR', 'മൃ' ],
+ [ 'ംe', 'മെ' ],
+ [ 'ംE', 'മേ' ],
+ [ 'ംo', 'മൊ' ],
+ [ 'ംO', 'മോ' ],
+ [ 'ംm', 'മ്മ്' ],
+ [ '([^സ])ംr', '$1മ്ര്' ],
+ [ 'ംp', 'മ്പ്' ],
+ [ '([^സ])ം(l|L)', '$1മ്ല്' ],
+ [ 'ം~', 'മ്' ],
+ [ '([^സ])ംn', '$1മ്ന്' ],
+ [ '([^സ])ംy', '$1മ്യ്' ],
+ [ 'സ്h', 'ഷ്' ],
+ [ 'ശ്h', 'ഴ്' ],
+ [ 'ൺ\\\\\\\\', 'ണ്\u200d' ], // old style chillu N
+ [ 'ൺ~', 'ണ്' ],
+ [ 'ൺR', 'ണൃ' ],
+ [ 'ൺN', 'ണ്ണ്' ],
+ [ 'ൺT', 'ണ്ട്' ],
+ [ 'ൺD', 'ണ്ഡ്' ],
+ [ 'ൺy', 'ണ്യ്' ],
+ [ 'ൺv', 'ണ്വ്' ],
+ [ 'ൺm', 'ണ്മ്' ],
+ [ 'ൻ\\\\\\\\', 'ന്\u200d' ], // old style chillu n
+ [ 'ൻ~', 'ന്' ],
+ [ 'ൻr', 'ന്ര്' ],
+ [ 'ൻR', 'നൃ' ],
+ [ 'ൻk', 'ങ്ക്' ],
+ [ 'ൻj', 'ഞ്' ],
+ [ 'ൻn', 'ന്ന്' ],
+ [ 'ൻd', 'ന്ദ്' ],
+ [ 'ൻt', 'ന്റ്' ],
+ [ 'ൻm', 'ന്മ്' ],
+ [ 'ൻL', 'ന്ല്' ],
+ [ 'ൻv', 'ന്വ്' ],
+ [ 'ൻy', 'ന്യ്' ],
+ [ 'ർ\\\\\\\\', 'ര്\u200d' ], // old style chill r
+ [ 'ർ~', 'ര്' ],
+ [ 'ർ#', 'ൎ' ], // dot repha
+ [ 'ർr', 'റ്' ],
+ [ 'ർR', 'രൃ' ],
+ [ 'ർy', 'ര്യ്' ],
+ [ 'ൽ\\\\\\\\', 'ല്\u200d' ], // old style chillu l
+ [ 'ൽ~', 'ല്' ],
+ [ 'ൽR', 'ലൃ' ],
+ [ 'ൽ(l|L)', 'ല്ല്' ],
+ [ 'ൽp', 'ല്പ്' ],
+ [ 'ൽy', 'ല്യ്' ],
+ [ 'ൽv', 'ല്വ്' ],
+ [ 'ൾ\\\\\\\\', 'ള്\u200d' ], // old style chillu L
+ [ 'ൾ~', 'ള്' ],
+ [ 'ൾR', 'ളൃ' ],
+ [ 'ൾL', 'ള്ള്' ],
+ [ 'ൾy', 'ള്യ്' ],
+ [ 'ൾl', 'ഌ' ],
+ [ 'ൿ\\\\\\\\', 'ക്\u200d' ], // old style chillu k
+ [ 'ൿR', 'കൃ' ],
+ [ 'ൿy', 'ക്യ്' ],
+ [ 'ൿ(l|L)', 'ക്ല്' ],
+ [ 'ൿv', 'ക്വ്' ],
+ [ 'ൿ(k|c)', 'ക്ക്' ],
+ [ '([ക-ഹ])a', '$1ാ' ],
+ [ '([ക-ഹ])്a', '$1' ],
+ [ 'ൺa', 'ണ' ],
+ [ 'ൻa', 'ന' ],
+ [ 'ർa', 'ര' ],
+ [ 'ൽa', 'ല' ],
+ [ 'ൾa', 'ള' ],
+ [ 'ൿa', 'ക' ],
+ [ '([ക-ഹ])്A', '$1ാ' ],
+ [ 'ൺA', 'ണാ' ],
+ [ 'ൻA', 'നാ' ],
+ [ 'ർA', 'രാ' ],
+ [ 'ൽA', 'ലാ' ],
+ [ 'ൾA', 'ളാ' ],
+ [ 'ൿA', 'കാ' ],
+ [ '([ക-ഹ])്i', '$1ി' ],
+ [ 'ൺi', 'ണി' ],
+ [ 'ൻi', 'നി' ],
+ [ 'ർi', 'രി' ],
+ [ 'ൽi', 'ലി' ],
+ [ 'ൾi', 'ളി' ],
+ [ 'ൿi', 'കി' ],
+ [ '([ക-ഹ])്I', '$1ീ' ],
+ [ 'ൺI', 'ണീ' ],
+ [ 'ൻI', 'നീ' ],
+ [ 'ർI', 'രീ' ],
+ [ 'ൽI', 'ലീ' ],
+ [ 'ൾI', 'ളീ' ],
+ [ 'ൿI', 'കീ' ],
+ [ '([ക-ഹ])ിi', '$1ീ' ],
+ [ '([ക-ഹ])െe', '$1ീ' ],
+ [ '([ക-ഹ])്u', '$1ു' ],
+ [ 'ൺu', 'ണു' ],
+ [ 'ൻu', 'നു' ],
+ [ 'ർu', 'രു' ],
+ [ 'ൽu', 'ലു' ],
+ [ 'ൾu', 'ളു' ],
+ [ 'ൿu', 'കു' ],
+ [ '([ക-ഹ])്U', '$1ൂ' ],
+ [ '([ക-ഹ])ുu', '$1ൂ' ],
+ [ 'ൺU', 'ണൂ' ],
+ [ 'ൻU', 'നൂ' ],
+ [ 'ർU', 'രൂ' ],
+ [ 'ൽU', 'ലൂ' ],
+ [ 'ൾU', 'ളൂ' ],
+ [ 'ൿU', 'കൂ' ],
+ [ '([ക-ഹ])ൊo', '$1ൂ' ],
+ [ '([ക-ഹ])ൃR', '$1ൄ' ],
+ [ '([ക-ഹ])്e', '$1െ' ],
+ [ 'ൺe', 'ണെ' ],
+ [ 'ൻe', 'നെ' ],
+ [ 'ർe', 'രെ' ],
+ [ 'ൽe', 'ലെ' ],
+ [ 'ൾe', 'ളെ' ],
+ [ 'ൿe', 'കെ' ],
+ [ '([ക-ഹ])്E', '$1േ' ],
+ [ 'ൺE', 'ണേ' ],
+ [ 'ൻE', 'നേ' ],
+ [ 'ർE', 'രേ' ],
+ [ 'ൽE', 'ലേ' ],
+ [ 'ൾE', 'ളേ' ],
+ [ 'ൿE', 'കേ' ],
+ [ '([ക-ഹ])i', '$1ൈ' ],
+ [ '([ക-ഹ])്o', '$1ൊ' ],
+ [ 'ൺo', 'ണൊ' ],
+ [ 'ൻo', 'നൊ' ],
+ [ 'ർo', 'രൊ' ],
+ [ 'ൽo', 'ലൊ' ],
+ [ 'ൾo', 'ളൊ' ],
+ [ 'ൿo', 'കൊ' ],
+ [ '([ക-ഹ])്O', '$1ോ' ],
+ [ 'ൺO', 'ണോ' ],
+ [ 'ൻO', 'നോ' ],
+ [ 'ർO', 'രോ' ],
+ [ 'ൽO', 'ലോ' ],
+ [ 'ൾO', 'ളോ' ],
+ [ 'ൿO', 'കോ' ],
+ [ '([ക-ഹ])u', '$1ൗ' ],
+ [ '([ക-ഹ])U', '$1ൌ' ],
+ [ '([അ-്])m', '$1ം' ],
+ [ '\\\\0', '൦' ], // escape to ml digit 0 by \0
+ [ '\\\\1', '൧' ], // escape to ml digit 1 by \1
+ [ '\\\\2', '൨' ], // escape to ml digit 2 by \2
+ [ '\\\\3', '൩' ], // escape to ml digit 3 by \3
+ [ '\\\\4', '൪' ], // escape to ml digit 4 by \4
+ [ '\\\\5', '൫' ], // escape to ml digit 5 by \5
+ [ '\\\\6', '൬' ], // escape to ml digit 6 by \6
+ [ '\\\\7', '൭' ], // escape to ml digit 7 by \7
+ [ '\\\\8', '൮' ], // escape to ml digit 8 by \8
+ [ '\\\\9', '൯' ], // escape to ml digit 9 by \9
+ [ 'മ്\\\\', 'ം' ],
+ [ 'ആ\\\\', 'ാ' ],
+ [ 'ഇ\\\\', 'ി' ],
+ [ 'ഈ\\\\', 'ീ' ],
+ [ 'ഉ\\\\', 'ു' ],
+ [ 'ഊ\\\\', 'ൂ' ],
+ [ 'ഋ\\\\', 'ൃ' ],
+ [ 'ൠ\\\\', 'ൄ' ],
+ [ 'എ\\\\', 'െ' ],
+ [ 'ഏ\\\\', 'േ' ],
+ [ 'ഐ\\\\', 'ൈ' ],
+ [ 'ഒ\\\\', 'ൊ' ],
+ [ 'ഓ\\\\', 'ോ' ],
+ [ 'ഔ\\\\', 'ൗ' ],
+ [ 'ൗ\\\\', 'ൌ' ],
+ [ 'ഌ\\\\', 'ൢ' ],
+ [ 'ൡ\\\\', 'ൣ' ],
+ [ '(([ൺ-ൿം])\u200c+)?A', '$2ആ' ],
+ [ '(([ൺ-ൿം])\u200c+)?B', '$2ബ്ബ്' ],
+ [ '(([ൺ-ൿം])\u200c+)?C', '$2ച്ച്' ],
+ [ '(([ൺ-ൿം])\u200c+)?D', '$2ഡ്' ],
+ [ '(([ൺ-ൿം])\u200c+)?E', '$2ഏ' ],
+ [ '(([ൺ-ൿം])\u200c+)?F', '$2ഫ്' ],
+ [ '(([ൺ-ൿം])\u200c+)?G', '$2ഗ്ഗ്' ],
+ [ '(([ൺ-ൿം])\u200c+)?H', '$2ഃ' ],
+ [ '(([ൺ-ൿം])\u200c+)?I', '$2ഐ' ],
+ [ '(([ൺ-ൿം])\u200c+)?J', '$2ജ്ജ്' ],
+ [ '(([ൺ-ൿം])\u200c+)?K', '$2ക്ക്' ],
+ [ '(([ൺ-ൿം])\u200c+)?L', '$2ൾ' ],
+ [ '(([ൺ-ൿം])\u200c+)?M', '$2മ്മ്' ],
+ [ '(([ൺ-ൿം])\u200c+)?N', '$2ൺ' ],
+ [ '(([ൺ-ൿം])\u200c+)?O', '$2ഓ' ],
+ [ '(([ൺ-ൿം])\u200c+)?P', '$2പ്പ്' ],
+ [ '(([ൺ-ൿം])\u200c+)?Q', '$2ക്യ്' ],
+ [ '(([ൺ-ൿം])\u200c+)?R', '$2ഋ' ],
+ [ '(([ൺ-ൿം])\u200c+)?(S|z)', '$2ശ്' ],
+ [ '(([ൺ-ൿം])\u200c+)?T', '$2ട്' ],
+ [ '(([ൺ-ൿം])\u200c+)?U', '$2ഊ' ],
+ [ '(([ൺ-ൿം])\u200c+)?(V|W)', '$2വ്വ്' ],
+ [ '(([ൺ-ൿം])\u200c+)?X', '$2ക്ഷ്' ],
+ [ '(([ൺ-ൿം])\u200c+)?Y', '$2യ്യ്' ],
+ [ '(([ൺ-ൿം])\u200c+)?Z', '$2ശ്ശ്' ],
+ [ '(([ൺ-ൿം])\u200c+)?a', '$2അ' ],
+ [ '(([ൺ-ൿം])\u200c+)?b', '$2ബ്' ],
+ [ '(([ൺ-ൿം])\u200c+)?c', '$2ൿ' ],
+ [ '(([ൺ-ൿം])\u200c+)?d', '$2ദ്' ],
+ [ '(([ൺ-ൿം])\u200c+)?e', '$2എ' ],
+ [ '(([ൺ-ൿം])\u200c+)?f', '$2ഫ്' ],
+ [ '(([ൺ-ൿം])\u200c+)?g', '$2ഗ്' ],
+ [ '(([ൺ-ൿം])\u200c+)?h', '$2ഹ്' ],
+ [ '(([ൺ-ൿം])\u200c+)?i', '$2ഇ' ],
+ [ '(([ൺ-ൿം])\u200c+)?j', '$2ജ്' ],
+ [ '(([ൺ-ൿം])\u200c+)?k', '$2ക്' ],
+ [ '(([ൺ-ൿം])\u200c+)?l', '$2ൽ' ],
+ [ '(([ൺ-ൿം])\u200c+)?m', '$2മ്' ],
+ [ '(([ൺ-ൿം])\u200c+)?n', '$2ൻ' ],
+ [ '(([ൺ-ൿം])\u200c+)?o', '$2ഒ' ],
+ [ '(([ൺ-ൿം])\u200c+)?p', '$2പ്' ],
+ [ '(([ൺ-ൿം])\u200c+)?q', '$2ക്ക്' ],
+ [ '(([ൺ-ൿം])\u200c+)?r', '$2ർ' ],
+ [ '(([ൺ-ൿം])\u200c+)?s', '$2സ്' ],
+ [ '(([ൺ-ൿം])\u200c+)?t', '$2റ്റ്' ], // tta according to 5.1
+ [ '(([ൺ-ൿം])\u200c+)?u', '$2ഉ' ],
+ [ '(([ൺ-ൿം])\u200c+)?(v|w)', '$2വ്' ],
+ [ '(([ൺ-ൿം])\u200c+)?x', '$2ക്ഷ്' ],
+ [ '(([ൺ-ൿം])\u200c+)?y', '$2യ്' ],
+ [ '(([ൺ-ൿം])\u200c+)?~', '$2്' ],
+ [ '(\u200C)*_', '\u200c' ],
+ [ '//', 'ഽ' ],
+ [ '1/4\\\\', '൳' ],
+ [ '1/2\\\\', '൴' ],
+ [ '3/4\\\\', '൵' ],
+ [ '10\\\\', '\u0D70' ],
+ [ '100\\\\', '\u0D71' ],
+ [ '1000\\\\', '\u0D72' ],
+ [ '\\-\\-\\-\\\\', '—' ], // em dash
+ [ '\\-\\-\\\\', '–' ], // en dash
+ [ '\\\\\\-', '−' ],
+ [ '\\\\\\*', '×' ],
+ [ '\\\\/', '÷' ] ]
+
+ };
+
+ $.ime.register( mltransliteration );
+}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/mn/mn-cyrl.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/mn/mn-cyrl.js
new file mode 100644
index 00000000..50120b8c
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/mn/mn-cyrl.js
@@ -0,0 +1,118 @@
+/**
+ * This is my work based on Git for the very first time, which is an input method for the Mongolian
+ * Cyrillic script. If the program has any errors, please understand that and contact me. I will
+ * change the errors in a few days.
+ */
+
+( function ( $ ) {
+ 'use strict';
+
+ var mncyrl = {
+ id: 'mn-cyrl',
+ name: 'Mongolian Cyrillic',
+ description: 'Mongolian Cyrillic Input Method',
+ date: '2012-10-25',
+ URL: 'http://github.com/wikimedia/jquery.ime',
+ author: 'Kevin K.S. Leung, <sprconan@gmail.com>',
+ license: 'GPLv3',
+ version: '1.0',
+ patterns: [
+ ['Q', 'Ф'],
+ ['W', 'Ц'],
+ ['E', 'У'],
+ ['R', 'Ж'],
+ ['T', 'Э'],
+ ['Y', 'Н'],
+ ['U', 'Г'],
+ ['I', 'Ш'],
+ ['O', 'Ү'],
+ ['P', 'З'],
+ ['{', 'К'],
+ ['}', 'Ъ'],
+ ['A', 'Й'],
+ ['S', 'Ы'],
+ ['D', 'Б'],
+ ['F', 'Ө'],
+ ['G', 'А'],
+ ['H', 'Х'],
+ ['J', 'Р'],
+ ['K', 'О'],
+ ['L', 'Л'],
+ [':', 'Д'],
+ ['"', 'П'],
+ ['Z', 'Я'],
+ ['X', 'Ч'],
+ ['C', 'Ё'],
+ ['V', 'С'],
+ ['B', 'М'],
+ ['N', 'И'],
+ ['M', 'Т'],
+ ['<', 'Ь'],
+ ['>', 'В'],
+ ['\\?', 'Ю'],
+ ['_', 'Е'],
+ ['\\+', 'Щ'],
+
+ ['q', 'ф'],
+ ['w', 'ц'],
+ ['e', 'у'],
+ ['r', 'ж'],
+ ['t', 'э'],
+ ['y', 'н'],
+ ['u', 'г'],
+ ['i', 'ш'],
+ ['o', 'ү'],
+ ['p', 'з'],
+ ['\\[', 'к'],
+ ['\\]', 'ъ'],
+ ['a', 'й'],
+ ['s', 'ы'],
+ ['d', 'б'],
+ ['f', 'ө'],
+ ['g', 'а'],
+ ['h', 'х'],
+ ['j', 'р'],
+ ['k', 'о'],
+ ['l', 'л'],
+ [';', 'д'],
+ ['\'', 'п'],
+ ['z', 'я'],
+ ['x', 'ч'],
+ ['c', 'ё'],
+ ['v', 'с'],
+ ['b', 'м'],
+ ['n', 'и'],
+ ['m', 'т'],
+ [',', 'ь'],
+ ['\\.', 'в'],
+ ['/', 'ю'],
+ ['\\-', 'е'],
+ ['=', 'щ'],
+
+ ['`', '='],
+ ['~', '+'],
+ ['1', '№'],
+ ['2', '-'],
+ ['3', '"'],
+ ['4', '₮'],
+ ['5', ':'],
+ ['6', '.'],
+ ['7', '_'],
+ ['8', ','],
+ ['9', '%'],
+ ['0', '?'],
+ ['!', '1'],
+ ['@', '2'],
+ ['#', '3'],
+ ['\\$', '4'],
+ ['%', '5'],
+ ['^', '6'],
+ ['&', '7'],
+ ['*', '8'],
+ ['\\(', '9'],
+ ['\\)', '0']
+ ]
+ };
+
+ $.ime.register( mncyrl );
+}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/mni/mni-inscript2.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/mni/mni-inscript2.js
new file mode 100644
index 00000000..2fb463e0
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/mni/mni-inscript2.js
@@ -0,0 +1,125 @@
+( function ( $ ) {
+ 'use strict';
+
+ var mniInScript2 = {
+ id: 'mni-inscript2',
+ name: 'ইনস্ক্ৰিপ্ট ২',
+ description: 'Enhanced InScript keyboard for Manipuri language using Bengali script',
+ date: '2013-02-13',
+ URL: 'http://github.com/wikimedia/jquery.ime',
+ author: 'Parag Nemade',
+ license: 'GPLv3',
+ version: '1.0',
+ patterns: [
+ ['\\!', 'অ্যা'],
+ ['1', '১'],
+ ['2', '২'],
+ ['\\#', '্র'],
+ ['3', '৩'],
+ ['\\$', 'র্'],
+ ['4', '৪'],
+ ['\\%', 'জ্ঞ'],
+ ['5', '৫'],
+ ['\\^', 'ত্র'],
+ ['6', '৬'],
+ ['\\&', 'ক্ষ'],
+ ['7', '৭'],
+ ['\\*', 'শ্র'],
+ ['8', '৮'],
+ ['9', '৯'],
+ ['\\(', '('],
+ ['\\)', ')'],
+ ['0', '০'],
+ ['\"', 'ঠ'],
+ ['\'', 'ট'],
+ [',', ','],
+ ['-', '-'],
+ ['\\.', '.'],
+ ['/', 'য়'],
+ [':', 'ছ'],
+ [';', 'চ'],
+ ['\\<', 'ষ'],
+ ['\\=', 'ৃ'],
+ ['\\+', 'ঋ'],
+ ['\\>', '।'],
+ ['\\?', 'য'],
+ ['A', 'ও'],
+ ['C', 'ণ'],
+ ['D', 'অ'],
+ ['E', 'আ'],
+ ['F', 'ই'],
+ ['G', 'উ'],
+ ['H', 'ফ'],
+ ['I', 'ঘ'],
+ ['K', 'খ'],
+ ['L', 'থ'],
+ ['M', 'শ'],
+ ['O', 'ধ'],
+ ['P', 'ঝ'],
+ ['Q', 'ঔ'],
+ ['R', 'ঈ'],
+ ['S', 'এ'],
+ ['T', 'ঊ'],
+ ['U', 'ঙ'],
+ ['W', 'ঐ'],
+ ['X', 'ঁ'],
+ ['Y', 'ভ'],
+ ['\\{', 'ঢ'],
+ ['\\[', 'ড'],
+ ['\\}', 'ঞ'],
+ ['\\]', '়'],
+ ['\\_', 'ঃ'],
+ ['a', 'ো'],
+ ['c', 'ম'],
+ ['d', '্'],
+ ['e', 'া'],
+ ['f', 'ি'],
+ ['g', 'ু'],
+ ['h', 'প'],
+ ['i', 'গ'],
+ ['j', 'র'],
+ ['k', 'ক'],
+ ['l', 'ত'],
+ ['m', 'স'],
+ ['n', 'ল'],
+ ['o', 'দ'],
+ ['p', 'জ'],
+ ['q', 'ৌ'],
+ ['r', 'ী'],
+ ['s', 'ে'],
+ ['t', 'ূ'],
+ ['u', 'হ'],
+ ['v', 'ন'],
+ ['w', 'ৈ'],
+ ['x', 'ং'],
+ ['y', 'ব']
+ ],
+ patterns_x: [
+ ['\\!', '৴'],
+ ['1', '\u200d'],
+ ['\\@', '৵'],
+ ['2', '\u200c'],
+ ['\\#', '৶'],
+ ['\\$', '৷'],
+ ['4', '₹'],
+ ['\\%', '৸'],
+ ['\\^', '৹'],
+ [',', '৳'],
+ ['\\.', '॥'],
+ ['/', '্য'],
+ ['\\<', '৲'],
+ ['\\=', 'ৄ'],
+ ['\\+', 'ৠ'],
+ ['\\>', 'ঽ'],
+ ['F', 'ঌ'],
+ ['R', 'ৡ'],
+ ['\\{', 'ঢ়'],
+ ['\\[', 'ড়'],
+ ['f', 'ৢ'],
+ ['l', 'ৎ'],
+ ['r', 'ৣ'],
+ ['x', '৺']]
+ };
+
+ $.ime.register( mniInScript2 );
+}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/mr/mr-inscript.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/mr/mr-inscript.js
new file mode 100644
index 00000000..315088ef
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/mr/mr-inscript.js
@@ -0,0 +1,115 @@
+( function ( $ ) {
+ 'use strict';
+
+ var mrInScript = {
+ id: 'mr-inscript',
+ name: 'मराठी लिपी',
+ description: 'InScript keyboard for Marathi script',
+ date: '2012-10-14',
+ author: 'Junaid P V',
+ license: 'GPLv3',
+ version: '1.0',
+ patterns: [
+ ['X', '\u0901'],
+ ['x', '\u0902'],
+ ['_', '\u0903'],
+ ['D', '\u0905'],
+ ['E', '\u0906'],
+ ['F', '\u0907'],
+ ['R', '\u0908'],
+ ['G', '\u0909'],
+ ['T', '\u090A'],
+ ['\\+', '\u090B'],
+ ['!', '\u090D'],
+ ['S', '\u090F'],
+ ['W', '\u0910'],
+ ['\\|', '\u0911'],
+ ['A', '\u0913'],
+ ['Q', '\u0914'],
+ ['k', '\u0915'],
+ ['K', '\u0916'],
+ ['i', '\u0917'],
+ ['I', '\u0918'],
+ ['U', '\u0919'],
+ [';', '\u091A'],
+ ['\\:', '\u091B'],
+ ['p', '\u091C'],
+ ['P', '\u091D'],
+ ['\\}', '\u091E'],
+ ['\'', '', '\u091F'],
+ ['"', '\u0920'],
+ ['\\[', '\u0921'],
+ ['\\{', '\u0922'],
+ ['C', '\u0923'],
+ ['l', '\u0924'],
+ ['L', '\u0925'],
+ ['o', '\u0926'],
+ ['O', '\u0927'],
+ ['v', '\u0928'],
+ ['h', '\u092A'],
+ ['H', '\u092B'],
+ ['y', '\u092C'],
+ ['Y', '\u092D'],
+ ['c', '\u092E'],
+ ['/', '\u092F'],
+ ['j', '\u0930'],
+ ['J', '\u0931'],
+ ['n', '\u0932'],
+ ['N', '\u0933'],
+ ['b', '\u0935'],
+ ['M', '\u0936'],
+ ['\\<', '\u0937'],
+ ['m', '\u0938'],
+ ['u', '\u0939'],
+ ['\\]', '\u093C'],
+ ['e', '\u093E'],
+ ['f', '\u093F'],
+ ['r', '\u0940'],
+ ['g', '\u0941'],
+ ['t', '\u0942'],
+ ['\\=', '\u0943'],
+ ['\\@', '\u0945'],
+ ['s', '\u0947'],
+ ['w', '\u0948'],
+ ['\\\\', '\u0949'],
+ ['a', '\u094B'],
+ ['q', '\u094C'],
+ ['d', '\u094D'],
+ ['\\>', '\u0964'],
+ ['0', '\u0966'],
+ ['1', '\u0967'],
+ ['2', '\u0968'],
+ ['3', '\u0969'],
+ ['4', '\u096A'],
+ ['5', '\u096B'],
+ ['6', '\u096C'],
+ ['7', '\u096D'],
+ ['8', '\u096E'],
+ ['9', '\u096F'],
+ ['\\!', '\u0972'],
+ ['\\#', '\u094D\u0930'],
+ ['\\$', '\u0930\u094D'],
+ ['\\%', '\u091C\u094D\u091E'],
+ ['\\^', '\u0924\u094D\u0930'],
+ ['\\&', '\u0915\u094D\u0937'],
+ ['\\*', '\u0936\u094D\u0930'],
+ ['\\(', '\u200D'],
+ ['\\)', '\u200C']],
+ patterns_x: [
+ ['F', '\u090C'],
+ ['\\>', '\u093D'],
+ ['\\=', '\u0944'],
+ ['X', '\u0950'],
+ ['e', '\u0951'],
+ ['d', '\u0952'],
+ ['\\+', '\u0960'],
+ ['R', '\u0961'],
+ ['f', '\u0962'],
+ ['r', '\u0963'],
+ ['\\.', '\u0965'],
+ [',', '\u0970'],
+ ['\\$', '\u20B9']]
+ };
+
+ $.ime.register( mrInScript );
+}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/mr/mr-inscript2.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/mr/mr-inscript2.js
new file mode 100644
index 00000000..9c2dde86
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/mr/mr-inscript2.js
@@ -0,0 +1,121 @@
+( function ( $ ) {
+ 'use strict';
+
+ var mrInScript2 = {
+ id: 'mr-inscript2',
+ name: 'मराठी इनस्क्रिप्ट २',
+ description: 'Enhanced InScript keyboard for Marathi language',
+ date: '2012-11-06',
+ author: 'Parag Nemade',
+ license: 'GPLv3',
+ version: '1.0',
+ patterns: [
+ ['\\!', 'ॲ'],
+ ['1', '१'],
+ ['\\@', 'ॅ'],
+ ['2', '२'],
+ ['\\#', '्र'],
+ ['3', '३'],
+ ['\\$', 'र्'],
+ ['4', '४'],
+ ['5', '५'],
+ ['6', '६'],
+ ['7', '७'],
+ ['8', '८'],
+ ['\\(', '('],
+ ['9', '९'],
+ ['\\]', ']'],
+ ['0', '०'],
+ ['\\_', 'ः'],
+ ['\\-', '-'],
+ ['\\+', 'ऋ'],
+ ['\\=', 'ृ'],
+ ['Q', 'औ'],
+ ['q', 'ौ'],
+ ['W', 'ऐ'],
+ ['w', 'ै'],
+ ['E', 'आ'],
+ ['e', 'ा'],
+ ['R', 'ई'],
+ ['r', 'ी'],
+ ['T', 'ऊ'],
+ ['t', 'ू'],
+ ['Y', 'भ'],
+ ['y', 'ब'],
+ ['U', 'ङ'],
+ ['u', 'ह'],
+ ['I', 'घ'],
+ ['i', 'ग'],
+ ['O', 'ध'],
+ ['o', 'द'],
+ ['P', 'झ'],
+ ['p', 'ज'],
+ ['\\{', 'ढ'],
+ ['\\[', 'ड'],
+ ['\\}', 'ञ'],
+ ['\\]', '़'],
+ ['A', 'ओ'],
+ ['a', 'ो'],
+ ['S', 'ए'],
+ ['s', 'े'],
+ ['D', 'अ'],
+ ['d', '्'],
+ ['F', 'इ'],
+ ['f', 'ि'],
+ ['G', 'उ'],
+ ['g', 'ु'],
+ ['H', 'फ'],
+ ['h', 'प'],
+ ['J', 'ऱ'],
+ ['j', 'र'],
+ ['K', 'ख'],
+ ['k', 'क'],
+ ['L', 'थ'],
+ ['l', 'त'],
+ [':', 'छ'],
+ [';', 'च'],
+ ['"', 'ठ'],
+ ['\\\'', 'ट'],
+ ['\\~', 'ऒ'],
+ ['\\`', 'ॊ'],
+ ['X', 'ँ'],
+ ['x', 'ं'],
+ ['C', 'ण'],
+ ['c', 'म'],
+ ['v', 'न'],
+ ['b', 'व'],
+ ['N', 'ळ'],
+ ['n', 'ल'],
+ ['M', 'श'],
+ ['m', 'स'],
+ ['\\<', 'ष'],
+ [',', ','],
+ ['\\>', '।'],
+ ['\\.', '.'],
+ ['/', 'य'],
+ ['\\%', 'ज्ञ'],
+ ['\\^', 'त्र'],
+ ['\\&', 'क्ष'],
+ ['\\*', 'श्र']
+ ],
+ patterns_x: [
+ ['1', '\u200d'],
+ ['2', '\u200c'],
+ ['4', '₹'],
+ ['\\+', 'ॠ'],
+ ['\\=', 'ॄ'],
+ ['e', '॑'],
+ ['R', 'ॡ'],
+ ['r', 'ॣ'],
+ ['d', '॒'],
+ ['F', 'ऌ'],
+ ['f', 'ॢ'],
+ ['X', 'ॐ'],
+ [',', '॰'],
+ ['\\>', 'ऽ'],
+ ['\\.', '॥']
+ ]
+ };
+
+ $.ime.register( mrInScript2 );
+}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/mr/mr-phonetic.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/mr/mr-phonetic.js
new file mode 100644
index 00000000..f6fd4cf4
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/mr/mr-phonetic.js
@@ -0,0 +1,110 @@
+( function ( $ ) {
+ 'use strict';
+
+ var mrPhonetic = {
+ id: 'mr-phonetic',
+ name: 'फोनेटिक',
+ description: 'Phonetic keyboard for Marathi language',
+ date: '2013-02-09',
+ author: 'Parag Nemade',
+ license: 'GPLv3',
+ version: '1.0',
+ patterns: [
+ ['्f', '्\u200c'],
+ ['~', 'ऎ'],
+ ['`', 'ॆ'],
+ ['!', 'ऍ'],
+ ['1', '१'],
+ ['\\@","ॅ'],
+ ['2', '२'],
+ ['\\#', 'ऑ'],
+ ['3', '३'],
+ ['\\$', 'ॉ'],
+ ['4', '४'],
+ ['\\%', 'ञ'],
+ ['5', '५'],
+ ['6', '६'],
+ ['7', '७'],
+ ['8', '८'],
+ ['\\(', '('],
+ ['9', '९'],
+ ['\\)', ')'],
+ ['0', '०'],
+ ['\\_', '_'],
+ ['\\-', '-'],
+ ['\\+', '+'],
+ ['\\=', '='],
+ ['Q', 'औ'],
+ ['q', 'ओ'],
+ ['W', 'ठ'],
+ ['w', 'ट'],
+ ['E', 'ै'],
+ ['e', 'े'],
+ ['R', 'ृ'],
+ ['r', 'र'],
+ ['T', 'थ'],
+ ['t', 'त'],
+ ['Y', 'य़'],
+ ['y', 'य'],
+ ['U', 'ू'],
+ ['u', 'ु'],
+ ['I', 'ी'],
+ ['i', 'ि'],
+ ['O', 'ौ'],
+ ['o', 'ो'],
+ ['P', 'फ'],
+ ['p', 'प'],
+ ['\\{', 'ढ'],
+ ['\\[', 'ड'],
+ ['\\}', 'ऱ'],
+ ['\\]', 'ऋ'],
+ ['A', 'आ'],
+ ['a', 'ा'],
+ ['S', 'श'],
+ ['s', 'स'],
+ ['D', 'ध'],
+ ['d', 'द'],
+ ['F', 'अ'],
+ ['f', '्'],
+ ['G', 'घ'],
+ ['g', 'ग'],
+ ['H', 'ः'],
+ ['h', 'ह'],
+ ['J', 'झ'],
+ ['j', 'ज'],
+ ['K', 'ख'],
+ ['k', 'क'],
+ ['L', 'ळ'],
+ ['l', 'ल'],
+ [':', 'ई'],
+ [';', 'इ'],
+ ['\"', 'ऊ'],
+ ['\'', 'उ'],
+ ['\\|', 'ऒ'],
+ ['\\\\', 'ॊ'],
+ ['Z', 'ँ'],
+ ['z', 'ङ'],
+ ['x', 'ष'],
+ ['C', 'छ'],
+ ['c', 'च'],
+ ['V', 'ऴ'],
+ ['v', 'व'],
+ ['B', 'भ'],
+ ['b', 'ब'],
+ ['N', 'ण'],
+ ['n', 'न'],
+ ['M', 'ं'],
+ ['m', 'म'],
+ ['\\<', 'ऩ'],
+ [',', ','],
+ ['\\>', '़'],
+ ['\\?', 'ऐ'],
+ ['/', 'ए'],
+ ['\\^', 'ज्ञ'],
+ ['X', 'क्ष'],
+ ['\\*', 'श्र']
+ ]
+ };
+
+ $.ime.register( mrPhonetic );
+}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/mr/mr-transliteration.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/mr/mr-transliteration.js
new file mode 100644
index 00000000..db772072
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/mr/mr-transliteration.js
@@ -0,0 +1,147 @@
+( function ( $ ) {
+ 'use strict';
+
+ var mrTransliteration = {
+ id: 'mr-transliteration',
+ name: 'अक्षरांतरण',
+ description: 'Transliteration keyboard for Marathi script',
+ date: '2012-10-14',
+ author: 'Pathak A B',
+ license: 'GPLv3',
+ version: '1.0',
+ contextLength: 2,
+ maxKeyLength: 4,
+ patterns: [
+ ['च्h', 'c', 'च्'], // ch
+ ['च्h', 'ch', 'छ्'], // chh
+
+ ['\\\\([A-Za-z\\>_~0-9])', '\\\\', '$1'],
+
+ ['([क-ह]़?)्a', '$1'],
+ ['([क-ह]़?)्A', '$1ा'],
+ ['([क-ह]़?)a', '$1ा'],
+ ['([क-ह]़?)्i', '$1ि'],
+ ['([क-ह]़?)(्I|िi|ेe)', '$1ी'],
+ ['([क-ह]़?)्u', '$1ु'],
+ ['([क-ह]़?)(ुu|्U|ोo)', '$1ू'],
+ ['([क-ह]़?)्R', '$1ृ'],
+ ['([क-ह]़?)ृR', '$1ॄ'],
+ ['([क-ह]़?)्ळ्l', '$1ॢ'],
+ ['([क-ह]़?)ॢl', '$1ॣ'],
+ ['([क-ह]़?)े\\^', '$1ॅ'],
+ ['([क-ह]़?)्e', '$1े'],
+ ['([क-ह]़?)्E', '$1ॅ'],
+ ['([क-ह]़?)ो\\^', '$1ॉ'],
+ ['([क-ह]़?)i', '$1ै'],
+ ['([क-ह]़?)्o', '$1ो'],
+ ['([क-ह]़?)्O', '$1ॉ'],
+ ['([क-ह]़?)u', '$1ौ'],
+ ['([क-ह])्\\`', '$1़्'],
+ ['([क-ह])ॉM', '$1ाँ'],
+
+ ['आऊM', 'ॐ'], // AUM (OM)
+
+ ['(द्न्y|ग्ग्y|ज्ज्n)', 'ज्ञ्'], // dny, ggy or jjn
+
+ ['र्र्y', 'ऱ्य्'], // rry
+ ['र्र्h', 'ऱ्ह्'], // rrh
+
+ ['अa', 'आ'],
+ ['(ऒo|उu)', 'ऊ'],
+ ['ए\\^', 'ऍ'],
+ ['अi', 'ऐ'],
+ ['(अ\\^|E)', 'ॲ'],
+ ['(इi|एe)', 'ई'],
+ ['ऒ\\^', 'ऑ'],
+ ['अu', 'औ'],
+ ['ऋR', 'ॠ'],
+ ['ळ्l', 'ऌ'],
+ ['ऌl', 'ॡ'],
+ ['ंM', 'ँ'],
+
+ ['र्Y', 'ऱ्य्'],
+
+ ['क्h', 'ख्'], //kh
+ ['ग्h', 'घ्'],
+ ['न्g', 'ङ्'],
+ ['ज्h', 'झ्'],
+ ['न्j', 'ञ्'],
+ ['ट्h', 'ठ्'],
+ ['ड्h', 'ढ्'],
+ ['त्h', 'थ्'],
+ ['द्h', 'ध्'],
+ ['(f|प्h)', 'फ्'],
+ ['ब्h', 'भ्'],
+ ['ऋi', 'ॠ'], // Ri
+ ['ऋl', 'ॡ'], // Rl
+
+ ['स्h', 'श्'],
+ ['श्h', 'ष्'],
+ ['क़्h', 'ख़्'],
+ ['ज़्h', 'ऴ्'],
+ ['।\\\\', '॥'],
+
+ ['a', 'अ'],
+ ['b', 'ब्'],
+ ['c', 'च्'],
+ ['d', 'द्'],
+ ['e', 'ए'],
+ ['g', 'ग्'],
+ ['h', 'ह्'],
+ ['i', 'इ'],
+ ['j', 'ज्'],
+ ['k', 'क्'],
+ ['l', 'ल्'],
+ ['m', 'म्'],
+ ['n', 'न्'],
+ ['o', 'ओ'],
+ ['p', 'प्'],
+ ['q', 'क़्'],
+ ['r', 'र्'],
+ ['s', 'स्'],
+ ['t', 'त्'],
+ ['u', 'उ'],
+ ['(v|w)', 'व्'],
+ ['x', 'क्ष्'],
+ ['y', 'य्'],
+ ['(z|Z)', 'झ्'],
+ ['A', 'आ'],
+ ['B', 'ब्ब्'],
+ ['C', 'क्क्'],
+ ['D', 'ड्'],
+ ['G', 'ग्ग्'],
+ ['H', 'ः'],
+ ['I', 'ई'],
+ ['J', 'ज्ज्'],
+ ['K', 'क्क्'],
+ ['L', 'ळ्'],
+ ['M', 'ं'],
+ ['N', 'ण्'],
+ ['O', 'ऑ'],
+ ['P', 'प्प्'],
+ ['R', 'ऋ'],
+ ['S', 'श्'],
+ ['T', 'ट्'],
+ ['U', 'ऊ'],
+ ['(V|W)', 'व्व्'],
+ ['X', 'क्ष्'],
+ ['Y', 'य्य्'],
+ ['0', '०'],
+ ['1', '१'],
+ ['2', '२'],
+ ['3', '३'],
+ ['4', '४'],
+ ['5', '५'],
+ ['6', '६'],
+ ['7', '७'],
+ ['8', '८'],
+ ['9', '९'],
+ ['~', '्'],
+ ['\\\\.', '।'], // Danda
+ ['//', 'ऽ'],
+ ['\\`', '़'],
+ ['(\u200C)*_', '\u200c']]
+ };
+
+ $.ime.register( mrTransliteration );
+}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/my/my-xkb.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/my/my-xkb.js
new file mode 100644
index 00000000..8c128b6c
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/my/my-xkb.js
@@ -0,0 +1,209 @@
+( function ( $ ) {
+ 'use strict';
+
+ var myXkb = {
+ id: 'my-xkb',
+ name: 'မြန်မာဘာသာ xkb',
+ description: 'Myanmar xkb keyboard layout',
+ date: '2013-02-12',
+ URL: 'http://github.com/wikimedia/jquery.ime',
+ author: 'Parag Nemade',
+ license: 'GPLv3',
+ version: '1.0',
+ patterns: [
+ ['`', '\u1050'],
+ ['\\~', '\u100e'],
+ ['1', '\u1041'],
+ ['\\!', '\u100D'],
+ ['2', '\u1042'],
+ ['\\@', '\u1052'],
+ ['3', '\u1043'],
+ ['\\#', '\u100B'],
+ ['4', '\u1044'],
+ ['\\$', '\u1053'],
+ ['5', '\u1045'],
+ ['\\%', '\u1054'],
+ ['6', '\u1046'],
+ ['\\^', '\u1055'],
+ ['7', '\u1047'],
+ ['\\&', '\u101B'],
+ ['8', '\u1048'],
+ ['\\*', '\u002A'],
+ ['9', '\u1049'],
+ ['\\(', '('],
+ ['0', '\u1040'],
+ ['\\)', ')'],
+
+ ['q', '\u1006'],
+ ['Q', '\u1008'],
+ ['w', '\u1010'],
+ ['W', '\u101D'],
+ ['e', '\u1014'],
+ ['E', '\u1023'],
+ ['r', '\u1019'],
+ ['R', '\u104E'],
+ ['t', '\u1021'],
+ ['T', '\u1024'],
+ ['y', '\u1015'],
+ ['Y', '\u104C'],
+ ['u', '\u1000'],
+ ['U', '\u1025'],
+ ['i', '\u1004'],
+ ['I', '\u104D'],
+ ['o', '\u101E'],
+ ['O', '\u103F'],
+ ['p', '\u1005'],
+ ['P', '\u100F'],
+ ['\\[', '\u101F'],
+ ['\\{', '\u1027'],
+ ['\\]', '\u1029'],
+ ['\\}', '\u102A'],
+
+ ['\\\\', '\u104F'],
+ ['\\|', '\u1051'],
+
+ ['a', '\u1031'],
+ ['A', '\u1017'],
+ ['s', '\u103B'],
+ ['S', '\u103E'],
+ ['d', '\u102D'],
+ ['D', '\u102E'],
+ ['f', '\u103A'],
+ ['F', '\u1039'],
+ ['g', '\u102B'],
+ ['G', '\u103D'],
+ ['h', '\u1037'],
+ ['H', '\u1036'],
+ ['j', '\u103C'],
+ ['J', '\u1032'],
+ ['k', '\u102F'],
+ ['K', '\u1012'],
+ ['l', '\u1030'],
+ ['L', '\u1013'],
+
+ [';', '\u1038'],
+ [':', '\u1002'],
+
+ ['\'', '\''],
+ ['\"', '"'],
+
+ ['z', '\u1016'],
+ ['Z', '\u1007'],
+ ['x', '\u1011'],
+ ['X', '\u100C'],
+ ['c', '\u1001'],
+ ['C', '\u1003'],
+ ['v', '\u101C'],
+ ['V', '\u1020'],
+ ['b', '\u1018'],
+ ['B', '\u101A'],
+ ['n', '\u100A'],
+ ['N', '\u1009'],
+ ['m', '\u102C'],
+ ['M', '\u1026'],
+
+ [',', ','],
+ ['\\<', '\u104A'],
+ ['\\.', '.'],
+ ['\\>', '\u104B'],
+ ['/', '/'],
+ ['\\?', '?']
+ ],
+ patterns_x: [
+ ['`', '`'],
+ ['\\~', '~'],
+ ['1', '1'],
+ ['\\!', '!'],
+ ['2', '2'],
+ ['\\@', '@'],
+ ['3', '3'],
+ ['\\#', '#'],
+ ['4', '4'],
+ ['\\$', '$'],
+ ['5', '5'],
+ ['\\%', '%'],
+ ['6', '6'],
+ ['\\^', '^'],
+ ['7', '7'],
+ ['\\&', '&'],
+ ['8', '8'],
+ ['\\*', '*'],
+ ['9', '9'],
+ ['\\(', '('],
+ ['0', '0'],
+ ['\\)', ')'],
+ ['\\-', '-'],
+ ['\\_', '_'],
+ ['\\=', '='],
+ ['\\+', '+'],
+
+ ['q', 'q'],
+ ['Q', 'Q'],
+ ['w', 'w'],
+ ['W', 'W'],
+ ['e', 'e'],
+ ['E', 'E'],
+ ['r', 'r'],
+ ['R', 'R'],
+ ['t', 't'],
+ ['T', 'T'],
+ ['y', 'y'],
+ ['Y', 'Y'],
+ ['u', 'u'],
+ ['U', 'U'],
+ ['i', 'i'],
+ ['I', 'I'],
+ ['o', 'o'],
+ ['O', 'O'],
+ ['p', 'p'],
+ ['P', 'P'],
+ ['a', 'a'],
+ ['S', 'S'],
+ ['s', 's'],
+ ['S', 'S'],
+ ['d', 'd'],
+ ['D', 'D'],
+ ['f', 'f'],
+ ['F', 'F'],
+ ['g', 'g'],
+ ['G', 'G'],
+ ['h', 'h'],
+ ['H', 'H'],
+ ['j', 'j'],
+ ['J', 'J'],
+ ['k', 'k'],
+ ['K', 'K'],
+ ['l', 'l'],
+ ['L', 'L'],
+ ['z', 'z'],
+ ['Z', 'Z'],
+ ['x', 'x'],
+ ['X', 'X'],
+ ['c', 'c'],
+ ['C', 'C'],
+ ['v', 'v'],
+ ['V', 'V'],
+ ['b', 'b'],
+ ['B', 'B'],
+ ['n', 'n'],
+ ['N', 'N'],
+ ['m', 'm'],
+ ['M', 'M'],
+ [',', ','],
+ ['\\<', '<'],
+ ['\\.', '.'],
+ ['\\>', '>'],
+ [';', ';'],
+ [':', ':'],
+ ['\'', '\''],
+ ['"', '"'],
+ ['\\[', '['],
+ ['\\{', '{'],
+ ['\\]', ']'],
+ ['\\}', '}'],
+ ['\\\\', '\\'],
+ ['\\|', '|']]
+ };
+
+ $.ime.register( myXkb );
+}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/nb/nb-normforms.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/nb/nb-normforms.js
new file mode 100644
index 00000000..d11751a4
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/nb/nb-normforms.js
@@ -0,0 +1,50 @@
+( function ( $ ) {
+ 'use strict';
+
+ var defs = {
+ id: 'nb-normforms',
+ name: 'Norsk normal transliterasjon',
+ description: 'Norwegian input method with most common form transliterated',
+ date: '2012-12-04',
+ URL: 'http://www.evertype.com/alphabets/bokmaal-norwegian.pdf',
+ //URL: 'http://www.evertype.com/alphabets/nynorsk-norwegian.pdf',
+ author: 'John Erling Blad',
+ license: 'GPLv3',
+ version: '1.0',
+ contextLength: 1,
+ maxKeyLength: 3,
+ patterns: [
+ // The most common transliterations
+ [ 'aa', 'å' ],
+ [ 'AA', 'Å' ],
+ [ 'Aa', 'Å' ],
+ [ 'ae', 'æ' ],
+ [ 'AE', 'Æ' ],
+ [ 'Ae', 'Æ' ],
+ [ 'oe', 'ø' ],
+ [ 'OE', 'Ø' ],
+ [ 'Oe', 'Ø' ],
+ // The previous as negated transliterations, mostly for names
+ [ 'åa', 'a', 'aa' ],
+ [ 'ÅA', 'A', 'AA' ],
+ [ 'Åa', 'A', 'Aa' ],
+ [ 'åA', 'a', 'aA' ],
+ [ 'æe', 'e', 'ae' ],
+ [ 'ÆE', 'E', 'AE' ],
+ [ 'Æe', 'E', 'Ae' ],
+ [ 'æE', 'e', 'aE' ],
+ [ 'øe', 'e', 'oe' ],
+ [ 'ØE', 'E', 'OE' ],
+ [ 'Øe', 'E', 'Oe' ], // this fails for some names like "Øen"
+ [ 'øE', 'e', 'oE' ]
+ // historically similar forms
+ // "Å" is sometimes written as "Aa", and "å" as "aa", but in names
+ // it is not generally acceptable to use this transliteration. To
+ // handle those situations we need some oposite forms.
+ // There is a similar character "Å" for the length unit Angstrom,
+ // but this is not the upper case letter Å.
+ ]
+ };
+
+ $.ime.register( defs );
+}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/nb/nb-tildeforms.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/nb/nb-tildeforms.js
new file mode 100644
index 00000000..83bdd181
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/nb/nb-tildeforms.js
@@ -0,0 +1,35 @@
+( function ( $ ) {
+ 'use strict';
+
+ var defs = {
+ id: 'nb-tildeforms',
+ name: 'Norsk tildemerket transliterasjon',
+ description: 'Norwegian input method with initial tilde triggering transliteration',
+ date: '2012-12-04',
+ URL: 'http://www.evertype.com/alphabets/bokmaal-norwegian.pdf',
+ //URL: 'http://www.evertype.com/alphabets/nynorsk-norwegian.pdf',
+ author: 'John Erling Blad',
+ license: 'GPLv3',
+ version: '1.0',
+ //contextLength: 1,
+ maxKeyLength: 3,
+ patterns: [
+ // Uses "~" as "approximatly similar to"
+ [ '°a', 'å' ], // The simple ~a does not work as there is a "ã"
+ [ '°A', 'Å' ], // The simple ~A does not work as there is a "Ã"
+ [ '~ae', 'æ' ], // The simple ~a does not work as there is a "ã"
+ [ '~AE', 'Æ' ], // The simple ~A does not work as there is a "Ã"
+ [ '~oe', 'ø' ], // The simple ~o does not work as there is a "õ"
+ [ '~OE', 'Ø' ], // The simple ~O does not work as there is a "Õ"
+ [ '~aa', 'å' ], // The simple ~a does not work as there is a "ã"
+ [ '~AA', 'Å' ] // The simple ~A does not work as there is a "Ã"
+ // historically similar forms
+ // "Å" is sometimes written as "Aa", and "å" as "aa", but in names
+ // it is not generally acceptable to use this transliteration.
+ // There is a similar character "Å" for the length unit Angstrom,
+ // but this is not the upper case letter Å.
+ ]
+ };
+
+ $.ime.register( defs );
+}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ne/ne-inscript.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ne/ne-inscript.js
new file mode 100644
index 00000000..80a4af44
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ne/ne-inscript.js
@@ -0,0 +1,113 @@
+( function ( $ ) {
+ 'use strict';
+
+ var neInScript = {
+ id: 'ne-inscript',
+ name: 'इनस्क्रिप्ट',
+ description: 'InScript keyboard for Nepali script',
+ date: '2012-10-14',
+ author: 'Bhawani Gautam',
+ license: 'GPLv3',
+ version: '1.0',
+ patterns: [
+ ['X', 'ँ'],
+ ['x', 'ं'],
+ ['_', 'ः'],
+ ['D', 'अ'],
+ ['E', 'आ'],
+ ['F', 'इ'],
+ ['R', 'ई'],
+ ['G', 'उ'],
+ ['T', 'ऊ'],
+ ['\\+', 'ृ'],
+ ['S', 'ए'],
+ ['W', 'ऐ'],
+ ['A', 'ओ'],
+ ['Q', 'औ'],
+ ['k', 'क'],
+ ['K', 'ख'],
+ ['i', 'ग'],
+ ['I', 'घ'],
+ ['U', 'ङ'],
+ ['\\;', 'च'],
+ ['\\:', 'छ'],
+ ['p', 'ज'],
+ ['P', 'झ'],
+ ['\\}', 'ञ'],
+ ['\'', 'ट'],
+ ['"', 'ठ'],
+ ['\\[', '','ड'],
+ ['\\{', '','ढ'],
+ ['C', 'ण'],
+ ['l', 'त'],
+ ['L', 'थ'],
+ ['o', 'द'],
+ ['O', 'ध'],
+ ['v', 'न'],
+ ['h', 'प'],
+ ['H', 'फ'],
+ ['y', 'ब'],
+ ['Y', 'भ'],
+ ['c', 'म'],
+ ['\\?', '','य'],
+ ['j', 'र'],
+ ['J', 'द्य'],
+ ['n', 'ल'],
+ ['N', 'ळ'],
+ ['b', 'व'],
+ ['M', 'श'],
+ ['\\<', '','ष'],
+ ['m', 'स'],
+ ['u', 'ह'],
+ ['\\]', '','़'],
+ ['e', 'ा'],
+ ['f', 'ि'],
+ ['r', 'ी'],
+ ['g', 'ु'],
+ ['t', 'ू'],
+ ['\\=', '','ृ'],
+ ['\\\\', 'ॄ'],
+ ['s', 'े'],
+ ['w', 'ै'],
+ ['a', 'ो'],
+ ['q', 'ौ'],
+ ['d', '्'],
+ ['\\|', 'ॠ'],
+ ['/', 'य'],
+ ['\\>', '।'],
+ ['0', '','०'],
+ ['1', '','१'],
+ ['2', '२'],
+ ['3', '३'],
+ ['4', '४'],
+ ['5', '५'],
+ ['6', '६'],
+ ['7', '७'],
+ ['8', '८'],
+ ['9', '९'],
+ ['\\@', 'ॅ'],
+ ['\\#', '','्र'],
+ ['\\$', '','र्'],
+ ['\\%', '','ज्ञ'],
+ ['\\^', '','त्र'],
+ ['\\&', 'क्ष'],
+ ['\\*', 'श्र'],
+ ['\\(', '\u200D'],
+ ['\\)', '\u200C'] ],
+
+ patterns_x: [
+ ['F', 'ऌ'],
+ ['\\>', '','ऽ'],
+ ['X', 'ॐ'],
+ ['e', '\u0951'],
+ ['d', '\u0952'],
+ ['R', 'ॡ'],
+ ['f', 'ॢ'],
+ ['r', 'ॣ'],
+ ['\\.', '॥'],
+ ['\\@', '','ॅ'],
+ ['4', '₹']]
+ };
+
+ $.ime.register( neInScript );
+}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ne/ne-inscript2.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ne/ne-inscript2.js
new file mode 100644
index 00000000..1d1d021f
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ne/ne-inscript2.js
@@ -0,0 +1,116 @@
+( function ( $ ) {
+ 'use strict';
+
+ var neInScript2 = {
+ id: 'ne-inscript2',
+ name: 'नेपाळी इनस्क्रिप्ट २',
+ description: 'Enhanced InScript keyboard for Nepali language',
+ date: '2012-11-06',
+ author: 'Parag Nemade',
+ license: 'GPLv3',
+ version: '1.0',
+ patterns: [
+ ['1', '१'],
+ ['2', '२'],
+ ['\\#', '्र'],
+ ['3', '३'],
+ ['\\$', 'र्'],
+ ['4', '४'],
+ ['5', '५'],
+ ['6', '६'],
+ ['7', '७'],
+ ['8', '८'],
+ ['\\(', '('],
+ ['9', '९'],
+ ['\\]', ']'],
+ ['0', '०'],
+ ['\\_', 'ः'],
+ ['\\-', '-'],
+ ['\\+', 'ऋ'],
+ ['\\=', 'ृ'],
+ ['Q', 'औ'],
+ ['q', 'ौ'],
+ ['W', 'ऐ'],
+ ['w', 'ै'],
+ ['E', 'आ'],
+ ['e', 'ा'],
+ ['R', 'ई'],
+ ['r', 'ी'],
+ ['T', 'ऊ'],
+ ['t', 'ू'],
+ ['Y', 'भ'],
+ ['y', 'ब'],
+ ['U', 'ङ'],
+ ['u', 'ह'],
+ ['I', 'घ'],
+ ['i', 'ग'],
+ ['O', 'ध'],
+ ['o', 'द'],
+ ['P', 'झ'],
+ ['p', 'ज'],
+ ['\\{', 'ढ'],
+ ['\\[', 'ड'],
+ ['\\}', 'ञ'],
+ ['\\]', '़'],
+ ['A', 'ओ'],
+ ['a', 'ो'],
+ ['S', 'ए'],
+ ['s', 'े'],
+ ['D', 'अ'],
+ ['d', '्'],
+ ['F', 'इ'],
+ ['f', 'ि'],
+ ['G', 'उ'],
+ ['g', 'ु'],
+ ['H', 'फ'],
+ ['h', 'प'],
+ ['J', 'ऱ'],
+ ['j', 'र'],
+ ['K', 'ख'],
+ ['k', 'क'],
+ ['L', 'थ'],
+ ['l', 'त'],
+ [':', 'छ'],
+ [';', 'च'],
+ ['"', 'ठ'],
+ ['\\\'', 'ट'],
+ ['X', 'ँ'],
+ ['x', 'ं'],
+ ['C', 'ण'],
+ ['c', 'म'],
+ ['v', 'न'],
+ ['b', 'व'],
+ ['N', 'ळ'],
+ ['n', 'ल'],
+ ['M', 'श'],
+ ['m', 'स'],
+ ['\\<', 'ष'],
+ [',', ','],
+ ['\\>', '।'],
+ ['\\.', '.'],
+ ['/', 'य'],
+ ['\\%', 'ज्ञ'],
+ ['\\^', 'त्र'],
+ ['\\&', 'क्ष'],
+ ['\\*', 'श्र']],
+ patterns_x: [
+ ['1', '\u200d'],
+ ['2', '\u200c'],
+ ['4', '₹'],
+ ['\\+', 'ॠ'],
+ ['\\=', 'ॄ'],
+ ['e', '॑'],
+ ['R', 'ॡ'],
+ ['r', 'ॣ'],
+ ['d', '॒'],
+ ['F', 'ऌ'],
+ ['f', 'ॢ'],
+ ['X', 'ॐ'],
+ ['x', 'ॱ'],
+ [',', '॰'],
+ ['\\>', 'ऽ'],
+ ['\\.', '॥']]
+ };
+
+ $.ime.register( neInScript2 );
+}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ne/ne-rom.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ne/ne-rom.js
new file mode 100644
index 00000000..f169dd32
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ne/ne-rom.js
@@ -0,0 +1,106 @@
+( function ( $ ) {
+ 'use strict';
+
+ var neRom = {
+ id: 'ne-rom',
+ name: 'Nepali Romanized',
+ description: 'Nepali Romanized keyboard layout',
+ date: '2013-02-12',
+ author: 'Parag Nemade',
+ license: 'GPLv3',
+ version: '1.0',
+ patterns: [
+ ['\\!', '!'],
+ ['\"', '"'],
+ ['\\#', '#'],
+ ['\\$', 'रु'],
+ ['\'', '\''],
+ ['\\(', '('],
+ ['\\)', ')'],
+ ['\\+', '+'],
+ [',', ','],
+ ['\\-', '-'],
+ ['\\.', '।'],
+ ['/', '्'],
+ ['0', '०'],
+ ['1', '१'],
+ ['2', '२'],
+ ['3', '३'],
+ ['4', '४'],
+ ['5', '५'],
+ ['6', '६'],
+ ['7', '७'],
+ ['8', '८'],
+ ['9', '९'],
+ [':', ':'],
+ [';', ';'],
+ ['\\<', 'ङ'],
+ ['\\=', '='],
+ ['\\>', '॥'],
+ ['\\?', '?'],
+ ['\\@', '@'],
+ ['A', 'आ'],
+ ['B', 'भ'],
+ ['C', 'च'],
+ ['D', 'ध'],
+ ['E', 'ै'],
+ ['F', 'ऊ'],
+ ['G', 'घ'],
+ ['H', 'अ'],
+ ['I', 'ी'],
+ ['J', 'झ'],
+ ['K', 'ख'],
+ ['L', 'ळ'],
+ ['M', 'ं'],
+ ['N', 'ण'],
+ ['O', 'ओ'],
+ ['P', 'फ'],
+ ['Q', 'ठ'],
+ ['R', 'ृ'],
+ ['S', 'श'],
+ ['T', 'थ'],
+ ['U', 'ू'],
+ ['V', 'ँ'],
+ ['W', 'औ'],
+ ['X', 'ढ'],
+ ['Y', 'ञ'],
+ ['Z', 'ऋ'],
+ ['\\[', 'इ'],
+ ['\\\\', 'ॐ'],
+ ['\\]', 'ए'],
+ ['\\_', '_'],
+ ['`', '़'],
+ ['a', 'ा'],
+ ['b', 'ब'],
+ ['c', 'छ'],
+ ['d', 'द'],
+ ['e', 'े'],
+ ['f', 'उ'],
+ ['g', 'ग'],
+ ['h', 'ह'],
+ ['i', 'ि'],
+ ['j', 'ज'],
+ ['k', 'क'],
+ ['l', 'ल'],
+ ['m', 'म'],
+ ['n', 'न'],
+ ['o', 'ो'],
+ ['p', 'प'],
+ ['q', 'ट'],
+ ['r', 'र'],
+ ['s', 'स'],
+ ['t', 'त'],
+ ['u', 'ु'],
+ ['v', 'व'],
+ ['w', 'ौ'],
+ ['x', 'ड'],
+ ['y', 'य'],
+ ['z', 'ष'],
+ ['\\{', 'ई'],
+ ['\\|', 'ः'],
+ ['\\}', 'ऐ'],
+ ['\\~', 'ऽ']]
+ };
+
+ $.ime.register( neRom );
+}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ne/ne-trad.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ne/ne-trad.js
new file mode 100644
index 00000000..76af9ea9
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ne/ne-trad.js
@@ -0,0 +1,106 @@
+( function ( $ ) {
+ 'use strict';
+
+ var neTrad = {
+ id: 'ne-trad',
+ name: 'Nepali Traditional',
+ description: 'Nepali Traditional keyboard layout',
+ date: '2013-02-12',
+ author: 'Parag Nemade',
+ license: 'GPLv3',
+ version: '1.0',
+ patterns: [
+ ['\"', 'ू'],
+ ['\\#', 'घ'],
+ ['\'', 'ु'],
+ ['\\(', 'ढ'],
+ ['\\)', 'ण'],
+ ['\\+', 'ं'],
+ [',', 'ऽ'],
+ ['\\-', 'औ'],
+ ['\\.', '।'],
+ ['/', 'र'],
+ ['0', '०'],
+ ['1', '१'],
+ ['2', '२'],
+ ['3', '३'],
+ ['4', '४'],
+ ['5', '५'],
+ ['6', '६'],
+ ['7', '७'],
+ ['8', '८'],
+ ['9', '९'],
+ [';', 'स'],
+ ['\\<', 'ङ'],
+ ['\\=', '='],
+ ['\\?', 'रु'],
+ ['\\@', 'ई'],
+ ['A', 'आ'],
+ ['B', 'ौ'],
+ ['C', 'ऋ'],
+ ['E', 'ऐ'],
+ ['F', 'ँ'],
+ ['H', 'झ'],
+ ['J', 'ो'],
+ ['K', 'फ'],
+ ['L', 'ी'],
+ ['O', 'इ'],
+ ['P', 'ए'],
+ ['U', 'ऊ'],
+ ['V', 'ॐ'],
+ ['\\\\', '्'],
+ ['\\]', 'े'],
+ ['\\_', 'ओ'],
+ ['`', 'ञ'],
+ ['a', 'ब'],
+ ['b', 'द'],
+ ['c', 'अ'],
+ ['d', 'म'],
+ ['e', 'भ'],
+ ['f', 'ा'],
+ ['g', 'न'],
+ ['h', 'ज'],
+ ['i', 'ष'],
+ ['j', 'व'],
+ ['k', 'प'],
+ ['l', 'ि'],
+ ['m', 'ः'],
+ ['n', 'ल'],
+ ['o', 'य'],
+ ['p', 'उ'],
+ ['r', 'च'],
+ ['s', 'क'],
+ ['t', 'त'],
+ ['u', 'ग'],
+ ['v', 'ख'],
+ ['w', 'ध'],
+ ['x', 'ह'],
+ ['y', 'थ'],
+ ['z', 'श'],
+ ['\\{', 'ृ'],
+ ['\\|', '|'],
+ ['\\}', 'ै'],
+ ['\\~', '॥'],
+ ['\\!', 'ज्ञ'],
+ ['\\$', 'द्ध'],
+ [':', 'ट्ठ'],
+ ['\\>', 'श्र'],
+ ['D', 'ङ्ग'],
+ ['G', 'द्द'],
+ ['I', 'क्ष'],
+ ['M', 'ड्ड'],
+ ['N', 'द्य'],
+ ['Q', 'त्त'],
+ ['R', 'द्ब'],
+ ['S', 'ङ्क'],
+ ['T', 'ट्ट'],
+ ['W', 'ड्ढ'],
+ ['X', 'ह्य'],
+ ['Y', 'ठ्ठ'],
+ ['Z', 'क्क'],
+ ['\\[', 'र्'],
+ ['q', 'त्र']]
+ };
+
+ $.ime.register( neTrad );
+}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ne/ne-transliteration.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ne/ne-transliteration.js
new file mode 100644
index 00000000..3c08b107
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ne/ne-transliteration.js
@@ -0,0 +1,165 @@
+( function ( $ ) {
+ 'use strict';
+
+ var neTransliteration = {
+ id: 'ne-transliteration',
+ name: 'लिप्यंतरण',
+ description: 'Nepali transliteration',
+ date: '2012-10-14',
+ URL: 'http://github.com/wikimedia/jquery.ime',
+ author: 'Junaid P V ([[user:Junaidpv]]) and Bhawani Gautam ([[user:Bhawani Gautam]])',
+ license: 'GPLv3',
+ version: '1.0',
+ contextLength: 4,
+ maxKeyLength: 1,
+ patterns: [
+ ['क्h','c','च्'],
+ ['\\\\([A-Za-z\\>_~\\.0-9])','\\\\','$1'],
+
+ ['([क-ह]़?)्a','$1'],
+ ['([क-ह]़?)्A','$1ा'],
+ ['([क-ह]़?)a','$1ा'],
+ ['([क-ह]़?)्i','$1ि'],
+ ['([क-ह]़?)(्I|िi|ेe)','$1ी'],
+ ['([क-ह]़?)्u','$1ु'],
+ ['([क-ह]़?)(ुu|्U|ोo)','$1ू'],
+ ['([क-ह]़?)्R','$1ृ'],
+ ['([क-ह]़?)ृR','$1ॄ'],
+ ['([क-ह]़?)्ळ्l','$1ॢ'],
+ ['([क-ह]़?)ॢl','$1ॣ'],
+ ['([क-ह]़?)ॆ\\^','$1ॅ'],
+ ['([क-ह]़?)्e','$1े'],
+ ['([क-ह]़?)्E','$1े'],
+ ['([क-ह]़?)ॊ\\^','$1ॉ'],
+ ['([क-ह]़?)i','$1ै'],
+ ['([क-ह]़?)्o','$1ो'],
+ ['([क-ह]़?)्O','$1ो'],
+ ['([क-ह]़?)u','$1ौ'],
+ ['([क-ह]़?)ृa','$1्ऱ'],
+ ['([क-ह]़?)ृA','$1्ऱा'],
+ ['([क-ह]़?)ृi','$1्ऱि'],
+ ['([क-ह]़?)ृI','$1्ऱी'],
+ ['([क-ह]़?)ृu','$1्ऱु'],
+ ['([क-ह]़?)ृU','$1्ऱू'],
+ ['([क-ह]़?)ृ\\^','$1्ऱॅ'],
+ ['([क-ह]़?)ृe','$1्ऱे'],
+ ['([क-ह]़?)ृE','$1्ऱे'],
+ ['([क-ह]़?)ृo','$1्ऱो'],
+ ['([क-ह]़?)ृO','$1्ऱो'],
+ ['([क-ह]़?)ृ\\~','$1्ऱ्'],
+ ['([क-ह])्\\`','$1़्'],
+
+ ['अa','आ'],
+ ['(ओo|उu)','ऊ'],
+ ['ऎ\\^','ए'],
+ ['अi','ऐ'],
+ ['अ\\^','अ'],
+ ['(इi|एe)','ई'],
+ ['ऒ\\^','ओ'],
+ ['अu','औ'],
+ ['र्र्r','\u0930\u094D\u200D'],
+ ['ड़्h','ढ्'],
+ ['ऋR','ॠ'],
+ ['ळ्l','ऌ'],
+ ['ऌl','ॡ'],
+ ['ं\\^','ँ'],
+ ['ंM','ँ'],
+ ['ओM','ॐ'],
+ ['ड्D','ड्'],
+ ['क्h','ख्'],
+ ['ग्h','घ्'],
+ ['G','ङ्'],
+ ['च्h','छ्'],
+ ['ज्h','झ्'],
+ ['न्j','ञ्'],
+ ['ट्h','ठ्'],
+ ['ड्h','ढ्'],
+ ['त्h','थ्'],
+ ['द्h','ध्'],
+ ['प्h','फ्'],
+ ['ब्h','भ्'],
+ ['ऋa','र'],
+ ['ऋA','रा'],
+ ['ऋi','रि'],
+ ['ऋI','री'],
+ ['ऋu','रु'],
+ ['ऋU','रू'],
+ ['ऋ\\^','ऋ'],
+ ['ऋe','रे'],
+ ['ऋE','रे'],
+ ['ऋo','रो'],
+ ['ऋO','रो'],
+ ['ऋ\\~','र्'],
+
+ ['स्h','श्'],
+ ['श्h','ष्'],
+ ['क़्h','ख्'],
+ ['ज़्h','ऴ्'],
+ ['।\\.','॥'],
+
+ ['a','अ'],
+ ['b','ब्'],
+ ['c','क्'],
+ ['d','द्'],
+ ['e','ए'],
+ ['(f|F)','फ्'],
+ ['g','ग्'],
+ ['h','ह्'],
+ ['i','इ'],
+ ['j','ज्'],
+ ['k','क्'],
+ ['l','ल्'],
+ ['m','म्'],
+ ['n','न्'],
+ ['o','ओ'],
+ ['p','प्'],
+ ['q','क़्'],
+ ['r','र्'],
+ ['s','स्'],
+ ['t','त्'],
+ ['u','उ'],
+ ['v','भ्'],
+ ['w','व्'],
+ ['x','क्ष्'],
+ ['y','य्'],
+ ['(z|Z)','ज़्'],
+ ['A','आ'],
+ ['B','ब्ब्'],
+ ['C','क्क्'],
+ ['D','ड्'],
+ ['E','ए'],
+ ['H','ः'],
+ ['I','ई'],
+ ['J','ज्ज्'],
+ ['K','क्क्'],
+ ['L','ळ्'],
+ ['M','ं'],
+ ['N','ण्'],
+ ['O','ओ'],
+ ['P','प्प्'],
+ ['Q','अ'],
+ ['R','ऋ'],
+ ['S','श्'],
+ ['T','ट्'],
+ ['U','ऊ'],
+ ['V','झ्'],
+ ['W','औ'],
+ ['X','क्ष्'],
+ ['Y','य्य्'],
+ ['0','०'],
+ ['1','१'],
+ ['2','२'],
+ ['3','३'],
+ ['4','४'],
+ ['5','५'],
+ ['6','६'],
+ ['7','७'],
+ ['8','८'],
+ ['9','९'],
+ ['\\.','।'],
+ ['//','ऽ'],
+ ['\\`','्']]
+ };
+
+ $.ime.register( neTransliteration );
+}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/or/or-inscript.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/or/or-inscript.js
new file mode 100644
index 00000000..0ea6f80e
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/or/or-inscript.js
@@ -0,0 +1,106 @@
+( function ( $ ) {
+ 'use strict';
+
+ var orInScript = {
+ id: 'or-inscript',
+ name: 'ଇନସ୍କ୍ରିପ୍ଟ',
+ description: 'InScript keyboard for Odia script',
+ date: '2012-10-14',
+ author: 'Junaid P V',
+ license: 'GPLv3',
+ version: '1.0',
+ patterns: [
+ ['X', '\u0B01'],
+ ['x', '\u0B02'],
+ ['_', '\u0B03'],
+ ['D', '\u0B05'],
+ ['E', '\u0B06'],
+ ['F', '\u0B07'],
+ ['R', '\u0B08'],
+ ['G', '\u0B09'],
+ ['T', '\u0B0A'],
+ ['\\+', '\u0B0B'],
+ ['S', '\u0B0F'],
+ ['W', '\u0B10'],
+ ['A', '\u0B13'],
+ ['Q', '\u0B14'],
+ ['k', '\u0B15'],
+ ['K', '\u0B16'],
+ ['i', '\u0B17'],
+ ['I', '\u0B18'],
+ ['U', '\u0B19'],
+ [';', '\u0B1A'],
+ ['\\:', '\u0B1B'],
+ ['p', '\u0B1C'],
+ ['P', '\u0B1D'],
+ ['\\}', '\u0B1E'],
+ ['\'', '\u0B1F'],
+ ['"', '\u0B20'],
+ ['\\[', '\u0B21'],
+ ['\\{', '\u0B22'],
+ ['C', '\u0B23'],
+ ['l', '\u0B24'],
+ ['L', '\u0B25'],
+ ['o', '\u0B26'],
+ ['O', '\u0B27'],
+ ['v', '\u0B28'],
+ ['h', '\u0B2A'],
+ ['H', '\u0B2B'],
+ ['y', '\u0B2C'],
+ ['Y', '\u0B2D'],
+ ['c', '\u0B2E'],
+ ['\\?', '\u0B2F'],
+ ['j', '\u0B30'],
+ ['n', '\u0B32'],
+ ['N', '\u0B33'],
+ ['M', '\u0B36'],
+ ['\\<', '\u0B37'],
+ ['m', '\u0B38'],
+ ['u', '\u0B39'],
+ ['\\]', '\u0B3C'],
+ ['e', '\u0B3E'],
+ ['f', '\u0B3F'],
+ ['r', '\u0B40'],
+ ['g', '\u0B41'],
+ ['t', '\u0B42'],
+ ['\\=', '\u0B43'],
+ ['s', '\u0B47'],
+ ['w', '\u0B48'],
+ ['a', '\u0B4B'],
+ ['q', '\u0B4C'],
+ ['d', '\u0B4D'],
+ ['/', '\u0B5F'],
+ ['\\>', '\u0B64'],
+ ['0', '\u0B66'],
+ ['1', '\u0B67'],
+ ['2', '\u0B68'],
+ ['3', '\u0B69'],
+ ['4', '\u0B6A'],
+ ['5', '\u0B6B'],
+ ['6', '\u0B6C'],
+ ['7', '\u0B6D'],
+ ['8', '\u0B6E'],
+ ['9', '\u0B6F'],
+ ['b', '\u0B71'],
+ ['\\(', '\u200D'],
+ ['\\)', '\u200C']],
+
+ patterns_x: [
+ ['F', '\u0B0C'],
+ ['b', '\u0B35'],
+ ['\\>', '\u0B3D'],
+ ['\\=', '\u0B44'],
+ ['\\[', '\u0B5C'],
+ ['\\{', '\u0B5D'],
+ ['\\+', '\u0B60'],
+ ['R', '\u0B61'],
+ ['f', '\u0B62'],
+ ['r', '\u0B63'],
+ ['\\.', '\u0B65'],
+ ['x', '\u0B70'],
+ ['\\$', '\u20B9']]
+
+ };
+
+ $.ime.register( orInScript );
+}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/or/or-inscript2.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/or/or-inscript2.js
new file mode 100644
index 00000000..fcc2fec3
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/or/or-inscript2.js
@@ -0,0 +1,116 @@
+( function ( $ ) {
+ 'use strict';
+
+ var orInScript2 = {
+ id: 'or-inscript2',
+ name: 'ଇନସ୍କ୍ରିପ୍ଟ2',
+ description: 'Enhanced InScript keyboard for Odia language',
+ date: '2013-02-09',
+ author: 'Parag Nemade',
+ license: 'GPLv3',
+ version: '1.0',
+ patterns: [
+ ['1', '୧'],
+ ['2', '୨'],
+ ['\\#', '୍ର'],
+ ['3', '୩'],
+ ['\\$', 'ର୍'],
+ ['4', '୪'],
+ ['5', '୫'],
+ ['6', '୬'],
+ ['7', '୭'],
+ ['8', '୮'],
+ ['\\(', '('],
+ ['9', '୯'],
+ ['\\)', ')'],
+ ['0', '୦'],
+ ['\\_', 'ଃ'],
+ ['\\-', '-'],
+ ['\\+', 'ଋ'],
+ ['\\=', 'ୃ'],
+ ['Q', 'ଔ'],
+ ['q', 'ୌ'],
+ ['W', 'ଐ'],
+ ['w', 'ୈ'],
+ ['E', 'ଆ'],
+ ['e', 'ା'],
+ ['R', 'ଈ'],
+ ['r', 'ୀ'],
+ ['T', 'ଊ'],
+ ['t', 'ୂ'],
+ ['Y', 'ଭ'],
+ ['y', 'ବ'],
+ ['U', 'ଙ'],
+ ['u', 'ହ'],
+ ['I', 'ଘ'],
+ ['i', 'ଗ'],
+ ['O', 'ଧ'],
+ ['o', 'ଦ'],
+ ['P', 'ଝ'],
+ ['p', 'ଜ'],
+ ['\\{', 'ଢ'],
+ ['\\[', 'ଡ'],
+ ['\\}', 'ଞ'],
+ ['\\]', '଼'],
+ ['A', 'ଓ'],
+ ['a', 'ୋ'],
+ ['S', 'ଏ'],
+ ['s', 'େ'],
+ ['D', 'ଅ'],
+ ['d', '୍'],
+ ['F', 'ଇ'],
+ ['f', 'ି'],
+ ['G', 'ଉ'],
+ ['g', 'ୁ'],
+ ['H', 'ଫ'],
+ ['h', 'ପ'],
+ ['j', 'ର'],
+ ['K', 'ଖ'],
+ ['k', 'କ'],
+ ['L', 'ଥ'],
+ ['l', 'ତ'],
+ [':', 'ଛ'],
+ [';', 'ଚ'],
+ ['\"', 'ଠ'],
+ ['\'', 'ଟ'],
+ ['X', 'ଁ'],
+ ['x', 'ଂ'],
+ ['C', 'ଣ'],
+ ['c', 'ମ'],
+ ['v', 'ନ'],
+ ['b', 'ୱ'],
+ ['N', 'ଳ'],
+ ['n', 'ଲ'],
+ ['M', 'ଶ'],
+ ['m', 'ସ'],
+ ['\\<', 'ଷ'],
+ [',', ','],
+ ['\\>', '।'],
+ ['\\.', '.'],
+ ['\\?', 'ଯ'],
+ ['/', 'ୟ'],
+ ['\\%', 'ଜ୍ଞ'],
+ ['\\^', 'ତ୍ର'],
+ ['\\&', 'କ୍ଷ'],
+ ['\\*', 'ଶ୍ର']
+ ],
+ patterns_x: [
+ ['1', '\u200d'],
+ ['2', '\u200c'],
+ ['4', '₹'],
+ ['\\+', 'ୠ'],
+ ['\\=', 'ୄ'],
+ ['R', 'ୡ'],
+ ['r', 'ୣ'],
+ ['\\{', 'ଢ଼'],
+ ['\\[', 'ଡ଼'],
+ ['F', 'ଌ'],
+ ['f', 'ୢ'],
+ ['b', 'ଵ'],
+ ['\\>', 'ଽ'],
+ ['\\.', '॥'],
+ ['x', '୰']]
+ };
+
+ $.ime.register( orInScript2 );
+}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/or/or-lekhani.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/or/or-lekhani.js
new file mode 100644
index 00000000..eb36675a
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/or/or-lekhani.js
@@ -0,0 +1,175 @@
+( function ( $ ) {
+ 'use strict';
+
+ var orLekhani = {
+ id: 'or-lekhani',
+ name: 'ଫୋନେଟିକ',
+ description: 'Odia Lekhani phonetic input method',
+ date: '2012-10-14',
+ URL: 'http://github.com/wikimedia/jquery.ime',
+ author: 'Junaid P V and Subhashish Panigrahi',
+ license: 'GPLv3',
+ version: '1.0',
+ contextLength: 4,
+ maxKeyLength: 2,
+ patterns: [
+ ['\\\\([A-Za-z\\>_~\\.0-9])', '\\\\', '$1'],
+
+ ['([(କ-ହୟୱଡ଼ଢ଼ଙ୍କଙ୍ଖଙ୍ଗଙ୍ଘଞ୍ଚଞ୍ଛଞ୍ଝଣ୍ଟଣ୍ଠଣ୍ଡଣ୍ଢନ୍ତନ୍ଥନ୍ଦନ୍ଧମ୍ପମ୍ଫମ୍ବମ୍ଭଞ୍ଜ])a', '$1ା'],
+ ['([କ-ଳଲନ୍ଧଥଡ଼ଢ଼ହୟୱରକ୍ଷଶସଷଙ୍କଙ୍ଖଙ୍ଗଙ୍ଘଞ୍ଚଞ୍ଛଞ୍ଝଣ୍ଟଣ୍ଠଣ୍ଡଣ୍ଢନ୍ତନ୍ଥନ୍ଦନ୍ଧମ୍ପମ୍ଫମ୍ବମ୍ଭଞ୍ଜ])i', '$1\u0b3f'],
+ ['([କ-ହୟୱଡ଼ଢ଼ଙ୍କଙ୍ଖଙ୍ଗଙ୍ଘଞ୍ଚଞ୍ଛଞ୍ଝଣ୍ଟଣ୍ଠଣ୍ଡଣ୍ଢନ୍ତନ୍ଥନ୍ଦନ୍ଧମ୍ପମ୍ଫମ୍ବମ୍ଭଞ୍])I', '$1ୀ'],
+ ['([କ-ହୟୱଡ଼ଢ଼ଙ୍କଙ୍ଖଙ୍ଗଙ୍ଘଞ୍ଚଞ୍ଛଞ୍ଝଣ୍ଟଣ୍ଠଣ୍ଡଣ୍ଢନ୍ତନ୍ଥନ୍ଦନ୍ଧମ୍ପମ୍ଫମ୍ବମ୍ଭଞ୍])u', '$1\u0b41'],
+ ['([କ-ହୟୱ])(U|\u0b41u)', '$1\u0b42'],
+ ['([କ-ହୟୱ])R', '$1\u0b43'],
+ ['([କ-ହୟୱ])\u0b43R', '$1\u0b44'],
+ ['([କ-ହୟୱ])୍ଳ୍l', '$1ୢ'],
+ ['([କ-ହୟୱ])ୢl', '$1ୣ'],
+ ['([କ-ହୟୱଡ଼ଢ଼ଙ୍କଙ୍ଖଙ୍ଗଙ୍ଘଞ୍ଚଞ୍ଛଞ୍ଝଣ୍ଟଣ୍ଠଣ୍ଡଣ୍ଢନ୍ତନ୍ଥନ୍ଦନ୍ଧମ୍ପମ୍ଫମ୍ବମ୍ଭଞ୍])e', '$1େ'],
+ ['([କ-ହୟୱଡ଼ଢ଼ଙ୍କଙ୍ଖଙ୍ଗଙ୍ଘଞ୍ଚଞ୍ଛଞ୍ଝଣ୍ଟଣ୍ଠଣ୍ଡଣ୍ଢନ୍ତନ୍ଥନ୍ଦନ୍ଧମ୍ପମ୍ଫମ୍ବମ୍ଭଞ୍])o', '$1ୋ'],
+ ['([କ-ହୟୱଡ଼ଢ଼ଙ୍କଙ୍ଖଙ୍ଗଙ୍ଘଞ୍ଚଞ୍ଛଞ୍ଝଣ୍ଟଣ୍ଠଣ୍ଡଣ୍ଢନ୍ତନ୍ଥନ୍ଦନ୍ଧମ୍ପମ୍ଫମ୍ବମ୍ଭଞ୍])(ାu|ୋu)', '$1ୌ'],
+ ['([କ-ହୟୱ])E', '$1\u0B48'],
+ ['([କ-ହୟୱ])(w|v)', '$1୍ୱ'],
+ ['([କ-ହୟୱ])~', '$1\u200C'],
+
+ ['([କ-ହୟୱ])y', '$1୍ୟ'], // <consonant>y
+
+ ['z', '୍'], // halanta
+ ['\\.', '।'], //purnacheda
+ ['ଅa', 'ଆ'],
+ ['ଏe', 'ଐ'],
+ ['(ଅu|ଓo|ଓO)', 'ଔ'],
+ ['ଋR', 'ୠ'], // RR
+ ['ଳl', 'ଌ'], // Ll
+ ['ଌl', 'ୡ'], // Lll
+ ['ଞ୍ଚh', 'ଞ୍ଛ'], // nch
+ ['ଞ୍ଜh', 'ଞ୍ଝ'], // njh
+ ['ଙ୍କh', 'ଙ୍ଖ'], // nkh
+ ['ଙ୍ଗh', 'ଙ୍ଘ'], // ngh
+ ['ହm', 'ହ୍ମ'], // mh
+ ['ହn', 'ହ୍ନ'], // nh
+ ['ମ୍ବh', 'ମ୍ଭ'], // mbh or nbh
+ ['ଣ୍ଡai', 'ଣ୍ଡାଇ'], // NDai
+ ['ଜ୍ଜh', 'ଜ୍ଝ'], // jjh
+ ['ଚ୍ଚh', 'ଚ୍ଛ'], // cch
+
+ ['ଣG', 'ଙ'], // NG
+ ['ଣg', 'ଞ'], // Ng
+ ['କh', 'ଖ'], // kh
+ ['ଗh', 'ଘ'], // gh
+ ['ନc', 'ଞ୍ଚ'], // nc
+ ['ନg', 'ଙ୍ଗ'], // ng
+ ['ଚh', 'ଛ'], // ch
+ ['C', 'ଛ'], // ch
+ ['ଜh', 'ଝ'], // jh
+ ['ନj', 'ଞ୍ଜ'], // nj
+ ['ନk', 'ଙ୍କ'], // nk
+ ['ନd', 'ନ୍ଦ'], // nd
+ ['ନD|ଣD', 'ଣ୍ଡ'], // nd
+ ['ଣDh', 'ଣ୍ଢ'], //ndh
+ ['ନdh', 'ନ୍ଧ'], // ndht
+ ['ଷT', '$1୍ଟ'], // ST
+ ['ଟh', 'ଠ'], // Th
+ ['ଡh', 'ଢ'], // Dh
+ ['ତh', 'ଥ'], // th
+ ['ଦh', 'ଧ'], // dh
+ ['(f|ପh|P)', 'ଫ'], // ph or f
+ ['ବh', 'ଭ'], // bh
+ ['ସh', 'ଷ'], // sh
+ ['ମb', 'ମ୍ବ'], // mb or nb
+ ['ଣT', 'ଣ୍ଟ'], // NT
+ ['ଣTh', 'ଣ୍ଠ'], // NTh
+ ['(ଷ|ମ)p', '$1୍ପ'], // sp/shp
+ ['shp', 'ଷ୍ପ'], // sp
+ ['ଂM', 'ଁ'], // MM
+
+ ['କk', 'କ୍କ'], // kk
+ ['ଗg', 'ଗ୍ଗ'], // gg
+ ['ଚc', 'ଚ୍ଚ'], // cc
+ ['ଜj', 'ଜ୍ଜ'], // jj
+ ['ଦd', 'ଦ୍ଦ'], // dd
+ ['ଟT', 'ଟ୍ଟ'], // TT
+ ['ଡD', 'ଡ୍ଡ'], // DD
+ ['ତt', 'ତ୍ତ'], // tt
+ ['ଲl', 'ଲ୍ଲ'], // ll
+ ['ପp', 'ପ୍ପ'], //pp
+ [ '_', '\u200c' ],
+
+ ['ଆ\\\\', '\u0B3E'], // aa sign
+ ['ଇ\\\\', '\u0B3F'], // i sign
+ ['ଈ\\\\', '\u0B40'], // I sign
+ ['ଉ\\\\', '\u0B41'], // u sign
+ ['ଉ\\\\', '\u0B42'], // U sign
+ ['ଋ\\\\', '\u0B43'], // R sign
+ ['ୠ\\\\', '\u0B44'], // RR sign
+ ['ଌ\\\\', '\u0B62'], // L sign
+ ['ୡ\\\\', '\u0B63'], // LL sign
+ ['ଏ\\\\', '\u0B47'], // e sign
+ ['ଐ\\\\', '\u0B48'], // ai sign
+ ['ଓ\\\\', '\u0B4B'], // o sign
+ ['ଔ\\\\', '\u0B4C'], // au sign
+
+ ['\u200c?a', 'ଅ'],
+ ['b', 'ବ'],
+ ['c', '', 'ଚ'],
+ ['d', 'ଦ'],
+ ['\u200c?e', 'ଏ'],
+ ['g', 'ଗ'],
+ ['G', 'ଘ'],
+ ['h', 'ହ'],
+ ['\u200c?i', 'ଇ'],
+ ['j', 'ଜ'],
+ ['k', 'କ'],
+ ['l', 'ଲ'],
+ ['m', 'ମ'],
+ ['n', 'ନ'],
+ ['\u200c?o', 'ଓ'],
+ ['p', 'ପ'],
+ ['q', 'ଡ଼'],
+ ['r', 'ର'],
+ ['s', 'ସ'],
+ ['t', 'ତ'],
+ ['\u200c?u', 'ଉ'],
+ ['[vwVW]', 'ୱ'],
+ ['x', 'କ୍ଷ'],
+ ['[Y]', 'ୟ'],
+ ['[y]', 'ଯ'],
+ ['\u200c?A', 'ଆ'],
+ ['B', 'ବ'],
+ ['C', 'ଛ'],
+ ['D', 'ଡ'],
+ ['\u200c?E', 'ଐ'],
+ ['F', 'ଫ'],
+ ['G', 'ଗ'],
+ ['H', 'ଃ'],
+ ['\u200c?I', 'ଈ'],
+ ['J', 'ଯ'],
+ ['K', 'ଖ'],
+ ['L', 'ଳ'],
+ ['M', 'ଂ'],
+ ['N', 'ଣ'],
+ ['\u200c?O', 'ଔ'],
+ ['P', 'ଫ'],
+ ['Q', 'ଢ଼'],
+ ['R', 'ଋ'],
+ ['S', 'ଶ'],
+ ['T', 'ଟ'],
+ ['\u200c?U', 'ଊ'],
+ ['X', 'ଁ'],
+ ['Z', 'ଜ୍ଞ'],
+ ['//', '୍ର'],
+
+ ['0', '୦'],
+ ['1', '୧'],
+ ['2', '୨'],
+ ['3', '୩'],
+ ['4', '୪'],
+ ['5', '୫'],
+ ['6', '୬'],
+ ['7', '୭'],
+ ['8', '୮'],
+ ['9', '୯']
+ ]
+ };
+
+ $.ime.register( orLekhani );
+}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/or/or-phonetic.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/or/or-phonetic.js
new file mode 100644
index 00000000..3861ffd2
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/or/or-phonetic.js
@@ -0,0 +1,110 @@
+( function ( $ ) {
+ 'use strict';
+
+ var orPhonetic = {
+ id: 'or-phonetic',
+ name: 'ଫୋନେଟିକ',
+ description: 'Phonetic keyboard for Odia script',
+ date: '2013-02-09',
+ URL: 'http://github.com/wikimedia/jquery.ime',
+ author: 'Parag Nemade',
+ license: 'GPLv3',
+ version: '1.0',
+ patterns: [
+ ['\\~', 'ଐ'],
+ ['\\`', ' ୈ'],
+ ['\\!', 'ଏ'],
+ ['1', '୧'],
+ ['\\@', '@'],
+ ['2', '୨'],
+ ['\\#', 'ତ୍ର'],
+ ['3', '୩'],
+ ['\\$', '$'],
+ ['4', '୪'],
+ ['\\%', 'ଞ'],
+ ['5', '୫'],
+ ['6', '୬'],
+ ['7', '୭'],
+ ['8', '୮'],
+ ['\\(', '('],
+ ['9', '୯'],
+ ['\\)', ')'],
+ ['0', '୦'],
+ ['\\_', '_'],
+ ['\\-', '-'],
+ ['\\+', '+'],
+ ['\\=', '='],
+ ['Q', 'ଔ'],
+ ['q', 'ଓ'],
+ ['W', 'ଠ'],
+ ['w', 'ଟ'],
+ ['E', 'ୈ'],
+ ['e', 'େ'],
+ ['R', 'ୃ '],
+ ['r', 'ର'],
+ ['T', 'ଥ'],
+ ['t', 'ତ'],
+ ['Y', 'ୟ'],
+ ['y', 'ଯ'],
+ ['U', 'ୂ'],
+ ['u', 'ୁ'],
+ ['I', 'ୀ'],
+ ['i', 'ି'],
+ ['O', 'ୌ'],
+ ['o', 'ୋ'],
+ ['P', 'ଫ'],
+ ['p', 'ପ'],
+ ['\\{', 'ଢ'],
+ ['\\[', 'ଡ'],
+ ['\\}', 'ର୍'],
+ ['\\]', 'ଋ'],
+ ['A', 'ଆ'],
+ ['a', 'ା'],
+ ['S', 'ଶ'],
+ ['s', 'ସ'],
+ ['D', 'ଧ'],
+ ['d', 'ଦ'],
+ ['F', 'ଅ'],
+ ['f', '୍'],
+ ['G', 'ଘ'],
+ ['g', 'ଗ'],
+ ['H', 'ଃ'],
+ ['h', 'ହ'],
+ ['J', 'ଝ'],
+ ['j', 'ଜ'],
+ ['K', 'ଖ'],
+ ['k', 'କ'],
+ ['L', 'ଳ'],
+ ['l', 'ଲ'],
+ [':', 'ଈ'],
+ [';', 'ଇ'],
+ ['"', 'ଊ'],
+ ['\'', 'ଉ'],
+ ['\\|', '|'],
+ ['\\\\', '\\'],
+ ['Z', 'ଁ'],
+ ['z', 'ଙ'],
+ ['x', 'ଷ'],
+ ['C', 'ଛ'],
+ ['c', 'ଚ'],
+ ['V', 'ଵ'],
+ ['v', 'ୱ'],
+ ['B', 'ଭ'],
+ ['b', 'ବ'],
+ ['N', 'ଣ'],
+ ['n', 'ନ'],
+ ['M', 'ଂ'],
+ ['m', 'ମ'],
+ ['\\<', '<'],
+ [',', ','],
+ ['\\>', '>'],
+ ['\\.', '।'],
+ ['\\?', 'ଐ'],
+ ['/', 'ଏ'],
+ ['\\^', 'ଜ୍ଞ'],
+ ['X', 'କ୍ଷ'],
+ ['\\*', 'ଶ୍ର']]
+ };
+
+ $.ime.register( orPhonetic );
+}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/or/or-transliteration.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/or/or-transliteration.js
new file mode 100644
index 00000000..12fd8d90
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/or/or-transliteration.js
@@ -0,0 +1,146 @@
+( function ( $ ) {
+ 'use strict';
+
+ var orTransliteration = {
+ id: 'or-transliteration',
+ name: 'ଟ୍ରାନ୍ସଲିଟରେସନ',
+ description: 'Odia Transliteration',
+ date: '2012-10-14',
+ URL: 'http://github.com/wikimedia/jquery.ime',
+ author: 'Junaid P V and Subhashish Panigrahi',
+ license: 'GPLv3',
+ version: '1.0',
+ contextLength: 4,
+ maxKeyLength: 2,
+ patterns: [
+ [ '\\\\([A-Za-z\\>_~\\.0-9])', '\\\\', '$1' ],
+
+ [ 'ଞ୍ଜ୍h', 'ଞ୍ଝ୍' ], // njh
+ [ 'ଙ୍ଗ୍h', 'ଙ୍ଘ୍' ], // ngh
+
+ [ '([କ-ହୟ])୍a', '$1' ],
+ [ '([କ-ହୟ])(a|୍A)', '$1ା' ],
+ [ '([କ-ହୟ])୍i', '$1\u0b3f' ],
+ [ '([କ-ହୟ])୍I', '$1ୀ' ],
+ [ '([କ-ହୟ])୍u', '$1\u0b41' ],
+ [ '([କ-ହୟ])(୍U|\u0b41u)', '$1\u0b42' ],
+ [ '([କ-ହୟ])୍R', '$1\u0b43' ],
+ [ '([କ-ହୟ])\u0b43R', '$1\u0b44' ],
+ [ '([କ-ହୟ])୍ଳ୍l', '$1ୢ' ],
+ [ '([କ-ହୟ])ୢl', '$1ୣ' ],
+ [ '([କ-ହୟ])୍e', '$1େ' ],
+ [ '([କ-ହୟ])i', '$1ୈ' ],
+ [ '([କ-ହୟ])୍o', '$1ୋ' ],
+ [ '([କ-ହୟ])ୋu', '$1ୌ' ],
+ [ '([କ-ହୟ])୍E', '$1\u0B48' ],
+
+ [ 'ଅa', 'ଆ' ],
+ [ '(ଅi|ଏe)', 'ଐ' ],
+ [ '(ଅu|ଓo|ଓO)', 'ଔ' ],
+ [ 'ଋR', 'ୠ' ],
+ [ 'ଳ୍l', 'ଌ' ],
+ [ 'ଌl', 'ୡ' ],
+ [ 'ଞ୍ଚ୍h', 'ଞ୍ଛ୍' ], // nch
+
+ [ 'ଣ୍G', 'ଙ୍' ], // NG
+ [ 'ଣ୍g', 'ଞ୍' ], // Ng
+ [ 'କ୍h', 'ଖ୍' ],
+ [ 'ଗ୍h', 'ଘ୍' ],
+ [ 'ନ୍c', 'ଞ୍ଚ୍' ], // nc
+ [ 'ନ୍g', 'ଙ୍ଗ୍' ], // ng
+ [ 'ଚ୍h', 'ଛ୍' ],
+ [ 'ଜ୍h', 'ଝ୍' ],
+ [ 'ନ୍j', 'ଞ୍ଜ୍' ], // nj
+ [ 'ନ୍k', 'ଙ୍କ୍' ], // nk
+ [ 'ଟ୍h', 'ଠ୍' ],
+ [ 'ଡ୍h', 'ଢ୍' ],
+ [ 'ତ୍h', 'ଥ୍' ],
+ [ 'ଦ୍h', 'ଧ୍' ],
+ [ 'ପ୍h', 'ଫ୍' ],
+ [ 'ବ୍h', 'ଭ୍' ],
+ [ 'ସ୍h', 'ଷ୍' ],
+ [ '।Z', '॥' ],
+
+ [ 'ଆ\\\\', '\u0B3E' ], // aa sign
+ [ 'ଇ\\\\', '\u0B3F' ], // i sign
+ [ 'ଈ\\\\', '\u0B40' ],// I sign
+ [ 'ଉ\\\\', '\u0B41' ], // u sign
+ [ 'ଉ\\\\', '\u0B42' ], // U sign
+ [ 'ଋ\\\\', '\u0B43' ], // R sign
+ [ 'ୠ\\\\', '\u0B44' ], // RR sign
+ [ 'ଌ\\\\', '\u0B62' ], // L sign
+ [ 'ୡ\\\\', '\u0B63' ], // LL sign
+ [ 'ଏ\\\\', '\u0B47' ], // e sign
+ [ 'ଐ\\\\', '\u0B48' ], // ai sign
+ [ 'ଓ\\\\', '\u0B4B' ], // o sign
+ [ 'ଔ\\\\', '\u0B4C' ], // au sign
+
+ [ '\u200c?a', 'ଅ' ],
+ [ 'b', 'ବ୍' ],
+ [ 'c', '', 'ଚ୍' ],
+ [ 'd', 'ଦ୍' ],
+ [ '\u200c?e', 'ଏ' ],
+ [ 'f', 'ଫ୍' ],
+ [ 'g', 'ଗ୍' ],
+ [ 'h', 'ହ୍' ],
+ [ '\u200c?i', 'ଇ' ],
+ [ 'j', 'ଜ୍' ],
+ [ 'k', 'କ୍' ],
+ [ 'l', 'ଲ୍' ],
+ [ 'm', 'ମ୍' ],
+ [ 'n', 'ନ୍' ],
+ [ '\u200c?o', 'ଓ' ],
+ [ 'p', 'ପ୍' ],
+ [ 'q', 'ଜ୍ଞ୍' ],
+ [ 'r', 'ର୍' ],
+ [ 's', 'ସ୍' ],
+ [ 't', 'ତ୍' ],
+ [ '\u200c?u', 'ଉ' ],
+ [ 'v', 'ୱ୍' ],
+ [ 'w', 'ଵ୍' ],
+ [ 'x', 'କ୍ଷ୍' ],
+ [ 'y', 'ୟ୍' ],
+ [ 'z', '\u0B3C' ],
+ [ '\u200c?A', 'ଆ' ],
+ [ 'B', 'ବ୍' ],
+ [ 'C', 'ଛ୍' ],
+ [ 'D', 'ଡ୍' ],
+ [ '\u200c?E', 'ଐ' ],
+ [ 'F', 'ଫ୍' ],
+ [ 'G', 'ଗ୍' ],
+ [ 'H', '', 'ଃ' ],
+ [ '\u200c?I', 'ଈ' ],
+ [ 'J', 'ଝ୍' ],
+ [ 'K', 'କ୍' ],
+ [ 'L', 'ଳ୍' ],
+ [ 'M', '', 'ଂ' ],
+ [ 'N', 'ଣ୍' ],
+ [ '\u200c?O', 'ଔ' ],
+ [ 'P', 'ଫ୍' ],
+ [ 'Q', 'ଜ୍ଞ୍' ],
+ [ 'R', 'ଋ' ],
+ [ 'S', 'ଶ୍' ],
+ [ 'T', 'ଟ୍' ],
+ [ '\u200c?U', 'ଊ' ],
+ [ 'V', 'ଵ୍' ],
+ [ 'W', 'ଵ୍ଵ୍' ],
+ [ 'X', 'ଁ' ],
+ [ 'Y', 'ଯ୍' ],
+ [ 'Z', '।' ],
+ [ '\\~', '', '୍' ],
+ [ '//', 'ଽ' ],
+ [ '_', '\u200c' ],
+ [ '0', '୦' ],
+ [ '1', '୧' ],
+ [ '2', '୨' ],
+ [ '3', '୩' ],
+ [ '4', '୪' ],
+ [ '5', '୫' ],
+ [ '6', '୬' ],
+ [ '7', '୭' ],
+ [ '8', '୮' ],
+ [ '9', '୯' ] ]
+ };
+
+ $.ime.register( orTransliteration );
+}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/pa/pa-inscript.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/pa/pa-inscript.js
new file mode 100644
index 00000000..1ee57c54
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/pa/pa-inscript.js
@@ -0,0 +1,97 @@
+( function ( $ ) {
+ 'use strict';
+
+ var paInScript = {
+ id: 'pa-inscript',
+ name: 'Punjabi InScript',
+ description: 'InScript keyboard for Punjabi script',
+ date: '2012-10-16',
+ author: '',
+ license: '',
+ version: '1.0',
+ patterns: [
+ ['1', '੧'],
+ ['2', '੨'],
+ ['3', '੩'],
+ ['4', '੪'],
+ ['5', '੫'],
+ ['6', '੬'],
+ ['7', '੭'],
+ ['8', '੮'],
+ ['9', '੯'],
+ ['0', '੦'],
+ ['\\_', '_'],
+ ['\\-', '-'],
+ ['\\+', '+'],
+ ['\\=', '='],
+ ['Q', 'ਔ'],
+ ['q', 'ੌ'],
+ ['W', 'ਐ'],
+ ['w', 'ੈ'],
+ ['E', 'ਆ'],
+ ['e', 'ਾ'],
+ ['R', 'ਈ'],
+ ['r', 'ੀ'],
+ ['T', 'ਊ'],
+ ['t', 'ੂ'],
+ ['Y', 'ਭ'],
+ ['y', 'ਬ'],
+ ['U', 'ਙ'],
+ ['u', 'ਹ'],
+ ['I', 'ਘ'],
+ ['i', 'ਗ'],
+ ['O', 'ਧ'],
+ ['o', 'ਦ'],
+ ['P', 'ਝ'],
+ ['p', 'ਜ'],
+ ['\\{', 'ਢ'],
+ ['\\[', 'ਡ'],
+ ['\\}', 'ਞ'],
+ ['\\]', '਼'],
+ ['A', 'ਓ'],
+ ['a', 'ੋ'],
+ ['S', 'ਏ'],
+ ['s', 'ੇ'],
+ ['D', 'ਅ'],
+ ['d', '੍'],
+ ['F', 'ਇ'],
+ ['f', 'ਿ'],
+ ['G', 'ਉ'],
+ ['g', 'ੁ'],
+ ['H', 'ਫ'],
+ ['h', 'ਪ'],
+ ['J', 'ੜ'],
+ ['j', 'ਰ'],
+ ['K', 'ਖ'],
+ ['k', 'ਕ'],
+ ['L', 'ਥ'],
+ ['l', 'ਤ'],
+ ['\\:', 'ਛ'],
+ ['\\;', 'ਚ'],
+ ['"', 'ਠ'],
+ ['\'', 'ਟ'],
+ ['Z', 'ੱ'],
+ ['z', 'ੰ'],
+ ['X', 'ਫ਼'],
+ ['x', 'ਜ਼'],
+ ['C', 'ਣ'],
+ ['c', 'ਮ'],
+ ['V', 'ਂ'],
+ ['v', 'ਨ'],
+ ['B', 'ਞ'],
+ ['b', 'ਵ'],
+ ['N', 'ਲ਼'],
+ ['n', 'ਲ'],
+ ['M', 'ਸ਼'],
+ ['m', 'ਸ'],
+ ['\\<', 'ੳ'],
+ [',', ','],
+ ['\\>', 'ੲ'],
+ ['\\.', '.'],
+ ['\\?', '?'],
+ ['/', 'ਯ']]
+
+ };
+
+ $.ime.register( paInScript );
+}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/pa/pa-inscript2.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/pa/pa-inscript2.js
new file mode 100644
index 00000000..2c49a06b
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/pa/pa-inscript2.js
@@ -0,0 +1,111 @@
+( function ( $ ) {
+ 'use strict';
+
+ var paInScript2 = {
+ id: 'pa-inscript2',
+ name: 'Punjabi InScript2',
+ description: 'Enhanced InScript keyboard for Punjabi script',
+ date: '2013-11-14',
+ author: 'Parag Nemade',
+ license: 'GPLv3',
+ version: '1.0',
+ patterns: [
+ ['1', '੧'],
+ ['2', '੨'],
+ ['3', '੩'],
+ ['4', '੪'],
+ ['5', '੫'],
+ ['6', '੬'],
+ ['7', '੭'],
+ ['8', '੮'],
+ ['9', '੯'],
+ ['0', '੦'],
+ ['\\(', '('],
+ ['\\)', ')'],
+ ['\\_', 'ਃ'],
+ ['\\-', '-'],
+ ['Q', 'ਔ'],
+ ['q', 'ੌ'],
+ ['W', 'ਐ'],
+ ['w', 'ੈ'],
+ ['E', 'ਆ'],
+ ['e', 'ਾ'],
+ ['R', 'ਈ'],
+ ['r', 'ੀ'],
+ ['T', 'ਊ'],
+ ['t', 'ੂ'],
+ ['Y', 'ਭ'],
+ ['y', 'ਬ'],
+ ['U', 'ਙ'],
+ ['u', 'ਹ'],
+ ['I', 'ਘ'],
+ ['i', 'ਗ'],
+ ['O', 'ਧ'],
+ ['o', 'ਦ'],
+ ['P', 'ਝ'],
+ ['p', 'ਜ'],
+ ['\\{', 'ਢ'],
+ ['\\[', 'ਡ'],
+ ['\\}', 'ਞ'],
+ ['\\]', '਼'],
+ ['A', 'ਓ'],
+ ['a', 'ੋ'],
+ ['S', 'ਏ'],
+ ['s', 'ੇ'],
+ ['D', 'ਅ'],
+ ['d', '੍'],
+ ['F', 'ਇ'],
+ ['f', 'ਿ'],
+ ['G', 'ਉ'],
+ ['g', 'ੁ'],
+ ['H', 'ਫ'],
+ ['h', 'ਪ'],
+ ['J', 'ੜ'],
+ ['j', 'ਰ'],
+ ['K', 'ਖ'],
+ ['k', 'ਕ'],
+ ['L', 'ਥ'],
+ ['l', 'ਤ'],
+ [':', 'ਛ'],
+ [';', 'ਚ'],
+ ['"', 'ਠ'],
+ ['\\\'', 'ਟ'],
+ ['X', 'ਂ'],
+ ['x', 'ੰ'],
+ ['C', 'ਣ'],
+ ['c', 'ਮ'],
+ ['v', 'ਨ'],
+ ['B', 'ਞ'],
+ ['b', 'ਵ'],
+ ['N', 'N'],
+ ['n', 'ਲ'],
+ ['M', 'ਸ਼'],
+ ['m', 'ਸ'],
+ [',', ','],
+ ['\\>', '।'],
+ ['\\.', '.'],
+ ['/', 'ਯ']
+ ],
+ patterns_x: [
+ ['1', '\u200d'],
+ ['2', '\u200c'],
+ ['4', '₹'],
+ ['i', 'ਗ਼'],
+ ['p', 'ਜ਼'],
+ ['\\[', 'ੜ'],
+ ['D', '☬'],
+ ['d', 'ੑ'],
+ ['F', 'ੲ'],
+ ['G', 'ੳ'],
+ ['H', 'ਫ਼'],
+ ['K', 'ਖ਼'],
+ ['X', 'ੴ'],
+ ['x', 'ਁ'],
+ ['N', 'ਲ਼'],
+ ['\\.', '॥'],
+ ['/', 'ੵ']
+ ]
+ };
+
+ $.ime.register( paInScript2 );
+}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/pa/pa-jhelum.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/pa/pa-jhelum.js
new file mode 100644
index 00000000..9a0217e3
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/pa/pa-jhelum.js
@@ -0,0 +1,131 @@
+( function ( $ ) {
+ 'use strict';
+
+ var paJhelum = {
+ id: 'pa-jhelum',
+ name: 'Punjabi Jhelum',
+ description: 'Jhelum keyboard for Punjabi script',
+ date: '2013-11-14',
+ author: 'Parag Nemade',
+ license: 'GPLv3',
+ version: '1.0',
+ patterns: [
+ ['\\~', '~'],
+ ['\\`', '`'],
+ ['\\!', '!'],
+ ['1', '1'],
+ ['\\@', '@'],
+ ['2', '2'],
+ ['\\#', '#'],
+ ['3', '3'],
+ ['\\$', '$'],
+ ['4', '4'],
+ ['\\%', '%'],
+ ['5', '5'],
+ ['\\^', 'ੳ'],
+ ['6', '6'],
+ ['\\&', 'ੲ'],
+ ['7', '7'],
+ ['8', '8'],
+ ['\\(', '('],
+ ['9', '9'],
+ ['\\)', ')'],
+ ['0', '0'],
+ ['\\_', '_'],
+ ['\\-', '-'],
+ ['\\+', '+'],
+ ['\\=', '='],
+ ['Q', 'ਔ'],
+ ['q', 'ੌ'],
+ ['W', 'ਐ'],
+ ['w', 'ੈ'],
+ ['E', 'ਆ'],
+ ['e', 'ਾ'],
+ ['R', 'ਈ'],
+ ['r', 'ੀ'],
+ ['T', 'ਊ'],
+ ['t', 'ੂ'],
+ ['Y', 'ੜ'],
+ ['y', 'ਰ'],
+ ['U', 'ਧ'],
+ ['u', 'ਦ'],
+ ['I', 'ਘ'],
+ ['i', 'ਗ'],
+ ['O', 'ਟ'],
+ ['o', 'ਤ'],
+ ['P', 'ਫ'],
+ ['p', 'ਪ'],
+ ['\\{', 'ਢ'],
+ ['\\[', 'ਡ'],
+ ['\\}', 'ਞ'],
+ ['\\]', 'ਙ'],
+ ['A', 'ਓ'],
+ ['a', 'ੋ'],
+ ['S', 'ਏ'],
+ ['s', 'ੇ'],
+ ['D', 'ਅ'],
+ ['d', '੍'],
+ ['F', 'ਇ'],
+ ['f', 'ਿ'],
+ ['G', 'ਉ'],
+ ['g', 'ੁ'],
+ ['H', 'ਠ'],
+ ['h', 'ਹ'],
+ ['J', 'ਝ'],
+ ['j', 'ਜ'],
+ ['K', 'ਖ'],
+ ['k', 'ਕ'],
+ ['L', 'ਥ'],
+ ['l', 'ਲ'],
+ [':', ':'],
+ [';', 'ਸ'],
+ ['"', '"'],
+ ['\\\'', '\''],
+ ['\\|', '।'],
+ ['\\', '\\'],
+ ['Z', '਼'],
+ ['z', 'ੱ'],
+ ['X', 'ੰ'],
+ ['x', 'ਂ'],
+ ['C', 'ਛ'],
+ ['c', 'ਚ'],
+ ['V', 'ਯ'],
+ ['v', 'ਵ'],
+ ['B', 'ਭ'],
+ ['b', 'ਬ'],
+ ['N', 'ਣ'],
+ ['n', 'ਨ'],
+ ['M', 'ਠ'],
+ ['m', 'ਮ'],
+ ['\\<', '<'],
+ [',', ','],
+ ['\\>', '>'],
+ ['\\.', '.'],
+ ['\\?', '?'],
+ ['/', '/'],
+ ['\\*', '*']
+ ],
+ patterns_x: [
+ ['1', '੧'],
+ ['2', '੨'],
+ ['3', '੩'],
+ ['4', '੪'],
+ ['5', '੫'],
+ ['6', '੬'],
+ ['7', '੭'],
+ ['8', '੮'],
+ ['9', '੯'],
+ ['0', '੦'],
+ ['y', '੍ਰ'],
+ ['i', 'ਗ਼'],
+ ['P', 'ਫ਼'],
+ ['h', '੍ਹ'],
+ ['j', 'ਜ਼'],
+ ['K', 'ਖ਼'],
+ ['l', 'ਲ਼'],
+ [';', 'ਸ਼']
+ ]
+ };
+
+ $.ime.register( paJhelum );
+}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/pa/pa-phonetic.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/pa/pa-phonetic.js
new file mode 100644
index 00000000..4690c746
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/pa/pa-phonetic.js
@@ -0,0 +1,99 @@
+( function ( $ ) {
+ 'use strict';
+
+ var paPhonetic = {
+ id: 'pa-phonetic',
+ name: 'Punjabi Phonetic',
+ description: 'Punjabi Phonetic',
+ date: '2012-10-16',
+ URL: 'http://fedoraproject.org/wiki/I18N/Indic/PunjabiKeyboardLayouts',
+ author: '',
+ license: '',
+ version: '1.0',
+ patterns: [
+ ['!', '੧'],
+ ['1', '1'],
+ ['@', '੨'],
+ ['2', '2'],
+ ['#', '੩'],
+ ['3', '3'],
+ ['\\$', '੪'],
+ ['4', '4'],
+ ['5', '5'],
+ ['6', '6'],
+ ['7', '7'],
+ ['8', '8'],
+ ['\\(', '੯'],
+ ['9', '9'],
+ ['\\)', '੦'],
+ ['0', '0'],
+ ['Q', 'ਥ'],
+ ['q', 'ਤ'],
+ ['w', 'ਾ'],
+ ['E', 'ਓ'],
+ ['e', 'ੲ'],
+ ['r', 'ਰ'],
+ ['T', 'ਠ'],
+ ['t', 'ਟ'],
+ ['Y', 'ੈ'],
+ ['y', 'ੇ'],
+ ['U', 'ੂ'],
+ ['u', 'ੁ'],
+ ['I', 'ੀ'],
+ ['i', 'ਿ'],
+ ['O', 'ੌ'],
+ ['o', 'ੋ'],
+ ['P', 'ਫ'],
+ ['p', 'ਪ'],
+ ['\\{', '('],
+ ['\\}', ')'],
+ ['A', 'ਅ'],
+ ['a', 'ੳ'],
+ ['S', 'ਸ਼'],
+ ['s', 'ਸ'],
+ ['D', 'ਧ'],
+ ['d', 'ਦ'],
+ ['F', 'ਢ'],
+ ['f', 'ਡ'],
+ ['G', 'ਘ'],
+ ['g', 'ਗ'],
+ ['h', 'ਹ'],
+ ['J', 'ਝ'],
+ ['j', 'ਜ'],
+ ['K', 'ਖ'],
+ ['k', 'ਕ'],
+ ['L', 'ਲ਼'],
+ ['l', 'ਲ'],
+ ['\\', 'ਙ'],
+ ['\\~', '?ੱ'],
+ ['\\`', '?੍ '],
+ ['Z', 'ਗ਼'],
+ ['z', 'ਜ਼'],
+ ['X', 'ਯ'],
+ ['x', 'ਣ'],
+ ['C', 'ਛ'],
+ ['c', 'ਚ'],
+ ['V', 'ੜ'],
+ ['v', 'ਵ'],
+ ['B', 'ਭ'],
+ ['b', 'ਬ'],
+ ['N', 'ਂ'],
+ ['n', 'ਨ'],
+ ['M', 'ੰ'],
+ ['m', 'ਮ'],
+ ['\\<', 'ਖ਼'],
+ ['\\>', 'ੴ'],
+ ['\\.', '?਼'],
+ ['\\?', '?'],
+ ['\\/', 'ਞ'],
+ ['%', '੫'],
+ ['\\^', '੬'],
+ ['&', '੭'],
+ ['\\*', '੮'],
+ ['R', '੍ਰ'],
+ ['H', '੍ਹ'],
+ ['W', 'ਾਂ']]
+ };
+
+ $.ime.register( paPhonetic );
+}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/pa/pa-transliteration.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/pa/pa-transliteration.js
new file mode 100644
index 00000000..af5b4fc6
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/pa/pa-transliteration.js
@@ -0,0 +1,119 @@
+( function ( $ ) {
+ 'use strict';
+
+ var paTransliteration = {
+ id: 'pa-transliteration',
+ name: 'Punjabi Transliteration',
+ description: 'Punjabi transliteration',
+ date: '2012-10-16',
+ URL: 'http://github.com/wikimedia/jquery.ime',
+ author: 'Amir E. Aharoni, inputs from Saurabh Choudhary and Surinder Wadhawan',
+ license: 'GPLv3',
+ version: '1.0',
+ contextLength: 2,
+ maxKeyLength: 4,
+ /* Semi-automatically created from the Hindi transliteration mapping using
+ * the following Perl substitution:
+ * s{(?<deva_letter>[ऀ-ॿ])}{chr(ord($+{deva_letter}) + 0x100)}xmsge;
+ */
+ patterns: [
+ ['ਕ੍h', 'c', 'ਚ੍'],
+ ['\\\\([A-Za-z\\>_~\\.0-9])', '\\\\', '$1'],
+
+ // ਕ-ਹ is the main range of Indic letters.
+ // ੜ is an additional unique Gurmukhi letter.
+ ['([ਕ-ਹੜ]਼?)੍a', '$1'], // Short [a] after a consonant with virama removes the virama
+ ['([ਕ-ਹੜ]਼?)੍A', '$1ਾ'], // Long [a] after a consonant with virama removes the virama and adds long [a]
+ ['([ਕ-ਹੜ]਼?)a', '$1ਾ'], // 'aa' gives long [a] - short [a] after a consonant without virama adds long [a]
+ ['([ਕ-ਹੜ]਼?)੍i', '$1ਿ'],
+ ['([ਕ-ਹੜ]਼?)(ਿi|੍I|ੇe)', '$1ੀ'], // 'ii', 'I' and 'ee' give long [i].
+ ['([ਕ-ਹੜ]਼?)੍u', '$1ੁ'],
+ ['([ਕ-ਹੜ]਼?)(ੁu|੍U|ੋo)', '$1ੂ'], // 'uu', 'U' and 'oo' give long [u].
+ ['([ਕ-ਹੜ]਼?)੍e', '$1ੇ'],
+ ['([ਕ-ਹੜ]਼?)(i|੍E)', '$1ੈ'], // 'i' after a consonant without virama or 'E' after a consonant with Virama gives "ai"
+ ['([ਕ-ਹੜ]਼?)੍[oO]', '$1ੋ'],
+ ['([ਕ-ਹੜ]਼?)u', '$1ੌ'], // 'u' after a consonant without virama gives "au"
+ ['([ਕ-ਹੜ])੍\\`', '$1਼੍'], // '`' (backtick) after a consonant with virama adds a nukta before the virama
+
+ ['ਅa', 'ਆ'], // aa
+ ['(ਓo|ਉu)', 'ਊ'], //oo, uu
+ ['ਅi', 'ਐ'], // ai
+ ['ਅ\\^', 'ੲ'], // a^ (iri - base for vowels)
+ ['ਉ\\^', 'ੳ'], // u^ (ura - base for vowels)
+ ['(ਏe|ਇi)', 'ਈ'], // ee, ii
+ ['ਅu', 'ਔ'], // au
+ ['ਂ[Mm^]', 'ਁ'], // bindi + 'm', 'M', or '^' -> Adak bindi
+ ['ਣ੍N', 'ੰ'], // Tippi - nasalization
+
+ ['ਕ੍h', 'ਖ੍'], // kh
+ ['ਗ੍h', 'ਘ੍'], // gh
+ ['ਨ੍g', 'ਙ੍'], // ng
+ ['ਚ੍h', 'ਛ੍'], // ch
+ ['ਜ੍h', 'ਝ੍'], // jh
+ ['ਨ੍j', 'ਞ੍'], // nj
+ ['ਟ੍h', 'ਠ੍'], // Th
+ ['ਡ੍h', 'ਢ੍'], // Dh
+ ['ਤ੍h', 'ਥ੍'], // th
+ ['ਦ੍h', 'ਧ੍'], // dh
+ ['ਪ੍h', 'ਫ੍'], // ph
+ ['ਬ੍h', 'ਭ੍'], // bh
+
+ ['ਸ੍h', 'ਸ਼੍'], // sh
+ ['ਕ਼੍h', 'ਖ਼੍'], // k + nukta + h
+
+ ['a', 'ਅ'],
+ ['b', 'ਬ੍'],
+ ['c', 'ਚ੍'],
+ ['d', 'ਦ੍'],
+ ['e', 'ਏ'],
+ ['f', 'ਫ੍'],
+ ['F', 'ਫ਼੍'], // With nukta
+ ['g', 'ਗ੍'],
+ ['h', 'ਹ੍'],
+ ['i', 'ਇ'],
+ ['j', 'ਜ੍'],
+ ['k', 'ਕ੍'],
+ ['l', 'ਲ੍'],
+ ['m', 'ਮ੍'],
+ ['n', 'ਨ੍'],
+ ['o', 'ਓ'],
+ ['p', 'ਪ੍'],
+ ['q', 'ੑ'], // Udaat
+ ['r', 'ਰ੍'],
+ ['s', 'ਸ੍'],
+ ['t', 'ਤ੍'],
+ ['u', 'ਉ'],
+ ['(v|w)', 'ਵ੍'],
+ ['y', 'ਯ੍'],
+ ['z', 'ੱ'], // Addak - gemination
+ ['A', 'ਆ'],
+ ['D', 'ਡ੍'],
+ ['H', 'ਃ'], // Visarga
+ ['I', 'ਈ'],
+ ['M', 'ਂ'], // Bindi
+ ['N', 'ਣ੍'],
+ ['R', 'ੜ੍'], // Rra
+ ['S', 'ਸ਼੍'],
+ ['T', 'ਟ੍'],
+ ['U', 'ਊ'],
+ ['X', 'ੴ'], // Ek onkar
+ ['Y', 'ੵ'], // Yakash
+ ['0', '੦'],
+ ['1', '੧'],
+ ['2', '੨'],
+ ['3', '੩'],
+ ['4', '੪'],
+ ['5', '੫'],
+ ['6', '੬'],
+ ['7', '੭'],
+ ['8', '੮'],
+ ['9', '੯'],
+ ['~', '੍'], // Virama
+ ['\\`', '਼'], // Nukta
+
+ ['।\\.', '॥'], // Double danda, must be before single danda
+ ['\\.', '।']] // Danda
+ };
+
+ $.ime.register( paTransliteration );
+}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ru/ru-jcuken.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ru/ru-jcuken.js
new file mode 100644
index 00000000..5206cba0
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ru/ru-jcuken.js
@@ -0,0 +1,96 @@
+( function ( $ ) {
+ 'use strict';
+
+ var ruJcuken = {
+ id: 'ru-jcuken',
+ name: 'Русский - ЙЦУКЕН',
+ description: 'Стандартная русская раскладка',
+ date: '2012-10-16',
+ URL: 'http://github.com/wikimedia/jquery.ime',
+ author: 'Amir (Алексей) Aharoni',
+ license: 'GPLv3',
+ version: '1.0',
+ patterns: [
+ ['Q', 'Й'],
+ ['W', 'Ц'],
+ ['E', 'У'],
+ ['R', 'К'],
+ ['T', 'Е'],
+ ['Y', 'Н'],
+ ['U', 'Г'],
+ ['I', 'Ш'],
+ ['O', 'Щ'],
+ ['P', 'З'],
+ ['{', 'Х'],
+ ['}', 'Ъ'],
+ ['A', 'Ф'],
+ ['S', 'Ы'],
+ ['D', 'В'],
+ ['F', 'А'],
+ ['G', 'П'],
+ ['H', 'Р'],
+ ['J', 'О'],
+ ['K', 'Л'],
+ ['L', 'Д'],
+ [':', 'Ж'],
+ ['"', 'Э'],
+ ['Z', 'Я'],
+ ['X', 'Ч'],
+ ['C', 'С'],
+ ['V', 'М'],
+ ['B', 'И'],
+ ['N', 'Т'],
+ ['M', 'Ь'],
+ ['<', 'Б'],
+ ['>', 'Ю'],
+ ['\\?', ','],
+
+ ['q', 'й'],
+ ['w', 'ц'],
+ ['e', 'у'],
+ ['r', 'к'],
+ ['t', 'е'],
+ ['y', 'н'],
+ ['u', 'г'],
+ ['i', 'ш'],
+ ['o', 'щ'],
+ ['p', 'з'],
+ ['\\[', 'х'],
+ ['\\]', 'ъ'],
+ ['a', 'ф'],
+ ['s', 'ы'],
+ ['d', 'в'],
+ ['f', 'а'],
+ ['g', 'п'],
+ ['h', 'р'],
+ ['j', 'о'],
+ ['k', 'л'],
+ ['l', 'д'],
+ [';', 'ж'],
+ ['\'', 'э'],
+ ['z', 'я'],
+ ['x', 'ч'],
+ ['c', 'с'],
+ ['v', 'м'],
+ ['b', 'и'],
+ ['n', 'т'],
+ ['m', 'ь'],
+ [',', 'б'],
+ ['\\.', 'ю'],
+ ['/', '.'],
+
+ ['`', 'ё'],
+ ['~', 'Ё'],
+
+ // ! is the same // 1
+ ['@', '"'], // 2
+ ['#', '№'], // 3
+ ['\\$', ';'], // 4
+ // '%' is the same // 5
+ ['^', ':'], // 6
+ ['&', '?']] // 7
+ // '*', '(' and ')' are the same // 8, 9, 0
+ };
+
+ $.ime.register( ruJcuken );
+}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ru/ru-kbd.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ru/ru-kbd.js
new file mode 100644
index 00000000..f2d2bc0b
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ru/ru-kbd.js
@@ -0,0 +1,100 @@
+( function ( $ ) {
+ 'use strict';
+
+ var ruKbd = {
+ id: 'ru-kbd',
+ name: 'Russian kbd',
+ description: 'Russian kbd keyboard layout',
+ date: '2013-02-12',
+ URL: 'http://github.com/wikimedia/jquery.ime',
+ author: 'Parag Nemade',
+ license: 'GPLv3',
+ version: '1.0',
+ patterns: [
+ ['`', 'ё'],
+ ['q', 'й'],
+ ['w', 'ц'],
+ ['e', 'у'],
+ ['r', 'к'],
+ ['t', 'е'],
+ ['y', 'н'],
+ ['u', 'г'],
+ ['i', 'ш'],
+ ['o', 'щ'],
+ ['p', 'з'],
+ ['\\[', 'х'],
+ ['\\]', 'ъ'],
+ ['a', 'ф'],
+ ['s', 'ы'],
+ ['d', 'в'],
+ ['f', 'а'],
+ ['g', 'п'],
+ ['h', 'р'],
+ ['j', 'о'],
+ ['k', 'л'],
+ ['l', 'д'],
+ [';', 'ж'],
+ ['\'', 'э'],
+ ['\\\\', '\\'],
+ ['z', 'я'],
+ ['x', 'ч'],
+ ['c', 'с'],
+ ['v', 'м'],
+ ['b', 'и'],
+ ['n', 'т'],
+ ['m', 'ь'],
+ [',', 'б'],
+ ['\\.', 'ю'],
+ ['/', '.'],
+ ['\\!', '!'],
+ ['\\@', '\"'],
+ ['\\#', '№'],
+ ['\\$', ';'],
+ ['\\%', '%'],
+ ['\\^', ':'],
+ ['\\&', '?'],
+ ['\\*', '*'],
+ ['\\(', '('],
+ ['\\)', ')'],
+ ['\\_', '_'],
+ ['\\+', '+'],
+ ['\\~', 'Ё'],
+ ['Q', 'Й'],
+ ['W', 'Ц'],
+ ['E', 'У'],
+ ['R', 'К'],
+ ['T', 'Е'],
+ ['Y', 'Н'],
+ ['U', 'Г'],
+ ['I', 'Ш'],
+ ['O', 'Щ'],
+ ['P', 'З'],
+ ['\\{', 'Х'],
+ ['\\}', 'Ъ'],
+ ['A', 'Ф'],
+ ['S', 'Ы'],
+ ['D', 'В'],
+ ['F', 'А'],
+ ['G', 'П'],
+ ['H', 'Р'],
+ ['J', 'О'],
+ ['K', 'Л'],
+ ['L', 'Д'],
+ [':', 'Ж'],
+ ['\"', 'Э'],
+ ['\\|', '|'],
+ ['Z', 'Я'],
+ ['X', 'Ч'],
+ ['C', 'С'],
+ ['V', 'М'],
+ ['B', 'И'],
+ ['N', 'Т'],
+ ['M', 'Ь'],
+ ['\\<', 'Б'],
+ ['\\>', 'Ю'],
+ ['\\?', ',']
+ ]
+ };
+
+ $.ime.register( ruKbd );
+}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ru/ru-phonetic.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ru/ru-phonetic.js
new file mode 100644
index 00000000..c99e964d
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ru/ru-phonetic.js
@@ -0,0 +1,83 @@
+( function ( $ ) {
+ 'use strict';
+
+ var ruPhonetic = {
+ id: 'ru-phonetic',
+ name: 'Russian phonetic',
+ description: 'Russian phonetic keyboard layout',
+ date: '2013-02-12',
+ URL: 'http://github.com/wikimedia/jquery.ime',
+ author: 'Parag Nemade',
+ license: 'GPLv3',
+ version: '1.0',
+ patterns: [
+ ['\\#', 'ё'],
+ ['\\$', 'Ё'],
+ ['\\%', 'ъ'],
+ ['\\^', 'Ъ'],
+ ['\\=', 'ч'],
+ ['\\+', 'Ч'],
+ ['`', 'ю'],
+ ['\\~', 'Ю'],
+ ['q', 'я'],
+ ['Q', 'Я'],
+ ['w', 'в'],
+ ['W', 'В'],
+ ['e', 'е'],
+ ['E', 'Е'],
+ ['r', 'р'],
+ ['R', 'Р'],
+ ['t', 'т'],
+ ['T', 'Т'],
+ ['y', 'ы'],
+ ['Y', 'Ы'],
+ ['u', 'у'],
+ ['U', 'У'],
+ ['i', 'и'],
+ ['I', 'И'],
+ ['o', 'о'],
+ ['O', 'О'],
+ ['p', 'п'],
+ ['P', 'П'],
+ ['\\[', 'ш'],
+ ['\\{', 'Ш'],
+ ['\\]', 'щ'],
+ ['\\}', 'Щ'],
+ ['a', 'а'],
+ ['A', 'А'],
+ ['s', 'с'],
+ ['S', 'С'],
+ ['d', 'д'],
+ ['D', 'Д'],
+ ['f', 'ф'],
+ ['F', 'Ф'],
+ ['g', 'г'],
+ ['G', 'Г'],
+ ['h', 'х'],
+ ['H', 'Х'],
+ ['j', 'й'],
+ ['J', 'Й'],
+ ['k', 'к'],
+ ['K', 'К'],
+ ['l', 'л'],
+ ['L', 'Л'],
+ ['\\\\', 'э'],
+ ['\\|', 'Э'],
+ ['z', 'з'],
+ ['Z', 'З'],
+ ['x', 'ь'],
+ ['X', 'Ь'],
+ ['c', 'ц'],
+ ['C', 'Ц'],
+ ['v', 'ж'],
+ ['V', 'Ж'],
+ ['b', 'б'],
+ ['B', 'Б'],
+ ['n', 'н'],
+ ['N', 'Н'],
+ ['m', 'м'],
+ ['M', 'М']]
+ };
+
+ $.ime.register( ruPhonetic );
+}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ru/ru-yawerty.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ru/ru-yawerty.js
new file mode 100644
index 00000000..5ba0c775
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ru/ru-yawerty.js
@@ -0,0 +1,109 @@
+( function ( $ ) {
+ 'use strict';
+
+ var ruYawerty = {
+ id: 'ru-yawerty',
+ name: 'Russian YAWERTY',
+ description: 'Russian YAWERTY keyboard layout',
+ date: '2013-02-12',
+ URL: 'http://github.com/wikimedia/jquery.ime',
+ author: 'Parag Nemade',
+ license: 'GPLv3',
+ version: '1.0',
+ patterns: [
+ ['/q', 'ђ'],
+ ['/w', 'ѓ'],
+ ['/e', 'є'],
+ ['/r', 'ѕ'],
+ ['/t', 'і'],
+ ['/y', 'ї'],
+ ['/u', 'ј'],
+ ['/i', 'љ'],
+ ['/o', 'њ'],
+ ['/p', 'ћ'],
+ ['/a', 'ќ'],
+ ['/s', 'ў'],
+ ['/d', 'џ'],
+ ['/Q', 'Ђ'],
+ ['/W', 'Ѓ'],
+ ['/E', 'Є'],
+ ['/R', 'Ѕ'],
+ ['/T', 'І'],
+ ['/Y', 'Ї'],
+ ['/U', 'Ј'],
+ ['/I', 'Љ'],
+ ['/O', 'Њ'],
+ ['/P', 'Ћ'],
+ ['/A', 'Ќ'],
+ ['/S', 'Ў'],
+ ['/D', 'Џ'],
+
+ ['\\=', 'ч'],
+ ['`', 'ю'],
+ ['q', 'я'],
+ ['w', 'в'],
+ ['e', 'е'],
+ ['r', 'р'],
+ ['t', 'т'],
+ ['y', 'ы'],
+ ['u', 'у'],
+ ['i', 'и'],
+ ['o', 'о'],
+ ['p', 'п'],
+ ['\\[', 'ш'],
+ ['\\]', 'щ'],
+ ['a', 'а'],
+ ['s', 'с'],
+ ['d', 'д'],
+ ['f', 'ф'],
+ ['g', 'г'],
+ ['h', 'х'],
+ ['j', 'й'],
+ ['k', 'к'],
+ ['l', 'л'],
+ ['\\\\', 'э'],
+ ['z', 'з'],
+ ['x', 'ь'],
+ ['c', 'ц'],
+ ['v', 'ж'],
+ ['b', 'б'],
+ ['n', 'н'],
+ ['m', 'м'],
+ ['\\@', 'ё'],
+ ['\\#', 'ъ'],
+ ['\\$', 'Ё'],
+ ['\\+', 'Ч'],
+ ['\\~', 'Ю'],
+ ['Q', 'Я'],
+ ['W', 'В'],
+ ['E', 'Е'],
+ ['R', 'Р'],
+ ['T', 'Т'],
+ ['Y', 'Ы'],
+ ['U', 'У'],
+ ['I', 'И'],
+ ['O', 'О'],
+ ['P', 'П'],
+ ['\\{', 'Ш'],
+ ['\\}', 'Щ'],
+ ['A', 'А'],
+ ['S', 'С'],
+ ['D', 'Д'],
+ ['F', 'Ф'],
+ ['G', 'Г'],
+ ['H', 'Х'],
+ ['J', 'Й'],
+ ['K', 'К'],
+ ['L', 'Л'],
+ ['\\|', 'Э'],
+ ['Z', 'З'],
+ ['X', 'Ь'],
+ ['C', 'Ц'],
+ ['V', 'Ж'],
+ ['B', 'Б'],
+ ['N', 'Н'],
+ ['M', 'М']]
+ };
+
+ $.ime.register( ruYawerty );
+}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/sa/sa-iast.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/sa/sa-iast.js
new file mode 100644
index 00000000..e8e919fa
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/sa/sa-iast.js
@@ -0,0 +1,59 @@
+( function ( $ ) {
+ 'use strict';
+
+ var saIast = {
+ id: 'sa-iast',
+ name: 'Romanized',
+ description: 'Romanized input method for Sanskrit with IAST/ISO 15919 convention. Original author William Giddings <wjgiddings@googlemail.com>',
+ date: '2013-03-18',
+ URL: 'http://github.com/wikimedia/jquery.ime',
+ author: 'Runa Bhattacharjee',
+ license: 'GPLv3',
+ version: '1.0',
+ contextLength: 0,
+ maxKeyLength: 2,
+ patterns: [
+ ['aa', 'ā'],
+ ['AA', 'Ā'],
+ ['\\^a', 'â'],
+ ['\\^A', 'Â'],
+ ['ii', 'ī'],
+ ['II', 'Ī'],
+ ['uu', 'ū'],
+ ['UU', 'Ū'],
+ ['\\.r', 'ṛ'],
+ ['\\.R', 'Ṛ'],
+ ['ṛr', 'ṝ'],
+ ['ṚR', 'Ṝ'],
+ ['\\.l', 'ḷ'],
+ ['\\.L', 'Ḷ'],
+ ['ḷl', 'ḹ'],
+ ['ḶL', 'Ḹ'],
+ ['\\.M', 'Ṃ'],
+ ['\\.m', 'ṃ'],
+ ['\\.h', 'ḥ'],
+ ['\\.H', 'Ḥ'],
+ [';n', 'ṅ'],
+ [';N', 'Ṅ'],
+ ['~n', 'ñ'],
+ ['~N', 'Ñ'],
+ ['\\.t', 'ṭ'],
+ ['\\.T', 'Ṭ'],
+ ['\\.d', 'ḍ'],
+ ['\\.D', 'Ḍ'],
+ ['\\.n', 'ṇ'],
+ ['\\.N', 'Ṇ'],
+ [';s', 'ś'],
+ [';S', 'Ś'],
+ ['\\.s', 'ṣ'],
+ ['\\.S', 'Ṣ'],
+ ['ee', 'ē'],
+ ['oo', 'ō'],
+ [';m', 'ṁ'],
+ [',r', 'r̥'],
+ ['r̥r', 'r̥̄']
+ ]
+ };
+
+ $.ime.register( saIast );
+}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/sa/sa-inscript.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/sa/sa-inscript.js
new file mode 100644
index 00000000..b919f951
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/sa/sa-inscript.js
@@ -0,0 +1,113 @@
+( function ( $ ) {
+ 'use strict';
+
+ var saInScript = {
+ id: 'sa-inscript',
+ name: 'Sanskrit InScript',
+ description: 'Inscript keyboard for Sanskrit script',
+ date: '2012-10-16',
+ author: 'Junaid P V',
+ license: 'GPLv3',
+ version: '1.0',
+ patterns: [
+ ['X', 'ँ'],
+ ['x', 'ं'],
+ ['_', 'ः'],
+ ['D', 'अ'],
+ ['E', 'आ'],
+ ['F', 'इ'],
+ ['R', 'ई'],
+ ['G', 'उ'],
+ ['T', 'ऊ'],
+ ['\\+', 'ृ'],
+ ['S', 'ए'],
+ ['W', 'ऐ'],
+ ['A', 'ओ'],
+ ['Q', 'औ'],
+ ['k', 'क'],
+ ['K', 'ख'],
+ ['i', 'ग'],
+ ['I', 'घ'],
+ ['U', 'ङ'],
+ ['\\;', 'च'],
+ ['\\:', 'छ'],
+ ['p', 'ज'],
+ ['P', 'झ'],
+ ['\\}', 'ञ'],
+ ['\'', '', 'ट'],
+ ['"', 'ठ'],
+ ['\\[', '','ड'],
+ ['\\{', '','ढ'],
+ ['C', 'ण'],
+ ['l', 'त'],
+ ['L', 'थ'],
+ ['o', 'द'],
+ ['O', 'ध'],
+ ['v', 'न'],
+ ['h', 'प'],
+ ['H', 'फ'],
+ ['y', 'ब'],
+ ['Y', 'भ'],
+ ['c', 'म'],
+ ['\\?', '','य'],
+ ['j', 'र'],
+ ['n', 'ल'],
+ ['N', 'ळ'],
+ ['b', 'व'],
+ ['M', 'श'],
+ ['\\<', '','ष'],
+ ['m', 'स'],
+ ['u', 'ह'],
+ ['\\]', '','़'],
+ ['e', 'ा'],
+ ['f', 'ि'],
+ ['r', 'ी'],
+ ['g', 'ु'],
+ ['t', 'ू'],
+ ['\\=', '','ृ'],
+ ['\\\\', 'ॄ'],
+ ['s', 'े'],
+ ['w', 'ै'],
+ ['a', 'ो'],
+ ['q', 'ौ'],
+ ['d', '्'],
+ ['\\|', 'ॠ'],
+ ['/', 'य'],
+ ['\\>', '।'],
+ ['0', '','०'],
+ ['1', '','१'],
+ ['2', '२'],
+ ['3', '३'],
+ ['4', '४'],
+ ['5', '५'],
+ ['6', '६'],
+ ['7', '७'],
+ ['8', '८'],
+ ['9', '९'],
+ ['\\@', 'ॅ'],
+ ['\\#', '','्र'],
+ ['\\$', '','र्'],
+ ['\\%', '','ज्ञ'],
+ ['\\^', '','त्र'],
+ ['\\&', 'क्ष'],
+ ['\\*', 'श्र'],
+ ['\\(', '\u200D'],
+ ['\\)', '\u200C'] ],
+
+ patterns_x: [
+ ['F', 'ऌ'],
+ ['\\>', 'ऽ'],
+ ['X', 'ॐ'],
+ ['e', '\u0951'],
+ ['d', '\u0952'],
+ ['R', 'ॡ'],
+ ['f', 'ॢ'],
+ ['r', 'ॣ'],
+ ['\\.', '॥'],
+ ['\\@', '','ॅ'],
+ ['4', '₹']]
+
+ };
+
+ $.ime.register( saInScript );
+}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/sa/sa-inscript2.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/sa/sa-inscript2.js
new file mode 100644
index 00000000..5aeaeeec
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/sa/sa-inscript2.js
@@ -0,0 +1,117 @@
+( function ( $ ) {
+ 'use strict';
+
+ var saInScript2 = {
+ id: 'sa-inscript2',
+ name: 'संस्कृत इनस्क्रिप्ट २',
+ description: 'Enhanced InScript keyboard for Sanskrit language',
+ date: '2012-11-06',
+ author: 'Parag Nemade',
+ license: 'GPLv3',
+ version: '1.0',
+ patterns: [
+ ['1', '१'],
+ ['\\@', 'ॅ'],
+ ['2', '२'],
+ ['\\#', '्र'],
+ ['3', '३'],
+ ['\\$', 'र्'],
+ ['4', '४'],
+ ['5', '५'],
+ ['6', '६'],
+ ['7', '७'],
+ ['8', '८'],
+ ['\\(', '('],
+ ['9', '९'],
+ ['\\]', ']'],
+ ['0', '०'],
+ ['\\_', 'ः'],
+ ['\\-', '-'],
+ ['\\+', 'ऋ'],
+ ['\\=', 'ृ'],
+ ['Q', 'औ'],
+ ['q', 'ौ'],
+ ['W', 'ऐ'],
+ ['w', 'ै'],
+ ['E', 'आ'],
+ ['e', 'ा'],
+ ['R', 'ई'],
+ ['r', 'ी'],
+ ['T', 'ऊ'],
+ ['t', 'ू'],
+ ['Y', 'भ'],
+ ['y', 'ब'],
+ ['U', 'ङ'],
+ ['u', 'ह'],
+ ['I', 'घ'],
+ ['i', 'ग'],
+ ['O', 'ध'],
+ ['o', 'द'],
+ ['P', 'झ'],
+ ['p', 'ज'],
+ ['\\{', 'ढ'],
+ ['\\[', 'ड'],
+ ['\\}', 'ञ'],
+ ['\\]', '़'],
+ ['\\|', 'ॠ'],
+ ['\\\\', 'ॄ'],
+ ['A', 'ओ'],
+ ['a', 'ो'],
+ ['S', 'ए'],
+ ['s', 'े'],
+ ['D', 'अ'],
+ ['d', '्'],
+ ['F', 'इ'],
+ ['f', 'ि'],
+ ['G', 'उ'],
+ ['g', 'ु'],
+ ['H', 'फ'],
+ ['h', 'प'],
+ ['j', 'र'],
+ ['K', 'ख'],
+ ['k', 'क'],
+ ['L', 'थ'],
+ ['l', 'त'],
+ [':', 'छ'],
+ [';', 'च'],
+ ['"', 'ठ'],
+ ['\\\'', 'ट'],
+ ['X', 'ँ'],
+ ['x', 'ं'],
+ ['C', 'ण'],
+ ['c', 'म'],
+ ['v', 'न'],
+ ['b', 'व'],
+ ['N', 'ळ'],
+ ['n', 'ल'],
+ ['M', 'श'],
+ ['m', 'स'],
+ ['\\<', 'ष'],
+ [',', ','],
+ ['\\>', '।'],
+ ['\\.', '.'],
+ ['/', 'य'],
+ ['\\%', 'ज्ञ'],
+ ['\\^', 'त्र'],
+ ['\\&', 'क्ष'],
+ ['\\*', 'श्र']
+ ],
+ patterns_x: [
+ ['1', '\u200d'],
+ ['2', '\u200c'],
+ ['4', '₹'],
+ ['e', '॑'],
+ ['R', 'ॡ'],
+ ['r', 'ॣ'],
+ ['d', '॒'],
+ ['F', 'ऌ'],
+ ['f', 'ॢ'],
+ ['H', 'फ़'],
+ ['X', 'ॐ'],
+ ['\\>', 'ऽ'],
+ ['\\.', '॥']
+ ]
+ };
+
+ $.ime.register( saInScript2 );
+}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/sa/sa-transliteration.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/sa/sa-transliteration.js
new file mode 100644
index 00000000..30610bce
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/sa/sa-transliteration.js
@@ -0,0 +1,165 @@
+( function ( $ ) {
+ 'use strict';
+
+ var saTransliteration = {
+ id: 'sa-transliteration',
+ name: 'Sanskrit Transliteration',
+ description: 'Sanskrit transliteration',
+ date: '2012-10-16',
+ URL: 'http://github.com/wikimedia/jquery.ime',
+ author: 'Junaid P V and Naveen Shankar',
+ license: 'GPLv3',
+ version: '1.0',
+ contextLength: 4,
+ maxKeyLength: 2,
+ patterns: [
+ ['क्h','c','च्'],
+ ['\\\\([A-Za-z\\>_~\\.0-9])','\\\\','$1'],
+
+ ['([क-ह]़?)्a','$1'],
+ ['([क-ह]़?)्A','$1ा'],
+ ['([क-ह]़?)a','$1ा'],
+ ['([क-ह]़?)्i','$1ि'],
+ ['([क-ह]़?)(्I|िi|ॆe)','$1ी'],
+ ['([क-ह]़?)्u','$1ु'],
+ ['([क-ह]़?)(ुu|्U|ॊo)','$1ू'],
+ ['([क-ह]़?)्R','$1ृ'],
+ ['([क-ह]़?)ृR','$1ॄ'],
+ ['([क-ह]़?)्ळ्l','$1ॢ'],
+ ['([क-ह]़?)ॢl','$1ॣ'],
+ ['([क-ह]़?)ॆ\\^','$1ॅ'],
+ ['([क-ह]़?)्e','$1े'],
+ ['([क-ह]़?)्E','$1ॅ'],
+ ['([क-ह]़?)ॊ\\^','$1ॉ'],
+ ['([क-ह]़?)i','$1ै'],
+ ['([क-ह]़?)्o','$1ो'],
+ ['([क-ह]़?)्O','$1ॉ'],
+ ['([क-ह]़?)u','$1ौ'],
+ ['([क-ह]़?)ृa','$1्ऱ'],
+ ['([क-ह]़?)ृA','$1्ऱा'],
+ ['([क-ह]़?)ृi','$1्ऱि'],
+ ['([क-ह]़?)ृI','$1्ऱी'],
+ ['([क-ह]़?)ृu','$1्ऱु'],
+ ['([क-ह]़?)ृU','$1्ऱू'],
+ ['([क-ह]़?)ृ\\^','$1्ऱॅ'],
+ ['([क-ह]़?)ृe','$1्ऱे'],
+ ['([क-ह]़?)ृE','1्ऱॅ'],
+ ['([क-ह]़?)ृo','$1्ऱो'],
+ ['([क-ह]़?)ृO','$1्ऱौ'],
+ ['([क-ह]़?)ृ\\~','$1्ऱ्'],
+ ['([क-ह])्\\`','$1़्'],
+
+ ['अa','आ'],
+ ['(ऒo|उu)','ऊ'],
+ ['ऎ\\^','ऍ'],
+ ['अi','ऐ'],
+ ['अ\\^','ॲ'],
+ ['(इi|ऎe)','ई'],
+ ['ऒ\\^','ऑ'],
+ ['अu','औ'],
+ ['ऋR','ॠ'],
+ ['ळ्l','ऌ'],
+ ['ऌl','ॡ'],
+ ['ं\\^','ँ'],
+ ['ंm','ँ'],
+ ['ओM','ॐ'],
+
+ ['क्h','ख्'],
+ ['ग्h','घ्'],
+ ['न्g','ङ्'],
+ ['च्h','छ्'],
+ ['ज्h','झ्'],
+ ['न्j','ञ्'],
+ ['ट्h','ठ्'],
+ ['ड्h','ढ्'],
+ ['त्h','थ्'],
+ ['द्h','ध्'],
+ ['प्h','फ्'],
+ ['ब्h','भ्'],
+ ['ऋa','ऱ'],
+ ['ऋA','ऱा'],
+ ['ऋi','ऱि'],
+ ['ऋI','ऱी'],
+ ['ऋu','ऱु'],
+ ['ऋU','ऱू'],
+ ['ऋ\\^','ऱॅ'],
+ ['ऋe','ऱे'],
+ ['ऋE','ऱै'],
+ ['ऋo','ऱो'],
+ ['ऋO','ऱौ'],
+ ['ऋ\\~','ऱ्'],
+
+ ['स्h','ष्'],
+ ['क़्h','ख़्'],
+ ['ज़्h','ऴ्'],
+ ['।\\.','॥'],
+
+ ['a','अ'],
+ ['b','ब्'],
+ ['c','क्'],
+ ['d','द्'],
+ ['e','ए'],
+ ['(f|F)','फ़्'],
+ ['g','ग्'],
+ ['h','ह्'],
+ ['i','इ'],
+ ['j','ज्'],
+ ['k','क्'],
+ ['l','ल्'],
+ ['m','म्'],
+ ['n','न्'],
+ ['o','ओ'],
+ ['p','प्'],
+ ['q','क़्'],
+ ['r','र्'],
+ ['s','स्'],
+ ['t','त्'],
+ ['u','उ'],
+ ['(v|w)','व्'],
+ ['x','क्ष्'],
+ ['y','य्'],
+ ['(z|Z)','ज़्'],
+ ['A','आ'],
+ ['B','ब्ब्'],
+ ['C','क्क्'],
+ ['D','ड्'],
+ ['E','ऍ'],
+ //'F','फ्'],
+ ['G','ग्ग्'],
+ ['H','ः'],
+ ['I','ई'],
+ ['J','ज्ज्'],
+ ['K','क्क्'],
+ ['L','ळ्'],
+ ['M','ं'],
+ ['N','ण्'],
+ ['O','ऑ'],
+ ['P','प्प्'],
+ //'Q','अ'],
+ ['R','ऋ'],
+ ['S','श्'],
+ ['T','ट्'],
+ ['U','ऊ'],
+ ['(V|W)','व्व्'],
+ ['X','क्ष्'],
+ ['Y','य्य्'],
+ //'z','अ'
+ ['0','०'],
+ ['1','१'],
+ ['2','२'],
+ ['3','३'],
+ ['4','४'],
+ ['5','५'],
+ ['6','६'],
+ ['7','७'],
+ ['8','८'],
+ ['9','९'],
+ ['~','्'],
+ ['\\.','।'],
+ ['//','ऽ'],
+ ['\\`','़'],
+ ['(\u200C)*_', '\u200c']]
+ };
+ $.ime.register( saTransliteration );
+
+}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/sah/sah-transliteration.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/sah/sah-transliteration.js
new file mode 100644
index 00000000..235ac3c3
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/sah/sah-transliteration.js
@@ -0,0 +1,103 @@
+( function ( $ ) {
+ 'use strict';
+
+ var sahTransliteration = {
+ id: 'sah-transliteration',
+ name: 'Sakha Transliteration',
+ description: 'Sakha transliteration',
+ date: '2012-10-16',
+ URL: 'http://github.com/wikimedia/jquery.ime',
+ author: 'Amir (Алексей) Aharoni',
+ license: 'GPLv3',
+ version: '1.0',
+ patterns: [
+ ['Q', 'Й'],
+ ['W', 'Ц'],
+ ['E', 'У'],
+ ['R', 'К'],
+ ['T', 'Е'],
+ ['Y', 'Н'],
+ ['U', 'Г'],
+ ['I', 'Ш'],
+ ['O', 'Щ'],
+ ['P', 'З'],
+ ['{', 'Х'],
+ ['}', 'Ъ'],
+ ['A', 'Ф'],
+ ['S', 'Ы'],
+ ['D', 'В'],
+ ['F', 'А'],
+ ['G', 'П'],
+ ['H', 'Р'],
+ ['J', 'О'],
+ ['K', 'Л'],
+ ['L', 'Д'],
+ [':', 'Ж'],
+ ['"', 'Э'],
+ ['Z', 'Я'],
+ ['X', 'Ч'],
+ ['C', 'С'],
+ ['V', 'М'],
+ ['B', 'И'],
+ ['N', 'Т'],
+ ['M', 'Ь'],
+ ['<', 'Б'],
+ ['>', 'Ю'],
+ ['\\?', ','],
+
+ ['q', 'й'],
+ ['w', 'ц'],
+ ['e', 'у'],
+ ['r', 'к'],
+ ['t', 'е'],
+ ['y', 'н'],
+ ['u', 'г'],
+ ['i', 'ш'],
+ ['o', 'щ'],
+ ['p', 'з'],
+ ['\\[', 'х'],
+ ['\\]', 'ъ'],
+ ['a', 'ф'],
+ ['s', 'ы'],
+ ['d', 'в'],
+ ['f', 'а'],
+ ['g', 'п'],
+ ['h', 'р'],
+ ['j', 'о'],
+ ['k', 'л'],
+ ['l', 'д'],
+ [';', 'ж'],
+ ['\'', 'э'],
+ ['z', 'я'],
+ ['x', 'ч'],
+ ['c', 'с'],
+ ['v', 'м'],
+ ['b', 'и'],
+ ['n', 'т'],
+ ['m', 'ь'],
+ [',', 'б'],
+ ['\\.', 'ю'],
+ ['/', '.'],
+
+ ['`', '"'],
+ ['~', '№'],
+
+ ['1', '!'], // 1
+ ['!', '?'], // 1
+ // 2, 3 - ?
+ ['4', 'ҥ'], // 4
+ ['\\$', 'Ҥ'], // 4
+ ['5', 'ҕ'], // 5
+ ['%', 'Ҕ'], // 5
+ ['6', 'ө'], // 6
+ ['\\^', 'Ө'], // 6
+ ['7', 'һ'], // 7
+ ['&', 'Һ'], // 7
+ ['8', 'ү'], // 8
+ ['\\*', 'Ү'], // 8
+ ['9', ';'], // 9
+ ['0', ':']] // 0
+ };
+
+ $.ime.register( sahTransliteration );
+}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/sat/sat-inscript2.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/sat/sat-inscript2.js
new file mode 100644
index 00000000..4c8a7900
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/sat/sat-inscript2.js
@@ -0,0 +1,107 @@
+( function ( $ ) {
+ 'use strict';
+
+ var satInScript2 = {
+ id: 'sat-inscript2',
+ name: 'संताली इनस्क्रिप्ट २',
+ description: 'Enhanced InScript keyboard for Santali language',
+ date: '2013-20-13',
+ author: 'Parag Nemade',
+ license: 'GPLv3',
+ version: '1.0',
+ patterns: [
+ ['1', '१'],
+ ['2', '२'],
+ ['\\#', '्र'],
+ ['3', '३'],
+ ['\\$', 'र्'],
+ ['4', '४'],
+ ['5', '५'],
+ ['6', '६'],
+ ['7', '७'],
+ ['8', '८'],
+ ['\\(', '('],
+ ['9', '९'],
+ ['\\]', ']'],
+ ['0', '०'],
+ ['\\_', 'ः'],
+ ['\\-', '-'],
+ ['Q', 'औ'],
+ ['q', 'ौ'],
+ ['W', 'ऐ'],
+ ['w', 'ै'],
+ ['E', 'आ'],
+ ['e', 'ा'],
+ ['R', 'ई'],
+ ['r', 'ी'],
+ ['T', 'ऊ'],
+ ['t', 'ू'],
+ ['Y', 'भ'],
+ ['y', 'ब'],
+ ['U', 'ङ'],
+ ['u', 'ह'],
+ ['I', 'घ'],
+ ['i', 'ग'],
+ ['O', 'ध'],
+ ['o', 'द'],
+ ['P', 'झ'],
+ ['p', 'ज'],
+ ['\\{', 'ढ'],
+ ['\\[', 'ड'],
+ ['\\}', 'ञ'],
+ ['\\]', '़'],
+ ['A', 'ओ'],
+ ['a', 'ो'],
+ ['S', 'ए'],
+ ['s', 'े'],
+ ['D', 'अ'],
+ ['d', '्'],
+ ['F', 'इ'],
+ ['f', 'ि'],
+ ['G', 'उ'],
+ ['g', 'ु'],
+ ['H', 'फ'],
+ ['h', 'प'],
+ ['j', 'र'],
+ ['K', 'ख'],
+ ['k', 'क'],
+ ['L', 'थ'],
+ ['l', 'त'],
+ [':', 'छ'],
+ [';', 'च'],
+ ['\"', 'ठ'],
+ ['\'', 'ट'],
+ ['z', 'ʼ'],
+ ['X', 'ँ'],
+ ['x', 'ं'],
+ ['C', 'ण'],
+ ['c', 'म'],
+ ['v', 'न'],
+ ['b', 'व'],
+ ['n', 'ल'],
+ ['m', 'स'],
+ [',', ','],
+ ['\\>', '।'],
+ ['\\.', '.'],
+ ['\\?', '?'],
+ ['/', 'य'],
+ ['\\%', 'ज्ञ'],
+ ['\\^', 'त्र'],
+ ['\\&', 'क्ष'],
+ ['\\*', 'श्र']
+ ],
+ patterns_x: [
+ ['1', '\u200d'],
+ ['2', '\u200c'],
+ ['4', '₹'],
+ ['F', 'ऌ'],
+ ['X', 'ॐ'],
+ ['N', 'ळ'],
+ [',', '॰'],
+ ['\\>', 'ऽ'],
+ ['\\.', '॥']
+ ]
+ };
+ $.ime.register( satInScript2 );
+
+}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/sd/sd-inscript2.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/sd/sd-inscript2.js
new file mode 100644
index 00000000..438ceeaa
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/sd/sd-inscript2.js
@@ -0,0 +1,124 @@
+( function ( $ ) {
+ 'use strict';
+
+ var sdInScript2 = {
+ id: 'sd-inscript2',
+ name: 'सिंधी इनस्क्रिप्ट २',
+ description: 'Enhanced InScript keyboard for Sindhi language',
+ date: '2013-20-13',
+ author: 'Parag Nemade',
+ license: 'GPLv3',
+ version: '1.0',
+ patterns: [
+ ['1', '१'],
+ ['2', '२'],
+ ['\\#', '्र'],
+ ['3', '३'],
+ ['\\$', 'र्'],
+ ['4', '४'],
+ ['5', '५'],
+ ['6', '६'],
+ ['7', '७'],
+ ['8', '८'],
+ ['\\(', '('],
+ ['9', '९'],
+ ['\\]', ']'],
+ ['0', '०'],
+ ['\\-', '-'],
+ ['\\+', 'ऋ'],
+ ['\\=', 'ृ'],
+ ['Q', 'औ'],
+ ['q', 'ौ'],
+ ['W', 'ऐ'],
+ ['w', 'ै'],
+ ['E', 'आ'],
+ ['e', 'ा'],
+ ['R', 'ई'],
+ ['r', 'ी'],
+ ['T', 'ऊ'],
+ ['t', 'ू'],
+ ['Y', 'भ'],
+ ['y', 'ब'],
+ ['U', 'ङ'],
+ ['u', 'ह'],
+ ['I', 'घ'],
+ ['i', 'ग'],
+ ['O', 'ध'],
+ ['o', 'द'],
+ ['P', 'झ'],
+ ['p', 'ज'],
+ ['\\{', 'ढ'],
+ ['\\[', 'ड'],
+ ['\\}', 'ञ'],
+ ['\\]', '़'],
+ ['A', 'ओ'],
+ ['a', 'ो'],
+ ['S', 'ए'],
+ ['s', 'े'],
+ ['D', 'अ'],
+ ['d', '्'],
+ ['F', 'इ'],
+ ['f', 'ि'],
+ ['G', 'उ'],
+ ['g', 'ु'],
+ ['H', 'फ'],
+ ['h', 'प'],
+ ['j', 'र'],
+ ['K', 'ख'],
+ ['k', 'क'],
+ ['L', 'थ'],
+ ['l', 'त'],
+ [':', 'छ'],
+ [';', 'च'],
+ ['\"', 'ठ'],
+ ['\'', 'ट'],
+ ['X', 'ँ'],
+ ['C', 'ण'],
+ ['c', 'म'],
+ ['v', 'न'],
+ ['b', 'व'],
+ ['n', 'ल'],
+ ['M', 'श'],
+ ['m', 'स'],
+ ['\\<', 'ष'],
+ [',', ','],
+ ['\\>', '।'],
+ ['\\.', '.'],
+ ['/', 'य'],
+ ['\\%', 'ज्ञ'],
+ ['\\^', 'त्र'],
+ ['\\&', 'क्ष'],
+ ['\\*', 'श्र']
+ ],
+ patterns_x: [
+ ['1', '\u200d'],
+ ['2', '\u200c'],
+ ['4', '₹'],
+ ['\\+', 'ॠ'],
+ ['\\=', 'ृ'],
+ ['e', '॑'],
+ ['i', 'ग़'],
+ ['R', 'ॡ'],
+ ['r', 'ॣ'],
+ ['p', 'ज़'],
+ ['\\{', 'ढ़'],
+ ['\\[', 'ड़'],
+ ['H', 'फ़'],
+ ['J', 'ॻ'],
+ ['K', 'ख़'],
+ ['k', 'क़'],
+ ['d', '॒'],
+ ['F', 'ऌ'],
+ ['f', 'ॢ'],
+ ['x', 'ॐ'],
+ ['V', 'ॾ'],
+ ['B', 'ॿ'],
+ ['N', 'ॼ'],
+ [',', '॰'],
+ ['\\>', 'ऽ'],
+ ['\\.', '॥']
+ ]
+ };
+
+ $.ime.register( sdInScript2 );
+}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/se/se-normforms.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/se/se-normforms.js
new file mode 100644
index 00000000..1b4068d3
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/se/se-normforms.js
@@ -0,0 +1,38 @@
+( function ( $ ) {
+ 'use strict';
+
+ var defs = {
+ id: 'se-normforms',
+ name: 'Davvisámegiella',
+ description: 'Northern Sami input method',
+ date: '2012-12-04',
+ URL: 'http://giellatekno.uit.no/doc/infra/samihtml.html',
+ author: 'John Erling Blad',
+ license: 'GPLv3',
+ version: '1.0',
+ //contextLength: 1,
+ maxKeyLength: 3,
+ patterns: [
+ // Uses "~" as "approximatly similar to"
+ [ '\'a', 'á' ], // The simple ~a does not work as there is a "ã"
+ [ '\'A', 'Á' ], // The simple ~A does not work as there is a "Ã"
+ [ '~c', 'č' ],
+ [ '~C', 'Č' ],
+ [ '~d', 'đ' ],
+ [ '~D', 'Đ' ],
+ //[ '~ng', 'ŋ' ], // The simple ~n does not work as there is a "ñ"
+ //[ '~NG', 'Ŋ' ], // The simple ~N does not work as there is a "Ñ"
+ [ '~g', 'ŋ' ],
+ [ '~G', 'Ŋ' ],
+ [ '~s', 'š' ],
+ [ '~S', 'Š' ],
+ [ '~t', 'ŧ' ],
+ [ '~T', 'Ŧ' ],
+ [ '~z', 'ž' ],
+ [ '~Z', 'Ž' ]
+ // historically similar forms
+ ]
+ };
+
+ $.ime.register( defs );
+}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/si/si-singlish.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/si/si-singlish.js
new file mode 100644
index 00000000..8ba93b1d
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/si/si-singlish.js
@@ -0,0 +1,110 @@
+( function ( $ ) {
+ 'use strict';
+
+ var siSinglish = {
+ id: 'si-singlish',
+ name: 'Sinhalese Singlish',
+ description: 'Singlish',
+ date: '2012-10-16',
+ URL: 'http://github.com/wikimedia/jquery.ime',
+ author: 'Junaid P V and Nishantha Anuruddha',
+ license: 'GPLv3',
+ version: '1.0',
+ contextLength: 5,
+ maxKeyLength: 2,
+ patterns: [
+ //['ඬ්හ්a', 'ඳ'], // nndha
+ ['ඬ්h', 'ඳ්'], // nndh
+ ['න්න්d', 'ඬ්'], // nnd
+ ['න්න්g', 'ඟ්'],// nng
+ ['\\u0DC1\\u0DCA\\u200D\\u0DBB\\u0DD2i', '\u0DC1\u0DCA\u200D\u0DBB\u0DD3'],// shrii
+ ['\\u0DC1\\u0DCA\\u200D\\u0DBBi', '\u0DC1\u0DCA\u200D\u0DBB\u0DD2'],// shri
+ ['ශ්r', '\u0DC1\u0DCA\u200D\u0DBB'], // shr
+
+ ['([\\u0D9A-\\u0DC6])්\\u200Dර්u', '$1ෘ'], // <consonant>ru
+ ['([\\u0D9A-\\u0DC6])ෘu', '$1ෲ'], // <consonant>ruu
+
+ ['([\\u0D9A-\\u0DC6])්a', '$1'], // <consonant>a
+ ['([\\u0D9A-\\u0DC6])a', '$1ා'], // <consonant>aa
+ ['([\\u0D9A-\\u0DC6])්A', '$1ැ'], // <consonant>A
+ ['([\\u0D9A-\\u0DC6])ැa', '$1ෑ'], // <consonant>Aa
+ ['([\\u0D9A-\\u0DC6])්i', '$1ි'], // <consonant>i
+ ['([\\u0D9A-\\u0DC6])ි[ei]', '$1ී'], // <consonant>ie
+ ['([\\u0D9A-\\u0DC6])්u', '$1ු'], // <consonant>u
+ ['([\\u0D9A-\\u0DC6])ුu', '$1ූ'], // <consonant>u
+ ['([\\u0D9A-\\u0DC6])්e', '$1ෙ'], // <consonant>e
+ ['([\\u0D9A-\\u0DC6])ෙ[ai]', '$1ේ'], // <consonant>ei
+ ['([\\u0D9A-\\u0DC6])්o', '$1ො'], // <consonant>o
+ ['([\\u0D9A-\\u0DC6])ොe', '$1ෝ'], // <consonant>oe
+ ['([\\u0D9A-\\u0DC6])u', '$1ෞ'], // <consonant>au
+ ['([\\u0D9A-\\u0DC6])්I', '$1ෛ'], // <consonant>I
+
+ ['([\\u0D9A-\\u0DC6]්)r', '$1\u200Dර්'], // <consonant>r
+
+ ['ළුu', 'ළුු'], // Luu
+
+ ['(ක්h|K)', 'ඛ්'], // kh K
+ ['(ග්h|G)', 'ඝ්'], // gh G
+ ['ස්h', 'ශ්'], // sh
+ ['ch', 'ච්'],
+ ['Ch', 'ඡ්'],
+ ['Sh', 'ෂ්'],
+ ['ඝ්N', 'ඥ්'], // GN
+ ['ඨ්h', 'ථ්'], // Th
+ ['ඛ්N', 'ඤ්'], // KN
+ ['ට්h', 'ත්'], // th
+ ['ඪ්h', 'ධ්'], // Dh
+ ['ඩ්h', 'ද්'], // dh
+ ['(ප්h|P)', 'ඵ්'], // ph P
+ ['ළ්u', 'ළු'], // Lu
+ ['බ්h', 'භ්'], // bh
+
+ ['(\\\\r|R)', '\u0DBB\u0DCA\u200D'], // \r R
+ ['(\\\\y|Y)', '\u200D\u0DBA\u0DCA'], // \y Y
+
+ ['අ(a|\\))', 'ආ'], // aa a)
+ ['ඇ(a|\\))', 'ඈ'], // Aa A) ae
+ ['(ඉ[i\\)e]|එe)', 'ඊ'], // ii i) ie ee
+ ['එ[a\\)i]', 'ඒ'], // ea e) ei
+ ['ඔ[e\\)]', 'ඕ'], // oe o)
+ ['(උ[u\\)]|ඔo)', 'ඌ'], // uu u) oo
+ ['අu', 'ඖ'], // au
+
+ ['\\\\n', 'ං'],
+ ['\\\\h', 'ඃ'],
+ ['\\\\N', 'ඞ'],
+ ['\\\\R', 'ඍ'],
+
+ ['a', 'අ'],
+ ['A', 'ඇ'],
+ ['i', 'ඉ'],
+ ['e', 'එ'],
+ ['o', 'ඔ'],
+ ['u', 'උ'],
+
+ ['k', 'ක්'],
+ ['b', 'බ්'],
+ ['B', 'ඹ්'],
+ ['g', 'ග්'],
+ ['m', 'ම්'],
+ ['y', 'ය්'],
+ ['j', 'ජ්'],
+ ['r', 'ර්'],
+ ['T', 'ඨ්'],
+ ['f', 'ෆ්'],
+ ['t', 'ට්'],
+ ['l', 'ල්'],
+ ['D', 'ඪ්'],
+ ['d', 'ඩ්'],
+ ['(w|v)', 'ව්'],
+ ['s', 'ස්'],
+ ['q', 'ඣ්'],
+ ['h', 'හ්'],
+ ['n', 'න්'],
+ ['N', 'ණ්'],
+ ['p', 'ප්'],
+ ['L', 'ළ්']]
+ };
+
+ $.ime.register( siSinglish );
+}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/si/si-wijesekara.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/si/si-wijesekara.js
new file mode 100644
index 00000000..32f2d852
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/si/si-wijesekara.js
@@ -0,0 +1,105 @@
+( function ( $ ) {
+ 'use strict';
+
+ var siWijesekara = {
+ id: 'si-wijesekara',
+ name: 'Sinhalese Wijesekara',
+ description: 'Wijesekara layout for Sinhalese',
+ date: '2012-10-16',
+ URL: 'http://www.ucsc.lk/ltrl/services/layout/',
+ author: 'Junaid P V',
+ license: 'GPLv3',
+ version: '1.0',
+ contextLength: 0,
+ maxKeyLength: 2,
+ patterns: [
+ ['`', '\u0DCA\u200D\u0DBB'],
+ ['~', '\u0DBB\u0DCA\u200D'],
+ ['q', 'ු'],
+ ['w', 'අ'],
+ ['අe', 'ඇ'],
+ ['e', 'ැ'],
+ ['r', 'ර'],
+ ['ෙt', 'ඓ'],
+ ['t', 'එ'],
+ ['y', 'හ'],
+ ['u', 'ම'],
+ ['i', 'ස'],
+ ['o', 'ද'],
+ ['p', 'ච'],
+ ['\\[', 'ඤ'],
+ ['\\]', ';'],
+ ['එa', 'ඒ'],
+ ['ඔa', 'ඕ'],
+ ['a', '්'],
+ ['s', 'ි'],
+ ['අd', 'ආ'],
+ ['d', 'ා'],
+ ['f', 'ෙ'],
+ ['g', 'ට'],
+ ['h', 'ය'],
+ ['j', 'ව'],
+ ['k', 'න'],
+ ['l', 'ක'],
+ [';', 'ත'],
+ ['\'', '.'],
+ ['z', '\''],
+ ['x', 'ං'],
+ ['c', 'ජ'],
+ ['v', 'ඩ'],
+ ['b', 'ඉ'],
+ ['n', 'බ'],
+ ['m', 'ප'],
+ ['\\,', 'ල'],
+ ['\\.', 'ග'],
+
+ ['Q', 'ූ'],
+ ['W', 'උ'],
+ ['අE', 'ඈ'],
+ ['E', 'ෑ'],
+ ['R', 'ඍ'],
+ ['T', 'ඔ'],
+ ['Y', 'ශ'],
+ ['U', 'ඹ'],
+ ['I', 'ෂ'],
+ ['O', 'ධ'],
+ ['P', 'ඡ'],
+ ['\\{', 'ඥ'],
+ ['\\}', ':'],
+ ['උA', 'ඌ'],
+ ['ඏA', 'ඐ'],
+ ['ඔA', 'ඖ'],
+ ['A', 'ෟ'],
+ ['S', 'ී'],
+ ['ඍD', 'ඎ'],
+ ['ෘD', 'ෲ'],
+ ['D', 'ෘ'],
+ ['F', 'ෆ'],
+ ['G', 'ඨ'],
+ ['H', 'ය'],
+ ['J', 'ළ'],
+ ['K', 'ණ'],
+ ['L', 'ඛ'],
+ ['\\:', 'ථ'],
+ ['\"', ','],
+ ['Z', '"'],
+ ['X', 'ඃ'],
+ ['C', 'ඣ'],
+ ['V', 'ඪ'],
+ ['B', 'ඊ'],
+ ['N', 'භ'],
+ ['M', 'ඵ'],
+ ['\\<', 'ළ'],
+ ['\\>', 'ඝ']],
+ patterns_x: [
+ ['o', 'ඳ'],
+ ['v', 'ඬ'],
+ ['\'', '෴'],
+ ['a', 'ෳ'],
+ ['\\.', 'ඟ'],
+ ['x', 'ඦ'],
+ [',', 'ඏ']]
+ };
+
+ $.ime.register( siWijesekara );
+}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/sk/sk-kbd.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/sk/sk-kbd.js
new file mode 100644
index 00000000..a8278c04
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/sk/sk-kbd.js
@@ -0,0 +1,105 @@
+( function ( $ ) {
+ 'use strict';
+
+ var skKbd = {
+ id: 'sk-kbd',
+ name: 'Slovak kbd',
+ description: 'Slovak kbd keyboard layout',
+ date: '2013-06-26',
+ URL: 'http://github.com/wikimedia/jquery.ime',
+ author: 'Parag Nemade',
+ license: 'GPLv3',
+ version: '1.1',
+ patterns: [
+ ['1', '+'],
+ ['2', 'ľ'],
+ ['3', 'š'],
+ ['4', 'č'],
+ ['5', 'ť'],
+ ['6', 'ž'],
+ ['7', 'ý'],
+ ['8', 'á'],
+ ['9', 'í'],
+ ['0', 'é'],
+ ['!', '1'],
+ ['@', '2'],
+ ['#', '3'],
+ ['\\$', '4'],
+ ['%', '5'],
+ ['\\^', '6'],
+ ['&', '7'],
+ ['\\*', '8'],
+ ['\\(', '9'],
+ ['\\)', '0'],
+ ['-', '='],
+ ['_', '%'],
+ ['=', '´'],
+ ['\\+', 'ˇ'],
+ ['\\[', 'ú'],
+ ['\\{', '/'],
+ ['\\]', 'ä'],
+ ['\\}', '('],
+ ['\\\\', 'ň'],
+ ['\\|', ')'],
+ [';', 'ô'],
+ [':', '\"'],
+ ['\'', '§'],
+ ['\"', '!'],
+ ['\\<', '?'],
+ ['\\>', ':'],
+ ['/', '-'],
+ ['\\?', '_'],
+ ['`', ';'],
+ ['~', '°'],
+
+ ['´a', 'á'],
+ ['´A', 'Á'],
+ ['´e', 'é'],
+ ['´E', 'É'],
+ ['´i', 'í'],
+ ['´I', 'Í'],
+ ['´l', 'ĺ'],
+ ['´L', 'Ĺ'],
+ ['´o', 'ó'],
+ ['´O', 'Ó'],
+ ['´r', 'ŕ'],
+ ['´R', 'Ŕ'],
+ ['´u', 'ú'],
+ ['´U', 'Ú'],
+ ['´y', 'ý'],
+ ['´Y', 'Ý'],
+
+ ['¨a', 'ä'],
+ ['¨A', 'Ä'],
+ ['\\^o', 'ô'],
+ ['\\^O', 'Ô'],
+
+ ['ˇc', 'č'],
+ ['ˇC', 'Č'],
+ ['ˇd', 'ď'],
+ ['ˇD', 'Ď'],
+ ['ˇl', 'ľ'],
+ ['ˇL', 'Ľ'],
+ ['ˇn', 'ň'],
+ ['ˇN', 'Ň'],
+ ['ˇs', 'š'],
+ ['ˇS', 'Š'],
+ ['ˇt', 'ť'],
+ ['ˇT', 'Ť'],
+ ['ˇz', 'ž'],
+ ['ˇZ', 'Ž'],
+
+ // It's QWERTZ
+ ['y', 'z'],
+ ['z', 'y'],
+ ['Y', 'Z'],
+ ['Z', 'Y']
+ ],
+ patterns_x: [
+ ['3', '^'],
+ ['=', '¨']
+ ]
+ };
+
+ $.ime.register( skKbd );
+}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/sr/sr-kbd.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/sr/sr-kbd.js
new file mode 100644
index 00000000..87aec37a
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/sr/sr-kbd.js
@@ -0,0 +1,98 @@
+( function ( $ ) {
+ 'use strict';
+
+ var srKbd = {
+ id: 'sr-kbd',
+ name: 'Serbian keyboard',
+ description: 'Serbian keyboard layout',
+ date: '2013-02-12',
+ URL: 'http://github.com/wikimedia/jquery.ime',
+ author: 'Parag Nemade',
+ license: 'GPLv3',
+ version: '1.0',
+ patterns: [
+ ['\'g', 'ѓ'],
+ ['\'G', 'Ѓ'],
+ ['\'k', 'ќ'],
+ ['\'K', 'Ќ'],
+ ['\\@', '\"'],
+ ['\\^', '&'],
+ ['\\&', '/'],
+ ['\\*', '('],
+ ['\\(', ')'],
+ ['\\)', '='],
+ ['\\-', '\''],
+ ['\\_', '?'],
+ ['\\=', '+'],
+ ['\\+', '*'],
+ ['q', 'љ'],
+ ['Q', 'Љ'],
+ ['w', 'њ'],
+ ['W', 'Њ'],
+ ['e', 'е'],
+ ['E', 'Е'],
+ ['r', 'р'],
+ ['R', 'Р'],
+ ['t', 'т'],
+ ['T', 'Т'],
+ ['y', 'з'],
+ ['Y', 'З'],
+ ['u', 'у'],
+ ['U', 'У'],
+ ['i', 'и'],
+ ['I', 'И'],
+ ['o', 'о'],
+ ['O', 'О'],
+ ['p', 'п'],
+ ['P', 'П'],
+ ['\\[', 'ш'],
+ ['\\{', 'Ш'],
+ ['\\]', 'ђ'],
+ ['\\}', 'Ђ'],
+ ['a', 'а'],
+ ['A', 'А'],
+ ['s', 'с'],
+ ['S', 'С'],
+ ['d', 'д'],
+ ['D', 'Д'],
+ ['f', 'ф'],
+ ['F', 'Ф'],
+ ['g', 'г'],
+ ['G', 'Г'],
+ ['h', 'х'],
+ ['H', 'Х'],
+ ['j', 'ј'],
+ ['J', 'Ј'],
+ ['k', 'к'],
+ ['K', 'К'],
+ ['l', 'л'],
+ ['L', 'Л'],
+ [';', 'ч'],
+ [':', 'Ч'],
+ ['\'', 'ћ'],
+ ['\"', 'Ћ'],
+ ['\\', 'ж'],
+ ['\\|', 'Ж'],
+ ['z', 'ѕ'],
+ ['Z', 'Ѕ'],
+ ['x', 'џ'],
+ ['X', 'Џ'],
+ ['c', 'ц'],
+ ['C', 'Ц'],
+ ['v', 'в'],
+ ['V', 'В'],
+ ['b', 'б'],
+ ['B', 'Б'],
+ ['n', 'н'],
+ ['N', 'Н'],
+ ['m', 'м'],
+ ['M', 'М'],
+ ['\\<', ';'],
+ ['\\>', ':'],
+ ['/', '-'],
+ ['\\?', '_']
+ ]
+ };
+
+ $.ime.register( srKbd );
+}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/sv/sv-normforms.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/sv/sv-normforms.js
new file mode 100644
index 00000000..0f111d9e
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/sv/sv-normforms.js
@@ -0,0 +1,50 @@
+( function ( $ ) {
+ 'use strict';
+
+ var defs = {
+ id: 'sv-normforms',
+ name: 'Svenska',
+ description: 'Swedish input method with most common form transliterated',
+ date: '2012-12-04',
+ URL: 'http://www.evertype.com/alphabets/swedish.pdf',
+ author: 'John Erling Blad',
+ license: 'GPLv3',
+ version: '1.0',
+ contextLength: 1,
+ maxKeyLength: 3,
+ patterns: [
+ // The most common transliterations
+ [ 'aa', 'å' ],
+ [ 'AA', 'Å' ],
+ [ 'Aa', 'Å' ],
+ [ 'ae', 'ä' ],
+ [ 'AE', 'Ä' ],
+ [ 'Ae', 'Ä' ],
+ [ 'oe', 'ö' ],
+ [ 'OE', 'Ö' ],
+ [ 'Oe', 'Ö' ],
+ // The previous as negated transliterations, mostly for names
+ [ 'åa', 'a', 'aa' ],
+ [ 'ÅA', 'A', 'AA' ],
+ [ 'Åa', 'A', 'Aa' ],
+ [ 'åA', 'a', 'aA' ],
+ [ 'äe', 'e', 'ae' ],
+ [ 'ÄE', 'E', 'AE' ],
+ [ 'Äe', 'E', 'Ae' ],
+ [ 'äE', 'e', 'aE' ],
+ [ 'öe', 'e', 'oe' ],
+ [ 'ÖE', 'E', 'OE' ],
+ [ 'Öe', 'E', 'Oe' ], // this fails for some names like "Øen"
+ [ 'öE', 'e', 'oE' ]
+ // historically similar forms
+ // "Å" is sometimes written as "Aa", and "å" as "aa", but in names
+ // it is not generally acceptable to use this transliteration. The
+ // same is the case for "Ô" vs "Oe". To
+ // handle those situations we need some oposite forms.
+ // There is a similar character "Å" for the length unit Angstrom,
+ // but this is not the upper case letter Å.
+ ]
+ };
+
+ $.ime.register( defs );
+}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ta/ta-99.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ta/ta-99.js
new file mode 100644
index 00000000..d40c3550
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ta/ta-99.js
@@ -0,0 +1,193 @@
+( function ( $ ) {
+ 'use strict';
+
+ var ta99 = {
+ id: 'ta-99',
+ name: 'தமிழ்99',
+ description: 'Tamil 99 Keyboard',
+ date: '2012-11-20',
+ URL: 'http://github.com/wikimedia/jquery.ime',
+ author: 'Junaid P V',
+ license: 'GPLv3',
+ version: '1.0',
+ contextLength: 1,
+ maxKeyLength: 4,
+ patterns: [
+ [ '([க-ஹ])h', 'a', '$1க' ],
+ [ '([க-ஹ])b', 'a', '$1ங' ],
+ [ '([க-ஹ])\\[', 'a', '$1ச' ],
+ [ '([க-ஹ])E', 'a', '$1ஜ' ],
+ [ '([க-ஹ])\\]', 'a', '$1ஞ' ],
+ [ '([க-ஹ])o', 'a', '$1ட' ],
+ [ '([க-ஹ])p', 'a', '$1ண' ],
+ [ '([க-ஹ])l', 'a', '$1த' ],
+ [ '([க-ஹ]);', 'a', '$1ந' ],
+ [ '([க-ஹ])i', 'a', '$1ன' ],
+ [ '([க-ஹ])j', 'a', '$1ப' ],
+ [ '([க-ஹ])k', 'a', '$1ம' ],
+ [ '([க-ஹ])\'', 'a', '$1ய' ],
+ [ '([க-ஹ])m', 'a', '$1ர' ],
+ [ '([க-ஹ])u', 'a', '$1ற' ],
+ [ '([க-ஹ])n', 'a', '$1ல' ],
+ [ '([க-ஹ])y', 'a', '$1ள' ],
+ [ '([க-ஹ])/', 'a', '$1ழ' ],
+ [ '([க-ஹ])v', 'a', '$1வ' ],
+ // void
+ [ '([க-ஹ])W', 'a', '$1ஷ' ],
+ [ '([க-ஹ])Q', 'a', '$1ஸ' ],
+ [ '([க-ஹ])R', 'a', '$1ஹ' ],
+
+ [ 'க்கh', 'க்கக' ],
+ [ 'ங்ஙb', 'ங்ஙங' ],
+ [ 'ச்ச\\[', 'ச்சச' ],
+ [ 'ஜ்ஜE', 'ஜ்ஜஜ' ],
+ [ 'ஞ்ஞ\\]', 'ஞ்ஞஞ' ],
+ [ 'ட்டo', 'ட்டட' ],
+ [ 'ண்ணp', 'ண்ணண' ],
+ [ 'த்தl', 'த்தத' ],
+ [ 'ந்ந;', 'ந்நந' ],
+ [ 'ன்னi', 'ன்னன' ],
+ [ 'ப்பj', 'ப்பப' ],
+ [ 'ம்மk', 'ம்மம' ],
+ [ 'ய்ய\'', 'ய்யய' ],
+ [ 'ர்ரm', 'ர்ரர' ],
+ [ 'ற்றu', 'ற்றற' ],
+ [ 'ல்லn', 'ல்லல' ],
+ [ 'ள்ளy', 'ள்ளள' ],
+ [ 'ழ்ழ/', 'ழ்ழழ' ],
+ [ 'வ்வv', 'வ்வவ' ],
+ // void
+ [ 'ஷ்ஷW', 'ஷ்ஷஷ' ],
+ [ 'ஸ்ஸQ', 'ஸ்ஸஸ' ],
+ [ 'ஹ்ஹR', 'ஹ்ஹஹ' ],
+
+ [ '([க-ஹ])q', '$1ா' ],
+ [ '([க-ஹ])s', '$1ி' ],
+ [ '([க-ஹ])w', '$1ீ' ],
+ [ '([க-ஹ])d', '$1ு' ],
+ [ '([க-ஹ])e', '$1ூ' ],
+ [ '([க-ஹ])g', '$1ெ' ],
+ [ '([க-ஹ])t', '$1ே' ],
+ [ '([க-ஹ])r', '$1ை' ],
+ [ '([க-ஹ])c', '$1ொ' ],
+ [ '([க-ஹ])x', '$1ோ' ],
+ [ '([க-ஹ])z', '$1ௌ' ],
+
+ [ '([க-ஹ])a', '$1' ],
+
+ [ 'கh', 'க்க' ],
+ [ 'ஙb', 'ங்ங' ],
+ [ 'ச\\[', 'ச்ச' ],
+ [ 'ஜE', 'ஜ்ஜ' ],
+ [ 'ஞ\\]', 'ஞ்ஞ' ],
+ [ 'டo', 'ட்ட' ],
+ [ 'ணp', 'ண்ண' ],
+ [ 'தl', 'த்த' ],
+ [ 'ந;', 'ந்ந' ],
+ [ 'னi', 'ன்ன' ],
+ [ 'பj', 'ப்ப' ],
+ [ 'மk', 'ம்ம' ],
+ [ 'ய\'', 'ய்ய' ],
+ [ 'ரm', 'ர்ர' ],
+ [ 'றu', 'ற்ற' ],
+ [ 'லn', 'ல்ல' ],
+ [ 'ளy', 'ள்ள' ],
+ [ 'ழ/', 'ழ்ழ' ],
+ [ 'வv', 'வ்வ' ],
+ // void
+ [ 'ஷW', 'ஷ்ஷ' ],
+ [ 'ஸQ', 'ஸ்ஸ' ],
+ [ 'ஹR', 'ஹ்ஹ' ],
+
+ [ 'நl', 'ந்த' ],
+ [ 'ஙh', 'ங்க' ],
+ [ 'னu', 'ன்ற' ],
+ [ 'ணo', 'ண்ட' ],
+ [ 'ஞ\\[', 'ஞ்ச' ],
+ [ 'மj', 'ம்ப' ],
+
+ [ 'q', 'ஆ' ],
+ [ 'w', 'ஈ' ],
+ [ 'e', 'ஊ' ],
+ [ 'r', 'ஐ' ],
+ [ 't', 'ஏ' ],
+ [ 'y', 'ள' ],
+ [ 'u', 'ற' ],
+ [ 'i', 'ன' ],
+ [ 'o', 'ட' ],
+ [ 'p', 'ண' ],
+ [ '\\[', 'ச' ],
+ [ '\\]', 'ஞ' ],
+
+ [ 'a', 'அ' ],
+ [ 's', 'இ' ],
+ [ 'd', 'உ' ],
+ [ 'f', '்' ],
+ [ 'g', 'எ' ],
+ [ 'h', 'க' ],
+ [ 'j', 'ப' ],
+ [ 'k', 'ம' ],
+ [ 'l', 'த' ],
+ [ ';', 'ந' ],
+ [ '\'', 'ய' ],
+
+ [ 'z', 'ஔ' ],
+ [ 'x', 'ஓ' ],
+ [ 'c', 'ஒ' ],
+ [ 'v', 'வ' ],
+ [ 'b', 'ங' ],
+ [ 'n', 'ல' ],
+ [ 'm', 'ர' ],
+ // ',', 'ஆ'],
+ // '\\.', 'ஆ'],
+ [ '/', 'ழ' ],
+
+ // ksha in non-conjunct form with ZWNJ.
+ [ 'க்W', 'க்\u200Cஷ' ],
+ [ 'Q', 'ஸ' ],
+ [ 'W', 'ஷ' ],
+ [ 'E', 'ஜ' ],
+ [ 'R', 'ஹ' ],
+ [ 'T', 'க்ஷ' ],
+ [ 'Y', 'ஸ்ரீ' ],
+ [ 'U', 'ற' ],
+ [ 'I', 'ன' ],
+ [ 'O', '[' ],
+ [ 'P', ']' ],
+ // '\\{', 'ஆ'],
+ // '\\}', 'ஆ'],
+
+ [ 'A', '௹' ],
+ [ 'S', '௺' ],
+ [ 'D', '௸' ],
+ [ 'F', 'ஃ' ],
+ [ 'G', 'எ' ],
+ [ 'H', 'க' ],
+ [ 'J', 'ப' ],
+ [ 'K', '"' ],
+ [ 'L', ':' ],
+ [ '\\:', ';' ],
+ [ '\'', '\'' ],
+
+ [ 'Z', '௳' ],
+ [ 'X', '௴' ],
+ [ 'C', '௵' ],
+ [ 'V', '௶' ],
+ [ 'B', '௷' ],
+ [ 'N', 'ல' ],
+ [ 'M', '/' ],
+
+ [ '\\\\0', '\u0be6' ],
+ [ '\\\\1', '௧' ],
+ [ '\\\\2', '௨' ],
+ [ '\\\\3', '௩' ],
+ [ '\\\\4', '௪' ],
+ [ '\\\\5', '௫' ],
+ [ '\\\\6', '௬' ],
+ [ '\\\\7', '௭' ],
+ [ '\\\\8', '௮' ],
+ [ '\\\\9', '௯' ] ]
+ };
+
+ $.ime.register( ta99 );
+}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ta/ta-bamini.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ta/ta-bamini.js
new file mode 100644
index 00000000..500e729d
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ta/ta-bamini.js
@@ -0,0 +1,90 @@
+( function ( $ ) {
+ 'use strict';
+
+ var taBamini = {
+ id: 'ta-bamini',
+ name: 'பாமினி',
+ description: 'Tamil Bamini input method',
+ date: '2012-10-03',
+ URL: 'http://github.com/wikimedia/jquery.ime',
+ author: 'Junaid P V',
+ license: 'GPLv3',
+ version: '1.0',
+ contextLength: 0,
+ maxKeyLength: 2,
+ patterns: [
+ [ '`', 'ஹ' ],
+ [ 'q', 'ங' ],
+ [ 'w', 'ற' ],
+ [ 'e', 'ந' ],
+ [ 'r', 'ச' ],
+ [ 't', 'வ' ],
+ [ 'y', 'ல' ],
+ [ 'u', 'ர' ],
+ [ 'i', 'ை' ],
+ [ 'o', 'ழ' ],
+ [ 'p', 'ி' ],
+ [ '\\[', 'ஜ' ],
+ [ '\\]', 'ஸ' ],
+ [ '\\\\', 'ஷ' ],
+ [ 'a', 'ய' ],
+ [ 's', 'ள' ],
+ [ 'd', 'ன' ],
+ [ 'f', 'க' ],
+ [ 'g', 'ப' ],
+ [ 'h', 'ா' ],
+ [ 'j', 'த' ],
+ [ 'k', 'ம' ],
+ [ 'l', 'ட' ],
+ [ ';', '்' ],
+ [ 'z', 'ண' ],
+ [ 'x', 'ஒ' ],
+ [ 'c', 'உ' ],
+ [ 'v', 'எ' ],
+ [ 'b', 'டி' ],
+ [ 'n', 'ெ' ],
+ [ 'N', 'ே' ],
+ [ 'm', 'அ' ],
+ [ ',', 'இ' ],
+ [ '/', 'ஃ' ],
+ [ '@', ';' ],
+ [ '#', 'சூ' ],
+ [ '\\$', 'கூ' ],
+ [ '%', 'மூ' ],
+ [ '\\^', 'டூ' ],
+ [ '&', 'ரூ' ],
+ [ '\\*', 'ழூ' ],
+ [ '=', 'ஸ்ரீ' ],
+ [ 'Q', 'ஞ' ],
+ [ 'W', 'று' ],
+ [ 'E', 'நு' ],
+ [ 'R', 'சு' ],
+ [ 'T', 'வு' ],
+ [ 'Y', 'லு' ],
+ [ 'U', 'ரு' ],
+ [ 'I', 'ஐ' ],
+ [ 'O', 'ழு' ],
+ [ 'P', 'ீ' ],
+ [ '\\|', '\'' ],
+ [ 'A', 'யு' ],
+ [ 'S', 'ளு' ],
+ [ 'D', 'னு' ],
+ [ 'F', 'கு' ],
+ [ 'G', 'பு' ],
+ [ 'H', 'ர்' ],
+ [ 'J', 'து' ],
+ [ 'K', 'மு' ],
+ [ 'L', 'டு' ],
+ [ 'Z', 'ணு' ],
+ [ 'X', 'ஓ' ],
+ [ 'C', 'ஊ' ],
+ [ 'V', 'ஏ' ],
+ [ 'B', 'டீ' ],
+ [ 'M', 'ஆ' ],
+ [ '\\<', 'ஈ' ],
+ [ '\\>', ',' ],
+ [ '([ஜஷஸஹ])\\{', '$1ு' ],
+ [ '([ஜஷஸஹ])\\_', '$1ூ' ] ]
+ };
+ $.ime.register( taBamini );
+}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ta/ta-inscript.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ta/ta-inscript.js
new file mode 100644
index 00000000..f3a3ee91
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ta/ta-inscript.js
@@ -0,0 +1,103 @@
+( function ( $ ) {
+ 'use strict';
+
+ var taInScript = {
+ id: 'ta-inscript',
+ name: 'இன்ஸ்கிரிப்ட்',
+ description: 'Tamil InScript Keyboard',
+ date: '2012-11-20',
+ URL: 'http://github.com/wikimedia/jquery.ime',
+ author: 'Junaid P V',
+ license: 'GPLv3',
+ version: '1.0',
+ contextLength: 1,
+ maxKeyLength: 4,
+ patterns: [
+ [ '`', 'ொ' ],
+ [ '~', 'ஒ' ],
+
+ [ '&', 'க்ஷ' ],
+ [ '\\*', 'ஷ்ர' ],
+
+ // ['\\(', '\u200D'], // ZWJ is not used in Tamil.
+ [ '\\)', '\u200C' ], // ZWNJ
+
+ [ '_', 'ஃ' ],
+
+ [ 'q', 'ௌ' ],
+ [ 'Q', 'ஔ' ],
+ [ 'w', 'ை' ],
+ [ 'W', 'ஐ' ],
+ [ 'e', 'ா' ],
+ [ 'E', 'ஆ' ],
+ [ 'r', 'ீ' ],
+ [ 'R', 'ஈ' ],
+ [ 't', 'ூ' ],
+ [ 'T', 'ஊ' ],
+ [ 'u', 'ஹ' ],
+ [ 'U', 'ங' ],
+ [ 'p', 'ஜ' ],
+ [ '\\}', 'ஞ' ],
+
+ [ 'a', 'ோ' ],
+ [ 'A', 'ஓ' ],
+ [ 's', 'ே' ],
+ [ 'S', 'ஏ' ],
+ [ 'd', '்' ],
+ [ 'D', 'அ' ],
+ [ 'f', 'ி' ],
+ [ 'F', 'இ' ],
+ [ 'g', 'ு' ],
+ [ 'G', 'உ' ],
+ [ 'h', 'ப' ],
+ [ 'j', 'ர' ],
+ [ 'J', 'ற' ],
+ [ 'k', 'க' ],
+ [ 'l', 'த' ],
+ [ ';', 'ச' ],
+ [ '\'', 'ட' ],
+
+ [ 'z', 'ெ' ],
+ [ 'Z', 'எ' ],
+ // ['x', 'ஂ'], -- Anusvara is not used in Tamil.
+ [ 'c', 'ம' ],
+ [ 'C', 'ண' ],
+ [ 'v', 'ந' ],
+ [ 'V', 'ன' ],
+ [ 'b', 'வ' ],
+ [ 'B', 'ழ' ],
+ [ 'n', 'ல' ],
+ [ 'N', 'ள' ],
+ [ 'm', 'ஸ' ],
+ [ 'M', 'ஶ' ],
+ [ '<', 'ஷ' ],
+ [ '/', 'ய' ],
+
+ [ '1', '௧' ],
+ [ '2', '௨' ],
+ [ '3', '௩' ],
+ [ '4', '௪' ],
+ [ '5', '௫' ],
+ [ '6', '௬' ],
+ [ '7', '௭' ],
+ [ '8', '௮' ],
+ [ '9', '௯' ],
+ [ '0', '௦' ] ],
+
+ patterns_x: [
+ [ 'X', 'ௐ' ],
+ [ '\\)', '௰' ],
+ [ '-', '௱' ],
+ [ '=', '௲' ],
+ [ 'n', '௳' ],
+ [ 'c', '௴' ],
+ [ 'b', '௵' ],
+ [ 'h', '௶' ],
+ [ 'y', '௷' ],
+ [ 'C', '௸' ],
+ [ ',', '௹' ],
+ [ 'V', '௺' ],
+ [ '4', '₹' ] ]
+ };
+ $.ime.register( taInScript );
+}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ta/ta-inscript2.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ta/ta-inscript2.js
new file mode 100644
index 00000000..c616470d
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ta/ta-inscript2.js
@@ -0,0 +1,107 @@
+( function ( $ ) {
+ 'use strict';
+
+ var taInScript2 = {
+ id: 'ta-inscript2',
+ name: 'இன்ஸ்கிரிப்ட் 2',
+ description: 'Enhanced InScript Keyboard for Tamil',
+ date: '2013-01-16',
+ URL: 'http://github.com/wikimedia/jquery.ime',
+ author: 'Parag Nemade',
+ license: 'GPLv3',
+ version: '1.0',
+ patterns: [
+ ['1', '௧'],
+ ['2', '௨'],
+ ['3', '௩'],
+ ['4', '௪'],
+ ['5', '௫'],
+ ['\\^', 'த்ர'],
+ ['6', '௬'],
+ ['\\&', 'க்ஷ'],
+ ['7', '௭'],
+ ['\\*', 'ஷ்ர'],
+ ['8', '௮'],
+ ['\\(', '('],
+ ['9', '௯'],
+ ['\\)', ')'],
+ ['0', '௦'],
+ ['\\_', 'ஃ'],
+ ['\\-', '-'],
+ ['\\=','='],
+ ['Q', 'ஔ'],
+ ['q', 'ௌ'],
+ ['W', 'ஐ'],
+ ['w', 'ை'],
+ ['E', 'ஆ'],
+ ['e', 'ா'],
+ ['R', 'ஈ'],
+ ['r', 'ீ'],
+ ['T', 'ஊ'],
+ ['t', 'ூ'],
+ ['y', 'y'],
+ ['U', 'ங'],
+ ['u', 'ஹ'],
+ ['p', 'ஜ'],
+ ['\\}', 'ஞ'],
+ ['A', 'ஓ'],
+ ['a', 'ோ '],
+ ['S', 'ஏ'],
+ ['s', 'ே'],
+ ['D', 'அ'],
+ ['d', '்'],
+ ['F', 'இ'],
+ ['f', 'ி'],
+ ['G', 'உ'],
+ ['g', 'ு'],
+ ['h', 'ப'],
+ ['J', 'ற'],
+ ['j', 'ர'],
+ ['k', 'க'],
+ ['l', 'த'],
+ [';', 'ச'],
+ ['\\\'', 'ட'],
+ ['\\~', 'ஒ'],
+ ['\\`', 'ொ'],
+ ['Z', 'எ'],
+ ['z', 'ெ'],
+ ['x', 'ஂ'],
+ ['X', 'X'],
+ ['C', 'ண'],
+ ['c', 'ம'],
+ ['V', 'ன'],
+ ['v', 'ந'],
+ ['B', 'ழ'],
+ ['b', 'வ'],
+ ['N', 'ள'],
+ ['n', 'ல'],
+ ['M', 'ஶ'],
+ ['m', 'ஸ'],
+ ['\\<', 'ஷ'],
+ [',', ','],
+ ['\\>', '।'],
+ ['\\.', '.'],
+ ['/', 'ய']
+ ],
+ patterns_x: [
+ ['1', '\u200d'],
+ ['2', '\u200c'],
+ ['4', '₹'],
+ ['0', '௰'],
+ ['\\-', '௱'],
+ ['\\=', '௲'],
+ ['y', '௷'],
+ ['h', '௶'],
+ ['X', 'ௐ'],
+ ['C', '௸'],
+ ['c', '௴'],
+ ['V', '௺'],
+ ['v', '௳'],
+ ['b', '௵'],
+ [',', '௹'],
+ ['\\.', '॥']
+ ]
+ };
+
+ $.ime.register( taInScript2 );
+}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ta/ta-transliteration.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ta/ta-transliteration.js
new file mode 100644
index 00000000..a000d5af
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ta/ta-transliteration.js
@@ -0,0 +1,120 @@
+( function ( $ ) {
+ 'use strict';
+
+ var taTransliteration = {
+ id: 'ta-transliteration',
+ name: 'எழுத்துப்பெயர்ப்பு',
+ description: 'Tamil Transliteration based input method',
+ date: '2012-10-03',
+ URL: 'http://github.com/wikimedia/jquery.ime',
+ author: 'Junaid P V',
+ license: 'GPLv3',
+ version: '1.0',
+ contextLength: 1,
+ maxKeyLength: 4,
+ patterns: [
+ [ 'ச்h', 'h', 'ச்ஹ்' ],
+ [ 'ழ்h', 'h', 'ழ்ஹ்' ],
+
+ // '(ஸ்ரிi|ஸ்ர்I)',
+ [ 'ஸ்ர்i', 'ஸ்ரீ' ],
+
+ [ 'க்(ச்|ஸ்)h', 'க்\u200Cஷ்' ], // with ZWNJ
+ [ 'க்(ச்|ஸ்)H', 'க்ஷ்' ],
+
+ [ '([க-ஹ])்a', '$1' ],
+ [ '([க-ஹ])(்A|a)', '$1ா' ],
+ [ '([க-ஹ])்i', '$1ி' ],
+ [ '([க-ஹ])(்I|ிi)', '$1ீ' ],
+ [ '([க-ஹ])்u', '$1ு' ],
+ [ '([க-ஹ])(்U|ுu)', '$1ூ' ],
+ [ '([க-ஹ])்e', '$1ெ' ],
+ [ '([க-ஹ])(்E|ெe)', '$1ே' ],
+ [ '([க-ஹ])i', '$1ை' ],
+ [ '([க-ஹ])்o', '$1ொ' ],
+ [ '([க-ஹ])(்O|ொo)', '$1ோ' ],
+ [ '([க-ஹ])u', '$1ௌ' ],
+
+ [ '([அ-ஹ][ெ-்]?)n', '$1ன்' ],
+
+ [ 'அa', 'ஆ' ],
+ [ 'இi', 'ஈ' ],
+ [ 'உu', 'ஊ' ],
+ [ 'எe', 'ஏ' ],
+ [ 'அi', 'ஐ' ],
+ [ 'ஒo', 'ஓ' ],
+ [ 'அu', 'ஔ' ],
+
+ [ '(ந்|ன்)g', 'ங்' ],
+ [ '(ந்|ன்)j', 'ஞ்' ],
+ [ 'ச்h', 'ஷ்' ],
+ [ 'ழ்h', 'ழ்' ],
+ [ 'ட்h', 'த்' ],
+ [ 'ஸ்h', 'ஷ்' ],
+
+ [ 'a', 'அ' ],
+ [ 'b', 'ப்' ],
+ [ 'c', 'ச்' ],
+ [ 'd', 'ட்' ],
+ [ 'e', 'எ' ],
+ [ 'f', 'ஃப்' ],
+ [ 'g', 'க்' ],
+ [ 'h', 'ஹ்' ],
+ [ 'i', 'இ' ],
+ [ 'j', 'ஜ்' ],
+ [ 'k', 'க்' ],
+ [ 'l', 'ல்' ],
+ [ 'm', 'ம்' ],
+ [ 'n', 'ன்' ],
+ [ 'o', 'ஒ' ],
+ [ 'p', 'ப்' ],
+ [ 'q', 'ஃ' ],
+ [ 'r', 'ர்' ],
+ [ 's', 'ச்' ],
+ [ 't', 'ட்' ],
+ [ 'u', 'உ' ],
+ [ 'v', 'வ்' ],
+ [ 'w', 'ந்' ],
+ [ 'y', 'ய்' ],
+ [ 'z', 'ழ்' ],
+ [ 'A', 'ஆ' ],
+ [ 'B', 'ப்' ],
+ [ 'C', 'க்க்' ],
+ [ 'E', 'ஏ' ],
+ [ 'F', 'ஃப்' ],
+ [ 'G', 'க்' ],
+ [ 'H', 'ஃ' ],
+ [ 'I', 'ஈ' ],
+ [ 'J', 'ஜ்ஜ்' ],
+ [ 'K', 'க்' ],
+ [ 'L', 'ள்' ],
+ [ 'M', 'ம்ம்' ],
+ [ 'N', 'ண்' ],
+ [ 'O', 'ஓ' ],
+ [ 'P', 'ப்ப்' ],
+ [ 'Q', 'ஃ' ],
+ [ 'R', 'ற்' ],
+ [ 'S', 'ஸ்' ],
+ [ 'T', 'ட்' ],
+ [ 'U', 'ஊ' ],
+ [ '(V|W)', 'வ்வ்' ],
+ [ 'Y', 'ய்ய்' ],
+ [ 'Z', 'ஶ்' ],
+
+ [ '\\\\0', '\u0be6' ],
+ [ '\\\\1', '௧' ],
+ [ '\\\\2', '௨' ],
+ [ '\\\\3', '௩' ],
+ [ '\\\\4', '௪' ],
+ [ '\\\\5', '௫' ],
+ [ '\\\\6', '௬' ],
+ [ '\\\\7', '௭' ],
+ [ '\\\\8', '௮' ],
+ [ '\\\\9', '௯' ],
+ [ '10\\\\', '\u0BF0' ],
+ [ '100\\\\', '\u0BF1' ],
+ [ '1000\\\\', '\u0BF2' ] ]
+ };
+
+ $.ime.register( taTransliteration );
+}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/te/te-inscript.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/te/te-inscript.js
new file mode 100644
index 00000000..4c663717
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/te/te-inscript.js
@@ -0,0 +1,122 @@
+( function ( $ ) {
+ 'use strict';
+
+ var teInScript = {
+ id: 'te-inscript',
+ name: 'ఇన్\u200dస్క్రిప్ట్',
+ description: 'Inscript keyboard for Telugu script',
+ date: '2012-10-16',
+ author: 'Veeven',
+ license: 'GPLv3',
+ version: '1.0',
+ patterns: [
+ ['D', 'అ'],
+ ['E', 'ఆ'],
+ ['F', 'ఇ'],
+ ['R', 'ఈ'],
+ ['G', 'ఉ'],
+ ['T', 'ఊ'],
+ ['\\+', 'ఋ'],
+ ['Z', 'ఎ'],
+ ['S', 'ఏ'],
+ ['W', 'ఐ'],
+ ['~', 'ఒ'],
+ ['A', 'ఓ'],
+ ['Q', 'ఔ'],
+
+ ['k', 'క'],
+ ['K', 'ఖ'],
+ ['i', 'గ'],
+ ['I', 'ఘ'],
+ ['U', 'ఙ'],
+
+ ['\\;', 'చ'],
+ ['\\:', 'ఛ'],
+ ['p', 'జ'],
+ ['P', 'ఝ'],
+ ['\\}', 'ఞ'],
+
+ ['\'', 'ట'],
+ ['"', 'ఠ'],
+ ['\\[', '','డ'],
+ ['\\{', '','ఢ'],
+ ['C', 'ణ'],
+
+ ['l', 'త'],
+ ['L', 'థ'],
+ ['o', 'ద'],
+ ['O', 'ధ'],
+ ['v', 'న'],
+
+ ['h', 'ప'],
+ ['H', 'ఫ'],
+ ['y', 'బ'],
+ ['Y', 'భ'],
+ ['c', 'మ'],
+
+ ['/', 'య'],
+ ['j', 'ర'],
+ ['J', 'ఱ'],
+ ['n', 'ల'],
+ ['N', 'ళ'],
+ ['b', 'వ'],
+
+ ['M', 'శ'],
+ ['\\<', '','ష'],
+ ['m', 'స'],
+ ['u', 'హ'],
+
+ ['e', 'ా'],
+ ['f', 'ి'],
+ ['r', 'ీ'],
+ ['g', 'ు'],
+ ['t', 'ూ'],
+ ['\\=', 'ృ'],
+ ['z', 'ె'],
+ ['s', 'ే'],
+ ['w', 'ై'],
+ ['`', 'ొ'],
+ ['a', 'ో'],
+ ['q', 'ౌ'],
+ ['x', 'ం'],
+ ['\\-', 'ః'],
+ ['X', 'ఁ'],
+ ['d', '్'],
+
+ ['0', '','౦'],
+ ['1', '','౧'],
+ ['2', '౨'],
+ ['3', '౩'],
+ ['4', '౪'],
+ ['5', '౫'],
+ ['6', '౬'],
+ ['7', '౭'],
+ ['8', '౮'],
+ ['9', '౯'],
+
+ ['\\@', '\u200C'], // In cases where extended rules do not work
+ ['\\#', '్ర'],
+ ['\\$', 'ర్'],
+ ['\\%', 'జ్ఞ'],
+ ['\\^', 'త్ర'],
+ ['\\&', 'క్ష'],
+ ['\\*', 'శ్ర'],
+ ['\\>', '।']],
+
+ patterns_x: [
+ ['X', 'ॐ'],
+ ['\\;', 'ౘ'],
+ ['p', 'ౙ'],
+ ['f', '\u0C62'], // vowel sign of alu (volic l)
+ ['r', '\u0C63'], // vowel sign of aluu (volic ll)
+ ['F', 'ఌ'],
+ ['R', 'ౡ'],
+ ['\\.', '॥'],
+ ['\\>', 'ఽ'],
+ ['2', '\u200C'], // ZWNJ
+ ['4', '₹'],
+ ['\\=', 'ౄ'],
+ ['\\+', 'ౠ']]
+ };
+ $.ime.register( teInScript );
+}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/te/te-inscript2.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/te/te-inscript2.js
new file mode 100644
index 00000000..4cb75116
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/te/te-inscript2.js
@@ -0,0 +1,126 @@
+( function ( $ ) {
+ 'use strict';
+
+ var teInScript2 = {
+ id: 'te-inscript2',
+ name: 'ఇన్\u200dస్క్రిప్ట్ 2',
+ description: 'Enhanced InScript keyboard for Telugu script',
+ date: '2013-01-16',
+ author: 'Parag Nemade',
+ license: 'GPLv3',
+ version: '1.0',
+ patterns: [
+ ['1', '౧'],
+ ['2', '౨'],
+ ['3', '౩'],
+ ['4', '౪'],
+ ['5', '౫'],
+ ['6', '౬'],
+ ['7', '౭'],
+ ['8', '౮'],
+ ['\\(', '('],
+ ['9', '౯'],
+ ['\\)', ')'],
+ ['0', '౦'],
+ ['\\_', 'ః'],
+ ['\\-', '-'],
+ ['\\+', 'ఋ'],
+ ['\\=', 'ృ'],
+ ['Q', 'ఔ'],
+ ['q', 'ౌ'],
+ ['W', 'ఐ'],
+ ['w', 'ై'],
+ ['E', 'ఆ'],
+ ['e', 'ా'],
+ ['R', 'ఈ'],
+ ['r', 'ీ'],
+ ['T', 'ఊ'],
+ ['t', 'ూ'],
+ ['Y', 'భ'],
+ ['y', 'బ'],
+ ['U', 'ఙ'],
+ ['u', 'హ'],
+ ['I', 'ఘ'],
+ ['i', 'గ'],
+ ['O', 'ధ'],
+ ['o', 'ద'],
+ ['P', 'ఝ'],
+ ['p', 'జ'],
+ ['\\{', 'ఢ'],
+ ['\\[', 'డ'],
+ ['\\}', 'ఞ'],
+ ['A', 'ఓ'],
+ ['a', 'ో'],
+ ['S', 'ఏ'],
+ ['s', 'ే'],
+ ['D', 'అ'],
+ ['d', '్'],
+ ['F', 'ఇ'],
+ ['f', 'ి'],
+ ['G', 'ఉ'],
+ ['g', 'ు'],
+ ['H', 'ఫ'],
+ ['h', 'ప'],
+ ['J', 'ఱ'],
+ ['j', 'ర'],
+ ['K', 'ఖ'],
+ ['k', 'క'],
+ ['L', 'థ'],
+ ['l', 'త'],
+ [':', 'ఛ'],
+ [';', 'చ'],
+ ['"', 'ఠ'],
+ ['\\\'', 'ట'],
+ ['\\~', 'ఒ'],
+ ['\\`', 'ొ'],
+ ['Z', 'ఎ'],
+ ['z', 'ె'],
+ ['X', 'ఁ'],
+ ['x', 'ం'],
+ ['C', 'ణ'],
+ ['c', 'మ'],
+ ['v', 'న'],
+ ['b', 'వ'],
+ ['N', 'ళ'],
+ ['n', 'ల'],
+ ['M', 'శ'],
+ ['m', 'స'],
+ ['\\<', 'ష'],
+ [',', ','],
+ ['\\>', '।'],
+ ['\\.', '.'],
+ ['/', 'య'],
+ ['\\%', 'జ్ఞ'],
+ ['\\^', 'త్ర'],
+ ['\\&', 'క్ష'],
+ ['\\*', 'శ్ర']
+ ],
+ patterns_x: [
+ ['\\!', '౹'],
+ ['\\@', '౼'],
+ ['\\#', '౺'],
+ ['\\$', '౽'],
+ ['4', '₹'],
+ ['\\%', '౻'],
+ ['\\^', '౾'],
+ ['1', '\u200d'],
+ ['2', '\u200c'],
+ ['0', '౸'],
+ ['\\-', '౿'],
+ ['\\+', 'ౠ'],
+ ['\\=', 'ౄ'],
+ ['R', 'ౣ'],
+ ['r', 'ౡ'],
+ ['p', 'ౙ'],
+ ['F', 'ఌ'],
+ ['f', 'ౢ'],
+ [';', 'ౘ'],
+ ['Z', 'ౖ'],
+ ['z', 'ౕ'],
+ ['\\>', 'ఽ'],
+ ['\\.', '॥']
+ ]
+ };
+
+ $.ime.register( teInScript2 );
+}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/te/te-transliteration.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/te/te-transliteration.js
new file mode 100644
index 00000000..3f07cf01
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/te/te-transliteration.js
@@ -0,0 +1,221 @@
+( function ( $ ) {
+ 'use strict';
+
+ var teTransliteration = {
+ id: 'te-transliteration',
+ name: 'లిప్యంతరీకరణ',
+ description: 'Telugu Transliteration based on RTS',
+ date: '2012-10-16',
+ URL: 'http://github.com/wikimedia/jquery.ime',
+ author: 'Veeven and Junaid P V',
+ license: 'GPLv3',
+ version: '1.0',
+ contextLength: 1,
+ maxKeyLength: 4,
+ patterns: [
+ ['(మ్|న్)b', 'ంబ్'],
+ ['(మ్|న్)B', 'ంభ్'],
+ ['(మ్|న్)c', 'ంచ్'],
+ ['(మ్|న్)C', 'ంఛ్'],
+ ['(మ్|న్)d', 'ంద్'],
+ ['(మ్|న్)D', 'ండ్'],
+ ['(మ్|న్)[fFP]', 'ంఫ్'],
+ ['(మ్|న్)g', 'ంగ్'],
+ ['(మ్|న్)h', 'ంహ్'],
+ ['(మ్|న్)j', 'ంజ్'],
+ ['(మ్|న్)J', 'ంఝ్'],
+ ['(మ్|న్)k', 'ంక్'],
+ ['(మ్|న్)L', 'ంళ్'],
+ ['(మ్|న్)p', 'ంప్'],
+ ['(మ్|న్)r', 'ంర్'],
+ ['(మ్|న్)s', 'ంస్'],
+ ['(మ్|న్)t', 'ంత్'],
+ ['(మ్|న్)T', 'ంట్'],
+ ['(మ్|న్)[vwVW]', 'ంవ్'],
+ ['(మ్|న్)[xX]', 'ంక్ష్'],
+
+ // & for forcing combination
+ ['(మ్|న్)&b', '$1బ్'],
+ ['(మ్|న్)&B', '$1బ్'],
+ ['(మ్|న్)&c', '$1చ్'],
+ ['(మ్|న్)&C', '$1ఛ్'],
+ ['(మ్|న్)&d', '$1ద్'],
+ ['(మ్|న్)&D', '$1డ్'],
+ ['(మ్|న్)&[fFP]', '$1ఫ్'],
+ ['(మ్|న్)&g', '$1గ్'],
+ ['(మ్|న్)&h', '$1హ్'],
+ ['(మ్|న్)&j', '$1జ్'],
+ ['(మ్|న్)&J', '$1ఝ్'],
+ ['(మ్|న్)&k', '$1క్'],
+ ['(మ్|న్)&L', '$1ళ్'],
+ ['(మ్|న్)&p', '$1ప్'],
+ ['(మ్|న్)&r', '$1ర్'],
+ ['(మ్|న్)&s', '$1స్'],
+ ['(మ్|న్)&t', '$1త్'],
+ ['(మ్|న్)&T', '$1ట్'],
+ ['(మ్|న్)&[vwVW]', '$1వ్'],
+ ['(మ్|న్)&[xX]', '$1క్ష్'],
+ ['(మ్|న్)&(\\s|\\.|\\, |\\))', '$1$2'],
+ // అ
+ ['([క-హ]|ౘ|ౙ)్a', '$1'],
+ // ఆ
+ ['([క-హ])(్A|a|\')', '$1ా'],
+ // ఇ
+ ['([క-హ])్i', '$1ి'],
+ // ఈ
+ ['([క-హ])(్I|ిi|ి\'|ెe)', '$1ీ'],
+ // ఉ
+ ['([క-హ])్u', '$1ు'],
+ // ఊ
+ ['([క-హ])(ుu|ు\'|ుa|్U)', '$1ూ'],
+ ['([క-హ])ొo', 'o', '$1ూ'],
+ // ఋ
+ ['([క-హ])్R', '$1ృ'],
+ ['([క-హ])్ర్\'', '$1ృ'],
+ // ౠ
+ ['([క-హ])ృu', '$1ౄ'],
+ // ఌ
+ ['([క-హ])్~l', '$1ౢ'],
+ // ౡ
+ ['([క-హ])ౢ(l|\')', '$1ౣ'],
+ // ఎ
+ ['([క-హ])్e', '$1ె'],
+ // ఏ
+ ['([క-హ])(్E|ెa|ె\')', '$1ే'],
+ ['([క-హ])e', 'a', '$1ే'],
+ // ఐ
+ ['([క-హ])ెi', '$1ై'],
+ ['([క-హ])i', 'a', '$1ై'],
+ // ఒ
+ ['([క-హ])్o', '$1ొ'],
+ // ఓ
+ ['([క-హ])(్O|ొa|ొ\')', '$1ో'],
+ // ఔ
+ ['([క-హ])(ొu|ొw)', '$1ౌ'],
+ ['([క-హ])u', 'a', '$1ౌ'],
+
+ // TODO: handle back corrections
+ /* not working ['([క-హ])u', '$1ు'],
+ ['([క-హ])U', '$1ూ'],
+ ['([క-హ])E', '$1ే'],
+ */
+
+ // zwnj
+ ['(్)\\^', '$1\u200c'],
+
+ // sunna ending
+ ['మ్(\\s|\\.|\\, |\\))', 'ం$1'],
+
+ // standalone vowels
+ ['అ(a|\')', 'ఆ'],
+ ['ఇ(i|\')', 'ఈ'],
+ ['ఎe', 'ఈ'],
+ ['ఉ(u|\')', 'ఊ'],
+ ['ఒo', 'ఊ'],
+ ['ఎ(a|\')', 'ఏ'],
+ ['అe', 'a', 'ఏ'],
+ ['ఎi', 'ఐ'],
+ ['అi', 'a', 'ఐ'],
+ ['ఒ(a|\')', '', 'ఓ'],
+ ['అo', 'a', 'ఓ'],
+ ['ఒ(u|w)', 'ఔ'],
+ ['అu', 'a', 'ఔ'],
+ ['ఋ(u|\')', 'ౠ'],
+ ['ర్\'', 'ఋ'],
+
+ // mahaa prana
+ ['క్h', 'ఖ్'],
+ ['గ్h', 'ఘ్'],
+ ['జ్h', 'ఝ్'],
+ ['చ్\'', 'ఛ్'],
+ ['చ్h', 'చ్'],
+ ['స్h', 'ష్'],
+ ['స్\'', 'శ్'],
+ ['త్\'', 'ట్'],
+ ['ట్h', 'ఠ్'],
+ ['ద్\'', 'డ్'],
+ ['డ్h', 'ఢ్'],
+ ['న్\'', 'ణ్'],
+ ['త్h', 'థ్'],
+ ['ద్h', 'ధ్'],
+ ['ప్h', 'ఫ్'],
+ ['బ్h', 'భ్'],
+ ['ల్\'', 'ళ్'],
+
+ // basic
+ ['a', 'అ'],
+ ['b', 'బ్'],
+ ['~c', 'ౘ్'],
+ ['c', 'చ్'],
+ ['d', 'ద్'],
+ ['e', 'ఎ'],
+ ['(f|F|P)', 'ఫ్'],
+ ['g', 'గ్'],
+ ['@h', 'ః'],
+ ['h', 'హ్'],
+ ['i', 'ఇ'],
+ ['~j', 'ౙ్'],
+ ['j', 'జ్'],
+ ['k', 'క్'],
+ ['~l', 'ఌ'],
+ ['l', 'ల్'],
+ ['@m', 'ఁ'],
+ ['~m', 'ఙ'],
+ ['m', 'మ్'],
+ ['~n', 'ఞ'],
+ ['n', 'న్'],
+ ['o', 'ఒ'],
+ ['p', 'ప్'],
+ ['q', 'క్వ్'],
+ ['~r', 'ఱ్'],
+ ['r', 'ర్'],
+ ['s', 'స్'],
+ ['t', 'త్'],
+ ['u', 'ఉ'],
+ ['(v|w|V|W)', 'వ్'],
+ ['(x|X)', 'క్ష్'],
+ ['(y|Y)', 'య్'],
+ ['(z|Z)', 'జ్'],
+ ['A', 'ఆ'],
+ ['B', 'భ్'],
+ ['C', 'ఛ్'],
+ ['D', 'డ్'],
+ ['E', 'ఏ'],
+ ['G', 'ఘ్'],
+ ['H', 'ః'],
+ ['I', 'ఈ'],
+ ['J', 'ఝ్'],
+ ['K', 'ఖ్'],
+ ['L', 'ళ్'],
+ ['M', 'ం'],
+ ['N', 'ణ్'],
+ ['O', 'ఓ'],
+ ['Q', 'క్వ్'],
+ ['R', 'ఋ'],
+ ['S', 'శ్'],
+ ['T', 'ట్'],
+ ['U', 'ఊ'],
+
+ /**
+ * Telugu numbers
+ */
+ ['~0', '౦'],
+ ['~1', '౧'],
+ ['~2', '౨'],
+ ['~3', '౩'],
+ ['~4', '౪'],
+ ['~5', '౫'],
+ ['~6', '౬'],
+ ['~7', '౭'],
+ ['~8', '౮'],
+ ['~9', '౯'],
+
+ // others
+ ['।~\\.', '॥'], // double danda
+ ['~\\.', '।'], // danda
+ ['//', 'ఽ'], // avagraha
+ ['~\\$', '₹']] // rupee
+ };
+
+ $.ime.register( teTransliteration );
+}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/th/th-kedmanee.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/th/th-kedmanee.js
new file mode 100644
index 00000000..10da3812
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/th/th-kedmanee.js
@@ -0,0 +1,115 @@
+( function ( $ ) {
+ 'use strict';
+
+ var kedmanee = {
+ id: 'th-kedmanee',
+ name: 'Thai Kedmanee',
+ description: 'Thai Kedmanee Input Method',
+ date: '2012-10-25',
+ URL: 'http://github.com/wikimedia/jquery.ime',
+ author: 'Kevin K.S. Leung, <sprconan@gmail.com>',
+ license: 'GPLv3',
+ version: '1.0',
+ patterns: [
+ ['Q', '๐'],
+ ['W', '"'],
+ ['E', 'ฎ'],
+ ['R', 'ฑ'],
+ ['T', 'ธ'],
+ ['Y', 'ํ'],
+ ['U', '๊'],
+ ['I', 'ณ'],
+ ['O', 'ฯ'],
+ ['P', 'ญ'],
+ ['{', 'ฐ'],
+ ['}', ','],
+ ['\\|', 'ฅ'],
+ ['A', 'ฤ'],
+ ['S', 'ฆ'],
+ ['D', 'ฏ'],
+ ['F', 'โ'],
+ ['G', 'ฌ'],
+ ['H', '็'],
+ ['J', '๋'],
+ ['K', 'ษ'],
+ ['L', 'ศ'],
+ [':', 'ซ'],
+ ['\"', '.'],
+ ['Z', '('],
+ ['X', ')'],
+ ['C', 'ฉ'],
+ ['V', 'ฮ'],
+ ['B', 'ฺ'],
+ ['N', '์'],
+ ['M', '?'],
+ ['<', 'ฒ'],
+ ['>', 'ฬ'],
+ ['\\?', 'ฦ'],
+
+ ['q', 'ๆ'],
+ ['w', 'ไ'],
+ ['e', 'ำ'],
+ ['r', 'พ'],
+ ['t', 'ะ'],
+ ['y', 'ั'],
+ ['u', 'ี'],
+ ['i', 'ร'],
+ ['o', 'น'],
+ ['p', 'ย'],
+ ['\\[', 'บ'],
+ ['\\]', 'ล'],
+ ['\\\\', 'ฃ'],
+ ['a', 'ฟ'],
+ ['s', 'ห'],
+ ['d', 'ก'],
+ ['f', 'ด'],
+ ['g', 'เ'],
+ ['h', '้'],
+ ['j', '่'],
+ ['k', 'า'],
+ ['l', 'ส'],
+ [';', 'ว'],
+ ['\'', 'ง'],
+ ['z', 'ผ'],
+ ['x', 'ป'],
+ ['c', 'แ'],
+ ['v', 'อ'],
+ ['b', 'ิ'],
+ ['n', 'ื'],
+ ['m', 'ท'],
+ [',', 'ม'],
+ ['\\.', 'ใ'],
+ ['/', 'ฝ'],
+
+ ['`', '_'],
+ ['1', 'ๅ'],
+ ['2', '/'],
+ ['3', '-'],
+ ['4', 'ภ'],
+ ['5', 'ถ'],
+ ['6', 'ุ'],
+ ['7', 'ึ'],
+ ['8', 'ค'],
+ ['9', 'ต'],
+ ['0', 'จ'],
+ ['\\-', 'ข'],
+ ['=', 'ช'],
+ ['~', '%'],
+ ['!', '+'],
+ ['@', '๑'],
+ ['#', '๒'],
+ ['\\$', '๓'],
+ ['%', '๔'],
+ ['\\^', 'ู'],
+ ['&', '฿'],
+ ['\\*', '๕'],
+ ['\\(', '๖'],
+ ['\\)', '๗'],
+ ['_', '๘'],
+ ['\\+', '๙']
+ ]
+ };
+
+ $.ime.register( kedmanee );
+
+}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/th/th-pattachote.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/th/th-pattachote.js
new file mode 100644
index 00000000..c2c1bdbc
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/th/th-pattachote.js
@@ -0,0 +1,115 @@
+( function ( $ ) {
+ 'use strict';
+
+ var pattachote = {
+ id: 'th-pattachote',
+ name: 'Thai Pattachote',
+ description: 'Thai Pattachote Input Method',
+ date: '2012-10-25',
+ URL: 'http://github.com/wikimedia/jquery.ime',
+ author: 'Kevin K.S. Leung, <sprconan@gmail.com>',
+ license: 'GPLv3',
+ version: '1.0',
+ patterns: [
+ ['Q', '๊'],
+ ['W', 'ฤ'],
+ ['E', 'ๆ'],
+ ['R', 'ญ'],
+ ['T', 'ษ'],
+ ['Y', 'ึ'],
+ ['U', 'ฝ'],
+ ['I', 'ซ'],
+ ['O', 'ถ'],
+ ['P', 'ฒ'],
+ ['{', 'ฯ'],
+ ['}', 'ฦ'],
+ ['\\|', 'ํ'],
+ ['A', '๋'],
+ ['S', 'ธ'],
+ ['D', 'ำ'],
+ ['F', 'ณ'],
+ ['G', '์'],
+ ['H', 'ื'],
+ ['J', 'ผ'],
+ ['K', 'ช'],
+ ['L', 'โ'],
+ [':', 'ฆ'],
+ ['"', 'ฑ'],
+ ['Z', 'ฎ'],
+ ['X', 'ฏ'],
+ ['C', 'ฐ'],
+ ['V', 'ภ'],
+ ['B', 'ั'],
+ ['N', 'ศ'],
+ ['M', 'ฮ'],
+ ['<', 'ฟ'],
+ ['>', 'ฉ'],
+ ['\\?', 'ฬ'],
+
+ ['q', '็'],
+ ['w', 'ต'],
+ ['e', 'ย'],
+ ['r', 'อ'],
+ ['t', 'ร'],
+ ['y', '่'],
+ ['u', 'ด'],
+ ['i', 'ม'],
+ ['o', 'ว'],
+ ['p', 'แ'],
+ ['\\[', 'ใ'],
+ ['\\]', 'ฌ'],
+ ['\\\\', ''],
+ ['a', '้'],
+ ['s', 'ท'],
+ ['d', 'ง'],
+ ['f', 'ก'],
+ ['g', 'ั'],
+ ['h', 'ี'],
+ ['j', 'า'],
+ ['k', 'น'],
+ ['l', 'เ'],
+ [';', 'ไ'],
+ ['\'', 'ข'],
+ ['z', 'บ'],
+ ['x', 'ป'],
+ ['c', 'ล'],
+ ['v', 'ห'],
+ ['b', 'ิ'],
+ ['n', 'ค'],
+ ['m', 'ส'],
+ [',', 'ะ'],
+ ['\\.', 'จ'],
+ ['/', 'พ'],
+
+ ['`', '_'],
+ ['1', '='],
+ ['2', '๒'],
+ ['3', '๓'],
+ ['4', '๔'],
+ ['5', '๕'],
+ ['6', 'ู'],
+ ['7', '๗'],
+ ['8', '๘'],
+ ['9', '๙'],
+ ['0', '๐'],
+ ['\\-', '๑'],
+ ['=', '๖'],
+ ['~', '฿'],
+ ['!', '+'],
+ ['@', '"'],
+ ['#', '/'],
+ ['\\$', ','],
+ ['%', '?'],
+ ['\\^', 'ุ'],
+ ['&', '_'],
+ ['\\*', '.'],
+ ['\\(', '('],
+ ['\\)', ')'],
+ ['_', '-'],
+ ['\\+', '%']
+ ]
+ };
+
+ $.ime.register( pattachote );
+
+}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/udm/udm-alt.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/udm/udm-alt.js
new file mode 100644
index 00000000..c7325eb1
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/udm/udm-alt.js
@@ -0,0 +1,40 @@
+( function ( $ ) {
+ 'use strict';
+
+ var udmAlt = {
+ id: 'udm-alt',
+ name: 'Удмурт ALT',
+ description: 'Удмурт ALT',
+ date: '2013-03-17',
+ URL: 'http://github.com/wikimedia/jquery.ime',
+ author: 'Amir (Алексей) Aharoni',
+ license: 'GPLv3',
+ version: '1.0',
+ patterns: [
+ ['ц', 'ӵ'],
+ ['Ц', 'Ӵ'],
+ ['щ', 'ӥ'],
+ ['Щ', 'Ӥ'],
+ ['х', 'ӟ'],
+ ['Х', 'Ӟ'],
+ ['ф', 'ӝ'],
+ ['Ф', 'Ӝ']
+ ],
+ patterns_x: [
+ ['ё', 'ӧ'],
+ ['Ё', 'Ӧ'],
+
+ // Allow typing the Russian letters using Alt
+ ['ц', 'ц'],
+ ['Ц', 'Ц'],
+ ['щ', 'щ'],
+ ['Щ', 'Щ'],
+ ['х', 'х'],
+ ['Х', 'Х'],
+ ['ф', 'ф'],
+ ['Ф', 'Ф']
+ ]
+ };
+
+ $.ime.register( udmAlt );
+}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ug/ug-kbd.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ug/ug-kbd.js
new file mode 100644
index 00000000..ac8acfff
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ug/ug-kbd.js
@@ -0,0 +1,79 @@
+( function ( $ ) {
+ 'use strict';
+
+ var ugKbd = {
+ id: 'ug-kbd',
+ name: 'Uyghur kbd',
+ description: 'Uyghur kbd keyboard layout',
+ date: '2013-02-12',
+ URL: 'http://github.com/wikimedia/jquery.ime',
+ author: 'Parag Nemade',
+ license: 'GPLv3',
+ version: '1.0',
+ patterns: [
+ ['q', '\u0686'],
+ ['w', '\u06CB'],
+ ['e', '\u06D0'],
+ ['r', '\u0631'],
+ ['t', '\u062A'],
+ ['y', '\u064A'],
+ ['u', '\u06C7'],
+ ['i', '\u06AD'],
+ ['o', '\u0648'],
+ ['p', '\u067E'],
+ ['a', '\u06BE'],
+ ['s', '\u0633'],
+ ['d', '\u062F'],
+ ['f', '\u0627'],
+ ['g', '\u06D5'],
+ ['h', '\u0649'],
+ ['j', '\u0642'],
+ ['k', '\u0643'],
+ ['l', '\u0644'],
+ [';', '\u061B'],
+ ['z', '\u0632'],
+ ['x', '\u0634'],
+ ['c', '\u063A'],
+ ['v', '\u06C8'],
+ ['b', '\u0628'],
+ ['n', '\u0646'],
+ ['m', '\u0645'],
+ [',', '\u060C'],
+ ['/', '\u0626'],
+ ['Q', '\u0686'],
+ ['W', '\u06CB'],
+ ['E', '\u06D0'],
+ ['R', '\u0631'],
+ ['T', '\u062A'],
+ ['Y', '\u064A'],
+ ['U', '\u06C7'],
+ ['I', '\u06AD'],
+ ['O', '\u0648'],
+ ['P', '\u067E'],
+ ['\\{', '\u00AB'],
+ ['\\}', '\u00BB'],
+ ['A', '\u06BE'],
+ ['S', '\u0633'],
+ ['D', '\u0698'],
+ ['F', '\u0641'],
+ ['G', '\u06AF'],
+ ['H', '\u062E'],
+ ['J', '\u062C'],
+ ['K', '\u06C6'],
+ ['L', '\u0644'],
+ ['Z', '\u0632'],
+ ['X', '\u0634'],
+ ['C', '\u063A'],
+ ['V', '\u06C8'],
+ ['B', '\u0628'],
+ ['N', '\u0646'],
+ ['M', '\u0645'],
+ ['\\?', '\u061F'],
+ ['\\<', '\u2039'],
+ ['\\>', '\u203A'],
+ ['\\_', '\u2014']
+ ]
+ };
+
+ $.ime.register( ugKbd );
+}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/uk/uk-kbd.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/uk/uk-kbd.js
new file mode 100644
index 00000000..93489433
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/uk/uk-kbd.js
@@ -0,0 +1,101 @@
+( function ( $ ) {
+ 'use strict';
+
+ var ukKbd = {
+ id: 'uk-kbd',
+ name: 'Українська',
+ description: 'Ukrainian kbd keyboard layout',
+ date: '2013-02-12',
+ URL: 'http://github.com/wikimedia/jquery.ime',
+ author: 'Parag Nemade',
+ license: 'GPLv3',
+ version: '1.0',
+ patterns: [
+ ['`', 'ґ'],
+ ['q', 'й'],
+ ['w', 'ц'],
+ ['e', 'у'],
+ ['r', 'к'],
+ ['t', 'е'],
+ ['y', 'н'],
+ ['u', 'г'],
+ ['i', 'ш'],
+ ['o', 'щ'],
+ ['p', 'з'],
+ ['\\[', 'х'],
+ ['\\]', 'ї'],
+ ['a', 'ф'],
+ ['s', 'і'],
+ ['d', 'в'],
+ ['f', 'а'],
+ ['g', 'п'],
+ ['h', 'р'],
+ ['j', 'о'],
+ ['k', 'л'],
+ ['l', 'д'],
+ [';', 'ж'],
+ ['\'', 'є'],
+ ['\\\\', '\\'],
+ ['z', 'я'],
+ ['x', 'ч'],
+ ['c', 'с'],
+ ['v', 'м'],
+ ['b', 'и'],
+ ['n', 'т'],
+ ['m', 'ь'],
+ [',', 'б'],
+ ['\\.', 'ю'],
+ ['/', '.'],
+ ['\\!', '!'],
+ ['\\@', '"'],
+ ['\\#', '№'],
+ ['\\$', ';'],
+ ['\\%', '%'],
+ ['\\^', ':'],
+ ['\\&', '?'],
+ ['\\*', '*'],
+ ['\\(', '('],
+ ['\\)', ')'],
+ ['\\_', '_'],
+ ['\\+', '+'],
+ ['\\~', 'Ґ'],
+ ['Q', 'Й'],
+ ['W', 'Ц'],
+ ['E', 'У'],
+ ['R', 'К'],
+ ['T', 'Е'],
+ ['Y', 'Н'],
+ ['U', 'Г'],
+ ['I', 'Ш'],
+ ['O', 'Щ'],
+ ['P', 'З'],
+ ['\\{', 'Х'],
+ ['\\}', 'Ї'],
+ ['A', 'Ф'],
+ ['S', 'І'],
+ ['D', 'В'],
+ ['F', 'А'],
+ ['G', 'П'],
+ ['H', 'Р'],
+ ['J', 'О'],
+ ['K', 'Л'],
+ ['L', 'Д'],
+ [':', 'Ж'],
+ ['\"', 'Є'],
+ ['\\|', '|'],
+ ['Z', 'Я'],
+ ['X', 'Ч'],
+ ['C', 'С'],
+ ['V', 'М'],
+ ['B', 'И'],
+ ['N', 'Т'],
+ ['M', 'Ь'],
+ ['\\<', 'Б'],
+ ['\\>', 'Ю'],
+ ['\\?', ',']
+ ]
+
+ };
+ $.ime.register( ukKbd );
+
+}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ur/ur-phonetic.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ur/ur-phonetic.js
new file mode 100644
index 00000000..98b7596b
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ur/ur-phonetic.js
@@ -0,0 +1,108 @@
+( function ( $ ) {
+ 'use strict';
+
+ var urPhonetic = {
+ id: 'ur-phonetic',
+ name: 'صوتی',
+ description: 'Phonetic keyboard for Urdu script',
+ date: '2013-02-18',
+ URL: 'http://cvs.savannah.gnu.org/viewvc/m17n-contrib/im/ur-phonetic.mim?root=m17n&view=markup',
+ author: 'Parag Nemade',
+ license: 'GPLv3',
+ version: '1.0',
+ patterns: [
+ ['!', '!'],
+ ['1', '۱'],
+ ['2', '۲'],
+ ['\\#', '/'],
+ ['3', '۳'],
+ /* Yeh with hamza above */ ['\\$', 'ئ'],
+ ['4', '۴'],
+ ['5', '۵'],
+ ['6', '۶'],
+ ['7', '۷'],
+ ['8', '۸'],
+ ['\\(', ')'],
+ ['9', '۹'],
+ ['\\)', '('],
+ ['0', '۰'],
+ ['\\_" "ّ'],
+ /* Alef with hamza above */ ['\\-', 'أ'],
+ /* Alef with madda above */ ['\\+', 'آ'],
+ /* Waw with hamza above */ ['\\=', 'ؤ'],
+ ['Q', 'ْ'],
+ ['q', 'ق'],
+ ['W', 'ﷺ'],
+ ['w', 'و'],
+ ['E', '¥'],
+ ['e', 'ع'],
+ ['R', 'ڑ'],
+ ['r', 'ر'],
+ ['T', 'ٹ'],
+ ['t', 'ت'],
+ ['Y', '\u0601'],
+ ['y', 'ے'],
+ ['U', '،'],
+ ['u', 'ء'],
+ ['I', 'ٰ'],
+ ['i', 'ی'],
+ /* Teh marbuta goal */ ['O', 'ۃ'],
+ ['o', 'ہ'],
+ ['P', 'ُ'],
+ ['p', 'پ'],
+ ['\\{', 'ٰ'],
+ ['\\[', ']'],
+ ['\\}', 'ٰٰ'],
+ ['\\]', '['],
+ ['A', 'ٓ'],
+ ['a', 'ا'],
+ ['S', 'ص'],
+ ['s', 'س'],
+ ['D', 'ڈ'],
+ ['d', 'د'],
+ ['F', ''],
+ ['f', 'ف'],
+ ['G', 'غ'],
+ ['g', 'گ'],
+ ['H', 'ح'],
+ ['h', 'ھ'],
+ ['J', 'ض'],
+ ['j', 'ج'],
+ ['K', 'خ'],
+ ['k', 'ک'],
+ ['L', '\u0613'],
+ ['l', 'ل'],
+ [':', ':'],
+ /* Arabic semicolon */ [';', '؛'],
+ ['\"', '؎'],
+ ['\'', 'ٰ'],
+ ['\\|', 'ؔ'],
+ ['\\', '؎'],
+ ['\\~', 'ً'],
+ ['\\`', 'ٍ'],
+ ['Z', 'ذ'],
+ ['z', 'ز'],
+ ['X', 'ژ'],
+ ['x', 'ش'],
+ ['C', 'ث'],
+ ['c', 'چ'],
+ ['V', 'ظ'],
+ ['v', 'ط'],
+ ['B', 'ؒ'],
+ ['b', 'ب'],
+ ['N', 'ں'],
+ ['n', 'ن'],
+ ['M', ''],
+ ['m', 'م'],
+ ['\\<', 'ِ'],
+ [',', '،'],
+ ['\\>', 'َ'],
+ /* Arabic full stop */ ['\\.', '۔'],
+ /* Arabic question mark */ ['\\?', '؟'],
+ ['\\^', 'ۖ'],
+ ['\\&', 'ٔ'],
+ ['\\*', 'ٌ']]
+ };
+
+ $.ime.register( urPhonetic );
+}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ur/ur-transliteration.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ur/ur-transliteration.js
new file mode 100644
index 00000000..7b1236e2
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/ur/ur-transliteration.js
@@ -0,0 +1,98 @@
+( function ( $ ) {
+ 'use strict';
+
+ var urTransliteration = {
+ id: 'ur-transliteration',
+ name: 'Urdu Transliteration',
+ description: 'Urdu Transliteration based on RTS',
+ date: '2012-10-16',
+ URL: 'http://github.com/wikimedia/jquery.ime',
+ author: 'Mohammed Imran Tabani',
+ license: '',
+ version: '1.0',
+ patterns: [
+ ['x', 'ف'],
+ ['_', '_'],
+ ['D', 'ڑ'],
+ ['E', 'ذ'],
+ ['F', 'ں'],
+ ['R', 'ڈ'],
+ ['G', 'ۂ'],
+ ['T', 'ث'],
+ ['\\+', '+'],
+ ['S', 'ز'],
+ ['W', 'ض'],
+ ['A', 'ژ'],
+ ['Q', 'ظ'],
+ ['k', 'ک'],
+ ['K', 'گ'],
+ ['i', 'ب'],
+ ['I', 'ـ'],
+ ['U', 'ۃ'],
+ /* Arabic semicolon */ ['\\;', '؛'],
+ ['\\:', ':'],
+ ['p', 'ح'],
+ ['P', 'خ'],
+ ['\\}', '{'],
+ ['\'', '\''],
+ ['\"', '\"'],
+ ['\\[', ']'],
+ ['\\{', '{'],
+ ['C', 'ۓ'],
+ ['l', 'ی'],
+ ['L', 'ي'],
+ ['o', 'ج'],
+ ['O', 'چ'],
+ ['v', 'س'],
+ ['h', 'ہ'],
+ ['H', 'ء'],
+ ['y', 'پ'],
+ ['Y', '\u0651\u00AD'],
+ ['c', 'ے'],
+ /* Arabic question mark */ ['\\?','؟'],
+ ['j', 'ا'],
+ ['n', 'غ'],
+ ['N', 'ئ'],
+ ['b', 'ش'],
+ ['\\<', '','>'],
+ ['m', 'ع'],
+ ['u', 'ت'],
+ ['\\]', '','['],
+ ['e', 'ھ'],
+ ['f', 'ن'],
+ ['r', 'د'],
+ ['g', 'ل'],
+ ['t', 'ٹ'],
+ ['\\=', '','='],
+ ['\\\\', '\\'],
+ ['s', 'و'],
+ ['w', 'ص'],
+ ['a', 'م'],
+ ['q', 'ط'],
+ ['d', 'ر'],
+ ['\\|', '|'],
+ ['/', '/'],
+ ['\\>', '<'],
+ ['0', '0'],
+ ['1', '1'],
+ ['2', '2'],
+ ['3', '3'],
+ ['4', '4'],
+ ['5', '5'],
+ ['6', '6'],
+ ['7', '7'],
+ ['8', '8'],
+ ['9', '9'],
+ ['\\@', '@'],
+ ['\\#', '','#'],
+ ['\\$', '','$'],
+ ['\\%', '','٪'],
+ ['\\^', '','^'],
+ ['\\&', 'ۖ'],
+ /* Arabic star */ ['\\*', '٭'],
+ ['\\(', '('],
+ ['\\)', ')']]
+ };
+
+ $.ime.register( urTransliteration );
+}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/uz/uz-kbd.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/uz/uz-kbd.js
new file mode 100644
index 00000000..f480eeb3
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/uz/uz-kbd.js
@@ -0,0 +1,102 @@
+( function ( $ ) {
+ 'use strict';
+
+ var uzKbd = {
+ id: 'uz-kbd',
+ name: 'Uzbek keyboard',
+ description: 'Uzbek input method with Russian keyboard layout',
+ date: '2013-02-12',
+ URL: 'http://github.com/wikimedia/jquery.ime',
+ author: 'Parag Nemade',
+ license: 'GPLv3',
+ version: '1.0',
+ patterns: [
+ ['`', 'ё'],
+ ['q', 'й'],
+ ['w', 'ц'],
+ ['e', 'у'],
+ ['r', 'к'],
+ ['t', 'е'],
+ ['y', 'н'],
+ ['u', 'г'],
+ ['i', 'ш'],
+ ['o', 'ў'],
+ ['p', 'з'],
+ ['\\[', 'х'],
+ ['\\]', 'ъ'],
+ ['a', 'ф'],
+ ['s', 'қ'],
+ ['d', 'в'],
+ ['f', 'а'],
+ ['g', 'п'],
+ ['h', 'р'],
+ ['j', 'о'],
+ ['k', 'л'],
+ ['l', 'д'],
+ [';', 'ж'],
+ ['\'', 'э'],
+ ['\\\\', '\\'],
+ ['z', 'я'],
+ ['x', 'ч'],
+ ['c', 'с'],
+ ['v', 'м'],
+ ['b', 'и'],
+ ['n', 'т'],
+ ['m', 'ь'],
+ [',', 'б'],
+ ['\\.', 'ю'],
+ ['/', '.'],
+ ['\\!', '!'],
+ ['\\@', '\"'],
+ ['\\#', '№'],
+ ['\\$', ';'],
+ ['\\%', '%'],
+ ['\\^', ':'],
+ ['\\&', '?'],
+ ['\\*', '*'],
+ ['\\(', '('],
+ ['\\)', ')'],
+ ['\\-', 'ғ'],
+ ['\\_', 'Ғ'],
+ ['\\=', 'ҳ'],
+ ['\\+', 'Ҳ'],
+ ['\\~', 'Ё'],
+ ['Q', 'Й'],
+ ['W', 'Ц'],
+ ['E', 'У'],
+ ['R', 'К'],
+ ['T', 'Е'],
+ ['Y', 'Н'],
+ ['U', 'Г'],
+ ['I', 'Ш'],
+ ['O', 'Ў'],
+ ['P', 'З'],
+ ['\\{', 'Х'],
+ ['\\}', 'Ъ'],
+ ['A', 'Ф'],
+ ['S', 'Қ'],
+ ['D', 'В'],
+ ['F', 'А'],
+ ['G', 'П'],
+ ['H', 'Р'],
+ ['J', 'О'],
+ ['K', 'Л'],
+ ['L', 'Д'],
+ [':', 'Ж'],
+ ['\"', 'Э'],
+ ['\\|', '|'],
+ ['Z', 'Я'],
+ ['X', 'Ч'],
+ ['C', 'С'],
+ ['V', 'М'],
+ ['B', 'И'],
+ ['N', 'Т'],
+ ['M', 'Ь'],
+ ['\\<', 'Б'],
+ ['\\>', 'Ю'],
+ ['\\?', ',']
+ ]
+ };
+ $.ime.register( uzKbd );
+
+}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/vec/vec-GVU.js b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/vec/vec-GVU.js
new file mode 100644
index 00000000..b9b55279
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.ime/rules/vec/vec-GVU.js
@@ -0,0 +1,32 @@
+( function ( $ ) {
+ 'use strict';
+
+ var vec = {
+ id: 'vec-GVU',
+ name: 'Venetian GVU',
+ description: 'Venetian input method.',
+ date: '2013-08-06',
+ URL: 'http://github.com/wikimedia/jquery.ime',
+ author: 'Vec.wiki community',
+ license: 'GPLv3',
+ version: '1.0',
+ patterns: [
+ ['dh', 'đ'],
+ ['lh', 'ƚ'],
+ ['òò', 'ó'],
+ ['zh', 'ẑ'],
+ ['đh', 'dh'],
+ ['ƚh', 'lh'],
+ ['ẑh', 'zh'],
+ ['Dh', 'Đ'],
+ ['Lh', 'Ƚ'],
+ ['Òò', 'Ó'],
+ ['Zh', 'Ẑ'],
+ ['Đh', 'Dh'],
+ ['Ƚh', 'Lh'],
+ ['Ẑh', 'Zh']
+ ]
+ };
+
+ $.ime.register( vec );
+}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/css/jquery.uls.compact.css b/MLEB/UniversalLanguageSelector/lib/jquery.uls/css/jquery.uls.compact.css
new file mode 100644
index 00000000..f5e6e07e
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/css/jquery.uls.compact.css
@@ -0,0 +1,75 @@
+.uls-compact .uls-icon-close,
+.uls-compact .uls-title-region,
+.uls-compact .uls-map-block,
+.uls-compact #uls-settings-block {
+ display: none !important;
+}
+
+.uls-compact.uls-menu {
+ border-radius: 0;
+}
+
+.uls-compact .uls-search {
+ background: white;
+ border-top: none;
+ padding: 0.8em 0;
+ border-bottom-width: 1px;
+ border-bottom-style: solid;
+ border-bottom-color: #DDD;
+}
+
+.uls-compact .uls-filterinput,
+.uls-compact .uls-filterinput:focus {
+ background-color: transparent;
+ border: none;
+ box-shadow: none;
+ outline: none;
+ font-size: 18px;
+ left: 0;
+}
+
+.uls-compact .uls-language-list {
+ background: #FCFCFC;
+ height: 20em;
+}
+
+.uls-compact .uls-search-label {
+ background-size: 25px;
+ height: 26px;
+ width: 26px;
+ float: right;
+ opacity: 0.8;
+}
+
+.uls-compact .uls-languagefilter-clear {
+ margin-left: 0;
+}
+
+.uls-compact .uls-title-region a {
+ color: #777;
+ display: inline-block;
+ margin: 15px 0 5px 19px;
+ cursor: pointer;
+ padding: 6px;
+ text-decoration: none;
+ font-size: 14px;
+ border: 1px solid transparent;
+}
+
+.uls-compact .uls-title-region a:hover {
+ color: #252525;
+ background: #F0F0F0;
+ border: 1px solid #DDD;
+ border-radius: 3px;
+}
+
+.uls-compact .uls-title-region a:before {
+ display: inline-block;
+ width: 0;
+ height: 0;
+ border-right: 4px solid #777;
+ border-top: 4px solid transparent;
+ border-bottom: 4px solid transparent;
+ content: "";
+ margin: 0 6px 0 0;
+}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/css/jquery.uls.css b/MLEB/UniversalLanguageSelector/lib/jquery.uls/css/jquery.uls.css
new file mode 100644
index 00000000..4e80c6bf
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/css/jquery.uls.css
@@ -0,0 +1,260 @@
+.uls-trigger {
+ /* @embed */
+ background: transparent url('../images/icon-language.png') no-repeat scroll left center;
+ /* @embed */
+ background-image: -webkit-linear-gradient(transparent, transparent), url('../images/icon-language.svg');
+ /* @embed */
+ background-image: linear-gradient(transparent, transparent), url('../images/icon-language.svg');
+ padding-left: 30px;
+}
+
+.uls-menu {
+ position: absolute;
+ z-index: 1000;
+ display: none;
+ margin-top: 1px;
+ /* Styling */
+ background-color: #ffffff;
+ border: 1px solid #ccc;
+ border: 1px solid rgba(0, 0, 0, 0.2);
+ border-radius: 5px;
+ -webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);
+ -moz-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);
+ box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);
+ -webkit-background-clip: padding-box;
+ -moz-background-clip: padding;
+ background-clip: padding-box;
+}
+
+.uls-wide {
+ min-width: 715px;
+ width: 45%;
+}
+
+.uls-title-region a {
+ padding-left: 15px;
+}
+
+.uls-menu .uls-title {
+ font-weight: normal;
+ border: none;
+ padding-top: 1.25em;
+ padding-left: 15px;
+ padding-bottom: 3px;
+ font-size: 18pt;
+ line-height: 1.25em;
+ color: #555;
+}
+
+.uls-menu .uls-no-results-found-title {
+ font-size: 16pt;
+ font-weight: bold;
+ line-height: 1.5em;
+ padding-left: 6px;
+ padding-top: 10px;
+ margin-top: 0;
+ margin-bottom: 15px;
+ border-bottom: none;
+ color: #555;
+}
+
+.uls-menu .uls-lcd-region-section .uls-lcd-region-title {
+ color: #777;
+ font-size: 14pt;
+ font-weight: lighter;
+ line-height: 1.5em;
+ padding-left: 0;
+ margin-top: 0;
+ margin-bottom: 10px;
+ border-bottom: none;
+}
+
+.uls-worldmap {
+ /* @embed */
+ background: transparent url('../images/world_map.png') no-repeat scroll right top;
+ /* @embed */
+ background-image: -webkit-linear-gradient(transparent, transparent), url('../images/world_map.svg');
+ /* @embed */
+ background-image: linear-gradient(transparent, transparent), url('../images/world_map.svg');
+ background-size: 100%;
+}
+
+div.uls-region {
+ cursor: pointer;
+ padding: 0;
+ margin: 0;
+ height: 120px;
+ border-bottom-color: transparent;
+ border-bottom-style: solid;
+ border-bottom-width: 2px;
+}
+
+.uls-worldmap .uls-region { /* The map doesn't flip */
+ /* @noflip */
+ float: left;
+}
+
+.uls-region a {
+ bottom: 2px;
+ left: 2px;
+ padding: 0;
+ position: absolute;
+ font-size: 13px;
+ line-height: 1.2em;
+ text-decoration: none;
+ overflow: hidden;
+ text-overflow: ellipsis;
+ width: 99%;
+}
+
+.uls-region:hover {
+ /*Cross-browser background transparency*/
+ background: #3366bb;
+ background: rgba(51, 102, 187, 0.1);
+ filter: progid:DXImageTransform.Microsoft.gradient(startColorstr=#253366bb, endColorstr=#253366bb );
+ -ms-filter: "progid:DXImageTransform.Microsoft.gradient(startColorstr=#253366bb, endColorstr=#253366bb)";
+}
+
+.uls-map-block .active {
+ border-bottom-color: #3366bb;
+ border-bottom-style: solid;
+}
+
+.uls-menu .row .uls-map-block {
+ top: 1px;
+ margin-right: 0;
+ padding-right: 0;
+ float: right;
+ overflow: hidden;
+ opacity: 0.7;
+ -moz-transition: opacity 0.2s linear;
+ -o-transition: opacity 0.2s linear;
+ -webkit-transition: opacity 0.2s linear;
+ transition: opacity 0.2s linear;
+}
+
+.uls-map-block a {
+ color: #333;
+ opacity: 0;
+ -moz-transition: opacity 0.15s linear;
+ -o-transition: opacity 0.15s linear;
+ -webkit-transition: opacity 0.15s linear;
+ transition: opacity 0.15s linear;
+}
+
+.uls-menu .uls-map-block:hover,
+.uls-menu .uls-map-block:hover a {
+ opacity: 1;
+ color: #333;
+}
+
+.uls-map-block .uls-region-1 {
+ border-color: transparent;
+}
+
+.uls-map-block:hover .active {
+ border-color: #3366bb;
+}
+
+.uls-map-block .active a {
+ font-weight: bold;
+}
+
+.uls-icon-close {
+ /* @embed */
+ background: transparent url('../images/close.png') no-repeat scroll center center;
+ /* @embed */
+ background-image: -webkit-linear-gradient(transparent, transparent), url('../images/close.svg');
+ /* @embed */
+ background-image: linear-gradient(transparent, transparent), url('../images/close.svg');
+ float: right;
+ padding: 15px;
+ cursor: pointer;
+}
+
+.uls-menu .uls-languagefilter {
+ background-color: transparent;
+ border: 1px solid #c9c9c9;
+ border-radius: 2px 2px 2px 2px;
+ box-shadow: 0 1px 2px rgba(0, 0, 0, 0.1) inset;
+ color: #333;
+ display: block;
+ padding: 6px;
+ -moz-transition: border 0.15s linear 0s;
+ -o-transition: border 0.15s linear 0s;
+ -webkit-transition: border 0.15s linear 0s;
+ transition: border 0.15s linear 0s;
+}
+
+.uls-menu .uls-languagefilter:focus {
+ border: 1px solid #3366bb;
+}
+
+.uls-menu .uls-search {
+ position: relative;
+ filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#F0F0F0', endColorstr='#FBFBFB');
+ background: #f8f8f8;
+ background: -webkit-gradient(linear, left top, left bottom, from(#F0F0F0), to(#FBFBFB));
+ background: -webkit-linear-gradient(top, #F0F0F0, #FBFBFB);
+ background: -moz-linear-gradient(top, #F0F0F0, #FBFBFB);
+ background: -o-linear-gradient(top, #F0F0F0, #FBFBFB);
+ background: linear-gradient(#F0F0F0, #FBFBFB);
+ border-top-color: #AAA;
+ border-top-style: solid;
+ border-top-width: 1px;
+ padding: 0.8em 0;
+ border-bottom-width: 1px;
+ border-bottom-style: solid;
+ border-bottom-color: #DDD;
+}
+
+.uls-menu .uls-search-label {
+ /* @embed */
+ background: transparent url('../images/search.png') no-repeat scroll right center;
+ /* @embed */
+ background-image: -webkit-linear-gradient(transparent, transparent), url('../images/search.svg');
+ /* @embed */
+ background-image: linear-gradient(transparent, transparent), url('../images/search.svg');
+ background-size: 30px;
+ height: 32px;
+ width: 32px;
+ float: right;
+}
+
+.uls-menu .uls-languagefilter-clear {
+ /* @embed */
+ background: transparent url('../images/clear.png') no-repeat scroll left center;
+ /* @embed */
+ background-image: -webkit-linear-gradient(transparent, transparent), url('../images/clear.svg');
+ /* @embed */
+ background-image: linear-gradient(transparent, transparent), url('../images/clear.svg');
+ cursor: pointer;
+ height: 32px;
+ position: absolute;
+ width: 32px;
+ margin-left: -32px;
+}
+
+.uls-menu .uls-filterinput {
+ position: absolute;
+ top: 0;
+ left: 0;
+ font-size: 14px;
+ height: 32px;
+ width: 100%;
+ text-align: left;
+}
+
+.uls-menu .uls-filtersuggestion {
+ padding: 6px;
+ background-color: white;
+ color: #888;
+ border: 1px transparent;
+ border-radius: 2px 2px 2px 2px;
+ box-shadow: 0 1px 2px transparent inset;
+ left: 1px;
+}
+
+.uls-menu .uls-search-input-block {
+ position: relative;
+}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/css/jquery.uls.grid.css b/MLEB/UniversalLanguageSelector/lib/jquery.uls/css/jquery.uls.grid.css
new file mode 100644
index 00000000..9caf088c
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/css/jquery.uls.grid.css
@@ -0,0 +1,315 @@
+/* Generated using Foundation http://foundation.zurb.com/docs/grid.php */
+/* Global Reset & Standards ---------------------- */
+.grid * {
+ -webkit-box-sizing: border-box;
+ -moz-box-sizing: border-box;
+ box-sizing: border-box;
+}
+
+/* Misc ---------------------- */
+.grid .left {
+ float: left;
+}
+
+.grid .right {
+ float: right;
+}
+
+.grid .text-left {
+ text-align: left;
+}
+
+.grid .text-right {
+ text-align: right;
+}
+
+.grid .text-center {
+ text-align: center;
+}
+
+.grid .hide {
+ display: none;
+}
+
+.grid .highlight {
+ background: #ffff99;
+}
+
+/* The Grid ---------------------- */
+.grid .row {
+ width: 100%;
+ max-width: none;
+ min-width: 600px;
+ margin: 0 auto;
+}
+
+.grid .row .row {
+ width: auto;
+ max-width: none;
+ min-width: 0;
+ margin: 0 -5px;
+}
+
+.grid .row.collapse .column,
+.grid .row.collapse .columns {
+ padding: 0;
+}
+
+.grid .row .row {
+ width: auto;
+ max-width: none;
+ min-width: 0;
+ margin: 0 -5px;
+}
+
+.grid .row .row.collapse {
+ margin: 0;
+}
+
+.grid .column, .grid .columns {
+ float: left;
+ min-height: 1px;
+ padding: 0 5px;
+ position: relative;
+}
+
+.grid .column.centered, .grid .columns.centered {
+ float: none;
+ margin: 0 auto;
+}
+
+.grid .row .one {
+ width: 8.333%;
+}
+
+.grid .row .two {
+ width: 16.667%;
+}
+
+.grid .row .three {
+ width: 25%;
+}
+
+.grid .row .four {
+ width: 33.333%;
+}
+
+.grid .row .five {
+ width: 41.667%;
+}
+
+.grid .row .six {
+ width: 50%;
+}
+
+.grid .row .seven {
+ width: 58.333%;
+}
+
+.grid .row .eight {
+ width: 66.667%;
+}
+
+.grid .row .nine {
+ width: 75%;
+}
+
+.grid .row .ten {
+ width: 83.333%;
+}
+
+.grid .row .eleven {
+ width: 91.667%;
+}
+
+.grid .row .twelve {
+ width: 100%;
+}
+
+.grid .row .offset-by-one {
+ margin-left: 8.333%;
+}
+
+.grid .row .offset-by-two {
+ margin-left: 16.667%;
+}
+
+.grid .row .offset-by-three {
+ margin-left: 25%;
+}
+
+.grid .row .offset-by-four {
+ margin-left: 33.333%;
+}
+
+.grid .row .offset-by-five {
+ margin-left: 41.667%;
+}
+
+.grid .row .offset-by-six {
+ margin-left: 50%;
+}
+
+.grid .row .offset-by-seven {
+ margin-left: 58.333%;
+}
+
+.grid .row .offset-by-eight {
+ margin-left: 66.667%;
+}
+
+.grid .row .offset-by-nine {
+ margin-left: 75%;
+}
+
+.grid .row .offset-by-ten {
+ margin-left: 83.333%;
+}
+
+.grid .push-two {
+ left: 16.667%;
+}
+
+.grid .pull-two {
+ right: 16.667%;
+}
+
+.grid .push-three {
+ left: 25%;
+}
+
+.grid .pull-three {
+ right: 25%;
+}
+
+.grid .push-four {
+ left: 33.333%;
+}
+
+.grid .pull-four {
+ right: 33.333%;
+}
+
+.grid .push-five {
+ left: 41.667%;
+}
+
+.grid .pull-five {
+ right: 41.667%;
+}
+
+.grid .push-six {
+ left: 50%;
+}
+
+.grid .pull-six {
+ right: 50%;
+}
+
+.grid .push-seven {
+ left: 58.333%;
+}
+
+.grid .pull-seven {
+ right: 58.333%;
+}
+
+.grid .push-eight {
+ left: 66.667%;
+}
+
+.grid .pull-eight {
+ right: 66.667%;
+}
+
+.grid .push-nine {
+ left: 75%;
+}
+
+.grid .pull-nine {
+ right: 75%;
+}
+
+.grid .push-ten {
+ left: 83.333%;
+}
+
+.grid .pull-ten {
+ right: 83.333%;
+}
+
+/* Nicolas Gallagher's micro clearfix */
+.grid .row {
+ *zoom: 1;
+}
+
+.grid .row:before, .grid .row:after {
+ content: "";
+ display: table;
+}
+
+.grid .row:after {
+ clear: both;
+}
+
+/* Block Grids ---------------------- */
+/* These are 2-up, 3-up, 4-up and 5-up ULs, suited
+ for repeating blocks of content. Add 'mobile' to
+ them to switch them just like the layout grid
+ (one item per line) on phones
+
+ For IE7/8 compatibility block-grid items need to be
+ the same height. You can optionally uncomment the
+ lines below to support arbitrary height, but know
+ that IE7/8 do not support :nth-child.
+ -------------------------------------------------- */
+.grid .block-grid {
+ display: block;
+ overflow: hidden;
+ padding: 0;
+}
+
+.grid .block-grid > li {
+ display: block;
+ height: auto;
+ float: left;
+}
+
+.grid .block-grid.two-up {
+ margin: 0 -15px;
+}
+
+.grid .block-grid.two-up > li {
+ width: 50%;
+ padding: 0 15px 15px;
+}
+
+/* .block-grid.two-up>li:nth-child(2n+1) {clear: left;} */
+.grid .block-grid.three-up {
+ margin: 0 -12px;
+}
+
+.grid .block-grid.three-up > li {
+ width: 33.33%;
+ padding: 0 12px 12px;
+}
+
+/* .block-grid.three-up>li:nth-child(3n+1) {clear: left;} */
+.grid .block-grid.four-up {
+ margin: 0 -10px;
+}
+
+.grid .block-grid.four-up > li {
+ width: 25%;
+ padding: 0 10px 10px;
+}
+
+/* .block-grid.four-up>li:nth-child(4n+1) {clear: left;} */
+.grid .block-grid.five-up {
+ margin: 0 -8px;
+}
+
+.grid .block-grid.five-up > li {
+ width: 20%;
+ padding: 0 8px 8px;
+}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/css/jquery.uls.lcd.css b/MLEB/UniversalLanguageSelector/lib/jquery.uls/css/jquery.uls.lcd.css
new file mode 100644
index 00000000..becfb6d6
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/css/jquery.uls.lcd.css
@@ -0,0 +1,86 @@
+.uls-lcd-region-section ul li:hover {
+ background-color: #eaeff7;
+}
+
+.uls-lcd-region-section {
+ margin-top: 10px;
+}
+
+/* Language list */
+.uls-language-list {
+ height: 17em;
+ overflow: auto;
+ width: auto;
+}
+
+.uls-language-block ul {
+ margin: 0 0 1.5em;
+}
+
+.uls-language-list ul li {
+ cursor: pointer;
+ font-weight: normal;
+ overflow: hidden;
+ white-space: nowrap;
+
+ /*
+ * Some languages have long names for various reasons and we still want
+ * them to appear on one line.
+ * To make it work correctly, the directionality must be set correctly
+ * on the item level.
+ */
+ text-overflow: ellipsis;
+
+ /*
+ * The directionality (ltr/rtl) for each list item is set dynamically
+ * as HTML attributes in JavaScript. Setting directionality also applies
+ * alignment, but a list with mixed alignment is hard to read.
+ * All items are therefore explicitly aligned to the left, including names
+ * of right-to-left languages in left-to-right environment and vice versa.
+ * As long as the directionality of the item is set correctly, the text
+ * is readable.
+ */
+ text-align: left;
+
+ /*
+ * We don't want any visible bullets in this list.
+ */
+ list-style-image: none;
+ list-style-type: none;
+}
+
+.uls-language-list strong {
+ text-decoration: underline;
+}
+
+.uls-language-list a {
+ font-weight: normal;
+ text-decoration: none;
+ color: #3366bb;
+ font-size: 14px;
+ line-height: 1.6em;
+}
+
+.uls-language-block {
+ width: 100%;
+}
+
+.uls-no-results-view {
+ color: #555;
+ height: 100%;
+}
+
+.uls-no-found-more {
+ font-size: 0.9em;
+ background: #F8F8F8;
+ width: 100%;
+ margin-top: 1.6em;
+ line-height: 1.6em;
+ position: absolute;
+ bottom: 0;
+ left: 0;
+}
+
+.uls-no-found-more a {
+ cursor: pointer;
+}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/css/jquery.uls.mobile.css b/MLEB/UniversalLanguageSelector/lib/jquery.uls/css/jquery.uls.mobile.css
new file mode 100644
index 00000000..5d3e06e0
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/css/jquery.uls.mobile.css
@@ -0,0 +1,319 @@
+@media only screen and (max-width: 767px) {
+
+ .uls-mobile.uls-menu {
+ width: 95%;
+ left: 2.5%;
+ }
+
+ .uls-mobile .uls-language-list {
+ -webkit-overflow-scrolling: touch;
+ }
+
+ .uls-mobile .uls-language-block {
+ padding-left: 15px !important;
+ }
+
+ .uls-mobile .uls-language-block ul {
+ min-height: 14em;
+ }
+
+ .uls-mobile .uls-language-block a {
+ font-size: 16px;
+ line-height: 1.7em;
+ }
+
+ .uls-mobile div.uls-region {
+ width: 33% !important;
+ float: left !important;
+ }
+
+ .uls-mobile .uls-map-block a,
+ .uls-mobile .uls-map-block {
+ opacity: 1 !important;
+ }
+
+ .uls-mobile .row {
+ width: auto;
+ min-width: 0;
+ margin-left: 0;
+ margin-right: 0;
+ }
+
+ .uls-mobile .column,
+ .uls-mobile .columns {
+ width: auto !important;
+ float: none;
+ }
+
+ .uls-mobile .column:last-child,
+ .uls-mobile .columns:last-child {
+ float: none;
+ }
+
+ .uls-mobile [class*="column"] + [class*="column"]:last-child {
+ float: none;
+ }
+
+ .uls-mobile .column:before,
+ .uls-mobile .uls-mobile .columns:before,
+ .uls-mobile .column:after,
+ .columns:after {
+ content: "";
+ display: table;
+ }
+
+ .uls-mobile .column:after,
+ .uls-mobile .columns:after {
+ clear: both;
+ }
+
+ .uls-mobile .offset-by-one,
+ .uls-mobile .offset-by-two,
+ .uls-mobile .offset-by-three,
+ .uls-mobile .offset-by-four,
+ .uls-mobile .offset-by-five,
+ .uls-mobile .offset-by-six,
+ .uls-mobile .offset-by-seven,
+ .uls-mobile .offset-by-eight,
+ .uls-mobile .offset-by-nine,
+ .uls-mobile .offset-by-ten {
+ margin-left: 0 !important;
+ }
+
+ .uls-mobile .push-two,
+ .uls-mobile .push-three,
+ .uls-mobile .push-four,
+ .uls-mobile .push-five,
+ .uls-mobile .push-six,
+ .uls-mobile .push-seven,
+ .uls-mobile .push-eight,
+ .uls-mobile .push-nine,
+ .uls-mobile .push-ten {
+ left: auto;
+ }
+
+ .uls-mobile .pull-two,
+ .uls-mobile .pull-three,
+ .uls-mobile .pull-four,
+ .uls-mobile .pull-five,
+ .uls-mobile .pull-six,
+ .uls-mobile .pull-seven,
+ .uls-mobile .pull-eight,
+ .uls-mobile .pull-nine,
+ .uls-mobile .pull-ten {
+ right: auto;
+ }
+
+ /* Mobile 4-column Grid */
+ .uls-mobile .row .mobile-one {
+ width: 25% !important;
+ float: left;
+ padding: 0 4px;
+ }
+
+ .uls-mobile .row .mobile-one:last-child {
+ float: right;
+ }
+
+ .uls-mobile .row.collapse .mobile-one {
+ padding: 0;
+ }
+
+ .uls-mobile .row .mobile-two {
+ width: 50% !important;
+ float: left;
+ padding: 0 4px;
+ }
+
+ .uls-mobile .row .mobile-two:last-child {
+ float: right;
+ }
+
+ .uls-mobile .row.collapse .mobile-two {
+ padding: 0;
+ }
+
+ .uls-mobile .row .mobile-three {
+ width: 75% !important;
+ float: left;
+ padding: 0 4px;
+ }
+
+ .uls-mobile .row .mobile-three:last-child {
+ float: right;
+ }
+
+ .uls-mobile .row.collapse .mobile-three {
+ padding: 0;
+ }
+
+ .uls-mobile .row .mobile-four {
+ width: 100% !important;
+ float: left;
+ padding: 0 4px;
+ }
+
+ .uls-mobile .row .mobile-four:last-child {
+ float: right;
+ }
+
+ .uls-mobile .row.collapse .mobile-four {
+ padding: 0;
+ }
+
+ .uls-mobile .push-one-mobile {
+ left: 25%;
+ }
+
+ .uls-mobile .pull-one-mobile {
+ right: 25%;
+ }
+
+ .uls-mobile .push-two-mobile {
+ left: 50%;
+ }
+
+ .uls-mobile .pull-two-mobile {
+ right: 50%;
+ }
+
+ .uls-mobile .push-three-mobile {
+ left: 75%;
+ }
+
+ .uls-mobile .pull-three-mobile {
+ right: 75%;
+ }
+}
+
+/* Visibility Classes ---------------------- */
+/* Standard (large) display targeting */
+.uls-mobile .show-for-small,
+.uls-mobile .show-for-medium,
+.uls-mobile .show-for-medium-down,
+.uls-mobile .hide-for-large,
+.uls-mobile .hide-for-large-up,
+.uls-mobile .show-for-xlarge {
+ display: none !important;
+}
+
+.uls-mobile .hide-for-xlarge,
+.uls-mobile .show-for-large,
+.uls-mobile .show-for-large-up,
+.uls-mobile .hide-for-small,
+.uls-mobile .hide-for-medium,
+.uls-mobile .hide-for-medium-down {
+ display: block !important;
+}
+
+/* Very large display targeting */
+@media only screen and (min-width: 1441px) {
+
+ .uls-mobile .hide-for-small,
+ .uls-mobile .hide-for-medium,
+ .uls-mobile .hide-for-medium-down,
+ .hide-for-large, .show-for-large-up,
+ .show-for-xlarge {
+ display: block !important;
+ }
+
+ .show-for-small,
+ .uls-mobile .show-for-medium,
+ .uls-mobile .show-for-medium-down,
+ .uls-mobile .show-for-large,
+ .uls-mobile .hide-for-large-up,
+ .uls-mobile .hide-for-xlarge {
+ display: none !important;
+ }
+}
+/* Medium display targeting */
+@media only screen and (max-width: 1279px) and (min-width: 768px) {
+
+ .uls-mobile .hide-for-small,
+ .uls-mobile .show-for-medium,
+ .uls-mobile .show-for-medium-down,
+ .uls-mobile .hide-for-large,
+ .uls-mobile .hide-for-large-up,
+ .uls-mobile .hide-for-xlarge {
+ display: block !important;
+ }
+
+ .uls-mobile .show-for-small,
+ .uls-mobile .hide-for-medium,
+ .uls-mobile .hide-for-medium-down,
+ .uls-mobile .show-for-large,
+ .uls-mobile .show-for-large-up,
+ .uls-mobile .show-for-xlarge {
+ display: none !important;
+ }
+}
+/* Small display targeting */
+@media only screen and (max-width: 767px) {
+
+ .uls-mobile .show-for-small,
+ .uls-mobile .hide-for-medium,
+ .uls-mobile .show-for-medium-down,
+ .uls-mobile .hide-for-large,
+ .uls-mobile .hide-for-large-up,
+ .uls-mobile .hide-for-xlarge {
+ display: block !important;
+ }
+ .uls-mobile .hide-for-small,
+ .uls-mobile .show-for-medium,
+ .uls-mobile .hide-for-medium-down,
+ .uls-mobile .show-for-large,
+ .uls-mobile .show-for-large-up,
+ .uls-mobile .show-for-xlarge {
+ display: none !important;
+ }
+}
+
+/* Orientation targeting */
+.uls-mobile .show-for-landscape,
+.uls-mobile .hide-for-portrait {
+ display: block !important;
+}
+
+.uls-mobile .hide-for-landscape,
+.uls-mobile .show-for-portrait {
+ display: none !important;
+}
+
+@media screen and (orientation: landscape) {
+ .uls-mobile .show-for-landscape,
+ .uls-mobile .hide-for-portrait {
+ display: block !important;
+ }
+ .uls-mobile .hide-for-landscape,
+ .uls-mobile .show-for-portrait {
+ display: none !important;
+ }
+}
+
+@media screen and (orientation: portrait) {
+ .uls-mobile .show-for-portrait,
+ .uls-mobile .hide-for-landscape {
+ display: block !important;
+ }
+ .uls-mobile .hide-for-portrait,
+ .uls-mobile .show-for-landscape {
+ display: none !important;
+ }
+}
+
+/* Touch-enabled device targeting */
+.uls-mobile .show-for-touch {
+ display: none !important;
+}
+
+.uls-mobile .hide-for-touch {
+ display: block !important;
+}
+
+.uls-mobile .touch .show-for-touch {
+ display: block !important;
+}
+
+.uls-mobile .touch .hide-for-touch {
+ display: none !important;
+}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/af.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/af.json
new file mode 100644
index 00000000..da7dd24a
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/af.json
@@ -0,0 +1,21 @@
+{
+ "@metadata": {
+ "authors": [
+ "Naudefj"
+ ]
+ },
+ "uls-select-language": "Kies taal",
+ "uls-region-WW": "Wêreldwyd",
+ "uls-region-SP": "Spesiaal",
+ "uls-region-AM": "Amerika",
+ "uls-region-AF": "Afrika",
+ "uls-region-EU": "Europa",
+ "uls-region-AS": "Asië",
+ "uls-region-ME": "Middel-Ooste",
+ "uls-region-PA": "Pasifiese gebied",
+ "uls-no-results-found": "Geen resultate gevind nie",
+ "uls-common-languages": "Taalvoorstelle",
+ "uls-no-results-suggestion-title": "U mag geïnteresseerd wees in:",
+ "uls-search-help": "U kan soek volgens taalnaam, skrifnaam, ISO-kode van die taal of u kan per streek deurblaai:",
+ "uls-search-placeholder": "Soek taal"
+}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/am.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/am.json
new file mode 100644
index 00000000..72543991
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/am.json
@@ -0,0 +1,18 @@
+{
+ "@metadata": {
+ "authors": [
+ "Elfalem"
+ ]
+ },
+ "uls-select-language": "ቋንቋ መምረጫ",
+ "uls-region-WW": "ዓለም አቀፍ",
+ "uls-region-SP": "ልዩ",
+ "uls-region-AM": "አሜሪካ",
+ "uls-region-AF": "አፍሪካ",
+ "uls-region-EU": "አውሮፓ",
+ "uls-region-AS": " እስያ",
+ "uls-region-ME": "መካከለኛው ምሥራቅ",
+ "uls-region-PA": "ፓሲፊክ",
+ "uls-search-help": "በቋንቋ ስም፣ የአፃፃፍ ሥርዓት ስም፣ አይ.ኤስ.ኦ. (ISO) ኮድ መፈለግ ይቻላል ወይም በአካባቢ መቃኘት ይቻላል፦",
+ "uls-search-placeholder": "ቋንቋ ፍለጋ"
+}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ar.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ar.json
new file mode 100644
index 00000000..3e8acbf5
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ar.json
@@ -0,0 +1,23 @@
+{
+ "@metadata": {
+ "authors": [
+ "Amire80",
+ "DRIHEM",
+ "ترجمان05"
+ ]
+ },
+ "uls-select-language": "حدد اللغة",
+ "uls-region-WW": "في جميع أنحاء العالم",
+ "uls-region-SP": "الخاصة",
+ "uls-region-AM": "أمريكا",
+ "uls-region-AF": "أفريقيا",
+ "uls-region-EU": "أوروبا",
+ "uls-region-AS": "آسيا",
+ "uls-region-ME": "الشرق الأوسط",
+ "uls-region-PA": "المحيط الهادئ",
+ "uls-no-results-found": "لم يتم العثور على نتائج",
+ "uls-common-languages": "لغات مشتركة",
+ "uls-no-results-suggestion-title": "قد تكون مهتم في:",
+ "uls-search-help": "يمكنك البحث بواسطة اسم اللغة, اسم السكريبت, رمز اللغة القياسي أو يمكنك تصفح حسب المنطقة:",
+ "uls-search-placeholder": "بحث عن لغة"
+}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/as.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/as.json
new file mode 100644
index 00000000..4d7a2d40
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/as.json
@@ -0,0 +1,20 @@
+{
+ "@metadata": {
+ "authors": [
+ "Nilamdyuti"
+ ]
+ },
+ "uls-select-language": "ভাষা নির্বাচন:",
+ "uls-region-WW": "বিশ্বব্যাপী",
+ "uls-region-AM": "আমেৰিকা",
+ "uls-region-AF": "আফ্ৰিকা",
+ "uls-region-EU": "ইউৰোপ",
+ "uls-region-AS": "এছিয়া",
+ "uls-region-ME": "মধ্যপ্রাচ্য",
+ "uls-region-PA": "পেচিফিক",
+ "uls-no-results-found": "কোনো ফলাফল পোৱা নগ'ল",
+ "uls-common-languages": "সাধাৰণ ভাষাসমূহ",
+ "uls-no-results-suggestion-title": "আপুনি আগ্ৰহী হ'ব পাৰে:",
+ "uls-search-help": "আপুনি ভাষাৰ নাম, স্ক্ৰিপ্টৰ নাম, ভাষাৰ ISO ক'ড সাপেক্ষে সন্ধান কৰিব পাৰে অথবা অঞ্চল সাপেক্ষে ব্ৰাউছ কৰিব পাৰে।",
+ "uls-search-placeholder": "ভাষা সন্ধান"
+}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ast.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ast.json
new file mode 100644
index 00000000..112df721
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ast.json
@@ -0,0 +1,21 @@
+{
+ "@metadata": {
+ "authors": [
+ "Xuacu"
+ ]
+ },
+ "uls-select-language": "Escueyi llingua",
+ "uls-region-WW": "Mundial",
+ "uls-region-SP": "Especiales",
+ "uls-region-AM": "América",
+ "uls-region-AF": "África",
+ "uls-region-EU": "Europa",
+ "uls-region-AS": "Asia",
+ "uls-region-ME": "Oriente mediu",
+ "uls-region-PA": "Pacíficu",
+ "uls-no-results-found": "Nun s'alcontraron resultaos",
+ "uls-common-languages": "Llingües comúnes",
+ "uls-no-results-suggestion-title": "Seique t'interese:",
+ "uls-search-help": "Pues buscar pol nome de la llingua, nome del alfabetu, códigu ISO de la llingua o ver un área xeográfica:",
+ "uls-search-placeholder": "Guetar llingua"
+}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/av.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/av.json
new file mode 100644
index 00000000..4e4152c1
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/av.json
@@ -0,0 +1,21 @@
+{
+ "@metadata": {
+ "authors": [
+ "Gazimagomedov"
+ ]
+ },
+ "uls-select-language": "МацӀ бищизе",
+ "uls-region-WW": "ГӀаламиял",
+ "uls-region-SP": "Хассал",
+ "uls-region-AM": "Америка",
+ "uls-region-AF": "Африка",
+ "uls-region-EU": "Европа",
+ "uls-region-AS": "Азия",
+ "uls-region-ME": "АскӀосаб Магъриб",
+ "uls-region-PA": "Океания",
+ "uls-no-results-found": "Щибниги жо батинчӀо",
+ "uls-common-languages": "Жалго жедедаго рищарал мацӀал",
+ "uls-no-results-suggestion-title": "Дур интерес гьал мацӀазда ккезе батила:",
+ "uls-search-help": "МацӀалъул яги хъвай-хъваялъул цӀаразда рекъон цӀехезе бегьула, яги мацӀалъул ISO-кодалда рекъон. Гьединго бегьула регион бищун балагьизе:",
+ "uls-search-placeholder": "МацӀ цӀехей"
+}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/az.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/az.json
new file mode 100644
index 00000000..2af3a75b
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/az.json
@@ -0,0 +1,22 @@
+{
+ "@metadata": {
+ "authors": [
+ "AZISS",
+ "Khan27"
+ ]
+ },
+ "uls-select-language": "Dili seçin:",
+ "uls-region-WW": "Ümumdünya",
+ "uls-region-SP": "Xüsusi",
+ "uls-region-AM": "Amerika",
+ "uls-region-AF": "Afrika",
+ "uls-region-EU": "Avropa",
+ "uls-region-AS": "Asiya",
+ "uls-region-ME": "Orta Şərq",
+ "uls-region-PA": "Okeaniya",
+ "uls-no-results-found": "Nəticələr tapılmadı",
+ "uls-common-languages": "Ümumi dillər",
+ "uls-no-results-suggestion-title": "Sizin üçün maraqlı ola bilər:",
+ "uls-search-help": "Dilin və ya yazının adları üzrə axtarmaq olar, dilin ISO-kodu üzrə və ya region üzrə gözdən keçirə bilərsiniz:",
+ "uls-search-placeholder": "Dil axtar"
+}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/azb.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/azb.json
new file mode 100644
index 00000000..7d4b00e2
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/azb.json
@@ -0,0 +1,22 @@
+{
+ "@metadata": {
+ "authors": [
+ "Arjanizary",
+ "Mousa"
+ ]
+ },
+ "uls-select-language": "دیل سئچمه‌سی",
+ "uls-region-WW": "دونیا بویو",
+ "uls-region-SP": "اؤزل",
+ "uls-region-AM": "آمریکا",
+ "uls-region-AF": "آفریقا",
+ "uls-region-EU": "اوروپا",
+ "uls-region-AS": "آسیا",
+ "uls-region-ME": "اورتادوغو",
+ "uls-region-PA": "بؤیوک اوقیانوس",
+ "uls-no-results-found": "هئچ سونوچ تاپیلمادی",
+ "uls-common-languages": "اورتاق دیل‌لر",
+ "uls-no-results-suggestion-title": "بونلارا ماراقلی اولابیلرسینیز:",
+ "uls-search-help": "سیز دیل آدی، یازی آدی، دیلین ISO کودو، یوخسا بؤلگه ایله آختارا بیلرسینیز:",
+ "uls-search-placeholder": "دیل آختاریشی"
+}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/bbc-latn.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/bbc-latn.json
new file mode 100644
index 00000000..149a2922
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/bbc-latn.json
@@ -0,0 +1,18 @@
+{
+ "@metadata": {
+ "authors": [
+ "Stephensuleeman"
+ ]
+ },
+ "uls-select-language": "Pillit hata",
+ "uls-region-WW": "Sude luat portibi on",
+ "uls-region-AM": "Amerika",
+ "uls-region-AF": "Afrika",
+ "uls-region-EU": "Eropa",
+ "uls-region-AS": "Asia",
+ "uls-region-ME": "Timur Tengah",
+ "uls-region-PA": "Pasifik",
+ "uls-no-results-found": "Ndang adong jumpang",
+ "uls-common-languages": "Hata na somal",
+ "uls-search-placeholder": "Mandiori hata"
+}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/bcc.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/bcc.json
new file mode 100644
index 00000000..00a78552
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/bcc.json
@@ -0,0 +1,21 @@
+{
+ "@metadata": {
+ "authors": [
+ "Baloch Afghanistan"
+ ]
+ },
+ "uls-select-language": "زبانی انتخاب",
+ "uls-region-WW": "بی سراسری دونیا",
+ "uls-region-SP": "ویژه",
+ "uls-region-AM": "آمریکا",
+ "uls-region-AF": "آفریقا",
+ "uls-region-EU": "اروپا",
+ "uls-region-AS": "آسیا",
+ "uls-region-ME": "خاورمیانه",
+ "uls-region-PA": "اقیانوس آرام",
+ "uls-no-results-found": "نتیجه‌ای یافت نشد",
+ "uls-common-languages": "زبان‌های رایج",
+ "uls-no-results-suggestion-title": "ممکن است علاقه‌مند باشید:",
+ "uls-search-help": "شما می‌توانید بر پایه نام زبان، نام اسکریپت، کد استاندارد زبان یا بر پایه منطقه جستجو کنید:",
+ "uls-search-placeholder": "جستجوی زبان"
+}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/be-tarask.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/be-tarask.json
new file mode 100644
index 00000000..48d172a5
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/be-tarask.json
@@ -0,0 +1,21 @@
+{
+ "@metadata": {
+ "authors": [
+ "Wizardist"
+ ]
+ },
+ "uls-select-language": "Выбар мовы",
+ "uls-region-WW": "Сусьветныя",
+ "uls-region-SP": "Дадатковыя",
+ "uls-region-AM": "Амэрыка",
+ "uls-region-AF": "Афрыка",
+ "uls-region-EU": "Эўропа",
+ "uls-region-AS": "Азія",
+ "uls-region-ME": "Блізкі Ўсход",
+ "uls-region-PA": "Акіянія",
+ "uls-no-results-found": "Нічога ня знойдзена",
+ "uls-common-languages": "Прапанаваныя мовы",
+ "uls-no-results-suggestion-title": "Магчыма, вас зацікавяць:",
+ "uls-search-help": "Вы можаце шукаць па назьве мовы ці пісьменнасьці, а таксама ISO-коду мовы, або выбраць рэгіён:",
+ "uls-search-placeholder": "Шукайце мову тут"
+}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/be.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/be.json
new file mode 100644
index 00000000..613ae259
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/be.json
@@ -0,0 +1,21 @@
+{
+ "@metadata": {
+ "authors": [
+ "Unomano"
+ ]
+ },
+ "uls-select-language": "Выберыце мову",
+ "uls-region-WW": "Па ўсім свеце",
+ "uls-region-SP": "Спецыяльныя",
+ "uls-region-AM": "Амерыка",
+ "uls-region-AF": "Афрыка",
+ "uls-region-EU": "Еўропа",
+ "uls-region-AS": "Азія",
+ "uls-region-ME": "Блізкі Ўсход",
+ "uls-region-PA": "Ціхі акіян",
+ "uls-no-results-found": "Нічога не знойдзена",
+ "uls-common-languages": "Распаўсюджаныя мовы",
+ "uls-no-results-suggestion-title": "Вы можаце быць зацікаўлены ў:",
+ "uls-search-help": "Вы можаце шукаць па мове, назве сцэнара, ISO-коду мовы, або вы можаце праглядаць па рэгіенах:",
+ "uls-search-placeholder": "Пошук мовы"
+}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/bg.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/bg.json
new file mode 100644
index 00000000..5e104a59
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/bg.json
@@ -0,0 +1,22 @@
+{
+ "@metadata": {
+ "authors": [
+ "Aquilax",
+ "DCLXVI"
+ ]
+ },
+ "uls-select-language": "Избор на език",
+ "uls-region-WW": "Световни",
+ "uls-region-SP": "Специални",
+ "uls-region-AM": "Америка",
+ "uls-region-AF": "Африка",
+ "uls-region-EU": "Европа",
+ "uls-region-AS": "Азия",
+ "uls-region-ME": "Близкия изток",
+ "uls-region-PA": "Тихия океан",
+ "uls-no-results-found": "Не бяха открити резултати",
+ "uls-common-languages": "Често срещани езици",
+ "uls-no-results-suggestion-title": "Можете да се интересувате от:",
+ "uls-search-help": "Можете да търсите по име на език, име на скрипт, ISO кода на език или можете да разглеждате по региони:",
+ "uls-search-placeholder": "Търсене на език"
+}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/bn.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/bn.json
new file mode 100644
index 00000000..1ab5e854
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/bn.json
@@ -0,0 +1,24 @@
+{
+ "@metadata": {
+ "authors": [
+ "Bellayet",
+ "Nasir8891",
+ "Sankarshan",
+ "Sayak Sarkar"
+ ]
+ },
+ "uls-select-language": "ভাষা নির্বাচন",
+ "uls-region-WW": "বিশ্বব্যাপী",
+ "uls-region-SP": "বিশেষ",
+ "uls-region-AM": "আমেরিকা",
+ "uls-region-AF": "আফ্রিকা",
+ "uls-region-EU": "ইউরোপ",
+ "uls-region-AS": "এশিয়া",
+ "uls-region-ME": "মধ্যপ্রাচ্য",
+ "uls-region-PA": "প্রশান্ত মহাসাগরীয়",
+ "uls-no-results-found": "কোনো ফলাফল পাওয়া যায়নি",
+ "uls-common-languages": "সাধারণ ভাষাসমূহ",
+ "uls-no-results-suggestion-title": "আপনি হয়তো আগ্রহী হতে পারেন:",
+ "uls-search-help": "আপনি ভাষার নাম, স্ক্রিপ্টের নাম, ভাষার আইএসও কোড অথবা এলাকার ভিত্তিক অনুসন্ধান করতে পারবেন:",
+ "uls-search-placeholder": "ভাষা অনুসন্ধান"
+}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/br.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/br.json
new file mode 100644
index 00000000..0198c2c6
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/br.json
@@ -0,0 +1,22 @@
+{
+ "@metadata": {
+ "authors": [
+ "Fulup",
+ "Gwenn-Ael"
+ ]
+ },
+ "uls-select-language": "Dibab ar yezh",
+ "uls-region-WW": "Bed a-bezh",
+ "uls-region-SP": "Dibar",
+ "uls-region-AM": "Amerika",
+ "uls-region-AF": "Afrika",
+ "uls-region-EU": "Europa",
+ "uls-region-AS": "Azia",
+ "uls-region-ME": "Reter-Kreiz",
+ "uls-region-PA": "Habask",
+ "uls-no-results-found": "N'eus bet kavet disoc'h ebet",
+ "uls-common-languages": "Yezhoù boutin",
+ "uls-no-results-suggestion-title": "Gallout a reot bezañ dedennet gant :",
+ "uls-search-help": "Gallout a reot klask dre anv yezh, anv skript, kod yezh ISO pe gallout a reot klask dre rannvro :",
+ "uls-search-placeholder": "Klask yezh"
+}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/bs.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/bs.json
new file mode 100644
index 00000000..7394218f
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/bs.json
@@ -0,0 +1,22 @@
+{
+ "@metadata": {
+ "authors": [
+ "DzWiki",
+ "Edinwiki"
+ ]
+ },
+ "uls-select-language": "Izaberite jezik",
+ "uls-region-WW": "Svjetski",
+ "uls-region-SP": "Posebno",
+ "uls-region-AM": "Amerika",
+ "uls-region-AF": "Afrika",
+ "uls-region-EU": "Evropa",
+ "uls-region-AS": "Azija",
+ "uls-region-ME": "Bliski istok",
+ "uls-region-PA": "Pacifik",
+ "uls-no-results-found": "Nema pronađenih rezultata",
+ "uls-common-languages": "Prijedlozi za jezik",
+ "uls-no-results-suggestion-title": "Možda vas interesuje:",
+ "uls-search-help": "Možete da tražite po imenu jezika ili pisma, po ISO kodu jezika ili po regionu:",
+ "uls-search-placeholder": "Pretraga jezika"
+}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/bto.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/bto.json
new file mode 100644
index 00000000..a3364d27
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/bto.json
@@ -0,0 +1,13 @@
+{
+ "@metadata": {
+ "authors": [
+ "Filipinayzd"
+ ]
+ },
+ "uls-region-AM": "Amerika",
+ "uls-region-AF": "Aprika",
+ "uls-region-EU": "Europa",
+ "uls-region-AS": "Asya",
+ "uls-region-PA": "Pasipiko",
+ "uls-no-results-found": "Uda naturakan na resulta"
+}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ca.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ca.json
new file mode 100644
index 00000000..6f29c0eb
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ca.json
@@ -0,0 +1,23 @@
+{
+ "@metadata": {
+ "authors": [
+ "Amire80",
+ "Pginer",
+ "Toniher"
+ ]
+ },
+ "uls-select-language": "Escolliu idioma",
+ "uls-region-WW": "Mundial",
+ "uls-region-SP": "Especials",
+ "uls-region-AM": "Amèrica",
+ "uls-region-AF": "Àfrica",
+ "uls-region-EU": "Europa",
+ "uls-region-AS": "Àsia",
+ "uls-region-ME": "Orient mitjà",
+ "uls-region-PA": "Pacífic",
+ "uls-no-results-found": "Cap resultat",
+ "uls-common-languages": "Llengües comunes",
+ "uls-no-results-suggestion-title": "Potser estiguis interessat en:",
+ "uls-search-help": "Pots cercar el nom de la llengua, el nom de l'escriptura, el codi ISO de la llengua o la seva regió:",
+ "uls-search-placeholder": "Cerca de llengua"
+}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ce.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ce.json
new file mode 100644
index 00000000..bc89502a
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ce.json
@@ -0,0 +1,14 @@
+{
+ "@metadata": {
+ "authors": [
+ "Умар"
+ ]
+ },
+ "uls-select-language": "Мотт харжар",
+ "uls-region-WW": "Дерригдуьненан",
+ "uls-region-AS": "Ази",
+ "uls-region-ME": "Гергара Малхбале",
+ "uls-region-PA": "Океани",
+ "uls-common-languages": "Ша дӀанисбелла меттанаш",
+ "uls-search-placeholder": "Лаха мотт"
+}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ckb.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ckb.json
new file mode 100644
index 00000000..379817fe
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ckb.json
@@ -0,0 +1,21 @@
+{
+ "@metadata": {
+ "authors": [
+ "Calak"
+ ]
+ },
+ "uls-select-language": "زمان ھەڵبژێرە",
+ "uls-region-WW": "لە گشت جیھاندا",
+ "uls-region-SP": "تایبەت",
+ "uls-region-AM": "ئەمریکا",
+ "uls-region-AF": "ئەفریقا",
+ "uls-region-EU": "ئەورووپا",
+ "uls-region-AS": "ئاسیا",
+ "uls-region-ME": "ڕۆژھەڵاتی ناوین",
+ "uls-region-PA": "ئۆقیانووسی ئارام",
+ "uls-no-results-found": "ھیچ ئاکامێک نەدۆزرایەوە",
+ "uls-common-languages": "زمانە ھاوبەشەکان",
+ "uls-no-results-suggestion-title": "ڕەنگە خۆشیت بێ لە:",
+ "uls-search-help": "دەتوانی بە پێی زمان، ناوی سکریپت، کۆدی ئای ئێس ئۆی زمان یان بە پێی ھەرێم بگەڕێی:",
+ "uls-search-placeholder": "گەڕانی زمان"
+}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/cs.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/cs.json
new file mode 100644
index 00000000..81134472
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/cs.json
@@ -0,0 +1,21 @@
+{
+ "@metadata": {
+ "authors": [
+ "Mormegil"
+ ]
+ },
+ "uls-select-language": "Vyberte jazyk",
+ "uls-region-WW": "Celosvětové",
+ "uls-region-SP": "Speciální",
+ "uls-region-AM": "Amerika",
+ "uls-region-AF": "Afrika",
+ "uls-region-EU": "Evropa",
+ "uls-region-AS": "Asie",
+ "uls-region-ME": "Blízký východ",
+ "uls-region-PA": "Tichomoří",
+ "uls-no-results-found": "Nenalezeny žádné výsledky",
+ "uls-common-languages": "Běžné jazyky",
+ "uls-no-results-suggestion-title": "Mohlo by vás zajímat:",
+ "uls-search-help": "Můžete vyhledávat podle názvu jazyka, názvu písma, ISO kódu jazyka nebo můžete procházet po regionech:",
+ "uls-search-placeholder": "Hledání jazyka"
+}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/cv.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/cv.json
new file mode 100644
index 00000000..2e436494
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/cv.json
@@ -0,0 +1,22 @@
+{
+ "@metadata": {
+ "authors": [
+ "Salam",
+ "Chavash"
+ ]
+ },
+ "uls-select-language": "Чӗлхе суйлани",
+ "uls-region-WW": "Пӗтӗм тӗнчери",
+ "uls-region-SP": "Ятарлисем",
+ "uls-region-AM": "Америка",
+ "uls-region-AF": "Африка",
+ "uls-region-EU": "Европа",
+ "uls-region-AS": "Ази",
+ "uls-region-ME": "Малти хӗвел тухӑҫ",
+ "uls-region-PA": "Океани",
+ "uls-no-results-found": "Нимӗн те тупӑнмарӗ",
+ "uls-common-languages": "Чӗлхене сис",
+ "uls-no-results-suggestion-title": "Тен çак чĕлхесем пăхма пултаратăр:",
+ "uls-search-help": "Чĕлхе ячĕпе, çырулăхĕпе, ISO-кочĕпе е регионĕпе шырама пулать:",
+ "uls-search-placeholder": "Чĕлхе шыра"
+}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/cy.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/cy.json
new file mode 100644
index 00000000..b05b333a
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/cy.json
@@ -0,0 +1,21 @@
+{
+ "@metadata": {
+ "authors": [
+ "Lloffiwr"
+ ]
+ },
+ "uls-select-language": "Dewis iaith",
+ "uls-region-WW": "Aml i fan",
+ "uls-region-SP": "Neilltuol",
+ "uls-region-AM": "America",
+ "uls-region-AF": "Affrica",
+ "uls-region-EU": "Ewrop",
+ "uls-region-AS": "Asia",
+ "uls-region-ME": "Y Dwyrain Canol",
+ "uls-region-PA": "Y Pasiffig",
+ "uls-no-results-found": "Ni chafwyd unrhyw ganlyniadau",
+ "uls-common-languages": "Awgrymiadau o ieithoedd",
+ "uls-no-results-suggestion-title": "Hwyrach bod y rhai sy'n dilyn o ddiddordeb i chi:",
+ "uls-search-help": "Gallwch chwilio am enw iaith, enw sgript, côd ISO rhyw iaith neu gallwch bori fesul rhanbarth:",
+ "uls-search-placeholder": "Chwilio am iaith"
+}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/da.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/da.json
new file mode 100644
index 00000000..688c2ccd
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/da.json
@@ -0,0 +1,22 @@
+{
+ "@metadata": {
+ "authors": [
+ "Christian List",
+ "Peter Alberti"
+ ]
+ },
+ "uls-select-language": "Vælg sprog",
+ "uls-region-WW": "Verdensomspændende",
+ "uls-region-SP": "Specielle",
+ "uls-region-AM": "Amerika",
+ "uls-region-AF": "Afrika",
+ "uls-region-EU": "Europa",
+ "uls-region-AS": "Asien",
+ "uls-region-ME": "Mellemøsten",
+ "uls-region-PA": "Stillehavet",
+ "uls-no-results-found": "Ingen resultater fundet",
+ "uls-common-languages": "Almindelige sprog",
+ "uls-no-results-suggestion-title": "Du er måske interesseret i:",
+ "uls-search-help": "Du kan søge på sprogets navn, skriftens navn eller sprogets ISO-kode, eller du kan bladre hen til sproget efter regionen:",
+ "uls-search-placeholder": "Sprogsøgning"
+}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/de-formal.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/de-formal.json
new file mode 100644
index 00000000..79c11a51
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/de-formal.json
@@ -0,0 +1,19 @@
+{
+ "@metadata": {
+ "authors": [
+ "Kghbln"
+ ]
+ },
+ "uls-select-language": "Wählen Sie eine Sprache",
+ "uls-region-WW": "",
+ "uls-region-AM": "",
+ "uls-region-AF": "",
+ "uls-region-EU": "",
+ "uls-region-AS": "",
+ "uls-region-ME": "",
+ "uls-region-PA": "",
+ "uls-no-results-found": "",
+ "uls-common-languages": "",
+ "uls-no-results-suggestion-title": "Dies könnte Sie interessieren:",
+ "uls-search-help": "Sie können nach dem Namen der Sprache suchen, dem Namen der Schrift, dem ISO-Code der Sprache oder aber die Suche über eine Region durchführen:"
+}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/de.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/de.json
new file mode 100644
index 00000000..12feb05f
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/de.json
@@ -0,0 +1,23 @@
+{
+ "@metadata": {
+ "authors": [
+ "Kghbln",
+ "Metalhead64",
+ "TMg"
+ ]
+ },
+ "uls-select-language": "Wähle eine Sprache",
+ "uls-region-WW": "Weltweit",
+ "uls-region-SP": "Spezial",
+ "uls-region-AM": "Amerika",
+ "uls-region-AF": "Afrika",
+ "uls-region-EU": "Europa",
+ "uls-region-AS": "Asien",
+ "uls-region-ME": "Mittlerer Osten",
+ "uls-region-PA": "Pazifik",
+ "uls-no-results-found": "Es wurden keine Ergebnisse gefunden.",
+ "uls-common-languages": "Vorgeschlagene Sprachen",
+ "uls-no-results-suggestion-title": "Dies könnte dich interessieren:",
+ "uls-search-help": "Du kannst nach dem Namen der Sprache suchen, dem Namen der Schrift, dem ISO-Code der Sprache oder aber die Suche über eine Region durchführen:",
+ "uls-search-placeholder": "Sprachensuche"
+}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/diq.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/diq.json
new file mode 100644
index 00000000..0409a2f2
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/diq.json
@@ -0,0 +1,24 @@
+{
+ "@metadata": {
+ "authors": [
+ "Erdemaslancan",
+ "Gorizon",
+ "Marmase",
+ "Mirzali"
+ ]
+ },
+ "uls-select-language": "Zıwan weçine",
+ "uls-region-WW": "Heradınya",
+ "uls-region-SP": "Xısusi",
+ "uls-region-AM": "Amerika",
+ "uls-region-AF": "Afriqa",
+ "uls-region-EU": "Ewropa",
+ "uls-region-AS": "Asya",
+ "uls-region-ME": "Rocvetışê Miyani",
+ "uls-region-PA": "Pasifik",
+ "uls-no-results-found": "Netice nê vineya",
+ "uls-common-languages": "Wertax zıwani",
+ "uls-no-results-suggestion-title": "Belki şıma cıya eleqederi:",
+ "uls-search-help": "Şıma şenê name dê zıwaniya, skript kodiya, ISO qodiya yana mıntıqa heta cıgeyrayış bıkerê.",
+ "uls-search-placeholder": "Zıwan cıgeyrayış"
+}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/dsb.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/dsb.json
new file mode 100644
index 00000000..278263a5
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/dsb.json
@@ -0,0 +1,21 @@
+{
+ "@metadata": {
+ "authors": [
+ "Michawiki"
+ ]
+ },
+ "uls-select-language": "Rěc wubraś",
+ "uls-region-WW": "na cełem swěśe",
+ "uls-region-SP": "Specialne",
+ "uls-region-AM": "Amerika",
+ "uls-region-AF": "Afrika",
+ "uls-region-EU": "Europa",
+ "uls-region-AS": "Azija",
+ "uls-region-ME": "Srjejźne pódzajtšo",
+ "uls-region-PA": "Pacifik",
+ "uls-no-results-found": "Žedne wuslědki namakane",
+ "uls-common-languages": "Powšykne rěcy",
+ "uls-no-results-suggestion-title": "To by mógło śi zajmowaś:",
+ "uls-search-help": "Móžoš pó mjenju rěcy, mjenju pisma, ISO-koźe rěcy pytaś abo móžoš pó regionje pytaś:",
+ "uls-search-placeholder": "Rěcne pytanje"
+}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/el.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/el.json
new file mode 100644
index 00000000..7149c67c
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/el.json
@@ -0,0 +1,22 @@
+{
+ "@metadata": {
+ "authors": [
+ "Evropi",
+ "Geraki"
+ ]
+ },
+ "uls-select-language": "Επιλέξτε γλώσσα",
+ "uls-region-WW": "Παγκόσμιες",
+ "uls-region-SP": "Ειδικές",
+ "uls-region-AM": "Αμερική",
+ "uls-region-AF": "Αφρική",
+ "uls-region-EU": "Ευρώπη",
+ "uls-region-AS": "Ασία",
+ "uls-region-ME": "Μέση Ανατολή",
+ "uls-region-PA": "Ειρηνικός",
+ "uls-no-results-found": "Δεν βρέθηκαν αποτελέσματα",
+ "uls-common-languages": "Κοινές γλώσσες",
+ "uls-no-results-suggestion-title": "Μπορεί να σας ενδιαφέρουν:",
+ "uls-search-help": "Μπορείτε να ψάξετε κατά το όνομα της γλώσσας, όνομα δέσμης ενεργειών, κωδικό ISO της γλώσσας, ή να περιηγηθείτε ανά περιοχή:",
+ "uls-search-placeholder": "Αναζήτηση γλώσσας"
+}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/en.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/en.json
new file mode 100644
index 00000000..53ff1239
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/en.json
@@ -0,0 +1,22 @@
+{
+"@metadata": {
+ "author": "Santhosh Thottingal <santhosh.thottingal@gmail.com>",
+ "last-updated": "2012-09-21",
+ "locale": "en",
+ "message-documentation": "qqq"
+},
+"uls-select-language": "Select language",
+"uls-region-WW": "Worldwide",
+"uls-region-SP": "Special",
+"uls-region-AM": "America",
+"uls-region-AF": "Africa",
+"uls-region-EU": "Europe",
+"uls-region-AS": "Asia",
+"uls-region-ME": "Middle East",
+"uls-region-PA": "Pacific",
+"uls-no-results-found": "No results found",
+"uls-common-languages": "Common languages",
+"uls-no-results-suggestion-title": "You may be interested in:",
+"uls-search-help": "You can search by language name, script name, ISO code of language or you can browse by region:",
+"uls-search-placeholder": "Language search"
+}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/eo.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/eo.json
new file mode 100644
index 00000000..9d57b777
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/eo.json
@@ -0,0 +1,22 @@
+{
+ "@metadata": {
+ "authors": [
+ "Objectivesea",
+ "KuboF"
+ ]
+ },
+ "uls-select-language": "Elekti lingvon",
+ "uls-region-WW": "Tutmonda",
+ "uls-region-SP": "Speciala",
+ "uls-region-AM": "Ameriko",
+ "uls-region-AF": "Afriko",
+ "uls-region-EU": "Eŭropo",
+ "uls-region-AS": "Azio",
+ "uls-region-ME": "Mezoriento",
+ "uls-region-PA": "Pacifiko",
+ "uls-no-results-found": "Neniu rezulto estis trovita",
+ "uls-common-languages": "Komunaj lingvoj",
+ "uls-no-results-suggestion-title": "Vi eble interesiĝas pri:",
+ "uls-search-help": "Vi povas serĉi laŭ la lingvonomo, la skriptnomo aŭ la lingva ISO-kodo, aŭ vi povas abeli laŭ regiono:",
+ "uls-search-placeholder": "Lingvoserĉo"
+}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/es.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/es.json
new file mode 100644
index 00000000..ce993811
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/es.json
@@ -0,0 +1,26 @@
+{
+ "@metadata": {
+ "authors": [
+ "Armando-Martin",
+ "Fitoschido",
+ "McDutchie",
+ "Pginer",
+ "Santhosh.thottingal",
+ "Vivaelcelta"
+ ]
+ },
+ "uls-select-language": "Seleccione el idioma",
+ "uls-region-WW": "Mundial",
+ "uls-region-SP": "Especial",
+ "uls-region-AM": "América",
+ "uls-region-AF": "África",
+ "uls-region-EU": "Europa",
+ "uls-region-AS": "Asia",
+ "uls-region-ME": "Medio Oriente",
+ "uls-region-PA": "Pacífico",
+ "uls-no-results-found": "No se encontraron resultados",
+ "uls-common-languages": "Idiomas comunes",
+ "uls-no-results-suggestion-title": "Puedes estar interesado en:",
+ "uls-search-help": "Puedes buscar por el nombre del idioma, su tipo de escritura, el código ISO del idioma o su área geográfica:",
+ "uls-search-placeholder": "Buscar un idioma"
+}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/et.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/et.json
new file mode 100644
index 00000000..5d00580c
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/et.json
@@ -0,0 +1,21 @@
+{
+ "@metadata": {
+ "authors": [
+ "Pikne"
+ ]
+ },
+ "uls-select-language": "Keele valimine",
+ "uls-region-WW": "Kogu maailm",
+ "uls-region-SP": "Erijuhud",
+ "uls-region-AM": "Ameerika",
+ "uls-region-AF": "Aafrika",
+ "uls-region-EU": "Euroopa",
+ "uls-region-AS": "Aasia",
+ "uls-region-ME": "Lähis-Ida",
+ "uls-region-PA": "Vaikne ookean",
+ "uls-no-results-found": "Tulemusi ei leitud.",
+ "uls-common-languages": "Eelistatavad keeled",
+ "uls-no-results-suggestion-title": "Võid eelistada neid:",
+ "uls-search-help": "Saad otsida keeli keelenimetuse, kirjanimetuse või keele ISO-koodi järgi või sirvida keeli piirkonna järgi:",
+ "uls-search-placeholder": "Keeleotsing"
+}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/eu.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/eu.json
new file mode 100644
index 00000000..0274f2e0
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/eu.json
@@ -0,0 +1,21 @@
+{
+ "@metadata": {
+ "authors": [
+ "Theklan"
+ ]
+ },
+ "uls-select-language": "Hizkuntza aukeratu",
+ "uls-region-WW": "Mundu osoa",
+ "uls-region-SP": "Berezia",
+ "uls-region-AM": "Amerika",
+ "uls-region-AF": "Afrika",
+ "uls-region-EU": "Europa",
+ "uls-region-AS": "Asia",
+ "uls-region-ME": "Ekialde Hurbila",
+ "uls-region-PA": "Pazifikoa",
+ "uls-no-results-found": "Ez da emaitzarik aurkitu",
+ "uls-common-languages": "Hizkuntza komuna",
+ "uls-no-results-suggestion-title": "Agian interesa duzu:",
+ "uls-search-help": "Bilaketa egin ahal duzu hizkuntzaren izena, script izena, hizkuntzaren ISO kodea edo eskualdeka bilaketa egin ahal duzu:",
+ "uls-search-placeholder": "Hizkuntza bilaketa"
+}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/fa.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/fa.json
new file mode 100644
index 00000000..ddb3c50f
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/fa.json
@@ -0,0 +1,22 @@
+{
+ "@metadata": {
+ "authors": [
+ "Reza1615",
+ "Alirezaaa"
+ ]
+ },
+ "uls-select-language": "انتخاب زبان",
+ "uls-region-WW": "در سراسر جهان",
+ "uls-region-SP": "ویژه",
+ "uls-region-AM": "آمریکا",
+ "uls-region-AF": "آفریقا",
+ "uls-region-EU": "اروپا",
+ "uls-region-AS": "آسیا",
+ "uls-region-ME": "خاورمیانه",
+ "uls-region-PA": "اقیانوس آرام",
+ "uls-no-results-found": "نتیجه‌ای یافت نشد",
+ "uls-common-languages": "زبان‌های رایج",
+ "uls-no-results-suggestion-title": "ممکن است علاقه‌مند باشید:",
+ "uls-search-help": "شما می‌توانید بر پایه نام زبان، نام اسکریپت، کد استاندارد زبان یا بر پایه منطقه جستجو کنید:",
+ "uls-search-placeholder": "جستجوی زبان"
+}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/fi.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/fi.json
new file mode 100644
index 00000000..93b1ee8e
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/fi.json
@@ -0,0 +1,23 @@
+{
+ "@metadata": {
+ "authors": [
+ "Nedergard",
+ "Nike",
+ "VezonThunder"
+ ]
+ },
+ "uls-select-language": "Valitse kieli",
+ "uls-region-WW": "Ympäri maailmaa",
+ "uls-region-SP": "Erikoiskielet",
+ "uls-region-AM": "Amerikka",
+ "uls-region-AF": "Afrikka",
+ "uls-region-EU": "Eurooppa",
+ "uls-region-AS": "Aasia",
+ "uls-region-ME": "Lähi-Itä",
+ "uls-region-PA": "Tyynimeri",
+ "uls-no-results-found": "Ei tuloksia",
+ "uls-common-languages": "Yleiset kielet",
+ "uls-no-results-suggestion-title": "Etsitkö jotakin näistä:",
+ "uls-search-help": "Voit hakea kielen nimellä, kirjoitusjärjestelmän nimellä tai kielen ISO-koodilla tai selata alueittain:",
+ "uls-search-placeholder": "Kielihaku"
+}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/fo.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/fo.json
new file mode 100644
index 00000000..92fdb483
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/fo.json
@@ -0,0 +1,21 @@
+{
+ "@metadata": {
+ "authors": [
+ "EileenSanda"
+ ]
+ },
+ "uls-select-language": "Vel mál",
+ "uls-region-WW": "Alheims",
+ "uls-region-SP": "Serstakt",
+ "uls-region-AM": "Amerika",
+ "uls-region-AF": "Afrika",
+ "uls-region-EU": "Evropa",
+ "uls-region-AS": "Asia",
+ "uls-region-ME": "Miðeystur",
+ "uls-region-PA": "Stillahavið",
+ "uls-no-results-found": "Ongi úrslit funnin",
+ "uls-common-languages": "Vanlig mál",
+ "uls-no-results-suggestion-title": "Tú ert kanska áhugað/ur í:",
+ "uls-search-help": "Tú kanst leita eftir navni á máli, skrifttýpu á máli, ISO kotu av máli ella kanst tú leita eftir øki:",
+ "uls-search-placeholder": "Leita eftir máli"
+}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/fr.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/fr.json
new file mode 100644
index 00000000..2586e42d
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/fr.json
@@ -0,0 +1,22 @@
+{
+ "@metadata": {
+ "authors": [
+ "Gomoko",
+ "Ultimate"
+ ]
+ },
+ "uls-select-language": "Sélectionner la langue",
+ "uls-region-WW": "Dans le monde entier",
+ "uls-region-SP": "Spécial",
+ "uls-region-AM": "Amérique",
+ "uls-region-AF": "Afrique",
+ "uls-region-EU": "Europe",
+ "uls-region-AS": "Asie",
+ "uls-region-ME": "Moyen-Orient",
+ "uls-region-PA": "Pacifique",
+ "uls-no-results-found": "Aucun résultat trouvé",
+ "uls-common-languages": "Langues communes",
+ "uls-no-results-suggestion-title": "Vous pouvez être intéressé par:",
+ "uls-search-help": "Vous pouvez rechercher par nom de langue, par nom du script, par code ISO de la langue, ou vous pouvez naviguer par région:",
+ "uls-search-placeholder": "Recherche de langue"
+}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/fur.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/fur.json
new file mode 100644
index 00000000..b46d4532
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/fur.json
@@ -0,0 +1,21 @@
+{
+ "@metadata": {
+ "authors": [
+ "Klenje"
+ ]
+ },
+ "uls-select-language": "Sielç la lenghe",
+ "uls-region-WW": "Dut il mont",
+ "uls-region-SP": "Speciâl",
+ "uls-region-AM": "Americhe",
+ "uls-region-AF": "Afriche",
+ "uls-region-EU": "Europe",
+ "uls-region-AS": "Asie",
+ "uls-region-ME": "Medi Orient",
+ "uls-region-PA": "Pacjific",
+ "uls-no-results-found": "Nissun risultât",
+ "uls-common-languages": "Lenghis comunis",
+ "uls-no-results-suggestion-title": "Tu puedis jessi interessât a:",
+ "uls-search-help": "Tu pues cirî par non de lenghe, non dal alfabet, codis ISO de lenghe o tu puedis cirî intune regjon:",
+ "uls-search-placeholder": "Ricercje de lenghe"
+}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/fy.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/fy.json
new file mode 100644
index 00000000..62aa85f3
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/fy.json
@@ -0,0 +1,21 @@
+{
+ "@metadata": {
+ "authors": [
+ "Robin0van0der0vliet"
+ ]
+ },
+ "uls-select-language": "Kies taal",
+ "uls-region-WW": "Wrâldwiid",
+ "uls-region-SP": "Spesjaal",
+ "uls-region-AM": "Amearika",
+ "uls-region-AF": "Afrika",
+ "uls-region-EU": "Jeropa",
+ "uls-region-AS": "Aazje",
+ "uls-region-ME": "Midden-Easten",
+ "uls-region-PA": "Pasifysk gebiet",
+ "uls-no-results-found": "Gjin resultaten fûn",
+ "uls-common-languages": "Taalsuggestjes",
+ "uls-no-results-suggestion-title": "Faaks bisto ynteressearre yn:",
+ "uls-search-help": "Do kinstst sykje op taalnamme, skriftnamme, ISO-koade fan de taal of do kinne blêden per regio:",
+ "uls-search-placeholder": "Taal sykje"
+}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ga.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ga.json
new file mode 100644
index 00000000..39879d9a
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ga.json
@@ -0,0 +1,21 @@
+{
+ "@metadata": {
+ "authors": [
+ "Kscanne"
+ ]
+ },
+ "uls-select-language": "Roghnaigh Teanga",
+ "uls-region-WW": "Ar fud an Domhain",
+ "uls-region-SP": "Speisialta",
+ "uls-region-AM": "Meiriceá",
+ "uls-region-AF": "An Afraic",
+ "uls-region-EU": "An Eoraip",
+ "uls-region-AS": "An Áise",
+ "uls-region-ME": "An Meánoirthear",
+ "uls-region-PA": "An tAigéan Ciúin",
+ "uls-no-results-found": "Gan torthaí",
+ "uls-common-languages": "Teangacha coitianta",
+ "uls-no-results-suggestion-title": "Seans go mbeadh suim agat i:",
+ "uls-search-help": "Is féidir cuardach de réir ainm na teanga, ainm na scripte, cód ISO 639, nó brabhsáil de réir réigiúin:",
+ "uls-search-placeholder": "Cuardaigh teangacha"
+}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/gl.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/gl.json
new file mode 100644
index 00000000..6fc62430
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/gl.json
@@ -0,0 +1,21 @@
+{
+ "@metadata": {
+ "authors": [
+ "Toliño"
+ ]
+ },
+ "uls-select-language": "Seleccione unha lingua",
+ "uls-region-WW": "Mundial",
+ "uls-region-SP": "Especial",
+ "uls-region-AM": "América",
+ "uls-region-AF": "África",
+ "uls-region-EU": "Europa",
+ "uls-region-AS": "Asia",
+ "uls-region-ME": "Oriente Medio",
+ "uls-region-PA": "Pacífico",
+ "uls-no-results-found": "Non se atopou ningún resultado",
+ "uls-common-languages": "Linguas comúns",
+ "uls-no-results-suggestion-title": "Poida que estea buscando:",
+ "uls-search-help": "Pode procurar polo nome da lingua, o tipo de escritura ou o código ISO. Tamén pode explorar as rexións:",
+ "uls-search-placeholder": "Procurar unha lingua"
+}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/gn.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/gn.json
new file mode 100644
index 00000000..e40b98e7
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/gn.json
@@ -0,0 +1,21 @@
+{
+ "@metadata": {
+ "authors": [
+ "P. S. F. Freitas"
+ ]
+ },
+ "uls-select-language": "Eiporavo ñe'ẽ",
+ "uls-region-WW": "Yvóra",
+ "uls-region-SP": "Mba'echĩchĩ",
+ "uls-region-AM": "Amérika",
+ "uls-region-AF": "Afrika",
+ "uls-region-EU": "Europa",
+ "uls-region-AS": "Asia",
+ "uls-region-ME": "Mbyte Kuarahyresẽ",
+ "uls-region-PA": "Paraguasu Py'aguapy",
+ "uls-no-results-found": "Ndojuhu mba'e",
+ "uls-common-languages": "Ñe'ẽ jeipuruveva",
+ "uls-no-results-suggestion-title": "Nde ikatu reipotaː",
+ "uls-search-help": "Nde ikatu reheka ñe'ẽ héra, tai ysaja, ISO ñe'ẽ héra térã ñe'ẽ renda:",
+ "uls-search-placeholder": "Ñe'ẽ heka"
+}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/got.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/got.json
new file mode 100644
index 00000000..694eff79
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/got.json
@@ -0,0 +1,21 @@
+{
+ "@metadata": {
+ "authors": [
+ "Gothicspeaker"
+ ]
+ },
+ "uls-select-language": "𐍃𐌺𐌰𐌻𐍄 𐍅𐌰𐌻𐌾𐌰𐌽 𐍂𐌰𐌶𐌳𐌰",
+ "uls-region-WW": "𐌹𐌽 𐌰𐌻𐌻𐌰𐌼𐌰 𐍆𐌰𐌹𐍂𐍈𐌰𐌿",
+ "uls-region-SP": "𐍃𐌹𐌻𐌳𐌰𐌻𐌴𐌹𐌺𐍃",
+ "uls-region-AM": "𐌰𐌼𐌴𐍂𐌹𐌺𐌰",
+ "uls-region-AF": "𐌰𐍆𐍂𐌹𐌺𐌰",
+ "uls-region-EU": "𐌰𐌹𐍅𐍂𐍉𐍀𐌰",
+ "uls-region-AS": "𐌰𐍃𐌹𐌰",
+ "uls-region-ME": "𐌼𐌹𐌳𐌾𐌹𐍃 𐌰𐌿𐍃𐍄𐍂𐌰",
+ "uls-region-PA": "𐍀𐌰𐍃𐌹𐍆𐌹𐌺",
+ "uls-no-results-found": "𐌽𐌹 𐍅𐌰𐌹𐌷𐍄𐍃 𐌱𐌹𐌲𐌹𐍄𐌰𐌽𐍃",
+ "uls-common-languages": "𐌱𐌹𐌿𐌷𐍄𐌰 𐍂𐌰𐌶𐌳𐍉𐍃",
+ "uls-no-results-suggestion-title": "𐌿𐍆𐍄𐍉 𐍅𐌹𐌻𐌴𐌹𐍃 𐍃𐌿𐌼𐍃 𐌸𐌹𐌶𐍉 𐍂𐌰𐌶𐌳𐍉:",
+ "uls-search-help": "𐌼𐌰𐌲𐍄 𐍃𐍉𐌺𐌾𐌰𐌽 𐌼𐌹𐌸 𐍂𐌰𐌶𐌳𐌰𐌽𐌰𐌼𐌹𐌽, 𐍃𐌺𐍂𐌹𐍀𐍄𐌽𐌰𐌼𐌹𐌽, 𐌹𐍃𐍉 𐍂𐌰𐌸𐌾𐍉𐌽 𐌸𐌹𐌶𐍉𐍃 𐍂𐌰𐌶𐌳𐍉𐍃 𐌰𐌹𐌸𐌸𐌰𐌿 𐌼𐌰𐌲𐍄 𐍃𐍉𐌺𐌾𐌰𐌽 𐌱𐌹 𐌲𐌰𐍅𐌹:",
+ "uls-search-placeholder": "𐍂𐌰𐌶𐌳𐌰 𐍃𐍉𐌺𐌴𐌹𐌽𐍃"
+}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/gsw.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/gsw.json
new file mode 100644
index 00000000..a00eb0a0
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/gsw.json
@@ -0,0 +1,20 @@
+{
+ "@metadata": {
+ "authors": [
+ "Als-Holder"
+ ]
+ },
+ "uls-select-language": "Sproch wehle",
+ "uls-region-WW": "Wältwyt",
+ "uls-region-AM": "Amerika",
+ "uls-region-AF": "Afrika",
+ "uls-region-EU": "Europa",
+ "uls-region-AS": "Asie",
+ "uls-region-ME": "Mittlere Oschte",
+ "uls-region-PA": "Pazifik",
+ "uls-no-results-found": "Kei Ergebnis gfunde",
+ "uls-common-languages": "Sproche",
+ "uls-no-results-suggestion-title": "Des chennt Di interessiere:",
+ "uls-search-help": "Du chasch noch em Name vu dr Sproch sueche, em Name vu dr Schrift, em ISO-Code vu dr Sproch oder Du gohsch iber e Region fir Suechi:",
+ "uls-search-placeholder": "Sproch sueche"
+}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/gu.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/gu.json
new file mode 100644
index 00000000..7b966711
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/gu.json
@@ -0,0 +1,24 @@
+{
+ "@metadata": {
+ "authors": [
+ "Ashok modhvadia",
+ "Harsh4101991",
+ "KartikMistry",
+ "Santhosh.thottingal"
+ ]
+ },
+ "uls-select-language": "ભાષા પસંદ કરો",
+ "uls-region-WW": "વિશ્વભરમાં",
+ "uls-region-SP": "ખાસ",
+ "uls-region-AM": "અમેરિકા",
+ "uls-region-AF": "આફ્રિકા",
+ "uls-region-EU": "યુરોપ",
+ "uls-region-AS": "એશિયા",
+ "uls-region-ME": "મધ્ય પૂર્વ",
+ "uls-region-PA": "પૅસિફિક",
+ "uls-no-results-found": "કોઈ પરિણામ મળ્યા નહી",
+ "uls-common-languages": "સામાન્ય ભાષાઓ",
+ "uls-no-results-suggestion-title": "તમને આમાં રસ હોઈ શકે છે:",
+ "uls-search-help": "તમે ભાષા નામ, સ્ક્રિપ્ટ નામ, ભાષા ISO કોડ દ્વારા શોધી શકો છે અથવા તમે પ્રદેશ દ્વારા શોધી કરી શકો છો:",
+ "uls-search-placeholder": "ભાષા શોધ"
+}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/hak.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/hak.json
new file mode 100644
index 00000000..4d13dc95
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/hak.json
@@ -0,0 +1,21 @@
+{
+ "@metadata": {
+ "authors": [
+ "Jetlag"
+ ]
+ },
+ "uls-select-language": "選擇語言",
+ "uls-region-WW": "全世界",
+ "uls-region-SP": "特別",
+ "uls-region-AM": "美洲",
+ "uls-region-AF": "非洲",
+ "uls-region-EU": "歐洲",
+ "uls-region-AS": "亞洲",
+ "uls-region-ME": "中東",
+ "uls-region-PA": "太平洋",
+ "uls-no-results-found": "尋毋到任何結果",
+ "uls-common-languages": "常用語言",
+ "uls-no-results-suggestion-title": "爾可能感興趣:",
+ "uls-search-help": "爾可以按語言名稱、程式碼名稱、語言ISO代碼搜索,也可以按區域瀏覽:",
+ "uls-search-placeholder": "語言搜索"
+}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/haw.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/haw.json
new file mode 100644
index 00000000..bd78d4b7
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/haw.json
@@ -0,0 +1,21 @@
+{
+ "@metadata": {
+ "authors": [
+ "Kolonahe"
+ ]
+ },
+ "uls-select-language": "Koho ʻōlelo",
+ "uls-region-WW": "ʻŌlelo puni hōnua",
+ "uls-region-SP": "Kūikawā",
+ "uls-region-AM": "ʻAmelika",
+ "uls-region-AF": "ʻApelika",
+ "uls-region-EU": "ʻEulopa",
+ "uls-region-AS": "ʻĀkia",
+ "uls-region-ME": "Hikina Waena",
+ "uls-region-PA": "Pakipika",
+ "uls-no-results-found": "Loaʻa ʻole nā huahuli",
+ "uls-common-languages": "Nā ʻŌlelo laha",
+ "uls-no-results-suggestion-title": "Makemake paha ʻoe i:",
+ "uls-search-help": "Hiki iā ʻoe ke huli e ka inoa ʻōlelo, inoa kikokikona, pāʻālua ISO ʻōlelo aiʻole hiki ke huli e ka ʻāina:",
+ "uls-search-placeholder": "Huli ʻŌlelo"
+}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/he.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/he.json
new file mode 100644
index 00000000..db7b8df4
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/he.json
@@ -0,0 +1,22 @@
+{
+ "@metadata": {
+ "authors": [
+ "Amire80",
+ "Inkbug"
+ ]
+ },
+ "uls-select-language": "בחירת שפה",
+ "uls-region-WW": "עולמי",
+ "uls-region-SP": "מיוחדות",
+ "uls-region-AM": "אמריקה",
+ "uls-region-AF": "אפריקה",
+ "uls-region-EU": "אירופה",
+ "uls-region-AS": "אסיה",
+ "uls-region-ME": "המזרח התיכון",
+ "uls-region-PA": "האוקיינוס השקט",
+ "uls-no-results-found": "לא נמצאו שפות",
+ "uls-common-languages": "שפות נפוצות",
+ "uls-no-results-suggestion-title": "אולי זה יעניין אותך:",
+ "uls-search-help": "אפשר לחפש לפי שם שפה, שם שיטת הכתב, קוד ISO של השפה, או ניתן לעיין לפי אזור:",
+ "uls-search-placeholder": "חיפוש שפה"
+}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/hi.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/hi.json
new file mode 100644
index 00000000..f43f8124
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/hi.json
@@ -0,0 +1,22 @@
+{
+ "@metadata": {
+ "authors": [
+ "Santhosh.thottingal",
+ "Siddhartha Ghai"
+ ]
+ },
+ "uls-select-language": "भाषा चुनें",
+ "uls-region-WW": "वैश्विक",
+ "uls-region-SP": "विशेष",
+ "uls-region-AM": "अमेरिका",
+ "uls-region-AF": "अफ़्रीका",
+ "uls-region-EU": "यूरोप",
+ "uls-region-AS": "एशिया",
+ "uls-region-ME": "मध्य पूर्व",
+ "uls-region-PA": "प्रशांत",
+ "uls-no-results-found": "कोई परिणाम नहीं मिले",
+ "uls-common-languages": "आम भाषाएँ",
+ "uls-no-results-suggestion-title": "आपके लिये संभवतः उपयोगी:",
+ "uls-search-help": "आप भाषा के नाम, लिपि के नाम एवं भाषा के ISO कोड से खोज कर सकते हैं, और क्षेत्र अनुसार ब्राउज़ भी कर सकते हैं:",
+ "uls-search-placeholder": "भाषा खोज"
+}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/hrx.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/hrx.json
new file mode 100644
index 00000000..d67bff7f
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/hrx.json
@@ -0,0 +1,21 @@
+{
+ "@metadata": {
+ "authors": [
+ "Paul Beppler"
+ ]
+ },
+ "uls-select-language": "Wähl en Sproch",
+ "uls-region-WW": "Weltweit",
+ "uls-region-SP": "Spezial",
+ "uls-region-AM": "Amerika",
+ "uls-region-AF": "Afrika",
+ "uls-region-EU": "Europa",
+ "uls-region-AS": "Asie",
+ "uls-region-ME": "Mittlrer Ost",
+ "uls-region-PA": "Pazifik",
+ "uls-no-results-found": "Do woard ken Ergebniss gefund.",
+ "uls-common-languages": "Voargeschloohte Sproche",
+ "uls-no-results-suggestion-title": "Das könnt dich interssiere:",
+ "uls-search-help": "Du kannst nooh der Sproch ehr Noome suche, dem Schrift sein Noome, dem ISO-Code von der Sproch orrer awer die Such üwer en Reschion dorrichführe:",
+ "uls-search-placeholder": "Sprochesuch"
+}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/hsb.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/hsb.json
new file mode 100644
index 00000000..7160e7ea
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/hsb.json
@@ -0,0 +1,21 @@
+{
+ "@metadata": {
+ "authors": [
+ "Michawiki"
+ ]
+ },
+ "uls-select-language": "Rěč wubrać",
+ "uls-region-WW": "Na cyłym swěće",
+ "uls-region-SP": "Specialne",
+ "uls-region-AM": "Amerika",
+ "uls-region-AF": "Afrika",
+ "uls-region-EU": "Europa",
+ "uls-region-AS": "Azija",
+ "uls-region-ME": "Srjedźny wuchod:",
+ "uls-region-PA": "Pacifik",
+ "uls-no-results-found": "Žane wuslědki namakane",
+ "uls-common-languages": "Powšitkowne rěče",
+ "uls-no-results-suggestion-title": "To móhło će zajimować:",
+ "uls-search-help": "Móžeš po mjenje rěče, mjenje pisma, ISO-kodźe rěče pytać abo móžeš po regionje pytać:",
+ "uls-search-placeholder": "Rěčne pytanje"
+}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/hu.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/hu.json
new file mode 100644
index 00000000..b017206c
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/hu.json
@@ -0,0 +1,22 @@
+{
+ "@metadata": {
+ "authors": [
+ "Dj",
+ "Tacsipacsi"
+ ]
+ },
+ "uls-select-language": "Nyelv kiválasztása",
+ "uls-region-WW": "Világszerte",
+ "uls-region-SP": "Speciális",
+ "uls-region-AM": "Amerika",
+ "uls-region-AF": "Afrika",
+ "uls-region-EU": "Európa",
+ "uls-region-AS": "Ázsia",
+ "uls-region-ME": "Közel-Kelet",
+ "uls-region-PA": "Csendes-óceáni",
+ "uls-no-results-found": "Nincs találat",
+ "uls-common-languages": "Gyakori nyelvek",
+ "uls-no-results-suggestion-title": "Lehet, hogy érdekel:",
+ "uls-search-help": "Kereshetsz a nyelv neve, parancsfájl neve, a nyelv ISO kódja vagy böngészhetsz régiók szerint:",
+ "uls-search-placeholder": "Nyelv keresése"
+}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/hy.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/hy.json
new file mode 100644
index 00000000..03da3537
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/hy.json
@@ -0,0 +1,21 @@
+{
+ "@metadata": {
+ "authors": [
+ "Xelgen"
+ ]
+ },
+ "uls-select-language": "Ընտրեք լեզուն",
+ "uls-region-WW": "Միջազգային",
+ "uls-region-SP": "Հատուկ",
+ "uls-region-AM": "Ամերիկա",
+ "uls-region-AF": "Աֆրիկա",
+ "uls-region-EU": "Եվրոպա",
+ "uls-region-AS": "Ասիա",
+ "uls-region-ME": "Միջին արևելք",
+ "uls-region-PA": "Օվկիանիա",
+ "uls-no-results-found": "Ոչինչ չի գտնվել",
+ "uls-common-languages": "Առաջարկվող լեզուներ",
+ "uls-no-results-suggestion-title": "Ձեզ գուցե հետաքրքրեն․",
+ "uls-search-help": "Դուք կարող եք որոնել լեզուն իր անվամբ, գրի անունով, ԻՍՈ կոդով կամ կարող եք ընտրել ըստ տարածաշրջանի։",
+ "uls-search-placeholder": "Որոնել լեզուները"
+}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ia.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ia.json
new file mode 100644
index 00000000..f039dd27
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ia.json
@@ -0,0 +1,21 @@
+{
+ "@metadata": {
+ "authors": [
+ "McDutchie"
+ ]
+ },
+ "uls-select-language": "Selige lingua",
+ "uls-region-WW": "Mundial",
+ "uls-region-SP": "Special",
+ "uls-region-AM": "America",
+ "uls-region-AF": "Africa",
+ "uls-region-EU": "Europa",
+ "uls-region-AS": "Asia",
+ "uls-region-ME": "Medio oriente",
+ "uls-region-PA": "Pacific",
+ "uls-no-results-found": "Nulle resultato trovate",
+ "uls-common-languages": "Linguas commun",
+ "uls-no-results-suggestion-title": "Tu pote esser interessate in:",
+ "uls-search-help": "Tu pote cercar per nomine de lingua, nomine de scriptura o codice ISO de lingua, o tu pote foliar per le regiones:",
+ "uls-search-placeholder": "Recerca de lingua"
+}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/id.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/id.json
new file mode 100644
index 00000000..3a68e2cc
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/id.json
@@ -0,0 +1,22 @@
+{
+ "@metadata": {
+ "authors": [
+ "Farras",
+ "Iwan Novirion"
+ ]
+ },
+ "uls-select-language": "Pilih Bahasa",
+ "uls-region-WW": "Seluruh dunia",
+ "uls-region-SP": "Khusus",
+ "uls-region-AM": "Amerika",
+ "uls-region-AF": "Afrika",
+ "uls-region-EU": "Eropa",
+ "uls-region-AS": "Asia",
+ "uls-region-ME": "Timur Tengah",
+ "uls-region-PA": "Pasifik",
+ "uls-no-results-found": "Tidak ada hasil ditemukan",
+ "uls-common-languages": "Bahasa umum",
+ "uls-no-results-suggestion-title": "Anda mungkin tertarik pada:",
+ "uls-search-help": "Anda dapat mencari dengan nama bahasa, nama skrip, kode ISO bahasa atau Anda dapat menelusuri menurut wilayahnya:",
+ "uls-search-placeholder": "Pencarian bahasa"
+}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ie.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ie.json
new file mode 100644
index 00000000..18d9051a
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ie.json
@@ -0,0 +1,21 @@
+{
+ "@metadata": {
+ "authors": [
+ "Makuba"
+ ]
+ },
+ "uls-select-language": "Selecte un lingue",
+ "uls-region-WW": "Global",
+ "uls-region-SP": "Special",
+ "uls-region-AM": "America",
+ "uls-region-AF": "Africa",
+ "uls-region-EU": "Europa",
+ "uls-region-AS": "Asia",
+ "uls-region-ME": "Medial Ost",
+ "uls-region-PA": "Pacific",
+ "uls-no-results-found": "Null resultates ha esset trovat.",
+ "uls-common-languages": "Proposit lingues",
+ "uls-no-results-suggestion-title": "Forsan tu es interessat in:",
+ "uls-search-help": "Tu posse serchar li nómin del lingue, del scritura, del ISO-code del lingue o serchar secun un region:",
+ "uls-search-placeholder": "Lingual sercha"
+}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ilo.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ilo.json
new file mode 100644
index 00000000..2cba5c36
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ilo.json
@@ -0,0 +1,21 @@
+{
+ "@metadata": {
+ "authors": [
+ "Lam-ang"
+ ]
+ },
+ "uls-select-language": "Agpili ti Pagsasao",
+ "uls-region-WW": "Sangalubongan",
+ "uls-region-SP": "Espesial",
+ "uls-region-AM": "Amerika",
+ "uls-region-AF": "Aprika",
+ "uls-region-EU": "Europa",
+ "uls-region-AS": "Asia",
+ "uls-region-ME": "Tengnga a Daya",
+ "uls-region-PA": "Pasipiko",
+ "uls-no-results-found": "Awan dagiti nabirukan a resulta",
+ "uls-common-languages": "Dagiti kadawyan a pagsasao",
+ "uls-no-results-suggestion-title": "Mabalin nga interesadoka iti:",
+ "uls-search-help": "Mabalinmo ti agbiruk babaen ti nagan ti pagsasao, nagan ti eskritu, ISO a kodigo ti pagsasao wenno agbasabasaka babaen ti rehion:",
+ "uls-search-placeholder": "Panagbiruk ti pagsasao"
+}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/is.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/is.json
new file mode 100644
index 00000000..4982d8bb
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/is.json
@@ -0,0 +1,20 @@
+{
+ "@metadata": {
+ "authors": [
+ "Snævar"
+ ]
+ },
+ "uls-select-language": "Veldu tungumál",
+ "uls-region-WW": "Á heimsvísu",
+ "uls-region-SP": "Sérstök",
+ "uls-region-AM": "Ameríka",
+ "uls-region-AF": "Afríka",
+ "uls-region-EU": "Evrópa",
+ "uls-region-AS": "Asía",
+ "uls-region-ME": "Mið-Austurlönd",
+ "uls-region-PA": "Kyrrahaf",
+ "uls-no-results-found": "Ekkert fannst",
+ "uls-common-languages": "Algeng tungumál",
+ "uls-search-help": "Þú getur leitað eftir nafni tungumáls, nafni skriftunar, ISO kóða tungumálsins eða þú getur leitað eftir svæði:",
+ "uls-search-placeholder": "Tungumála leit"
+}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/it.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/it.json
new file mode 100644
index 00000000..1e9ca516
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/it.json
@@ -0,0 +1,22 @@
+{
+ "@metadata": {
+ "authors": [
+ "Beta16",
+ "Macofe"
+ ]
+ },
+ "uls-select-language": "Seleziona lingua",
+ "uls-region-WW": "Tutto il mondo",
+ "uls-region-SP": "Speciale",
+ "uls-region-AM": "America",
+ "uls-region-AF": "Africa",
+ "uls-region-EU": "Europa",
+ "uls-region-AS": "Asia",
+ "uls-region-ME": "Medio oriente",
+ "uls-region-PA": "Pacifico",
+ "uls-no-results-found": "Nessun risultato",
+ "uls-common-languages": "Lingue più scelte",
+ "uls-no-results-suggestion-title": "Puoi essere interessato a:",
+ "uls-search-help": "È possibile cercare per nome, nome dello script, codice ISO della lingua o si può navigare tramite regione:",
+ "uls-search-placeholder": "Ricerca lingua"
+}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ja.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ja.json
new file mode 100644
index 00000000..bd94eee9
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ja.json
@@ -0,0 +1,22 @@
+{
+ "@metadata": {
+ "authors": [
+ "Santhosh.thottingal",
+ "Shirayuki"
+ ]
+ },
+ "uls-select-language": "言語の選択",
+ "uls-region-WW": "全世界",
+ "uls-region-SP": "特殊",
+ "uls-region-AM": "アメリカ",
+ "uls-region-AF": "アフリカ",
+ "uls-region-EU": "ヨーロッパ",
+ "uls-region-AS": "アジア",
+ "uls-region-ME": "中東",
+ "uls-region-PA": "太平洋地域",
+ "uls-no-results-found": "見つかりませんでした",
+ "uls-common-languages": "よく使用する言語",
+ "uls-no-results-suggestion-title": "もしかして:",
+ "uls-search-help": "言語名、文字体系名、言語の ISO コードで検索できます。地域別の一覧から選択することもできます:",
+ "uls-search-placeholder": "言語の検索"
+}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ka.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ka.json
new file mode 100644
index 00000000..45899c5e
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ka.json
@@ -0,0 +1,21 @@
+{
+ "@metadata": {
+ "authors": [
+ "David1010"
+ ]
+ },
+ "uls-select-language": "აირჩიეთ ენა",
+ "uls-region-WW": "მსოფლიო",
+ "uls-region-SP": "სპეციალური",
+ "uls-region-AM": "ამერიკა",
+ "uls-region-AF": "აფრიკა",
+ "uls-region-EU": "ევროპა",
+ "uls-region-AS": "აზია",
+ "uls-region-ME": "ახლო აღმოსავლეთი",
+ "uls-region-PA": "ოკეანეთი",
+ "uls-no-results-found": "შედეგი ვერ მოიძებნა",
+ "uls-common-languages": "საერთო ენები",
+ "uls-no-results-suggestion-title": "იქნებ თქვენ ამ ენებმა დაგაინტერესოთ:",
+ "uls-search-help": "ძიება შესაძლებელია ენის სახელით ან დამწერლობით, ენის ISO-კოდით ან რეგიონის მიხედვით:",
+ "uls-search-placeholder": "ენის მოძებნა"
+}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/kab.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/kab.json
new file mode 100644
index 00000000..76ce24c5
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/kab.json
@@ -0,0 +1,22 @@
+{
+ "@metadata": {
+ "authors": [
+ "Amazigh84",
+ "Mmistmurt"
+ ]
+ },
+ "uls-select-language": "Xtiṛ Tutlayt",
+ "uls-region-WW": "Deg umaḍal ummid",
+ "uls-region-SP": "Uslig",
+ "uls-region-AM": "Tamrikt",
+ "uls-region-AF": "Tafriqt",
+ "uls-region-EU": "Turuft",
+ "uls-region-AS": "Asya",
+ "uls-region-ME": "Ccerq Alemmas",
+ "uls-region-PA": "Amelwi",
+ "uls-no-results-found": "Ulac d acu id yufa.",
+ "uls-common-languages": "Tutlayin tinmilitin",
+ "uls-no-results-suggestion-title": "Ma tebɣiḍ ad isineḍ ayen nniḍen ɣef :",
+ "uls-search-help": "Tzemreḍ ad tḥffeḍ s tutlayt, s uskript, s tangalt ISO n tutlayt naγ inig s tama.",
+ "uls-search-placeholder": "Anadi n tutlayt"
+}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/khw.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/khw.json
new file mode 100644
index 00000000..dde92e22
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/khw.json
@@ -0,0 +1,14 @@
+{
+ "@metadata": {
+ "authors": [
+ "Rachitrali"
+ ]
+ },
+ "uls-select-language": "زبانو انتخابو کورے",
+ "uls-region-WW": "پورا دنیا",
+ "uls-region-AM": "آمریکہ",
+ "uls-region-AF": "افریقہ",
+ "uls-region-EU": "یوروپ",
+ "uls-region-AS": "ایشیاء",
+ "uls-region-ME": "مشرق وسطی"
+}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/kk-cyrl.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/kk-cyrl.json
new file mode 100644
index 00000000..fa0ebf9d
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/kk-cyrl.json
@@ -0,0 +1,21 @@
+{
+ "@metadata": {
+ "authors": [
+ "Arystanbek"
+ ]
+ },
+ "uls-select-language": "Тілді таңдау",
+ "uls-region-WW": "Әлемдік тілдер",
+ "uls-region-SP": "Арнайы",
+ "uls-region-AM": "Америка",
+ "uls-region-AF": "Африка",
+ "uls-region-EU": "Еуропа",
+ "uls-region-AS": "Азия",
+ "uls-region-ME": "Таяу шығыс",
+ "uls-region-PA": "Тынық мұхит",
+ "uls-no-results-found": "Ешбір нәтиже табылмады",
+ "uls-common-languages": "Ортақ тілдер",
+ "uls-no-results-suggestion-title": "Сіз қызықтауыңыз мүмкін:",
+ "uls-search-help": "Тіл атауы бойынша, скрипт аты, тілдің ISO коды бойынша ізей аласыз немесе аумағы бойынша шола аласыз:",
+ "uls-search-placeholder": "Тілді іздеу"
+}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/km.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/km.json
new file mode 100644
index 00000000..3a1ea7c9
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/km.json
@@ -0,0 +1,21 @@
+{
+ "@metadata": {
+ "authors": [
+ "Sovichet"
+ ]
+ },
+ "uls-select-language": "រើស​ភាសា",
+ "uls-region-WW": "ទូទាំង​ពិភពលោក",
+ "uls-region-SP": "ពិសេស",
+ "uls-region-AM": "អាមេរិក",
+ "uls-region-AF": "អាហ្វ្រិក",
+ "uls-region-EU": "អឺរ៉ុប",
+ "uls-region-AS": "អាស៊ី",
+ "uls-region-ME": "មជ្ឈិមបូព៌ា",
+ "uls-region-PA": "ប៉ាស៊ីភិច",
+ "uls-no-results-found": "រកមិនឃើញលទ្ធផល",
+ "uls-common-languages": "ភាសាទូទៅ",
+ "uls-no-results-suggestion-title": "អ្នក​អាច​នឹង​ចាប់​អារម្មណ៍​លើ:",
+ "uls-search-help": "អ្នក​អាច​ស្វែង​រក​តាម​ឈ្មោះ​ភាសា, ឈ្មោះ​ស្គ្រីប, កូដ ISO នៃ​ភាសា ឬ​អ្នក​អាច​រុករក​តាម​តំបន់:",
+ "uls-search-placeholder": "រកតាម​ភាសា"
+}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/kn.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/kn.json
new file mode 100644
index 00000000..952394ac
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/kn.json
@@ -0,0 +1,22 @@
+{
+ "@metadata": {
+ "authors": [
+ "Omshivaprakash",
+ "Shankar"
+ ]
+ },
+ "uls-select-language": "ಭಾಷೆಯ ಆಯ್ಕೆ",
+ "uls-region-WW": "ಪ್ರಪಂಚದಾದ್ಯಂತ",
+ "uls-region-SP": "ವಿಶೇಷ",
+ "uls-region-AM": "ಅಮೇರಿಕ",
+ "uls-region-AF": "ಆಫ್ರಿಕ",
+ "uls-region-EU": "ಯುರೋಪ್",
+ "uls-region-AS": "ಏಷ್ಯಾ",
+ "uls-region-ME": "ಮಿಡಲ್ ಈಸ್ಟ್",
+ "uls-region-PA": "ಫೆಸಿಫಿಕ್",
+ "uls-no-results-found": "ಯಾವುದೇ ಫಲಿತಾಂಶಗಳಿಲ್ಲ",
+ "uls-common-languages": "ಸಾಮಾನ್ಯ ಭಾಷೆಗಳು",
+ "uls-no-results-suggestion-title": "ನಿಮಗೆ ಇದರಲ್ಲಿ ಆಸಕ್ತಿ ಇರಬಹುದು:",
+ "uls-search-help": "ನೀವು ಭಾಷೆಯ ಹೆಸರು, ಲಿಪಿಯ ಹೆಸರು,ಭಾಷೆಯ ಐಎಸ್‌ಓ ಸಂಖ್ಯೆ ಅಥವಾ ಪ್ರಾಂತದ ಮೂಲಕ ಹುಡುಕಬಹುದು:",
+ "uls-search-placeholder": "ಭಾಷೆಯ ಹುಡುಕು"
+}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ko.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ko.json
new file mode 100644
index 00000000..aa284b0c
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ko.json
@@ -0,0 +1,22 @@
+{
+ "@metadata": {
+ "authors": [
+ "IRTC1015",
+ "아라"
+ ]
+ },
+ "uls-select-language": "언어 선택",
+ "uls-region-WW": "전세계",
+ "uls-region-SP": "특수",
+ "uls-region-AM": "아메리카",
+ "uls-region-AF": "아프리카",
+ "uls-region-EU": "유럽",
+ "uls-region-AS": "아시아",
+ "uls-region-ME": "중동",
+ "uls-region-PA": "태평양",
+ "uls-no-results-found": "결과가 없습니다",
+ "uls-common-languages": "자주 사용하는 언어",
+ "uls-no-results-suggestion-title": "이것을 찾으셨나요:",
+ "uls-search-help": "언어 이름, 문자 체계 이름, 언어의 ISO 코드로 검색할 수 있으며 지역별로 찾아볼 수 있습니다:",
+ "uls-search-placeholder": "언어 검색"
+}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/krc.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/krc.json
new file mode 100644
index 00000000..7f2b03e8
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/krc.json
@@ -0,0 +1,21 @@
+{
+ "@metadata": {
+ "authors": [
+ "Iltever"
+ ]
+ },
+ "uls-select-language": "Тил сайлау",
+ "uls-region-WW": "Бютеудуниялы",
+ "uls-region-SP": "Айырмалы",
+ "uls-region-AM": "Америка",
+ "uls-region-AF": "Африка",
+ "uls-region-EU": "Европа",
+ "uls-region-AS": "Азия",
+ "uls-region-ME": "Джууукъ Кюнчыгъыш",
+ "uls-region-PA": "Океания",
+ "uls-no-results-found": "Джукъ да табылмады",
+ "uls-common-languages": "Автомат халда айырылгъан тилле",
+ "uls-no-results-suggestion-title": "Бу теллеге талпый болурмусуз:",
+ "uls-search-help": "Тилни неда джазманы атына кёре излерге боллукъсуз, тилни ISO-кодуна кёре неда регионнга кёре къараргъа:",
+ "uls-search-placeholder": "Тил излеу"
+}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ksh.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ksh.json
new file mode 100644
index 00000000..95c98141
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ksh.json
@@ -0,0 +1,21 @@
+{
+ "@metadata": {
+ "authors": [
+ "Purodha"
+ ]
+ },
+ "uls-select-language": "En Schprooch ußwähle",
+ "uls-region-WW": "Fö de jannze Ääd",
+ "uls-region-SP": "Extras - kein Schprooche",
+ "uls-region-AM": "Ammärrika",
+ "uls-region-AF": "Affrikka",
+ "uls-region-EU": "Europpa",
+ "uls-region-AS": "Aasije",
+ "uls-region-ME": "der meddlere Oßte",
+ "uls-region-PA": "der Paziffesche Oozejaan",
+ "uls-no-results-found": "Nix jefonge",
+ "uls-common-languages": "Jemeinsamm Schprooche",
+ "uls-no-results-suggestion-title": "Do künnts Schpaßß hann aan:",
+ "uls-search-help": "Do kanns noh Schprooche söhke övver der Name, dä Schreff iehre name, et Köözel noh dä ISO-Norrm udder övver övver Rejuhne:",
+ "uls-search-placeholder": "En Schprooch Söhke"
+}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ky.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ky.json
new file mode 100644
index 00000000..70dc8036
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ky.json
@@ -0,0 +1,23 @@
+{
+ "@metadata": {
+ "authors": [
+ "Growingup",
+ "Maksat",
+ "Викиней"
+ ]
+ },
+ "uls-select-language": "Тилди тандоо",
+ "uls-region-WW": "Бүткүл дүйнөлүк",
+ "uls-region-SP": "Атайын",
+ "uls-region-AM": "Америка",
+ "uls-region-AF": "Африка",
+ "uls-region-EU": "Европа",
+ "uls-region-AS": "Азия",
+ "uls-region-ME": "Жакынкы Чыгыш",
+ "uls-region-PA": "Океания",
+ "uls-no-results-found": "Жыйынтыктар табылган жок",
+ "uls-common-languages": "Жалпы тилдер",
+ "uls-no-results-suggestion-title": "Балким бул тилдер сизди кызыктырат:",
+ "uls-search-help": "Сиз тилдердин аталыштары, скрипта, тилдердин ISO коддору же болбосо аймагы боюнча издесеңиз болот",
+ "uls-search-placeholder": "Издөө тили"
+}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/lb.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/lb.json
new file mode 100644
index 00000000..13b01ce7
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/lb.json
@@ -0,0 +1,21 @@
+{
+ "@metadata": {
+ "authors": [
+ "Robby"
+ ]
+ },
+ "uls-select-language": "Sprooch eraussichen",
+ "uls-region-WW": "Weltwäit",
+ "uls-region-SP": "Spezial",
+ "uls-region-AM": "Amerika",
+ "uls-region-AF": "Afrika",
+ "uls-region-EU": "Europa",
+ "uls-region-AS": "Asien",
+ "uls-region-ME": "Mëttleren Osten",
+ "uls-region-PA": "Pazifik",
+ "uls-no-results-found": "Näischt fonnt",
+ "uls-common-languages": "Sproochen",
+ "uls-no-results-suggestion-title": "Dir kënnt interesséiert sinn un:",
+ "uls-search-help": "Dir kënnt mam Numm vun der Sprooch, Numm vun der Schrëft, ISO-Code vun der Sprooch oder iwwer eng Regioun sichen:",
+ "uls-search-placeholder": "Sprooche sichen"
+}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/lez.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/lez.json
new file mode 100644
index 00000000..53579f54
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/lez.json
@@ -0,0 +1,22 @@
+{
+ "@metadata": {
+ "authors": [
+ "Namik",
+ "Soul Train"
+ ]
+ },
+ "uls-select-language": "Ch'al xkaghun",
+ "uls-region-WW": "Virialemdin",
+ "uls-region-SP": "Гьакlдар",
+ "uls-region-AM": "ŵAmerika",
+ "uls-region-AF": "Африка",
+ "uls-region-EU": "Европа",
+ "uls-region-AS": "Азия",
+ "uls-region-ME": "Muq'o erch'i pad",
+ "uls-region-PA": "Океания",
+ "uls-no-results-found": "Jaghanach",
+ "uls-common-languages": "Bulvilin ch'alar",
+ "uls-no-results-suggestion-title": "Kwez mumkin i ch'alar muqaya xun:",
+ "uls-search-help": "Mumkinval ava jagharun chalan t'warceay ni xat'unay, ISO koday chalan ik'ni kiligun ellday",
+ "uls-search-placeholder": "Чlал жагъурун"
+}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/lki.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/lki.json
new file mode 100644
index 00000000..70dbea94
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/lki.json
@@ -0,0 +1,21 @@
+{
+ "@metadata": {
+ "authors": [
+ "Hosseinblue"
+ ]
+ },
+ "uls-select-language": "زوون انتخاب کۀ",
+ "uls-region-WW": "کؤل جئ هان",
+ "uls-region-SP": "ویژۀ",
+ "uls-region-AM": "ئآمریکا",
+ "uls-region-AF": "ئآفریقا",
+ "uls-region-EU": "اؤرووپا",
+ "uls-region-AS": "ئاسیا",
+ "uls-region-ME": "(غرب نامِن(خاوورمیانۀ",
+ "uls-region-PA": "ئآرؤم",
+ "uls-no-results-found": "نۀتیجئ ئل دیی نؤی",
+ "uls-common-languages": "زوونۀل مشترک",
+ "uls-no-results-suggestion-title": ":هائر خووۀشته یۀ بآئ",
+ "uls-search-help": "،مۀتؤنینؤ مه نئ کینؤ ئۀ وسیلۀ نؤم زوون\n نؤم اسکریپت،کد(ای اس او)زوونۀ یامتؤنینؤ ناحیۀ بگئردینو",
+ "uls-search-placeholder": " مِه نِی زوون"
+}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/lrc.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/lrc.json
new file mode 100644
index 00000000..b6db6b9e
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/lrc.json
@@ -0,0 +1,20 @@
+{
+ "@metadata": {
+ "authors": [
+ "Mogoeilor"
+ ]
+ },
+ "uls-select-language": "زون انتخاو بيه",
+ "uls-region-WW": "كل دونيا",
+ "uls-region-SP": "ويجه",
+ "uls-region-AM": "امركا",
+ "uls-region-AF": "افرقا",
+ "uls-region-EU": "اوروپا",
+ "uls-region-AS": "آسيا",
+ "uls-region-ME": "مينجا خاور",
+ "uls-region-PA": "هوم پيوست جهون آوی",
+ "uls-no-results-found": "هيچ نتيجه يی جسته نبی",
+ "uls-common-languages": "زونا رايج",
+ "uls-no-results-suggestion-title": "شما ممكنه دش علاقه من بوئيت",
+ "uls-search-placeholder": "پی جوری زونی"
+}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/lt.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/lt.json
new file mode 100644
index 00000000..749922ab
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/lt.json
@@ -0,0 +1,22 @@
+{
+ "@metadata": {
+ "authors": [
+ "Cyklopas",
+ "Mantak111"
+ ]
+ },
+ "uls-select-language": "Pasirinkite kalbą",
+ "uls-region-WW": "Visame pasaulyje",
+ "uls-region-SP": "Specialios",
+ "uls-region-AM": "Amerika",
+ "uls-region-AF": "Afrika",
+ "uls-region-EU": "Europa",
+ "uls-region-AS": "Azija",
+ "uls-region-ME": "Artimieji Rytai",
+ "uls-region-PA": "Ramiojo vandenyno zona",
+ "uls-no-results-found": "Rezultatų nerasta",
+ "uls-common-languages": "Bendros kalbos",
+ "uls-no-results-suggestion-title": "Jums gali būti įdomu:",
+ "uls-search-help": "Galite ieškoti informacijos pagal kalbos pavadinimą, scenarijaus pavadinimą, ISO kalbos kodą arba galite naršyti pagal regionus:",
+ "uls-search-placeholder": "Kalbos ieška"
+}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/lv.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/lv.json
new file mode 100644
index 00000000..e7d9ad42
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/lv.json
@@ -0,0 +1,22 @@
+{
+ "@metadata": {
+ "authors": [
+ "Papuass",
+ "Ttdnet"
+ ]
+ },
+ "uls-select-language": "Izvēlieties valodu",
+ "uls-region-WW": "Visā pasaulē",
+ "uls-region-SP": "Īpašās",
+ "uls-region-AM": "Amerika",
+ "uls-region-AF": "Āfrika",
+ "uls-region-EU": "Eiropa",
+ "uls-region-AS": "Āzija",
+ "uls-region-ME": "Tuvie Austrumi",
+ "uls-region-PA": "Klusā okeāna",
+ "uls-no-results-found": "Nav atrasts neviens rezultāts",
+ "uls-common-languages": "Izplatītas valodas",
+ "uls-no-results-suggestion-title": "Jums var būt interesē:",
+ "uls-search-help": "Var meklēt pēc valodas, skripta nosaukuma, valodas ISO koda, vai jūs tos varat pārlūkot pēc reģiona:",
+ "uls-search-placeholder": "Valodas meklēšana"
+}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/map-bms.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/map-bms.json
new file mode 100644
index 00000000..3f04fb68
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/map-bms.json
@@ -0,0 +1,21 @@
+{
+ "@metadata": {
+ "authors": [
+ "StefanusRA"
+ ]
+ },
+ "uls-select-language": "Pilih Basa",
+ "uls-region-WW": "Sak ndonya",
+ "uls-region-SP": "Khusus",
+ "uls-region-AM": "Amerika",
+ "uls-region-AF": "Afrika",
+ "uls-region-EU": "Eropa",
+ "uls-region-AS": "Asia",
+ "uls-region-ME": "Timur Tengah",
+ "uls-region-PA": "Pasifik",
+ "uls-no-results-found": "Ora nemokna hasile",
+ "uls-common-languages": "Basa-basa sing umum",
+ "uls-no-results-suggestion-title": "Rika ndeyane seneng:",
+ "uls-search-help": "Rika teyeng nggoleti nganggo jeneng basa, jeneng skrip, kode ISO ne basa utawa Rika teyeng nggoleti per wilayaeh:",
+ "uls-search-placeholder": "Ngoleti basa"
+}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/mg.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/mg.json
new file mode 100644
index 00000000..be4b1542
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/mg.json
@@ -0,0 +1,21 @@
+{
+ "@metadata": {
+ "authors": [
+ "Jagwar"
+ ]
+ },
+ "uls-select-language": "Hifidy tenim-pirenena",
+ "uls-region-WW": "Erak'izao tontolo izao",
+ "uls-region-SP": "Manokana",
+ "uls-region-AM": "Amerika",
+ "uls-region-AF": "Afrika",
+ "uls-region-EU": "Eoropa",
+ "uls-region-AS": "Azia",
+ "uls-region-ME": "Afovoany Atsinanana",
+ "uls-region-PA": "Pasifika",
+ "uls-no-results-found": "Tsy nahitana valiny",
+ "uls-common-languages": "Tenim-pirenena fampiasa matetika",
+ "uls-no-results-suggestion-title": "Mety ahitanao tombon-tsoa:",
+ "uls-search-help": "Afaka mikaroka araka ny anaran'ny tenim-pirena, anaran-tsoratra, kaody ISO-n'ny teny na afaka mifidy araky ny faritra:",
+ "uls-search-placeholder": "Fikarohana tenim-pirenena"
+}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/min.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/min.json
new file mode 100644
index 00000000..a1057819
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/min.json
@@ -0,0 +1,21 @@
+{
+ "@metadata": {
+ "authors": [
+ "Iwan Novirion"
+ ]
+ },
+ "uls-select-language": "Piliah Bahaso",
+ "uls-region-WW": "Saluruah dunia",
+ "uls-region-SP": "Khusuih",
+ "uls-region-AM": "Amerika",
+ "uls-region-AF": "Afrika",
+ "uls-region-EU": "Eropa",
+ "uls-region-AS": "Asia",
+ "uls-region-ME": "Timua Tangah",
+ "uls-region-PA": "Pasifik",
+ "uls-no-results-found": "Hasil indak basobok",
+ "uls-common-languages": "Bahaso umum",
+ "uls-no-results-suggestion-title": "Sanak mungkin tatarik pado:",
+ "uls-search-help": "Sanak dapek mancari jo namo bahaso, namo skrip, kode ISO bahaso atau dapek pulo manalusuri manuruik wilayahnyo:",
+ "uls-search-placeholder": "Pancarian bahaso"
+}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/mk.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/mk.json
new file mode 100644
index 00000000..b6abc40a
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/mk.json
@@ -0,0 +1,21 @@
+{
+ "@metadata": {
+ "authors": [
+ "Bjankuloski06"
+ ]
+ },
+ "uls-select-language": "Одберете јазик",
+ "uls-region-WW": "Светски",
+ "uls-region-SP": "Посебни",
+ "uls-region-AM": "Америка",
+ "uls-region-AF": "Африка",
+ "uls-region-EU": "Европа",
+ "uls-region-AS": "Азија",
+ "uls-region-ME": "Близок Исток",
+ "uls-region-PA": "Океанија",
+ "uls-no-results-found": "Не пронајдов ништо",
+ "uls-common-languages": "Позастапени јазици",
+ "uls-no-results-suggestion-title": "Може да ве интересираат:",
+ "uls-search-help": "Можете да пребарувате по име на јазикот или писмото, по ISO-код на јазикот или пак да разгледате по региони:",
+ "uls-search-placeholder": "Јазик на пребарувањето"
+}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ml.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ml.json
new file mode 100644
index 00000000..e5b0667e
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ml.json
@@ -0,0 +1,22 @@
+{
+ "@metadata": {
+ "authors": [
+ "Praveenp",
+ "Santhosh.thottingal"
+ ]
+ },
+ "uls-select-language": "ഭാഷ തിരഞ്ഞെടുക്കുക",
+ "uls-region-WW": "ആഗോള ഭാഷകൾ",
+ "uls-region-SP": "പ്രത്യേക ഭാഷകൾ",
+ "uls-region-AM": "അമേരിക്ക",
+ "uls-region-AF": "ആഫ്രിക്ക",
+ "uls-region-EU": "യൂറോപ്പ്",
+ "uls-region-AS": "ഏഷ്യ",
+ "uls-region-ME": "മദ്ധ്യപൂർവേഷ്യ",
+ "uls-region-PA": "പസഫിക്",
+ "uls-no-results-found": "ഒന്നും കണ്ടെത്താനായില്ല",
+ "uls-common-languages": "സാധാരണ ഭാഷകൾ",
+ "uls-no-results-suggestion-title": "താങ്കൾക്കാവശ്യം ഇതായിരിക്കാം:",
+ "uls-search-help": "താങ്കൾക്ക് ഭാഷയുടെ പേര്, ISO 639 കോഡ്, ലിപിയുടെ പേര് എന്നിവ ഉപയോഗിച്ച് തിരയാം. അല്ലെങ്കിൽ ഈ മേഖലകളിൽ തിരയാം:",
+ "uls-search-placeholder": "ഭാഷ തിരയുക"
+}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/mn.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/mn.json
new file mode 100644
index 00000000..fa12636e
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/mn.json
@@ -0,0 +1,22 @@
+{
+ "@metadata": {
+ "authors": [
+ "Amire80",
+ "Wisdom"
+ ]
+ },
+ "uls-select-language": "Хэл сонгох",
+ "uls-region-WW": "Дэлхий даяар",
+ "uls-region-SP": "Тусгай",
+ "uls-region-AM": "Америк",
+ "uls-region-AF": "Африк",
+ "uls-region-EU": "Европ",
+ "uls-region-AS": "Ази",
+ "uls-region-ME": "Дундад Ази",
+ "uls-region-PA": "Номхон далай",
+ "uls-no-results-found": "Үр дүн олдсонгүй",
+ "uls-common-languages": "Түгээмэл хэл",
+ "uls-no-results-suggestion-title": "Таны сонихсон зүйл:",
+ "uls-search-help": "Та хэлээр, скриптийн нэрээр, хэлний ISO кодоор хайж болно, эсвэл газар нутгаар нь харж болно.",
+ "uls-search-placeholder": "Хэлний хайлт"
+}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/mr.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/mr.json
new file mode 100644
index 00000000..920e8e97
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/mr.json
@@ -0,0 +1,23 @@
+{
+ "@metadata": {
+ "authors": [
+ "Kaajawa",
+ "Mahitgar",
+ "V.narsikar"
+ ]
+ },
+ "uls-select-language": "भाषा निवडा",
+ "uls-region-WW": "वैश्विक",
+ "uls-region-SP": "विशेष",
+ "uls-region-AM": "अमेरीका",
+ "uls-region-AF": "आफ्रीका",
+ "uls-region-EU": "युरोप",
+ "uls-region-AS": "आशिया",
+ "uls-region-ME": "मध्यपूर्व (मिडल इस्ट)",
+ "uls-region-PA": "पॅसिफीक",
+ "uls-no-results-found": "परिणाम सापडले नाही",
+ "uls-common-languages": "नित्याच्या भाषा",
+ "uls-no-results-suggestion-title": "तुम्हाला कदाचित यात रुची असेल:",
+ "uls-search-help": "आपण भाषेनुसार, लिपीनुसार, भाषेच्या आयएसओ कोडनुसार शोध घेऊ शकता अथवा प्रदेशानुसार न्याहाळु शकता:",
+ "uls-search-placeholder": "भाषा शोध"
+}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ms.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ms.json
new file mode 100644
index 00000000..2632dd99
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ms.json
@@ -0,0 +1,21 @@
+{
+ "@metadata": {
+ "authors": [
+ "Anakmalaysia"
+ ]
+ },
+ "uls-select-language": "Pilih Bahasa",
+ "uls-region-WW": "Seluruh Dunia",
+ "uls-region-SP": "Khas",
+ "uls-region-AM": "Amerika",
+ "uls-region-AF": "Afrika",
+ "uls-region-EU": "Eropah",
+ "uls-region-AS": "Asia",
+ "uls-region-ME": "Timur Tengah",
+ "uls-region-PA": "Pasifik",
+ "uls-no-results-found": "Tiada hasil carian",
+ "uls-common-languages": "Bahasa-bahasa am",
+ "uls-no-results-suggestion-title": "Mungkin anda ingin mencari:",
+ "uls-search-help": "Anda boleh mencari mengikut nama bahasa, nama tulisan, kod bahasa ISO ataupun menyemak seimbas mengikut kawasan:",
+ "uls-search-placeholder": "Carian bahasa"
+}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/mt.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/mt.json
new file mode 100644
index 00000000..e7a0dec8
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/mt.json
@@ -0,0 +1,21 @@
+{
+ "@metadata": {
+ "authors": [
+ "Chrisportelli"
+ ]
+ },
+ "uls-select-language": "Agħżel lingwa",
+ "uls-region-WW": "Madwar id-dinja",
+ "uls-region-SP": "Speċjali",
+ "uls-region-AM": "Amerika",
+ "uls-region-AF": "Afrika",
+ "uls-region-EU": "Ewropa",
+ "uls-region-AS": "Asja",
+ "uls-region-ME": "Lvant Nofsani",
+ "uls-region-PA": "Paċifiku",
+ "uls-no-results-found": "L-ebda riżultat",
+ "uls-common-languages": "Lingwi magħżula",
+ "uls-no-results-suggestion-title": "Tista' tkun interessat fil-:",
+ "uls-search-help": "Tista' tfittex skont l-isem tal-lingwa, l-isem tal-iskript, kodiċi tal-lingwa ISO jew tista' tinnaviga skont ir-reġjun:",
+ "uls-search-placeholder": "Fittex lingwa"
+}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/mzn.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/mzn.json
new file mode 100644
index 00000000..fd929bf8
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/mzn.json
@@ -0,0 +1,21 @@
+{
+ "@metadata": {
+ "authors": [
+ "محک"
+ ]
+ },
+ "uls-select-language": "زوون ره انتخاب هاکردن",
+ "uls-region-WW": "جهون میون",
+ "uls-region-SP": "ویژه",
+ "uls-region-AM": "آمریکا",
+ "uls-region-AF": "آفریقا",
+ "uls-region-EU": "اروپا",
+ "uls-region-AS": "آسیا",
+ "uls-region-ME": "خاورمیونه",
+ "uls-region-PA": "آروم اقیانوس",
+ "uls-no-results-found": "هچّی پیدا نیّه",
+ "uls-common-languages": "رایج زوونون",
+ "uls-no-results-suggestion-title": "شاید دوست دارین:",
+ "uls-search-help": "شما بتونّی زوون نوم، اسکریپ نوم، زوونِ استانداردِ کد یا ونه منطقه جه شه دِلِوستِ زوون ره پیدا هاکنین:",
+ "uls-search-placeholder": "زوونِ جستجو"
+}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/nap.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/nap.json
new file mode 100644
index 00000000..0146dc4a
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/nap.json
@@ -0,0 +1,21 @@
+{
+ "@metadata": {
+ "authors": [
+ "Chelin"
+ ]
+ },
+ "uls-select-language": "Selezziona lengua",
+ "uls-region-WW": "Munno intero",
+ "uls-region-SP": "Speciale",
+ "uls-region-AM": "Amereca",
+ "uls-region-AF": "Afreca",
+ "uls-region-EU": "Europa",
+ "uls-region-AS": "Asia",
+ "uls-region-ME": "Medio oriente",
+ "uls-region-PA": "Pacifico",
+ "uls-no-results-found": "Nisciuno risultato",
+ "uls-common-languages": "Lengue cchiù scelte",
+ "uls-no-results-suggestion-title": "Puo essere interessato a:",
+ "uls-search-help": "Puo cerca ppe nomme, nomme ddo script, codece ISO dda lengua o navigga tra e reggione:",
+ "uls-search-placeholder": "Ascià lengua"
+}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/nb.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/nb.json
new file mode 100644
index 00000000..afcbced3
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/nb.json
@@ -0,0 +1,22 @@
+{
+ "@metadata": {
+ "authors": [
+ "Event",
+ "Wouterkoch"
+ ]
+ },
+ "uls-select-language": "Velg språk",
+ "uls-region-WW": "Verdensomspennende",
+ "uls-region-SP": "Spesielle",
+ "uls-region-AM": "Amerika",
+ "uls-region-AF": "Afrika",
+ "uls-region-EU": "Europa",
+ "uls-region-AS": "Asia",
+ "uls-region-ME": "Midtøsten",
+ "uls-region-PA": "Stillehavsområdet",
+ "uls-no-results-found": "Ingen resultater funnet",
+ "uls-common-languages": "Vanlige språk",
+ "uls-no-results-suggestion-title": "Dette kan kanskje interessere deg:",
+ "uls-search-help": "Du kan søke basert på språkets navn, skriptnavn eller ISO-kode, eller bla basert på region:",
+ "uls-search-placeholder": "Språksøk"
+}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/nds-nl.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/nds-nl.json
new file mode 100644
index 00000000..34ae80f9
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/nds-nl.json
@@ -0,0 +1,21 @@
+{
+ "@metadata": {
+ "authors": [
+ "Servien"
+ ]
+ },
+ "uls-select-language": "Taal kiezen",
+ "uls-region-WW": "Wereldwied",
+ "uls-region-SP": "Spesiaal",
+ "uls-region-AM": "Amerika",
+ "uls-region-AF": "Afrika",
+ "uls-region-EU": "Europa",
+ "uls-region-AS": "Azië",
+ "uls-region-ME": "Midden-Oosten",
+ "uls-region-PA": "Stille Zeegebied",
+ "uls-no-results-found": "Gien resultaoten evunnen",
+ "uls-common-languages": "Taalsuggesties",
+ "uls-no-results-suggestion-title": "Misschien wi'j een van de volgende talen kiezen:",
+ "uls-search-help": "Je kunnen zeuken op taalnaam, schriftnaam, ISO-kode van de taal of je kunnen per regio deurblaojen:",
+ "uls-search-placeholder": "Taal zeuken"
+}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ne.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ne.json
new file mode 100644
index 00000000..9aa750f9
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ne.json
@@ -0,0 +1,22 @@
+{
+ "@metadata": {
+ "authors": [
+ "Krish Dulal",
+ "सरोज कुमार ढकाल"
+ ]
+ },
+ "uls-select-language": "भाषा छान्ने",
+ "uls-region-WW": "विश्वभर",
+ "uls-region-SP": "विशेष",
+ "uls-region-AM": "अमेरिका",
+ "uls-region-AF": "अफ्रिका",
+ "uls-region-EU": "युरोप",
+ "uls-region-AS": "एसिया",
+ "uls-region-ME": "मध्य पूर्व",
+ "uls-region-PA": "प्रशान्त",
+ "uls-no-results-found": "कुनै पनि नतिजाहरू भेटिएन",
+ "uls-common-languages": "साझा भाषा",
+ "uls-no-results-suggestion-title": "तपाईंलाई यसमा चाख लाग्नसक्छ:",
+ "uls-search-help": "तपाईं भाषाको नाम, लिपीको नाम, आइएसओ कोड वा क्षेत्रको आधारमा खोज्न सक्नुहुन्छ:",
+ "uls-search-placeholder": "भाषा खोज्नुहोस"
+}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/nl-informal.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/nl-informal.json
new file mode 100644
index 00000000..c4fd0529
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/nl-informal.json
@@ -0,0 +1,15 @@
+{
+ "@metadata": {
+ "authors": [
+ "Carsrac"
+ ]
+ },
+ "uls-select-language": "Kies taal",
+ "uls-region-WW": "Wereldwijd",
+ "uls-region-SP": "Speciaal",
+ "uls-region-AM": "Amerika",
+ "uls-region-AF": "Afrika",
+ "uls-region-EU": "Europa",
+ "uls-region-AS": "Azië",
+ "uls-region-ME": "Midden-Oosten"
+}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/nl.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/nl.json
new file mode 100644
index 00000000..8c5b5e4d
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/nl.json
@@ -0,0 +1,21 @@
+{
+ "@metadata": {
+ "authors": [
+ "Siebrand"
+ ]
+ },
+ "uls-select-language": "Taal selecteren",
+ "uls-region-WW": "Wereldwijd",
+ "uls-region-SP": "Speciaal",
+ "uls-region-AM": "Amerika",
+ "uls-region-AF": "Afrika",
+ "uls-region-EU": "Europa",
+ "uls-region-AS": "Azië",
+ "uls-region-ME": "Midden-Oosten",
+ "uls-region-PA": "Pacifisch gebied",
+ "uls-no-results-found": "Geen resultaten gevonden",
+ "uls-common-languages": "Taalsuggesties",
+ "uls-no-results-suggestion-title": "Wellicht wilt u een van de volgende talen kiezen:",
+ "uls-search-help": "U kunt zoeken op taalnaam, schriftnaam, ISO-code van de taal of u kunt bladeren per regio:",
+ "uls-search-placeholder": "Taal zoeken"
+}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/nn.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/nn.json
new file mode 100644
index 00000000..8c710085
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/nn.json
@@ -0,0 +1,21 @@
+{
+ "@metadata": {
+ "authors": [
+ "Njardarlogar"
+ ]
+ },
+ "uls-select-language": "Vel språk",
+ "uls-region-WW": "Verdsfemnande",
+ "uls-region-SP": "Spesielle",
+ "uls-region-AM": "Amerika",
+ "uls-region-AF": "Afrika",
+ "uls-region-EU": "Europa",
+ "uls-region-AS": "Asia",
+ "uls-region-ME": "Midtausten",
+ "uls-region-PA": "Stillehavsområdet",
+ "uls-no-results-found": "Ingen resultat funne",
+ "uls-common-languages": "Vanlege språk",
+ "uls-no-results-suggestion-title": "Kan henda er du interessert i:",
+ "uls-search-help": "Du kan søkja etter språknamn, namn på skriftsystem, ISO-kode eller du kan bla gjennom etter region:",
+ "uls-search-placeholder": "Språksøk"
+}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/nso.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/nso.json
new file mode 100644
index 00000000..bb114cf6
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/nso.json
@@ -0,0 +1,14 @@
+{
+ "@metadata": {
+ "authors": [
+ "Mohau"
+ ]
+ },
+ "uls-select-language": "Kgetha leleme",
+ "uls-region-WW": "Lefasekabophara",
+ "uls-region-AM": "Amerika",
+ "uls-region-AF": "Afrika",
+ "uls-region-EU": "Uropa",
+ "uls-no-results-suggestion-title": "O ka ba le kgatlego go:",
+ "uls-search-placeholder": "Fetleka leleme"
+}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/oc.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/oc.json
new file mode 100644
index 00000000..271398b2
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/oc.json
@@ -0,0 +1,21 @@
+{
+ "@metadata": {
+ "authors": [
+ "Cedric31"
+ ]
+ },
+ "uls-select-language": "Causir la lenga",
+ "uls-region-WW": "Dins lo monde entièr",
+ "uls-region-SP": "Especial",
+ "uls-region-AM": "America",
+ "uls-region-AF": "Africa",
+ "uls-region-EU": "Euròpa",
+ "uls-region-AS": "Asia",
+ "uls-region-ME": "Orient Mejan",
+ "uls-region-PA": "Pacific",
+ "uls-no-results-found": "Cap de resultat pas trobat",
+ "uls-common-languages": "Lengas comunas",
+ "uls-no-results-suggestion-title": "Podètz èsser interessat per :",
+ "uls-search-help": "Podètz recercar per nom de lenga, per nom de l'escript, per còde ISO de la lenga, o podètz navigar per region :",
+ "uls-search-placeholder": "Recèrca de lenga"
+}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/om.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/om.json
new file mode 100644
index 00000000..e04d0a1d
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/om.json
@@ -0,0 +1,21 @@
+{
+ "@metadata": {
+ "authors": [
+ "Tumsaa"
+ ]
+ },
+ "uls-select-language": "Afaan filadhu",
+ "uls-region-WW": "Addunyaalessa",
+ "uls-region-SP": "Addayaa",
+ "uls-region-AM": "Ameerikaa",
+ "uls-region-AF": "Aafrikaa",
+ "uls-region-EU": "Yuurooppi",
+ "uls-region-AS": "Eeshiyaa",
+ "uls-region-ME": "Giddu-galeessa Bahaa",
+ "uls-region-PA": "Paasifiik",
+ "uls-no-results-found": "Homtuu hin argamane",
+ "uls-common-languages": "Afaan filannoo",
+ "uls-no-results-suggestion-title": "Kana barbaaduu dandeessa:",
+ "uls-search-help": "Maqaa afaaniin, maqaa iskiriptiin, ykn ISO koodii afaaniin barbaaduu ykn naannodhaan sakatta'uu dandeessa.",
+ "uls-search-placeholder": "Barbaacha Afaanii"
+}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/os.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/os.json
new file mode 100644
index 00000000..68cff1ab
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/os.json
@@ -0,0 +1,21 @@
+{
+ "@metadata": {
+ "authors": [
+ "Bouron"
+ ]
+ },
+ "uls-select-language": "Æвзагæвзарæн",
+ "uls-region-WW": "Æппæтдунеон",
+ "uls-region-SP": "Сӕрмагонд",
+ "uls-region-AM": "Америкæ",
+ "uls-region-AF": "Африкæ",
+ "uls-region-EU": "Европæ",
+ "uls-region-AS": "Ази",
+ "uls-region-ME": "Æввахс Скæсæн",
+ "uls-region-PA": "Океани",
+ "uls-no-results-found": "Ницы разындис",
+ "uls-common-languages": "Æввахс æвзæгтæ",
+ "uls-no-results-suggestion-title": "Чизоны дæ ацы æвзæгтæ бахъæуой:",
+ "uls-search-help": "Дæ бон у агурын æвзаджы номмæ гæсгæ, фыссынадмæ гæсгæ, ISO кодмæ гæсгæ кæнæ бынатмæ гæсгæ:",
+ "uls-search-placeholder": "Æвзаг агурын"
+}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/pa.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/pa.json
new file mode 100644
index 00000000..5a2097b5
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/pa.json
@@ -0,0 +1,21 @@
+{
+ "@metadata": {
+ "authors": [
+ "Babanwalia"
+ ]
+ },
+ "uls-select-language": "ਭਾਸ਼ਾ ਚੁਣੋ",
+ "uls-region-WW": "ਵਿਸ਼ਵਵਿਆਪੀ",
+ "uls-region-SP": "ਖ਼ਾਸ",
+ "uls-region-AM": "ਅਮਰੀਕਾ",
+ "uls-region-AF": "ਅਫ਼ਰੀਕਾ",
+ "uls-region-EU": "ਯੂਰਪ",
+ "uls-region-AS": "ਏਸ਼ੀਆ",
+ "uls-region-ME": "ਮੱਧ ਪੂਰਬ",
+ "uls-region-PA": "ਪ੍ਰਸ਼ਾਂਤ",
+ "uls-no-results-found": "ਕੋਈ ਨਤੀਜਾ ਨਹੀਂ ਲੱਭਾ",
+ "uls-common-languages": "ਪ੍ਰਚੱਲਤ ਬੋਲੀਆਂ",
+ "uls-no-results-suggestion-title": "ਤੁਹਾਨੂੰ ਇਹਨਾਂ ਵਿੱਚ ਦਿਲਚਸਪੀ ਹੋ ਸਕਦੀ ਹੋ:",
+ "uls-search-help": "ਤੁਸੀਂ ਭਾਸ਼ਾ ਦੇ ਨਾਂ, ਲਿਪੀ ਦੇ ਨਾਂ, ਭਾਸ਼ਾ ਦੇ ISO ਕੋਡ ਰਾਹੀਂ ਖੋਜ ਸਕਦੇ ਹੋ ਜਾਂ ਖੇਤਰ ਪੱਖੋਂ ਸਫ਼ੇ ਪਲਟ ਸਕਦੇ ਹੋ:",
+ "uls-search-placeholder": "ਭਾਸ਼ਾ ਖੋਜ"
+}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/pl.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/pl.json
new file mode 100644
index 00000000..c843fb35
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/pl.json
@@ -0,0 +1,23 @@
+{
+ "@metadata": {
+ "authors": [
+ "Matma Rex",
+ "Rezonansowy",
+ "Woytecr"
+ ]
+ },
+ "uls-select-language": "Wybierz język",
+ "uls-region-WW": "Cały świat",
+ "uls-region-SP": "Specjalne",
+ "uls-region-AM": "Ameryka",
+ "uls-region-AF": "Afryka",
+ "uls-region-EU": "Europa",
+ "uls-region-AS": "Azja",
+ "uls-region-ME": "Bliski Wschód",
+ "uls-region-PA": "Pacyfik",
+ "uls-no-results-found": "Brak wyników",
+ "uls-common-languages": "Wybrane języki",
+ "uls-no-results-suggestion-title": "Być może cię zainteresują te języki:",
+ "uls-search-help": "Możesz wyszukiwać według nazwy języka, nazwy systemu pisma, kodu ISO języka, lub przeglądać listy według regionów:",
+ "uls-search-placeholder": "Wyszukiwanie języka"
+}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/pms.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/pms.json
new file mode 100644
index 00000000..d8f2a86d
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/pms.json
@@ -0,0 +1,22 @@
+{
+ "@metadata": {
+ "authors": [
+ "Borichèt",
+ "Dragonòt"
+ ]
+ },
+ "uls-select-language": "Serne la lenga",
+ "uls-region-WW": "Tut ël mond",
+ "uls-region-SP": "Special",
+ "uls-region-AM": "América",
+ "uls-region-AF": "Àfrica",
+ "uls-region-EU": "Euròpa",
+ "uls-region-AS": "Asia",
+ "uls-region-ME": "Vzin Orient",
+ "uls-region-PA": "Passìfich",
+ "uls-no-results-found": "Gnun arzultà trovà",
+ "uls-common-languages": "Lenghe comun-e",
+ "uls-no-results-suggestion-title": "It peule esse anteressà a:",
+ "uls-search-help": "A peul sërché për nòm ëd lenga, nòm dl'alfabet, còdes ISO dla lenga o a peul navighé për region:",
+ "uls-search-placeholder": "Arserca ëd lenga"
+}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ps.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ps.json
new file mode 100644
index 00000000..bf587e9c
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ps.json
@@ -0,0 +1,21 @@
+{
+ "@metadata": {
+ "authors": [
+ "Ahmed-Najib-Biabani-Ibrahimkhel"
+ ]
+ },
+ "uls-select-language": "ژبه ټاکل",
+ "uls-region-WW": "نړېوال",
+ "uls-region-SP": "ځانگړی",
+ "uls-region-AM": "امريکا",
+ "uls-region-AF": "افريقا",
+ "uls-region-EU": "اروپا",
+ "uls-region-AS": "آسيا",
+ "uls-region-ME": "منځنی ختيځ",
+ "uls-region-PA": "غلی سمندر",
+ "uls-no-results-found": "پايلې و نه موندل شوې",
+ "uls-common-languages": "دودې ژبې",
+ "uls-no-results-suggestion-title": "کېدای شي تاسې يې لېواله اوسۍ:",
+ "uls-search-help": "تاسې د ژبې د نوم له مخې، د سکرېپټ نوم، د ژبې د ISO کوډ له مخې او يا هم د سيمې له مخې پلټنې کړلی شی:",
+ "uls-search-placeholder": "د ژبې پلټنه"
+}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/pt-br.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/pt-br.json
new file mode 100644
index 00000000..362335d5
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/pt-br.json
@@ -0,0 +1,22 @@
+{
+ "@metadata": {
+ "authors": [
+ "Tuliouel",
+ "Amgauna"
+ ]
+ },
+ "uls-select-language": "Selecionar um idioma",
+ "uls-region-WW": "Globais",
+ "uls-region-SP": "Especiais",
+ "uls-region-AM": "América",
+ "uls-region-AF": "África",
+ "uls-region-EU": "Europa",
+ "uls-region-AS": "Ásia",
+ "uls-region-ME": "Oriente Médio",
+ "uls-region-PA": "Pacífico",
+ "uls-no-results-found": "Nenhum resultado encontrado",
+ "uls-common-languages": "Idiomas comuns",
+ "uls-no-results-suggestion-title": "Você pode interessar-se por:",
+ "uls-search-help": "Você pode procurar por idioma, família linguística, código ISO do idioma ou área geográfica:",
+ "uls-search-placeholder": "Procurar idioma"
+}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/pt.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/pt.json
new file mode 100644
index 00000000..e566a107
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/pt.json
@@ -0,0 +1,22 @@
+{
+ "@metadata": {
+ "authors": [
+ "Sarilho1",
+ "Waldir"
+ ]
+ },
+ "uls-select-language": "Escolha a língua",
+ "uls-region-WW": "Global",
+ "uls-region-SP": "Especiais",
+ "uls-region-AM": "América",
+ "uls-region-AF": "África",
+ "uls-region-EU": "Europa",
+ "uls-region-AS": "Ásia",
+ "uls-region-ME": "Médio Oriente",
+ "uls-region-PA": "Pacífico",
+ "uls-no-results-found": "Não foram encontrados resultados",
+ "uls-common-languages": "Línguas comuns",
+ "uls-no-results-suggestion-title": "Você pode estar interessado em:",
+ "uls-search-help": "Você pode pesquisar pwlo nome da língua, o nome do alfabeto, código ISO da língua, ou você pode procurar por região:",
+ "uls-search-placeholder": "Procurar língua"
+}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/qqq.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/qqq.json
new file mode 100644
index 00000000..0e213ba8
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/qqq.json
@@ -0,0 +1,23 @@
+{
+ "@metadata": {
+ "authors": [
+ "Amire80",
+ "Nike",
+ "Shirayuki"
+ ]
+ },
+ "uls-select-language": "Language Selector Title.\n{{Identical|Select language}}",
+ "uls-region-WW": "Label for worldwide languages. They are languages spoken in multiple countries. Eg: English, French, Spanish etc. This label is used in the map region of ULS and as the title of section showing worldwide languages. Translation should not be descriptive.",
+ "uls-region-SP": "Label for the special languages section. This section may include special custom languages that can be added in run time. It's shown after the Worldwide section.\n\nThe special language is everything that isn't a real language. Like code qqq or qqx.\n{{Identical|Special}}",
+ "uls-region-AM": "Label for America",
+ "uls-region-AF": "Label for Africa",
+ "uls-region-EU": "Label for Europe",
+ "uls-region-AS": "Label for Asia",
+ "uls-region-ME": "Label for Middle East",
+ "uls-region-PA": "Label for Pacific",
+ "uls-no-results-found": "Title text for 'No results found' section",
+ "uls-common-languages": "The ULS tries to guess the langugages that the user is most likely to pick. They are taken from geolocation (languages of the current country according to the IP address), previously selected languages, and the browser's accept-language. The list of these languages appears at the top of the ULS languages list, above the geographical regions. This is the title of that list.",
+ "uls-no-results-suggestion-title": "Title for language suggestion in 'no results found' screen",
+ "uls-search-help": "Help text for searching. After this text, there will be a set of links for regions.\n\n\"Script name\" is a name of a writing system, such as \"Latin\", \"Cyrillic\", \"Arabic\" etc.",
+ "uls-search-placeholder": "Placeholder text in search box"
+}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ro.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ro.json
new file mode 100644
index 00000000..a5017706
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ro.json
@@ -0,0 +1,21 @@
+{
+ "@metadata": {
+ "authors": [
+ "Minisarm"
+ ]
+ },
+ "uls-select-language": "Selectare limbă",
+ "uls-region-WW": "La nivel mondial",
+ "uls-region-SP": "Speciale",
+ "uls-region-AM": "America",
+ "uls-region-AF": "Africa",
+ "uls-region-EU": "Europa",
+ "uls-region-AS": "Asia",
+ "uls-region-ME": "Orientul Mijlociu",
+ "uls-region-PA": "Oceania",
+ "uls-no-results-found": "Niciun rezultat găsit",
+ "uls-common-languages": "Limbi comune",
+ "uls-no-results-suggestion-title": "Ați putea fi interesat de:",
+ "uls-search-help": "Puteți căuta după numele limbii, numele scrierii, codul ISO al limbii sau puteți răsfoi în funcție de regiune:",
+ "uls-search-placeholder": "Căutare limbă"
+}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ru.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ru.json
new file mode 100644
index 00000000..8fb52248
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ru.json
@@ -0,0 +1,24 @@
+{
+ "@metadata": {
+ "authors": [
+ "Amire80",
+ "Bouron",
+ "Eleferen",
+ "Kaganer"
+ ]
+ },
+ "uls-select-language": "Выбор языка",
+ "uls-region-WW": "Всемирные",
+ "uls-region-SP": "Специальные",
+ "uls-region-AM": "Америка",
+ "uls-region-AF": "Африка",
+ "uls-region-EU": "Европа",
+ "uls-region-AS": "Азия",
+ "uls-region-ME": "Ближний Восток",
+ "uls-region-PA": "Океания",
+ "uls-no-results-found": "Не найдено",
+ "uls-common-languages": "Автоматически подобранные языки",
+ "uls-no-results-suggestion-title": "Может быть вас заинтересуют эти языки:",
+ "uls-search-help": "Можно искать по названия языка или письменности, по ISO-коду языка или просмотреть по региону:",
+ "uls-search-placeholder": "Поиск языка"
+}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/rup.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/rup.json
new file mode 100644
index 00000000..d6233a51
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/rup.json
@@ -0,0 +1,21 @@
+{
+ "@metadata": {
+ "authors": [
+ "D'AroemenenZullenNiVergaan"
+ ]
+ },
+ "uls-select-language": "Aleadziri limbâ",
+ "uls-region-WW": "Tu tutâ lumea",
+ "uls-region-SP": "Alepțâ",
+ "uls-region-AM": "Americhie",
+ "uls-region-AF": "Africa",
+ "uls-region-EU": "Evropa",
+ "uls-region-AS": "Asia",
+ "uls-region-ME": "Apreasa Mulgicanâ (di ńioldzuc)",
+ "uls-region-PA": "Pacificu",
+ "uls-no-results-found": "S-aflarâ țiva rezultati",
+ "uls-common-languages": "Limbi comuni",
+ "uls-no-results-suggestion-title": "S-poati s-ai sinferu (s-hii ntirisatu) trâ:",
+ "uls-search-help": "Poți s-lu cafțâ dupu numa limbâľei, numa scriariľei, codul ISO a limbâľei icâ poți s-li vedz dupu regiuni:",
+ "uls-search-placeholder": "Câftari limbâ"
+}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/sc.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/sc.json
new file mode 100644
index 00000000..5247c238
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/sc.json
@@ -0,0 +1,21 @@
+{
+ "@metadata": {
+ "authors": [
+ "L2212"
+ ]
+ },
+ "uls-select-language": "Issèbera sa limba",
+ "uls-region-WW": "Totu su mundu",
+ "uls-region-SP": "Ispetziales",
+ "uls-region-AM": "Amèrica",
+ "uls-region-AF": "Àfrica",
+ "uls-region-EU": "Europa",
+ "uls-region-AS": "Àsia",
+ "uls-region-ME": "Oriènte de mesu.",
+ "uls-region-PA": "Patzìficu",
+ "uls-no-results-found": "Mancu unu resurtu agatau",
+ "uls-common-languages": "Limbas prus isseberas.",
+ "uls-no-results-suggestion-title": "Podes essere interessadu in:",
+ "uls-search-help": "Podes chircare tràmite nùmene de sa limba, nùmene de su script, còdighe ISO de sa limba o navigare tràmite regione:",
+ "uls-search-placeholder": "Chirca de sa limba:"
+}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/sco.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/sco.json
new file mode 100644
index 00000000..7af81b09
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/sco.json
@@ -0,0 +1,21 @@
+{
+ "@metadata": {
+ "authors": [
+ "John Reid"
+ ]
+ },
+ "uls-select-language": "Pick yer leid",
+ "uls-region-WW": "Worldwide",
+ "uls-region-SP": "Speecial",
+ "uls-region-AM": "Americae",
+ "uls-region-AF": "Afreeca",
+ "uls-region-EU": "Europ",
+ "uls-region-AS": "Asia",
+ "uls-region-ME": "Middle Eist",
+ "uls-region-PA": "Paceefic",
+ "uls-no-results-found": "Nae results foond",
+ "uls-common-languages": "Commyn leids",
+ "uls-no-results-suggestion-title": "Ye micht hae aen intrest in:",
+ "uls-search-help": "Ye can rake bi leid name, script name, ISO code o leid or ye can brouse bi region:",
+ "uls-search-placeholder": "Leid rake"
+}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/si.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/si.json
new file mode 100644
index 00000000..9abdf885
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/si.json
@@ -0,0 +1,22 @@
+{
+ "@metadata": {
+ "authors": [
+ "පසිඳු කාවින්ද",
+ "හරිත"
+ ]
+ },
+ "uls-select-language": "භාෂාව තෝරන්න",
+ "uls-region-WW": "ලෝක ව්‍යාප්ත",
+ "uls-region-SP": "විශේෂ",
+ "uls-region-AM": "ඇමෙරිකාව",
+ "uls-region-AF": "අප්‍රිකාව",
+ "uls-region-EU": "යුරෝපය",
+ "uls-region-AS": "ආසියාව",
+ "uls-region-ME": "මැද පෙරදිග",
+ "uls-region-PA": "පැසිෆික්",
+ "uls-no-results-found": "ප්‍රතිඑල හමු නොවුණි",
+ "uls-common-languages": "පොදු භාෂා",
+ "uls-no-results-suggestion-title": "ඔබ සමහර විට කැමති වේවි:",
+ "uls-search-help": "ඔබට භාෂා නාමය, පිටපත් නාමය, භාෂාවේ අයීඑස්ඕ කේතය මගින් සෙවිය හැක නැතහොත් ඔබට ප්‍රදේශය අනුව සෙවිය හැක:",
+ "uls-search-placeholder": "බස සෙවීම"
+}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/sk.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/sk.json
new file mode 100644
index 00000000..bf9dddcb
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/sk.json
@@ -0,0 +1,22 @@
+{
+ "@metadata": {
+ "authors": [
+ "Rudko",
+ "Jaroslav.micek"
+ ]
+ },
+ "uls-select-language": "Vyber jazyk",
+ "uls-region-WW": "Po celom svete",
+ "uls-region-SP": "Špeciálne",
+ "uls-region-AM": "Amerika",
+ "uls-region-AF": "Afrika",
+ "uls-region-EU": "Európa",
+ "uls-region-AS": "Ázia",
+ "uls-region-ME": "Blízky východ",
+ "uls-region-PA": "Pacifik",
+ "uls-no-results-found": "Neboli nájdené žiadne výsledky",
+ "uls-common-languages": "Jazyky",
+ "uls-no-results-suggestion-title": "Mohlo by Vás zaujímať:",
+ "uls-search-help": "Môžete vyhľadávať podľa názvu jazyka, názvu písma, ISO kódu jazyka alebo môžete prechádzať po regiónoch:",
+ "uls-search-placeholder": "Vyhľadávanie jazyka"
+}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/sl.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/sl.json
new file mode 100644
index 00000000..647908fa
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/sl.json
@@ -0,0 +1,23 @@
+{
+ "@metadata": {
+ "authors": [
+ "Dbc334",
+ "Irena Plahuta",
+ "Mateju"
+ ]
+ },
+ "uls-select-language": "Izbor jezika",
+ "uls-region-WW": "Svetovni jeziki",
+ "uls-region-SP": "Posebni",
+ "uls-region-AM": "Amerika",
+ "uls-region-AF": "Afrika",
+ "uls-region-EU": "Evropa",
+ "uls-region-AS": "Azija",
+ "uls-region-ME": "Bližnji vzhod",
+ "uls-region-PA": "Tihi ocean",
+ "uls-no-results-found": "Ni zadetkov",
+ "uls-common-languages": "Splošni jeziki",
+ "uls-no-results-suggestion-title": "Morda vas zanima:",
+ "uls-search-help": "Iščete lahko po imenu jezika, imenu pisave, jezikovni kodi ISO ali po področju:",
+ "uls-search-placeholder": "Iskanje jezikov"
+}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/sr-ec.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/sr-ec.json
new file mode 100644
index 00000000..fb7526aa
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/sr-ec.json
@@ -0,0 +1,22 @@
+{
+ "@metadata": {
+ "authors": [
+ "Rancher",
+ "Milicevic01"
+ ]
+ },
+ "uls-select-language": "Одабир језика",
+ "uls-region-WW": "Светски",
+ "uls-region-SP": "Посебно",
+ "uls-region-AM": "Америка",
+ "uls-region-AF": "Африка",
+ "uls-region-EU": "Европа",
+ "uls-region-AS": "Азија",
+ "uls-region-ME": "Блиски исток",
+ "uls-region-PA": "Пацифик",
+ "uls-no-results-found": "Нема резултата",
+ "uls-common-languages": "Аутоматски изабрани језици",
+ "uls-no-results-suggestion-title": "Можда вас интересује:",
+ "uls-search-help": "Можете да тражите по имену језика или писма, по ISO коду језика или пак по региону:",
+ "uls-search-placeholder": "Претрага језика"
+}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/sr-el.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/sr-el.json
new file mode 100644
index 00000000..c72afe8b
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/sr-el.json
@@ -0,0 +1,22 @@
+{
+ "@metadata": {
+ "authors": [
+ "Rancher",
+ "Milicevic01"
+ ]
+ },
+ "uls-select-language": "Odabir jezika",
+ "uls-region-WW": "Svetski",
+ "uls-region-SP": "Posebno",
+ "uls-region-AM": "Amerika",
+ "uls-region-AF": "Afrika",
+ "uls-region-EU": "Evropa",
+ "uls-region-AS": "Azija",
+ "uls-region-ME": "Bliski istok",
+ "uls-region-PA": "Pacifik",
+ "uls-no-results-found": "Nema rezultata",
+ "uls-common-languages": "Automatski izabrani jezici",
+ "uls-no-results-suggestion-title": "Možda vas interesuje:",
+ "uls-search-help": "Možete da tražite po imenu jezika ili pisma, po ISO kodu jezika ili pak po regionu:",
+ "uls-search-placeholder": "Pretraga jezika"
+}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/sv.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/sv.json
new file mode 100644
index 00000000..13e98987
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/sv.json
@@ -0,0 +1,22 @@
+{
+ "@metadata": {
+ "authors": [
+ "Cybjit",
+ "WikiPhoenix"
+ ]
+ },
+ "uls-select-language": "Välj språk",
+ "uls-region-WW": "Världsomfattande",
+ "uls-region-SP": "Speciella",
+ "uls-region-AM": "Amerika",
+ "uls-region-AF": "Afrika",
+ "uls-region-EU": "Europa",
+ "uls-region-AS": "Asien",
+ "uls-region-ME": "Mellanöstern",
+ "uls-region-PA": "Stilla havet",
+ "uls-no-results-found": "Inga resultat hittades",
+ "uls-common-languages": "Vanliga språk",
+ "uls-no-results-suggestion-title": "Du kan vara intresserad av:",
+ "uls-search-help": "Du kan söka efter språkets namn, skriptnamn, ISO-koden för språket eller bläddra efter region:",
+ "uls-search-placeholder": "Språksökning"
+}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/sw.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/sw.json
new file mode 100644
index 00000000..ceb65864
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/sw.json
@@ -0,0 +1,22 @@
+{
+ "@metadata": {
+ "authors": [
+ "Lloffiwr",
+ "Muddyb Blast Producer"
+ ]
+ },
+ "uls-select-language": "Chagua lugha",
+ "uls-region-WW": "Dunia nzima",
+ "uls-region-SP": "Maalumu",
+ "uls-region-AM": "Marekani",
+ "uls-region-AF": "Afrika",
+ "uls-region-EU": "Ulaya",
+ "uls-region-AS": "Asia",
+ "uls-region-ME": "Mashariki ya Kati",
+ "uls-region-PA": "Pasifiki",
+ "uls-no-results-found": "Hakuna matokeo",
+ "uls-common-languages": "Lugha za kawaida",
+ "uls-no-results-suggestion-title": "Pengine unaweza kuvutiwa na:",
+ "uls-search-help": "Unaweza kutafuta kwa jina la lugha, jina la maandishi, msimbo wa ISO wa lugha, ama unaweza kutafuta kwa eneo.",
+ "uls-search-placeholder": "Tafuta lugha"
+}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ta.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ta.json
new file mode 100644
index 00000000..363f926d
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ta.json
@@ -0,0 +1,24 @@
+{
+ "@metadata": {
+ "authors": [
+ "Kanags",
+ "Logicwiki",
+ "Santhosh.thottingal",
+ "ElangoRamanujam"
+ ]
+ },
+ "uls-select-language": "மொழி தேர்வு",
+ "uls-region-WW": "உலகளாவிய",
+ "uls-region-SP": "சிறப்பு",
+ "uls-region-AM": "அமெரிக்கா",
+ "uls-region-AF": "ஆப்பிரிக்கா",
+ "uls-region-EU": "ஐரோப்பா",
+ "uls-region-AS": "ஆசியா",
+ "uls-region-ME": "மத்திய கிழக்கு",
+ "uls-region-PA": "பசிபிக்",
+ "uls-no-results-found": "முடிவுகள் எதுவும் காணப்படவில்லை",
+ "uls-common-languages": "பொதுவான மொழிகள்",
+ "uls-no-results-suggestion-title": "நீங்கள் இவற்றில் ஆர்வமாக இருக்கலாம்:",
+ "uls-search-help": "மொழியின் பெயர், எழுத்து வடிவம், ISO குறியீடு முலம் தேடலாம் அல்லது பகுதிவாரியாக உலவலாம்",
+ "uls-search-placeholder": "மொழி தேடு"
+}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/te.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/te.json
new file mode 100644
index 00000000..1c4a86da
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/te.json
@@ -0,0 +1,22 @@
+{
+ "@metadata": {
+ "authors": [
+ "JVRKPRASAD",
+ "Veeven"
+ ]
+ },
+ "uls-select-language": "భాషను ఎంచుకోండి",
+ "uls-region-WW": "ప్రపంచవ్యాప్తం",
+ "uls-region-SP": "ప్రత్యేకం",
+ "uls-region-AM": "అమెరికా",
+ "uls-region-AF": "ఆఫ్రికా",
+ "uls-region-EU": "ఐరోపా",
+ "uls-region-AS": "ఆసియా",
+ "uls-region-ME": "మధ్య తూర్పు",
+ "uls-region-PA": "పసిఫిక్",
+ "uls-no-results-found": "ఫలితాలేమీ దొరకలేదు",
+ "uls-common-languages": "సామాన్య భాషలు",
+ "uls-no-results-suggestion-title": "మీకు దీనిలో ఆసక్తి ఉండవచ్చు:",
+ "uls-search-help": "మీరు భాష పేరు, స్క్రిప్ట్ పేరు, భాష యొక్క ISO కోడ్ ద్వారా శోధించవచ్చు లేదా మీరు ప్రాంతము ద్వారా బ్రౌజ్ చెయ్యవచ్చు(ను):",
+ "uls-search-placeholder": "భాష కొరకు వెతకండి"
+}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/th.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/th.json
new file mode 100644
index 00000000..b4ee879e
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/th.json
@@ -0,0 +1,21 @@
+{
+ "@metadata": {
+ "authors": [
+ "Octahedron80"
+ ]
+ },
+ "uls-select-language": "เลือกภาษา",
+ "uls-region-WW": "ทั่วโลก",
+ "uls-region-SP": "พิเศษ",
+ "uls-region-AM": "อเมริกา",
+ "uls-region-AF": "แอฟริกา",
+ "uls-region-EU": "ยุโรป",
+ "uls-region-AS": "เอเชีย",
+ "uls-region-ME": "ตะวันออกกลาง",
+ "uls-region-PA": "แปซิฟิก",
+ "uls-no-results-found": "ไม่พบผลลัพธ์",
+ "uls-common-languages": "ภาษาสามัญ",
+ "uls-no-results-suggestion-title": "คุณอาจสนใจใน:",
+ "uls-search-help": "คุณสามารถค้นหาด้วยชื่อภาษา ชื่ออักษร รหัส ISO ของภาษา หรือสามารถเรียกดูตามภูมิภาค:",
+ "uls-search-placeholder": "ค้นหาภาษา"
+}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/tly.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/tly.json
new file mode 100644
index 00000000..c2aa29dc
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/tly.json
@@ -0,0 +1,16 @@
+{
+ "@metadata": {
+ "authors": [
+ "Erdemaslancan",
+ "Гусейн"
+ ]
+ },
+ "uls-select-language": "Зывони выжније",
+ "uls-region-AM": "Америка",
+ "uls-region-AF": "Африка",
+ "uls-region-EU": "Авропа",
+ "uls-no-results-found": "Һичи пәјдо быәни",
+ "uls-common-languages": "Выжнијә быә зывонон",
+ "uls-no-results-suggestion-title": "Бәзне бе ки бо шымә марағинин ын зывонон:",
+ "uls-search-placeholder": "Зывони ныве"
+}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/tr.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/tr.json
new file mode 100644
index 00000000..f9067071
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/tr.json
@@ -0,0 +1,23 @@
+{
+ "@metadata": {
+ "authors": [
+ "Emperyan",
+ "Erdemaslancan",
+ "Sadrettin"
+ ]
+ },
+ "uls-select-language": "Dil Seçin",
+ "uls-region-WW": "Dünya çapında",
+ "uls-region-SP": "Özel",
+ "uls-region-AM": "Amerika",
+ "uls-region-AF": "Afrika",
+ "uls-region-EU": "Avrupa",
+ "uls-region-AS": "Asya",
+ "uls-region-ME": "Orta Doğu",
+ "uls-region-PA": "Pasifik",
+ "uls-no-results-found": "Sonuç bulunamadı",
+ "uls-common-languages": "Ortak diller",
+ "uls-no-results-suggestion-title": "İlginizi çekebilir:",
+ "uls-search-help": "Dil adına, betik adına, dilin ISO koduna göre arama yapabilirsiniz ya da bölgeye göre tarayabilirsiniz:",
+ "uls-search-placeholder": "Dil ara"
+}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/tt-cyrl.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/tt-cyrl.json
new file mode 100644
index 00000000..b1e9da29
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/tt-cyrl.json
@@ -0,0 +1,22 @@
+{
+ "@metadata": {
+ "authors": [
+ "Ajdar",
+ "Ильнар"
+ ]
+ },
+ "uls-select-language": "Тел сайлау",
+ "uls-region-WW": "Бөтендөнья",
+ "uls-region-SP": "Махсус",
+ "uls-region-AM": "Америка",
+ "uls-region-AF": "Африка",
+ "uls-region-EU": "Аурупа",
+ "uls-region-AS": "Азия",
+ "uls-region-ME": "Якын Көнчыгыш",
+ "uls-region-PA": "Океания",
+ "uls-no-results-found": "Бернидә табылмады",
+ "uls-common-languages": "Автоматик сайланган телләр",
+ "uls-no-results-suggestion-title": "Бәлки сезне бу телләр кызыксындырыр:",
+ "uls-search-help": "Телнең исеме яисә әлифбасы, телнең ISO-коды яки өлкәсе буенча эзләргә мөмкин:",
+ "uls-search-placeholder": "Эзләү теле"
+}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/tzm.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/tzm.json
new file mode 100644
index 00000000..41703dba
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/tzm.json
@@ -0,0 +1,15 @@
+{
+ "@metadata": {
+ "authors": [
+ "Tifinaghes"
+ ]
+ },
+ "uls-select-language": "ⵙⵜⵉ ⵜⵓⵜⵍⴰⵢⵜ",
+ "uls-region-WW": "ⵎⴰⵕⵕⴰ ⴰⵎⴰⴹⴰⵍ",
+ "uls-region-AM": "ⴰⵎⵔⵉⴽⴰ",
+ "uls-region-AF": "ⵉⴼⵔⵉⵇⵢⴰ",
+ "uls-region-EU": "ⵜⵓⵔⵓⴼⵜ (Europe)",
+ "uls-region-AS": "ⴰⵙⵢⴰ",
+ "uls-common-languages": "ⵜⵓⵜⵍⴰⵢⵉⵏ ⵉⴷⵔⵓⵏ",
+ "uls-search-placeholder": "ⵜⵓⵜⵍⴰⵢⵜ ⵓⵔⵣⵣⵓ"
+}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ug-arab.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ug-arab.json
new file mode 100644
index 00000000..1423a162
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/ug-arab.json
@@ -0,0 +1,21 @@
+{
+ "@metadata": {
+ "authors": [
+ "Tel'et"
+ ]
+ },
+ "uls-select-language": "تىل تاللاڭ",
+ "uls-region-WW": "دۇنيادا",
+ "uls-region-SP": "ئالاھىدە",
+ "uls-region-AM": "ئامېرىكا",
+ "uls-region-AF": "ئافرىقا",
+ "uls-region-EU": "ياۋروپا",
+ "uls-region-AS": "ئاسىيا",
+ "uls-region-ME": "ئوتتۇرا شەرق",
+ "uls-region-PA": "ئاتلانتىك",
+ "uls-no-results-found": "نەتىجە تېپىلمىدى",
+ "uls-common-languages": "ئورتاق تىللار",
+ "uls-no-results-suggestion-title": "سىزنى بەلكىم قىزىقتۇرۇشى مۇمكىن:",
+ "uls-search-help": "سىز تىل نامى بويىچە، يېزىق شەكلى نامى بويىچە، تىلنىڭ ISO كودى بويىچە ئىزدىيەلەيسىز ياكى رايون بويىچە كۆرەلەيسىز:",
+ "uls-search-placeholder": "تىل ئىزدە"
+}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/uk.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/uk.json
new file mode 100644
index 00000000..4804ed8d
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/uk.json
@@ -0,0 +1,22 @@
+{
+ "@metadata": {
+ "authors": [
+ "Andriykopanytsia",
+ "Base"
+ ]
+ },
+ "uls-select-language": "Оберіть мову",
+ "uls-region-WW": "Всесвітні",
+ "uls-region-SP": "Спеціальні",
+ "uls-region-AM": "Америка",
+ "uls-region-AF": "Африка",
+ "uls-region-EU": "Європа",
+ "uls-region-AS": "Азія",
+ "uls-region-ME": "Близький Схід",
+ "uls-region-PA": "Океанія",
+ "uls-no-results-found": "Не знайдено результатів",
+ "uls-common-languages": "Поширені мови",
+ "uls-no-results-suggestion-title": "Ви можете бути зацікавленими у:",
+ "uls-search-help": "Ви можете шукати за назвою мови або писемності, ISO-коду мови, або Ви можете переглянути за регіонами:",
+ "uls-search-placeholder": "Мова пошуку"
+}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/uz.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/uz.json
new file mode 100644
index 00000000..bcf10a47
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/uz.json
@@ -0,0 +1,24 @@
+{
+ "@metadata": {
+ "authors": [
+ "Akmalzhon",
+ "CoderSI",
+ "Nataev",
+ "6ahodir"
+ ]
+ },
+ "uls-select-language": "Tilni tanlash",
+ "uls-region-WW": "Butun jahon",
+ "uls-region-SP": "Maxsus",
+ "uls-region-AM": "Amerika",
+ "uls-region-AF": "Afrika",
+ "uls-region-EU": "Yevropa",
+ "uls-region-AS": "Osiyo",
+ "uls-region-ME": "Yaqin Sharq",
+ "uls-region-PA": "Okeaniya",
+ "uls-no-results-found": "Natija topilmadi",
+ "uls-common-languages": "Avtomatik tanlangan tillar",
+ "uls-no-results-suggestion-title": "Sizni qiziqtirishi mumkin:",
+ "uls-search-help": "Til hamda yozuv nomi yoki ISO kod bilan izlashingiz mumkin. Hudud boʻyicha koʻrib chiqishingiz ham mumkin.",
+ "uls-search-placeholder": "Qidiruv tili"
+}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/vec.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/vec.json
new file mode 100644
index 00000000..fbd70aa0
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/vec.json
@@ -0,0 +1,21 @@
+{
+ "@metadata": {
+ "authors": [
+ "GatoSelvadego"
+ ]
+ },
+ "uls-select-language": "Sełesiona lengua",
+ "uls-region-WW": "Tuto el mondo",
+ "uls-region-SP": "Speciałi",
+ "uls-region-AM": "Mèrica",
+ "uls-region-AF": "Àfrica",
+ "uls-region-EU": "Eoropa",
+ "uls-region-AS": "Axia",
+ "uls-region-ME": "Levante mexan",
+ "uls-region-PA": "Pasifego",
+ "uls-no-results-found": "Nisun rixultado",
+ "uls-common-languages": "Lengue pì sielte",
+ "uls-no-results-suggestion-title": "Te pol èsar interesà a:",
+ "uls-search-help": "Xe posibiłe sercar par nome, nome del script, còdexe ISO de ła lengua o se pol navegar par region:",
+ "uls-search-placeholder": "Serca lengua"
+}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/vep.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/vep.json
new file mode 100644
index 00000000..4a4ceb9d
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/vep.json
@@ -0,0 +1,21 @@
+{
+ "@metadata": {
+ "authors": [
+ "Игорь Бродский"
+ ]
+ },
+ "uls-select-language": "Valita kel'",
+ "uls-region-WW": "Kaikjal",
+ "uls-region-SP": "Specialine",
+ "uls-region-AM": "Amerik",
+ "uls-region-AF": "Afrik",
+ "uls-region-EU": "Evrop",
+ "uls-region-AS": "Azii",
+ "uls-region-ME": "Keskmäine Päivnouzmpol'",
+ "uls-region-PA": "Okeanii",
+ "uls-no-results-found": "Ei ole rezul'tatoid",
+ "uls-common-languages": "Ühthižed keled",
+ "uls-no-results-suggestion-title": "Teile voiži tartta mel'he:",
+ "uls-search-help": "Tö voit ecmäha kelen, skriptannimen, kelen ISO-kodan mödhe, vai valita regioniden mödhe:",
+ "uls-search-placeholder": "Kelenecmine"
+}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/vi.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/vi.json
new file mode 100644
index 00000000..61c225a0
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/vi.json
@@ -0,0 +1,22 @@
+{
+ "@metadata": {
+ "authors": [
+ "Minh Nguyen",
+ "Tuankiet65"
+ ]
+ },
+ "uls-select-language": "Chọn ngôn ngữ",
+ "uls-region-WW": "Toàn cầu",
+ "uls-region-SP": "Đặc biệt",
+ "uls-region-AM": "Châu Mỹ",
+ "uls-region-AF": "Châu Phi",
+ "uls-region-EU": "Châu Âu",
+ "uls-region-AS": "Châu Á",
+ "uls-region-ME": "Trung Đông",
+ "uls-region-PA": "Châu Đại Dương",
+ "uls-no-results-found": "Không tìm thấy kết quả",
+ "uls-common-languages": "Ngôn ngữ thông dụng",
+ "uls-no-results-suggestion-title": "Bạn có thể quan tâm:",
+ "uls-search-help": "Bạn có thể tìm kiếm theo tên ngôn ngữ, tên hệ thống chữ viết, hay mã ISO của ngôn ngữ hoặc duyệt theo khu vực:",
+ "uls-search-placeholder": "Tìm kiếm ngôn ngữ"
+}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/war.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/war.json
new file mode 100644
index 00000000..7427f105
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/war.json
@@ -0,0 +1,22 @@
+{
+ "@metadata": {
+ "authors": [
+ "Harvzsf",
+ "Wiki indio"
+ ]
+ },
+ "uls-select-language": "Pili-a an Pinulongan",
+ "uls-region-WW": "ha Kalibutan",
+ "uls-region-SP": "Pinaurog",
+ "uls-region-AM": "Amerika",
+ "uls-region-AF": "Afrika",
+ "uls-region-EU": "Europa",
+ "uls-region-AS": "Asya",
+ "uls-region-ME": "Butnga nga Sinirangan / Katundan nga Asya",
+ "uls-region-PA": "Pasipiko",
+ "uls-no-results-found": "Waray mga resulta nga nabilngan",
+ "uls-common-languages": "Mga komun o ginsasaroan nga mga pinulongan",
+ "uls-no-results-suggestion-title": "Bangin ka ma-intersado hin:",
+ "uls-search-help": "Puyde ka magbiling ha kanan ngaran han pinulongan, ngaran han paagi hin pagsurat, ISO nga kodigo han pinulongan o puyde ka magdalikyat ha kanan rehiyon",
+ "uls-search-placeholder": "Paghanap han yinaknan"
+}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/zh-hans.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/zh-hans.json
new file mode 100644
index 00000000..bb90fed8
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/zh-hans.json
@@ -0,0 +1,23 @@
+{
+ "@metadata": {
+ "authors": [
+ "Xiaomingyan",
+ "Yfdyh000",
+ "Liuxinyu970226"
+ ]
+ },
+ "uls-select-language": "选择语言",
+ "uls-region-WW": "世界各地",
+ "uls-region-SP": "特别",
+ "uls-region-AM": "美洲",
+ "uls-region-AF": "非洲",
+ "uls-region-EU": "欧洲",
+ "uls-region-AS": "亚洲",
+ "uls-region-ME": "中东",
+ "uls-region-PA": "太平洋",
+ "uls-no-results-found": "无搜索结果",
+ "uls-common-languages": "常用语言",
+ "uls-no-results-suggestion-title": "你可能感兴趣:",
+ "uls-search-help": "你可以按语言名称、文字名称、语言的ISO代码搜索,或按地区浏览:",
+ "uls-search-placeholder": "语言搜索"
+}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/zh-hant.json b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/zh-hant.json
new file mode 100644
index 00000000..e4a6e936
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/i18n/zh-hant.json
@@ -0,0 +1,22 @@
+{
+ "@metadata": {
+ "authors": [
+ "Justincheng12345",
+ "Simon Shek"
+ ]
+ },
+ "uls-select-language": "選擇語言",
+ "uls-region-WW": "全世界",
+ "uls-region-SP": "特別",
+ "uls-region-AM": "美洲",
+ "uls-region-AF": "非洲",
+ "uls-region-EU": "歐洲",
+ "uls-region-AS": "亞洲",
+ "uls-region-ME": "中東",
+ "uls-region-PA": "太平洋",
+ "uls-no-results-found": "找不到任何結果",
+ "uls-common-languages": "常用語言",
+ "uls-no-results-suggestion-title": "您可能感興趣:",
+ "uls-search-help": "您可以按語言名稱、程式碼名稱、語言ISO代碼搜索,或您亦可按區域瀏覽:",
+ "uls-search-placeholder": "搜尋語言"
+}
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/images/clear.png b/MLEB/UniversalLanguageSelector/lib/jquery.uls/images/clear.png
new file mode 100644
index 00000000..f900e7d4
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/images/clear.png
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/images/clear.svg b/MLEB/UniversalLanguageSelector/lib/jquery.uls/images/clear.svg
new file mode 100644
index 00000000..6ca59c28
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/images/clear.svg
@@ -0,0 +1 @@
+<?xml version="1.0" encoding="UTF-8"?><svg xmlns="http://www.w3.org/2000/svg" width="12.52" height="12.52"><rect width="1.688" height="16.018" x="-.844" y=".844" transform="rotate(-45)" fill="#555"/><rect width="1.688" height="16.018" x="8.009" y="-8.009" transform="rotate(45)" fill="#555"/></svg> \ No newline at end of file
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/images/close.png b/MLEB/UniversalLanguageSelector/lib/jquery.uls/images/close.png
new file mode 100644
index 00000000..84631c3d
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/images/close.png
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/images/close.svg b/MLEB/UniversalLanguageSelector/lib/jquery.uls/images/close.svg
new file mode 100644
index 00000000..b39a0ff7
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/images/close.svg
@@ -0,0 +1 @@
+<?xml version="1.0" encoding="UTF-8"?><svg xmlns="http://www.w3.org/2000/svg" width="13.592" height="13.592"><g transform="translate(-578.659 -309.301)" fill="#555"><rect width="3.204" height="16.018" x="188.862" y="629.484" transform="rotate(-45)"/><rect width="3.204" height="16.018" x="-639.095" y="182.455" transform="matrix(-.707 -.707 .707 -.707 0 0)"/></g></svg> \ No newline at end of file
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/images/icon-language.png b/MLEB/UniversalLanguageSelector/lib/jquery.uls/images/icon-language.png
new file mode 100644
index 00000000..d1f13178
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/images/icon-language.png
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/images/icon-language.svg b/MLEB/UniversalLanguageSelector/lib/jquery.uls/images/icon-language.svg
new file mode 100644
index 00000000..9f439beb
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/images/icon-language.svg
@@ -0,0 +1 @@
+<?xml version="1.0" encoding="UTF-8"?><svg xmlns="http://www.w3.org/2000/svg" width="27" height="16"><path fill="#D3E3F4" d="M0 0h11.876v16h-11.876v-16z"/><path fill="#E9E9E9" d="M12.819 0v15.969h10.755c1.085-2.578 1.837-4.991 3.062-8.591l-3.062-7.378h-10.755z"/><path fill="#434343" d="M14.828 4.146c.32.023.639.035.951.035.471 0 .922-.016 1.354-.046l.023-.258.034-.367.081-.711.033-.333.873.058c-.073.577-.133 1.091-.179 1.542 1.116-.119 2.233-.331 3.349-.637l.092.809c-1.078.271-2.251.472-3.521.602-.05.463-.082.968-.098 1.514.524-.187 1.14-.313 1.847-.378.064-.207.136-.461.213-.763l.865.201c-.027.123-.088.315-.184.579.814.104 1.461.34 1.938.711.681.542 1.021 1.252 1.021 2.128 0 .963-.406 1.746-1.221 2.351-.635.47-1.505.784-2.609.94l-.505-.779c.968-.104 1.739-.337 2.317-.7.733-.458 1.101-1.066 1.101-1.823 0-.772-.341-1.363-1.021-1.772-.345-.21-.764-.344-1.256-.401-.604 1.422-1.4 2.598-2.387 3.527.035.352.102.715.201 1.09l-.849.314-.126-.773c-.654.462-1.27.693-1.847.693-.696 0-1.044-.407-1.044-1.222 0-1.104.591-2.103 1.771-2.993.227-.165.532-.352.918-.562.012-.524.046-1.128.104-1.812-.585.046-1.143.069-1.675.069l-.493-.011-.071-.822m2.127 3.384c-.268.161-.545.392-.831.694-.612.619-.94 1.226-.986 1.817l-.017.121.017.138c0 .252.112.378.339.378.492 0 1.02-.258 1.582-.773-.057-.613-.092-1.404-.104-2.375m2.455-.884c-.57.08-1.111.226-1.623.436 0 .883.018 1.581.052 2.093.634-.707 1.158-1.55 1.571-2.529"/><path fill="#1A1A1A" d="M8.517 11.735l-.734-2.409h-3.69l-.734 2.409h-2.313l3.573-10.165h2.625l3.587 10.165h-2.314m-1.246-4.21c-.679-2.183-1.062-3.418-1.149-3.704-.083-.286-.143-.512-.18-.678-.153.59-.589 2.051-1.309 4.382h2.638"/><path fill="#BCBCBC" d="M12.817 13.5v2.5h10.757l.98-2.5h-11.737z"/><path fill="#3692D0" d="M.011 13.511h3.569l2.367-3.116 2.367 3.116h3.57v2.484h-11.873v-2.484z"/></svg> \ No newline at end of file
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/images/search.png b/MLEB/UniversalLanguageSelector/lib/jquery.uls/images/search.png
new file mode 100644
index 00000000..9b58456a
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/images/search.png
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/images/search.svg b/MLEB/UniversalLanguageSelector/lib/jquery.uls/images/search.svg
new file mode 100644
index 00000000..bd28b5a1
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/images/search.svg
@@ -0,0 +1 @@
+<?xml version="1.0" encoding="UTF-8"?><svg xmlns="http://www.w3.org/2000/svg" height="32" width="32"><path fill="#555" d="M3.378 3.372c4.503-4.503 11.806-4.503 16.308 0 4.072 4.072 4.417 10.425 1.123 14.936l11.191 11.191-2.496 2.496-11.191-11.191c-4.51 3.294-10.863 2.949-14.935-1.123-4.503-4.503-4.503-11.806 0-16.308zm2.122 2.122c-3.342 3.342-3.384 8.764-.042 12.107 3.342 3.342 8.806 3.342 12.148 0 3.342-3.342 3.301-8.764-.042-12.107-3.342-3.342-8.723-3.342-12.065 0z"/></svg> \ No newline at end of file
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/images/world_map.png b/MLEB/UniversalLanguageSelector/lib/jquery.uls/images/world_map.png
new file mode 100644
index 00000000..c3f9df81
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/images/world_map.png
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/images/world_map.svg b/MLEB/UniversalLanguageSelector/lib/jquery.uls/images/world_map.svg
new file mode 100644
index 00000000..54f68b88
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/images/world_map.svg
@@ -0,0 +1 @@
+<?xml version="1.0" encoding="UTF-8"?><svg xmlns="http://www.w3.org/2000/svg" width="226" height="110.282"><path d="M193.821 62.707c-.176 2.179-.181 2.492 3.773 4.165 1.587 5.831 4.488-.838 7.46 3.732 1.292-1.026-3.685-7.38-7.881-6.767-2.898 3.404-1.126-1.013-3.352-1.131zm-134.265 41.902l-.075-.387c1.085.625 2.299 1.005 3.281 1.797-.348.039-.698.116-1.049.061-.804-.127-1.587-.331-2.403-.39.241-.301.351-.704.246-1.08zm153.278-9.772c.103-.026.179.043.243.113.064 1.203-.951 2.149-2.031 2.475-1.303.203-2.356 1.098-3.567 1.566-.21.144-.834.377-.716-.095 1.789-1.652 3.913-2.948 6.072-4.058zm3.045-3.339l.142-.425c.236.693.813 1.135 1.395 1.521.405.194.198.716-.153.834-1.102.554-2.014 1.434-3.149 1.947l1.765-3.876zm-81.252-19.203l.176-.355c.654 1.479.422 3.174.134 4.718-.415 1.889-.876 3.929-2.272 5.355-.536.671-1.604.462-2.057-.194-.39-.839-.255-1.856-.142-2.756.485-2.71 2.861-4.464 4.16-6.768zm65.746-.67l.17-.451c.323.459.205 1.016.17 1.534-.134.518.076 1.34.754 1.257.081 2.404 1.59 4.381 2.682 6.426.887 1.501 1.43 3.359.836 5.072-.499 1.35-1.516 2.447-2.386 3.577-1.608 1.81-3.53 3.559-5.922 4.195-1.343.48-2.956-.171-3.53-1.485-.527-.565-.843-1.384-.581-2.152-.154-.311-.583.046-.82.052.236.199.126.718-.298.667-2.908-.187-5.747-1.189-8.686-1.031-1.053-.012-2.035.321-2.987.739-.558.313-1.359.133-1.612-.494-.516-1.884.15-3.832.381-5.714.202-.878-.182-1.816.222-2.66.76-1.614 2.551-2.346 4.11-2.983 1.161-.565 2.57-.883 3.415-1.918.386-.811.994-1.555 1.776-2.039.831-.638 2.016-.463 2.811.142.076-.095.011-.501.101-.702.418-1.423 2.067-2.107 3.458-1.993.575-.018 1.35.272 1.317.959-.266.695-.117 1.488.097 2.18.156.759.867 1.437 1.682 1.234 1.754-.645 2.672-2.626 2.837-4.411zm-25.318-4.252l-.066-.243c.481-.023.943.119 1.369.329l4.278 1.141c-.856.542-1.91.513-2.886.431-1.059-.107-2.396-.491-2.695-1.659zm10.436-5.176c.697-.1 1.125.536 1.236 1.141.102.751.236 1.766-.465 2.276-.422-.186-.636-.619-.774-1.031-.159.695-.392 1.375-.835 1.947-.324-.942-.233-1.96.017-2.903.196-.487.169-1.321.82-1.43zm1.713-1.447c.314-.014.629.046.924.147.506.049.457.74.153 1.005-.874.544-1.907-.147-2.851.069.267-.72 1.017-1.208 1.774-1.222zm-19.391-2.366c-.387-.692-.35-.573.251-.248 2.323 1.32 4.654 2.983 5.901 5.419.36.882.765 1.874.539 2.848-.244.239-.722-.046-.958-.274-2.303-2.239-4.111-4.971-5.734-7.744zm14.633-1.45c.084-.2.15-.09.286-.02.439.382 1.137.618 1.288 1.233-.18.592-.759 1.1-.826 1.768.687.848.54 2.054.188 3.013-.407 1.111-1.278 2.382-2.597 2.36-.806-.149-1.555-.576-2.273-.956-.755-.361-1.282-1.269-.939-2.094 1.152-2.16 3.423-3.386 4.873-5.303zm-138.425-1.739zm144.329-.523l.133-.133c.338.345.688.702.872 1.155.309.76-.712 1.193-.61 1.947-.676-.444-1.488-.701-2.028-1.326.398-.687 1.125-1.059 1.632-1.644zm-4.038-7.089l.004-.005c.394-.136 1.03-.01 1.302.389.366 1.039-.81 2.145-.055 3.108-.339.09-.624-.112-.844-.336-.976-.713-1.174-2.22-.406-3.156zm-140.187-3.7c.114-.012.228.005.338.035 1.463.705 3.104 1.187 4.304 2.346-.402.34-.948.287-1.436.266-.385.116-.614-.271-.644-.601-.737-1.066-2.201-1.167-3.371-1.323-.203.03-.806-.127-.477-.373.382-.21.87-.202 1.285-.349zm143.876-8.406l.124-.286c.454.594 1.007 1.194 1.057 1.979-.756-.099-1.544-.912-1.181-1.693zm-72.953-3.591c.046-.348.294-.025.439.043.272.181.701.685.693.075.273-.036.737.323.508.627-.347.113-.48-.399-.802-.2-.362.208-1.068-.064-.839-.545zm76.962-2.256c-.147-.602-.032-.366.332-.156 1.14.732 1.089 2.253 1.361 3.432.224.356.326.887-.11 1.144-1.34 1.231-3.307.854-4.971.985.29-.235.579-.47.914-.638 1.712-.862 2.909-2.837 2.474-4.766zm-1.358-2.998c.034-.033-.212-.641-.013-.401.926.855 2.494.518 3.231 1.643-.828.274-1.572.911-2.49.861-.642-.49-.477-1.414-.728-2.103zm-65.772-1.632c-.898.275-1.461 1.093-2.126 1.727-.362-.628-.901-1.226-1.646-1.361-1.062-.171-1.729.978-1.956 1.866-.023.546.34 1.101.228 1.681 2.198.135 4.529.51 6.788.355.411-.033 1.157-.035 1.219-.578-.483-1.02-1.661-1.445-2.565-2.025-.466-.114-.244-.662-.017-.898.064-.211.353-.629.075-.768zm8.105-.205c-.827.179-1.901.563-2.112 1.502-.138 1.391 1.013 2.453 1.898 3.359-.455.805.028 1.765.638 2.334.58.496 1.406 1.159 2.218.835.569-.451.192-1.281-.026-1.827-.897-.976-1.733-2.159-1.768-3.552.067-.932.056-2.107-.849-2.652zm-86.304-1.476l-.11.162c-.596.461-1.433.492-2.1.83-.186.097-.669.229-.551.513 1.295.498 2.771.179 4.087.659-.665.41-1.398.665-2.143.867-.599-.007-.8.565-1.014 1.023-.092.418-.554.868-.381 1.294 1.202-.645 1.894-2.023 3.175-2.588.213.416.069.881-.084 1.288.118.121.548.005.797-.009.581-.061 1.474-.298 1.407-1.049-.544-1.388-1.938-2.142-3.082-2.99zm20.038-1.667l.503-.3c-.133.446-.387.813-.734 1.106.116.29.522.535.734.815.333.426.858.828.927 1.392-.156.439-.779.075-1.124.116-.728-.138-1.68-.365-1.938-1.158-.062-.963.947-1.499 1.632-1.97zm119.909-1.32l-.162-.48c1.034.574 1.723 1.598 2.631 2.328.146.297.387.073.552.289-.016.243.061.389.237.595.359.727.817 1.477.734 2.322-1.625-1.427-2.821-3.244-3.992-5.055zm-89.58-1.837c.382-.033.845.182.893.601-.128 1.258-1.3 2.309-2.556 2.386.24-1.106.529-2.481 1.664-2.987zm1.982-2.178l.199-.15c.031.487.575.523.878.771.232.378-.312.763-.604.956.794.611 1.751 1.374 2.195 2.383.34.484.261 1.233-.309 1.499-.611.267-1.324.132-1.96.35-.343.022-1.004.33-1.105-.188.168-.67.672-1.248.829-1.935.16-.28.01-.743.269-.933.096-.189-.267-.402-.332-.584-.481-.583-.802-1.643-.061-2.169zm-34.458-1.73l.144.009c.446.24-.134.893-.451.503-.352-.193.089-.442.306-.511zm28.865-4.194c.217-.027.395.143.531.289.391.233.432.826.029 1.072-1.316.6-2.891.641-4.272.251-.416-.204.025-.64.326-.676-.262-.151-.491-.348-.713-.555 1.364-.16 2.839.257 4.099-.381zm-34.397-4.42c.139-.017.604-.326.352.009-.228.192-.118.357.105.338.396-.091.452.385.179.581.236.05.493-.381.745-.5 1.12-.083 2.292-.027 3.429.027.404.122 1.02-.073 1.302.308-.082.308.191.178.419.222.702-.039 1.075.733 1.763.739.202.018-.507.494-.138.617.254.248-.191.517-.447.525.616.618 1.622.996 2.507 1.228-.087.292-.241.576-.494.751-.938.551-1.962-.44-2.938-.188.259.448.725 1.001.604 1.612-.429.882-1.679.465-2.285 1.129-.749-.46-1.531-.844-2.299-1.262-.271-.24-.961-.316-.852-.797.685-.469 1.617-.594 2.435-.792.283-.086 1.082-.118.428-.277-1.076-.408-.868-1.82-1.629-2.51-.515.094-1.08.274-1.635.274-.967-.016-2.193.013-2.811-.872-.054-.696.754-.941 1.259-1.161zm-1.49-.728c.389-.004.776.062 1.164.084-.502.316-1.014.6-1.554.841-.741.434-1.773.757-2.025 1.67.005.588.578 1.079 1.118 1.231 1.327.072 2.579-.627 3.911-.647-.024.362-.143.718-.396.985-1.388 1.256-3.419 1.125-5.15 1.45-.289.053-.111.362.15.373-1.037.854-2.403 1.02-3.573 1.603-.997.647-2.076 1.209-2.943 2.034-.417.369-.763 1.003-.332 1.499.808.908 2.1 1.137 3.099 1.768.605.377 1.459.962 1.173 1.797-.271.49-.173 1.255.399 1.47.72-.01 1.283-.611 1.753-1.092 1.114-1.365 2.327-2.839 2.62-4.633.355-1.925 2.793-2.803 4.486-2.054.703.184 1.192 1.032.809 1.698-.209.239-.563.643-.263.947.862.155 1.623-.52 2.429-.748.308-.28.642.186.581.202-.348-.388.285-.424.428-.142.216.282-.196.606-.364.26.244.489.648 1.256.89 1.883.136.513.485 1.043.352 1.586-.192.244.037.147.228.124.433-.177.802.327.612.719-1.163 2.073-3.928 2.922-6.144 2.152-1.166.631-2.381 1.252-3.536 1.898 1.026-.16 2.108-.615 3.18-.812-.188.279-.572.502-.531.881.369.846 1.438 1.033 2.244 1.23.562-.012.308.261.015.471-.905.489-1.843 1.275-2.941 1.063.016-.453.29-.827.618-1.115-.366.095-.713.19-1.069.318-2.817.875-4.428 3.807-7.291 4.561-.361-.073-.324.398-.442.612-.032.361-.489.333-.612.035-.399 0-.408.59-.531.878-.257.277.103.505.165.777.059.842-.84 1.322-1.461 1.693-1.276.854-2.946 1.589-3.372 3.203-.063 1.275-.006 2.576-.329 3.827-.492-.781-.828-1.643-1.314-2.429-.561-.989-1.676-1.883-2.886-1.551-.731.055-.959.821-1.401 1.277-.312.435-.75.054-1.011-.234-.84-.595-1.969-.102-2.813.268-1.427.42-2.328 1.773-2.6 3.172-.301 1.587-.224 3.454.869 4.735.594.725 1.662.743 2.409.251 1.07-.662 1.883-1.871 3.212-2.036.171.461.01.948-.144 1.392-.235 1.063-.919 2.238-.402 3.328.634.727 1.74.28 2.525.087-.129.88-.266 1.814-.062 2.683.231 1.153 1.134 2.108 2.299 2.351 1.822.277 3.681-.489 5.068-1.658.29-.129.477-.717.815-.534.197.428-.06 1.01.185 1.424.365-.148.425-.686.78-.89.642-.589 1.592-.129 2.086.425.584.145 1.24-.091 1.854-.064.961-.084 1.871.338 2.559.985.481.554 1.158.885 1.67 1.401.783 1.309 2.395 1.482 3.706 1.973 1.136.345 2.131 1.277 2.32 2.478.204.534-.273.867-.607 1.216-.253.4-.831.752-.754 1.283.456.325 1.032-.13 1.525-.176.386.268-.167.533-.37.711.39-.09.832-.242 1.259-.266 1.716.005 3.167 1.231 4.893 1.251 1.489.181 3.22.61 4.021 2.002.722 1.453.14 3.161-.41 4.584-.983 2.753-2.713 5.439-2.429 8.469-.449.082-.888.217-1.3.413-2.274 1.198-3.606 3.606-4.359 5.994-.2.31-.018 1.017-.549 1.005-1.446.354-2.411 1.642-3.703 2.305.408.53 1.042 1.32.809 2.135-.518 1.607-2.304 2.178-3.4 3.307-.522.374-.136 1.139.413 1.228-.178.309-.408.581-.569.901-.825 1.924.65 3.91.202 5.881.023.484-.189.106-.422.064-.645.103-.743.994-1.352 1.135-.849-.141-1.31-1.016-1.876-1.572-.535-.904-.65-2.168-1.643-2.76-.375-.177.225-.429.321-.667.401-1.025.065-2.251-.618-3.088-.256-.483-.916-.527-1.098-1.051-1.376-4.467-.111-9.203-.724-13.762-.249-2.497-1.533-5.03-3.811-6.21-1.168-1.254-2.107-2.735-2.975-4.226-1.43-2.598-2.508-5.69-1.701-8.669 1.399-.802 2.02-2.494 1.958-4.044.001-1.134-.537-2.286-1.607-2.783-.62-.038-1.302.153-1.857.484-2.054-1.615-3.445-3.941-5.688-5.346-.671-.381-1.349-.862-2.135-.951-1.85.431-3.917-.1-5.269-1.447-2.67-2.679-3.112-6.665-4.942-9.85-.155-.183-.318-.81-.664-.595-.155 1.754.45 3.473.835 5.162.038.404-.469.261-.537-.035-1.359-1.808-1.55-4.149-1.852-6.326-1.154-1.025-1.924-2.543-1.872-4.113.2-2.997 2.103-5.461 3.643-7.92.086-.362.525-.361.704-.064.388.339.819-.157.841-.557.083-.573.036-1.468-.653-1.62-.399.189-.775-.248-.497-.621.188-.47.595-1.267-.058-1.571.055-.496.533-.877.453-1.392-.507-.788.411-1.536.315-2.334-.262-.508-.941-.065-1.381-.162-.475-.022-.521-.546-.453-.904-1.613-.025-3.221-.885-4.859-.549-.355.064-.917.356-1.088.334.031-.189.616-.423.395-.599-2.317.831-4.486 2.103-6.828 2.905-.285.07-.936.48-.844-.077.556-.385 1.377-.465 1.753-1.075-.085-.367-.662-.224-.942-.272-.578.178-1.379-.312-1.213-.971.491-.901 1.505-1.36 2.4-1.785 1.031-.509 2.117-.865 3.189-1.291-.229.013-.648.14-.959.142-.408.012-1.165.036-1.138-.552.511-1.013 1.938-1.085 2.868-.647.838-.077 1.127-1.037 1.557-1.635 1.012-1.276 2.821-1.315 4.324-1.337 2.332-.704 4.812-.254 7.152.202 1.984.3 4.051 1.034 6.037.399 1.111-.206 2.276-.203 3.411-.242 1.342-.057 2.667.193 3.888.756 1.228.459 2.523 1.109 3.868.858.526-.049.748-.627 1.259-.708 1.55-.173 3.214-.39 4.703.185.432.215.12.726-.205.869.964-.159 1.99-1.031 2.322-2.062.413-1.587 2.066-2.484 3.599-2.707zm-13.513-.208c.566.111 1.136.201 1.716.208.437.124.08.584-.222.624 1.268-.172 2.478.829 3.726.381.336-.159.668-.702 1.086-.364.424.614-.222 1.288-.318 1.906-1.42-.314-2.903-.213-4.344-.087.054.26-.302.368-.459.19-.067-.263-.42-.134-.725-.201.026.255-.591.359-.546.035l-.277-.428c.154-.264-.258-.315-.147-.586-.492.038-1.162.2-1.739.142-.33-.049-1.032-.067-.916-.563.811-.846 2.092-.944 3.166-1.257zm87.286-.529l-.158.282c-.874.644-1.106 1.77-1.203 2.795-.676-.165-1.005-.807-1.496-1.231.637-.571 1.319-1.086 2.045-1.545.362-.44.581.055.812-.3zm.015-.017zm2.525-.979c.388-.005.757.157 1.138.228-.926.391-1.932.45-2.9.676-.614.104-.554.221-.514-.179.674-.419 1.484-.633 2.276-.725zm-75.463.254l-.069-.269c.546.054 1.08.212 1.588.395 1.475.795 3.204.512 4.807.625-1.267.852-2.901.88-4.339.518-.73-.237-1.729-.438-1.987-1.269zm91.721-.538l.015-.022.052-.077c1.028.155 2.003.699 3.068.508.787-.049 1.831-.413 2.449.274.146.818-.688 1.322-.913 1.993.431.062.818-.339 1.219-.465.205-.247.519-.176.846-.191 2.712.047 5.488.074 8.094.876.199-.008.795.41.682.202 1.416.048 2.813.311 4.226.39.584-.047 1.409.216 1.762-.378 1.99-.142 3.951.385 5.908.664 5.147.926 10.376 1.414 15.612 1.291 2.564 1.029 5.395 1.195 8.045 1.984.713.176 1.436.703 1.412 1.516-1.374-.545-2.831-.963-4.327-.832-.353.025-1.079.075-1.037.581.672.894 1.906 1.018 2.881 1.416.342.145-.624.304-.848.476-1.573.771-3.209 1.841-5.046 1.543.549 1.307 1.767 2.124 2.418 3.362.427.608.162 1.341-.078 1.956.022.441-.332.961-.823.809-1.541-.783-2.454-2.389-3.166-3.902-.472-1.085-.866-2.524-.038-3.541-1.018.278-2.375-.228-3.423.28-.523.413-.074 1.157.24 1.557-1.058-.017-2.116-.079-3.175-.059-1.476.103-3.128.024-4.336 1.006-.784.677-.31 1.851.228 2.536 1.555.207 3.08.905 4.211 2.016 1.649 1.462 1.996 4.037 1.057 5.997-.87.175-1.922.338-2.415 1.158-.626 1.217.148 2.563.468 3.762.353.895.568 2.05-.17 2.816-.12-.246-.205-.502-.234-.774-.167-1.342-1.446-2.131-2.631-2.499-.891-.285-2.118-.579-2.314-1.658-.296.073-.625.24-.924.368-.381.217-1.127.457-1.023 1.015.647.827 1.855.785 2.669 1.392.436.178.238.727-.124.852-.503.117.04.631.087.953.52 1.549 1.519 2.835 2.481 4.145-.087 1.453-.537 2.875-1.35 4.077-.395.438-.669 1.118-1.276 1.284-1.234-.139-2.274.688-3.206 1.381-.629.613-1.65.431-2.236-.147-.302.274-.533.748-.595 1.179-.216 2.142 1.454 3.843 1.831 5.867.372 1.278-.598 2.536-1.768 2.952-.277-.382-.559-.764-.884-1.106-.766-.766-1.54-1.707-2.646-1.956-.79-.151-1.092.826-1.066 1.441-.167.618.378.999.682 1.462 1.238 1.853 2.32 3.882 2.712 6.106-.702-.651-1.308-1.379-1.808-2.194-.286-.635-.87-1.009-1.216-1.593-1.152-2.217-.686-4.883-1.6-7.175-.215-.898-1.355-1.199-2.071-.693-.232-.497-.473-.99-.726-1.477-.727-1.295-1.463-2.669-2.572-3.662-.36-.353-.747.135-.647.514.255.046.447.367.248.607-1.254 1.17-2.875 1.893-4.295 2.837-.46.369-1.07.633-1.427 1.115-.41 1.746-.6 3.655-1.707 5.142-.258.528-.949.778-1.447.428-.718-.631-1.056-1.589-1.394-2.46-.724-1.92-.666-4.07-1.61-5.902-.701-1.513-2.603-1.796-3.51-3.134-2.194-1.452-4.916-1.58-7.447-2.031-2.411-.344-4.89-1.3-6.395-3.293-.299 1.094.025 2.285.677 3.18.714 1.085 2.171 1.845 3.431 1.236.432-.381 1.035-.414 1.566-.214 1.1.181 1.662 1.376 1.522 2.403-.37 2.255-1.959 4.278-4.041 5.228-1.195.354-2.015 1.424-3.192 1.823-1.018.483-2.286.184-3.024-.653-2.088-2.586-2.38-6.184-4.466-8.767-.934-.943-1.375-2.313-2.49-3.07-.245-.27-.514.061-.491.312.288 2.155 1.522 4.035 2.782 5.757.668 2.244 1.646 4.424 3.247 6.161 1.503 1.788 4.053 2.924 6.352 2.114.3-.181.638.151.419.439-1.439 4.393-5.225 7.396-7.287 11.454-1.416 2.52-1.362 5.707-.021 8.237-.315.254-.617.521-.904.806-2.598 2.454-3.362 6.092-4.815 9.235-1.24 2.644-3.191 5.242-6.049 6.202-1.339.549-2.928.09-3.88-.958-1.816-2.155-2.347-5.081-2.614-7.823.087-.574-.276-1.006-.618-1.406-1.3-1.854-1.163-4.287-.795-6.42.369-2.281.968-4.817-.204-6.963-.425-.914-1.318-1.414-1.895-2.204-.652-1.33.218-2.738.251-4.102.11-.926-.909-1.427-1.71-1.389-.48-.319-.973-.759-1.566-.921-2.677-.695-5.342.602-8.021.688-1.683.17-3.486-.532-4.385-2.005-.591-1.332-1.614-2.382-2.374-3.602-1.042-1.614-.482-3.602-.159-5.344-.107-1.139-.137-2.337.261-3.434 1.349-3.784 4.995-6.02 7.006-9.365.251-.222.197-.765.601-.806 1.577.472 3.241-.037 4.784-.452 1.666-.334 3.358-1.14 5.078-.741.899.306.89 1.455.667 2.213.98 1.136 2.422 2.054 3.943 2.302 2.09.229 4.156-.625 6.251-.266.883.04 1.521.738 2.392.829 1.95.424 4.002-1.068 4.35-2.981.176-.775-.228-1.666-1.04-1.869-.948-.319-1.973-.075-2.883.237-1.257.208-2.392-1.093-2.328-2.305-.031-.788.84-1.154 1.516-1.101.187-.024-.467-.221-.589-.309-.378.256-.837.348-1.286.386-.723.081-1.626-.028-2.152.547.228.399.508.801.578 1.285-1.961-1.768-3.834-3.642-6.056-5.086-.34-.177-.784-.632-1.177-.414-.05.785.628 1.426.997 2.086.907.315 2.018.744 2.218 1.811.191.65-.422 1.43-1.115 1.158-1.11-.414-1.264-1.779-2.08-2.515-.966-1.146-2.552-1.787-4.018-1.347-2.319.799-3.928 2.809-5.252 4.758-.474 1.05-1.729 1.55-2.827 1.354-1.686-.418-2.457-2.444-2.106-4.041.142-1.118 1.195-1.946 2.308-1.941.883.044 1.828.304 2.66-.144.625-.209.558-.987.269-1.447-.345-.839-1.221-1.488-1.199-2.461.299-.616 1.149-.507 1.73-.494 1.225-.926 2.738-1.461 4.079-2.208.958-.483 1.987-1.416 1.73-2.602-.316-.535.303-.979.656-1.285.195.463.182.959.286 1.439.127.898 1.181 1.274 1.958 1.014.965.219 2.035.225 2.969-.136 1.249-.524 2.514-1.446 2.877-2.816-.045-.392.356-.451.635-.592.618-.327 1.382-.444 1.921-.875-1.07-.269-2.284-.083-3.406-.225-.238-.638-.255-1.34-.136-2.005.014-.525.407-1.034.309-1.543-1.008.303-1.772 1.14-2.66 1.693.475 1.134.173 2.458-.37 3.524-.403.775-1.12 1.768-2.126 1.554-1.043-.444-1.351-1.689-1.589-2.692-.624.436-1.271 1.006-2.083.968-.627-.285-.424-1.136-.653-1.672-.052-.342-.599-.127-.546-.526.601-.988 1.803-1.389 2.87-1.644.756-.015 1.184-.682 1.595-1.227.519-.627.82-1.447 1.45-1.961.145-.197.395-.709.708-.41 1.082-.34 2.182-.958 3.362-1.043.796.101 1.538-.395 2.328-.234.755.261 1.389.846 2.218.933 1.363.078 2.753.313 4.001.89.327.038.525.473.179.65-1.036.373-2.171.537-3.279.459-.366-.056.37.439.447.583.496.51 1.373 1.266 2.087.68.871-.645 1.9-1.192 3.024-1.096-.077-.317-.485-.92-.078-1.248.849-.178 1.721.266 2.574.332.845.142 1.671-.153 2.322-.69 1.596-.731 3.434-.294 5.121-.191.528-.047 1.186.238 1.629-.139.064-.606-.721-.881-1.054-1.294.355-.419.762-.826 1.291-1.008.751-.322 1.377.435 1.543 1.092.443.988.368 2.151.971 3.068.399.32.766-.319.945-.607.135-.534.745-.551 1.193-.557.145-.028.586.052.595-.113-.527-.262-1.144-.329-1.664-.63-.9-.377-1.734-1.252-1.519-2.302.493.152.863.522 1.3.777.293.197-.058-.155-.006-.295.433-.332 1.014-.308 1.531-.237.281.15.533-.181.399-.442-.067-.713.768-.959 1.332-.979.412-.162.067.268.269.43.67.312 1.478.054 2.166-.127 1.396-.478 2.999-.914 3.891-2.181zm-99.416-.164c.562-.012 1.097.117 1.522.517-1.042.404-2.172.462-3.277.567-.944.193-.149-.236.247-.498.474-.315 1.022-.434 1.508-.586zm5.65-.89c.575-.046 1.106.304 1.652.442-.593.139-1.208.238-1.814.136-.416-.074-.149-.555.162-.578zm12.227-.234c.254-.042.278.247.196.416-.526.716-1.59.682-2.383.924-.692.026-.055.179.283.3-.541.108-1.081.228-1.635.237-.88-.036-1.827.073-2.64-.295.534-.306 1.168-.175 1.756-.231.56.232 1-.392 1.051-.89 1.141.217 2.287-.139 3.371-.462zm41.295-.159c.7.038 1.416.229 1.938.725-.541.517-1.296.644-2.009.745-.581.167-1.544.105-1.668-.63.227-.672 1.135-.714 1.739-.841zm-47.288-.685c.359-.027.699.112 1.04.217.34.118 1.038.14.979.644-.687.666-1.759.798-2.692.79-.295.073-.796-.099-.607-.478-.175-.097-.574-.165-.786-.352.557-.535 1.346-.649 2.065-.82zm9.977-.84c.926-.031 1.851.051 2.776.081.199-.059.753.128.433.349-.512.223-1.117.188-1.664.3-.302.349-.821.42-1.274.543-1.077.387-2.225.449-3.365.457-.38.147-.314-.234-.191-.446-.777-.302-1.685-.064-2.496 0-.142.152-.395.119-.578.228.065-.472-.49-.337-.768-.494-.348-.072-1.273-.339-.458-.436 2.523-.209 5.058-.387 7.584-.584zm16.855-.344c.159-.012.303.082.436.153.928.401 2.069-.092 2.984.43-.779.331-1.648.199-2.473.24.705.082 1.744.208 2.58.275.97.137 1.955-.033 2.92.04.099.33-.237.366-.471.399-.19.094-.766-.109-.647.251-.352.375-.824.613-1.15.997-.507.378.02 1.009-.309 1.459-.259.281-1.068.437-.742.962-.349.239-.72.436-1.129.54-.543.21-1.284-.307-1.698.208.084.641.908.75 1.32 1.129-.572.207-1.181.156-1.776.15-.488-.143-.797.276-.994.659.549.06 1.411.008 2.054.17-2.747 1.214-5.77 1.608-8.567 2.663-1.892.891-3.426 2.462-4.561 4.197-.134.514-.572.105-.881-.012-.822-.504-1.883-.995-2.14-2.013-.145-.428.114-.827.37-1.118-.077-.328-.602-.363-.763-.673-.248-.674.604-.995 1.075-1.213-.144-.223.044-.441.263-.523.367-.235.979-.763.589-1.222-.237-.482.449-.342.664-.557.191-.406-.278-.813-.586-1.002-.168.109-.468.535-.635.168.006-.578.353-1.142.191-1.748-.092-.789-.975-.97-1.629-.962-1.139.053-2.277.07-3.411-.026.347-.17.659-.408 1.023-.531.352-.252-.254-.376-.453-.425 2.373-.786 4.722-1.663 7.155-2.247 2.663.205 5.328-.172 7.99-.272.411.106.591-.455 1.002-.292.791-.067 1.675.062 2.403-.254z" fill="#d9d9d9"/></svg> \ No newline at end of file
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/src/jquery.uls.core.js b/MLEB/UniversalLanguageSelector/lib/jquery.uls/src/jquery.uls.core.js
new file mode 100644
index 00000000..8852d59e
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/src/jquery.uls.core.js
@@ -0,0 +1,443 @@
+/**
+ * Universal Language Selector
+ * ULS core component.
+ *
+ * Copyright (C) 2012 Alolita Sharma, Amir Aharoni, Arun Ganesh, Brandon Harris,
+ * Niklas Laxström, Pau Giner, Santhosh Thottingal, Siebrand Mazeland and other
+ * contributors. See CREDITS for a list.
+ *
+ * UniversalLanguageSelector is dual licensed GPLv2 or later and MIT. You don't
+ * have to do anything special to choose one license or the other and you don't
+ * have to notify anyone which license you are using. You are free to use
+ * UniversalLanguageSelector in commercial projects as long as the copyright
+ * header is left intact. See files GPL-LICENSE and MIT-LICENSE for details.
+ *
+ * @file
+ * @ingroup Extensions
+ * @licence GNU General Public Licence 2.0 or later
+ * @licence MIT License
+ */
+
+( function ( $ ) {
+ 'use strict';
+
+ var template, ULS;
+
+ // Region numbers in id attributes also appear in the langdb.
+ /*jshint multistr:true */
+ template = '<div class="grid uls-menu uls-wide"> \
+ <div class="row"> \
+ <span id="uls-close" class="uls-icon-close"></span> \
+ </div> \
+ <div class="row"> \
+ <div class="uls-title-region seven columns">\
+ <h1 data-i18n="uls-select-language" class="uls-title">Select Language</h1>\
+ </div>\
+ <div class="five columns uls-map-block" id="uls-map-block">\
+ <div class="row">\
+ <div data-regiongroup="1" id="uls-region-1" class="three columns uls-region uls-region-1">\
+ <a data-i18n="uls-region-WW">Worldwide</a>\
+ </div>\
+ <div class="nine columns">\
+ <div class="row uls-worldmap">\
+ <div data-regiongroup="2" id="uls-region-2" class="four columns uls-region">\
+ <a data-i18n="uls-region-AM">America</a>\
+ </div>\
+ <div data-regiongroup="3" id="uls-region-3" class="four columns uls-region">\
+ <a><span data-i18n="uls-region-EU">Europe</span><br>\
+ <span data-i18n="uls-region-ME">Middle East</span><br>\
+ <span data-i18n="uls-region-AF">Africa</span></a>\
+ </div>\
+ <div data-regiongroup="4" id="uls-region-4" class="four columns uls-region">\
+ <a><span data-i18n="uls-region-AS">Asia</span><br>\
+ <span data-i18n="uls-region-PA">Pacific</span></a>\
+ </div>\
+ </div>\
+ </div>\
+ </div>\
+ </div>\
+ </div>\
+ <div id="search" class="row uls-search"> \
+ <div class="one column">\
+ <span class="uls-search-label"></span>\
+ </div>\
+ <div class="ten columns">\
+ <div id="uls-search-input-block" class="uls-search-input-block">\
+ <input type="text" class="uls-filterinput uls-filtersuggestion" id="uls-filtersuggestion" disabled="true"\
+ autocomplete="off" /> <input type="text" class="uls-filterinput uls-languagefilter" id="uls-languagefilter"\
+ data-clear="uls-languagefilter-clear" data-suggestion="uls-filtersuggestion"\
+ placeholder="Language search" autocomplete="off" />\
+ </div>\
+ </div>\
+ <div class="one column">\
+ <span id="uls-languagefilter-clear" class="uls-languagefilter-clear"></span>\
+ </div>\
+ </div>\
+ <div class="row uls-language-list"></div>\
+ <div class="row" id="uls-settings-block"></div>\
+ </div>';
+ /*jshint multistr:false */
+
+ /**
+ * ULS Public class definition
+ */
+ ULS = function ( element, options ) {
+ this.$element = $( element );
+ this.options = $.extend( {}, $.fn.uls.defaults, options );
+ this.$menu = $( template );
+ this.languages = this.options.languages;
+
+ for ( var code in this.languages ) {
+ if ( $.uls.data.languages[code] === undefined ) {
+ // Language is unknown to ULS.
+ delete this.languages[code];
+ }
+ }
+
+ this.left = this.options.left;
+ this.top = this.options.top;
+ this.shown = false;
+ this.initialized = false;
+
+ this.$languageFilter = this.$menu.find( '#uls-languagefilter' );
+ this.$regionFilters = this.$menu.find( '.uls-region' );
+ this.$resultsView = this.$menu.find( 'div.uls-language-list' );
+
+ this.render();
+ this.listen();
+ this.ready();
+ };
+
+ ULS.prototype = {
+ constructor: ULS,
+
+ /**
+ * A "hook" that runs after the ULS constructor.
+ * At this point it is not guaranteed that the ULS has its dimensions
+ * and that the languages lists are initialized.
+ *
+ * To use it, pass a function as the onReady parameter
+ * in the options when initializing ULS.
+ */
+ ready: function () {
+ if ( this.options.onReady ) {
+ this.options.onReady.call( this );
+ }
+ },
+
+ /**
+ * A "hook" that runs after the ULS panel becomes visible
+ * by using the show method.
+ *
+ * To use it, pass a function as the onVisible parameter
+ * in the options when initializing ULS.
+ */
+ visible: function () {
+ if ( this.options.onVisible ) {
+ this.options.onVisible.call( this );
+ }
+ },
+
+ /**
+ * Calculate the position of ULS
+ * Returns an object with top and left properties.
+ * @returns {Object}
+ */
+ position: function () {
+ var pos = $.extend( {}, this.$element.offset(), {
+ height: this.$element[0].offsetHeight
+ } );
+ return {
+ top: this.top !== undefined ? this.top : pos.top + pos.height,
+ left: this.left !== undefined ? this.left : '25%'
+ };
+ },
+
+ /**
+ * Show the ULS window
+ */
+ show: function () {
+ this.$menu.css( this.position() );
+
+ if ( this.options.compact ) {
+ this.$menu.addClass( 'uls-compact' );
+ }
+
+ if ( !this.initialized ) {
+ $( 'body' ).prepend( this.$menu );
+ this.i18n();
+
+ // Initialize with a full search.
+ // This happens on first time click of uls trigger.
+ this.defaultSearch();
+
+ this.initialized = true;
+ }
+
+ // hide any other visible ULS
+ $( '.uls-menu' ).hide();
+
+ this.$menu.show();
+ this.$menu.scrollIntoView();
+ this.shown = true;
+
+ if ( !this.isMobile() ) {
+ this.$languageFilter.focus();
+ }
+
+ this.visible();
+ },
+
+ i18n: function () {
+ if ( $.i18n ) {
+ this.$menu.find( '[data-i18n]' ).i18n();
+ this.$languageFilter.prop( 'placeholder', $.i18n( 'uls-search-placeholder' ) );
+ }
+ },
+
+ defaultSearch: function () {
+ this.$resultsView.lcd( 'empty' );
+
+ this.$regionFilters.regionselector( 'show' );
+ },
+
+ /**
+ * Hide the ULS window
+ */
+ hide: function () {
+ this.$menu.hide();
+ this.shown = false;
+ },
+
+ /**
+ * Render the UI elements.
+ * Does nothing by default. Can be used for customization.
+ */
+ render: function () {
+ // Rendering stuff here
+ },
+
+ /**
+ * Callback for no results found context.
+ */
+ noresults: function () {
+ $( '.regionselector' ).removeClass( 'active' );
+ this.$resultsView.lcd( 'noResults' );
+ },
+
+ /**
+ * callback for results found context.
+ */
+ success: function () {
+ $( '.regionselector' ).removeClass( 'active' );
+ this.$resultsView.show();
+ },
+
+ /**
+ * Bind the UI elements with their event listeners
+ */
+ listen: function () {
+ var lcd,
+ uls = this;
+
+ // Register all event listeners to the ULS here.
+ this.$element.on( 'click', $.proxy( this.click, this ) );
+
+ this.$languageFilter.on( 'searchclear.uls', $.proxy( this.defaultSearch, this ) );
+ this.$languageFilter.on( 'noresults.uls', $.proxy( this.noresults, this ) );
+ this.$languageFilter.on( 'resultsfound.uls', $.proxy( this.success, this ) );
+
+ // Close when clicking on the close button
+ this.$menu.find( '#uls-close' ).on( 'click', $.proxy( this.cancel, this ) );
+ // Don't do anything if pressing on empty space in the ULS
+ this.$menu.on( 'click', function ( e ) {
+ e.stopPropagation();
+ } );
+
+ // Handle key press events on the menu
+ this.$menu.on( 'keypress', $.proxy( this.keypress, this ) )
+ .on( 'keyup', $.proxy( this.keyup, this ) );
+
+ if ( this.eventSupported( 'keydown' ) ) {
+ this.$menu.on( 'keydown', $.proxy( this.keypress, this ) );
+ }
+
+ lcd = this.$resultsView.lcd( {
+ languages: this.languages,
+ quickList: this.options.quickList,
+ clickhandler: $.proxy( this.select, this ),
+ source: this.$languageFilter,
+ showRegions: this.options.showRegions,
+ languageDecorator: this.options.languageDecorator
+ } ).data( 'lcd' );
+
+ this.$languageFilter.languagefilter( {
+ $target: lcd,
+ languages: this.languages,
+ searchAPI: this.options.searchAPI,
+ onSelect: $.proxy( this.select, this )
+ } );
+
+ // Create region selectors, one per region
+ this.$menu.find( '.uls-region, .uls-region-link' ).regionselector( {
+ $target: lcd,
+ languages: this.languages,
+ success: function ( regionfilter ) {
+ // Deactivate search filtering
+ uls.$languageFilter.languagefilter( 'deactivate' );
+
+ // If it is the WW region, show the quicklist
+ if ( regionfilter.regionGroup === 1 ) {
+ lcd.quicklist();
+ }
+
+ // Show 'results view' if we are in no results mode
+ uls.success();
+ },
+ noresults: function () {
+ uls.$languageFilter.languagefilter( 'clear' );
+ }
+ } );
+
+ $( 'html' ).click( $.proxy( this.cancel, this ) );
+ },
+
+ /**
+ * On select handler for search results
+ * @param langCode
+ */
+ select: function ( langCode ) {
+ this.hide();
+ this.$languageFilter.trigger( 'searchclear' );
+ if ( this.options.onSelect ) {
+ this.options.onSelect.call( this, langCode );
+ }
+ },
+
+ /**
+ * On cancel handler for the uls menu
+ */
+ cancel: function () {
+ this.hide();
+
+ if ( this.options.onCancel ) {
+ this.options.onCancel.call( this );
+ }
+ },
+
+ keyup: function ( e ) {
+ if ( !this.shown ) {
+ return;
+ }
+
+ if ( e.keyCode === 27 ) { // escape
+ this.cancel();
+ e.preventDefault();
+ e.stopPropagation();
+ }
+ },
+
+ keypress: function ( e ) {
+ if ( !this.shown ) {
+ return;
+ }
+
+ if ( e.keyCode === 27 ) { // escape
+ this.cancel();
+ e.preventDefault();
+ e.stopPropagation();
+ }
+ },
+
+ click: function ( e ) {
+ e.stopPropagation();
+ e.preventDefault();
+
+ if ( this.shown ) {
+ this.hide();
+ } else {
+ this.show();
+ }
+ },
+
+ eventSupported: function ( eventName ) {
+ var isSupported = eventName in this.$menu;
+
+ if ( !isSupported ) {
+ this.$element.setAttribute( eventName, 'return;' );
+ isSupported = typeof this.$element[eventName] === 'function';
+ }
+
+ return isSupported;
+ },
+
+ isMobile: function () {
+ return navigator.userAgent.match( /(iPhone|iPod|iPad|Android|BlackBerry)/ );
+ }
+ };
+
+ /* ULS PLUGIN DEFINITION
+ * =========================== */
+
+ $.fn.uls = function ( option ) {
+ return this.each( function () {
+ var $this = $( this ),
+ data = $this.data( 'uls' ),
+ options = typeof option === 'object' && option;
+
+ if ( !data ) {
+ $this.data( 'uls', ( data = new ULS( this, options ) ) );
+ }
+
+ if ( typeof option === 'string' ) {
+ data[option]();
+ }
+ } );
+ };
+
+ $.fn.uls.defaults = {
+ onSelect: null, // Callback function to be called when a language is selected
+ searchAPI: null, // Language search API
+ languages: $.uls.data.getAutonyms(), // Languages to be used for ULS, default is all languages
+ quickList: null, // Array of language codes or function that returns such
+ compact: false, // Show ULS in compact mode
+ showRegions: [ 'WW', 'AM', 'EU', 'ME', 'AF', 'AS', 'PA' ],
+ languageDecorator: null // Callback function to be called when a language link is prepared - for custom decoration.
+ };
+
+ // Define a dummy i18n function, if jquery.i18n not integrated.
+ if ( !$.fn.i18n ) {
+ $.fn.i18n = function () {};
+ }
+
+ /*
+ * Simple scrollIntoView plugin.
+ * Scrolls the element to the viewport smoothly if it is not already.
+ */
+ $.fn.scrollIntoView = function () {
+ return this.each( function () {
+ var scrollPosition,
+ $window = $( window ),
+ windowHeight = $window.height(),
+ windowTop = $window.scrollTop(),
+ windowBottom = windowTop + windowHeight,
+ $element = $( this ),
+ panelHeight = $element.height(),
+ panelTop = $element.offset().top,
+ panelBottom = panelTop + panelHeight;
+
+ if ( ( panelTop < windowTop ) || ( panelBottom > windowBottom ) ) {
+ if ( windowTop > panelTop ) {
+ scrollPosition = panelTop;
+ } else {
+ scrollPosition = panelBottom - windowHeight;
+ }
+ $( 'html, body' ).stop().animate( {
+ scrollTop: scrollPosition
+ }, 500 );
+ }
+ } );
+ };
+
+ $.fn.uls.Constructor = ULS;
+}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/src/jquery.uls.data.js b/MLEB/UniversalLanguageSelector/lib/jquery.uls/src/jquery.uls.data.js
new file mode 100644
index 00000000..323396ec
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/src/jquery.uls.data.js
@@ -0,0 +1,7 @@
+// Please do not edit. This file is generated from data/langdb.yaml by ulsdata2json.php
+( function ( $ ) {
+ 'use strict';
+ $.uls = $.uls || {};
+ //noinspection JSHint
+ $.uls.data = {"languages":{"aa":["Latn",["AF"],"Qafár af"],"ab":["Cyrl",["EU"],"Аҧсшәа"],"abs":["Latn",["AS"],"Bahasa Ambon"],"ace":["Latn",["AS","PA"],"Acèh"],"acf":["Latn",["AM"],"kwéyòl"],"ady":["Cyrl",["EU","ME"],"Адыгэбзэ"],"ady-cyrl":["ady"],"ady-latn":["Latn",["EU","ME"],"Adygabze"],"aeb":["Arab",["AF"],"تونسي"],"af":["Latn",["AF"],"Afrikaans"],"ahr":["Deva",["AS"],"अहिराणी"],"ak":["Latn",["AF"],"Akan"],"akz":["Latn",["AM"],"Albaamo innaaɬiilka"],"aln":["Latn",["EU"],"Gegë"],"am":["Ethi",["AF"],"አማርኛ"],"an":["Latn",["EU"],"aragonés"],"ang":["Latn",["EU"],"Ænglisc"],"anp":["Deva",["AS"],"अङ्गिका"],"ar":["Arab",["ME"],"العربية"],"arc":["Syrc",["ME"],"ܐܪܡܝܐ"],"arn":["Latn",["AM"],"mapudungun"],"aro":["Latn",["AM"],"Araona"],"arq":["Arab",["AF"],"جازايرية"],"ary":["Latn",["ME"],"Maġribi"],"arz":["Arab",["ME"],"مصرى"],"as":["Beng",["AS"],"অসমীয়া"],"ase":["Sgnw",["AM"],"American sign language"],"ast":["Latn",["EU"],"asturianu"],"av":["Cyrl",["EU"],"авар"],"avk":["Latn",["WW"],"Kotava"],"ay":["Latn",["AM"],"Aymar aru"],"az":["az-latn"],"az-latn":["Latn",["EU","ME"],"azərbaycanca"],"az-arab":["Arab",["EU","ME"],"آذربايجانجا"],"az-cyrl":["Latn",["EU","ME"],"азәрбајҹанҹа"],"azb":["az-arab"],"ba":["Cyrl",["EU"],"башҡортса"],"ban":["Bali",["AS"],"ᬩᬲᬩᬮᬶ"],"bar":["Latn",["EU"],"Boarisch"],"bat-smg":["sgs"],"bbc-latn":["Latn",["AS"],"Batak Toba"],"bbc-batk":["Batk",["AS"],"Batak Toba"],"bbc":["Latn",["AS"],"Batak Toba"],"bcc":["Arab",["AS","ME"],"بلوچی مکرانی"],"bcl":["Latn",["AS"],"Bikol Central"],"be-tarask":["Cyrl",["EU"],"беларуская (тарашкевіца)"],"be-x-old":["be-tarask"],"be":["Cyrl",["EU"],"беларуская"],"bew":["Latn",["AS"],"Bahasa Betawi"],"bfa":["Latn",["AF"],"Bari"],"bfq":["Taml",["AS"],"படகா"],"bg":["Cyrl",["EU"],"български"],"bgn":["Arab",["EU"],"بلوچی رخشانی"],"bh":["Deva",["AS"],"भोजपुरी"],"bho":["Deva",["AS"],"भोजपुरी"],"bi":["Latn",["PA"],"Bislama"],"bjn":["Latn",["AS"],"Bahasa Banjar"],"bm":["Latn",["AF"],"bamanankan"],"bn":["Beng",["AS"],"বাংলা"],"bo":["Tibt",["AS"],"བོད་ཡིག"],"bpy":["Beng",["AS"],"বিষ্ণুপ্রিয়া মণিপুরী"],"bqi":["Arab",["ME"],"بختياري"],"br":["Latn",["EU"],"brezhoneg"],"brh":["Latn",["ME","AS"],"Bráhuí"],"brx":["Deva",["AS"],"बड़ो"],"bs":["Latn",["EU"],"bosanski"],"bto":["Latn",["AS"],"Iriga Bicolano"],"bug":["Bugi",["AS"],"ᨅᨔ ᨕᨘᨁᨗ"],"bxr":["Cyrl",["AS"],"буряад"],"ca":["Latn",["EU"],"català"],"cbk-zam":["Latn",["AS"],"Chavacano de Zamboanga"],"cdo":["Latn",["AS"],"Mìng-dĕ̤ng-ngṳ̄"],"ce":["Cyrl",["EU"],"нохчийн"],"ceb":["Latn",["AS"],"Cebuano"],"ch":["Latn",["PA"],"Chamoru"],"cho":["Latn",["AM"],"Choctaw"],"chr":["Cher",["AM"],"ᏣᎳᎩ"],"chy":["Latn",["AM"],"Tsetsêhestâhese"],"ciw":["Latn",["AM"],"Ojibwemowin"],"ckb":["Arab",["ME"],"کوردی"],"cnh":["Latn",["AS"],"Lai holh"],"co":["Latn",["EU"],"corsu"],"cps":["Latn",["AS"],"Capiceño"],"cr":["Cans",["AM"],"ᓀᐦᐃᔭᐍᐏᐣ"],"cr-cans":["cr"],"cr-latn":["Latn",["AM"],"Nēhiyawēwin"],"crh":["Latn",["EU"],"qırımtatarca"],"crh-cyrl":["Cyrl",["EU"],"къырымтатарджа"],"crh-latn":["crh"],"cs":["Latn",["EU"],"čeština"],"csb":["Latn",["EU"],"kaszëbsczi"],"cu":["Cyrl",["EU"],"словѣньскъ \/ ⰔⰎⰑⰂⰡⰐⰠⰔⰍⰟ"],"cv":["Cyrl",["EU"],"Чӑвашла"],"cy":["Latn",["EU"],"Cymraeg"],"da":["Latn",["EU"],"dansk"],"de-at":["Latn",["EU"],"Österreichisches Deutsch"],"de-ch":["Latn",["EU"],"Schweizer Hochdeutsch"],"de-formal":["Latn",["EU"],"Deutsch (Sie-Form)"],"de":["Latn",["EU"],"Deutsch"],"din":["Latn",["AF"],"Thuɔŋjäŋ"],"diq":["Latn",["EU","AS"],"Zazaki"],"dsb":["Latn",["EU"],"dolnoserbski"],"dtp":["Latn",["AS"],"Dusun Bundu-liwan"],"dty":["Deva",["AS"],"डोटेली"],"dv":["Thaa",["AS"],"ދިވެހިބަސް"],"dz":["Tibt",["AS"],"ཇོང་ཁ"],"ee":["Latn",["AF"],"eʋegbe"],"egl":["Latn",["EU"],"Emiliàn"],"el":["Grek",["EU"],"Ελληνικά"],"eml":["Latn",["EU"],"emiliàn e rumagnòl"],"en-ca":["Latn",["AM"],"Canadian English"],"en-gb":["Latn",["EU","AS","PA"],"British English"],"en":["Latn",["EU","AM","AF","ME","AS","PA","WW"],"English"],"eo":["Latn",["WW"],"Esperanto"],"es-419":["Latn",["AM"],"español de America Latina"],"es-formal":["Latn",["EU","AM","AF","WW"],"español (formal)"],"es":["Latn",["EU","AM","AF","WW"],"español"],"esu":["Latn",["AM"],"Yup'ik"],"et":["Latn",["EU"],"eesti"],"eu":["Latn",["EU"],"euskara"],"ext":["Latn",["EU"],"estremeñu"],"fa":["Arab",["ME"],"فارسی"],"ff":["Latn",["AF"],"Fulfulde"],"fi":["Latn",["EU"],"suomi"],"fil":["tl"],"fit":["Latn",["EU"],"meänkieli"],"fiu-vro":["vro"],"fj":["Latn",["PA"],"Na Vosa Vakaviti"],"fo":["Latn",["EU"],"føroyskt"],"fr":["Latn",["EU","AM","WW"],"français"],"frc":["Latn",["AM"],"français cadien"],"frp":["Latn",["EU"],"arpetan"],"frr":["Latn",["EU"],"Nordfriisk"],"fur":["Latn",["EU"],"furlan"],"fy":["Latn",["EU"],"Frysk"],"ga":["Latn",["EU"],"Gaeilge"],"gag":["Latn",["EU"],"Gagauz"],"gah":["Latn",["AS"],"Alekano"],"gan-hans":["Hans",["AS"],"赣语(简体)"],"gan-hant":["gan"],"gan":["Hant",["AS"],"贛語"],"gbz":["Latn",["AS"],"Dari"],"gcf":["Latn",["AM"],"Guadeloupean Creole French"],"gd":["Latn",["EU"],"Gàidhlig"],"gl":["Latn",["EU"],"galego"],"glk":["Arab",["ME"],"گیلکی"],"gn":["Latn",["AM"],"Avañe'ẽ"],"gom":["Deva",["AS"],"कोंकणी"],"gom-deva":["gom"],"gom-latn":["Latn",["AS"],"Konknni"],"got":["Goth",["EU"],"𐌲𐌿𐍄𐌹𐍃𐌺"],"grc":["Grek",["EU"],"Ἀρχαία ἑλληνικὴ"],"gsw":["Latn",["EU"],"Alemannisch"],"gu":["Gujr",["AS"],"ગુજરાતી"],"guc":["Latn",["AM"],"Wayúu"],"gur":["Latn",["AF"],"Gurenɛ"],"gv":["Latn",["EU"],"Gaelg"],"ha-arab":["Arab",["AF"],"هَوُسَ"],"ha-latn":["Latn",["AF"],"Hausa"],"ha":["ha-latn"],"hak":["Latn",["AS"],"Hak-kâ-fa"],"haw":["Latn",["AM","PA"],"Hawai`i"],"he":["Hebr",["ME"],"עברית"],"hi":["Deva",["AS"],"हिन्दी"],"hif":["Latn",["PA","AS"],"Fiji Hindi"],"hif-deva":["Deva",["AS"],"फ़ीजी हिन्दी"],"hif-latn":["hif"],"hil":["Latn",["AS"],"Ilonggo"],"hne":["Deva",["AS"],"छत्तीसगढ़ी"],"ho":["Latn",["PA"],"Hiri Motu"],"hr":["Latn",["EU"],"hrvatski"],"hrx":["Latn",["AM"],"Hunsrik"],"hsb":["Latn",["EU"],"hornjoserbsce"],"hsn":["Hans",["AS"],"湘语"],"ht":["Latn",["AM"],"Kreyòl ayisyen"],"hu-formal":["Latn",["EU"],"Magyar (magázó)"],"hu":["Latn",["EU"],"magyar"],"hy":["Armn",["EU","ME"],"Հայերեն"],"hz":["Latn",["AF"],"Otsiherero"],"ia":["Latn",["WW"],"interlingua"],"id":["Latn",["AS"],"Bahasa Indonesia"],"ie":["Latn",["WW"],"Interlingue"],"ig":["Latn",["AF"],"Igbo"],"ii":["Yiii",["AS"],"ꆇꉙ"],"ik":["Latn",["AM"],"Iñupiak"],"ike-cans":["Cans",["AM"],"ᐃᓄᒃᑎᑐᑦ"],"ike-latn":["Latn",["AM"],"inuktitut"],"ilo":["Latn",["AS"],"Ilokano"],"inh":["Cyrl",["EU"],"ГӀалгӀай"],"io":["Latn",["WW"],"Ido"],"is":["Latn",["EU"],"íslenska"],"it":["Latn",["EU"],"italiano"],"iu":["Cans",["AM"],"ᐃᓄᒃᑎᑐᑦ"],"ja":["Jpan",["AS"],"日本語"],"jam":["Latn",["AM"],"Patois"],"jbo":["Latn",["WW"],"lojban"],"jdt":["jdt-cyrl"],"jdt-cyrl":["Cyrl",["EU","AS"],"жугьури"],"jut":["Latn",["EU"],"jysk"],"jv":["Latn",["AS","PA"],"Basa Jawa"],"jv-java":["Java",["AS","PA"],"ꦧꦱꦗꦮ"],"ka":["Geor",["EU"],"ქართული"],"kaa":["Latn",["AS"],"Qaraqalpaqsha"],"kab":["Latn",["AF","EU"],"Taqbaylit"],"kac":["Latn",["AS"],"Jinghpaw"],"kbd-cyrl":["kbd"],"kbd-latn":["Latn",["EU"],"Qabardjajəbza"],"kbd":["Cyrl",["EU","ME"],"Адыгэбзэ"],"kea":["Latn",["AF"],"Kabuverdianu"],"kg":["Latn",["AF"],"Kongo"],"kgp":["Latn",["AM"],"Kaingáng"],"khw":["Arab",["ME","AS"],"کھوار"],"ki":["Latn",["AF"],"Gĩkũyũ"],"kiu":["Latn",["EU","ME"],"Kırmancki"],"kj":["Latn",["AF"],"Kwanyama"],"kjh":["Cyrl",["AS"],"хакас"],"kk":["kk-cyrl"],"kk-arab":["Arab",["EU","AS"],"قازاقشا (تٶتە)"],"kk-cn":["kk-arab"],"kk-cyrl":["Cyrl",["EU","AS"],"қазақша"],"kk-kz":["kk-cyrl"],"kk-latn":["Latn",["EU","AS","ME"],"qazaqşa"],"kk-tr":["kk-latn"],"kl":["Latn",["AM","EU"],"kalaallisut"],"km":["Khmr",["AS"],"ភាសាខ្មែរ"],"kn":["Knda",["AS"],"ಕನ್ನಡ"],"ko-kp":["Kore",["AS"],"한국어 (조선)"],"ko":["Kore",["AS"],"한국어"],"koi":["Cyrl",["EU"],"Перем Коми"],"kr":["Latn",["AF"],"Kanuri"],"krc":["Cyrl",["EU"],"къарачай-малкъар"],"kri":["Latn",["AF"],"Krio"],"krj":["Latn",["ME","EU"],"Kinaray-a"],"krl":["Latn",["EU"],"Karjala"],"ks-arab":["Arab",["AS"],"کٲشُر"],"ks-deva":["Deva",["AS"],"कॉशुर"],"ks":["Arab",["AS"],"کٲشُر"],"ksf":["Latn",["AF"],"Bafia"],"ksh":["Latn",["EU"],"Ripoarisch"],"ku":["ku-latn"],"ku-arab":["Arab",["EU","ME"],"كوردي"],"ku-latn":["Latn",["EU","ME"],"Kurdî"],"kv":["Cyrl",["EU"],"коми"],"kw":["Latn",["EU"],"kernowek"],"ky":["Cyrl",["AS"],"Кыргызча"],"la":["Latn",["EU"],"Latina"],"lad":["lad-latn"],"lad-latn":["Latn",["ME","EU","AM"],"Ladino"],"lad-hebr":["Hebr",["ME","EU","AM"],"לאדינו"],"lb":["Latn",["EU"],"Lëtzebuergesch"],"lbe":["Cyrl",["EU"],"лакку"],"lez":["Cyrl",["EU"],"лезги"],"lfn":["Latn",["WW"],"Lingua Franca Nova"],"lg":["Latn",["AF"],"Luganda"],"li":["Latn",["EU"],"Limburgs"],"lij":["Latn",["EU"],"Ligure"],"liv":["Latn",["EU"],"Līvõ kēļ"],"lki":["Arab",["ME"],"لەکی‎"],"lkt":["Latn",["AM"],"Lakȟótiyapi"],"lld":["Latn",["EU"],"Ladin"],"lmo":["Latn",["EU"],"lumbaart"],"ln":["Latn",["AF"],"lingála"],"lo":["Laoo",["AS"],"ລາວ"],"loz":["Latn",["AF"],"Silozi"],"lt":["Latn",["EU"],"lietuvių"],"lrc":["Arab",["AS"],"لوری"],"ltg":["Latn",["EU"],"latgaļu"],"lud":["Latn",["EU"],"lüüdi"],"lus":["Latn",["AS"],"Mizo ţawng"],"lut":["Latn",["AM"],"dxʷləšucid"],"luz":["Arab",["ME"],"لری دومنی"],"lv":["Latn",["EU"],"latviešu"],"lzh":["Hant",["AS"],"文言"],"lzz":["Latn",["EU","ME"],"Lazuri"],"mai":["Deva",["AS"],"मैथिली"],"map-bms":["Latn",["AS"],"Basa Banyumasan"],"mdf":["Cyrl",["EU"],"мокшень"],"mfe":["Latn",["AM"],"Morisyen"],"mg":["Latn",["AF"],"Malagasy"],"mh":["Latn",["PA"],"Ebon"],"mhr":["Cyrl",["EU"],"олык марий"],"mi":["Latn",["PA"],"Māori"],"mic":["Latn",["AM"],"Mi'kmaq"],"min":["Latn",["AS"],"Baso Minangkabau"],"miq":["Latn",["AM"],"Mískitu"],"mk":["Cyrl",["EU"],"македонски"],"ml":["Mlym",["AS","ME"],"മലയാളം"],"mn":["Cyrl",["AS"],"монгол"],"mnc":["Mong",["AS"],"ᠮᠠᠨᠵᡠ ᡤᡳᠰᡠᠨ"],"mni":["Beng",["AS"],"মেইতেই লোন্"],"mnw":["Mymr",["AS"],"ဘာသာ မန်"],"mo":["Cyrl",["EU"],"молдовеняскэ"],"mr":["Deva",["AS","ME"],"मराठी"],"mrj":["Cyrl",["EU"],"кырык мары"],"ms":["Latn",["AS"],"Bahasa Melayu"],"mt":["Latn",["EU"],"Malti"],"mui":["Latn",["AS"],"Musi"],"mus":["Latn",["AM"],"Mvskoke"],"mwl":["Latn",["EU"],"Mirandés"],"mwv":["Latn",["AS"],"Behase Mentawei"],"mww":["mww-latn"],"mww-latn":["Latn",["AS"],"Hmoob Dawb"],"my":["Mymr",["AS"],"မြန်မာဘာသာ"],"myv":["Cyrl",["EU"],"эрзянь"],"mzn":["Arab",["ME","AS"],"مازِرونی"],"na":["Latn",["PA"],"Dorerin Naoero"],"nah":["Latn",["AM"],"Nāhuatl"],"nan":["Latn",["AS"],"Bân-lâm-gú"],"nap":["Latn",["EU"],"Napulitano"],"nb":["Latn",["EU"],"norsk (bokmål)"],"nds-nl":["Latn",["EU"],"Nedersaksisch"],"nds":["Latn",["EU"],"Plattdüütsch"],"ne":["Deva",["AS"],"नेपाली"],"new":["Deva",["AS"],"नेपाल भाषा"],"ng":["Latn",["AF"],"Oshiwambo"],"niu":["Latn",["PA"],"ko e vagahau Niuē"],"njo":["Latn",["AS"],"Ao"],"nl-informal":["Latn",["EU","AM"],"Nederlands (informeel)"],"nl":["Latn",["EU","AM"],"Nederlands"],"nn":["Latn",["EU"],"norsk (nynorsk)"],"no":["Latn",["EU"],"norsk"],"nov":["Latn",["WW"],"Novial"],"nqo":["Nkoo",["AF"],"ߒߞߏ"],"nrm":["Latn",["EU"],"Nouormand"],"nso":["Latn",["AF"],"Sesotho sa Leboa"],"nv":["Latn",["AM"],"Diné bizaad"],"ny":["Latn",["AF"],"Chi-Chewa"],"oc":["Latn",["EU"],"occitan"],"om":["Latn",["AF"],"Oromoo"],"or":["Orya",["AS"],"ଓଡ଼ିଆ"],"os":["Cyrl",["EU"],"Ирон"],"ota":["Arab",["AS","EU"],"لسان عثمانى"],"pa":["pa-guru"],"pa-guru":["Guru",["AS"],"ਪੰਜਾਬੀ"],"pag":["Latn",["AS"],"Pangasinan"],"pam":["Latn",["AS"],"Kapampangan"],"pap":["Latn",["AM"],"Papiamentu"],"pbb":["Latn",["AM"],"Nasa Yuwe"],"pcd":["Latn",["EU"],"Picard"],"pdc":["Latn",["EU","AM"],"Deitsch"],"pdt":["Latn",["EU","AM"],"Plautdietsch"],"pfl":["Latn",["EU"],"Pälzisch"],"pi":["Deva",["AS"],"पालि"],"pih":["Latn",["PA"],"Norfuk \/ Pitkern"],"pis":["Latn",["PA"],"Pijin"],"pko":["Latn",["AF"],"Pökoot"],"pl":["Latn",["EU"],"polski"],"pms":["Latn",["EU"],"Piemontèis"],"pnb":["Arab",["AS","ME"],"پنجابی"],"pnt":["Grek",["EU"],"Ποντιακά"],"ppl":["Latn",["AM"],"Nawat"],"prg":["Latn",["EU"],"Prūsiskan"],"ps":["Arab",["AS","ME"],"پښتو"],"pt-br":["Latn",["AM"],"português do Brasil"],"pt":["Latn",["EU","AM","AS","PA","AF","WW"],"português"],"qu":["Latn",["AM"],"Runa Simi"],"qug":["Latn",["AM"],"Runa shimi"],"rap":["Latn",["AM"],"arero rapa nui"],"rcf":["Latn",["AF"],"Kreol Réyoné"],"rgn":["Latn",["EU"],"Rumagnôl"],"rif":["Latn",["AF"],"Tarifit"],"rki":["Mymr",["AS"],"ရခိုင်"],"rm":["Latn",["EU"],"rumantsch"],"rmf":["Latn",["EU"],"kaalengo tšimb"],"rmy":["Latn",["EU"],"Romani"],"rn":["Latn",["AF"],"Kirundi"],"ro":["Latn",["EU"],"română"],"roa-rup":["rup"],"roa-tara":["Latn",["EU"],"tarandíne"],"rtm":["Latn",["PA"],"Faeag Rotuma"],"ru":["Cyrl",["EU","AS","ME"],"русский"],"rue":["Cyrl",["EU"],"русиньскый"],"rup":["Latn",["EU"],"armãneashti"],"ruq":["Cyrl",["EU"],"Влахесте"],"ruq-cyrl":["ruq"],"ruq-grek":["Grek",["EU"],"Megleno-Romanian (Greek script)"],"ruq-latn":["Latn",["EU"],"Vlăheşte"],"rut":["Cyrl",["EU"],"мыхаӀбишды"],"rw":["Latn",["AF"],"Kinyarwanda"],"rwr":["Deva",["AS"],"मारवाड़ी"],"ryu":["Kana",["AS"],"ʔucināguci"],"sa":["Deva",["AS"],"संस्कृतम्"],"sah":["Cyrl",["EU","AS"],"саха тыла"],"sat":["Latn",["AS"],"Santali"],"saz":["Saur",["AS"],"ꢱꣃꢬꢵꢯ꣄ꢡ꣄ꢬꢵ"],"sc":["Latn",["EU"],"sardu"],"scn":["Latn",["EU"],"sicilianu"],"sco":["Latn",["EU"],"Scots"],"sd":["Arab",["AS"],"سنڌي"],"sdc":["Latn",["EU"],"Sassaresu"],"sdh":["Arab",["ME"],"کوردی خوارگ"],"se":["Latn",["EU"],"sámegiella"],"ses":["Latn",["AF"],"Koyraboro Senni"],"sei":["Latn",["AM"],"Cmique Itom"],"sg":["Latn",["AF"],"Sängö"],"sgs":["Latn",["EU"],"žemaitėška"],"sh":["Latn",["EU"],"srpskohrvatski"],"shi-latn":["Latn",["AF"],"Tašlḥiyt"],"shi-tfng":["Tfng",["AF"],"ⵜⴰⵛⵍⵃⵉⵜ"],"shi":["shi-latn"],"shn":["Mymr",["AS"],"လိၵ်ႈတႆး"],"si":["Sinh",["AS"],"සිංහල"],"simple":["Latn",["WW"],"Simple English"],"sk":["Latn",["EU"],"slovenčina"],"sl":["Latn",["EU"],"slovenščina"],"sli":["Latn",["EU"],"Schläsch"],"slr":["Latn",["AS"],"Salırça"],"sly":["Latn",["AS"],"Bahasa Selayar"],"syc":["Syrc",["ME"],"ܣܘܪܝܝܐ"],"sm":["Latn",["PA"],"Gagana Samoa"],"sma":["Latn",["EU"],"åarjelsaemien"],"smj":["Latn",["EU"],"julevsámegiella"],"smn":["Latn",["EU"],"anarâškielâ"],"sms":["Latn",["EU"],"sää´mǩiõll"],"sn":["Latn",["AF"],"chiShona"],"so":["Latn",["AF"],"Soomaaliga"],"son":["Latn",["AF"],"soŋay"],"sq":["Latn",["EU"],"shqip"],"sr":["sr-cyrl"],"sr-ec":["sr-cyrl"],"sr-cyrl":["Cyrl",["EU"],"српски"],"sr-el":["sr-latn"],"sr-latn":["Latn",["EU"],"srpski"],"srn":["Latn",["AM","EU"],"Sranantongo"],"ss":["Latn",["AF"],"SiSwati"],"st":["Latn",["AF"],"Sesotho"],"stq":["Latn",["EU"],"Seeltersk"],"su":["Latn",["AS"],"Basa Sunda"],"sv":["Latn",["EU"],"svenska"],"sw":["Latn",["AF"],"Kiswahili"],"swb":["Latn",["AF"],"Shikomoro"],"sxu":["Latn",["EU"],"Säggssch"],"szl":["Latn",["EU"],"ślůnski"],"ta":["Taml",["AS"],"தமிழ்"],"tcy":["Knda",["AS"],"ತುಳು"],"te":["Telu",["AS"],"తెలుగు"],"tet":["Latn",["AS","PA"],"tetun"],"tg-cyrl":["Cyrl",["AS"],"тоҷикӣ"],"tg-latn":["Latn",["AS"],"tojikī"],"tg":["Cyrl",["AS"],"тоҷикӣ"],"th":["Thai",["AS"],"ไทย"],"ti":["Ethi",["AF"],"ትግርኛ"],"tk":["Latn",["AS"],"Türkmençe"],"tkr":["Cyrl",["AS"],"ЦӀаьхна миз"],"tl":["Latn",["AS"],"Tagalog"],"tly":["Cyrl",["EU","AS","ME"],"толышә зывон"],"tn":["Latn",["AF"],"Setswana"],"to":["Latn",["PA"],"lea faka-Tonga"],"tokipona":["Latn",["WW"],"Toki Pona"],"tpi":["Latn",["PA","AS"],"Tok Pisin"],"tr":["Latn",["EU","ME"],"Türkçe"],"trp":["Latn",["AS"],"Kokborok (Tripuri)"],"tru":["Latn",["AS"],"Ṫuroyo"],"ts":["Latn",["AF"],"Xitsonga"],"tsd":["Grek",["EU"],"Τσακωνικά"],"tt":["Cyrl",["EU"],"татарча"],"tt-cyrl":["tt"],"tt-latn":["Latn",["EU"],"tatarça"],"ttt":["Cyrl",["AS"],"Tati"],"tum":["Latn",["AF"],"chiTumbuka"],"tw":["Latn",["AF"],"Twi"],"twd":["Latn",["EU"],"Tweants"],"ty":["Latn",["PA"],"reo tahiti"],"tyv":["Cyrl",["AS"],"тыва дыл"],"tzm":["Tfng",["AF"],"ⵜⴰⵎⴰⵣⵉⵖⵜ"],"udm":["Cyrl",["EU"],"удмурт"],"ug":["ug-arab"],"ug-arab":["Arab",["AS"],"ئۇيغۇرچە"],"ug-latn":["Latn",["AS"],"uyghurche"],"ug-cyrl":["Cyrl",["AS"],"уйғурчә"],"uk":["Cyrl",["EU"],"українська"],"ur":["Arab",["AS","ME"],"اردو"],"uz":["Latn",["AS"],"oʻzbekcha"],"ve":["Latn",["AF"],"Tshivenda"],"vec":["Latn",["EU"],"vèneto"],"vep":["Latn",["EU"],"vepsän kel’"],"vi":["Latn",["AS"],"Tiếng Việt"],"vls":["Latn",["EU"],"West-Vlams"],"vmf":["Latn",["EU"],"Mainfränkisch"],"vo":["Latn",["WW"],"Volapük"],"vot":["Latn",["EU"],"Vaďďa"],"vro":["Latn",["EU"],"Võro"],"wa":["Latn",["EU"],"walon"],"war":["Latn",["AS"],"Winaray"],"wls":["Latn",["PA"],"Faka'uvea"],"wo":["Latn",["AF"],"Wolof"],"wuu":["Hans",["AS"],"吴语"],"xal":["Cyrl",["EU"],"хальмг"],"xh":["Latn",["AF"],"isiXhosa"],"xmf":["Geor",["EU"],"მარგალური"],"ydd":["Hebr",["AS","EU"],"Eastern Yiddish"],"yi":["Hebr",["ME","EU","AM"],"ייִדיש"],"yo":["Latn",["AF"],"Yorùbá"],"yrk":["Cyrl",["AS"],"Ненэцяʼ вада"],"yrl":["Latn",["AM"],"ñe'engatú"],"yua":["Latn",["AM"],"Maaya T'aan"],"yue":["Hant",["AS"],"粵語"],"za":["Latn",["AS"],"Vahcuengh"],"zea":["Latn",["EU"],"Zeêuws"],"zgh":["Tfng",["AF"],"ⵜⴰⵎⴰⵣⵉⵖⵜ"],"zh":["Hans",["AS"],"中文"],"zh-classical":["Hant",["AS"],"文言"],"zh-cn":["Hans",["AS"],"中文(中国大陆)"],"zh-hans":["Hans",["AS"],"中文(简体)"],"zh-hant":["Hant",["AS"],"中文(繁體)"],"zh-hk":["Hant",["AS"],"中文(香港)"],"zh-min-nan":["nan"],"zh-mo":["Hant",["AS"],"中文(澳門)"],"zh-my":["Hans",["AS"],"中文(马来西亚)"],"zh-sg":["Hans",["AS"],"中文(新加坡)"],"zh-tw":["Hant",["AS"],"中文(台灣)"],"zh-yue":["yue"],"zu":["Latn",["AF"],"isiZulu"]},"scriptgroups":{"Latin":["Latn","Goth"],"Greek":["Grek"],"WestCaucasian":["Armn","Geor"],"Arabic":["Arab"],"MiddleEastern":["Hebr","Syrc"],"African":["Ethi","Nkoo","Tfng"],"SouthAsian":["Beng","Deva","Gujr","Guru","Knda","Mlym","Orya","Saur","Sinh","Taml","Telu","Tibt","Thaa"],"Cyrillic":["Cyrl"],"CJK":["Hans","Hant","Kana","Kore","Jpan","Yiii"],"SouthEastAsian":["Bali","Batk","Bugi","Java","Khmr","Laoo","Mymr","Thai"],"Mongolian":["Mong"],"SignWriting":["Sgnw"],"NativeAmerican":["Cher","Cans"],"Special":["Zyyy"]},"rtlscripts":["Arab","Hebr","Syrc","Nkoo","Thaa"],"regiongroups":{"WW":1,"SP":1,"AM":2,"EU":3,"ME":3,"AF":3,"AS":4,"PA":4},"territories":{"AC":["en"],"AD":["ca","es","fr"],"AE":["ar","ml","ps","bal","fa"],"AF":["fa","ps","haz","uz-arab","tk-latn","prd","bal","ug-arab","kk-arab"],"AG":["en","pt"],"AI":["en"],"AL":["sq","el","mk"],"AM":["hy","ku-latn","az-latn"],"AO":["pt","umb","kmb","ln"],"AQ":["und"],"AR":["es","cy","gn"],"AS":["sm","en"],"AT":["de","bar","hr","sl","hu"],"AU":["en","zh-hant","it"],"AW":["nl","pap","en"],"AX":["sv"],"AZ":["az-latn","az-cyrl","tly-latn","ku-latn","ttt-latn","tkr-latn"],"BA":["bs-cyrl","bs-latn","hr","sr-cyrl","sr-latn"],"BB":["en"],"BD":["bn","rkt","syl","ccp","my","grt","mni"],"BE":["nl","en","fr","vls","wa","de"],"BF":["mos","dyu","fr"],"BG":["bg","tr"],"BH":["ar","ml"],"BI":["rn","fr","sw"],"BJ":["fr","fon","yo"],"BL":["fr"],"BM":["en"],"BN":["ms-latn","zh-hant","ms-arab","en"],"BO":["es","qu","ay","gn","aro"],"BQ":["pap","nl"],"BR":["pt","de","it","ja","ko","kgp","gub","yrl","xav"],"BS":["en"],"BT":["dz","ne","tsj","lep"],"BV":["und"],"BW":["en","tn","af"],"BY":["be","ru"],"BZ":["en","es"],"CA":["en","fr","it","de","pdt","cr-cans","crk","yi","iu-cans","iu-latn","moe","crj","atj","crl","csw","crm","ikt","moh","dgr","den","scs","nsk","chp","gwi"],"CC":["ms-arab","en"],"CD":["sw","lua","swc","fr","ln","lu","kg","lol","rw"],"CF":["fr","sg","ln"],"CG":["fr","ln"],"CH":["de","fr","gsw","it","lmo","rm","rmo","wae"],"CI":["fr","bci","sef","dnj","kfo","bqv"],"CK":["en"],"CL":["es","arn"],"CM":["fr","en","bum","ff","ewo","ybb","bbj","nnh","bkm","bas","bax","byv","mua","maf","bfd","bss","kkj","dua","mgo","ar","jgo","ksf","agq","ha-arab","nmg","yav"],"CN":["zh-hans","wuu","hsn","hak","nan","gan","ii","ug-arab","za","mn-mong","bo","ko","kk-arab","lis","ky-arab","nxq","khb","tdd","lcp","en","ru","vi","uz-cyrl","lzh"],"CO":["es","guc"],"CP":["und"],"CR":["es"],"CU":["es"],"CV":["kea","pt"],"CW":["pap","nl","es"],"CX":["en"],"CY":["el","tr","hy","ar"],"CZ":["cs","de","pl"],"DE":["de","en","nds","vmf","tr","hr","it","ku-latn","ru","el","ksh","pl","es","nl","da","hsb","frr","dsb","frs","stq","pfl"],"DG":["en"],"DJ":["aa","so","ar","fr"],"DK":["da","de","kl","jut"],"DM":["en"],"DO":["es","en"],"DZ":["arq","ar","fr","kab"],"EA":["es"],"EC":["es","qu","qug"],"EE":["et","ru","vro"],"EG":["ar","arz","el"],"EH":["ar"],"ER":["ti","en","tig","ar","aa","ssy","byn"],"ES":["es","en","ca","gl","eu","ast","ext"],"ET":["en","am","om","so","ti","sid","wal","aa"],"FI":["fi","sv","ru","en","et","rmf","se","smn","sms"],"FJ":["en","hi","hif-deva","fj","rtm"],"FK":["en"],"FM":["chk","pon","kos","yap","en","uli"],"FO":["fo"],"FR":["fr","en","oc","it","pt","pcd","gsw","br","co","ca","nl","eu","frp","ia"],"GA":["fr","puu"],"GB":["en","sco","pa-guru","cy","bn","zh-hant","syl","el","it","ks-arab","gd","yi","ml","ga","fr","kw"],"GD":["en"],"GE":["ka","xmf","ru","hy","ab","os","ku-latn"],"GF":["fr","gcr","zh-hant"],"GG":["en"],"GH":["ak","en","ee","abr","gur","gaa","ha-latn","saf"],"GI":["en"],"GL":["kl","da"],"GM":["en","man-latn"],"GN":["fr","ff","man-nkoo","sus","nqo","kpe"],"GP":["fr"],"GQ":["es","fan","fr","bvb"],"GR":["el","pnt-grek","mk","tr","bg","sq","tsd"],"GS":["und"],"GT":["es","quc"],"GU":["en","ch"],"GW":["pt"],"GY":["en"],"HK":["zh-hant","en","zh-hans"],"HM":["und"],"HN":["es","en"],"HR":["hr","it"],"HT":["ht","fr"],"HU":["hu","de","ro","hr","sk","sl"],"IC":["es"],"ID":["id","jv","su","mad","ms-arab","min","bew","ban","bug","bjn","ace","sas","bbc","zh-hant","mak","ljp","rej","gor","nij","kge","aoz","kvr","lbw","rob","mdr","sxn","sly","mwv"],"IE":["en","ga"],"IL":["he","ar","ru","ro","yi","en","pl","lad","hu","am","ti","ml"],"IM":["en","gv"],"IN":["hi","en","bn","te","mr","ta","ur","gu","kn","ml","or","pa-guru","bho","awa","as","bgc","mag","mwr","mai","hne","dcc","bjj","ne","sat","wtm","rkt","ks-arab","kok","gom","swv","gbm","lmn","sd-arab","gon-telu","kfy","doi","kru","sck","wbq","xnr","tcy","wbr","khn","brx","noe","bhb","mni","raj","hoc","mtr","unr-beng","bhi","hoj","kha","kfr","grt","unx-beng","bfy","srx","saz","ccp","sd-deva","bfq","njo","ria","bo","bpy","bft","bra","lep","btv","lif-deva","lah","sa","kht","dv","dz"],"IO":["en"],"IQ":["ar","ckb","fa","syr"],"IR":["fa","az-arab","azb","mzn","glk","ckb","tk-latn","lrc","ar","bal","rmt","bqi","luz","lki","prd","hy","ps","ka","gbz","kk-arab"],"IS":["is","da"],"IT":["it","en","fr","lmo","pms","sc","de","vec","nap","lij","scn","sl","sdc","fur","egl","ca","el","hr","rgn"],"JE":["en"],"JM":["en","jam"],"JO":["ar"],"JP":["ja","ryu","ko"],"KE":["en","sw","ki","luy","luo","kam","kln","guz","mer","mas","ebu","so","dav","teo","pko","om","saq","ar","pa-guru","gu"],"KG":["ky-cyrl","ru"],"KH":["km","cja","kdt"],"KI":["en","gil"],"KM":["ar","fr","zdj"],"KN":["en"],"KP":["ko"],"KR":["ko"],"KW":["ar"],"KY":["en"],"KZ":["ru","kk-cyrl","de","ug-cyrl"],"LA":["lo","kjg","kdt"],"LB":["ar","hy","ku-arab","fr","en"],"LC":["en"],"LI":["de","gsw","wae"],"LK":["si","ta","en"],"LR":["en","kpe","vai-vaii","men","vai-latn"],"LS":["st","zu","ss","en","xh"],"LT":["lt","ru","sgs"],"LU":["fr","lb","de"],"LV":["lv","ru","ltg"],"LY":["ar"],"MA":["ary","ar","zgh","fr","tzm-latn","shi-latn","shi-tfng","rif-latn","rif-tfng","es"],"MC":["fr"],"MD":["ro","uk","bg","gag","ru"],"ME":["sr-latn","sq","sr-cyrl"],"MF":["fr"],"MG":["mg","fr","en"],"MH":["en","mh"],"MK":["mk","sq","tr"],"ML":["bm-latn","fr","ffm","snk","mwk","ses","tmh","bm-nkoo","khq","dtm","kao","ar","bmq","bze"],"MM":["my","shn","mnw","kht"],"MN":["mn-cyrl","kk-arab","zh-hans","ru","ug-cyrl"],"MO":["zh-hant","pt","zh-hans","en"],"MP":["en","ch"],"MQ":["fr"],"MR":["ar","fr","ff","wo"],"MS":["en"],"MT":["mt","en"],"MU":["mfe","en","bho","ur","fr","ta"],"MV":["dv"],"MW":["en","ny","tum","zu"],"MX":["es","yua","nhe","nhw","maz","nch","sei"],"MY":["ms-latn","en","zh-hant","ta","jv","zmi","dtp","ml","bug","bjn"],"MZ":["pt","vmw","ndc","ts","ngl","seh","mgh","rng","ny","yao","sw","zu"],"NA":["af","kj","ng","naq","en","de","tn"],"NC":["fr"],"NE":["ha-latn","fr","dje","fuq","tmh","ar","twq"],"NF":["en"],"NG":["en","pcm","ha-latn","ig","yo","fuv","tiv","efi","ibb","ha-arab","bin","kaj","kcg","ar","cch","amo"],"NI":["es"],"NL":["nl","en","li","fy","gos","id","zea","rif-latn","tr"],"NO":["nb","nn","se"],"NP":["ne","mai","bho","new","jml","taj","awa","thl","bap","tdg","thr","mgp","lif-deva","thq","mrd","bfy","xsr","rjs","tsf","hi","ggn","gvr","bo","tkt","tdh","bn","unr-deva","lep"],"NR":["en","na"],"NU":["en","niu"],"NZ":["en","mi"],"OM":["ar","bal","fa"],"PA":["es","en","zh-hant"],"PE":["es","qu","ay"],"PF":["fr","ty","zh-hant"],"PG":["tpi","en","ho"],"PH":["en","fil","es","ceb","ilo","hil","bik","war","bhk","pam","pag","mdh","tsg","zh-hant","cps","krj","bto","hnn","tbw","bku"],"PK":["ur","pa-arab","en","lah","ps","sd-arab","skr","bal","brh","hno","fa","hnd","tg-arab","gju","bft","kvx","khw","mvy","kxp","gjk","ks-arab","btv"],"PL":["pl","szl","be","uk","csb","de","sli","lt"],"PM":["fr","en"],"PN":["en"],"PR":["es","en"],"PS":["ar"],"PT":["pt","gl"],"PW":["pau","en"],"PY":["gn","es","de"],"QA":["ar","fa","ml"],"RE":["fr","rcf","ta"],"RO":["ro","hu","de","tr","sr-latn","bg","el","pl"],"RS":["sr-cyrl","sr-latn","sq","hu","ro","hr","sk","uk"],"RU":["ru","tt","ba","cv","hy","ce","av","udm","chm","sah","os","kbd","myv","dar","bua","mdf","kum","kv","lez","krc","inh","tyv","az-cyrl","ady","krl","lbe","koi","mrj","alt","fi","sr-latn","vep","mn-cyrl","izh","cu"],"RW":["rw","fr","en"],"SA":["ar"],"SB":["en","rug"],"SC":["crs","fr","en"],"SD":["ar","en","nus","ha-arab"],"SE":["sv","fi","fit","se","rmu","yi","smj","sma","ia"],"SG":["en","zh-hans","ms-latn","ta","ml","pa-guru"],"SH":["en"],"SI":["sl","hu","it"],"SJ":["nb","ru"],"SK":["sk","hu","uk","pl","de"],"SL":["kri","en","men","tem"],"SM":["it","eo"],"SN":["wo","fr","ff","srr","dyo"],"SO":["so","ar","sw","om"],"SR":["nl","srn","zh-hant"],"SS":["ar","en"],"ST":["pt"],"SV":["es"],"SX":["en","es","vic","nl"],"SY":["ar","ku-latn","fr","hy","syr"],"SZ":["en","ss","zu","ts"],"TA":["en"],"TC":["en"],"TD":["fr","ar"],"TF":["fr"],"TG":["fr","ee"],"TH":["th","tts","nod","sou","mfa","zh-hant","kxm","kdt","mnw","shn","lcp","lwl"],"TJ":["tg-cyrl","ru","fa","ar"],"TK":["en","tkl"],"TL":["pt","tet"],"TM":["tk-latn","ru","uz-latn","ku-latn"],"TN":["aeb","ar","fr"],"TO":["to","en"],"TR":["tr","ku-latn","zza","kbd","az-latn","ar","bgx","bg","ady","kiu","hy","ka","sr-latn","lzz-latn","sq","ab","el","tru","uz-latn","ky-latn","kk-cyrl"],"TT":["en","es"],"TV":["tvl","en"],"TW":["zh-hant","trv"],"TZ":["sw","en","suk","nym","kde","bez","ksb","mas","mgy","asa","lag","jmc","rof","vun","rwk","sbp"],"UA":["uk","ru","pl","yi","rue","be","ro","bg","tr","hu","el"],"UG":["sw","lg","nyn","cgg","xog","en","teo","laj","ach","myx","rw","ttj","hi"],"UM":["en"],"US":["en","es","zh-hant","fr","de","fil","it","vi","ko","ru","nv","yi","pdc","haw","frc","chr","esu","lkt","ik"],"UY":["es"],"UZ":["uz-latn","uz-cyrl","ru","kaa","tr"],"VA":["it","la"],"VC":["en"],"VE":["es"],"VG":["en"],"VI":["en"],"VN":["vi","zh-hant","cjm"],"VU":["bi","en","fr"],"WF":["wls","fr","fud"],"WS":["sm","en"],"XK":["sq","aln","sr-cyrl","sr-latn"],"YE":["ar"],"YT":["swb","fr","buc","sw"],"ZA":["en","zu","xh","af","nso","tn","st","ts","ss","ve","hi","nr","sw"],"ZM":["en","bem","ny","loz"],"ZW":["en","sn","nd","mxc","ndc","kck","ny","ve","tn"],"ZZ":[]}};
+} ( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/src/jquery.uls.data.utils.js b/MLEB/UniversalLanguageSelector/lib/jquery.uls/src/jquery.uls.data.utils.js
new file mode 100644
index 00000000..7ff77114
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/src/jquery.uls.data.utils.js
@@ -0,0 +1,465 @@
+/**
+ * Utility functions for querying language data.
+ *
+ * Copyright (C) 2012 Alolita Sharma, Amir Aharoni, Arun Ganesh, Brandon Harris,
+ * Niklas Laxström, Pau Giner, Santhosh Thottingal, Siebrand Mazeland and other
+ * contributors. See CREDITS for a list.
+ *
+ * UniversalLanguageSelector is dual licensed GPLv2 or later and MIT. You don't
+ * have to do anything special to choose one license or the other and you don't
+ * have to notify anyone which license you are using. You are free to use
+ * UniversalLanguageSelector in commercial projects as long as the copyright
+ * header is left intact. See files GPL-LICENSE and MIT-LICENSE for details.
+ *
+ * @file
+ * @ingroup Extensions
+ * @licence GNU General Public Licence 2.0 or later
+ * @licence MIT License
+ */
+
+( function ( $ ) {
+ 'use strict';
+
+ /**
+ * Is this language a redirect to another language?
+ * @param language string Language code
+ * @return Target language code if it's a redirect or false if it's not
+ */
+ $.uls.data.isRedirect = function ( language ) {
+ return ( $.uls.data.languages[language] !== undefined &&
+ $.uls.data.languages[language].length === 1 ) ? $.uls.data.languages[language][0] : false;
+ };
+
+ /**
+ * Returns the script of the language.
+ * @param language string Language code
+ * @return string
+ */
+ $.uls.data.getScript = function ( language ) {
+ var target = $.uls.data.isRedirect( language );
+
+ if ( target ) {
+ return $.uls.data.getScript( target );
+ }
+
+ if ( !$.uls.data.languages[language] ) {
+ // Undetermined
+ return 'Zyyy';
+ }
+
+ return $.uls.data.languages[language][0];
+ };
+
+ /**
+ * Returns the regions in which a language is spoken.
+ * @param language string Language code
+ * @return array|string 'UNKNOWN'
+ */
+ $.uls.data.getRegions = function ( language ) {
+ var target = $.uls.data.isRedirect( language );
+
+ if ( target ) {
+ return $.uls.data.getRegions( target );
+ }
+
+ return ( $.uls.data.languages[language] && $.uls.data.languages[language][1] ) || 'UNKNOWN';
+ };
+
+ /**
+ * Returns the autonym of the language.
+ * @param language string Language code
+ * @return string
+ */
+ $.uls.data.getAutonym = function ( language ) {
+ var target = $.uls.data.isRedirect( language );
+
+ if ( target ) {
+ return $.uls.data.getAutonym( target );
+ }
+
+ return ( $.uls.data.languages[language] && $.uls.data.languages[language][2] ) || language;
+ };
+
+ /**
+ * Returns all language codes and corresponding autonyms
+ * @return array
+ */
+ $.uls.data.getAutonyms = function () {
+ var language,
+ autonymsByCode = {};
+
+ for ( language in $.uls.data.languages ) {
+ if ( $.uls.data.isRedirect( language ) ) {
+ continue;
+ }
+
+ autonymsByCode[language] = $.uls.data.getAutonym( language );
+ }
+
+ return autonymsByCode;
+ };
+
+ /**
+ * Returns an array of all region codes.
+ * @return array
+ */
+ $.uls.data.getAllRegions = function () {
+ var region,
+ allRegions = [];
+
+ for ( region in $.uls.data.regiongroups ) {
+ allRegions.push( region );
+ }
+
+ return allRegions;
+ };
+
+ /**
+ * Returns all languages written in script.
+ * @param script string
+ * @return array of strings (languages codes)
+ */
+ $.uls.data.getLanguagesInScript = function ( script ) {
+ return $.uls.data.getLanguagesInScripts( [ script ] );
+ };
+
+ /**
+ * Returns all languages written in the given scripts.
+ * @param scripts array of strings
+ * @return array of strings (languages codes)
+ */
+ $.uls.data.getLanguagesInScripts = function ( scripts ) {
+ var language, i,
+ languagesInScripts = [];
+
+ for ( language in $.uls.data.languages ) {
+ if ( $.uls.data.isRedirect( language ) ) {
+ continue;
+ }
+
+ for ( i = 0; i < scripts.length; i++ ) {
+ if ( scripts[i] === $.uls.data.getScript( language ) ) {
+ languagesInScripts.push( language );
+ break;
+ }
+ }
+ }
+
+ return languagesInScripts;
+ };
+
+ /**
+ * Returns all languages in a given region.
+ * @param region string
+ * @return array of strings (languages codes)
+ */
+ $.uls.data.getLanguagesInRegion = function ( region ) {
+ return $.uls.data.getLanguagesInRegions( [ region ] );
+ };
+
+ /**
+ * Returns all languages in given regions.
+ * @param regions array of strings.
+ * @return array of strings (languages codes)
+ */
+ $.uls.data.getLanguagesInRegions = function ( regions ) {
+ var language, i,
+ languagesInRegions = [];
+
+ for ( language in $.uls.data.languages ) {
+ if ( $.uls.data.isRedirect( language ) ) {
+ continue;
+ }
+
+ for ( i = 0; i < regions.length; i++ ) {
+ if ( $.inArray( regions[i], $.uls.data.getRegions( language ) ) !== -1 ) {
+ languagesInRegions.push( language );
+ break;
+ }
+ }
+ }
+
+ return languagesInRegions;
+ };
+
+ /**
+ * Returns all languages in a region group.
+ * @param groupNum number.
+ * @return array of strings (languages codes)
+ */
+ $.uls.data.getLanguagesInRegionGroup = function ( groupNum ) {
+ return $.uls.data.getLanguagesInRegions( $.uls.data.getRegionsInGroup( groupNum ) );
+ };
+
+ /**
+ * Returns an associative array of languages in a region,
+ * grouped by script.
+ * @param region string Region code
+ * @return associative array
+ */
+ $.uls.data.getLanguagesByScriptInRegion = function ( region ) {
+ var language, script,
+ languagesByScriptInRegion = {};
+
+ for ( language in $.uls.data.languages ) {
+ if ( $.uls.data.isRedirect( language ) ) {
+ continue;
+ }
+
+ if ( $.inArray( region, $.uls.data.getRegions( language ) ) !== -1 ) {
+ script = $.uls.data.getScript( language );
+
+ if ( languagesByScriptInRegion[script] === undefined ) {
+ languagesByScriptInRegion[script] = [];
+ }
+ languagesByScriptInRegion[script].push( language );
+ }
+ }
+
+ return languagesByScriptInRegion;
+ };
+
+ /**
+ * Returns an associative array of languages in a region,
+ * grouped by script group.
+ * @param region string Region code
+ * @return associative array
+ */
+ $.uls.data.getLanguagesByScriptGroupInRegion = function ( region ) {
+ return $.uls.data.getLanguagesByScriptGroupInRegions( [ region ] );
+ };
+
+ /**
+ * Returns an associative array of all languages,
+ * grouped by script group.
+ * @return associative array
+ */
+ $.uls.data.getAllLanguagesByScriptGroup = function () {
+ return $.uls.data.getLanguagesByScriptGroupInRegions( $.uls.data.getAllRegions() );
+ };
+
+ /**
+ * Get the given list of languages grouped by script.
+ * @param languages Array of language codes
+ * @return {Object} Array of languages indexed by script codes
+ */
+ $.uls.data.getLanguagesByScriptGroup = function ( languages ) {
+ var languagesByScriptGroup = {},
+ language, codeToAdd, langScriptGroup;
+
+ for ( language in languages ) {
+ codeToAdd = $.uls.data.isRedirect( language ) || language;
+
+ langScriptGroup = $.uls.data.getScriptGroupOfLanguage( codeToAdd );
+
+ if ( !languagesByScriptGroup[langScriptGroup] ) {
+ languagesByScriptGroup[langScriptGroup] = [];
+ }
+
+ // Prevent duplicate adding of redirects
+ if ( $.inArray( codeToAdd, languagesByScriptGroup[langScriptGroup] ) === -1 ) {
+ languagesByScriptGroup[langScriptGroup].push( codeToAdd );
+ }
+ }
+
+ return languagesByScriptGroup;
+ };
+
+ /**
+ * Returns an associative array of languages in several regions,
+ * grouped by script group.
+ * @param regions array of strings - region codes
+ * @return associative array
+ */
+ $.uls.data.getLanguagesByScriptGroupInRegions = function ( regions ) {
+ var language, i, scriptGroup,
+ languagesByScriptGroupInRegions = {};
+
+ for ( language in $.uls.data.languages ) {
+ if ( $.uls.data.isRedirect( language ) ) {
+ continue;
+ }
+
+ for ( i = 0; i < regions.length; i++ ) {
+ if ( $.inArray( regions[i], $.uls.data.getRegions( language ) ) !== -1 ) {
+ scriptGroup = $.uls.data.getScriptGroupOfLanguage( language );
+
+ if ( languagesByScriptGroupInRegions[scriptGroup] === undefined ) {
+ languagesByScriptGroupInRegions[scriptGroup] = [];
+ }
+
+ languagesByScriptGroupInRegions[scriptGroup].push( language );
+ break;
+ }
+ }
+ }
+
+ return languagesByScriptGroupInRegions;
+ };
+
+ /**
+ * Returns an array of languages grouped by region group,
+ * region, script group and script.
+ * @return associative array
+ */
+ $.uls.data.getAllLanguagesByRegionAndScript = function () {
+ var region, regionGroup, language,
+ script, scriptGroup, regions, regionNum,
+ allLanguagesByRegionAndScript = {};
+
+ for ( region in $.uls.data.regiongroups ) {
+ regionGroup = $.uls.data.regiongroups[region];
+
+ if ( allLanguagesByRegionAndScript[regionGroup] === undefined ) {
+ allLanguagesByRegionAndScript[regionGroup] = {};
+ }
+
+ allLanguagesByRegionAndScript[regionGroup][region] = {};
+ }
+
+ for ( language in $.uls.data.languages ) {
+ if ( $.uls.data.isRedirect( language ) ) {
+ continue;
+ }
+
+ script = $.uls.data.getScript( language );
+ scriptGroup = $.uls.data.getGroupOfScript( script );
+ regions = $.uls.data.getRegions( language );
+
+ for ( regionNum = 0; regionNum < regions.length; regionNum++ ) {
+ region = regions[regionNum];
+ regionGroup = $.uls.data.regiongroups[region];
+
+ if ( allLanguagesByRegionAndScript[regionGroup][region][scriptGroup] === undefined ) {
+ allLanguagesByRegionAndScript[regionGroup][region][scriptGroup] = {};
+ }
+
+ if ( allLanguagesByRegionAndScript[regionGroup][region][scriptGroup][script] === undefined ) {
+ allLanguagesByRegionAndScript[regionGroup][region][scriptGroup][script] = [];
+ }
+
+ allLanguagesByRegionAndScript[regionGroup][region][scriptGroup][script].push( language );
+ }
+ }
+
+ return allLanguagesByRegionAndScript;
+ };
+
+ /**
+ * Returns all regions in a region group.
+ * @param groupNum int
+ * @return array of strings
+ */
+ $.uls.data.getRegionsInGroup = function ( groupNum ) {
+ var region,
+ regionsInGroup = [];
+
+ for ( region in $.uls.data.regiongroups ) {
+ if ( $.uls.data.regiongroups[region] === groupNum ) {
+ regionsInGroup.push( region );
+ }
+ }
+
+ return regionsInGroup;
+ };
+
+ /**
+ * Returns the script group of a script or 'Other' if it doesn't
+ * belong to any group.
+ * @param script string Script code
+ * @return string script group name
+ */
+ $.uls.data.getGroupOfScript = function ( script ) {
+ var scriptGroup;
+
+ for ( scriptGroup in $.uls.data.scriptgroups ) {
+ if ( $.inArray( script, $.uls.data.scriptgroups[scriptGroup] ) !== -1 ) {
+ return scriptGroup;
+ }
+ }
+
+ return 'Other';
+ };
+
+ /**
+ * Returns the script group of a language.
+ * @param language string Language code
+ * @return string script group name
+ */
+ $.uls.data.getScriptGroupOfLanguage = function ( language ) {
+ return $.uls.data.getGroupOfScript( $.uls.data.getScript( language ) );
+ };
+
+ /**
+ * A callback for sorting languages by autonym.
+ * Can be used as an argument to a sort function.
+ * @param a string Language code
+ * @param b string Language code
+ */
+ $.uls.data.sortByAutonym = function ( a, b ) {
+ var autonymA = $.uls.data.getAutonym( a ) || a,
+ autonymB = $.uls.data.getAutonym( b ) || b;
+
+ return ( autonymA.toLowerCase() < autonymB.toLowerCase() ) ? -1 : 1;
+ };
+
+ /**
+ * Check if a language is right-to-left.
+ * @param language string Language code
+ * @return boolean
+ */
+ $.uls.data.isRtl = function ( language ) {
+ return $.inArray( $.uls.data.getScript( language ), $.uls.data.rtlscripts ) !== -1;
+ };
+
+ /**
+ * Return the direction of the language
+ * @param language string Language code
+ * @return string
+ */
+ $.uls.data.getDir = function ( language ) {
+ return $.uls.data.isRtl( language ) ? 'rtl' : 'ltr';
+ };
+
+ /**
+ * Returns the languages spoken in a territory.
+ * @param territory string Territory code
+ * @return list of language codes
+ */
+ $.uls.data.getLanguagesInTerritory = function ( territory ) {
+ return $.uls.data.territories[territory];
+ };
+
+ /**
+ * Adds a language in run time and sets its options as provided.
+ * If the target option is provided, the language is defined as a redirect.
+ * Other possible options are script, regions and autonym.
+ *
+ * @param code string New language code.
+ * @param options Object Language properties.
+ * @return list of language codes
+ */
+ $.uls.data.addLanguage = function( code, options ) {
+ if ( options.target ) {
+ $.uls.data.languages[code] = [options.target];
+ } else {
+ $.uls.data.languages[code] = [options.script, options.regions, options.autonym];
+ }
+ };
+
+ /**
+ * Removes a language from the langdb in run time.
+ *
+ * @param code string Language code to delete.
+ * @return true if the language was removed, false otherwise.
+ */
+ $.uls.data.deleteLanguage = function( code ) {
+ if ( $.uls.data.languages[code] ) {
+ delete $.uls.data.languages[code];
+
+ return true;
+ }
+
+ return false;
+ };
+} ( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/src/jquery.uls.languagefilter.js b/MLEB/UniversalLanguageSelector/lib/jquery.uls/src/jquery.uls.languagefilter.js
new file mode 100644
index 00000000..ad0f2ea8
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/src/jquery.uls.languagefilter.js
@@ -0,0 +1,360 @@
+/**
+ * jQuery language filter plugin.
+ *
+ * Copyright (C) 2012 Alolita Sharma, Amir Aharoni, Arun Ganesh, Brandon Harris,
+ * Niklas Laxström, Pau Giner, Santhosh Thottingal, Siebrand Mazeland and other
+ * contributors. See CREDITS for a list.
+ *
+ * UniversalLanguageSelector is dual licensed GPLv2 or later and MIT. You don't
+ * have to do anything special to choose one license or the other and you don't
+ * have to notify anyone which license you are using. You are free to use
+ * UniversalLanguageSelector in commercial projects as long as the copyright
+ * header is left intact. See files GPL-LICENSE and MIT-LICENSE for details.
+ *
+ * @file
+ * @ingroup Extensions
+ * @licence GNU General Public Licence 2.0 or later
+ * @licence MIT License
+ */
+
+/**
+ * Usage: $( 'inputbox' ).languagefilter();
+ * The values for autocompletion is from the options.languages.
+ * The data is in the format of languagecode:languagename.
+ */
+(function ( $ ) {
+ 'use strict';
+
+ var LanguageFilter, delay;
+
+ LanguageFilter = function( element, options ) {
+ this.$element = $( element );
+ this.options = $.extend( {}, $.fn.regionselector.defaults, options );
+ this.$element.addClass( 'languagefilter' );
+ this.resultCount = 0;
+ this.$suggestion = this.$element.parents().find( '#' + this.$element.data( 'suggestion' ) );
+ this.$clear = this.$element.parents().find( '#' + this.$element.data( 'clear' ) );
+ this.selectedLanguage = null;
+
+ this.listen();
+ };
+
+ delay = ( function() {
+ var timer = 0;
+
+ return function( callback, milliseconds ) {
+ clearTimeout( timer );
+ timer = setTimeout( callback, milliseconds );
+ };
+ } () );
+
+ LanguageFilter.prototype = {
+ listen: function() {
+ this.$element.on( 'keypress', $.proxy( this.keyup, this ) )
+ .on( 'keyup', $.proxy( this.keyup, this ) );
+
+ if ( this.eventSupported( 'keydown' ) ) {
+ this.$element.on( 'keydown', $.proxy( this.keyup, this ) );
+ }
+
+ if ( this.$clear.length ) {
+ this.$clear.on( 'click' , $.proxy( this.clear, this ) );
+ }
+
+ this.toggleClear();
+ },
+
+ keyup: function( e ) {
+ var suggestion, query, languageFilter;
+
+ switch( e.keyCode ) {
+ case 9: // Tab -> Autocomplete
+ suggestion = this.$suggestion.val();
+
+ if ( suggestion && suggestion !== this.$element.val() ) {
+ this.$element.val( suggestion );
+ e.preventDefault();
+ e.stopPropagation();
+ }
+ break;
+ case 13: // Enter
+ if ( !this.options.onSelect ) {
+ break;
+ }
+
+ // Avoid bubbling this 'enter' to background page elements
+ e.preventDefault();
+ e.stopPropagation();
+
+ query = $.trim( this.$element.val() ).toLowerCase();
+
+ if ( this.selectedLanguage ) {
+ // this.selectLanguage will be populated from a matching search
+ this.options.onSelect( this.selectedLanguage );
+ } else if ( this.options.languages[query] ) {
+ // Search is yet to happen (in timeout delay),
+ // but we have a matching language code.
+ this.options.onSelect( query );
+ }
+
+ break;
+ default:
+ languageFilter = this;
+
+ if ( e.which < 32 &&
+ e.which !== 8 // Backspace
+ ) {
+ // ignore any ASCII control characters
+ break;
+ }
+
+ this.selectedLanguage = null;
+
+ delay( function() {
+ if ( !languageFilter.$element.val() ) {
+ languageFilter.clear();
+ } else {
+ languageFilter.options.$target.empty();
+ languageFilter.search();
+ }
+ }, 300 );
+
+ this.toggleClear();
+ }
+ },
+
+ /**
+ * Clears the current search removing
+ * clear buttons and suggestions.
+ */
+ deactivate: function() {
+ this.$element.val( '' );
+
+ if ( !$.fn.uls.Constructor.prototype.isMobile() ) {
+ this.$element.focus();
+ }
+
+ this.toggleClear();
+ this.autofill();
+ },
+
+ /**
+ * Clears the search and shows all languages
+ */
+ clear: function() {
+ this.deactivate();
+ this.$element.trigger( 'searchclear.uls' );
+ },
+
+ /**
+ * Toggles the visibility of clear icon depending
+ * on whether there is anything to clear.
+ */
+ toggleClear: function() {
+ if ( !this.$clear.length ) {
+ return;
+ }
+
+ if ( this.$element.val() ) {
+ this.$clear.show();
+ } else {
+ this.$clear.hide();
+ }
+ },
+
+ search: function() {
+ var languagesInScript,
+ query = $.trim( this.$element.val() ),
+ languages = $.uls.data.getLanguagesByScriptGroup( this.options.languages ),
+ scriptGroup, langNum, langCode;
+
+ this.resultCount = 0;
+
+ for ( scriptGroup in languages ) {
+ languagesInScript = languages[scriptGroup];
+
+ languagesInScript.sort( $.uls.data.sortByAutonym );
+
+ for ( langNum = 0; langNum < languagesInScript.length; langNum++ ) {
+ langCode = languagesInScript[langNum];
+
+ if ( query === '' || this.filter( langCode, query ) ) {
+ if ( this.resultCount === 0 ) {
+ // Autofill the first result.
+ this.autofill( langCode );
+ }
+
+ if ( query.toLowerCase() === langCode ) {
+ this.selectedLanguage = langCode;
+ }
+
+ if ( this.render( langCode ) ) {
+ this.resultCount++;
+ }
+ }
+ }
+ }
+
+ // Also do a search by search API
+ if( !this.resultCount && this.options.searchAPI && query ) {
+ this.searchAPI( query );
+ } else {
+ this.resultHandler( query );
+ }
+ },
+
+ searchAPI: function( query ) {
+ var languageFilter = this;
+
+ $.get( languageFilter.options.searchAPI, { search: query }, function( result ) {
+ $.each( result.languagesearch, function( code, name ) {
+ if ( languageFilter.resultCount === 0 ) {
+ // Autofill the first result.
+ languageFilter.autofill( code, name );
+ }
+
+ if ( languageFilter.render( code ) ) {
+ languageFilter.resultCount++;
+ }
+ } );
+
+ languageFilter.resultHandler( query );
+ } );
+ },
+
+ /**
+ * Handler method to be called once search is over.
+ * Based on search result triggers resultsfound or noresults events
+ * @param query string
+ */
+ resultHandler: function( query ) {
+ if ( this.resultCount === 0 ) {
+ this.$suggestion.val( '' );
+ this.$element.trigger( 'noresults.uls', query );
+ } else {
+ this.$element.trigger( 'resultsfound.uls', [query, this.resultCount] );
+ }
+ },
+
+ autofill: function( langCode, languageName ) {
+ if ( !this.$suggestion.length ) {
+ return;
+ }
+
+ if ( !this.$element.val() ) {
+ this.$suggestion.val( '' );
+ return;
+ }
+
+ this.selectedLanguage = langCode;
+ languageName = languageName || this.options.languages[langCode];
+
+ if ( !languageName ) {
+ return;
+ }
+
+ var autonym,
+ userInput = this.$element.val(),
+ suggestion = userInput + languageName.substring( userInput.length, languageName.length );
+
+ if ( suggestion.toLowerCase() !== languageName.toLowerCase() ) {
+ // see if it was autonym match
+ autonym = $.uls.data.getAutonym( langCode ) || '';
+ suggestion = userInput + autonym.substring( userInput.length, autonym.length );
+
+ if ( suggestion !== autonym ) {
+ // Give up. It may be an ISO/script code match.
+ suggestion = '';
+ }
+ }
+
+ // Make sure that it is a visual prefix.
+ if ( !isVisualPrefix( userInput, suggestion ) ) {
+ suggestion = '';
+ }
+
+ this.$suggestion.val( suggestion );
+ },
+
+ render: function( langCode ) {
+ var $target = this.options.$target;
+
+ if ( !$target ) {
+ return false;
+ }
+
+ return $target.append( langCode );
+ },
+
+ escapeRegex: function( value ) {
+ return value.replace( /[\-\[\]{}()*+?.,\\\^$\|#\s]/g, '\\$&' );
+ },
+
+ /**
+ * A search match happens if any of the following passes:
+ * a) Language name in current user interface language
+ * 'starts with' search string.
+ * b) Language autonym 'starts with' search string.
+ * c) ISO 639 code match with search string.
+ * d) ISO 15924 code for the script match the search string.
+ */
+ filter: function( langCode, searchTerm ) {
+ // FIXME script is ISO 15924 code. We might need actual name of script.
+ var matcher = new RegExp( '^' + this.escapeRegex( searchTerm ), 'i' ),
+ languageName = this.options.languages[langCode];
+
+ return matcher.test( languageName ) ||
+ matcher.test( $.uls.data.getAutonym( langCode ) ) ||
+ matcher.test( langCode ) ||
+ matcher.test( $.uls.data.getScript( langCode ) );
+ },
+
+ eventSupported: function ( eventName ) {
+ var isSupported = eventName in this.$element;
+
+ if ( !isSupported ) {
+ this.$element.setAttribute( eventName, 'return;' );
+ isSupported = typeof this.$element[eventName] === 'function';
+ }
+
+ return isSupported;
+ }
+ };
+
+ $.fn.languagefilter = function( option ) {
+ return this.each( function() {
+ var $this = $( this ),
+ data = $this.data( 'languagefilter' ),
+ options = typeof option === 'object' && option;
+
+ if ( !data ) {
+ $this.data( 'languagefilter', ( data = new LanguageFilter( this, options ) ) );
+ }
+
+ if ( typeof option === 'string' ) {
+ data[option]();
+ }
+ } );
+ };
+
+ $.fn.languagefilter.defaults = {
+ $target: null, // Where to append the results
+ searchAPI: null,
+ languages: null, // Languages as code:name format.
+ onSelect: null // Language select handler - like enter in filter textbox.
+ };
+
+ $.fn.languagefilter.Constructor = LanguageFilter;
+
+ /**
+ * Check if a prefix is visually prefix of a string
+ * @param prefix string
+ * @param string string
+ */
+ function isVisualPrefix( prefix, string ) {
+ // Pre-base vowel signs of Indic languages. A vowel sign is called pre-base if
+ // consonant + vowel becomes [vowel][consonant] when rendered. Eg: ക + െ => കെ
+ var prebases = 'െേൈൊോൌெேைொோௌେୈୋୌિਿिিেৈোৌෙේෛොෝෞ';
+ return prebases.indexOf( string[prefix.length] ) <= 0;
+ }
+} ( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/src/jquery.uls.lcd.js b/MLEB/UniversalLanguageSelector/lib/jquery.uls/src/jquery.uls.lcd.js
new file mode 100644
index 00000000..8ae56388
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/src/jquery.uls.lcd.js
@@ -0,0 +1,396 @@
+/**
+ * Universal Language Selector
+ * Language category display component - Used for showing the search results,
+ * grouped by regions, scripts
+ *
+ * Copyright (C) 2012 Alolita Sharma, Amir Aharoni, Arun Ganesh, Brandon Harris,
+ * Niklas Laxström, Pau Giner, Santhosh Thottingal, Siebrand Mazeland and other
+ * contributors. See CREDITS for a list.
+ *
+ * UniversalLanguageSelector is dual licensed GPLv2 or later and MIT. You don't
+ * have to do anything special to choose one license or the other and you don't
+ * have to notify anyone which license you are using. You are free to use
+ * UniversalLanguageSelector in commercial projects as long as the copyright
+ * header is left intact. See files GPL-LICENSE and MIT-LICENSE for details.
+ *
+ * @file
+ * @ingroup Extensions
+ * @licence GNU General Public Licence 2.0 or later
+ * @licence MIT License
+ */
+
+( function ( $ ) {
+ 'use strict';
+
+ var noResultsTemplate, LanguageCategoryDisplay;
+
+ /*jshint multistr:true */
+ noResultsTemplate = '<div class="twelve columns uls-no-results-view hide">\
+ <h2 data-i18n="uls-no-results-found" class="eleven columns offset-by-one uls-no-results-found-title">\
+ No results found\
+ </h2>\
+ <div id="uls-no-found-more" class="uls-no-found-more">\
+ <div class="ten columns offset-by-one">\
+ <p>\
+ <span data-i18n="uls-search-help">You can search by language name, \
+ script name, ISO code of language or \
+ you can browse by region:</span>\
+ <a class="uls-region-link" data-i18n="uls-region-AM" data-region="AM">America</a>, \
+ <a class="uls-region-link" data-i18n="uls-region-EU" data-region="EU">Europe</a>, \
+ <a class="uls-region-link" data-i18n="uls-region-ME" data-region="ME">Middle East</a>, \
+ <a class="uls-region-link" data-i18n="uls-region-AF" data-region="AF">Africa</a>, \
+ <a class="uls-region-link" data-i18n="uls-region-AS" data-region="AS">Asia</a>, \
+ <a class="uls-region-link" data-i18n="uls-region-PA" data-region="PA">Pacific</a>, \
+ <a class="uls-region-link" data-i18n="uls-region-WW" data-region="WW">Worldwide</a>.\
+ </p>\
+ </div>\
+ </div>\
+ </div>';
+ /*jshint multistr:false */
+
+ LanguageCategoryDisplay = function ( element, options ) {
+ this.$element = $( element );
+ this.options = $.extend( {}, $.fn.lcd.defaults, options );
+ this.$element.addClass( 'lcd' );
+ this.regionLanguages = {};
+ this.renderTimeout = null;
+ this.cachedQuicklist = null;
+
+ this.$element.append( $( noResultsTemplate ) );
+ this.$noResults = this.$element.children( '.uls-no-results-view' );
+
+ this.render();
+ this.listen();
+ };
+
+ LanguageCategoryDisplay.prototype = {
+ constructor: LanguageCategoryDisplay,
+
+ /**
+ * Adds language to the language list.
+ * @param {string} langCode
+ * @param {string} [regionCode]
+ * @return {bool} Whether the language was added.
+ */
+ append: function ( langCode, regionCode ) {
+ var lcd = this, i, regions;
+
+ if ( !this.options.languages[langCode] ) {
+ // Language is unknown or not in the list of languages for this context.
+ return false;
+ }
+
+ if ( regionCode ) {
+ regions = [regionCode];
+ } else {
+ regions = $.uls.data.getRegions( langCode );
+ }
+
+ // Worldwides only displayed once
+ if ( $.inArray( 'WW', regions ) > -1 ) {
+ regions = ['WW'];
+ }
+
+ for ( i = 0; i < regions.length; i++ ) {
+ this.regionLanguages[regions[i]].push( langCode );
+ }
+
+ // Work around the bad interface, delay rendering until we have got
+ // all the languages to speed up performance.
+ window.clearTimeout( this.renderTimeout );
+ this.renderTimeout = window.setTimeout( function () {
+ lcd.renderRegions();
+ }, 50 );
+
+ return true;
+ },
+
+ render: function () {
+ var $section,
+ lcd = this,
+ regions = [],
+ regionNames = {
+ // These are fallback text when i18n library not present
+ WW: 'Worldwide',
+ SP: 'Special',
+ AM: 'America',
+ EU: 'Europe',
+ ME: 'Middle East',
+ AS: 'Asia',
+ AF: 'Africa',
+ PA: 'Pacific'
+ };
+
+ regions.push( this.buildQuicklist() );
+
+ $.each( $.uls.data.regiongroups, function ( regionCode ) {
+ lcd.regionLanguages[regionCode] = [];
+ // Don't show the region unless it was enabled
+ if ( $.inArray( regionCode, lcd.options.showRegions ) === -1 ) {
+ return;
+ }
+
+ $section = $( '<div>' )
+ .addClass( 'eleven columns offset-by-one uls-lcd-region-section hide' )
+ .attr( 'id', regionCode )
+ .append(
+ $( '<h3>' )
+ .attr( 'data-i18n', 'uls-region-' + regionCode )
+ .addClass( 'eleven columns uls-lcd-region-title' )
+ .text( regionNames[regionCode] )
+ );
+
+ regions.push( $section );
+ } );
+
+ lcd.$element.append( regions );
+
+ this.i18n();
+ },
+
+ /**
+ * Renders a region and displays it if it has content.
+ */
+ renderRegions: function () {
+ var lcd = this, languages,
+ items = lcd.options.itemsPerColumn,
+ columns = 4;
+
+ this.$noResults.addClass( 'hide' );
+ this.$element.find( '.uls-lcd-region-section' ).each( function () {
+ var $region = $( this ),
+ regionCode = $region.attr( 'id' );
+
+ if ( $region.is( '#uls-lcd-quicklist' ) ) {
+ return;
+ }
+
+ $region.children( '.uls-language-block' ).remove();
+
+ languages = lcd.regionLanguages[regionCode];
+ if ( !languages || languages.length === 0 ) {
+ $region.addClass( 'hide' );
+ return;
+ }
+
+ lcd.renderRegion( $region, languages, items, columns );
+ $region.removeClass( 'hide' );
+
+ lcd.regionLanguages[regionCode] = [];
+ } );
+
+ },
+
+ /**
+ * Adds given languages sorted into rows and columns into given element.
+ * @param {jQuery} $region Element to add language list.
+ * @param {array} languages List of language codes.
+ * @param {number} itemsPerColumn How many languages fit in a column.
+ * @param {number} columnsPerRow How many columns fit in a row.
+ */
+ renderRegion: function( $region, languages, itemsPerColumn, columnsPerRow ) {
+ var i, lastItem, currentScript, nextScript, force,
+ len = languages.length,
+ items = [],
+ columns = [],
+ rows = [];
+
+ for ( i = 0; i < len; i++ ) {
+ force = false;
+ nextScript = $.uls.data.getScriptGroupOfLanguage( languages[i+1] );
+
+ lastItem = len - i === 1;
+ // Force column break if script changes and column has more than one row already
+ if ( i === 0 ) {
+ currentScript = $.uls.data.getScriptGroupOfLanguage( languages[i] );
+ } else if ( currentScript !== nextScript && items.length > 1 ) {
+ force = true;
+ }
+ currentScript = nextScript;
+
+ items.push( this.renderItem( languages[i] ) );
+
+ if ( items.length >= itemsPerColumn || lastItem || force ) {
+ columns.push( $( '<ul>' ).addClass( 'three columns' ).append( items ) );
+ items = [];
+ if ( columns.length >= columnsPerRow || lastItem ) {
+ rows.push( $( '<div>' ).addClass( 'row uls-language-block' ).append( columns ) );
+ columns = [];
+ }
+ }
+ }
+
+ $region.append( rows );
+ },
+
+ /**
+ * Creates dom node representing one item in language list.
+ * @param {string} code Language code
+ * @return {Element}
+ */
+ renderItem: function( code ) {
+ var a, name, autonym, li;
+
+ name = this.options.languages[code];
+ autonym = $.uls.data.getAutonym( code ) || name || code;
+
+ // Not using jQuery as this is performance hotspot
+ li = document.createElement( 'li' );
+ li.title = name;
+ li.lang = code;
+ li.dir = $.uls.data.getDir( code );
+ li.setAttribute( 'data-code', code );
+
+ a = document.createElement( 'a' );
+ a.appendChild( document.createTextNode( autonym ) );
+ a.className = 'autonym';
+
+ li.appendChild( a );
+ if ( this.options.languageDecorator ) {
+ this.options.languageDecorator( $( a ), code );
+ }
+ return li;
+ },
+
+ i18n: function ( ) {
+ this.$element.find( '[data-i18n]' ).i18n();
+ },
+
+ /**
+ * Adds quicklist as a region.
+ */
+ quicklist: function () {
+ this.$element.find( '#uls-lcd-quicklist' ).removeClass( 'hide' );
+ },
+
+ buildQuicklist: function () {
+ var quickList, $quickListSection, $quickListSectionTitle;
+
+ if ( this.cachedQuicklist !== null ) {
+ return this.cachedQuicklist;
+ }
+
+ if ( $.isFunction( this.options.quickList ) ) {
+ this.options.quickList = this.options.quickList();
+ }
+
+ if ( !this.options.quickList ) {
+ this.cachedQuicklist = $( [] );
+ return this.cachedQuicklist;
+ }
+
+ // Pick only the first elements, because we don't have room for more
+ quickList = this.options.quickList;
+ quickList = quickList.slice( 0, 16 );
+ quickList.sort( $.uls.data.sortByAutonym );
+
+ $quickListSection = $( '<div>' )
+ .addClass( 'eleven columns offset-by-one uls-lcd-region-section' )
+ .attr( 'id', 'uls-lcd-quicklist' );
+
+ $quickListSectionTitle = $( '<h3>' )
+ .attr( 'data-i18n', 'uls-common-languages' )
+ .addClass( 'eleven columns uls-lcd-region-title' )
+ .text( 'Common languages' ); // This is placeholder text if jquery.i18n not present
+ $quickListSection.append( $quickListSectionTitle );
+
+ this.renderRegion( $quickListSection, quickList, 4, 4 );
+
+ $quickListSectionTitle.i18n();
+
+ this.cachedQuicklist = $quickListSection;
+ return this.cachedQuicklist;
+ },
+
+ show: function () {
+ if ( !this.regionDivs ) {
+ this.render();
+ }
+ },
+
+ empty: function () {
+ this.$element.find( '#uls-lcd-quicklist' ).addClass( 'hide' );
+ },
+
+ focus: function () {
+ this.$element.focus();
+ },
+
+ noResults: function () {
+ this.$noResults.removeClass( 'hide' );
+ if ( this.$noResults.find( '.uls-lcd-region-title' ).length ) {
+ return;
+ }
+
+ var $suggestions = this.buildQuicklist().clone();
+ $suggestions.find( 'h3' )
+ .data( 'i18n', 'uls-no-results-suggestion-title' )
+ .text( 'You may be interested in:' )
+ .i18n();
+ this.$noResults.find( 'h2' ).after( $suggestions );
+ },
+
+ listen: function () {
+ var lcd = this;
+
+ if ( this.options.clickhandler ) {
+ this.$element.on( 'click', '.row li', function () {
+ lcd.options.clickhandler.call( this, $( this ).data( 'code' ) );
+ } );
+ }
+
+ // The region section need to be in sync with the map filter.
+ lcd.$element.scroll( function () {
+ var inview, inviewRegion,
+ $ulsLanguageList = $( this ),
+ scrollTop = $ulsLanguageList.position().top,
+ scrollBottom = $ulsLanguageList.height();
+
+ // The region section need to be in sync with the map filter.
+ inviewRegion = 'WW';
+ lcd.$element.find( '.uls-lcd-region-section' ).each( function () {
+ var $lcdRegionSection = $( this ),
+ top = $lcdRegionSection.position().top,
+ height = $lcdRegionSection.height(),
+ padding = 10;
+
+ if ( top - padding <= scrollTop && height > scrollBottom ) {
+ inviewRegion = $lcdRegionSection.attr( 'id' );
+ }
+ } );
+
+ // highlight the region visible while scrolling in the map.
+ inview = $.uls.data.regiongroups[inviewRegion];
+ if ( !$( '#uls-region-' + inview ).hasClass( 'active' ) ) {
+ $( '.regionselector' ).removeClass( 'active' );
+ $( '#uls-region-' + inview ).addClass( 'active' );
+ }
+ } );
+ }
+ };
+
+ $.fn.lcd = function ( option ) {
+ return this.each( function () {
+ var $this = $( this ),
+ data = $this.data( 'lcd' ),
+ options = typeof option === 'object' && option;
+
+ if ( !data ) {
+ $this.data( 'lcd', ( data = new LanguageCategoryDisplay( this, options ) ) );
+ }
+
+ if ( typeof option === 'string') {
+ data[option]();
+ }
+ } );
+ };
+
+ $.fn.lcd.defaults = {
+ languages: null,
+ showRegions: ['WW', 'AM', 'EU', 'ME', 'AF', 'AS', 'PA'],
+ itemsPerColumn: 8,
+ languageDecorator: null
+ };
+
+ $.fn.lcd.Constructor = LanguageCategoryDisplay;
+} ( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.uls/src/jquery.uls.regionfilter.js b/MLEB/UniversalLanguageSelector/lib/jquery.uls/src/jquery.uls.regionfilter.js
new file mode 100644
index 00000000..305e9bb2
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.uls/src/jquery.uls.regionfilter.js
@@ -0,0 +1,198 @@
+/**
+ * jQuery region filter plugin.
+ *
+ * Copyright (C) 2012 Alolita Sharma, Amir Aharoni, Arun Ganesh, Brandon Harris,
+ * Niklas Laxström, Pau Giner, Santhosh Thottingal, Siebrand Mazeland and other
+ * contributors. See CREDITS for a list.
+ *
+ * UniversalLanguageSelector is dual licensed GPLv2 or later and MIT. You don't
+ * have to do anything special to choose one license or the other and you don't
+ * have to notify anyone which license you are using. You are free to use
+ * UniversalLanguageSelector in commercial projects as long as the copyright
+ * header is left intact. See files GPL-LICENSE and MIT-LICENSE for details.
+ *
+ * @file
+ * @ingroup Extensions
+ * @licence GNU General Public Licence 2.0 or later
+ * @licence MIT License
+ */
+
+( function ( $ ) {
+ 'use strict';
+
+ /* RegionSelector plugin definition */
+
+ var RegionSelector;
+
+ /**
+ * Region selector is a language selector based on regions.
+ * Usage: $( 'jqueryselector' ).regionselector( options );
+ * The attached element should have data-regiongroup attribute
+ * that defines the regiongroup for the selector.
+ */
+ RegionSelector = function ( element, options ) {
+ this.$element = $( element );
+ this.options = $.extend( {}, $.fn.regionselector.defaults, options );
+ this.$element.addClass( 'regionselector' );
+ this.regions = [];
+ this.cache = null;
+ this.regionGroup = this.$element.data( 'regiongroup' );
+ this.init();
+ this.listen();
+ };
+
+ RegionSelector.prototype = {
+ constructor: RegionSelector,
+
+ init: function () {
+ var region = this.$element.data( 'region' );
+ this.regions = $.uls.data.getRegionsInGroup( this.regionGroup );
+
+ if ( region ) {
+ this.regions.push( region );
+ }
+ },
+
+ test: function ( langCode ) {
+ var region, i,
+ langRegions = $.uls.data.getRegions( langCode );
+
+ for ( i = 0; i < this.regions.length; i++ ) {
+ region = this.regions[i];
+
+ if ( $.inArray( region, langRegions ) >= 0 ) {
+ this.render( langCode, region );
+ this.cache[langCode] = region;
+
+ return;
+ }
+ }
+ },
+
+ show: function () {
+ var result, languagesByScriptGroup, scriptGroup, languages, i,
+ $element = this.options.$target && this.options.$target.$element,
+ $parent = $element && $element.parent(),
+ $prev = $element && $element.prev();
+
+ if ( $element && $parent ) {
+ // Avoid reflows while adding new elements to the list
+ // Use .detach() to keep jQuery events and data associated with elements
+ $element.detach();
+ }
+
+ if ( this.cache ) {
+ // If the result cache is present, render the results from there.
+ //noinspection JSUnusedAssignment
+ result = null;
+
+ for ( result in this.cache ) {
+ this.render( result, this.cache[result] );
+ }
+ } else {
+ this.cache = {};
+ // Get the languages grouped by script group
+ languagesByScriptGroup = $.uls.data.getLanguagesByScriptGroup( this.options.languages );
+
+ // Make sure that we go by the original order
+ // of script groups
+ for ( scriptGroup in $.uls.data.scriptgroups ) {
+ // Get the languages for the script group
+ languages = languagesByScriptGroup[scriptGroup];
+
+ // It's possible that some script groups are missing
+ if ( !languages ) {
+ continue;
+ }
+
+ // Sort it based on autonym
+ languages.sort( $.uls.data.sortByAutonym );
+
+ for ( i = 0; i < languages.length; i++ ) {
+ // Check whether it belongs to the region
+ this.test( languages[i] );
+ }
+ }
+ }
+
+ if ( $element && $parent ) {
+ // Restore the element to where we removed it from
+ if ( $prev ) {
+ $prev.after( $element );
+ } else {
+ $parent.append( $element );
+ }
+ }
+
+ if ( this.options.success ) {
+ this.options.success( this );
+ }
+ },
+
+ render: function ( langCode, region ) {
+ var $target = this.options.$target;
+
+ if ( !$target ) {
+ return;
+ }
+
+ $target.append( langCode, region );
+ },
+
+ listen: function () {
+ this.$element.on( 'click', $.proxy( this.click, this ) );
+ },
+
+ click: function () {
+ var $list, $firstTargetRegion;
+
+ // Don't do anything if a region is selected already
+ if ( this.$element.hasClass( 'active' ) ) {
+ return;
+ }
+
+ $list = this.options.$target.$element;
+ $firstTargetRegion = $list.find( '#' + this.regions[0] );
+
+ // Scroll to appropriate area
+ $list.scrollTop(
+ $firstTargetRegion.offset().top - $list.offset().top + $list.scrollTop()
+ );
+
+ // Make the selected region (and it only) active
+ $( '.regionselector' ).removeClass( 'active' );
+
+ if ( this.regionGroup ) {
+ // if there is a region group, make it active.
+ this.$element.addClass( 'active' );
+ }
+ }
+ };
+
+ /* RegionSelector plugin definition */
+
+ $.fn.regionselector = function ( option ) {
+ return this.each( function () {
+ var $this = $( this ),
+ data = $this.data( 'regionselector' ),
+ options = typeof option === 'object' && option;
+
+ if ( !data ) {
+ $this.data( 'regionselector', ( data = new RegionSelector( this, options ) ) );
+ }
+
+ if ( typeof option === 'string' ) {
+ data[option]();
+ }
+ } );
+ };
+
+ $.fn.regionselector.defaults = {
+ $target: null, // Where to render the results
+ success: null, // callback if any results found.
+ noresults: null, // callback when no results to show
+ languages: null
+ };
+
+ $.fn.regionselector.Constructor = RegionSelector;
+} ( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/lib/jquery.webfonts.js b/MLEB/UniversalLanguageSelector/lib/jquery.webfonts.js
new file mode 100644
index 00000000..d205dee1
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/jquery.webfonts.js
@@ -0,0 +1,517 @@
+/**
+ * jQuery Webfonts.
+ *
+ * Copyright (C) 2012 Santhosh Thottingal
+ *
+ * UniversalLanguageSelector is dual licensed GPLv2 or later and MIT. You don't
+ * have to do anything special to choose one license or the other and you don't
+ * have to notify anyone which license you are using. You are free to use
+ * UniversalLanguageSelector in commercial projects as long as the copyright
+ * header is left intact. See files GPL-LICENSE and MIT-LICENSE for details.
+ *
+ * @file
+ * @ingroup Extensions
+ * @licence GNU General Public Licence 2.0 or later
+ * @licence MIT License
+ */
+
+( function( $, window, document, undefined ) {
+ 'use strict';
+
+ var WebFonts = function( element, options ) {
+ // Load defaults
+ this.options = $.extend( {}, $.fn.webfonts.defaults, options );
+ this.$element = $( element );
+ this.repository = $.extend( WebFonts.repository, this.options.repository );
+ // List of loaded fonts
+ this.fonts = [];
+ this.originalFontFamily = this.$element.css( 'font-family' );
+ this.language = this.$element.attr( 'lang' ) || $( 'html' ).attr( 'lang' );
+
+ this.init();
+ };
+
+ WebFonts.repository = {
+ base: 'fonts', // Relative or absolute path to the font repository.
+ languages: {}, // languages to font mappings
+ fonts: {}, // Font name to font configuration mapping
+
+ // Utility methods to work on the repository.
+ defaultFont: function( language ) {
+ var defaultFont = null;
+
+ if ( this.languages[language] ) {
+ defaultFont = this.languages[language][0];
+ }
+
+ return defaultFont;
+ },
+
+ get: function( fontFamily ) {
+ return this.fonts[fontFamily];
+ }
+ };
+
+ WebFonts.prototype = {
+ constructor: WebFonts,
+
+ /**
+ * Get the default font family for given language.
+ * @param {String} language Language code.
+ * @param {array} classes
+ * @return {String} Font family name
+ */
+ getFont: function( language, classes ) {
+ language = ( language || this.language ).toLowerCase();
+
+ if ( this.options.fontSelector ) {
+ return this.options.fontSelector( this.repository, language, classes );
+ } else {
+ return this.repository.defaultFont( language );
+ }
+ },
+
+ /**
+ * Initialize.
+ */
+ init: function() {
+ if ( this.language ) {
+ this.apply( this.getFont( this.language ) );
+ }
+
+ this.parse();
+ },
+
+ /**
+ * TODO: document
+ */
+ refresh: function() {
+ this.reset();
+ this.init();
+ },
+
+ /**
+ * Apply a font for given elements.
+ *
+ * @param {String} fontFamily Font family name
+ * @param {jQuery} $element One or more jQuery elements
+ */
+ apply: function( fontFamily, $element ) {
+ var fontStack = this.options.fontStack.slice( 0 );
+
+ $element = $element || this.$element;
+
+ // Loading an empty string is pointless.
+ // Putting an empty string into a font-family list doesn't work with
+ // jQuery.css().
+ if ( fontFamily ) {
+ this.load( fontFamily );
+ // Avoid duplicates
+ if ( $.inArray( fontFamily, fontStack ) < 0 ) {
+ fontStack.unshift( fontFamily );
+ }
+ }
+
+ if ( !fontFamily ) {
+ // We are resetting the font to original font.
+ fontStack = [];
+ // This will cause removing inline fontFamily style.
+ }
+
+ // Set the font of this element if it's not excluded.
+ // Add class webfonts-changed when webfonts are applied.
+ $element.not( this.options.exclude )
+ .css( 'font-family', fontStack.join() )
+ .addClass( 'webfonts-changed' );
+
+ // Set the font of this element's children if they are not excluded.
+ // font-family of <input>, <textarea> and <button> must be changed explicitly.
+ // Add class webfonts-changed when webfonts are applied.
+ $element.find( 'textarea, input, button' ).not( this.options.exclude )
+ .css( 'font-family', fontStack.join() )
+ .addClass( 'webfonts-changed' );
+ },
+
+ /**
+ * Load given font families if not loaded already. Creates the CSS rules
+ * and appends them to document.
+ *
+ * @param {Array|String} fontFamilies List of font families
+ */
+ load: function( fontFamilies ) {
+ var css, fontFamily, i,
+ fontFaceRule = '';
+
+ // Convert to array if string given (old signature)
+ if ( typeof fontFamilies === 'string' ) {
+ fontFamilies = [fontFamilies];
+ }
+
+ for ( i = 0; i < fontFamilies.length; i++ ) {
+ fontFamily = fontFamilies[i];
+ if ( $.inArray( fontFamily, this.fonts ) >= 0 ) {
+ continue;
+ }
+
+ css = this.getCSS( fontFamily, 'normal' );
+ if ( css !== false ) {
+ fontFaceRule += css;
+ this.fonts.push( fontFamily );
+ }
+ }
+
+ // In case the list contained only fonts that are already loaded
+ // or non-existing fonts.
+ if ( fontFaceRule !== '' ) {
+ injectCSS( fontFaceRule );
+ }
+
+ return true;
+ },
+
+ /**
+ * Parse the element for custom font-family styles and for nodes with
+ * different language than what the element itself has.
+ */
+ parse: function() {
+ var webfonts = this,
+ // Fonts can be added indirectly via classes, but also with
+ // style attributes. For lang attributes we will use our font
+ // if they don't have explicit font already.
+ $elements = webfonts.$element.find( '*[lang], [style], [class]' ),
+ // List of fonts to load in a batch
+ fontQueue = [],
+ // List of elements to apply a certain font family in a batch.
+ // Object keys are the font family, values are list of plain elements.
+ elementQueue = {};
+
+ // Add to the font queue(no dupes)
+ function addToFontQueue( value ) {
+ if ( $.inArray( value, fontQueue ) < 0 ) {
+ fontQueue.push( value );
+ }
+ }
+
+ // Add to the font queue
+ function addToElementQueue( element, fontFamily ) {
+ elementQueue[fontFamily] = elementQueue[fontFamily] || [];
+ elementQueue[fontFamily].push( element );
+ }
+
+ $elements.each( function( i, element ) {
+ var fontFamilyStyle, fontFamily,
+ $element = $( element );
+
+ if ( $element.is( webfonts.options.exclude ) ) {
+ return;
+ }
+
+ // Note: it depends on the browser whether this returns font names
+ // which don't exist. In Chrome it does, while in Opera it doesn't.
+ fontFamilyStyle = $element.css( 'fontFamily' );
+ // Note: It is unclear whether this can ever be falsy. Maybe also
+ // browser specific.
+ if ( fontFamilyStyle ) {
+ // if it is overridable, override. always.
+ if ( webfonts.isOverridable( fontFamilyStyle ) ) {
+ fontFamily = webfonts.getFont( element.lang || webfonts.language );
+ // We do not have fonts for all languages
+ if ( fontFamily ) {
+ addToFontQueue( fontFamily );
+ addToElementQueue( element, fontFamily );
+ }
+ return;
+ } else {
+ fontFamily = fontFamilyStyle.split( ',' )[0];
+ // Remove the ' and " characters if any.
+ fontFamily = $.trim( fontFamily.replace( /["']/g, '' ) );
+ addToFontQueue( fontFamily );
+ }
+ }
+
+ // Load and apply fonts for other language tagged elements (batched)
+ if ( element.lang && element.lang !== webfonts.language ) {
+ // language differs. We may want to apply a different font.
+ if ( webfonts.hasExplicitFontStyle ( $element ) &&
+ !webfonts.isOverridable( fontFamilyStyle ) ) {
+ // respect the explicit font family style. Do not override.
+ // This style may be from css, inheritance, or even from
+ // browser settings.
+ return;
+ } else {
+ fontFamily = webfonts.getFont( element.lang, element.className.split(/\s+/) );
+ }
+
+ if ( !fontFamily ) {
+ // No font preference for the language.
+ // Check if we need to reset for this language.
+ // If the font of the parent element, to which webfonts were applied,
+ // remained the same, there is no need to reset.
+ if ( webfonts.$element.css( 'fontFamily' ) !== webfonts.originalFontFamily ) {
+ // The parent font changed.
+ // Is there an inheritance?
+ // Is the font for this element the same as parent's font?
+ if ( fontFamilyStyle === webfonts.$element.css( 'fontFamily' ) ) {
+ // Break inheritance of the font from the parent element
+ // by applying the original font to this element
+ fontFamily = webfonts.originalFontFamily;
+ }
+ }
+ }
+
+ // We do not have fonts for all languages
+ if ( fontFamily ) {
+ addToFontQueue( fontFamily );
+ addToElementQueue( element, fontFamily );
+ }
+ }
+ } );
+
+ // Process in batch the accumulated fonts and elements
+ this.load( fontQueue );
+ $.each( elementQueue, function( fontFamily, elements ) {
+ webfonts.apply( fontFamily, $( elements ) );
+ } );
+ },
+
+ /**
+ * Find out whether an element has explicit non generic font family style
+ * For the practical purpose we check whether font is same as top element
+ * or having any of generic font family
+ * http://www.w3.org/TR/CSS2/fonts.html#generic-font-families
+ * @param {jQuery} $element
+ * @return {boolean}
+ */
+ hasExplicitFontStyle: function ( $element ) {
+ var elementFontFamily = $element.css( 'fontFamily' );
+
+ // whether the font is inherited from top element to which plugin applied
+ return this.$element.css( 'fontFamily' ) !== elementFontFamily
+ // whether the element has generic font family
+ && ( $.inArray( elementFontFamily,
+ [ 'monospace', 'serif', 'cursive', 'fantasy', 'sans-serif' ] ) < 0 );
+ },
+
+ /**
+ * Check whether the give font family is overridable or not. jquey.webfonts
+ * by default does not override any font-family styles other than generic
+ * font family styles(See hasExplicitFontStyle method)
+ * @param {string} fontFamily
+ * @return {boolean} Whether the given fontFamily is overridable or not.
+ */
+ isOverridable: function( fontFamily ) {
+ var overridableFontFamilies = [ 'monospace', 'serif', 'cursive', 'fantasy', 'sans-serif' ];
+ $.merge( overridableFontFamilies, this.options.overridableFontFamilies );
+ // Browsers like FF put space after comma in font stack. Chrome does not.
+ // Normalise it by removing the spaces and quotes
+ overridableFontFamilies = $.map( overridableFontFamilies, function( item ) {
+ return item.replace( /[\s'"]/g, '' );
+ } );
+ fontFamily = fontFamily.replace( /[\s'"]/g, '' );
+
+ return $.inArray( fontFamily, overridableFontFamilies ) >= 0;
+ },
+
+ /**
+ * List all fonts for the given language
+ *
+ * @param {String} [language] Language code. If undefined all fonts will be listed.
+ * @return {Array} List of font family names.
+ */
+ list: function( language ) {
+ var fontName,
+ fontNames = [];
+
+ if ( language ) {
+ fontNames = this.repository.languages[language] || [];
+ } else {
+ for ( fontName in this.repository.fonts ) {
+ if ( this.repository.fonts.hasOwnProperty( fontName ) ) {
+ fontNames.push( fontName );
+ }
+ }
+ }
+
+ return fontNames;
+ },
+
+ /**
+ * List all languages supported by the repository
+ *
+ * @return {Array} List of language codes
+ */
+ languages: function() {
+ var language,
+ languages = [];
+
+ for ( language in this.repository.languages ) {
+ if ( this.repository.languages.hasOwnProperty( language ) ) {
+ languages.push( language );
+ }
+ }
+
+ return languages;
+ },
+
+ /**
+ * Set the font repository
+ *
+ * @param {Object} repository The font repository.
+ */
+ setRepository: function( repository ) {
+ this.repository = $.extend( WebFonts.repository, repository );
+ },
+
+ /**
+ * Reset the font-family style.
+ */
+ reset: function() {
+ this.$element.find( '.webfonts-changed' )
+ .removeClass( '.webfonts-changed' )
+ .css( 'font-family', '' );
+ this.apply( this.originalFontFamily );
+ },
+
+ /**
+ * Unbind the plugin
+ */
+ unbind: function() {
+ this.$element.data( 'webfonts', null );
+ },
+
+ /**
+ * Construct the CSS required for the font-family.
+ *
+ * @param {String} fontFamily The font-family name
+ * @param {String} [variant] The font variant, eg: bold, italic etc. Default is normal.
+ * @return {String} CSS
+ */
+ getCSS: function( fontFamily, variant ) {
+ var webfonts, base, version, versionSuffix,
+ fontFaceRule, userAgent, fontStyle, fontFormats,
+ fontconfig = this.repository.get( fontFamily );
+
+ variant = variant || 'normal';
+
+ if ( variant !== 'normal' ) {
+ if ( fontconfig.variants !== undefined && fontconfig.variants[variant] ) {
+ fontconfig = this.repository.get( fontconfig.variants[variant] );
+ }
+ }
+
+ if ( !fontconfig ) {
+ return false;
+ }
+
+ base = this.repository.base;
+ version = fontconfig.version;
+ versionSuffix = '?version=' + version;
+ fontFaceRule = '@font-face { font-family: \'' + fontFamily + '\';\n';
+ userAgent = window.navigator.userAgent;
+ fontStyle = fontconfig.fontstyle || 'normal';
+ fontFormats = [];
+
+ if ( fontconfig.eot ) {
+ fontFaceRule += '\tsrc: url(\'' + base + fontconfig.eot + versionSuffix + '\');\n';
+ }
+ fontFaceRule += '\tsrc: ';
+
+ // If the font is present locally, use it.
+ if ( userAgent.match( /Android 2\.3/ ) === null ) {
+ // Android 2.3.x does not respect local() syntax.
+ // http://code.google.com/p/android/issues/detail?id=10609
+ fontFaceRule += 'local(\'' + fontFamily + '\'),';
+ }
+
+ if ( fontconfig.woff2 ) {
+ fontFormats.push( '\t\turl(\'' + base + fontconfig.woff2 + versionSuffix
+ + '\') format(\'woff2\')' );
+ }
+
+ if ( fontconfig.woff ) {
+ fontFormats.push( '\t\turl(\'' + base + fontconfig.woff + versionSuffix
+ + '\') format(\'woff\')' );
+ }
+
+ if ( fontconfig.svg ) {
+ fontFormats.push( '\t\turl(\'' + base + fontconfig.svg + versionSuffix + '#'
+ + fontFamily + '\') format(\'svg\')' );
+ }
+
+ if ( fontconfig.ttf ) {
+ fontFormats.push( '\t\turl(\'' + base + fontconfig.ttf + versionSuffix
+ + '\') format(\'truetype\')' );
+ }
+
+ fontFaceRule += fontFormats.join() + ';\n';
+
+ if ( fontconfig.fontweight ) {
+ fontFaceRule += '\tfont-weight:' + fontconfig.fontweight + ';';
+ }
+
+ if ( fontconfig.fontstyle !== undefined ) {
+ fontFaceRule += '\tfont-style:' + fontconfig.fontstyle + ';';
+ } else {
+ fontFaceRule += '\tfont-style: normal;';
+ }
+
+ fontFaceRule += '}\n';
+
+ webfonts = this;
+ if ( fontconfig.variants !== undefined ) {
+ $.each( fontconfig.variants, function ( variant ) {
+ fontFaceRule += webfonts.getCSS( fontFamily, variant );
+ } );
+ }
+
+ return fontFaceRule;
+ }
+ };
+
+ $.fn.webfonts = function( option ) {
+ return this.each( function() {
+ var $this = $( this ),
+ data = $this.data( 'webfonts' ),
+ options = typeof option === 'object' && option;
+
+ if ( !data ) {
+ $this.data( 'webfonts', ( data = new WebFonts( this, options ) ) );
+ }
+
+ if ( typeof option === 'string' ) {
+ data[option]();
+ }
+ } );
+ };
+
+ $.fn.webfonts.defaults = {
+ repository: WebFonts.repository, // Default font repository
+ fontStack: [ 'Helvetica', 'Arial', 'sans-serif' ], // Default font fallback
+ exclude: '', // jQuery selectors to exclude
+ overridableFontFamilies: []
+ };
+
+ $.fn.webfonts.Constructor = WebFonts;
+
+ // Private methods for the WebFonts prototype
+
+ /**
+ * Create a new style tag and add it to the DOM.
+ *
+ * @param {String} css
+ */
+ function injectCSS( css ) {
+ var s = document.createElement( 'style' );
+
+ // Insert into document before setting cssText
+ document.getElementsByTagName( 'head' )[0].appendChild( s );
+
+ if ( s.styleSheet ) {
+ s.styleSheet.cssText = css;
+ // IE
+ } else {
+ // Safari sometimes borks on null
+ s.appendChild( document.createTextNode( String( css ) ) );
+ }
+ }
+} )( jQuery, window, document );
diff --git a/MLEB/UniversalLanguageSelector/lib/rangy/rangy-core.js b/MLEB/UniversalLanguageSelector/lib/rangy/rangy-core.js
new file mode 100644
index 00000000..8cda5f68
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/lib/rangy/rangy-core.js
@@ -0,0 +1,3224 @@
+/**
+ * @license Rangy, a cross-browser JavaScript range and selection library
+ * http://code.google.com/p/rangy/
+ *
+ * Copyright 2012, Tim Down
+ * Licensed under the MIT license.
+ * Version: 1.2.3
+ * Build date: 26 February 2012
+ */
+window['rangy'] = (function() {
+
+
+ var OBJECT = "object", FUNCTION = "function", UNDEFINED = "undefined";
+
+ var domRangeProperties = ["startContainer", "startOffset", "endContainer", "endOffset", "collapsed",
+ "commonAncestorContainer", "START_TO_START", "START_TO_END", "END_TO_START", "END_TO_END"];
+
+ var domRangeMethods = ["setStart", "setStartBefore", "setStartAfter", "setEnd", "setEndBefore",
+ "setEndAfter", "collapse", "selectNode", "selectNodeContents", "compareBoundaryPoints", "deleteContents",
+ "extractContents", "cloneContents", "insertNode", "surroundContents", "cloneRange", "toString", "detach"];
+
+ var textRangeProperties = ["boundingHeight", "boundingLeft", "boundingTop", "boundingWidth", "htmlText", "text"];
+
+ // Subset of TextRange's full set of methods that we're interested in
+ var textRangeMethods = ["collapse", "compareEndPoints", "duplicate", "getBookmark", "moveToBookmark",
+ "moveToElementText", "parentElement", "pasteHTML", "select", "setEndPoint", "getBoundingClientRect"];
+
+ /*----------------------------------------------------------------------------------------------------------------*/
+
+ // Trio of functions taken from Peter Michaux's article:
+ // http://peter.michaux.ca/articles/feature-detection-state-of-the-art-browser-scripting
+ function isHostMethod(o, p) {
+ var t = typeof o[p];
+ return t == FUNCTION || (!!(t == OBJECT && o[p])) || t == "unknown";
+ }
+
+ function isHostObject(o, p) {
+ return !!(typeof o[p] == OBJECT && o[p]);
+ }
+
+ function isHostProperty(o, p) {
+ return typeof o[p] != UNDEFINED;
+ }
+
+ // Creates a convenience function to save verbose repeated calls to tests functions
+ function createMultiplePropertyTest(testFunc) {
+ return function(o, props) {
+ var i = props.length;
+ while (i--) {
+ if (!testFunc(o, props[i])) {
+ return false;
+ }
+ }
+ return true;
+ };
+ }
+
+ // Next trio of functions are a convenience to save verbose repeated calls to previous two functions
+ var areHostMethods = createMultiplePropertyTest(isHostMethod);
+ var areHostObjects = createMultiplePropertyTest(isHostObject);
+ var areHostProperties = createMultiplePropertyTest(isHostProperty);
+
+ function isTextRange(range) {
+ return range && areHostMethods(range, textRangeMethods) && areHostProperties(range, textRangeProperties);
+ }
+
+ var api = {
+ version: "1.2.3",
+ initialized: false,
+ supported: true,
+
+ util: {
+ isHostMethod: isHostMethod,
+ isHostObject: isHostObject,
+ isHostProperty: isHostProperty,
+ areHostMethods: areHostMethods,
+ areHostObjects: areHostObjects,
+ areHostProperties: areHostProperties,
+ isTextRange: isTextRange
+ },
+
+ features: {},
+
+ modules: {},
+ config: {
+ alertOnWarn: false,
+ preferTextRange: false
+ }
+ };
+
+ function fail(reason) {
+ window.alert("Rangy not supported in your browser. Reason: " + reason);
+ api.initialized = true;
+ api.supported = false;
+ }
+
+ api.fail = fail;
+
+ function warn(msg) {
+ var warningMessage = "Rangy warning: " + msg;
+ if (api.config.alertOnWarn) {
+ window.alert(warningMessage);
+ } else if (typeof window.console != UNDEFINED && typeof window.console.log != UNDEFINED) {
+ window.console.log(warningMessage);
+ }
+ }
+
+ api.warn = warn;
+
+ if ({}.hasOwnProperty) {
+ api.util.extend = function(o, props) {
+ for (var i in props) {
+ if (props.hasOwnProperty(i)) {
+ o[i] = props[i];
+ }
+ }
+ };
+ } else {
+ fail("hasOwnProperty not supported");
+ }
+
+ var initListeners = [];
+ var moduleInitializers = [];
+
+ // Initialization
+ function init() {
+ if (api.initialized) {
+ return;
+ }
+ var testRange;
+ var implementsDomRange = false, implementsTextRange = false;
+
+ // First, perform basic feature tests
+
+ if (isHostMethod(document, "createRange")) {
+ testRange = document.createRange();
+ if (areHostMethods(testRange, domRangeMethods) && areHostProperties(testRange, domRangeProperties)) {
+ implementsDomRange = true;
+ }
+ testRange.detach();
+ }
+
+ var body = isHostObject(document, "body") ? document.body : document.getElementsByTagName("body")[0];
+
+ if (body && isHostMethod(body, "createTextRange")) {
+ testRange = body.createTextRange();
+ if (isTextRange(testRange)) {
+ implementsTextRange = true;
+ }
+ }
+
+ if (!implementsDomRange && !implementsTextRange) {
+ fail("Neither Range nor TextRange are implemented");
+ }
+
+ api.initialized = true;
+ api.features = {
+ implementsDomRange: implementsDomRange,
+ implementsTextRange: implementsTextRange
+ };
+
+ // Initialize modules and call init listeners
+ var allListeners = moduleInitializers.concat(initListeners);
+ for (var i = 0, len = allListeners.length; i < len; ++i) {
+ try {
+ allListeners[i](api);
+ } catch (ex) {
+ if (isHostObject(window, "console") && isHostMethod(window.console, "log")) {
+ window.console.log("Init listener threw an exception. Continuing.", ex);
+ }
+
+ }
+ }
+ }
+
+ // Allow external scripts to initialize this library in case it's loaded after the document has loaded
+ api.init = init;
+
+ // Execute listener immediately if already initialized
+ api.addInitListener = function(listener) {
+ if (api.initialized) {
+ listener(api);
+ } else {
+ initListeners.push(listener);
+ }
+ };
+
+ var createMissingNativeApiListeners = [];
+
+ api.addCreateMissingNativeApiListener = function(listener) {
+ createMissingNativeApiListeners.push(listener);
+ };
+
+ function createMissingNativeApi(win) {
+ win = win || window;
+ init();
+
+ // Notify listeners
+ for (var i = 0, len = createMissingNativeApiListeners.length; i < len; ++i) {
+ createMissingNativeApiListeners[i](win);
+ }
+ }
+
+ api.createMissingNativeApi = createMissingNativeApi;
+
+ /**
+ * @constructor
+ */
+ function Module(name) {
+ this.name = name;
+ this.initialized = false;
+ this.supported = false;
+ }
+
+ Module.prototype.fail = function(reason) {
+ this.initialized = true;
+ this.supported = false;
+
+ throw new Error("Module '" + this.name + "' failed to load: " + reason);
+ };
+
+ Module.prototype.warn = function(msg) {
+ api.warn("Module " + this.name + ": " + msg);
+ };
+
+ Module.prototype.createError = function(msg) {
+ return new Error("Error in Rangy " + this.name + " module: " + msg);
+ };
+
+ api.createModule = function(name, initFunc) {
+ var module = new Module(name);
+ api.modules[name] = module;
+
+ moduleInitializers.push(function(api) {
+ initFunc(api, module);
+ module.initialized = true;
+ module.supported = true;
+ });
+ };
+
+ api.requireModules = function(modules) {
+ for (var i = 0, len = modules.length, module, moduleName; i < len; ++i) {
+ moduleName = modules[i];
+ module = api.modules[moduleName];
+ if (!module || !(module instanceof Module)) {
+ throw new Error("Module '" + moduleName + "' not found");
+ }
+ if (!module.supported) {
+ throw new Error("Module '" + moduleName + "' not supported");
+ }
+ }
+ };
+
+ /*----------------------------------------------------------------------------------------------------------------*/
+
+ // Wait for document to load before running tests
+
+ var docReady = false;
+
+ var loadHandler = function(e) {
+
+ if (!docReady) {
+ docReady = true;
+ if (!api.initialized) {
+ init();
+ }
+ }
+ };
+
+ // Test whether we have window and document objects that we will need
+ if (typeof window == UNDEFINED) {
+ fail("No window found");
+ return;
+ }
+ if (typeof document == UNDEFINED) {
+ fail("No document found");
+ return;
+ }
+
+ if (isHostMethod(document, "addEventListener")) {
+ document.addEventListener("DOMContentLoaded", loadHandler, false);
+ }
+
+ // Add a fallback in case the DOMContentLoaded event isn't supported
+ if (isHostMethod(window, "addEventListener")) {
+ window.addEventListener("load", loadHandler, false);
+ } else if (isHostMethod(window, "attachEvent")) {
+ window.attachEvent("onload", loadHandler);
+ } else {
+ fail("Window does not have required addEventListener or attachEvent method");
+ }
+
+ return api;
+})();
+rangy.createModule("DomUtil", function(api, module) {
+
+ var UNDEF = "undefined";
+ var util = api.util;
+
+ // Perform feature tests
+ if (!util.areHostMethods(document, ["createDocumentFragment", "createElement", "createTextNode"])) {
+ module.fail("document missing a Node creation method");
+ }
+
+ if (!util.isHostMethod(document, "getElementsByTagName")) {
+ module.fail("document missing getElementsByTagName method");
+ }
+
+ var el = document.createElement("div");
+ if (!util.areHostMethods(el, ["insertBefore", "appendChild", "cloneNode"] ||
+ !util.areHostObjects(el, ["previousSibling", "nextSibling", "childNodes", "parentNode"]))) {
+ module.fail("Incomplete Element implementation");
+ }
+
+ // innerHTML is required for Range's createContextualFragment method
+ if (!util.isHostProperty(el, "innerHTML")) {
+ module.fail("Element is missing innerHTML property");
+ }
+
+ var textNode = document.createTextNode("test");
+ if (!util.areHostMethods(textNode, ["splitText", "deleteData", "insertData", "appendData", "cloneNode"] ||
+ !util.areHostObjects(el, ["previousSibling", "nextSibling", "childNodes", "parentNode"]) ||
+ !util.areHostProperties(textNode, ["data"]))) {
+ module.fail("Incomplete Text Node implementation");
+ }
+
+ /*----------------------------------------------------------------------------------------------------------------*/
+
+ // Removed use of indexOf because of a bizarre bug in Opera that is thrown in one of the Acid3 tests. I haven't been
+ // able to replicate it outside of the test. The bug is that indexOf returns -1 when called on an Array that
+ // contains just the document as a single element and the value searched for is the document.
+ var arrayContains = /*Array.prototype.indexOf ?
+ function(arr, val) {
+ return arr.indexOf(val) > -1;
+ }:*/
+
+ function(arr, val) {
+ var i = arr.length;
+ while (i--) {
+ if (arr[i] === val) {
+ return true;
+ }
+ }
+ return false;
+ };
+
+ // Opera 11 puts HTML elements in the null namespace, it seems, and IE 7 has undefined namespaceURI
+ function isHtmlNamespace(node) {
+ var ns;
+ return typeof node.namespaceURI == UNDEF || ((ns = node.namespaceURI) === null || ns == "http://www.w3.org/1999/xhtml");
+ }
+
+ function parentElement(node) {
+ var parent = node.parentNode;
+ return (parent.nodeType == 1) ? parent : null;
+ }
+
+ function getNodeIndex(node) {
+ var i = 0;
+ while( (node = node.previousSibling) ) {
+ i++;
+ }
+ return i;
+ }
+
+ function getNodeLength(node) {
+ var childNodes;
+ return isCharacterDataNode(node) ? node.length : ((childNodes = node.childNodes) ? childNodes.length : 0);
+ }
+
+ function getCommonAncestor(node1, node2) {
+ var ancestors = [], n;
+ for (n = node1; n; n = n.parentNode) {
+ ancestors.push(n);
+ }
+
+ for (n = node2; n; n = n.parentNode) {
+ if (arrayContains(ancestors, n)) {
+ return n;
+ }
+ }
+
+ return null;
+ }
+
+ function isAncestorOf(ancestor, descendant, selfIsAncestor) {
+ var n = selfIsAncestor ? descendant : descendant.parentNode;
+ while (n) {
+ if (n === ancestor) {
+ return true;
+ } else {
+ n = n.parentNode;
+ }
+ }
+ return false;
+ }
+
+ function getClosestAncestorIn(node, ancestor, selfIsAncestor) {
+ var p, n = selfIsAncestor ? node : node.parentNode;
+ while (n) {
+ p = n.parentNode;
+ if (p === ancestor) {
+ return n;
+ }
+ n = p;
+ }
+ return null;
+ }
+
+ function isCharacterDataNode(node) {
+ var t = node.nodeType;
+ return t == 3 || t == 4 || t == 8 ; // Text, CDataSection or Comment
+ }
+
+ function insertAfter(node, precedingNode) {
+ var nextNode = precedingNode.nextSibling, parent = precedingNode.parentNode;
+ if (nextNode) {
+ parent.insertBefore(node, nextNode);
+ } else {
+ parent.appendChild(node);
+ }
+ return node;
+ }
+
+ // Note that we cannot use splitText() because it is bugridden in IE 9.
+ function splitDataNode(node, index) {
+ var newNode = node.cloneNode(false);
+ newNode.deleteData(0, index);
+ node.deleteData(index, node.length - index);
+ insertAfter(newNode, node);
+ return newNode;
+ }
+
+ function getDocument(node) {
+ if (node.nodeType == 9) {
+ return node;
+ } else if (typeof node.ownerDocument != UNDEF) {
+ return node.ownerDocument;
+ } else if (typeof node.document != UNDEF) {
+ return node.document;
+ } else if (node.parentNode) {
+ return getDocument(node.parentNode);
+ } else {
+ throw new Error("getDocument: no document found for node");
+ }
+ }
+
+ function getWindow(node) {
+ var doc = getDocument(node);
+ if (typeof doc.defaultView != UNDEF) {
+ return doc.defaultView;
+ } else if (typeof doc.parentWindow != UNDEF) {
+ return doc.parentWindow;
+ } else {
+ throw new Error("Cannot get a window object for node");
+ }
+ }
+
+ function getIframeDocument(iframeEl) {
+ if (typeof iframeEl.contentDocument != UNDEF) {
+ return iframeEl.contentDocument;
+ } else if (typeof iframeEl.contentWindow != UNDEF) {
+ return iframeEl.contentWindow.document;
+ } else {
+ throw new Error("getIframeWindow: No Document object found for iframe element");
+ }
+ }
+
+ function getIframeWindow(iframeEl) {
+ if (typeof iframeEl.contentWindow != UNDEF) {
+ return iframeEl.contentWindow;
+ } else if (typeof iframeEl.contentDocument != UNDEF) {
+ return iframeEl.contentDocument.defaultView;
+ } else {
+ throw new Error("getIframeWindow: No Window object found for iframe element");
+ }
+ }
+
+ function getBody(doc) {
+ return util.isHostObject(doc, "body") ? doc.body : doc.getElementsByTagName("body")[0];
+ }
+
+ function getRootContainer(node) {
+ var parent;
+ while ( (parent = node.parentNode) ) {
+ node = parent;
+ }
+ return node;
+ }
+
+ function comparePoints(nodeA, offsetA, nodeB, offsetB) {
+ // See http://www.w3.org/TR/DOM-Level-2-Traversal-Range/ranges.html#Level-2-Range-Comparing
+ var nodeC, root, childA, childB, n;
+ if (nodeA == nodeB) {
+
+ // Case 1: nodes are the same
+ return offsetA === offsetB ? 0 : (offsetA < offsetB) ? -1 : 1;
+ } else if ( (nodeC = getClosestAncestorIn(nodeB, nodeA, true)) ) {
+
+ // Case 2: node C (container B or an ancestor) is a child node of A
+ return offsetA <= getNodeIndex(nodeC) ? -1 : 1;
+ } else if ( (nodeC = getClosestAncestorIn(nodeA, nodeB, true)) ) {
+
+ // Case 3: node C (container A or an ancestor) is a child node of B
+ return getNodeIndex(nodeC) < offsetB ? -1 : 1;
+ } else {
+
+ // Case 4: containers are siblings or descendants of siblings
+ root = getCommonAncestor(nodeA, nodeB);
+ childA = (nodeA === root) ? root : getClosestAncestorIn(nodeA, root, true);
+ childB = (nodeB === root) ? root : getClosestAncestorIn(nodeB, root, true);
+
+ if (childA === childB) {
+ // This shouldn't be possible
+
+ throw new Error("comparePoints got to case 4 and childA and childB are the same!");
+ } else {
+ n = root.firstChild;
+ while (n) {
+ if (n === childA) {
+ return -1;
+ } else if (n === childB) {
+ return 1;
+ }
+ n = n.nextSibling;
+ }
+ throw new Error("Should not be here!");
+ }
+ }
+ }
+
+ function fragmentFromNodeChildren(node) {
+ var fragment = getDocument(node).createDocumentFragment(), child;
+ while ( (child = node.firstChild) ) {
+ fragment.appendChild(child);
+ }
+ return fragment;
+ }
+
+ function inspectNode(node) {
+ if (!node) {
+ return "[No node]";
+ }
+ if (isCharacterDataNode(node)) {
+ return '"' + node.data + '"';
+ } else if (node.nodeType == 1) {
+ var idAttr = node.id ? ' id="' + node.id + '"' : "";
+ return "<" + node.nodeName + idAttr + ">[" + node.childNodes.length + "]";
+ } else {
+ return node.nodeName;
+ }
+ }
+
+ /**
+ * @constructor
+ */
+ function NodeIterator(root) {
+ this.root = root;
+ this._next = root;
+ }
+
+ NodeIterator.prototype = {
+ _current: null,
+
+ hasNext: function() {
+ return !!this._next;
+ },
+
+ next: function() {
+ var n = this._current = this._next;
+ var child, next;
+ if (this._current) {
+ child = n.firstChild;
+ if (child) {
+ this._next = child;
+ } else {
+ next = null;
+ while ((n !== this.root) && !(next = n.nextSibling)) {
+ n = n.parentNode;
+ }
+ this._next = next;
+ }
+ }
+ return this._current;
+ },
+
+ detach: function() {
+ this._current = this._next = this.root = null;
+ }
+ };
+
+ function createIterator(root) {
+ return new NodeIterator(root);
+ }
+
+ /**
+ * @constructor
+ */
+ function DomPosition(node, offset) {
+ this.node = node;
+ this.offset = offset;
+ }
+
+ DomPosition.prototype = {
+ equals: function(pos) {
+ return this.node === pos.node & this.offset == pos.offset;
+ },
+
+ inspect: function() {
+ return "[DomPosition(" + inspectNode(this.node) + ":" + this.offset + ")]";
+ }
+ };
+
+ /**
+ * @constructor
+ */
+ function DOMException(codeName) {
+ this.code = this[codeName];
+ this.codeName = codeName;
+ this.message = "DOMException: " + this.codeName;
+ }
+
+ DOMException.prototype = {
+ INDEX_SIZE_ERR: 1,
+ HIERARCHY_REQUEST_ERR: 3,
+ WRONG_DOCUMENT_ERR: 4,
+ NO_MODIFICATION_ALLOWED_ERR: 7,
+ NOT_FOUND_ERR: 8,
+ NOT_SUPPORTED_ERR: 9,
+ INVALID_STATE_ERR: 11
+ };
+
+ DOMException.prototype.toString = function() {
+ return this.message;
+ };
+
+ api.dom = {
+ arrayContains: arrayContains,
+ isHtmlNamespace: isHtmlNamespace,
+ parentElement: parentElement,
+ getNodeIndex: getNodeIndex,
+ getNodeLength: getNodeLength,
+ getCommonAncestor: getCommonAncestor,
+ isAncestorOf: isAncestorOf,
+ getClosestAncestorIn: getClosestAncestorIn,
+ isCharacterDataNode: isCharacterDataNode,
+ insertAfter: insertAfter,
+ splitDataNode: splitDataNode,
+ getDocument: getDocument,
+ getWindow: getWindow,
+ getIframeWindow: getIframeWindow,
+ getIframeDocument: getIframeDocument,
+ getBody: getBody,
+ getRootContainer: getRootContainer,
+ comparePoints: comparePoints,
+ inspectNode: inspectNode,
+ fragmentFromNodeChildren: fragmentFromNodeChildren,
+ createIterator: createIterator,
+ DomPosition: DomPosition
+ };
+
+ api.DOMException = DOMException;
+});rangy.createModule("DomRange", function(api, module) {
+ api.requireModules( ["DomUtil"] );
+
+
+ var dom = api.dom;
+ var DomPosition = dom.DomPosition;
+ var DOMException = api.DOMException;
+
+ /*----------------------------------------------------------------------------------------------------------------*/
+
+ // Utility functions
+
+ function isNonTextPartiallySelected(node, range) {
+ return (node.nodeType != 3) &&
+ (dom.isAncestorOf(node, range.startContainer, true) || dom.isAncestorOf(node, range.endContainer, true));
+ }
+
+ function getRangeDocument(range) {
+ return dom.getDocument(range.startContainer);
+ }
+
+ function dispatchEvent(range, type, args) {
+ var listeners = range._listeners[type];
+ if (listeners) {
+ for (var i = 0, len = listeners.length; i < len; ++i) {
+ listeners[i].call(range, {target: range, args: args});
+ }
+ }
+ }
+
+ function getBoundaryBeforeNode(node) {
+ return new DomPosition(node.parentNode, dom.getNodeIndex(node));
+ }
+
+ function getBoundaryAfterNode(node) {
+ return new DomPosition(node.parentNode, dom.getNodeIndex(node) + 1);
+ }
+
+ function insertNodeAtPosition(node, n, o) {
+ var firstNodeInserted = node.nodeType == 11 ? node.firstChild : node;
+ if (dom.isCharacterDataNode(n)) {
+ if (o == n.length) {
+ dom.insertAfter(node, n);
+ } else {
+ n.parentNode.insertBefore(node, o == 0 ? n : dom.splitDataNode(n, o));
+ }
+ } else if (o >= n.childNodes.length) {
+ n.appendChild(node);
+ } else {
+ n.insertBefore(node, n.childNodes[o]);
+ }
+ return firstNodeInserted;
+ }
+
+ function cloneSubtree(iterator) {
+ var partiallySelected;
+ for (var node, frag = getRangeDocument(iterator.range).createDocumentFragment(), subIterator; node = iterator.next(); ) {
+ partiallySelected = iterator.isPartiallySelectedSubtree();
+
+ node = node.cloneNode(!partiallySelected);
+ if (partiallySelected) {
+ subIterator = iterator.getSubtreeIterator();
+ node.appendChild(cloneSubtree(subIterator));
+ subIterator.detach(true);
+ }
+
+ if (node.nodeType == 10) { // DocumentType
+ throw new DOMException("HIERARCHY_REQUEST_ERR");
+ }
+ frag.appendChild(node);
+ }
+ return frag;
+ }
+
+ function iterateSubtree(rangeIterator, func, iteratorState) {
+ var it, n;
+ iteratorState = iteratorState || { stop: false };
+ for (var node, subRangeIterator; node = rangeIterator.next(); ) {
+ //log.debug("iterateSubtree, partially selected: " + rangeIterator.isPartiallySelectedSubtree(), nodeToString(node));
+ if (rangeIterator.isPartiallySelectedSubtree()) {
+ // The node is partially selected by the Range, so we can use a new RangeIterator on the portion of the
+ // node selected by the Range.
+ if (func(node) === false) {
+ iteratorState.stop = true;
+ return;
+ } else {
+ subRangeIterator = rangeIterator.getSubtreeIterator();
+ iterateSubtree(subRangeIterator, func, iteratorState);
+ subRangeIterator.detach(true);
+ if (iteratorState.stop) {
+ return;
+ }
+ }
+ } else {
+ // The whole node is selected, so we can use efficient DOM iteration to iterate over the node and its
+ // descendant
+ it = dom.createIterator(node);
+ while ( (n = it.next()) ) {
+ if (func(n) === false) {
+ iteratorState.stop = true;
+ return;
+ }
+ }
+ }
+ }
+ }
+
+ function deleteSubtree(iterator) {
+ var subIterator;
+ while (iterator.next()) {
+ if (iterator.isPartiallySelectedSubtree()) {
+ subIterator = iterator.getSubtreeIterator();
+ deleteSubtree(subIterator);
+ subIterator.detach(true);
+ } else {
+ iterator.remove();
+ }
+ }
+ }
+
+ function extractSubtree(iterator) {
+
+ for (var node, frag = getRangeDocument(iterator.range).createDocumentFragment(), subIterator; node = iterator.next(); ) {
+
+
+ if (iterator.isPartiallySelectedSubtree()) {
+ node = node.cloneNode(false);
+ subIterator = iterator.getSubtreeIterator();
+ node.appendChild(extractSubtree(subIterator));
+ subIterator.detach(true);
+ } else {
+ iterator.remove();
+ }
+ if (node.nodeType == 10) { // DocumentType
+ throw new DOMException("HIERARCHY_REQUEST_ERR");
+ }
+ frag.appendChild(node);
+ }
+ return frag;
+ }
+
+ function getNodesInRange(range, nodeTypes, filter) {
+ //log.info("getNodesInRange, " + nodeTypes.join(","));
+ var filterNodeTypes = !!(nodeTypes && nodeTypes.length), regex;
+ var filterExists = !!filter;
+ if (filterNodeTypes) {
+ regex = new RegExp("^(" + nodeTypes.join("|") + ")$");
+ }
+
+ var nodes = [];
+ iterateSubtree(new RangeIterator(range, false), function(node) {
+ if ((!filterNodeTypes || regex.test(node.nodeType)) && (!filterExists || filter(node))) {
+ nodes.push(node);
+ }
+ });
+ return nodes;
+ }
+
+ function inspect(range) {
+ var name = (typeof range.getName == "undefined") ? "Range" : range.getName();
+ return "[" + name + "(" + dom.inspectNode(range.startContainer) + ":" + range.startOffset + ", " +
+ dom.inspectNode(range.endContainer) + ":" + range.endOffset + ")]";
+ }
+
+ /*----------------------------------------------------------------------------------------------------------------*/
+
+ // RangeIterator code partially borrows from IERange by Tim Ryan (http://github.com/timcameronryan/IERange)
+
+ /**
+ * @constructor
+ */
+ function RangeIterator(range, clonePartiallySelectedTextNodes) {
+ this.range = range;
+ this.clonePartiallySelectedTextNodes = clonePartiallySelectedTextNodes;
+
+
+
+ if (!range.collapsed) {
+ this.sc = range.startContainer;
+ this.so = range.startOffset;
+ this.ec = range.endContainer;
+ this.eo = range.endOffset;
+ var root = range.commonAncestorContainer;
+
+ if (this.sc === this.ec && dom.isCharacterDataNode(this.sc)) {
+ this.isSingleCharacterDataNode = true;
+ this._first = this._last = this._next = this.sc;
+ } else {
+ this._first = this._next = (this.sc === root && !dom.isCharacterDataNode(this.sc)) ?
+ this.sc.childNodes[this.so] : dom.getClosestAncestorIn(this.sc, root, true);
+ this._last = (this.ec === root && !dom.isCharacterDataNode(this.ec)) ?
+ this.ec.childNodes[this.eo - 1] : dom.getClosestAncestorIn(this.ec, root, true);
+ }
+
+ }
+ }
+
+ RangeIterator.prototype = {
+ _current: null,
+ _next: null,
+ _first: null,
+ _last: null,
+ isSingleCharacterDataNode: false,
+
+ reset: function() {
+ this._current = null;
+ this._next = this._first;
+ },
+
+ hasNext: function() {
+ return !!this._next;
+ },
+
+ next: function() {
+ // Move to next node
+ var current = this._current = this._next;
+ if (current) {
+ this._next = (current !== this._last) ? current.nextSibling : null;
+
+ // Check for partially selected text nodes
+ if (dom.isCharacterDataNode(current) && this.clonePartiallySelectedTextNodes) {
+ if (current === this.ec) {
+
+ (current = current.cloneNode(true)).deleteData(this.eo, current.length - this.eo);
+ }
+ if (this._current === this.sc) {
+
+ (current = current.cloneNode(true)).deleteData(0, this.so);
+ }
+ }
+ }
+
+ return current;
+ },
+
+ remove: function() {
+ var current = this._current, start, end;
+
+ if (dom.isCharacterDataNode(current) && (current === this.sc || current === this.ec)) {
+ start = (current === this.sc) ? this.so : 0;
+ end = (current === this.ec) ? this.eo : current.length;
+ if (start != end) {
+ current.deleteData(start, end - start);
+ }
+ } else {
+ if (current.parentNode) {
+ current.parentNode.removeChild(current);
+ } else {
+
+ }
+ }
+ },
+
+ // Checks if the current node is partially selected
+ isPartiallySelectedSubtree: function() {
+ var current = this._current;
+ return isNonTextPartiallySelected(current, this.range);
+ },
+
+ getSubtreeIterator: function() {
+ var subRange;
+ if (this.isSingleCharacterDataNode) {
+ subRange = this.range.cloneRange();
+ subRange.collapse();
+ } else {
+ subRange = new Range(getRangeDocument(this.range));
+ var current = this._current;
+ var startContainer = current, startOffset = 0, endContainer = current, endOffset = dom.getNodeLength(current);
+
+ if (dom.isAncestorOf(current, this.sc, true)) {
+ startContainer = this.sc;
+ startOffset = this.so;
+ }
+ if (dom.isAncestorOf(current, this.ec, true)) {
+ endContainer = this.ec;
+ endOffset = this.eo;
+ }
+
+ updateBoundaries(subRange, startContainer, startOffset, endContainer, endOffset);
+ }
+ return new RangeIterator(subRange, this.clonePartiallySelectedTextNodes);
+ },
+
+ detach: function(detachRange) {
+ if (detachRange) {
+ this.range.detach();
+ }
+ this.range = this._current = this._next = this._first = this._last = this.sc = this.so = this.ec = this.eo = null;
+ }
+ };
+
+ /*----------------------------------------------------------------------------------------------------------------*/
+
+ // Exceptions
+
+ /**
+ * @constructor
+ */
+ function RangeException(codeName) {
+ this.code = this[codeName];
+ this.codeName = codeName;
+ this.message = "RangeException: " + this.codeName;
+ }
+
+ RangeException.prototype = {
+ BAD_BOUNDARYPOINTS_ERR: 1,
+ INVALID_NODE_TYPE_ERR: 2
+ };
+
+ RangeException.prototype.toString = function() {
+ return this.message;
+ };
+
+ /*----------------------------------------------------------------------------------------------------------------*/
+
+ /**
+ * Currently iterates through all nodes in the range on creation until I think of a decent way to do it
+ * TODO: Look into making this a proper iterator, not requiring preloading everything first
+ * @constructor
+ */
+ function RangeNodeIterator(range, nodeTypes, filter) {
+ this.nodes = getNodesInRange(range, nodeTypes, filter);
+ this._next = this.nodes[0];
+ this._position = 0;
+ }
+
+ RangeNodeIterator.prototype = {
+ _current: null,
+
+ hasNext: function() {
+ return !!this._next;
+ },
+
+ next: function() {
+ this._current = this._next;
+ this._next = this.nodes[ ++this._position ];
+ return this._current;
+ },
+
+ detach: function() {
+ this._current = this._next = this.nodes = null;
+ }
+ };
+
+ var beforeAfterNodeTypes = [1, 3, 4, 5, 7, 8, 10];
+ var rootContainerNodeTypes = [2, 9, 11];
+ var readonlyNodeTypes = [5, 6, 10, 12];
+ var insertableNodeTypes = [1, 3, 4, 5, 7, 8, 10, 11];
+ var surroundNodeTypes = [1, 3, 4, 5, 7, 8];
+
+ function createAncestorFinder(nodeTypes) {
+ return function(node, selfIsAncestor) {
+ var t, n = selfIsAncestor ? node : node.parentNode;
+ while (n) {
+ t = n.nodeType;
+ if (dom.arrayContains(nodeTypes, t)) {
+ return n;
+ }
+ n = n.parentNode;
+ }
+ return null;
+ };
+ }
+
+ var getRootContainer = dom.getRootContainer;
+ var getDocumentOrFragmentContainer = createAncestorFinder( [9, 11] );
+ var getReadonlyAncestor = createAncestorFinder(readonlyNodeTypes);
+ var getDocTypeNotationEntityAncestor = createAncestorFinder( [6, 10, 12] );
+
+ function assertNoDocTypeNotationEntityAncestor(node, allowSelf) {
+ if (getDocTypeNotationEntityAncestor(node, allowSelf)) {
+ throw new RangeException("INVALID_NODE_TYPE_ERR");
+ }
+ }
+
+ function assertNotDetached(range) {
+ if (!range.startContainer) {
+ throw new DOMException("INVALID_STATE_ERR");
+ }
+ }
+
+ function assertValidNodeType(node, invalidTypes) {
+ if (!dom.arrayContains(invalidTypes, node.nodeType)) {
+ throw new RangeException("INVALID_NODE_TYPE_ERR");
+ }
+ }
+
+ function assertValidOffset(node, offset) {
+ if (offset < 0 || offset > (dom.isCharacterDataNode(node) ? node.length : node.childNodes.length)) {
+ throw new DOMException("INDEX_SIZE_ERR");
+ }
+ }
+
+ function assertSameDocumentOrFragment(node1, node2) {
+ if (getDocumentOrFragmentContainer(node1, true) !== getDocumentOrFragmentContainer(node2, true)) {
+ throw new DOMException("WRONG_DOCUMENT_ERR");
+ }
+ }
+
+ function assertNodeNotReadOnly(node) {
+ if (getReadonlyAncestor(node, true)) {
+ throw new DOMException("NO_MODIFICATION_ALLOWED_ERR");
+ }
+ }
+
+ function assertNode(node, codeName) {
+ if (!node) {
+ throw new DOMException(codeName);
+ }
+ }
+
+ function isOrphan(node) {
+ return !dom.arrayContains(rootContainerNodeTypes, node.nodeType) && !getDocumentOrFragmentContainer(node, true);
+ }
+
+ function isValidOffset(node, offset) {
+ return offset <= (dom.isCharacterDataNode(node) ? node.length : node.childNodes.length);
+ }
+
+ function isRangeValid(range) {
+ return (!!range.startContainer && !!range.endContainer
+ && !isOrphan(range.startContainer)
+ && !isOrphan(range.endContainer)
+ && isValidOffset(range.startContainer, range.startOffset)
+ && isValidOffset(range.endContainer, range.endOffset));
+ }
+
+ function assertRangeValid(range) {
+ assertNotDetached(range);
+ if (!isRangeValid(range)) {
+ throw new Error("Range error: Range is no longer valid after DOM mutation (" + range.inspect() + ")");
+ }
+ }
+
+ /*----------------------------------------------------------------------------------------------------------------*/
+
+ // Test the browser's innerHTML support to decide how to implement createContextualFragment
+ var styleEl = document.createElement("style");
+ var htmlParsingConforms = false;
+ try {
+ styleEl.innerHTML = "<b>x</b>";
+ htmlParsingConforms = (styleEl.firstChild.nodeType == 3); // Opera incorrectly creates an element node
+ } catch (e) {
+ // IE 6 and 7 throw
+ }
+
+ api.features.htmlParsingConforms = htmlParsingConforms;
+
+ var createContextualFragment = htmlParsingConforms ?
+
+ // Implementation as per HTML parsing spec, trusting in the browser's implementation of innerHTML. See
+ // discussion and base code for this implementation at issue 67.
+ // Spec: http://html5.org/specs/dom-parsing.html#extensions-to-the-range-interface
+ // Thanks to Aleks Williams.
+ function(fragmentStr) {
+ // "Let node the context object's start's node."
+ var node = this.startContainer;
+ var doc = dom.getDocument(node);
+
+ // "If the context object's start's node is null, raise an INVALID_STATE_ERR
+ // exception and abort these steps."
+ if (!node) {
+ throw new DOMException("INVALID_STATE_ERR");
+ }
+
+ // "Let element be as follows, depending on node's interface:"
+ // Document, Document Fragment: null
+ var el = null;
+
+ // "Element: node"
+ if (node.nodeType == 1) {
+ el = node;
+
+ // "Text, Comment: node's parentElement"
+ } else if (dom.isCharacterDataNode(node)) {
+ el = dom.parentElement(node);
+ }
+
+ // "If either element is null or element's ownerDocument is an HTML document
+ // and element's local name is "html" and element's namespace is the HTML
+ // namespace"
+ if (el === null || (
+ el.nodeName == "HTML"
+ && dom.isHtmlNamespace(dom.getDocument(el).documentElement)
+ && dom.isHtmlNamespace(el)
+ )) {
+
+ // "let element be a new Element with "body" as its local name and the HTML
+ // namespace as its namespace.""
+ el = doc.createElement("body");
+ } else {
+ el = el.cloneNode(false);
+ }
+
+ // "If the node's document is an HTML document: Invoke the HTML fragment parsing algorithm."
+ // "If the node's document is an XML document: Invoke the XML fragment parsing algorithm."
+ // "In either case, the algorithm must be invoked with fragment as the input
+ // and element as the context element."
+ el.innerHTML = fragmentStr;
+
+ // "If this raises an exception, then abort these steps. Otherwise, let new
+ // children be the nodes returned."
+
+ // "Let fragment be a new DocumentFragment."
+ // "Append all new children to fragment."
+ // "Return fragment."
+ return dom.fragmentFromNodeChildren(el);
+ } :
+
+ // In this case, innerHTML cannot be trusted, so fall back to a simpler, non-conformant implementation that
+ // previous versions of Rangy used (with the exception of using a body element rather than a div)
+ function(fragmentStr) {
+ assertNotDetached(this);
+ var doc = getRangeDocument(this);
+ var el = doc.createElement("body");
+ el.innerHTML = fragmentStr;
+
+ return dom.fragmentFromNodeChildren(el);
+ };
+
+ /*----------------------------------------------------------------------------------------------------------------*/
+
+ var rangeProperties = ["startContainer", "startOffset", "endContainer", "endOffset", "collapsed",
+ "commonAncestorContainer"];
+
+ var s2s = 0, s2e = 1, e2e = 2, e2s = 3;
+ var n_b = 0, n_a = 1, n_b_a = 2, n_i = 3;
+
+ function RangePrototype() {}
+
+ RangePrototype.prototype = {
+ attachListener: function(type, listener) {
+ this._listeners[type].push(listener);
+ },
+
+ compareBoundaryPoints: function(how, range) {
+ assertRangeValid(this);
+ assertSameDocumentOrFragment(this.startContainer, range.startContainer);
+
+ var nodeA, offsetA, nodeB, offsetB;
+ var prefixA = (how == e2s || how == s2s) ? "start" : "end";
+ var prefixB = (how == s2e || how == s2s) ? "start" : "end";
+ nodeA = this[prefixA + "Container"];
+ offsetA = this[prefixA + "Offset"];
+ nodeB = range[prefixB + "Container"];
+ offsetB = range[prefixB + "Offset"];
+ return dom.comparePoints(nodeA, offsetA, nodeB, offsetB);
+ },
+
+ insertNode: function(node) {
+ assertRangeValid(this);
+ assertValidNodeType(node, insertableNodeTypes);
+ assertNodeNotReadOnly(this.startContainer);
+
+ if (dom.isAncestorOf(node, this.startContainer, true)) {
+ throw new DOMException("HIERARCHY_REQUEST_ERR");
+ }
+
+ // No check for whether the container of the start of the Range is of a type that does not allow
+ // children of the type of node: the browser's DOM implementation should do this for us when we attempt
+ // to add the node
+
+ var firstNodeInserted = insertNodeAtPosition(node, this.startContainer, this.startOffset);
+ this.setStartBefore(firstNodeInserted);
+ },
+
+ cloneContents: function() {
+ assertRangeValid(this);
+
+ var clone, frag;
+ if (this.collapsed) {
+ return getRangeDocument(this).createDocumentFragment();
+ } else {
+ if (this.startContainer === this.endContainer && dom.isCharacterDataNode(this.startContainer)) {
+ clone = this.startContainer.cloneNode(true);
+ clone.data = clone.data.slice(this.startOffset, this.endOffset);
+ frag = getRangeDocument(this).createDocumentFragment();
+ frag.appendChild(clone);
+ return frag;
+ } else {
+ var iterator = new RangeIterator(this, true);
+ clone = cloneSubtree(iterator);
+ iterator.detach();
+ }
+ return clone;
+ }
+ },
+
+ canSurroundContents: function() {
+ assertRangeValid(this);
+ assertNodeNotReadOnly(this.startContainer);
+ assertNodeNotReadOnly(this.endContainer);
+
+ // Check if the contents can be surrounded. Specifically, this means whether the range partially selects
+ // no non-text nodes.
+ var iterator = new RangeIterator(this, true);
+ var boundariesInvalid = (iterator._first && (isNonTextPartiallySelected(iterator._first, this)) ||
+ (iterator._last && isNonTextPartiallySelected(iterator._last, this)));
+ iterator.detach();
+ return !boundariesInvalid;
+ },
+
+ surroundContents: function(node) {
+ assertValidNodeType(node, surroundNodeTypes);
+
+ if (!this.canSurroundContents()) {
+ throw new RangeException("BAD_BOUNDARYPOINTS_ERR");
+ }
+
+ // Extract the contents
+ var content = this.extractContents();
+
+ // Clear the children of the node
+ if (node.hasChildNodes()) {
+ while (node.lastChild) {
+ node.removeChild(node.lastChild);
+ }
+ }
+
+ // Insert the new node and add the extracted contents
+ insertNodeAtPosition(node, this.startContainer, this.startOffset);
+ node.appendChild(content);
+
+ this.selectNode(node);
+ },
+
+ cloneRange: function() {
+ assertRangeValid(this);
+ var range = new Range(getRangeDocument(this));
+ var i = rangeProperties.length, prop;
+ while (i--) {
+ prop = rangeProperties[i];
+ range[prop] = this[prop];
+ }
+ return range;
+ },
+
+ toString: function() {
+ assertRangeValid(this);
+ var sc = this.startContainer;
+ if (sc === this.endContainer && dom.isCharacterDataNode(sc)) {
+ return (sc.nodeType == 3 || sc.nodeType == 4) ? sc.data.slice(this.startOffset, this.endOffset) : "";
+ } else {
+ var textBits = [], iterator = new RangeIterator(this, true);
+
+ iterateSubtree(iterator, function(node) {
+ // Accept only text or CDATA nodes, not comments
+
+ if (node.nodeType == 3 || node.nodeType == 4) {
+ textBits.push(node.data);
+ }
+ });
+ iterator.detach();
+ return textBits.join("");
+ }
+ },
+
+ // The methods below are all non-standard. The following batch were introduced by Mozilla but have since
+ // been removed from Mozilla.
+
+ compareNode: function(node) {
+ assertRangeValid(this);
+
+ var parent = node.parentNode;
+ var nodeIndex = dom.getNodeIndex(node);
+
+ if (!parent) {
+ throw new DOMException("NOT_FOUND_ERR");
+ }
+
+ var startComparison = this.comparePoint(parent, nodeIndex),
+ endComparison = this.comparePoint(parent, nodeIndex + 1);
+
+ if (startComparison < 0) { // Node starts before
+ return (endComparison > 0) ? n_b_a : n_b;
+ } else {
+ return (endComparison > 0) ? n_a : n_i;
+ }
+ },
+
+ comparePoint: function(node, offset) {
+ assertRangeValid(this);
+ assertNode(node, "HIERARCHY_REQUEST_ERR");
+ assertSameDocumentOrFragment(node, this.startContainer);
+
+ if (dom.comparePoints(node, offset, this.startContainer, this.startOffset) < 0) {
+ return -1;
+ } else if (dom.comparePoints(node, offset, this.endContainer, this.endOffset) > 0) {
+ return 1;
+ }
+ return 0;
+ },
+
+ createContextualFragment: createContextualFragment,
+
+ toHtml: function() {
+ assertRangeValid(this);
+ var container = getRangeDocument(this).createElement("div");
+ container.appendChild(this.cloneContents());
+ return container.innerHTML;
+ },
+
+ // touchingIsIntersecting determines whether this method considers a node that borders a range intersects
+ // with it (as in WebKit) or not (as in Gecko pre-1.9, and the default)
+ intersectsNode: function(node, touchingIsIntersecting) {
+ assertRangeValid(this);
+ assertNode(node, "NOT_FOUND_ERR");
+ if (dom.getDocument(node) !== getRangeDocument(this)) {
+ return false;
+ }
+
+ var parent = node.parentNode, offset = dom.getNodeIndex(node);
+ assertNode(parent, "NOT_FOUND_ERR");
+
+ var startComparison = dom.comparePoints(parent, offset, this.endContainer, this.endOffset),
+ endComparison = dom.comparePoints(parent, offset + 1, this.startContainer, this.startOffset);
+
+ return touchingIsIntersecting ? startComparison <= 0 && endComparison >= 0 : startComparison < 0 && endComparison > 0;
+ },
+
+
+ isPointInRange: function(node, offset) {
+ assertRangeValid(this);
+ assertNode(node, "HIERARCHY_REQUEST_ERR");
+ assertSameDocumentOrFragment(node, this.startContainer);
+
+ return (dom.comparePoints(node, offset, this.startContainer, this.startOffset) >= 0) &&
+ (dom.comparePoints(node, offset, this.endContainer, this.endOffset) <= 0);
+ },
+
+ // The methods below are non-standard and invented by me.
+
+ // Sharing a boundary start-to-end or end-to-start does not count as intersection.
+ intersectsRange: function(range, touchingIsIntersecting) {
+ assertRangeValid(this);
+
+ if (getRangeDocument(range) != getRangeDocument(this)) {
+ throw new DOMException("WRONG_DOCUMENT_ERR");
+ }
+
+ var startComparison = dom.comparePoints(this.startContainer, this.startOffset, range.endContainer, range.endOffset),
+ endComparison = dom.comparePoints(this.endContainer, this.endOffset, range.startContainer, range.startOffset);
+
+ return touchingIsIntersecting ? startComparison <= 0 && endComparison >= 0 : startComparison < 0 && endComparison > 0;
+ },
+
+ intersection: function(range) {
+ if (this.intersectsRange(range)) {
+ var startComparison = dom.comparePoints(this.startContainer, this.startOffset, range.startContainer, range.startOffset),
+ endComparison = dom.comparePoints(this.endContainer, this.endOffset, range.endContainer, range.endOffset);
+
+ var intersectionRange = this.cloneRange();
+
+ if (startComparison == -1) {
+ intersectionRange.setStart(range.startContainer, range.startOffset);
+ }
+ if (endComparison == 1) {
+ intersectionRange.setEnd(range.endContainer, range.endOffset);
+ }
+ return intersectionRange;
+ }
+ return null;
+ },
+
+ union: function(range) {
+ if (this.intersectsRange(range, true)) {
+ var unionRange = this.cloneRange();
+ if (dom.comparePoints(range.startContainer, range.startOffset, this.startContainer, this.startOffset) == -1) {
+ unionRange.setStart(range.startContainer, range.startOffset);
+ }
+ if (dom.comparePoints(range.endContainer, range.endOffset, this.endContainer, this.endOffset) == 1) {
+ unionRange.setEnd(range.endContainer, range.endOffset);
+ }
+ return unionRange;
+ } else {
+ throw new RangeException("Ranges do not intersect");
+ }
+ },
+
+ containsNode: function(node, allowPartial) {
+ if (allowPartial) {
+ return this.intersectsNode(node, false);
+ } else {
+ return this.compareNode(node) == n_i;
+ }
+ },
+
+ containsNodeContents: function(node) {
+ return this.comparePoint(node, 0) >= 0 && this.comparePoint(node, dom.getNodeLength(node)) <= 0;
+ },
+
+ containsRange: function(range) {
+ return this.intersection(range).equals(range);
+ },
+
+ containsNodeText: function(node) {
+ var nodeRange = this.cloneRange();
+ nodeRange.selectNode(node);
+ var textNodes = nodeRange.getNodes([3]);
+ if (textNodes.length > 0) {
+ nodeRange.setStart(textNodes[0], 0);
+ var lastTextNode = textNodes.pop();
+ nodeRange.setEnd(lastTextNode, lastTextNode.length);
+ var contains = this.containsRange(nodeRange);
+ nodeRange.detach();
+ return contains;
+ } else {
+ return this.containsNodeContents(node);
+ }
+ },
+
+ createNodeIterator: function(nodeTypes, filter) {
+ assertRangeValid(this);
+ return new RangeNodeIterator(this, nodeTypes, filter);
+ },
+
+ getNodes: function(nodeTypes, filter) {
+ assertRangeValid(this);
+ return getNodesInRange(this, nodeTypes, filter);
+ },
+
+ getDocument: function() {
+ return getRangeDocument(this);
+ },
+
+ collapseBefore: function(node) {
+ assertNotDetached(this);
+
+ this.setEndBefore(node);
+ this.collapse(false);
+ },
+
+ collapseAfter: function(node) {
+ assertNotDetached(this);
+
+ this.setStartAfter(node);
+ this.collapse(true);
+ },
+
+ getName: function() {
+ return "DomRange";
+ },
+
+ equals: function(range) {
+ return Range.rangesEqual(this, range);
+ },
+
+ isValid: function() {
+ return isRangeValid(this);
+ },
+
+ inspect: function() {
+ return inspect(this);
+ }
+ };
+
+ function copyComparisonConstantsToObject(obj) {
+ obj.START_TO_START = s2s;
+ obj.START_TO_END = s2e;
+ obj.END_TO_END = e2e;
+ obj.END_TO_START = e2s;
+
+ obj.NODE_BEFORE = n_b;
+ obj.NODE_AFTER = n_a;
+ obj.NODE_BEFORE_AND_AFTER = n_b_a;
+ obj.NODE_INSIDE = n_i;
+ }
+
+ function copyComparisonConstants(constructor) {
+ copyComparisonConstantsToObject(constructor);
+ copyComparisonConstantsToObject(constructor.prototype);
+ }
+
+ function createRangeContentRemover(remover, boundaryUpdater) {
+ return function() {
+ assertRangeValid(this);
+
+ var sc = this.startContainer, so = this.startOffset, root = this.commonAncestorContainer;
+
+ var iterator = new RangeIterator(this, true);
+
+ // Work out where to position the range after content removal
+ var node, boundary;
+ if (sc !== root) {
+ node = dom.getClosestAncestorIn(sc, root, true);
+ boundary = getBoundaryAfterNode(node);
+ sc = boundary.node;
+ so = boundary.offset;
+ }
+
+ // Check none of the range is read-only
+ iterateSubtree(iterator, assertNodeNotReadOnly);
+
+ iterator.reset();
+
+ // Remove the content
+ var returnValue = remover(iterator);
+ iterator.detach();
+
+ // Move to the new position
+ boundaryUpdater(this, sc, so, sc, so);
+
+ return returnValue;
+ };
+ }
+
+ function createPrototypeRange(constructor, boundaryUpdater, detacher) {
+ function createBeforeAfterNodeSetter(isBefore, isStart) {
+ return function(node) {
+ assertNotDetached(this);
+ assertValidNodeType(node, beforeAfterNodeTypes);
+ assertValidNodeType(getRootContainer(node), rootContainerNodeTypes);
+
+ var boundary = (isBefore ? getBoundaryBeforeNode : getBoundaryAfterNode)(node);
+ (isStart ? setRangeStart : setRangeEnd)(this, boundary.node, boundary.offset);
+ };
+ }
+
+ function setRangeStart(range, node, offset) {
+ var ec = range.endContainer, eo = range.endOffset;
+ if (node !== range.startContainer || offset !== range.startOffset) {
+ // Check the root containers of the range and the new boundary, and also check whether the new boundary
+ // is after the current end. In either case, collapse the range to the new position
+ if (getRootContainer(node) != getRootContainer(ec) || dom.comparePoints(node, offset, ec, eo) == 1) {
+ ec = node;
+ eo = offset;
+ }
+ boundaryUpdater(range, node, offset, ec, eo);
+ }
+ }
+
+ function setRangeEnd(range, node, offset) {
+ var sc = range.startContainer, so = range.startOffset;
+ if (node !== range.endContainer || offset !== range.endOffset) {
+ // Check the root containers of the range and the new boundary, and also check whether the new boundary
+ // is after the current end. In either case, collapse the range to the new position
+ if (getRootContainer(node) != getRootContainer(sc) || dom.comparePoints(node, offset, sc, so) == -1) {
+ sc = node;
+ so = offset;
+ }
+ boundaryUpdater(range, sc, so, node, offset);
+ }
+ }
+
+ function setRangeStartAndEnd(range, node, offset) {
+ if (node !== range.startContainer || offset !== range.startOffset || node !== range.endContainer || offset !== range.endOffset) {
+ boundaryUpdater(range, node, offset, node, offset);
+ }
+ }
+
+ constructor.prototype = new RangePrototype();
+
+ api.util.extend(constructor.prototype, {
+ setStart: function(node, offset) {
+ assertNotDetached(this);
+ assertNoDocTypeNotationEntityAncestor(node, true);
+ assertValidOffset(node, offset);
+
+ setRangeStart(this, node, offset);
+ },
+
+ setEnd: function(node, offset) {
+ assertNotDetached(this);
+ assertNoDocTypeNotationEntityAncestor(node, true);
+ assertValidOffset(node, offset);
+
+ setRangeEnd(this, node, offset);
+ },
+
+ setStartBefore: createBeforeAfterNodeSetter(true, true),
+ setStartAfter: createBeforeAfterNodeSetter(false, true),
+ setEndBefore: createBeforeAfterNodeSetter(true, false),
+ setEndAfter: createBeforeAfterNodeSetter(false, false),
+
+ collapse: function(isStart) {
+ assertRangeValid(this);
+ if (isStart) {
+ boundaryUpdater(this, this.startContainer, this.startOffset, this.startContainer, this.startOffset);
+ } else {
+ boundaryUpdater(this, this.endContainer, this.endOffset, this.endContainer, this.endOffset);
+ }
+ },
+
+ selectNodeContents: function(node) {
+ // This doesn't seem well specified: the spec talks only about selecting the node's contents, which
+ // could be taken to mean only its children. However, browsers implement this the same as selectNode for
+ // text nodes, so I shall do likewise
+ assertNotDetached(this);
+ assertNoDocTypeNotationEntityAncestor(node, true);
+
+ boundaryUpdater(this, node, 0, node, dom.getNodeLength(node));
+ },
+
+ selectNode: function(node) {
+ assertNotDetached(this);
+ assertNoDocTypeNotationEntityAncestor(node, false);
+ assertValidNodeType(node, beforeAfterNodeTypes);
+
+ var start = getBoundaryBeforeNode(node), end = getBoundaryAfterNode(node);
+ boundaryUpdater(this, start.node, start.offset, end.node, end.offset);
+ },
+
+ extractContents: createRangeContentRemover(extractSubtree, boundaryUpdater),
+
+ deleteContents: createRangeContentRemover(deleteSubtree, boundaryUpdater),
+
+ canSurroundContents: function() {
+ assertRangeValid(this);
+ assertNodeNotReadOnly(this.startContainer);
+ assertNodeNotReadOnly(this.endContainer);
+
+ // Check if the contents can be surrounded. Specifically, this means whether the range partially selects
+ // no non-text nodes.
+ var iterator = new RangeIterator(this, true);
+ var boundariesInvalid = (iterator._first && (isNonTextPartiallySelected(iterator._first, this)) ||
+ (iterator._last && isNonTextPartiallySelected(iterator._last, this)));
+ iterator.detach();
+ return !boundariesInvalid;
+ },
+
+ detach: function() {
+ detacher(this);
+ },
+
+ splitBoundaries: function() {
+ assertRangeValid(this);
+
+
+ var sc = this.startContainer, so = this.startOffset, ec = this.endContainer, eo = this.endOffset;
+ var startEndSame = (sc === ec);
+
+ if (dom.isCharacterDataNode(ec) && eo > 0 && eo < ec.length) {
+ dom.splitDataNode(ec, eo);
+
+ }
+
+ if (dom.isCharacterDataNode(sc) && so > 0 && so < sc.length) {
+
+ sc = dom.splitDataNode(sc, so);
+ if (startEndSame) {
+ eo -= so;
+ ec = sc;
+ } else if (ec == sc.parentNode && eo >= dom.getNodeIndex(sc)) {
+ eo++;
+ }
+ so = 0;
+
+ }
+ boundaryUpdater(this, sc, so, ec, eo);
+ },
+
+ normalizeBoundaries: function() {
+ assertRangeValid(this);
+
+ var sc = this.startContainer, so = this.startOffset, ec = this.endContainer, eo = this.endOffset;
+
+ var mergeForward = function(node) {
+ var sibling = node.nextSibling;
+ if (sibling && sibling.nodeType == node.nodeType) {
+ ec = node;
+ eo = node.length;
+ node.appendData(sibling.data);
+ sibling.parentNode.removeChild(sibling);
+ }
+ };
+
+ var mergeBackward = function(node) {
+ var sibling = node.previousSibling;
+ if (sibling && sibling.nodeType == node.nodeType) {
+ sc = node;
+ var nodeLength = node.length;
+ so = sibling.length;
+ node.insertData(0, sibling.data);
+ sibling.parentNode.removeChild(sibling);
+ if (sc == ec) {
+ eo += so;
+ ec = sc;
+ } else if (ec == node.parentNode) {
+ var nodeIndex = dom.getNodeIndex(node);
+ if (eo == nodeIndex) {
+ ec = node;
+ eo = nodeLength;
+ } else if (eo > nodeIndex) {
+ eo--;
+ }
+ }
+ }
+ };
+
+ var normalizeStart = true;
+
+ if (dom.isCharacterDataNode(ec)) {
+ if (ec.length == eo) {
+ mergeForward(ec);
+ }
+ } else {
+ if (eo > 0) {
+ var endNode = ec.childNodes[eo - 1];
+ if (endNode && dom.isCharacterDataNode(endNode)) {
+ mergeForward(endNode);
+ }
+ }
+ normalizeStart = !this.collapsed;
+ }
+
+ if (normalizeStart) {
+ if (dom.isCharacterDataNode(sc)) {
+ if (so == 0) {
+ mergeBackward(sc);
+ }
+ } else {
+ if (so < sc.childNodes.length) {
+ var startNode = sc.childNodes[so];
+ if (startNode && dom.isCharacterDataNode(startNode)) {
+ mergeBackward(startNode);
+ }
+ }
+ }
+ } else {
+ sc = ec;
+ so = eo;
+ }
+
+ boundaryUpdater(this, sc, so, ec, eo);
+ },
+
+ collapseToPoint: function(node, offset) {
+ assertNotDetached(this);
+
+ assertNoDocTypeNotationEntityAncestor(node, true);
+ assertValidOffset(node, offset);
+
+ setRangeStartAndEnd(this, node, offset);
+ }
+ });
+
+ copyComparisonConstants(constructor);
+ }
+
+ /*----------------------------------------------------------------------------------------------------------------*/
+
+ // Updates commonAncestorContainer and collapsed after boundary change
+ function updateCollapsedAndCommonAncestor(range) {
+ range.collapsed = (range.startContainer === range.endContainer && range.startOffset === range.endOffset);
+ range.commonAncestorContainer = range.collapsed ?
+ range.startContainer : dom.getCommonAncestor(range.startContainer, range.endContainer);
+ }
+
+ function updateBoundaries(range, startContainer, startOffset, endContainer, endOffset) {
+ var startMoved = (range.startContainer !== startContainer || range.startOffset !== startOffset);
+ var endMoved = (range.endContainer !== endContainer || range.endOffset !== endOffset);
+
+ range.startContainer = startContainer;
+ range.startOffset = startOffset;
+ range.endContainer = endContainer;
+ range.endOffset = endOffset;
+
+ updateCollapsedAndCommonAncestor(range);
+ dispatchEvent(range, "boundarychange", {startMoved: startMoved, endMoved: endMoved});
+ }
+
+ function detach(range) {
+ assertNotDetached(range);
+ range.startContainer = range.startOffset = range.endContainer = range.endOffset = null;
+ range.collapsed = range.commonAncestorContainer = null;
+ dispatchEvent(range, "detach", null);
+ range._listeners = null;
+ }
+
+ /**
+ * @constructor
+ */
+ function Range(doc) {
+ this.startContainer = doc;
+ this.startOffset = 0;
+ this.endContainer = doc;
+ this.endOffset = 0;
+ this._listeners = {
+ boundarychange: [],
+ detach: []
+ };
+ updateCollapsedAndCommonAncestor(this);
+ }
+
+ createPrototypeRange(Range, updateBoundaries, detach);
+
+ api.rangePrototype = RangePrototype.prototype;
+
+ Range.rangeProperties = rangeProperties;
+ Range.RangeIterator = RangeIterator;
+ Range.copyComparisonConstants = copyComparisonConstants;
+ Range.createPrototypeRange = createPrototypeRange;
+ Range.inspect = inspect;
+ Range.getRangeDocument = getRangeDocument;
+ Range.rangesEqual = function(r1, r2) {
+ return r1.startContainer === r2.startContainer &&
+ r1.startOffset === r2.startOffset &&
+ r1.endContainer === r2.endContainer &&
+ r1.endOffset === r2.endOffset;
+ };
+
+ api.DomRange = Range;
+ api.RangeException = RangeException;
+});rangy.createModule("WrappedRange", function(api, module) {
+ api.requireModules( ["DomUtil", "DomRange"] );
+
+ /**
+ * @constructor
+ */
+ var WrappedRange;
+ var dom = api.dom;
+ var DomPosition = dom.DomPosition;
+ var DomRange = api.DomRange;
+
+
+
+ /*----------------------------------------------------------------------------------------------------------------*/
+
+ /*
+ This is a workaround for a bug where IE returns the wrong container element from the TextRange's parentElement()
+ method. For example, in the following (where pipes denote the selection boundaries):
+
+ <ul id="ul"><li id="a">| a </li><li id="b"> b |</li></ul>
+
+ var range = document.selection.createRange();
+ alert(range.parentElement().id); // Should alert "ul" but alerts "b"
+
+ This method returns the common ancestor node of the following:
+ - the parentElement() of the textRange
+ - the parentElement() of the textRange after calling collapse(true)
+ - the parentElement() of the textRange after calling collapse(false)
+ */
+ function getTextRangeContainerElement(textRange) {
+ var parentEl = textRange.parentElement();
+
+ var range = textRange.duplicate();
+ range.collapse(true);
+ var startEl = range.parentElement();
+ range = textRange.duplicate();
+ range.collapse(false);
+ var endEl = range.parentElement();
+ var startEndContainer = (startEl == endEl) ? startEl : dom.getCommonAncestor(startEl, endEl);
+
+ return startEndContainer == parentEl ? startEndContainer : dom.getCommonAncestor(parentEl, startEndContainer);
+ }
+
+ function textRangeIsCollapsed(textRange) {
+ return textRange.compareEndPoints("StartToEnd", textRange) == 0;
+ }
+
+ // Gets the boundary of a TextRange expressed as a node and an offset within that node. This function started out as
+ // an improved version of code found in Tim Cameron Ryan's IERange (http://code.google.com/p/ierange/) but has
+ // grown, fixing problems with line breaks in preformatted text, adding workaround for IE TextRange bugs, handling
+ // for inputs and images, plus optimizations.
+ function getTextRangeBoundaryPosition(textRange, wholeRangeContainerElement, isStart, isCollapsed) {
+ var workingRange = textRange.duplicate();
+
+ workingRange.collapse(isStart);
+ var containerElement = workingRange.parentElement();
+
+ // Sometimes collapsing a TextRange that's at the start of a text node can move it into the previous node, so
+ // check for that
+ // TODO: Find out when. Workaround for wholeRangeContainerElement may break this
+ if (!dom.isAncestorOf(wholeRangeContainerElement, containerElement, true)) {
+ containerElement = wholeRangeContainerElement;
+
+ }
+
+
+
+ // Deal with nodes that cannot "contain rich HTML markup". In practice, this means form inputs, images and
+ // similar. See http://msdn.microsoft.com/en-us/library/aa703950%28VS.85%29.aspx
+ if (!containerElement.canHaveHTML) {
+ return new DomPosition(containerElement.parentNode, dom.getNodeIndex(containerElement));
+ }
+
+ var workingNode = dom.getDocument(containerElement).createElement("span");
+ var comparison, workingComparisonType = isStart ? "StartToStart" : "StartToEnd";
+ var previousNode, nextNode, boundaryPosition, boundaryNode;
+
+ // Move the working range through the container's children, starting at the end and working backwards, until the
+ // working range reaches or goes past the boundary we're interested in
+ do {
+ containerElement.insertBefore(workingNode, workingNode.previousSibling);
+ workingRange.moveToElementText(workingNode);
+ } while ( (comparison = workingRange.compareEndPoints(workingComparisonType, textRange)) > 0 &&
+ workingNode.previousSibling);
+
+ // We've now reached or gone past the boundary of the text range we're interested in
+ // so have identified the node we want
+ boundaryNode = workingNode.nextSibling;
+
+ if (comparison == -1 && boundaryNode && dom.isCharacterDataNode(boundaryNode)) {
+ // This is a character data node (text, comment, cdata). The working range is collapsed at the start of the
+ // node containing the text range's boundary, so we move the end of the working range to the boundary point
+ // and measure the length of its text to get the boundary's offset within the node.
+ workingRange.setEndPoint(isStart ? "EndToStart" : "EndToEnd", textRange);
+
+
+ var offset;
+
+ if (/[\r\n]/.test(boundaryNode.data)) {
+ /*
+ For the particular case of a boundary within a text node containing line breaks (within a <pre> element,
+ for example), we need a slightly complicated approach to get the boundary's offset in IE. The facts:
+
+ - Each line break is represented as \r in the text node's data/nodeValue properties
+ - Each line break is represented as \r\n in the TextRange's 'text' property
+ - The 'text' property of the TextRange does not contain trailing line breaks
+
+ To get round the problem presented by the final fact above, we can use the fact that TextRange's
+ moveStart() and moveEnd() methods return the actual number of characters moved, which is not necessarily
+ the same as the number of characters it was instructed to move. The simplest approach is to use this to
+ store the characters moved when moving both the start and end of the range to the start of the document
+ body and subtracting the start offset from the end offset (the "move-negative-gazillion" method).
+ However, this is extremely slow when the document is large and the range is near the end of it. Clearly
+ doing the mirror image (i.e. moving the range boundaries to the end of the document) has the same
+ problem.
+
+ Another approach that works is to use moveStart() to move the start boundary of the range up to the end
+ boundary one character at a time and incrementing a counter with the value returned by the moveStart()
+ call. However, the check for whether the start boundary has reached the end boundary is expensive, so
+ this method is slow (although unlike "move-negative-gazillion" is largely unaffected by the location of
+ the range within the document).
+
+ The method below is a hybrid of the two methods above. It uses the fact that a string containing the
+ TextRange's 'text' property with each \r\n converted to a single \r character cannot be longer than the
+ text of the TextRange, so the start of the range is moved that length initially and then a character at
+ a time to make up for any trailing line breaks not contained in the 'text' property. This has good
+ performance in most situations compared to the previous two methods.
+ */
+ var tempRange = workingRange.duplicate();
+ var rangeLength = tempRange.text.replace(/\r\n/g, "\r").length;
+
+ offset = tempRange.moveStart("character", rangeLength);
+ while ( (comparison = tempRange.compareEndPoints("StartToEnd", tempRange)) == -1) {
+ offset++;
+ tempRange.moveStart("character", 1);
+ }
+ } else {
+ offset = workingRange.text.length;
+ }
+ boundaryPosition = new DomPosition(boundaryNode, offset);
+ } else {
+
+
+ // If the boundary immediately follows a character data node and this is the end boundary, we should favour
+ // a position within that, and likewise for a start boundary preceding a character data node
+ previousNode = (isCollapsed || !isStart) && workingNode.previousSibling;
+ nextNode = (isCollapsed || isStart) && workingNode.nextSibling;
+
+
+
+ if (nextNode && dom.isCharacterDataNode(nextNode)) {
+ boundaryPosition = new DomPosition(nextNode, 0);
+ } else if (previousNode && dom.isCharacterDataNode(previousNode)) {
+ boundaryPosition = new DomPosition(previousNode, previousNode.length);
+ } else {
+ boundaryPosition = new DomPosition(containerElement, dom.getNodeIndex(workingNode));
+ }
+ }
+
+ // Clean up
+ workingNode.parentNode.removeChild(workingNode);
+
+ return boundaryPosition;
+ }
+
+ // Returns a TextRange representing the boundary of a TextRange expressed as a node and an offset within that node.
+ // This function started out as an optimized version of code found in Tim Cameron Ryan's IERange
+ // (http://code.google.com/p/ierange/)
+ function createBoundaryTextRange(boundaryPosition, isStart) {
+ var boundaryNode, boundaryParent, boundaryOffset = boundaryPosition.offset;
+ var doc = dom.getDocument(boundaryPosition.node);
+ var workingNode, childNodes, workingRange = doc.body.createTextRange();
+ var nodeIsDataNode = dom.isCharacterDataNode(boundaryPosition.node);
+
+ if (nodeIsDataNode) {
+ boundaryNode = boundaryPosition.node;
+ boundaryParent = boundaryNode.parentNode;
+ } else {
+ childNodes = boundaryPosition.node.childNodes;
+ boundaryNode = (boundaryOffset < childNodes.length) ? childNodes[boundaryOffset] : null;
+ boundaryParent = boundaryPosition.node;
+ }
+
+ // Position the range immediately before the node containing the boundary
+ workingNode = doc.createElement("span");
+
+ // Making the working element non-empty element persuades IE to consider the TextRange boundary to be within the
+ // element rather than immediately before or after it, which is what we want
+ workingNode.innerHTML = "&#feff;";
+
+ // insertBefore is supposed to work like appendChild if the second parameter is null. However, a bug report
+ // for IERange suggests that it can crash the browser: http://code.google.com/p/ierange/issues/detail?id=12
+ if (boundaryNode) {
+ boundaryParent.insertBefore(workingNode, boundaryNode);
+ } else {
+ boundaryParent.appendChild(workingNode);
+ }
+
+ workingRange.moveToElementText(workingNode);
+ workingRange.collapse(!isStart);
+
+ // Clean up
+ boundaryParent.removeChild(workingNode);
+
+ // Move the working range to the text offset, if required
+ if (nodeIsDataNode) {
+ workingRange[isStart ? "moveStart" : "moveEnd"]("character", boundaryOffset);
+ }
+
+ return workingRange;
+ }
+
+ /*----------------------------------------------------------------------------------------------------------------*/
+
+ if (api.features.implementsDomRange && (!api.features.implementsTextRange || !api.config.preferTextRange)) {
+ // This is a wrapper around the browser's native DOM Range. It has two aims:
+ // - Provide workarounds for specific browser bugs
+ // - provide convenient extensions, which are inherited from Rangy's DomRange
+
+ (function() {
+ var rangeProto;
+ var rangeProperties = DomRange.rangeProperties;
+ var canSetRangeStartAfterEnd;
+
+ function updateRangeProperties(range) {
+ var i = rangeProperties.length, prop;
+ while (i--) {
+ prop = rangeProperties[i];
+ range[prop] = range.nativeRange[prop];
+ }
+ }
+
+ function updateNativeRange(range, startContainer, startOffset, endContainer,endOffset) {
+ var startMoved = (range.startContainer !== startContainer || range.startOffset != startOffset);
+ var endMoved = (range.endContainer !== endContainer || range.endOffset != endOffset);
+
+ // Always set both boundaries for the benefit of IE9 (see issue 35)
+ if (startMoved || endMoved) {
+ range.setEnd(endContainer, endOffset);
+ range.setStart(startContainer, startOffset);
+ }
+ }
+
+ function detach(range) {
+ range.nativeRange.detach();
+ range.detached = true;
+ var i = rangeProperties.length, prop;
+ while (i--) {
+ prop = rangeProperties[i];
+ range[prop] = null;
+ }
+ }
+
+ var createBeforeAfterNodeSetter;
+
+ WrappedRange = function(range) {
+ if (!range) {
+ throw new Error("Range must be specified");
+ }
+ this.nativeRange = range;
+ updateRangeProperties(this);
+ };
+
+ DomRange.createPrototypeRange(WrappedRange, updateNativeRange, detach);
+
+ rangeProto = WrappedRange.prototype;
+
+ rangeProto.selectNode = function(node) {
+ this.nativeRange.selectNode(node);
+ updateRangeProperties(this);
+ };
+
+ rangeProto.deleteContents = function() {
+ this.nativeRange.deleteContents();
+ updateRangeProperties(this);
+ };
+
+ rangeProto.extractContents = function() {
+ var frag = this.nativeRange.extractContents();
+ updateRangeProperties(this);
+ return frag;
+ };
+
+ rangeProto.cloneContents = function() {
+ return this.nativeRange.cloneContents();
+ };
+
+ // TODO: Until I can find a way to programmatically trigger the Firefox bug (apparently long-standing, still
+ // present in 3.6.8) that throws "Index or size is negative or greater than the allowed amount" for
+ // insertNode in some circumstances, all browsers will have to use the Rangy's own implementation of
+ // insertNode, which works but is almost certainly slower than the native implementation.
+/*
+ rangeProto.insertNode = function(node) {
+ this.nativeRange.insertNode(node);
+ updateRangeProperties(this);
+ };
+*/
+
+ rangeProto.surroundContents = function(node) {
+ this.nativeRange.surroundContents(node);
+ updateRangeProperties(this);
+ };
+
+ rangeProto.collapse = function(isStart) {
+ this.nativeRange.collapse(isStart);
+ updateRangeProperties(this);
+ };
+
+ rangeProto.cloneRange = function() {
+ return new WrappedRange(this.nativeRange.cloneRange());
+ };
+
+ rangeProto.refresh = function() {
+ updateRangeProperties(this);
+ };
+
+ rangeProto.toString = function() {
+ return this.nativeRange.toString();
+ };
+
+ // Create test range and node for feature detection
+
+ var testTextNode = document.createTextNode("test");
+ dom.getBody(document).appendChild(testTextNode);
+ var range = document.createRange();
+
+ /*--------------------------------------------------------------------------------------------------------*/
+
+ // Test for Firefox 2 bug that prevents moving the start of a Range to a point after its current end and
+ // correct for it
+
+ range.setStart(testTextNode, 0);
+ range.setEnd(testTextNode, 0);
+
+ try {
+ range.setStart(testTextNode, 1);
+ canSetRangeStartAfterEnd = true;
+
+ rangeProto.setStart = function(node, offset) {
+ this.nativeRange.setStart(node, offset);
+ updateRangeProperties(this);
+ };
+
+ rangeProto.setEnd = function(node, offset) {
+ this.nativeRange.setEnd(node, offset);
+ updateRangeProperties(this);
+ };
+
+ createBeforeAfterNodeSetter = function(name) {
+ return function(node) {
+ this.nativeRange[name](node);
+ updateRangeProperties(this);
+ };
+ };
+
+ } catch(ex) {
+
+
+ canSetRangeStartAfterEnd = false;
+
+ rangeProto.setStart = function(node, offset) {
+ try {
+ this.nativeRange.setStart(node, offset);
+ } catch (ex) {
+ this.nativeRange.setEnd(node, offset);
+ this.nativeRange.setStart(node, offset);
+ }
+ updateRangeProperties(this);
+ };
+
+ rangeProto.setEnd = function(node, offset) {
+ try {
+ this.nativeRange.setEnd(node, offset);
+ } catch (ex) {
+ this.nativeRange.setStart(node, offset);
+ this.nativeRange.setEnd(node, offset);
+ }
+ updateRangeProperties(this);
+ };
+
+ createBeforeAfterNodeSetter = function(name, oppositeName) {
+ return function(node) {
+ try {
+ this.nativeRange[name](node);
+ } catch (ex) {
+ this.nativeRange[oppositeName](node);
+ this.nativeRange[name](node);
+ }
+ updateRangeProperties(this);
+ };
+ };
+ }
+
+ rangeProto.setStartBefore = createBeforeAfterNodeSetter("setStartBefore", "setEndBefore");
+ rangeProto.setStartAfter = createBeforeAfterNodeSetter("setStartAfter", "setEndAfter");
+ rangeProto.setEndBefore = createBeforeAfterNodeSetter("setEndBefore", "setStartBefore");
+ rangeProto.setEndAfter = createBeforeAfterNodeSetter("setEndAfter", "setStartAfter");
+
+ /*--------------------------------------------------------------------------------------------------------*/
+
+ // Test for and correct Firefox 2 behaviour with selectNodeContents on text nodes: it collapses the range to
+ // the 0th character of the text node
+ range.selectNodeContents(testTextNode);
+ if (range.startContainer == testTextNode && range.endContainer == testTextNode &&
+ range.startOffset == 0 && range.endOffset == testTextNode.length) {
+ rangeProto.selectNodeContents = function(node) {
+ this.nativeRange.selectNodeContents(node);
+ updateRangeProperties(this);
+ };
+ } else {
+ rangeProto.selectNodeContents = function(node) {
+ this.setStart(node, 0);
+ this.setEnd(node, DomRange.getEndOffset(node));
+ };
+ }
+
+ /*--------------------------------------------------------------------------------------------------------*/
+
+ // Test for WebKit bug that has the beahviour of compareBoundaryPoints round the wrong way for constants
+ // START_TO_END and END_TO_START: https://bugs.webkit.org/show_bug.cgi?id=20738
+
+ range.selectNodeContents(testTextNode);
+ range.setEnd(testTextNode, 3);
+
+ var range2 = document.createRange();
+ range2.selectNodeContents(testTextNode);
+ range2.setEnd(testTextNode, 4);
+ range2.setStart(testTextNode, 2);
+
+ if (range.compareBoundaryPoints(range.START_TO_END, range2) == -1 &
+ range.compareBoundaryPoints(range.END_TO_START, range2) == 1) {
+ // This is the wrong way round, so correct for it
+
+
+ rangeProto.compareBoundaryPoints = function(type, range) {
+ range = range.nativeRange || range;
+ if (type == range.START_TO_END) {
+ type = range.END_TO_START;
+ } else if (type == range.END_TO_START) {
+ type = range.START_TO_END;
+ }
+ return this.nativeRange.compareBoundaryPoints(type, range);
+ };
+ } else {
+ rangeProto.compareBoundaryPoints = function(type, range) {
+ return this.nativeRange.compareBoundaryPoints(type, range.nativeRange || range);
+ };
+ }
+
+ /*--------------------------------------------------------------------------------------------------------*/
+
+ // Test for existence of createContextualFragment and delegate to it if it exists
+ if (api.util.isHostMethod(range, "createContextualFragment")) {
+ rangeProto.createContextualFragment = function(fragmentStr) {
+ return this.nativeRange.createContextualFragment(fragmentStr);
+ };
+ }
+
+ /*--------------------------------------------------------------------------------------------------------*/
+
+ // Clean up
+ dom.getBody(document).removeChild(testTextNode);
+ range.detach();
+ range2.detach();
+ })();
+
+ api.createNativeRange = function(doc) {
+ doc = doc || document;
+ return doc.createRange();
+ };
+ } else if (api.features.implementsTextRange) {
+ // This is a wrapper around a TextRange, providing full DOM Range functionality using rangy's DomRange as a
+ // prototype
+
+ WrappedRange = function(textRange) {
+ this.textRange = textRange;
+ this.refresh();
+ };
+
+ WrappedRange.prototype = new DomRange(document);
+
+ WrappedRange.prototype.refresh = function() {
+ var start, end;
+
+ // TextRange's parentElement() method cannot be trusted. getTextRangeContainerElement() works around that.
+ var rangeContainerElement = getTextRangeContainerElement(this.textRange);
+
+ if (textRangeIsCollapsed(this.textRange)) {
+ end = start = getTextRangeBoundaryPosition(this.textRange, rangeContainerElement, true, true);
+ } else {
+
+ start = getTextRangeBoundaryPosition(this.textRange, rangeContainerElement, true, false);
+ end = getTextRangeBoundaryPosition(this.textRange, rangeContainerElement, false, false);
+ }
+
+ this.setStart(start.node, start.offset);
+ this.setEnd(end.node, end.offset);
+ };
+
+ DomRange.copyComparisonConstants(WrappedRange);
+
+ // Add WrappedRange as the Range property of the global object to allow expression like Range.END_TO_END to work
+ var globalObj = (function() { return this; })();
+ if (typeof globalObj.Range == "undefined") {
+ globalObj.Range = WrappedRange;
+ }
+
+ api.createNativeRange = function(doc) {
+ doc = doc || document;
+ return doc.body.createTextRange();
+ };
+ }
+
+ if (api.features.implementsTextRange) {
+ WrappedRange.rangeToTextRange = function(range) {
+ if (range.collapsed) {
+ var tr = createBoundaryTextRange(new DomPosition(range.startContainer, range.startOffset), true);
+
+
+
+ return tr;
+
+ //return createBoundaryTextRange(new DomPosition(range.startContainer, range.startOffset), true);
+ } else {
+ var startRange = createBoundaryTextRange(new DomPosition(range.startContainer, range.startOffset), true);
+ var endRange = createBoundaryTextRange(new DomPosition(range.endContainer, range.endOffset), false);
+ var textRange = dom.getDocument(range.startContainer).body.createTextRange();
+ textRange.setEndPoint("StartToStart", startRange);
+ textRange.setEndPoint("EndToEnd", endRange);
+ return textRange;
+ }
+ };
+ }
+
+ WrappedRange.prototype.getName = function() {
+ return "WrappedRange";
+ };
+
+ api.WrappedRange = WrappedRange;
+
+ api.createRange = function(doc) {
+ doc = doc || document;
+ return new WrappedRange(api.createNativeRange(doc));
+ };
+
+ api.createRangyRange = function(doc) {
+ doc = doc || document;
+ return new DomRange(doc);
+ };
+
+ api.createIframeRange = function(iframeEl) {
+ return api.createRange(dom.getIframeDocument(iframeEl));
+ };
+
+ api.createIframeRangyRange = function(iframeEl) {
+ return api.createRangyRange(dom.getIframeDocument(iframeEl));
+ };
+
+ api.addCreateMissingNativeApiListener(function(win) {
+ var doc = win.document;
+ if (typeof doc.createRange == "undefined") {
+ doc.createRange = function() {
+ return api.createRange(this);
+ };
+ }
+ doc = win = null;
+ });
+});rangy.createModule("WrappedSelection", function(api, module) {
+ // This will create a selection object wrapper that follows the Selection object found in the WHATWG draft DOM Range
+ // spec (http://html5.org/specs/dom-range.html)
+
+ api.requireModules( ["DomUtil", "DomRange", "WrappedRange"] );
+
+ api.config.checkSelectionRanges = true;
+
+ var BOOLEAN = "boolean",
+ windowPropertyName = "_rangySelection",
+ dom = api.dom,
+ util = api.util,
+ DomRange = api.DomRange,
+ WrappedRange = api.WrappedRange,
+ DOMException = api.DOMException,
+ DomPosition = dom.DomPosition,
+ getSelection,
+ selectionIsCollapsed,
+ CONTROL = "Control";
+
+
+
+ function getWinSelection(winParam) {
+ return (winParam || window).getSelection();
+ }
+
+ function getDocSelection(winParam) {
+ return (winParam || window).document.selection;
+ }
+
+ // Test for the Range/TextRange and Selection features required
+ // Test for ability to retrieve selection
+ var implementsWinGetSelection = api.util.isHostMethod(window, "getSelection"),
+ implementsDocSelection = api.util.isHostObject(document, "selection");
+
+ var useDocumentSelection = implementsDocSelection && (!implementsWinGetSelection || api.config.preferTextRange);
+
+ if (useDocumentSelection) {
+ getSelection = getDocSelection;
+ api.isSelectionValid = function(winParam) {
+ var doc = (winParam || window).document, nativeSel = doc.selection;
+
+ // Check whether the selection TextRange is actually contained within the correct document
+ return (nativeSel.type != "None" || dom.getDocument(nativeSel.createRange().parentElement()) == doc);
+ };
+ } else if (implementsWinGetSelection) {
+ getSelection = getWinSelection;
+ api.isSelectionValid = function() {
+ return true;
+ };
+ } else {
+ module.fail("Neither document.selection or window.getSelection() detected.");
+ }
+
+ api.getNativeSelection = getSelection;
+
+ var testSelection = getSelection();
+ var testRange = api.createNativeRange(document);
+ var body = dom.getBody(document);
+
+ // Obtaining a range from a selection
+ var selectionHasAnchorAndFocus = util.areHostObjects(testSelection, ["anchorNode", "focusNode"] &&
+ util.areHostProperties(testSelection, ["anchorOffset", "focusOffset"]));
+ api.features.selectionHasAnchorAndFocus = selectionHasAnchorAndFocus;
+
+ // Test for existence of native selection extend() method
+ var selectionHasExtend = util.isHostMethod(testSelection, "extend");
+ api.features.selectionHasExtend = selectionHasExtend;
+
+ // Test if rangeCount exists
+ var selectionHasRangeCount = (typeof testSelection.rangeCount == "number");
+ api.features.selectionHasRangeCount = selectionHasRangeCount;
+
+ var selectionSupportsMultipleRanges = false;
+ var collapsedNonEditableSelectionsSupported = true;
+
+ if (util.areHostMethods(testSelection, ["addRange", "getRangeAt", "removeAllRanges"]) &&
+ typeof testSelection.rangeCount == "number" && api.features.implementsDomRange) {
+
+ (function() {
+ var iframe = document.createElement("iframe");
+ iframe.frameBorder = 0;
+ iframe.style.position = "absolute";
+ iframe.style.left = "-10000px";
+ body.appendChild(iframe);
+
+ var iframeDoc = dom.getIframeDocument(iframe);
+ iframeDoc.open();
+ iframeDoc.write("<html><head></head><body>12</body></html>");
+ iframeDoc.close();
+
+ var sel = dom.getIframeWindow(iframe).getSelection();
+ var docEl = iframeDoc.documentElement;
+ var iframeBody = docEl.lastChild, textNode = iframeBody.firstChild;
+
+ // Test whether the native selection will allow a collapsed selection within a non-editable element
+ var r1 = iframeDoc.createRange();
+ r1.setStart(textNode, 1);
+ r1.collapse(true);
+ sel.addRange(r1);
+ collapsedNonEditableSelectionsSupported = (sel.rangeCount == 1);
+ sel.removeAllRanges();
+
+ // Test whether the native selection is capable of supporting multiple ranges
+ var r2 = r1.cloneRange();
+ r1.setStart(textNode, 0);
+ r2.setEnd(textNode, 2);
+ sel.addRange(r1);
+ sel.addRange(r2);
+
+ selectionSupportsMultipleRanges = (sel.rangeCount == 2);
+
+ // Clean up
+ r1.detach();
+ r2.detach();
+
+ body.removeChild(iframe);
+ })();
+ }
+
+ api.features.selectionSupportsMultipleRanges = selectionSupportsMultipleRanges;
+ api.features.collapsedNonEditableSelectionsSupported = collapsedNonEditableSelectionsSupported;
+
+ // ControlRanges
+ var implementsControlRange = false, testControlRange;
+
+ if (body && util.isHostMethod(body, "createControlRange")) {
+ testControlRange = body.createControlRange();
+ if (util.areHostProperties(testControlRange, ["item", "add"])) {
+ implementsControlRange = true;
+ }
+ }
+ api.features.implementsControlRange = implementsControlRange;
+
+ // Selection collapsedness
+ if (selectionHasAnchorAndFocus) {
+ selectionIsCollapsed = function(sel) {
+ return sel.anchorNode === sel.focusNode && sel.anchorOffset === sel.focusOffset;
+ };
+ } else {
+ selectionIsCollapsed = function(sel) {
+ return sel.rangeCount ? sel.getRangeAt(sel.rangeCount - 1).collapsed : false;
+ };
+ }
+
+ function updateAnchorAndFocusFromRange(sel, range, backwards) {
+ var anchorPrefix = backwards ? "end" : "start", focusPrefix = backwards ? "start" : "end";
+ sel.anchorNode = range[anchorPrefix + "Container"];
+ sel.anchorOffset = range[anchorPrefix + "Offset"];
+ sel.focusNode = range[focusPrefix + "Container"];
+ sel.focusOffset = range[focusPrefix + "Offset"];
+ }
+
+ function updateAnchorAndFocusFromNativeSelection(sel) {
+ var nativeSel = sel.nativeSelection;
+ sel.anchorNode = nativeSel.anchorNode;
+ sel.anchorOffset = nativeSel.anchorOffset;
+ sel.focusNode = nativeSel.focusNode;
+ sel.focusOffset = nativeSel.focusOffset;
+ }
+
+ function updateEmptySelection(sel) {
+ sel.anchorNode = sel.focusNode = null;
+ sel.anchorOffset = sel.focusOffset = 0;
+ sel.rangeCount = 0;
+ sel.isCollapsed = true;
+ sel._ranges.length = 0;
+ }
+
+ function getNativeRange(range) {
+ var nativeRange;
+ if (range instanceof DomRange) {
+ nativeRange = range._selectionNativeRange;
+ if (!nativeRange) {
+ nativeRange = api.createNativeRange(dom.getDocument(range.startContainer));
+ nativeRange.setEnd(range.endContainer, range.endOffset);
+ nativeRange.setStart(range.startContainer, range.startOffset);
+ range._selectionNativeRange = nativeRange;
+ range.attachListener("detach", function() {
+
+ this._selectionNativeRange = null;
+ });
+ }
+ } else if (range instanceof WrappedRange) {
+ nativeRange = range.nativeRange;
+ } else if (api.features.implementsDomRange && (range instanceof dom.getWindow(range.startContainer).Range)) {
+ nativeRange = range;
+ }
+ return nativeRange;
+ }
+
+ function rangeContainsSingleElement(rangeNodes) {
+ if (!rangeNodes.length || rangeNodes[0].nodeType != 1) {
+ return false;
+ }
+ for (var i = 1, len = rangeNodes.length; i < len; ++i) {
+ if (!dom.isAncestorOf(rangeNodes[0], rangeNodes[i])) {
+ return false;
+ }
+ }
+ return true;
+ }
+
+ function getSingleElementFromRange(range) {
+ var nodes = range.getNodes();
+ if (!rangeContainsSingleElement(nodes)) {
+ throw new Error("getSingleElementFromRange: range " + range.inspect() + " did not consist of a single element");
+ }
+ return nodes[0];
+ }
+
+ function isTextRange(range) {
+ return !!range && typeof range.text != "undefined";
+ }
+
+ function updateFromTextRange(sel, range) {
+ // Create a Range from the selected TextRange
+ var wrappedRange = new WrappedRange(range);
+ sel._ranges = [wrappedRange];
+
+ updateAnchorAndFocusFromRange(sel, wrappedRange, false);
+ sel.rangeCount = 1;
+ sel.isCollapsed = wrappedRange.collapsed;
+ }
+
+ function updateControlSelection(sel) {
+ // Update the wrapped selection based on what's now in the native selection
+ sel._ranges.length = 0;
+ if (sel.docSelection.type == "None") {
+ updateEmptySelection(sel);
+ } else {
+ var controlRange = sel.docSelection.createRange();
+ if (isTextRange(controlRange)) {
+ // This case (where the selection type is "Control" and calling createRange() on the selection returns
+ // a TextRange) can happen in IE 9. It happens, for example, when all elements in the selected
+ // ControlRange have been removed from the ControlRange and removed from the document.
+ updateFromTextRange(sel, controlRange);
+ } else {
+ sel.rangeCount = controlRange.length;
+ var range, doc = dom.getDocument(controlRange.item(0));
+ for (var i = 0; i < sel.rangeCount; ++i) {
+ range = api.createRange(doc);
+ range.selectNode(controlRange.item(i));
+ sel._ranges.push(range);
+ }
+ sel.isCollapsed = sel.rangeCount == 1 && sel._ranges[0].collapsed;
+ updateAnchorAndFocusFromRange(sel, sel._ranges[sel.rangeCount - 1], false);
+ }
+ }
+ }
+
+ function addRangeToControlSelection(sel, range) {
+ var controlRange = sel.docSelection.createRange();
+ var rangeElement = getSingleElementFromRange(range);
+
+ // Create a new ControlRange containing all the elements in the selected ControlRange plus the element
+ // contained by the supplied range
+ var doc = dom.getDocument(controlRange.item(0));
+ var newControlRange = dom.getBody(doc).createControlRange();
+ for (var i = 0, len = controlRange.length; i < len; ++i) {
+ newControlRange.add(controlRange.item(i));
+ }
+ try {
+ newControlRange.add(rangeElement);
+ } catch (ex) {
+ throw new Error("addRange(): Element within the specified Range could not be added to control selection (does it have layout?)");
+ }
+ newControlRange.select();
+
+ // Update the wrapped selection based on what's now in the native selection
+ updateControlSelection(sel);
+ }
+
+ var getSelectionRangeAt;
+
+ if (util.isHostMethod(testSelection, "getRangeAt")) {
+ getSelectionRangeAt = function(sel, index) {
+ try {
+ return sel.getRangeAt(index);
+ } catch(ex) {
+ return null;
+ }
+ };
+ } else if (selectionHasAnchorAndFocus) {
+ getSelectionRangeAt = function(sel) {
+ var doc = dom.getDocument(sel.anchorNode);
+ var range = api.createRange(doc);
+ range.setStart(sel.anchorNode, sel.anchorOffset);
+ range.setEnd(sel.focusNode, sel.focusOffset);
+
+ // Handle the case when the selection was selected backwards (from the end to the start in the
+ // document)
+ if (range.collapsed !== this.isCollapsed) {
+ range.setStart(sel.focusNode, sel.focusOffset);
+ range.setEnd(sel.anchorNode, sel.anchorOffset);
+ }
+
+ return range;
+ };
+ }
+
+ /**
+ * @constructor
+ */
+ function WrappedSelection(selection, docSelection, win) {
+ this.nativeSelection = selection;
+ this.docSelection = docSelection;
+ this._ranges = [];
+ this.win = win;
+ this.refresh();
+ }
+
+ api.getSelection = function(win) {
+ win = win || window;
+ var sel = win[windowPropertyName];
+ var nativeSel = getSelection(win), docSel = implementsDocSelection ? getDocSelection(win) : null;
+ if (sel) {
+ sel.nativeSelection = nativeSel;
+ sel.docSelection = docSel;
+ sel.refresh(win);
+ } else {
+ sel = new WrappedSelection(nativeSel, docSel, win);
+ win[windowPropertyName] = sel;
+ }
+ return sel;
+ };
+
+ api.getIframeSelection = function(iframeEl) {
+ return api.getSelection(dom.getIframeWindow(iframeEl));
+ };
+
+ var selProto = WrappedSelection.prototype;
+
+ function createControlSelection(sel, ranges) {
+ // Ensure that the selection becomes of type "Control"
+ var doc = dom.getDocument(ranges[0].startContainer);
+ var controlRange = dom.getBody(doc).createControlRange();
+ for (var i = 0, el; i < rangeCount; ++i) {
+ el = getSingleElementFromRange(ranges[i]);
+ try {
+ controlRange.add(el);
+ } catch (ex) {
+ throw new Error("setRanges(): Element within the one of the specified Ranges could not be added to control selection (does it have layout?)");
+ }
+ }
+ controlRange.select();
+
+ // Update the wrapped selection based on what's now in the native selection
+ updateControlSelection(sel);
+ }
+
+ // Selecting a range
+ if (!useDocumentSelection && selectionHasAnchorAndFocus && util.areHostMethods(testSelection, ["removeAllRanges", "addRange"])) {
+ selProto.removeAllRanges = function() {
+ this.nativeSelection.removeAllRanges();
+ updateEmptySelection(this);
+ };
+
+ var addRangeBackwards = function(sel, range) {
+ var doc = DomRange.getRangeDocument(range);
+ var endRange = api.createRange(doc);
+ endRange.collapseToPoint(range.endContainer, range.endOffset);
+ sel.nativeSelection.addRange(getNativeRange(endRange));
+ sel.nativeSelection.extend(range.startContainer, range.startOffset);
+ sel.refresh();
+ };
+
+ if (selectionHasRangeCount) {
+ selProto.addRange = function(range, backwards) {
+ if (implementsControlRange && implementsDocSelection && this.docSelection.type == CONTROL) {
+ addRangeToControlSelection(this, range);
+ } else {
+ if (backwards && selectionHasExtend) {
+ addRangeBackwards(this, range);
+ } else {
+ var previousRangeCount;
+ if (selectionSupportsMultipleRanges) {
+ previousRangeCount = this.rangeCount;
+ } else {
+ this.removeAllRanges();
+ previousRangeCount = 0;
+ }
+ this.nativeSelection.addRange(getNativeRange(range));
+
+ // Check whether adding the range was successful
+ this.rangeCount = this.nativeSelection.rangeCount;
+
+ if (this.rangeCount == previousRangeCount + 1) {
+ // The range was added successfully
+
+ // Check whether the range that we added to the selection is reflected in the last range extracted from
+ // the selection
+ if (api.config.checkSelectionRanges) {
+ var nativeRange = getSelectionRangeAt(this.nativeSelection, this.rangeCount - 1);
+ if (nativeRange && !DomRange.rangesEqual(nativeRange, range)) {
+ // Happens in WebKit with, for example, a selection placed at the start of a text node
+ range = new WrappedRange(nativeRange);
+ }
+ }
+ this._ranges[this.rangeCount - 1] = range;
+ updateAnchorAndFocusFromRange(this, range, selectionIsBackwards(this.nativeSelection));
+ this.isCollapsed = selectionIsCollapsed(this);
+ } else {
+ // The range was not added successfully. The simplest thing is to refresh
+ this.refresh();
+ }
+ }
+ }
+ };
+ } else {
+ selProto.addRange = function(range, backwards) {
+ if (backwards && selectionHasExtend) {
+ addRangeBackwards(this, range);
+ } else {
+ this.nativeSelection.addRange(getNativeRange(range));
+ this.refresh();
+ }
+ };
+ }
+
+ selProto.setRanges = function(ranges) {
+ if (implementsControlRange && ranges.length > 1) {
+ createControlSelection(this, ranges);
+ } else {
+ this.removeAllRanges();
+ for (var i = 0, len = ranges.length; i < len; ++i) {
+ this.addRange(ranges[i]);
+ }
+ }
+ };
+ } else if (util.isHostMethod(testSelection, "empty") && util.isHostMethod(testRange, "select") &&
+ implementsControlRange && useDocumentSelection) {
+
+ selProto.removeAllRanges = function() {
+ // Added try/catch as fix for issue #21
+ try {
+ this.docSelection.empty();
+
+ // Check for empty() not working (issue #24)
+ if (this.docSelection.type != "None") {
+ // Work around failure to empty a control selection by instead selecting a TextRange and then
+ // calling empty()
+ var doc;
+ if (this.anchorNode) {
+ doc = dom.getDocument(this.anchorNode);
+ } else if (this.docSelection.type == CONTROL) {
+ var controlRange = this.docSelection.createRange();
+ if (controlRange.length) {
+ doc = dom.getDocument(controlRange.item(0)).body.createTextRange();
+ }
+ }
+ if (doc) {
+ var textRange = doc.body.createTextRange();
+ textRange.select();
+ this.docSelection.empty();
+ }
+ }
+ } catch(ex) {}
+ updateEmptySelection(this);
+ };
+
+ selProto.addRange = function(range) {
+ if (this.docSelection.type == CONTROL) {
+ addRangeToControlSelection(this, range);
+ } else {
+ WrappedRange.rangeToTextRange(range).select();
+ this._ranges[0] = range;
+ this.rangeCount = 1;
+ this.isCollapsed = this._ranges[0].collapsed;
+ updateAnchorAndFocusFromRange(this, range, false);
+ }
+ };
+
+ selProto.setRanges = function(ranges) {
+ this.removeAllRanges();
+ var rangeCount = ranges.length;
+ if (rangeCount > 1) {
+ createControlSelection(this, ranges);
+ } else if (rangeCount) {
+ this.addRange(ranges[0]);
+ }
+ };
+ } else {
+ module.fail("No means of selecting a Range or TextRange was found");
+ return false;
+ }
+
+ selProto.getRangeAt = function(index) {
+ if (index < 0 || index >= this.rangeCount) {
+ throw new DOMException("INDEX_SIZE_ERR");
+ } else {
+ return this._ranges[index];
+ }
+ };
+
+ var refreshSelection;
+
+ if (useDocumentSelection) {
+ refreshSelection = function(sel) {
+ var range;
+ if (api.isSelectionValid(sel.win)) {
+ range = sel.docSelection.createRange();
+ } else {
+ range = dom.getBody(sel.win.document).createTextRange();
+ range.collapse(true);
+ }
+
+
+ if (sel.docSelection.type == CONTROL) {
+ updateControlSelection(sel);
+ } else if (isTextRange(range)) {
+ updateFromTextRange(sel, range);
+ } else {
+ updateEmptySelection(sel);
+ }
+ };
+ } else if (util.isHostMethod(testSelection, "getRangeAt") && typeof testSelection.rangeCount == "number") {
+ refreshSelection = function(sel) {
+ if (implementsControlRange && implementsDocSelection && sel.docSelection.type == CONTROL) {
+ updateControlSelection(sel);
+ } else {
+ sel._ranges.length = sel.rangeCount = sel.nativeSelection.rangeCount;
+ if (sel.rangeCount) {
+ for (var i = 0, len = sel.rangeCount; i < len; ++i) {
+ sel._ranges[i] = new api.WrappedRange(sel.nativeSelection.getRangeAt(i));
+ }
+ updateAnchorAndFocusFromRange(sel, sel._ranges[sel.rangeCount - 1], selectionIsBackwards(sel.nativeSelection));
+ sel.isCollapsed = selectionIsCollapsed(sel);
+ } else {
+ updateEmptySelection(sel);
+ }
+ }
+ };
+ } else if (selectionHasAnchorAndFocus && typeof testSelection.isCollapsed == BOOLEAN && typeof testRange.collapsed == BOOLEAN && api.features.implementsDomRange) {
+ refreshSelection = function(sel) {
+ var range, nativeSel = sel.nativeSelection;
+ if (nativeSel.anchorNode) {
+ range = getSelectionRangeAt(nativeSel, 0);
+ sel._ranges = [range];
+ sel.rangeCount = 1;
+ updateAnchorAndFocusFromNativeSelection(sel);
+ sel.isCollapsed = selectionIsCollapsed(sel);
+ } else {
+ updateEmptySelection(sel);
+ }
+ };
+ } else {
+ module.fail("No means of obtaining a Range or TextRange from the user's selection was found");
+ return false;
+ }
+
+ selProto.refresh = function(checkForChanges) {
+ var oldRanges = checkForChanges ? this._ranges.slice(0) : null;
+ refreshSelection(this);
+ if (checkForChanges) {
+ var i = oldRanges.length;
+ if (i != this._ranges.length) {
+ return false;
+ }
+ while (i--) {
+ if (!DomRange.rangesEqual(oldRanges[i], this._ranges[i])) {
+ return false;
+ }
+ }
+ return true;
+ }
+ };
+
+ // Removal of a single range
+ var removeRangeManually = function(sel, range) {
+ var ranges = sel.getAllRanges(), removed = false;
+ sel.removeAllRanges();
+ for (var i = 0, len = ranges.length; i < len; ++i) {
+ if (removed || range !== ranges[i]) {
+ sel.addRange(ranges[i]);
+ } else {
+ // According to the draft WHATWG Range spec, the same range may be added to the selection multiple
+ // times. removeRange should only remove the first instance, so the following ensures only the first
+ // instance is removed
+ removed = true;
+ }
+ }
+ if (!sel.rangeCount) {
+ updateEmptySelection(sel);
+ }
+ };
+
+ if (implementsControlRange) {
+ selProto.removeRange = function(range) {
+ if (this.docSelection.type == CONTROL) {
+ var controlRange = this.docSelection.createRange();
+ var rangeElement = getSingleElementFromRange(range);
+
+ // Create a new ControlRange containing all the elements in the selected ControlRange minus the
+ // element contained by the supplied range
+ var doc = dom.getDocument(controlRange.item(0));
+ var newControlRange = dom.getBody(doc).createControlRange();
+ var el, removed = false;
+ for (var i = 0, len = controlRange.length; i < len; ++i) {
+ el = controlRange.item(i);
+ if (el !== rangeElement || removed) {
+ newControlRange.add(controlRange.item(i));
+ } else {
+ removed = true;
+ }
+ }
+ newControlRange.select();
+
+ // Update the wrapped selection based on what's now in the native selection
+ updateControlSelection(this);
+ } else {
+ removeRangeManually(this, range);
+ }
+ };
+ } else {
+ selProto.removeRange = function(range) {
+ removeRangeManually(this, range);
+ };
+ }
+
+ // Detecting if a selection is backwards
+ var selectionIsBackwards;
+ if (!useDocumentSelection && selectionHasAnchorAndFocus && api.features.implementsDomRange) {
+ selectionIsBackwards = function(sel) {
+ var backwards = false;
+ if (sel.anchorNode) {
+ backwards = (dom.comparePoints(sel.anchorNode, sel.anchorOffset, sel.focusNode, sel.focusOffset) == 1);
+ }
+ return backwards;
+ };
+
+ selProto.isBackwards = function() {
+ return selectionIsBackwards(this);
+ };
+ } else {
+ selectionIsBackwards = selProto.isBackwards = function() {
+ return false;
+ };
+ }
+
+ // Selection text
+ // This is conformant to the new WHATWG DOM Range draft spec but differs from WebKit and Mozilla's implementation
+ selProto.toString = function() {
+
+ var rangeTexts = [];
+ for (var i = 0, len = this.rangeCount; i < len; ++i) {
+ rangeTexts[i] = "" + this._ranges[i];
+ }
+ return rangeTexts.join("");
+ };
+
+ function assertNodeInSameDocument(sel, node) {
+ if (sel.anchorNode && (dom.getDocument(sel.anchorNode) !== dom.getDocument(node))) {
+ throw new DOMException("WRONG_DOCUMENT_ERR");
+ }
+ }
+
+ // No current browsers conform fully to the HTML 5 draft spec for this method, so Rangy's own method is always used
+ selProto.collapse = function(node, offset) {
+ assertNodeInSameDocument(this, node);
+ var range = api.createRange(dom.getDocument(node));
+ range.collapseToPoint(node, offset);
+ this.removeAllRanges();
+ this.addRange(range);
+ this.isCollapsed = true;
+ };
+
+ selProto.collapseToStart = function() {
+ if (this.rangeCount) {
+ var range = this._ranges[0];
+ this.collapse(range.startContainer, range.startOffset);
+ } else {
+ throw new DOMException("INVALID_STATE_ERR");
+ }
+ };
+
+ selProto.collapseToEnd = function() {
+ if (this.rangeCount) {
+ var range = this._ranges[this.rangeCount - 1];
+ this.collapse(range.endContainer, range.endOffset);
+ } else {
+ throw new DOMException("INVALID_STATE_ERR");
+ }
+ };
+
+ // The HTML 5 spec is very specific on how selectAllChildren should be implemented so the native implementation is
+ // never used by Rangy.
+ selProto.selectAllChildren = function(node) {
+ assertNodeInSameDocument(this, node);
+ var range = api.createRange(dom.getDocument(node));
+ range.selectNodeContents(node);
+ this.removeAllRanges();
+ this.addRange(range);
+ };
+
+ selProto.deleteFromDocument = function() {
+ // Sepcial behaviour required for Control selections
+ if (implementsControlRange && implementsDocSelection && this.docSelection.type == CONTROL) {
+ var controlRange = this.docSelection.createRange();
+ var element;
+ while (controlRange.length) {
+ element = controlRange.item(0);
+ controlRange.remove(element);
+ element.parentNode.removeChild(element);
+ }
+ this.refresh();
+ } else if (this.rangeCount) {
+ var ranges = this.getAllRanges();
+ this.removeAllRanges();
+ for (var i = 0, len = ranges.length; i < len; ++i) {
+ ranges[i].deleteContents();
+ }
+ // The HTML5 spec says nothing about what the selection should contain after calling deleteContents on each
+ // range. Firefox moves the selection to where the final selected range was, so we emulate that
+ this.addRange(ranges[len - 1]);
+ }
+ };
+
+ // The following are non-standard extensions
+ selProto.getAllRanges = function() {
+ return this._ranges.slice(0);
+ };
+
+ selProto.setSingleRange = function(range) {
+ this.setRanges( [range] );
+ };
+
+ selProto.containsNode = function(node, allowPartial) {
+ for (var i = 0, len = this._ranges.length; i < len; ++i) {
+ if (this._ranges[i].containsNode(node, allowPartial)) {
+ return true;
+ }
+ }
+ return false;
+ };
+
+ selProto.toHtml = function() {
+ var html = "";
+ if (this.rangeCount) {
+ var container = DomRange.getRangeDocument(this._ranges[0]).createElement("div");
+ for (var i = 0, len = this._ranges.length; i < len; ++i) {
+ container.appendChild(this._ranges[i].cloneContents());
+ }
+ html = container.innerHTML;
+ }
+ return html;
+ };
+
+ function inspect(sel) {
+ var rangeInspects = [];
+ var anchor = new DomPosition(sel.anchorNode, sel.anchorOffset);
+ var focus = new DomPosition(sel.focusNode, sel.focusOffset);
+ var name = (typeof sel.getName == "function") ? sel.getName() : "Selection";
+
+ if (typeof sel.rangeCount != "undefined") {
+ for (var i = 0, len = sel.rangeCount; i < len; ++i) {
+ rangeInspects[i] = DomRange.inspect(sel.getRangeAt(i));
+ }
+ }
+ return "[" + name + "(Ranges: " + rangeInspects.join(", ") +
+ ")(anchor: " + anchor.inspect() + ", focus: " + focus.inspect() + "]";
+
+ }
+
+ selProto.getName = function() {
+ return "WrappedSelection";
+ };
+
+ selProto.inspect = function() {
+ return inspect(this);
+ };
+
+ selProto.detach = function() {
+ this.win[windowPropertyName] = null;
+ this.win = this.anchorNode = this.focusNode = null;
+ };
+
+ WrappedSelection.inspect = inspect;
+
+ api.Selection = WrappedSelection;
+
+ api.selectionPrototype = selProto;
+
+ api.addCreateMissingNativeApiListener(function(win) {
+ if (typeof win.getSelection == "undefined") {
+ win.getSelection = function() {
+ return api.getSelection(this);
+ };
+ }
+ win = null;
+ });
+});
diff --git a/MLEB/UniversalLanguageSelector/resources/css/ext.uls-monobook.css b/MLEB/UniversalLanguageSelector/resources/css/ext.uls-monobook.css
new file mode 100644
index 00000000..293b62b8
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/resources/css/ext.uls-monobook.css
@@ -0,0 +1,3 @@
+#pt-uls {
+ text-transform: none;
+}
diff --git a/MLEB/UniversalLanguageSelector/resources/css/ext.uls.buttons.css b/MLEB/UniversalLanguageSelector/resources/css/ext.uls.buttons.css
new file mode 100644
index 00000000..cfe1ba45
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/resources/css/ext.uls.buttons.css
@@ -0,0 +1,158 @@
+button.button {
+ display: inline-block;
+ padding: 0.4065em 1.2195em 0.4065em;
+ font-weight: bold;
+ line-height: 1;
+ color: #252525;
+ text-align: center;
+ text-shadow: 0 1px 1px rgba(255, 255, 255, 0.75);
+ cursor: pointer;
+ background-color: #e6e6e6;
+ background-image: -moz-linear-gradient(top, #f0f0f0, #e6e6e6);
+ background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #f0f0f0), color-stop(100%, #e6e6e6));
+ background-image: -webkit-linear-gradient(top, #f0f0f0, #e6e6e6);
+ background-image: linear-gradient(#f0f0f0, #e6e6e6);
+ border: 1px #c9c9c9 solid;
+ border-radius: 3px;
+ -ms-filter: "progid:DXImageTransform.Microsoft.gradient(startColorstr='#f0f0f0', endColorstr='#e6e6e6', GradientType=0)";
+ filter: progid:dximagetransform.microsoft.gradient(startColorstr='#f0f0f0', endColorstr='#e6e6e6', GradientType=0);
+}
+
+button.button:hover {
+ background-color: #f0f0f0;
+ background-image: -moz-linear-gradient(top, #f8f8f8, #f0f0f0);
+ background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #f8f8f8), color-stop(100%, #f0f0f0));
+ background-image: -webkit-linear-gradient(top, #f8f8f8, #f0f0f0);
+ background-image: linear-gradient(#f8f8f8, #f0f0f0);
+ border-color: #c9c9c9;
+ -ms-filter: "progid:DXImageTransform.Microsoft.gradient(startColorstr='#f8f8f8', endColorstr='#f0f0f0', GradientType=0)";
+ filter: progid:dximagetransform.microsoft.gradient(startColorstr='#f8f8f8', endColorstr='#f0f0f0', GradientType=0);
+}
+
+button.button:active,
+button.button.down {
+ background-color: #d8d8d8;
+ background-image: -moz-linear-gradient(top, #d3d3d3, #d8d8d8);
+ background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #d3d3d3), color-stop(100%, #d8d8d8));
+ background-image: -webkit-linear-gradient(top, #d3d3d3, #d8d8d8);
+ background-image: linear-gradient(#d3d3d3, #d8d8d8);
+ border-color: #c9c9c9;
+ -ms-filter: "progid:DXImageTransform.Microsoft.gradient(startColorstr='#d3d3d3', endColorstr='#d8d8d8', GradientType=0)";
+ filter: progid:dximagetransform.microsoft.gradient(startColorstr='#d3d3d3', endColorstr='#d8d8d8', GradientType=0);
+}
+
+button.button:disabled,
+button.button:disabled.hover,
+button.button.disabled,
+button.button.disabled:hover {
+ color: #c9c9c9;
+ cursor: default;
+ background-color: #f0f0f0;
+ background-image: -moz-linear-gradient(top, #f0f0f0, #f0f0f0);
+ background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #f0f0f0), color-stop(100%, #f0f0f0));
+ background-image: -webkit-linear-gradient(top, #f0f0f0, #f0f0f0);
+ background-image: linear-gradient(#f0f0f0, #f0f0f0);
+ border-color: #e3e3e3;
+ -ms-filter: "progid:DXImageTransform.Microsoft.gradient(startColorstr='#f0f0f0', endColorstr='#f0f0f0', GradientType=0)";
+ filter: progid:dximagetransform.microsoft.gradient(startColorstr='#f0f0f0', endColorstr='#f0f0f0', GradientType=0);
+}
+
+button.button.blue {
+ color: #ffffff;
+ text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
+ background-color: #3366bb;
+ background-image: -moz-linear-gradient(top, #3670c8, #3366bb);
+ background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #3670c8), color-stop(100%, #3366bb));
+ background-image: -webkit-linear-gradient(top, #3670c8, #3366bb);
+ background-image: linear-gradient(#3670c8, #3366bb);
+ border: 1px #33589f solid;
+ -ms-filter: "progid:DXImageTransform.Microsoft.gradient(startColorstr='#3670c8', endColorstr='#3366bb', GradientType=0)";
+ filter: progid:dximagetransform.microsoft.gradient(startColorstr='#3670c8', endColorstr='#3366bb', GradientType=0);
+}
+
+button.button.blue:hover {
+ background-color: #3f77d7;
+ background-image: -moz-linear-gradient(top, #4c84da, #3f77d7);
+ background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #4c84da), color-stop(100%, #3f77d7));
+ background-image: -webkit-linear-gradient(top, #4c84da, #3f77d7);
+ background-image: linear-gradient(#4c84da, #3f77d7);
+ -ms-filter: "progid:DXImageTransform.Microsoft.gradient(startColorstr='#4c84da', endColorstr='#3f77d7', GradientType=0)";
+ filter: progid:dximagetransform.microsoft.gradient(startColorstr='#4c84da', endColorstr='#3f77d7', GradientType=0);
+}
+
+button.button.blue:active {
+ background-color: #2a549c;
+ background-image: -moz-linear-gradient(top, #2d5ea9, #2a549c);
+ background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #2d5ea9), color-stop(100%, #2a549c));
+ background-image: -webkit-linear-gradient(top, #2d5ea9, #2a549c);
+ background-image: linear-gradient(#2d5ea9, #2a549c);
+ -ms-filter: "progid:DXImageTransform.Microsoft.gradient(startColorstr='#2d5ea9', endColorstr='#2a549c', GradientType=0)";
+ filter: progid:dximagetransform.microsoft.gradient(startColorstr='#2d5ea9', endColorstr='#2a549c', GradientType=0);
+}
+
+button.button.blue:disabled,
+button.button.blue:disabled.hover,
+button.button.blue.disabled,
+button.button.blue.disabled:hover {
+ color: white;
+ text-shadow: none;
+ cursor: default;
+ background-color: #7297d7;
+ background-image: -moz-linear-gradient(top, #7297d7, #7297d7);
+ background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #7297d7), color-stop(100%, #7297d7));
+ background-image: -webkit-linear-gradient(top, #7297d7, #7297d7);
+ background-image: linear-gradient(#7297d7, #7297d7);
+ border-color: #5e89d1;
+ -ms-filter: "progid:DXImageTransform.Microsoft.gradient(startColorstr='#7297d7', endColorstr='#7297d7', GradientType=0)";
+ filter: progid:dximagetransform.microsoft.gradient(startColorstr='#7297d7', endColorstr='#7297d7', GradientType=0);
+}
+
+button.button.green {
+ color: #ffffff;
+ text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
+ background-color: #008740;
+ background-image: -moz-linear-gradient(top, #00974b, #008740);
+ background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #00974b), color-stop(100%, #008740));
+ background-image: -webkit-linear-gradient(top, #00974b, #008740);
+ background-image: linear-gradient(#00974b, #008740);
+ border: 1px #0f9b3b solid;
+ -ms-filter: "progid:DXImageTransform.Microsoft.gradient(startColorstr='#00974b', endColorstr='#008740', GradientType=0)";
+ filter: progid:dximagetransform.microsoft.gradient(startColorstr='#00974b', endColorstr='#008740', GradientType=0);
+}
+
+button.button.green:hover {
+ background-color: #119750;
+ background-image: -moz-linear-gradient(top, #10a65b, #119750);
+ background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #10a65b), color-stop(100%, #119750));
+ background-image: -webkit-linear-gradient(top, #10a65b, #119750);
+ background-image: linear-gradient(#10a65b, #119750);
+ -ms-filter: "progid:DXImageTransform.Microsoft.gradient(startColorstr='#10a65b', endColorstr='#119750', GradientType=0)";
+ filter: progid:dximagetransform.microsoft.gradient(startColorstr='#10a65b', endColorstr='#119750', GradientType=0);
+}
+
+button.button.green:active {
+ background-color: #007236;
+ background-image: -moz-linear-gradient(top, #007236, #007236);
+ background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #007236), color-stop(100%, #007236));
+ background-image: -webkit-linear-gradient(top, #007236, #007236);
+ background-image: linear-gradient(#007236, #007236);
+ -ms-filter: "progid:DXImageTransform.Microsoft.gradient(startColorstr='#007236', endColorstr='#007236', GradientType=0)";
+ filter: progid:dximagetransform.microsoft.gradient(startColorstr='#007236', endColorstr='#007236', GradientType=0);
+}
+
+button.button.green:disabled,
+button.button.green:disabled.hover,
+button.button.green.disabled,
+button.button.green.disabled:hover {
+ color: white;
+ text-shadow: none;
+ cursor: default;
+ background-color: #2ca368;
+ background-image: -moz-linear-gradient(top, #2ca368, #2ca368);
+ background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #2ca368), color-stop(100%, #2ca368));
+ background-image: -webkit-linear-gradient(top, #2ca368, #2ca368);
+ background-image: linear-gradient(#2ca368, #2ca368);
+ border-color: #278f5b;
+ -ms-filter: "progid:DXImageTransform.Microsoft.gradient(startColorstr='#2ca368', endColorstr='#2ca368', GradientType=0)";
+ filter: progid:dximagetransform.microsoft.gradient(startColorstr='#2ca368', endColorstr='#2ca368', GradientType=0);
+}
diff --git a/MLEB/UniversalLanguageSelector/resources/css/ext.uls.compactlinks.css b/MLEB/UniversalLanguageSelector/resources/css/ext.uls.compactlinks.css
new file mode 100644
index 00000000..56760976
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/resources/css/ext.uls.compactlinks.css
@@ -0,0 +1,41 @@
+#more-lang-label {
+ color: #8b8989;
+ display: block;
+ font-size: 12px;
+ line-height: 1.2;
+ margin: 5px 0;
+}
+
+#p-lang .body ul .uls-trigger,
+#p-lang .pBody ul .uls-trigger {
+ background-image: none;
+ padding: 0;
+}
+
+.mw-interlanguage-selector {
+ cursor: pointer;
+ margin: 2px 0;
+ padding: 0 8px;
+}
+
+.interlanguage-uls-menu:after,
+.interlanguage-uls-menu:before {
+ right: 100%;
+ content: " ";
+ position: absolute;
+ border: 1px solid black;
+}
+
+.interlanguage-uls-menu:after {
+ border-color: transparent;
+ border-right-color: #FCFCFC;
+ border-width: 20px;
+ top: 250px;
+}
+
+.interlanguage-uls-menu:before {
+ border-color: transparent;
+ border-right-color: #555555;
+ border-width: 20px;
+ top: 250px;
+}
diff --git a/MLEB/UniversalLanguageSelector/resources/css/ext.uls.css b/MLEB/UniversalLanguageSelector/resources/css/ext.uls.css
new file mode 100644
index 00000000..e02dcf54
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/resources/css/ext.uls.css
@@ -0,0 +1,46 @@
+.uls-menu a {
+ cursor: pointer;
+}
+
+.uls-menu.callout .caret-before {
+ border-top: 20px solid transparent;
+ border-right: 20px solid #C9C9C9;
+ border-bottom: 20px solid transparent;
+ display: inline-block;
+ left: -21px;
+ top: 30px;
+ position: absolute;
+}
+
+.uls-menu.callout .caret-after {
+ border-top: 20px solid transparent;
+ border-right: 20px solid #FCFCFC;
+ border-bottom: 20px solid transparent;
+ display: inline-block;
+ left: -20px;
+ top: 30px;
+ position: absolute;
+}
+
+.uls-ui-languages button {
+ width: 23%;
+ text-overflow: ellipsis;
+ margin-right: 4%;
+}
+
+button.uls-more-languages {
+ width: auto;
+}
+
+.settings-title {
+ font-size: 11pt;
+}
+
+.settings-text {
+ color: #555555;
+ font-size: 9pt;
+}
+
+div.display-settings-block:hover .settings-text {
+ color: #252525;
+}
diff --git a/MLEB/UniversalLanguageSelector/resources/css/ext.uls.displaysettings.css b/MLEB/UniversalLanguageSelector/resources/css/ext.uls.displaysettings.css
new file mode 100644
index 00000000..90fd1492
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/resources/css/ext.uls.displaysettings.css
@@ -0,0 +1,93 @@
+div.display-settings-block {
+ /* @embed */
+ background: transparent url('../images/display.png') no-repeat left top;
+ /* @embed */
+ background-image: -webkit-linear-gradient(transparent, transparent), url('../images/display.svg');
+ /* @embed */
+ background-image: linear-gradient(transparent, transparent), url('../images/display.svg');
+ background-size: 20px auto;
+ color: #252525;
+ padding-left: 26px;
+ cursor: pointer;
+}
+
+.uls-display-settings-tab-switcher {
+ text-align: center;
+}
+
+.uls-button-group {
+ display: inline-block;
+ position: relative;
+ padding: 0 0 0 0;
+ left: -20px;
+ z-index: 1;
+}
+
+.uls-button-group > button.button {
+ border-radius: 0;
+ float: left;
+ padding: 8px 10px;
+ min-width: 80px;
+ margin: 0;
+}
+
+.uls-button-group > button.button:first-child {
+ border-top-left-radius: 3px;
+ border-bottom-left-radius: 3px;
+}
+
+.uls-button-group > button.button:last-child {
+ border-top-right-radius: 3px;
+ border-bottom-right-radius: 3px;
+}
+
+.ext-uls-sub-panel {
+ border-top: 1px solid #EEEEEE;
+ padding-top: 25px;
+ top: -20px;
+ position: relative;
+ min-height: 150px;
+}
+
+.uls-display-settings-font-selectors {
+ margin: 5px 0 15px 0;
+ border-top: 1px solid #EEEEEE;
+}
+
+.uls-font-item {
+ border-bottom: 1px solid #EEEEEE;
+ background: #FBFBFB;
+ margin: 0;
+ padding: 10px 0;
+}
+
+.uls-font-label,
+.uls-font-select {
+ font-size: 10pt;
+}
+
+.uls-font-select {
+ min-height: 16pt;
+}
+
+.uls-content-fonts:hover,
+.uls-ui-fonts:hover {
+ background-color: #F6F6F6;
+}
+
+.uls-font-label strong {
+ color: #252525;
+}
+
+.uls-font-label {
+ color: #555555;
+ font-size: 10pt;
+}
+
+.uls-display-settings-anon-label {
+ font-weight: bold;
+}
+
+#uls-display-settings-anon-log-in-cta {
+ font-size: 10pt;
+}
diff --git a/MLEB/UniversalLanguageSelector/resources/css/ext.uls.inputsettings.css b/MLEB/UniversalLanguageSelector/resources/css/ext.uls.inputsettings.css
new file mode 100644
index 00000000..2158f88c
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/resources/css/ext.uls.inputsettings.css
@@ -0,0 +1,146 @@
+div.input-settings-block {
+ /* @embed */
+ background: transparent url('../images/input.png') no-repeat left top;
+ /* @embed */
+ background-image: -webkit-linear-gradient(transparent, transparent), url('../images/input.svg');
+ /* @embed */
+ background-image: linear-gradient(transparent, transparent), url('../images/input.svg');
+ background-size: 20px auto;
+ color: #252525;
+ padding-left: 26px;
+ cursor: pointer;
+}
+
+.imelabel {
+ display: block;
+ padding-bottom: 10px;
+ font-size: 10pt;
+ line-height: 16pt;
+}
+
+.imelabel span {
+ padding-left: 5px;
+}
+
+.imelabel input {
+ float: left;
+}
+
+.uls-ime-menu-settings-item {
+ background-color: #f0f0f0;
+ border-radius: 0 0 5px 5px;
+ border-top: 1px solid #ddd;
+ margin-top: 6px;
+ padding: 4px 2px;
+ color: #444;
+ position: relative;
+}
+
+.uls-ime-disable-link {
+ /* @embed */
+ background: transparent url('../images/remove-input.png') no-repeat left top;
+ /* @embed */
+ background-image: -webkit-linear-gradient(transparent, transparent), url('../images/remove-input.svg');
+ /* @embed */
+ background-image: linear-gradient(transparent, transparent), url('../images/remove-input.svg');
+ background-size: auto 16px;
+ padding-left: 22px;
+ padding-right: 26px;
+ padding-bottom: 10px;
+ cursor: pointer;
+}
+
+.uls-ime-more-settings-link {
+ /* @embed */
+ background: transparent url('../images/cog.png') no-repeat center top;
+ /* @embed */
+ background-image: -webkit-linear-gradient(transparent, transparent), url('../images/cog.svg');
+ /* @embed */
+ background-image: linear-gradient(transparent, transparent), url('../images/cog.svg');
+ background-size: auto 14px;
+ border-left: 1px solid #CCCCCC;
+ width: 22px;
+ height: 14px;
+ position: absolute;
+ right: 0;
+ cursor: pointer;
+}
+
+.uls-ime-menu-settings-item > a:hover {
+ background-color: #f0f0f0;
+ color: #000;
+}
+
+.ext-uls-input-settings-imes-title:empty {
+ display: none;
+}
+
+.uls-input-settings-disable-info,
+.uls-input-settings-no-inputmethods {
+ color: #565656;
+ padding-top: 10px;
+ padding-bottom: 15px;
+ font-size: 11pt;
+}
+
+.down+.uls-input-settings-caret {
+ display: inline-block;
+ width: 0;
+ height: 0;
+ border-top: none;
+ border-right: 8px solid transparent;
+ border-left: 8px solid transparent;
+ border-bottom: 8px solid #f0f0f0;
+ content: "";
+ position: relative;
+ vertical-align: bottom;
+ top: 12px;
+ left: -16%;
+ margin: 0 -8px;
+}
+
+.uls-input-settings-toggle {
+ padding-top: 10px;
+}
+
+.uls-input-settings .uls-input-settings-inputmethods-list {
+ margin: 12px 0;
+ padding: 6px 10px;
+ background: #f0f0f0;
+}
+
+.uls-ime-notification-bubble .link {
+ color: #0645AD;
+ cursor: pointer;
+}
+
+.uls-input-settings .uls-ime-help {
+ margin-left: 10px;
+}
+
+/* Ime menu customizations */
+.ime-perime-help {
+ display: none;
+}
+
+.ime-checked .ime-perime-help {
+ display: inline-block;
+ width: 20px;
+ height: 100%;
+ position: absolute;
+ top: 0;
+ bottom: 0;
+ right: 0;
+ opacity: 0.75;
+ padding: 0;
+ /* @embed */
+ background: transparent url('../images/help.png') left center no-repeat;
+ /* @embed */
+ background-image: -webkit-linear-gradient(transparent, transparent), url('../images/help.svg');
+ /* @embed */
+ background-image: linear-gradient(transparent, transparent), url('../images/help.svg');
+}
+
+.ime-checked .ime-perime-help:hover {
+ opacity: 1;
+}
diff --git a/MLEB/UniversalLanguageSelector/resources/css/ext.uls.interlanguage.css b/MLEB/UniversalLanguageSelector/resources/css/ext.uls.interlanguage.css
new file mode 100644
index 00000000..85c1be99
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/resources/css/ext.uls.interlanguage.css
@@ -0,0 +1,21 @@
+#p-lang .uls-settings-trigger {
+ /* @embed */
+ background: transparent url('../images/cog-sprite.png') no-repeat right top;
+ /* @embed */
+ background-image: -webkit-linear-gradient(transparent, transparent), url('../images/cog-sprite.svg');
+ /* @embed */
+ background-image: linear-gradient(transparent, transparent), url('../images/cog-sprite.svg');
+ height: 16px;
+ width: 14px;
+ float: right;
+ cursor: pointer;
+}
+
+.skin-vector #p-lang .uls-settings-trigger {
+ /* Put it in the middle of the first row of the section title */
+ margin-top: 3px;
+}
+
+#p-lang .uls-settings-trigger:hover {
+ background-position: right -16px;
+}
diff --git a/MLEB/UniversalLanguageSelector/resources/css/ext.uls.languagesettings.css b/MLEB/UniversalLanguageSelector/resources/css/ext.uls.languagesettings.css
new file mode 100644
index 00000000..223d1a1a
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/resources/css/ext.uls.languagesettings.css
@@ -0,0 +1,137 @@
+#uls-settings-block {
+ border-top: 1px solid #C9C9C9;
+ background: #f8f8f8;
+ background: -webkit-gradient(linear, left top, left bottom, from(#FBFBFB), to(#F0F0F0));
+ background: -webkit-linear-gradient(top, #FBFBFB, #F0F0F0);
+ background: -moz-linear-gradient(top, #FBFBFB, #F0F0F0);
+ background: -o-linear-gradient(top, #FBFBFB, #F0F0F0);
+ background: linear-gradient(#FBFBFB, #F0F0F0);
+ padding-left: 10px;
+ line-height: 1.2em;
+ border-radius: 0 0 5px 5px;
+}
+
+.uls-menu h3 {
+ border-bottom: medium none;
+ font-size: 14pt;
+ line-height: 1.5em;
+ margin-bottom: 10px;
+ margin-top: 0;
+ padding-left: 0;
+}
+
+#languagesettings-panels .languagesettings-menu {
+ padding-left: 0;
+ padding-right: 0;
+}
+
+.languagesettings-menu .settings-title {
+ font-size: 13pt;
+}
+
+.languagesettings-menu h1 {
+ font-size: 16pt;
+ line-height: 20pt;
+ margin-top: 0;
+ font-weight: normal;
+ border: none;
+ padding: 15px 0 3px 15px;
+ color: #555;
+}
+
+.language-settings-buttons {
+ text-align: right;
+}
+
+#languagesettings-settings-panel {
+ padding-left: 5%;
+ color: #252525;
+ background: #FFFFFF;
+ border-bottom-right-radius: 5px;
+}
+
+#languagesettings-settings-panel h3 {
+ color: #252525;
+ padding-top: 15px;
+ margin-top: 1pt;
+ line-height: 20pt;
+ font-size: 16pt;
+}
+
+#languagesettings-settings-panel h4 {
+ color: #252525;
+ font-size: 12pt;
+}
+
+#languagesettings-settings-panel h5 {
+ color: #252525;
+ font-size: 10pt;
+}
+
+/* Buttons in the selector panel */
+.menu-section {
+ color: #777;
+ padding: 5px 0 5px 50px;
+ border-left: 3px solid transparent;
+ display: block;
+ font-size: 12pt;
+}
+
+#language-settings-dialog {
+ background: #FBFBFB;
+}
+
+.uls-language-settings-close-block {
+ background: #FFFFFF;
+ border-top-right-radius: 5px;
+}
+
+#languagesettings-panels .menu-section.active,
+#languagesettings-panels .menu-section.active:hover {
+ color: black;
+ background-color: #F0F0F0;
+ border-left-color: #3366BB;
+}
+
+.settings-menu-items .menu-section {
+ background-position: 6% 6px;
+ padding-left: 40px;
+ cursor: pointer;
+}
+
+.settings-menu-items .menu-section:hover {
+ background-color: #F5F5F5;
+}
+
+.language-settings-buttons {
+ border-top: 1px solid #F0F0F0;
+ margin-top: 25px;
+ padding: 15px;
+ width: auto;
+}
+
+.language-settings-buttons button {
+ margin-left: 15px;
+}
+
+.uls-ui-languages p,
+.checkbox {
+ color: #555555;
+ font-size: 10pt;
+}
+
+.checkbox input[type="checkbox"] {
+ margin-left: 0;
+}
+
+.checkbox strong {
+ color: #252525;
+}
+
+label.checkbox input[type="checkbox"] {
+ float: left;
+}
+
+.waiting {
+ cursor: progress;
+}
diff --git a/MLEB/UniversalLanguageSelector/resources/css/ext.uls.nojs.css b/MLEB/UniversalLanguageSelector/resources/css/ext.uls.nojs.css
new file mode 100644
index 00000000..99ec7e5d
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/resources/css/ext.uls.nojs.css
@@ -0,0 +1,4 @@
+/* Don't show it to users who disabled JS */
+.client-nojs #pt-uls {
+ display: none;
+}
diff --git a/MLEB/UniversalLanguageSelector/resources/css/ext.uls.pt.css b/MLEB/UniversalLanguageSelector/resources/css/ext.uls.pt.css
new file mode 100644
index 00000000..40cabeed
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/resources/css/ext.uls.pt.css
@@ -0,0 +1,57 @@
+/*
+ * The trigger can be placed in the personal toolbar near the username
+ * or near the interlanguage links.
+ */
+
+/*
+ * A hack to load the icon before the rest of the module is lazy-loaded.
+ * Copied from jquery.uls.css with the path changed.
+ */
+.uls-trigger {
+ /* @embed */
+ background: transparent url('../../lib/jquery.uls/images/icon-language.png') no-repeat scroll left center;
+ /* @embed */
+ background-image: -webkit-linear-gradient(transparent, transparent), url('../../lib/jquery.uls/images/icon-language.svg');
+ /* @embed */
+ background-image: linear-gradient(transparent, transparent), url('../../lib/jquery.uls/images/icon-language.svg');
+ padding-left: 30px;
+}
+
+#pt-uls a.uls-trigger {
+ padding-left: 30px;
+ /* Fix alignment in vector: https://bugzilla.wikimedia.org/59239 */
+ line-height: 1;
+}
+
+/* Opera for some inexplicable reason confuses right and left padding with */
+/* RTL text direction here (bug 45142). x:-o-prefocus won't match anything, */
+/* but will make other browsers ignore this rule. */
+x:-o-prefocus, body.rtl li#pt-uls {
+ /* @noflip */
+ direction: ltr;
+}
+
+#uls-settings-block {
+ border-top: 1px solid #C9C9C9;
+ background: #f8f8f8;
+ background: -webkit-gradient(linear, left top, left bottom, from(#FBFBFB), to(#F0F0F0));
+ background: -webkit-linear-gradient(top, #FBFBFB, #F0F0F0);
+ background: -moz-linear-gradient(top, #FBFBFB, #F0F0F0);
+ background: -o-linear-gradient(top, #FBFBFB, #F0F0F0);
+ background: linear-gradient(#FBFBFB, #F0F0F0);
+ padding-left: 10px;
+ line-height: 1.2em;
+ border-radius: 0 0 5px 5px;
+}
+
+#uls-settings-block div.display-settings-block,
+#uls-settings-block div.input-settings-block {
+ display: inline-block;
+ margin: 8px 15px;
+ color: #565656;
+}
+
+#uls-settings-block div.display-settings-block:hover,
+#uls-settings-block div.input-settings-block:hover {
+ color: #252525;
+}
diff --git a/MLEB/UniversalLanguageSelector/resources/images/cog-sprite.png b/MLEB/UniversalLanguageSelector/resources/images/cog-sprite.png
new file mode 100644
index 00000000..7dd54f68
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/resources/images/cog-sprite.png
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/resources/images/cog-sprite.svg b/MLEB/UniversalLanguageSelector/resources/images/cog-sprite.svg
new file mode 100644
index 00000000..76becd44
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/resources/images/cog-sprite.svg
@@ -0,0 +1 @@
+<?xml version="1.0" encoding="UTF-8"?><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="14" height="32"><defs><path d="M13.582 6.632h-1.064c-.133-.538-.354-1.065-.645-1.552l.75-.75c.164-.164.164-.429 0-.593l-1.359-1.36c-.164-.164-.43-.164-.594 0l-.75.75c-.49-.294-1.012-.512-1.551-.645v-1.064c0-.231-.187-.418-.419-.418h-1.918c-.231 0-.418.187-.418.418v1.063c-.541.135-1.062.352-1.552.646l-.75-.75c-.164-.164-.429-.164-.593 0l-1.36 1.36c-.164.164-.164.429 0 .593l.75.75c-.292.488-.494 1.015-.627 1.551h-1.064c-.231 0-.418.187-.418.419v1.918c0 .231.187.418.418.418h1.046c.134.542.351 1.062.645 1.551l-.75.75c-.164.164-.164.429 0 .593l1.36 1.36c.164.164.429.164.593 0l.75-.75c.491.296 1.01.493 1.551.627v1.063c.001.233.188.42.419.42h1.918c.231 0 .419-.187.419-.418v-1.063c.542-.134 1.061-.333 1.551-.627l.75.75c.164.164.43.164.594 0l1.359-1.36c.164-.164.164-.429 0-.593l-.75-.75c.295-.489.51-1.013.645-1.551h1.064c.23-.002.418-.189.418-.42v-1.918c0-.232-.188-.418-.418-.418zm-6.582 4.012c-1.461 0-2.645-1.184-2.645-2.644s1.184-2.644 2.645-2.644 2.645 1.184 2.645 2.644-1.184 2.644-2.645 2.644z" id="a"/></defs><use xlink:href="#a" fill="#808080"/><use xlink:href="#a" transform="translate(0 16)" fill="#555"/></svg> \ No newline at end of file
diff --git a/MLEB/UniversalLanguageSelector/resources/images/cog.png b/MLEB/UniversalLanguageSelector/resources/images/cog.png
new file mode 100644
index 00000000..7d481551
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/resources/images/cog.png
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/resources/images/cog.svg b/MLEB/UniversalLanguageSelector/resources/images/cog.svg
new file mode 100644
index 00000000..edfbbf3d
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/resources/images/cog.svg
@@ -0,0 +1 @@
+<?xml version="1.0" encoding="UTF-8"?><svg xmlns="http://www.w3.org/2000/svg" width="20" height="14"><path d="M9.032 0c-.232 0-.418.187-.418.418v1.064c-.541.134-1.062.351-1.552.645l-.75-.75c-.164-.164-.429-.164-.593 0l-1.36 1.36c-.164.164-.164.429 0 .593l.75.75c-.292.488-.495 1.015-.628 1.552h-1.064c-.232 0-.418.187-.418.418v1.918c0 .232.187.418.418.418h1.046c.134.542.35 1.062.645 1.552l-.75.75c-.164.164-.164.429 0 .593l1.36 1.36c.164.164.429.164.593 0l.75-.75c.492.297 1.01.493 1.552.628v1.064c0 .232.187.418.418.418h1.918c.232 0 .418-.187.418-.418v-1.064c.543-.134 1.061-.333 1.552-.628l.75.75c.164.164.429.164.593 0l1.36-1.36c.164-.164.164-.429 0-.593l-.75-.75c.295-.489.51-1.013.645-1.552h1.064c.232 0 .418-.187.418-.418v-1.918c0-.232-.187-.418-.418-.418h-1.064c-.134-.538-.353-1.065-.645-1.552l.75-.75c.164-.164.164-.429 0-.593l-1.36-1.36c-.164-.164-.429-.164-.593 0l-.75.75c-.49-.294-1.013-.512-1.552-.645v-1.064c0-.232-.187-.418-.418-.418h-1.918zm.889 4.359c.678-.018 1.369.211 1.9.715 1.062 1.007 1.112 2.686.105 3.748-1.005 1.059-2.686 1.106-3.748.105-1.062-1.007-1.112-2.686-.105-3.748.504-.531 1.17-.801 1.848-.819z" fill="#434343"/></svg> \ No newline at end of file
diff --git a/MLEB/UniversalLanguageSelector/resources/images/compact-links-ltr.png b/MLEB/UniversalLanguageSelector/resources/images/compact-links-ltr.png
new file mode 100644
index 00000000..8634c89e
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/resources/images/compact-links-ltr.png
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/resources/images/compact-links-ltr.svg b/MLEB/UniversalLanguageSelector/resources/images/compact-links-ltr.svg
new file mode 100644
index 00000000..cb5f42cf
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/resources/images/compact-links-ltr.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" width="264" height="162" viewBox="0 0 264 162"><g><path fill="#fff" d="M13.366 161.357l-12.866-9.608v-151.249h263v151.749l-9 6.705v-116.454h-39v112.6l-4.393-3.731-7.607 5.33v-114.199h-155v110.85l-9.751 8.03-13.916-10.019z"/><path d="M263 1v150.998l-8 5.96v-115.958h-40v112.02l-3.274-2.781-.589-.498-.633.441-6.504 4.556v-113.738h-156v111.1l-9.257 7.66-13.295-9.57-.645-.463-.598.521-10.864 9.47-12.341-9.219v-150.499h262m1-1h-264v152l13.391 10 11.474-10 13.891 10 10.244-8.4v-110.6h154v114.66l8.078-5.66 4.922 4.18v-113.18h38v116.95l10-7.45v-152.5z" fill="#e5e5e5"/></g><path d="M203 157.66v-114.66h-154v110.6l2.145-1.6 12.555 10 13.809-10 14.229 10 12.972-10 12.973 10 13.811-10 12.136 10 13.391-10 14.229 10 12.972-10 12.974 10 5.804-4.34z" fill="#e5e5e5"/><path d="M11 36c0-7.732 6.268-14 14-14s14 6.268 14 14-6.268 14-14 14-14-6.268-14-14z" fill="#e5e5e5"/><path d="M254 159.95v-116.95h-38v113.18l7.551 5.82 13.811-10 13.891 10 2.747-2.05z" fill="#e5e5e5"/><path d="M38 107v-35h-25v35h25z" fill="#e5e5e5"/><path d="M232.51 5h26v6h-26v-6z" fill="#e5e5e5"/><path fill="#e5e5e5" d="M208.51 5h22v6h-22z"/><path d="M142 6v4h-92v-4h92m1-1h-94v6h94v-6z" fill="#e5e5e5"/><path fill="#e5e5e5" d="M184.51 5h22v6h-22z"/><path fill="#e5e5e5" d="M161.51 5h13v6h-13z"/><path fill="#e5e5e5" d="M176.51 5h6v6h-6z"/><path fill="#e5e5e5" d="M153.51 5h6v6h-6z"/><path fill="#e5e5e5" d="M9 5h32v6h-32z"/><path d="M2 14.5h260" fill="#e5e5e5" stroke="#e5e5e5"/><path fill="#e5e5e5" d="M52 7h2v2h-2z"/><path d="M38 59v-5h-25v5h25z" fill="#e5e5e5"/><path d="M38 132.625v-35h-25v35h25z" fill="#8acdff"/><rect width="20.438" height="2.176" rx=".151" ry=".107" x="15.281" y="108.59" fill="#fff"/><rect width="20.438" height="2.176" rx=".151" ry=".107" x="15.281" y="113.831" fill="#fff"/><rect width="20.438" height="6.188" rx=".151" ry=".303" x="15.281" y="124.313" fill="#2693ff"/><g transform="matrix(.747 0 0 .747 7.295 33.453)" fill="#fff"><rect width="1.823" height="1.882" rx=".013" ry=".092" x="20.273" y="125.738"/><rect width="1.823" height="1.882" rx=".013" ry=".092" x="26.655" y="125.738"/><rect width="1.823" height="1.882" rx=".013" ry=".092" x="23.464" y="125.738"/></g><rect width="20.438" height="2.176" rx=".151" ry=".107" x="15.281" y="103.349" fill="#fff"/><rect width="20.438" height="2.176" rx=".151" ry=".107" x="15.281" y="119.072" fill="#fff"/></svg> \ No newline at end of file
diff --git a/MLEB/UniversalLanguageSelector/resources/images/compact-links-rtl.png b/MLEB/UniversalLanguageSelector/resources/images/compact-links-rtl.png
new file mode 100644
index 00000000..3e2ef633
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/resources/images/compact-links-rtl.png
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/resources/images/compact-links-rtl.svg b/MLEB/UniversalLanguageSelector/resources/images/compact-links-rtl.svg
new file mode 100644
index 00000000..1589d0fb
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/resources/images/compact-links-rtl.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" width="264" height="162" viewBox="0 0 264 162"><g><path fill="#fff" d="M.5.5v151.749l9 6.705v-116.454h39v112.6l4.393-3.731 7.607 5.33v-114.199h155v110.85l9.751 8.03 13.916-10.019 11.467 9.996 12.866-9.608v-151.249z"/><path d="M1 1v150.998l8 5.96v-115.958h40v112.02l3.274-2.781.589-.498.633.441 6.504 4.556v-113.738h156v111.1l9.257 7.66 13.295-9.57.645-.463.598.521 10.864 9.47 12.341-9.219v-150.499h-262m-1-1h264v152l-13.391 10-11.474-10-13.891 10-10.244-8.4v-110.6h-154v114.66l-8.078-5.66-4.922 4.18v-113.18h-38v116.95l-10-7.45v-152.5z" fill="#e5e5e5"/></g><path d="M61 157.66v-114.66h154v110.6l-2.145-1.6-12.555 10-13.809-10-14.229 10-12.972-10-12.973 10-13.811-10-12.136 10-13.391-10-14.229 10-12.972-10-12.974 10-5.804-4.34z" fill="#e5e5e5"/><path d="M253 36c0-7.732-6.268-14-14-14s-14 6.268-14 14 6.268 14 14 14 14-6.268 14-14z" fill="#e5e5e5"/><path d="M10 159.95v-116.95h38v113.18l-7.551 5.82-13.811-10-13.891 10-2.747-2.05z" fill="#e5e5e5"/><path d="M226 107v-35h25v35h-25z" fill="#e5e5e5"/><path d="M31.49 5h-26v6h26v-6z" fill="#e5e5e5"/><path fill="#e5e5e5" d="M55.49 5h-22v6h22z"/><path d="M122 6v4h92v-4h-92m-1-1h94v6h-94v-6z" fill="#e5e5e5"/><path fill="#e5e5e5" d="M79.49 5h-22v6h22z"/><path fill="#e5e5e5" d="M102.49 5h-13v6h13z"/><path fill="#e5e5e5" d="M87.49 5h-6v6h6z"/><path fill="#e5e5e5" d="M110.49 5h-6v6h6z"/><path fill="#e5e5e5" d="M255 5h-32v6h32z"/><path d="M262 14.5h-260" fill="#e5e5e5" stroke="#e5e5e5"/><path fill="#e5e5e5" d="M212 7h-2v2h2z"/><path d="M226 59v-5h25v5h-25z" fill="#e5e5e5"/><path d="M226 132.625v-35h25v35h-25z" fill="#8acdff"/><rect width="20.438" height="2.176" rx=".151" ry=".107" x="-248.719" y="108.59" transform="scale(-1 1)" fill="#fff"/><rect width="20.438" height="2.176" rx=".151" ry=".107" x="-248.719" y="113.831" transform="scale(-1 1)" fill="#fff"/><rect width="20.438" height="6.188" rx=".151" ry=".303" x="-248.719" y="124.313" transform="scale(-1 1)" fill="#2693ff"/><g transform="matrix(-.747 0 0 .747 256.705 33.453)" fill="#fff"><rect width="1.823" height="1.882" rx=".013" ry=".092" x="20.273" y="125.738"/><rect width="1.823" height="1.882" rx=".013" ry=".092" x="26.655" y="125.738"/><rect width="1.823" height="1.882" rx=".013" ry=".092" x="23.464" y="125.738"/></g><rect width="20.438" height="2.176" rx=".151" ry=".107" x="-248.719" y="103.349" transform="scale(-1 1)" fill="#fff"/><rect width="20.438" height="2.176" rx=".151" ry=".107" x="-248.719" y="119.072" transform="scale(-1 1)" fill="#fff"/></svg> \ No newline at end of file
diff --git a/MLEB/UniversalLanguageSelector/resources/images/display.png b/MLEB/UniversalLanguageSelector/resources/images/display.png
new file mode 100644
index 00000000..032310d7
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/resources/images/display.png
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/resources/images/display.svg b/MLEB/UniversalLanguageSelector/resources/images/display.svg
new file mode 100644
index 00000000..98f93f2c
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/resources/images/display.svg
@@ -0,0 +1 @@
+<?xml version="1.0" encoding="UTF-8"?><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20"><path d="M.002 2.275v12.945h8.405c.535 1.624-.975 1.786-1.902 2.505 0 0 2.293-.024 3.439-.024 1.144 0 3.432.024 3.432.024-.905-.688-2.355-.868-1.902-2.505h8.527v-12.945h-20zm6.81 1.84h.797l3.313 8.466h-1.043l-1.043-2.638h-3.374l-1.043 2.638h-.982zm.368 1.104c-.084.369-.211.785-.368 1.227l-.982 2.577h2.699l-.982-2.577c-.128-.33-.234-.747-.368-1.227zm7.117.982c.753 0 1.295.157 1.656.491.365.334.552.858.552 1.595v4.294h-.675l-.184-.859h-.062c-.315.396-.605.655-.92.798-.311.138-.758.184-1.227.184-.626 0-1.115-.168-1.472-.491-.353-.323-.491-.754-.491-1.35 0-1.275 1.028-1.963 3.068-2.025h1.043v-.429c0-.495-.091-.87-.307-1.104-.211-.238-.574-.307-1.043-.307-.526 0-1.115.107-1.779.429l-.307-.675c.311-.169.674-.333 1.043-.429.373-.096.732-.123 1.104-.123zm.307 3.313c-.761.027-1.318.157-1.656.368-.334.207-.491.54-.491.982 0 .346.1.617.307.798.211.181.544.245.92.245.595 0 1.012-.164 1.35-.491.342-.326.552-.762.552-1.35v-.552z" fill="#434343"/></svg> \ No newline at end of file
diff --git a/MLEB/UniversalLanguageSelector/resources/images/help.png b/MLEB/UniversalLanguageSelector/resources/images/help.png
new file mode 100644
index 00000000..27e2a41e
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/resources/images/help.png
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/resources/images/help.svg b/MLEB/UniversalLanguageSelector/resources/images/help.svg
new file mode 100644
index 00000000..21bf00b6
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/resources/images/help.svg
@@ -0,0 +1 @@
+<?xml version="1.0" encoding="UTF-8"?><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 18 18.000001"><path d="M9 1.5c-4.141 0-7.5 3.358-7.5 7.5 0 4.142 3.359 7.501 7.5 7.501 4.143 0 7.5-3.359 7.5-7.501s-3.356-7.5-7.5-7.5zm-.001 11.943c-.613 0-1.067-.49-1.067-1.08 0-.614.454-1.093 1.067-1.093.59 0 1.068.479 1.068 1.093 0 .589-.479 1.08-1.068 1.08zm1.522-4.639c-.515.405-.712.663-.712 1.239v.356h-1.571v-.43c0-1.081.32-1.522.822-1.915.504-.393.811-.602.811-1.166 0-.479-.295-.749-.883-.749-.504 0-.946.135-1.412.454l-.749-1.287c.613-.43 1.375-.737 2.381-.737 1.362 0 2.505.749 2.505 2.184-.001 1.019-.566 1.559-1.192 2.049z" fill="#575757"/></svg> \ No newline at end of file
diff --git a/MLEB/UniversalLanguageSelector/resources/images/input.png b/MLEB/UniversalLanguageSelector/resources/images/input.png
new file mode 100644
index 00000000..13c72709
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/resources/images/input.png
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/resources/images/input.svg b/MLEB/UniversalLanguageSelector/resources/images/input.svg
new file mode 100644
index 00000000..5b11b20e
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/resources/images/input.svg
@@ -0,0 +1 @@
+<?xml version="1.0" encoding="UTF-8"?><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20"><path d="M9 1.281c-.124.259-.185.599-.5.688-.55.081-1.133.018-1.688 0-.866-.032-1.733-.148-2.594 0-.588.157-.953.727-1.188 1.25-.178.416-.271.836-.344 1.281h-2.688v11.5h20v-11.5h-16.344c.109-.52.203-1.057.563-1.469.222-.231.587-.17.875-.188 1.212.003 2.415.179 3.625.063.463-.058.812-.455.969-.875l.188-.438-.875-.313zm-7.125 5.844h1.563c.094 0 .188.093.188.188v1.531c0 .094-.093.188-.188.188h-1.563c-.094 0-.156-.093-.156-.188v-1.531c0-.094.062-.188.156-.188zm2.844 0h1.563c.094 0 .156.093.156.188v1.531c0 .094-.062.188-.156.188h-1.563c-.094 0-.156-.093-.156-.188v-1.531c0-.094.062-.188.156-.188zm2.844 0h1.563c.094 0 .156.093.156.188v1.531c0 .094-.062.188-.156.188h-1.563c-.094 0-.188-.093-.188-.188v-1.531c0-.094.093-.188.188-.188zm2.813 0h1.563c.094 0 .188.093.188.188v1.531c0 .094-.093.188-.188.188h-1.563c-.094 0-.156-.093-.156-.188v-1.531c0-.094.062-.188.156-.188zm2.844 0h1.563c.094 0 .156.093.156.188v1.531c0 .094-.062.188-.156.188h-1.563c-.094 0-.156-.093-.156-.188v-1.531c0-.094.062-.188.156-.188zm2.844 0h1.531c.094 0 .188.093.188.188v1.531c0 .094-.093.188-.188.188h-1.531c-.094 0-.188-.093-.188-.188v-1.531c0-.094.093-.188.188-.188zm-12.844 3h1.563c.094 0 .156.093.156.188v1.563c0 .094-.062.156-.156.156h-1.563c-.094 0-.156-.062-.156-.156v-1.563c0-.094.062-.188.156-.188zm2.906 0h1.563c.094 0 .188.093.188.188v1.563c0 .094-.093.156-.188.156h-1.563c-.094 0-.156-.062-.156-.156v-1.563c0-.094.062-.188.156-.188zm2.938 0h1.531c.094 0 .188.093.188.188v1.563c0 .094-.093.156-.188.156h-1.531c-.094 0-.188-.062-.188-.156v-1.563c0-.094.093-.188.188-.188zm2.906 0h1.563c.094 0 .156.093.156.188v1.563c0 .094-.062.156-.156.156h-1.563c-.094 0-.188-.062-.188-.156v-1.563c0-.094.093-.188.188-.188zm2.906 0h1.563c.094 0 .156.093.156.188v1.563c0 .094-.062.156-.156.156h-1.563c-.094 0-.156-.062-.156-.156v-1.563c0-.094.062-.188.156-.188zm-10.875 3.563h12c.088 0 .156.068.156.156v.844c0 .088-.068.156-.156.156h-12c-.088 0-.156-.068-.156-.156v-.844c0-.088.068-.156.156-.156z" fill="#434343"/></svg> \ No newline at end of file
diff --git a/MLEB/UniversalLanguageSelector/resources/images/remove-input.png b/MLEB/UniversalLanguageSelector/resources/images/remove-input.png
new file mode 100644
index 00000000..fa53810d
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/resources/images/remove-input.png
Binary files differ
diff --git a/MLEB/UniversalLanguageSelector/resources/images/remove-input.svg b/MLEB/UniversalLanguageSelector/resources/images/remove-input.svg
new file mode 100644
index 00000000..d44b5c92
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/resources/images/remove-input.svg
@@ -0,0 +1 @@
+<?xml version="1.0" encoding="UTF-8"?><svg xmlns="http://www.w3.org/2000/svg" width="20" height="16"><path d="M9 1.281c-.124.259-.185.599-.5.688-.55.081-1.133.018-1.688 0-.866-.032-1.733-.148-2.594 0-.588.157-.953.727-1.188 1.25-.178.416-.271.836-.344 1.281h-2.688v11.5h20v-11.5h-16.344c.109-.52.203-1.057.563-1.469.222-.231.587-.17.875-.188 1.212.003 2.415.179 3.625.063.463-.058.812-.455.969-.875l.188-.438-.875-.313zm-7.125 5.844h1.563c.094 0 .188.093.188.188v1.531c0 .094-.093.188-.188.188h-1.563c-.094 0-.156-.093-.156-.188v-1.531c0-.094.062-.188.156-.188zm2.844 0h1.563c.094 0 .156.093.156.188v1.531c0 .094-.062.188-.156.188h-1.563c-.094 0-.156-.093-.156-.188v-1.531c0-.094.062-.188.156-.188zm2.844 0h1.563c.094 0 .156.093.156.188v1.531c0 .094-.062.188-.156.188h-1.563c-.094 0-.188-.093-.188-.188v-1.531c0-.094.093-.188.188-.188zm2.813 0h1.563c.094 0 .188.093.188.188v1.531c0 .094-.093.188-.188.188h-1.563c-.094 0-.156-.093-.156-.188v-1.531c0-.094.062-.188.156-.188zm2.844 0h1.563c.094 0 .156.093.156.188v1.531c0 .094-.062.188-.156.188h-1.563c-.094 0-.156-.093-.156-.188v-1.531c0-.094.062-.188.156-.188zm2.844 0h1.531c.094 0 .188.093.188.188v1.531c0 .094-.093.188-.188.188h-1.531c-.094 0-.188-.093-.188-.188v-1.531c0-.094.093-.188.188-.188zm-12.844 3h1.563c.094 0 .156.093.156.188v1.563c0 .094-.062.156-.156.156h-1.563c-.094 0-.156-.062-.156-.156v-1.563c0-.094.062-.188.156-.188zm2.906 0h1.563c.094 0 .188.093.188.188v1.563c0 .094-.093.156-.188.156h-1.563c-.094 0-.156-.062-.156-.156v-1.563c0-.094.062-.188.156-.188zm2.938 0h1.531c.094 0 .188.093.188.188v1.563c0 .094-.093.156-.188.156h-1.531c-.094 0-.188-.062-.188-.156v-1.563c0-.094.093-.188.188-.188zm2.906 0h1.563c.094 0 .156.093.156.188v1.563c0 .094-.062.156-.156.156h-1.563c-.094 0-.188-.062-.188-.156v-1.563c0-.094.093-.188.188-.188zm2.906 0h1.563c.094 0 .156.093.156.188v1.563c0 .094-.062.156-.156.156h-1.563c-.094 0-.156-.062-.156-.156v-1.563c0-.094.062-.188.156-.188zm-10.875 3.563h12c.088 0 .156.068.156.156v.844c0 .088-.068.156-.156.156h-12c-.088 0-.156-.068-.156-.156v-.844c0-.088.068-.156.156-.156z" fill="#565656" transform="scale(.8) translate(2.5 -.2)"/><path d="M2.719 15.279l14.561-14.559" stroke="#565656" stroke-width="1.2"/></svg> \ No newline at end of file
diff --git a/MLEB/UniversalLanguageSelector/resources/js/ext.uls.compactlinks.js b/MLEB/UniversalLanguageSelector/resources/js/ext.uls.compactlinks.js
new file mode 100644
index 00000000..20c44e9f
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/resources/js/ext.uls.compactlinks.js
@@ -0,0 +1,346 @@
+/**
+ * Compact the interlanguage links in the sidebar
+ *
+ * Copyright (C) 2012-2014 Alolita Sharma, Amir Aharoni, Arun Ganesh, Brandon Harris,
+ * Niklas Laxström, Pau Giner, Santhosh Thottingal, Siebrand Mazeland, Niharika Kohli
+ * and other contributors. See CREDITS for a list.
+ *
+ * UniversalLanguageSelector is dual licensed GPLv2 or later and MIT. You don't
+ * have to do anything special to choose one license or the other and you don't
+ * have to notify anyone which license you are using. You are free to use
+ * UniversalLanguageSelector in commercial projects as long as the copyright
+ * header is left intact. See files GPL-LICENSE and MIT-LICENSE for details.
+ *
+ * @file
+ * @ingroup Extensions
+ * @licence GNU GPL-2.0+
+ * @licence MIT License
+ */
+
+( function ( $, mw ) {
+ 'use strict';
+
+ /**
+ * For the given array, remove duplicates
+ * @param {Array} originalArray
+ * @return de-duplicated array
+ */
+ function unique( originalArray ) {
+ var uniqueArray = [];
+
+ $.each( originalArray, function ( i, v ) {
+ if ( $.inArray( v, uniqueArray ) === -1 ) {
+ uniqueArray.push( v );
+ }
+ } );
+
+ return uniqueArray;
+ }
+
+ /**
+ * @class
+ */
+ function CompactInterlanguageList( interlanguageList, options ) {
+ this.$interlanguageList = $( interlanguageList );
+ this.options = $.extend( {}, $.fn.compactInterlanguageList.defaults, options );
+ this.interlanguageList = {};
+ this.compactList = {};
+ this.$trigger = null;
+ this.compactSize = 0;
+ this.listSize = 0;
+ this.init();
+ }
+
+ CompactInterlanguageList.prototype = {
+ /**
+ * Initialize the plugin
+ */
+ init: function () {
+ this.interlanguageList = this.getInterlanguageList();
+ this.listSize = this.getListSize();
+
+ if ( this.listSize <= this.options.max ) {
+ // Not enough languages to compact the list
+ return;
+ }
+
+ // If the interlanguage list is of moderate size, the compact size is 7.
+ this.compactSize = ( this.listSize <= 12 ) ? 7 : this.options.max;
+ this.hideOriginal();
+ this.compactList = this.getCompactList();
+ this.render();
+ this.listen();
+ },
+
+ /**
+ * Render the compacted interlanguage list and triggers
+ */
+ render: function () {
+ var language;
+
+ for ( language in this.compactList ) {
+ this.showLanguage( language );
+ }
+
+ this.addTrigger();
+ },
+
+ /**
+ * Bind to event handlers and listen for events
+ */
+ listen: function () {
+ var languages,
+ compactLinks = this,
+ dir = $( 'html' ).prop( 'dir' ),
+ interlanguageListLeft,
+ interlanguageListWidth,
+ ulsLanguageList = {};
+
+ languages = $.map( compactLinks.interlanguageList, function ( language, languageCode ) {
+ ulsLanguageList[ languageCode ] = language.autonym;
+
+ return languageCode;
+ } );
+
+ // Calculate the left and width values
+ interlanguageListLeft = compactLinks.$interlanguageList.offset().left;
+ interlanguageListWidth = compactLinks.$interlanguageList.width();
+ // Attach ULS to the trigger
+ compactLinks.$trigger.uls( {
+ onReady: function () {
+ this.$menu.addClass( 'interlanguage-uls-menu' );
+ },
+ /**
+ * Language selection handler
+ * @param {string} language language code
+ */
+ onSelect: function ( language ) {
+ var previousLanguages = mw.uls.getPreviousLanguages();
+
+ previousLanguages.push( language );
+ previousLanguages = unique( previousLanguages );
+ mw.uls.setPreviousLanguages( previousLanguages );
+ window.location.href = compactLinks.interlanguageList[ language ].href;
+ },
+ onVisible: function () {
+ // Calculate the positioning of the panel
+ // according to the position of the trigger icon
+ if ( dir === 'rtl' ) {
+ this.left = interlanguageListLeft - this.$menu.width();
+ } else {
+ this.left = interlanguageListLeft + interlanguageListWidth;
+ }
+ this.$menu.css( 'left', this.left );
+ },
+ languageDecorator: function ( $languageLink, language ) {
+ // set href according to language
+ $languageLink.prop( 'href', compactLinks.interlanguageList[ language ].href );
+ },
+ // Use compact version of ULS
+ compact: true,
+ // Top position of the language selector. Top it 250px above to take care of
+ // caret pointing the trigger. See .interlanguage-uls-menu:after style definition
+ top: compactLinks.$trigger.offset().top - compactLinks.$trigger.height() / 2 - 250,
+ // List of languages to be shown
+ languages: ulsLanguageList,
+ // Show common languages
+ quickList: compactLinks.filterByCommonLanguages( languages )
+ } );
+ },
+
+ /**
+ * Get the compacted interlanguage list as associative array
+ * @return {Object}
+ */
+ getCompactList: function () {
+ var language, languages, compactLanguages, index,
+ compactedList = {};
+
+ languages = $.map( this.interlanguageList, function ( element, index ) {
+ return index;
+ } );
+
+ compactLanguages = this.compact( languages );
+
+ for ( index = 0; index < compactLanguages.length; index++ ) {
+ language = compactLanguages[ index ];
+ compactedList[ language ] = this.interlanguageList[ language ];
+ }
+
+ return compactedList;
+ },
+
+ /**
+ * Compact a given array of languages
+ * @param {Array} languages
+ * @return {Array} compacted array
+ */
+ compact: function ( languages ) {
+ var compactLanguages = [];
+
+ // Add user-defined assistant languages on wikis with Translate extension.
+ compactLanguages = compactLanguages.concat( this.filterByAssistantLanguages() );
+
+ // Add previously selected languages.
+ // Previous languages are always the better suggestion
+ // because the user has explicitly chosen them.
+ compactLanguages = compactLanguages.concat( this.filterByPreviousLanguages() );
+
+ // Add all common languages to the beginning of array.
+ // These are the most probable languages predicted by ULS.
+ compactLanguages = compactLanguages.concat( this.filterByCommonLanguages( languages ) );
+
+ // Finally add the whole languages array too.
+ // We will remove duplicates and cut down to required size.
+ compactLanguages = compactLanguages.concat( languages );
+
+ // Remove duplicates
+ compactLanguages = unique( compactLanguages );
+
+ // Cut to compact size and sort
+ compactLanguages = compactLanguages.slice( 0, this.compactSize ).sort();
+
+ return compactLanguages;
+ },
+
+ /**
+ * Filter the language list by previous languages.
+ * Not all previous languages will be present in interlanguage links,
+ * so we are filtering them.
+ * @return {Array} List of language codes supported by the article
+ */
+ filterByPreviousLanguages: function ( languages ) {
+ var previousLanguages = mw.uls.getPreviousLanguages();
+
+ return $.grep( previousLanguages, function ( language ) {
+ return $.inArray( language, languages ) >= 0;
+ } );
+ },
+
+ /**
+ * Filter the language list by common languages.
+ * Common languages are the most probable languages predicted by ULS.
+ * @return {Array} List of language codes supported by the article
+ */
+ filterByCommonLanguages: function ( languages ) {
+ var commonLanguages = mw.uls.getFrequentLanguageList();
+
+ return $.grep( commonLanguages, function ( language ) {
+ return $.inArray( language, languages ) >= 0;
+ } );
+ },
+
+ /**
+ * Filter the language list by Translate's assistant languages.
+ * Where available, they're languages deemed useful by the user.
+ * @return {Array} List of those language codes which are supported by article
+ */
+ filterByAssistantLanguages: function ( languages ) {
+ var assistantLanguages = mw.user.options.get( 'translate-editlangs' );
+
+ if ( assistantLanguages && assistantLanguages !== 'default' ) {
+ return $.grep( assistantLanguages.split(/,\s*/), function ( language ) {
+ return $.inArray( language, languages ) >= 0;
+ } );
+ }
+
+ return [];
+ },
+
+ /**
+ * Find out the existing languages supported
+ * by the article and fetch their href.
+ * @return {Object} List of existing language codes and their hrefs
+ */
+ getInterlanguageList: function getInterlanguageList() {
+ var interlanguageList = {};
+
+ this.$interlanguageList.find( 'li.interlanguage-link > a' ).each( function () {
+ var $this = $( this );
+
+ interlanguageList[ $this.attr( 'lang' ) ] = {
+ href: $this.attr( 'href' ),
+ autonym: $this.text()
+ };
+ } );
+
+ return interlanguageList;
+ },
+
+ /**
+ * Get the size of the interlanguage list
+ */
+ getListSize: function () {
+ return $.map( this.interlanguageList, function ( item, index ) {
+ return index;
+ } ).length;
+ },
+
+ /**
+ * Hide the original interlanguage list
+ */
+ hideOriginal: function () {
+ this.$interlanguageList.find( '.interlanguage-link' ).hide();
+ },
+
+ /**
+ * Add the trigger at the bottom of the language list
+ */
+ addTrigger: function () {
+ var $trigger, $triggerLabel;
+
+ $trigger = $( '<button>' )
+ .addClass( 'mw-interlanguage-selector mw-ui-button active' )
+ .html( '&#8230' ); // '…'
+
+ $triggerLabel = $( '<label>' )
+ .attr( 'id', 'more-lang-label' )
+ .text( $.i18n(
+ 'ext-uls-compact-link-count',
+ mw.language.convertNumber( this.listSize - this.compactSize )
+ ) );
+
+ this.$interlanguageList.append( $trigger, $triggerLabel );
+ this.$trigger = $trigger;
+ },
+
+ /**
+ * Show a language from the interlanguage list
+ * @param {string} language
+ */
+ showLanguage: function ( language ) {
+ this.$interlanguageList.find( '.interwiki-' + language ).show();
+ }
+ };
+
+ /**
+ * CompactInterlanguageList Plugin
+ * @param {Object} [option]
+ */
+ $.fn.compactInterlanguageList = function ( option ) {
+ return this.each( function () {
+ var $this = $( this ),
+ data = $this.data( 'compactinterlanguagelist' ),
+ options = typeof option === 'object' && option;
+
+ if ( !data ) {
+ $this.data( 'compactinterlanguagelist', ( data = new CompactInterlanguageList( this, options ) ) );
+ }
+
+ if ( typeof option === 'string' ) {
+ data[ option ]();
+ }
+ } );
+ };
+
+ /**
+ * Defaults
+ */
+ $.fn.compactInterlanguageList.defaults = {
+ max: 9 // Compact the list to this size
+ };
+
+ $( document ).ready( function () {
+ $( '#p-lang ul' ).compactInterlanguageList();
+ } );
+}( jQuery, mediaWiki ) );
diff --git a/MLEB/UniversalLanguageSelector/resources/js/ext.uls.displaysettings.js b/MLEB/UniversalLanguageSelector/resources/js/ext.uls.displaysettings.js
new file mode 100644
index 00000000..bf57aed4
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/resources/js/ext.uls.displaysettings.js
@@ -0,0 +1,717 @@
+/**
+ * ULS-based display settings panel
+ *
+ * Copyright (C) 2012 Alolita Sharma, Amir Aharoni, Arun Ganesh, Brandon Harris,
+ * Niklas Laxström, Pau Giner, Santhosh Thottingal, Siebrand Mazeland and other
+ * contributors. See CREDITS for a list.
+ *
+ * UniversalLanguageSelector is dual licensed GPLv2 or later and MIT. You don't
+ * have to do anything special to choose one license or the other and you don't
+ * have to notify anyone which license you are using. You are free to use
+ * UniversalLanguageSelector in commercial projects as long as the copyright
+ * header is left intact. See files GPL-LICENSE and MIT-LICENSE for details.
+ *
+ * @file
+ * @ingroup Extensions
+ * @licence GNU General Public Licence 2.0 or later
+ * @licence MIT License
+ */
+( function ( $, mw ) {
+ 'use strict';
+
+ var template = '<div class="uls-display-settings">'
+
+ + '<div class="row">' // Tab switcher buttons
+ + '<div class="twelve columns uls-display-settings-tab-switcher">'
+ + '<div class="uls-button-group">'
+ + '<button id="uls-display-settings-language-tab" class="button down" data-i18n="ext-uls-display-settings-language-tab"></button>'
+ + '<button id="uls-display-settings-fonts-tab" class="button" data-i18n="ext-uls-display-settings-fonts-tab"></button>'
+ + '</div>'
+ + '</div>'
+ + '</div>'
+
+ + '<div class="ext-uls-sub-panel uls-display-settings-language-tab">' // Begin display language sub-panel
+
+ // "Display language", title above the buttons row
+ + '<div class="row">'
+ + '<div class="eleven columns">'
+ + '<h4 data-i18n="ext-uls-display-settings-ui-language"></h4>'
+ + '</div>'
+ + '</div>'
+
+ // UI languages buttons row
+ + '<div class="row">'
+ + '<div class="uls-ui-languages eleven columns">'
+ + '<p data-i18n="ext-uls-language-buttons-help"></p>'
+ + '</div>'
+ + '</div>'
+
+ + '</div>' // End display language section
+
+ + '<div class="ext-uls-sub-panel uls-display-settings-fonts-tab hide">' // Begin font settings section, hidden by default
+
+ // "Font settings" title
+ + '<div class="row">'
+ + '<div class="twelve columns">'
+ + '<h4 data-i18n="ext-uls-display-settings-font-settings"></h4>'
+ + '</div>'
+ + '</div>'
+
+ + '<div id="uls-display-settings-font-selectors" class="uls-display-settings-font-selectors">'
+
+ // Menus font selection dropdown with label
+ + '<div class="row uls-font-item uls-content-fonts">'
+ + '<div class="six columns">'
+ + '<label class="uls-font-label" id="content-font-selector-label"></label>'
+ + '</div>'
+ + '<select id="content-font-selector" class="four columns end uls-font-select"></select>'
+ + '</div>'
+
+ // Content font selection dropdown with label
+ + '<div class="row uls-font-item uls-ui-fonts">'
+ + '<div class="six columns">'
+ + '<label class="uls-font-label" id="ui-font-selector-label"></label>'
+ + '</div>'
+ + '<select id="ui-font-selector" class="four columns end uls-font-select"></select>'
+ + '</div>'
+
+ + '</div>' // End font selectors
+
+ // Webfonts enabling checkbox with label
+ + '<div class="row">'
+ + '<div class="eleven columns">'
+ + '<label class="checkbox">'
+ + '<input type="checkbox" id="webfonts-enable-checkbox" />'
+ + '<strong data-i18n="ext-uls-webfonts-settings-title"></strong> '
+ + '<span data-i18n="ext-uls-webfonts-settings-info"></span> '
+ + '<a target="_blank" href="https://www.mediawiki.org/wiki/Universal_Language_Selector/WebFonts" data-i18n="ext-uls-webfonts-settings-info-link"></a>'
+ + '</label>'
+ + '</div>'
+ + '</div>'
+
+ + '</div>'; // End font settings section
+
+ function DisplaySettings( $parent ) {
+ this.nameI18n = 'ext-uls-display-settings-title-short';
+ this.descriptionI18n = 'ext-uls-display-settings-desc';
+ this.$template = $( template );
+ this.uiLanguage = this.getUILanguage();
+ this.contentLanguage = this.getContentLanguage();
+ this.$webfonts = null;
+ this.$parent = $parent;
+ this.savedRegistry = $.extend( true, {}, mw.webfonts.preferences );
+ }
+
+ DisplaySettings.prototype = {
+
+ constructor: DisplaySettings,
+
+ /**
+ * Render the module into a given target
+ */
+ render: function () {
+ this.$parent.$settingsPanel.empty();
+ this.$webfonts = $( 'body' ).data( 'webfonts' );
+ this.$parent.$settingsPanel.append( this.$template );
+ this.prepareLanguages();
+ this.prepareUIFonts();
+ this.prepareContentFonts();
+ this.prepareWebfontsCheckbox();
+
+ // Usually this is already loaded, but when changing language it
+ // might not be.
+ this.preview( this.uiLanguage );
+ this.listen();
+ this.dirty = false;
+ },
+
+ prepareWebfontsCheckbox: function () {
+ var webFontsEnabled = this.isWebFontsEnabled();
+
+ if ( !webFontsEnabled ) {
+ $( '#uls-display-settings-font-selectors' ).addClass( 'hide' );
+ }
+
+ $( '#webfonts-enable-checkbox' ).prop( 'checked', webFontsEnabled );
+ },
+
+ isWebFontsEnabled: function () {
+ return mw.webfonts.preferences.isEnabled();
+ },
+
+ /**
+ * Prepare the UI language selector
+ */
+ prepareLanguages: function () {
+ var loginUri, $loginCta,
+ displaySettings = this,
+ SUGGESTED_LANGUAGES_NUMBER = 3,
+ anonsAllowed = mw.config.get( 'wgULSAnonCanChangeLanguage' ),
+ languagesForButtons, $languages, suggestedLanguages,
+ lang, i, language, $button, autonym;
+
+ // Don't let anonymous users change interface language
+ if ( !anonsAllowed && mw.user.isAnon() ) {
+ loginUri = new mw.Uri();
+ loginUri.query = {
+ title: 'Special:UserLogin'
+ };
+ $loginCta = $( '<p>' )
+ .attr( 'id', 'uls-display-settings-anon-log-in-cta' );
+ autonym = $.uls.data.getAutonym( this.contentLanguage );
+
+ this.$template.find( '.uls-display-settings-language-tab' )
+ .empty()
+ .append(
+ $( '<p>' ).append(
+ $( '<span>' )
+ .addClass( 'uls-display-settings-anon-label' )
+ // .html() is needed for correct parsing of the nbsp
+ .html( $.i18n( 'ext-uls-display-settings-anon-label' ) + '&#160;' ),
+ $( '<span>' )
+ .text( $.i18n( 'ext-uls-display-settings-anon-same-as-content', autonym ) )
+ ),
+ $loginCta
+ );
+
+ new mw.Api().parse( $.i18n( 'ext-uls-display-settings-anon-log-in-cta' ) )
+ .done( function ( parsedCta ) {
+ var deferred = new $.Deferred();
+
+ $loginCta.html( parsedCta ); // The parsed CTA is HTML
+ $loginCta.find( 'a' ).click( function ( event ) {
+ event.preventDefault();
+ // Because browsers navigate away when clicking a link,
+ // we are overriding the normal click behavior to allow
+ // the event be logged first - currently there is no
+ // local queue for events. Since the hook system does not
+ // allow returning values, we have this ugly hack
+ // for event logging to delay the page loading if event logging
+ // is enabled. The promise is passed to the hook, so that
+ // if event logging is enabled, in can resole the promise
+ // immediately to avoid extra delays.
+ deferred.done( function () {
+ window.location.href = event.target.href;
+ } );
+
+ mw.hook( 'mw.uls.login.click' ).fire( deferred );
+
+ // Delay is zero if event logging is not enabled
+ window.setTimeout( function () {
+ deferred.resolve();
+ }, mw.config.get( 'wgULSEventLogging' ) * 500 );
+ } );
+ } );
+
+ return;
+ }
+
+ $languages = this.$template.find( 'div.uls-ui-languages' );
+ suggestedLanguages = this.frequentLanguageList()
+ // Common world languages, for the case that there are
+ // too few suggested languages
+ .concat( [ 'en', 'zh', 'fr' ] );
+
+ // Content language is always on the first button
+ languagesForButtons = [ this.contentLanguage ];
+
+ // This is needed when drawing the panel for the second time
+ // after selecting a different language
+ $languages.find( 'button' ).remove();
+
+ // UI language must always be present
+ if ( this.uiLanguage !== this.contentLanguage ) {
+ languagesForButtons.push( this.uiLanguage );
+ }
+
+ for ( lang in suggestedLanguages ) {
+ // Skip already found languages
+ if ( $.inArray( suggestedLanguages[lang], languagesForButtons ) > -1 ) {
+ continue;
+ }
+
+ languagesForButtons.push( suggestedLanguages[lang] );
+
+ // No need to add more languages than buttons
+ if ( languagesForButtons.length >= SUGGESTED_LANGUAGES_NUMBER ) {
+ break;
+ }
+ }
+
+ function buttonHandler( button ) {
+ return function () {
+ displaySettings.markDirty();
+ displaySettings.uiLanguage = button.data( 'language' ) || displaySettings.uiLanguage;
+ $( 'div.uls-ui-languages button.button' ).removeClass( 'down' );
+ button.addClass( 'down' );
+ displaySettings.prepareUIFonts();
+ displaySettings.preview( displaySettings.uiLanguage );
+ };
+ }
+
+ // Add the buttons for the most likely languages
+ for ( i = 0; i < SUGGESTED_LANGUAGES_NUMBER; i++ ) {
+ language = languagesForButtons[i];
+ $button = $( '<button>' )
+ .addClass( 'button uls-language-button autonym' )
+ .text( $.uls.data.getAutonym( language ) )
+ .prop( {
+ lang: language,
+ dir: $.uls.data.getDir( language )
+ } );
+
+ if ( language === this.uiLanguage ) {
+ $button.addClass( 'down' );
+ }
+
+ $button.data( 'language', language );
+ $languages.append( $button );
+ $button.on( 'click', buttonHandler( $button ) );
+ }
+
+ this.prepareMoreLanguages();
+ },
+
+ /**
+ * Prepare the more languages button. It is a ULS trigger
+ */
+ prepareMoreLanguages: function () {
+ var $languages, $moreLanguagesButton,
+ displaySettings = this;
+
+ $languages = this.$template.find( 'div.uls-ui-languages' );
+ $moreLanguagesButton = $( '<button>' )
+ .prop( 'class', 'uls-more-languages' )
+ .addClass( 'button' ).text( '...' );
+
+ $languages.append( $moreLanguagesButton );
+ // Show the long language list to select a language for display settings
+ $moreLanguagesButton.uls( {
+ left: displaySettings.$parent.left,
+ top: displaySettings.$parent.top,
+ onReady: function () {
+ var uls = this,
+ $back = $( '<a>' )
+ .data( 'i18n', 'ext-uls-back-to-display-settings' )
+ .i18n();
+
+ $back.click( function () {
+ uls.hide();
+ displaySettings.$parent.show();
+ } );
+
+ uls.$menu.find( 'div.uls-title-region' ).append( $back );
+ uls.$menu.find( 'h1.uls-title' )
+ .data( 'i18n', 'ext-uls-display-settings-ui-language' )
+ .i18n();
+ uls.$menu.prepend(
+ $( '<span>' ).addClass( 'caret-before' ),
+ $( '<span>' ).addClass( 'caret-after' )
+ );
+ },
+ onVisible: function () {
+ var $parent;
+
+ mw.uls.addEventLoggingTriggers();
+
+ if ( !displaySettings.$parent.$window.hasClass( 'callout' ) ) {
+ // Callout menus will have position rules.
+ // Others use the default position.
+ return;
+ }
+
+ $parent = $( '#language-settings-dialog' );
+
+ // Re-position the element according to the window that called it
+ if ( parseInt( $parent.css( 'left' ), 10 ) ) {
+ this.$menu.css( 'left', $parent.css( 'left' ) );
+ }
+ if ( parseInt( $parent.css( 'top' ), 10 ) ) {
+ this.$menu.css( 'top', $parent.css( 'top' ) );
+ }
+ // If the ULS is shown in the the sidebar,
+ // add a caret pointing to the icon
+ if ( displaySettings.$parent.$window.hasClass( 'callout' ) ) {
+ this.$menu.addClass( 'callout' );
+ } else {
+ this.$menu.removeClass( 'callout' );
+ }
+ },
+ onSelect: function ( langCode ) {
+ displaySettings.uiLanguage = langCode;
+ displaySettings.$template.attr( 'lang', langCode );
+ // This re-renders the whole thing
+ displaySettings.$parent.show();
+ // And the only thing we need to take care of is to enable
+ // the apply button
+ displaySettings.markDirty();
+ },
+ quickList: function () {
+ return mw.uls.getFrequentLanguageList();
+ }
+ } );
+
+ $moreLanguagesButton.on( 'click', function () {
+ displaySettings.$parent.hide();
+ mw.hook( 'mw.uls.interface.morelanguages' ).fire();
+ } );
+ },
+
+ /**
+ * Preview the settings panel in the given language
+ * @param {String} language Language code
+ */
+ preview: function ( language ) {
+ var displaySettings = this;
+
+ // Reset the language and font for the panel.
+ this.$template.attr( 'lang', language )
+ .css( 'font-family', '' );
+ $.i18n().locale = language;
+ mw.uls.loadLocalization( language ).done( function () {
+ displaySettings.i18n();
+ if ( displaySettings.$webfonts ) {
+ displaySettings.$webfonts.refresh();
+ }
+ } );
+ },
+
+ /**
+ * Get previous languages
+ * @returns {Array}
+ */
+ frequentLanguageList: function () {
+ return mw.uls.getFrequentLanguageList();
+ },
+
+ /**
+ * Get the current user interface language.
+ * @returns String Current UI language
+ */
+ getUILanguage: function () {
+ return mw.config.get( 'wgUserLanguage' );
+ },
+
+ /**
+ * Get the current content language.
+ * @returns String Current content language
+ */
+ getContentLanguage: function () {
+ return mw.config.get( 'wgContentLanguage' );
+ },
+
+ /**
+ * Prepare a font selector section with a label and a selector element.
+ *
+ * @param target String 'ui' or 'content'
+ */
+ prepareFontSelector: function ( target ) {
+ var language, fonts, $fontSelector, savedFont,
+ $systemFont, $fontLabel, $fontsSection;
+
+ // Get the language code from the right property -
+ // uiLanguage or contentLanguage
+ language = this[ target + 'Language' ];
+ if ( this.isWebFontsEnabled() ) {
+ fonts = this.$webfonts.list( language );
+ } else {
+ fonts = [];
+ }
+
+ // Possible classes:
+ // uls-ui-fonts
+ // uls-content-fonts
+ $fontsSection = this.$template.find( 'div.uls-' + target + '-fonts' );
+
+ // The section may be visible from the previous time
+ // the user opened the dialog, so we need to hide it.
+ if ( fonts.length === 0 ) {
+ $fontsSection.hide();
+ return;
+ }
+
+ $fontsSection.show();
+ // Possible ids:
+ // uls-ui-font-selector
+ // uls-content-font-selector
+ $fontSelector = this.$template.find( '#' + target + '-font-selector' );
+
+ // Remove all current fonts
+ $fontSelector.find( 'option' ).remove();
+
+ // Get the saved font using the fontSelector defined in mw.webfonts.setup
+ savedFont = this.$webfonts.getFont( language );
+ $.each( fonts, function ( key, font ) {
+ var $fontOption;
+
+ if ( font !== 'system' ) {
+ $fontOption = $( '<option>' ).attr( 'value', font ).text( font );
+ $fontSelector.append( $fontOption );
+ $fontOption.prop( 'selected', savedFont === font );
+ }
+ } );
+
+ $fontSelector.prop( 'disabled', !this.isWebFontsEnabled() );
+
+ // Using attr() instead of data() because jquery.i18n doesn't
+ // currently see latter.
+ $systemFont = $( '<option>' )
+ .val( 'system' )
+ .attr( 'data-i18n', 'ext-uls-webfonts-system-font' );
+ $fontSelector.append( $systemFont );
+ $systemFont.prop( 'selected', savedFont === 'system' || !savedFont );
+
+ // Possible ids:
+ // uls-ui-font-selector-label
+ // uls-content-font-selector-label
+ $fontLabel = this.$template.find( '#' + target + '-font-selector-label' );
+ $fontLabel.empty();
+ $fontLabel.append( $( '<strong>' ) );
+
+ // Possible messages:
+ // ext-uls-webfonts-select-for-ui-info
+ // ext-uls-webfonts-select-for-content-info
+ $fontLabel.append( $( '<div>' )
+ .attr( 'data-i18n', 'ext-uls-webfonts-select-for-' + target + '-info' ) );
+ },
+
+ /**
+ * i18n this settings panel
+ */
+ i18n: function () {
+ this.$parent.i18n();
+ this.$template.find( '#ui-font-selector-label strong' )
+ .text( $.i18n( 'ext-uls-webfonts-select-for', $.uls.data.getAutonym( this.uiLanguage ) ) );
+ this.$template.find( '#content-font-selector-label strong' )
+ .text( $.i18n( 'ext-uls-webfonts-select-for', $.uls.data.getAutonym( this.contentLanguage ) ) );
+ },
+
+ /**
+ * Prepare the font selector for UI language.
+ */
+ prepareUIFonts: function () {
+ if ( this.uiLanguage === this.contentLanguage ) {
+ this.$template.find( 'div.uls-ui-fonts' ).hide();
+ return;
+ }
+
+ this.prepareFontSelector( 'ui' );
+ },
+
+ /**
+ * Prepare the font selector for UI language.
+ */
+ prepareContentFonts: function () {
+ this.prepareFontSelector( 'content' );
+ },
+
+ /**
+ * Mark dirty, there are unsaved changes. Enable the apply button.
+ * Useful in many places when something changes.
+ */
+ markDirty: function () {
+ this.dirty = true;
+ this.$parent.$window.find( 'button.uls-settings-apply' ).removeAttr( 'disabled' );
+ },
+
+ /**
+ * Register general event listeners
+ */
+ listen: function () {
+ var displaySettings = this,
+ $contentFontSelector = this.$template.find( '#content-font-selector' ),
+ $uiFontSelector = this.$template.find( '#ui-font-selector' ),
+ $tabButtons = displaySettings.$template.find( '.uls-display-settings-tab-switcher button' );
+
+ $( '#webfonts-enable-checkbox' ).on( 'click', function () {
+ var $fontSelectors = $( '#uls-display-settings-font-selectors' );
+
+ displaySettings.markDirty();
+
+ if ( this.checked ) {
+ mw.loader.using( 'ext.uls.webfonts.fonts', function () {
+ mw.webfonts.setup();
+
+ // Allow the webfonts library to finish loading
+ setTimeout( function() {
+ displaySettings.$webfonts = $( 'body' ).data( 'webfonts' );
+
+ mw.webfonts.preferences.enable();
+
+ displaySettings.prepareContentFonts();
+ displaySettings.prepareUIFonts();
+
+ displaySettings.i18n();
+ displaySettings.$webfonts.apply( $uiFontSelector.find( 'option:selected' ) );
+ displaySettings.$webfonts.refresh();
+
+ $fontSelectors.removeClass( 'hide' );
+ }, 1 );
+ } );
+ } else {
+ $fontSelectors.addClass( 'hide' );
+ mw.webfonts.preferences.disable();
+ mw.webfonts.preferences.setFont( displaySettings.uiLanguage, 'system' );
+ displaySettings.$webfonts.refresh();
+
+ $contentFontSelector.prop( 'disabled', true );
+ $uiFontSelector.prop( 'disabled', true );
+ }
+ } );
+
+ $uiFontSelector.on( 'change', function () {
+ displaySettings.markDirty();
+ mw.webfonts.preferences.setFont( displaySettings.uiLanguage,
+ $( this ).find( 'option:selected' ).val()
+ );
+ displaySettings.$webfonts.refresh();
+ } );
+
+ $contentFontSelector.on( 'change', function () {
+ displaySettings.markDirty();
+ mw.webfonts.preferences.setFont( displaySettings.contentLanguage,
+ $( this ).find( 'option:selected' ).val()
+ );
+ displaySettings.$webfonts.refresh();
+ } );
+
+ $tabButtons.on( 'click', function () {
+ var $button = $( this );
+
+ if ( $button.hasClass( 'down' ) ) {
+ return;
+ }
+
+ displaySettings.$template.find( '.ext-uls-sub-panel' ).each( function () {
+ var $subPanel = $( this );
+
+ if ( $subPanel.hasClass( $button.attr( 'id' ) ) ) {
+ $subPanel.removeClass( 'hide' );
+ } else {
+ $subPanel.addClass( 'hide' );
+ }
+ } );
+
+ displaySettings.$parent.position();
+ $tabButtons.filter( '.down' ).removeClass( 'down' );
+ $button.addClass( 'down' );
+
+ } );
+
+ },
+
+ /**
+ * Close the language settings window.
+ * Depending on the context, actions vary.
+ */
+ close: function () {
+ this.$parent.close();
+ },
+
+ /**
+ * Callback for save preferences
+ */
+ onSave: function ( success ) {
+ if ( success ) {
+ if ( this.$webfonts ) {
+ // Live font update
+ this.$webfonts.refresh();
+ }
+
+ this.$parent.hide();
+ // we delay change UI language to here, because it causes a page refresh
+ if ( this.uiLanguage !== this.getUILanguage() ) {
+ mw.uls.changeLanguage( this.uiLanguage );
+ }
+ // Disable apply button
+ this.$parent.disableApplyButton();
+ } // @todo What to do in case of failure?
+ },
+
+ /**
+ * Handle the apply button press.
+ * Note that the button press may not be from the input settings module.
+ * For example, a user can change input settings and then go to display settings panel,
+ * do some changes and press apply button there. That press is applicable for all
+ * modules.
+ */
+ apply: function () {
+ var displaySettings = this;
+
+ if ( !displaySettings.dirty ) {
+ // No changes to save in this module.
+ return;
+ }
+
+ displaySettings.$parent.setBusy( true );
+ // Save the preferences
+ mw.webfonts.preferences.save( function ( result ) {
+ var newWebfontsEnable, oldWebfontsEnable, webfontsEvent,
+ newRegistry = mw.webfonts.preferences.registry,
+ oldRegistry = displaySettings.savedRegistry.registry,
+ newFonts = newRegistry.fonts || {},
+ oldFonts = oldRegistry.fonts || {};
+
+ newWebfontsEnable = newRegistry.webfontsEnabled;
+ oldWebfontsEnable = oldRegistry.webfontsEnabled;
+ if ( oldWebfontsEnable === undefined ) {
+ oldWebfontsEnable = mw.config.get( 'wgULSWebfontsEnabled' );
+ }
+
+ if ( newWebfontsEnable !== oldWebfontsEnable ) {
+ webfontsEvent = newWebfontsEnable ?
+ 'mw.uls.webfonts.enable' :
+ 'mw.uls.webfonts.disable';
+ mw.hook( webfontsEvent ).fire( 'displaysettings' );
+ }
+
+ if ( newFonts[displaySettings.uiLanguage] !== oldFonts[displaySettings.uiLanguage] ) {
+ mw.hook( 'mw.uls.font.change' ).fire(
+ 'interface', displaySettings.uiLanguage, newFonts[displaySettings.uiLanguage]
+ );
+ }
+
+ if ( newFonts[displaySettings.contentLanguage] !== oldFonts[displaySettings.contentLanguage] ) {
+ mw.hook( 'mw.uls.font.change' ).fire(
+ 'content', displaySettings.contentLanguage, newFonts[displaySettings.contentLanguage]
+ );
+ }
+
+ // closure for not losing the scope
+ displaySettings.onSave( result );
+ displaySettings.dirty = false;
+ // Update the back-up preferences for the case of canceling
+ displaySettings.savedRegistry = $.extend( true, {}, mw.webfonts.preferences );
+ displaySettings.$parent.setBusy( false );
+ } );
+ },
+
+ /**
+ * Cancel the changes done by user for display settings
+ */
+ cancel: function () {
+ if ( !this.dirty ) {
+ this.close();
+ return;
+ }
+ // Reload preferences
+ mw.webfonts.preferences = $.extend( true, {}, this.savedRegistry );
+
+ // Restore fonts
+ if ( this.$webfonts ) {
+ this.$webfonts.refresh();
+ }
+
+ // Restore content and UI language
+ this.uiLanguage = this.getUILanguage();
+ this.contentLanguage = this.getContentLanguage();
+
+ this.close();
+ }
+ };
+
+ // Register this module to language settings modules
+ $.fn.languagesettings.modules = $.extend( $.fn.languagesettings.modules, {
+ display: DisplaySettings
+ } );
+}( jQuery, mediaWiki ) );
diff --git a/MLEB/UniversalLanguageSelector/resources/js/ext.uls.eventlogger.js b/MLEB/UniversalLanguageSelector/resources/js/ext.uls.eventlogger.js
new file mode 100644
index 00000000..19643e88
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/resources/js/ext.uls.eventlogger.js
@@ -0,0 +1,247 @@
+/**
+ * ULS Event logger
+ *
+ * Copyright (C) 2012-2013 Alolita Sharma, Amir Aharoni, Arun Ganesh, Brandon Harris,
+ * Niklas Laxström, Pau Giner, Santhosh Thottingal, Siebrand Mazeland and other
+ * contributors. See CREDITS for a list.
+ *
+ * UniversalLanguageSelector is dual licensed GPLv2 or later and MIT. You don't
+ * have to do anything special to choose one license or the other and you don't
+ * have to notify anyone which license you are using. You are free to use
+ * UniversalLanguageSelector in commercial projects as long as the copyright
+ * header is left intact. See files GPL-LICENSE and MIT-LICENSE for details.
+ *
+ * @file
+ * @ingroup Extensions
+ * @licence GNU General Public Licence 2.0 or later
+ * @licence MIT License
+ */
+( function ( $, mw ) {
+ 'use strict';
+
+ /**
+ * ULS Event logger
+ *
+ * @since 2013.08
+ * @see https://meta.wikimedia.org/wiki/Schema:UniversalLanguageSelector
+ */
+ function ULSEventLogger() {
+ this.logEventQueue = $.Callbacks( 'memory once' );
+ this.init();
+ this.listen();
+ }
+
+ ULSEventLogger.prototype = {
+ init: function () {
+ var eventLogger = this;
+
+ mw.eventLog.setDefaults( 'UniversalLanguageSelector', {
+ version: 1,
+ token: mw.user.id(),
+ contentLanguage: mw.config.get( 'wgContentLanguage' ),
+ interfaceLanguage: mw.config.get( 'wgUserLanguage' )
+ } );
+
+ eventLogger.logEventQueue.fire();
+ },
+
+ /**
+ * Local wrapper for 'mw.eventLog.logEvent'
+ *
+ * @param {Object} event Event action and optional fields
+ * @param {String} schema The schema; 'UniversalLanguageSelector' is the default
+ * @return {jQuery.Promise} jQuery Promise object for the logging call
+ */
+ log: function ( event, schema ) {
+ // We need to create our own deferred for two reasons:
+ // - logEvent might not be executed immediately
+ // - we cannot reject a promise returned by it
+ // So we proxy the original promises status updates.
+ var deferred = $.Deferred();
+
+ schema = schema || 'UniversalLanguageSelector';
+
+ this.logEventQueue.add( function () {
+ mw.eventLog.logEvent( schema, event )
+ .done( deferred.resolve )
+ .fail( deferred.reject );
+ } );
+
+ return deferred.promise();
+ },
+
+ /**
+ * Listen for event logging
+ */
+ listen: function () {
+ // Register handlers for event logging triggers
+ mw.hook( 'mw.uls.settings.open' ).add( $.proxy( this.ulsSettingsOpen, this ) );
+ mw.hook( 'mw.uls.language.revert' ).add( $.proxy( this.ulsLanguageRevert, this ) );
+ mw.hook( 'mw.uls.ime.enable' ).add( $.proxy( this.enableIME, this ) );
+ mw.hook( 'mw.uls.ime.disable' ).add( $.proxy( this.disableIME, this ) );
+ mw.hook( 'mw.uls.ime.change' ).add( $.proxy( this.changeIME, this ) );
+ mw.hook( 'mw.uls.login.click' ).add( $.proxy( this.loginClick, this ) );
+ mw.hook( 'mw.uls.ime.morelanguages' ).add( $.proxy( this.imeMoreLanguages, this ) );
+ mw.hook( 'mw.uls.interface.morelanguages' ).add( $.proxy( this.interfaceMoreLanguages, this ) );
+ mw.hook( 'mw.uls.interface.language.change' ).add( $.proxy( this.interfaceLanguageChange, this ) );
+ mw.hook( 'mw.uls.font.change' ).add( $.proxy( this.fontChange, this ) );
+ mw.hook( 'mw.uls.webfonts.enable' ).add( $.proxy( this.enableWebfonts, this ) );
+ mw.hook( 'mw.uls.webfonts.disable' ).add( $.proxy( this.disableWebfonts, this ) );
+
+ $( 'body' ).on( 'noresults.uls', '.uls-menu .uls-languagefilter',
+ $.proxy( this.noSearchResults, this )
+ );
+ },
+
+ /**
+ * Log language settings open
+ * @param {string} context Where it was opened from
+ */
+ ulsSettingsOpen: function ( context ) {
+ this.log( {
+ action: 'settings-open',
+ context: context
+ } );
+ },
+
+ /**
+ * Log language revert
+ * @param {jQuery.Deferred} deferred
+ */
+ ulsLanguageRevert: function ( deferred ) {
+ this.log( { action: 'ui-lang-revert' } ).always( deferred.resolve() );
+ },
+
+ /**
+ * Log IME disabling
+ * @param {string} context Where the setting was changed.
+ */
+ disableIME: function ( context ) {
+ this.log( { action: 'ime-disable', context: context } );
+ },
+
+ /**
+ * Log IME enabling
+ * @param {string} context Where the setting was changed.
+ */
+ enableIME: function ( context ) {
+ this.log( { action: 'ime-enable', context: context } );
+ },
+
+ /**
+ * Log IME change
+ * @param {string} inputMethod
+ */
+ changeIME: function ( inputMethod ) {
+ this.log( {
+ action: 'ime-change',
+ inputMethod: inputMethod
+ } );
+ },
+
+ /**
+ * Log login link click in display settings.
+ * @param {jQuery.Deferred} deferred
+ */
+ loginClick: function ( deferred ) {
+ this.log( { action: 'login-click' } ).always( deferred.resolve );
+ },
+
+ /**
+ * More languages item in IME menu is clicked
+ */
+ imeMoreLanguages: function () {
+ this.log( {
+ action: 'more-languages-access',
+ context: 'ime'
+ } );
+ },
+
+ /**
+ * Log interface language change
+ *
+ * @param {string} language language code
+ * @param {jQuery.Deferred} deferred
+ */
+ interfaceLanguageChange: function ( language, deferred ) {
+ var logParams = {
+ action: 'language-change',
+ context: 'interface',
+ interfaceLanguage: language
+ };
+
+ if ( mw.uls.languageSelectionMethod !== undefined ) {
+ logParams.languageSelectionMethod = mw.uls.languageSelectionMethod;
+ }
+
+ this.log( logParams ).always( deferred.resolve );
+ },
+
+ /**
+ * More languages in display settings is clicked
+ */
+ interfaceMoreLanguages: function () {
+ this.log( {
+ action: 'more-languages-access',
+ context: 'interface'
+ } );
+ },
+
+ /**
+ * Log font preference changes
+ *
+ * @param {string} context Either 'interface' or 'content'
+ * @param {string} language
+ * @param {string} font
+ */
+ fontChange: function ( context, language, font ) {
+ var logParams = {
+ action: 'font-change',
+ context: context
+ };
+
+ if ( context === 'interface' ) {
+ $.extend( logParams, {
+ interfaceFont: font,
+ // Override in case the user changed the ui language but hasn't applied it yet
+ interfaceLanguage: language
+ } );
+ } else {
+ logParams.contentFont = font;
+ }
+
+ this.log( logParams );
+ },
+
+ /**
+ * Log webfonts disabling
+ * @param {string} context Where the setting was changed.
+ */
+ disableWebfonts: function ( context ) {
+ this.log( { action: 'webfonts-disable', context: context } );
+ },
+
+ /**
+ * Log webfonts enabling
+ * @param {string} context Where the setting was changed.
+ */
+ enableWebfonts: function ( context ) {
+ this.log( { action: 'webfonts-enable', context: context } );
+ },
+
+ /**
+ * Log search strings which produce no search results.
+ * @param {jQuery.event} event The orignal event
+ * @param {string} context The query string
+ */
+ noSearchResults: function ( event, context ) {
+ this.log( {
+ action: 'no-search-results',
+ context: context
+ } );
+ }
+ };
+
+ mw.uls = mw.uls || {};
+ mw.uls.eventlogger = new ULSEventLogger();
+}( jQuery, mediaWiki ) );
diff --git a/MLEB/UniversalLanguageSelector/resources/js/ext.uls.geoclient.js b/MLEB/UniversalLanguageSelector/resources/js/ext.uls.geoclient.js
new file mode 100644
index 00000000..21d0d29b
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/resources/js/ext.uls.geoclient.js
@@ -0,0 +1,47 @@
+/**
+ * ULS GeoIP client
+ *
+ * Copyright (C) 2012 Alolita Sharma, Amir Aharoni, Arun Ganesh, Brandon Harris,
+ * Niklas Laxström, Pau Giner, Santhosh Thottingal, Siebrand Mazeland and other
+ * contributors. See CREDITS for a list.
+ *
+ * UniversalLanguageSelector is dual licensed GPLv2 or later and MIT. You don't
+ * have to do anything special to choose one license or the other and you don't
+ * have to notify anyone which license you are using. You are free to use
+ * UniversalLanguageSelector in commercial projects as long as the copyright
+ * header is left intact. See files GPL-LICENSE and MIT-LICENSE for details.
+ *
+ * @file
+ * @ingroup Extensions
+ * @licence GNU General Public Licence 2.0 or later
+ * @licence MIT License
+ */
+( function ( $, mw ) {
+ 'use strict';
+
+ mw.uls = mw.uls || {};
+ mw.uls.setGeo = function ( data ) {
+ window.Geo = data;
+ };
+
+ var currentProto, httpOnly, settings,
+ service = mw.config.get( 'wgULSGeoService' );
+
+ // Call the service only if defined, and if the current
+ // protocol is https, only if the service is not configured
+ // with http:// as the protocol
+ if ( service ) {
+ httpOnly = service.substring( 0, 7 ) === 'http://';
+ currentProto = document.location.protocol;
+ if ( !httpOnly || currentProto === 'http:' ) {
+ settings = {
+ cache: true,
+ dataType: 'jsonp',
+ jsonpCallback: 'mw.uls.setGeo'
+ };
+
+ $.ajax( service, settings );
+ }
+ }
+
+}( jQuery, mediaWiki ) );
diff --git a/MLEB/UniversalLanguageSelector/resources/js/ext.uls.i18n.js b/MLEB/UniversalLanguageSelector/resources/js/ext.uls.i18n.js
new file mode 100644
index 00000000..e854c197
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/resources/js/ext.uls.i18n.js
@@ -0,0 +1,63 @@
+/**
+ * ULS i18n preparation using jquery.i18n library
+ *
+ * Copyright (C) 2012-2013 Alolita Sharma, Amir Aharoni, Arun Ganesh, Brandon Harris,
+ * Niklas Laxström, Pau Giner, Santhosh Thottingal, Siebrand Mazeland and other
+ * contributors. See CREDITS for a list.
+ *
+ * UniversalLanguageSelector is dual licensed GPLv2 or later and MIT. You don't
+ * have to do anything special to choose one license or the other and you don't
+ * have to notify anyone which license you are using. You are free to use
+ * UniversalLanguageSelector in commercial projects as long as the copyright
+ * header is left intact. See files GPL-LICENSE and MIT-LICENSE for details.
+ *
+ * @file
+ * @ingroup Extensions
+ * @licence GNU General Public Licence 2.0 or later
+ * @licence MIT License
+ */
+( function ( $, mw ) {
+ 'use strict';
+
+ mw.uls = mw.uls || {};
+
+ // jquery.i18n has CLDRPluralRuleParser but MediaWiki also has the same
+ // parser. Reuse it by aliasing it to window.pluralRuleParser
+ window.pluralRuleParser = mw.libs.pluralRuleParser;
+
+ // JavaScript side i18n initialization
+ $.i18n( {
+ locale: mw.config.get( 'wgUserLanguage' )
+ } );
+
+ // ApiULSLocalization handles fallback in ULS
+ $.i18n.fallbacks = {};
+
+ /**
+ * Load localization messags for a locale to the jquery.i18n
+ * messagestore.
+ * Also called by RL module ResourceLoaderULSJsonMessageModule
+ * @param {string} locale the language code
+ * @param {Object} [messages]
+ * @return {jQuery.Promise}
+ */
+ mw.uls.loadLocalization = function ( locale, messages ) {
+ var i18n = $.i18n();
+
+ i18n.locale = locale;
+ if ( messages ) {
+ return i18n.load( messages, locale );
+ }
+ if ( i18n.messageStore.messages[locale] ) {
+ return $.Deferred().resolve();
+ }
+ return i18n.messageStore.load(
+ mw.util.wikiScript( 'api' ) + '?' + $.param( {
+ action: 'ulslocalization',
+ language: locale
+ } ),
+ locale
+ );
+ };
+
+}( jQuery, mediaWiki ) );
diff --git a/MLEB/UniversalLanguageSelector/resources/js/ext.uls.ime.js b/MLEB/UniversalLanguageSelector/resources/js/ext.uls.ime.js
new file mode 100644
index 00000000..e80ff0d4
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/resources/js/ext.uls.ime.js
@@ -0,0 +1,321 @@
+/**
+ * ULS - jQuery IME integration
+ *
+ * Copyright (C) 2012 Alolita Sharma, Amir Aharoni, Arun Ganesh, Brandon Harris,
+ * Niklas Laxström, Pau Giner, Santhosh Thottingal, Siebrand Mazeland and other
+ * contributors. See CREDITS for a list.
+ *
+ * UniversalLanguageSelector is dual licensed GPLv2 or later and MIT. You don't
+ * have to do anything special to choose one license or the other and you don't
+ * have to notify anyone which license you are using. You are free to use
+ * UniversalLanguageSelector in commercial projects as long as the copyright
+ * header is left intact. See files GPL-LICENSE and MIT-LICENSE for details.
+ *
+ * @file
+ * @ingroup Extensions
+ * @licence GNU General Public Licence 2.0 or later
+ * @licence MIT License
+ */
+( function ( $, mw ) {
+ 'use strict';
+
+ var mwImeRulesPath, inputSelector, inputPreferences, ulsIMEPreferences, customHelpLink;
+
+ mwImeRulesPath = mw.config.get( 'wgExtensionAssetsPath' ) +
+ '/UniversalLanguageSelector/lib/jquery.ime/';
+ inputSelector = 'input:not([type]), input[type=text], input[type=search], textarea, [contenteditable]';
+
+ inputPreferences = mw.uls.preferences();
+
+ mw.ime = mw.ime || {};
+
+ mw.ime.getLanguagesWithIME = function () {
+ var language,
+ ulsLanguages = mw.config.get( 'wgULSLanguages' ) || {},
+ availableLanguages = {};
+
+ for ( language in $.ime.languages ) {
+ availableLanguages[language] = ulsLanguages[language];
+ }
+
+ return availableLanguages;
+ };
+
+ mw.ime.getIMELanguageList = function () {
+ var unique = [],
+ imeLanguageList,
+ previousIMELanguages;
+
+ previousIMELanguages = $.ime.preferences.getPreviousLanguages() || [];
+ imeLanguageList = previousIMELanguages.concat( mw.uls.getFrequentLanguageList() );
+
+ $.each( imeLanguageList, function ( i, v ) {
+ if ( $.inArray( v, unique ) === -1 ) {
+ unique.push( v );
+ }
+ } );
+
+ return unique.slice( 0, 6 );
+ };
+
+ ulsIMEPreferences = {
+
+ save: function ( callback ) {
+ if ( !this.registry.isDirty ) {
+ if ( callback ) {
+ callback.call( this, true );
+ }
+
+ return;
+ }
+ // we don't want to save isDirty field.
+ this.registry.isDirty = undefined;
+ // get updated copy of preferences
+ inputPreferences = mw.uls.preferences();
+ inputPreferences.set( 'ime', this.registry );
+ inputPreferences.save( callback );
+ // reset the dirty bit
+ this.registry.isDirty = false;
+ },
+
+ load: function () {
+ this.registry = inputPreferences.get( 'ime' ) || this.registry;
+ },
+
+ disable: function () {
+ this.registry.isDirty = true;
+ this.registry.enable = false;
+ },
+
+ enable: function () {
+ this.registry.isDirty = true;
+ this.registry.enable = true;
+ },
+
+ isEnabled: function () {
+ if ( this.registry.enable === undefined ) {
+ return mw.config.get( 'wgULSIMEEnabled' );
+ } else {
+ return this.registry.enable;
+ }
+ },
+
+ getDefaultLanguage: function () {
+ return mw.config.get( 'wgContentLanguage' );
+ }
+ };
+
+ // Add a 'more settings' link that takes to input settings of ULS
+ customHelpLink = function () {
+ var $disableInputToolsLink, $moreSettingsLink,
+ imeselector = this;
+
+ $disableInputToolsLink = $( '<span>' )
+ .addClass( 'uls-ime-disable-link' )
+ .attr( 'data-i18n', 'ext-uls-input-disable' );
+
+ $moreSettingsLink = $( '<span>' )
+ .addClass( 'uls-ime-more-settings-link' );
+
+ // Apparently we depend on some styles which are loaded with
+ // these modules. This needs refactoring.
+ mw.loader.using( mw.uls.languageSettingsModules, function () {
+ $moreSettingsLink.languagesettings( {
+ defaultModule: 'input',
+ onClose: function () {
+ // on close of input settings, keep focus in input area.
+ imeselector.$element.focus();
+ },
+ top: imeselector.$element.offset().top
+ } );
+ } );
+
+ // Hide the menu.
+ $moreSettingsLink.on( 'click', function ( e ) {
+ imeselector.hide();
+ e.stopPropagation();
+ } );
+
+ $disableInputToolsLink.i18n();
+
+ $disableInputToolsLink.on( 'click', function ( e ) {
+ $.ime.preferences.disable();
+ imeselector.hide();
+ imeselector.$imeSetting.hide();
+ $.ime.preferences.save( function () {
+ mw.ime.disable();
+ imeNotification();
+ mw.hook( 'mw.uls.ime.disable' ).fire( 'menu' );
+ } );
+ e.stopPropagation();
+ } );
+
+ // If the webfonts are loaded, apply webfonts to the selector
+ if ( $.fn.webfonts ) {
+ imeselector.$menu.webfonts();
+ }
+
+ return $( '<div>' )
+ .addClass( 'uls-ime-menu-settings-item' )
+ .append( $disableInputToolsLink, $moreSettingsLink );
+ };
+
+ mw.ime.disable = function () {
+ $( inputSelector ).trigger( 'destroy.ime' );
+ };
+
+ mw.ime.init = function () {
+ if ( !$.ime ) {
+ // jquery.ime not loaded yet.
+ return;
+ }
+ if ( $.ime.preferences.isEnabled ) {
+ // mw.ime already initialized.
+ return;
+ }
+ // Extend the ime preference system
+ $.extend( $.ime.preferences, ulsIMEPreferences );
+ // MediaWiki specific overrides for jquery.ime
+ $.extend( $.ime.defaults, {
+ imePath: mwImeRulesPath
+ } );
+
+ // Load the ime preferences
+ $.ime.preferences.load();
+
+ $.fn.imeselector.Constructor.prototype.helpLink = customHelpLink;
+
+ // Override the autonym function for the case that
+ // somebody tries to select a language for which there are
+ // no input methods, which is possible in MediaWiki
+ $.fn.imeselector.Constructor.prototype.getAutonym = function ( languageCode ) {
+ return $.uls.data.getAutonym( languageCode );
+ };
+ };
+
+ /**
+ * Binds the event listeners.
+ */
+ mw.ime.setup = function () {
+ var imeSelectors = mw.config.get( 'wgULSImeSelectors' ).join( ', ' );
+
+ mw.ime.init();
+ $( 'body' ).on( 'focus.ime', imeSelectors, function () {
+ mw.ime.handleFocus( $( this ) );
+ } );
+ };
+
+ /**
+ * Loads necessary dependencies, checks input for validity and
+ * adds the ime menu for elements that should have it.
+ * @param {jquery.Element} $input
+ * @since 2013.11
+ */
+ mw.ime.handleFocus = function ( $input ) {
+ var noImeSelectors;
+
+ if ( $input.is( '.noime' ) || $input.data( 'ime' ) ) {
+ // input does not need IME or already applied
+ return;
+ }
+
+ noImeSelectors = mw.config.get( 'wgULSNoImeSelectors' ).join( ', ' );
+ if ( noImeSelectors.length && $input.is( noImeSelectors ) ) {
+ $input.addClass( 'noime' );
+
+ return;
+ }
+
+ if ( !$.ime.preferences.isEnabled() ) {
+ return;
+ }
+
+ if ( $input.is( '[contenteditable]' ) && !window.rangy ) {
+ // For supporting content editable divs we need rangy library
+ mw.loader.using( 'rangy.core', function () {
+ mw.ime.addIme( $input );
+ } );
+
+ return;
+ }
+
+ mw.ime.addIme( $input );
+ };
+
+ /**
+ * Just adds ime menu to any input element.
+ * @param {jquery.Element} $input
+ * @since 2013.11
+ */
+ mw.ime.addIme = function ( $input ) {
+ var imeselector;
+
+ $input.ime( {
+ languages: mw.ime.getIMELanguageList(),
+ languageSelector: function () {
+ var $ulsTrigger;
+
+ $ulsTrigger = $( '<a>' ).text( '...' )
+ .addClass( 'ime-selector-more-languages selectable-row selectable-row-item' )
+ .attr( {
+ title: $.i18n( 'ext-uls-input-settings-more-languages-tooltip' )
+ } );
+ $ulsTrigger.uls( {
+ onSelect: function ( language ) {
+ $input.data( 'imeselector' ).selectLanguage( language );
+ $input.focus();
+ },
+ languages: mw.ime.getLanguagesWithIME(),
+ top: $input.offset().top
+ } );
+
+ return $ulsTrigger;
+ },
+ helpHandler: function ( ime ) {
+ return $( '<a>' )
+ .attr( {
+ href: mw.msg( 'uls-ime-helppage' ).replace( '$1', ime ),
+ target: '_blank',
+ title: $.i18n( 'ext-uls-ime-help' )
+ } )
+ .addClass( 'ime-perime-help' )
+ .click( function ( event ) {
+ event.stopPropagation();
+ } );
+ }
+ } );
+
+ // Some fields may be uninitialized
+ imeselector = $input.data( 'imeselector' );
+ if ( imeselector ) {
+ imeselector.selectLanguage( imeselector.decideLanguage() );
+ imeselector.$element.on( 'setim.ime', function ( event, inputMethod ) {
+ mw.hook( 'mw.uls.ime.change' ).fire( inputMethod );
+ } );
+ }
+ };
+
+ function imeNotification() {
+ var notificationMsg = ( mw.config.get( 'wgULSPosition' ) === 'personal' ) ?
+ 'ext-uls-input-disable-notification-info-personal' :
+ 'ext-uls-input-disable-notification-info-interlanguage',
+ $notification = $( '<div>' )
+ .addClass( 'uls-ime-notification-bubble' )
+ .append(
+ $( '<div>' )
+ .attr( 'data-i18n', 'ext-uls-input-disable-notification' ),
+ $( '<div>' )
+ .addClass( 'link' )
+ .attr( 'data-i18n', 'ext-uls-input-disable-notification-undo' )
+ .on( 'click', function () {
+ $.ime.preferences.enable();
+ $.ime.preferences.save( function () {
+ mw.ime.setup();
+ } );
+ } ),
+ $( '<div>' ).attr( 'data-i18n', notificationMsg )
+ );
+
+ mw.notify( $notification.i18n() );
+ }
+}( jQuery, mediaWiki ) );
diff --git a/MLEB/UniversalLanguageSelector/resources/js/ext.uls.init.js b/MLEB/UniversalLanguageSelector/resources/js/ext.uls.init.js
new file mode 100644
index 00000000..d7c493b9
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/resources/js/ext.uls.init.js
@@ -0,0 +1,247 @@
+/**
+ * ULS startup script - MediaWiki specific customization for jquery.uls
+ *
+ * Copyright (C) 2012-2013 Alolita Sharma, Amir Aharoni, Arun Ganesh, Brandon Harris,
+ * Niklas Laxström, Pau Giner, Santhosh Thottingal, Siebrand Mazeland and other
+ * contributors. See CREDITS for a list.
+ *
+ * UniversalLanguageSelector is dual licensed GPLv2 or later and MIT. You don't
+ * have to do anything special to choose one license or the other and you don't
+ * have to notify anyone which license you are using. You are free to use
+ * UniversalLanguageSelector in commercial projects as long as the copyright
+ * header is left intact. See files GPL-LICENSE and MIT-LICENSE for details.
+ *
+ * @file
+ * @ingroup Extensions
+ * @licence GNU General Public Licence 2.0 or later
+ * @licence MIT License
+ */
+( function ( $, mw ) {
+ 'use strict';
+
+ // FIXME: Remove when ULS minimum MW version is 1.22
+ if ( mw.hook === undefined ) {
+ mw.hook = ( function () {
+ var lists = {},
+ slice = Array.prototype.slice;
+
+ return function ( name ) {
+ var list = lists[ name ] || ( lists[ name ] = $.Callbacks( 'memory' ) );
+
+ return {
+ add: list.add,
+ remove: list.remove,
+ fire: function () {
+ return list.fireWith( null, slice.call( arguments ) );
+ }
+ };
+ };
+ }() );
+ }
+
+ mw.uls = mw.uls || {};
+ mw.uls.previousLanguagesCookie = 'uls-previous-languages';
+ mw.uls.previousLanguageAutonymCookie = 'uls-previous-language-autonym';
+ mw.uls.languageSettingsModules = [ 'ext.uls.inputsettings', 'ext.uls.displaysettings' ];
+
+ // What was the last thing that the user did to select the language:
+ // * 'map' - clicked the map
+ // * 'search' - typed in the search box
+ // * 'common' - clicked a link in the "Common languages" section
+ // If the user just clicked in some other section, it remains undefined.
+ // This is useful for logging.
+ mw.uls.languageSelectionMethod = undefined;
+
+ /**
+ * Add event logging triggers, which are common to different
+ * ULS instances
+ */
+ mw.uls.addEventLoggingTriggers = function () {
+ // Remove previous values when reinitializing
+ mw.uls.languageSelectionMethod = undefined;
+
+ $( '#uls-map-block' ).on( 'click', function () {
+ mw.uls.languageSelectionMethod = 'map';
+ } );
+
+ $( '#uls-languagefilter' ).on( 'keydown', function () {
+ // If it's the first letter,
+ // log the usage of the search box
+ if ( $( this ).val() === '' ) {
+ mw.uls.languageSelectionMethod = 'search';
+ }
+ } );
+
+ $( '#uls-lcd-quicklist a' ).on( 'click', function () {
+ mw.uls.languageSelectionMethod = 'common';
+ } );
+ };
+
+ /**
+ * Change the language of wiki using setlang URL parameter
+ * @param {string} language Language code.
+ */
+ mw.uls.changeLanguage = function ( language ) {
+ var uri = new mw.Uri( window.location.href ),
+ deferred = new $.Deferred();
+
+ deferred.done( function () {
+ uri.extend( {
+ setlang: language
+ } );
+
+ window.location.href = uri.toString();
+ } );
+
+ mw.hook( 'mw.uls.interface.language.change' ).fire( language, deferred );
+
+ // Delay is zero if event logging is not enabled
+ window.setTimeout( function () {
+ deferred.resolve();
+ }, mw.config.get( 'wgULSEventLogging' ) * 500 );
+
+ };
+
+ mw.uls.setPreviousLanguages = function ( previousLanguages ) {
+ $.cookie( mw.uls.previousLanguagesCookie,
+ JSON.stringify( previousLanguages ), {
+ path: '/'
+ }
+ );
+ };
+
+ mw.uls.getPreviousLanguages = function () {
+ var previousLanguages = $.cookie( mw.uls.previousLanguagesCookie );
+
+ if ( !previousLanguages ) {
+ return [];
+ }
+
+ // return last 5 language changes
+ return JSON.parse( previousLanguages ).slice( -5 );
+ };
+
+ /**
+ * Returns the browser's user interface language or the system language.
+ * The caller should check the validity of the returned language code.
+ *
+ * @return {string} Language code or empty string.
+ */
+ mw.uls.getBrowserLanguage = function () {
+ // language is the standard property.
+ // userLanguage is only for IE and returns system locale.
+ // Empty string is a fallback in case both are undefined
+ // to avoid runtime error with split().
+ return ( window.navigator.language || window.navigator.userLanguage || '' ).split( '-' )[ 0 ];
+ };
+
+ /*jshint camelcase:false*/
+ mw.uls.getCountryCode = function () {
+ return window.Geo && ( window.Geo.country || window.Geo.country_code );
+ };
+
+ mw.uls.getAcceptLanguageList = function () {
+ return mw.config.get( 'wgULSAcceptLanguageList' ) || [];
+ };
+
+ /**
+ * Get a list of codes for languages to show in
+ * the "Common languages" section of the ULS.
+ * The list consists of the user's current selected language,
+ * the wiki's content language, the browser' UI language
+ * and Accept-Language, user's previous selected languages
+ * and finally, the languages of countryCode taken from the CLDR,
+ * taken by default from the user's geolocation.
+ *
+ * @param {String} [countryCode] Uppercase country code.
+ * @return {Array} List of language codes without duplicates.
+ */
+ mw.uls.getFrequentLanguageList = function ( countryCode ) {
+ var unique = [],
+ list = [
+ mw.config.get( 'wgUserLanguage' ),
+ mw.config.get( 'wgContentLanguage' ),
+ mw.uls.getBrowserLanguage()
+ ]
+ .concat( mw.uls.getPreviousLanguages() )
+ .concat( mw.uls.getAcceptLanguageList() );
+
+ countryCode = countryCode || mw.uls.getCountryCode();
+
+ if ( countryCode ) {
+ list = list.concat( $.uls.data.getLanguagesInTerritory( countryCode ) );
+ }
+
+ $.each( list, function ( i, v ) {
+ if ( $.inArray( v, unique ) === -1 ) {
+ unique.push( v );
+ }
+ } );
+
+ // Filter out unknown and unsupported languages
+ unique = $.grep( unique, function ( langCode ) {
+ var target;
+
+ // If the language is already known and defined, just use it
+ if ( $.fn.uls.defaults.languages[ langCode ] !== undefined ) {
+ return true;
+ }
+
+ // If the language is not immediately known,
+ // try to check is as a redirect
+ target = $.uls.data.isRedirect( langCode );
+
+ if ( target ) {
+ // Check that the redirect's target is known
+ // to this instance of ULS
+ return $.fn.uls.defaults.languages[ target ] !== undefined;
+ }
+
+ return false;
+ } );
+
+ return unique;
+ };
+
+ /**
+ * Checks whether the browser is supported.
+ * Browser support policy: http://www.mediawiki.org/wiki/Browser_support#Grade_A
+ * @return boolean
+ */
+ function isBrowserSupported() {
+ var blacklist = {
+ 'msie': [
+ [ '<=', 7 ]
+ ]
+ };
+
+ // jquery.client changed in MediaWiki 1.22.
+ // FIXME: Remove when ULS minimum MW version is 1.22.
+ if ( parseInt( mw.config.get( 'wgVersion' ).split( '.' )[ 1 ], '10' ) < 22 ) {
+ return !/MSIE [67]/i.test( navigator.userAgent );
+ }
+
+ return !$.client.test( blacklist, null, true );
+ }
+
+ /**
+ * Initialize ULS front-end if browser is supported.
+ *
+ * @param {Function} callback callback function to be called after initialization.
+ */
+ mw.uls.init = function ( callback ) {
+ if ( !isBrowserSupported() ) {
+ $( '#pt-uls' ).hide();
+
+ return;
+ }
+
+ if ( callback ) {
+ callback.call( this );
+ }
+ };
+
+ $( document ).ready( function () {
+ mw.uls.init();
+ } );
+}( jQuery, mediaWiki ) );
diff --git a/MLEB/UniversalLanguageSelector/resources/js/ext.uls.inputsettings.js b/MLEB/UniversalLanguageSelector/resources/js/ext.uls.inputsettings.js
new file mode 100644
index 00000000..c08de49f
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/resources/js/ext.uls.inputsettings.js
@@ -0,0 +1,570 @@
+/**
+ * ULS-based ime settings panel
+ *
+ * Copyright (C) 2012 Alolita Sharma, Amir Aharoni, Arun Ganesh, Brandon Harris,
+ * Niklas Laxström, Pau Giner, Santhosh Thottingal, Siebrand Mazeland and other
+ * contributors. See CREDITS for a list.
+ *
+ * UniversalLanguageSelector is dual licensed GPLv2 or later and MIT. You don't
+ * have to do anything special to choose one license or the other and you don't
+ * have to notify anyone which license you are using. You are free to use
+ * UniversalLanguageSelector in commercial projects as long as the copyright
+ * header is left intact. See files GPL-LICENSE and MIT-LICENSE for details.
+ *
+ * @file
+ * @ingroup Extensions
+ * @licence GNU General Public Licence 2.0 or later
+ * @licence MIT License
+ */
+( function ( $, mw ) {
+ 'use strict';
+
+ var template = '<div class="uls-input-settings">'
+ + '<div class="row">' // Top "Display settings" title
+ + '<div class="twelve columns">'
+ + '<h3 data-i18n="ext-uls-input-settings-title"></h3>'
+ + '</div>'
+ + '</div>'
+
+ // "Language for ime", title above the buttons row
+ + '<div class="row enabled-only uls-input-settings-languages-title">'
+ + '<div class="eleven columns">'
+ + '<h4 data-i18n="ext-uls-input-settings-ui-language"></h4>'
+ + '</div>'
+ + '</div>'
+
+ // UI languages buttons row
+ + '<div class="row enabled-only">'
+ + '<div class="uls-ui-languages eleven columns"></div>'
+ + '</div>'
+
+ // Web IMEs enabling chechbox with label
+ + '<div class="row enabled-only">'
+ + '<div class="eleven columns uls-input-settings-inputmethods-list">'
+ // "Input settings for language xyz" title
+ + '<h4 class="ext-uls-input-settings-imes-title"></h4>'
+ + '</div>'
+ + '</div>'
+
+ // Disable IME system button
+ + '<div class="row">'
+ + '<div class="eleven columns button uls-input-settings-disable-info"></div>'
+ + '<div class="six columns button uls-input-settings-toggle">'
+ + '<button class="active green button uls-input-toggle-button"></button>'
+ + '</div>'
+ + '</div>';
+
+ function InputSettings( $parent ) {
+ this.nameI18n = 'ext-uls-input-settings-title-short';
+ this.descriptionI18n = 'ext-uls-input-settings-desc';
+ this.$template = $( template );
+ this.uiLanguage = this.getInterfaceLanguage();
+ this.contentLanguage = this.getContentLanguage();
+ this.$imes = null;
+ this.$parent = $parent;
+ // ime system is lazy loaded, make sure it is initialized
+ mw.ime.init();
+ this.savedRegistry = $.extend( true, {}, $.ime.preferences.registry );
+ }
+
+ InputSettings.prototype = {
+
+ constructor: InputSettings,
+
+ /**
+ * Render the module into a given target
+ */
+ render: function () {
+ var $enabledOnly,
+ webfonts = $( 'body' ).data( 'webfonts' );
+
+ this.dirty = false;
+ this.$parent.$settingsPanel.empty();
+ this.$imes = $( 'body' ).data( 'ime' );
+ this.$parent.$settingsPanel.append( this.$template );
+ $enabledOnly = this.$template.find( '.enabled-only' );
+ if ( $.ime.preferences.isEnabled() ) {
+ $enabledOnly.removeClass( 'hide' );
+ } else {
+ // Hide the language list and ime selector
+ $enabledOnly.addClass( 'hide' );
+ }
+
+ this.prepareLanguages();
+ this.prepareToggleButton();
+ this.$parent.i18n();
+
+ if ( webfonts ) {
+ webfonts.refresh();
+ }
+
+ this.listen();
+ },
+
+ /**
+ * Mark dirty, there are unsaved changes. Enable the apply button.
+ * Useful in many places when something changes.
+ */
+ markDirty: function () {
+ this.dirty = true;
+ this.$parent.$window.find( 'button.uls-settings-apply' ).prop( 'disabled', false );
+ },
+
+ prepareInputmethods: function ( language ) {
+ var index, inputSettings, $imeListContainer, defaultInputmethod,
+ imes, selected, imeId, $imeListTitle;
+
+ imes = $.ime.languages[language];
+
+ $imeListTitle = this.$template.find( '.ext-uls-input-settings-imes-title' );
+ $imeListContainer = this.$template.find( '.uls-input-settings-inputmethods-list' );
+
+ $imeListContainer.find( 'label' ).remove();
+
+ if ( !imes ) {
+ $imeListContainer.append( $( '<label>' )
+ .addClass( 'uls-input-settings-no-inputmethods' )
+ .text( $.i18n( 'ext-uls-input-settings-noime' ) ) );
+ $imeListTitle.text( '' );
+ return;
+ }
+
+ $imeListTitle.text( $.i18n( 'ext-uls-input-settings-ime-settings',
+ $.uls.data.getAutonym( language ) ) );
+
+ inputSettings = this;
+
+ defaultInputmethod = $.ime.preferences.getIM( language ) || imes.inputmethods[0];
+
+ for ( index in imes.inputmethods ) {
+ imeId = imes.inputmethods[index];
+ selected = defaultInputmethod === imeId;
+ $imeListContainer.append( inputSettings.renderInputmethodOption( imeId,
+ selected ) );
+ }
+
+ $imeListContainer.append( inputSettings.renderInputmethodOption( 'system',
+ defaultInputmethod === 'system' ) );
+
+ // Added input methods may increase the height of window. Make sure
+ // the entire window is in view port
+ this.$parent.position();
+ },
+
+ /**
+ * For the given input method id, render the selection option.
+ *
+ * @param {string} imeId Input method id
+ * @param {boolean} selected Whether the input is the currently selected one.
+ * @return {Object} jQuery object corresponding to the input method item.
+ */
+ renderInputmethodOption: function ( imeId, selected ) {
+ var $imeLabel, name, description, $helplink, inputmethod, $inputMethodItem;
+
+ if ( imeId !== 'system' && !$.ime.sources[imeId] ) {
+ // imeId not known for jquery.ime.
+ // It is very rare, but still validate it.
+ return $();
+ }
+
+ $imeLabel = $( '<label>' ).attr( {
+ 'for': imeId,
+ 'class': 'imelabel'
+ } );
+
+ $inputMethodItem = $( '<input type="radio">' ).attr( {
+ name: 'ime',
+ id: imeId,
+ value: imeId,
+ checked: selected
+ } );
+
+ $imeLabel.append( $inputMethodItem );
+
+ if ( imeId === 'system' ) {
+ name = $.i18n( 'ext-uls-disable-input-method' );
+ description = '';
+ $helplink = '';
+ } else {
+ inputmethod = $.ime.inputmethods[imeId];
+ $helplink = $( '<a>' )
+ .addClass( 'uls-ime-help' )
+ .text( $.i18n( 'ext-uls-ime-help' ) )
+ .attr( 'href', mw.msg( 'uls-ime-helppage' ).replace( '$1', imeId ) )
+ .attr( 'target', '_blank' );
+ if ( !inputmethod ) {
+ // The input method definition(rules) not loaded.
+ // We will show the name from $.ime.sources
+ name = $.ime.sources[imeId].name;
+ description = '';
+ } else {
+ name = inputmethod.name;
+ description = $.ime.inputmethods[imeId].description;
+ }
+ }
+
+ $imeLabel.append(
+ $( '<strong>' ).text( name ),
+ $( '<span>' ).text( description ),
+ $helplink
+ );
+
+ return $imeLabel;
+ },
+
+ /**
+ * Prepare the UI language selector
+ */
+ prepareLanguages: function () {
+ var inputSettings = this,
+ SUGGESTED_LANGUAGES_NUMBER = 3,
+ selectedImeLanguage = $.ime.preferences.getLanguage(),
+ languagesForButtons, $languages, suggestedLanguages,
+ lang, i, language, $button, $caret;
+
+ $languages = this.$template.find( '.uls-ui-languages' );
+
+ suggestedLanguages = this.frequentLanguageList()
+ // Common world languages, for the case that there are
+ // too few suggested languages
+ .concat( [ 'en', 'zh', 'fr' ] );
+
+ // Content language is always on the first button
+
+ languagesForButtons = [ this.contentLanguage ];
+
+ // This is needed when drawing the panel for the second time
+ // after selecting a different language
+ $languages.empty();
+
+ // Selected IME language may be different, and it must
+ // be present, too
+ if ( $.uls.data.languages[selectedImeLanguage] &&
+ $.inArray( selectedImeLanguage, languagesForButtons ) === -1 ) {
+ languagesForButtons.push( selectedImeLanguage );
+ }
+
+ // UI language must always be present
+ if ( this.uiLanguage !== this.contentLanguage &&
+ $.uls.data.languages[this.uiLanguage] &&
+ $.inArray( this.uiLanguage, languagesForButtons ) === -1 ) {
+ languagesForButtons.push( this.uiLanguage );
+ }
+
+ for ( lang in suggestedLanguages ) {
+ // Skip already found languages
+ if ( $.inArray( suggestedLanguages[lang], languagesForButtons ) > -1 ) {
+ continue;
+ }
+
+ languagesForButtons.push( suggestedLanguages[lang] );
+
+ // No need to add more languages than buttons
+ if ( languagesForButtons.length >= SUGGESTED_LANGUAGES_NUMBER ) {
+ break;
+ }
+ }
+
+ function buttonHandler( button ) {
+ return function () {
+ var language = button.data( 'language' );
+
+ if ( language !== $.ime.preferences.getLanguage() ) {
+ inputSettings.markDirty();
+ $.ime.preferences.setLanguage( language );
+ }
+ // Mark the button selected
+ $( '.uls-ui-languages .button' ).removeClass( 'down' );
+ button.addClass( 'down' );
+ inputSettings.prepareInputmethods( language );
+ };
+ }
+
+ // In case no preference exist for IME, selected language is contentLanguage
+ selectedImeLanguage = selectedImeLanguage || this.contentLanguage;
+ // Add the buttons for the most likely languages
+ for ( i = 0; i < SUGGESTED_LANGUAGES_NUMBER; i++ ) {
+ language = languagesForButtons[i];
+ $button = $( '<button>' )
+ .addClass( 'button uls-language-button autonym' )
+ .text( $.uls.data.getAutonym( language ) )
+ .prop( {
+ lang: language,
+ dir: $.uls.data.getDir( language )
+ } );
+
+ $button.data( 'language', language );
+ $caret = $( '<span>' ).addClass( 'uls-input-settings-caret' );
+
+ $languages.append( $button, $caret );
+
+ $button.on( 'click', buttonHandler( $button ) );
+
+ if ( language === selectedImeLanguage ) {
+ $button.click();
+ }
+ }
+
+ this.prepareMoreLanguages();
+ },
+
+ /**
+ * Prepare the more languages button. It is a ULS trigger
+ */
+ prepareMoreLanguages: function () {
+ var inputSettings = this,
+ $languages, $moreLanguagesButton;
+
+ $languages = this.$template.find( '.uls-ui-languages' );
+ $moreLanguagesButton = $( '<button>' )
+ .prop( 'class', 'uls-more-languages' )
+ .addClass( 'button' ).text( '...' );
+
+ $languages.append( $moreLanguagesButton );
+ // Show the long language list to select a language for ime settings
+ $moreLanguagesButton.uls( {
+ left: inputSettings.$parent.left,
+ top: inputSettings.$parent.top,
+ onReady: function () {
+ var uls = this,
+ $back = $( '<a>' )
+ .data( 'i18n', 'ext-uls-back-to-input-settings' )
+ .i18n();
+
+ $back.click( function () {
+ uls.hide();
+ inputSettings.$parent.show();
+ } );
+
+ uls.$menu.find( 'div.uls-title-region' ).append( $back );
+ uls.$menu.find( 'h1.uls-title' )
+ .data( 'i18n', 'ext-uls-input-settings-ui-language' )
+ .i18n();
+ uls.$menu.prepend(
+ $( '<span>' ).addClass( 'caret-before' ),
+ $( '<span>' ).addClass( 'caret-after' )
+ );
+ },
+ onVisible: function () {
+ if ( !inputSettings.$parent.$window.hasClass( 'callout' ) ) {
+ // callout menus will have position rules. others use
+ // default position
+ return;
+ }
+ var $parent = $( '#language-settings-dialog' );
+ // Re-position the element according to the window that called it
+ if ( parseInt( $parent.css( 'left' ), 10 ) ) {
+ this.$menu.css( 'left', $parent.css( 'left' ) );
+ }
+ if ( parseInt( $parent.css( 'top' ), 10 ) ) {
+ this.$menu.css( 'top', $parent.css( 'top' ) );
+ }
+
+ if ( inputSettings.$parent.$window.hasClass( 'callout' ) ) {
+ this.$menu.addClass( 'callout' );
+ } else {
+ this.$menu.removeClass( 'callout' );
+ }
+ },
+ onSelect: function ( langCode ) {
+ $.ime.preferences.setLanguage( langCode );
+ inputSettings.$parent.show();
+ inputSettings.prepareLanguages();
+ inputSettings.markDirty();
+ },
+ languages: mw.ime.getLanguagesWithIME()
+ } );
+
+ $moreLanguagesButton.on( 'click', function () {
+ inputSettings.$parent.hide();
+ mw.hook( 'mw.uls.ime.morelanguages' ).fire();
+ } );
+ },
+
+ prepareToggleButton: function () {
+ var $toggleButton, $toggleButtonDesc;
+
+ $toggleButton = this.$template.find( '.uls-input-toggle-button' );
+ $toggleButtonDesc = this.$template
+ .find( '.uls-input-settings-disable-info' );
+
+ if ( $.ime.preferences.isEnabled() ) {
+ $toggleButton.data( 'i18n', 'ext-uls-input-disable' );
+ $toggleButtonDesc.hide();
+ } else {
+ $toggleButton.data( 'i18n', 'ext-uls-input-enable' );
+ $toggleButtonDesc.data( 'i18n', 'ext-uls-input-disable-info' ).show();
+ }
+
+ $toggleButton.i18n();
+ $toggleButtonDesc.i18n();
+ },
+
+ /**
+ * Get previous languages
+ * @returns {Array}
+ */
+ frequentLanguageList: function () {
+ return mw.uls.getFrequentLanguageList();
+ },
+
+ /**
+ * Get the current user interface language.
+ * @returns String Current UI language
+ */
+ getInterfaceLanguage: function () {
+ return mw.config.get( 'wgUserLanguage' );
+ },
+
+ /**
+ * Get the current content language.
+ * @returns String Current content language
+ */
+ getContentLanguage: function () {
+ return mw.config.get( 'wgContentLanguage' );
+ },
+
+ /**
+ * Register general event listeners
+ */
+ listen: function () {
+ var inputSettings = this,
+ $imeListContainer;
+
+ $imeListContainer = this.$template.find( '.uls-input-settings-inputmethods-list' );
+
+ $imeListContainer.on( 'change', 'input:radio[name=ime]:checked', function () {
+ inputSettings.markDirty();
+ $.ime.preferences.setIM( $( this ).val() );
+ } );
+
+ inputSettings.$template.find( 'button.uls-input-toggle-button' )
+ .on( 'click', function () {
+ inputSettings.markDirty();
+
+ if ( $.ime.preferences.isEnabled() ) {
+ inputSettings.disableInputTools();
+ } else {
+ inputSettings.enableInputTools();
+ }
+ } );
+
+ },
+
+ /**
+ * Disable input tools
+ */
+ disableInputTools: function () {
+ $.ime.preferences.disable();
+ mw.ime.disable();
+ this.$template.find( '.enabled-only' ).addClass( 'hide' );
+ this.prepareToggleButton();
+ },
+
+ /**
+ * Enable input tools
+ */
+ enableInputTools: function () {
+ $.ime.preferences.enable();
+ mw.ime.setup();
+ this.$template.find( '.enabled-only' ).removeClass( 'hide' );
+ this.$template.scrollIntoView();
+ this.prepareToggleButton();
+ },
+
+ /**
+ * Close the language settings window.
+ * Depending on the context, actions vary.
+ */
+ close: function () {
+ this.$parent.close();
+ },
+
+ /**
+ * Callback for save preferences
+ */
+ onSave: function ( success ) {
+ if ( success ) {
+ // Live ime update
+ this.$parent.hide();
+ // Disable apply button
+ this.$parent.disableApplyButton();
+ }
+ // FIXME in case of failure. what to do?!
+ },
+
+ /**
+ * Handle the apply button press.
+ * Note that the button press may not be from the input settings module.
+ * For example, a user can change input settings and then go to display settings panel,
+ * do some changes and press apply button there. That press is applicable for all
+ * modules.
+ */
+ apply: function () {
+ var previousIM,
+ inputSettings = this,
+ previousLanguage = inputSettings.savedRegistry.language,
+ currentlyEnabled = $.ime.preferences.isEnabled(),
+ currentLanguage = $.ime.preferences.getLanguage(),
+ currentIM = $.ime.preferences.getIM( currentLanguage );
+
+ if ( !inputSettings.dirty ) {
+ // No changes to save in this module.
+ return;
+ }
+ inputSettings.$parent.setBusy( true );
+
+ if ( previousLanguage ) {
+ previousIM = inputSettings.savedRegistry.imes[previousLanguage];
+ }
+
+ if ( currentLanguage !== inputSettings.savedRegistry.language ||
+ currentIM !== previousIM
+ ) {
+ mw.hook( 'mw.uls.ime.change' ).fire( currentIM );
+ }
+
+ if ( inputSettings.savedRegistry.enable !== currentlyEnabled ) {
+ mw.hook( currentlyEnabled ? 'mw.uls.ime.enable' : 'mw.uls.ime.disable' )
+ .fire( 'inputsettings' );
+ }
+
+ // Save the preferences
+ $.ime.preferences.save( function ( result ) {
+ // closure for not losing the scope
+ inputSettings.onSave( result );
+ inputSettings.dirty = false;
+ // Update the back-up preferences for the case of canceling
+ inputSettings.savedRegistry = $.extend( true, {}, $.ime.preferences.registry );
+ inputSettings.$parent.setBusy( false );
+ } );
+ },
+
+ /**
+ * Cancel the changes done by user for input settings
+ */
+ cancel: function () {
+ if ( !this.dirty ) {
+ this.close();
+ return;
+ }
+ // Reload preferences
+ $.ime.preferences.registry = $.extend( true, {}, this.savedRegistry );
+ this.uiLanguage = this.getInterfaceLanguage();
+ this.contentLanguage = this.getContentLanguage();
+ // Restore the state of IME
+ if ( $.ime.preferences.isEnabled() ) {
+ mw.ime.setup();
+ } else {
+ mw.ime.disable();
+ }
+ this.close();
+ }
+ };
+
+ // Register this module to language settings modules
+ $.fn.languagesettings.modules = $.extend( $.fn.languagesettings.modules, {
+ input: InputSettings
+ } );
+
+}( jQuery, mediaWiki ) );
diff --git a/MLEB/UniversalLanguageSelector/resources/js/ext.uls.interface.js b/MLEB/UniversalLanguageSelector/resources/js/ext.uls.interface.js
new file mode 100644
index 00000000..265fa48b
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/resources/js/ext.uls.interface.js
@@ -0,0 +1,471 @@
+/**
+ * ULS interface integration logic
+ *
+ * Copyright (C) 2012-2013 Alolita Sharma, Amir Aharoni, Arun Ganesh, Brandon Harris,
+ * Niklas Laxström, Pau Giner, Santhosh Thottingal, Siebrand Mazeland and other
+ * contributors. See CREDITS for a list.
+ *
+ * UniversalLanguageSelector is dual licensed GPLv2 or later and MIT. You don't
+ * have to do anything special to choose one license or the other and you don't
+ * have to notify anyone which license you are using. You are free to use
+ * UniversalLanguageSelector in commercial projects as long as the copyright
+ * header is left intact. See files GPL-LICENSE and MIT-LICENSE for details.
+ *
+ * @file
+ * @ingroup Extensions
+ * @licence GNU General Public Licence 2.0 or later
+ * @licence MIT License
+ */
+( function ( $, mw ) {
+ 'use strict';
+
+ /**
+ * Construct the display settings link
+ * @return {jQuery}
+ */
+ function displaySettings() {
+ var $displaySettingsTitle, displaySettingsText, $displaySettings;
+
+ displaySettingsText = $.i18n( 'ext-uls-display-settings-desc' );
+ $displaySettingsTitle = $( '<div data-i18n="ext-uls-display-settings-title">' )
+ .addClass( 'settings-title' )
+ .attr( 'title', displaySettingsText );
+ $displaySettings = $( '<div>' )
+ .addClass( 'display-settings-block' )
+ .prop( 'id', 'display-settings-block' )
+ .append( $displaySettingsTitle.i18n() );
+
+ return $displaySettings;
+ }
+
+ /**
+ * Construct the input settings link
+ * @returns {jQuery}
+ */
+ function inputSettings() {
+ var $inputSettingsTitle, inputSettingsText, $inputSettings;
+
+ inputSettingsText = $.i18n( 'ext-uls-input-settings-desc' );
+ $inputSettingsTitle = $( '<div data-i18n="ext-uls-input-settings-title">' )
+ .addClass( 'settings-title' )
+ .attr( 'title', inputSettingsText );
+ $inputSettings = $( '<div>' )
+ .addClass( 'input-settings-block' )
+ .prop( 'id', 'input-settings-block' )
+ .append( $inputSettingsTitle.i18n() );
+
+ return $inputSettings;
+ }
+
+ /**
+ * Add display settings link to the settings bar in ULS
+ * @param {Object} uls The ULS object
+ */
+ function addDisplaySettings( uls ) {
+ var $displaySettings = displaySettings();
+
+ uls.$menu.find( '#uls-settings-block' ).append( $displaySettings );
+ $displaySettings.on( 'click', function () {
+ var languagesettings = $displaySettings.data( 'languagesettings' ),
+ displaySettingsOptions = {
+ defaultModule: 'display'
+ },
+ ulsPosition = mw.config.get( 'wgULSPosition' ),
+ anonMode = ( mw.user.isAnon() &&
+ !mw.config.get( 'wgULSAnonCanChangeLanguage' ) );
+
+ if ( !languagesettings ) {
+ // If the ULS trigger is shown in the top personal menu,
+ // closing the display settings must show the main ULS
+ // languages list, unless we are in anon mode and thus
+ // cannot show the language list
+ if ( ulsPosition === 'personal' && !anonMode ) {
+ displaySettingsOptions.onClose = function () {
+ uls.show();
+ };
+ }
+ $.extend( displaySettingsOptions, uls.position() );
+ mw.loader.using( mw.uls.languageSettingsModules, function () {
+ $displaySettings.languagesettings( displaySettingsOptions )
+ .click();
+ } );
+ }
+ mw.hook( 'mw.uls.settings.open' ).fire( 'uls' );
+ uls.hide();
+ } );
+ }
+
+ /**
+ * Add input settings link to the settings bar in ULS
+ * @param {Object} uls The ULS object
+ */
+ function addInputSettings( uls ) {
+ var $inputSettings = inputSettings();
+
+ uls.$menu.find( '#uls-settings-block' ).append( $inputSettings );
+ $inputSettings.on( 'click', function () {
+ var position = uls.position(),
+ languagesettings = $inputSettings.data( 'languagesettings' );
+
+ if ( !languagesettings ) {
+ mw.loader.using( mw.uls.languageSettingsModules, function () {
+ $inputSettings.languagesettings( {
+ defaultModule: 'input',
+ onClose: function () {
+ uls.show();
+ },
+ top: position.top,
+ left: position.left
+ } ).click();
+ } );
+ }
+
+ mw.hook( 'mw.uls.settings.open' ).fire( 'uls' );
+ uls.hide();
+ } );
+ }
+
+ /**
+ * Helper function to make the uls triggers accessible with the keyboard.
+ * @param {jQuery} $target One or more jQuery elements.
+ * @since 2013.07
+ */
+ function addAccessibilityFeatures( $target ) {
+ // tabindex=0 makes it appear when tabbing targets.
+ // See also http://www.w3.org/TR/wai-aria/roles#button
+ $target.attr( {
+ tabIndex: 0,
+ role: 'button',
+ 'aria-haspopup': true
+ } );
+ // TODO:
+ // * aria-pressed true/false when popup is open
+ // * aria-controls to reference to the popup
+
+ // Remove outline when clicking
+ $target.click( function () {
+ $( this ).css( 'outline', 'none' );
+ } );
+ // Allow outline to appear again if keyboard activated
+ $target.blur( function () {
+ $( this ).css( 'outline', '' );
+ } );
+
+ // Make Enter act the same as clicking. This has the unfortunate side
+ // effect of removing the outline.
+ $target.keydown( function ( event ) {
+ // Enter
+ if ( event.keyCode === 13 ) {
+ $( this ).click();
+ event.preventDefault();
+ event.stopPropagation();
+ }
+ } );
+ }
+
+ /**
+ * The tooltip to be shown when language changed using ULS.
+ * It also allows to undo the language selection.
+ */
+ function showULSTooltip() {
+ var ulsPosition = mw.config.get( 'wgULSPosition' ),
+ currentLang = mw.config.get( 'wgUserLanguage' ),
+ previousLang,
+ previousLanguageAutonym,
+ $ulsTrigger,
+ anonMode,
+ rtlPage = $( 'body' ).hasClass( 'rtl' ),
+ tipsyGravity = {
+ personal: 'n',
+ interlanguage: rtlPage ? 'e' : 'w'
+ },
+ previousLanguages = mw.uls.getPreviousLanguages() || [];
+
+ previousLang = previousLanguages.slice( -1 )[0];
+
+ $ulsTrigger = ( ulsPosition === 'interlanguage' ) ?
+ $( '.uls-settings-trigger' ) :
+ $( '.uls-trigger' );
+
+ if ( previousLang === currentLang ) {
+ $ulsTrigger.tipsy( { gravity: rtlPage ? 'e' : 'w' } );
+
+ return;
+ }
+
+ previousLanguages.push( currentLang );
+ mw.uls.setPreviousLanguages( previousLanguages );
+
+ anonMode = ( mw.user.isAnon() && !mw.config.get( 'wgULSAnonCanChangeLanguage' ) );
+
+ if ( anonMode || !previousLang ) {
+ // Do not show tooltip
+ return;
+ }
+
+ previousLanguageAutonym = $.cookie( mw.uls.previousLanguageAutonymCookie ) ||
+ previousLang;
+
+ // Attach a tipsy tooltip to the trigger
+ $ulsTrigger.tipsy( {
+ gravity: tipsyGravity[ulsPosition],
+ delayOut: 3000,
+ html: true,
+ fade: true,
+ trigger: 'manual',
+ title: function () {
+ var link;
+
+ link = $( '<a>' ).text( previousLanguageAutonym )
+ .attr( {
+ href: '#',
+ 'class': 'uls-prevlang-link',
+ lang: previousLang,
+ // We could get dir from uls.data,
+ // but we are trying to avoid loading it
+ // and 'auto' is safe enough in this context
+ dir: 'auto'
+ } );
+
+ // Get the html of the link by wrapping it in div first
+ link = $( '<div>' ).html( link ).html();
+
+ return mw.msg( 'ext-uls-undo-language-tooltip-text', link );
+ }
+ } );
+
+ // Now that we set the previous languages,
+ // we can set the cookie of the previous autonym.
+ // TODO: Refactor this, because it doesn't directly belong
+ // to the tooltip.
+ $.cookie( mw.uls.previousLanguageAutonymCookie,
+ mw.config.get( 'wgULSCurrentAutonym' ),
+ { path: '/' }
+ );
+
+ function showTipsy( timeout ) {
+ var tipsyTimer = 0;
+
+ $ulsTrigger.tipsy( 'show' );
+ // if the mouse is over the tooltip, do not hide
+ $( '.tipsy' ).on( 'mouseover', function () {
+ window.clearTimeout( tipsyTimer );
+ } );
+ $( '.tipsy' ).on( 'mouseout', function () {
+ tipsyTimer = window.setTimeout( hideTipsy, timeout );
+ } );
+
+ // hide the tooltip when clicked on it
+ $( '.tipsy' ).on( 'click', hideTipsy );
+
+ // Event handler for links in the tooltip.
+ // It looks like the tipsy is always created from scratch so that
+ // there wont be multiple event handlers bound to same click.
+ $( 'a.uls-prevlang-link' ).on( 'click.ulstipsy', function ( event ) {
+ var deferred = $.Deferred();
+
+ event.preventDefault();
+ deferred.done( function () {
+ mw.uls.changeLanguage( event.target.lang );
+ } );
+
+ mw.hook( 'mw.uls.language.revert' ).fire( deferred );
+
+ // Delay is zero if event logging is not enabled
+ window.setTimeout( function () {
+ deferred.resolve();
+ }, mw.config.get( 'wgULSEventLogging' ) * 500 );
+ } );
+ tipsyTimer = window.setTimeout( hideTipsy, timeout );
+ }
+
+ function hideTipsy() {
+ $ulsTrigger.tipsy( 'hide' );
+ }
+
+ // The interlanguage position needs some time to settle down
+ window.setTimeout( function () {
+ // Show the tipsy tooltip on page load.
+ showTipsy( 6000 );
+ }, 700 );
+
+ // manually show the tooltip
+ $ulsTrigger.on( 'mouseover', function () {
+ // show only if the ULS panel is not shown
+ if ( !$( '.uls-menu:visible' ).length ) {
+ showTipsy( 3000 );
+ }
+ } );
+ }
+
+ $( document ).ready( function () {
+ mw.uls.init( function () {
+ var $triggers,
+ $pLang,
+ $ulsTrigger = $( '.uls-trigger' ),
+ rtlPage = $( 'body' ).hasClass( 'rtl' ),
+ anonMode = ( mw.user.isAnon() &&
+ !mw.config.get( 'wgULSAnonCanChangeLanguage' ) ),
+ imeSelector = mw.config.get( 'wgULSImeSelectors' ).join( ', ' ),
+ ulsPosition = mw.config.get( 'wgULSPosition' );
+
+ if ( ulsPosition === 'interlanguage' ) {
+ // TODO: Refactor this block
+ // The interlanguage links section
+ $pLang = $( '#p-lang' );
+ // Add an element near the interlanguage links header
+ $ulsTrigger = $( '<span>' ).addClass( 'uls-settings-trigger' );
+ // Append ULS cog to languages section, but make sure it is visible.
+ $pLang.show().prepend( $ulsTrigger );
+ // Take care of any other elements with this class.
+ $ulsTrigger = $( '.uls-settings-trigger' );
+ // Remove the dummy link, which was added to make sure that the section appears
+ $pLang.find( '.uls-p-lang-dummy' ).remove();
+
+ if ( !$pLang.find( 'div ul' ).children().length ) {
+ // Replace the title of the interlanguage links area
+ // if there are no interlanguage links
+ $pLang.find( 'h3' )
+ .text( mw.msg( 'uls-plang-title-languages' ) );
+ }
+
+ $ulsTrigger.attr( {
+ title: mw.msg( 'ext-uls-select-language-settings-icon-tooltip' )
+ } );
+
+ $ulsTrigger.on( 'click', function ( e, eventParams ) {
+ var languagesettings = $ulsTrigger.data( 'languagesettings' ),
+ languageSettingsOptions;
+
+ if ( languagesettings ) {
+ if ( !languagesettings.shown ) {
+ mw.hook( 'mw.uls.settings.open' ).fire( eventParams && eventParams.source || 'interlanguage' );
+ }
+ } else {
+ // Initialize the Language settings window
+ languageSettingsOptions = {
+ defaultModule: 'display',
+ onVisible: function () {
+ var topRowHeight, caretHeight, caretWidth,
+ $caretBefore = $( '<span>' ).addClass( 'caret-before' ),
+ $caretAfter = $( '<span>' ).addClass( 'caret-after' ),
+ ulsTriggerWidth = this.$element.width(),
+ ulsTriggerOffset = this.$element.offset();
+
+ // Add the callout caret triangle
+ // pointing to the trigger icon
+ this.$window.addClass( 'callout' );
+ this.$window.prepend( $caretBefore, $caretAfter );
+
+ // Calculate the positioning of the panel
+ // according to the position of the trigger icon
+ if ( rtlPage ) {
+ caretWidth = parseInt( $caretBefore.css( 'border-left-width' ), 10 );
+ this.left = ulsTriggerOffset.left - this.$window.width() - caretWidth;
+ } else {
+ caretWidth = parseInt( $caretBefore.css( 'border-right-width' ), 10 );
+ this.left = ulsTriggerOffset.left + ulsTriggerWidth + caretWidth;
+ }
+
+ topRowHeight = this.$window.find( '.row' ).height();
+ caretHeight = parseInt( $caretBefore.css( 'top' ), 10 );
+ this.top = ulsTriggerOffset.top - topRowHeight - caretHeight / 2;
+
+ this.position();
+ }
+ };
+
+ mw.loader.using( mw.uls.languageSettingsModules, function () {
+ $ulsTrigger.languagesettings( languageSettingsOptions ).click();
+ } );
+
+ e.stopPropagation();
+ }
+ } );
+ } else if ( anonMode ) {
+ $ulsTrigger.on( 'click', function ( e, eventParams ) {
+ var languagesettings = $ulsTrigger.data( 'languagesettings' );
+
+ e.preventDefault();
+
+ if ( languagesettings ) {
+ if ( !languagesettings.shown ) {
+ mw.hook( 'mw.uls.settings.open' ).fire( eventParams && eventParams.source || 'personal' );
+ }
+ } else {
+ mw.loader.using( mw.uls.languageSettingsModules, function () {
+ $ulsTrigger.languagesettings();
+
+ $ulsTrigger.trigger( 'click', eventParams );
+ } );
+ }
+ } );
+ } else {
+ $ulsTrigger.on( 'click', function ( e, eventParams ) {
+ var uls = $ulsTrigger.data( 'uls' );
+
+ e.preventDefault();
+
+ if ( uls ) {
+ if ( !uls.shown ) {
+ mw.hook( 'mw.uls.settings.open' ).fire( eventParams && eventParams.source || 'personal' );
+ }
+ } else {
+ mw.loader.using( 'ext.uls.mediawiki', function () {
+ $ulsTrigger.uls( {
+ quickList: function () {
+ return mw.uls.getFrequentLanguageList();
+ },
+ onReady: function () {
+ var uls = this;
+ mw.loader.using( mw.uls.languageSettingsModules, function () {
+ addDisplaySettings( uls );
+ addInputSettings( uls );
+ } );
+ },
+ onSelect: function ( language ) {
+ mw.uls.changeLanguage( language );
+ },
+ onVisible: function () {
+ mw.uls.addEventLoggingTriggers();
+ }
+ } );
+
+ // Allow styles to apply first and position to work by
+ // delaying the activation after them.
+ window.setTimeout( function () {
+ $ulsTrigger.trigger( 'click', eventParams );
+ }, 0 );
+ } );
+ }
+ } );
+ }
+
+ // At this point we don't care which kind of trigger it is
+ $triggers = $( '.uls-settings-trigger, .uls-trigger' );
+ addAccessibilityFeatures( $triggers );
+
+ // Bind language settings to preferences page link
+ $( '#uls-preferences-link' )
+ .text( mw.msg( 'ext-uls-language-settings-preferences-link' ) )
+ .click( function () {
+ $ulsTrigger.trigger( 'click', {
+ source: 'preferences'
+ } );
+
+ return false;
+ } );
+
+ showULSTooltip();
+
+ $( 'body' ).on( 'focus.imeinit', imeSelector, function () {
+ var $input = $( this );
+ $( 'body' ).off( '.imeinit' );
+ mw.loader.using( 'ext.uls.ime', function () {
+ mw.ime.setup();
+ mw.ime.handleFocus( $input );
+ } );
+ } );
+ } );
+ } );
+}( jQuery, mediaWiki ) );
diff --git a/MLEB/UniversalLanguageSelector/resources/js/ext.uls.languagesettings.js b/MLEB/UniversalLanguageSelector/resources/js/ext.uls.languagesettings.js
new file mode 100644
index 00000000..a6360c2a
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/resources/js/ext.uls.languagesettings.js
@@ -0,0 +1,319 @@
+/**
+ * ULS-based language settings dialog for MediaWiki.
+ *
+ * Copyright (C) 2012 Alolita Sharma, Amir Aharoni, Arun Ganesh, Brandon Harris,
+ * Niklas Laxström, Pau Giner, Santhosh Thottingal, Siebrand Mazeland and other
+ * contributors. See CREDITS for a list.
+ *
+ * UniversalLanguageSelector is dual licensed GPLv2 or later and MIT. You don't
+ * have to do anything special to choose one license or the other and you don't
+ * have to notify anyone which license you are using. You are free to use
+ * UniversalLanguageSelector in commercial projects as long as the copyright
+ * header is left intact. See files GPL-LICENSE and MIT-LICENSE for details.
+ *
+ * @file
+ * @ingroup Extensions
+ * @licence GNU General Public Licence 2.0 or later
+ * @licence MIT License
+ */
+( function ( $, mw ) {
+ 'use strict';
+
+ var closeRow, settingsMenu, settingsPanel, windowTemplate, panelsRow, buttonsRow;
+
+ closeRow = '<div class="row">' +
+ '<div class="uls-language-settings-close-block eight columns offset-by-four"><span id="languagesettings-close" class="uls-icon-close"></span></div>' +
+ '</div>';
+ settingsMenu = '<div class="four columns languagesettings-menu">' +
+ '<h1 data-i18n="ext-uls-language-settings-title"></h1>' +
+ '<div class="settings-menu-items">' +
+ '</div>' +
+ '</div>';
+ settingsPanel = '<div id="languagesettings-settings-panel" class="eight columns">' +
+ '</div>';
+ buttonsRow = '<div class="row"></div>' +
+ // Apply and Cancel buttons
+ '<div class="row language-settings-buttons">' +
+ '<div class="eleven columns">' +
+ '<button class="button uls-settings-cancel" data-i18n="ext-uls-language-settings-cancel"></button>' +
+ '<button class="button active blue uls-settings-apply" data-i18n="ext-uls-language-settings-apply" disabled></button>' +
+ '</div>' +
+ '</div>' +
+ '</div>';
+ panelsRow = '<div class="row" id="languagesettings-panels">' +
+ settingsMenu +
+ settingsPanel +
+ buttonsRow +
+ '</div>';
+ windowTemplate = '<div style="display: block;" id="language-settings-dialog" class="grid uls-menu uls-wide">' +
+ closeRow +
+ panelsRow +
+ '</div>';
+
+ function LanguageSettings( element, options ) {
+ this.$element = $( element );
+ this.options = $.extend( {}, $.fn.languagesettings.defaults, options );
+ this.$window = $( this.options.template );
+ this.shown = false;
+ this.initialized = false;
+ this.left = this.options.left;
+ this.top = this.options.top;
+ this.modules = {};
+ this.$settingsPanel = this.$window.find( '#languagesettings-settings-panel' );
+ this.init();
+ this.listen();
+ }
+
+ LanguageSettings.prototype = {
+ constructor: LanguageSettings,
+
+ init: function () {
+ $( 'body' ).append( this.$window );
+ this.hide();
+ },
+
+ // Register all event listeners to the ULS language settings here.
+ listen: function () {
+ this.$element.on( 'click', $.proxy( this.click, this ) );
+
+ this.$window.find( '#languagesettings-close, button.uls-settings-cancel' )
+ .on( 'click', $.proxy( mw.hook( 'mw.uls.settings.cancel' ).fire, this ) );
+ this.$window.find( 'button.uls-settings-apply' )
+ .on( 'click', $.proxy( mw.hook( 'mw.uls.settings.apply' ).fire, this ) );
+ // Hide the window when clicked outside
+ $( 'html' ).click( $.proxy( this.hide, this ) );
+
+ // ... but when clicked on window do not hide.
+ this.$window.on( 'click', function ( event ) {
+ event.stopPropagation();
+ } );
+ },
+
+ render: function () {
+ var modules,
+ languageSettings = this,
+ defaultModule = this.options.defaultModule;
+
+ // Get the name of all registered modules and list them in left side menu.
+ // Sort the modules based on id
+ modules = $.map( $.fn.languagesettings.modules, function ( element, index ) {
+ return index;
+ } ).sort();
+ $.each( modules, function ( index, moduleName ) {
+ if ( $.fn.languagesettings.modules.hasOwnProperty( moduleName ) ) {
+ if ( !defaultModule ) {
+ defaultModule = moduleName;
+ }
+
+ // Call render function on the current setting module.
+ languageSettings.initModule( moduleName, defaultModule === moduleName );
+ }
+ } );
+ },
+
+ /**
+ * Initialize the module.
+ * Render the link and settings area for a language setting module.
+ * @param {string} moduleName Name of the setting module
+ * @param {boolean} active boolean Make this module active and show by default
+ */
+ initModule: function ( moduleName, active ) {
+ var $settingsTitle, $settingsText, $settingsLink,
+ languageSettings = this,
+ module = new $.fn.languagesettings.modules[moduleName]( languageSettings ),
+ $settingsMenuItems = languageSettings.$window.find( '.settings-menu-items' );
+
+ $settingsTitle = $( '<div>' )
+ .addClass( 'settings-title' )
+ .attr( 'data-i18n', module.nameI18n );
+ $settingsText = $( '<span>' )
+ .addClass( 'settings-text' )
+ .attr( 'data-i18n', module.descriptionI18n );
+ $settingsLink = $( '<div>' )
+ .addClass( moduleName + '-settings-block menu-section' )
+ .prop( 'id', moduleName + '-panel-trigger' )
+ .data( 'module', module )
+ .append(
+ $settingsTitle,
+ $settingsText
+ );
+
+ $settingsMenuItems.append( $settingsLink );
+
+ $settingsLink.on( 'click', function () {
+ var $this = $( this );
+
+ $this.data( 'module' ).render();
+ // Re-position the window and scroll in to view if required.
+ languageSettings.position();
+ $settingsMenuItems.find( '.menu-section' ).removeClass( 'active' );
+ $this.addClass( 'active' );
+ } );
+
+ if ( active ) {
+ module.render();
+ $settingsLink.addClass( 'active' );
+ }
+ this.modules[moduleName] = module;
+
+ // Register cancel and apply hooks
+ mw.hook( 'mw.uls.settings.cancel' ).add( $.proxy( module.cancel, module ) );
+ mw.hook( 'mw.uls.settings.apply' ).add( $.proxy( module.apply, module ) );
+ },
+
+ position: function () {
+ var top, pos, left,
+ languageSettings = this;
+
+ pos = $.extend( {}, this.$element.offset(), {
+ height: this.$element[0].offsetHeight
+ } );
+ top = this.top || pos.top + pos.height;
+ left = this.left || '25%';
+ this.$window.css( {
+ top: top,
+ left: left
+ } );
+ setTimeout( function () {
+ // Don't mess up height calculations with parallel css loading
+ // See: http://ejohn.org/blog/how-javascript-timers-work/
+ languageSettings.$window.scrollIntoView();
+ }, 0 );
+
+ },
+
+ i18n: function () {
+ this.$window.i18n();
+ },
+
+ show: function () {
+ var languageSettings = this;
+
+ if ( !this.initialized ) {
+ this.render();
+ this.initialized = true;
+ }
+ // close model windows close, if they hide on page click
+ $( 'html' ).click();
+ this.i18n();
+ this.shown = true;
+ this.$window.show();
+
+ // Every time we show this window, make sure the current
+ // settings panels is upto date. So just click on active menu item.
+ this.$window.find( '.settings-menu-items > .active' ).click();
+ this.position();
+ setTimeout( function () {
+ // Don't mess up height calculations with parallel css loading
+ // See: http://ejohn.org/blog/how-javascript-timers-work/
+ languageSettings.visible();
+ }, 0 );
+ },
+
+ /**
+ * A "hook" that runs after the ULS panel becomes visible
+ * by using the show method.
+ *
+ * To use it, pass a function as the onVisible parameter
+ * in the options when initializing ULS.
+ */
+ visible: function () {
+ if ( this.options.onVisible ) {
+ this.options.onVisible.call( this );
+ }
+ },
+
+ /**
+ * Hide this window.
+ * Will be used when moving to a different context and
+ * need coming back.
+ */
+ hide: function () {
+ this.shown = false;
+ this.$window.hide();
+ },
+
+ /**
+ * Put the language settings panel in busy mode.
+ * Busy mode means displaying a progress cursor,
+ * and showing the 'apply' button as disabled and with
+ * a different label.
+ * @param {boolean} busy set true to put the panel in busy mode,
+ * false to unset the busy mode.
+ */
+ setBusy: function ( busy ) {
+ var $applyButton = this.$window.find( 'button.uls-settings-apply' );
+
+ if ( busy ) {
+ this.$window.addClass( 'waiting' );
+ $applyButton
+ .text( $.i18n( 'ext-uls-language-settings-applying' ) )
+ .prop( 'disabled', true );
+ } else {
+ this.$window.removeClass( 'waiting' );
+ $applyButton.text( $.i18n( 'ext-uls-language-settings-apply' ) );
+ }
+ },
+
+ /**
+ * Close this language settings window, and
+ * call onClose if defined from the previous context.
+ */
+ close: function () {
+ if ( !this.shown ) {
+ return;
+ }
+
+ this.hide();
+
+ // optional callback
+ if ( this.options.onClose ) {
+ this.options.onClose();
+ }
+
+ },
+
+ click: function ( e ) {
+ e.stopPropagation();
+ e.preventDefault();
+
+ if ( this.shown ) {
+ this.hide();
+ } else {
+ this.show();
+ }
+ },
+
+ disableApplyButton: function () {
+ this.$window.find( 'button.uls-settings-apply' ).prop( 'disabled', true );
+ }
+ };
+
+ $.fn.languagesettings = function ( option ) {
+ return this.each( function () {
+ var $this = $( this ),
+ data = $this.data( 'languagesettings' ),
+ options = typeof option === 'object' && option;
+
+ if ( !data ) {
+ $this.data( 'languagesettings', ( data = new LanguageSettings( this, options ) ) );
+ }
+
+ if ( typeof option === 'string' ) {
+ data[option]();
+ }
+ } );
+ };
+
+ $.fn.languagesettings.modules = {};
+ $.fn.languagesettings.defaults = {
+ template: windowTemplate,
+ defaultModule: false, // Name of the default module
+ onClose: null, // An onClose event handler.
+ top: null, // Top position of this window
+ left: null, // Left position of this window
+ onVisible: null // A callback that runs after the ULS panel becomes visible
+ };
+
+ $.fn.languagesettings.Constructor = LanguageSettings;
+}( jQuery, mediaWiki ) );
diff --git a/MLEB/UniversalLanguageSelector/resources/js/ext.uls.mediawiki.js b/MLEB/UniversalLanguageSelector/resources/js/ext.uls.mediawiki.js
new file mode 100644
index 00000000..3bc0eeaa
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/resources/js/ext.uls.mediawiki.js
@@ -0,0 +1,42 @@
+/**
+ * jquery.uls defaults for MediaWiki.
+ *
+ * Copyright (C) 2013 Alolita Sharma, Amir Aharoni, Arun Ganesh, Brandon Harris,
+ * Niklas Laxström, Pau Giner, Santhosh Thottingal, Siebrand Mazeland and other
+ * contributors. See CREDITS for a list.
+ *
+ * UniversalLanguageSelector is dual licensed GPLv2 or later and MIT. You don't
+ * have to do anything special to choose one license or the other and you don't
+ * have to notify anyone which license you are using. You are free to use
+ * UniversalLanguageSelector in commercial projects as long as the copyright
+ * header is left intact. See files GPL-LICENSE and MIT-LICENSE for details.
+ *
+ * @file
+ * @ingroup Extensions
+ * @licence GNU General Public Licence 2.0 or later
+ * @licence MIT License
+ */
+( function ( $, mw ) {
+ 'use strict';
+
+ // MediaWiki overrides for ULS defaults
+ $.fn.uls.defaults = $.extend( $.fn.uls.defaults, {
+ languages: mw.config.get( 'wgULSLanguages' ) || {},
+ searchAPI: mw.util.wikiScript( 'api' ) + '?action=languagesearch'
+ } );
+
+ // No need of IME in the ULS language search bar
+ $.fn.uls.Constructor.prototype.render = function () {
+ this.$languageFilter.addClass( 'noime' );
+ };
+
+ /*
+ * The 'als' is used in a non-standard way in MediaWiki -
+ * it may be used to represent the Allemanic language,
+ * the standard code of which is 'gsw', while 'als'
+ * is ISO 639 3 refers to Tosk Albanian, which is
+ * not currently used in any way in MediaWiki.
+ * This local fix adds a redirect for it.
+ */
+ $.uls.data.addLanguage( 'als', { target: 'gsw' } );
+}( jQuery, mediaWiki ) );
diff --git a/MLEB/UniversalLanguageSelector/resources/js/ext.uls.preferences.js b/MLEB/UniversalLanguageSelector/resources/js/ext.uls.preferences.js
new file mode 100644
index 00000000..0229e012
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/resources/js/ext.uls.preferences.js
@@ -0,0 +1,173 @@
+/**
+ * ULS preferences system for MediaWiki.
+ * Local storage for anonymous users, preferences for logged in users.
+ *
+ * Copyright (C) 2012 Alolita Sharma, Amir Aharoni, Arun Ganesh, Brandon Harris,
+ * Niklas Laxström, Pau Giner, Santhosh Thottingal, Siebrand Mazeland and other
+ * contributors. See CREDITS for a list.
+ *
+ * UniversalLanguageSelector is dual licensed GPLv2 or later and MIT. You don't
+ * have to do anything special to choose one license or the other and you don't
+ * have to notify anyone which license you are using. You are free to use
+ * UniversalLanguageSelector in commercial projects as long as the copyright
+ * header is left intact. See files GPL-LICENSE and MIT-LICENSE for details.
+ *
+ * @file
+ * @ingroup Extensions
+ * @licence GNU General Public Licence 2.0 or later
+ * @licence MIT License
+ */
+( function ( $, mw ) {
+ 'use strict';
+
+ var ULSPreferences;
+
+ /**
+ * Wrapper for localStorage, falls back to cookie
+ * when localStorage not supported by browser.
+ */
+ function preferenceStore() {
+
+ // If value is detected, set new or modify store
+ return {
+ /*
+ * Set the value to the given key
+ * @param {string} key
+ * @param {Object} value value to be set
+ */
+ set: function ( key, value ) {
+ // Convert object values to JSON
+ if ( typeof value === 'object' ) {
+ value = JSON.stringify( value );
+ }
+ // Set the store
+ try {
+ localStorage.setItem( key, value );
+ } catch ( e ) { // Use cookie
+ $.cookie( key, value, { path: '/' } );
+ }
+ },
+ /*
+ * Returns the value of the given key
+ * @param {string} key
+ * @retun {Object} value of the key
+ */
+ get: function ( key ) {
+ var data;
+
+ // No value supplied, return value
+ try {
+ data = localStorage.getItem( key );
+ if ( !data ) {
+ // Try to restore the old preferences, if any, if possible.
+ try {
+ data = JSON.parse( localStorage.getItem( 'jStorage' ) )['uls-preferences'];
+ // And try to remove it.
+ localStorage.removeItem( 'jStorage' );
+ } catch ( e ) {
+ // Don't bother about it.
+ }
+ }
+ } catch ( e ) { // Use cookie
+ data = $.cookie( key );
+ }
+
+ // Try to parse JSON
+ try {
+ data = JSON.parse( data );
+ } catch ( e ) {
+ data = data;
+ }
+
+ return data;
+ }
+ };
+ }
+
+ ULSPreferences = function () {
+ this.preferenceName = 'uls-preferences';
+ this.username = mw.user.getName();
+ this.isAnon = mw.user.isAnon();
+ this.preferences = null;
+ this.init();
+ };
+
+ ULSPreferences.prototype = {
+ /**
+ * Initialize
+ */
+ init: function () {
+ if ( this.isAnon ) {
+ this.preferences = preferenceStore().get( this.preferenceName );
+ } else {
+ var options = mw.user.options.get( this.preferenceName );
+
+ // Try to parse JSON
+ try {
+ this.preferences = JSON.parse( options );
+ } catch ( e ) {
+ this.preferences = {};
+ }
+ }
+
+ this.preferences = this.preferences || {};
+ },
+
+ /**
+ * Set the preference
+ *
+ * @param {String} key
+ * @param value
+ */
+ set: function ( key, value ) {
+ this.preferences[key] = value;
+ },
+
+ /**
+ * Get a preference value for the given preference name
+ *
+ * @param key
+ */
+ get: function ( key ) {
+ return this.preferences[key];
+ },
+
+ /**
+ * Save the preferences
+ *
+ * @param callback
+ */
+ save: function ( callback ) {
+ var ulsPreferences = this;
+
+ callback = callback || $.noop;
+ if ( this.isAnon ) {
+ // Anonymous user. Save preferences in local storage
+ preferenceStore().set( this.preferenceName, this.preferences );
+ callback.call( this, true );
+ } else {
+ // Logged in user. Use MW APIs to change preferences
+ new mw.Api().postWithToken( 'options', {
+ action: 'options',
+ optionname: ulsPreferences.preferenceName,
+ optionvalue: JSON.stringify( ulsPreferences.preferences )
+ } ).done( function () {
+ callback.call( this, true );
+ } ).fail( function () {
+ callback.call( this, false );
+ } );
+ }
+ }
+ };
+
+ mw.uls = mw.uls || {};
+ mw.uls.preferences = function () {
+ var data = $( 'body' ).data( 'preferences' );
+
+ if ( !data ) {
+ $( 'body' ).data( 'preferences', ( data = new ULSPreferences() ) );
+ }
+ return data;
+ };
+
+}( jQuery, mediaWiki ) );
diff --git a/MLEB/UniversalLanguageSelector/resources/js/ext.uls.webfonts.js b/MLEB/UniversalLanguageSelector/resources/js/ext.uls.webfonts.js
new file mode 100644
index 00000000..745549ae
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/resources/js/ext.uls.webfonts.js
@@ -0,0 +1,231 @@
+/**
+ * ULS-Webfonts integration
+ *
+ * Copyright (C) 2012 Alolita Sharma, Amir Aharoni, Arun Ganesh, Brandon Harris,
+ * Niklas Laxström, Pau Giner, Santhosh Thottingal, Siebrand Mazeland and other
+ * contributors. See CREDITS for a list.
+ *
+ * UniversalLanguageSelector is dual licensed GPLv2 or later and MIT. You don't
+ * have to do anything special to choose one license or the other and you don't
+ * have to notify anyone which license you are using. You are free to use
+ * UniversalLanguageSelector in commercial projects as long as the copyright
+ * header is left intact. See files GPL-LICENSE and MIT-LICENSE for details.
+ *
+ * @file
+ * @ingroup Extensions
+ * @licence GNU General Public Licence 2.0 or later
+ * @licence MIT License
+ */
+( function ( $, mw ) {
+ 'use strict';
+ var ulsPreferences,
+ // Text to prepend the sample text. 0D00 is an unassigned unicode point.
+ tofuSalt = '\u0D00',
+ // cache languages with tofu.
+ tofuLanguages = {};
+
+ mw.webfonts = mw.webfonts || {};
+ ulsPreferences = mw.uls.preferences();
+ mw.webfonts.preferences = {
+ registry: {
+ fonts: {},
+ webfontsEnabled: mw.config.get( 'wgULSWebfontsEnabled' )
+ },
+
+ isEnabled: function () {
+ return this.registry.webfontsEnabled;
+ },
+
+ enable: function () {
+ this.registry.webfontsEnabled = true;
+ },
+
+ disable: function () {
+ this.registry.webfontsEnabled = false;
+ },
+
+ setFont: function ( language, font ) {
+ this.registry.fonts[language] = font;
+ },
+
+ getFont: function ( language ) {
+ return this.registry.fonts[language];
+ },
+
+ save: function ( callback ) {
+ // get updated copy of preferences
+ ulsPreferences = mw.uls.preferences();
+ ulsPreferences.set( 'webfonts', this.registry );
+ ulsPreferences.save( callback );
+ },
+
+ load: function () {
+ mw.webfonts.preferences.registry = $.extend( this.registry,
+ ulsPreferences.get( 'webfonts' ) );
+ }
+ };
+
+ /**
+ * Detect tofu
+ *
+ * Create a temporary span in the page with fontsize 72px and font-family
+ * sans-serif for each letter of the text.
+ * For each of these spans, calculate the width and height. If they are same
+ * for all spans, we can understand that each of the letter is rendered using
+ * same glyph - it must be a tofu.
+ *
+ * @param {string} text
+ * @return {boolean}
+ */
+ function detectTofu( text ) {
+ var index,
+ $fixture,
+ width = {},
+ height = {},
+ length = Math.min( 4, text.length ),
+ detected = false;
+
+ if ( $.client.test( { msie: false } ) ) {
+ // IE shows a different tofu for unassigned code points!
+ text = tofuSalt + text;
+ }
+ $fixture = $( '<span>' )
+ .css( {
+ fontSize: '72px',
+ fontFamily: 'sans-serif'
+ } )
+ .appendTo( 'body' );
+
+ for ( index = 0; index < length; index++ ) {
+ $fixture.text( text[index] );
+ width[index] = $fixture.width() || width[index-1];
+ height[index] = $fixture.height();
+
+ if( index > 0 &&
+ ( width[index] !== width[index - 1] ||
+ height[index] !== height[index - 1] )
+ ) {
+ detected = false;
+ break;
+ }
+ }
+
+ $fixture.remove();
+
+ if ( index === length ) {
+ detected = true;
+ }
+
+ return detected;
+ }
+
+ mw.webfonts.setup = function () {
+ // Initialize webfonts
+ var mediawikiFontRepository = $.webfonts.repository;
+
+ mediawikiFontRepository.base = mw.config.get( 'wgULSFontRepositoryBasePath' );
+
+ // MediaWiki specific overrides for jquery.webfonts
+ $.extend( $.fn.webfonts.defaults, {
+ repository: mediawikiFontRepository,
+ fontStack: $( 'body' ).css( 'font-family' ).split( /, /g ),
+ /**
+ * Returns a suitable font from font repository based
+ * on the given language and html classes and user preference.
+ *
+ * @param {Object} repository
+ * @param {string} language
+ * @param {array} classes
+ */
+ fontSelector: function ( repository, language, classes ) {
+ var font, autonym, defaultFont;
+
+ if ( !language ) {
+ return null;
+ }
+
+ defaultFont = repository.defaultFont( language );
+
+ if ( classes && $.inArray( 'autonym', classes ) >= 0 ) {
+ autonym = true;
+ }
+
+ // If the user has a font preference, apply it always.
+ font = mw.webfonts.preferences.getFont( language );
+ if ( !font || autonym ) {
+ // Is there any default font for this language?
+ if ( ( !defaultFont || defaultFont === 'system' ) && !autonym ) {
+ return font;
+ }
+
+ // There is a default font for this language,
+ // but check whether the user sees tofu for it.
+ if ( tofuLanguages[language] === undefined ) {
+ tofuLanguages[language] = detectTofu( $.uls.data.getAutonym( language ) );
+
+ // Log the tofu detection only once per page per language
+ if ( tofuLanguages[language] ) {
+ mw.log( 'tofu detected for ' + language );
+ mw.hook( 'mw.uls.webfonts.tofudetected' ).fire( language );
+ }
+ }
+
+ if ( tofuLanguages[language] ) {
+ font = autonym ? 'Autonym' : defaultFont;
+ } else {
+ // No tofu and no font preference. Use system font.
+ font = 'system';
+ }
+ }
+
+ if ( font === 'system' ) {
+ // Avoid setting 'system' as a font in css
+ font = null;
+ }
+
+ return font;
+ },
+
+ exclude: ( function () {
+ var excludes = mw.config.get( 'wgULSNoWebfontsSelectors' ).join( ', ' );
+
+ if ( mw.user.options.get( 'editfont' ) !== 'default' ) {
+ // Exclude textboxes from webfonts if the user has edit area font option
+ // set using 'Preferences' page
+ excludes = excludes ? excludes + ',textarea' : 'textarea';
+ }
+
+ return excludes;
+ }() ),
+ overridableFontFamilies: ( function () {
+ var headingFont = $( 'h1' ).css( 'font-family' );
+ return headingFont ? [ headingFont ] : [];
+ }() )
+ } );
+
+ // Execute after task queue is processed so that the rendering is complete.
+ // This is important because webfonts behavior depends on the font-family
+ // property values set by stylesheets.
+ setTimeout( function() {
+ $( 'body' ).webfonts();
+
+ // Load the CSS required for the Autonym font. Note that this won't download the font.
+ // Browsers are smart enough to delay it till some element with this font-family
+ // becomes visible. For example: If there is a popup div with an element with class
+ // 'autonym', without explicitly calling .webfonts() on it, Autonym font will not
+ // be applied in general. But we ensure that the CSS is ready so that the font
+ // will be applied automatically to such future elements.
+ $( 'body' ).data( 'webfonts' ).load( 'Autonym' );
+ }, 0 );
+ };
+
+ $( document ).ready( function () {
+ mw.uls.init( function () {
+ mw.webfonts.preferences.load();
+
+ if ( mw.webfonts.preferences.isEnabled() ) {
+ mw.loader.using( 'ext.uls.webfonts.fonts', mw.webfonts.setup );
+ }
+ } );
+ } );
+}( jQuery, mediaWiki ) );
diff --git a/MLEB/UniversalLanguageSelector/resources/js/ext.uls.webfonts.mobile.js b/MLEB/UniversalLanguageSelector/resources/js/ext.uls.webfonts.mobile.js
new file mode 100644
index 00000000..43a6b53b
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/resources/js/ext.uls.webfonts.mobile.js
@@ -0,0 +1,49 @@
+/**
+ * MobileFrontend compatible ULS-Webfonts integration
+ *
+ * Copyright (C) 2013 Alolita Sharma, Amir Aharoni, Arun Ganesh, Brandon Harris,
+ * Niklas Laxström, Pau Giner, Ryan Kaldari, Santhosh Thottingal, Siebrand Mazeland
+ * and other contributors. See CREDITS for a list.
+ *
+ * UniversalLanguageSelector is dual licensed GPLv2 or later and MIT. You don't
+ * have to do anything special to choose one license or the other and you don't
+ * have to notify anyone which license you are using. You are free to use
+ * UniversalLanguageSelector in commercial projects as long as the copyright
+ * header is left intact. See files GPL-LICENSE and MIT-LICENSE for details.
+ *
+ * @file
+ * @ingroup Extensions
+ * @licence GNU General Public Licence 2.0 or later
+ * @licence MIT License
+ */
+( function ( $, mw ) {
+ 'use strict';
+
+ var mediawikiFontRepository;
+
+ mw.webfonts = mw.webfonts || {};
+
+ mediawikiFontRepository = $.webfonts.repository;
+ mediawikiFontRepository.base = mw.config.get( 'wgExtensionAssetsPath' ) +
+ '/UniversalLanguageSelector/data/fontrepo/fonts/';
+
+ $( document ).ready( function () {
+ // MediaWiki specific overrides for jquery.webfonts
+ $.extend( $.fn.webfonts.defaults, {
+ repository: mediawikiFontRepository,
+ fontStack: $( 'body' ).css( 'font-family' ).split( /, /g ),
+ fontSelector: function ( repository, language ) {
+ var font = repository.defaultFont( language );
+
+ if ( font === 'system' ) {
+ // Avoid setting 'system' as a font in css
+ font = null;
+ }
+
+ return font;
+ }
+ } );
+
+ $( 'body' ).webfonts();
+ } );
+}( jQuery, mediaWiki ) );
diff --git a/MLEB/UniversalLanguageSelector/resources/js/ext.uls.webfonts.repository.js b/MLEB/UniversalLanguageSelector/resources/js/ext.uls.webfonts.repository.js
new file mode 100644
index 00000000..670a2e01
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/resources/js/ext.uls.webfonts.repository.js
@@ -0,0 +1,5 @@
+// Do not edit! This file is generated from data/fontrepo by data/fontrepo/scripts/compile.php
+( function ( $ ) {
+ $.webfonts = $.webfonts || {};
+ $.webfonts.repository = {"base":"..\/data\/fontrepo\/fonts\/","languages":{"adx":["Jomolhari"],"af":["system","ComicNeue","OpenDyslexic"],"ahr":["Lohit Marathi"],"akk":["Akkadian"],"am":["AbyssinicaSIL"],"ang":["system","Junicode"],"ar":["system","Amiri"],"arb":["system","Amiri"],"arc":["Estrangelo Edessa","East Syriac Adiabene","SertoUrhoy"],"as":["system","Lohit Assamese"],"bbc":["system","Pangururan"],"bh":["Lohit Devanagari"],"bho":["Lohit Devanagari"],"bk":["system","ComicNeue","OpenDyslexic"],"bn":["Siyam Rupali","Lohit Bengali"],"bo":["Jomolhari"],"bod":["Jomolhari"],"bpy":["Siyam Rupali","Lohit Bengali"],"btk":["system","Pangururan"],"bug":["Saweri"],"ca":["system","ComicNeue","OpenDyslexic"],"cdo":["system","CharisSIL"],"ckb":["system","Lateef","Scheherazade","Amiri"],"cr":["OskiEast"],"cy":["system","ComicNeue","OpenDyslexic"],"da":["system","ComicNeue","OpenDyslexic"],"de":["system","ComicNeue","OpenDyslexic"],"dre":["Jomolhari"],"dv":["FreeFont-Thaana"],"dz":["Jomolhari"],"en":["system","ComicNeue","OpenDyslexic"],"es":["system","ComicNeue","OpenDyslexic"],"et":["system","ComicNeue","OpenDyslexic"],"fa":["system","Iranian Sans","Iranian Serif","Lateef","Nazli","Scheherazade"],"fi":["system","ComicNeue","OpenDyslexic"],"fo":["system","ComicNeue","OpenDyslexic"],"fr":["system","ComicNeue","OpenDyslexic"],"fy":["system","ComicNeue","OpenDyslexic"],"ga":["system","ComicNeue","OpenDyslexic"],"gd":["system","ComicNeue","OpenDyslexic"],"gez":["AbyssinicaSIL"],"gl":["system","ComicNeue","OpenDyslexic"],"goe":["Jomolhari"],"gom":["Lohit Devanagari"],"grc":["system","GentiumPlus"],"gu":["Lohit Gujarati"],"hbo":["Taamey Frank CLM","Alef"],"he":["system","Alef","Miriam CLM","Taamey Frank CLM"],"hi":["Lohit Devanagari"],"hu":["system","ComicNeue","OpenDyslexic"],"hut":["Jomolhari"],"id":["system","ComicNeue","OpenDyslexic"],"ii":["Nuosu SIL"],"is":["system","ComicNeue","OpenDyslexic"],"it":["system","ComicNeue","OpenDyslexic"],"iu":["system","OskiEast"],"jv":["system","Tuladha Jejeg"],"jv-java":["Tuladha Jejeg"],"kbg":["Jomolhari"],"khg":["Jomolhari"],"km":["KhmerOSbattambang","Hanuman","KhmerOS","Nokora Regular","Suwannaphum"],"kn":["Lohit Kannada","Gubbi"],"kok":["Lohit Devanagari"],"kte":["Jomolhari"],"lb":["system","ComicNeue","OpenDyslexic"],"lbj":["Jomolhari"],"lhm":["Jomolhari"],"li":["system","ComicNeue","OpenDyslexic"],"lo":["Phetsarath"],"loy":["Jomolhari"],"luk":["Jomolhari"],"lya":["Jomolhari"],"mai":["Lohit Devanagari"],"mak":["Saweri"],"mi":["system","ComicNeue","OpenDyslexic"],"ml":["system","AnjaliOldLipi","Meera"],"mr":["Lohit Marathi"],"ms":["system","ComicNeue","OpenDyslexic"],"muk":["Jomolhari"],"mul":["system","Autonym"],"my":["TharLon","Myanmar3","Padauk"],"nan":["system","CharisSIL","Doulos SIL"],"nb":["system","ComicNeue","OpenDyslexic"],"ne":["Lohit Nepali","Madan"],"nl":["system","ComicNeue","OpenDyslexic"],"oc":["system","ComicNeue","OpenDyslexic"],"ola":["Jomolhari"],"or":["Lohit Odia","Utkal"],"otb":["Jomolhari"],"pa":["Lohit Punjabi","Saab"],"pal":["Shapour"],"peo":["Artaxerxes"],"pl":["system","ComicNeue","OpenDyslexic"],"pt":["system","ComicNeue","OpenDyslexic"],"sa":["Lohit Devanagari"],"saz":["Pagul"],"si":["system","lklug"],"sq":["system","ComicNeue","OpenDyslexic"],"sux":["Akkadian"],"sv":["system","ComicNeue","OpenDyslexic"],"sw":["system","ComicNeue","OpenDyslexic"],"syc":["Estrangelo Edessa","East Syriac Adiabene","SertoUrhoy"],"ta":["system","Lohit Tamil","Lohit Tamil Classical","Thendral","Thenee"],"tcn":["Jomolhari"],"tcy":["Lohit Kannada","Gubbi"],"te":["Lohit Telugu"],"thw":["Jomolhari"],"ti":["AbyssinicaSIL"],"tig":["AbyssinicaSIL"],"tl":["system","ComicNeue","OpenDyslexic"],"tr":["system","ComicNeue","OpenDyslexic"],"tsk":["Jomolhari"],"ur":["system","Hussaini Nastaleeq","NafeesWeb"],"wa":["system","ComicNeue","OpenDyslexic"],"xct":["Jomolhari"],"yi":["system","Alef"],"zau":["Jomolhari"]},"fonts":{"AbyssinicaSIL":{"version":"1.500","eot":"AbyssinicaSIL\/AbyssinicaSIL-R.eot","ttf":"AbyssinicaSIL\/AbyssinicaSIL-R.ttf","woff":"AbyssinicaSIL\/AbyssinicaSIL-R.woff"},"Akkadian":{"version":"2.56","eot":"Akkadian\/Akkadian.eot","ttf":"Akkadian\/Akkadian.ttf","woff":"Akkadian\/Akkadian.woff"},"Alef":{"version":"1.0","ttf":"Alef\/Alef-Regular.ttf","eot":"Alef\/Alef-Regular.eot","woff":"Alef\/Alef-Regular.woff","variants":{"bold":"Alef Bold"}},"Alef Bold":{"version":"1.0","fontweight":"bold","ttf":"Alef\/Alef-Bold.ttf","eot":"Alef\/Alef-Bold.eot","woff":"Alef\/Alef-Bold.woff"},"Amiri":{"version":"1.0.2","ttf":"amiri\/amiri-regular.ttf","eot":"amiri\/amiri-regular.eot","woff":"amiri\/amiri-regular.woff","variants":{"bold":"Amiri Bold","bolditalic":"Amiri Bold Italic","italic":"Amiri Italic"}},"Amiri Bold":{"version":"1.0.2","fontweight":"bold","ttf":"amiri\/amiri-bold.ttf","eot":"amiri\/amiri-bold.eot","woff":"amiri\/amiri-bold.woff"},"Amiri Bold Italic":{"version":"1.0.2","fontweight":"bold","fontstyle":"italic","ttf":"amiri\/amiri-boldslanted.ttf","eot":"amiri\/amiri-boldslanted.eot","woff":"amiri\/amiri-boldslanted.woff"},"Amiri Italic":{"version":"1.0.2","fontstyle":"italic","ttf":"amiri\/amiri-slanted.ttf","eot":"amiri\/amiri-slanted.eot","woff":"amiri\/amiri-slanted.woff"},"AnjaliOldLipi":{"version":".0.730","eot":"AnjaliOldLipi\/AnjaliOldLipi.eot","ttf":"AnjaliOldLipi\/AnjaliOldLipi.ttf","woff":"AnjaliOldLipi\/AnjaliOldLipi.woff"},"Artaxerxes":{"version":"1.400","eot":"Artaxerxes\/Artaxerxes.eot","ttf":"Artaxerxes\/Artaxerxes.ttf","woff":"Artaxerxes\/Artaxerxes.woff"},"Autonym":{"version":"20131205","eot":"Autonym\/Autonym.eot","ttf":"Autonym\/Autonym.ttf","woff":"Autonym\/Autonym.woff"},"CharisSIL":{"version":"4.011","eot":"CharisSIL\/CharisSIL-R.eot","ttf":"CharisSIL\/CharisSIL-R.ttf","woff":"CharisSIL\/CharisSIL-R.woff"},"ComicNeue":{"version":"1.1","ttf":"ComicNeue\/ComicNeue-Regular.ttf","eot":"ComicNeue\/ComicNeue-Regular.eot","woff":"ComicNeue\/ComicNeue-Regular.woff","variants":{"bold":"ComicNeue Bold","italic":"ComicNeue Oblique"}},"ComicNeue Bold":{"version":"1.1","fontweight":"bold","ttf":"ComicNeue\/ComicNeue-Bold.ttf","eot":"ComicNeue\/ComicNeue-Bold.eot","woff":"ComicNeue\/ComicNeue-Bold.woff"},"ComicNeue Oblique":{"version":"1.1","fontstyle":"italic","ttf":"ComicNeue\/ComicNeue-Regular-Oblique.ttf","eot":"ComicNeue\/ComicNeue-Regular-Oblique.eot","woff":"ComicNeue\/ComicNeue-Regular-Oblique.woff"},"Doulos SIL":{"version":"4.112","eot":"DoulosSIL\/DoulosSIL-R.eot","ttf":"DoulosSIL\/DoulosSIL-R.ttf","woff":"DoulosSIL\/DoulosSIL-R.woff"},"East Syriac Adiabene":{"version":"1.21","eot":"EastSyriacAdiabene\/SyrCOMAdiabene.eot","ttf":"EastSyriacAdiabene\/SyrCOMAdiabene.ttf","woff":"EastSyriacAdiabene\/SyrCOMAdiabene.woff"},"Estrangelo Edessa":{"version":"1.21","eot":"EstrangeloEdessa\/SyrCOMEdessa.eot","ttf":"EstrangeloEdessa\/SyrCOMEdessa.ttf","woff":"EstrangeloEdessa\/SyrCOMEdessa.woff"},"FreeFont-Thaana":{"version":"1.0","ttf":"FreeFontThana\/FreeFont-Thaana.ttf","eot":"FreeFontThana\/FreeFont-Thaana.eot","woff":"FreeFontThana\/FreeFont-Thaana.woff","variants":{"bold":"FreeFont-Thaana Bold"}},"FreeFont-Thaana Bold":{"version":"1.0","fontweight":"bold","ttf":"FreeFontThana\/FreeFont-Thaana-Bold.ttf","eot":"FreeFontThana\/FreeFont-Thaana-Bold.eot","woff":"FreeFontThana\/FreeFont-Thaana-Bold.woff"},"GentiumPlus":{"version":"1.510","ttf":"GentiumPlus\/GentiumPlus-R.ttf","eot":"GentiumPlus\/GentiumPlus-R.eot","woff":"GentiumPlus\/GentiumPlus-R.woff","variants":{"italic":"GentiumPlus Italic"}},"GentiumPlus Italic":{"version":"1.510","fontstyle":"italic","ttf":"GentiumPlus\/GentiumPlus-I.ttf","eot":"GentiumPlus\/GentiumPlus-I.eot","woff":"GentiumPlus\/GentiumPlus-I.woff"},"Gubbi":{"version":"1.3","eot":"Gubbi\/Gubbi.eot","ttf":"Gubbi\/Gubbi.ttf","woff":"Gubbi\/Gubbi.woff"},"Hanuman":{"version":"1.0","ttf":"Hanuman\/Hanuman.ttf","eot":"Hanuman\/Hanuman.eot","woff":"Hanuman\/Hanuman.woff","variants":{"bold":"Hanuman Bold"}},"Hanuman Bold":{"version":"1.0","fontweight":"bold","ttf":"Hanuman\/Hanumanb.ttf","eot":"Hanuman\/Hanumanb.eot","woff":"Hanuman\/Hanumanb.woff"},"Hussaini Nastaleeq":{"version":"0.01","eot":"HussainiNastaleeq\/hussaini-nastaleeq.eot","ttf":"HussainiNastaleeq\/hussaini-nastaleeq.ttf","woff":"HussainiNastaleeq\/hussaini-nastaleeq.woff"},"Iranian Sans":{"version":"1.000","ttf":"IranianSans\/irsans.ttf","eot":"IranianSans\/irsans.eot","woff":"IranianSans\/irsans.woff","variants":{"bold":"Iranian Sans Bold"}},"Iranian Sans Bold":{"version":"1.000","fontweight":"bold","ttf":"IranianSans\/irsansb.ttf","eot":"IranianSans\/irsansb.eot","woff":"IranianSans\/irsansb.woff"},"Iranian Serif":{"version":"1.000","ttf":"IranianSerif\/irseri.ttf","eot":"IranianSerif\/irseri.eot","woff":"IranianSerif\/irseri.woff"},"Jomolhari":{"version":"0.003","eot":"Jomolhari\/Jomolhari.eot","ttf":"Jomolhari\/Jomolhari.ttf","woff":"Jomolhari\/Jomolhari.woff"},"Junicode":{"version":"2013-01-17","ttf":"Junicode\/Junicode.ttf","eot":"Junicode\/Junicode.eot","woff":"Junicode\/Junicode.woff","variants":{"bold":"Junicode Bold","bolditalic":"Junicode Bold Italic","italic":"Junicode Italic"}},"Junicode Bold":{"version":"2013-01-17","fontweight":"bold","ttf":"Junicode\/Junicode-Bold.ttf","eot":"Junicode\/Junicode-Bold.eot","woff":"Junicode\/Junicode-Bold.woff"},"Junicode Bold Italic":{"version":"2013-01-17","fontweight":"bold","fontstyle":"italic","ttf":"Junicode\/Junicode-BoldItalic.ttf","eot":"Junicode\/Junicode-BoldItalic.eot","woff":"Junicode\/Junicode-BoldItalic.woff"},"Junicode Italic":{"version":"2013-01-17","fontstyle":"italic","ttf":"Junicode\/Junicode-Italic.ttf","eot":"Junicode\/Junicode-Italic.eot","woff":"Junicode\/Junicode-Italic.woff"},"KhmerOS":{"version":"1.10","eot":"KhmerOS\/KhmerOS.eot","ttf":"KhmerOS\/KhmerOS.ttf","woff":"KhmerOS\/KhmerOS.woff"},"KhmerOSbattambang":{"version":"1.10","eot":"KhmerOSbattambang\/KhmerOSbattambang.eot","ttf":"KhmerOSbattambang\/KhmerOSbattambang.ttf","woff":"KhmerOSbattambang\/KhmerOSbattambang.woff"},"Lateef":{"version":"1.001","ttf":"Lateef\/LateefRegOT.ttf","eot":"Lateef\/LateefRegOT.eot","woff":"Lateef\/LateefRegOT.woff"},"Linux Libertine":{"version":"5.3.0","ttf":"LinuxLibertine\/LinLibertine_Rah.ttf","eot":"LinuxLibertine\/LinLibertine_Rah.eot","woff":"LinuxLibertine\/LinLibertine_Rah.woff","variants":{"bold":"Linux Libertine Bold","bolditalic":"Linux Libertine Bold Italic","italic":"Linux Libertine Italic"}},"Linux Libertine Bold":{"version":"5.3.0","fontweight":"bold","ttf":"LinuxLibertine\/LinLibertine_RBah.ttf","eot":"LinuxLibertine\/LinLibertine_RBah.eot","woff":"LinuxLibertine\/LinLibertine_RBah.woff"},"Linux Libertine Bold Italic":{"version":"5.3.0","fontweight":"bold","fontstyle":"italic","ttf":"LinuxLibertine\/LinLibertine_RBIah.ttf","eot":"LinuxLibertine\/LinLibertine_RBIah.eot","woff":"LinuxLibertine\/LinLibertine_RBIah.woff"},"Linux Libertine Italic":{"version":"5.3.0","fontstyle":"italic","ttf":"LinuxLibertine\/LinLibertine_RIah.ttf","eot":"LinuxLibertine\/LinLibertine_RIah.eot","woff":"LinuxLibertine\/LinLibertine_RIah.woff"},"Lohit Assamese":{"version":"2.5.3","eot":"LohitAssamese\/Lohit-Assamese.eot","ttf":"LohitAssamese\/Lohit-Assamese.ttf","woff":"LohitAssamese\/Lohit-Assamese.woff"},"Lohit Bengali":{"version":"2.5.3","eot":"LohitBengali\/Lohit-Bengali.eot","ttf":"LohitBengali\/Lohit-Bengali.ttf","woff":"LohitBengali\/Lohit-Bengali.woff"},"Lohit Devanagari":{"version":"2.5.3","eot":"LohitDevanagari\/Lohit-Devanagari.eot","ttf":"LohitDevanagari\/Lohit-Devanagari.ttf","woff":"LohitDevanagari\/Lohit-Devanagari.woff"},"Lohit Gujarati":{"version":"2.5.3","eot":"LohitGujarati\/Lohit-Gujarati.eot","ttf":"LohitGujarati\/Lohit-Gujarati.ttf","woff":"LohitGujarati\/Lohit-Gujarati.woff"},"Lohit Kannada":{"version":"2.5.3","eot":"LohitKannada\/Lohit-Kannada.eot","ttf":"LohitKannada\/Lohit-Kannada.ttf","woff":"LohitKannada\/Lohit-Kannada.woff"},"Lohit Marathi":{"version":"2.5.3","eot":"LohitMarathi\/Lohit-Marathi.eot","ttf":"LohitMarathi\/Lohit-Marathi.ttf","woff":"LohitMarathi\/Lohit-Marathi.woff"},"Lohit Nepali":{"version":"2.5.3","eot":"LohitNepali\/Lohit-Nepali.eot","ttf":"LohitNepali\/Lohit-Nepali.ttf","woff":"LohitNepali\/Lohit-Nepali.woff"},"Lohit Odia":{"version":"2.5.5","eot":"LohitOdia\/Lohit-Odia.eot","ttf":"LohitOdia\/Lohit-Odia.ttf","woff":"LohitOdia\/Lohit-Odia.woff"},"Lohit Punjabi":{"version":"2.5.3","eot":"LohitPunjabi\/Lohit-Punjabi.eot","ttf":"LohitPunjabi\/Lohit-Punjabi.ttf","woff":"LohitPunjabi\/Lohit-Punjabi.woff"},"Lohit Tamil":{"version":"2.5.3","eot":"LohitTamil\/Lohit-Tamil.eot","ttf":"LohitTamil\/Lohit-Tamil.ttf","woff":"LohitTamil\/Lohit-Tamil.woff"},"Lohit Tamil Classical":{"version":"2.5.3","eot":"LohitTamilClassical\/Lohit-Tamil-Classical.eot","ttf":"LohitTamilClassical\/Lohit-Tamil-Classical.ttf","woff":"LohitTamilClassical\/Lohit-Tamil-Classical.woff"},"Lohit Telugu":{"version":"2.5.3","eot":"LohitTelugu\/Lohit-Telugu.eot","ttf":"LohitTelugu\/Lohit-Telugu.ttf","woff":"LohitTelugu\/Lohit-Telugu.woff"},"Madan":{"version":"2","eot":"madan\/madan.eot","ttf":"madan\/madan.ttf","woff":"madan\/madan.woff"},"Meera":{"version":"6.0","eot":"Meera\/Meera.eot","ttf":"Meera\/Meera.ttf","woff":"Meera\/Meera.woff"},"Miriam CLM":{"version":"0.130","eot":"MiriamCLM\/MiriamCLM-Book.eot","ttf":"MiriamCLM\/MiriamCLM-Book.ttf","woff":"MiriamCLM\/MiriamCLM-Book.woff"},"Myanmar3":{"version":"3.0","eot":"Myanmar3\/Myanmar3.eot","ttf":"Myanmar3\/Myanmar3.ttf","woff":"Myanmar3\/Myanmar3.woff"},"NafeesWeb":{"version":"1.2","eot":"NafeesWeb\/NafeesWeb.eot","ttf":"NafeesWeb\/NafeesWeb.ttf","woff":"NafeesWeb\/NafeesWeb.woff"},"Nazli":{"version":"0.4","ttf":"Nazli\/Nazli.ttf","eot":"Nazli\/Nazli.eot","woff":"Nazli\/Nazli.woff","variants":{"bold":"Nazli Bold"}},"Nazli Bold":{"version":"0.4","fontweight":"bold","ttf":"Nazli\/Nazli-bold.ttf","eot":"Nazli\/Nazli-bold.eot","woff":"Nazli\/Nazli-bold.woff"},"Nokora Bold":{"version":"1.10","fontweight":"bold","eot":"Nokora\/Nokora-Regular.eot","woff":"Nokora\/Nokora-Regular.woff","ttf":"Nokora\/Nokora-Regular.ttf"},"Nokora Regular":{"version":"1.10","ttf":"Nokora\/Nokora-Regular.ttf","eot":"Nokora\/Nokora-Regular.eot","woff":"Nokora\/Nokora-Regular.woff","variants":{"bold":"Nokora Bold"}},"Nuosu SIL":{"version":"2.1.1","ttf":"NuosuSIL\/NuosuSIL.ttf","eot":"NuosuSIL\/NuosuSIL.eot","woff":"NuosuSIL\/NuosuSIL.woff"},"OpenDyslexic":{"version":"2.1.0+git060dc841","ttf":"OpenDyslexic\/OpenDyslexic-Regular.ttf","eot":"OpenDyslexic\/OpenDyslexic-Regular.eot","woff":"OpenDyslexic\/OpenDyslexic-Regular.woff","variants":{"bold":"OpenDyslexic Bold","bolditalic":"OpenDyslexic BoldItalic","italic":"OpenDyslexic Italic"}},"OpenDyslexic Bold":{"version":"2.1.0+git060dc841","fontweight":"bold","ttf":"OpenDyslexic\/OpenDyslexic-Bold.ttf","eot":"OpenDyslexic\/OpenDyslexic-Bold.eot","woff":"OpenDyslexic\/OpenDyslexic-Bold.woff"},"OpenDyslexic BoldItalic":{"version":"2.1.0+git060dc841","fontweight":"bold","fontstyle":"italic","ttf":"OpenDyslexic\/OpenDyslexic-BoldItalic.ttf","eot":"OpenDyslexic\/OpenDyslexic-BoldItalic.eot","woff":"OpenDyslexic\/OpenDyslexic-BoldItalic.woff"},"OpenDyslexic Italic":{"version":"2.1.0+git060dc841","fontstyle":"italic","ttf":"OpenDyslexic\/OpenDyslexic-Italic.ttf","eot":"OpenDyslexic\/OpenDyslexic-Italic.eot","woff":"OpenDyslexic\/OpenDyslexic-Italic.woff"},"OskiEast":{"version":"2.200","ttf":"OskiEast\/oskie.ttf","eot":"OskiEast\/oskie.eot","woff":"OskiEast\/oskie.woff","variants":{"bold":"OskiEast Bold","bolditalic":"OskiEast Bold Italic","italic":"OskiEast Italic"}},"OskiEast Bold":{"version":"2.200","fontweight":"bold","ttf":"OskiEast\/oskiebold.ttf","eot":"OskiEast\/oskiebold.eot","woff":"OskiEast\/oskiebold.woff"},"OskiEast Bold Italic":{"version":"2.200","fontweight":"bold","fontstyle":"italic","ttf":"OskiEast\/oskiebolditalic.ttf","eot":"OskiEast\/oskiebolditalic.eot","woff":"OskiEast\/oskiebolditalic.woff"},"OskiEast Italic":{"version":"2.200","fontstyle":"italic","ttf":"OskiEast\/oskieitalic.ttf","eot":"OskiEast\/oskieitalic.eot","woff":"OskiEast\/oskieitalic.woff"},"Padauk":{"version":"2.8","eot":"Padauk\/Padauk-Regular.eot","ttf":"Padauk\/Padauk-Regular.ttf","woff":"Padauk\/Padauk-Regular.woff"},"Pagul":{"version":"1.0","eot":"Pagul\/Pagul.eot","ttf":"Pagul\/Pagul.ttf","woff":"Pagul\/Pagul.woff"},"Pangururan":{"version":"1.0.5","ttf":"Pangururan\/Pangururan.ttf","eot":"Pangururan\/Pangururan.eot","woff":"Pangururan\/Pangururan.woff"},"Phetsarath":{"version":"1.01","ttf":"Phetsarath\/Phetsarath-Regular.ttf","eot":"Phetsarath\/Phetsarath-Regular.eot","woff":"Phetsarath\/Phetsarath-Regular.woff","variants":{"bold":"Phetsarath-Bold"}},"Phetsarath-Bold":{"version":"1.01","fontweight":"bold","ttf":"Phetsarath\/Phetsarath-Bold.ttf","eot":"Phetsarath\/Phetsarath-Bold.eot","woff":"Phetsarath\/Phetsarath-Bold.woff"},"RailwaySans":{"version":"2013-12-15","ttf":"RailwaySans\/RailwaySans.ttf","eot":"RailwaySans\/RailwaySans.eot","woff":"RailwaySans\/RailwaySans.woff"},"Saab":{"version":"0.91","eot":"Saab\/Saab.eot","ttf":"Saab\/Saab.ttf","woff":"Saab\/Saab.woff"},"Saweri":{"version":"2","eot":"saweri\/saweri.eot","ttf":"saweri\/saweri.ttf","woff":"saweri\/saweri.woff"},"Scheherazade":{"version":"2.010","ttf":"Scheherazade\/Scheherazade-R.ttf","eot":"Scheherazade\/Scheherazade-R.eot","woff":"Scheherazade\/Scheherazade-R.woff"},"SertoUrhoy":{"version":"1.20","eot":"SertoUrhoy\/SyrCOMUrhoy.eot","ttf":"SertoUrhoy\/SyrCOMUrhoy.ttf","woff":"SertoUrhoy\/SyrCOMUrhoy.woff"},"Shapour":{"version":"001.000","eot":"Shapour\/Shapour.eot","ttf":"Shapour\/Shapour.ttf","woff":"Shapour\/Shapour.woff"},"Siyam Rupali":{"version":"1.070","eot":"SiyamRupali\/SiyamRupali.eot","ttf":"SiyamRupali\/SiyamRupali.ttf","woff":"SiyamRupali\/SiyamRupali.woff"},"Suwannaphum":{"version":"2.00","ttf":"Suwannaphum\/Suwannaphum.ttf","eot":"Suwannaphum\/Suwannaphum.eot","woff":"Suwannaphum\/Suwannaphum.woff"},"Taamey Frank CLM":{"version":"0.110","eot":"TaameyFrankCLM\/TaameyFrankCLM.eot","ttf":"TaameyFrankCLM\/TaameyFrankCLM.ttf","woff":"TaameyFrankCLM\/TaameyFrankCLM.woff"},"TharLon":{"version":"1.003","eot":"TharLon\/TharLon.eot","ttf":"TharLon\/TharLon.ttf","woff":"TharLon\/TharLon.woff"},"Thendral":{"version":"1.0","eot":"Thendral\/ThendralUni.eot","ttf":"Thendral\/ThendralUni.ttf","woff":"Thendral\/ThendralUni.woff"},"Thenee":{"version":"1.0","eot":"Thenee\/TheneeUni.eot","ttf":"Thenee\/TheneeUni.ttf","woff":"Thenee\/TheneeUni.woff"},"Tuladha Jejeg":{"version":"2.0.1","eot":"TuladhaJejeg\/TuladhaJejeg_gr.eot","ttf":"TuladhaJejeg\/TuladhaJejeg_gr.ttf","woff":"TuladhaJejeg\/TuladhaJejeg_gr.woff"},"UnifrakturMaguntia":{"version":"2014-07-06","ttf":"UnifrakturMaguntia\/UnifrakturMaguntia.ttf","eot":"UnifrakturMaguntia\/UnifrakturMaguntia.eot","woff":"UnifrakturMaguntia\/UnifrakturMaguntia.woff"},"Utkal":{"version":"0.13","eot":"utkal\/utkal.eot","ttf":"utkal\/utkal.ttf","woff":"utkal\/utkal.woff"},"lklug":{"version":"0.6","ttf":"lklug\/lklug.ttf","eot":"lklug\/lklug.eot","woff":"lklug\/lklug.woff"}}};
+}( jQuery ) );
diff --git a/MLEB/UniversalLanguageSelector/scripts/update-jquery-i18n.sh b/MLEB/UniversalLanguageSelector/scripts/update-jquery-i18n.sh
new file mode 100755
index 00000000..537164be
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/scripts/update-jquery-i18n.sh
@@ -0,0 +1,17 @@
+#!/bin/bash
+
+DEST="../lib/jquery.i18n";
+CLONEDIR="/tmp/jquery.i18n";
+HERE=$(pwd);
+UPSTREAM="https://github.com/wikimedia/jquery.i18n.git";
+
+echo -e "Getting latest jquery.i18n from $UPSTREAM\n";
+
+if [ -d $CLONEDIR ]; then
+ git pull;
+else
+ git clone $UPSTREAM $CLONEDIR;
+fi
+
+cd "$HERE";
+cp -rf $CLONEDIR/src/* $DEST
diff --git a/MLEB/UniversalLanguageSelector/scripts/update-jquery-ime.sh b/MLEB/UniversalLanguageSelector/scripts/update-jquery-ime.sh
new file mode 100755
index 00000000..bb5e8b2e
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/scripts/update-jquery-ime.sh
@@ -0,0 +1,20 @@
+#!/bin/bash
+
+DEST="../lib/jquery.ime";
+CLONEDIR="/tmp/jquery.ime";
+HERE=$(pwd);
+UPSTREAM="https://github.com/wikimedia/jquery.ime.git";
+
+echo -e "Getting latest jquery.ime from $UPSTREAM\n";
+
+if [ -d $CLONEDIR ]; then
+ git pull;
+else
+ git clone $UPSTREAM $CLONEDIR;
+fi
+
+cd $CLONEDIR;
+npm install;
+grunt copy concat;
+cd "$HERE";
+cp -rf $CLONEDIR/dist/jquery.ime/{images,css,rules,jquery.ime.js} $DEST;
diff --git a/MLEB/UniversalLanguageSelector/scripts/update-jquery-uls.sh b/MLEB/UniversalLanguageSelector/scripts/update-jquery-uls.sh
new file mode 100755
index 00000000..8797d669
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/scripts/update-jquery-uls.sh
@@ -0,0 +1,17 @@
+#!/bin/bash
+
+DEST="../lib/jquery.uls";
+CLONEDIR="/tmp/jquery.uls";
+HERE=$(pwd);
+UPSTREAM="https://github.com/wikimedia/jquery.uls.git";
+
+echo -e "Getting latest jquery.uls from $UPSTREAM\n";
+
+if [ -d $CLONEDIR ]; then
+ git pull;
+else
+ git clone $UPSTREAM $CLONEDIR;
+fi
+
+cd "$HERE";
+cp -rf $CLONEDIR/{images,css,src,i18n} $DEST
diff --git a/MLEB/UniversalLanguageSelector/scripts/update-jquery-webfonts.sh b/MLEB/UniversalLanguageSelector/scripts/update-jquery-webfonts.sh
new file mode 100755
index 00000000..f2ff8115
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/scripts/update-jquery-webfonts.sh
@@ -0,0 +1,17 @@
+#!/bin/bash
+
+DEST="../lib/";
+CLONEDIR="/tmp/jquery.webfonts";
+HERE=$(pwd);
+UPSTREAM="https://github.com/wikimedia/jquery.webfonts.git";
+
+echo -e "Getting latest jquery.webfonts from $UPSTREAM\n";
+
+if [ -d $CLONEDIR ]; then
+ git pull;
+else
+ git clone $UPSTREAM $CLONEDIR;
+fi
+
+cd "$HERE";
+cp -rf $CLONEDIR/src/* $DEST
diff --git a/MLEB/UniversalLanguageSelector/tests/autonym.html b/MLEB/UniversalLanguageSelector/tests/autonym.html
new file mode 100644
index 00000000..48626b77
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/tests/autonym.html
@@ -0,0 +1,117 @@
+<!DOCTYPE html>
+<html lang="en">
+<head>
+<meta charset="utf-8" />
+<title>Autonym font Example</title>
+<meta name="description" content="A test page for the Autonym font" />
+<script src="//ajax.googleapis.com/ajax/libs/jquery/1.10.1/jquery.min.js"></script>
+<script src="../lib/jquery.uls/src/jquery.uls.data.js"></script>
+<script src="../lib/jquery.uls/src/jquery.uls.data.utils.js"></script>
+<style>
+@font-face {
+ font-family: 'Autonym';
+ src: url('../data/fontrepo/fonts/Autonym/Autonym.eot');
+ src: local('Autonym'),
+ url('../data/fontrepo/fonts/Autonym/Autonym.woff') format('woff'),
+ url('../data/fontrepo/fonts/Autonym/Autonym.ttf') format('truetype');
+ font-style: normal;
+}
+
+table, th, td {
+ border: 1px solid #ddd;
+ border-collapse:collapse;
+ padding: 5px;
+}
+
+td.lang,
+td.index {
+ background-color: #ccc;
+}
+</style>
+</head>
+<body>
+<h1>Autonym Font</h1>
+<p>The following table in this page uses the <a href="https://github.com/santhoshtr/AutonymFont">Autonym</a>
+ font for displaying language names without font issues.</p>
+<p>Version: 20131118</p>
+<hr/>
+<div>
+<label for="font-selector">Select a font:</label>
+<select id="font-selector">
+ <option value="Autonym">Autonym</option>
+ <option value="sans-serif">sans-serif</option>
+ <option value="Autonym, sans-serif">Autonym, sans-serif</option>
+ <option value="sans-serif, Autonym">sans-serif, Autonym</option>
+ <option value="Verdana, Arial, Helvetica, Autonym, sans-serif">Verdana, Arial, Helvetica, Autonym, sans-serif</option>
+</select>
+<select id="size-selector">
+ <option value="8">Select size (px)</option>
+ <option value="8">8</option>
+ <option value="9">9</option>
+ <option value="10">10</option>
+ <option value="11">11</option>
+ <option value="12">12</option>
+ <option value="13">13</option>
+ <option value="14">14</option>
+ <option value="16">16</option>
+ <option value="20">20</option>
+ <option value="24">24</option>
+ <option value="30">30</option>
+ <option value="36">36</option>
+ <option value="48">48</option>
+</select>
+<table><tr></tr></table>
+<div>A dropdown example:
+<select class="dropdown autonym">
+</select>
+</div>
+<script>
+var index = 1,
+ $fontSelector = $( '#font-selector' ),
+ $sizeSelector = $( '#size-selector' );
+
+$fontSelector.change( function () {
+ $( '.autonym' ).css( 'font-family', $( this ).val() );
+});
+
+$sizeSelector.change( function () {
+ $( '.autonym' ).css( 'font-size', $( this ).val() + 'px' );
+});
+
+$.each( $.uls.data.languages, function( langCode ) {
+ var autonym = $.uls.data.getAutonym( langCode ),
+ dir = $.uls.data.getDir( langCode );
+
+ $( '.dropdown' ).append(
+ $( '<option>')
+ .attr( {
+ lang: langCode,
+ dir: dir
+ } )
+ .text( autonym )
+ );
+
+ $( 'table' ).append(
+ $( '<tr>' ).append(
+ $( '<td>' )
+ .addClass( 'index' )
+ .text( index++ ),
+ $( '<td>' )
+ .addClass( 'lang' )
+ .text( langCode ),
+ $( '<td>' )
+ .addClass( 'name autonym' )
+ .attr( {
+ lang: langCode,
+ dir: dir
+ } )
+ .text( autonym )
+ )
+ );
+} );
+
+// Apply the initial font
+$( '.autonym' ).css( 'font-family', $fontSelector.val() );
+</script>
+</div>
+</body>
diff --git a/MLEB/UniversalLanguageSelector/tests/browser/README.md b/MLEB/UniversalLanguageSelector/tests/browser/README.md
new file mode 100644
index 00000000..36319498
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/tests/browser/README.md
@@ -0,0 +1 @@
+Please see https://github.com/wikimedia/mediawiki-selenium for instructions on how to run tests.
diff --git a/MLEB/UniversalLanguageSelector/tests/browser/features/accept_language.feature b/MLEB/UniversalLanguageSelector/tests/browser/features/accept_language.feature
new file mode 100644
index 00000000..4290803f
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/tests/browser/features/accept_language.feature
@@ -0,0 +1,14 @@
+@custom-browser @firefox @internet_explorer_10 @phantomjs @sandbox.translatewiki.net
+Feature: Accept-Language
+
+ Scenario Outline: Accept-Language
+ Given that my browser's accept language is <language>
+ When I am at the preferences page
+ Then link to the main page has text <text>
+
+ Examples:
+ | language | text |
+ | de | Hauptseite |
+ | sr | Главна страна |
+ | sr-ec | Главна страна |
+ | sr-el | Glavna strana |
diff --git a/MLEB/UniversalLanguageSelector/tests/browser/features/autonym.feature b/MLEB/UniversalLanguageSelector/tests/browser/features/autonym.feature
new file mode 100644
index 00000000..be37933b
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/tests/browser/features/autonym.feature
@@ -0,0 +1,39 @@
+@firefox @internet_explorer_10 @phantomjs
+Feature: Autonym font
+
+ * With tofu detection in ULS, system fonts will be given preference over webfonts.
+ * Reference: https://upload.wikimedia.org/wikipedia/commons/7/7d/ULS-WebFonts-Workflow-Diagram.png
+
+ @login
+ Scenario: Autonym font is used in the ULS language search dialog for display language selection by logged-in users
+ Given I am logged in
+ And I open the Universal Language Selector
+ And I open Display panel of language settings
+ When I click the button with the ellipsis
+ Then the language list of ULS should use Autonym font
+
+ @login
+ Scenario: Autonym font is used in the ULS language search dialog for input language selection by logged-in users
+ Given I am logged in
+ And I open the Universal Language Selector
+ And I switch to Input panel of language settings
+ When I click the button with the ellipsis
+ Then the language list of ULS should use Autonym font
+
+ Scenario: Autonym font should be used in the Interlanguage area of a page only with Interlanguage links
+ When I am on the main page
+ Then the Interlanguage links should use Autonym font
+ And elements that are not Interlanguage links should not use Autonym font
+
+ Scenario: Autonym font is used in the ULS language search dialog for input language selection by anonymous users
+ Given I am at the main page
+ And I open the Universal Language Selector
+ And I open Input side panel of language settings
+ When I click the button with the ellipsis
+ Then the language list of ULS should use Autonym font
+
+ #Autonym is blacklisted in Interlanguage area at moment, and may whitelist in future.
+ Scenario: Autonym font should be used in the Interlanguage area of a page only with Interlanguage links
+ When I am on the main page
+ Then the Interlanguage links should use Autonym font
+ And elements that are not Interlanguage links should not use Autonym font
diff --git a/MLEB/UniversalLanguageSelector/tests/browser/features/font_selection_default_disabled.feature b/MLEB/UniversalLanguageSelector/tests/browser/features/font_selection_default_disabled.feature
new file mode 100644
index 00000000..71f9bbd0
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/tests/browser/features/font_selection_default_disabled.feature
@@ -0,0 +1,93 @@
+@commons.wikimedia.beta.wmflabs.org @firefox @internet_explorer_10 @login @phantomjs
+Feature: Font selection default disabled
+
+ In order to have better using experience,
+ As a reader and writer,
+ I want to change or disable the fonts for interface and content.
+
+ In addition the user is provided live preview feature: changes are applied
+ immediately when selection is made. Changes can either be applied or discarded
+ for easy testing.
+
+ This feature is similar to font_selection_default_enabled,
+ but it is targeted at wikis where automatic font downloading
+ is disabled by default ($wgULSWebfontsEnabled = false).
+
+ Background:
+ Given I am logged in
+ And I have reset my preferences
+ And I set "German" as the interface language
+ And I open ULS
+ And I open Display panel of language settings
+ When I open Fonts panel of language settings
+
+ Scenario: Font selector pane appears
+ Then a font selector for interface language doesn't appear
+ And a font selector for content language doesn't appear
+ And the checkbox to enable fonts downloading appears
+ And the checkbox to enable fonts downloading is not checked
+ And webfonts are not applied to body
+
+ Scenario: Enabling fonts downloading with live preview
+ When I click the checkbox to enable fonts downloading
+ Then a font selector for interface language appears
+ And a font selector for content language appears
+ And the checkbox to enable fonts downloading appears
+ And the checkbox to enable fonts downloading is checked
+ And the selected content font must be system
+ And webfonts are applied to body
+
+ Scenario: Enabling fonts downloading without saving the preferences
+ When I click the checkbox to enable fonts downloading
+ And I select OpenDyslexic font for the content language for the live preview
+ And I close the panel to discard the changes
+ And I open Display panel of language settings
+ Then a font selector for interface language doesn't appear
+ And a font selector for content language doesn't appear
+ And the active interface font must be the same as font prior to the preview
+ And the active content font must be the same as font prior to the preview
+
+ Scenario: Enabling fonts downloading and saving the preferences
+ When I click the checkbox to enable fonts downloading
+ And I select OpenDyslexic font for the interface language for the live preview
+ And I apply the changes
+ Then webfonts are applied to body
+ And the interface font is OpenDyslexic
+
+ Scenario: Enabling fonts downloading and going to another page
+ When I click the checkbox to enable fonts downloading
+ And I select OpenDyslexic font for the content language for the live preview
+ And I apply the changes
+ And I am on the main page
+ Then webfonts are applied to body
+ And the content font is OpenDyslexic
+
+ Scenario: Enabling fonts downloading and then disabling them
+ When I click the checkbox to enable fonts downloading
+ And I select OpenDyslexic font for the interface language for the live preview
+ And I apply the changes
+ And I am on the main page
+ And I open ULS
+ And I open Display panel of language settings
+ And I open Fonts panel of language settings
+ And I click the checkbox to disable fonts downloading
+ Then a font selector for interface language doesn't appear
+ And a font selector for content language doesn't appear
+
+ Scenario: Enabling fonts downloading and then disabling them and saving the preferences
+ When I click the checkbox to enable fonts downloading
+ And I select OpenDyslexic font for the interface language for the live preview
+ And I apply the changes
+ And I am on the main page
+ And I open ULS
+ And I open Display panel of language settings
+ And I open Fonts panel of language settings
+ And I click the checkbox to disable fonts downloading
+ And I apply the changes
+ And I am on the main page
+ And I open ULS
+ And I open Display panel of language settings
+ Then a font selector for interface language doesn't appear
+ And a font selector for content language doesn't appear
+ And the checkbox to enable fonts downloading is not checked
+ And webfonts are not applied to body
diff --git a/MLEB/UniversalLanguageSelector/tests/browser/features/font_selection_default_enabled.feature b/MLEB/UniversalLanguageSelector/tests/browser/features/font_selection_default_enabled.feature
new file mode 100644
index 00000000..89007db1
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/tests/browser/features/font_selection_default_enabled.feature
@@ -0,0 +1,78 @@
+@firefox @internet_explorer_10 @language-browsertests.wmflabs.org @login @phantomjs
+Feature: Font selection default enabled
+
+ In order to have better using experience,
+ As a reader and writer,
+ I want to change or disable the fonts for interface and content.
+
+ In addition the user is provided live preview feature: changes are applied
+ immediately when selection is made. Changes can either be applied or discarded
+ for easy testing.
+
+ This feature is similar to font_selection_default_disabled,
+ but it is targeted at wikis where automatic font downloading
+ is enabled by default ($wgULSWebfontsEnabled = true).
+
+ Background:
+ Given I am logged in
+ And I have reset my preferences
+ And I set "German" as the interface language
+ And I open ULS
+ And I open Display panel of language settings
+ When I open Fonts panel of language settings
+
+ Scenario: Font selector pane appears
+ Then a font selector for interface language appears
+ And a font selector for content language appears
+ And the checkbox to enable fonts downloading appears
+ And the checkbox to enable fonts downloading is checked
+ And webfonts are applied to body
+
+ Scenario: Discarding live preview of content font
+ When I select OpenDyslexic font for the content language for the live preview
+ And I close the panel to discard the changes
+ And I open Display panel of language settings
+ Then the selected content font must be system
+ And the active content font must be the same as font prior to the preview
+
+ Scenario: Discarding live preview of interface font
+ When I select OpenDyslexic font for the interface language for the live preview
+ And I close the panel to discard the changes
+ Then the active interface font must be the same as font prior to the preview
+ And the selected interface font must be Systemschriftart
+
+ Scenario: Applying the live preview of interface font
+ When I select OpenDyslexic font for the interface language for the live preview
+ And I apply the changes
+ Then the interface font is OpenDyslexic
+
+ Scenario: Disabling fonts if they are enabled by default
+ When I click the checkbox to enable fonts downloading
+ Then a font selector for interface language doesn't appear
+ And a font selector for content language doesn't appear
+ And the checkbox to enable fonts downloading is not checked
+
+ Scenario: Disabling fonts when they are enabled by default and going to another page
+ When I click the checkbox to disable fonts downloading
+ And I apply the changes
+ And I am on the main page
+ And I open ULS
+ And I open Display panel of language settings
+ Then a font selector for interface language doesn't appear
+ And a font selector for content language doesn't appear
+ And the checkbox to enable fonts downloading is not checked
+ And webfonts are not applied to body
+
+ Scenario: Disabling fonts, going to another page, and re-enabling fonts
+ When I click the checkbox to disable fonts downloading
+ And I apply the changes
+ And I am on the main page
+ And I open ULS
+ And I open Display panel of language settings
+ And I open Fonts panel of language settings
+ And I click the checkbox to enable fonts downloading
+ Then a font selector for interface language appears
+ And a font selector for content language appears
+ And the checkbox to enable fonts downloading appears
+ And the checkbox to enable fonts downloading is checked
+ And webfonts are applied to body
diff --git a/MLEB/UniversalLanguageSelector/tests/browser/features/ime.feature b/MLEB/UniversalLanguageSelector/tests/browser/features/ime.feature
new file mode 100644
index 00000000..fa8bfcbc
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/tests/browser/features/ime.feature
@@ -0,0 +1,68 @@
+@firefox @phantomjs
+Feature: Input method engine
+
+User is able to select among different input methods via a menu which is
+activated by the input method indicator. User can type with selected input
+method in different input fields and temporarily activate and deactivate the
+input method.
+
+ @clean @commons.wikimedia.beta.wmflabs.org @internet_explorer_10
+ Scenario: Input method indicator is shown
+
+ The input method indicator is shown when input field gets a focus.
+
+ Given I am at the main page
+ When I click on an input box
+ Then I should see the input method indicator
+
+ @commons.wikimedia.beta.wmflabs.org @internet_explorer_10
+ Scenario: Input method menu
+
+ Input method menu is shown when user clicks the input method indicator.
+
+ Given I am at the main page
+ When I click on an input box
+ And I click on the input method indicator
+ Then I should see input methods for English
+ And I should see a list of available input methods
+ And I should see a list of suggested languages
+
+ @internet_explorer_10
+ Scenario: Unsupported input language
+
+ User visits a wiki with content language that does not have have an input
+ method.
+
+ Given I am on a wiki in Kotava language
+ When I open the input method menu
+ Then I should see input methods for Kotava
+
+ @commons.wikimedia.beta.wmflabs.org
+ Scenario: Sticky input methods
+
+ Chosen input method selection persists across page loads.
+
+ Given I am at the main page
+ When I open the input method menu
+ And I choose ml as the input language
+ And I open the input method menu
+ And I click on the Malayalam InScript 2 menu item
+ And I press Control-M
+ And I reload the page
+ And I click on an input box
+ And I press Control-M
+ Then I should see the input method indicator
+ And in it there must be an element with Malayalam text
+
+ @clean @commons.wikimedia.beta.wmflabs.org @internet_explorer_10
+ Scenario Outline: Input method menu is completely visible
+ Given I visit a random page with <skin> skin and <language> as the interface language
+ When I open the input method menu
+ Then I should see the input method menu is not offscreen
+
+ Examples:
+ | skin | language |
+ | Vector | English |
+ | Vector | Hebrew |
+ | Monobook | English |
+ #| Monobook | Hebrew |
diff --git a/MLEB/UniversalLanguageSelector/tests/browser/features/live_preview_of_display_language.feature b/MLEB/UniversalLanguageSelector/tests/browser/features/live_preview_of_display_language.feature
new file mode 100644
index 00000000..d12fdbf3
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/tests/browser/features/live_preview_of_display_language.feature
@@ -0,0 +1,45 @@
+@firefox @internet_explorer_10 @login @phantomjs
+Feature: Live preview of display language changes
+
+ Background:
+ Given I am logged in
+ And I have reset my preferences
+ And I am at the main page
+
+ @commons.wikimedia.beta.wmflabs.org
+ Scenario: Display language change is previewed immediately
+ Given I open the Universal Language Selector
+ And I open Display panel of language settings
+ And I click the button with the ellipsis
+ And in the language filter I type malayalam
+ And I click on the link to select Malayalam
+ Then I should see the text in the language panel in Malayalam
+
+ @clean @commons.wikimedia.beta.wmflabs.org
+ Scenario: Live preview of display language changes can be reverted on cancel
+ Given I open the Universal Language Selector
+ And I open Display panel of language settings
+ And I select a language different than English for display language
+ When I click Cancel
+ And I open Display panel of language settings
+ Then I should see the text in the language panel in English
+
+ @clean @commons.wikimedia.beta.wmflabs.org
+ Scenario: Live preview of display language changes can be reverted on closing the dialog with the X button
+ Given I open the Universal Language Selector
+ And I open Display panel of language settings
+ And I select a language different than English for display language
+ When I click X
+ And I open Display panel of language settings
+ Then I should see the text in the language panel in English
+
+ # https://bugzilla.wikimedia.org/57967
+ # @clean @commons.wikimedia.beta.wmflabs.org
+ Scenario: Live preview of display language changes can be reverted on closing the dialog on cancel from a different panel
+ Given I open the Universal Language Selector
+ And I open Display panel of language settings
+ And I select a language different than English for display language
+ And I switch to Input panel of language settings
+ When I click Cancel
+ And I open Display panel of language settings
+ Then I should see the text in the language panel in English
diff --git a/MLEB/UniversalLanguageSelector/tests/browser/features/persistent_settings.feature b/MLEB/UniversalLanguageSelector/tests/browser/features/persistent_settings.feature
new file mode 100644
index 00000000..b3dac0f7
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/tests/browser/features/persistent_settings.feature
@@ -0,0 +1,37 @@
+# First scenario seems to fail whenever OpenDyslexic is missing
+@firefox @internet_explorer_10 @login @phantomjs
+Feature: Persistent settings
+
+ This assumes wiki content language is English.
+
+ Background:
+ Given I am logged in
+ And I have reset my preferences
+ And I set "German" as the interface language
+ And I open the Universal Language Selector
+ And I open Display panel of language settings
+ And I open Fonts panel of language settings
+ And I select OpenDyslexic font for the interface language for the live preview
+
+ @language-browsertests.wmflabs.org
+ Scenario: Interface font sticks to another page
+ When I apply the changes
+ And I am at the main page
+ Then the selected interface font must be OpenDyslexic
+
+ @language-browsertests.wmflabs.org
+ Scenario: Discarding a live preview of a font keeps the previous font
+ When I close the panel to discard the changes
+ And I am at the main page
+ Then the selected interface font must be Systemschriftart
+
+ Scenario: Changing both a font and an input method is saved
+ When I open Input side panel of language settings
+ And I click the button with the ellipsis
+ And in the language filter I type ml
+ And I click on the link to select Malayalam
+ And I select the ml-inscript2 input method in the panel
+ And I apply the changes
+ And I am at the main page
+ Then the selected interface font must be OpenDyslexic
+ And the selected input method for Malayalam is ml-inscript2
diff --git a/MLEB/UniversalLanguageSelector/tests/browser/features/settings_panel.feature b/MLEB/UniversalLanguageSelector/tests/browser/features/settings_panel.feature
new file mode 100644
index 00000000..b7688207
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/tests/browser/features/settings_panel.feature
@@ -0,0 +1,92 @@
+@firefox @internet_explorer_10 @phantomjs
+Feature: Settings panel
+
+ @login @ime-default-on
+ Scenario Outline: Input settings display
+ Given I am <user status>
+ And I am on a page without interlanguage links
+ When I open ULS
+ And I switch to Input panel of language settings
+ Then I can disable input methods
+ And I can enable input methods
+
+ Examples:
+ | user status |
+ | logged out |
+ | logged in |
+
+ Scenario: How to use link appears in the Input settings panel
+ Given I am at the main page
+ When I open ULS
+ And I switch to Input panel of language settings
+ And I click the button with the ellipsis
+ And in the language filter I type ml
+ And I click on the link to select Malayalam
+ Then I should see the How to use link near the Malayalam transliteration item
+
+ Scenario: More languages (input language selection)
+ Given I am at the main page
+ When I open ULS
+ And I switch to Input panel of language settings
+ And I click the button with the ellipsis
+ Then I see Worldwide
+ And I see Language Search
+ And I can navigate back to Input Settings
+
+ @login
+ Scenario: More languages (interface language selection)
+ Given I am logged in
+ When I open Language panel of language settings
+ And I click the button with the ellipsis
+ Then I see Common Languages
+ And I see Worldwide
+ And I see Language Search
+ And I can navigate back to Language Settings
+
+ @login
+ Scenario: Temporary live preview for menu language
+
+ Given I am logged in
+ When I open Language panel of language settings
+ And I click the button with the ellipsis
+ And I use the panel to change my interface language to "German"
+ And I switch to Input panel of language settings
+ And I click X
+ And I open Language panel of language settings
+ Then the panel is in English
+
+ Scenario: The name of site content language is correct when translation language is different
+
+ This feature is a bit hard to test. In most cases content language matches
+ the language of translation. In addition this only applies to anonymous
+ users in wikis where language changing for anonymous users is disabled. So
+ to test this we create a somewhat artificial test case by setting the wiki
+ interface language to a non-default value.
+
+ Given I temporarily use "Finnish" as the interface language
+ When I open Language panel of language settings
+ Then I see "English (sama kuin sisällön)" as the name of the content language
+
+ @login
+ Scenario: Selecting language via [...] button
+
+ Given I am logged in
+ And I have reset my preferences
+ When I open Language panel of language settings
+ And I click the button with the ellipsis
+ And I use the panel to change my interface language to "German"
+ And I apply the changes
+ Then my interface language is "German"
+
+ @login
+ Scenario: Regression test for bug 56913
+
+ Given I am logged in
+ And I have reset my preferences
+ When I open the Universal Language Selector
+ And I switch to Input panel of language settings
+ And I click the button with the ellipsis
+ And I use the panel to change my input language to "Finnish"
+ And I close the panel to discard the changes
+ And I switch to Input panel of language settings
+ Then I should see English as the selected input language
diff --git a/MLEB/UniversalLanguageSelector/tests/browser/features/step_definitions/accept_language_steps.rb b/MLEB/UniversalLanguageSelector/tests/browser/features/step_definitions/accept_language_steps.rb
new file mode 100644
index 00000000..012debdb
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/tests/browser/features/step_definitions/accept_language_steps.rb
@@ -0,0 +1,12 @@
+Given(/^that my browser's accept language is (.+)$/) do |language|
+ @browser = browser(test_name(@scenario), {language: language})
+ $session_id = @browser.driver.instance_variable_get(:@bridge).session_id
+end
+
+When(/^I am at the preferences page$/) do
+ visit PreferencesPage
+end
+
+Then(/^link to the main page has text (.+)$/) do |text|
+ on(MainPage).main_page_element.text.should == text
+end
diff --git a/MLEB/UniversalLanguageSelector/tests/browser/features/step_definitions/autonym_steps.rb b/MLEB/UniversalLanguageSelector/tests/browser/features/step_definitions/autonym_steps.rb
new file mode 100644
index 00000000..5dd2bb27
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/tests/browser/features/step_definitions/autonym_steps.rb
@@ -0,0 +1,15 @@
+When(/^I am on the main page$/) do
+ visit MainPage
+end
+
+Then(/^I open Input side panel of language settings$/) do
+ on(PanelPage).panel_side_input_element.when_visible.click
+end
+
+Then(/^the Interlanguage links should use Autonym font$/) do
+ on(InterlanguagePage).interlang_link_element.style("font-family").should == "'Autonym',sans-serif"
+end
+
+Then(/^elements that are not Interlanguage links should not use Autonym font$/) do
+ on(MainPage).non_interlanguage_links_use_autonym_font?.should == false
+end
diff --git a/MLEB/UniversalLanguageSelector/tests/browser/features/step_definitions/cog_sidebar_user_steps.rb b/MLEB/UniversalLanguageSelector/tests/browser/features/step_definitions/cog_sidebar_user_steps.rb
new file mode 100644
index 00000000..39c11dac
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/tests/browser/features/step_definitions/cog_sidebar_user_steps.rb
@@ -0,0 +1,106 @@
+Given(/^I am on a page with interlanguage links$/) do
+ visit InterlanguagePage
+end
+
+Given(/^I am on a page without interlanguage links$/) do
+ visit NoInterlanguagePage # .add_links_element.when_visible.should be_visible
+ # cannot do this because of https://bugzilla.wikimedia.org/show_bug.cgi?id=49139
+end
+
+Given(/^I am on a talk page with interlanguage links$/) do
+ visit(InterlanguagePage).talk_element.click
+end
+
+Given(/^I am on a talk page without interlanguage links$/) do
+ visit(NoInterlanguagePage).talk_element.click
+end
+
+Given(/^I navigate to the anonymous Language Settings panel$/) do
+ step "I am on a page with interlanguage links"
+ step "I click the cog icon by Languages in the sidebar"
+ step "I see the logged out language settings panel"
+end
+
+Given(/^I navigate to the Language Settings panel$/) do
+ step "I am on a page with interlanguage links"
+ step "I click the cog icon by Languages in the sidebar"
+ step "I see the logged in language settings panel"
+end
+
+When(/^I click the cog icon by Languages in the sidebar$/) do
+ on(NoInterlanguagePage).cog_element.when_present.click
+ # Wait for the panel to open
+ on(PanelPage).panel_display_element.when_visible
+end
+
+Then(/^I can navigate back to Input Settings$/) do
+ on(InterlanguagePage) do |page|
+ page.back_to_input
+ page.x_element.should be_visible
+ end
+end
+
+Then(/^I can navigate back to Language Settings$/) do
+ on(InterlanguagePage) do |page|
+ page.back_to_display
+ page.x_element.should be_visible
+ end
+end
+
+When(/^I choose a different language for writing$/) do
+ on(InterlanguagePage).non_default_language_element.when_visible.click
+end
+
+Then(/^I do not see the Language Settings panel$/) do
+ on(PanelPage) do |page|
+ page.panel_language_element.should_not be_visible
+ page.panel_fonts_element.should_not be_visible
+ page.default_language_button_element.should_not be_visible
+ page.other_language_button_element.should_not be_visible
+ end
+end
+
+Then(/^I see Common Languages$/) do
+ on(InterlanguagePage).language_list.should match Regexp.escape("Common languages")
+end
+
+Then(/^I see Language Search$/) do
+ on(InterlanguagePage).language_search_element.should be_visible
+end
+
+Then(/^I see the logged out language settings panel$/) do
+ on(PanelPage) do |page|
+ page.panel_language_element.should be_visible
+ page.panel_fonts_element.should be_visible
+ end
+end
+
+Then(/^I see the logged in language settings panel$/) do
+ on(PanelPage) do |page|
+ page.panel_language_element.should be_visible
+ page.panel_fonts_element.should be_visible
+ page.default_language_button_element.should be_visible
+ page.other_language_button_element.should be_visible
+ end
+end
+
+Then(/^I see Worldwide$/) do
+ on(InterlanguagePage) do |page|
+ page.language_list.should match Regexp.escape("Worldwide")
+ page.english_link_element.should be_visible
+ end
+end
+
+Then(/^I click the cog icon to open language settings again$/) do
+ step "I click the cog icon by Languages in the sidebar"
+ step "I see the logged out language settings panel"
+end
+
+Then(/^the cog icon brings up Language Settings again$/) do
+ step "I click the cog icon by Languages in the sidebar"
+ step "I see the Language Settings panel"
+end
+
+Then(/^I should see the How to use link near the Malayalam transliteration item$/) do
+ on(InterlanguagePage).how_to_use_ml_transliteration_element.should be_visible
+end
diff --git a/MLEB/UniversalLanguageSelector/tests/browser/features/step_definitions/common_steps.rb b/MLEB/UniversalLanguageSelector/tests/browser/features/step_definitions/common_steps.rb
new file mode 100644
index 00000000..775e98da
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/tests/browser/features/step_definitions/common_steps.rb
@@ -0,0 +1,39 @@
+Given(/^I am at the main page$/) do
+ visit MainPage
+end
+
+Given(/^I am logged out$/) do
+end
+
+Given(/^I set "(.*?)" as the interface language$/) do |language|
+ code = on(PanelPage).language_to_code(language)
+ visit(PanelPage, :using_params => {:extra => "setlang=#{code}"})
+ @original_content_font = on(PanelPage).content_font
+ @original_interface_font = on(PanelPage).interface_font
+end
+
+Given(/^I temporarily use "(.*?)" as the interface language$/) do |language|
+ code = on(PanelPage).language_to_code(language)
+ visit(PanelPage, :using_params => {:extra => "uselang=#{code}"})
+end
+
+Then(/^my interface language is "(.*?)"$/) do |language|
+ code = on(PanelPage).language_to_code(language)
+ on(PanelPage).interface_element.attribute("lang").should == code
+end
+
+When(/^I click the button with the ellipsis$/) do
+ on(InterlanguagePage).ellipsis_button_element.click
+end
+
+When(/^in the language filter I type (.+)$/) do |language_abbreviation|
+ on(IMEPage).language_filter = language_abbreviation
+end
+
+When(/^I click Cancel$/) do
+ on(PanelPage).panel_button_cancel_element.click
+end
+
+When(/^I click X$/) do
+ on(InterlanguagePage).x_element.click
+end
diff --git a/MLEB/UniversalLanguageSelector/tests/browser/features/step_definitions/font_selection_steps.rb b/MLEB/UniversalLanguageSelector/tests/browser/features/step_definitions/font_selection_steps.rb
new file mode 100644
index 00000000..bbaf48e0
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/tests/browser/features/step_definitions/font_selection_steps.rb
@@ -0,0 +1,47 @@
+When(/^I click the checkbox to (?:enable|disable) fonts downloading$/) do
+ on(PanelPage).webfonts_enable_checkbox_element.click
+end
+
+Then(/^the checkbox to enable fonts downloading appears$/) do
+ on(PanelPage).webfonts_enable_checkbox_element.should be_visible
+end
+
+Then(/^the checkbox to enable fonts downloading is checked$/) do
+ on(PanelPage).webfonts_enable_checkbox_element.should be_checked
+end
+
+Then(/^the checkbox to enable fonts downloading is not checked$/) do
+ on(PanelPage).webfonts_enable_checkbox_element.should_not be_checked
+end
+
+Given(/^I open ULS$/) do
+ on(PanelPage).trigger_personal_element.when_visible.click
+end
+
+Then(/^the active content font must be the same as font prior to the preview$/) do
+ on(PanelPage).content_font.should == @original_content_font
+end
+
+Then(/^the active interface font must be the same as font prior to the preview$/) do
+ on(PanelPage).interface_font.should == @original_interface_font
+end
+
+Then(/^the selected content font must be (.*?)$/) do |font|
+ on(PanelPage).selected_content_font_element.when_visible.value.should == font
+end
+
+Then(/^the interface font is (.*?)$/) do |font|
+ on(PanelPage).interface_font.should match("^#{font}")
+end
+
+Then(/^the content font is (.*?)$/) do |font|
+ on(PanelPage).content_font.should match("^#{font}")
+end
+
+Then(/^webfonts are applied to body$/) do
+ on(PanelPage).webfonts_library_loaded.should be_true
+end
+
+Then(/^webfonts are not applied to body$/) do
+ on(PanelPage).webfonts_library_loaded.should be_false
+end
diff --git a/MLEB/UniversalLanguageSelector/tests/browser/features/step_definitions/ime_steps.rb b/MLEB/UniversalLanguageSelector/tests/browser/features/step_definitions/ime_steps.rb
new file mode 100644
index 00000000..1dc3b2cc
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/tests/browser/features/step_definitions/ime_steps.rb
@@ -0,0 +1,77 @@
+# encoding: utf-8
+
+Given(/^I am on a wiki in Kotava language$/) do
+ step "I am at the main page"
+ # Fake a Kotava Wiki
+ @browser.execute_script( "mw.config.set( 'wgContentLanguage', 'avk' )" )
+end
+
+When(/^I click on an input box$/) do
+ on(IMEPage).search_input_element.click
+end
+
+When(/^I click on the input method indicator$/) do
+ on(IMEPage).input_method_element.when_present.click
+end
+
+When(/^I open the input method menu$/) do
+ step "I click on an input box"
+ on(IMEPage).input_method_element.when_present.click
+end
+
+Then(/^I should see the input method indicator$/) do
+ on(IMEPage).input_method_element.when_present.should be_visible
+end
+
+Then(/^I should see input methods for (.+)/) do |language|
+ on(IMEPage).input_method_ime_list_title.should == language
+end
+
+Then(/^I should see a list of available input methods$/) do
+ on(IMEPage).input_method_selector_menu_element.should be_visible
+end
+
+Then(/^I should see a list of suggested languages$/) do
+ on(IMEPage).input_method_language_list_element.should be_visible
+end
+
+When(/^I choose (.+?) as the input language$/) do |language|
+ on(IMEPage) do |page|
+ page.more_languages
+ page.language_filter = language
+ # firefox only works with :return
+ # phantomjs only works with :enter
+ # This seems to work on both
+ page.language_filter_element.send_keys "\n"
+ end
+end
+
+When(/^I click on the Malayalam InScript 2 menu item$/) do
+ on(IMEPage).malayalam_inscript2_element.click
+end
+
+When(/^I press Control-M$/) do
+ on(IMEPage).search_input_element.send_keys [:control, "m"]
+end
+
+When(/^I reload the page$/) do
+ @browser.refresh
+end
+
+Then(/^in it there must be an element with Malayalam text$/) do
+ # 'input_method_enabled' alone only returns []
+ on(IMEPage) do |page|
+ page.wait_until do
+ page.input_method_enabled_element.text != ""
+ end
+ page.input_method_enabled_element.text.should == "ഇൻസ്ക്രിപ്റ്റ് 2"
+ end
+end
+
+Given(/^I visit a random page with (.+) skin and (.+) as the interface language$/) do |skin, language|
+ visit(IMEPage, :using_params => {:extra => "useskin=#{skin.downcase}&uselang=#{on(IMEPage).language_to_code(language)}"})
+end
+
+Then(/^I should see the input method menu is not offscreen$/) do
+ on(IMEPage).ime_input_method_menu_onscreen?.should == true
+end
diff --git a/MLEB/UniversalLanguageSelector/tests/browser/features/step_definitions/live_preview_of_display_language_steps.rb b/MLEB/UniversalLanguageSelector/tests/browser/features/step_definitions/live_preview_of_display_language_steps.rb
new file mode 100644
index 00000000..9f9e3b15
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/tests/browser/features/step_definitions/live_preview_of_display_language_steps.rb
@@ -0,0 +1,24 @@
+When(/^I set English font to System$/) do
+ on(PanelPage).select_font_for_content = "System font"
+end
+
+When(/^I set English font to OpenDyslexic$/) do
+ on(PanelPage).select_font_for_content = "OpenDyslexic"
+end
+
+Then(/^the selected content font must be OpenDyslexic$/) do
+ on(PanelPage).select_font_for_content.should == "OpenDyslexic"
+end
+
+Given(/^I select a language different than English for display language$/) do
+ on(PanelPage).other_language_button_element.click
+end
+
+When(/^I click on the link to select Malayalam$/) do
+ on(MainPage).malayalam_element.click
+end
+
+Then(/^I should see the text in the language panel in (.+?)$/) do |language|
+ code = on(PanelPage).language_to_code(language)
+ on(PanelPage).uls_display_settings_element.attribute("lang").should == code
+end
diff --git a/MLEB/UniversalLanguageSelector/tests/browser/features/step_definitions/panel_steps.rb b/MLEB/UniversalLanguageSelector/tests/browser/features/step_definitions/panel_steps.rb
new file mode 100644
index 00000000..a2d9a99e
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/tests/browser/features/step_definitions/panel_steps.rb
@@ -0,0 +1,89 @@
+Then(/^I see "(.*?)" as the name of the content language$/) do |text|
+ @browser.span(:text => "#{text}").should be_visible
+end
+
+When(/^I open the Universal Language Selector$/) do
+ on(PanelPage) do |page|
+ page.trigger_personal_element.when_visible.click unless page.uls_element.visible?
+ end
+end
+
+When(/^I open Display panel of language settings$/) do
+ on(PanelPage).panel_display_element.when_visible.click
+end
+
+When(/^I open Language panel of language settings$/) do
+ on(PanelPage).panel_language_element.click
+end
+
+When(/^I open Fonts panel of language settings$/) do
+ on(PanelPage).panel_fonts_element.click
+end
+
+When(/^I select (.*?) font for the interface language for the live preview$/) do |font|
+ on(PanelPage).selected_interface_font = font
+end
+
+When(/^I select (.*?) font for the content language for the live preview$/) do |font|
+ on(PanelPage).font_for_content = font
+end
+
+When(/^I close the panel to discard the changes$/) do
+ on(PanelPage).panel_button_close_element.click
+end
+
+When(/^I apply the changes$/) do
+ on(PanelPage) do |page|
+ page.panel_button_apply_element.click
+ page.language_settings_dialog_element.when_not_present(10)
+ end
+end
+
+Then(/^I can disable input methods$/) do
+ on(PanelPage).panel_disable_input_methods_element.click
+end
+
+Then(/^I can enable input methods$/) do
+ on(PanelPage).panel_enable_input_methods_element.click
+end
+
+Then(/^a font selector for interface language appears$/) do
+ on(PanelPage).panel_interface_font_selector_element.should be_visible
+end
+
+Then(/^a font selector for interface language doesn't appear$/) do
+ on(PanelPage).panel_interface_font_selector_element.should_not be_visible
+end
+
+Then(/^a font selector for content language appears$/) do
+ on(PanelPage).panel_content_font_selector_element.should be_visible
+end
+
+Then(/^a font selector for content language doesn't appear$/) do
+ on(PanelPage).panel_content_font_selector_element.should_not be_visible
+end
+
+When(/^I use the panel to change my (?:interface|input) language to "(.*?)"$/) do |language|
+ code = on(PanelPage).language_to_code(language)
+ on(IMEPage) do |page|
+ page.language_filter = code
+ # Because one browser wants :enter and other :return -- sigh
+ page.language_filter_element.send_keys [:enter, "\n"]
+ end
+end
+
+Then(/^the panel is in English/) do
+ on(PanelPage).panel_language_element.text.should == "Language"
+end
+
+When(/^I switch to Input panel of language settings$/) do
+ on(PanelPage).panel_side_input_element.click
+end
+
+Then(/^the language list of ULS should use Autonym font$/) do
+ on(PanelPage).uls_language_name_item("en").style("font-family").should match /Autonym'?, ?sans-serif/
+end
+
+Then(/^I should see (.*) as the selected input language$/) do |language|
+ on(PanelPage).default_language_button_element.text.should == language
+end
diff --git a/MLEB/UniversalLanguageSelector/tests/browser/features/step_definitions/persistent_settings_steps.rb b/MLEB/UniversalLanguageSelector/tests/browser/features/step_definitions/persistent_settings_steps.rb
new file mode 100644
index 00000000..2014fbbb
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/tests/browser/features/step_definitions/persistent_settings_steps.rb
@@ -0,0 +1,16 @@
+Then(/^the selected interface font must be (.*?)$/) do |font|
+ step "I open the Universal Language Selector"
+ step "I open Display panel of language settings"
+ step "I open Fonts panel of language settings"
+ on(PanelPage).selected_interface_font.should == font
+end
+
+Then(/^the selected input method for Malayalam is ml-inscript2$/) do
+ step "I click on an input box"
+ step "I should see the input method indicator"
+ step "in it there must be an element with Malayalam text"
+end
+
+When(/^I select the ml-inscript2 input method in the panel$/) do
+ on(PanelPage).ml_inscript2_radio_element.click
+end
diff --git a/MLEB/UniversalLanguageSelector/tests/browser/features/step_definitions/textarea_font_steps.rb b/MLEB/UniversalLanguageSelector/tests/browser/features/step_definitions/textarea_font_steps.rb
new file mode 100644
index 00000000..2cc2115a
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/tests/browser/features/step_definitions/textarea_font_steps.rb
@@ -0,0 +1,23 @@
+When(/^I set the editing fonts to "(.*?)"$/) do |editing_font|
+ visit(PreferencesPage) do |page|
+ page.editing_tab_element.click
+ page.editing_font_element.select_value editing_font
+ page.save_element.click
+ end
+end
+
+When(/^I start editing a page$/) do
+ visit(NoInterlanguagePage).edit_link_element.click
+end
+
+When(/^I select (.*?) font for the content language$/) do |font|
+ step "I open the Universal Language Selector"
+ step "I open Display panel of language settings"
+ step "I open Fonts panel of language settings"
+ step "I select #{font} font for the content language for the live preview"
+ step "I apply the changes"
+end
+
+Then(/^I should see the edit area text being displayed using "(.*?)" font$/) do |font|
+ on(EditPage).editarea_element.style("font-family").should match(/^#{font}/)
+end
diff --git a/MLEB/UniversalLanguageSelector/tests/browser/features/step_definitions/triggers_steps.rb b/MLEB/UniversalLanguageSelector/tests/browser/features/step_definitions/triggers_steps.rb
new file mode 100644
index 00000000..75a49ada
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/tests/browser/features/step_definitions/triggers_steps.rb
@@ -0,0 +1,10 @@
+When(/^I click language selector trigger element$/) do
+ on(PanelPage).trigger_personal
+end
+
+Then(/^I should see the language selector$/) do
+ on(PanelPage) do |page|
+ page.uls_element.should be_visible
+ page.uls_onscreen?.should be_true
+ end
+end
diff --git a/MLEB/UniversalLanguageSelector/tests/browser/features/support/env.rb b/MLEB/UniversalLanguageSelector/tests/browser/features/support/env.rb
new file mode 100644
index 00000000..8ac08eab
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/tests/browser/features/support/env.rb
@@ -0,0 +1 @@
+require "mediawiki_selenium"
diff --git a/MLEB/UniversalLanguageSelector/tests/browser/features/support/modules/interlanguage_module.rb b/MLEB/UniversalLanguageSelector/tests/browser/features/support/modules/interlanguage_module.rb
new file mode 100644
index 00000000..21d318cd
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/tests/browser/features/support/modules/interlanguage_module.rb
@@ -0,0 +1,23 @@
+# encoding: utf-8
+require "page-object"
+
+module InterlanguagePageModule
+ include PageObject
+
+ a(:add_links, id: "wbc-linkToItem-link")
+ a(:back_to_display, text: "Back to display settings")
+ a(:back_to_input, text: "Back to input settings")
+ span(:cog, class: "uls-settings-trigger")
+ button(:ellipsis_button, class: "uls-more-languages button")
+ a(:english_link, text: "English")
+ a(:hindi_link, title: "Hindi")
+ div(:input_settings, id: "input-settings-block")
+ div(:language_list, class: "row uls-language-list lcd")
+ text_field(:language_search, id: "uls-languagefilter")
+ button(:non_default_language, class: "button uls-language-button", index: 1)
+ a(:talk, text: "Discussion")
+ span(:x, id: "languagesettings-close")
+ a(:how_to_use_ml_transliteration, href: "https://www.mediawiki.org/wiki/Special:MyLanguage/Help:Extension:UniversalLanguageSelector/Input_methods/ml-transliteration")
+ a(:edit_link, css: "#ca-edit a")
+ a(:interlang_link, css: "#p-lang li.interlanguage-link")
+end
diff --git a/MLEB/UniversalLanguageSelector/tests/browser/features/support/modules/language_module.rb b/MLEB/UniversalLanguageSelector/tests/browser/features/support/modules/language_module.rb
new file mode 100644
index 00000000..0a7eae77
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/tests/browser/features/support/modules/language_module.rb
@@ -0,0 +1,22 @@
+module LanguageModule
+ include PageObject
+
+ def language_to_code(language)
+ case language
+ when "German"
+ "de"
+ when "English"
+ "en"
+ when "Finnish"
+ "fi"
+ when "Hebrew"
+ "he"
+ when "Hindi"
+ "hi"
+ when "Malayalam"
+ "ml"
+ else
+ p "Unknown language #{language}"
+ end
+ end
+end
diff --git a/MLEB/UniversalLanguageSelector/tests/browser/features/support/pages/edit_page.rb b/MLEB/UniversalLanguageSelector/tests/browser/features/support/pages/edit_page.rb
new file mode 100644
index 00000000..43ce0c50
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/tests/browser/features/support/pages/edit_page.rb
@@ -0,0 +1,5 @@
+class EditPage
+ include PageObject
+
+ textarea(:editarea, id: "wpTextbox1")
+end
diff --git a/MLEB/UniversalLanguageSelector/tests/browser/features/support/pages/ime_page.rb b/MLEB/UniversalLanguageSelector/tests/browser/features/support/pages/ime_page.rb
new file mode 100644
index 00000000..f2e59c04
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/tests/browser/features/support/pages/ime_page.rb
@@ -0,0 +1,26 @@
+class IMEPage
+ include PageObject
+ include LanguageModule
+
+ include URL
+ page_url URL.url("?<%=params[:extra]%>")
+
+ div(:input_method, class: "imeselector imeselector-toggle")
+ a(:input_method_enabled, class: "ime-name imeselector-toggle")
+ h3(:input_method_ime_list_title, class: "ime-list-title")
+ ul(:input_method_language_list, class: "ime-language-list")
+ div(:input_method_selector_menu, class: "imeselector-menu")
+ text_field(:language_filter, id: "uls-languagefilter")
+ li(:malayalam_inscript2, data_ime_inputmethod: "ml-inscript2")
+ a(:more_languages, class: "ime-selector-more-languages")
+ text_field(:search_input, id: "searchInput")
+
+ def ime_input_method_menu_onscreen?
+ @browser.execute_script( "
+ var $selectorMenu = $( '.imeselector-menu' ),
+ menuLeft = $selectorMenu.offset().left,
+ menuRight = menuLeft + $selectorMenu.width();
+
+ return ( menuLeft >= 0 && menuRight <= $( window ).width() );" )
+ end
+end
diff --git a/MLEB/UniversalLanguageSelector/tests/browser/features/support/pages/interlanguage_page.rb b/MLEB/UniversalLanguageSelector/tests/browser/features/support/pages/interlanguage_page.rb
new file mode 100644
index 00000000..e437c719
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/tests/browser/features/support/pages/interlanguage_page.rb
@@ -0,0 +1,12 @@
+class InterlanguagePage
+ include PageObject
+ include InterlanguagePageModule
+
+ include URL
+ def self.url
+ URL.url("Boleyn_family")
+ end
+ page_url url
+
+end
+
diff --git a/MLEB/UniversalLanguageSelector/tests/browser/features/support/pages/main_page.rb b/MLEB/UniversalLanguageSelector/tests/browser/features/support/pages/main_page.rb
new file mode 100644
index 00000000..9aaa0b14
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/tests/browser/features/support/pages/main_page.rb
@@ -0,0 +1,25 @@
+class MainPage
+ include PageObject
+
+ include URL
+ page_url URL.url("Main_Page")
+
+ span(:cog, title: "Language settings")
+ a(:create_a_book, text: "Create a book")
+ a(:download_as_pdf, text: "Download as PDF")
+ a(:download_the_file, text: "Download the file")
+ li(:main_page, id: "n-mainpage-description")
+ div(:asia, id: "AS")
+ a(:malayalam) do |page|
+ page.asia_element.element.li(lang: "ml")
+ end
+ a(:print_export, text: "Print/export")
+ a(:printable_version, text: "Printable version")
+ button(:search_button, id: "searchButton")
+
+ def non_interlanguage_links_use_autonym_font?
+ @browser.elements(css: "#p-lang li:not(.interlanguage-link)").collect do |element|
+ element.style("font-family")
+ end.to_s.match(/Autonym/) != nil
+ end
+end
diff --git a/MLEB/UniversalLanguageSelector/tests/browser/features/support/pages/no_interlanguage_page.rb b/MLEB/UniversalLanguageSelector/tests/browser/features/support/pages/no_interlanguage_page.rb
new file mode 100644
index 00000000..76d9d1cc
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/tests/browser/features/support/pages/no_interlanguage_page.rb
@@ -0,0 +1,11 @@
+class NoInterlanguagePage
+ include PageObject
+
+ include URL
+ def self.url
+ URL.url("Think_Like_a_Cat")
+ end
+ page_url url
+
+ include InterlanguagePageModule
+end
diff --git a/MLEB/UniversalLanguageSelector/tests/browser/features/support/pages/panel_page.rb b/MLEB/UniversalLanguageSelector/tests/browser/features/support/pages/panel_page.rb
new file mode 100644
index 00000000..9b25421c
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/tests/browser/features/support/pages/panel_page.rb
@@ -0,0 +1,81 @@
+class PanelPage
+ include PageObject
+ include LanguageModule
+
+ include URL
+ page_url URL.url("?<%=params[:extra]%>")
+
+ div(:uls, class: "uls-menu")
+ span(:uls_button_close, id: "uls-close")
+
+ div(:language_settings_dialog, id: "language-settings-dialog")
+ div(:panel_display, id: "display-settings-block")
+ button(:panel_fonts, id: "uls-display-settings-fonts-tab")
+ button(:panel_language, id: "uls-display-settings-language-tab")
+
+ div(:panel_side_display, id: "display-panel-trigger")
+ div(:panel_side_input, id: "input-panel-trigger")
+
+ span(:panel_button_close, id: "languagesettings-close")
+ button(:panel_button_apply, class: "uls-settings-apply")
+ button(:panel_button_cancel, class: "uls-settings-cancel")
+
+ button(:panel_disable_input_methods, class: "uls-input-toggle-button")
+ button(:panel_enable_input_methods, class: "uls-input-toggle-button")
+
+ checkbox(:webfonts_enable_checkbox, id: "webfonts-enable-checkbox")
+
+ select_list(:panel_content_font_selector, id: "content-font-selector")
+ select_list(:panel_interface_font_selector, id: "ui-font-selector")
+
+ button(:other_language_button, class: "button uls-language-button", index: 1)
+ button(:default_language_button, css: ".uls-language-button.down")
+
+ # Triggers
+ span(:trigger_cog, class: "uls-settings-trigger")
+ a(:trigger_personal, class: "uls-trigger")
+
+ select(:selected_content_font, id: "content-font-selector")
+ select(:selected_interface_font, id: "ui-font-selector")
+
+ select(:font_for_content, id: "content-font-selector")
+
+ div(:uls_display_settings, class: "uls-display-settings")
+
+ radio_button(:ml_inscript2_radio, id: "ml-inscript2")
+
+ # Is there way to access the html element?
+ div(:interface, id: "footer")
+
+ def uls_language_name_item(language)
+ @browser.element(css: ".uls-language-block li[lang=#{language}] a")
+ end
+
+ def content_font
+ font("#mw-content-text")
+ end
+
+ def interface_font
+ font("body")
+ end
+
+ def uls_onscreen?
+ @browser.execute_script( "
+ var $menu = $( '.uls-menu' ),
+ $window = $( window ),
+ top = $menu.offset().top,
+ viewportTop = $window.scrollTop(),
+ viewportBottom = $window.scrollTop() + $window.height();
+
+ return ( top < viewportBottom && top >= viewportTop )" )
+ end
+
+ def webfonts_library_loaded
+ @browser.execute_script( "return ( $( 'body' ).data( 'webfonts' ) !== undefined )" )
+ end
+
+ private
+ def font(selector)
+ @browser.execute_script( "return $( '#{selector}' ).css( 'font-family' );" )
+ end
+end
diff --git a/MLEB/UniversalLanguageSelector/tests/browser/features/support/pages/preferences_page.rb b/MLEB/UniversalLanguageSelector/tests/browser/features/support/pages/preferences_page.rb
new file mode 100644
index 00000000..26139885
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/tests/browser/features/support/pages/preferences_page.rb
@@ -0,0 +1,12 @@
+class PreferencesPage
+ include PageObject
+
+ include URL
+ page_url URL.url("Special:Preferences")
+
+ select(:set_interface_language, id: "mw-input-wplanguage")
+ button(:save, id: "prefcontrol")
+
+ a(:editing_tab, id: "preftab-editing")
+ select(:editing_font, id: "mw-input-wpeditfont")
+end
diff --git a/MLEB/UniversalLanguageSelector/tests/browser/features/textarea_font.feature b/MLEB/UniversalLanguageSelector/tests/browser/features/textarea_font.feature
new file mode 100644
index 00000000..410c26f4
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/tests/browser/features/textarea_font.feature
@@ -0,0 +1,47 @@
+@firefox @internet_explorer_10 @login @phantomjs
+Feature: Font preferences respected in different languages
+
+ If a user has an edit font preferences respect that preference.
+ If a user has no edit font preference, but the UI language has a monospace defined,
+ the edit area has monospace font, given there is no ULS webfont preference for the user.
+ If a user has no edit font preference, but the UI language has no monospace defined,
+ the edit area has the font according to the ULS webfont preferences.
+
+ Background:
+ Given I am logged in
+ And I have reset my preferences
+
+ @clean
+ Scenario: Edit area fonts should not change on UI language change if the user preferences for edit area font are set
+ When I set the editing fonts to "monospace"
+ And I set "Hindi" as the interface language
+ And I start editing a page
+ Then I should see the edit area text being displayed using "monospace" font
+
+ # Needs OpenDyslexic font to have been configured on the target wiki
+ Scenario: Edit area should use the fonts selected by the user from ULS for a language
+ When I select OpenDyslexic font for the content language
+ And I start editing a page
+ Then I should see the edit area text being displayed using "OpenDyslexic" font
+
+ Scenario: Edit area should use the ULS selected fonts when content language has a ULS font selection
+ When I open Language panel of language settings
+ And I click the button with the ellipsis
+ And I use the panel to change my interface language to "German"
+ And I open Fonts panel of language settings
+ And I select "OpenDyslexic" font for the content language for the live preview
+ And I apply the changes
+ And I start editing a page
+ Then I should see the edit area text being displayed using "OpenDyslexic" font
+
+ Scenario: Edit area should use the system default fonts when content language does not have any ULS font selection
+ When I open Language panel of language settings
+ And I click the button with the ellipsis
+ And I use the panel to change my interface language to "German"
+ And I apply the changes
+ And I start editing a page
+ Then I should see the edit area text being displayed using "monospace" font
+
+ Scenario: Edit area should use browser's default Monospace font for languages that have a default monospace font (Latin, Cyrillic, Hebrew etc.)
+ When I start editing a page
+ Then I should see the edit area text being displayed using "monospace" font
diff --git a/MLEB/UniversalLanguageSelector/tests/browser/features/triggers.feature b/MLEB/UniversalLanguageSelector/tests/browser/features/triggers.feature
new file mode 100644
index 00000000..9ec4c016
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/tests/browser/features/triggers.feature
@@ -0,0 +1,56 @@
+@firefox @internet_explorer_10 @phantomjs
+Feature: Trigger in personal toolbar
+
+ @commons.wikimedia.beta.wmflabs.org @login
+ Scenario: Open language selector when logged in
+ Given I am logged in
+ When I click language selector trigger element
+ Then I should see the language selector
+ And I see Common Languages
+ And I see Worldwide
+
+ Scenario: Open language settings when logged out and language change not allowed
+
+ If the user is logged out, the user will either see the language selector
+ or the settings panel, depending on whether language selection for
+ anonymous users is disabled. This and next test cover both cases.
+
+ Given I am at the main page
+ When I click language selector trigger element
+ Then I see the logged in language settings panel
+
+ Scenario: Open language selector when logged out
+
+ Given I am at the main page
+ When I click language selector trigger element
+ Then I should see the language selector
+
+
+ @login
+ Scenario Outline: Opening language settings from sidebar
+ Given I am <user status>
+ And I am on <page type>
+ When I click the cog icon by Languages in the sidebar
+ Then I see the <user status> language settings panel
+
+ Examples:
+ | user status | page type |
+ | logged out | a page without interlanguage links |
+ | logged in | a page with interlanguage links |
+ | logged out | a talk page without interlanguage links |
+ | logged out | a talk page with interlanguage links |
+
+ @login
+ Scenario Outline: Closing language settings without saving
+ Given I am <user status>
+ And I am on a page without interlanguage links
+ When I click the cog icon by Languages in the sidebar
+ And <close method>
+ Then I do not see the Language Settings panel
+ And I click the cog icon by Languages in the sidebar
+ And I see the <user status> language settings panel
+
+ Examples:
+ | user status | close method |
+ | logged in | I click X |
+ | logged out | I click Cancel |
diff --git a/MLEB/UniversalLanguageSelector/tests/browser/tags.txt b/MLEB/UniversalLanguageSelector/tests/browser/tags.txt
new file mode 100644
index 00000000..997068a0
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/tests/browser/tags.txt
@@ -0,0 +1,16 @@
+This file contains the descriptions of the tags we use.
+
+@en.wikipedia.beta.wmflabs.org
+@commons.wikimedia.beta.wmflabs.org
+ Test is run on this domain unless further excluded by other tags.
+
+@custom-browser
+ This tests needs support from Accept-Language header setting from the
+ webdriver.
+
+@ime-default-on
+ These tests expect input methods to be enabled by default.
+
+@login
+ This test logs in. You can filter these tests out if you don't have an
+ account available.
diff --git a/MLEB/UniversalLanguageSelector/tests/phpunit/LanguageSearchTest.php b/MLEB/UniversalLanguageSelector/tests/phpunit/LanguageSearchTest.php
new file mode 100644
index 00000000..a543e8ea
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/tests/phpunit/LanguageSearchTest.php
@@ -0,0 +1,66 @@
+<?php
+/**
+ * PHPUnit tests for UniversalLanguageSelector extension.
+ *
+ * Copyright (C) 2012 Alolita Sharma, Amir Aharoni, Arun Ganesh, Brandon Harris,
+ * Niklas Laxström, Pau Giner, Santhosh Thottingal, Siebrand Mazeland and other
+ * contributors. See CREDITS for a list.
+ *
+ * UniversalLanguageSelector is dual licensed GPLv2 or later and MIT. You don't
+ * have to do anything special to choose one license or the other and you don't
+ * have to notify anyone which license you are using. You are free to use
+ * UniversalLanguageSelector in commercial projects as long as the copyright
+ * header is left intact. See files GPL-LICENSE and MIT-LICENSE for details.
+ *
+ * @file
+ * @ingroup Extensions
+ * @licence GNU General Public Licence 2.0 or later
+ * @licence MIT License
+ */
+require_once __DIR__ . '/../../data/LanguageNameSearch.php';
+class LanguageSearchTest extends PHPUnit_Framework_TestCase {
+
+ /**
+ * @dataProvider searchDataProvider
+ */
+ public function testSearch( $searchKey, $result ) {
+ $this->assertEquals( $result, LanguageNameSearch::search( $searchKey, 1 ) );
+ }
+
+ public function searchDataProvider() {
+ return array(
+ array( "ഹിന്ദി", array(
+ 'hi' => 'ഹിന്ദി'
+ )
+ ),
+ array( "മല", array(
+ 'ml' => "മലയാളം",
+ 'mg' => 'മലഗാസി',
+ 'ms' => 'മലയ',
+ )
+ ),
+ array( "Φινλαν", array(
+ 'fi' => 'Φινλανδικά',
+ )
+ ),
+ array( 'blah', array()
+ ),
+ array( "الفرنسية", array(
+ 'fr' => 'الفرنسية',
+ 'fr-ca' => 'الفرنسية الكندية',
+ 'fr-ch' => 'الفرنسية السويسرية',
+ 'frm' => 'الفرنسية الوسطى',
+ 'fro' => 'الفرنسية القديمة',
+ )
+ ),
+ array( "മലയളം", array(
+ 'ml' => "മലയാളം",
+ )
+ ),
+ array( "finish", array(
+ 'fi' => 'finnish'
+ )
+ ),
+ );
+ }
+}
diff --git a/MLEB/UniversalLanguageSelector/tests/phpunit/Makefile b/MLEB/UniversalLanguageSelector/tests/phpunit/Makefile
new file mode 100644
index 00000000..eabe3a1b
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/tests/phpunit/Makefile
@@ -0,0 +1,10 @@
+ifndef MW_INSTALL_PATH
+ MW_INSTALL_PATH=../../..
+endif
+
+default:
+ php ${MW_INSTALL_PATH}/tests/phpunit/phpunit.php .
+
+.PHONY: *Test.php
+*Test.php:
+ php ${MW_INSTALL_PATH}/tests/phpunit/phpunit.php $@
diff --git a/MLEB/UniversalLanguageSelector/tests/phpunit/ResourceLoaderULSTest.php b/MLEB/UniversalLanguageSelector/tests/phpunit/ResourceLoaderULSTest.php
new file mode 100644
index 00000000..41e6f259
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/tests/phpunit/ResourceLoaderULSTest.php
@@ -0,0 +1,49 @@
+<?php
+/**
+ * PHP Unit tests for ResourceLoaderULSModule class.
+ *
+ * @file
+ * @ingroup Extensions
+ *
+ * @author Santhosh Thottingal
+ */
+
+/**
+ * @covers ResourceLoaderULSModule
+ */
+class ResourceLoaderULSModuleMemcachedTest extends MediaWikiTestCase {
+ /**
+ * Test whether the modified time of the RL module varies
+ * correctly with language code.
+ * @covers ResourceLoaderSchemaModule::getModifiedTime
+ */
+ function testModifiedTime() {
+ $request = new WebRequest();
+ $module = new ResourceLoaderULSModule();
+
+ $request->setVal( 'lang', 'he' );
+ $context = new ResourceLoaderContext(
+ new ResourceLoader(), $request );
+ $mtimeHebrew = $module->getModifiedTime( $context );
+ // sleep for 1 second
+ sleep( 1 );
+ $request->setVal( 'lang', 'hi' );
+ $context = new ResourceLoaderContext( new ResourceLoader(), $request );
+ $mtimeHindi = $module->getModifiedTime( $context );
+ $this->assertGreaterThan( $mtimeHebrew, $mtimeHindi, "Hindi has recent timestamp than Hebrew" );
+
+ // sleep for 1 second
+ sleep( 1 );
+ $request->setVal( 'lang', 'he' );
+ $context = new ResourceLoaderContext( new ResourceLoader(), $request );
+ $mtimeHebrewNew = $module->getModifiedTime( $context );
+ $this->assertEquals( $mtimeHebrewNew, $mtimeHebrew, "Hebrew timestamp remained same" );
+
+ // sleep for 1 second
+ sleep( 1 );
+ $request->setVal( 'lang', 'hi' );
+ $context = new ResourceLoaderContext( new ResourceLoader(), $request );
+ $mtimeHindiNew = $module->getModifiedTime( $context );
+ $this->assertEquals( $mtimeHindi, $mtimeHindiNew, "Hindi timestamp remained same" );
+ }
+}
diff --git a/MLEB/UniversalLanguageSelector/tests/qunit/ext.uls.tests.js b/MLEB/UniversalLanguageSelector/tests/qunit/ext.uls.tests.js
new file mode 100644
index 00000000..db968513
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/tests/qunit/ext.uls.tests.js
@@ -0,0 +1,103 @@
+/**
+ * QUnit tests for ULS.
+ *
+ * Copyright (C) 2012 Alolita Sharma, Amir Aharoni, Arun Ganesh, Brandon Harris,
+ * Niklas Laxström, Pau Giner, Santhosh Thottingal, Siebrand Mazeland and other
+ * contributors. See CREDITS for a list.
+ *
+ * UniversalLanguageSelector is dual licensed GPLv2 or later and MIT. You don't
+ * have to do anything special to choose one license or the other and you don't
+ * have to notify anyone which license you are using. You are free to use
+ * UniversalLanguageSelector in commercial projects as long as the copyright
+ * header is left intact. See files GPL-LICENSE and MIT-LICENSE for details.
+ *
+ * @file
+ * @ingroup Extensions
+ * @licence GNU General Public Licence 2.0 or later
+ * @licence MIT License
+ */
+
+( function ( $, mw ) {
+ 'use strict';
+
+ QUnit.module( 'ext.uls', QUnit.newMwEnvironment() );
+
+ QUnit.test( 'Initial check', function ( assert ) {
+ QUnit.expect( 1 );
+
+ assert.ok( $.fn.uls, '$.fn.uls is defined' );
+ } );
+
+ QUnit.test( 'Custom langdb', function ( assert ) {
+ QUnit.expect( 1 );
+
+ // This is a custom non-standard language code used in MW.
+ // If it's not defined, then, for example,
+ // its direction cannot be acquired using the langdb utils.
+ assert.strictEqual( $.uls.data.getDir( 'als' ), 'ltr', 'The direction of custom MW language als is ltr.' );
+ } );
+
+ QUnit.test( 'User preferences', function ( assert ) {
+ QUnit.expect( 2 );
+
+ // 'gofanim' means "fonts" in Hebrew.
+ // Here it's used as a meaningless word, to test
+ // the preferences without changing anything useful.
+ var prefName = 'gofanim',
+ prefs = mw.uls.preferences(),
+ prefsToSave = {},
+ readPrefs;
+
+ prefsToSave[prefName] = {
+ fonts: {
+ qqy: 'Megafont'
+ }
+ };
+
+ prefs.set( prefName, prefsToSave );
+
+ readPrefs = prefs.get( prefName );
+ assert.strictEqual(
+ readPrefs[prefName].fonts.qqy,
+ 'Megafont',
+ 'Correct value for the font name'
+ );
+
+ QUnit.stop();
+ prefs.save( function ( successSave ) {
+ QUnit.start();
+ assert.ok( successSave, 'Options saving API did not produce an error.' );
+
+ // Delete old options
+ prefs.set( prefName, undefined );
+ QUnit.stop();
+ prefs.save( function () {
+ QUnit.start();
+ } );
+ } );
+ } );
+
+ QUnit.test( 'Common languages', function ( assert ) {
+ var i, foundTagalog, languagesInPH;
+
+ QUnit.expect( 1 );
+
+ // Bug 49847
+ foundTagalog = false;
+ languagesInPH = mw.uls.getFrequentLanguageList( 'PH' );
+
+ for ( i = 0; i < languagesInPH.length; i++ ) {
+ if ( $.uls.data.isRedirect( languagesInPH[i] ) === 'tl' ||
+ languagesInPH[i] === 'tl'
+ ) {
+ foundTagalog = true;
+
+ break;
+ }
+ }
+ assert.ok(
+ foundTagalog,
+ 'Tagalog is one of the languages presented to users in the Philippines.'
+ );
+ } );
+}( jQuery, mediaWiki ) );
diff --git a/MLEB/UniversalLanguageSelector/tests/webfonts.html b/MLEB/UniversalLanguageSelector/tests/webfonts.html
new file mode 100644
index 00000000..6036915e
--- /dev/null
+++ b/MLEB/UniversalLanguageSelector/tests/webfonts.html
@@ -0,0 +1,143 @@
+<!DOCTYPE html>
+<html lang="en">
+<head>
+ <meta charset="utf-8"/>
+ <title>jQuery WebFonts Example</title>
+ <meta name="description" content=""/>
+ <meta name="author" content="Santhosh Thottingal"/>
+ <script src="//ajax.googleapis.com/ajax/libs/jquery/1.10.1/jquery.min.js"></script>
+ <script src="../lib/jquery.webfonts.js"></script>
+ <script src="../lib/jquery.uls/src/jquery.uls.data.js"></script>
+ <script src="../lib/jquery.uls/src/jquery.uls.data.utils.js"></script>
+ <script src="../resources/js/ext.uls.webfonts.repository.js"></script>
+ <script>
+ $( document ).ready( function () {
+ var $webfonts, fonts, languages, $fontSelector, $langselector;
+
+ $( 'div#webfonts-preview-area' ).webfonts( {
+ repository: $.webfonts.repository
+ } );
+
+ $( 'button#webfonts-preview-bold' ).click( function () {
+ document.execCommand( 'bold', false, null );
+ } );
+
+ $( 'button#webfonts-preview-italic' ).click( function () {
+ document.execCommand( 'italic', false, null );
+ } );
+
+ $( 'button#webfonts-preview-underline' ).click( function () {
+ document.execCommand( 'underline', false, null );
+ } );
+
+ // get an instance of WebFonts
+ $webfonts = $( 'div#webfonts-preview-area' ).data( 'webfonts' );
+ // Get a list of all fonts provided by WebFonts
+ fonts = $webfonts.list();
+ languages = $webfonts.languages();
+ // Also test system fonts.
+ $fontSelector = $( 'select#fontselector' );
+ $langselector = $( 'select#language' );
+
+ function listFonts( fonts ) {
+ $.merge( fonts, [ 'Sans', 'Serif' ] );
+ $fontSelector.find( 'option' ).remove();
+ $.each( fonts, function ( key, font ) {
+ $fontSelector.append( $( "<option></option>" )
+ .attr( "value", font ).text( font ) );
+ } );
+ $fontSelector.trigger( 'change' );
+ }
+
+ listFonts( fonts );
+ $.each( languages, function ( lang, language ) {
+ $langselector.append( $( "<option></option>" )
+ .attr( 'value', language )
+ .text( language + " - " + $.uls.data.getAutonym( language ) ) );
+ } );
+ $fontSelector.on( 'change', function () {
+ var font = $fontSelector.find( 'option:selected' ).val();
+
+ $webfonts.apply( font );
+ } );
+ $langselector.on( 'change', function () {
+ var language = $langselector.find( 'option:selected' ).val();
+
+ listFonts( $webfonts.list( language ) );
+ $( '#webfonts-preview-area' ).text( $.uls.data.getAutonym( language ) );
+ } );
+ } )
+ </script>
+ <style>
+ div#webfonts-preview-toolbar {
+ background-color: #F9F9F9;
+ border: 1px solid #CCCCCC;
+ border-radius: 4px 4px 0 0;
+ overflow: hidden;
+ padding: 2px;
+ position: relative;
+ }
+
+ div#webfonts-preview-area {
+ border: 1px solid #CCCCCC;
+ border-radius: 0 0 4px 4px;
+ height: 150px;
+ line-height: 1.5em;
+ overflow: auto;
+ padding: 10px 5px;
+ text-align: left;
+ font-size: 16px;
+ }
+
+ select {
+ width: 200px;
+ height: 25px;
+ }
+
+ .langselector,
+ .fontselector {
+ float: left;
+ display: block;
+ }
+
+ #webfonts-preview-bold {
+ font-weight: bold;
+ }
+
+ #webfonts-preview-italic {
+ font-style: italic;
+ font-weight: bold;
+ }
+
+ #webfonts-preview-underline {
+ text-decoration: underline;
+ font-weight: bold;
+ }
+
+ </style>
+</head>
+
+<body>
+<div>
+ <header>
+ <h1>jQuery WebFonts example</h1>
+ </header>
+ <div id='container'>
+ <div id="webfonts-preview-toolbar">
+ <div class='langselector'>
+ <label for="language">Language</label>
+ <select name="language" id="language"></select>
+ </div>
+ <div class='fontselector'>
+ <label for="fontselector">Font</label>
+ <select id="fontselector"></select>
+ </div>
+ <button id='webfonts-preview-bold'>B</button>
+ <button id='webfonts-preview-italic'>I</button>
+ <button id='webfonts-preview-underline'>U</button>
+ </div>
+ <div contenteditable="true" id="webfonts-preview-area"></div>
+ </div>
+</div>
+</body>
+</html>
diff --git a/MLEB/cldr/COPYING b/MLEB/cldr/COPYING
new file mode 100644
index 00000000..d159169d
--- /dev/null
+++ b/MLEB/cldr/COPYING
@@ -0,0 +1,339 @@
+ GNU GENERAL PUBLIC LICENSE
+ Version 2, June 1991
+
+ Copyright (C) 1989, 1991 Free Software Foundation, Inc.,
+ 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
+ Everyone is permitted to copy and distribute verbatim copies
+ of this license document, but changing it is not allowed.
+
+ Preamble
+
+ The licenses for most software are designed to take away your
+freedom to share and change it. By contrast, the GNU General Public
+License is intended to guarantee your freedom to share and change free
+software--to make sure the software is free for all its users. This
+General Public License applies to most of the Free Software
+Foundation's software and to any other program whose authors commit to
+using it. (Some other Free Software Foundation software is covered by
+the GNU Lesser General Public License instead.) You can apply it to
+your programs, too.
+
+ When we speak of free software, we are referring to freedom, not
+price. Our General Public Licenses are designed to make sure that you
+have the freedom to distribute copies of free software (and charge for
+this service if you wish), that you receive source code or can get it
+if you want it, that you can change the software or use pieces of it
+in new free programs; and that you know you can do these things.
+
+ To protect your rights, we need to make restrictions that forbid
+anyone to deny you these rights or to ask you to surrender the rights.
+These restrictions translate to certain responsibilities for you if you
+distribute copies of the software, or if you modify it.
+
+ For example, if you distribute copies of such a program, whether
+gratis or for a fee, you must give the recipients all the rights that
+you have. You must make sure that they, too, receive or can get the
+source code. And you must show them these terms so they know their
+rights.
+
+ We protect your rights with two steps: (1) copyright the software, and
+(2) offer you this license which gives you legal permission to copy,
+distribute and/or modify the software.
+
+ Also, for each author's protection and ours, we want to make certain
+that everyone understands that there is no warranty for this free
+software. If the software is modified by someone else and passed on, we
+want its recipients to know that what they have is not the original, so
+that any problems introduced by others will not reflect on the original
+authors' reputations.
+
+ Finally, any free program is threatened constantly by software
+patents. We wish to avoid the danger that redistributors of a free
+program will individually obtain patent licenses, in effect making the
+program proprietary. To prevent this, we have made it clear that any
+patent must be licensed for everyone's free use or not licensed at all.
+
+ The precise terms and conditions for copying, distribution and
+modification follow.
+
+ GNU GENERAL PUBLIC LICENSE
+ TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
+
+ 0. This License applies to any program or other work which contains
+a notice placed by the copyright holder saying it may be distributed
+under the terms of this General Public License. The "Program", below,
+refers to any such program or work, and a "work based on the Program"
+means either the Program or any derivative work under copyright law:
+that is to say, a work containing the Program or a portion of it,
+either verbatim or with modifications and/or translated into another
+language. (Hereinafter, translation is included without limitation in
+the term "modification".) Each licensee is addressed as "you".
+
+Activities other than copying, distribution and modification are not
+covered by this License; they are outside its scope. The act of
+running the Program is not restricted, and the output from the Program
+is covered only if its contents constitute a work based on the
+Program (independent of having been made by running the Program).
+Whether that is true depends on what the Program does.
+
+ 1. You may copy and distribute verbatim copies of the Program's
+source code as you receive it, in any medium, provided that you
+conspicuously and appropriately publish on each copy an appropriate
+copyright notice and disclaimer of warranty; keep intact all the
+notices that refer to this License and to the absence of any warranty;
+and give any other recipients of the Program a copy of this License
+along with the Program.
+
+You may charge a fee for the physical act of transferring a copy, and
+you may at your option offer warranty protection in exchange for a fee.
+
+ 2. You may modify your copy or copies of the Program or any portion
+of it, thus forming a work based on the Program, and copy and
+distribute such modifications or work under the terms of Section 1
+above, provided that you also meet all of these conditions:
+
+ a) You must cause the modified files to carry prominent notices
+ stating that you changed the files and the date of any change.
+
+ b) You must cause any work that you distribute or publish, that in
+ whole or in part contains or is derived from the Program or any
+ part thereof, to be licensed as a whole at no charge to all third
+ parties under the terms of this License.
+
+ c) If the modified program normally reads commands interactively
+ when run, you must cause it, when started running for such
+ interactive use in the most ordinary way, to print or display an
+ announcement including an appropriate copyright notice and a
+ notice that there is no warranty (or else, saying that you provide
+ a warranty) and that users may redistribute the program under
+ these conditions, and telling the user how to view a copy of this
+ License. (Exception: if the Program itself is interactive but
+ does not normally print such an announcement, your work based on
+ the Program is not required to print an announcement.)
+
+These requirements apply to the modified work as a whole. If
+identifiable sections of that work are not derived from the Program,
+and can be reasonably considered independent and separate works in
+themselves, then this License, and its terms, do not apply to those
+sections when you distribute them as separate works. But when you
+distribute the same sections as part of a whole which is a work based
+on the Program, the distribution of the whole must be on the terms of
+this License, whose permissions for other licensees extend to the
+entire whole, and thus to each and every part regardless of who wrote it.
+
+Thus, it is not the intent of this section to claim rights or contest
+your rights to work written entirely by you; rather, the intent is to
+exercise the right to control the distribution of derivative or
+collective works based on the Program.
+
+In addition, mere aggregation of another work not based on the Program
+with the Program (or with a work based on the Program) on a volume of
+a storage or distribution medium does not bring the other work under
+the scope of this License.
+
+ 3. You may copy and distribute the Program (or a work based on it,
+under Section 2) in object code or executable form under the terms of
+Sections 1 and 2 above provided that you also do one of the following:
+
+ a) Accompany it with the complete corresponding machine-readable
+ source code, which must be distributed under the terms of Sections
+ 1 and 2 above on a medium customarily used for software interchange; or,
+
+ b) Accompany it with a written offer, valid for at least three
+ years, to give any third party, for a charge no more than your
+ cost of physically performing source distribution, a complete
+ machine-readable copy of the corresponding source code, to be
+ distributed under the terms of Sections 1 and 2 above on a medium
+ customarily used for software interchange; or,
+
+ c) Accompany it with the information you received as to the offer
+ to distribute corresponding source code. (This alternative is
+ allowed only for noncommercial distribution and only if you
+ received the program in object code or executable form with such
+ an offer, in accord with Subsection b above.)
+
+The source code for a work means the preferred form of the work for
+making modifications to it. For an executable work, complete source
+code means all the source code for all modules it contains, plus any
+associated interface definition files, plus the scripts used to
+control compilation and installation of the executable. However, as a
+special exception, the source code distributed need not include
+anything that is normally distributed (in either source or binary
+form) with the major components (compiler, kernel, and so on) of the
+operating system on which the executable runs, unless that component
+itself accompanies the executable.
+
+If distribution of executable or object code is made by offering
+access to copy from a designated place, then offering equivalent
+access to copy the source code from the same place counts as
+distribution of the source code, even though third parties are not
+compelled to copy the source along with the object code.
+
+ 4. You may not copy, modify, sublicense, or distribute the Program
+except as expressly provided under this License. Any attempt
+otherwise to copy, modify, sublicense or distribute the Program is
+void, and will automatically terminate your rights under this License.
+However, parties who have received copies, or rights, from you under
+this License will not have their licenses terminated so long as such
+parties remain in full compliance.
+
+ 5. You are not required to accept this License, since you have not
+signed it. However, nothing else grants you permission to modify or
+distribute the Program or its derivative works. These actions are
+prohibited by law if you do not accept this License. Therefore, by
+modifying or distributing the Program (or any work based on the
+Program), you indicate your acceptance of this License to do so, and
+all its terms and conditions for copying, distributing or modifying
+the Program or works based on it.
+
+ 6. Each time you redistribute the Program (or any work based on the
+Program), the recipient automatically receives a license from the
+original licensor to copy, distribute or modify the Program subject to
+these terms and conditions. You may not impose any further
+restrictions on the recipients' exercise of the rights granted herein.
+You are not responsible for enforcing compliance by third parties to
+this License.
+
+ 7. If, as a consequence of a court judgment or allegation of patent
+infringement or for any other reason (not limited to patent issues),
+conditions are imposed on you (whether by court order, agreement or
+otherwise) that contradict the conditions of this License, they do not
+excuse you from the conditions of this License. If you cannot
+distribute so as to satisfy simultaneously your obligations under this
+License and any other pertinent obligations, then as a consequence you
+may not distribute the Program at all. For example, if a patent
+license would not permit royalty-free redistribution of the Program by
+all those who receive copies directly or indirectly through you, then
+the only way you could satisfy both it and this License would be to
+refrain entirely from distribution of the Program.
+
+If any portion of this section is held invalid or unenforceable under
+any particular circumstance, the balance of the section is intended to
+apply and the section as a whole is intended to apply in other
+circumstances.
+
+It is not the purpose of this section to induce you to infringe any
+patents or other property right claims or to contest validity of any
+such claims; this section has the sole purpose of protecting the
+integrity of the free software distribution system, which is
+implemented by public license practices. Many people have made
+generous contributions to the wide range of software distributed
+through that system in reliance on consistent application of that
+system; it is up to the author/donor to decide if he or she is willing
+to distribute software through any other system and a licensee cannot
+impose that choice.
+
+This section is intended to make thoroughly clear what is believed to
+be a consequence of the rest of this License.
+
+ 8. If the distribution and/or use of the Program is restricted in
+certain countries either by patents or by copyrighted interfaces, the
+original copyright holder who places the Program under this License
+may add an explicit geographical distribution limitation excluding
+those countries, so that distribution is permitted only in or among
+countries not thus excluded. In such case, this License incorporates
+the limitation as if written in the body of this License.
+
+ 9. The Free Software Foundation may publish revised and/or new versions
+of the General Public License from time to time. Such new versions will
+be similar in spirit to the present version, but may differ in detail to
+address new problems or concerns.
+
+Each version is given a distinguishing version number. If the Program
+specifies a version number of this License which applies to it and "any
+later version", you have the option of following the terms and conditions
+either of that version or of any later version published by the Free
+Software Foundation. If the Program does not specify a version number of
+this License, you may choose any version ever published by the Free Software
+Foundation.
+
+ 10. If you wish to incorporate parts of the Program into other free
+programs whose distribution conditions are different, write to the author
+to ask for permission. For software which is copyrighted by the Free
+Software Foundation, write to the Free Software Foundation; we sometimes
+make exceptions for this. Our decision will be guided by the two goals
+of preserving the free status of all derivatives of our free software and
+of promoting the sharing and reuse of software generally.
+
+ NO WARRANTY
+
+ 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
+FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN
+OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
+PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
+OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS
+TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE
+PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
+REPAIR OR CORRECTION.
+
+ 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
+WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
+REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
+INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING
+OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED
+TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY
+YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
+PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
+POSSIBILITY OF SUCH DAMAGES.
+
+ END OF TERMS AND CONDITIONS
+
+ How to Apply These Terms to Your New Programs
+
+ If you develop a new program, and you want it to be of the greatest
+possible use to the public, the best way to achieve this is to make it
+free software which everyone can redistribute and change under these terms.
+
+ To do so, attach the following notices to the program. It is safest
+to attach them to the start of each source file to most effectively
+convey the exclusion of warranty; and each file should have at least
+the "copyright" line and a pointer to where the full notice is found.
+
+ <one line to give the program's name and a brief idea of what it does.>
+ Copyright (C) <year> <name of author>
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License along
+ with this program; if not, write to the Free Software Foundation, Inc.,
+ 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+
+Also add information on how to contact you by electronic and paper mail.
+
+If the program is interactive, make it output a short notice like this
+when it starts in an interactive mode:
+
+ Gnomovision version 69, Copyright (C) year name of author
+ Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
+ This is free software, and you are welcome to redistribute it
+ under certain conditions; type `show c' for details.
+
+The hypothetical commands `show w' and `show c' should show the appropriate
+parts of the General Public License. Of course, the commands you use may
+be called something other than `show w' and `show c'; they could even be
+mouse-clicks or menu items--whatever suits your program.
+
+You should also get your employer (if you work as a programmer) or your
+school, if any, to sign a "copyright disclaimer" for the program, if
+necessary. Here is a sample; alter the names:
+
+ Yoyodyne, Inc., hereby disclaims all copyright interest in the program
+ `Gnomovision' (which makes passes at compilers) written by James Hacker.
+
+ <signature of Ty Coon>, 1 April 1989
+ Ty Coon, President of Vice
+
+This General Public License does not permit incorporating your program into
+proprietary programs. If your program is a subroutine library, you may
+consider it more useful to permit linking proprietary applications with the
+library. If this is what you want to do, use the GNU Lesser General
+Public License instead of this License.
diff --git a/MLEB/cldr/CldrCurrencies.php b/MLEB/cldr/CldrCurrencies.php
new file mode 100644
index 00000000..c0ba240d
--- /dev/null
+++ b/MLEB/cldr/CldrCurrencies.php
@@ -0,0 +1,152 @@
+<?php
+
+/**
+ * A class for getting currency-related data from cldr
+ *
+ * @author Katie Horn
+ * @copyright Copyright © 2007-2013
+ * @license http://www.gnu.org/copyleft/gpl.html GNU General Public License 2.0 or later
+ */
+class CldrCurrency {
+ private static $cache = array();
+
+ /**
+ * Loads the file which contains the relevant data
+ * @param string $data 'symbols' | 'fractions' | 'locale'
+ * @throws MWException
+ */
+ private static function loadData( $data ) {
+
+ //bail if we already have it
+ if ( isset( self::$cache[$data] ) ) {
+ return;
+ }
+
+ $filename = null;
+ switch ( $data ) {
+ case 'symbols' :
+ $filename = dirname( __FILE__ ) . '/CldrCurrency/Symbols.php';
+ $value['symbols'] = 'currencySymbols';
+ break;
+ case 'fractions' :
+ case 'locale' :
+ $filename = dirname( __FILE__ ) . '/CldrSupplemental/Supplemental.php';
+ $value['fractions'] = 'currencyFractions';
+ $value['locale'] = 'localeCurrencies';
+ break;
+ default:
+ throw new MWException( "Invalid 'data' parameter:\$data in " . __METHOD__ );
+ }
+
+ //go get it
+ if ( file_exists( $filename ) ) {
+ require_once $filename;
+ }
+
+ foreach ( $value as $dataname => $varname ) {
+ self::$cache[$dataname] = $$varname;
+ }
+ }
+
+ /**
+ * getSymbol returns a symbol for the relevant currency that should be
+ * recognized notation for that currency in the specified language and
+ * optionally specified country.
+ *
+ * NOTE: This function will always perform more reliably if a country is
+ * specified
+ *
+ * @param string $currency_code ISO 4217 3-character currency code.
+ * @param string $language_code ISO 639 2-character language code.
+ * @param string $country_code ISO 3166-1 Alpha-2 country code (optional)
+ * @return string The symbol for the specified currency, language, and country
+ */
+ public static function getSymbol( $currency_code, $language_code, $country_code = null ) {
+ self::loadData( 'symbols' );
+
+ if ( array_key_exists( strtoupper( $currency_code ), self::$cache['symbols'] ) ) {
+ $currency_code = strtoupper( $currency_code );
+ $language_code = strtolower( $language_code );
+ if ( !is_null( $country_code ) ) {
+ $country_code = strtoupper( $country_code );
+ if ( $country_code === 'UK' ) {
+ $country_code = 'GB'; //dang iso overlap...
+ }
+ }
+
+ //get the default (either the 'root' language, or the original ISO code)
+ $default = $currency_code;
+ if ( array_key_exists( 'root', self::$cache['symbols'][$currency_code] ) ) {
+ $default = self::$cache['symbols'][$currency_code]['root'];
+ }
+
+ //language code might or might not exist
+ if ( array_key_exists( $language_code, self::$cache['symbols'][$currency_code] ) ) {
+ if ( is_array( self::$cache['symbols'][$currency_code][$language_code] ) ) {
+
+ //did we specify a country? If not: Default.
+ if ( !is_null( $country_code ) &&
+ array_key_exists(
+ $country_code,
+ self::$cache['symbols'][$currency_code][$language_code]
+ )
+ ) {
+ return self::$cache['symbols'][$currency_code][$language_code][$country_code];
+ } elseif ( array_key_exists(
+ 'DEFAULT',
+ self::$cache['symbols'][$currency_code][$language_code]
+ ) ) {
+ return self::$cache['symbols'][$currency_code][$language_code]['DEFAULT'];
+ } else {
+ return $default;
+ }
+ } else {
+ return self::$cache['symbols'][$currency_code][$language_code];
+ }
+ } else {
+ return $default;
+ }
+ } else {
+ //we have no idea what you were going for, so you can have your old code back.
+ return $currency_code;
+ }
+ }
+
+ /**
+ * getCurrenciesByCountry returns an ordered list of ISO 4217 3-character
+ * currency codes that are valid in the specified country.
+ *
+ * @param string $country_code ISO 3166-1 Alpha-2 country code
+ * @return array An array of indicies and currency codes, or an empty array
+ * if no valid currency is found.
+ */
+ public static function getCurrenciesByCountry( $country_code ) {
+ self::loadData( 'locale' );
+ $country_code = strtoupper( $country_code );
+ if ( $country_code === 'UK' ) {
+ $country_code = 'GB'; //iso overlap again
+ }
+ if ( array_key_exists( $country_code, self::$cache['locale'] ) ) {
+ return self::$cache['locale'][$country_code];
+ } else {
+ return array();
+ }
+ }
+
+ /**
+ * getDecimalPlaces returns a number specifying how many decimal places the
+ * requested currency supports.
+ *
+ * @param string $currency_code ISO 4217 3-character currency code.
+ * @return int The number of decimal places for the relevant currency (0 for nonfractional)
+ */
+ public static function getDecimalPlaces( $currency_code ) {
+ self::loadData( 'fractions' );
+ $currency_code = strtoupper( $currency_code );
+ if ( array_key_exists( $currency_code, self::$cache['fractions'] ) ) {
+ return (int)self::$cache['fractions'][$currency_code]['digits'];
+ } else {
+ return (int)self::$cache['fractions']['DEFAULT']['digits'];
+ }
+ }
+}
diff --git a/MLEB/cldr/CldrCurrency/Symbols.php b/MLEB/cldr/CldrCurrency/Symbols.php
new file mode 100644
index 00000000..845768c9
--- /dev/null
+++ b/MLEB/cldr/CldrCurrency/Symbols.php
@@ -0,0 +1,7851 @@
+<?php
+
+$currencySymbols = array(
+ 'ADP' => array(
+ 'en' => array(
+ 'GB' => 'ADP',
+ ),
+ ),
+ 'AED' => array(
+ 'ar' => 'د.إ.‏',
+ 'en' => array(
+ 'GB' => 'AED',
+ ),
+ ),
+ 'AFA' => array(
+ 'en' => array(
+ 'GB' => 'AFA',
+ ),
+ ),
+ 'AFN' => array(
+ 'en' => array(
+ 'GB' => 'AFN',
+ ),
+ 'es' => array(
+ 'DEFAULT' => 'AFN',
+ 'MX' => 'Af',
+ ),
+ 'fa' => '؋',
+ 'ps' => '؋',
+ 'uz' => '؋',
+ ),
+ 'ALL' => array(
+ 'en' => array(
+ 'GB' => 'ALL',
+ ),
+ 'sq' => 'Lekë',
+ ),
+ 'AMD' => array(
+ 'en' => array(
+ 'GB' => 'AMD',
+ ),
+ 'hy' => '֏',
+ ),
+ 'ANG' => array(
+ 'en' => array(
+ 'GB' => 'ANG',
+ 'SX' => 'NAf.',
+ ),
+ 'es' => array(
+ 'DEFAULT' => 'ANG',
+ 'MX' => 'Naf',
+ ),
+ 'nl' => array(
+ 'CW' => 'NAf.',
+ 'DEFAULT' => 'ANG',
+ 'SX' => 'NAf.',
+ ),
+ ),
+ 'AOA' => array(
+ 'af' => 'AOA',
+ 'am' => 'AOA',
+ 'ar' => 'AOA',
+ 'ast' => 'AOA',
+ 'az' => 'AOA',
+ 'bg' => 'AOA',
+ 'bn' => 'AOA',
+ 'bs' => 'AOA',
+ 'ca' => 'AOA',
+ 'cs' => 'AOA',
+ 'da' => 'AOA',
+ 'de' => 'AOA',
+ 'el' => 'AOA',
+ 'en' => array(
+ 'GB' => 'AOA',
+ ),
+ 'es' => array(
+ 'DEFAULT' => 'AOA',
+ 'MX' => 'Kz',
+ ),
+ 'et' => 'AOA',
+ 'eu' => 'AOA',
+ 'fi' => 'AOA',
+ 'fr' => 'AOA',
+ 'ga' => 'AOA',
+ 'gd' => 'AOA',
+ 'gl' => 'AOA',
+ 'gu' => 'AOA',
+ 'he' => 'AOA',
+ 'hi' => 'AOA',
+ 'hr' => 'AOA',
+ 'hu' => 'AOA',
+ 'hy' => 'AOA',
+ 'id' => 'AOA',
+ 'is' => 'AOA',
+ 'it' => 'AOA',
+ 'ja' => 'AOA',
+ 'ka' => 'AOA',
+ 'kea' => 'AOA',
+ 'kk' => 'AOA',
+ 'km' => 'AOA',
+ 'kn' => 'AOA',
+ 'ko' => 'AOA',
+ 'ln' => array(
+ 'AO' => 'Kz',
+ ),
+ 'lo' => 'AOA',
+ 'lt' => 'AOA',
+ 'lv' => 'AOA',
+ 'mk' => 'AOA',
+ 'ml' => 'AOA',
+ 'mn' => 'AOA',
+ 'mr' => 'AOA',
+ 'ms' => 'AOA',
+ 'nb' => 'AOA',
+ 'ne' => 'AOA',
+ 'nl' => 'AOA',
+ 'pa' => 'AOA',
+ 'pl' => 'AOA',
+ 'pt' => array(
+ 'AO' => 'Kz',
+ 'DEFAULT' => 'AOA',
+ ),
+ 'ro' => 'AOA',
+ 'root' => 'Kz',
+ 'ru' => 'AOA',
+ 'si' => 'AOA',
+ 'sk' => 'AOA',
+ 'sl' => 'AOA',
+ 'sr' => 'AOA',
+ 'sv' => 'AOA',
+ 'sw' => 'AOA',
+ 'ta' => 'AOA',
+ 'te' => 'AOA',
+ 'th' => 'AOA',
+ 'tr' => 'AOA',
+ 'uk' => 'AOA',
+ 'ur' => 'AOA',
+ 'uz' => 'AOA',
+ 'vi' => 'AOA',
+ 'zh' => 'AOA',
+ ),
+ 'ARA' => array(
+ 'es' => array(
+ 'MX' => 'ARA',
+ ),
+ ),
+ 'ARS' => array(
+ 'af' => 'ARS',
+ 'am' => 'ARS',
+ 'ar' => 'ARS',
+ 'ast' => 'ARS',
+ 'az' => 'ARS',
+ 'bg' => 'ARS',
+ 'bn' => 'ARS',
+ 'bs' => 'ARS',
+ 'ca' => 'ARS',
+ 'cs' => 'ARS',
+ 'da' => 'ARS',
+ 'de' => 'ARS',
+ 'el' => 'ARS',
+ 'en' => array(
+ 'GB' => 'ARS',
+ ),
+ 'es' => array(
+ 'AR' => '$',
+ 'DEFAULT' => 'ARS',
+ 'MX' => '$a',
+ ),
+ 'et' => 'ARS',
+ 'eu' => 'ARS',
+ 'fi' => 'ARS',
+ 'fil' => 'ARS',
+ 'fr' => array(
+ 'CA' => 'ARS',
+ 'DEFAULT' => '$AR',
+ ),
+ 'ga' => 'ARS',
+ 'gd' => 'ARS',
+ 'gl' => 'ARS',
+ 'gu' => 'ARS',
+ 'he' => 'ARS',
+ 'hi' => 'ARS',
+ 'hr' => 'ARS',
+ 'hu' => 'ARS',
+ 'hy' => 'ARS',
+ 'id' => 'ARS',
+ 'is' => 'ARS',
+ 'it' => 'ARS',
+ 'ja' => 'ARS',
+ 'ka' => 'ARS',
+ 'km' => 'ARS',
+ 'kn' => 'ARS',
+ 'ko' => 'ARS',
+ 'ky' => 'ARS',
+ 'lo' => 'ARS',
+ 'lt' => 'ARS',
+ 'lv' => 'ARS',
+ 'mk' => 'ARS',
+ 'ml' => 'ARS',
+ 'mn' => 'ARS',
+ 'mr' => 'ARS',
+ 'ms' => 'ARS',
+ 'nb' => 'ARS',
+ 'ne' => 'ARS',
+ 'nl' => 'ARS',
+ 'pa' => 'ARS',
+ 'pl' => 'ARS',
+ 'pt' => 'ARS',
+ 'ro' => 'ARS',
+ 'root' => '$',
+ 'ru' => 'ARS',
+ 'si' => 'ARS',
+ 'sk' => 'ARS',
+ 'sl' => 'ARS',
+ 'sr' => 'ARS',
+ 'sv' => 'ARS',
+ 'sw' => 'ARS',
+ 'ta' => 'ARS',
+ 'te' => 'ARS',
+ 'th' => 'ARS',
+ 'tr' => 'ARS',
+ 'uk' => 'ARS',
+ 'ur' => 'ARS',
+ 'uz' => 'ARS',
+ 'vi' => 'ARS',
+ 'zh' => 'ARS',
+ ),
+ 'ATS' => array(
+ 'de' => 'öS',
+ 'en' => array(
+ 'GB' => 'ATS',
+ ),
+ 'gsw' => 'öS',
+ 'lb' => 'öS',
+ ),
+ 'AUD' => array(
+ 'am' => 'AU$',
+ 'ar' => 'AU$',
+ 'bg' => 'AUD',
+ 'br' => '$A',
+ 'bs' => 'AUD',
+ 'ca' => 'AU$',
+ 'cs' => 'AU$',
+ 'da' => 'AU$',
+ 'de' => 'AU$',
+ 'dsb' => 'AUD',
+ 'dz' => 'AU$',
+ 'ee' => 'AU$',
+ 'en' => array(
+ 'CC' => '$',
+ 'CX' => '$',
+ 'GB' => 'A$',
+ 'KI' => '$',
+ 'NF' => '$',
+ 'NR' => '$',
+ 'TV' => '$',
+ ),
+ 'eo' => 'AU$',
+ 'es' => array(
+ 'DEFAULT' => 'AUD',
+ 'MX' => 'AU$',
+ ),
+ 'et' => 'AU$',
+ 'fi' => 'AUD',
+ 'fr' => array(
+ 'CA' => '$ AU',
+ 'DEFAULT' => '$AU',
+ ),
+ 'fy' => 'AU$',
+ 'gl' => '$A',
+ 'hr' => 'AUD',
+ 'hsb' => 'AUD',
+ 'hu' => 'AUD',
+ 'id' => 'AU$',
+ 'is' => 'AUD',
+ 'ja' => 'AU$',
+ 'ka' => 'AUD',
+ 'kea' => 'AU$',
+ 'ko' => 'AU$',
+ 'ky' => 'AUD',
+ 'lb' => 'AU$',
+ 'lt' => 'AUD',
+ 'lv' => 'AU$',
+ 'mk' => 'AUD',
+ 'nb' => 'AUD',
+ 'nl' => 'AU$',
+ 'pl' => 'AUD',
+ 'pt' => 'AU$',
+ 'ro' => 'AUD',
+ 'root' => 'A$',
+ 'sk' => 'AUD',
+ 'sr' => 'AUD',
+ 'sv' => 'AUD',
+ 'th' => 'AU$',
+ 'to' => 'AUD$',
+ 'tr' => 'AU$',
+ 'uk' => 'AUD',
+ 'vi' => 'AU$',
+ 'zh' => 'AU$',
+ ),
+ 'AWG' => array(
+ 'en' => array(
+ 'GB' => 'AWG',
+ ),
+ 'es' => array(
+ 'DEFAULT' => 'AWG',
+ 'MX' => 'Afl.',
+ ),
+ 'nl' => array(
+ 'AW' => 'Afl.',
+ 'DEFAULT' => 'AWG',
+ ),
+ ),
+ 'AZM' => array(
+ 'en' => array(
+ 'GB' => 'AZM',
+ ),
+ ),
+ 'AZN' => array(
+ 'az' => 'ман.',
+ 'en' => array(
+ 'GB' => 'AZN',
+ ),
+ ),
+ 'BAD' => array(
+ 'en' => array(
+ 'GB' => 'BAD',
+ ),
+ ),
+ 'BAM' => array(
+ 'af' => 'BAM',
+ 'am' => 'BAM',
+ 'ar' => 'BAM',
+ 'ast' => 'BAM',
+ 'az' => 'BAM',
+ 'bg' => 'BAM',
+ 'bn' => 'BAM',
+ 'bs' => 'КМ',
+ 'ca' => 'BAM',
+ 'cs' => 'BAM',
+ 'da' => 'BAM',
+ 'de' => 'BAM',
+ 'el' => 'BAM',
+ 'en' => array(
+ 'GB' => 'BAM',
+ ),
+ 'es' => 'BAM',
+ 'et' => 'BAM',
+ 'eu' => 'BAM',
+ 'fi' => 'BAM',
+ 'fil' => 'BAM',
+ 'fr' => 'BAM',
+ 'ga' => 'BAM',
+ 'gd' => 'BAM',
+ 'gl' => 'BAM',
+ 'gu' => 'BAM',
+ 'he' => 'BAM',
+ 'hi' => 'BAM',
+ 'hr' => array(
+ 'BA' => 'KM',
+ 'DEFAULT' => 'BAM',
+ ),
+ 'hu' => 'BAM',
+ 'hy' => 'BAM',
+ 'id' => 'BAM',
+ 'is' => 'BAM',
+ 'it' => 'BAM',
+ 'ja' => 'BAM',
+ 'ka' => 'BAM',
+ 'kea' => 'BAM',
+ 'km' => 'BAM',
+ 'kn' => 'BAM',
+ 'ko' => 'BAM',
+ 'ky' => 'BAM',
+ 'lo' => 'BAM',
+ 'lt' => 'BAM',
+ 'lv' => 'BAM',
+ 'mk' => 'BAM',
+ 'ml' => 'BAM',
+ 'mn' => 'BAM',
+ 'mr' => 'BAM',
+ 'ms' => 'BAM',
+ 'nb' => 'BAM',
+ 'ne' => 'BAM',
+ 'nl' => 'BAM',
+ 'pa' => 'BAM',
+ 'pl' => 'BAM',
+ 'pt' => 'BAM',
+ 'ro' => 'BAM',
+ 'root' => 'KM',
+ 'ru' => 'BAM',
+ 'si' => 'BAM',
+ 'sk' => 'BAM',
+ 'sl' => 'BAM',
+ 'sv' => 'BAM',
+ 'sw' => 'BAM',
+ 'ta' => 'BAM',
+ 'te' => 'BAM',
+ 'th' => 'BAM',
+ 'tr' => 'BAM',
+ 'uk' => 'BAM',
+ 'ur' => 'BAM',
+ 'uz' => 'BAM',
+ 'vi' => 'BAM',
+ 'zh' => 'BAM',
+ ),
+ 'BAN' => array(
+ 'en' => array(
+ 'GB' => 'BAN',
+ ),
+ ),
+ 'BBD' => array(
+ 'af' => 'BBD',
+ 'am' => 'BBD',
+ 'ar' => 'BBD',
+ 'ast' => 'BBD',
+ 'az' => 'BBD',
+ 'bg' => 'BBD',
+ 'bn' => 'BBD',
+ 'bs' => 'BBD',
+ 'ca' => 'BBD',
+ 'cs' => 'BBD',
+ 'da' => 'BBD',
+ 'de' => 'BBD',
+ 'el' => 'BBD',
+ 'en' => array(
+ 'BB' => '$',
+ 'GB' => 'BBD',
+ ),
+ 'es' => 'BBD',
+ 'et' => 'BBD',
+ 'eu' => 'BBD',
+ 'fi' => 'BBD',
+ 'fil' => 'BBD',
+ 'fr' => 'BBD',
+ 'ga' => 'BBD',
+ 'gd' => 'BBD',
+ 'gl' => 'BBD',
+ 'gu' => 'BBD',
+ 'he' => 'BBD',
+ 'hi' => 'BBD',
+ 'hr' => 'BBD',
+ 'hu' => 'BBD',
+ 'hy' => 'BBD',
+ 'id' => 'BBD',
+ 'is' => 'BBD',
+ 'it' => 'BBD',
+ 'ja' => 'BBD',
+ 'ka' => 'BBD',
+ 'kk' => 'BBD',
+ 'km' => 'BBD',
+ 'kn' => 'BBD',
+ 'ko' => 'BBD',
+ 'ky' => 'BBD',
+ 'lo' => 'BBD',
+ 'lt' => 'BBD',
+ 'lv' => 'BBD',
+ 'mk' => 'BBD',
+ 'ml' => 'BBD',
+ 'mn' => 'BBD',
+ 'mr' => 'BBD',
+ 'ms' => 'BBD',
+ 'nb' => 'BBD',
+ 'ne' => 'BBD',
+ 'nl' => 'BBD',
+ 'pa' => 'BBD',
+ 'pl' => 'BBD',
+ 'pt' => 'BBD',
+ 'ro' => 'BBD',
+ 'root' => '$',
+ 'ru' => 'BBD',
+ 'si' => 'BBD',
+ 'sk' => 'BBD',
+ 'sl' => 'BBD',
+ 'sr' => 'BBD',
+ 'sv' => 'Bds$',
+ 'sw' => 'BBD',
+ 'ta' => 'BBD',
+ 'te' => 'BBD',
+ 'th' => 'BBD',
+ 'tr' => 'BBD',
+ 'uk' => 'BBD',
+ 'ur' => 'BBD',
+ 'uz' => 'BBD',
+ 'vi' => 'BBD',
+ 'zh' => 'BBD',
+ 'zu' => 'BBD',
+ ),
+ 'BDT' => array(
+ 'af' => 'BDT',
+ 'am' => 'BDT',
+ 'ar' => 'BDT',
+ 'ast' => 'BDT',
+ 'az' => 'BDT',
+ 'bg' => 'BDT',
+ 'bs' => 'BDT',
+ 'ca' => 'BDT',
+ 'cs' => 'BDT',
+ 'da' => 'BDT',
+ 'de' => 'BDT',
+ 'el' => 'BDT',
+ 'en' => array(
+ 'GB' => 'BDT',
+ ),
+ 'es' => 'BDT',
+ 'et' => 'BDT',
+ 'eu' => 'BDT',
+ 'fi' => 'BDT',
+ 'fil' => 'BDT',
+ 'fr' => 'BDT',
+ 'ga' => 'BDT',
+ 'gd' => 'BDT',
+ 'gl' => 'BDT',
+ 'gu' => 'BDT',
+ 'he' => 'BDT',
+ 'hi' => 'BDT',
+ 'hr' => 'BDT',
+ 'hu' => 'BDT',
+ 'hy' => 'BDT',
+ 'id' => 'BDT',
+ 'is' => 'BDT',
+ 'it' => 'BDT',
+ 'ja' => 'BDT',
+ 'ka' => 'BDT',
+ 'kk' => 'BDT',
+ 'km' => 'BDT',
+ 'kn' => 'BDT',
+ 'ko' => 'BDT',
+ 'lb' => 'BDT',
+ 'lo' => 'BDT',
+ 'lt' => 'BDT',
+ 'lv' => 'BDT',
+ 'mk' => 'BDT',
+ 'ml' => 'BDT',
+ 'mn' => 'BDT',
+ 'mr' => 'BDT',
+ 'ms' => 'BDT',
+ 'nb' => 'BDT',
+ 'ne' => 'BDT',
+ 'nl' => 'BDT',
+ 'pa' => 'BDT',
+ 'pl' => 'BDT',
+ 'pt' => 'BDT',
+ 'ro' => 'BDT',
+ 'root' => '৳',
+ 'ru' => 'BDT',
+ 'si' => 'BDT',
+ 'sk' => 'BDT',
+ 'sl' => 'BDT',
+ 'sr' => 'BDT',
+ 'sv' => 'BDT',
+ 'sw' => 'BDT',
+ 'ta' => 'BDT',
+ 'te' => 'BDT',
+ 'th' => 'BDT',
+ 'tr' => 'BDT',
+ 'uk' => 'BDT',
+ 'ur' => 'BDT',
+ 'uz' => 'BDT',
+ 'vi' => 'BDT',
+ 'zh' => 'BDT',
+ ),
+ 'BEC' => array(
+ 'en' => array(
+ 'GB' => 'BEC',
+ ),
+ ),
+ 'BEF' => array(
+ 'en' => array(
+ 'GB' => 'BEF',
+ ),
+ 'fr' => 'FB',
+ ),
+ 'BEL' => array(
+ 'en' => array(
+ 'GB' => 'BEL',
+ ),
+ ),
+ 'BGL' => array(
+ 'en' => array(
+ 'GB' => 'BGL',
+ ),
+ ),
+ 'BGM' => array(
+ 'de' => 'BGK',
+ 'en' => array(
+ 'GB' => 'BGM',
+ ),
+ ),
+ 'BGN' => array(
+ 'bg' => 'лв.',
+ 'en' => array(
+ 'GB' => 'BGN',
+ ),
+ 'sr' => '[BGN]',
+ ),
+ 'BGO' => array(
+ 'de' => 'BGJ',
+ 'en' => array(
+ 'GB' => 'BGO',
+ ),
+ ),
+ 'BHD' => array(
+ 'ar' => 'د.ب.‏',
+ 'en' => array(
+ 'GB' => 'BHD',
+ ),
+ ),
+ 'BIF' => array(
+ 'en' => array(
+ 'GB' => 'BIF',
+ ),
+ 'fr' => array(
+ 'BI' => 'FBu',
+ 'DEFAULT' => 'BIF',
+ ),
+ 'rn' => 'FBu',
+ ),
+ 'BMD' => array(
+ 'af' => 'BMD',
+ 'am' => 'BMD',
+ 'ar' => 'BMD',
+ 'ast' => 'BMD',
+ 'az' => 'BMD',
+ 'bg' => 'BMD',
+ 'bn' => 'BMD',
+ 'bs' => 'BMD',
+ 'ca' => 'BMD',
+ 'cs' => 'BMD',
+ 'cy' => 'BMD',
+ 'da' => 'BMD',
+ 'de' => 'BMD',
+ 'el' => 'BMD',
+ 'en' => array(
+ 'BM' => '$',
+ 'GB' => 'BMD',
+ ),
+ 'es' => 'BMD',
+ 'et' => 'BMD',
+ 'eu' => 'BMD',
+ 'fi' => 'BMD',
+ 'fil' => 'BMD',
+ 'fr' => array(
+ 'CA' => 'BMD',
+ 'DEFAULT' => '$BM',
+ ),
+ 'ga' => 'BMD',
+ 'gd' => 'BMD',
+ 'gl' => 'BMD',
+ 'gu' => 'BMD',
+ 'he' => 'BMD',
+ 'hi' => 'BMD',
+ 'hr' => 'BMD',
+ 'hu' => 'BMD',
+ 'hy' => 'BMD',
+ 'id' => 'BMD',
+ 'is' => 'BMD',
+ 'it' => 'BMD',
+ 'ja' => 'BMD',
+ 'ka' => 'BMD',
+ 'kk' => 'БД',
+ 'km' => 'BMD',
+ 'kn' => 'BMD',
+ 'ko' => 'BMD',
+ 'ky' => 'BMD',
+ 'lo' => 'BMD',
+ 'lt' => 'BMD',
+ 'lv' => 'BMD',
+ 'mk' => 'BMD',
+ 'ml' => 'BMD',
+ 'mn' => 'BMD',
+ 'mr' => 'BMD',
+ 'ms' => 'BMD',
+ 'nb' => 'BMD',
+ 'ne' => 'BMD',
+ 'nl' => 'BMD',
+ 'pa' => 'BMD',
+ 'pl' => 'BMD',
+ 'pt' => 'BMD',
+ 'ro' => 'BMD',
+ 'root' => '$',
+ 'ru' => 'BMD',
+ 'si' => 'BMD',
+ 'sk' => 'BMD',
+ 'sl' => 'BMD',
+ 'sr' => 'BMD',
+ 'sv' => 'BM$',
+ 'sw' => 'BMD',
+ 'ta' => 'BMD',
+ 'te' => 'BMD',
+ 'th' => 'BMD',
+ 'tr' => 'BMD',
+ 'uk' => 'BMD',
+ 'ur' => 'BMD',
+ 'uz' => 'BMD',
+ 'vi' => 'BMD',
+ 'zh' => 'BMD',
+ 'zu' => 'BMD',
+ ),
+ 'BND' => array(
+ 'af' => 'BND',
+ 'am' => 'BND',
+ 'ar' => array(
+ 'AE' => '$',
+ 'DEFAULT' => 'BND',
+ ),
+ 'ast' => 'BND',
+ 'az' => 'BND',
+ 'bg' => 'BND',
+ 'bn' => 'BND',
+ 'bs' => 'BND',
+ 'ca' => 'BND',
+ 'cs' => 'BND',
+ 'da' => 'BND',
+ 'de' => 'BND',
+ 'el' => 'BND',
+ 'en' => array(
+ 'GB' => 'BND',
+ ),
+ 'es' => 'BND',
+ 'et' => 'BND',
+ 'eu' => 'BND',
+ 'fi' => 'BND',
+ 'fil' => 'BND',
+ 'fr' => array(
+ 'CA' => 'BND',
+ 'DEFAULT' => '$BN',
+ ),
+ 'ga' => 'BND',
+ 'gd' => 'BND',
+ 'gl' => 'BND',
+ 'gu' => 'BND',
+ 'he' => 'BND',
+ 'hi' => 'BND',
+ 'hr' => 'BND',
+ 'hu' => 'BND',
+ 'hy' => 'BND',
+ 'id' => 'BND',
+ 'is' => 'BND',
+ 'it' => 'BND',
+ 'ja' => 'BND',
+ 'ka' => 'BND',
+ 'kk' => 'BND',
+ 'km' => 'BND',
+ 'kn' => 'BND',
+ 'ko' => 'BND',
+ 'lb' => 'BND',
+ 'lo' => 'BND',
+ 'lt' => 'BND',
+ 'lv' => 'BND',
+ 'mk' => 'BND',
+ 'ml' => 'BND',
+ 'mn' => 'BND',
+ 'mr' => 'BND',
+ 'ms' => array(
+ 'BN' => '$',
+ 'DEFAULT' => 'BND',
+ ),
+ 'nb' => 'BND',
+ 'ne' => 'BND',
+ 'nl' => 'BND',
+ 'pa' => 'BND',
+ 'pl' => 'BND',
+ 'pt' => 'BND',
+ 'ro' => 'BND',
+ 'root' => '$',
+ 'ru' => 'BND',
+ 'si' => 'BND',
+ 'sk' => 'BND',
+ 'sl' => 'BND',
+ 'sr' => 'BND',
+ 'sv' => 'BND',
+ 'sw' => 'BND',
+ 'ta' => 'BND',
+ 'te' => 'BND',
+ 'th' => 'BND',
+ 'tr' => 'BND',
+ 'uk' => 'BND',
+ 'ur' => 'BND',
+ 'uz' => 'BND',
+ 'vi' => 'BND',
+ 'zh' => 'BND',
+ ),
+ 'BOB' => array(
+ 'af' => 'BOB',
+ 'am' => 'BOB',
+ 'ar' => 'BOB',
+ 'az' => 'BOB',
+ 'bg' => 'BOB',
+ 'bn' => 'BOB',
+ 'bs' => 'BOB',
+ 'ca' => 'BOB',
+ 'cs' => 'BOB',
+ 'da' => 'BOB',
+ 'de' => 'BOB',
+ 'el' => 'BOB',
+ 'en' => array(
+ 'GB' => 'BOB',
+ ),
+ 'es' => array(
+ 'BO' => 'Bs',
+ 'DEFAULT' => 'BOB',
+ ),
+ 'et' => 'BOB',
+ 'eu' => 'BOB',
+ 'fi' => 'BOB',
+ 'fil' => 'BOB',
+ 'fr' => 'BOB',
+ 'ga' => 'BOB',
+ 'gd' => 'BOB',
+ 'gl' => 'BOB',
+ 'gu' => 'BOB',
+ 'he' => 'BOB',
+ 'hi' => 'BOB',
+ 'hr' => 'BOB',
+ 'hu' => 'BOB',
+ 'hy' => 'BOB',
+ 'id' => 'BOB',
+ 'is' => 'BOB',
+ 'it' => 'BOB',
+ 'ja' => 'BOB',
+ 'ka' => 'BOB',
+ 'kea' => 'BOB',
+ 'km' => 'BOB',
+ 'kn' => 'BOB',
+ 'ko' => 'BOB',
+ 'ky' => 'BOB',
+ 'lo' => 'BOB',
+ 'lt' => 'BOB',
+ 'lv' => 'BOB',
+ 'mk' => 'BOB',
+ 'ml' => 'BOB',
+ 'mn' => 'BOB',
+ 'mr' => 'BOB',
+ 'ms' => 'BOB',
+ 'nb' => 'BOB',
+ 'ne' => 'BOB',
+ 'nl' => 'BOB',
+ 'pa' => 'BOB',
+ 'pl' => 'BOB',
+ 'pt' => 'BOB',
+ 'qu' => array(
+ 'BO' => 'Bs',
+ ),
+ 'ro' => 'BOB',
+ 'root' => 'Bs',
+ 'ru' => 'BOB',
+ 'si' => 'BOB',
+ 'sk' => 'BOB',
+ 'sl' => 'BOB',
+ 'sr' => 'BOB',
+ 'sv' => 'BOB',
+ 'sw' => 'BOB',
+ 'ta' => 'BOB',
+ 'te' => 'BOB',
+ 'th' => 'BOB',
+ 'tr' => 'BOB',
+ 'uk' => 'BOB',
+ 'ur' => 'BOB',
+ 'uz' => 'BOB',
+ 'vi' => 'BOB',
+ 'zh' => 'BOB',
+ ),
+ 'BOL' => array(
+ 'es' => array(
+ 'MX' => 'BOL',
+ ),
+ ),
+ 'BOP' => array(
+ 'es' => array(
+ 'MX' => 'BOP',
+ ),
+ ),
+ 'BOV' => array(
+ 'es' => array(
+ 'MX' => 'BOV',
+ ),
+ ),
+ 'BRB' => array(
+ 'es' => array(
+ 'MX' => 'BRB',
+ ),
+ ),
+ 'BRC' => array(
+ 'es' => array(
+ 'MX' => 'BRC',
+ ),
+ ),
+ 'BRE' => array(
+ 'es' => array(
+ 'MX' => 'BRE',
+ ),
+ ),
+ 'BRL' => array(
+ 'bg' => 'BRL',
+ 'bs' => 'BRL',
+ 'ca' => 'BRL',
+ 'en' => array(
+ 'GB' => 'R$',
+ ),
+ 'es' => 'BRL',
+ 'fi' => 'BRL',
+ 'gl' => '$R',
+ 'hr' => 'BRL',
+ 'hu' => 'BRL',
+ 'is' => 'BRL',
+ 'it' => 'BRL',
+ 'ky' => 'BRL',
+ 'lt' => 'BRL',
+ 'nb' => 'BRL',
+ 'ro' => 'BRL',
+ 'root' => 'R$',
+ 'sk' => 'BRL',
+ 'sv' => 'BR$',
+ 'uk' => 'BRL',
+ ),
+ 'BRN' => array(
+ 'es' => array(
+ 'MX' => 'BRN',
+ ),
+ ),
+ 'BRR' => array(
+ 'es' => array(
+ 'MX' => 'BRR',
+ ),
+ ),
+ 'BRZ' => array(
+ 'es' => array(
+ 'MX' => 'BRZ',
+ ),
+ ),
+ 'BSD' => array(
+ 'af' => 'BSD',
+ 'am' => 'BSD',
+ 'ar' => 'BSD',
+ 'ast' => 'BSD',
+ 'az' => 'BSD',
+ 'bg' => 'BSD',
+ 'bn' => 'BSD',
+ 'bs' => 'BSD',
+ 'ca' => 'BSD',
+ 'cs' => 'BSD',
+ 'da' => 'BSD',
+ 'de' => 'BSD',
+ 'el' => 'BSD',
+ 'en' => array(
+ 'BS' => '$',
+ 'GB' => 'BSD',
+ ),
+ 'es' => 'BSD',
+ 'et' => 'BSD',
+ 'eu' => 'BSD',
+ 'fi' => 'BSD',
+ 'fil' => 'BSD',
+ 'fr' => array(
+ 'CA' => 'BSD',
+ 'DEFAULT' => '$BS',
+ ),
+ 'ga' => 'BSD',
+ 'gd' => 'BSD',
+ 'gl' => 'BSD',
+ 'gu' => 'BSD',
+ 'he' => 'BSD',
+ 'hi' => 'BSD',
+ 'hr' => 'BSD',
+ 'hu' => 'BSD',
+ 'hy' => 'BSD',
+ 'id' => 'BSD',
+ 'is' => 'BSD',
+ 'it' => 'BSD',
+ 'ja' => 'BSD',
+ 'ka' => 'BSD',
+ 'kk' => 'BSD',
+ 'km' => 'BSD',
+ 'kn' => 'BSD',
+ 'ko' => 'BSD',
+ 'lo' => 'BSD',
+ 'lt' => 'BSD',
+ 'lv' => 'BSD',
+ 'mk' => 'BSD',
+ 'ml' => 'BSD',
+ 'mn' => 'BSD',
+ 'mr' => 'BSD',
+ 'ms' => 'BSD',
+ 'nb' => 'BSD',
+ 'ne' => 'BSD',
+ 'nl' => 'BSD',
+ 'pa' => 'BSD',
+ 'pl' => 'BSD',
+ 'pt' => 'BSD',
+ 'ro' => 'BSD',
+ 'root' => '$',
+ 'ru' => 'BSD',
+ 'si' => 'BSD',
+ 'sk' => 'BSD',
+ 'sl' => 'BSD',
+ 'sr' => 'BSD',
+ 'sv' => 'BS$',
+ 'sw' => 'BSD',
+ 'ta' => 'BSD',
+ 'te' => 'BSD',
+ 'th' => 'BSD',
+ 'tr' => 'BSD',
+ 'uk' => 'BSD',
+ 'ur' => 'BSD',
+ 'uz' => 'BSD',
+ 'vi' => 'BSD',
+ 'zh' => 'BSD',
+ 'zu' => 'BSD',
+ ),
+ 'BTN' => array(
+ 'dz' => 'Nu.',
+ 'en' => array(
+ 'GB' => 'BTN',
+ ),
+ ),
+ 'BUK' => array(
+ 'en' => array(
+ 'GB' => 'BUK',
+ ),
+ ),
+ 'BWP' => array(
+ 'af' => 'BWP',
+ 'am' => 'BWP',
+ 'ar' => 'BWP',
+ 'ast' => 'BWP',
+ 'az' => 'BWP',
+ 'bg' => 'BWP',
+ 'bn' => 'BWP',
+ 'bs' => 'BWP',
+ 'ca' => 'BWP',
+ 'cs' => 'BWP',
+ 'da' => 'BWP',
+ 'de' => 'BWP',
+ 'el' => 'BWP',
+ 'en' => array(
+ 'BW' => 'P',
+ 'GB' => 'BWP',
+ ),
+ 'es' => 'BWP',
+ 'et' => 'BWP',
+ 'eu' => 'BWP',
+ 'fi' => 'BWP',
+ 'fr' => 'BWP',
+ 'ga' => 'BWP',
+ 'gd' => 'BWP',
+ 'gl' => 'BWP',
+ 'gu' => 'BWP',
+ 'he' => 'BWP',
+ 'hi' => 'BWP',
+ 'hr' => 'BWP',
+ 'hu' => 'BWP',
+ 'hy' => 'BWP',
+ 'id' => 'BWP',
+ 'is' => 'BWP',
+ 'it' => 'BWP',
+ 'ja' => 'BWP',
+ 'ka' => 'BWP',
+ 'kea' => 'BWP',
+ 'kk' => 'BWP',
+ 'km' => 'BWP',
+ 'kn' => 'BWP',
+ 'ko' => 'BWP',
+ 'lo' => 'BWP',
+ 'lt' => 'BWP',
+ 'lv' => 'BWP',
+ 'mk' => 'BWP',
+ 'ml' => 'BWP',
+ 'mn' => 'BWP',
+ 'mr' => 'BWP',
+ 'ms' => 'BWP',
+ 'nb' => 'BWP',
+ 'ne' => 'BWP',
+ 'nl' => 'BWP',
+ 'pa' => 'BWP',
+ 'pl' => 'BWP',
+ 'pt' => 'BWP',
+ 'ro' => 'BWP',
+ 'root' => 'P',
+ 'ru' => 'BWP',
+ 'si' => 'BWP',
+ 'sk' => 'BWP',
+ 'sl' => 'BWP',
+ 'sr' => 'BWP',
+ 'sv' => 'BWP',
+ 'sw' => 'BWP',
+ 'ta' => 'BWP',
+ 'te' => 'BWP',
+ 'th' => 'BWP',
+ 'tn' => array(
+ 'BW' => 'P',
+ ),
+ 'tr' => 'BWP',
+ 'uk' => 'BWP',
+ 'ur' => 'BWP',
+ 'uz' => 'BWP',
+ 'vi' => 'BWP',
+ 'zh' => 'BWP',
+ ),
+ 'BYB' => array(
+ 'en' => array(
+ 'GB' => 'BYB',
+ ),
+ ),
+ 'BYR' => array(
+ 'af' => 'BYR',
+ 'am' => 'BYR',
+ 'ar' => 'BYR',
+ 'ast' => 'BYR',
+ 'az' => 'BYR',
+ 'bg' => 'BYR',
+ 'bn' => 'BYR',
+ 'bs' => 'BYR',
+ 'ca' => 'BYR',
+ 'cs' => 'BYR',
+ 'da' => 'BYR',
+ 'de' => 'BYR',
+ 'el' => 'BYR',
+ 'en' => array(
+ 'GB' => 'BYR',
+ ),
+ 'es' => array(
+ 'DEFAULT' => 'BYR',
+ 'MX' => 'Br',
+ ),
+ 'et' => 'BYR',
+ 'eu' => 'BYR',
+ 'fi' => 'BYR',
+ 'fil' => 'BYR',
+ 'fr' => 'BYR',
+ 'ga' => 'BYR',
+ 'gd' => 'BYR',
+ 'gl' => 'BYR',
+ 'gu' => 'BYR',
+ 'he' => 'BYR',
+ 'hi' => 'BYR',
+ 'hr' => 'BYR',
+ 'hu' => 'BYR',
+ 'hy' => 'BYR',
+ 'id' => 'BYR',
+ 'is' => 'BYR',
+ 'it' => 'BYR',
+ 'ja' => 'BYR',
+ 'ka' => 'BYR',
+ 'km' => 'BYR',
+ 'kn' => 'BYR',
+ 'ko' => 'BYR',
+ 'ky' => 'BYR',
+ 'lo' => 'BYR',
+ 'lt' => 'BYR',
+ 'lv' => 'BYR',
+ 'mk' => 'BYR',
+ 'ml' => 'BYR',
+ 'mn' => 'BYR',
+ 'mr' => 'BYR',
+ 'ms' => 'BYR',
+ 'nb' => 'BYR',
+ 'ne' => 'BYR',
+ 'nl' => 'BYR',
+ 'pa' => 'BYR',
+ 'pl' => 'BYR',
+ 'pt' => 'BYR',
+ 'ro' => 'BYR',
+ 'root' => 'р.',
+ 'ru' => array(
+ 'BY' => 'р.',
+ 'DEFAULT' => 'BYR',
+ ),
+ 'si' => 'BYR',
+ 'sk' => 'BYR',
+ 'sl' => 'BYR',
+ 'sr' => '[BYR]',
+ 'sv' => 'BYR',
+ 'sw' => 'BYR',
+ 'ta' => 'BYR',
+ 'te' => 'BYR',
+ 'th' => 'BYR',
+ 'tr' => 'BYR',
+ 'uk' => 'BYR',
+ 'ur' => 'BYR',
+ 'uz' => 'BYR',
+ 'vi' => 'BYR',
+ 'zh' => 'BYR',
+ ),
+ 'BZD' => array(
+ 'af' => 'BZD',
+ 'am' => 'BZD',
+ 'ar' => 'BZD',
+ 'ast' => 'BZD',
+ 'az' => 'BZD',
+ 'bg' => 'BZD',
+ 'bn' => 'BZD',
+ 'bs' => 'BZD',
+ 'ca' => 'BZD',
+ 'cs' => 'BZD',
+ 'cy' => 'BZD',
+ 'da' => 'BZD',
+ 'de' => 'BZD',
+ 'el' => 'BZD',
+ 'en' => array(
+ 'BZ' => '$',
+ 'GB' => 'BZD',
+ ),
+ 'es' => 'BZD',
+ 'et' => 'BZD',
+ 'eu' => 'BZD',
+ 'fi' => 'BZD',
+ 'fil' => 'BZD',
+ 'fr' => array(
+ 'CA' => 'BZD',
+ 'DEFAULT' => '$BZ',
+ ),
+ 'ga' => 'BZD',
+ 'gd' => 'BZD',
+ 'gl' => 'BZD',
+ 'gu' => 'BZD',
+ 'he' => 'BZD',
+ 'hi' => 'BZD',
+ 'hr' => 'BZD',
+ 'hu' => 'BZD',
+ 'hy' => 'BZD',
+ 'id' => 'BZD',
+ 'is' => 'BZD',
+ 'it' => 'BZD',
+ 'ja' => 'BZD',
+ 'ka' => 'BZD',
+ 'kk' => 'BZD',
+ 'km' => 'BZD',
+ 'kn' => 'BZD',
+ 'ko' => 'BZD',
+ 'ky' => 'BZD',
+ 'lo' => 'BZD',
+ 'lt' => 'BZD',
+ 'lv' => 'BZD',
+ 'mk' => 'BZD',
+ 'ml' => 'BZD',
+ 'mn' => 'BZD',
+ 'mr' => 'BZD',
+ 'ms' => 'BZD',
+ 'nb' => 'BZD',
+ 'ne' => 'BZD',
+ 'nl' => 'BZD',
+ 'pa' => 'BZD',
+ 'pl' => 'BZD',
+ 'pt' => 'BZD',
+ 'ro' => 'BZD',
+ 'root' => '$',
+ 'ru' => 'BZD',
+ 'si' => 'BZD',
+ 'sk' => 'BZD',
+ 'sl' => 'BZD',
+ 'sr' => 'BZD',
+ 'sv' => 'BZ$',
+ 'sw' => 'BZD',
+ 'ta' => 'BZD',
+ 'te' => 'BZD',
+ 'th' => 'BZD',
+ 'tr' => 'BZD',
+ 'uk' => 'BZD',
+ 'ur' => 'BZD',
+ 'uz' => 'BZD',
+ 'vi' => 'BZD',
+ 'zh' => 'BZD',
+ 'zu' => 'BZD',
+ ),
+ 'CAD' => array(
+ 'bg' => 'CAD',
+ 'br' => '$CA',
+ 'bs' => 'CAD',
+ 'ca' => 'CAD',
+ 'en' => array(
+ 'CA' => '$',
+ 'GB' => 'CA$',
+ ),
+ 'es' => array(
+ 'DEFAULT' => 'CA$',
+ 419 => 'CAD',
+ ),
+ 'fa' => '$CA',
+ 'fi' => 'CAD',
+ 'fr' => array(
+ 'CA' => '$',
+ 'DEFAULT' => '$CA',
+ ),
+ 'fy' => 'C$',
+ 'gl' => '$CA',
+ 'hr' => 'CAD',
+ 'hu' => 'CAD',
+ 'is' => 'CAD',
+ 'kk' => 'КД$',
+ 'ky' => 'CAD',
+ 'lt' => 'CAD',
+ 'ms' => 'CAD',
+ 'nb' => 'CAD',
+ 'nl' => 'C$',
+ 'pl' => 'CAD',
+ 'ro' => 'CAD',
+ 'root' => 'CA$',
+ 'sk' => 'CAD',
+ 'sl' => 'CAD',
+ 'sv' => 'CAN$',
+ 'uk' => 'CAD',
+ ),
+ 'CDF' => array(
+ 'en' => array(
+ 'GB' => 'CDF',
+ ),
+ 'fr' => array(
+ 'CD' => 'FC',
+ 'DEFAULT' => 'CDF',
+ ),
+ 'ln' => 'FC',
+ 'lu' => 'FC',
+ 'swc' => 'FC',
+ ),
+ 'CHE' => array(
+ 'en' => array(
+ 'GB' => 'CHE',
+ ),
+ ),
+ 'CHF' => array(
+ 'de' => array(
+ 'CH' => 'CHF',
+ 'DEFAULT' => 'CHF',
+ ),
+ 'en' => array(
+ 'GB' => 'CHF',
+ ),
+ ),
+ 'CHW' => array(
+ 'en' => array(
+ 'GB' => 'CHW',
+ ),
+ ),
+ 'CLE' => array(
+ 'es' => array(
+ 'MX' => 'CLE',
+ ),
+ ),
+ 'CLF' => array(
+ 'es' => array(
+ 'MX' => 'CLF',
+ ),
+ ),
+ 'CLP' => array(
+ 'af' => 'CLP',
+ 'am' => 'CLP',
+ 'ar' => 'CLP',
+ 'ast' => 'CLP',
+ 'az' => 'CLP',
+ 'bg' => 'CLP',
+ 'bn' => 'CLP',
+ 'bs' => 'CLP',
+ 'ca' => 'CLP',
+ 'cs' => 'CLP',
+ 'da' => 'CLP',
+ 'de' => 'CLP',
+ 'el' => 'CLP',
+ 'en' => array(
+ 'GB' => 'CLP',
+ ),
+ 'es' => array(
+ 'CL' => '$',
+ 'DEFAULT' => 'CLP',
+ ),
+ 'et' => 'CLP',
+ 'eu' => 'CLP',
+ 'fi' => 'CLP',
+ 'fil' => 'CLP',
+ 'fr' => array(
+ 'CA' => 'CLP',
+ 'DEFAULT' => '$CL',
+ ),
+ 'ga' => 'CLP',
+ 'gd' => 'CLP',
+ 'gl' => 'CLP',
+ 'gu' => 'CLP',
+ 'he' => 'CLP',
+ 'hi' => 'CLP',
+ 'hr' => 'CLP',
+ 'hu' => 'CLP',
+ 'hy' => 'CLP',
+ 'id' => 'CLP',
+ 'is' => 'CLP',
+ 'it' => 'CLP',
+ 'ja' => 'CLP',
+ 'ka' => 'CLP',
+ 'km' => 'CLP',
+ 'kn' => 'CLP',
+ 'ko' => 'CLP',
+ 'ky' => 'CLP',
+ 'lo' => 'CLP',
+ 'lt' => 'CLP',
+ 'lv' => 'CLP',
+ 'mk' => 'CLP',
+ 'ml' => 'CLP',
+ 'mn' => 'CLP',
+ 'mr' => 'CLP',
+ 'ms' => 'CLP',
+ 'nb' => 'CLP',
+ 'ne' => 'CLP',
+ 'nl' => 'CLP',
+ 'pa' => 'CLP',
+ 'pl' => 'CLP',
+ 'pt' => 'CLP',
+ 'ro' => 'CLP',
+ 'root' => '$',
+ 'ru' => 'CLP',
+ 'si' => 'CLP',
+ 'sk' => 'CLP',
+ 'sl' => 'CLP',
+ 'sr' => 'CLP',
+ 'sv' => 'CLP',
+ 'sw' => 'CLP',
+ 'ta' => 'CLP',
+ 'te' => 'CLP',
+ 'th' => 'CLP',
+ 'tr' => 'CLP',
+ 'uk' => 'CLP',
+ 'ur' => 'CLP',
+ 'uz' => 'CLP',
+ 'vi' => 'CLP',
+ 'zh' => 'CLP',
+ ),
+ 'CNY' => array(
+ 'ar' => 'ي.ص',
+ 'bg' => 'CNY',
+ 'bo' => array(
+ 'DEFAULT' => '¥',
+ 'IN' => 'CN¥',
+ ),
+ 'br' => '¥',
+ 'bs' => 'CNY',
+ 'ca' => '¥',
+ 'en' => array(
+ 'GB' => 'CN¥',
+ ),
+ 'es' => array(
+ 'DEFAULT' => 'CNY',
+ 'MX' => 'CN¥',
+ ),
+ 'fa' => '¥CN',
+ 'fi' => 'CNY',
+ 'fr' => array(
+ 'CA' => 'CN¥',
+ 'DEFAULT' => 'CNY',
+ ),
+ 'hr' => 'CNY',
+ 'hu' => 'CNY',
+ 'ii' => '¥',
+ 'ja' => '元',
+ 'ka' => 'CNY',
+ 'lt' => 'CNY',
+ 'mk' => 'CNY',
+ 'nb' => 'CNY',
+ 'pl' => 'CNY',
+ 'ro' => 'CNY',
+ 'root' => 'CN¥',
+ 'sk' => 'CNY',
+ 'sv' => 'CNY',
+ 'ug' => '¥',
+ 'uk' => 'CNY',
+ 'zh' => array(
+ 'DEFAULT' => 'CN¥',
+ 'HK' => 'CN¥',
+ 'MO' => 'CN¥',
+ 'SG' => 'CN¥',
+ ),
+ ),
+ 'COP' => array(
+ 'af' => 'COP',
+ 'am' => 'COP',
+ 'ar' => 'COP',
+ 'ast' => 'COP',
+ 'az' => 'COP',
+ 'bg' => 'COP',
+ 'bn' => 'COP',
+ 'bs' => 'COP',
+ 'ca' => 'COP',
+ 'cs' => 'COP',
+ 'da' => 'COP',
+ 'de' => 'COP',
+ 'el' => 'COP',
+ 'en' => array(
+ 'GB' => 'COP',
+ ),
+ 'es' => array(
+ 'CO' => '$',
+ 'DEFAULT' => 'COP',
+ ),
+ 'et' => 'COP',
+ 'eu' => 'COP',
+ 'fi' => 'COP',
+ 'fil' => 'COP',
+ 'fr' => array(
+ 'CA' => 'COP',
+ 'DEFAULT' => '$CO',
+ ),
+ 'ga' => 'COP',
+ 'gd' => 'COP',
+ 'gl' => 'COP',
+ 'gu' => 'COP',
+ 'he' => 'COP',
+ 'hi' => 'COP',
+ 'hr' => 'COP',
+ 'hu' => 'COP',
+ 'hy' => 'COP',
+ 'id' => 'COP',
+ 'is' => 'COP',
+ 'it' => 'COP',
+ 'ja' => 'COP',
+ 'ka' => 'COP',
+ 'km' => 'COP',
+ 'kn' => 'COP',
+ 'ko' => 'COP',
+ 'ky' => 'COP',
+ 'lo' => 'COP',
+ 'lt' => 'COP',
+ 'lv' => 'COP',
+ 'mk' => 'COP',
+ 'ml' => 'COP',
+ 'mn' => 'COP',
+ 'mr' => 'COP',
+ 'ms' => 'COP',
+ 'nb' => 'COP',
+ 'ne' => 'COP',
+ 'nl' => 'COP',
+ 'pa' => 'COP',
+ 'pl' => 'COP',
+ 'pt' => 'COP',
+ 'ro' => 'COP',
+ 'root' => '$',
+ 'ru' => 'COP',
+ 'si' => 'COP',
+ 'sk' => 'COP',
+ 'sl' => 'COP',
+ 'sr' => 'COP',
+ 'sv' => 'COP',
+ 'sw' => 'COP',
+ 'ta' => 'COP',
+ 'te' => 'COP',
+ 'th' => 'COP',
+ 'tr' => 'COP',
+ 'uk' => 'COP',
+ 'ur' => 'COP',
+ 'uz' => 'COP',
+ 'vi' => 'COP',
+ 'zh' => 'COP',
+ ),
+ 'COU' => array(
+ 'es' => array(
+ 'MX' => 'COU',
+ ),
+ ),
+ 'CRC' => array(
+ 'af' => 'CRC',
+ 'am' => 'CRC',
+ 'ar' => 'CRC',
+ 'ast' => 'CRC',
+ 'az' => 'CRC',
+ 'bg' => 'CRC',
+ 'bn' => 'CRC',
+ 'bs' => 'CRC',
+ 'ca' => 'CRC',
+ 'cs' => 'CRC',
+ 'cy' => 'CRC',
+ 'da' => 'CRC',
+ 'de' => 'CRC',
+ 'el' => 'CRC',
+ 'en' => array(
+ 'GB' => 'CRC',
+ ),
+ 'es' => array(
+ 'CR' => '₡',
+ 'DEFAULT' => 'CRC',
+ ),
+ 'et' => 'CRC',
+ 'eu' => 'CRC',
+ 'fi' => 'CRC',
+ 'fil' => 'CRC',
+ 'fr' => 'CRC',
+ 'ga' => 'CRC',
+ 'gd' => 'CRC',
+ 'gl' => 'CRC',
+ 'gu' => 'CRC',
+ 'he' => 'CRC',
+ 'hi' => 'CRC',
+ 'hr' => 'CRC',
+ 'hu' => 'CRC',
+ 'hy' => 'CRC',
+ 'id' => 'CRC',
+ 'is' => 'CRC',
+ 'it' => 'CRC',
+ 'ja' => 'CRC',
+ 'ka' => 'CRC',
+ 'kk' => 'CRC',
+ 'km' => 'CRC',
+ 'kn' => 'CRC',
+ 'ko' => 'CRC',
+ 'lo' => 'CRC',
+ 'lt' => 'CRC',
+ 'lv' => 'CRC',
+ 'mk' => 'CRC',
+ 'ml' => 'CRC',
+ 'mn' => 'CRC',
+ 'mr' => 'CRC',
+ 'ms' => 'CRC',
+ 'nb' => 'CRC',
+ 'ne' => 'CRC',
+ 'nl' => 'CRC',
+ 'pa' => 'CRC',
+ 'pl' => 'CRC',
+ 'pt' => 'CRC',
+ 'ro' => 'CRC',
+ 'root' => '₡',
+ 'ru' => 'CRC',
+ 'si' => 'CRC',
+ 'sk' => 'CRC',
+ 'sl' => 'CRC',
+ 'sr' => 'CRC',
+ 'sv' => 'CRC',
+ 'sw' => 'CRC',
+ 'ta' => 'CRC',
+ 'te' => 'CRC',
+ 'th' => 'CRC',
+ 'tr' => 'CRC',
+ 'uk' => 'CRC',
+ 'ur' => 'CRC',
+ 'uz' => 'CRC',
+ 'vi' => 'CRC',
+ 'zh' => 'CRC',
+ 'zu' => 'CRC',
+ ),
+ 'CSD' => array(
+ 'en' => array(
+ 'GB' => 'CSD',
+ ),
+ ),
+ 'CSK' => array(
+ 'cs' => 'Kčs',
+ 'en' => array(
+ 'GB' => 'CSK',
+ ),
+ ),
+ 'CUC' => array(
+ 'af' => 'CUC',
+ 'am' => 'CUC',
+ 'ar' => 'CUC',
+ 'ast' => 'CUC',
+ 'az' => 'CUC',
+ 'bg' => 'CUC',
+ 'bn' => 'CUC',
+ 'bs' => 'CUC',
+ 'ca' => 'CUC',
+ 'cs' => 'CUC',
+ 'da' => 'CUC',
+ 'de' => 'CUC',
+ 'el' => 'CUC',
+ 'en' => array(
+ 'GB' => 'CUC',
+ ),
+ 'es' => 'CUC',
+ 'et' => 'CUC',
+ 'eu' => 'CUC',
+ 'fi' => 'CUC',
+ 'fil' => 'CUC',
+ 'fr' => 'CUC',
+ 'ga' => 'CUC',
+ 'gd' => 'CUC',
+ 'gl' => 'CUC',
+ 'gu' => 'CUC',
+ 'he' => 'CUC',
+ 'hi' => 'CUC',
+ 'hr' => 'CUC',
+ 'hu' => 'CUC',
+ 'hy' => 'CUC',
+ 'id' => 'CUC',
+ 'is' => 'CUC',
+ 'it' => 'CUC',
+ 'ja' => 'CUC',
+ 'ka' => 'CUC',
+ 'kk' => 'CUC',
+ 'km' => 'CUC',
+ 'kn' => 'CUC',
+ 'ko' => 'CUC',
+ 'lo' => 'CUC',
+ 'lt' => 'CUC',
+ 'lv' => 'CUC',
+ 'mk' => 'CUC',
+ 'ml' => 'CUC',
+ 'mn' => 'CUC',
+ 'mr' => 'CUC',
+ 'ms' => 'CUC',
+ 'nb' => 'CUC',
+ 'ne' => 'CUC',
+ 'nl' => 'CUC',
+ 'pa' => 'CUC',
+ 'pl' => 'CUC',
+ 'pt' => 'CUC',
+ 'ro' => 'CUC',
+ 'root' => '$',
+ 'ru' => 'CUC',
+ 'si' => 'CUC',
+ 'sk' => 'CUC',
+ 'sl' => 'CUC',
+ 'sr' => 'CUC',
+ 'sv' => 'CUC',
+ 'sw' => 'CUC',
+ 'ta' => 'CUC',
+ 'te' => 'CUC',
+ 'th' => 'CUC',
+ 'tr' => 'CUC',
+ 'uk' => 'CUC',
+ 'ur' => 'CUC',
+ 'uz' => 'CUC',
+ 'vi' => 'CUC',
+ 'zh' => 'CUC',
+ 'zu' => 'CUC',
+ ),
+ 'CUP' => array(
+ 'af' => 'CUP',
+ 'am' => 'CUP',
+ 'ar' => 'CUP',
+ 'ast' => 'CUP',
+ 'az' => 'CUP',
+ 'bg' => 'CUP',
+ 'bn' => 'CUP',
+ 'bs' => 'CUP',
+ 'ca' => 'CUP',
+ 'cs' => 'CUP',
+ 'da' => 'CUP',
+ 'de' => 'CUP',
+ 'el' => 'CUP',
+ 'en' => array(
+ 'GB' => 'CUP',
+ ),
+ 'es' => array(
+ 'CU' => '$',
+ 'DEFAULT' => 'CUP',
+ ),
+ 'et' => 'CUP',
+ 'eu' => 'CUP',
+ 'fi' => 'CUP',
+ 'fil' => 'CUP',
+ 'fr' => 'CUP',
+ 'ga' => 'CUP',
+ 'gd' => 'CUP',
+ 'gl' => 'CUP',
+ 'gu' => 'CUP',
+ 'he' => 'CUP',
+ 'hi' => 'CUP',
+ 'hr' => 'CUP',
+ 'hu' => 'CUP',
+ 'hy' => 'CUP',
+ 'id' => 'CUP',
+ 'is' => 'CUP',
+ 'it' => 'CUP',
+ 'ja' => 'CUP',
+ 'ka' => 'CUP',
+ 'kk' => 'CUP',
+ 'km' => 'CUP',
+ 'kn' => 'CUP',
+ 'ko' => 'CUP',
+ 'lo' => 'CUP',
+ 'lt' => 'CUP',
+ 'lv' => 'CUP',
+ 'mk' => 'CUP',
+ 'ml' => 'CUP',
+ 'mn' => 'CUP',
+ 'mr' => 'CUP',
+ 'ms' => 'CUP',
+ 'nb' => 'CUP',
+ 'ne' => 'CUP',
+ 'nl' => 'CUP',
+ 'pa' => 'CUP',
+ 'pl' => 'CUP',
+ 'pt' => 'CUP',
+ 'ro' => 'CUP',
+ 'root' => '$',
+ 'ru' => 'CUP',
+ 'si' => 'CUP',
+ 'sk' => 'CUP',
+ 'sl' => 'CUP',
+ 'sr' => 'CUP',
+ 'sv' => 'CUP',
+ 'sw' => 'CUP',
+ 'ta' => 'CUP',
+ 'te' => 'CUP',
+ 'th' => 'CUP',
+ 'tr' => 'CUP',
+ 'uk' => 'CUP',
+ 'ur' => 'CUP',
+ 'uz' => 'CUP',
+ 'vi' => 'CUP',
+ 'zh' => 'CUP',
+ 'zu' => 'CUP',
+ ),
+ 'CVE' => array(
+ 'en' => array(
+ 'GB' => 'CVE',
+ ),
+ 'kea' => '​',
+ 'pt' => array(
+ 'CV' => '​',
+ 'DEFAULT' => 'CVE',
+ ),
+ ),
+ 'CYP' => array(
+ 'en' => array(
+ 'GB' => 'CYP',
+ ),
+ 'fr' => '£CY',
+ ),
+ 'CZK' => array(
+ 'af' => 'CZK',
+ 'am' => 'CZK',
+ 'ar' => 'CZK',
+ 'ast' => 'CZK',
+ 'az' => 'CZK',
+ 'bg' => 'CZK',
+ 'bn' => 'CZK',
+ 'bs' => 'Кч',
+ 'ca' => 'CZK',
+ 'da' => 'CZK',
+ 'de' => 'CZK',
+ 'el' => 'CZK',
+ 'en' => array(
+ 'GB' => 'CZK',
+ ),
+ 'es' => 'CZK',
+ 'et' => 'CZK',
+ 'eu' => 'CZK',
+ 'fi' => 'CZK',
+ 'fil' => 'CZK',
+ 'fr' => 'CZK',
+ 'ga' => 'CZK',
+ 'gd' => 'CZK',
+ 'gl' => 'CZK',
+ 'gu' => 'CZK',
+ 'he' => 'CZK',
+ 'hi' => 'CZK',
+ 'hr' => 'CZK',
+ 'hu' => 'CZK',
+ 'hy' => 'CZK',
+ 'id' => 'CZK',
+ 'is' => 'CZK',
+ 'it' => 'CZK',
+ 'ja' => 'CZK',
+ 'ka' => 'CZK',
+ 'kea' => 'CZK',
+ 'km' => 'CZK',
+ 'kn' => 'CZK',
+ 'ko' => 'CZK',
+ 'ky' => 'CZK',
+ 'lo' => 'CZK',
+ 'lt' => 'CZK',
+ 'lv' => 'CZK',
+ 'mk' => 'CZK',
+ 'ml' => 'CZK',
+ 'mn' => 'CZK',
+ 'mr' => 'CZK',
+ 'ms' => 'CZK',
+ 'nb' => 'CZK',
+ 'ne' => 'CZK',
+ 'nl' => 'CZK',
+ 'pa' => 'CZK',
+ 'pl' => 'CZK',
+ 'pt' => 'CZK',
+ 'ro' => 'CZK',
+ 'root' => 'Kč',
+ 'ru' => 'CZK',
+ 'si' => 'CZK',
+ 'sk' => 'CZK',
+ 'sl' => 'CZK',
+ 'sr' => 'CZK',
+ 'sv' => 'CZK',
+ 'sw' => 'CZK',
+ 'ta' => 'CZK',
+ 'te' => 'CZK',
+ 'th' => 'CZK',
+ 'tr' => 'CZK',
+ 'uk' => 'CZK',
+ 'ur' => 'CZK',
+ 'uz' => 'CZK',
+ 'vi' => 'CZK',
+ 'zh' => 'CZK',
+ ),
+ 'DDM' => array(
+ 'en' => array(
+ 'GB' => 'DDM',
+ ),
+ ),
+ 'DEM' => array(
+ 'de' => 'DM',
+ 'en' => array(
+ 'GB' => 'DEM',
+ ),
+ ),
+ 'DJF' => array(
+ 'aa' => array(
+ 'DJ' => 'Fdj',
+ ),
+ 'ar' => array(
+ 'DEFAULT' => 'DJF',
+ 'DJ' => 'Fdj',
+ ),
+ 'en' => array(
+ 'GB' => 'DJF',
+ ),
+ 'fr' => array(
+ 'DEFAULT' => 'DJF',
+ 'DJ' => 'Fdj',
+ ),
+ 'so' => array(
+ 'DJ' => 'Fdj',
+ ),
+ ),
+ 'DKK' => array(
+ 'af' => 'DKK',
+ 'am' => 'DKK',
+ 'ar' => 'DKK',
+ 'ast' => 'DKK',
+ 'az' => 'DKK',
+ 'bg' => 'DKK',
+ 'bn' => 'DKK',
+ 'bs' => 'DKK',
+ 'ca' => 'DKK',
+ 'cs' => 'DKK',
+ 'da' => 'kr.',
+ 'de' => 'DKK',
+ 'el' => 'DKK',
+ 'en' => array(
+ 'GB' => 'DKK',
+ ),
+ 'eo' => 'DKK',
+ 'es' => 'DKK',
+ 'et' => 'DKK',
+ 'eu' => 'DKK',
+ 'fi' => 'DKK',
+ 'fil' => 'DKK',
+ 'fr' => 'DKK',
+ 'ga' => 'DKK',
+ 'gd' => 'DKK',
+ 'gl' => 'DKK',
+ 'gu' => 'DKK',
+ 'he' => 'DKK',
+ 'hi' => 'DKK',
+ 'hr' => 'DKK',
+ 'hu' => 'DKK',
+ 'hy' => 'DKK',
+ 'id' => 'DKK',
+ 'is' => 'DKK',
+ 'it' => 'DKK',
+ 'ja' => 'DKK',
+ 'ka' => 'DKK',
+ 'kea' => 'DKK',
+ 'kl' => 'kr.',
+ 'km' => 'DKK',
+ 'kn' => 'DKK',
+ 'ko' => 'DKK',
+ 'ky' => 'DKK',
+ 'lo' => 'DKK',
+ 'lt' => 'DKK',
+ 'lv' => 'DKK',
+ 'mk' => 'DKK',
+ 'ml' => 'DKK',
+ 'mn' => 'DKK',
+ 'mr' => 'DKK',
+ 'ms' => 'DKK',
+ 'nb' => 'DKK',
+ 'ne' => 'DKK',
+ 'nl' => 'DKK',
+ 'pa' => 'DKK',
+ 'pl' => 'DKK',
+ 'pt' => 'DKK',
+ 'rm' => 'DKK',
+ 'ro' => 'DKK',
+ 'root' => 'kr',
+ 'ru' => 'DKK',
+ 'se' => 'Dkr',
+ 'si' => 'DKK',
+ 'sk' => 'DKK',
+ 'sl' => 'DKK',
+ 'sr' => 'DKK',
+ 'sv' => 'Dkr',
+ 'sw' => 'DKK',
+ 'ta' => 'DKK',
+ 'te' => 'DKK',
+ 'th' => 'DKK',
+ 'tr' => 'DKK',
+ 'uk' => 'DKK',
+ 'ur' => 'DKK',
+ 'uz' => 'DKK',
+ 'vi' => 'DKK',
+ 'zh' => 'DKK',
+ 'zu' => 'DKK',
+ ),
+ 'DOP' => array(
+ 'af' => 'DOP',
+ 'am' => 'DOP',
+ 'ar' => 'DOP',
+ 'ast' => 'DOP',
+ 'az' => 'DOP',
+ 'bg' => 'DOP',
+ 'bn' => 'DOP',
+ 'bs' => 'DOP',
+ 'ca' => 'DOP',
+ 'cs' => 'DOP',
+ 'da' => 'DOP',
+ 'de' => 'DOP',
+ 'el' => 'DOP',
+ 'en' => array(
+ 'GB' => 'DOP',
+ ),
+ 'es' => array(
+ 'DEFAULT' => 'DOP',
+ 'DO' => '$',
+ 'MX' => 'RD$',
+ ),
+ 'et' => 'DOP',
+ 'eu' => 'DOP',
+ 'fi' => 'DOP',
+ 'fil' => 'DOP',
+ 'fr' => 'DOP',
+ 'ga' => 'DOP',
+ 'gd' => 'DOP',
+ 'gl' => 'DOP',
+ 'gu' => 'DOP',
+ 'he' => 'DOP',
+ 'hi' => 'DOP',
+ 'hr' => 'DOP',
+ 'hu' => 'DOP',
+ 'hy' => 'DOP',
+ 'id' => 'DOP',
+ 'is' => 'DOP',
+ 'it' => 'DOP',
+ 'ja' => 'DOP',
+ 'ka' => 'DOP',
+ 'kk' => 'DOP',
+ 'km' => 'DOP',
+ 'kn' => 'DOP',
+ 'ko' => 'DOP',
+ 'lo' => 'DOP',
+ 'lt' => 'DOP',
+ 'lv' => 'DOP',
+ 'mk' => 'DOP',
+ 'ml' => 'DOP',
+ 'mn' => 'DOP',
+ 'mr' => 'DOP',
+ 'ms' => 'DOP',
+ 'nb' => 'DOP',
+ 'ne' => 'DOP',
+ 'nl' => 'DOP',
+ 'pa' => 'DOP',
+ 'pl' => 'DOP',
+ 'pt' => 'DOP',
+ 'ro' => 'DOP',
+ 'root' => '$',
+ 'ru' => 'DOP',
+ 'si' => 'DOP',
+ 'sk' => 'DOP',
+ 'sl' => 'DOP',
+ 'sr' => 'DOP',
+ 'sv' => 'RD$',
+ 'sw' => 'DOP',
+ 'ta' => 'DOP',
+ 'te' => 'DOP',
+ 'th' => 'DOP',
+ 'tr' => 'DOP',
+ 'uk' => 'DOP',
+ 'ur' => 'DOP',
+ 'uz' => 'DOP',
+ 'vi' => 'DOP',
+ 'zh' => 'DOP',
+ 'zu' => 'DOP',
+ ),
+ 'DZD' => array(
+ 'ar' => 'د.ج.‏',
+ 'en' => array(
+ 'GB' => 'DZD',
+ ),
+ 'fr' => array(
+ 'DEFAULT' => 'DZD',
+ 'DZ' => 'DA',
+ ),
+ 'kab' => 'DA',
+ ),
+ 'ECS' => array(
+ 'es' => array(
+ 'MX' => 'ECS',
+ ),
+ ),
+ 'ECV' => array(
+ 'es' => array(
+ 'MX' => 'ECV',
+ ),
+ ),
+ 'EEK' => array(
+ 'en' => array(
+ 'GB' => 'EEK',
+ ),
+ 'et' => 'kr',
+ 'sv' => 'Ekr',
+ ),
+ 'EGP' => array(
+ 'af' => 'EGP',
+ 'am' => 'EGP',
+ 'ar' => 'ج.م.‏',
+ 'ast' => 'EGP',
+ 'az' => 'EGP',
+ 'bg' => 'EGP',
+ 'bn' => 'EGP',
+ 'bs' => 'EGP',
+ 'ca' => 'EGP',
+ 'cs' => 'EGP',
+ 'da' => 'EGP',
+ 'de' => 'EGP',
+ 'el' => 'EGP',
+ 'en' => array(
+ 'GB' => 'EGP',
+ ),
+ 'es' => 'EGP',
+ 'et' => 'EGP',
+ 'eu' => 'EGP',
+ 'fi' => 'EGP',
+ 'fr' => 'EGP',
+ 'ga' => 'EGP',
+ 'gd' => 'EGP',
+ 'gl' => 'EGP',
+ 'gu' => 'EGP',
+ 'he' => 'EGP',
+ 'hi' => 'EGP',
+ 'hr' => 'EGP',
+ 'hu' => 'EGP',
+ 'hy' => 'EGP',
+ 'id' => 'EGP',
+ 'is' => 'EGP',
+ 'it' => 'EGP',
+ 'ja' => 'EGP',
+ 'ka' => 'EGP',
+ 'kea' => 'EGP',
+ 'kk' => 'EGP',
+ 'km' => 'EGP',
+ 'kn' => 'EGP',
+ 'ko' => 'EGP',
+ 'lo' => 'EGP',
+ 'lt' => 'EGP',
+ 'lv' => 'EGP',
+ 'mk' => 'EGP',
+ 'ml' => 'EGP',
+ 'mn' => 'EGP',
+ 'mr' => 'EGP',
+ 'ms' => 'EGP',
+ 'nb' => 'EGP',
+ 'ne' => 'EGP',
+ 'nl' => 'EGP',
+ 'pa' => 'EGP',
+ 'pl' => 'EGP',
+ 'pt' => 'EGP',
+ 'ro' => 'EGP',
+ 'root' => 'E£',
+ 'ru' => 'EGP',
+ 'si' => 'EGP',
+ 'sk' => 'EGP',
+ 'sl' => 'EGP',
+ 'sr' => 'EGP',
+ 'sv' => 'EG£',
+ 'sw' => 'EGP',
+ 'ta' => 'EGP',
+ 'te' => 'EGP',
+ 'th' => 'EGP',
+ 'tr' => 'EGP',
+ 'uk' => 'EGP',
+ 'ur' => 'EGP',
+ 'uz' => 'EGP',
+ 'vi' => 'EGP',
+ 'zh' => 'EGP',
+ ),
+ 'ERN' => array(
+ 'aa' => array(
+ 'ER' => 'Nfk',
+ ),
+ 'ar' => array(
+ 'DEFAULT' => 'ERN',
+ 'ER' => 'Nfk',
+ ),
+ 'byn' => 'Nfk',
+ 'en' => array(
+ 'ER' => 'Nfk',
+ 'GB' => 'ERN',
+ ),
+ 'ssy' => 'Nfk',
+ 'ti' => array(
+ 'ER' => 'Nfk',
+ ),
+ 'tig' => 'Nfk',
+ ),
+ 'ESA' => array(
+ 'en' => array(
+ 'GB' => 'ESA',
+ ),
+ ),
+ 'ESB' => array(
+ 'en' => array(
+ 'GB' => 'ESB',
+ ),
+ ),
+ 'ESP' => array(
+ 'cs' => 'ESP',
+ 'de' => 'ESP',
+ 'en' => array(
+ 'GB' => 'ESP',
+ ),
+ 'fi' => 'ESP',
+ 'ga' => 'ESP',
+ 'gd' => 'ESP',
+ 'hr' => 'ESP',
+ 'id' => 'ESP',
+ 'ja' => 'ESP',
+ 'nb' => 'ESP',
+ 'nl' => 'ESP',
+ 'root' => '₧',
+ 'sv' => 'ESP',
+ 'th' => 'ESP',
+ 'tr' => 'ESP',
+ 'vi' => 'ESP',
+ 'zh' => 'ESP',
+ ),
+ 'ETB' => array(
+ 'aa' => 'Br',
+ 'am' => 'ብር',
+ 'en' => array(
+ 'GB' => 'ETB',
+ ),
+ 'om' => 'Br',
+ 'so' => array(
+ 'ET' => 'Br',
+ ),
+ 'ti' => 'Br',
+ 'wal' => 'Br',
+ ),
+ 'EUR' => array(
+ 'en' => array(
+ 'GB' => '€',
+ ),
+ 'es' => array(
+ 419 => 'EUR',
+ ),
+ 'hr' => 'EUR',
+ 'hu' => 'EUR',
+ 'is' => 'EUR',
+ 'lt' => 'EUR',
+ 'ro' => 'EUR',
+ 'root' => '€',
+ 'uk' => 'EUR',
+ ),
+ 'FIM' => array(
+ 'en' => array(
+ 'GB' => 'FIM',
+ ),
+ 'fi' => 'mk',
+ ),
+ 'FJD' => array(
+ 'af' => 'FJD',
+ 'am' => 'FJD',
+ 'ar' => 'FJD',
+ 'az' => 'FJD',
+ 'bg' => 'FJD',
+ 'bn' => 'FJD',
+ 'bs' => 'FJD',
+ 'ca' => 'FJD',
+ 'cs' => 'FJD',
+ 'da' => 'FJD',
+ 'de' => 'FJD',
+ 'el' => 'FJD',
+ 'en' => array(
+ 'FJ' => '$',
+ 'GB' => 'FJD',
+ ),
+ 'es' => 'FJD',
+ 'et' => 'FJD',
+ 'eu' => 'FJD',
+ 'fi' => 'FJD',
+ 'fr' => array(
+ 'CA' => 'FJD',
+ 'DEFAULT' => '$FJ',
+ ),
+ 'fy' => 'FJ$',
+ 'ga' => 'FJD',
+ 'gd' => 'FJD',
+ 'gl' => 'FJD',
+ 'gu' => 'FJD',
+ 'he' => 'FJD',
+ 'hi' => 'FJD',
+ 'hr' => 'FJD',
+ 'hu' => 'FJD',
+ 'hy' => 'FJD',
+ 'id' => 'FJD',
+ 'is' => 'FJD',
+ 'it' => 'FJD',
+ 'ja' => 'FJD',
+ 'ka' => 'FJD',
+ 'kk' => 'FJD',
+ 'km' => 'FJD',
+ 'kn' => 'FJD',
+ 'ko' => 'FJD',
+ 'lt' => 'FJD',
+ 'lv' => 'FJD',
+ 'mk' => 'FJD',
+ 'ml' => 'FJD',
+ 'mn' => 'FJD',
+ 'mr' => 'FJD',
+ 'ms' => 'FJD',
+ 'nb' => 'FJD',
+ 'ne' => 'FJD',
+ 'nl' => 'FJ$',
+ 'pa' => 'FJD',
+ 'pl' => 'FJD',
+ 'pt' => 'FJD',
+ 'ro' => 'FJD',
+ 'root' => '$',
+ 'ru' => 'FJD',
+ 'si' => 'FJD',
+ 'sk' => 'FJD',
+ 'sl' => 'FJD',
+ 'sr' => 'FJD',
+ 'sv' => 'FJD',
+ 'sw' => 'FJD',
+ 'ta' => 'FJD',
+ 'te' => 'FJD',
+ 'th' => 'FJD',
+ 'to' => 'FJD',
+ 'tr' => 'FJD',
+ 'uk' => 'FJD',
+ 'ur' => 'FJD',
+ 'uz' => 'FJD',
+ 'vi' => 'FJD',
+ 'zh' => 'FJD',
+ ),
+ 'FKP' => array(
+ 'af' => 'FKP',
+ 'am' => 'FKP',
+ 'ar' => 'FKP',
+ 'ast' => 'FKP',
+ 'az' => 'FKP',
+ 'bg' => 'FKP',
+ 'bn' => 'FKP',
+ 'bs' => 'FKP',
+ 'ca' => 'FKP',
+ 'cs' => 'FKP',
+ 'da' => 'FKP',
+ 'de' => 'FKP',
+ 'el' => 'FKP',
+ 'en' => array(
+ 'FK' => '£',
+ 'GB' => 'FKP',
+ ),
+ 'es' => 'FKP',
+ 'et' => 'FKP',
+ 'eu' => 'FKP',
+ 'fi' => 'FKP',
+ 'fil' => 'FKP',
+ 'fr' => array(
+ 'CA' => 'FKP',
+ 'DEFAULT' => '£FK',
+ ),
+ 'ga' => 'FKP',
+ 'gd' => 'FKP',
+ 'gl' => 'FKP',
+ 'gu' => 'FKP',
+ 'he' => 'FKP',
+ 'hi' => 'FKP',
+ 'hr' => 'FKP',
+ 'hu' => 'FKP',
+ 'hy' => 'FKP',
+ 'id' => 'FKP',
+ 'is' => 'FKP',
+ 'it' => 'FKP',
+ 'ja' => 'FKP',
+ 'ka' => 'FKP',
+ 'kea' => 'FKP',
+ 'km' => 'FKP',
+ 'kn' => 'FKP',
+ 'ko' => 'FKP',
+ 'ky' => 'FKP',
+ 'lo' => 'FKP',
+ 'lt' => 'FKP',
+ 'lv' => 'FKP',
+ 'mk' => 'FKP',
+ 'ml' => 'FKP',
+ 'mn' => 'FKP',
+ 'mr' => 'FKP',
+ 'ms' => 'FKP',
+ 'nb' => 'FKP',
+ 'ne' => 'FKP',
+ 'nl' => 'FKP',
+ 'pa' => 'FKP',
+ 'pl' => 'FKP',
+ 'pt' => 'FKP',
+ 'ro' => 'FKP',
+ 'root' => '£',
+ 'ru' => 'FKP',
+ 'si' => 'FKP',
+ 'sk' => 'FKP',
+ 'sl' => 'FKP',
+ 'sr' => 'FKP',
+ 'sv' => 'FKP',
+ 'sw' => 'FKP',
+ 'ta' => 'FKP',
+ 'te' => 'FKP',
+ 'th' => 'FKP',
+ 'tr' => 'FKP',
+ 'uk' => 'FKP',
+ 'ur' => 'FKP',
+ 'uz' => 'FKP',
+ 'vi' => 'FKP',
+ 'zh' => 'FKP',
+ ),
+ 'FRF' => array(
+ 'ca' => array(
+ 'DEFAULT' => 'FRF',
+ 'FR' => 'F',
+ ),
+ 'en' => array(
+ 'GB' => 'FRF',
+ ),
+ 'fr' => array(
+ 'DEFAULT' => 'F',
+ 'LU' => 'FRF',
+ ),
+ ),
+ 'GBP' => array(
+ 'ar' => array(
+ 'DEFAULT' => '£',
+ 'SS' => 'GB£',
+ ),
+ 'bg' => 'GBP',
+ 'br' => '£ RU',
+ 'bs' => 'GBP',
+ 'en' => array(
+ 'FK' => 'GB£',
+ 'GB' => '£',
+ 'GI' => 'GB£',
+ 'MT' => 'GB£',
+ 'SH' => 'GB£',
+ 'SS' => 'GB£',
+ ),
+ 'es' => 'GBP',
+ 'fr' => array(
+ 'CA' => '£',
+ 'DEFAULT' => '£GB',
+ ),
+ 'hr' => 'GBP',
+ 'hu' => 'GBP',
+ 'is' => 'GBP',
+ 'ky' => 'GBP',
+ 'lt' => 'GBP',
+ 'mk' => 'GBP',
+ 'pl' => 'GBP',
+ 'ro' => 'GBP',
+ 'root' => '£',
+ 'sk' => 'GBP',
+ 'sv' => 'GBP',
+ 'uk' => 'GBP',
+ ),
+ 'GEK' => array(
+ 'en' => array(
+ 'GB' => 'GEK',
+ ),
+ ),
+ 'GEL' => array(
+ 'en' => array(
+ 'GB' => 'GEL',
+ ),
+ ),
+ 'GHS' => array(
+ 'ak' => 'GH₵',
+ 'ee' => 'GH₵',
+ 'en' => array(
+ 'GB' => 'GHS',
+ 'GH' => 'GH₵',
+ ),
+ 'ha' => array(
+ 'GH' => 'GH₵',
+ ),
+ ),
+ 'GIP' => array(
+ 'af' => 'GIP',
+ 'am' => 'GIP',
+ 'ar' => 'GIP',
+ 'ast' => 'GIP',
+ 'az' => 'GIP',
+ 'bg' => 'GIP',
+ 'bn' => 'GIP',
+ 'bs' => 'GIP',
+ 'ca' => 'GIP',
+ 'cs' => 'GIP',
+ 'da' => 'GIP',
+ 'de' => 'GIP',
+ 'el' => 'GIP',
+ 'en' => array(
+ 'GB' => 'GIP',
+ 'GI' => '£',
+ ),
+ 'es' => 'GIP',
+ 'et' => 'GIP',
+ 'eu' => 'GIP',
+ 'fi' => 'GIP',
+ 'fil' => 'GIP',
+ 'fr' => array(
+ 'CA' => 'GIP',
+ 'DEFAULT' => '£GI',
+ ),
+ 'ga' => 'GIP',
+ 'gd' => 'GIP',
+ 'gl' => 'GIP',
+ 'gu' => 'GIP',
+ 'he' => 'GIP',
+ 'hi' => 'GIP',
+ 'hr' => 'GIP',
+ 'hu' => 'GIP',
+ 'hy' => 'GIP',
+ 'id' => 'GIP',
+ 'is' => 'GIP',
+ 'it' => 'GIP',
+ 'ja' => 'GIP',
+ 'ka' => 'GIP',
+ 'km' => 'GIP',
+ 'kn' => 'GIP',
+ 'ko' => 'GIP',
+ 'ky' => 'GIP',
+ 'lo' => 'GIP',
+ 'lt' => 'GIP',
+ 'lv' => 'GIP',
+ 'mk' => 'GIP',
+ 'ml' => 'GIP',
+ 'mn' => 'GIP',
+ 'mr' => 'GIP',
+ 'ms' => 'GIP',
+ 'nb' => 'GIP',
+ 'ne' => 'GIP',
+ 'nl' => 'GIP',
+ 'pa' => 'GIP',
+ 'pl' => 'GIP',
+ 'pt' => 'GIP',
+ 'ro' => 'GIP',
+ 'root' => '£',
+ 'ru' => 'GIP',
+ 'si' => 'GIP',
+ 'sk' => 'GIP',
+ 'sl' => 'GIP',
+ 'sr' => 'GIP',
+ 'sv' => 'GIP',
+ 'sw' => 'GIP',
+ 'ta' => 'GIP',
+ 'te' => 'GIP',
+ 'th' => 'GIP',
+ 'tr' => 'GIP',
+ 'uk' => 'GIP',
+ 'ur' => 'GIP',
+ 'uz' => 'GIP',
+ 'vi' => 'GIP',
+ 'zh' => 'GIP',
+ ),
+ 'GMD' => array(
+ 'en' => array(
+ 'GB' => 'GMD',
+ 'GM' => 'D',
+ ),
+ ),
+ 'GNF' => array(
+ 'af' => 'GNF',
+ 'am' => 'GNF',
+ 'ar' => 'GNF',
+ 'ast' => 'GNF',
+ 'az' => 'GNF',
+ 'bg' => 'GNF',
+ 'bn' => 'GNF',
+ 'bs' => 'GNF',
+ 'ca' => 'GNF',
+ 'cs' => 'GNF',
+ 'da' => 'GNF',
+ 'de' => 'GNF',
+ 'el' => 'GNF',
+ 'en' => array(
+ 'GB' => 'GNF',
+ ),
+ 'es' => 'GNF',
+ 'et' => 'GNF',
+ 'eu' => 'GNF',
+ 'ff' => array(
+ 'GN' => 'FG',
+ ),
+ 'fi' => 'GNF',
+ 'fr' => array(
+ 'DEFAULT' => 'GNF',
+ 'GN' => 'FG',
+ ),
+ 'ga' => 'GNF',
+ 'gd' => 'GNF',
+ 'gl' => 'GNF',
+ 'gu' => 'GNF',
+ 'he' => 'GNF',
+ 'hi' => 'GNF',
+ 'hr' => 'GNF',
+ 'hu' => 'GNF',
+ 'hy' => 'GNF',
+ 'id' => 'GNF',
+ 'is' => 'GNF',
+ 'it' => 'GNF',
+ 'ja' => 'GNF',
+ 'ka' => 'GNF',
+ 'kea' => 'GNF',
+ 'kk' => 'GNF',
+ 'km' => 'GNF',
+ 'kn' => 'GNF',
+ 'ko' => 'GNF',
+ 'ky' => 'GNF',
+ 'lo' => 'GNF',
+ 'lt' => 'GNF',
+ 'lv' => 'GNF',
+ 'mk' => 'GNF',
+ 'ml' => 'GNF',
+ 'mn' => 'GNF',
+ 'mr' => 'GNF',
+ 'ms' => 'GNF',
+ 'nb' => 'GNF',
+ 'ne' => 'GNF',
+ 'nl' => 'GNF',
+ 'pa' => 'GNF',
+ 'pl' => 'GNF',
+ 'pt' => 'GNF',
+ 'ro' => 'GNF',
+ 'root' => 'FG',
+ 'ru' => 'GNF',
+ 'si' => 'GNF',
+ 'sk' => 'GNF',
+ 'sl' => 'GNF',
+ 'sr' => 'GNF',
+ 'sv' => 'GNF',
+ 'sw' => 'GNF',
+ 'ta' => 'GNF',
+ 'te' => 'GNF',
+ 'th' => 'GNF',
+ 'tr' => 'GNF',
+ 'uk' => 'GNF',
+ 'ur' => 'GNF',
+ 'uz' => 'GNF',
+ 'vi' => 'GNF',
+ 'zh' => 'GNF',
+ ),
+ 'GRD' => array(
+ 'el' => 'Δρχ',
+ 'en' => array(
+ 'GB' => 'GRD',
+ ),
+ ),
+ 'GTQ' => array(
+ 'af' => 'GTQ',
+ 'am' => 'GTQ',
+ 'ar' => 'GTQ',
+ 'ast' => 'GTQ',
+ 'az' => 'GTQ',
+ 'bg' => 'GTQ',
+ 'bn' => 'GTQ',
+ 'bs' => 'GTQ',
+ 'ca' => 'GTQ',
+ 'cs' => 'GTQ',
+ 'cy' => 'GTQ',
+ 'da' => 'GTQ',
+ 'de' => 'GTQ',
+ 'el' => 'GTQ',
+ 'en' => array(
+ 'GB' => 'GTQ',
+ ),
+ 'es' => array(
+ 'DEFAULT' => 'GTQ',
+ 'GT' => 'Q',
+ ),
+ 'et' => 'GTQ',
+ 'eu' => 'GTQ',
+ 'fi' => 'GTQ',
+ 'fil' => 'GTQ',
+ 'fr' => 'GTQ',
+ 'ga' => 'GTQ',
+ 'gd' => 'GTQ',
+ 'gl' => 'GTQ',
+ 'gu' => 'GTQ',
+ 'he' => 'GTQ',
+ 'hi' => 'GTQ',
+ 'hr' => 'GTQ',
+ 'hu' => 'GTQ',
+ 'hy' => 'GTQ',
+ 'id' => 'GTQ',
+ 'is' => 'GTQ',
+ 'it' => 'GTQ',
+ 'ja' => 'GTQ',
+ 'ka' => 'GTQ',
+ 'kea' => 'GTQ',
+ 'kk' => 'GTQ',
+ 'km' => 'GTQ',
+ 'kn' => 'GTQ',
+ 'ko' => 'GTQ',
+ 'ky' => 'GTQ',
+ 'lo' => 'GTQ',
+ 'lt' => 'GTQ',
+ 'lv' => 'GTQ',
+ 'mk' => 'GTQ',
+ 'ml' => 'GTQ',
+ 'mn' => 'GTQ',
+ 'mr' => 'GTQ',
+ 'ms' => 'GTQ',
+ 'nb' => 'GTQ',
+ 'ne' => 'GTQ',
+ 'nl' => 'GTQ',
+ 'pa' => 'GTQ',
+ 'pl' => 'GTQ',
+ 'pt' => 'GTQ',
+ 'ro' => 'GTQ',
+ 'root' => 'Q',
+ 'ru' => 'GTQ',
+ 'si' => 'GTQ',
+ 'sk' => 'GTQ',
+ 'sl' => 'GTQ',
+ 'sr' => 'GTQ',
+ 'sv' => 'GTQ',
+ 'sw' => 'GTQ',
+ 'ta' => 'GTQ',
+ 'te' => 'GTQ',
+ 'th' => 'GTQ',
+ 'tr' => 'GTQ',
+ 'uk' => 'GTQ',
+ 'ur' => 'GTQ',
+ 'uz' => 'GTQ',
+ 'vi' => 'GTQ',
+ 'zh' => 'GTQ',
+ 'zu' => 'GTQ',
+ ),
+ 'GYD' => array(
+ 'af' => 'GYD',
+ 'am' => 'GYD',
+ 'ar' => 'GYD',
+ 'ast' => 'GYD',
+ 'az' => 'GYD',
+ 'bg' => 'GYD',
+ 'bn' => 'GYD',
+ 'bs' => 'GYD',
+ 'ca' => 'GYD',
+ 'cs' => 'GYD',
+ 'da' => 'GYD',
+ 'de' => 'GYD',
+ 'el' => 'GYD',
+ 'en' => array(
+ 'GB' => 'GYD',
+ 'GY' => '$',
+ ),
+ 'es' => 'GYD',
+ 'et' => 'GYD',
+ 'eu' => 'GYD',
+ 'fi' => 'GYD',
+ 'fil' => 'GYD',
+ 'fr' => 'GYD',
+ 'ga' => 'GYD',
+ 'gd' => 'GYD',
+ 'gl' => 'GYD',
+ 'gu' => 'GYD',
+ 'he' => 'GYD',
+ 'hi' => 'GYD',
+ 'hr' => 'GYD',
+ 'hu' => 'GYD',
+ 'hy' => 'GYD',
+ 'id' => 'GYD',
+ 'is' => 'GYD',
+ 'it' => 'GYD',
+ 'ja' => 'GYD',
+ 'ka' => 'GYD',
+ 'km' => 'GYD',
+ 'kn' => 'GYD',
+ 'ko' => 'GYD',
+ 'ky' => 'GYD',
+ 'lo' => 'GYD',
+ 'lt' => 'GYD',
+ 'lv' => 'GYD',
+ 'mk' => 'GYD',
+ 'ml' => 'GYD',
+ 'mn' => 'GYD',
+ 'mr' => 'GYD',
+ 'ms' => 'GYD',
+ 'nb' => 'GYD',
+ 'ne' => 'GYD',
+ 'nl' => 'GYD',
+ 'pa' => 'GYD',
+ 'pl' => 'GYD',
+ 'pt' => 'GYD',
+ 'ro' => 'GYD',
+ 'root' => '$',
+ 'ru' => 'GYD',
+ 'si' => 'GYD',
+ 'sk' => 'GYD',
+ 'sl' => 'GYD',
+ 'sr' => 'GYD',
+ 'sv' => 'GYD',
+ 'sw' => 'GYD',
+ 'ta' => 'GYD',
+ 'te' => 'GYD',
+ 'th' => 'GYD',
+ 'tr' => 'GYD',
+ 'uk' => 'GYD',
+ 'ur' => 'GYD',
+ 'uz' => 'GYD',
+ 'vi' => 'GYD',
+ 'zh' => 'GYD',
+ ),
+ 'HKD' => array(
+ 'bg' => 'HKD',
+ 'br' => '$ HK',
+ 'bs' => 'HKD',
+ 'en' => array(
+ 'GB' => 'HK$',
+ ),
+ 'es' => 'HKD',
+ 'fa' => '$HK',
+ 'fi' => 'HKD',
+ 'fr' => array(
+ 'CA' => '$ HK',
+ 'DEFAULT' => 'HKD',
+ ),
+ 'gl' => '$HK',
+ 'hr' => 'HKD',
+ 'hu' => 'HKD',
+ 'it' => 'HKD',
+ 'ka' => 'HKD',
+ 'ky' => 'HKD',
+ 'lt' => 'HKD',
+ 'mk' => 'HKD',
+ 'nb' => 'HKD',
+ 'pl' => 'HKD',
+ 'ro' => 'HKD',
+ 'root' => 'HK$',
+ 'sk' => 'HKD',
+ 'sv' => 'HKD',
+ 'uk' => 'HKD',
+ ),
+ 'HNL' => array(
+ 'af' => 'HNL',
+ 'am' => 'HNL',
+ 'ar' => 'HNL',
+ 'ast' => 'HNL',
+ 'az' => 'HNL',
+ 'bg' => 'HNL',
+ 'bn' => 'HNL',
+ 'bs' => 'HNL',
+ 'ca' => 'HNL',
+ 'cs' => 'HNL',
+ 'da' => 'HNL',
+ 'de' => 'HNL',
+ 'el' => 'HNL',
+ 'en' => array(
+ 'GB' => 'HNL',
+ ),
+ 'es' => array(
+ 'DEFAULT' => 'HNL',
+ 'HN' => 'L',
+ ),
+ 'et' => 'HNL',
+ 'eu' => 'HNL',
+ 'fi' => 'HNL',
+ 'fil' => 'HNL',
+ 'fr' => 'HNL',
+ 'ga' => 'HNL',
+ 'gd' => 'HNL',
+ 'gl' => 'HNL',
+ 'gu' => 'HNL',
+ 'he' => 'HNL',
+ 'hi' => 'HNL',
+ 'hr' => 'HNL',
+ 'hu' => 'HNL',
+ 'hy' => 'HNL',
+ 'id' => 'HNL',
+ 'is' => 'HNL',
+ 'it' => 'HNL',
+ 'ja' => 'HNL',
+ 'ka' => 'HNL',
+ 'kea' => 'HNL',
+ 'kk' => 'HNL',
+ 'km' => 'HNL',
+ 'kn' => 'HNL',
+ 'ko' => 'HNL',
+ 'ky' => 'HNL',
+ 'lo' => 'HNL',
+ 'lt' => 'HNL',
+ 'lv' => 'HNL',
+ 'mk' => 'HNL',
+ 'ml' => 'HNL',
+ 'mn' => 'HNL',
+ 'mr' => 'HNL',
+ 'ms' => 'HNL',
+ 'nb' => 'HNL',
+ 'ne' => 'HNL',
+ 'nl' => 'HNL',
+ 'pa' => 'HNL',
+ 'pl' => 'HNL',
+ 'pt' => 'HNL',
+ 'rm' => 'HNL',
+ 'ro' => 'HNL',
+ 'root' => 'L',
+ 'ru' => 'HNL',
+ 'si' => 'HNL',
+ 'sk' => 'HNL',
+ 'sl' => 'HNL',
+ 'sr' => 'HNL',
+ 'sv' => 'HNL',
+ 'sw' => 'HNL',
+ 'ta' => 'HNL',
+ 'te' => 'HNL',
+ 'th' => 'HNL',
+ 'tr' => 'HNL',
+ 'uk' => 'HNL',
+ 'ur' => 'HNL',
+ 'uz' => 'HNL',
+ 'vi' => 'HNL',
+ 'zh' => 'HNL',
+ 'zu' => 'HNL',
+ ),
+ 'HRD' => array(
+ 'en' => array(
+ 'GB' => 'HRD',
+ ),
+ ),
+ 'HRK' => array(
+ 'af' => 'HRK',
+ 'am' => 'HRK',
+ 'ar' => 'HRK',
+ 'az' => 'HRK',
+ 'bg' => 'HRK',
+ 'bn' => 'HRK',
+ 'ca' => 'HRK',
+ 'cs' => 'HRK',
+ 'da' => 'HRK',
+ 'de' => 'HRK',
+ 'el' => 'HRK',
+ 'en' => array(
+ 'GB' => 'HRK',
+ ),
+ 'es' => 'HRK',
+ 'et' => 'HRK',
+ 'eu' => 'HRK',
+ 'fi' => 'HRK',
+ 'fil' => 'HRK',
+ 'fr' => 'HRK',
+ 'ga' => 'HRK',
+ 'gd' => 'HRK',
+ 'gl' => 'HRK',
+ 'gu' => 'HRK',
+ 'he' => 'HRK',
+ 'hi' => 'HRK',
+ 'hr' => 'HRK',
+ 'hu' => 'HRK',
+ 'hy' => 'HRK',
+ 'id' => 'HRK',
+ 'is' => 'HRK',
+ 'it' => 'HRK',
+ 'ja' => 'HRK',
+ 'ka' => 'HRK',
+ 'kea' => 'HRK',
+ 'km' => 'HRK',
+ 'kn' => 'HRK',
+ 'ko' => 'HRK',
+ 'ky' => 'HRK',
+ 'lo' => 'HRK',
+ 'lt' => 'HRK',
+ 'lv' => 'HRK',
+ 'mk' => 'HRK',
+ 'ml' => 'HRK',
+ 'mn' => 'HRK',
+ 'mr' => 'HRK',
+ 'ms' => 'HRK',
+ 'nb' => 'HRK',
+ 'ne' => 'HRK',
+ 'nl' => 'HRK',
+ 'pa' => 'HRK',
+ 'pl' => 'HRK',
+ 'pt' => 'HRK',
+ 'ro' => 'HRK',
+ 'root' => 'kn',
+ 'ru' => 'HRK',
+ 'si' => 'HRK',
+ 'sk' => 'HRK',
+ 'sl' => 'HRK',
+ 'sr' => 'HRK',
+ 'sv' => 'HRK',
+ 'sw' => 'HRK',
+ 'ta' => 'HRK',
+ 'te' => 'HRK',
+ 'th' => 'HRK',
+ 'tr' => 'HRK',
+ 'uk' => 'HRK',
+ 'ur' => 'HRK',
+ 'uz' => 'HRK',
+ 'vi' => 'HRK',
+ 'zh' => 'HRK',
+ ),
+ 'HTG' => array(
+ 'en' => array(
+ 'GB' => 'HTG',
+ ),
+ 'fr' => array(
+ 'DEFAULT' => 'HTG',
+ 'HT' => 'G',
+ ),
+ ),
+ 'HUF' => array(
+ 'af' => 'HUF',
+ 'am' => 'HUF',
+ 'ar' => 'HUF',
+ 'az' => 'HUF',
+ 'bg' => 'HUF',
+ 'bn' => 'HUF',
+ 'bs' => 'HUF',
+ 'ca' => 'HUF',
+ 'cs' => 'HUF',
+ 'da' => 'HUF',
+ 'de' => 'HUF',
+ 'el' => 'HUF',
+ 'en' => array(
+ 'GB' => 'HUF',
+ ),
+ 'es' => 'HUF',
+ 'et' => 'HUF',
+ 'eu' => 'HUF',
+ 'fi' => 'HUF',
+ 'fil' => 'HUF',
+ 'fr' => 'HUF',
+ 'ga' => 'HUF',
+ 'gd' => 'HUF',
+ 'gl' => 'HUF',
+ 'gu' => 'HUF',
+ 'he' => 'HUF',
+ 'hi' => 'HUF',
+ 'hr' => 'HUF',
+ 'hu' => 'HUF',
+ 'hy' => 'HUF',
+ 'id' => 'HUF',
+ 'is' => 'HUF',
+ 'it' => 'HUF',
+ 'ja' => 'HUF',
+ 'ka' => 'HUF',
+ 'kea' => 'HUF',
+ 'km' => 'HUF',
+ 'kn' => 'HUF',
+ 'ko' => 'HUF',
+ 'ky' => 'HUF',
+ 'lo' => 'HUF',
+ 'lt' => 'HUF',
+ 'lv' => 'HUF',
+ 'mk' => 'HUF',
+ 'ml' => 'HUF',
+ 'mn' => 'HUF',
+ 'mr' => 'HUF',
+ 'ms' => 'HUF',
+ 'nb' => 'HUF',
+ 'ne' => 'HUF',
+ 'nl' => 'HUF',
+ 'pa' => 'HUF',
+ 'pl' => 'HUF',
+ 'pt' => 'HUF',
+ 'ro' => 'HUF',
+ 'root' => 'Ft',
+ 'ru' => 'HUF',
+ 'si' => 'HUF',
+ 'sk' => 'HUF',
+ 'sl' => 'HUF',
+ 'sr' => 'HUF',
+ 'sv' => 'HUF',
+ 'sw' => 'HUF',
+ 'ta' => 'HUF',
+ 'te' => 'HUF',
+ 'th' => 'HUF',
+ 'tr' => 'HUF',
+ 'uk' => 'HUF',
+ 'ur' => 'HUF',
+ 'uz' => 'HUF',
+ 'vi' => 'HUF',
+ 'zh' => 'HUF',
+ ),
+ 'IDR' => array(
+ 'af' => 'IDR',
+ 'am' => 'IDR',
+ 'ar' => 'ر.إن.',
+ 'ast' => 'IDR',
+ 'az' => 'IDR',
+ 'bg' => 'IDR',
+ 'bn' => 'IDR',
+ 'bs' => 'IDR',
+ 'ca' => 'IDR',
+ 'cs' => 'IDR',
+ 'da' => 'IDR',
+ 'de' => 'IDR',
+ 'el' => 'IDR',
+ 'en' => array(
+ 'GB' => 'IDR',
+ ),
+ 'eo' => 'IDR',
+ 'es' => 'IDR',
+ 'et' => 'IDR',
+ 'eu' => 'IDR',
+ 'fi' => 'IDR',
+ 'fil' => 'IDR',
+ 'fr' => 'IDR',
+ 'ga' => 'IDR',
+ 'gd' => 'IDR',
+ 'gl' => 'IDR',
+ 'gu' => 'IDR',
+ 'he' => 'IDR',
+ 'hi' => 'IDR',
+ 'hr' => 'IDR',
+ 'hu' => 'IDR',
+ 'hy' => 'IDR',
+ 'is' => 'IDR',
+ 'it' => 'IDR',
+ 'ja' => 'IDR',
+ 'ka' => 'IDR',
+ 'kea' => 'IDR',
+ 'kk' => 'IDR',
+ 'km' => 'IDR',
+ 'kn' => 'IDR',
+ 'ko' => 'IDR',
+ 'lb' => 'IDR',
+ 'lo' => 'IDR',
+ 'lt' => 'IDR',
+ 'lv' => 'IDR',
+ 'mk' => 'IDR',
+ 'ml' => 'IDR',
+ 'mn' => 'IDR',
+ 'mr' => 'IDR',
+ 'ms' => 'IDR',
+ 'nb' => 'IDR',
+ 'ne' => 'IDR',
+ 'nl' => 'IDR',
+ 'pa' => 'IDR',
+ 'pl' => 'IDR',
+ 'pt' => 'IDR',
+ 'ro' => 'IDR',
+ 'root' => 'Rp',
+ 'ru' => 'IDR',
+ 'si' => 'IDR',
+ 'sk' => 'IDR',
+ 'sl' => 'IDR',
+ 'sr' => 'IDR',
+ 'sv' => 'IDR',
+ 'sw' => 'IDR',
+ 'ta' => 'IDR',
+ 'te' => 'IDR',
+ 'th' => 'IDR',
+ 'tr' => 'IDR',
+ 'uk' => 'IDR',
+ 'ur' => 'IDR',
+ 'uz' => 'IDR',
+ 'vi' => 'IDR',
+ 'zh' => 'IDR',
+ 'zu' => 'IDR',
+ ),
+ 'IEP' => array(
+ 'en' => array(
+ 'GB' => 'IEP',
+ ),
+ 'fr' => '£IE',
+ ),
+ 'ILP' => array(
+ 'en' => array(
+ 'GB' => 'ILP',
+ ),
+ 'fr' => '£IL',
+ 'he' => 'ל״י',
+ ),
+ 'ILS' => array(
+ 'bg' => 'ILS',
+ 'bs' => 'ILS',
+ 'cs' => 'ILS',
+ 'dz' => 'ILS',
+ 'en' => array(
+ 'GB' => '₪',
+ ),
+ 'es' => 'ILS',
+ 'fi' => 'ILS',
+ 'fr' => array(
+ 'CA' => 'ILS',
+ 'DEFAULT' => '₪',
+ ),
+ 'hr' => 'ILS',
+ 'hu' => 'ILS',
+ 'ka' => 'ILS',
+ 'ky' => 'ILS',
+ 'lt' => 'ILS',
+ 'mk' => 'ILS',
+ 'nb' => 'ILS',
+ 'pl' => 'ILS',
+ 'ro' => 'ILS',
+ 'root' => '₪',
+ 'sk' => 'NIS',
+ 'uk' => 'ILS',
+ ),
+ 'INR' => array(
+ 'ar' => 'ر.ه.‏',
+ 'bg' => 'INR',
+ 'cs' => 'INR',
+ 'en' => array(
+ 'GB' => '₹',
+ ),
+ 'es' => 'INR',
+ 'fi' => 'INR',
+ 'fr' => array(
+ 'CA' => 'INR',
+ 'DEFAULT' => '₹',
+ ),
+ 'hr' => 'INR',
+ 'hu' => 'INR',
+ 'id' => 'Rs',
+ 'is' => 'INR',
+ 'ka' => 'INR',
+ 'ky' => 'INR',
+ 'lt' => 'INR',
+ 'mk' => 'INR',
+ 'nb' => 'INR',
+ 'pl' => 'INR',
+ 'ro' => 'INR',
+ 'root' => '₹',
+ 'sk' => 'INR',
+ 'sv' => 'INR',
+ 'uk' => 'INR',
+ ),
+ 'IQD' => array(
+ 'ar' => 'د.ع.‏',
+ 'en' => array(
+ 'GB' => 'IQD',
+ ),
+ ),
+ 'IRR' => array(
+ 'ar' => 'ر.إ.',
+ 'en' => array(
+ 'GB' => 'IRR',
+ ),
+ 'fa' => 'ریال',
+ ),
+ 'ISK' => array(
+ 'af' => 'ISK',
+ 'am' => 'ISK',
+ 'ar' => 'ISK',
+ 'ast' => 'ISK',
+ 'az' => 'ISK',
+ 'bg' => 'ISK',
+ 'bn' => 'ISK',
+ 'bs' => 'ISK',
+ 'ca' => 'ISK',
+ 'cs' => 'ISK',
+ 'da' => 'ISK',
+ 'de' => 'ISK',
+ 'el' => 'ISK',
+ 'en' => array(
+ 'GB' => 'ISK',
+ ),
+ 'es' => 'ISK',
+ 'et' => 'ISK',
+ 'eu' => 'ISK',
+ 'fi' => 'ISK',
+ 'fil' => 'ISK',
+ 'fr' => 'ISK',
+ 'ga' => 'ISK',
+ 'gd' => 'ISK',
+ 'gl' => 'ISK',
+ 'gu' => 'ISK',
+ 'he' => 'ISK',
+ 'hi' => 'ISK',
+ 'hr' => 'ISK',
+ 'hu' => 'ISK',
+ 'hy' => 'ISK',
+ 'id' => 'ISK',
+ 'is' => 'ISK',
+ 'it' => 'ISK',
+ 'ja' => 'ISK',
+ 'ka' => 'ISK',
+ 'kea' => 'ISK',
+ 'km' => 'ISK',
+ 'kn' => 'ISK',
+ 'ko' => 'ISK',
+ 'ky' => 'ISK',
+ 'lo' => 'ISK',
+ 'lt' => 'ISK',
+ 'lv' => 'ISK',
+ 'mk' => 'ISK',
+ 'ml' => 'ISK',
+ 'mn' => 'ISK',
+ 'mr' => 'ISK',
+ 'ms' => 'ISK',
+ 'nb' => 'ISK',
+ 'ne' => 'ISK',
+ 'nl' => 'ISK',
+ 'pa' => 'ISK',
+ 'pl' => 'ISK',
+ 'pt' => 'ISK',
+ 'rm' => 'ISK',
+ 'ro' => 'ISK',
+ 'root' => 'kr',
+ 'ru' => 'ISK',
+ 'si' => 'ISK',
+ 'sk' => 'ISK',
+ 'sl' => 'ISK',
+ 'sr' => 'ISK',
+ 'sv' => 'Ikr',
+ 'sw' => 'ISK',
+ 'ta' => 'ISK',
+ 'te' => 'ISK',
+ 'th' => 'ISK',
+ 'tr' => 'ISK',
+ 'uk' => 'ISK',
+ 'ur' => 'ISK',
+ 'uz' => 'ISK',
+ 'vi' => 'ISK',
+ 'zh' => 'ISK',
+ ),
+ 'ITL' => array(
+ 'en' => array(
+ 'GB' => 'ITL',
+ ),
+ 'fr' => '₤IT',
+ ),
+ 'JMD' => array(
+ 'af' => 'JMD',
+ 'am' => 'JMD',
+ 'ar' => 'JMD',
+ 'ast' => 'JMD',
+ 'az' => 'JMD',
+ 'bg' => 'JMD',
+ 'bn' => 'JMD',
+ 'bs' => 'JMD',
+ 'ca' => 'JMD',
+ 'cs' => 'JMD',
+ 'da' => 'JMD',
+ 'de' => 'JMD',
+ 'el' => 'JMD',
+ 'en' => array(
+ 'GB' => 'JMD',
+ 'JM' => '$',
+ ),
+ 'es' => 'JMD',
+ 'et' => 'JMD',
+ 'eu' => 'JMD',
+ 'fi' => 'JMD',
+ 'fil' => 'JMD',
+ 'fr' => 'JMD',
+ 'ga' => 'JMD',
+ 'gd' => 'JMD',
+ 'gl' => 'JMD',
+ 'gu' => 'JMD',
+ 'he' => 'JMD',
+ 'hi' => 'JMD',
+ 'hr' => 'JMD',
+ 'hu' => 'JMD',
+ 'hy' => 'JMD',
+ 'id' => 'JMD',
+ 'is' => 'JMD',
+ 'it' => 'JMD',
+ 'ja' => 'JMD',
+ 'ka' => 'JMD',
+ 'kk' => 'JMD',
+ 'km' => 'JMD',
+ 'kn' => 'JMD',
+ 'ko' => 'JMD',
+ 'lo' => 'JMD',
+ 'lt' => 'JMD',
+ 'lv' => 'JMD',
+ 'mk' => 'JMD',
+ 'ml' => 'JMD',
+ 'mn' => 'JMD',
+ 'mr' => 'JMD',
+ 'ms' => 'JMD',
+ 'nb' => 'JMD',
+ 'ne' => 'JMD',
+ 'nl' => 'JMD',
+ 'pa' => 'JMD',
+ 'pl' => 'JMD',
+ 'pt' => 'JMD',
+ 'rm' => 'JMD',
+ 'ro' => 'JMD',
+ 'root' => '$',
+ 'ru' => 'JMD',
+ 'si' => 'JMD',
+ 'sk' => 'JMD',
+ 'sl' => 'JMD',
+ 'sr' => 'JMD',
+ 'sv' => 'JM$',
+ 'sw' => 'JMD',
+ 'ta' => 'JMD',
+ 'te' => 'JMD',
+ 'th' => 'JMD',
+ 'tr' => 'JMD',
+ 'uk' => 'JMD',
+ 'ur' => 'JMD',
+ 'uz' => 'JMD',
+ 'vi' => 'JMD',
+ 'zh' => 'JMD',
+ 'zu' => 'JMD',
+ ),
+ 'JOD' => array(
+ 'ar' => 'د.أ.‏',
+ 'en' => array(
+ 'GB' => 'JOD',
+ ),
+ ),
+ 'JPY' => array(
+ 'ast' => '¥',
+ 'be' => '¥',
+ 'bg' => 'JPY',
+ 'br' => '¥',
+ 'bs' => '¥',
+ 'de' => '¥',
+ 'dsb' => '¥',
+ 'en' => array(
+ 'DEFAULT' => '¥',
+ 'GB' => '¥',
+ ),
+ 'es' => array(
+ 'DEFAULT' => 'JPY',
+ 'US' => '¥',
+ ),
+ 'et' => '¥',
+ 'fa' => '¥',
+ 'fi' => '¥',
+ 'fil' => '¥',
+ 'fr' => array(
+ 'CA' => '¥',
+ 'DEFAULT' => 'JPY',
+ ),
+ 'ga' => '¥',
+ 'gl' => '¥JP',
+ 'gsw' => '¥',
+ 'hr' => 'JPY',
+ 'hsb' => '¥',
+ 'hu' => '¥',
+ 'it' => 'JPY',
+ 'ja' => '¥',
+ 'ka' => 'JPY',
+ 'lb' => '¥',
+ 'lt' => 'JPY',
+ 'lv' => '¥',
+ 'mk' => 'JPY',
+ 'ml' => '¥',
+ 'nb' => 'JPY',
+ 'pl' => 'JPY',
+ 'ro' => 'JPY',
+ 'root' => 'JP¥',
+ 'ru' => '¥',
+ 'sk' => 'JPY',
+ 'sl' => '¥',
+ 'sr' => '¥',
+ 'sv' => 'JPY',
+ 'ta' => '¥',
+ 'th' => '¥',
+ 'tr' => '¥',
+ 'uk' => '¥',
+ 'wae' => '¥',
+ 'zh' => '¥',
+ ),
+ 'KES' => array(
+ 'dav' => 'Ksh',
+ 'ebu' => 'Ksh',
+ 'en' => array(
+ 'GB' => 'KES',
+ 'KE' => 'Ksh',
+ ),
+ 'guz' => 'Ksh',
+ 'kam' => 'Ksh',
+ 'ki' => 'Ksh',
+ 'kln' => 'Ksh',
+ 'luo' => 'Ksh',
+ 'luy' => 'Ksh',
+ 'mas' => 'Ksh',
+ 'mer' => 'Ksh',
+ 'om' => array(
+ 'KE' => 'Ksh',
+ ),
+ 'saq' => 'Ksh',
+ 'so' => array(
+ 'KE' => 'Ksh',
+ ),
+ 'sw' => 'Ksh',
+ 'teo' => array(
+ 'KE' => 'Ksh',
+ ),
+ ),
+ 'KGS' => array(
+ 'en' => array(
+ 'GB' => 'KGS',
+ ),
+ 'ky' => 'сом',
+ 'ru' => array(
+ 'DEFAULT' => 'KGS',
+ 'KG' => 'сом',
+ ),
+ ),
+ 'KHR' => array(
+ 'af' => 'KHR',
+ 'am' => 'KHR',
+ 'ar' => 'KHR',
+ 'ast' => 'KHR',
+ 'az' => 'KHR',
+ 'bg' => 'KHR',
+ 'bn' => 'KHR',
+ 'bs' => 'KHR',
+ 'ca' => 'KHR',
+ 'cs' => 'KHR',
+ 'da' => 'KHR',
+ 'de' => 'KHR',
+ 'el' => 'KHR',
+ 'en' => array(
+ 'GB' => 'KHR',
+ ),
+ 'es' => 'KHR',
+ 'et' => 'KHR',
+ 'eu' => 'KHR',
+ 'fi' => 'KHR',
+ 'fil' => 'KHR',
+ 'fr' => 'KHR',
+ 'ga' => 'KHR',
+ 'gd' => 'KHR',
+ 'gl' => 'KHR',
+ 'gu' => 'KHR',
+ 'he' => 'KHR',
+ 'hi' => 'KHR',
+ 'hr' => 'KHR',
+ 'hu' => 'KHR',
+ 'hy' => 'KHR',
+ 'id' => 'KHR',
+ 'is' => 'KHR',
+ 'it' => 'KHR',
+ 'ja' => 'KHR',
+ 'ka' => 'KHR',
+ 'kk' => 'KHR',
+ 'kn' => 'KHR',
+ 'ko' => 'KHR',
+ 'lb' => 'KHR',
+ 'lo' => 'KHR',
+ 'lt' => 'KHR',
+ 'lv' => 'KHR',
+ 'mk' => 'KHR',
+ 'ml' => 'KHR',
+ 'mn' => 'KHR',
+ 'mr' => 'KHR',
+ 'ms' => 'KHR',
+ 'nb' => 'KHR',
+ 'ne' => 'KHR',
+ 'nl' => 'KHR',
+ 'pa' => 'KHR',
+ 'pl' => 'KHR',
+ 'pt' => 'KHR',
+ 'ro' => 'KHR',
+ 'root' => '៛',
+ 'ru' => 'KHR',
+ 'si' => 'KHR',
+ 'sk' => 'KHR',
+ 'sl' => 'KHR',
+ 'sr' => 'KHR',
+ 'sv' => 'KHR',
+ 'sw' => 'KHR',
+ 'ta' => 'KHR',
+ 'te' => 'KHR',
+ 'th' => 'KHR',
+ 'tr' => 'KHR',
+ 'uk' => 'KHR',
+ 'ur' => 'KHR',
+ 'uz' => 'KHR',
+ 'vi' => 'KHR',
+ 'zh' => 'KHR',
+ ),
+ 'KMF' => array(
+ 'af' => 'KMF',
+ 'am' => 'KMF',
+ 'ar' => 'ف.ج.ق.‏',
+ 'ast' => 'KMF',
+ 'az' => 'KMF',
+ 'bg' => 'KMF',
+ 'bn' => 'KMF',
+ 'bs' => 'KMF',
+ 'ca' => 'KMF',
+ 'cs' => 'KMF',
+ 'da' => 'KMF',
+ 'de' => 'KMF',
+ 'el' => 'KMF',
+ 'en' => array(
+ 'GB' => 'KMF',
+ ),
+ 'es' => 'KMF',
+ 'et' => 'KMF',
+ 'eu' => 'KMF',
+ 'fi' => 'KMF',
+ 'fr' => array(
+ 'DEFAULT' => 'KMF',
+ 'KM' => 'CF',
+ ),
+ 'ga' => 'KMF',
+ 'gd' => 'KMF',
+ 'gl' => 'KMF',
+ 'gu' => 'KMF',
+ 'he' => 'KMF',
+ 'hi' => 'KMF',
+ 'hr' => 'KMF',
+ 'hu' => 'KMF',
+ 'hy' => 'KMF',
+ 'id' => 'KMF',
+ 'is' => 'KMF',
+ 'it' => 'KMF',
+ 'ja' => 'KMF',
+ 'ka' => 'KMF',
+ 'kea' => 'KMF',
+ 'kk' => 'KMF',
+ 'km' => 'KMF',
+ 'kn' => 'KMF',
+ 'ko' => 'KMF',
+ 'lo' => 'KMF',
+ 'lt' => 'KMF',
+ 'lv' => 'KMF',
+ 'mk' => 'KMF',
+ 'ml' => 'KMF',
+ 'mn' => 'KMF',
+ 'mr' => 'KMF',
+ 'ms' => 'KMF',
+ 'nb' => 'KMF',
+ 'ne' => 'KMF',
+ 'nl' => 'KMF',
+ 'pa' => 'KMF',
+ 'pl' => 'KMF',
+ 'pt' => 'KMF',
+ 'ro' => 'KMF',
+ 'root' => 'CF',
+ 'ru' => 'KMF',
+ 'si' => 'KMF',
+ 'sk' => 'KMF',
+ 'sl' => 'KMF',
+ 'sr' => 'KMF',
+ 'sv' => 'KMF',
+ 'sw' => 'KMF',
+ 'ta' => 'KMF',
+ 'te' => 'KMF',
+ 'th' => 'KMF',
+ 'tr' => 'KMF',
+ 'uk' => 'KMF',
+ 'ur' => 'KMF',
+ 'uz' => 'KMF',
+ 'vi' => 'KMF',
+ 'zh' => 'KMF',
+ ),
+ 'KPW' => array(
+ 'af' => 'KPW',
+ 'am' => 'KPW',
+ 'ar' => 'KPW',
+ 'ast' => 'KPW',
+ 'az' => 'KPW',
+ 'bg' => 'KPW',
+ 'bn' => 'KPW',
+ 'bs' => 'KPW',
+ 'ca' => 'KPW',
+ 'cs' => 'KPW',
+ 'da' => 'KPW',
+ 'de' => 'KPW',
+ 'dsb' => 'KPW',
+ 'el' => 'KPW',
+ 'en' => array(
+ 'GB' => 'KPW',
+ ),
+ 'es' => 'KPW',
+ 'et' => 'KPW',
+ 'eu' => 'KPW',
+ 'fi' => 'KPW',
+ 'fil' => 'KPW',
+ 'fr' => 'KPW',
+ 'ga' => 'KPW',
+ 'gd' => 'KPW',
+ 'gl' => 'KPW',
+ 'gu' => 'KPW',
+ 'he' => 'KPW',
+ 'hi' => 'KPW',
+ 'hr' => 'KPW',
+ 'hsb' => 'KPW',
+ 'hu' => 'KPW',
+ 'hy' => 'KPW',
+ 'id' => 'KPW',
+ 'is' => 'KPW',
+ 'it' => 'KPW',
+ 'ja' => 'KPW',
+ 'ka' => 'KPW',
+ 'kea' => 'KPW',
+ 'kk' => 'KPW',
+ 'km' => 'KPW',
+ 'kn' => 'KPW',
+ 'ko' => 'KPW',
+ 'lb' => 'KPW',
+ 'lo' => 'KPW',
+ 'lt' => 'KPW',
+ 'lv' => 'KPW',
+ 'mk' => 'KPW',
+ 'ml' => 'KPW',
+ 'mn' => 'KPW',
+ 'mr' => 'KPW',
+ 'ms' => 'KPW',
+ 'nb' => 'KPW',
+ 'ne' => 'KPW',
+ 'nl' => 'KPW',
+ 'pa' => 'KPW',
+ 'pl' => 'KPW',
+ 'pt' => 'KPW',
+ 'ro' => 'KPW',
+ 'root' => '₩',
+ 'ru' => 'KPW',
+ 'si' => 'KPW',
+ 'sk' => 'KPW',
+ 'sl' => 'KPW',
+ 'sr' => 'KPW',
+ 'sv' => 'KPW',
+ 'sw' => 'KPW',
+ 'ta' => 'KPW',
+ 'te' => 'KPW',
+ 'th' => 'KPW',
+ 'tr' => 'KPW',
+ 'uk' => 'KPW',
+ 'ur' => 'KPW',
+ 'uz' => 'KPW',
+ 'vi' => 'KPW',
+ 'zh' => 'KPW',
+ ),
+ 'KRH' => array(
+ 'en' => array(
+ 'GB' => 'KRH',
+ ),
+ ),
+ 'KRO' => array(
+ 'en' => array(
+ 'GB' => 'KRO',
+ ),
+ ),
+ 'KRW' => array(
+ 'bg' => 'KRW',
+ 'dz' => 'KR₩',
+ 'en' => array(
+ 'GB' => '₩',
+ ),
+ 'es' => 'KRW',
+ 'fi' => 'KRW',
+ 'fr' => array(
+ 'CA' => 'KRW',
+ 'DEFAULT' => '₩',
+ ),
+ 'hr' => 'KRW',
+ 'hu' => 'KRW',
+ 'is' => 'KRW',
+ 'it' => 'KRW',
+ 'ja' => '₩',
+ 'ka' => 'KRW',
+ 'ky' => 'KRW',
+ 'lt' => 'KRW',
+ 'mk' => 'KRW',
+ 'nb' => 'KRW',
+ 'pl' => 'KRW',
+ 'ro' => 'KRW',
+ 'root' => '₩',
+ 'sk' => 'KRW',
+ 'sr' => 'KRW',
+ 'sv' => 'KRW',
+ 'uk' => 'KRW',
+ 'zh' => array(
+ 'DEFAULT' => '₩',
+ 'HK' => '₩',
+ ),
+ ),
+ 'KWD' => array(
+ 'ar' => 'د.ك.‏',
+ 'en' => array(
+ 'GB' => 'KWD',
+ ),
+ ),
+ 'KYD' => array(
+ 'af' => 'KYD',
+ 'am' => 'KYD',
+ 'ar' => 'KYD',
+ 'ast' => 'KYD',
+ 'az' => 'KYD',
+ 'bg' => 'KYD',
+ 'bn' => 'KYD',
+ 'bs' => 'KYD',
+ 'ca' => 'KYD',
+ 'cs' => 'KYD',
+ 'da' => 'KYD',
+ 'de' => 'KYD',
+ 'el' => 'KYD',
+ 'en' => array(
+ 'GB' => 'KYD',
+ 'KY' => '$',
+ ),
+ 'es' => 'KYD',
+ 'et' => 'KYD',
+ 'eu' => 'KYD',
+ 'fi' => 'KYD',
+ 'fil' => 'KYD',
+ 'fr' => 'KYD',
+ 'ga' => 'KYD',
+ 'gd' => 'KYD',
+ 'gl' => 'KYD',
+ 'gu' => 'KYD',
+ 'he' => 'KYD',
+ 'hi' => 'KYD',
+ 'hr' => 'KYD',
+ 'hu' => 'KYD',
+ 'hy' => 'KYD',
+ 'id' => 'KYD',
+ 'is' => 'KYD',
+ 'it' => 'KYD',
+ 'ja' => 'KYD',
+ 'ka' => 'KYD',
+ 'kk' => 'KYD',
+ 'km' => 'KYD',
+ 'kn' => 'KYD',
+ 'ko' => 'KYD',
+ 'lo' => 'KYD',
+ 'lt' => 'KYD',
+ 'lv' => 'KYD',
+ 'mk' => 'KYD',
+ 'ml' => 'KYD',
+ 'mn' => 'KYD',
+ 'mr' => 'KYD',
+ 'ms' => 'KYD',
+ 'nb' => 'KYD',
+ 'ne' => 'KYD',
+ 'nl' => 'KYD',
+ 'pa' => 'KYD',
+ 'pl' => 'KYD',
+ 'pt' => 'KYD',
+ 'rm' => 'KYD',
+ 'ro' => 'KYD',
+ 'root' => '$',
+ 'ru' => 'KYD',
+ 'si' => 'KYD',
+ 'sk' => 'KYD',
+ 'sl' => 'KYD',
+ 'sr' => 'KYD',
+ 'sv' => 'KYD',
+ 'sw' => 'KYD',
+ 'ta' => 'KYD',
+ 'te' => 'KYD',
+ 'th' => 'KYD',
+ 'tr' => 'KYD',
+ 'uk' => 'KYD',
+ 'ur' => 'KYD',
+ 'uz' => 'KYD',
+ 'vi' => 'KYD',
+ 'zh' => 'KYD',
+ 'zu' => 'KYD',
+ ),
+ 'KZT' => array(
+ 'af' => 'KZT',
+ 'am' => 'KZT',
+ 'ar' => 'KZT',
+ 'ast' => 'KZT',
+ 'az' => 'KZT',
+ 'bg' => 'KZT',
+ 'bn' => 'KZT',
+ 'bs' => 'KZT',
+ 'ca' => 'KZT',
+ 'cs' => 'KZT',
+ 'da' => 'KZT',
+ 'de' => 'KZT',
+ 'el' => 'KZT',
+ 'en' => array(
+ 'GB' => 'KZT',
+ ),
+ 'es' => 'KZT',
+ 'et' => 'KZT',
+ 'eu' => 'KZT',
+ 'fi' => 'KZT',
+ 'fr' => 'KZT',
+ 'ga' => 'KZT',
+ 'gd' => 'KZT',
+ 'gl' => 'KZT',
+ 'gu' => 'KZT',
+ 'he' => 'KZT',
+ 'hi' => 'KZT',
+ 'hr' => 'KZT',
+ 'hu' => 'KZT',
+ 'hy' => 'KZT',
+ 'id' => 'KZT',
+ 'is' => 'KZT',
+ 'it' => 'KZT',
+ 'ja' => 'KZT',
+ 'ka' => 'KZT',
+ 'km' => 'KZT',
+ 'kn' => 'KZT',
+ 'ko' => 'KZT',
+ 'lo' => 'KZT',
+ 'lt' => 'KZT',
+ 'lv' => 'KZT',
+ 'mk' => 'KZT',
+ 'ml' => 'KZT',
+ 'mn' => 'KZT',
+ 'mr' => 'KZT',
+ 'ms' => 'KZT',
+ 'nb' => 'KZT',
+ 'ne' => 'KZT',
+ 'nl' => 'KZT',
+ 'pa' => 'KZT',
+ 'pl' => 'KZT',
+ 'pt' => 'KZT',
+ 'ro' => 'KZT',
+ 'root' => '₸',
+ 'ru' => array(
+ 'DEFAULT' => 'KZT',
+ 'KZ' => '₸',
+ ),
+ 'si' => 'KZT',
+ 'sk' => 'KZT',
+ 'sl' => 'KZT',
+ 'sr' => 'KZT',
+ 'sv' => 'KZT',
+ 'sw' => 'KZT',
+ 'ta' => 'KZT',
+ 'te' => 'KZT',
+ 'th' => 'KZT',
+ 'tr' => 'KZT',
+ 'uk' => 'KZT',
+ 'ur' => 'KZT',
+ 'uz' => 'KZT',
+ 'vi' => 'KZT',
+ 'zh' => 'KZT',
+ ),
+ 'LAK' => array(
+ 'af' => 'LAK',
+ 'am' => 'LAK',
+ 'ar' => 'LAK',
+ 'ast' => 'LAK',
+ 'az' => 'LAK',
+ 'bg' => 'LAK',
+ 'bn' => 'LAK',
+ 'bs' => 'LAK',
+ 'ca' => 'LAK',
+ 'cs' => 'LAK',
+ 'da' => 'LAK',
+ 'de' => 'LAK',
+ 'el' => 'LAK',
+ 'en' => array(
+ 'GB' => 'LAK',
+ ),
+ 'es' => 'LAK',
+ 'et' => 'LAK',
+ 'eu' => 'LAK',
+ 'fi' => 'LAK',
+ 'fil' => 'LAK',
+ 'fr' => 'LAK',
+ 'ga' => 'LAK',
+ 'gd' => 'LAK',
+ 'gl' => 'LAK',
+ 'gu' => 'LAK',
+ 'he' => 'LAK',
+ 'hi' => 'LAK',
+ 'hr' => 'LAK',
+ 'hu' => 'LAK',
+ 'hy' => 'LAK',
+ 'id' => 'LAK',
+ 'is' => 'LAK',
+ 'it' => 'LAK',
+ 'ja' => 'LAK',
+ 'ka' => 'LAK',
+ 'kk' => 'LAK',
+ 'km' => 'LAK',
+ 'kn' => 'LAK',
+ 'ko' => 'LAK',
+ 'lb' => 'LAK',
+ 'lt' => 'LAK',
+ 'lv' => 'LAK',
+ 'mk' => 'LAK',
+ 'ml' => 'LAK',
+ 'mn' => 'LAK',
+ 'mr' => 'LAK',
+ 'ms' => 'LAK',
+ 'nb' => 'LAK',
+ 'ne' => 'LAK',
+ 'nl' => 'LAK',
+ 'pa' => 'LAK',
+ 'pl' => 'LAK',
+ 'pt' => 'LAK',
+ 'ro' => 'LAK',
+ 'root' => '₭',
+ 'ru' => 'LAK',
+ 'si' => 'LAK',
+ 'sk' => 'LAK',
+ 'sl' => 'LAK',
+ 'sr' => 'LAK',
+ 'sv' => 'LAK',
+ 'sw' => 'LAK',
+ 'ta' => 'LAK',
+ 'te' => 'LAK',
+ 'th' => 'LAK',
+ 'tr' => 'LAK',
+ 'uk' => 'LAK',
+ 'ur' => 'LAK',
+ 'uz' => 'LAK',
+ 'vi' => 'LAK',
+ 'zh' => 'LAK',
+ ),
+ 'LBP' => array(
+ 'af' => 'LBP',
+ 'am' => 'LBP',
+ 'ar' => 'ل.ل.‏',
+ 'ast' => 'LBP',
+ 'az' => 'LBP',
+ 'bg' => 'LBP',
+ 'bn' => 'LBP',
+ 'bs' => 'LBP',
+ 'ca' => 'LBP',
+ 'cs' => 'LBP',
+ 'da' => 'LBP',
+ 'de' => 'LBP',
+ 'el' => 'LBP',
+ 'en' => array(
+ 'GB' => 'LBP',
+ ),
+ 'es' => 'LBP',
+ 'et' => 'LBP',
+ 'eu' => 'LBP',
+ 'fi' => 'LBP',
+ 'fr' => array(
+ 'CA' => 'LBP',
+ 'DEFAULT' => '£LB',
+ ),
+ 'ga' => 'LBP',
+ 'gd' => 'LBP',
+ 'gl' => 'LBP',
+ 'gu' => 'LBP',
+ 'he' => 'LBP',
+ 'hi' => 'LBP',
+ 'hr' => 'LBP',
+ 'hu' => 'LBP',
+ 'hy' => 'LBP',
+ 'id' => 'LBP',
+ 'is' => 'LBP',
+ 'it' => 'LBP',
+ 'ja' => 'LBP',
+ 'ka' => 'LBP',
+ 'kea' => 'LBP',
+ 'kk' => 'LBP',
+ 'km' => 'LBP',
+ 'kn' => 'LBP',
+ 'ko' => 'LBP',
+ 'lo' => 'LBP',
+ 'lt' => 'LBP',
+ 'lv' => 'LBP',
+ 'mk' => 'LBP',
+ 'ml' => 'LBP',
+ 'mn' => 'LBP',
+ 'mr' => 'LBP',
+ 'ms' => 'LBP',
+ 'nb' => 'LBP',
+ 'ne' => 'LBP',
+ 'nl' => 'LBP',
+ 'pa' => 'LBP',
+ 'pl' => 'LBP',
+ 'pt' => 'LBP',
+ 'ro' => 'LBP',
+ 'root' => 'L£',
+ 'ru' => 'LBP',
+ 'si' => 'LBP',
+ 'sk' => 'LBP',
+ 'sl' => 'LBP',
+ 'sr' => 'LBP',
+ 'sv' => 'LBP',
+ 'sw' => 'LBP',
+ 'ta' => 'LBP',
+ 'te' => 'LBP',
+ 'th' => 'LBP',
+ 'tr' => 'LBP',
+ 'uk' => 'LBP',
+ 'ur' => 'LBP',
+ 'uz' => 'LBP',
+ 'vi' => 'LBP',
+ 'zh' => 'LBP',
+ ),
+ 'LKR' => array(
+ 'af' => 'LKR',
+ 'am' => 'LKR',
+ 'ar' => 'LKR',
+ 'ast' => 'LKR',
+ 'az' => 'LKR',
+ 'bg' => 'LKR',
+ 'bn' => 'LKR',
+ 'bs' => 'LKR',
+ 'ca' => 'LKR',
+ 'cs' => 'LKR',
+ 'da' => 'LKR',
+ 'de' => 'LKR',
+ 'el' => 'LKR',
+ 'en' => array(
+ 'GB' => 'LKR',
+ ),
+ 'es' => 'LKR',
+ 'et' => 'LKR',
+ 'eu' => 'LKR',
+ 'fi' => 'LKR',
+ 'fil' => 'LKR',
+ 'fr' => 'LKR',
+ 'ga' => 'LKR',
+ 'gd' => 'LKR',
+ 'gl' => 'LKR',
+ 'gu' => 'LKR',
+ 'he' => 'LKR',
+ 'hi' => 'LKR',
+ 'hr' => 'LKR',
+ 'hu' => 'LKR',
+ 'hy' => 'LKR',
+ 'id' => 'LKR',
+ 'is' => 'LKR',
+ 'it' => 'LKR',
+ 'ja' => 'LKR',
+ 'ka' => 'LKR',
+ 'kea' => 'LKR',
+ 'kk' => 'LKR',
+ 'km' => 'LKR',
+ 'kn' => 'LKR',
+ 'ko' => 'LKR',
+ 'lb' => 'LKR',
+ 'lo' => 'LKR',
+ 'lt' => 'LKR',
+ 'lv' => 'LKR',
+ 'mk' => 'LKR',
+ 'ml' => 'LKR',
+ 'mn' => 'LKR',
+ 'mr' => 'LKR',
+ 'ms' => 'LKR',
+ 'nb' => 'LKR',
+ 'ne' => 'LKR',
+ 'nl' => 'LKR',
+ 'pa' => 'LKR',
+ 'pl' => 'LKR',
+ 'pt' => 'LKR',
+ 'ro' => 'LKR',
+ 'root' => 'Rs',
+ 'ru' => 'LKR',
+ 'si' => 'රු.',
+ 'sk' => 'LKR',
+ 'sl' => 'LKR',
+ 'sr' => 'LKR',
+ 'sv' => 'LKR',
+ 'sw' => 'LKR',
+ 'ta' => array(
+ 'DEFAULT' => 'LKR',
+ 'LK' => 'Rs.',
+ ),
+ 'te' => 'LKR',
+ 'th' => 'LKR',
+ 'tr' => 'LKR',
+ 'uk' => 'LKR',
+ 'ur' => 'LKR',
+ 'uz' => 'LKR',
+ 'vi' => 'LKR',
+ 'zh' => 'LKR',
+ ),
+ 'LRD' => array(
+ 'af' => 'LRD',
+ 'am' => 'LRD',
+ 'ar' => 'LRD',
+ 'ast' => 'LRD',
+ 'az' => 'LRD',
+ 'bg' => 'LRD',
+ 'bn' => 'LRD',
+ 'bs' => 'LRD',
+ 'ca' => 'LRD',
+ 'cs' => 'LRD',
+ 'da' => 'LRD',
+ 'de' => 'LRD',
+ 'el' => 'LRD',
+ 'en' => array(
+ 'GB' => 'LRD',
+ 'LR' => '$',
+ ),
+ 'es' => 'LRD',
+ 'et' => 'LRD',
+ 'eu' => 'LRD',
+ 'fi' => 'LRD',
+ 'fr' => 'LRD',
+ 'ga' => 'LRD',
+ 'gd' => 'LRD',
+ 'gl' => 'LRD',
+ 'gu' => 'LRD',
+ 'he' => 'LRD',
+ 'hi' => 'LRD',
+ 'hr' => 'LRD',
+ 'hu' => 'LRD',
+ 'hy' => 'LRD',
+ 'id' => 'LRD',
+ 'is' => 'LRD',
+ 'it' => 'LRD',
+ 'ja' => 'LRD',
+ 'ka' => 'LRD',
+ 'kk' => 'LRD',
+ 'km' => 'LRD',
+ 'kn' => 'LRD',
+ 'ko' => 'LRD',
+ 'ky' => 'LRD',
+ 'lo' => 'LRD',
+ 'lt' => 'LRD',
+ 'lv' => 'LRD',
+ 'mk' => 'LRD',
+ 'ml' => 'LRD',
+ 'mn' => 'LRD',
+ 'mr' => 'LRD',
+ 'ms' => 'LRD',
+ 'nb' => 'LRD',
+ 'ne' => 'LRD',
+ 'nl' => 'LRD',
+ 'pa' => 'LRD',
+ 'pl' => 'LRD',
+ 'pt' => 'LRD',
+ 'ro' => 'LRD',
+ 'root' => '$',
+ 'ru' => 'LRD',
+ 'si' => 'LRD',
+ 'sk' => 'LRD',
+ 'sl' => 'LRD',
+ 'sr' => 'LRD',
+ 'sv' => 'LRD',
+ 'sw' => 'LRD',
+ 'ta' => 'LRD',
+ 'te' => 'LRD',
+ 'th' => 'LRD',
+ 'tr' => 'LRD',
+ 'uk' => 'LRD',
+ 'ur' => 'LRD',
+ 'uz' => 'LRD',
+ 'vi' => 'LRD',
+ 'zh' => 'LRD',
+ ),
+ 'LSL' => array(
+ 'en' => array(
+ 'GB' => 'LSL',
+ ),
+ 'fr' => 'lLS',
+ 'st' => array(
+ 'LS' => 'M',
+ ),
+ ),
+ 'LTL' => array(
+ 'af' => 'LTL',
+ 'am' => 'LTL',
+ 'ar' => 'LTL',
+ 'az' => 'LTL',
+ 'bg' => 'LTL',
+ 'bn' => 'LTL',
+ 'bs' => 'LTL',
+ 'ca' => 'LTL',
+ 'cs' => 'LTL',
+ 'da' => 'LTL',
+ 'de' => 'LTL',
+ 'el' => 'LTL',
+ 'en' => array(
+ 'GB' => 'LTL',
+ ),
+ 'es' => 'LTL',
+ 'et' => 'LTL',
+ 'eu' => 'LTL',
+ 'fi' => 'LTL',
+ 'fil' => 'LTL',
+ 'fr' => 'LTL',
+ 'ga' => 'LTL',
+ 'gd' => 'LTL',
+ 'gl' => 'LTL',
+ 'gu' => 'LTL',
+ 'he' => 'LTL',
+ 'hi' => 'LTL',
+ 'hr' => 'LTL',
+ 'hu' => 'LTL',
+ 'hy' => 'LTL',
+ 'id' => 'LTL',
+ 'is' => 'LTL',
+ 'it' => 'LTL',
+ 'ja' => 'LTL',
+ 'ka' => 'LTL',
+ 'kea' => 'LTL',
+ 'km' => 'LTL',
+ 'kn' => 'LTL',
+ 'ko' => 'LTL',
+ 'ky' => 'LTL',
+ 'lo' => 'LTL',
+ 'lt' => 'LTL',
+ 'lv' => 'LTL',
+ 'mk' => 'LTL',
+ 'ml' => 'LTL',
+ 'mn' => 'LTL',
+ 'mr' => 'LTL',
+ 'ms' => 'LTL',
+ 'nb' => 'LTL',
+ 'ne' => 'LTL',
+ 'nl' => 'LTL',
+ 'pa' => 'LTL',
+ 'pl' => 'LTL',
+ 'pt' => 'LTL',
+ 'ro' => 'LTL',
+ 'root' => 'Lt',
+ 'ru' => 'LTL',
+ 'si' => 'LTL',
+ 'sk' => 'LTL',
+ 'sl' => 'LTL',
+ 'sr' => 'LTL',
+ 'sv' => 'LTL',
+ 'sw' => 'LTL',
+ 'ta' => 'LTL',
+ 'te' => 'LTL',
+ 'th' => 'LTL',
+ 'tr' => 'LTL',
+ 'uk' => 'LTL',
+ 'ur' => 'LTL',
+ 'uz' => 'LTL',
+ 'vi' => 'LTL',
+ 'zh' => 'LTL',
+ ),
+ 'LTT' => array(
+ 'en' => array(
+ 'GB' => 'LTT',
+ ),
+ ),
+ 'LUC' => array(
+ 'en' => array(
+ 'GB' => 'LUC',
+ ),
+ ),
+ 'LUF' => array(
+ 'de' => array(
+ 'DEFAULT' => 'LUF',
+ 'LU' => 'F',
+ ),
+ 'en' => array(
+ 'GB' => 'LUF',
+ ),
+ 'fr' => array(
+ 'LU' => 'F',
+ ),
+ ),
+ 'LUL' => array(
+ 'en' => array(
+ 'GB' => 'LUL',
+ ),
+ ),
+ 'LVL' => array(
+ 'am' => 'LVL',
+ 'ar' => 'LVL',
+ 'az' => 'LVL',
+ 'bg' => 'LVL',
+ 'bn' => 'LVL',
+ 'bs' => 'LVL',
+ 'ca' => 'LVL',
+ 'cs' => 'LVL',
+ 'da' => 'LVL',
+ 'de' => 'LVL',
+ 'el' => 'LVL',
+ 'en' => array(
+ 'GB' => 'LVL',
+ ),
+ 'es' => 'LVL',
+ 'et' => 'LVL',
+ 'eu' => 'LVL',
+ 'fi' => 'LVL',
+ 'fil' => 'LVL',
+ 'fr' => 'LVL',
+ 'ga' => 'LVL',
+ 'gd' => 'LVL',
+ 'gl' => 'LVL',
+ 'gu' => 'LVL',
+ 'he' => 'LVL',
+ 'hi' => 'LVL',
+ 'hr' => 'LVL',
+ 'hu' => 'LVL',
+ 'hy' => 'LVL',
+ 'id' => 'LVL',
+ 'is' => 'LVL',
+ 'it' => 'LVL',
+ 'ja' => 'LVL',
+ 'ka' => 'LVL',
+ 'km' => 'LVL',
+ 'kn' => 'LVL',
+ 'ko' => 'LVL',
+ 'ky' => 'LVL',
+ 'lo' => 'LVL',
+ 'lt' => 'LVL',
+ 'mk' => 'LVL',
+ 'ml' => 'LVL',
+ 'mn' => 'LVL',
+ 'mr' => 'LVL',
+ 'ms' => 'LVL',
+ 'nb' => 'LVL',
+ 'ne' => 'LVL',
+ 'nl' => 'LVL',
+ 'pa' => 'LVL',
+ 'pl' => 'LVL',
+ 'pt' => 'LVL',
+ 'ro' => 'LVL',
+ 'root' => 'Ls',
+ 'ru' => 'LVL',
+ 'sk' => 'LVL',
+ 'sl' => 'LVL',
+ 'sr' => 'LVL',
+ 'sv' => 'LVL',
+ 'sw' => 'LVL',
+ 'ta' => 'LVL',
+ 'te' => 'LVL',
+ 'th' => 'LVL',
+ 'tr' => 'LVL',
+ 'uk' => 'LVL',
+ 'ur' => 'LVL',
+ 'uz' => 'LVL',
+ 'vi' => 'LVL',
+ 'zh' => 'LVL',
+ ),
+ 'LVR' => array(
+ 'en' => array(
+ 'GB' => 'LVR',
+ ),
+ ),
+ 'LYD' => array(
+ 'ar' => 'د.ل.‏',
+ 'en' => array(
+ 'GB' => 'LYD',
+ ),
+ ),
+ 'MAD' => array(
+ 'ar' => 'د.م.‏',
+ 'en' => array(
+ 'GB' => 'MAD',
+ ),
+ ),
+ 'MAF' => array(
+ 'fr' => 'fMA',
+ ),
+ 'MCF' => array(
+ 'en' => array(
+ 'GB' => 'MCF',
+ ),
+ ),
+ 'MDC' => array(
+ 'en' => array(
+ 'GB' => 'MDC',
+ ),
+ ),
+ 'MDL' => array(
+ 'en' => array(
+ 'GB' => 'MDL',
+ ),
+ 'ro' => array(
+ 'DEFAULT' => 'MDL',
+ 'MD' => 'L',
+ ),
+ 'ru' => array(
+ 'DEFAULT' => 'MDL',
+ 'MD' => 'L',
+ ),
+ ),
+ 'MGA' => array(
+ 'af' => 'MGA',
+ 'am' => 'MGA',
+ 'ar' => 'MGA',
+ 'az' => 'MGA',
+ 'bg' => 'MGA',
+ 'bn' => 'MGA',
+ 'bs' => 'MGA',
+ 'ca' => 'MGA',
+ 'cs' => 'MGA',
+ 'da' => 'MGA',
+ 'de' => 'MGA',
+ 'el' => 'MGA',
+ 'en' => array(
+ 'GB' => 'MGA',
+ 'MG' => 'Ar',
+ ),
+ 'es' => 'MGA',
+ 'et' => 'MGA',
+ 'eu' => 'MGA',
+ 'fi' => 'MGA',
+ 'fr' => array(
+ 'DEFAULT' => 'MGA',
+ 'MG' => 'Ar',
+ ),
+ 'ga' => 'MGA',
+ 'gd' => 'MGA',
+ 'gl' => 'MGA',
+ 'gu' => 'MGA',
+ 'he' => 'MGA',
+ 'hi' => 'MGA',
+ 'hr' => 'MGA',
+ 'hu' => 'MGA',
+ 'hy' => 'MGA',
+ 'id' => 'MGA',
+ 'is' => 'MGA',
+ 'it' => 'MGA',
+ 'ja' => 'MGA',
+ 'ka' => 'MGA',
+ 'kea' => 'MGA',
+ 'kk' => 'MGA',
+ 'km' => 'MGA',
+ 'kn' => 'MGA',
+ 'ko' => 'MGA',
+ 'lo' => 'MGA',
+ 'lt' => 'MGA',
+ 'lv' => 'MGA',
+ 'mk' => 'MGA',
+ 'ml' => 'MGA',
+ 'mn' => 'MGA',
+ 'mr' => 'MGA',
+ 'ms' => 'MGA',
+ 'nb' => 'MGA',
+ 'ne' => 'MGA',
+ 'nl' => 'MGA',
+ 'pa' => 'MGA',
+ 'pl' => 'MGA',
+ 'pt' => 'MGA',
+ 'ro' => 'MGA',
+ 'root' => 'Ar',
+ 'ru' => 'MGA',
+ 'si' => 'MGA',
+ 'sk' => 'MGA',
+ 'sl' => 'MGA',
+ 'sr' => 'MGA',
+ 'sv' => 'MGA',
+ 'sw' => 'MGA',
+ 'ta' => 'MGA',
+ 'te' => 'MGA',
+ 'th' => 'MGA',
+ 'tr' => 'MGA',
+ 'uk' => 'MGA',
+ 'ur' => 'MGA',
+ 'uz' => 'MGA',
+ 'vi' => 'MGA',
+ 'zh' => 'MGA',
+ ),
+ 'MGF' => array(
+ 'fr' => 'Fmg',
+ ),
+ 'MKD' => array(
+ 'en' => array(
+ 'GB' => 'MKD',
+ ),
+ 'mk' => 'ден',
+ 'sq' => array(
+ 'MK' => 'den',
+ ),
+ ),
+ 'MKN' => array(
+ 'en' => array(
+ 'GB' => 'MKN',
+ ),
+ ),
+ 'MMK' => array(
+ 'af' => 'MMK',
+ 'am' => 'MMK',
+ 'ar' => 'MMK',
+ 'ast' => 'MMK',
+ 'az' => 'MMK',
+ 'bg' => 'MMK',
+ 'bn' => 'MMK',
+ 'bs' => 'MMK',
+ 'ca' => 'MMK',
+ 'cs' => 'MMK',
+ 'da' => 'MMK',
+ 'de' => 'MMK',
+ 'el' => 'MMK',
+ 'en' => array(
+ 'GB' => 'MMK',
+ ),
+ 'es' => 'MMK',
+ 'et' => 'MMK',
+ 'eu' => 'MMK',
+ 'fi' => 'MMK',
+ 'fil' => 'MMK',
+ 'fr' => 'MMK',
+ 'ga' => 'MMK',
+ 'gd' => 'MMK',
+ 'gl' => 'MMK',
+ 'gu' => 'MMK',
+ 'he' => 'MMK',
+ 'hi' => 'MMK',
+ 'hr' => 'MMK',
+ 'hu' => 'MMK',
+ 'hy' => 'MMK',
+ 'id' => 'MMK',
+ 'is' => 'MMK',
+ 'it' => 'MMK',
+ 'ja' => 'MMK',
+ 'ka' => 'MMK',
+ 'kea' => 'MMK',
+ 'kk' => 'MMK',
+ 'km' => 'MMK',
+ 'kn' => 'MMK',
+ 'ko' => 'MMK',
+ 'lb' => 'MMK',
+ 'lo' => 'MMK',
+ 'lt' => 'MMK',
+ 'lv' => 'MMK',
+ 'mk' => 'MMK',
+ 'ml' => 'MMK',
+ 'mn' => 'MMK',
+ 'mr' => 'MMK',
+ 'ms' => 'MMK',
+ 'nb' => 'MMK',
+ 'ne' => 'MMK',
+ 'nl' => 'MMK',
+ 'pa' => 'MMK',
+ 'pl' => 'MMK',
+ 'pt' => 'MMK',
+ 'ro' => 'MMK',
+ 'root' => 'K',
+ 'ru' => 'MMK',
+ 'si' => 'MMK',
+ 'sk' => 'MMK',
+ 'sl' => 'MMK',
+ 'sr' => 'MMK',
+ 'sv' => 'MMK',
+ 'sw' => 'MMK',
+ 'ta' => 'MMK',
+ 'te' => 'MMK',
+ 'th' => 'MMK',
+ 'tr' => 'MMK',
+ 'uk' => 'MMK',
+ 'ur' => 'MMK',
+ 'uz' => 'MMK',
+ 'vi' => 'MMK',
+ 'zh' => 'MMK',
+ ),
+ 'MNT' => array(
+ 'af' => 'MNT',
+ 'am' => 'MNT',
+ 'ar' => 'MNT',
+ 'ast' => 'MNT',
+ 'az' => 'MNT',
+ 'bg' => 'MNT',
+ 'bn' => 'MNT',
+ 'bs' => 'MNT',
+ 'ca' => 'MNT',
+ 'cs' => 'MNT',
+ 'da' => 'MNT',
+ 'de' => 'MNT',
+ 'el' => 'MNT',
+ 'en' => array(
+ 'GB' => 'MNT',
+ ),
+ 'es' => 'MNT',
+ 'et' => 'MNT',
+ 'eu' => 'MNT',
+ 'fi' => 'MNT',
+ 'fil' => 'MNT',
+ 'fr' => 'MNT',
+ 'ga' => 'MNT',
+ 'gd' => 'MNT',
+ 'gl' => 'MNT',
+ 'gu' => 'MNT',
+ 'he' => 'MNT',
+ 'hi' => 'MNT',
+ 'hr' => 'MNT',
+ 'hu' => 'MNT',
+ 'hy' => 'MNT',
+ 'id' => 'MNT',
+ 'is' => 'MNT',
+ 'it' => 'MNT',
+ 'ja' => 'MNT',
+ 'ka' => 'MNT',
+ 'kk' => 'MNT',
+ 'km' => 'MNT',
+ 'kn' => 'MNT',
+ 'ko' => 'MNT',
+ 'lb' => 'MNT',
+ 'lo' => 'MNT',
+ 'lt' => 'MNT',
+ 'lv' => 'MNT',
+ 'mk' => 'MNT',
+ 'ml' => 'MNT',
+ 'mr' => 'MNT',
+ 'ms' => 'MNT',
+ 'nb' => 'MNT',
+ 'ne' => 'MNT',
+ 'nl' => 'MNT',
+ 'pa' => 'MNT',
+ 'pl' => 'MNT',
+ 'pt' => 'MNT',
+ 'ro' => 'MNT',
+ 'root' => '₮',
+ 'ru' => 'MNT',
+ 'si' => 'MNT',
+ 'sk' => 'MNT',
+ 'sl' => 'MNT',
+ 'sr' => 'MNT',
+ 'sv' => 'MNT',
+ 'sw' => 'MNT',
+ 'ta' => 'MNT',
+ 'te' => 'MNT',
+ 'th' => 'MNT',
+ 'tr' => 'MNT',
+ 'uk' => 'MNT',
+ 'ur' => 'MNT',
+ 'uz' => 'MNT',
+ 'vi' => 'MNT',
+ 'zh' => 'MNT',
+ ),
+ 'MOP' => array(
+ 'en' => array(
+ 'GB' => 'MOP',
+ 'MO' => 'MOP$',
+ ),
+ 'pt' => array(
+ 'DEFAULT' => 'MOP',
+ 'MO' => 'MOP$',
+ ),
+ 'zh' => array(
+ 'DEFAULT' => 'MOP',
+ 'MO' => 'MOP$',
+ ),
+ ),
+ 'MRO' => array(
+ 'ar' => 'أ.م.‏',
+ 'en' => array(
+ 'GB' => 'MRO',
+ ),
+ 'ff' => array(
+ 'MR' => 'UM',
+ ),
+ 'fr' => array(
+ 'DEFAULT' => 'MRO',
+ 'MR' => 'UM',
+ ),
+ ),
+ 'MTL' => array(
+ 'en' => array(
+ 'GB' => 'MTL',
+ ),
+ ),
+ 'MTP' => array(
+ 'en' => array(
+ 'GB' => 'MTP',
+ ),
+ 'fr' => '£MT',
+ ),
+ 'MUR' => array(
+ 'af' => 'MUR',
+ 'am' => 'MUR',
+ 'ar' => 'MUR',
+ 'ast' => 'MUR',
+ 'az' => 'MUR',
+ 'bg' => 'MUR',
+ 'bn' => 'MUR',
+ 'bs' => 'MUR',
+ 'ca' => 'MUR',
+ 'cs' => 'MUR',
+ 'da' => 'MUR',
+ 'de' => 'MUR',
+ 'el' => 'MUR',
+ 'en' => array(
+ 'GB' => 'MUR',
+ 'MU' => 'Rs',
+ ),
+ 'es' => 'MUR',
+ 'et' => 'MUR',
+ 'eu' => 'MUR',
+ 'fi' => 'MUR',
+ 'fr' => array(
+ 'DEFAULT' => 'MUR',
+ 'MU' => 'Rs',
+ ),
+ 'ga' => 'MUR',
+ 'gd' => 'MUR',
+ 'gl' => 'MUR',
+ 'gu' => 'MUR',
+ 'he' => 'MUR',
+ 'hi' => 'MUR',
+ 'hr' => 'MUR',
+ 'hu' => 'MUR',
+ 'hy' => 'MUR',
+ 'id' => 'MUR',
+ 'is' => 'MUR',
+ 'it' => 'MUR',
+ 'ja' => 'MUR',
+ 'ka' => 'MUR',
+ 'kea' => 'MUR',
+ 'kk' => 'MUR',
+ 'km' => 'MUR',
+ 'kn' => 'MUR',
+ 'ko' => 'MUR',
+ 'lo' => 'MUR',
+ 'lt' => 'MUR',
+ 'lv' => 'MUR',
+ 'mk' => 'MUR',
+ 'ml' => 'MUR',
+ 'mn' => 'MUR',
+ 'mr' => 'MUR',
+ 'ms' => 'MUR',
+ 'nb' => 'MUR',
+ 'ne' => 'MUR',
+ 'nl' => 'MUR',
+ 'pa' => 'MUR',
+ 'pl' => 'MUR',
+ 'pt' => 'MUR',
+ 'ro' => 'MUR',
+ 'root' => 'Rs',
+ 'ru' => 'MUR',
+ 'si' => 'MUR',
+ 'sk' => 'MUR',
+ 'sl' => 'MUR',
+ 'sr' => 'MUR',
+ 'sv' => 'MUR',
+ 'sw' => 'MUR',
+ 'ta' => 'MUR',
+ 'te' => 'MUR',
+ 'th' => 'MUR',
+ 'tr' => 'MUR',
+ 'uk' => 'MUR',
+ 'ur' => 'MUR',
+ 'uz' => 'MUR',
+ 'vi' => 'MUR',
+ 'zh' => 'MUR',
+ ),
+ 'MVR' => array(
+ 'en' => array(
+ 'GB' => 'MVR',
+ ),
+ ),
+ 'MWK' => array(
+ 'en' => array(
+ 'GB' => 'MWK',
+ 'MW' => 'MK',
+ ),
+ ),
+ 'MXN' => array(
+ 'af' => 'MXN',
+ 'bg' => 'MXN',
+ 'bs' => 'MXN',
+ 'ca' => 'MXN',
+ 'en' => array(
+ 'GB' => 'MX$',
+ ),
+ 'es' => array(
+ 'DEFAULT' => 'MXN',
+ 'MX' => '$',
+ ),
+ 'fa' => '$MX',
+ 'fi' => 'MXN',
+ 'fr' => array(
+ 'CA' => 'MXN',
+ 'DEFAULT' => '$MX',
+ ),
+ 'gl' => '$MX',
+ 'hr' => 'MXN',
+ 'hu' => 'MXN',
+ 'is' => 'MXN',
+ 'it' => 'MXN',
+ 'ky' => 'MXN',
+ 'lt' => 'MXN',
+ 'ms' => 'MXN',
+ 'nb' => 'MXN',
+ 'pl' => 'MXN',
+ 'ro' => 'MXN',
+ 'root' => 'MX$',
+ 'uk' => 'MXN',
+ ),
+ 'MXP' => array(
+ 'en' => array(
+ 'GB' => 'MXP',
+ ),
+ 'es' => array(
+ 'MX' => 'MXP',
+ ),
+ ),
+ 'MXV' => array(
+ 'en' => array(
+ 'GB' => 'MXV',
+ ),
+ ),
+ 'MYR' => array(
+ 'af' => 'MYR',
+ 'am' => 'MYR',
+ 'ar' => 'MYR',
+ 'ast' => 'MYR',
+ 'az' => 'MYR',
+ 'bg' => 'MYR',
+ 'bn' => 'MYR',
+ 'bs' => 'MYR',
+ 'ca' => 'MYR',
+ 'cs' => 'MYR',
+ 'da' => 'MYR',
+ 'de' => 'MYR',
+ 'el' => 'MYR',
+ 'en' => array(
+ 'GB' => 'MYR',
+ 'MY' => 'RM',
+ ),
+ 'es' => 'MYR',
+ 'et' => 'MYR',
+ 'eu' => 'MYR',
+ 'fi' => 'MYR',
+ 'fil' => 'MYR',
+ 'fr' => 'MYR',
+ 'ga' => 'MYR',
+ 'gd' => 'MYR',
+ 'gl' => 'MYR',
+ 'gu' => 'MYR',
+ 'he' => 'MYR',
+ 'hi' => 'MYR',
+ 'hr' => 'MYR',
+ 'hu' => 'MYR',
+ 'hy' => 'MYR',
+ 'id' => 'MYR',
+ 'is' => 'MYR',
+ 'it' => 'MYR',
+ 'ja' => 'MYR',
+ 'ka' => 'MYR',
+ 'kea' => 'MYR',
+ 'kk' => 'MYR',
+ 'km' => 'MYR',
+ 'kn' => 'MYR',
+ 'ko' => 'MYR',
+ 'lb' => 'MYR',
+ 'lo' => 'MYR',
+ 'lt' => 'MYR',
+ 'lv' => 'MYR',
+ 'mk' => 'MYR',
+ 'ml' => 'MYR',
+ 'mn' => 'MYR',
+ 'mr' => 'MYR',
+ 'nb' => 'MYR',
+ 'ne' => 'MYR',
+ 'nl' => 'MYR',
+ 'pa' => 'MYR',
+ 'pl' => 'MYR',
+ 'pt' => 'MYR',
+ 'ro' => 'MYR',
+ 'root' => 'RM',
+ 'ru' => 'MYR',
+ 'si' => 'MYR',
+ 'sk' => 'MYR',
+ 'sl' => 'MYR',
+ 'sr' => 'MYR',
+ 'sv' => 'MYR',
+ 'sw' => 'MYR',
+ 'ta' => array(
+ 'DEFAULT' => 'MYR',
+ 'MY' => 'RM',
+ 'SG' => 'RM',
+ ),
+ 'te' => 'MYR',
+ 'th' => 'MYR',
+ 'tr' => 'MYR',
+ 'uk' => 'MYR',
+ 'ur' => 'MYR',
+ 'uz' => 'MYR',
+ 'vi' => 'MYR',
+ 'zh' => 'MYR',
+ ),
+ 'MZN' => array(
+ 'en' => array(
+ 'GB' => 'MZN',
+ ),
+ 'mgh' => 'MTn',
+ 'pt' => array(
+ 'DEFAULT' => 'MZN',
+ 'MZ' => 'MTn',
+ ),
+ 'seh' => 'MTn',
+ ),
+ 'NAD' => array(
+ 'af' => array(
+ 'DEFAULT' => 'NAD',
+ 'NA' => '$',
+ ),
+ 'am' => 'NAD',
+ 'ar' => 'NAD',
+ 'ast' => 'NAD',
+ 'az' => 'NAD',
+ 'bg' => 'NAD',
+ 'bn' => 'NAD',
+ 'bs' => 'NAD',
+ 'ca' => 'NAD',
+ 'cs' => 'NAD',
+ 'da' => 'NAD',
+ 'de' => 'NAD',
+ 'el' => 'NAD',
+ 'en' => array(
+ 'GB' => 'NAD',
+ 'NA' => '$',
+ ),
+ 'es' => 'NAD',
+ 'et' => 'NAD',
+ 'eu' => 'NAD',
+ 'fi' => 'NAD',
+ 'fr' => array(
+ 'CA' => 'NAD',
+ 'DEFAULT' => '$NA',
+ ),
+ 'ga' => 'NAD',
+ 'gd' => 'NAD',
+ 'gl' => 'NAD',
+ 'gu' => 'NAD',
+ 'he' => 'NAD',
+ 'hi' => 'NAD',
+ 'hr' => 'NAD',
+ 'hu' => 'NAD',
+ 'hy' => 'NAD',
+ 'id' => 'NAD',
+ 'is' => 'NAD',
+ 'it' => 'NAD',
+ 'ja' => 'NAD',
+ 'ka' => 'NAD',
+ 'kk' => 'NAD',
+ 'km' => 'NAD',
+ 'kn' => 'NAD',
+ 'ko' => 'NAD',
+ 'lo' => 'NAD',
+ 'lt' => 'NAD',
+ 'lv' => 'NAD',
+ 'mk' => 'NAD',
+ 'ml' => 'NAD',
+ 'mn' => 'NAD',
+ 'mr' => 'NAD',
+ 'ms' => 'NAD',
+ 'nb' => 'NAD',
+ 'ne' => 'NAD',
+ 'nl' => 'NAD',
+ 'pa' => 'NAD',
+ 'pl' => 'NAD',
+ 'pt' => 'NAD',
+ 'ro' => 'NAD',
+ 'root' => '$',
+ 'ru' => 'NAD',
+ 'si' => 'NAD',
+ 'sk' => 'NAD',
+ 'sl' => 'NAD',
+ 'sr' => 'NAD',
+ 'sv' => 'NAD',
+ 'sw' => 'NAD',
+ 'ta' => 'NAD',
+ 'te' => 'NAD',
+ 'th' => 'NAD',
+ 'tr' => 'NAD',
+ 'uk' => 'NAD',
+ 'ur' => 'NAD',
+ 'uz' => 'NAD',
+ 'vi' => 'NAD',
+ 'zh' => 'NAD',
+ ),
+ 'NGN' => array(
+ 'af' => 'NGN',
+ 'am' => 'NGN',
+ 'ar' => 'NGN',
+ 'ast' => 'NGN',
+ 'az' => 'NGN',
+ 'bg' => 'NGN',
+ 'bn' => 'NGN',
+ 'bs' => 'NGN',
+ 'ca' => 'NGN',
+ 'cs' => 'NGN',
+ 'da' => 'NGN',
+ 'de' => 'NGN',
+ 'el' => 'NGN',
+ 'en' => array(
+ 'GB' => 'NGN',
+ 'NG' => '₦',
+ ),
+ 'es' => 'NGN',
+ 'et' => 'NGN',
+ 'eu' => 'NGN',
+ 'fi' => 'NGN',
+ 'fr' => 'NGN',
+ 'ga' => 'NGN',
+ 'gd' => 'NGN',
+ 'gl' => 'NGN',
+ 'gu' => 'NGN',
+ 'he' => 'NGN',
+ 'hi' => 'NGN',
+ 'hr' => 'NGN',
+ 'hu' => 'NGN',
+ 'hy' => 'NGN',
+ 'id' => 'NGN',
+ 'is' => 'NGN',
+ 'it' => 'NGN',
+ 'ja' => 'NGN',
+ 'ka' => 'NGN',
+ 'kk' => 'NGN',
+ 'km' => 'NGN',
+ 'kn' => 'NGN',
+ 'ko' => 'NGN',
+ 'ky' => 'NGN',
+ 'lo' => 'NGN',
+ 'lt' => 'NGN',
+ 'lv' => 'NGN',
+ 'mk' => 'NGN',
+ 'ml' => 'NGN',
+ 'mn' => 'NGN',
+ 'mr' => 'NGN',
+ 'ms' => 'NGN',
+ 'nb' => 'NGN',
+ 'ne' => 'NGN',
+ 'nl' => 'NGN',
+ 'pa' => 'NGN',
+ 'pl' => 'NGN',
+ 'pt' => 'NGN',
+ 'ro' => 'NGN',
+ 'root' => '₦',
+ 'ru' => 'NGN',
+ 'si' => 'NGN',
+ 'sk' => 'NGN',
+ 'sl' => 'NGN',
+ 'sr' => 'NGN',
+ 'sv' => 'NGN',
+ 'sw' => 'NGN',
+ 'ta' => 'NGN',
+ 'te' => 'NGN',
+ 'th' => 'NGN',
+ 'tr' => 'NGN',
+ 'uk' => 'NGN',
+ 'ur' => 'NGN',
+ 'uz' => 'NGN',
+ 'vi' => 'NGN',
+ 'zh' => 'NGN',
+ ),
+ 'NIC' => array(
+ 'en' => array(
+ 'GB' => 'NIC',
+ ),
+ 'es' => array(
+ 'MX' => 'NIC',
+ ),
+ ),
+ 'NIO' => array(
+ 'af' => 'NIO',
+ 'am' => 'NIO',
+ 'ar' => 'NIO',
+ 'ast' => 'NIO',
+ 'az' => 'NIO',
+ 'bg' => 'NIO',
+ 'bn' => 'NIO',
+ 'bs' => 'NIO',
+ 'ca' => 'NIO',
+ 'cs' => 'NIO',
+ 'da' => 'NIO',
+ 'de' => 'NIO',
+ 'el' => 'NIO',
+ 'en' => array(
+ 'GB' => 'NIO',
+ ),
+ 'es' => array(
+ 'DEFAULT' => 'NIO',
+ 'NI' => 'C$',
+ ),
+ 'et' => 'NIO',
+ 'eu' => 'NIO',
+ 'fi' => 'NIO',
+ 'fil' => 'NIO',
+ 'fr' => 'NIO',
+ 'ga' => 'NIO',
+ 'gd' => 'NIO',
+ 'gl' => 'NIO',
+ 'gu' => 'NIO',
+ 'he' => 'NIO',
+ 'hi' => 'NIO',
+ 'hr' => 'NIO',
+ 'hu' => 'NIO',
+ 'hy' => 'NIO',
+ 'id' => 'NIO',
+ 'is' => 'NIO',
+ 'it' => 'NIO',
+ 'ja' => 'NIO',
+ 'ka' => 'NIO',
+ 'kea' => 'NIO',
+ 'kk' => 'NIO',
+ 'km' => 'NIO',
+ 'kn' => 'NIO',
+ 'ko' => 'NIO',
+ 'lo' => 'NIO',
+ 'lt' => 'NIO',
+ 'lv' => 'NIO',
+ 'mk' => 'NIO',
+ 'ml' => 'NIO',
+ 'mn' => 'NIO',
+ 'mr' => 'NIO',
+ 'ms' => 'NIO',
+ 'nb' => 'NIO',
+ 'ne' => 'NIO',
+ 'nl' => 'NIO',
+ 'pa' => 'NIO',
+ 'pl' => 'NIO',
+ 'pt' => 'NIO',
+ 'ro' => 'NIO',
+ 'root' => 'C$',
+ 'ru' => 'NIO',
+ 'si' => 'NIO',
+ 'sk' => 'NIO',
+ 'sl' => 'NIO',
+ 'sr' => 'NIO',
+ 'sv' => 'NIO',
+ 'sw' => 'NIO',
+ 'ta' => 'NIO',
+ 'te' => 'NIO',
+ 'th' => 'NIO',
+ 'tr' => 'NIO',
+ 'uk' => 'NIO',
+ 'ur' => 'NIO',
+ 'uz' => 'NIO',
+ 'vi' => 'NIO',
+ 'zh' => 'NIO',
+ 'zu' => 'NIO',
+ ),
+ 'NLG' => array(
+ 'en' => array(
+ 'GB' => 'NLG',
+ ),
+ ),
+ 'NOK' => array(
+ 'af' => 'NOK',
+ 'am' => 'NOK',
+ 'ar' => 'NOK',
+ 'ast' => 'NOK',
+ 'az' => 'NOK',
+ 'bg' => 'NOK',
+ 'bn' => 'NOK',
+ 'bs' => 'NOK',
+ 'ca' => 'NOK',
+ 'cs' => 'NOK',
+ 'da' => 'NOK',
+ 'de' => 'NOK',
+ 'el' => 'NOK',
+ 'en' => array(
+ 'GB' => 'NOK',
+ ),
+ 'eo' => 'NOK',
+ 'es' => 'NOK',
+ 'et' => 'NOK',
+ 'eu' => 'NOK',
+ 'fi' => 'NOK',
+ 'fil' => 'NOK',
+ 'fr' => 'NOK',
+ 'ga' => 'NOK',
+ 'gd' => 'NOK',
+ 'gl' => 'NOK',
+ 'gu' => 'NOK',
+ 'he' => 'NOK',
+ 'hi' => 'NOK',
+ 'hr' => 'NOK',
+ 'hu' => 'NOK',
+ 'hy' => 'NOK',
+ 'id' => 'NOK',
+ 'is' => 'NOK',
+ 'it' => 'NOK',
+ 'ja' => 'NOK',
+ 'ka' => 'NOK',
+ 'kea' => 'NOK',
+ 'kl' => 'Nkr',
+ 'km' => 'NOK',
+ 'kn' => 'NOK',
+ 'ko' => 'NOK',
+ 'ky' => 'NOK',
+ 'lo' => 'NOK',
+ 'lt' => 'NOK',
+ 'lv' => 'NOK',
+ 'mk' => 'NOK',
+ 'ml' => 'NOK',
+ 'mn' => 'NOK',
+ 'mr' => 'NOK',
+ 'ms' => 'NOK',
+ 'ne' => 'NOK',
+ 'nl' => 'NOK',
+ 'pa' => 'NOK',
+ 'pl' => 'NOK',
+ 'pt' => 'NOK',
+ 'rm' => 'NOK',
+ 'ro' => 'NOK',
+ 'root' => 'kr',
+ 'ru' => 'NOK',
+ 'se' => array(
+ 'DEFAULT' => 'kr',
+ 'SE' => 'Nkr',
+ ),
+ 'si' => 'NOK',
+ 'sk' => 'NOK',
+ 'sl' => 'NOK',
+ 'sr' => 'NOK',
+ 'sv' => 'Nkr',
+ 'sw' => 'NOK',
+ 'ta' => 'NOK',
+ 'te' => 'NOK',
+ 'th' => 'NOK',
+ 'tr' => 'NOK',
+ 'uk' => 'NOK',
+ 'ur' => 'NOK',
+ 'uz' => 'NOK',
+ 'vi' => 'NOK',
+ 'zh' => 'NOK',
+ 'zu' => 'NOK',
+ ),
+ 'NPR' => array(
+ 'af' => 'NPR',
+ 'am' => 'NPR',
+ 'ar' => 'NPR',
+ 'ast' => 'NPR',
+ 'az' => 'NPR',
+ 'bg' => 'NPR',
+ 'bn' => 'NPR',
+ 'bs' => 'NPR',
+ 'ca' => 'NPR',
+ 'cs' => 'NPR',
+ 'da' => 'NPR',
+ 'de' => 'NPR',
+ 'el' => 'NPR',
+ 'en' => array(
+ 'GB' => 'NPR',
+ ),
+ 'es' => 'NPR',
+ 'et' => 'NPR',
+ 'eu' => 'NPR',
+ 'fi' => 'NPR',
+ 'fil' => 'NPR',
+ 'fr' => 'NPR',
+ 'ga' => 'NPR',
+ 'gd' => 'NPR',
+ 'gl' => 'NPR',
+ 'gu' => 'NPR',
+ 'he' => 'NPR',
+ 'hi' => 'NPR',
+ 'hr' => 'NPR',
+ 'hu' => 'NPR',
+ 'hy' => 'NPR',
+ 'id' => 'NPR',
+ 'is' => 'NPR',
+ 'it' => 'NPR',
+ 'ja' => 'NPR',
+ 'ka' => 'NPR',
+ 'kea' => 'NPR',
+ 'kk' => 'NPR',
+ 'km' => 'NPR',
+ 'kn' => 'NPR',
+ 'ko' => 'NPR',
+ 'lb' => 'NPR',
+ 'lo' => 'NPR',
+ 'lt' => 'NPR',
+ 'lv' => 'NPR',
+ 'mk' => 'NPR',
+ 'ml' => 'NPR',
+ 'mn' => 'NPR',
+ 'mr' => 'NPR',
+ 'ms' => 'NPR',
+ 'nb' => 'NPR',
+ 'ne' => 'नेरू',
+ 'nl' => 'NPR',
+ 'pa' => 'NPR',
+ 'pl' => 'NPR',
+ 'pt' => 'NPR',
+ 'ro' => 'NPR',
+ 'root' => 'Rs',
+ 'ru' => 'NPR',
+ 'si' => 'NPR',
+ 'sk' => 'NPR',
+ 'sl' => 'NPR',
+ 'sr' => 'NPR',
+ 'sv' => 'NPR',
+ 'sw' => 'NPR',
+ 'ta' => 'NPR',
+ 'te' => 'NPR',
+ 'th' => 'NPR',
+ 'tr' => 'NPR',
+ 'uk' => 'NPR',
+ 'ur' => 'NPR',
+ 'uz' => 'NPR',
+ 'vi' => 'NPR',
+ 'zh' => 'NPR',
+ ),
+ 'NZD' => array(
+ 'bg' => 'NZD',
+ 'br' => '$ ZN',
+ 'bs' => 'NZD',
+ 'en' => array(
+ 'CK' => '$',
+ 'GB' => 'NZ$',
+ 'NU' => '$',
+ 'NZ' => '$',
+ 'PN' => '$',
+ 'TK' => '$',
+ ),
+ 'es' => 'NZD',
+ 'fa' => '$NZ',
+ 'fi' => 'NZD',
+ 'fr' => array(
+ 'CA' => '$ NZ',
+ 'DEFAULT' => '$NZ',
+ ),
+ 'hr' => 'NZD',
+ 'hu' => 'NZD',
+ 'is' => 'NZD',
+ 'ka' => 'NZD',
+ 'ky' => 'NZD',
+ 'lt' => 'NZD',
+ 'mk' => 'NZD',
+ 'nb' => 'NZD',
+ 'pl' => 'NZD',
+ 'ro' => 'NZD',
+ 'root' => 'NZ$',
+ 'sk' => 'NZD',
+ 'sr' => 'NZD',
+ 'sv' => 'NZD',
+ 'to' => 'NZD$',
+ 'uk' => 'NZD',
+ ),
+ 'OMR' => array(
+ 'ar' => 'ر.ع.‏',
+ 'en' => array(
+ 'GB' => 'OMR',
+ ),
+ ),
+ 'PAB' => array(
+ 'en' => array(
+ 'GB' => 'PAB',
+ ),
+ 'es' => array(
+ 'DEFAULT' => 'PAB',
+ 'PA' => 'B/.',
+ ),
+ ),
+ 'PEI' => array(
+ 'es' => array(
+ 'MX' => 'PEI',
+ ),
+ ),
+ 'PEN' => array(
+ 'en' => array(
+ 'GB' => 'PEN',
+ ),
+ 'es' => array(
+ 'DEFAULT' => 'PEN',
+ 'PE' => 'S/.',
+ ),
+ 'qu' => array(
+ 'BO' => 'PEN',
+ 'DEFAULT' => 'S/.',
+ 'EC' => 'PEN',
+ ),
+ ),
+ 'PES' => array(
+ 'es' => array(
+ 'MX' => 'PES',
+ ),
+ ),
+ 'PGK' => array(
+ 'en' => array(
+ 'GB' => 'PGK',
+ 'PG' => 'K',
+ ),
+ ),
+ 'PHP' => array(
+ 'af' => 'PHP',
+ 'am' => 'PHP',
+ 'ar' => 'PHP',
+ 'ast' => 'PHP',
+ 'az' => 'PHP',
+ 'bg' => 'PHP',
+ 'bn' => 'PHP',
+ 'bs' => 'PHP',
+ 'ca' => 'PHP',
+ 'cs' => 'PHP',
+ 'da' => 'PHP',
+ 'de' => 'PHP',
+ 'el' => 'PHP',
+ 'en' => array(
+ 'GB' => 'PHP',
+ 'PH' => '₱',
+ ),
+ 'es' => array(
+ 'DEFAULT' => 'PHP',
+ 'PH' => '₱',
+ ),
+ 'et' => 'PHP',
+ 'eu' => 'PHP',
+ 'fi' => 'PHP',
+ 'fr' => 'PHP',
+ 'ga' => 'PHP',
+ 'gd' => 'PHP',
+ 'gl' => 'PHP',
+ 'gu' => 'PHP',
+ 'he' => 'PHP',
+ 'hi' => 'PHP',
+ 'hr' => 'PHP',
+ 'hu' => 'PHP',
+ 'hy' => 'PHP',
+ 'id' => 'PHP',
+ 'is' => 'PHP',
+ 'it' => 'PHP',
+ 'ja' => 'PHP',
+ 'ka' => 'PHP',
+ 'kk' => 'PHP',
+ 'km' => 'PHP',
+ 'kn' => 'PHP',
+ 'ko' => 'PHP',
+ 'lb' => 'PHP',
+ 'lo' => 'PHP',
+ 'lt' => 'PHP',
+ 'lv' => 'PHP',
+ 'mk' => 'PHP',
+ 'ml' => 'PHP',
+ 'mn' => 'PHP',
+ 'mr' => 'PHP',
+ 'ms' => 'PHP',
+ 'nb' => 'PHP',
+ 'ne' => 'PHP',
+ 'nl' => 'PHP',
+ 'pa' => 'PHP',
+ 'pl' => 'PHP',
+ 'pt' => 'PHP',
+ 'ro' => 'PHP',
+ 'root' => '₱',
+ 'ru' => 'PHP',
+ 'si' => 'PHP',
+ 'sk' => 'PHP',
+ 'sl' => 'PHP',
+ 'sr' => 'PHP',
+ 'sv' => 'PHP',
+ 'sw' => 'PHP',
+ 'ta' => 'PHP',
+ 'te' => 'PHP',
+ 'th' => 'PHP',
+ 'tr' => 'PHP',
+ 'uk' => 'PHP',
+ 'ur' => 'PHP',
+ 'uz' => 'PHP',
+ 'vi' => 'PHP',
+ 'zh' => 'PHP',
+ ),
+ 'PKR' => array(
+ 'af' => 'PKR',
+ 'am' => 'PKR',
+ 'ar' => 'ر.ب.',
+ 'ast' => 'PKR',
+ 'az' => 'PKR',
+ 'bg' => 'PKR',
+ 'bn' => 'PKR',
+ 'bs' => 'PKR',
+ 'ca' => 'PKR',
+ 'cs' => 'PKR',
+ 'da' => 'PKR',
+ 'de' => 'PKR',
+ 'el' => 'PKR',
+ 'en' => array(
+ 'GB' => 'PKR',
+ 'PK' => 'Rs',
+ ),
+ 'es' => 'PKR',
+ 'et' => 'PKR',
+ 'eu' => 'PKR',
+ 'fi' => 'PKR',
+ 'fil' => 'PKR',
+ 'fr' => 'PKR',
+ 'ga' => 'PKR',
+ 'gd' => 'PKR',
+ 'gl' => 'PKR',
+ 'gu' => 'PKR',
+ 'he' => 'PKR',
+ 'hi' => 'PKR',
+ 'hr' => 'PKR',
+ 'hu' => 'PKR',
+ 'hy' => 'PKR',
+ 'id' => 'PKR',
+ 'is' => 'PKR',
+ 'it' => 'PKR',
+ 'ja' => 'PKR',
+ 'ka' => 'PKR',
+ 'kea' => 'PKR',
+ 'kk' => 'PKR',
+ 'km' => 'PKR',
+ 'kn' => 'PKR',
+ 'ko' => 'PKR',
+ 'lb' => 'PKR',
+ 'lo' => 'PKR',
+ 'lt' => 'PKR',
+ 'lv' => 'PKR',
+ 'mk' => 'PKR',
+ 'ml' => 'PKR',
+ 'mn' => 'PKR',
+ 'mr' => 'PKR',
+ 'ms' => 'PKR',
+ 'nb' => 'PKR',
+ 'ne' => 'PKR',
+ 'nl' => 'PKR',
+ 'pa' => 'ر',
+ 'pl' => 'PKR',
+ 'pt' => 'PKR',
+ 'ro' => 'PKR',
+ 'root' => 'Rs',
+ 'ru' => 'PKR',
+ 'si' => 'PKR',
+ 'sk' => 'PKR',
+ 'sl' => 'PKR',
+ 'sr' => 'PKR',
+ 'sv' => 'PKR',
+ 'sw' => 'PKR',
+ 'ta' => 'PKR',
+ 'te' => 'PKR',
+ 'th' => 'PKR',
+ 'tr' => 'PKR',
+ 'uk' => 'PKR',
+ 'ur' => array(
+ 'DEFAULT' => 'Rs',
+ 'IN' => 'PKR',
+ ),
+ 'uz' => 'PKR',
+ 'vi' => 'PKR',
+ 'zh' => 'PKR',
+ ),
+ 'PLN' => array(
+ 'af' => 'PLN',
+ 'am' => 'PLN',
+ 'ar' => 'PLN',
+ 'az' => 'PLN',
+ 'bg' => 'PLN',
+ 'bn' => 'PLN',
+ 'bs' => 'зл',
+ 'ca' => 'PLN',
+ 'cs' => 'PLN',
+ 'da' => 'PLN',
+ 'de' => 'PLN',
+ 'el' => 'PLN',
+ 'en' => array(
+ 'GB' => 'PLN',
+ ),
+ 'eo' => 'PLN',
+ 'es' => 'PLN',
+ 'et' => 'PLN',
+ 'eu' => 'PLN',
+ 'fi' => 'PLN',
+ 'fil' => 'PLN',
+ 'fr' => 'PLN',
+ 'ga' => 'PLN',
+ 'gd' => 'PLN',
+ 'gl' => 'PLN',
+ 'gu' => 'PLN',
+ 'he' => 'PLN',
+ 'hi' => 'PLN',
+ 'hr' => 'PLN',
+ 'hu' => 'PLN',
+ 'hy' => 'PLN',
+ 'id' => 'PLN',
+ 'is' => 'PLN',
+ 'it' => 'PLN',
+ 'ja' => 'PLN',
+ 'ka' => 'PLN',
+ 'kea' => 'PLN',
+ 'km' => 'PLN',
+ 'kn' => 'PLN',
+ 'ko' => 'PLN',
+ 'ky' => 'PLN',
+ 'lo' => 'PLN',
+ 'lt' => 'PLN',
+ 'lv' => 'PLN',
+ 'mk' => 'PLN',
+ 'ml' => 'PLN',
+ 'mn' => 'PLN',
+ 'mr' => 'PLN',
+ 'ms' => 'PLN',
+ 'nb' => 'PLN',
+ 'ne' => 'PLN',
+ 'nl' => 'PLN',
+ 'pa' => 'PLN',
+ 'pt' => 'PLN',
+ 'rm' => 'PLN',
+ 'ro' => 'PLN',
+ 'root' => 'zł',
+ 'ru' => 'PLN',
+ 'si' => 'PLN',
+ 'sk' => 'PLN',
+ 'sl' => 'PLN',
+ 'sr' => 'PLN',
+ 'sv' => 'PLN',
+ 'sw' => 'PLN',
+ 'ta' => 'PLN',
+ 'te' => 'PLN',
+ 'th' => 'PLN',
+ 'tr' => 'PLN',
+ 'uk' => 'PLN',
+ 'ur' => 'PLN',
+ 'uz' => 'PLN',
+ 'vi' => 'PLN',
+ 'zh' => 'PLN',
+ 'zu' => 'PLN',
+ ),
+ 'PLZ' => array(
+ 'en' => array(
+ 'GB' => 'PLZ',
+ ),
+ ),
+ 'PTE' => array(
+ 'en' => array(
+ 'GB' => 'PTE',
+ ),
+ 'pt' => array(
+ 'CV' => '​PTE',
+ 'DEFAULT' => 'Esc.',
+ 'PT' => '​',
+ ),
+ ),
+ 'PYG' => array(
+ 'af' => 'PYG',
+ 'am' => 'PYG',
+ 'ar' => 'PYG',
+ 'ast' => 'PYG',
+ 'az' => 'PYG',
+ 'bg' => 'PYG',
+ 'bn' => 'PYG',
+ 'bs' => 'PYG',
+ 'ca' => 'PYG',
+ 'cs' => 'PYG',
+ 'da' => 'PYG',
+ 'de' => 'PYG',
+ 'el' => 'PYG',
+ 'en' => array(
+ 'GB' => 'PYG',
+ ),
+ 'es' => array(
+ 'DEFAULT' => 'PYG',
+ 'PY' => '₲',
+ ),
+ 'et' => 'PYG',
+ 'eu' => 'PYG',
+ 'fi' => 'PYG',
+ 'fil' => 'PYG',
+ 'fr' => 'PYG',
+ 'ga' => 'PYG',
+ 'gd' => 'PYG',
+ 'gl' => 'PYG',
+ 'gu' => 'PYG',
+ 'he' => 'PYG',
+ 'hi' => 'PYG',
+ 'hr' => 'PYG',
+ 'hu' => 'PYG',
+ 'hy' => 'PYG',
+ 'id' => 'PYG',
+ 'is' => 'PYG',
+ 'it' => 'PYG',
+ 'ja' => 'PYG',
+ 'ka' => 'PYG',
+ 'km' => 'PYG',
+ 'kn' => 'PYG',
+ 'ko' => 'PYG',
+ 'ky' => 'PYG',
+ 'lo' => 'PYG',
+ 'lt' => 'PYG',
+ 'lv' => 'PYG',
+ 'mk' => 'PYG',
+ 'ml' => 'PYG',
+ 'mn' => 'PYG',
+ 'mr' => 'PYG',
+ 'ms' => 'PYG',
+ 'nb' => 'PYG',
+ 'ne' => 'PYG',
+ 'nl' => 'PYG',
+ 'pa' => 'PYG',
+ 'pl' => 'PYG',
+ 'pt' => 'PYG',
+ 'ro' => 'PYG',
+ 'root' => '₲',
+ 'ru' => 'PYG',
+ 'si' => 'PYG',
+ 'sk' => 'PYG',
+ 'sl' => 'PYG',
+ 'sr' => 'PYG',
+ 'sv' => 'PYG',
+ 'sw' => 'PYG',
+ 'ta' => 'PYG',
+ 'te' => 'PYG',
+ 'th' => 'PYG',
+ 'tr' => 'PYG',
+ 'uk' => 'PYG',
+ 'ur' => 'PYG',
+ 'uz' => 'PYG',
+ 'vi' => 'PYG',
+ 'zh' => 'PYG',
+ ),
+ 'QAR' => array(
+ 'ar' => 'ر.ق.‏',
+ 'en' => array(
+ 'GB' => 'QAR',
+ ),
+ ),
+ 'RHD' => array(
+ 'fr' => '$RH',
+ ),
+ 'ROL' => array(
+ 'en' => array(
+ 'GB' => 'ROL',
+ ),
+ ),
+ 'RON' => array(
+ 'en' => array(
+ 'GB' => 'RON',
+ ),
+ ),
+ 'RSD' => array(
+ 'bs' => 'дин.',
+ 'en' => array(
+ 'GB' => 'RSD',
+ ),
+ ),
+ 'RUB' => array(
+ 'af' => 'RUB',
+ 'am' => 'RUB',
+ 'ar' => 'RUB',
+ 'ast' => 'RUB',
+ 'az' => 'RUB',
+ 'be' => 'рас. руб.',
+ 'bg' => 'руб.',
+ 'bn' => 'RUB',
+ 'bs' => 'RUB',
+ 'ca' => 'RUB',
+ 'cs' => 'RUB',
+ 'da' => 'RUB',
+ 'de' => 'RUB',
+ 'el' => 'RUB',
+ 'en' => array(
+ 'GB' => 'RUB',
+ ),
+ 'eo' => 'RUB',
+ 'es' => 'RUB',
+ 'et' => 'RUB',
+ 'eu' => 'RUB',
+ 'fi' => 'RUB',
+ 'fil' => 'RUB',
+ 'fr' => 'RUB',
+ 'ga' => 'RUB',
+ 'gd' => 'RUB',
+ 'gl' => 'RUB',
+ 'gu' => 'RUB',
+ 'he' => 'RUB',
+ 'hi' => 'RUB',
+ 'hr' => 'RUB',
+ 'hu' => 'RUB',
+ 'hy' => 'RUB',
+ 'id' => 'RUB',
+ 'is' => 'RUB',
+ 'it' => 'RUB',
+ 'ja' => 'RUB',
+ 'ka' => 'RUB',
+ 'kk' => 'руб.',
+ 'km' => 'RUB',
+ 'kn' => 'RUB',
+ 'ko' => 'RUB',
+ 'ky' => 'RUB',
+ 'lo' => 'RUB',
+ 'lt' => 'RUB',
+ 'lv' => 'RUB',
+ 'mk' => 'RUB',
+ 'ml' => 'RUB',
+ 'mn' => 'RUB',
+ 'mr' => 'RUB',
+ 'ms' => 'RUB',
+ 'nb' => 'RUB',
+ 'ne' => 'RUB',
+ 'nl' => 'RUB',
+ 'os' => array(
+ 'RU' => 'руб.',
+ ),
+ 'pa' => 'RUB',
+ 'pl' => 'RUB',
+ 'pt' => 'RUB',
+ 'rm' => 'RUB',
+ 'ro' => 'RUB',
+ 'root' => '₽',
+ 'ru' => 'руб.',
+ 'sah' => 'руб.',
+ 'si' => 'RUB',
+ 'sk' => 'RUB',
+ 'sl' => 'RUB',
+ 'sr' => 'RUB',
+ 'sv' => 'RUB',
+ 'sw' => 'RUB',
+ 'ta' => 'RUB',
+ 'te' => 'RUB',
+ 'th' => 'RUB',
+ 'tr' => 'RUB',
+ 'uk' => 'RUB',
+ 'ur' => 'RUB',
+ 'uz' => 'RUB',
+ 'vi' => 'RUB',
+ 'wae' => 'руб',
+ 'zh' => 'RUB',
+ 'zu' => 'RUB',
+ ),
+ 'RUR' => array(
+ 'ca' => 'RUR',
+ 'cs' => 'RUR',
+ 'de' => 'RUR',
+ 'en' => array(
+ 'GB' => 'RUR',
+ ),
+ 'fi' => 'RUR',
+ 'ga' => 'RUR',
+ 'gd' => 'RUR',
+ 'hr' => 'RUR',
+ 'id' => 'RUR',
+ 'ja' => 'RUR',
+ 'nb' => 'RUR',
+ 'nl' => 'RUR',
+ 'rm' => 'RUR',
+ 'root' => 'р.',
+ 'ru' => array(
+ 'BY' => 'RUR',
+ 'DEFAULT' => 'р.',
+ ),
+ 'th' => 'RUR',
+ 'tr' => 'RUR',
+ 'vi' => 'RUR',
+ 'zh' => 'RUR',
+ ),
+ 'RWF' => array(
+ 'af' => 'RWF',
+ 'am' => 'RWF',
+ 'ar' => 'RWF',
+ 'ast' => 'RWF',
+ 'az' => 'RWF',
+ 'bg' => 'RWF',
+ 'bn' => 'RWF',
+ 'bs' => 'RWF',
+ 'ca' => 'RWF',
+ 'cs' => 'RWF',
+ 'da' => 'RWF',
+ 'de' => 'RWF',
+ 'el' => 'RWF',
+ 'en' => array(
+ 'GB' => 'RWF',
+ 'RW' => 'RF',
+ ),
+ 'es' => 'RWF',
+ 'et' => 'RWF',
+ 'eu' => 'RWF',
+ 'fi' => 'RWF',
+ 'fr' => array(
+ 'DEFAULT' => 'RWF',
+ 'RW' => 'RF',
+ ),
+ 'ga' => 'RWF',
+ 'gd' => 'RWF',
+ 'gl' => 'RWF',
+ 'gu' => 'RWF',
+ 'he' => 'RWF',
+ 'hi' => 'RWF',
+ 'hr' => 'RWF',
+ 'hu' => 'RWF',
+ 'hy' => 'RWF',
+ 'id' => 'RWF',
+ 'is' => 'RWF',
+ 'it' => 'RWF',
+ 'ja' => 'RWF',
+ 'ka' => 'RWF',
+ 'kea' => 'RWF',
+ 'kk' => 'RWF',
+ 'km' => 'RWF',
+ 'kn' => 'RWF',
+ 'ko' => 'RWF',
+ 'lo' => 'RWF',
+ 'lt' => 'RWF',
+ 'lv' => 'RWF',
+ 'mk' => 'RWF',
+ 'ml' => 'RWF',
+ 'mn' => 'RWF',
+ 'mr' => 'RWF',
+ 'ms' => 'RWF',
+ 'nb' => 'RWF',
+ 'ne' => 'RWF',
+ 'nl' => 'RWF',
+ 'pa' => 'RWF',
+ 'pl' => 'RWF',
+ 'pt' => 'RWF',
+ 'ro' => 'RWF',
+ 'root' => 'RF',
+ 'ru' => 'RWF',
+ 'si' => 'RWF',
+ 'sk' => 'RWF',
+ 'sl' => 'RWF',
+ 'sr' => 'RWF',
+ 'sv' => 'RWF',
+ 'sw' => 'RWF',
+ 'ta' => 'RWF',
+ 'te' => 'RWF',
+ 'th' => 'RWF',
+ 'tr' => 'RWF',
+ 'uk' => 'RWF',
+ 'ur' => 'RWF',
+ 'uz' => 'RWF',
+ 'vi' => 'RWF',
+ 'zh' => 'RWF',
+ ),
+ 'SAR' => array(
+ 'ar' => 'ر.س.‏',
+ 'en' => array(
+ 'GB' => 'SAR',
+ ),
+ ),
+ 'SBD' => array(
+ 'af' => 'SBD',
+ 'am' => 'SBD',
+ 'ar' => 'SBD',
+ 'ast' => 'SBD',
+ 'az' => 'SBD',
+ 'bg' => 'SBD',
+ 'bn' => 'SBD',
+ 'bs' => 'SBD',
+ 'ca' => 'SBD',
+ 'cs' => 'SBD',
+ 'da' => 'SBD',
+ 'de' => 'SBD',
+ 'el' => 'SBD',
+ 'en' => array(
+ 'GB' => 'SBD',
+ 'SB' => '$',
+ ),
+ 'es' => 'SBD',
+ 'et' => 'SBD',
+ 'eu' => 'SBD',
+ 'fi' => 'SBD',
+ 'fr' => array(
+ 'CA' => 'SBD',
+ 'DEFAULT' => '$SB',
+ ),
+ 'fy' => 'SI$',
+ 'ga' => 'SBD',
+ 'gd' => 'SBD',
+ 'gl' => 'SBD',
+ 'gu' => 'SBD',
+ 'he' => 'SBD',
+ 'hi' => 'SBD',
+ 'hr' => 'SBD',
+ 'hu' => 'SBD',
+ 'hy' => 'SBD',
+ 'id' => 'SBD',
+ 'is' => 'SBD',
+ 'it' => 'SBD',
+ 'ja' => 'SBD',
+ 'ka' => 'SBD',
+ 'kk' => 'SBD',
+ 'km' => 'SBD',
+ 'kn' => 'SBD',
+ 'ko' => 'SBD',
+ 'ky' => 'SBD',
+ 'lo' => 'SBD',
+ 'lt' => 'SBD',
+ 'lv' => 'SBD',
+ 'mk' => 'SBD',
+ 'ml' => 'SBD',
+ 'mn' => 'SBD',
+ 'mr' => 'SBD',
+ 'ms' => 'SBD',
+ 'nb' => 'SBD',
+ 'ne' => 'SBD',
+ 'nl' => 'SI$',
+ 'pa' => 'SBD',
+ 'pl' => 'SBD',
+ 'pt' => 'SBD',
+ 'ro' => 'SBD',
+ 'root' => '$',
+ 'ru' => 'SBD',
+ 'si' => 'SBD',
+ 'sk' => 'SBD',
+ 'sl' => 'SBD',
+ 'sr' => 'SBD',
+ 'sv' => 'SBD',
+ 'sw' => 'SBD',
+ 'ta' => 'SBD',
+ 'te' => 'SBD',
+ 'th' => 'SBD',
+ 'to' => 'SBD',
+ 'tr' => 'SBD',
+ 'uk' => 'SBD',
+ 'ur' => 'SBD',
+ 'uz' => 'SBD',
+ 'vi' => 'SBD',
+ 'zh' => 'SBD',
+ ),
+ 'SCR' => array(
+ 'en' => array(
+ 'GB' => 'SCR',
+ 'SC' => 'SR',
+ ),
+ 'fr' => array(
+ 'DEFAULT' => 'SCR',
+ 'SC' => 'SR',
+ ),
+ ),
+ 'SDD' => array(
+ 'ar' => 'د.س.‏',
+ ),
+ 'SDG' => array(
+ 'ar' => array(
+ 'DEFAULT' => 'ج.س.',
+ 'LB' => 'SDG',
+ ),
+ 'en' => array(
+ 'GB' => 'SDG',
+ ),
+ ),
+ 'SEK' => array(
+ 'af' => 'SEK',
+ 'am' => 'SEK',
+ 'ar' => 'SEK',
+ 'ast' => 'SEK',
+ 'az' => 'SEK',
+ 'bg' => 'SEK',
+ 'bn' => 'SEK',
+ 'bs' => 'SEK',
+ 'ca' => 'SEK',
+ 'cs' => 'SEK',
+ 'da' => 'SEK',
+ 'de' => 'SEK',
+ 'el' => 'SEK',
+ 'en' => array(
+ 'GB' => 'SEK',
+ ),
+ 'eo' => 'SEK',
+ 'es' => 'SEK',
+ 'et' => 'SEK',
+ 'eu' => 'SEK',
+ 'fi' => 'SEK',
+ 'fil' => 'SEK',
+ 'fr' => 'SEK',
+ 'ga' => 'SEK',
+ 'gd' => 'SEK',
+ 'gl' => 'SEK',
+ 'gu' => 'SEK',
+ 'he' => 'SEK',
+ 'hi' => 'SEK',
+ 'hr' => 'SEK',
+ 'hu' => 'SEK',
+ 'hy' => 'SEK',
+ 'id' => 'SEK',
+ 'is' => 'SEK',
+ 'it' => 'SEK',
+ 'ja' => 'SEK',
+ 'ka' => 'SEK',
+ 'kea' => 'SEK',
+ 'kl' => 'Skr',
+ 'km' => 'SEK',
+ 'kn' => 'SEK',
+ 'ko' => 'SEK',
+ 'ky' => 'SEK',
+ 'lo' => 'SEK',
+ 'lt' => 'SEK',
+ 'lv' => 'SEK',
+ 'mk' => 'SEK',
+ 'ml' => 'SEK',
+ 'mn' => 'SEK',
+ 'mr' => 'SEK',
+ 'ms' => 'SEK',
+ 'nb' => 'SEK',
+ 'ne' => 'SEK',
+ 'nl' => 'SEK',
+ 'pa' => 'SEK',
+ 'pl' => 'SEK',
+ 'pt' => 'SEK',
+ 'rm' => 'SEK',
+ 'ro' => 'SEK',
+ 'root' => 'kr',
+ 'ru' => 'SEK',
+ 'se' => array(
+ 'DEFAULT' => 'Skr',
+ 'SE' => 'kr',
+ ),
+ 'si' => 'SEK',
+ 'sk' => 'SEK',
+ 'sl' => 'SEK',
+ 'sr' => 'SEK',
+ 'sw' => 'SEK',
+ 'ta' => 'SEK',
+ 'te' => 'SEK',
+ 'th' => 'SEK',
+ 'tr' => 'SEK',
+ 'uk' => 'SEK',
+ 'ur' => 'SEK',
+ 'uz' => 'SEK',
+ 'vi' => 'SEK',
+ 'zh' => 'SEK',
+ 'zu' => 'SEK',
+ ),
+ 'SGD' => array(
+ 'af' => 'SGD',
+ 'am' => 'SGD',
+ 'ar' => 'SGD',
+ 'ast' => 'SGD',
+ 'az' => 'SGD',
+ 'bg' => 'SGD',
+ 'bn' => 'SGD',
+ 'bs' => 'SGD',
+ 'ca' => 'SGD',
+ 'cs' => 'SGD',
+ 'da' => 'SGD',
+ 'de' => 'SGD',
+ 'el' => 'SGD',
+ 'en' => array(
+ 'GB' => 'SGD',
+ 'SG' => '$',
+ ),
+ 'es' => 'SGD',
+ 'et' => 'SGD',
+ 'eu' => 'SGD',
+ 'fi' => 'SGD',
+ 'fil' => 'SGD',
+ 'fr' => array(
+ 'CA' => '$ SG',
+ 'DEFAULT' => '$SG',
+ ),
+ 'ga' => 'SGD',
+ 'gd' => 'SGD',
+ 'gl' => 'SGD',
+ 'gu' => 'SGD',
+ 'he' => 'SGD',
+ 'hi' => 'SGD',
+ 'hr' => 'SGD',
+ 'hu' => 'SGD',
+ 'hy' => 'SGD',
+ 'id' => 'SGD',
+ 'is' => 'SGD',
+ 'it' => 'SGD',
+ 'ja' => 'SGD',
+ 'ka' => 'SGD',
+ 'kk' => 'SGD',
+ 'km' => 'SGD',
+ 'kn' => 'SGD',
+ 'ko' => 'SGD',
+ 'lb' => 'SGD',
+ 'lo' => 'SGD',
+ 'lt' => 'SGD',
+ 'lv' => 'SGD',
+ 'mk' => 'SGD',
+ 'ml' => 'SGD',
+ 'mn' => 'SGD',
+ 'mr' => 'SGD',
+ 'ms' => array(
+ 'DEFAULT' => 'SGD',
+ 'SG' => '$',
+ ),
+ 'nb' => 'SGD',
+ 'ne' => 'SGD',
+ 'nl' => 'SGD',
+ 'pa' => 'SGD',
+ 'pl' => 'SGD',
+ 'pt' => 'SGD',
+ 'ro' => 'SGD',
+ 'root' => '$',
+ 'ru' => 'SGD',
+ 'si' => 'SGD',
+ 'sk' => 'SGD',
+ 'sl' => 'SGD',
+ 'sr' => 'SGD',
+ 'sv' => 'SGD',
+ 'sw' => 'SGD',
+ 'ta' => array(
+ 'DEFAULT' => 'SGD',
+ 'MY' => 'S$',
+ 'SG' => '$',
+ ),
+ 'te' => 'SGD',
+ 'th' => 'SGD',
+ 'tr' => 'SGD',
+ 'uk' => 'SGD',
+ 'ur' => 'SGD',
+ 'uz' => 'SGD',
+ 'vi' => 'SGD',
+ 'zh' => array(
+ 'DEFAULT' => 'SGD',
+ 'SG' => '$',
+ ),
+ ),
+ 'SHP' => array(
+ 'af' => 'SHP',
+ 'am' => 'SHP',
+ 'ar' => 'SHP',
+ 'az' => 'SHP',
+ 'bg' => 'SHP',
+ 'bn' => 'SHP',
+ 'bs' => 'SHP',
+ 'ca' => 'SHP',
+ 'cs' => 'SHP',
+ 'da' => 'SHP',
+ 'de' => 'SHP',
+ 'el' => 'SHP',
+ 'en' => array(
+ 'GB' => 'SHP',
+ 'SH' => '£',
+ ),
+ 'es' => 'SHP',
+ 'et' => 'SHP',
+ 'eu' => 'SHP',
+ 'fi' => 'SHP',
+ 'fr' => 'SHP',
+ 'ga' => 'SHP',
+ 'gd' => 'SHP',
+ 'gl' => 'SHP',
+ 'gu' => 'SHP',
+ 'he' => 'SHP',
+ 'hi' => 'SHP',
+ 'hr' => 'SHP',
+ 'hu' => 'SHP',
+ 'hy' => 'SHP',
+ 'id' => 'SHP',
+ 'is' => 'SHP',
+ 'it' => 'SHP',
+ 'ja' => 'SHP',
+ 'ka' => 'SHP',
+ 'kea' => 'SHP',
+ 'kk' => 'SHP',
+ 'km' => 'SHP',
+ 'kn' => 'SHP',
+ 'ko' => 'SHP',
+ 'ky' => 'SHP',
+ 'lo' => 'SHP',
+ 'lt' => 'SHP',
+ 'lv' => 'SHP',
+ 'mk' => 'SHP',
+ 'ml' => 'SHP',
+ 'mn' => 'SHP',
+ 'mr' => 'SHP',
+ 'ms' => 'SHP',
+ 'nb' => 'SHP',
+ 'ne' => 'SHP',
+ 'nl' => 'SHP',
+ 'pa' => 'SHP',
+ 'pl' => 'SHP',
+ 'pt' => 'SHP',
+ 'ro' => 'SHP',
+ 'root' => '£',
+ 'ru' => 'SHP',
+ 'si' => 'SHP',
+ 'sk' => 'SHP',
+ 'sl' => 'SHP',
+ 'sr' => 'SHP',
+ 'sv' => 'SHP',
+ 'sw' => 'SHP',
+ 'ta' => 'SHP',
+ 'te' => 'SHP',
+ 'th' => 'SHP',
+ 'tr' => 'SHP',
+ 'uk' => 'SHP',
+ 'ur' => 'SHP',
+ 'uz' => 'SHP',
+ 'vi' => 'SHP',
+ 'zh' => 'SHP',
+ ),
+ 'SIT' => array(
+ 'en' => array(
+ 'GB' => 'SIT',
+ ),
+ ),
+ 'SKK' => array(
+ 'en' => array(
+ 'GB' => 'SKK',
+ ),
+ ),
+ 'SLL' => array(
+ 'en' => array(
+ 'GB' => 'SLL',
+ 'SL' => 'Le',
+ ),
+ ),
+ 'SOS' => array(
+ 'ar' => array(
+ 'DEFAULT' => 'SOS',
+ 'SO' => 'S',
+ ),
+ 'en' => array(
+ 'GB' => 'SOS',
+ ),
+ 'so' => 'S',
+ ),
+ 'SRD' => array(
+ 'af' => 'SRD',
+ 'am' => 'SRD',
+ 'ar' => 'SRD',
+ 'ast' => 'SRD',
+ 'az' => 'SRD',
+ 'bg' => 'SRD',
+ 'bn' => 'SRD',
+ 'bs' => 'SRD',
+ 'ca' => 'SRD',
+ 'cs' => 'SRD',
+ 'da' => 'SRD',
+ 'de' => 'SRD',
+ 'el' => 'SRD',
+ 'en' => array(
+ 'GB' => 'SRD',
+ ),
+ 'es' => 'SRD',
+ 'et' => 'SRD',
+ 'eu' => 'SRD',
+ 'fi' => 'SRD',
+ 'fil' => 'SRD',
+ 'fr' => array(
+ 'CA' => 'SRD',
+ 'DEFAULT' => '$SR',
+ ),
+ 'ga' => 'SRD',
+ 'gd' => 'SRD',
+ 'gl' => 'SRD',
+ 'gu' => 'SRD',
+ 'he' => 'SRD',
+ 'hi' => 'SRD',
+ 'hr' => 'SRD',
+ 'hu' => 'SRD',
+ 'hy' => 'SRD',
+ 'id' => 'SRD',
+ 'is' => 'SRD',
+ 'it' => 'SRD',
+ 'ja' => 'SRD',
+ 'ka' => 'SRD',
+ 'km' => 'SRD',
+ 'kn' => 'SRD',
+ 'ko' => 'SRD',
+ 'ky' => 'SRD',
+ 'lo' => 'SRD',
+ 'lt' => 'SRD',
+ 'lv' => 'SRD',
+ 'mk' => 'SRD',
+ 'ml' => 'SRD',
+ 'mn' => 'SRD',
+ 'mr' => 'SRD',
+ 'ms' => 'SRD',
+ 'nb' => 'SRD',
+ 'ne' => 'SRD',
+ 'nl' => array(
+ 'DEFAULT' => 'SRD',
+ 'SR' => '$',
+ ),
+ 'pa' => 'SRD',
+ 'pl' => 'SRD',
+ 'pt' => 'SRD',
+ 'ro' => 'SRD',
+ 'root' => '$',
+ 'ru' => 'SRD',
+ 'si' => 'SRD',
+ 'sk' => 'SRD',
+ 'sl' => 'SRD',
+ 'sr' => 'SRD',
+ 'sv' => 'SRD',
+ 'sw' => 'SRD',
+ 'ta' => 'SRD',
+ 'te' => 'SRD',
+ 'th' => 'SRD',
+ 'tr' => 'SRD',
+ 'uk' => 'SRD',
+ 'ur' => 'SRD',
+ 'uz' => 'SRD',
+ 'vi' => 'SRD',
+ 'zh' => 'SRD',
+ ),
+ 'SRG' => array(
+ 'es' => array(
+ 'MX' => 'SRG',
+ ),
+ ),
+ 'SSP' => array(
+ 'af' => 'SSP',
+ 'am' => 'SSP',
+ 'ar' => array(
+ 'DEFAULT' => 'ج.ج.س.',
+ 'SS' => '£',
+ ),
+ 'ast' => 'SSP',
+ 'az' => 'SSP',
+ 'bg' => 'SSP',
+ 'bn' => 'SSP',
+ 'bs' => 'SSP',
+ 'ca' => 'SSP',
+ 'cs' => 'SSP',
+ 'da' => 'SSP',
+ 'de' => 'SSP',
+ 'el' => 'SSP',
+ 'en' => array(
+ 'GB' => 'SSP',
+ 'SS' => '£',
+ ),
+ 'es' => 'SSP',
+ 'et' => 'SSP',
+ 'eu' => 'SSP',
+ 'fi' => 'SSP',
+ 'fr' => 'SSP',
+ 'ga' => 'SSP',
+ 'gd' => 'SSP',
+ 'gl' => 'SSP',
+ 'gu' => 'SSP',
+ 'he' => 'SSP',
+ 'hi' => 'SSP',
+ 'hr' => 'SSP',
+ 'hu' => 'SSP',
+ 'hy' => 'SSP',
+ 'id' => 'SSP',
+ 'is' => 'SSP',
+ 'it' => 'SSP',
+ 'ja' => 'SSP',
+ 'ka' => 'SSP',
+ 'kk' => 'SSP',
+ 'km' => 'SSP',
+ 'kn' => 'SSP',
+ 'ko' => 'SSP',
+ 'lo' => 'SSP',
+ 'lt' => 'SSP',
+ 'lv' => 'SSP',
+ 'mk' => 'SSP',
+ 'ml' => 'SSP',
+ 'mn' => 'SSP',
+ 'mr' => 'SSP',
+ 'ms' => 'SSP',
+ 'nb' => 'SSP',
+ 'ne' => 'SSP',
+ 'nl' => 'SSP',
+ 'pa' => 'SSP',
+ 'pl' => 'SSP',
+ 'pt' => 'SSP',
+ 'ro' => 'SSP',
+ 'root' => '£',
+ 'ru' => 'SSP',
+ 'si' => 'SSP',
+ 'sk' => 'SSP',
+ 'sl' => 'SSP',
+ 'sr' => 'SSP',
+ 'sv' => 'SSP',
+ 'sw' => 'SSP',
+ 'ta' => 'SSP',
+ 'te' => 'SSP',
+ 'th' => 'SSP',
+ 'tr' => 'SSP',
+ 'uk' => 'SSP',
+ 'ur' => 'SSP',
+ 'uz' => 'SSP',
+ 'vi' => 'SSP',
+ 'zh' => 'SSP',
+ ),
+ 'STD' => array(
+ 'af' => 'STD',
+ 'am' => 'STD',
+ 'ar' => 'STD',
+ 'ast' => 'STD',
+ 'az' => 'STD',
+ 'bg' => 'STD',
+ 'bn' => 'STD',
+ 'bs' => 'STD',
+ 'ca' => 'STD',
+ 'cs' => 'STD',
+ 'da' => 'STD',
+ 'de' => 'STD',
+ 'el' => 'STD',
+ 'en' => array(
+ 'GB' => 'STD',
+ ),
+ 'es' => 'STD',
+ 'et' => 'STD',
+ 'eu' => 'STD',
+ 'fi' => 'STD',
+ 'fr' => 'STD',
+ 'ga' => 'STD',
+ 'gd' => 'STD',
+ 'gl' => 'STD',
+ 'gu' => 'STD',
+ 'he' => 'STD',
+ 'hi' => 'STD',
+ 'hr' => 'STD',
+ 'hu' => 'STD',
+ 'hy' => 'STD',
+ 'id' => 'STD',
+ 'is' => 'STD',
+ 'it' => 'STD',
+ 'ja' => 'STD',
+ 'ka' => 'STD',
+ 'kea' => 'STD',
+ 'kk' => 'STD',
+ 'km' => 'STD',
+ 'kn' => 'STD',
+ 'ko' => 'STD',
+ 'lo' => 'STD',
+ 'lt' => 'STD',
+ 'lv' => 'STD',
+ 'mk' => 'STD',
+ 'ml' => 'STD',
+ 'mn' => 'STD',
+ 'mr' => 'STD',
+ 'ms' => 'STD',
+ 'nb' => 'STD',
+ 'ne' => 'STD',
+ 'nl' => 'STD',
+ 'pa' => 'STD',
+ 'pl' => 'STD',
+ 'pt' => array(
+ 'DEFAULT' => 'STD',
+ 'ST' => 'Db',
+ ),
+ 'ro' => 'STD',
+ 'root' => 'Db',
+ 'ru' => 'STD',
+ 'si' => 'STD',
+ 'sk' => 'STD',
+ 'sl' => 'STD',
+ 'sr' => 'STD',
+ 'sv' => 'STD',
+ 'sw' => 'STD',
+ 'ta' => 'STD',
+ 'te' => 'STD',
+ 'th' => 'STD',
+ 'tr' => 'STD',
+ 'uk' => 'STD',
+ 'ur' => 'STD',
+ 'uz' => 'STD',
+ 'vi' => 'STD',
+ 'zh' => 'STD',
+ ),
+ 'SUR' => array(
+ 'en' => array(
+ 'GB' => 'SUR',
+ ),
+ ),
+ 'SVC' => array(
+ 'en' => array(
+ 'GB' => 'SVC',
+ ),
+ 'es' => array(
+ 'MX' => 'SVC',
+ ),
+ ),
+ 'SYP' => array(
+ 'af' => 'SYP',
+ 'am' => 'SYP',
+ 'ar' => 'ل.س.‏',
+ 'ast' => 'SYP',
+ 'az' => 'SYP',
+ 'bg' => 'SYP',
+ 'bn' => 'SYP',
+ 'bs' => 'SYP',
+ 'ca' => 'SYP',
+ 'cs' => 'SYP',
+ 'da' => 'SYP',
+ 'de' => 'SYP',
+ 'el' => 'SYP',
+ 'en' => array(
+ 'GB' => 'SYP',
+ ),
+ 'es' => 'SYP',
+ 'et' => 'SYP',
+ 'eu' => 'SYP',
+ 'fi' => 'SYP',
+ 'fr' => array(
+ 'DEFAULT' => 'SYP',
+ 'SY' => 'LS',
+ ),
+ 'ga' => 'SYP',
+ 'gd' => 'SYP',
+ 'gl' => 'SYP',
+ 'gu' => 'SYP',
+ 'he' => 'SYP',
+ 'hi' => 'SYP',
+ 'hr' => 'SYP',
+ 'hu' => 'SYP',
+ 'hy' => 'SYP',
+ 'id' => 'SYP',
+ 'is' => 'SYP',
+ 'it' => 'SYP',
+ 'ja' => 'SYP',
+ 'ka' => 'SYP',
+ 'kea' => 'SYP',
+ 'kk' => 'SYP',
+ 'km' => 'SYP',
+ 'kn' => 'SYP',
+ 'ko' => 'SYP',
+ 'lo' => 'SYP',
+ 'lt' => 'SYP',
+ 'lv' => 'SYP',
+ 'mk' => 'SYP',
+ 'ml' => 'SYP',
+ 'mn' => 'SYP',
+ 'mr' => 'SYP',
+ 'ms' => 'SYP',
+ 'nb' => 'SYP',
+ 'ne' => 'SYP',
+ 'nl' => 'SYP',
+ 'pa' => 'SYP',
+ 'pl' => 'SYP',
+ 'pt' => 'SYP',
+ 'ro' => 'SYP',
+ 'root' => '£',
+ 'ru' => 'SYP',
+ 'si' => 'SYP',
+ 'sk' => 'SYP',
+ 'sl' => 'SYP',
+ 'sr' => 'SYP',
+ 'sv' => 'SYP',
+ 'sw' => 'SYP',
+ 'ta' => 'SYP',
+ 'te' => 'SYP',
+ 'th' => 'SYP',
+ 'tr' => 'SYP',
+ 'uk' => 'SYP',
+ 'ur' => 'SYP',
+ 'uz' => 'SYP',
+ 'vi' => 'SYP',
+ 'zh' => 'SYP',
+ ),
+ 'SZL' => array(
+ 'en' => array(
+ 'GB' => 'SZL',
+ 'SZ' => 'E',
+ ),
+ 'ss' => 'E',
+ ),
+ 'THB' => array(
+ 'bg' => 'THB',
+ 'cs' => 'THB',
+ 'dz' => 'TH฿',
+ 'en' => array(
+ 'GB' => '฿',
+ ),
+ 'es' => array(
+ 'DEFAULT' => '฿',
+ 419 => 'THB',
+ ),
+ 'fi' => 'THB',
+ 'fr' => array(
+ 'CA' => 'THB',
+ 'DEFAULT' => '฿',
+ ),
+ 'hr' => 'THB',
+ 'hu' => 'THB',
+ 'is' => 'THB',
+ 'ka' => 'THB',
+ 'lt' => 'THB',
+ 'mk' => 'THB',
+ 'nb' => 'THB',
+ 'pl' => 'THB',
+ 'ro' => 'THB',
+ 'root' => '฿',
+ 'sk' => 'THB',
+ 'sr' => 'THB',
+ 'sv' => 'THB',
+ 'th' => 'THB',
+ 'uk' => 'THB',
+ ),
+ 'TJR' => array(
+ 'en' => array(
+ 'GB' => 'TJR',
+ ),
+ ),
+ 'TJS' => array(
+ 'en' => array(
+ 'GB' => 'TJS',
+ ),
+ 'tg' => 'сом',
+ ),
+ 'TMM' => array(
+ 'en' => array(
+ 'GB' => 'TMM',
+ ),
+ ),
+ 'TMT' => array(
+ 'en' => array(
+ 'GB' => 'TMT',
+ ),
+ 'ru' => 'ТМТ',
+ ),
+ 'TND' => array(
+ 'ar' => 'د.ت.‏',
+ 'en' => array(
+ 'GB' => 'TND',
+ ),
+ 'fr' => array(
+ 'DEFAULT' => 'TND',
+ 'TN' => 'DT',
+ ),
+ ),
+ 'TOP' => array(
+ 'af' => 'TOP',
+ 'am' => 'TOP',
+ 'ar' => 'TOP',
+ 'ast' => 'TOP',
+ 'az' => 'TOP',
+ 'bg' => 'TOP',
+ 'bn' => 'TOP',
+ 'bs' => 'TOP',
+ 'ca' => 'TOP',
+ 'cs' => 'TOP',
+ 'da' => 'TOP',
+ 'de' => 'TOP',
+ 'el' => 'TOP',
+ 'en' => array(
+ 'GB' => 'TOP',
+ 'TO' => 'T$',
+ ),
+ 'es' => 'TOP',
+ 'et' => 'TOP',
+ 'eu' => 'TOP',
+ 'fi' => 'TOP',
+ 'fr' => 'TOP',
+ 'ga' => 'TOP',
+ 'gd' => 'TOP',
+ 'gl' => 'TOP',
+ 'gu' => 'TOP',
+ 'he' => 'TOP',
+ 'hi' => 'TOP',
+ 'hr' => 'TOP',
+ 'hu' => 'TOP',
+ 'hy' => 'TOP',
+ 'id' => 'TOP',
+ 'is' => 'TOP',
+ 'it' => 'TOP',
+ 'ja' => 'TOP',
+ 'ka' => 'TOP',
+ 'kea' => 'TOP',
+ 'kk' => 'TOP',
+ 'km' => 'TOP',
+ 'kn' => 'TOP',
+ 'ko' => 'TOP',
+ 'lo' => 'TOP',
+ 'lt' => 'TOP',
+ 'lv' => 'TOP',
+ 'mk' => 'TOP',
+ 'ml' => 'TOP',
+ 'mn' => 'TOP',
+ 'mr' => 'TOP',
+ 'ms' => 'TOP',
+ 'nb' => 'TOP',
+ 'ne' => 'TOP',
+ 'nl' => 'TOP',
+ 'pa' => 'TOP',
+ 'pl' => 'TOP',
+ 'pt' => 'TOP',
+ 'ro' => 'TOP',
+ 'root' => 'T$',
+ 'ru' => 'TOP',
+ 'si' => 'TOP',
+ 'sk' => 'TOP',
+ 'sl' => 'TOP',
+ 'sr' => 'TOP',
+ 'sv' => 'TOP',
+ 'sw' => 'TOP',
+ 'ta' => 'TOP',
+ 'te' => 'TOP',
+ 'th' => 'TOP',
+ 'tr' => 'TOP',
+ 'uk' => 'TOP',
+ 'ur' => 'TOP',
+ 'uz' => 'TOP',
+ 'vi' => 'TOP',
+ 'zh' => 'TOP',
+ ),
+ 'TPE' => array(
+ 'en' => array(
+ 'GB' => 'TPE',
+ ),
+ ),
+ 'TRL' => array(
+ 'en' => array(
+ 'GB' => 'TRL',
+ ),
+ ),
+ 'TRY' => array(
+ 'af' => 'TRY',
+ 'am' => 'TRY',
+ 'ar' => 'ل.ت.',
+ 'az' => 'TRY',
+ 'bg' => 'TRY',
+ 'bn' => 'TRY',
+ 'bs' => 'Тл',
+ 'ca' => 'TRY',
+ 'cs' => 'TRY',
+ 'da' => 'TRY',
+ 'de' => 'TRY',
+ 'el' => 'TRY',
+ 'en' => array(
+ 'GB' => 'TRY',
+ ),
+ 'es' => array(
+ 'DEFAULT' => 'TRY',
+ 'MX' => 'TL',
+ ),
+ 'et' => 'TRY',
+ 'eu' => 'TRY',
+ 'fi' => 'TRY',
+ 'fr' => 'TRY',
+ 'ga' => 'TRY',
+ 'gd' => 'TRY',
+ 'gl' => 'TRY',
+ 'gu' => 'TRY',
+ 'he' => 'TRY',
+ 'hi' => 'TRY',
+ 'hr' => 'TRY',
+ 'hu' => 'TRY',
+ 'hy' => 'TRY',
+ 'id' => 'TRY',
+ 'is' => 'TRY',
+ 'it' => 'TRY',
+ 'ja' => 'TRY',
+ 'ka' => 'TRY',
+ 'kk' => 'TRY',
+ 'km' => 'TRY',
+ 'kn' => 'TRY',
+ 'ko' => 'TRY',
+ 'lo' => 'TRY',
+ 'lt' => 'TRY',
+ 'lv' => 'TRY',
+ 'mk' => 'TRY',
+ 'ml' => 'TRY',
+ 'mn' => 'TRY',
+ 'mr' => 'TRY',
+ 'ms' => 'TRY',
+ 'nb' => 'TRY',
+ 'ne' => 'TRY',
+ 'nl' => 'TRY',
+ 'pa' => 'TRY',
+ 'pl' => 'TRY',
+ 'pt' => 'TRY',
+ 'rm' => 'TRY',
+ 'ro' => 'TRY',
+ 'root' => '₺',
+ 'ru' => 'TRY',
+ 'si' => 'TRY',
+ 'sk' => 'TRY',
+ 'sl' => 'TRY',
+ 'sr' => 'TRY',
+ 'sv' => 'TRY',
+ 'sw' => 'TRY',
+ 'ta' => 'TRY',
+ 'te' => 'TRY',
+ 'th' => 'TRY',
+ 'uk' => 'TRY',
+ 'ur' => 'TRY',
+ 'uz' => 'TRY',
+ 'vi' => 'TRY',
+ 'zh' => 'TRY',
+ 'zu' => 'TRY',
+ ),
+ 'TTD' => array(
+ 'af' => 'TTD',
+ 'am' => 'TTD',
+ 'ar' => 'TTD',
+ 'ast' => 'TTD',
+ 'az' => 'TTD',
+ 'bg' => 'TTD',
+ 'bn' => 'TTD',
+ 'bs' => 'TTD',
+ 'ca' => 'TTD',
+ 'cs' => 'TTD',
+ 'da' => 'TTD',
+ 'de' => 'TTD',
+ 'el' => 'TTD',
+ 'en' => array(
+ 'GB' => 'TTD',
+ 'TT' => '$',
+ ),
+ 'es' => 'TTD',
+ 'et' => 'TTD',
+ 'eu' => 'TTD',
+ 'fi' => 'TTD',
+ 'fil' => 'TTD',
+ 'fr' => array(
+ 'CA' => 'TTD',
+ 'DEFAULT' => '$TT',
+ ),
+ 'ga' => 'TTD',
+ 'gd' => 'TTD',
+ 'gl' => 'TTD',
+ 'gu' => 'TTD',
+ 'he' => 'TTD',
+ 'hi' => 'TTD',
+ 'hr' => 'TTD',
+ 'hu' => 'TTD',
+ 'hy' => 'TTD',
+ 'id' => 'TTD',
+ 'is' => 'TTD',
+ 'it' => 'TTD',
+ 'ja' => 'TTD',
+ 'ka' => 'TTD',
+ 'kk' => 'TTD',
+ 'km' => 'TTD',
+ 'kn' => 'TTD',
+ 'ko' => 'TTD',
+ 'ky' => 'TTD',
+ 'lo' => 'TTD',
+ 'lt' => 'TTD',
+ 'lv' => 'TTD',
+ 'mk' => 'TTD',
+ 'ml' => 'TTD',
+ 'mn' => 'TTD',
+ 'mr' => 'TTD',
+ 'ms' => 'TTD',
+ 'nb' => 'TTD',
+ 'ne' => 'TTD',
+ 'nl' => 'TTD',
+ 'pa' => 'TTD',
+ 'pl' => 'TTD',
+ 'pt' => 'TTD',
+ 'ro' => 'TTD',
+ 'root' => '$',
+ 'ru' => 'TTD',
+ 'si' => 'TTD',
+ 'sk' => 'TTD',
+ 'sl' => 'TTD',
+ 'sr' => 'TTD',
+ 'sv' => 'TTD',
+ 'sw' => 'TTD',
+ 'ta' => 'TTD',
+ 'te' => 'TTD',
+ 'th' => 'TTD',
+ 'tr' => 'TTD',
+ 'uk' => 'TTD',
+ 'ur' => 'TTD',
+ 'uz' => 'TTD',
+ 'vi' => 'TTD',
+ 'zh' => 'TTD',
+ 'zu' => 'TTD',
+ ),
+ 'TWD' => array(
+ 'bg' => 'TWD',
+ 'br' => '$',
+ 'en' => array(
+ 'GB' => 'NT$',
+ ),
+ 'es' => 'TWD',
+ 'fi' => 'TWD',
+ 'fr' => 'TWD',
+ 'gl' => '$NT',
+ 'hr' => 'TWD',
+ 'hu' => 'TWD',
+ 'is' => 'TWD',
+ 'it' => 'TWD',
+ 'ky' => 'TWD',
+ 'lt' => 'TWD',
+ 'mk' => 'TWD',
+ 'nb' => 'TWD',
+ 'pl' => 'TWD',
+ 'ro' => 'TWD',
+ 'root' => 'NT$',
+ 'sk' => 'TWD',
+ 'sv' => 'TWD',
+ 'uk' => 'TWD',
+ ),
+ 'TZS' => array(
+ 'asa' => 'TSh',
+ 'bez' => 'TSh',
+ 'en' => array(
+ 'GB' => 'TZS',
+ 'TZ' => 'TSh',
+ ),
+ 'jmc' => 'TSh',
+ 'kde' => 'TSh',
+ 'ksb' => 'TSh',
+ 'lag' => 'TSh',
+ 'mas' => array(
+ 'TZ' => 'TSh',
+ ),
+ 'rof' => 'TSh',
+ 'rwk' => 'TSh',
+ 'sbp' => 'TSh',
+ 'sw' => 'TSh',
+ 'vun' => 'TSh',
+ ),
+ 'UAH' => array(
+ 'af' => 'UAH',
+ 'am' => 'UAH',
+ 'ar' => 'UAH',
+ 'az' => 'UAH',
+ 'bg' => 'UAH',
+ 'bn' => 'UAH',
+ 'bs' => 'UAH',
+ 'ca' => 'UAH',
+ 'cs' => 'UAH',
+ 'da' => 'UAH',
+ 'de' => 'UAH',
+ 'el' => 'UAH',
+ 'en' => array(
+ 'GB' => 'UAH',
+ ),
+ 'es' => 'UAH',
+ 'et' => 'UAH',
+ 'eu' => 'UAH',
+ 'fi' => 'UAH',
+ 'fil' => 'UAH',
+ 'fr' => 'UAH',
+ 'ga' => 'UAH',
+ 'gd' => 'UAH',
+ 'gl' => 'UAH',
+ 'gu' => 'UAH',
+ 'he' => 'UAH',
+ 'hi' => 'UAH',
+ 'hr' => 'UAH',
+ 'hu' => 'UAH',
+ 'hy' => 'UAH',
+ 'id' => 'UAH',
+ 'is' => 'UAH',
+ 'it' => 'UAH',
+ 'ja' => 'UAH',
+ 'ka' => 'UAH',
+ 'km' => 'UAH',
+ 'kn' => 'UAH',
+ 'ko' => 'UAH',
+ 'ky' => 'UAH',
+ 'lo' => 'UAH',
+ 'lt' => 'UAH',
+ 'lv' => 'UAH',
+ 'mk' => 'UAH',
+ 'ml' => 'UAH',
+ 'mn' => 'UAH',
+ 'mr' => 'UAH',
+ 'ms' => 'UAH',
+ 'nb' => 'UAH',
+ 'ne' => 'UAH',
+ 'nl' => 'UAH',
+ 'pa' => 'UAH',
+ 'pl' => 'UAH',
+ 'pt' => 'UAH',
+ 'ro' => 'UAH',
+ 'root' => '₴',
+ 'si' => 'UAH',
+ 'sk' => 'UAH',
+ 'sl' => 'UAH',
+ 'sr' => 'UAH',
+ 'sv' => 'UAH',
+ 'sw' => 'UAH',
+ 'ta' => 'UAH',
+ 'te' => 'UAH',
+ 'th' => 'UAH',
+ 'tr' => 'UAH',
+ 'ur' => 'UAH',
+ 'uz' => 'UAH',
+ 'vi' => 'UAH',
+ 'zh' => 'UAH',
+ ),
+ 'UAK' => array(
+ 'en' => array(
+ 'GB' => 'UAK',
+ ),
+ 'uk' => 'крб.',
+ ),
+ 'UGX' => array(
+ 'cgg' => 'USh',
+ 'en' => array(
+ 'GB' => 'UGX',
+ 'UG' => 'USh',
+ ),
+ 'lg' => 'USh',
+ 'nyn' => 'USh',
+ 'sw' => array(
+ 'DEFAULT' => 'UGX',
+ 'UG' => 'USh',
+ ),
+ 'teo' => 'USh',
+ 'xog' => 'USh',
+ ),
+ 'USD' => array(
+ 'ast' => '$',
+ 'be' => '$',
+ 'bg' => 'щ.д.',
+ 'br' => '$ SU',
+ 'bs' => 'USD',
+ 'ca' => 'USD',
+ 'chr' => '$',
+ 'da' => '$',
+ 'de' => '$',
+ 'dsb' => '$',
+ 'el' => '$',
+ 'en' => array(
+ 001 => 'US$',
+ 'CA' => 'US$',
+ 'DEFAULT' => '$',
+ 'GB' => '$',
+ ),
+ 'es' => array(
+ 'AR' => 'US$',
+ 'CL' => 'US$',
+ 'CO' => 'US$',
+ 'CU' => 'US$',
+ 'DEFAULT' => '$',
+ 'DO' => 'US$',
+ 'EC' => '$',
+ 'PR' => '$',
+ 'SV' => '$',
+ 'US' => '$',
+ 'UY' => 'US$',
+ 419 => 'USD',
+ ),
+ 'et' => '$',
+ 'fa' => '$',
+ 'fi' => '$',
+ 'fil' => '$',
+ 'fr' => array(
+ 'CA' => '$ US',
+ 'DEFAULT' => '$US',
+ ),
+ 'ga' => '$',
+ 'gd' => '$',
+ 'gl' => '$',
+ 'gsw' => '$',
+ 'haw' => '$',
+ 'he' => '$',
+ 'hi' => '$',
+ 'hr' => 'USD',
+ 'hsb' => '$',
+ 'hu' => 'USD',
+ 'hy' => '$',
+ 'is' => 'USD',
+ 'ja' => '$',
+ 'kk' => '$',
+ 'km' => '$',
+ 'kn' => '$',
+ 'ky' => 'USD',
+ 'lb' => '$',
+ 'lkt' => '$',
+ 'lt' => 'USD',
+ 'lv' => '$',
+ 'ml' => '$',
+ 'mn' => '$',
+ 'mr' => '$',
+ 'ms' => 'USD',
+ 'nb' => 'USD',
+ 'nl' => array(
+ 'BQ' => '$',
+ 'DEFAULT' => 'US$',
+ ),
+ 'os' => '$',
+ 'pl' => 'USD',
+ 'qu' => array(
+ 'EC' => '$',
+ ),
+ 'rm' => '$',
+ 'ro' => 'USD',
+ 'root' => 'US$',
+ 'ru' => '$',
+ 'sk' => 'USD',
+ 'sl' => '$',
+ 'ta' => array(
+ 'DEFAULT' => '$',
+ 'SG' => 'US$',
+ ),
+ 'te' => '$',
+ 'tr' => '$',
+ 'ug' => '$',
+ 'uk' => 'USD',
+ 'ur' => '$',
+ 'wae' => '$',
+ 'zh' => array(
+ 'DEFAULT' => '$',
+ 'HK' => 'US$',
+ ),
+ ),
+ 'USN' => array(
+ 'en' => array(
+ 'GB' => 'USN',
+ ),
+ 'es' => array(
+ 'MX' => 'USN',
+ ),
+ ),
+ 'USS' => array(
+ 'en' => array(
+ 'GB' => 'USS',
+ ),
+ 'es' => array(
+ 'MX' => 'USS',
+ ),
+ ),
+ 'UYI' => array(
+ 'es' => array(
+ 'MX' => 'UYI',
+ ),
+ ),
+ 'UYU' => array(
+ 'af' => 'UYU',
+ 'am' => 'UYU',
+ 'ar' => 'UYU',
+ 'ast' => 'UYU',
+ 'az' => 'UYU',
+ 'bg' => 'UYU',
+ 'bn' => 'UYU',
+ 'bs' => 'UYU',
+ 'ca' => 'UYU',
+ 'cs' => 'UYU',
+ 'da' => 'UYU',
+ 'de' => 'UYU',
+ 'el' => 'UYU',
+ 'en' => array(
+ 'GB' => 'UYU',
+ ),
+ 'es' => array(
+ 'DEFAULT' => 'UYU',
+ 'UY' => '$',
+ ),
+ 'et' => 'UYU',
+ 'eu' => 'UYU',
+ 'fi' => 'UYU',
+ 'fil' => 'UYU',
+ 'fr' => array(
+ 'CA' => 'UYU',
+ 'DEFAULT' => '$UY',
+ ),
+ 'ga' => 'UYU',
+ 'gd' => 'UYU',
+ 'gl' => 'UYU',
+ 'gu' => 'UYU',
+ 'he' => 'UYU',
+ 'hi' => 'UYU',
+ 'hr' => 'UYU',
+ 'hu' => 'UYU',
+ 'hy' => 'UYU',
+ 'id' => '$U',
+ 'is' => 'UYU',
+ 'it' => 'UYU',
+ 'ja' => 'UYU',
+ 'ka' => 'UYU',
+ 'km' => 'UYU',
+ 'kn' => 'UYU',
+ 'ko' => 'UYU',
+ 'ky' => 'UYU',
+ 'lo' => 'UYU',
+ 'lt' => 'UYU',
+ 'lv' => 'UYU',
+ 'mk' => 'UYU',
+ 'ml' => 'UYU',
+ 'mn' => 'UYU',
+ 'mr' => 'UYU',
+ 'ms' => 'UYU',
+ 'nb' => 'UYU',
+ 'ne' => 'UYU',
+ 'nl' => 'UYU',
+ 'pa' => 'UYU',
+ 'pl' => 'UYU',
+ 'pt' => 'UYU',
+ 'ro' => 'UYU',
+ 'root' => '$',
+ 'ru' => 'UYU',
+ 'si' => 'UYU',
+ 'sk' => 'UYU',
+ 'sl' => 'UYU',
+ 'sr' => 'UYU',
+ 'sv' => 'UYU',
+ 'sw' => 'UYU',
+ 'ta' => 'UYU',
+ 'te' => 'UYU',
+ 'th' => 'UYU',
+ 'tr' => 'UYU',
+ 'uk' => 'UYU',
+ 'ur' => 'UYU',
+ 'uz' => 'UYU',
+ 'vi' => 'UYU',
+ 'zh' => 'UYU',
+ ),
+ 'UZS' => array(
+ 'en' => array(
+ 'GB' => 'UZS',
+ ),
+ 'uz' => 'сўм',
+ ),
+ 'VEF' => array(
+ 'af' => 'VEF',
+ 'am' => 'VEF',
+ 'ar' => 'VEF',
+ 'ast' => 'VEF',
+ 'az' => 'VEF',
+ 'bg' => 'VEF',
+ 'bn' => 'VEF',
+ 'bs' => 'VEF',
+ 'ca' => 'VEF',
+ 'cs' => 'VEF',
+ 'da' => 'VEF',
+ 'de' => 'VEF',
+ 'el' => 'VEF',
+ 'en' => array(
+ 'GB' => 'VEF',
+ ),
+ 'es' => array(
+ 'DEFAULT' => 'VEF',
+ 'VE' => 'Bs.',
+ ),
+ 'et' => 'VEF',
+ 'eu' => 'VEF',
+ 'fi' => 'VEF',
+ 'fil' => 'VEF',
+ 'fr' => 'VEF',
+ 'ga' => 'VEF',
+ 'gd' => 'VEF',
+ 'gl' => 'VEF',
+ 'gu' => 'VEF',
+ 'he' => 'VEF',
+ 'hi' => 'VEF',
+ 'hr' => 'VEF',
+ 'hu' => 'VEF',
+ 'hy' => 'VEF',
+ 'id' => 'VEF',
+ 'is' => 'VEF',
+ 'it' => 'VEF',
+ 'ja' => 'VEF',
+ 'ka' => 'VEF',
+ 'kea' => 'VEF',
+ 'km' => 'VEF',
+ 'kn' => 'VEF',
+ 'ko' => 'VEF',
+ 'ky' => 'VEF',
+ 'lo' => 'VEF',
+ 'lt' => 'VEF',
+ 'lv' => 'VEF',
+ 'mk' => 'VEF',
+ 'ml' => 'VEF',
+ 'mn' => 'VEF',
+ 'mr' => 'VEF',
+ 'ms' => 'VEF',
+ 'nb' => 'VEF',
+ 'ne' => 'VEF',
+ 'nl' => 'VEF',
+ 'pa' => 'VEF',
+ 'pl' => 'VEF',
+ 'pt' => 'VEF',
+ 'ro' => 'VEF',
+ 'root' => 'Bs',
+ 'ru' => 'VEF',
+ 'si' => 'VEF',
+ 'sk' => 'VEF',
+ 'sl' => 'VEF',
+ 'sr' => 'VEF',
+ 'sv' => 'VEF',
+ 'sw' => 'VEF',
+ 'ta' => 'VEF',
+ 'te' => 'VEF',
+ 'th' => 'VEF',
+ 'tr' => 'VEF',
+ 'uk' => 'VEF',
+ 'ur' => 'VEF',
+ 'uz' => 'VEF',
+ 'vi' => 'VEF',
+ 'zh' => 'VEF',
+ ),
+ 'VND' => array(
+ 'bg' => 'VND',
+ 'cs' => 'VND',
+ 'en' => array(
+ 'GB' => '₫',
+ ),
+ 'es' => array(
+ 'DEFAULT' => '₫',
+ 419 => 'VND',
+ ),
+ 'fi' => 'VND',
+ 'fr' => array(
+ 'CA' => 'VND',
+ 'DEFAULT' => '₫',
+ ),
+ 'hr' => 'VND',
+ 'hu' => 'VND',
+ 'is' => 'VND',
+ 'ka' => 'VND',
+ 'lt' => 'VND',
+ 'mk' => 'VND',
+ 'nb' => 'VND',
+ 'pl' => 'VND',
+ 'ro' => 'VND',
+ 'root' => '₫',
+ 'sk' => 'VND',
+ 'sr' => 'VND',
+ 'sv' => 'VND',
+ 'uk' => 'VND',
+ ),
+ 'VNN' => array(
+ 'en' => array(
+ 'GB' => 'VNN',
+ ),
+ ),
+ 'VUV' => array(
+ 'en' => array(
+ 'GB' => 'VUV',
+ 'VU' => 'VT',
+ ),
+ 'fr' => array(
+ 'DEFAULT' => 'VUV',
+ 'VU' => 'VT',
+ ),
+ ),
+ 'WST' => array(
+ 'en' => array(
+ 'GB' => 'WST',
+ 'WS' => 'WS$',
+ ),
+ 'fr' => array(
+ 'CA' => 'WST',
+ 'DEFAULT' => 'WS$',
+ ),
+ ),
+ 'XAF' => array(
+ 'dz' => 'XAF',
+ 'en' => array(
+ 'GB' => 'FCFA',
+ ),
+ 'es' => array(
+ 'DEFAULT' => 'XAF',
+ 'GQ' => 'FCFA',
+ ),
+ 'fr' => array(
+ 'CA' => 'XAF',
+ 'DEFAULT' => 'FCFA',
+ ),
+ 'lt' => 'XAF',
+ 'nb' => 'XAF',
+ 'root' => 'FCFA',
+ ),
+ 'XAG' => array(
+ 'en' => array(
+ 'GB' => 'XAG',
+ ),
+ ),
+ 'XAU' => array(
+ 'en' => array(
+ 'GB' => 'XAU',
+ ),
+ ),
+ 'XBA' => array(
+ 'en' => array(
+ 'GB' => 'XBA',
+ ),
+ ),
+ 'XBB' => array(
+ 'cs' => 'EMU',
+ 'en' => array(
+ 'GB' => 'XBB',
+ ),
+ ),
+ 'XBC' => array(
+ 'en' => array(
+ 'GB' => 'XBC',
+ ),
+ ),
+ 'XBD' => array(
+ 'en' => array(
+ 'GB' => 'XBD',
+ ),
+ ),
+ 'XCD' => array(
+ 'bg' => 'XCD',
+ 'bs' => 'XCD',
+ 'ca' => 'XCD',
+ 'en' => array(
+ 'AG' => '$',
+ 'AI' => '$',
+ 'DM' => '$',
+ 'GB' => 'EC$',
+ 'GD' => '$',
+ 'KN' => '$',
+ 'LC' => '$',
+ 'MS' => '$',
+ 'VC' => '$',
+ ),
+ 'es' => 'XCD',
+ 'fa' => '$EC',
+ 'fi' => 'XCD',
+ 'fr' => 'XCD',
+ 'hr' => 'XCD',
+ 'hu' => 'XCD',
+ 'ky' => 'XCD',
+ 'lt' => 'XCD',
+ 'nb' => 'XCD',
+ 'ro' => 'XCD',
+ 'root' => 'EC$',
+ 'uk' => 'XCD',
+ ),
+ 'XDR' => array(
+ 'en' => array(
+ 'GB' => 'XDR',
+ ),
+ 'fr' => 'DTS',
+ ),
+ 'XEU' => array(
+ 'cs' => 'ECU',
+ 'en' => array(
+ 'GB' => 'XEU',
+ ),
+ ),
+ 'XFO' => array(
+ 'en' => array(
+ 'GB' => 'XFO',
+ ),
+ ),
+ 'XFU' => array(
+ 'en' => array(
+ 'GB' => 'XFU',
+ ),
+ ),
+ 'XOF' => array(
+ 'ca' => 'XOF',
+ 'en' => array(
+ 'GB' => 'CFA',
+ ),
+ 'es' => 'XOF',
+ 'fr' => array(
+ 'CA' => 'XOF',
+ 'DEFAULT' => 'CFA',
+ ),
+ 'lt' => 'XOF',
+ 'root' => 'CFA',
+ 'si' => 'සිෆ්එ',
+ ),
+ 'XPD' => array(
+ 'en' => array(
+ 'GB' => 'XPD',
+ ),
+ ),
+ 'XPF' => array(
+ 'bs' => 'XPF',
+ 'en' => array(
+ 'GB' => 'CFPF',
+ ),
+ 'es' => array(
+ 'DEFAULT' => 'CFPF',
+ 'MX' => 'XPF',
+ ),
+ 'fi' => 'XPF',
+ 'fr' => array(
+ 'CA' => 'XPF',
+ 'DEFAULT' => 'FCFP',
+ ),
+ 'fy' => 'XPF',
+ 'hr' => 'XPF',
+ 'lt' => 'XPF',
+ 'nb' => 'XPF',
+ 'nl' => 'XPF',
+ 'root' => 'CFPF',
+ ),
+ 'XPT' => array(
+ 'en' => array(
+ 'GB' => 'XPT',
+ ),
+ ),
+ 'XRE' => array(
+ 'en' => array(
+ 'GB' => 'XRE',
+ ),
+ ),
+ 'XSU' => array(
+ 'en' => array(
+ 'GB' => 'XSU',
+ ),
+ ),
+ 'XTS' => array(
+ 'en' => array(
+ 'GB' => 'XTS',
+ ),
+ ),
+ 'XUA' => array(
+ 'en' => array(
+ 'GB' => 'XUA',
+ ),
+ ),
+ 'XXX' => array(
+ 'ar' => '***',
+ 'en' => array(
+ 'GB' => 'XXX',
+ ),
+ 'ru' => 'XXXX',
+ ),
+ 'YDD' => array(
+ 'en' => array(
+ 'GB' => 'YDD',
+ ),
+ ),
+ 'YER' => array(
+ 'ar' => 'ر.ي.‏',
+ 'en' => array(
+ 'GB' => 'YER',
+ ),
+ ),
+ 'YUD' => array(
+ 'en' => array(
+ 'GB' => 'YUD',
+ ),
+ ),
+ 'YUM' => array(
+ 'en' => array(
+ 'GB' => 'YUM',
+ ),
+ ),
+ 'YUN' => array(
+ 'en' => array(
+ 'GB' => 'YUN',
+ ),
+ ),
+ 'YUR' => array(
+ 'en' => array(
+ 'GB' => 'YUR',
+ ),
+ ),
+ 'ZAL' => array(
+ 'en' => array(
+ 'GB' => 'ZAL',
+ ),
+ ),
+ 'ZAR' => array(
+ 'am' => 'ZAR',
+ 'ar' => 'ZAR',
+ 'ast' => 'ZAR',
+ 'az' => 'ZAR',
+ 'bg' => 'ZAR',
+ 'bn' => 'ZAR',
+ 'bs' => 'ZAR',
+ 'ca' => 'ZAR',
+ 'cs' => 'ZAR',
+ 'da' => 'ZAR',
+ 'de' => 'ZAR',
+ 'el' => 'ZAR',
+ 'en' => array(
+ 'GB' => 'ZAR',
+ 'LS' => 'R',
+ 'ZA' => 'R',
+ ),
+ 'eo' => 'ZAR',
+ 'es' => 'ZAR',
+ 'et' => 'ZAR',
+ 'eu' => 'ZAR',
+ 'fi' => 'ZAR',
+ 'fr' => 'ZAR',
+ 'ga' => 'ZAR',
+ 'gd' => 'ZAR',
+ 'gl' => 'ZAR',
+ 'gu' => 'ZAR',
+ 'he' => 'ZAR',
+ 'hi' => 'ZAR',
+ 'hr' => 'ZAR',
+ 'hu' => 'ZAR',
+ 'hy' => 'ZAR',
+ 'id' => 'ZAR',
+ 'is' => 'ZAR',
+ 'it' => 'ZAR',
+ 'ja' => 'ZAR',
+ 'ka' => 'ZAR',
+ 'kea' => 'ZAR',
+ 'kk' => 'ZAR',
+ 'km' => 'ZAR',
+ 'kn' => 'ZAR',
+ 'ko' => 'ZAR',
+ 'lo' => 'ZAR',
+ 'lt' => 'ZAR',
+ 'lv' => 'ZAR',
+ 'mk' => 'ZAR',
+ 'ml' => 'ZAR',
+ 'mn' => 'ZAR',
+ 'mr' => 'ZAR',
+ 'ms' => 'ZAR',
+ 'nb' => 'ZAR',
+ 'ne' => 'ZAR',
+ 'nl' => 'ZAR',
+ 'pa' => 'ZAR',
+ 'pl' => 'ZAR',
+ 'pt' => 'ZAR',
+ 'ro' => 'ZAR',
+ 'root' => 'R',
+ 'ru' => 'ZAR',
+ 'si' => 'ZAR',
+ 'sk' => 'ZAR',
+ 'sl' => 'ZAR',
+ 'sr' => 'ZAR',
+ 'sv' => 'ZAR',
+ 'sw' => 'ZAR',
+ 'ta' => 'ZAR',
+ 'te' => 'ZAR',
+ 'th' => 'ZAR',
+ 'tr' => 'ZAR',
+ 'uk' => 'ZAR',
+ 'ur' => 'ZAR',
+ 'vi' => 'ZAR',
+ 'zh' => 'ZAR',
+ ),
+ 'ZMK' => array(
+ 'en' => array(
+ 'GB' => 'ZMK',
+ ),
+ ),
+ 'ZMW' => array(
+ 'af' => 'ZMW',
+ 'am' => 'ZMW',
+ 'ar' => 'ZMW',
+ 'ast' => 'ZMW',
+ 'az' => 'ZMW',
+ 'bem' => 'K',
+ 'bg' => 'ZMW',
+ 'bn' => 'ZMW',
+ 'bs' => 'ZMW',
+ 'ca' => 'ZMW',
+ 'cs' => 'ZMW',
+ 'da' => 'ZMW',
+ 'de' => 'ZMW',
+ 'el' => 'ZMW',
+ 'en' => array(
+ 'GB' => 'ZMW',
+ 'ZM' => 'K',
+ ),
+ 'es' => array(
+ 'DEFAULT' => 'ZMW',
+ 419 => 'ZMK',
+ ),
+ 'et' => 'ZMW',
+ 'eu' => 'ZMW',
+ 'fi' => 'ZMW',
+ 'fr' => 'ZMW',
+ 'ga' => 'ZMW',
+ 'gd' => 'ZMW',
+ 'gl' => 'ZMW',
+ 'gu' => 'ZMW',
+ 'he' => 'ZMW',
+ 'hi' => 'ZMW',
+ 'hr' => 'ZMW',
+ 'hu' => 'ZMW',
+ 'hy' => 'ZMW',
+ 'id' => 'ZMW',
+ 'is' => 'ZMW',
+ 'it' => 'ZMW',
+ 'ja' => 'ZMW',
+ 'ka' => 'ZMW',
+ 'kea' => 'ZMW',
+ 'kk' => 'ZMW',
+ 'km' => 'ZMW',
+ 'kn' => 'ZMW',
+ 'ko' => 'ZMW',
+ 'lo' => 'ZMW',
+ 'lt' => 'ZMW',
+ 'lv' => 'ZMW',
+ 'mk' => 'ZMW',
+ 'ml' => 'ZMW',
+ 'mn' => 'ZMW',
+ 'mr' => 'ZMW',
+ 'ms' => 'ZMW',
+ 'nb' => 'ZMW',
+ 'ne' => 'ZMW',
+ 'nl' => 'ZMW',
+ 'pa' => 'ZMW',
+ 'pl' => 'ZMW',
+ 'pt' => 'ZMW',
+ 'ro' => 'ZMW',
+ 'root' => 'ZK',
+ 'ru' => 'ZMW',
+ 'si' => 'ZMW',
+ 'sk' => 'ZMW',
+ 'sl' => 'ZMW',
+ 'sr' => 'ZMW',
+ 'sv' => 'ZMW',
+ 'sw' => 'ZMW',
+ 'ta' => 'ZMW',
+ 'te' => 'ZMW',
+ 'th' => 'ZMW',
+ 'tr' => 'ZMW',
+ 'uk' => 'ZMW',
+ 'ur' => 'ZMW',
+ 'uz' => 'ZMW',
+ 'vi' => 'ZMW',
+ 'zh' => 'ZMW',
+ ),
+);
diff --git a/MLEB/cldr/CldrNames.php b/MLEB/cldr/CldrNames.php
new file mode 100644
index 00000000..2e051ccd
--- /dev/null
+++ b/MLEB/cldr/CldrNames.php
@@ -0,0 +1,30 @@
+<?php
+
+/**
+ * A base class for querying translated names from CLDR data.
+ *
+ * @author Niklas Laxström
+ * @author Ryan Kaldari
+ * @copyright Copyright © 2007-2012
+ * @license http://www.gnu.org/copyleft/gpl.html GNU General Public License 2.0 or later
+ */
+class CldrNames {
+
+ /**
+ * Get the name for the file that contains the CLDR data for a given language
+ * @param string $code language code
+ * @return string
+ */
+ public static function getFileName( $code ) {
+ return Language::getFileName( "CldrNames", $code, '.php' );
+ }
+
+ /**
+ * Get the name for the file that contains the local override data for a given language
+ * @param string $code language code
+ * @return string
+ */
+ public static function getOverrideFileName( $code ) {
+ return Language::getFileName( "LocalNames", $code, '.php' );
+ }
+}
diff --git a/MLEB/cldr/CldrNames/CldrNamesAa.php b/MLEB/cldr/CldrNames/CldrNamesAa.php
new file mode 100644
index 00000000..fef67da6
--- /dev/null
+++ b/MLEB/cldr/CldrNames/CldrNamesAa.php
@@ -0,0 +1,11 @@
+<?php
+
+$languageNames = array(
+ 'aa' => 'Qafar',
+);
+
+$countryNames = array(
+ 'DJ' => 'Yabuuti',
+ 'ER' => 'Eretria',
+ 'ET' => 'Otobbia',
+);
diff --git a/MLEB/cldr/CldrNames/CldrNamesAf.php b/MLEB/cldr/CldrNames/CldrNamesAf.php
new file mode 100644
index 00000000..429b2387
--- /dev/null
+++ b/MLEB/cldr/CldrNames/CldrNamesAf.php
@@ -0,0 +1,965 @@
+<?php
+
+$languageNames = array(
+ 'ab' => 'Abkasies',
+ 'ach' => 'Akoli',
+ 'af' => 'Afrikaans',
+ 'agq' => 'Aghem',
+ 'ak' => 'Akan',
+ 'am' => 'Amharies',
+ 'ar' => 'Arabies',
+ 'ar-001' => 'Moderne Standaard Arabies',
+ 'arc' => 'Aramees',
+ 'arn' => 'Mapuche',
+ 'as' => 'Assamees',
+ 'asa' => 'Asu',
+ 'ay' => 'Aymara',
+ 'az' => 'Azerbeidjans',
+ 'ba' => 'Baskir',
+ 'be' => 'Wit-Russies',
+ 'bem' => 'Bemba',
+ 'bez' => 'Bena',
+ 'bg' => 'Bulgaars',
+ 'bm' => 'Bambara',
+ 'bn' => 'Bengaals',
+ 'bo' => 'Tibettaans',
+ 'br' => 'Bretons',
+ 'brx' => 'Bodo',
+ 'bs' => 'Bosnies',
+ 'ca' => 'Katalaans',
+ 'cgg' => 'Sjiga',
+ 'chr' => 'Cherokees',
+ 'ckb' => 'Sorani Koerdies',
+ 'co' => 'Korsikaans',
+ 'cop' => 'Kopties',
+ 'cs' => 'Tsjeggies',
+ 'cu' => 'Kerkslawies',
+ 'cy' => 'Wallies',
+ 'da' => 'Deens',
+ 'dav' => 'Taita',
+ 'de' => 'Duits',
+ 'de-ch' => 'Switserse hoog-Duits',
+ 'dje' => 'Zarma',
+ 'dsb' => 'Lae Sorbies',
+ 'dua' => 'Duala',
+ 'dv' => 'Divehi',
+ 'dyo' => 'Jola-Fonyi',
+ 'dz' => 'Dzongkha',
+ 'ebu' => 'Embu',
+ 'ee' => 'Ewe',
+ 'efi' => 'Efik',
+ 'egy' => 'Antieke Egipties',
+ 'el' => 'Grieks',
+ 'en' => 'Engels',
+ 'eo' => 'Esperanto',
+ 'es' => 'Spaans',
+ 'et' => 'Estnies',
+ 'eu' => 'Baskies',
+ 'fa' => 'Persies',
+ 'fi' => 'Fins',
+ 'fil' => 'Filippyns',
+ 'fj' => 'Fidjiaans',
+ 'fo' => 'Faroees',
+ 'fr' => 'Frans',
+ 'fy' => 'Wes-Fries',
+ 'ga' => 'Iers',
+ 'gaa' => 'Gaa',
+ 'gag' => 'Gagauz',
+ 'gd' => 'Skotse Gallies',
+ 'gl' => 'Galisies',
+ 'gn' => 'Guarani',
+ 'got' => 'Goties',
+ 'grc' => 'Antieke Grieks',
+ 'gsw' => 'Switserse Duits',
+ 'gu' => 'Goedjarati',
+ 'guz' => 'Gusii',
+ 'gv' => 'Manx',
+ 'ha' => 'Hausa',
+ 'haw' => 'Hawaiies',
+ 'he' => 'Hebreeus',
+ 'hi' => 'Hindi',
+ 'hit' => 'Hetities',
+ 'hr' => 'Kroaties',
+ 'hsb' => 'Hoog-Sorbies',
+ 'ht' => 'Haïtiaans',
+ 'hu' => 'Hongaars',
+ 'hy' => 'Armeens',
+ 'ia' => 'Interlingua',
+ 'id' => 'Indonesies',
+ 'ie' => 'Interlingue',
+ 'ig' => 'Igbo',
+ 'ii' => 'Sichuan Yi',
+ 'is' => 'Yslands',
+ 'it' => 'Italiaans',
+ 'iu' => 'Innuïties',
+ 'ja' => 'Japannees',
+ 'jgo' => 'Ngomba',
+ 'jmc' => 'Machame',
+ 'jv' => 'Javaans',
+ 'ka' => 'Georgies',
+ 'kab' => 'Kabyle',
+ 'kam' => 'Kamba',
+ 'kde' => 'Makonde',
+ 'kea' => 'Kabuverdianu',
+ 'kg' => 'Kongolees',
+ 'khq' => 'Koyra Chiini',
+ 'ki' => 'Kikuyu',
+ 'kk' => 'Kazaks',
+ 'kl' => 'Kalaallisut',
+ 'kln' => 'Kalenjin',
+ 'km' => 'Khmer',
+ 'kn' => 'Kannada',
+ 'ko' => 'Koreaans',
+ 'koi' => 'Komi-Permyaks',
+ 'kok' => 'Konkani',
+ 'kru' => 'Kurukh',
+ 'ks' => 'Kasjmirs',
+ 'ksb' => 'Shambala',
+ 'ksf' => 'Bafia',
+ 'ku' => 'Koerdies',
+ 'kw' => 'Kornies',
+ 'ky' => 'Kirgisies',
+ 'la' => 'Latyn',
+ 'lag' => 'Langi',
+ 'lb' => 'Luxemburgs',
+ 'lg' => 'Ganda',
+ 'li' => 'Limburgs',
+ 'lkt' => 'Lakota',
+ 'ln' => 'Lingaals',
+ 'lo' => 'Lao',
+ 'loz' => 'Lozi',
+ 'lt' => 'Litaus',
+ 'lu' => 'Luba-Katanga',
+ 'lua' => 'Luba-Lulua',
+ 'luo' => 'Luo',
+ 'luy' => 'Luyia',
+ 'lv' => 'Letties',
+ 'mas' => 'Masai',
+ 'mer' => 'Meru',
+ 'mfe' => 'Morisjen',
+ 'mg' => 'Malgassies',
+ 'mgh' => 'Makhuwa-Meetto',
+ 'mgo' => 'Meta’',
+ 'mi' => 'Maori',
+ 'mk' => 'Masedonies',
+ 'ml' => 'Malabaars',
+ 'mn' => 'Mongools',
+ 'moh' => 'Mohawk',
+ 'mr' => 'Marathi',
+ 'ms' => 'Maleis',
+ 'mt' => 'Maltees',
+ 'mua' => 'Mundang',
+ 'mul' => 'Veelvuldige tale',
+ 'my' => 'Birmaans',
+ 'naq' => 'Nama',
+ 'nb' => 'Noorse Bokmål',
+ 'nd' => 'Noord-Ndebele',
+ 'ne' => 'Nepalees',
+ 'nl' => 'Nederlands',
+ 'nl-be' => 'Vlaams',
+ 'nmg' => 'Kwasio',
+ 'nn' => 'Noorweegse Nynorsk',
+ 'no' => 'Noors',
+ 'nqo' => 'N’Ko',
+ 'nr' => 'Suid-Ndebele',
+ 'nso' => 'Noord-Sotho',
+ 'nus' => 'Nuer',
+ 'ny' => 'Nyanja',
+ 'nyn' => 'Nyankole',
+ 'oc' => 'Oksitaans',
+ 'om' => 'Oromo',
+ 'or' => 'Oriya',
+ 'os' => 'Osseties',
+ 'pa' => 'Pandjabi',
+ 'phn' => 'Fenisies',
+ 'pl' => 'Pools',
+ 'ps' => 'Pasjto',
+ 'pt' => 'Portugees',
+ 'qu' => 'Quechua',
+ 'quc' => 'K’iche’',
+ 'rm' => 'Reto-Romaans',
+ 'rn' => 'Rundi',
+ 'ro' => 'Roemeens',
+ 'ro-md' => 'Moldawies',
+ 'rof' => 'Rombo',
+ 'ru' => 'Russies',
+ 'rw' => 'Rwandees',
+ 'rwk' => 'Rwa',
+ 'sa' => 'Sanskrit',
+ 'saq' => 'Samburu',
+ 'sbp' => 'Sangu',
+ 'sco' => 'Skots',
+ 'sd' => 'Sindhi',
+ 'se' => 'Noordelike Sami',
+ 'seh' => 'Sena',
+ 'ses' => 'Koyraboro Senni',
+ 'sg' => 'Sango',
+ 'sh' => 'Serwo-Kroaties',
+ 'shi' => 'Tachelhit',
+ 'si' => 'Sinhala',
+ 'sk' => 'Slowaaks',
+ 'sl' => 'Sloweens',
+ 'sm' => 'Samoaans',
+ 'sma' => 'Suid-Sami',
+ 'smj' => 'Lule Sami',
+ 'smn' => 'Inari Sami',
+ 'sms' => 'Skolt Sami',
+ 'sn' => 'Shona',
+ 'so' => 'Somalies',
+ 'sq' => 'Albanees',
+ 'sr' => 'Serwies',
+ 'ss' => 'Swazi',
+ 'st' => 'Suid-Sotho',
+ 'su' => 'Sundanees',
+ 'sv' => 'Sweeds',
+ 'sw' => 'Swahili',
+ 'swb' => 'Shimaorees',
+ 'swc' => 'Swahili (Kongo)',
+ 'ta' => 'Tamil',
+ 'te' => 'Telugu',
+ 'teo' => 'Teso',
+ 'tet' => 'Tetum',
+ 'tg' => 'Tadzjieks',
+ 'th' => 'Thai',
+ 'ti' => 'Tigrinya',
+ 'tk' => 'Turkmeens',
+ 'tlh' => 'Klingon',
+ 'tn' => 'Tswana',
+ 'to' => 'Tongaans',
+ 'tpi' => 'Tok Pisin',
+ 'tr' => 'Turks',
+ 'ts' => 'Tsonga',
+ 'tt' => 'Tataars',
+ 'tum' => 'Toemboeka',
+ 'tw' => 'Twi',
+ 'twq' => 'Tasawaq',
+ 'ty' => 'Tahities',
+ 'tzm' => 'Sentraal Atlas Tamazight',
+ 'ug' => 'Uighur',
+ 'uk' => 'Oekraïens',
+ 'und' => 'Onbekende of ongeldige taal',
+ 'ur' => 'Oerdoe',
+ 'uz' => 'Oezbeeks',
+ 'vai' => 'Vai',
+ 've' => 'Venda',
+ 'vi' => 'Viëtnamees',
+ 'vun' => 'Vunjo',
+ 'wo' => 'Wolof',
+ 'xh' => 'Xhosa',
+ 'xog' => 'Soga',
+ 'yi' => 'Jiddisj',
+ 'yo' => 'Yoruba',
+ 'yue' => 'Kantonees',
+ 'zgh' => 'Standaard Marokkaanse Tamazight',
+ 'zh' => 'Sjinees',
+ 'zu' => 'Zoeloe',
+ 'zxx' => 'Geen linguistiese inhoud',
+);
+
+$currencyNames = array(
+ 'AED' => 'Verenigde Arabiese Emirate dirham',
+ 'AFN' => 'Afgaanse afgani',
+ 'ALL' => 'Albanese lek',
+ 'AMD' => 'Armeense dram',
+ 'ANG' => 'Nederlands-Antilliaanse gulde',
+ 'AOA' => 'Angolese kwanza',
+ 'ARS' => 'Argentynse peso',
+ 'AUD' => 'Australiese dollar',
+ 'AWG' => 'Arubaanse floryn',
+ 'AZN' => 'Azerbeidjaanse manat',
+ 'BAM' => 'Bosnies-Herzegowiniese omskakelbare marka',
+ 'BBD' => 'Barbados-dollar',
+ 'BDT' => 'Bangladesjiese taka',
+ 'BGN' => 'Bulgaarse lev',
+ 'BHD' => 'Bahreinse dinar',
+ 'BIF' => 'Burundiese frank',
+ 'BMD' => 'Bermuda-dollar',
+ 'BND' => 'Broeneise dollar',
+ 'BOB' => 'Boliviaanse boliviano',
+ 'BRL' => 'Brasilliaanse reaal',
+ 'BSD' => 'Bahamiaanse dollar',
+ 'BTN' => 'Bhoetanese ngoeltroem',
+ 'BWP' => 'Botswana pula',
+ 'BYR' => 'Belo-Russiese roebel',
+ 'BZD' => 'Beliziese dollar',
+ 'CAD' => 'Kanadese dollar',
+ 'CDF' => 'Kongolese frank',
+ 'CHF' => 'Switserse frank',
+ 'CLP' => 'Chileense peso',
+ 'CNY' => 'Sjinese joean renminbi',
+ 'COP' => 'Colombiaanse peso',
+ 'CRC' => 'Costa Ricaanse colón',
+ 'CUC' => 'Kubaanse omskakelbare peso',
+ 'CUP' => 'Kubaanse peso',
+ 'CVE' => 'Kaap Verdiese escudo',
+ 'CZK' => 'Tsjeggiese kroon',
+ 'DJF' => 'Djiboeti frank',
+ 'DKK' => 'Deense kroon',
+ 'DOP' => 'Dominikaanse peso',
+ 'DZD' => 'Algeriese dinar',
+ 'EGP' => 'Egiptiese pond',
+ 'ERN' => 'Eritrese nakfa',
+ 'ETB' => 'Etiopiese birr',
+ 'EUR' => 'Euro',
+ 'FJD' => 'Fidjiaanse dollar',
+ 'FKP' => 'Falkland-eilande pond',
+ 'GBP' => 'Britse pond',
+ 'GEL' => 'Georgiese lari',
+ 'GHC' => 'Ghanese cedi (1979–2007)',
+ 'GHS' => 'Ghanese cedi',
+ 'GIP' => 'Gibraltarese pond',
+ 'GMD' => 'Gambiese dalasi',
+ 'GNF' => 'Guinese frank',
+ 'GNS' => 'Guinese syli',
+ 'GTQ' => 'Guatemalaanse quetzal',
+ 'GYD' => 'Guyanese dollar',
+ 'HKD' => 'Hong Kong dollar',
+ 'HNL' => 'Hondurese lempira',
+ 'HRK' => 'Kroatiese kuna',
+ 'HTG' => 'Haïtiaanse gourde',
+ 'HUF' => 'Hongaarse florint',
+ 'IDR' => 'Indonesiese roepia',
+ 'ILS' => 'Israeliese nuwe sikkel',
+ 'INR' => 'Indiese roepee',
+ 'IQD' => 'Irakse dinar',
+ 'IRR' => 'Iranse rial',
+ 'ISK' => 'Yslandse kroon',
+ 'ITL' => 'Italiaanse lier',
+ 'JMD' => 'Jamaikaanse dollar',
+ 'JOD' => 'Jordaniese dinar',
+ 'JPY' => 'Japannese jen',
+ 'KES' => 'Keniaanse sjieling',
+ 'KGS' => 'Kirgisiese som',
+ 'KHR' => 'Kambodjaanse riel',
+ 'KMF' => 'Comoraanse frank',
+ 'KPW' => 'Noord-Koreaanse won',
+ 'KRW' => 'Suid-Koreaanse won',
+ 'KWD' => 'Koeweitse dinar',
+ 'KYD' => 'Cayman-eilande dollar',
+ 'KZT' => 'Kazakse tenge',
+ 'LAK' => 'Laosiaanse kip',
+ 'LBP' => 'Lebanese pond',
+ 'LKR' => 'Sri Lankaanse roepee',
+ 'LRD' => 'Liberiese dollar',
+ 'LSL' => 'Lesotho loti',
+ 'LTL' => 'Litause litas',
+ 'LVL' => 'Lettiese lats',
+ 'LYD' => 'Libiese dinar',
+ 'MAD' => 'Marokkaanse dirham',
+ 'MDL' => 'Moldowiese leu',
+ 'MGA' => 'Malgassiese ariary',
+ 'MKD' => 'Macedoniese denar',
+ 'MMK' => 'Mianmese kyat',
+ 'MNT' => 'Mongoolse toegrik',
+ 'MOP' => 'Macaose pataca',
+ 'MRO' => 'Mauritaniese ouguiya',
+ 'MUR' => 'Mauritiaanse rupee',
+ 'MVR' => 'Malediviese rufia',
+ 'MWK' => 'Malawiese kwacha',
+ 'MXN' => 'Meksikaanse peso',
+ 'MYR' => 'Maleisiese ringgit',
+ 'MZM' => 'Mosambiekse metical (1980–2006)',
+ 'MZN' => 'Mosambiekse metical',
+ 'NAD' => 'Namibiese dollar',
+ 'NGN' => 'Nigeriese naira',
+ 'NIO' => 'Nicaraguaanse córdoba',
+ 'NOK' => 'Noorse kroon',
+ 'NPR' => 'Nepalese roepee',
+ 'NZD' => 'Nieu-Seeland dollar',
+ 'OMR' => 'Omaanse rial',
+ 'PAB' => 'Panamese balboa',
+ 'PEN' => 'Peruaanse nuwe sol',
+ 'PGK' => 'Papoea-Nieu-Guinese kina',
+ 'PHP' => 'Filippynse peso',
+ 'PKR' => 'Pakistanse roepee',
+ 'PLN' => 'Poolse zloty',
+ 'PYG' => 'Paraguaanse guarani',
+ 'QAR' => 'Katarrese rial',
+ 'RON' => 'Roemeense leu',
+ 'RSD' => 'Serbiese dinar',
+ 'RUB' => 'Russiese roebel',
+ 'RWF' => 'Rwandiese frank',
+ 'SAR' => 'Saoedi-Arabiese riyal',
+ 'SBD' => 'Salomonseilande dollar',
+ 'SCR' => 'Seychellese rupee',
+ 'SDG' => 'Soedannese pond',
+ 'SDP' => 'Soedannese pond (1957–1998)',
+ 'SEK' => 'Sweedse kroon',
+ 'SGD' => 'Singapoer dollar',
+ 'SHP' => 'Sint Helena pond',
+ 'SLL' => 'Sierra Leoniese leone',
+ 'SOS' => 'Somaliese sjieling',
+ 'SRD' => 'Surinaamse dollar',
+ 'SSP' => 'Suid-Soedanese pond',
+ 'STD' => 'São Tomé en Príncipe dobra',
+ 'SYP' => 'Siriese pond',
+ 'SZL' => 'Swazilandse lilangeni',
+ 'THB' => 'Thaise baht',
+ 'TJS' => 'Tadjikse roebel',
+ 'TMT' => 'Turkmeense manat',
+ 'TND' => 'Tunisiese dinar',
+ 'TOP' => 'Tongaanse pa’anga',
+ 'TRL' => 'Turkse lier (1922–2005)',
+ 'TRY' => 'Turkse lier',
+ 'TTD' => 'Trinidad en Tobago dollar',
+ 'TWD' => 'Nuwe Taiwanese dollar',
+ 'TZS' => 'Tanzaniese sjieling',
+ 'UAH' => 'Oekraïnse hriwna',
+ 'UGX' => 'Ugandese sjieling',
+ 'USD' => 'Amerikaanse dollar',
+ 'UYU' => 'Uruguaanse peso',
+ 'UZS' => 'Oezbekiese som',
+ 'VEF' => 'Venezolaanse bolivar',
+ 'VND' => 'Viëtnamese dong',
+ 'VUV' => 'Vanuatuse vatu',
+ 'WST' => 'Samoaanse tala',
+ 'XAF' => 'CFA frank BEAC',
+ 'XCD' => 'Oos-Karibbiese dollar',
+ 'XOF' => 'CFA frank BCEAO',
+ 'XPF' => 'CFP-frank',
+ 'XXX' => 'Onbekende geldeenheid',
+ 'YER' => 'Jemenitiese rial',
+ 'ZAR' => 'Suid-Afrikaanse rand',
+ 'ZMK' => 'Zambiese kwacha (1968–2012)',
+ 'ZMW' => 'Zambiese kwacha',
+ 'ZWD' => 'Zimbabwiese dollar',
+);
+
+$currencySymbols = array(
+ 'AED' => 'AED',
+ 'AFN' => 'AFN',
+ 'ALL' => 'ALL',
+ 'AMD' => 'AMD',
+ 'ANG' => 'ANG',
+ 'AOA' => 'AOA',
+ 'ARS' => 'ARS',
+ 'AUD' => 'A$',
+ 'AWG' => 'AWG',
+ 'AZN' => 'AZN',
+ 'BAM' => 'BAM',
+ 'BBD' => 'BBD',
+ 'BDT' => 'BDT',
+ 'BGN' => 'BGN',
+ 'BHD' => 'BHD',
+ 'BIF' => 'BIF',
+ 'BMD' => 'BMD',
+ 'BND' => 'BND',
+ 'BOB' => 'BOB',
+ 'BRL' => 'R$',
+ 'BSD' => 'BSD',
+ 'BTN' => 'BTN',
+ 'BWP' => 'BWP',
+ 'BYR' => 'BYR',
+ 'BZD' => 'BZD',
+ 'CAD' => 'CA$',
+ 'CDF' => 'CDF',
+ 'CHF' => 'CHF',
+ 'CLP' => 'CLP',
+ 'CNY' => 'CN¥',
+ 'COP' => 'COP',
+ 'CRC' => 'CRC',
+ 'CUC' => 'CUC',
+ 'CUP' => 'CUP',
+ 'CVE' => 'CVE',
+ 'CZK' => 'CZK',
+ 'DJF' => 'DJF',
+ 'DKK' => 'DKK',
+ 'DOP' => 'DOP',
+ 'DZD' => 'DZD',
+ 'EGP' => 'EGP',
+ 'ERN' => 'ERN',
+ 'ETB' => 'ETB',
+ 'EUR' => '€',
+ 'FJD' => 'FJD',
+ 'FKP' => 'FKP',
+ 'GBP' => '£',
+ 'GEL' => 'GEL',
+ 'GHS' => 'GHS',
+ 'GIP' => 'GIP',
+ 'GMD' => 'GMD',
+ 'GNF' => 'GNF',
+ 'GTQ' => 'GTQ',
+ 'GYD' => 'GYD',
+ 'HKD' => 'HK$',
+ 'HNL' => 'HNL',
+ 'HRK' => 'HRK',
+ 'HTG' => 'HTG',
+ 'HUF' => 'HUF',
+ 'IDR' => 'IDR',
+ 'ILS' => '₪',
+ 'INR' => '₹',
+ 'IQD' => 'IQD',
+ 'IRR' => 'IRR',
+ 'ISK' => 'ISK',
+ 'JMD' => 'JMD',
+ 'JOD' => 'JOD',
+ 'JPY' => 'JP¥',
+ 'KES' => 'KES',
+ 'KGS' => 'KGS',
+ 'KHR' => 'KHR',
+ 'KMF' => 'KMF',
+ 'KPW' => 'KPW',
+ 'KRW' => '₩',
+ 'KWD' => 'KWD',
+ 'KYD' => 'KYD',
+ 'KZT' => 'KZT',
+ 'LAK' => 'LAK',
+ 'LBP' => 'LBP',
+ 'LKR' => 'LKR',
+ 'LRD' => 'LRD',
+ 'LTL' => 'LTL',
+ 'LYD' => 'LYD',
+ 'MAD' => 'MAD',
+ 'MDL' => 'MDL',
+ 'MGA' => 'MGA',
+ 'MKD' => 'MKD',
+ 'MMK' => 'MMK',
+ 'MNT' => 'MNT',
+ 'MOP' => 'MOP',
+ 'MRO' => 'MRO',
+ 'MUR' => 'MUR',
+ 'MVR' => 'MVR',
+ 'MWK' => 'MWK',
+ 'MXN' => 'MXN',
+ 'MYR' => 'MYR',
+ 'MZN' => 'MZN',
+ 'NAD' => 'NAD',
+ 'NGN' => 'NGN',
+ 'NIO' => 'NIO',
+ 'NOK' => 'NOK',
+ 'NPR' => 'NPR',
+ 'NZD' => 'NZ$',
+ 'OMR' => 'OMR',
+ 'PAB' => 'PAB',
+ 'PEN' => 'PEN',
+ 'PGK' => 'PGK',
+ 'PHP' => 'PHP',
+ 'PKR' => 'PKR',
+ 'PLN' => 'PLN',
+ 'PYG' => 'PYG',
+ 'QAR' => 'QAR',
+ 'RON' => 'RON',
+ 'RSD' => 'RSD',
+ 'RUB' => 'RUB',
+ 'RWF' => 'RWF',
+ 'SAR' => 'SAR',
+ 'SBD' => 'SBD',
+ 'SCR' => 'SCR',
+ 'SDG' => 'SDG',
+ 'SEK' => 'SEK',
+ 'SGD' => 'SGD',
+ 'SHP' => 'SHP',
+ 'SLL' => 'SLL',
+ 'SOS' => 'SOS',
+ 'SRD' => 'SRD',
+ 'SSP' => 'SSP',
+ 'STD' => 'STD',
+ 'SYP' => 'SYP',
+ 'SZL' => 'SZL',
+ 'THB' => '฿',
+ 'TJS' => 'TJS',
+ 'TMT' => 'TMT',
+ 'TND' => 'TND',
+ 'TOP' => 'TOP',
+ 'TRY' => 'TRY',
+ 'TTD' => 'TTD',
+ 'TWD' => 'NT$',
+ 'TZS' => 'TZS',
+ 'UAH' => 'UAH',
+ 'UGX' => 'UGX',
+ 'USD' => 'US$',
+ 'UYU' => 'UYU',
+ 'UZS' => 'UZS',
+ 'VEF' => 'VEF',
+ 'VND' => '₫',
+ 'VUV' => 'VUV',
+ 'WST' => 'WST',
+ 'XAF' => 'FCFA',
+ 'XCD' => 'EC$',
+ 'XOF' => 'CFA',
+ 'XPF' => 'CFPF',
+ 'YER' => 'YER',
+ 'ZAR' => 'R',
+ 'ZMW' => 'ZMW',
+);
+
+$countryNames = array(
+ 'AC' => 'Ascensioneiland',
+ 'AD' => 'Andorra',
+ 'AE' => 'Verenigde Arabiese Emirate',
+ 'AF' => 'Afganistan',
+ 'AG' => 'Antigua en Barbuda',
+ 'AI' => 'Anguilla',
+ 'AL' => 'Albanië',
+ 'AM' => 'Armenië',
+ 'AN' => 'Nederlands-Antille',
+ 'AO' => 'Angola',
+ 'AQ' => 'Antarktika',
+ 'AR' => 'Argentinië',
+ 'AS' => 'Amerikaans-Samoa',
+ 'AT' => 'Oostenryk',
+ 'AU' => 'Australië',
+ 'AW' => 'Aruba',
+ 'AX' => 'Ålandeilande',
+ 'AZ' => 'Azerbeidjan',
+ 'BA' => 'Bosnië en Herzegowina',
+ 'BB' => 'Barbados',
+ 'BD' => 'Bangladesj',
+ 'BE' => 'België',
+ 'BF' => 'Burkina Faso',
+ 'BG' => 'Bulgarye',
+ 'BH' => 'Bahrein',
+ 'BI' => 'Burundi',
+ 'BJ' => 'Benin',
+ 'BL' => 'Sint Barthélemy',
+ 'BM' => 'Bermuda',
+ 'BN' => 'Broenei',
+ 'BO' => 'Bolivië',
+ 'BQ' => 'Karibiese Nederland',
+ 'BR' => 'Brasilië',
+ 'BS' => 'Bahamas',
+ 'BT' => 'Bhoetan',
+ 'BV' => 'Bouveteiland',
+ 'BW' => 'Botswana',
+ 'BY' => 'Belarus',
+ 'BZ' => 'Belize',
+ 'CA' => 'Kanada',
+ 'CC' => 'Cocos- (Keeling) eilande',
+ 'CD' => 'Demokratiese Republiek van die Kongo',
+ 'CF' => 'Sentraal-Afrikaanse Republiek',
+ 'CG' => 'Republiek van die Kongo',
+ 'CH' => 'Switserland',
+ 'CI' => 'Ivoorkus',
+ 'CK' => 'Cookeilande',
+ 'CL' => 'Chili',
+ 'CM' => 'Kameroen',
+ 'CN' => 'Sjina',
+ 'CO' => 'Colombië',
+ 'CP' => 'Clippertoneiland',
+ 'CR' => 'Costa Rica',
+ 'CU' => 'Kuba',
+ 'CV' => 'Kaap Verde',
+ 'CW' => 'Curaçao',
+ 'CX' => 'Kerseiland',
+ 'CY' => 'Siprus',
+ 'CZ' => 'Tjeggiese Republiek',
+ 'DE' => 'Duitsland',
+ 'DG' => 'Diego Garcia',
+ 'DJ' => 'Djiboeti',
+ 'DK' => 'Denemarke',
+ 'DM' => 'Dominica',
+ 'DO' => 'Dominikaanse Republiek',
+ 'DZ' => 'Algerië',
+ 'EA' => 'Ceuta en Melilla',
+ 'EC' => 'Ecuador',
+ 'EE' => 'Estland',
+ 'EG' => 'Egipte',
+ 'EH' => 'Wes-Sahara',
+ 'ER' => 'Eritrea',
+ 'ES' => 'Spanje',
+ 'ET' => 'Ethiopië',
+ 'EU' => 'Europese Unie',
+ 'FI' => 'Finland',
+ 'FJ' => 'Fidji',
+ 'FK' => 'Falklandeilande',
+ 'FM' => 'Mikronesië',
+ 'FO' => 'Faroëreilande',
+ 'FR' => 'Frankryk',
+ 'GA' => 'Gaboen',
+ 'GB' => 'VK',
+ 'GD' => 'Grenada',
+ 'GE' => 'Georgië',
+ 'GF' => 'Frans-Guyana',
+ 'GG' => 'Guernsey',
+ 'GH' => 'Ghana',
+ 'GI' => 'Gibraltar',
+ 'GL' => 'Groenland',
+ 'GM' => 'Gambië',
+ 'GN' => 'Guinee',
+ 'GP' => 'Guadeloupe',
+ 'GQ' => 'Ekwatoriaal-Guinee',
+ 'GR' => 'Griekeland',
+ 'GS' => 'Suid-Georgië en die Suidelike Sandwicheilande',
+ 'GT' => 'Guatemala',
+ 'GU' => 'Guam',
+ 'GW' => 'Guinee-Bissau',
+ 'GY' => 'Guyana',
+ 'HK' => 'Hongkong',
+ 'HM' => 'Heard- en McDonaldeilande',
+ 'HN' => 'Honduras',
+ 'HR' => 'Kroasië',
+ 'HT' => 'Haïti',
+ 'HU' => 'Hongarye',
+ 'IC' => 'Kanariese Eilande',
+ 'ID' => 'Indonesië',
+ 'IE' => 'Ierland',
+ 'IL' => 'Israel',
+ 'IM' => 'Eiland Man',
+ 'IN' => 'Indië',
+ 'IO' => 'Britse Indiese Oseaangebied',
+ 'IQ' => 'Irak',
+ 'IR' => 'Iran',
+ 'IS' => 'Ysland',
+ 'IT' => 'Italië',
+ 'JE' => 'Jersey',
+ 'JM' => 'Jamaika',
+ 'JO' => 'Jordanië',
+ 'JP' => 'Japan',
+ 'KE' => 'Kenia',
+ 'KG' => 'Kirgisië',
+ 'KH' => 'Kambodja',
+ 'KI' => 'Kiribati',
+ 'KM' => 'Comore',
+ 'KN' => 'Sint Kitts en Nevis',
+ 'KP' => 'Noord-Korea',
+ 'KR' => 'Suid-Korea',
+ 'KW' => 'Koeweit',
+ 'KY' => 'Kaaimanseilande',
+ 'KZ' => 'Kazakstan',
+ 'LA' => 'Laos',
+ 'LB' => 'Libanon',
+ 'LC' => 'Sint Lucia',
+ 'LI' => 'Liechtenstein',
+ 'LK' => 'Sri Lanka',
+ 'LR' => 'Liberië',
+ 'LS' => 'Lesotho',
+ 'LT' => 'Litaue',
+ 'LU' => 'Luxemburg',
+ 'LV' => 'Letland',
+ 'LY' => 'Libië',
+ 'MA' => 'Marokko',
+ 'MC' => 'Monaco',
+ 'MD' => 'Moldowa',
+ 'ME' => 'Montenegro',
+ 'MF' => 'Sint Martin',
+ 'MG' => 'Madagaskar',
+ 'MH' => 'Marshalleilande',
+ 'MK' => 'Macedonië',
+ 'ML' => 'Mali',
+ 'MM' => 'Mianmar (Birma)',
+ 'MN' => 'Mongolië',
+ 'MO' => 'Macau',
+ 'MP' => 'Noordelike Mariana-eilande',
+ 'MQ' => 'Martinique',
+ 'MR' => 'Mauritanië',
+ 'MS' => 'Montserrat',
+ 'MT' => 'Malta',
+ 'MU' => 'Mauritius',
+ 'MV' => 'Maledive',
+ 'MW' => 'Malawi',
+ 'MX' => 'Meksiko',
+ 'MY' => 'Maleisië',
+ 'MZ' => 'Mosambiek',
+ 'NA' => 'Namibië',
+ 'NC' => 'Nieu-Kaledonië',
+ 'NE' => 'Niger',
+ 'NF' => 'Norfolkeiland',
+ 'NG' => 'Nigerië',
+ 'NI' => 'Nicaragua',
+ 'NL' => 'Nederland',
+ 'NO' => 'Noorweë',
+ 'NP' => 'Nepal',
+ 'NR' => 'Nauru',
+ 'NU' => 'Niue',
+ 'NZ' => 'Nieu-Seeland',
+ 'OM' => 'Oman',
+ 'PA' => 'Panama',
+ 'PE' => 'Peru',
+ 'PF' => 'Frans-Polinesië',
+ 'PG' => 'Papoea-Nieu-Guinee',
+ 'PH' => 'Filippyne',
+ 'PK' => 'Pakistan',
+ 'PL' => 'Pole',
+ 'PM' => 'Sint Pierre en Miquelon',
+ 'PN' => 'Pitcairneilande',
+ 'PR' => 'Puerto Rico',
+ 'PS' => 'Palestina',
+ 'PT' => 'Portugal',
+ 'PW' => 'Palau',
+ 'PY' => 'Paraguay',
+ 'QA' => 'Katar',
+ 'QO' => 'Omliggende Oseanië',
+ 'RE' => 'Réunion',
+ 'RO' => 'Roemenië',
+ 'RS' => 'Serwië',
+ 'RU' => 'Rusland',
+ 'RW' => 'Rwanda',
+ 'SA' => 'Saoedi-Arabië',
+ 'SB' => 'Solomoneilande',
+ 'SC' => 'Seychelle',
+ 'SD' => 'Soedan',
+ 'SE' => 'Swede',
+ 'SG' => 'Singapoer',
+ 'SH' => 'Sint Helena',
+ 'SI' => 'Slowenië',
+ 'SJ' => 'Svalbard en Jan Mayen',
+ 'SK' => 'Slowakye',
+ 'SL' => 'Sierra Leone',
+ 'SM' => 'San Marino',
+ 'SN' => 'Senegal',
+ 'SO' => 'Somalië',
+ 'SR' => 'Suriname',
+ 'SS' => 'Suid-Soedan',
+ 'ST' => 'Sao Tome en Principe',
+ 'SV' => 'El Salvador',
+ 'SX' => 'Sint Maarten',
+ 'SY' => 'Sirië',
+ 'SZ' => 'Swaziland',
+ 'TA' => 'Tristan da Cunha',
+ 'TC' => 'Turks- en Caicoseilande',
+ 'TD' => 'Tsjad',
+ 'TF' => 'Franse Suidelike Gebiede',
+ 'TG' => 'Togo',
+ 'TH' => 'Thailand',
+ 'TJ' => 'Tadjikistan',
+ 'TK' => 'Tokelau',
+ 'TL' => 'Oos-Timor',
+ 'TM' => 'Turkmenië',
+ 'TN' => 'Tunisië',
+ 'TO' => 'Tonga',
+ 'TR' => 'Turkye',
+ 'TT' => 'Trinidad en Tobago',
+ 'TV' => 'Tuvalu',
+ 'TW' => 'Taiwan',
+ 'TZ' => 'Tanzanië',
+ 'UA' => 'Oekraïne',
+ 'UG' => 'Uganda',
+ 'UM' => 'VS klein omliggende eilande',
+ 'US' => 'VSA',
+ 'UY' => 'Uruguay',
+ 'UZ' => 'Oesbekistan',
+ 'VA' => 'Vatikaanstad',
+ 'VC' => 'Sint Vincent en die Grenadine',
+ 'VE' => 'Venezuela',
+ 'VG' => 'Britse Maagde-eilande',
+ 'VI' => 'Amerikaanse Maagde-eilande',
+ 'VN' => 'Viëtnam',
+ 'VU' => 'Vanuatu',
+ 'WF' => 'Wallis en Futuna',
+ 'WS' => 'Samoa',
+ 'XK' => 'Kosovo',
+ 'YE' => 'Jemen',
+ 'YT' => 'Mayotte',
+ 'ZA' => 'Suid-Afrika',
+ 'ZM' => 'Zambië',
+ 'ZW' => 'Zimbabwe',
+);
+
+$timeUnits = array(
+ 'day-future-one' => 'Oor {0} dag',
+ 'day-future-other' => 'Oor {0} dae',
+ 'day-narrow-future-one' => 'oor {0} dag',
+ 'day-narrow-future-other' => 'oor {0} dae',
+ 'day-narrow-past-one' => '{0} dag gelede',
+ 'day-narrow-past-other' => '{0} dae gelede',
+ 'day-one' => '{0} dag',
+ 'day-other' => '{0} dae',
+ 'day-past-one' => '{0} dag gelede',
+ 'day-past-other' => '{0} dae gelede',
+ 'day-short-future-one' => 'oor {0} dag',
+ 'day-short-future-other' => 'oor {0} dae',
+ 'day-short-past-one' => '{0} dag gelede',
+ 'day-short-past-other' => '{0} dae gelede',
+ 'hour-future-one' => 'Oor {0} uur',
+ 'hour-future-other' => 'Oor {0} uur',
+ 'hour-narrow-future-one' => 'oor {0} uur',
+ 'hour-narrow-future-other' => 'oor {0} uur',
+ 'hour-narrow-past-one' => '{0} uur gelede',
+ 'hour-narrow-past-other' => '{0} uur gelede',
+ 'hour-one' => '{0} uur',
+ 'hour-other' => '{0} uur',
+ 'hour-past-one' => '{0} uur gelede',
+ 'hour-past-other' => '{0} uur gelede',
+ 'hour-short-future-one' => 'oor {0} uur',
+ 'hour-short-future-other' => 'oor {0} uur',
+ 'hour-short-past-one' => '{0} uur gelede',
+ 'hour-short-past-other' => '{0} uur gelede',
+ 'microsecond-one' => '{0} mikrosekonde',
+ 'microsecond-other' => '{0} mikrosekondes',
+ 'millisecond-one' => '{0} millisekonde',
+ 'millisecond-other' => '{0} millisekondes',
+ 'minute-future-one' => 'Oor {0} minuut',
+ 'minute-future-other' => 'Oor {0} minute',
+ 'minute-narrow-future-one' => 'oor {0} min.',
+ 'minute-narrow-future-other' => 'oor {0} min.',
+ 'minute-narrow-past-one' => '{0} min. gelede',
+ 'minute-narrow-past-other' => '{0} min. gelede',
+ 'minute-one' => '{0} minuut',
+ 'minute-other' => '{0} minute',
+ 'minute-past-one' => '{0} minuut gelede',
+ 'minute-past-other' => '{0} minute gelede',
+ 'minute-short-future-one' => 'oor {0} min.',
+ 'minute-short-future-other' => 'oor {0} min.',
+ 'minute-short-past-one' => '{0} min. gelede',
+ 'minute-short-past-other' => '{0} min. gelede',
+ 'month-future-one' => 'Oor {0} maand',
+ 'month-future-other' => 'Oor {0} maande',
+ 'month-narrow-future-one' => 'oor {0} md.',
+ 'month-narrow-future-other' => 'oor {0} md.',
+ 'month-narrow-past-one' => '{0} md. gelede',
+ 'month-narrow-past-other' => '{0} md. gelede',
+ 'month-one' => '{0} maand',
+ 'month-other' => '{0} maande',
+ 'month-past-one' => '{0} maand gelede',
+ 'month-past-other' => '{0} maande gelede',
+ 'month-short-future-one' => 'oor {0} md.',
+ 'month-short-future-other' => 'oor {0} md.',
+ 'month-short-past-one' => '{0} md. gelede',
+ 'month-short-past-other' => '{0} md. gelede',
+ 'nanosecond-one' => '{0} nanosekonde',
+ 'nanosecond-other' => '{0} nanosekondes',
+ 'quarter-future-one' => 'oor {0} kwartaal',
+ 'quarter-future-other' => 'oor {0} kwartale',
+ 'quarter-narrow-future-one' => 'oor {0} kwartale',
+ 'quarter-narrow-future-other' => 'oor {0} kwartale',
+ 'quarter-narrow-past-one' => '{0} kwartale gelede',
+ 'quarter-narrow-past-other' => '{0} kwartale gelede',
+ 'quarter-past-one' => '{0} kwartaal gelede',
+ 'quarter-past-other' => '{0} kwartale gelede',
+ 'quarter-short-future-one' => 'oor {0} kwartaal',
+ 'quarter-short-future-other' => 'oor {0} kwartale',
+ 'quarter-short-past-one' => '{0} kwartaal gelede',
+ 'quarter-short-past-other' => '{0} kwartale gelede',
+ 'second-future-one' => 'Oor {0} sekonde',
+ 'second-future-other' => 'Oor {0} sekondes',
+ 'second-narrow-future-one' => 'oor {0} sek.',
+ 'second-narrow-future-other' => 'oor {0} sek.',
+ 'second-narrow-past-one' => '{0} sek. gelede',
+ 'second-narrow-past-other' => '{0} sek. gelede',
+ 'second-one' => '{0} sekonde',
+ 'second-other' => '{0} sekondes',
+ 'second-past-one' => '{0} sekonde gelede',
+ 'second-past-other' => '{0} sekondes gelede',
+ 'second-short-future-one' => 'oor {0} sek.',
+ 'second-short-future-other' => 'oor {0} sek.',
+ 'second-short-past-one' => '{0} sek. gelede',
+ 'second-short-past-other' => '{0} sek. gelede',
+ 'week-future-one' => 'Oor {0} week',
+ 'week-future-other' => 'Oor {0} weke',
+ 'week-narrow-future-one' => 'oor {0} w.',
+ 'week-narrow-future-other' => 'oor {0} w.',
+ 'week-narrow-past-one' => '{0} w. gelede',
+ 'week-narrow-past-other' => '{0} w. gelede',
+ 'week-one' => '{0} week',
+ 'week-other' => '{0} weke',
+ 'week-past-one' => '{0} week gelede',
+ 'week-past-other' => '{0} weke gelede',
+ 'week-short-future-one' => 'oor {0} w.',
+ 'week-short-future-other' => 'oor {0} w.',
+ 'week-short-past-one' => '{0} w. gelede',
+ 'week-short-past-other' => '{0} w. gelede',
+ 'year-future-one' => 'Oor {0} jaar',
+ 'year-future-other' => 'Oor {0} jaar',
+ 'year-narrow-future-one' => 'Oor {0} jaar',
+ 'year-narrow-future-other' => 'Oor {0} jaar',
+ 'year-narrow-past-one' => '{0} jaar gelede',
+ 'year-narrow-past-other' => '{0} jaar gelede',
+ 'year-one' => '{0} jaar',
+ 'year-other' => '{0} jaar',
+ 'year-past-one' => '{0} jaar gelede',
+ 'year-past-other' => '{0} jaar gelede',
+ 'year-short-future-one' => 'Oor {0} jaar',
+ 'year-short-future-other' => 'Oor {0} jaar',
+ 'year-short-past-one' => '{0} jaar gelede',
+ 'year-short-past-other' => '{0} jaar gelede',
+);
diff --git a/MLEB/cldr/CldrNames/CldrNamesAk.php b/MLEB/cldr/CldrNames/CldrNamesAk.php
new file mode 100644
index 00000000..fdc5a660
--- /dev/null
+++ b/MLEB/cldr/CldrNames/CldrNamesAk.php
@@ -0,0 +1,338 @@
+<?php
+
+$languageNames = array(
+ 'ak' => 'Akan',
+ 'am' => 'Amarik',
+ 'ar' => 'Arabik',
+ 'be' => 'Belarus kasa',
+ 'bg' => 'Bɔlgeria kasa',
+ 'bn' => 'Bengali kasa',
+ 'cs' => 'Kyɛk kasa',
+ 'de' => 'Gyaaman',
+ 'el' => 'Greek kasa',
+ 'en' => 'Borɔfo',
+ 'es' => 'Spain kasa',
+ 'fa' => 'Pɛɛhyia kasa',
+ 'fr' => 'Frɛnkye',
+ 'ha' => 'Hausa',
+ 'hi' => 'Hindi',
+ 'hu' => 'Hangri kasa',
+ 'id' => 'Indonihyia kasa',
+ 'ig' => 'Igbo',
+ 'it' => 'Italy kasa',
+ 'ja' => 'Gyapan kasa',
+ 'jv' => 'Gyabanis kasa',
+ 'km' => 'Kambodia kasa',
+ 'ko' => 'Korea kasa',
+ 'ms' => 'Malay kasa',
+ 'my' => 'Bɛɛmis kasa',
+ 'ne' => 'Nɛpal kasa',
+ 'nl' => 'Dɛɛkye',
+ 'pa' => 'Pungyabi kasa',
+ 'pl' => 'Pɔland kasa',
+ 'pt' => 'Pɔɔtugal kasa',
+ 'ro' => 'Romenia kasa',
+ 'ru' => 'Rahyia kasa',
+ 'rw' => 'Rewanda kasa',
+ 'so' => 'Somalia kasa',
+ 'sv' => 'Sweden kasa',
+ 'ta' => 'Tamil kasa',
+ 'th' => 'Taeland kasa',
+ 'tr' => 'Tɛɛki kasa',
+ 'uk' => 'Ukren kasa',
+ 'ur' => 'Urdu kasa',
+ 'vi' => 'Viɛtnam kasa',
+ 'yo' => 'Yoruba',
+ 'zh' => 'Kyaena kasa',
+ 'zu' => 'Zulu',
+);
+
+$currencyNames = array(
+ 'AED' => 'Ɛmirete Arab Nkabɔmu Deram',
+ 'AOA' => 'Angola Kwanza',
+ 'AUD' => 'Ɔstrelia Dɔla',
+ 'BHD' => 'Baren Dina',
+ 'BIF' => 'Burundi Frank',
+ 'BWP' => 'Botswana Pula',
+ 'CAD' => 'Kanada Dɔla',
+ 'CDF' => 'Kongo Frank',
+ 'CNY' => 'Yuan',
+ 'CVE' => 'Ɛskudo',
+ 'DJF' => 'Gyebuti Frank',
+ 'DZD' => 'Ɔlgyeria Dina',
+ 'EGP' => 'Egypt Pɔn',
+ 'ERN' => 'Ɛretereya Nakfa',
+ 'ETB' => 'Itiopia Bir',
+ 'EUR' => 'Iro',
+ 'GBP' => 'Breten Pɔn',
+ 'GHC' => 'Ghana Sidi (1979–2007)',
+ 'GHS' => 'Ghana Sidi',
+ 'GMD' => 'Gambia Dalasi',
+ 'GNS' => 'Gini Frank',
+ 'INR' => 'India Rupi',
+ 'JPY' => 'Gyapan Yɛn',
+ 'KES' => 'Kenya Hyelen',
+ 'KMF' => 'Komoro Frank',
+ 'LRD' => 'Laeberia Dɔla',
+ 'LSL' => 'Lesoto Loti',
+ 'LYD' => 'Libya Dina',
+ 'MAD' => 'Moroko Diram',
+ 'MGA' => 'Madagasi Frank',
+ 'MRO' => 'Mɔretenia Ouguiya',
+ 'MUR' => 'Mɔrehyeɔs Rupi',
+ 'MWK' => 'Malawi Kwacha',
+ 'MZM' => 'Mozambik Metical',
+ 'NAD' => 'Namibia Dɔla',
+ 'NGN' => 'Naegyeria Naira',
+ 'RWF' => 'Rewanda Frank',
+ 'SAR' => 'Saudi Riyal',
+ 'SCR' => 'Seyhyɛls Rupi',
+ 'SDG' => 'Sudan Dina',
+ 'SDP' => 'Sudan Pɔn',
+ 'SHP' => 'St Helena Pɔn',
+ 'SLL' => 'Leone',
+ 'SOS' => 'Somailia Hyelen',
+ 'STD' => 'Sao Tome ne Principe Dobra',
+ 'SZL' => 'Lilangeni',
+ 'TND' => 'Tunisia Dina',
+ 'TZS' => 'Tanzania Hyelen',
+ 'UGX' => 'Uganda Hyelen',
+ 'USD' => 'Amɛrika Dɔla',
+ 'XAF' => 'Sefa',
+ 'ZAR' => 'Afrika Anaafo Rand',
+ 'ZMK' => 'Zambia Kwacha (1968–2012)',
+ 'ZMW' => 'Zambia Kwacha',
+ 'ZWD' => 'Zimbabwe Dɔla',
+);
+
+$currencySymbols = array(
+ 'GHS' => 'GH₵',
+);
+
+$countryNames = array(
+ 'AD' => 'Andora',
+ 'AE' => 'United Arab Emirates',
+ 'AF' => 'Afganistan',
+ 'AG' => 'Antigua ne Baabuda',
+ 'AI' => 'Anguila',
+ 'AL' => 'Albenia',
+ 'AM' => 'Aamenia',
+ 'AN' => 'Nɛdɛland Antelez',
+ 'AO' => 'Angola',
+ 'AR' => 'Agyɛntina',
+ 'AS' => 'Amɛrika Samoa',
+ 'AT' => 'Ɔstria',
+ 'AU' => 'Ɔstrelia',
+ 'AW' => 'Aruba',
+ 'AZ' => 'Azebaegyan',
+ 'BA' => 'Bosnia ne Hɛzegovina',
+ 'BB' => 'Baabados',
+ 'BD' => 'Bangladɛhye',
+ 'BE' => 'Bɛlgyium',
+ 'BF' => 'Bɔkina Faso',
+ 'BG' => 'Bɔlgeria',
+ 'BH' => 'Baren',
+ 'BI' => 'Burundi',
+ 'BJ' => 'Bɛnin',
+ 'BM' => 'Bɛmuda',
+ 'BN' => 'Brunae',
+ 'BO' => 'Bolivia',
+ 'BR' => 'Brazil',
+ 'BS' => 'Bahama',
+ 'BT' => 'Butan',
+ 'BW' => 'Bɔtswana',
+ 'BY' => 'Bɛlarus',
+ 'BZ' => 'Beliz',
+ 'CA' => 'Kanada',
+ 'CD' => 'Kongo (Zair)',
+ 'CF' => 'Afrika Finimfin Man',
+ 'CG' => 'Kongo',
+ 'CH' => 'Swetzaland',
+ 'CI' => 'La Côte d’Ivoire',
+ 'CK' => 'Kook Nsupɔw',
+ 'CL' => 'Kyili',
+ 'CM' => 'Kamɛrun',
+ 'CN' => 'Kyaena',
+ 'CO' => 'Kolombia',
+ 'CR' => 'Kɔsta Rika',
+ 'CU' => 'Kuba',
+ 'CV' => 'Kepvɛdfo Islands',
+ 'CY' => 'Saeprɔs',
+ 'CZ' => 'Kyɛk Kurokɛse',
+ 'DE' => 'Gyaaman',
+ 'DJ' => 'Gyibuti',
+ 'DK' => 'Dɛnmak',
+ 'DM' => 'Dɔmeneka',
+ 'DO' => 'Dɔmeneka Kurokɛse',
+ 'DZ' => 'Ɔlgyeria',
+ 'EC' => 'Ikuwadɔ',
+ 'EE' => 'Ɛstonia',
+ 'EG' => 'Nisrim',
+ 'ER' => 'Ɛritrea',
+ 'ES' => 'Spain',
+ 'ET' => 'Ithiopia',
+ 'FI' => 'Finland',
+ 'FJ' => 'Figyi',
+ 'FK' => 'Fɔlkman Aeland',
+ 'FM' => 'Maekronehyia',
+ 'FR' => 'Frɛnkyeman',
+ 'GA' => 'Gabɔn',
+ 'GB' => 'Ahendiman Nkabom',
+ 'GD' => 'Grenada',
+ 'GE' => 'Gyɔgyea',
+ 'GF' => 'Frɛnkye Gayana',
+ 'GH' => 'Gaana',
+ 'GI' => 'Gyebralta',
+ 'GL' => 'Greenman',
+ 'GM' => 'Gambia',
+ 'GN' => 'Gini',
+ 'GP' => 'Guwadelup',
+ 'GQ' => 'Gini Ikuweta',
+ 'GR' => 'Greekman',
+ 'GT' => 'Guwatemala',
+ 'GU' => 'Guam',
+ 'GW' => 'Gini Bisaw',
+ 'GY' => 'Gayana',
+ 'HN' => 'Hɔnduras',
+ 'HR' => 'Krowehyia',
+ 'HT' => 'Heiti',
+ 'HU' => 'Hangari',
+ 'ID' => 'Indɔnehyia',
+ 'IE' => 'Aereland',
+ 'IL' => 'Israel',
+ 'IN' => 'India',
+ 'IO' => 'Britenfo Hɔn Man Wɔ India Po No Mu',
+ 'IQ' => 'Irak',
+ 'IR' => 'Iran',
+ 'IS' => 'Aesland',
+ 'IT' => 'Itali',
+ 'JM' => 'Gyameka',
+ 'JO' => 'Gyɔdan',
+ 'JP' => 'Gyapan',
+ 'KE' => 'Kɛnya',
+ 'KG' => 'Kɛɛgestan',
+ 'KH' => 'Kambodia',
+ 'KI' => 'Kiribati',
+ 'KM' => 'Kɔmɔrɔs',
+ 'KN' => 'Saint Kitts ne Nɛves',
+ 'KP' => 'Etifi Koria',
+ 'KR' => 'Anaafo Koria',
+ 'KW' => 'Kuwete',
+ 'KY' => 'Kemanfo Islands',
+ 'KZ' => 'Kazakstan',
+ 'LA' => 'Laos',
+ 'LB' => 'Lɛbanɔn',
+ 'LC' => 'Saint Lucia',
+ 'LI' => 'Lektenstaen',
+ 'LK' => 'Sri Lanka',
+ 'LR' => 'Laeberia',
+ 'LS' => 'Lɛsutu',
+ 'LT' => 'Lituwenia',
+ 'LU' => 'Laksembɛg',
+ 'LV' => 'Latvia',
+ 'LY' => 'Libya',
+ 'MA' => 'Moroko',
+ 'MC' => 'Mɔnako',
+ 'MD' => 'Mɔldova',
+ 'MG' => 'Madagaska',
+ 'MH' => 'Marshall Islands',
+ 'MK' => 'Masedonia',
+ 'ML' => 'Mali',
+ 'MM' => 'Miyanma',
+ 'MN' => 'Mɔngolia',
+ 'MP' => 'Northern Mariana Islands',
+ 'MQ' => 'Matinik',
+ 'MR' => 'Mɔretenia',
+ 'MS' => 'Mantserat',
+ 'MT' => 'Mɔlta',
+ 'MU' => 'Mɔrehyeɔs',
+ 'MV' => 'Maldives',
+ 'MW' => 'Malawi',
+ 'MX' => 'Mɛksiko',
+ 'MY' => 'Malehyia',
+ 'MZ' => 'Mozambik',
+ 'NA' => 'Namibia',
+ 'NC' => 'Kaledonia Foforo',
+ 'NE' => 'Nigyɛ',
+ 'NF' => 'Nɔfolk Aeland',
+ 'NG' => 'Naegyeria',
+ 'NI' => 'Nekaraguwa',
+ 'NL' => 'Nɛdɛland',
+ 'NO' => 'Nɔɔwe',
+ 'NP' => 'Nɛpɔl',
+ 'NR' => 'Naworu',
+ 'NU' => 'Niyu',
+ 'NZ' => 'Ziland Foforo',
+ 'OM' => 'Oman',
+ 'PA' => 'Panama',
+ 'PE' => 'Peru',
+ 'PF' => 'Frɛnkye Pɔlenehyia',
+ 'PG' => 'Papua Guinea Foforo',
+ 'PH' => 'Philippines',
+ 'PK' => 'Pakistan',
+ 'PL' => 'Poland',
+ 'PM' => 'Saint Pierre ne Miquelon',
+ 'PN' => 'Pitcairn',
+ 'PR' => 'Puɛto Riko',
+ 'PS' => 'Palestaen West Bank ne Gaza',
+ 'PT' => 'Pɔtugal',
+ 'PW' => 'Palau',
+ 'PY' => 'Paraguay',
+ 'QA' => 'Kata',
+ 'RE' => 'Reyuniɔn',
+ 'RO' => 'Romenia',
+ 'RU' => 'Rɔhyea',
+ 'RW' => 'Rwanda',
+ 'SA' => 'Saudi Arabia',
+ 'SB' => 'Solomon Islands',
+ 'SC' => 'Seyhyɛl',
+ 'SD' => 'Sudan',
+ 'SE' => 'Sweden',
+ 'SG' => 'Singapɔ',
+ 'SH' => 'Saint Helena',
+ 'SI' => 'Slovinia',
+ 'SK' => 'Slovakia',
+ 'SL' => 'Sierra Leone',
+ 'SM' => 'San Marino',
+ 'SN' => 'Senegal',
+ 'SO' => 'Somalia',
+ 'SR' => 'Suriname',
+ 'ST' => 'São Tomé and Príncipe',
+ 'SV' => 'Ɛl Salvadɔ',
+ 'SY' => 'Siria',
+ 'SZ' => 'Swaziland',
+ 'TC' => 'Turks ne Caicos Islands',
+ 'TD' => 'Kyad',
+ 'TG' => 'Togo',
+ 'TH' => 'Taeland',
+ 'TJ' => 'Tajikistan',
+ 'TK' => 'Tokelau',
+ 'TL' => 'Timɔ Boka',
+ 'TM' => 'Tɛkmɛnistan',
+ 'TN' => 'Tunihyia',
+ 'TO' => 'Tonga',
+ 'TR' => 'Tɛɛki',
+ 'TT' => 'Trinidad ne Tobago',
+ 'TV' => 'Tuvalu',
+ 'TW' => 'Taiwan',
+ 'TZ' => 'Tanzania',
+ 'UA' => 'Ukren',
+ 'UG' => 'Uganda',
+ 'US' => 'Amɛrika',
+ 'UY' => 'Yurugwae',
+ 'UZ' => 'Uzbɛkistan',
+ 'VA' => 'Vatican Man',
+ 'VC' => 'Saint Vincent ne Grenadines',
+ 'VE' => 'Venezuela',
+ 'VG' => 'Britainfo Virgin Islands',
+ 'VI' => 'Amɛrika Virgin Islands',
+ 'VN' => 'Viɛtnam',
+ 'VU' => 'Vanuatu',
+ 'WF' => 'Wallis ne Futuna',
+ 'WS' => 'Samoa',
+ 'YE' => 'Yɛmen',
+ 'YT' => 'Mayɔte',
+ 'ZA' => 'Afrika Anaafo',
+ 'ZM' => 'Zambia',
+ 'ZW' => 'Zembabwe',
+);
diff --git a/MLEB/cldr/CldrNames/CldrNamesAm.php b/MLEB/cldr/CldrNames/CldrNamesAm.php
new file mode 100644
index 00000000..455fe971
--- /dev/null
+++ b/MLEB/cldr/CldrNames/CldrNamesAm.php
@@ -0,0 +1,971 @@
+<?php
+
+$languageNames = array(
+ 'aa' => 'አፋርኛ',
+ 'ab' => 'አብሐዚኛ',
+ 'ach' => 'አኮሊኛ',
+ 'af' => 'አፍሪካንኛ',
+ 'agq' => 'አገም',
+ 'ak' => 'አካንኛ',
+ 'am' => 'አማርኛ',
+ 'ar' => 'ዓረብኛ',
+ 'ar-001' => 'ዘመናዊ መደበኛ ዓረብኛ',
+ 'arn' => 'ማፑቼ',
+ 'as' => 'አሳሜዛዊ',
+ 'asa' => 'አሱ',
+ 'ay' => 'አያማርኛ',
+ 'az' => 'አዘርባጃንኛ',
+ 'ba' => 'ባስኪርኛ',
+ 'be' => 'ቤላራሻኛ',
+ 'bem' => 'ቤምባ',
+ 'bez' => 'ቤና',
+ 'bg' => 'ቡልጋሪኛ',
+ 'bi' => 'ቢስላምኛ',
+ 'bm' => 'ባምባርኛ',
+ 'bn' => 'ቤንጋሊኛ',
+ 'bo' => 'ቲቤታንኛ',
+ 'br' => 'ብሬቶንኛ',
+ 'brx' => 'ቦዶ',
+ 'bs' => 'ቦስኒያንኛ',
+ 'byn' => 'ብሊን',
+ 'ca' => 'ካታላንኛ',
+ 'cgg' => 'ቺጋኛ',
+ 'chr' => 'ቼሮኬኛ',
+ 'ckb' => 'የሶራኒ ኩርድኛ',
+ 'co' => 'ኮርሲካኛ',
+ 'cs' => 'ቼክኛ',
+ 'cy' => 'ወልሽ',
+ 'da' => 'ዴኒሽ',
+ 'dav' => 'ታይታኛ',
+ 'de' => 'ጀርመን',
+ 'de-at' => 'የኦስትሪያ ጀርመን',
+ 'de-ch' => 'የስዊዝ ከፍተኛ ጀርመንኛ',
+ 'dje' => 'ዛርማኛ',
+ 'dsb' => 'የታችኛው ሶርቢያንኛ',
+ 'dua' => 'ዱዋላኛ',
+ 'dv' => 'ዲቬህ',
+ 'dyo' => 'ጆላ ፎንያኛ',
+ 'dz' => 'ድዞንግኻኛ',
+ 'ebu' => 'ኢቦኛ',
+ 'ee' => 'ኢዊ',
+ 'efi' => 'ኤፊክ',
+ 'el' => 'ግሪክኛ',
+ 'en' => 'እንግሊዝኛ',
+ 'en-au' => 'የአውስትራሊያ እንግሊዝኛ',
+ 'en-ca' => 'የካናዳ እንግሊዝኛ',
+ 'en-gb' => 'የብሪቲሽ እንግሊዝኛ',
+ 'en-us' => 'የአሜሪካ እንግሊዝኛ',
+ 'eo' => 'ኤስፐራንቶ',
+ 'es' => 'ስፓኒሽ',
+ 'es-419' => 'የላቲን አሜሪካ ስፓኒሽ',
+ 'es-es' => 'የአውሮፓ እስፓንኛ',
+ 'et' => 'ኢስቶኒያንኛ',
+ 'eu' => 'ባስክኛ',
+ 'fa' => 'ፐርሺያኛ',
+ 'fi' => 'ፊኒሽ',
+ 'fil' => 'ፊሊፒንኛ',
+ 'fj' => 'ፊጂኛ',
+ 'fo' => 'ፋሮኛ',
+ 'fr' => 'ፈረንሳይኛ',
+ 'fr-ca' => 'የካናዳ ፈረንሳይኛ',
+ 'fr-ch' => 'የስዊዝ ፈረንሳይኛ',
+ 'fy' => 'የምዕራብ ፍሪስኛ',
+ 'ga' => 'አይሪሽ',
+ 'gaa' => 'ጋ',
+ 'gag' => 'ጋጉዝኛ',
+ 'gd' => 'እስኮትስ ጌልክኛ',
+ 'gez' => 'ግዕዝኛ',
+ 'gl' => 'ጋሊሺያ',
+ 'gn' => 'ጓራኒኛ',
+ 'gsw' => 'የስዊዝ ጀርመን',
+ 'gu' => 'ጉጃርቲኛ',
+ 'guz' => 'ጉስሊኛ',
+ 'gv' => 'ማንክስኛ',
+ 'ha' => 'ሃውሳኛ',
+ 'haw' => 'ሃዊያኛ',
+ 'he' => 'ዕብራስጥ',
+ 'hi' => 'ሒንዱኛ',
+ 'hr' => 'ክሮሽያንኛ',
+ 'hsb' => 'የላይኛው ሶርቢያንኛ',
+ 'ht' => 'ሃይትኛ',
+ 'hu' => 'ሀንጋሪኛ',
+ 'hy' => 'አርመናዊ',
+ 'ia' => 'ኢንቴርሊንጓ',
+ 'id' => 'ኢንዶኔዥኛ',
+ 'ie' => 'እንተርሊንግወ',
+ 'ig' => 'ኢግቦኛ',
+ 'ii' => 'ሲቹንዪኛ',
+ 'ik' => 'እኑፒያቅኛ',
+ 'is' => 'አይስላንድኛ',
+ 'it' => 'ጣሊያንኛ',
+ 'iu' => 'እኑክቲቱትኛ',
+ 'ja' => 'ጃፓንኛ',
+ 'jgo' => 'ንጎባኛ',
+ 'jmc' => 'ማቻሜኛ',
+ 'jv' => 'ጃቫንኛ',
+ 'ka' => 'ጆርጂያን',
+ 'kab' => 'ካብይል',
+ 'kam' => 'ካምባ',
+ 'kde' => 'ማኮንዴ',
+ 'kea' => 'ካቡቨርዲያኑ',
+ 'kg' => 'ኮንጎኛ',
+ 'khq' => 'ኮይራ ቺኒ',
+ 'ki' => 'ኪኩዩ',
+ 'kk' => 'ካዛክኛ',
+ 'kl' => 'ካላሊሱትኛ',
+ 'kln' => 'ካለንጂን',
+ 'km' => 'ክመርኛ ማእከላዊ',
+ 'kn' => 'ካናዳኛ',
+ 'ko' => 'ኮሪያኛ',
+ 'koi' => 'ኮሚ ፔርምያክ',
+ 'kok' => 'ኮካኒ',
+ 'ks' => 'ካሽሚርኛ',
+ 'ksb' => 'ሻምባላ',
+ 'ksf' => 'ባፊያ',
+ 'ku' => 'ኩርድሽኛ',
+ 'kw' => 'ኮርኒሽ',
+ 'ky' => 'ኪርጊዝኛ',
+ 'la' => 'ላቲንኛ',
+ 'lag' => 'ላንጊ',
+ 'lb' => 'ሉክዘምበርገርኛ',
+ 'lg' => 'ጋንዳኛ',
+ 'lkt' => 'ላኮታ',
+ 'ln' => 'ሊንጋላኛ',
+ 'lo' => 'ላውስኛ',
+ 'loz' => 'ሎዚኛ',
+ 'lt' => 'ሉቴንያንኛ',
+ 'lu' => 'ሉባ ካታንጋ',
+ 'lua' => 'ሉባ-ሉሏ',
+ 'luo' => 'ሉኦ',
+ 'luy' => 'ሉዪያ',
+ 'lv' => 'ላትቪያን',
+ 'mas' => 'ማሳይ',
+ 'mer' => 'ሜሩ',
+ 'mfe' => 'ሞሪሲየኛ',
+ 'mg' => 'ማላጋስኛ',
+ 'mgh' => 'ማኩዋ ሜቶ',
+ 'mgo' => 'ሜታ',
+ 'mi' => 'ማዮሪኛ',
+ 'mk' => 'ማሴዶንኛ',
+ 'ml' => 'ማላያላምኛ',
+ 'mn' => 'ሞንጎላዊኛ',
+ 'moh' => 'ሞሃውክ',
+ 'mr' => 'ማራቲኛ',
+ 'ms' => 'ማላይኛ',
+ 'mt' => 'ማልቲስኛ',
+ 'mua' => 'ሙንዳንግ',
+ 'my' => 'ቡርማኛ',
+ 'na' => 'ናኡሩ',
+ 'naq' => 'ናማ',
+ 'nb' => 'የኖርዌይ ቦክማል',
+ 'nd' => 'ሰሜን ንዴብሌ',
+ 'ne' => 'ኔፓሊኛ',
+ 'nl' => 'ደች',
+ 'nl-be' => 'ፍሌሚሽ',
+ 'nmg' => 'ክዋሲዮ',
+ 'nn' => 'የኖርዌይ ናይኖርስክ',
+ 'no' => 'ኖርዌጂያን',
+ 'nqo' => 'ንኮ',
+ 'nso' => 'ሰሜናዊ ሶቶ',
+ 'nus' => 'ኑዌር',
+ 'ny' => 'ንያንጃ',
+ 'nyn' => 'ኒያንኮልኛ',
+ 'oc' => 'ኦኪታንኛ',
+ 'om' => 'ኦሮሞኛ',
+ 'or' => 'ኦሪያኛ',
+ 'os' => 'ኦሴቲክ',
+ 'pa' => 'ፑንጃብኛ',
+ 'pl' => 'ፖሊሽኛ',
+ 'ps' => 'ፓሽቶኛ',
+ 'pt' => 'ፖርቹጋልኛ',
+ 'pt-br' => 'የብራዚል ፖርቹጋልኛ',
+ 'pt-pt' => 'የአውሮፓ ፖርቹጋልኛ',
+ 'qu' => 'ኵቿኛ',
+ 'quc' => 'ኪቼ',
+ 'rm' => 'ሮማንሽ',
+ 'rn' => 'ሩንዲኛ',
+ 'ro' => 'ሮማኒያን',
+ 'ro-md' => 'ሞልዳቫዊና',
+ 'rof' => 'ሮምቦ',
+ 'ru' => 'ራሽኛ',
+ 'rw' => 'ኪንያርዋንድኛ',
+ 'rwk' => 'ርዋ',
+ 'sa' => 'ሳንስክሪትኛ',
+ 'saq' => 'ሳምቡሩ',
+ 'sbp' => 'ሳንጉ',
+ 'sd' => 'ሲንድሂኛ',
+ 'se' => 'ሰሜናዊ ሳሚ',
+ 'seh' => 'ሴና',
+ 'ses' => 'ኮይራቦሮ ሴኒ',
+ 'sg' => 'ሳንጎኛ',
+ 'sh' => 'ሰርቦ-ክሮኤሽያኛ',
+ 'shi' => 'ታቼልሂት',
+ 'si' => 'ሲንሃልኛ',
+ 'sid' => 'ሲዳምኛ',
+ 'sk' => 'ስሎቫክኛ',
+ 'sl' => 'ስሎቪኛ',
+ 'sm' => 'ሳሞአኛ',
+ 'sma' => 'ደቡባዊ ሳሚ',
+ 'smj' => 'ሉሌ ሳሚ',
+ 'smn' => 'ኢናሪ ሳሚ',
+ 'sms' => 'ስኮልት ሳሚ',
+ 'sn' => 'ሾናኛ',
+ 'so' => 'ሱማልኛ',
+ 'sq' => 'ልቤኒኛ',
+ 'sr' => 'ሰርቢኛ',
+ 'ss' => 'ስዋቲኛ',
+ 'st' => 'ሶዞኛ',
+ 'su' => 'ሱዳንኛ',
+ 'sv' => 'ስዊድንኛ',
+ 'sw' => 'ስዋሂሊኛ',
+ 'swc' => 'ኮንጎ ስዋሂሊ',
+ 'ta' => 'ታሚልኛ',
+ 'te' => 'ተሉጉኛ',
+ 'teo' => 'ቴሶ',
+ 'tet' => 'ቴተም',
+ 'tg' => 'ታጂኪኛ',
+ 'th' => 'ታይኛ',
+ 'ti' => 'ትግርኛ',
+ 'tig' => 'ትግረ',
+ 'tk' => 'ቱርክመንኛ',
+ 'tl' => 'ታጋሎገኛ',
+ 'tlh' => 'ክሊንጎንኛ',
+ 'tn' => 'ጽዋናዊኛ',
+ 'to' => 'ቶንጋኛ',
+ 'tpi' => 'ቶክ ፒሲን',
+ 'tr' => 'ቱርክኛ',
+ 'ts' => 'ጾንጋኛ',
+ 'tt' => 'ታታርኛ',
+ 'tum' => 'ቱምቡካ',
+ 'tw' => 'ትዊኛ',
+ 'twq' => 'ታሳዋቅ',
+ 'ty' => 'ታሂታንኛ',
+ 'tzm' => 'መካከለኛ አትላስ ታማዚግት',
+ 'ug' => 'ኡዊግሁርኛ',
+ 'uk' => 'ዩክሬንኛ',
+ 'und' => 'ያልታወቀ ቋንቋ',
+ 'ur' => 'ኡርዱኛ',
+ 'uz' => 'ኡዝቤክኛ',
+ 'vai' => 'ቫይ',
+ 've' => 'ቬንዳ',
+ 'vi' => 'ቪትናምኛ',
+ 'vo' => 'ቮላፑክኛ',
+ 'vun' => 'ቩንጆ',
+ 'wo' => 'ዎሎፍኛ',
+ 'xh' => 'ዞሳኛ',
+ 'xog' => 'ሶጋ',
+ 'yi' => 'ይዲሽኛ',
+ 'yo' => 'ዮሩባዊኛ',
+ 'za' => 'ዡዋንግኛ',
+ 'zgh' => 'መደበኛ የሞሮኮ ታማዚግት',
+ 'zh' => 'ቻይንኛ',
+ 'zh-hans' => 'ቀለል ያለ ቻይንኛ',
+ 'zh-hant' => 'ባህላዊ ቻይንኛ',
+ 'zu' => 'ዙሉኛ',
+ 'zxx' => 'ቋንቋዊ ይዘት አይደለም',
+);
+
+$currencyNames = array(
+ 'AED' => 'የተባበሩት የአረብ ኤምረትስ ዲርሀም',
+ 'AFN' => 'የአፍጋን አፍጋኒ',
+ 'ALL' => 'የአልባንያ ሌክ',
+ 'AMD' => 'የአርመን ድራም',
+ 'ANG' => 'ኔዘርላንድስ አንቲሊአን ጊልደር',
+ 'AOA' => 'የአንጎላ ኩዋንዛ',
+ 'ARS' => 'የአርጀንቲና ፔሶ',
+ 'AUD' => 'የአውስትራሊያ ዶላር',
+ 'AWG' => 'አሩባን ፍሎሪን',
+ 'AZN' => 'የአዛርባጃን ማናት',
+ 'BAM' => 'የቦስኒያ ሄርዞጎቪና የሚመነዘር ማርክ',
+ 'BBD' => 'የባርቤዶስ ዶላር',
+ 'BDT' => 'የባንግላዲሽ ታካ',
+ 'BGN' => 'የቡልጋሪያ ሌቭ',
+ 'BHD' => 'የባኽሬን ዲናር',
+ 'BIF' => 'የብሩንዲ ፍራንክ',
+ 'BMD' => 'የቤርሙዳ ዶላር',
+ 'BND' => 'የብሩኔ ዶላር',
+ 'BOB' => 'የቦሊቪያ ቦሊቪያኖ',
+ 'BRL' => 'የብራዚል ሪል',
+ 'BSD' => 'የባሃማስ ዶላር',
+ 'BTN' => 'ብሁታኒዝ ንጉልትረም',
+ 'BWP' => 'የቦትስዋና ፑላ',
+ 'BYR' => 'የቤላሩስያ ሩብል',
+ 'BZD' => 'የቤሊዝ ዶላር',
+ 'CAD' => 'የካናዳ ዶላር',
+ 'CDF' => 'የኮንጐ ፍራንክ ኮንጐሌዝ',
+ 'CHF' => 'የስዊስ ፍራንክ',
+ 'CLP' => 'የቺሊ ፔሶ',
+ 'CNY' => 'የቻይና የን',
+ 'COP' => 'የኮሎምቢያ ፔሶ',
+ 'CRC' => 'የኮስታሪካ ኮሎን',
+ 'CUC' => 'የኩባ የሚመነዘር ፔሶ',
+ 'CUP' => 'የኩባ ፔሶ',
+ 'CVE' => 'የኬፕ ቫርዲ ኤስኩዶ',
+ 'CZK' => 'ቼክ ሪፐብሊክ ኮሩና',
+ 'DJF' => 'የጅቡቲ ፍራንክ',
+ 'DKK' => 'የዴንማርክ ክሮን',
+ 'DOP' => 'የዶሚኒክ ፔሶ',
+ 'DZD' => 'የአልጄሪያ ዲናር',
+ 'EGP' => 'የግብጽ ፓውንድ',
+ 'ERN' => 'የኤርትራ ናቅፋ',
+ 'ETB' => 'የኢትዮጵያ ብር',
+ 'EUR' => 'ዩሮ',
+ 'FJD' => 'የፊጂ ዶላር',
+ 'FKP' => 'የፎክላንድ ደሴቶች ፓውንድ',
+ 'GBP' => 'የእንግሊዝ ፓውንድ ስተርሊንግ',
+ 'GEL' => 'የጆርጅያ ላሪ',
+ 'GHC' => 'የጋና ሴዲ',
+ 'GHS' => 'የጋና ሲዲ',
+ 'GIP' => 'ጂብራልተር ፓውንድ',
+ 'GMD' => 'የጋምቢያ ዳላሲ',
+ 'GNF' => 'የጊኒ ፍራንክ',
+ 'GTQ' => 'ጓቲማላን ኩቲዛል',
+ 'GYD' => 'የጉየና ዶላር',
+ 'HKD' => 'የሆንግኮንግ ዶላር',
+ 'HNL' => 'የሃንዱራ ሌምፓአይራ',
+ 'HRK' => 'የክሮሽያ ኩና',
+ 'HTG' => 'የሃያቲ ጓርዴ',
+ 'HUF' => 'የሁንጋሪ ፎሪንት',
+ 'IDR' => 'የኢንዶኔዥያ ሩፒሃ',
+ 'ILS' => 'የእስራኤል አዲስ ሽቅል',
+ 'INR' => 'የሕንድ ሩፒ',
+ 'IQD' => 'የኢራቅ ዲናር',
+ 'IRR' => 'የኢራን ሪአል',
+ 'ISK' => 'የአይስላንድ ክሮና',
+ 'JMD' => 'የጃማይካ ዶላር',
+ 'JOD' => 'የጆርዳን ዲናር',
+ 'JPY' => 'የጃፓን የን',
+ 'KES' => 'የኬኒያ ሺሊንግ',
+ 'KGS' => 'የኪርጊስታን ሶም',
+ 'KHR' => 'የካምቦዲያ ሬል',
+ 'KMF' => 'የኮሞሮ ፍራንክ',
+ 'KPW' => 'የሰሜን ኮሪያ ዎን',
+ 'KRW' => 'የደቡብ ኮሪያ ዎን',
+ 'KWD' => 'የኩዌት ዲናር',
+ 'KYD' => 'የካይማን ደሴቶች ዶላር',
+ 'KZT' => 'የካዛኪስታን ተንጌ',
+ 'LAK' => 'የላኦቲ ኪፕ',
+ 'LBP' => 'የሊባኖስ ፓውንድ',
+ 'LKR' => 'የሲሪላንካ ሩፒ',
+ 'LRD' => 'የላይቤሪያ ዶላር',
+ 'LSL' => 'የሌሶቶ ሎቲ',
+ 'LTL' => 'ሊቱዌንያን ሊታስ',
+ 'LVL' => 'የላቲቫ ላትስ',
+ 'LYD' => 'የሊቢያ ዲናር',
+ 'MAD' => 'የሞሮኮ ዲርሀም',
+ 'MDL' => 'ሞልዶቫን ሊኡ',
+ 'MGA' => 'የማደጋስካር ማላጋስይ አሪያርይ',
+ 'MKD' => 'የሜቆድንያ ዲናር',
+ 'MMK' => 'ምያንማ ክያት',
+ 'MNT' => 'የሞንጎሊያን ቱግሪክ',
+ 'MOP' => 'የማካኔዝ ፓታካ',
+ 'MRO' => 'የሞሪቴኒያ ኦውጉያ',
+ 'MUR' => 'የሞሪሸስ ሩፒ',
+ 'MVR' => 'የማልዲቫ ሩፊያ',
+ 'MWK' => 'የማላዊ ኩዋቻ',
+ 'MXN' => 'የሜክሲኮ ፔሶ',
+ 'MYR' => 'የማሌዥያ ሪንጊት',
+ 'MZN' => 'የሞዛምቢክ ሜቲካል',
+ 'NAD' => 'የናሚቢያ ዶላር',
+ 'NGN' => 'የናይጄሪያ ናይራ',
+ 'NIO' => 'የኒካራጓ ኮርዶባ',
+ 'NOK' => 'የኖርዌይ ክሮን',
+ 'NPR' => 'የኔፓል ሩፒ',
+ 'NZD' => 'የኒውዚላንድ ዶላር',
+ 'OMR' => 'የኦማን ሪአል',
+ 'PAB' => 'ፓናማኒአን ባልቦአ',
+ 'PEN' => 'የፔሩቪያ ኑኤቮ ሶል',
+ 'PGK' => 'የፓፕዋ ኒው ጊኒ ኪና',
+ 'PHP' => 'የፊሊፒንስ ፔሶ',
+ 'PKR' => 'የፓኪስታን ሩፒ',
+ 'PLN' => 'የፖላንድ ዝሎቲ',
+ 'PYG' => 'የፓራጓይ ጉአራኒ',
+ 'QAR' => 'የኳታር ሪአል',
+ 'RON' => 'የሮማኒያ ለው',
+ 'RSD' => 'የሰርቢያ ዲናር',
+ 'RUB' => 'የሩስያ ሩብል',
+ 'RWF' => 'የሩዋንዳ ፍራንክ',
+ 'SAR' => 'የሳውዲ ሪያል',
+ 'SBD' => 'የሰለሞን ደሴቶች ዶላር',
+ 'SCR' => 'የሲሼል ሩፒ',
+ 'SDG' => 'የሱዳን ዲናር',
+ 'SDP' => 'የሱዳን ፓውንድ',
+ 'SEK' => 'የስዊድን ክሮና',
+ 'SGD' => 'የሲንጋፖር ዶላር',
+ 'SHP' => 'የሴይንት ሔሌና ፓውንድ',
+ 'SLL' => 'የሴራሊዎን ሊዎን',
+ 'SOS' => 'የሶማሌ ሺሊንግ',
+ 'SRD' => 'የሰርናሜዝ ዶላር',
+ 'SSP' => 'የደቡብ ሱዳን ፓውንድ',
+ 'STD' => 'የሳኦ ቶመ እና ፕሪንሲፐ ዶብራ',
+ 'SYP' => 'የሲሪያ ፓውንድ',
+ 'SZL' => 'የስዋዚላንድ ሊላንገኒ',
+ 'THB' => 'የታይላንድ ባህት',
+ 'TJS' => 'የታጂክስታን ሶሞኒ',
+ 'TMT' => 'ቱርክሜኒስታኒ ማናት',
+ 'TND' => 'የቱኒዚያ ዲናር',
+ 'TOP' => 'ቶንጋን ፓ’አንጋ',
+ 'TRY' => 'የቱርክ ሊራ',
+ 'TTD' => 'የትሪንዳድ እና ቶቤጎዶላር',
+ 'TWD' => 'የአዲሷ ታይዋን ዶላር',
+ 'TZS' => 'የታንዛኒያ ሺሊንግ',
+ 'UAH' => 'የዩክሬን ሀሪይቭኒአ',
+ 'UGX' => 'የዩጋንዳ ሺሊንግ',
+ 'USD' => 'የአሜሪካን ዶላር',
+ 'UYU' => 'የኡራጓይ ፔሶ',
+ 'UZS' => 'የኡዝፔኪስታን ሶም',
+ 'VEF' => 'የቬንዝዌላ ቦሊቫር',
+ 'VND' => 'የቭየትናም ዶንግ',
+ 'VUV' => 'የቫንዋንቱ ቫቱ',
+ 'WST' => 'ሳሞአን ታላ',
+ 'XAF' => 'ሴኤፍአ ፍራንክ ቤእአሴ',
+ 'XCD' => 'የምዕራብ ካሪብያን ዶላር',
+ 'XOF' => 'ሴኤፍአ ፍራንክ ቤሴእአኦ',
+ 'XPF' => 'ሲ ኤፍ ፒ ፍራንክ',
+ 'XXX' => 'ያልታወቀ ገንዘብ',
+ 'YER' => 'የየመን ሪአል',
+ 'ZAR' => 'የደቡብ አፍሪካ ራንድ',
+ 'ZMK' => 'የዛምቢያ ክዋቻ (1968–2012)',
+ 'ZMW' => 'የዛምቢያ ክዋቻ',
+ 'ZWD' => 'የዚምቧቡዌ ዶላር',
+);
+
+$currencySymbols = array(
+ 'AED' => 'AED',
+ 'AFN' => 'AFN',
+ 'ALL' => 'ALL',
+ 'AMD' => 'AMD',
+ 'ANG' => 'ANG',
+ 'AOA' => 'AOA',
+ 'ARS' => 'ARS',
+ 'AUD' => 'AU$',
+ 'AWG' => 'AWG',
+ 'AZN' => 'AZN',
+ 'BAM' => 'BAM',
+ 'BBD' => 'BBD',
+ 'BDT' => 'BDT',
+ 'BGN' => 'BGN',
+ 'BHD' => 'BHD',
+ 'BIF' => 'BIF',
+ 'BMD' => 'BMD',
+ 'BND' => 'BND',
+ 'BOB' => 'BOB',
+ 'BRL' => 'R$',
+ 'BSD' => 'BSD',
+ 'BTN' => 'BTN',
+ 'BWP' => 'BWP',
+ 'BYR' => 'BYR',
+ 'BZD' => 'BZD',
+ 'CAD' => 'CA$',
+ 'CDF' => 'CDF',
+ 'CHF' => 'CHF',
+ 'CLP' => 'CLP',
+ 'CNY' => 'CN¥',
+ 'COP' => 'COP',
+ 'CRC' => 'CRC',
+ 'CUC' => 'CUC',
+ 'CUP' => 'CUP',
+ 'CVE' => 'CVE',
+ 'CZK' => 'CZK',
+ 'DJF' => 'DJF',
+ 'DKK' => 'DKK',
+ 'DOP' => 'DOP',
+ 'DZD' => 'DZD',
+ 'EGP' => 'EGP',
+ 'ERN' => 'ERN',
+ 'ETB' => 'ብር',
+ 'EUR' => '€',
+ 'FJD' => 'FJD',
+ 'FKP' => 'FKP',
+ 'GBP' => '£',
+ 'GEL' => 'GEL',
+ 'GHS' => 'GHS',
+ 'GIP' => 'GIP',
+ 'GMD' => 'GMD',
+ 'GNF' => 'GNF',
+ 'GTQ' => 'GTQ',
+ 'GYD' => 'GYD',
+ 'HKD' => 'HK$',
+ 'HNL' => 'HNL',
+ 'HRK' => 'HRK',
+ 'HTG' => 'HTG',
+ 'HUF' => 'HUF',
+ 'IDR' => 'IDR',
+ 'ILS' => '₪',
+ 'INR' => '₹',
+ 'IQD' => 'IQD',
+ 'IRR' => 'IRR',
+ 'ISK' => 'ISK',
+ 'JMD' => 'JMD',
+ 'JOD' => 'JOD',
+ 'JPY' => 'JP¥',
+ 'KES' => 'KES',
+ 'KGS' => 'KGS',
+ 'KHR' => 'KHR',
+ 'KMF' => 'KMF',
+ 'KPW' => 'KPW',
+ 'KRW' => '₩',
+ 'KWD' => 'KWD',
+ 'KYD' => 'KYD',
+ 'KZT' => 'KZT',
+ 'LAK' => 'LAK',
+ 'LBP' => 'LBP',
+ 'LKR' => 'LKR',
+ 'LRD' => 'LRD',
+ 'LTL' => 'LTL',
+ 'LVL' => 'LVL',
+ 'LYD' => 'LYD',
+ 'MAD' => 'MAD',
+ 'MDL' => 'MDL',
+ 'MGA' => 'MGA',
+ 'MKD' => 'MKD',
+ 'MMK' => 'MMK',
+ 'MNT' => 'MNT',
+ 'MOP' => 'MOP',
+ 'MRO' => 'MRO',
+ 'MUR' => 'MUR',
+ 'MVR' => 'MVR',
+ 'MWK' => 'MWK',
+ 'MXN' => 'MX$',
+ 'MYR' => 'MYR',
+ 'MZN' => 'MZN',
+ 'NAD' => 'NAD',
+ 'NGN' => 'NGN',
+ 'NIO' => 'NIO',
+ 'NOK' => 'NOK',
+ 'NPR' => 'NPR',
+ 'NZD' => 'NZ$',
+ 'OMR' => 'OMR',
+ 'PAB' => 'PAB',
+ 'PEN' => 'PEN',
+ 'PGK' => 'PGK',
+ 'PHP' => 'PHP',
+ 'PKR' => 'PKR',
+ 'PLN' => 'PLN',
+ 'PYG' => 'PYG',
+ 'QAR' => 'QAR',
+ 'RON' => 'RON',
+ 'RSD' => 'RSD',
+ 'RUB' => 'RUB',
+ 'RWF' => 'RWF',
+ 'SAR' => 'SAR',
+ 'SBD' => 'SBD',
+ 'SCR' => 'SCR',
+ 'SDG' => 'SDG',
+ 'SEK' => 'SEK',
+ 'SGD' => 'SGD',
+ 'SHP' => 'SHP',
+ 'SLL' => 'SLL',
+ 'SOS' => 'SOS',
+ 'SRD' => 'SRD',
+ 'SSP' => 'SSP',
+ 'STD' => 'STD',
+ 'SYP' => 'SYP',
+ 'SZL' => 'SZL',
+ 'THB' => '฿',
+ 'TJS' => 'TJS',
+ 'TMT' => 'TMT',
+ 'TND' => 'TND',
+ 'TOP' => 'TOP',
+ 'TRY' => 'TRY',
+ 'TTD' => 'TTD',
+ 'TWD' => 'NT$',
+ 'TZS' => 'TZS',
+ 'UAH' => 'UAH',
+ 'UGX' => 'UGX',
+ 'USD' => 'US$',
+ 'UYU' => 'UYU',
+ 'UZS' => 'UZS',
+ 'VEF' => 'VEF',
+ 'VND' => '₫',
+ 'VUV' => 'VUV',
+ 'WST' => 'WST',
+ 'XAF' => 'FCFA',
+ 'XCD' => 'EC$',
+ 'XOF' => 'CFA',
+ 'XPF' => 'CFPF',
+ 'YER' => 'YER',
+ 'ZAR' => 'ZAR',
+ 'ZMW' => 'ZMW',
+);
+
+$countryNames = array(
+ 'AC' => 'አሴንሽን ደሴት',
+ 'AD' => 'አንዶራ',
+ 'AE' => 'የተባበሩት አረብ ኤምሬትስ',
+ 'AF' => 'አፍጋኒስታን',
+ 'AG' => 'አንቲጓ እና ባሩዳ',
+ 'AI' => 'አንጉኢላ',
+ 'AL' => 'አልባኒያ',
+ 'AM' => 'አርሜኒያ',
+ 'AN' => 'ኔዘርላንድስ አንቲልስ',
+ 'AO' => 'አንጐላ',
+ 'AQ' => 'አንታርክቲካ',
+ 'AR' => 'አርጀንቲና',
+ 'AS' => 'የአሜሪካ ሳሞአ',
+ 'AT' => 'ኦስትሪያ',
+ 'AU' => 'አውስትራልያ',
+ 'AW' => 'አሩባ',
+ 'AX' => 'የአላንድ ደሴቶች',
+ 'AZ' => 'አዘርባጃን',
+ 'BA' => 'ቦስኒያ እና ሄርዞጎቪኒያ',
+ 'BB' => 'ባርቤዶስ',
+ 'BD' => 'ባንግላዲሽ',
+ 'BE' => 'ቤልጄም',
+ 'BF' => 'ቡርኪና ፋሶ',
+ 'BG' => 'ቡልጌሪያ',
+ 'BH' => 'ባህሬን',
+ 'BI' => 'ብሩንዲ',
+ 'BJ' => 'ቤኒን',
+ 'BL' => 'ቅዱስ በርቴሎሜ',
+ 'BM' => 'ቤርሙዳ',
+ 'BN' => 'ብሩኒ',
+ 'BO' => 'ቦሊቪያ',
+ 'BQ' => 'የካሪቢያን ኔዘርላንድስ',
+ 'BR' => 'ብራዚል',
+ 'BS' => 'ባሃማስ',
+ 'BT' => 'ቡህታን',
+ 'BV' => 'ቡቬት ደሴት',
+ 'BW' => 'ቦትስዋና',
+ 'BY' => 'ቤላሩስ',
+ 'BZ' => 'ቤሊዘ',
+ 'CA' => 'ካናዳ',
+ 'CC' => 'ኮኮስ(ኬሊንግ) ደሴቶች',
+ 'CD' => 'ኮንጎ-ኪንሻሳ',
+ 'CF' => 'የመካከለኛው አፍሪካ ሪፐብሊክ',
+ 'CG' => 'ኮንጎ ብራዛቪል',
+ 'CH' => 'ስዊዘርላንድ',
+ 'CI' => 'ኮት ዲቯር',
+ 'CK' => 'ኩክ ደሴቶች',
+ 'CL' => 'ቺሊ',
+ 'CM' => 'ካሜሩን',
+ 'CN' => 'ቻይና',
+ 'CO' => 'ኮሎምቢያ',
+ 'CP' => 'ክሊፐርቶን ደሴት',
+ 'CR' => 'ኮስታ ሪካ',
+ 'CU' => 'ኩባ',
+ 'CV' => 'ኬፕ ቬርዴ',
+ 'CW' => 'ኩራሳዎ',
+ 'CX' => 'የገና ደሴት',
+ 'CY' => 'ሳይፕረስ',
+ 'CZ' => 'ቼክ ሪፑብሊክ',
+ 'DE' => 'ጀርመን',
+ 'DG' => 'ዲዬጎ ጋርሺያ',
+ 'DJ' => 'ጂቡቲ',
+ 'DK' => 'ዴንማርክ',
+ 'DM' => 'ዶሚኒካ',
+ 'DO' => 'ዶሚኒክ ሪፑብሊክ',
+ 'DZ' => 'አልጄሪያ',
+ 'EA' => 'ሴኡታና ሜሊላ',
+ 'EC' => 'ኢኳዶር',
+ 'EE' => 'ኤስቶኒያ',
+ 'EG' => 'ግብጽ',
+ 'EH' => 'ምዕራባዊ ሳህራ',
+ 'ER' => 'ኤርትራ',
+ 'ES' => 'ስፔን',
+ 'ET' => 'ኢትዮጵያ',
+ 'EU' => 'የአውሮፓ ህብረት',
+ 'FI' => 'ፊንላንድ',
+ 'FJ' => 'ፊጂ',
+ 'FK' => 'የፎክላንድ ደሴቶች',
+ 'FM' => 'ሚክሮኔዢያ',
+ 'FO' => 'የፋሮ ደሴቶች',
+ 'FR' => 'ፈረንሳይ',
+ 'GA' => 'ጋቦን',
+ 'GB' => 'ዩናይትድ ኪንግደም',
+ 'GD' => 'ግሬናዳ',
+ 'GE' => 'ጆርጂያ',
+ 'GF' => 'የፈረንሳይ ጉዊአና',
+ 'GG' => 'ጉርነሲ',
+ 'GH' => 'ጋና',
+ 'GI' => 'ጂብራልተር',
+ 'GL' => 'ግሪንላንድ',
+ 'GM' => 'ጋምቢያ',
+ 'GN' => 'ጊኒ',
+ 'GP' => 'ጉዋደሉፕ',
+ 'GQ' => 'ኢኳቶሪያል ጊኒ',
+ 'GR' => 'ግሪክ',
+ 'GS' => 'ደቡብ ጆርጂያ እና የደቡብ ሳንድዊች ደሴቶች',
+ 'GT' => 'ጉዋቲማላ',
+ 'GU' => 'ጉዋም',
+ 'GW' => 'ጊኒ ቢሳኦ',
+ 'GY' => 'ጉያና',
+ 'HK' => 'ሆንግ ኮንግ',
+ 'HM' => 'ኽርድ ደሴቶችና ማክዶናልድ ደሴቶች',
+ 'HN' => 'ሆንዱራስ',
+ 'HR' => 'ክሮኤሽያ',
+ 'HT' => 'ሀይቲ',
+ 'HU' => 'ሀንጋሪ',
+ 'IC' => 'የካናሪ ደሴቶች',
+ 'ID' => 'ኢንዶኔዢያ',
+ 'IE' => 'አየርላንድ',
+ 'IL' => 'እስራኤል',
+ 'IM' => 'አይል ኦፍ ማን',
+ 'IN' => 'ህንድ',
+ 'IO' => 'የብሪታኒያ ህንድ ውቂያኖስ ግዛት',
+ 'IQ' => 'ኢራቅ',
+ 'IR' => 'ኢራን',
+ 'IS' => 'አይስላንድ',
+ 'IT' => 'ጣሊያን',
+ 'JE' => 'ጀርሲ',
+ 'JM' => 'ጃማይካ',
+ 'JO' => 'ጆርዳን',
+ 'JP' => 'ጃፓን',
+ 'KE' => 'ኬንያ',
+ 'KG' => 'ኪርጊስታን',
+ 'KH' => 'ካምቦዲያ',
+ 'KI' => 'ኪሪባቲ',
+ 'KM' => 'ኮሞሮስ',
+ 'KN' => 'ቅዱስ ኪትስ እና ኔቪስ',
+ 'KP' => 'ሰሜን ኮሪያ',
+ 'KR' => 'ደቡብ ኮሪያ',
+ 'KW' => 'ክዌት',
+ 'KY' => 'ካይማን ደሴቶች',
+ 'KZ' => 'ካዛኪስታን',
+ 'LA' => 'ላኦስ',
+ 'LB' => 'ሊባኖስ',
+ 'LC' => 'ሴንት ሉቺያ',
+ 'LI' => 'ሊችተንስታይን',
+ 'LK' => 'ሲሪላንካ',
+ 'LR' => 'ላይቤሪያ',
+ 'LS' => 'ሌሶቶ',
+ 'LT' => 'ሊቱዌኒያ',
+ 'LU' => 'ሉክሰምበርግ',
+ 'LV' => 'ላትቪያ',
+ 'LY' => 'ሊቢያ',
+ 'MA' => 'ሞሮኮ',
+ 'MC' => 'ሞናኮ',
+ 'MD' => 'ሞልዶቫ',
+ 'ME' => 'ሞንተኔግሮ',
+ 'MF' => 'ሴንት ማርቲን',
+ 'MG' => 'ማዳጋስካር',
+ 'MH' => 'ማርሻል አይላንድ',
+ 'MK' => 'መቄዶንያ',
+ 'ML' => 'ማሊ',
+ 'MM' => 'ማይናማር(በርማ)',
+ 'MN' => 'ሞንጎሊያ',
+ 'MO' => 'ማካኡ',
+ 'MP' => 'የሰሜናዊ ማሪያና ደሴቶች',
+ 'MQ' => 'ማርቲኒክ',
+ 'MR' => 'ሞሪቴኒያ',
+ 'MS' => 'ሞንትሴራት',
+ 'MT' => 'ማልታ',
+ 'MU' => 'ሞሪሸስ',
+ 'MV' => 'ማልዲቭስ',
+ 'MW' => 'ማላዊ',
+ 'MX' => 'ሜክሲኮ',
+ 'MY' => 'ማሌዢያ',
+ 'MZ' => 'ሞዛምቢክ',
+ 'NA' => 'ናሚቢያ',
+ 'NC' => 'ኒው ካሌዶኒያ',
+ 'NE' => 'ኒጀር',
+ 'NF' => 'ኖርፎልክ ደሴት',
+ 'NG' => 'ናይጄሪያ',
+ 'NI' => 'ኒካራጓ',
+ 'NL' => 'ኔዘርላንድ',
+ 'NO' => 'ኖርዌ',
+ 'NP' => 'ኔፓል',
+ 'NR' => 'ናኡሩ',
+ 'NU' => 'ኒኡይ',
+ 'NZ' => 'ኒው ዚላንድ',
+ 'OM' => 'ኦማን',
+ 'PA' => 'ፓናማ',
+ 'PE' => 'ፔሩ',
+ 'PF' => 'የፈረንሳይ ፖሊኔዢያ',
+ 'PG' => 'ፓፑዋ ኒው ጊኒ',
+ 'PH' => 'ፊሊፒንስ',
+ 'PK' => 'ፓኪስታን',
+ 'PL' => 'ፖላንድ',
+ 'PM' => 'ቅዱስ ፒዬር እና ሚኩኤሎን',
+ 'PN' => 'ፒትካኢርን አይስላንድ',
+ 'PR' => 'ፖርታ ሪኮ',
+ 'PS' => 'ፍልስጥኤም',
+ 'PT' => 'ፖርቱጋል',
+ 'PW' => 'ፓላው',
+ 'PY' => 'ፓራጓይ',
+ 'QA' => 'ኳታር',
+ 'QO' => 'አውትላይንግ ኦሽንያ',
+ 'RE' => 'ሪዩኒየን',
+ 'RO' => 'ሮሜኒያ',
+ 'RS' => 'ሰርብያ',
+ 'RU' => 'ራሺያ',
+ 'RW' => 'ሩዋንዳ',
+ 'SA' => 'ሳውድአረቢያ',
+ 'SB' => 'ሰሎሞን ደሴት',
+ 'SC' => 'ሲሼልስ',
+ 'SD' => 'ሱዳን',
+ 'SE' => 'ስዊድን',
+ 'SG' => 'ሲንጋፖር',
+ 'SH' => 'ሴንት ሄለና',
+ 'SI' => 'ስሎቬኒያ',
+ 'SJ' => 'ስቫልባርድ እና ጃን ማየን',
+ 'SK' => 'ስሎቫኪያ',
+ 'SL' => 'ሴራሊዮን',
+ 'SM' => 'ሳን ማሪኖ',
+ 'SN' => 'ሴኔጋል',
+ 'SO' => 'ሱማሌ',
+ 'SR' => 'ሱሪናም',
+ 'SS' => 'ደቡብ ሱዳን',
+ 'ST' => 'ሳኦ ቶሜ እና ፕሪንሲፔ',
+ 'SV' => 'ኤል ሳልቫዶር',
+ 'SX' => 'ሲንት ማርተን',
+ 'SY' => 'ሲሪያ',
+ 'SZ' => 'ሱዋዚላንድ',
+ 'TA' => 'ትሪስታን ዲ ኩንሃ',
+ 'TC' => 'የቱርኮችና የካኢኮስ ደሴቶች',
+ 'TD' => 'ቻድ',
+ 'TF' => 'የፈረንሳይ ደቡባዊ ግዛቶች',
+ 'TG' => 'ቶጐ',
+ 'TH' => 'ታይላንድ',
+ 'TJ' => 'ታጃኪስታን',
+ 'TK' => 'ቶክላው',
+ 'TL' => 'ምስራቅ ሌስት',
+ 'TM' => 'ቱርክሜኒስታን',
+ 'TN' => 'ቱኒዚያ',
+ 'TO' => 'ቶንጋ',
+ 'TR' => 'ቱርክ',
+ 'TT' => 'ትሪናዳድ እና ቶቤጎ',
+ 'TV' => 'ቱቫሉ',
+ 'TW' => 'ታይዋን',
+ 'TZ' => 'ታንዛኒያ',
+ 'UA' => 'ዩክሬን',
+ 'UG' => 'ዩጋንዳ',
+ 'UM' => 'የዩ ኤስ ጠረፍ ላይ ያሉ ደሴቶች',
+ 'US' => 'ዩ ኤስ',
+ 'UY' => 'ኡራጓይ',
+ 'UZ' => 'ኡዝቤኪስታን',
+ 'VA' => 'ቫቲካን ከተማ',
+ 'VC' => 'ቅዱስ ቪንሴንት እና ግሬናዲንስ',
+ 'VE' => 'ቬንዙዌላ',
+ 'VG' => 'የእንግሊዝ ቨርጂን ደሴቶች',
+ 'VI' => 'የአሜሪካ ቨርጂን ደሴቶች',
+ 'VN' => 'ቬትናም',
+ 'VU' => 'ቫኑአቱ',
+ 'WF' => 'ዋሊስ እና ፉቱና ደሴቶች',
+ 'WS' => 'ሳሞአ',
+ 'XK' => 'ኮሶቮ',
+ 'YE' => 'የመን',
+ 'YT' => 'ሜይኦቴ',
+ 'ZA' => 'ደቡብ አፍሪካ',
+ 'ZM' => 'ዛምቢያ',
+ 'ZW' => 'ዚምቧቤ',
+);
+
+$timeUnits = array(
+ 'day-future-one' => 'በ{0} ቀን ውስጥ',
+ 'day-future-other' => 'በ{0} ቀናት ውስጥ',
+ 'day-narrow-future-one' => 'በ{0} ቀን ውስጥ',
+ 'day-narrow-future-other' => 'በ{0} ቀኖች ውስጥ',
+ 'day-narrow-past-one' => 'ከ {0} ቀን በፊት',
+ 'day-narrow-past-other' => 'ከ{0} ቀኖች በፊት',
+ 'day-one' => '{0} ቀናት',
+ 'day-other' => '{0} ቀናት',
+ 'day-past-one' => 'ከ{0} ቀን በፊት',
+ 'day-past-other' => 'ከ{0} ቀናት በፊት',
+ 'day-short-future-one' => 'በ{0} ቀን ውስጥ',
+ 'day-short-future-other' => 'በ{0} ቀኖች ውስጥ',
+ 'day-short-past-one' => 'ከ {0} ቀን በፊት',
+ 'day-short-past-other' => 'ከ{0} ቀኖች በፊት',
+ 'hour-future-one' => 'በ{0} ሰዓት ውስጥ',
+ 'hour-future-other' => 'በ{0} ሰዓቶች ውስጥ',
+ 'hour-narrow-future-one' => 'በ{0} ሰዓት ውስጥ',
+ 'hour-narrow-future-other' => 'በ{0} ሰዓቶች ውስጥ',
+ 'hour-narrow-past-one' => 'ከ{0} ሰዓት በፊት',
+ 'hour-narrow-past-other' => 'ከ{0} ሰዓቶች በፊት',
+ 'hour-one' => '{0} ሰዓት',
+ 'hour-other' => '{0} ሰዓቶች',
+ 'hour-past-one' => 'ከ{0} ሰዓት በፊት',
+ 'hour-past-other' => 'ከ{0} ሰዓቶች በፊት',
+ 'hour-short-future-one' => 'በ{0} ሰዓት ውስጥ',
+ 'hour-short-future-other' => 'በ{0} ሰዓቶች ውስጥ',
+ 'hour-short-past-one' => 'ከ{0} ሰዓት በፊት',
+ 'hour-short-past-other' => 'ከ{0} ሰዓቶች በፊት',
+ 'microsecond-one' => '{0} ማይክሮሰከንድ',
+ 'microsecond-other' => '{0} ማይክሮሰከንድ',
+ 'millisecond-one' => '{0} ሚሊሰከንድ',
+ 'millisecond-other' => '{0} ሚሊሰከንድ',
+ 'minute-future-one' => 'በ{0} ደቂቃ ውስጥ',
+ 'minute-future-other' => 'በ{0} ደቂቃዎች ውስጥ',
+ 'minute-narrow-future-one' => 'በ{0} ደቂቃ ውስጥ',
+ 'minute-narrow-future-other' => 'በ{0} ደቂቃዎች ውስጥ',
+ 'minute-narrow-past-one' => 'ከ{0} ደቂቃ በፊት',
+ 'minute-narrow-past-other' => 'ከ{0} ደቂቃዎች በፊት',
+ 'minute-one' => '{0} ደቂቃ',
+ 'minute-other' => '{0} ደቂቃዎች',
+ 'minute-past-one' => 'ከ{0} ደቂቃ በፊት',
+ 'minute-past-other' => 'ከ{0} ደቂቃዎች በፊት',
+ 'minute-short-future-one' => 'በ{0} ደቂቃ ውስጥ',
+ 'minute-short-future-other' => 'በ{0} ደቂቃዎች ውስጥ',
+ 'minute-short-past-one' => 'ከ{0} ደቂቃ በፊት',
+ 'minute-short-past-other' => 'ከ{0} ደቂቃዎች በፊት',
+ 'month-future-one' => 'በ{0} ወር ውስጥ',
+ 'month-future-other' => 'በ{0} ወራት ውስጥ',
+ 'month-narrow-future-one' => 'በ{0} ወራት ውስጥ',
+ 'month-narrow-future-other' => 'በ{0} ወራት ውስጥ',
+ 'month-narrow-past-one' => 'ከ{0} ወራት በፊት',
+ 'month-narrow-past-other' => 'ከ{0} ወራት በፊት',
+ 'month-one' => '{0} ወር',
+ 'month-other' => '{0} ወራት',
+ 'month-past-one' => 'ከ{0} ወር በፊት',
+ 'month-past-other' => 'ከ{0} ወራት በፊት',
+ 'month-short-future-one' => 'በ{0} ወራት ውስጥ',
+ 'month-short-future-other' => 'በ{0} ወራት ውስጥ',
+ 'month-short-past-one' => 'ከ{0} ወራት በፊት',
+ 'month-short-past-other' => 'ከ{0} ወራት በፊት',
+ 'nanosecond-one' => '{0} ናኖሰከንድ',
+ 'nanosecond-other' => '{0} ናኖሰከንድ',
+ 'quarter-future-one' => '+{0} ሩብ',
+ 'quarter-future-other' => '+{0} ሩብ',
+ 'quarter-narrow-future-one' => '+{0} ሩብ',
+ 'quarter-narrow-future-other' => '+{0} ሩብ',
+ 'quarter-narrow-past-one' => '-{0} Q ሩብ',
+ 'quarter-narrow-past-other' => '-{0} Q ሩብ',
+ 'quarter-past-one' => '-{0} Q ሩብ',
+ 'quarter-past-other' => '-{0} Q ሩብ',
+ 'quarter-short-future-one' => '+{0} ሩብ',
+ 'quarter-short-future-other' => '+{0} ሩብ',
+ 'quarter-short-past-one' => '-{0} Q ሩብ',
+ 'quarter-short-past-other' => '-{0} Q ሩብ',
+ 'second-future-one' => 'በ{0} ሰከንድ ውስጥ',
+ 'second-future-other' => 'በ{0} ሰከንዶች ውስጥ',
+ 'second-narrow-future-one' => 'በ{0} ሰከንድ ውስጥ',
+ 'second-narrow-future-other' => 'በ{0} ሰከንዶች ውስጥ',
+ 'second-narrow-past-one' => 'ከ{0} ሰከንድ በፊት',
+ 'second-narrow-past-other' => 'ከ{0} ሰከንዶች በፊት',
+ 'second-one' => '{0} ሰከንድ',
+ 'second-other' => '{0} ሰከንዶች',
+ 'second-past-one' => 'ከ{0} ሰከንድ በፊት',
+ 'second-past-other' => 'ከ{0} ሰከንዶች በፊት',
+ 'second-short-future-one' => 'በ{0} ሰከንድ ውስጥ',
+ 'second-short-future-other' => 'በ{0} ሰከንዶች ውስጥ',
+ 'second-short-past-one' => 'ከ{0} ሰከንድ በፊት',
+ 'second-short-past-other' => 'ከ{0} ሰከንዶች በፊት',
+ 'week-future-one' => 'በ{0} ሳምንት ውስጥ',
+ 'week-future-other' => 'በ{0} ሳምንታት ውስጥ',
+ 'week-narrow-future-one' => 'በ{0} ሳምንታት ውስጥ',
+ 'week-narrow-future-other' => 'በ{0} ሳምንታት ውስጥ',
+ 'week-narrow-past-one' => 'ከ{0} ሳምንታት በፊት',
+ 'week-narrow-past-other' => 'ከ{0} ሳምንታት በፊት',
+ 'week-one' => '{0} ሳምንት',
+ 'week-other' => '{0} ሳምንታት',
+ 'week-past-one' => 'ከ{0} ሳምንት በፊት',
+ 'week-past-other' => 'ከ{0} ሳምንታት በፊት',
+ 'week-short-future-one' => 'በ{0} ሳምንታት ውስጥ',
+ 'week-short-future-other' => 'በ{0} ሳምንታት ውስጥ',
+ 'week-short-past-one' => 'ከ{0} ሳምንታት በፊት',
+ 'week-short-past-other' => 'ከ{0} ሳምንታት በፊት',
+ 'year-future-one' => 'በ{0} ዓመታት ውስጥ',
+ 'year-future-other' => 'በ{0} ዓመታት ውስጥ',
+ 'year-narrow-future-one' => 'በ{0} ዓመታት ውስጥ',
+ 'year-narrow-future-other' => 'በ{0} ዓመታት ውስጥ',
+ 'year-narrow-past-one' => 'ከ{0} ዓመታት በፊት',
+ 'year-narrow-past-other' => 'ከ{0} ዓመታት በፊት',
+ 'year-one' => '{0} ዓመታት',
+ 'year-other' => '{0} ዓመታት',
+ 'year-past-one' => 'ከ{0} ዓመት በፊት',
+ 'year-past-other' => 'ከ{0} ዓመታት በፊት',
+ 'year-short-future-one' => 'በ{0} ዓመታት ውስጥ',
+ 'year-short-future-other' => 'በ{0} ዓመታት ውስጥ',
+ 'year-short-past-one' => 'ከ{0} ዓመታት በፊት',
+ 'year-short-past-other' => 'ከ{0} ዓመታት በፊት',
+);
diff --git a/MLEB/cldr/CldrNames/CldrNamesAr.php b/MLEB/cldr/CldrNames/CldrNamesAr.php
new file mode 100644
index 00000000..4a73a50d
--- /dev/null
+++ b/MLEB/cldr/CldrNames/CldrNamesAr.php
@@ -0,0 +1,1528 @@
+<?php
+
+$languageNames = array(
+ 'aa' => 'الأفارية',
+ 'ab' => 'الأبخازية',
+ 'ace' => 'الأتشينيزية',
+ 'ach' => 'الأكولية',
+ 'ada' => 'الأدانجمية',
+ 'ady' => 'الأديجه',
+ 'ae' => 'الأفستية',
+ 'af' => 'الأفريقانية',
+ 'afh' => 'الأفريهيلية',
+ 'agq' => 'الأغم',
+ 'ain' => 'الآينوية',
+ 'ak' => 'الأكانية',
+ 'akk' => 'الأكادية',
+ 'ale' => 'الأليوتية',
+ 'alt' => 'الألطائية الجنوبية',
+ 'am' => 'الأمهرية',
+ 'an' => 'الأراجونية',
+ 'ang' => 'الإنجليزية القديمة',
+ 'anp' => 'الأنجيكا',
+ 'ar' => 'العربية',
+ 'ar-001' => 'العربية الرسمية الحديثة',
+ 'arc' => 'الآرامية',
+ 'arn' => 'الأروكانية',
+ 'arp' => 'الأراباهو',
+ 'arw' => 'الأراواكية',
+ 'as' => 'الأسامية',
+ 'asa' => 'آسو',
+ 'ast' => 'الأسترية',
+ 'av' => 'الأفاريكية',
+ 'awa' => 'الأوادية',
+ 'ay' => 'الأيمارا',
+ 'az' => 'الأذربيجانية',
+ 'ba' => 'الباشكيرية',
+ 'bal' => 'البلوشية',
+ 'ban' => 'اللغة البالية',
+ 'bas' => 'الباسا',
+ 'bax' => 'بامن',
+ 'be' => 'البيلوروسية',
+ 'bej' => 'البيجا',
+ 'bem' => 'البيمبا',
+ 'bez' => 'بينا',
+ 'bg' => 'البلغارية',
+ 'bho' => 'البهوجبرية',
+ 'bi' => 'البيسلامية',
+ 'bik' => 'البيكولية',
+ 'bin' => 'البينية',
+ 'bla' => 'السيكسيكية',
+ 'bm' => 'البامبارا',
+ 'bn' => 'البنغالية',
+ 'bo' => 'التبتية',
+ 'br' => 'البريتونية',
+ 'bra' => 'البراجية',
+ 'brx' => 'البودو',
+ 'bs' => 'البوسنية',
+ 'bss' => 'أكوس',
+ 'bua' => 'البرياتية',
+ 'bug' => 'البجينيزية',
+ 'byn' => 'البلينية',
+ 'ca' => 'الكتالانية',
+ 'cad' => 'الكادو',
+ 'car' => 'الكاريبية',
+ 'cch' => 'الأتسام',
+ 'ce' => 'الشيشانية',
+ 'ceb' => 'السيبيونو',
+ 'cgg' => 'تشيغا',
+ 'ch' => 'التشامورو',
+ 'chb' => 'التشيبشا',
+ 'chg' => 'التشاجاتاي',
+ 'chk' => 'التشكيزية',
+ 'chm' => 'الماري',
+ 'chn' => 'الشينوك جارجون',
+ 'cho' => 'الشوكتو',
+ 'chp' => 'الشيباوايان',
+ 'chr' => 'الشيروكي',
+ 'chy' => 'الشايان',
+ 'ckb' => 'السريانية الكردية',
+ 'co' => 'الكورسيكية',
+ 'cop' => 'القبطية',
+ 'cr' => 'الكرى',
+ 'crh' => 'التركية الكريمينية',
+ 'cs' => 'التشيكية',
+ 'csb' => 'الكاشبايان',
+ 'cu' => 'سلافية كنسية',
+ 'cv' => 'التشفاش',
+ 'cy' => 'الولزية',
+ 'da' => 'الدانماركية',
+ 'dak' => 'الداكوتا',
+ 'dar' => 'الدارجوا',
+ 'dav' => 'تيتا',
+ 'de' => 'الألمانية',
+ 'de-at' => 'الألمانية النمساوية',
+ 'de-ch' => 'الألمانية العليا السويسرية',
+ 'del' => 'الديلوير',
+ 'den' => 'السلافية',
+ 'dgr' => 'الدوجريب',
+ 'din' => 'الدنكا',
+ 'dje' => 'الزارمية',
+ 'doi' => 'الدوجري',
+ 'dsb' => 'الصربية السفلى',
+ 'dua' => 'الديولا',
+ 'dum' => 'الهولندية الوسطى',
+ 'dv' => 'المالديفية',
+ 'dyo' => 'جولا فونيا',
+ 'dyu' => 'الدايلا',
+ 'dz' => 'الزونخاية',
+ 'dzg' => 'القرعانية',
+ 'ebu' => 'إمبو',
+ 'ee' => 'الإيوي',
+ 'efi' => 'الإفيك',
+ 'egy' => 'المصرية القديمة',
+ 'eka' => 'الإكاجك',
+ 'el' => 'اليونانية',
+ 'elx' => 'الإمايت',
+ 'en' => 'الإنجليزية',
+ 'en-au' => 'الإنجليزية الأسترالية',
+ 'en-ca' => 'الإنجليزية الكندية',
+ 'en-gb' => 'الإنجليزية البريطانية',
+ 'en-us' => 'الإنجليزية الولايات المتحدة',
+ 'enm' => 'الإنجليزية الوسطى',
+ 'eo' => 'الإسبرانتو',
+ 'es' => 'الإسبانية',
+ 'es-419' => 'إسبانية أمريكا اللاتينية',
+ 'es-es' => 'الإسبانية الأوروبية',
+ 'et' => 'الإستونية',
+ 'eu' => 'لغة الباسك',
+ 'ewo' => 'الإيوندو',
+ 'fa' => 'الفارسية',
+ 'fan' => 'الفانج',
+ 'fat' => 'الفانتي',
+ 'ff' => 'الفلة',
+ 'fi' => 'الفنلندية',
+ 'fil' => 'الفلبينية',
+ 'fj' => 'الفيجية',
+ 'fo' => 'الفارويز',
+ 'fon' => 'الفون',
+ 'fr' => 'الفرنسية',
+ 'fr-ca' => 'الفرنسية الكندية',
+ 'fr-ch' => 'الفرنسية السويسرية',
+ 'frm' => 'الفرنسية الوسطى',
+ 'fro' => 'الفرنسية القديمة',
+ 'frr' => 'الفريزينية الشمالية',
+ 'frs' => 'الفريزينية الشرقية',
+ 'fur' => 'الفريلايان',
+ 'fy' => 'الفريزيان',
+ 'ga' => 'الأيرلندية',
+ 'gaa' => 'الجا',
+ 'gag' => 'الغاغوز',
+ 'gay' => 'الجايو',
+ 'gba' => 'الجبيا',
+ 'gd' => 'الغيلية الأسكتلندية',
+ 'gez' => 'الجيز',
+ 'gil' => 'لغة أهل جبل طارق',
+ 'gl' => 'الجاليكية',
+ 'gmh' => 'الألمانية العليا الوسطى',
+ 'gn' => 'الجواراني',
+ 'goh' => 'الألمانية العليا القديمة',
+ 'gon' => 'الجندي',
+ 'gor' => 'الجورونتالو',
+ 'got' => 'القوطية',
+ 'grb' => 'الجريبو',
+ 'grc' => 'اليونانية القديمة',
+ 'gsw' => 'الألمانية السويسرية',
+ 'gu' => 'الغوجاراتية',
+ 'guz' => 'الغيزية',
+ 'gv' => 'المنكية',
+ 'gwi' => 'غوتشن',
+ 'ha' => 'الهوسا',
+ 'hai' => 'الهيدا',
+ 'haw' => 'لغة أهل الهاواي',
+ 'he' => 'العبرية',
+ 'hi' => 'الهندية',
+ 'hil' => 'الهيليجينون',
+ 'hit' => 'الحثية',
+ 'hmn' => 'الهمونجية',
+ 'ho' => 'الهيري موتو',
+ 'hr' => 'الكرواتية',
+ 'hsb' => 'الصربية العليا',
+ 'ht' => 'الهايتية',
+ 'hu' => 'الهنغارية',
+ 'hup' => 'الهبا',
+ 'hy' => 'الأرمينية',
+ 'hz' => 'الهيريرو',
+ 'ia' => 'اللّغة الوسيطة',
+ 'iba' => 'الإيبان',
+ 'id' => 'الإندونيسية',
+ 'ie' => 'الإنترلينج',
+ 'ig' => 'الإيجبو',
+ 'ii' => 'السيتشيون يي',
+ 'ik' => 'الإينبياك',
+ 'ilo' => 'الإيلوكو',
+ 'inh' => 'الإنجوشية',
+ 'io' => 'الإيدو',
+ 'is' => 'الأيسلاندية',
+ 'it' => 'الإيطالية',
+ 'iu' => 'الإينكتيتت',
+ 'ja' => 'اليابانية',
+ 'jbo' => 'اللوجبان',
+ 'jgo' => 'نغومبا',
+ 'jmc' => 'ماتشيم',
+ 'jpr' => 'الجيدو - الفارسي',
+ 'jrb' => 'الجيدو - العربي',
+ 'jv' => 'الجاوية',
+ 'ka' => 'الجورجية',
+ 'kaa' => 'الكارا-كالباك',
+ 'kab' => 'القبيلية',
+ 'kac' => 'الكاتشين',
+ 'kaj' => 'الجو',
+ 'kam' => 'الكامبا',
+ 'kaw' => 'الكوي',
+ 'kbd' => 'الكاباردايان',
+ 'kbl' => 'كانمبو',
+ 'kde' => 'ماكونده',
+ 'kea' => 'كابوفيرديانو',
+ 'kfo' => 'الكورو',
+ 'kg' => 'الكونغو',
+ 'kha' => 'الكازية',
+ 'kho' => 'الخوتانيز',
+ 'khq' => 'كويرا تشيني',
+ 'ki' => 'الكيكيو',
+ 'kj' => 'الكيونياما',
+ 'kk' => 'الكازاخستانية',
+ 'kl' => 'الكالاليست',
+ 'kln' => 'كالينجين',
+ 'km' => 'الخميرية',
+ 'kmb' => 'الكيمبندو',
+ 'kn' => 'الكانادا',
+ 'ko' => 'الكورية',
+ 'koi' => 'كومي-بيرماياك',
+ 'kok' => 'الكونكانية',
+ 'kos' => 'الكوسراين',
+ 'kpe' => 'الكبيل',
+ 'kr' => 'الكانيوري',
+ 'krc' => 'الكاراتشاي-بالكار',
+ 'krl' => 'الكريلية',
+ 'kru' => 'كرخانة',
+ 'ks' => 'الكشميرية',
+ 'ksb' => 'شامبالا',
+ 'ksf' => 'بافيا',
+ 'ku' => 'الكردية',
+ 'kum' => 'الكميك',
+ 'kut' => 'الكتيناي',
+ 'kv' => 'الكومي',
+ 'kw' => 'الكورنية',
+ 'ky' => 'القرغيزية',
+ 'la' => 'اللاتينية',
+ 'lad' => 'الإسباعبرية',
+ 'lag' => 'لانجي',
+ 'lah' => 'اللاهندا',
+ 'lam' => 'اللامبا',
+ 'lb' => 'اللوكسمبرجية',
+ 'lez' => 'الليزجهايانية',
+ 'lg' => 'الجاندا',
+ 'li' => 'الليمبرجيشية',
+ 'lkt' => 'لاكوتا',
+ 'ln' => 'اللينجالا',
+ 'lo' => 'اللاوية',
+ 'lol' => 'منغولى',
+ 'loz' => 'اللوزي',
+ 'lt' => 'اللتوانية',
+ 'lu' => 'اللبا-كاتانجا',
+ 'lua' => 'اللبا-لؤلؤ',
+ 'lui' => 'اللوسينو',
+ 'lun' => 'اللوندا',
+ 'luo' => 'اللو',
+ 'lus' => 'اللشاي',
+ 'luy' => 'لويا',
+ 'lv' => 'اللاتفية',
+ 'mad' => 'المادريز',
+ 'mag' => 'الماجا',
+ 'mai' => 'المايثيلي',
+ 'mak' => 'الماكاسار',
+ 'man' => 'الماندينغ',
+ 'mas' => 'الماساي',
+ 'mde' => 'مابا',
+ 'mdf' => 'الموكشا',
+ 'mdr' => 'الماندار',
+ 'men' => 'الميند',
+ 'mer' => 'ميرو',
+ 'mfe' => 'المورسيانية',
+ 'mg' => 'المالاجاشية',
+ 'mga' => 'الأيرلندية الوسطى',
+ 'mgh' => 'ماخاوا-ميتو',
+ 'mgo' => 'ميتا',
+ 'mh' => 'المارشالية',
+ 'mi' => 'الماورية',
+ 'mic' => 'الميكماكيونية',
+ 'min' => 'المينانجكاباو',
+ 'mk' => 'المقدونية',
+ 'ml' => 'الماليالام',
+ 'mn' => 'المنغولية',
+ 'mnc' => 'المانشو',
+ 'mni' => 'المانيبري',
+ 'moh' => 'الموهوك',
+ 'mos' => 'الموسي',
+ 'mr' => 'الماراثي',
+ 'ms' => 'لغة الملايو',
+ 'mt' => 'المالطية',
+ 'mua' => 'مندنج',
+ 'mul' => 'لغات متعددة',
+ 'mus' => 'الكريك',
+ 'mwl' => 'الميرانديز',
+ 'mwr' => 'المارواري',
+ 'my' => 'البورمية',
+ 'myv' => 'الأرزية',
+ 'na' => 'النورو',
+ 'nap' => 'اللغة النابولية',
+ 'naq' => 'ناما',
+ 'nb' => 'البوكمالية النرويجية',
+ 'nd' => 'النديبيل الشمالي',
+ 'nds' => 'الألمانية السفلى',
+ 'ne' => 'النيبالية',
+ 'new' => 'النيواري',
+ 'ng' => 'الندونجا',
+ 'nia' => 'النياس',
+ 'niu' => 'النيوي',
+ 'nl' => 'الهولندية',
+ 'nl-be' => 'الفلمنك',
+ 'nmg' => 'كواسيو',
+ 'nn' => 'النينورسك النرويجي',
+ 'no' => 'النرويجية',
+ 'nog' => 'النوجاي',
+ 'non' => 'النورس القديم',
+ 'nqo' => 'أنكو',
+ 'nr' => 'النديبيل الجنوبي',
+ 'nso' => 'السوتو الشمالية',
+ 'nus' => 'النوير',
+ 'nv' => 'النافاجو',
+ 'nwc' => 'النوارية التقليدية',
+ 'ny' => 'النيانجا',
+ 'nym' => 'النيامويزي',
+ 'nyn' => 'النيانكول',
+ 'nyo' => 'النيورو',
+ 'nzi' => 'النزيما',
+ 'oc' => 'الأوكيتانية',
+ 'oj' => 'الأوجيبوا',
+ 'om' => 'الأورومو',
+ 'or' => 'الأورييا',
+ 'os' => 'الأوسيتيك',
+ 'osa' => 'الأوساج',
+ 'ota' => 'التركية العثمانية',
+ 'pa' => 'البنجابية',
+ 'pag' => 'البانجاسينان',
+ 'pal' => 'البهلوية',
+ 'pam' => 'البامبانجا',
+ 'pap' => 'البابيامينتو',
+ 'pau' => 'البالوان',
+ 'peo' => 'الفارسية القديمة',
+ 'phn' => 'الفينيقية',
+ 'pi' => 'البالية',
+ 'pl' => 'البولندية',
+ 'pon' => 'البوهنبيايان',
+ 'pro' => 'البروفانسية القديمة',
+ 'ps' => 'البشتونية',
+ 'pt' => 'البرتغالية',
+ 'pt-br' => 'البرتغالية البرازيلية',
+ 'pt-pt' => 'البرتغالية الأوروبية',
+ 'qu' => 'الكويتشوا',
+ 'quc' => 'كيشي',
+ 'raj' => 'الراجاسثانية',
+ 'rap' => 'الراباني',
+ 'rar' => 'الراروتونجاني',
+ 'rm' => 'الرومانشية',
+ 'rn' => 'الرندي',
+ 'ro' => 'الرومانية',
+ 'ro-md' => 'المولدوفية',
+ 'rof' => 'رومبو',
+ 'rom' => 'غجري',
+ 'ru' => 'الروسية',
+ 'rup' => 'الأرومانيان',
+ 'rw' => 'الكينيارواندا',
+ 'rwk' => 'روا',
+ 'sa' => 'السنسكريتية',
+ 'sad' => 'السانداوي',
+ 'sah' => 'الساخية',
+ 'sam' => 'الآرامية السومارية',
+ 'saq' => 'سامبورو',
+ 'sas' => 'الساساك',
+ 'sat' => 'السانتالي',
+ 'sba' => 'نامبي',
+ 'sbp' => 'سانغو',
+ 'sc' => 'السردينية',
+ 'scn' => 'الصقلية',
+ 'sco' => 'الأسكتلندية',
+ 'sd' => 'السندية',
+ 'se' => 'السامي الشمالي',
+ 'seh' => 'سينا',
+ 'sel' => 'السيلكب',
+ 'ses' => 'كويرابورو سيني',
+ 'sg' => 'السانجو',
+ 'sga' => 'الأيرلندية القديمة',
+ 'shi' => 'تشلحيت',
+ 'shn' => 'الشانية',
+ 'shu' => 'العربية التشادية',
+ 'si' => 'السنهالية',
+ 'sid' => 'السيدامو',
+ 'sk' => 'السلوفاكية',
+ 'sl' => 'السلوفانية',
+ 'sm' => 'الساموائية',
+ 'sma' => 'السامي الجنوبي',
+ 'smj' => 'اللول سامي',
+ 'smn' => 'الإيناري سامي',
+ 'sms' => 'السكولت سامي',
+ 'sn' => 'الشونا',
+ 'snk' => 'السونينك',
+ 'so' => 'الصومالية',
+ 'sog' => 'السوجدين',
+ 'sq' => 'الألبانية',
+ 'sr' => 'الصربية',
+ 'srn' => 'السرانان تونجو',
+ 'srr' => 'السرر',
+ 'ss' => 'السواتي',
+ 'st' => 'السوتو الجنوبية',
+ 'su' => 'السوندانية',
+ 'suk' => 'السوكوما',
+ 'sus' => 'السوسو',
+ 'sux' => 'السومارية',
+ 'sv' => 'السويدية',
+ 'sw' => 'السواحلية',
+ 'swb' => 'القمرية',
+ 'swc' => 'الكونغو السواحلية',
+ 'syc' => 'سريانية تقليدية',
+ 'syr' => 'السريانية',
+ 'ta' => 'التاميلية',
+ 'te' => 'التيلجو',
+ 'tem' => 'التيمن',
+ 'teo' => 'تيسو',
+ 'ter' => 'التيرينو',
+ 'tet' => 'التيتم',
+ 'tg' => 'الطاجيكية',
+ 'th' => 'التايلاندية',
+ 'ti' => 'التيجرينيا',
+ 'tig' => 'التيجر',
+ 'tiv' => 'التيف',
+ 'tk' => 'التركمانية',
+ 'tkl' => 'التوكيلاو',
+ 'tl' => 'التاغالوغية',
+ 'tlh' => 'الكلينجون',
+ 'tli' => 'التلينغيتية',
+ 'tmh' => 'التاماشيك',
+ 'tn' => 'التسوانية',
+ 'to' => 'التونغية',
+ 'tog' => 'تونجا - نياسا',
+ 'tpi' => 'التوك بيسين',
+ 'tr' => 'التركية',
+ 'ts' => 'السونجا',
+ 'tsi' => 'التسيمشيان',
+ 'tt' => 'التتارية',
+ 'tum' => 'التامبوكا',
+ 'tvl' => 'التوفالو',
+ 'tw' => 'التوي',
+ 'twq' => 'تاساواق',
+ 'ty' => 'التاهيتية',
+ 'tyv' => 'التُرك',
+ 'tzm' => 'الأمازيغية وسط الأطلس',
+ 'udm' => 'الأدمرت',
+ 'ug' => 'الأغورية',
+ 'uga' => 'اليجاريتيك',
+ 'uk' => 'الأوكرانية',
+ 'umb' => 'الأمبندو',
+ 'und' => 'لغة غير معروفة',
+ 'ur' => 'الأردية',
+ 'uz' => 'الأوزباكية',
+ 'vai' => 'الفاي',
+ 've' => 'الفيندا',
+ 'vi' => 'الفيتنامية',
+ 'vot' => 'الفوتيك',
+ 'vun' => 'فونجو',
+ 'wa' => 'الولونية',
+ 'wal' => 'الوالامو',
+ 'war' => 'الواراي',
+ 'was' => 'الواشو',
+ 'wo' => 'الولوف',
+ 'xal' => 'الكالميك',
+ 'xh' => 'الخوسا',
+ 'xog' => 'سوجا',
+ 'yao' => 'الياو',
+ 'yap' => 'اليابيز',
+ 'yav' => 'يانجبن',
+ 'yi' => 'اليديشية',
+ 'yo' => 'اليوروبية',
+ 'yue' => 'الكَنْتُونية',
+ 'za' => 'الزهيونج',
+ 'zap' => 'الزابوتيك',
+ 'zbl' => 'رموز المعايير الأساسية',
+ 'zen' => 'الزيناجا',
+ 'zgh' => 'التمازيغية المغربية القياسية',
+ 'zh' => 'الصينية',
+ 'zh-hans' => 'الصينية المبسطة',
+ 'zh-hant' => 'الصينية التقليدية',
+ 'zu' => 'الزولو',
+ 'zun' => 'الزونية',
+ 'zxx' => 'بدون محتوى لغوي',
+ 'zza' => 'زازا',
+);
+
+$currencyNames = array(
+ 'ADP' => 'بيستا أندوري',
+ 'AED' => 'درهم إماراتي',
+ 'AFA' => 'أفغاني - 1927-2002',
+ 'AFN' => 'أفغاني',
+ 'ALL' => 'ليك ألباني',
+ 'AMD' => 'درام أرميني',
+ 'ANG' => 'غيلدر هولندي أنتيلي',
+ 'AOA' => 'كوانزا أنجولي',
+ 'AOK' => 'كوانزا أنجولي - 1977-1990',
+ 'AON' => 'كوانزا أنجولي جديدة - 1990-2000',
+ 'AOR' => 'كوانزا أنجولي معدلة - 1995 - 1999',
+ 'ARA' => 'استرال أرجنتيني',
+ 'ARP' => 'بيزو أرجنتيني - 1983-1985',
+ 'ARS' => 'بيزو أرجنتيني',
+ 'ATS' => 'شلن نمساوي',
+ 'AUD' => 'دولار أسترالي',
+ 'AWG' => 'فلورن أروبي',
+ 'AZM' => 'مانات أذريبجاني',
+ 'AZN' => 'مانات أذربيجان',
+ 'BAD' => 'دينار البوسنة والهرسك',
+ 'BAM' => 'مارك البوسنة والهرسك قابل للتحويل',
+ 'BBD' => 'دولار بربادوسي',
+ 'BDT' => 'تاكا بنجلاديشي',
+ 'BEC' => 'فرنك بلجيكي قابل للتحويل',
+ 'BEF' => 'فرنك بلجيكي',
+ 'BEL' => 'فرنك بلجيكي مالي',
+ 'BGN' => 'ليف بلغاري',
+ 'BHD' => 'دينار بحريني',
+ 'BIF' => 'فرنك بروندي',
+ 'BMD' => 'دولار برمودي',
+ 'BND' => 'دولار بروناي',
+ 'BOB' => 'بوليفيانو بوليفي',
+ 'BOP' => 'بيزو بوليفي',
+ 'BOV' => 'مفدول بوليفي',
+ 'BRB' => 'نوفو كروزايرو برازيلي - 1967-1986',
+ 'BRC' => 'كروزادو برازيلي',
+ 'BRE' => 'كروزايرو برازيلي - 1990-1993',
+ 'BRL' => 'ريال برازيلي',
+ 'BSD' => 'دولار باهامي',
+ 'BTN' => 'نولتوم بوتاني',
+ 'BUK' => 'كيات بورمي',
+ 'BWP' => 'بولا بتسواني',
+ 'BYB' => 'روبل بيلاروسي جديد - 1994-1999',
+ 'BYR' => 'روبل بيلاروسي',
+ 'BZD' => 'دولار بليزي',
+ 'CAD' => 'دولار كندي',
+ 'CDF' => 'فرنك كونغولي',
+ 'CHF' => 'فرنك سويسري',
+ 'CLP' => 'بيزو شيلي',
+ 'CNY' => 'يوان صيني',
+ 'COP' => 'بيزو كولومبي',
+ 'CRC' => 'كولن كوستا ريكي',
+ 'CSD' => 'دينار صربي قديم',
+ 'CSK' => 'كرونة تشيكوسلوفاكيا',
+ 'CUC' => 'بيزو كوبي قابل للتحويل',
+ 'CUP' => 'بيزو كوبي',
+ 'CVE' => 'اسكودو الرأس الخضراء',
+ 'CYP' => 'جنيه قبرصي',
+ 'CZK' => 'كرونة تشيكية',
+ 'DDM' => 'أوستمارك ألماني شرقي',
+ 'DEM' => 'مارك ألماني',
+ 'DJF' => 'فرنك جيبوتي',
+ 'DKK' => 'كرونة دانماركي',
+ 'DOP' => 'بيزو الدومنيكان',
+ 'DZD' => 'دينار جزائري',
+ 'EEK' => 'كرونة استونية',
+ 'EGP' => 'جنيه مصري',
+ 'ERN' => 'ناكفا أريتري',
+ 'ESP' => 'بيزيتا إسباني',
+ 'ETB' => 'بير أثيوبي',
+ 'EUR' => 'يورو',
+ 'FIM' => 'ماركا فنلندي',
+ 'FJD' => 'دولار فيجي',
+ 'FKP' => 'جنيه جزر فوكلاند',
+ 'FRF' => 'فرنك فرنسي',
+ 'GBP' => 'جنيه إسترليني',
+ 'GEL' => 'لارى جورجي',
+ 'GHC' => 'سيدي غاني',
+ 'GHS' => 'سيدي غانا',
+ 'GIP' => 'جنيه جبل طارق',
+ 'GMD' => 'دلاسي جامبي',
+ 'GNF' => 'فرنك غينيا',
+ 'GNS' => 'سيلي غينيا',
+ 'GQE' => 'اكويل جونينا غينيا الاستوائيّة',
+ 'GRD' => 'دراخما يوناني',
+ 'GTQ' => 'كوتزال جواتيمالا',
+ 'GWE' => 'اسكود برتغالي غينيا',
+ 'GWP' => 'بيزو غينيا بيساو',
+ 'GYD' => 'دولار غيانا',
+ 'HKD' => 'دولار هونج كونج',
+ 'HNL' => 'ليمبيرا هنداروس',
+ 'HRD' => 'دينار كرواتي',
+ 'HRK' => 'كونا كرواتي',
+ 'HTG' => 'جوردى هايتي',
+ 'HUF' => 'فورينت مجري',
+ 'IDR' => 'روبية إندونيسية',
+ 'IEP' => 'جنيه إيرلندي',
+ 'ILP' => 'جنيه إسرائيلي',
+ 'ILS' => 'شيكل إسرائيلي جديد',
+ 'INR' => 'روبيه هندي',
+ 'IQD' => 'دينار عراقي',
+ 'IRR' => 'ريال إيراني',
+ 'ISK' => 'كرونه أيسلندي',
+ 'ITL' => 'ليرة إيطالية',
+ 'JMD' => 'دولار جامايكي',
+ 'JOD' => 'دينار أردني',
+ 'JPY' => 'ين ياباني',
+ 'KES' => 'شلن كينيي',
+ 'KGS' => 'سوم قيرغستاني',
+ 'KHR' => 'رييال كمبودي',
+ 'KMF' => 'فرنك جزر القمر',
+ 'KPW' => 'وون كوريا الشمالية',
+ 'KRW' => 'وون كوريا الجنوبية',
+ 'KWD' => 'دينار كويتي',
+ 'KYD' => 'دولار جزر كيمن',
+ 'KZT' => 'تينغ كازاخستاني',
+ 'LAK' => 'كيب لاوسي',
+ 'LBP' => 'جنية لبناني',
+ 'LKR' => 'روبية سريلانكية',
+ 'LRD' => 'دولار ليبيري',
+ 'LSL' => 'لوتي ليسوتو',
+ 'LTL' => 'ليتا ليتوانية',
+ 'LTT' => 'تالوناس ليتواني',
+ 'LUC' => 'فرنك لوكسمبرج قابل للتحويل',
+ 'LUF' => 'فرنك لوكسمبرج',
+ 'LUL' => 'فرنك لوكسمبرج المالي',
+ 'LVL' => 'لاتس لاتفيا',
+ 'LVR' => 'روبل لاتفيا',
+ 'LYD' => 'دينار ليبي',
+ 'MAD' => 'درهم مغربي',
+ 'MAF' => 'فرنك مغربي',
+ 'MDL' => 'ليو مولدوفي',
+ 'MGA' => 'أرياري مدغشقر',
+ 'MGF' => 'فرنك مدغشقر',
+ 'MKD' => 'دينار مقدوني',
+ 'MLF' => 'فرنك مالي',
+ 'MMK' => 'كيات ميانمار',
+ 'MNT' => 'توغروغ منغولي',
+ 'MOP' => 'باتاكا ماكاوي',
+ 'MRO' => 'أوقية موريتانية',
+ 'MTL' => 'ليرة مالطية',
+ 'MTP' => 'جنيه مالطي',
+ 'MUR' => 'روبية موريشيوسية',
+ 'MVR' => 'روفيه جزر المالديف',
+ 'MWK' => 'كواشا مالاوي',
+ 'MXN' => 'بيزو مكسيكي',
+ 'MXP' => 'بيزو فضي مكسيكي - 1861-1992',
+ 'MYR' => 'رينغيت ماليزي',
+ 'MZE' => 'اسكود موزمبيقي',
+ 'MZN' => 'متكال موزمبيقي',
+ 'NAD' => 'دولار ناميبي',
+ 'NGN' => 'نايرا نيجيري',
+ 'NIC' => 'كوردوبة نيكاراجوا',
+ 'NIO' => 'قرطبة نيكاراغوا',
+ 'NLG' => 'جلدر هولندي',
+ 'NOK' => 'كرونة نرويجية',
+ 'NPR' => 'روبية نيبالي',
+ 'NZD' => 'دولار نيوزيلندي',
+ 'OMR' => 'ريال عماني',
+ 'PAB' => 'بالبوا بنمي',
+ 'PEN' => 'سول جديد البيرو',
+ 'PGK' => 'كينا بابوا غينيا الجديدة',
+ 'PHP' => 'بيزو فلبيني',
+ 'PKR' => 'روبية باكستاني',
+ 'PLN' => 'زلوتي بولندي',
+ 'PLZ' => 'زلوتي بولندي - 1950-1995',
+ 'PTE' => 'اسكود برتغالي',
+ 'PYG' => 'جواراني باراجواي',
+ 'QAR' => 'ريال قطري',
+ 'RHD' => 'دولار روديسي',
+ 'ROL' => 'ليو روماني قديم',
+ 'RON' => 'ليو روماني',
+ 'RSD' => 'دينار صربي',
+ 'RUB' => 'روبل روسي',
+ 'RUR' => 'روبل روسي - 1991-1998',
+ 'RWF' => 'فرنك رواندي',
+ 'SAR' => 'ريال سعودي',
+ 'SBD' => 'دولار جزر سليمان',
+ 'SCR' => 'روبية سيشيلية',
+ 'SDD' => 'دينار سوداني',
+ 'SDG' => 'جنيه سوداني',
+ 'SDP' => 'جنيه سوداني قديم',
+ 'SEK' => 'كرونة سويدية',
+ 'SGD' => 'دولار سنغافوري',
+ 'SHP' => 'جنيه سانت هيلين',
+ 'SIT' => 'تولار سلوفيني',
+ 'SKK' => 'كرونة سلوفاكية',
+ 'SLL' => 'ليون سيراليوني',
+ 'SOS' => 'شلن صومالي',
+ 'SRD' => 'دولار سورينامي',
+ 'SRG' => 'جلدر سورينامي',
+ 'SSP' => 'جنيه جنوب السودان',
+ 'STD' => 'دوبرا ساو تومي وبرينسيبي',
+ 'SUR' => 'روبل سوفيتي',
+ 'SVC' => 'كولون سلفادوري',
+ 'SYP' => 'ليرة سورية',
+ 'SZL' => 'ليلانجيني سوازيلندي',
+ 'THB' => 'باخت تايلاندي',
+ 'TJR' => 'روبل طاجيكستاني',
+ 'TJS' => 'سوموني طاجيكستاني',
+ 'TMM' => 'مانات تركمنستاني',
+ 'TMT' => 'مانات تركمانستان',
+ 'TND' => 'دينارتونسي',
+ 'TOP' => 'بانغا تونغا',
+ 'TPE' => 'اسكود تيموري',
+ 'TRL' => 'ليرة تركي',
+ 'TRY' => 'ليرة تركية',
+ 'TTD' => 'دولار ترينداد وتوباجو',
+ 'TWD' => 'دولار تايواني',
+ 'TZS' => 'شلن تنزاني',
+ 'UAH' => 'هريفنيا أوكراني',
+ 'UGS' => 'شلن أوغندي - 1966-1987',
+ 'UGX' => 'شلن أوغندي',
+ 'USD' => 'دولار أمريكي',
+ 'USN' => 'دولار أمريكي (اليوم التالي)‏',
+ 'USS' => 'دولار أمريكي (نفس اليوم)‏',
+ 'UYP' => 'بيزو أوروجواي - 1975-1993',
+ 'UYU' => 'بيزو اوروغواي',
+ 'UZS' => 'سوم أوزبكستاني',
+ 'VEB' => 'بوليفار فنزويلي - 1871-2008',
+ 'VEF' => 'بوليفار فنزويلي',
+ 'VND' => 'دونج فيتنامي',
+ 'VUV' => 'فاتو فانواتو',
+ 'WST' => 'تالا ساموا',
+ 'XAF' => 'فرنك أفريقي',
+ 'XAG' => 'فضة',
+ 'XAU' => 'ذهب',
+ 'XBA' => 'الوحدة الأوروبية المركبة',
+ 'XBB' => 'الوحدة المالية الأوروبية',
+ 'XBC' => 'الوحدة الحسابية الأوروبية',
+ 'XBD' => '(XBD)وحدة الحساب الأوروبية',
+ 'XCD' => 'دولار شرق الكاريبي',
+ 'XDR' => 'حقوق السحب الخاصة',
+ 'XEU' => 'وحدة النقد الأوروبية',
+ 'XFO' => 'فرنك فرنسي ذهبي',
+ 'XFU' => '(UIC)فرنك فرنسي',
+ 'XOF' => 'فرنك سي إف إيه غرب إفريقيا',
+ 'XPD' => 'بالاديوم',
+ 'XPF' => 'فرنك سي إف بي',
+ 'XPT' => 'البلاتين',
+ 'XTS' => 'كود اختبار العملة',
+ 'XXX' => 'عملة غير معروفة',
+ 'YDD' => 'دينار يمني',
+ 'YER' => 'ريال يمني',
+ 'YUD' => 'دينار يوغسلافي',
+ 'YUN' => 'دينار يوغسلافي قابل للتحويل',
+ 'ZAL' => 'راند جنوب أفريقيا -مالي',
+ 'ZAR' => 'راند جنوب أفريقيا',
+ 'ZMK' => 'كواشا زامبي - 1968-2012',
+ 'ZMW' => 'كواشا زامبي',
+ 'ZRN' => 'زائير زائيري جديد',
+ 'ZRZ' => 'زائير زائيري',
+ 'ZWD' => 'دولار زمبابوي',
+ 'ZWL' => 'دولار زمبابوي 2009',
+);
+
+$currencySymbols = array(
+ 'AED' => 'د.إ.‏',
+ 'AFN' => 'AFN',
+ 'ALL' => 'ALL',
+ 'AMD' => 'AMD',
+ 'ANG' => 'ANG',
+ 'AOA' => 'AOA',
+ 'ARS' => 'ARS',
+ 'AUD' => 'AU$',
+ 'AWG' => 'AWG',
+ 'AZN' => 'AZN',
+ 'BAM' => 'BAM',
+ 'BBD' => 'BBD',
+ 'BDT' => 'BDT',
+ 'BGN' => 'BGN',
+ 'BHD' => 'د.ب.‏',
+ 'BIF' => 'BIF',
+ 'BMD' => 'BMD',
+ 'BND' => 'BND',
+ 'BOB' => 'BOB',
+ 'BRL' => 'R$',
+ 'BSD' => 'BSD',
+ 'BTN' => 'BTN',
+ 'BWP' => 'BWP',
+ 'BYR' => 'BYR',
+ 'BZD' => 'BZD',
+ 'CAD' => 'CA$',
+ 'CDF' => 'CDF',
+ 'CHF' => 'CHF',
+ 'CLP' => 'CLP',
+ 'CNY' => 'ي.ص',
+ 'COP' => 'COP',
+ 'CRC' => 'CRC',
+ 'CUC' => 'CUC',
+ 'CUP' => 'CUP',
+ 'CVE' => 'CVE',
+ 'CZK' => 'CZK',
+ 'DJF' => 'DJF',
+ 'DKK' => 'DKK',
+ 'DOP' => 'DOP',
+ 'DZD' => 'د.ج.‏',
+ 'EGP' => 'ج.م.‏',
+ 'ERN' => 'ERN',
+ 'ETB' => 'ETB',
+ 'EUR' => '€',
+ 'FJD' => 'FJD',
+ 'FKP' => 'FKP',
+ 'GBP' => '£',
+ 'GEL' => 'GEL',
+ 'GHS' => 'GHS',
+ 'GIP' => 'GIP',
+ 'GMD' => 'GMD',
+ 'GNF' => 'GNF',
+ 'GTQ' => 'GTQ',
+ 'GYD' => 'GYD',
+ 'HKD' => 'HK$',
+ 'HNL' => 'HNL',
+ 'HRK' => 'HRK',
+ 'HTG' => 'HTG',
+ 'HUF' => 'HUF',
+ 'IDR' => 'ر.إن.',
+ 'ILS' => '₪',
+ 'INR' => 'ر.ه.‏',
+ 'IQD' => 'د.ع.‏',
+ 'IRR' => 'ر.إ.',
+ 'ISK' => 'ISK',
+ 'JMD' => 'JMD',
+ 'JOD' => 'د.أ.‏',
+ 'JPY' => 'JP¥',
+ 'KES' => 'KES',
+ 'KGS' => 'KGS',
+ 'KHR' => 'KHR',
+ 'KMF' => 'ف.ج.ق.‏',
+ 'KPW' => 'KPW',
+ 'KRW' => '₩',
+ 'KWD' => 'د.ك.‏',
+ 'KYD' => 'KYD',
+ 'KZT' => 'KZT',
+ 'LAK' => 'LAK',
+ 'LBP' => 'ل.ل.‏',
+ 'LKR' => 'LKR',
+ 'LRD' => 'LRD',
+ 'LTL' => 'LTL',
+ 'LVL' => 'LVL',
+ 'LYD' => 'د.ل.‏',
+ 'MAD' => 'د.م.‏',
+ 'MDL' => 'MDL',
+ 'MGA' => 'MGA',
+ 'MKD' => 'MKD',
+ 'MMK' => 'MMK',
+ 'MNT' => 'MNT',
+ 'MOP' => 'MOP',
+ 'MRO' => 'أ.م.‏',
+ 'MUR' => 'MUR',
+ 'MVR' => 'MVR',
+ 'MWK' => 'MWK',
+ 'MXN' => 'MX$',
+ 'MYR' => 'MYR',
+ 'MZN' => 'MZN',
+ 'NAD' => 'NAD',
+ 'NGN' => 'NGN',
+ 'NIO' => 'NIO',
+ 'NOK' => 'NOK',
+ 'NPR' => 'NPR',
+ 'NZD' => 'NZ$',
+ 'OMR' => 'ر.ع.‏',
+ 'PAB' => 'PAB',
+ 'PEN' => 'PEN',
+ 'PGK' => 'PGK',
+ 'PHP' => 'PHP',
+ 'PKR' => 'ر.ب.',
+ 'PLN' => 'PLN',
+ 'PYG' => 'PYG',
+ 'QAR' => 'ر.ق.‏',
+ 'RON' => 'RON',
+ 'RSD' => 'RSD',
+ 'RUB' => 'RUB',
+ 'RWF' => 'RWF',
+ 'SAR' => 'ر.س.‏',
+ 'SBD' => 'SBD',
+ 'SCR' => 'SCR',
+ 'SDD' => 'د.س.‏',
+ 'SDG' => 'ج.س.',
+ 'SEK' => 'SEK',
+ 'SGD' => 'SGD',
+ 'SHP' => 'SHP',
+ 'SLL' => 'SLL',
+ 'SOS' => 'SOS',
+ 'SRD' => 'SRD',
+ 'SSP' => 'ج.ج.س.',
+ 'STD' => 'STD',
+ 'SYP' => 'ل.س.‏',
+ 'SZL' => 'SZL',
+ 'THB' => '฿',
+ 'TJS' => 'TJS',
+ 'TMT' => 'TMT',
+ 'TND' => 'د.ت.‏',
+ 'TOP' => 'TOP',
+ 'TRY' => 'ل.ت.',
+ 'TTD' => 'TTD',
+ 'TWD' => 'NT$',
+ 'TZS' => 'TZS',
+ 'UAH' => 'UAH',
+ 'UGX' => 'UGX',
+ 'USD' => 'US$',
+ 'UYU' => 'UYU',
+ 'UZS' => 'UZS',
+ 'VEF' => 'VEF',
+ 'VND' => '₫',
+ 'VUV' => 'VUV',
+ 'WST' => 'WST',
+ 'XAF' => 'FCFA',
+ 'XCD' => 'EC$',
+ 'XOF' => 'CFA',
+ 'XPF' => 'CFPF',
+ 'XXX' => '***',
+ 'YER' => 'ر.ي.‏',
+ 'ZAR' => 'ZAR',
+ 'ZMW' => 'ZMW',
+);
+
+$countryNames = array(
+ 'AC' => 'جزيرة أسينشيون',
+ 'AD' => 'أندورا',
+ 'AE' => 'الإمارات العربية المتحدة',
+ 'AF' => 'أفغانستان',
+ 'AG' => 'أنتيغوا وبربودا',
+ 'AI' => 'أنغويلا',
+ 'AL' => 'ألبانيا',
+ 'AM' => 'أرمينيا',
+ 'AN' => 'جزر الأنتيل الهولندية',
+ 'AO' => 'أنغولا',
+ 'AQ' => 'أنتاركتيكا',
+ 'AR' => 'الأرجنتين',
+ 'AS' => 'ساموا الأمريكية',
+ 'AT' => 'النمسا',
+ 'AU' => 'أستراليا',
+ 'AW' => 'آروبا',
+ 'AX' => 'جزر آلاند',
+ 'AZ' => 'أذربيجان',
+ 'BA' => 'البوسنة والهرسك',
+ 'BB' => 'بربادوس',
+ 'BD' => 'بنجلاديش',
+ 'BE' => 'بلجيكا',
+ 'BF' => 'بوركينا فاسو',
+ 'BG' => 'بلغاريا',
+ 'BH' => 'البحرين',
+ 'BI' => 'بوروندي',
+ 'BJ' => 'بنين',
+ 'BL' => 'سان بارتليمي',
+ 'BM' => 'برمودا',
+ 'BN' => 'بروناي',
+ 'BO' => 'بوليفيا',
+ 'BQ' => 'هولندا الكاريبية',
+ 'BR' => 'البرازيل',
+ 'BS' => 'الباهاما',
+ 'BT' => 'بوتان',
+ 'BV' => 'جزيرة بوفيه',
+ 'BW' => 'بتسوانا',
+ 'BY' => 'روسيا البيضاء',
+ 'BZ' => 'بليز',
+ 'CA' => 'كندا',
+ 'CC' => 'جزر كوكوس',
+ 'CD' => 'الكونغو - كينشاسا',
+ 'CF' => 'جمهورية أفريقيا الوسطى',
+ 'CG' => 'الكونغو - برازافيل',
+ 'CH' => 'سويسرا',
+ 'CI' => 'ساحل العاج',
+ 'CK' => 'جزر كوك',
+ 'CL' => 'شيلي',
+ 'CM' => 'الكاميرون',
+ 'CN' => 'الصين',
+ 'CO' => 'كولومبيا',
+ 'CP' => 'جزيرة كليبيرتون',
+ 'CR' => 'كوستاريكا',
+ 'CU' => 'كوبا',
+ 'CV' => 'الرأس الأخضر',
+ 'CW' => 'كوراساو',
+ 'CX' => 'جزيرة الكريسماس',
+ 'CY' => 'قبرص',
+ 'CZ' => 'جمهورية التشيك',
+ 'DE' => 'ألمانيا',
+ 'DG' => 'دييغو غارسيا',
+ 'DJ' => 'جيبوتي',
+ 'DK' => 'الدانمرك',
+ 'DM' => 'دومينيكا',
+ 'DO' => 'جمهورية الدومينيك',
+ 'DZ' => 'الجزائر',
+ 'EA' => 'سيوتا وميليلا',
+ 'EC' => 'الإكوادور',
+ 'EE' => 'أستونيا',
+ 'EG' => 'مصر',
+ 'EH' => 'الصحراء الغربية',
+ 'ER' => 'أريتريا',
+ 'ES' => 'إسبانيا',
+ 'ET' => 'إثيوبيا',
+ 'EU' => 'الاتحاد الأوروبي',
+ 'FI' => 'فنلندا',
+ 'FJ' => 'فيجي',
+ 'FK' => 'جزر فوكلاند',
+ 'FM' => 'ميكرونيزيا',
+ 'FO' => 'جزر فارو',
+ 'FR' => 'فرنسا',
+ 'GA' => 'الجابون',
+ 'GB' => 'المملكة المتحدة',
+ 'GD' => 'غرينادا',
+ 'GE' => 'جورجيا',
+ 'GF' => 'غويانا الفرنسية',
+ 'GG' => 'غيرنزي',
+ 'GH' => 'غانا',
+ 'GI' => 'جبل طارق',
+ 'GL' => 'غرينلاند',
+ 'GM' => 'غامبيا',
+ 'GN' => 'غينيا',
+ 'GP' => 'جوادلوب',
+ 'GQ' => 'غينيا الإستوائية',
+ 'GR' => 'اليونان',
+ 'GS' => 'جورجيا الجنوبية وجزر ساندويتش الجنوبية',
+ 'GT' => 'غواتيمالا',
+ 'GU' => 'غوام',
+ 'GW' => 'غينيا بيساو',
+ 'GY' => 'غيانا',
+ 'HK' => 'هونغ كونغ',
+ 'HM' => 'جزيرة هيرد وجزر ماكدونالد',
+ 'HN' => 'هندوراس',
+ 'HR' => 'كرواتيا',
+ 'HT' => 'هايتي',
+ 'HU' => 'هنغاريا',
+ 'IC' => 'جزر الكناري',
+ 'ID' => 'أندونيسيا',
+ 'IE' => 'أيرلندا',
+ 'IL' => 'إسرائيل',
+ 'IM' => 'جزيرة مان',
+ 'IN' => 'الهند',
+ 'IO' => 'الإقليم البريطاني في المحيط الهندي',
+ 'IQ' => 'العراق',
+ 'IR' => 'إيران',
+ 'IS' => 'أيسلندا',
+ 'IT' => 'إيطاليا',
+ 'JE' => 'جيرسي',
+ 'JM' => 'جامايكا',
+ 'JO' => 'الأردن',
+ 'JP' => 'اليابان',
+ 'KE' => 'كينيا',
+ 'KG' => 'قرغيزستان',
+ 'KH' => 'كمبوديا',
+ 'KI' => 'كيريباتي',
+ 'KM' => 'جزر القمر',
+ 'KN' => 'سانت كيتس ونيفيس',
+ 'KP' => 'كوريا الشمالية',
+ 'KR' => 'كوريا الجنوبية',
+ 'KW' => 'الكويت',
+ 'KY' => 'جزر الكايمن',
+ 'KZ' => 'كازاخستان',
+ 'LA' => 'لاوس',
+ 'LB' => 'لبنان',
+ 'LC' => 'سانت لوسيا',
+ 'LI' => 'ليختنشتاين',
+ 'LK' => 'سريلانكا',
+ 'LR' => 'ليبيريا',
+ 'LS' => 'ليسوتو',
+ 'LT' => 'ليتوانيا',
+ 'LU' => 'لوكسمبورغ',
+ 'LV' => 'لاتفيا',
+ 'LY' => 'ليبيا',
+ 'MA' => 'المغرب',
+ 'MC' => 'موناكو',
+ 'MD' => 'مولدافيا',
+ 'ME' => 'الجبل الأسود',
+ 'MF' => 'سانت مارتن',
+ 'MG' => 'مدغشقر',
+ 'MH' => 'جزر المارشال',
+ 'MK' => 'مقدونيا',
+ 'ML' => 'مالي',
+ 'MM' => 'ميانمار -بورما',
+ 'MN' => 'منغوليا',
+ 'MO' => 'مكاو',
+ 'MP' => 'جزر ماريانا الشمالية',
+ 'MQ' => 'مارتينيك',
+ 'MR' => 'موريتانيا',
+ 'MS' => 'مونتسرات',
+ 'MT' => 'مالطا',
+ 'MU' => 'موريشيوس',
+ 'MV' => 'جزر المالديف',
+ 'MW' => 'ملاوي',
+ 'MX' => 'المكسيك',
+ 'MY' => 'ماليزيا',
+ 'MZ' => 'موزمبيق',
+ 'NA' => 'ناميبيا',
+ 'NC' => 'كاليدونيا الجديدة',
+ 'NE' => 'النيجر',
+ 'NF' => 'جزيرة نورفوك',
+ 'NG' => 'نيجيريا',
+ 'NI' => 'نيكاراغوا',
+ 'NL' => 'هولندا',
+ 'NO' => 'النرويج',
+ 'NP' => 'نيبال',
+ 'NR' => 'ناورو',
+ 'NU' => 'نيوي',
+ 'NZ' => 'نيوزيلاندا',
+ 'OM' => 'عُمان',
+ 'PA' => 'بنما',
+ 'PE' => 'بيرو',
+ 'PF' => 'بولينيزيا الفرنسية',
+ 'PG' => 'بابوا غينيا الجديدة',
+ 'PH' => 'الفلبين',
+ 'PK' => 'باكستان',
+ 'PL' => 'بولندا',
+ 'PM' => 'سانت بيير وميكولون',
+ 'PN' => 'جزر بيتكيرن',
+ 'PR' => 'بورتوريكو',
+ 'PS' => 'فلسطين',
+ 'PT' => 'البرتغال',
+ 'PW' => 'بالاو',
+ 'PY' => 'باراغواي',
+ 'QA' => 'قطر',
+ 'QO' => 'أوقيانوسيا النائية',
+ 'RE' => 'روينيون',
+ 'RO' => 'رومانيا',
+ 'RS' => 'صربيا',
+ 'RU' => 'روسيا',
+ 'RW' => 'رواندا',
+ 'SA' => 'المملكة العربية السعودية',
+ 'SB' => 'جزر سليمان',
+ 'SC' => 'سيشل',
+ 'SD' => 'السودان',
+ 'SE' => 'السويد',
+ 'SG' => 'سنغافورة',
+ 'SH' => 'سانت هيلنا',
+ 'SI' => 'سلوفينيا',
+ 'SJ' => 'سفالبارد وجان مايان',
+ 'SK' => 'سلوفاكيا',
+ 'SL' => 'سيراليون',
+ 'SM' => 'سان مارينو',
+ 'SN' => 'السنغال',
+ 'SO' => 'الصومال',
+ 'SR' => 'سورينام',
+ 'SS' => 'جنوب السودان',
+ 'ST' => 'ساو تومي وبرينسيبي',
+ 'SV' => 'السلفادور',
+ 'SX' => 'سينت مارتن',
+ 'SY' => 'سوريا',
+ 'SZ' => 'سوازيلاند',
+ 'TA' => 'تريستان دي كونها',
+ 'TC' => 'جزر الترك وجايكوس',
+ 'TD' => 'تشاد',
+ 'TF' => 'المقاطعات الجنوبية الفرنسية',
+ 'TG' => 'توجو',
+ 'TH' => 'تايلاند',
+ 'TJ' => 'طاجكستان',
+ 'TK' => 'توكيلو',
+ 'TL' => 'تيمور الشرقية',
+ 'TM' => 'تركمانستان',
+ 'TN' => 'تونس',
+ 'TO' => 'تونغا',
+ 'TR' => 'تركيا',
+ 'TT' => 'ترينيداد وتوباغو',
+ 'TV' => 'توفالو',
+ 'TW' => 'تايوان',
+ 'TZ' => 'تانزانيا',
+ 'UA' => 'أوكرانيا',
+ 'UG' => 'أوغندا',
+ 'UM' => 'جزر الولايات المتحدة النائية',
+ 'US' => 'الولايات المتحدة',
+ 'UY' => 'أورغواي',
+ 'UZ' => 'أوزبكستان',
+ 'VA' => 'الفاتيكان',
+ 'VC' => 'سانت فنسنت وغرنادين',
+ 'VE' => 'فنزويلا',
+ 'VG' => 'جزر فرجين البريطانية',
+ 'VI' => 'جزر فرجين الأمريكية',
+ 'VN' => 'فيتنام',
+ 'VU' => 'فانواتو',
+ 'WF' => 'جزر والس وفوتونا',
+ 'WS' => 'ساموا',
+ 'XK' => 'كوسوفو',
+ 'YE' => 'اليمن',
+ 'YT' => 'مايوت',
+ 'ZA' => 'جنوب أفريقيا',
+ 'ZM' => 'زامبيا',
+ 'ZW' => 'زيمبابوي',
+);
+
+$timeUnits = array(
+ 'day-few' => '{0} أيام',
+ 'day-future-few' => 'خلال {0} أيام',
+ 'day-future-many' => 'خلال {0} يومًا',
+ 'day-future-one' => 'خلال {0} من الأيام',
+ 'day-future-other' => 'خلال {0} من الأيام',
+ 'day-future-two' => 'خلال يومين',
+ 'day-future-zero' => 'خلال {0} من الأيام',
+ 'day-many' => '{0} يومًا',
+ 'day-narrow-future-few' => 'خلال {0} من الأيام',
+ 'day-narrow-future-many' => 'خلال {0} من الأيام',
+ 'day-narrow-future-one' => 'خلال {0} من الأيام',
+ 'day-narrow-future-other' => 'خلال {0} من الأيام',
+ 'day-narrow-future-two' => 'خلال {0} من الأيام',
+ 'day-narrow-future-zero' => 'خلال {0} من الأيام',
+ 'day-narrow-past-few' => 'قبل {0} من الأيام',
+ 'day-narrow-past-many' => 'قبل {0} من الأيام',
+ 'day-narrow-past-one' => 'قبل {0} من الأيام',
+ 'day-narrow-past-other' => 'قبل {0} من الأيام',
+ 'day-narrow-past-two' => 'قبل {0} من الأيام',
+ 'day-narrow-past-zero' => 'قبل {0} من الأيام',
+ 'day-one' => 'يوم',
+ 'day-other' => '{0} يوم',
+ 'day-past-few' => 'قبل {0} أيام',
+ 'day-past-many' => 'قبل {0} يومًا',
+ 'day-past-one' => 'قبل {0} من الأيام',
+ 'day-past-other' => 'قبل {0} من الأيام',
+ 'day-past-two' => 'قبل يومين',
+ 'day-past-zero' => 'قبل {0} من الأيام',
+ 'day-short-future-few' => 'خلال {0} من الأيام',
+ 'day-short-future-many' => 'خلال {0} من الأيام',
+ 'day-short-future-one' => 'خلال {0} من الأيام',
+ 'day-short-future-other' => 'خلال {0} من الأيام',
+ 'day-short-future-two' => 'خلال {0} من الأيام',
+ 'day-short-future-zero' => 'خلال {0} من الأيام',
+ 'day-short-past-few' => 'قبل {0} من الأيام',
+ 'day-short-past-many' => 'قبل {0} من الأيام',
+ 'day-short-past-one' => 'قبل {0} من الأيام',
+ 'day-short-past-other' => 'قبل {0} من الأيام',
+ 'day-short-past-two' => 'قبل {0} من الأيام',
+ 'day-short-past-zero' => 'قبل {0} من الأيام',
+ 'day-two' => 'يومان',
+ 'day-zero' => '{0} يوم',
+ 'hour-few' => '{0} ساعات',
+ 'hour-future-few' => 'خلال {0} ساعات',
+ 'hour-future-many' => 'خلال {0} ساعة',
+ 'hour-future-one' => 'خلال {0} من الساعات',
+ 'hour-future-other' => 'خلال {0} من الساعات',
+ 'hour-future-two' => 'خلال ساعتين',
+ 'hour-future-zero' => 'خلال {0} من الساعات',
+ 'hour-many' => '{0} ساعة',
+ 'hour-narrow-future-few' => 'خلال {0} من الساعات',
+ 'hour-narrow-future-many' => 'خلال {0} من الساعات',
+ 'hour-narrow-future-one' => 'خلال {0} من الساعات',
+ 'hour-narrow-future-other' => 'خلال {0} من الساعات',
+ 'hour-narrow-future-two' => 'خلال {0} من الساعات',
+ 'hour-narrow-future-zero' => 'خلال {0} من الساعات',
+ 'hour-narrow-past-few' => 'قبل {0} من الساعات',
+ 'hour-narrow-past-many' => 'قبل {0} من الساعات',
+ 'hour-narrow-past-one' => 'قبل {0} من الساعات',
+ 'hour-narrow-past-other' => 'قبل {0} من الساعات',
+ 'hour-narrow-past-two' => 'قبل {0} من الساعات',
+ 'hour-narrow-past-zero' => 'قبل {0} من الساعات',
+ 'hour-one' => 'ساعة',
+ 'hour-other' => '{0} ساعة',
+ 'hour-past-few' => 'قبل {0} ساعات',
+ 'hour-past-many' => 'قبل {0} ساعة',
+ 'hour-past-one' => 'قبل {0} من الساعات',
+ 'hour-past-other' => 'قبل {0} من الساعات',
+ 'hour-past-two' => 'قبل ساعتين',
+ 'hour-past-zero' => 'قبل {0} من الساعات',
+ 'hour-short-future-few' => 'خلال {0} من الساعات',
+ 'hour-short-future-many' => 'خلال {0} من الساعات',
+ 'hour-short-future-one' => 'خلال {0} من الساعات',
+ 'hour-short-future-other' => 'خلال {0} من الساعات',
+ 'hour-short-future-two' => 'خلال {0} من الساعات',
+ 'hour-short-future-zero' => 'خلال {0} من الساعات',
+ 'hour-short-past-few' => 'قبل {0} من الساعات',
+ 'hour-short-past-many' => 'قبل {0} من الساعات',
+ 'hour-short-past-one' => 'قبل {0} من الساعات',
+ 'hour-short-past-other' => 'قبل {0} من الساعات',
+ 'hour-short-past-two' => 'قبل {0} من الساعات',
+ 'hour-short-past-zero' => 'قبل {0} من الساعات',
+ 'hour-two' => 'ساعتان',
+ 'hour-zero' => '{0} ساعة',
+ 'microsecond-few' => '{0} ميكروثانية',
+ 'microsecond-many' => '{0} ميكروثانية',
+ 'microsecond-one' => '{0} ميكروثانية',
+ 'microsecond-other' => '{0} ميكروثانية',
+ 'microsecond-two' => '{0} ميكروثانية',
+ 'microsecond-zero' => '{0} ميكروثانية',
+ 'millisecond-few' => '{0} مللي ثانية',
+ 'millisecond-many' => '{0} مللي ثانية',
+ 'millisecond-one' => '{0} مللي ثانية',
+ 'millisecond-other' => '{0} مللي ثانية',
+ 'millisecond-two' => '{0} مللي ثانية',
+ 'millisecond-zero' => '{0} مللي ثانية',
+ 'minute-few' => '{0} دقائق',
+ 'minute-future-few' => 'خلال {0} دقائق',
+ 'minute-future-many' => 'خلال {0} دقيقة',
+ 'minute-future-one' => 'خلال {0} من الدقائق',
+ 'minute-future-other' => 'خلال {0} من الدقائق',
+ 'minute-future-two' => 'خلال دقيقتين',
+ 'minute-future-zero' => 'خلال {0} من الدقائق',
+ 'minute-many' => '{0} دقيقة',
+ 'minute-narrow-future-few' => 'خلال {0} من الدقائق',
+ 'minute-narrow-future-many' => 'خلال {0} من الدقائق',
+ 'minute-narrow-future-one' => 'خلال {0} من الدقائق',
+ 'minute-narrow-future-other' => 'خلال {0} من الدقائق',
+ 'minute-narrow-future-two' => 'خلال {0} من الدقائق',
+ 'minute-narrow-future-zero' => 'خلال {0} من الدقائق',
+ 'minute-narrow-past-few' => 'قبل {0} من الدقائق',
+ 'minute-narrow-past-many' => 'قبل {0} من الدقائق',
+ 'minute-narrow-past-one' => 'قبل {0} من الدقائق',
+ 'minute-narrow-past-other' => 'قبل {0} من الدقائق',
+ 'minute-narrow-past-two' => 'قبل {0} من الدقائق',
+ 'minute-narrow-past-zero' => 'قبل {0} من الدقائق',
+ 'minute-one' => '{0} دقيقة',
+ 'minute-other' => '{0} دقيقة',
+ 'minute-past-few' => 'قبل {0} دقائق',
+ 'minute-past-many' => 'قبل {0} دقيقة',
+ 'minute-past-one' => 'قبل {0} من الدقائق',
+ 'minute-past-other' => 'قبل {0} من الدقائق',
+ 'minute-past-two' => 'قبل دقيقتين',
+ 'minute-past-zero' => 'قبل {0} من الدقائق',
+ 'minute-short-future-few' => 'خلال {0} من الدقائق',
+ 'minute-short-future-many' => 'خلال {0} من الدقائق',
+ 'minute-short-future-one' => 'خلال {0} من الدقائق',
+ 'minute-short-future-other' => 'خلال {0} من الدقائق',
+ 'minute-short-future-two' => 'خلال {0} من الدقائق',
+ 'minute-short-future-zero' => 'خلال {0} من الدقائق',
+ 'minute-short-past-few' => 'قبل {0} من الدقائق',
+ 'minute-short-past-many' => 'قبل {0} من الدقائق',
+ 'minute-short-past-one' => 'قبل {0} من الدقائق',
+ 'minute-short-past-other' => 'قبل {0} من الدقائق',
+ 'minute-short-past-two' => 'قبل {0} من الدقائق',
+ 'minute-short-past-zero' => 'قبل {0} من الدقائق',
+ 'minute-two' => 'دقيقتان',
+ 'minute-zero' => '{0} دقيقة',
+ 'month-few' => '{0} أشهر',
+ 'month-future-few' => 'خلال {0} شهور',
+ 'month-future-many' => 'خلال {0} شهرًا',
+ 'month-future-one' => 'خلال {0} من الشهور',
+ 'month-future-other' => 'خلال {0} من الشهور',
+ 'month-future-two' => 'خلال شهرين',
+ 'month-future-zero' => 'خلال {0} من الشهور',
+ 'month-many' => '{0} شهرًا',
+ 'month-narrow-future-few' => 'خلال {0} من الشهور',
+ 'month-narrow-future-many' => 'خلال {0} من الشهور',
+ 'month-narrow-future-one' => 'خلال {0} من الشهور',
+ 'month-narrow-future-other' => 'خلال {0} من الشهور',
+ 'month-narrow-future-two' => 'خلال {0} من الشهور',
+ 'month-narrow-future-zero' => 'خلال {0} من الشهور',
+ 'month-narrow-past-few' => 'قبل {0} من الشهور',
+ 'month-narrow-past-many' => 'قبل {0} من الشهور',
+ 'month-narrow-past-one' => 'قبل {0} من الشهور',
+ 'month-narrow-past-other' => 'قبل {0} من الشهور',
+ 'month-narrow-past-two' => 'قبل {0} من الشهور',
+ 'month-narrow-past-zero' => 'قبل {0} من الشهور',
+ 'month-one' => 'شهر',
+ 'month-other' => '{0} شهر',
+ 'month-past-few' => 'قبل {0} أشهر',
+ 'month-past-many' => 'قبل {0} شهرًا',
+ 'month-past-one' => 'قبل {0} من الشهور',
+ 'month-past-other' => 'قبل {0} من الشهور',
+ 'month-past-two' => 'قبل شهرين',
+ 'month-past-zero' => 'قبل {0} من الشهور',
+ 'month-short-future-few' => 'خلال {0} من الشهور',
+ 'month-short-future-many' => 'خلال {0} من الشهور',
+ 'month-short-future-one' => 'خلال {0} من الشهور',
+ 'month-short-future-other' => 'خلال {0} من الشهور',
+ 'month-short-future-two' => 'خلال {0} من الشهور',
+ 'month-short-future-zero' => 'خلال {0} من الشهور',
+ 'month-short-past-few' => 'قبل {0} من الشهور',
+ 'month-short-past-many' => 'قبل {0} من الشهور',
+ 'month-short-past-one' => 'قبل {0} من الشهور',
+ 'month-short-past-other' => 'قبل {0} من الشهور',
+ 'month-short-past-two' => 'قبل {0} من الشهور',
+ 'month-short-past-zero' => 'قبل {0} من الشهور',
+ 'month-two' => 'شهران',
+ 'month-zero' => '{0} شهر',
+ 'nanosecond-few' => '{0} نانو ثانية',
+ 'nanosecond-many' => '{0} نانو ثانية',
+ 'nanosecond-one' => '{0} نانو ثانية',
+ 'nanosecond-other' => '{0} نانو ثانية',
+ 'nanosecond-two' => '{0} نانو ثانية',
+ 'nanosecond-zero' => '{0} نانو ثانية',
+ 'quarter-future-few' => 'خلال {0} من أرباع السنة',
+ 'quarter-future-many' => 'خلال {0} من أرباع السنة',
+ 'quarter-future-one' => 'خلال {0} من أرباع السنة',
+ 'quarter-future-other' => 'خلال {0} من أرباع السنة',
+ 'quarter-future-two' => 'خلال {0} من أرباع السنة',
+ 'quarter-future-zero' => 'خلال {0} من أرباع السنة',
+ 'quarter-narrow-future-few' => 'خلال {0} من أرباع السنة',
+ 'quarter-narrow-future-many' => 'خلال {0} من أرباع السنة',
+ 'quarter-narrow-future-one' => 'خلال {0} من أرباع السنة',
+ 'quarter-narrow-future-other' => 'خلال {0} من أرباع السنة',
+ 'quarter-narrow-future-two' => 'خلال {0} من أرباع السنة',
+ 'quarter-narrow-future-zero' => 'خلال {0} من أرباع السنة',
+ 'quarter-narrow-past-few' => 'قبل {0} من أرباع السنة',
+ 'quarter-narrow-past-many' => 'قبل {0} من أرباع السنة',
+ 'quarter-narrow-past-one' => 'قبل {0} من أرباع السنة',
+ 'quarter-narrow-past-other' => 'قبل {0} من أرباع السنة',
+ 'quarter-narrow-past-two' => 'قبل {0} من أرباع السنة',
+ 'quarter-narrow-past-zero' => 'قبل {0} من أرباع السنة',
+ 'quarter-past-few' => 'قبل {0} من أرباع السنة',
+ 'quarter-past-many' => 'قبل {0} من أرباع السنة',
+ 'quarter-past-one' => 'قبل {0} من أرباع السنة',
+ 'quarter-past-other' => 'قبل {0} من أرباع السنة',
+ 'quarter-past-two' => 'قبل {0} من أرباع السنة',
+ 'quarter-past-zero' => 'قبل {0} من أرباع السنة',
+ 'quarter-short-future-few' => 'خلال {0} من أرباع السنة',
+ 'quarter-short-future-many' => 'خلال {0} من أرباع السنة',
+ 'quarter-short-future-one' => 'خلال {0} من أرباع السنة',
+ 'quarter-short-future-other' => 'خلال {0} من أرباع السنة',
+ 'quarter-short-future-two' => 'خلال {0} من أرباع السنة',
+ 'quarter-short-future-zero' => 'خلال {0} من أرباع السنة',
+ 'quarter-short-past-few' => 'قبل {0} من أرباع السنة',
+ 'quarter-short-past-many' => 'قبل {0} من أرباع السنة',
+ 'quarter-short-past-one' => 'قبل {0} من أرباع السنة',
+ 'quarter-short-past-other' => 'قبل {0} من أرباع السنة',
+ 'quarter-short-past-two' => 'قبل {0} من أرباع السنة',
+ 'quarter-short-past-zero' => 'قبل {0} من أرباع السنة',
+ 'second-few' => '{0} ثوان',
+ 'second-future-few' => 'خلال {0} ثوانِ',
+ 'second-future-many' => 'خلال {0} ثانية',
+ 'second-future-one' => 'خلال {0} من الثواني',
+ 'second-future-other' => 'خلال {0} من الثواني',
+ 'second-future-two' => 'خلال ثانيتين',
+ 'second-future-zero' => 'خلال {0} من الثواني',
+ 'second-many' => '{0} ثانية',
+ 'second-narrow-future-few' => 'خلال {0} من الثواني',
+ 'second-narrow-future-many' => 'خلال {0} من الثواني',
+ 'second-narrow-future-one' => 'خلال {0} من الثواني',
+ 'second-narrow-future-other' => 'خلال {0} من الثواني',
+ 'second-narrow-future-two' => 'خلال {0} من الثواني',
+ 'second-narrow-future-zero' => 'خلال {0} من الثواني',
+ 'second-narrow-past-few' => 'قبل {0} من الثواني',
+ 'second-narrow-past-many' => 'قبل {0} من الثواني',
+ 'second-narrow-past-one' => 'قبل {0} من الثواني',
+ 'second-narrow-past-other' => 'قبل {0} من الثواني',
+ 'second-narrow-past-two' => 'قبل {0} من الثواني',
+ 'second-narrow-past-zero' => 'قبل {0} من الثواني',
+ 'second-one' => 'ثانية',
+ 'second-other' => '{0} ثانية',
+ 'second-past-few' => 'قبل {0} ثوانِ',
+ 'second-past-many' => 'قبل {0} ثانية',
+ 'second-past-one' => 'قبل {0} من الثواني',
+ 'second-past-other' => 'قبل {0} من الثواني',
+ 'second-past-two' => 'قبل ثانيتين',
+ 'second-past-zero' => 'قبل {0} من الثواني',
+ 'second-short-future-few' => 'خلال {0} من الثواني',
+ 'second-short-future-many' => 'خلال {0} من الثواني',
+ 'second-short-future-one' => 'خلال {0} من الثواني',
+ 'second-short-future-other' => 'خلال {0} من الثواني',
+ 'second-short-future-two' => 'خلال {0} من الثواني',
+ 'second-short-future-zero' => 'خلال {0} من الثواني',
+ 'second-short-past-few' => 'قبل {0} من الثواني',
+ 'second-short-past-many' => 'قبل {0} من الثواني',
+ 'second-short-past-one' => 'قبل {0} من الثواني',
+ 'second-short-past-other' => 'قبل {0} من الثواني',
+ 'second-short-past-two' => 'قبل {0} من الثواني',
+ 'second-short-past-zero' => 'قبل {0} من الثواني',
+ 'second-two' => 'ثانيتان',
+ 'second-zero' => '{0} ثانية',
+ 'week-few' => '{0} أسابيع',
+ 'week-future-few' => 'خلال {0} أسابيع',
+ 'week-future-many' => 'خلال {0} أسبوعًا',
+ 'week-future-one' => 'خلال {0} من الأسابيع',
+ 'week-future-other' => 'خلال {0} من الأسابيع',
+ 'week-future-two' => 'خلال أسبوعين',
+ 'week-future-zero' => 'خلال {0} من الأسابيع',
+ 'week-many' => '{0} أسبوعًا',
+ 'week-narrow-future-few' => 'خلال {0} من الأسابيع',
+ 'week-narrow-future-many' => 'خلال {0} من الأسابيع',
+ 'week-narrow-future-one' => 'خلال {0} من الأسابيع',
+ 'week-narrow-future-other' => 'خلال {0} من الأسابيع',
+ 'week-narrow-future-two' => 'خلال {0} من الأسابيع',
+ 'week-narrow-future-zero' => 'خلال {0} من الأسابيع',
+ 'week-narrow-past-few' => 'قبل {0} من الأسابيع',
+ 'week-narrow-past-many' => 'قبل {0} من الأسابيع',
+ 'week-narrow-past-one' => 'قبل {0} من الأسابيع',
+ 'week-narrow-past-other' => 'قبل {0} من الأسابيع',
+ 'week-narrow-past-two' => 'قبل {0} من الأسابيع',
+ 'week-narrow-past-zero' => 'قبل {0} من الأسابيع',
+ 'week-one' => 'أسبوع',
+ 'week-other' => '{0} أسبوع',
+ 'week-past-few' => 'قبل {0} أسابيع',
+ 'week-past-many' => 'قبل {0} أسبوعًا',
+ 'week-past-one' => 'قبل {0} من الأسابيع',
+ 'week-past-other' => 'قبل {0} من الأسابيع',
+ 'week-past-two' => 'قبل أسبوعين',
+ 'week-past-zero' => 'قبل {0} من الأسابيع',
+ 'week-short-future-few' => 'خلال {0} من الأسابيع',
+ 'week-short-future-many' => 'خلال {0} من الأسابيع',
+ 'week-short-future-one' => 'خلال {0} من الأسابيع',
+ 'week-short-future-other' => 'خلال {0} من الأسابيع',
+ 'week-short-future-two' => 'خلال {0} من الأسابيع',
+ 'week-short-future-zero' => 'خلال {0} من الأسابيع',
+ 'week-short-past-few' => 'قبل {0} من الأسابيع',
+ 'week-short-past-many' => 'قبل {0} من الأسابيع',
+ 'week-short-past-one' => 'قبل {0} من الأسابيع',
+ 'week-short-past-other' => 'قبل {0} من الأسابيع',
+ 'week-short-past-two' => 'قبل {0} من الأسابيع',
+ 'week-short-past-zero' => 'قبل {0} من الأسابيع',
+ 'week-two' => 'أسبوعان',
+ 'week-zero' => '{0} أسبوع',
+ 'year-few' => '{0} سنوات',
+ 'year-future-few' => 'خلال {0} سنوات',
+ 'year-future-many' => 'خلال {0} سنة',
+ 'year-future-one' => 'خلال {0} من السنوات',
+ 'year-future-other' => 'خلال {0} من السنوات',
+ 'year-future-two' => 'خلال سنتين',
+ 'year-future-zero' => 'خلال {0} من السنوات',
+ 'year-many' => '{0} سنة',
+ 'year-narrow-future-few' => 'خلال {0} من السنوات',
+ 'year-narrow-future-many' => 'خلال {0} من السنوات',
+ 'year-narrow-future-one' => 'خلال {0} من السنوات',
+ 'year-narrow-future-other' => 'خلال {0} من السنوات',
+ 'year-narrow-future-two' => 'خلال {0} من السنوات',
+ 'year-narrow-future-zero' => 'خلال {0} من السنوات',
+ 'year-narrow-past-few' => 'قبل {0} من السنوات',
+ 'year-narrow-past-many' => 'قبل {0} من السنوات',
+ 'year-narrow-past-one' => 'قبل {0} من السنوات',
+ 'year-narrow-past-other' => 'قبل {0} من السنوات',
+ 'year-narrow-past-two' => 'قبل {0} من السنوات',
+ 'year-narrow-past-zero' => 'قبل {0} من السنوات',
+ 'year-one' => 'سنة',
+ 'year-other' => '{0} سنة',
+ 'year-past-few' => 'قبل {0} سنوات',
+ 'year-past-many' => 'قبل {0} سنة',
+ 'year-past-one' => 'قبل {0} من السنوات',
+ 'year-past-other' => 'قبل {0} من السنوات',
+ 'year-past-two' => 'قبل سنتين',
+ 'year-past-zero' => 'قبل {0} من السنوات',
+ 'year-short-future-few' => 'خلال {0} من السنوات',
+ 'year-short-future-many' => 'خلال {0} من السنوات',
+ 'year-short-future-one' => 'خلال {0} من السنوات',
+ 'year-short-future-other' => 'خلال {0} من السنوات',
+ 'year-short-future-two' => 'خلال {0} من السنوات',
+ 'year-short-future-zero' => 'خلال {0} من السنوات',
+ 'year-short-past-few' => 'قبل {0} من السنوات',
+ 'year-short-past-many' => 'قبل {0} من السنوات',
+ 'year-short-past-one' => 'قبل {0} من السنوات',
+ 'year-short-past-other' => 'قبل {0} من السنوات',
+ 'year-short-past-two' => 'قبل {0} من السنوات',
+ 'year-short-past-zero' => 'قبل {0} من السنوات',
+ 'year-two' => 'سنتان',
+ 'year-zero' => '{0} سنة',
+);
diff --git a/MLEB/cldr/CldrNames/CldrNamesAs.php b/MLEB/cldr/CldrNames/CldrNamesAs.php
new file mode 100644
index 00000000..b98ddc32
--- /dev/null
+++ b/MLEB/cldr/CldrNames/CldrNamesAs.php
@@ -0,0 +1,26 @@
+<?php
+
+$languageNames = array(
+ 'as' => 'অসমীয়া',
+ 'ie' => 'উপস্থাপন ভাষা',
+ 'km' => 'কম্বোডিয়ান',
+);
+
+$countryNames = array(
+ 'AQ' => 'এন্টাৰ্টিকা',
+ 'BR' => 'ব্ৰাজিল',
+ 'BV' => 'বভেট দ্বীপ',
+ 'CN' => 'চীন',
+ 'DE' => 'জাৰ্মানি',
+ 'FR' => 'ফ্ৰান্স',
+ 'GB' => 'সংযুক্ত ৰাজ্য',
+ 'GS' => 'দক্ষিণ জৰ্জিয়া আৰু দক্ষিণ চেণ্ডৱিচ্‌ দ্বীপ',
+ 'HM' => 'হাৰ্ড দ্বীপ আৰু মেক্‌ডোনাল্ড দ্বীপ',
+ 'IN' => 'ভাৰত',
+ 'IO' => 'ব্ৰিটিশ্ব ইণ্ডিয়ান মহাসাগৰৰ অঞ্চল',
+ 'IT' => 'ইটালি',
+ 'JP' => 'জাপান',
+ 'RU' => 'ৰুচ',
+ 'TF' => 'দক্ষিণ ফ্ৰান্সৰ অঞ্চল',
+ 'US' => 'যুক্তৰাষ্ট্ৰ',
+);
diff --git a/MLEB/cldr/CldrNames/CldrNamesAst.php b/MLEB/cldr/CldrNames/CldrNamesAst.php
new file mode 100644
index 00000000..f92d04c7
--- /dev/null
+++ b/MLEB/cldr/CldrNames/CldrNamesAst.php
@@ -0,0 +1,1276 @@
+<?php
+
+$languageNames = array(
+ 'aa' => 'afar',
+ 'ab' => 'abkhazianu',
+ 'ace' => 'achinés',
+ 'ach' => 'acoli',
+ 'ada' => 'adangme',
+ 'ady' => 'adyghe',
+ 'ae' => 'avestanín',
+ 'aeb' => 'árabe de Túnez',
+ 'af' => 'afrikaans',
+ 'afh' => 'afrihili',
+ 'agq' => 'aghem',
+ 'ain' => 'ainu',
+ 'ak' => 'ak',
+ 'akk' => 'acadianu',
+ 'akz' => 'alabama',
+ 'ale' => 'aleut',
+ 'aln' => 'gheg d’Albania',
+ 'alt' => 'altai del sur',
+ 'am' => 'amharicu',
+ 'an' => 'aragonés',
+ 'ang' => 'inglés antiguu',
+ 'anp' => 'angika',
+ 'ar' => 'árabe',
+ 'ar-001' => 'árabe estándar modernu',
+ 'arc' => 'araméu',
+ 'arn' => 'mapuche',
+ 'aro' => 'araona',
+ 'arp' => 'arapaho',
+ 'arq' => 'árabe d’Arxelia',
+ 'arw' => 'arawak',
+ 'ary' => 'árabe de Marruecos',
+ 'arz' => 'árabe d’Exiptu',
+ 'as' => 'asamés',
+ 'asa' => 'asu',
+ 'ase' => 'llingua de signos americana',
+ 'ast' => 'asturianu',
+ 'av' => 'aváricu',
+ 'avk' => 'kotava',
+ 'awa' => 'awadhi',
+ 'ay' => 'aymara',
+ 'az' => 'azerbaixanu',
+ 'azb' => 'azerbaixanu del sur',
+ 'ba' => 'bashkir',
+ 'bal' => 'baluchi',
+ 'ban' => 'balinés',
+ 'bar' => 'bávaru',
+ 'bas' => 'basaa',
+ 'bax' => 'bamun',
+ 'bbc' => 'batak toba',
+ 'bbj' => 'ghomala',
+ 'be' => 'bielorrusu',
+ 'bej' => 'beja',
+ 'bem' => 'bemba',
+ 'bew' => 'betawi',
+ 'bez' => 'bena',
+ 'bfd' => 'bafut',
+ 'bfq' => 'badaga',
+ 'bg' => 'búlgaru',
+ 'bho' => 'bhojpuri',
+ 'bi' => 'bislama',
+ 'bik' => 'bikol',
+ 'bin' => 'bini',
+ 'bjn' => 'banjar',
+ 'bkm' => 'kom',
+ 'bla' => 'siksika',
+ 'bm' => 'bambara',
+ 'bn' => 'bengalín',
+ 'bo' => 'tibetanu',
+ 'bpy' => 'bishnupriya',
+ 'bqi' => 'bakhtiari',
+ 'br' => 'bretón',
+ 'bra' => 'braj',
+ 'brh' => 'brahui',
+ 'brx' => 'bodo',
+ 'bs' => 'bosniu',
+ 'bss' => 'akoose',
+ 'bua' => 'buriat',
+ 'bug' => 'buginés',
+ 'bum' => 'bulu',
+ 'byn' => 'blin',
+ 'byv' => 'medumba',
+ 'ca' => 'catalán',
+ 'cad' => 'caddo',
+ 'car' => 'caribe',
+ 'cay' => 'cayuga',
+ 'cch' => 'atsam',
+ 'ce' => 'chechenu',
+ 'ceb' => 'cebuanu',
+ 'cgg' => 'chiga',
+ 'ch' => 'chamorro',
+ 'chb' => 'chibcha',
+ 'chg' => 'chagatai',
+ 'chk' => 'chuukés',
+ 'chm' => 'mari',
+ 'chn' => 'xíriga chinook',
+ 'cho' => 'choctaw',
+ 'chp' => 'chipewyanu',
+ 'chr' => 'cheroqui',
+ 'chy' => 'cheyenne',
+ 'ckb' => 'kurdu sorani',
+ 'co' => 'corsu',
+ 'cop' => 'coptu',
+ 'cps' => 'capiznon',
+ 'cr' => 'cree',
+ 'crh' => 'turcu de Crimea',
+ 'cs' => 'checu',
+ 'csb' => 'kashubianu',
+ 'cu' => 'eslávicu eclesiásticu',
+ 'cv' => 'chuvash',
+ 'cy' => 'galés',
+ 'da' => 'danés',
+ 'dak' => 'dakota',
+ 'dar' => 'dargwa',
+ 'dav' => 'taita',
+ 'de' => 'alemán',
+ 'de-ch' => 'altualemán de Suiza',
+ 'del' => 'delaware',
+ 'den' => 'slave',
+ 'dgr' => 'dogrib',
+ 'din' => 'dinka',
+ 'dje' => 'zarma',
+ 'doi' => 'dogri',
+ 'dsb' => 'baxu sorbiu',
+ 'dtp' => 'dusun central',
+ 'dua' => 'duala',
+ 'dum' => 'neerlandés mediu',
+ 'dv' => 'divehi',
+ 'dyo' => 'jola-fonyi',
+ 'dyu' => 'dyula',
+ 'dz' => 'dzongkha',
+ 'dzg' => 'dazaga',
+ 'ebu' => 'embú',
+ 'ee' => 'ewe',
+ 'efi' => 'efik',
+ 'egl' => 'emilianu',
+ 'egy' => 'exipciu antiguu',
+ 'eka' => 'ekajuk',
+ 'el' => 'griegu',
+ 'elx' => 'elamita',
+ 'en' => 'inglés',
+ 'en-ca' => 'inglés de Canadá',
+ 'en-gb' => 'inglés de Gran Bretaña',
+ 'en-us' => 'inglés americanu',
+ 'enm' => 'inglés mediu',
+ 'eo' => 'esperanto',
+ 'es' => 'español',
+ 'es-mx' => 'español de México',
+ 'esu' => 'yupik central',
+ 'et' => 'estoniu',
+ 'eu' => 'vascu',
+ 'ewo' => 'ewondo',
+ 'ext' => 'estremeñu',
+ 'fa' => 'persa',
+ 'fan' => 'fang',
+ 'fat' => 'fanti',
+ 'ff' => 'fulah',
+ 'fi' => 'finlandés',
+ 'fil' => 'filipín',
+ 'fit' => 'finlandés de Tornedalen',
+ 'fj' => 'fixanu',
+ 'fo' => 'feroés',
+ 'fon' => 'fon',
+ 'fr' => 'francés',
+ 'fr-ca' => 'francés de Canadá',
+ 'fr-ch' => 'francés de Suiza',
+ 'frc' => 'francés cajun',
+ 'frm' => 'francés mediu',
+ 'fro' => 'francés antiguu',
+ 'frp' => 'arpitanu',
+ 'frr' => 'frisón del norte',
+ 'frs' => 'frisón oriental',
+ 'fur' => 'friulianu',
+ 'fy' => 'frisón occidental',
+ 'ga' => 'irlandés',
+ 'gaa' => 'ga',
+ 'gag' => 'gagauz',
+ 'gan' => 'chinu gan',
+ 'gay' => 'gayo',
+ 'gba' => 'gbaya',
+ 'gbz' => 'dari zoroastrianu',
+ 'gd' => 'gaélicu escocés',
+ 'gez' => 'geez',
+ 'gil' => 'gilbertés',
+ 'gl' => 'gallegu',
+ 'glk' => 'gilaki',
+ 'gmh' => 'altualemán mediu',
+ 'gn' => 'guaraní',
+ 'goh' => 'altualemán antiguu',
+ 'gom' => 'goan konkani',
+ 'gon' => 'gondi',
+ 'gor' => 'gorontalo',
+ 'got' => 'góticu',
+ 'grb' => 'grebo',
+ 'grc' => 'griegu antiguu',
+ 'gsw' => 'alemán de Suiza',
+ 'gu' => 'guyaratí',
+ 'guc' => 'wayuu',
+ 'gur' => 'frafra',
+ 'guz' => 'gusii',
+ 'gv' => 'manés',
+ 'gwi' => 'gwichʼin',
+ 'ha' => 'ḥausa',
+ 'hai' => 'haida',
+ 'hak' => 'chinu hakka',
+ 'haw' => 'hawaianu',
+ 'he' => 'hebréu',
+ 'hi' => 'hindi',
+ 'hif' => 'hindi de Fiji',
+ 'hil' => 'hiligaynon',
+ 'hit' => 'hitita',
+ 'hmn' => 'hmong',
+ 'ho' => 'hiri motu',
+ 'hr' => 'croata',
+ 'hsb' => 'altu sorbiu',
+ 'hsn' => 'chinu xiang',
+ 'ht' => 'haitianu',
+ 'hu' => 'húngaru',
+ 'hup' => 'hupa',
+ 'hy' => 'armeniu',
+ 'hz' => 'herero',
+ 'ia' => 'interlingua',
+ 'iba' => 'iban',
+ 'ibb' => 'ibibio',
+ 'id' => 'indonesiu',
+ 'ie' => 'interlingue',
+ 'ig' => 'igbo',
+ 'ii' => 'yi de Sichuan',
+ 'ik' => 'inupiaq',
+ 'ilo' => 'iloko',
+ 'inh' => 'ingush',
+ 'io' => 'ido',
+ 'is' => 'islandés',
+ 'it' => 'italianu',
+ 'iu' => 'inuktitut',
+ 'izh' => 'ingrianu',
+ 'ja' => 'xaponés',
+ 'jam' => 'inglés criollu xamaicanu',
+ 'jbo' => 'lojban',
+ 'jgo' => 'ngomba',
+ 'jmc' => 'machame',
+ 'jpr' => 'xudeo-persa',
+ 'jrb' => 'xudeo-árabe',
+ 'jut' => 'jutlandés',
+ 'jv' => 'xavanés',
+ 'ka' => 'xeorxanu',
+ 'kaa' => 'kara-kalpak',
+ 'kab' => 'kabileñu',
+ 'kac' => 'kachin',
+ 'kaj' => 'jju',
+ 'kam' => 'kamba',
+ 'kaw' => 'kawi',
+ 'kbd' => 'kabardianu',
+ 'kbl' => 'kanembu',
+ 'kcg' => 'tyap',
+ 'kde' => 'makonde',
+ 'kea' => 'cabuverdianu',
+ 'ken' => 'kenyang',
+ 'kfo' => 'koro',
+ 'kg' => 'kongo',
+ 'kgp' => 'kaingang',
+ 'kha' => 'khasi',
+ 'kho' => 'khotanés',
+ 'khq' => 'koyra chiini',
+ 'khw' => 'khowar',
+ 'ki' => 'kikuyu',
+ 'kiu' => 'kirmanjki',
+ 'kj' => 'kuanyama',
+ 'kk' => 'kazaquistanín',
+ 'kkj' => 'kako',
+ 'kl' => 'kalaallisut',
+ 'kln' => 'kln',
+ 'km' => 'khmer',
+ 'kmb' => 'kimbundu',
+ 'kn' => 'canarés',
+ 'ko' => 'coreanu',
+ 'koi' => 'komi-permyak',
+ 'kok' => 'konkani',
+ 'kos' => 'kosraeanu',
+ 'kpe' => 'kpelle',
+ 'kr' => 'kanuri',
+ 'krc' => 'karachay-balkar',
+ 'kri' => 'krio',
+ 'krj' => 'kinaray-a',
+ 'krl' => 'karelianu',
+ 'kru' => 'kurukh',
+ 'ks' => 'cachemirés',
+ 'ksb' => 'shambala',
+ 'ksf' => 'bafia',
+ 'ksh' => 'colonianu',
+ 'ku' => 'curdu',
+ 'kum' => 'kumyk',
+ 'kut' => 'kutenai',
+ 'kv' => 'komi',
+ 'kw' => 'córnicu',
+ 'ky' => 'kirguistanín',
+ 'la' => 'llatín',
+ 'lad' => 'ladino',
+ 'lag' => 'langi',
+ 'lah' => 'lahnda',
+ 'lam' => 'lamba',
+ 'lb' => 'luxemburgués',
+ 'lez' => 'lezghianu',
+ 'lfn' => 'lingua franca nova',
+ 'lg' => 'ganda',
+ 'li' => 'limburgués',
+ 'lij' => 'ligurianu',
+ 'liv' => 'livonianu',
+ 'lkt' => 'lakota',
+ 'lmo' => 'lombardu',
+ 'ln' => 'lingala',
+ 'lo' => 'laosianu',
+ 'lol' => 'mongo',
+ 'loz' => 'lozi',
+ 'lt' => 'lituanu',
+ 'ltg' => 'latgalianu',
+ 'lu' => 'luba-katanga',
+ 'lua' => 'luba-lulua',
+ 'lui' => 'luiseno',
+ 'lun' => 'lunda',
+ 'luo' => 'luo',
+ 'lus' => 'mizo',
+ 'luy' => 'luyia',
+ 'lv' => 'letón',
+ 'lzh' => 'chinu lliterariu',
+ 'lzz' => 'laz',
+ 'mad' => 'madurés',
+ 'maf' => 'mafa',
+ 'mag' => 'magahi',
+ 'mai' => 'maithili',
+ 'mak' => 'makasar',
+ 'man' => 'mandingo',
+ 'mas' => 'masai',
+ 'mde' => 'maba',
+ 'mdf' => 'moksha',
+ 'mdr' => 'mandar',
+ 'men' => 'mende',
+ 'mer' => 'meru',
+ 'mfe' => 'morisyen',
+ 'mg' => 'malgaxe',
+ 'mga' => 'írlandés mediu',
+ 'mgh' => 'makhuwa-meetto',
+ 'mgo' => 'meta’',
+ 'mh' => 'marshallés',
+ 'mi' => 'maorí',
+ 'mic' => 'micmac',
+ 'min' => 'minangkabau',
+ 'mk' => 'macedoniu',
+ 'ml' => 'malayalam',
+ 'mn' => 'mongol',
+ 'mnc' => 'manchú',
+ 'mni' => 'manipuri',
+ 'moh' => 'mohawk',
+ 'mos' => 'mossi',
+ 'mr' => 'marathi',
+ 'mrj' => 'mari occidental',
+ 'ms' => 'malayu',
+ 'mt' => 'maltés',
+ 'mua' => 'mundang',
+ 'mul' => 'múltiples llingües',
+ 'mus' => 'creek',
+ 'mwl' => 'mirandés',
+ 'mwr' => 'marwari',
+ 'mwv' => 'mentawai',
+ 'my' => 'birmanu',
+ 'mye' => 'myene',
+ 'myv' => 'erzya',
+ 'mzn' => 'mazanderani',
+ 'na' => 'nauru',
+ 'nan' => 'chinu min nan',
+ 'nap' => 'napolitanu',
+ 'naq' => 'nama',
+ 'nb' => 'noruegu Bokmål',
+ 'nd' => 'ndebele del norte',
+ 'nds' => 'baxu alemán',
+ 'ne' => 'nepalés',
+ 'new' => 'newari',
+ 'ng' => 'ndonga',
+ 'nia' => 'nias',
+ 'niu' => 'niueanu',
+ 'njo' => 'ao naga',
+ 'nl' => 'neerlandés',
+ 'nl-be' => 'flamencu',
+ 'nmg' => 'kwasio',
+ 'nn' => 'noruegu Nynorsk',
+ 'nnh' => 'ngiemboon',
+ 'no' => 'noruegu',
+ 'nog' => 'nogai',
+ 'non' => 'noruegu antiguu',
+ 'nov' => 'novial',
+ 'nqo' => 'n’ko',
+ 'nr' => 'ndebele del sur',
+ 'nso' => 'sotho del norte',
+ 'nus' => 'nuer',
+ 'nv' => 'navajo',
+ 'nwc' => 'newari clásicu',
+ 'ny' => 'nyanja',
+ 'nym' => 'nyamwezi',
+ 'nyn' => 'nyankole',
+ 'nyo' => 'nyoro',
+ 'nzi' => 'nzima',
+ 'oc' => 'occitanu',
+ 'oj' => 'ojibwa',
+ 'om' => 'oromo',
+ 'or' => 'oriya',
+ 'os' => 'oséticu',
+ 'ota' => 'turcu otomanu',
+ 'pa' => 'punyabí',
+ 'pag' => 'pangasinan',
+ 'pam' => 'pampanga',
+ 'pap' => 'papiamento',
+ 'pau' => 'palauanu',
+ 'pcd' => 'pícaru',
+ 'pdc' => 'alemán de Pennsylvania',
+ 'peo' => 'persa antiguu',
+ 'pfl' => 'alemán palatinu',
+ 'phn' => 'feniciu',
+ 'pl' => 'polacu',
+ 'pms' => 'piamontés',
+ 'pon' => 'pohnpeianu',
+ 'prg' => 'prusianu',
+ 'pro' => 'provenzal antiguu',
+ 'ps' => 'pashtu',
+ 'pt' => 'portugués',
+ 'pt-br' => 'portugués del Brasil',
+ 'qu' => 'quechua',
+ 'quc' => 'kʼicheʼ',
+ 'raj' => 'rajasthanín',
+ 'rgn' => 'romañol',
+ 'rif' => 'rifianu',
+ 'rm' => 'romanche',
+ 'rn' => 'rundi',
+ 'ro' => 'rumanu',
+ 'ro-md' => 'moldavu',
+ 'rof' => 'rombo',
+ 'rom' => 'romaní',
+ 'rtm' => 'rotumanu',
+ 'ru' => 'rusu',
+ 'rue' => 'rusyn',
+ 'rw' => 'rw',
+ 'rwk' => 'rwa',
+ 'sa' => 'sánscritu',
+ 'sah' => 'sakha',
+ 'sam' => 'araméu samaritanu',
+ 'saq' => 'samburu',
+ 'sas' => 'sasak',
+ 'sat' => 'santali',
+ 'saz' => 'saurashtra',
+ 'sbp' => 'sangu',
+ 'sc' => 'sardu',
+ 'scn' => 'sicilianu',
+ 'sco' => 'scots',
+ 'sd' => 'sindhi',
+ 'sdc' => 'sardu sassarés',
+ 'se' => 'sami del norte',
+ 'see' => 'séneca',
+ 'seh' => 'sena',
+ 'ses' => 'koyraboro senni',
+ 'sg' => 'sango',
+ 'sga' => 'irlandés antiguu',
+ 'sh' => 'serbo-croata',
+ 'shi' => 'tachelhit',
+ 'shn' => 'shan',
+ 'si' => 'cingalés',
+ 'sid' => 'sidamo',
+ 'sk' => 'eslovacu',
+ 'sl' => 'eslovenu',
+ 'sm' => 'samoanu',
+ 'sma' => 'sami del sur',
+ 'smj' => 'lule sami',
+ 'smn' => 'inari sami',
+ 'sms' => 'skolt sami',
+ 'sn' => 'shona',
+ 'snk' => 'soninke',
+ 'so' => 'somalín',
+ 'sq' => 'albanu',
+ 'sr' => 'serbiu',
+ 'srn' => 'sranan tongo',
+ 'srr' => 'serer',
+ 'ss' => 'swati',
+ 'ssy' => 'saho',
+ 'st' => 'sotho del sur',
+ 'stq' => 'frisón de Saterland',
+ 'su' => 'sondanés',
+ 'suk' => 'sukuma',
+ 'sus' => 'susu',
+ 'sux' => 'sumeriu',
+ 'sv' => 'suecu',
+ 'sw' => 'suaḥili',
+ 'swb' => 'comorianu',
+ 'swc' => 'swahili del Congo',
+ 'syc' => 'siriacu clásicu',
+ 'syr' => 'siriacu',
+ 'szl' => 'silesianu',
+ 'ta' => 'tamil',
+ 'tcy' => 'tulu',
+ 'te' => 'telugu',
+ 'tem' => 'timne',
+ 'teo' => 'teso',
+ 'tet' => 'tetum',
+ 'tg' => 'taxiquistanín',
+ 'th' => 'tailandés',
+ 'ti' => 'tigrinya',
+ 'tig' => 'tigre',
+ 'tiv' => 'tiv',
+ 'tk' => 'turcomanu',
+ 'tkl' => 'tokelau',
+ 'tl' => 'tagalog',
+ 'tlh' => 'klingon',
+ 'tmh' => 'tamashek',
+ 'tn' => 'tswana',
+ 'to' => 'tonganu',
+ 'tpi' => 'tok pisin',
+ 'tr' => 'turcu',
+ 'trv' => 'taroko',
+ 'ts' => 'tsonga',
+ 'tt' => 'tártaru',
+ 'tum' => 'tumbuka',
+ 'tvl' => 'tuvalu',
+ 'twq' => 'tasawaq',
+ 'ty' => 'tahitianu',
+ 'tyv' => 'tuvinianu',
+ 'tzm' => 'tamazight del Atlas central',
+ 'udm' => 'udmurt',
+ 'ug' => 'uigur',
+ 'uga' => 'ugaríticu',
+ 'uk' => 'ucraín',
+ 'umb' => 'umbundu',
+ 'und' => 'llingua desconocida',
+ 'ur' => 'ur',
+ 'uz' => 'uzbequistanín',
+ 'vai' => 'vai',
+ 've' => 'venda',
+ 'vec' => 'venecianu',
+ 'vi' => 'vietnamín',
+ 'vls' => 'flamencu occidental',
+ 'vun' => 'vunjo',
+ 'wa' => 'valón',
+ 'wal' => 'wolaytta',
+ 'war' => 'waray',
+ 'wo' => 'wolof',
+ 'wuu' => 'chinu wu',
+ 'xh' => 'xhosa',
+ 'xog' => 'soga',
+ 'yao' => 'yao',
+ 'yap' => 'yapés',
+ 'yav' => 'yangben',
+ 'ybb' => 'yemba',
+ 'yi' => 'yiddish',
+ 'yo' => 'yoruba',
+ 'yue' => 'cantonés',
+ 'za' => 'zhuang',
+ 'zap' => 'zapoteca',
+ 'zea' => 'zeelandés',
+ 'zgh' => 'tamazight estándar de Marruecos',
+ 'zh' => 'chinu',
+ 'zh-hans' => 'chinu simplificáu',
+ 'zh-hant' => 'chinu tradicional',
+ 'zu' => 'zulú',
+ 'zxx' => 'ensin conteníu llingüísticu',
+);
+
+$currencyNames = array(
+ 'AED' => 'dirḥam de los Emiratos Árabes Xuníos',
+ 'AFN' => 'afganí afganistanu',
+ 'ALL' => 'lek',
+ 'AMD' => 'dram armeniu',
+ 'ANG' => 'guilder de les Antilles Neerlandeses',
+ 'AOA' => 'kwanza angolanu',
+ 'ARS' => 'pesu arxentín',
+ 'AUD' => 'dólar australianu',
+ 'AWG' => 'florín arubanu',
+ 'AZN' => 'manat azerbaixanu',
+ 'BAM' => 'marcu convertible de Bosnia-Herzegovina',
+ 'BBD' => 'dólar barbadianu',
+ 'BDT' => 'taka bangladexí',
+ 'BGN' => 'lev',
+ 'BHD' => 'dinar baḥreiní',
+ 'BIF' => 'francu burundianu',
+ 'BMD' => 'dólar bermudianu',
+ 'BND' => 'dólar bruneyanu',
+ 'BOB' => 'bolivianu',
+ 'BRL' => 'real brasilanu',
+ 'BSD' => 'dólar bahamés',
+ 'BTN' => 'ngultrum butanés',
+ 'BWP' => 'pula botsuaniana',
+ 'BYR' => 'rublu bielorrusu',
+ 'BZD' => 'dólar belizianu',
+ 'CAD' => 'dólar canadiense',
+ 'CDF' => 'francu congolés',
+ 'CHF' => 'francu suizu',
+ 'CLP' => 'pesu chilenu',
+ 'CNY' => 'yuan chinu',
+ 'COP' => 'pesu colombianu',
+ 'CRC' => 'colón costarricanu',
+ 'CUC' => 'pesu convertible cubanu',
+ 'CUP' => 'pesu cubanu',
+ 'CVE' => 'escudu cabuverdianu',
+ 'CZK' => 'corona checa',
+ 'DJF' => 'francu xibutianu',
+ 'DKK' => 'corona danesa',
+ 'DOP' => 'pesu dominicanu',
+ 'DZD' => 'dinar arxelín',
+ 'EGP' => 'llibra exipciana',
+ 'ERN' => 'nakfa eritréu',
+ 'ETB' => 'birr etíope',
+ 'EUR' => 'euro',
+ 'FJD' => 'dólar fixanu',
+ 'FKP' => 'llibra malviniana',
+ 'GBP' => 'llibra esterlina',
+ 'GEL' => 'lari xeorxanu',
+ 'GHS' => 'cedi ghanianu',
+ 'GIP' => 'llibra de Xibraltar',
+ 'GMD' => 'dalasi gambianu',
+ 'GNF' => 'francu guineanu',
+ 'GNS' => 'syli guineanu',
+ 'GTQ' => 'quetzal de Guatemala',
+ 'GYD' => 'dólar guyanés',
+ 'HKD' => 'dólar hongkonés',
+ 'HNL' => 'lempira hondurana',
+ 'HRK' => 'kuna',
+ 'HTG' => 'gourde haitianu',
+ 'HUF' => 'forint',
+ 'IDR' => 'rupiah indonesia',
+ 'ILS' => 'xequel nuevu',
+ 'INR' => 'rupia india',
+ 'IQD' => 'dinar iraquín',
+ 'IRR' => 'rial iranín',
+ 'ISK' => 'corona islandesa',
+ 'JMD' => 'dólar xamaicanu',
+ 'JOD' => 'dinar xordanu',
+ 'JPY' => 'yen xaponés',
+ 'KES' => 'shilling kenianu',
+ 'KGS' => 'som kirguistanín',
+ 'KHR' => 'riel camboyanu',
+ 'KMF' => 'francu comoranu',
+ 'KPW' => 'won norcoreanu',
+ 'KRW' => 'won surcoreanu',
+ 'KWD' => 'dinar kuwaitianu',
+ 'KYD' => 'dólar caimanés',
+ 'KZT' => 'tenge kazaquistanín',
+ 'LAK' => 'kip laosianu',
+ 'LBP' => 'llibra libanesa',
+ 'LKR' => 'rupia de Sri Lanka',
+ 'LRD' => 'dólar liberianu',
+ 'LTL' => 'litas',
+ 'LVL' => 'lats',
+ 'LYD' => 'dinar libiu',
+ 'MAD' => 'dirḥam marroquín',
+ 'MAF' => 'francu marroquín',
+ 'MDL' => 'leu moldavu',
+ 'MGA' => 'ariary malgaxe',
+ 'MKD' => 'denar',
+ 'MMK' => 'kyat de Myanmar',
+ 'MNT' => 'tugrik mongol',
+ 'MOP' => 'pataca de Macáu',
+ 'MRO' => 'ouguiya mauritanu',
+ 'MUR' => 'rupia mauriciana',
+ 'MVR' => 'rufiyaa maldiviana',
+ 'MWK' => 'kwacha malauianu',
+ 'MXN' => 'pesu mexicanu',
+ 'MYR' => 'ringgit malasiu',
+ 'MZN' => 'metical mozambicanu',
+ 'NAD' => 'dólar namibianu',
+ 'NGN' => 'naira nixeriana',
+ 'NIO' => 'córdoba nicaraguanu',
+ 'NOK' => 'corona noruega',
+ 'NPR' => 'rupia nepalesa',
+ 'NZD' => 'dólar neozelandés',
+ 'OMR' => 'rial omanianu',
+ 'PAB' => 'balboa panamiegu',
+ 'PEN' => 'sol nuevu peruanu',
+ 'PGK' => 'kina papuana',
+ 'PHP' => 'pesu filipín',
+ 'PKR' => 'rupia paquistanina',
+ 'PLN' => 'zloty',
+ 'PYG' => 'guaraní paraguayu',
+ 'QAR' => 'rial qatarín',
+ 'RON' => 'leu rumanu',
+ 'RSD' => 'dinar serbiu',
+ 'RUB' => 'rublu rusu',
+ 'RWF' => 'francu ruandés',
+ 'SAR' => 'riyal saudita',
+ 'SBD' => 'dólar salomonés',
+ 'SCR' => 'rupia seixelesa',
+ 'SDD' => 'dinar sudanés (1992–2007)',
+ 'SDG' => 'llibra sudanesa',
+ 'SDP' => 'llibra sudanesa (1957–1998)',
+ 'SEK' => 'corona sueca',
+ 'SGD' => 'dólar singapuranu',
+ 'SHP' => 'llibra de Santa Lena',
+ 'SLL' => 'leone sierralleonés',
+ 'SOS' => 'shilling somalín',
+ 'SRD' => 'dólar surinamés',
+ 'SSP' => 'llibra sursudanesa',
+ 'STD' => 'dobra de Santu Tomé y Príncipe',
+ 'SYP' => 'llibra siria',
+ 'SZL' => 'lilangeni suazilandés',
+ 'THB' => 'baht tailandés',
+ 'TJS' => 'somoni taxiquistanín',
+ 'TMT' => 'manat turcomanu',
+ 'TND' => 'dinar tunecín',
+ 'TOP' => 'paʻanga tonganu',
+ 'TRY' => 'llira turca',
+ 'TTD' => 'dólar de Trinidá y Tobagu',
+ 'TWD' => 'dólar nuevu taiwanés',
+ 'TZS' => 'shilling tanzanianu',
+ 'UAH' => 'grivna',
+ 'UGX' => 'shilling ugandés',
+ 'USD' => 'dólar de los Estaos Xuníos',
+ 'UYU' => 'pesu uruguayu',
+ 'UZS' => 'som uzbequistanín',
+ 'VEF' => 'bolívar venezolanu',
+ 'VND' => 'dong vietnamín',
+ 'VUV' => 'vatu vanuatuanu',
+ 'WST' => 'tala samoanu',
+ 'XAF' => 'francu CFA BEAC',
+ 'XAG' => 'plata',
+ 'XAU' => 'oru',
+ 'XBA' => 'unidá compuesta européa',
+ 'XBB' => 'unida monetaria européa',
+ 'XBC' => 'unidá de cuenta européa (XBC)',
+ 'XBD' => 'unidá de cuenta européa (XBD)',
+ 'XCD' => 'dólar del Caribe Oriental',
+ 'XDR' => 'drechos especiales de xiru',
+ 'XFO' => 'Francu oru francés',
+ 'XFU' => 'Francu UIC francés',
+ 'XOF' => 'francu CFA BCEAO',
+ 'XPD' => 'onza troy de paladiu',
+ 'XPF' => 'francu CFP',
+ 'XPT' => 'platín',
+ 'XRE' => 'fondos RINET',
+ 'XSU' => 'Sucre',
+ 'XTS' => 'códigu monetariu de prueba',
+ 'XUA' => 'Unidá de cuenta ADB',
+ 'XXX' => 'Divisa desconocida',
+ 'YER' => 'rial yemenín',
+ 'ZAR' => 'rand sudafricanu',
+ 'ZMK' => 'kwacha zambianu (1968–2012)',
+ 'ZMW' => 'kwacha zambianu',
+);
+
+$currencySymbols = array(
+ 'AED' => 'AED',
+ 'AFN' => 'AFN',
+ 'AMD' => 'AMD',
+ 'ANG' => 'ANG',
+ 'AOA' => 'AOA',
+ 'ARS' => 'ARS',
+ 'AUD' => 'A$',
+ 'AWG' => 'AWG',
+ 'BAM' => 'BAM',
+ 'BBD' => 'BBD',
+ 'BDT' => 'BDT',
+ 'BIF' => 'BIF',
+ 'BMD' => 'BMD',
+ 'BND' => 'BND',
+ 'BRL' => 'R$',
+ 'BSD' => 'BSD',
+ 'BTN' => 'BTN',
+ 'BWP' => 'BWP',
+ 'BYR' => 'BYR',
+ 'BZD' => 'BZD',
+ 'CAD' => 'CA$',
+ 'CDF' => 'CDF',
+ 'CHF' => 'CHF',
+ 'CLP' => 'CLP',
+ 'CNY' => 'CN¥',
+ 'COP' => 'COP',
+ 'CRC' => 'CRC',
+ 'CUC' => 'CUC',
+ 'CUP' => 'CUP',
+ 'CVE' => 'CVE',
+ 'CZK' => 'CZK',
+ 'DKK' => 'DKK',
+ 'DOP' => 'DOP',
+ 'DZD' => 'DZD',
+ 'EGP' => 'EGP',
+ 'ERN' => 'ERN',
+ 'ETB' => 'ETB',
+ 'EUR' => '€',
+ 'FKP' => 'FKP',
+ 'GBP' => '£',
+ 'GEL' => 'GEL',
+ 'GHS' => 'GHS',
+ 'GIP' => 'GIP',
+ 'GMD' => 'GMD',
+ 'GNF' => 'GNF',
+ 'GTQ' => 'GTQ',
+ 'GYD' => 'GYD',
+ 'HKD' => 'HK$',
+ 'HNL' => 'HNL',
+ 'HTG' => 'HTG',
+ 'IDR' => 'IDR',
+ 'ILS' => '₪',
+ 'INR' => '₹',
+ 'IQD' => 'IQD',
+ 'IRR' => 'IRR',
+ 'ISK' => 'ISK',
+ 'JMD' => 'JMD',
+ 'JOD' => 'JOD',
+ 'JPY' => '¥',
+ 'KES' => 'KES',
+ 'KGS' => 'KGS',
+ 'KHR' => 'KHR',
+ 'KMF' => 'KMF',
+ 'KPW' => 'KPW',
+ 'KRW' => '₩',
+ 'KWD' => 'KWD',
+ 'KYD' => 'KYD',
+ 'KZT' => 'KZT',
+ 'LAK' => 'LAK',
+ 'LBP' => 'LBP',
+ 'LKR' => 'LKR',
+ 'LRD' => 'LRD',
+ 'LYD' => 'LYD',
+ 'MAD' => 'MAD',
+ 'MDL' => 'MDL',
+ 'MMK' => 'MMK',
+ 'MNT' => 'MNT',
+ 'MOP' => 'MOP',
+ 'MRO' => 'MRO',
+ 'MUR' => 'MUR',
+ 'MVR' => 'MVR',
+ 'MXN' => 'MX$',
+ 'MYR' => 'MYR',
+ 'MZN' => 'MZN',
+ 'NAD' => 'NAD',
+ 'NGN' => 'NGN',
+ 'NIO' => 'NIO',
+ 'NOK' => 'NOK',
+ 'NPR' => 'NPR',
+ 'NZD' => 'NZ$',
+ 'OMR' => 'OMR',
+ 'PAB' => 'PAB',
+ 'PEN' => 'PEN',
+ 'PHP' => 'PHP',
+ 'PKR' => 'PKR',
+ 'PYG' => 'PYG',
+ 'QAR' => 'QAR',
+ 'RON' => 'RON',
+ 'RSD' => 'RSD',
+ 'RUB' => 'RUB',
+ 'RWF' => 'RWF',
+ 'SAR' => 'SAR',
+ 'SBD' => 'SBD',
+ 'SDG' => 'SDG',
+ 'SEK' => 'SEK',
+ 'SGD' => 'SGD',
+ 'SLL' => 'SLL',
+ 'SOS' => 'SOS',
+ 'SRD' => 'SRD',
+ 'SSP' => 'SSP',
+ 'STD' => 'STD',
+ 'SYP' => 'SYP',
+ 'SZL' => 'SZL',
+ 'THB' => '฿',
+ 'TND' => 'TND',
+ 'TOP' => 'TOP',
+ 'TTD' => 'TTD',
+ 'TWD' => 'NT$',
+ 'TZS' => 'TZS',
+ 'UGX' => 'UGX',
+ 'USD' => '$',
+ 'UYU' => 'UYU',
+ 'UZS' => 'UZS',
+ 'VEF' => 'VEF',
+ 'VND' => '₫',
+ 'VUV' => 'VUV',
+ 'WST' => 'WST',
+ 'XAF' => 'FCFA',
+ 'XAG' => 'XAG',
+ 'XAU' => 'XAU',
+ 'XBA' => 'XBA',
+ 'XBB' => 'XBB',
+ 'XBC' => 'XBC',
+ 'XBD' => 'XBD',
+ 'XCD' => 'EC$',
+ 'XDR' => 'XDR',
+ 'XFO' => 'XFO',
+ 'XFU' => 'XFU',
+ 'XOF' => 'CFA',
+ 'XPD' => 'XPD',
+ 'XPF' => 'CFPF',
+ 'XPT' => 'XPT',
+ 'XRE' => 'XRE',
+ 'XSU' => 'XSU',
+ 'XTS' => 'XTS',
+ 'XUA' => 'XUA',
+ 'XXX' => 'XXX',
+ 'YER' => 'YER',
+ 'ZAR' => 'ZAR',
+ 'ZMW' => 'ZMW',
+);
+
+$countryNames = array(
+ 'AC' => 'Islla Ascensión',
+ 'AD' => 'Andorra',
+ 'AE' => 'Emiratos Árabes Xuníos',
+ 'AF' => 'Afganistán',
+ 'AG' => 'Antigua y Barbuda',
+ 'AI' => 'Anguila',
+ 'AL' => 'Albania',
+ 'AM' => 'Armenia',
+ 'AO' => 'Angola',
+ 'AQ' => 'L’Antártida',
+ 'AR' => 'Arxentina',
+ 'AS' => 'Samoa Americana',
+ 'AT' => 'Austria',
+ 'AU' => 'Australia',
+ 'AW' => 'Aruba',
+ 'AX' => 'Islles Aland',
+ 'AZ' => 'Azerbaixán',
+ 'BA' => 'Bosnia y Herzegovina',
+ 'BB' => 'Barbados',
+ 'BD' => 'Bangladex',
+ 'BE' => 'Bélxica',
+ 'BF' => 'BF',
+ 'BG' => 'Bulgaria',
+ 'BH' => 'Baḥréin',
+ 'BI' => 'Burundi',
+ 'BJ' => 'Benín',
+ 'BL' => 'San Bartolomé',
+ 'BM' => 'Les Bermudes',
+ 'BN' => 'Brunéi',
+ 'BO' => 'Bolivia',
+ 'BQ' => 'Caribe neerlandés',
+ 'BR' => 'Brasil',
+ 'BS' => 'Les Bahames',
+ 'BT' => 'Bután',
+ 'BV' => 'Islla Bouvet',
+ 'BW' => 'Botsuana',
+ 'BY' => 'Bielorrusia',
+ 'BZ' => 'Belize',
+ 'CA' => 'Canadá',
+ 'CC' => 'Islles Cocos (Keeling)',
+ 'CD' => 'CD',
+ 'CF' => 'República Centroafricana',
+ 'CG' => 'CG',
+ 'CH' => 'Suiza',
+ 'CI' => 'Costa de Marfil',
+ 'CK' => 'Islles Cook',
+ 'CL' => 'Chile',
+ 'CM' => 'Camerún',
+ 'CN' => 'China',
+ 'CO' => 'Colombia',
+ 'CP' => 'Islla Clipperton',
+ 'CR' => 'Costa Rica',
+ 'CU' => 'Cuba',
+ 'CV' => 'Cabu Verde',
+ 'CW' => 'Curaçao',
+ 'CX' => 'Islla Christmas',
+ 'CY' => 'Xipre',
+ 'CZ' => 'Chequia',
+ 'DE' => 'Alemania',
+ 'DG' => 'Diego Garcia',
+ 'DJ' => 'DJ',
+ 'DK' => 'Dinamarca',
+ 'DM' => 'Dominica',
+ 'DO' => 'República Dominicana',
+ 'DZ' => 'Arxelia',
+ 'EA' => 'Ceuta y Melilla',
+ 'EC' => 'Ecuador',
+ 'EE' => 'Estonia',
+ 'EG' => 'Exiptu',
+ 'EH' => 'Sáḥara Occidental',
+ 'ER' => 'Eritrea',
+ 'ES' => 'España',
+ 'ET' => 'Etiopía',
+ 'EU' => 'Xunión Européa',
+ 'FI' => 'Finlandia',
+ 'FJ' => 'Islles Fixi',
+ 'FK' => 'Falkland Islands',
+ 'FM' => 'Micronesia',
+ 'FO' => 'Islles Feroe',
+ 'FR' => 'Francia',
+ 'GA' => 'Gabón',
+ 'GB' => 'GB',
+ 'GD' => 'Granada',
+ 'GE' => 'Xeorxa',
+ 'GF' => 'Guyana Francesa',
+ 'GG' => 'Guernsey',
+ 'GH' => 'Ghana',
+ 'GI' => 'Xibraltar',
+ 'GL' => 'Groenlandia',
+ 'GM' => 'Gambia',
+ 'GN' => 'Guinea',
+ 'GP' => 'Guadalupe',
+ 'GQ' => 'Guinea Ecuatorial',
+ 'GR' => 'Grecia',
+ 'GS' => 'Islles Xeorxa del Sur y Sandwich del Sur',
+ 'GT' => 'Guatemala',
+ 'GU' => 'Guam',
+ 'GW' => 'Guinea-Bisáu',
+ 'GY' => 'Guyana',
+ 'HK' => 'Ḥong Kong',
+ 'HM' => 'Islles Heard y McDonald',
+ 'HN' => 'Hondures',
+ 'HR' => 'Croacia',
+ 'HT' => 'Haití',
+ 'HU' => 'Hungría',
+ 'IC' => 'Islles Canaries',
+ 'ID' => 'Indonesia',
+ 'IE' => 'Irlanda',
+ 'IL' => 'Israel',
+ 'IM' => 'Islla de Man',
+ 'IN' => 'India',
+ 'IO' => 'Territoriu Británicu del Océanu Índicu',
+ 'IQ' => 'Iraq',
+ 'IR' => 'Irán',
+ 'IS' => 'Islandia',
+ 'IT' => 'Italia',
+ 'JE' => 'Jersey',
+ 'JM' => 'Xamaica',
+ 'JO' => 'Xordania',
+ 'JP' => 'Xapón',
+ 'KE' => 'Kenia',
+ 'KG' => 'Kirguistán',
+ 'KH' => 'Camboya',
+ 'KI' => 'Kiribati',
+ 'KM' => 'Les Comores',
+ 'KN' => 'Saint Kitts y Nevis',
+ 'KP' => 'Corea del Norte',
+ 'KR' => 'Corea del Sur',
+ 'KW' => 'Kuwait',
+ 'KY' => 'Islles Caimán',
+ 'KZ' => 'Kazakstán',
+ 'LA' => 'Laos',
+ 'LB' => 'Líbanu',
+ 'LC' => 'Santa Llucía',
+ 'LI' => 'Liechtenstein',
+ 'LK' => 'Sri Lanka',
+ 'LR' => 'Liberia',
+ 'LS' => 'LS',
+ 'LT' => 'Lituania',
+ 'LU' => 'Luxemburgu',
+ 'LV' => 'Letonia',
+ 'LY' => 'Libia',
+ 'MA' => 'Marruecos',
+ 'MC' => 'Mónacu',
+ 'MD' => 'Moldavia',
+ 'ME' => 'Montenegru',
+ 'MF' => 'Saint Martin',
+ 'MG' => 'Madagascar',
+ 'MH' => 'Islles Marshall',
+ 'MK' => 'Macedonia',
+ 'ML' => 'Malí',
+ 'MM' => 'Myanmar (Birmania)',
+ 'MN' => 'Mongolia',
+ 'MO' => 'Macáu',
+ 'MP' => 'Islles Marianes del Norte',
+ 'MQ' => 'La Martinica',
+ 'MR' => 'Mauritania',
+ 'MS' => 'Montserrat',
+ 'MT' => 'Malta',
+ 'MU' => 'Mauriciu',
+ 'MV' => 'Les Maldives',
+ 'MW' => 'Malaui',
+ 'MX' => 'MX',
+ 'MY' => 'Malasia',
+ 'MZ' => 'Mozambique',
+ 'NA' => 'Namibia',
+ 'NC' => 'Nueva Caledonia',
+ 'NE' => 'El Níxer',
+ 'NF' => 'Islla Norfolk',
+ 'NG' => 'Nixeria',
+ 'NI' => 'Nicaragua',
+ 'NL' => 'Países Baxos',
+ 'NO' => 'Noruega',
+ 'NP' => 'Nepal',
+ 'NR' => 'Nauru',
+ 'NU' => 'Niue',
+ 'NZ' => 'Nueva Zelanda',
+ 'OM' => 'Omán',
+ 'PA' => 'Panamá',
+ 'PE' => 'Perú',
+ 'PF' => 'Polinesia Francesa',
+ 'PG' => 'Papúa Nueva Guinea',
+ 'PH' => 'Filipines',
+ 'PK' => 'Pakistan',
+ 'PL' => 'Polonia',
+ 'PM' => 'Saint Pierre y Miquelon',
+ 'PN' => 'Islles Pitcairn',
+ 'PR' => 'Puertu Ricu',
+ 'PS' => 'PS',
+ 'PT' => 'Portugal',
+ 'PW' => 'Paláu',
+ 'PY' => 'Paraguay',
+ 'QA' => 'Qatar',
+ 'QO' => 'Oceanía esterior',
+ 'RE' => 'Reunión',
+ 'RO' => 'Rumanía',
+ 'RS' => 'Serbia',
+ 'RU' => 'Rusia',
+ 'RW' => 'Ruanda',
+ 'SA' => 'Arabia Saudita',
+ 'SB' => 'Islles Salomón',
+ 'SC' => 'SC',
+ 'SD' => 'Sudán',
+ 'SE' => 'Suecia',
+ 'SG' => 'Singapur',
+ 'SH' => 'SH',
+ 'SI' => 'Eslovenia',
+ 'SJ' => 'Svalbard ya Islla Jan Mayen',
+ 'SK' => 'Eslovaquia',
+ 'SL' => 'SL',
+ 'SM' => 'San Marín',
+ 'SN' => 'Senegal',
+ 'SO' => 'Somalia',
+ 'SR' => 'Surinam',
+ 'SS' => 'Sudán del Sur',
+ 'ST' => 'Santu Tomé y Príncipe',
+ 'SV' => 'El Salvador',
+ 'SX' => 'Sint Maarten',
+ 'SY' => 'Siria',
+ 'SZ' => 'Suazilandia',
+ 'TA' => 'Tristán da Cunha',
+ 'TC' => 'Islles Turques y Caicos',
+ 'TD' => 'Chad',
+ 'TF' => 'Tierres Australes Franceses',
+ 'TG' => 'TG',
+ 'TH' => 'Tailandia',
+ 'TJ' => 'Taxiquistán',
+ 'TK' => 'Tokeláu',
+ 'TL' => 'Timor Oriental',
+ 'TM' => 'Turkmenistán',
+ 'TN' => 'Tunicia',
+ 'TO' => 'Tonga',
+ 'TR' => 'Turquía',
+ 'TT' => 'Trinidá y Tobagu',
+ 'TV' => 'Tuvalu',
+ 'TW' => 'Taiwán',
+ 'TZ' => 'Tanzania',
+ 'UA' => 'Ucraína',
+ 'UG' => 'Uganda',
+ 'UM' => 'Islles Perifériques Menores de los EE.XX.',
+ 'US' => 'US',
+ 'UY' => 'Uruguay',
+ 'UZ' => 'Uzbequistán',
+ 'VA' => 'Ciudá del Vaticanu',
+ 'VC' => 'San Vicente y Granadines',
+ 'VE' => 'Venezuela',
+ 'VG' => 'Islles Vírxenes Britániques',
+ 'VI' => 'Islles Vírxenes Americanes',
+ 'VN' => 'Vietnam',
+ 'VU' => 'Vanuatu',
+ 'WF' => 'Wallis y Futuna',
+ 'WS' => 'Samoa',
+ 'XK' => 'XK',
+ 'YE' => 'Yemen',
+ 'YT' => 'Mayotte',
+ 'ZA' => 'Sudáfrica',
+ 'ZM' => 'Zambia',
+ 'ZW' => 'Zimbabue',
+);
+
+$timeUnits = array(
+ 'day-future-one' => 'En {0} dia',
+ 'day-future-other' => 'En {0} díes',
+ 'day-narrow-future-one' => 'en {0} d.',
+ 'day-narrow-future-other' => 'en {0} d.',
+ 'day-narrow-past-one' => 'hai {0} d.',
+ 'day-narrow-past-other' => 'hai {0} d.',
+ 'day-one' => '{0} dia',
+ 'day-other' => '{0} díes',
+ 'day-past-one' => 'Hai {0} dia',
+ 'day-past-other' => 'Hai {0} díes',
+ 'day-short-future-one' => 'en {0} día',
+ 'day-short-future-other' => 'en {0} díes',
+ 'day-short-past-one' => 'hai {0} día',
+ 'day-short-past-other' => 'hai {0} díes',
+ 'hour-future-one' => 'En {0} hora',
+ 'hour-future-other' => 'En {0} hores',
+ 'hour-narrow-future-one' => 'en {0} h.',
+ 'hour-narrow-future-other' => 'en {0} h.',
+ 'hour-narrow-past-one' => 'hai {0} h.',
+ 'hour-narrow-past-other' => 'hai {0} h.',
+ 'hour-one' => '{0} hora',
+ 'hour-other' => '{0} hores',
+ 'hour-past-one' => 'Hai {0} hora',
+ 'hour-past-other' => 'Hai {0} hores',
+ 'hour-short-future-one' => 'en {0} h.',
+ 'hour-short-future-other' => 'en {0} h.',
+ 'hour-short-past-one' => 'hai {0} h.',
+ 'hour-short-past-other' => 'hai {0} h.',
+ 'microsecond-one' => '{0} microsegundu',
+ 'microsecond-other' => '{0} microsegundos',
+ 'millisecond-one' => '{0} milisegundu',
+ 'millisecond-other' => '{0} milisegundos',
+ 'minute-future-one' => 'En {0} minutu',
+ 'minute-future-other' => 'En {0} minutos',
+ 'minute-narrow-future-one' => 'en {0} min.',
+ 'minute-narrow-future-other' => 'en {0} min.',
+ 'minute-narrow-past-one' => 'hai {0} min.',
+ 'minute-narrow-past-other' => 'hai {0} min.',
+ 'minute-one' => '{0} minutu',
+ 'minute-other' => '{0} minutos',
+ 'minute-past-one' => 'Hai {0} minutu',
+ 'minute-past-other' => 'Hai {0} minutos',
+ 'minute-short-future-one' => 'en {0} min.',
+ 'minute-short-future-other' => 'en {0} min.',
+ 'minute-short-past-one' => 'hai {0} min.',
+ 'minute-short-past-other' => 'hai {0} min.',
+ 'month-future-one' => 'En {0} mes',
+ 'month-future-other' => 'En {0} meses',
+ 'month-narrow-future-one' => 'en {0} m.',
+ 'month-narrow-future-other' => 'en {0} m.',
+ 'month-narrow-past-one' => 'hai {0} m.',
+ 'month-narrow-past-other' => 'hai {0} m.',
+ 'month-one' => '{0} mes',
+ 'month-other' => '{0} meses',
+ 'month-past-one' => 'Hai {0} mes',
+ 'month-past-other' => 'Hai {0} meses',
+ 'month-short-future-one' => 'en {0} mes',
+ 'month-short-future-other' => 'en {0} meses',
+ 'month-short-past-one' => 'hai {0} mes',
+ 'month-short-past-other' => 'hai {0} meses',
+ 'nanosecond-one' => '{0} nanosegundu',
+ 'nanosecond-other' => '{0} nanosegundos',
+ 'quarter-future-one' => 'en {0} trimestre',
+ 'quarter-future-other' => 'en {0} trimestres',
+ 'quarter-narrow-future-one' => 'en {0} tr.',
+ 'quarter-narrow-future-other' => 'en {0} tr.',
+ 'quarter-narrow-past-one' => 'hai {0} tr.',
+ 'quarter-narrow-past-other' => 'hai {0} tr.',
+ 'quarter-past-one' => 'hai {0} trimestre',
+ 'quarter-past-other' => 'hai {0} trimestres',
+ 'quarter-short-future-one' => 'en {0} trim.',
+ 'quarter-short-future-other' => 'en {0} trim.',
+ 'quarter-short-past-one' => 'hai {0} trim.',
+ 'quarter-short-past-other' => 'hai {0} trim.',
+ 'second-future-one' => 'En {0} segundu',
+ 'second-future-other' => 'En {0} segundos',
+ 'second-narrow-future-one' => 'en {0} s.',
+ 'second-narrow-future-other' => 'en {0} s.',
+ 'second-narrow-past-one' => 'hai {0} s.',
+ 'second-narrow-past-other' => 'hai {0} s.',
+ 'second-one' => '{0} segundu',
+ 'second-other' => '{0} segundos',
+ 'second-past-one' => 'Hai {0} segundu',
+ 'second-past-other' => 'Hai {0} segundos',
+ 'second-short-future-one' => 'en {0} seg.',
+ 'second-short-future-other' => 'en {0} seg.',
+ 'second-short-past-one' => 'hai {0} seg.',
+ 'second-short-past-other' => 'hai {0} seg.',
+ 'week-future-one' => 'En {0} selmana',
+ 'week-future-other' => 'En {0} selmanes',
+ 'week-narrow-future-one' => 'en {0} se.',
+ 'week-narrow-future-other' => 'en {0} se.',
+ 'week-narrow-past-one' => 'hai {0} se.',
+ 'week-narrow-past-other' => 'hai {0} se.',
+ 'week-one' => '{0} selmana',
+ 'week-other' => '{0} selmanes',
+ 'week-past-one' => 'Hai {0} selmana',
+ 'week-past-other' => 'Hai {0} selmanes',
+ 'week-short-future-one' => 'en {0} selm.',
+ 'week-short-future-other' => 'en {0} selm.',
+ 'week-short-past-one' => 'hai {0} selm.',
+ 'week-short-past-other' => 'hai {0} selm.',
+ 'year-future-one' => 'En {0} añu',
+ 'year-future-other' => 'En {0} años',
+ 'year-narrow-future-one' => 'en {0} a.',
+ 'year-narrow-future-other' => 'en {0} a.',
+ 'year-narrow-past-one' => 'hai {0} a.',
+ 'year-narrow-past-other' => 'hai {0} a.',
+ 'year-one' => '{0} añu',
+ 'year-other' => '{0} años',
+ 'year-past-one' => 'Hai {0} añu',
+ 'year-past-other' => 'Hai {0} años',
+ 'year-short-future-one' => 'en {0} añu',
+ 'year-short-future-other' => 'en {0} años',
+ 'year-short-past-one' => 'hai {0} añu',
+ 'year-short-past-other' => 'hai {0} años',
+);
diff --git a/MLEB/cldr/CldrNames/CldrNamesAz.php b/MLEB/cldr/CldrNames/CldrNamesAz.php
new file mode 100644
index 00000000..cf7efb5f
--- /dev/null
+++ b/MLEB/cldr/CldrNames/CldrNamesAz.php
@@ -0,0 +1,1295 @@
+<?php
+
+$languageNames = array(
+ 'aa' => 'afarca',
+ 'ab' => 'abxaz',
+ 'ace' => 'akin dili',
+ 'ach' => 'akoli dili',
+ 'ada' => 'adangme dili',
+ 'ady' => 'aduge dili',
+ 'ae' => 'avestanca',
+ 'af' => 'afrikaans',
+ 'afh' => 'afrihili dili',
+ 'agq' => 'aqhem',
+ 'ain' => 'aynuca',
+ 'ak' => 'akanca',
+ 'akk' => 'akadianca',
+ 'ale' => 'aleutca',
+ 'alt' => 'cənub altay dili',
+ 'am' => 'amhar',
+ 'an' => 'aragonca',
+ 'ang' => 'qədimi ingiliscə',
+ 'anp' => 'angikə dili',
+ 'ar' => 'ərəb',
+ 'ar-001' => 'Modern Standart Ərəbcə',
+ 'arc' => 'aramik dili',
+ 'arn' => 'araukanca',
+ 'arp' => 'arapaho dili',
+ 'arw' => 'aravakça',
+ 'as' => 'assam',
+ 'asa' => 'asu',
+ 'ast' => 'asturicə',
+ 'av' => 'avarikcə',
+ 'awa' => 'avadicə',
+ 'ay' => 'aymarca',
+ 'az' => 'azərbaycan',
+ 'ba' => 'başqırd',
+ 'bal' => 'baluc dili',
+ 'ban' => 'balincə',
+ 'bas' => 'basa dili',
+ 'be' => 'belarus',
+ 'bej' => 'beja dili',
+ 'bem' => 'bemba',
+ 'bez' => 'bena',
+ 'bg' => 'bolqar',
+ 'bho' => 'bxoçpuri dili',
+ 'bi' => 'bislama dili',
+ 'bik' => 'bikolca',
+ 'bin' => 'bini dili',
+ 'bla' => 'siksikə dili',
+ 'bm' => 'bambara',
+ 'bn' => 'benqal',
+ 'bo' => 'tibet',
+ 'br' => 'Bretonca',
+ 'bra' => 'braj dili',
+ 'brx' => 'bodo',
+ 'bs' => 'bosniak',
+ 'bua' => 'buryat dili',
+ 'bug' => 'bugin dili',
+ 'byn' => 'bilincə',
+ 'ca' => 'katalan',
+ 'cad' => 'kado dili',
+ 'car' => 'karib dili',
+ 'cch' => 'atsamca',
+ 'ce' => 'çeçen dili',
+ 'ceb' => 'kebuano dili',
+ 'cgg' => 'çiqa',
+ 'ch' => 'çamoro dili',
+ 'chb' => 'çibçə dili',
+ 'chg' => 'çağatay dili',
+ 'chk' => 'çukiz dili',
+ 'chm' => 'mari dili',
+ 'chn' => 'çinuk ləhçəsi',
+ 'cho' => 'çoktau dili',
+ 'chp' => 'çipevyan dili',
+ 'chr' => 'çiroki',
+ 'chy' => 'çeyen dili',
+ 'ckb' => 'sorani kürd',
+ 'co' => 'korsika',
+ 'cop' => 'kopt dili',
+ 'cr' => 'kri dili',
+ 'crh' => 'krım türkçə',
+ 'cs' => 'çex',
+ 'csb' => 'kaşubyan dili',
+ 'cu' => 'kilsə slav dili',
+ 'cv' => 'çuvaş dili',
+ 'cy' => 'uels',
+ 'da' => 'danimarka',
+ 'dak' => 'dakota dili',
+ 'dar' => 'darqva dili',
+ 'dav' => 'taita',
+ 'de' => 'alman',
+ 'de-at' => 'Avstriya almancası',
+ 'de-ch' => 'İsveçrə yüksək almancası',
+ 'del' => 'delaver dili',
+ 'den' => 'slavey',
+ 'dgr' => 'doqrib dili',
+ 'din' => 'dinka dili',
+ 'dje' => 'zarma',
+ 'doi' => 'doqri dili',
+ 'dsb' => 'aşağı sorb',
+ 'dua' => 'duala',
+ 'dum' => 'ortacaq hollandca',
+ 'dv' => 'diveh dili',
+ 'dyo' => 'diola',
+ 'dyu' => 'dyula dili',
+ 'dz' => 'dzonqa',
+ 'ebu' => 'embu',
+ 'ee' => 'eve',
+ 'efi' => 'efik dili',
+ 'egy' => 'qədimi misir dili',
+ 'eka' => 'ekacuk dili',
+ 'el' => 'yunan',
+ 'elx' => 'elamit dili',
+ 'en' => 'ingilis',
+ 'en-au' => 'Avstraliya ingiliscəsi',
+ 'en-ca' => 'Kanada ingiliscəsi',
+ 'en-gb' => 'Britaniya ingiliscəsi',
+ 'en-us' => 'Amerika ingiliscəsi',
+ 'enm' => 'ortacaq ingiliscə',
+ 'eo' => 'esperanto',
+ 'es' => 'ispan',
+ 'es-419' => 'Latın Amerikası ispancası',
+ 'es-es' => 'Kastiliya ispancası',
+ 'es-mx' => 'Meksika ispancası',
+ 'et' => 'eston',
+ 'eu' => 'bask',
+ 'ewo' => 'evondo dili',
+ 'fa' => 'fars',
+ 'fan' => 'fang dili',
+ 'fat' => 'fanti dili',
+ 'ff' => 'fula dili',
+ 'fi' => 'fin',
+ 'fil' => 'filippin',
+ 'fj' => 'fici',
+ 'fo' => 'farer',
+ 'fon' => 'fon dili',
+ 'fr' => 'fransız',
+ 'fr-ca' => 'Kanada fransızcası',
+ 'fr-ch' => 'İsveçrə fransızcası',
+ 'frm' => 'ortacaq fransızca',
+ 'fro' => 'qədimi fransızca',
+ 'frr' => 'şimal fris dili',
+ 'fur' => 'friul dili',
+ 'fy' => 'qərbi friz',
+ 'ga' => 'irland',
+ 'gaa' => 'qa dili',
+ 'gag' => 'qaqauz',
+ 'gay' => 'qayo dili',
+ 'gba' => 'qabaya dili',
+ 'gd' => 'skot gaelik dili',
+ 'gez' => 'qez dili',
+ 'gil' => 'qilbert gili',
+ 'gl' => 'qalisian',
+ 'gmh' => 'ortacaq yüksək almanca',
+ 'gn' => 'quarani',
+ 'goh' => 'qədimi almanca',
+ 'gon' => 'qondi dili',
+ 'gor' => 'qorontalo dili',
+ 'got' => 'gotça',
+ 'grb' => 'qrebo dili',
+ 'grc' => 'qədimi yunanca',
+ 'gsw' => 'İsveçrə almancası',
+ 'gu' => 'qucarat',
+ 'guz' => 'qusi',
+ 'gv' => 'manks',
+ 'gwi' => 'qviçin dili',
+ 'ha' => 'hausa',
+ 'hai' => 'hayda dili',
+ 'haw' => 'havay',
+ 'he' => 'ivrit',
+ 'hi' => 'hindi',
+ 'hil' => 'hiliqaynon dili',
+ 'hit' => 'hittit dili',
+ 'hmn' => 'monq dili',
+ 'ho' => 'hiri motu dili',
+ 'hr' => 'xorvat',
+ 'hsb' => 'yuxarı sorb',
+ 'ht' => 'haiti',
+ 'hu' => 'macar',
+ 'hup' => 'hupa dili',
+ 'hy' => 'erməni',
+ 'hz' => 'Herer dili',
+ 'ia' => 'interlingua dili',
+ 'iba' => 'iban dili',
+ 'id' => 'indonez',
+ 'ie' => 'interlingue dili',
+ 'ig' => 'iqbo',
+ 'ii' => 'siçuan yi',
+ 'ik' => 'inupiaq dili',
+ 'ilo' => 'iloko dili',
+ 'inh' => 'inquş dili',
+ 'io' => 'ido dili',
+ 'is' => 'island',
+ 'it' => 'italyan',
+ 'iu' => 'inuktitut',
+ 'ja' => 'yapon',
+ 'jbo' => 'loğban dili',
+ 'jgo' => 'nqomba',
+ 'jmc' => 'maçam',
+ 'jpr' => 'judo-farsca',
+ 'jrb' => 'jude-ərəbcə',
+ 'jv' => 'yava',
+ 'ka' => 'gürcü',
+ 'kaa' => 'qara-qalpaq dili',
+ 'kab' => 'kabile',
+ 'kac' => 'kaçinca',
+ 'kaj' => 'ju dili',
+ 'kam' => 'kamba',
+ 'kaw' => 'kavi dili',
+ 'kbd' => 'kabardca',
+ 'kcg' => 'tiyap dili',
+ 'kde' => 'makond',
+ 'kea' => 'kabuverdian',
+ 'kfo' => 'koro dili',
+ 'kg' => 'konqo dili',
+ 'kha' => 'xazi dili',
+ 'kho' => 'xotan dili',
+ 'khq' => 'koyra çiini',
+ 'ki' => 'kikuyu',
+ 'kj' => 'kuanyama dili',
+ 'kk' => 'qazax',
+ 'kl' => 'kalaallisut',
+ 'kln' => 'kalencin',
+ 'km' => 'kxmer',
+ 'kmb' => 'kimbundu dili',
+ 'kn' => 'kannada',
+ 'ko' => 'koreya',
+ 'koi' => 'komi-permyak',
+ 'kok' => 'konkan',
+ 'kos' => 'kosreyan dili',
+ 'kpe' => 'kpelle dili',
+ 'kr' => 'kanur dili',
+ 'krc' => 'qaraçay-balkar dili',
+ 'krl' => 'karelyan dili',
+ 'kru' => 'kurux dili',
+ 'ks' => 'kaşmir',
+ 'ksb' => 'şambala',
+ 'ksf' => 'bafia',
+ 'ku' => 'kürd',
+ 'kum' => 'kumuk dili',
+ 'kut' => 'kutenay dili',
+ 'kv' => 'komi dili',
+ 'kw' => 'korn',
+ 'ky' => 'qırğız',
+ 'la' => 'latın',
+ 'lad' => 'ladin dili',
+ 'lag' => 'langi',
+ 'lah' => 'laxnda dili',
+ 'lam' => 'lamba dili',
+ 'lb' => 'lüksemburq',
+ 'lez' => 'ləzqi dili',
+ 'lg' => 'qanda',
+ 'li' => 'limburqiş dili',
+ 'lkt' => 'lakota',
+ 'ln' => 'linqala',
+ 'lo' => 'laos',
+ 'lol' => 'monqo dili',
+ 'loz' => 'lozi dili',
+ 'lt' => 'litva',
+ 'lu' => 'luba-katanqa',
+ 'lua' => 'luba-lulua dili',
+ 'lui' => 'luyseno dili',
+ 'lun' => 'lunda dili',
+ 'luo' => 'luo',
+ 'lus' => 'lushayca',
+ 'luy' => 'luyia',
+ 'lv' => 'latış',
+ 'mad' => 'maduriz dili',
+ 'mag' => 'maqahi dili',
+ 'mai' => 'maitili dili',
+ 'mak' => 'makasar dili',
+ 'man' => 'məndinqo dili',
+ 'mas' => 'masay',
+ 'mdf' => 'mokşa dili',
+ 'mdr' => 'mandar dili',
+ 'men' => 'mende dili',
+ 'mer' => 'meru',
+ 'mfe' => 'morisien',
+ 'mg' => 'malaqas',
+ 'mga' => 'ortacaq irlandca',
+ 'mgh' => 'maxuva-meetto',
+ 'mgo' => 'meta’',
+ 'mh' => 'marşal dili',
+ 'mi' => 'maori',
+ 'mic' => 'mikmak dili',
+ 'min' => 'minanqkaban dili',
+ 'mk' => 'makedon',
+ 'ml' => 'malayalam',
+ 'mn' => 'monqol',
+ 'mnc' => 'mançu dili',
+ 'mni' => 'manipüri dili',
+ 'moh' => 'mohavk',
+ 'mos' => 'mosi dili',
+ 'mr' => 'marati',
+ 'ms' => 'malay',
+ 'mt' => 'malta',
+ 'mua' => 'mundanq',
+ 'mul' => 'digər dillər',
+ 'mus' => 'krik dili',
+ 'mwl' => 'mirand dili',
+ 'mwr' => 'maruari dili',
+ 'my' => 'birma',
+ 'myv' => 'erzya dili',
+ 'na' => 'nauru dili',
+ 'nap' => 'neapolital dili',
+ 'naq' => 'nama',
+ 'nb' => 'bokmal norveç',
+ 'nd' => 'şimali ndebele',
+ 'nds' => 'aşağı almanca',
+ 'ne' => 'nepal',
+ 'new' => 'nevari dili',
+ 'ng' => 'nqonka dili',
+ 'nia' => 'nyas dili',
+ 'niu' => 'niyuan dili',
+ 'nl' => 'holland',
+ 'nl-be' => 'flamand',
+ 'nmg' => 'kvasio',
+ 'nn' => 'nünorsk norveç',
+ 'no' => 'norveç dili',
+ 'nog' => 'noqay dili',
+ 'non' => 'qədimi norsca',
+ 'nqo' => 'nqo',
+ 'nr' => 'cənub ndebele dili',
+ 'nso' => 'şimal soto dili',
+ 'nus' => 'nuer',
+ 'nv' => 'navayo dili',
+ 'ny' => 'nyanca dili',
+ 'nym' => 'nyamvezi dili',
+ 'nyn' => 'nyankol',
+ 'nyo' => 'niyoro dili',
+ 'nzi' => 'nizima dili',
+ 'oc' => 'oksitanca',
+ 'oj' => 'ocibva dili',
+ 'om' => 'oromo',
+ 'or' => 'oriya',
+ 'os' => 'osetik dili',
+ 'osa' => 'osage dili',
+ 'ota' => 'osman dili',
+ 'pa' => 'pəncab',
+ 'pag' => 'panqasinan dili',
+ 'pal' => 'paxlavi dili',
+ 'pam' => 'pampanqa dili',
+ 'pap' => 'papyamento dili',
+ 'pau' => 'palayanca',
+ 'peo' => 'qədimi farsca',
+ 'phn' => 'foyenik dili',
+ 'pi' => 'pali dili',
+ 'pl' => 'polyak',
+ 'pon' => 'ponpeyan dili',
+ 'pro' => 'qədimi provensialca',
+ 'ps' => 'puştu',
+ 'pt' => 'portuqal',
+ 'pt-br' => 'Braziliya portuqalcası',
+ 'pt-pt' => 'Portuqaliya portuqalcası',
+ 'qu' => 'keçua',
+ 'quc' => 'kiçe',
+ 'raj' => 'racastan dili',
+ 'rap' => 'rapanu dili',
+ 'rar' => 'rarotonqan dili',
+ 'rm' => 'retoroman',
+ 'rn' => 'rundi',
+ 'ro' => 'rumın',
+ 'ro-md' => 'moldav',
+ 'rof' => 'rombo',
+ 'rom' => 'roman dili',
+ 'ru' => 'rus',
+ 'rup' => 'aromanca',
+ 'rw' => 'kinyarvanda',
+ 'rwk' => 'rua',
+ 'sa' => 'sanskrit',
+ 'sad' => 'sandave dili',
+ 'sah' => 'yakut dili',
+ 'sam' => 'samaritan dili',
+ 'saq' => 'samburu',
+ 'sas' => 'sasak dili',
+ 'sat' => 'santal dili',
+ 'sbp' => 'sanqu',
+ 'sc' => 'sardin dili',
+ 'scn' => 'sisili dili',
+ 'sco' => 'skots dili',
+ 'sd' => 'sindhi',
+ 'se' => 'şimali sami',
+ 'seh' => 'sena',
+ 'sel' => 'selkup dili',
+ 'ses' => 'koyraboro senni',
+ 'sg' => 'sanqo',
+ 'sga' => 'qədimi irlandca',
+ 'sh' => 'serb-xorvatca',
+ 'shi' => 'taçelit',
+ 'shn' => 'şan dili',
+ 'si' => 'sinhal',
+ 'sid' => 'sidamo dili',
+ 'sk' => 'slovak',
+ 'sl' => 'sloven',
+ 'sm' => 'samoa dili',
+ 'sma' => 'cənubi sami',
+ 'smj' => 'lule sami',
+ 'smn' => 'inari sami',
+ 'sms' => 'skolt',
+ 'sn' => 'şona',
+ 'snk' => 'soninke dili',
+ 'so' => 'somali',
+ 'sog' => 'soqdiyen dili',
+ 'sq' => 'alban',
+ 'sr' => 'serb',
+ 'srn' => 'sranan tonqo dili',
+ 'srr' => 'serer dilii',
+ 'ss' => 'svati dili',
+ 'st' => 'Sesoto dili',
+ 'su' => 'sudan',
+ 'suk' => 'sukuma dili',
+ 'sus' => 'susu dili',
+ 'sux' => 'sumeryan dili',
+ 'sv' => 'isveç',
+ 'sw' => 'suahili',
+ 'swc' => 'Konqo suahilicəsi',
+ 'syr' => 'siryak dili',
+ 'ta' => 'tamil',
+ 'te' => 'teluqu',
+ 'tem' => 'timne dili',
+ 'teo' => 'teso',
+ 'ter' => 'tereno dili',
+ 'tet' => 'tetum dili',
+ 'tg' => 'tacik',
+ 'th' => 'tay',
+ 'ti' => 'tiqrin',
+ 'tig' => 'tiqre dili',
+ 'tiv' => 'tiv dili',
+ 'tk' => 'türkmən',
+ 'tkl' => 'tokelay dili',
+ 'tl' => 'taqaloq dili',
+ 'tlh' => 'klinqon',
+ 'tli' => 'tlinqit dili',
+ 'tmh' => 'tamaşek dili',
+ 'tn' => 'svana dili',
+ 'to' => 'tonqa',
+ 'tog' => 'niyasa tonga dili',
+ 'tpi' => 'tok pisin dili',
+ 'tr' => 'türk',
+ 'ts' => 'sonqa dili',
+ 'tsi' => 'simşyan dili',
+ 'tt' => 'tatar',
+ 'tum' => 'tumbuka dili',
+ 'tvl' => 'tuvalu dili',
+ 'tw' => 'Tvi dili',
+ 'twq' => 'tasavaq',
+ 'ty' => 'taxiti dili',
+ 'tyv' => 'tuvinyan dili',
+ 'tzm' => 'Mərkəzi Atlas tamazicəsi',
+ 'udm' => 'udmurt dili',
+ 'ug' => 'uyğur',
+ 'uga' => 'uqaritik dili',
+ 'uk' => 'ukrayna',
+ 'umb' => 'umbundu dili',
+ 'und' => 'naməlum dil',
+ 'ur' => 'urdu',
+ 'uz' => 'özbək',
+ 'vai' => 'vai',
+ 've' => 'venda dili',
+ 'vi' => 'vyetnam',
+ 'vo' => 'volapük dili',
+ 'vot' => 'votik dili',
+ 'vun' => 'vunyo',
+ 'wa' => 'valun dili',
+ 'wal' => 'valamo dili',
+ 'war' => 'varay dili',
+ 'was' => 'vaşo dili',
+ 'wo' => 'volof',
+ 'xal' => 'kalmıqca',
+ 'xh' => 'xosa',
+ 'xog' => 'soqa',
+ 'yao' => 'yao dili',
+ 'yap' => 'yapiz dili',
+ 'yi' => 'Yahudi dili',
+ 'yo' => 'yoruba',
+ 'za' => 'juənq dili',
+ 'zap' => 'zapotek dili',
+ 'zbl' => 'blisimbols dili',
+ 'zen' => 'zenaqa dili',
+ 'zgh' => 'tamazi',
+ 'zh' => 'çin',
+ 'zh-hans' => 'sadələşmiş çin',
+ 'zh-hant' => 'ənənəvi çin',
+ 'zu' => 'zulu',
+ 'zun' => 'zuni dili',
+ 'zxx' => 'dil məzmunu yoxdur',
+ 'zza' => 'zaza dili',
+);
+
+$currencyNames = array(
+ 'ADP' => 'Andora Pesetası',
+ 'AED' => 'Birləşmiş Ərəb Əmirlikləri Dirhəmi',
+ 'AFA' => 'Əfqanıstan Əfqanisi (1927–2002)',
+ 'AFN' => 'Əfqanıstan Əfqanisi',
+ 'ALK' => 'Albaniya Leki (1946–1965)',
+ 'ALL' => 'Albaniya Leki',
+ 'AMD' => 'Ermənistan Dramı',
+ 'ANG' => 'Niderland Antilyası Gilderi',
+ 'AOA' => 'Anqola Kvanzası',
+ 'AOK' => 'Anqola Kvanzasi (1977–1990)',
+ 'AON' => 'Anqola Yeni Kvanzası (1990–2000)',
+ 'AOR' => 'Anqola Kvanzası (1995–1999)',
+ 'ARA' => 'Argentina avstralı',
+ 'ARP' => 'Argentina pesosu (1983–1985)',
+ 'ARS' => 'Argentina Pesosu',
+ 'ATS' => 'Avstriya Şillinqi',
+ 'AUD' => 'Avstraliya Dolları',
+ 'AWG' => 'Aruba Florini',
+ 'AZM' => 'Azərbaycan Manatı (1993–2006)',
+ 'AZN' => 'Azərbaycan Manatı',
+ 'BAD' => 'Bosniya-Herseqovina Dinarı',
+ 'BAM' => 'Bosniya-Herseqovina Markası',
+ 'BBD' => 'Barbados Dolları',
+ 'BDT' => 'Banqladeş Takası',
+ 'BEC' => 'Belçika Frankı (deyşirik)',
+ 'BEF' => 'Belçika Frankı',
+ 'BEL' => 'Belçika Frankı (finans)',
+ 'BGL' => 'Bolqarıstan Levası',
+ 'BGN' => 'Bolqarıstan Levi',
+ 'BHD' => 'Bəhreyn Dinarı',
+ 'BIF' => 'Burundi Frankı',
+ 'BMD' => 'Bermuda Dolları',
+ 'BND' => 'Bruney Dolları',
+ 'BOB' => 'Boliviya Bolivianosu',
+ 'BOP' => 'Boliviya pesosu',
+ 'BOV' => 'Boliviya mvdolı',
+ 'BRB' => 'Braziliya kruzeyro novası',
+ 'BRC' => 'Braziliya kruzadosu',
+ 'BRE' => 'Braziliya kruzeyrosu (1990–1993)',
+ 'BRL' => 'Braziliya Realı',
+ 'BRN' => 'Braziliya kruzado novası',
+ 'BRR' => 'Braziliya kruzeyrosu',
+ 'BSD' => 'Bahama Dolları',
+ 'BTN' => 'Butan Nqultrumu',
+ 'BUK' => 'Burmis Kyatı',
+ 'BWP' => 'Botsvana Pulası',
+ 'BYB' => 'Belarus Yeni Rublu (1994–1999)',
+ 'BYR' => 'Belarus Rublu',
+ 'BZD' => 'Beliz Dolları',
+ 'CAD' => 'Kanada Dolları',
+ 'CDF' => 'Konqo Frankı',
+ 'CHE' => 'WIR Avro',
+ 'CHF' => 'İsveçrə Frankı',
+ 'CHW' => 'WIR Frankası',
+ 'CLP' => 'Çili Pesosu',
+ 'CNY' => 'Çin Yuanı',
+ 'COP' => 'Kolumbiya Pesosu',
+ 'CRC' => 'Kosta Rika Kolonu',
+ 'CSD' => 'Serbiya Dinarı (2002–2006)',
+ 'CSK' => 'Çexoslavakiya Korunası',
+ 'CUC' => 'Kuba Çevrilən Pesosu',
+ 'CUP' => 'Kuba Pesosu',
+ 'CVE' => 'Kape Verde Eskudosu',
+ 'CYP' => 'Kipr Paundu',
+ 'CZK' => 'Çexiya Korunası',
+ 'DDM' => 'Şərq Almaniya Ostmarkı',
+ 'DEM' => 'Alman Markası',
+ 'DJF' => 'Cibuti Frankı',
+ 'DKK' => 'Danimarka Kronu',
+ 'DOP' => 'Dominika Pesosu',
+ 'DZD' => 'Əlcəzair Dinarı',
+ 'ECS' => 'Ekvador Sukresi',
+ 'EEK' => 'Estoniya Krunu',
+ 'EGP' => 'Misir Funtu',
+ 'ERN' => 'Eritreya Nakfası',
+ 'ESA' => 'İspan Pesetası (A account)',
+ 'ESB' => 'İspan Pesetası (dəyşirik)',
+ 'ESP' => 'İspan Pesetası',
+ 'ETB' => 'Efiopiya Bırrı',
+ 'EUR' => 'Avro',
+ 'FIM' => 'Fin Markası',
+ 'FJD' => 'Fici Dolları',
+ 'FKP' => 'Folklend Adaları Funtu',
+ 'FRF' => 'Fransız Markası',
+ 'GBP' => 'Britaniya Funt Sterlinqi',
+ 'GEK' => 'Gürcüstan Kupon Lariti',
+ 'GEL' => 'Gürcüstan Larisi',
+ 'GHC' => 'Qana Sedisi (1979–2007)',
+ 'GHS' => 'Qana Sedisi',
+ 'GIP' => 'Gibraltar Funtu',
+ 'GMD' => 'Qambiya Dalasisi',
+ 'GNF' => 'Qvineya Frankı',
+ 'GNS' => 'Qvineya Sulisi',
+ 'GQE' => 'Ekvatoriya Gvineya Ekvele Quneanası',
+ 'GRD' => 'Yunan Draçması',
+ 'GTQ' => 'Qvatemala Küetzalı',
+ 'GWE' => 'Portugal Qvineya Eskudosu',
+ 'GWP' => 'Qvineya-Bisau Pesosu',
+ 'GYD' => 'Qayana Dolları',
+ 'HKD' => 'Honq Konq Dolları',
+ 'HNL' => 'Honduras Lempirası',
+ 'HRD' => 'Xorvatiya Dinarı',
+ 'HRK' => 'Xorvatiya Kunası',
+ 'HTG' => 'Haiti Qourdu',
+ 'HUF' => 'Macarıstan Forinti',
+ 'IDR' => 'İndoneziya Rupisi',
+ 'IEP' => 'İrlandiya Paundu',
+ 'ILP' => 'İzrail Paundu',
+ 'ILR' => 'İsrail Şekeli (1980–1985)',
+ 'ILS' => 'İsrail Yeni Şekeli',
+ 'INR' => 'Hindistan Rupisi',
+ 'IQD' => 'İraq Dinarı',
+ 'IRR' => 'İran Rialı',
+ 'ISJ' => 'İslandiya Kronu (1918–1981)',
+ 'ISK' => 'İslandiya Kronu',
+ 'ITL' => 'İtaliya Lirası',
+ 'JMD' => 'Yamayka Dolları',
+ 'JOD' => 'İordaniya Dinarı',
+ 'JPY' => 'Yaponiya Yeni',
+ 'KES' => 'Keniya Şillinqi',
+ 'KGS' => 'Kırğızıstan Somu',
+ 'KHR' => 'Kamboca Rieli',
+ 'KMF' => 'Komor Frankı',
+ 'KPW' => 'Şimali Koreya Vonu',
+ 'KRW' => 'Cənubi Koreya Vonu',
+ 'KWD' => 'Küveyt Dinarı',
+ 'KYD' => 'Kayman Adaları Dolları',
+ 'KZT' => 'Qazaxıstan Tengesi',
+ 'LAK' => 'Laos Kipi',
+ 'LBP' => 'Livan Funtu',
+ 'LKR' => 'Şri Lanka Rupisi',
+ 'LRD' => 'Liberiya Dolları',
+ 'LSL' => 'Lesoto Lotisi',
+ 'LTL' => 'Litva Liti',
+ 'LTT' => 'Litva Talonası',
+ 'LUC' => 'Luksemburq Frankası (dəyişik)',
+ 'LUF' => 'Luksemburq Frankası',
+ 'LUL' => 'Luksemburq Frankası (finans)',
+ 'LVL' => 'Latviya Latı',
+ 'LVR' => 'Latviya Rublu',
+ 'LYD' => 'Liviya Dinarı',
+ 'MAD' => 'Mərakeş Dirhəmi',
+ 'MAF' => 'Mərakeş Frankası',
+ 'MDL' => 'Moldova Leyi',
+ 'MGA' => 'Madaqaskar Ariarisi',
+ 'MGF' => 'Madaqaskar Frankası',
+ 'MKD' => 'Makedoniya Dinarı',
+ 'MKN' => 'Makedoniya Dinarı (1992–1993)',
+ 'MLF' => 'Mali Frankı',
+ 'MMK' => 'Myanma Kiyatı',
+ 'MNT' => 'Monqoliya Tuqriki',
+ 'MOP' => 'Makao Patakası',
+ 'MRO' => 'Mavritaniya Ugiyası',
+ 'MTP' => 'Maltiz Paundu',
+ 'MUR' => 'Mavriki Rupisi',
+ 'MVR' => 'Maldiv Rufiyası',
+ 'MWK' => 'Malavi Kvaçası',
+ 'MXN' => 'Meksika Pesosu',
+ 'MXP' => 'Meksika gümüş pesosu',
+ 'MYR' => 'Malayziya Ringiti',
+ 'MZE' => 'Mozambik Eskudosu',
+ 'MZM' => 'Mozambik Metikalı (1980–2006)',
+ 'MZN' => 'Mozambik Metikalı',
+ 'NAD' => 'Namibiya Dolları',
+ 'NGN' => 'Nigeriya Nairası',
+ 'NIC' => 'Nikaraqua kordobu',
+ 'NIO' => 'Nikaraqua Kordobası',
+ 'NLG' => 'Hollandiya Gilderi',
+ 'NOK' => 'Norveç Kronu',
+ 'NPR' => 'Nepal Rupisi',
+ 'NZD' => 'Yeni Zelandiya Dolları',
+ 'OMR' => 'Oman Rialı',
+ 'PAB' => 'Panama Balboası',
+ 'PEI' => 'Peru Inti',
+ 'PEN' => 'Peru Nuevo Solu',
+ 'PES' => 'Peru Solu',
+ 'PGK' => 'Papua Yeni Qvineya Kinası',
+ 'PHP' => 'Filippin Pesosu',
+ 'PKR' => 'Pakistan Rupisi',
+ 'PLN' => 'Polşa Zlotısı',
+ 'PLZ' => 'Polşa Zlotısı (1950–1995)',
+ 'PTE' => 'Portuqal Eskudosu',
+ 'PYG' => 'Paraqvay Quaranisi',
+ 'QAR' => 'Qatar Rialı',
+ 'RHD' => 'Rodezian Dolları',
+ 'ROL' => 'Rumıniya Leyi (1952–2006)',
+ 'RON' => 'Rumıniya Leyi',
+ 'RSD' => 'Serbiya Dinarı',
+ 'RUB' => 'Rusiya Rublu',
+ 'RUR' => 'Rusiya Rublu (1991–1998)',
+ 'RWF' => 'Ruanda Frankı',
+ 'SAR' => 'Səudiyyə Riyalı',
+ 'SBD' => 'Solomon Adaları Dolları',
+ 'SCR' => 'Seyşel Rupisi',
+ 'SDG' => 'Sudan Funtu',
+ 'SEK' => 'İsveç Kronu',
+ 'SGD' => 'Sinqapur Dolları',
+ 'SHP' => 'Müqəddəs Yelena Funtu',
+ 'SIT' => 'Sloveniya Toları',
+ 'SKK' => 'Slovak Korunası',
+ 'SLL' => 'Sierra Leon Leonu',
+ 'SOS' => 'Somali Şillinqi',
+ 'SRD' => 'Surinam Dolları',
+ 'SSP' => 'Cənubi Sudan Funtu',
+ 'STD' => 'San Tom və Prinsip Dobrası',
+ 'SUR' => 'Sovet Rublu',
+ 'SVC' => 'El Salvador kolonu',
+ 'SYP' => 'Suriya Funtu',
+ 'SZL' => 'Svazilend Lilangenini',
+ 'THB' => 'Tayland Batı',
+ 'TJR' => 'Tacikistan Rublu',
+ 'TJS' => 'Tacikistan Somonisi',
+ 'TMM' => 'Türkmənistan Manatı (1993–2009)',
+ 'TMT' => 'Türkmənistan Manatı',
+ 'TND' => 'Tunis Dinarı',
+ 'TOP' => 'Tonqa Panqası',
+ 'TPE' => 'Timor Eskudu',
+ 'TRL' => 'Türkiyə Lirəsi (1922–2005)',
+ 'TRY' => 'Türkiyə Lirəsi',
+ 'TTD' => 'Trinidad və Tobaqo Dolları',
+ 'TWD' => 'Tayvan Yeni Dolları',
+ 'TZS' => 'Tanzaniya Şillinqi',
+ 'UAH' => 'Ukrayna Qrivnası',
+ 'UAK' => 'Ukrayna Karbovenesası',
+ 'UGS' => 'Uqanda Şillinqi (1966–1987)',
+ 'UGX' => 'Uqanda Şillinqi',
+ 'USD' => 'ABŞ Dolları',
+ 'USN' => 'ABŞ dolları (yeni gün)',
+ 'USS' => 'ABŞ dolları (həmin gün)',
+ 'UYI' => 'Uruqvay pesosu Unidades Indexadas',
+ 'UYP' => 'Uruqvay Pesosu (1975–1993)',
+ 'UYU' => 'Uruqvay Pesosu',
+ 'UZS' => 'Özbəkistan Somu',
+ 'VEB' => 'Venesuela Bolivarı (1871–2008)',
+ 'VEF' => 'Venesuela Bolivarı',
+ 'VND' => 'Vyetnam Donqu',
+ 'VNN' => 'Vyetnam Donqu (1978–1985)',
+ 'VUV' => 'Vanuatu Vatusu',
+ 'WST' => 'Samoa Talası',
+ 'XAF' => 'Kamerun Frankı',
+ 'XAG' => 'gümüş',
+ 'XAU' => 'qızıl',
+ 'XCD' => 'Şərqi Karib Dolları',
+ 'XFO' => 'Fransız Gızıl Frankı',
+ 'XFU' => 'Fransız UİC Frankı',
+ 'XOF' => 'Fil Dişi Sahili Frankı',
+ 'XPD' => 'Palladium',
+ 'XPF' => 'Fransız Polineziyası Frankı',
+ 'XPT' => 'Platinum',
+ 'XXX' => 'Naməlum Valyuta',
+ 'YDD' => 'Yəmən Dinarı',
+ 'YER' => 'Yəmən Rialı',
+ 'YUD' => 'Yuqoslaviya Dinarı (1966–1990)',
+ 'YUM' => 'Yuqoslaviya Yeni Dinarı (1994–2002)',
+ 'YUN' => 'Yuqoslaviya Dinarı (1990–1992)',
+ 'ZAL' => 'Cənubi Afrika Randı (finans)',
+ 'ZAR' => 'Cənubi Afrika Randı',
+ 'ZMK' => 'Zambiya Kvaçası (1968–2012)',
+ 'ZMW' => 'Zambiya Kvaçası',
+ 'ZRN' => 'Zair Yeni Zairi (1993–1998)',
+ 'ZRZ' => 'Zair Zairi (1971–1993)',
+ 'ZWD' => 'Zimbabve Dolları (1980–2008)',
+ 'ZWL' => 'Zimbabve Dolları (2009)',
+ 'ZWR' => 'Zimbabve Dolları (2008)',
+);
+
+$currencySymbols = array(
+ 'AED' => 'AED',
+ 'AFN' => 'AFN',
+ 'ALL' => 'ALL',
+ 'AMD' => 'AMD',
+ 'ANG' => 'ANG',
+ 'AOA' => 'AOA',
+ 'ARS' => 'ARS',
+ 'AUD' => 'A$',
+ 'AWG' => 'AWG',
+ 'AZN' => 'AZN',
+ 'BAM' => 'BAM',
+ 'BBD' => 'BBD',
+ 'BDT' => 'BDT',
+ 'BGN' => 'BGN',
+ 'BHD' => 'BHD',
+ 'BIF' => 'BIF',
+ 'BMD' => 'BMD',
+ 'BND' => 'BND',
+ 'BOB' => 'BOB',
+ 'BRL' => 'R$',
+ 'BSD' => 'BSD',
+ 'BTN' => 'BTN',
+ 'BWP' => 'BWP',
+ 'BYR' => 'BYR',
+ 'BZD' => 'BZD',
+ 'CAD' => 'CA$',
+ 'CDF' => 'CDF',
+ 'CHF' => 'CHF',
+ 'CLP' => 'CLP',
+ 'CNY' => 'CN¥',
+ 'COP' => 'COP',
+ 'CRC' => 'CRC',
+ 'CUC' => 'CUC',
+ 'CUP' => 'CUP',
+ 'CVE' => 'CVE',
+ 'CZK' => 'CZK',
+ 'DJF' => 'DJF',
+ 'DKK' => 'DKK',
+ 'DOP' => 'DOP',
+ 'DZD' => 'DZD',
+ 'EGP' => 'EGP',
+ 'ERN' => 'ERN',
+ 'ETB' => 'ETB',
+ 'EUR' => '€',
+ 'FJD' => 'FJD',
+ 'FKP' => 'FKP',
+ 'GBP' => '£',
+ 'GEL' => 'GEL',
+ 'GHS' => 'GHS',
+ 'GIP' => 'GIP',
+ 'GMD' => 'GMD',
+ 'GNF' => 'GNF',
+ 'GTQ' => 'GTQ',
+ 'GYD' => 'GYD',
+ 'HKD' => 'HK$',
+ 'HNL' => 'HNL',
+ 'HRK' => 'HRK',
+ 'HTG' => 'HTG',
+ 'HUF' => 'HUF',
+ 'IDR' => 'IDR',
+ 'ILS' => '₪',
+ 'INR' => '₹',
+ 'IQD' => 'IQD',
+ 'IRR' => 'IRR',
+ 'ISK' => 'ISK',
+ 'JMD' => 'JMD',
+ 'JOD' => 'JOD',
+ 'JPY' => 'JP¥',
+ 'KES' => 'KES',
+ 'KGS' => 'KGS',
+ 'KHR' => 'KHR',
+ 'KMF' => 'KMF',
+ 'KPW' => 'KPW',
+ 'KRW' => '₩',
+ 'KWD' => 'KWD',
+ 'KYD' => 'KYD',
+ 'KZT' => 'KZT',
+ 'LAK' => 'LAK',
+ 'LBP' => 'LBP',
+ 'LKR' => 'LKR',
+ 'LRD' => 'LRD',
+ 'LTL' => 'LTL',
+ 'LVL' => 'LVL',
+ 'LYD' => 'LYD',
+ 'MAD' => 'MAD',
+ 'MDL' => 'MDL',
+ 'MGA' => 'MGA',
+ 'MKD' => 'MKD',
+ 'MMK' => 'MMK',
+ 'MNT' => 'MNT',
+ 'MOP' => 'MOP',
+ 'MRO' => 'MRO',
+ 'MUR' => 'MUR',
+ 'MVR' => 'MVR',
+ 'MWK' => 'MWK',
+ 'MXN' => 'MX$',
+ 'MYR' => 'MYR',
+ 'MZN' => 'MZN',
+ 'NAD' => 'NAD',
+ 'NGN' => 'NGN',
+ 'NIO' => 'NIO',
+ 'NOK' => 'NOK',
+ 'NPR' => 'NPR',
+ 'NZD' => 'NZ$',
+ 'OMR' => 'OMR',
+ 'PAB' => 'PAB',
+ 'PEN' => 'PEN',
+ 'PGK' => 'PGK',
+ 'PHP' => 'PHP',
+ 'PKR' => 'PKR',
+ 'PLN' => 'PLN',
+ 'PYG' => 'PYG',
+ 'QAR' => 'QAR',
+ 'RON' => 'RON',
+ 'RSD' => 'RSD',
+ 'RUB' => 'RUB',
+ 'RWF' => 'RWF',
+ 'SAR' => 'SAR',
+ 'SBD' => 'SBD',
+ 'SCR' => 'SCR',
+ 'SDG' => 'SDG',
+ 'SEK' => 'SEK',
+ 'SGD' => 'SGD',
+ 'SHP' => 'SHP',
+ 'SLL' => 'SLL',
+ 'SOS' => 'SOS',
+ 'SRD' => 'SRD',
+ 'SSP' => 'SSP',
+ 'STD' => 'STD',
+ 'SYP' => 'SYP',
+ 'SZL' => 'SZL',
+ 'THB' => '฿',
+ 'TJS' => 'TJS',
+ 'TMT' => 'TMT',
+ 'TND' => 'TND',
+ 'TOP' => 'TOP',
+ 'TRY' => 'TRY',
+ 'TTD' => 'TTD',
+ 'TWD' => 'NT$',
+ 'TZS' => 'TZS',
+ 'UAH' => 'UAH',
+ 'UGX' => 'UGX',
+ 'USD' => 'US$',
+ 'UYU' => 'UYU',
+ 'UZS' => 'UZS',
+ 'VEF' => 'VEF',
+ 'VND' => '₫',
+ 'VUV' => 'VUV',
+ 'WST' => 'WST',
+ 'XAF' => 'FCFA',
+ 'XCD' => 'EC$',
+ 'XOF' => 'CFA',
+ 'XPF' => 'CFPF',
+ 'YER' => 'YER',
+ 'ZAR' => 'ZAR',
+ 'ZMW' => 'ZMW',
+);
+
+$countryNames = array(
+ 'AC' => 'Yüksəliş Adası',
+ 'AD' => 'Andorra',
+ 'AE' => 'Birləşmiş Ərəb Əmirlikləri',
+ 'AF' => 'Əfqanıstan',
+ 'AG' => 'Antiqua və Barbuda',
+ 'AI' => 'Angila',
+ 'AL' => 'Albaniya',
+ 'AM' => 'Ermənistan',
+ 'AN' => 'Hollandiya antilleri',
+ 'AO' => 'Anqola',
+ 'AQ' => 'Antarktika',
+ 'AR' => 'Argentina',
+ 'AS' => 'Amerika Samoası',
+ 'AT' => 'Avstriya',
+ 'AU' => 'Avstraliya',
+ 'AW' => 'Aruba',
+ 'AX' => 'Aland Adaları',
+ 'AZ' => 'Azərbaycan',
+ 'BA' => 'Bosniya və Hersoqovina',
+ 'BB' => 'Barbados',
+ 'BD' => 'Banqladeş',
+ 'BE' => 'Belçika',
+ 'BF' => 'Burkina Faso',
+ 'BG' => 'Bolqariya',
+ 'BH' => 'Bəhreyn',
+ 'BI' => 'Burundi',
+ 'BJ' => 'Benin',
+ 'BL' => 'San Bartolomey',
+ 'BM' => 'Bermuda',
+ 'BN' => 'Bruney',
+ 'BO' => 'Boliviya',
+ 'BQ' => 'Karib Niderlandı',
+ 'BR' => 'Braziliya',
+ 'BS' => 'Baham Adaları',
+ 'BT' => 'Butan',
+ 'BV' => 'Buve Adası',
+ 'BW' => 'Botsvana',
+ 'BY' => 'Belarus',
+ 'BZ' => 'Beliz',
+ 'CA' => 'Kanada',
+ 'CC' => 'Kokos Adaları',
+ 'CD' => 'Konqo - Kinşasa',
+ 'CF' => 'Mərkəzi Afrika Respublikası',
+ 'CG' => 'Konqo - Brazzavil',
+ 'CH' => 'İsveçrə',
+ 'CI' => 'Fil Dişi Sahili',
+ 'CK' => 'Kuk Adaları',
+ 'CL' => 'Çili',
+ 'CM' => 'Kamerun',
+ 'CN' => 'Çin',
+ 'CO' => 'Kolumbiya',
+ 'CP' => 'Klipperton Adası',
+ 'CR' => 'Kosta Rika',
+ 'CU' => 'Kuba',
+ 'CV' => 'Kape Verde',
+ 'CW' => 'Kurasao',
+ 'CX' => 'Milad Adası',
+ 'CY' => 'Kipr',
+ 'CZ' => 'Çexiya',
+ 'DE' => 'Almaniya',
+ 'DG' => 'Dieqo Qarsiya',
+ 'DJ' => 'Cibuti',
+ 'DK' => 'Danimarka',
+ 'DM' => 'Dominika',
+ 'DO' => 'Dominikan Respublikası',
+ 'DZ' => 'Əlcəzair',
+ 'EA' => 'Seuta və Melilya',
+ 'EC' => 'Ekvador',
+ 'EE' => 'Estoniya',
+ 'EG' => 'Misir',
+ 'EH' => 'Qərbi Sahara',
+ 'ER' => 'Eritreya',
+ 'ES' => 'İspaniya',
+ 'ET' => 'Efiopiya',
+ 'EU' => 'Avropa Birliyi',
+ 'FI' => 'Finlandiya',
+ 'FJ' => 'Fici',
+ 'FK' => 'Folklend Adaları',
+ 'FM' => 'Mikroneziya',
+ 'FO' => 'Farer Adaları',
+ 'FR' => 'Fransa',
+ 'GA' => 'Qabon',
+ 'GB' => 'B.K.',
+ 'GD' => 'Qrenada',
+ 'GE' => 'Gürcüstan',
+ 'GF' => 'Fransız Qviyanası',
+ 'GG' => 'Gernsey',
+ 'GH' => 'Qana',
+ 'GI' => 'Gibraltar',
+ 'GL' => 'Qrenlandiya',
+ 'GM' => 'Qambiya',
+ 'GN' => 'Qvineya',
+ 'GP' => 'Qvadelupa',
+ 'GQ' => 'Ekvatorial Qvineya',
+ 'GR' => 'Yunanıstan',
+ 'GS' => 'Cənubi Corciya və Cənubi Sendviç Adaları',
+ 'GT' => 'Qvatemala',
+ 'GU' => 'Quam',
+ 'GW' => 'Qvineya-Bisau',
+ 'GY' => 'Qviyana',
+ 'HK' => 'Honq Konq',
+ 'HM' => 'Herd və Mak Donald Adaları',
+ 'HN' => 'Honduras',
+ 'HR' => 'Xorvatiya',
+ 'HT' => 'Haiti',
+ 'HU' => 'Macarıstan',
+ 'IC' => 'Kanar Adaları',
+ 'ID' => 'İndoneziya',
+ 'IE' => 'İrlandiya',
+ 'IL' => 'İsrail',
+ 'IM' => 'Men Adası',
+ 'IN' => 'Hindistan',
+ 'IO' => 'Britaniya Hind Okeanı Ərazisi',
+ 'IQ' => 'İraq',
+ 'IR' => 'İran',
+ 'IS' => 'İslandiya',
+ 'IT' => 'İtaliya',
+ 'JE' => 'Cersi',
+ 'JM' => 'Yamayka',
+ 'JO' => 'İordaniya',
+ 'JP' => 'Yaponiya',
+ 'KE' => 'Keniya',
+ 'KG' => 'Qırğızıstan',
+ 'KH' => 'Kamboca',
+ 'KI' => 'Kiribati',
+ 'KM' => 'Komor Adaları',
+ 'KN' => 'San Kits və Nevis',
+ 'KP' => 'Şimali Koreya',
+ 'KR' => 'Cənubi Koreya',
+ 'KW' => 'Küveyt',
+ 'KY' => 'Kayman Adaları',
+ 'KZ' => 'Qazaxıstan',
+ 'LA' => 'Laos',
+ 'LB' => 'Livan',
+ 'LC' => 'San Lüsiya',
+ 'LI' => 'Lixtenşteyn',
+ 'LK' => 'Şri Lanka',
+ 'LR' => 'Liberiya',
+ 'LS' => 'Lesoto',
+ 'LT' => 'Litva',
+ 'LU' => 'Lüksemburq',
+ 'LV' => 'Latviya',
+ 'LY' => 'Liviya',
+ 'MA' => 'Mərakeş',
+ 'MC' => 'Monako',
+ 'MD' => 'Moldova',
+ 'ME' => 'Monteneqro',
+ 'MF' => 'San Martin',
+ 'MG' => 'Madaqaskar',
+ 'MH' => 'Marşal Adaları',
+ 'MK' => 'Makedoniya',
+ 'ML' => 'Mali',
+ 'MM' => 'Myanma',
+ 'MN' => 'Monqoliya',
+ 'MO' => 'Makao',
+ 'MP' => 'Şimali Mariana Adaları',
+ 'MQ' => 'Martinik',
+ 'MR' => 'Mavritaniya',
+ 'MS' => 'Monserat',
+ 'MT' => 'Malta',
+ 'MU' => 'Mavriki',
+ 'MV' => 'Maldiv Adaları',
+ 'MW' => 'Malavi',
+ 'MX' => 'Meksika',
+ 'MY' => 'Malayziya',
+ 'MZ' => 'Mozambik',
+ 'NA' => 'Namibiya',
+ 'NC' => 'Yeni Kaledoniya',
+ 'NE' => 'Niger',
+ 'NF' => 'Norfolk Adası',
+ 'NG' => 'Nigeriya',
+ 'NI' => 'Nikaraqua',
+ 'NL' => 'Niderland',
+ 'NO' => 'Norveç',
+ 'NP' => 'Nepal',
+ 'NR' => 'Nauru',
+ 'NU' => 'Niue',
+ 'NZ' => 'Yeni Zelandiya',
+ 'OM' => 'Oman',
+ 'PA' => 'Panama',
+ 'PE' => 'Peru',
+ 'PF' => 'Fransız Polineziyası',
+ 'PG' => 'Papua Yeni Qvineya',
+ 'PH' => 'Filippin',
+ 'PK' => 'Pakistan',
+ 'PL' => 'Polşa',
+ 'PM' => 'San Pier və Mikelon',
+ 'PN' => 'Pitkern Adaları',
+ 'PR' => 'Puerto Riko',
+ 'PS' => 'Fələstin',
+ 'PT' => 'Portuqal',
+ 'PW' => 'Palau',
+ 'PY' => 'Paraqvay',
+ 'QA' => 'Qatar',
+ 'QO' => 'Uzaq Okeaniya',
+ 'RE' => 'Reunion',
+ 'RO' => 'Rumıniya',
+ 'RS' => 'Serbiya',
+ 'RU' => 'Rusiya',
+ 'RW' => 'Ruanda',
+ 'SA' => 'Səudiyyə Ərəbistanı',
+ 'SB' => 'Solomon Adaları',
+ 'SC' => 'Seyşel Adaları',
+ 'SD' => 'Sudan',
+ 'SE' => 'İsveç',
+ 'SG' => 'Sinqapur',
+ 'SH' => 'Müqəddəs Yelena',
+ 'SI' => 'Sloveniya',
+ 'SJ' => 'Svalbard və Yan Mayen',
+ 'SK' => 'Slovakiya',
+ 'SL' => 'Siera Leon',
+ 'SM' => 'San Marino',
+ 'SN' => 'Seneqal',
+ 'SO' => 'Somali',
+ 'SR' => 'Surinam',
+ 'SS' => 'Cənubi Sudan',
+ 'ST' => 'Sao Tome və Prinsip',
+ 'SV' => 'Salvador',
+ 'SX' => 'Sint Maarten',
+ 'SY' => 'Suriya',
+ 'SZ' => 'Svazilend',
+ 'TA' => 'Tristan da Kunya',
+ 'TC' => 'Turks və Kaikos Adaları',
+ 'TD' => 'Çad',
+ 'TF' => 'Fransa Cənub Əraziləri',
+ 'TG' => 'Toqo',
+ 'TH' => 'Tayland',
+ 'TJ' => 'Tacikistan',
+ 'TK' => 'Tokelau',
+ 'TL' => 'Şərqi Timor',
+ 'TM' => 'Türkmənistan',
+ 'TN' => 'Tunis',
+ 'TO' => 'Tonqa',
+ 'TR' => 'Türkiya',
+ 'TT' => 'Trinidad və Tobaqo',
+ 'TV' => 'Tuvalu',
+ 'TW' => 'Tayvan',
+ 'TZ' => 'Tanzaniya',
+ 'UA' => 'Ukrayna',
+ 'UG' => 'Uqanda',
+ 'UM' => 'Birləşmiş Ştatlar Uzaq Adalar',
+ 'US' => 'A.B.Ş.',
+ 'UY' => 'Uruqvay',
+ 'UZ' => 'Özbəkistan',
+ 'VA' => 'Vatikan',
+ 'VC' => 'San Vinsent və Qrenada',
+ 'VE' => 'Venesuela',
+ 'VG' => 'Britaniya Vircin Adaları',
+ 'VI' => 'ABŞ Vircin Adaları',
+ 'VN' => 'Vyetnam',
+ 'VU' => 'Vanuatu',
+ 'WF' => 'Uolis və Futuna',
+ 'WS' => 'Samoa',
+ 'XK' => 'Kosovo',
+ 'YE' => 'Yəmən',
+ 'YT' => 'Mayot',
+ 'ZA' => 'Cənub Afrika',
+ 'ZM' => 'Zambiya',
+ 'ZW' => 'Zimbabve',
+);
+
+$timeUnits = array(
+ 'day-future-one' => '{0} gün ərzində',
+ 'day-future-other' => '{0} gün ərzində',
+ 'day-narrow-future-one' => '{0} gün ərzində',
+ 'day-narrow-future-other' => '{0} gün ərzində',
+ 'day-narrow-past-one' => '{0} gün öncə',
+ 'day-narrow-past-other' => '{0} gün öncə',
+ 'day-one' => '{0} gün',
+ 'day-other' => '{0} gün',
+ 'day-past-one' => '{0} gün öncə',
+ 'day-past-other' => '{0} gün öncə',
+ 'day-short-future-one' => '{0} gün ərzində',
+ 'day-short-future-other' => '{0} gün ərzində',
+ 'day-short-past-one' => '{0} gün öncə',
+ 'day-short-past-other' => '{0} gün öncə',
+ 'hour-future-one' => '{0} saat ərzində',
+ 'hour-future-other' => '{0} saat ərzində',
+ 'hour-narrow-future-one' => '{0} saat ərzində',
+ 'hour-narrow-future-other' => '{0} saat ərzində',
+ 'hour-narrow-past-one' => '{0} saat öncə',
+ 'hour-narrow-past-other' => '{0} saat öncə',
+ 'hour-one' => '{0} saat',
+ 'hour-other' => '{0} saat',
+ 'hour-past-one' => '{0} saat öncə',
+ 'hour-past-other' => '{0} saat öncə',
+ 'hour-short-future-one' => '{0} saat ərzində',
+ 'hour-short-future-other' => '{0} saat ərzində',
+ 'hour-short-past-one' => '{0} saat öncə',
+ 'hour-short-past-other' => '{0} saat öncə',
+ 'microsecond-one' => '{0} mikrosaniyə',
+ 'microsecond-other' => '{0} mikrosaniyə',
+ 'millisecond-one' => '{0} millisaniyə',
+ 'millisecond-other' => '{0} millisaniyə',
+ 'minute-future-one' => '{0} dəqiqə ərzində',
+ 'minute-future-other' => '{0} dəqiqə ərzində',
+ 'minute-narrow-future-one' => '{0} dəqiqə ərzində',
+ 'minute-narrow-future-other' => '{0} dəqiqə ərzində',
+ 'minute-narrow-past-one' => '{0} dəqiqə öncə',
+ 'minute-narrow-past-other' => '{0} dəqiqə öncə',
+ 'minute-one' => '{0} dəqiqə',
+ 'minute-other' => '{0} dəqiqə',
+ 'minute-past-one' => '{0} dəqiqə öncə',
+ 'minute-past-other' => '{0} dəqiqə öncə',
+ 'minute-short-future-one' => '{0} dəqiqə ərzində',
+ 'minute-short-future-other' => '{0} dəqiqə ərzində',
+ 'minute-short-past-one' => '{0} dəqiqə öncə',
+ 'minute-short-past-other' => '{0} dəqiqə öncə',
+ 'month-future-one' => '{0} ay ərzində',
+ 'month-future-other' => '{0} ay ərzində',
+ 'month-narrow-future-one' => '{0} ay ərzində',
+ 'month-narrow-future-other' => '{0} ay ərzində',
+ 'month-narrow-past-one' => '{0} ay öncə',
+ 'month-narrow-past-other' => '{0} ay öncə',
+ 'month-one' => '{0} ay',
+ 'month-other' => '{0} ay',
+ 'month-past-one' => '{0} ay öncə',
+ 'month-past-other' => '{0} ay öncə',
+ 'month-short-future-one' => '{0} ay ərzində',
+ 'month-short-future-other' => '{0} ay ərzində',
+ 'month-short-past-one' => '{0} ay öncə',
+ 'month-short-past-other' => '{0} ay öncə',
+ 'nanosecond-one' => '{0} nanosaniyə',
+ 'nanosecond-other' => '{0} nanosaniyə',
+ 'quarter-future-one' => '{0} rüb ərzində',
+ 'quarter-future-other' => '{0} rüb ərzində',
+ 'quarter-narrow-future-one' => '{0} rüb ərzində',
+ 'quarter-narrow-future-other' => '{0} rüb ərzində',
+ 'quarter-narrow-past-one' => '{0} rüb öncə',
+ 'quarter-narrow-past-other' => '{0} rüb öncə',
+ 'quarter-past-one' => '{0} rüb öncə',
+ 'quarter-past-other' => '{0} rüb öncə',
+ 'quarter-short-future-one' => '{0} rüb ərzində',
+ 'quarter-short-future-other' => '{0} rüb ərzində',
+ 'quarter-short-past-one' => '{0} rüb öncə',
+ 'quarter-short-past-other' => '{0} rüb öncə',
+ 'second-future-one' => '{0} saniyə ərzində',
+ 'second-future-other' => '{0} saniyə ərzində',
+ 'second-narrow-future-one' => '{0} saniyə ərzində',
+ 'second-narrow-future-other' => '{0} saniyə ərzində',
+ 'second-narrow-past-one' => '{0} saniyə öncə',
+ 'second-narrow-past-other' => '{0} saniyə öncə',
+ 'second-one' => '{0} saniyə',
+ 'second-other' => '{0} saniyə',
+ 'second-past-one' => '{0} saniyə öncə',
+ 'second-past-other' => '{0} saniyə öncə',
+ 'second-short-future-one' => '{0} saniyə ərzində',
+ 'second-short-future-other' => '{0} saniyə ərzində',
+ 'second-short-past-one' => '{0} saniyə öncə',
+ 'second-short-past-other' => '{0} saniyə öncə',
+ 'week-future-one' => '{0} həftə ərzində',
+ 'week-future-other' => '{0} həftə ərzində',
+ 'week-narrow-future-one' => '{0} həftə ərzində',
+ 'week-narrow-future-other' => '{0} həftə ərzində',
+ 'week-narrow-past-one' => '{0} həftə öncə',
+ 'week-narrow-past-other' => '{0} həftə öncə',
+ 'week-one' => '{0} həftə',
+ 'week-other' => '{0} həftə',
+ 'week-past-one' => '{0} həftə öncə',
+ 'week-past-other' => '{0} həftə öncə',
+ 'week-short-future-one' => '{0} həftə ərzində',
+ 'week-short-future-other' => '{0} həftə ərzində',
+ 'week-short-past-one' => '{0} həftə öncə',
+ 'week-short-past-other' => '{0} həftə öncə',
+ 'year-future-one' => '{0} il ərzində',
+ 'year-future-other' => '{0} il ərzində',
+ 'year-narrow-future-one' => '{0} il ərzində',
+ 'year-narrow-future-other' => '{0} il ərzində',
+ 'year-narrow-past-one' => '{0} il öncə',
+ 'year-narrow-past-other' => '{0} il öncə',
+ 'year-one' => '{0} il',
+ 'year-other' => '{0} il',
+ 'year-past-one' => '{0} il öncə',
+ 'year-past-other' => '{0} il öncə',
+ 'year-short-future-one' => '{0} il ərzində',
+ 'year-short-future-other' => '{0} il ərzində',
+ 'year-short-past-one' => '{0} il öncə',
+ 'year-short-past-other' => '{0} il öncə',
+);
diff --git a/MLEB/cldr/CldrNames/CldrNamesBe.php b/MLEB/cldr/CldrNames/CldrNamesBe.php
new file mode 100644
index 00000000..fa130686
--- /dev/null
+++ b/MLEB/cldr/CldrNames/CldrNamesBe.php
@@ -0,0 +1,468 @@
+<?php
+
+$languageNames = array(
+ 'ab' => 'абхазская',
+ 'ady' => 'адыгейская',
+ 'af' => 'афрыкаанс',
+ 'akk' => 'акадзкая',
+ 'ale' => 'алеуцкая',
+ 'am' => 'амхарская',
+ 'an' => 'арагонская',
+ 'ang' => 'стараанглійская',
+ 'ar' => 'арабская',
+ 'arc' => 'арамейская',
+ 'as' => 'асамская',
+ 'ast' => 'астурыйская',
+ 'av' => 'аварская',
+ 'ay' => 'аймара',
+ 'az' => 'азербайджанская',
+ 'ba' => 'башкірская',
+ 'be' => 'беларуская',
+ 'bg' => 'балгарская',
+ 'bn' => 'бенгальская',
+ 'br' => 'брэтонская',
+ 'bs' => 'баснійская',
+ 'bua' => 'бурацкая',
+ 'ca' => 'каталонская',
+ 'ce' => 'чачэнская',
+ 'chb' => 'чыбча',
+ 'cop' => 'копцкая',
+ 'cs' => 'чэшская',
+ 'cv' => 'чувашская',
+ 'cy' => 'валійская',
+ 'da' => 'дацкая',
+ 'de' => 'нямецкая',
+ 'de-at' => 'нямецкая (аўстр.)',
+ 'de-ch' => 'нямецкая (швейц.)',
+ 'egy' => 'стараэгіпецкая',
+ 'el' => 'грэцкая',
+ 'en' => 'англійская',
+ 'en-au' => 'англійская (аўстрал.)',
+ 'en-ca' => 'англійская (канад.)',
+ 'en-us' => 'англійская (ЗША)',
+ 'eo' => 'эсперанта',
+ 'es' => 'іспанская',
+ 'es-419' => 'іспанская (лацінаамер.)',
+ 'et' => 'эстонская',
+ 'eu' => 'баскская',
+ 'fa' => 'фарсі',
+ 'fi' => 'фінская',
+ 'fil' => 'тагальская',
+ 'fo' => 'фарэрская',
+ 'fr' => 'французская',
+ 'fr-ca' => 'французская (канад.)',
+ 'fr-ch' => 'французская (швейц.)',
+ 'fro' => 'старафранцузская',
+ 'fy' => 'фрызская',
+ 'ga' => 'ірландская',
+ 'gd' => 'шатландская гэльская',
+ 'gl' => 'галісійская',
+ 'gn' => 'гуарані',
+ 'grc' => 'старагрэцкая',
+ 'gu' => 'гуяраці',
+ 'he' => 'іўрыт',
+ 'hi' => 'хіндзі',
+ 'hr' => 'харвацкая',
+ 'hu' => 'венгерская',
+ 'hy' => 'армянская',
+ 'ia' => 'інтэрлінгва',
+ 'id' => 'інданезійская',
+ 'ie' => 'інтэрлінгве',
+ 'is' => 'ісландская',
+ 'it' => 'італьянская',
+ 'ja' => 'японская',
+ 'jv' => 'яванская',
+ 'ka' => 'грузінская',
+ 'kk' => 'казахская',
+ 'kn' => 'каннада',
+ 'ko' => 'карэйская',
+ 'ku' => 'курдская',
+ 'la' => 'лацінская',
+ 'ln' => 'лінгала',
+ 'lo' => 'лаоская',
+ 'lol' => 'монга',
+ 'lt' => 'літоўская',
+ 'luo' => 'луо',
+ 'lv' => 'латышская',
+ 'man' => 'мандынга',
+ 'mas' => 'масаі',
+ 'men' => 'мендэ',
+ 'mg' => 'мальгашская',
+ 'mk' => 'македонская',
+ 'ml' => 'малаяламская',
+ 'mn' => 'мангольская',
+ 'mos' => 'мосі',
+ 'mr' => 'маратхі',
+ 'ms' => 'малайская',
+ 'mt' => 'мальтыйская',
+ 'nb' => 'нарвэская букмал',
+ 'ne' => 'непальская',
+ 'nl' => 'галандская',
+ 'nl-be' => 'фламандская',
+ 'nn' => 'нарвежская (нюнорск)',
+ 'no' => 'нарвежская',
+ 'nog' => 'нагайская',
+ 'non' => 'старанарвежская',
+ 'oc' => 'правансальская',
+ 'oj' => 'аджыбве',
+ 'or' => 'орыя',
+ 'os' => 'асецінская',
+ 'pa' => 'панджабі',
+ 'peo' => 'стараперсідская',
+ 'phn' => 'фінікійская',
+ 'pl' => 'польская',
+ 'pro' => 'стараправансальская',
+ 'ps' => 'пушту',
+ 'pt' => 'партугальская',
+ 'pt-br' => 'партугальская (бразіл.)',
+ 'qu' => 'кечуа',
+ 'raj' => 'раджастханская',
+ 'rm' => 'рэта-раманская',
+ 'ro' => 'румынская',
+ 'ro-md' => 'малдаўская',
+ 'ru' => 'руская',
+ 'sa' => 'санскрыт',
+ 'sah' => 'якуцкая',
+ 'sd' => 'сіндхі',
+ 'sga' => 'стараірландская',
+ 'sh' => 'сербска-харвацкая',
+ 'si' => 'сінгальская',
+ 'sk' => 'славацкая',
+ 'sl' => 'славенская',
+ 'so' => 'самалійская',
+ 'sq' => 'албанская',
+ 'sr' => 'сербская',
+ 'su' => 'суданская',
+ 'sux' => 'шумерская',
+ 'sv' => 'шведская',
+ 'sw' => 'суахілі',
+ 'ta' => 'тамільская',
+ 'te' => 'тэлугу',
+ 'tg' => 'таджыкская',
+ 'th' => 'тайская',
+ 'ti' => 'тыгрынья',
+ 'tk' => 'туркменская',
+ 'tlh' => 'клінгон',
+ 'tr' => 'турэцкая',
+ 'tt' => 'татарская',
+ 'tyv' => 'тувінская',
+ 'ug' => 'уйгурская',
+ 'uk' => 'украінская',
+ 'und' => 'невядомая мова',
+ 'ur' => 'урду',
+ 'uz' => 'узбекская',
+ 'vi' => 'в’етнамская',
+ 'vo' => 'валапюк',
+ 'xh' => 'хоса',
+ 'yi' => 'ідыш',
+ 'zap' => 'сапатэкаў',
+ 'zh' => 'кітайская',
+ 'zh-hans' => 'спрошчаная кітайская',
+ 'zh-hant' => 'традыцыйная кітайская',
+ 'zu' => 'зулу',
+);
+
+$currencyNames = array(
+ 'AUD' => 'аўстралійскі даляр',
+ 'BRL' => 'бразільскі рэал',
+ 'BYR' => 'беларускі рубель',
+ 'CNY' => 'кітайскі юань',
+ 'ERN' => 'эрытрэйская накфа',
+ 'EUR' => 'еўра',
+ 'GBP' => 'англійскі фунт',
+ 'INR' => 'індыйская рупія',
+ 'JPY' => 'японская іена',
+ 'NOK' => 'нарвэская крона',
+ 'RUB' => 'рускі рубель',
+ 'USD' => 'долар ЗША',
+ 'XXX' => 'невядомая або недапушчальная валюта',
+);
+
+$currencySymbols = array(
+ 'BYR' => 'р.',
+ 'JPY' => '¥',
+ 'RUB' => 'рас. руб.',
+ 'USD' => '$',
+);
+
+$countryNames = array(
+ 'AD' => 'Андора',
+ 'AE' => 'Аб’яднаныя Арабскія Эміраты',
+ 'AF' => 'Афганістан',
+ 'AG' => 'Антыгуа і Барбуда',
+ 'AI' => 'Ангілья',
+ 'AL' => 'Албанія',
+ 'AM' => 'Арменія',
+ 'AN' => 'Нідэрландскія Антылы',
+ 'AO' => 'Ангола',
+ 'AQ' => 'Антарктыка',
+ 'AR' => 'Аргенціна',
+ 'AS' => 'Амерыканскае Самоа',
+ 'AT' => 'Аўстрыя',
+ 'AU' => 'Аўстралія',
+ 'AW' => 'Аруба',
+ 'AX' => 'Аландскія астравы',
+ 'AZ' => 'Азербайджан',
+ 'BA' => 'Боснія і Герцагавіна',
+ 'BB' => 'Барбадас',
+ 'BD' => 'Бангладэш',
+ 'BE' => 'Бельгія',
+ 'BF' => 'Буркіна-Фасо',
+ 'BG' => 'Балгарыя',
+ 'BH' => 'Бахрэйн',
+ 'BI' => 'Бурундзі',
+ 'BJ' => 'Бенін',
+ 'BL' => 'Сен-Бартэльмі',
+ 'BM' => 'Бермудскія астравы',
+ 'BN' => 'Бруней',
+ 'BO' => 'Балівія',
+ 'BR' => 'Бразілія',
+ 'BS' => 'Багамы',
+ 'BT' => 'Бутан',
+ 'BV' => 'Бувэ востраў',
+ 'BW' => 'Батсвана',
+ 'BY' => 'Беларусь',
+ 'BZ' => 'Беліз',
+ 'CA' => 'Канада',
+ 'CC' => 'Какосавыя астравы',
+ 'CD' => 'Конга, Дэмакратычная Рэспубліка',
+ 'CF' => 'Цэнтральна-Афрыканская Рэспубліка',
+ 'CG' => 'Конга',
+ 'CH' => 'Швейцарыя',
+ 'CI' => 'Кот-д’Івуар',
+ 'CK' => 'Астравы Кука',
+ 'CL' => 'Чылі',
+ 'CM' => 'Камерун',
+ 'CN' => 'Кітай',
+ 'CO' => 'Калумбія',
+ 'CR' => 'Коста-Рыка',
+ 'CU' => 'Куба',
+ 'CV' => 'Каба-Вердэ',
+ 'CW' => 'Востраў Кюрасаа',
+ 'CX' => 'Востраў Ражства',
+ 'CY' => 'Кіпр',
+ 'CZ' => 'Чэхія',
+ 'DE' => 'Германія',
+ 'DJ' => 'Джыбуці',
+ 'DK' => 'Данія',
+ 'DM' => 'Дамініка',
+ 'DO' => 'Дамініканская Рэспубліка',
+ 'DZ' => 'Алжыр',
+ 'EC' => 'Эквадор',
+ 'EE' => 'Эстонія',
+ 'EG' => 'Егіпет',
+ 'EH' => 'Заходняя Сахара',
+ 'ER' => 'Эрытрэя',
+ 'ES' => 'Іспанія',
+ 'ET' => 'Эфіопія',
+ 'EU' => 'Еўрапейскі Звяз',
+ 'FI' => 'Фінляндыя',
+ 'FJ' => 'Фіджы',
+ 'FK' => 'Фолклэндскія астравы',
+ 'FM' => 'Мікранезія',
+ 'FO' => 'Фарэрскія астравы',
+ 'FR' => 'Францыя',
+ 'GA' => 'Габон',
+ 'GB' => 'Вялікабрытанія',
+ 'GD' => 'Грэнада',
+ 'GE' => 'Грузія',
+ 'GF' => 'Французская Гвіяна',
+ 'GG' => 'Востраў Гернсі',
+ 'GH' => 'Гана',
+ 'GI' => 'Гібралтар',
+ 'GL' => 'Грэнландыя',
+ 'GM' => 'Гамбія',
+ 'GN' => 'Гвінея',
+ 'GP' => 'Гвадэлупа',
+ 'GQ' => 'Экватарыяльная Гвінея',
+ 'GR' => 'Грэцыя',
+ 'GS' => 'Паўднёвая Джорджыя і Паўднёвыя Сандвічавы астравы',
+ 'GT' => 'Гватэмала',
+ 'GU' => 'Гуам',
+ 'GW' => 'Гвінея-Бісау',
+ 'GY' => 'Гаяна',
+ 'HK' => 'Ганконг',
+ 'HM' => 'Востраў Херд і Астравы Макдоналд',
+ 'HN' => 'Гандурас',
+ 'HR' => 'Харватыя',
+ 'HT' => 'Гаіці',
+ 'HU' => 'Венгрыя',
+ 'ID' => 'Інданезія',
+ 'IE' => 'Ірландыя',
+ 'IL' => 'Ізраіль',
+ 'IM' => 'Востраў Мэн',
+ 'IN' => 'Індыя',
+ 'IO' => 'Брытанская тэрыторыя ў Індыйскім акіяне',
+ 'IQ' => 'Ірак',
+ 'IR' => 'Іран',
+ 'IS' => 'Ісландыя',
+ 'IT' => 'Італія',
+ 'JE' => 'Востраў Джэрсі',
+ 'JM' => 'Ямайка',
+ 'JO' => 'Іарданія',
+ 'JP' => 'Японія',
+ 'KE' => 'Кенія',
+ 'KG' => 'Кыргызстан',
+ 'KH' => 'Камбоджа',
+ 'KI' => 'Кірыбаці',
+ 'KM' => 'Каморскія Астравы',
+ 'KN' => 'Сент-Кітс і Невіс',
+ 'KP' => 'Паўночная Карэя',
+ 'KR' => 'Паўднёвая Карэя',
+ 'KW' => 'Кувейт',
+ 'KY' => 'Кайманавы астравы',
+ 'KZ' => 'Казахстан',
+ 'LA' => 'Лаос',
+ 'LB' => 'Ліван',
+ 'LC' => 'Сент-Люсія',
+ 'LI' => 'Ліхтэнштэйн',
+ 'LK' => 'Шры-Ланка',
+ 'LR' => 'Ліберыя',
+ 'LS' => 'Лесота',
+ 'LT' => 'Літва',
+ 'LU' => 'Люксембург',
+ 'LV' => 'Латвія',
+ 'LY' => 'Лівія',
+ 'MA' => 'Марока',
+ 'MC' => 'Манака',
+ 'MD' => 'Малдова',
+ 'ME' => 'Чарнагорыя',
+ 'MG' => 'Мадагаскар',
+ 'MH' => 'Маршалавы Астравы',
+ 'MK' => 'Македонія, БЮР',
+ 'ML' => 'Малі',
+ 'MM' => 'М’янма',
+ 'MN' => 'Манголія',
+ 'MO' => 'Макаа',
+ 'MP' => 'Паўночныя Марыянскія астравы',
+ 'MQ' => 'Марцініка',
+ 'MR' => 'Маўрытанія',
+ 'MS' => 'Мантсерат',
+ 'MT' => 'Мальта',
+ 'MU' => 'Маўрыкій',
+ 'MV' => 'Мальдывы',
+ 'MW' => 'Малаві',
+ 'MX' => 'Мексіка',
+ 'MY' => 'Малайзія',
+ 'MZ' => 'Мазамбік',
+ 'NA' => 'Намібія',
+ 'NC' => 'Новая Каледонія',
+ 'NE' => 'Нігер',
+ 'NF' => 'Востраў Норфалк',
+ 'NG' => 'Нігерыя',
+ 'NI' => 'Нікарагуа',
+ 'NL' => 'Нідэрланды',
+ 'NO' => 'Нарвегія',
+ 'NP' => 'Непал',
+ 'NR' => 'Науру',
+ 'NU' => 'Ніуэ',
+ 'NZ' => 'Новая Зеландыя',
+ 'OM' => 'Аман',
+ 'PA' => 'Панама',
+ 'PE' => 'Перу',
+ 'PF' => 'Французская Палінезія',
+ 'PG' => 'Папуа — Новая Гвінея',
+ 'PH' => 'Філіпіны',
+ 'PK' => 'Пакістан',
+ 'PL' => 'Польшча',
+ 'PM' => 'Сен-П’ер і Мікелон',
+ 'PN' => 'Астравы Піткэрн',
+ 'PR' => 'Пуэрта-Рыка',
+ 'PS' => 'Палестынскія тэрыторыі',
+ 'PT' => 'Партугалія',
+ 'PW' => 'Палау',
+ 'PY' => 'Парагвай',
+ 'QA' => 'Катар',
+ 'QO' => 'Вонкавая Акіянія',
+ 'RE' => 'Рэюньён',
+ 'RO' => 'Румынія',
+ 'RS' => 'Сербія',
+ 'RU' => 'Расія',
+ 'RW' => 'Руанда',
+ 'SA' => 'Саудаўская Аравія',
+ 'SB' => 'Саламонавы Астравы',
+ 'SC' => 'Сейшэльскія Астравы',
+ 'SD' => 'Судан',
+ 'SE' => 'Швецыя',
+ 'SG' => 'Сінгапур',
+ 'SH' => 'Святой Алены, Востраў',
+ 'SI' => 'Славенія',
+ 'SJ' => 'Свальбард (Паўночна-Усходняя Зямля) і Ян-Маен',
+ 'SK' => 'Славакія',
+ 'SL' => 'Сьера-Леонэ',
+ 'SM' => 'Сан-Марына',
+ 'SN' => 'Сенегал',
+ 'SO' => 'Самалі',
+ 'SR' => 'Сурынам',
+ 'SS' => 'Паўднёвы Судан',
+ 'ST' => 'Сан-Тамэ і Прынсіпі',
+ 'SV' => 'Сальвадор',
+ 'SY' => 'Сірыя',
+ 'SZ' => 'Свазіленд',
+ 'TC' => 'Цёркс і Кайкас',
+ 'TD' => 'Чад',
+ 'TF' => 'Французскія Паўднёвыя тэрыторыі',
+ 'TG' => 'Тога',
+ 'TH' => 'Тайланд',
+ 'TJ' => 'Таджыкістан',
+ 'TK' => 'Такелау',
+ 'TL' => 'Усходні Тымор',
+ 'TM' => 'Туркменістан',
+ 'TN' => 'Туніс',
+ 'TO' => 'Тонга',
+ 'TR' => 'Турцыя',
+ 'TT' => 'Трынідад і Табага',
+ 'TV' => 'Тувалу',
+ 'TW' => 'Тайвань',
+ 'TZ' => 'Танзанія',
+ 'UA' => 'Украіна',
+ 'UG' => 'Уганда',
+ 'US' => 'Злучаныя Штаты Амерыкі',
+ 'UY' => 'Уругвай',
+ 'UZ' => 'Узбекістан',
+ 'VA' => 'Ватыкан',
+ 'VC' => 'Сент-Вінсент і Грэнадзіны',
+ 'VE' => 'Венесуэла',
+ 'VG' => 'Брытанскія Віргінскія астравы',
+ 'VI' => 'Амерыканскія Віргінскія астравы',
+ 'VN' => 'В’етнам',
+ 'VU' => 'Вануату',
+ 'WF' => 'Уоліс і Футуна',
+ 'WS' => 'Самоа',
+ 'YE' => 'Емен',
+ 'YT' => 'Востраў Маёта',
+ 'ZA' => 'Паўднёва-Афрыканская Рэспубліка',
+ 'ZM' => 'Замбія',
+ 'ZW' => 'Зімбабвэ',
+);
+
+$timeUnits = array(
+ 'day-few' => '{0} дні',
+ 'day-many' => '{0} дзён',
+ 'day-one' => '{0} дзень',
+ 'day-other' => '{0} дня',
+ 'hour-few' => '{0} гадзіны',
+ 'hour-many' => '{0} гадзін',
+ 'hour-one' => '{0} гадзіна',
+ 'hour-other' => '{0} гадзіны',
+ 'minute-few' => '{0} хвіліны',
+ 'minute-many' => '{0} хвілін',
+ 'minute-one' => '{0} хвіліна',
+ 'minute-other' => '{0} хвіліны',
+ 'month-few' => '{0} месяца',
+ 'month-many' => '{0} месяцаў',
+ 'month-one' => '{0} месяц',
+ 'month-other' => '{0} месяца',
+ 'second-few' => '{0} сэкунды',
+ 'second-many' => '{0} сэкунд',
+ 'second-one' => '{0} сэкунда',
+ 'second-other' => '{0} сэкунды',
+ 'week-few' => '{0} тыдні',
+ 'week-many' => '{0} тыдняў',
+ 'week-one' => '{0} тыдзень',
+ 'week-other' => '{0} тыдня',
+ 'year-few' => '{0} гады',
+ 'year-many' => '{0} гадоў',
+ 'year-one' => '{0} год',
+ 'year-other' => '{0} году',
+);
diff --git a/MLEB/cldr/CldrNames/CldrNamesBg.php b/MLEB/cldr/CldrNames/CldrNamesBg.php
new file mode 100644
index 00000000..0e849248
--- /dev/null
+++ b/MLEB/cldr/CldrNames/CldrNamesBg.php
@@ -0,0 +1,1300 @@
+<?php
+
+$languageNames = array(
+ 'aa' => 'афар',
+ 'ab' => 'абхазки',
+ 'ace' => 'ачински',
+ 'ach' => 'аколи',
+ 'ada' => 'адангме',
+ 'ady' => 'адиге',
+ 'ae' => 'авестски',
+ 'af' => 'африканс',
+ 'afh' => 'африхили',
+ 'agq' => 'агем',
+ 'ain' => 'айну',
+ 'ak' => 'акан',
+ 'akk' => 'акадски',
+ 'ale' => 'алеутски',
+ 'alt' => 'южноалтайски',
+ 'am' => 'амхарски',
+ 'an' => 'арагонски',
+ 'ang' => 'староанглийски',
+ 'anp' => 'ангика',
+ 'ar' => 'арабски',
+ 'ar-001' => 'съвременен стандартен арабски',
+ 'arc' => 'арамейски',
+ 'arn' => 'мапуче',
+ 'arp' => 'арапахо',
+ 'arw' => 'аравак',
+ 'as' => 'асамски',
+ 'asa' => 'асу',
+ 'ast' => 'астурски',
+ 'av' => 'аварски',
+ 'awa' => 'авади',
+ 'ay' => 'аймара',
+ 'az' => 'азербайджански',
+ 'ba' => 'башкирски',
+ 'bal' => 'балучи',
+ 'ban' => 'балинейски',
+ 'bas' => 'баса',
+ 'be' => 'беларуски',
+ 'bej' => 'бея',
+ 'bem' => 'бемба',
+ 'bez' => 'бена',
+ 'bg' => 'български',
+ 'bho' => 'божпури',
+ 'bi' => 'бислама',
+ 'bik' => 'биколски',
+ 'bin' => 'бини',
+ 'bla' => 'сиксика',
+ 'bm' => 'бамбара',
+ 'bn' => 'бенгалски',
+ 'bo' => 'тибетски',
+ 'br' => 'бретонски',
+ 'bra' => 'брадж',
+ 'brx' => 'бодо',
+ 'bs' => 'босненски',
+ 'bua' => 'бурятски',
+ 'bug' => 'бугински',
+ 'byn' => 'биленски',
+ 'ca' => 'каталонски',
+ 'cad' => 'каддо',
+ 'car' => 'карибски',
+ 'cch' => 'атсам',
+ 'ce' => 'чеченски',
+ 'ceb' => 'себуано',
+ 'cgg' => 'чига',
+ 'ch' => 'чаморо',
+ 'chb' => 'чибча',
+ 'chg' => 'чагатай',
+ 'chk' => 'чуук',
+ 'chm' => 'марийски',
+ 'chn' => 'жаргон чинуук',
+ 'cho' => 'чокто',
+ 'chp' => 'чиипувски',
+ 'chr' => 'чероки',
+ 'chy' => 'чейенски',
+ 'ckb' => 'кюрдски (сорани)',
+ 'co' => 'корсикански',
+ 'cop' => 'коптски',
+ 'cr' => 'крии',
+ 'crh' => 'кримскотатарски',
+ 'cs' => 'чешки',
+ 'csb' => 'кашубски',
+ 'cu' => 'църковно славянски',
+ 'cv' => 'чувашки',
+ 'cy' => 'уелски',
+ 'da' => 'датски',
+ 'dak' => 'дакотски',
+ 'dar' => 'даргва',
+ 'dav' => 'таита',
+ 'de' => 'немски',
+ 'de-at' => 'австрийски немски',
+ 'de-ch' => 'швейцарски горногермански',
+ 'del' => 'делауер',
+ 'den' => 'слейви',
+ 'dgr' => 'догриб',
+ 'din' => 'динка',
+ 'dje' => 'джерма',
+ 'doi' => 'догри',
+ 'dsb' => 'долнолужишки',
+ 'dua' => 'дуала',
+ 'dum' => 'средновековен холандски',
+ 'dv' => 'дивехи',
+ 'dyo' => 'диола',
+ 'dyu' => 'диула',
+ 'dz' => 'дзонха',
+ 'ebu' => 'ембу',
+ 'ee' => 'еве',
+ 'efi' => 'ефик',
+ 'egy' => 'египетски',
+ 'eka' => 'екажук',
+ 'el' => 'гръцки',
+ 'elx' => 'еламитски',
+ 'en' => 'английски',
+ 'en-au' => 'австралийски английски',
+ 'en-ca' => 'канадски английски',
+ 'en-gb' => 'британски английски',
+ 'en-us' => 'американски английски',
+ 'enm' => 'средновековен английски',
+ 'eo' => 'есперанто',
+ 'es' => 'испански',
+ 'es-mx' => 'мексикански испански',
+ 'et' => 'естонски',
+ 'eu' => 'баски',
+ 'ewo' => 'евондо',
+ 'fa' => 'персийски',
+ 'fan' => 'фанг',
+ 'fat' => 'фанти',
+ 'ff' => 'фула',
+ 'fi' => 'фински',
+ 'fil' => 'филипински',
+ 'fj' => 'фиджийски',
+ 'fo' => 'фарьорски',
+ 'fon' => 'фон',
+ 'fr' => 'френски',
+ 'fr-ca' => 'канадски френски',
+ 'fr-ch' => 'швейцарски френски',
+ 'frm' => 'средновековен френски',
+ 'fro' => 'старофренски',
+ 'frr' => 'северен фризски',
+ 'frs' => 'източен фризски',
+ 'fur' => 'фриулиански',
+ 'fy' => 'фризийски',
+ 'ga' => 'ирландски',
+ 'gaa' => 'га',
+ 'gag' => 'гагаузки',
+ 'gay' => 'гайо',
+ 'gba' => 'гбая',
+ 'gd' => 'шотландски галски',
+ 'gez' => 'гииз',
+ 'gil' => 'гилбертски',
+ 'gl' => 'галисийски',
+ 'gmh' => 'средновековен немски',
+ 'gn' => 'гуарани',
+ 'goh' => 'старовисоконемски',
+ 'gon' => 'гонди',
+ 'gor' => 'горонтало',
+ 'got' => 'готически',
+ 'grb' => 'гребо',
+ 'grc' => 'древногръцки',
+ 'gsw' => 'швейцарски немски',
+ 'gu' => 'гуджарати',
+ 'guz' => 'гусии',
+ 'gv' => 'манкски',
+ 'gwi' => 'гвичин',
+ 'ha' => 'хауза',
+ 'hai' => 'хайда',
+ 'haw' => 'хавайски',
+ 'he' => 'иврит',
+ 'hi' => 'хинди',
+ 'hil' => 'хилигайнон',
+ 'hit' => 'хитски',
+ 'hmn' => 'хмонг',
+ 'ho' => 'хири моту',
+ 'hr' => 'хърватски',
+ 'hsb' => 'горнолужишки',
+ 'ht' => 'хаитянски',
+ 'hu' => 'унгарски',
+ 'hup' => 'хупа',
+ 'hy' => 'арменски',
+ 'hz' => 'хереро',
+ 'ia' => 'интерлингва',
+ 'iba' => 'ибан',
+ 'id' => 'индонезийски',
+ 'ie' => 'оксидентал',
+ 'ig' => 'игбо',
+ 'ii' => 'съчуански и',
+ 'ik' => 'инупиак',
+ 'ilo' => 'илоко',
+ 'inh' => 'ингушетски',
+ 'io' => 'идо',
+ 'is' => 'исландски',
+ 'it' => 'италиански',
+ 'iu' => 'инуктитут',
+ 'ja' => 'японски',
+ 'jbo' => 'лоджбан',
+ 'jgo' => 'нгомба',
+ 'jmc' => 'мачаме',
+ 'jpr' => 'еврейско-персийски',
+ 'jrb' => 'еврейско-арабски',
+ 'jv' => 'явански',
+ 'ka' => 'грузински',
+ 'kaa' => 'каракалпашки',
+ 'kab' => 'кабилски',
+ 'kac' => 'качински',
+ 'kaj' => 'жжи',
+ 'kam' => 'камба',
+ 'kaw' => 'кави',
+ 'kbd' => 'кабардиан',
+ 'kcg' => 'туап',
+ 'kde' => 'маконде',
+ 'kea' => 'кабовердиански',
+ 'kfo' => 'коро',
+ 'kg' => 'конгоански',
+ 'kha' => 'кхаси',
+ 'kho' => 'котски',
+ 'khq' => 'койра чиини',
+ 'ki' => 'кикую',
+ 'kj' => 'кваняма',
+ 'kk' => 'казахски',
+ 'kl' => 'гренландски',
+ 'kln' => 'календжин',
+ 'km' => 'кхмерски',
+ 'kmb' => 'кимбунду',
+ 'kn' => 'каннада',
+ 'ko' => 'корейски',
+ 'koi' => 'коми-пермяцки',
+ 'kok' => 'конкани',
+ 'kos' => 'косраен',
+ 'kpe' => 'кпеле',
+ 'kr' => 'канури',
+ 'krc' => 'карачай-балкарски',
+ 'krl' => 'карелски',
+ 'kru' => 'курук',
+ 'ks' => 'кашмирски',
+ 'ksb' => 'шамбала',
+ 'ksf' => 'бафия',
+ 'ku' => 'кюрдски',
+ 'kum' => 'кумикски',
+ 'kut' => 'кутенай',
+ 'kv' => 'Коми',
+ 'kw' => 'корнуолски',
+ 'ky' => 'киргизки',
+ 'la' => 'латински',
+ 'lad' => 'ладино',
+ 'lag' => 'ланги',
+ 'lah' => 'лахнда',
+ 'lam' => 'ламба',
+ 'lb' => 'люксембургски',
+ 'lez' => 'лезгински',
+ 'lg' => 'ганда',
+ 'li' => 'лимбургски',
+ 'lkt' => 'лакота',
+ 'ln' => 'лингала',
+ 'lo' => 'лаоски',
+ 'lol' => 'монго',
+ 'loz' => 'лози',
+ 'lt' => 'литовски',
+ 'lu' => 'луба катанга',
+ 'lua' => 'луба-лулуа',
+ 'lui' => 'луисеньо',
+ 'lun' => 'лунда',
+ 'luo' => 'луо',
+ 'lus' => 'лушаи',
+ 'luy' => 'луя',
+ 'lv' => 'латвийски',
+ 'mad' => 'мадурски',
+ 'mag' => 'магахи',
+ 'mai' => 'майтхили',
+ 'mak' => 'макасар',
+ 'man' => 'мандинго',
+ 'mas' => 'масайски',
+ 'mdf' => 'мокша',
+ 'mdr' => 'мандар',
+ 'men' => 'менде',
+ 'mer' => 'меру',
+ 'mfe' => 'морисиен',
+ 'mg' => 'малгашки',
+ 'mga' => 'средновековен ирландски',
+ 'mgh' => 'макуа мето',
+ 'mgo' => 'мета',
+ 'mh' => 'маршалезе',
+ 'mi' => 'маорски',
+ 'mic' => 'микмак',
+ 'min' => 'минангбау',
+ 'mk' => 'македонски',
+ 'ml' => 'малаялам',
+ 'mn' => 'монголски',
+ 'mnc' => 'манчжурски',
+ 'mni' => 'манипури',
+ 'moh' => 'мохоук',
+ 'mos' => 'моси',
+ 'mr' => 'марати',
+ 'ms' => 'малайски',
+ 'mt' => 'малтийски',
+ 'mua' => 'мунданг',
+ 'mul' => 'многоезични',
+ 'mus' => 'крик',
+ 'mwl' => 'мирандийски',
+ 'mwr' => 'марвари',
+ 'my' => 'бирмански',
+ 'myv' => 'ерзиа',
+ 'na' => 'науру',
+ 'nap' => 'неаполитански',
+ 'naq' => 'нама',
+ 'nb' => 'норвежки букмол',
+ 'nd' => 'северен ндебеле',
+ 'nds' => 'долносаксонски',
+ 'ne' => 'непалски',
+ 'new' => 'неварски',
+ 'ng' => 'ндонга',
+ 'nia' => 'ниас',
+ 'niu' => 'ниуеан',
+ 'nl' => 'нидерландски',
+ 'nl-be' => 'фламандски',
+ 'nmg' => 'квасио',
+ 'nn' => 'норвежки нюношк',
+ 'no' => 'норвежки',
+ 'nog' => 'ногаи',
+ 'non' => 'старонорвежски',
+ 'nqo' => 'нко',
+ 'nr' => 'южен ндебеле',
+ 'nso' => 'северен сото',
+ 'nus' => 'нуер',
+ 'nv' => 'навахо',
+ 'nwc' => 'класически невари',
+ 'ny' => 'чинянджа',
+ 'nym' => 'ниамвези',
+ 'nyn' => 'нианколе',
+ 'nyo' => 'нуоро',
+ 'nzi' => 'нзима',
+ 'oc' => 'окситански',
+ 'oj' => 'оджибва',
+ 'om' => 'оромо',
+ 'or' => 'ория',
+ 'os' => 'осетски',
+ 'osa' => 'оседжи',
+ 'ota' => 'отомански турски',
+ 'pa' => 'пенджабски',
+ 'pag' => 'пангасинан',
+ 'pal' => 'пехлевийски',
+ 'pam' => 'пампанга',
+ 'pap' => 'папиаменту',
+ 'pau' => 'палауан',
+ 'peo' => 'староперсийски',
+ 'phn' => 'финикийски',
+ 'pi' => 'пали',
+ 'pl' => 'полски',
+ 'pon' => 'похнпеиан',
+ 'pro' => 'провансалски',
+ 'ps' => 'пущу',
+ 'pt' => 'португалски',
+ 'qu' => 'кечуа',
+ 'quc' => 'киче',
+ 'raj' => 'раджастански',
+ 'rap' => 'рапа нуи',
+ 'rar' => 'рапотонган',
+ 'rm' => 'реторомански',
+ 'rn' => 'рунди',
+ 'ro' => 'румънски',
+ 'ro-md' => 'молдовски',
+ 'rof' => 'ромбо',
+ 'rom' => 'цигански език',
+ 'ru' => 'руски',
+ 'rup' => 'арумънски',
+ 'rw' => 'киняруанда',
+ 'rwk' => 'рва',
+ 'sa' => 'санкскритски',
+ 'sad' => 'сандве',
+ 'sah' => 'якутски',
+ 'sam' => 'самаритански арамейски',
+ 'saq' => 'самбуру',
+ 'sas' => 'сасак',
+ 'sat' => 'сантали',
+ 'sbp' => 'сангу',
+ 'sc' => 'сардински',
+ 'scn' => 'сицилиански',
+ 'sco' => 'шотландски',
+ 'sd' => 'синдхи',
+ 'se' => 'северносаамски',
+ 'seh' => 'сена',
+ 'sel' => 'селкуп',
+ 'ses' => 'койраборо сени',
+ 'sg' => 'санго',
+ 'sga' => 'староирландски',
+ 'sh' => 'сърбохърватски',
+ 'shi' => 'ташелхит',
+ 'shn' => 'шан',
+ 'si' => 'синхалски',
+ 'sid' => 'сидамо',
+ 'sk' => 'словашки',
+ 'sl' => 'словенски',
+ 'sm' => 'самоански',
+ 'sma' => 'южносаамски',
+ 'smj' => 'луле-саамски',
+ 'smn' => 'инари-саамски',
+ 'sms' => 'сколт-саамски',
+ 'sn' => 'шона',
+ 'snk' => 'сонинке',
+ 'so' => 'сомалийски',
+ 'sog' => 'согдийски',
+ 'sq' => 'албански',
+ 'sr' => 'сръбски',
+ 'srn' => 'сранан тонго',
+ 'srr' => 'серер',
+ 'ss' => 'суази',
+ 'st' => 'сесуто',
+ 'su' => 'сундански',
+ 'suk' => 'сукума',
+ 'sus' => 'сусу',
+ 'sux' => 'шумерски',
+ 'sv' => 'шведски',
+ 'sw' => 'суахили',
+ 'swb' => 'коморски',
+ 'swc' => 'конгоански суахили',
+ 'syc' => 'класически сирийски',
+ 'syr' => 'сирийски',
+ 'ta' => 'тамилски',
+ 'te' => 'телугу',
+ 'tem' => 'темне',
+ 'teo' => 'тесо',
+ 'ter' => 'терено',
+ 'tet' => 'тетум',
+ 'tg' => 'таджикски',
+ 'th' => 'тайски',
+ 'ti' => 'тигриня',
+ 'tig' => 'тигре',
+ 'tiv' => 'тив',
+ 'tk' => 'туркменски',
+ 'tkl' => 'токелайски',
+ 'tl' => 'тагалог',
+ 'tlh' => 'клингон',
+ 'tli' => 'тлингит',
+ 'tmh' => 'тамашек',
+ 'tn' => 'тсвана',
+ 'to' => 'тонга',
+ 'tog' => 'нианса тонга',
+ 'tpi' => 'ток писин',
+ 'tr' => 'турски',
+ 'ts' => 'тсонга',
+ 'tsi' => 'цимшиански',
+ 'tt' => 'татарски',
+ 'tum' => 'тумбука',
+ 'tvl' => 'тувалуански',
+ 'tw' => 'туи',
+ 'twq' => 'тасавак',
+ 'ty' => 'таитянски',
+ 'tyv' => 'тувински',
+ 'tzm' => 'централноатласки тамазигт',
+ 'udm' => 'удмуртски',
+ 'ug' => 'уйгурски',
+ 'uga' => 'угаритски',
+ 'uk' => 'украински',
+ 'umb' => 'умбунду',
+ 'und' => 'неопределен',
+ 'ur' => 'урду',
+ 'uz' => 'узбекски',
+ 'vai' => 'ваи',
+ 've' => 'венда',
+ 'vi' => 'виетнамски',
+ 'vo' => 'волапюк',
+ 'vot' => 'вотик',
+ 'vun' => 'вунджо',
+ 'wa' => 'валонски',
+ 'wal' => 'валамо',
+ 'war' => 'варай',
+ 'was' => 'уашо',
+ 'wo' => 'волоф',
+ 'xal' => 'калмик',
+ 'xh' => 'ксоса',
+ 'xog' => 'сога',
+ 'yao' => 'яо',
+ 'yap' => 'япезе',
+ 'yi' => 'идиш',
+ 'yo' => 'йоруба',
+ 'yue' => 'кантонски',
+ 'za' => 'зуанг',
+ 'zap' => 'запотек',
+ 'zbl' => 'блис символи',
+ 'zen' => 'зенага',
+ 'zgh' => 'стандартен марокански тамазигт',
+ 'zh' => 'китайски',
+ 'zh-hans' => 'опростен китайски',
+ 'zh-hant' => 'традиционен китайски',
+ 'zu' => 'зулуски',
+ 'zun' => 'зуни',
+ 'zxx' => 'без лингвистично съдържание',
+ 'zza' => 'заза',
+);
+
+$currencyNames = array(
+ 'ADP' => 'Андорска песета',
+ 'AED' => 'Дирхам на Обединените арабски емирства',
+ 'AFA' => 'Афганистански афган (1927–2002)',
+ 'AFN' => 'Афганистански афган',
+ 'ALL' => 'Албански лек',
+ 'AMD' => 'Арменски драм',
+ 'ANG' => 'Антилски гулден',
+ 'AOA' => 'Анголска кванза',
+ 'AOK' => 'Анголска кванца (1977–1990)',
+ 'AON' => 'Анголска нова кванца (1990–2000)',
+ 'AOR' => 'Анголска нова кванца (1995–1999)',
+ 'ARA' => 'Аржентински австрал',
+ 'ARP' => 'Аржентинско песо (1983–1985)',
+ 'ARS' => 'Аржентинско песо',
+ 'ATS' => 'Австрийски шилинг',
+ 'AUD' => 'Австралийски долар',
+ 'AWG' => 'Арубски флорин',
+ 'AZM' => 'Азербайджански манат (1993–2006)',
+ 'AZN' => 'Азербайджански манат',
+ 'BAD' => 'Босна и Херцеговина-динар',
+ 'BAM' => 'Босненска конвертируема марка',
+ 'BBD' => 'Барбадоски долар',
+ 'BDT' => 'Бангладешка така',
+ 'BEC' => 'Белгийски франк (конвертируем)',
+ 'BEF' => 'Белгийски франк',
+ 'BEL' => 'Белгийски франк (финансов)',
+ 'BGL' => 'Български конвертируем лев (1962–1999)',
+ 'BGN' => 'Български лев',
+ 'BHD' => 'Бахрейнски динар',
+ 'BIF' => 'Бурундийски франк',
+ 'BMD' => 'Бермудски долар',
+ 'BND' => 'Брунейски долар',
+ 'BOB' => 'Боливийско боливиано',
+ 'BOP' => 'Боливийско песо',
+ 'BOV' => 'Боливийски мвдол',
+ 'BRB' => 'Бразилско ново крузейро (1967–1986)',
+ 'BRC' => 'Бразилско крозадо',
+ 'BRE' => 'Бразилско крузейро (1990–1993)',
+ 'BRL' => 'Бразилски реал',
+ 'BRN' => 'Бразилско ново крозадо',
+ 'BRR' => 'Бразилско крузейро',
+ 'BSD' => 'Бахамски долар',
+ 'BTN' => 'Бутански нгултрум',
+ 'BUK' => 'Бирмански киат',
+ 'BWP' => 'Ботсванска пула',
+ 'BYB' => 'Беларуска нова рубла (1994–1999)',
+ 'BYR' => 'Беларуска рубла',
+ 'BZD' => 'Белизийски долар',
+ 'CAD' => 'Канадски долар',
+ 'CDF' => 'Конгоански франк',
+ 'CHE' => 'WIR евро',
+ 'CHF' => 'Швейцарски франк',
+ 'CHW' => 'WIR франк',
+ 'CLF' => 'Условна разчетна единица на Чили',
+ 'CLP' => 'Чилийско песо',
+ 'CNY' => 'Китайски юан',
+ 'COP' => 'Колумбийско песо',
+ 'COU' => 'Колумбийска единица на реалната стойност',
+ 'CRC' => 'Костарикански колон',
+ 'CSD' => 'Стар сръбски динар',
+ 'CSK' => 'Чехословашка конвертируема крона',
+ 'CUC' => 'Кубинско конвертируемо песо',
+ 'CUP' => 'Кубинско песо',
+ 'CVE' => 'Ескудо на Кабо Верде',
+ 'CYP' => 'Кипърска лира',
+ 'CZK' => 'Чешка крона',
+ 'DDM' => 'Източногерманска марка',
+ 'DEM' => 'Германска марка',
+ 'DJF' => 'Джибутски франк',
+ 'DKK' => 'Датска крона',
+ 'DOP' => 'Доминиканско песо',
+ 'DZD' => 'Алжирски динар',
+ 'ECS' => 'Еквадорско сукре',
+ 'ECV' => 'Еквадорска банкова единица',
+ 'EEK' => 'Естонска крона',
+ 'EGP' => 'Египетска лира',
+ 'ERN' => 'Еритрейска накфа',
+ 'ESP' => 'Испанска песета',
+ 'ETB' => 'Етиопски бир',
+ 'EUR' => 'Евро',
+ 'FIM' => 'Финландска марка',
+ 'FJD' => 'Фиджийски долар',
+ 'FKP' => 'Фолклендска лира',
+ 'FRF' => 'Френски франк',
+ 'GBP' => 'Британска лира',
+ 'GEK' => 'Грузински купон',
+ 'GEL' => 'Грузински лари',
+ 'GHC' => 'Ганайско седи (1979–2007)',
+ 'GHS' => 'Ганайско седи',
+ 'GIP' => 'Гибралтарска лира',
+ 'GMD' => 'Гамбийско даласи',
+ 'GNF' => 'Гвинейски франк',
+ 'GNS' => 'Гвинейска сили',
+ 'GQE' => 'Екваториално гвинейско еквеле',
+ 'GRD' => 'Гръцка драхма',
+ 'GTQ' => 'Гватемалски кетцал',
+ 'GWE' => 'Ескудо от Португалска Гвинея',
+ 'GWP' => 'Гвинея-Бисау песо',
+ 'GYD' => 'Гаянски долар',
+ 'HKD' => 'Хонконгски долар',
+ 'HNL' => 'Хондураска лемпира',
+ 'HRD' => 'Хърватски динар',
+ 'HRK' => 'Хърватска куна',
+ 'HTG' => 'Хаитски гурд',
+ 'HUF' => 'Унгарски форинт',
+ 'IDR' => 'Индонезийска рупия',
+ 'IEP' => 'Ирландска лира',
+ 'ILP' => 'Израелска лира',
+ 'ILS' => 'Израелски нов шекел',
+ 'INR' => 'Индийска рупия',
+ 'IQD' => 'Иракски динар',
+ 'IRR' => 'Ирански риал',
+ 'ISK' => 'Исландска крона',
+ 'ITL' => 'Италианска лира',
+ 'JMD' => 'Ямайски долар',
+ 'JOD' => 'Йордански динар',
+ 'JPY' => 'Японска йена',
+ 'KES' => 'Кенийски шилинг',
+ 'KGS' => 'Киргизстански сом',
+ 'KHR' => 'Камбоджански риел',
+ 'KMF' => 'Коморски франк',
+ 'KPW' => 'Севернокорейски вон',
+ 'KRW' => 'Южнокорейски вон',
+ 'KWD' => 'Кувейтски динар',
+ 'KYD' => 'Кайманов долар',
+ 'KZT' => 'Казахстанско тенге',
+ 'LAK' => 'Лаоски кип',
+ 'LBP' => 'Ливанска лира',
+ 'LKR' => 'Шриланкска рупия',
+ 'LRD' => 'Либерийски долар',
+ 'LSL' => 'Лесотско лоти',
+ 'LTL' => 'Литовски литас',
+ 'LTT' => 'Литовски талон',
+ 'LUF' => 'Люксембургски франк',
+ 'LVL' => 'Латвийски лат',
+ 'LVR' => 'Латвийска рубла',
+ 'LYD' => 'Либийски динар',
+ 'MAD' => 'Марокански дирхам',
+ 'MAF' => 'Марокански франк',
+ 'MDL' => 'Молдовско леу',
+ 'MGA' => 'Малгашко ариари',
+ 'MGF' => 'Малгашки франк - Мадагаскар',
+ 'MKD' => 'Македонски денар',
+ 'MLF' => 'Малийски франк',
+ 'MMK' => 'Мианмарски кият',
+ 'MNT' => 'Монголски тугрик',
+ 'MOP' => 'Патака на Макао',
+ 'MRO' => 'Мавританска угия',
+ 'MTL' => 'Малтийска лира',
+ 'MUR' => 'Маврицийска рупия',
+ 'MVR' => 'Малдивска руфия',
+ 'MWK' => 'Малавийска квача',
+ 'MXN' => 'Мексиканско песо',
+ 'MXP' => 'Мексиканско сребърно песо (1861–1992)',
+ 'MXV' => 'Мексиканска конвертируема единица (UDI)',
+ 'MYR' => 'Малайзийски рингит',
+ 'MZE' => 'Мозамбикско ескудо',
+ 'MZM' => 'Мозамбикски метикал (1980–2006)',
+ 'MZN' => 'Мозамбикски метикал',
+ 'NAD' => 'Намибийски долар',
+ 'NGN' => 'Нигерийска найра',
+ 'NIC' => 'Никарагуанска кордоба (1988–1991)',
+ 'NIO' => 'Никарагуанска кордоба',
+ 'NLG' => 'Холандски гулден',
+ 'NOK' => 'Норвежка крона',
+ 'NPR' => 'Непалска рупия',
+ 'NZD' => 'Новозеландски долар',
+ 'OMR' => 'Омански риал',
+ 'PAB' => 'Панамска балбоа',
+ 'PEI' => 'Перуанско инти',
+ 'PEN' => 'Перуански нов сол',
+ 'PES' => 'Перуански сол',
+ 'PGK' => 'Папуа-новогвинейска кина',
+ 'PHP' => 'Филипинско песо',
+ 'PKR' => 'Пакистанска рупия',
+ 'PLN' => 'Полска злота',
+ 'PLZ' => 'Полска злота (1950–1995)',
+ 'PTE' => 'Португалско ескудо',
+ 'PYG' => 'Парагвайско гуарани',
+ 'QAR' => 'Катарски риал',
+ 'RHD' => 'Родезийски долар',
+ 'ROL' => 'Стара румънска лея',
+ 'RON' => 'Румънска лея',
+ 'RSD' => 'Сръбски динар',
+ 'RUB' => 'Руска рубла',
+ 'RUR' => 'Руска рубла (1991–1998)',
+ 'RWF' => 'Руандски франк',
+ 'SAR' => 'Саудитскоарабски риал',
+ 'SBD' => 'Долар на Соломоновите острови',
+ 'SCR' => 'Сейшелска рупия',
+ 'SDD' => 'Судански динар',
+ 'SDG' => 'Суданска лира',
+ 'SEK' => 'Шведска крона',
+ 'SGD' => 'Сингапурски долар',
+ 'SHP' => 'Лира на Света Елена',
+ 'SIT' => 'Словенски толар',
+ 'SKK' => 'Словашка крона',
+ 'SLL' => 'Сиералеонско леоне',
+ 'SOS' => 'Сомалийски шилинг',
+ 'SRD' => 'Суринамски долар',
+ 'SRG' => 'Суринамски гилдер',
+ 'SSP' => 'Южносуданска лира',
+ 'STD' => 'Добра на Сао Томе и Принсипи',
+ 'SUR' => 'Съветска рубла',
+ 'SVC' => 'Салвадорски колон',
+ 'SYP' => 'Сирийска лира',
+ 'SZL' => 'Свазилендски лилангени',
+ 'THB' => 'Тайландски бат',
+ 'TJR' => 'Таджикистанска рубла',
+ 'TJS' => 'Таджикистански сомони',
+ 'TMM' => 'Туркменистански манат',
+ 'TMT' => 'Туркменски манат',
+ 'TND' => 'Тунизийски динар',
+ 'TOP' => 'Тонганска паанга',
+ 'TPE' => 'Тиморско ескудо',
+ 'TRL' => 'Турска лира (1922–2005)',
+ 'TRY' => 'Турска лира',
+ 'TTD' => 'Долар на Тринидад и Тобаго',
+ 'TWD' => 'Тайвански долар',
+ 'TZS' => 'Танзанийски шилинг',
+ 'UAH' => 'Украинска хривня',
+ 'UAK' => 'Украински карбованец',
+ 'UGS' => 'Угандийски шилинг (1966–1987)',
+ 'UGX' => 'Угандски шилинг',
+ 'USD' => 'Щатски долар',
+ 'UYI' => 'Уругвайско песо (индекс на инфлацията)',
+ 'UYP' => 'Уругвайско песо (1975–1993)',
+ 'UYU' => 'Уругвайско песо',
+ 'UZS' => 'Узбекски сум',
+ 'VEB' => 'Венецуелски боливар (1871–2008)',
+ 'VEF' => 'Венецуелски боливар',
+ 'VND' => 'Виетнамски донг',
+ 'VUV' => 'Вануатско вату',
+ 'WST' => 'Самоанска тала',
+ 'XAF' => 'Централноафрикански франк',
+ 'XAG' => 'Сребро',
+ 'XAU' => 'Злато',
+ 'XBA' => 'Европейска съставна единица',
+ 'XBB' => 'Европейска валутна единица',
+ 'XBC' => 'Европейска единица по сметка (XBC)',
+ 'XBD' => 'Европейска единица по сметка (XBD)',
+ 'XCD' => 'Източнокарибски долар',
+ 'XDR' => 'Специални права на тираж',
+ 'XEU' => 'Еку на ЕИО',
+ 'XFO' => 'Френски златен франк',
+ 'XOF' => 'Западноафрикански франк',
+ 'XPD' => 'Паладий',
+ 'XPF' => 'Френскополинезийски франк',
+ 'XPT' => 'Платина',
+ 'XTS' => 'Код резервиран за целите на тестване',
+ 'XXX' => 'Непозната валута',
+ 'YDD' => 'Йеменски динар',
+ 'YER' => 'Йеменски риал',
+ 'YUD' => 'Югославски твърд динар',
+ 'YUM' => 'Югославски динар',
+ 'YUN' => 'Югославски конвертируем динар',
+ 'ZAL' => 'Южноафрикански ранд (финансов)',
+ 'ZAR' => 'Южноафрикански ранд',
+ 'ZMK' => 'Замбийска квача (1968–2012)',
+ 'ZMW' => 'Замбийска куача',
+ 'ZRN' => 'Заирско ново зайре',
+ 'ZRZ' => 'Заирско зайре',
+ 'ZWD' => 'Зимбабвийски долар',
+ 'ZWL' => 'Зимбабвийски долар (2009)',
+);
+
+$currencySymbols = array(
+ 'AED' => 'AED',
+ 'AFN' => 'AFN',
+ 'ALL' => 'ALL',
+ 'AMD' => 'AMD',
+ 'ANG' => 'ANG',
+ 'AOA' => 'AOA',
+ 'ARS' => 'ARS',
+ 'AUD' => 'AUD',
+ 'AWG' => 'AWG',
+ 'AZN' => 'AZN',
+ 'BAM' => 'BAM',
+ 'BBD' => 'BBD',
+ 'BDT' => 'BDT',
+ 'BGN' => 'лв.',
+ 'BHD' => 'BHD',
+ 'BIF' => 'BIF',
+ 'BMD' => 'BMD',
+ 'BND' => 'BND',
+ 'BOB' => 'BOB',
+ 'BRL' => 'BRL',
+ 'BSD' => 'BSD',
+ 'BTN' => 'BTN',
+ 'BWP' => 'BWP',
+ 'BYR' => 'BYR',
+ 'BZD' => 'BZD',
+ 'CAD' => 'CAD',
+ 'CDF' => 'CDF',
+ 'CHF' => 'CHF',
+ 'CLP' => 'CLP',
+ 'CNY' => 'CNY',
+ 'COP' => 'COP',
+ 'CRC' => 'CRC',
+ 'CUC' => 'CUC',
+ 'CUP' => 'CUP',
+ 'CVE' => 'CVE',
+ 'CZK' => 'CZK',
+ 'DJF' => 'DJF',
+ 'DKK' => 'DKK',
+ 'DOP' => 'DOP',
+ 'DZD' => 'DZD',
+ 'EGP' => 'EGP',
+ 'ERN' => 'ERN',
+ 'ETB' => 'ETB',
+ 'EUR' => '€',
+ 'FJD' => 'FJD',
+ 'FKP' => 'FKP',
+ 'GBP' => 'GBP',
+ 'GEL' => 'GEL',
+ 'GHS' => 'GHS',
+ 'GIP' => 'GIP',
+ 'GMD' => 'GMD',
+ 'GNF' => 'GNF',
+ 'GTQ' => 'GTQ',
+ 'GYD' => 'GYD',
+ 'HKD' => 'HKD',
+ 'HNL' => 'HNL',
+ 'HRK' => 'HRK',
+ 'HTG' => 'HTG',
+ 'HUF' => 'HUF',
+ 'IDR' => 'IDR',
+ 'ILS' => 'ILS',
+ 'INR' => 'INR',
+ 'IQD' => 'IQD',
+ 'IRR' => 'IRR',
+ 'ISK' => 'ISK',
+ 'JMD' => 'JMD',
+ 'JOD' => 'JOD',
+ 'JPY' => 'JPY',
+ 'KES' => 'KES',
+ 'KGS' => 'KGS',
+ 'KHR' => 'KHR',
+ 'KMF' => 'KMF',
+ 'KPW' => 'KPW',
+ 'KRW' => 'KRW',
+ 'KWD' => 'KWD',
+ 'KYD' => 'KYD',
+ 'KZT' => 'KZT',
+ 'LAK' => 'LAK',
+ 'LBP' => 'LBP',
+ 'LKR' => 'LKR',
+ 'LRD' => 'LRD',
+ 'LTL' => 'LTL',
+ 'LVL' => 'LVL',
+ 'LYD' => 'LYD',
+ 'MAD' => 'MAD',
+ 'MDL' => 'MDL',
+ 'MGA' => 'MGA',
+ 'MKD' => 'MKD',
+ 'MMK' => 'MMK',
+ 'MNT' => 'MNT',
+ 'MOP' => 'MOP',
+ 'MRO' => 'MRO',
+ 'MUR' => 'MUR',
+ 'MVR' => 'MVR',
+ 'MWK' => 'MWK',
+ 'MXN' => 'MXN',
+ 'MXP' => 'MXP',
+ 'MXV' => 'MXV',
+ 'MYR' => 'MYR',
+ 'MZN' => 'MZN',
+ 'NAD' => 'NAD',
+ 'NGN' => 'NGN',
+ 'NIC' => 'NIC',
+ 'NIO' => 'NIO',
+ 'NOK' => 'NOK',
+ 'NPR' => 'NPR',
+ 'NZD' => 'NZD',
+ 'OMR' => 'OMR',
+ 'PAB' => 'PAB',
+ 'PEN' => 'PEN',
+ 'PGK' => 'PGK',
+ 'PHP' => 'PHP',
+ 'PKR' => 'PKR',
+ 'PLN' => 'PLN',
+ 'PYG' => 'PYG',
+ 'QAR' => 'QAR',
+ 'RON' => 'RON',
+ 'RSD' => 'RSD',
+ 'RUB' => 'руб.',
+ 'RWF' => 'RWF',
+ 'SAR' => 'SAR',
+ 'SBD' => 'SBD',
+ 'SCR' => 'SCR',
+ 'SDG' => 'SDG',
+ 'SEK' => 'SEK',
+ 'SGD' => 'SGD',
+ 'SHP' => 'SHP',
+ 'SLL' => 'SLL',
+ 'SOS' => 'SOS',
+ 'SRD' => 'SRD',
+ 'SSP' => 'SSP',
+ 'STD' => 'STD',
+ 'SVC' => 'SVC',
+ 'SYP' => 'SYP',
+ 'SZL' => 'SZL',
+ 'THB' => 'THB',
+ 'TJS' => 'TJS',
+ 'TMT' => 'TMT',
+ 'TND' => 'TND',
+ 'TOP' => 'TOP',
+ 'TRY' => 'TRY',
+ 'TTD' => 'TTD',
+ 'TWD' => 'TWD',
+ 'TZS' => 'TZS',
+ 'UAH' => 'UAH',
+ 'UGX' => 'UGX',
+ 'USD' => 'щ.д.',
+ 'UYU' => 'UYU',
+ 'UZS' => 'UZS',
+ 'VEF' => 'VEF',
+ 'VND' => 'VND',
+ 'VUV' => 'VUV',
+ 'WST' => 'WST',
+ 'XAF' => 'FCFA',
+ 'XCD' => 'XCD',
+ 'XOF' => 'CFA',
+ 'XPF' => 'CFPF',
+ 'YER' => 'YER',
+ 'ZAR' => 'ZAR',
+ 'ZMW' => 'ZMW',
+);
+
+$countryNames = array(
+ 'AC' => 'остров Възнесение',
+ 'AD' => 'Андора',
+ 'AE' => 'Обединени арабски емирства',
+ 'AF' => 'Афганистан',
+ 'AG' => 'Антигуа и Барбуда',
+ 'AI' => 'Ангуила',
+ 'AL' => 'Албания',
+ 'AM' => 'Армения',
+ 'AN' => 'Холандски Антили',
+ 'AO' => 'Ангола',
+ 'AQ' => 'Антарктика',
+ 'AR' => 'Аржентина',
+ 'AS' => 'Американска Самоа',
+ 'AT' => 'Австрия',
+ 'AU' => 'Австралия',
+ 'AW' => 'Аруба',
+ 'AX' => 'Оландски острови',
+ 'AZ' => 'Азербайджан',
+ 'BA' => 'Босна и Херцеговина',
+ 'BB' => 'Барбадос',
+ 'BD' => 'Бангладеш',
+ 'BE' => 'Белгия',
+ 'BF' => 'Буркина Фасо',
+ 'BG' => 'България',
+ 'BH' => 'Бахрейн',
+ 'BI' => 'Бурунди',
+ 'BJ' => 'Бенин',
+ 'BL' => 'Сен Бартелеми',
+ 'BM' => 'Бермуда',
+ 'BN' => 'Бруней Дарусалам',
+ 'BO' => 'Боливия',
+ 'BQ' => 'Карибска Нидерландия',
+ 'BR' => 'Бразилия',
+ 'BS' => 'Бахами',
+ 'BT' => 'Бутан',
+ 'BV' => 'остров Буве',
+ 'BW' => 'Ботсвана',
+ 'BY' => 'Беларус',
+ 'BZ' => 'Белиз',
+ 'CA' => 'Канада',
+ 'CC' => 'Кокосови острови (острови Кийлинг)',
+ 'CD' => 'Демократична република Конго',
+ 'CF' => 'Централноафриканска република',
+ 'CG' => 'Конго',
+ 'CH' => 'Швейцария',
+ 'CI' => 'Кот д’Ивоар',
+ 'CK' => 'острови Кук',
+ 'CL' => 'Чили',
+ 'CM' => 'Камерун',
+ 'CN' => 'Китай',
+ 'CO' => 'Колумбия',
+ 'CP' => 'остров Клипертон',
+ 'CR' => 'Коста Рика',
+ 'CU' => 'Куба',
+ 'CV' => 'Кабо Верде',
+ 'CW' => 'Кюрасао',
+ 'CX' => 'остров Рождество',
+ 'CY' => 'Кипър',
+ 'CZ' => 'Чехия',
+ 'DE' => 'Германия',
+ 'DG' => 'Диего Гарсия',
+ 'DJ' => 'Джибути',
+ 'DK' => 'Дания',
+ 'DM' => 'Доминика',
+ 'DO' => 'Доминиканска република',
+ 'DZ' => 'Алжир',
+ 'EA' => 'Сеута и Мелия',
+ 'EC' => 'Еквадор',
+ 'EE' => 'Естония',
+ 'EG' => 'Египет',
+ 'EH' => 'Западна Сахара',
+ 'ER' => 'Еритрея',
+ 'ES' => 'Испания',
+ 'ET' => 'Етиопия',
+ 'EU' => 'Европейски съюз',
+ 'FI' => 'Финландия',
+ 'FJ' => 'Фиджи',
+ 'FK' => 'Фолклендски острови',
+ 'FM' => 'Микронезия',
+ 'FO' => 'Фарьорски острови',
+ 'FR' => 'Франция',
+ 'GA' => 'Габон',
+ 'GB' => 'Великобритания',
+ 'GD' => 'Гренада',
+ 'GE' => 'Грузия',
+ 'GF' => 'Френска Гвиана',
+ 'GG' => 'Гърнси',
+ 'GH' => 'Гана',
+ 'GI' => 'Гибралтар',
+ 'GL' => 'Гренландия',
+ 'GM' => 'Гамбия',
+ 'GN' => 'Гвинея',
+ 'GP' => 'Гваделупа',
+ 'GQ' => 'Екваториална Гвинея',
+ 'GR' => 'Гърция',
+ 'GS' => 'Южна Джорджия и Южни Сандвичеви острови',
+ 'GT' => 'Гватемала',
+ 'GU' => 'Гуам',
+ 'GW' => 'Гвинея-Бисау',
+ 'GY' => 'Гаяна',
+ 'HK' => 'Хонконг',
+ 'HM' => 'остров Хърд и острови Макдоналд',
+ 'HN' => 'Хондурас',
+ 'HR' => 'Хърватия',
+ 'HT' => 'Хаити',
+ 'HU' => 'Унгария',
+ 'IC' => 'Канарски острови',
+ 'ID' => 'Индонезия',
+ 'IE' => 'Ирландия',
+ 'IL' => 'Израел',
+ 'IM' => 'остров Ман',
+ 'IN' => 'Индия',
+ 'IO' => 'Британска територия в Индийския океан',
+ 'IQ' => 'Ирак',
+ 'IR' => 'Иран',
+ 'IS' => 'Исландия',
+ 'IT' => 'Италия',
+ 'JE' => 'Джърси',
+ 'JM' => 'Ямайка',
+ 'JO' => 'Йордания',
+ 'JP' => 'Япония',
+ 'KE' => 'Кения',
+ 'KG' => 'Киргизстан',
+ 'KH' => 'Камбоджа',
+ 'KI' => 'Кирибати',
+ 'KM' => 'Коморски острови',
+ 'KN' => 'Сейнт Китс и Невис',
+ 'KP' => 'Северна Корея',
+ 'KR' => 'Южна Корея',
+ 'KW' => 'Кувейт',
+ 'KY' => 'Кайманови острови',
+ 'KZ' => 'Казахстан',
+ 'LA' => 'Лаос',
+ 'LB' => 'Ливан',
+ 'LC' => 'Сейнт Лусия',
+ 'LI' => 'Лихтенщайн',
+ 'LK' => 'Шри Ланка',
+ 'LR' => 'Либерия',
+ 'LS' => 'Лесото',
+ 'LT' => 'Литва',
+ 'LU' => 'Люксембург',
+ 'LV' => 'Латвия',
+ 'LY' => 'Либия',
+ 'MA' => 'Мароко',
+ 'MC' => 'Монако',
+ 'MD' => 'Молдова',
+ 'ME' => 'Черна гора',
+ 'MF' => 'Сен Мартен',
+ 'MG' => 'Мадагаскар',
+ 'MH' => 'Маршалови острови',
+ 'MK' => 'Македония',
+ 'ML' => 'Мали',
+ 'MM' => 'Мианмар (Бирма)',
+ 'MN' => 'Монголия',
+ 'MO' => 'Макао',
+ 'MP' => 'Северни Мариански острови',
+ 'MQ' => 'Мартиника',
+ 'MR' => 'Мавритания',
+ 'MS' => 'Монтсерат',
+ 'MT' => 'Малта',
+ 'MU' => 'Мавриций',
+ 'MV' => 'Малдиви',
+ 'MW' => 'Малави',
+ 'MX' => 'Мексико',
+ 'MY' => 'Малайзия',
+ 'MZ' => 'Мозамбик',
+ 'NA' => 'Намибия',
+ 'NC' => 'Нова Каледония',
+ 'NE' => 'Нигер',
+ 'NF' => 'остров Норфолк',
+ 'NG' => 'Нигерия',
+ 'NI' => 'Никарагуа',
+ 'NL' => 'Нидерландия',
+ 'NO' => 'Норвегия',
+ 'NP' => 'Непал',
+ 'NR' => 'Науру',
+ 'NU' => 'Ниуе',
+ 'NZ' => 'Нова Зеландия',
+ 'OM' => 'Оман',
+ 'PA' => 'Панама',
+ 'PE' => 'Перу',
+ 'PF' => 'Френска Полинезия',
+ 'PG' => 'Папуа Нова Гвинея',
+ 'PH' => 'Филипини',
+ 'PK' => 'Пакистан',
+ 'PL' => 'Полша',
+ 'PM' => 'Сен Пиер и Микелон',
+ 'PN' => 'Острови Питкерн',
+ 'PR' => 'Пуерто Рико',
+ 'PS' => 'Палестина',
+ 'PT' => 'Португалия',
+ 'PW' => 'Палау',
+ 'PY' => 'Парагвай',
+ 'QA' => 'Катар',
+ 'QO' => 'отдалечени острови на Океания',
+ 'RE' => 'Реюнион',
+ 'RO' => 'Румъния',
+ 'RS' => 'Сърбия',
+ 'RU' => 'Русия',
+ 'RW' => 'Руанда',
+ 'SA' => 'Саудитска Арабия',
+ 'SB' => 'Соломонови острови',
+ 'SC' => 'Сейшели',
+ 'SD' => 'Судан',
+ 'SE' => 'Швеция',
+ 'SG' => 'Сингапур',
+ 'SH' => 'Света Елена',
+ 'SI' => 'Словения',
+ 'SJ' => 'Свалбард и Ян Майен',
+ 'SK' => 'Словакия',
+ 'SL' => 'Сиера Леоне',
+ 'SM' => 'Сан Марино',
+ 'SN' => 'Сенегал',
+ 'SO' => 'Сомалия',
+ 'SR' => 'Суринам',
+ 'SS' => 'Южен Судан',
+ 'ST' => 'Сао Томе и Принсипи',
+ 'SV' => 'Салвадор',
+ 'SX' => 'Синт Мартен',
+ 'SY' => 'Сирия',
+ 'SZ' => 'Свазиленд',
+ 'TA' => 'Тристан да Куня',
+ 'TC' => 'острови Търкс и Кайкос',
+ 'TD' => 'Чад',
+ 'TF' => 'Френски южни територии',
+ 'TG' => 'Того',
+ 'TH' => 'Тайланд',
+ 'TJ' => 'Таджикистан',
+ 'TK' => 'Токелау',
+ 'TL' => 'Източен Тимор',
+ 'TM' => 'Туркменистан',
+ 'TN' => 'Тунис',
+ 'TO' => 'Тонга',
+ 'TR' => 'Турция',
+ 'TT' => 'Тринидад и Тобаго',
+ 'TV' => 'Тувалу',
+ 'TW' => 'Тайван',
+ 'TZ' => 'Танзания',
+ 'UA' => 'Украйна',
+ 'UG' => 'Уганда',
+ 'UM' => 'Отдалечени острови на САЩ',
+ 'US' => 'САЩ',
+ 'UY' => 'Уругвай',
+ 'UZ' => 'Узбекистан',
+ 'VA' => 'Ватикан',
+ 'VC' => 'Сейнт Винсънт и Гренадини',
+ 'VE' => 'Венецуела',
+ 'VG' => 'Британски Вирджински острови',
+ 'VI' => 'Американски Вирджински острови',
+ 'VN' => 'Виетнам',
+ 'VU' => 'Вануату',
+ 'WF' => 'Уолис и Футуна',
+ 'WS' => 'Самоа',
+ 'XK' => 'Косово',
+ 'YE' => 'Йемен',
+ 'YT' => 'Майот',
+ 'ZA' => 'Южна Африка',
+ 'ZM' => 'Замбия',
+ 'ZW' => 'Зимбабве',
+);
+
+$timeUnits = array(
+ 'day-future-one' => 'след {0} ден',
+ 'day-future-other' => 'след {0} дни',
+ 'day-narrow-future-one' => 'сл. {0} д',
+ 'day-narrow-future-other' => 'сл. {0} д',
+ 'day-narrow-past-one' => 'пр. {0} д',
+ 'day-narrow-past-other' => 'пр. {0} д',
+ 'day-one' => '{0} ден',
+ 'day-other' => '{0} дни',
+ 'day-past-one' => 'преди {0} ден',
+ 'day-past-other' => 'преди {0} дни',
+ 'day-short-future-one' => 'след {0} д',
+ 'day-short-future-other' => 'след {0} д',
+ 'day-short-past-one' => 'преди {0} д',
+ 'day-short-past-other' => 'преди {0} д',
+ 'hour-future-one' => 'след {0} час',
+ 'hour-future-other' => 'след {0} часа',
+ 'hour-narrow-future-one' => 'сл. {0} ч',
+ 'hour-narrow-future-other' => 'сл. {0} ч',
+ 'hour-narrow-past-one' => 'пр. {0} ч',
+ 'hour-narrow-past-other' => 'пр. {0} ч',
+ 'hour-one' => '{0} час',
+ 'hour-other' => '{0} часа',
+ 'hour-past-one' => 'преди {0} час',
+ 'hour-past-other' => 'преди {0} часа',
+ 'hour-short-future-one' => 'след {0} ч',
+ 'hour-short-future-other' => 'след {0} ч',
+ 'hour-short-past-one' => 'преди {0} ч',
+ 'hour-short-past-other' => 'преди {0} ч',
+ 'microsecond-one' => '{0} микросекунда',
+ 'microsecond-other' => '{0} микросекунди',
+ 'millisecond-one' => '{0} милисекунда',
+ 'millisecond-other' => '{0} милисекунди',
+ 'minute-future-one' => 'след {0} минута',
+ 'minute-future-other' => 'след {0} минути',
+ 'minute-narrow-future-one' => 'сл. {0} мин',
+ 'minute-narrow-future-other' => 'сл. {0} мин',
+ 'minute-narrow-past-one' => 'пр. {0} мин',
+ 'minute-narrow-past-other' => 'пр. {0} мин',
+ 'minute-one' => '{0} минута',
+ 'minute-other' => '{0} минути',
+ 'minute-past-one' => 'преди {0} минута',
+ 'minute-past-other' => 'преди {0} минути',
+ 'minute-short-future-one' => 'след {0} мин',
+ 'minute-short-future-other' => 'след {0} мин',
+ 'minute-short-past-one' => 'преди {0} мин',
+ 'minute-short-past-other' => 'преди {0} мин',
+ 'month-future-one' => 'след {0} месец',
+ 'month-future-other' => 'след {0} месеца',
+ 'month-narrow-future-one' => 'сл. {0} м.',
+ 'month-narrow-future-other' => 'сл. {0} м.',
+ 'month-narrow-past-one' => 'пр. {0} м.',
+ 'month-narrow-past-other' => 'пр. {0} м.',
+ 'month-one' => '{0} месец',
+ 'month-other' => '{0} месеца',
+ 'month-past-one' => 'преди {0} месец',
+ 'month-past-other' => 'преди {0} месеца',
+ 'month-short-future-one' => 'сл. {0} м.',
+ 'month-short-future-other' => 'сл. {0} м.',
+ 'month-short-past-one' => 'пр. {0} м.',
+ 'month-short-past-other' => 'пр. {0} м.',
+ 'nanosecond-one' => '{0} наносекунда',
+ 'nanosecond-other' => '{0} наносекунди',
+ 'quarter-future-one' => 'след {0} тримесечие',
+ 'quarter-future-other' => 'след {0} тримесечия',
+ 'quarter-narrow-future-one' => 'сл. {0} трим.',
+ 'quarter-narrow-future-other' => 'сл. {0} трим.',
+ 'quarter-narrow-past-one' => 'пр. {0} трим.',
+ 'quarter-narrow-past-other' => 'пр. {0} трим.',
+ 'quarter-past-one' => 'преди {0} тримесечие',
+ 'quarter-past-other' => 'преди {0} тримесечия',
+ 'quarter-short-future-one' => 'сл. {0} трим.',
+ 'quarter-short-future-other' => 'сл. {0} трим.',
+ 'quarter-short-past-one' => 'пр. {0} трим.',
+ 'quarter-short-past-other' => 'пр. {0} трим.',
+ 'second-future-one' => 'след {0} секунда',
+ 'second-future-other' => 'след {0} секунди',
+ 'second-narrow-future-one' => 'сл. {0} с',
+ 'second-narrow-future-other' => 'сл. {0} с',
+ 'second-narrow-past-one' => 'пр. {0} с',
+ 'second-narrow-past-other' => 'пр. {0} с',
+ 'second-one' => '{0} секунда',
+ 'second-other' => '{0} секунди',
+ 'second-past-one' => 'преди {0} секунда',
+ 'second-past-other' => 'преди {0} секунди',
+ 'second-short-future-one' => 'след {0} с',
+ 'second-short-future-other' => 'след {0} с',
+ 'second-short-past-one' => 'преди {0} с',
+ 'second-short-past-other' => 'преди {0} с',
+ 'week-future-one' => 'след {0} седмица',
+ 'week-future-other' => 'след {0} седмици',
+ 'week-narrow-future-one' => 'сл. {0} седм.',
+ 'week-narrow-future-other' => 'сл. {0} седм.',
+ 'week-narrow-past-one' => 'пр. {0} седм.',
+ 'week-narrow-past-other' => 'пр. {0} седм.',
+ 'week-one' => '{0} седмица',
+ 'week-other' => '{0} седмици',
+ 'week-past-one' => 'преди {0} седмица',
+ 'week-past-other' => 'преди {0} седмици',
+ 'week-short-future-one' => 'след {0} седм.',
+ 'week-short-future-other' => 'след {0} седм.',
+ 'week-short-past-one' => 'преди {0} седм.',
+ 'week-short-past-other' => 'преди {0} седм.',
+ 'year-future-one' => 'след {0} година',
+ 'year-future-other' => 'след {0} години',
+ 'year-narrow-future-one' => 'сл. {0} г.',
+ 'year-narrow-future-other' => 'сл. {0} г.',
+ 'year-narrow-past-one' => 'пр. {0} г.',
+ 'year-narrow-past-other' => 'пр. {0} г.',
+ 'year-one' => '{0} година',
+ 'year-other' => '{0} години',
+ 'year-past-one' => 'преди {0} година',
+ 'year-past-other' => 'преди {0} години',
+ 'year-short-future-one' => 'сл. {0} г.',
+ 'year-short-future-other' => 'сл. {0} г.',
+ 'year-short-past-one' => 'пр. {0} г.',
+ 'year-short-past-other' => 'пр. {0} г.',
+);
diff --git a/MLEB/cldr/CldrNames/CldrNamesBm.php b/MLEB/cldr/CldrNames/CldrNamesBm.php
new file mode 100644
index 00000000..bd826e02
--- /dev/null
+++ b/MLEB/cldr/CldrNames/CldrNamesBm.php
@@ -0,0 +1,336 @@
+<?php
+
+$languageNames = array(
+ 'ak' => 'akankan',
+ 'am' => 'amarikikan',
+ 'ar' => 'larabukan',
+ 'be' => 'biyelorisikan',
+ 'bg' => 'buligarikan',
+ 'bm' => 'bamanakan',
+ 'bn' => 'bɛngalikan',
+ 'cs' => 'cɛkikan',
+ 'de' => 'alimaɲikan',
+ 'el' => 'gɛrɛsikan',
+ 'en' => 'angilɛkan',
+ 'es' => 'esipaɲolkan',
+ 'fa' => 'perisanikan',
+ 'fr' => 'tubabukan',
+ 'ha' => 'awusakan',
+ 'hi' => 'inidikan',
+ 'hu' => 'oŋirikan',
+ 'id' => 'Ɛndonezikan',
+ 'ig' => 'igibokan',
+ 'it' => 'italikan',
+ 'ja' => 'zapɔnekan',
+ 'jv' => 'javanekan',
+ 'km' => 'kambojikan',
+ 'ko' => 'korekan',
+ 'ms' => 'malɛzikan',
+ 'my' => 'birimanikan',
+ 'ne' => 'nepalekan',
+ 'nl' => 'olandekan',
+ 'pa' => 'pɛnijabikan',
+ 'pl' => 'polonekan',
+ 'pt' => 'pɔritigalikan',
+ 'ro' => 'rumanikan',
+ 'ru' => 'irisikan',
+ 'rw' => 'ruwandakan',
+ 'so' => 'somalikan',
+ 'sv' => 'suwɛdikan',
+ 'ta' => 'tamulikan',
+ 'th' => 'tayikan',
+ 'tr' => 'turikikan',
+ 'uk' => 'ukɛrɛnikan',
+ 'ur' => 'urudukan',
+ 'vi' => 'wiyɛtinamukan',
+ 'yo' => 'yorubakan',
+ 'zh' => 'siniwakan',
+ 'zu' => 'zulukan',
+);
+
+$currencyNames = array(
+ 'AED' => 'arabu mara kafoli Diram',
+ 'AOA' => 'angola Kwanza',
+ 'AUD' => 'ositirali Dolar',
+ 'BHD' => 'bareyini Dinar',
+ 'BIF' => 'burundi Fraŋ',
+ 'BWP' => 'bɔtisiwana Pula',
+ 'CAD' => 'kanada Dolar',
+ 'CDF' => 'kongole Fraŋ',
+ 'CHF' => 'suwisi Fraŋ',
+ 'CNY' => 'siniwa Yuwan',
+ 'CVE' => 'capivɛrdi Esekudo',
+ 'DJF' => 'jibuti Fraŋ',
+ 'DZD' => 'alizeri Dinar',
+ 'EGP' => 'eziputi Livri',
+ 'ERN' => 'eritere Nafika',
+ 'ETB' => 'etiopi Bir',
+ 'EUR' => 'ero',
+ 'GBP' => 'angilɛ Livri Siterlingi',
+ 'GHC' => 'gana Sedi',
+ 'GMD' => 'gambi Dalasi',
+ 'GNS' => 'gine Fraŋ',
+ 'INR' => 'Ɛndu Rupi',
+ 'JPY' => 'zapɔne Yɛn',
+ 'KES' => 'keniya Siling',
+ 'KMF' => 'komɔri Fraŋ',
+ 'LRD' => 'liberiya Dolar',
+ 'LSL' => 'lesoto Loti',
+ 'LYD' => 'libi Dinar',
+ 'MAD' => 'marɔku Diram',
+ 'MGA' => 'madagasikari Fraŋ',
+ 'MRO' => 'mɔritani Uguwiya',
+ 'MUR' => 'morisi Rupi',
+ 'MWK' => 'malawi Kwaca',
+ 'MZM' => 'mozanbiki Metikali',
+ 'NAD' => 'namibi Dolar',
+ 'NGN' => 'nizeriya Nɛra',
+ 'RWF' => 'ruwanda Fraŋ',
+ 'SAR' => 'sawudiya Riyal',
+ 'SCR' => 'sesɛli Rupi',
+ 'SDG' => 'sudani Dinar',
+ 'SDP' => 'sudani Livri',
+ 'SHP' => 'Ɛlɛni-Senu Livri',
+ 'SLL' => 'siyeralewɔni Lewɔni',
+ 'SOS' => 'somali Siling',
+ 'STD' => 'sawotome Dobra',
+ 'SZL' => 'swazilandi Lilangeni',
+ 'TND' => 'tunizi Dinar',
+ 'TZS' => 'tanzani Siling',
+ 'UGX' => 'uganda Siling',
+ 'USD' => 'ameriki Dolar',
+ 'XAF' => 'sefa Fraŋ (BEAC)',
+ 'XOF' => 'sefa Fraŋ (BCEAO)',
+ 'ZAR' => 'sudafriki Randi',
+ 'ZMK' => 'zambi Kwaca (1968–2012)',
+ 'ZMW' => 'zambi Kwaca',
+ 'ZWD' => 'zimbabuwe Dolar',
+);
+
+$countryNames = array(
+ 'AD' => 'Andɔr',
+ 'AE' => 'Arabu mara kafoli',
+ 'AF' => 'Afiganistaŋ',
+ 'AG' => 'Antiga-ni-Barbuda',
+ 'AI' => 'Angiya',
+ 'AL' => 'Alibani',
+ 'AM' => 'Arimeni',
+ 'AN' => 'Peyiba ka Antiyi',
+ 'AO' => 'Angola',
+ 'AR' => 'Arizantin',
+ 'AS' => 'Samowa amerikani',
+ 'AT' => 'Otirisi',
+ 'AU' => 'Ositirali',
+ 'AW' => 'Aruba',
+ 'AZ' => 'Azɛrbayjaŋ',
+ 'BA' => 'Bozni-Ɛrizigovini',
+ 'BB' => 'Barbadi',
+ 'BD' => 'Bɛngiladɛsi',
+ 'BE' => 'Bɛliziki',
+ 'BF' => 'Burukina Faso',
+ 'BG' => 'Buligari',
+ 'BH' => 'Bareyini',
+ 'BI' => 'Burundi',
+ 'BJ' => 'Benɛn',
+ 'BM' => 'Bermudi',
+ 'BN' => 'Burinɛyi',
+ 'BO' => 'Bolivi',
+ 'BR' => 'Berezili',
+ 'BS' => 'Bahamasi',
+ 'BT' => 'Butaŋ',
+ 'BW' => 'Bɔtisiwana',
+ 'BY' => 'Belarusi',
+ 'BZ' => 'Belizi',
+ 'CA' => 'Kanada',
+ 'CD' => 'Kongo ka republiki demɔkratiki',
+ 'CF' => 'Santarafiriki',
+ 'CG' => 'Kongo',
+ 'CH' => 'Suwisi',
+ 'CI' => 'Kodiwari',
+ 'CK' => 'Kuki Gun',
+ 'CL' => 'Sili',
+ 'CM' => 'Kameruni',
+ 'CN' => 'Siniwajamana',
+ 'CO' => 'Kolombi',
+ 'CR' => 'Kɔsitarika',
+ 'CU' => 'Kuba',
+ 'CV' => 'Capivɛrdi',
+ 'CY' => 'Cipri',
+ 'CZ' => 'Ceki republiki',
+ 'DE' => 'Alimaɲi',
+ 'DJ' => 'Jibuti',
+ 'DK' => 'Danemarki',
+ 'DM' => 'Dɔminiki',
+ 'DO' => 'Dɔmimiki republiki',
+ 'DZ' => 'Alizeri',
+ 'EC' => 'Ekwatɔr',
+ 'EE' => 'Esetoni',
+ 'EG' => 'Eziputi',
+ 'ER' => 'Eritere',
+ 'ES' => 'Esipaɲi',
+ 'ET' => 'Etiopi',
+ 'FI' => 'Finilandi',
+ 'FJ' => 'Fiji',
+ 'FK' => 'Maluwini Gun',
+ 'FM' => 'Mikironesi',
+ 'FR' => 'Faransi',
+ 'GA' => 'Gabɔŋ',
+ 'GB' => 'Angilɛtɛri',
+ 'GD' => 'Granadi',
+ 'GE' => 'Zeyɔrzi',
+ 'GF' => 'Faransi ka gwiyani',
+ 'GH' => 'Gana',
+ 'GI' => 'Zibralitari',
+ 'GL' => 'Gɔrɔhenelandi',
+ 'GM' => 'Ganbi',
+ 'GN' => 'Gine',
+ 'GP' => 'Gwadelup',
+ 'GQ' => 'Gine ekwatɔri',
+ 'GR' => 'Gɛrɛsi',
+ 'GT' => 'Gwatemala',
+ 'GU' => 'Gwam',
+ 'GW' => 'Gine Bisawo',
+ 'GY' => 'Gwiyana',
+ 'HN' => 'Hɔndirasi',
+ 'HR' => 'Kroasi',
+ 'HT' => 'Ayiti',
+ 'HU' => 'Hɔngri',
+ 'ID' => 'Ɛndonezi',
+ 'IE' => 'Irilandi',
+ 'IL' => 'Isirayeli',
+ 'IN' => 'Ɛndujamana',
+ 'IO' => 'Angilɛ ka ɛndu dugukolo',
+ 'IQ' => 'Iraki',
+ 'IR' => 'Iraŋ',
+ 'IS' => 'Isilandi',
+ 'IT' => 'Itali',
+ 'JM' => 'Zamayiki',
+ 'JO' => 'Zɔrdani',
+ 'JP' => 'Zapɔn',
+ 'KE' => 'Keniya',
+ 'KG' => 'Kirigizisitaŋ',
+ 'KH' => 'Kamboji',
+ 'KI' => 'Kiribati',
+ 'KM' => 'Komɔri',
+ 'KN' => 'Kristɔfo-Senu-ni-Ɲevɛs',
+ 'KP' => 'Kɛɲɛka Kore',
+ 'KR' => 'Worodugu Kore',
+ 'KW' => 'Kowɛti',
+ 'KY' => 'Bama Gun',
+ 'KZ' => 'Kazakistaŋ',
+ 'LA' => 'Layosi',
+ 'LB' => 'Libaŋ',
+ 'LC' => 'Lusi-Senu',
+ 'LI' => 'Lisɛnsitayini',
+ 'LK' => 'Sirilanka',
+ 'LR' => 'Liberiya',
+ 'LS' => 'Lesoto',
+ 'LT' => 'Lituyani',
+ 'LU' => 'Likisanburu',
+ 'LV' => 'Letoni',
+ 'LY' => 'Libi',
+ 'MA' => 'Marɔku',
+ 'MC' => 'Monako',
+ 'MD' => 'Molidavi',
+ 'MG' => 'Madagasikari',
+ 'MH' => 'Marisali Gun',
+ 'MK' => 'Macedɔni',
+ 'ML' => 'Mali',
+ 'MM' => 'Myanimari',
+ 'MN' => 'Moŋoli',
+ 'MP' => 'Kɛɲɛka Mariyani Gun',
+ 'MQ' => 'Maritiniki',
+ 'MR' => 'Mɔritani',
+ 'MS' => 'Moŋsera',
+ 'MT' => 'Malti',
+ 'MU' => 'Morisi',
+ 'MV' => 'Maldivi',
+ 'MW' => 'Malawi',
+ 'MX' => 'Meksiki',
+ 'MY' => 'Malɛzi',
+ 'MZ' => 'Mozanbiki',
+ 'NA' => 'Namibi',
+ 'NC' => 'Kaledoni Koura',
+ 'NE' => 'Nizɛri',
+ 'NF' => 'Nɔrofoliki Gun',
+ 'NG' => 'Nizeriya',
+ 'NI' => 'Nikaragwa',
+ 'NL' => 'Peyiba',
+ 'NO' => 'Nɔriwɛzi',
+ 'NP' => 'Nepali',
+ 'NR' => 'Nawuru',
+ 'NU' => 'Nyuwe',
+ 'NZ' => 'Zelandi Koura',
+ 'OM' => 'Omaŋ',
+ 'PA' => 'Panama',
+ 'PE' => 'Peru',
+ 'PF' => 'Faransi ka polinezi',
+ 'PG' => 'Papuwasi-Gine-Koura',
+ 'PH' => 'Filipini',
+ 'PK' => 'Pakisitaŋ',
+ 'PL' => 'Poloɲi',
+ 'PM' => 'Piyɛri-Senu-ni-Mikelɔŋ',
+ 'PN' => 'Pitikarini',
+ 'PR' => 'Pɔrotoriko',
+ 'PS' => 'Palesitini',
+ 'PT' => 'Pɔritigali',
+ 'PW' => 'Palawu',
+ 'PY' => 'Paraguwayi',
+ 'QA' => 'Katari',
+ 'RE' => 'Reyuɲɔŋ',
+ 'RO' => 'Rumani',
+ 'RU' => 'Irisi',
+ 'RW' => 'Ruwanda',
+ 'SA' => 'Arabiya Sawudiya',
+ 'SB' => 'Salomo Gun',
+ 'SC' => 'Sesɛli',
+ 'SD' => 'Sudaŋ',
+ 'SE' => 'Suwɛdi',
+ 'SG' => 'Sɛngapuri',
+ 'SH' => 'Ɛlɛni Senu',
+ 'SI' => 'Sloveni',
+ 'SK' => 'Slowaki',
+ 'SL' => 'Siyera Lewɔni',
+ 'SM' => 'Marini-Senu',
+ 'SN' => 'Senegali',
+ 'SO' => 'Somali',
+ 'SR' => 'Surinami',
+ 'ST' => 'Sawo Tome-ni-Prinicipe',
+ 'SV' => 'Salivadɔr',
+ 'SY' => 'Siri',
+ 'SZ' => 'Swazilandi',
+ 'TC' => 'Turiki Gun ni Kayiki',
+ 'TD' => 'Cadi',
+ 'TG' => 'Togo',
+ 'TH' => 'Tayilandi',
+ 'TJ' => 'Tajikisitani',
+ 'TK' => 'Tokelo',
+ 'TL' => 'Kɔrɔn Timɔr',
+ 'TM' => 'Turikimenisitani',
+ 'TN' => 'Tunizi',
+ 'TO' => 'Tonga',
+ 'TR' => 'Turiki',
+ 'TT' => 'Trinite-ni-Tobago',
+ 'TV' => 'Tuvalu',
+ 'TW' => 'Tayiwani',
+ 'TZ' => 'Tanzani',
+ 'UA' => 'Ukɛrɛni',
+ 'UG' => 'Uganda',
+ 'US' => 'Ameriki',
+ 'UY' => 'Urugwayi',
+ 'UZ' => 'Uzebekisitani',
+ 'VA' => 'Vatikaŋ',
+ 'VC' => 'Vinisɛn-Senu-ni-Grenadini',
+ 'VE' => 'Venezuwela',
+ 'VG' => 'Angilɛ ka Sungurunnin Gun',
+ 'VI' => 'Ameriki ka Sungurunnin Gun',
+ 'VN' => 'Wiyɛtinamu',
+ 'VU' => 'Vanuwatu',
+ 'WF' => 'Walisi-ni-Futuna',
+ 'WS' => 'Samowa',
+ 'YE' => 'Yemɛni',
+ 'YT' => 'Mayoti',
+ 'ZA' => 'Worodugu Afriki',
+ 'ZM' => 'Zanbi',
+ 'ZW' => 'Zimbabuwe',
+);
diff --git a/MLEB/cldr/CldrNames/CldrNamesBn.php b/MLEB/cldr/CldrNames/CldrNamesBn.php
new file mode 100644
index 00000000..98459380
--- /dev/null
+++ b/MLEB/cldr/CldrNames/CldrNamesBn.php
@@ -0,0 +1,1305 @@
+<?php
+
+$languageNames = array(
+ 'aa' => 'আফার',
+ 'ab' => 'আব্খাজিয়',
+ 'ace' => 'আচিনিয়',
+ 'ach' => 'আকোলী',
+ 'ada' => 'অদাগ্মে',
+ 'ady' => 'আদেগে',
+ 'ae' => 'আবেস্তীয়',
+ 'af' => 'আফ্রিকান্স',
+ 'afh' => 'আফ্রিহিলি',
+ 'agq' => 'এঘেম',
+ 'ain' => 'আইনু',
+ 'ak' => 'আকান',
+ 'akk' => 'আক্কাদিয়ান',
+ 'ale' => 'আলেউত',
+ 'alt' => 'দক্ষিন আলতাই',
+ 'am' => 'আমহারিক',
+ 'an' => 'আর্গোনিজ',
+ 'ang' => 'প্রাচীন ইংরেজী',
+ 'anp' => 'আঙ্গীকা',
+ 'ar' => 'আরবী',
+ 'ar-001' => 'আধুনিক আদর্শ আরবী',
+ 'arc' => 'আরামাইক',
+ 'arn' => 'মাপুচি',
+ 'arp' => 'আরাপাহো',
+ 'arw' => 'আরাওয়াক',
+ 'as' => 'আসামি',
+ 'asa' => 'আসু',
+ 'ast' => 'আস্তুরিয়',
+ 'av' => 'আভেরিক',
+ 'awa' => 'আওয়াধি',
+ 'ay' => 'আয়মারা',
+ 'az' => 'আজারবাইজানী',
+ 'ba' => 'বাশকির',
+ 'bal' => 'বেলুচী',
+ 'ban' => 'বালিনীয়',
+ 'bas' => 'বাসা',
+ 'be' => 'বেলারুশিয়',
+ 'bej' => 'বেজা',
+ 'bem' => 'বেম্বা',
+ 'bez' => 'বেনা',
+ 'bg' => 'বুলগেরিয়',
+ 'bho' => 'ভোজপুরি',
+ 'bi' => 'বিসলামা',
+ 'bik' => 'বিকোল',
+ 'bin' => 'বিনি',
+ 'bla' => 'সিকসিকা',
+ 'bm' => 'বামবারা',
+ 'bn' => 'বাংলা',
+ 'bo' => 'তিব্বতি',
+ 'br' => 'ব্রেটন',
+ 'bra' => 'ব্রাজ',
+ 'brx' => 'বড়ো',
+ 'bs' => 'বসনীয়ান',
+ 'bua' => 'বুরিয়াত',
+ 'bug' => 'বুগিনি',
+ 'byn' => 'ব্লিন',
+ 'ca' => 'কাতালান',
+ 'cad' => 'ক্যাডো',
+ 'car' => 'ক্যারিব',
+ 'cch' => 'আত্সাম',
+ 'ce' => 'চেচেন',
+ 'ceb' => 'চেবুয়ানো',
+ 'cgg' => 'চিগা',
+ 'ch' => 'চামেরো',
+ 'chb' => 'চিবচা',
+ 'chg' => 'চাগাতাই',
+ 'chk' => 'চুকি',
+ 'chm' => 'মারি',
+ 'chn' => 'চিনুক পরিভাষা',
+ 'cho' => 'চক্টো',
+ 'chp' => 'চিপেওয়ান',
+ 'chr' => 'চেরোকী',
+ 'chy' => 'শাইয়েন',
+ 'ckb' => 'সোরানি কুর্দিশ',
+ 'co' => 'কর্সিকান',
+ 'cop' => 'কপটিক',
+ 'cr' => 'ক্রি',
+ 'crh' => 'ক্রিমিয়ান তুর্কি',
+ 'cs' => 'চেক',
+ 'csb' => 'কাশুবিয়ান',
+ 'cu' => 'চার্চ স্লাভিও',
+ 'cv' => 'চুবাস',
+ 'cy' => 'ওয়েলশ',
+ 'da' => 'ডেনিশ',
+ 'dak' => 'ডাকোটা',
+ 'dar' => 'দার্গওয়া',
+ 'dav' => 'তাইতা',
+ 'de' => 'জার্মান',
+ 'de-at' => 'অস্ট্রিয়ান জার্মানি',
+ 'de-ch' => 'সুইস উচ্চ জার্মানি',
+ 'del' => 'ডেলাওয়ের',
+ 'den' => 'স্ল্যাভ',
+ 'dgr' => 'দোগ্রীব',
+ 'din' => 'ডিংকা',
+ 'dje' => 'জার্মা',
+ 'doi' => 'দোগরি',
+ 'dsb' => 'নিম্নতর সোর্বিয়ান',
+ 'dua' => 'দুয়ালা',
+ 'dum' => 'মধ্য ডাচ',
+ 'dv' => 'দিবেহি',
+ 'dyo' => 'জলা-ফনী',
+ 'dyu' => 'ডিউলা',
+ 'dz' => 'জোঙ্গা',
+ 'ebu' => 'এম্বু',
+ 'ee' => 'এয়ে',
+ 'efi' => 'এফিক',
+ 'egy' => 'প্রাচীন মিশরীয়',
+ 'eka' => 'ইকাজুক',
+ 'el' => 'গ্রিক',
+ 'elx' => 'এলামাইট',
+ 'en' => 'ইংরেজি',
+ 'en-au' => 'অস্ট্রেলীয় ইংরেজি',
+ 'en-ca' => 'কানাডীয় ইংরেজি',
+ 'en-gb' => 'ব্রিটিশ ইংরেজি',
+ 'en-us' => 'আমেরিকার ইংরেজি',
+ 'enm' => 'মধ্য ইংরেজি',
+ 'eo' => 'এস্পেরান্তো',
+ 'es' => 'স্প্যানিশ',
+ 'es-419' => 'ল্যাটিন আমেরিকান স্প্যানিশ',
+ 'es-es' => 'ইউরোপীয় স্প্যানিশ',
+ 'es-mx' => 'ম্যাক্সিকান স্প্যানিশ',
+ 'et' => 'এস্তোনীয়',
+ 'eu' => 'বাস্ক',
+ 'ewo' => 'ইওন্ডো',
+ 'fa' => 'ফার্সি',
+ 'fan' => 'ফ্যাঙ্গ',
+ 'fat' => 'ফান্তি',
+ 'ff' => 'ফুলাহ্',
+ 'fi' => 'ফিনিশ',
+ 'fil' => 'ফিলিপিনো',
+ 'fj' => 'ফিজিও',
+ 'fo' => 'ফেরাউনি',
+ 'fon' => 'ফন',
+ 'fr' => 'ফরাসি',
+ 'fr-ca' => 'কানাডীয় ফরাসি',
+ 'fr-ch' => 'সুইস ফরাসি',
+ 'frm' => 'মধ্য ফরাসি',
+ 'fro' => 'প্রাচীন ফরাসি',
+ 'frr' => 'উত্তরাঞ্চলীয় ফ্রিসিয়ান',
+ 'frs' => 'পূর্ব ফ্রিসিয়',
+ 'fur' => 'ফ্রিউলিয়ান',
+ 'fy' => 'পশ্চিম ফ্রিসিয়',
+ 'ga' => 'আইরিশ',
+ 'gaa' => 'গা',
+ 'gag' => 'গাগাউজ',
+ 'gay' => 'গায়ো',
+ 'gba' => 'বায়া',
+ 'gd' => 'স্কটস-গ্যেলিক',
+ 'gez' => 'গীজ',
+ 'gil' => 'গিলবার্টিজ',
+ 'gl' => 'গ্যালিশিয়',
+ 'gmh' => 'মধ্য-উচ্চ জার্মানি',
+ 'gn' => 'গুয়ারানি',
+ 'goh' => 'প্রাচীন উচ্চ জার্মানি',
+ 'gon' => 'গোন্ডি',
+ 'gor' => 'গোরোন্তালো',
+ 'got' => 'গথিক',
+ 'grb' => 'গ্রেবো',
+ 'grc' => 'প্রাচীন গ্রীক',
+ 'gsw' => 'সুইস জার্মান',
+ 'gu' => 'গুজরাটি',
+ 'guz' => 'গুসী',
+ 'gv' => 'ম্যাঙ্কস',
+ 'gwi' => 'গওইচ্’ইন',
+ 'ha' => 'হাউসা',
+ 'hai' => 'হাইডা',
+ 'haw' => 'হাওয়াইয়ান',
+ 'he' => 'হিব্রু',
+ 'hi' => 'হিন্দি',
+ 'hil' => 'হিলিগ্যায়নোন',
+ 'hit' => 'হিট্টিট',
+ 'hmn' => 'হ্‌মোঙ',
+ 'ho' => 'হিরি মোতু',
+ 'hr' => 'ক্রোয়েশীয়',
+ 'hsb' => 'উচ্চ সোর্বিয়ান',
+ 'ht' => 'হাইতিয়ান',
+ 'hu' => 'হাঙ্গেরীয়',
+ 'hup' => 'হুপা',
+ 'hy' => 'আর্মেনিয়',
+ 'hz' => 'হেরেরো',
+ 'ia' => 'ইন্টারলিঙ্গুয়া',
+ 'iba' => 'ইবান',
+ 'id' => 'ইন্দোনেশীয়',
+ 'ie' => 'ইন্টারলিঙ্গ',
+ 'ig' => 'ইগ্‌বো',
+ 'ii' => 'সিচুয়ান য়ি',
+ 'ik' => 'ইনুপিয়াক',
+ 'ilo' => 'ইলোকো',
+ 'inh' => 'ইঙ্গুশ',
+ 'io' => 'ইডো',
+ 'is' => 'আইসল্যান্ডীয়',
+ 'it' => 'ইতালীয়',
+ 'iu' => 'ইনুক্টিটুট',
+ 'ja' => 'জাপানি',
+ 'jbo' => 'লোজবান',
+ 'jgo' => 'গোম্বা',
+ 'jmc' => 'মাকামে',
+ 'jpr' => 'জুদেও ফার্সি',
+ 'jrb' => 'জুদেও আরবি',
+ 'jv' => 'জাভানি',
+ 'ka' => 'জর্জিয়ান',
+ 'kaa' => 'কারা-কাল্পাক',
+ 'kab' => 'কাবাইলে',
+ 'kac' => 'কাচিন',
+ 'kaj' => 'অজ্জু',
+ 'kam' => 'কাম্বা',
+ 'kaw' => 'কাউই',
+ 'kbd' => 'কাবার্ডিয়ান',
+ 'kcg' => 'টাইয়াপ',
+ 'kde' => 'মাকোন্দে',
+ 'kea' => 'কাবুভারদিয়ানু',
+ 'kfo' => 'কোরো',
+ 'kg' => 'কঙ্গো',
+ 'kha' => 'খাশি',
+ 'kho' => 'খোটানিজ',
+ 'khq' => 'কোয়রা চীনি',
+ 'ki' => 'কিকু্ইয়ু',
+ 'kj' => 'কোয়ানিয়ামা',
+ 'kk' => 'কাজাখ',
+ 'kl' => 'ক্যালাল্লিসুট',
+ 'kln' => 'কালেনজিন',
+ 'km' => 'খমের',
+ 'kmb' => 'কিম্বুন্দু',
+ 'kn' => 'কান্নাড়ী',
+ 'ko' => 'কোরিয়ান',
+ 'koi' => 'কমি-পারমিআক',
+ 'kok' => 'কোঙ্কানি',
+ 'kos' => 'কোস্রাইন',
+ 'kpe' => 'ক্‌পেল্লে',
+ 'kr' => 'কানুরি',
+ 'krc' => 'কারচে-বাল্কার',
+ 'krl' => 'কারেলিয়ান',
+ 'kru' => 'কুরুখ',
+ 'ks' => 'কাশ্মীরী',
+ 'ksb' => 'শাম্বালা',
+ 'ksf' => 'বাফিয়া',
+ 'ku' => 'কুর্দি',
+ 'kum' => 'কুমিক',
+ 'kut' => 'কুটেনাই',
+ 'kv' => 'কোমি',
+ 'kw' => 'কর্ণিশ',
+ 'ky' => 'কির্গিজ',
+ 'la' => 'লাটিন',
+ 'lad' => 'লাডিনো',
+ 'lag' => 'লাঙ্গি',
+ 'lah' => 'লান্ডা',
+ 'lam' => 'লাম্বা',
+ 'lb' => 'লুক্সেমবার্গীয়',
+ 'lez' => 'লেজঘিয়ান',
+ 'lg' => 'গান্ডা',
+ 'li' => 'লিম্বুর্গিশ',
+ 'lkt' => 'লাকোটা',
+ 'ln' => 'লিঙ্গালা',
+ 'lo' => 'লাও',
+ 'lol' => 'মোঙ্গো',
+ 'loz' => 'লোজি',
+ 'lt' => 'লিথুয়েনীয়',
+ 'lu' => 'লুবা-কাটাঙ্গা',
+ 'lua' => 'লুবা-লুলুয়া',
+ 'lui' => 'লুইসেনো',
+ 'lun' => 'লুন্ডা',
+ 'luo' => 'লুয়ো',
+ 'lus' => 'লুশাই',
+ 'luy' => 'লুইয়া',
+ 'lv' => 'লাত্‌ভীয়',
+ 'mad' => 'মাদুরেসে',
+ 'mag' => 'মাগাহি',
+ 'mai' => 'মৈথিলি',
+ 'mak' => 'ম্যাকাসার',
+ 'man' => 'ম্যান্ডিঙ্গো',
+ 'mas' => 'মাসাই',
+ 'mdf' => 'মোকশা',
+ 'mdr' => 'ম্যাণ্ডার',
+ 'men' => 'মেন্ডে',
+ 'mer' => 'মেরু',
+ 'mfe' => 'মরিসিয়ান',
+ 'mg' => 'মালাগাসি',
+ 'mga' => 'মধ্য আইরিশ',
+ 'mgh' => 'মাখুয়া-মেত্তো',
+ 'mgo' => 'মেটা',
+ 'mh' => 'মার্শালিজ',
+ 'mi' => 'মাওরি',
+ 'mic' => 'মিকম্যাক',
+ 'min' => 'মিনাঙ্গ্‌কাবাউ',
+ 'mk' => 'ম্যাসিডোনীয়',
+ 'ml' => 'মালায়ালাম',
+ 'mn' => 'মঙ্গোলিয়',
+ 'mnc' => 'মাঞ্চু',
+ 'mni' => 'মণিপুরী',
+ 'moh' => 'মোহাওক',
+ 'mos' => 'মসি',
+ 'mr' => 'মারাঠি',
+ 'ms' => 'মালয়',
+ 'mt' => 'মল্টিয়',
+ 'mua' => 'মুদাঙ্গ',
+ 'mul' => 'বহুগুণিতক ভাষাসমূহ',
+ 'mus' => 'ক্রিক',
+ 'mwl' => 'মিরান্ডিজ',
+ 'mwr' => 'মারোয়ারি',
+ 'my' => 'বর্মি',
+ 'myv' => 'এরজিয়া',
+ 'na' => 'নাউরু',
+ 'nap' => 'নেয়াপোলিটান',
+ 'naq' => 'নামা',
+ 'nb' => 'নরওয়েজিয়ান বোকমাল',
+ 'nd' => 'উত্তর এন্দেবিলি',
+ 'nds' => 'নিম্ন জার্মানি',
+ 'ne' => 'নেপালী',
+ 'new' => 'নেওয়ারি',
+ 'ng' => 'এন্দোঙ্গা',
+ 'nia' => 'নিয়াস',
+ 'niu' => 'নিউয়ান',
+ 'nl' => 'ডাচ',
+ 'nl-be' => 'ফ্লেমিশ',
+ 'nmg' => 'কোয়াসিও',
+ 'nn' => 'নরওয়েজীয়ান নিনর্স্ক',
+ 'no' => 'নরওয়েজীয়',
+ 'nog' => 'নোগাই',
+ 'non' => 'প্রাচীন নর্স',
+ 'nqo' => 'এন’কো',
+ 'nr' => 'দক্ষিণ এনডেবেলে',
+ 'nso' => 'উত্তরাঞ্চলীয় সোথো',
+ 'nus' => 'নুয়ার',
+ 'nv' => 'নাভাজো',
+ 'nwc' => 'প্রাচীন নেওয়ারী',
+ 'ny' => 'নায়াঞ্জা',
+ 'nym' => 'ন্যায়ামওয়েজি',
+ 'nyn' => 'ন্যায়াঙ্কোলে',
+ 'nyo' => 'ন্যোরো',
+ 'nzi' => 'এন্.জিমা',
+ 'oc' => 'অক্সিটান',
+ 'oj' => 'ওজিবওয়া',
+ 'om' => 'অরোমো',
+ 'or' => 'ওড়িয়া',
+ 'os' => 'ওসেটিক',
+ 'osa' => 'ওসেজ',
+ 'ota' => 'অটোমান তুর্কি',
+ 'pa' => 'পাঞ্জাবী',
+ 'pag' => 'পাঙ্গাসিনান',
+ 'pal' => 'পাহ্লাভি',
+ 'pam' => 'পাম্পাঙ্গা',
+ 'pap' => 'পাপিয়ামেন্টো',
+ 'pau' => 'পালায়ুয়ান',
+ 'peo' => 'প্রাচীন ফার্সি',
+ 'phn' => 'ফোনিশীয়ান',
+ 'pi' => 'পালি',
+ 'pl' => 'পোলিশ',
+ 'pon' => 'পোহ্নপেইয়ান',
+ 'pro' => 'প্রাচীন প্রোভেনসাল',
+ 'ps' => 'পাশ্তু',
+ 'pt' => 'পর্তুগীজ',
+ 'pt-br' => 'ব্রাজিলের পর্তুগীজ',
+ 'pt-pt' => 'ইউরোপের পর্তুগীজ',
+ 'qu' => 'কেচুয়া',
+ 'quc' => 'কি‘চে',
+ 'raj' => 'রাজস্থানী',
+ 'rap' => 'রাপানুই',
+ 'rar' => 'রারোটোংগান',
+ 'rm' => 'রোমান্স',
+ 'rn' => 'রুন্দি',
+ 'ro' => 'রোমানীয়',
+ 'ro-md' => 'মলদাভিয়',
+ 'rof' => 'রম্বো',
+ 'rom' => 'রোমানি',
+ 'ru' => 'রুশ',
+ 'rup' => 'আরোমানিয়',
+ 'rw' => 'কিনয়ারোয়ান্ডা',
+ 'rwk' => 'রাওয়া',
+ 'sa' => 'সংষ্কৃত',
+ 'sad' => 'স্যান্ডাওয়ে',
+ 'sah' => 'ইয়াকুট',
+ 'sam' => 'সামারিটান আরামিক',
+ 'saq' => 'সামবুরু',
+ 'sas' => 'সাসাক',
+ 'sat' => 'সাঁওতালি',
+ 'sbp' => 'সাঙ্গু',
+ 'sc' => 'সার্ডিনিয়ান',
+ 'scn' => 'সিসিলিয়ান',
+ 'sco' => 'স্কটস',
+ 'sd' => 'সিন্ধি',
+ 'se' => 'উত্তরাঞ্চলীয় সামি',
+ 'seh' => 'সেনা',
+ 'sel' => 'সেল্কুপ',
+ 'ses' => 'কোয়রাবেনো সেন্নী',
+ 'sg' => 'সাঙ্গো',
+ 'sga' => 'প্রাচীন আইরিশ',
+ 'sh' => 'সার্বো-ক্রোয়েশিয়',
+ 'shi' => 'তাচেলহিত',
+ 'shn' => 'শান',
+ 'si' => 'সিংহলী',
+ 'sid' => 'সিডামো',
+ 'sk' => 'স্লোভাক',
+ 'sl' => 'স্লোভেনীয়',
+ 'sm' => 'সামোয়ান',
+ 'sma' => 'দক্ষিণাঞ্চলীয় সামি',
+ 'smj' => 'লুলে সামি',
+ 'smn' => 'ইনারি সামি',
+ 'sms' => 'স্কোল্ট সামি',
+ 'sn' => 'শোনা',
+ 'snk' => 'সোনিঙ্কে',
+ 'so' => 'সোমালী',
+ 'sog' => 'সোগডিয়ান',
+ 'sq' => 'আলবেনীয়',
+ 'sr' => 'সার্বীয়',
+ 'srn' => 'স্রানান টোঙ্গো',
+ 'srr' => 'সেরের',
+ 'ss' => 'সোয়াতি',
+ 'st' => 'দক্ষিন সোথো',
+ 'su' => 'সুদানী',
+ 'suk' => 'সুকুমা',
+ 'sus' => 'সুসু',
+ 'sux' => 'সুমেরীয়',
+ 'sv' => 'সুইডিশ',
+ 'sw' => 'সোয়াহিলি',
+ 'swb' => 'কমোরিয়ান',
+ 'swc' => 'কঙ্গো সোয়াহিলি',
+ 'syc' => 'প্রাচীন সিরিও',
+ 'syr' => 'সিরিয়াক',
+ 'ta' => 'তামিল',
+ 'te' => 'তেলেগু',
+ 'tem' => 'টাইম্নে',
+ 'teo' => 'তেসো',
+ 'ter' => 'তেরেনো',
+ 'tet' => 'তেতুম',
+ 'tg' => 'তাজিক',
+ 'th' => 'থাই',
+ 'ti' => 'তিগরিনিয়া',
+ 'tig' => 'টাইগ্রে',
+ 'tiv' => 'টিভ',
+ 'tk' => 'তুর্কমেনী',
+ 'tkl' => 'টোকেলাউ',
+ 'tl' => 'তাগালগ',
+ 'tlh' => 'ক্লিঙ্গন',
+ 'tli' => 'ত্লিঙ্গিট',
+ 'tmh' => 'তামাশেক',
+ 'tn' => 'সোয়ানা',
+ 'to' => 'টোঙ্গান',
+ 'tog' => 'নায়াসা টোঙ্গা',
+ 'tpi' => 'টোক পিসিন',
+ 'tr' => 'তুর্কী',
+ 'ts' => 'সঙ্গা',
+ 'tsi' => 'সিমশিয়ান',
+ 'tt' => 'তাতার',
+ 'tum' => 'তুম্বুকা',
+ 'tvl' => 'টুভালু',
+ 'tw' => 'টোয়াই',
+ 'twq' => 'তাসাওয়াক',
+ 'ty' => 'তাহিতিয়ান',
+ 'tyv' => 'টুভিনিয়ান',
+ 'tzm' => 'সেন্ট্রাল আটলাস তামাজিগাত',
+ 'udm' => 'উডমুর্ট',
+ 'ug' => 'উইঘুর',
+ 'uga' => 'উগারিটিক',
+ 'uk' => 'ইউক্রেনীয়',
+ 'umb' => 'উম্বুন্দু',
+ 'und' => 'অজানা ভাষা',
+ 'ur' => 'উর্দু',
+ 'uz' => 'উজবেকীয়',
+ 'vai' => 'ভাই',
+ 've' => 'ভেন্ডা',
+ 'vi' => 'ভিয়েতনামী',
+ 'vo' => 'ভোলাপুক',
+ 'vot' => 'ভোটিক',
+ 'vun' => 'ভুঞ্জো',
+ 'wa' => 'ওয়ালুন',
+ 'wal' => 'ওয়ালামো',
+ 'war' => 'ওয়ারে',
+ 'was' => 'ওয়াশো',
+ 'wo' => 'উওলোফ',
+ 'xal' => 'কাল্মইক',
+ 'xh' => 'জোসা',
+ 'xog' => 'সোগা',
+ 'yao' => 'ইয়াও',
+ 'yap' => 'ইয়াপেসে',
+ 'yi' => 'য়িদ্দিশ',
+ 'yo' => 'ইওরুবা',
+ 'yue' => 'ক্যানটোনীজ',
+ 'za' => 'ঝু্য়াঙ',
+ 'zap' => 'জাপোটেক',
+ 'zbl' => 'চিত্র ভাষা',
+ 'zen' => 'জেনাগা',
+ 'zgh' => 'আদর্শ মরক্কোন তামাজিগাত',
+ 'zh' => 'চীনা',
+ 'zh-hans' => 'সরলীকৃত চীনা',
+ 'zh-hant' => 'ঐতিহ্যবাহি চীনা',
+ 'zu' => 'জুলু',
+ 'zun' => 'জুনি',
+ 'zxx' => 'ভাষাভিত্তিক বিষয়বস্তু নেই',
+ 'zza' => 'জাজা',
+);
+
+$currencyNames = array(
+ 'ADP' => 'এ্যান্ডোরান পেসেতা',
+ 'AED' => 'সংযুক্ত আরব আমিরাত দিরহাম',
+ 'AFA' => 'আফগানি (১৯২৭–২০০২)',
+ 'AFN' => 'আফগান আফগানি',
+ 'ALL' => 'আলবেনিয়ান লেক',
+ 'AMD' => 'আরমেনিয়ান দ্রাম',
+ 'ANG' => 'নেদারল্যান্ড এ্যান্টিলিয়ান গুল্ডের',
+ 'AOA' => 'এ্যাঙ্গোলান কওয়ানজা',
+ 'AOK' => 'এ্যাঙ্গোলান কওয়ানজা (১৯৭৭–১৯৯০)',
+ 'AON' => 'এ্যাঙ্গোলান নতুন কওয়ানজা (১৯৯৫–২০০০)',
+ 'AOR' => 'এ্যাঙ্গোলান কওয়ানজা (১৯৯৫–১৯৯৯)',
+ 'ARA' => 'আর্জেন্টিনা অস্ট্রাল',
+ 'ARP' => 'আর্জেন্টিনা পেসো (১৯৮৩–১৯৮৫)',
+ 'ARS' => 'আর্জেন্টিনা পেসো',
+ 'ATS' => 'অস্ট্রিয়ান শিলিং',
+ 'AUD' => 'অস্ট্রেলিয়ান ডলার',
+ 'AWG' => 'আরুবা গিল্ডার',
+ 'AZM' => 'আজারবাইজান মানাত (১৯৯৩–২০০৬)',
+ 'AZN' => 'আজারবাইজান মানাত',
+ 'BAD' => 'বসনিয়া এবং হার্জেগোভিনা দিনার',
+ 'BAM' => 'বসনিয়া এবং হার্জেগোভিনা মার্ক',
+ 'BBD' => 'বার্বেডোজ ডলার',
+ 'BDT' => 'বাংলাদেশী টাকা',
+ 'BEC' => 'বেলজিয়ান ফ্রাঙ্ক (রূপান্তরযোগ্য)',
+ 'BEF' => 'বেলজিয়ান ফ্রাঙ্ক',
+ 'BEL' => 'বেলজিয়ান ফ্রাঙ্ক (আর্থিক)',
+ 'BGL' => 'বুলগেরীয় হার্ড লেভ',
+ 'BGN' => 'বুলগেরীয় নিউ লেভ',
+ 'BHD' => 'বাহরাইনি দিনার',
+ 'BIF' => 'বুরুন্ডি ফ্রাঙ্ক',
+ 'BMD' => 'বারমিউডান ডলার',
+ 'BND' => 'ব্রুনেই ডলার',
+ 'BOB' => 'বলিভিয়ানো',
+ 'BOP' => 'বলিভিয়ান পেসো',
+ 'BOV' => 'বলিভিয়ান মভডোল',
+ 'BRB' => 'ব্রাজিলিয়ান ক্রুজেয়রোনোভো (১৯৬৭–১৯৮৬)',
+ 'BRC' => 'ব্রাজিলিয়ান ক্রুজেইডাউ',
+ 'BRE' => 'ব্রাজিলিয়ান ক্রুজেয়রো (১৯৯০–১৯৯৩)',
+ 'BRL' => 'ব্রাজিলিয়ান রিয়েল',
+ 'BRN' => 'ব্রাজিলিয়ান ক্রুজেইডো নোভো',
+ 'BRR' => 'ব্রাজিলিয়ান ক্রুজেয়রো',
+ 'BSD' => 'বাহামিয়ান ডলার',
+ 'BTN' => 'ভুটানি এনগুল্ট্রুম',
+ 'BUK' => 'বর্মি কিয়াৎ',
+ 'BWP' => 'বতসোয়ানা পুলা',
+ 'BYB' => 'বেলারুশিয়ান নিউ রুবেল (১৯৯৪–১৯৯৯)',
+ 'BYR' => 'বেলারুশিয়ান রুবেল',
+ 'BZD' => 'বেলিজ ডলার',
+ 'CAD' => 'কানাডিয়ান ডলার',
+ 'CDF' => 'কঙ্গোলিস ফ্র্যাঙ্ক',
+ 'CHE' => 'সুইজারল্যান্ড ইউরো',
+ 'CHF' => 'সুইস ফ্রাঙ্ক',
+ 'CHW' => 'সুইজারল্যান্ড ফ্রাঙ্ক',
+ 'CLF' => 'চিলিয়ান উনিদাদেস দি ফোমেন্তো',
+ 'CLP' => 'চিলি পেসো',
+ 'CNY' => 'চীনা য়ুয়ান',
+ 'COP' => 'কলোম্বিয়ান পেসো',
+ 'COU' => 'উনিদাদ দি ভ্যালোর রিয়েল',
+ 'CRC' => 'কোস্টা রিকা কোলোন',
+ 'CSD' => 'প্রাচীন সারবিয়ান দিনার',
+ 'CSK' => 'চেকোস্লোভাক হার্ড কোরুনা',
+ 'CUC' => 'কিউবান রূপান্তরযোগ্য পেসো',
+ 'CUP' => 'কিউবান পেসো',
+ 'CVE' => 'কেপ ভার্দে এসকুডো',
+ 'CYP' => 'সাইপ্রাস পাউন্ড',
+ 'CZK' => 'চেকোস্লোভাক কোরুনা',
+ 'DDM' => 'পূর্ব জার্মান মার্ক',
+ 'DEM' => 'ডয়চ্ মার্ক',
+ 'DJF' => 'জিবুতি ফ্রাঙ্ক',
+ 'DKK' => 'ড্যানিশ ক্রৌন',
+ 'DOP' => 'ডোমিনিকান পেসো',
+ 'DZD' => 'আলজেরীয় দিনার',
+ 'ECS' => 'ইকুয়াডোর সুক্রে',
+ 'ECV' => 'ইকুয়াডোর উনিদাদেস দি ভেলর কনসতান্তে (ইউভিসি)',
+ 'EEK' => 'এস্তোনিয়া ক্রুনি',
+ 'EGP' => 'মিশরীয় পাউন্ড',
+ 'ERN' => 'এরিট্রিয়েন নাকফা',
+ 'ESA' => 'স্প্যানিশ পেসেতা (একই হিসাব)',
+ 'ESB' => 'স্প্যানিশ পেসেতা (রূপান্তরযোগ্য হিসাব)',
+ 'ESP' => 'স্প্যানিশ পেসেতা',
+ 'ETB' => 'ইথিওপিয়ান বির',
+ 'EUR' => 'ইউরো',
+ 'FIM' => 'ফিনিস মার্কা',
+ 'FJD' => 'ফিজি ডলার',
+ 'FKP' => 'ফকল্যান্ড দ্বীপপুঞ্জ পাউন্ড',
+ 'FRF' => 'ফরাসি ফ্রাঙ্ক',
+ 'GBP' => 'ব্রিটিশ পাউন্ড স্টার্লিং',
+ 'GEK' => 'জর্জিয়ান কুপন লারিট',
+ 'GEL' => 'জর্জিয়ান লারি',
+ 'GHC' => 'ঘানা সেডি (১৯৭৯–২০০৭)',
+ 'GHS' => 'ঘানা সেডি',
+ 'GIP' => 'জিব্রাল্টার পাউন্ড',
+ 'GMD' => 'গাম্বিয়া ডালাসি',
+ 'GNF' => 'গিনি ফ্রাঙ্ক',
+ 'GNS' => 'গিনি সাইলি',
+ 'GQE' => 'ইকুয়েটোরিয়াল গিনি ইকুয়িলি',
+ 'GRD' => 'গ্রীক দ্রাচমা',
+ 'GTQ' => 'গুয়াতেমালা কুয়েৎজাল',
+ 'GWE' => 'পর্তুগিজ গিনি এসকুডো',
+ 'GWP' => 'গিনি বিসাউ পেসো',
+ 'GYD' => 'গাইয়েনা ডলার',
+ 'HKD' => 'হংকং ডলার',
+ 'HNL' => 'হন্ডুরাস লেম্পিরা',
+ 'HRD' => 'ক্রোয়েশিয়ান দিনার',
+ 'HRK' => 'ক্রোয়েশিয়ান কুনা',
+ 'HTG' => 'হাইতি গৌর্দে',
+ 'HUF' => 'হাঙ্গেরিয়ান ফোরিন্ট',
+ 'IDR' => 'ইন্দোনেশিয়ান রুপিয়াহ',
+ 'IEP' => 'ইরিশ পাউন্ড',
+ 'ILP' => 'ইস্রাইলি পাউন্ড',
+ 'ILS' => 'ইস্রাইলি নতুন শেকেল',
+ 'INR' => 'ভারতীয় রুপি',
+ 'IQD' => 'ইরাকি দিনার',
+ 'IRR' => 'ইরানিয়ান রিয়াল',
+ 'ISK' => 'আইসল্যান্ড ক্রৌন',
+ 'ITL' => 'ইতালীয় লিরা',
+ 'JMD' => 'জ্যামাইকান ডলার',
+ 'JOD' => 'জর্ডানিয়ান দিনার',
+ 'JPY' => 'জাপানি ইয়েন',
+ 'KES' => 'কেনিয়ান শিলিং',
+ 'KGS' => 'কিরগিজস্তান সোম',
+ 'KHR' => 'কম্বোডিয়ান রিয়েল',
+ 'KMF' => 'কম্বোরো ফ্রাঙ্ক',
+ 'KPW' => 'উত্তর কোরিয়ার ওন',
+ 'KRW' => 'দক্ষিণ কোরিয়ান ওন',
+ 'KWD' => 'কুয়েতি দিনার',
+ 'KYD' => 'কেম্যান দ্বীপপুঞ্জের ডলার',
+ 'KZT' => 'কাজাক্সটান টেঙ্গে',
+ 'LAK' => 'লেউশান কিপ',
+ 'LBP' => 'লেবানিজ পাউন্ড',
+ 'LKR' => 'শ্রীলঙ্কান রুপি',
+ 'LRD' => 'লাইবেরিয়ান ডলার',
+ 'LSL' => 'লেসুটু লোটি',
+ 'LTL' => 'লিথুইনিয়ান লিটা',
+ 'LTT' => 'লিথুইনিয়ান টালোন্যাস',
+ 'LUC' => 'লুক্সেমবার্গ রুপান্তযোগ্য ফ্রাঙ্ক',
+ 'LUF' => 'লুক্সেমবার্গ ফ্রাঙ্ক',
+ 'LUL' => 'লুক্সেমবার্গ ফাইনেনশিয়াল ফ্রাঙ্ক',
+ 'LVL' => 'ল্যাটভিয়ান ল্যাট্‌স',
+ 'LVR' => 'ল্যাটভিয়ান রুবল',
+ 'LYD' => 'লিবিয়ান ডলার',
+ 'MAD' => 'মোরোক্কান দিরহাম',
+ 'MAF' => 'মোরোক্কান ফ্রাঙ্ক',
+ 'MDL' => 'মোল্ডোভান লেয়ু',
+ 'MGA' => 'মাদাগাস্কার আরিয়ারি',
+ 'MGF' => 'মাদাগাস্কার ফ্রাঙ্ক',
+ 'MKD' => 'ম্যাসেডোনিয়ান দিনার',
+ 'MLF' => 'মালি ফ্রাঙ্ক',
+ 'MMK' => 'মায়ানমার কিয়াত',
+ 'MNT' => 'মঙ্গোলিয়ান তুগরিক',
+ 'MOP' => 'ম্যাক্যাও পাটাকা',
+ 'MRO' => 'মৌরিতানিয়ান ওউগুইয়া',
+ 'MTL' => 'মাল্টা লিরা',
+ 'MTP' => 'মাল্টা পাউন্ড',
+ 'MUR' => 'মৌরিতানিয়ান রুপি',
+ 'MVR' => 'মালদিভিয়ান রুফিয়া',
+ 'MWK' => 'মালাউইয়ান কওয়াচ',
+ 'MXN' => 'ম্যাক্সিকান পেসো',
+ 'MXP' => 'ম্যাক্সিকান সিলভার পেসো (১৮৬১–১৯৯২)',
+ 'MXV' => 'মেক্সিকান উনিদাদ দি ইনভার্সান (UDI)',
+ 'MYR' => 'মালয়েশিয়ান রিঙ্গিৎ',
+ 'MZE' => 'মোজাম্বিক এসকুডো',
+ 'MZM' => 'প্রাচীন মোজাম্বিক মেটিকেল',
+ 'MZN' => 'মোজাম্বিক মেটিকেল',
+ 'NAD' => 'নামিবিয়া ডলার',
+ 'NGN' => 'নাইজেরিয়ান নায়রা',
+ 'NIC' => 'নিকারাগুয়ান কর্ডোবা (১৯৮৮–১৯৯১)',
+ 'NIO' => 'নিকারাগুয়ান কর্ডোবা',
+ 'NLG' => 'নেদারল্যান্ড গুল্ডের',
+ 'NOK' => 'নরওয়ে ক্রৌন',
+ 'NPR' => 'নেপালি রুপি',
+ 'NZD' => 'নিউজিল্যান্ড ডলার',
+ 'OMR' => 'ওমানি রিয়াল',
+ 'PAB' => 'পানামা বেলবোয়া',
+ 'PEI' => 'পেরুভিয়ান ইন্তি',
+ 'PEN' => 'পেরুভিয়ান সোল নুয়েভো',
+ 'PES' => 'পেরুভিয়ান সোল',
+ 'PGK' => 'পাপুয়া নিউ গিনিয়ান কিনা',
+ 'PHP' => 'ফিলিপাইন পেসো',
+ 'PKR' => 'পাকিস্তানি রুপি',
+ 'PLN' => 'পোলিশ জ্লোটি',
+ 'PLZ' => 'পোলিশ জ্লোটি (১৯৫০–১৯৯৫)',
+ 'PTE' => 'পর্তুগিজ এসকুডো',
+ 'PYG' => 'প্যারগুয়ান',
+ 'QAR' => 'কাতার রিয়্যাল',
+ 'RHD' => 'রোডেশিয়ান ডলার',
+ 'ROL' => 'প্রাচীন রুমানিয়া লেয়ু',
+ 'RON' => 'রুমানিয়া লেয়ু',
+ 'RSD' => 'সারবিয়ান দিনার',
+ 'RUB' => 'রাশিয়ান রুবেল',
+ 'RUR' => 'রাশিয়ান রুবল (১৯৯১–১৯৯৮)',
+ 'RWF' => 'রুয়ান্ডান ফ্রাঙ্ক',
+ 'SAR' => 'সৌদি রিয়্যাল',
+ 'SBD' => 'সলোমন দ্বীপপুঞ্জ ডলার',
+ 'SCR' => 'সেয়চেল্লোইস রুপি',
+ 'SDD' => 'প্রাচীন সুদানি দিনার',
+ 'SDG' => 'সুদানি পাউন্ড',
+ 'SDP' => 'প্রাচীন সুদানি পাউন্ড',
+ 'SEK' => 'সুইডিশ ক্রোনা',
+ 'SGD' => 'সিঙ্গাপুর ডলার',
+ 'SHP' => 'সেন্ট হেলেনা পাউন্ড',
+ 'SIT' => 'স্লোভানিয়া টোলার',
+ 'SKK' => 'স্লোভাক কোরুনা',
+ 'SLL' => 'সিয়েরালিয়ন লিয়ন',
+ 'SOS' => 'সোমালি শিলিং',
+ 'SRD' => 'সুরিনাম ডলার',
+ 'SRG' => 'সুরিনাম গিল্ডার',
+ 'SSP' => 'দক্ষিণ সুদানি পাউন্ড',
+ 'STD' => 'সাও টোমে এবং প্রিন্সিপে ডোবরা',
+ 'SUR' => 'সোভিয়েত রুবল',
+ 'SVC' => 'এল স্যালভোডোর কোলোন',
+ 'SYP' => 'সিরিয়ান পাউন্ড',
+ 'SZL' => 'সোয়াজিল্যান্ড লিলাঙ্গেনি',
+ 'THB' => 'থাই বাত',
+ 'TJR' => 'তাজিকিস্তান রুবল',
+ 'TJS' => 'তাজিকিস্তান সোমোনি',
+ 'TMM' => 'তুর্কমেনিস্টানি মানাত',
+ 'TMT' => 'তুর্কমেনিস্তান নতুন মানত',
+ 'TND' => 'তিউনেশিয়ান দিনার',
+ 'TOP' => 'টোঙ্গা পা’আঙ্গা',
+ 'TPE' => 'তিমুর এসকুডো',
+ 'TRL' => 'প্রাচীন তুর্কি লিরা',
+ 'TRY' => 'তুর্কি লিরা',
+ 'TTD' => 'ত্রিনিদাদ এবং টোবাগো ডলার',
+ 'TWD' => 'নতুন তাইওয়ান ডলার',
+ 'TZS' => 'তাঞ্জনিয়া শিলিং',
+ 'UAH' => 'ইউক্রেইন হৃভনিয়া',
+ 'UAK' => 'ইউক্রেইন কার্বোভ্যান্টস',
+ 'UGS' => 'উগান্ডান শিলিং (১৯৬৬–১৯৮৭)',
+ 'UGX' => 'উগান্ডান শিলিং',
+ 'USD' => 'মার্কিন ডলার',
+ 'USN' => 'মার্কিন ডলার (পরবর্তী দিন)',
+ 'USS' => 'মার্কিন ডলার (একই দিন)',
+ 'UYI' => 'উরুগুয়ায়ান পেসো এন উনিদাদেস ইনডেক্সেডাস',
+ 'UYP' => 'উরুগুয়ে পেসো (১৯৭৫–১৯৯৩)',
+ 'UYU' => 'উরুগুয়ে পেসো',
+ 'UZS' => 'উজবেকিস্তানি সোম',
+ 'VEB' => 'ভেনিজুয়েলান বলিভার (১৮৭১–২০০৮)',
+ 'VEF' => 'ভেনিজুয়েলীয় বলিভার',
+ 'VND' => 'ভিয়েতনামি ডঙ্গ',
+ 'VUV' => 'ভানুয়াতু ভাতু',
+ 'WST' => 'সামোয়ান টালা',
+ 'XAF' => 'সিএফএ ফ্র্যাঙ্ক বিইএসি',
+ 'XAG' => 'সিলভার',
+ 'XAU' => 'গোল্ড',
+ 'XBB' => 'ইউরোপীয় আর্থিক একক',
+ 'XCD' => 'পূর্ব ক্যারাবিয়ান ডলার',
+ 'XEU' => 'ইউরোপীয় মুদ্রা একক',
+ 'XFO' => 'ফরাসি গোল্ড ফ্রাঙ্ক',
+ 'XFU' => 'ফরাসি ইউআইসি - ফ্রাঙ্ক',
+ 'XOF' => 'সিএফএ ফ্র্যাঙ্ক বিসিইএও',
+ 'XPD' => 'প্যালেডিয়াম',
+ 'XPF' => 'সিএফপি ফ্র্যাঙ্ক',
+ 'XPT' => 'প্লাটিনাম',
+ 'XXX' => 'অজানা মুদ্রা',
+ 'YDD' => 'ইয়েমেনি দিনার',
+ 'YER' => 'ইয়েমেনি রিয়াল',
+ 'YUD' => 'যুগোশ্লাভিয় হার্ড দিনার',
+ 'YUM' => 'যুগোশ্লাভিয় নোভি দিনার',
+ 'YUN' => 'যুগোশ্লাভিয় রুপান্তরযোগ্য দিনার',
+ 'ZAL' => 'দক্ষিণ আফ্রিকান র‌্যান্ড',
+ 'ZAR' => 'দক্ষিণ আফ্রিকান রেন্ড',
+ 'ZMK' => 'জাম্বিয়ান কওয়াচা (১৯৬৮–২০১২)',
+ 'ZMW' => 'জাম্বিয়ান কওয়াচা',
+ 'ZRN' => 'জাইরিয়ান নিউ জাইরে',
+ 'ZRZ' => 'জাইরিয়ান জাইরে',
+ 'ZWD' => 'জিম্বাবুয়ে ডলার (১৯৮০–২০০৮)',
+ 'ZWL' => 'জিম্বাবুয়ে ডলার (২০০৯)',
+ 'ZWR' => 'জিম্বাবুয়ে ডলার (২০০৮)',
+);
+
+$currencySymbols = array(
+ 'AED' => 'AED',
+ 'AFN' => 'AFN',
+ 'ALL' => 'ALL',
+ 'AMD' => 'AMD',
+ 'ANG' => 'ANG',
+ 'AOA' => 'AOA',
+ 'ARS' => 'ARS',
+ 'AUD' => 'A$',
+ 'AWG' => 'AWG',
+ 'AZN' => 'AZN',
+ 'BAM' => 'BAM',
+ 'BBD' => 'BBD',
+ 'BDT' => '৳',
+ 'BGN' => 'BGN',
+ 'BHD' => 'BHD',
+ 'BIF' => 'BIF',
+ 'BMD' => 'BMD',
+ 'BND' => 'BND',
+ 'BOB' => 'BOB',
+ 'BRL' => 'R$',
+ 'BSD' => 'BSD',
+ 'BTN' => 'BTN',
+ 'BWP' => 'BWP',
+ 'BYR' => 'BYR',
+ 'BZD' => 'BZD',
+ 'CAD' => 'CA$',
+ 'CDF' => 'CDF',
+ 'CHF' => 'CHF',
+ 'CLP' => 'CLP',
+ 'CNY' => 'CN¥',
+ 'COP' => 'COP',
+ 'CRC' => 'CRC',
+ 'CUC' => 'CUC',
+ 'CUP' => 'CUP',
+ 'CVE' => 'CVE',
+ 'CZK' => 'CZK',
+ 'DJF' => 'DJF',
+ 'DKK' => 'DKK',
+ 'DOP' => 'DOP',
+ 'DZD' => 'DZD',
+ 'EGP' => 'EGP',
+ 'ERN' => 'ERN',
+ 'ETB' => 'ETB',
+ 'EUR' => '€',
+ 'FJD' => 'FJD',
+ 'FKP' => 'FKP',
+ 'GBP' => '£',
+ 'GEL' => 'GEL',
+ 'GHS' => 'GHS',
+ 'GIP' => 'GIP',
+ 'GMD' => 'GMD',
+ 'GNF' => 'GNF',
+ 'GTQ' => 'GTQ',
+ 'GYD' => 'GYD',
+ 'HKD' => 'HK$',
+ 'HNL' => 'HNL',
+ 'HRK' => 'HRK',
+ 'HTG' => 'HTG',
+ 'HUF' => 'HUF',
+ 'IDR' => 'IDR',
+ 'ILS' => '₪',
+ 'INR' => '₹',
+ 'IQD' => 'IQD',
+ 'IRR' => 'IRR',
+ 'ISK' => 'ISK',
+ 'JMD' => 'JMD',
+ 'JOD' => 'JOD',
+ 'JPY' => 'JP¥',
+ 'KES' => 'KES',
+ 'KGS' => 'KGS',
+ 'KHR' => 'KHR',
+ 'KMF' => 'KMF',
+ 'KPW' => 'KPW',
+ 'KRW' => '₩',
+ 'KWD' => 'KWD',
+ 'KYD' => 'KYD',
+ 'KZT' => 'KZT',
+ 'LAK' => 'LAK',
+ 'LBP' => 'LBP',
+ 'LKR' => 'LKR',
+ 'LRD' => 'LRD',
+ 'LTL' => 'LTL',
+ 'LVL' => 'LVL',
+ 'LYD' => 'LYD',
+ 'MAD' => 'MAD',
+ 'MDL' => 'MDL',
+ 'MGA' => 'MGA',
+ 'MKD' => 'MKD',
+ 'MMK' => 'MMK',
+ 'MNT' => 'MNT',
+ 'MOP' => 'MOP',
+ 'MRO' => 'MRO',
+ 'MUR' => 'MUR',
+ 'MVR' => 'MVR',
+ 'MWK' => 'MWK',
+ 'MXN' => 'MX$',
+ 'MYR' => 'MYR',
+ 'MZN' => 'MZN',
+ 'NAD' => 'NAD',
+ 'NGN' => 'NGN',
+ 'NIO' => 'NIO',
+ 'NOK' => 'NOK',
+ 'NPR' => 'NPR',
+ 'NZD' => 'NZ$',
+ 'OMR' => 'OMR',
+ 'PAB' => 'PAB',
+ 'PEN' => 'PEN',
+ 'PGK' => 'PGK',
+ 'PHP' => 'PHP',
+ 'PKR' => 'PKR',
+ 'PLN' => 'PLN',
+ 'PYG' => 'PYG',
+ 'QAR' => 'QAR',
+ 'RON' => 'RON',
+ 'RSD' => 'RSD',
+ 'RUB' => 'RUB',
+ 'RWF' => 'RWF',
+ 'SAR' => 'SAR',
+ 'SBD' => 'SBD',
+ 'SCR' => 'SCR',
+ 'SDG' => 'SDG',
+ 'SEK' => 'SEK',
+ 'SGD' => 'SGD',
+ 'SHP' => 'SHP',
+ 'SLL' => 'SLL',
+ 'SOS' => 'SOS',
+ 'SRD' => 'SRD',
+ 'SSP' => 'SSP',
+ 'STD' => 'STD',
+ 'SYP' => 'SYP',
+ 'SZL' => 'SZL',
+ 'THB' => '฿',
+ 'TJS' => 'TJS',
+ 'TMT' => 'TMT',
+ 'TND' => 'TND',
+ 'TOP' => 'TOP',
+ 'TRY' => 'TRY',
+ 'TTD' => 'TTD',
+ 'TWD' => 'NT$',
+ 'TZS' => 'TZS',
+ 'UAH' => 'UAH',
+ 'UGX' => 'UGX',
+ 'USD' => 'US$',
+ 'UYU' => 'UYU',
+ 'UZS' => 'UZS',
+ 'VEF' => 'VEF',
+ 'VND' => '₫',
+ 'VUV' => 'VUV',
+ 'WST' => 'WST',
+ 'XAF' => 'FCFA',
+ 'XCD' => 'EC$',
+ 'XOF' => 'CFA',
+ 'XPF' => 'CFPF',
+ 'YER' => 'YER',
+ 'ZAR' => 'ZAR',
+ 'ZMW' => 'ZMW',
+);
+
+$countryNames = array(
+ 'AC' => 'অ্যাসসেনশন আইল্যান্ড',
+ 'AD' => 'এ্যান্ডোরা',
+ 'AE' => 'সংযুক্ত আরব আমিরাত',
+ 'AF' => 'আফগানিস্তান',
+ 'AG' => 'এন্টিগুয়া ও বারবুডা',
+ 'AI' => 'এ্যাঙ্গুইলা',
+ 'AL' => 'আলব্যানিয়া',
+ 'AM' => 'আর্মেনিয়া',
+ 'AN' => 'নেদারল্যান্ডস এ্যান্টিলিস',
+ 'AO' => 'অ্যাঙ্গোলা',
+ 'AQ' => 'অ্যান্টার্কটিকা',
+ 'AR' => 'আর্জেন্টিনা',
+ 'AS' => 'আমেরিকান সামোয়া',
+ 'AT' => 'অস্ট্রিয়া',
+ 'AU' => 'অস্ট্রেলিয়া',
+ 'AW' => 'আরুবা',
+ 'AX' => 'আলান্ড দ্বীপপুঞ্জ',
+ 'AZ' => 'আজারবাইজান',
+ 'BA' => 'বসনিয়া ও হার্জেগোভিনা',
+ 'BB' => 'বারবাদোস',
+ 'BD' => 'বাংলাদেশ',
+ 'BE' => 'বেলজিয়াম',
+ 'BF' => 'বুরকিনা ফাসো',
+ 'BG' => 'বুলগেরিয়া',
+ 'BH' => 'বাহরাইন',
+ 'BI' => 'বুরুন্ডি',
+ 'BJ' => 'বেনিন',
+ 'BL' => 'সেন্ট বারথেলিমি',
+ 'BM' => 'বারমুডা',
+ 'BN' => 'ব্রুনেই',
+ 'BO' => 'বোলিভিয়া',
+ 'BQ' => 'ক্যারিবিয়ান নেদারল্যান্ডস',
+ 'BR' => 'ব্রাজিল',
+ 'BS' => 'বাহামা দ্বীপপুঞ্জ',
+ 'BT' => 'ভুটান',
+ 'BV' => 'বোভেট দ্বীপ',
+ 'BW' => 'বতসোয়ানা',
+ 'BY' => 'বেলোরুশিয়া',
+ 'BZ' => 'বেলিজ',
+ 'CA' => 'কানাডা',
+ 'CC' => 'কোকোস (কিলিং)দ্বীপপুঞ্জ',
+ 'CD' => 'কঙ্গো-কিনশাসা',
+ 'CF' => 'মধ্য আফ্রিকার প্রজাতন্ত্র',
+ 'CG' => 'কঙ্গো - ব্রাজাভিল',
+ 'CH' => 'সুইজারল্যান্ড',
+ 'CI' => 'আইভরি কোস্ট',
+ 'CK' => 'কুক দ্বীপপুঞ্জ',
+ 'CL' => 'চিলি',
+ 'CM' => 'ক্যামেরুন',
+ 'CN' => 'চীন',
+ 'CO' => 'কোলোম্বিয়া',
+ 'CP' => 'ক্লিপারটন আইল্যান্ড',
+ 'CR' => 'কোস্টারিকা',
+ 'CU' => 'কিউবা',
+ 'CV' => 'কেপভার্দে',
+ 'CW' => 'কিউরাসাও',
+ 'CX' => 'ক্রিসমাস দ্বীপ',
+ 'CY' => 'সাইপ্রাস',
+ 'CZ' => 'চেক প্রজাতন্ত্র',
+ 'DE' => 'জার্মানি',
+ 'DG' => 'দিয়েগো গার্সিয়া',
+ 'DJ' => 'জিবুতি',
+ 'DK' => 'ডেনমার্ক',
+ 'DM' => 'ডোমিনিকা',
+ 'DO' => 'ডোমেনিকান প্রজাতন্ত্র',
+ 'DZ' => 'আলজেরিয়া',
+ 'EA' => 'কুউটা এবং মেলিলা',
+ 'EC' => 'ইকুয়েডর',
+ 'EE' => 'এস্তোনিয়া',
+ 'EG' => 'মিশর',
+ 'EH' => 'পশ্চিম সাহারা',
+ 'ER' => 'ইরিত্রিয়া',
+ 'ES' => 'স্পেন',
+ 'ET' => 'ইফিওপিয়া',
+ 'EU' => 'ইউরোপীয় ইউনিয়ন',
+ 'FI' => 'ফিনল্যান্ড',
+ 'FJ' => 'ফিজি',
+ 'FK' => 'ফকল্যান্ড দ্বীপপুঞ্জ',
+ 'FM' => 'মাইক্রোনেশিয়া',
+ 'FO' => 'ফ্যারও দ্বীপপুঞ্জ',
+ 'FR' => 'ফ্রান্স',
+ 'GA' => 'গ্যাবন',
+ 'GB' => 'ইউ. কে',
+ 'GD' => 'গ্রেনাডা',
+ 'GE' => 'জর্জিয়া',
+ 'GF' => 'ফরাসী গায়ানা',
+ 'GG' => 'গ্রাঞ্জি',
+ 'GH' => 'ঘানা',
+ 'GI' => 'জিব্রাল্টার',
+ 'GL' => 'গ্রীনল্যান্ড',
+ 'GM' => 'গাম্বিয়া',
+ 'GN' => 'গিনি',
+ 'GP' => 'গুয়াদেলৌপ',
+ 'GQ' => 'নিরক্ষীয় গিনি',
+ 'GR' => 'গ্রীস',
+ 'GS' => 'দক্ষিণ জর্জিয়া ও দক্ষিণ স্যান্ডউইচ দ্বীপপুঞ্জ',
+ 'GT' => 'গোয়াটিমালা',
+ 'GU' => 'গুয়াম',
+ 'GW' => 'গিনি-বিসাউ',
+ 'GY' => 'গিয়ানা',
+ 'HK' => 'হংকং',
+ 'HM' => 'হার্ড দ্বীপ এবং ম্যাকডোনাল্ড দ্বীপপুঞ্জ',
+ 'HN' => 'হণ্ডুরাস',
+ 'HR' => 'ক্রোয়েশিয়া',
+ 'HT' => 'হাইতি',
+ 'HU' => 'হাঙ্গেরি',
+ 'IC' => 'ক্যানারি দ্বীপপুঞ্জ',
+ 'ID' => 'ইন্দোনেশিয়া',
+ 'IE' => 'আয়ারল্যান্ড',
+ 'IL' => 'ইস্রায়েল',
+ 'IM' => 'আইল অফ ম্যান',
+ 'IN' => 'ভারত',
+ 'IO' => 'ব্রিটিশ ভারত মহাসাগরীয় অঞ্চল',
+ 'IQ' => 'ইরাক',
+ 'IR' => 'ইরান',
+ 'IS' => 'আইসল্যান্ড',
+ 'IT' => 'ইতালী',
+ 'JE' => 'জার্সি',
+ 'JM' => 'জ্যামাইকা',
+ 'JO' => 'জর্ডন',
+ 'JP' => 'জাপান',
+ 'KE' => 'কেনিয়া',
+ 'KG' => 'কির্গিজিয়া',
+ 'KH' => 'কম্বোডিয়া',
+ 'KI' => 'কিরিবাতি',
+ 'KM' => 'কমোরোস',
+ 'KN' => 'সেন্ট কিটস ও নেভিস',
+ 'KP' => 'উত্তর কোরিয়া',
+ 'KR' => 'দক্ষিণ কোরিয়া',
+ 'KW' => 'কুয়েত',
+ 'KY' => 'কেম্যান দ্বীপপুঞ্জ',
+ 'KZ' => 'কাজাকস্থান',
+ 'LA' => 'লাওস',
+ 'LB' => 'লেবানন',
+ 'LC' => 'সেন্ট লুসিয়া',
+ 'LI' => 'লিচেনস্টেইন',
+ 'LK' => 'শ্রীলঙ্কা',
+ 'LR' => 'লাইবেরিয়া',
+ 'LS' => 'লেসোথো',
+ 'LT' => 'লিথুয়ানিয়া',
+ 'LU' => 'লাক্সেমবার্গ',
+ 'LV' => 'লাত্ভিয়া',
+ 'LY' => 'লিবিয়া',
+ 'MA' => 'মোরক্কো',
+ 'MC' => 'মোনাকো',
+ 'MD' => 'মোল্দাভিয়া',
+ 'ME' => 'মন্টিনিগ্রো',
+ 'MF' => 'সেন্ট মার্টিন',
+ 'MG' => 'মাদাগাস্কার',
+ 'MH' => 'মার্শাল দ্বীপপুঞ্জ',
+ 'MK' => 'ম্যাসাডোনিয়া',
+ 'ML' => 'মালি',
+ 'MM' => 'মায়ানমার (বার্মা)',
+ 'MN' => 'মঙ্গোলিয়া',
+ 'MO' => 'ম্যাকাও',
+ 'MP' => 'উত্তরাঞ্চলীয় মারিয়ানা দ্বীপপুঞ্জ',
+ 'MQ' => 'মার্টিনিক',
+ 'MR' => 'মরিতানিয়া',
+ 'MS' => 'মন্টসেরাট',
+ 'MT' => 'মাল্টা',
+ 'MU' => 'মরিশাস',
+ 'MV' => 'মালদ্বীপ',
+ 'MW' => 'মালাউই',
+ 'MX' => 'মেক্সিকো',
+ 'MY' => 'মালয়েশিয়া',
+ 'MZ' => 'মোজাম্বিক',
+ 'NA' => 'নামিবিয়া',
+ 'NC' => 'নিউ ক্যালেডোনিয়া',
+ 'NE' => 'নাইজার',
+ 'NF' => 'নিরফোক দ্বীপ',
+ 'NG' => 'নাইজেরিয়া',
+ 'NI' => 'নিকারাগুয়া',
+ 'NL' => 'নেদারল্যান্ডস',
+ 'NO' => 'নরওয়ে',
+ 'NP' => 'নেপাল',
+ 'NR' => 'নাউরু',
+ 'NU' => 'নিউয়ে',
+ 'NZ' => 'নিউজিল্যান্ড',
+ 'OM' => 'ওমান',
+ 'PA' => 'পানামা',
+ 'PE' => 'পিরু',
+ 'PF' => 'ফরাসী পলিনেশিয়া',
+ 'PG' => 'পাপুয়া নিউ গিনি',
+ 'PH' => 'ফিলিপাইন',
+ 'PK' => 'পাকিস্তান',
+ 'PL' => 'পোল্যান্ড',
+ 'PM' => 'সেন্ট পিয়ের ও মিকুয়েলন',
+ 'PN' => 'পিটকেয়ার্ন দ্বীপপুঞ্জ',
+ 'PR' => 'পুয়ের্তো রিকো',
+ 'PS' => 'ফিলিস্তিন',
+ 'PT' => 'পর্তুগাল',
+ 'PW' => 'পালাউ',
+ 'PY' => 'প্যারাগুয়ে',
+ 'QA' => 'কাতার',
+ 'QO' => 'আউটলাইনিং ওসানিয়া',
+ 'RE' => 'রিইউনিয়ন',
+ 'RO' => 'রুমানিয়া',
+ 'RS' => 'সার্বিয়া',
+ 'RU' => 'রাশিয়া',
+ 'RW' => 'রুয়ান্ডা',
+ 'SA' => 'সৌদি আরব',
+ 'SB' => 'সলোমন দ্বীপপুঞ্জ',
+ 'SC' => 'সিসিলি',
+ 'SD' => 'সুদান',
+ 'SE' => 'সুইডেন',
+ 'SG' => 'সিঙ্গাপুর',
+ 'SH' => 'সেন্ট হেলেনা',
+ 'SI' => 'স্লোভানিয়া',
+ 'SJ' => 'স্বালবার্ড ও জান মেয়েন',
+ 'SK' => 'শ্লোভাকিয়া',
+ 'SL' => 'সিয়েরালিওন',
+ 'SM' => 'সান মারিনো',
+ 'SN' => 'সেনেগাল',
+ 'SO' => 'সোমালিয়া',
+ 'SR' => 'সুরিনাম',
+ 'SS' => 'দক্ষিন সুদান',
+ 'ST' => 'সাওটোমা ও প্রিন্সিপি',
+ 'SV' => 'এল সালভেদর',
+ 'SX' => 'সিন্ট মার্টেন',
+ 'SY' => 'সিরিয়া',
+ 'SZ' => 'সোয়াজিল্যান্ড',
+ 'TA' => 'ট্রিস্টান ডা কুনহা',
+ 'TC' => 'তুর্কস ও কাইকোস দ্বীপপুঞ্জ',
+ 'TD' => 'চাদ',
+ 'TF' => 'ফরাসী দক্ষিণাঞ্চল',
+ 'TG' => 'টোগো',
+ 'TH' => 'থাইল্যান্ড',
+ 'TJ' => 'তাজিকস্থান',
+ 'TK' => 'টোকেলাউ',
+ 'TL' => 'তিমুর-লেস্তে',
+ 'TM' => 'তুর্কমেনিস্তান',
+ 'TN' => 'তিউনিশিয়া',
+ 'TO' => 'টোঙ্গা',
+ 'TR' => 'তুরস্ক',
+ 'TT' => 'ত্রিনিনাদ ও টোব্যাগো',
+ 'TV' => 'টুভালু',
+ 'TW' => 'তাইওয়ান',
+ 'TZ' => 'তাঞ্জানিয়া',
+ 'UA' => 'ইউক্রেইন',
+ 'UG' => 'উগান্ডা',
+ 'UM' => 'যুক্তরাষ্ট্রের পার্শ্ববর্তী দ্বীপপুঞ্জ',
+ 'US' => 'ইউ এস',
+ 'UY' => 'উরুগুয়ে',
+ 'UZ' => 'উজবেকিস্তান',
+ 'VA' => 'ভ্যাটিকান সিটি',
+ 'VC' => 'সেন্ট ভিনসেন্ট ও দ্যা গ্রেনাডিনস',
+ 'VE' => 'ভেনেজুয়েলা',
+ 'VG' => 'ব্রিটিশ ভার্জিন দ্বীপপুঞ্জ',
+ 'VI' => 'মার্কিন ভার্জিন দ্বীপপুঞ্জ',
+ 'VN' => 'ভিয়েতনাম',
+ 'VU' => 'ভানুয়াটু',
+ 'WF' => 'ওয়ালিস ও ফুটুনা',
+ 'WS' => 'সামোয়া',
+ 'XK' => 'কসোভো',
+ 'YE' => 'ইয়েমেন',
+ 'YT' => 'মায়োত্তে',
+ 'ZA' => 'দক্ষিণ আফ্রিকা',
+ 'ZM' => 'জাম্বিয়া',
+ 'ZW' => 'জিম্বাবোয়ে',
+);
+
+$timeUnits = array(
+ 'day-future-one' => '{0} দিনের মধ্যে',
+ 'day-future-other' => '{0} দিনের মধ্যে',
+ 'day-narrow-future-one' => '{0} দিনের মধ্যে',
+ 'day-narrow-future-other' => '{0} দিনের মধ্যে',
+ 'day-narrow-past-one' => '{0} দিন পূর্বে',
+ 'day-narrow-past-other' => '{0} দিন পূর্বে',
+ 'day-one' => '{0} দিন',
+ 'day-other' => '{0} দিন',
+ 'day-past-one' => '{0} দিন পূর্বে',
+ 'day-past-other' => '{0} দিন পূর্বে',
+ 'day-short-future-one' => '{0} দিনের মধ্যে',
+ 'day-short-future-other' => '{0} দিনের মধ্যে',
+ 'day-short-past-one' => '{0} দিন পূর্বে',
+ 'day-short-past-other' => '{0} দিন পূর্বে',
+ 'hour-future-one' => '{0} ঘন্টায়',
+ 'hour-future-other' => '{0} ঘন্টায়',
+ 'hour-narrow-future-one' => '{0} ঘন্টায়',
+ 'hour-narrow-future-other' => '{0} ঘন্টায়',
+ 'hour-narrow-past-one' => '{0} ঘন্টা আগে',
+ 'hour-narrow-past-other' => '{0} ঘন্টা আগে',
+ 'hour-one' => '{0} ঘন্টা',
+ 'hour-other' => '{0} ঘন্টা',
+ 'hour-past-one' => '{0} ঘন্টা আগে',
+ 'hour-past-other' => '{0} ঘন্টা আগে',
+ 'hour-short-future-one' => '{0} ঘন্টায়',
+ 'hour-short-future-other' => '{0} ঘন্টায়',
+ 'hour-short-past-one' => '{0} ঘন্টা আগে',
+ 'hour-short-past-other' => '{0} ঘন্টা আগে',
+ 'microsecond-one' => '{0} মাইক্রোসেকেন্ড',
+ 'microsecond-other' => '{0} মাইক্রোসেকেন্ড',
+ 'millisecond-one' => '{0} মিলিসেকেন্ড',
+ 'millisecond-other' => '{0} মিলিসেকেন্ড',
+ 'minute-future-one' => '{0} মিনিটে',
+ 'minute-future-other' => '{0} মিনিটে',
+ 'minute-narrow-future-one' => '{0} মিনিটে',
+ 'minute-narrow-future-other' => '{0} মিনিটে',
+ 'minute-narrow-past-one' => '{0} মিনিট পূর্বে',
+ 'minute-narrow-past-other' => '{0} মিনিট পূর্বে',
+ 'minute-one' => '{0} মিনিট',
+ 'minute-other' => '{0} মিনিট',
+ 'minute-past-one' => '{0} মিনিট পূর্বে',
+ 'minute-past-other' => '{0} মিনিট পূর্বে',
+ 'minute-short-future-one' => '{0} মিনিটে',
+ 'minute-short-future-other' => '{0} মিনিটে',
+ 'minute-short-past-one' => '{0} মিনিট পূর্বে',
+ 'minute-short-past-other' => '{0} মিনিট পূর্বে',
+ 'month-future-one' => '{0} মাসে',
+ 'month-future-other' => '{0} মাসে',
+ 'month-narrow-future-one' => '{0} মাসে',
+ 'month-narrow-future-other' => '{0} মাসে',
+ 'month-narrow-past-one' => '{0} মাস পূর্বে',
+ 'month-narrow-past-other' => '{0} মাস পূর্বে',
+ 'month-one' => '{0} মাস',
+ 'month-other' => '{0} মাস',
+ 'month-past-one' => '{0} মাস পূর্বে',
+ 'month-past-other' => '{0} মাস পূর্বে',
+ 'month-short-future-one' => '{0} মাসে',
+ 'month-short-future-other' => '{0} মাসে',
+ 'month-short-past-one' => '{0} মাস পূর্বে',
+ 'month-short-past-other' => '{0} মাস পূর্বে',
+ 'nanosecond-one' => '{0} ন্যানোসেকেন্ড',
+ 'nanosecond-other' => '{0} ন্যানোসেকেন্ড',
+ 'quarter-future-one' => '{0} ত্রৈমাসিকের এক চতুর্থাংশ',
+ 'quarter-future-other' => '{0} ত্রৈমাসিকের এক চতুর্থাংশ',
+ 'quarter-narrow-future-one' => '{0} ত্রৈমাসিকের এক চতুর্থাংশ',
+ 'quarter-narrow-future-other' => '{0} ত্রৈমাসিকের এক চতুর্থাংশ',
+ 'quarter-narrow-past-one' => '{0} ত্রৈমাসিকের আগে',
+ 'quarter-narrow-past-other' => '{0} ত্রৈমাসিকের আগে',
+ 'quarter-past-one' => '{0} ত্রৈমাসিকের আগে',
+ 'quarter-past-other' => '{0} ত্রৈমাসিকের আগে',
+ 'quarter-short-future-one' => '{0} ত্রৈমাসিকের এক চতুর্থাংশ',
+ 'quarter-short-future-other' => '{0} ত্রৈমাসিকের এক চতুর্থাংশ',
+ 'quarter-short-past-one' => '{0} ত্রৈমাসিকের আগে',
+ 'quarter-short-past-other' => '{0} ত্রৈমাসিকের আগে',
+ 'second-future-one' => '{0} সেকেন্ডে',
+ 'second-future-other' => '{0} সেকেন্ডে',
+ 'second-narrow-future-one' => '{0} সেকেন্ডে',
+ 'second-narrow-future-other' => '{0} সেকেন্ডে',
+ 'second-narrow-past-one' => '{0} সেকেন্ড পূর্বে',
+ 'second-narrow-past-other' => '{0} সেকেন্ড পূর্বে',
+ 'second-one' => '{0} সেকেন্ড',
+ 'second-other' => '{0} সেকেন্ড',
+ 'second-past-one' => '{0} সেকেন্ড পূর্বে',
+ 'second-past-other' => '{0} সেকেন্ড পূর্বে',
+ 'second-short-future-one' => '{0} সেকেন্ডে',
+ 'second-short-future-other' => '{0} সেকেন্ডে',
+ 'second-short-past-one' => '{0} সেকেন্ড পূর্বে',
+ 'second-short-past-other' => '{0} সেকেন্ড পূর্বে',
+ 'week-future-one' => '{0} সপ্তাহে',
+ 'week-future-other' => '{0} সপ্তাহে',
+ 'week-narrow-future-one' => '{0} সপ্তাহে',
+ 'week-narrow-future-other' => '{0} সপ্তাহে',
+ 'week-narrow-past-one' => '{0} সপ্তাহ পূর্বে',
+ 'week-narrow-past-other' => '{0} সপ্তাহ পূর্বে',
+ 'week-one' => '{0} সপ্তাহ',
+ 'week-other' => '{0} সপ্তাহ',
+ 'week-past-one' => '{0} সপ্তাহ পূর্বে',
+ 'week-past-other' => '{0} সপ্তাহ পূর্বে',
+ 'week-short-future-one' => '{0} সপ্তাহে',
+ 'week-short-future-other' => '{0} সপ্তাহে',
+ 'week-short-past-one' => '{0} সপ্তাহ পূর্বে',
+ 'week-short-past-other' => '{0} সপ্তাহ পূর্বে',
+ 'year-future-one' => '{0} বছরে',
+ 'year-future-other' => '{0} বছরে',
+ 'year-narrow-future-one' => '{0} বছরে',
+ 'year-narrow-future-other' => '{0} বছরে',
+ 'year-narrow-past-one' => '{0} বছর পূর্বে',
+ 'year-narrow-past-other' => '{0} বছর পূর্বে',
+ 'year-one' => '{0} বছর',
+ 'year-other' => '{0} বছর',
+ 'year-past-one' => '{0} বছর পূর্বে',
+ 'year-past-other' => '{0} বছর পূর্বে',
+ 'year-short-future-one' => '{0} বছরে',
+ 'year-short-future-other' => '{0} বছরে',
+ 'year-short-past-one' => '{0} বছর পূর্বে',
+ 'year-short-past-other' => '{0} বছর পূর্বে',
+);
diff --git a/MLEB/cldr/CldrNames/CldrNamesBo.php b/MLEB/cldr/CldrNames/CldrNamesBo.php
new file mode 100644
index 00000000..141384e4
--- /dev/null
+++ b/MLEB/cldr/CldrNames/CldrNamesBo.php
@@ -0,0 +1,252 @@
+<?php
+
+$languageNames = array(
+ 'bn' => 'བྷང་ག་ལའི་སྐད།',
+ 'bo' => 'བོད་སྐད་',
+ 'da' => 'ཏེན་མག་གི་སྐད།',
+ 'de' => 'འཇར་མན་གྱི།',
+ 'dz' => 'རྫོང་ཁ',
+ 'en' => 'དབིན་ཇིའི་སྐད།',
+ 'en-ca' => 'དབིན་ཇིའི་སྐད། (ཁེ་ན་ཌ་)',
+ 'en-gb' => 'དབིན་ཇིའི་སྐད། (དབིན་ཇིའི་རྒྱལ་ཁབ་)',
+ 'en-us' => 'དབིན་ཇིའི་སྐད། (ཨ་རི་)',
+ 'es' => 'ཞི་པན་ཡའི།',
+ 'fr' => 'ཧྥ་རན་སིའི་།',
+ 'gaa' => 'གཱ་སྐད།',
+ 'gu' => 'གུཇ་རཱཏི་སྐད།',
+ 'hi' => 'ཧིན་དི',
+ 'id' => 'ཨིན་དོ་ནི་སི་སྐད།',
+ 'it' => 'དབྱི་ཏ་་ལའི་མི།',
+ 'ja' => 'རི་པིན་སྐད་',
+ 'kn' => 'ཀནྣ་ཌ་སྐད།',
+ 'ko' => 'ཁོ་རེ་ཡའི་སྐད།',
+ 'la' => 'ལཱ་ཏིན་སྐད།',
+ 'mn' => 'སོག་སྐད།',
+ 'mr' => 'མ་ར་ཐི་སྐད།',
+ 'ms' => 'མ་ལ་ཡ་སྐད།',
+ 'my' => 'འབར་མའི་སྐད།',
+ 'ne' => 'ནེ་པ་ལི',
+ 'nl' => 'ཧའོ་ལན་སྐད།',
+ 'nn' => 'ནོ་ཝེ་སྐད།',
+ 'or' => 'ཨཽ་རི་ཡ་སྐད།',
+ 'pl' => 'པོ་ལན་སྐད།',
+ 'pt' => 'ཕི་ཐོ་ཡའི།',
+ 'pt-br' => 'པ་ཞའི་མི། ཕི་ཐོ་ཡའི་མི།',
+ 'ru' => 'ཨུ་རུ་སུ་སྐད་',
+ 'sa' => 'སཾ་སྐྲྀ་ཏ།',
+ 'si' => 'ཞི་ལན་སྐད།',
+ 'sv' => 'ཧྲུའི་ཏན་སྐད།',
+ 'ta' => 'ཏཱ་མིལ་སྐད།',
+ 'te' => 'ཏེ་ལུ་གུ་སྐད།',
+ 'th' => 'ཐའའི་ཡུལ་སྐད།',
+ 'tr' => 'ཐུར་ཁེའི་སྐད།',
+ 'ug' => 'ཡུ་གུར་སྐད།',
+ 'uk' => 'ཡུ་ཀྲ་ནི་སྐད།',
+ 'und' => 'མིའི་ཤེས་རྟོགས་མ་བྱུང་བ། ཡང་ན་ཆད་ལྷག་ཅན་གྱི་སྐད་བརྡ།',
+ 'ur' => 'ཝུའུ་ཏུའུ་སྐད།',
+ 'vi' => 'ཡོ་ནན་སྐད།',
+ 'zen' => 'ཟེ་ན་གཱ་སྐད།',
+ 'zh' => 'རྒྱ་སྐད་',
+ 'zh-hans' => 'སྟབས་བརྡའི། ཀྲུང་གོའི།',
+ 'zh-hant' => 'སྲོལ་རྒྱུན་གྱི།',
+ 'zu' => 'ཟུ་ལུ་སྐད།',
+ 'zun' => 'ཟུ་ནི་སྐད།',
+ 'zza' => 'ཟ་ཟཱ་སྐད།',
+);
+
+$currencyNames = array(
+ 'CNY' => 'ཡུ་ཨན་',
+ 'INR' => 'རྒྱ་གར་སྒོར་མོ་',
+ 'USD' => 'ཨ་རིའི་སྒོར་མོ།',
+ 'XXX' => 'མ་རྟོགས་པའི་ནུས་མེད་དངུལ་ལོར',
+);
+
+$currencySymbols = array(
+ 'CNY' => '¥',
+);
+
+$countryNames = array(
+ 'AD' => 'ཨེན་ཌོ་ར།',
+ 'AE' => 'ཨ་རབ། ཨི་མི་རཊ྄། ཆིག་སྒྲིལ་རྒྱལ་ཁབ།',
+ 'AF' => 'ཨཕ་ག་ནི་སྟཱན།',
+ 'AG' => 'ཨེན་ཊི་གུ་དང་། བྷར་བུ་ཌ།',
+ 'AI' => 'ཨང་གུའི་ལ།',
+ 'AL' => 'ཨལ་བཱ་ནི་ཡ།',
+ 'AM' => 'ཨར་མེ་ནི་ཡ།',
+ 'AO' => 'ཨང་གཽ་ལ།',
+ 'AQ' => 'ལྷོ་རྩེའི་མཐའ་གླིང་།',
+ 'AR' => 'ཨར་ཇེན་ཊི་ན།',
+ 'AT' => 'ཨསྟྲི་ཡ།',
+ 'AU' => 'ཨསྟྲེ་ལི་ཡ།',
+ 'AW' => 'ཨ་རུ་བ།',
+ 'AZ' => 'ཨཛར་བཡེ་ཇན།',
+ 'BA' => 'བོསྣི་ཡ་དང་ཧརྫོ་གོ་ཝི་ན།',
+ 'BB' => 'བཱརྦ་ཌོས྄།',
+ 'BD' => 'བངྒ་ལ་དེཤ།',
+ 'BE' => 'བེལ་ཇི་ཡམ།',
+ 'BF' => 'བརཀི་ན། ཕསོ།',
+ 'BG' => 'བུལ་ག་རི་ཡ།',
+ 'BH' => 'བྷཱ་རེན།',
+ 'BI' => 'བུ་རུན་ཌི།',
+ 'BJ' => 'བཱེ་ནིན།',
+ 'BM' => 'བར་མུ་ཌ།',
+ 'BN' => 'བུ་རུ་ནེ།',
+ 'BO' => 'བོ་ལི་ཝིཡ།',
+ 'BR' => 'བ་རཱ་ཛིལ།',
+ 'BS' => 'བྷཱ་མས྄།',
+ 'BT' => 'འབྲུག་ཡུལ།',
+ 'BW' => 'བོཙ་ཝ་ན།',
+ 'BY' => 'བེ་ལུ་རུ་སུ།',
+ 'BZ' => 'བེ་ལིཛ།',
+ 'CA' => 'ཁེ་ན་ཌ།',
+ 'CH' => 'ཧྲུད་ཧྲི།',
+ 'CI' => 'ཀོ་ཊེ་ཌི། ཨི་ཝོ་རེ།',
+ 'CK' => 'ཀཱུག གླིང་ཕྲེན་རྒྱལ་ཁབ།',
+ 'CL' => 'ཅི་ལི།',
+ 'CM' => 'ཀ་མེ་རུན།',
+ 'CN' => 'རྒྱ་ནག',
+ 'CO' => 'ཀོ་ལོམ་བི་ཡ།',
+ 'CR' => 'ཀོ་ས྄ཊ་རི་ཀ།',
+ 'CU' => 'ཁྱུའུ་བ།',
+ 'CY' => 'སཱཡེ་པ་རས྄།',
+ 'CZ' => 'ཅཻག་སྤྱི་མཐུན་རྒྱལ་ཁབ།',
+ 'DE' => 'འཇར་མན་',
+ 'DJ' => 'ཛི་བུ་ཏི།',
+ 'DK' => 'ཌེན་མཱརྐ།',
+ 'DM' => 'ཌོ་མིན་ནི་ཀ།',
+ 'DO' => 'ཌོ་མིནནི་ཀན་སྤྱི་མཐུན་རྒྱལ་ཁབ།',
+ 'DZ' => 'ཨལ་ཇི་རི་ཡ།',
+ 'EC' => 'ཨི་ཁྭ་ཌོར།',
+ 'EE' => 'ཨིསྟོ་ནི་ཡ།',
+ 'EG' => 'ཨི་ཇིབྚ།',
+ 'ER' => 'ཨེ་རི་ཏྲེ་ཨ།',
+ 'ES' => 'སི་པན།',
+ 'ET' => 'ཨི་ཐིའོ་པི་ཡ།',
+ 'FI' => 'ཕིན་ལན྄ཌ།',
+ 'FJ' => 'ཕི་ཇི།',
+ 'FK' => 'ཕལྐ་ལནྜ་གླིང་ཕྲན།',
+ 'FR' => 'ཕ་རཱན་སི།',
+ 'GA' => 'གེ་བཽན།',
+ 'GB' => 'དབྱིན་ཇི་',
+ 'GD' => 'གྷ་རི་ན་ཌ།',
+ 'GE' => 'ཇོར་ཇི་ཡ།',
+ 'GH' => 'གྷ་ན།',
+ 'GI' => 'ཇིབ་རཱལ་ཊར།',
+ 'GM' => 'གྷམ་བི་ཡ།',
+ 'GN' => 'གྷི་ནི་ཡ།',
+ 'GR' => 'གྷི་རཱི་སི།',
+ 'GT' => 'གྷོ་ཊེ་མ་ལ།',
+ 'GW' => 'གྷི་ནི་ཡ་བིས྄་སོ།',
+ 'GY' => 'གྷུ་ཡཱ་ན།',
+ 'HK' => 'ཧོང་ཀོང༌།',
+ 'HN' => 'ཧོན་དུ་རས྄།',
+ 'HR' => 'ཀུརོ་ཤི་ཡ།',
+ 'HT' => 'ཧེ་ཏི།',
+ 'HU' => 'ཧངྒ་རི།',
+ 'ID' => 'ཨིན་ཌོ་ནེ་ཤི་ཡ།',
+ 'IE' => 'ཨ་ཡར་ལནཌ།',
+ 'IL' => 'ཨི་ཛ྄་རེལ།',
+ 'IN' => 'རྒྱ་གར་',
+ 'IQ' => 'ཨི་རག།',
+ 'IR' => 'ཨི་རཱན།',
+ 'IS' => 'ཨ་ཨི་སི་ལནད།',
+ 'IT' => 'ཨི་ཀྲར་ལི་',
+ 'JM' => 'ཛ་མེ་ཀ།',
+ 'JO' => 'ཇོར་ཌན།',
+ 'JP' => 'རི་པིན་',
+ 'KE' => 'ཁེན་ཉི་ཡ།',
+ 'KG' => 'ཁིར་གིཛ་སྟཱན།',
+ 'KH' => 'ཀམ་བོ་ཌི་ཡ།',
+ 'KI' => 'ཀི་རི་བཱ་ཏི།',
+ 'KN' => 'སེནྚ། ཀིཊྚས྄། དང༌། ནེ་བིས྄།',
+ 'KR' => 'ཀོ་རི་ཡ། ལྷོ་མ།',
+ 'KW' => 'ཀུ་ཝེད་རྒྱལ་ཁབ།',
+ 'KY' => 'ཁེ་མེན་གླིང་ཕྲན།',
+ 'KZ' => 'ཁ་ཛཱག་སྟཱན།',
+ 'LA' => 'ལཱ་འོས།',
+ 'LB' => 'ལེབ་ནོན།',
+ 'LC' => 'སེནྚ། ལུ་ཤི་ཡ།',
+ 'LI' => 'ལེག་ཏེན་ཚིན།',
+ 'LK' => 'ཤྲཱི་ལངྐ་།',
+ 'LR' => 'ལི་བེ་རི་ཡ།',
+ 'LS' => 'ལེ་སོ་ཐོ།',
+ 'LT' => 'ལི་ཐུ་ཨེ་ནི་ཡ།',
+ 'LU' => 'ལཀ་ཛམ་བོརྒ།',
+ 'LV' => 'ལཏ་བི་ཡ།',
+ 'LY' => 'ལི་བི་ཡ།',
+ 'MA' => 'མོ་རོ་ཀྐོ།',
+ 'MC' => 'མོ་ན་ཀོ།',
+ 'MG' => 'མ་དཱ་གྷསྐཱར།',
+ 'MH' => 'མཱར་ཤལ་གླིང་ཕྲེན།',
+ 'ML' => 'མ་ལི།',
+ 'MM' => 'འབར་མ།',
+ 'MN' => 'སོག་ཡུལ།',
+ 'MO' => 'མེ་ཀའོ།',
+ 'MR' => 'མཽ་རི་ཏ་ནི་ཡ།',
+ 'MT' => 'མལ་ཊ།',
+ 'MU' => 'མཽ་རིཤས྄།',
+ 'MV' => 'མལ་དྭིབ།',
+ 'MW' => 'མཱ་ལཱ་ཝི།',
+ 'MX' => 'མེཀ་སི་ཀོ།',
+ 'MY' => 'མ་ལེ་ཤི་ཡ།',
+ 'MZ' => 'མོ་ཛམ་བིག།',
+ 'NA' => 'ན་མི་བི་ཡ།',
+ 'NE' => 'ནའི་ཇར།',
+ 'NG' => 'ནཱའི་ཇི་རི་ཡ།',
+ 'NI' => 'ནི་ཀ་ར་གུ་ཨ།',
+ 'NL' => 'ཧའོ་ལན།',
+ 'NO' => 'ནོར་ཝེ།',
+ 'NP' => 'བར་ཡུལ་',
+ 'NR' => 'ནཽ་རུ།',
+ 'NU' => 'ནིའུ་ཝ།',
+ 'NZ' => 'ནིའུ་ཛི་ལན྄ཌ།',
+ 'OM' => 'ཨོ་མན།',
+ 'PA' => 'པ་ནཱ་མ།',
+ 'PE' => 'པེ་རུ།',
+ 'PG' => 'པ་པུ་ཨ། ནིའུ། གྷི་ནི།',
+ 'PH' => 'ཕི་ལི་པིནས྄།',
+ 'PK' => 'པཀི་སྟཱན།',
+ 'PL' => 'པོ་ལནྜ།',
+ 'PT' => 'པོར་ཏུ་གྷལ།',
+ 'PW' => 'པ་ལཽ།',
+ 'PY' => 'པཱ་ར་གེ།',
+ 'QA' => 'ཀ་ཏཱར།',
+ 'RO' => 'རོ་མཱ་ནིཡ།',
+ 'RS' => 'སེར་བི་ཡ།',
+ 'RU' => 'ཨུ་རུ་སུ་',
+ 'RW' => 'རུ་ཝན་ཌ།',
+ 'SA' => 'སཽ་དྷི་ཨ་རཱ་བི་ཡ།',
+ 'SB' => 'སོ་ལོ་མོན། གླིང་ཕྲན་ཚོ་ཁག།',
+ 'SC' => 'སཱ་ཤཻལ།',
+ 'SD' => 'སུ་དཱན།',
+ 'SE' => 'ཧྲུའི་ཏན།',
+ 'SG' => 'སིངྒ་པུར།',
+ 'SH' => 'སེནྚ། ཧེ་ལི་ན།',
+ 'SI' => 'ས་ལཽ་ཝེ་ནི་ཡ།',
+ 'SK' => 'ས་ལཽ་ཝཀྱ།',
+ 'SL' => 'སེ་ཡར་ར། ལིའོན།',
+ 'SM' => 'སན་མེ་རི་ནོ།',
+ 'SN' => 'སེ་ནི་གྷལ།',
+ 'SO' => 'སོ་མཱལི་ཡ།',
+ 'SR' => 'སུ་རི་ནཱམ།',
+ 'ST' => 'ས་འོ་ཏོད་མད། དང༌། པ྄རིན་སི་པེ།',
+ 'SV' => 'ཨེལ། སཱལ་ཝ་ཌོར།',
+ 'TD' => 'ཅཻཌ།',
+ 'TR' => 'ཏུརཀི།',
+ 'TV' => 'ཐུ་ཝ་ལུ།',
+ 'UA' => 'ཡུ་ཀྲན།',
+ 'UG' => 'ཡུ་གན་ཌ།',
+ 'US' => 'ཨ་མེ་རི་ཀ།',
+ 'UY' => 'ཨུ་རུ་གྷེ།',
+ 'UZ' => 'ཨུཛ་བེ་ཀིསྟཱན།',
+ 'VA' => 'ཝེ་ཊི་ཀན།',
+ 'VC' => 'སེནྚ། ཝིན་སན། དང༌། གྷིརིན་ཌིན།',
+ 'VE' => 'ཝེ་ནི་ཛུའེ་ལ།',
+ 'VN' => 'བི་དི་ནམ།',
+ 'VU' => 'ཝ་ནུ་ཨ་ཐུ།',
+ 'WS' => 'ནུ་བ་ས་མོ་འ།',
+ 'YE' => 'ཡེ་མེན།',
+ 'ZA' => 'ལྷོ་ ཨཕྲི་ཀ།',
+ 'ZM' => 'ཛམ་བི་ཡ།',
+ 'ZW' => 'ཛིམ་བྷཱ་བེ།',
+);
diff --git a/MLEB/cldr/CldrNames/CldrNamesBr.php b/MLEB/cldr/CldrNames/CldrNamesBr.php
new file mode 100644
index 00000000..ca5412db
--- /dev/null
+++ b/MLEB/cldr/CldrNames/CldrNamesBr.php
@@ -0,0 +1,1070 @@
+<?php
+
+$languageNames = array(
+ 'aa' => 'afar',
+ 'ab' => 'abkhazeg',
+ 'ace' => 'achineg',
+ 'ach' => 'acoli',
+ 'ada' => 'adangme',
+ 'ady' => 'adygeieg',
+ 'ae' => 'avesteg',
+ 'aeb' => 'arabeg Tunizia',
+ 'af' => 'afrikaans',
+ 'afh' => 'afrihili',
+ 'agq' => 'aghem',
+ 'ain' => 'ainoueg',
+ 'ak' => 'akan',
+ 'akk' => 'akadeg',
+ 'akz' => 'alabamaeg',
+ 'ale' => 'aleouteg',
+ 'aln' => 'gegeg',
+ 'alt' => 'altaieg ar Su',
+ 'am' => 'amhareg',
+ 'an' => 'aragoneg',
+ 'ang' => 'hensaozneg',
+ 'ar' => 'arabeg',
+ 'ar-001' => 'arabeg modern',
+ 'arc' => 'arameeg',
+ 'arn' => 'araoukaneg',
+ 'arp' => 'arapaho',
+ 'arq' => 'arabeg Aljeria',
+ 'arw' => 'arawakeg',
+ 'ary' => 'arabeg Maroko',
+ 'arz' => 'arabeg Egipt',
+ 'as' => 'asameg',
+ 'asa' => 'asu',
+ 'av' => 'avar',
+ 'awa' => 'awadhi',
+ 'ay' => 'aymara',
+ 'az' => 'azeri',
+ 'azb' => 'azeri ar Su',
+ 'ba' => 'bachkir',
+ 'bal' => 'baloutchi',
+ 'ban' => 'balineg',
+ 'bar' => 'bavarieg',
+ 'bas' => 'basaa',
+ 'be' => 'belaruseg',
+ 'bej' => 'bedawieg',
+ 'bem' => 'bemba',
+ 'bez' => 'bena',
+ 'bg' => 'bulgareg',
+ 'bho' => 'bhojpuri',
+ 'bi' => 'bislama',
+ 'bik' => 'bikol',
+ 'bin' => 'bini',
+ 'bm' => 'bambara',
+ 'bn' => 'bengali',
+ 'bo' => 'tibetaneg',
+ 'br' => 'brezhoneg',
+ 'bra' => 'braj',
+ 'brh' => 'brahweg',
+ 'brx' => 'bodo',
+ 'bs' => 'bosneg',
+ 'bua' => 'bouriat',
+ 'bug' => 'bugi',
+ 'byn' => 'blin',
+ 'ca' => 'katalaneg',
+ 'cad' => 'caddo',
+ 'car' => 'karibeg',
+ 'ce' => 'tchetcheneg',
+ 'ceb' => 'cebuano',
+ 'ch' => 'chamorru',
+ 'chb' => 'chibcha',
+ 'chm' => 'marieg',
+ 'cho' => 'choktaw',
+ 'chp' => 'chipewyan',
+ 'chr' => 'cherokee',
+ 'chy' => 'cheyenne',
+ 'ckb' => 'kurdeg sorani',
+ 'co' => 'korseg',
+ 'cop' => 'kopteg',
+ 'cr' => 'kri',
+ 'crh' => 'turkeg Krimea',
+ 'cs' => 'tchekeg',
+ 'csb' => 'kachoubeg',
+ 'cu' => 'slavoneg iliz',
+ 'cv' => 'tchouvatch',
+ 'cy' => 'kembraeg',
+ 'da' => 'daneg',
+ 'dak' => 'dakota',
+ 'dar' => 'dargwa',
+ 'de' => 'alamaneg',
+ 'de-at' => 'alamaneg Aostria',
+ 'de-ch' => 'alamaneg uhel Suis',
+ 'del' => 'delaware',
+ 'dgr' => 'dogrib',
+ 'din' => 'dinka',
+ 'doi' => 'dogri',
+ 'dsb' => 'izelsorabeg',
+ 'dum' => 'nederlandeg krenn',
+ 'dv' => 'divehi',
+ 'dyu' => 'dyula',
+ 'dz' => 'dzongkha',
+ 'ebu' => 'embu',
+ 'ee' => 'ewe',
+ 'efi' => 'efik',
+ 'egy' => 'henegipteg',
+ 'eka' => 'ekajuk',
+ 'el' => 'gresianeg',
+ 'elx' => 'elameg',
+ 'en' => 'saozneg',
+ 'en-au' => 'saozneg Aostralia',
+ 'en-ca' => 'saozneg Kanada',
+ 'en-gb' => 'saozneg Breizh-Veur',
+ 'en-us' => 'saozneg Amerika',
+ 'enm' => 'krennsaozneg',
+ 'eo' => 'esperanteg',
+ 'es' => 'spagnoleg',
+ 'es-419' => 'spagnoleg Amerika latin',
+ 'es-es' => 'spagnoleg Europa',
+ 'es-mx' => 'spagnoleg Mecʼhiko',
+ 'et' => 'estoneg',
+ 'eu' => 'euskareg',
+ 'ewo' => 'ewondo',
+ 'fa' => 'perseg',
+ 'fan' => 'fang',
+ 'fat' => 'fanti',
+ 'fi' => 'finneg',
+ 'fil' => 'filipineg',
+ 'fj' => 'fidjieg',
+ 'fo' => 'faeroeg',
+ 'fon' => 'fon',
+ 'fr' => 'galleg',
+ 'fr-ca' => 'galleg Kanada',
+ 'fr-ch' => 'galleg Suis',
+ 'frm' => 'krenncʼhalleg',
+ 'fro' => 'hencʼhalleg',
+ 'frp' => 'arpitaneg',
+ 'frr' => 'frizeg an Norzh',
+ 'frs' => 'frizeg ar Reter',
+ 'fur' => 'frioulaneg',
+ 'fy' => 'frizeg ar Cʼhornôg',
+ 'ga' => 'iwerzhoneg',
+ 'gaa' => 'ga',
+ 'gag' => 'gagaouzeg',
+ 'gan' => 'sinaeg Gan',
+ 'gay' => 'gayo',
+ 'gba' => 'gbaya',
+ 'gd' => 'skoseg',
+ 'gez' => 'gezeg',
+ 'gil' => 'gilberteg',
+ 'gl' => 'galizeg',
+ 'gmh' => 'krennalamaneg uhel',
+ 'gn' => 'guarani',
+ 'goh' => 'henalamaneg uhel',
+ 'gor' => 'gorontalo',
+ 'got' => 'goteg',
+ 'grb' => 'grebo',
+ 'grc' => 'hencʼhresianeg',
+ 'gsw' => 'alamaneg Suis',
+ 'gu' => 'gujarati',
+ 'gv' => 'manaveg',
+ 'ha' => 'haousa',
+ 'hai' => 'haida',
+ 'hak' => 'sinaeg Hakka',
+ 'haw' => 'hawaieg',
+ 'he' => 'hebraeg',
+ 'hi' => 'hindi',
+ 'hil' => 'hiligaynon',
+ 'hmn' => 'hmong',
+ 'ho' => 'hiri motu',
+ 'hr' => 'kroateg',
+ 'hsb' => 'uhelsorabeg',
+ 'hsn' => 'sinaeg Xian',
+ 'ht' => 'haitieg',
+ 'hu' => 'hungareg',
+ 'hup' => 'hupa',
+ 'hy' => 'armenianeg',
+ 'hz' => 'herero',
+ 'ia' => 'interlingua',
+ 'iba' => 'iban',
+ 'ibb' => 'ibibio',
+ 'id' => 'indonezeg',
+ 'ie' => 'interlingue',
+ 'ig' => 'igbo',
+ 'ii' => 'yieg Sichuan',
+ 'ik' => 'inupiaq',
+ 'inh' => 'ingoucheg',
+ 'io' => 'ido',
+ 'is' => 'islandeg',
+ 'it' => 'italianeg',
+ 'iu' => 'inuktitut',
+ 'ja' => 'japaneg',
+ 'jpr' => 'yuzev-perseg',
+ 'jrb' => 'yuzev-arabeg',
+ 'jv' => 'javaneg',
+ 'ka' => 'jorjianeg',
+ 'kaa' => 'karakalpak',
+ 'kab' => 'kabileg',
+ 'kac' => 'kachin',
+ 'kam' => 'kamba',
+ 'kbd' => 'kabardeg',
+ 'kea' => 'kabuverdianu',
+ 'kg' => 'kongo',
+ 'kha' => 'khasi',
+ 'kho' => 'khotaneg',
+ 'ki' => 'kikuyu',
+ 'kj' => 'kwanyama',
+ 'kk' => 'kazak',
+ 'km' => 'khmer',
+ 'kmb' => 'kimbundu',
+ 'kn' => 'kanareg',
+ 'ko' => 'koreaneg',
+ 'kok' => 'konkani',
+ 'kos' => 'kosrae',
+ 'kpe' => 'kpelle',
+ 'kr' => 'kanouri',
+ 'krc' => 'karatchay-balkar',
+ 'kri' => 'krio',
+ 'krl' => 'karelieg',
+ 'kru' => 'kurukh',
+ 'ks' => 'kashmiri',
+ 'ku' => 'kurdeg',
+ 'kut' => 'kutenai',
+ 'kw' => 'kerneveureg',
+ 'ky' => 'kirgiz',
+ 'la' => 'latin',
+ 'lad' => 'ladino',
+ 'lah' => 'lahnda',
+ 'lam' => 'lamba',
+ 'lb' => 'luksembourgeg',
+ 'lez' => 'lezgi',
+ 'lfn' => 'lingua franca nova',
+ 'lg' => 'ganda',
+ 'li' => 'limbourgeg',
+ 'lij' => 'ligurieg',
+ 'ln' => 'lingala',
+ 'lo' => 'laoseg',
+ 'lol' => 'mongo',
+ 'loz' => 'lozi',
+ 'lt' => 'lituaneg',
+ 'lu' => 'luba-katanga',
+ 'lua' => 'luba-lulua',
+ 'lui' => 'luiseno',
+ 'lun' => 'lunda',
+ 'luo' => 'luo',
+ 'lus' => 'lushai',
+ 'luy' => 'luyia',
+ 'lv' => 'latvieg',
+ 'lzh' => 'sinaeg lennegel',
+ 'mag' => 'magahi',
+ 'mai' => 'maithili',
+ 'mas' => 'masai',
+ 'mdf' => 'moksha',
+ 'mdr' => 'mandar',
+ 'men' => 'mende',
+ 'mfe' => 'moriseg',
+ 'mg' => 'malgacheg',
+ 'mga' => 'krenniwerzhoneg',
+ 'mh' => 'marshall',
+ 'mi' => 'maori',
+ 'mk' => 'makedoneg',
+ 'ml' => 'malayalam',
+ 'mn' => 'mongoleg',
+ 'mnc' => 'manchou',
+ 'mni' => 'manipuri',
+ 'moh' => 'mohawk',
+ 'mr' => 'marathi',
+ 'mrj' => 'marieg ar Cʼhornôg',
+ 'ms' => 'malayseg',
+ 'mt' => 'malteg',
+ 'mul' => 'yezhoù lies',
+ 'mus' => 'muskogi',
+ 'my' => 'birmaneg',
+ 'myv' => 'erza',
+ 'na' => 'naurueg',
+ 'nan' => 'sinaeg Min Nan',
+ 'nap' => 'napolitaneg',
+ 'nb' => 'norvegeg bokmål',
+ 'nd' => 'ndebele an Norzh',
+ 'nds' => 'alamaneg izel',
+ 'ne' => 'nepaleg',
+ 'new' => 'newari',
+ 'ng' => 'ndonga',
+ 'nia' => 'nias',
+ 'niu' => 'niue',
+ 'nl' => 'nederlandeg',
+ 'nl-be' => 'flandrezeg',
+ 'nn' => 'norvegeg nynorsk',
+ 'no' => 'norvegeg',
+ 'nog' => 'nogay',
+ 'non' => 'hennorseg',
+ 'nov' => 'novial',
+ 'nr' => 'ndebele ar Su',
+ 'nso' => 'sotho an Norzh',
+ 'nv' => 'navacʼho',
+ 'nwc' => 'newari klasel',
+ 'ny' => 'nyanja',
+ 'nym' => 'nyamwezi',
+ 'nyn' => 'nyankole',
+ 'nyo' => 'nyoro',
+ 'oc' => 'okitaneg',
+ 'oj' => 'ojibwa',
+ 'or' => 'oriya',
+ 'os' => 'oseteg',
+ 'osa' => 'osage',
+ 'ota' => 'turkeg otoman',
+ 'pa' => 'punjabi',
+ 'pag' => 'pangasinan',
+ 'pal' => 'pahlavi',
+ 'pam' => 'pampanga',
+ 'pap' => 'papiamento',
+ 'pau' => 'palau',
+ 'pcd' => 'pikardeg',
+ 'pdc' => 'alamaneg Pennsylvania',
+ 'peo' => 'henberseg',
+ 'phn' => 'fenikianeg',
+ 'pi' => 'pali',
+ 'pl' => 'poloneg',
+ 'pms' => 'piemonteg',
+ 'pnt' => 'ponteg',
+ 'pon' => 'pohnpei',
+ 'prg' => 'henbruseg',
+ 'pro' => 'henbrovañseg',
+ 'ps' => 'pachto',
+ 'pt' => 'portugaleg',
+ 'pt-br' => 'portugaleg Brazil',
+ 'pt-pt' => 'portugaleg Europa',
+ 'qu' => 'kechuaeg',
+ 'raj' => 'rajasthani',
+ 'rap' => 'rapanui',
+ 'rar' => 'rarotonga',
+ 'rgn' => 'romagnoleg',
+ 'rm' => 'romañcheg',
+ 'rn' => 'rundi',
+ 'ro' => 'roumaneg',
+ 'ro-md' => 'moldoveg',
+ 'rof' => 'rombo',
+ 'rom' => 'romanieg',
+ 'ru' => 'rusianeg',
+ 'rup' => 'aroumaneg',
+ 'rw' => 'kinyarwanda',
+ 'rwk' => 'rwa',
+ 'sa' => 'sanskriteg',
+ 'sad' => 'sandawe',
+ 'sah' => 'yakouteg',
+ 'sam' => 'arameeg ar Samaritaned',
+ 'sas' => 'sasak',
+ 'sat' => 'santali',
+ 'sc' => 'sardeg',
+ 'scn' => 'sikilieg',
+ 'sco' => 'skoteg',
+ 'sd' => 'sindhi',
+ 'sdc' => 'sasareseg',
+ 'se' => 'sámi an Norzh',
+ 'sg' => 'sango',
+ 'sga' => 'heniwerzhoneg',
+ 'sh' => 'serb-kroateg',
+ 'shn' => 'shan',
+ 'shu' => 'arabeg Tchad',
+ 'si' => 'singhaleg',
+ 'sid' => 'sidamo',
+ 'sk' => 'slovakeg',
+ 'sl' => 'sloveneg',
+ 'sm' => 'samoan',
+ 'sma' => 'sámi ar Su',
+ 'smj' => 'sámi Luleå',
+ 'smn' => 'sámi Inari',
+ 'sms' => 'sámi Skolt',
+ 'sn' => 'shona',
+ 'snk' => 'soninke',
+ 'so' => 'somali',
+ 'sog' => 'sogdieg',
+ 'sq' => 'albaneg',
+ 'sr' => 'serbeg',
+ 'srr' => 'serer',
+ 'ss' => 'swati',
+ 'st' => 'sotho ar Su',
+ 'su' => 'sundaneg',
+ 'sux' => 'sumereg',
+ 'sv' => 'svedeg',
+ 'sw' => 'swahili',
+ 'swb' => 'komoreg',
+ 'syc' => 'sirieg klasel',
+ 'syr' => 'sirieg',
+ 'ta' => 'tamileg',
+ 'tcy' => 'touloueg',
+ 'te' => 'telougou',
+ 'ter' => 'tereno',
+ 'tet' => 'tetum',
+ 'tg' => 'tadjik',
+ 'th' => 'thai',
+ 'ti' => 'tigrigna',
+ 'tig' => 'tigreaneg',
+ 'tiv' => 'tiv',
+ 'tk' => 'turkmeneg',
+ 'tkl' => 'tokelau',
+ 'tl' => 'tagalog',
+ 'tlh' => 'klingon',
+ 'tli' => 'tinglit',
+ 'tmh' => 'tamacheg',
+ 'tn' => 'tswana',
+ 'to' => 'tonga',
+ 'tog' => 'nyasa tonga',
+ 'tpi' => 'tok pisin',
+ 'tr' => 'turkeg',
+ 'ts' => 'tsonga',
+ 'tsi' => 'tsimshian',
+ 'tt' => 'tatar',
+ 'tum' => 'tumbuka',
+ 'tvl' => 'tuvalu',
+ 'tw' => 'twi',
+ 'ty' => 'tahitianeg',
+ 'tyv' => 'touva',
+ 'udm' => 'oudmourteg',
+ 'ug' => 'ouigoureg',
+ 'uga' => 'ougariteg',
+ 'uk' => 'ukraineg',
+ 'umb' => 'umbundu',
+ 'und' => 'yezh dianav',
+ 'ur' => 'ourdou',
+ 'uz' => 'ouzbekeg',
+ 'vai' => 'vai',
+ 've' => 'venda',
+ 'vi' => 'vietnameg',
+ 'vls' => 'flandrezeg ar c’hornôg',
+ 'vo' => 'volapük',
+ 'vot' => 'votyakeg',
+ 'wa' => 'walloneg',
+ 'wae' => 'walser',
+ 'wal' => 'walamo',
+ 'war' => 'waray',
+ 'was' => 'washo',
+ 'wo' => 'wolof',
+ 'wuu' => 'sinaeg Wu',
+ 'xal' => 'kalmouk',
+ 'xh' => 'xhosa',
+ 'yao' => 'yao',
+ 'yap' => 'yapeg',
+ 'yi' => 'yiddish',
+ 'yo' => 'yorouba',
+ 'yue' => 'kantoneg',
+ 'za' => 'zhuang',
+ 'zap' => 'zapoteg',
+ 'zbl' => 'Bliss',
+ 'zea' => 'zelandeg',
+ 'zen' => 'zenaga',
+ 'zgh' => 'tamacheg Maroko standart',
+ 'zh' => 'sinaeg',
+ 'zh-hans' => 'sinaeg eeunaet',
+ 'zh-hant' => 'sinaeg hengounel',
+ 'zu' => 'zouloueg',
+ 'zun' => 'zuni',
+ 'zxx' => 'diyezh',
+);
+
+$currencyNames = array(
+ 'ADP' => 'peseta Andorra',
+ 'AED' => 'dirham EAU',
+ 'AFA' => 'afghani Afghanistan (1927–2002)',
+ 'AFN' => 'afghani Afghanistan',
+ 'ALK' => 'lek Albania (1946–1965)',
+ 'ALL' => 'lek Albania',
+ 'AMD' => 'dram Armenia',
+ 'ANG' => 'florin Antilhez nederlandat',
+ 'AOA' => 'kwanza Angola',
+ 'AOK' => 'kwanza Angola (1977–1991)',
+ 'AON' => 'kwanza nevez Angola (1990–2000)',
+ 'ARM' => 'peso Arcʼhantina (1881–1970)',
+ 'ARP' => 'peso Arcʼhantina (1983–1985)',
+ 'ARS' => 'peso Arcʼhantina',
+ 'ATS' => 'schilling Aostria',
+ 'AUD' => 'dollar Aostralia',
+ 'AWG' => 'florin Aruba',
+ 'AZM' => 'manat Azerbaidjan (1993–2006)',
+ 'AZN' => 'manat Azerbaidjan',
+ 'BAD' => 'dinar Bosnia ha Herzegovina (1992–1994)',
+ 'BAM' => 'mark kemmadus Bosnia ha Herzegovina',
+ 'BAN' => 'dinar nevez Bosnia ha Herzegovina (1994–1997)',
+ 'BBD' => 'dollar Barbados',
+ 'BDT' => 'taka Bangladesh',
+ 'BEC' => 'lur Belgia (kemmadus)',
+ 'BEF' => 'lur Belgia',
+ 'BEL' => 'BEL',
+ 'BGM' => 'lev sokialour Bulgaria',
+ 'BGN' => 'lev Bulgaria',
+ 'BGO' => 'lev Bulgaria (1879–1952)',
+ 'BHD' => 'dinar Bahrein',
+ 'BIF' => 'lur Burundi',
+ 'BMD' => 'dollar Bermuda',
+ 'BND' => 'dollar Brunei',
+ 'BOB' => 'boliviano Bolivia',
+ 'BOL' => 'boliviano Bolivia (1863–1963)',
+ 'BOP' => 'peso Bolivia',
+ 'BRL' => 'real Brazil',
+ 'BSD' => 'dollar Bahamas',
+ 'BTN' => 'ngultrum Bhoutan',
+ 'BUK' => 'kyat Birmania',
+ 'BWP' => 'pula Botswana',
+ 'BYB' => 'roubl nevez Belarus (1994–1999)',
+ 'BYR' => 'roubl Belarus',
+ 'BZD' => 'dollar Belize',
+ 'CAD' => 'dollar Kanada',
+ 'CDF' => 'lur Kongo',
+ 'CHF' => 'lur Suis',
+ 'CLE' => 'escudo Chile',
+ 'CLF' => 'unanenn jediñ Chile',
+ 'CLP' => 'peso Chile',
+ 'CNX' => 'dollar Bank poblel Sina',
+ 'CNY' => 'yuan Sina',
+ 'COP' => 'peso Kolombia',
+ 'CRC' => 'colón Costa Rica',
+ 'CSD' => 'dinar Serbia (2002–2006)',
+ 'CUC' => 'peso kemmadus Kuba',
+ 'CUP' => 'peso Kuba',
+ 'CVE' => 'escudo Kab Glas',
+ 'CYP' => 'lur Kiprenez',
+ 'CZK' => 'kurunenn Tchek',
+ 'DDM' => 'mark Alamagn ar Reter',
+ 'DEM' => 'mark Alamagn',
+ 'DJF' => 'lur Djibouti',
+ 'DKK' => 'kurunenn Danmark',
+ 'DOP' => 'peso Dominikan',
+ 'DZD' => 'dinar Aljeria',
+ 'EEK' => 'kurunenn Estonia',
+ 'EGP' => 'lur Egipt',
+ 'ERN' => 'nakfa Eritrea',
+ 'ESB' => 'peseta gemmadus Spagn',
+ 'ESP' => 'peseta Spagn',
+ 'ETB' => 'birr Etiopia',
+ 'EUR' => 'euro',
+ 'FIM' => 'mark Finland',
+ 'FJD' => 'dollar Fidji',
+ 'FKP' => 'lur Inizi Falkland',
+ 'FRF' => 'lur gall',
+ 'GBP' => 'lur sterling Breizh-Veur',
+ 'GEL' => 'lari Jorjia',
+ 'GHS' => 'cedi Ghana',
+ 'GIP' => 'lur Jibraltar',
+ 'GMD' => 'dalasi Gambia',
+ 'GNF' => 'lur Ginea',
+ 'GNS' => 'syli Ginea',
+ 'GQE' => 'ekwele Ginea ar Cʼheheder',
+ 'GRD' => 'drakm Gres',
+ 'GTQ' => 'quetzal Guatemala',
+ 'GWP' => 'peso Ginea-Bissau',
+ 'GYD' => 'dollar Guyana',
+ 'HKD' => 'dollar Hong Kong',
+ 'HNL' => 'lempira Honduras',
+ 'HRD' => 'dinar Kroatia',
+ 'HRK' => 'kuna Kroatia',
+ 'HTG' => 'gourde Haiti',
+ 'HUF' => 'forint Hungaria',
+ 'IDR' => 'roupi Indonezia',
+ 'IEP' => 'lur Iwerzhon',
+ 'ILP' => 'lur Israel',
+ 'ILR' => 'shekel Israel (1980–1985)',
+ 'ILS' => 'shekel nevez Israel',
+ 'INR' => 'roupi India',
+ 'IQD' => 'dinar Iraq',
+ 'IRR' => 'rial Iran',
+ 'ISJ' => 'kurunenn Island (1918–1981)',
+ 'ISK' => 'kurunenn Island',
+ 'ITL' => 'lur Italia',
+ 'JMD' => 'dollar Jamaika',
+ 'JOD' => 'dinar Jordania',
+ 'JPY' => 'yen Japan',
+ 'KES' => 'shilling Kenya',
+ 'KGS' => 'som Kyrgyzstan',
+ 'KHR' => 'riel Kambodja',
+ 'KMF' => 'lur Komorez',
+ 'KPW' => 'won Korea an Norzh',
+ 'KRH' => 'hwan Korea ar Su (1953–1962)',
+ 'KRO' => 'won Korea ar Su (1945–1953)',
+ 'KRW' => 'won Korea ar Su',
+ 'KWD' => 'dinar Koweit',
+ 'KYD' => 'dollar Inizi Cayman',
+ 'KZT' => 'tenge Kazakstan',
+ 'LAK' => 'kip Laos',
+ 'LBP' => 'lur Liban',
+ 'LKR' => 'roupi Sri Lanka',
+ 'LRD' => 'dollar Liberia',
+ 'LSL' => 'loti Lesotho',
+ 'LTL' => 'litas Lituania',
+ 'LTT' => 'talonas Lituania',
+ 'LUC' => 'lur kemmadus Luksembourg',
+ 'LUF' => 'lur Luksembourg',
+ 'LVL' => 'lats Latvia',
+ 'LVR' => 'roubl Latvia',
+ 'LYD' => 'dinar Libia',
+ 'MAD' => 'dirham Maroko',
+ 'MAF' => 'lur Maroko',
+ 'MCF' => 'lur Monaco',
+ 'MDL' => 'leu Moldova',
+ 'MGA' => 'ariary Madagaskar',
+ 'MGF' => 'lur Madagaskar',
+ 'MKD' => 'denar Makedonia',
+ 'MKN' => 'denar Makedonia (1992–1993)',
+ 'MLF' => 'lur Mali',
+ 'MMK' => 'kyat Myanmar',
+ 'MNT' => 'tugrik Mongolia',
+ 'MOP' => 'pataca Macau',
+ 'MRO' => 'ouguiya Maouritania',
+ 'MTL' => 'lira Malta',
+ 'MTP' => 'lur Malta',
+ 'MUR' => 'roupi Moris',
+ 'MVP' => 'roupi Maldivez',
+ 'MVR' => 'rufiyaa Maldivez',
+ 'MWK' => 'kwacha Malawi',
+ 'MXN' => 'peso Mecʼhiko',
+ 'MXP' => 'peso arcʼhant Mecʼhiko (1861–1992)',
+ 'MYR' => 'ringgit Malaysia',
+ 'MZE' => 'escudo Mozambik',
+ 'MZM' => 'metical Mozambik (1980–2006)',
+ 'MZN' => 'metical Mozambik',
+ 'NAD' => 'dollar Namibia',
+ 'NGN' => 'naira Nigeria',
+ 'NIC' => 'cordoba Nicaragua (1988–1991)',
+ 'NIO' => 'cordoba Nicaragua',
+ 'NLG' => 'florin an Izelvroioù',
+ 'NOK' => 'kurunenn Norvegia',
+ 'NPR' => 'roupi Nepal',
+ 'NZD' => 'dollar Zeland-Nevez',
+ 'OMR' => 'rial Oman',
+ 'PAB' => 'balboa Panamá',
+ 'PEN' => 'nuevo sol Perou',
+ 'PES' => 'sol Perou (1863–1965)',
+ 'PGK' => 'kina Papoua Ginea-Nevez',
+ 'PHP' => 'peso Filipinez',
+ 'PKR' => 'roupi Pakistan',
+ 'PLN' => 'zloty Polonia',
+ 'PLZ' => 'zloty Polonia (1950–1995)',
+ 'PTE' => 'escudo Portugal',
+ 'PYG' => 'guarani Paraguay',
+ 'QAR' => 'rial Qatar',
+ 'RHD' => 'dollar Rodezia',
+ 'ROL' => 'leu Roumania (1952–2006)',
+ 'RON' => 'leu Roumania',
+ 'RSD' => 'dinar Serbia',
+ 'RUB' => 'roubl Rusia',
+ 'RUR' => 'roubl Rusia (1991–1998)',
+ 'RWF' => 'lur Rwanda',
+ 'SAR' => 'riyal Arabia Saoudat',
+ 'SBD' => 'dollar Inizi Salomon',
+ 'SCR' => 'roupi Sechelez',
+ 'SDD' => 'dinar Soudan (1992–2007)',
+ 'SDG' => 'lur Soudan',
+ 'SDP' => 'lur Soudan (1957–1998)',
+ 'SEK' => 'kurunenn Sveden',
+ 'SGD' => 'dollar Singapour',
+ 'SHP' => 'lur Saint-Helena',
+ 'SIT' => 'tolar Slovenia',
+ 'SKK' => 'kurunenn Slovakia',
+ 'SLL' => 'leone Sierra Leone',
+ 'SOS' => 'shilling Somalia',
+ 'SRD' => 'dollar Surinam',
+ 'SRG' => 'florin Surinam',
+ 'SSP' => 'lur Susoudan',
+ 'STD' => 'dobra São Tomé ha Príncipe',
+ 'SUR' => 'roubl soviedel',
+ 'SVC' => 'colón Salvador',
+ 'SYP' => 'lur Siria',
+ 'SZL' => 'lilangeni Swaziland',
+ 'THB' => 'baht Thailand',
+ 'TJR' => 'roubl Tadjikistan',
+ 'TJS' => 'somoni Tadjikistan',
+ 'TMM' => 'manat Turkmenistan (1993–2009)',
+ 'TMT' => 'manat Turkmenistan',
+ 'TND' => 'dinar Tunizia',
+ 'TOP' => 'paʻanga Tonga',
+ 'TPE' => 'escudo Timor',
+ 'TRL' => 'lur Turkia (1922–2005)',
+ 'TRY' => 'lur Turkia',
+ 'TTD' => 'dollar Trinidad ha Tobago',
+ 'TWD' => 'dollar nevez Taiwan',
+ 'TZS' => 'shilling Tanzania',
+ 'UAH' => 'hryvnia Ukraina',
+ 'UGS' => 'shilling Ouganda (1966–1987)',
+ 'UGX' => 'shilling Ouganda',
+ 'USD' => 'dollar SU',
+ 'UYP' => 'peso Uruguay (1975–1993)',
+ 'UYU' => 'peso Uruguay',
+ 'UZS' => 'som Ouzbekistan',
+ 'VEB' => 'bolivar Venezuela (1871–2008)',
+ 'VEF' => 'bolivar Venezuela',
+ 'VND' => 'dong Viêt Nam',
+ 'VNN' => 'dong Viêt Nam (1978–1985)',
+ 'VUV' => 'vatu Vanuatu',
+ 'WST' => 'tala Samoa',
+ 'XAF' => 'lur CFA BEAC',
+ 'XAG' => 'arcʼhant',
+ 'XAU' => 'aour',
+ 'XBA' => 'unanenn genaoz europat',
+ 'XBB' => 'unanenn voneiz europat',
+ 'XBC' => 'unanenn jediñ europat (XBC)',
+ 'XBD' => 'unanenn jediñ europat (XBD)',
+ 'XCD' => 'dollar Karib ar reter',
+ 'XDR' => 'gwirioù tennañ arbennik',
+ 'XEU' => 'unanenn jediñ europat',
+ 'XFO' => 'lur aour Frañs',
+ 'XFU' => 'lur Unaniezh etrebroadel an hentoù-houarn',
+ 'XOF' => 'lur CFA BCEAO',
+ 'XPD' => 'palladiom',
+ 'XPF' => 'lur CFP',
+ 'XPT' => 'platin',
+ 'XTS' => 'kod moneiz amprouiñ',
+ 'XXX' => 'moneiz dianav',
+ 'YDD' => 'dinar Yemen',
+ 'YER' => 'rial Yemen',
+ 'YUM' => 'dinar nevez Yougoslavia (1994–2002)',
+ 'YUN' => 'dinar kemmadus Yougoslavia (1990–1992)',
+ 'YUR' => 'dinar adreizhet Yougoslavia (1992–1993)',
+ 'ZAR' => 'rand Suafrika',
+ 'ZMK' => 'kwacha Zambia (1968–2012)',
+ 'ZMW' => 'kwacha Zambia',
+ 'ZWD' => 'dollar Zimbabwe (1980–2008)',
+ 'ZWL' => 'dollar Zimbabwe (2009)',
+ 'ZWR' => 'dollar Zimbabwe (2008)',
+);
+
+$currencySymbols = array(
+ 'AUD' => '$A',
+ 'BBD' => '$',
+ 'BDT' => '৳',
+ 'BMD' => '$',
+ 'BND' => '$',
+ 'BSD' => '$',
+ 'BZD' => '$',
+ 'CAD' => '$CA',
+ 'CNY' => '¥',
+ 'CRC' => '₡',
+ 'EUR' => '€',
+ 'FJD' => '$',
+ 'GBP' => '£ RU',
+ 'HKD' => '$ HK',
+ 'ILS' => '₪',
+ 'INR' => '₹',
+ 'JMD' => '$',
+ 'JPY' => '¥',
+ 'KHR' => '៛',
+ 'KRW' => '₩',
+ 'KYD' => '$',
+ 'KZT' => '₸',
+ 'LAK' => '₭',
+ 'LRD' => '$',
+ 'MNT' => '₮',
+ 'NAD' => '$',
+ 'NGN' => '₦',
+ 'NZD' => '$ ZN',
+ 'PHP' => '₱',
+ 'PYG' => '₲',
+ 'SBD' => '$',
+ 'SGD' => '$',
+ 'SRD' => '$',
+ 'TRY' => '₺',
+ 'TTD' => '$',
+ 'TWD' => '$',
+ 'USD' => '$ SU',
+ 'VND' => '₫',
+ 'XFU' => 'XFU',
+);
+
+$countryNames = array(
+ 'AC' => 'Enez Ascension',
+ 'AD' => 'Andorra',
+ 'AE' => 'Emirelezhioù Arab Unanet',
+ 'AF' => 'Afghanistan',
+ 'AG' => 'Antigua ha Barbuda',
+ 'AI' => 'Anguilla',
+ 'AL' => 'Albania',
+ 'AM' => 'Armenia',
+ 'AN' => 'Antilhez Nederlandat',
+ 'AO' => 'Angola',
+ 'AQ' => 'Antarktika',
+ 'AR' => 'Arcʼhantina',
+ 'AS' => 'Samoa Amerikan',
+ 'AT' => 'Aostria',
+ 'AU' => 'Aostralia',
+ 'AW' => 'Aruba',
+ 'AX' => 'Inizi Åland',
+ 'AZ' => 'Azerbaidjan',
+ 'BA' => 'Bosnia ha Herzegovina',
+ 'BB' => 'Barbados',
+ 'BD' => 'Bangladesh',
+ 'BE' => 'Belgia',
+ 'BF' => 'Burkina Faso',
+ 'BG' => 'Bulgaria',
+ 'BH' => 'Bahrein',
+ 'BI' => 'Burundi',
+ 'BJ' => 'Benin',
+ 'BL' => 'Saint Barthélemy',
+ 'BM' => 'Bermuda',
+ 'BN' => 'Brunei',
+ 'BO' => 'Bolivia',
+ 'BQ' => 'Nederlandat Karib',
+ 'BR' => 'Brazil',
+ 'BS' => 'Bahamas',
+ 'BT' => 'Bhoutan',
+ 'BV' => 'Enez Bouvet',
+ 'BW' => 'Botswana',
+ 'BY' => 'Belarus',
+ 'BZ' => 'Belize',
+ 'CA' => 'Kanada',
+ 'CC' => 'Inizi Kokoz',
+ 'CD' => 'Kongo - Kinshasa',
+ 'CF' => 'Republik Kreizafrikan',
+ 'CG' => 'Kongo - Brazzaville',
+ 'CH' => 'Suis',
+ 'CI' => 'Aod an Olifant',
+ 'CK' => 'Inizi Cook',
+ 'CL' => 'Chile',
+ 'CM' => 'Kameroun',
+ 'CN' => 'Sina',
+ 'CO' => 'Kolombia',
+ 'CP' => 'Enez Clipperton',
+ 'CR' => 'Costa Rica',
+ 'CU' => 'Kuba',
+ 'CV' => 'Kab Glas',
+ 'CW' => 'Curaçao',
+ 'CX' => 'Enez Christmas',
+ 'CY' => 'Kiprenez',
+ 'CZ' => 'Republik Tchek',
+ 'DE' => 'Alamagn',
+ 'DG' => 'Diego Garcia',
+ 'DJ' => 'Djibouti',
+ 'DK' => 'Danmark',
+ 'DM' => 'Dominica',
+ 'DO' => 'Republik Dominikan',
+ 'DZ' => 'Aljeria',
+ 'EA' => 'Ceuta ha Melilla',
+ 'EC' => 'Ecuador',
+ 'EE' => 'Estonia',
+ 'EG' => 'Egipt',
+ 'EH' => 'Sahara ar Cʼhornôg',
+ 'ER' => 'Eritrea',
+ 'ES' => 'Spagn',
+ 'ET' => 'Etiopia',
+ 'EU' => 'Unaniezh Europa',
+ 'FI' => 'Finland',
+ 'FJ' => 'Fidji',
+ 'FK' => 'Inizi Falkland',
+ 'FM' => 'Mikronezia',
+ 'FO' => 'Inizi Faero',
+ 'FR' => 'Frañs',
+ 'GA' => 'Gabon',
+ 'GB' => 'R.U.',
+ 'GD' => 'Grenada',
+ 'GE' => 'Jorjia',
+ 'GF' => 'Gwiana cʼhall',
+ 'GG' => 'Gwernenez',
+ 'GH' => 'Ghana',
+ 'GI' => 'Jibraltar',
+ 'GL' => 'Greunland',
+ 'GM' => 'Gambia',
+ 'GN' => 'Ginea',
+ 'GP' => 'Gwadeloup',
+ 'GQ' => 'Ginea ar Cʼheheder',
+ 'GR' => 'Gres',
+ 'GS' => 'Inizi Georgia ar Su hag Inizi Sandwich ar Su',
+ 'GT' => 'Guatemala',
+ 'GU' => 'Guam',
+ 'GW' => 'Ginea-Bissau',
+ 'GY' => 'Guyana',
+ 'HK' => 'Hong Kong',
+ 'HM' => 'Inizi Heard ha McDonald',
+ 'HN' => 'Honduras',
+ 'HR' => 'Kroatia',
+ 'HT' => 'Haiti',
+ 'HU' => 'Hungaria',
+ 'IC' => 'Inizi Kanariez',
+ 'ID' => 'Indonezia',
+ 'IE' => 'Iwerzhon',
+ 'IL' => 'Israel',
+ 'IM' => 'Enez Vanav',
+ 'IN' => 'India',
+ 'IO' => 'Tiriad breizhveurat Meurvor Indez',
+ 'IQ' => 'Iraq',
+ 'IR' => 'Iran',
+ 'IS' => 'Island',
+ 'IT' => 'Italia',
+ 'JE' => 'Jerzenez',
+ 'JM' => 'Jamaika',
+ 'JO' => 'Jordania',
+ 'JP' => 'Japan',
+ 'KE' => 'Kenya',
+ 'KG' => 'Kyrgyzstan',
+ 'KH' => 'Kambodja',
+ 'KI' => 'Kiribati',
+ 'KM' => 'Komorez',
+ 'KN' => 'Saint Kitts ha Nevis',
+ 'KP' => 'Korea an Norzh',
+ 'KR' => 'Korea ar Su',
+ 'KW' => 'Koweit',
+ 'KY' => 'Inizi Cayman',
+ 'KZ' => 'Kazakstan',
+ 'LA' => 'Laos',
+ 'LB' => 'Liban',
+ 'LC' => 'Saint Lucia',
+ 'LI' => 'Liechtenstein',
+ 'LK' => 'Sri Lanka',
+ 'LR' => 'Liberia',
+ 'LS' => 'Lesotho',
+ 'LT' => 'Lituania',
+ 'LU' => 'Luksembourg',
+ 'LV' => 'Latvia',
+ 'LY' => 'Libia',
+ 'MA' => 'Maroko',
+ 'MC' => 'Monaco',
+ 'MD' => 'Moldova',
+ 'ME' => 'Montenegro',
+ 'MF' => 'Saint Martin',
+ 'MG' => 'Madagaskar',
+ 'MH' => 'Inizi Marshall',
+ 'MK' => 'Makedonia',
+ 'ML' => 'Mali',
+ 'MM' => 'Myanmar (Birmania)',
+ 'MN' => 'Mongolia',
+ 'MO' => 'Macau',
+ 'MP' => 'Inizi Mariana an Norzh',
+ 'MQ' => 'Martinik',
+ 'MR' => 'Maouritania',
+ 'MS' => 'Montserrat',
+ 'MT' => 'Malta',
+ 'MU' => 'Moris',
+ 'MV' => 'Maldivez',
+ 'MW' => 'Malawi',
+ 'MX' => 'Mecʼhiko',
+ 'MY' => 'Malaysia',
+ 'MZ' => 'Mozambik',
+ 'NA' => 'Namibia',
+ 'NC' => 'Kaledonia Nevez',
+ 'NE' => 'Niger',
+ 'NF' => 'Enez Norfolk',
+ 'NG' => 'Nigeria',
+ 'NI' => 'Nicaragua',
+ 'NL' => 'Izelvroioù',
+ 'NO' => 'Norvegia',
+ 'NP' => 'Nepal',
+ 'NR' => 'Nauru',
+ 'NU' => 'Niue',
+ 'NZ' => 'Zeland-Nevez',
+ 'OM' => 'Oman',
+ 'PA' => 'Panamá',
+ 'PE' => 'Perou',
+ 'PF' => 'Polinezia Cʼhall',
+ 'PG' => 'Papoua Ginea-Nevez',
+ 'PH' => 'Filipinez',
+ 'PK' => 'Pakistan',
+ 'PL' => 'Polonia',
+ 'PM' => 'Sant-Pêr-ha-Mikelon',
+ 'PN' => 'Enez Pitcairn',
+ 'PR' => 'Puerto Rico',
+ 'PS' => 'Palestina',
+ 'PT' => 'Portugal',
+ 'PW' => 'Palau',
+ 'PY' => 'Paraguay',
+ 'QA' => 'Qatar',
+ 'QO' => 'Oseania diabell',
+ 'RE' => 'Reünion',
+ 'RO' => 'Roumania',
+ 'RS' => 'Serbia',
+ 'RU' => 'Rusia',
+ 'RW' => 'Rwanda',
+ 'SA' => 'Arabia Saoudat',
+ 'SB' => 'Salomon',
+ 'SC' => 'Sechelez',
+ 'SD' => 'Soudan',
+ 'SE' => 'Sveden',
+ 'SG' => 'Singapour',
+ 'SH' => 'Saint-Helena',
+ 'SI' => 'Slovenia',
+ 'SJ' => 'Svalbard',
+ 'SK' => 'Slovakia',
+ 'SL' => 'Sierra Leone',
+ 'SM' => 'San Marino',
+ 'SN' => 'Senegal',
+ 'SO' => 'Somalia',
+ 'SR' => 'Surinam',
+ 'SS' => 'Susoudan',
+ 'ST' => 'São Tomé ha Príncipe',
+ 'SV' => 'Salvador',
+ 'SX' => 'Sint Maarten',
+ 'SY' => 'Siria',
+ 'SZ' => 'Swaziland',
+ 'TA' => 'Tristan da Cunha',
+ 'TC' => 'Inizi Turks ha Caicos',
+ 'TD' => 'Tchad',
+ 'TF' => 'Douaroù aostral Frañs',
+ 'TG' => 'Togo',
+ 'TH' => 'Thailand',
+ 'TJ' => 'Tadjikistan',
+ 'TK' => 'Tokelau',
+ 'TL' => 'Timor-Leste',
+ 'TM' => 'Turkmenistan',
+ 'TN' => 'Tunizia',
+ 'TO' => 'Tonga',
+ 'TR' => 'Turkia',
+ 'TT' => 'Trinidad ha Tobago',
+ 'TV' => 'Tuvalu',
+ 'TW' => 'Taiwan',
+ 'TZ' => 'Tanzania',
+ 'UA' => 'Ukraina',
+ 'UG' => 'Ouganda',
+ 'UM' => 'Inizi diabell ar Stadoù-Unanet',
+ 'US' => 'S.U.',
+ 'UY' => 'Uruguay',
+ 'UZ' => 'Ouzbekistan',
+ 'VA' => 'Vatikan',
+ 'VC' => 'Sant Visant hag ar Grenadinez',
+ 'VE' => 'Venezuela',
+ 'VG' => 'Inizi Gwercʼh Breizh-Veur',
+ 'VI' => 'Inizi Gwercʼh ar Stadoù-Unanet',
+ 'VN' => 'Viêt Nam',
+ 'VU' => 'Vanuatu',
+ 'WF' => 'Wallis ha Futuna',
+ 'WS' => 'Samoa',
+ 'XK' => 'Kosovo',
+ 'YE' => 'Yemen',
+ 'YT' => 'Mayotte',
+ 'ZA' => 'Suafrika',
+ 'ZM' => 'Zambia',
+ 'ZW' => 'Zimbabwe',
+);
+
+$timeUnits = array(
+ 'day-few' => '{0} deiz',
+ 'day-many' => '{0} a zeizioù',
+ 'day-one' => '{0} deiz',
+ 'day-other' => '{0} deiz',
+ 'day-two' => '{0} zeiz',
+ 'hour-few' => '{0} eur',
+ 'hour-many' => '{0} a eurioù',
+ 'hour-one' => '{0} eur',
+ 'hour-other' => '{0} eur',
+ 'hour-two' => '{0} eur',
+ 'microsecond-few' => '{0} mikroeilenn',
+ 'microsecond-many' => '{0} a vikroeilennoù',
+ 'microsecond-one' => '{0} mikroeilenn',
+ 'microsecond-other' => '{0} mikroeilenn',
+ 'microsecond-two' => '{0} vikroeilenn',
+ 'millisecond-few' => '{0} milieilenn',
+ 'millisecond-many' => '{0} a vilieilennoù',
+ 'millisecond-one' => '{0} milieilenn',
+ 'millisecond-other' => '{0} milieilenn',
+ 'millisecond-two' => '{0} vilieilenn',
+ 'minute-few' => '{0} munut',
+ 'minute-many' => '{0} a vunutoù',
+ 'minute-one' => '{0} munut',
+ 'minute-other' => '{0} munut',
+ 'minute-two' => '{0} vunut',
+ 'month-few' => '{0} miz',
+ 'month-many' => '{0} a vizioù',
+ 'month-one' => '{0} miz',
+ 'month-other' => '{0} miz',
+ 'month-two' => '{0} viz',
+ 'nanosecond-few' => '{0} nanoeilenn',
+ 'nanosecond-many' => '{0} a nanoeilennoù',
+ 'nanosecond-one' => '{0} nanoeilenn',
+ 'nanosecond-other' => '{0} nanoeilenn',
+ 'nanosecond-two' => '{0} nanoeilenn',
+ 'second-few' => '{0} eilenn',
+ 'second-many' => '{0} a eilennoù',
+ 'second-one' => '{0} eilenn',
+ 'second-other' => '{0} eilenn',
+ 'second-two' => '{0} eilenn',
+ 'year-few' => '{0} bloaz',
+ 'year-many' => '{0} a vloazioù',
+ 'year-one' => '{0} bloaz',
+ 'year-other' => '{0} vloaz',
+ 'year-two' => '{0} vloaz',
+);
diff --git a/MLEB/cldr/CldrNames/CldrNamesBs.php b/MLEB/cldr/CldrNames/CldrNamesBs.php
new file mode 100644
index 00000000..1f477d62
--- /dev/null
+++ b/MLEB/cldr/CldrNames/CldrNamesBs.php
@@ -0,0 +1,1412 @@
+<?php
+
+$languageNames = array(
+ 'aa' => 'afarski',
+ 'ab' => 'abhazijski',
+ 'ace' => 'ačineski',
+ 'ach' => 'akoli',
+ 'ada' => 'adangmejski',
+ 'ady' => 'adigejski',
+ 'ae' => 'avestanski',
+ 'af' => 'afrikanerski',
+ 'afh' => 'afrihili',
+ 'agq' => 'aghem',
+ 'ain' => 'ainu',
+ 'ak' => 'akan',
+ 'akk' => 'akadijski',
+ 'ale' => 'aljut',
+ 'alt' => 'južni altai',
+ 'am' => 'amharski',
+ 'an' => 'aragonežanski',
+ 'ang' => 'staroengleski',
+ 'anp' => 'angika',
+ 'ar' => 'arapski',
+ 'ar-001' => 'moderni standardni arapski',
+ 'arc' => 'armajski',
+ 'arn' => 'araukanski',
+ 'arp' => 'arapaho',
+ 'arw' => 'aravak',
+ 'as' => 'asemijski',
+ 'asa' => 'asu',
+ 'ast' => 'asturijski',
+ 'av' => 'avarski',
+ 'awa' => 'avadhi',
+ 'ay' => 'ajmara',
+ 'az' => 'azerbejdžanski',
+ 'ba' => 'baškirski',
+ 'bal' => 'baluči',
+ 'ban' => 'balinezijski',
+ 'bas' => 'basa',
+ 'bax' => 'bamunski',
+ 'bbj' => 'ghomala',
+ 'be' => 'bjeloruski',
+ 'bej' => 'beja',
+ 'bem' => 'bemba',
+ 'bez' => 'bena',
+ 'bfd' => 'bafut',
+ 'bg' => 'bugarski',
+ 'bho' => 'bojpuri',
+ 'bi' => 'bislama',
+ 'bik' => 'bikol',
+ 'bin' => 'bini',
+ 'bkm' => 'kom',
+ 'bla' => 'siksika',
+ 'bm' => 'bambara',
+ 'bn' => 'bengalski',
+ 'bo' => 'tibetanski',
+ 'br' => 'bretonski',
+ 'bra' => 'braj',
+ 'brx' => 'bodo',
+ 'bs' => 'bosanski',
+ 'bss' => 'akoose',
+ 'bua' => 'buriat',
+ 'bug' => 'buginežanskii',
+ 'bum' => 'bulu',
+ 'byn' => 'blin',
+ 'byv' => 'medumba',
+ 'ca' => 'katalonski',
+ 'cad' => 'kado',
+ 'car' => 'karipski',
+ 'cay' => 'cayuga',
+ 'cch' => 'atsam',
+ 'ce' => 'čečenski',
+ 'ceb' => 'cebuano',
+ 'cgg' => 'čiga',
+ 'ch' => 'čamoro',
+ 'chb' => 'čibča',
+ 'chg' => 'čagatai',
+ 'chk' => 'čukeski',
+ 'chm' => 'mari',
+ 'chn' => 'činukski',
+ 'cho' => 'čoktavski',
+ 'chp' => 'čipvijanski',
+ 'chr' => 'čiroki',
+ 'chy' => 'čejenski',
+ 'ckb' => 'soranski kurdski',
+ 'co' => 'korzikanski',
+ 'cop' => 'koptski',
+ 'cr' => 'kri',
+ 'crh' => 'krimeanski turski',
+ 'cs' => 'češki',
+ 'csb' => 'kašubijanski',
+ 'cu' => 'staroslovenski',
+ 'cv' => 'čuvaški',
+ 'cy' => 'cy',
+ 'da' => 'danski',
+ 'dak' => 'dakota',
+ 'dar' => 'dargva',
+ 'dav' => 'taita',
+ 'de' => 'njemački',
+ 'de-at' => 'austrijski njemački',
+ 'de-ch' => 'gornjonjemački (švicarski)',
+ 'del' => 'delaver',
+ 'den' => 'slavski',
+ 'dgr' => 'dogrib',
+ 'din' => 'dinka',
+ 'dje' => 'zarma',
+ 'doi' => 'dogri',
+ 'dsb' => 'donjolužičkosrpski',
+ 'dua' => 'duala',
+ 'dum' => 'srednji holandski',
+ 'dv' => 'divehijski',
+ 'dyo' => 'jola-fonyi',
+ 'dyu' => 'đula',
+ 'dz' => 'džonga',
+ 'dzg' => 'dazaga',
+ 'ebu' => 'embu',
+ 'ee' => 'eve',
+ 'efi' => 'efikski',
+ 'egy' => 'staroegipatski',
+ 'eka' => 'ekajuk',
+ 'el' => 'grčki',
+ 'elx' => 'elamitski',
+ 'en' => 'engleski',
+ 'en-au' => 'australski engleski',
+ 'en-ca' => 'kanadski engleski',
+ 'en-gb' => 'britanski engleski',
+ 'en-us' => 'američki engleski',
+ 'enm' => 'srednji engleski',
+ 'eo' => 'esperanto',
+ 'es' => 'španski',
+ 'es-419' => 'latinoamerički španski',
+ 'es-es' => 'evropski španski',
+ 'es-mx' => 'meksički španski',
+ 'et' => 'estonski',
+ 'eu' => 'baskijski',
+ 'ewo' => 'evondo',
+ 'fa' => 'perzijski',
+ 'fan' => 'fang',
+ 'fat' => 'fanti',
+ 'ff' => 'fulah',
+ 'fi' => 'finski',
+ 'fil' => 'filipinski',
+ 'fj' => 'fidžijski',
+ 'fo' => 'farski',
+ 'fon' => 'fon',
+ 'fr' => 'francuski',
+ 'fr-ca' => 'kanadski francuski',
+ 'fr-ch' => 'švajcarski francuski',
+ 'frm' => 'srednji francuski',
+ 'fro' => 'starofrancuski',
+ 'frr' => 'severno-frizijski',
+ 'frs' => 'istočni frizijski',
+ 'fur' => 'friulijski',
+ 'fy' => 'frizijski',
+ 'ga' => 'irski',
+ 'gaa' => 'ga',
+ 'gag' => 'gagauški',
+ 'gay' => 'gajo',
+ 'gba' => 'gbaja',
+ 'gd' => 'škotski galski',
+ 'gez' => 'džiz',
+ 'gil' => 'gilbertški',
+ 'gl' => 'galski',
+ 'gmh' => 'srednji visoki nemački',
+ 'gn' => 'gvarani',
+ 'goh' => 'staronemački',
+ 'gon' => 'gondi',
+ 'gor' => 'gorontalo',
+ 'got' => 'gotski',
+ 'grb' => 'grebo',
+ 'grc' => 'starogrčki',
+ 'gsw' => 'švajcarski njemački',
+ 'gu' => 'gudžarati',
+ 'guz' => 'gusii',
+ 'gv' => 'manks',
+ 'gwi' => 'gwich’in',
+ 'ha' => 'hausa',
+ 'hai' => 'haida',
+ 'haw' => 'havajski',
+ 'he' => 'hebrejski',
+ 'hi' => 'hindi',
+ 'hil' => 'hiligajnon',
+ 'hit' => 'hitite',
+ 'hmn' => 'hmong',
+ 'ho' => 'hiri motu',
+ 'hr' => 'hrvatski',
+ 'hsb' => 'gornjolužičkosrpski',
+ 'ht' => 'haićanski',
+ 'hu' => 'mađarski',
+ 'hup' => 'hupa',
+ 'hy' => 'jermenski',
+ 'hz' => 'herero',
+ 'ia' => 'interlingva',
+ 'iba' => 'iban',
+ 'ibb' => 'ibibio',
+ 'id' => 'indonezijski',
+ 'ie' => 'interlingve',
+ 'ig' => 'igbo',
+ 'ii' => 'sičuan ji',
+ 'ik' => 'inupiak',
+ 'ilo' => 'iloko',
+ 'inh' => 'ingušetski',
+ 'io' => 'ido',
+ 'is' => 'islandski',
+ 'it' => 'italijanski',
+ 'iu' => 'inuktitut',
+ 'ja' => 'japanski',
+ 'jbo' => 'lojban',
+ 'jgo' => 'ngomba',
+ 'jmc' => 'machame',
+ 'jpr' => 'judeo-persijski',
+ 'jrb' => 'judeo-arapski',
+ 'jv' => 'javanski',
+ 'ka' => 'gruzijski',
+ 'kaa' => 'kara-kalpaški',
+ 'kab' => 'kabile',
+ 'kac' => 'kačin',
+ 'kaj' => 'žju',
+ 'kam' => 'kamba',
+ 'kaw' => 'kavi',
+ 'kbd' => 'kabardijski',
+ 'kbl' => 'kanembu',
+ 'kcg' => 'tjap',
+ 'kde' => 'makonde',
+ 'kea' => 'zelenortski',
+ 'kfo' => 'koro',
+ 'kg' => 'kongo',
+ 'kha' => 'kasi',
+ 'kho' => 'kotanizijski',
+ 'khq' => 'koyra chiini',
+ 'ki' => 'kikuju',
+ 'kj' => 'kuanjama',
+ 'kk' => 'kazački',
+ 'kkj' => 'kako',
+ 'kl' => 'kalalisutski',
+ 'kln' => 'kalenjin',
+ 'km' => 'kmerski',
+ 'kmb' => 'kimbundu',
+ 'kn' => 'kanada',
+ 'ko' => 'korejski',
+ 'koi' => 'komi-permjački',
+ 'kok' => 'konkani',
+ 'kos' => 'kosreanski',
+ 'kpe' => 'kpele',
+ 'kr' => 'kanuri',
+ 'krc' => 'karačaj-balkar',
+ 'kri' => 'krio',
+ 'krl' => 'karelijski',
+ 'kru' => 'kurukh',
+ 'ks' => 'kašmiri',
+ 'ksb' => 'shambala',
+ 'ksf' => 'bafia',
+ 'ksh' => 'kelnski',
+ 'ku' => 'kurdski',
+ 'kum' => 'kumik',
+ 'kut' => 'kutenai',
+ 'kv' => 'komi',
+ 'kw' => 'korniški',
+ 'ky' => 'kirgiski',
+ 'la' => 'latinski',
+ 'lad' => 'ladino',
+ 'lag' => 'langi',
+ 'lah' => 'landa',
+ 'lam' => 'lamba',
+ 'lb' => 'luksemburški',
+ 'lez' => 'lezgian',
+ 'lg' => 'ganda',
+ 'li' => 'limburgiš',
+ 'lkt' => 'lakota',
+ 'ln' => 'lingala',
+ 'lo' => 'laoški',
+ 'lol' => 'mongo',
+ 'loz' => 'lozi',
+ 'lt' => 'litvanski',
+ 'lu' => 'luba-katanga',
+ 'lua' => 'luba-lulua',
+ 'lui' => 'luiseno',
+ 'lun' => 'lunda',
+ 'luo' => 'luo',
+ 'lus' => 'lušai',
+ 'luy' => 'luyia',
+ 'lv' => 'letonski',
+ 'mad' => 'madureški',
+ 'maf' => 'mafa',
+ 'mag' => 'magahi',
+ 'mai' => 'maitili',
+ 'mak' => 'makasar',
+ 'man' => 'mandingo',
+ 'mas' => 'masai',
+ 'mde' => 'maba',
+ 'mdf' => 'mokša',
+ 'mdr' => 'mandar',
+ 'men' => 'mende',
+ 'mer' => 'meru',
+ 'mfe' => 'mauricijski kreolski',
+ 'mg' => 'malagazijski',
+ 'mga' => 'srednji irski',
+ 'mgh' => 'makhuwa-meetto',
+ 'mgo' => 'meta’',
+ 'mh' => 'maršalski',
+ 'mi' => 'maorski',
+ 'mic' => 'mikmak',
+ 'min' => 'minangkabau',
+ 'mk' => 'makedonski',
+ 'ml' => 'malajalam',
+ 'mn' => 'mongolski',
+ 'mnc' => 'manču',
+ 'mni' => 'manipuri',
+ 'moh' => 'mahavski',
+ 'mos' => 'mosi',
+ 'mr' => 'marati',
+ 'ms' => 'malajski',
+ 'mt' => 'malteški',
+ 'mua' => 'mundang',
+ 'mul' => 'više jezika',
+ 'mus' => 'kriški',
+ 'mwl' => 'mirandeški',
+ 'mwr' => 'marvari',
+ 'my' => 'burmanski',
+ 'mye' => 'myene',
+ 'myv' => 'erzija',
+ 'na' => 'nauru',
+ 'nap' => 'neapolitanski',
+ 'naq' => 'nama',
+ 'nb' => 'norveški bokmal',
+ 'nd' => 'sjeverni ndebele',
+ 'nds' => 'niski nemački',
+ 'ne' => 'nepalski',
+ 'new' => 'nevari',
+ 'ng' => 'ndonga',
+ 'nia' => 'nias',
+ 'niu' => 'niuean',
+ 'nl' => 'holandski',
+ 'nl-be' => 'flamanski',
+ 'nmg' => 'kwasio',
+ 'nn' => 'norveški njorsk',
+ 'nnh' => 'ngiemboon',
+ 'no' => 'norveški',
+ 'nog' => 'nogai',
+ 'non' => 'stari norski',
+ 'nqo' => 'nko',
+ 'nr' => 'južni ndebele',
+ 'nso' => 'severni soto',
+ 'nus' => 'nuer',
+ 'nv' => 'navaho',
+ 'nwc' => 'klasični nevari',
+ 'ny' => 'njanja',
+ 'nym' => 'njamvezi',
+ 'nyn' => 'njankole',
+ 'nyo' => 'njoro',
+ 'nzi' => 'nzima',
+ 'oc' => 'provansalski',
+ 'oj' => 'ojibva',
+ 'om' => 'oromo',
+ 'or' => 'orijski',
+ 'os' => 'osetski',
+ 'osa' => 'osage',
+ 'ota' => 'otomanski turski',
+ 'pa' => 'pandžabski',
+ 'pag' => 'pangasinski',
+ 'pal' => 'pahlavi',
+ 'pam' => 'pampanga',
+ 'pap' => 'papiamento',
+ 'pau' => 'palauanski',
+ 'peo' => 'staropersijski',
+ 'phn' => 'feničanski',
+ 'pi' => 'pali',
+ 'pl' => 'poljski',
+ 'pon' => 'ponpejski',
+ 'pro' => 'staroprovansalski',
+ 'ps' => 'paštunski',
+ 'pt' => 'portugalski',
+ 'qu' => 'kvenča',
+ 'quc' => 'kiče',
+ 'raj' => 'rađastani',
+ 'rap' => 'rapanui',
+ 'rar' => 'rarotongan',
+ 'rm' => 'reto-romanski',
+ 'rn' => 'rundi',
+ 'ro' => 'rumunski',
+ 'ro-md' => 'moldavski',
+ 'rof' => 'rombo',
+ 'rom' => 'romani',
+ 'ru' => 'ruski',
+ 'rup' => 'aromanijski',
+ 'rw' => 'kinjarvanda',
+ 'rwk' => 'rua',
+ 'sa' => 'sanskrit',
+ 'sad' => 'sandave',
+ 'sah' => 'jakut',
+ 'sam' => 'samaritanski aramejski',
+ 'saq' => 'samburu',
+ 'sas' => 'sasak',
+ 'sat' => 'santali',
+ 'sba' => 'ngambay',
+ 'sbp' => 'sangu',
+ 'sc' => 'sardinijski',
+ 'scn' => 'sicilijanski',
+ 'sco' => 'škotski',
+ 'sd' => 'sindi',
+ 'se' => 'sjeverni sami',
+ 'see' => 'seneca',
+ 'seh' => 'sena',
+ 'sel' => 'selkap',
+ 'ses' => 'kojraboro seni',
+ 'sg' => 'sango',
+ 'sga' => 'staroirski',
+ 'sh' => 'srpskohrvatski',
+ 'shi' => 'tahelhit',
+ 'shn' => 'šan',
+ 'shu' => 'čadski arapski',
+ 'si' => 'singaleski',
+ 'sid' => 'sidamo',
+ 'sk' => 'slovački',
+ 'sl' => 'slovenački',
+ 'sm' => 'samoanski',
+ 'sma' => 'južni sami',
+ 'smj' => 'lule sami',
+ 'smn' => 'inari sami',
+ 'sms' => 'skoltski jezik',
+ 'sn' => 'šona',
+ 'snk' => 'soninke',
+ 'so' => 'somalski',
+ 'sog' => 'sodžijenski',
+ 'sq' => 'albanski',
+ 'sr' => 'srpski',
+ 'srn' => 'srananski tongo',
+ 'srr' => 'serer',
+ 'ss' => 'svati',
+ 'ssy' => 'saho',
+ 'st' => 'sesoto',
+ 'su' => 'sudanski',
+ 'suk' => 'sukuma',
+ 'sus' => 'susu',
+ 'sux' => 'sumerski',
+ 'sv' => 'švedski',
+ 'sw' => 'svahili',
+ 'swb' => 'komorski',
+ 'swc' => 'kongoanski swahili',
+ 'syc' => 'klasični sirijski',
+ 'syr' => 'sirijski',
+ 'ta' => 'tamilski',
+ 'te' => 'telugu',
+ 'tem' => 'timne',
+ 'teo' => 'teso',
+ 'ter' => 'tereno',
+ 'tet' => 'tetum',
+ 'tg' => 'tadžički',
+ 'th' => 'tajlandski',
+ 'ti' => 'tigrinja',
+ 'tig' => 'tigre',
+ 'tiv' => 'tiv',
+ 'tk' => 'turkmenski',
+ 'tkl' => 'tokelau',
+ 'tl' => 'tagalski',
+ 'tlh' => 'klingonski',
+ 'tli' => 'tlingit',
+ 'tmh' => 'tamašek',
+ 'tn' => 'tsvana',
+ 'to' => 'tonga',
+ 'tog' => 'njasa tonga',
+ 'tpi' => 'tok pisin',
+ 'tr' => 'turski',
+ 'trv' => 'taroko',
+ 'ts' => 'tsonga',
+ 'tsi' => 'tsimšian',
+ 'tt' => 'tatarski',
+ 'tum' => 'tumbuka',
+ 'tvl' => 'tuvalu',
+ 'tw' => 'tvi',
+ 'twq' => 'tasavak',
+ 'ty' => 'tahićanski',
+ 'tyv' => 'tuvinijski',
+ 'tzm' => 'marokanski tamazigt',
+ 'udm' => 'udmurt',
+ 'ug' => 'ujgurski',
+ 'uga' => 'ugaritski',
+ 'uk' => 'ukrajinski',
+ 'umb' => 'umbundu',
+ 'und' => 'nepoznati ili nevažeći jezik',
+ 'ur' => 'urdu',
+ 'uz' => 'uzbečki',
+ 'vai' => 'vai',
+ 've' => 'venda',
+ 'vi' => 'vijetnamski',
+ 'vo' => 'volapük',
+ 'vot' => 'votski',
+ 'vun' => 'vunjo',
+ 'wa' => 'valun',
+ 'wae' => 'walser',
+ 'wal' => 'valamo',
+ 'war' => 'varej',
+ 'was' => 'vašo',
+ 'wo' => 'volof',
+ 'xal' => 'kalmik',
+ 'xh' => 'kosa',
+ 'xog' => 'soga',
+ 'yao' => 'jao',
+ 'yap' => 'japeški',
+ 'yav' => 'yangben',
+ 'ybb' => 'yemba',
+ 'yi' => 'jidiš',
+ 'yo' => 'jorubanski',
+ 'yue' => 'kantonski',
+ 'za' => 'zuang',
+ 'zap' => 'zapotečki',
+ 'zbl' => 'blisimboli',
+ 'zen' => 'zenaga',
+ 'zgh' => 'standardni marokanski tamazigt',
+ 'zh' => 'kineski',
+ 'zh-hans' => 'kineski (pojednostavljeni)',
+ 'zh-hant' => 'kineski (tradicionalni)',
+ 'zu' => 'zulu',
+ 'zun' => 'zuni',
+ 'zxx' => 'bez lingvističkog sadržaja',
+ 'zza' => 'zaza',
+);
+
+$currencyNames = array(
+ 'ADP' => 'Andorska pezeta',
+ 'AED' => 'Dirham Ujedinjenih Arapskih Emirata',
+ 'AFA' => 'Avganistanski avgani (1927–2002)',
+ 'AFN' => 'Afganistanski afgan',
+ 'ALK' => 'Albanski lek (1946–1965)',
+ 'ALL' => 'Albanski lek',
+ 'AMD' => 'Jermenski dram',
+ 'ANG' => 'Gulden Holandskih Antila',
+ 'AOA' => 'Angolska kvanza',
+ 'AOK' => 'Angolijska kvanza (1977–1991)',
+ 'AON' => 'Angolijska nova kvanza (1990–2000)',
+ 'AOR' => 'Angolijska kvanza reajustado (1995–1999)',
+ 'ARA' => 'Argentinski austral',
+ 'ARL' => 'argentinski pezos lej',
+ 'ARM' => 'argentinski pezo monedo nacional',
+ 'ARP' => 'Argentinski pezo (1983–1985)',
+ 'ARS' => 'Argentinski pezos',
+ 'ATS' => 'Austrijski šiling',
+ 'AUD' => 'Australijski dolar',
+ 'AWG' => 'Arubanski florin',
+ 'AZM' => 'Azerbejdžanski manat (1993–2006)',
+ 'AZN' => 'Azerbejdžanski manat',
+ 'BAD' => 'Bosansko-Hercegovački dinar',
+ 'BAM' => 'Bosansko-Hercegovačka konvertibilna marka',
+ 'BAN' => 'Bosansko-hercegovački novi dinar',
+ 'BBD' => 'Barbadoski dolar',
+ 'BDT' => 'Bangladeška taka',
+ 'BEC' => 'Belgijski frank (konvertibilni)',
+ 'BEF' => 'Belgijski franak',
+ 'BEL' => 'Belgijski frank (finansijski)',
+ 'BGL' => 'Bugarski tvrdi lev',
+ 'BGM' => 'Bugarski socijalistički lev',
+ 'BGN' => 'Bugarski lev',
+ 'BGO' => 'Bugarski lev (1879–1952)',
+ 'BHD' => 'Bahreinski dinar',
+ 'BIF' => 'Burundski franak',
+ 'BMD' => 'Bermudski dolar',
+ 'BND' => 'Brunejski dolar',
+ 'BOB' => 'Bolivijski boliviano',
+ 'BOL' => 'Bolivijski boliviano (1863–1963)',
+ 'BOP' => 'Bolivijski pezo',
+ 'BOV' => 'Bolivijski mvdol',
+ 'BRB' => 'Brazilski kruzeiro novo (1967–1986)',
+ 'BRC' => 'Brazilski kruzado (1986–1989)',
+ 'BRE' => 'Brazilski kruzeiro (1990–1993)',
+ 'BRL' => 'Brazilski real',
+ 'BRN' => 'Brazilski kruzado novo (1989–1990)',
+ 'BRR' => 'Brazilski kruzeiro (1993–1994)',
+ 'BRZ' => 'Brazilski kruzeiro (1942–1967)',
+ 'BSD' => 'Bahamski dolar',
+ 'BTN' => 'Butanski ngultrum',
+ 'BUK' => 'Burmanski kjat',
+ 'BWP' => 'Bocvanska pula',
+ 'BYB' => 'Beloruska nova rublja (1994–1999)',
+ 'BYR' => 'Bjeloruska rublja',
+ 'BZD' => 'Belizeanski dolar',
+ 'CAD' => 'Kanadski dolar',
+ 'CDF' => 'Kongoanski franak',
+ 'CHE' => 'WIR Evro',
+ 'CHF' => 'Švicarski franak',
+ 'CHW' => 'WIR franak',
+ 'CLE' => 'Čileanski eskudo',
+ 'CLF' => 'Čileanski unidades de fomento',
+ 'CLP' => 'Čileanski pezos',
+ 'CNX' => 'Dolar kineske narodne banke',
+ 'CNY' => 'Kineski juan',
+ 'COP' => 'Kolumbijski pezos',
+ 'COU' => 'unidad de valor real',
+ 'CRC' => 'Kostarikanski kolon',
+ 'CSD' => 'Srpski dinar (2002–2006)',
+ 'CSK' => 'Čehoslovačka tvrda koruna',
+ 'CUC' => 'Kubanski konvertibilni pezos',
+ 'CUP' => 'kubanski pezos',
+ 'CVE' => 'Zelenortski eskudo',
+ 'CYP' => 'Kipratska funta',
+ 'CZK' => 'Češka kruna',
+ 'DDM' => 'Istočnoevropska marka',
+ 'DEM' => 'Nemačka marka',
+ 'DJF' => 'Džibutski franak',
+ 'DKK' => 'Danska kruna',
+ 'DOP' => 'Dominikanski pezos',
+ 'DZD' => 'Alžirski dinar',
+ 'ECS' => 'Ekvadorijski sukr',
+ 'ECV' => 'Ekvadorski unidad de valor konstantin (UVC)',
+ 'EEK' => 'Estonska kruna',
+ 'EGP' => 'Egipatska funta',
+ 'ERN' => 'Eritrejska nakfa',
+ 'ESA' => 'Španska pezeta (račun) ESA',
+ 'ESB' => 'Španska pezeta (konvertibilni račun)',
+ 'ESP' => 'Španska pezeta',
+ 'ETB' => 'Etiopski bir',
+ 'EUR' => 'Euro',
+ 'FIM' => 'Finska marka',
+ 'FJD' => 'Fidži dolar',
+ 'FKP' => 'Folklandska funta',
+ 'FRF' => 'Francuski franak',
+ 'GBP' => 'Britanska funta sterlinga',
+ 'GEK' => 'Gruzijski kupon larit',
+ 'GEL' => 'Gruzijski lari',
+ 'GHC' => 'Ganijski cedi (1979–2007)',
+ 'GHS' => 'Ganski cedi',
+ 'GIP' => 'Gibraltarska funta',
+ 'GMD' => 'Gambijski dalasi',
+ 'GNF' => 'Gvinejski franak',
+ 'GNS' => 'Gvinejski sili',
+ 'GQE' => 'Evatorijalna gvineja ekvele',
+ 'GRD' => 'Drahma',
+ 'GTQ' => 'Gvatemalski kecal',
+ 'GWE' => 'Portugalska Gvineja eskudo',
+ 'GWP' => 'Gvineja bisao pezo',
+ 'GYD' => 'Gvajanski dolar',
+ 'HKD' => 'Honkonški dolar',
+ 'HNL' => 'Honduraska lempira',
+ 'HRD' => 'Hrvatski dinar',
+ 'HRK' => 'Hrvatska kuna',
+ 'HTG' => 'Haićanski gurd',
+ 'HUF' => 'Mađarska forinta',
+ 'IDR' => 'Indonežanska rupija',
+ 'IEP' => 'Irska funta',
+ 'ILP' => 'Izraelska funta',
+ 'ILR' => 'stari izraelski šekeli',
+ 'ILS' => 'Izraelski novi šekel',
+ 'INR' => 'Indijska rupija',
+ 'IQD' => 'Irački dinar',
+ 'IRR' => 'Iranski rijal',
+ 'ISJ' => 'stara islandska kruna',
+ 'ISK' => 'Islandska kruna',
+ 'ITL' => 'Italijanska lira',
+ 'JMD' => 'Jamajski dolar',
+ 'JOD' => 'Jordanski dinar',
+ 'JPY' => 'Japanski jen',
+ 'KES' => 'Kenijski šiling',
+ 'KGS' => 'Kirgistanski som',
+ 'KHR' => 'Kambodžanski rijel',
+ 'KMF' => 'Komorski franak',
+ 'KPW' => 'Sjevernokorejski von',
+ 'KRH' => 'Južno-korejski hvan (1953–1962)',
+ 'KRO' => 'Južno-korejski Von (1945–1953)',
+ 'KRW' => 'Južnokorejski von',
+ 'KWD' => 'Kuvajtski dinar',
+ 'KYD' => 'Kajmanski dolar',
+ 'KZT' => 'Kazahstanski tenge',
+ 'LAK' => 'Laoski kip',
+ 'LBP' => 'Libanska funta',
+ 'LKR' => 'Šrilankanska rupija',
+ 'LRD' => 'Liberijski dolar',
+ 'LSL' => 'Lesotski loti',
+ 'LTL' => 'Litvanski litas',
+ 'LTT' => 'Litvanski talonas',
+ 'LUC' => 'Luksemburški konvertibilni franak',
+ 'LUF' => 'Luksemburški franak',
+ 'LUL' => 'Luksemburški finansijski franak',
+ 'LVL' => 'Letonski lats',
+ 'LVR' => 'Latvijska rublja',
+ 'LYD' => 'Libijski dinar',
+ 'MAD' => 'Marokanski dirham',
+ 'MAF' => 'Marokanski franak',
+ 'MCF' => 'Monegaskaški franak',
+ 'MDC' => 'moldavski kupon',
+ 'MDL' => 'Moldavski lev',
+ 'MGA' => 'Malagaski ariari',
+ 'MGF' => 'Malagasijski franak',
+ 'MKD' => 'Makedonski denar',
+ 'MKN' => 'Makedonski denar (1992–1993)',
+ 'MLF' => 'Malijanski franak',
+ 'MMK' => 'Mijanmarski kjat',
+ 'MNT' => 'Mongolski tugrik',
+ 'MOP' => 'Makaonska pataka',
+ 'MRO' => 'Mauritanijska ugvija',
+ 'MTL' => 'Malteška lira',
+ 'MTP' => 'Malteška funta',
+ 'MUR' => 'Mauricijska rupija',
+ 'MVR' => 'Maldivska rufija',
+ 'MWK' => 'Malavska kvača',
+ 'MXN' => 'Meksički pezos',
+ 'MXP' => 'Meksijski srebrno pezo (1861–1992)',
+ 'MXV' => 'Meksijski unidad de inverzion',
+ 'MYR' => 'Malezijski ringit',
+ 'MZE' => 'Mozambijski eskudo',
+ 'MZM' => 'Mozambijski metikal (1980–2006)',
+ 'MZN' => 'Mozambijski metikal',
+ 'NAD' => 'Namibijski dolar',
+ 'NGN' => 'Nigerijska naira',
+ 'NIC' => 'Nikaragvanška kordoba (1988–1991)',
+ 'NIO' => 'Nikaragvanska kordoba',
+ 'NLG' => 'Holandski gulden',
+ 'NOK' => 'Norveška kruna',
+ 'NPR' => 'Nepalska rupija',
+ 'NZD' => 'Novozelandski dolar',
+ 'OMR' => 'Omanski rijal',
+ 'PAB' => 'Panamska balboa',
+ 'PEI' => 'Peruvijski inti',
+ 'PEN' => 'Peruanski novi sol',
+ 'PES' => 'Peruvijski sol (1863–1965)',
+ 'PGK' => 'Kina Papue Nove Gvineje',
+ 'PHP' => 'Filipinski pezos',
+ 'PKR' => 'Pakistanska rupija',
+ 'PLN' => 'Poljski zlot',
+ 'PLZ' => 'Poljski zloti (1950–1995)',
+ 'PTE' => 'Portugalski eskudo',
+ 'PYG' => 'Paragvajski gvarani',
+ 'QAR' => 'Katarski rijal',
+ 'RHD' => 'Rodizijski dolar',
+ 'ROL' => 'Rumunski leu (1952–2006)',
+ 'RON' => 'Rumunski lev',
+ 'RSD' => 'Srpski dinar',
+ 'RUB' => 'Ruska rublja',
+ 'RUR' => 'Ruska rublja (1991–1998)',
+ 'RWF' => 'Ruandski franak',
+ 'SAR' => 'Saudijski rijal',
+ 'SBD' => 'Solomonski dolar',
+ 'SCR' => 'Sejšelska rupija',
+ 'SDD' => 'Sudanski dinar (1992–2007)',
+ 'SDG' => 'Sudanska funta',
+ 'SDP' => 'Sudanska funta (1957–1998)',
+ 'SEK' => 'Švedska kruna',
+ 'SGD' => 'Singapurski dolar',
+ 'SHP' => 'Svetohelenska funta',
+ 'SIT' => 'Slovenski tolar',
+ 'SKK' => 'Slovačka kruna',
+ 'SLL' => 'Sijeraleonski leone',
+ 'SOS' => 'Somalski šiling',
+ 'SRD' => 'Surinamski dolar',
+ 'SRG' => 'Surinamski gilder',
+ 'SSP' => 'Južnosudanska funta',
+ 'STD' => 'Dobra Sao Toma i Principa',
+ 'SUR' => 'Sovjetska rublja',
+ 'SVC' => 'Salvadorski kolon',
+ 'SYP' => 'Sirijska funta',
+ 'SZL' => 'Svazilendski lilangeni',
+ 'THB' => 'Tajlandski baht',
+ 'TJR' => 'Tadžakistanska rublja',
+ 'TJS' => 'Tadžikistanski somoni',
+ 'TMM' => 'Turkmenistanski manat (1993–2009)',
+ 'TMT' => 'Turkmenistanski manat',
+ 'TND' => 'Tuniski dinar',
+ 'TOP' => 'Tonganska panga',
+ 'TPE' => 'Timorški eskudo',
+ 'TRL' => 'Turska lira (1922–2005)',
+ 'TRY' => 'Turska lira',
+ 'TTD' => 'Trinidadtobaški dolar',
+ 'TWD' => 'Novi tajvanski dolar',
+ 'TZS' => 'Tanzanski šiling',
+ 'UAH' => 'Ukrajinska grivna',
+ 'UAK' => 'Ukrajinski karbovaneti',
+ 'UGS' => 'Ugandijski šiling (1966–1987)',
+ 'UGX' => 'Ugandski šiling',
+ 'USD' => 'Američki dolar',
+ 'USN' => 'SAD dolar (sledeći dan)',
+ 'USS' => 'SAD dolar (isti dan)',
+ 'UYI' => 'Urugvajski pezo en unidades indeksades',
+ 'UYP' => 'Urugvajski pezo (1975–1993)',
+ 'UYU' => 'Urugvajski pezos',
+ 'UZS' => 'Uzbekistanski som',
+ 'VEB' => 'Venecuelanski bolivar (1871–2008)',
+ 'VEF' => 'Venecuelanski bolivar',
+ 'VND' => 'Vijetnamski dong',
+ 'VNN' => 'Vijetnamski dong (1978–1985)',
+ 'VUV' => 'Vanuatski vatu',
+ 'WST' => 'Samoanska tala',
+ 'XAF' => 'CFA franak BEAC',
+ 'XAG' => 'Srebro',
+ 'XAU' => 'Zlato',
+ 'XBA' => 'Evropska kompozitna jedinica',
+ 'XBB' => 'Evropska novčana jedinica',
+ 'XBC' => 'Evropska jedinica računa (XBC)',
+ 'XBD' => 'Evropska jedinica računa (XBD)',
+ 'XCD' => 'Istočnokaripski dolar',
+ 'XDR' => 'Posebna prava',
+ 'XEU' => 'Evropska valutna jedinica',
+ 'XFO' => 'Francuski zlatni frank',
+ 'XFU' => 'Francuski UIC-frank',
+ 'XOF' => 'CFA franak BCEAO',
+ 'XPD' => 'Paladijum',
+ 'XPF' => 'CFP franak',
+ 'XPT' => 'Platina',
+ 'XRE' => 'RINET fondovi',
+ 'XTS' => 'Kod testirane valute',
+ 'XXX' => 'Nepoznata valuta',
+ 'YDD' => 'Jemenski dinar',
+ 'YER' => 'Jemenski rijal',
+ 'YUD' => 'Jugoslovenski tvrdi dinar',
+ 'YUM' => 'Jugoslovenski novi dinar',
+ 'YUN' => 'Jugoslovenski konvertibilni dinar',
+ 'YUR' => 'Jugoslovenski reformirani dinar',
+ 'ZAL' => 'Južnoafrički rand (finansijski)',
+ 'ZAR' => 'Južnoafrički rand',
+ 'ZMK' => 'Zambijska kvača (1968–2012)',
+ 'ZMW' => 'Zambijska kvača',
+ 'ZRN' => 'Zairski novi zair (1993–1998)',
+ 'ZRZ' => 'Zairski zair (1971–1993)',
+ 'ZWD' => 'Zimbabvejski dolar (1980–2008)',
+ 'ZWL' => 'Zimbabvejski dolar (2009)',
+ 'ZWR' => 'Zimbabvejski dolar (2008)',
+);
+
+$currencySymbols = array(
+ 'AED' => 'AED',
+ 'AFN' => 'AFN',
+ 'ALL' => 'ALL',
+ 'AMD' => 'AMD',
+ 'ANG' => 'ANG',
+ 'AOA' => 'AOA',
+ 'ARS' => 'ARS',
+ 'AUD' => 'AUD',
+ 'AWG' => 'AWG',
+ 'AZN' => 'AZN',
+ 'BAM' => 'KM',
+ 'BBD' => 'BBD',
+ 'BDT' => 'BDT',
+ 'BGN' => 'BGN',
+ 'BHD' => 'BHD',
+ 'BIF' => 'BIF',
+ 'BMD' => 'BMD',
+ 'BND' => 'BND',
+ 'BOB' => 'BOB',
+ 'BRL' => 'BRL',
+ 'BSD' => 'BSD',
+ 'BTN' => 'BTN',
+ 'BWP' => 'BWP',
+ 'BYR' => 'BYR',
+ 'BZD' => 'BZD',
+ 'CAD' => 'CAD',
+ 'CDF' => 'CDF',
+ 'CHF' => 'CHF',
+ 'CLP' => 'CLP',
+ 'CNY' => 'CNY',
+ 'COP' => 'COP',
+ 'CRC' => 'CRC',
+ 'CUC' => 'CUC',
+ 'CUP' => 'CUP',
+ 'CVE' => 'CVE',
+ 'CZK' => 'CZK',
+ 'DJF' => 'DJF',
+ 'DKK' => 'DKK',
+ 'DOP' => 'DOP',
+ 'DZD' => 'DZD',
+ 'EGP' => 'EGP',
+ 'ERN' => 'ERN',
+ 'ETB' => 'ETB',
+ 'EUR' => '€',
+ 'FJD' => 'FJD',
+ 'FKP' => 'FKP',
+ 'GBP' => 'GBP',
+ 'GEL' => 'GEL',
+ 'GHS' => 'GHS',
+ 'GIP' => 'GIP',
+ 'GMD' => 'GMD',
+ 'GNF' => 'GNF',
+ 'GTQ' => 'GTQ',
+ 'GYD' => 'GYD',
+ 'HKD' => 'HKD',
+ 'HNL' => 'HNL',
+ 'HRK' => 'kn',
+ 'HTG' => 'HTG',
+ 'HUF' => 'HUF',
+ 'IDR' => 'IDR',
+ 'ILS' => 'ILS',
+ 'INR' => '₹',
+ 'IQD' => 'IQD',
+ 'IRR' => 'IRR',
+ 'ISK' => 'ISK',
+ 'JMD' => 'JMD',
+ 'JOD' => 'JOD',
+ 'JPY' => '¥',
+ 'KES' => 'KES',
+ 'KGS' => 'KGS',
+ 'KHR' => 'KHR',
+ 'KMF' => 'KMF',
+ 'KPW' => 'KPW',
+ 'KRW' => '₩',
+ 'KWD' => 'KWD',
+ 'KYD' => 'KYD',
+ 'KZT' => 'KZT',
+ 'LAK' => 'LAK',
+ 'LBP' => 'LBP',
+ 'LKR' => 'LKR',
+ 'LRD' => 'LRD',
+ 'LTL' => 'LTL',
+ 'LVL' => 'LVL',
+ 'LYD' => 'LYD',
+ 'MAD' => 'MAD',
+ 'MDL' => 'MDL',
+ 'MGA' => 'MGA',
+ 'MKD' => 'MKD',
+ 'MMK' => 'MMK',
+ 'MNT' => 'MNT',
+ 'MOP' => 'MOP',
+ 'MRO' => 'MRO',
+ 'MUR' => 'MUR',
+ 'MVR' => 'MVR',
+ 'MWK' => 'MWK',
+ 'MXN' => 'MXN',
+ 'MYR' => 'MYR',
+ 'MZN' => 'MZN',
+ 'NAD' => 'NAD',
+ 'NGN' => 'NGN',
+ 'NIO' => 'NIO',
+ 'NOK' => 'NOK',
+ 'NPR' => 'NPR',
+ 'NZD' => 'NZD',
+ 'OMR' => 'OMR',
+ 'PAB' => 'PAB',
+ 'PEN' => 'PEN',
+ 'PGK' => 'PGK',
+ 'PHP' => 'PHP',
+ 'PKR' => 'PKR',
+ 'PLN' => 'PLN',
+ 'PYG' => 'PYG',
+ 'QAR' => 'QAR',
+ 'RON' => 'RON',
+ 'RSD' => 'din.',
+ 'RUB' => 'RUB',
+ 'RWF' => 'RWF',
+ 'SAR' => 'SAR',
+ 'SBD' => 'SBD',
+ 'SCR' => 'SCR',
+ 'SDG' => 'SDG',
+ 'SEK' => 'SEK',
+ 'SGD' => 'SGD',
+ 'SHP' => 'SHP',
+ 'SLL' => 'SLL',
+ 'SOS' => 'SOS',
+ 'SRD' => 'SRD',
+ 'SSP' => 'SSP',
+ 'STD' => 'STD',
+ 'SYP' => 'SYP',
+ 'SZL' => 'SZL',
+ 'THB' => '฿',
+ 'TJS' => 'TJS',
+ 'TMT' => 'TMT',
+ 'TND' => 'TND',
+ 'TOP' => 'TOP',
+ 'TRY' => 'TRY',
+ 'TTD' => 'TTD',
+ 'TWD' => 'NT$',
+ 'TZS' => 'TZS',
+ 'UAH' => 'UAH',
+ 'UGX' => 'UGX',
+ 'USD' => 'USD',
+ 'UYU' => 'UYU',
+ 'UZS' => 'UZS',
+ 'VEF' => 'VEF',
+ 'VND' => '₫',
+ 'VUV' => 'VUV',
+ 'WST' => 'WST',
+ 'XAF' => 'FCFA',
+ 'XCD' => 'XCD',
+ 'XOF' => 'CFA',
+ 'XPF' => 'XPF',
+ 'YER' => 'YER',
+ 'ZAR' => 'ZAR',
+ 'ZMW' => 'ZMW',
+);
+
+$countryNames = array(
+ 'AC' => 'Ostrvo Asension',
+ 'AD' => 'Andora',
+ 'AE' => 'Ujedinjeni Arapski Emirati',
+ 'AF' => 'Afganistan',
+ 'AG' => 'Antigva i Barbuda',
+ 'AI' => 'Angvila',
+ 'AL' => 'Albanija',
+ 'AM' => 'Jermenija',
+ 'AN' => 'Holandski Antili',
+ 'AO' => 'Angola',
+ 'AQ' => 'Antarktika',
+ 'AR' => 'Argentina',
+ 'AS' => 'Američka Samoa',
+ 'AT' => 'Austrija',
+ 'AU' => 'Australija',
+ 'AW' => 'Aruba',
+ 'AX' => 'Alandska Ostrva',
+ 'AZ' => 'Azerbejdžan',
+ 'BA' => 'Bosna i Hercegovina',
+ 'BB' => 'Barbados',
+ 'BD' => 'Bangladeš',
+ 'BE' => 'Belgija',
+ 'BF' => 'Burkina Faso',
+ 'BG' => 'Bugarska',
+ 'BH' => 'Bahrein',
+ 'BI' => 'Burundi',
+ 'BJ' => 'Benin',
+ 'BL' => 'Sv. Bartolomej',
+ 'BM' => 'Bermuda',
+ 'BN' => 'Brunej',
+ 'BO' => 'Bolivija',
+ 'BQ' => 'Karipska Holandija',
+ 'BR' => 'Brazil',
+ 'BS' => 'Bahami',
+ 'BT' => 'Butan',
+ 'BV' => 'Buve Ostrva',
+ 'BW' => 'Bocvana',
+ 'BY' => 'Bjelorusija',
+ 'BZ' => 'Belize',
+ 'CA' => 'Kanada',
+ 'CC' => 'Kokos (Keling) Ostrva',
+ 'CD' => 'Demokratska Republika Kongo',
+ 'CF' => 'Centralnoafrička Republika',
+ 'CG' => 'Kongo',
+ 'CH' => 'Švicarska',
+ 'CI' => 'Obala Slonovače',
+ 'CK' => 'Kukova Ostrva',
+ 'CL' => 'Čile',
+ 'CM' => 'Kamerun',
+ 'CN' => 'Kina',
+ 'CO' => 'Kolumbija',
+ 'CP' => 'Ostrvo Kliperton',
+ 'CR' => 'Kostarika',
+ 'CU' => 'Kuba',
+ 'CV' => 'Kape Verde',
+ 'CW' => 'Kurasao',
+ 'CX' => 'Božićna Ostrva',
+ 'CY' => 'Kipar',
+ 'CZ' => 'Češka',
+ 'DE' => 'Njemačka',
+ 'DG' => 'Dijego Garsija',
+ 'DJ' => 'Džibuti',
+ 'DK' => 'Danska',
+ 'DM' => 'Dominika',
+ 'DO' => 'Dominikanska Republika',
+ 'DZ' => 'Alžir',
+ 'EA' => 'Seuta i Melilja',
+ 'EC' => 'Ekvador',
+ 'EE' => 'Estonija',
+ 'EG' => 'Egipat',
+ 'EH' => 'Zapadna Sahara',
+ 'ER' => 'Eritreja',
+ 'ES' => 'Španija',
+ 'ET' => 'Etiopija',
+ 'EU' => 'Evropska Unija',
+ 'FI' => 'Finska',
+ 'FJ' => 'Fidži',
+ 'FK' => 'Folklandska Ostrva',
+ 'FM' => 'Mikronezija',
+ 'FO' => 'Farska Ostrva',
+ 'FR' => 'Francuska',
+ 'GA' => 'Gabon',
+ 'GB' => 'UK',
+ 'GD' => 'Grenada',
+ 'GE' => 'Gruzija',
+ 'GF' => 'Francuska Gvajana',
+ 'GG' => 'Gernzi',
+ 'GH' => 'Gana',
+ 'GI' => 'Gibraltar',
+ 'GL' => 'Grenland',
+ 'GM' => 'Gambija',
+ 'GN' => 'Gvineja',
+ 'GP' => 'Gvadelupe',
+ 'GQ' => 'Ekvatorijalna Gvineja',
+ 'GR' => 'Grčka',
+ 'GS' => 'Južna Džordžija i Južna Sendvič Ostrva',
+ 'GT' => 'Gvatemala',
+ 'GU' => 'Guam',
+ 'GW' => 'Gvineja-Bisao',
+ 'GY' => 'Gvajana',
+ 'HK' => 'Hong Kong',
+ 'HM' => 'Herd i Mekdonald Ostrva',
+ 'HN' => 'Honduras',
+ 'HR' => 'Hrvatska',
+ 'HT' => 'Haiti',
+ 'HU' => 'Mađarska',
+ 'IC' => 'Kanarska ostrva',
+ 'ID' => 'Indonezija',
+ 'IE' => 'Irska',
+ 'IL' => 'Izrael',
+ 'IM' => 'Ostrvo Man',
+ 'IN' => 'Indija',
+ 'IO' => 'Britanska Territorija u Indijskom Okeanu',
+ 'IQ' => 'Irak',
+ 'IR' => 'Iran',
+ 'IS' => 'Island',
+ 'IT' => 'Italija',
+ 'JE' => 'Džersi',
+ 'JM' => 'Jamajka',
+ 'JO' => 'Jordan',
+ 'JP' => 'Japan',
+ 'KE' => 'Kenija',
+ 'KG' => 'Kirgizstan',
+ 'KH' => 'Kambodža',
+ 'KI' => 'Kiribati',
+ 'KM' => 'Komorska Ostrva',
+ 'KN' => 'Sent Kits i Nevis',
+ 'KP' => 'Sjeverna Koreja',
+ 'KR' => 'Južna Koreja',
+ 'KW' => 'Kuvajt',
+ 'KY' => 'Kajmanska Ostrva',
+ 'KZ' => 'Kazahstan',
+ 'LA' => 'Laos',
+ 'LB' => 'Liban',
+ 'LC' => 'Sent Lucija',
+ 'LI' => 'Lihtenštajn',
+ 'LK' => 'Šri Lanka',
+ 'LR' => 'Liberija',
+ 'LS' => 'Lesoto',
+ 'LT' => 'Litvanija',
+ 'LU' => 'Luksemburg',
+ 'LV' => 'Letonija',
+ 'LY' => 'Libija',
+ 'MA' => 'Maroko',
+ 'MC' => 'Monako',
+ 'MD' => 'Moldavija',
+ 'ME' => 'Crna Gora',
+ 'MF' => 'Sv. Martin',
+ 'MG' => 'Madagaskar',
+ 'MH' => 'Maršalska Ostrva',
+ 'MK' => 'Makedonija',
+ 'ML' => 'Mali',
+ 'MM' => 'Mijanmar',
+ 'MN' => 'Mongolija',
+ 'MO' => 'Makao',
+ 'MP' => 'Sjeverna Marijanska Ostrva',
+ 'MQ' => 'Martinik',
+ 'MR' => 'Mauritanija',
+ 'MS' => 'Monserat',
+ 'MT' => 'Malta',
+ 'MU' => 'Mauricius',
+ 'MV' => 'Maldivi',
+ 'MW' => 'Malavi',
+ 'MX' => 'Meksiko',
+ 'MY' => 'Malezija',
+ 'MZ' => 'Mozambik',
+ 'NA' => 'Namibija',
+ 'NC' => 'Nova Kaledonija',
+ 'NE' => 'Niger',
+ 'NF' => 'Norfolk Ostrvo',
+ 'NG' => 'Nigerija',
+ 'NI' => 'Nikaragva',
+ 'NL' => 'Holandija',
+ 'NO' => 'Norveška',
+ 'NP' => 'Nepal',
+ 'NR' => 'Nauru',
+ 'NU' => 'Niue',
+ 'NZ' => 'Novi Zeland',
+ 'OM' => 'Oman',
+ 'PA' => 'Panama',
+ 'PE' => 'Peru',
+ 'PF' => 'Francuska Polinezija',
+ 'PG' => 'Papua Nova Gvineja',
+ 'PH' => 'Filipini',
+ 'PK' => 'Pakistan',
+ 'PL' => 'Poljska',
+ 'PM' => 'Sen Pjer i Mikelon',
+ 'PN' => 'Pitkern',
+ 'PR' => 'Porto Riko',
+ 'PS' => 'Palestina',
+ 'PT' => 'Portugal',
+ 'PW' => 'Palau',
+ 'PY' => 'Paragvaj',
+ 'QA' => 'Katar',
+ 'QO' => 'Ostala Okeanija',
+ 'RE' => 'Rejunion',
+ 'RO' => 'Rumunija',
+ 'RS' => 'Srbija',
+ 'RU' => 'Rusija',
+ 'RW' => 'Ruanda',
+ 'SA' => 'Saudijska Arabija',
+ 'SB' => 'Solomonska Ostrva',
+ 'SC' => 'Sejšeli',
+ 'SD' => 'Sudan',
+ 'SE' => 'Švedska',
+ 'SG' => 'Singapur',
+ 'SH' => 'Sveta Helena',
+ 'SI' => 'Slovenija',
+ 'SJ' => 'Svalbard i Janmajen Ostrva',
+ 'SK' => 'Slovačka',
+ 'SL' => 'Sijera Leone',
+ 'SM' => 'San Marino',
+ 'SN' => 'Senegal',
+ 'SO' => 'Somalija',
+ 'SR' => 'Surinam',
+ 'SS' => 'Južni Sudan',
+ 'ST' => 'Sao Tome i Principe',
+ 'SV' => 'Salvador',
+ 'SX' => 'Sint Marten',
+ 'SY' => 'Sirija',
+ 'SZ' => 'Svazilend',
+ 'TA' => 'Tristan da Kunja',
+ 'TC' => 'Turks i Kajkos Ostrva',
+ 'TD' => 'Čad',
+ 'TF' => 'Francuske Južne Teritorije',
+ 'TG' => 'Togo',
+ 'TH' => 'Tajland',
+ 'TJ' => 'Tadžikistan',
+ 'TK' => 'Tokelau',
+ 'TL' => 'Timor Leste',
+ 'TM' => 'Turkmenistan',
+ 'TN' => 'Tunis',
+ 'TO' => 'Tonga',
+ 'TR' => 'Turska',
+ 'TT' => 'Trinidad i Tobago',
+ 'TV' => 'Tuvalu',
+ 'TW' => 'Tajvan',
+ 'TZ' => 'Tanzanija',
+ 'UA' => 'Ukrajina',
+ 'UG' => 'Uganda',
+ 'UM' => 'Manja Udaljena Ostrva SAD',
+ 'US' => 'SAD',
+ 'UY' => 'Urugvaj',
+ 'UZ' => 'Uzbekistan',
+ 'VA' => 'Vatikan',
+ 'VC' => 'Sent Vinsent i Grenadini',
+ 'VE' => 'Venecuela',
+ 'VG' => 'Britanska Djevičanska Ostrva',
+ 'VI' => 'Djevičanska Ostrva SAD',
+ 'VN' => 'Vijetnam',
+ 'VU' => 'Vanuatu',
+ 'WF' => 'Valis i Futuna Ostrva',
+ 'WS' => 'Samoa',
+ 'XK' => 'Kosovo',
+ 'YE' => 'Jemen',
+ 'YT' => 'Majote',
+ 'ZA' => 'Južnoafrička Republika',
+ 'ZM' => 'Zambija',
+ 'ZW' => 'Zimbabve',
+);
+
+$timeUnits = array(
+ 'day-few' => '{0} dana',
+ 'day-future-few' => 'za {0} dana',
+ 'day-future-one' => 'za {0} dan',
+ 'day-future-other' => 'za {0} dana',
+ 'day-narrow-future-few' => 'za {0} d.',
+ 'day-narrow-future-one' => 'za {0} d.',
+ 'day-narrow-future-other' => 'za {0} d.',
+ 'day-narrow-past-few' => 'prije {0} d.',
+ 'day-narrow-past-one' => 'prije {0} d.',
+ 'day-narrow-past-other' => 'prije {0} d.',
+ 'day-one' => '{0} dan',
+ 'day-other' => '{0} dana',
+ 'day-past-few' => 'prije {0} dana',
+ 'day-past-one' => 'prije {0} dan',
+ 'day-past-other' => 'prije {0} dana',
+ 'day-short-future-few' => 'za {0} d.',
+ 'day-short-future-one' => 'za {0} d.',
+ 'day-short-future-other' => 'za {0} d.',
+ 'day-short-past-few' => 'prije {0} d.',
+ 'day-short-past-one' => 'prije {0} d.',
+ 'day-short-past-other' => 'prije {0} d.',
+ 'hour-few' => '{0} sata',
+ 'hour-future-few' => 'za {0} sata',
+ 'hour-future-one' => 'za {0} sat',
+ 'hour-future-other' => 'za {0} sati',
+ 'hour-narrow-future-few' => 'za {0} sati',
+ 'hour-narrow-future-one' => 'za {0} sati',
+ 'hour-narrow-future-other' => 'za {0} sati',
+ 'hour-narrow-past-few' => 'prije {0} sati',
+ 'hour-narrow-past-one' => 'prije {0} sati',
+ 'hour-narrow-past-other' => 'prije {0} sati',
+ 'hour-one' => '{0} sat',
+ 'hour-other' => '{0} sati',
+ 'hour-past-few' => 'prije {0} sata',
+ 'hour-past-one' => 'prije {0} sat',
+ 'hour-past-other' => 'prije {0} sati',
+ 'hour-short-future-few' => 'za {0} sati',
+ 'hour-short-future-one' => 'za {0} sati',
+ 'hour-short-future-other' => 'za {0} sati',
+ 'hour-short-past-few' => 'prije {0} sati',
+ 'hour-short-past-one' => 'prije {0} sati',
+ 'hour-short-past-other' => 'prije {0} sati',
+ 'microsecond-few' => '{0} μs',
+ 'microsecond-one' => '{0} μs',
+ 'microsecond-other' => '{0} μs',
+ 'millisecond-few' => '{0} milisekunde',
+ 'millisecond-one' => '{0} milisekunda',
+ 'millisecond-other' => '{0} milisekundi',
+ 'minute-few' => '{0} minute',
+ 'minute-future-few' => 'za {0} minute',
+ 'minute-future-one' => 'za {0} minutu',
+ 'minute-future-other' => 'za {0} minuta',
+ 'minute-narrow-future-few' => 'za {0} min.',
+ 'minute-narrow-future-one' => 'za {0} min.',
+ 'minute-narrow-future-other' => 'za {0} min.',
+ 'minute-narrow-past-few' => 'prije {0} min.',
+ 'minute-narrow-past-one' => 'prije {0} min.',
+ 'minute-narrow-past-other' => 'prije {0} min.',
+ 'minute-one' => '{0} minut',
+ 'minute-other' => '{0} minuta',
+ 'minute-past-few' => 'prije {0} minute',
+ 'minute-past-one' => 'prije {0} minutu',
+ 'minute-past-other' => 'prije {0} minuta',
+ 'minute-short-future-few' => 'za {0} min.',
+ 'minute-short-future-one' => 'za {0} min.',
+ 'minute-short-future-other' => 'za {0} min.',
+ 'minute-short-past-few' => 'prije {0} min.',
+ 'minute-short-past-one' => 'prije {0} min.',
+ 'minute-short-past-other' => 'prije {0} min.',
+ 'month-few' => '{0} mjeseca',
+ 'month-future-few' => 'za {0} mjeseca',
+ 'month-future-one' => 'za {0} mjesec',
+ 'month-future-other' => 'za {0} mjeseci',
+ 'month-narrow-future-few' => 'za {0} mj.',
+ 'month-narrow-future-one' => 'za {0} mj.',
+ 'month-narrow-future-other' => 'za {0} mj.',
+ 'month-narrow-past-few' => 'prije {0} mj.',
+ 'month-narrow-past-one' => 'prije {0} mj.',
+ 'month-narrow-past-other' => 'prije {0} mj.',
+ 'month-one' => '{0} mjesec',
+ 'month-other' => '{0} mjeseci',
+ 'month-past-few' => 'prije {0} mjeseca',
+ 'month-past-one' => 'prije {0} mjesec',
+ 'month-past-other' => 'prije {0} mjeseci',
+ 'month-short-future-few' => 'za {0} mj.',
+ 'month-short-future-one' => 'za {0} mj.',
+ 'month-short-future-other' => 'za {0} mj.',
+ 'month-short-past-few' => 'prije {0} mj.',
+ 'month-short-past-one' => 'prije {0} mj.',
+ 'month-short-past-other' => 'prije {0} mj.',
+ 'nanosecond-few' => '{0} ns',
+ 'nanosecond-one' => '{0} ns',
+ 'nanosecond-other' => '{0} ns',
+ 'quarter-future-few' => 'za {0} kvartala',
+ 'quarter-future-one' => 'za {0} kvartal',
+ 'quarter-future-other' => 'za {0} kvartala',
+ 'quarter-narrow-future-few' => 'za {0} kv.',
+ 'quarter-narrow-future-one' => 'za {0} kv.',
+ 'quarter-narrow-future-other' => 'za {0} kv.',
+ 'quarter-narrow-past-few' => 'prije {0} kv.',
+ 'quarter-narrow-past-one' => 'prije {0} kv.',
+ 'quarter-narrow-past-other' => 'prije {0} kv.',
+ 'quarter-past-few' => 'prije {0} kvartala',
+ 'quarter-past-one' => 'prije {0} kvartal',
+ 'quarter-past-other' => '-{0} kv.',
+ 'quarter-short-future-few' => 'za {0} kv.',
+ 'quarter-short-future-one' => 'za {0} kv.',
+ 'quarter-short-future-other' => 'za {0} kv.',
+ 'quarter-short-past-few' => 'prije {0} kv.',
+ 'quarter-short-past-one' => 'prije {0} kv.',
+ 'quarter-short-past-other' => 'prije {0} kv.',
+ 'second-few' => '{0} sekunde',
+ 'second-future-few' => 'za {0} sekunde',
+ 'second-future-one' => 'za {0} sekundu',
+ 'second-future-other' => 'za {0} sekundi',
+ 'second-narrow-future-few' => 'za {0} sek.',
+ 'second-narrow-future-one' => 'za {0} sek.',
+ 'second-narrow-future-other' => 'za {0} sek.',
+ 'second-narrow-past-few' => 'prije {0} sek.',
+ 'second-narrow-past-one' => 'prije {0} sek.',
+ 'second-narrow-past-other' => 'prije {0} sek.',
+ 'second-one' => '{0} sekunda',
+ 'second-other' => '{0} sekundi',
+ 'second-past-few' => 'prije {0} sekunde',
+ 'second-past-one' => 'prije {0} sekundu',
+ 'second-past-other' => 'prije {0} sekundi',
+ 'second-short-future-few' => 'za {0} sek.',
+ 'second-short-future-one' => 'za {0} sek.',
+ 'second-short-future-other' => 'za {0} sek.',
+ 'second-short-past-few' => 'prije {0} sek.',
+ 'second-short-past-one' => 'prije {0} sek.',
+ 'second-short-past-other' => 'prije {0} sek.',
+ 'week-few' => '{0} sedmice',
+ 'week-future-few' => 'za {0} sedmice',
+ 'week-future-one' => 'za {0} sedmicu',
+ 'week-future-other' => 'za {0} sedmica',
+ 'week-narrow-future-few' => 'za {0} sed.',
+ 'week-narrow-future-one' => 'za {0} sed.',
+ 'week-narrow-future-other' => 'za {0} sed.',
+ 'week-narrow-past-few' => 'prije {0} sed.',
+ 'week-narrow-past-one' => 'prije {0} sed.',
+ 'week-narrow-past-other' => 'prije {0} sed.',
+ 'week-one' => '{0} sedmica',
+ 'week-other' => '{0} sedmica',
+ 'week-past-few' => 'prije {0} sedmice',
+ 'week-past-one' => 'prije {0} sedmicu',
+ 'week-past-other' => 'prije {0} sedmica',
+ 'week-short-future-few' => 'za {0} sed.',
+ 'week-short-future-one' => 'za {0} sed.',
+ 'week-short-future-other' => 'za {0} sed.',
+ 'week-short-past-few' => 'prije {0} sed.',
+ 'week-short-past-one' => 'prije {0} sed.',
+ 'week-short-past-other' => 'prije {0} sed.',
+ 'year-few' => '{0} godine',
+ 'year-future-few' => 'za {0} godine',
+ 'year-future-one' => 'za {0} godinu',
+ 'year-future-other' => 'za {0} godina',
+ 'year-narrow-future-few' => 'za {0} g.',
+ 'year-narrow-future-one' => 'za {0} g.',
+ 'year-narrow-future-other' => 'za {0} g.',
+ 'year-narrow-past-few' => 'prije {0} g.',
+ 'year-narrow-past-one' => 'prije {0} g.',
+ 'year-narrow-past-other' => 'prije {0} g.',
+ 'year-one' => '{0} godina',
+ 'year-other' => '{0} godina',
+ 'year-past-few' => 'prije {0} godine',
+ 'year-past-one' => 'prije {0} godinu',
+ 'year-past-other' => 'prije {0} godina',
+ 'year-short-future-few' => 'za {0} god.',
+ 'year-short-future-one' => 'za {0} god.',
+ 'year-short-future-other' => 'za {0} god.',
+ 'year-short-past-few' => 'prije {0} god.',
+ 'year-short-past-one' => 'prije {0} god.',
+ 'year-short-past-other' => 'prije {0} god.',
+);
diff --git a/MLEB/cldr/CldrNames/CldrNamesCa.php b/MLEB/cldr/CldrNames/CldrNamesCa.php
new file mode 100644
index 00000000..c3ce402f
--- /dev/null
+++ b/MLEB/cldr/CldrNames/CldrNamesCa.php
@@ -0,0 +1,1489 @@
+<?php
+
+$languageNames = array(
+ 'aa' => 'àfar',
+ 'ab' => 'abkhaz',
+ 'ace' => 'atjeh',
+ 'ach' => 'acoli',
+ 'ada' => 'adangme',
+ 'ady' => 'adigué',
+ 'ae' => 'avèstic',
+ 'af' => 'afrikaans',
+ 'afh' => 'afrihili',
+ 'agq' => 'aghem',
+ 'ain' => 'ainu',
+ 'ak' => 'àkan',
+ 'akk' => 'accadi',
+ 'ale' => 'aleuta',
+ 'alt' => 'altaic meridional',
+ 'am' => 'amhàric',
+ 'an' => 'aragonès',
+ 'ang' => 'anglès antic',
+ 'anp' => 'angika',
+ 'ar' => 'àrab',
+ 'ar-001' => 'àrab estàndard modern',
+ 'arc' => 'arameu',
+ 'arn' => 'araucà',
+ 'arp' => 'arapaho',
+ 'arw' => 'arauac',
+ 'as' => 'assamès',
+ 'asa' => 'pare',
+ 'ast' => 'asturià',
+ 'av' => 'àvar',
+ 'awa' => 'awadhi',
+ 'ay' => 'aimara',
+ 'az' => 'azerbaidjanès',
+ 'ba' => 'baixkir',
+ 'bal' => 'balutxi',
+ 'ban' => 'balinès',
+ 'bas' => 'basa',
+ 'bax' => 'bamun',
+ 'bbj' => 'ghomala',
+ 'be' => 'bielorús',
+ 'bej' => 'beja',
+ 'bem' => 'bemba',
+ 'bez' => 'bena',
+ 'bfd' => 'bafut',
+ 'bg' => 'búlgar',
+ 'bho' => 'bhojpuri',
+ 'bi' => 'bislama',
+ 'bik' => 'bicol',
+ 'bin' => 'bini',
+ 'bkm' => 'kom',
+ 'bla' => 'blackfoot',
+ 'bm' => 'bambara',
+ 'bn' => 'bengalí',
+ 'bo' => 'tibetà',
+ 'br' => 'bretó',
+ 'bra' => 'braj',
+ 'brx' => 'bodo',
+ 'bs' => 'bosnià',
+ 'bss' => 'akoose',
+ 'bua' => 'buriat',
+ 'bug' => 'bugui',
+ 'bum' => 'seki',
+ 'byn' => 'bilin',
+ 'byv' => 'medumba',
+ 'ca' => 'català',
+ 'cad' => 'caddo',
+ 'car' => 'carib',
+ 'cay' => 'cayuga',
+ 'cch' => 'atsam',
+ 'ce' => 'txetxè',
+ 'ceb' => 'cebuà',
+ 'cgg' => 'chiga',
+ 'ch' => 'chamorro',
+ 'chb' => 'txibtxa',
+ 'chg' => 'txagatai',
+ 'chk' => 'chuuk',
+ 'chm' => 'mari',
+ 'chn' => 'pidgin chinook',
+ 'cho' => 'choctaw',
+ 'chp' => 'chipewyan',
+ 'chr' => 'cherokee',
+ 'chy' => 'xeienne',
+ 'ckb' => 'kurd sorani',
+ 'co' => 'cors',
+ 'cop' => 'copte',
+ 'cr' => 'cree',
+ 'crh' => 'tàtar de Crimea',
+ 'cs' => 'txec',
+ 'csb' => 'caixubi',
+ 'cu' => 'eslau eclesiàstic',
+ 'cv' => 'txuvaix',
+ 'cy' => 'gal·lès',
+ 'da' => 'danès',
+ 'dak' => 'dakota',
+ 'dar' => 'darguà',
+ 'dav' => 'taita',
+ 'de' => 'alemany',
+ 'de-at' => 'alemany austríac',
+ 'de-ch' => 'alt alemany suís',
+ 'del' => 'delaware',
+ 'den' => 'slavey',
+ 'dgr' => 'dogrib',
+ 'din' => 'dinka',
+ 'dje' => 'zarma',
+ 'doi' => 'dogri',
+ 'dsb' => 'baix sòrab',
+ 'dua' => 'douala',
+ 'dum' => 'neerlandès mitjà',
+ 'dv' => 'divehi',
+ 'dyo' => 'diola',
+ 'dyu' => 'jula',
+ 'dz' => 'dzongka',
+ 'dzg' => 'dazaga',
+ 'ebu' => 'embu',
+ 'ee' => 'ewe',
+ 'efi' => 'efik',
+ 'egy' => 'egipci antic',
+ 'eka' => 'ekajuk',
+ 'el' => 'grec',
+ 'elx' => 'elamita',
+ 'en' => 'anglès',
+ 'en-au' => 'anglès australià',
+ 'en-ca' => 'anglès canadenc',
+ 'en-gb' => 'anglès britànic',
+ 'en-us' => 'anglès americà',
+ 'enm' => 'anglès mitjà',
+ 'eo' => 'esperanto',
+ 'es' => 'espanyol',
+ 'es-419' => 'espanyol hispanoamericà',
+ 'es-es' => 'espanyol europeu',
+ 'es-mx' => 'espanyol de Mèxic',
+ 'et' => 'estonià',
+ 'eu' => 'basc',
+ 'ewo' => 'ewondo',
+ 'fa' => 'persa',
+ 'fan' => 'fang',
+ 'fat' => 'fanti',
+ 'ff' => 'ful',
+ 'fi' => 'finès',
+ 'fil' => 'filipí',
+ 'fj' => 'fijià',
+ 'fo' => 'feroès',
+ 'fon' => 'fon',
+ 'fr' => 'francès',
+ 'fr-ca' => 'francès canadenc',
+ 'fr-ch' => 'francès suís',
+ 'frm' => 'francès mitjà',
+ 'fro' => 'francès antic',
+ 'frr' => 'frisó septentrional',
+ 'frs' => 'frisó occidental',
+ 'fur' => 'friülà',
+ 'fy' => 'frisó oriental',
+ 'ga' => 'irlandès',
+ 'gaa' => 'ga',
+ 'gag' => 'gagaús',
+ 'gay' => 'gayo',
+ 'gba' => 'gbaya',
+ 'gd' => 'gaèlic escocès',
+ 'gez' => 'gueez',
+ 'gil' => 'gilbertès',
+ 'gl' => 'gallec',
+ 'gmh' => 'alt alemany mitjà',
+ 'gn' => 'guaraní',
+ 'goh' => 'alt alemany antic',
+ 'gon' => 'gondi',
+ 'gor' => 'gorontalo',
+ 'got' => 'gòtic',
+ 'grb' => 'grebo',
+ 'grc' => 'grec antic',
+ 'gsw' => 'alemany suís',
+ 'gu' => 'gujarati',
+ 'guz' => 'gusí',
+ 'gv' => 'manx',
+ 'gwi' => 'gwichin',
+ 'ha' => 'haussa',
+ 'hai' => 'haida',
+ 'haw' => 'hawaià',
+ 'he' => 'hebreu',
+ 'hi' => 'hindi',
+ 'hil' => 'hiligainon',
+ 'hit' => 'hitita',
+ 'hmn' => 'hmong',
+ 'ho' => 'hiri motu',
+ 'hr' => 'croat',
+ 'hsb' => 'alt sòrab',
+ 'ht' => 'haitià',
+ 'hu' => 'hongarès',
+ 'hup' => 'hupa',
+ 'hy' => 'armeni',
+ 'hz' => 'herero',
+ 'ia' => 'interlingua',
+ 'iba' => 'iban',
+ 'ibb' => 'ibibio',
+ 'id' => 'indonesi',
+ 'ie' => 'interlingue',
+ 'ig' => 'igbo',
+ 'ii' => 'yi sichuan',
+ 'ik' => 'inupiak',
+ 'ilo' => 'ilocà',
+ 'inh' => 'ingúix',
+ 'io' => 'ido',
+ 'is' => 'islandès',
+ 'it' => 'italià',
+ 'iu' => 'inuktitut',
+ 'ja' => 'japonès',
+ 'jbo' => 'lojban',
+ 'jgo' => 'ngomba',
+ 'jmc' => 'machame',
+ 'jpr' => 'judeopersa',
+ 'jrb' => 'judeoàrab',
+ 'jv' => 'javanès',
+ 'ka' => 'georgià',
+ 'kaa' => 'karakalpak',
+ 'kab' => 'cabilenc',
+ 'kac' => 'katxin',
+ 'kaj' => 'jju',
+ 'kam' => 'kamba',
+ 'kaw' => 'kawi',
+ 'kbd' => 'kabardí',
+ 'kbl' => 'kanembu',
+ 'kcg' => 'tyap',
+ 'kde' => 'makonde',
+ 'kea' => 'crioll capverdià',
+ 'kfo' => 'koro',
+ 'kg' => 'kongo',
+ 'kha' => 'khasi',
+ 'kho' => 'khotanès',
+ 'khq' => 'koyra chiini',
+ 'ki' => 'kikuiu',
+ 'kj' => 'kuanyama',
+ 'kk' => 'kazakh',
+ 'kkj' => 'kako',
+ 'kl' => 'grenlandès',
+ 'kln' => 'kalenjin',
+ 'km' => 'khmer',
+ 'kmb' => 'kimbundu',
+ 'kn' => 'kannada',
+ 'ko' => 'coreà',
+ 'koi' => 'komi-permiac',
+ 'kok' => 'konkani',
+ 'kos' => 'kosraeà',
+ 'kpe' => 'kpelle',
+ 'kr' => 'kanuri',
+ 'krc' => 'karatxai',
+ 'krl' => 'carelià',
+ 'kru' => 'kurukh',
+ 'ks' => 'caixmiri',
+ 'ksb' => 'shambala',
+ 'ksf' => 'bafia',
+ 'ksh' => 'colognian',
+ 'ku' => 'kurd',
+ 'kum' => 'kúmik',
+ 'kut' => 'kutenai',
+ 'kv' => 'komi',
+ 'kw' => 'còrnic',
+ 'ky' => 'kirguís',
+ 'la' => 'llatí',
+ 'lad' => 'ladí',
+ 'lag' => 'langi',
+ 'lah' => 'panjabi occidental',
+ 'lam' => 'lamba',
+ 'lb' => 'luxemburguès',
+ 'lez' => 'lesguià',
+ 'lg' => 'ganda',
+ 'li' => 'limburguès',
+ 'lkt' => 'lakota',
+ 'ln' => 'lingala',
+ 'lo' => 'laosià',
+ 'lol' => 'mongo',
+ 'loz' => 'lozi',
+ 'lt' => 'lituà',
+ 'lu' => 'luba katanga',
+ 'lua' => 'luba-lulua',
+ 'lui' => 'luisenyo',
+ 'lun' => 'lunda',
+ 'luo' => 'luo',
+ 'lus' => 'mizo',
+ 'luy' => 'luyia',
+ 'lv' => 'letó',
+ 'mad' => 'madurès',
+ 'maf' => 'mafa',
+ 'mag' => 'magahi',
+ 'mai' => 'maithili',
+ 'mak' => 'makassar',
+ 'man' => 'mandinga',
+ 'mas' => 'massai',
+ 'mde' => 'maba',
+ 'mdf' => 'mordovià moksa',
+ 'mdr' => 'mandar',
+ 'men' => 'mende',
+ 'mer' => 'meru',
+ 'mfe' => 'mauricià',
+ 'mg' => 'malgaix',
+ 'mga' => 'gaèlic irlandès mitjà',
+ 'mgh' => 'makhuwa-metto',
+ 'mgo' => 'meta’',
+ 'mh' => 'marshallès',
+ 'mi' => 'maori',
+ 'mic' => 'micmac',
+ 'min' => 'minangkabau',
+ 'mk' => 'macedoni',
+ 'ml' => 'malaiàlam',
+ 'mn' => 'mongol',
+ 'mnc' => 'manxú',
+ 'mni' => 'manipurí',
+ 'moh' => 'mohawk',
+ 'mos' => 'moré',
+ 'mr' => 'marathi',
+ 'ms' => 'malai',
+ 'mt' => 'maltès',
+ 'mua' => 'mundang',
+ 'mul' => 'llengües vàries',
+ 'mus' => 'creek',
+ 'mwl' => 'mirandès',
+ 'mwr' => 'marwari',
+ 'my' => 'birmà',
+ 'mye' => 'myene',
+ 'myv' => 'mordovià erza',
+ 'na' => 'nauruà',
+ 'nap' => 'napolità',
+ 'naq' => 'nama',
+ 'nb' => 'noruec bokmål',
+ 'nd' => 'ndebele septentrional',
+ 'nds' => 'baix alemany',
+ 'ne' => 'nepalès',
+ 'new' => 'newari',
+ 'ng' => 'ndonga',
+ 'nia' => 'nias',
+ 'niu' => 'niueà',
+ 'nl' => 'neerlandès',
+ 'nl-be' => 'flamenc',
+ 'nmg' => 'bissio',
+ 'nn' => 'noruec nynorsk',
+ 'nnh' => 'ngiemboon',
+ 'no' => 'noruec',
+ 'nog' => 'nogai',
+ 'non' => 'nòrdic antic',
+ 'nqo' => 'n’Ko',
+ 'nr' => 'ndebele meridional',
+ 'nso' => 'sotho septentrional',
+ 'nus' => 'nuer',
+ 'nv' => 'navaho',
+ 'nwc' => 'newari clàssic',
+ 'ny' => 'nyanja',
+ 'nym' => 'nyamwesi',
+ 'nyn' => 'nyankole',
+ 'nyo' => 'nyoro',
+ 'nzi' => 'nzema',
+ 'oc' => 'occità',
+ 'oj' => 'ojibwa',
+ 'om' => 'oromo',
+ 'or' => 'oriya',
+ 'os' => 'osset',
+ 'osa' => 'osage',
+ 'ota' => 'turc otomà',
+ 'pa' => 'panjabi',
+ 'pag' => 'pangasi',
+ 'pal' => 'pahlavi',
+ 'pam' => 'pampangà',
+ 'pap' => 'papiamento',
+ 'pau' => 'palauà',
+ 'peo' => 'persa antic',
+ 'phn' => 'fenici',
+ 'pi' => 'pali',
+ 'pl' => 'polonès',
+ 'pon' => 'ponapeà',
+ 'pro' => 'provençal antic',
+ 'ps' => 'paixtu',
+ 'pt' => 'portuguès',
+ 'pt-br' => 'portuguès del Brasil',
+ 'pt-pt' => 'portuguès de Portugal',
+ 'qu' => 'quítxua',
+ 'quc' => 'quitxé',
+ 'raj' => 'rajasthani',
+ 'rap' => 'rapanui',
+ 'rar' => 'rarotongà',
+ 'rm' => 'retoromànic',
+ 'rn' => 'rundi',
+ 'ro' => 'romanès',
+ 'ro-md' => 'moldau',
+ 'rof' => 'rombo',
+ 'rom' => 'romaní',
+ 'ru' => 'rus',
+ 'rup' => 'aromanès',
+ 'rw' => 'ruandès',
+ 'rwk' => 'rwo',
+ 'sa' => 'sànscrit',
+ 'sad' => 'sandawe',
+ 'sah' => 'iacut',
+ 'sam' => 'arameu samarità',
+ 'saq' => 'samburu',
+ 'sas' => 'sasak',
+ 'sat' => 'santali',
+ 'sba' => 'ngambay',
+ 'sbp' => 'sangu',
+ 'sc' => 'sard',
+ 'scn' => 'sicilià',
+ 'sco' => 'escocès',
+ 'sd' => 'sindhi',
+ 'se' => 'sami septentrional',
+ 'see' => 'seneca',
+ 'seh' => 'sena',
+ 'sel' => 'selkup',
+ 'ses' => 'songhai oriental',
+ 'sg' => 'sango',
+ 'sga' => 'irlandès antic',
+ 'sh' => 'serbocroat',
+ 'shi' => 'taixelhit',
+ 'shn' => 'xan',
+ 'shu' => 'àrab txadià',
+ 'si' => 'singalès',
+ 'sid' => 'sidamo',
+ 'sk' => 'eslovac',
+ 'sl' => 'eslovè',
+ 'sm' => 'samoà',
+ 'sma' => 'sami meridional',
+ 'smj' => 'sami lule',
+ 'smn' => 'sami d’Inari',
+ 'sms' => 'sami skolt',
+ 'sn' => 'shona',
+ 'snk' => 'soninke',
+ 'so' => 'somali',
+ 'sog' => 'sogdià',
+ 'sq' => 'albanès',
+ 'sr' => 'serbi',
+ 'srn' => 'sranan',
+ 'srr' => 'serer',
+ 'ss' => 'siswati',
+ 'ssy' => 'saho',
+ 'st' => 'sotho meridional',
+ 'su' => 'sundanès',
+ 'suk' => 'sukuma',
+ 'sus' => 'susú',
+ 'sux' => 'sumeri',
+ 'sv' => 'suec',
+ 'sw' => 'suahili',
+ 'swb' => 'comorià',
+ 'swc' => 'suahili del Congo',
+ 'syc' => 'siríac clàssic',
+ 'syr' => 'siríac',
+ 'ta' => 'tàmil',
+ 'te' => 'telugu',
+ 'tem' => 'temne',
+ 'teo' => 'teso',
+ 'ter' => 'terena',
+ 'tet' => 'tetun',
+ 'tg' => 'tadjik',
+ 'th' => 'tailandès',
+ 'ti' => 'tigrinya',
+ 'tig' => 'tigre',
+ 'tiv' => 'tiv',
+ 'tk' => 'turcman',
+ 'tkl' => 'tokelauès',
+ 'tl' => 'tagàlog',
+ 'tlh' => 'klingonià',
+ 'tli' => 'tlingit',
+ 'tmh' => 'tamazight',
+ 'tn' => 'tswana',
+ 'to' => 'tongalès',
+ 'tog' => 'tonga',
+ 'tpi' => 'tok pisin',
+ 'tr' => 'turc',
+ 'trv' => 'taroko',
+ 'ts' => 'tsonga',
+ 'tsi' => 'tsimshià',
+ 'tt' => 'tàtar',
+ 'tum' => 'tumbuka',
+ 'tvl' => 'tuvaluà',
+ 'tw' => 'twi',
+ 'twq' => 'tasawaq',
+ 'ty' => 'tahitià',
+ 'tyv' => 'tuvinià',
+ 'tzm' => 'amazic del Marroc central',
+ 'udm' => 'udmurt',
+ 'ug' => 'uigur',
+ 'uga' => 'ugarític',
+ 'uk' => 'ucraïnès',
+ 'umb' => 'umbundu',
+ 'und' => 'idioma desconegut',
+ 'ur' => 'urdú',
+ 'uz' => 'uzbek',
+ 'vai' => 'vai',
+ 've' => 'venda',
+ 'vi' => 'vietnamita',
+ 'vo' => 'volapük',
+ 'vot' => 'vòtic',
+ 'vun' => 'vunjo',
+ 'wa' => 'való',
+ 'wae' => 'walser',
+ 'wal' => 'ameto',
+ 'war' => 'waray-waray',
+ 'was' => 'washo',
+ 'wo' => 'wòlof',
+ 'xal' => 'calmuc',
+ 'xh' => 'xosa',
+ 'xog' => 'soga',
+ 'yao' => 'yao',
+ 'yap' => 'yapeà',
+ 'yav' => 'yangben',
+ 'ybb' => 'yemba',
+ 'yi' => 'jiddisch',
+ 'yo' => 'ioruba',
+ 'yue' => 'cantonès',
+ 'za' => 'zhuang',
+ 'zap' => 'zapoteca',
+ 'zbl' => 'símbols Bliss',
+ 'zen' => 'zenaga',
+ 'zgh' => 'amazic estàndard marroquí',
+ 'zh' => 'xinès',
+ 'zh-hans' => 'xinès simplificat',
+ 'zh-hant' => 'xinès tradicional',
+ 'zu' => 'zulu',
+ 'zun' => 'zuni',
+ 'zxx' => 'sense contingut lingüístic',
+ 'zza' => 'zaza',
+);
+
+$currencyNames = array(
+ 'ADP' => 'pesseta andorrana',
+ 'AED' => 'dírham de la UEA',
+ 'AFA' => 'afgani afganès (1927–2002)',
+ 'AFN' => 'afgani afganès',
+ 'ALK' => 'lek albanès (1946–1965)',
+ 'ALL' => 'lek albanès',
+ 'AMD' => 'dram armeni',
+ 'ANG' => 'florí de les Antilles Neerlandeses',
+ 'AOA' => 'kwanza angolès',
+ 'AOK' => 'kwanza angolès (1977–1991)',
+ 'AON' => 'nou kwanza angolès (1990–2000)',
+ 'AOR' => 'kwanza angolès reajustat (1995–1999)',
+ 'ARA' => 'austral argentí',
+ 'ARL' => 'peso ley argentí (1970–1983)',
+ 'ARM' => 'peso argentí (1981–1970)',
+ 'ARP' => 'peso argentí (1983–1985)',
+ 'ARS' => 'peso argentí',
+ 'ATS' => 'xíling austríac',
+ 'AUD' => 'dòlar australià',
+ 'AWG' => 'florí d’Aruba',
+ 'AZM' => 'manat azerbaidjanès (1993–2006)',
+ 'AZN' => 'manat azerbaidjanès',
+ 'BAD' => 'dinar de Bòsnia i Hercegovina (1992–1994)',
+ 'BAM' => 'marc convertible de Bòsnia i Hercegovina',
+ 'BAN' => 'nou dinar de Bòsnia i Hercegovina (1994–1997)',
+ 'BBD' => 'dòlar de Barbados',
+ 'BDT' => 'taka de Bangla Desh',
+ 'BEC' => 'franc belga (convertible)',
+ 'BEF' => 'franc belga',
+ 'BEL' => 'franc belga (financer)',
+ 'BGL' => 'lev fort búlgar',
+ 'BGM' => 'lev socialista búlgar',
+ 'BGN' => 'lev búlgar',
+ 'BGO' => 'lev búlgar (1879–1952)',
+ 'BHD' => 'dinar de Bahrain',
+ 'BIF' => 'franc de Burundi',
+ 'BMD' => 'dòlar de les Bermudes',
+ 'BND' => 'dòlar de Brunei',
+ 'BOB' => 'bolivià',
+ 'BOL' => 'boliviano bolivià (1863–1963)',
+ 'BOP' => 'peso bolivià',
+ 'BOV' => 'MVDOL bolivià',
+ 'BRB' => 'cruzeiro novo brasiler (1967–1986)',
+ 'BRC' => 'cruzado brasiler',
+ 'BRE' => 'cruzeiro brasiler (1990–1993)',
+ 'BRL' => 'real brasiler',
+ 'BRN' => 'cruzado novo brasiler',
+ 'BRR' => 'cruzeiro brasiler',
+ 'BRZ' => 'antic cruzeiro brasiler',
+ 'BSD' => 'dòlar de les Bahames',
+ 'BTN' => 'ngultrum de Bhutan',
+ 'BUK' => 'kyat birmà',
+ 'BWP' => 'pula de Botswana',
+ 'BYB' => 'nou ruble bielorús (1994–1999)',
+ 'BYR' => 'ruble bielorús',
+ 'BZD' => 'dòlar de Belize',
+ 'CAD' => 'dòlar canadenc',
+ 'CDF' => 'franc congolès',
+ 'CHE' => 'euro WIR',
+ 'CHF' => 'franc suís',
+ 'CHW' => 'franc WIR',
+ 'CLE' => 'escut xilè',
+ 'CLF' => 'unidad de fomento xilena',
+ 'CLP' => 'peso xilè',
+ 'CNX' => 'dòlar del Banc Popular Xinès',
+ 'CNY' => 'iuan xinès',
+ 'COP' => 'peso colombià',
+ 'COU' => 'unidad de valor real colombiana',
+ 'CRC' => 'colón costa-riqueny',
+ 'CSD' => 'dinar serbi antic',
+ 'CSK' => 'corona forta txecoslovaca',
+ 'CUC' => 'peso convertible cubà',
+ 'CUP' => 'peso cubà',
+ 'CVE' => 'escut de Cap Verd',
+ 'CYP' => 'lliura xipriota',
+ 'CZK' => 'corona txeca',
+ 'DDM' => 'marc de l’Alemanya Oriental',
+ 'DEM' => 'marc alemany',
+ 'DJF' => 'franc de Djibouti',
+ 'DKK' => 'corona danesa',
+ 'DOP' => 'peso dominicà',
+ 'DZD' => 'dinar algerià',
+ 'ECS' => 'sucre equatorià',
+ 'ECV' => 'unidad de valor constante (UVC) equatoriana',
+ 'EEK' => 'corona estoniana',
+ 'EGP' => 'lliura egípcia',
+ 'ERN' => 'nakfa eritreu',
+ 'ESA' => 'pesseta espanyola (compte A)',
+ 'ESB' => 'pesseta espanyola (compte convertible)',
+ 'ESP' => 'pesseta espanyola',
+ 'ETB' => 'birr etíop',
+ 'EUR' => 'euro',
+ 'FIM' => 'marc finlandès',
+ 'FJD' => 'dòlar fijià',
+ 'FKP' => 'lliura de les illes Malvines',
+ 'FRF' => 'franc francès',
+ 'GBP' => 'lliura esterlina britànica',
+ 'GEK' => 'cupó de lari georgià',
+ 'GEL' => 'lari georgià',
+ 'GHC' => 'cedi ghanès (1979–2007)',
+ 'GHS' => 'cedi ghanès',
+ 'GIP' => 'lliura de Gibraltar',
+ 'GMD' => 'dalasi gambià',
+ 'GNF' => 'franc guineà',
+ 'GNS' => 'syli guineà',
+ 'GQE' => 'ekwele de Guinea Equatorial',
+ 'GRD' => 'dracma grega',
+ 'GTQ' => 'quetzal guatemalenc',
+ 'GWE' => 'escut de la Guinea Portuguesa',
+ 'GWP' => 'peso de Guinea Bissau',
+ 'GYD' => 'dòlar de Guyana',
+ 'HKD' => 'dòlar de Hong Kong',
+ 'HNL' => 'lempira hondurenya',
+ 'HRD' => 'dinar croat',
+ 'HRK' => 'kuna croata',
+ 'HTG' => 'gourde haitià',
+ 'HUF' => 'fòrint hongarès',
+ 'IDR' => 'rupia indonèsia',
+ 'IEP' => 'lliura irlandesa',
+ 'ILP' => 'lliura israeliana',
+ 'ILR' => 'xéquel israelià',
+ 'ILS' => 'nou xéquel israelià',
+ 'INR' => 'rupia índia',
+ 'IQD' => 'dinar iraquià',
+ 'IRR' => 'rial iranià',
+ 'ISJ' => 'corona islandesa antiga',
+ 'ISK' => 'corona islandesa',
+ 'ITL' => 'lira italiana',
+ 'JMD' => 'dòlar jamaicà',
+ 'JOD' => 'dinar jordà',
+ 'JPY' => 'ien japonès',
+ 'KES' => 'xíling kenyà',
+ 'KGS' => 'som kirguís',
+ 'KHR' => 'riel cambodjà',
+ 'KMF' => 'franc de les Comores',
+ 'KPW' => 'won nord-coreà',
+ 'KRH' => 'hwan sud-coreà (1953–1962)',
+ 'KRO' => 'antic won sud-coreà',
+ 'KRW' => 'won sud-coreà',
+ 'KWD' => 'dinar kuwaitià',
+ 'KYD' => 'dòlar de les illes Caiman',
+ 'KZT' => 'tenge kazakh',
+ 'LAK' => 'kip laosià',
+ 'LBP' => 'lliura libanesa',
+ 'LKR' => 'rupia de Sri Lanka',
+ 'LRD' => 'dòlar liberià',
+ 'LSL' => 'loti de Lesotho',
+ 'LTL' => 'litas lituà',
+ 'LTT' => 'talonas lituà',
+ 'LUC' => 'franc convertible luxemburguès',
+ 'LUF' => 'franc luxemburguès',
+ 'LUL' => 'franc financer luxemburguès',
+ 'LVL' => 'lats letó',
+ 'LVR' => 'ruble letó',
+ 'LYD' => 'dinar libi',
+ 'MAD' => 'dírham marroquí',
+ 'MAF' => 'franc marroquí',
+ 'MCF' => 'franc monegasc',
+ 'MDC' => 'cupó moldau',
+ 'MDL' => 'leu moldau',
+ 'MGA' => 'ariary malgaix',
+ 'MGF' => 'franc malgaix',
+ 'MKD' => 'denar macedoni',
+ 'MKN' => 'denar macedoni (1992–1993)',
+ 'MLF' => 'franc malià',
+ 'MMK' => 'kyat de Myanmar',
+ 'MNT' => 'tögrög mongol',
+ 'MOP' => 'pataca de Macau',
+ 'MRO' => 'ouguiya maurità',
+ 'MTL' => 'lira maltesa',
+ 'MTP' => 'lliura maltesa',
+ 'MUR' => 'rupia mauriciana',
+ 'MVR' => 'rupia de les Maldives',
+ 'MWK' => 'kwacha malawià',
+ 'MXN' => 'peso mexicà',
+ 'MXP' => 'peso de plata mexicà (1861–1992)',
+ 'MXV' => 'unidad de inversión (UDI) mexicana',
+ 'MYR' => 'ringgit de Malàisia',
+ 'MZE' => 'escut moçambiquès',
+ 'MZM' => 'antic metical moçambiquès',
+ 'MZN' => 'metical moçambiquès',
+ 'NAD' => 'dòlar namibià',
+ 'NGN' => 'naira nigerià',
+ 'NIC' => 'córdoba nicaragüenca',
+ 'NIO' => 'córdoba oro nicaragüenca',
+ 'NLG' => 'florí neerlandès',
+ 'NOK' => 'corona noruega',
+ 'NPR' => 'rupia nepalesa',
+ 'NZD' => 'dòlar neozelandès',
+ 'OMR' => 'rial omanita',
+ 'PAB' => 'balboa panameny',
+ 'PEI' => 'inti peruà',
+ 'PEN' => 'nou sol peruà',
+ 'PES' => 'sol peruà',
+ 'PGK' => 'kina de Papua Nova Guinea',
+ 'PHP' => 'peso filipí',
+ 'PKR' => 'rupia pakistanesa',
+ 'PLN' => 'zloty polonès',
+ 'PLZ' => 'zloty polonès (1950–1995)',
+ 'PTE' => 'escut portuguès',
+ 'PYG' => 'guaraní paraguaià',
+ 'QAR' => 'rial de Qatar',
+ 'RHD' => 'dòlar rhodesià',
+ 'ROL' => 'antic leu romanès',
+ 'RON' => 'leu romanès',
+ 'RSD' => 'dinar serbi',
+ 'RUB' => 'ruble rus',
+ 'RUR' => 'ruble rus (1991–1998)',
+ 'RWF' => 'franc de Ruanda',
+ 'SAR' => 'rial saudita',
+ 'SBD' => 'dòlar de les illes Salomó',
+ 'SCR' => 'rupia de les Seychelles',
+ 'SDD' => 'dinar sudanès',
+ 'SDG' => 'lliura sudanesa',
+ 'SDP' => 'antiga lliura sudanesa',
+ 'SEK' => 'corona sueca',
+ 'SGD' => 'dòlar de Singapur',
+ 'SHP' => 'lliura de Santa Helena',
+ 'SIT' => 'tolar eslovè',
+ 'SKK' => 'corona eslovaca',
+ 'SLL' => 'leone de Sierra Leone',
+ 'SOS' => 'xíling somali',
+ 'SRD' => 'dòlar de Surinam',
+ 'SRG' => 'florí de Surinam',
+ 'SSP' => 'lliura del Sudan del Sud',
+ 'STD' => 'dobra de São Tomé i Príncipe',
+ 'SUR' => 'ruble soviètic',
+ 'SVC' => 'colón salvadorenc',
+ 'SYP' => 'lliura síria',
+ 'SZL' => 'lilangeni swazi',
+ 'THB' => 'baht tailandès',
+ 'TJR' => 'ruble tadjik',
+ 'TJS' => 'somoni tadjik',
+ 'TMM' => 'manat turcman (1993–2009)',
+ 'TMT' => 'manat turcman',
+ 'TND' => 'dinar tunisià',
+ 'TOP' => 'pa‘anga tongà',
+ 'TPE' => 'escut de Timor',
+ 'TRL' => 'lira turca (1922–2005)',
+ 'TRY' => 'lira turca',
+ 'TTD' => 'dòlar de Trinitat i Tobago',
+ 'TWD' => 'nou dòlar de Taiwan',
+ 'TZS' => 'xíling tanzà',
+ 'UAH' => 'hrívnia ucraïnesa',
+ 'UAK' => 'karbóvanets ucraïnès',
+ 'UGS' => 'xíling ugandès (1966–1987)',
+ 'UGX' => 'xíling ugandès',
+ 'USD' => 'dòlar dels Estats Units',
+ 'USN' => 'dòlar dels Estats Units (dia següent)',
+ 'USS' => 'dòlar dels Estats Units (mateix dia)',
+ 'UYI' => 'peso uruguaià en unitats indexades',
+ 'UYP' => 'peso uruguaià (1975–1993)',
+ 'UYU' => 'peso uruguaià',
+ 'UZS' => 'som uzbek',
+ 'VEB' => 'bolívar veneçolà (1871–2008)',
+ 'VEF' => 'bolívar veneçolà',
+ 'VND' => 'dong vietnamita',
+ 'VNN' => 'dong vietnamita (1978–1985)',
+ 'VUV' => 'vatu de Vanuatu',
+ 'WST' => 'tala samoà',
+ 'XAF' => 'franc CFA BEAC',
+ 'XAG' => 'plata',
+ 'XAU' => 'or',
+ 'XBA' => 'unitat compensatòria europea',
+ 'XBB' => 'unitat monetària europea',
+ 'XBC' => 'unitat de compte europea (XBC)',
+ 'XBD' => 'unitat de compte europea (XBD)',
+ 'XCD' => 'dòlar del Carib Oriental',
+ 'XDR' => 'drets especials de gir',
+ 'XEU' => 'unitat de moneda europea',
+ 'XFO' => 'franc or francès',
+ 'XFU' => 'franc UIC francès',
+ 'XOF' => 'franc CFA BCEAO',
+ 'XPD' => 'pal·ladi',
+ 'XPF' => 'franc CFP',
+ 'XPT' => 'platí',
+ 'XRE' => 'fons RINET',
+ 'XTS' => 'codi reservat per a proves',
+ 'XXX' => 'moneda desconeguda',
+ 'YDD' => 'dinar iemenita',
+ 'YER' => 'rial iemenita',
+ 'YUD' => 'dinar fort iugoslau',
+ 'YUM' => 'nou dinar iugoslau',
+ 'YUN' => 'dinar convertible iugoslau',
+ 'YUR' => 'dinar iugoslau reformat (1992–1993)',
+ 'ZAL' => 'rand sud-africà (financer)',
+ 'ZAR' => 'rand sud-africà',
+ 'ZMK' => 'kwacha zambià (1968–2012)',
+ 'ZMW' => 'kwacha zambià',
+ 'ZRN' => 'nou zaire zairès',
+ 'ZRZ' => 'zaire zairès',
+ 'ZWD' => 'dòlar zimbabuès (1980–2008)',
+ 'ZWL' => 'dòlar zimbabuès (2009)',
+ 'ZWR' => 'dòlar zimbabuès (2008)',
+);
+
+$currencySymbols = array(
+ 'ADP' => 'ADP',
+ 'AED' => 'AED',
+ 'AFA' => 'AFA',
+ 'AFN' => 'AFN',
+ 'ALL' => 'ALL',
+ 'AMD' => 'AMD',
+ 'ANG' => 'ANG',
+ 'AOA' => 'AOA',
+ 'AOK' => 'AOK',
+ 'AON' => 'AON',
+ 'AOR' => 'AOR',
+ 'ARA' => 'ARA',
+ 'ARL' => 'ARL',
+ 'ARM' => 'ARM',
+ 'ARP' => 'ARP',
+ 'ARS' => 'ARS',
+ 'ATS' => 'ATS',
+ 'AUD' => 'AU$',
+ 'AWG' => 'AWG',
+ 'AZM' => 'AZM',
+ 'AZN' => 'AZN',
+ 'BAD' => 'BAD',
+ 'BAM' => 'BAM',
+ 'BAN' => 'BAN',
+ 'BBD' => 'BBD',
+ 'BDT' => 'BDT',
+ 'BEC' => 'BEC',
+ 'BEF' => 'BEF',
+ 'BEL' => 'BEL',
+ 'BGL' => 'BGL',
+ 'BGM' => 'BGM',
+ 'BGN' => 'BGN',
+ 'BGO' => 'BGO',
+ 'BHD' => 'BHD',
+ 'BIF' => 'BIF',
+ 'BMD' => 'BMD',
+ 'BND' => 'BND',
+ 'BOB' => 'BOB',
+ 'BOL' => 'BOL',
+ 'BOP' => 'BOP',
+ 'BOV' => 'BOV',
+ 'BRB' => 'BRB',
+ 'BRC' => 'BRC',
+ 'BRE' => 'BRE',
+ 'BRL' => 'BRL',
+ 'BRN' => 'BRN',
+ 'BRR' => 'BRR',
+ 'BRZ' => 'BRZ',
+ 'BSD' => 'BSD',
+ 'BTN' => 'BTN',
+ 'BUK' => 'BUK',
+ 'BWP' => 'BWP',
+ 'BYB' => 'BYB',
+ 'BYR' => 'BYR',
+ 'BZD' => 'BZD',
+ 'CAD' => 'CAD',
+ 'CDF' => 'CDF',
+ 'CHE' => 'CHE',
+ 'CHF' => 'CHF',
+ 'CHW' => 'CHW',
+ 'CLE' => 'CLE',
+ 'CLF' => 'CLF',
+ 'CLP' => 'CLP',
+ 'CNY' => '¥',
+ 'COP' => 'COP',
+ 'COU' => 'COU',
+ 'CRC' => 'CRC',
+ 'CSD' => 'CSD',
+ 'CSK' => 'CSK',
+ 'CUC' => 'CUC',
+ 'CUP' => 'CUP',
+ 'CVE' => 'CVE',
+ 'CYP' => 'CYP',
+ 'CZK' => 'CZK',
+ 'DDM' => 'DDM',
+ 'DEM' => 'DEM',
+ 'DJF' => 'DJF',
+ 'DKK' => 'DKK',
+ 'DOP' => 'DOP',
+ 'DZD' => 'DZD',
+ 'ECS' => 'ECS',
+ 'ECV' => 'ECV',
+ 'EEK' => 'EEK',
+ 'EGP' => 'EGP',
+ 'ERN' => 'ERN',
+ 'ESA' => 'ESA',
+ 'ESB' => 'ESB',
+ 'ESP' => '₧',
+ 'ETB' => 'ETB',
+ 'EUR' => '€',
+ 'FIM' => 'FIM',
+ 'FJD' => 'FJD',
+ 'FKP' => 'FKP',
+ 'FRF' => 'FRF',
+ 'GBP' => '£',
+ 'GEK' => 'GEK',
+ 'GEL' => 'GEL',
+ 'GHC' => 'GHC',
+ 'GHS' => 'GHS',
+ 'GIP' => 'GIP',
+ 'GMD' => 'GMD',
+ 'GNF' => 'GNF',
+ 'GNS' => 'GNS',
+ 'GQE' => 'GQE',
+ 'GRD' => 'GRD',
+ 'GTQ' => 'GTQ',
+ 'GWE' => 'GWE',
+ 'GWP' => 'GWP',
+ 'GYD' => 'GYD',
+ 'HKD' => 'HK$',
+ 'HNL' => 'HNL',
+ 'HRD' => 'HRD',
+ 'HRK' => 'HRK',
+ 'HTG' => 'HTG',
+ 'HUF' => 'HUF',
+ 'IDR' => 'IDR',
+ 'IEP' => 'IEP',
+ 'ILP' => 'ILP',
+ 'ILS' => '₪',
+ 'INR' => '₹',
+ 'IQD' => 'IQD',
+ 'IRR' => 'IRR',
+ 'ISK' => 'ISK',
+ 'ITL' => 'ITL',
+ 'JMD' => 'JMD',
+ 'JOD' => 'JOD',
+ 'JPY' => 'JP¥',
+ 'KES' => 'KES',
+ 'KGS' => 'KGS',
+ 'KHR' => 'KHR',
+ 'KMF' => 'KMF',
+ 'KPW' => 'KPW',
+ 'KRH' => 'KRH',
+ 'KRO' => 'KRO',
+ 'KRW' => '₩',
+ 'KWD' => 'KWD',
+ 'KYD' => 'KYD',
+ 'KZT' => 'KZT',
+ 'LAK' => 'LAK',
+ 'LBP' => 'LBP',
+ 'LKR' => 'LKR',
+ 'LRD' => 'LRD',
+ 'LSL' => 'LSL',
+ 'LTL' => 'LTL',
+ 'LTT' => 'LTT',
+ 'LUC' => 'LUC',
+ 'LUF' => 'LUF',
+ 'LUL' => 'LUL',
+ 'LVL' => 'LVL',
+ 'LVR' => 'LVR',
+ 'LYD' => 'LYD',
+ 'MAD' => 'MAD',
+ 'MAF' => 'MAF',
+ 'MCF' => 'MCF',
+ 'MDC' => 'MDC',
+ 'MDL' => 'MDL',
+ 'MGA' => 'MGA',
+ 'MGF' => 'MGF',
+ 'MKD' => 'MKD',
+ 'MKN' => 'MKN',
+ 'MLF' => 'MLF',
+ 'MMK' => 'MMK',
+ 'MNT' => 'MNT',
+ 'MOP' => 'MOP',
+ 'MRO' => 'MRO',
+ 'MTL' => 'MTL',
+ 'MTP' => 'MTP',
+ 'MUR' => 'MUR',
+ 'MVR' => 'MVR',
+ 'MWK' => 'MWK',
+ 'MXN' => 'MXN',
+ 'MXP' => 'MXP',
+ 'MXV' => 'MXV',
+ 'MYR' => 'MYR',
+ 'MZE' => 'MZE',
+ 'MZM' => 'MZM',
+ 'MZN' => 'MZN',
+ 'NAD' => 'NAD',
+ 'NGN' => 'NGN',
+ 'NIC' => 'NIC',
+ 'NIO' => 'NIO',
+ 'NLG' => 'NLG',
+ 'NOK' => 'NOK',
+ 'NPR' => 'NPR',
+ 'NZD' => 'NZ$',
+ 'OMR' => 'OMR',
+ 'PAB' => 'PAB',
+ 'PEI' => 'PEI',
+ 'PEN' => 'PEN',
+ 'PES' => 'PES',
+ 'PGK' => 'PGK',
+ 'PHP' => 'PHP',
+ 'PKR' => 'PKR',
+ 'PLN' => 'PLN',
+ 'PLZ' => 'PLZ',
+ 'PTE' => 'PTE',
+ 'PYG' => 'PYG',
+ 'QAR' => 'QAR',
+ 'RHD' => 'RHD',
+ 'ROL' => 'ROL',
+ 'RON' => 'RON',
+ 'RSD' => 'RSD',
+ 'RUB' => 'RUB',
+ 'RUR' => 'RUR',
+ 'RWF' => 'RWF',
+ 'SAR' => 'SAR',
+ 'SBD' => 'SBD',
+ 'SCR' => 'SCR',
+ 'SDD' => 'SDD',
+ 'SDG' => 'SDG',
+ 'SDP' => 'SDP',
+ 'SEK' => 'SEK',
+ 'SGD' => 'SGD',
+ 'SHP' => 'SHP',
+ 'SIT' => 'SIT',
+ 'SKK' => 'SKK',
+ 'SLL' => 'SLL',
+ 'SOS' => 'SOS',
+ 'SRD' => 'SRD',
+ 'SRG' => 'SRG',
+ 'SSP' => 'SSP',
+ 'STD' => 'STD',
+ 'SUR' => 'SUR',
+ 'SVC' => 'SVC',
+ 'SYP' => 'SYP',
+ 'SZL' => 'SZL',
+ 'THB' => '฿',
+ 'TJR' => 'TJR',
+ 'TJS' => 'TJS',
+ 'TMM' => 'TMM',
+ 'TMT' => 'TMT',
+ 'TND' => 'TND',
+ 'TOP' => 'TOP',
+ 'TPE' => 'TPE',
+ 'TRL' => 'TRL',
+ 'TRY' => 'TRY',
+ 'TTD' => 'TTD',
+ 'TWD' => 'NT$',
+ 'TZS' => 'TZS',
+ 'UAH' => 'UAH',
+ 'UAK' => 'UAK',
+ 'UGS' => 'UGS',
+ 'UGX' => 'UGX',
+ 'USD' => 'USD',
+ 'USN' => 'USN',
+ 'USS' => 'USS',
+ 'UYI' => 'UYI',
+ 'UYP' => 'UYP',
+ 'UYU' => 'UYU',
+ 'UZS' => 'UZS',
+ 'VEB' => 'VEB',
+ 'VEF' => 'VEF',
+ 'VND' => '₫',
+ 'VNN' => 'VNN',
+ 'VUV' => 'VUV',
+ 'WST' => 'WST',
+ 'XAF' => 'FCFA',
+ 'XAG' => 'XAG',
+ 'XAU' => 'XAU',
+ 'XBA' => 'XBA',
+ 'XBB' => 'XBB',
+ 'XBC' => 'XBC',
+ 'XBD' => 'XBD',
+ 'XCD' => 'XCD',
+ 'XDR' => 'XDR',
+ 'XEU' => 'XEU',
+ 'XFO' => 'XFO',
+ 'XFU' => 'XFU',
+ 'XOF' => 'XOF',
+ 'XPD' => 'XPD',
+ 'XPF' => 'CFPF',
+ 'XPT' => 'XPT',
+ 'XRE' => 'XRE',
+ 'XTS' => 'XTS',
+ 'XXX' => 'XXX',
+ 'YDD' => 'YDD',
+ 'YER' => 'YER',
+ 'YUD' => 'YUD',
+ 'YUM' => 'YUM',
+ 'YUN' => 'YUN',
+ 'YUR' => 'YUR',
+ 'ZAL' => 'ZAL',
+ 'ZAR' => 'ZAR',
+ 'ZMK' => 'ZMK',
+ 'ZMW' => 'ZMW',
+ 'ZRN' => 'ZRN',
+ 'ZRZ' => 'ZRZ',
+ 'ZWD' => 'ZWD',
+ 'ZWL' => 'ZWL',
+ 'ZWR' => 'ZWR',
+);
+
+$countryNames = array(
+ 'AC' => 'illa de l’Ascensió',
+ 'AD' => 'Andorra',
+ 'AE' => 'Emirats Àrabs Units',
+ 'AF' => 'Afganistan',
+ 'AG' => 'Antigua i Barbuda',
+ 'AI' => 'Anguilla',
+ 'AL' => 'Albània',
+ 'AM' => 'Armènia',
+ 'AN' => 'Antilles Neerlandeses',
+ 'AO' => 'Angola',
+ 'AQ' => 'Antàrtida',
+ 'AR' => 'Argentina',
+ 'AS' => 'Samoa Nord-americana',
+ 'AT' => 'Àustria',
+ 'AU' => 'Austràlia',
+ 'AW' => 'Aruba',
+ 'AX' => 'illes Åland',
+ 'AZ' => 'Azerbaidjan',
+ 'BA' => 'Bòsnia i Hercegovina',
+ 'BB' => 'Barbados',
+ 'BD' => 'Bangla Desh',
+ 'BE' => 'Bèlgica',
+ 'BF' => 'Burkina Faso',
+ 'BG' => 'Bulgària',
+ 'BH' => 'Bahrain',
+ 'BI' => 'Burundi',
+ 'BJ' => 'Benín',
+ 'BL' => 'Saint Barthélemy',
+ 'BM' => 'Bermudes',
+ 'BN' => 'Brunei',
+ 'BO' => 'Bolívia',
+ 'BQ' => 'Carib Neerlandès',
+ 'BR' => 'Brasil',
+ 'BS' => 'Bahames',
+ 'BT' => 'Bhutan',
+ 'BV' => 'Bouvet',
+ 'BW' => 'Botswana',
+ 'BY' => 'Bielorússia',
+ 'BZ' => 'Belize',
+ 'CA' => 'Canadà',
+ 'CC' => 'illes Cocos',
+ 'CD' => 'Congo - Kinshasa',
+ 'CF' => 'República Centreafricana',
+ 'CG' => 'Congo - Brazzaville',
+ 'CH' => 'Suïssa',
+ 'CI' => 'Costa d’Ivori',
+ 'CK' => 'illes Cook',
+ 'CL' => 'Xile',
+ 'CM' => 'Camerun',
+ 'CN' => 'Xina',
+ 'CO' => 'Colòmbia',
+ 'CP' => 'illa Clipperton',
+ 'CR' => 'Costa Rica',
+ 'CU' => 'Cuba',
+ 'CV' => 'Cap Verd',
+ 'CW' => 'Curaçao',
+ 'CX' => 'illa Christmas',
+ 'CY' => 'Xipre',
+ 'CZ' => 'República Txeca',
+ 'DE' => 'Alemanya',
+ 'DG' => 'Diego Garcia',
+ 'DJ' => 'Djibouti',
+ 'DK' => 'Dinamarca',
+ 'DM' => 'Dominica',
+ 'DO' => 'República Dominicana',
+ 'DZ' => 'Algèria',
+ 'EA' => 'Ceuta i Melilla',
+ 'EC' => 'Equador',
+ 'EE' => 'Estònia',
+ 'EG' => 'Egipte',
+ 'EH' => 'Sàhara Occidental',
+ 'ER' => 'Eritrea',
+ 'ES' => 'Espanya',
+ 'ET' => 'Etiòpia',
+ 'EU' => 'Unió Europea',
+ 'FI' => 'Finlàndia',
+ 'FJ' => 'Fiji',
+ 'FK' => 'Illes Malvines',
+ 'FM' => 'Micronèsia',
+ 'FO' => 'illes Fèroe',
+ 'FR' => 'França',
+ 'GA' => 'Gabon',
+ 'GB' => 'GB',
+ 'GD' => 'Grenada',
+ 'GE' => 'Geòrgia',
+ 'GF' => 'Guaiana Francesa',
+ 'GG' => 'Guernsey',
+ 'GH' => 'Ghana',
+ 'GI' => 'Gibraltar',
+ 'GL' => 'Grenlàndia',
+ 'GM' => 'Gàmbia',
+ 'GN' => 'Guinea',
+ 'GP' => 'Guadeloupe',
+ 'GQ' => 'Guinea Equatorial',
+ 'GR' => 'Grècia',
+ 'GS' => 'illes Geòrgia del Sud i Sandwich del Sud',
+ 'GT' => 'Guatemala',
+ 'GU' => 'Guam',
+ 'GW' => 'Guinea Bissau',
+ 'GY' => 'Guyana',
+ 'HK' => 'Hong Kong',
+ 'HM' => 'Illa Heard i Illes McDonald',
+ 'HN' => 'Hondures',
+ 'HR' => 'Croàcia',
+ 'HT' => 'Haití',
+ 'HU' => 'Hongria',
+ 'IC' => 'illes Canàries',
+ 'ID' => 'Indonèsia',
+ 'IE' => 'Irlanda',
+ 'IL' => 'Israel',
+ 'IM' => 'illa de Man',
+ 'IN' => 'Índia',
+ 'IO' => 'Territori Britànic de l’Oceà Índic',
+ 'IQ' => 'Iraq',
+ 'IR' => 'Iran',
+ 'IS' => 'Islàndia',
+ 'IT' => 'Itàlia',
+ 'JE' => 'Jersey',
+ 'JM' => 'Jamaica',
+ 'JO' => 'Jordània',
+ 'JP' => 'Japó',
+ 'KE' => 'Kenya',
+ 'KG' => 'Kirguizistan',
+ 'KH' => 'Cambodja',
+ 'KI' => 'Kiribati',
+ 'KM' => 'Comores',
+ 'KN' => 'Saint Christopher i Nevis',
+ 'KP' => 'Corea del Nord',
+ 'KR' => 'Corea del Sud',
+ 'KW' => 'Kuwait',
+ 'KY' => 'Illes Caiman',
+ 'KZ' => 'Kazakhstan',
+ 'LA' => 'Laos',
+ 'LB' => 'Líban',
+ 'LC' => 'Saint Lucia',
+ 'LI' => 'Liechtenstein',
+ 'LK' => 'Sri Lanka',
+ 'LR' => 'Libèria',
+ 'LS' => 'Lesotho',
+ 'LT' => 'Lituània',
+ 'LU' => 'Luxemburg',
+ 'LV' => 'Letònia',
+ 'LY' => 'Líbia',
+ 'MA' => 'Marroc',
+ 'MC' => 'Mònaco',
+ 'MD' => 'Moldàvia',
+ 'ME' => 'Montenegro',
+ 'MF' => 'Saint Martin',
+ 'MG' => 'Madagascar',
+ 'MH' => 'illes Marshall',
+ 'MK' => 'Macedònia',
+ 'ML' => 'Mali',
+ 'MM' => 'Myanmar (Birmània)',
+ 'MN' => 'Mongòlia',
+ 'MO' => 'Macau',
+ 'MP' => 'illes Mariannes del Nord',
+ 'MQ' => 'Martinica',
+ 'MR' => 'Mauritània',
+ 'MS' => 'Montserrat',
+ 'MT' => 'Malta',
+ 'MU' => 'Maurici',
+ 'MV' => 'Maldives',
+ 'MW' => 'Malawi',
+ 'MX' => 'Mèxic',
+ 'MY' => 'Malàisia',
+ 'MZ' => 'Moçambic',
+ 'NA' => 'Namíbia',
+ 'NC' => 'Nova Caledònia',
+ 'NE' => 'Níger',
+ 'NF' => 'Norfolk',
+ 'NG' => 'Nigèria',
+ 'NI' => 'Nicaragua',
+ 'NL' => 'Països Baixos',
+ 'NO' => 'Noruega',
+ 'NP' => 'Nepal',
+ 'NR' => 'Nauru',
+ 'NU' => 'Niue',
+ 'NZ' => 'Nova Zelanda',
+ 'OM' => 'Oman',
+ 'PA' => 'Panamà',
+ 'PE' => 'Perú',
+ 'PF' => 'Polinèsia Francesa',
+ 'PG' => 'Papua Nova Guinea',
+ 'PH' => 'Filipines',
+ 'PK' => 'Pakistan',
+ 'PL' => 'Polònia',
+ 'PM' => 'Saint-Pierre-et-Miquelon',
+ 'PN' => 'illes Pitcairn',
+ 'PR' => 'Puerto Rico',
+ 'PS' => 'Palestina',
+ 'PT' => 'Portugal',
+ 'PW' => 'Palau',
+ 'PY' => 'Paraguai',
+ 'QA' => 'Qatar',
+ 'QO' => 'Territoris allunyats d’Oceania',
+ 'RE' => 'Illa de la Reunió',
+ 'RO' => 'Romania',
+ 'RS' => 'Sèrbia',
+ 'RU' => 'Rússia',
+ 'RW' => 'Ruanda',
+ 'SA' => 'Aràbia Saudita',
+ 'SB' => 'illes Salomó',
+ 'SC' => 'Seychelles',
+ 'SD' => 'Sudan',
+ 'SE' => 'Suècia',
+ 'SG' => 'Singapur',
+ 'SH' => 'Saint Helena',
+ 'SI' => 'Eslovènia',
+ 'SJ' => 'Svalbard i Jan Mayen',
+ 'SK' => 'Eslovàquia',
+ 'SL' => 'Sierra Leone',
+ 'SM' => 'San Marino',
+ 'SN' => 'Senegal',
+ 'SO' => 'Somàlia',
+ 'SR' => 'Surinam',
+ 'SS' => 'Sudan del Sud',
+ 'ST' => 'São Tomé i Príncipe',
+ 'SV' => 'El Salvador',
+ 'SX' => 'Sint Maarten',
+ 'SY' => 'Síria',
+ 'SZ' => 'Swazilàndia',
+ 'TA' => 'Tristão da Cunha',
+ 'TC' => 'Illes Turks i Caicos',
+ 'TD' => 'Txad',
+ 'TF' => 'Territoris Francesos del Sud',
+ 'TG' => 'Togo',
+ 'TH' => 'Tailàndia',
+ 'TJ' => 'Tadjikistan',
+ 'TK' => 'Tokelau',
+ 'TL' => 'Timor Oriental',
+ 'TM' => 'Turkmenistan',
+ 'TN' => 'Tunísia',
+ 'TO' => 'Tonga',
+ 'TR' => 'Turquia',
+ 'TT' => 'Trinitat i Tobago',
+ 'TV' => 'Tuvalu',
+ 'TW' => 'Taiwan',
+ 'TZ' => 'Tanzània',
+ 'UA' => 'Ucraïna',
+ 'UG' => 'Uganda',
+ 'UM' => 'illes Perifèriques Menors dels EUA',
+ 'US' => 'EUA',
+ 'UY' => 'Uruguai',
+ 'UZ' => 'Uzbekistan',
+ 'VA' => 'Ciutat del Vaticà',
+ 'VC' => 'Saint Vincent i les Grenadines',
+ 'VE' => 'Veneçuela',
+ 'VG' => 'Illes Verges Britàniques',
+ 'VI' => 'Illes Verges Nord-americanes',
+ 'VN' => 'Vietnam',
+ 'VU' => 'Vanuatu',
+ 'WF' => 'Wallis i Futuna',
+ 'WS' => 'Samoa',
+ 'XK' => 'Kosovo',
+ 'YE' => 'Iemen',
+ 'YT' => 'Mayotte',
+ 'ZA' => 'República de Sud-àfrica',
+ 'ZM' => 'Zàmbia',
+ 'ZW' => 'Zimbàbue',
+);
+
+$timeUnits = array(
+ 'day-future-one' => 'd’aquí a {0} dia',
+ 'day-future-other' => 'd’aquí a {0} dies',
+ 'day-narrow-future-one' => 'd’aquí a {0} dia',
+ 'day-narrow-future-other' => 'd’aquí a {0} dies',
+ 'day-narrow-past-one' => 'fa {0} dia',
+ 'day-narrow-past-other' => 'fa {0} dies',
+ 'day-one' => '{0} dia',
+ 'day-other' => '{0} dies',
+ 'day-past-one' => 'fa {0} dia',
+ 'day-past-other' => 'fa {0} dies',
+ 'day-short-future-one' => 'd’aquí a {0} dia',
+ 'day-short-future-other' => 'd’aquí a {0} dies',
+ 'day-short-past-one' => 'fa {0} dia',
+ 'day-short-past-other' => 'fa {0} dies',
+ 'hour-future-one' => 'd’aquí a {0} hora',
+ 'hour-future-other' => 'd’aquí {0} hores',
+ 'hour-narrow-future-one' => 'd‘aquí a {0} h',
+ 'hour-narrow-future-other' => 'd‘aquí a {0} h',
+ 'hour-narrow-past-one' => 'fa {0} h',
+ 'hour-narrow-past-other' => 'fa {0} h',
+ 'hour-one' => '{0} hora',
+ 'hour-other' => '{0} hores',
+ 'hour-past-one' => 'fa {0} hora',
+ 'hour-past-other' => 'fa {0} hores',
+ 'hour-short-future-one' => 'd’aquí a {0} h',
+ 'hour-short-future-other' => 'd’aquí {0} hores',
+ 'hour-short-past-one' => 'fa {0} h',
+ 'hour-short-past-other' => 'fa {0} h',
+ 'microsecond-one' => '{0} microsegon',
+ 'microsecond-other' => '{0} microsegons',
+ 'millisecond-one' => '{0} mil·lisegon',
+ 'millisecond-other' => '{0} mil·lisegons',
+ 'minute-future-one' => 'd’aquí a {0} minut',
+ 'minute-future-other' => 'd’aquí a {0} minuts',
+ 'minute-narrow-future-one' => 'd’aquí a {0} min',
+ 'minute-narrow-future-other' => 'd’aquí a {0} min',
+ 'minute-narrow-past-one' => 'fa {0} min',
+ 'minute-narrow-past-other' => 'fa {0} min',
+ 'minute-one' => '{0} minut',
+ 'minute-other' => '{0} minuts',
+ 'minute-past-one' => 'fa {0} minut',
+ 'minute-past-other' => 'fa {0} minuts',
+ 'minute-short-future-one' => 'd’aquí a {0} min',
+ 'minute-short-future-other' => 'd’aquí a {0} min',
+ 'minute-short-past-one' => 'fa {0} min',
+ 'minute-short-past-other' => 'fa {0} min',
+ 'month-future-one' => 'd’aquí a {0} mes',
+ 'month-future-other' => 'd’aquí a {0} mesos',
+ 'month-narrow-future-one' => 'en {0} mes',
+ 'month-narrow-future-other' => 'en {0} mesos',
+ 'month-narrow-past-one' => 'fa {0} mes',
+ 'month-narrow-past-other' => 'fa {0} mesos',
+ 'month-one' => '{0} mes',
+ 'month-other' => '{0} mesos',
+ 'month-past-one' => 'fa {0} mes',
+ 'month-past-other' => 'fa {0} mesos',
+ 'month-short-future-one' => 'd’aquí a {0} mes',
+ 'month-short-future-other' => 'd’aquí a {0} mesos',
+ 'month-short-past-one' => 'fa {0} mes',
+ 'month-short-past-other' => 'fa {0} mesos',
+ 'nanosecond-one' => '{0} nanosegon',
+ 'nanosecond-other' => '{0} nanosegons',
+ 'quarter-future-one' => 'd’aquí a {0} trimestre',
+ 'quarter-future-other' => 'd’aquí a {0} trimestres',
+ 'quarter-narrow-future-one' => 'en {0} trim.',
+ 'quarter-narrow-future-other' => 'en {0} trim.',
+ 'quarter-narrow-past-one' => 'fa {0} trim.',
+ 'quarter-narrow-past-other' => 'fa {0} trim.',
+ 'quarter-past-one' => 'fa {0} trimestre',
+ 'quarter-past-other' => 'fa {0} trimestres',
+ 'quarter-short-future-one' => 'd’aquí a {0} trim.',
+ 'quarter-short-future-other' => 'd’aquí a {0} trim.',
+ 'quarter-short-past-one' => 'fa {0} trim.',
+ 'quarter-short-past-other' => 'fa {0} trim.',
+ 'second-future-one' => 'd’aquí a {0} segon',
+ 'second-future-other' => 'd’aquí a {0} segons',
+ 'second-narrow-future-one' => 'd’aquí a {0} s',
+ 'second-narrow-future-other' => 'd’aquí a {0} s',
+ 'second-narrow-past-one' => 'fa {0} s',
+ 'second-narrow-past-other' => 'fa {0} s',
+ 'second-one' => '{0} segon',
+ 'second-other' => '{0} segons',
+ 'second-past-one' => 'fa {0} segon',
+ 'second-past-other' => 'fa {0} segons',
+ 'second-short-future-one' => 'd’aquí a {0} s',
+ 'second-short-future-other' => 'd’aquí a {0} s',
+ 'second-short-past-one' => 'fa {0} s',
+ 'second-short-past-other' => 'fa {0} s',
+ 'week-future-one' => 'd’aquí a {0} setmana',
+ 'week-future-other' => 'd’aquí a {0} setmanes',
+ 'week-narrow-future-one' => 'en {0} setm.',
+ 'week-narrow-future-other' => 'en {0} setm.',
+ 'week-narrow-past-one' => 'fa {0} setm.',
+ 'week-narrow-past-other' => 'fa {0} setm.',
+ 'week-one' => '{0} setmana',
+ 'week-other' => '{0} setmanes',
+ 'week-past-one' => 'fa {0} setmana',
+ 'week-past-other' => 'fa {0} setmanes',
+ 'week-short-future-one' => 'd’aquí a {0} setm.',
+ 'week-short-future-other' => 'd’aquí a {0} setm.',
+ 'week-short-past-one' => 'fa {0} setm.',
+ 'week-short-past-other' => 'fa {0} setm.',
+ 'year-future-one' => 'd’aquí a {0} any',
+ 'year-future-other' => 'd’aquí a {0} anys',
+ 'year-narrow-future-one' => 'en {0} any',
+ 'year-narrow-future-other' => 'en {0} anys',
+ 'year-narrow-past-one' => 'fa {0} any',
+ 'year-narrow-past-other' => 'fa {0} anys',
+ 'year-one' => '{0} any',
+ 'year-other' => '{0} anys',
+ 'year-past-one' => 'fa {0} any',
+ 'year-past-other' => 'fa {0} anys',
+ 'year-short-future-one' => 'd’aquí a {0} any',
+ 'year-short-future-other' => 'd’aquí a {0} anys',
+ 'year-short-past-one' => 'fa {0} any',
+ 'year-short-past-other' => 'fa {0} anys',
+);
diff --git a/MLEB/cldr/CldrNames/CldrNamesChr.php b/MLEB/cldr/CldrNames/CldrNamesChr.php
new file mode 100644
index 00000000..d24c845e
--- /dev/null
+++ b/MLEB/cldr/CldrNames/CldrNamesChr.php
@@ -0,0 +1,253 @@
+<?php
+
+$languageNames = array(
+ 'cay' => 'ᎦᏳᎦ',
+ 'cho' => 'ᎠᏣᏗ',
+ 'chr' => 'ᏣᎳᎩ',
+ 'de' => 'ᎠᏂᏓᏥ',
+ 'en' => 'ᎩᎵᏏ',
+ 'es' => 'ᏍᏆᏂ',
+ 'fr' => 'ᎦᎸᏥ',
+ 'it' => 'ᎬᏩᎵᏲᏥᎢ',
+ 'ja' => 'ᏣᏩᏂᏏ',
+ 'moh' => 'ᎼᎻᎦ',
+ 'mus' => 'ᎠᎫᏌ',
+ 'pt' => 'ᏉᏧᎦᎵ',
+ 'ru' => 'ᏲᏂᎢ',
+ 'see' => 'ᏏᏂᎦ',
+ 'und' => 'ᏄᏬᎵᏍᏛᎾ ᎦᏬᏂᎯᏍᏗ',
+ 'zh' => 'ᏓᎶᏂᎨ',
+);
+
+$currencyNames = array(
+ 'BRL' => 'ᏆᏏᎵᎢ ᎠᏕᎳ',
+ 'CAD' => 'ᎧᎾᏓ ᎠᏕᎳ',
+ 'CNY' => 'ᏓᎶᏂᎨ ᎠᏕᎳ',
+ 'EUR' => 'ᏳᎳᏛ',
+ 'GBP' => 'ᎩᎵᏏᏲ ᎠᏕᎳ',
+ 'INR' => 'ᎢᏅᏗᎾ ᎠᏕᎳ',
+ 'JPY' => 'ᏣᏩᏂᏏ ᎠᏕᎳ',
+ 'MXN' => 'ᏍᏆᏂ ᎠᏕᎳ',
+ 'RUB' => 'ᏲᏂᎢ ᎠᏕᎳ',
+ 'USD' => 'ᎤᏃᏍᏗ',
+);
+
+$currencySymbols = array(
+ 'USD' => '$',
+);
+
+$countryNames = array(
+ 'AD' => 'ᎠᏂᏙᎳ',
+ 'AE' => 'ᏌᏊ ᎢᏳᎾᎵᏍᏔᏅ ᎡᎳᏈ ᎢᎹᎵᏘᏏ',
+ 'AF' => 'ᎠᏫᎨᏂᏍᏖᏂ',
+ 'AG' => 'ᎤᏪᏘ ᎠᎴ ᏆᏊᏓ',
+ 'AI' => 'ᎠᏂᎩᎳ',
+ 'AL' => 'ᎠᎵᏇᏂᏯ',
+ 'AM' => 'ᎠᎵᎻᏂᎠ',
+ 'AO' => 'ᎠᏂᎪᎳ',
+ 'AQ' => 'ᏧᏁᏍᏓᎸ',
+ 'AR' => 'ᎠᏥᏂᏘᏂᎠ',
+ 'AS' => 'ᎠᎺᎵᎧ ᏌᎼᎠ',
+ 'AT' => 'ᎠᏍᏟᏯ',
+ 'AU' => 'ᎡᎳᏗᏜ',
+ 'AW' => 'ᎠᎷᏆ',
+ 'AX' => 'ᎣᎴᏅᏓ ᏚᎦᏚᏛ',
+ 'AZ' => 'ᎠᏏᎵᏆᏌᏂ',
+ 'BA' => 'ᏉᏏᏂᎠ ᎠᎴ ᎲᏤᎪᏫ',
+ 'BB' => 'ᏆᏇᏙᏍ',
+ 'BD' => 'ᏆᏂᎦᎵᏕᏍ',
+ 'BE' => 'ᏇᎵᏥᎥᎻ',
+ 'BF' => 'ᏋᎩᎾ ᏩᏐ',
+ 'BG' => 'ᏊᎵᎨᎵᎠ',
+ 'BH' => 'ᏆᎭᎴᎢᏂ',
+ 'BI' => 'ᏋᎷᏂᏗ',
+ 'BJ' => 'ᏆᏂᎢᏂ',
+ 'BL' => 'ᎠᏥᎸᏉᏗ ᏆᏕᎳᎻ',
+ 'BM' => 'ᏆᏊᏓ',
+ 'BN' => 'ᏊᎾᎢ',
+ 'BO' => 'ᏉᎵᏫᎠ',
+ 'BR' => 'ᏆᏏᎵᎢ',
+ 'BS' => 'ᎾᏍᎩ ᏆᎭᎹᏍ',
+ 'BT' => 'ᏊᏔᏂ',
+ 'BV' => 'ᏊᏪ ᎤᎦᏚᏛ',
+ 'BW' => 'ᏆᏣᏩᎾ',
+ 'BY' => 'ᏇᎳᎷᏍ',
+ 'BZ' => 'ᏇᎵᏍ',
+ 'CA' => 'ᎨᎾᏓ',
+ 'CC' => 'ᎪᎪᏍ (ᎩᎵᏂ) ᏚᎦᏚᏛ',
+ 'CD' => 'ᎧᏂᎪ',
+ 'CF' => 'ᎬᎿᎨᏍᏛ ᎠᏰᏟ ᏍᎦᏚᎩ',
+ 'CG' => 'ᎧᏂᎪ (ᏍᎦᏚᎩ)',
+ 'CH' => 'ᏍᏫᏍ',
+ 'CI' => 'ᎢᏬᎵ ᎾᎿ ᎠᎹᏳᎶᏗ',
+ 'CK' => 'ᎠᏓᏍᏓᏴᎲᏍᎩ ᎤᎦᏚᏛ',
+ 'CL' => 'ᏥᎵ',
+ 'CM' => 'ᎧᎹᎷᏂ',
+ 'CN' => 'ᏓᎶᏂᎨᏍᏛ',
+ 'CO' => 'ᎪᎸᎻᏈᎢᎠ',
+ 'CR' => 'ᎪᏍᏓ ᎵᎧ',
+ 'CU' => 'ᎫᏆ',
+ 'CV' => 'ᎢᎬᎾᏕᎾ ᎢᏤᏳᏍᏗ',
+ 'CW' => 'ᏂᎦᏓ ᎤᏂᎲ ᎾᎿ ᎫᎳᎨᎣ',
+ 'CX' => 'ᏓᏂᏍᏓᏲᎯᎲ ᎤᎦᏚᏛ',
+ 'CY' => 'ᏌᎢᏆᏍ',
+ 'CZ' => 'ᏤᎩ ᏍᎦᏚᎩ',
+ 'DE' => 'ᎠᏂᏛᏥ',
+ 'DJ' => 'ᏥᏊᏗ',
+ 'DK' => 'ᏗᏂᎹᎦ',
+ 'DM' => 'ᏙᎻᏂᎧ',
+ 'DO' => 'ᏙᎻᏂᎧᏂ ᏍᎦᏚᎩ',
+ 'DZ' => 'ᎠᎵᏥᎵᏯ',
+ 'EC' => 'ᎡᏆᏙᎵ',
+ 'EE' => 'ᎡᏍᏙᏂᏯ',
+ 'EG' => 'ᎢᏥᏈᎢ',
+ 'ER' => 'ᎡᎵᏟᏯ',
+ 'ES' => 'ᎠᏂᏍᏆᏂᏱ',
+ 'FI' => 'ᏫᏂᎦᏙᎯ',
+ 'FJ' => 'ᏫᏥ',
+ 'FK' => 'ᏩᎩ ᎤᎦᏚᏛ',
+ 'FM' => 'ᎠᏰᏟ ᏧᎾᎵᎪᎯ ᎾᎿ ᎹᎢᏉᏂᏏᏯ',
+ 'FO' => 'ᏪᎶ ᏚᎦᏚᏛ',
+ 'FR' => 'ᎦᎸᏥᏱ',
+ 'GA' => 'ᎦᏉᏂ',
+ 'GB' => 'ᎩᎵᏏᏲ',
+ 'GD' => 'ᏋᎾᏓ',
+ 'GE' => 'ᏣᎠᏥᎢ',
+ 'GF' => 'ᎠᏂᎦᎸᏥ ᎩᎠ',
+ 'GG' => 'ᎬᏂᏏ',
+ 'GH' => 'ᎦᎠᎾ',
+ 'GI' => 'ᏥᏆᎵᏓ',
+ 'GL' => 'ᎢᏤᏍᏛᏱ',
+ 'GM' => 'ᎦᎹᏈᎢᎠ',
+ 'GN' => 'ᎫᏇ',
+ 'GP' => 'ᏩᏓᎷᏇ',
+ 'GQ' => 'ᎡᏆᏙᎵᎠᎵ ᎩᎢᏂ',
+ 'GR' => 'ᎪᎢᎯ',
+ 'GS' => 'ᏧᎦᏃᏮ ᏣᏥᏱ ᎠᎴ ᎾᏍᎩ ᏧᎦᏃᏮ ᎠᏍᏛᎭᏟ ᏚᎦᏚᏛ',
+ 'GT' => 'ᏩᏔᎹᎳ',
+ 'GU' => 'ᏆᎻ',
+ 'GW' => 'ᎫᏇ-ᏈᏌᎤᏫ',
+ 'GY' => 'ᎦᏯᎾ',
+ 'HK' => 'ᎰᏂᎩ ᎪᏂᎩ',
+ 'HM' => 'ᎲᏗ ᎤᎦᏚᏛ ᎠᎴ ᎺᎩᏓᎾᎵᏗ ᏚᎦᏚᏛ',
+ 'HR' => 'ᎧᎶᎡᏏᎠ',
+ 'HT' => 'ᎮᎢᏘ',
+ 'HU' => 'ᎲᏂᎦᎵ',
+ 'ID' => 'ᎢᏂᏙᏂᏍᏯ',
+ 'IE' => 'ᎠᎢᎴᏂᏗ',
+ 'IL' => 'ᎢᏏᎵᏱ',
+ 'IM' => 'ᎤᏍᏗ ᎤᎦᏚᏛ ᎾᎿ ᎠᏍᎦᏯ',
+ 'IN' => 'ᎢᏅᏗᎾ',
+ 'IO' => 'ᏈᏗᏏ ᏴᏫᏯ ᎠᎺᏉ ᎢᎬᎾᏕᏅ',
+ 'IQ' => 'ᎢᎳᎩ',
+ 'IR' => 'ᎢᎴᏂ',
+ 'IS' => 'ᏧᏁᏍᏓᎸᎯ',
+ 'IT' => 'ᏲᎶ',
+ 'JE' => 'ᏨᎵᏏ',
+ 'JM' => 'ᏣᎺᎢᎧ',
+ 'JO' => 'ᏦᏓᏂ',
+ 'JP' => 'ᏣᏩᏂᏏ',
+ 'KE' => 'ᎨᏂᏯ',
+ 'KG' => 'ᎩᎵᏣᎢᏍ',
+ 'KH' => 'ᎧᎹᏉᏗᎠᏂ',
+ 'KI' => 'ᎧᎵᏆᏘ',
+ 'KM' => 'ᎪᎼᎳᏍ',
+ 'KN' => 'ᎠᏰᏟ ᎾᎿ ᎨᏥᎸᏉᏗ ᎠᏂᏪᏌ ᎠᎴ ᎠᏂᏁᏫᏍ',
+ 'KP' => 'ᏧᏴᏢ ᎪᎵᎠ',
+ 'KR' => 'ᏧᎦᏃᏮ ᎪᎵᎠ',
+ 'KW' => 'ᎫᏪᎢᏘ',
+ 'KY' => 'ᎨᎢᎹᏂ ᏚᎦᏚᏛᎢ',
+ 'KZ' => 'ᎧᏎᎧᏍᏕᏂ',
+ 'LA' => 'ᎴᎣᏍ',
+ 'LB' => 'ᎴᏆᎾᏂ',
+ 'LI' => 'ᎵᎦᏗᏂᏍᏓᏂ',
+ 'LK' => 'ᏍᎵ ᎳᏂᎧ',
+ 'LR' => 'ᎳᏈᎵᏯ',
+ 'LS' => 'ᎴᏐᏙ',
+ 'LT' => 'ᎵᏗᏪᏂᎠ',
+ 'LU' => 'ᎸᎧᏎᏋᎩ',
+ 'LV' => 'ᎳᏘᏫᎠ',
+ 'LY' => 'ᎵᏈᏯ',
+ 'MA' => 'ᎼᎶᎪ',
+ 'MC' => 'ᎹᎾᎪ',
+ 'MD' => 'ᎹᎵᏙᏫᎠ',
+ 'ME' => 'ᎼᏂᏔᏁᎦᎶ',
+ 'MF' => 'ᎠᏥᎸᏉᏗ ᏡᏡ',
+ 'MG' => 'ᎹᏓᎦᏍᎧᎵ',
+ 'MH' => 'ᎹᏌᎵ ᏚᎪᏚᏛ',
+ 'MK' => 'ᎹᏏᏙᏂᎢᎠ',
+ 'ML' => 'ᎹᎵ',
+ 'MM' => 'ᎹᏯᎹᎵ',
+ 'MN' => 'ᎹᏂᎪᎵᎠ',
+ 'MO' => 'ᎹᎧᎣ',
+ 'MP' => 'ᎾᏍᎩ ᎤᏴᏢ ᏗᏜ ᎹᎵᎠᎾ ᏚᎦᏚᏛ',
+ 'MQ' => 'ᎹᏘᏂᎨ',
+ 'MR' => 'ᎹᏘᎢᏯ',
+ 'MS' => 'ᎹᏂᏘᏌᎳᏗ',
+ 'MT' => 'ᎹᎵᏔ',
+ 'MU' => 'ᎼᎵᏏᎥᏍ',
+ 'MV' => 'ᎹᎵᏗᏫᏍ',
+ 'MW' => 'ᎹᎳᏫ',
+ 'MX' => 'ᏍᏆᏂᏱ',
+ 'MY' => 'ᎹᎴᏏᎢᎠ',
+ 'MZ' => 'ᎼᏎᎻᏇᎩ',
+ 'NA' => 'ᎾᎻᏈᎢᏯ',
+ 'NC' => 'ᎢᏤ ᎧᎵᏙᏂᎠᏂ',
+ 'NF' => 'ᏃᎵᏬᎵᎩ ᎤᎦᏚᏛ',
+ 'NG' => 'ᏂᏥᎵᏯ',
+ 'NI' => 'ᏂᎧᎳᏆ',
+ 'NL' => 'ᏁᏛᎳᏂ',
+ 'NO' => 'ᏃᏪ',
+ 'NP' => 'ᏁᏆᎵ',
+ 'NR' => 'ᏃᎤᎷ',
+ 'NU' => 'ᏂᏳ',
+ 'NZ' => 'ᎢᏤ ᏏᎢᎴᏂᏗ',
+ 'OM' => 'ᎣᎺᏂ',
+ 'PA' => 'ᏆᎾᎹ',
+ 'PE' => 'ᏇᎷ',
+ 'PF' => 'ᎠᏂᎦᎸᏣ ᏆᎵᏂᏏᎠ',
+ 'PG' => 'ᏆᏇ ᎢᏤ ᎩᏂ',
+ 'PH' => 'ᎠᏂᏈᎵᎩᏃ',
+ 'PK' => 'ᏆᎩᏍᏖᏂ',
+ 'PL' => 'ᏉᎳᏂ',
+ 'PM' => 'ᏎᏂᏘ ᏈᏓ ᎠᎴ ᎻᏇᎶᏂ',
+ 'PN' => 'ᏈᎧᎵᏂ ᎤᎦᏚᏛᎢ',
+ 'PR' => 'ᏇᎡᏙ ᎵᎢᎪ',
+ 'PS' => 'ᏆᎴᏍᏗᏂᎠᏂ ᏄᎬᏫᏳᏌᏕᎩ',
+ 'PT' => 'ᏉᏥᎦᎳ',
+ 'PW' => 'ᏆᎴᎠᏫ',
+ 'PY' => 'ᏆᎳᏇᎢᏯ',
+ 'QA' => 'ᎧᏔᎵ',
+ 'RO' => 'ᎶᎹᏂᏯ',
+ 'RS' => 'ᏒᏈᏯ',
+ 'RU' => 'ᏲᏂᎢ',
+ 'RW' => 'ᎶᏩᏂᏓ',
+ 'SA' => 'ᏌᎤᏗ ᎡᎴᏈᎠ',
+ 'SB' => 'ᏐᎶᎹᏂ ᏚᎦᏚᏛ',
+ 'SC' => 'ᏏᎡᏥᎵᏍ',
+ 'SD' => 'ᏑᏕᏂ',
+ 'SE' => 'ᏍᏫᏕᏂ',
+ 'SG' => 'ᏏᏂᎦᏉᎵ',
+ 'SH' => 'ᎠᏥᎸᏉᏗ ᎮᎵᎾ',
+ 'SI' => 'ᏍᎶᏫᏂᎠ',
+ 'SK' => 'ᏍᎶᏩᎩᎠ',
+ 'SL' => 'ᏏᎡᎳ ᎴᎣᏂ',
+ 'US' => 'ᎠᎹᏰᏟ',
+);
+
+$timeUnits = array(
+ 'day-one' => '{0} ᏏᎦ',
+ 'day-other' => '{0} ᏧᏒᎯᏓ',
+ 'hour-one' => '{0} ᏑᏣᎶᏓ',
+ 'hour-other' => '{0} ᎢᏧᏣᎶᏓ',
+ 'minute-one' => '{0} ᎢᏯᏔᏬᏍᏔᏅ',
+ 'minute-other' => '{0} ᎢᏧᏔᏬᏍᏔᏅ',
+ 'month-one' => '{0} ᏏᏅᏓ',
+ 'month-other' => '{0} ᎢᏯᏅᏓ',
+ 'second-one' => '{0} ᎠᏎᏢ',
+ 'second-other' => '{0} ᏗᏎᏢ',
+ 'week-one' => '{0} ᏒᎾᏙᏓᏆᏍᏗ',
+ 'week-other' => '{0} ᎢᏳᎾᏙᏓᏆᏍᏗ',
+ 'year-one' => '{0} ᏑᏕᏘᏴᏓ',
+ 'year-other' => '{0} ᏧᏕᏘᏴᏓ',
+);
diff --git a/MLEB/cldr/CldrNames/CldrNamesCs.php b/MLEB/cldr/CldrNames/CldrNamesCs.php
new file mode 100644
index 00000000..f418230c
--- /dev/null
+++ b/MLEB/cldr/CldrNames/CldrNamesCs.php
@@ -0,0 +1,1692 @@
+<?php
+
+$languageNames = array(
+ 'aa' => 'afarština',
+ 'ab' => 'abcházština',
+ 'ace' => 'acehština',
+ 'ach' => 'akolština',
+ 'ada' => 'adangme',
+ 'ady' => 'adygejština',
+ 'ae' => 'avestánština',
+ 'aeb' => 'arabština (tuniská)',
+ 'af' => 'afrikánština',
+ 'afh' => 'afrihili',
+ 'agq' => 'aghem',
+ 'ain' => 'ainština',
+ 'ak' => 'akanština',
+ 'akk' => 'akkadština',
+ 'akz' => 'alabamština',
+ 'ale' => 'aleutština',
+ 'aln' => 'albánština (Gheg)',
+ 'alt' => 'altajština (jižní)',
+ 'am' => 'amharština',
+ 'an' => 'aragonština',
+ 'ang' => 'staroangličtina',
+ 'anp' => 'angika',
+ 'ar' => 'arabština',
+ 'ar-001' => 'arabština (moderní standardní)',
+ 'arc' => 'aramejština',
+ 'arn' => 'araukánština',
+ 'aro' => 'araonština',
+ 'arp' => 'arapažština',
+ 'arq' => 'arabština (alžírská)',
+ 'arw' => 'arawacké jazyky',
+ 'ary' => 'arabština (marocká)',
+ 'arz' => 'arabština (egyptská)',
+ 'as' => 'ásámština',
+ 'asa' => 'asu',
+ 'ase' => 'znaková řeč (americká)',
+ 'ast' => 'asturština',
+ 'av' => 'avarština',
+ 'avk' => 'kotava',
+ 'awa' => 'awadhština',
+ 'ay' => 'ajmarština',
+ 'az' => 'ázerbájdžánština',
+ 'azb' => 'ázerbájdžánština (jižní)',
+ 'ba' => 'baškirština',
+ 'bal' => 'balúčština',
+ 'ban' => 'balijština',
+ 'bar' => 'bavorština',
+ 'bas' => 'basa',
+ 'bax' => 'bamun',
+ 'bbc' => 'batak toba',
+ 'bbj' => 'ghomala',
+ 'be' => 'běloruština',
+ 'bej' => 'bedža',
+ 'bem' => 'bembština',
+ 'bew' => 'batavština',
+ 'bez' => 'bena',
+ 'bfd' => 'bafut',
+ 'bfq' => 'badagština',
+ 'bg' => 'bulharština',
+ 'bho' => 'bhojpurština',
+ 'bi' => 'bislamština',
+ 'bik' => 'bikolština',
+ 'bin' => 'bini',
+ 'bjn' => 'bandžarština',
+ 'bkm' => 'kom',
+ 'bla' => 'siksika',
+ 'bm' => 'bambarština',
+ 'bn' => 'bengálština',
+ 'bo' => 'tibetština',
+ 'bpy' => 'bišnuprijskomanipurština',
+ 'bqi' => 'bachtijárština',
+ 'br' => 'bretonština',
+ 'bra' => 'bradžština',
+ 'brh' => 'brahujština',
+ 'brx' => 'bodoština',
+ 'bs' => 'bosenština',
+ 'bss' => 'akoose',
+ 'bua' => 'burjatština',
+ 'bug' => 'bugiština',
+ 'bum' => 'bulu',
+ 'byn' => 'blinština',
+ 'byv' => 'medumba',
+ 'ca' => 'katalánština',
+ 'cad' => 'caddo',
+ 'car' => 'karibština',
+ 'cay' => 'kajugština',
+ 'cch' => 'atsam',
+ 'ce' => 'čečenština',
+ 'ceb' => 'cebuánština',
+ 'cgg' => 'kiga',
+ 'ch' => 'čamoro',
+ 'chb' => 'čibča',
+ 'chg' => 'čagatajština',
+ 'chk' => 'čukština',
+ 'chm' => 'marijština',
+ 'chn' => 'činuk pidžin',
+ 'cho' => 'čoktština',
+ 'chp' => 'čipevajština',
+ 'chr' => 'čerokézština',
+ 'chy' => 'čejenština',
+ 'ckb' => 'kurdština (sorání)',
+ 'co' => 'korsičtina',
+ 'cop' => 'koptština',
+ 'cps' => 'kapiznonština',
+ 'cr' => 'kríjština',
+ 'crh' => 'turečtina (krymská)',
+ 'cs' => 'čeština',
+ 'csb' => 'kašubština',
+ 'cu' => 'staroslověnština',
+ 'cv' => 'čuvaština',
+ 'cy' => 'velština',
+ 'da' => 'dánština',
+ 'dak' => 'dakotština',
+ 'dar' => 'dargština',
+ 'dav' => 'taita',
+ 'de' => 'němčina',
+ 'de-ch' => 'němčina standardní (Švýcarsko)',
+ 'del' => 'delawarština',
+ 'den' => 'slejvština (athabaský jazyk)',
+ 'dgr' => 'dogrib',
+ 'din' => 'dinkština',
+ 'dje' => 'zarmština',
+ 'doi' => 'dogarština',
+ 'dsb' => 'dolnolužická srbština',
+ 'dtp' => 'kadazandusunština',
+ 'dua' => 'dualština',
+ 'dum' => 'holandština (středověká)',
+ 'dv' => 'maledivština',
+ 'dyo' => 'jola-fonyi',
+ 'dyu' => 'djula',
+ 'dz' => 'dzongkä',
+ 'dzg' => 'dazaga',
+ 'ebu' => 'embu',
+ 'ee' => 'eweština',
+ 'efi' => 'efikština',
+ 'egl' => 'emilijština',
+ 'egy' => 'egyptština stará',
+ 'eka' => 'ekajuk',
+ 'el' => 'řečtina',
+ 'elx' => 'elamitština',
+ 'en' => 'angličtina',
+ 'en-us' => 'angličtina (USA)',
+ 'enm' => 'angličtina (středověká)',
+ 'eo' => 'esperanto',
+ 'es' => 'španělština',
+ 'es-es' => 'španělština (Evropa)',
+ 'esu' => 'jupikština (středoaljašská)',
+ 'et' => 'estonština',
+ 'eu' => 'baskičtina',
+ 'ewo' => 'ewondo',
+ 'ext' => 'extremadurština',
+ 'fa' => 'perština',
+ 'fan' => 'fang',
+ 'fat' => 'fantština',
+ 'ff' => 'fulbština',
+ 'fi' => 'finština',
+ 'fil' => 'filipínština',
+ 'fit' => 'finština (tornedalská)',
+ 'fj' => 'fidžijština',
+ 'fo' => 'faerština',
+ 'fon' => 'fonština',
+ 'fr' => 'francouzština',
+ 'frc' => 'francouzština (kajunská)',
+ 'frm' => 'francouzština (středověká)',
+ 'fro' => 'francouzština (stará)',
+ 'frp' => 'franko-provensálština',
+ 'frr' => 'fríština (severní)',
+ 'frs' => 'fríština (východní)',
+ 'fur' => 'furlanština',
+ 'fy' => 'fríština',
+ 'ga' => 'irština',
+ 'gaa' => 'gaština',
+ 'gag' => 'gagauzština',
+ 'gan' => 'čínština (dialekty Gan)',
+ 'gay' => 'gayo',
+ 'gba' => 'gbaja',
+ 'gbz' => 'daríjština (zoroastrijská)',
+ 'gd' => 'skotská gaelština',
+ 'gez' => 'geez',
+ 'gil' => 'kiribatština',
+ 'gl' => 'galicijština',
+ 'glk' => 'gilačtina',
+ 'gmh' => 'hornoněmčina (středověká)',
+ 'gn' => 'guaranština',
+ 'goh' => 'hornoněmčina (stará)',
+ 'gom' => 'konkánština (Goa)',
+ 'gon' => 'góndština',
+ 'gor' => 'gorontalo',
+ 'got' => 'gótština',
+ 'grb' => 'grebo',
+ 'grc' => 'starořečtina',
+ 'gsw' => 'němčina (Švýcarsko)',
+ 'gu' => 'gudžarátština',
+ 'guc' => 'wayúuština',
+ 'gur' => 'frafra',
+ 'guz' => 'gusii',
+ 'gv' => 'manština',
+ 'gwi' => 'gwichʼin',
+ 'ha' => 'hauština',
+ 'hai' => 'haidština',
+ 'hak' => 'čínština (dialekty Hakka)',
+ 'haw' => 'havajština',
+ 'he' => 'hebrejština',
+ 'hi' => 'hindština',
+ 'hif' => 'hindština (Fidži)',
+ 'hil' => 'hiligajnonština',
+ 'hit' => 'chetitština',
+ 'hmn' => 'hmongština',
+ 'ho' => 'hiri motu',
+ 'hr' => 'chorvatština',
+ 'hsb' => 'hornolužická srbština',
+ 'hsn' => 'čínština (dialekty Xiang)',
+ 'ht' => 'haitština',
+ 'hu' => 'maďarština',
+ 'hup' => 'hupa',
+ 'hy' => 'arménština',
+ 'hz' => 'hererština',
+ 'ia' => 'interlingua',
+ 'iba' => 'ibanština',
+ 'ibb' => 'ibibio',
+ 'id' => 'indonéština',
+ 'ie' => 'interlingue',
+ 'ig' => 'igboština',
+ 'ii' => 's’-čchuan i',
+ 'ik' => 'inupiakština',
+ 'ilo' => 'ilokánština',
+ 'inh' => 'inguština',
+ 'io' => 'ido',
+ 'is' => 'islandština',
+ 'it' => 'italština',
+ 'iu' => 'inuktitutština',
+ 'izh' => 'ingrijština',
+ 'ja' => 'japonština',
+ 'jam' => 'jamajská kreolština',
+ 'jbo' => 'lojban',
+ 'jgo' => 'ngomba',
+ 'jmc' => 'mašame',
+ 'jpr' => 'judeoperština',
+ 'jrb' => 'judeoarabština',
+ 'jut' => 'jutština',
+ 'jv' => 'javánština',
+ 'ka' => 'gruzínština',
+ 'kaa' => 'karakalpačtina',
+ 'kab' => 'kabylština',
+ 'kac' => 'kačijština',
+ 'kaj' => 'jju',
+ 'kam' => 'kambština',
+ 'kaw' => 'kawi',
+ 'kbd' => 'kabardinština',
+ 'kbl' => 'kanembu',
+ 'kcg' => 'tyap',
+ 'kde' => 'makonde',
+ 'kea' => 'kapverdština',
+ 'ken' => 'kenyang',
+ 'kfo' => 'koro',
+ 'kg' => 'konžština',
+ 'kgp' => 'kaingang',
+ 'kha' => 'khásí',
+ 'kho' => 'chotánština',
+ 'khq' => 'koyra chiini',
+ 'khw' => 'chovarština',
+ 'ki' => 'kikujština',
+ 'kiu' => 'zazakština',
+ 'kj' => 'kuaňamština',
+ 'kk' => 'kazaština',
+ 'kkj' => 'kako',
+ 'kl' => 'grónština',
+ 'kln' => 'kalendžin',
+ 'km' => 'khmérština',
+ 'kmb' => 'kimbundština',
+ 'kn' => 'kannadština',
+ 'ko' => 'korejština',
+ 'koi' => 'komi-permjačtina',
+ 'kok' => 'konkánština',
+ 'kos' => 'kosrajština',
+ 'kpe' => 'kpelle',
+ 'kr' => 'kanuri',
+ 'krc' => 'karačajevo-balkarština',
+ 'kri' => 'krio',
+ 'krj' => 'kinaraj-a',
+ 'krl' => 'karelština',
+ 'kru' => 'kuruchština',
+ 'ks' => 'kašmírština',
+ 'ksb' => 'šambala',
+ 'ksf' => 'bafia',
+ 'ksh' => 'kolínština',
+ 'ku' => 'kurdština',
+ 'kum' => 'kumyčtina',
+ 'kut' => 'kutenajština',
+ 'kv' => 'komijština',
+ 'kw' => 'kornština',
+ 'ky' => 'kyrgyzština',
+ 'la' => 'latina',
+ 'lad' => 'ladinština',
+ 'lag' => 'langi',
+ 'lah' => 'lahndština',
+ 'lam' => 'lambština',
+ 'lb' => 'lucemburština',
+ 'lez' => 'lezginština',
+ 'lfn' => 'lingua franca nova',
+ 'lg' => 'gandština',
+ 'li' => 'limburština',
+ 'lij' => 'ligurština',
+ 'liv' => 'livonština',
+ 'lkt' => 'lakotština',
+ 'lmo' => 'lombardština',
+ 'ln' => 'lingalština',
+ 'lo' => 'laoština',
+ 'lol' => 'mongština',
+ 'loz' => 'lozština',
+ 'lt' => 'litevština',
+ 'ltg' => 'latgalština',
+ 'lu' => 'lubu-katanžština',
+ 'lua' => 'luba-luluaština',
+ 'lui' => 'luiseňo',
+ 'lun' => 'lundština',
+ 'luo' => 'luoština',
+ 'lus' => 'mizoština',
+ 'luy' => 'luhja',
+ 'lv' => 'lotyština',
+ 'lzh' => 'čínština (klasická)',
+ 'lzz' => 'lazština',
+ 'mad' => 'madurština',
+ 'maf' => 'mafa',
+ 'mag' => 'magahijština',
+ 'mai' => 'maithiliština',
+ 'mak' => 'makasarština',
+ 'man' => 'mandingština',
+ 'mas' => 'masajština',
+ 'mde' => 'maba',
+ 'mdf' => 'mokšanština',
+ 'mdr' => 'mandar',
+ 'men' => 'mende',
+ 'mer' => 'meru',
+ 'mfe' => 'mauricijská kreolština',
+ 'mg' => 'malgaština',
+ 'mga' => 'irština (středověká)',
+ 'mgh' => 'makhuwa-meetto',
+ 'mgo' => 'meta’',
+ 'mh' => 'maršálština',
+ 'mi' => 'maorština',
+ 'mic' => 'micmac',
+ 'min' => 'minangkabau',
+ 'mk' => 'makedonština',
+ 'ml' => 'malajálamština',
+ 'mn' => 'mongolština',
+ 'mnc' => 'mandžuština',
+ 'mni' => 'manipurština',
+ 'moh' => 'mohawkština',
+ 'mos' => 'mosi',
+ 'mr' => 'maráthština',
+ 'mrj' => 'marijština (západní)',
+ 'ms' => 'malajština',
+ 'mt' => 'maltština',
+ 'mua' => 'mundang',
+ 'mul' => 'složené (víceřádkové) jazyky',
+ 'mus' => 'kríkština',
+ 'mwl' => 'mirandština',
+ 'mwr' => 'márvárština',
+ 'mwv' => 'mentavajština',
+ 'my' => 'barmština',
+ 'mye' => 'myene',
+ 'myv' => 'erzjanština',
+ 'mzn' => 'mázandaránština',
+ 'na' => 'naurština',
+ 'nan' => 'čínština (dialekty Minnan)',
+ 'nap' => 'neapolština',
+ 'naq' => 'namaština',
+ 'nb' => 'norština (bokmål)',
+ 'nd' => 'ndebele (Zimbabwe)',
+ 'nds' => 'dolnoněmčina',
+ 'ne' => 'nepálština',
+ 'new' => 'névárština',
+ 'ng' => 'ndondština',
+ 'nia' => 'nias',
+ 'niu' => 'niueština',
+ 'njo' => 'ao (jazyky Nágálandu)',
+ 'nl' => 'nizozemština',
+ 'nl-be' => 'vlámština',
+ 'nmg' => 'kwasio',
+ 'nn' => 'norština (nynorsk)',
+ 'nnh' => 'ngiemboon',
+ 'no' => 'norština',
+ 'nog' => 'nogajština',
+ 'non' => 'norština historická',
+ 'nov' => 'novial',
+ 'nqo' => 'n’ko',
+ 'nr' => 'ndebele (Jižní Afrika)',
+ 'nso' => 'sotština (severní)',
+ 'nus' => 'nuerština',
+ 'nv' => 'navažština',
+ 'nwc' => 'newarština (klasická)',
+ 'ny' => 'ňandžština',
+ 'nym' => 'ňamwežština',
+ 'nyn' => 'ňankolština',
+ 'nyo' => 'ňorština',
+ 'nzi' => 'nzima',
+ 'oc' => 'okcitánština',
+ 'oj' => 'odžibvejština',
+ 'om' => 'oromština',
+ 'or' => 'urijština',
+ 'os' => 'osetština',
+ 'osa' => 'osage',
+ 'ota' => 'turečtina (osmanská)',
+ 'pa' => 'paňdžábština',
+ 'pag' => 'pangasinanština',
+ 'pal' => 'pahlavština',
+ 'pam' => 'papangau',
+ 'pap' => 'papiamento',
+ 'pau' => 'palauština',
+ 'pcd' => 'picardština',
+ 'pdc' => 'němčina (pensylvánská)',
+ 'pdt' => 'němčina (plautdietsch)',
+ 'peo' => 'staroperština',
+ 'pfl' => 'falčtina',
+ 'phn' => 'féničtina',
+ 'pi' => 'pálí',
+ 'pl' => 'polština',
+ 'pms' => 'piemonština',
+ 'pnt' => 'pontština',
+ 'pon' => 'pohnpeiština',
+ 'prg' => 'pruština',
+ 'pro' => 'provensálština',
+ 'ps' => 'paštština',
+ 'pt' => 'portugalština',
+ 'pt-pt' => 'portugalština (Evropa)',
+ 'qu' => 'kečuánština',
+ 'quc' => 'kičé',
+ 'qug' => 'kečuánština (chimborazo)',
+ 'raj' => 'rádžastánština',
+ 'rap' => 'rapanujština',
+ 'rar' => 'rarotongánština',
+ 'rgn' => 'romaňolština',
+ 'rif' => 'rífština',
+ 'rm' => 'rétorománština',
+ 'rn' => 'kirundština',
+ 'ro' => 'rumunština',
+ 'ro-md' => 'moldavština',
+ 'rof' => 'rombo',
+ 'rom' => 'romština',
+ 'rtm' => 'rotumanština',
+ 'ru' => 'ruština',
+ 'rue' => 'rusínština',
+ 'rug' => 'rovianština',
+ 'rup' => 'arumunština',
+ 'rw' => 'kiňarwandština',
+ 'rwk' => 'rwa',
+ 'sa' => 'sanskrt',
+ 'sad' => 'sandawština',
+ 'sah' => 'jakutština',
+ 'sam' => 'samarština',
+ 'saq' => 'samburu',
+ 'sas' => 'sasakština',
+ 'sat' => 'santálština',
+ 'saz' => 'saurášterština',
+ 'sba' => 'ngambay',
+ 'sbp' => 'sangoština',
+ 'sc' => 'sardština',
+ 'scn' => 'sicilština',
+ 'sco' => 'skotština',
+ 'sd' => 'sindhština',
+ 'sdc' => 'sassarština',
+ 'se' => 'sámština (severní)',
+ 'see' => 'seneca',
+ 'seh' => 'sena',
+ 'sei' => 'seriština',
+ 'sel' => 'selkupština',
+ 'ses' => 'koyraboro senni',
+ 'sg' => 'sangština',
+ 'sga' => 'irština (stará)',
+ 'sgs' => 'žemaitština',
+ 'sh' => 'srbochorvatština',
+ 'shi' => 'tachelhit',
+ 'shn' => 'šanština',
+ 'shu' => 'arabština (čadská)',
+ 'si' => 'sinhálština',
+ 'sid' => 'sidamo',
+ 'sk' => 'slovenština',
+ 'sl' => 'slovinština',
+ 'sli' => 'němčina (slezská)',
+ 'sly' => 'selajarština',
+ 'sm' => 'samojština',
+ 'sma' => 'sámština (jižní)',
+ 'smj' => 'sámština (lulejská)',
+ 'smn' => 'sámština (inarijská)',
+ 'sms' => 'sámština (skoltská)',
+ 'sn' => 'šonština',
+ 'snk' => 'sonikština',
+ 'so' => 'somálština',
+ 'sog' => 'sogdština',
+ 'sq' => 'albánština',
+ 'sr' => 'srbština',
+ 'srn' => 'sranan tongo',
+ 'srr' => 'sererština',
+ 'ss' => 'siswatština',
+ 'ssy' => 'saho',
+ 'st' => 'sotština (jižní)',
+ 'stq' => 'fríština (saterlandská)',
+ 'su' => 'sundština',
+ 'suk' => 'sukuma',
+ 'sus' => 'susu',
+ 'sux' => 'sumerština',
+ 'sv' => 'švédština',
+ 'sw' => 'svahilština',
+ 'swb' => 'komorština',
+ 'swc' => 'svahilština (Kongo)',
+ 'syc' => 'syrština (klasická)',
+ 'syr' => 'syrština',
+ 'szl' => 'slezština',
+ 'ta' => 'tamilština',
+ 'tcy' => 'tuluština',
+ 'te' => 'telugština',
+ 'tem' => 'temne',
+ 'teo' => 'teso',
+ 'ter' => 'tereno',
+ 'tet' => 'tetumština',
+ 'tg' => 'tádžičtina',
+ 'th' => 'thajština',
+ 'ti' => 'tigrinijština',
+ 'tig' => 'tigrejština',
+ 'tiv' => 'tivština',
+ 'tk' => 'turkmenština',
+ 'tkl' => 'tokelauština',
+ 'tkr' => 'cachurština',
+ 'tl' => 'tagalog',
+ 'tlh' => 'klingonština',
+ 'tli' => 'tlingit',
+ 'tly' => 'talyština',
+ 'tmh' => 'tamašek',
+ 'tn' => 'setswanština',
+ 'to' => 'tongánština',
+ 'tog' => 'tonžština (nyasa)',
+ 'tpi' => 'tok pisin',
+ 'tr' => 'turečtina',
+ 'tru' => 'turojština',
+ 'trv' => 'taroko',
+ 'ts' => 'tsonga',
+ 'tsd' => 'tsakonština',
+ 'tsi' => 'tsimšijské jazyky',
+ 'tt' => 'tatarština',
+ 'ttt' => 'tatština',
+ 'tum' => 'tumbukština',
+ 'tvl' => 'tuvalština',
+ 'tw' => 'twi',
+ 'twq' => 'tasawaq',
+ 'ty' => 'tahitština',
+ 'tyv' => 'tuvinština',
+ 'tzm' => 'tamazight (střední Maroko)',
+ 'udm' => 'udmurtština',
+ 'ug' => 'ujgurština',
+ 'uga' => 'ugaritština',
+ 'uk' => 'ukrajinština',
+ 'umb' => 'umbundu',
+ 'und' => 'neznámý jazyk',
+ 'ur' => 'urdština',
+ 'uz' => 'uzbečtina',
+ 'vai' => 'vai',
+ 've' => 'venda',
+ 'vec' => 'benátština',
+ 'vep' => 'vepština',
+ 'vi' => 'vietnamština',
+ 'vls' => 'vlámština (západní)',
+ 'vmf' => 'němčina (mohansko-franské dialekty)',
+ 'vo' => 'volapük',
+ 'vot' => 'votština',
+ 'vro' => 'võruština',
+ 'vun' => 'vunjo',
+ 'wa' => 'valonština',
+ 'wae' => 'němčina (walser)',
+ 'wal' => 'wolajtština',
+ 'war' => 'warajština',
+ 'was' => 'waština',
+ 'wo' => 'wolofština',
+ 'wuu' => 'čínština (dialekty Wu)',
+ 'xal' => 'kalmyčtina',
+ 'xh' => 'xhoština',
+ 'xmf' => 'mingrelština',
+ 'xog' => 'sogština',
+ 'yao' => 'jaoština',
+ 'yap' => 'japština',
+ 'yav' => 'jangbenština',
+ 'ybb' => 'yemba',
+ 'yi' => 'jidiš',
+ 'yo' => 'jorubština',
+ 'yrl' => 'nheengatu',
+ 'yue' => 'kantonština',
+ 'za' => 'čuangština',
+ 'zap' => 'zapotéčtina',
+ 'zbl' => 'bliss systém',
+ 'zea' => 'zélandština',
+ 'zen' => 'zenaga',
+ 'zgh' => 'tamazight (standardní marocký)',
+ 'zh' => 'čínština',
+ 'zh-hans' => 'čínština (zjednodušená)',
+ 'zu' => 'zuluština',
+ 'zun' => 'zunijština',
+ 'zxx' => 'žádný jazykový obsah',
+ 'zza' => 'zaza',
+);
+
+$currencyNames = array(
+ 'ADP' => 'andorrská peseta',
+ 'AED' => 'SAE dirham',
+ 'AFA' => 'afghánský afghán (1927–2002)',
+ 'AFN' => 'afghánský afghán',
+ 'ALK' => 'albánský lek (1946–1965)',
+ 'ALL' => 'albánský lek',
+ 'AMD' => 'arménský dram',
+ 'ANG' => 'nizozemskoantilský gulden',
+ 'AOA' => 'angolská kwanza',
+ 'AOK' => 'angolská kwanza (1977–1991)',
+ 'AON' => 'angolská kwanza (1990–2000)',
+ 'AOR' => 'angolská kwanza (1995–1999)',
+ 'ARA' => 'argentinský austral',
+ 'ARL' => 'argentinské peso ley (1970–1983)',
+ 'ARM' => 'argentinské peso (1881–1970)',
+ 'ARP' => 'argentinské peso (1983–1985)',
+ 'ARS' => 'argentinské peso',
+ 'ATS' => 'rakouský šilink',
+ 'AUD' => 'australský dolar',
+ 'AWG' => 'arubský zlatý',
+ 'AZM' => 'ázerbájdžánský manat (1993–2006)',
+ 'AZN' => 'ázerbájdžánský manat',
+ 'BAD' => 'bosenský dinár (1992–1994)',
+ 'BAM' => 'bosenská konvertibilní marka',
+ 'BAN' => 'bosenský nový dinár (1994–1997)',
+ 'BBD' => 'barbadoský dolar',
+ 'BDT' => 'bangladéšská taka',
+ 'BEC' => 'belgický konvertibilní frank',
+ 'BEF' => 'belgický frank',
+ 'BEL' => 'belgický finanční frank',
+ 'BGL' => 'BGL',
+ 'BGN' => 'bulharský lev',
+ 'BGO' => 'bulharský lev (1879–1952)',
+ 'BHD' => 'bahrajnský dinár',
+ 'BIF' => 'burundský frank',
+ 'BMD' => 'bermudský dolar',
+ 'BND' => 'brunejský dolar',
+ 'BOB' => 'bolivijský boliviano',
+ 'BOL' => 'bolivijský boliviano (1863–1963)',
+ 'BOP' => 'bolivijské peso',
+ 'BOV' => 'bolivijský mvdol',
+ 'BRB' => 'brazilské nové cruzeiro (1967–1986)',
+ 'BRC' => 'brazilské cruzado (1986–1989)',
+ 'BRE' => 'brazilské cruzeiro (1990–1993)',
+ 'BRL' => 'brazilský real',
+ 'BRN' => 'brazilské nové cruzado (1989–1990)',
+ 'BRR' => 'brazilské cruzeiro (1993–1994)',
+ 'BRZ' => 'brazilské cruzeiro (1942–1967)',
+ 'BSD' => 'bahamský dolar',
+ 'BTN' => 'bhútánský ngultrum',
+ 'BUK' => 'barmský kyat',
+ 'BWP' => 'botswanská pula',
+ 'BYB' => 'běloruský rubl (1994–1999)',
+ 'BYR' => 'běloruský rubl',
+ 'BZD' => 'belizský dolar',
+ 'CAD' => 'kanadský dolar',
+ 'CDF' => 'konžský frank',
+ 'CHE' => 'švýcarské WIR-euro',
+ 'CHF' => 'švýcarský frank',
+ 'CHW' => 'švýcarský WIR-frank',
+ 'CLE' => 'chilské escudo',
+ 'CLF' => 'chilská účetní jednotka (UF)',
+ 'CLP' => 'chilské peso',
+ 'CNY' => 'čínský jüan',
+ 'COP' => 'kolumbijské peso',
+ 'COU' => 'kolumbijská jednotka reálné hodnoty',
+ 'CRC' => 'kostarický colón',
+ 'CSD' => 'srbský dinár (2002–2006)',
+ 'CSK' => 'československá koruna',
+ 'CUC' => 'kubánské konvertibilní peso',
+ 'CUP' => 'kubánské peso',
+ 'CVE' => 'kapverdské escudo',
+ 'CYP' => 'kyperská libra',
+ 'CZK' => 'česká koruna',
+ 'DDM' => 'východoněmecká marka',
+ 'DEM' => 'německá marka',
+ 'DJF' => 'džibutský frank',
+ 'DKK' => 'dánská koruna',
+ 'DOP' => 'dominikánské peso',
+ 'DZD' => 'alžírský dinár',
+ 'ECS' => 'ekvádorský sucre',
+ 'ECV' => 'ekvádorská jednotka konstantní hodnoty',
+ 'EEK' => 'estonská koruna',
+ 'EGP' => 'egyptská libra',
+ 'ERN' => 'eritrejská nakfa',
+ 'ESA' => 'španělská peseta („A“ účet)',
+ 'ESB' => 'španělská peseta (konvertibilní účet)',
+ 'ESP' => 'španělská peseta',
+ 'ETB' => 'etiopský birr',
+ 'EUR' => 'euro',
+ 'FIM' => 'finská marka',
+ 'FJD' => 'fidžijský dolar',
+ 'FKP' => 'falklandská libra',
+ 'FRF' => 'francouzský frank',
+ 'GBP' => 'britská libra',
+ 'GEK' => 'gruzínské kuponové lari',
+ 'GEL' => 'gruzínské lari',
+ 'GHC' => 'ghanský cedi (1979–2007)',
+ 'GHS' => 'ghanský cedi',
+ 'GIP' => 'gibraltarská libra',
+ 'GMD' => 'gambijský dalasi',
+ 'GNF' => 'guinejský frank',
+ 'GNS' => 'guinejský syli',
+ 'GQE' => 'rovníkovoguinejský ekwele',
+ 'GRD' => 'řecká drachma',
+ 'GTQ' => 'guatemalský quetzal',
+ 'GWE' => 'portugalskoguinejské escudo',
+ 'GWP' => 'guinejsko-bissauské peso',
+ 'GYD' => 'guyanský dolar',
+ 'HKD' => 'hongkongský dolar',
+ 'HNL' => 'honduraská lempira',
+ 'HRD' => 'chorvatský dinár',
+ 'HRK' => 'chorvatská kuna',
+ 'HTG' => 'haitský gourde',
+ 'HUF' => 'maďarský forint',
+ 'IDR' => 'indonéská rupie',
+ 'IEP' => 'irská libra',
+ 'ILP' => 'izraelská libra',
+ 'ILR' => 'izraelský šekel (1980–1985)',
+ 'ILS' => 'izraelský nový šekel',
+ 'INR' => 'indická rupie',
+ 'IQD' => 'irácký dinár',
+ 'IRR' => 'íránský rijál',
+ 'ISJ' => 'islandská koruna (1918–1981)',
+ 'ISK' => 'islandská koruna',
+ 'ITL' => 'italská lira',
+ 'JMD' => 'jamajský dolar',
+ 'JOD' => 'jordánský dinár',
+ 'JPY' => 'japonský jen',
+ 'KES' => 'keňský šilink',
+ 'KGS' => 'kyrgyzský som',
+ 'KHR' => 'kambodžský riel',
+ 'KMF' => 'komorský frank',
+ 'KPW' => 'severokorejský won',
+ 'KRH' => 'jihokorejský hwan (1953–1962)',
+ 'KRO' => 'jihokorejský won (1945–1953)',
+ 'KRW' => 'jihokorejský won',
+ 'KWD' => 'kuvajtský dinár',
+ 'KYD' => 'kajmanský dolar',
+ 'KZT' => 'kazašské tenge',
+ 'LAK' => 'laoský kip',
+ 'LBP' => 'libanonská libra',
+ 'LKR' => 'srílanská rupie',
+ 'LRD' => 'liberijský dolar',
+ 'LSL' => 'lesothský loti',
+ 'LTL' => 'litevský litas',
+ 'LTT' => 'litevský talonas',
+ 'LUC' => 'lucemburský konvertibilní frank',
+ 'LUF' => 'lucemburský frank',
+ 'LUL' => 'lucemburský finanční frank',
+ 'LVL' => 'lotyšský lat',
+ 'LVR' => 'lotyšský rubl',
+ 'LYD' => 'libyjský dinár',
+ 'MAD' => 'marocký dinár',
+ 'MAF' => 'marocký frank',
+ 'MCF' => 'monacký frank',
+ 'MDC' => 'moldavský kupon',
+ 'MDL' => 'moldavský leu',
+ 'MGA' => 'madagaskarský ariary',
+ 'MGF' => 'madagaskarský frank',
+ 'MKD' => 'makedonský denár',
+ 'MKN' => 'makedonský denár (1992–1993)',
+ 'MLF' => 'malijský frank',
+ 'MMK' => 'myanmarský kyat',
+ 'MNT' => 'mongolský tugrik',
+ 'MOP' => 'macajská pataca',
+ 'MRO' => 'mauritánská ouguiya',
+ 'MTL' => 'maltská lira',
+ 'MTP' => 'maltská libra',
+ 'MUR' => 'mauricijská rupie',
+ 'MVP' => 'maledivská rupie (1947–1981)',
+ 'MVR' => 'maledivská rupie',
+ 'MWK' => 'malawijská kwacha',
+ 'MXN' => 'mexické peso',
+ 'MXP' => 'mexické stříbrné peso (1861–1992)',
+ 'MXV' => 'mexická investiční jednotka',
+ 'MYR' => 'malajsijský ringgit',
+ 'MZE' => 'mosambický escudo',
+ 'MZM' => 'mosambický metical (1980–2006)',
+ 'MZN' => 'mozambický metical',
+ 'NAD' => 'namibijský dolar',
+ 'NGN' => 'nigerijská naira',
+ 'NIC' => 'nikaragujská córdoba (1988–1991)',
+ 'NIO' => 'nikaragujská córdoba',
+ 'NLG' => 'nizozemský gulden',
+ 'NOK' => 'norská koruna',
+ 'NPR' => 'nepálská rupie',
+ 'NZD' => 'novozélandský dolar',
+ 'OMR' => 'ománský rijál',
+ 'PAB' => 'panamská balboa',
+ 'PEI' => 'peruánská inti',
+ 'PEN' => 'peruánský nový sol',
+ 'PES' => 'peruánský sol (1863–1965)',
+ 'PGK' => 'papuánská nová kina',
+ 'PHP' => 'filipínské peso',
+ 'PKR' => 'pákistánská rupie',
+ 'PLN' => 'polský zlotý',
+ 'PLZ' => 'polský zlotý (1950–1995)',
+ 'PTE' => 'portugalské escudo',
+ 'PYG' => 'paraguajské guarani',
+ 'QAR' => 'katarský rijál',
+ 'RHD' => 'rhodéský dolar',
+ 'ROL' => 'rumunské leu (1952–2006)',
+ 'RON' => 'rumunské leu',
+ 'RSD' => 'srbský dinár',
+ 'RUB' => 'ruský rubl',
+ 'RUR' => 'ruský rubl (1991–1998)',
+ 'RWF' => 'rwandský frank',
+ 'SAR' => 'saúdský rijál',
+ 'SBD' => 'šalamounský dolar',
+ 'SCR' => 'seychelská rupie',
+ 'SDD' => 'súdánský dinár (1992–2007)',
+ 'SDG' => 'súdánská libra',
+ 'SDP' => 'súdánská libra (1957–1998)',
+ 'SEK' => 'švédská koruna',
+ 'SGD' => 'singapurský dolar',
+ 'SHP' => 'svatohelenská libra',
+ 'SIT' => 'slovinský tolar',
+ 'SKK' => 'slovenská koruna',
+ 'SLL' => 'sierro-leonský leone',
+ 'SOS' => 'somálský šilink',
+ 'SRD' => 'surinamský dolar',
+ 'SRG' => 'surinamský zlatý',
+ 'SSP' => 'jihosúdánská libra',
+ 'STD' => 'svatotomášská dobra',
+ 'SUR' => 'sovětský rubl',
+ 'SVC' => 'salvadorský colón',
+ 'SYP' => 'syrská libra',
+ 'SZL' => 'svazijský lilangeni',
+ 'THB' => 'thajský baht',
+ 'TJR' => 'tádžický rubl',
+ 'TJS' => 'tádžické somoni',
+ 'TMM' => 'turkmenský manat (1993–2009)',
+ 'TMT' => 'turkmenský manat',
+ 'TND' => 'tuniský dinár',
+ 'TOP' => 'tonžská paanga',
+ 'TPE' => 'timorské escudo',
+ 'TRL' => 'turecká lira (1922–2005)',
+ 'TRY' => 'turecká lira',
+ 'TTD' => 'trinidadský dolar',
+ 'TWD' => 'tchajwanský dolar',
+ 'TZS' => 'tanzanský šilink',
+ 'UAH' => 'ukrajinská hřivna',
+ 'UAK' => 'ukrajinský karbovanec',
+ 'UGS' => 'ugandský šilink (1966–1987)',
+ 'UGX' => 'ugandský šilink',
+ 'USD' => 'americký dolar',
+ 'USN' => 'americký dolar (příští den)',
+ 'USS' => 'americký dolar (týž den)',
+ 'UYI' => 'uruguayské peso (v indexovaných jednotkách)',
+ 'UYP' => 'uruguayské peso (1975–1993)',
+ 'UYU' => 'uruguayské peso',
+ 'UZS' => 'uzbecký sum',
+ 'VEB' => 'venezuelský bolívar (1871–2008)',
+ 'VEF' => 'venezuelský bolívar',
+ 'VND' => 'vietnamský dong',
+ 'VNN' => 'vietnamský dong (1978–1985)',
+ 'VUV' => 'vanuatský vatu',
+ 'WST' => 'samojská tala',
+ 'XAF' => 'CFA/BEAC frank',
+ 'XAG' => 'stříbro',
+ 'XAU' => 'zlato',
+ 'XBA' => 'evropská smíšená jednotka',
+ 'XBB' => 'evropská peněžní jednotka',
+ 'XBC' => 'evropská jednotka účtu 9 (XBC)',
+ 'XBD' => 'evropská jednotka účtu 17 (XBD)',
+ 'XCD' => 'východokaribský dolar',
+ 'XDR' => 'SDR',
+ 'XEU' => 'evropská měnová jednotka',
+ 'XFO' => 'francouzský zlatý frank',
+ 'XFU' => 'francouzský UIC frank',
+ 'XOF' => 'CFA/BCEAO frank',
+ 'XPD' => 'palladium',
+ 'XPF' => 'CFP frank',
+ 'XPT' => 'platina',
+ 'XRE' => 'kód fondů RINET',
+ 'XSU' => 'sucre',
+ 'XTS' => 'kód zvlášť vyhrazený pro testovací účely',
+ 'XXX' => 'neznámá měna',
+ 'YDD' => 'jemenský dinár',
+ 'YER' => 'jemenský rijál',
+ 'YUD' => 'jugoslávský dinár (1966–1990)',
+ 'YUM' => 'jugoslávský nový dinár (1994–2002)',
+ 'YUN' => 'jugoslávský konvertibilní dinár (1990–1992)',
+ 'YUR' => 'jugoslávský reformovaný dinár (1992–1993)',
+ 'ZAL' => 'jihoafrický finanční rand',
+ 'ZAR' => 'jihoafrický rand',
+ 'ZMK' => 'zambijská kwacha (1968–2012)',
+ 'ZMW' => 'zambijská kwacha',
+ 'ZRN' => 'zairský nový zaire (1993–1998)',
+ 'ZRZ' => 'zairský zaire (1971–1993)',
+ 'ZWD' => 'zimbabwský dolar (1980–2008)',
+ 'ZWL' => 'zimbabwský dolar (2009)',
+ 'ZWR' => 'zimbabwský dolar (2008)',
+);
+
+$currencySymbols = array(
+ 'ADP' => 'ADP',
+ 'AED' => 'AED',
+ 'AFA' => 'AFA',
+ 'AFN' => 'AFN',
+ 'ALK' => 'ALK',
+ 'ALL' => 'ALL',
+ 'AMD' => 'AMD',
+ 'ANG' => 'ANG',
+ 'AOA' => 'AOA',
+ 'AOK' => 'AOK',
+ 'AON' => 'AON',
+ 'AOR' => 'AOR',
+ 'ARA' => 'ARA',
+ 'ARL' => 'ARL',
+ 'ARM' => 'ARM',
+ 'ARP' => 'ARP',
+ 'ARS' => 'ARS',
+ 'ATS' => 'ATS',
+ 'AUD' => 'AU$',
+ 'AWG' => 'AWG',
+ 'AZM' => 'AZM',
+ 'AZN' => 'AZN',
+ 'BAD' => 'BAD',
+ 'BAM' => 'BAM',
+ 'BAN' => 'BAN',
+ 'BBD' => 'BBD',
+ 'BDT' => 'BDT',
+ 'BEC' => 'BEC',
+ 'BEF' => 'BEF',
+ 'BEL' => 'BEL',
+ 'BGL' => 'BGL',
+ 'BGN' => 'BGN',
+ 'BGO' => 'BGO',
+ 'BHD' => 'BHD',
+ 'BIF' => 'BIF',
+ 'BMD' => 'BMD',
+ 'BND' => 'BND',
+ 'BOB' => 'BOB',
+ 'BOL' => 'BOL',
+ 'BOP' => 'BOP',
+ 'BOV' => 'BOV',
+ 'BRB' => 'BRB',
+ 'BRC' => 'BRC',
+ 'BRE' => 'BRE',
+ 'BRL' => 'R$',
+ 'BRN' => 'BRN',
+ 'BRR' => 'BRR',
+ 'BRZ' => 'BRZ',
+ 'BSD' => 'BSD',
+ 'BTN' => 'BTN',
+ 'BUK' => 'BUK',
+ 'BWP' => 'BWP',
+ 'BYB' => 'BYB',
+ 'BYR' => 'BYR',
+ 'BZD' => 'BZD',
+ 'CAD' => 'CA$',
+ 'CDF' => 'CDF',
+ 'CHE' => 'CHE',
+ 'CHF' => 'CHF',
+ 'CHW' => 'CHW',
+ 'CLE' => 'CLE',
+ 'CLF' => 'CLF',
+ 'CLP' => 'CLP',
+ 'CNY' => 'CN¥',
+ 'COP' => 'COP',
+ 'COU' => 'COU',
+ 'CRC' => 'CRC',
+ 'CSD' => 'CSD',
+ 'CSK' => 'Kčs',
+ 'CUC' => 'CUC',
+ 'CUP' => 'CUP',
+ 'CVE' => 'CVE',
+ 'CYP' => 'CYP',
+ 'CZK' => 'Kč',
+ 'DDM' => 'DDM',
+ 'DEM' => 'DEM',
+ 'DJF' => 'DJF',
+ 'DKK' => 'DKK',
+ 'DOP' => 'DOP',
+ 'DZD' => 'DZD',
+ 'ECS' => 'ECS',
+ 'ECV' => 'ECV',
+ 'EEK' => 'EEK',
+ 'EGP' => 'EGP',
+ 'ERN' => 'ERN',
+ 'ESA' => 'ESA',
+ 'ESB' => 'ESB',
+ 'ESP' => 'ESP',
+ 'ETB' => 'ETB',
+ 'EUR' => '€',
+ 'FIM' => 'FIM',
+ 'FJD' => 'FJD',
+ 'FKP' => 'FKP',
+ 'FRF' => 'FRF',
+ 'GBP' => '£',
+ 'GEK' => 'GEK',
+ 'GEL' => 'GEL',
+ 'GHC' => 'GHC',
+ 'GHS' => 'GHS',
+ 'GIP' => 'GIP',
+ 'GMD' => 'GMD',
+ 'GNF' => 'GNF',
+ 'GNS' => 'GNS',
+ 'GQE' => 'GQE',
+ 'GRD' => 'GRD',
+ 'GTQ' => 'GTQ',
+ 'GWE' => 'GWE',
+ 'GWP' => 'GWP',
+ 'GYD' => 'GYD',
+ 'HKD' => 'HK$',
+ 'HNL' => 'HNL',
+ 'HRD' => 'HRD',
+ 'HRK' => 'HRK',
+ 'HTG' => 'HTG',
+ 'HUF' => 'HUF',
+ 'IDR' => 'IDR',
+ 'IEP' => 'IEP',
+ 'ILP' => 'ILP',
+ 'ILR' => 'ILR',
+ 'ILS' => 'ILS',
+ 'INR' => 'INR',
+ 'IQD' => 'IQD',
+ 'IRR' => 'IRR',
+ 'ISJ' => 'ISJ',
+ 'ISK' => 'ISK',
+ 'ITL' => 'ITL',
+ 'JMD' => 'JMD',
+ 'JOD' => 'JOD',
+ 'JPY' => 'JP¥',
+ 'KES' => 'KES',
+ 'KGS' => 'KGS',
+ 'KHR' => 'KHR',
+ 'KMF' => 'KMF',
+ 'KPW' => 'KPW',
+ 'KRH' => 'KRH',
+ 'KRO' => 'KRO',
+ 'KRW' => '₩',
+ 'KWD' => 'KWD',
+ 'KYD' => 'KYD',
+ 'KZT' => 'KZT',
+ 'LAK' => 'LAK',
+ 'LBP' => 'LBP',
+ 'LKR' => 'LKR',
+ 'LRD' => 'LRD',
+ 'LSL' => 'LSL',
+ 'LTL' => 'LTL',
+ 'LTT' => 'LTT',
+ 'LUC' => 'LUC',
+ 'LUF' => 'LUF',
+ 'LUL' => 'LUL',
+ 'LVL' => 'LVL',
+ 'LVR' => 'LVR',
+ 'LYD' => 'LYD',
+ 'MAD' => 'MAD',
+ 'MAF' => 'MAF',
+ 'MCF' => 'MCF',
+ 'MDC' => 'MDC',
+ 'MDL' => 'MDL',
+ 'MGA' => 'MGA',
+ 'MGF' => 'MGF',
+ 'MKD' => 'MKD',
+ 'MKN' => 'MKN',
+ 'MLF' => 'MLF',
+ 'MMK' => 'MMK',
+ 'MNT' => 'MNT',
+ 'MOP' => 'MOP',
+ 'MRO' => 'MRO',
+ 'MTL' => 'MTL',
+ 'MTP' => 'MTP',
+ 'MUR' => 'MUR',
+ 'MVP' => 'MVP',
+ 'MVR' => 'MVR',
+ 'MWK' => 'MWK',
+ 'MXN' => 'MX$',
+ 'MXP' => 'MXP',
+ 'MXV' => 'MXV',
+ 'MYR' => 'MYR',
+ 'MZE' => 'MZE',
+ 'MZM' => 'MZM',
+ 'MZN' => 'MZN',
+ 'NAD' => 'NAD',
+ 'NGN' => 'NGN',
+ 'NIC' => 'NIC',
+ 'NIO' => 'NIO',
+ 'NLG' => 'NLG',
+ 'NOK' => 'NOK',
+ 'NPR' => 'NPR',
+ 'NZD' => 'NZ$',
+ 'OMR' => 'OMR',
+ 'PAB' => 'PAB',
+ 'PEI' => 'PEI',
+ 'PEN' => 'PEN',
+ 'PES' => 'PES',
+ 'PGK' => 'PGK',
+ 'PHP' => 'PHP',
+ 'PKR' => 'PKR',
+ 'PLN' => 'PLN',
+ 'PLZ' => 'PLZ',
+ 'PTE' => 'PTE',
+ 'PYG' => 'PYG',
+ 'QAR' => 'QAR',
+ 'RHD' => 'RHD',
+ 'ROL' => 'ROL',
+ 'RON' => 'RON',
+ 'RSD' => 'RSD',
+ 'RUB' => 'RUB',
+ 'RUR' => 'RUR',
+ 'RWF' => 'RWF',
+ 'SAR' => 'SAR',
+ 'SBD' => 'SBD',
+ 'SCR' => 'SCR',
+ 'SDD' => 'SDD',
+ 'SDG' => 'SDG',
+ 'SDP' => 'SDP',
+ 'SEK' => 'SEK',
+ 'SGD' => 'SGD',
+ 'SHP' => 'SHP',
+ 'SIT' => 'SIT',
+ 'SKK' => 'SKK',
+ 'SLL' => 'SLL',
+ 'SOS' => 'SOS',
+ 'SRD' => 'SRD',
+ 'SRG' => 'SRG',
+ 'SSP' => 'SSP',
+ 'STD' => 'STD',
+ 'SUR' => 'SUR',
+ 'SVC' => 'SVC',
+ 'SYP' => 'SYP',
+ 'SZL' => 'SZL',
+ 'THB' => 'THB',
+ 'TJR' => 'TJR',
+ 'TJS' => 'TJS',
+ 'TMM' => 'TMM',
+ 'TMT' => 'TMT',
+ 'TND' => 'TND',
+ 'TOP' => 'TOP',
+ 'TPE' => 'TPE',
+ 'TRL' => 'TRL',
+ 'TRY' => 'TRY',
+ 'TTD' => 'TTD',
+ 'TWD' => 'NT$',
+ 'TZS' => 'TZS',
+ 'UAH' => 'UAH',
+ 'UAK' => 'UAK',
+ 'UGS' => 'UGS',
+ 'UGX' => 'UGX',
+ 'USD' => 'US$',
+ 'USN' => 'USN',
+ 'USS' => 'USS',
+ 'UYI' => 'UYI',
+ 'UYP' => 'UYP',
+ 'UYU' => 'UYU',
+ 'UZS' => 'UZS',
+ 'VEB' => 'VEB',
+ 'VEF' => 'VEF',
+ 'VND' => 'VND',
+ 'VNN' => 'VNN',
+ 'VUV' => 'VUV',
+ 'WST' => 'WST',
+ 'XAF' => 'FCFA',
+ 'XAG' => 'XAG',
+ 'XAU' => 'XAU',
+ 'XBA' => 'XBA',
+ 'XBB' => 'EMU',
+ 'XBC' => 'XBC',
+ 'XBD' => 'XBD',
+ 'XCD' => 'EC$',
+ 'XDR' => 'XDR',
+ 'XEU' => 'ECU',
+ 'XFO' => 'XFO',
+ 'XFU' => 'XFU',
+ 'XOF' => 'CFA',
+ 'XPD' => 'XPD',
+ 'XPF' => 'CFPF',
+ 'XPT' => 'XPT',
+ 'XRE' => 'XRE',
+ 'XSU' => 'XSU',
+ 'XTS' => 'XTS',
+ 'XXX' => 'XXX',
+ 'YDD' => 'YDD',
+ 'YER' => 'YER',
+ 'YUD' => 'YUD',
+ 'YUM' => 'YUM',
+ 'YUN' => 'YUN',
+ 'YUR' => 'YUR',
+ 'ZAL' => 'ZAL',
+ 'ZAR' => 'ZAR',
+ 'ZMK' => 'ZMK',
+ 'ZMW' => 'ZMW',
+ 'ZRN' => 'ZRN',
+ 'ZRZ' => 'ZRZ',
+ 'ZWD' => 'ZWD',
+ 'ZWL' => 'ZWL',
+ 'ZWR' => 'ZWR',
+);
+
+$countryNames = array(
+ 'AC' => 'Ascension',
+ 'AD' => 'Andorra',
+ 'AE' => 'Spojené arabské emiráty',
+ 'AF' => 'Afghánistán',
+ 'AG' => 'Antigua a Barbuda',
+ 'AI' => 'Anguilla',
+ 'AL' => 'Albánie',
+ 'AM' => 'Arménie',
+ 'AN' => 'Nizozemské Antily',
+ 'AO' => 'Angola',
+ 'AQ' => 'Antarktida',
+ 'AR' => 'Argentina',
+ 'AS' => 'Americká Samoa',
+ 'AT' => 'Rakousko',
+ 'AU' => 'Austrálie',
+ 'AW' => 'Aruba',
+ 'AX' => 'Ålandy',
+ 'AZ' => 'Ázerbájdžán',
+ 'BA' => 'Bosna a Hercegovina',
+ 'BB' => 'Barbados',
+ 'BD' => 'Bangladéš',
+ 'BE' => 'Belgie',
+ 'BF' => 'Burkina Faso',
+ 'BG' => 'Bulharsko',
+ 'BH' => 'Bahrajn',
+ 'BI' => 'Burundi',
+ 'BJ' => 'Benin',
+ 'BL' => 'Svatý Bartoloměj',
+ 'BM' => 'Bermudy',
+ 'BN' => 'Brunej',
+ 'BO' => 'Bolívie',
+ 'BQ' => 'Karibské Nizozemsko',
+ 'BR' => 'Brazílie',
+ 'BS' => 'Bahamy',
+ 'BT' => 'Bhútán',
+ 'BV' => 'Bouvetův ostrov',
+ 'BW' => 'Botswana',
+ 'BY' => 'Bělorusko',
+ 'BZ' => 'Belize',
+ 'CA' => 'Kanada',
+ 'CC' => 'Kokosové ostrovy',
+ 'CD' => 'Kongo – Kinshasa',
+ 'CF' => 'Středoafrická republika',
+ 'CG' => 'Kongo – Brazzaville',
+ 'CH' => 'Švýcarsko',
+ 'CI' => 'Pobřeží slonoviny',
+ 'CK' => 'Cookovy ostrovy',
+ 'CL' => 'Chile',
+ 'CM' => 'Kamerun',
+ 'CN' => 'Čína',
+ 'CO' => 'Kolumbie',
+ 'CP' => 'Clippertonův ostrov',
+ 'CR' => 'Kostarika',
+ 'CU' => 'Kuba',
+ 'CV' => 'Kapverdy',
+ 'CW' => 'Curaçao',
+ 'CX' => 'Vánoční ostrov',
+ 'CY' => 'Kypr',
+ 'CZ' => 'Česká republika',
+ 'DE' => 'Německo',
+ 'DG' => 'Diego García',
+ 'DJ' => 'Džibutsko',
+ 'DK' => 'Dánsko',
+ 'DM' => 'Dominika',
+ 'DO' => 'Dominikánská republika',
+ 'DZ' => 'Alžírsko',
+ 'EA' => 'Ceuta a Melilla',
+ 'EC' => 'Ekvádor',
+ 'EE' => 'Estonsko',
+ 'EG' => 'Egypt',
+ 'EH' => 'Západní Sahara',
+ 'ER' => 'Eritrea',
+ 'ES' => 'Španělsko',
+ 'ET' => 'Etiopie',
+ 'EU' => 'Evropská unie',
+ 'FI' => 'Finsko',
+ 'FJ' => 'Fidži',
+ 'FK' => 'Falklandské ostrovy',
+ 'FM' => 'Mikronésie',
+ 'FO' => 'Faerské ostrovy',
+ 'FR' => 'Francie',
+ 'GA' => 'Gabon',
+ 'GB' => 'VB',
+ 'GD' => 'Grenada',
+ 'GE' => 'Gruzie',
+ 'GF' => 'Francouzská Guyana',
+ 'GG' => 'Guernsey',
+ 'GH' => 'Ghana',
+ 'GI' => 'Gibraltar',
+ 'GL' => 'Grónsko',
+ 'GM' => 'Gambie',
+ 'GN' => 'Guinea',
+ 'GP' => 'Guadeloupe',
+ 'GQ' => 'Rovníková Guinea',
+ 'GR' => 'Řecko',
+ 'GS' => 'Jižní Georgie a Jižní Sandwichovy ostrovy',
+ 'GT' => 'Guatemala',
+ 'GU' => 'Guam',
+ 'GW' => 'Guinea-Bissau',
+ 'GY' => 'Guyana',
+ 'HK' => 'Hongkong',
+ 'HM' => 'Heardův ostrov a McDonaldovy ostrovy',
+ 'HN' => 'Honduras',
+ 'HR' => 'Chorvatsko',
+ 'HT' => 'Haiti',
+ 'HU' => 'Maďarsko',
+ 'IC' => 'Kanárské ostrovy',
+ 'ID' => 'Indonésie',
+ 'IE' => 'Irsko',
+ 'IL' => 'Izrael',
+ 'IM' => 'Ostrov Man',
+ 'IN' => 'Indie',
+ 'IO' => 'Britské indickooceánské území',
+ 'IQ' => 'Irák',
+ 'IR' => 'Írán',
+ 'IS' => 'Island',
+ 'IT' => 'Itálie',
+ 'JE' => 'Jersey',
+ 'JM' => 'Jamajka',
+ 'JO' => 'Jordánsko',
+ 'JP' => 'Japonsko',
+ 'KE' => 'Keňa',
+ 'KG' => 'Kyrgyzstán',
+ 'KH' => 'Kambodža',
+ 'KI' => 'Kiribati',
+ 'KM' => 'Komory',
+ 'KN' => 'Svatý Kryštof a Nevis',
+ 'KP' => 'Severní Korea',
+ 'KR' => 'Jižní Korea',
+ 'KW' => 'Kuvajt',
+ 'KY' => 'Kajmanské ostrovy',
+ 'KZ' => 'Kazachstán',
+ 'LA' => 'Laos',
+ 'LB' => 'Libanon',
+ 'LC' => 'Svatá Lucie',
+ 'LI' => 'Lichtenštejnsko',
+ 'LK' => 'Srí Lanka',
+ 'LR' => 'Libérie',
+ 'LS' => 'Lesotho',
+ 'LT' => 'Litva',
+ 'LU' => 'Lucembursko',
+ 'LV' => 'Lotyšsko',
+ 'LY' => 'Libye',
+ 'MA' => 'Maroko',
+ 'MC' => 'Monako',
+ 'MD' => 'Moldavsko',
+ 'ME' => 'Černá Hora',
+ 'MF' => 'Svatý Martin (Francie)',
+ 'MG' => 'Madagaskar',
+ 'MH' => 'Marshallovy ostrovy',
+ 'MK' => 'Makedonie',
+ 'ML' => 'Mali',
+ 'MM' => 'Myanmar (Barma)',
+ 'MN' => 'Mongolsko',
+ 'MO' => 'Macao',
+ 'MP' => 'Severní Mariany',
+ 'MQ' => 'Martinik',
+ 'MR' => 'Mauritánie',
+ 'MS' => 'Montserrat',
+ 'MT' => 'Malta',
+ 'MU' => 'Mauricius',
+ 'MV' => 'Maledivy',
+ 'MW' => 'Malawi',
+ 'MX' => 'Mexiko',
+ 'MY' => 'Malajsie',
+ 'MZ' => 'Mosambik',
+ 'NA' => 'Namibie',
+ 'NC' => 'Nová Kaledonie',
+ 'NE' => 'Niger',
+ 'NF' => 'Norfolk',
+ 'NG' => 'Nigérie',
+ 'NI' => 'Nikaragua',
+ 'NL' => 'Nizozemsko',
+ 'NO' => 'Norsko',
+ 'NP' => 'Nepál',
+ 'NR' => 'Nauru',
+ 'NU' => 'Niue',
+ 'NZ' => 'Nový Zéland',
+ 'OM' => 'Omán',
+ 'PA' => 'Panama',
+ 'PE' => 'Peru',
+ 'PF' => 'Francouzská Polynésie',
+ 'PG' => 'Papua-Nová Guinea',
+ 'PH' => 'Filipíny',
+ 'PK' => 'Pákistán',
+ 'PL' => 'Polsko',
+ 'PM' => 'Saint-Pierre a Miquelon',
+ 'PN' => 'Pitcairnovy ostrovy',
+ 'PR' => 'Portoriko',
+ 'PS' => 'Palestina',
+ 'PT' => 'Portugalsko',
+ 'PW' => 'Palau',
+ 'PY' => 'Paraguay',
+ 'QA' => 'Katar',
+ 'QO' => 'Vnější Oceánie',
+ 'RE' => 'Réunion',
+ 'RO' => 'Rumunsko',
+ 'RS' => 'Srbsko',
+ 'RU' => 'Rusko',
+ 'RW' => 'Rwanda',
+ 'SA' => 'Saúdská Arábie',
+ 'SB' => 'Šalamounovy ostrovy',
+ 'SC' => 'Seychely',
+ 'SD' => 'Súdán',
+ 'SE' => 'Švédsko',
+ 'SG' => 'Singapur',
+ 'SH' => 'Svatá Helena',
+ 'SI' => 'Slovinsko',
+ 'SJ' => 'Špicberky a Jan Mayen',
+ 'SK' => 'Slovensko',
+ 'SL' => 'Sierra Leone',
+ 'SM' => 'San Marino',
+ 'SN' => 'Senegal',
+ 'SO' => 'Somálsko',
+ 'SR' => 'Surinam',
+ 'SS' => 'Jižní Súdán',
+ 'ST' => 'Svatý Tomáš a Princův ostrov',
+ 'SV' => 'Salvador',
+ 'SX' => 'Svatý Martin (Nizozemsko)',
+ 'SY' => 'Sýrie',
+ 'SZ' => 'Svazijsko',
+ 'TA' => 'Tristan da Cunha',
+ 'TC' => 'Turks a Caicos',
+ 'TD' => 'Čad',
+ 'TF' => 'Francouzská jižní území',
+ 'TG' => 'Togo',
+ 'TH' => 'Thajsko',
+ 'TJ' => 'Tádžikistán',
+ 'TK' => 'Tokelau',
+ 'TL' => 'Východní Timor',
+ 'TM' => 'Turkmenistán',
+ 'TN' => 'Tunisko',
+ 'TO' => 'Tonga',
+ 'TR' => 'Turecko',
+ 'TT' => 'Trinidad a Tobago',
+ 'TV' => 'Tuvalu',
+ 'TW' => 'Tchaj-wan',
+ 'TZ' => 'Tanzanie',
+ 'UA' => 'Ukrajina',
+ 'UG' => 'Uganda',
+ 'UM' => 'Menší odlehlé ostrovy USA',
+ 'US' => 'USA',
+ 'UY' => 'Uruguay',
+ 'UZ' => 'Uzbekistán',
+ 'VA' => 'Vatikán',
+ 'VC' => 'Svatý Vincenc a Grenadiny',
+ 'VE' => 'Venezuela',
+ 'VG' => 'Britské Panenské ostrovy',
+ 'VI' => 'Americké Panenské ostrovy',
+ 'VN' => 'Vietnam',
+ 'VU' => 'Vanuatu',
+ 'WF' => 'Wallis a Futuna',
+ 'WS' => 'Samoa',
+ 'XK' => 'Kosovo',
+ 'YE' => 'Jemen',
+ 'YT' => 'Mayotte',
+ 'ZA' => 'Jihoafrická republika',
+ 'ZM' => 'Zambie',
+ 'ZW' => 'Zimbabwe',
+);
+
+$timeUnits = array(
+ 'day-few' => '{0} dny',
+ 'day-future-few' => 'za {0} dny',
+ 'day-future-many' => 'za {0} dne',
+ 'day-future-one' => 'za {0} den',
+ 'day-future-other' => 'za {0} dní',
+ 'day-many' => '{0} dne',
+ 'day-narrow-future-few' => 'za {0} dny',
+ 'day-narrow-future-many' => 'za {0} dne',
+ 'day-narrow-future-one' => 'za {0} den',
+ 'day-narrow-future-other' => 'za {0} dní',
+ 'day-narrow-past-few' => 'před {0} dny',
+ 'day-narrow-past-many' => 'před {0} dnem',
+ 'day-narrow-past-one' => 'před {0} dnem',
+ 'day-narrow-past-other' => 'před {0} dny',
+ 'day-one' => '{0} den',
+ 'day-other' => '{0} dní',
+ 'day-past-few' => 'před {0} dny',
+ 'day-past-many' => 'před {0} dnem',
+ 'day-past-one' => 'před {0} dnem',
+ 'day-past-other' => 'před {0} dny',
+ 'day-short-future-few' => 'za {0} dny',
+ 'day-short-future-many' => 'za {0} dne',
+ 'day-short-future-one' => 'za {0} den',
+ 'day-short-future-other' => 'za {0} dní',
+ 'day-short-past-few' => 'před {0} dny',
+ 'day-short-past-many' => 'před {0} dnem',
+ 'day-short-past-one' => 'před {0} dnem',
+ 'day-short-past-other' => 'před {0} dny',
+ 'hour-few' => '{0} hodiny',
+ 'hour-future-few' => 'za {0} hodiny',
+ 'hour-future-many' => 'za {0} hodiny',
+ 'hour-future-one' => 'za {0} hodinu',
+ 'hour-future-other' => 'za {0} hodin',
+ 'hour-many' => '{0} hodiny',
+ 'hour-narrow-future-few' => 'za {0} h',
+ 'hour-narrow-future-many' => 'za {0} h',
+ 'hour-narrow-future-one' => 'za {0} h',
+ 'hour-narrow-future-other' => 'za {0} h',
+ 'hour-narrow-past-few' => 'před {0} h',
+ 'hour-narrow-past-many' => 'před {0} h',
+ 'hour-narrow-past-one' => 'před {0} h',
+ 'hour-narrow-past-other' => 'před {0} h',
+ 'hour-one' => '{0} hodina',
+ 'hour-other' => '{0} hodin',
+ 'hour-past-few' => 'před {0} hodinami',
+ 'hour-past-many' => 'před {0} hodinou',
+ 'hour-past-one' => 'před {0} hodinou',
+ 'hour-past-other' => 'před {0} hodinami',
+ 'hour-short-future-few' => 'za {0} h',
+ 'hour-short-future-many' => 'za {0} h',
+ 'hour-short-future-one' => 'za {0} h',
+ 'hour-short-future-other' => 'za {0} h',
+ 'hour-short-past-few' => 'před {0} h',
+ 'hour-short-past-many' => 'před {0} h',
+ 'hour-short-past-one' => 'před {0} h',
+ 'hour-short-past-other' => 'před {0} h',
+ 'microsecond-few' => '{0} mikrosekundy',
+ 'microsecond-many' => '{0} mikrosekundy',
+ 'microsecond-one' => '{0} mikrosekunda',
+ 'microsecond-other' => '{0} mikrosekund',
+ 'millisecond-few' => '{0} milisekundy',
+ 'millisecond-many' => '{0} milisekundy',
+ 'millisecond-one' => '{0} milisekunda',
+ 'millisecond-other' => '{0} milisekund',
+ 'minute-few' => '{0} minuty',
+ 'minute-future-few' => 'za {0} minuty',
+ 'minute-future-many' => 'za {0} minuty',
+ 'minute-future-one' => 'za {0} minutu',
+ 'minute-future-other' => 'za {0} minut',
+ 'minute-many' => '{0} minuty',
+ 'minute-narrow-future-few' => 'za {0} min',
+ 'minute-narrow-future-many' => 'za {0} min',
+ 'minute-narrow-future-one' => 'za {0} min',
+ 'minute-narrow-future-other' => 'za {0} min',
+ 'minute-narrow-past-few' => 'před {0} min',
+ 'minute-narrow-past-many' => 'před {0} min',
+ 'minute-narrow-past-one' => 'před {0} min',
+ 'minute-narrow-past-other' => 'před {0} min',
+ 'minute-one' => '{0} minuta',
+ 'minute-other' => '{0} minut',
+ 'minute-past-few' => 'před {0} minutami',
+ 'minute-past-many' => 'před {0} minutou',
+ 'minute-past-one' => 'před {0} minutou',
+ 'minute-past-other' => 'před {0} minutami',
+ 'minute-short-future-few' => 'za {0} min',
+ 'minute-short-future-many' => 'za {0} min',
+ 'minute-short-future-one' => 'za {0} min',
+ 'minute-short-future-other' => 'za {0} min',
+ 'minute-short-past-few' => 'před {0} min',
+ 'minute-short-past-many' => 'před {0} min',
+ 'minute-short-past-one' => 'před {0} min',
+ 'minute-short-past-other' => 'před {0} min',
+ 'month-few' => '{0} měsíce',
+ 'month-future-few' => 'za {0} měsíce',
+ 'month-future-many' => 'za {0} měsíce',
+ 'month-future-one' => 'za {0} měsíc',
+ 'month-future-other' => 'za {0} měsíců',
+ 'month-many' => '{0} měsíce',
+ 'month-narrow-future-few' => 'za {0} měs.',
+ 'month-narrow-future-many' => 'za {0} měs.',
+ 'month-narrow-future-one' => 'za {0} měs.',
+ 'month-narrow-future-other' => 'za {0} měs.',
+ 'month-narrow-past-few' => 'před {0} měs.',
+ 'month-narrow-past-many' => 'před {0} měs.',
+ 'month-narrow-past-one' => 'před {0} měs.',
+ 'month-narrow-past-other' => 'před {0} měs.',
+ 'month-one' => '{0} měsíc',
+ 'month-other' => '{0} měsíců',
+ 'month-past-few' => 'před {0} měsíci',
+ 'month-past-many' => 'před {0} měsícem',
+ 'month-past-one' => 'před {0} měsícem',
+ 'month-past-other' => 'před {0} měsíci',
+ 'month-short-future-few' => 'za {0} měs.',
+ 'month-short-future-many' => 'za {0} měs.',
+ 'month-short-future-one' => 'za {0} měs.',
+ 'month-short-future-other' => 'za {0} měs.',
+ 'month-short-past-few' => 'před {0} měs.',
+ 'month-short-past-many' => 'před {0} měs.',
+ 'month-short-past-one' => 'před {0} měs.',
+ 'month-short-past-other' => 'před {0} měs.',
+ 'nanosecond-few' => '{0} nanosekundy',
+ 'nanosecond-many' => '{0} nanosekundy',
+ 'nanosecond-one' => '{0} nanosekunda',
+ 'nanosecond-other' => '{0} nanosekund',
+ 'quarter-future-few' => 'za {0} čtvrtletí',
+ 'quarter-future-many' => 'za {0} čtvrtletí',
+ 'quarter-future-one' => 'za {0} čtvrtletí',
+ 'quarter-future-other' => 'za {0} čtvrtletí',
+ 'quarter-narrow-future-few' => '+{0} Q',
+ 'quarter-narrow-future-many' => '+{0} Q',
+ 'quarter-narrow-future-one' => '+{0} Q',
+ 'quarter-narrow-future-other' => '+{0} Q',
+ 'quarter-narrow-past-few' => '-{0} Q',
+ 'quarter-narrow-past-many' => '-{0} Q',
+ 'quarter-narrow-past-one' => '-{0} Q',
+ 'quarter-narrow-past-other' => '-{0} Q',
+ 'quarter-past-few' => 'před {0} čtvrtletími',
+ 'quarter-past-many' => 'před {0} čtvrtletím',
+ 'quarter-past-one' => 'před {0} čtvrtletím',
+ 'quarter-past-other' => 'před {0} čtvrtletími',
+ 'quarter-short-future-few' => '+{0} Q',
+ 'quarter-short-future-many' => '+{0} Q',
+ 'quarter-short-future-one' => '+{0} Q',
+ 'quarter-short-future-other' => '+{0} Q',
+ 'quarter-short-past-few' => '-{0} Q',
+ 'quarter-short-past-many' => '-{0} Q',
+ 'quarter-short-past-one' => '-{0} Q',
+ 'quarter-short-past-other' => '-{0} Q',
+ 'second-few' => '{0} sekundy',
+ 'second-future-few' => 'za {0} sekundy',
+ 'second-future-many' => 'za {0} sekundy',
+ 'second-future-one' => 'za {0} sekundu',
+ 'second-future-other' => 'za {0} sekund',
+ 'second-many' => '{0} sekundy',
+ 'second-narrow-future-few' => 'za {0} s',
+ 'second-narrow-future-many' => 'za {0} s',
+ 'second-narrow-future-one' => 'za {0} s',
+ 'second-narrow-future-other' => 'za {0} s',
+ 'second-narrow-past-few' => 'před {0} s',
+ 'second-narrow-past-many' => 'před {0} s',
+ 'second-narrow-past-one' => 'před {0} s',
+ 'second-narrow-past-other' => 'před {0} s',
+ 'second-one' => '{0} sekunda',
+ 'second-other' => '{0} sekund',
+ 'second-past-few' => 'před {0} sekundami',
+ 'second-past-many' => 'před {0} sekundou',
+ 'second-past-one' => 'před {0} sekundou',
+ 'second-past-other' => 'před {0} sekundami',
+ 'second-short-future-few' => 'za {0} s',
+ 'second-short-future-many' => 'za {0} s',
+ 'second-short-future-one' => 'za {0} s',
+ 'second-short-future-other' => 'za {0} s',
+ 'second-short-past-few' => 'před {0} s',
+ 'second-short-past-many' => 'před {0} s',
+ 'second-short-past-one' => 'před {0} s',
+ 'second-short-past-other' => 'před {0} s',
+ 'week-few' => '{0} týdny',
+ 'week-future-few' => 'za {0} týdny',
+ 'week-future-many' => 'za {0} týdne',
+ 'week-future-one' => 'za {0} týden',
+ 'week-future-other' => 'za {0} týdnů',
+ 'week-many' => '{0} týdne',
+ 'week-narrow-future-few' => 'za {0} týd.',
+ 'week-narrow-future-many' => 'za {0} týd.',
+ 'week-narrow-future-one' => 'za {0} týd.',
+ 'week-narrow-future-other' => 'za {0} týd.',
+ 'week-narrow-past-few' => 'před {0} týd.',
+ 'week-narrow-past-many' => 'před {0} týd.',
+ 'week-narrow-past-one' => 'před {0} týd.',
+ 'week-narrow-past-other' => 'před {0} týd.',
+ 'week-one' => '{0} týden',
+ 'week-other' => '{0} týdnů',
+ 'week-past-few' => 'před {0} týdny',
+ 'week-past-many' => 'před {0} týdnem',
+ 'week-past-one' => 'před {0} týdnem',
+ 'week-past-other' => 'před {0} týdny',
+ 'week-short-future-few' => 'za {0} týd.',
+ 'week-short-future-many' => 'za {0} týd.',
+ 'week-short-future-one' => 'za {0} týd.',
+ 'week-short-future-other' => 'za {0} týd.',
+ 'week-short-past-few' => 'před {0} týd.',
+ 'week-short-past-many' => 'před {0} týd.',
+ 'week-short-past-one' => 'před {0} týd.',
+ 'week-short-past-other' => 'před {0} týd.',
+ 'year-few' => '{0} roky',
+ 'year-future-few' => 'za {0} roky',
+ 'year-future-many' => 'za {0} roku',
+ 'year-future-one' => 'za {0} rok',
+ 'year-future-other' => 'za {0} let',
+ 'year-many' => '{0} roku',
+ 'year-narrow-future-few' => 'za {0} r.',
+ 'year-narrow-future-many' => 'za {0} r.',
+ 'year-narrow-future-one' => 'za {0} r.',
+ 'year-narrow-future-other' => 'za {0} l.',
+ 'year-narrow-past-few' => 'před {0} r.',
+ 'year-narrow-past-many' => 'před {0} r.',
+ 'year-narrow-past-one' => 'před {0} r.',
+ 'year-narrow-past-other' => 'před {0} l.',
+ 'year-one' => '{0} rok',
+ 'year-other' => '{0} let',
+ 'year-past-few' => 'před {0} lety',
+ 'year-past-many' => 'před {0} rokem',
+ 'year-past-one' => 'před {0} rokem',
+ 'year-past-other' => 'před {0} lety',
+ 'year-short-future-few' => 'za {0} r.',
+ 'year-short-future-many' => 'za {0} r.',
+ 'year-short-future-one' => 'za {0} r.',
+ 'year-short-future-other' => 'za {0} l.',
+ 'year-short-past-few' => 'před {0} r.',
+ 'year-short-past-many' => 'před {0} r.',
+ 'year-short-past-one' => 'před {0} r.',
+ 'year-short-past-other' => 'před {0} l.',
+);
diff --git a/MLEB/cldr/CldrNames/CldrNamesCy.php b/MLEB/cldr/CldrNames/CldrNamesCy.php
new file mode 100644
index 00000000..a92b17f5
--- /dev/null
+++ b/MLEB/cldr/CldrNames/CldrNamesCy.php
@@ -0,0 +1,1021 @@
+<?php
+
+$languageNames = array(
+ 'aa' => 'Affareg',
+ 'ab' => 'Abchaseg',
+ 'ace' => 'Acehneg',
+ 'ach' => 'Acoli',
+ 'ada' => 'Adangmeg',
+ 'ady' => 'Circaseg Gorllewinol',
+ 'ae' => 'Afestaneg',
+ 'aeb' => 'Arabeg Tunisia',
+ 'af' => 'Affricâneg',
+ 'afh' => 'Affrihili',
+ 'agq' => 'Aghemeg',
+ 'ain' => 'Ainŵeg',
+ 'ak' => 'Acaneg',
+ 'akk' => 'Acadeg',
+ 'akz' => 'Alabamäeg',
+ 'ale' => 'Alewteg',
+ 'aln' => 'Ghegeg Albania',
+ 'alt' => 'Altäeg Deheuol',
+ 'am' => 'Amhareg',
+ 'an' => 'Aragoneg',
+ 'ang' => 'Hen Saesneg',
+ 'ar' => 'Arabeg',
+ 'ar-001' => 'Arabeg Modern Safonol',
+ 'arc' => 'Aramaeg',
+ 'arn' => 'Arawcaneg',
+ 'aro' => 'Araonaeg',
+ 'arp' => 'Arapaho',
+ 'arq' => 'Arabeg Algeria',
+ 'arw' => 'Arawaceg',
+ 'ary' => 'Arabeg Moroco',
+ 'arz' => 'Arabeg yr Aifft',
+ 'as' => 'Asameg',
+ 'ase' => 'Iaith Arwyddion America',
+ 'av' => 'Afareg',
+ 'az' => 'Aserbaijaneg',
+ 'azb' => 'Aserbaijaneg Deheuol',
+ 'ba' => 'Bashcorteg',
+ 'bal' => 'Balwtsi',
+ 'ban' => 'Balïeg',
+ 'bas' => 'Basâeg',
+ 'bax' => 'Bamwmeg',
+ 'be' => 'Belarwseg',
+ 'bej' => 'Bejäeg',
+ 'bem' => 'Bembeg',
+ 'bez' => 'Bena',
+ 'bg' => 'Bwlgareg',
+ 'bi' => 'Bislama',
+ 'bkm' => 'Comeg',
+ 'bm' => 'Bambareg',
+ 'bn' => 'Bengaleg',
+ 'bo' => 'Tibeteg',
+ 'br' => 'Llydaweg',
+ 'brh' => 'Brahui',
+ 'bs' => 'Bosnieg',
+ 'bua' => 'Bwriateg',
+ 'bum' => 'Bwlw',
+ 'ca' => 'Catalaneg',
+ 'cad' => 'Cado',
+ 'car' => 'Caribeg',
+ 'cch' => 'Atsameg',
+ 'ce' => 'Tsietsieneg',
+ 'ch' => 'Tsiamorro',
+ 'chm' => 'Marieg',
+ 'cho' => 'Siocto',
+ 'chr' => 'Tsierocî',
+ 'chy' => 'Cheyenne',
+ 'ckb' => 'Cwrdeg Sorani',
+ 'co' => 'Corseg',
+ 'cop' => 'Copteg',
+ 'cr' => 'Cri',
+ 'crh' => 'Tyrceg y Crimea',
+ 'cs' => 'Tsieceg',
+ 'cu' => 'Hen Slafoneg',
+ 'cy' => 'Cymraeg',
+ 'da' => 'Daneg',
+ 'dak' => 'Dacotaeg',
+ 'dar' => 'Dargwa',
+ 'de' => 'Almaeneg',
+ 'de-at' => 'Almaeneg Awstria',
+ 'de-ch' => 'Almaeneg Safonol y Swistir',
+ 'din' => 'Dinca',
+ 'dje' => 'Zarmaeg',
+ 'doi' => 'Dogri',
+ 'dsb' => 'Sorbeg Isaf',
+ 'dum' => 'Iseldireg Canol',
+ 'dv' => 'Difehi',
+ 'ebu' => 'Embw',
+ 'ee' => 'Ewe',
+ 'egy' => 'Hen Eiffteg',
+ 'el' => 'Groeg',
+ 'elx' => 'Elameg',
+ 'en' => 'Saesneg',
+ 'en-au' => 'Saesneg Awstralia',
+ 'en-ca' => 'Saesneg Canada',
+ 'en-gb' => 'Saesneg Prydain',
+ 'en-us' => 'Saesneg America',
+ 'enm' => 'Saesneg Canol',
+ 'eo' => 'Esperanto',
+ 'es' => 'Sbaeneg',
+ 'es-419' => 'Sbaeneg America Ladin',
+ 'es-es' => 'Sbaeneg Ewrop',
+ 'es-mx' => 'Sbaeneg Mecsico',
+ 'et' => 'Estoneg',
+ 'eu' => 'Basgeg',
+ 'ewo' => 'Ewondo',
+ 'ext' => 'Extremadureg',
+ 'fa' => 'Perseg',
+ 'fat' => 'Ffanti',
+ 'ff' => 'Ffwla',
+ 'fi' => 'Ffinneg',
+ 'fil' => 'Ffilipineg',
+ 'fit' => 'Ffinneg Tornedal',
+ 'fj' => 'Ffijïeg',
+ 'fo' => 'Ffaröeg',
+ 'fr' => 'Ffrangeg',
+ 'fr-ca' => 'Ffrangeg Canada',
+ 'fr-ch' => 'Ffrangeg y Swistir',
+ 'frc' => 'Ffrangeg Cajwn',
+ 'frm' => 'Ffrangeg Canol',
+ 'fro' => 'Hen Ffrangeg',
+ 'frr' => 'Ffriseg y Gogledd',
+ 'frs' => 'Ffriseg y Dwyrain',
+ 'fur' => 'Ffriwleg',
+ 'fy' => 'Ffriseg y Gorllewin',
+ 'ga' => 'Gwyddeleg',
+ 'gay' => 'Gaio',
+ 'gba' => 'Gbaia',
+ 'gbz' => 'Dareg y Zoroastriaid',
+ 'gd' => 'Gaeleg yr Alban',
+ 'gil' => 'Gilberteg',
+ 'gl' => 'Galisieg',
+ 'gmh' => 'Uchel Almaeneg Canol',
+ 'gn' => 'Guaraní',
+ 'goh' => 'Hen Uchel Almaeneg',
+ 'got' => 'Gotheg',
+ 'grc' => 'Hen Roeg',
+ 'gsw' => 'Almaeneg y Swistir',
+ 'gu' => 'Gwjarati',
+ 'gv' => 'Manaweg',
+ 'ha' => 'Hawsa',
+ 'hai' => 'Haida',
+ 'haw' => 'Hawäieg',
+ 'he' => 'Hebraeg',
+ 'hi' => 'Hindi',
+ 'hit' => 'Hetheg',
+ 'hmn' => 'Hmongeg',
+ 'hr' => 'Croateg',
+ 'hsb' => 'Sorbeg Uchaf',
+ 'ht' => 'Creol Haiti',
+ 'hu' => 'Hwngareg',
+ 'hy' => 'Armeneg',
+ 'hz' => 'Herero',
+ 'ia' => 'Interlingua',
+ 'iba' => 'Ibaneg',
+ 'ibb' => 'Ibibio',
+ 'id' => 'Indoneseg',
+ 'ie' => 'Interlingue',
+ 'ig' => 'Igbo',
+ 'ii' => 'Nwosw',
+ 'ik' => 'Inwpiaceg',
+ 'ilo' => 'Ilocaneg',
+ 'inh' => 'Ingwsieg',
+ 'is' => 'Islandeg',
+ 'it' => 'Eidaleg',
+ 'iu' => 'Inwctitwt',
+ 'ja' => 'Japaneeg',
+ 'jmc' => 'Matsiame',
+ 'jpr' => 'Iddew-Bersieg',
+ 'jrb' => 'Iddew-Arabeg',
+ 'jv' => 'Jafanaeg',
+ 'ka' => 'Georgeg',
+ 'kaa' => 'Cara-Calpaceg',
+ 'kab' => 'Cabileg',
+ 'kam' => 'Camba',
+ 'kbd' => 'Circaseg Dwyreiniol',
+ 'kde' => 'Macondeg',
+ 'kea' => 'Caboferdianeg',
+ 'kg' => 'Congo',
+ 'kha' => 'Càseg',
+ 'ki' => 'ki',
+ 'kk' => 'Casacheg',
+ 'km' => 'Chmereg',
+ 'kn' => 'Kannada',
+ 'ko' => 'Coreeg',
+ 'kok' => 'Concani',
+ 'kr' => 'Canwri',
+ 'krl' => 'Careleg',
+ 'ks' => 'Cashmireg',
+ 'ksf' => 'Baffia',
+ 'ksh' => 'Cwleneg',
+ 'ku' => 'Cwrdeg',
+ 'kum' => 'Cwmiceg',
+ 'kv' => 'Comi',
+ 'kw' => 'Cernyweg',
+ 'ky' => 'Cirgiseg',
+ 'la' => 'Lladin',
+ 'lad' => 'Iddew-Sbaeneg',
+ 'lag' => 'Langi',
+ 'lah' => 'Lahnda',
+ 'lam' => 'Lamba',
+ 'lb' => 'Lwcsembwrgeg',
+ 'lez' => 'Lezgheg',
+ 'lg' => 'Ganda',
+ 'li' => 'Limbwrgeg',
+ 'lmo' => 'Lombardeg',
+ 'ln' => 'Lingala',
+ 'lo' => 'Laoeg',
+ 'lol' => 'Mongo',
+ 'loz' => 'Lozi',
+ 'lt' => 'Lithwaneg',
+ 'ltg' => 'Latgalieg',
+ 'lun' => 'Lwnda',
+ 'luo' => 'Lŵo',
+ 'lus' => 'Lwshaieg',
+ 'luy' => 'Lwyia',
+ 'lv' => 'Latfieg',
+ 'mad' => 'Madwreg',
+ 'mag' => 'Magahi',
+ 'mai' => 'Maithili',
+ 'mak' => 'Macasareg',
+ 'man' => 'Mandingo',
+ 'mas' => 'Masai',
+ 'mdf' => 'Mocsia',
+ 'mdr' => 'Mandareg',
+ 'men' => 'Mendeg',
+ 'mer' => 'Mêrw',
+ 'mg' => 'Malagaseg',
+ 'mga' => 'Gwyddeleg Canol',
+ 'mh' => 'Marsialeg',
+ 'mi' => 'Maori',
+ 'mic' => 'Micmaceg',
+ 'mk' => 'Macedoneg',
+ 'ml' => 'Malayalam',
+ 'mn' => 'Mongoleg',
+ 'mnc' => 'Manshw',
+ 'mni' => 'Manipwri',
+ 'moh' => 'Mohoceg',
+ 'mos' => 'Mosi',
+ 'mr' => 'Marathi',
+ 'ms' => 'Maleieg',
+ 'mt' => 'Malteg',
+ 'mua' => 'Mas',
+ 'mul' => 'mwy nag un iaith',
+ 'mwl' => 'Mirandeg',
+ 'mwr' => 'Marwari',
+ 'my' => 'Byrmaneg',
+ 'na' => 'Nawrŵeg',
+ 'nap' => 'Naplieg',
+ 'nb' => 'Norwyeg Bokmål',
+ 'nd' => 'Ndebele Gogleddol',
+ 'nds' => 'Isel Almaeneg',
+ 'ne' => 'Nepaleg',
+ 'new' => 'Newaeg',
+ 'ng' => 'Ndonga',
+ 'nl' => 'Iseldireg',
+ 'nl-be' => 'Fflemeg',
+ 'nn' => 'Norwyeg Nynorsk',
+ 'no' => 'Norwyeg',
+ 'non' => 'Hen Norseg',
+ 'nr' => 'Ndebele Deheuol',
+ 'nso' => 'Sotho Gogleddol',
+ 'nus' => 'Nŵereg',
+ 'nv' => 'Nafaho',
+ 'nwc' => 'Hen Newari',
+ 'ny' => 'Nianja',
+ 'nym' => 'Niamwezi',
+ 'nyn' => 'Niancole',
+ 'nyo' => 'Nioro',
+ 'nzi' => 'Nzimeg',
+ 'oc' => 'Ocsitaneg',
+ 'oj' => 'Ojibwa',
+ 'om' => 'Oromo',
+ 'or' => 'Oriya',
+ 'os' => 'Oseteg',
+ 'osa' => 'Osageg',
+ 'ota' => 'Tyrceg Otoman',
+ 'pa' => 'Pwnjabeg',
+ 'pag' => 'Pangasineg',
+ 'pal' => 'Pahlafi',
+ 'pam' => 'Pampanga',
+ 'pcd' => 'Picardeg',
+ 'pdc' => 'Almaeneg Pensylfania',
+ 'peo' => 'Hen Bersieg',
+ 'pfl' => 'Almaeneg Palatin',
+ 'phn' => 'Phoeniceg',
+ 'pi' => 'Pali',
+ 'pl' => 'Pwyleg',
+ 'pms' => 'Piedmonteg',
+ 'pon' => 'Pohnpeianeg',
+ 'prg' => 'Prwseg',
+ 'pro' => 'Hen Brofensaleg',
+ 'ps' => 'Pashto',
+ 'pt' => 'Portiwgeeg',
+ 'pt-br' => 'Portiwgeeg Brasil',
+ 'pt-pt' => 'Portiwgeeg Ewrop',
+ 'qu' => 'Quechua',
+ 'quc' => 'K’iche’',
+ 'raj' => 'Rajasthaneg',
+ 'rap' => 'Rapanŵi',
+ 'rar' => 'Raratongeg',
+ 'rm' => 'Romaunsch',
+ 'rn' => 'Rwndi',
+ 'ro' => 'Rwmaneg',
+ 'ro-md' => 'Moldofeg',
+ 'rof' => 'Rombo',
+ 'rom' => 'Romani',
+ 'rtm' => 'Rotumaneg',
+ 'ru' => 'Rwseg',
+ 'rup' => 'Aromaneg',
+ 'rw' => 'Ciniarŵandeg',
+ 'rwk' => 'Rwa',
+ 'sa' => 'Sansgrit',
+ 'sad' => 'Sandäweg',
+ 'sah' => 'Iacwteg',
+ 'sam' => 'Aramaeg Samaria',
+ 'saq' => 'Sambŵrw',
+ 'sas' => 'Sasaceg',
+ 'sat' => 'Santali',
+ 'sba' => 'Ngambeieg',
+ 'sbp' => 'Sangw',
+ 'sc' => 'Sardeg',
+ 'scn' => 'Sisileg',
+ 'sco' => 'Sgoteg',
+ 'sd' => 'Sindhi',
+ 'sdc' => 'Sasareseg Sardinia',
+ 'se' => 'Sami Gogleddol',
+ 'see' => 'Seneca',
+ 'sel' => 'Selcypeg',
+ 'sg' => 'Sango',
+ 'sga' => 'Hen Wyddeleg',
+ 'sh' => 'Serbo-Croateg',
+ 'shu' => 'Arabeg Chad',
+ 'si' => 'Sinhaleg',
+ 'sid' => 'Sidamo',
+ 'sk' => 'Slofaceg',
+ 'sl' => 'Slofeneg',
+ 'sli' => 'Is-silesieg',
+ 'sm' => 'Samöeg',
+ 'sma' => 'Sami Deheuol',
+ 'smj' => 'Sami Lwle',
+ 'smn' => 'Sami Inari',
+ 'sms' => 'Sami Scolt',
+ 'snk' => 'Soninceg',
+ 'so' => 'Somaleg',
+ 'sog' => 'Sogdeg',
+ 'sq' => 'Albaneg',
+ 'sr' => 'Serbeg',
+ 'st' => 'Sesotheg',
+ 'su' => 'Swndaneg',
+ 'suk' => 'Swcwma',
+ 'sus' => 'Swsŵeg',
+ 'sux' => 'Swmereg',
+ 'sv' => 'Swedeg',
+ 'sw' => 'Swahili',
+ 'swb' => 'Comoreg',
+ 'swc' => 'Swahili’r Congo',
+ 'syc' => 'Hen Syrieg',
+ 'syr' => 'Syrieg',
+ 'szl' => 'Silesieg',
+ 'ta' => 'Tamileg',
+ 'tcy' => 'Tulu',
+ 'te' => 'Telugu',
+ 'tem' => 'Timneg',
+ 'tet' => 'Tetumeg',
+ 'tg' => 'Tajiceg',
+ 'th' => 'Thai',
+ 'ti' => 'Tigrinya',
+ 'tk' => 'Twrcmeneg',
+ 'tl' => 'Tagalog',
+ 'tlh' => 'Klingon',
+ 'tmh' => 'Tamasheceg',
+ 'tn' => 'Tswana',
+ 'to' => 'Tongeg',
+ 'tr' => 'Tyrceg',
+ 'ts' => 'Tsongaeg',
+ 'tt' => 'Tatareg',
+ 'tvl' => 'Twfalweg',
+ 'tw' => 'Twi',
+ 'ty' => 'Tahitïeg',
+ 'udm' => 'Fotiaceg',
+ 'ug' => 'Uighur',
+ 'uga' => 'Wgariteg',
+ 'uk' => 'Wcreineg',
+ 'umb' => 'Umbundu',
+ 'und' => 'Iaith Anhysbys',
+ 'ur' => 'Wrdw',
+ 'uz' => 'Wsbeceg',
+ 'vai' => 'Faieg',
+ 've' => 'Fendeg',
+ 'vec' => 'Feniseg',
+ 'vi' => 'Fietnameg',
+ 'vls' => 'Fflemeg Gorllewinol',
+ 'wa' => 'Walwneg',
+ 'wal' => 'Walamo',
+ 'wo' => 'Woloff',
+ 'xal' => 'Calmyceg',
+ 'xh' => 'Xhosa',
+ 'ybb' => 'Iembaeg',
+ 'yi' => 'Iddew-Almaeneg',
+ 'yo' => 'Iorwba',
+ 'yue' => 'Cantoneeg',
+ 'zap' => 'Zapoteceg',
+ 'zbl' => 'Blisssymbols',
+ 'zea' => 'Zêlandeg',
+ 'zgh' => 'Tamazight Safonol Moroco',
+ 'zh' => 'Tsieineeg',
+ 'zh-hans' => 'Tsieineeg Symledig',
+ 'zh-hant' => 'Tsieineeg Traddodiadol',
+ 'zu' => 'Swlw',
+ 'zun' => 'Zuni',
+ 'zxx' => 'Dim cynnwys ieithyddol',
+ 'zza' => 'Zazäeg',
+);
+
+$currencyNames = array(
+ 'AED' => 'Dirham Yr Emiradau Arabaidd Unedig',
+ 'AFN' => 'Afghani Afghanistan',
+ 'ALL' => 'Lek Albania',
+ 'AMD' => 'Dram Armenia',
+ 'ANG' => 'Guilder Antilles yr Iseldiroedd',
+ 'AOA' => 'Kwanza Angola',
+ 'ARS' => 'Peso yr Ariannin',
+ 'AUD' => 'Doler Awstralia',
+ 'AWG' => 'Fflorin Aruba',
+ 'AZN' => 'Manat Azerbaijan',
+ 'BAM' => 'Marc Trosadwy Bosnia a Hercegovina',
+ 'BBD' => 'Doler Barbados',
+ 'BDT' => 'Taka Bangladesh',
+ 'BGN' => 'Lev Bwlgaria',
+ 'BHD' => 'Dinar Bahrain',
+ 'BIF' => 'Ffranc Burundi',
+ 'BMD' => 'Doler Bermuda',
+ 'BND' => 'Doler Brunei',
+ 'BOB' => 'Boliviano Bolifia',
+ 'BRL' => 'Real Brasil',
+ 'BSD' => 'Doler y Bahamas',
+ 'BTN' => 'Ngultrum Bhutan',
+ 'BWP' => 'Pula Botswana',
+ 'BYR' => 'Rwbl Belarws',
+ 'BZD' => 'Doler Belize',
+ 'CAD' => 'Doler Canada',
+ 'CDF' => 'Ffranc Congo',
+ 'CHF' => 'Ffranc y Swistir',
+ 'CLP' => 'Peso Chile',
+ 'CNY' => 'Yuan Tsieina',
+ 'COP' => 'Peso Colombia',
+ 'CRC' => 'Colón Costa Rica',
+ 'CUC' => 'Peso Trosadwy Cuba',
+ 'CUP' => 'Peso Cuba',
+ 'CVE' => 'Esgwdo Cabo Verde',
+ 'CZK' => 'Koruna Tsiec',
+ 'DJF' => 'Ffranc Djibouti',
+ 'DKK' => 'Krone Denmarc',
+ 'DOP' => 'Peso Gweriniaeth Dominica',
+ 'DZD' => 'Dinar Algeria',
+ 'EGP' => 'Punt Yr Aifft',
+ 'ERN' => 'Nakfa Eritrea',
+ 'ETB' => 'Birr Ethiopia',
+ 'EUR' => 'Ewro',
+ 'FJD' => 'Doler Ffiji',
+ 'FKP' => 'Punt Ynysoedd Falkland/Malvinas',
+ 'GBP' => 'Punt Sterling Prydain',
+ 'GEL' => 'Lari Georgia',
+ 'GHS' => 'Cedi Ghana',
+ 'GIP' => 'Punt Gibraltar',
+ 'GMD' => 'Dalasi Gambia',
+ 'GNF' => 'Ffranc Guinée',
+ 'GTQ' => 'Quetzal Guatemala',
+ 'GYD' => 'Doler Guyana',
+ 'HKD' => 'Doler Hong Kong',
+ 'HNL' => 'Lempira Honduras',
+ 'HRK' => 'Kuna Croatia',
+ 'HTG' => 'Gourde Haiti',
+ 'HUF' => 'Fforint Hwngari',
+ 'IDR' => 'Rupiah Indonesia',
+ 'IEP' => 'Punt Iwerddon',
+ 'ILS' => 'Shegel Newydd Israel',
+ 'INR' => 'Rwpî India',
+ 'IQD' => 'Dinar Irac',
+ 'IRR' => 'Rial Iran',
+ 'ISK' => 'Króna Gwlad yr Iâ',
+ 'JMD' => 'Doler Jamaica',
+ 'JOD' => 'Dinar Gwlad yr Iorddonen',
+ 'JPY' => 'Yen Japan',
+ 'KES' => 'Swllt Kenya',
+ 'KGS' => 'Som Kyrgyzstan',
+ 'KHR' => 'Riel Cambodia',
+ 'KMF' => 'Ffranc Comoros',
+ 'KPW' => 'Won Gogledd Corea',
+ 'KRW' => 'Won De Korea',
+ 'KWD' => 'Dinar Kuwait',
+ 'KYD' => 'Doler Ynysoedd Cayman',
+ 'KZT' => 'Tenge Kazakstan',
+ 'LAK' => 'Kip Laos',
+ 'LBP' => 'Punt Libanus',
+ 'LKR' => 'Rwpî Sri Lanka',
+ 'LRD' => 'Doler Liberia',
+ 'LTL' => 'Litas Lithwania',
+ 'LVL' => 'Lats Latfia',
+ 'LYD' => 'Dinar Libya',
+ 'MAD' => 'Dirham Moroco',
+ 'MDL' => 'Leu Moldofa',
+ 'MGA' => 'Ariary Madagascar',
+ 'MKD' => 'Denar Macedonia',
+ 'MMK' => 'Kyat Myanmar',
+ 'MNT' => 'Tugrik Mongolia',
+ 'MOP' => 'Pataca Macau',
+ 'MRO' => 'Ouguiya Mauritania',
+ 'MUR' => 'Rwpî Mauritius',
+ 'MVR' => 'Rufiyaa’r Maldives',
+ 'MWK' => 'Kwacha Malawi',
+ 'MXN' => 'Peso México',
+ 'MYR' => 'Ringgit Malaysia',
+ 'MZN' => 'Metical Mozambique',
+ 'NAD' => 'Doler Namibia',
+ 'NGN' => 'Naira Nigeria',
+ 'NIO' => 'Córdoba Nicaragua',
+ 'NOK' => 'Krone Norwy',
+ 'NPR' => 'Rwpî Nepal',
+ 'NZD' => 'Doler Seland Newydd',
+ 'OMR' => 'Rial Oman',
+ 'PAB' => 'Balboa Panama',
+ 'PEN' => 'Nuevo Sol Periw',
+ 'PGK' => 'Kina Papua Guinea Newydd',
+ 'PHP' => 'Peso Pilipinas',
+ 'PKR' => 'Rwpî Pacistan',
+ 'PLN' => 'Zloty Gwlad Pwyl',
+ 'PYG' => 'Guarani Paraguay',
+ 'QAR' => 'Rial Qatar',
+ 'RON' => 'Leu Rwmania',
+ 'RSD' => 'Dinar Serbia',
+ 'RUB' => 'Rwbl Rwsia',
+ 'RWF' => 'Ffranc Rwanda',
+ 'SAR' => 'Riyal Saudi Arabia',
+ 'SBD' => 'Doler Ynysoedd Solomon',
+ 'SCR' => 'Rwpî Seychelles',
+ 'SDG' => 'Punt Sudan',
+ 'SEK' => 'Krona Sweden',
+ 'SGD' => 'Doler Singapore',
+ 'SHP' => 'Punt Saint Helena',
+ 'SLL' => 'Leone Sierra Leone',
+ 'SOS' => 'Swllt Somalia',
+ 'SRD' => 'Doler Surinam',
+ 'SSP' => 'Punt De Sudan',
+ 'STD' => 'Dobra São Tomé a Príncipe',
+ 'SYP' => 'Punt Syria',
+ 'SZL' => 'Lilangeni Gwlad Swazi',
+ 'THB' => 'Baht Gwlad Thai',
+ 'TJS' => 'Somoni Tajikistan',
+ 'TMT' => 'Manat Turkmenistan',
+ 'TND' => 'Dinar Tunisia',
+ 'TOP' => 'Paʻanga Tonga',
+ 'TRY' => 'Lira Twrci',
+ 'TTD' => 'Doler Trinidad a Tobago',
+ 'TWD' => 'Doler Newydd Taiwan',
+ 'TZS' => 'Swllt Tanzania',
+ 'UAH' => 'Hryvnia Wcráin',
+ 'UGX' => 'Swllt Uganda',
+ 'USD' => 'Doler UDA',
+ 'UYU' => 'Peso Uruguay',
+ 'UZS' => 'Som Uzbekistan',
+ 'VEF' => 'Bolívar Venezuela',
+ 'VND' => 'Dong Fietnam',
+ 'VUV' => 'Vatu Vanuatu',
+ 'WST' => 'Tala Samoa',
+ 'XAF' => 'Ffranc CFA y BEAC',
+ 'XCD' => 'Doler Dwyrain y Caribî',
+ 'XOF' => 'Ffranc CFA y BCEAO',
+ 'XPF' => 'Ffranc CPF',
+ 'XXX' => 'Arian Cyfredol Anhysbys',
+ 'YER' => 'Rial Yemen',
+ 'ZAR' => 'Rand De Affrica',
+ 'ZMK' => 'Kwacha Zambia (1968–2012)',
+ 'ZMW' => 'Kwacha Zambia',
+);
+
+$currencySymbols = array(
+ 'AUD' => 'A$',
+ 'BMD' => 'BMD',
+ 'BRL' => 'R$',
+ 'BZD' => 'BZD',
+ 'CAD' => 'CA$',
+ 'CNY' => 'CN¥',
+ 'CRC' => 'CRC',
+ 'EUR' => '€',
+ 'GBP' => '£',
+ 'GTQ' => 'GTQ',
+ 'HKD' => 'HK$',
+ 'ILS' => '₪',
+ 'INR' => '₹',
+ 'JPY' => 'JP¥',
+ 'KRW' => '₩',
+ 'MXN' => 'MX$',
+ 'NZD' => 'NZ$',
+ 'THB' => '฿',
+ 'TWD' => 'NT$',
+ 'USD' => 'US$',
+ 'VND' => '₫',
+ 'XAF' => 'FCFA',
+ 'XCD' => 'EC$',
+ 'XOF' => 'CFA',
+ 'XPF' => 'CFPF',
+);
+
+$countryNames = array(
+ 'AC' => 'Ynys Ascension',
+ 'AD' => 'Andorra',
+ 'AE' => 'Emiradau Arabaidd Unedig',
+ 'AF' => 'Afghanistan',
+ 'AG' => 'Antigua a Barbuda',
+ 'AI' => 'Anguilla',
+ 'AL' => 'Albania',
+ 'AM' => 'Armenia',
+ 'AN' => 'Ynysoedd Caribî yr Iseldiroedd',
+ 'AO' => 'Angola',
+ 'AQ' => 'Antarctica',
+ 'AR' => 'Yr Ariannin',
+ 'AS' => 'Samoa America',
+ 'AT' => 'Awstria',
+ 'AU' => 'Awstralia',
+ 'AW' => 'Aruba',
+ 'AX' => 'Ynysoedd Åland',
+ 'AZ' => 'Azerbaijan',
+ 'BA' => 'Bosnia a Hercegovina',
+ 'BB' => 'Barbados',
+ 'BD' => 'Bangladesh',
+ 'BE' => 'Gwlad Belg',
+ 'BF' => 'Burkina Faso',
+ 'BG' => 'Bwlgaria',
+ 'BH' => 'Bahrain',
+ 'BI' => 'Burundi',
+ 'BJ' => 'Benin',
+ 'BL' => 'Saint Barthélemy',
+ 'BM' => 'Bermuda',
+ 'BN' => 'Brunei',
+ 'BO' => 'Bolifia',
+ 'BQ' => 'Antilles yr Iseldiroedd',
+ 'BR' => 'Brasil',
+ 'BS' => 'Y Bahamas',
+ 'BT' => 'Bhutan',
+ 'BV' => 'Ynys Bouvet',
+ 'BW' => 'Botswana',
+ 'BY' => 'Belarws',
+ 'BZ' => 'Belize',
+ 'CA' => 'Canada',
+ 'CC' => 'Ynysoedd Cocos (Keeling)',
+ 'CD' => 'Y Congo - Kinshasa',
+ 'CF' => 'Gweriniaeth Canolbarth Affrica',
+ 'CG' => 'Y Congo - Brazzaville',
+ 'CH' => 'Y Swistir',
+ 'CI' => 'Côte d’Ivoire',
+ 'CK' => 'Ynysoedd Cook',
+ 'CL' => 'Chile',
+ 'CM' => 'Camerŵn',
+ 'CN' => 'Tsieina',
+ 'CO' => 'Colombia',
+ 'CP' => 'Ynys Clipperton',
+ 'CR' => 'Costa Rica',
+ 'CU' => 'Ciwba',
+ 'CV' => 'Cabo Verde',
+ 'CW' => 'Curaçao',
+ 'CX' => 'Ynys y Nadolig',
+ 'CY' => 'Cyprus',
+ 'CZ' => 'Gweriniaeth Tsiec',
+ 'DE' => 'Yr Almaen',
+ 'DG' => 'Diego Garcia',
+ 'DJ' => 'Djibouti',
+ 'DK' => 'Denmarc',
+ 'DM' => 'Dominica',
+ 'DO' => 'Gweriniaeth Dominica',
+ 'DZ' => 'Algeria',
+ 'EA' => 'Ceuta a Melilla',
+ 'EC' => 'Ecuador',
+ 'EE' => 'Estonia',
+ 'EG' => 'Yr Aifft',
+ 'EH' => 'Gorllewin Sahara',
+ 'ER' => 'Eritrea',
+ 'ES' => 'Sbaen',
+ 'ET' => 'Ethiopia',
+ 'EU' => 'Yr Undeb Ewropeaidd',
+ 'FI' => 'Y Ffindir',
+ 'FJ' => 'Fiji',
+ 'FK' => 'Ynysoedd y Falkland/Malvinas',
+ 'FM' => 'Micronesia',
+ 'FO' => 'Føroyar',
+ 'FR' => 'Ffrainc',
+ 'GA' => 'Gabon',
+ 'GB' => 'DU',
+ 'GD' => 'Grenada',
+ 'GE' => 'Georgia',
+ 'GF' => 'Guyane Ffrengig',
+ 'GG' => 'Ynys y Garn',
+ 'GH' => 'Ghana',
+ 'GI' => 'Gibraltar',
+ 'GL' => 'Yr Ynys Las',
+ 'GM' => 'Gambia',
+ 'GN' => 'Guinée',
+ 'GP' => 'Guadeloupe',
+ 'GQ' => 'Guinea Gyhydeddol',
+ 'GR' => 'Gwlad Groeg',
+ 'GS' => 'De Georgia ac Ynysoedd Sandwich y De',
+ 'GT' => 'Guatemala',
+ 'GU' => 'Guam',
+ 'GW' => 'Guiné-Bissau',
+ 'GY' => 'Guyana',
+ 'HK' => 'Hong Kong',
+ 'HM' => 'Ynys Heard ac Ynysoedd McDonald',
+ 'HN' => 'Honduras',
+ 'HR' => 'Croatia',
+ 'HT' => 'Haiti',
+ 'HU' => 'Hwngari',
+ 'IC' => 'Yr Ynysoedd Dedwydd',
+ 'ID' => 'Indonesia',
+ 'IE' => 'Iwerddon',
+ 'IL' => 'Israel',
+ 'IM' => 'Ynys Manaw',
+ 'IN' => 'India',
+ 'IO' => 'Tiriogaeth Brydeinig Cefnfor India',
+ 'IQ' => 'Irac',
+ 'IR' => 'Iran',
+ 'IS' => 'Gwlad yr Iâ',
+ 'IT' => 'Yr Eidal',
+ 'JE' => 'Jersey',
+ 'JM' => 'Jamaica',
+ 'JO' => 'Gwlad Iorddonen',
+ 'JP' => 'Japan',
+ 'KE' => 'Kenya',
+ 'KG' => 'Kyrgyzstan',
+ 'KH' => 'Cambodia',
+ 'KI' => 'Kiribati',
+ 'KM' => 'Comoros',
+ 'KN' => 'Saint Kitts a Nevis',
+ 'KP' => 'Gogledd Korea',
+ 'KR' => 'De Korea',
+ 'KW' => 'Kuwait',
+ 'KY' => 'Ynysoedd Cayman',
+ 'KZ' => 'Kazakstan',
+ 'LA' => 'Laos',
+ 'LB' => 'Libanus',
+ 'LC' => 'Saint Lucia',
+ 'LI' => 'Liechtenstein',
+ 'LK' => 'Sri Lanka',
+ 'LR' => 'Liberia',
+ 'LS' => 'Lesotho',
+ 'LT' => 'Lithuania',
+ 'LU' => 'Lwcsembwrg',
+ 'LV' => 'Latfia',
+ 'LY' => 'Libya',
+ 'MA' => 'Moroco',
+ 'MC' => 'Monaco',
+ 'MD' => 'Moldofa',
+ 'ME' => 'Montenegro',
+ 'MF' => 'Saint Martin',
+ 'MG' => 'Madagascar',
+ 'MH' => 'Ynysoedd Marshall',
+ 'MK' => 'Macedonia',
+ 'ML' => 'Mali',
+ 'MM' => 'Myanmar (Burma)',
+ 'MN' => 'Mongolia',
+ 'MO' => 'Macau',
+ 'MP' => 'Ynysoedd Gogledd Mariana',
+ 'MQ' => 'Martinique',
+ 'MR' => 'Mauritania',
+ 'MS' => 'Montserrat',
+ 'MT' => 'Malta',
+ 'MU' => 'Mauritius',
+ 'MV' => 'Y Maldives',
+ 'MW' => 'Malawi',
+ 'MX' => 'Mecsico',
+ 'MY' => 'Malaysia',
+ 'MZ' => 'Mozambique',
+ 'NA' => 'Namibia',
+ 'NC' => 'Caledonia Newydd',
+ 'NE' => 'Niger',
+ 'NF' => 'Ynys Norfolk',
+ 'NG' => 'Nigeria',
+ 'NI' => 'Nicaragua',
+ 'NL' => 'Yr Iseldiroedd',
+ 'NO' => 'Norwy',
+ 'NP' => 'Nepal',
+ 'NR' => 'Nauru',
+ 'NU' => 'Niue',
+ 'NZ' => 'Seland Newydd',
+ 'OM' => 'Oman',
+ 'PA' => 'Panama',
+ 'PE' => 'Periw',
+ 'PF' => 'Polynesia Ffrengig',
+ 'PG' => 'Papua Guinea Newydd',
+ 'PH' => 'Pilipinas',
+ 'PK' => 'Pakistan',
+ 'PL' => 'Gwlad Pwyl',
+ 'PM' => 'Saint-Pierre-et-Miquelon',
+ 'PN' => 'Ynysoedd Pitcairn',
+ 'PR' => 'Puerto Rico',
+ 'PS' => 'Palesteina',
+ 'PT' => 'Portiwgal',
+ 'PW' => 'Palau',
+ 'PY' => 'Paraguay',
+ 'QA' => 'Qatar',
+ 'QO' => 'Oceania Bellennig',
+ 'RE' => 'Réunion',
+ 'RO' => 'Rwmania',
+ 'RS' => 'Serbia',
+ 'RU' => 'Rwsia',
+ 'RW' => 'Rwanda',
+ 'SA' => 'Saudi Arabia',
+ 'SB' => 'Ynysoedd Solomon',
+ 'SC' => 'Seychelles',
+ 'SD' => 'Swdan',
+ 'SE' => 'Sweden',
+ 'SG' => 'Singapore',
+ 'SH' => 'Saint Helena',
+ 'SI' => 'Slofenia',
+ 'SJ' => 'Svalbard a Jan Mayen',
+ 'SK' => 'Slofacia',
+ 'SL' => 'Sierra Leone',
+ 'SM' => 'San Marino',
+ 'SN' => 'Sénégal',
+ 'SO' => 'Somalia',
+ 'SR' => 'Suriname',
+ 'SS' => 'De Swdan',
+ 'ST' => 'São Tomé a Príncipe',
+ 'SV' => 'El Salvador',
+ 'SX' => 'Sint Maarten',
+ 'SY' => 'Syria',
+ 'SZ' => 'Gwlad Swazi',
+ 'TA' => 'Tristan da Cunha',
+ 'TC' => 'Ynysoedd Turks a Caicos',
+ 'TD' => 'Tchad',
+ 'TF' => 'Tiroedd Deheuol ac Antarctig Ffrainc',
+ 'TG' => 'Togo',
+ 'TH' => 'Gwlad Thai',
+ 'TJ' => 'Tajikistan',
+ 'TK' => 'Tokelau',
+ 'TL' => 'Timor-Leste',
+ 'TM' => 'Turkmenistan',
+ 'TN' => 'Tunisia',
+ 'TO' => 'Tonga',
+ 'TR' => 'Twrci',
+ 'TT' => 'Trinidad a Tobago',
+ 'TV' => 'Tuvalu',
+ 'TW' => 'Taiwan',
+ 'TZ' => 'Tanzania',
+ 'UA' => 'Wcráin',
+ 'UG' => 'Uganda',
+ 'UM' => 'Ynysoedd Pellennig UDA',
+ 'US' => 'UDA',
+ 'UY' => 'Uruguay',
+ 'UZ' => 'Uzbekistan',
+ 'VA' => 'Y Fatican',
+ 'VC' => 'Saint Vincent a’r Grenadines',
+ 'VE' => 'Venezuela',
+ 'VG' => 'Ynysoedd Gwyryf Prydain',
+ 'VI' => 'Ynysoedd Gwyryf yr Unol Daleithiau',
+ 'VN' => 'Fietnam',
+ 'VU' => 'Vanuatu',
+ 'WF' => 'Wallis a Futuna',
+ 'WS' => 'Samoa',
+ 'XK' => 'Kosovo',
+ 'YE' => 'Yemen',
+ 'YT' => 'Mayotte',
+ 'ZA' => 'De Affrica',
+ 'ZM' => 'Zambia',
+ 'ZW' => 'Zimbabwe',
+);
+
+$timeUnits = array(
+ 'day-few' => '{0} diwrnod',
+ 'day-future-few' => 'Ymhen tridiau',
+ 'day-future-many' => 'Ymhen {0} diwrnod',
+ 'day-future-one' => 'Ymhen diwrnod',
+ 'day-future-other' => 'Ymhen {0} diwrnod',
+ 'day-future-two' => 'Ymhen deuddydd',
+ 'day-future-zero' => 'Ymhen {0} diwrnod',
+ 'day-many' => '{0} diwrnod',
+ 'day-one' => '{0} diwrnod',
+ 'day-other' => '{0} diwrnod',
+ 'day-past-few' => '{0} diwrnod yn ôl',
+ 'day-past-many' => '{0} diwrnod yn ôl',
+ 'day-past-one' => '{0} diwrnod yn ôl',
+ 'day-past-other' => '{0} diwrnod yn ôl',
+ 'day-past-two' => '{0} ddiwrnod yn ôl',
+ 'day-past-zero' => '{0} diwrnod yn ôl',
+ 'day-short-past-few' => '{0} diwrnod yn ôl',
+ 'day-short-past-many' => '{0} diwrnod yn ôl',
+ 'day-short-past-one' => '{0} diwrnod yn ôl',
+ 'day-short-past-other' => '{0} diwrnod yn ôl',
+ 'day-short-past-two' => '{0} diwrnod yn ôl',
+ 'day-short-past-zero' => '{0} diwrnod yn ôl',
+ 'day-two' => '{0} ddiwrnod',
+ 'day-zero' => '{0} diwrnod',
+ 'hour-few' => '{0} awr',
+ 'hour-future-few' => 'Ymhen {0} awr',
+ 'hour-future-many' => 'Ymhen {0} awr',
+ 'hour-future-one' => 'Ymhen {0} awr',
+ 'hour-future-other' => 'Ymhen {0} awr',
+ 'hour-future-two' => 'Ymhen {0} awr',
+ 'hour-future-zero' => 'Ymhen {0} awr',
+ 'hour-many' => '{0} awr',
+ 'hour-one' => '{0} awr',
+ 'hour-other' => '{0} awr',
+ 'hour-past-few' => '{0} awr yn ôl',
+ 'hour-past-many' => '{0} awr yn ôl',
+ 'hour-past-one' => 'awr yn ôl',
+ 'hour-past-other' => '{0} awr yn ôl',
+ 'hour-past-two' => '{0} awr yn ôl',
+ 'hour-past-zero' => '{0} awr yn ôl',
+ 'hour-two' => '{0} awr',
+ 'hour-zero' => '{0} awr',
+ 'millisecond-few' => '{0} milieiliad',
+ 'millisecond-many' => '{0} milieiliad',
+ 'millisecond-one' => '{0} milieiliad',
+ 'millisecond-other' => '{0} milieiliad',
+ 'millisecond-two' => '{0} filieiliad',
+ 'millisecond-zero' => '{0} milieiliad',
+ 'minute-few' => '{0} munud',
+ 'minute-future-few' => 'Ymhen {0} munud',
+ 'minute-future-many' => 'Ymhen {0} munud',
+ 'minute-future-one' => 'Ymhen munud',
+ 'minute-future-other' => 'Ymhen {0} munud',
+ 'minute-future-two' => 'Ymhen {0} funud',
+ 'minute-future-zero' => 'Ymhen {0} munud',
+ 'minute-many' => '{0} munud',
+ 'minute-one' => '{0} munud',
+ 'minute-other' => '{0} munud',
+ 'minute-past-few' => '{0} munud yn ôl',
+ 'minute-past-many' => '{0} munud yn ôl',
+ 'minute-past-one' => '{0} munud yn ôl',
+ 'minute-past-other' => '{0} munud yn ôl',
+ 'minute-past-two' => '{0} funud yn ôl',
+ 'minute-past-zero' => '{0} munud yn ôl',
+ 'minute-two' => '{0} funud',
+ 'minute-zero' => '{0} munud',
+ 'month-few' => '{0} mis',
+ 'month-future-few' => 'Ymhen {0} mis',
+ 'month-future-many' => 'Ymhen {0} mis',
+ 'month-future-one' => 'Ymhen mis',
+ 'month-future-other' => 'Ymhen {0} mis',
+ 'month-future-two' => 'Ymhen deufis',
+ 'month-future-zero' => 'Ymhen {0} mis',
+ 'month-many' => '{0} mis',
+ 'month-narrow-past-few' => '{0} mis yn ôl',
+ 'month-narrow-past-many' => '{0} mis yn ôl',
+ 'month-narrow-past-one' => '{0} mis yn ôl',
+ 'month-narrow-past-other' => '{0} mis yn ôl',
+ 'month-narrow-past-two' => '{0} mis yn ôl',
+ 'month-narrow-past-zero' => '{0} mis yn ôl',
+ 'month-one' => '{0} mis',
+ 'month-other' => '{0} mis',
+ 'month-past-few' => '{0} mis yn ôl',
+ 'month-past-many' => '{0} mis yn ôl',
+ 'month-past-one' => '{0} mis yn ôl',
+ 'month-past-other' => '{0} mis yn ôl',
+ 'month-past-two' => '{0} fis yn ôl',
+ 'month-past-zero' => '{0} mis yn ôl',
+ 'month-short-past-few' => '{0} mis yn ôl',
+ 'month-short-past-many' => '{0} mis yn ôl',
+ 'month-short-past-one' => '{0} mis yn ôl',
+ 'month-short-past-other' => '{0} mis yn ôl',
+ 'month-short-past-two' => '{0} mis yn ôl',
+ 'month-short-past-zero' => '{0} mis yn ôl',
+ 'month-two' => '{0} fis',
+ 'month-zero' => '{0} mis',
+ 'second-few' => '{0} eiliad',
+ 'second-future-few' => 'Ymhen {0} eiliad',
+ 'second-future-many' => 'Ymhen {0} eiliad',
+ 'second-future-one' => 'Ymhen eiliad',
+ 'second-future-other' => 'Ymhen {0} eiliad',
+ 'second-future-two' => 'Ymhen {0} eiliad',
+ 'second-future-zero' => 'Ymhen {0} eiliad',
+ 'second-many' => '{0} eiliad',
+ 'second-one' => '{0} eiliad',
+ 'second-other' => '{0} eiliad',
+ 'second-past-few' => '{0} eiliad yn ôl',
+ 'second-past-many' => '{0} eiliad yn ôl',
+ 'second-past-one' => 'eiliad yn ôl',
+ 'second-past-other' => '{0} eiliad yn ôl',
+ 'second-past-two' => '{0} eiliad yn ôl',
+ 'second-past-zero' => '{0} eiliad yn ôl',
+ 'second-two' => '{0} eiliad',
+ 'second-zero' => '{0} eiliad',
+ 'week-few' => '{0} wythnos',
+ 'week-future-few' => 'Ymhen {0} wythnos',
+ 'week-future-many' => 'Ymhen {0} wythnos',
+ 'week-future-one' => 'Ymhen wythnos',
+ 'week-future-other' => 'Ymhen {0} wythnos',
+ 'week-future-two' => 'Ymhen pythefnos',
+ 'week-future-zero' => 'Ymhen {0} wythnos',
+ 'week-many' => '{0} wythnos',
+ 'week-one' => '{0} wythnos',
+ 'week-other' => '{0} wythnos',
+ 'week-past-few' => '{0} wythnos yn ôl',
+ 'week-past-many' => '{0} wythnos yn ôl',
+ 'week-past-one' => '{0} wythnos yn ôl',
+ 'week-past-other' => '{0} wythnos yn ôl',
+ 'week-past-two' => '{0} wythnos yn ôl',
+ 'week-past-zero' => '{0} wythnos yn ôl',
+ 'week-two' => '{0} wythnos',
+ 'week-zero' => '{0} wythnos',
+ 'year-few' => '{0} blynedd',
+ 'year-future-few' => 'Ymhen {0} blynedd',
+ 'year-future-many' => 'Ymhen {0} blynedd',
+ 'year-future-one' => 'Ymhen blwyddyn',
+ 'year-future-other' => 'Ymhen {0} mlynedd',
+ 'year-future-two' => 'Ymhen {0} flynedd',
+ 'year-future-zero' => 'Ymhen {0} mlynedd',
+ 'year-many' => '{0} blynedd',
+ 'year-one' => '{0} flwyddyn',
+ 'year-other' => '{0} mlynedd',
+ 'year-past-few' => '{0} blynedd yn ôl',
+ 'year-past-many' => '{0} blynedd yn ôl',
+ 'year-past-one' => 'blwyddyn yn ôl',
+ 'year-past-other' => '{0} o flynyddoedd yn ôl',
+ 'year-past-two' => '{0} flynedd yn ôl',
+ 'year-past-zero' => '{0} o flynyddoedd yn ôl',
+ 'year-two' => '{0} flynedd',
+ 'year-zero' => '{0} mlynedd',
+);
diff --git a/MLEB/cldr/CldrNames/CldrNamesDa.php b/MLEB/cldr/CldrNames/CldrNamesDa.php
new file mode 100644
index 00000000..eee9fed0
--- /dev/null
+++ b/MLEB/cldr/CldrNames/CldrNamesDa.php
@@ -0,0 +1,1328 @@
+<?php
+
+$languageNames = array(
+ 'aa' => 'afar',
+ 'ab' => 'abkhasisk',
+ 'ace' => 'achinesisk',
+ 'ach' => 'acoli',
+ 'ada' => 'adangme',
+ 'ady' => 'adyghe',
+ 'ae' => 'avestan',
+ 'af' => 'afrikaans',
+ 'afh' => 'afrihili',
+ 'agq' => 'aghem',
+ 'ain' => 'ainu',
+ 'ak' => 'akan',
+ 'akk' => 'akkadisk',
+ 'ale' => 'aleutisk',
+ 'alt' => 'sydaltaisk',
+ 'am' => 'amharisk',
+ 'an' => 'aragonesisk',
+ 'ang' => 'oldengelsk',
+ 'anp' => 'angika',
+ 'ar' => 'arabisk',
+ 'ar-001' => 'moderne standardarabisk',
+ 'arc' => 'aramæisk',
+ 'arn' => 'araukansk',
+ 'arp' => 'arapaho',
+ 'arw' => 'arawak',
+ 'as' => 'assamesisk',
+ 'asa' => 'asu',
+ 'ast' => 'asturisk',
+ 'av' => 'avarisk',
+ 'awa' => 'awadhi',
+ 'ay' => 'aymara',
+ 'az' => 'aserbajdsjansk',
+ 'ba' => 'bashkir',
+ 'bal' => 'baluchi',
+ 'ban' => 'balinesisk',
+ 'bas' => 'basa',
+ 'bax' => 'bamun',
+ 'bbj' => 'ghomala',
+ 'be' => 'hviderussisk',
+ 'bej' => 'beja',
+ 'bem' => 'bemba',
+ 'bez' => 'bena',
+ 'bfd' => 'bafut',
+ 'bg' => 'bulgarsk',
+ 'bho' => 'bhojpuri',
+ 'bi' => 'bislama',
+ 'bik' => 'bikol',
+ 'bin' => 'bini',
+ 'bkm' => 'kom',
+ 'bla' => 'siksika',
+ 'bm' => 'bambara',
+ 'bn' => 'bengali',
+ 'bo' => 'tibetansk',
+ 'br' => 'bretonsk',
+ 'bra' => 'braj',
+ 'brx' => 'bodo',
+ 'bs' => 'bosnisk',
+ 'bss' => 'bakossi',
+ 'bua' => 'buriatisk',
+ 'bug' => 'buginesisk',
+ 'bum' => 'bulu',
+ 'byn' => 'blin',
+ 'byv' => 'medumba',
+ 'ca' => 'catalansk',
+ 'cad' => 'caddo',
+ 'car' => 'caribisk',
+ 'cay' => 'cayuga',
+ 'cch' => 'atsam',
+ 'ce' => 'tjetjensk',
+ 'ceb' => 'cebuano',
+ 'cgg' => 'chiga',
+ 'ch' => 'chamorro',
+ 'chb' => 'chibcha',
+ 'chg' => 'chagatai',
+ 'chk' => 'chuukese',
+ 'chm' => 'mari',
+ 'chn' => 'chinook',
+ 'cho' => 'choctaw',
+ 'chp' => 'chipewyan',
+ 'chr' => 'cherokee',
+ 'chy' => 'cheyenne',
+ 'ckb' => 'sorani',
+ 'co' => 'korsikansk',
+ 'cop' => 'koptisk',
+ 'cr' => 'cree',
+ 'crh' => 'krim tyrkisk',
+ 'cs' => 'tjekkisk',
+ 'csb' => 'kasjubisk',
+ 'cu' => 'kirkeslavisk',
+ 'cv' => 'chuvash',
+ 'cy' => 'walisisk',
+ 'da' => 'dansk',
+ 'dak' => 'dakota',
+ 'dar' => 'dargwa',
+ 'dav' => 'taita',
+ 'de' => 'tysk',
+ 'de-at' => 'østrigsk tysk',
+ 'de-ch' => 'schweizerhøjtysk',
+ 'del' => 'delaware',
+ 'den' => 'athapaskisk',
+ 'dgr' => 'dogrib',
+ 'din' => 'dinka',
+ 'dje' => 'zarma',
+ 'doi' => 'dogri',
+ 'dsb' => 'nedersorbisk',
+ 'dua' => 'duala',
+ 'dum' => 'middelhollandsk',
+ 'dv' => 'divehi',
+ 'dyo' => 'jola-fonyi',
+ 'dyu' => 'dyula',
+ 'dz' => 'dzongkha',
+ 'dzg' => 'dazaga',
+ 'ebu' => 'kiembu',
+ 'ee' => 'ewe',
+ 'efi' => 'efik',
+ 'egy' => 'oldegyptisk',
+ 'eka' => 'ekajuk',
+ 'el' => 'græsk',
+ 'elx' => 'elamitisk',
+ 'en' => 'engelsk',
+ 'en-au' => 'australsk engelsk',
+ 'en-ca' => 'canadisk engelsk',
+ 'en-gb' => 'britisk engelsk',
+ 'en-us' => 'amerikansk engelsk',
+ 'enm' => 'middelengelsk',
+ 'eo' => 'esperanto',
+ 'es' => 'spansk',
+ 'es-419' => 'latinamerikansk spansk',
+ 'es-es' => 'europæisk spansk',
+ 'es-mx' => 'mexicansk spansk',
+ 'et' => 'estisk',
+ 'eu' => 'baskisk',
+ 'ewo' => 'ewondo',
+ 'fa' => 'persisk',
+ 'fan' => 'fang',
+ 'fat' => 'fanti',
+ 'ff' => 'fulah',
+ 'fi' => 'finsk',
+ 'fil' => 'filippinsk',
+ 'fj' => 'fijiansk',
+ 'fo' => 'færøsk',
+ 'fon' => 'fon',
+ 'fr' => 'fransk',
+ 'fr-ca' => 'canadisk fransk',
+ 'fr-ch' => 'schweizisk fransk',
+ 'frm' => 'middelfransk',
+ 'fro' => 'oldfransk',
+ 'frr' => 'nordfrisisk',
+ 'frs' => 'østfrisisk',
+ 'fur' => 'friulian',
+ 'fy' => 'frisisk',
+ 'ga' => 'irsk',
+ 'gaa' => 'ga',
+ 'gag' => 'gagauzisk',
+ 'gay' => 'gayo',
+ 'gba' => 'gbaya',
+ 'gd' => 'skotsk gælisk',
+ 'gez' => 'geez',
+ 'gil' => 'gilbertesisk',
+ 'gl' => 'galicisk',
+ 'gmh' => 'middelhøjtysk',
+ 'gn' => 'guarani',
+ 'goh' => 'oldhøjtysk',
+ 'gon' => 'gondi',
+ 'gor' => 'gorontalo',
+ 'got' => 'gotisk',
+ 'grb' => 'grebo',
+ 'grc' => 'oldgræsk',
+ 'gsw' => 'schweizertysk',
+ 'gu' => 'gujarati',
+ 'guz' => 'gusii',
+ 'gv' => 'manx',
+ 'gwi' => 'gwichin',
+ 'ha' => 'hausa',
+ 'hai' => 'haida',
+ 'haw' => 'hawaiiansk',
+ 'he' => 'hebraisk',
+ 'hi' => 'hindi',
+ 'hil' => 'hiligaynon',
+ 'hit' => 'hittitisk',
+ 'hmn' => 'hmong',
+ 'ho' => 'hirimotu',
+ 'hr' => 'kroatisk',
+ 'hsb' => 'øvresorbisk',
+ 'ht' => 'haitisk',
+ 'hu' => 'ungarsk',
+ 'hup' => 'hupa',
+ 'hy' => 'armensk',
+ 'hz' => 'herero',
+ 'ia' => 'interlingua',
+ 'iba' => 'iban',
+ 'ibb' => 'ibibio',
+ 'id' => 'indonesisk',
+ 'ie' => 'interlingue',
+ 'ig' => 'igbo',
+ 'ii' => 'sichuan yi',
+ 'ik' => 'inupiaq',
+ 'ilo' => 'iloko',
+ 'inh' => 'ingush',
+ 'io' => 'ido',
+ 'is' => 'islandsk',
+ 'it' => 'italiensk',
+ 'iu' => 'inuktitut',
+ 'ja' => 'japansk',
+ 'jbo' => 'lojban',
+ 'jgo' => 'ngomba',
+ 'jmc' => 'machame',
+ 'jpr' => 'jødisk-persisk',
+ 'jrb' => 'jødisk-arabisk',
+ 'jv' => 'javanesisk',
+ 'ka' => 'georgisk',
+ 'kaa' => 'karakalpakisk',
+ 'kab' => 'kabylisk',
+ 'kac' => 'kachin',
+ 'kaj' => 'jju',
+ 'kam' => 'kamba',
+ 'kaw' => 'kawi',
+ 'kbd' => 'kabardian',
+ 'kbl' => 'kanembu',
+ 'kcg' => 'tyap',
+ 'kde' => 'makonde',
+ 'kea' => 'kapverdisk',
+ 'kfo' => 'koro',
+ 'kg' => 'kongo',
+ 'kha' => 'khasi',
+ 'kho' => 'khotanesisk',
+ 'khq' => 'koyra-chiini',
+ 'ki' => 'kikuyu',
+ 'kj' => 'kuanyama',
+ 'kk' => 'kasakhisk',
+ 'kkj' => 'kako',
+ 'kl' => 'grønlandsk',
+ 'kln' => 'kalenjin',
+ 'km' => 'khmer',
+ 'kmb' => 'kimbundu',
+ 'kn' => 'kannada',
+ 'ko' => 'koreansk',
+ 'koi' => 'komi-permjakisk',
+ 'kok' => 'konkani',
+ 'kos' => 'kosraean',
+ 'kpe' => 'kpelle',
+ 'kr' => 'kanuri',
+ 'krc' => 'karatjai-balkar',
+ 'krl' => 'karelsk',
+ 'kru' => 'kurukh',
+ 'ks' => 'kashmiri',
+ 'ksb' => 'shambala',
+ 'ksf' => 'bafia',
+ 'ksh' => 'kölsch',
+ 'ku' => 'kurdisk',
+ 'kum' => 'kymyk',
+ 'kut' => 'kutenaj',
+ 'kv' => 'komi',
+ 'kw' => 'cornisk',
+ 'ky' => 'kirgisisk',
+ 'la' => 'latin',
+ 'lad' => 'ladino',
+ 'lag' => 'langi',
+ 'lah' => 'lahnda',
+ 'lam' => 'lamba',
+ 'lb' => 'luxembourgsk',
+ 'lez' => 'lezghian',
+ 'lg' => 'ganda',
+ 'li' => 'limburgsk',
+ 'lkt' => 'lakota',
+ 'ln' => 'lingala',
+ 'lo' => 'lao',
+ 'lol' => 'mongo',
+ 'loz' => 'lozi',
+ 'lt' => 'litauisk',
+ 'lu' => 'luba-Katanga',
+ 'lua' => 'luba-Lulua',
+ 'lui' => 'luiseno',
+ 'lun' => 'lunda',
+ 'luo' => 'luo',
+ 'lus' => 'lushai',
+ 'luy' => 'luyana',
+ 'lv' => 'lettisk',
+ 'mad' => 'madurese',
+ 'maf' => 'mafa',
+ 'mag' => 'magahi',
+ 'mai' => 'maithili',
+ 'mak' => 'makasar',
+ 'man' => 'mandingo',
+ 'mas' => 'masai',
+ 'mde' => 'maba',
+ 'mdf' => 'moksha',
+ 'mdr' => 'mandar',
+ 'men' => 'mende',
+ 'mer' => 'meru',
+ 'mfe' => 'morisyen',
+ 'mg' => 'malagassisk',
+ 'mga' => 'middelirsk',
+ 'mgh' => 'makhuwa-meetto',
+ 'mgo' => 'meta',
+ 'mh' => 'marshallese',
+ 'mi' => 'maori',
+ 'mic' => 'micmac',
+ 'min' => 'minangkabau',
+ 'mk' => 'makedonsk',
+ 'ml' => 'malayalam',
+ 'mn' => 'mongolsk',
+ 'mnc' => 'manchu',
+ 'mni' => 'manipuri',
+ 'moh' => 'mohawk',
+ 'mos' => 'mossi',
+ 'mr' => 'marathisk',
+ 'ms' => 'malay',
+ 'mt' => 'maltesisk',
+ 'mua' => 'mundang',
+ 'mul' => 'flere sprog',
+ 'mus' => 'creek',
+ 'mwl' => 'mirandesisk',
+ 'mwr' => 'marwari',
+ 'my' => 'burmesisk',
+ 'mye' => 'myene',
+ 'myv' => 'erzya',
+ 'na' => 'nauru',
+ 'nap' => 'neapolitansk',
+ 'naq' => 'nama',
+ 'nb' => 'norsk bokmål',
+ 'nd' => 'nordndebele',
+ 'nds' => 'nedertysk',
+ 'ne' => 'nepalesisk',
+ 'new' => 'newari',
+ 'ng' => 'ndonga',
+ 'nia' => 'nias',
+ 'niu' => 'niuean',
+ 'nl' => 'hollandsk',
+ 'nl-be' => 'flamsk',
+ 'nmg' => 'kwasio',
+ 'nn' => 'nynorsk',
+ 'nnh' => 'ngiemboon',
+ 'no' => 'norsk',
+ 'nog' => 'nogai',
+ 'non' => 'oldislandsk',
+ 'nqo' => 'n-ko',
+ 'nr' => 'sydndebele',
+ 'nso' => 'nordsotho',
+ 'nus' => 'nuer',
+ 'nv' => 'navajo',
+ 'nwc' => 'klassisk newarisk',
+ 'ny' => 'nyanja',
+ 'nym' => 'nyamwezi',
+ 'nyn' => 'nyankole',
+ 'nyo' => 'nyoro sprog',
+ 'nzi' => 'nzima',
+ 'oc' => 'occitansk',
+ 'oj' => 'ojibwa',
+ 'om' => 'oromo',
+ 'or' => 'oriya',
+ 'os' => 'ossetisk',
+ 'osa' => 'osage',
+ 'ota' => 'osmannisk-tyrkisk',
+ 'pa' => 'punjabi',
+ 'pag' => 'pangasinan',
+ 'pal' => 'pahlavi',
+ 'pam' => 'pampanga',
+ 'pap' => 'papiamento',
+ 'pau' => 'palauansk',
+ 'peo' => 'oldpersisk',
+ 'phn' => 'fønikisk',
+ 'pi' => 'pali',
+ 'pl' => 'polsk',
+ 'pon' => 'ponape',
+ 'pro' => 'oldprovencalsk',
+ 'ps' => 'pashto',
+ 'pt' => 'portugisisk',
+ 'pt-br' => 'brasiliansk portugisisk',
+ 'pt-pt' => 'europæisk portugisisk',
+ 'qu' => 'quechua',
+ 'quc' => 'quiché',
+ 'raj' => 'rajasthani',
+ 'rap' => 'rapanui',
+ 'rar' => 'rarotongan',
+ 'rm' => 'rætoromansk',
+ 'rn' => 'rundi',
+ 'ro' => 'rumænsk',
+ 'ro-md' => 'moldovisk',
+ 'rof' => 'rombo',
+ 'rom' => 'romani',
+ 'ru' => 'russisk',
+ 'rup' => 'arumænsk',
+ 'rw' => 'kinyarwanda',
+ 'rwk' => 'rwa',
+ 'sa' => 'sanskrit',
+ 'sad' => 'sandawe',
+ 'sah' => 'yakut',
+ 'sam' => 'samaritansk',
+ 'saq' => 'samburu',
+ 'sas' => 'sasak',
+ 'sat' => 'santali',
+ 'sba' => 'ngambay',
+ 'sbp' => 'sangu',
+ 'sc' => 'sardinsk',
+ 'scn' => 'siciliansk',
+ 'sco' => 'skotsk',
+ 'sd' => 'sindhi',
+ 'se' => 'nordsamisk',
+ 'see' => 'seneca',
+ 'seh' => 'sena',
+ 'sel' => 'selkupisk',
+ 'ses' => 'koyraboro senni',
+ 'sg' => 'sango',
+ 'sga' => 'oldirsk',
+ 'sh' => 'serbokroatisk',
+ 'shi' => 'tachelhit',
+ 'shn' => 'shan',
+ 'shu' => 'tchadisk-arabisk',
+ 'si' => 'singalesisk',
+ 'sid' => 'sidamo',
+ 'sk' => 'slovakisk',
+ 'sl' => 'slovensk',
+ 'sm' => 'samoansk',
+ 'sma' => 'sydsamisk',
+ 'smj' => 'lulesamisk',
+ 'smn' => 'enaresamisk',
+ 'sms' => 'skoltesamisk',
+ 'sn' => 'shona',
+ 'snk' => 'soninke',
+ 'so' => 'somalisk',
+ 'sog' => 'sogdiansk',
+ 'sq' => 'albansk',
+ 'sr' => 'serbisk',
+ 'srn' => 'sranan tongo',
+ 'srr' => 'serer',
+ 'ss' => 'swati',
+ 'ssy' => 'saho',
+ 'st' => 'sydsotho',
+ 'su' => 'sundanesisk',
+ 'suk' => 'sukuma',
+ 'sus' => 'susu',
+ 'sux' => 'sumerisk',
+ 'sv' => 'svensk',
+ 'sw' => 'swahili',
+ 'swb' => 'shimaore',
+ 'swc' => 'congolesisk swahili',
+ 'syc' => 'klassisk syrisk',
+ 'syr' => 'syrisk',
+ 'ta' => 'tamilsk',
+ 'te' => 'telugu',
+ 'tem' => 'temne',
+ 'teo' => 'teso',
+ 'ter' => 'tereno',
+ 'tet' => 'tetum',
+ 'tg' => 'tajik',
+ 'th' => 'thailandsk',
+ 'ti' => 'tigrinya',
+ 'tig' => 'tigre',
+ 'tiv' => 'tivi',
+ 'tk' => 'turkmensk',
+ 'tkl' => 'tokelau',
+ 'tl' => 'tagalog',
+ 'tlh' => 'klingon',
+ 'tli' => 'tlingit',
+ 'tmh' => 'tamashek',
+ 'tn' => 'tswana',
+ 'to' => 'tongansk',
+ 'tog' => 'nyasa tongansk',
+ 'tpi' => 'tok pisin',
+ 'tr' => 'tyrkisk',
+ 'trv' => 'taroko',
+ 'ts' => 'tsonga',
+ 'tsi' => 'tsimshisk',
+ 'tt' => 'tatarisk',
+ 'tum' => 'tumbuka',
+ 'tvl' => 'tuvalu',
+ 'tw' => 'twi',
+ 'twq' => 'tasawaq',
+ 'ty' => 'tahitiansk',
+ 'tyv' => 'tuvinian',
+ 'tzm' => 'centralmarokkansk tamazight',
+ 'udm' => 'udmurt',
+ 'ug' => 'uygurisk',
+ 'uga' => 'ugaristisk',
+ 'uk' => 'ukrainsk',
+ 'umb' => 'umbundu',
+ 'und' => 'ukendt sprog',
+ 'ur' => 'urdu',
+ 'uz' => 'usbekisk',
+ 'vai' => 'vai',
+ 've' => 'venda',
+ 'vi' => 'vietnamesisk',
+ 'vo' => 'volapyk',
+ 'vot' => 'votisk',
+ 'vun' => 'vunjo',
+ 'wa' => 'vallonsk',
+ 'wae' => 'walsertysk',
+ 'wal' => 'walamo',
+ 'war' => 'waray',
+ 'was' => 'washo',
+ 'wo' => 'wolof',
+ 'xal' => 'kalmyk',
+ 'xh' => 'xhosa',
+ 'xog' => 'soga',
+ 'yao' => 'yao',
+ 'yap' => 'yapese',
+ 'yav' => 'yangben',
+ 'ybb' => 'yemba',
+ 'yi' => 'jiddisch',
+ 'yo' => 'yoruba',
+ 'yue' => 'kantonesisk',
+ 'za' => 'zhuang',
+ 'zap' => 'zapotec',
+ 'zbl' => 'blissymboler',
+ 'zen' => 'zenaga',
+ 'zgh' => 'tamazight',
+ 'zh' => 'kinesisk',
+ 'zh-hans' => 'forenklet kinesisk',
+ 'zh-hant' => 'traditionelt kinesisk',
+ 'zu' => 'zulu',
+ 'zun' => 'zuni',
+ 'zxx' => 'intet sprogligt indhold',
+ 'zza' => 'zaza',
+);
+
+$currencyNames = array(
+ 'ADP' => 'Andorransk peseta',
+ 'AED' => 'Dirham fra de Forenede Arabiske Emirater',
+ 'AFA' => 'Afghansk afghani (1927–2002)',
+ 'AFN' => 'Afghansk afghani',
+ 'ALL' => 'Albansk lek',
+ 'AMD' => 'Armensk dram',
+ 'ANG' => 'Nederlandske Antiller-gylden',
+ 'AOA' => 'Angolansk kwanza',
+ 'AOK' => 'Angolansk kwanza (1977–1990)',
+ 'AON' => 'Angolansk nye kwanza (1990–2000)',
+ 'AOR' => 'Angolansk kwanza (1995–1999)',
+ 'ARA' => 'Argentinsk austral',
+ 'ARP' => 'Argentinsk peso (1983–1985)',
+ 'ARS' => 'Argentinsk peso',
+ 'ATS' => 'Østrigsk schilling',
+ 'AUD' => 'Australsk dollar',
+ 'AWG' => 'Arubansk florin',
+ 'AZM' => 'Aserbajdsjansk manat (1993–2006)',
+ 'AZN' => 'Aserbajdsjansk manat',
+ 'BAD' => 'Bosnien-Hercegovinsk dinar',
+ 'BAM' => 'Bosnien-Hercegovinsk konvertibel mark',
+ 'BBD' => 'Barbadisk dollar',
+ 'BDT' => 'Bangladeshisk taka',
+ 'BEC' => 'Belgisk franc (konvertibel)',
+ 'BEF' => 'Belgisk franc',
+ 'BEL' => 'Belgisk franc (financial)',
+ 'BGL' => 'Bulgarsk hard lev',
+ 'BGN' => 'Bulgarsk lev',
+ 'BHD' => 'Bahrainsk dinar',
+ 'BIF' => 'Burundisk franc',
+ 'BMD' => 'Bermudansk dollar',
+ 'BND' => 'Bruneisk dollar',
+ 'BOB' => 'Boliviansk boliviano',
+ 'BOP' => 'Boliviansk peso',
+ 'BOV' => 'Boliviansk mvdol',
+ 'BRB' => 'Brasiliansk cruzeiro novo (1967–1986)',
+ 'BRC' => 'Brasiliansk cruzado (1986–1989)',
+ 'BRE' => 'Brasiliansk cruzeiro (1990–1993)',
+ 'BRL' => 'Brasiliansk real',
+ 'BRN' => 'Brasiliansk cruzado novo (1989–1990)',
+ 'BRR' => 'Brasiliansk cruzeiro (1993–1994)',
+ 'BSD' => 'Bahamansk dollar',
+ 'BTN' => 'Bhutansk ngultrum',
+ 'BUK' => 'Burmesisk kyat',
+ 'BWP' => 'Botswansk pula',
+ 'BYB' => 'Hviderussisk rubel (1994–1999)',
+ 'BYR' => 'Hviderussisk rubel',
+ 'BZD' => 'Belizisk dollar',
+ 'CAD' => 'Canadisk dollar',
+ 'CDF' => 'Congolesisk franc',
+ 'CHE' => 'WIR euro',
+ 'CHF' => 'Schweizisk franc',
+ 'CHW' => 'WIR franc',
+ 'CLP' => 'Chilensk peso',
+ 'CNY' => 'Kinesisk yuan renminbi',
+ 'COP' => 'Colombiansk peso',
+ 'CRC' => 'Costaricansk colón',
+ 'CSD' => 'Serbisk dinar (2002–2006)',
+ 'CSK' => 'Tjekkoslovakisk hard koruna',
+ 'CUC' => 'Cubansk konvertibel peso',
+ 'CUP' => 'Cubansk peso',
+ 'CVE' => 'Kapverdisk escudo',
+ 'CYP' => 'Cypriotisk pund',
+ 'CZK' => 'Tjekkisk koruna',
+ 'DDM' => 'Østtysk mark',
+ 'DEM' => 'Tysk mark',
+ 'DJF' => 'Djiboutisk franc',
+ 'DKK' => 'Dansk krone',
+ 'DOP' => 'Dominikansk peso',
+ 'DZD' => 'Algerisk dinar',
+ 'ECS' => 'Ecuadoriansk sucre',
+ 'EEK' => 'Estisk kroon',
+ 'EGP' => 'Egyptisk pund',
+ 'ERN' => 'Eritreisk nakfa',
+ 'ESA' => 'Spansk peseta (A–konto)',
+ 'ESB' => 'Spansk peseta (konvertibel konto)',
+ 'ESP' => 'Spansk peseta',
+ 'ETB' => 'Etiopisk birr',
+ 'EUR' => 'Euro',
+ 'FIM' => 'Finsk mark',
+ 'FJD' => 'Fijiansk dollar',
+ 'FKP' => 'Pund fra Falklandsøerne',
+ 'FRF' => 'Fransk franc',
+ 'GBP' => 'Britisk pund',
+ 'GEK' => 'Georgisk kupon larit',
+ 'GEL' => 'Georgisk lari',
+ 'GHC' => 'Ghanesisk cedi (1979–2007)',
+ 'GHS' => 'Ghanesisk cedi',
+ 'GIP' => 'Gibraltarisk pund',
+ 'GMD' => 'Gambisk dalasi',
+ 'GNF' => 'Guineansk franc',
+ 'GNS' => 'Guineansk syli',
+ 'GQE' => 'Ækvatorialguineask ekwele',
+ 'GRD' => 'Græsk drakme',
+ 'GTQ' => 'Guatemalansk quetzal',
+ 'GWE' => 'Portugisisk guinea escudo',
+ 'GWP' => 'Guineansk peso',
+ 'GYD' => 'Guyansk dollar',
+ 'HKD' => 'Hongkong dollar',
+ 'HNL' => 'Honduransk lempira',
+ 'HRD' => 'Kroatisk dinar',
+ 'HRK' => 'Kroatisk kuna',
+ 'HTG' => 'Haitisk gourde',
+ 'HUF' => 'Ungarsk forint',
+ 'IDR' => 'Indonesisk rupiah',
+ 'IEP' => 'Irsk pund',
+ 'ILP' => 'Israelsk pund',
+ 'ILS' => 'Ny israelsk shekel',
+ 'INR' => 'Indisk rupee',
+ 'IQD' => 'Irakisk dinar',
+ 'IRR' => 'Iransk rial',
+ 'ISK' => 'Islansk krone',
+ 'ITL' => 'Italiensk lire',
+ 'JMD' => 'Jamaicansk dollar',
+ 'JOD' => 'Jordansk dinar',
+ 'JPY' => 'Japansk yen',
+ 'KES' => 'Kenyansk shilling',
+ 'KGS' => 'Kirgisisk som',
+ 'KHR' => 'Cambodjansk riel',
+ 'KMF' => 'Comorisk franc',
+ 'KPW' => 'Nordkoreansk won',
+ 'KRW' => 'Sydkoreansk won',
+ 'KWD' => 'Kuwaitisk dinar',
+ 'KYD' => 'Caymansk dollar',
+ 'KZT' => 'Kasakhisk tenge',
+ 'LAK' => 'Laotisk kip',
+ 'LBP' => 'Libanesisk pund',
+ 'LKR' => 'Srilankansk rupee',
+ 'LRD' => 'Liberisk dollar',
+ 'LSL' => 'Lesothisk loti',
+ 'LTL' => 'Litauisk litas',
+ 'LTT' => 'Litauisk talonas',
+ 'LUC' => 'Luxembourgsk konvertibel franc',
+ 'LUF' => 'Luxembourgsk franc',
+ 'LUL' => 'Luxembourgsk finansiel franc',
+ 'LVL' => 'Lettisk lat',
+ 'LVR' => 'Lettisk rubel',
+ 'LYD' => 'Libysk dinar',
+ 'MAD' => 'Marokkansk dirham',
+ 'MAF' => 'Marokkansk franc',
+ 'MDL' => 'Moldovisk leu',
+ 'MGA' => 'Madagaskisk ariary',
+ 'MGF' => 'Madagaskisk franc',
+ 'MKD' => 'Makedonsk denar',
+ 'MLF' => 'Malisk franc',
+ 'MMK' => 'Myanmarsk kyat',
+ 'MNT' => 'Mongolsk tugrik',
+ 'MOP' => 'Macaosk pataca',
+ 'MRO' => 'Mauritansk ouguiya',
+ 'MTL' => 'Maltesisk lira',
+ 'MTP' => 'Maltesisk pund',
+ 'MUR' => 'Mauritisk rupee',
+ 'MVR' => 'Maldivisk rufiyaa',
+ 'MWK' => 'Malawisk kwacha',
+ 'MXN' => 'Mexicansk peso',
+ 'MXP' => 'Mexicansk silver peso (1861–1992)',
+ 'MYR' => 'Malaysisk ringgit',
+ 'MZE' => 'Mozambiquisk escudo',
+ 'MZM' => 'Mozambiquisk metical (1980–2006)',
+ 'MZN' => 'Mozambiquisk metical',
+ 'NAD' => 'Namibisk dollar',
+ 'NGN' => 'Nigeriansk naira',
+ 'NIC' => 'Nicaraguansk cordoba (1988–1991)',
+ 'NIO' => 'Nicaraguansk cordoba',
+ 'NLG' => 'Hollandsk guilder',
+ 'NOK' => 'Norsk krone',
+ 'NPR' => 'Nepalesisk rupee',
+ 'NZD' => 'New Zealandsk dollar',
+ 'OMR' => 'Omansk rial',
+ 'PAB' => 'Panamansk balboa',
+ 'PEI' => 'Peruviansk inti',
+ 'PEN' => 'Peruviansk nuevo sol',
+ 'PES' => 'Peruviansk sol (1863–1965)',
+ 'PGK' => 'Papuansk kina',
+ 'PHP' => 'Filippinsk peso',
+ 'PKR' => 'Pakistansk rupee',
+ 'PLN' => 'Polsk zloty',
+ 'PLZ' => 'Polsk zloty (1950–1995)',
+ 'PTE' => 'Portugisisk escudo',
+ 'PYG' => 'Paraguaysk guarani',
+ 'QAR' => 'Qatarsk rial',
+ 'ROL' => 'Rumænsk leu (1952–2006)',
+ 'RON' => 'Rumænsk leu',
+ 'RSD' => 'Serbisk dinar',
+ 'RUB' => 'Russisk rubel',
+ 'RUR' => 'Russisk rubel (1991–1998)',
+ 'RWF' => 'Rwandisk franc',
+ 'SAR' => 'Saudiarabisk riyal',
+ 'SBD' => 'Salomonsk dollar',
+ 'SCR' => 'Seychellisk rupee',
+ 'SDD' => 'Sudansk dinar (1992–2007)',
+ 'SDG' => 'Sudansk pund',
+ 'SDP' => 'Sudansk pund (1957–1998)',
+ 'SEK' => 'Svensk krone',
+ 'SGD' => 'Singaporeansk dollar',
+ 'SHP' => 'Pund fra Saint Helena',
+ 'SIT' => 'Slovensk tolar',
+ 'SKK' => 'Slovakisk koruna',
+ 'SLL' => 'Sierraleonsk leone',
+ 'SOS' => 'Somalisk shilling',
+ 'SRD' => 'Surinamsk dollar',
+ 'SRG' => 'Surinamsk guilder',
+ 'SSP' => 'Sydsudanske pund',
+ 'STD' => 'Dobra fra Sao Tome og Principe',
+ 'SUR' => 'Sovjetisk rubel',
+ 'SVC' => 'Salvadoransk colon',
+ 'SYP' => 'Syrisk pund',
+ 'SZL' => 'Swazilandsk lilangeni',
+ 'THB' => 'Thailandsk baht',
+ 'TJR' => 'Tadsjikisk rubel',
+ 'TJS' => 'Tadsjikisk somoni',
+ 'TMM' => 'Turkmensk manat (1993–2009)',
+ 'TMT' => 'Turkmensk manat',
+ 'TND' => 'Tunesisk dinar',
+ 'TOP' => 'Tongansk paʻanga',
+ 'TPE' => 'Escudo fra Timor',
+ 'TRL' => 'Tyrkisk lire (1922–2005)',
+ 'TRY' => 'Tyrkisk lira',
+ 'TTD' => 'Dollar fra Trinidad og Tobago',
+ 'TWD' => 'Ny taiwansk dollar',
+ 'TZS' => 'Tanzanisk shilling',
+ 'UAH' => 'Ukrainsk grynia',
+ 'UAK' => 'Ukrainsk karbovanetz',
+ 'UGS' => 'Ugandisk shilling (1966–1987)',
+ 'UGX' => 'Ugandisk shilling',
+ 'USD' => 'Amerikansk dollar',
+ 'USN' => 'Amerikansk dollar (næste dag)',
+ 'USS' => 'Amerikansk dollar (samme dag)',
+ 'UYP' => 'Uruguayansk peso (1975–1993)',
+ 'UYU' => 'Uruguayansk peso',
+ 'UZS' => 'Usbekisk sum',
+ 'VEB' => 'Venezuelansk bolivar (1871–2008)',
+ 'VEF' => 'Venezuelansk bolivar',
+ 'VND' => 'Vietnamesisk dong',
+ 'VUV' => 'Vanuaisk vatu',
+ 'WST' => 'Samoansk tala',
+ 'XAF' => 'CFA-franc (BEAC)',
+ 'XAG' => 'Sølv',
+ 'XAU' => 'Guld',
+ 'XBA' => 'EURCO',
+ 'XBB' => 'EMU',
+ 'XCD' => 'Østkaribisk dollar',
+ 'XDR' => 'SDR',
+ 'XEU' => 'ECU',
+ 'XFO' => 'Fransk guldfranc',
+ 'XFU' => 'Fransk UIC-franc',
+ 'XOF' => 'CFA-franc BCEAO',
+ 'XPD' => 'Palladium',
+ 'XPF' => 'CFP-franc',
+ 'XPT' => 'Platin',
+ 'XRE' => 'RINET-fond',
+ 'XTS' => 'testvalutakode',
+ 'XXX' => 'Ukendt valuta',
+ 'YDD' => 'Yemenitisk dinar',
+ 'YER' => 'Yemenitisk rial',
+ 'YUD' => 'Jugoslavisk hard dinar (1966–1990)',
+ 'YUM' => 'Jugoslavisk noviy dinar (1994–2002)',
+ 'YUN' => 'Jugoslavisk konvertibel dinar (1990–1992)',
+ 'ZAL' => 'Sydafrikansk rand (financial)',
+ 'ZAR' => 'Sydafrikansk rand',
+ 'ZMK' => 'Zambisk kwacha (1968–2012)',
+ 'ZMW' => 'Zambisk kwacha',
+ 'ZRN' => 'Ny zairisk zaire (1993–1998)',
+ 'ZRZ' => 'Zairisk zaire (1971–1993)',
+ 'ZWD' => 'Zimbabwisk dollar (1980–2008)',
+ 'ZWL' => 'Zimbabwisk dollar (2009)',
+ 'ZWR' => 'Zimbabwisk dollar (2008)',
+);
+
+$currencySymbols = array(
+ 'AED' => 'AED',
+ 'AFN' => 'AFN',
+ 'ALL' => 'ALL',
+ 'AMD' => 'AMD',
+ 'ANG' => 'ANG',
+ 'AOA' => 'AOA',
+ 'ARS' => 'ARS',
+ 'AUD' => 'AU$',
+ 'AWG' => 'AWG',
+ 'AZN' => 'AZN',
+ 'BAM' => 'BAM',
+ 'BBD' => 'BBD',
+ 'BDT' => 'BDT',
+ 'BGN' => 'BGN',
+ 'BHD' => 'BHD',
+ 'BIF' => 'BIF',
+ 'BMD' => 'BMD',
+ 'BND' => 'BND',
+ 'BOB' => 'BOB',
+ 'BRL' => 'R$',
+ 'BSD' => 'BSD',
+ 'BTN' => 'BTN',
+ 'BWP' => 'BWP',
+ 'BYR' => 'BYR',
+ 'BZD' => 'BZD',
+ 'CAD' => 'CA$',
+ 'CDF' => 'CDF',
+ 'CHF' => 'CHF',
+ 'CLP' => 'CLP',
+ 'CNY' => 'CN¥',
+ 'COP' => 'COP',
+ 'CRC' => 'CRC',
+ 'CUC' => 'CUC',
+ 'CUP' => 'CUP',
+ 'CVE' => 'CVE',
+ 'CZK' => 'CZK',
+ 'DJF' => 'DJF',
+ 'DKK' => 'kr.',
+ 'DOP' => 'DOP',
+ 'DZD' => 'DZD',
+ 'EGP' => 'EGP',
+ 'ERN' => 'ERN',
+ 'ETB' => 'ETB',
+ 'EUR' => '€',
+ 'FJD' => 'FJD',
+ 'FKP' => 'FKP',
+ 'GBP' => '£',
+ 'GEL' => 'GEL',
+ 'GHS' => 'GHS',
+ 'GIP' => 'GIP',
+ 'GMD' => 'GMD',
+ 'GNF' => 'GNF',
+ 'GTQ' => 'GTQ',
+ 'GYD' => 'GYD',
+ 'HKD' => 'HK$',
+ 'HNL' => 'HNL',
+ 'HRK' => 'HRK',
+ 'HTG' => 'HTG',
+ 'HUF' => 'HUF',
+ 'IDR' => 'IDR',
+ 'ILS' => '₪',
+ 'INR' => '₹',
+ 'IQD' => 'IQD',
+ 'IRR' => 'IRR',
+ 'ISK' => 'ISK',
+ 'JMD' => 'JMD',
+ 'JOD' => 'JOD',
+ 'JPY' => 'JP¥',
+ 'KES' => 'KES',
+ 'KGS' => 'KGS',
+ 'KHR' => 'KHR',
+ 'KMF' => 'KMF',
+ 'KPW' => 'KPW',
+ 'KRW' => '₩',
+ 'KWD' => 'KWD',
+ 'KYD' => 'KYD',
+ 'KZT' => 'KZT',
+ 'LAK' => 'LAK',
+ 'LBP' => 'LBP',
+ 'LKR' => 'LKR',
+ 'LRD' => 'LRD',
+ 'LTL' => 'LTL',
+ 'LVL' => 'LVL',
+ 'LYD' => 'LYD',
+ 'MAD' => 'MAD',
+ 'MDL' => 'MDL',
+ 'MGA' => 'MGA',
+ 'MKD' => 'MKD',
+ 'MMK' => 'MMK',
+ 'MNT' => 'MNT',
+ 'MOP' => 'MOP',
+ 'MRO' => 'MRO',
+ 'MUR' => 'MUR',
+ 'MVR' => 'MVR',
+ 'MWK' => 'MWK',
+ 'MXN' => 'MX$',
+ 'MYR' => 'MYR',
+ 'MZN' => 'MZN',
+ 'NAD' => 'NAD',
+ 'NGN' => 'NGN',
+ 'NIO' => 'NIO',
+ 'NOK' => 'NOK',
+ 'NPR' => 'NPR',
+ 'NZD' => 'NZ$',
+ 'OMR' => 'OMR',
+ 'PAB' => 'PAB',
+ 'PEN' => 'PEN',
+ 'PGK' => 'PGK',
+ 'PHP' => 'PHP',
+ 'PKR' => 'PKR',
+ 'PLN' => 'PLN',
+ 'PYG' => 'PYG',
+ 'QAR' => 'QAR',
+ 'RON' => 'RON',
+ 'RSD' => 'RSD',
+ 'RUB' => 'RUB',
+ 'RWF' => 'RWF',
+ 'SAR' => 'SAR',
+ 'SBD' => 'SBD',
+ 'SCR' => 'SCR',
+ 'SDG' => 'SDG',
+ 'SEK' => 'SEK',
+ 'SGD' => 'SGD',
+ 'SHP' => 'SHP',
+ 'SLL' => 'SLL',
+ 'SOS' => 'SOS',
+ 'SRD' => 'SRD',
+ 'SSP' => 'SSP',
+ 'STD' => 'STD',
+ 'SYP' => 'SYP',
+ 'SZL' => 'SZL',
+ 'THB' => '฿',
+ 'TJS' => 'TJS',
+ 'TMT' => 'TMT',
+ 'TND' => 'TND',
+ 'TOP' => 'TOP',
+ 'TRY' => 'TRY',
+ 'TTD' => 'TTD',
+ 'TWD' => 'NT$',
+ 'TZS' => 'TZS',
+ 'UAH' => 'UAH',
+ 'UGX' => 'UGX',
+ 'USD' => '$',
+ 'UYU' => 'UYU',
+ 'UZS' => 'UZS',
+ 'VEF' => 'VEF',
+ 'VND' => '₫',
+ 'VUV' => 'VUV',
+ 'WST' => 'WST',
+ 'XAF' => 'FCFA',
+ 'XCD' => 'EC$',
+ 'XOF' => 'CFA',
+ 'XPF' => 'CFPF',
+ 'YER' => 'YER',
+ 'ZAR' => 'ZAR',
+ 'ZMW' => 'ZMW',
+);
+
+$countryNames = array(
+ 'AC' => 'Ascensionøen',
+ 'AD' => 'Andorra',
+ 'AE' => 'Forenede Arabiske Emirater',
+ 'AF' => 'Afghanistan',
+ 'AG' => 'Antigua og Barbuda',
+ 'AI' => 'Anguilla',
+ 'AL' => 'Albanien',
+ 'AM' => 'Armenien',
+ 'AN' => 'Hollandske Antiller',
+ 'AO' => 'Angola',
+ 'AQ' => 'Antarktis',
+ 'AR' => 'Argentina',
+ 'AS' => 'Amerikansk Samoa',
+ 'AT' => 'Østrig',
+ 'AU' => 'Australien',
+ 'AW' => 'Aruba',
+ 'AX' => 'Ålandsøerne',
+ 'AZ' => 'Aserbajdsjan',
+ 'BA' => 'Bosnien-Hercegovina',
+ 'BB' => 'Barbados',
+ 'BD' => 'Bangladesh',
+ 'BE' => 'Belgien',
+ 'BF' => 'Burkina Faso',
+ 'BG' => 'Bulgarien',
+ 'BH' => 'Bahrain',
+ 'BI' => 'Burundi',
+ 'BJ' => 'Benin',
+ 'BL' => 'Saint Barthélemy',
+ 'BM' => 'Bermuda',
+ 'BN' => 'Brunei',
+ 'BO' => 'Bolivia',
+ 'BQ' => 'Nederlandske antiller',
+ 'BR' => 'Brasilien',
+ 'BS' => 'Bahamas',
+ 'BT' => 'Bhutan',
+ 'BV' => 'Bouvetøen',
+ 'BW' => 'Botswana',
+ 'BY' => 'Hviderusland',
+ 'BZ' => 'Belize',
+ 'CA' => 'Canada',
+ 'CC' => 'Cocosøerne',
+ 'CD' => 'Congo-Kinshasa',
+ 'CF' => 'Centralafrikanske Republik',
+ 'CG' => 'Congo-Brazzaville',
+ 'CH' => 'Schweiz',
+ 'CI' => 'Elfenbenskysten',
+ 'CK' => 'Cookøerne',
+ 'CL' => 'Chile',
+ 'CM' => 'Cameroun',
+ 'CN' => 'Kina',
+ 'CO' => 'Colombia',
+ 'CP' => 'Clippertonøen',
+ 'CR' => 'Costa Rica',
+ 'CU' => 'Cuba',
+ 'CV' => 'Kap Verde',
+ 'CW' => 'Curaçao',
+ 'CX' => 'Juleøen',
+ 'CY' => 'Cypern',
+ 'CZ' => 'Tjekkiet',
+ 'DE' => 'Tyskland',
+ 'DG' => 'Diego Garcia',
+ 'DJ' => 'Djibouti',
+ 'DK' => 'Danmark',
+ 'DM' => 'Dominica',
+ 'DO' => 'Den Dominikanske Republik',
+ 'DZ' => 'Algeriet',
+ 'EA' => 'Ceuta og Melilla',
+ 'EC' => 'Ecuador',
+ 'EE' => 'Estland',
+ 'EG' => 'Egypten',
+ 'EH' => 'Vestsahara',
+ 'ER' => 'Eritrea',
+ 'ES' => 'Spanien',
+ 'ET' => 'Etiopien',
+ 'EU' => 'Den Europæiske Union',
+ 'FI' => 'Finland',
+ 'FJ' => 'Fiji',
+ 'FK' => 'Falklandsøerne',
+ 'FM' => 'Mikronesiens Forenede Stater',
+ 'FO' => 'Færøerne',
+ 'FR' => 'Frankrig',
+ 'GA' => 'Gabon',
+ 'GB' => 'UK',
+ 'GD' => 'Grenada',
+ 'GE' => 'Georgien',
+ 'GF' => 'Fransk Guyana',
+ 'GG' => 'Guernsey',
+ 'GH' => 'Ghana',
+ 'GI' => 'Gibraltar',
+ 'GL' => 'Grønland',
+ 'GM' => 'Gambia',
+ 'GN' => 'Guinea',
+ 'GP' => 'Guadeloupe',
+ 'GQ' => 'Ækvatorialguinea',
+ 'GR' => 'Grækenland',
+ 'GS' => 'South Georgia og South Sandwich Islands',
+ 'GT' => 'Guatemala',
+ 'GU' => 'Guam',
+ 'GW' => 'Guinea-Bissau',
+ 'GY' => 'Guyana',
+ 'HK' => 'Hongkong',
+ 'HM' => 'Heard Island og McDonald Islands',
+ 'HN' => 'Honduras',
+ 'HR' => 'Kroatien',
+ 'HT' => 'Haiti',
+ 'HU' => 'Ungarn',
+ 'IC' => 'Kanariske øer',
+ 'ID' => 'Indonesien',
+ 'IE' => 'Irland',
+ 'IL' => 'Israel',
+ 'IM' => 'Isle of Man',
+ 'IN' => 'Indien',
+ 'IO' => 'Det britiske territorium i Det Indiske Ocean',
+ 'IQ' => 'Irak',
+ 'IR' => 'Iran',
+ 'IS' => 'Island',
+ 'IT' => 'Italien',
+ 'JE' => 'Jersey',
+ 'JM' => 'Jamaica',
+ 'JO' => 'Jordan',
+ 'JP' => 'Japan',
+ 'KE' => 'Kenya',
+ 'KG' => 'Kirgisistan',
+ 'KH' => 'Cambodja',
+ 'KI' => 'Kiribati',
+ 'KM' => 'Comorerne',
+ 'KN' => 'Saint Kitts og Nevis',
+ 'KP' => 'Nordkorea',
+ 'KR' => 'Sydkorea',
+ 'KW' => 'Kuwait',
+ 'KY' => 'Caymanøerne',
+ 'KZ' => 'Kasakhstan',
+ 'LA' => 'Laos',
+ 'LB' => 'Libanon',
+ 'LC' => 'Saint Lucia',
+ 'LI' => 'Liechtenstein',
+ 'LK' => 'Sri Lanka',
+ 'LR' => 'Liberia',
+ 'LS' => 'Lesotho',
+ 'LT' => 'Litauen',
+ 'LU' => 'Luxembourg',
+ 'LV' => 'Letland',
+ 'LY' => 'Libyen',
+ 'MA' => 'Marokko',
+ 'MC' => 'Monaco',
+ 'MD' => 'Moldova',
+ 'ME' => 'Montenegro',
+ 'MF' => 'Saint Martin',
+ 'MG' => 'Madagaskar',
+ 'MH' => 'Marshalløerne',
+ 'MK' => 'Makedonien',
+ 'ML' => 'Mali',
+ 'MM' => 'Myanmar (Burma)',
+ 'MN' => 'Mongoliet',
+ 'MO' => 'Macao',
+ 'MP' => 'Nordmarianerne',
+ 'MQ' => 'Martinique',
+ 'MR' => 'Mauretanien',
+ 'MS' => 'Montserrat',
+ 'MT' => 'Malta',
+ 'MU' => 'Mauritius',
+ 'MV' => 'Maldiverne',
+ 'MW' => 'Malawi',
+ 'MX' => 'Mexico',
+ 'MY' => 'Malaysia',
+ 'MZ' => 'Mozambique',
+ 'NA' => 'Namibia',
+ 'NC' => 'Ny Caledonien',
+ 'NE' => 'Niger',
+ 'NF' => 'Norfolkøen',
+ 'NG' => 'Nigeria',
+ 'NI' => 'Nicaragua',
+ 'NL' => 'Holland',
+ 'NO' => 'Norge',
+ 'NP' => 'Nepal',
+ 'NR' => 'Nauru',
+ 'NU' => 'Niue',
+ 'NZ' => 'New Zealand',
+ 'OM' => 'Oman',
+ 'PA' => 'Panama',
+ 'PE' => 'Peru',
+ 'PF' => 'Fransk Polynesien',
+ 'PG' => 'Papua Ny Guinea',
+ 'PH' => 'Filippinerne',
+ 'PK' => 'Pakistan',
+ 'PL' => 'Polen',
+ 'PM' => 'Saint Pierre og Miquelon',
+ 'PN' => 'Pitcairn',
+ 'PR' => 'Puerto Rico',
+ 'PS' => 'Palæstina',
+ 'PT' => 'Portugal',
+ 'PW' => 'Palau',
+ 'PY' => 'Paraguay',
+ 'QA' => 'Qatar',
+ 'QO' => 'Ydre Oceanien',
+ 'RE' => 'Réunion',
+ 'RO' => 'Rumænien',
+ 'RS' => 'Serbien',
+ 'RU' => 'Rusland',
+ 'RW' => 'Rwanda',
+ 'SA' => 'Saudi-Arabien',
+ 'SB' => 'Salomonøerne',
+ 'SC' => 'Seychellerne',
+ 'SD' => 'Sudan',
+ 'SE' => 'Sverige',
+ 'SG' => 'Singapore',
+ 'SH' => 'St. Helena',
+ 'SI' => 'Slovenien',
+ 'SJ' => 'Svalbard og Jan Mayen',
+ 'SK' => 'Slovakiet',
+ 'SL' => 'Sierra Leone',
+ 'SM' => 'San Marino',
+ 'SN' => 'Senegal',
+ 'SO' => 'Somalia',
+ 'SR' => 'Surinam',
+ 'SS' => 'Sydsudan',
+ 'ST' => 'Sao Tome og Principe',
+ 'SV' => 'El Salvador',
+ 'SX' => 'Sint Maarten',
+ 'SY' => 'Syrien',
+ 'SZ' => 'Swaziland',
+ 'TA' => 'Tristan da Cunha',
+ 'TC' => 'Turks- og Caicosøerne',
+ 'TD' => 'Tchad',
+ 'TF' => 'De franske besiddelser i Det Sydlige Indiske Ocean',
+ 'TG' => 'Togo',
+ 'TH' => 'Thailand',
+ 'TJ' => 'Tadsjikistan',
+ 'TK' => 'Tokelau',
+ 'TL' => 'Timor-Leste',
+ 'TM' => 'Turkmenistan',
+ 'TN' => 'Tunesien',
+ 'TO' => 'Tonga',
+ 'TR' => 'Tyrkiet',
+ 'TT' => 'Trinidad og Tobago',
+ 'TV' => 'Tuvalu',
+ 'TW' => 'Taiwan',
+ 'TZ' => 'Tanzania',
+ 'UA' => 'Ukraine',
+ 'UG' => 'Uganda',
+ 'UM' => 'Amerikanske oversøiske øer',
+ 'US' => 'USA',
+ 'UY' => 'Uruguay',
+ 'UZ' => 'Usbekistan',
+ 'VA' => 'Vatikanstaten',
+ 'VC' => 'Saint Vincent og Grenadinerne',
+ 'VE' => 'Venezuela',
+ 'VG' => 'De Britiske Jomfruøer',
+ 'VI' => 'De Amerikanske Jomfruøer',
+ 'VN' => 'Vietnam',
+ 'VU' => 'Vanuatu',
+ 'WF' => 'Wallis og Futuna',
+ 'WS' => 'Samoa',
+ 'XK' => 'Kosovo',
+ 'YE' => 'Yemen',
+ 'YT' => 'Mayotte',
+ 'ZA' => 'Sydafrika',
+ 'ZM' => 'Zambia',
+ 'ZW' => 'Zimbabwe',
+);
+
+$timeUnits = array(
+ 'day-future-one' => 'om {0} dag',
+ 'day-future-other' => 'om {0} dage',
+ 'day-narrow-future-one' => 'om {0} dag',
+ 'day-narrow-future-other' => 'om {0} dage',
+ 'day-narrow-past-one' => 'for {0} dag siden',
+ 'day-narrow-past-other' => 'for {0} dage siden',
+ 'day-one' => '{0} dag',
+ 'day-other' => '{0} dage',
+ 'day-past-one' => 'for {0} dag siden',
+ 'day-past-other' => 'for {0} dage siden',
+ 'day-short-future-one' => 'om {0} dag',
+ 'day-short-future-other' => 'om {0} dage',
+ 'day-short-past-one' => 'for {0} dag siden',
+ 'day-short-past-other' => 'for {0} dage siden',
+ 'hour-future-one' => 'om {0} time',
+ 'hour-future-other' => 'om {0} timer',
+ 'hour-narrow-future-one' => 'om {0} time',
+ 'hour-narrow-future-other' => 'om {0} timer',
+ 'hour-narrow-past-one' => 'for {0} time siden',
+ 'hour-narrow-past-other' => 'for {0} timer siden',
+ 'hour-one' => '{0} time',
+ 'hour-other' => '{0} timer',
+ 'hour-past-one' => 'for {0} time siden',
+ 'hour-past-other' => 'for {0} timer siden',
+ 'hour-short-future-one' => 'om {0} time',
+ 'hour-short-future-other' => 'om {0} timer',
+ 'hour-short-past-one' => 'for {0} time siden',
+ 'hour-short-past-other' => 'for {0} timer siden',
+ 'microsecond-one' => '{0} mikrosekund',
+ 'microsecond-other' => '{0} mikrosekunder',
+ 'millisecond-one' => '{0} millisekund',
+ 'millisecond-other' => '{0} millisekunder',
+ 'minute-future-one' => 'om {0} minut',
+ 'minute-future-other' => 'om {0} minutter',
+ 'minute-narrow-future-one' => 'om {0} min.',
+ 'minute-narrow-future-other' => 'om {0} min.',
+ 'minute-narrow-past-one' => 'for {0} min. siden',
+ 'minute-narrow-past-other' => 'for {0} min. siden',
+ 'minute-one' => '{0} minut',
+ 'minute-other' => '{0} minutter',
+ 'minute-past-one' => 'for {0} minut siden',
+ 'minute-past-other' => 'for {0} minutter siden',
+ 'minute-short-future-one' => 'om {0} min.',
+ 'minute-short-future-other' => 'om {0} min.',
+ 'minute-short-past-one' => 'for {0} min. siden',
+ 'minute-short-past-other' => 'for {0} min. siden',
+ 'month-future-one' => 'om {0} måned',
+ 'month-future-other' => 'om {0} måneder',
+ 'month-narrow-future-one' => 'om {0} md.',
+ 'month-narrow-future-other' => 'om {0} md.',
+ 'month-narrow-past-one' => 'for {0} md. siden',
+ 'month-narrow-past-other' => 'for {0} md. siden',
+ 'month-one' => '{0} måned',
+ 'month-other' => '{0} måneder',
+ 'month-past-one' => 'for {0} måned siden',
+ 'month-past-other' => 'for {0} måneder siden',
+ 'month-short-future-one' => 'om {0} md.',
+ 'month-short-future-other' => 'om {0} md.',
+ 'month-short-past-one' => 'for {0} md. siden',
+ 'month-short-past-other' => 'for {0} md. siden',
+ 'nanosecond-one' => '{0} nanosekund',
+ 'nanosecond-other' => '{0} nanosekunder',
+ 'quarter-future-one' => 'om {0} kvartal',
+ 'quarter-future-other' => 'om {0} kvartaler',
+ 'quarter-narrow-future-one' => 'om {0} kvt.',
+ 'quarter-narrow-future-other' => 'om {0} kvt.',
+ 'quarter-narrow-past-one' => 'for {0} kvt. siden',
+ 'quarter-narrow-past-other' => 'for {0} kvt. siden',
+ 'quarter-past-one' => 'for {0} kvartal siden',
+ 'quarter-past-other' => 'for {0} kvartaler siden',
+ 'quarter-short-future-one' => 'om {0} kvt.',
+ 'quarter-short-future-other' => 'om {0} kvt.',
+ 'quarter-short-past-one' => 'for {0} kvt. siden',
+ 'quarter-short-past-other' => 'for {0} kvt. siden',
+ 'second-future-one' => 'om {0} sekund',
+ 'second-future-other' => 'om {0} sekunder',
+ 'second-narrow-future-one' => 'om {0} sek.',
+ 'second-narrow-future-other' => 'om {0} sek.',
+ 'second-narrow-past-one' => 'for {0} sek. siden',
+ 'second-narrow-past-other' => 'for {0} sek. siden',
+ 'second-one' => '{0} sekund',
+ 'second-other' => '{0} sekunder',
+ 'second-past-one' => 'for {0} sekund siden',
+ 'second-past-other' => 'for {0} sekunder siden',
+ 'second-short-future-one' => 'om {0} sek.',
+ 'second-short-future-other' => 'om {0} sek.',
+ 'second-short-past-one' => 'for {0} sek. siden',
+ 'second-short-past-other' => 'for {0} sek. siden',
+ 'week-future-one' => 'om {0} uge',
+ 'week-future-other' => 'om {0} uger',
+ 'week-narrow-future-one' => 'om {0} uge',
+ 'week-narrow-future-other' => 'om {0} uger',
+ 'week-narrow-past-one' => 'for {0} uge siden',
+ 'week-narrow-past-other' => 'for {0} uger siden',
+ 'week-one' => '{0} uge',
+ 'week-other' => '{0} uger',
+ 'week-past-one' => 'for {0} uge siden',
+ 'week-past-other' => 'for {0} uger siden',
+ 'week-short-future-one' => 'om {0} uge',
+ 'week-short-future-other' => 'om {0} uger',
+ 'week-short-past-one' => 'for {0} uge siden',
+ 'week-short-past-other' => 'for {0} uger siden',
+ 'year-future-one' => 'om {0} år',
+ 'year-future-other' => 'om {0} år',
+ 'year-narrow-future-one' => 'om {0} år',
+ 'year-narrow-future-other' => 'om {0} år',
+ 'year-narrow-past-one' => 'for {0} år siden',
+ 'year-narrow-past-other' => 'for {0} år siden',
+ 'year-one' => '{0} år',
+ 'year-other' => '{0} år',
+ 'year-past-one' => 'for {0} år siden',
+ 'year-past-other' => 'for {0} år siden',
+ 'year-short-future-one' => 'om {0} år',
+ 'year-short-future-other' => 'om {0} år',
+ 'year-short-past-one' => 'for {0} år siden',
+ 'year-short-past-other' => 'for {0} år siden',
+);
diff --git a/MLEB/cldr/CldrNames/CldrNamesDe.php b/MLEB/cldr/CldrNames/CldrNamesDe.php
new file mode 100644
index 00000000..142a2b21
--- /dev/null
+++ b/MLEB/cldr/CldrNames/CldrNamesDe.php
@@ -0,0 +1,1582 @@
+<?php
+
+$languageNames = array(
+ 'aa' => 'Afar',
+ 'ab' => 'Abchasisch',
+ 'ace' => 'Aceh-Sprache',
+ 'ach' => 'Acholi-Sprache',
+ 'ada' => 'Adangme',
+ 'ady' => 'Adygeisch',
+ 'ae' => 'Avestisch',
+ 'aeb' => 'Tunesisches Arabisch',
+ 'af' => 'Afrikaans',
+ 'afh' => 'Afrihili',
+ 'agq' => 'Aghem',
+ 'ain' => 'Ainu-Sprache',
+ 'ak' => 'Akan',
+ 'akk' => 'Akkadisch',
+ 'akz' => 'Alabama',
+ 'ale' => 'Aleutisch',
+ 'aln' => 'Gegisch',
+ 'alt' => 'Süd-Altaisch',
+ 'am' => 'Amharisch',
+ 'an' => 'Aragonesisch',
+ 'ang' => 'Altenglisch',
+ 'anp' => 'Angika',
+ 'ar' => 'Arabisch',
+ 'ar-001' => 'Modernes Hocharabisch',
+ 'arc' => 'Aramäisch',
+ 'arn' => 'Araukanisch',
+ 'aro' => 'Araona',
+ 'arp' => 'Arapaho-Sprache',
+ 'arq' => 'Algerisches Arabisch',
+ 'arw' => 'Arawak-Sprache',
+ 'ary' => 'Marokkanisches Arabisch',
+ 'arz' => 'Ägyptisches Arabisch',
+ 'as' => 'Assamesisch',
+ 'asa' => 'Pare',
+ 'ase' => 'Amerikanische Gebärdensprache',
+ 'ast' => 'Asturianisch',
+ 'av' => 'Awarisch',
+ 'avk' => 'Kotava',
+ 'awa' => 'Awadhi',
+ 'ay' => 'Aymara',
+ 'az' => 'Aserbaidschanisch',
+ 'azb' => 'Südaserbaidschanisch',
+ 'ba' => 'Baschkirisch',
+ 'bal' => 'Belutschisch',
+ 'ban' => 'Balinesisch',
+ 'bar' => 'Bairisch',
+ 'bas' => 'Basaa-Sprache',
+ 'bax' => 'Bamun',
+ 'bbc' => 'Batak Toba',
+ 'bbj' => 'Ghomala',
+ 'be' => 'Weißrussisch',
+ 'bej' => 'Bedauye',
+ 'bem' => 'Bemba-Sprache',
+ 'bew' => 'Betawi',
+ 'bez' => 'Bena',
+ 'bfd' => 'Bafut',
+ 'bfq' => 'Badaga',
+ 'bg' => 'Bulgarisch',
+ 'bho' => 'Bhodschpuri',
+ 'bi' => 'Bislama',
+ 'bik' => 'Bikol-Sprache',
+ 'bin' => 'Bini-Sprache',
+ 'bjn' => 'Banjaresisch',
+ 'bkm' => 'Kom',
+ 'bla' => 'Blackfoot-Sprache',
+ 'bm' => 'Bambara-Sprache',
+ 'bn' => 'Bengalisch',
+ 'bo' => 'Tibetisch',
+ 'bpy' => 'Bishnupriya',
+ 'bqi' => 'Bachtiarisch',
+ 'br' => 'Bretonisch',
+ 'bra' => 'Braj-Bhakha',
+ 'brh' => 'Brahui',
+ 'brx' => 'Bodo',
+ 'bs' => 'Bosnisch',
+ 'bss' => 'Akoose',
+ 'bua' => 'Burjatisch',
+ 'bug' => 'Buginesisch',
+ 'bum' => 'Bulu',
+ 'byn' => 'Blin',
+ 'byv' => 'Medumba',
+ 'ca' => 'Katalanisch',
+ 'cad' => 'Caddo',
+ 'car' => 'Karibisch',
+ 'cay' => 'Cayuga',
+ 'cch' => 'Atsam',
+ 'ce' => 'Tschetschenisch',
+ 'ceb' => 'Cebuano',
+ 'cgg' => 'Rukiga',
+ 'ch' => 'Chamorro-Sprache',
+ 'chb' => 'Chibcha-Sprache',
+ 'chg' => 'Tschagataisch',
+ 'chk' => 'Trukesisch',
+ 'chm' => 'Tscheremissisch',
+ 'chn' => 'Chinook',
+ 'cho' => 'Choctaw',
+ 'chp' => 'Chipewyan',
+ 'chr' => 'Cherokee',
+ 'chy' => 'Cheyenne',
+ 'ckb' => 'Sorani',
+ 'co' => 'Korsisch',
+ 'cop' => 'Koptisch',
+ 'cps' => 'Capiznon',
+ 'cr' => 'Cree',
+ 'crh' => 'Krimtatarisch',
+ 'cs' => 'Tschechisch',
+ 'csb' => 'Kaschubisch',
+ 'cu' => 'Kirchenslawisch',
+ 'cv' => 'Tschuwaschisch',
+ 'cy' => 'Walisisch',
+ 'da' => 'Dänisch',
+ 'dak' => 'Dakota-Sprache',
+ 'dar' => 'Darginisch',
+ 'dav' => 'Taita',
+ 'de' => 'Deutsch',
+ 'de-at' => 'Österreichisches Deutsch',
+ 'de-ch' => 'Schweizer Hochdeutsch',
+ 'del' => 'Delaware-Sprache',
+ 'den' => 'Slave',
+ 'dgr' => 'Dogrib',
+ 'din' => 'Dinka-Sprache',
+ 'dje' => 'Zarma',
+ 'doi' => 'Dogri',
+ 'dsb' => 'Niedersorbisch',
+ 'dtp' => 'Zentral-Dusun',
+ 'dua' => 'Duala',
+ 'dum' => 'Mittelniederländisch',
+ 'dv' => 'Maledivisch',
+ 'dyo' => 'Diola',
+ 'dyu' => 'Dyula-Sprache',
+ 'dz' => 'Bhutanisch',
+ 'dzg' => 'Dazaga',
+ 'ebu' => 'Embu',
+ 'ee' => 'Ewe',
+ 'efi' => 'Efik',
+ 'egl' => 'Emilianisch',
+ 'egy' => 'Ägyptisch',
+ 'eka' => 'Ekajuk',
+ 'el' => 'Griechisch',
+ 'elx' => 'Elamisch',
+ 'en' => 'Englisch',
+ 'en-au' => 'Australisches Englisch',
+ 'en-ca' => 'Kanadisches Englisch',
+ 'en-gb' => 'Britisches Englisch',
+ 'en-us' => 'Amerikanisches Englisch',
+ 'enm' => 'Mittelenglisch',
+ 'eo' => 'Esperanto',
+ 'es' => 'Spanisch',
+ 'es-419' => 'Lateinamerikanisches Spanisch',
+ 'es-es' => 'Europäisches Spanisch',
+ 'es-mx' => 'Mexikanisches Spanisch',
+ 'esu' => 'Zentral-Alaska-Yupik',
+ 'et' => 'Estnisch',
+ 'eu' => 'Baskisch',
+ 'ewo' => 'Ewondo',
+ 'ext' => 'Extremadurisch',
+ 'fa' => 'Persisch',
+ 'fan' => 'Pangwe-Sprache',
+ 'fat' => 'Fanti-Sprache',
+ 'ff' => 'Ful',
+ 'fi' => 'Finnisch',
+ 'fil' => 'Filipino',
+ 'fit' => 'Meänkieli',
+ 'fj' => 'Fidschi',
+ 'fo' => 'Färöisch',
+ 'fon' => 'Fon-Sprache',
+ 'fr' => 'Französisch',
+ 'fr-ca' => 'Kanadisches Französisch',
+ 'fr-ch' => 'Schweizer Französisch',
+ 'frc' => 'Cajun',
+ 'frm' => 'Mittelfranzösisch',
+ 'fro' => 'Altfranzösisch',
+ 'frp' => 'Frankoprovenzalisch',
+ 'frr' => 'Nordfriesisch',
+ 'frs' => 'Ostfriesisch',
+ 'fur' => 'Friulisch',
+ 'fy' => 'Westfriesisch',
+ 'ga' => 'Irisch',
+ 'gaa' => 'Ga-Sprache',
+ 'gag' => 'Gagausisch',
+ 'gan' => 'Gan',
+ 'gay' => 'Gayo',
+ 'gba' => 'Gbaya-Sprache',
+ 'gbz' => 'Gabri',
+ 'gd' => 'Schottisches Gälisch',
+ 'gez' => 'Geez',
+ 'gil' => 'Gilbertesisch',
+ 'gl' => 'Galizisch',
+ 'glk' => 'Gilaki',
+ 'gmh' => 'Mittelhochdeutsch',
+ 'gn' => 'Guarani',
+ 'goh' => 'Althochdeutsch',
+ 'gom' => 'Goa-Konkani',
+ 'gon' => 'Gondi-Sprache',
+ 'gor' => 'Mongondou',
+ 'got' => 'Gotisch',
+ 'grb' => 'Grebo-Sprache',
+ 'grc' => 'Altgriechisch',
+ 'gsw' => 'Schweizerdeutsch',
+ 'gu' => 'Gujarati',
+ 'guc' => 'Wayúu',
+ 'gur' => 'Farefare',
+ 'guz' => 'Gusii',
+ 'gv' => 'Manx',
+ 'gwi' => 'Kutchin-Sprache',
+ 'ha' => 'Hausa',
+ 'hai' => 'Haida-Sprache',
+ 'hak' => 'Hakka',
+ 'haw' => 'Hawaiisch',
+ 'he' => 'Hebräisch',
+ 'hi' => 'Hindi',
+ 'hif' => 'Fidschi-Hindi',
+ 'hil' => 'Hiligaynon-Sprache',
+ 'hit' => 'Hethitisch',
+ 'hmn' => 'Miao-Sprache',
+ 'ho' => 'Hiri-Motu',
+ 'hr' => 'Kroatisch',
+ 'hsb' => 'Obersorbisch',
+ 'hsn' => 'Xiang',
+ 'ht' => 'Haitianisch',
+ 'hu' => 'Ungarisch',
+ 'hup' => 'Hupa',
+ 'hy' => 'Armenisch',
+ 'hz' => 'Herero-Sprache',
+ 'ia' => 'Interlingua',
+ 'iba' => 'Iban',
+ 'ibb' => 'Ibibio',
+ 'id' => 'Indonesisch',
+ 'ie' => 'Interlingue',
+ 'ig' => 'Igbo',
+ 'ii' => 'Yi',
+ 'ik' => 'Inupiak',
+ 'ilo' => 'Ilokano-Sprache',
+ 'inh' => 'Inguschisch',
+ 'io' => 'Ido-Sprache',
+ 'is' => 'Isländisch',
+ 'it' => 'Italienisch',
+ 'iu' => 'Inuktitut',
+ 'izh' => 'Ischorisch',
+ 'ja' => 'Japanisch',
+ 'jam' => 'Jamaikanisch-kreolische Sprache',
+ 'jbo' => 'Lojban',
+ 'jgo' => 'Ngomba',
+ 'jmc' => 'Machame',
+ 'jpr' => 'Jüdisch-Persisch',
+ 'jrb' => 'Jüdisch-Arabisch',
+ 'jut' => 'Jütisch',
+ 'jv' => 'Javanisch',
+ 'ka' => 'Georgisch',
+ 'kaa' => 'Karakalpakisch',
+ 'kab' => 'Kabylisch',
+ 'kac' => 'Kachin-Sprache',
+ 'kaj' => 'Jju',
+ 'kam' => 'Kamba',
+ 'kaw' => 'Kawi',
+ 'kbd' => 'Kabardinisch',
+ 'kbl' => 'Kanembu',
+ 'kcg' => 'Tyap',
+ 'kde' => 'Makonde',
+ 'kea' => 'Kabuverdianu',
+ 'ken' => 'Kenyang',
+ 'kfo' => 'Koro',
+ 'kg' => 'Kongolesisch',
+ 'kgp' => 'Kaingang',
+ 'kha' => 'Khasi-Sprache',
+ 'kho' => 'Sakisch',
+ 'khq' => 'Koyra Chiini',
+ 'khw' => 'Khowar',
+ 'ki' => 'Kikuyu',
+ 'kiu' => 'Kirmanjki',
+ 'kj' => 'Kwanyama',
+ 'kk' => 'Kasachisch',
+ 'kkj' => 'Kako',
+ 'kl' => 'Grönländisch',
+ 'kln' => 'Kalenjin',
+ 'km' => 'Kambodschanisch',
+ 'kmb' => 'Kimbundu-Sprache',
+ 'kn' => 'Kannada',
+ 'ko' => 'Koreanisch',
+ 'koi' => 'Komi-Permjakisch',
+ 'kok' => 'Konkani',
+ 'kos' => 'Kosraeanisch',
+ 'kpe' => 'Kpelle-Sprache',
+ 'kr' => 'Kanuri-Sprache',
+ 'krc' => 'Karatschaiisch-Balkarisch',
+ 'kri' => 'Krio',
+ 'krj' => 'Kinaray-a',
+ 'krl' => 'Karelisch',
+ 'kru' => 'Oraon-Sprache',
+ 'ks' => 'Kaschmirisch',
+ 'ksb' => 'Shambala',
+ 'ksf' => 'Bafia',
+ 'ksh' => 'Kölsch',
+ 'ku' => 'Kurdisch',
+ 'kum' => 'Kumükisch',
+ 'kut' => 'Kutenai-Sprache',
+ 'kv' => 'Komi-Sprache',
+ 'kw' => 'Kornisch',
+ 'ky' => 'Kirgisisch',
+ 'la' => 'Latein',
+ 'lad' => 'Ladino',
+ 'lag' => 'Langi',
+ 'lah' => 'Lahnda',
+ 'lam' => 'Lamba-Sprache',
+ 'lb' => 'Luxemburgisch',
+ 'lez' => 'Lesgisch',
+ 'lfn' => 'Lingua Franca Nova',
+ 'lg' => 'Ganda',
+ 'li' => 'Limburgisch',
+ 'lij' => 'Ligurisch',
+ 'liv' => 'Livisch',
+ 'lkt' => 'Lakota',
+ 'lmo' => 'Lombardisch',
+ 'ln' => 'Lingala',
+ 'lo' => 'Laotisch',
+ 'lol' => 'Mongo',
+ 'loz' => 'Rotse-Sprache',
+ 'lt' => 'Litauisch',
+ 'ltg' => 'Lettgallisch',
+ 'lu' => 'Luba-Katanga',
+ 'lua' => 'Luba-Lulua',
+ 'lui' => 'Luiseno-Sprache',
+ 'lun' => 'Lunda-Sprache',
+ 'luo' => 'Luo-Sprache',
+ 'lus' => 'Lushai-Sprache',
+ 'luy' => 'Luhya',
+ 'lv' => 'Lettisch',
+ 'lzh' => 'Klassisches Chinesisch',
+ 'lzz' => 'Lasisch',
+ 'mad' => 'Maduresisch',
+ 'maf' => 'Mafa',
+ 'mag' => 'Khotta',
+ 'mai' => 'Maithili',
+ 'mak' => 'Makassarisch',
+ 'man' => 'Manding-Sprache',
+ 'mas' => 'Massai-Sprache',
+ 'mde' => 'Maba',
+ 'mdf' => 'Moksha',
+ 'mdr' => 'Mandaresisch',
+ 'men' => 'Mende-Sprache',
+ 'mer' => 'Meru',
+ 'mfe' => 'Morisyen',
+ 'mg' => 'Madagassisch',
+ 'mga' => 'Mittelirisch',
+ 'mgh' => 'Makhuwa-Meetto',
+ 'mgo' => 'Meta’',
+ 'mh' => 'Marschallesisch',
+ 'mi' => 'Maori',
+ 'mic' => 'Micmac-Sprache',
+ 'min' => 'Minangkabau-Sprache',
+ 'mk' => 'Mazedonisch',
+ 'ml' => 'Malayalam',
+ 'mn' => 'Mongolisch',
+ 'mnc' => 'Mandschurisch',
+ 'mni' => 'Meithei-Sprache',
+ 'moh' => 'Mohawk',
+ 'mos' => 'Mossi-Sprache',
+ 'mr' => 'Marathi',
+ 'mrj' => 'Bergmari',
+ 'ms' => 'Malaiisch',
+ 'mt' => 'Maltesisch',
+ 'mua' => 'Mundang',
+ 'mul' => 'Mehrsprachig',
+ 'mus' => 'Muskogee-Sprache',
+ 'mwl' => 'Mirandesisch',
+ 'mwr' => 'Marwari',
+ 'mwv' => 'Mentawai',
+ 'my' => 'Birmanisch',
+ 'mye' => 'Myene',
+ 'myv' => 'Ersja-Mordwinisch',
+ 'mzn' => 'Masanderanisch',
+ 'na' => 'Nauruisch',
+ 'nan' => 'Min Nan',
+ 'nap' => 'Neapolitanisch',
+ 'naq' => 'Nama',
+ 'nb' => 'Norwegisch Bokmål',
+ 'nd' => 'Nord-Ndebele-Sprache',
+ 'nds' => 'Niederdeutsch',
+ 'ne' => 'Nepalesisch',
+ 'new' => 'Newari',
+ 'ng' => 'Ndonga',
+ 'nia' => 'Nias-Sprache',
+ 'niu' => 'Niue-Sprache',
+ 'njo' => 'Ao-Naga',
+ 'nl' => 'Niederländisch',
+ 'nl-be' => 'Flämisch',
+ 'nmg' => 'Kwasio',
+ 'nn' => 'Norwegisch Nynorsk',
+ 'nnh' => 'Ngiemboon',
+ 'no' => 'Norwegisch',
+ 'nog' => 'Nogai',
+ 'non' => 'Altnordisch',
+ 'nov' => 'Novial',
+ 'nqo' => 'N’Ko',
+ 'nr' => 'Süd-Ndebele-Sprache',
+ 'nso' => 'Nord-Sotho-Sprache',
+ 'nus' => 'Nuer',
+ 'nv' => 'Navajo',
+ 'nwc' => 'Alt-Newari',
+ 'ny' => 'Nyanja-Sprache',
+ 'nym' => 'Nyamwezi-Sprache',
+ 'nyn' => 'Nyankole',
+ 'nyo' => 'Nyoro',
+ 'nzi' => 'Nzima',
+ 'oc' => 'Okzitanisch',
+ 'oj' => 'Ojibwa-Sprache',
+ 'om' => 'Oromo',
+ 'or' => 'Oriya',
+ 'os' => 'Ossetisch',
+ 'osa' => 'Osage-Sprache',
+ 'ota' => 'Osmanisch',
+ 'pa' => 'Panjabi',
+ 'pag' => 'Pangasinan-Sprache',
+ 'pal' => 'Mittelpersisch',
+ 'pam' => 'Pampanggan-Sprache',
+ 'pap' => 'Papiamento',
+ 'pau' => 'Palau',
+ 'pcd' => 'Picardisch',
+ 'pdc' => 'Pennsylvaniadeutsch',
+ 'pdt' => 'Plautdietsch',
+ 'peo' => 'Altpersisch',
+ 'pfl' => 'Pfälzisch',
+ 'phn' => 'Phönikisch',
+ 'pi' => 'Pali',
+ 'pl' => 'Polnisch',
+ 'pms' => 'Piemontesisch',
+ 'pnt' => 'Pontisch',
+ 'pon' => 'Ponapeanisch',
+ 'prg' => 'Altpreußisch',
+ 'pro' => 'Altprovenzalisch',
+ 'ps' => 'Paschtu',
+ 'pt' => 'Portugiesisch',
+ 'pt-br' => 'Brasilianisches Portugiesisch',
+ 'pt-pt' => 'Europäisches Portugiesisch',
+ 'qu' => 'Quechua',
+ 'quc' => 'K’iche’',
+ 'qug' => 'Chimborazo Hochland-Quechua',
+ 'raj' => 'Rajasthani',
+ 'rap' => 'Osterinsel-Sprache',
+ 'rar' => 'Rarotonganisch',
+ 'rgn' => 'Romagnol',
+ 'rif' => 'Tarifit',
+ 'rm' => 'Rätoromanisch',
+ 'rn' => 'Rundi-Sprache',
+ 'ro' => 'Rumänisch',
+ 'ro-md' => 'Moldauisch',
+ 'rof' => 'Rombo',
+ 'rom' => 'Romani',
+ 'rtm' => 'Rotumanisch',
+ 'ru' => 'Russisch',
+ 'rue' => 'Russinisch',
+ 'rug' => 'Roviana',
+ 'rup' => 'Aromunisch',
+ 'rw' => 'Ruandisch',
+ 'rwk' => 'Rwa',
+ 'sa' => 'Sanskrit',
+ 'sad' => 'Sandawe-Sprache',
+ 'sah' => 'Jakutisch',
+ 'sam' => 'Samaritanisch',
+ 'saq' => 'Samburu',
+ 'sas' => 'Sasak',
+ 'sat' => 'Santali',
+ 'saz' => 'Saurashtra',
+ 'sba' => 'Ngambay',
+ 'sbp' => 'Sangu',
+ 'sc' => 'Sardisch',
+ 'scn' => 'Sizilianisch',
+ 'sco' => 'Schottisch',
+ 'sd' => 'Sindhi',
+ 'sdc' => 'Sassarisch',
+ 'se' => 'Nord-Samisch',
+ 'see' => 'Seneca',
+ 'seh' => 'Sena',
+ 'sei' => 'Seri',
+ 'sel' => 'Selkupisch',
+ 'ses' => 'Koyra Senni',
+ 'sg' => 'Sango',
+ 'sga' => 'Altirisch',
+ 'sgs' => 'Samogitisch',
+ 'sh' => 'Serbo-Kroatisch',
+ 'shi' => 'Taschelhit',
+ 'shn' => 'Schan-Sprache',
+ 'shu' => 'Tschadisch-Arabisch',
+ 'si' => 'Singhalesisch',
+ 'sid' => 'Sidamo',
+ 'sk' => 'Slowakisch',
+ 'sl' => 'Slowenisch',
+ 'sli' => 'Schlesisch',
+ 'sly' => 'Selayar',
+ 'sm' => 'Samoanisch',
+ 'sma' => 'Süd-Samisch',
+ 'smj' => 'Lule-Lappisch',
+ 'smn' => 'Inari-Lappisch',
+ 'sms' => 'Skolt-Lappisch',
+ 'sn' => 'Shona',
+ 'snk' => 'Soninke-Sprache',
+ 'so' => 'Somali',
+ 'sog' => 'Sogdisch',
+ 'sq' => 'Albanisch',
+ 'sr' => 'Serbisch',
+ 'srn' => 'Srananisch',
+ 'srr' => 'Serer-Sprache',
+ 'ss' => 'Swazi',
+ 'ssy' => 'Saho',
+ 'st' => 'Süd-Sotho-Sprache',
+ 'stq' => 'Saterfriesisch',
+ 'su' => 'Sundanesisch',
+ 'suk' => 'Sukuma-Sprache',
+ 'sus' => 'Susu',
+ 'sux' => 'Sumerisch',
+ 'sv' => 'Schwedisch',
+ 'sw' => 'Suaheli',
+ 'swb' => 'Komorisch',
+ 'swc' => 'Kongo-Suaheli',
+ 'syc' => 'Altsyrisch',
+ 'syr' => 'Syrisch',
+ 'szl' => 'Schlesisch (Polen)',
+ 'ta' => 'Tamilisch',
+ 'tcy' => 'Tulu',
+ 'te' => 'Telugu',
+ 'tem' => 'Temne',
+ 'teo' => 'Teso',
+ 'ter' => 'Tereno-Sprache',
+ 'tet' => 'Tetum-Sprache',
+ 'tg' => 'Tadschikisch',
+ 'th' => 'Thailändisch',
+ 'ti' => 'Tigrinja',
+ 'tig' => 'Tigre',
+ 'tiv' => 'Tiv-Sprache',
+ 'tk' => 'Turkmenisch',
+ 'tkl' => 'Tokelauanisch',
+ 'tkr' => 'Tsachurisch',
+ 'tl' => 'Tagalog',
+ 'tlh' => 'Klingonisch',
+ 'tli' => 'Tlingit-Sprache',
+ 'tly' => 'Talisch',
+ 'tmh' => 'Tamaseq',
+ 'tn' => 'Tswana-Sprache',
+ 'to' => 'Tongaisch',
+ 'tog' => 'Tsonga-Sprache',
+ 'tpi' => 'Neumelanesisch',
+ 'tr' => 'Türkisch',
+ 'tru' => 'Turoyo',
+ 'trv' => 'Taroko',
+ 'ts' => 'Tsonga',
+ 'tsd' => 'Tsakonisch',
+ 'tsi' => 'Tsimshian-Sprache',
+ 'tt' => 'Tatarisch',
+ 'ttt' => 'Tatisch',
+ 'tum' => 'Tumbuka-Sprache',
+ 'tvl' => 'Elliceanisch',
+ 'tw' => 'Twi',
+ 'twq' => 'Tasawaq',
+ 'ty' => 'Tahitisch',
+ 'tyv' => 'Tuwinisch',
+ 'tzm' => 'Zentralatlas-Tamazight',
+ 'udm' => 'Udmurtisch',
+ 'ug' => 'Uigurisch',
+ 'uga' => 'Ugaritisch',
+ 'uk' => 'Ukrainisch',
+ 'umb' => 'Mbundu-Sprache',
+ 'und' => 'Unbestimmte Sprache',
+ 'ur' => 'Urdu',
+ 'uz' => 'Usbekisch',
+ 'vai' => 'Vai',
+ 've' => 'Venda-Sprache',
+ 'vec' => 'Venetisch',
+ 'vep' => 'Wepsisch',
+ 'vi' => 'Vietnamesisch',
+ 'vls' => 'Westflämisch',
+ 'vmf' => 'Mainfränkisch',
+ 'vo' => 'Volapük',
+ 'vot' => 'Wotisch',
+ 'vro' => 'Võro',
+ 'vun' => 'Vunjo',
+ 'wa' => 'Wallonisch',
+ 'wae' => 'Walser-Dialekte',
+ 'wal' => 'Walamo-Sprache',
+ 'war' => 'Waray',
+ 'was' => 'Washo-Sprache',
+ 'wo' => 'Wolof',
+ 'wuu' => 'Wu',
+ 'xal' => 'Kalmückisch',
+ 'xh' => 'Xhosa',
+ 'xmf' => 'Mingrelisch',
+ 'xog' => 'Soga',
+ 'yao' => 'Yao-Sprache',
+ 'yap' => 'Yapesisch',
+ 'yav' => 'Yangben',
+ 'ybb' => 'Yemba',
+ 'yi' => 'Jiddisch',
+ 'yo' => 'Yoruba',
+ 'yrl' => 'Nheengatu',
+ 'yue' => 'Kantonesisch',
+ 'za' => 'Zhuang',
+ 'zap' => 'Zapotekisch',
+ 'zbl' => 'Bliss-Symbole',
+ 'zea' => 'Seeländisch',
+ 'zen' => 'Zenaga',
+ 'zgh' => 'Tamazight',
+ 'zh' => 'Chinesisch',
+ 'zh-hans' => 'Chinesisch (vereinfacht)',
+ 'zh-hant' => 'Chinesisch (traditionell)',
+ 'zu' => 'Zulu',
+ 'zun' => 'Zuni-Sprache',
+ 'zxx' => 'Keine Sprachinhalte',
+ 'zza' => 'Zaza',
+);
+
+$currencyNames = array(
+ 'ADP' => 'Andorranische Pesete',
+ 'AED' => 'VAE-Dirham',
+ 'AFA' => 'Afghanische Afghani (1927–2002)',
+ 'AFN' => 'Afghanischer Afghani',
+ 'ALK' => 'Albanischer Lek (1946–1965)',
+ 'ALL' => 'Albanischer Lek',
+ 'AMD' => 'Armenischer Dram',
+ 'ANG' => 'Niederländische-Antillen-Gulden',
+ 'AOA' => 'Angolanischer Kwanza',
+ 'AOK' => 'Angolanischer Kwanza (1977–1990)',
+ 'AON' => 'Angolanischer Neuer Kwanza (1990–2000)',
+ 'AOR' => 'Angolanischer Kwanza Reajustado (1995–1999)',
+ 'ARA' => 'Argentinischer Austral',
+ 'ARL' => 'Argentinischer Peso Ley (1970–1983)',
+ 'ARM' => 'Argentinischer Peso (1881–1970)',
+ 'ARP' => 'Argentinischer Peso (1983–1985)',
+ 'ARS' => 'Argentinischer Peso',
+ 'ATS' => 'Österreichischer Schilling',
+ 'AUD' => 'Australischer Dollar',
+ 'AWG' => 'Aruba-Florin',
+ 'AZM' => 'Aserbaidschan-Manat (1993–2006)',
+ 'AZN' => 'Aserbaidschan-Manat',
+ 'BAD' => 'Bosnien und Herzegowina Dinar (1992–1994)',
+ 'BAM' => 'Bosnien und Herzegowina Konvertierbare Mark',
+ 'BAN' => 'Bosnien und Herzegowina Neuer Dinar (1994–1997)',
+ 'BBD' => 'Barbados-Dollar',
+ 'BDT' => 'Bangladesch-Taka',
+ 'BEC' => 'Belgischer Franc (konvertibel)',
+ 'BEF' => 'Belgischer Franc',
+ 'BEL' => 'Belgischer Finanz-Franc',
+ 'BGL' => 'Bulgarische Lew (1962–1999)',
+ 'BGM' => 'Bulgarischer Lew (1952–1962)',
+ 'BGN' => 'Bulgarischer Lew',
+ 'BGO' => 'Bulgarischer Lew (1879–1952)',
+ 'BHD' => 'Bahrain-Dinar',
+ 'BIF' => 'Burundi-Franc',
+ 'BMD' => 'Bermuda-Dollar',
+ 'BND' => 'Brunei-Dollar',
+ 'BOB' => 'Bolivanischer Boliviano',
+ 'BOL' => 'Bolivianischer Boliviano (1863–1963)',
+ 'BOP' => 'Bolivianischer Peso',
+ 'BOV' => 'Boliviansiche Mvdol',
+ 'BRB' => 'Brasilianischer Cruzeiro Novo (1967–1986)',
+ 'BRC' => 'Brasilianischer Cruzado (1986–1989)',
+ 'BRE' => 'Brasilianischer Cruzeiro (1990–1993)',
+ 'BRL' => 'Brasilianischer Real',
+ 'BRN' => 'Brasilianischer Cruzado Novo (1989–1990)',
+ 'BRR' => 'Brasilianischer Cruzeiro (1993–1994)',
+ 'BRZ' => 'Brasilianischer Cruzeiro (1942–1967)',
+ 'BSD' => 'Bahamas-Dollar',
+ 'BTN' => 'Bhutan-Ngultrum',
+ 'BUK' => 'Birmanischer Kyat',
+ 'BWP' => 'Botswanischer Pula',
+ 'BYB' => 'Belarus-Rubel (1994–1999)',
+ 'BYR' => 'Weißrussischer Rubel',
+ 'BZD' => 'Belize-Dollar',
+ 'CAD' => 'Kanadischer Dollar',
+ 'CDF' => 'Kongo-Franc',
+ 'CHE' => 'WIR-Euro',
+ 'CHF' => 'Schweizer Franken',
+ 'CHW' => 'WIR Franken',
+ 'CLE' => 'Chilenischer Escudo',
+ 'CLF' => 'Chilenische Unidades de Fomento',
+ 'CLP' => 'Chilenischer Peso',
+ 'CNX' => 'Dollar der Chinesischen Volksbank',
+ 'CNY' => 'Renminbi Yuan',
+ 'COP' => 'Kolumbianischer Peso',
+ 'COU' => 'Kolumbianische Unidades de valor real',
+ 'CRC' => 'Costa-Rica-Colón',
+ 'CSD' => 'Serbischer Dinar (2002–2006)',
+ 'CSK' => 'Tschechoslowakische Krone',
+ 'CUC' => 'Kubanischer Peso (konvertibel)',
+ 'CUP' => 'Kubanischer Peso',
+ 'CVE' => 'Kap-Verde-Escudo',
+ 'CYP' => 'Zypern-Pfund',
+ 'CZK' => 'Tschechische Krone',
+ 'DDM' => 'Mark der DDR',
+ 'DEM' => 'Deutsche Mark',
+ 'DJF' => 'Dschibuti-Franc',
+ 'DKK' => 'Dänische Krone',
+ 'DOP' => 'Dominikanischer Peso',
+ 'DZD' => 'Algerischer Dinar',
+ 'ECS' => 'Ecuadorianischer Sucre',
+ 'ECV' => 'Verrechnungseinheit für Ecuador',
+ 'EEK' => 'Estnische Krone',
+ 'EGP' => 'Ägyptisches Pfund',
+ 'ERN' => 'Eritreischer Nakfa',
+ 'ESA' => 'Spanische Peseta (A–Konten)',
+ 'ESB' => 'Spanische Peseta (konvertibel)',
+ 'ESP' => 'Spanische Peseta',
+ 'ETB' => 'Äthiopischer Birr',
+ 'EUR' => 'Euro',
+ 'FIM' => 'Finnische Mark',
+ 'FJD' => 'Fidschi-Dollar',
+ 'FKP' => 'Falkland-Pfund',
+ 'FRF' => 'Französischer Franc',
+ 'GBP' => 'Britisches Pfund Sterling',
+ 'GEK' => 'Georgischer Kupon Larit',
+ 'GEL' => 'Georgischer Lari',
+ 'GHC' => 'Ghanaischer Cedi (1979–2007)',
+ 'GHS' => 'Ghanaischer Cedi',
+ 'GIP' => 'Gibraltar-Pfund',
+ 'GMD' => 'Gambia-Dalasi',
+ 'GNF' => 'Guinea-Franc',
+ 'GNS' => 'Guineischer Syli',
+ 'GQE' => 'Äquatorialguinea-Ekwele',
+ 'GRD' => 'Griechische Drachme',
+ 'GTQ' => 'Guatemaltekischer Quetzal',
+ 'GWE' => 'Portugiesisch Guinea Escudo',
+ 'GWP' => 'Guinea-Bissau Peso',
+ 'GYD' => 'Guyana-Dollar',
+ 'HKD' => 'Hongkong-Dollar',
+ 'HNL' => 'Honduras-Lempira',
+ 'HRD' => 'Kroatischer Dinar',
+ 'HRK' => 'Kroatischer Kuna',
+ 'HTG' => 'Haitianische Gourde',
+ 'HUF' => 'Ungarischer Forint',
+ 'IDR' => 'Indonesische Rupiah',
+ 'IEP' => 'Irisches Pfund',
+ 'ILP' => 'Israelisches Pfund',
+ 'ILR' => 'Israelischer Schekel (1980–1985)',
+ 'ILS' => 'Israelischer Neuer Schekel',
+ 'INR' => 'Indische Rupie',
+ 'IQD' => 'Irakischer Dinar',
+ 'IRR' => 'Iranischer Rial',
+ 'ISJ' => 'Isländische Krone (1918–1981)',
+ 'ISK' => 'Isländische Krone',
+ 'ITL' => 'Italienische Lira',
+ 'JMD' => 'Jamaika-Dollar',
+ 'JOD' => 'Jordanischer Dinar',
+ 'JPY' => 'Japanischer Yen',
+ 'KES' => 'Kenia-Schilling',
+ 'KGS' => 'Kirgisischer Som',
+ 'KHR' => 'Kambodschanischer Riel',
+ 'KMF' => 'Komoren-Franc',
+ 'KPW' => 'Nordkoreanischer Won',
+ 'KRH' => 'Südkoreanischer Hwan (1953–1962)',
+ 'KRO' => 'Südkoreanischer Won (1945–1953)',
+ 'KRW' => 'Südkoreanischer Won',
+ 'KWD' => 'Kuwait-Dinar',
+ 'KYD' => 'Kaiman-Dollar',
+ 'KZT' => 'Kasachischer Tenge',
+ 'LAK' => 'Laotischer Kip',
+ 'LBP' => 'Libanesisches Pfund',
+ 'LKR' => 'Sri-Lanka-Rupie',
+ 'LRD' => 'Liberianischer Dollar',
+ 'LSL' => 'Loti',
+ 'LTL' => 'Litauischer Litas',
+ 'LTT' => 'Litauischer Talonas',
+ 'LUC' => 'Luxemburgischer Franc (konvertibel)',
+ 'LUF' => 'Luxemburgischer Franc',
+ 'LUL' => 'Luxemburgischer Finanz-Franc',
+ 'LVL' => 'Lettischer Lats',
+ 'LVR' => 'Lettischer Rubel',
+ 'LYD' => 'Libyscher Dinar',
+ 'MAD' => 'Marokkanischer Dirham',
+ 'MAF' => 'Marokkanischer Franc',
+ 'MCF' => 'Monegassischer Franc',
+ 'MDC' => 'Moldau-Cupon',
+ 'MDL' => 'Moldau-Leu',
+ 'MGA' => 'Madagaskar-Ariary',
+ 'MGF' => 'Madagaskar-Franc',
+ 'MKD' => 'Mazedonischer Denar',
+ 'MKN' => 'Mazedonischer Denar (1992–1993)',
+ 'MLF' => 'Malischer Franc',
+ 'MMK' => 'Myanmarischer Kyat',
+ 'MNT' => 'Mongolischer Tögrög',
+ 'MOP' => 'Macao-Pataca',
+ 'MRO' => 'Mauretanischer Ouguiya',
+ 'MTL' => 'Maltesische Lira',
+ 'MTP' => 'Maltesisches Pfund',
+ 'MUR' => 'Mauritius-Rupie',
+ 'MVP' => 'Malediven-Rupie (alt)',
+ 'MVR' => 'Malediven-Rufiyaa',
+ 'MWK' => 'Malawi-Kwacha',
+ 'MXN' => 'Mexikanischer Peso',
+ 'MXP' => 'Mexikanischer Silber-Peso (1861–1992)',
+ 'MXV' => 'Mexicanischer Unidad de Inversion (UDI)',
+ 'MYR' => 'Malaysischer Ringgit',
+ 'MZE' => 'Mosambikanischer Escudo',
+ 'MZM' => 'Mosambikanischer Metical (1980–2006)',
+ 'MZN' => 'Mosambikanischer Metical',
+ 'NAD' => 'Namibia-Dollar',
+ 'NGN' => 'Nigerianischer Naira',
+ 'NIC' => 'Nicaraguanischer Córdoba (1988–1991)',
+ 'NIO' => 'Nicaragua-Córdoba',
+ 'NLG' => 'Niederländischer Gulden',
+ 'NOK' => 'Norwegische Krone',
+ 'NPR' => 'Nepalesische Rupie',
+ 'NZD' => 'Neuseeland-Dollar',
+ 'OMR' => 'Omanischer Rial',
+ 'PAB' => 'Panamaischer Balboa',
+ 'PEI' => 'Peruanischer Inti',
+ 'PEN' => 'Peruanischer Neuer Sol',
+ 'PES' => 'Peruanischer Sol (1863–1965)',
+ 'PGK' => 'Papua-Neuguineischer Kina',
+ 'PHP' => 'Philippinischer Peso',
+ 'PKR' => 'Pakistanische Rupie',
+ 'PLN' => 'Polnischer Złoty',
+ 'PLZ' => 'Polnischer Zloty (1950–1995)',
+ 'PTE' => 'Portugiesischer Escudo',
+ 'PYG' => 'Paraguayischer Guaraní',
+ 'QAR' => 'Katar-Riyal',
+ 'RHD' => 'Rhodesischer Dollar',
+ 'ROL' => 'Rumänischer Leu (1952–2006)',
+ 'RON' => 'Rumänischer Leu',
+ 'RSD' => 'Serbischer Dinar',
+ 'RUB' => 'Russischer Rubel',
+ 'RUR' => 'Russischer Rubel (1991–1998)',
+ 'RWF' => 'Ruanda-Franc',
+ 'SAR' => 'Saudi-Rial',
+ 'SBD' => 'Salomonen-Dollar',
+ 'SCR' => 'Seychellen-Rupie',
+ 'SDD' => 'Sudanesischer Dinar (1992–2007)',
+ 'SDG' => 'Sudanesisches Pfund',
+ 'SDP' => 'Sudanesisches Pfund (1957–1998)',
+ 'SEK' => 'Schwedische Krone',
+ 'SGD' => 'Singapur-Dollar',
+ 'SHP' => 'St. Helena-Pfund',
+ 'SIT' => 'Slowenischer Tolar',
+ 'SKK' => 'Slowakische Krone',
+ 'SLL' => 'Sierra-leonischer Leone',
+ 'SOS' => 'Somalia-Schilling',
+ 'SRD' => 'Suriname-Dollar',
+ 'SRG' => 'Suriname Gulden',
+ 'SSP' => 'Südsudanesisches Pfund',
+ 'STD' => 'São-toméischer Dobra',
+ 'SUR' => 'Sowjetischer Rubel',
+ 'SVC' => 'El Salvador Colon',
+ 'SYP' => 'Syrisches Pfund',
+ 'SZL' => 'Swasiländischer Lilangeni',
+ 'THB' => 'Thailändischer Baht',
+ 'TJR' => 'Tadschikistan Rubel',
+ 'TJS' => 'Tadschikistan-Somoni',
+ 'TMM' => 'Turkmenistan-Manat (1993–2009)',
+ 'TMT' => 'Turkmenistan-Manat',
+ 'TND' => 'Tunesischer Dinar',
+ 'TOP' => 'Tongaischer Paʻanga',
+ 'TPE' => 'Timor-Escudo',
+ 'TRL' => 'Türkische Lira (1922–2005)',
+ 'TRY' => 'Türkische Lira',
+ 'TTD' => 'Trinidad und Tobago-Dollar',
+ 'TWD' => 'Neuer Taiwan-Dollar',
+ 'TZS' => 'Tansania-Schilling',
+ 'UAH' => 'Ukrainische Hrywnja',
+ 'UAK' => 'Ukrainischer Karbovanetz',
+ 'UGS' => 'Uganda-Schilling (1966–1987)',
+ 'UGX' => 'Uganda-Schilling',
+ 'USD' => 'US-Dollar',
+ 'USN' => 'US Dollar (Nächster Tag)',
+ 'USS' => 'US Dollar (Gleicher Tag)',
+ 'UYI' => 'Uruguayischer Peso (Indexierte Rechnungseinheiten)',
+ 'UYP' => 'Uruguayischer Peso (1975–1993)',
+ 'UYU' => 'Uruguayischer Peso',
+ 'UZS' => 'Usbekistan-Sum',
+ 'VEB' => 'Venezolanischer Bolívar (1871–2008)',
+ 'VEF' => 'Venezolanischer Bolívar',
+ 'VND' => 'Vietnamesischer Dong',
+ 'VNN' => 'Vietnamesischer Dong(1978–1985)',
+ 'VUV' => 'Vanuatu-Vatu',
+ 'WST' => 'Samoanischer Tala',
+ 'XAF' => 'CFA-Franc (BEAC)',
+ 'XAG' => 'Unze Silber',
+ 'XAU' => 'Unze Gold',
+ 'XBA' => 'Europäische Rechnungseinheit',
+ 'XBB' => 'Europäische Währungseinheit (XBB)',
+ 'XBC' => 'Europäische Rechnungseinheit (XBC)',
+ 'XBD' => 'Europäische Rechnungseinheit (XBD)',
+ 'XCD' => 'Ostkaribischer Dollar',
+ 'XDR' => 'Sonderziehungsrechte',
+ 'XEU' => 'Europäische Währungseinheit (XEU)',
+ 'XFO' => 'Französischer Gold-Franc',
+ 'XFU' => 'Französischer UIC-Franc',
+ 'XOF' => 'CFA-Franc (BCEAO)',
+ 'XPD' => 'Unze Palladium',
+ 'XPF' => 'CFP-Franc',
+ 'XPT' => 'Unze Platin',
+ 'XRE' => 'RINET Funds',
+ 'XSU' => 'SUCRE',
+ 'XTS' => 'Testwährung',
+ 'XUA' => 'Rechnungseinheit der AfEB',
+ 'XXX' => 'Unbekannte Währung',
+ 'YDD' => 'Jemen-Dinar',
+ 'YER' => 'Jemen-Rial',
+ 'YUD' => 'Jugoslawischer Dinar (1966–1990)',
+ 'YUM' => 'Jugoslawischer Neuer Dinar (1994–2002)',
+ 'YUN' => 'Jugoslawischer Dinar (konvertibel)',
+ 'YUR' => 'Jugoslawischer reformierter Dinar (1992–1993)',
+ 'ZAL' => 'Südafrikanischer Rand (Finanz)',
+ 'ZAR' => 'Südafrikanischer Rand',
+ 'ZMK' => 'Kwacha (1968–2012)',
+ 'ZMW' => 'Kwacha',
+ 'ZRN' => 'Zaire-Neuer Zaïre (1993–1998)',
+ 'ZRZ' => 'Zaire-Zaïre (1971–1993)',
+ 'ZWD' => 'Simbabwe-Dollar (1980–2008)',
+ 'ZWL' => 'Simbabwe-Dollar (2009)',
+ 'ZWR' => 'Simbabwe-Dollar (2008)',
+);
+
+$currencySymbols = array(
+ 'ADP' => 'ADP',
+ 'AED' => 'AED',
+ 'AFA' => 'AFA',
+ 'AFN' => 'AFN',
+ 'ALL' => 'ALL',
+ 'AMD' => 'AMD',
+ 'ANG' => 'ANG',
+ 'AOA' => 'AOA',
+ 'AOK' => 'AOK',
+ 'AON' => 'AON',
+ 'AOR' => 'AOR',
+ 'ARA' => 'ARA',
+ 'ARL' => 'ARL',
+ 'ARM' => 'ARM',
+ 'ARP' => 'ARP',
+ 'ARS' => 'ARS',
+ 'ATS' => 'öS',
+ 'AUD' => 'AU$',
+ 'AWG' => 'AWG',
+ 'AZM' => 'AZM',
+ 'AZN' => 'AZN',
+ 'BAD' => 'BAD',
+ 'BAM' => 'BAM',
+ 'BAN' => 'BAN',
+ 'BBD' => 'BBD',
+ 'BDT' => 'BDT',
+ 'BEC' => 'BEC',
+ 'BEF' => 'BEF',
+ 'BEL' => 'BEL',
+ 'BGM' => 'BGK',
+ 'BGN' => 'BGN',
+ 'BGO' => 'BGJ',
+ 'BHD' => 'BHD',
+ 'BIF' => 'BIF',
+ 'BMD' => 'BMD',
+ 'BND' => 'BND',
+ 'BOB' => 'BOB',
+ 'BOL' => 'BOL',
+ 'BOP' => 'BOP',
+ 'BOV' => 'BOV',
+ 'BRB' => 'BRB',
+ 'BRC' => 'BRC',
+ 'BRE' => 'BRE',
+ 'BRL' => 'R$',
+ 'BRN' => 'BRN',
+ 'BRR' => 'BRR',
+ 'BRZ' => 'BRZ',
+ 'BSD' => 'BSD',
+ 'BTN' => 'BTN',
+ 'BWP' => 'BWP',
+ 'BYB' => 'BYB',
+ 'BYR' => 'BYR',
+ 'BZD' => 'BZD',
+ 'CAD' => 'CA$',
+ 'CDF' => 'CDF',
+ 'CHE' => 'CHE',
+ 'CHF' => 'CHF',
+ 'CHW' => 'CHW',
+ 'CLE' => 'CLE',
+ 'CLF' => 'CLF',
+ 'CLP' => 'CLP',
+ 'CNX' => 'CNX',
+ 'CNY' => 'CN¥',
+ 'COP' => 'COP',
+ 'COU' => 'COU',
+ 'CRC' => 'CRC',
+ 'CSD' => 'CSD',
+ 'CSK' => 'CSK',
+ 'CUC' => 'CUC',
+ 'CUP' => 'CUP',
+ 'CVE' => 'CVE',
+ 'CYP' => 'CYP',
+ 'CZK' => 'CZK',
+ 'DDM' => 'DDM',
+ 'DEM' => 'DM',
+ 'DJF' => 'DJF',
+ 'DKK' => 'DKK',
+ 'DOP' => 'DOP',
+ 'DZD' => 'DZD',
+ 'ECS' => 'ECS',
+ 'ECV' => 'ECV',
+ 'EEK' => 'EEK',
+ 'EGP' => 'EGP',
+ 'ERN' => 'ERN',
+ 'ESA' => 'ESA',
+ 'ESB' => 'ESB',
+ 'ESP' => 'ESP',
+ 'ETB' => 'ETB',
+ 'EUR' => '€',
+ 'FIM' => 'FIM',
+ 'FJD' => 'FJD',
+ 'FKP' => 'FKP',
+ 'FRF' => 'FRF',
+ 'GBP' => '£',
+ 'GEL' => 'GEL',
+ 'GHC' => 'GHC',
+ 'GHS' => 'GHS',
+ 'GIP' => 'GIP',
+ 'GMD' => 'GMD',
+ 'GNF' => 'GNF',
+ 'GNS' => 'GNS',
+ 'GQE' => 'GQE',
+ 'GRD' => 'GRD',
+ 'GTQ' => 'GTQ',
+ 'GWP' => 'GWP',
+ 'GYD' => 'GYD',
+ 'HKD' => 'HK$',
+ 'HNL' => 'HNL',
+ 'HRD' => 'HRD',
+ 'HRK' => 'HRK',
+ 'HTG' => 'HTG',
+ 'HUF' => 'HUF',
+ 'IDR' => 'IDR',
+ 'IEP' => 'IEP',
+ 'ILP' => 'ILP',
+ 'ILS' => '₪',
+ 'INR' => '₹',
+ 'IQD' => 'IQD',
+ 'IRR' => 'IRR',
+ 'ISK' => 'ISK',
+ 'ITL' => 'ITL',
+ 'JMD' => 'JMD',
+ 'JOD' => 'JOD',
+ 'JPY' => '¥',
+ 'KES' => 'KES',
+ 'KGS' => 'KGS',
+ 'KHR' => 'KHR',
+ 'KMF' => 'KMF',
+ 'KPW' => 'KPW',
+ 'KRH' => 'KRH',
+ 'KRO' => 'KRO',
+ 'KRW' => '₩',
+ 'KWD' => 'KWD',
+ 'KYD' => 'KYD',
+ 'KZT' => 'KZT',
+ 'LAK' => 'LAK',
+ 'LBP' => 'LBP',
+ 'LKR' => 'LKR',
+ 'LRD' => 'LRD',
+ 'LSL' => 'LSL',
+ 'LTL' => 'LTL',
+ 'LTT' => 'LTT',
+ 'LUC' => 'LUC',
+ 'LUF' => 'LUF',
+ 'LUL' => 'LUL',
+ 'LVL' => 'LVL',
+ 'LVR' => 'LVR',
+ 'LYD' => 'LYD',
+ 'MAD' => 'MAD',
+ 'MAF' => 'MAF',
+ 'MCF' => 'MCF',
+ 'MDC' => 'MDC',
+ 'MDL' => 'MDL',
+ 'MGA' => 'MGA',
+ 'MGF' => 'MGF',
+ 'MKD' => 'MKD',
+ 'MKN' => 'MKN',
+ 'MLF' => 'MLF',
+ 'MMK' => 'MMK',
+ 'MNT' => 'MNT',
+ 'MOP' => 'MOP',
+ 'MRO' => 'MRO',
+ 'MTL' => 'MTL',
+ 'MTP' => 'MTP',
+ 'MUR' => 'MUR',
+ 'MVR' => 'MVR',
+ 'MWK' => 'MWK',
+ 'MXN' => 'MX$',
+ 'MXP' => 'MXP',
+ 'MXV' => 'MXV',
+ 'MYR' => 'MYR',
+ 'MZM' => 'MZM',
+ 'MZN' => 'MZN',
+ 'NAD' => 'NAD',
+ 'NGN' => 'NGN',
+ 'NIC' => 'NIC',
+ 'NIO' => 'NIO',
+ 'NLG' => 'NLG',
+ 'NOK' => 'NOK',
+ 'NPR' => 'NPR',
+ 'NZD' => 'NZ$',
+ 'OMR' => 'OMR',
+ 'PAB' => 'PAB',
+ 'PEI' => 'PEI',
+ 'PEN' => 'PEN',
+ 'PES' => 'PES',
+ 'PGK' => 'PGK',
+ 'PHP' => 'PHP',
+ 'PKR' => 'PKR',
+ 'PLN' => 'PLN',
+ 'PTE' => 'PTE',
+ 'PYG' => 'PYG',
+ 'QAR' => 'QAR',
+ 'RHD' => 'RHD',
+ 'ROL' => 'ROL',
+ 'RON' => 'RON',
+ 'RSD' => 'RSD',
+ 'RUB' => 'RUB',
+ 'RUR' => 'RUR',
+ 'RWF' => 'RWF',
+ 'SAR' => 'SAR',
+ 'SBD' => 'SBD',
+ 'SCR' => 'SCR',
+ 'SDD' => 'SDD',
+ 'SDG' => 'SDG',
+ 'SDP' => 'SDP',
+ 'SEK' => 'SEK',
+ 'SGD' => 'SGD',
+ 'SHP' => 'SHP',
+ 'SIT' => 'SIT',
+ 'SKK' => 'SKK',
+ 'SLL' => 'SLL',
+ 'SOS' => 'SOS',
+ 'SRD' => 'SRD',
+ 'SRG' => 'SRG',
+ 'SSP' => 'SSP',
+ 'STD' => 'STD',
+ 'SUR' => 'SUR',
+ 'SVC' => 'SVC',
+ 'SYP' => 'SYP',
+ 'SZL' => 'SZL',
+ 'THB' => '฿',
+ 'TJR' => 'TJR',
+ 'TJS' => 'TJS',
+ 'TMM' => 'TMM',
+ 'TMT' => 'TMT',
+ 'TND' => 'TND',
+ 'TOP' => 'TOP',
+ 'TPE' => 'TPE',
+ 'TRL' => 'TRL',
+ 'TRY' => 'TRY',
+ 'TTD' => 'TTD',
+ 'TWD' => 'NT$',
+ 'TZS' => 'TZS',
+ 'UAH' => 'UAH',
+ 'UAK' => 'UAK',
+ 'UGS' => 'UGS',
+ 'UGX' => 'UGX',
+ 'USD' => '$',
+ 'USN' => 'USN',
+ 'USS' => 'USS',
+ 'UYI' => 'UYI',
+ 'UYP' => 'UYP',
+ 'UYU' => 'UYU',
+ 'UZS' => 'UZS',
+ 'VEB' => 'VEB',
+ 'VEF' => 'VEF',
+ 'VND' => '₫',
+ 'VNN' => 'VNN',
+ 'VUV' => 'VUV',
+ 'WST' => 'WST',
+ 'XAF' => 'FCFA',
+ 'XAG' => 'XAG',
+ 'XAU' => 'XAU',
+ 'XBA' => 'XBA',
+ 'XBB' => 'XBB',
+ 'XBC' => 'XBC',
+ 'XBD' => 'XBD',
+ 'XCD' => 'EC$',
+ 'XDR' => 'XDR',
+ 'XEU' => 'XEU',
+ 'XFO' => 'XFO',
+ 'XFU' => 'XFU',
+ 'XOF' => 'CFA',
+ 'XPD' => 'XPD',
+ 'XPF' => 'CFPF',
+ 'XPT' => 'XPT',
+ 'XRE' => 'XRE',
+ 'XSU' => 'XSU',
+ 'XTS' => 'XTS',
+ 'XUA' => 'XUA',
+ 'XXX' => 'XXX',
+ 'YDD' => 'YDD',
+ 'YER' => 'YER',
+ 'YUD' => 'YUD',
+ 'YUM' => 'YUM',
+ 'YUN' => 'YUN',
+ 'YUR' => 'YUR',
+ 'ZAL' => 'ZAL',
+ 'ZAR' => 'ZAR',
+ 'ZMK' => 'ZMK',
+ 'ZMW' => 'ZMW',
+ 'ZRN' => 'ZRN',
+ 'ZRZ' => 'ZRZ',
+ 'ZWD' => 'ZWD',
+ 'ZWL' => 'ZWL',
+ 'ZWR' => 'ZWR',
+);
+
+$countryNames = array(
+ 'AC' => 'Ascension',
+ 'AD' => 'Andorra',
+ 'AE' => 'Vereinigte Arabische Emirate',
+ 'AF' => 'Afghanistan',
+ 'AG' => 'Antigua und Barbuda',
+ 'AI' => 'Anguilla',
+ 'AL' => 'Albanien',
+ 'AM' => 'Armenien',
+ 'AN' => 'Niederländische Antillen',
+ 'AO' => 'Angola',
+ 'AQ' => 'Antarktis',
+ 'AR' => 'Argentinien',
+ 'AS' => 'Amerikanisch-Samoa',
+ 'AT' => 'Österreich',
+ 'AU' => 'Australien',
+ 'AW' => 'Aruba',
+ 'AX' => 'Åland-Inseln',
+ 'AZ' => 'Aserbaidschan',
+ 'BA' => 'Bosnien und Herzegowina',
+ 'BB' => 'Barbados',
+ 'BD' => 'Bangladesch',
+ 'BE' => 'Belgien',
+ 'BF' => 'Burkina Faso',
+ 'BG' => 'Bulgarien',
+ 'BH' => 'Bahrain',
+ 'BI' => 'Burundi',
+ 'BJ' => 'Benin',
+ 'BL' => 'St. Barthélemy',
+ 'BM' => 'Bermuda',
+ 'BN' => 'Brunei Darussalam',
+ 'BO' => 'Bolivien',
+ 'BQ' => 'Karibische Niederlande',
+ 'BR' => 'Brasilien',
+ 'BS' => 'Bahamas',
+ 'BT' => 'Bhutan',
+ 'BV' => 'Bouvetinsel',
+ 'BW' => 'Botsuana',
+ 'BY' => 'Belarus',
+ 'BZ' => 'Belize',
+ 'CA' => 'Kanada',
+ 'CC' => 'Kokosinseln',
+ 'CD' => 'Kongo-Kinshasa',
+ 'CF' => 'Zentralafrikanische Republik',
+ 'CG' => 'Kongo-Brazzaville',
+ 'CH' => 'Schweiz',
+ 'CI' => 'Côte d’Ivoire',
+ 'CK' => 'Cookinseln',
+ 'CL' => 'Chile',
+ 'CM' => 'Kamerun',
+ 'CN' => 'China',
+ 'CO' => 'Kolumbien',
+ 'CP' => 'Clipperton-Insel',
+ 'CR' => 'Costa Rica',
+ 'CU' => 'Kuba',
+ 'CV' => 'Kap Verde',
+ 'CW' => 'Curaçao',
+ 'CX' => 'Weihnachtsinsel',
+ 'CY' => 'Zypern',
+ 'CZ' => 'Tschechische Republik',
+ 'DE' => 'Deutschland',
+ 'DG' => 'Diego Garcia',
+ 'DJ' => 'Dschibuti',
+ 'DK' => 'Dänemark',
+ 'DM' => 'Dominica',
+ 'DO' => 'Dominikanische Republik',
+ 'DZ' => 'Algerien',
+ 'EA' => 'Ceuta und Melilla',
+ 'EC' => 'Ecuador',
+ 'EE' => 'Estland',
+ 'EG' => 'Ägypten',
+ 'EH' => 'Westsahara',
+ 'ER' => 'Eritrea',
+ 'ES' => 'Spanien',
+ 'ET' => 'Äthiopien',
+ 'EU' => 'Europäische Union',
+ 'FI' => 'Finnland',
+ 'FJ' => 'Fidschi',
+ 'FK' => 'Falklandinseln',
+ 'FM' => 'Mikronesien',
+ 'FO' => 'Färöer',
+ 'FR' => 'Frankreich',
+ 'GA' => 'Gabun',
+ 'GB' => 'UK',
+ 'GD' => 'Grenada',
+ 'GE' => 'Georgien',
+ 'GF' => 'Französisch-Guayana',
+ 'GG' => 'Guernsey',
+ 'GH' => 'Ghana',
+ 'GI' => 'Gibraltar',
+ 'GL' => 'Grönland',
+ 'GM' => 'Gambia',
+ 'GN' => 'Guinea',
+ 'GP' => 'Guadeloupe',
+ 'GQ' => 'Äquatorialguinea',
+ 'GR' => 'Griechenland',
+ 'GS' => 'Südgeorgien und die Südlichen Sandwichinseln',
+ 'GT' => 'Guatemala',
+ 'GU' => 'Guam',
+ 'GW' => 'Guinea-Bissau',
+ 'GY' => 'Guyana',
+ 'HK' => 'Hongkong',
+ 'HM' => 'Heard- und McDonald-Inseln',
+ 'HN' => 'Honduras',
+ 'HR' => 'Kroatien',
+ 'HT' => 'Haiti',
+ 'HU' => 'Ungarn',
+ 'IC' => 'Kanarische Inseln',
+ 'ID' => 'Indonesien',
+ 'IE' => 'Irland',
+ 'IL' => 'Israel',
+ 'IM' => 'Isle of Man',
+ 'IN' => 'Indien',
+ 'IO' => 'Britisches Territorium im Indischen Ozean',
+ 'IQ' => 'Irak',
+ 'IR' => 'Iran',
+ 'IS' => 'Island',
+ 'IT' => 'Italien',
+ 'JE' => 'Jersey',
+ 'JM' => 'Jamaika',
+ 'JO' => 'Jordanien',
+ 'JP' => 'Japan',
+ 'KE' => 'Kenia',
+ 'KG' => 'Kirgisistan',
+ 'KH' => 'Kambodscha',
+ 'KI' => 'Kiribati',
+ 'KM' => 'Komoren',
+ 'KN' => 'St. Kitts und Nevis',
+ 'KP' => 'Demokratische Volksrepublik Korea',
+ 'KR' => 'Republik Korea',
+ 'KW' => 'Kuwait',
+ 'KY' => 'Kaimaninseln',
+ 'KZ' => 'Kasachstan',
+ 'LA' => 'Laos',
+ 'LB' => 'Libanon',
+ 'LC' => 'St. Lucia',
+ 'LI' => 'Liechtenstein',
+ 'LK' => 'Sri Lanka',
+ 'LR' => 'Liberia',
+ 'LS' => 'Lesotho',
+ 'LT' => 'Litauen',
+ 'LU' => 'Luxemburg',
+ 'LV' => 'Lettland',
+ 'LY' => 'Libyen',
+ 'MA' => 'Marokko',
+ 'MC' => 'Monaco',
+ 'MD' => 'Republik Moldau',
+ 'ME' => 'Montenegro',
+ 'MF' => 'St. Martin',
+ 'MG' => 'Madagaskar',
+ 'MH' => 'Marshallinseln',
+ 'MK' => 'Mazedonien',
+ 'ML' => 'Mali',
+ 'MM' => 'Myanmar',
+ 'MN' => 'Mongolei',
+ 'MO' => 'Macau',
+ 'MP' => 'Nördliche Marianen',
+ 'MQ' => 'Martinique',
+ 'MR' => 'Mauretanien',
+ 'MS' => 'Montserrat',
+ 'MT' => 'Malta',
+ 'MU' => 'Mauritius',
+ 'MV' => 'Malediven',
+ 'MW' => 'Malawi',
+ 'MX' => 'Mexiko',
+ 'MY' => 'Malaysia',
+ 'MZ' => 'Mosambik',
+ 'NA' => 'Namibia',
+ 'NC' => 'Neukaledonien',
+ 'NE' => 'Niger',
+ 'NF' => 'Norfolkinsel',
+ 'NG' => 'Nigeria',
+ 'NI' => 'Nicaragua',
+ 'NL' => 'Niederlande',
+ 'NO' => 'Norwegen',
+ 'NP' => 'Nepal',
+ 'NR' => 'Nauru',
+ 'NU' => 'Niue',
+ 'NZ' => 'Neuseeland',
+ 'OM' => 'Oman',
+ 'PA' => 'Panama',
+ 'PE' => 'Peru',
+ 'PF' => 'Französisch-Polynesien',
+ 'PG' => 'Papua-Neuguinea',
+ 'PH' => 'Philippinen',
+ 'PK' => 'Pakistan',
+ 'PL' => 'Polen',
+ 'PM' => 'St. Pierre und Miquelon',
+ 'PN' => 'Pitcairninseln',
+ 'PR' => 'Puerto Rico',
+ 'PS' => 'Palästina',
+ 'PT' => 'Portugal',
+ 'PW' => 'Palau',
+ 'PY' => 'Paraguay',
+ 'QA' => 'Katar',
+ 'QO' => 'Äußeres Ozeanien',
+ 'RE' => 'Réunion',
+ 'RO' => 'Rumänien',
+ 'RS' => 'Serbien',
+ 'RU' => 'Russische Föderation',
+ 'RW' => 'Ruanda',
+ 'SA' => 'Saudi-Arabien',
+ 'SB' => 'Salomonen',
+ 'SC' => 'Seychellen',
+ 'SD' => 'Sudan',
+ 'SE' => 'Schweden',
+ 'SG' => 'Singapur',
+ 'SH' => 'St. Helena',
+ 'SI' => 'Slowenien',
+ 'SJ' => 'Svalbard und Jan Mayen',
+ 'SK' => 'Slowakei',
+ 'SL' => 'Sierra Leone',
+ 'SM' => 'San Marino',
+ 'SN' => 'Senegal',
+ 'SO' => 'Somalia',
+ 'SR' => 'Suriname',
+ 'SS' => 'Südsudan',
+ 'ST' => 'São Tomé und Príncipe',
+ 'SV' => 'El Salvador',
+ 'SX' => 'Sint Maarten',
+ 'SY' => 'Syrien',
+ 'SZ' => 'Swasiland',
+ 'TA' => 'Tristan da Cunha',
+ 'TC' => 'Turks- und Caicosinseln',
+ 'TD' => 'Tschad',
+ 'TF' => 'Französische Süd- und Antarktisgebiete',
+ 'TG' => 'Togo',
+ 'TH' => 'Thailand',
+ 'TJ' => 'Tadschikistan',
+ 'TK' => 'Tokelau',
+ 'TL' => 'Timor-Leste',
+ 'TM' => 'Turkmenistan',
+ 'TN' => 'Tunesien',
+ 'TO' => 'Tonga',
+ 'TR' => 'Türkei',
+ 'TT' => 'Trinidad und Tobago',
+ 'TV' => 'Tuvalu',
+ 'TW' => 'Taiwan',
+ 'TZ' => 'Tansania',
+ 'UA' => 'Ukraine',
+ 'UG' => 'Uganda',
+ 'UM' => 'Amerikanisch-Ozeanien',
+ 'US' => 'USA',
+ 'UY' => 'Uruguay',
+ 'UZ' => 'Usbekistan',
+ 'VA' => 'Vatikanstadt',
+ 'VC' => 'St. Vincent und die Grenadinen',
+ 'VE' => 'Venezuela',
+ 'VG' => 'Britische Jungferninseln',
+ 'VI' => 'Amerikanische Jungferninseln',
+ 'VN' => 'Vietnam',
+ 'VU' => 'Vanuatu',
+ 'WF' => 'Wallis und Futuna',
+ 'WS' => 'Samoa',
+ 'XK' => 'Kosovo',
+ 'YE' => 'Jemen',
+ 'YT' => 'Mayotte',
+ 'ZA' => 'Südafrika',
+ 'ZM' => 'Sambia',
+ 'ZW' => 'Simbabwe',
+);
+
+$timeUnits = array(
+ 'day-future-one' => 'in {0} Tag',
+ 'day-future-other' => 'in {0} Tagen',
+ 'day-narrow-future-one' => 'in {0} Tag',
+ 'day-narrow-future-other' => 'in {0} Tagen',
+ 'day-narrow-past-one' => 'vor {0} Tag',
+ 'day-narrow-past-other' => 'vor {0} Tagen',
+ 'day-one' => '{0} Tag',
+ 'day-other' => '{0} Tage',
+ 'day-past-one' => 'vor {0} Tag',
+ 'day-past-other' => 'vor {0} Tagen',
+ 'day-short-future-one' => 'in {0} Tag',
+ 'day-short-future-other' => 'in {0} Tagen',
+ 'day-short-past-one' => 'vor {0} Tag',
+ 'day-short-past-other' => 'vor {0} Tagen',
+ 'hour-future-one' => 'in {0} Stunde',
+ 'hour-future-other' => 'in {0} Stunden',
+ 'hour-narrow-future-one' => 'in {0} Std.',
+ 'hour-narrow-future-other' => 'in {0} Std.',
+ 'hour-narrow-past-one' => 'vor {0} Std.',
+ 'hour-narrow-past-other' => 'vor {0} Std.',
+ 'hour-one' => '{0} Stunde',
+ 'hour-other' => '{0} Stunden',
+ 'hour-past-one' => 'vor {0} Stunde',
+ 'hour-past-other' => 'vor {0} Stunden',
+ 'hour-short-future-one' => 'in {0} Std.',
+ 'hour-short-future-other' => 'in {0} Std.',
+ 'hour-short-past-one' => 'vor {0} Std.',
+ 'hour-short-past-other' => 'vor {0} Std.',
+ 'microsecond-one' => '{0} Mikrosekunde',
+ 'microsecond-other' => '{0} Mikrosekunden',
+ 'millisecond-one' => '{0} Millisekunde',
+ 'millisecond-other' => '{0} Millisekunden',
+ 'minute-future-one' => 'in {0} Minute',
+ 'minute-future-other' => 'in {0} Minuten',
+ 'minute-narrow-future-one' => 'in {0} m',
+ 'minute-narrow-future-other' => 'in {0} m',
+ 'minute-narrow-past-one' => 'vor {0} m',
+ 'minute-narrow-past-other' => 'vor {0} m',
+ 'minute-one' => '{0} Minute',
+ 'minute-other' => '{0} Minuten',
+ 'minute-past-one' => 'vor {0} Minute',
+ 'minute-past-other' => 'vor {0} Minuten',
+ 'minute-short-future-one' => 'in {0} Min.',
+ 'minute-short-future-other' => 'in {0} Min.',
+ 'minute-short-past-one' => 'vor {0} Min.',
+ 'minute-short-past-other' => 'vor {0} Min.',
+ 'month-future-one' => 'in {0} Monat',
+ 'month-future-other' => 'in {0} Monaten',
+ 'month-narrow-future-one' => 'in {0} Monat',
+ 'month-narrow-future-other' => 'in {0} Monaten',
+ 'month-narrow-past-one' => 'vor {0} Monat',
+ 'month-narrow-past-other' => 'vor {0} Monaten',
+ 'month-one' => '{0} Monat',
+ 'month-other' => '{0} Monate',
+ 'month-past-one' => 'vor {0} Monat',
+ 'month-past-other' => 'vor {0} Monaten',
+ 'month-short-future-one' => 'in {0} Monat',
+ 'month-short-future-other' => 'in {0} Monaten',
+ 'month-short-past-one' => 'vor {0} Monat',
+ 'month-short-past-other' => 'vor {0} Monaten',
+ 'nanosecond-one' => '{0} Nanosekunde',
+ 'nanosecond-other' => '{0} Nanosekunden',
+ 'quarter-future-one' => 'in {0} Quartal',
+ 'quarter-future-other' => 'in {0} Quartalen',
+ 'quarter-narrow-future-one' => 'in {0} Q',
+ 'quarter-narrow-future-other' => 'in {0} Q',
+ 'quarter-narrow-past-one' => 'vor {0} Q',
+ 'quarter-narrow-past-other' => 'vor {0} Q',
+ 'quarter-past-one' => 'vor {0} Quartal',
+ 'quarter-past-other' => 'vor {0} Quartalen',
+ 'quarter-short-future-one' => 'in {0} Quart.',
+ 'quarter-short-future-other' => 'in {0} Quart.',
+ 'quarter-short-past-one' => 'vor {0} Quart.',
+ 'quarter-short-past-other' => 'vor {0} Quart.',
+ 'second-future-one' => 'in {0} Sekunde',
+ 'second-future-other' => 'in {0} Sekunden',
+ 'second-narrow-future-one' => 'in {0} s',
+ 'second-narrow-future-other' => 'in {0} s',
+ 'second-narrow-past-one' => 'vor {0} s',
+ 'second-narrow-past-other' => 'vor {0} s',
+ 'second-one' => '{0} Sekunde',
+ 'second-other' => '{0} Sekunden',
+ 'second-past-one' => 'vor {0} Sekunde',
+ 'second-past-other' => 'vor {0} Sekunden',
+ 'second-short-future-one' => 'in {0} Sek.',
+ 'second-short-future-other' => 'in {0} Sek.',
+ 'second-short-past-one' => 'vor {0} Sek.',
+ 'second-short-past-other' => 'vor {0} Sek.',
+ 'week-future-one' => 'in {0} Woche',
+ 'week-future-other' => 'in {0} Wochen',
+ 'week-narrow-future-one' => 'in {0} Wo.',
+ 'week-narrow-future-other' => 'in {0} Wo.',
+ 'week-narrow-past-one' => 'vor {0} Wo.',
+ 'week-narrow-past-other' => 'vor {0} Wo.',
+ 'week-one' => '{0} Woche',
+ 'week-other' => '{0} Wochen',
+ 'week-past-one' => 'vor {0} Woche',
+ 'week-past-other' => 'vor {0} Wochen',
+ 'week-short-future-one' => 'in {0} Woche',
+ 'week-short-future-other' => 'in {0} Wochen',
+ 'week-short-past-one' => 'vor {0} Woche',
+ 'week-short-past-other' => 'vor {0} Wochen',
+ 'year-future-one' => 'in {0} Jahr',
+ 'year-future-other' => 'in {0} Jahren',
+ 'year-narrow-future-one' => 'in {0} Jahr',
+ 'year-narrow-future-other' => 'in {0} Jahren',
+ 'year-narrow-past-one' => 'vor {0} Jahr',
+ 'year-narrow-past-other' => 'vor {0} Jahren',
+ 'year-one' => '{0} Jahr',
+ 'year-other' => '{0} Jahre',
+ 'year-past-one' => 'vor {0} Jahr',
+ 'year-past-other' => 'vor {0} Jahren',
+ 'year-short-future-one' => 'in {0} Jahr',
+ 'year-short-future-other' => 'in {0} Jahren',
+ 'year-short-past-one' => 'vor {0} Jahr',
+ 'year-short-past-other' => 'vor {0} Jahren',
+);
diff --git a/MLEB/cldr/CldrNames/CldrNamesDe_ch.php b/MLEB/cldr/CldrNames/CldrNamesDe_ch.php
new file mode 100644
index 00000000..6220d62e
--- /dev/null
+++ b/MLEB/cldr/CldrNames/CldrNamesDe_ch.php
@@ -0,0 +1,26 @@
+<?php
+
+$languageNames = array(
+ 'be' => 'Weissrussisch',
+ 'prg' => 'Altpreussisch',
+);
+
+$currencyNames = array(
+ 'BYR' => 'Weissrussischer Rubel',
+);
+
+$countryNames = array(
+ 'BD' => 'Bangladesh',
+ 'BN' => 'Brunei',
+ 'BW' => 'Botswana',
+ 'BY' => 'Weissrussland',
+ 'CV' => 'Kapverden',
+ 'DJ' => 'Djibouti',
+ 'GB' => 'Grossbritannien',
+ 'MH' => 'Marshall-Inseln',
+ 'QO' => 'Äusseres Ozeanien',
+ 'RW' => 'Rwanda',
+ 'SB' => 'Salomon-Inseln',
+ 'ST' => 'Sao Tomé und Principe',
+ 'ZW' => 'Zimbabwe',
+);
diff --git a/MLEB/cldr/CldrNames/CldrNamesDsb.php b/MLEB/cldr/CldrNames/CldrNamesDsb.php
new file mode 100644
index 00000000..508b8d69
--- /dev/null
+++ b/MLEB/cldr/CldrNames/CldrNamesDsb.php
@@ -0,0 +1,974 @@
+<?php
+
+$languageNames = array(
+ 'aa' => 'afaršćina',
+ 'ab' => 'abchazšćina',
+ 'af' => 'afrikans',
+ 'agq' => 'aghem',
+ 'ak' => 'akanšćina',
+ 'am' => 'amharšćina',
+ 'an' => 'aragonšćina',
+ 'ang' => 'anglosaksojšćina',
+ 'ar' => 'arabšćina',
+ 'ar-001' => 'moderna wusokoarabšćina',
+ 'arn' => 'arawkašćina',
+ 'as' => 'asamšćina',
+ 'asa' => 'pare',
+ 'ast' => 'asturšćina',
+ 'av' => 'awaršćina',
+ 'ay' => 'aymaršćina',
+ 'az' => 'azerbajdžanšćina',
+ 'ba' => 'baškiršćina',
+ 'be' => 'běłorušćina',
+ 'bem' => 'bemba',
+ 'bez' => 'bena',
+ 'bg' => 'bulgaršćina',
+ 'bi' => 'bislamšćina',
+ 'bm' => 'bambara',
+ 'bn' => 'bengalšćina',
+ 'bo' => 'tibetšćina',
+ 'br' => 'bretonšćina',
+ 'brx' => 'bodo',
+ 'bs' => 'bosnišćina',
+ 'bug' => 'bugišćina',
+ 'ca' => 'katanlanšćina',
+ 'cgg' => 'chiga',
+ 'ch' => 'čamoršćina',
+ 'cho' => 'choctawšćina',
+ 'chr' => 'cherokee',
+ 'ckb' => 'sorani',
+ 'co' => 'korsišćina',
+ 'cr' => 'kri',
+ 'cs' => 'češćina',
+ 'cy' => 'walizišćina',
+ 'da' => 'danšćina',
+ 'dav' => 'taita',
+ 'de' => 'nimšćina',
+ 'dje' => 'zarma',
+ 'dsb' => 'dolnoserbšćina',
+ 'dua' => 'duala',
+ 'dv' => 'divehi',
+ 'dyo' => 'jola-fonyi',
+ 'dz' => 'dzongkha',
+ 'ebu' => 'embu',
+ 'ee' => 'ewe',
+ 'el' => 'grichišćina',
+ 'en' => 'engelšćina',
+ 'en-au' => 'awstralska engelšćina',
+ 'en-ca' => 'kanadiska engelšćina',
+ 'en-gb' => 'britiska engelšćina',
+ 'en-us' => 'ameriska engelšćina',
+ 'eo' => 'esperanto',
+ 'es' => 'špańšćina',
+ 'es-419' => 'łatyńskoamerikańska špańšćina',
+ 'es-es' => 'europejska špańšćina',
+ 'es-mx' => 'mexikańska špańšćina',
+ 'et' => 'estišćina',
+ 'eu' => 'baskišćina',
+ 'fa' => 'persišćina',
+ 'fi' => 'finšćina',
+ 'fil' => 'filipinšćina',
+ 'fj' => 'fidžišćina',
+ 'fo' => 'ferejšćina',
+ 'fr' => 'francojšćina',
+ 'fr-ca' => 'kanadiska francojšćina',
+ 'fr-ch' => 'šwicarska francojšćina',
+ 'fy' => 'frizišćina',
+ 'ga' => 'iršćina',
+ 'gag' => 'gagauzšćina',
+ 'gd' => 'šotišćina',
+ 'gl' => 'galicišćina',
+ 'gn' => 'guarani',
+ 'got' => 'gotišćina',
+ 'gsw' => 'šwicarska nimšćina',
+ 'gu' => 'gudžaratšćina',
+ 'guz' => 'gusii',
+ 'gv' => 'manšćina',
+ 'ha' => 'hausa',
+ 'haw' => 'hawaiišćina',
+ 'he' => 'hebrejšćina',
+ 'hi' => 'hindišćina',
+ 'hr' => 'chorwatšćina',
+ 'hsb' => 'górnoserbšćina',
+ 'ht' => 'haitišćina',
+ 'hu' => 'hungoršćina',
+ 'hy' => 'armeńšćina',
+ 'ia' => 'interlingua',
+ 'id' => 'indonešćina',
+ 'ig' => 'igbo',
+ 'ii' => 'sichuan yi',
+ 'ik' => 'inupiak',
+ 'io' => 'ido',
+ 'is' => 'islandšćina',
+ 'it' => 'italšćina',
+ 'iu' => 'inuitšćina',
+ 'ja' => 'japańšćina',
+ 'jgo' => 'ngomba',
+ 'jmc' => 'machame',
+ 'jv' => 'javašćina',
+ 'ka' => 'georgišćina',
+ 'kab' => 'kabylšćina',
+ 'kam' => 'kamba',
+ 'kde' => 'makonde',
+ 'kea' => 'kapverdšćina',
+ 'khq' => 'koyra chiini',
+ 'ki' => 'kikuyu',
+ 'kk' => 'kazachšćina',
+ 'kl' => 'grönlandšćina',
+ 'kln' => 'kalenjin',
+ 'km' => 'kambodžanšćina',
+ 'kn' => 'kannadšćina',
+ 'ko' => 'korejańšćina',
+ 'koi' => 'komi-permyak',
+ 'kok' => 'konkani',
+ 'kri' => 'krio',
+ 'ks' => 'kašmiršćina',
+ 'ksb' => 'šambala',
+ 'ksf' => 'bafia',
+ 'ku' => 'kurdišćina',
+ 'kw' => 'kornišćina',
+ 'ky' => 'kirgišćina',
+ 'la' => 'łatyńšćina',
+ 'lag' => 'langi',
+ 'lb' => 'luxemburgšćina',
+ 'lg' => 'gandšćina',
+ 'li' => 'limburšćina',
+ 'lkt' => 'lakotšćina',
+ 'ln' => 'lingala',
+ 'lo' => 'laošćina',
+ 'lt' => 'litawšćina',
+ 'lu' => 'luba-katanga',
+ 'luo' => 'luo',
+ 'luy' => 'luhya',
+ 'lv' => 'letišćina',
+ 'mas' => 'masaišćina',
+ 'mer' => 'meru',
+ 'mfe' => 'mauriciska kreolšćina',
+ 'mg' => 'malgašćina',
+ 'mgh' => 'makhuwa-meetto',
+ 'mgo' => 'meta’',
+ 'mi' => 'maorišćina',
+ 'mk' => 'makedońšćina',
+ 'ml' => 'malajamšćina',
+ 'mn' => 'mongolšćina',
+ 'moh' => 'mohawkšćina',
+ 'mr' => 'maratišćina',
+ 'ms' => 'malajšćina',
+ 'mt' => 'maltašćina',
+ 'mua' => 'mundang',
+ 'mus' => 'krik',
+ 'my' => 'burmašćina',
+ 'na' => 'naurušćina',
+ 'naq' => 'nama',
+ 'nb' => 'norwegske bokmål',
+ 'nd' => 'pódpołnocne ndebele',
+ 'nds' => 'dolnonimšćina',
+ 'ne' => 'nepalšćina',
+ 'nl' => 'nižozemšćina',
+ 'nl-be' => 'flamšćina',
+ 'nmg' => 'kwasio',
+ 'nn' => 'norwegske nynorsk',
+ 'no' => 'norwegšćina',
+ 'nqo' => 'n’ko',
+ 'nus' => 'nuer',
+ 'nv' => 'navaho',
+ 'nyn' => 'nyankole',
+ 'oc' => 'okcitanšćina',
+ 'om' => 'oromo',
+ 'or' => 'orojišćina',
+ 'pa' => 'pandžabšćina',
+ 'pl' => 'pólšćina',
+ 'prg' => 'prusčina',
+ 'ps' => 'paštunšćina',
+ 'pt' => 'portugalšćina',
+ 'pt-br' => 'brazilska portugalšćina',
+ 'pt-pt' => 'europejska portugalšćina',
+ 'qu' => 'kečua',
+ 'quc' => 'kʼicheʼ',
+ 'rm' => 'retoromańšćina',
+ 'rn' => 'kirundišćina',
+ 'ro' => 'rumunšćina',
+ 'ro-md' => 'moldawišćina',
+ 'rof' => 'rombo',
+ 'ru' => 'rušćina',
+ 'rw' => 'kinjarwanda',
+ 'rwk' => 'rwa',
+ 'sa' => 'sanskrit',
+ 'saq' => 'samburu',
+ 'sbp' => 'sangu',
+ 'sc' => 'sardinšćina',
+ 'scn' => 'sicilianišćina',
+ 'sd' => 'sindšćina',
+ 'se' => 'lapšćina',
+ 'seh' => 'sena',
+ 'ses' => 'koyra senni',
+ 'sg' => 'sango',
+ 'sh' => 'serbochorwatšćina',
+ 'shi' => 'tašelhit',
+ 'si' => 'singalšćina',
+ 'sk' => 'słowakšćina',
+ 'sl' => 'słowjeńšćina',
+ 'sm' => 'samošćina',
+ 'sma' => 'pódpołdnjowa samišćina',
+ 'smj' => 'lule-samišćina',
+ 'smn' => 'inari-samišćina',
+ 'sms' => 'skolt-samišćina',
+ 'sn' => 'šonšćina',
+ 'so' => 'somališćina',
+ 'sq' => 'albanšćina',
+ 'sr' => 'serbišćina',
+ 'ss' => 'siswati',
+ 'st' => 'pódpołdnjowa sotšćina (Sesotho)',
+ 'stq' => 'saterfrizišćina',
+ 'su' => 'sundanšćina',
+ 'sv' => 'šwedšćina',
+ 'sw' => 'swahilišćina',
+ 'swc' => 'kongojska swahilišćina',
+ 'ta' => 'tamilšćina',
+ 'te' => 'telugšćina',
+ 'teo' => 'teso',
+ 'tg' => 'tadžikišćina',
+ 'th' => 'thailandšćina',
+ 'ti' => 'tigrinja',
+ 'tk' => 'turkmeńšćina',
+ 'tl' => 'tagalog',
+ 'tn' => 'tswana',
+ 'to' => 'tonganšćina',
+ 'tr' => 'turkojšćina',
+ 'ts' => 'tsonga',
+ 'tt' => 'tataršćina',
+ 'tw' => 'twi',
+ 'twq' => 'tasawaq',
+ 'ty' => 'tahitišćina',
+ 'tzm' => 'centralnoatlaski tamazight',
+ 'ug' => 'ujguršćina',
+ 'uk' => 'ukrainšćina',
+ 'und' => 'njeznata rěc',
+ 'ur' => 'urdušćina',
+ 'uz' => 'usbekšćina',
+ 'vai' => 'vai',
+ 'vi' => 'vietnamšćina',
+ 'vo' => 'volapük',
+ 'vun' => 'vunjo',
+ 'wa' => 'walonšćina',
+ 'wo' => 'wolof',
+ 'xh' => 'xhosa',
+ 'xog' => 'soga',
+ 'yi' => 'jidišćina',
+ 'yo' => 'jorubšćina',
+ 'za' => 'zhuang',
+ 'zgh' => 'standardny marokkański tamazight',
+ 'zh' => 'chinšćina',
+ 'zh-hans' => 'chinšćina (zjadnorjona)',
+ 'zh-hant' => 'chinšćina (tradicionalna)',
+ 'zu' => 'zulu',
+ 'zxx' => 'žedno rěcne wopśimjeśe',
+);
+
+$currencyNames = array(
+ 'ADP' => 'andorraska peseta',
+ 'AED' => 'ZAE dirham',
+ 'AFN' => 'afghaniski afgani',
+ 'ALL' => 'albański lek',
+ 'AMD' => 'armeński dram',
+ 'ANG' => 'nižozemsko-antilski gulden',
+ 'AOA' => 'angolska kwanza',
+ 'AOK' => 'angolska kwanza (1977–1990)',
+ 'AON' => 'angolska nowa kwanza (1990–2000)',
+ 'AOR' => 'angolska kwanza reajustado (1995–1999)',
+ 'ARA' => 'argentinski austral',
+ 'ARP' => 'argentinski peso (1983–1985)',
+ 'ARS' => 'argentinski peso',
+ 'ATS' => 'rakuski šiling',
+ 'AUD' => 'awstralski dolar',
+ 'AWG' => 'aruba-florin',
+ 'AZM' => 'azerbajdžaniski manat (1993–2006)',
+ 'AZN' => 'azerbajdžaniski manat',
+ 'BAD' => 'bosniski dinar',
+ 'BAM' => 'bosniska konwertibelna marka',
+ 'BBD' => 'barbadoski dolar',
+ 'BDT' => 'bangladešska taka',
+ 'BEC' => 'belgiski frank (konwertibelny)',
+ 'BEF' => 'belgiski frank',
+ 'BEL' => 'belgiski financny frank',
+ 'BGL' => 'bulgarski lew (1962–1999)',
+ 'BGN' => 'bulgarski lew',
+ 'BHD' => 'bahrainski dinar',
+ 'BIF' => 'burundiski frank',
+ 'BMD' => 'bermudaski dolar',
+ 'BND' => 'bruneiski dolar',
+ 'BOB' => 'boliwiski boliviano',
+ 'BOP' => 'boliwiski peso',
+ 'BOV' => 'boliwiski mvdol',
+ 'BRB' => 'brazilski nowy cruzeiro (1967–1986)',
+ 'BRC' => 'brazilski cruzado (1986–1989)',
+ 'BRE' => 'brazilski cruzeiro (1990–1993)',
+ 'BRL' => 'brazilski real',
+ 'BRN' => 'brazilski nowy cruzado (1989–1990)',
+ 'BRR' => 'brazilski cruzeiro (1993–1994)',
+ 'BSD' => 'bahamaski dolar',
+ 'BTN' => 'bhutański ngultrum',
+ 'BUK' => 'burmaski kyat',
+ 'BWP' => 'botswaniska pula',
+ 'BYB' => 'běłoruski rubl (1994–1999)',
+ 'BYR' => 'běłoruski rubl',
+ 'BZD' => 'belizeski dolar',
+ 'CAD' => 'kanadiski dolar',
+ 'CDF' => 'kongoski frank',
+ 'CHF' => 'šwicarski frank',
+ 'CLP' => 'chilski peso',
+ 'CNY' => 'chinski yuan',
+ 'COP' => 'kolumbiski peso',
+ 'CRC' => 'kosta-rikański colón',
+ 'CUC' => 'kubański konwertibelny peso',
+ 'CUP' => 'kubański peso',
+ 'CVE' => 'kapverdski escudo',
+ 'CZK' => 'česka krona',
+ 'DJF' => 'dźibutiski frank',
+ 'DKK' => 'dańska krona',
+ 'DOP' => 'dominikański peso',
+ 'DZD' => 'algeriski dinar',
+ 'EGP' => 'egyptojski punt',
+ 'ERN' => 'eritrejska nakfa',
+ 'ETB' => 'etiopiski birr',
+ 'EUR' => 'euro',
+ 'FJD' => 'fidźiski dolar',
+ 'FKP' => 'falklandski punt',
+ 'GBP' => 'britiski punt',
+ 'GEL' => 'georgiski lari',
+ 'GHS' => 'ghanaski cedi',
+ 'GIP' => 'gibraltiski punt',
+ 'GMD' => 'gambiski dalasi',
+ 'GNF' => 'guineski frank',
+ 'GTQ' => 'guatemalski quetzal',
+ 'GWP' => 'Guinea-Bissau peso',
+ 'GYD' => 'guyański dolar',
+ 'HKD' => 'hongkongski dolar',
+ 'HNL' => 'honduraska lempira',
+ 'HRK' => 'chorwatska kuna',
+ 'HTG' => 'haitiska gourda',
+ 'HUF' => 'madźarski forint',
+ 'IDR' => 'indoneska rupija',
+ 'ILS' => 'israelski nowy šekel',
+ 'INR' => 'indiska rupija',
+ 'IQD' => 'irakski dinar',
+ 'IRR' => 'irański rial',
+ 'ISK' => 'islandska krona',
+ 'JMD' => 'jamaiski dolar',
+ 'JOD' => 'jordaniski dinar',
+ 'JPY' => 'japański yen',
+ 'KES' => 'keniaski šiling',
+ 'KGS' => 'kirgiski som',
+ 'KHR' => 'kambodžaski riel',
+ 'KMF' => 'komorski frank',
+ 'KPW' => 'pódpołnocnokorejski won',
+ 'KRW' => 'pódpołdnjowokorejski won',
+ 'KWD' => 'kuwaitski dinar',
+ 'KYD' => 'kajmaniski dolar',
+ 'KZT' => 'kazachski tenge',
+ 'LAK' => 'laoski kip',
+ 'LBP' => 'libanoński punt',
+ 'LKR' => 'sri-lankaska rupija',
+ 'LRD' => 'liberiski dolar',
+ 'LTL' => 'litawski litas',
+ 'LVL' => 'letiski lat',
+ 'LYD' => 'libyski dinar',
+ 'MAD' => 'marokkoski dirham',
+ 'MDL' => 'moldawiski leu',
+ 'MGA' => 'madagaskarski ariary',
+ 'MKD' => 'makedoński denar',
+ 'MMK' => 'myanmarski kyat',
+ 'MNT' => 'mongolski tugrik',
+ 'MOP' => 'macaoska pataca',
+ 'MRO' => 'mauretański ouguiya',
+ 'MUR' => 'mauriciska rupija',
+ 'MVR' => 'malediwiska rupija',
+ 'MWK' => 'malawiski kwacha',
+ 'MXN' => 'mexiski peso',
+ 'MYR' => 'malajziski ringgit',
+ 'MZE' => 'Mozabicke escudo',
+ 'MZM' => 'mosambikski metical (1980–2006)',
+ 'MZN' => 'mosambikski metical',
+ 'NAD' => 'namibiski dolar',
+ 'NGN' => 'nigeriska naira',
+ 'NIO' => 'nikaraguaska cordoba',
+ 'NOK' => 'norwegska krona',
+ 'NPR' => 'nepalska rupija',
+ 'NZD' => 'nowoseelandski dolar',
+ 'OMR' => 'omański rial',
+ 'PAB' => 'panamaski balboa',
+ 'PEN' => 'peruski nowy sol',
+ 'PGK' => 'papua-neuguinejska kina',
+ 'PHP' => 'filipinski peso',
+ 'PKR' => 'pakistańska rupija',
+ 'PLN' => 'pólski złoty',
+ 'PYG' => 'paraguayski guarani',
+ 'QAR' => 'katarski rial',
+ 'RON' => 'rumuński leu',
+ 'RSD' => 'serbiski dinar',
+ 'RUB' => 'ruski rubl',
+ 'RWF' => 'ruandiski frank',
+ 'SAR' => 'saudi-arabiski rial',
+ 'SBD' => 'salomoński dolar',
+ 'SCR' => 'seychelska rupija',
+ 'SDG' => 'sudański punt',
+ 'SEK' => 'šwedska krona',
+ 'SGD' => 'singapurski dolar',
+ 'SHP' => 'St. Helena punt',
+ 'SLL' => 'sierra-leoneski leone',
+ 'SOS' => 'somaliski šiling',
+ 'SRD' => 'surinamski dolar',
+ 'SSP' => 'pódpołdnjowosudański punt',
+ 'STD' => 'são-tomeska dobra',
+ 'SVC' => 'el-salvadorski colón',
+ 'SYP' => 'syriski punt',
+ 'SZL' => 'swasiski lilangeni',
+ 'THB' => 'thaiski baht',
+ 'TJS' => 'tadźikiski somoni',
+ 'TMT' => 'turkmeniski manat',
+ 'TND' => 'tuneziski dinar',
+ 'TOP' => 'tongaski paʻanga',
+ 'TRY' => 'turkojska lira',
+ 'TTD' => 'trinidad-tobagoski dolar',
+ 'TWD' => 'nowy taiwański dolar',
+ 'TZS' => 'tansaniski šiling',
+ 'UAH' => 'ukrainska griwna',
+ 'UGX' => 'ugandaski šiling',
+ 'USD' => 'ameriski dolar',
+ 'UYU' => 'uruguayski peso',
+ 'UZS' => 'usbekiski sum',
+ 'VEF' => 'venezuelski bolívar',
+ 'VND' => 'vietnamski dong',
+ 'VUV' => 'vanuatski vatu',
+ 'WST' => 'samoaska tala',
+ 'XAF' => 'CFA-frank (BEAC)',
+ 'XCD' => 'pódzajtšnokaribiski dolar',
+ 'XOF' => 'CFA-frank (BCEAO)',
+ 'XPF' => 'CFP-frank',
+ 'XXX' => 'njeznate pjenjeze',
+ 'YER' => 'jemeński rial',
+ 'ZAR' => 'pódpołdnjowoafriski rand',
+ 'ZMW' => 'sambiska kwacha',
+);
+
+$currencySymbols = array(
+ 'ALL' => 'ALL',
+ 'AUD' => 'AUD',
+ 'BGN' => 'BGN',
+ 'CAD' => 'CA$',
+ 'CNY' => 'CN¥',
+ 'EUR' => '€',
+ 'GBP' => '£',
+ 'HKD' => 'HK$',
+ 'ILS' => '₪',
+ 'JPY' => '¥',
+ 'KPW' => 'KPW',
+ 'KRW' => '₩',
+ 'MXN' => 'MX$',
+ 'NZD' => 'NZ$',
+ 'PLN' => 'zł',
+ 'THB' => '฿',
+ 'TWD' => 'NT$',
+ 'USD' => '$',
+ 'VND' => '₫',
+ 'XAF' => 'FCFA',
+ 'XCD' => 'EC$',
+ 'XOF' => 'CFA',
+ 'XPF' => 'CFPF',
+);
+
+$countryNames = array(
+ 'AC' => 'Ascension',
+ 'AD' => 'Andorra',
+ 'AE' => 'Zjadnośone arabiske emiraty',
+ 'AF' => 'Afghanistan',
+ 'AG' => 'Antigua a Barbuda',
+ 'AI' => 'Anguilla',
+ 'AL' => 'Albańska',
+ 'AM' => 'Armeńska',
+ 'AO' => 'Angola',
+ 'AQ' => 'Antarktis',
+ 'AR' => 'Argentinska',
+ 'AS' => 'Ameriska Samoa',
+ 'AT' => 'Awstriska',
+ 'AU' => 'Awstralska',
+ 'AW' => 'Aruba',
+ 'AX' => 'Åland',
+ 'AZ' => 'Azerbajdžan',
+ 'BA' => 'Bosniska a Hercegowina',
+ 'BB' => 'Barbados',
+ 'BD' => 'Bangladeš',
+ 'BE' => 'Belgiska',
+ 'BF' => 'Burkina Faso',
+ 'BG' => 'Bulgarska',
+ 'BH' => 'Bahrain',
+ 'BI' => 'Burundi',
+ 'BJ' => 'Benin',
+ 'BL' => 'St. Barthélemy',
+ 'BM' => 'Bermudy',
+ 'BN' => 'Brunei',
+ 'BO' => 'Boliwiska',
+ 'BQ' => 'Karibiska Nižozemska',
+ 'BR' => 'Brazilska',
+ 'BS' => 'Bahamy',
+ 'BT' => 'Bhutan',
+ 'BV' => 'Bouvetowa kupa',
+ 'BW' => 'Botswana',
+ 'BY' => 'Běłoruska',
+ 'BZ' => 'Belize',
+ 'CA' => 'Kanada',
+ 'CC' => 'Kokosowe kupy',
+ 'CD' => 'Kongo-Kinshasa',
+ 'CF' => 'Centralnoafriska republika',
+ 'CG' => 'Kongo-Brazzaville',
+ 'CH' => 'Šwicarska',
+ 'CI' => 'Côte d’Ivoire',
+ 'CK' => 'Cookowe kupy',
+ 'CL' => 'Chilska',
+ 'CM' => 'Kamerun',
+ 'CN' => 'China',
+ 'CO' => 'Kolumbiska',
+ 'CP' => 'Clippertonowa kupa',
+ 'CR' => 'Kosta Rika',
+ 'CU' => 'Kuba',
+ 'CV' => 'Kap Verde',
+ 'CW' => 'Curaçao',
+ 'CX' => 'Gódowne kupy',
+ 'CY' => 'Cypriska',
+ 'CZ' => 'Česka republika',
+ 'DE' => 'Nimska',
+ 'DG' => 'Diego Garcia',
+ 'DJ' => 'Džibuti',
+ 'DK' => 'Dańska',
+ 'DM' => 'Dominika',
+ 'DO' => 'Dominikańska republika',
+ 'DZ' => 'Algeriska',
+ 'EA' => 'Ceuta a Melilla',
+ 'EC' => 'Ekwador',
+ 'EE' => 'Estniska',
+ 'EG' => 'Egyptojska',
+ 'EH' => 'Pódwjacorna Sahara',
+ 'ER' => 'Eritreja',
+ 'ES' => 'Špańska',
+ 'ET' => 'Etiopiska',
+ 'EU' => 'Europska unija',
+ 'FI' => 'Finska',
+ 'FJ' => 'Fidži',
+ 'FK' => 'Falklandske kupy',
+ 'FM' => 'Mikroneziska',
+ 'FO' => 'Färöje',
+ 'FR' => 'Francojska',
+ 'GA' => 'Gabun',
+ 'GB' => 'UK',
+ 'GD' => 'Grenada',
+ 'GE' => 'Georgiska',
+ 'GF' => 'Francojska Guyana',
+ 'GG' => 'Guernsey',
+ 'GH' => 'Ghana',
+ 'GI' => 'Gibraltar',
+ 'GL' => 'Grönlandska',
+ 'GM' => 'Gambija',
+ 'GN' => 'Gineja',
+ 'GP' => 'Guadeloupe',
+ 'GQ' => 'Ekwatorialna Gineja',
+ 'GR' => 'Grichiska',
+ 'GS' => 'Pódpołdnjowa Georgiska a Pódpołdnjowe Sandwichowe kupy',
+ 'GT' => 'Guatemala',
+ 'GU' => 'Guam',
+ 'GW' => 'Gineja-Bissau',
+ 'GY' => 'Guyana',
+ 'HK' => 'Hongkong',
+ 'HM' => 'Heardowa kupa a McDonaldowe kupy',
+ 'HN' => 'Honduras',
+ 'HR' => 'Chorwatska',
+ 'HT' => 'Haiti',
+ 'HU' => 'Hungorska',
+ 'IC' => 'Kanariske kupy',
+ 'ID' => 'Indoneziska',
+ 'IE' => 'Irska',
+ 'IL' => 'Israel',
+ 'IM' => 'Man',
+ 'IN' => 'Indiska',
+ 'IO' => 'Britiski indiskooceaniski teritorium',
+ 'IQ' => 'Irak',
+ 'IR' => 'Iran',
+ 'IS' => 'Islandska',
+ 'IT' => 'Italska',
+ 'JE' => 'Jersey',
+ 'JM' => 'Jamaika',
+ 'JO' => 'Jordaniska',
+ 'JP' => 'Japańska',
+ 'KE' => 'Kenia',
+ 'KG' => 'Kirgizistan',
+ 'KH' => 'Kambodža',
+ 'KI' => 'Kiribati',
+ 'KM' => 'Komory',
+ 'KN' => 'St. Kitts a Nevis',
+ 'KP' => 'Pódpołnocna Koreja',
+ 'KR' => 'Pódpołdnjowa Koreja',
+ 'KW' => 'Kuwait',
+ 'KY' => 'Kajmaniske kupy',
+ 'KZ' => 'Kazachstan',
+ 'LA' => 'Laos',
+ 'LB' => 'Libanon',
+ 'LC' => 'St. Lucia',
+ 'LI' => 'Liechtenstein',
+ 'LK' => 'Sri Lanka',
+ 'LR' => 'Liberija',
+ 'LS' => 'Lesotho',
+ 'LT' => 'Litawska',
+ 'LU' => 'Luxemburgska',
+ 'LV' => 'Letiska',
+ 'LY' => 'Libyska',
+ 'MA' => 'Marokko',
+ 'MC' => 'Monaco',
+ 'MD' => 'Moldawska',
+ 'ME' => 'Carna Góra',
+ 'MF' => 'St. Martin',
+ 'MG' => 'Madagaskar',
+ 'MH' => 'Marshallowe kupy',
+ 'MK' => 'Makedońska',
+ 'ML' => 'Mali',
+ 'MM' => 'Myanmar',
+ 'MN' => 'Mongolska',
+ 'MO' => 'Macao',
+ 'MP' => 'Pódpołnocne Mariany',
+ 'MQ' => 'Martinique',
+ 'MR' => 'Mawretańska',
+ 'MS' => 'Montserrat',
+ 'MT' => 'Malta',
+ 'MU' => 'Mauritius',
+ 'MV' => 'Malediwy',
+ 'MW' => 'Malawi',
+ 'MX' => 'Mexiko',
+ 'MY' => 'Malajzija',
+ 'MZ' => 'Mosambik',
+ 'NA' => 'Namibija',
+ 'NC' => 'Nowa Kaledoniska',
+ 'NE' => 'Niger',
+ 'NF' => 'Norfolkowa kupa',
+ 'NG' => 'Nigerija',
+ 'NI' => 'Nikaragua',
+ 'NL' => 'Nižozemska',
+ 'NO' => 'Norwegska',
+ 'NP' => 'Nepal',
+ 'NR' => 'Nauru',
+ 'NU' => 'Niue',
+ 'NZ' => 'Nowoseelandska',
+ 'OM' => 'Oman',
+ 'PA' => 'Panama',
+ 'PE' => 'Peru',
+ 'PF' => 'Francojska Polyneziska',
+ 'PG' => 'Papua-Neuguinea',
+ 'PH' => 'Filipiny',
+ 'PK' => 'Pakistan',
+ 'PL' => 'Pólska',
+ 'PM' => 'St. Pierre a Miquelon',
+ 'PN' => 'Pitcairnowe kupy',
+ 'PR' => 'Puerto Rico',
+ 'PS' => 'Palestina',
+ 'PT' => 'Portugalska',
+ 'PW' => 'Palau',
+ 'PY' => 'Paraguay',
+ 'QA' => 'Katar',
+ 'QO' => 'wenkowna Oceaniska',
+ 'RE' => 'Réunion',
+ 'RO' => 'Rumuńska',
+ 'RS' => 'Serbiska',
+ 'RU' => 'Ruska',
+ 'RW' => 'Ruanda',
+ 'SA' => 'Saudi-Arabiska',
+ 'SB' => 'Salomony',
+ 'SC' => 'Seychelle',
+ 'SD' => 'Sudan',
+ 'SE' => 'Šwedska',
+ 'SG' => 'Singapur',
+ 'SH' => 'St. Helena',
+ 'SI' => 'Słowjeńska',
+ 'SJ' => 'Svalbard a Jan Mayen',
+ 'SK' => 'Słowakska',
+ 'SL' => 'Sierra Leone',
+ 'SM' => 'San Marino',
+ 'SN' => 'Senegal',
+ 'SO' => 'Somalija',
+ 'SR' => 'Surinamska',
+ 'SS' => 'Pódpołdnjowy Sudan',
+ 'ST' => 'São Tomé a Príncipe',
+ 'SV' => 'El Salvador',
+ 'SX' => 'Sint Maarten',
+ 'SY' => 'Syriska',
+ 'SZ' => 'Swasiska',
+ 'TA' => 'Tristan da Cunha',
+ 'TC' => 'Turks a Caicos kupy',
+ 'TD' => 'Čad',
+ 'TF' => 'Francojski pódpołdnjowy a antarktiski teritorium',
+ 'TG' => 'Togo',
+ 'TH' => 'Thailandska',
+ 'TJ' => 'Tadźikistan',
+ 'TK' => 'Tokelau',
+ 'TL' => 'Timor-Leste',
+ 'TM' => 'Turkmeniska',
+ 'TN' => 'Tuneziska',
+ 'TO' => 'Tonga',
+ 'TR' => 'Turkojska',
+ 'TT' => 'Trinidad a Tobago',
+ 'TV' => 'Tuvalu',
+ 'TW' => 'Taiwan',
+ 'TZ' => 'Tansanija',
+ 'UA' => 'Ukraina',
+ 'UG' => 'Uganda',
+ 'UM' => 'Ameriska Oceaniska',
+ 'US' => 'USA',
+ 'UY' => 'Uruguay',
+ 'UZ' => 'Uzbekistan',
+ 'VA' => 'Vatikańske město',
+ 'VC' => 'St. Vincent a Grenadiny',
+ 'VE' => 'Venezuela',
+ 'VG' => 'Britiske kněžniske kupy',
+ 'VI' => 'Ameriske kněžniske kupy',
+ 'VN' => 'Vietnam',
+ 'VU' => 'Vanuatu',
+ 'WF' => 'Wallis a Futuna',
+ 'WS' => 'Samoa',
+ 'XK' => 'Kosowo',
+ 'YE' => 'Jemen',
+ 'YT' => 'Mayotte',
+ 'ZA' => 'Pódpołdnjowa Afrika (Republika)',
+ 'ZM' => 'Sambija',
+ 'ZW' => 'Simbabwe',
+);
+
+$timeUnits = array(
+ 'day-few' => '{0} dny',
+ 'day-future-few' => 'za {0} dny',
+ 'day-future-one' => 'za {0} źeń',
+ 'day-future-other' => 'za {0} dnjow',
+ 'day-future-two' => 'za {0} dnja',
+ 'day-narrow-future-few' => 'za {0} ź',
+ 'day-narrow-future-one' => 'za {0} ź',
+ 'day-narrow-future-other' => 'za {0} ź',
+ 'day-narrow-future-two' => 'za {0} ź',
+ 'day-narrow-past-few' => 'pśed {0} d',
+ 'day-narrow-past-one' => 'pśed {0} d',
+ 'day-narrow-past-other' => 'pśed {0} d',
+ 'day-narrow-past-two' => 'pśed {0} d',
+ 'day-one' => '{0} źeń',
+ 'day-other' => '{0} dnjow',
+ 'day-past-few' => 'pśed {0} dnjami',
+ 'day-past-one' => 'pśed {0} dnjom',
+ 'day-past-other' => 'pśed {0} dnjami',
+ 'day-past-two' => 'pśed {0} dnjoma',
+ 'day-short-future-few' => 'za {0} dny',
+ 'day-short-future-one' => 'za {0} źeń',
+ 'day-short-future-other' => 'za {0} dnj.',
+ 'day-short-future-two' => 'za {0} dnj.',
+ 'day-short-past-few' => 'pśed {0} dnj.',
+ 'day-short-past-one' => 'pśed {0} dnj.',
+ 'day-short-past-other' => 'pśed {0} dnj.',
+ 'day-short-past-two' => 'pśed {0} dnj.',
+ 'day-two' => '{0} dnja',
+ 'hour-few' => '{0} góźiny',
+ 'hour-future-few' => 'za {0} góźiny',
+ 'hour-future-one' => 'za {0} góźinu',
+ 'hour-future-other' => 'za {0} góźin',
+ 'hour-future-two' => 'za {0} góźinje',
+ 'hour-narrow-future-few' => 'za {0} g',
+ 'hour-narrow-future-one' => 'za {0} g',
+ 'hour-narrow-future-other' => 'za {0} g',
+ 'hour-narrow-future-two' => 'za {0} g',
+ 'hour-narrow-past-few' => 'pśed {0} g',
+ 'hour-narrow-past-one' => 'pśed {0} g',
+ 'hour-narrow-past-other' => 'pśed {0} g',
+ 'hour-narrow-past-two' => 'pśed {0} g',
+ 'hour-one' => '{0} góźina',
+ 'hour-other' => '{0} góźinow',
+ 'hour-past-few' => 'pśed {0} góźinami',
+ 'hour-past-one' => 'pśed {0} góźinu',
+ 'hour-past-other' => 'pśed {0} góźinami',
+ 'hour-past-two' => 'pśed {0} góźinoma',
+ 'hour-short-future-few' => 'za {0} góź.',
+ 'hour-short-future-one' => 'za {0} góź.',
+ 'hour-short-future-other' => 'za {0} góź.',
+ 'hour-short-future-two' => 'za {0} góź.',
+ 'hour-short-past-few' => 'pśed {0} góź.',
+ 'hour-short-past-one' => 'pśed {0} góź.',
+ 'hour-short-past-other' => 'pśed {0} góź.',
+ 'hour-short-past-two' => 'pśed {0} góź.',
+ 'hour-two' => '{0} góźinje',
+ 'microsecond-few' => '{0} mikrosekundy',
+ 'microsecond-one' => '{0} mikrosekunda',
+ 'microsecond-other' => '{0} mikrosekundow',
+ 'microsecond-two' => '{0} mikrosekunźe',
+ 'millisecond-few' => '{0} milisekundy',
+ 'millisecond-one' => '{0} milisekunda',
+ 'millisecond-other' => '{0} milisekundow',
+ 'millisecond-two' => '{0} milisekunźe',
+ 'minute-few' => '{0} minuty',
+ 'minute-future-few' => 'za {0} minuty',
+ 'minute-future-one' => 'za {0} minutu',
+ 'minute-future-other' => 'za {0} minutow',
+ 'minute-future-two' => 'za {0} minuśe',
+ 'minute-narrow-future-few' => 'za {0} m',
+ 'minute-narrow-future-one' => 'za {0} m',
+ 'minute-narrow-future-other' => 'za {0} m',
+ 'minute-narrow-future-two' => 'za {0} m',
+ 'minute-narrow-past-few' => 'pśed {0} m',
+ 'minute-narrow-past-one' => 'pśed {0} m',
+ 'minute-narrow-past-other' => 'pśed {0} m',
+ 'minute-narrow-past-two' => 'pśed {0} m',
+ 'minute-one' => '{0} minuta',
+ 'minute-other' => '{0} minutow',
+ 'minute-past-few' => 'pśed {0} minutami',
+ 'minute-past-one' => 'pśed {0} minutu',
+ 'minute-past-other' => 'pśed {0} minutami',
+ 'minute-past-two' => 'pśed {0} minutoma',
+ 'minute-short-future-few' => 'za {0} min.',
+ 'minute-short-future-one' => 'za {0} min.',
+ 'minute-short-future-other' => 'za {0} min.',
+ 'minute-short-future-two' => 'za {0} min.',
+ 'minute-short-past-few' => 'pśed {0} min.',
+ 'minute-short-past-one' => 'pśed {0} min.',
+ 'minute-short-past-other' => 'pśed {0} min.',
+ 'minute-short-past-two' => 'pśed {0} min.',
+ 'minute-two' => '{0} minuśe',
+ 'month-few' => '{0} mjasecy',
+ 'month-future-few' => 'za {0} mjasecy',
+ 'month-future-one' => 'za {0} mjasec',
+ 'month-future-other' => 'za {0} mjasecow',
+ 'month-future-two' => 'za {0} mjaseca',
+ 'month-narrow-future-few' => 'za {0} mjas.',
+ 'month-narrow-future-one' => 'za {0} mjas.',
+ 'month-narrow-future-other' => 'za {0} mjas.',
+ 'month-narrow-future-two' => 'za {0} mjas.',
+ 'month-narrow-past-few' => 'pśed {0} mjas.',
+ 'month-narrow-past-one' => 'pśed {0} mjas.',
+ 'month-narrow-past-other' => 'pśed {0} mjas.',
+ 'month-narrow-past-two' => 'pśed {0} mjas.',
+ 'month-one' => '{0} mjasec',
+ 'month-other' => '{0} mjasecow',
+ 'month-past-few' => 'pśed {0} mjasecami',
+ 'month-past-one' => 'pśed {0} mjasecom',
+ 'month-past-other' => 'pśed {0} mjasecami',
+ 'month-past-two' => 'pśed {0} mjasecoma',
+ 'month-short-future-few' => 'za {0} mjas.',
+ 'month-short-future-one' => 'za {0} mjas.',
+ 'month-short-future-other' => 'za {0} mjas.',
+ 'month-short-future-two' => 'za {0} mjas.',
+ 'month-short-past-few' => 'pśed {0} mjas.',
+ 'month-short-past-one' => 'pśed {0} mjas.',
+ 'month-short-past-other' => 'pśed {0} mjas.',
+ 'month-short-past-two' => 'pśed {0} mjas.',
+ 'month-two' => '{0} mjaseca',
+ 'nanosecond-few' => '{0} nanosekundy',
+ 'nanosecond-one' => '{0} nanosekunda',
+ 'nanosecond-other' => '{0} nanosekundow',
+ 'nanosecond-two' => '{0} nanosekunźe',
+ 'quarter-future-few' => 'za {0} kwartale',
+ 'quarter-future-one' => 'za {0} kwartal',
+ 'quarter-future-other' => 'za {0} kwartalow',
+ 'quarter-future-two' => 'za {0} kwartala',
+ 'quarter-narrow-future-few' => 'za {0} kw.',
+ 'quarter-narrow-future-one' => 'za {0} kw.',
+ 'quarter-narrow-future-other' => 'za {0} kw.',
+ 'quarter-narrow-future-two' => 'za {0} kw.',
+ 'quarter-narrow-past-few' => 'pśed {0} kw.',
+ 'quarter-narrow-past-one' => 'pśed {0} kw.',
+ 'quarter-narrow-past-other' => 'pśed {0} kw.',
+ 'quarter-narrow-past-two' => 'pśed {0} kw.',
+ 'quarter-past-few' => 'pśed {0} kwartalami',
+ 'quarter-past-one' => 'pśed {0} kwartalom',
+ 'quarter-past-other' => 'pśed {0} kwartalami',
+ 'quarter-past-two' => 'pśed {0} kwartaloma',
+ 'quarter-short-future-few' => 'za {0} kwart.',
+ 'quarter-short-future-one' => 'za {0} kwart.',
+ 'quarter-short-future-other' => 'za {0} kwart.',
+ 'quarter-short-future-two' => 'za {0} kwart.',
+ 'quarter-short-past-few' => 'pśed {0} kwart.',
+ 'quarter-short-past-one' => 'pśed {0} kwart.',
+ 'quarter-short-past-other' => 'pśed {0} kwart.',
+ 'quarter-short-past-two' => 'pśed {0} kwart.',
+ 'second-few' => '{0} sekundy',
+ 'second-future-few' => 'za {0} sekundy',
+ 'second-future-one' => 'za {0} sekundu',
+ 'second-future-other' => 'za {0} sekundow',
+ 'second-future-two' => 'za {0} sekunźe',
+ 'second-narrow-future-few' => 'za {0} s',
+ 'second-narrow-future-one' => 'za {0} s',
+ 'second-narrow-future-other' => 'za {0} s',
+ 'second-narrow-future-two' => 'za {0} s',
+ 'second-narrow-past-few' => 'pśed {0} s',
+ 'second-narrow-past-one' => 'pśed {0} s',
+ 'second-narrow-past-other' => 'pśed {0} s',
+ 'second-narrow-past-two' => 'pśed {0} s',
+ 'second-one' => '{0} sekunda',
+ 'second-other' => '{0} sekundow',
+ 'second-past-few' => 'pśed {0} sekundami',
+ 'second-past-one' => 'pśed {0} sekundu',
+ 'second-past-other' => 'pśed {0} sekundami',
+ 'second-past-two' => 'pśed {0} sekundoma',
+ 'second-short-future-few' => 'za {0} sek.',
+ 'second-short-future-one' => 'za {0} sek.',
+ 'second-short-future-other' => 'za {0} sek.',
+ 'second-short-future-two' => 'za {0} sek.',
+ 'second-short-past-few' => 'pśed {0} sek.',
+ 'second-short-past-one' => 'pśed {0} sek.',
+ 'second-short-past-other' => 'pśed {0} sek.',
+ 'second-short-past-two' => 'pśed {0} sek.',
+ 'second-two' => '{0} sekunźe',
+ 'week-few' => '{0} tyźenje',
+ 'week-future-few' => 'za {0} tyźenje',
+ 'week-future-one' => 'za {0} tyźeń',
+ 'week-future-other' => 'za {0} tyźenjow',
+ 'week-future-two' => 'za {0} tyźenja',
+ 'week-narrow-future-few' => 'za {0} tyź.',
+ 'week-narrow-future-one' => 'za {0} tyź.',
+ 'week-narrow-future-other' => 'za {0} tyź.',
+ 'week-narrow-future-two' => 'za {0} tyź.',
+ 'week-narrow-past-few' => 'pśed {0} tyź.',
+ 'week-narrow-past-one' => 'pśed {0} tyź.',
+ 'week-narrow-past-other' => 'pśed {0} tyź.',
+ 'week-narrow-past-two' => 'pśed {0} tyź.',
+ 'week-one' => '{0} tyźeń',
+ 'week-other' => '{0} tyźenjow',
+ 'week-past-few' => 'pśed {0} tyźenjami',
+ 'week-past-one' => 'pśed {0} tyźenjom',
+ 'week-past-other' => 'pśed {0} tyźenjami',
+ 'week-past-two' => 'pśed {0} tyźenjoma',
+ 'week-short-future-few' => 'za {0} tyź.',
+ 'week-short-future-one' => 'za {0} tyź.',
+ 'week-short-future-other' => 'za {0} tyź.',
+ 'week-short-future-two' => 'za {0} tyź.',
+ 'week-short-past-few' => 'pśed {0} tyź.',
+ 'week-short-past-one' => 'pśed {0} tyź.',
+ 'week-short-past-other' => 'pśed {0} tyź.',
+ 'week-short-past-two' => 'pśed {0} tyź.',
+ 'week-two' => '{0} tyźenja',
+ 'year-few' => '{0} lěta',
+ 'year-future-few' => 'za {0} lěta',
+ 'year-future-one' => 'za {0} lěto',
+ 'year-future-other' => 'za {0} lět',
+ 'year-future-two' => 'za {0} lěśe',
+ 'year-narrow-future-few' => 'za {0} l.',
+ 'year-narrow-future-one' => 'za {0} l.',
+ 'year-narrow-future-other' => 'za {0} l.',
+ 'year-narrow-future-two' => 'za {0} l.',
+ 'year-narrow-past-few' => 'pśed {0} l.',
+ 'year-narrow-past-one' => 'pśed {0} l.',
+ 'year-narrow-past-other' => 'pśed {0} l.',
+ 'year-narrow-past-two' => 'pśed {0} l.',
+ 'year-one' => '{0} lěto',
+ 'year-other' => '{0} lět',
+ 'year-past-few' => 'pśed {0} lětami',
+ 'year-past-one' => 'pśed {0} lětom',
+ 'year-past-other' => 'pśed {0} lětami',
+ 'year-past-two' => 'pśed {0} lětoma',
+ 'year-short-future-few' => 'za {0} l.',
+ 'year-short-future-one' => 'za {0} l.',
+ 'year-short-future-other' => 'za {0} l.',
+ 'year-short-future-two' => 'za {0} l.',
+ 'year-short-past-few' => 'pśed {0} l.',
+ 'year-short-past-one' => 'pśed {0} l.',
+ 'year-short-past-other' => 'pśed {0} l.',
+ 'year-short-past-two' => 'pśed {0} l.',
+ 'year-two' => '{0} lěśe',
+);
diff --git a/MLEB/cldr/CldrNames/CldrNamesDz.php b/MLEB/cldr/CldrNames/CldrNamesDz.php
new file mode 100644
index 00000000..c225390f
--- /dev/null
+++ b/MLEB/cldr/CldrNames/CldrNamesDz.php
@@ -0,0 +1,529 @@
+<?php
+
+$languageNames = array(
+ 'aa' => 'ཨ་ཕར་ཁ',
+ 'ab' => 'ཨཱབ་ཁ་ཟི་ཡ་ཁ',
+ 'af' => 'ཨཕ་རི་ཀཱནས་ཁ',
+ 'am' => 'ཨམ་ཧ་རིཀ་ཁ',
+ 'ar' => 'ཨེ་ར་བིཀ་ཁ',
+ 'as' => 'ཨ་ས་མིས་ཁ',
+ 'az' => 'ཨ་ཛར་བྷའི་ཇཱན་ཁ',
+ 'be' => 'བེལ་ཨ་རུས་ཁ',
+ 'bg' => 'བཱལ་གེ་རི་ཡཱན་ཁ',
+ 'bn' => 'བངྒ་ལ་ཁ',
+ 'bo' => 'བོད་ཁ',
+ 'bs' => 'བྷོས་ནི་ཡཱན་ཁ',
+ 'ca' => 'ཀེ་ཊ་ལཱན་ཁ',
+ 'cs' => 'ཅེཀ་ཁ',
+ 'cy' => 'ཝེལཤ་ཁ',
+ 'da' => 'ཌེ་ནིཤ་ཁ',
+ 'dak' => 'ད་ཀོ་ཏ་ཁ',
+ 'de' => 'ཇཱར་མཱན་ཁ',
+ 'de-at' => 'ཨཱོས་ཊྲི་ཡཱན་ཇཱར་མཱན་ཁ',
+ 'de-ch' => 'སུ་ཡིས་གི་མཐོ་སའི་ཇཱར་མཱན་ཁ',
+ 'dv' => 'དི་བེ་ཧི་ཁ',
+ 'dz' => 'རྫོང་ཁ',
+ 'egy' => 'ཨི་ཇིཔ་ཤཱན (སྔ་དུས་ཀྱི)',
+ 'el' => 'གྲིཀ་ཁ',
+ 'en' => 'ཨིང་ལིཤ་ཁ',
+ 'en-au' => 'ཨཱོས་ཊྲེ་ལི་ཡཱན་ཨིང་ལིཤ་ཁ',
+ 'en-ca' => 'ཀེ་ན་ཌི་ཡཱན་ཨིང་ལིཤ་ཁ',
+ 'en-gb' => 'བྲི་ཊིཤ་ཨིང་ལིཤ་ཁ',
+ 'en-us' => 'ཡུ་ཨེས་ཨིང་ལིཤ་ཁ',
+ 'eo' => 'ཨེས་པ་རཱན་ཏོ་ཁ',
+ 'es' => 'ཨིས་པེ་ནིཤ་ཁ',
+ 'es-419' => 'ལེ་ཊིན་ཨ་མེ་རི་ཀཱན་གི་ཨིས་པེ་ནིཤ་ཁ',
+ 'es-es' => 'ཡུ་རོབ་ཀྱི་ཨིས་པེ་ནིཤ་ཁ',
+ 'et' => 'ཨེས་ཊོ་ནི་ཡཱན་ཁ',
+ 'eu' => 'བཱསཀ་ཁ',
+ 'fa' => 'པར་ཤི་ཡཱན་ཁ',
+ 'fi' => 'ཕི་ནིཤ་ཁ',
+ 'fil' => 'ཕི་ལི་པི་ནོ་ཁ',
+ 'fj' => 'ཕི་ཇི་ཡཱན་ཁ',
+ 'fo' => 'ཕཱ་རོ་ཨིས་ཁ',
+ 'fr' => 'ཕྲནཅ་ཁ',
+ 'fr-ca' => 'ཀེ་ན་ཌི་ཡཱན་ཕྲནཅ་ཁ',
+ 'fr-ch' => 'སུ་ཡིས་ཕྲནཅ་ཁ',
+ 'fy' => 'ནུབ་ཕྼི་སི་ཡན་ཁ',
+ 'ga' => 'ཨཱའི་རིཤ་ཁ',
+ 'gl' => 'གལ་ཨིས་ཨི་ཡན་ཁ',
+ 'gn' => 'གུ་ཝ་ར་ནི་ཁ',
+ 'grc' => 'གིརིཀ, སྔ་དུས་ཀྱི (༡༤༥༣)',
+ 'gsw' => 'སུ་ཡིས་ཇཱར་མཱན་ཁ',
+ 'gu' => 'གུ་ཇ་ར་ཏི་ཁ',
+ 'ha' => 'ཧཝ་ས་ཁ',
+ 'haw' => 'ཧ་ཝ་ཡིའི་ཁ',
+ 'he' => 'ཧེ་བྲུ་ཁ',
+ 'hi' => 'ཧིན་དི་ཁ',
+ 'hr' => 'ཀྲོ་ཨེ་ཤི་ཡཱན་ཁ',
+ 'ht' => 'ཧེ་ཏི་ཡཱན་ཁ',
+ 'hu' => 'ཧཱང་གྷ་རི་ཡཱན་ཁ',
+ 'hy' => 'ཨར་མི་ནི་ཡཱན་ཁ',
+ 'id' => 'ཨིན་ཌོ་ནེ་ཤི་ཡཱན་ཁ',
+ 'ig' => 'ཨིག་བོ་ཁ',
+ 'is' => 'ཨ་ཡིས་ལེན་ཌིཀ་ཁ',
+ 'it' => 'ཨི་ཊ་ལི་ཡཱན་ཁ',
+ 'ja' => 'ཇཱ་པཱ་ནིས་ཁ',
+ 'jv' => 'ཇཱ་བ་ནིས་ཁ',
+ 'ka' => 'ཇཽ་ཇི་ཡཱན་ཁ',
+ 'kac' => 'ཀ་ཆིན་ཁ',
+ 'kfo' => 'ཀོ་རོ་ཁ',
+ 'kk' => 'ཀ་ཛགས་ཁ',
+ 'km' => 'ཁེ་མེར་ཁ',
+ 'kn' => 'ཀ་ན་ཌ་ཁ',
+ 'ko' => 'ཀོ་རི་ཡཱན་ཁ',
+ 'ks' => 'ཀཱཤ་མི་རི་ཁ',
+ 'ku' => 'ཀར་ཌིཤ་ཁ',
+ 'ky' => 'ཀིར་གིས་ཁ',
+ 'la' => 'ལེ་ཊིན་ཁ',
+ 'lb' => 'ལག་ཛམ་བོརྒ་ཁ',
+ 'lo' => 'ལཱ་ཝོས་ཁ',
+ 'lt' => 'ལི་ཐུ་ཝེ་ནི་ཡཱན་ཁ',
+ 'lv' => 'ལཊ་བི་ཡཱན་ཁ',
+ 'mg' => 'མ་ལ་ག་སི་ཁ',
+ 'mi' => 'མ་ཨོ་རི་ཁ',
+ 'mk' => 'མ་སེ་ཌོ་ནི་ཡཱན་ཁ',
+ 'ml' => 'མ་ལ་ཡ་ལམ་ཁ',
+ 'mn' => 'སོག་པོའི་ཁ',
+ 'mnc' => 'མན་ཇུ་ཁ',
+ 'mni' => 'མ་ནི་པུ་རི',
+ 'mr' => 'མ་ར་ཐི་ཁ',
+ 'ms' => 'མ་ལེ་ཁ',
+ 'mt' => 'མཱལ་ཊ་ཁ',
+ 'my' => 'བར་མིས་ཁ',
+ 'nb' => 'ནོར་ཝེ་ཇི་ཡཱན་བོཀ་མཱལ་ཁ',
+ 'ne' => 'ནེ་པཱལི་ཁ',
+ 'new' => 'ནི་ཝ་རི',
+ 'nl' => 'ཌཆ་ཁ',
+ 'nl-be' => 'ཕྷེལེ་མིཤ་ཁ',
+ 'nn' => 'ནོར་ཝེ་ཇི་ཡཱན་ནོརསཀ་ཁ',
+ 'no' => 'ནོར་ཝི་ཇི་ཡན་ཁ',
+ 'or' => 'ཨོ་རི་ཡ་ཁ',
+ 'pa' => 'པཱན་ཇ་བི་ཁ',
+ 'pi' => 'པ་ལི',
+ 'pl' => 'པོ་ལིཤ་ཁ',
+ 'ps' => 'པཱཤ་ཏོ་ཁ',
+ 'pt' => 'པོར་ཅུ་གིས་ཁ',
+ 'pt-br' => 'བྲ་ཛི་ལི་ཡཱན་པོར་ཅུ་གིས་ཁ',
+ 'pt-pt' => 'ཨི་བེ་རི་ཡཱན་པོར་ཅུ་གིས་ཁ',
+ 'qu' => 'ཀྭེ་ཆུ་ཨ་ཁ',
+ 'rm' => 'རོ་མེ་ནིཤ་ཁ',
+ 'ro' => 'རོ་མེ་ནི་ཡཱན་ཁ',
+ 'ru' => 'ཨུ་རུ་སུའི་ཁ',
+ 'sa' => 'སཾསྐྲྀཏ་ཁ',
+ 'sd' => 'སིན་དཱི་ཁ',
+ 'shn' => 'ཤཱན་ཁ',
+ 'si' => 'སིང་ཧ་ལ་ཁ',
+ 'sk' => 'སུ་ལོ་བཱཀ་ཁ',
+ 'sl' => 'སུ་ལོ་བི་ནི་ཡཱན་ཁ',
+ 'so' => 'སོ་མ་ལི་ཁ',
+ 'sq' => 'ཨཱལ་བེ་ནི་ཡཱན་ཁ',
+ 'sr' => 'སཱར་བྷི་ཡཱན་ཁ',
+ 'su' => 'སཱུན་ད་ནིས་ཁ',
+ 'sv' => 'སུའི་ཌིཤ་ཁ',
+ 'sw' => 'སྭཱ་ཧི་ལི་ཁ',
+ 'ta' => 'ཏ་མིལ་ཁ',
+ 'te' => 'ཏེ་ལུ་གུ་ཁ',
+ 'tg' => 'ཏ་ཇིཀ་ཁ',
+ 'th' => 'ཐཱའི་ཁ',
+ 'ti' => 'ཏིག་རི་ཉ་ཁ',
+ 'tk' => 'ཊཱརཀ་མེན་ཁ',
+ 'to' => 'ཊོང་གྷན་ཁ',
+ 'tr' => 'ཊཱར་ཀིཤ་ཁ',
+ 'tt' => 'ཊ་ཊར་ཁ',
+ 'ug' => 'ཝི་གུར་ཁ',
+ 'uk' => 'ཡུ་ཀེ་རེ་ནི་ཡཱན་ཁ',
+ 'und' => 'ཁ་ངོ་མ་ཤེསཔ',
+ 'ur' => 'ཨུར་དུ་ཁ',
+ 'uz' => 'ཨུས་བེཀ་ཁ',
+ 'vi' => 'བེཊ་ནཱ་མིས་ཁ',
+ 'wo' => 'ཝོ་ལོཕ་ཁ',
+ 'xh' => 'ཞོ་ས་ཁ',
+ 'yo' => 'ཡོ་རུ་བ་ཁ',
+ 'zh' => 'རྒྱ་མི་ཁ',
+ 'zh-hans' => 'རྒྱ་མི་ཁ་འཇམ་སངམ',
+ 'zh-hant' => 'སྔ་དུས་ཀྱི་རྒྱ་མི་ཁ',
+ 'zu' => 'ཟུ་ལུ་ཁ',
+ 'zxx' => 'སྐད་རིག་ནང་དོན་མེདཔ',
+);
+
+$currencyNames = array(
+ 'AED' => 'ཡུ་ནཱའི་ཊེཌ་ ཨ་རབ་ ཨེ་མེ་རེཊས་ཀྱི་དངུལ་ ཌིར་ཧཱམ',
+ 'AFN' => 'ཨཕ་གཱན་གྱི་དངུལ་ ཨཕ་ག་ནི',
+ 'AUD' => 'ཨཱོས་ཊྲེ་ལི་ཡ་གི་དངུལ་ ཌོ་ལར',
+ 'BDT' => 'བྷང་ལ་དེཤ་གི་དངུལ་ ཏ་ཀ',
+ 'BMD' => 'བར་མུ་ཌ་གི་དངུལ་ ཌོ་ལར',
+ 'BRL' => 'བྲ་ཛིལ་གྱི་དངུལ་ རེ་ཡལ',
+ 'BTN' => 'དངུལ་ཀྲམ',
+ 'CAD' => 'ཀེ་ན་ཌ་གི་དངུལ་ ཌོ་ལར',
+ 'CHF' => 'སུ་ཡིས་ཀྱི་དངུལ་ ཕྲངཀ',
+ 'CLP' => 'ཅི་ལི་གི་དངུལ་ པེ་སོ',
+ 'CNY' => 'རྒྱ་ནག་གི་དངུལ་ ཡུ་ཝཱན',
+ 'COP' => 'ཀོ་ལོམ་བྷི་ཡ་གི་དངུལ་ པེ་སོ',
+ 'CUP' => 'ཀིའུ་བྷ་གི་དངུལ་ པེ་སོ',
+ 'DKK' => 'ཌེན་མཱཀ་གི་དངུལ་ ཀྲོན',
+ 'DZD' => 'ཨཱལ་ཇི་རི་ཡ་གི་དངུལ་ ཌའི་ནར',
+ 'EGP' => 'ཨི་ཇིབཊ་གི་དངུལ་ པ་འུནཌ',
+ 'EUR' => 'ཡུ་རོ༌དངུལ་',
+ 'GBP' => 'བྲི་ཊིཤ་ པ་འུནཌ་ ཨིས་ཊར་ལིང',
+ 'HKD' => 'ཧོང་ཀོང་གི་དངུལ་ ཌོ་ལར',
+ 'IDR' => 'ཨིན་ཌོ་ནེ་ཤི་ཡ་གི་དངུལ་ རུ་པི་ཡ',
+ 'ILS' => 'ཨིས་རེལ་གྱི་དངུལ་གསརཔ་ ཤེ་ཀེལ',
+ 'INR' => 'རྒྱ་གར་གྱི་དངུལ་ རུ་པི',
+ 'IQD' => 'ཨི་རཱཀ་གི་དངུལ་ ཌི་ན',
+ 'IRR' => 'ཨི་རཱན་གྱི་དངུལ་ རི་ཨཱལ',
+ 'ISK' => 'ཨཱཡིས་ལེནཌ་གི་དངུལ་ ཀྲོ་ན',
+ 'JMD' => 'ཇཱ་མཻ་ཀ་གི་དངུལ་ ཌོ་ལར',
+ 'JOD' => 'ཇོར་ཌན་གྱི་དངུལ་ ཌི་ན',
+ 'JPY' => 'ཇཱ་པཱན་གྱི་དངུལ་ ཡེན',
+ 'KES' => 'ཀེན་ཡ་གི་དངུལ་ ཤི་ལིང',
+ 'KHR' => 'ཀེམ་བྷོ་ཌི་ཡ་གི་དངུལ་ རི་ཨཱལ',
+ 'KPW' => 'ནོརཐ་ ཀོ་རི་ཡ་གི་དངུལ་ ཝོན',
+ 'KRW' => 'སཱའུཐ་ ཀོ་རི་ཡ་གི་དངུལ་ ཝོན',
+ 'KWD' => 'ཀུ་ཝེཊ་གི་དངུལ་ ཌི་ན',
+ 'KZT' => 'ཀ་ཛགས་ཏཱན་གྱི་དངུལ་ ཏེང་གེ',
+ 'LAK' => 'ལཱ་ཝོས་ཀྱི་དངུལ་ ཀིཔ',
+ 'LBP' => 'ལེ་བ་ནོན་གྱི་དངུལ་ པ་འུནཌ',
+ 'LKR' => 'ཤྲི་ ལང་ཀ་གི་དངུལ་ རུ་པི',
+ 'LRD' => 'ལཱའི་བེ་རི་ཡ་གི་དངུལ་ ཌོ་ལར',
+ 'LYD' => 'ལི་བི་ཡ་གི་དངུལ་ ཌི་ན',
+ 'MAD' => 'མོ་རོ་ཀོ་གི་དངུལ་ ཌིར་ཧཱམ',
+ 'MMK' => 'མི་ཡཱན་མར་གྱི་དངུལ་ ཅཱཏ',
+ 'MNT' => 'སོག་པོའི་དངུལ་ ཏུ་གྲིཀ',
+ 'MVR' => 'མཱལ་དིབས་ཀྱི་དངུལ་ རུ་ཕི་ཡ',
+ 'MXN' => 'མེཀ་སི་ཀོ་གི་དངུལ་ པེ་སོ',
+ 'MYR' => 'མ་ལེ་ཤི་ཡ་གི་དངུལ་ རིང་གིཊ',
+ 'NOK' => 'ནོར་ཝེ་གི་དངུལ་ ཀྲོ་ན',
+ 'NPR' => 'བལ་པོའི་དངུལ་ རུ་པི',
+ 'NZD' => 'ནིའུ་ཛི་ལེནཌ་གི་དངུལ་ ཌོ་ལར',
+ 'OMR' => 'ཨོ་མཱན་གྱི་དངུལ་ རི་ཨཱལ',
+ 'PAB' => 'པ་ན་མ་གི་དངུལ་ བཱལ་བོ་ཝ',
+ 'PEN' => 'པ་རུ་གི་དངུལ་ ནུ་བོ་ སཱོལ',
+ 'PHP' => 'ཕི་ལི་པིནས་གྱི་དངུལ་ པེ་སོ',
+ 'PKR' => 'པ་ཀིས་ཏཱན་གྱི་དངུལ་ རུ་པི',
+ 'PLN' => 'པོ་ལེནཌ་ཀྱི་དངུལ ཛ྄ལོ་ཊི',
+ 'QAR' => 'ཀ་ཊར་གྱི་དངུལ་ རི་ཨཱལ',
+ 'RUB' => 'ཨུ་རུ་སུ་གི་དངུལ་ རུ་བཱལ',
+ 'SAR' => 'སཱཝ་དིའི་དངུལ་ རི་ཡཱལ',
+ 'SCR' => 'སེ་ཤཱལས་ཀྱི་དངུལ་ རུ་པི',
+ 'SEK' => 'སུའི་ཌེན་གྱི་དངུལ་ ཀྲོ་ན',
+ 'SGD' => 'སིང་ག་པོར་གྱི་དངུལ་ ཌོ་ལར',
+ 'SYP' => 'སི་རི་ཡ་གི་དངུལ་ པ་འུནཌ',
+ 'THB' => 'ཐཱའི་ལེནཌ་གི་དངུལ་ བཱཏ',
+ 'TJS' => 'ཏ་ཇི་ཀིས་ཏཱན་གྱི་དངུལ་ སོ་མོ་ནི',
+ 'TRY' => 'ཊཱར་ཀི་གི་དངུལ་ ལི་ར',
+ 'TWD' => 'ཊཱའི་ཝཱན་གི་དངུལ ཌོ་ལར',
+ 'TZS' => 'ཊཱན་ཛཱ་ནི་ཡ་གི་དངུལ་ ཤི་ལིང',
+ 'UGX' => 'ཡུ་གྷེན་ཌ་གི་དངུལ་ ཤི་ལིང',
+ 'USD' => 'ཡུ་ཨེས་ ཌོ་ལར',
+ 'UYU' => 'ཡུ་རུ་གུ་ཝའི་གི་དངུལ་ པེ་སོ',
+ 'UZS' => 'ཨུས་བེ་ཀིས་ཏཱན་གྱི་དངུལ་ སོམ',
+ 'VEF' => 'བེ་ནི་ཛུ་ཝེ་ལ་གི་དངུལ་ བོ་ལི་བར',
+ 'VND' => 'བེཊ་ནཱམ་གྱི་དངུལ་ ཌོང',
+ 'XXX' => 'མ་ཤེས་པའི་དངུལ',
+ 'ZAR' => 'སཱའུཐ་ ཨཕ་རི་ཀ་གི་དངུལ་ རཱནད',
+);
+
+$currencySymbols = array(
+ 'AUD' => 'AU$',
+ 'BRL' => 'R$',
+ 'BTN' => 'Nu.',
+ 'CAD' => 'CA$',
+ 'CNY' => 'CN¥',
+ 'EUR' => '€',
+ 'GBP' => '£',
+ 'HKD' => 'HK$',
+ 'ILS' => 'ILS',
+ 'INR' => '₹',
+ 'JPY' => 'JP¥',
+ 'KRW' => 'KR₩',
+ 'MXN' => 'MX$',
+ 'NZD' => 'NZ$',
+ 'THB' => 'TH฿',
+ 'TWD' => 'NT$',
+ 'USD' => 'US$',
+);
+
+$countryNames = array(
+ 'AC' => 'ཨེ་སེན་ཤུན་ཚོ་གླིང༌',
+ 'AD' => 'ཨཱན་དོ་ར',
+ 'AE' => 'ཡུ་ནཱའི་ཊེཌ་ ཨ་རབ་ ཨེ་མེ་རེཊས',
+ 'AF' => 'ཨཕ་གྷ་ནི་སཏཱན',
+ 'AG' => 'ཨན་ཊི་གུ་ཝ་ ཨེནཌ་ བྷར་བྷུ་ཌ',
+ 'AI' => 'ཨང་གི་ལ',
+ 'AL' => 'ཨཱལ་བེ་ནི་ཡ',
+ 'AM' => 'ཨར་མི་ནི་ཡ',
+ 'AO' => 'ཨང་གྷོ་ལ',
+ 'AQ' => 'འཛམ་གླིང་ལྷོ་མཐའི་ཁྱགས་གླིང',
+ 'AR' => 'ཨར་ཇེན་ཊི་ན',
+ 'AS' => 'ས་མོ་ཨ་ཡུ་ཨེས་ཨེ་མངའ་ཁོངས',
+ 'AT' => 'ཨཱོས་ཊྲི་ཡ',
+ 'AU' => 'ཨཱོས་ཊྲེལ་ལི་ཡ',
+ 'AW' => 'ཨ་རུ་བཱ',
+ 'AX' => 'ཨ་ལནཌ་གླིང་ཚོམ',
+ 'AZ' => 'ཨ་ཛར་བྷའི་ཇཱན',
+ 'BA' => 'བྷོས་ནི་ཡ་ ཨེནཌ་ ཧར་ཛི་གྷོ་བི་ན',
+ 'BB' => 'བྷར་བེ་ཌོས',
+ 'BD' => 'བངྒ་ལ་དེཤ',
+ 'BE' => 'བྷེལ་ཇམ',
+ 'BF' => 'བྷར་ཀི་ན་ ཕེ་སོ',
+ 'BG' => 'བུལ་ག་རི་ཡ',
+ 'BH' => 'བྷ་རེན',
+ 'BI' => 'བྷུ་རུན་ཌི',
+ 'BJ' => 'བྷེ་ནིན',
+ 'BL' => 'སེནཊ་ བར་ཐོ་ལོམ་མིའུ',
+ 'BM' => 'བར་མུ་ཌ',
+ 'BN' => 'བྷྲུ་ནའི',
+ 'BO' => 'བྷེ་ལི་བི་ཡ',
+ 'BQ' => 'ཀེ་རི་བི་ཡེན་ནེ་དར་ལནཌས྄',
+ 'BR' => 'བྲ་ཛིལ',
+ 'BS' => 'བྷ་ཧ་མས྄',
+ 'BT' => 'འབྲུག',
+ 'BV' => 'བོའུ་ཝེཊ་མཚོ་གླིང',
+ 'BW' => 'བྷོཙ་ཝ་ན',
+ 'BY' => 'བེལ་ཨ་རུ་སུ',
+ 'BZ' => 'བྷེ་ལིཛ',
+ 'CA' => 'ཀེ་ན་ཌ',
+ 'CC' => 'ཀོ་ཀོས་གླིང་ཚོམ',
+ 'CD' => 'ཀོང་གྷོ ཀིན་ཤ་ས',
+ 'CF' => 'སེན་ཊལ་ ཨཕ་རི་ཀཱན་ རི་པབ་ལིཀ',
+ 'CG' => 'ཀོང་གྷོ བྷྲ་ཛ་བིལ',
+ 'CH' => 'སུ་ཝིཊ་ཛར་ལེནཌ',
+ 'CI' => 'ཀོ་ཊེ་ ཌི་ཨི་ཝོ་རེ',
+ 'CK' => 'ཀུག་གླིང་ཚོམ',
+ 'CL' => 'ཅི་ལི',
+ 'CM' => 'ཀེ་མ་རུན',
+ 'CN' => 'རྒྱ་ནག',
+ 'CO' => 'ཀོ་ལོམ་བྷི་ཡ',
+ 'CP' => 'ཀི་ལི་པེར་ཊོན་མཚོ་གླིང་',
+ 'CR' => 'ཀོས་ཊ་རི་ཀ',
+ 'CU' => 'ཀིའུ་བྷ',
+ 'CV' => 'ཀེཔ་བཱཌ',
+ 'CW' => 'ཀྱཱུར་ར་ཀོ',
+ 'CX' => 'ཁི་རིསྟ་མེས་མཚོ་གླིང',
+ 'CY' => 'སཱའི་པྲས',
+ 'CZ' => 'ཅེཀ་ རི་པབ་ལིཀ',
+ 'DE' => 'ཇཱར་མ་ནི',
+ 'DG' => 'ཌི་ཡེ་གོ་གར་སིའོ',
+ 'DJ' => 'ཇི་བྷུ་ཊི',
+ 'DK' => 'ཌེན་མཱཀ',
+ 'DM' => 'ཌོ་མི་ནི་ཀ',
+ 'DO' => 'ཌོ་མི་ནི་ཀཱན་ རི་པབ་ལིཀ',
+ 'DZ' => 'ཨཱལ་ཇི་རི་ཡ',
+ 'EA' => 'སེ་ཨུ་ཏ་ ཨེནཌ་ མེལ་ལི་ལ',
+ 'EC' => 'ཨེ་ཁྭ་ཌོར',
+ 'EE' => 'ཨེས་ཊོ་ནི་ཡ',
+ 'EG' => 'ཨི་ཇིབཊ',
+ 'EH' => 'ནུབ་ཕྱོགས་ ས་ཧཱ་ར',
+ 'ER' => 'ཨེ་རི་ཊྲེ་ཡ',
+ 'ES' => 'ཨིས་པེན',
+ 'ET' => 'ཨི་ཐི་ཡོ་པི་ཡ',
+ 'EU' => 'ཡུ་རོབ་གཅིག་བསྡོམས་ཚོགས་པ',
+ 'FI' => 'ཕིན་ལེནཌ',
+ 'FJ' => 'ཕི་ཇི',
+ 'FK' => 'ཕལྐ་ལནྜ་གླིང་ཚོམ',
+ 'FM' => 'མའི་ཀྲོ་ནི་ཤི་ཡ',
+ 'FO' => 'ཕཱའེ་རོ་གླིང་ཚོམ',
+ 'FR' => 'ཕྲཱནས',
+ 'GA' => 'གྷ་བྷོན',
+ 'GB' => 'ཡུ་ནཱའི་ཊེཌ་ ཀིང་ཌམ',
+ 'GD' => 'གྲྀ་ན་ཌ',
+ 'GE' => 'ཇཽར་ཇཱ',
+ 'GF' => 'གུའི་ཡ་ན་ ཕྲནས྄་མངའ་ཁོངས',
+ 'GG' => 'གུ་ཨེརྣ་སི',
+ 'GH' => 'གྷ་ན',
+ 'GI' => 'ཇིབ་རཱལ་ཊར',
+ 'GL' => 'གིརཱིན་ལནཌ྄',
+ 'GM' => 'གྷེམ་བི་ཡ',
+ 'GN' => 'གྷི་ནི',
+ 'GP' => 'གོ་ཌེ་ལུ་པེ',
+ 'GQ' => 'ཨེ་ཀུ་ཊོ་རེལ་ གི་ནི',
+ 'GR' => 'གིརིས྄',
+ 'GS' => 'སཱའུཐ་ཇཽར་ཇཱ་ དང་ སཱའུཐ་སེནཌ྄་ཝིཅ་གླིང་ཚོམ',
+ 'GT' => 'གྷོ་ཊ་མ་ལ',
+ 'GU' => 'གུ་འམ་ མཚོ་གླིང',
+ 'GW' => 'གྷི་ནི་ བྷི་སཱའུ',
+ 'GY' => 'གྷ་ཡ་ན',
+ 'HK' => 'ཧོང་ཀོང',
+ 'HM' => 'ཧཱརཌ་མཚོ་གླིང་ དང་ མེཀ་ཌོ་ནལཌ྄་གླིང་ཚོམ',
+ 'HN' => 'ཧཱན་ཌུ་རཱས྄',
+ 'HR' => 'ཀྲོ་ཨེ་ཤ',
+ 'HT' => 'ཧེ་ཊི',
+ 'HU' => 'ཧཱང་གྷ་རི',
+ 'IC' => 'ཀ་ནེ་རི་གླིང་ཚོམ',
+ 'ID' => 'ཨིན་ཌོ་ནེ་ཤི་ཡ',
+ 'IE' => 'ཨཱ་ཡ་ལེནཌ',
+ 'IL' => 'ཨིས་ར་ཡེལ',
+ 'IM' => 'ཨ་ཡུལ་ ཨོཕ་ མཱན',
+ 'IN' => 'རྒྱ་གར',
+ 'IO' => 'བྲི་ཊིཤ་རྒྱ་གར་གྱི་རྒྱ་མཚོ་ས་ཁོངས',
+ 'IQ' => 'ཨི་རཱཀ',
+ 'IR' => 'ཨི་རཱན',
+ 'IS' => 'ཨཱའིས་ལེནཌ',
+ 'IT' => 'ཨི་ཊ་ལི',
+ 'JE' => 'ཇེར་སི',
+ 'JM' => 'ཇཱ་མཻ་ཀ',
+ 'JO' => 'ཇོར་ཌན',
+ 'JP' => 'ཇ་པཱན',
+ 'KE' => 'ཀེན་ཡ',
+ 'KG' => 'ཀིར་གིས་སཏཱན',
+ 'KH' => 'ཀམ་བྷོ་ཌི་ཡ',
+ 'KI' => 'ཀི་རི་བ་ཏི་མཚོ་གླིང',
+ 'KM' => 'ཀོ་མོ་རོས',
+ 'KN' => 'སེནཊ་ ཀིཊས་ དང་ ནེ་བིས',
+ 'KP' => 'བྱང་ ཀོ་རི་ཡ',
+ 'KR' => 'ལྷོ་ ཀོ་རི་ཡ',
+ 'KW' => 'ཀུ་ཝེཊ',
+ 'KY' => 'ཁེ་མེན་གླིང་ཚོམ',
+ 'KZ' => 'ཀ་ཛགས་སཏཱན',
+ 'LA' => 'ལཱ་ཝོས',
+ 'LB' => 'ལེ་བ་ནོན',
+ 'LC' => 'སེནཊ་ ལུ་སི་ཡ',
+ 'LI' => 'ལིཀ་ཏནས་ཏ་ཡིན',
+ 'LK' => 'ཤྲཱི་ལང་ཀ',
+ 'LR' => 'ལཱའི་བེ་རི་ཡ',
+ 'LS' => 'ལཻ་སོ་ཐོ',
+ 'LT' => 'ལི་ཐུ་ཝེ་ནི་ཡ',
+ 'LU' => 'ལག་ཛམ་བོརྒ',
+ 'LV' => 'ལཊ་བི་ཡ',
+ 'LY' => 'ལི་བི་ཡ',
+ 'MA' => 'མོ་རོ་ཀོ',
+ 'MC' => 'མོ་ན་ཀོ',
+ 'MD' => 'མོལ་དོ་བཱ',
+ 'ME' => 'མོན་ཊི་ནེག་རོ',
+ 'MF' => 'སེནཊ་ མཱར་ཊིན',
+ 'MG' => 'མ་དཱ་གེས་ཀར',
+ 'MH' => 'མར་ཤེལ་གླིང་ཚོམ',
+ 'MK' => 'མ་སེ་ཌོ་ནི་ཡ',
+ 'ML' => 'མཱ་ལི',
+ 'MM' => 'མི་ཡཱན་མར་ (བྷར་མ)',
+ 'MN' => 'སོག་པོ་ཡུལ',
+ 'MO' => 'མཀ་ཨའུ',
+ 'MP' => 'བྱང་ཕྱོགས་ཀྱི་མ་ར་ཡ་ན་གླིང་ཚོམ',
+ 'MQ' => 'མཱར་ཊི་ནིཀ',
+ 'MR' => 'མོ་རི་ཊེ་ནི་ཡ',
+ 'MS' => 'མོན་ས་རཊ',
+ 'MT' => 'མཱལ་ཊ',
+ 'MU' => 'མོ་རི་ཤཱས',
+ 'MV' => 'མཱལ་དིབས',
+ 'MW' => 'མ་ལ་ཝི',
+ 'MX' => 'མེཀ་སི་ཀོ',
+ 'MY' => 'མ་ལེ་ཤི་ཡ',
+ 'MZ' => 'མོ་ཛམ་བྷིཀ',
+ 'NA' => 'ན་མི་བི་ཡ',
+ 'NC' => 'ནིའུ་ཀ་ལི་དོ་ནི་ཡ',
+ 'NE' => 'ནཱའི་ཇཱ',
+ 'NF' => 'ནོར་ཕོལཀ་མཚོ་གླིང༌',
+ 'NG' => 'ནཱའི་ཇི་རི་ཡ',
+ 'NI' => 'ནི་ཀྲ་ཝ་ག',
+ 'NL' => 'ནེ་དར་ལནཌས྄',
+ 'NO' => 'ནོར་ཝེ',
+ 'NP' => 'བལ་ཡུལ',
+ 'NR' => 'ནའུ་རུ་',
+ 'NU' => 'ནི་ཨུ་ཨཻ',
+ 'NZ' => 'ནིའུ་ཛི་ལེནཌ',
+ 'OM' => 'ཨོ་མཱན',
+ 'PA' => 'པ་ན་མ',
+ 'PE' => 'པེ་རུ',
+ 'PF' => 'ཕྲཱནས྄་ཀྱི་པོ་ལི་ནི་ཤི་ཡ',
+ 'PG' => 'པ་པུ་ ནིའུ་གི་ནི',
+ 'PH' => 'ཕི་ལི་པིནས',
+ 'PK' => 'པ་ཀི་སཏཱན',
+ 'PL' => 'པོ་ལེནཌ',
+ 'PM' => 'སིནཊ་པི་ཡེར་ ཨེནཌ་ མིཀོ་ལེན',
+ 'PN' => 'པིཊ་ཀེ་ཡེརན་གླིང་ཚོམ',
+ 'PR' => 'པུ་འེར་ཊོ་རི་ཁོ',
+ 'PS' => 'པེ་ལིསི་ཊི་ནི་ཡན་ཊེ་རི་ཐོ་རི',
+ 'PT' => 'པོར་ཅུ་གཱལ',
+ 'PW' => 'པ་ལའུ',
+ 'PY' => 'པ་ར་གུ་ཝའི',
+ 'QA' => 'ཀ་ཊར',
+ 'QO' => 'ཨོཤི་ཡཱན་ན་གྱི་མཐའ་མཚམས',
+ 'RE' => 'རེ་ཡུ་ནི་ཡོན',
+ 'RO' => 'རོ་མེ་ནི་ཡ',
+ 'RS' => 'སཱར་བྷི་ཡ',
+ 'RU' => 'ཨུ་རུ་སུ',
+ 'RW' => 'རུ་ཝན་ཌ',
+ 'SA' => 'སཱཝ་དི་ ཨ་རེ་བྷི་ཡ',
+ 'SB' => 'སོ་ལོ་མོན་ གླིང་ཚོམ',
+ 'SC' => 'སེ་ཤཱལས',
+ 'SD' => 'སུ་ཌཱན',
+ 'SE' => 'སུའི་ཌེན',
+ 'SG' => 'སིང་ག་པོར',
+ 'SH' => 'སེནཊ་ ཧེ་ལི་ན',
+ 'SI' => 'སུ་ལོ་བི་ནི་ཡ',
+ 'SJ' => 'སྭཱལ་བྷརྡ་ ཨེནཌ་ ཇཱན་མ་ཡེན',
+ 'SK' => 'སུ་ལོ་བཱ་ཀི་ཡ',
+ 'SL' => 'སི་ར་ ལི་འོན',
+ 'SM' => 'སཱན་མ་རི་ནོ',
+ 'SN' => 'སེ་ནི་གྷལ',
+ 'SO' => 'སོ་མ་ལི་ཡ',
+ 'SR' => 'སུ་རི་ནཱམ',
+ 'SS' => 'སཱའུཐ་ སུ་ཌཱན',
+ 'ST' => 'སཝ་ ཊོ་མེ་ ཨེནཌ་ པྲྀན་སི་པེ',
+ 'SV' => 'ཨེལ་སལ་བ་ཌོར',
+ 'SX' => 'སིནཊ་ མཱར་ཊེན',
+ 'SY' => 'སི་རི་ཡ',
+ 'SZ' => 'སུ་ཝ་ཛི་ལེནཌ',
+ 'TA' => 'ཏྲིས་ཏན་ད་ཀུན་ཧ',
+ 'TC' => 'ཏུརྐས྄་ ཨེནཌ་ ཀ་ཀོས་གླིང་ཚོམ',
+ 'TD' => 'ཅཱཌ',
+ 'TF' => 'ཕྲནཅ་གི་ལྷོ་ཕྱོགས་མངའ་ཁོངས',
+ 'TG' => 'ཊོ་གྷོ',
+ 'TH' => 'ཐཱའི་ལེནཌ',
+ 'TJ' => 'ཏ་ཇིག་གི་སཏཱན',
+ 'TK' => 'ཏོ་ཀེ་ལའུ་ མཚོ་གླིང',
+ 'TL' => 'ཏི་་མོར་ལེ་ཨེསཊ',
+ 'TM' => 'ཊཱརཀ་མེནའི་སཏཱན',
+ 'TN' => 'ཊུ་ནི་ཤི་ཡ',
+ 'TO' => 'ཊོང་གྷ',
+ 'TR' => 'ཊཱར་ཀི',
+ 'TT' => 'ཊི་ནི་ཌཱཌ་ ཨེནཌ་ ཊོ་བྷེ་གྷོ',
+ 'TV' => 'ཏུ་ཝ་ལུ',
+ 'TW' => 'ཊཱའི་ཝཱན',
+ 'TZ' => 'ཊཱན་ཛཱ་ནི་ཡ',
+ 'UA' => 'ཡུ་ཀརེན',
+ 'UG' => 'ཡུ་གྷན་ཌ',
+ 'UM' => 'ཡུ་ཨེས་གྱི་མཐའ་མཚམས་མཚོ་གླིང་',
+ 'US' => 'ཡུ་ཨེས་ཨེ',
+ 'UY' => 'ཡུ་རུ་གུ་ཝའི',
+ 'UZ' => 'ཨུས་བེག་གི་སཏཱན',
+ 'VA' => 'བ་ཊི་ཀཱན་ སི་ཊི',
+ 'VC' => 'སེནཊ་ཝིན་སེནཌ྄ ཨེནཌ་ གི་རེ་ན་དིནས྄',
+ 'VE' => 'བེ་ནི་ཛུ་ཝེ་ལ',
+ 'VG' => 'ཝརཇིན་གླིང་ཚོམ་ བྲཱི་ཊིཤ་མངའ་ཁོངས',
+ 'VI' => 'ཝརཇིན་གླིང་ཚོམ་ ཡུ་ཨེས་ཨེ་མངའ་ཁོངས',
+ 'VN' => 'བེཊ་ནཱམ',
+ 'VU' => 'ཝ་ནུ་ཨ་ཏུ',
+ 'WF' => 'ཝལ་ལིས྄་ ཨེནཌ་ ཕུ་ཏུ་ན་',
+ 'WS' => 'ས་མོ་ཨ',
+ 'YE' => 'ཡེ་མེན',
+ 'YT' => 'མེ་ཡོཊ',
+ 'ZA' => 'སཱའུཐ་ ཨཕ་རི་ཀ',
+ 'ZM' => 'ཛམ་བྷི་ཡ',
+ 'ZW' => 'ཛིམ་བྷབ་ཝེ',
+);
+
+$timeUnits = array(
+ 'day-future-other' => 'ཉིནམ་ {0} ནང་',
+ 'day-other' => 'ཉིན་ཞག་ {0}',
+ 'day-past-other' => 'ཉིནམ་ {0} ཧེ་མ་',
+ 'hour-future-other' => 'ཆུ་ཚོད་ {0} ནང་',
+ 'hour-other' => 'ཆུ་ཚོད་ {0}',
+ 'hour-past-other' => 'ཆུ་ཚོད་ {0} ཧེ་མ་',
+ 'minute-future-other' => 'སྐར་མ་ {0} ནང་',
+ 'minute-other' => 'སྐར་མ་ {0}',
+ 'minute-past-other' => 'སྐར་མ་ {0} ཧེ་མ་',
+ 'month-future-other' => 'ཟླཝ་ {0} ནང་',
+ 'month-other' => 'ཟླཝ་ {0}',
+ 'month-past-other' => 'ཟླཝ་ {0} ཧེ་མ་',
+ 'second-future-other' => 'སྐར་ཆ་ {0} ནང་',
+ 'second-other' => 'སྐར་ཆ་ {0}',
+ 'second-past-other' => 'སྐར་ཆ་ {0} ཧེ་མ་',
+ 'week-future-other' => 'བངུན་ཕྲག་ {0} ནང་',
+ 'week-other' => 'བངུན་ཕྲག་ {0}',
+ 'week-past-other' => 'བངུན་ཕྲག་ {0} ཧེ་མ་',
+ 'year-future-other' => 'ལོ་འཁོར་ {0} ནང་',
+ 'year-other' => 'ལོ་འཁོར་ {0}',
+ 'year-past-other' => 'ལོ་འཁོར་ {0} ཧེ་མ་',
+);
diff --git a/MLEB/cldr/CldrNames/CldrNamesEe.php b/MLEB/cldr/CldrNames/CldrNamesEe.php
new file mode 100644
index 00000000..df10184c
--- /dev/null
+++ b/MLEB/cldr/CldrNames/CldrNamesEe.php
@@ -0,0 +1,878 @@
+<?php
+
+$languageNames = array(
+ 'ab' => 'abkhaziagbe',
+ 'ady' => 'adyghegbe',
+ 'af' => 'afrikaangbe',
+ 'agq' => 'aghemgbe',
+ 'ak' => 'blugbe',
+ 'am' => 'amhariagbe',
+ 'ar' => 'arabiagbe',
+ 'as' => 'assamegbe',
+ 'asa' => 'asagbe',
+ 'ast' => 'asturiagbe',
+ 'av' => 'avariagbe',
+ 'ay' => 'aymargbe',
+ 'az' => 'azerbaijangbe',
+ 'ba' => 'bashkigbe',
+ 'bas' => 'basaagbe',
+ 'bax' => 'bamugbe',
+ 'bbj' => 'ghomalagbe',
+ 'be' => 'belarusiagbe',
+ 'bem' => 'bembagbe',
+ 'bez' => 'benagbe',
+ 'bfd' => 'bafutgbe',
+ 'bg' => 'bulgariagbe',
+ 'bi' => 'bislamagbe',
+ 'bkm' => 'komgbe',
+ 'bm' => 'bambaragbe',
+ 'bn' => 'bengalgbe',
+ 'bo' => 'tibetagbe',
+ 'br' => 'bretongbe',
+ 'brx' => 'bodogbe',
+ 'bs' => 'bosniagbe',
+ 'bss' => 'akoosiagbe',
+ 'bum' => 'bulugbe',
+ 'byv' => 'medumbagbe',
+ 'ca' => 'katalagbe',
+ 'ceb' => 'Sebuanogbe',
+ 'ch' => 'kamorrogbe',
+ 'chk' => 'tsukesegbe',
+ 'chm' => 'tsetsniagbe',
+ 'cs' => 'tsɛkgbe',
+ 'cy' => 'walesgbe',
+ 'da' => 'denmarkgbe',
+ 'de' => 'germaniagbe',
+ 'de-at' => 'austriatɔwo ƒe germaniagbe',
+ 'de-ch' => 'swizerlanɖ germaniagbe kɔkɔtɔ',
+ 'dje' => 'zamagbe',
+ 'dua' => 'dualagbe',
+ 'dv' => 'divehgbe',
+ 'dyo' => 'dzola-fonyigbe',
+ 'dz' => 'dzongkhagbe',
+ 'ebu' => 'embugbe',
+ 'ee' => 'eʋegbe',
+ 'efi' => 'efigbe',
+ 'el' => 'grisigbe',
+ 'en' => 'yevugbe',
+ 'en-au' => 'australiatɔwo ƒe yevugbe',
+ 'en-ca' => 'kanadatɔwo ƒe yevugbe',
+ 'en-gb' => 'britaintɔwo ƒe yevugbe',
+ 'en-us' => 'u.s.dukɔmetɔwo ƒe yevugbe',
+ 'eo' => 'esperantogbe',
+ 'es' => 'spaniagbe',
+ 'es-419' => 'latin amerikatɔwo ƒe spaniagbe',
+ 'es-es' => 'iberiatɔwo ƒe spaniagbe',
+ 'et' => 'estoniagbe',
+ 'eu' => 'basqugbe',
+ 'ewo' => 'ewondogbe',
+ 'fa' => 'persiagbe',
+ 'fan' => 'fangbe',
+ 'ff' => 'fulagbe',
+ 'fi' => 'finlanɖgbe',
+ 'fil' => 'filipingbe',
+ 'fj' => 'fidzigbe',
+ 'fo' => 'faroegbe',
+ 'fr' => 'fransegbe',
+ 'fr-ca' => 'kanadatɔwo ƒe fransegbe',
+ 'fr-ch' => 'swizerlanɖtɔwo ƒe fransegbe',
+ 'fy' => 'ɣetoɖoƒe frisiagbe',
+ 'ga' => 'irelanɖgbe',
+ 'gaa' => 'gɛgbe',
+ 'gd' => 'skɔtlanɖ gaeliagbe',
+ 'gil' => 'gilbertgbe',
+ 'gl' => 'galatagbe',
+ 'gn' => 'guarangbe',
+ 'gsw' => 'swizerlanɖtɔwo ƒe germaniagbe',
+ 'gu' => 'gujarati',
+ 'ha' => 'hausagbe',
+ 'haw' => 'hawaigbe',
+ 'he' => 'hebrigbe',
+ 'hi' => 'hindigbe',
+ 'hil' => 'hiligenɔgbe',
+ 'ho' => 'hiri motugbe',
+ 'hr' => 'kroatiagbe',
+ 'ht' => 'haitigbe',
+ 'hu' => 'hungarigbe',
+ 'hy' => 'armeniagbe',
+ 'ibb' => 'ibibiogbe',
+ 'id' => 'indonesiagbe',
+ 'ig' => 'igbogbe',
+ 'ilo' => 'ilikogbe',
+ 'inh' => 'ingusigbe',
+ 'is' => 'icelanɖgbe',
+ 'it' => 'italiagbe',
+ 'ja' => 'dzapangbe',
+ 'jv' => 'dzavangbe',
+ 'ka' => 'gɔgiagbe',
+ 'kbd' => 'kabardiagbe',
+ 'kea' => 'cape verdegbe',
+ 'kg' => 'kongogbe',
+ 'kha' => 'khasigbe',
+ 'kj' => 'kunyamagbe',
+ 'kk' => 'kazakhstangbe',
+ 'kkj' => 'kakogbe',
+ 'kl' => 'kalaalisugbe',
+ 'km' => 'khmergbe',
+ 'kn' => 'kannadagbe',
+ 'ko' => 'koreagbe',
+ 'kok' => 'konkaniagbe',
+ 'kos' => 'kosraeagbe',
+ 'kr' => 'kanuriagbe',
+ 'krc' => 'karakay-bakargbe',
+ 'ks' => 'kashmirgbe',
+ 'ksf' => 'bafiagbe',
+ 'ku' => 'kurdiagbe',
+ 'kum' => 'kumikagbe',
+ 'ky' => 'kirghistangbe',
+ 'la' => 'latin',
+ 'lah' => 'lahndagbe',
+ 'lb' => 'laksembɔggbe',
+ 'lez' => 'lezghiagbe',
+ 'ln' => 'lingala',
+ 'lo' => 'laogbe',
+ 'lt' => 'lithuaniagbe',
+ 'lu' => 'luba-katangagbe',
+ 'lua' => 'luba-lulugbe',
+ 'luy' => 'luyiagbe',
+ 'lv' => 'latviagbe',
+ 'maf' => 'mafagbe',
+ 'mai' => 'maitiligbe',
+ 'mdf' => 'moktsiagbe',
+ 'mg' => 'malagasegbe',
+ 'mgh' => 'makuwa-mitogbe',
+ 'mh' => 'marshalgbe',
+ 'mi' => 'maorgbe',
+ 'mk' => 'makedoniagbe',
+ 'ml' => 'malayagbe',
+ 'mn' => 'mongoliagbe',
+ 'mr' => 'marathiagbe',
+ 'ms' => 'malaygbe',
+ 'mt' => 'maltagbe',
+ 'mua' => 'mundangbe',
+ 'mul' => 'gbegbɔgblɔ sɔgbɔwo',
+ 'my' => 'burmagbe',
+ 'mye' => 'myenegbe',
+ 'myv' => 'erziyagbe',
+ 'na' => 'naurugbe',
+ 'nb' => 'nɔweigbe bokmål',
+ 'nd' => 'dziehe ndebelegbe',
+ 'ne' => 'nepalgbe',
+ 'niu' => 'niuegbe',
+ 'nl' => 'hɔlandgbe',
+ 'nl-be' => 'flemiagbe',
+ 'nmg' => 'kwasiogbe',
+ 'nn' => 'nɔweigbe ninɔsk',
+ 'nnh' => 'ngiemboongbe',
+ 'no' => 'nɔweigbe',
+ 'nr' => 'anyiehe ndebelegbe',
+ 'nso' => 'dziehe sothogbe',
+ 'nus' => 'nuergbe',
+ 'ny' => 'nyanjagbe',
+ 'or' => 'oriyagbe',
+ 'os' => 'ossetiagbe',
+ 'pa' => 'pundzabgbe',
+ 'pag' => 'pangsinagbe',
+ 'pap' => 'papiamentogbe',
+ 'pau' => 'paluagbe',
+ 'pl' => 'polandgbe',
+ 'pon' => 'ponpeiagbe',
+ 'ps' => 'pashtogbe',
+ 'pt' => 'pɔtugalgbe',
+ 'pt-br' => 'braziltɔwo ƒe portugalgbe',
+ 'pt-pt' => 'iberiatɔwo ƒe portugalgbe',
+ 'qu' => 'kwetsuagbe',
+ 'rm' => 'romanshgbe',
+ 'rn' => 'rundigbe',
+ 'ro' => 'romaniagbe',
+ 'rof' => 'rombogbe',
+ 'ru' => 'rɔtsiagbe',
+ 'rw' => 'ruwandagbe',
+ 'rwk' => 'rwagbe',
+ 'sa' => 'sanskrigbe',
+ 'sah' => 'sakagbe',
+ 'sat' => 'santaligbe',
+ 'sbp' => 'sangugbe',
+ 'sd' => 'sindhgbe',
+ 'se' => 'dziehe samigbe',
+ 'sg' => 'sangogbe',
+ 'sh' => 'serbo-croatiagbe',
+ 'si' => 'sinhalgbe',
+ 'sk' => 'slovakiagbe',
+ 'sl' => 'sloveniagbe',
+ 'sm' => 'samoagbe',
+ 'sn' => 'shonagbe',
+ 'so' => 'somaliagbe',
+ 'sq' => 'albaniagbe',
+ 'sr' => 'serbiagbe',
+ 'ss' => 'swatgbe',
+ 'st' => 'anyiehe sothogbe',
+ 'su' => 'sudangbe',
+ 'sv' => 'swedengbe',
+ 'sw' => 'swahili',
+ 'swb' => 'komorogbe',
+ 'ta' => 'tamilgbe',
+ 'te' => 'telegugbe',
+ 'tet' => 'tetumgbe',
+ 'tg' => 'tadzikistangbe',
+ 'th' => 'tailandgbe',
+ 'ti' => 'tigrinyagbe',
+ 'tk' => 'tɛkmengbe',
+ 'tkl' => 'tokelaugbe',
+ 'tl' => 'tagalogbe',
+ 'tn' => 'tswanagbe',
+ 'to' => 'tongagbe',
+ 'tpi' => 'tok pisigbe',
+ 'tr' => 'tɛkigbe',
+ 'ts' => 'tsongagbe',
+ 'tt' => 'tatargbe',
+ 'tvl' => 'tuvalugbe',
+ 'twq' => 'tasawakgbe',
+ 'ty' => 'tahitigbe',
+ 'tyv' => 'tuviniagbe',
+ 'udm' => 'udmurtgbe',
+ 'ug' => 'uighurgbe',
+ 'uk' => 'ukraingbe',
+ 'und' => 'gbegbɔgblɔ manya',
+ 'ur' => 'urdugbe',
+ 'uz' => 'uzbekistangbe',
+ 'vai' => 'vaigbe',
+ 've' => 'vendagbe',
+ 'vi' => 'vietnamgbe',
+ 'wae' => 'walsegbe',
+ 'war' => 'waraygbe',
+ 'wo' => 'wolofgbe',
+ 'xh' => 'xhosagbe',
+ 'yap' => 'yapesigbe',
+ 'yav' => 'yangbengbe',
+ 'ybb' => 'yembagbe',
+ 'yo' => 'yorubagbe',
+ 'yue' => 'cantongbe',
+ 'za' => 'zhuangbe',
+ 'zh' => 'kinagbe',
+ 'zh-hans' => 'tsainagbe',
+ 'zh-hant' => 'blema tsainagbe',
+ 'zu' => 'zulugbe',
+ 'zxx' => 'gbegbɔgblɔ manɔmee',
+);
+
+$currencyNames = array(
+ 'ADP' => 'andorraga peseta',
+ 'AED' => 'united arab emiratesga dirham',
+ 'AFA' => 'afghanistanga afghani (1927–2002)',
+ 'AFN' => 'afghanistanga afghani',
+ 'ALK' => 'albaniaga lek (1946–1965)',
+ 'ALL' => 'albaniaga lek',
+ 'AMD' => 'armeniaga dram',
+ 'ANG' => 'nedalands antilleaga guilder',
+ 'AOA' => 'angolaga kwanza',
+ 'AOK' => 'angolaga kwanza (1977–1991)',
+ 'AON' => 'angolaga kwanza (1990–2000)',
+ 'AOR' => 'angolaga kwanza xoxotɔ (1995–1999)',
+ 'ARA' => 'argentinaga austral',
+ 'ARL' => 'argentinaga peso ley (1970–1983)',
+ 'ARM' => 'argentinaga peso (1881–1970)',
+ 'ARP' => 'argentinaga peso (1983–1985)',
+ 'ARS' => 'argentinaga peso',
+ 'ATS' => 'ɔstriaga schilling',
+ 'AUD' => 'australiaga dollar',
+ 'AWG' => 'arubaga lorin',
+ 'AZM' => 'azerbaidzanga manat (1993–2006)',
+ 'AZN' => 'azerbaidzanga manat',
+ 'BAD' => 'bosnia-herzegovinaga dinar (1992–1994)',
+ 'BAM' => 'bosnia-herzegovinaga convertible mark',
+ 'BAN' => 'bosnia kple herzegovinaga dinar yeyètɔ (1994–1997)',
+ 'BBD' => 'barbadiaga dollar',
+ 'BDT' => 'bangladeshga taka',
+ 'BEC' => 'beldziumga franc (convertible)',
+ 'BEF' => 'beldziumga franc',
+ 'BEL' => 'beldziumga franc (financial)',
+ 'BGL' => 'bɔlgariaga hard lev',
+ 'BGM' => 'bɔlgariaga socialist lev',
+ 'BGN' => 'bulgariaga lev',
+ 'BGO' => 'bulgariaga lev (1879–1952)',
+ 'BHD' => 'bahrainga dinar',
+ 'BIF' => 'burundiga franc',
+ 'BMD' => 'bermudaga dollar',
+ 'BND' => 'bruneiga dollar',
+ 'BOB' => 'boliviaga boliviano',
+ 'BOL' => 'boliviaga boliviano (1863–1963)',
+ 'BOP' => 'boliviaga peso',
+ 'BOV' => 'boliviaga mvdol',
+ 'BRB' => 'braziliaga cruzeiro xoxotɔ (1967–1986)',
+ 'BRC' => 'brazilia cruzado (1986–1989)',
+ 'BRE' => 'braziliaga cruzeiro xoxotɔ gbãtɔ (1990–1993)',
+ 'BRL' => 'brazilga real',
+ 'BRN' => 'brazilia cruzado xoxotɔ (1989–1990)',
+ 'BRR' => 'braziliaga cruzeiro (1993–1994)',
+ 'BRZ' => 'braziliaga cruzeiro (1942–1967)',
+ 'BSD' => 'bahamiaga dollar',
+ 'BTN' => 'bhutanga ngultrum',
+ 'BUK' => 'burmaga kyat',
+ 'BWP' => 'botswanaga pula',
+ 'BYB' => 'belarusiaga ruble yeytɔ (1994–1999)',
+ 'BYR' => 'belarusiaga ruble',
+ 'BZD' => 'belizega dollar',
+ 'CAD' => 'kanadaga dollar',
+ 'CDF' => 'kongoga franc',
+ 'CHE' => 'WIR euro CHE',
+ 'CHF' => 'swissga franc',
+ 'CHW' => 'WIR euro CHW',
+ 'CLE' => 'tsilega escudo',
+ 'CLF' => 'tsilegakɔnta dzidzenu UF',
+ 'CLP' => 'tsilega peso',
+ 'CNX' => 'tsainatɔwo ƒe gadzraɖoƒe dollar',
+ 'CNY' => 'tsainaga yuan',
+ 'COP' => 'kolombiaga peso',
+ 'COU' => 'kolombiaga vavãtɔ',
+ 'CRC' => 'kosta rikaga kolón',
+ 'CSD' => 'serbiaga dinar (2002–2006)',
+ 'CSK' => 'tsɛkoslovakiaga hard koruna',
+ 'CUC' => 'kubaga convertible peso',
+ 'CUP' => 'kubaga peso',
+ 'CVE' => 'kape verdega escudo',
+ 'CYP' => 'saipriɔtga pound',
+ 'CZK' => 'tsɛk repɔblikga koruna',
+ 'DDM' => 'ɣedzeƒe germaniaga mark',
+ 'DEM' => 'germaniaga mark',
+ 'DJF' => 'dziboutiga franc',
+ 'DKK' => 'danemarkga krone',
+ 'DOP' => 'dominicaga peso',
+ 'DZD' => 'aldzeriaga dinar',
+ 'ECS' => 'ekuadɔga sucre',
+ 'ECV' => 'ekuadɔ dzidzenu matrɔmatrɔ',
+ 'EEK' => 'estoniaga kroon',
+ 'EGP' => 'egyptega pound',
+ 'ERN' => 'eritreaga nakfa',
+ 'ESA' => 'spaniaga peseta (A)',
+ 'ESB' => 'spaniaga peseta (Convertible)',
+ 'ESP' => 'spaniaga peseta',
+ 'ETB' => 'ethiopiaga birr',
+ 'EUR' => 'euro',
+ 'FIM' => 'finlandga markka',
+ 'FJD' => 'fidziga dollar',
+ 'FKP' => 'falklanɖ ƒudomekpo dukɔwo ƒe ga pound',
+ 'FRF' => 'frentsiga franc',
+ 'GBP' => 'britainga pound sterling',
+ 'GEK' => 'dzɔdziaga kupon larit',
+ 'GEL' => 'dzɔdziaga lari',
+ 'GHC' => 'ghana siɖi (1979–2007)',
+ 'GHS' => 'ghana siɖi',
+ 'GIP' => 'gilbrataga pound',
+ 'GMD' => 'gambiaga dalasi',
+ 'GNF' => 'giniga franc',
+ 'GNS' => 'giniga syli',
+ 'GQE' => 'ekuatorial giniga ekwele',
+ 'GRD' => 'grisiga drachma',
+ 'GTQ' => 'guatemalaga quetzal',
+ 'GWE' => 'pɔtugaltɔwo ƒe giniga escudo',
+ 'GWP' => 'gini-bisau peso',
+ 'GYD' => 'guyanaga dollar',
+ 'HKD' => 'hong kongga dollar',
+ 'HNL' => 'honduraga lempira',
+ 'HRD' => 'kroatiaga dinar',
+ 'HRK' => 'kroatiaga kuna',
+ 'HTG' => 'haitiga gourde',
+ 'HUF' => 'hungariaga forint',
+ 'IDR' => 'indinesiaga rupiah',
+ 'IEP' => 'ireland pound',
+ 'ILP' => 'israelga pound',
+ 'ILR' => 'israelga sheqel (1980–1985)',
+ 'ILS' => 'israelga yeyetɔ sheqel',
+ 'INR' => 'indiaga rupee',
+ 'IQD' => 'irakga dinar',
+ 'IRR' => 'iranga rial',
+ 'ISJ' => 'aiselandga króna (1918–1981)',
+ 'ISK' => 'aiselandga króna',
+ 'ITL' => 'italiaga lira',
+ 'JMD' => 'dzamaikaga dollar',
+ 'JOD' => 'yɔdanga dinar',
+ 'JPY' => 'dzapanga yen',
+ 'KES' => 'kenyaga shilling',
+ 'KGS' => 'kirgistanga som',
+ 'KHR' => 'kambodiaga riel',
+ 'KMF' => 'komoroga franc',
+ 'KPW' => 'dziehe koreaga won',
+ 'KRH' => 'anyiehe koreaga hwan (1953–1962)',
+ 'KRO' => 'anyiehe koreaga won (1945–1953)',
+ 'KRW' => 'anyiehe koreaga won',
+ 'KWD' => 'kuwaitga dinar',
+ 'KYD' => 'kayman ƒudomekpoga dollar',
+ 'KZT' => 'kazakhstanga tenge',
+ 'LAK' => 'laosga kip',
+ 'LBP' => 'lebanonga pound',
+ 'LKR' => 'sri lankaga rupee',
+ 'LRD' => 'liberiaga dollar',
+ 'LSL' => 'lesotoga loti',
+ 'LTL' => 'lithuaniaga litas',
+ 'LTT' => 'lithuaniaga talonas',
+ 'LUC' => 'lazembɔgga convertible franc',
+ 'LUF' => 'lazembɔgga franc',
+ 'LUL' => 'lazembɔgga gadzikpɔ franc',
+ 'LVL' => 'latviaga lats',
+ 'LVR' => 'latviaga ruble',
+ 'LYD' => 'libyaga dinar',
+ 'MAD' => 'morokoga dirham',
+ 'MAF' => 'morokoga franc',
+ 'MCF' => 'monegaskga franc',
+ 'MDC' => 'moldovaga cupon',
+ 'MDL' => 'moldovaga leu',
+ 'MGA' => 'malagasega ariary',
+ 'MGF' => 'malagasega franc',
+ 'MKD' => 'makedoniaga denar',
+ 'MKN' => 'makedoniaga denar (1992–1993)',
+ 'MLF' => 'maliga franc',
+ 'MMK' => 'myanmaga kyat',
+ 'MNT' => 'mongoliaga tugrik',
+ 'MOP' => 'makanesega pataca',
+ 'MRO' => 'mɔritaniaga ouguiya',
+ 'MTL' => 'maltaga lira',
+ 'MTP' => 'maltaga pound',
+ 'MUR' => 'mɔritiusga rupee',
+ 'MVR' => 'maldiviaga rufiyaa',
+ 'MWK' => 'malawiga kwacha',
+ 'MXN' => 'meksikoga peso',
+ 'MYR' => 'malaysiaga ringit',
+ 'MZN' => 'mozambikga metikal',
+ 'NAD' => 'namibiaga dollar',
+ 'NGN' => 'naidzeriaga naira',
+ 'NIC' => 'nikaraguaga córdoba (1988–1991)',
+ 'NIO' => 'nikaraguaga córdoba',
+ 'NLG' => 'hollandga guilder',
+ 'NOK' => 'norwayga krone',
+ 'NPR' => 'nepalga rupee',
+ 'NZD' => 'new zealanɖga dollar',
+ 'OMR' => 'omanga rial',
+ 'PAB' => 'panamaga balboa',
+ 'PEI' => 'peruga inti',
+ 'PEN' => 'peruga nuevo sol',
+ 'PES' => 'peruga nuevo sol (1863–1965)',
+ 'PGK' => 'papua new guineaga kina',
+ 'PHP' => 'filipiniga peso',
+ 'PKR' => 'pakistaniga rupee',
+ 'PLN' => 'polanɖga zloty',
+ 'PLZ' => 'polanɖga zloty (1950–1995)',
+ 'PTE' => 'pɔtugalga escudo',
+ 'PYG' => 'paraguayga guarani',
+ 'QAR' => 'katarga rial',
+ 'RHD' => 'rhodesiaga dollar',
+ 'ROL' => 'romaniaga leu (1952–2006)',
+ 'RON' => 'romaniaga leu',
+ 'RSD' => 'serbiaga dinar',
+ 'RUB' => 'rɔtsiaga ruble',
+ 'RUR' => 'rɔtsiaga ruble (1991–1998)',
+ 'RWF' => 'rwandaga franc',
+ 'SAR' => 'saudiga riyal',
+ 'SBD' => 'solomon ƒudomekpo dukɔwo ƒe ga dollar',
+ 'SCR' => 'sɛtselsga rupee',
+ 'SDD' => 'sudanga dinar (1992–2007)',
+ 'SDG' => 'sudanga pound',
+ 'SDP' => 'sudanga pound (1957–1998)',
+ 'SEK' => 'swedenga krona',
+ 'SGD' => 'singapɔga dollar',
+ 'SHP' => 'saint helenaga pound',
+ 'SIT' => 'slovaniaga tolar',
+ 'SKK' => 'slovakga koruna',
+ 'SLL' => 'sierra leonega leone',
+ 'SOS' => 'somaliaga shilling',
+ 'SRD' => 'surinamga dollar',
+ 'SRG' => 'surinamega guilder',
+ 'SSP' => 'anyiehe sudanga pound',
+ 'STD' => 'são tomé kple príncipega dobra',
+ 'SUR' => 'sovietga rouble',
+ 'SVC' => 'salvadɔga colón',
+ 'SYP' => 'syriaga pound',
+ 'SZL' => 'swaziga lilangeni',
+ 'THB' => 'thaiga baht',
+ 'TJR' => 'tajikistanga ruble',
+ 'TJS' => 'tajikistanga somoni',
+ 'TMM' => 'turkmenistanga manat (1993–2009)',
+ 'TMT' => 'turkmenistanga manat',
+ 'TND' => 'tunisiaga dinar',
+ 'TOP' => 'tonagaga pa’anga',
+ 'TPE' => 'timɔga escudo',
+ 'TRL' => 'tɛkiiga lira (1922–2005)',
+ 'TRY' => 'tɛkiiga lira',
+ 'TTD' => 'trinidad kple tobagoga dollar',
+ 'TWD' => 'taiwanga yeye dollar',
+ 'TZS' => 'Tanzaniatɔwofɛgadudu',
+ 'UAH' => 'ukrainega hryvnia',
+ 'UAK' => 'ukrainega karbovanet',
+ 'UGS' => 'ugandaga shilling (1966–1987)',
+ 'UGX' => 'ugandaga shilling',
+ 'USD' => 'us ga dollar',
+ 'USN' => 'us ga dollar (ŋkeke si gbɔna tɔ)',
+ 'USS' => 'us ga dollar (ŋkeke ma ke tɔ)',
+ 'UYI' => 'uruguayga peso UYI',
+ 'UYP' => 'uruguayga peso (1975–1993)',
+ 'UYU' => 'uruguayga peso',
+ 'UZS' => 'uzbekistanga som',
+ 'VEB' => 'venezuelaga bolívar (1871–2008)',
+ 'VEF' => 'venezuelaga bolívar',
+ 'VND' => 'vietnamga dong',
+ 'VNN' => 'vietnamga dong (1978–1985)',
+ 'VUV' => 'vanuatuga vatu',
+ 'WST' => 'samaoga tala',
+ 'XAF' => 'ɣetoɖofe afrikaga CFA franc BEAC',
+ 'XAG' => 'klosalo',
+ 'XAU' => 'sika',
+ 'XBA' => 'europa dzidzenu xba',
+ 'XBB' => 'europa gadzidzenu xbb',
+ 'XBC' => 'europa kɔnta dzidzenu xbc',
+ 'XBD' => 'europa kɔnta dzidzenu xbd',
+ 'XCD' => 'ɣedzeƒe caribbeaga dollar',
+ 'XDR' => 'gaɖuɖu ɖoɖo tɔxɛ',
+ 'XEU' => 'europa gaɖuɖu',
+ 'XFO' => 'fransemega sika franc',
+ 'XFU' => 'frentsi UIC-franc',
+ 'XOF' => 'ɣetoɖofe afrikaga CFA franc BCEAO',
+ 'XPD' => 'palladiumga',
+ 'XPF' => 'CFP ga franc',
+ 'XPT' => 'platinum',
+ 'XRE' => 'RINET gadodo XRE',
+ 'XTS' => 'gaɖuɖu dodokpɔ dzesi xts',
+ 'XXX' => 'gaɖuɖu manya',
+ 'YDD' => 'yemeniga dinar',
+ 'YER' => 'yemeniga rial',
+ 'YUD' => 'yugoslaviaga hard dinar (1966–1990)',
+ 'YUM' => 'yugoslaviaga yeyetɔ dinar (1994–2002)',
+ 'YUN' => 'yugoslaviaga convertible dinar (1990–1992)',
+ 'YUR' => 'yugoslaviaga dinar (1992–1993)',
+ 'ZAL' => 'anyiehe afrikaga rand (gadzikpɔtɔ)',
+ 'ZAR' => 'anyiehe afrikaga rand',
+ 'ZMK' => 'zambiaga kwacha (1968–2012)',
+ 'ZMW' => 'zambiaga kwacha',
+ 'ZRN' => 'zairega yeyetɔ zaire',
+ 'ZRZ' => 'zairega zaire (1971–1993)',
+ 'ZWD' => 'zimbabwega dollar (1980–2008)',
+ 'ZWL' => 'zimbabwega dollar (2009)',
+ 'ZWR' => 'zimbabwega dollar (2008)',
+);
+
+$currencySymbols = array(
+ 'AUD' => 'AU$',
+ 'BRL' => 'R$',
+ 'CAD' => 'CA$',
+ 'CNY' => 'CN¥',
+ 'EUR' => '€',
+ 'GBP' => '£',
+ 'GHS' => 'GH₵',
+ 'HKD' => 'HK$',
+ 'ILS' => '₪',
+ 'INR' => '₹',
+ 'JPY' => 'JP¥',
+ 'KRW' => '₩',
+ 'MXN' => 'MX$',
+ 'NZD' => 'NZ$',
+ 'THB' => '฿',
+ 'TWD' => 'NT$',
+ 'USD' => 'US$',
+ 'VND' => '₫',
+ 'XCD' => 'EC$',
+);
+
+$countryNames = array(
+ 'AC' => 'Ascension ƒudomekpo nutome',
+ 'AD' => 'Andorra nutome',
+ 'AE' => 'United Arab Emirates nutome',
+ 'AF' => 'Afghanistan nutome',
+ 'AG' => '́Antigua kple Barbuda nutome',
+ 'AI' => 'Anguilla nutome',
+ 'AL' => 'Albania nutome',
+ 'AM' => 'Armenia nutome',
+ 'AN' => 'Nedalands Antilis nutome',
+ 'AO' => 'Angola nutome',
+ 'AQ' => 'Antartica nutome',
+ 'AR' => 'Argentina nutome',
+ 'AS' => 'Amerika Samoa nutome',
+ 'AT' => 'Austria nutome',
+ 'AU' => 'Australia nutome',
+ 'AW' => 'Aruba nutome',
+ 'AX' => 'Åland ƒudomekpo nutome',
+ 'AZ' => 'Azerbaijan nutome',
+ 'BA' => 'Bosnia kple Herzergovina nutome',
+ 'BB' => 'Barbados nutome',
+ 'BD' => 'Bangladesh nutome',
+ 'BE' => 'Belgium nutome',
+ 'BF' => 'Burkina Faso nutome',
+ 'BG' => 'Bulgaria nutome',
+ 'BH' => 'Bahrain nutome',
+ 'BI' => 'Burundi nutome',
+ 'BJ' => 'Benin nutome',
+ 'BL' => 'Saint Barthélemy nutome',
+ 'BM' => 'Bermuda nutome',
+ 'BN' => 'Brunei nutome',
+ 'BO' => 'Bolivia nutome',
+ 'BQ' => 'Karibbeatɔwo ƒe Nedalanɖs nutome',
+ 'BR' => 'Brazil nutome',
+ 'BS' => 'Bahamas nutome',
+ 'BT' => 'Bhutan nutome',
+ 'BV' => 'Bouvet ƒudomekpo nutome',
+ 'BW' => 'Botswana nutome',
+ 'BY' => 'Belarus nutome',
+ 'BZ' => 'Belize nutome',
+ 'CA' => 'Kanada nutome',
+ 'CC' => 'Kokos (Kiling) fudomekpo nutome',
+ 'CD' => 'Kongo Kinshasa nutome',
+ 'CF' => 'Titina Afrika repɔblik nutome',
+ 'CG' => 'Kongo Brazzaville nutome',
+ 'CH' => 'Switzerland nutome',
+ 'CI' => 'Kote d’Ivoire nutome',
+ 'CK' => 'Kook ƒudomekpo nutome',
+ 'CL' => 'Tsile nutome',
+ 'CM' => 'Kamerun nutome',
+ 'CN' => 'Tsaina nutome',
+ 'CO' => 'Kolombia nutome',
+ 'CP' => 'Klipaton ƒudomekpo nutome',
+ 'CR' => 'Kosta Rika nutome',
+ 'CU' => 'Kuba nutome',
+ 'CV' => 'Kape Verde nutome',
+ 'CW' => 'Kurakao nutome',
+ 'CX' => 'Kristmas ƒudomekpo nutome',
+ 'CY' => 'Saiprus nutome',
+ 'CZ' => 'Tsɛk repɔblik nutome',
+ 'DE' => 'Germania nutome',
+ 'DG' => 'Diego Garsia nutome',
+ 'DJ' => 'Dzibuti nutome',
+ 'DK' => 'Denmark nutome',
+ 'DM' => 'Dominika nutome',
+ 'DO' => 'Dominika repɔblik nutome',
+ 'DZ' => 'Algeria nutome',
+ 'EA' => 'Keuta and Melilla nutome',
+ 'EC' => 'Ekuadɔ nutome',
+ 'EE' => 'Estonia nutome',
+ 'EG' => 'Egypte nutome',
+ 'EH' => 'Ɣetoɖoƒe Sahara nutome',
+ 'ER' => 'Eritrea nutome',
+ 'ES' => 'Spania nutome',
+ 'ET' => 'Etiopia nutome',
+ 'EU' => 'Europa Wɔɖeka nutome',
+ 'FI' => 'Finland nutome',
+ 'FJ' => 'Fidzi nutome',
+ 'FK' => 'Falkland ƒudomekpowo nutome',
+ 'FM' => 'Mikronesia nutome',
+ 'FO' => 'Faroe ƒudomekpowo nutome',
+ 'FR' => 'Frans nutome',
+ 'GA' => 'Gabɔn nutome',
+ 'GB' => 'United Kingdom nutome',
+ 'GD' => 'Grenada nutome',
+ 'GE' => 'Georgia nutome',
+ 'GF' => 'Frentsi Gayana nutome',
+ 'GG' => 'Guernse nutome',
+ 'GH' => 'Ghana nutome',
+ 'GI' => 'Gibraltar nutome',
+ 'GL' => 'Grinland nutome',
+ 'GM' => 'Gambia nutome',
+ 'GN' => 'Guini nutome',
+ 'GP' => 'Guadelupe nutome',
+ 'GQ' => 'Ekuatorial Guini nutome',
+ 'GR' => 'Grisi nutome',
+ 'GS' => 'Anyiehe Georgia kple Anyiehe Sandwich ƒudomekpowo nutome',
+ 'GT' => 'Guatemala nutome',
+ 'GU' => 'Guam nutome',
+ 'GW' => 'Gini-Bisao nutome',
+ 'GY' => 'Guyanadu',
+ 'HK' => 'Hɔng Kɔng nutome',
+ 'HM' => 'Heard kple Mcdonald ƒudomekpowo nutome',
+ 'HN' => 'Hondurasdu',
+ 'HR' => 'Kroatsia nutome',
+ 'HT' => 'Haiti nutome',
+ 'HU' => 'Hungari nutome',
+ 'IC' => 'Kanari ƒudomekpowo nutome',
+ 'ID' => 'Indonesia nutome',
+ 'IE' => 'Ireland nutome',
+ 'IL' => 'Israel nutome',
+ 'IM' => 'Aisle of Man nutome',
+ 'IN' => 'India nutome',
+ 'IO' => 'Britaintɔwo ƒe india ƒudome nutome',
+ 'IQ' => 'iraqdukɔ',
+ 'IR' => 'Iran nutome',
+ 'IS' => 'Aiseland nutome',
+ 'IT' => 'Italia nutome',
+ 'JE' => 'Dzɛse nutome',
+ 'JM' => 'Dzamaika nutome',
+ 'JO' => 'Yordan nutome',
+ 'JP' => 'Dzapan nutome',
+ 'KE' => 'Kenya nutome',
+ 'KG' => 'Kirgizstan nutome',
+ 'KH' => 'Kambodia nutome',
+ 'KI' => 'Kiribati nutome',
+ 'KM' => 'Komoros nutome',
+ 'KN' => 'Saint Kitis kple Nevis nutome',
+ 'KP' => 'Dziehe Korea nutome',
+ 'KR' => 'Anyiehe Korea nutome',
+ 'KW' => 'Kuwait nutome',
+ 'KY' => 'Kayman ƒudomekpowo nutome',
+ 'KZ' => 'Kazakstan nutome',
+ 'LA' => 'Laos nutome',
+ 'LB' => 'Lebanɔn nutome',
+ 'LC' => 'Saint Lusia nutome',
+ 'LI' => 'Litsenstein nutome',
+ 'LK' => 'Sri Lanka nutome',
+ 'LR' => 'Liberia nutome',
+ 'LS' => 'Lɛsoto nutome',
+ 'LT' => 'Lituania nutome',
+ 'LU' => 'Lazembɔg nutome',
+ 'LV' => 'Latvia nutome',
+ 'LY' => 'Libya nutome',
+ 'MA' => 'Moroko nutome',
+ 'MC' => 'Monako nutome',
+ 'MD' => 'Moldova nutome',
+ 'ME' => 'Montenegro nutome',
+ 'MF' => 'Saint Martin nutome',
+ 'MG' => 'Madagaska nutome',
+ 'MH' => 'Marshal ƒudomekpowo nutome',
+ 'MK' => 'Makedonia nutome',
+ 'ML' => 'Mali nutome',
+ 'MM' => 'Myanmar (Burma) nutome',
+ 'MN' => 'Mongolia nutome',
+ 'MO' => 'Macau nutome',
+ 'MP' => 'Dziehe Marina ƒudomekpowo nutome',
+ 'MQ' => 'Martiniki nutome',
+ 'MR' => 'Mauritania nutome',
+ 'MS' => 'Montserrat nutome',
+ 'MT' => 'Malta nutome',
+ 'MU' => 'mauritiusdukɔ',
+ 'MV' => 'maldivesdukɔ',
+ 'MW' => 'Malawi nutome',
+ 'MX' => 'Meksico nutome',
+ 'MY' => 'Malaysia nutome',
+ 'MZ' => 'Mozambiki nutome',
+ 'NA' => 'Namibia nutome',
+ 'NC' => 'New Kaledonia nutome',
+ 'NE' => 'Niger nutome',
+ 'NF' => 'Norfolk ƒudomekpo nutome',
+ 'NG' => 'Nigeria nutome',
+ 'NI' => 'Nicaraguadukɔ',
+ 'NL' => 'Nedalands nutome',
+ 'NO' => 'Norway nutome',
+ 'NP' => 'Nepal nutome',
+ 'NR' => 'Nauru nutome',
+ 'NU' => 'Niue nutome',
+ 'NZ' => 'New Zealand nutome',
+ 'OM' => 'Oman nutome',
+ 'PA' => 'Panama nutome',
+ 'PE' => 'Peru nutome',
+ 'PF' => 'Frentsi Pɔlinesia nutome',
+ 'PG' => 'Papua New Gini nutome',
+ 'PH' => 'Filipini nutome',
+ 'PK' => 'Pakistan nutome',
+ 'PL' => 'Poland nutome',
+ 'PM' => 'Saint Pierre kple Mikelɔn nutome',
+ 'PN' => 'Pitkairn ƒudomekpo nutome',
+ 'PR' => 'Puerto Riko nutome',
+ 'PS' => 'Palestinia nutome',
+ 'PT' => 'Portugal nutome',
+ 'PW' => 'Palau nutome',
+ 'PY' => 'Paragua nutome',
+ 'QA' => 'Katar nutome',
+ 'QO' => 'Outlaying Oceania nutome',
+ 'RE' => 'Réunion nutome',
+ 'RO' => 'Romania nutome',
+ 'RS' => 'Serbia nutome',
+ 'RU' => 'Russia nutome',
+ 'RW' => 'Rwanda nutome',
+ 'SA' => 'Saudi Arabia nutome',
+ 'SB' => 'Solomon ƒudomekpowo nutome',
+ 'SC' => 'Seshɛls nutome',
+ 'SD' => 'Sudan nutome',
+ 'SE' => 'Sweden nutome',
+ 'SG' => 'Singapɔr nutome',
+ 'SH' => 'Saint Helena nutome',
+ 'SI' => 'Slovenia nutome',
+ 'SJ' => 'Svalbard kple Yan Mayen nutome',
+ 'SK' => 'Slovakia nutome',
+ 'SL' => 'Sierra Leone nutome',
+ 'SM' => 'San Marino nutome',
+ 'SN' => 'Senegal nutome',
+ 'SO' => 'Somalia nutome',
+ 'SR' => 'Suriname nutome',
+ 'SS' => 'Anyiehe Sudan nutome',
+ 'ST' => 'São Tomé kple Príncipe nutome',
+ 'SV' => 'El Salvadɔ nutome',
+ 'SX' => 'Sint Maarten nutome',
+ 'SY' => 'Siria nutome',
+ 'SZ' => 'Swaziland nutome',
+ 'TA' => 'Tristan da Kunha nutome',
+ 'TC' => 'Tɛks kple Kaikos ƒudomekpowo nutome',
+ 'TD' => 'Tsad nutome',
+ 'TF' => 'Anyiehe Franseme nutome',
+ 'TG' => 'Togo nutome',
+ 'TH' => 'Tailand nutome',
+ 'TJ' => 'Tajikistan nutome',
+ 'TK' => 'Tokelau nutome',
+ 'TL' => 'Timor-Leste nutome',
+ 'TM' => 'Tɛkmenistan nutome',
+ 'TN' => 'Tunisia nutome',
+ 'TO' => 'Tonga nutome',
+ 'TR' => 'Tɛki nutome',
+ 'TT' => 'Trinidad kple Tobago nutome',
+ 'TV' => 'Tuvalu nutome',
+ 'TW' => 'Taiwan nutome',
+ 'TZ' => 'Tanzania nutome',
+ 'UA' => 'Ukraine nutome',
+ 'UG' => 'Uganda nutome',
+ 'UM' => 'U.S. Minor Outlaying ƒudomekpowo nutome',
+ 'US' => 'USA nutome',
+ 'UY' => 'uruguaydukɔ',
+ 'UZ' => 'Uzbekistan nutome',
+ 'VA' => 'Vatikandu nutome',
+ 'VC' => 'Saint Vincent kple Grenadine nutome',
+ 'VE' => 'Venezuela nutome',
+ 'VG' => 'Britaintɔwo ƒe Virgin ƒudomekpowo nutome',
+ 'VI' => 'U.S. Vɛrgin ƒudomekpowo nutome',
+ 'VN' => 'Vietnam nutome',
+ 'VU' => 'Vanuatu nutome',
+ 'WF' => 'Wallis kple Futuna nutome',
+ 'WS' => 'Samoa nutome',
+ 'YE' => 'Yemen nutome',
+ 'YT' => 'Mayotte nutome',
+ 'ZA' => 'Anyiehe Afrika nutome',
+ 'ZM' => 'Zambia nutome',
+ 'ZW' => 'Zimbabwe nutome',
+);
+
+$timeUnits = array(
+ 'day-future-one' => 'le ŋkeke {0} me',
+ 'day-future-other' => 'le ŋkeke {0} wo me',
+ 'day-one' => 'ŋkeke {0} wo',
+ 'day-other' => 'ŋkeke {0} wo',
+ 'day-past-one' => 'ŋkeke {0} si va yi',
+ 'day-past-other' => 'ŋkeke {0} si wo va yi',
+ 'hour-future-one' => 'le gaƒoƒo {0} me',
+ 'hour-future-other' => 'le gaƒoƒo {0} wo me',
+ 'hour-one' => 'gaƒoƒo {0} wo',
+ 'hour-other' => 'gaƒoƒo {0} wo',
+ 'hour-past-one' => 'gaƒoƒo {0} si va yi',
+ 'hour-past-other' => 'gaƒoƒo {0} si wo va yi',
+ 'minute-future-one' => 'le aɖabaƒoƒo {0} me',
+ 'minute-future-other' => 'le aɖabaƒoƒo {0} wo me',
+ 'minute-one' => 'aɖabaƒoƒo {0} wo',
+ 'minute-other' => 'aɖabaƒoƒo {0} wo',
+ 'minute-past-one' => 'aɖabaƒoƒo {0} si va yi',
+ 'minute-past-other' => 'aɖabaƒoƒo {0} si wo va yi',
+ 'month-future-one' => 'le ɣleti {0} me',
+ 'month-future-other' => 'le ɣleti {0} wo me',
+ 'month-one' => 'ɣleti {0} wo',
+ 'month-other' => 'ɣleti {0} wo',
+ 'month-past-one' => 'ɣleti {0} si va yi',
+ 'month-past-other' => 'ɣleti {0} si wo va yi',
+ 'second-future-one' => 'le sekend {0} me',
+ 'second-future-other' => 'le sekend {0} wo me',
+ 'second-one' => 'sekend {0} wo',
+ 'second-other' => 'sekend {0} wo',
+ 'second-past-one' => 'sekend {0} si va yi',
+ 'second-past-other' => 'sekend {0} si wo va yi',
+ 'week-future-one' => 'le kɔsiɖa {0} me',
+ 'week-future-other' => 'le kɔsiɖa {0} wo me',
+ 'week-one' => 'kɔsiɖa {0} wo',
+ 'week-other' => 'kɔsiɖa {0} wo',
+ 'week-past-one' => 'kɔsiɖa {0} si va yi',
+ 'week-past-other' => 'kɔsiɖa {0} si wo va yi',
+ 'year-future-one' => 'le ƒe {0} me',
+ 'year-future-other' => 'le ƒe {0} wo me',
+ 'year-one' => 'ƒe {0} wo',
+ 'year-other' => 'ƒe {0} wo',
+ 'year-past-one' => 'ƒe {0} si va yi',
+ 'year-past-other' => 'ƒe {0} si wo va yi',
+);
diff --git a/MLEB/cldr/CldrNames/CldrNamesEl.php b/MLEB/cldr/CldrNames/CldrNamesEl.php
new file mode 100644
index 00000000..3ac596a1
--- /dev/null
+++ b/MLEB/cldr/CldrNames/CldrNamesEl.php
@@ -0,0 +1,1345 @@
+<?php
+
+$languageNames = array(
+ 'aa' => 'Αφάρ',
+ 'ab' => 'Αμπχαζικά',
+ 'ace' => 'Αχινίζ',
+ 'ach' => 'Ακολί',
+ 'ada' => 'Αντάνγκμε',
+ 'ady' => 'Αντιγκέα',
+ 'ae' => 'Αβεστάν',
+ 'af' => 'Αφρικάανς',
+ 'afh' => 'Αφριχίλι',
+ 'agq' => 'Αγκέμ',
+ 'ain' => 'Αϊνού',
+ 'ak' => 'Ακάν',
+ 'akk' => 'Ακάντιαν',
+ 'ale' => 'Αλούτ',
+ 'alt' => 'Νότια Αλαταϊκά',
+ 'am' => 'Αμαρικά',
+ 'an' => 'Αραγκονικά',
+ 'ang' => 'Παλαιά Αγγλικά',
+ 'anp' => 'Ανγκικά',
+ 'ar' => 'Αραβικά',
+ 'ar-001' => 'Σύγχρονα Τυπικά Αραβικά',
+ 'arc' => 'Αραμαϊκά',
+ 'arn' => 'Αρουκάνιαν',
+ 'arp' => 'Αράπαχο',
+ 'arw' => 'Αραγουάκ',
+ 'as' => 'Ασαμεζικά',
+ 'asa' => 'Άσου',
+ 'ast' => 'Αστουριανά',
+ 'av' => 'Άβαρικ',
+ 'awa' => 'Αγουαντί',
+ 'ay' => 'Αϊμάρα',
+ 'az' => 'Αζερμπαϊτζανικά',
+ 'ba' => 'Μπασκίρ',
+ 'bal' => 'Μπαλούτσι',
+ 'ban' => 'Μπαλινίζ',
+ 'bas' => 'Μπάσα',
+ 'bax' => 'Μπαμούν',
+ 'bbj' => 'Γκομάλα',
+ 'be' => 'Λευκορωσικά',
+ 'bej' => 'Μπέζα',
+ 'bem' => 'Μπέμπα',
+ 'bez' => 'Μπένα',
+ 'bfd' => 'Μπαφούτ',
+ 'bg' => 'Βουλγαρικά',
+ 'bho' => 'Μποζπούρι',
+ 'bi' => 'Μπισλάμα',
+ 'bik' => 'Μπικόλ',
+ 'bin' => 'Μπίνι',
+ 'bkm' => 'Κομ',
+ 'bla' => 'Σικσίκα',
+ 'bm' => 'Μπαμπάρα',
+ 'bn' => 'Μπενγκάλι',
+ 'bo' => 'Θιβετιανά',
+ 'br' => 'Βρετονικά',
+ 'bra' => 'Μπρατζ',
+ 'brx' => 'Μπόντο',
+ 'bs' => 'Βοσνιακά',
+ 'bss' => 'Ακόσι',
+ 'bua' => 'Μπουριάτ',
+ 'bug' => 'Μπουγκίζ',
+ 'bum' => 'Μπουλού',
+ 'byn' => 'Μπλιν',
+ 'byv' => 'Μεντούμπα',
+ 'ca' => 'Καταλανικά',
+ 'cad' => 'Κάντο',
+ 'car' => 'Καρίμπ',
+ 'cay' => 'Καγιούγκα',
+ 'cch' => 'Ατσάμ',
+ 'ce' => 'Τσέτσνιαν',
+ 'ceb' => 'Κεμπουάνο',
+ 'cgg' => 'Τσίγκα',
+ 'ch' => 'Καμόρρο',
+ 'chb' => 'Τσίμπτσα',
+ 'chg' => 'Τσαγκατάι',
+ 'chk' => 'Τσουκίζι',
+ 'chm' => 'Μάρι',
+ 'chn' => 'Ιδιωματικά Σινούκ',
+ 'cho' => 'Τσοκτάου',
+ 'chp' => 'Τσίπιουαν',
+ 'chr' => 'Τσερόκι',
+ 'chy' => 'Σεγιέν',
+ 'ckb' => 'Κουρδικά Σοράνι',
+ 'co' => 'Κορσικανικά',
+ 'cop' => 'Κοπτικά',
+ 'cr' => 'Κρι',
+ 'crh' => 'Τουρκικά Κριμαίας',
+ 'cs' => 'Τσεχικά',
+ 'csb' => 'Κασούμπιαν',
+ 'cu' => 'Εκκλησιαστικά Σλαβικά',
+ 'cv' => 'Χουβάς',
+ 'cy' => 'Ουαλικά',
+ 'da' => 'Δανικά',
+ 'dak' => 'Ντακότα',
+ 'dar' => 'Ντάργκουα',
+ 'dav' => 'Τάιτα',
+ 'de' => 'Γερμανικά',
+ 'de-at' => 'Γερμανικά Αυστρίας',
+ 'de-ch' => 'Γερμανικά Ελβετίας',
+ 'del' => 'Ντέλαγουερ',
+ 'den' => 'Σλαβικά',
+ 'dgr' => 'Ντόγκριμπ',
+ 'din' => 'Ντίνκα',
+ 'dje' => 'Ζάρμα',
+ 'doi' => 'Ντόγκρι',
+ 'dsb' => 'Γλώσσα Κάτω Λουσατίας',
+ 'dua' => 'Ντουάλα',
+ 'dum' => 'Μέσα Ολλανδικά',
+ 'dv' => 'Ντιβέχι',
+ 'dyo' => 'Τζόλα-Φόνι',
+ 'dyu' => 'Ντογιούλα',
+ 'dz' => 'Ντζόνγκχα',
+ 'dzg' => 'Νταζάγκα',
+ 'ebu' => 'Έμπου',
+ 'ee' => 'Γι',
+ 'efi' => 'Εφίκ',
+ 'egy' => 'Αρχαία Αιγυπτιακά',
+ 'eka' => 'Εκατζούκ',
+ 'el' => 'Ελληνικά',
+ 'elx' => 'Ελαμάιτ',
+ 'en' => 'Αγγλικά',
+ 'en-au' => 'Αγγλικά Αυστραλίας',
+ 'en-ca' => 'Αγγλικά Καναδά',
+ 'en-gb' => 'Αγγλικά Ηνωμένου Βασιλείου',
+ 'en-us' => 'Αγγλικά Αμερικής',
+ 'enm' => 'Μέσα Αγγλικά',
+ 'eo' => 'Εσπεράντο',
+ 'es' => 'Ισπανικά',
+ 'es-419' => 'Ισπανικά Λατινικής Αμερικής',
+ 'es-es' => 'Ισπανικά Ευρώπης',
+ 'es-mx' => 'Ισπανικά Μεξικού',
+ 'et' => 'Εσθονικά',
+ 'eu' => 'Βασκικά',
+ 'ewo' => 'Εγουόντο',
+ 'fa' => 'Περσικά',
+ 'fan' => 'Φανγκ',
+ 'fat' => 'Φάντι',
+ 'ff' => 'Φουλάχ',
+ 'fi' => 'Φινλανδικά',
+ 'fil' => 'Φιλιππινεζικά',
+ 'fj' => 'Φίτζι',
+ 'fo' => 'Φαρόε',
+ 'fon' => 'Φον',
+ 'fr' => 'Γαλλικά',
+ 'fr-ca' => 'Γαλλικά Καναδά',
+ 'fr-ch' => 'Γαλλικά Ελβετίας',
+ 'frm' => 'Μέσα Γαλλικά',
+ 'fro' => 'Παλαιά Γαλλικά',
+ 'frr' => 'Βόρεια Φριζιανά',
+ 'frs' => 'Ανατολικά Φριζιανά',
+ 'fur' => 'Φριούλιαν',
+ 'fy' => 'Δυτικά Φριζιανά',
+ 'ga' => 'Ιρλανδικά',
+ 'gaa' => 'Γκα',
+ 'gag' => 'Γκαγκάουζ',
+ 'gay' => 'Γκάγιο',
+ 'gba' => 'Γκμπάγια',
+ 'gd' => 'Σκωτικά Κελτικά',
+ 'gez' => 'Γκιζ',
+ 'gil' => 'Γκιλμπερτίζ',
+ 'gl' => 'Γαλικιανά',
+ 'gmh' => 'Μέσα Άνω Γερμανικά',
+ 'gn' => 'Γκουαρανί',
+ 'goh' => 'Παλαιά Άνω Γερμανικά',
+ 'gon' => 'Γκόντι',
+ 'gor' => 'Γκοροντάλο',
+ 'got' => 'Γοτθικά',
+ 'grb' => 'Γκρίμπο',
+ 'grc' => 'Αρχαία Ελληνικά',
+ 'gsw' => 'Ελβετικά Γερμανικά',
+ 'gu' => 'Γκουγιαράτι',
+ 'guz' => 'Γκούσι',
+ 'gv' => 'Μανξ',
+ 'gwi' => 'Γκουίτσιν',
+ 'ha' => 'Χάουσα',
+ 'hai' => 'Χάιντα',
+ 'haw' => 'Χαβανεζικά',
+ 'he' => 'Εβραϊκά',
+ 'hi' => 'Χίντι',
+ 'hil' => 'Χιλιγκαγιόν',
+ 'hit' => 'Χιτίτε',
+ 'hmn' => 'Χμονγκ',
+ 'ho' => 'Χίρι Μότου',
+ 'hr' => 'Κροατικά',
+ 'hsb' => 'Γλώσσα Άνω Λουσατίας',
+ 'ht' => 'Αϊτιανά',
+ 'hu' => 'Ουγγρικά',
+ 'hup' => 'Χούπα',
+ 'hy' => 'Αρμενικά',
+ 'hz' => 'Χερέρο',
+ 'ia' => 'Ιντερλίνγκουα',
+ 'iba' => 'Ιμπάν',
+ 'ibb' => 'Ιμπίμπιο',
+ 'id' => 'Ινδονησιακά',
+ 'ie' => 'Ιντερλίνγκουε',
+ 'ig' => 'Ίγκμπο',
+ 'ii' => 'Σικουάν Γι',
+ 'ik' => 'Ινουπιάκ',
+ 'ilo' => 'Ιλόκο',
+ 'inh' => 'Ινγκούς',
+ 'io' => 'Ίντο',
+ 'is' => 'Ισλανδικά',
+ 'it' => 'Ιταλικά',
+ 'iu' => 'Ινουκτιτούτ',
+ 'ja' => 'Ιαπωνικά',
+ 'jbo' => 'Λόζμπαν',
+ 'jgo' => 'Νγκόμπα',
+ 'jmc' => 'Μάχαμε',
+ 'jpr' => 'Ιουδαϊκά-Περσικά',
+ 'jrb' => 'Ιουδαϊκά-Αραβικά',
+ 'jv' => 'Ιαβανεζικά',
+ 'ka' => 'Γεωργιανά',
+ 'kaa' => 'Κάρα-Καλπάκ',
+ 'kab' => 'Καμπίλε',
+ 'kac' => 'Κατσίν',
+ 'kaj' => 'Τζου',
+ 'kam' => 'Κάμπα',
+ 'kaw' => 'Κάουι',
+ 'kbd' => 'Καμπαρντιανά',
+ 'kbl' => 'Κανέμπου',
+ 'kcg' => 'Τουάπ',
+ 'kde' => 'Μακόντε',
+ 'kea' => 'Γλώσσα του Πράσινου Ακρωτηρίου',
+ 'kfo' => 'Κόρο',
+ 'kg' => 'Κονγκό',
+ 'kha' => 'Κάσι',
+ 'kho' => 'Κοτανικά',
+ 'khq' => 'Κόιρα Τσίνι',
+ 'ki' => 'Κικούγιου',
+ 'kj' => 'Κουανιγιάμα',
+ 'kk' => 'Καζακικά',
+ 'kkj' => 'Κάκο',
+ 'kl' => 'Καλαάλισουτ',
+ 'kln' => 'Καλεντζίν',
+ 'km' => 'Καμποτζιανά',
+ 'kmb' => 'Κιμπούντου',
+ 'kn' => 'Κανάντα',
+ 'ko' => 'Κορεατικά',
+ 'koi' => 'Κόμι-Περμιάκ',
+ 'kok' => 'Κονκάνι',
+ 'kos' => 'Κοσραενικά',
+ 'kpe' => 'Κπέλε',
+ 'kr' => 'Κανούρι',
+ 'krc' => 'Καρατσάι-Μπαλκάρ',
+ 'krl' => 'Καρελιακά',
+ 'kru' => 'Κουρούχ',
+ 'ks' => 'Κασμίρι',
+ 'ksb' => 'Σάμπαλα',
+ 'ksf' => 'Μπάφια',
+ 'ksh' => 'Κολωνικά',
+ 'ku' => 'Κουρδικά',
+ 'kum' => 'Κουμγιούκ',
+ 'kut' => 'Κουτενάι',
+ 'kv' => 'Κόμι',
+ 'kw' => 'Κόρνις',
+ 'ky' => 'Κυργιζικά',
+ 'la' => 'Λατινικά',
+ 'lad' => 'Λαδίνο',
+ 'lag' => 'Λάνγκι',
+ 'lah' => 'Λάχδα',
+ 'lam' => 'Λάμπα',
+ 'lb' => 'Λουξεμβουργιανά',
+ 'lez' => 'Λαζγκιάν',
+ 'lg' => 'Γκάντα',
+ 'li' => 'Λιμβουργιανά',
+ 'lkt' => 'Λακότα',
+ 'ln' => 'Λινγκάλα',
+ 'lo' => 'Λαοθιανά',
+ 'lol' => 'Μόνγκο',
+ 'loz' => 'Λόζι',
+ 'lt' => 'Λιθουανικά',
+ 'lu' => 'Λούμπα-Κατάνγκα',
+ 'lua' => 'Λούμπα-Λουλούα',
+ 'lui' => 'Λουισένο',
+ 'lun' => 'Λούντα',
+ 'luo' => 'Λούο',
+ 'lus' => 'Λουσάι',
+ 'luy' => 'Λουχία',
+ 'lv' => 'Λετονικά',
+ 'mad' => 'Μαντουρίζ',
+ 'maf' => 'Μάφα',
+ 'mag' => 'Μαγκάχι',
+ 'mai' => 'Μαϊτχίλι',
+ 'mak' => 'Μακαζάρ',
+ 'man' => 'Μαντίνγκο',
+ 'mas' => 'Μασάι',
+ 'mde' => 'Μάμπα',
+ 'mdf' => 'Μόκσα',
+ 'mdr' => 'Μανδάρ',
+ 'men' => 'Μέντε',
+ 'mer' => 'Μερού',
+ 'mfe' => 'Μορίσιεν',
+ 'mg' => 'Μαλαγάσι',
+ 'mga' => 'Μέσα Ιρλανδικά',
+ 'mgh' => 'Μακούβα-Μέτο',
+ 'mgo' => 'Μετά',
+ 'mh' => 'Μάρσαλ',
+ 'mi' => 'Μάορι',
+ 'mic' => 'Μικμάκ',
+ 'min' => 'Μινανγκαμπάου',
+ 'mk' => 'Σλαβομακεδονικά',
+ 'ml' => 'Μαλαγιαλάμ',
+ 'mn' => 'Μογγολικά',
+ 'mnc' => 'Μαντσού',
+ 'mni' => 'Μανιπούρι',
+ 'moh' => 'Μοχόκ',
+ 'mos' => 'Μόσι',
+ 'mr' => 'Μαράθι',
+ 'ms' => 'Μαλάι',
+ 'mt' => 'Μαλτεζικά',
+ 'mua' => 'Μουντάνγκ',
+ 'mul' => 'Πολλαπλές γλώσσες',
+ 'mus' => 'Κρικ',
+ 'mwl' => 'Μιραντεζικά',
+ 'mwr' => 'Μαργουάρι',
+ 'my' => 'Βιρμανικά',
+ 'mye' => 'Μιένε',
+ 'myv' => 'Έρζυα',
+ 'na' => 'Ναούρου',
+ 'nap' => 'Ναπολιτανικά',
+ 'naq' => 'Νάμα',
+ 'nb' => 'Νορβηγικά Μποκμάλ',
+ 'nd' => 'Ντεμπέλε Βορρά',
+ 'nds' => 'Κάτω Γερμανικά',
+ 'ne' => 'Νεπάλι',
+ 'new' => 'Νεγουάρι',
+ 'ng' => 'Ντόνγκα',
+ 'nia' => 'Νίας',
+ 'niu' => 'Νιούεαν',
+ 'nl' => 'Ολλανδικά',
+ 'nl-be' => 'Φλαμανδικά',
+ 'nmg' => 'Κβάσιο',
+ 'nn' => 'Νορβηγικά Νινόρσκ',
+ 'nnh' => 'Νγκιεμπούν',
+ 'no' => 'Νορβηγικά',
+ 'nog' => 'Νογκάι',
+ 'non' => 'Παλαιά Νορβηγικά',
+ 'nqo' => 'Ν’Κο',
+ 'nr' => 'Ντεμπέλε Νότου',
+ 'nso' => 'Βόρεια Σόθο',
+ 'nus' => 'Νουέρ',
+ 'nv' => 'Νάβαχο',
+ 'nwc' => 'Κλασικά Νεουάρι',
+ 'ny' => 'Νιάντζα',
+ 'nym' => 'Νιαμγουέζι',
+ 'nyn' => 'Νιανκόλε',
+ 'nyo' => 'Νιόρο',
+ 'nzi' => 'Νζίμα',
+ 'oc' => 'Οκσιτανικά',
+ 'oj' => 'Οζιβίγουα',
+ 'om' => 'Ορόμο',
+ 'or' => 'Ορίγια',
+ 'os' => 'Οσετικά',
+ 'osa' => 'Οσάζ',
+ 'ota' => 'Οθωμανικά Τουρκικά',
+ 'pa' => 'Παντζαπικά',
+ 'pag' => 'Πανγκασινάν',
+ 'pal' => 'Παχλάβι',
+ 'pam' => 'Παμπάνγκα',
+ 'pap' => 'Παπιαμέντο',
+ 'pau' => 'Παλάουαν',
+ 'peo' => 'Αρχαία Περσικά',
+ 'phn' => 'Φοινικικά',
+ 'pi' => 'Πάλι',
+ 'pl' => 'Πολωνικά',
+ 'pon' => 'Ποχπέιαν',
+ 'pro' => 'Παλαιά Προβενσιάλ',
+ 'ps' => 'Πάστο',
+ 'pt' => 'Πορτογαλικά',
+ 'pt-br' => 'Πορτογαλικά Βραζιλίας',
+ 'pt-pt' => 'Πορτογαλικά Ευρώπης',
+ 'qu' => 'Κετσούα',
+ 'quc' => 'Κισέ',
+ 'raj' => 'Ραζασθάνι',
+ 'rap' => 'Ραπανούι',
+ 'rar' => 'Ραροτονγκάν',
+ 'rm' => 'Ρομανικά',
+ 'rn' => 'Ρούντι',
+ 'ro' => 'Ρουμανικά',
+ 'ro-md' => 'Μολδαβικά',
+ 'rof' => 'Ρόμπο',
+ 'rom' => 'Ρομανί',
+ 'ru' => 'Ρωσικά',
+ 'rup' => 'Αρομανικά',
+ 'rw' => 'Κινιαρβάντα',
+ 'rwk' => 'Ρουά',
+ 'sa' => 'Σανσκριτικά',
+ 'sad' => 'Σαντάγουε',
+ 'sah' => 'Γιακούτ',
+ 'sam' => 'Σαμαρίτικα Αραμαϊκά',
+ 'saq' => 'Σαμπούρου',
+ 'sas' => 'Σασάκ',
+ 'sat' => 'Σαντάλι',
+ 'sba' => 'Νγκαμπέι',
+ 'sbp' => 'Σάνγκου',
+ 'sc' => 'Σαρδινικά',
+ 'scn' => 'Σικελιανά',
+ 'sco' => 'Σκωτικά',
+ 'sd' => 'Σίντι',
+ 'se' => 'Βόρεια Σάμι',
+ 'see' => 'Σένεκα',
+ 'seh' => 'Σένα',
+ 'sel' => 'Σελκούπ',
+ 'ses' => 'Κοϊραμπόρο Σένι',
+ 'sg' => 'Σάνγκο',
+ 'sga' => 'Παλαιά Ιρλανδικά',
+ 'sh' => 'Σερβοκροατικά',
+ 'shi' => 'Τασελχίτ',
+ 'shn' => 'Σαν',
+ 'shu' => 'Αραβικά του Τσαντ',
+ 'si' => 'Σινχαλεζικά',
+ 'sid' => 'Σιντάμο',
+ 'sk' => 'Σλοβακικά',
+ 'sl' => 'Σλοβενικά',
+ 'sm' => 'Σαμόαν',
+ 'sma' => 'Νότια Σάμι',
+ 'smj' => 'Λούλε Σάμι',
+ 'smn' => 'Ινάρι Σάμι',
+ 'sms' => 'Σκολτ Σάμι',
+ 'sn' => 'Σχόνα',
+ 'snk' => 'Σονίνκε',
+ 'so' => 'Σομάλι',
+ 'sog' => 'Σογκντιέν',
+ 'sq' => 'Αλβανικά',
+ 'sr' => 'Σερβικά',
+ 'srn' => 'Σρανάρ Τόνγκο',
+ 'srr' => 'Σερέρ',
+ 'ss' => 'Σουάτι',
+ 'ssy' => 'Σάχο',
+ 'st' => 'Νότια Σόθο',
+ 'su' => 'Σουδανικά',
+ 'suk' => 'Σουκούμα',
+ 'sus' => 'Σούσου',
+ 'sux' => 'Σουμερικά',
+ 'sv' => 'Σουηδικά',
+ 'sw' => 'Σουαχίλι',
+ 'swb' => 'Κομόρρια',
+ 'swc' => 'Κονγκό Σουαχίλι',
+ 'syc' => 'Κλασικά Συριακά',
+ 'syr' => 'Συριακά',
+ 'ta' => 'Ταμίλ',
+ 'te' => 'Τελούγκου',
+ 'tem' => 'Τίμνε',
+ 'teo' => 'Τέσο',
+ 'ter' => 'Τερένο',
+ 'tet' => 'Τέτουμ',
+ 'tg' => 'Τατζίκ',
+ 'th' => 'Ταϊλανδικά',
+ 'ti' => 'Τιγκρίνυα',
+ 'tig' => 'Τίγκρε',
+ 'tiv' => 'Τιβ',
+ 'tk' => 'Τουρκμενικά',
+ 'tkl' => 'Τοκελάου',
+ 'tl' => 'Ταγκαλόγκ',
+ 'tlh' => 'Κλίνγκον',
+ 'tli' => 'Τλίνγκιτ',
+ 'tmh' => 'Ταμασέκ',
+ 'tn' => 'Τσιγουάνα',
+ 'to' => 'Τονγκανικά',
+ 'tog' => 'Νιάσα Τόνγκα',
+ 'tpi' => 'Τοκ Πισίν',
+ 'tr' => 'Τουρκικά',
+ 'trv' => 'Ταρόκο',
+ 'ts' => 'Τσόνγκα',
+ 'tsi' => 'Τσίμσιαν',
+ 'tt' => 'Τατάρ',
+ 'tum' => 'Τουμπούκα',
+ 'tvl' => 'Τουβαλού',
+ 'tw' => 'Τούι',
+ 'twq' => 'Τασαβάκ',
+ 'ty' => 'Ταϊτιανά',
+ 'tyv' => 'Τουβίνιαν',
+ 'tzm' => 'Ταμαζίτ Κεντρικού Μαρόκο',
+ 'udm' => 'Ουντμούρτ',
+ 'ug' => 'Ουιγουρικά',
+ 'uga' => 'Ουγκαρίτικ',
+ 'uk' => 'Ουκρανικά',
+ 'umb' => 'Ουμπούντου',
+ 'und' => 'Άγνωστη γλώσσα',
+ 'ur' => 'Ουρντού',
+ 'uz' => 'Ουζμπεκικά',
+ 'vai' => 'Βάι',
+ 've' => 'Βένδα',
+ 'vi' => 'Βιετναμικά',
+ 'vo' => 'Βόλαπικ',
+ 'vot' => 'Βότικ',
+ 'vun' => 'Βούντζο',
+ 'wa' => 'Γουαλούν',
+ 'wae' => 'Βάλσερ',
+ 'wal' => 'Γουάλαμο',
+ 'war' => 'Γουάρει',
+ 'was' => 'Γουασό',
+ 'wo' => 'Γουόλοφ',
+ 'xal' => 'Καλμίκ',
+ 'xh' => 'Ζόσα',
+ 'xog' => 'Σόγκα',
+ 'yao' => 'Γιάο',
+ 'yap' => 'Γιαπίζ',
+ 'yav' => 'Γιανγκμπέν',
+ 'ybb' => 'Γιέμπα',
+ 'yi' => 'Γίντις',
+ 'yo' => 'Γιορούμπα',
+ 'yue' => 'Καντονέζικα',
+ 'za' => 'Ζουάνγκ',
+ 'zap' => 'Ζάποτεκ',
+ 'zbl' => 'Σύμβολα Bliss',
+ 'zen' => 'Ζενάγκα',
+ 'zgh' => 'Τυπικά Ταμαζίγκτ Μαρόκου',
+ 'zh' => 'Κινεζικά',
+ 'zh-hans' => 'Απλοποιημένα Κινεζικά',
+ 'zh-hant' => 'Παραδοσιακά Κινεζικά',
+ 'zu' => 'Ζουλού',
+ 'zun' => 'Ζούνι',
+ 'zxx' => 'Χωρίς γλωσσολογικό περιεχόμενο',
+ 'zza' => 'Ζάζα',
+);
+
+$currencyNames = array(
+ 'ADP' => 'Πεσέτα Ανδόρας',
+ 'AED' => 'Ντιράμ Ηνωμένων Αραβικών Εμιράτων',
+ 'AFA' => 'Αφγανί Αφγανιστάν (1927–2002)',
+ 'AFN' => 'Αφγάνι Αφγανιστάν',
+ 'ALK' => 'Παλαιό λεκ Αλβανίας',
+ 'ALL' => 'Λεκ Αλβανίας',
+ 'AMD' => 'Ντραμ Αρμενίας',
+ 'ANG' => 'Γκίλντα Ολλανδικών Αντιλλών',
+ 'AOA' => 'Κουάνζα Ανγκόλας',
+ 'AOK' => 'Κουάνζα Ανγκόλας (1977–1990)',
+ 'AON' => 'Νέα Κουάνζα Ανγκόλας (1990–2000)',
+ 'ARA' => 'Ωστράλ Αργετινής',
+ 'ARL' => 'Πέσο λέι Αργετινής',
+ 'ARP' => 'Πέσο Αργεντινής (1983–1985)',
+ 'ARS' => 'Πέσο Αργεντινής',
+ 'ATS' => 'Σελίνι Αυστρίας',
+ 'AUD' => 'Δολάριο Αυστραλίας',
+ 'AWG' => 'Φλορίνι Αρούμπα',
+ 'AZM' => 'Μανάτ Αζερμπαϊτζάν (1993–2006)',
+ 'AZN' => 'Μανάτ Αζερμπαϊτζάν',
+ 'BAD' => 'Δηνάριο Βοσνίας-Ερζεγοβίνης',
+ 'BAM' => 'Μετατρέψιμο Μάρκο Βοσνίας-Ερζεγοβίνης',
+ 'BAN' => 'Νέο δινάριο Βοσνίας-Ερζεγοβίνης',
+ 'BBD' => 'Δολάριο Μπαρμπάντος',
+ 'BDT' => 'Τάκα Μπαγκλαντές',
+ 'BEC' => 'Φράγκο Βελγίου (μετατρέψιμο)',
+ 'BEF' => 'Φράγκο Βελγίου',
+ 'BEL' => 'Φράγκο Βελγίου (οικονομικό)',
+ 'BGL' => 'Μεταλλικό Λεβ Βουλγαρίας',
+ 'BGM' => 'Σοσιαλιστικό λεβ Βουλγαρίας',
+ 'BGN' => 'Λεβ Βουλγαρίας',
+ 'BGO' => 'Παλαιό λεβ Βουλγαρίας',
+ 'BHD' => 'Δηνάριο Μπαχρέιν',
+ 'BIF' => 'Φράγκο Μπουρούντι',
+ 'BMD' => 'Δολάριο Βερμούδων',
+ 'BND' => 'Δολάριο Μπρουνέι',
+ 'BOB' => 'Μπολιβιάνο Βολιβίας',
+ 'BOL' => 'Παλαιό βολιβιάνο Βολιβίας',
+ 'BOP' => 'Πέσο Βολιβίας',
+ 'BOV' => 'Μβδολ Βολιβίας',
+ 'BRB' => 'Νέο Κρουζιέρο Βραζιλίας (1967–1986)',
+ 'BRC' => 'Κρουζάντο Βραζιλίας',
+ 'BRE' => 'Κρουζιέρο Βραζιλίας (1990–1993)',
+ 'BRL' => 'Ρεάλ Βραζιλίας',
+ 'BRN' => 'Νέο Κρουζάντο Βραζιλίας',
+ 'BRR' => 'Κρουζιέρο Βραζιλίας',
+ 'BRZ' => 'Παλαιό κρουζέιρο Βραζιλίας',
+ 'BSD' => 'Δολάριο Μπαχάμες',
+ 'BTN' => 'Νγκούλτρουμ Μπουτάν',
+ 'BUK' => 'Κιατ Βιρμανίας',
+ 'BWP' => 'Πούλα Μποτσουάνας',
+ 'BYB' => 'Νέο Ρούβλι Λευκορωσίας (1994–1999)',
+ 'BYR' => 'Ρούβλι Λευκορωσίας',
+ 'BZD' => 'Δολάριο Μπελίζ',
+ 'CAD' => 'Δολάριο Καναδά',
+ 'CDF' => 'Φράγκο Κονγκό',
+ 'CHE' => 'Ευρώ WIR',
+ 'CHF' => 'Φράγκο Ελβετίας',
+ 'CHW' => 'Φράγκο WIR',
+ 'CLE' => 'Εσκούδο Χιλής',
+ 'CLF' => 'Ουνιδάδες ντε φομέντο Χιλής',
+ 'CLP' => 'Πέσο Χιλής',
+ 'CNX' => 'Δολάριο Λαϊκής Τράπεζας Κίνας',
+ 'CNY' => 'Γουάν Κίνας',
+ 'COP' => 'Πέσο Κολομβίας',
+ 'CRC' => 'Κολόν Κόστα Ρίκα',
+ 'CSD' => 'Παλαιό Δηνάριο Σερβίας',
+ 'CSK' => 'Σκληρή Κορόνα Τσεχοσλοβακίας',
+ 'CUC' => 'Μετατρέψιμο πέσο Κούβας',
+ 'CUP' => 'Πέσο Κούβας',
+ 'CVE' => 'Εσκούδο Πράσινου Ακρωτηρίου',
+ 'CYP' => 'Λίρα Κύπρου',
+ 'CZK' => 'Κορόνα Τσεχίας',
+ 'DDM' => 'Οστμάρκ Ανατολικής Γερμανίας',
+ 'DEM' => 'Μάρκο Γερμανίας',
+ 'DJF' => 'Φράγκο Τζιμπουτί',
+ 'DKK' => 'Κορόνα Δανίας',
+ 'DOP' => 'Πέσο Δομινικανής Δημοκρατίας',
+ 'DZD' => 'Δηνάριο Αλγερίας',
+ 'ECS' => 'Σούκρε Εκουαδόρ',
+ 'EEK' => 'Κορόνα Εσθονίας',
+ 'EGP' => 'Λίρα Αιγύπτου',
+ 'ERN' => 'Νάκφα Ερυθραίας',
+ 'ESA' => 'πεσέτα Ισπανίας (λογαριασμός Α)',
+ 'ESB' => 'πεσέτα Ισπανίας (μετατρέψιμος λογαριασμός)',
+ 'ESP' => 'Πεσέτα Ισπανίας',
+ 'ETB' => 'Μπιρ Αιθιοπίας',
+ 'EUR' => 'Ευρώ',
+ 'FIM' => 'Μάρκο Φινλανδίας',
+ 'FJD' => 'Δολάριο Φίτζι',
+ 'FKP' => 'Λίρα Νησιών Φώκλαντ',
+ 'FRF' => 'Φράγκο Γαλλίας',
+ 'GBP' => 'Λίρα Στερλίνα Βρετανίας',
+ 'GEK' => 'Κούπον Λάρι Γεωργίας',
+ 'GEL' => 'Λάρι Γεωργίας',
+ 'GHC' => 'Σέντι Γκάνας (1979–2007)',
+ 'GHS' => 'Σέντι Γκάνας',
+ 'GIP' => 'Λίρα Γιβραλτάρ',
+ 'GMD' => 'Νταλάσι Γκάμπιας',
+ 'GNF' => 'Φράγκο Γουινέας',
+ 'GNS' => 'Συλί Γουινέας',
+ 'GQE' => 'Εκγουέλε Ισημερινής Γουινέας',
+ 'GRD' => 'Δραχμή Ελλάδας',
+ 'GTQ' => 'Κουετσάλ Γουατεμάλας',
+ 'GWE' => 'Γκινέα Εσκούδο Πορτογαλίας',
+ 'GWP' => 'Πέσο Γουινέας-Μπισάου',
+ 'GYD' => 'Δολάριο Γουιάνας',
+ 'HKD' => 'Δολάριο Χονγκ Κονγκ',
+ 'HNL' => 'Λεμπίρα Ονδούρας',
+ 'HRD' => 'Δηνάριο Κροατίας',
+ 'HRK' => 'Κούνα Κροατίας',
+ 'HTG' => 'Γκουρντ Αϊτής',
+ 'HUF' => 'Φιορίνι Ουγγαρίας',
+ 'IDR' => 'Ρουπία Ινδονησίας',
+ 'IEP' => 'Λίρα Ιρλανδίας',
+ 'ILP' => 'Λίρα Ισραήλ',
+ 'ILR' => 'παλιό σεκέλ Ισραήλ',
+ 'ILS' => 'Νέο Σέκελ Ισραήλ',
+ 'INR' => 'Ρουπία Ινδίας',
+ 'IQD' => 'Δηνάριο Ιράκ',
+ 'IRR' => 'Ριάλ Ιράν',
+ 'ISJ' => 'Παλιά κορόνα Ισλανδίας',
+ 'ISK' => 'Κορόνα Ισλανδίας',
+ 'ITL' => 'Λιρέτα Ιταλίας',
+ 'JMD' => 'Δολάριο Τζαμάικας',
+ 'JOD' => 'Δηνάριο Ιορδανίας',
+ 'JPY' => 'Γιεν Ιαπωνίας',
+ 'KES' => 'Σελίνι Κένυας',
+ 'KGS' => 'Σομ Κιργιζίας',
+ 'KHR' => 'Ρίελ Καμπότζης',
+ 'KMF' => 'Φράγκο Κομορών',
+ 'KPW' => 'Γουόν Βόρειας Κορέας',
+ 'KRO' => 'Παλιό γον Νότιας Κορέας',
+ 'KRW' => 'Γουόν Νότιας Κορέας',
+ 'KWD' => 'Δηνάριο Κουβέιτ',
+ 'KYD' => 'Δολάριο Νήσων Κάιμαν',
+ 'KZT' => 'Τένγκε Καζακστάν',
+ 'LAK' => 'Κιπ Λάος',
+ 'LBP' => 'Λίρα Λιβάνου',
+ 'LKR' => 'Ρουπία Σρι Λάνκα',
+ 'LRD' => 'Δολάριο Λιβερίας',
+ 'LSL' => 'Λότι Λεσότο',
+ 'LTL' => 'Λίτα Λιθουανίας',
+ 'LTT' => 'Ταλόνας Λιθουανίας',
+ 'LUC' => 'Μετατρέψιμο Φράγκο Λουξεμβούργου',
+ 'LUF' => 'Φράγκο Λουξεμβούργου',
+ 'LUL' => 'Οικονομικό Φράγκο Λουξεμβούργου',
+ 'LVL' => 'Λατς Λετονίας',
+ 'LVR' => 'Ρούβλι Λετονίας',
+ 'LYD' => 'Δηνάριο Λιβύης',
+ 'MAD' => 'Ντιράμ Μαρόκου',
+ 'MAF' => 'Φράγκο Μαρόκου',
+ 'MCF' => 'Φράγκο Μονακό',
+ 'MDC' => 'Κούπον Μολδαβίας',
+ 'MDL' => 'Λέου Μολδαβίας',
+ 'MGA' => 'Αριάρι Μαδαγασκάρης',
+ 'MGF' => 'Φράγκο Μαδαγασκάρης',
+ 'MKD' => 'Δηνάριο Π.Γ.Δ.Μ.',
+ 'MKN' => 'Παλιό δηνάριο ΠΓΔΜ',
+ 'MLF' => 'Φράγκο Μαλί',
+ 'MMK' => 'Κυάτ Μιανμάρ',
+ 'MNT' => 'Τουγκρίκ Μογγολίας',
+ 'MOP' => 'Πατάκα Μακάο',
+ 'MRO' => 'Ουγκίγια Μαυριτανίας',
+ 'MTL' => 'Λιρέτα Μάλτας',
+ 'MTP' => 'Λίρα Μάλτας',
+ 'MUR' => 'Ρουπία Μαυρικίου',
+ 'MVR' => 'Ρουφίγια Μαλδίβων',
+ 'MWK' => 'Κουάτσα Μαλάουι',
+ 'MXN' => 'Πέσο Μεξικού',
+ 'MXP' => 'Ασημένιο Πέσο Μεξικού (1861–1992)',
+ 'MYR' => 'Ρινγκίτ Μαλαισίας',
+ 'MZE' => 'Εσκούδο Μοζαμβίκης',
+ 'MZM' => 'Παλαιό Μετικάλ Μοζαμβίκης',
+ 'MZN' => 'Μετικάλ Μοζαμβίκης',
+ 'NAD' => 'Δολάριο Ναμίμπια',
+ 'NGN' => 'Νάιρα Νιγηρίας',
+ 'NIC' => 'Κόρδοβα Νικαράγουας',
+ 'NIO' => 'Χρυσή Κόρδοβα Νικαράγουας',
+ 'NLG' => 'Γκίλντα Ολλανδίας',
+ 'NOK' => 'Κορόνα Νορβηγίας',
+ 'NPR' => 'Ρουπία Νεπάλ',
+ 'NZD' => 'Δολάριο Νέας Ζηλανδίας',
+ 'OMR' => 'Ριάλ Ομάν',
+ 'PAB' => 'Μπαλμπόα Παναμά',
+ 'PEI' => 'Ίντι Περού',
+ 'PEN' => 'Νέο Σολ Περού',
+ 'PES' => 'Σολ Περού',
+ 'PGK' => 'Κίνα Παπούα Νέα Γουινέα',
+ 'PHP' => 'Πέσο Φιλιππίνων',
+ 'PKR' => 'Ρουπία Πακιστάν',
+ 'PLN' => 'Ζλότι Πολωνίας',
+ 'PLZ' => 'Ζλότυ Πολωνίας (1950–1995)',
+ 'PTE' => 'Εσκούδο Πορτογαλίας',
+ 'PYG' => 'Γκουαρανί Παραγουάης',
+ 'QAR' => 'Ριάλ Κατάρ',
+ 'RHD' => 'Δολάριο Ροδεσίας',
+ 'ROL' => 'Λέι Ρουμανίας',
+ 'RON' => 'Λέου Ρουμανίας',
+ 'RSD' => 'Δηνάριο Σερβίας',
+ 'RUB' => 'Ρούβλι Ρωσίας',
+ 'RUR' => 'Ρούβλι Ρωσίας (1991–1998)',
+ 'RWF' => 'Φράγκο Ρουάντας',
+ 'SAR' => 'Ριάλ Σαουδικής Αραβίας',
+ 'SBD' => 'Δολάριο Νήσων Σολομώντος',
+ 'SCR' => 'Ρουπία Σεϋχελλών',
+ 'SDD' => 'Δηνάριο Σουδάν',
+ 'SDG' => 'Λίρα Σουδάν',
+ 'SDP' => 'Παλαιά Λίρα Σουδάν',
+ 'SEK' => 'Κορόνα Σουηδίας',
+ 'SGD' => 'Δολάριο Σιγκαπούρης',
+ 'SHP' => 'Λίρα Αγίας Ελένης',
+ 'SIT' => 'Τόλαρ Σλοβενίας',
+ 'SKK' => 'Κορόνα Σλοβενίας',
+ 'SLL' => 'Λεόνε Σιέρα Λεόνε',
+ 'SOS' => 'Σελίνι Σομαλίας',
+ 'SRD' => 'Δολάριο Σουρινάμ',
+ 'SRG' => 'Γκίλντα Σουρινάμ',
+ 'SSP' => 'Λίρα Νότιου Σουδάν',
+ 'STD' => 'Ντόμπρα Σάο Τομέ και Πρίνσιπε',
+ 'SUR' => 'Σοβιετικό Ρούβλι',
+ 'SVC' => 'Κολόν Ελ Σαλβαδόρ',
+ 'SYP' => 'Λίρα Συρίας',
+ 'SZL' => 'Λιλανγκένι Σουαζιλάνδης',
+ 'THB' => 'Μπατ Ταϊλάνδης',
+ 'TJR' => 'Ρούβλι Τατζικιστάν',
+ 'TJS' => 'Σομόνι Τατζικιστάν',
+ 'TMM' => 'Μανάτ Τουρκμενιστάν',
+ 'TMT' => 'Μάνατ Τουρκμενιστάν',
+ 'TND' => 'Δηνάριο Τυνησίας',
+ 'TOP' => 'Παάγκα νήσων Τόγκα',
+ 'TPE' => 'Εσκούδο Τιμόρ',
+ 'TRL' => 'Παλιά Λίρα Τουρκίας',
+ 'TRY' => 'Τουρκική Λίρα',
+ 'TTD' => 'Δολάριο Τρινιντάντ και Τομπάγκο',
+ 'TWD' => 'Νέο δολάριο Ταϊβάν',
+ 'TZS' => 'Σελίνι Τανζανίας',
+ 'UAH' => 'Γρίβνα Ουκρανίας',
+ 'UAK' => 'Καρμποβανέτς Ουκρανίας',
+ 'UGS' => 'Σελίνι Ουγκάντας (1966–1987)',
+ 'UGX' => 'Σελίνι Ουγκάντας',
+ 'USD' => 'Δολάριο ΗΠΑ',
+ 'USN' => 'Δολάριο ΗΠΑ (επόμενη ημέρα)',
+ 'USS' => 'Δολάριο ΗΠΑ (ίδια ημέρα)',
+ 'UYP' => 'Πέσο Ουρουγουάης (1975–1993)',
+ 'UYU' => 'Πέσο Ουρουγουάης',
+ 'UZS' => 'Σομ Ουζμπεκιστάν',
+ 'VEB' => 'Μπολιβάρ Βενεζουέλας (1871–2008)',
+ 'VEF' => 'Μπολιβάρ Βενεζουέλας',
+ 'VND' => 'Ντονγκ Βιετνάμ',
+ 'VNN' => 'Παλαιό ντονγκ Βιετνάμ',
+ 'VUV' => 'Βατού Βανουάτου',
+ 'WST' => 'Τάλα Σαμόα',
+ 'XAF' => 'Φράγκο CFA Κεντρικής Αφρικής (BEAC)',
+ 'XBA' => 'Ευρωπαϊκή Σύνθετη Μονάδα',
+ 'XBB' => 'Ευρωπαϊκή Νομισματική Μονάδα',
+ 'XBC' => 'Ευρωπαϊκή μονάδα λογαριασμού (XBC)',
+ 'XBD' => 'Ευρωπαϊκή μονάδα λογαριασμού (XBD)',
+ 'XCD' => 'Δολάριο Ανατολικής Καραϊβικής',
+ 'XDR' => 'Ειδικά Δικαιώματα Ανάληψης',
+ 'XEU' => 'Ευρωπαϊκή Συναλλαγματική Μονάδα',
+ 'XFO' => 'Χρυσό Φράγκο Γαλλίας',
+ 'XFU' => 'UIC-Φράγκο Γαλλίας',
+ 'XOF' => 'Φράγκο CFA Δυτικής Αφρικής (BCEAO)',
+ 'XPF' => 'Φράγκο CFP',
+ 'XRE' => 'Ταμείο RINET',
+ 'XXX' => 'Άγνωστο νόμισμα',
+ 'YDD' => 'Δηνάριο Υεμένης',
+ 'YER' => 'Ριάλ Υεμένης',
+ 'YUD' => 'Μεταλλικό Δηνάριο Γιουγκοσλαβίας',
+ 'YUM' => 'Νέο Δηνάριο Γιουγκοσλαβίας',
+ 'YUN' => 'Μετατρέψιμο Δηνάριο Γιουγκοσλαβίας',
+ 'YUR' => 'Αναμορφωμένο δηνάριο Γιουγκοσλαβίας',
+ 'ZAL' => 'Ραντ Νότιας Αφρικής (οικονομικό)',
+ 'ZAR' => 'Ραντ Νότιας Αφρικής',
+ 'ZMK' => 'Κουάνζα Ζαΐρ (1968–2012)',
+ 'ZMW' => 'Κουάτσα Ζάμπιας',
+ 'ZRN' => 'Νέο Ζαΐρ Ζαΐρ',
+ 'ZRZ' => 'Ζαΐρ Ζαΐρ',
+ 'ZWD' => 'Δολάριο Ζιμπάμπουε',
+ 'ZWL' => 'Δολάριο Ζιμπάμπουε (2009)',
+ 'ZWR' => 'Δολάριο Ζιμπάμπουε (2008)',
+);
+
+$currencySymbols = array(
+ 'AED' => 'AED',
+ 'AFN' => 'AFN',
+ 'ALL' => 'ALL',
+ 'AMD' => 'AMD',
+ 'ANG' => 'ANG',
+ 'AOA' => 'AOA',
+ 'ARS' => 'ARS',
+ 'AUD' => 'A$',
+ 'AWG' => 'AWG',
+ 'AZN' => 'AZN',
+ 'BAM' => 'BAM',
+ 'BBD' => 'BBD',
+ 'BDT' => 'BDT',
+ 'BGN' => 'BGN',
+ 'BHD' => 'BHD',
+ 'BIF' => 'BIF',
+ 'BMD' => 'BMD',
+ 'BND' => 'BND',
+ 'BOB' => 'BOB',
+ 'BRL' => 'R$',
+ 'BSD' => 'BSD',
+ 'BTN' => 'BTN',
+ 'BWP' => 'BWP',
+ 'BYR' => 'BYR',
+ 'BZD' => 'BZD',
+ 'CAD' => 'CA$',
+ 'CDF' => 'CDF',
+ 'CHF' => 'CHF',
+ 'CLP' => 'CLP',
+ 'CNY' => 'CN¥',
+ 'COP' => 'COP',
+ 'CRC' => 'CRC',
+ 'CUC' => 'CUC',
+ 'CUP' => 'CUP',
+ 'CVE' => 'CVE',
+ 'CZK' => 'CZK',
+ 'DJF' => 'DJF',
+ 'DKK' => 'DKK',
+ 'DOP' => 'DOP',
+ 'DZD' => 'DZD',
+ 'EGP' => 'EGP',
+ 'ERN' => 'ERN',
+ 'ETB' => 'ETB',
+ 'EUR' => '€',
+ 'FJD' => 'FJD',
+ 'FKP' => 'FKP',
+ 'GBP' => '£',
+ 'GEL' => 'GEL',
+ 'GHS' => 'GHS',
+ 'GIP' => 'GIP',
+ 'GMD' => 'GMD',
+ 'GNF' => 'GNF',
+ 'GRD' => 'Δρχ',
+ 'GTQ' => 'GTQ',
+ 'GYD' => 'GYD',
+ 'HKD' => 'HK$',
+ 'HNL' => 'HNL',
+ 'HRK' => 'HRK',
+ 'HTG' => 'HTG',
+ 'HUF' => 'HUF',
+ 'IDR' => 'IDR',
+ 'ILS' => '₪',
+ 'INR' => '₹',
+ 'IQD' => 'IQD',
+ 'IRR' => 'IRR',
+ 'ISK' => 'ISK',
+ 'JMD' => 'JMD',
+ 'JOD' => 'JOD',
+ 'JPY' => 'JP¥',
+ 'KES' => 'KES',
+ 'KGS' => 'KGS',
+ 'KHR' => 'KHR',
+ 'KMF' => 'KMF',
+ 'KPW' => 'KPW',
+ 'KRW' => '₩',
+ 'KWD' => 'KWD',
+ 'KYD' => 'KYD',
+ 'KZT' => 'KZT',
+ 'LAK' => 'LAK',
+ 'LBP' => 'LBP',
+ 'LKR' => 'LKR',
+ 'LRD' => 'LRD',
+ 'LTL' => 'LTL',
+ 'LVL' => 'LVL',
+ 'LYD' => 'LYD',
+ 'MAD' => 'MAD',
+ 'MDL' => 'MDL',
+ 'MGA' => 'MGA',
+ 'MKD' => 'MKD',
+ 'MMK' => 'MMK',
+ 'MNT' => 'MNT',
+ 'MOP' => 'MOP',
+ 'MRO' => 'MRO',
+ 'MUR' => 'MUR',
+ 'MVR' => 'MVR',
+ 'MWK' => 'MWK',
+ 'MXN' => 'MX$',
+ 'MYR' => 'MYR',
+ 'MZN' => 'MZN',
+ 'NAD' => 'NAD',
+ 'NGN' => 'NGN',
+ 'NIO' => 'NIO',
+ 'NOK' => 'NOK',
+ 'NPR' => 'NPR',
+ 'NZD' => 'NZ$',
+ 'OMR' => 'OMR',
+ 'PAB' => 'PAB',
+ 'PEN' => 'PEN',
+ 'PGK' => 'PGK',
+ 'PHP' => 'PHP',
+ 'PKR' => 'PKR',
+ 'PLN' => 'PLN',
+ 'PYG' => 'PYG',
+ 'QAR' => 'QAR',
+ 'RON' => 'RON',
+ 'RSD' => 'RSD',
+ 'RUB' => 'RUB',
+ 'RWF' => 'RWF',
+ 'SAR' => 'SAR',
+ 'SBD' => 'SBD',
+ 'SCR' => 'SCR',
+ 'SDG' => 'SDG',
+ 'SEK' => 'SEK',
+ 'SGD' => 'SGD',
+ 'SHP' => 'SHP',
+ 'SLL' => 'SLL',
+ 'SOS' => 'SOS',
+ 'SRD' => 'SRD',
+ 'SSP' => 'SSP',
+ 'STD' => 'STD',
+ 'SYP' => 'SYP',
+ 'SZL' => 'SZL',
+ 'THB' => '฿',
+ 'TJS' => 'TJS',
+ 'TMT' => 'TMT',
+ 'TND' => 'TND',
+ 'TOP' => 'TOP',
+ 'TPE' => 'TPE',
+ 'TRY' => 'TRY',
+ 'TTD' => 'TTD',
+ 'TWD' => 'NT$',
+ 'TZS' => 'TZS',
+ 'UAH' => 'UAH',
+ 'UGX' => 'UGX',
+ 'USD' => '$',
+ 'UYU' => 'UYU',
+ 'UZS' => 'UZS',
+ 'VEF' => 'VEF',
+ 'VND' => '₫',
+ 'VUV' => 'VUV',
+ 'WST' => 'WST',
+ 'XAF' => 'FCFA',
+ 'XCD' => 'EC$',
+ 'XOF' => 'CFA',
+ 'XPF' => 'CFPF',
+ 'YER' => 'YER',
+ 'ZAR' => 'ZAR',
+ 'ZMW' => 'ZMW',
+);
+
+$countryNames = array(
+ 'AC' => 'Νήσος Ασενσιόν',
+ 'AD' => 'Ανδόρα',
+ 'AE' => 'Ηνωμένα Αραβικά Εμιράτα',
+ 'AF' => 'Αφγανιστάν',
+ 'AG' => 'Αντίγκουα και Μπαρμπούντα',
+ 'AI' => 'Ανγκουίλα',
+ 'AL' => 'Αλβανία',
+ 'AM' => 'Αρμενία',
+ 'AN' => 'Ολλανδικές Αντίλλες',
+ 'AO' => 'Ανγκόλα',
+ 'AQ' => 'Ανταρκτική',
+ 'AR' => 'Αργεντινή',
+ 'AS' => 'Αμερικανική Σαμόα',
+ 'AT' => 'Αυστρία',
+ 'AU' => 'Αυστραλία',
+ 'AW' => 'Αρούμπα',
+ 'AX' => 'Νήσοι Όλαντ',
+ 'AZ' => 'Αζερμπαϊτζάν',
+ 'BA' => 'Βοσνία - Ερζεγοβίνη',
+ 'BB' => 'Μπαρμπάντος',
+ 'BD' => 'Μπανγκλαντές',
+ 'BE' => 'Βέλγιο',
+ 'BF' => 'Μπουρκίνα Φάσο',
+ 'BG' => 'Βουλγαρία',
+ 'BH' => 'Μπαχρέιν',
+ 'BI' => 'Μπουρούντι',
+ 'BJ' => 'Μπενίν',
+ 'BL' => 'Άγιος Βαρθολομαίος',
+ 'BM' => 'Βερμούδες',
+ 'BN' => 'Μπρουνέι',
+ 'BO' => 'Βολιβία',
+ 'BQ' => 'Ολλανδία Καραϊβικής',
+ 'BR' => 'Βραζιλία',
+ 'BS' => 'Μπαχάμες',
+ 'BT' => 'Μπουτάν',
+ 'BV' => 'Νήσος Μπουβέ',
+ 'BW' => 'Μποτσουάνα',
+ 'BY' => 'Λευκορωσία',
+ 'BZ' => 'Μπελίζ',
+ 'CA' => 'Καναδάς',
+ 'CC' => 'Νήσοι Κόκος (Κίλινγκ)',
+ 'CD' => 'Κονγκό - Κινσάσα',
+ 'CF' => 'Κεντροαφρικανική Δημοκρατία',
+ 'CG' => 'Κονγκό - Μπραζαβίλ',
+ 'CH' => 'Ελβετία',
+ 'CI' => 'Ακτή Ελεφαντοστού',
+ 'CK' => 'Νήσοι Κουκ',
+ 'CL' => 'Χιλή',
+ 'CM' => 'Καμερούν',
+ 'CN' => 'Κίνα',
+ 'CO' => 'Κολομβία',
+ 'CP' => 'Νήσος Κλίπερτον',
+ 'CR' => 'Κόστα Ρίκα',
+ 'CU' => 'Κούβα',
+ 'CV' => 'Πράσινο Ακρωτήριο',
+ 'CW' => 'Κουρασάο',
+ 'CX' => 'Νήσος των Χριστουγέννων',
+ 'CY' => 'Κύπρος',
+ 'CZ' => 'Τσεχική Δημοκρατία',
+ 'DE' => 'Γερμανία',
+ 'DG' => 'Ντιέγκο Γκαρσία',
+ 'DJ' => 'Τζιμπουτί',
+ 'DK' => 'Δανία',
+ 'DM' => 'Ντομίνικα',
+ 'DO' => 'Δομινικανή Δημοκρατία',
+ 'DZ' => 'Αλγερία',
+ 'EA' => 'Θεούτα και Μελίλα',
+ 'EC' => 'Εκουαδόρ',
+ 'EE' => 'Εσθονία',
+ 'EG' => 'Αίγυπτος',
+ 'EH' => 'Δυτική Σαχάρα',
+ 'ER' => 'Ερυθραία',
+ 'ES' => 'Ισπανία',
+ 'ET' => 'Αιθιοπία',
+ 'EU' => 'Ευρωπαϊκή Ένωση',
+ 'FI' => 'Φινλανδία',
+ 'FJ' => 'Φίτζι',
+ 'FK' => 'Νήσοι Φόκλαντ',
+ 'FM' => 'Μικρονησία',
+ 'FO' => 'Νήσοι Φερόες',
+ 'FR' => 'Γαλλία',
+ 'GA' => 'Γκαμπόν',
+ 'GB' => 'Η.Β.',
+ 'GD' => 'Γρενάδα',
+ 'GE' => 'Γεωργία',
+ 'GF' => 'Γαλλική Γουιάνα',
+ 'GG' => 'Γκέρνζι',
+ 'GH' => 'Γκάνα',
+ 'GI' => 'Γιβραλτάρ',
+ 'GL' => 'Γροιλανδία',
+ 'GM' => 'Γκάμπια',
+ 'GN' => 'Γουινέα',
+ 'GP' => 'Γουαδελούπη',
+ 'GQ' => 'Ισημερινή Γουινέα',
+ 'GR' => 'Ελλάδα',
+ 'GS' => 'Νήσοι Νότια Γεωργία και Νότιες Σάντουιτς',
+ 'GT' => 'Γουατεμάλα',
+ 'GU' => 'Γκουάμ',
+ 'GW' => 'Γουινέα Μπισάου',
+ 'GY' => 'Γουιάνα',
+ 'HK' => 'Χονγκ Κονγκ',
+ 'HM' => 'Νήσοι Χερντ και Μακντόναλντ',
+ 'HN' => 'Ονδούρα',
+ 'HR' => 'Κροατία',
+ 'HT' => 'Αϊτή',
+ 'HU' => 'Ουγγαρία',
+ 'IC' => 'Κανάριοι Νήσοι',
+ 'ID' => 'Ινδονησία',
+ 'IE' => 'Ιρλανδία',
+ 'IL' => 'Ισραήλ',
+ 'IM' => 'Νήσος Μαν',
+ 'IN' => 'Ινδία',
+ 'IO' => 'Βρετανικά Εδάφη Ινδικού Ωκεανού',
+ 'IQ' => 'Ιράκ',
+ 'IR' => 'Ιράν',
+ 'IS' => 'Ισλανδία',
+ 'IT' => 'Ιταλία',
+ 'JE' => 'Τζέρζι',
+ 'JM' => 'Τζαμάικα',
+ 'JO' => 'Ιορδανία',
+ 'JP' => 'Ιαπωνία',
+ 'KE' => 'Κένυα',
+ 'KG' => 'Κιργιστάν',
+ 'KH' => 'Καμπότζη',
+ 'KI' => 'Κιριμπάτι',
+ 'KM' => 'Κομόρες',
+ 'KN' => 'Άγιος Χριστόφορος και Νέβις',
+ 'KP' => 'Βόρεια Κορέα',
+ 'KR' => 'Νότια Κορέα',
+ 'KW' => 'Κουβέιτ',
+ 'KY' => 'Νήσοι Κάιμαν',
+ 'KZ' => 'Καζακστάν',
+ 'LA' => 'Λάος',
+ 'LB' => 'Λίβανος',
+ 'LC' => 'Αγία Λουκία',
+ 'LI' => 'Λιχτενστάιν',
+ 'LK' => 'Σρι Λάνκα',
+ 'LR' => 'Λιβερία',
+ 'LS' => 'Λεσότο',
+ 'LT' => 'Λιθουανία',
+ 'LU' => 'Λουξεμβούργο',
+ 'LV' => 'Λετονία',
+ 'LY' => 'Λιβύη',
+ 'MA' => 'Μαρόκο',
+ 'MC' => 'Μονακό',
+ 'MD' => 'Μολδαβία',
+ 'ME' => 'Μαυροβούνιο',
+ 'MF' => 'Άγιος Μαρτίνος (Γαλλικό τμήμα)',
+ 'MG' => 'Μαδαγασκάρη',
+ 'MH' => 'Νήσοι Μάρσαλ',
+ 'MK' => 'Πρώην Γιουγκοσλαβική Δημοκρατία της Μακεδονίας',
+ 'ML' => 'Μάλι',
+ 'MM' => 'Μιανμάρ/Βιρμανία',
+ 'MN' => 'Μογγολία',
+ 'MO' => 'Μακάο',
+ 'MP' => 'Νήσοι Βόρειες Μαριάνες',
+ 'MQ' => 'Μαρτινίκα',
+ 'MR' => 'Μαυριτανία',
+ 'MS' => 'Μονσεράτ',
+ 'MT' => 'Μάλτα',
+ 'MU' => 'Μαυρίκιος',
+ 'MV' => 'Μαλδίβες',
+ 'MW' => 'Μαλάουι',
+ 'MX' => 'Μεξικό',
+ 'MY' => 'Μαλαισία',
+ 'MZ' => 'Μοζαμβίκη',
+ 'NA' => 'Ναμίμπια',
+ 'NC' => 'Νέα Καληδονία',
+ 'NE' => 'Νίγηρας',
+ 'NF' => 'Νήσος Νόρφολκ',
+ 'NG' => 'Νιγηρία',
+ 'NI' => 'Νικαράγουα',
+ 'NL' => 'Ολλανδία',
+ 'NO' => 'Νορβηγία',
+ 'NP' => 'Νεπάλ',
+ 'NR' => 'Ναουρού',
+ 'NU' => 'Νιούε',
+ 'NZ' => 'Νέα Ζηλανδία',
+ 'OM' => 'Ομάν',
+ 'PA' => 'Παναμάς',
+ 'PE' => 'Περού',
+ 'PF' => 'Γαλλική Πολυνησία',
+ 'PG' => 'Παπούα Νέα Γουινέα',
+ 'PH' => 'Φιλιππίνες',
+ 'PK' => 'Πακιστάν',
+ 'PL' => 'Πολωνία',
+ 'PM' => 'Σεν Πιερ και Μικελόν',
+ 'PN' => 'Νήσοι Πίτκερν',
+ 'PR' => 'Πουέρτο Ρίκο',
+ 'PS' => 'Παλαιστίνη',
+ 'PT' => 'Πορτογαλία',
+ 'PW' => 'Παλάου',
+ 'PY' => 'Παραγουάη',
+ 'QA' => 'Κατάρ',
+ 'QO' => 'Περιφερειακή Ωκεανία',
+ 'RE' => 'Ρεϊνιόν',
+ 'RO' => 'Ρουμανία',
+ 'RS' => 'Σερβία',
+ 'RU' => 'Ρωσία',
+ 'RW' => 'Ρουάντα',
+ 'SA' => 'Σαουδική Αραβία',
+ 'SB' => 'Νήσοι Σολομώντος',
+ 'SC' => 'Σεϋχέλλες',
+ 'SD' => 'Σουδάν',
+ 'SE' => 'Σουηδία',
+ 'SG' => 'Σιγκαπούρη',
+ 'SH' => 'Αγία Ελένη',
+ 'SI' => 'Σλοβενία',
+ 'SJ' => 'Σβάλμπαρντ και Γιαν Μαγιέν',
+ 'SK' => 'Σλοβακία',
+ 'SL' => 'Σιέρα Λεόνε',
+ 'SM' => 'Άγιος Μαρίνος',
+ 'SN' => 'Σενεγάλη',
+ 'SO' => 'Σομαλία',
+ 'SR' => 'Σουρινάμ',
+ 'SS' => 'Νότιο Σουδάν',
+ 'ST' => 'Σάο Τομέ και Πρίνσιπε',
+ 'SV' => 'Ελ Σαλβαδόρ',
+ 'SX' => 'Άγιος Μαρτίνος (Ολλανδικό τμήμα)',
+ 'SY' => 'Συρία',
+ 'SZ' => 'Σουαζιλάνδη',
+ 'TA' => 'Τριστάν ντα Κούνια',
+ 'TC' => 'Νήσοι Τερκ και Κάικος',
+ 'TD' => 'Τσαντ',
+ 'TF' => 'Γαλλικές περιοχές του νοτίου ημισφαιρίου',
+ 'TG' => 'Τόγκο',
+ 'TH' => 'Ταϊλάνδη',
+ 'TJ' => 'Τατζικιστάν',
+ 'TK' => 'Τοκελάου',
+ 'TL' => 'Τιμόρ-Λέστε',
+ 'TM' => 'Τουρκμενιστάν',
+ 'TN' => 'Τυνησία',
+ 'TO' => 'Τόνγκα',
+ 'TR' => 'Τουρκία',
+ 'TT' => 'Τρινιντάντ και Τομπάγκο',
+ 'TV' => 'Τουβαλού',
+ 'TW' => 'Ταϊβάν',
+ 'TZ' => 'Τανζανία',
+ 'UA' => 'Ουκρανία',
+ 'UG' => 'Ουγκάντα',
+ 'UM' => 'Απομακρυσμένες Νησίδες Η.Π.Α.',
+ 'US' => 'ΗΠΑ',
+ 'UY' => 'Ουρουγουάη',
+ 'UZ' => 'Ουζμπεκιστάν',
+ 'VA' => 'Βατικανό',
+ 'VC' => 'Άγιος Βικέντιος και Γρεναδίνες',
+ 'VE' => 'Βενεζουέλα',
+ 'VG' => 'Βρετανικές Παρθένοι Νήσοι',
+ 'VI' => 'Αμερικανικές Παρθένοι Νήσοι',
+ 'VN' => 'Βιετνάμ',
+ 'VU' => 'Βανουάτου',
+ 'WF' => 'Ουάλις και Φουτούνα',
+ 'WS' => 'Σαμόα',
+ 'XK' => 'Κόσοβο',
+ 'YE' => 'Υεμένη',
+ 'YT' => 'Μαγιότ',
+ 'ZA' => 'Νότια Αφρική',
+ 'ZM' => 'Ζάμπια',
+ 'ZW' => 'Ζιμπάμπουε',
+);
+
+$timeUnits = array(
+ 'day-future-one' => 'σε {0} ημέρα',
+ 'day-future-other' => 'σε {0} ημέρες',
+ 'day-narrow-future-one' => 'σε {0} ημέρα',
+ 'day-narrow-future-other' => 'σε {0} ημέρες',
+ 'day-narrow-past-one' => 'πριν από {0} ημέρα',
+ 'day-narrow-past-other' => 'πριν από {0} ημέρες',
+ 'day-one' => '{0} ημέρα',
+ 'day-other' => '{0} ημέρες',
+ 'day-past-one' => 'πριν από {0} ημέρα',
+ 'day-past-other' => 'πριν από {0} ημέρες',
+ 'day-short-future-one' => 'σε {0} ημέρα',
+ 'day-short-future-other' => 'σε {0} ημέρες',
+ 'day-short-past-one' => 'πριν από {0} ημέρα',
+ 'day-short-past-other' => 'πριν από {0} ημέρες',
+ 'hour-future-one' => 'σε {0} ώρα',
+ 'hour-future-other' => 'σε {0} ώρες',
+ 'hour-narrow-future-one' => '+{0} ώ',
+ 'hour-narrow-future-other' => '+{0} ώ',
+ 'hour-narrow-past-one' => '-{0} ώ',
+ 'hour-narrow-past-other' => '-{0} ώ',
+ 'hour-one' => '{0} ώρα',
+ 'hour-other' => '{0} ώρες',
+ 'hour-past-one' => 'πριν από {0} ώρα',
+ 'hour-past-other' => 'πριν από {0} ώρες',
+ 'hour-short-future-one' => 'σε {0} ώρα',
+ 'hour-short-future-other' => 'σε {0} ώρ.',
+ 'hour-short-past-one' => 'πριν από {0} ώρα',
+ 'hour-short-past-other' => 'πριν από {0} ώρ.',
+ 'microsecond-one' => '{0} μικροδευτερόλεπτο',
+ 'microsecond-other' => '{0} μικροδευτερόλεπτα',
+ 'millisecond-one' => '{0} χιλιοστό του δευτερολέπτου',
+ 'millisecond-other' => '{0} χιλιοστά του δευτερολέπτου',
+ 'minute-future-one' => 'σε {0} λεπτό',
+ 'minute-future-other' => 'σε {0} λεπτά',
+ 'minute-narrow-future-one' => '+{0} λ',
+ 'minute-narrow-future-other' => '+{0} λ',
+ 'minute-narrow-past-one' => '-{0} λ',
+ 'minute-narrow-past-other' => '-{0} λ',
+ 'minute-one' => '{0} λεπτό',
+ 'minute-other' => '{0} λεπτά',
+ 'minute-past-one' => 'πριν από {0} λεπτό',
+ 'minute-past-other' => 'πριν από {0} λεπτά',
+ 'minute-short-future-one' => 'σε {0} λεπ.',
+ 'minute-short-future-other' => 'σε {0} λεπ.',
+ 'minute-short-past-one' => 'πριν από {0} λεπ.',
+ 'minute-short-past-other' => 'πριν από {0} λεπ.',
+ 'month-future-one' => 'σε {0} μήνα',
+ 'month-future-other' => 'σε {0} μήνες',
+ 'month-narrow-future-one' => '+{0} μήν.',
+ 'month-narrow-future-other' => '+{0} μήν.',
+ 'month-narrow-past-one' => '-{0} μήν.',
+ 'month-narrow-past-other' => '-{0} μήν.',
+ 'month-one' => '{0} μήνας',
+ 'month-other' => '{0} μήνες',
+ 'month-past-one' => 'πριν από {0} μήνα',
+ 'month-past-other' => 'πριν από {0} μήνες',
+ 'month-short-future-one' => 'σε {0} μήν.',
+ 'month-short-future-other' => 'σε {0} μήν.',
+ 'month-short-past-one' => 'πριν από {0} μήν.',
+ 'month-short-past-other' => 'πριν από {0} μήν.',
+ 'nanosecond-one' => '{0} νανοδευτερόλεπτο',
+ 'nanosecond-other' => '{0} νανοδευτερόλεπτα',
+ 'quarter-future-one' => 'σε {0} τρίμηνο',
+ 'quarter-future-other' => 'σε {0} τρίμηνα',
+ 'quarter-narrow-future-one' => '+{0} Τ',
+ 'quarter-narrow-future-other' => '+{0} Τ',
+ 'quarter-narrow-past-one' => '-{0} Τ',
+ 'quarter-narrow-past-other' => '-{0} Τ',
+ 'quarter-past-one' => 'πριν από {0} τρίμηνο',
+ 'quarter-past-other' => 'πριν από {0} τρίμηνα',
+ 'quarter-short-future-one' => 'σε {0} τρίμ.',
+ 'quarter-short-future-other' => 'σε {0} τρίμ.',
+ 'quarter-short-past-one' => 'πριν από {0} τρίμ.',
+ 'quarter-short-past-other' => 'πριν από {0} τρίμ.',
+ 'second-future-one' => 'σε {0} δευτερόλεπτο',
+ 'second-future-other' => 'σε {0} δευτερόλεπτα',
+ 'second-narrow-future-one' => '+{0} δ',
+ 'second-narrow-future-other' => '+{0} δ',
+ 'second-narrow-past-one' => '-{0} δ',
+ 'second-narrow-past-other' => '-{0} δ',
+ 'second-one' => '{0} δευτερόλεπτο',
+ 'second-other' => '{0} δευτερόλεπτα',
+ 'second-past-one' => 'πριν από {0} δευτερόλεπτο',
+ 'second-past-other' => 'πριν από {0} δευτερόλεπτα',
+ 'second-short-future-one' => 'σε {0} δευτ.',
+ 'second-short-future-other' => 'σε {0} δευτ.',
+ 'second-short-past-one' => 'πριν από {0} δευτ.',
+ 'second-short-past-other' => 'πριν από {0} δευτ.',
+ 'week-future-one' => 'σε {0} εβδομάδα',
+ 'week-future-other' => 'σε {0} εβδομάδες',
+ 'week-narrow-future-one' => '+{0} εβδ.',
+ 'week-narrow-future-other' => '+{0} εβδ.',
+ 'week-narrow-past-one' => '-{0} εβδ.',
+ 'week-narrow-past-other' => '-{0} εβδ.',
+ 'week-one' => '{0} εβδομάδα',
+ 'week-other' => '{0} εβδομάδες',
+ 'week-past-one' => 'πριν από {0} εβδομάδα',
+ 'week-past-other' => 'πριν από {0} εβδομάδες',
+ 'week-short-future-one' => 'σε {0} εβδ.',
+ 'week-short-future-other' => 'σε {0} εβδ.',
+ 'week-short-past-one' => 'πριν από {0} εβδ.',
+ 'week-short-past-other' => 'πριν από {0} εβδ.',
+ 'year-future-one' => 'σε {0} έτος',
+ 'year-future-other' => 'σε {0} έτη',
+ 'year-narrow-future-one' => '+{0} έτος',
+ 'year-narrow-future-other' => '+{0} έτη',
+ 'year-narrow-past-one' => '-{0} έτος',
+ 'year-narrow-past-other' => '-{0} έτη',
+ 'year-one' => '{0} έτος',
+ 'year-other' => '{0} έτη',
+ 'year-past-one' => 'πριν από {0} έτος',
+ 'year-past-other' => 'πριν από {0} έτη',
+ 'year-short-future-one' => 'σε {0} έτος',
+ 'year-short-future-other' => 'σε {0} έτη',
+ 'year-short-past-one' => 'πριν από {0} έτος',
+ 'year-short-past-other' => 'πριν από {0} έτη',
+);
diff --git a/MLEB/cldr/CldrNames/CldrNamesEn.php b/MLEB/cldr/CldrNames/CldrNamesEn.php
new file mode 100644
index 00000000..f2da0a3b
--- /dev/null
+++ b/MLEB/cldr/CldrNames/CldrNamesEn.php
@@ -0,0 +1,1261 @@
+<?php
+
+$languageNames = array(
+ 'aa' => 'Afar',
+ 'ab' => 'Abkhazian',
+ 'ace' => 'Achinese',
+ 'ach' => 'Acoli',
+ 'ada' => 'Adangme',
+ 'ady' => 'Adyghe',
+ 'ae' => 'Avestan',
+ 'aeb' => 'Tunisian Arabic',
+ 'af' => 'Afrikaans',
+ 'afh' => 'Afrihili',
+ 'agq' => 'Aghem',
+ 'ain' => 'Ainu',
+ 'ak' => 'Akan',
+ 'akk' => 'Akkadian',
+ 'akz' => 'Alabama',
+ 'ale' => 'Aleut',
+ 'aln' => 'Gheg Albanian',
+ 'alt' => 'Southern Altai',
+ 'am' => 'Amharic',
+ 'an' => 'Aragonese',
+ 'ang' => 'Old English',
+ 'anp' => 'Angika',
+ 'ar' => 'Arabic',
+ 'ar-001' => 'Modern Standard Arabic',
+ 'arc' => 'Aramaic',
+ 'arn' => 'Mapuche',
+ 'aro' => 'Araona',
+ 'arp' => 'Arapaho',
+ 'arq' => 'Algerian Arabic',
+ 'arw' => 'Arawak',
+ 'ary' => 'Moroccan Arabic',
+ 'arz' => 'Egyptian Arabic',
+ 'as' => 'Assamese',
+ 'asa' => 'Asu',
+ 'ase' => 'American Sign Language',
+ 'ast' => 'Asturian',
+ 'av' => 'Avaric',
+ 'avk' => 'Kotava',
+ 'awa' => 'Awadhi',
+ 'ay' => 'Aymara',
+ 'az' => 'Azerbaijani',
+ 'azb' => 'South Azerbaijani',
+ 'ba' => 'Bashkir',
+ 'bal' => 'Baluchi',
+ 'ban' => 'Balinese',
+ 'bar' => 'Bavarian',
+ 'bas' => 'Basaa',
+ 'bax' => 'Bamun',
+ 'bbc' => 'Batak Toba',
+ 'bbj' => 'Ghomala',
+ 'be' => 'Belarusian',
+ 'bej' => 'Beja',
+ 'bem' => 'Bemba',
+ 'bew' => 'Betawi',
+ 'bez' => 'Bena',
+ 'bfd' => 'Bafut',
+ 'bfq' => 'Badaga',
+ 'bg' => 'Bulgarian',
+ 'bho' => 'Bhojpuri',
+ 'bi' => 'Bislama',
+ 'bik' => 'Bikol',
+ 'bin' => 'Bini',
+ 'bjn' => 'Banjar',
+ 'bkm' => 'Kom',
+ 'bla' => 'Siksika',
+ 'bm' => 'Bambara',
+ 'bn' => 'Bengali',
+ 'bo' => 'Tibetan',
+ 'bpy' => 'Bishnupriya',
+ 'bqi' => 'Bakhtiari',
+ 'br' => 'Breton',
+ 'bra' => 'Braj',
+ 'brh' => 'Brahui',
+ 'brx' => 'Bodo',
+ 'bs' => 'Bosnian',
+ 'bss' => 'Akoose',
+ 'bua' => 'Buriat',
+ 'bug' => 'Buginese',
+ 'bum' => 'Bulu',
+ 'byn' => 'Blin',
+ 'byv' => 'Medumba',
+ 'ca' => 'Catalan',
+ 'cad' => 'Caddo',
+ 'car' => 'Carib',
+ 'cay' => 'Cayuga',
+ 'cch' => 'Atsam',
+ 'ce' => 'Chechen',
+ 'ceb' => 'Cebuano',
+ 'cgg' => 'Chiga',
+ 'ch' => 'Chamorro',
+ 'chb' => 'Chibcha',
+ 'chg' => 'Chagatai',
+ 'chk' => 'Chuukese',
+ 'chm' => 'Mari',
+ 'chn' => 'Chinook Jargon',
+ 'cho' => 'Choctaw',
+ 'chp' => 'Chipewyan',
+ 'chr' => 'Cherokee',
+ 'chy' => 'Cheyenne',
+ 'ckb' => 'Sorani Kurdish',
+ 'co' => 'Corsican',
+ 'cop' => 'Coptic',
+ 'cps' => 'Capiznon',
+ 'cr' => 'Cree',
+ 'crh' => 'Crimean Turkish',
+ 'cs' => 'Czech',
+ 'csb' => 'Kashubian',
+ 'cu' => 'Church Slavic',
+ 'cv' => 'Chuvash',
+ 'cy' => 'Welsh',
+ 'da' => 'Danish',
+ 'dak' => 'Dakota',
+ 'dar' => 'Dargwa',
+ 'dav' => 'Taita',
+ 'de' => 'German',
+ 'de-at' => 'Austrian German',
+ 'de-ch' => 'Swiss High German',
+ 'del' => 'Delaware',
+ 'den' => 'Slave',
+ 'dgr' => 'Dogrib',
+ 'din' => 'Dinka',
+ 'dje' => 'Zarma',
+ 'doi' => 'Dogri',
+ 'dsb' => 'Lower Sorbian',
+ 'dtp' => 'Central Dusun',
+ 'dua' => 'Duala',
+ 'dum' => 'Middle Dutch',
+ 'dv' => 'Divehi',
+ 'dyo' => 'Jola-Fonyi',
+ 'dyu' => 'Dyula',
+ 'dz' => 'Dzongkha',
+ 'dzg' => 'Dazaga',
+ 'ebu' => 'Embu',
+ 'ee' => 'Ewe',
+ 'efi' => 'Efik',
+ 'egl' => 'Emilian',
+ 'egy' => 'Ancient Egyptian',
+ 'eka' => 'Ekajuk',
+ 'el' => 'Greek',
+ 'elx' => 'Elamite',
+ 'en' => 'English',
+ 'en-au' => 'Australian English',
+ 'en-ca' => 'Canadian English',
+ 'en-gb' => 'British English',
+ 'en-us' => 'American English',
+ 'enm' => 'Middle English',
+ 'eo' => 'Esperanto',
+ 'es' => 'Spanish',
+ 'es-419' => 'Latin American Spanish',
+ 'es-es' => 'European Spanish',
+ 'es-mx' => 'Mexican Spanish',
+ 'esu' => 'Central Yupik',
+ 'et' => 'Estonian',
+ 'eu' => 'Basque',
+ 'ewo' => 'Ewondo',
+ 'ext' => 'Extremaduran',
+ 'fa' => 'Persian',
+ 'fan' => 'Fang',
+ 'fat' => 'Fanti',
+ 'ff' => 'Fulah',
+ 'fi' => 'Finnish',
+ 'fil' => 'Filipino',
+ 'fit' => 'Tornedalen Finnish',
+ 'fj' => 'Fijian',
+ 'fo' => 'Faroese',
+ 'fon' => 'Fon',
+ 'fr' => 'French',
+ 'fr-ca' => 'Canadian French',
+ 'fr-ch' => 'Swiss French',
+ 'frc' => 'Cajun French',
+ 'frm' => 'Middle French',
+ 'fro' => 'Old French',
+ 'frp' => 'Arpitan',
+ 'frr' => 'Northern Frisian',
+ 'frs' => 'Eastern Frisian',
+ 'fur' => 'Friulian',
+ 'fy' => 'Western Frisian',
+ 'ga' => 'Irish',
+ 'gaa' => 'Ga',
+ 'gag' => 'Gagauz',
+ 'gan' => 'Gan Chinese',
+ 'gay' => 'Gayo',
+ 'gba' => 'Gbaya',
+ 'gbz' => 'Zoroastrian Dari',
+ 'gd' => 'Scottish Gaelic',
+ 'gez' => 'Geez',
+ 'gil' => 'Gilbertese',
+ 'gl' => 'Galician',
+ 'glk' => 'Gilaki',
+ 'gmh' => 'Middle High German',
+ 'gn' => 'Guarani',
+ 'goh' => 'Old High German',
+ 'gom' => 'Goan Konkani',
+ 'gon' => 'Gondi',
+ 'gor' => 'Gorontalo',
+ 'got' => 'Gothic',
+ 'grb' => 'Grebo',
+ 'grc' => 'Ancient Greek',
+ 'gsw' => 'Swiss German',
+ 'gu' => 'Gujarati',
+ 'guc' => 'Wayuu',
+ 'gur' => 'Frafra',
+ 'guz' => 'Gusii',
+ 'gv' => 'Manx',
+ 'gwi' => 'Gwichʼin',
+ 'ha' => 'Hausa',
+ 'hai' => 'Haida',
+ 'hak' => 'Hakka Chinese',
+ 'haw' => 'Hawaiian',
+ 'he' => 'Hebrew',
+ 'hi' => 'Hindi',
+ 'hif' => 'Fiji Hindi',
+ 'hil' => 'Hiligaynon',
+ 'hit' => 'Hittite',
+ 'hmn' => 'Hmong',
+ 'ho' => 'Hiri Motu',
+ 'hr' => 'Croatian',
+ 'hsb' => 'Upper Sorbian',
+ 'hsn' => 'Xiang Chinese',
+ 'ht' => 'Haitian',
+ 'hu' => 'Hungarian',
+ 'hup' => 'Hupa',
+ 'hy' => 'Armenian',
+ 'hz' => 'Herero',
+ 'ia' => 'Interlingua',
+ 'iba' => 'Iban',
+ 'ibb' => 'Ibibio',
+ 'id' => 'Indonesian',
+ 'ie' => 'Interlingue',
+ 'ig' => 'Igbo',
+ 'ii' => 'Sichuan Yi',
+ 'ik' => 'Inupiaq',
+ 'ilo' => 'Iloko',
+ 'inh' => 'Ingush',
+ 'io' => 'Ido',
+ 'is' => 'Icelandic',
+ 'it' => 'Italian',
+ 'iu' => 'Inuktitut',
+ 'izh' => 'Ingrian',
+ 'ja' => 'Japanese',
+ 'jam' => 'Jamaican Creole English',
+ 'jbo' => 'Lojban',
+ 'jgo' => 'Ngomba',
+ 'jmc' => 'Machame',
+ 'jpr' => 'Judeo-Persian',
+ 'jrb' => 'Judeo-Arabic',
+ 'jut' => 'Jutish',
+ 'jv' => 'Javanese',
+ 'ka' => 'Georgian',
+ 'kaa' => 'Kara-Kalpak',
+ 'kab' => 'Kabyle',
+ 'kac' => 'Kachin',
+ 'kaj' => 'Jju',
+ 'kam' => 'Kamba',
+ 'kaw' => 'Kawi',
+ 'kbd' => 'Kabardian',
+ 'kbl' => 'Kanembu',
+ 'kcg' => 'Tyap',
+ 'kde' => 'Makonde',
+ 'kea' => 'Kabuverdianu',
+ 'ken' => 'Kenyang',
+ 'kfo' => 'Koro',
+ 'kg' => 'Kongo',
+ 'kgp' => 'Kaingang',
+ 'kha' => 'Khasi',
+ 'kho' => 'Khotanese',
+ 'khq' => 'Koyra Chiini',
+ 'khw' => 'Khowar',
+ 'ki' => 'Kikuyu',
+ 'kiu' => 'Kirmanjki',
+ 'kj' => 'Kuanyama',
+ 'kk' => 'Kazakh',
+ 'kkj' => 'Kako',
+ 'kl' => 'Kalaallisut',
+ 'kln' => 'Kalenjin',
+ 'km' => 'Khmer',
+ 'kmb' => 'Kimbundu',
+ 'kn' => 'Kannada',
+ 'ko' => 'Korean',
+ 'koi' => 'Komi-Permyak',
+ 'kok' => 'Konkani',
+ 'kos' => 'Kosraean',
+ 'kpe' => 'Kpelle',
+ 'kr' => 'Kanuri',
+ 'krc' => 'Karachay-Balkar',
+ 'kri' => 'Krio',
+ 'krj' => 'Kinaray-a',
+ 'krl' => 'Karelian',
+ 'kru' => 'Kurukh',
+ 'ks' => 'Kashmiri',
+ 'ksb' => 'Shambala',
+ 'ksf' => 'Bafia',
+ 'ksh' => 'Colognian',
+ 'ku' => 'Kurdish',
+ 'kum' => 'Kumyk',
+ 'kut' => 'Kutenai',
+ 'kv' => 'Komi',
+ 'kw' => 'Cornish',
+ 'ky' => 'Kyrgyz',
+ 'la' => 'Latin',
+ 'lad' => 'Ladino',
+ 'lag' => 'Langi',
+ 'lah' => 'Lahnda',
+ 'lam' => 'Lamba',
+ 'lb' => 'Luxembourgish',
+ 'lez' => 'Lezghian',
+ 'lfn' => 'Lingua Franca Nova',
+ 'lg' => 'Ganda',
+ 'li' => 'Limburgish',
+ 'lij' => 'Ligurian',
+ 'liv' => 'Livonian',
+ 'lkt' => 'Lakota',
+ 'lmo' => 'Lombard',
+ 'ln' => 'Lingala',
+ 'lo' => 'Lao',
+ 'lol' => 'Mongo',
+ 'loz' => 'Lozi',
+ 'lt' => 'Lithuanian',
+ 'ltg' => 'Latgalian',
+ 'lu' => 'Luba-Katanga',
+ 'lua' => 'Luba-Lulua',
+ 'lui' => 'Luiseno',
+ 'lun' => 'Lunda',
+ 'luo' => 'Luo',
+ 'lus' => 'Mizo',
+ 'luy' => 'Luyia',
+ 'lv' => 'Latvian',
+ 'lzh' => 'Literary Chinese',
+ 'lzz' => 'Laz',
+ 'mad' => 'Madurese',
+ 'maf' => 'Mafa',
+ 'mag' => 'Magahi',
+ 'mai' => 'Maithili',
+ 'mak' => 'Makasar',
+ 'man' => 'Mandingo',
+ 'mas' => 'Masai',
+ 'mde' => 'Maba',
+ 'mdf' => 'Moksha',
+ 'mdr' => 'Mandar',
+ 'men' => 'Mende',
+ 'mer' => 'Meru',
+ 'mfe' => 'Morisyen',
+ 'mg' => 'Malagasy',
+ 'mga' => 'Middle Irish',
+ 'mgh' => 'Makhuwa-Meetto',
+ 'mgo' => 'Metaʼ',
+ 'mh' => 'Marshallese',
+ 'mi' => 'Maori',
+ 'mic' => 'Micmac',
+ 'min' => 'Minangkabau',
+ 'mk' => 'Macedonian',
+ 'ml' => 'Malayalam',
+ 'mn' => 'Mongolian',
+ 'mnc' => 'Manchu',
+ 'mni' => 'Manipuri',
+ 'moh' => 'Mohawk',
+ 'mos' => 'Mossi',
+ 'mr' => 'Marathi',
+ 'mrj' => 'Western Mari',
+ 'ms' => 'Malay',
+ 'mt' => 'Maltese',
+ 'mua' => 'Mundang',
+ 'mul' => 'Multiple Languages',
+ 'mus' => 'Creek',
+ 'mwl' => 'Mirandese',
+ 'mwr' => 'Marwari',
+ 'mwv' => 'Mentawai',
+ 'my' => 'Burmese',
+ 'mye' => 'Myene',
+ 'myv' => 'Erzya',
+ 'mzn' => 'Mazanderani',
+ 'na' => 'Nauru',
+ 'nan' => 'Min Nan Chinese',
+ 'nap' => 'Neapolitan',
+ 'naq' => 'Nama',
+ 'nb' => 'Norwegian Bokmål',
+ 'nd' => 'North Ndebele',
+ 'nds' => 'Low German',
+ 'ne' => 'Nepali',
+ 'new' => 'Newari',
+ 'ng' => 'Ndonga',
+ 'nia' => 'Nias',
+ 'niu' => 'Niuean',
+ 'njo' => 'Ao Naga',
+ 'nl' => 'Dutch',
+ 'nl-be' => 'Flemish',
+ 'nmg' => 'Kwasio',
+ 'nn' => 'Norwegian Nynorsk',
+ 'nnh' => 'Ngiemboon',
+ 'no' => 'Norwegian',
+ 'nog' => 'Nogai',
+ 'non' => 'Old Norse',
+ 'nov' => 'Novial',
+ 'nqo' => 'NʼKo',
+ 'nr' => 'South Ndebele',
+ 'nso' => 'Northern Sotho',
+ 'nus' => 'Nuer',
+ 'nv' => 'Navajo',
+ 'nwc' => 'Classical Newari',
+ 'ny' => 'Nyanja',
+ 'nym' => 'Nyamwezi',
+ 'nyn' => 'Nyankole',
+ 'nyo' => 'Nyoro',
+ 'nzi' => 'Nzima',
+ 'oc' => 'Occitan',
+ 'oj' => 'Ojibwa',
+ 'om' => 'Oromo',
+ 'or' => 'Oriya',
+ 'os' => 'Ossetic',
+ 'osa' => 'Osage',
+ 'ota' => 'Ottoman Turkish',
+ 'pa' => 'Punjabi',
+ 'pag' => 'Pangasinan',
+ 'pal' => 'Pahlavi',
+ 'pam' => 'Pampanga',
+ 'pap' => 'Papiamento',
+ 'pau' => 'Palauan',
+ 'pcd' => 'Picard',
+ 'pdc' => 'Pennsylvania German',
+ 'pdt' => 'Plautdietsch',
+ 'peo' => 'Old Persian',
+ 'pfl' => 'Palatine German',
+ 'phn' => 'Phoenician',
+ 'pi' => 'Pali',
+ 'pl' => 'Polish',
+ 'pms' => 'Piedmontese',
+ 'pnt' => 'Pontic',
+ 'pon' => 'Pohnpeian',
+ 'prg' => 'Prussian',
+ 'pro' => 'Old Provençal',
+ 'ps' => 'Pashto',
+ 'pt' => 'Portuguese',
+ 'pt-br' => 'Brazilian Portuguese',
+ 'pt-pt' => 'European Portuguese',
+ 'qu' => 'Quechua',
+ 'quc' => 'Kʼicheʼ',
+ 'qug' => 'Chimborazo Highland Quichua',
+ 'raj' => 'Rajasthani',
+ 'rap' => 'Rapanui',
+ 'rar' => 'Rarotongan',
+ 'rgn' => 'Romagnol',
+ 'rif' => 'Riffian',
+ 'rm' => 'Romansh',
+ 'rn' => 'Rundi',
+ 'ro' => 'Romanian',
+ 'ro-md' => 'Moldavian',
+ 'rof' => 'Rombo',
+ 'rom' => 'Romany',
+ 'rtm' => 'Rotuman',
+ 'ru' => 'Russian',
+ 'rue' => 'Rusyn',
+ 'rug' => 'Roviana',
+ 'rup' => 'Aromanian',
+ 'rw' => 'Kinyarwanda',
+ 'rwk' => 'Rwa',
+ 'sa' => 'Sanskrit',
+ 'sad' => 'Sandawe',
+ 'sah' => 'Sakha',
+ 'sam' => 'Samaritan Aramaic',
+ 'saq' => 'Samburu',
+ 'sas' => 'Sasak',
+ 'sat' => 'Santali',
+ 'saz' => 'Saurashtra',
+ 'sba' => 'Ngambay',
+ 'sbp' => 'Sangu',
+ 'sc' => 'Sardinian',
+ 'scn' => 'Sicilian',
+ 'sco' => 'Scots',
+ 'sd' => 'Sindhi',
+ 'sdc' => 'Sassarese Sardinian',
+ 'se' => 'Northern Sami',
+ 'see' => 'Seneca',
+ 'seh' => 'Sena',
+ 'sei' => 'Seri',
+ 'sel' => 'Selkup',
+ 'ses' => 'Koyraboro Senni',
+ 'sg' => 'Sango',
+ 'sga' => 'Old Irish',
+ 'sgs' => 'Samogitian',
+ 'sh' => 'Serbo-Croatian',
+ 'shi' => 'Tachelhit',
+ 'shn' => 'Shan',
+ 'shu' => 'Chadian Arabic',
+ 'si' => 'Sinhala',
+ 'sid' => 'Sidamo',
+ 'sk' => 'Slovak',
+ 'sl' => 'Slovenian',
+ 'sli' => 'Lower Silesian',
+ 'sly' => 'Selayar',
+ 'sm' => 'Samoan',
+ 'sma' => 'Southern Sami',
+ 'smj' => 'Lule Sami',
+ 'smn' => 'Inari Sami',
+ 'sms' => 'Skolt Sami',
+ 'sn' => 'Shona',
+ 'snk' => 'Soninke',
+ 'so' => 'Somali',
+ 'sog' => 'Sogdien',
+ 'sq' => 'Albanian',
+ 'sr' => 'Serbian',
+ 'srn' => 'Sranan Tongo',
+ 'srr' => 'Serer',
+ 'ss' => 'Swati',
+ 'ssy' => 'Saho',
+ 'st' => 'Southern Sotho',
+ 'stq' => 'Saterland Frisian',
+ 'su' => 'Sundanese',
+ 'suk' => 'Sukuma',
+ 'sus' => 'Susu',
+ 'sux' => 'Sumerian',
+ 'sv' => 'Swedish',
+ 'sw' => 'Swahili',
+ 'swb' => 'Comorian',
+ 'swc' => 'Congo Swahili',
+ 'syc' => 'Classical Syriac',
+ 'syr' => 'Syriac',
+ 'szl' => 'Silesian',
+ 'ta' => 'Tamil',
+ 'tcy' => 'Tulu',
+ 'te' => 'Telugu',
+ 'tem' => 'Timne',
+ 'teo' => 'Teso',
+ 'ter' => 'Tereno',
+ 'tet' => 'Tetum',
+ 'tg' => 'Tajik',
+ 'th' => 'Thai',
+ 'ti' => 'Tigrinya',
+ 'tig' => 'Tigre',
+ 'tiv' => 'Tiv',
+ 'tk' => 'Turkmen',
+ 'tkl' => 'Tokelau',
+ 'tkr' => 'Tsakhur',
+ 'tl' => 'Tagalog',
+ 'tlh' => 'Klingon',
+ 'tli' => 'Tlingit',
+ 'tly' => 'Talysh',
+ 'tmh' => 'Tamashek',
+ 'tn' => 'Tswana',
+ 'to' => 'Tongan',
+ 'tog' => 'Nyasa Tonga',
+ 'tpi' => 'Tok Pisin',
+ 'tr' => 'Turkish',
+ 'tru' => 'Turoyo',
+ 'trv' => 'Taroko',
+ 'ts' => 'Tsonga',
+ 'tsd' => 'Tsakonian',
+ 'tsi' => 'Tsimshian',
+ 'tt' => 'Tatar',
+ 'ttt' => 'Muslim Tat',
+ 'tum' => 'Tumbuka',
+ 'tvl' => 'Tuvalu',
+ 'tw' => 'Twi',
+ 'twq' => 'Tasawaq',
+ 'ty' => 'Tahitian',
+ 'tyv' => 'Tuvinian',
+ 'tzm' => 'Central Atlas Tamazight',
+ 'udm' => 'Udmurt',
+ 'ug' => 'Uyghur',
+ 'uga' => 'Ugaritic',
+ 'uk' => 'Ukrainian',
+ 'umb' => 'Umbundu',
+ 'und' => 'Unknown Language',
+ 'ur' => 'Urdu',
+ 'uz' => 'Uzbek',
+ 'vai' => 'Vai',
+ 've' => 'Venda',
+ 'vec' => 'Venetian',
+ 'vep' => 'Veps',
+ 'vi' => 'Vietnamese',
+ 'vls' => 'West Flemish',
+ 'vmf' => 'Main-Franconian',
+ 'vo' => 'Volapük',
+ 'vot' => 'Votic',
+ 'vro' => 'Võro',
+ 'vun' => 'Vunjo',
+ 'wa' => 'Walloon',
+ 'wae' => 'Walser',
+ 'wal' => 'Wolaytta',
+ 'war' => 'Waray',
+ 'was' => 'Washo',
+ 'wo' => 'Wolof',
+ 'wuu' => 'Wu Chinese',
+ 'xal' => 'Kalmyk',
+ 'xh' => 'Xhosa',
+ 'xmf' => 'Mingrelian',
+ 'xog' => 'Soga',
+ 'yao' => 'Yao',
+ 'yap' => 'Yapese',
+ 'yav' => 'Yangben',
+ 'ybb' => 'Yemba',
+ 'yi' => 'Yiddish',
+ 'yo' => 'Yoruba',
+ 'yrl' => 'Nheengatu',
+ 'yue' => 'Cantonese',
+ 'za' => 'Zhuang',
+ 'zap' => 'Zapotec',
+ 'zbl' => 'Blissymbols',
+ 'zea' => 'Zeelandic',
+ 'zen' => 'Zenaga',
+ 'zgh' => 'Standard Moroccan Tamazight',
+ 'zh' => 'Chinese',
+ 'zh-hans' => 'Simplified Chinese',
+ 'zh-hant' => 'Traditional Chinese',
+ 'zu' => 'Zulu',
+ 'zun' => 'Zuni',
+ 'zxx' => 'No linguistic content',
+ 'zza' => 'Zaza',
+);
+
+$currencyNames = array(
+ 'ADP' => 'Andorran Peseta',
+ 'AED' => 'United Arab Emirates Dirham',
+ 'AFA' => 'Afghan Afghani (1927–2002)',
+ 'AFN' => 'Afghan Afghani',
+ 'ALK' => 'Albanian Lek (1946–1965)',
+ 'ALL' => 'Albanian Lek',
+ 'AMD' => 'Armenian Dram',
+ 'ANG' => 'Netherlands Antillean Guilder',
+ 'AOA' => 'Angolan Kwanza',
+ 'AOK' => 'Angolan Kwanza (1977–1991)',
+ 'AON' => 'Angolan New Kwanza (1990–2000)',
+ 'AOR' => 'Angolan Readjusted Kwanza (1995–1999)',
+ 'ARA' => 'Argentine Austral',
+ 'ARL' => 'Argentine Peso Ley (1970–1983)',
+ 'ARM' => 'Argentine Peso (1881–1970)',
+ 'ARP' => 'Argentine Peso (1983–1985)',
+ 'ARS' => 'Argentine Peso',
+ 'ATS' => 'Austrian Schilling',
+ 'AUD' => 'Australian Dollar',
+ 'AWG' => 'Aruban Florin',
+ 'AZM' => 'Azerbaijani Manat (1993–2006)',
+ 'AZN' => 'Azerbaijani Manat',
+ 'BAD' => 'Bosnia-Herzegovina Dinar (1992–1994)',
+ 'BAM' => 'Bosnia-Herzegovina Convertible Mark',
+ 'BAN' => 'Bosnia-Herzegovina New Dinar (1994–1997)',
+ 'BBD' => 'Barbadian Dollar',
+ 'BDT' => 'Bangladeshi Taka',
+ 'BEC' => 'Belgian Franc (convertible)',
+ 'BEF' => 'Belgian Franc',
+ 'BEL' => 'Belgian Franc (financial)',
+ 'BGL' => 'Bulgarian Hard Lev',
+ 'BGM' => 'Bulgarian Socialist Lev',
+ 'BGN' => 'Bulgarian Lev',
+ 'BGO' => 'Bulgarian Lev (1879–1952)',
+ 'BHD' => 'Bahraini Dinar',
+ 'BIF' => 'Burundian Franc',
+ 'BMD' => 'Bermudan Dollar',
+ 'BND' => 'Brunei Dollar',
+ 'BOB' => 'Bolivian Boliviano',
+ 'BOL' => 'Bolivian Boliviano (1863–1963)',
+ 'BOP' => 'Bolivian Peso',
+ 'BOV' => 'Bolivian Mvdol',
+ 'BRB' => 'Brazilian New Cruzeiro (1967–1986)',
+ 'BRC' => 'Brazilian Cruzado (1986–1989)',
+ 'BRE' => 'Brazilian Cruzeiro (1990–1993)',
+ 'BRL' => 'Brazilian Real',
+ 'BRN' => 'Brazilian New Cruzado (1989–1990)',
+ 'BRR' => 'Brazilian Cruzeiro (1993–1994)',
+ 'BRZ' => 'Brazilian Cruzeiro (1942–1967)',
+ 'BSD' => 'Bahamian Dollar',
+ 'BTN' => 'Bhutanese Ngultrum',
+ 'BUK' => 'Burmese Kyat',
+ 'BWP' => 'Botswanan Pula',
+ 'BYB' => 'Belarusian New Ruble (1994–1999)',
+ 'BYR' => 'Belarusian Ruble',
+ 'BZD' => 'Belize Dollar',
+ 'CAD' => 'Canadian Dollar',
+ 'CDF' => 'Congolese Franc',
+ 'CHE' => 'WIR Euro',
+ 'CHF' => 'Swiss Franc',
+ 'CHW' => 'WIR Franc',
+ 'CLE' => 'Chilean Escudo',
+ 'CLF' => 'Chilean Unit of Account (UF)',
+ 'CLP' => 'Chilean Peso',
+ 'CNX' => 'Chinese People’s Bank Dollar',
+ 'CNY' => 'Chinese Yuan',
+ 'COP' => 'Colombian Peso',
+ 'COU' => 'Colombian Real Value Unit',
+ 'CRC' => 'Costa Rican Colón',
+ 'CSD' => 'Serbian Dinar (2002–2006)',
+ 'CSK' => 'Czechoslovak Hard Koruna',
+ 'CUC' => 'Cuban Convertible Peso',
+ 'CUP' => 'Cuban Peso',
+ 'CVE' => 'Cape Verdean Escudo',
+ 'CYP' => 'Cypriot Pound',
+ 'CZK' => 'Czech Republic Koruna',
+ 'DDM' => 'East German Mark',
+ 'DEM' => 'German Mark',
+ 'DJF' => 'Djiboutian Franc',
+ 'DKK' => 'Danish Krone',
+ 'DOP' => 'Dominican Peso',
+ 'DZD' => 'Algerian Dinar',
+ 'ECS' => 'Ecuadorian Sucre',
+ 'ECV' => 'Ecuadorian Unit of Constant Value',
+ 'EEK' => 'Estonian Kroon',
+ 'EGP' => 'Egyptian Pound',
+ 'ERN' => 'Eritrean Nakfa',
+ 'ESA' => 'Spanish Peseta (A account)',
+ 'ESB' => 'Spanish Peseta (convertible account)',
+ 'ESP' => 'Spanish Peseta',
+ 'ETB' => 'Ethiopian Birr',
+ 'EUR' => 'Euro',
+ 'FIM' => 'Finnish Markka',
+ 'FJD' => 'Fijian Dollar',
+ 'FKP' => 'Falkland Islands Pound',
+ 'FRF' => 'French Franc',
+ 'GBP' => 'British Pound Sterling',
+ 'GEK' => 'Georgian Kupon Larit',
+ 'GEL' => 'Georgian Lari',
+ 'GHC' => 'Ghanaian Cedi (1979–2007)',
+ 'GHS' => 'Ghanaian Cedi',
+ 'GIP' => 'Gibraltar Pound',
+ 'GMD' => 'Gambian Dalasi',
+ 'GNF' => 'Guinean Franc',
+ 'GNS' => 'Guinean Syli',
+ 'GQE' => 'Equatorial Guinean Ekwele',
+ 'GRD' => 'Greek Drachma',
+ 'GTQ' => 'Guatemalan Quetzal',
+ 'GWE' => 'Portuguese Guinea Escudo',
+ 'GWP' => 'Guinea-Bissau Peso',
+ 'GYD' => 'Guyanaese Dollar',
+ 'HKD' => 'Hong Kong Dollar',
+ 'HNL' => 'Honduran Lempira',
+ 'HRD' => 'Croatian Dinar',
+ 'HRK' => 'Croatian Kuna',
+ 'HTG' => 'Haitian Gourde',
+ 'HUF' => 'Hungarian Forint',
+ 'IDR' => 'Indonesian Rupiah',
+ 'IEP' => 'Irish Pound',
+ 'ILP' => 'Israeli Pound',
+ 'ILR' => 'Israeli Sheqel (1980–1985)',
+ 'ILS' => 'Israeli New Sheqel',
+ 'INR' => 'Indian Rupee',
+ 'IQD' => 'Iraqi Dinar',
+ 'IRR' => 'Iranian Rial',
+ 'ISJ' => 'Icelandic Króna (1918–1981)',
+ 'ISK' => 'Icelandic Króna',
+ 'ITL' => 'Italian Lira',
+ 'JMD' => 'Jamaican Dollar',
+ 'JOD' => 'Jordanian Dinar',
+ 'JPY' => 'Japanese Yen',
+ 'KES' => 'Kenyan Shilling',
+ 'KGS' => 'Kyrgystani Som',
+ 'KHR' => 'Cambodian Riel',
+ 'KMF' => 'Comorian Franc',
+ 'KPW' => 'North Korean Won',
+ 'KRH' => 'South Korean Hwan (1953–1962)',
+ 'KRO' => 'South Korean Won (1945–1953)',
+ 'KRW' => 'South Korean Won',
+ 'KWD' => 'Kuwaiti Dinar',
+ 'KYD' => 'Cayman Islands Dollar',
+ 'KZT' => 'Kazakhstani Tenge',
+ 'LAK' => 'Laotian Kip',
+ 'LBP' => 'Lebanese Pound',
+ 'LKR' => 'Sri Lankan Rupee',
+ 'LRD' => 'Liberian Dollar',
+ 'LSL' => 'Lesotho Loti',
+ 'LTL' => 'Lithuanian Litas',
+ 'LTT' => 'Lithuanian Talonas',
+ 'LUC' => 'Luxembourgian Convertible Franc',
+ 'LUF' => 'Luxembourgian Franc',
+ 'LUL' => 'Luxembourg Financial Franc',
+ 'LVL' => 'Latvian Lats',
+ 'LVR' => 'Latvian Ruble',
+ 'LYD' => 'Libyan Dinar',
+ 'MAD' => 'Moroccan Dirham',
+ 'MAF' => 'Moroccan Franc',
+ 'MCF' => 'Monegasque Franc',
+ 'MDC' => 'Moldovan Cupon',
+ 'MDL' => 'Moldovan Leu',
+ 'MGA' => 'Malagasy Ariary',
+ 'MGF' => 'Malagasy Franc',
+ 'MKD' => 'Macedonian Denar',
+ 'MKN' => 'Macedonian Denar (1992–1993)',
+ 'MLF' => 'Malian Franc',
+ 'MMK' => 'Myanmar Kyat',
+ 'MNT' => 'Mongolian Tugrik',
+ 'MOP' => 'Macanese Pataca',
+ 'MRO' => 'Mauritanian Ouguiya',
+ 'MTL' => 'Maltese Lira',
+ 'MTP' => 'Maltese Pound',
+ 'MUR' => 'Mauritian Rupee',
+ 'MVP' => 'Maldivian Rupee (1947–1981)',
+ 'MVR' => 'Maldivian Rufiyaa',
+ 'MWK' => 'Malawian Kwacha',
+ 'MXN' => 'Mexican Peso',
+ 'MXP' => 'Mexican Silver Peso (1861–1992)',
+ 'MXV' => 'Mexican Investment Unit',
+ 'MYR' => 'Malaysian Ringgit',
+ 'MZE' => 'Mozambican Escudo',
+ 'MZM' => 'Mozambican Metical (1980–2006)',
+ 'MZN' => 'Mozambican Metical',
+ 'NAD' => 'Namibian Dollar',
+ 'NGN' => 'Nigerian Naira',
+ 'NIC' => 'Nicaraguan Córdoba (1988–1991)',
+ 'NIO' => 'Nicaraguan Córdoba',
+ 'NLG' => 'Dutch Guilder',
+ 'NOK' => 'Norwegian Krone',
+ 'NPR' => 'Nepalese Rupee',
+ 'NZD' => 'New Zealand Dollar',
+ 'OMR' => 'Omani Rial',
+ 'PAB' => 'Panamanian Balboa',
+ 'PEI' => 'Peruvian Inti',
+ 'PEN' => 'Peruvian Nuevo Sol',
+ 'PES' => 'Peruvian Sol (1863–1965)',
+ 'PGK' => 'Papua New Guinean Kina',
+ 'PHP' => 'Philippine Peso',
+ 'PKR' => 'Pakistani Rupee',
+ 'PLN' => 'Polish Zloty',
+ 'PLZ' => 'Polish Zloty (1950–1995)',
+ 'PTE' => 'Portuguese Escudo',
+ 'PYG' => 'Paraguayan Guarani',
+ 'QAR' => 'Qatari Rial',
+ 'RHD' => 'Rhodesian Dollar',
+ 'ROL' => 'Romanian Leu (1952–2006)',
+ 'RON' => 'Romanian Leu',
+ 'RSD' => 'Serbian Dinar',
+ 'RUB' => 'Russian Ruble',
+ 'RUR' => 'Russian Ruble (1991–1998)',
+ 'RWF' => 'Rwandan Franc',
+ 'SAR' => 'Saudi Riyal',
+ 'SBD' => 'Solomon Islands Dollar',
+ 'SCR' => 'Seychellois Rupee',
+ 'SDD' => 'Sudanese Dinar (1992–2007)',
+ 'SDG' => 'Sudanese Pound',
+ 'SDP' => 'Sudanese Pound (1957–1998)',
+ 'SEK' => 'Swedish Krona',
+ 'SGD' => 'Singapore Dollar',
+ 'SHP' => 'St. Helena Pound',
+ 'SIT' => 'Slovenian Tolar',
+ 'SKK' => 'Slovak Koruna',
+ 'SLL' => 'Sierra Leonean Leone',
+ 'SOS' => 'Somali Shilling',
+ 'SRD' => 'Surinamese Dollar',
+ 'SRG' => 'Surinamese Guilder',
+ 'SSP' => 'South Sudanese Pound',
+ 'STD' => 'São Tomé & Príncipe Dobra',
+ 'SUR' => 'Soviet Rouble',
+ 'SVC' => 'Salvadoran Colón',
+ 'SYP' => 'Syrian Pound',
+ 'SZL' => 'Swazi Lilangeni',
+ 'THB' => 'Thai Baht',
+ 'TJR' => 'Tajikistani Ruble',
+ 'TJS' => 'Tajikistani Somoni',
+ 'TMM' => 'Turkmenistani Manat (1993–2009)',
+ 'TMT' => 'Turkmenistani Manat',
+ 'TND' => 'Tunisian Dinar',
+ 'TOP' => 'Tongan Paʻanga',
+ 'TPE' => 'Timorese Escudo',
+ 'TRL' => 'Turkish Lira (1922–2005)',
+ 'TRY' => 'Turkish Lira',
+ 'TTD' => 'Trinidad & Tobago Dollar',
+ 'TWD' => 'New Taiwan Dollar',
+ 'TZS' => 'Tanzanian Shilling',
+ 'UAH' => 'Ukrainian Hryvnia',
+ 'UAK' => 'Ukrainian Karbovanets',
+ 'UGS' => 'Ugandan Shilling (1966–1987)',
+ 'UGX' => 'Ugandan Shilling',
+ 'USD' => 'US Dollar',
+ 'USN' => 'US Dollar (Next day)',
+ 'USS' => 'US Dollar (Same day)',
+ 'UYI' => 'Uruguayan Peso (Indexed Units)',
+ 'UYP' => 'Uruguayan Peso (1975–1993)',
+ 'UYU' => 'Uruguayan Peso',
+ 'UZS' => 'Uzbekistan Som',
+ 'VEB' => 'Venezuelan Bolívar (1871–2008)',
+ 'VEF' => 'Venezuelan Bolívar',
+ 'VND' => 'Vietnamese Dong',
+ 'VNN' => 'Vietnamese Dong (1978–1985)',
+ 'VUV' => 'Vanuatu Vatu',
+ 'WST' => 'Samoan Tala',
+ 'XAF' => 'CFA Franc BEAC',
+ 'XAG' => 'Silver',
+ 'XAU' => 'Gold',
+ 'XBA' => 'European Composite Unit',
+ 'XBB' => 'European Monetary Unit',
+ 'XBC' => 'European Unit of Account (XBC)',
+ 'XBD' => 'European Unit of Account (XBD)',
+ 'XCD' => 'East Caribbean Dollar',
+ 'XDR' => 'Special Drawing Rights',
+ 'XEU' => 'European Currency Unit',
+ 'XFO' => 'French Gold Franc',
+ 'XFU' => 'French UIC-Franc',
+ 'XOF' => 'CFA Franc BCEAO',
+ 'XPD' => 'Palladium',
+ 'XPF' => 'CFP Franc',
+ 'XPT' => 'Platinum',
+ 'XRE' => 'RINET Funds',
+ 'XSU' => 'Sucre',
+ 'XTS' => 'Testing Currency Code',
+ 'XUA' => 'ADB Unit of Account',
+ 'XXX' => 'Unknown Currency',
+ 'YDD' => 'Yemeni Dinar',
+ 'YER' => 'Yemeni Rial',
+ 'YUD' => 'Yugoslavian Hard Dinar (1966–1990)',
+ 'YUM' => 'Yugoslavian New Dinar (1994–2002)',
+ 'YUN' => 'Yugoslavian Convertible Dinar (1990–1992)',
+ 'YUR' => 'Yugoslavian Reformed Dinar (1992–1993)',
+ 'ZAL' => 'South African Rand (financial)',
+ 'ZAR' => 'South African Rand',
+ 'ZMK' => 'Zambian Kwacha (1968–2012)',
+ 'ZMW' => 'Zambian Kwacha',
+ 'ZRN' => 'Zairean New Zaire (1993–1998)',
+ 'ZRZ' => 'Zairean Zaire (1971–1993)',
+ 'ZWD' => 'Zimbabwean Dollar (1980–2008)',
+ 'ZWL' => 'Zimbabwean Dollar (2009)',
+ 'ZWR' => 'Zimbabwean Dollar (2008)',
+);
+
+$currencySymbols = array(
+ 'JPY' => '¥',
+ 'USD' => '$',
+);
+
+$countryNames = array(
+ 'AC' => 'Ascension Island',
+ 'AD' => 'Andorra',
+ 'AE' => 'United Arab Emirates',
+ 'AF' => 'Afghanistan',
+ 'AG' => 'Antigua & Barbuda',
+ 'AI' => 'Anguilla',
+ 'AL' => 'Albania',
+ 'AM' => 'Armenia',
+ 'AN' => 'Netherlands Antilles',
+ 'AO' => 'Angola',
+ 'AQ' => 'Antarctica',
+ 'AR' => 'Argentina',
+ 'AS' => 'American Samoa',
+ 'AT' => 'Austria',
+ 'AU' => 'Australia',
+ 'AW' => 'Aruba',
+ 'AX' => 'Åland Islands',
+ 'AZ' => 'Azerbaijan',
+ 'BA' => 'Bosnia',
+ 'BB' => 'Barbados',
+ 'BD' => 'Bangladesh',
+ 'BE' => 'Belgium',
+ 'BF' => 'Burkina Faso',
+ 'BG' => 'Bulgaria',
+ 'BH' => 'Bahrain',
+ 'BI' => 'Burundi',
+ 'BJ' => 'Benin',
+ 'BL' => 'St. Barthélemy',
+ 'BM' => 'Bermuda',
+ 'BN' => 'Brunei',
+ 'BO' => 'Bolivia',
+ 'BQ' => 'Caribbean Netherlands',
+ 'BR' => 'Brazil',
+ 'BS' => 'Bahamas',
+ 'BT' => 'Bhutan',
+ 'BV' => 'Bouvet Island',
+ 'BW' => 'Botswana',
+ 'BY' => 'Belarus',
+ 'BZ' => 'Belize',
+ 'CA' => 'Canada',
+ 'CC' => 'Cocos (Keeling) Islands',
+ 'CD' => 'Congo - Kinshasa',
+ 'CF' => 'Central African Republic',
+ 'CG' => 'Congo - Brazzaville',
+ 'CH' => 'Switzerland',
+ 'CI' => 'Côte d’Ivoire',
+ 'CK' => 'Cook Islands',
+ 'CL' => 'Chile',
+ 'CM' => 'Cameroon',
+ 'CN' => 'China',
+ 'CO' => 'Colombia',
+ 'CP' => 'Clipperton Island',
+ 'CR' => 'Costa Rica',
+ 'CU' => 'Cuba',
+ 'CV' => 'Cape Verde',
+ 'CW' => 'Curaçao',
+ 'CX' => 'Christmas Island',
+ 'CY' => 'Cyprus',
+ 'CZ' => 'Czech Republic',
+ 'DE' => 'Germany',
+ 'DG' => 'Diego Garcia',
+ 'DJ' => 'Djibouti',
+ 'DK' => 'Denmark',
+ 'DM' => 'Dominica',
+ 'DO' => 'Dominican Republic',
+ 'DZ' => 'Algeria',
+ 'EA' => 'Ceuta & Melilla',
+ 'EC' => 'Ecuador',
+ 'EE' => 'Estonia',
+ 'EG' => 'Egypt',
+ 'EH' => 'Western Sahara',
+ 'ER' => 'Eritrea',
+ 'ES' => 'Spain',
+ 'ET' => 'Ethiopia',
+ 'EU' => 'European Union',
+ 'FI' => 'Finland',
+ 'FJ' => 'Fiji',
+ 'FK' => 'Falkland Islands',
+ 'FM' => 'Micronesia',
+ 'FO' => 'Faroe Islands',
+ 'FR' => 'France',
+ 'GA' => 'Gabon',
+ 'GB' => 'U.K.',
+ 'GD' => 'Grenada',
+ 'GE' => 'Georgia',
+ 'GF' => 'French Guiana',
+ 'GG' => 'Guernsey',
+ 'GH' => 'Ghana',
+ 'GI' => 'Gibraltar',
+ 'GL' => 'Greenland',
+ 'GM' => 'Gambia',
+ 'GN' => 'Guinea',
+ 'GP' => 'Guadeloupe',
+ 'GQ' => 'Equatorial Guinea',
+ 'GR' => 'Greece',
+ 'GS' => 'South Georgia & South Sandwich Islands',
+ 'GT' => 'Guatemala',
+ 'GU' => 'Guam',
+ 'GW' => 'Guinea-Bissau',
+ 'GY' => 'Guyana',
+ 'HK' => 'Hong Kong',
+ 'HM' => 'Heard & McDonald Islands',
+ 'HN' => 'Honduras',
+ 'HR' => 'Croatia',
+ 'HT' => 'Haiti',
+ 'HU' => 'Hungary',
+ 'IC' => 'Canary Islands',
+ 'ID' => 'Indonesia',
+ 'IE' => 'Ireland',
+ 'IL' => 'Israel',
+ 'IM' => 'Isle of Man',
+ 'IN' => 'India',
+ 'IO' => 'British Indian Ocean Territory',
+ 'IQ' => 'Iraq',
+ 'IR' => 'Iran',
+ 'IS' => 'Iceland',
+ 'IT' => 'Italy',
+ 'JE' => 'Jersey',
+ 'JM' => 'Jamaica',
+ 'JO' => 'Jordan',
+ 'JP' => 'Japan',
+ 'KE' => 'Kenya',
+ 'KG' => 'Kyrgyzstan',
+ 'KH' => 'Cambodia',
+ 'KI' => 'Kiribati',
+ 'KM' => 'Comoros',
+ 'KN' => 'St. Kitts & Nevis',
+ 'KP' => 'North Korea',
+ 'KR' => 'South Korea',
+ 'KW' => 'Kuwait',
+ 'KY' => 'Cayman Islands',
+ 'KZ' => 'Kazakhstan',
+ 'LA' => 'Laos',
+ 'LB' => 'Lebanon',
+ 'LC' => 'St. Lucia',
+ 'LI' => 'Liechtenstein',
+ 'LK' => 'Sri Lanka',
+ 'LR' => 'Liberia',
+ 'LS' => 'Lesotho',
+ 'LT' => 'Lithuania',
+ 'LU' => 'Luxembourg',
+ 'LV' => 'Latvia',
+ 'LY' => 'Libya',
+ 'MA' => 'Morocco',
+ 'MC' => 'Monaco',
+ 'MD' => 'Moldova',
+ 'ME' => 'Montenegro',
+ 'MF' => 'St. Martin',
+ 'MG' => 'Madagascar',
+ 'MH' => 'Marshall Islands',
+ 'MK' => 'Macedonia',
+ 'ML' => 'Mali',
+ 'MM' => 'Myanmar',
+ 'MN' => 'Mongolia',
+ 'MO' => 'Macau',
+ 'MP' => 'Northern Mariana Islands',
+ 'MQ' => 'Martinique',
+ 'MR' => 'Mauritania',
+ 'MS' => 'Montserrat',
+ 'MT' => 'Malta',
+ 'MU' => 'Mauritius',
+ 'MV' => 'Maldives',
+ 'MW' => 'Malawi',
+ 'MX' => 'Mexico',
+ 'MY' => 'Malaysia',
+ 'MZ' => 'Mozambique',
+ 'NA' => 'Namibia',
+ 'NC' => 'New Caledonia',
+ 'NE' => 'Niger',
+ 'NF' => 'Norfolk Island',
+ 'NG' => 'Nigeria',
+ 'NI' => 'Nicaragua',
+ 'NL' => 'Netherlands',
+ 'NO' => 'Norway',
+ 'NP' => 'Nepal',
+ 'NR' => 'Nauru',
+ 'NU' => 'Niue',
+ 'NZ' => 'New Zealand',
+ 'OM' => 'Oman',
+ 'PA' => 'Panama',
+ 'PE' => 'Peru',
+ 'PF' => 'French Polynesia',
+ 'PG' => 'Papua New Guinea',
+ 'PH' => 'Philippines',
+ 'PK' => 'Pakistan',
+ 'PL' => 'Poland',
+ 'PM' => 'St. Pierre & Miquelon',
+ 'PN' => 'Pitcairn Islands',
+ 'PR' => 'Puerto Rico',
+ 'PS' => 'Palestine',
+ 'PT' => 'Portugal',
+ 'PW' => 'Palau',
+ 'PY' => 'Paraguay',
+ 'QA' => 'Qatar',
+ 'QO' => 'Outlying Oceania',
+ 'RE' => 'Réunion',
+ 'RO' => 'Romania',
+ 'RS' => 'Serbia',
+ 'RU' => 'Russia',
+ 'RW' => 'Rwanda',
+ 'SA' => 'Saudi Arabia',
+ 'SB' => 'Solomon Islands',
+ 'SC' => 'Seychelles',
+ 'SD' => 'Sudan',
+ 'SE' => 'Sweden',
+ 'SG' => 'Singapore',
+ 'SH' => 'St. Helena',
+ 'SI' => 'Slovenia',
+ 'SJ' => 'Svalbard & Jan Mayen',
+ 'SK' => 'Slovakia',
+ 'SL' => 'Sierra Leone',
+ 'SM' => 'San Marino',
+ 'SN' => 'Senegal',
+ 'SO' => 'Somalia',
+ 'SR' => 'Suriname',
+ 'SS' => 'South Sudan',
+ 'ST' => 'São Tomé & Príncipe',
+ 'SV' => 'El Salvador',
+ 'SX' => 'Sint Maarten',
+ 'SY' => 'Syria',
+ 'SZ' => 'Swaziland',
+ 'TA' => 'Tristan da Cunha',
+ 'TC' => 'Turks & Caicos Islands',
+ 'TD' => 'Chad',
+ 'TF' => 'French Southern Territories',
+ 'TG' => 'Togo',
+ 'TH' => 'Thailand',
+ 'TJ' => 'Tajikistan',
+ 'TK' => 'Tokelau',
+ 'TL' => 'Timor-Leste',
+ 'TM' => 'Turkmenistan',
+ 'TN' => 'Tunisia',
+ 'TO' => 'Tonga',
+ 'TR' => 'Turkey',
+ 'TT' => 'Trinidad & Tobago',
+ 'TV' => 'Tuvalu',
+ 'TW' => 'Taiwan',
+ 'TZ' => 'Tanzania',
+ 'UA' => 'Ukraine',
+ 'UG' => 'Uganda',
+ 'UM' => 'U.S. Outlying Islands',
+ 'US' => 'U.S.',
+ 'UY' => 'Uruguay',
+ 'UZ' => 'Uzbekistan',
+ 'VA' => 'Vatican City',
+ 'VC' => 'St. Vincent & Grenadines',
+ 'VE' => 'Venezuela',
+ 'VG' => 'British Virgin Islands',
+ 'VI' => 'U.S. Virgin Islands',
+ 'VN' => 'Vietnam',
+ 'VU' => 'Vanuatu',
+ 'WF' => 'Wallis & Futuna',
+ 'WS' => 'Samoa',
+ 'XK' => 'Kosovo',
+ 'YE' => 'Yemen',
+ 'YT' => 'Mayotte',
+ 'ZA' => 'South Africa',
+ 'ZM' => 'Zambia',
+ 'ZW' => 'Zimbabwe',
+);
+
+$timeUnits = array(
+ 'day-future-one' => 'in {0} day',
+ 'day-future-other' => 'in {0} days',
+ 'day-one' => '{0} day',
+ 'day-other' => '{0} days',
+ 'day-past-one' => '{0} day ago',
+ 'day-past-other' => '{0} days ago',
+ 'hour-future-one' => 'in {0} hour',
+ 'hour-future-other' => 'in {0} hours',
+ 'hour-one' => '{0} hour',
+ 'hour-other' => '{0} hours',
+ 'hour-past-one' => '{0} hour ago',
+ 'hour-past-other' => '{0} hours ago',
+ 'hour-short-future-one' => 'in {0} hr.',
+ 'hour-short-future-other' => 'in {0} hr.',
+ 'hour-short-past-one' => '{0} hr. ago',
+ 'hour-short-past-other' => '{0} hr. ago',
+ 'microsecond-one' => '{0} microsecond',
+ 'microsecond-other' => '{0} microseconds',
+ 'millisecond-one' => '{0} millisecond',
+ 'millisecond-other' => '{0} milliseconds',
+ 'minute-future-one' => 'in {0} minute',
+ 'minute-future-other' => 'in {0} minutes',
+ 'minute-one' => '{0} minute',
+ 'minute-other' => '{0} minutes',
+ 'minute-past-one' => '{0} minute ago',
+ 'minute-past-other' => '{0} minutes ago',
+ 'minute-short-future-one' => 'in {0} min.',
+ 'minute-short-future-other' => 'in {0} min.',
+ 'minute-short-past-one' => '{0} min. ago',
+ 'minute-short-past-other' => '{0} min. ago',
+ 'month-future-one' => 'in {0} month',
+ 'month-future-other' => 'in {0} months',
+ 'month-one' => '{0} month',
+ 'month-other' => '{0} months',
+ 'month-past-one' => '{0} month ago',
+ 'month-past-other' => '{0} months ago',
+ 'month-short-future-one' => 'in {0} mo.',
+ 'month-short-future-other' => 'in {0} mo.',
+ 'month-short-past-one' => '{0} mo. ago',
+ 'month-short-past-other' => '{0} mo. ago',
+ 'nanosecond-one' => '{0} nanosecond',
+ 'nanosecond-other' => '{0} nanoseconds',
+ 'quarter-future-one' => 'in {0} quarter',
+ 'quarter-future-other' => 'in {0} quarters',
+ 'quarter-past-one' => '{0} quarter ago',
+ 'quarter-past-other' => '{0} quarters ago',
+ 'quarter-short-future-one' => 'in {0} qtr.',
+ 'quarter-short-future-other' => 'in {0} qtrs.',
+ 'quarter-short-past-one' => '{0} qtr. ago',
+ 'quarter-short-past-other' => '{0} qtrs. ago',
+ 'second-future-one' => 'in {0} second',
+ 'second-future-other' => 'in {0} seconds',
+ 'second-one' => '{0} second',
+ 'second-other' => '{0} seconds',
+ 'second-past-one' => '{0} second ago',
+ 'second-past-other' => '{0} seconds ago',
+ 'second-short-future-one' => 'in {0} sec.',
+ 'second-short-future-other' => 'in {0} sec.',
+ 'second-short-past-one' => '{0} sec. ago',
+ 'second-short-past-other' => '{0} sec. ago',
+ 'week-future-one' => 'in {0} week',
+ 'week-future-other' => 'in {0} weeks',
+ 'week-one' => '{0} week',
+ 'week-other' => '{0} weeks',
+ 'week-past-one' => '{0} week ago',
+ 'week-past-other' => '{0} weeks ago',
+ 'week-short-future-one' => 'in {0} wk.',
+ 'week-short-future-other' => 'in {0} wk.',
+ 'week-short-past-one' => '{0} wk. ago',
+ 'week-short-past-other' => '{0} wk. ago',
+ 'year-future-one' => 'in {0} year',
+ 'year-future-other' => 'in {0} years',
+ 'year-one' => '{0} year',
+ 'year-other' => '{0} years',
+ 'year-past-one' => '{0} year ago',
+ 'year-past-other' => '{0} years ago',
+ 'year-short-future-one' => 'in {0} yr.',
+ 'year-short-future-other' => 'in {0} yr.',
+ 'year-short-past-one' => '{0} yr. ago',
+ 'year-short-past-other' => '{0} yr. ago',
+);
diff --git a/MLEB/cldr/CldrNames/CldrNamesEn_gb.php b/MLEB/cldr/CldrNames/CldrNamesEn_gb.php
new file mode 100644
index 00000000..79529ff8
--- /dev/null
+++ b/MLEB/cldr/CldrNames/CldrNamesEn_gb.php
@@ -0,0 +1,91 @@
+<?php
+
+$languageNames = array(
+ 'wal' => 'Walamo',
+);
+
+$currencyNames = array(
+ 'BYB' => 'Belarusian New Rouble (1994–1999)',
+ 'ILR' => 'Israeli Shekel (1980–1985)',
+ 'ILS' => 'Israeli New Shekel',
+ 'LVR' => 'Latvian Rouble',
+ 'MVP' => 'Maldivian Rupee',
+ 'RUR' => 'Russian Rouble (1991–1998)',
+ 'SCR' => 'Seychelles rupee',
+ 'SHP' => 'Saint Helena Pound',
+ 'STD' => 'São Tomé and Príncipe Dobra',
+ 'TJR' => 'Tajikistani Rouble',
+ 'TTD' => 'Trinidad and Tobago Dollar',
+ 'XOF' => 'CFA franc BCEAO',
+);
+
+$currencySymbols = array(
+ 'BYB' => 'BYB',
+ 'ILS' => '₪',
+ 'LVR' => 'LVR',
+ 'RUR' => 'RUR',
+ 'SCR' => 'SCR',
+ 'SHP' => 'SHP',
+ 'STD' => 'STD',
+ 'TJR' => 'TJR',
+ 'TTD' => 'TTD',
+ 'XOF' => 'CFA',
+);
+
+$countryNames = array(
+ 'AG' => 'Antigua and Barbuda',
+ 'BA' => 'Bosnia and Herzegovina',
+ 'BL' => 'Saint Barthélemy',
+ 'EA' => 'Ceuta and Melilla',
+ 'GB' => 'UK',
+ 'KN' => 'Saint Kitts and Nevis',
+ 'LC' => 'Saint Lucia',
+ 'MF' => 'Saint Martin',
+ 'PM' => 'Saint Pierre and Miquelon',
+ 'SH' => 'Saint Helena',
+ 'SJ' => 'Svalbard and Jan Mayen',
+ 'ST' => 'São Tomé and Príncipe',
+ 'TC' => 'Turks and Caicos Islands',
+ 'TT' => 'Trinidad and Tobago',
+ 'US' => 'US',
+ 'WF' => 'Wallis and Futuna',
+);
+
+$timeUnits = array(
+ 'day-narrow-future-one' => '+{0} day',
+ 'day-narrow-future-other' => '+{0} days',
+ 'day-narrow-past-one' => '-{0} day',
+ 'day-narrow-past-other' => '-{0} days',
+ 'day-short-future-one' => 'in {0} day',
+ 'day-short-future-other' => 'in {0} days',
+ 'day-short-past-one' => '{0} day ago',
+ 'day-short-past-other' => '{0} days ago',
+ 'hour-narrow-future-one' => '+{0} h',
+ 'hour-narrow-future-other' => '+{0} h',
+ 'hour-narrow-past-one' => '-{0} h',
+ 'hour-narrow-past-other' => '-{0} h',
+ 'minute-narrow-future-one' => '+{0} m',
+ 'minute-narrow-future-other' => '+{0} m',
+ 'minute-narrow-past-one' => '-{0} m',
+ 'minute-narrow-past-other' => '-{0} m',
+ 'month-narrow-future-one' => '+{0} mo.',
+ 'month-narrow-future-other' => '+{0} mo.',
+ 'month-narrow-past-one' => '-{0} mo.',
+ 'month-narrow-past-other' => '-{0} mo.',
+ 'quarter-narrow-future-one' => '+{0} Q',
+ 'quarter-narrow-future-other' => '+{0} Q',
+ 'quarter-narrow-past-one' => '-{0} Q',
+ 'quarter-narrow-past-other' => '-{0} Q',
+ 'second-narrow-future-one' => '+{0} s',
+ 'second-narrow-future-other' => '+{0} s',
+ 'second-narrow-past-one' => '-{0} s ago',
+ 'second-narrow-past-other' => '-{0} s ago',
+ 'week-narrow-future-one' => '+{0} wk.',
+ 'week-narrow-future-other' => '+{0} wk.',
+ 'week-narrow-past-one' => '-{0} wk.',
+ 'week-narrow-past-other' => '-{0} wk.',
+ 'year-narrow-future-one' => '+{0} yr.',
+ 'year-narrow-future-other' => '+{0} yr.',
+ 'year-narrow-past-one' => '-{0} yr.',
+ 'year-narrow-past-other' => '-{0} yr.',
+);
diff --git a/MLEB/cldr/CldrNames/CldrNamesEo.php b/MLEB/cldr/CldrNames/CldrNamesEo.php
new file mode 100644
index 00000000..d4c927eb
--- /dev/null
+++ b/MLEB/cldr/CldrNames/CldrNamesEo.php
@@ -0,0 +1,519 @@
+<?php
+
+$languageNames = array(
+ 'aa' => 'afara',
+ 'ab' => 'abĥaza',
+ 'af' => 'afrikansa',
+ 'ak' => 'akana',
+ 'am' => 'amhara',
+ 'ar' => 'araba',
+ 'ar-001' => 'moderna norma araba',
+ 'arn' => 'mapuĉa',
+ 'as' => 'asama',
+ 'ay' => 'ajmara',
+ 'az' => 'azerbajĝana',
+ 'ba' => 'baŝkira',
+ 'be' => 'belorusa',
+ 'bg' => 'bulgara',
+ 'bi' => 'bislamo',
+ 'bm' => 'bambara',
+ 'bn' => 'bengala',
+ 'bo' => 'tibeta',
+ 'br' => 'bretona',
+ 'brx' => 'bodoa',
+ 'bs' => 'bosnia',
+ 'ca' => 'kataluna',
+ 'chr' => 'ĉeroka',
+ 'ckb' => 'sorana',
+ 'co' => 'korsika',
+ 'cs' => 'ĉeĥa',
+ 'cy' => 'kimra',
+ 'da' => 'dana',
+ 'de' => 'germana',
+ 'de-at' => 'aŭstra germana',
+ 'de-ch' => 'svisa germana',
+ 'dsb' => 'malsuprasoraba',
+ 'dv' => 'mahla',
+ 'dz' => 'dzonko',
+ 'efi' => 'ibibioefika',
+ 'el' => 'greka',
+ 'en' => 'angla',
+ 'en-au' => 'aŭstralia angla',
+ 'en-ca' => 'kanada angla',
+ 'en-gb' => 'brita angla',
+ 'en-us' => 'usona angla',
+ 'eo' => 'esperanto',
+ 'es' => 'hispana',
+ 'es-419' => 'amerika hispana',
+ 'es-es' => 'eŭropa hispana',
+ 'es-mx' => 'meksika hispana',
+ 'et' => 'estona',
+ 'eu' => 'eŭska',
+ 'fa' => 'persa',
+ 'fi' => 'finna',
+ 'fil' => 'filipina',
+ 'fj' => 'fiĝia',
+ 'fo' => 'feroa',
+ 'fr' => 'franca',
+ 'fr-ca' => 'kanada franca',
+ 'fr-ch' => 'svisa franca',
+ 'fy' => 'frisa',
+ 'ga' => 'irlanda',
+ 'gd' => 'gaela',
+ 'gl' => 'galega',
+ 'gn' => 'gvarania',
+ 'gu' => 'guĝarata',
+ 'ha' => 'haŭsa',
+ 'haw' => 'havaja',
+ 'he' => 'hebrea',
+ 'hi' => 'hinda',
+ 'hr' => 'kroata',
+ 'ht' => 'haitia kreola',
+ 'hu' => 'hungara',
+ 'hy' => 'armena',
+ 'ia' => 'interlingvao',
+ 'id' => 'indonezia',
+ 'ie' => 'okcidentalo',
+ 'ik' => 'eskima',
+ 'is' => 'islanda',
+ 'it' => 'itala',
+ 'iu' => 'inuita',
+ 'ja' => 'japana',
+ 'jv' => 'java',
+ 'ka' => 'kartvela',
+ 'kk' => 'kazaĥa',
+ 'kl' => 'gronlanda',
+ 'km' => 'kmera',
+ 'kn' => 'kanara',
+ 'ko' => 'korea',
+ 'ks' => 'kaŝmira',
+ 'ku' => 'kurda',
+ 'ky' => 'kirgiza',
+ 'la' => 'latino',
+ 'lb' => 'luksemburga',
+ 'ln' => 'lingala',
+ 'lo' => 'laŭa',
+ 'lt' => 'litova',
+ 'lv' => 'latva',
+ 'mg' => 'malagasa',
+ 'mi' => 'maoria',
+ 'mk' => 'makedona',
+ 'ml' => 'malajalama',
+ 'mn' => 'mongola',
+ 'mr' => 'marata',
+ 'ms' => 'malaja',
+ 'mt' => 'malta',
+ 'mul' => 'pluraj lingvoj',
+ 'my' => 'birma',
+ 'na' => 'naura',
+ 'nb' => 'dannorvega',
+ 'ne' => 'nepala',
+ 'nl' => 'nederlanda',
+ 'nl-be' => 'flandra',
+ 'nn' => 'novnorvega',
+ 'no' => 'norvega',
+ 'oc' => 'okcitana',
+ 'om' => 'oroma',
+ 'or' => 'orijo',
+ 'pa' => 'panĝaba',
+ 'pl' => 'pola',
+ 'ps' => 'paŝtoa',
+ 'pt' => 'portugala',
+ 'pt-br' => 'brazilportugala',
+ 'pt-pt' => 'eŭropportugala',
+ 'qu' => 'keĉua',
+ 'rm' => 'romanĉa',
+ 'rn' => 'burunda',
+ 'ro' => 'rumana',
+ 'ru' => 'rusa',
+ 'rw' => 'ruanda',
+ 'sa' => 'sanskrito',
+ 'sd' => 'sinda',
+ 'sg' => 'sangoa',
+ 'sh' => 'serbo-Kroata',
+ 'si' => 'sinhala',
+ 'sk' => 'slovaka',
+ 'sl' => 'slovena',
+ 'sm' => 'samoa',
+ 'sn' => 'ŝona',
+ 'so' => 'somala',
+ 'sq' => 'albana',
+ 'sr' => 'serba',
+ 'ss' => 'svazia',
+ 'st' => 'sota',
+ 'su' => 'sunda',
+ 'sv' => 'sveda',
+ 'sw' => 'svahila',
+ 'ta' => 'tamila',
+ 'te' => 'telugua',
+ 'tg' => 'taĝika',
+ 'th' => 'taja',
+ 'ti' => 'tigraja',
+ 'tk' => 'turkmena',
+ 'tl' => 'tagaloga',
+ 'tlh' => 'klingona',
+ 'tn' => 'cvana',
+ 'to' => 'tongaa',
+ 'tr' => 'turka',
+ 'ts' => 'conga',
+ 'tt' => 'tatara',
+ 'tw' => 'tw',
+ 'ug' => 'ujgura',
+ 'uk' => 'ukraina',
+ 'und' => 'nekonata lingvo',
+ 'ur' => 'urduo',
+ 'uz' => 'uzbeka',
+ 'vi' => 'vjetnama',
+ 'vo' => 'volapuko',
+ 'wo' => 'volofa',
+ 'xh' => 'ksosa',
+ 'yi' => 'jida',
+ 'yo' => 'joruba',
+ 'za' => 'ĝuanga',
+ 'zh' => 'ĉina',
+ 'zh-hans' => 'ĉina simpligita',
+ 'zh-hant' => 'ĉina tradicia',
+ 'zu' => 'zulua',
+ 'zxx' => 'nelingvaĵo',
+);
+
+$currencyNames = array(
+ 'AUD' => 'Aŭstralia dolaro',
+ 'BRL' => 'Brazila realo',
+ 'CAD' => 'Kanada dolaro',
+ 'CHF' => 'Svisa franko',
+ 'CNY' => 'Ĉina juano',
+ 'DKK' => 'Dana krono',
+ 'EUR' => 'Eŭro',
+ 'GBP' => 'Brita pundo',
+ 'HKD' => 'Honkonga dolaro',
+ 'IDR' => 'Indonezia rupio',
+ 'INR' => 'Barata rupio',
+ 'JPY' => 'Japana eno',
+ 'KRW' => 'Sud-korea ŭono',
+ 'MXN' => 'Meksika peso',
+ 'NOK' => 'Norvega krono',
+ 'PLN' => 'Pola zloto',
+ 'RUB' => 'Rusa rublo',
+ 'SAR' => 'Sauda rialo',
+ 'SEK' => 'Sveda krono',
+ 'THB' => 'Taja bahto',
+ 'TRY' => 'Turka liro',
+ 'TWD' => 'Nova tajvana dolaro',
+ 'USD' => 'Usona dolaro',
+ 'XAG' => 'arĝento',
+ 'XAU' => 'oro',
+ 'XBB' => 'eŭropa monunuo',
+ 'XFO' => 'franca ora franko',
+ 'XPD' => 'paladio',
+ 'XPT' => 'plateno',
+ 'XXX' => 'Nekonata valuto',
+ 'ZAR' => 'Sud-afrika rando',
+);
+
+$currencySymbols = array(
+ 'AUD' => 'AU$',
+ 'BRL' => 'R$',
+ 'CAD' => 'CA$',
+ 'CHF' => 'CHF',
+ 'CNY' => 'CN¥',
+ 'DKK' => 'DKK',
+ 'EUR' => '€',
+ 'GBP' => '£',
+ 'HKD' => 'HK$',
+ 'IDR' => 'IDR',
+ 'INR' => '₹',
+ 'JPY' => 'JP¥',
+ 'KRW' => '₩',
+ 'MXN' => 'MX$',
+ 'NOK' => 'NOK',
+ 'PLN' => 'PLN',
+ 'RUB' => 'RUB',
+ 'SAR' => 'SAR',
+ 'SEK' => 'SEK',
+ 'THB' => '฿',
+ 'TRY' => '₺',
+ 'TWD' => 'NT$',
+ 'USD' => 'US$',
+ 'ZAR' => 'ZAR',
+);
+
+$countryNames = array(
+ 'AD' => 'Andoro',
+ 'AE' => 'Unuiĝintaj Arabaj Emirlandos',
+ 'AF' => 'Afganujo',
+ 'AG' => 'Antigvo-Barbudo',
+ 'AI' => 'Angvilo',
+ 'AL' => 'Albanujo',
+ 'AM' => 'Armenujo',
+ 'AN' => 'Nederlandaj Antiloj',
+ 'AO' => 'Angolo',
+ 'AQ' => 'Antarkto',
+ 'AR' => 'Argentino',
+ 'AT' => 'Aŭstrujo',
+ 'AU' => 'Aŭstralio',
+ 'AW' => 'Arubo',
+ 'AZ' => 'Azerbajĝano',
+ 'BA' => 'Bosnio-Hercegovino',
+ 'BB' => 'Barbado',
+ 'BD' => 'Bangladeŝo',
+ 'BE' => 'Belgujo',
+ 'BF' => 'Burkino',
+ 'BG' => 'Bulgarujo',
+ 'BH' => 'Barejno',
+ 'BI' => 'Burundo',
+ 'BJ' => 'Benino',
+ 'BM' => 'Bermudoj',
+ 'BN' => 'Brunejo',
+ 'BO' => 'Bolivio',
+ 'BR' => 'Brazilo',
+ 'BS' => 'Bahamoj',
+ 'BT' => 'Butano',
+ 'BW' => 'Bocvano',
+ 'BY' => 'Belorusujo',
+ 'BZ' => 'Belizo',
+ 'CA' => 'Kanado',
+ 'CF' => 'Centr-Afrika Respubliko',
+ 'CG' => 'Kongolo',
+ 'CH' => 'Svisujo',
+ 'CI' => 'Ebur-Bordo',
+ 'CK' => 'Kukinsuloj',
+ 'CL' => 'Ĉilio',
+ 'CM' => 'Kameruno',
+ 'CN' => 'Ĉinujo',
+ 'CO' => 'Kolombio',
+ 'CR' => 'Kostariko',
+ 'CU' => 'Kubo',
+ 'CV' => 'Kabo-Verdo',
+ 'CY' => 'Kipro',
+ 'CZ' => 'Ĉeĥujo',
+ 'DE' => 'Germanujo',
+ 'DJ' => 'Ĝibutio',
+ 'DK' => 'Danujo',
+ 'DM' => 'Dominiko',
+ 'DO' => 'Domingo',
+ 'DZ' => 'Alĝerio',
+ 'EC' => 'Ekvadoro',
+ 'EE' => 'Estonujo',
+ 'EG' => 'Egipto',
+ 'EH' => 'Okcidenta Saharo',
+ 'ER' => 'Eritreo',
+ 'ES' => 'Hispanujo',
+ 'ET' => 'Etiopujo',
+ 'FI' => 'Finnlando',
+ 'FJ' => 'Fiĝoj',
+ 'FM' => 'Mikronezio',
+ 'FO' => 'Ferooj',
+ 'FR' => 'Francujo',
+ 'GA' => 'Gabono',
+ 'GB' => 'Unuiĝinta Reĝlando',
+ 'GD' => 'Grenado',
+ 'GE' => 'Kartvelujo',
+ 'GF' => 'Franca Gviano',
+ 'GH' => 'Ganao',
+ 'GI' => 'Ĝibraltaro',
+ 'GL' => 'Gronlando',
+ 'GM' => 'Gambio',
+ 'GN' => 'Gvineo',
+ 'GP' => 'Gvadelupo',
+ 'GQ' => 'Ekvatora Gvineo',
+ 'GR' => 'Grekujo',
+ 'GS' => 'Sud-Georgio kaj Sud-Sandviĉinsuloj',
+ 'GT' => 'Gvatemalo',
+ 'GU' => 'Gvamo',
+ 'GW' => 'Gvineo-Bisaŭo',
+ 'GY' => 'Gujano',
+ 'HK' => 'Honkongo',
+ 'HM' => 'Herda kaj Makdonaldaj Insuloj',
+ 'HN' => 'Honduro',
+ 'HR' => 'Kroatujo',
+ 'HT' => 'Haitio',
+ 'HU' => 'Hungarujo',
+ 'ID' => 'Indonezio',
+ 'IE' => 'Irlando',
+ 'IL' => 'Israelo',
+ 'IN' => 'Hindujo',
+ 'IO' => 'Brita Hindoceana Teritorio',
+ 'IQ' => 'Irako',
+ 'IR' => 'Irano',
+ 'IS' => 'Islando',
+ 'IT' => 'Italujo',
+ 'JM' => 'Jamajko',
+ 'JO' => 'Jordanio',
+ 'JP' => 'Japanujo',
+ 'KE' => 'Kenjo',
+ 'KG' => 'Kirgizistano',
+ 'KH' => 'Kamboĝo',
+ 'KI' => 'Kiribato',
+ 'KM' => 'Komoroj',
+ 'KN' => 'Sent-Kristofo kaj Neviso',
+ 'KP' => 'Nord-Koreo',
+ 'KR' => 'Sud-Koreo',
+ 'KW' => 'Kuvajto',
+ 'KY' => 'Kejmanoj',
+ 'KZ' => 'Kazaĥstano',
+ 'LA' => 'Laoso',
+ 'LB' => 'Libano',
+ 'LC' => 'Sent-Lucio',
+ 'LI' => 'Liĥtenŝtejno',
+ 'LK' => 'Sri-Lanko',
+ 'LR' => 'Liberio',
+ 'LS' => 'Lesoto',
+ 'LT' => 'Litovujo',
+ 'LU' => 'Luksemburgo',
+ 'LV' => 'Latvujo',
+ 'LY' => 'Libio',
+ 'MA' => 'Maroko',
+ 'MC' => 'Monako',
+ 'MD' => 'Moldavujo',
+ 'MG' => 'Madagaskaro',
+ 'MH' => 'Marŝaloj',
+ 'MK' => 'Makedonujo',
+ 'ML' => 'Malio',
+ 'MM' => 'Mjanmao',
+ 'MN' => 'Mongolujo',
+ 'MP' => 'Nord-Marianoj',
+ 'MQ' => 'Martiniko',
+ 'MR' => 'Maŭritanujo',
+ 'MT' => 'Malto',
+ 'MU' => 'Maŭricio',
+ 'MV' => 'Maldivoj',
+ 'MW' => 'Malavio',
+ 'MX' => 'Meksiko',
+ 'MY' => 'Malajzio',
+ 'MZ' => 'Mozambiko',
+ 'NA' => 'Namibio',
+ 'NC' => 'Nov-Kaledonio',
+ 'NE' => 'Niĝero',
+ 'NF' => 'Norfolkinsulo',
+ 'NG' => 'Niĝerio',
+ 'NI' => 'Nikaragvo',
+ 'NL' => 'Nederlando',
+ 'NO' => 'Norvegujo',
+ 'NP' => 'Nepalo',
+ 'NR' => 'Nauro',
+ 'NU' => 'Niuo',
+ 'NZ' => 'Nov-Zelando',
+ 'OM' => 'Omano',
+ 'PA' => 'Panamo',
+ 'PE' => 'Peruo',
+ 'PF' => 'Franca Polinezio',
+ 'PG' => 'Papuo-Nov-Gvineo',
+ 'PH' => 'Filipinoj',
+ 'PK' => 'Pakistano',
+ 'PL' => 'Pollando',
+ 'PM' => 'Sent-Piero kaj Mikelono',
+ 'PN' => 'Pitkarna Insulo',
+ 'PR' => 'Puerto-Riko',
+ 'PT' => 'Portugalujo',
+ 'PW' => 'Belaŭo',
+ 'PY' => 'Paragvajo',
+ 'QA' => 'Kataro',
+ 'RE' => 'Reunio',
+ 'RO' => 'Rumanujo',
+ 'RU' => 'Rusujo',
+ 'RW' => 'Ruando',
+ 'SA' => 'Saŭda Arabujo',
+ 'SB' => 'Salomonoj',
+ 'SC' => 'Sejŝeloj',
+ 'SD' => 'Sudano',
+ 'SE' => 'Svedujo',
+ 'SG' => 'Singapuro',
+ 'SH' => 'Sent-Heleno',
+ 'SI' => 'Slovenujo',
+ 'SJ' => 'Svalbardo kaj Jan-Majen-insulo',
+ 'SK' => 'Slovakujo',
+ 'SL' => 'Siera-Leono',
+ 'SM' => 'San-Marino',
+ 'SN' => 'Senegalo',
+ 'SO' => 'Somalujo',
+ 'SR' => 'Surinamo',
+ 'SS' => 'Sud-Sudano',
+ 'ST' => 'Sao-Tomeo kaj Principeo',
+ 'SV' => 'Salvadoro',
+ 'SY' => 'Sirio',
+ 'SZ' => 'Svazilando',
+ 'TD' => 'Ĉado',
+ 'TG' => 'Togolo',
+ 'TH' => 'Tajlando',
+ 'TJ' => 'Taĝikujo',
+ 'TM' => 'Turkmenujo',
+ 'TN' => 'Tunizio',
+ 'TO' => 'Tongo',
+ 'TR' => 'Turkujo',
+ 'TT' => 'Trinidado kaj Tobago',
+ 'TV' => 'Tuvalo',
+ 'TW' => 'Tajvano',
+ 'TZ' => 'Tanzanio',
+ 'UA' => 'Ukrajno',
+ 'UG' => 'Ugando',
+ 'UM' => 'Usonaj malgrandaj insuloj',
+ 'US' => 'Usono',
+ 'UY' => 'Urugvajo',
+ 'UZ' => 'Uzbekujo',
+ 'VA' => 'Vatikano',
+ 'VC' => 'Sent-Vincento kaj la Grenadinoj',
+ 'VE' => 'Venezuelo',
+ 'VG' => 'Britaj Virgulininsuloj',
+ 'VI' => 'Usonaj Virgulininsuloj',
+ 'VN' => 'Vjetnamo',
+ 'VU' => 'Vanuatuo',
+ 'WF' => 'Valiso kaj Futuno',
+ 'WS' => 'Samoo',
+ 'YE' => 'Jemeno',
+ 'YT' => 'Majoto',
+ 'ZA' => 'Sud-Afriko',
+ 'ZM' => 'Zambio',
+ 'ZW' => 'Zimbabvo',
+);
+
+$timeUnits = array(
+ 'day-future-one' => 'post {0} tago',
+ 'day-future-other' => 'post {0} tagoj',
+ 'day-one' => '{0} tago',
+ 'day-other' => '{0} tagoj',
+ 'day-past-one' => 'antaŭ {0} tago',
+ 'day-past-other' => 'antaŭ {0} tagoj',
+ 'hour-future-one' => 'post {0} horo',
+ 'hour-future-other' => 'post {0} horoj',
+ 'hour-one' => '{0} horo',
+ 'hour-other' => '{0} horoj',
+ 'hour-past-one' => 'antaŭ {0} horo',
+ 'hour-past-other' => 'antaŭ {0} horoj',
+ 'millisecond-one' => '{0} milisekundo',
+ 'millisecond-other' => '{0} milisekundoj',
+ 'minute-future-one' => 'post {0} minuto',
+ 'minute-future-other' => 'post {0} minutoj',
+ 'minute-one' => '{0} minuto',
+ 'minute-other' => '{0} minutoj',
+ 'minute-past-one' => 'antaŭ {0} minuto',
+ 'minute-past-other' => 'antaŭ {0} minutoj',
+ 'month-future-one' => 'post {0} monato',
+ 'month-future-other' => 'post {0} monatoj',
+ 'month-one' => '{0} monato',
+ 'month-other' => '{0} monatoj',
+ 'month-past-one' => 'antaŭ {0} monato',
+ 'month-past-other' => 'antaŭ {0} monatoj',
+ 'quarter-future-one' => 'post {0} kvaronjaro',
+ 'quarter-future-other' => 'post {0} kvaronjaroj',
+ 'quarter-past-one' => 'antaŭ {0} kvaronjaro',
+ 'quarter-past-other' => 'antaŭ {0} kvaronjaroj',
+ 'second-future-one' => 'post {0} sekundo',
+ 'second-future-other' => 'post {0} sekundoj',
+ 'second-one' => '{0} sekundo',
+ 'second-other' => '{0} sekundoj',
+ 'second-past-one' => 'antaŭ {0} sekundo',
+ 'second-past-other' => 'antaŭ {0} sekundoj',
+ 'week-future-one' => 'post {0} semajno',
+ 'week-future-other' => 'post {0} semajnoj',
+ 'week-one' => '{0} semajno',
+ 'week-other' => '{0} semajnoj',
+ 'week-past-one' => 'antaŭ {0} semajno',
+ 'week-past-other' => 'antaŭ {0} semajnoj',
+ 'year-future-one' => 'post {0} jaro',
+ 'year-future-other' => 'post {0} jaroj',
+ 'year-one' => '{0} jaro',
+ 'year-other' => '{0} jaroj',
+ 'year-past-one' => 'antaŭ {0} jaro',
+ 'year-past-other' => 'antaŭ {0} jaroj',
+);
diff --git a/MLEB/cldr/CldrNames/CldrNamesEs.php b/MLEB/cldr/CldrNames/CldrNamesEs.php
new file mode 100644
index 00000000..87e13d06
--- /dev/null
+++ b/MLEB/cldr/CldrNames/CldrNamesEs.php
@@ -0,0 +1,1335 @@
+<?php
+
+$languageNames = array(
+ 'aa' => 'afar',
+ 'ab' => 'abjasio',
+ 'ace' => 'acehnés',
+ 'ach' => 'acoli',
+ 'ada' => 'adangme',
+ 'ady' => 'adigeo',
+ 'ae' => 'avéstico',
+ 'af' => 'afrikáans',
+ 'afh' => 'afrihili',
+ 'agq' => 'aghem',
+ 'ain' => 'ainu',
+ 'ak' => 'akan',
+ 'akk' => 'acadio',
+ 'ale' => 'aleutiano',
+ 'alt' => 'altái meridional',
+ 'am' => 'amárico',
+ 'an' => 'aragonés',
+ 'ang' => 'inglés antiguo',
+ 'anp' => 'angika',
+ 'ar' => 'árabe',
+ 'ar-001' => 'árabe estándar moderno',
+ 'arc' => 'arameo',
+ 'arn' => 'araucano',
+ 'arp' => 'arapaho',
+ 'arw' => 'arahuaco',
+ 'as' => 'asamés',
+ 'asa' => 'asu',
+ 'ast' => 'asturiano',
+ 'av' => 'avar',
+ 'awa' => 'avadhi',
+ 'ay' => 'aimara',
+ 'az' => 'azerí',
+ 'ba' => 'bashkir',
+ 'bal' => 'baluchi',
+ 'ban' => 'balinés',
+ 'bas' => 'basa',
+ 'bax' => 'bamun',
+ 'bbj' => 'ghomala',
+ 'be' => 'bielorruso',
+ 'bej' => 'beja',
+ 'bem' => 'bemba',
+ 'bez' => 'bena',
+ 'bfd' => 'bafut',
+ 'bg' => 'búlgaro',
+ 'bho' => 'bhojpuri',
+ 'bi' => 'bislama',
+ 'bik' => 'bicol',
+ 'bin' => 'bini',
+ 'bkm' => 'kom',
+ 'bla' => 'siksika',
+ 'bm' => 'bambara',
+ 'bn' => 'bengalí',
+ 'bo' => 'tibetano',
+ 'br' => 'bretón',
+ 'bra' => 'braj',
+ 'brx' => 'bodo',
+ 'bs' => 'bosnio',
+ 'bss' => 'akoose',
+ 'bua' => 'buriat',
+ 'bug' => 'buginés',
+ 'bum' => 'bulu',
+ 'byn' => 'blin',
+ 'byv' => 'medumba',
+ 'ca' => 'catalán',
+ 'cad' => 'caddo',
+ 'car' => 'caribe',
+ 'cay' => 'cayuga',
+ 'cch' => 'atsam',
+ 'ce' => 'checheno',
+ 'ceb' => 'cebuano',
+ 'cgg' => 'chiga',
+ 'ch' => 'chamorro',
+ 'chb' => 'chibcha',
+ 'chg' => 'chagatái',
+ 'chk' => 'trukés',
+ 'chm' => 'marí',
+ 'chn' => 'jerga chinuk',
+ 'cho' => 'choctaw',
+ 'chp' => 'chipewyan',
+ 'chr' => 'cheroqui',
+ 'chy' => 'cheyene',
+ 'ckb' => 'kurdo sorani',
+ 'co' => 'corso',
+ 'cop' => 'copto',
+ 'cr' => 'cree',
+ 'crh' => 'tártaro de Crimea',
+ 'cs' => 'checo',
+ 'csb' => 'casubio',
+ 'cu' => 'eslavo eclesiástico',
+ 'cv' => 'chuvash',
+ 'cy' => 'galés',
+ 'da' => 'danés',
+ 'dak' => 'dakota',
+ 'dar' => 'dargva',
+ 'dav' => 'taita',
+ 'de' => 'alemán',
+ 'de-at' => 'alemán austríaco',
+ 'de-ch' => 'alto alemán de Suiza',
+ 'del' => 'delaware',
+ 'den' => 'slave',
+ 'dgr' => 'dogrib',
+ 'din' => 'dinka',
+ 'dje' => 'zarma',
+ 'doi' => 'dogri',
+ 'dsb' => 'sorbio inferior',
+ 'dua' => 'duala',
+ 'dum' => 'neerlandés medieval',
+ 'dv' => 'divehi',
+ 'dyo' => 'jola-fonyi',
+ 'dyu' => 'diula',
+ 'dz' => 'dzongkha',
+ 'dzg' => 'dazaga',
+ 'ebu' => 'embu',
+ 'ee' => 'ewé',
+ 'efi' => 'efik',
+ 'egy' => 'egipcio antiguo',
+ 'eka' => 'ekajuk',
+ 'el' => 'griego',
+ 'elx' => 'elamita',
+ 'en' => 'inglés',
+ 'en-au' => 'inglés australiano',
+ 'en-ca' => 'inglés canadiense',
+ 'en-gb' => 'inglés británico',
+ 'en-us' => 'inglés estadounidense',
+ 'enm' => 'inglés medieval',
+ 'eo' => 'esperanto',
+ 'es' => 'español',
+ 'es-419' => 'español de América',
+ 'es-es' => 'español de España',
+ 'es-mx' => 'español de México',
+ 'et' => 'estonio',
+ 'eu' => 'euskera',
+ 'ewo' => 'ewondo',
+ 'fa' => 'persa',
+ 'fan' => 'fang',
+ 'fat' => 'fanti',
+ 'ff' => 'fula',
+ 'fi' => 'finés',
+ 'fil' => 'filipino',
+ 'fj' => 'fiyiano',
+ 'fo' => 'feroés',
+ 'fon' => 'fon',
+ 'fr' => 'francés',
+ 'fr-ca' => 'francés canadiense',
+ 'fr-ch' => 'francés suizo',
+ 'frm' => 'francés medieval',
+ 'fro' => 'francés antiguo',
+ 'frr' => 'frisón septentrional',
+ 'frs' => 'frisón oriental',
+ 'fur' => 'friulano',
+ 'fy' => 'frisón occidental',
+ 'ga' => 'irlandés',
+ 'gaa' => 'ga',
+ 'gag' => 'gagauzo',
+ 'gay' => 'gayo',
+ 'gba' => 'gbaya',
+ 'gd' => 'gaélico escocés',
+ 'gez' => 'geez',
+ 'gil' => 'gilbertés',
+ 'gl' => 'gallego',
+ 'gmh' => 'alemán de la alta edad media',
+ 'gn' => 'guaraní',
+ 'goh' => 'alemán de la alta edad antigua',
+ 'gon' => 'gondi',
+ 'gor' => 'gorontalo',
+ 'got' => 'gótico',
+ 'grb' => 'grebo',
+ 'grc' => 'griego antiguo',
+ 'gsw' => 'alemán suizo',
+ 'gu' => 'gujarati',
+ 'guz' => 'gusii',
+ 'gv' => 'gaélico manés',
+ 'gwi' => 'kutchin',
+ 'ha' => 'hausa',
+ 'hai' => 'haida',
+ 'haw' => 'hawaiano',
+ 'he' => 'hebreo',
+ 'hi' => 'hindi',
+ 'hil' => 'hiligaynon',
+ 'hit' => 'hitita',
+ 'hmn' => 'hmong',
+ 'ho' => 'hiri motu',
+ 'hr' => 'croata',
+ 'hsb' => 'sorbio superior',
+ 'ht' => 'haitiano',
+ 'hu' => 'húngaro',
+ 'hup' => 'hupa',
+ 'hy' => 'armenio',
+ 'hz' => 'herero',
+ 'ia' => 'interlingua',
+ 'iba' => 'iban',
+ 'ibb' => 'ibibio',
+ 'id' => 'indonesio',
+ 'ie' => 'interlingue',
+ 'ig' => 'igbo',
+ 'ii' => 'yi de Sichuán',
+ 'ik' => 'inupiaq',
+ 'ilo' => 'ilocano',
+ 'inh' => 'ingush',
+ 'io' => 'ido',
+ 'is' => 'islandés',
+ 'it' => 'italiano',
+ 'iu' => 'inuktitut',
+ 'ja' => 'japonés',
+ 'jbo' => 'lojban',
+ 'jgo' => 'ngomba',
+ 'jmc' => 'machame',
+ 'jpr' => 'judeo-persa',
+ 'jrb' => 'judeo-árabe',
+ 'jv' => 'javanés',
+ 'ka' => 'georgiano',
+ 'kaa' => 'karakalpako',
+ 'kab' => 'cabila',
+ 'kac' => 'kachin',
+ 'kaj' => 'jju',
+ 'kam' => 'kamba',
+ 'kaw' => 'kawi',
+ 'kbd' => 'kabardiano',
+ 'kbl' => 'kanembu',
+ 'kcg' => 'tyap',
+ 'kde' => 'makonde',
+ 'kea' => 'criollo caboverdiano',
+ 'kfo' => 'koro',
+ 'kg' => 'kongo',
+ 'kha' => 'khasi',
+ 'kho' => 'kotanés',
+ 'khq' => 'koyra chiini',
+ 'ki' => 'kikuyu',
+ 'kj' => 'kuanyama',
+ 'kk' => 'kazajo',
+ 'kkj' => 'kako',
+ 'kl' => 'groenlandés',
+ 'kln' => 'kalenjin',
+ 'km' => 'jemer',
+ 'kmb' => 'kimbundu',
+ 'kn' => 'canarés',
+ 'ko' => 'coreano',
+ 'koi' => 'komi permio',
+ 'kok' => 'konkaní',
+ 'kos' => 'kosraeano',
+ 'kpe' => 'kpelle',
+ 'kr' => 'kanuri',
+ 'krc' => 'karachay-balkar',
+ 'krl' => 'carelio',
+ 'kru' => 'kurukh',
+ 'ks' => 'cachemiro',
+ 'ksb' => 'shambala',
+ 'ksf' => 'bafia',
+ 'ksh' => 'kölsch',
+ 'ku' => 'kurdo',
+ 'kum' => 'kumyk',
+ 'kut' => 'kutenai',
+ 'kv' => 'komi',
+ 'kw' => 'córnico',
+ 'ky' => 'kirguís',
+ 'la' => 'latín',
+ 'lad' => 'ladino',
+ 'lag' => 'langi',
+ 'lah' => 'lahnda',
+ 'lam' => 'lamba',
+ 'lb' => 'luxemburgués',
+ 'lez' => 'lezgiano',
+ 'lg' => 'ganda',
+ 'li' => 'limburgués',
+ 'lkt' => 'lakota',
+ 'ln' => 'lingala',
+ 'lo' => 'laosiano',
+ 'lol' => 'mongo',
+ 'loz' => 'lozi',
+ 'lt' => 'lituano',
+ 'lu' => 'luba-katanga',
+ 'lua' => 'luba-lulua',
+ 'lui' => 'luiseño',
+ 'lun' => 'lunda',
+ 'luo' => 'luo',
+ 'lus' => 'lushai',
+ 'luy' => 'luyia',
+ 'lv' => 'letón',
+ 'mad' => 'madurés',
+ 'maf' => 'mafa',
+ 'mag' => 'magahi',
+ 'mai' => 'maithili',
+ 'mak' => 'macasar',
+ 'man' => 'mandingo',
+ 'mas' => 'masái',
+ 'mde' => 'maba',
+ 'mdf' => 'moksha',
+ 'mdr' => 'mandar',
+ 'men' => 'mende',
+ 'mer' => 'meru',
+ 'mfe' => 'criollo mauriciano',
+ 'mg' => 'malgache',
+ 'mga' => 'irlandés medieval',
+ 'mgh' => 'makhuwa-meetto',
+ 'mgo' => 'meta’',
+ 'mh' => 'marshalés',
+ 'mi' => 'maorí',
+ 'mic' => 'micmac',
+ 'min' => 'minangkabau',
+ 'mk' => 'macedonio',
+ 'ml' => 'malayalam',
+ 'mn' => 'mongol',
+ 'mnc' => 'manchú',
+ 'mni' => 'manipuri',
+ 'moh' => 'mohawk',
+ 'mos' => 'mossi',
+ 'mr' => 'marathi',
+ 'ms' => 'malayo',
+ 'mt' => 'maltés',
+ 'mua' => 'mundang',
+ 'mul' => 'lenguas múltiples',
+ 'mus' => 'creek',
+ 'mwl' => 'mirandés',
+ 'mwr' => 'marwari',
+ 'my' => 'birmano',
+ 'mye' => 'myene',
+ 'myv' => 'erzya',
+ 'na' => 'nauruano',
+ 'nap' => 'napolitano',
+ 'naq' => 'nama',
+ 'nb' => 'bokmal noruego',
+ 'nd' => 'ndebele septentrional',
+ 'nds' => 'bajo alemán',
+ 'ne' => 'nepalí',
+ 'new' => 'newari',
+ 'ng' => 'ndonga',
+ 'nia' => 'nias',
+ 'niu' => 'niueano',
+ 'nl' => 'neerlandés',
+ 'nl-be' => 'flamenco',
+ 'nmg' => 'kwasio',
+ 'nn' => 'nynorsk noruego',
+ 'nnh' => 'ngiemboon',
+ 'no' => 'noruego',
+ 'nog' => 'nogai',
+ 'non' => 'nórdico antiguo',
+ 'nqo' => 'n’ko',
+ 'nr' => 'ndebele meridional',
+ 'nso' => 'sotho septentrional',
+ 'nus' => 'nuer',
+ 'nv' => 'navajo',
+ 'nwc' => 'newari clásico',
+ 'ny' => 'nyanja',
+ 'nym' => 'nyamwezi',
+ 'nyn' => 'nyankole',
+ 'nyo' => 'nyoro',
+ 'nzi' => 'nzima',
+ 'oc' => 'occitano',
+ 'oj' => 'ojibwa',
+ 'om' => 'oromo',
+ 'or' => 'oriya',
+ 'os' => 'osético',
+ 'osa' => 'osage',
+ 'ota' => 'turco otomano',
+ 'pa' => 'punjabí',
+ 'pag' => 'pangasinán',
+ 'pal' => 'pahlavi',
+ 'pam' => 'pampanga',
+ 'pap' => 'papiamento',
+ 'pau' => 'palauano',
+ 'peo' => 'persa antiguo',
+ 'phn' => 'fenicio',
+ 'pi' => 'pali',
+ 'pl' => 'polaco',
+ 'pon' => 'pohnpeiano',
+ 'pro' => 'provenzal antiguo',
+ 'ps' => 'pastún',
+ 'pt' => 'portugués',
+ 'pt-br' => 'portugués de Brasil',
+ 'pt-pt' => 'portugués de Portugal',
+ 'qu' => 'quechua',
+ 'quc' => 'quiché',
+ 'raj' => 'rajasthani',
+ 'rap' => 'rapanui',
+ 'rar' => 'rarotongano',
+ 'rm' => 'retorrománico',
+ 'rn' => 'kiroundi',
+ 'ro' => 'rumano',
+ 'ro-md' => 'moldavo',
+ 'rof' => 'rombo',
+ 'rom' => 'romaní',
+ 'ru' => 'ruso',
+ 'rup' => 'arrumano',
+ 'rw' => 'kinyarwanda',
+ 'rwk' => 'rwa',
+ 'sa' => 'sánscrito',
+ 'sad' => 'sandawe',
+ 'sah' => 'sakha',
+ 'sam' => 'arameo samaritano',
+ 'saq' => 'samburu',
+ 'sas' => 'sasak',
+ 'sat' => 'santali',
+ 'sba' => 'ngambay',
+ 'sbp' => 'sangu',
+ 'sc' => 'sardo',
+ 'scn' => 'siciliano',
+ 'sco' => 'escocés',
+ 'sd' => 'sindhi',
+ 'se' => 'sami septentrional',
+ 'see' => 'seneca',
+ 'seh' => 'sena',
+ 'sel' => 'selkup',
+ 'ses' => 'koyraboro senni',
+ 'sg' => 'sango',
+ 'sga' => 'irlandés antiguo',
+ 'sh' => 'serbocroata',
+ 'shi' => 'tashelhit',
+ 'shn' => 'shan',
+ 'shu' => 'árabe chadiano',
+ 'si' => 'cingalés',
+ 'sid' => 'sidamo',
+ 'sk' => 'eslovaco',
+ 'sl' => 'esloveno',
+ 'sm' => 'samoano',
+ 'sma' => 'sami meridional',
+ 'smj' => 'sami lule',
+ 'smn' => 'sami inari',
+ 'sms' => 'sami skolt',
+ 'sn' => 'shona',
+ 'snk' => 'soninké',
+ 'so' => 'somalí',
+ 'sog' => 'sogdiano',
+ 'sq' => 'albanés',
+ 'sr' => 'serbio',
+ 'srn' => 'sranan tongo',
+ 'srr' => 'serer',
+ 'ss' => 'siswati',
+ 'ssy' => 'saho',
+ 'st' => 'sesotho meridional',
+ 'su' => 'sundanés',
+ 'suk' => 'sukuma',
+ 'sus' => 'susu',
+ 'sux' => 'sumerio',
+ 'sv' => 'sueco',
+ 'sw' => 'swahili',
+ 'swb' => 'comorense',
+ 'swc' => 'swahili del Congo',
+ 'syc' => 'siríaco clásico',
+ 'syr' => 'siriaco',
+ 'ta' => 'tamil',
+ 'te' => 'telugu',
+ 'tem' => 'temne',
+ 'teo' => 'teso',
+ 'ter' => 'tereno',
+ 'tet' => 'tetún',
+ 'tg' => 'tayiko',
+ 'th' => 'tailandés',
+ 'ti' => 'tigriña',
+ 'tig' => 'tigré',
+ 'tiv' => 'tiv',
+ 'tk' => 'turcomano',
+ 'tkl' => 'tokelauano',
+ 'tl' => 'tagalo',
+ 'tlh' => 'klingon',
+ 'tli' => 'tlingit',
+ 'tmh' => 'tamashek',
+ 'tn' => 'setchwana',
+ 'to' => 'tongano',
+ 'tog' => 'tonga del Nyasa',
+ 'tpi' => 'tok pisin',
+ 'tr' => 'turco',
+ 'trv' => 'taroko',
+ 'ts' => 'tsonga',
+ 'tsi' => 'tsimshiano',
+ 'tt' => 'tártaro',
+ 'tum' => 'tumbuka',
+ 'tvl' => 'tuvaluano',
+ 'tw' => 'twi',
+ 'twq' => 'tasawaq',
+ 'ty' => 'tahitiano',
+ 'tyv' => 'tuviniano',
+ 'tzm' => 'tamazight del Marruecos Central',
+ 'udm' => 'udmurt',
+ 'ug' => 'uigur',
+ 'uga' => 'ugarítico',
+ 'uk' => 'ucraniano',
+ 'umb' => 'umbundu',
+ 'und' => 'lengua desconocida',
+ 'ur' => 'urdu',
+ 'uz' => 'uzbeko',
+ 'vai' => 'vai',
+ 've' => 'venda',
+ 'vi' => 'vietnamita',
+ 'vo' => 'volapük',
+ 'vot' => 'vótico',
+ 'vun' => 'kivunjo',
+ 'wa' => 'valón',
+ 'wae' => 'walser',
+ 'wal' => 'walamo',
+ 'war' => 'waray',
+ 'was' => 'washo',
+ 'wo' => 'wólof',
+ 'xal' => 'kalmyk',
+ 'xh' => 'xhosa',
+ 'xog' => 'soga',
+ 'yao' => 'yao',
+ 'yap' => 'yapés',
+ 'yav' => 'yangben',
+ 'ybb' => 'yemba',
+ 'yi' => 'yídish',
+ 'yo' => 'yoruba',
+ 'yue' => 'cantonés',
+ 'za' => 'zhuang',
+ 'zap' => 'zapoteco',
+ 'zbl' => 'símbolos Bliss',
+ 'zen' => 'zenaga',
+ 'zgh' => 'tamazight',
+ 'zh' => 'chino',
+ 'zh-hans' => 'chino simplificado',
+ 'zh-hant' => 'chino tradicional',
+ 'zu' => 'zulú',
+ 'zun' => 'zuni',
+ 'zxx' => 'sin contenido lingüístico',
+ 'zza' => 'zazaki',
+);
+
+$currencyNames = array(
+ 'ADP' => 'peseta andorrana',
+ 'AED' => 'dírham de los Emiratos Árabes Unidos',
+ 'AFA' => 'afgani (1927–2002)',
+ 'AFN' => 'afgani',
+ 'ALL' => 'lek',
+ 'AMD' => 'dram armenio',
+ 'ANG' => 'florín de las Antillas Neerlandesas',
+ 'AOA' => 'kuanza',
+ 'AOK' => 'kwanza angoleño (1977–1990)',
+ 'AON' => 'nuevo kwanza angoleño (1990–2000)',
+ 'AOR' => 'kwanza reajustado angoleño (1995–1999)',
+ 'ARA' => 'austral argentino',
+ 'ARP' => 'peso argentino (1983–1985)',
+ 'ARS' => 'peso argentino',
+ 'ATS' => 'chelín austriaco',
+ 'AUD' => 'dólar australiano',
+ 'AWG' => 'florín de Aruba',
+ 'AZM' => 'manat azerí (1993–2006)',
+ 'AZN' => 'manat azerí',
+ 'BAD' => 'dinar bosnio',
+ 'BAM' => 'marco convertible de Bosnia-Herzegovina',
+ 'BBD' => 'dólar de Barbados',
+ 'BDT' => 'taka',
+ 'BEC' => 'franco belga (convertible)',
+ 'BEF' => 'franco belga',
+ 'BEL' => 'franco belga (financiero)',
+ 'BGL' => 'lev fuerte búlgaro',
+ 'BGN' => 'leva',
+ 'BHD' => 'dinar bahreiní',
+ 'BIF' => 'franco burundés',
+ 'BMD' => 'dólar de Bermudas',
+ 'BND' => 'dólar bruneano',
+ 'BOB' => 'boliviano',
+ 'BOP' => 'peso boliviano',
+ 'BOV' => 'MVDOL boliviano',
+ 'BRB' => 'nuevo cruceiro brasileño (1967–1986)',
+ 'BRC' => 'cruzado brasileño',
+ 'BRE' => 'cruceiro brasileño (1990–1993)',
+ 'BRL' => 'real brasileño',
+ 'BRN' => 'nuevo cruzado brasileño',
+ 'BRR' => 'cruceiro brasileño',
+ 'BSD' => 'dólar de las Bahamas',
+ 'BTN' => 'gultrum',
+ 'BUK' => 'kyat birmano',
+ 'BWP' => 'pula',
+ 'BYB' => 'nuevo rublo bielorruso (1994–1999)',
+ 'BYR' => 'rublo bielorruso',
+ 'BZD' => 'dólar de Belice',
+ 'CAD' => 'dólar canadiense',
+ 'CDF' => 'franco congoleño',
+ 'CHE' => 'euro WIR',
+ 'CHF' => 'franco suizo',
+ 'CHW' => 'franco WIR',
+ 'CLF' => 'unidad de fomento chilena',
+ 'CLP' => 'peso chileno',
+ 'CNY' => 'yuan',
+ 'COP' => 'peso colombiano',
+ 'COU' => 'unidad de valor real colombiana',
+ 'CRC' => 'colón costarricense',
+ 'CSD' => 'antiguo dinar serbio',
+ 'CSK' => 'corona fuerte checoslovaca',
+ 'CUC' => 'peso cubano convertible',
+ 'CUP' => 'peso cubano',
+ 'CVE' => 'escudo de Cabo Verde',
+ 'CYP' => 'libra chipriota',
+ 'CZK' => 'corona checa',
+ 'DDM' => 'ostmark de Alemania del Este',
+ 'DEM' => 'marco alemán',
+ 'DJF' => 'franco yibutiano',
+ 'DKK' => 'corona danesa',
+ 'DOP' => 'peso dominicano',
+ 'DZD' => 'dinar argelino',
+ 'ECS' => 'sucre ecuatoriano',
+ 'ECV' => 'unidad de valor constante (UVC) ecuatoriana',
+ 'EEK' => 'corona estonia',
+ 'EGP' => 'libra egipcia',
+ 'ERN' => 'nakfa eritreo',
+ 'ESA' => 'peseta española (cuenta A)',
+ 'ESB' => 'peseta española (cuenta convertible)',
+ 'ESP' => 'peseta española',
+ 'ETB' => 'bir',
+ 'EUR' => 'euro',
+ 'FIM' => 'marco finlandés',
+ 'FJD' => 'dólar fiyiano',
+ 'FKP' => 'libra de las Islas Malvinas',
+ 'FRF' => 'franco francés',
+ 'GBP' => 'libra esterlina',
+ 'GEK' => 'kupon larit georgiano',
+ 'GEL' => 'lari',
+ 'GHC' => 'cedi ghanés (1979–2007)',
+ 'GHS' => 'cedi',
+ 'GIP' => 'libra gibraltareña',
+ 'GMD' => 'dalasi',
+ 'GNF' => 'franco guineano',
+ 'GNS' => 'syli guineano',
+ 'GQE' => 'ekuele de Guinea Ecuatorial',
+ 'GRD' => 'dracma griego',
+ 'GTQ' => 'quetzal guatemalteco',
+ 'GWE' => 'escudo de Guinea Portuguesa',
+ 'GWP' => 'peso de Guinea-Bissáu',
+ 'GYD' => 'dólar guyanés',
+ 'HKD' => 'dólar de Hong Kong',
+ 'HNL' => 'lempira hondureño',
+ 'HRD' => 'dinar croata',
+ 'HRK' => 'kuna',
+ 'HTG' => 'gourde haitiano',
+ 'HUF' => 'forinto',
+ 'IDR' => 'rupia indonesia',
+ 'IEP' => 'libra irlandesa',
+ 'ILP' => 'libra israelí',
+ 'ILS' => 'nuevo séquel israelí',
+ 'INR' => 'rupia india',
+ 'IQD' => 'dinar iraquí',
+ 'IRR' => 'rial iraní',
+ 'ISK' => 'corona islandesa',
+ 'ITL' => 'lira italiana',
+ 'JMD' => 'dólar de Jamaica',
+ 'JOD' => 'dinar jordano',
+ 'JPY' => 'yen',
+ 'KES' => 'chelín keniano',
+ 'KGS' => 'som',
+ 'KHR' => 'riel',
+ 'KMF' => 'franco comorense',
+ 'KPW' => 'won norcoreano',
+ 'KRW' => 'won surcoreano',
+ 'KWD' => 'dinar kuwaití',
+ 'KYD' => 'dólar de las Islas Caimán',
+ 'KZT' => 'tengue',
+ 'LAK' => 'kip',
+ 'LBP' => 'libra libanesa',
+ 'LKR' => 'rupia de Sri Lanka',
+ 'LRD' => 'dólar liberiano',
+ 'LSL' => 'loti lesothense',
+ 'LTL' => 'litas',
+ 'LTT' => 'talonas lituano',
+ 'LUC' => 'franco convertible luxemburgués',
+ 'LUF' => 'franco luxemburgués',
+ 'LUL' => 'franco financiero luxemburgués',
+ 'LVL' => 'lats',
+ 'LVR' => 'rublo letón',
+ 'LYD' => 'dinar libio',
+ 'MAD' => 'dírham marroquí',
+ 'MAF' => 'franco marroquí',
+ 'MDL' => 'leu moldavo',
+ 'MGA' => 'ariari',
+ 'MGF' => 'franco malgache',
+ 'MKD' => 'dinar macedonio',
+ 'MLF' => 'franco malí',
+ 'MMK' => 'kiat',
+ 'MNT' => 'tugrik',
+ 'MOP' => 'pataca de Macao',
+ 'MRO' => 'uguiya',
+ 'MTL' => 'lira maltesa',
+ 'MTP' => 'libra maltesa',
+ 'MUR' => 'rupia mauriciana',
+ 'MVR' => 'rufiya',
+ 'MWK' => 'kuacha malauí',
+ 'MXN' => 'peso mexicano',
+ 'MXP' => 'peso de plata mexicano (1861–1992)',
+ 'MXV' => 'unidad de inversión (UDI) mexicana',
+ 'MYR' => 'ringit',
+ 'MZE' => 'escudo mozambiqueño',
+ 'MZM' => 'antiguo metical mozambiqueño',
+ 'MZN' => 'metical',
+ 'NAD' => 'dólar namibio',
+ 'NGN' => 'naira',
+ 'NIC' => 'córdoba nicaragüense (1988–1991)',
+ 'NIO' => 'córdoba nicaragüense',
+ 'NLG' => 'florín neerlandés',
+ 'NOK' => 'corona noruega',
+ 'NPR' => 'rupia nepalí',
+ 'NZD' => 'dólar neozelandés',
+ 'OMR' => 'rial omaní',
+ 'PAB' => 'balboa panameño',
+ 'PEI' => 'inti peruano',
+ 'PEN' => 'nuevo sol peruano',
+ 'PES' => 'sol peruano',
+ 'PGK' => 'kina',
+ 'PHP' => 'peso filipino',
+ 'PKR' => 'rupia pakistaní',
+ 'PLN' => 'esloti',
+ 'PLZ' => 'zloty polaco (1950–1995)',
+ 'PTE' => 'escudo portugués',
+ 'PYG' => 'guaraní paraguayo',
+ 'QAR' => 'rial catarí',
+ 'RHD' => 'dólar rodesiano',
+ 'ROL' => 'antiguo leu rumano',
+ 'RON' => 'leu rumano',
+ 'RSD' => 'dinar serbio',
+ 'RUB' => 'rublo ruso',
+ 'RUR' => 'rublo ruso (1991–1998)',
+ 'RWF' => 'franco ruandés',
+ 'SAR' => 'rial saudí',
+ 'SBD' => 'dólar salomonense',
+ 'SCR' => 'rupia seychellense',
+ 'SDD' => 'dinar sudanés',
+ 'SDG' => 'libra sudanesa',
+ 'SDP' => 'libra sudanesa antigua',
+ 'SEK' => 'corona sueca',
+ 'SGD' => 'dólar singapurense',
+ 'SHP' => 'libra de Santa Elena',
+ 'SIT' => 'tólar esloveno',
+ 'SKK' => 'corona eslovaca',
+ 'SLL' => 'leona',
+ 'SOS' => 'chelín somalí',
+ 'SRD' => 'dólar surinamés',
+ 'SRG' => 'florín surinamés',
+ 'SSP' => 'libra sursudanesa',
+ 'STD' => 'dobra',
+ 'SUR' => 'rublo soviético',
+ 'SVC' => 'colón salvadoreño',
+ 'SYP' => 'libra siria',
+ 'SZL' => 'lilangeni',
+ 'THB' => 'bat',
+ 'TJR' => 'rublo tayiko',
+ 'TJS' => 'somoni tayiko',
+ 'TMM' => 'manat turcomano (1993–2009)',
+ 'TMT' => 'manat turcomano',
+ 'TND' => 'dinar tunecino',
+ 'TOP' => 'paanga',
+ 'TPE' => 'escudo timorense',
+ 'TRL' => 'lira turca (1922–2005)',
+ 'TRY' => 'lira turca',
+ 'TTD' => 'dólar de Trinidad y Tobago',
+ 'TWD' => 'nuevo dólar taiwanés',
+ 'TZS' => 'chelín tanzano',
+ 'UAH' => 'grivna',
+ 'UAK' => 'karbovanet ucraniano',
+ 'UGS' => 'chelín ugandés (1966–1987)',
+ 'UGX' => 'chelín ugandés',
+ 'USD' => 'dólar estadounidense',
+ 'USN' => 'dólar estadounidense (día siguiente)',
+ 'USS' => 'dólar estadounidense (mismo día)',
+ 'UYI' => 'peso uruguayo en unidades indexadas',
+ 'UYP' => 'peso uruguayo (1975–1993)',
+ 'UYU' => 'peso uruguayo',
+ 'UZS' => 'sum',
+ 'VEB' => 'bolívar venezolano (1871–2008)',
+ 'VEF' => 'bolívar venezolano',
+ 'VND' => 'dong',
+ 'VUV' => 'vatu',
+ 'WST' => 'tala',
+ 'XAF' => 'franco CFA BEAC',
+ 'XAG' => 'plata',
+ 'XAU' => 'oro',
+ 'XBA' => 'unidad compuesta europea',
+ 'XBB' => 'unidad monetaria europea',
+ 'XBC' => 'unidad de cuenta europea (XBC)',
+ 'XBD' => 'unidad de cuenta europea (XBD)',
+ 'XCD' => 'dólar del Caribe Oriental',
+ 'XDR' => 'derechos especiales de giro',
+ 'XEU' => 'unidad de moneda europea',
+ 'XFO' => 'franco oro francés',
+ 'XFU' => 'franco UIC francés',
+ 'XOF' => 'franco CFA BCEAO',
+ 'XPD' => 'paladio',
+ 'XPF' => 'franco CFP',
+ 'XPT' => 'platino',
+ 'XRE' => 'fondos RINET',
+ 'XTS' => 'código reservado para pruebas',
+ 'XXX' => 'divisa desconocida',
+ 'YDD' => 'dinar yemení',
+ 'YER' => 'rial yemení',
+ 'YUD' => 'dinar fuerte yugoslavo',
+ 'YUM' => 'super dinar yugoslavo',
+ 'YUN' => 'dinar convertible yugoslavo',
+ 'ZAL' => 'rand sudafricano (financiero)',
+ 'ZAR' => 'rand',
+ 'ZMK' => 'kwacha zambiano (1968–2012)',
+ 'ZMW' => 'kuacha zambiano',
+ 'ZRN' => 'nuevo zaire zaireño',
+ 'ZRZ' => 'zaire zaireño',
+ 'ZWD' => 'dólar de Zimbabue',
+ 'ZWL' => 'dólar zimbabuense',
+);
+
+$currencySymbols = array(
+ 'AED' => 'AED',
+ 'AFN' => 'AFN',
+ 'ALL' => 'ALL',
+ 'AMD' => 'AMD',
+ 'ANG' => 'ANG',
+ 'AOA' => 'AOA',
+ 'ARS' => 'ARS',
+ 'AUD' => 'AUD',
+ 'AWG' => 'AWG',
+ 'AZN' => 'AZN',
+ 'BAM' => 'BAM',
+ 'BBD' => 'BBD',
+ 'BDT' => 'BDT',
+ 'BGN' => 'BGN',
+ 'BHD' => 'BHD',
+ 'BIF' => 'BIF',
+ 'BMD' => 'BMD',
+ 'BND' => 'BND',
+ 'BOB' => 'BOB',
+ 'BRL' => 'BRL',
+ 'BSD' => 'BSD',
+ 'BTN' => 'BTN',
+ 'BWP' => 'BWP',
+ 'BYR' => 'BYR',
+ 'BZD' => 'BZD',
+ 'CAD' => 'CA$',
+ 'CDF' => 'CDF',
+ 'CHF' => 'CHF',
+ 'CLP' => 'CLP',
+ 'CNY' => 'CNY',
+ 'COP' => 'COP',
+ 'CRC' => 'CRC',
+ 'CUC' => 'CUC',
+ 'CUP' => 'CUP',
+ 'CVE' => 'CVE',
+ 'CZK' => 'CZK',
+ 'DJF' => 'DJF',
+ 'DKK' => 'DKK',
+ 'DOP' => 'DOP',
+ 'DZD' => 'DZD',
+ 'EGP' => 'EGP',
+ 'ERN' => 'ERN',
+ 'ESP' => '₧',
+ 'ETB' => 'ETB',
+ 'FJD' => 'FJD',
+ 'FKP' => 'FKP',
+ 'GBP' => 'GBP',
+ 'GEL' => 'GEL',
+ 'GHS' => 'GHS',
+ 'GIP' => 'GIP',
+ 'GMD' => 'GMD',
+ 'GNF' => 'GNF',
+ 'GTQ' => 'GTQ',
+ 'GYD' => 'GYD',
+ 'HKD' => 'HKD',
+ 'HNL' => 'HNL',
+ 'HRK' => 'HRK',
+ 'HTG' => 'HTG',
+ 'HUF' => 'HUF',
+ 'IDR' => 'IDR',
+ 'ILS' => 'ILS',
+ 'INR' => 'INR',
+ 'IQD' => 'IQD',
+ 'IRR' => 'IRR',
+ 'ISK' => 'ISK',
+ 'JMD' => 'JMD',
+ 'JOD' => 'JOD',
+ 'JPY' => 'JPY',
+ 'KES' => 'KES',
+ 'KGS' => 'KGS',
+ 'KHR' => 'KHR',
+ 'KMF' => 'KMF',
+ 'KPW' => 'KPW',
+ 'KRW' => 'KRW',
+ 'KWD' => 'KWD',
+ 'KYD' => 'KYD',
+ 'KZT' => 'KZT',
+ 'LAK' => 'LAK',
+ 'LBP' => 'LBP',
+ 'LKR' => 'LKR',
+ 'LRD' => 'LRD',
+ 'LTL' => 'LTL',
+ 'LVL' => 'LVL',
+ 'LYD' => 'LYD',
+ 'MAD' => 'MAD',
+ 'MDL' => 'MDL',
+ 'MGA' => 'MGA',
+ 'MKD' => 'MKD',
+ 'MMK' => 'MMK',
+ 'MNT' => 'MNT',
+ 'MOP' => 'MOP',
+ 'MRO' => 'MRO',
+ 'MUR' => 'MUR',
+ 'MVR' => 'MVR',
+ 'MWK' => 'MWK',
+ 'MXN' => 'MXN',
+ 'MYR' => 'MYR',
+ 'MZN' => 'MZN',
+ 'NAD' => 'NAD',
+ 'NGN' => 'NGN',
+ 'NIO' => 'NIO',
+ 'NOK' => 'NOK',
+ 'NPR' => 'NPR',
+ 'NZD' => 'NZD',
+ 'OMR' => 'OMR',
+ 'PAB' => 'PAB',
+ 'PEN' => 'PEN',
+ 'PGK' => 'PGK',
+ 'PHP' => 'PHP',
+ 'PKR' => 'PKR',
+ 'PLN' => 'PLN',
+ 'PYG' => 'PYG',
+ 'QAR' => 'QAR',
+ 'RON' => 'RON',
+ 'RSD' => 'RSD',
+ 'RUB' => 'RUB',
+ 'RWF' => 'RWF',
+ 'SAR' => 'SAR',
+ 'SBD' => 'SBD',
+ 'SCR' => 'SCR',
+ 'SDG' => 'SDG',
+ 'SEK' => 'SEK',
+ 'SGD' => 'SGD',
+ 'SHP' => 'SHP',
+ 'SLL' => 'SLL',
+ 'SOS' => 'SOS',
+ 'SRD' => 'SRD',
+ 'SSP' => 'SSP',
+ 'STD' => 'STD',
+ 'SYP' => 'SYP',
+ 'SZL' => 'SZL',
+ 'THB' => '฿',
+ 'TJS' => 'TJS',
+ 'TMT' => 'TMT',
+ 'TND' => 'TND',
+ 'TOP' => 'TOP',
+ 'TRY' => 'TRY',
+ 'TTD' => 'TTD',
+ 'TWD' => 'TWD',
+ 'TZS' => 'TZS',
+ 'UAH' => 'UAH',
+ 'UGX' => 'UGX',
+ 'USD' => '$',
+ 'UYU' => 'UYU',
+ 'UZS' => 'UZS',
+ 'VEF' => 'VEF',
+ 'VND' => '₫',
+ 'VUV' => 'VUV',
+ 'WST' => 'WST',
+ 'XAF' => 'XAF',
+ 'XCD' => 'XCD',
+ 'XOF' => 'XOF',
+ 'XPF' => 'CFPF',
+ 'YER' => 'YER',
+ 'ZAR' => 'ZAR',
+ 'ZMW' => 'ZMW',
+);
+
+$countryNames = array(
+ 'AC' => 'Isla de la Ascensión',
+ 'AD' => 'Andorra',
+ 'AE' => 'Emiratos Árabes Unidos',
+ 'AF' => 'Afganistán',
+ 'AG' => 'Antigua y Barbuda',
+ 'AI' => 'Anguila',
+ 'AL' => 'Albania',
+ 'AM' => 'Armenia',
+ 'AN' => 'Antillas Neerlandesas',
+ 'AO' => 'Angola',
+ 'AQ' => 'Antártida',
+ 'AR' => 'Argentina',
+ 'AS' => 'Samoa Americana',
+ 'AT' => 'Austria',
+ 'AU' => 'Australia',
+ 'AW' => 'Aruba',
+ 'AX' => 'Islas Åland',
+ 'AZ' => 'Azerbaiyán',
+ 'BA' => 'Bosnia-Herzegovina',
+ 'BB' => 'Barbados',
+ 'BD' => 'Bangladés',
+ 'BE' => 'Bélgica',
+ 'BF' => 'Burkina Faso',
+ 'BG' => 'Bulgaria',
+ 'BH' => 'Baréin',
+ 'BI' => 'Burundi',
+ 'BJ' => 'Benín',
+ 'BL' => 'San Bartolomé',
+ 'BM' => 'Bermudas',
+ 'BN' => 'Brunéi',
+ 'BO' => 'Bolivia',
+ 'BQ' => 'Caribe neerlandés',
+ 'BR' => 'Brasil',
+ 'BS' => 'Bahamas',
+ 'BT' => 'Bután',
+ 'BV' => 'Isla Bouvet',
+ 'BW' => 'Botsuana',
+ 'BY' => 'Bielorrusia',
+ 'BZ' => 'Belice',
+ 'CA' => 'Canadá',
+ 'CC' => 'Islas Cocos',
+ 'CD' => 'República Democrática del Congo',
+ 'CF' => 'República Centroafricana',
+ 'CG' => 'República del Congo',
+ 'CH' => 'Suiza',
+ 'CI' => 'Costa de Marfil',
+ 'CK' => 'Islas Cook',
+ 'CL' => 'Chile',
+ 'CM' => 'Camerún',
+ 'CN' => 'China',
+ 'CO' => 'Colombia',
+ 'CP' => 'Isla Clipperton',
+ 'CR' => 'Costa Rica',
+ 'CU' => 'Cuba',
+ 'CV' => 'Cabo Verde',
+ 'CW' => 'Curazao',
+ 'CX' => 'Isla Christmas',
+ 'CY' => 'Chipre',
+ 'CZ' => 'República Checa',
+ 'DE' => 'Alemania',
+ 'DG' => 'Diego García',
+ 'DJ' => 'Yibuti',
+ 'DK' => 'Dinamarca',
+ 'DM' => 'Dominica',
+ 'DO' => 'República Dominicana',
+ 'DZ' => 'Argelia',
+ 'EA' => 'Ceuta y Melilla',
+ 'EC' => 'Ecuador',
+ 'EE' => 'Estonia',
+ 'EG' => 'Egipto',
+ 'EH' => 'Sáhara Occidental',
+ 'ER' => 'Eritrea',
+ 'ES' => 'España',
+ 'ET' => 'Etiopía',
+ 'EU' => 'Unión Europea',
+ 'FI' => 'Finlandia',
+ 'FJ' => 'Fiyi',
+ 'FK' => 'Islas Malvinas',
+ 'FM' => 'Micronesia',
+ 'FO' => 'Islas Feroe',
+ 'FR' => 'Francia',
+ 'GA' => 'Gabón',
+ 'GB' => 'RU',
+ 'GD' => 'Granada',
+ 'GE' => 'Georgia',
+ 'GF' => 'Guayana Francesa',
+ 'GG' => 'Guernesey',
+ 'GH' => 'Ghana',
+ 'GI' => 'Gibraltar',
+ 'GL' => 'Groenlandia',
+ 'GM' => 'Gambia',
+ 'GN' => 'Guinea',
+ 'GP' => 'Guadalupe',
+ 'GQ' => 'Guinea Ecuatorial',
+ 'GR' => 'Grecia',
+ 'GS' => 'Islas Georgia del Sur y Sandwich del Sur',
+ 'GT' => 'Guatemala',
+ 'GU' => 'Guam',
+ 'GW' => 'Guinea-Bisáu',
+ 'GY' => 'Guyana',
+ 'HK' => 'Hong Kong',
+ 'HM' => 'Islas Heard y McDonald',
+ 'HN' => 'Honduras',
+ 'HR' => 'Croacia',
+ 'HT' => 'Haití',
+ 'HU' => 'Hungría',
+ 'IC' => 'islas Canarias',
+ 'ID' => 'Indonesia',
+ 'IE' => 'Irlanda',
+ 'IL' => 'Israel',
+ 'IM' => 'Isla de Man',
+ 'IN' => 'India',
+ 'IO' => 'Territorio Británico del Océano Índico',
+ 'IQ' => 'Iraq',
+ 'IR' => 'Irán',
+ 'IS' => 'Islandia',
+ 'IT' => 'Italia',
+ 'JE' => 'Jersey',
+ 'JM' => 'Jamaica',
+ 'JO' => 'Jordania',
+ 'JP' => 'Japón',
+ 'KE' => 'Kenia',
+ 'KG' => 'Kirguistán',
+ 'KH' => 'Camboya',
+ 'KI' => 'Kiribati',
+ 'KM' => 'Comoras',
+ 'KN' => 'San Cristóbal y Nieves',
+ 'KP' => 'Corea del Norte',
+ 'KR' => 'Corea del Sur',
+ 'KW' => 'Kuwait',
+ 'KY' => 'Islas Caimán',
+ 'KZ' => 'Kazajistán',
+ 'LA' => 'Laos',
+ 'LB' => 'Líbano',
+ 'LC' => 'Santa Lucía',
+ 'LI' => 'Liechtenstein',
+ 'LK' => 'Sri Lanka',
+ 'LR' => 'Liberia',
+ 'LS' => 'Lesoto',
+ 'LT' => 'Lituania',
+ 'LU' => 'Luxemburgo',
+ 'LV' => 'Letonia',
+ 'LY' => 'Libia',
+ 'MA' => 'Marruecos',
+ 'MC' => 'Mónaco',
+ 'MD' => 'Moldavia',
+ 'ME' => 'Montenegro',
+ 'MF' => 'San Martín',
+ 'MG' => 'Madagascar',
+ 'MH' => 'Islas Marshall',
+ 'MK' => 'Macedonia',
+ 'ML' => 'Mali',
+ 'MM' => 'Myanmar (Birmania)',
+ 'MN' => 'Mongolia',
+ 'MO' => 'Macao',
+ 'MP' => 'Islas Marianas del Norte',
+ 'MQ' => 'Martinica',
+ 'MR' => 'Mauritania',
+ 'MS' => 'Montserrat',
+ 'MT' => 'Malta',
+ 'MU' => 'Mauricio',
+ 'MV' => 'Maldivas',
+ 'MW' => 'Malaui',
+ 'MX' => 'México',
+ 'MY' => 'Malasia',
+ 'MZ' => 'Mozambique',
+ 'NA' => 'Namibia',
+ 'NC' => 'Nueva Caledonia',
+ 'NE' => 'Níger',
+ 'NF' => 'Isla Norfolk',
+ 'NG' => 'Nigeria',
+ 'NI' => 'Nicaragua',
+ 'NL' => 'Países Bajos',
+ 'NO' => 'Noruega',
+ 'NP' => 'Nepal',
+ 'NR' => 'Nauru',
+ 'NU' => 'Isla Niue',
+ 'NZ' => 'Nueva Zelanda',
+ 'OM' => 'Omán',
+ 'PA' => 'Panamá',
+ 'PE' => 'Perú',
+ 'PF' => 'Polinesia Francesa',
+ 'PG' => 'Papúa Nueva Guinea',
+ 'PH' => 'Filipinas',
+ 'PK' => 'Pakistán',
+ 'PL' => 'Polonia',
+ 'PM' => 'San Pedro y Miquelón',
+ 'PN' => 'Islas Pitcairn',
+ 'PR' => 'Puerto Rico',
+ 'PS' => 'Palestina',
+ 'PT' => 'Portugal',
+ 'PW' => 'Palau',
+ 'PY' => 'Paraguay',
+ 'QA' => 'Catar',
+ 'QO' => 'Territorios alejados de Oceanía',
+ 'RE' => 'Reunión',
+ 'RO' => 'Rumanía',
+ 'RS' => 'Serbia',
+ 'RU' => 'Rusia',
+ 'RW' => 'Ruanda',
+ 'SA' => 'Arabia Saudí',
+ 'SB' => 'Islas Salomón',
+ 'SC' => 'Seychelles',
+ 'SD' => 'Sudán',
+ 'SE' => 'Suecia',
+ 'SG' => 'Singapur',
+ 'SH' => 'Santa Elena',
+ 'SI' => 'Eslovenia',
+ 'SJ' => 'Svalbard y Jan Mayen',
+ 'SK' => 'Eslovaquia',
+ 'SL' => 'Sierra Leona',
+ 'SM' => 'San Marino',
+ 'SN' => 'Senegal',
+ 'SO' => 'Somalia',
+ 'SR' => 'Surinam',
+ 'SS' => 'Sudán del Sur',
+ 'ST' => 'Santo Tomé y Príncipe',
+ 'SV' => 'El Salvador',
+ 'SX' => 'Sint Maarten',
+ 'SY' => 'Siria',
+ 'SZ' => 'Suazilandia',
+ 'TA' => 'Tristán da Cunha',
+ 'TC' => 'Islas Turcas y Caicos',
+ 'TD' => 'Chad',
+ 'TF' => 'Territorios Australes Franceses',
+ 'TG' => 'Togo',
+ 'TH' => 'Tailandia',
+ 'TJ' => 'Tayikistán',
+ 'TK' => 'Tokelau',
+ 'TL' => 'Timor Oriental',
+ 'TM' => 'Turkmenistán',
+ 'TN' => 'Túnez',
+ 'TO' => 'Tonga',
+ 'TR' => 'Turquía',
+ 'TT' => 'Trinidad y Tobago',
+ 'TV' => 'Tuvalu',
+ 'TW' => 'Taiwán',
+ 'TZ' => 'Tanzania',
+ 'UA' => 'Ucrania',
+ 'UG' => 'Uganda',
+ 'UM' => 'Islas menores alejadas de EE. UU.',
+ 'US' => 'EE. UU.',
+ 'UY' => 'Uruguay',
+ 'UZ' => 'Uzbekistán',
+ 'VA' => 'Ciudad del Vaticano',
+ 'VC' => 'San Vicente y las Granadinas',
+ 'VE' => 'Venezuela',
+ 'VG' => 'Islas Vírgenes Británicas',
+ 'VI' => 'Islas Vírgenes de EE. UU.',
+ 'VN' => 'Vietnam',
+ 'VU' => 'Vanuatu',
+ 'WF' => 'Wallis y Futuna',
+ 'WS' => 'Samoa',
+ 'XK' => 'Kosovo',
+ 'YE' => 'Yemen',
+ 'YT' => 'Mayotte',
+ 'ZA' => 'Sudáfrica',
+ 'ZM' => 'Zambia',
+ 'ZW' => 'Zimbabue',
+);
+
+$timeUnits = array(
+ 'day-future-one' => 'dentro de {0} día',
+ 'day-future-other' => 'dentro de {0} días',
+ 'day-narrow-future-one' => 'dentro de {0} día',
+ 'day-narrow-future-other' => 'dentro de {0} días',
+ 'day-narrow-past-one' => 'hace {0} día',
+ 'day-narrow-past-other' => 'hace {0} días',
+ 'day-one' => '{0} día',
+ 'day-other' => '{0} días',
+ 'day-past-one' => 'hace {0} día',
+ 'day-past-other' => 'hace {0} días',
+ 'day-short-future-one' => 'dentro de {0} día',
+ 'day-short-future-other' => 'dentro de {0} días',
+ 'day-short-past-one' => 'hace {0} día',
+ 'day-short-past-other' => 'hace {0} días',
+ 'hour-future-one' => 'dentro de {0} hora',
+ 'hour-future-other' => 'dentro de {0} horas',
+ 'hour-narrow-future-one' => 'dentro de {0} h',
+ 'hour-narrow-future-other' => 'dentro de {0} h',
+ 'hour-narrow-past-one' => 'hace {0} h',
+ 'hour-narrow-past-other' => 'hace {0} h',
+ 'hour-one' => '{0} hora',
+ 'hour-other' => '{0} horas',
+ 'hour-past-one' => 'hace {0} hora',
+ 'hour-past-other' => 'hace {0} horas',
+ 'hour-short-future-one' => 'dentro de {0} h',
+ 'hour-short-future-other' => 'dentro de {0} h',
+ 'hour-short-past-one' => 'hace {0} h',
+ 'hour-short-past-other' => 'hace {0} h',
+ 'microsecond-one' => '{0} microsegundo',
+ 'microsecond-other' => '{0} microsegundos',
+ 'millisecond-one' => '{0} milisegundo',
+ 'millisecond-other' => '{0} milisegundos',
+ 'minute-future-one' => 'dentro de {0} minuto',
+ 'minute-future-other' => 'dentro de {0} minutos',
+ 'minute-narrow-future-one' => 'dentro de {0} min',
+ 'minute-narrow-future-other' => 'dentro de {0} min',
+ 'minute-narrow-past-one' => 'hace {0} min',
+ 'minute-narrow-past-other' => 'hace {0} min',
+ 'minute-one' => '{0} minuto',
+ 'minute-other' => '{0} minutos',
+ 'minute-past-one' => 'hace {0} minuto',
+ 'minute-past-other' => 'hace {0} minutos',
+ 'minute-short-future-one' => 'dentro de {0} min',
+ 'minute-short-future-other' => 'dentro de {0} min',
+ 'minute-short-past-one' => 'hace {0} min',
+ 'minute-short-past-other' => 'hace {0} min',
+ 'month-future-one' => 'dentro de {0} mes',
+ 'month-future-other' => 'dentro de {0} meses',
+ 'month-narrow-future-one' => 'dentro de {0} m',
+ 'month-narrow-future-other' => 'dentro de {0} m',
+ 'month-narrow-past-one' => 'hace {0} m',
+ 'month-narrow-past-other' => 'hace {0} m',
+ 'month-one' => '{0} mes',
+ 'month-other' => '{0} meses',
+ 'month-past-one' => 'hace {0} mes',
+ 'month-past-other' => 'hace {0} meses',
+ 'month-short-future-one' => 'dentro de {0} m',
+ 'month-short-future-other' => 'dentro de {0} m',
+ 'month-short-past-one' => 'hace {0} m',
+ 'month-short-past-other' => 'hace {0} m',
+ 'nanosecond-one' => '{0} nanosegundo',
+ 'nanosecond-other' => '{0} nanosegundos',
+ 'quarter-future-one' => 'dentro de {0} trimestre',
+ 'quarter-future-other' => 'dentro de {0} trimestres',
+ 'quarter-narrow-future-one' => 'dentro de {0} trim.',
+ 'quarter-narrow-future-other' => 'dentro de {0} trim.',
+ 'quarter-narrow-past-one' => 'hace {0} trim.',
+ 'quarter-narrow-past-other' => 'hace {0} trim.',
+ 'quarter-past-one' => 'hace {0} trimestre',
+ 'quarter-past-other' => 'hace {0} trimestres',
+ 'quarter-short-future-one' => 'dentro de {0} trim.',
+ 'quarter-short-future-other' => 'dentro de {0} trim.',
+ 'quarter-short-past-one' => 'hace {0} trim.',
+ 'quarter-short-past-other' => 'hace {0} trim.',
+ 'second-future-one' => 'dentro de {0} segundo',
+ 'second-future-other' => 'dentro de {0} segundos',
+ 'second-narrow-future-one' => 'dentro de {0} s',
+ 'second-narrow-future-other' => 'dentro de {0} s',
+ 'second-narrow-past-one' => 'hace {0} s',
+ 'second-narrow-past-other' => 'hace {0} s',
+ 'second-one' => '{0} segundo',
+ 'second-other' => '{0} segundos',
+ 'second-past-one' => 'hace {0} segundo',
+ 'second-past-other' => 'hace {0} segundos',
+ 'second-short-future-one' => 'dentro de {0} s',
+ 'second-short-future-other' => 'dentro de {0} s',
+ 'second-short-past-one' => 'hace {0} s',
+ 'second-short-past-other' => 'hace {0} s',
+ 'week-future-one' => 'dentro de {0} semana',
+ 'week-future-other' => 'dentro de {0} semanas',
+ 'week-narrow-future-one' => 'dentro de {0} sem.',
+ 'week-narrow-future-other' => 'dentro de {0} sem.',
+ 'week-narrow-past-one' => 'hace {0} sem.',
+ 'week-narrow-past-other' => 'hace {0} sem.',
+ 'week-one' => '{0} semana',
+ 'week-other' => '{0} semanas',
+ 'week-past-one' => 'hace {0} semana',
+ 'week-past-other' => 'hace {0} semanas',
+ 'week-short-future-one' => 'dentro de {0} sem.',
+ 'week-short-future-other' => 'dentro de {0} sem.',
+ 'week-short-past-one' => 'hace {0} sem.',
+ 'week-short-past-other' => 'hace {0} sem.',
+ 'year-future-one' => 'dentro de {0} año',
+ 'year-future-other' => 'dentro de {0} años',
+ 'year-narrow-future-one' => 'dentro de {0} a',
+ 'year-narrow-future-other' => 'dentro de {0} a',
+ 'year-narrow-past-one' => 'hace {0} a',
+ 'year-narrow-past-other' => 'hace {0} a',
+ 'year-one' => '{0} año',
+ 'year-other' => '{0} años',
+ 'year-past-one' => 'hace {0} año',
+ 'year-past-other' => 'hace {0} años',
+ 'year-short-future-one' => 'dentro de {0} a',
+ 'year-short-future-other' => 'dentro de {0} a',
+ 'year-short-past-one' => 'hace {0} a',
+ 'year-short-past-other' => 'hace {0} a',
+);
diff --git a/MLEB/cldr/CldrNames/CldrNamesEt.php b/MLEB/cldr/CldrNames/CldrNamesEt.php
new file mode 100644
index 00000000..3efa6920
--- /dev/null
+++ b/MLEB/cldr/CldrNames/CldrNamesEt.php
@@ -0,0 +1,1288 @@
+<?php
+
+$languageNames = array(
+ 'aa' => 'afari',
+ 'ab' => 'abhaasi',
+ 'ace' => 'atšehi',
+ 'ach' => 'akoli',
+ 'ada' => 'adangme',
+ 'ady' => 'adõgee',
+ 'ae' => 'avesta',
+ 'af' => 'afrikaani',
+ 'afh' => 'afrihili',
+ 'agq' => 'aghemi',
+ 'ain' => 'ainu',
+ 'ak' => 'akani',
+ 'akk' => 'akadi',
+ 'ale' => 'aleuudi',
+ 'alt' => 'altai',
+ 'am' => 'amhari',
+ 'an' => 'aragoni',
+ 'ang' => 'vanainglise',
+ 'anp' => 'angika',
+ 'ar' => 'araabia',
+ 'ar-001' => 'araabia (tänapäevane)',
+ 'arc' => 'aramea',
+ 'arn' => 'araukaani',
+ 'arp' => 'arapaho',
+ 'arw' => 'aravaki',
+ 'as' => 'assami',
+ 'asa' => 'asa',
+ 'ast' => 'astuuria',
+ 'av' => 'avaari',
+ 'awa' => 'avadhi',
+ 'ay' => 'aimara',
+ 'az' => 'aserbaidžaani',
+ 'ba' => 'baškiiri',
+ 'bal' => 'belutši',
+ 'ban' => 'bali',
+ 'bas' => 'basa',
+ 'bax' => 'bamuni',
+ 'bbj' => 'ghomala',
+ 'be' => 'valgevene',
+ 'bej' => 'bedža',
+ 'bem' => 'bemba',
+ 'bez' => 'bena',
+ 'bfd' => 'bafuti',
+ 'bg' => 'bulgaaria',
+ 'bho' => 'bhodžpuri',
+ 'bi' => 'bislama',
+ 'bik' => 'bikoli',
+ 'bin' => 'edo',
+ 'bkm' => 'itaŋikomi',
+ 'bla' => 'siksika',
+ 'bm' => 'bambara',
+ 'bn' => 'bengali',
+ 'bo' => 'tiibeti',
+ 'br' => 'bretooni',
+ 'bra' => 'bradži',
+ 'brx' => 'bodo',
+ 'bs' => 'bosnia',
+ 'bss' => 'akoose',
+ 'bua' => 'burjaadi',
+ 'bug' => 'bugi',
+ 'bum' => 'bulu',
+ 'byn' => 'bilini',
+ 'byv' => 'medumba',
+ 'ca' => 'katalaani',
+ 'cad' => 'kado',
+ 'car' => 'kariibi',
+ 'cay' => 'cayuga',
+ 'cch' => 'atsami',
+ 'ce' => 'tšetšeeni',
+ 'ceb' => 'sebu',
+ 'cgg' => 'chiga',
+ 'ch' => 'tšamorro',
+ 'chb' => 'tšibtša',
+ 'chg' => 'tšagatai',
+ 'chk' => 'tšuugi',
+ 'chm' => 'mari',
+ 'chn' => 'tšinuki žargoon',
+ 'cho' => 'tšokto',
+ 'chp' => 'tšipevai',
+ 'chr' => 'tšerokii',
+ 'chy' => 'šaieeni',
+ 'ckb' => 'sorani kurdi',
+ 'co' => 'korsika',
+ 'cop' => 'kopti',
+ 'cr' => 'krii',
+ 'crh' => 'krimmitatari',
+ 'cs' => 'tšehhi',
+ 'csb' => 'kašuubi',
+ 'cu' => 'kirikuslaavi',
+ 'cv' => 'tšuvaši',
+ 'cy' => 'kõmri',
+ 'da' => 'taani',
+ 'dak' => 'siuu',
+ 'dar' => 'dargi',
+ 'dav' => 'taita',
+ 'de' => 'saksa',
+ 'de-ch' => 'saksa (kõrgsaksa)',
+ 'del' => 'delavari',
+ 'den' => 'sleivi',
+ 'dgr' => 'dogribi',
+ 'din' => 'dinka',
+ 'dje' => 'zarma',
+ 'doi' => 'dogri',
+ 'dsb' => 'alamsorbi',
+ 'dua' => 'duala',
+ 'dum' => 'keskhollandi',
+ 'dv' => 'maldiivi',
+ 'dyo' => 'jola-fonyi',
+ 'dyu' => 'djula',
+ 'dz' => 'dzongkha',
+ 'dzg' => 'dazaga',
+ 'ebu' => 'embu',
+ 'ee' => 'eve',
+ 'efi' => 'efiki',
+ 'egy' => 'muinasegiptuse',
+ 'eka' => 'ekadžuki',
+ 'el' => 'kreeka',
+ 'elx' => 'eelami',
+ 'en' => 'inglise',
+ 'en-gb' => 'inglise (Briti)',
+ 'en-us' => 'inglise (USA)',
+ 'enm' => 'keskinglise',
+ 'eo' => 'esperanto',
+ 'es' => 'hispaania',
+ 'es-es' => 'hispaania (Euroopa)',
+ 'et' => 'eesti',
+ 'eu' => 'baski',
+ 'ewo' => 'evondo',
+ 'fa' => 'pärsia',
+ 'fan' => 'fangi',
+ 'fat' => 'fanti',
+ 'ff' => 'fulbe',
+ 'fi' => 'soome',
+ 'fil' => 'filipino',
+ 'fj' => 'fidži',
+ 'fo' => 'fääri',
+ 'fon' => 'foni',
+ 'fr' => 'prantsuse',
+ 'frm' => 'keskprantsuse',
+ 'fro' => 'vanaprantsuse',
+ 'frr' => 'põhjafriisi',
+ 'frs' => 'idafriisi',
+ 'fur' => 'friuuli',
+ 'fy' => 'läänefriisi',
+ 'ga' => 'iiri',
+ 'gaa' => 'gaa',
+ 'gag' => 'gagauusi',
+ 'gay' => 'gajo',
+ 'gba' => 'gbaja',
+ 'gd' => 'gaeli',
+ 'gez' => 'etioopia',
+ 'gil' => 'kiribati',
+ 'gl' => 'galeegi',
+ 'gmh' => 'keskülemsaksa',
+ 'gn' => 'guaranii',
+ 'goh' => 'vanaülemsaksa',
+ 'gon' => 'gondi',
+ 'gor' => 'gorontalo',
+ 'got' => 'gooti',
+ 'grb' => 'grebo',
+ 'grc' => 'vanakreeka',
+ 'gsw' => 'šveitsisaksa',
+ 'gu' => 'gudžarati',
+ 'guz' => 'gusii',
+ 'gv' => 'mänksi',
+ 'gwi' => 'gvitšini',
+ 'ha' => 'hausa',
+ 'hai' => 'haida',
+ 'haw' => 'havai',
+ 'he' => 'heebrea',
+ 'hi' => 'hindi',
+ 'hil' => 'hiligainoni',
+ 'hit' => 'heti',
+ 'hmn' => 'hmongi',
+ 'ho' => 'motu',
+ 'hr' => 'horvaadi',
+ 'hsb' => 'ülemsorbi',
+ 'ht' => 'haiti',
+ 'hu' => 'ungari',
+ 'hup' => 'hupa',
+ 'hy' => 'armeenia',
+ 'hz' => 'herero',
+ 'ia' => 'interlingua',
+ 'iba' => 'ibani',
+ 'ibb' => 'ibibio',
+ 'id' => 'indoneesia',
+ 'ie' => 'interlingue',
+ 'ig' => 'ibo',
+ 'ii' => 'sichuani jii',
+ 'ik' => 'injupiaki',
+ 'ilo' => 'iloko',
+ 'inh' => 'inguši',
+ 'io' => 'ido',
+ 'is' => 'islandi',
+ 'it' => 'itaalia',
+ 'iu' => 'inuktituti',
+ 'ja' => 'jaapani',
+ 'jbo' => 'lojbani',
+ 'jgo' => 'ngomba',
+ 'jmc' => 'machame',
+ 'jpr' => 'juudipärsia',
+ 'jrb' => 'juudiaraabia',
+ 'jv' => 'jaava',
+ 'ka' => 'gruusia',
+ 'kaa' => 'karakalpaki',
+ 'kab' => 'kabiili',
+ 'kac' => 'katšini',
+ 'kaj' => 'jju',
+ 'kam' => 'kamba',
+ 'kaw' => 'kaavi',
+ 'kbd' => 'kabardi-tšerkessi',
+ 'kbl' => 'kanembu',
+ 'kcg' => 'tyapi',
+ 'kde' => 'makonde',
+ 'kea' => 'kabuverdianu',
+ 'kfo' => 'koro',
+ 'kg' => 'kongo',
+ 'kha' => 'khasi',
+ 'kho' => 'saki',
+ 'khq' => 'koyra chiini',
+ 'ki' => 'kikuju',
+ 'kj' => 'ambo',
+ 'kk' => 'kasahhi',
+ 'kkj' => 'kako',
+ 'kl' => 'grööni',
+ 'kln' => 'kaljenjin',
+ 'km' => 'khmeeri',
+ 'kmb' => 'mbundu',
+ 'kn' => 'kannada',
+ 'ko' => 'korea',
+ 'koi' => 'permikomi',
+ 'kok' => 'konkani',
+ 'kos' => 'kosrae',
+ 'kpe' => 'kpelle',
+ 'kr' => 'kanuri',
+ 'krc' => 'karatšai-balkaari',
+ 'krl' => 'karjala',
+ 'kru' => 'oraoni',
+ 'ks' => 'kašmiiri',
+ 'ksb' => 'shambala',
+ 'ksf' => 'bafia',
+ 'ksh' => 'cologniani',
+ 'ku' => 'kurdi',
+ 'kum' => 'kumõki',
+ 'kut' => 'kutenai',
+ 'kv' => 'komi',
+ 'kw' => 'korni',
+ 'ky' => 'kirgiisi',
+ 'la' => 'ladina',
+ 'lad' => 'ladiino',
+ 'lag' => 'langi',
+ 'lah' => 'lahnda',
+ 'lam' => 'lamba',
+ 'lb' => 'letseburgi',
+ 'lez' => 'lesgi',
+ 'lg' => 'ganda',
+ 'li' => 'limburgi',
+ 'lkt' => 'lakota',
+ 'ln' => 'lingala',
+ 'lo' => 'lao',
+ 'lol' => 'mongo',
+ 'loz' => 'lozi',
+ 'lt' => 'leedu',
+ 'lu' => 'luba',
+ 'lua' => 'luba-lulua',
+ 'lui' => 'luisenjo',
+ 'lun' => 'lunda',
+ 'luo' => 'luo',
+ 'lus' => 'lušei',
+ 'luy' => 'luyia',
+ 'lv' => 'läti',
+ 'mad' => 'madura',
+ 'maf' => 'mafa',
+ 'mag' => 'magali',
+ 'mai' => 'maithili',
+ 'mak' => 'makassari',
+ 'man' => 'malinke',
+ 'mas' => 'masai',
+ 'mde' => 'maba',
+ 'mdf' => 'mokša',
+ 'mdr' => 'mandari',
+ 'men' => 'mende',
+ 'mer' => 'meru',
+ 'mfe' => 'Mauritiuse kreoolkeel',
+ 'mg' => 'malagassi',
+ 'mga' => 'keskiiri',
+ 'mgh' => 'makhuwa-meetto',
+ 'mgo' => 'meta’',
+ 'mh' => 'maršalli',
+ 'mi' => 'maoori',
+ 'mic' => 'mikmaki',
+ 'min' => 'minangkabau',
+ 'mk' => 'makedoonia',
+ 'ml' => 'malajalami',
+ 'mn' => 'mongoli',
+ 'mnc' => 'mandžu',
+ 'mni' => 'manipuri',
+ 'moh' => 'mohoogi',
+ 'mos' => 'more',
+ 'mr' => 'marathi',
+ 'ms' => 'malai',
+ 'mt' => 'malta',
+ 'mua' => 'mundangi',
+ 'mul' => 'mitu keelt',
+ 'mus' => 'maskogi',
+ 'mwl' => 'miranda',
+ 'mwr' => 'marvari',
+ 'my' => 'birma',
+ 'mye' => 'myene',
+ 'myv' => 'ersa',
+ 'na' => 'nauru',
+ 'nap' => 'napoli',
+ 'naq' => 'nama',
+ 'nb' => 'norra bokmål',
+ 'nd' => 'põhjandebele',
+ 'nds' => 'alamsaksa',
+ 'ne' => 'nepali',
+ 'new' => 'nevari',
+ 'ng' => 'ndonga',
+ 'nia' => 'niasi',
+ 'niu' => 'niue',
+ 'nl' => 'hollandi',
+ 'nl-be' => 'flaami',
+ 'nmg' => 'kwasio',
+ 'nn' => 'norra nynorsk',
+ 'nnh' => 'ngiembooni',
+ 'no' => 'norra',
+ 'nog' => 'nogai',
+ 'non' => 'vanapõhjala',
+ 'nqo' => 'nkoo',
+ 'nr' => 'lõunandebele',
+ 'nso' => 'pedi',
+ 'nus' => 'nueri',
+ 'nv' => 'navaho',
+ 'nwc' => 'vananevari',
+ 'ny' => 'njandža',
+ 'nym' => 'njamvesi',
+ 'nyn' => 'nkole',
+ 'nyo' => 'njoro',
+ 'nzi' => 'nzima',
+ 'oc' => 'provansi',
+ 'oj' => 'odžibvei',
+ 'om' => 'oromo',
+ 'or' => 'oria',
+ 'os' => 'osseedi',
+ 'osa' => 'oseidži',
+ 'ota' => 'osmanitürgi',
+ 'pa' => 'pandžabi',
+ 'pag' => 'pangasinani',
+ 'pal' => 'pahlavi',
+ 'pam' => 'pampanga',
+ 'pap' => 'papiamento',
+ 'pau' => 'belau',
+ 'peo' => 'vanapärsia',
+ 'phn' => 'foiniikia',
+ 'pi' => 'paali',
+ 'pl' => 'poola',
+ 'pon' => 'poonpei',
+ 'pro' => 'vanaprovansi',
+ 'ps' => 'puštu',
+ 'pt' => 'portugali',
+ 'pt-pt' => 'portugali (Euroopa)',
+ 'qu' => 'ketšua',
+ 'quc' => 'k’iche’',
+ 'raj' => 'radžastani',
+ 'rap' => 'rapanui',
+ 'rar' => 'rarotonga',
+ 'rm' => 'retoromaani',
+ 'rn' => 'rundi',
+ 'ro' => 'rumeenia',
+ 'ro-md' => 'moldova',
+ 'rof' => 'rombo',
+ 'rom' => 'mustlaskeel',
+ 'ru' => 'vene',
+ 'rup' => 'aromuuni',
+ 'rw' => 'ruanda',
+ 'rwk' => 'rwa',
+ 'sa' => 'sanskriti',
+ 'sad' => 'sandave',
+ 'sah' => 'jakuudi',
+ 'sam' => 'samaaria aramea',
+ 'saq' => 'samburu',
+ 'sas' => 'sasaki',
+ 'sat' => 'santali',
+ 'sba' => 'ngembay',
+ 'sbp' => 'sangu',
+ 'sc' => 'sardiinia',
+ 'scn' => 'sitsiilia',
+ 'sco' => 'šoti',
+ 'sd' => 'sindhi',
+ 'se' => 'põhjasaami',
+ 'see' => 'seneca',
+ 'seh' => 'sena',
+ 'sel' => 'sölkupi',
+ 'ses' => 'koyraboro senni',
+ 'sg' => 'sango',
+ 'sga' => 'vanaiiri',
+ 'sh' => 'serbia-horvaadi',
+ 'shi' => 'tachelhiti',
+ 'shn' => 'šani',
+ 'shu' => 'Tšaadi araabia',
+ 'si' => 'singali',
+ 'sid' => 'sidamo',
+ 'sk' => 'slovaki',
+ 'sl' => 'sloveeni',
+ 'sm' => 'samoa',
+ 'sma' => 'lõunasaami',
+ 'smj' => 'lule saami',
+ 'smn' => 'inari saami',
+ 'sms' => 'koltasaami',
+ 'sn' => 'šona',
+ 'snk' => 'soninke',
+ 'so' => 'somaali',
+ 'sog' => 'sogdi',
+ 'sq' => 'albaania',
+ 'sr' => 'serbia',
+ 'srn' => 'sranani',
+ 'srr' => 'sereri',
+ 'ss' => 'svaasi',
+ 'ssy' => 'saho',
+ 'st' => 'lõunasotho',
+ 'su' => 'sunda',
+ 'suk' => 'sukuma',
+ 'sus' => 'susu',
+ 'sux' => 'sumeri',
+ 'sv' => 'rootsi',
+ 'sw' => 'suahiili',
+ 'swb' => 'komoori',
+ 'swc' => 'Kongo suahiili',
+ 'syc' => 'klassikaline süüria',
+ 'syr' => 'süüria',
+ 'ta' => 'tamili',
+ 'te' => 'telugu',
+ 'tem' => 'temne',
+ 'teo' => 'teso',
+ 'ter' => 'tereno',
+ 'tet' => 'tetumi',
+ 'tg' => 'tadžiki',
+ 'th' => 'tai',
+ 'ti' => 'tigrinja',
+ 'tig' => 'tigree',
+ 'tiv' => 'tivi',
+ 'tk' => 'türkmeeni',
+ 'tkl' => 'tokelau',
+ 'tl' => 'tagalogi',
+ 'tlh' => 'klingoni',
+ 'tli' => 'tlingiti',
+ 'tmh' => 'tamašeki',
+ 'tn' => 'tsvana',
+ 'to' => 'tonga',
+ 'tog' => 'tšitonga',
+ 'tpi' => 'uusmelaneesia',
+ 'tr' => 'türgi',
+ 'trv' => 'taroko',
+ 'ts' => 'tsonga',
+ 'tsi' => 'tšimši',
+ 'tt' => 'tatari',
+ 'tum' => 'tumbuka',
+ 'tvl' => 'tuvalu',
+ 'tw' => 'tvii',
+ 'twq' => 'taswaqi',
+ 'ty' => 'tahiti',
+ 'tyv' => 'tõva',
+ 'tzm' => 'Kesk-Maroko tamazighti',
+ 'udm' => 'udmurdi',
+ 'ug' => 'uiguuri',
+ 'uga' => 'ugariti',
+ 'uk' => 'ukraina',
+ 'umb' => 'umbundu',
+ 'und' => 'määramata',
+ 'ur' => 'urdu',
+ 'uz' => 'usbeki',
+ 'vai' => 'vai',
+ 've' => 'venda',
+ 'vi' => 'vietnami',
+ 'vo' => 'volapüki',
+ 'vot' => 'vadja',
+ 'vun' => 'vunjo',
+ 'wa' => 'vallooni',
+ 'wae' => 'walseri',
+ 'wal' => 'volamo',
+ 'war' => 'varai',
+ 'was' => 'vašo',
+ 'wo' => 'volofi',
+ 'xal' => 'kalmõki',
+ 'xh' => 'koosa',
+ 'xog' => 'soga',
+ 'yao' => 'jao',
+ 'yap' => 'japi',
+ 'yav' => 'yangbeni',
+ 'ybb' => 'yemba',
+ 'yi' => 'jidiši',
+ 'yo' => 'joruba',
+ 'yue' => 'kantoni',
+ 'za' => 'tšuangi',
+ 'zap' => 'sapoteegi',
+ 'zbl' => 'blissümbolid',
+ 'zen' => 'zenaga',
+ 'zgh' => 'tamasikti (Maroko)',
+ 'zh' => 'hiina',
+ 'zh-hans' => 'hiina (lihtsustatud)',
+ 'zh-hant' => 'hiina (traditsiooniline)',
+ 'zu' => 'suulu',
+ 'zun' => 'sunji',
+ 'zxx' => 'mittekeeleline',
+ 'zza' => 'zaza',
+);
+
+$currencyNames = array(
+ 'ADP' => 'Andorra peseeta',
+ 'AED' => 'Araabia Ühendemiraatide dirhem',
+ 'AFA' => 'Afganistani afgaani, 1927-2002',
+ 'AFN' => 'Afganistani afgaani',
+ 'ALL' => 'Albaania lekk',
+ 'AMD' => 'Armeenia dramm',
+ 'ANG' => 'Hollandi Antillide kulden',
+ 'AOA' => 'Angola kvanza',
+ 'AOK' => 'Angola kvanza, 1977-1990',
+ 'AON' => 'Angola kvanza, 1990-2000',
+ 'AOR' => 'Angola reformitud kvanza, 1995-1999',
+ 'ARA' => 'Argentina austral',
+ 'ARP' => 'Argentina peeso, 1983-1985',
+ 'ARS' => 'Argentina peeso',
+ 'ATS' => 'Austria šilling',
+ 'AUD' => 'Austraalia dollar',
+ 'AWG' => 'Aruba guilder',
+ 'AZM' => 'Aserbaidžaani manat, 1993-2006',
+ 'AZN' => 'Aserbaidžaani manat',
+ 'BAD' => 'Bosnia-Hertsegoviina dinaar',
+ 'BAM' => 'Bosnia-Hertsegoviina mark',
+ 'BBD' => 'Barbadose dollar',
+ 'BDT' => 'Bangladeshi taka',
+ 'BEC' => 'Belgia konverteeritav frank',
+ 'BEF' => 'Belgia frank',
+ 'BEL' => 'Belgia arveldusfrank',
+ 'BGL' => 'Bulgaaria püsiv leev',
+ 'BGN' => 'Bulgaaria leev',
+ 'BHD' => 'Bahreini dinaar',
+ 'BIF' => 'Burundi frank',
+ 'BMD' => 'Bermuda dollar',
+ 'BND' => 'Brunei dollar',
+ 'BOB' => 'Bolivia boliviaano',
+ 'BOP' => 'Boliivia peeso',
+ 'BRC' => 'Brasiilia krusado',
+ 'BRL' => 'Brasiilia reaal',
+ 'BSD' => 'Bahama dollar',
+ 'BTN' => 'Bhutani ngultrum',
+ 'BUK' => 'Birma kjatt',
+ 'BWP' => 'Botswana pula',
+ 'BYB' => 'Valgevene uus rubla, 1994-1999',
+ 'BYR' => 'Valgevene rubla',
+ 'BZD' => 'Belize dollar',
+ 'CAD' => 'Kanada dollar',
+ 'CDF' => 'Kongo frank',
+ 'CHF' => 'Šveitsi frank',
+ 'CLP' => 'Tšiili peeso',
+ 'CNY' => 'Hiina jüaan',
+ 'COP' => 'Kolumbia peeso',
+ 'CRC' => 'Costa Rica colón',
+ 'CSD' => 'Serbia vana dinaar',
+ 'CUC' => 'Kuuba konverteeritav peeso',
+ 'CUP' => 'Kuuba peeso',
+ 'CVE' => 'Roheneemesaarte eskuudo',
+ 'CYP' => 'Küprose nael',
+ 'CZK' => 'Tšehhi kroon',
+ 'DEM' => 'Saksa mark',
+ 'DJF' => 'Djibouti frank',
+ 'DKK' => 'Taani kroon',
+ 'DOP' => 'Dominikaani peeso',
+ 'DZD' => 'Alžeeria dinaar',
+ 'ECS' => 'Ecuadori sukre',
+ 'EEK' => 'Eesti kroon',
+ 'EGP' => 'Egiptuse nael',
+ 'ERN' => 'Eritrea nakfa',
+ 'ESP' => 'Hispaania peseeta',
+ 'ETB' => 'Etioopia birr',
+ 'EUR' => 'euro',
+ 'FIM' => 'Soome mark',
+ 'FJD' => 'Fidži dollar',
+ 'FKP' => 'Falklandi saarte nael',
+ 'FRF' => 'Prantsuse frank',
+ 'GBP' => 'Suurbritannia naelsterling',
+ 'GEL' => 'Gruusia lari',
+ 'GHC' => 'Ghana sedi',
+ 'GHS' => 'Ghana cedi',
+ 'GIP' => 'Gibraltari nael',
+ 'GMD' => 'Gambia dalasi',
+ 'GNF' => 'Guinea frank',
+ 'GNS' => 'Guinea syli',
+ 'GRD' => 'Kreeka drahm',
+ 'GTQ' => 'Guatemala ketsal',
+ 'GWP' => 'Guinea-Bissau peeso',
+ 'GYD' => 'Guyana dollar',
+ 'HKD' => 'Hongkongi dollar',
+ 'HNL' => 'Hondurase lempiira',
+ 'HRK' => 'Horvaatia kuna',
+ 'HTG' => 'Haiti gurd',
+ 'HUF' => 'Ungari forint',
+ 'IDR' => 'Indoneesia ruupia',
+ 'IEP' => 'Iiri nael',
+ 'ILP' => 'Iisraeli nael',
+ 'ILS' => 'Iisraeli uus seekel',
+ 'INR' => 'India ruupia',
+ 'IQD' => 'Iraagi dinaar',
+ 'IRR' => 'Iraani riaal',
+ 'ISK' => 'Islandi kroon',
+ 'ITL' => 'Itaalia liir',
+ 'JMD' => 'Jamaica dollar',
+ 'JOD' => 'Jordaania dinaar',
+ 'JPY' => 'Jaapani jeen',
+ 'KES' => 'Kenya šilling',
+ 'KGS' => 'Kõrgõzstani somm',
+ 'KHR' => 'Kambodža riaal',
+ 'KMF' => 'Komooride frank',
+ 'KPW' => 'Põhja-Korea vonn',
+ 'KRW' => 'Lõuna-Korea vonn',
+ 'KWD' => 'Kuveidi dinaar',
+ 'KYD' => 'Caymani saarte dollar',
+ 'KZT' => 'Kasahstani tenge',
+ 'LAK' => 'Laose kiip',
+ 'LBP' => 'Liibanoni nael',
+ 'LKR' => 'Sri Lanka ruupia',
+ 'LRD' => 'Libeeria dollar',
+ 'LSL' => 'Lesotho loti',
+ 'LTL' => 'Leedu litt',
+ 'LUF' => 'Luksemburgi frank',
+ 'LVL' => 'Läti latt',
+ 'LYD' => 'Liibüa dinaar',
+ 'MAD' => 'Maroko dirhem',
+ 'MDL' => 'Moldova leu',
+ 'MGA' => 'Madagaskari ariary',
+ 'MKD' => 'Makedoonia denaar',
+ 'MMK' => 'Myanmari kjatt',
+ 'MNT' => 'Mongoolia tugrik',
+ 'MOP' => 'Macao pataka',
+ 'MRO' => 'Mauritaania ugia',
+ 'MTL' => 'Malta liir',
+ 'MUR' => 'Mauritiuse ruupia',
+ 'MVR' => 'Maldiivide ruupia',
+ 'MWK' => 'Malawi kvatša',
+ 'MXN' => 'Mehhiko peeso',
+ 'MXP' => 'Mehhiko peeso, 1861-1990',
+ 'MYR' => 'Malaisia ringgit',
+ 'MZN' => 'Mosambiigi metikal',
+ 'NAD' => 'Namiibia dollar',
+ 'NGN' => 'Nigeeria naira',
+ 'NIC' => 'Nicaragua kordoba',
+ 'NIO' => 'Nicaragua kuldkordoba',
+ 'NLG' => 'Hollandi kulden',
+ 'NOK' => 'Norra kroon',
+ 'NPR' => 'Nepali ruupia',
+ 'NZD' => 'Uus-Meremaa dollar',
+ 'OMR' => 'Omaani riaal',
+ 'PAB' => 'Panama balboa',
+ 'PEI' => 'Peruu inti',
+ 'PEN' => 'Peruu uus soll',
+ 'PES' => 'Peruu soll',
+ 'PGK' => 'Paapua Uus-Guinea kina',
+ 'PHP' => 'Filipiinide peeso',
+ 'PKR' => 'Pakistani ruupia',
+ 'PLN' => 'Poola zlott',
+ 'PLZ' => 'Poola zlott, 1950-1995',
+ 'PTE' => 'Portugali eskuudo',
+ 'PYG' => 'Paraguai guaranii',
+ 'QAR' => 'Quatari riaal',
+ 'ROL' => 'Rumeenia lei, -2005',
+ 'RON' => 'Rumeenia lei',
+ 'RSD' => 'Serbia dinaar',
+ 'RUB' => 'Venemaa rubla',
+ 'RUR' => 'Venemaa rubla, 1991-1998',
+ 'RWF' => 'Rwanda frank',
+ 'SAR' => 'Saudi-Araabia riaal',
+ 'SBD' => 'Saalomoni saarte dollar',
+ 'SCR' => 'Seišelli saarte ruupia',
+ 'SDG' => 'Sudaani nael',
+ 'SDP' => 'Sudaani nael, 1957-1998',
+ 'SEK' => 'Rootsi kroon',
+ 'SGD' => 'Singapuri dollar',
+ 'SHP' => 'Saint Helena nael',
+ 'SIT' => 'Sloveenia tolar',
+ 'SKK' => 'Slovakkia kroon',
+ 'SLL' => 'Sierra Leone leoone',
+ 'SOS' => 'Somaalia šilling',
+ 'SRD' => 'Surinami dollar',
+ 'SRG' => 'Surinami kulden',
+ 'SSP' => 'Lõuna-Sudaani nael',
+ 'STD' => 'São Tomé ja Príncipe dobra',
+ 'SUR' => 'NSVL rubla',
+ 'SVC' => 'Salvadori koloon',
+ 'SYP' => 'Süüria nael',
+ 'SZL' => 'Svaasimaa lilangeni',
+ 'THB' => 'Tai baat',
+ 'TJS' => 'Tadžikistani somoni',
+ 'TMM' => 'Türkmenistani manat, 1993-2009',
+ 'TMT' => 'Türkmenistani manat',
+ 'TND' => 'Tuneesia dinaar',
+ 'TOP' => 'Tonga pa’anga',
+ 'TPE' => 'Timori eskuudo',
+ 'TRL' => 'Türgi liir',
+ 'TRY' => 'Türgi uus liir',
+ 'TTD' => 'Trinidadi ja Tobago dollar',
+ 'TWD' => 'Taiwani dollar',
+ 'TZS' => 'Tansaania šilling',
+ 'UAH' => 'Ukraina grivna',
+ 'UAK' => 'Ukraina karbovanets',
+ 'UGX' => 'Uganda šilling',
+ 'USD' => 'USA dollar',
+ 'USN' => 'USA järgmise päeva dollar',
+ 'USS' => 'USA sama päeva dollar',
+ 'UYU' => 'Uruguai peeso',
+ 'UZS' => 'Usbekistani somm',
+ 'VEB' => 'Venezuela bolívar (1871–2008)',
+ 'VEF' => 'Venezuela bolívar',
+ 'VND' => 'Vietnami dong',
+ 'VUV' => 'Vanuatu vatu',
+ 'WST' => 'Lääne-Samoa tala',
+ 'XAF' => 'CFA frank BEAC',
+ 'XAG' => 'hõbe',
+ 'XAU' => 'kuld',
+ 'XBA' => 'EURCO',
+ 'XBB' => 'Euroopa rahaühik',
+ 'XBC' => 'Euroopa rahaline arvestusühik (XBC)',
+ 'XBD' => 'Euroopa rahaline arvestusühik (XBD)',
+ 'XCD' => 'Ida-Kariibi dollar',
+ 'XDR' => 'Rahvusvahelise Valuutafondi arvestusühik',
+ 'XEU' => 'eküü',
+ 'XFO' => 'Prantsuse kuldfrank',
+ 'XFU' => 'Prantsuse UIC-frank',
+ 'XOF' => 'Aafrika ühisfrank BCEAO',
+ 'XPD' => 'pallaadium',
+ 'XPF' => 'Prantsuse Vaikse-Ookeani frank',
+ 'XPT' => 'plaatina',
+ 'XTS' => 'vääringute testkood',
+ 'XXX' => 'määramata rahaühik',
+ 'YDD' => 'Jeemeni dinaar',
+ 'YER' => 'Jeemeni riaal',
+ 'YUM' => 'Jugoslaavia uus dinaar',
+ 'YUN' => 'Jugoslaavia konverteeritav dinaar',
+ 'ZAR' => 'Lõuna-Aafrika rand',
+ 'ZMK' => 'Sambia kvatša (1968–2012)',
+ 'ZMW' => 'Sambia kvatša',
+ 'ZRZ' => 'Sairi zaire',
+ 'ZWD' => 'Zimbabwe dollar',
+);
+
+$currencySymbols = array(
+ 'AED' => 'AED',
+ 'AFN' => 'AFN',
+ 'ALL' => 'ALL',
+ 'AMD' => 'AMD',
+ 'ANG' => 'ANG',
+ 'AOA' => 'AOA',
+ 'ARS' => 'ARS',
+ 'AUD' => 'AU$',
+ 'AWG' => 'AWG',
+ 'AZN' => 'AZN',
+ 'BAM' => 'BAM',
+ 'BBD' => 'BBD',
+ 'BDT' => 'BDT',
+ 'BGN' => 'BGN',
+ 'BHD' => 'BHD',
+ 'BIF' => 'BIF',
+ 'BMD' => 'BMD',
+ 'BND' => 'BND',
+ 'BOB' => 'BOB',
+ 'BRL' => 'R$',
+ 'BSD' => 'BSD',
+ 'BTN' => 'BTN',
+ 'BWP' => 'BWP',
+ 'BYR' => 'BYR',
+ 'BZD' => 'BZD',
+ 'CAD' => 'CA$',
+ 'CDF' => 'CDF',
+ 'CHF' => 'CHF',
+ 'CLP' => 'CLP',
+ 'CNY' => 'CN¥',
+ 'COP' => 'COP',
+ 'CRC' => 'CRC',
+ 'CUC' => 'CUC',
+ 'CUP' => 'CUP',
+ 'CVE' => 'CVE',
+ 'CZK' => 'CZK',
+ 'DJF' => 'DJF',
+ 'DKK' => 'DKK',
+ 'DOP' => 'DOP',
+ 'DZD' => 'DZD',
+ 'EEK' => 'kr',
+ 'EGP' => 'EGP',
+ 'ERN' => 'ERN',
+ 'ETB' => 'ETB',
+ 'EUR' => '€',
+ 'FJD' => 'FJD',
+ 'FKP' => 'FKP',
+ 'GBP' => '£',
+ 'GEL' => 'GEL',
+ 'GHS' => 'GHS',
+ 'GIP' => 'GIP',
+ 'GMD' => 'GMD',
+ 'GNF' => 'GNF',
+ 'GTQ' => 'GTQ',
+ 'GYD' => 'GYD',
+ 'HKD' => 'HK$',
+ 'HNL' => 'HNL',
+ 'HRK' => 'HRK',
+ 'HTG' => 'HTG',
+ 'HUF' => 'HUF',
+ 'IDR' => 'IDR',
+ 'ILS' => '₪',
+ 'INR' => '₹',
+ 'IQD' => 'IQD',
+ 'IRR' => 'IRR',
+ 'ISK' => 'ISK',
+ 'JMD' => 'JMD',
+ 'JOD' => 'JOD',
+ 'JPY' => '¥',
+ 'KES' => 'KES',
+ 'KGS' => 'KGS',
+ 'KHR' => 'KHR',
+ 'KMF' => 'KMF',
+ 'KPW' => 'KPW',
+ 'KRW' => '₩',
+ 'KWD' => 'KWD',
+ 'KYD' => 'KYD',
+ 'KZT' => 'KZT',
+ 'LAK' => 'LAK',
+ 'LBP' => 'LBP',
+ 'LKR' => 'LKR',
+ 'LRD' => 'LRD',
+ 'LTL' => 'LTL',
+ 'LVL' => 'LVL',
+ 'LYD' => 'LYD',
+ 'MAD' => 'MAD',
+ 'MDL' => 'MDL',
+ 'MGA' => 'MGA',
+ 'MKD' => 'MKD',
+ 'MMK' => 'MMK',
+ 'MNT' => 'MNT',
+ 'MOP' => 'MOP',
+ 'MRO' => 'MRO',
+ 'MUR' => 'MUR',
+ 'MVR' => 'MVR',
+ 'MWK' => 'MWK',
+ 'MXN' => 'MX$',
+ 'MYR' => 'MYR',
+ 'MZN' => 'MZN',
+ 'NAD' => 'NAD',
+ 'NGN' => 'NGN',
+ 'NIO' => 'NIO',
+ 'NOK' => 'NOK',
+ 'NPR' => 'NPR',
+ 'NZD' => 'NZ$',
+ 'OMR' => 'OMR',
+ 'PAB' => 'PAB',
+ 'PEN' => 'PEN',
+ 'PGK' => 'PGK',
+ 'PHP' => 'PHP',
+ 'PKR' => 'PKR',
+ 'PLN' => 'PLN',
+ 'PYG' => 'PYG',
+ 'QAR' => 'QAR',
+ 'RON' => 'RON',
+ 'RSD' => 'RSD',
+ 'RUB' => 'RUB',
+ 'RWF' => 'RWF',
+ 'SAR' => 'SAR',
+ 'SBD' => 'SBD',
+ 'SCR' => 'SCR',
+ 'SDG' => 'SDG',
+ 'SEK' => 'SEK',
+ 'SGD' => 'SGD',
+ 'SHP' => 'SHP',
+ 'SLL' => 'SLL',
+ 'SOS' => 'SOS',
+ 'SRD' => 'SRD',
+ 'SSP' => 'SSP',
+ 'STD' => 'STD',
+ 'SYP' => 'SYP',
+ 'SZL' => 'SZL',
+ 'THB' => '฿',
+ 'TJS' => 'TJS',
+ 'TMT' => 'TMT',
+ 'TND' => 'TND',
+ 'TOP' => 'TOP',
+ 'TRY' => 'TRY',
+ 'TTD' => 'TTD',
+ 'TWD' => 'NT$',
+ 'TZS' => 'TZS',
+ 'UAH' => 'UAH',
+ 'UGX' => 'UGX',
+ 'USD' => '$',
+ 'UYU' => 'UYU',
+ 'UZS' => 'UZS',
+ 'VEF' => 'VEF',
+ 'VND' => '₫',
+ 'VUV' => 'VUV',
+ 'WST' => 'WST',
+ 'XAF' => 'FCFA',
+ 'XCD' => 'EC$',
+ 'XOF' => 'CFA',
+ 'XPF' => 'CFPF',
+ 'YER' => 'YER',
+ 'ZAR' => 'ZAR',
+ 'ZMW' => 'ZMW',
+);
+
+$countryNames = array(
+ 'AC' => 'Ascensioni saar',
+ 'AD' => 'Andorra',
+ 'AE' => 'Araabia Ühendemiraadid',
+ 'AF' => 'Afganistan',
+ 'AG' => 'Antigua ja Barbuda',
+ 'AI' => 'Anguilla',
+ 'AL' => 'Albaania',
+ 'AM' => 'Armeenia',
+ 'AN' => 'Hollandi Antillid',
+ 'AO' => 'Angola',
+ 'AQ' => 'Antarktis',
+ 'AR' => 'Argentina',
+ 'AS' => 'Ameerika Samoa',
+ 'AT' => 'Austria',
+ 'AU' => 'Austraalia',
+ 'AW' => 'Aruba',
+ 'AX' => 'Ahvenamaa',
+ 'AZ' => 'Aserbaidžaan',
+ 'BA' => 'Bosnia ja Hertsegoviina',
+ 'BB' => 'Barbados',
+ 'BD' => 'Bangladesh',
+ 'BE' => 'Belgia',
+ 'BF' => 'Burkina Faso',
+ 'BG' => 'Bulgaaria',
+ 'BH' => 'Bahrein',
+ 'BI' => 'Burundi',
+ 'BJ' => 'Benin',
+ 'BL' => 'Saint Barthélemy',
+ 'BM' => 'Bermuda',
+ 'BN' => 'Brunei',
+ 'BO' => 'Boliivia',
+ 'BQ' => 'Hollandi Kariibi mere saared',
+ 'BR' => 'Brasiilia',
+ 'BS' => 'Bahama',
+ 'BT' => 'Bhutan',
+ 'BV' => 'Bouvet’ saar',
+ 'BW' => 'Botswana',
+ 'BY' => 'Valgevene',
+ 'BZ' => 'Belize',
+ 'CA' => 'Kanada',
+ 'CC' => 'Kookossaared',
+ 'CD' => 'Kongo DV',
+ 'CF' => 'Kesk-Aafrika Vabariik',
+ 'CG' => 'Kongo-Brazzaville',
+ 'CH' => 'Šveits',
+ 'CI' => 'Côte d’Ivoire',
+ 'CK' => 'Cooki saared',
+ 'CL' => 'Tšiili',
+ 'CM' => 'Kamerun',
+ 'CN' => 'Hiina',
+ 'CO' => 'Colombia',
+ 'CP' => 'Clippertoni saar',
+ 'CR' => 'Costa Rica',
+ 'CU' => 'Kuuba',
+ 'CV' => 'Roheneemesaared',
+ 'CW' => 'Curaçao',
+ 'CX' => 'Jõulusaar',
+ 'CY' => 'Küpros',
+ 'CZ' => 'Tšehhi',
+ 'DE' => 'Saksamaa',
+ 'DG' => 'Diego Garcia',
+ 'DJ' => 'Djibouti',
+ 'DK' => 'Taani',
+ 'DM' => 'Dominica',
+ 'DO' => 'Dominikaani Vabariik',
+ 'DZ' => 'Alžeeria',
+ 'EA' => 'Ceuta ja Melilla',
+ 'EC' => 'Ecuador',
+ 'EE' => 'Eesti',
+ 'EG' => 'Egiptus',
+ 'EH' => 'Lääne-Sahara',
+ 'ER' => 'Eritrea',
+ 'ES' => 'Hispaania',
+ 'ET' => 'Etioopia',
+ 'EU' => 'Euroopa Liit',
+ 'FI' => 'Soome',
+ 'FJ' => 'Fidži',
+ 'FK' => 'Falklandi saared',
+ 'FM' => 'Mikroneesia Liiduriigid',
+ 'FO' => 'Fääri saared',
+ 'FR' => 'Prantsusmaa',
+ 'GA' => 'Gabon',
+ 'GB' => 'Suurbritannia',
+ 'GD' => 'Grenada',
+ 'GE' => 'Gruusia',
+ 'GF' => 'Prantsuse Guajaana',
+ 'GG' => 'Guernsey',
+ 'GH' => 'Ghana',
+ 'GI' => 'Gibraltar',
+ 'GL' => 'Gröönimaa',
+ 'GM' => 'Gambia',
+ 'GN' => 'Guinea',
+ 'GP' => 'Guadeloupe',
+ 'GQ' => 'Ekvatoriaal-Guinea',
+ 'GR' => 'Kreeka',
+ 'GS' => 'Lõuna-Georgia ja Lõuna-Sandwichi saared',
+ 'GT' => 'Guatemala',
+ 'GU' => 'Guam',
+ 'GW' => 'Guinea-Bissau',
+ 'GY' => 'Guyana',
+ 'HK' => 'Hongkong',
+ 'HM' => 'Heardi ja McDonaldi saared',
+ 'HN' => 'Honduras',
+ 'HR' => 'Horvaatia',
+ 'HT' => 'Haiti',
+ 'HU' => 'Ungari',
+ 'IC' => 'Kanaari saared',
+ 'ID' => 'Indoneesia',
+ 'IE' => 'Iirimaa',
+ 'IL' => 'Iisrael',
+ 'IM' => 'Mani saar',
+ 'IN' => 'India',
+ 'IO' => 'Briti India ookeani ala',
+ 'IQ' => 'Iraak',
+ 'IR' => 'Iraan',
+ 'IS' => 'Island',
+ 'IT' => 'Itaalia',
+ 'JE' => 'Jersey',
+ 'JM' => 'Jamaica',
+ 'JO' => 'Jordaania',
+ 'JP' => 'Jaapan',
+ 'KE' => 'Kenya',
+ 'KG' => 'Kõrgõzstan',
+ 'KH' => 'Kambodža',
+ 'KI' => 'Kiribati',
+ 'KM' => 'Komoorid',
+ 'KN' => 'Saint Kitts ja Nevis',
+ 'KP' => 'Põhja-Korea',
+ 'KR' => 'Lõuna-Korea',
+ 'KW' => 'Kuveit',
+ 'KY' => 'Kaimanisaared',
+ 'KZ' => 'Kasahstan',
+ 'LA' => 'Laos',
+ 'LB' => 'Liibanon',
+ 'LC' => 'Saint Lucia',
+ 'LI' => 'Liechtenstein',
+ 'LK' => 'Sri Lanka',
+ 'LR' => 'Libeeria',
+ 'LS' => 'Lesotho',
+ 'LT' => 'Leedu',
+ 'LU' => 'Luksemburg',
+ 'LV' => 'Läti',
+ 'LY' => 'Liibüa',
+ 'MA' => 'Maroko',
+ 'MC' => 'Monaco',
+ 'MD' => 'Moldova',
+ 'ME' => 'Montenegro',
+ 'MF' => 'Saint Martin',
+ 'MG' => 'Madagaskar',
+ 'MH' => 'Marshalli saared',
+ 'MK' => 'Makedoonia',
+ 'ML' => 'Mali',
+ 'MM' => 'Myanmar (Birma)',
+ 'MN' => 'Mongoolia',
+ 'MO' => 'Macau',
+ 'MP' => 'Põhja-Mariaanid',
+ 'MQ' => 'Martinique',
+ 'MR' => 'Mauritaania',
+ 'MS' => 'Montserrat',
+ 'MT' => 'Malta',
+ 'MU' => 'Mauritius',
+ 'MV' => 'Maldiivid',
+ 'MW' => 'Malawi',
+ 'MX' => 'Mehhiko',
+ 'MY' => 'Malaisia',
+ 'MZ' => 'Mosambiik',
+ 'NA' => 'Namiibia',
+ 'NC' => 'Uus-Kaledoonia',
+ 'NE' => 'Niger',
+ 'NF' => 'Norfolk',
+ 'NG' => 'Nigeeria',
+ 'NI' => 'Nicaragua',
+ 'NL' => 'Holland',
+ 'NO' => 'Norra',
+ 'NP' => 'Nepal',
+ 'NR' => 'Nauru',
+ 'NU' => 'Niue',
+ 'NZ' => 'Uus-Meremaa',
+ 'OM' => 'Omaan',
+ 'PA' => 'Panama',
+ 'PE' => 'Peruu',
+ 'PF' => 'Prantsuse Polüneesia',
+ 'PG' => 'Paapua Uus-Guinea',
+ 'PH' => 'Filipiinid',
+ 'PK' => 'Pakistan',
+ 'PL' => 'Poola',
+ 'PM' => 'Saint Pierre ja Miquelon',
+ 'PN' => 'Pitcairni saared',
+ 'PR' => 'Puerto Rico',
+ 'PS' => 'Palestiina',
+ 'PT' => 'Portugal',
+ 'PW' => 'Belau',
+ 'PY' => 'Paraguay',
+ 'QA' => 'Katar',
+ 'QO' => 'Okeaania hajasaared',
+ 'RE' => 'Réunion',
+ 'RO' => 'Rumeenia',
+ 'RS' => 'Serbia',
+ 'RU' => 'Venemaa',
+ 'RW' => 'Rwanda',
+ 'SA' => 'Saudi Araabia',
+ 'SB' => 'Saalomoni Saared',
+ 'SC' => 'Seišellid',
+ 'SD' => 'Sudaan',
+ 'SE' => 'Rootsi',
+ 'SG' => 'Singapur',
+ 'SH' => 'Saint Helena',
+ 'SI' => 'Sloveenia',
+ 'SJ' => 'Svalbard ja Jan Mayen',
+ 'SK' => 'Slovakkia',
+ 'SL' => 'Sierra Leone',
+ 'SM' => 'San Marino',
+ 'SN' => 'Senegal',
+ 'SO' => 'Somaalia',
+ 'SR' => 'Suriname',
+ 'SS' => 'Lõuna-Sudaan',
+ 'ST' => 'São Tomé ja Príncipe',
+ 'SV' => 'El Salvador',
+ 'SX' => 'Sint Maarten',
+ 'SY' => 'Süüria',
+ 'SZ' => 'Svaasimaa',
+ 'TA' => 'Tristan da Cunha',
+ 'TC' => 'Turks ja Caicos',
+ 'TD' => 'Tšaad',
+ 'TF' => 'Prantsuse Lõunaalad',
+ 'TG' => 'Togo',
+ 'TH' => 'Tai',
+ 'TJ' => 'Tadžikistan',
+ 'TK' => 'Tokelau',
+ 'TL' => 'Ida-Timor',
+ 'TM' => 'Türkmenistan',
+ 'TN' => 'Tuneesia',
+ 'TO' => 'Tonga',
+ 'TR' => 'Türgi',
+ 'TT' => 'Trinidad ja Tobago',
+ 'TV' => 'Tuvalu',
+ 'TW' => 'Taiwan',
+ 'TZ' => 'Tansaania',
+ 'UA' => 'Ukraina',
+ 'UG' => 'Uganda',
+ 'UM' => 'Ühendriikide hajasaared',
+ 'US' => 'USA',
+ 'UY' => 'Uruguay',
+ 'UZ' => 'Usbekistan',
+ 'VA' => 'Vatikan',
+ 'VC' => 'Saint Vincent ja Grenadiinid',
+ 'VE' => 'Venezuela',
+ 'VG' => 'Briti Neitsisaared',
+ 'VI' => 'USA Neitsisaared',
+ 'VN' => 'Vietnam',
+ 'VU' => 'Vanuatu',
+ 'WF' => 'Wallis ja Futuna',
+ 'WS' => 'Samoa',
+ 'XK' => 'Kosovo',
+ 'YE' => 'Jeemen',
+ 'YT' => 'Mayotte',
+ 'ZA' => 'Lõuna-Aafrika Vabariik',
+ 'ZM' => 'Sambia',
+ 'ZW' => 'Zimbabwe',
+);
+
+$timeUnits = array(
+ 'day-future-one' => '{0} päeva pärast',
+ 'day-future-other' => '{0} päeva pärast',
+ 'day-narrow-future-one' => '{0} p pärast',
+ 'day-narrow-future-other' => '{0} p pärast',
+ 'day-narrow-past-one' => '{0} p tagasi',
+ 'day-narrow-past-other' => '{0} p tagasi',
+ 'day-one' => '{0} ööpäev',
+ 'day-other' => '{0} ööpäeva',
+ 'day-past-one' => '{0} päeva eest',
+ 'day-past-other' => '{0} päeva eest',
+ 'day-short-future-one' => '{0} p pärast',
+ 'day-short-future-other' => '{0} p pärast',
+ 'day-short-past-one' => '{0} p tagasi',
+ 'day-short-past-other' => '{0} p tagasi',
+ 'hour-future-one' => '{0} tunni pärast',
+ 'hour-future-other' => '{0} tunni pärast',
+ 'hour-narrow-future-one' => '{0} h pärast',
+ 'hour-narrow-future-other' => '{0} h pärast',
+ 'hour-narrow-past-one' => '{0} h tagasi',
+ 'hour-narrow-past-other' => '{0} h tagasi',
+ 'hour-one' => '{0} tund',
+ 'hour-other' => '{0} tundi',
+ 'hour-past-one' => '{0} tunni eest',
+ 'hour-past-other' => '{0} tunni eest',
+ 'hour-short-future-one' => '{0} h pärast',
+ 'hour-short-future-other' => '{0} h pärast',
+ 'hour-short-past-one' => '{0} h tagasi',
+ 'hour-short-past-other' => '{0} h tagasi',
+ 'microsecond-one' => '{0} mikrosekund',
+ 'microsecond-other' => '{0} mikrosekundit',
+ 'millisecond-one' => '{0} millisekund',
+ 'millisecond-other' => '{0} millisekundit',
+ 'minute-future-one' => '{0} minuti pärast',
+ 'minute-future-other' => '{0} minuti pärast',
+ 'minute-narrow-future-one' => '{0} min pärast',
+ 'minute-narrow-future-other' => '{0} min pärast',
+ 'minute-narrow-past-one' => '{0} min tagasi',
+ 'minute-narrow-past-other' => '{0} min tagasi',
+ 'minute-one' => '{0} minut',
+ 'minute-other' => '{0} minutit',
+ 'minute-past-one' => '{0} minuti eest',
+ 'minute-past-other' => '{0} minuti eest',
+ 'minute-short-future-one' => '{0} min pärast',
+ 'minute-short-future-other' => '{0} min pärast',
+ 'minute-short-past-one' => '{0} min tagasi',
+ 'minute-short-past-other' => '{0} min tagasi',
+ 'month-future-one' => '{0} kuu pärast',
+ 'month-future-other' => '{0} kuu pärast',
+ 'month-narrow-future-one' => '{0} kuu pärast',
+ 'month-narrow-future-other' => '{0} kuu pärast',
+ 'month-narrow-past-one' => '{0} kuu eest',
+ 'month-narrow-past-other' => '{0} kuu eest',
+ 'month-one' => '{0} kuu',
+ 'month-other' => '{0} kuud',
+ 'month-past-one' => '{0} kuu eest',
+ 'month-past-other' => '{0} kuu eest',
+ 'month-short-future-one' => '{0} kuu pärast',
+ 'month-short-future-other' => '{0} kuu pärast',
+ 'month-short-past-one' => '{0} kuu eest',
+ 'month-short-past-other' => '{0} kuu eest',
+ 'nanosecond-one' => '{0} nanosekund',
+ 'nanosecond-other' => '{0} nanosekundit',
+ 'quarter-future-one' => '{0} kvartali pärast',
+ 'quarter-future-other' => '{0} kvartali pärast',
+ 'quarter-narrow-future-one' => '+{0} kv',
+ 'quarter-narrow-future-other' => '+{0} kv',
+ 'quarter-narrow-past-one' => '-{0} kv',
+ 'quarter-narrow-past-other' => '-{0} kv',
+ 'quarter-past-one' => '{0} kvartali eest',
+ 'quarter-past-other' => '{0} kvartali eest',
+ 'quarter-short-future-one' => '{0} kv pärast',
+ 'quarter-short-future-other' => '{0} kv pärast',
+ 'quarter-short-past-one' => '{0} kv eest',
+ 'quarter-short-past-other' => '{0} kv eest',
+ 'second-future-one' => '{0} sekundi pärast',
+ 'second-future-other' => '{0} sekundi pärast',
+ 'second-narrow-future-one' => '{0} s pärast',
+ 'second-narrow-future-other' => '{0} s pärast',
+ 'second-narrow-past-one' => '{0} s tagasi',
+ 'second-narrow-past-other' => '{0} s tagasi',
+ 'second-one' => '{0} sekund',
+ 'second-other' => '{0} sekundit',
+ 'second-past-one' => '{0} sekundi eest',
+ 'second-past-other' => '{0} sekundi eest',
+ 'second-short-future-one' => '{0} s pärast',
+ 'second-short-future-other' => '{0} s pärast',
+ 'second-short-past-one' => '{0} s tagasi',
+ 'second-short-past-other' => '{0} s tagasi',
+ 'week-future-one' => '{0} nädala pärast',
+ 'week-future-other' => '{0} nädala pärast',
+ 'week-narrow-future-one' => '{0} nädala pärast',
+ 'week-narrow-future-other' => '{0} nädala pärast',
+ 'week-narrow-past-one' => '{0} nädala eest',
+ 'week-narrow-past-other' => '{0} nädala eest',
+ 'week-one' => '{0} nädal',
+ 'week-other' => '{0} nädalat',
+ 'week-past-one' => '{0} nädala eest',
+ 'week-past-other' => '{0} nädala eest',
+ 'week-short-future-one' => '{0} nädala pärast',
+ 'week-short-future-other' => '{0} nädala pärast',
+ 'week-short-past-one' => '{0} nädala eest',
+ 'week-short-past-other' => '{0} nädala eest',
+ 'year-future-one' => '{0} aasta pärast',
+ 'year-future-other' => '{0} aasta pärast',
+ 'year-narrow-future-one' => '{0} aasta pärast',
+ 'year-narrow-future-other' => '{0} aasta pärast',
+ 'year-narrow-past-one' => '{0} aasta eest',
+ 'year-narrow-past-other' => '{0} aasta eest',
+ 'year-one' => '{0} aasta',
+ 'year-other' => '{0} aastat',
+ 'year-past-one' => '{0} aasta eest',
+ 'year-past-other' => '{0} aasta eest',
+ 'year-short-future-one' => '{0} aasta pärast',
+ 'year-short-future-other' => '{0} aasta pärast',
+ 'year-short-past-one' => '{0} aasta eest',
+ 'year-short-past-other' => '{0} aasta eest',
+);
diff --git a/MLEB/cldr/CldrNames/CldrNamesEu.php b/MLEB/cldr/CldrNames/CldrNamesEu.php
new file mode 100644
index 00000000..8587698a
--- /dev/null
+++ b/MLEB/cldr/CldrNames/CldrNamesEu.php
@@ -0,0 +1,950 @@
+<?php
+
+$languageNames = array(
+ 'ab' => 'abkhazera',
+ 'ach' => 'Acholiera',
+ 'af' => 'afrikaansa',
+ 'agq' => 'aghemera',
+ 'ak' => 'akanera',
+ 'am' => 'amharera',
+ 'ar' => 'arabiera',
+ 'ar-001' => 'arabiera moderno estandarra',
+ 'arn' => 'maputxea',
+ 'as' => 'assamera',
+ 'asa' => 'asua',
+ 'ay' => 'aimara',
+ 'az' => 'azerbaijanera',
+ 'ba' => 'bashkirrera',
+ 'be' => 'bielorrusiera',
+ 'bem' => 'bembera',
+ 'bez' => 'benera',
+ 'bg' => 'bulgariera',
+ 'bm' => 'bambarera',
+ 'bn' => 'bengalera',
+ 'bo' => 'tibetera',
+ 'br' => 'bretoiera',
+ 'brx' => 'bodoera',
+ 'bs' => 'bosniera',
+ 'ca' => 'katalana',
+ 'cgg' => 'chigera',
+ 'chr' => 'txerokiera',
+ 'ckb' => 'soraniera',
+ 'co' => 'korsikera',
+ 'cs' => 'txekiera',
+ 'cy' => 'galesera',
+ 'da' => 'daniera',
+ 'dav' => 'taitera',
+ 'de' => 'alemana',
+ 'de-ch' => 'aleman garaia (Suitza)',
+ 'dje' => 'zarmera',
+ 'dsb' => 'behe-sorabiera',
+ 'dua' => 'dualera',
+ 'dv' => 'divehiera',
+ 'dyo' => 'fonyi jolera',
+ 'dz' => 'dzongkha',
+ 'ebu' => 'embua',
+ 'ee' => 'eweera',
+ 'efi' => 'efikera',
+ 'el' => 'greziera',
+ 'en' => 'ingelesa',
+ 'en-us' => 'ingelesa (AEB)',
+ 'eo' => 'esperantoa',
+ 'es' => 'espainiera',
+ 'es-es' => 'espainiera (Europa)',
+ 'et' => 'estoniera',
+ 'eu' => 'euskara',
+ 'fa' => 'persiera',
+ 'fi' => 'finlandiera',
+ 'fil' => 'tagaloga',
+ 'fj' => 'fijiera',
+ 'fo' => 'faroera',
+ 'fr' => 'frantsesa',
+ 'fy' => 'frisiera',
+ 'ga' => 'gaelikoa',
+ 'gaa' => 'Ga',
+ 'gag' => 'gagauzera',
+ 'gd' => 'eskoziako gaelikoa',
+ 'gl' => 'galiziera',
+ 'gn' => 'guaraniera',
+ 'gsw' => 'alemana (Suitza)',
+ 'gu' => 'gujaratera',
+ 'guz' => 'gusiiera',
+ 'gv' => 'manxera',
+ 'ha' => 'hausa',
+ 'haw' => 'hawaiiera',
+ 'he' => 'hebreera',
+ 'hi' => 'hindia',
+ 'hr' => 'kroaziera',
+ 'hsb' => 'goi-sorabiera',
+ 'ht' => 'haitiera',
+ 'hu' => 'hungariera',
+ 'hy' => 'armeniera',
+ 'ia' => 'Interlingua',
+ 'id' => 'indonesiera',
+ 'ie' => 'interlingue',
+ 'ig' => 'igboera',
+ 'ii' => 'sichuan yia',
+ 'is' => 'islandiera',
+ 'it' => 'italiera',
+ 'iu' => 'inuitera',
+ 'ja' => 'japoniera',
+ 'jgo' => 'ngomba',
+ 'jmc' => 'machamera',
+ 'jv' => 'javera',
+ 'ka' => 'georgiera',
+ 'kab' => 'kabilera',
+ 'kam' => 'kambera',
+ 'kde' => 'makondera',
+ 'kea' => 'Cabo Verdeko kreola',
+ 'kg' => 'Kikongoa',
+ 'khq' => 'koyra chiiniera',
+ 'ki' => 'kikuyuera',
+ 'kk' => 'kazakhera',
+ 'kl' => 'kalaallisutera',
+ 'kln' => 'kalenjinera',
+ 'km' => 'khemerera',
+ 'kn' => 'kannadera',
+ 'ko' => 'koreera',
+ 'koi' => 'komi-permyakera',
+ 'kok' => 'konkaniera',
+ 'ks' => 'kashmirera',
+ 'ksb' => 'shambalera',
+ 'ksf' => 'bafiera',
+ 'ku' => 'kurduera',
+ 'kw' => 'kornubiera',
+ 'ky' => 'kirgizera',
+ 'la' => 'latina',
+ 'lag' => 'langiera',
+ 'lb' => 'luxenburgera',
+ 'lg' => 'gandera',
+ 'lkt' => 'lakotera',
+ 'ln' => 'lingala',
+ 'lo' => 'laosera',
+ 'loz' => 'Loziera',
+ 'lt' => 'lituaniera',
+ 'lu' => 'luba-katangera',
+ 'lua' => 'Luba-lulua',
+ 'luo' => 'luoera',
+ 'luy' => 'luhyera',
+ 'lv' => 'letoniera',
+ 'mas' => 'masaiera',
+ 'mer' => 'meruera',
+ 'mfe' => 'Mauritaniako kreolera',
+ 'mg' => 'malagasyera',
+ 'mgh' => 'makhuwa-meettoera',
+ 'mgo' => 'metera',
+ 'mi' => 'maoriera',
+ 'mk' => 'mazedoniera',
+ 'ml' => 'malayalamera',
+ 'mn' => 'mongoliera',
+ 'moh' => 'mohawkera',
+ 'mr' => 'marathera',
+ 'ms' => 'malaysiera',
+ 'mt' => 'maltera',
+ 'mua' => 'mudangera',
+ 'mul' => 'hizkuntza anitzak',
+ 'my' => 'burmatarra',
+ 'naq' => 'namera',
+ 'nb' => 'bokmala (Norvegia)',
+ 'nd' => 'iparraldeko ndebeleera',
+ 'ne' => 'nepalera',
+ 'nl' => 'nederlandera',
+ 'nl-be' => 'flandriera',
+ 'nmg' => 'kwasiera',
+ 'nn' => 'nynorsk norvegiera',
+ 'no' => 'norvegiera',
+ 'nqo' => 'n’koera',
+ 'nso' => 'pediera',
+ 'nus' => 'nuerera',
+ 'ny' => 'nyanja',
+ 'nyn' => 'ankolera',
+ 'oc' => 'Okzitaniera',
+ 'om' => 'oromoera',
+ 'or' => 'oriyera',
+ 'os' => 'osetiera',
+ 'pa' => 'punjabera',
+ 'pl' => 'poloniera',
+ 'ps' => 'paxtuera',
+ 'pt' => 'portugesa',
+ 'pt-pt' => 'portugesa (Europa)',
+ 'qu' => 'quechuera',
+ 'quc' => 'k’iche’ra',
+ 'rm' => 'erromantxera',
+ 'rn' => 'rundiera',
+ 'ro' => 'errumaniera',
+ 'rof' => 'romboera',
+ 'ru' => 'errusiera',
+ 'rw' => 'kinyaruanda',
+ 'rwk' => 'rwaera',
+ 'sa' => 'sanskritoa',
+ 'saq' => 'samburuera',
+ 'sbp' => 'sanguera',
+ 'sd' => 'sindhia',
+ 'se' => 'iparraldeko samiera',
+ 'seh' => 'senera',
+ 'ses' => 'koyraboro sennia',
+ 'sg' => 'sangoera',
+ 'sh' => 'serbokroaziera',
+ 'shi' => 'tachelhita',
+ 'si' => 'sinhala',
+ 'sk' => 'eslovakiera',
+ 'sl' => 'esloveniera',
+ 'sm' => 'samoera',
+ 'sma' => 'hegoaldeko samiera',
+ 'smj' => 'Lule samiera',
+ 'smn' => 'Inari samiera',
+ 'sms' => 'Skolt samiera',
+ 'sn' => 'shonera',
+ 'so' => 'somaliera',
+ 'sq' => 'albaniera',
+ 'sr' => 'serbiera',
+ 'ss' => 'swatiera',
+ 'st' => 'hegoaldeko sothoera',
+ 'su' => 'sundanera',
+ 'sv' => 'suediera',
+ 'sw' => 'swahili',
+ 'swc' => 'Kongoko swahilia',
+ 'ta' => 'tamilera',
+ 'te' => 'teluguera',
+ 'teo' => 'tesoera',
+ 'tet' => 'tetuma',
+ 'tg' => 'tajikistanera',
+ 'th' => 'thailandiera',
+ 'ti' => 'tigriñera',
+ 'tk' => 'turkmeniera',
+ 'tl' => 'tagalog',
+ 'tlh' => 'Klingonera',
+ 'tn' => 'tswanera',
+ 'to' => 'tongera',
+ 'tpi' => 'tok pisina',
+ 'tr' => 'turkiera',
+ 'ts' => 'tsongera',
+ 'tt' => 'tatarera',
+ 'tum' => 'Tumbukera',
+ 'tw' => 'twia',
+ 'twq' => 'tasawaqa',
+ 'ty' => 'tahitiera',
+ 'tzm' => 'Maroko erdialdeko tamazighta',
+ 'ug' => 'uigurrera',
+ 'uk' => 'ukrainera',
+ 'und' => 'hizkuntza ezezaguna',
+ 'ur' => 'urdua',
+ 'uz' => 'uzbekera',
+ 'vai' => 'vaiera',
+ 've' => 'vendera',
+ 'vi' => 'vietnamera',
+ 'vun' => 'vunjoa',
+ 'wo' => 'wolofera',
+ 'xh' => 'xhosera',
+ 'xog' => 'sogera',
+ 'yi' => 'Jiddisha',
+ 'yo' => 'yorubera',
+ 'zgh' => 'tamazight estandarra',
+ 'zh' => 'txinera',
+ 'zh-hans' => 'txinera soildua',
+ 'zh-hant' => 'txinera tradizionala',
+ 'zu' => 'zuluera',
+ 'zxx' => 'ez dago eduki linguistikorik',
+);
+
+$currencyNames = array(
+ 'AED' => 'Arabiar Emirerri Batuetako dirhama',
+ 'AFN' => 'Afganistango afghania',
+ 'ALL' => 'Albaniako leka',
+ 'AMD' => 'Armeniako drama',
+ 'ANG' => 'Holandarren Antilletako guilderra',
+ 'AOA' => 'Angolako kwanza',
+ 'ARS' => 'Argentinako pesoa',
+ 'AUD' => 'Australiako dolarra',
+ 'AWG' => 'Arubeko florina',
+ 'AZN' => 'Azerbaijango manata',
+ 'BAM' => 'Bosnia-Herzegovinako marko trukakorra',
+ 'BBD' => 'Barbadosetako dolarra',
+ 'BDT' => 'Bangladesheko taka',
+ 'BGN' => 'Bulgariako leva',
+ 'BHD' => 'Bahraingo dinarra',
+ 'BIF' => 'Burundiko frankoa',
+ 'BMD' => 'Bermudetako dolarra',
+ 'BND' => 'Bruneiko dolarra',
+ 'BOB' => 'Boliviako bolivianoa',
+ 'BRL' => 'Brasilgo erreala',
+ 'BSD' => 'Bahametako dolarra',
+ 'BTN' => 'Bhutango ngultruma',
+ 'BWP' => 'Bosniako pula',
+ 'BYR' => 'Bielorrusiako errubloa',
+ 'BZD' => 'Belizeko dolarra',
+ 'CAD' => 'Kanadako dolarra',
+ 'CDF' => 'Kongoko frankoa',
+ 'CHF' => 'Suitzako frankoa',
+ 'CLP' => 'Txileko pesoa',
+ 'CNY' => 'Txinako yuana',
+ 'COP' => 'Kolonbiako pesoa',
+ 'CRC' => 'Costa Ricako colona',
+ 'CUC' => 'Kubako peso trukakorra',
+ 'CUP' => 'Kubako pesoa',
+ 'CVE' => 'Cabo Verdeko ezkutua',
+ 'CZK' => 'Txekiar Errepublikako koroa',
+ 'DJF' => 'Djibouteko frankoa',
+ 'DKK' => 'Danimarkako koroa',
+ 'DOP' => 'Dominikar Errepublikako pesoa',
+ 'DZD' => 'Algeriako dinarra',
+ 'EGP' => 'Egiptoko libera',
+ 'ERN' => 'Eritreako nakfa',
+ 'ETB' => 'Etiopiako birra',
+ 'EUR' => 'Euroa',
+ 'FJD' => 'Fijiko dolarra',
+ 'FKP' => 'Falkland uharteetako libera',
+ 'GBP' => 'Libera esterlina',
+ 'GEL' => 'Georgiako laria',
+ 'GHS' => 'Ghanako cedia',
+ 'GIP' => 'Gibraltarreko libera',
+ 'GMD' => 'Ganbiako dalasia',
+ 'GNF' => 'Gineako frankoa',
+ 'GTQ' => 'Guatemalako quetzala',
+ 'GYD' => 'Guyanako dolarra',
+ 'HKD' => 'Hong Kongeko dolarra',
+ 'HNL' => 'Hondurasko lempira',
+ 'HRK' => 'Kroaziako kuna',
+ 'HTG' => 'Haitiko gourdea',
+ 'HUF' => 'Hungariako florina',
+ 'IDR' => 'Indonesiako errupia',
+ 'ILS' => 'Israeleko sheqel berria',
+ 'INR' => 'Indiako errupia',
+ 'IQD' => 'Irakeko dinarra',
+ 'IRR' => 'Irango riala',
+ 'ISK' => 'Islandiako koroa',
+ 'JMD' => 'Jamaikako dolarra',
+ 'JOD' => 'Jordaniako dinarra',
+ 'JPY' => 'Japoniako yena',
+ 'KES' => 'Kenyako txelina',
+ 'KGS' => 'Kirgizistango soma',
+ 'KHR' => 'Kanbodiako riela',
+ 'KMF' => 'Komoreetako frankoa',
+ 'KPW' => 'Ipar Koreako wona',
+ 'KRW' => 'Hego Koreako wona',
+ 'KWD' => 'Kuwaiteko dinarra',
+ 'KYD' => 'Kaiman uharteetako dolarra',
+ 'KZT' => 'Kazakhstango tengea',
+ 'LAK' => 'Laoseko kipa',
+ 'LBP' => 'Libanoko libera',
+ 'LKR' => 'Sri Lankako errupia',
+ 'LRD' => 'Liberiako dolarra',
+ 'LSL' => 'Lesothoko lotia',
+ 'LTL' => 'Lituaniako litasa',
+ 'LVL' => 'Letoniako latsa',
+ 'LYD' => 'Libiako dinarra',
+ 'MAD' => 'Marokoko dirhama',
+ 'MDL' => 'Moldaviako leua',
+ 'MGA' => 'Madagaskarreko ariarya',
+ 'MKD' => 'Mazedoniako denara',
+ 'MMK' => 'Myanmarreko kyata',
+ 'MNT' => 'Mongoliako tugrika',
+ 'MOP' => 'Macanako pataca',
+ 'MRO' => 'Mauritaniako ouguiya',
+ 'MUR' => 'Maurizio uharteetako errupia',
+ 'MVR' => 'Maldivetako rufiyaa',
+ 'MWK' => 'Malawiko kwacha',
+ 'MXN' => 'Mexikoko pesoa',
+ 'MYR' => 'Malaysiako ringgita',
+ 'MZN' => 'Mozambikeko metikala',
+ 'NAD' => 'Namibiako dolarra',
+ 'NGN' => 'Nigeriako naira',
+ 'NIO' => 'Nikaraguako cordoba',
+ 'NOK' => 'Norvegiako koroa',
+ 'NPR' => 'Nepalgo errupia',
+ 'NZD' => 'Zeelanda Berriko dolarra',
+ 'OMR' => 'Omango riala',
+ 'PAB' => 'Panamako balboa',
+ 'PEN' => 'Peruko sol berria',
+ 'PGK' => 'Papua Ginea Berriko kina',
+ 'PHP' => 'Filipinetako pesoa',
+ 'PKR' => 'Pakistango errupia',
+ 'PLN' => 'Poloniako zlotya',
+ 'PYG' => 'Paraguaiko guarania',
+ 'QAR' => 'Qatarreko riala',
+ 'RON' => 'Errumaniako leua',
+ 'RSD' => 'Serbiako dinarra',
+ 'RUB' => 'Errusiako errubloa',
+ 'RWF' => 'Ruandako frankoa',
+ 'SAR' => 'Saudiko riala',
+ 'SBD' => 'Salomon uharteetako dolarra',
+ 'SCR' => 'Seychelleetako errupia',
+ 'SDG' => 'Sudango libera',
+ 'SEK' => 'Suediako koroa',
+ 'SGD' => 'Singapurreko dolarra',
+ 'SHP' => 'Santa Helenako libera',
+ 'SLL' => 'Sierra Leonako leona',
+ 'SOS' => 'Somaliako txelina',
+ 'SRD' => 'Surinameko dolarra',
+ 'SSP' => 'Hego Sudango libera',
+ 'STD' => 'Sao Tomeko eta Principeko dobra',
+ 'SYP' => 'Siriako libera',
+ 'SZL' => 'Swaziko lilangenia',
+ 'THB' => 'Thailandiako bahta',
+ 'TJS' => 'Tajikistango somonia',
+ 'TMT' => 'Turkmenistango manata',
+ 'TND' => 'Tunisiako dinarra',
+ 'TOP' => 'Tongako Paʻanga',
+ 'TRY' => 'Turkiako lira',
+ 'TTD' => 'Trinidadeko eta Tobagoko dolarra',
+ 'TWD' => 'Taiwango dolar berria',
+ 'TZS' => 'Tanzaniako txelina',
+ 'UAH' => 'Ukrainako hryvnia',
+ 'UGX' => 'Ugandako txelina',
+ 'USD' => 'AEBetako dolarra',
+ 'UYU' => 'Uruguaiko pesoa',
+ 'UZS' => 'Uzbekistango soma',
+ 'VEF' => 'Venezuelako bolivarra',
+ 'VND' => 'Vietnameko donga',
+ 'VUV' => 'Vanuatuko vatua',
+ 'WST' => 'Samoko tala',
+ 'XAF' => 'Afrika erdialdeko frankoa BEAC',
+ 'XCD' => 'Karibe ekialdeko dolarra',
+ 'XOF' => 'Afrika ekialdeko frankoa BCEAO',
+ 'XPF' => 'CFP frankoa',
+ 'XXX' => 'Moneta ezezaguna',
+ 'YER' => 'Yemengo riala',
+ 'ZAR' => 'Hegoafrikako randa',
+ 'ZMK' => 'Zambiako kwacha (1968–2012)',
+ 'ZMW' => 'Zambiako kwacha',
+);
+
+$currencySymbols = array(
+ 'AED' => 'AED',
+ 'AFN' => 'AFN',
+ 'ALL' => 'ALL',
+ 'AMD' => 'AMD',
+ 'ANG' => 'ANG',
+ 'AOA' => 'AOA',
+ 'ARS' => 'ARS',
+ 'AUD' => 'A$',
+ 'AWG' => 'AWG',
+ 'AZN' => 'AZN',
+ 'BAM' => 'BAM',
+ 'BBD' => 'BBD',
+ 'BDT' => 'BDT',
+ 'BGN' => 'BGN',
+ 'BHD' => 'BHD',
+ 'BIF' => 'BIF',
+ 'BMD' => 'BMD',
+ 'BND' => 'BND',
+ 'BOB' => 'BOB',
+ 'BRL' => 'R$',
+ 'BSD' => 'BSD',
+ 'BTN' => 'BTN',
+ 'BWP' => 'BWP',
+ 'BYR' => 'BYR',
+ 'BZD' => 'BZD',
+ 'CAD' => 'CA$',
+ 'CDF' => 'CDF',
+ 'CHF' => 'CHF',
+ 'CLP' => 'CLP',
+ 'CNY' => 'CN¥',
+ 'COP' => 'COP',
+ 'CRC' => 'CRC',
+ 'CUC' => 'CUC',
+ 'CUP' => 'CUP',
+ 'CVE' => 'CVE',
+ 'CZK' => 'CZK',
+ 'DJF' => 'DJF',
+ 'DKK' => 'DKK',
+ 'DOP' => 'DOP',
+ 'DZD' => 'DZD',
+ 'EGP' => 'EGP',
+ 'ERN' => 'ERN',
+ 'ETB' => 'ETB',
+ 'EUR' => '€',
+ 'FJD' => 'FJD',
+ 'FKP' => 'FKP',
+ 'GBP' => '£',
+ 'GEL' => 'GEL',
+ 'GHS' => 'GHS',
+ 'GIP' => 'GIP',
+ 'GMD' => 'GMD',
+ 'GNF' => 'GNF',
+ 'GTQ' => 'GTQ',
+ 'GYD' => 'GYD',
+ 'HKD' => 'HK$',
+ 'HNL' => 'HNL',
+ 'HRK' => 'HRK',
+ 'HTG' => 'HTG',
+ 'HUF' => 'HUF',
+ 'IDR' => 'IDR',
+ 'ILS' => '₪',
+ 'INR' => '₹',
+ 'IQD' => 'IQD',
+ 'IRR' => 'IRR',
+ 'ISK' => 'ISK',
+ 'JMD' => 'JMD',
+ 'JOD' => 'JOD',
+ 'JPY' => 'JP¥',
+ 'KES' => 'KES',
+ 'KGS' => 'KGS',
+ 'KHR' => 'KHR',
+ 'KMF' => 'KMF',
+ 'KPW' => 'KPW',
+ 'KRW' => '₩',
+ 'KWD' => 'KWD',
+ 'KYD' => 'KYD',
+ 'KZT' => 'KZT',
+ 'LAK' => 'LAK',
+ 'LBP' => 'LBP',
+ 'LKR' => 'LKR',
+ 'LRD' => 'LRD',
+ 'LTL' => 'LTL',
+ 'LVL' => 'LVL',
+ 'LYD' => 'LYD',
+ 'MAD' => 'MAD',
+ 'MDL' => 'MDL',
+ 'MGA' => 'MGA',
+ 'MKD' => 'MKD',
+ 'MMK' => 'MMK',
+ 'MNT' => 'MNT',
+ 'MOP' => 'MOP',
+ 'MRO' => 'MRO',
+ 'MUR' => 'MUR',
+ 'MVR' => 'MVR',
+ 'MWK' => 'MWK',
+ 'MXN' => 'MX$',
+ 'MYR' => 'MYR',
+ 'MZN' => 'MZN',
+ 'NAD' => 'NAD',
+ 'NGN' => 'NGN',
+ 'NIO' => 'NIO',
+ 'NOK' => 'NOK',
+ 'NPR' => 'NPR',
+ 'NZD' => 'NZ$',
+ 'OMR' => 'OMR',
+ 'PAB' => 'PAB',
+ 'PEN' => 'PEN',
+ 'PGK' => 'PGK',
+ 'PHP' => 'PHP',
+ 'PKR' => 'PKR',
+ 'PLN' => 'PLN',
+ 'PYG' => 'PYG',
+ 'QAR' => 'QAR',
+ 'RON' => 'RON',
+ 'RSD' => 'RSD',
+ 'RUB' => 'RUB',
+ 'RWF' => 'RWF',
+ 'SAR' => 'SAR',
+ 'SBD' => 'SBD',
+ 'SCR' => 'SCR',
+ 'SDG' => 'SDG',
+ 'SEK' => 'SEK',
+ 'SGD' => 'SGD',
+ 'SHP' => 'SHP',
+ 'SLL' => 'SLL',
+ 'SOS' => 'SOS',
+ 'SRD' => 'SRD',
+ 'SSP' => 'SSP',
+ 'STD' => 'STD',
+ 'SYP' => 'SYP',
+ 'SZL' => 'SZL',
+ 'THB' => '฿',
+ 'TJS' => 'TJS',
+ 'TMT' => 'TMT',
+ 'TND' => 'TND',
+ 'TOP' => 'TOP',
+ 'TRY' => 'TRY',
+ 'TTD' => 'TTD',
+ 'TWD' => 'NT$',
+ 'TZS' => 'TZS',
+ 'UAH' => 'UAH',
+ 'UGX' => 'UGX',
+ 'USD' => 'US$',
+ 'UYU' => 'UYU',
+ 'UZS' => 'UZS',
+ 'VEF' => 'VEF',
+ 'VND' => '₫',
+ 'VUV' => 'VUV',
+ 'WST' => 'WST',
+ 'XAF' => 'FCFA',
+ 'XCD' => 'EC$',
+ 'XOF' => 'CFA',
+ 'XPF' => 'CFPF',
+ 'YER' => 'YER',
+ 'ZAR' => 'ZAR',
+ 'ZMW' => 'ZMW',
+);
+
+$countryNames = array(
+ 'AC' => 'Ascension uhartea',
+ 'AD' => 'Andorra',
+ 'AE' => 'Arabiar Emirrerri Batuak',
+ 'AF' => 'Afganistan',
+ 'AG' => 'Antigua eta Barbuda',
+ 'AI' => 'Angila',
+ 'AL' => 'Albania',
+ 'AM' => 'Armenia',
+ 'AN' => 'Holandarren Antillak',
+ 'AO' => 'Angola',
+ 'AQ' => 'Antartika',
+ 'AR' => 'Argentina',
+ 'AS' => 'Amerikar Samoa',
+ 'AT' => 'Austria',
+ 'AU' => 'Australia',
+ 'AW' => 'Aruba',
+ 'AX' => 'Aland uharteak',
+ 'AZ' => 'Azerbaijan',
+ 'BA' => 'Bosnia-Herzegovina',
+ 'BB' => 'Barbados',
+ 'BD' => 'Bangladesh',
+ 'BE' => 'Belgika',
+ 'BF' => 'Burkina Faso',
+ 'BG' => 'Bulgaria',
+ 'BH' => 'Bahrain',
+ 'BI' => 'Burundi',
+ 'BJ' => 'Benin',
+ 'BL' => 'San Bartolome',
+ 'BM' => 'Bermuda',
+ 'BN' => 'Brunei',
+ 'BO' => 'Bolivia',
+ 'BQ' => 'Karibeko Herbehereak',
+ 'BR' => 'Brasil',
+ 'BS' => 'Bahamak',
+ 'BT' => 'Bhutan',
+ 'BV' => 'Bouvet uhartea',
+ 'BW' => 'Botswana',
+ 'BY' => 'Bielorrusia',
+ 'BZ' => 'Belize',
+ 'CA' => 'Kanada',
+ 'CC' => 'Cocos (Keeling) uharteak',
+ 'CD' => 'Kongoko Errepublika Demokratikoa',
+ 'CF' => 'Afrika Erdiko Errepublika',
+ 'CG' => 'Kongo (Brazzaville)',
+ 'CH' => 'Suitza',
+ 'CI' => 'Boli Kosta',
+ 'CK' => 'Cook uharteak',
+ 'CL' => 'Txile',
+ 'CM' => 'Kamerun',
+ 'CN' => 'Txina',
+ 'CO' => 'Kolonbia',
+ 'CP' => 'Clipperton uhartea',
+ 'CR' => 'Costa Rica',
+ 'CU' => 'Kuba',
+ 'CV' => 'Cabo Verde',
+ 'CW' => 'Curaçao',
+ 'CX' => 'Christmas uhartea',
+ 'CY' => 'Zipre',
+ 'CZ' => 'Txekiar Errepublika',
+ 'DE' => 'Alemania',
+ 'DG' => 'Diego Garcia',
+ 'DJ' => 'Djibuti',
+ 'DK' => 'Danimarka',
+ 'DM' => 'Dominika',
+ 'DO' => 'Dominikar Errepublika',
+ 'DZ' => 'Aljeria',
+ 'EA' => 'Ceuta eta Melilla',
+ 'EC' => 'Ekuador',
+ 'EE' => 'Estonia',
+ 'EG' => 'Egipto',
+ 'EH' => 'Mendebaldeko Sahara',
+ 'ER' => 'Eritrea',
+ 'ES' => 'Espainia',
+ 'ET' => 'Etiopia',
+ 'EU' => 'Europar Batasuna',
+ 'FI' => 'Finlandia',
+ 'FJ' => 'Fiji',
+ 'FK' => 'Malvinak',
+ 'FM' => 'Mikronesia',
+ 'FO' => 'Faroe uharteak',
+ 'FR' => 'Frantzia',
+ 'GA' => 'Gabon',
+ 'GB' => 'EB',
+ 'GD' => 'Grenada',
+ 'GE' => 'Georgia',
+ 'GF' => 'Guyana Frantsesa',
+ 'GG' => 'Guernsey',
+ 'GH' => 'Ghana',
+ 'GI' => 'Gibraltar',
+ 'GL' => 'Groenlandia',
+ 'GM' => 'Gambia',
+ 'GN' => 'Ginea',
+ 'GP' => 'Guadalupe',
+ 'GQ' => 'Ekuatore Ginea',
+ 'GR' => 'Grezia',
+ 'GS' => 'Hegoaldeko Georgia eta Hegoaldeko Sandwich uharteak',
+ 'GT' => 'Guatemala',
+ 'GU' => 'Guam',
+ 'GW' => 'Ginea-Bissau',
+ 'GY' => 'Guyana',
+ 'HK' => 'Hong Kong',
+ 'HM' => 'Heard eta McDonald uharteak',
+ 'HN' => 'Honduras',
+ 'HR' => 'Kroazia',
+ 'HT' => 'Haiti',
+ 'HU' => 'Hungaria',
+ 'IC' => 'Kanariak',
+ 'ID' => 'Indonesia',
+ 'IE' => 'Irlanda',
+ 'IL' => 'Israel',
+ 'IM' => 'Man uhartea',
+ 'IN' => 'India',
+ 'IO' => 'Indiako Ozeanoko lurralde britainiarra',
+ 'IQ' => 'Irak',
+ 'IR' => 'Iran',
+ 'IS' => 'Islandia',
+ 'IT' => 'Italia',
+ 'JE' => 'Jersey',
+ 'JM' => 'Jamaika',
+ 'JO' => 'Jordania',
+ 'JP' => 'Japonia',
+ 'KE' => 'Kenya',
+ 'KG' => 'Kirgizistan',
+ 'KH' => 'Kanbodia',
+ 'KI' => 'Kiribati',
+ 'KM' => 'Komoreak',
+ 'KN' => 'Saint Kitts eta Nevis',
+ 'KP' => 'Ipar Korea',
+ 'KR' => 'Hego Korea',
+ 'KW' => 'Kuwait',
+ 'KY' => 'Kaiman uharteak',
+ 'KZ' => 'Kazakhstan',
+ 'LA' => 'Laos',
+ 'LB' => 'Libano',
+ 'LC' => 'Santa Luzia',
+ 'LI' => 'Liechtenstein',
+ 'LK' => 'Sri Lanka',
+ 'LR' => 'Liberia',
+ 'LS' => 'Lesotho',
+ 'LT' => 'Lituania',
+ 'LU' => 'Luxenburgo',
+ 'LV' => 'Letonia',
+ 'LY' => 'Libia',
+ 'MA' => 'Maroko',
+ 'MC' => 'Monako',
+ 'MD' => 'Moldavia',
+ 'ME' => 'Montenegro',
+ 'MF' => 'Saint Martin',
+ 'MG' => 'Madagaskar',
+ 'MH' => 'Marshall uharteak',
+ 'MK' => 'Mazedonia',
+ 'ML' => 'Mali',
+ 'MM' => 'Myanmar',
+ 'MN' => 'Mongolia',
+ 'MO' => 'Macau',
+ 'MP' => 'Iparraldeko Mariana uharteak',
+ 'MQ' => 'Martinika',
+ 'MR' => 'Mauritania',
+ 'MS' => 'Montserrat',
+ 'MT' => 'Malta',
+ 'MU' => 'Maurizio',
+ 'MV' => 'Maldivak',
+ 'MW' => 'Malawi',
+ 'MX' => 'Mexiko',
+ 'MY' => 'Malaysia',
+ 'MZ' => 'Mozambike',
+ 'NA' => 'Namibia',
+ 'NC' => 'Kaledonia Berria',
+ 'NE' => 'Niger',
+ 'NF' => 'Norfolk uhartea',
+ 'NG' => 'Nigeria',
+ 'NI' => 'Nikaragua',
+ 'NL' => 'Herbehereak',
+ 'NO' => 'Norvegia',
+ 'NP' => 'Nepal',
+ 'NR' => 'Nauru',
+ 'NU' => 'Niue',
+ 'NZ' => 'Zeelanda Berria',
+ 'OM' => 'Oman',
+ 'PA' => 'Panama',
+ 'PE' => 'Peru',
+ 'PF' => 'Polinesia Frantsesa',
+ 'PG' => 'Papua Ginea Berria',
+ 'PH' => 'Filipinak',
+ 'PK' => 'Pakistan',
+ 'PL' => 'Polonia',
+ 'PM' => 'Saint-Pierre eta Mikelune',
+ 'PN' => 'Pitcairn uharteak',
+ 'PR' => 'Puerto Rico',
+ 'PS' => 'Palestina',
+ 'PT' => 'Portugal',
+ 'PW' => 'Palau',
+ 'PY' => 'Paraguai',
+ 'QA' => 'Qatar',
+ 'QO' => 'Mugaz kanpoko Ozeania',
+ 'RE' => 'Reunion',
+ 'RO' => 'Errumania',
+ 'RS' => 'Serbia',
+ 'RU' => 'Errusia',
+ 'RW' => 'Ruanda',
+ 'SA' => 'Saudi Arabia',
+ 'SB' => 'Salomon uharteak',
+ 'SC' => 'Seychelleak',
+ 'SD' => 'Sudan',
+ 'SE' => 'Suedia',
+ 'SG' => 'Singapur',
+ 'SH' => 'Saint Helena',
+ 'SI' => 'Eslovenia',
+ 'SJ' => 'Svalbard eta Jan Mayen uharteak',
+ 'SK' => 'Eslovakia',
+ 'SL' => 'Sierra Leona',
+ 'SM' => 'San Marino',
+ 'SN' => 'Senegal',
+ 'SO' => 'Somalia',
+ 'SR' => 'Surinam',
+ 'SS' => 'Hego Sudan',
+ 'ST' => 'Sao Tome eta Principe',
+ 'SV' => 'El Salvador',
+ 'SX' => 'Sint Maarten',
+ 'SY' => 'Siria',
+ 'SZ' => 'Swazilandia',
+ 'TA' => 'Tristan da Cunha',
+ 'TC' => 'Turk eta Caicos uharteak',
+ 'TD' => 'Txad',
+ 'TF' => 'Hegoaldeko lurralde frantsesak',
+ 'TG' => 'Togo',
+ 'TH' => 'Thailandia',
+ 'TJ' => 'Tadjikistan',
+ 'TK' => 'Tokelau',
+ 'TL' => 'Ekialdeko Timor',
+ 'TM' => 'Turkmenistan',
+ 'TN' => 'Tunisia',
+ 'TO' => 'Tonga',
+ 'TR' => 'Turkia',
+ 'TT' => 'Trinidad eta Tobago',
+ 'TV' => 'Tuvalu',
+ 'TW' => 'Taiwan',
+ 'TZ' => 'Tanzania',
+ 'UA' => 'Ukraina',
+ 'UG' => 'Uganda',
+ 'UM' => 'Ameriketako Estatu Batuetako Kanpoaldeko Uharte Txikiak',
+ 'US' => 'AEB',
+ 'UY' => 'Uruguai',
+ 'UZ' => 'Uzbekistan',
+ 'VA' => 'Vatikano Hiria',
+ 'VC' => 'Saint Vincent eta Grenadinak',
+ 'VE' => 'Venezuela',
+ 'VG' => 'Birjina uharte britainiarrak',
+ 'VI' => 'Birjina uharte amerikarrak',
+ 'VN' => 'Vietnam',
+ 'VU' => 'Vanuatu',
+ 'WF' => 'Wallis eta Futuna',
+ 'WS' => 'Samoa',
+ 'XK' => 'Kosovo',
+ 'YE' => 'Yemen',
+ 'YT' => 'Mayotte',
+ 'ZA' => 'Hegoafrika',
+ 'ZM' => 'Zambia',
+ 'ZW' => 'Zimbabwe',
+);
+
+$timeUnits = array(
+ 'day-future-one' => '{0} egun barru',
+ 'day-future-other' => '{0} egun barru',
+ 'day-narrow-future-one' => '{0} egun barru',
+ 'day-narrow-future-other' => '{0} egun barru',
+ 'day-narrow-past-one' => 'Duela {0} egun',
+ 'day-narrow-past-other' => 'Duela {0} egun',
+ 'day-one' => '{0} egun',
+ 'day-other' => '{0} egun',
+ 'day-past-one' => 'Duela {0} egun',
+ 'day-past-other' => 'Duela {0} egun',
+ 'day-short-future-one' => '{0} egun barru',
+ 'day-short-future-other' => '{0} egun barru',
+ 'day-short-past-one' => 'Duela {0} egun',
+ 'day-short-past-other' => 'Duela {0} egun',
+ 'hour-future-one' => '{0} ordu barru',
+ 'hour-future-other' => '{0} ordu barru',
+ 'hour-narrow-future-one' => '{0} ordu barru',
+ 'hour-narrow-future-other' => '{0} ordu barru',
+ 'hour-narrow-past-one' => 'Duela {0} ordu',
+ 'hour-narrow-past-other' => 'Duela {0} ordu',
+ 'hour-one' => '{0} ordu',
+ 'hour-other' => '{0} ordu',
+ 'hour-past-one' => 'Duela {0} ordu',
+ 'hour-past-other' => 'Duela {0} ordu',
+ 'hour-short-future-one' => '{0} ordu barru',
+ 'hour-short-future-other' => '{0} ordu barru',
+ 'hour-short-past-one' => 'Duela {0} ordu',
+ 'hour-short-past-other' => 'Duela {0} ordu',
+ 'microsecond-one' => '{0} mikrosegundo',
+ 'microsecond-other' => '{0} mikrosegundo',
+ 'millisecond-one' => '{0} milisegundo',
+ 'millisecond-other' => '{0} milisegundo',
+ 'minute-future-one' => '{0} minutu barru',
+ 'minute-future-other' => '{0} minutu barru',
+ 'minute-narrow-future-one' => '{0} minutu barru',
+ 'minute-narrow-future-other' => '{0} minutu barru',
+ 'minute-narrow-past-one' => 'Duela {0} minutu',
+ 'minute-narrow-past-other' => 'Duela {0} minutu',
+ 'minute-one' => '{0} minutu',
+ 'minute-other' => '{0} minutu',
+ 'minute-past-one' => 'Duela {0} minutu',
+ 'minute-past-other' => 'Duela {0} minutu',
+ 'minute-short-future-one' => '{0} minutu barru',
+ 'minute-short-future-other' => '{0} minutu barru',
+ 'minute-short-past-one' => 'Duela {0} minutu',
+ 'minute-short-past-other' => 'Duela {0} minutu',
+ 'month-future-one' => '{0} hilabete barru',
+ 'month-future-other' => '{0} hilabete barru',
+ 'month-narrow-future-one' => '{0} hilabete barru',
+ 'month-narrow-future-other' => '{0} hilabete barru',
+ 'month-narrow-past-one' => 'Duela {0} hilabete',
+ 'month-narrow-past-other' => 'Duela {0} hilabete',
+ 'month-one' => '{0} hilabete',
+ 'month-other' => '{0} hilabete',
+ 'month-past-one' => 'Duela {0} hilabete',
+ 'month-past-other' => 'Duela {0} hilabete',
+ 'month-short-future-one' => '{0} hilabete barru',
+ 'month-short-future-other' => '{0} hilabete barru',
+ 'month-short-past-one' => 'Duela {0} hilabete',
+ 'month-short-past-other' => 'Duela {0} hilabete',
+ 'nanosecond-one' => '{0} nanosegundo',
+ 'nanosecond-other' => '{0} nanosegundo',
+ 'quarter-future-one' => '{0} hiruhileko barru',
+ 'quarter-future-other' => '{0} hiruhileko barru',
+ 'quarter-narrow-future-one' => '{0} hiruhileko barru',
+ 'quarter-narrow-future-other' => '{0} hiruhileko barru',
+ 'quarter-narrow-past-one' => 'Duela {0} hiruhileko',
+ 'quarter-narrow-past-other' => 'Duela {0} hiruhileko',
+ 'quarter-past-one' => 'Duela {0} hiruhileko',
+ 'quarter-past-other' => 'Duela {0} hiruhileko',
+ 'quarter-short-future-one' => '{0} hiruhileko barru',
+ 'quarter-short-future-other' => '{0} hiruhileko barru',
+ 'quarter-short-past-one' => 'Duela {0} hiruhileko',
+ 'quarter-short-past-other' => 'Duela {0} hiruhileko',
+ 'second-future-one' => '{0} segundo barru',
+ 'second-future-other' => '{0} segundo barru',
+ 'second-narrow-future-one' => '{0} segundo barru',
+ 'second-narrow-future-other' => '{0} segundo barru',
+ 'second-narrow-past-one' => 'Duela {0} segundo',
+ 'second-narrow-past-other' => 'Duela {0} segundo',
+ 'second-one' => '{0} segundo',
+ 'second-other' => '{0} segundo',
+ 'second-past-one' => 'Duela {0} segundo',
+ 'second-past-other' => 'Duela {0} segundo',
+ 'second-short-future-one' => '{0} segundo barru',
+ 'second-short-future-other' => '{0} segundo barru',
+ 'second-short-past-one' => 'Duela {0} segundo',
+ 'second-short-past-other' => 'Duela {0} segundo',
+ 'week-future-one' => '{0} aste barru',
+ 'week-future-other' => '{0} aste barru',
+ 'week-narrow-future-one' => '{0} aste barru',
+ 'week-narrow-future-other' => '{0} aste barru',
+ 'week-narrow-past-one' => 'Duela {0} aste',
+ 'week-narrow-past-other' => 'Duela {0} aste',
+ 'week-one' => '{0} aste',
+ 'week-other' => '{0} aste',
+ 'week-past-one' => 'Duela {0} aste',
+ 'week-past-other' => 'Duela {0} aste',
+ 'week-short-future-one' => '{0} aste barru',
+ 'week-short-future-other' => '{0} aste barru',
+ 'week-short-past-one' => 'Duela {0} aste',
+ 'week-short-past-other' => 'Duela {0} aste',
+ 'year-future-one' => '{0} urte barru',
+ 'year-future-other' => '{0} urte barru',
+ 'year-narrow-future-one' => '{0} urte barru',
+ 'year-narrow-future-other' => '{0} urte barru',
+ 'year-narrow-past-one' => 'Duela {0} urte',
+ 'year-narrow-past-other' => 'Duela {0} urte',
+ 'year-one' => '{0} urte',
+ 'year-other' => '{0} urte',
+ 'year-past-one' => 'Duela {0} urte',
+ 'year-past-other' => 'Duela {0} urte',
+ 'year-short-future-one' => '{0} urte barru',
+ 'year-short-future-other' => '{0} urte barru',
+ 'year-short-past-one' => 'Duela {0} urte',
+ 'year-short-past-other' => 'Duela {0} urte',
+);
diff --git a/MLEB/cldr/CldrNames/CldrNamesFa.php b/MLEB/cldr/CldrNames/CldrNamesFa.php
new file mode 100644
index 00000000..d5765472
--- /dev/null
+++ b/MLEB/cldr/CldrNames/CldrNamesFa.php
@@ -0,0 +1,1123 @@
+<?php
+
+$languageNames = array(
+ 'aa' => 'آفاری',
+ 'ab' => 'آبخازی',
+ 'ace' => 'آچئی',
+ 'ach' => 'آچولیایی',
+ 'ada' => 'آدانگمه‌ای',
+ 'ady' => 'آدیجیایی',
+ 'ae' => 'اوستایی',
+ 'aeb' => 'عربی تونسی',
+ 'af' => 'آفریکانس',
+ 'afh' => 'آفریهیلی',
+ 'agq' => 'آگیم',
+ 'ain' => 'آینویی',
+ 'ak' => 'آکان',
+ 'akk' => 'اکدی',
+ 'akz' => 'آلابامایی',
+ 'ale' => 'آلئوتی',
+ 'alt' => 'آلتایی جنوبی',
+ 'am' => 'امهری',
+ 'an' => 'آراگونی',
+ 'ang' => 'انگلیسی باستان',
+ 'anp' => 'آنگیکا',
+ 'ar' => 'عربی',
+ 'ar-001' => 'عربی رسمی',
+ 'arc' => 'آرامی',
+ 'arn' => 'ماپوچه‌ای',
+ 'arp' => 'آراپاهویی',
+ 'arq' => 'عربی الجزایری',
+ 'arw' => 'آراواکی',
+ 'ary' => 'عربی مراکشی',
+ 'arz' => 'عربی مصری',
+ 'as' => 'آسامی',
+ 'asa' => 'آسو',
+ 'ast' => 'آستوری',
+ 'av' => 'آواری',
+ 'ay' => 'آیمارایی',
+ 'az' => 'ترکی آذربایجانی',
+ 'azb' => 'ترکی آذربایجانی ایران',
+ 'ba' => 'باشغیری',
+ 'bal' => 'بلوچی',
+ 'ban' => 'بالیایی',
+ 'bar' => 'باواریایی',
+ 'bas' => 'باسایی',
+ 'bax' => 'بمونی',
+ 'be' => 'بلوروسی',
+ 'bej' => 'بجایی',
+ 'bem' => 'بمبایی',
+ 'bez' => 'بنایی',
+ 'bg' => 'بلغاری',
+ 'bho' => 'بوجپوری',
+ 'bi' => 'بیسلاما',
+ 'bik' => 'بیکولی',
+ 'bin' => 'بینی',
+ 'bm' => 'بامبارایی',
+ 'bn' => 'بنگالی',
+ 'bo' => 'تبتی',
+ 'bqi' => 'لری بختیاری',
+ 'br' => 'برتانیایی',
+ 'bra' => 'براج',
+ 'brh' => 'براهویی',
+ 'brx' => 'بودویی',
+ 'bs' => 'بوسنیایی',
+ 'bua' => 'بوریاتی',
+ 'bug' => 'بوگیایی',
+ 'byn' => 'بلین',
+ 'ca' => 'کاتالان',
+ 'cad' => 'کادویی',
+ 'car' => 'کاریبی',
+ 'ce' => 'چچنی',
+ 'ceb' => 'سبویی',
+ 'cgg' => 'چیگا',
+ 'ch' => 'چامورویی',
+ 'chb' => 'چیبچا',
+ 'chg' => 'جغتایی',
+ 'chk' => 'چوکی',
+ 'chm' => 'ماریایی',
+ 'cho' => 'چوکتویی',
+ 'chp' => 'چیپه‌ویه‌ای',
+ 'chr' => 'چروکیایی',
+ 'chy' => 'شایانی',
+ 'ckb' => 'کردی سورانی',
+ 'co' => 'کورسی',
+ 'cop' => 'قبطی',
+ 'cr' => 'کریایی',
+ 'crh' => 'ترکی کریمه',
+ 'cs' => 'چکی',
+ 'csb' => 'کاشوبی',
+ 'cu' => 'اسلاوی کلیسایی',
+ 'cv' => 'چوواشی',
+ 'cy' => 'ویلزی',
+ 'da' => 'دانمارکی',
+ 'dak' => 'داکوتایی',
+ 'dar' => 'دارقینی',
+ 'dav' => 'تایتا',
+ 'de' => 'آلمانی',
+ 'de-at' => 'آلمانی اتریش',
+ 'de-ch' => 'آلمانی علیای سوئیس',
+ 'del' => 'دلاواری',
+ 'dgr' => 'دوگریب',
+ 'din' => 'دینکایی',
+ 'dje' => 'زرما',
+ 'doi' => 'دوگری',
+ 'dsb' => 'صُربی سفلی',
+ 'dua' => 'دوآلایی',
+ 'dum' => 'هلندی میانه',
+ 'dv' => 'مالدیوی',
+ 'dyo' => 'دیولا فونی',
+ 'dyu' => 'دایولایی',
+ 'dz' => 'جونخایی',
+ 'ebu' => 'امبو',
+ 'ee' => 'اوه‌ای',
+ 'efi' => 'افیکی',
+ 'egy' => 'مصری کهن',
+ 'eka' => 'اکاجوک',
+ 'el' => 'یونانی',
+ 'elx' => 'عیلامی',
+ 'en' => 'انگلیسی',
+ 'en-au' => 'انگلیسی استرالیا',
+ 'en-ca' => 'انگلیسی کانادا',
+ 'en-gb' => 'انگلیسی بریتانیا',
+ 'en-us' => 'انگلیسی امریکا',
+ 'enm' => 'انگلیسی میانه',
+ 'eo' => 'اسپرانتو',
+ 'es' => 'اسپانیایی',
+ 'es-419' => 'اسپانیایی امریکای لاتین',
+ 'es-es' => 'اسپانیایی اروپا',
+ 'es-mx' => 'اسپانیایی مکزیک',
+ 'et' => 'استونیایی',
+ 'eu' => 'باسکی',
+ 'ewo' => 'اواندو',
+ 'fa' => 'فارسی',
+ 'fan' => 'فانکی',
+ 'fat' => 'فانتیایی',
+ 'ff' => 'فولایی',
+ 'fi' => 'فنلاندی',
+ 'fil' => 'فیلیپینی',
+ 'fj' => 'فیجیایی',
+ 'fo' => 'فارویی',
+ 'fon' => 'فونی',
+ 'fr' => 'فرانسوی',
+ 'fr-ca' => 'فرانسوی کانادا',
+ 'fr-ch' => 'فرانسوی سوئیس',
+ 'frc' => 'فرانسوی کادین',
+ 'frm' => 'فرانسوی میانه',
+ 'fro' => 'فرانسوی باستان',
+ 'frr' => 'فریزی شمالی',
+ 'frs' => 'فریزی شرقی',
+ 'fur' => 'فریولیایی',
+ 'fy' => 'فریزی غربی',
+ 'ga' => 'ایرلندی',
+ 'gaa' => 'گایی',
+ 'gag' => 'گاگاوز',
+ 'gay' => 'گایویی',
+ 'gba' => 'گبایایی',
+ 'gbz' => 'دری زرتشتی',
+ 'gd' => 'گیلی اسکاتلندی',
+ 'gez' => 'گی‌ئزی',
+ 'gil' => 'گیلبرتی',
+ 'gl' => 'گالیسیایی',
+ 'glk' => 'گیلکی',
+ 'gmh' => 'آلمانی علیای میانه',
+ 'gn' => 'گوارانی',
+ 'goh' => 'آلمانی علیای باستان',
+ 'gon' => 'گوندی',
+ 'gor' => 'گورونتالو',
+ 'got' => 'گوتی',
+ 'grb' => 'گریبویی',
+ 'grc' => 'یونانی کهن',
+ 'gsw' => 'آلمانی سوئیسی',
+ 'gu' => 'گجراتی',
+ 'guz' => 'گوسی',
+ 'gv' => 'مانی',
+ 'gwi' => 'گویچ این',
+ 'ha' => 'هوسیایی',
+ 'hai' => 'هایدایی',
+ 'haw' => 'هاوائیایی',
+ 'he' => 'عبری',
+ 'hi' => 'هندی',
+ 'hif' => 'هندی فیجیایی',
+ 'hil' => 'هیلی‌گاینونی',
+ 'hit' => 'هیتی',
+ 'hmn' => 'همونگ',
+ 'ho' => 'موتویی هیری',
+ 'hr' => 'کروات',
+ 'hsb' => 'صُربی علیا',
+ 'ht' => 'هائیتیایی',
+ 'hu' => 'مجاری',
+ 'hup' => 'هوپا',
+ 'hy' => 'ارمنی',
+ 'hz' => 'هریرویی',
+ 'ia' => 'میان‌زبان',
+ 'iba' => 'آیبن',
+ 'id' => 'اندونزیایی',
+ 'ie' => 'اکسیدنتال',
+ 'ig' => 'ایگبویی',
+ 'ii' => 'یی سیچوان',
+ 'ik' => 'اینوپیک',
+ 'ilo' => 'ایلوکویی',
+ 'inh' => 'اینگوشی',
+ 'io' => 'ایدو',
+ 'is' => 'ایسلندی',
+ 'it' => 'ایتالیایی',
+ 'iu' => 'اینوکتیتوت',
+ 'ja' => 'ژاپنی',
+ 'jbo' => 'لوجبان',
+ 'jgo' => 'نگومبا',
+ 'jmc' => 'ماچامه‌ای',
+ 'jpr' => 'فارسی یهودی',
+ 'jrb' => 'عربی یهودی',
+ 'jv' => 'جاوه‌ای',
+ 'ka' => 'گرجی',
+ 'kaa' => 'قره‌قالپاقی',
+ 'kab' => 'قبایلی',
+ 'kac' => 'کاچینی',
+ 'kaj' => 'جو',
+ 'kam' => 'کامبایی',
+ 'kaw' => 'کاویایی',
+ 'kbd' => 'کاباردینی',
+ 'kcg' => 'تیاپی',
+ 'kde' => 'ماکونده',
+ 'kea' => 'کابووردیانو',
+ 'kfo' => 'کورو',
+ 'kg' => 'کنگویی',
+ 'kha' => 'خاسیایی',
+ 'kho' => 'ختنی',
+ 'khq' => 'کوجراچینی',
+ 'khw' => 'کهوار',
+ 'ki' => 'کیکویویی',
+ 'kiu' => 'زازاکی',
+ 'kj' => 'کوانیاما',
+ 'kk' => 'قزاقی',
+ 'kl' => 'گرینلندی',
+ 'kln' => 'کالنجین',
+ 'km' => 'خمری',
+ 'kmb' => 'کیمبوندویی',
+ 'kn' => 'کاناده‌ای',
+ 'ko' => 'کره‌ای',
+ 'koi' => 'کومی پرمیاک',
+ 'kok' => 'کنکانی',
+ 'kpe' => 'کپله‌ای',
+ 'kr' => 'کانوریایی',
+ 'krc' => 'قره‌چایی‐بالکاری',
+ 'kru' => 'کوروخی',
+ 'ks' => 'کشمیری',
+ 'ksb' => 'شامبالا',
+ 'ksf' => 'بافیایی',
+ 'ku' => 'کردی',
+ 'kum' => 'کومیکی',
+ 'kut' => 'کوتنی',
+ 'kv' => 'کومیایی',
+ 'kw' => 'کرنوالی',
+ 'ky' => 'قرقیزی',
+ 'la' => 'لاتینی',
+ 'lad' => 'لادینو',
+ 'lag' => 'لانگی',
+ 'lah' => 'لاهندا',
+ 'lam' => 'لامبا',
+ 'lb' => 'لوگزامبورگی',
+ 'lez' => 'لزگی',
+ 'lg' => 'گاندایی',
+ 'li' => 'لیمبورگی',
+ 'lkt' => 'لاکوتا',
+ 'ln' => 'لینگالا',
+ 'lo' => 'لائوسی',
+ 'lol' => 'مونگویی',
+ 'loz' => 'لوزیایی',
+ 'lt' => 'لیتوانیایی',
+ 'lu' => 'لوبایی‐کاتانگا',
+ 'lua' => 'لوبایی‐لولوا',
+ 'lui' => 'لویسنو',
+ 'lun' => 'لوندایی',
+ 'luo' => 'لوئویی',
+ 'lus' => 'لوشه‌ای',
+ 'luy' => 'لویا',
+ 'lv' => 'لتونیایی',
+ 'lzh' => 'چینی ادبی',
+ 'mad' => 'مادورایی',
+ 'mag' => 'ماگاهیایی',
+ 'mai' => 'مایدیلی',
+ 'mak' => 'ماکاسار',
+ 'man' => 'ماندینگویی',
+ 'mas' => 'ماسایی',
+ 'mdf' => 'مکشایی',
+ 'mdr' => 'ماندار',
+ 'men' => 'منده‌ای',
+ 'mer' => 'مرویی',
+ 'mfe' => 'موریسین',
+ 'mg' => 'مالاگاسیایی',
+ 'mga' => 'ایرلندی میانه',
+ 'mgh' => 'ماکوا متو',
+ 'mgo' => 'متایی',
+ 'mh' => 'مارشالی',
+ 'mi' => 'مائوریایی',
+ 'mic' => 'میکماکی',
+ 'min' => 'مینانگ‌کابویی',
+ 'mk' => 'مقدونی',
+ 'ml' => 'مالایالامی',
+ 'mn' => 'مغولی',
+ 'mnc' => 'مانچویی',
+ 'mni' => 'میته‌ای',
+ 'moh' => 'موهاکی',
+ 'mos' => 'ماسیایی',
+ 'mr' => 'مراتی',
+ 'ms' => 'مالایی',
+ 'mt' => 'مالتی',
+ 'mua' => 'ماندانگی',
+ 'mul' => 'چندین زبان',
+ 'mus' => 'کریکی',
+ 'mwr' => 'مارواری',
+ 'my' => 'برمه‌ای',
+ 'myv' => 'ارزیایی',
+ 'na' => 'نائورویی',
+ 'nap' => 'ناپلی',
+ 'naq' => 'نامایی',
+ 'nb' => 'بوکسمال نروژی',
+ 'nd' => 'انده‌بله‌ای شمالی',
+ 'nds' => 'آلمانی سفلی',
+ 'ne' => 'نپالی',
+ 'new' => 'نواریایی',
+ 'ng' => 'اندونگایی',
+ 'nia' => 'نیاسی',
+ 'niu' => 'نیویی',
+ 'nl' => 'هلندی',
+ 'nl-be' => 'فلمنگی',
+ 'nmg' => 'کوازیو',
+ 'nn' => 'نرس جدید نروژی',
+ 'no' => 'نروژی',
+ 'nog' => 'نغایی',
+ 'non' => 'نرس باستان',
+ 'nqo' => 'نکو',
+ 'nr' => 'انده‌بله‌ای جنوبی',
+ 'nso' => 'سوتویی شمالی',
+ 'nus' => 'نویر',
+ 'nv' => 'ناواهویی',
+ 'nwc' => 'نواریایی کلاسیک',
+ 'ny' => 'نیانجایی',
+ 'nym' => 'نیام‌وزیایی',
+ 'nyn' => 'نیانکوله‌ای',
+ 'nyo' => 'نیورویی',
+ 'nzi' => 'نزیمایی',
+ 'oc' => 'اوکیتایی',
+ 'oj' => 'اوجیبوایی',
+ 'om' => 'اورومویی',
+ 'or' => 'اوریه‌ای',
+ 'os' => 'آسی',
+ 'osa' => 'اوسیجی',
+ 'ota' => 'ترکی عثمانی',
+ 'pa' => 'پنجابی',
+ 'pag' => 'پانگاسینانی',
+ 'pal' => 'پهلوی',
+ 'pam' => 'پامپانگایی',
+ 'pap' => 'پاپیامنتو',
+ 'pau' => 'پالائویی',
+ 'pdc' => 'آلمانی پنسیلوانیایی',
+ 'peo' => 'فارسی باستان',
+ 'phn' => 'فنیقی',
+ 'pi' => 'پالی',
+ 'pl' => 'لهستانی',
+ 'pon' => 'پانپیی',
+ 'prg' => 'پروسی',
+ 'pro' => 'پرووانسی باستان',
+ 'ps' => 'پشتو',
+ 'pt' => 'پرتغالی',
+ 'pt-br' => 'پرتغالی برزیل',
+ 'pt-pt' => 'پرتغالی اروپا',
+ 'qu' => 'کچوایی',
+ 'quc' => 'کیچه‌',
+ 'raj' => 'راجستانی',
+ 'rap' => 'راپانویی',
+ 'rar' => 'راروتونگایی',
+ 'rm' => 'رومانش',
+ 'rn' => 'روندیایی',
+ 'ro' => 'رومانیایی',
+ 'ro-md' => 'مولداویایی',
+ 'rof' => 'رومبویی',
+ 'rom' => 'رومانویی',
+ 'ru' => 'روسی',
+ 'rw' => 'کینیارواندایی',
+ 'rwk' => 'روایی',
+ 'sa' => 'سنسکریت',
+ 'sad' => 'سانداوه‌ای',
+ 'sah' => 'یاقوتی',
+ 'sam' => 'آرامی سامری',
+ 'saq' => 'سامبورو',
+ 'sas' => 'ساساکی',
+ 'sat' => 'سانتالی',
+ 'sbp' => 'سانگو',
+ 'sc' => 'ساردینیایی',
+ 'scn' => 'سیسیلی',
+ 'sco' => 'اسکاتلندی',
+ 'sd' => 'سندی',
+ 'se' => 'سامی شمالی',
+ 'seh' => 'سنا',
+ 'sel' => 'سلکوپی',
+ 'ses' => 'کویرابورا سنی',
+ 'sg' => 'سانگویی',
+ 'sga' => 'ایرلندی باستان',
+ 'sh' => 'صرب و کرواتی',
+ 'shi' => 'تاچل‌هیت',
+ 'shn' => 'شانی',
+ 'shu' => 'عربی چادی',
+ 'si' => 'سینهالی',
+ 'sid' => 'سیدامویی',
+ 'sk' => 'اسلواکی',
+ 'sl' => 'اسلووینیایی',
+ 'sm' => 'ساموآیی',
+ 'sma' => 'سامی جنوبی',
+ 'smj' => 'لوله سامی',
+ 'smn' => 'ایناری سامی',
+ 'sms' => 'اسکولت سامی',
+ 'sn' => 'شونایی',
+ 'snk' => 'سونینکه‌ای',
+ 'so' => 'سومالیایی',
+ 'sog' => 'سغدی',
+ 'sq' => 'آلبانیایی',
+ 'sr' => 'صربی',
+ 'srn' => 'تاکی‌تاکی',
+ 'srr' => 'سریری',
+ 'ss' => 'سوازیایی',
+ 'st' => 'سوتویی جنوبی',
+ 'su' => 'سوندایی',
+ 'suk' => 'سوکومایی',
+ 'sus' => 'سوسویی',
+ 'sux' => 'سومری',
+ 'sv' => 'سوئدی',
+ 'sw' => 'سواحلی',
+ 'swb' => 'کوموری',
+ 'swc' => 'سواحلی کنگویی',
+ 'syc' => 'سریانی کلاسیک',
+ 'syr' => 'سریانی',
+ 'ta' => 'تامیلی',
+ 'te' => 'تلوگویی',
+ 'tem' => 'تمنه‌ای',
+ 'teo' => 'تسویی',
+ 'ter' => 'ترنو',
+ 'tet' => 'تتومی',
+ 'tg' => 'تاجیکی',
+ 'th' => 'تایلندی',
+ 'ti' => 'تیگرینیایی',
+ 'tig' => 'تیگره‌ای',
+ 'tiv' => 'تیوی',
+ 'tk' => 'ترکمنی',
+ 'tl' => 'تاگالوگی',
+ 'tlh' => 'کلینگون',
+ 'tli' => 'تلین‌گیتی',
+ 'tmh' => 'تاماشقی',
+ 'tn' => 'تسوانایی',
+ 'to' => 'تونگایی',
+ 'tog' => 'تونگایی نیاسا',
+ 'tpi' => 'توک‌پیسینی',
+ 'tr' => 'ترکی استانبولی',
+ 'ts' => 'تسونگایی',
+ 'tsi' => 'تسیم‌شیانی',
+ 'tt' => 'تاتاری',
+ 'tum' => 'تومبوکایی',
+ 'tvl' => 'تووالویی',
+ 'tw' => 'توی‌یایی',
+ 'twq' => 'تسواکی',
+ 'ty' => 'تاهیتیایی',
+ 'tyv' => 'تووایی',
+ 'tzm' => 'آمازیغی اطلس مرکزی',
+ 'udm' => 'اودمورتی',
+ 'ug' => 'اویغوری',
+ 'uga' => 'اوگاریتی',
+ 'uk' => 'اوکراینی',
+ 'umb' => 'امبوندویی',
+ 'und' => 'زبان نامشخص',
+ 'ur' => 'اردو',
+ 'uz' => 'ازبکی',
+ 'vai' => 'ویایی',
+ 've' => 'وندایی',
+ 'vi' => 'ویتنامی',
+ 'vo' => 'ولاپوک',
+ 'vot' => 'وتی',
+ 'vun' => 'ونجو',
+ 'wa' => 'والونی',
+ 'wal' => 'والامو',
+ 'war' => 'وارایی',
+ 'was' => 'واشویی',
+ 'wo' => 'ولوفی',
+ 'xal' => 'قلموقی',
+ 'xh' => 'خوسایی',
+ 'xog' => 'سوگایی',
+ 'yao' => 'یائویی',
+ 'yap' => 'یاپی',
+ 'yi' => 'یدی',
+ 'yo' => 'یوروبایی',
+ 'yue' => 'کانتونی',
+ 'za' => 'چوانگی',
+ 'zap' => 'زاپوتکی',
+ 'zen' => 'زناگا',
+ 'zgh' => 'آمازیغی معیار مراکش',
+ 'zh' => 'چینی',
+ 'zh-hans' => 'چینی ساده‌شده',
+ 'zh-hant' => 'چینی سنتی',
+ 'zu' => 'زولویی',
+ 'zun' => 'زونیایی',
+ 'zxx' => 'بدون محتوای زبانی',
+ 'zza' => 'زازایی',
+);
+
+$currencyNames = array(
+ 'ADP' => 'پزتای آندورا',
+ 'AED' => 'درهم امارات متحدهٔ عربی',
+ 'AFA' => 'افغانی افغانستان (۱۹۲۷ تا ۲۰۰۲)',
+ 'AFN' => 'افغانی افغانستان',
+ 'ALL' => 'لک آلبانی',
+ 'AMD' => 'درم ارمنستان',
+ 'ANG' => 'گیلدر آنتیل هلند',
+ 'AOA' => 'کوانزای آنگولا',
+ 'ARP' => 'پزوی آرژانتین (۱۹۸۳ تا ۱۹۸۵)‏',
+ 'ARS' => 'پزوی آرژانتین',
+ 'ATS' => 'شیلینگ اتریش',
+ 'AUD' => 'دلار استرالیا',
+ 'AWG' => 'فلورین آروبا',
+ 'AZM' => 'منات جمهوری آذربایجان (۱۹۹۳ تا ۲۰۰۶)',
+ 'AZN' => 'منات جمهوری آذربایجان',
+ 'BAD' => 'دینار بوسنی و هرزگوین (۱۹۹۲ تا ۱۹۹۴)',
+ 'BAM' => 'مارک تبدیل‌پذیر بوسنی و هرزگوین',
+ 'BBD' => 'دلار باربادوس',
+ 'BDT' => 'تاکای بنگلادش',
+ 'BEF' => 'فرانک بلژیک',
+ 'BEL' => 'فرانک بلژیک (مالی)',
+ 'BGN' => 'لف بلغارستان',
+ 'BHD' => 'دینار بحرین',
+ 'BIF' => 'فرانک بوروندی',
+ 'BMD' => 'دلار برمودا',
+ 'BND' => 'دلار برونئی',
+ 'BOB' => 'بولیویانوی بولیوی',
+ 'BOP' => 'پزوی بولیوی',
+ 'BRL' => 'رئال برزیل',
+ 'BSD' => 'دلار باهاما',
+ 'BTN' => 'انگولتروم بوتان',
+ 'BWP' => 'پولای بوتسوانا',
+ 'BYB' => 'روبل جدید بیلوروسی (۱۹۹۴ تا ۱۹۹۹)',
+ 'BYR' => 'روبل بیلوروسی',
+ 'BZD' => 'دلار بلیز',
+ 'CAD' => 'دلار کانادا',
+ 'CDF' => 'فرانک کنگو',
+ 'CHF' => 'فرانک سوئیس',
+ 'CLP' => 'پزوی شیلی',
+ 'CNY' => 'یوآن چین',
+ 'COP' => 'پزوی کلمبیا',
+ 'CRC' => 'کولون کاستاریکا',
+ 'CSD' => 'دینار صربستان (۲۰۰۲ تا ۲۰۰۶)',
+ 'CUC' => 'پزوی تبدیل‌پذیر کوبا',
+ 'CUP' => 'پزوی کوبا',
+ 'CVE' => 'اسکودوی کیپ‌ورد',
+ 'CYP' => 'پوند قبرس',
+ 'CZK' => 'کورونای جمهوری چک',
+ 'DDM' => 'مارک آلمان شرقی',
+ 'DEM' => 'مارک آلمان',
+ 'DJF' => 'فرانک جیبوتی',
+ 'DKK' => 'کرون دانمارک',
+ 'DOP' => 'پزوی جمهوری دومینیکن',
+ 'DZD' => 'دینار الجزایر',
+ 'EGP' => 'لیرهٔ مصر',
+ 'ERN' => 'ناکفای اریتره',
+ 'ETB' => 'بیر اتیوپی',
+ 'EUR' => 'یورو',
+ 'FJD' => 'دلار فیجی',
+ 'FKP' => 'پوند جزایر فالکلند',
+ 'FRF' => 'فرانک فرانسه',
+ 'GBP' => 'پوند بریتانیا',
+ 'GEL' => 'لاری گرجستان',
+ 'GHS' => 'سدی غنا',
+ 'GIP' => 'پوند جبل‌الطارق',
+ 'GMD' => 'دالاسی گامبیا',
+ 'GNF' => 'فرانک گینه',
+ 'GRD' => 'دراخمای یونان',
+ 'GTQ' => 'کتزال گواتمالا',
+ 'GWP' => 'پزوی گینهٔ بیسائو',
+ 'GYD' => 'دلار گویان',
+ 'HKD' => 'دلار هنگ‌کنگ',
+ 'HNL' => 'لمپیرای هندوراس',
+ 'HRD' => 'دینار کرواسی',
+ 'HRK' => 'کونای کرواسی',
+ 'HTG' => 'گورد هائیتی',
+ 'HUF' => 'فورینت مجارستان',
+ 'IDR' => 'روپیهٔ اندونزی',
+ 'IEP' => 'پوند ایرلند',
+ 'ILS' => 'شقل جدید اسرائیل',
+ 'INR' => 'روپیهٔ هند',
+ 'IQD' => 'دینار عراق',
+ 'IRR' => 'ریال ایران',
+ 'ISK' => 'کرونای ایسلند',
+ 'ITL' => 'لیرهٔ ایتالیا',
+ 'JMD' => 'دلار جامائیکا',
+ 'JOD' => 'دینار اردن',
+ 'JPY' => 'ین ژاپن',
+ 'KES' => 'شیلینگ کنیا',
+ 'KGS' => 'سوم قرقیزستان',
+ 'KHR' => 'ری‌یل کامبوج',
+ 'KMF' => 'فرانک کومورو',
+ 'KPW' => 'وون کرهٔ شمالی',
+ 'KRW' => 'وون کرهٔ جنوبی',
+ 'KWD' => 'دینار کویت',
+ 'KYD' => 'دلار جزایر کِیمن',
+ 'KZT' => 'تنگهٔ قزاقستان',
+ 'LAK' => 'کیپ لائوس',
+ 'LBP' => 'لیرهٔ لبنان',
+ 'LKR' => 'روپیهٔ سری‌لانکا',
+ 'LRD' => 'دلار لیبریا',
+ 'LSL' => 'لوتی لسوتو',
+ 'LTL' => 'لیتاس لیتوانی',
+ 'LUF' => 'فرانک لوکزامبورگ',
+ 'LUL' => 'فرانک مالی لوگزامبورگ',
+ 'LVL' => 'لاتس لتونی',
+ 'LVR' => 'روبل لتونی',
+ 'LYD' => 'دینار لیبی',
+ 'MAD' => 'درهم مراکش',
+ 'MAF' => 'فرانک مراکش',
+ 'MDL' => 'لئوی مولداوی',
+ 'MGA' => 'آریاری مالاگاسی',
+ 'MGF' => 'فرانک ماداگاسکار',
+ 'MKD' => 'دینار مقدونیه',
+ 'MLF' => 'فرانک مالی',
+ 'MMK' => 'کیات میانمار',
+ 'MNT' => 'توگریک مغولستان',
+ 'MOP' => 'پاتاکای ماکائو',
+ 'MRO' => 'اوگوئیای موریتانی',
+ 'MTL' => 'لیرهٔ مالت',
+ 'MTP' => 'پوند مالت',
+ 'MUR' => 'روپیهٔ موریس',
+ 'MVR' => 'روپیهٔ مالدیو',
+ 'MWK' => 'کواچای مالاوی',
+ 'MXN' => 'پزوی مکزیک',
+ 'MXP' => 'پزوی نقرهٔ مکزیک (۱۸۶۱ تا ۱۹۹۲)',
+ 'MYR' => 'رینگیت مالزی',
+ 'MZE' => 'اسکودوی موزامبیک',
+ 'MZN' => 'متیکال موزامبیک',
+ 'NAD' => 'دلار نامیبیا',
+ 'NGN' => 'نایرای نیجریه',
+ 'NIO' => 'کوردوبای نیکاراگوئه',
+ 'NLG' => 'گیلدر هلند',
+ 'NOK' => 'کرون نروژ',
+ 'NPR' => 'روپیهٔ نپال',
+ 'NZD' => 'دلار زلاند نو',
+ 'OMR' => 'ریال عمان',
+ 'PAB' => 'بالبوای پاناما',
+ 'PEN' => 'نوئووسول پرو',
+ 'PGK' => 'کینای پاپوا گینهٔ نو',
+ 'PHP' => 'پزوی فیلیپین',
+ 'PKR' => 'روپیهٔ پاکستان',
+ 'PLN' => 'زواتی لهستان',
+ 'PTE' => 'اسکودوی پرتغال',
+ 'PYG' => 'گوارانی پاراگوئه',
+ 'QAR' => 'ریال قطر',
+ 'RHD' => 'دلار رودزیا',
+ 'RON' => 'لئوی رومانی',
+ 'RSD' => 'دینار صربستان',
+ 'RUB' => 'روبل روسیه',
+ 'RUR' => 'روبل روسیه (۱۹۹۱ تا ۱۹۹۸)',
+ 'RWF' => 'فرانک رواندا',
+ 'SAR' => 'ریال سعودی',
+ 'SBD' => 'دلار جزایر سلیمان',
+ 'SCR' => 'روپیهٔ سیشل',
+ 'SDD' => 'دینار سودان (۱۹۹۲ تا ۲۰۰۷)',
+ 'SDG' => 'لیرهٔ سودان',
+ 'SEK' => 'کرون سوئد',
+ 'SGD' => 'دلار سنگاپور',
+ 'SHP' => 'پوند سنت هلن',
+ 'SLL' => 'لئون سیرالئون',
+ 'SOS' => 'شیلینگ سومالی',
+ 'SRD' => 'دلار سورینام',
+ 'SRG' => 'گیلدر سورینام',
+ 'SSP' => 'پوند سودان جنوبی',
+ 'STD' => 'دوبرای سائوتومه و پرنسیپ',
+ 'SUR' => 'روبل شوروی',
+ 'SYP' => 'لیرهٔ سوریه',
+ 'SZL' => 'لیلانگنی سوازیلند',
+ 'THB' => 'بات تایلند',
+ 'TJR' => 'روبل تاجیکستان',
+ 'TJS' => 'سامانی تاجیکستان',
+ 'TMM' => 'منات ترکمنستان (۱۹۹۳ تا ۲۰۰۹)',
+ 'TMT' => 'منات ترکمنستان',
+ 'TND' => 'دینار تونس',
+ 'TOP' => 'پاآنگای تونگا',
+ 'TPE' => 'اسکودوی تیمور',
+ 'TRL' => 'لیرهٔ ترکیه (۱۹۲۲ تا ۲۰۰۵)',
+ 'TRY' => 'لیرهٔ ترکیه',
+ 'TTD' => 'دلار ترینیداد و توباگو',
+ 'TWD' => 'دلار جدید تایوان',
+ 'TZS' => 'شیلینگ تانزانیا',
+ 'UAH' => 'هریونیای اوکراین',
+ 'UGS' => 'شیلینگ اوگاندا (۱۹۶۶ تا ۱۹۸۷)',
+ 'UGX' => 'شیلینگ اوگاندا',
+ 'USD' => 'دلار امریکا',
+ 'USN' => 'دلار امریکا (روز بعد)',
+ 'USS' => 'دلار امریکا (همان روز)',
+ 'UYP' => 'پزوی اوروگوئه (۱۹۷۵ تا ۱۹۹۳)',
+ 'UYU' => 'پزوی اوروگوئه',
+ 'UZS' => 'سوم ازبکستان',
+ 'VEF' => 'بولیوار ونزوئلا',
+ 'VND' => 'دانگ ویتنام',
+ 'VUV' => 'واتوی وانوواتو',
+ 'WST' => 'تالای ساموا',
+ 'XAF' => 'فرانک CFA مرکز آفریقا',
+ 'XAG' => 'نقره',
+ 'XAU' => 'طلا',
+ 'XCD' => 'دلار شرق کارائیب',
+ 'XFO' => 'فرانک طلای فرانسه',
+ 'XOF' => 'فرانک CFA غرب آفریقا',
+ 'XPD' => 'پالادیم',
+ 'XPF' => 'فرانک CFP',
+ 'XPT' => 'پلاتین',
+ 'XXX' => 'ارز نامشخص',
+ 'YDD' => 'دینار یمن',
+ 'YER' => 'ریال یمن',
+ 'ZAR' => 'راند افریقای جنوبی',
+ 'ZMK' => 'کواچای زامبیا (۱۹۶۸ تا ۲۰۱۲)',
+ 'ZMW' => 'کواچای زامبیا',
+ 'ZWD' => 'دلار زیمبابوه (۱۹۸۰ تا ۲۰۰۸)',
+ 'ZWL' => 'دلار زیمبابوه (۲۰۰۹)',
+ 'ZWR' => 'دلار زیمبابوه (۲۰۰۸)',
+);
+
+$currencySymbols = array(
+ 'AFN' => '؋',
+ 'CAD' => '$CA',
+ 'CNY' => '¥CN',
+ 'EUR' => '€',
+ 'GBP' => '£',
+ 'HKD' => '$HK',
+ 'ILS' => '₪',
+ 'INR' => '₹',
+ 'IRR' => 'ریال',
+ 'JPY' => '¥',
+ 'KRW' => '₩',
+ 'MXN' => '$MX',
+ 'NZD' => '$NZ',
+ 'RUB' => '₽',
+ 'THB' => '฿',
+ 'USD' => '$',
+ 'VND' => '₫',
+ 'XAF' => 'FCFA',
+ 'XCD' => '$EC',
+ 'XOF' => 'CFA',
+ 'XPF' => 'CFPF',
+);
+
+$countryNames = array(
+ 'AC' => 'جزایر آسنسیون',
+ 'AD' => 'آندورا',
+ 'AE' => 'امارات متحدهٔ عربی',
+ 'AF' => 'افغانستان',
+ 'AG' => 'آنتیگوا و باربودا',
+ 'AI' => 'آنگویلا',
+ 'AL' => 'آلبانی',
+ 'AM' => 'ارمنستان',
+ 'AN' => 'آنتیل هلند',
+ 'AO' => 'آنگولا',
+ 'AQ' => 'جنوبگان',
+ 'AR' => 'آرژانتین',
+ 'AS' => 'ساموآی آمریکا',
+ 'AT' => 'اتریش',
+ 'AU' => 'استرالیا',
+ 'AW' => 'آروبا',
+ 'AX' => 'جزایر اُلند',
+ 'AZ' => 'جمهوری آذربایجان',
+ 'BA' => 'بوسنی و هرزگوین',
+ 'BB' => 'باربادوس',
+ 'BD' => 'بنگلادش',
+ 'BE' => 'بلژیک',
+ 'BF' => 'بورکینافاسو',
+ 'BG' => 'بلغارستان',
+ 'BH' => 'بحرین',
+ 'BI' => 'بوروندی',
+ 'BJ' => 'بنین',
+ 'BL' => 'سن بارتلمی',
+ 'BM' => 'برمودا',
+ 'BN' => 'برونئی',
+ 'BO' => 'بولیوی',
+ 'BQ' => 'جزایر کارائیب هلند',
+ 'BR' => 'برزیل',
+ 'BS' => 'باهاما',
+ 'BT' => 'بوتان',
+ 'BV' => 'جزیره بووه',
+ 'BW' => 'بوتسوانا',
+ 'BY' => 'بلاروس',
+ 'BZ' => 'بلیز',
+ 'CA' => 'کانادا',
+ 'CC' => 'جزایر کوکوس (کیلینگ)',
+ 'CD' => 'کنگو - کینشاسا',
+ 'CF' => 'جمهوری افریقای مرکزی',
+ 'CG' => 'کنگو - برازویل',
+ 'CH' => 'سوئیس',
+ 'CI' => 'ساحل عاج',
+ 'CK' => 'جزایر کوک',
+ 'CL' => 'شیلی',
+ 'CM' => 'کامرون',
+ 'CN' => 'چین',
+ 'CO' => 'کلمبیا',
+ 'CP' => 'جزایر کلیپرتون',
+ 'CR' => 'کاستاریکا',
+ 'CU' => 'کوبا',
+ 'CV' => 'کیپ‌ورد',
+ 'CW' => 'کوراسائو',
+ 'CX' => 'جزیرهٔ کریسمس',
+ 'CY' => 'قبرس',
+ 'CZ' => 'جمهوری چک',
+ 'DE' => 'آلمان',
+ 'DG' => 'دیه‌گو گارسیا',
+ 'DJ' => 'جیبوتی',
+ 'DK' => 'دانمارک',
+ 'DM' => 'دومینیکا',
+ 'DO' => 'جمهوری دومینیکن',
+ 'DZ' => 'الجزایر',
+ 'EA' => 'سبته و ملیله',
+ 'EC' => 'اکوادور',
+ 'EE' => 'استونی',
+ 'EG' => 'مصر',
+ 'EH' => 'صحرای غربی',
+ 'ER' => 'اریتره',
+ 'ES' => 'اسپانیا',
+ 'ET' => 'اتیوپی',
+ 'EU' => 'اتحادیهٔ اروپا',
+ 'FI' => 'فنلاند',
+ 'FJ' => 'فیجی',
+ 'FK' => 'جزایر فالکلند',
+ 'FM' => 'میکرونزی',
+ 'FO' => 'جزایر فارو',
+ 'FR' => 'فرانسه',
+ 'GA' => 'گابن',
+ 'GB' => 'بریتانیا',
+ 'GD' => 'گرنادا',
+ 'GE' => 'گرجستان',
+ 'GF' => 'گویان فرانسه',
+ 'GG' => 'گرنزی',
+ 'GH' => 'غنا',
+ 'GI' => 'جبل‌الطارق',
+ 'GL' => 'گرینلند',
+ 'GM' => 'گامبیا',
+ 'GN' => 'گینه',
+ 'GP' => 'گوادلوپ',
+ 'GQ' => 'گینهٔ استوایی',
+ 'GR' => 'یونان',
+ 'GS' => 'جزایر جورجیای جنوبی و ساندویچ جنوبی',
+ 'GT' => 'گواتمالا',
+ 'GU' => 'گوام',
+ 'GW' => 'گینهٔ بیسائو',
+ 'GY' => 'گویان',
+ 'HK' => 'هنگ‌کنگ',
+ 'HM' => 'جزایر هرد و مک‌دونالد',
+ 'HN' => 'هندوراس',
+ 'HR' => 'کرواسی',
+ 'HT' => 'هائیتی',
+ 'HU' => 'مجارستان',
+ 'IC' => 'جزایر قناری',
+ 'ID' => 'اندونزی',
+ 'IE' => 'ایرلند',
+ 'IL' => 'اسرائیل',
+ 'IM' => 'جزیرهٔ من',
+ 'IN' => 'هند',
+ 'IO' => 'قلمرو بریتانیا در اقیانوس هند',
+ 'IQ' => 'عراق',
+ 'IR' => 'ایران',
+ 'IS' => 'ایسلند',
+ 'IT' => 'ایتالیا',
+ 'JE' => 'جرزی',
+ 'JM' => 'جامائیکا',
+ 'JO' => 'اردن',
+ 'JP' => 'ژاپن',
+ 'KE' => 'کنیا',
+ 'KG' => 'قرقیزستان',
+ 'KH' => 'کامبوج',
+ 'KI' => 'کیریباتی',
+ 'KM' => 'کومور',
+ 'KN' => 'سنت کیتس و نویس',
+ 'KP' => 'کرهٔ شمالی',
+ 'KR' => 'کرهٔ جنوبی',
+ 'KW' => 'کویت',
+ 'KY' => 'جزایر کِیمن',
+ 'KZ' => 'قزاقستان',
+ 'LA' => 'لائوس',
+ 'LB' => 'لبنان',
+ 'LC' => 'سنت لوسیا',
+ 'LI' => 'لیختن‌اشتاین',
+ 'LK' => 'سری‌لانکا',
+ 'LR' => 'لیبریا',
+ 'LS' => 'لسوتو',
+ 'LT' => 'لیتوانی',
+ 'LU' => 'لوکزامبورگ',
+ 'LV' => 'لتونی',
+ 'LY' => 'لیبی',
+ 'MA' => 'مراکش',
+ 'MC' => 'موناکو',
+ 'MD' => 'مولداوی',
+ 'ME' => 'مونته‌نگرو',
+ 'MF' => 'سنت مارتین',
+ 'MG' => 'ماداگاسکار',
+ 'MH' => 'جزایر مارشال',
+ 'MK' => 'مقدونیه',
+ 'ML' => 'مالی',
+ 'MM' => 'میانمار (برمه)',
+ 'MN' => 'مغولستان',
+ 'MO' => 'ماکائو',
+ 'MP' => 'جزایر ماریانای شمالی',
+ 'MQ' => 'مارتینیک',
+ 'MR' => 'موریتانی',
+ 'MS' => 'مونت‌سرات',
+ 'MT' => 'مالت',
+ 'MU' => 'موریس',
+ 'MV' => 'مالدیو',
+ 'MW' => 'مالاوی',
+ 'MX' => 'مکزیک',
+ 'MY' => 'مالزی',
+ 'MZ' => 'موزامبیک',
+ 'NA' => 'نامیبیا',
+ 'NC' => 'کالدونیای جدید',
+ 'NE' => 'نیجر',
+ 'NF' => 'جزیره نورفک',
+ 'NG' => 'نیجریه',
+ 'NI' => 'نیکاراگوئه',
+ 'NL' => 'هلند',
+ 'NO' => 'نروژ',
+ 'NP' => 'نپال',
+ 'NR' => 'نائورو',
+ 'NU' => 'نیوئه',
+ 'NZ' => 'زلاند نو',
+ 'OM' => 'عمان',
+ 'PA' => 'پاناما',
+ 'PE' => 'پرو',
+ 'PF' => 'پلی‌نزی فرانسه',
+ 'PG' => 'پاپوا گینهٔ نو',
+ 'PH' => 'فیلیپین',
+ 'PK' => 'پاکستان',
+ 'PL' => 'لهستان',
+ 'PM' => 'سن پیر و میکلن',
+ 'PN' => 'جزایر پیت‌کرن',
+ 'PR' => 'پورتوریکو',
+ 'PS' => 'فلسطین',
+ 'PT' => 'پرتغال',
+ 'PW' => 'پالائو',
+ 'PY' => 'پاراگوئه',
+ 'QA' => 'قطر',
+ 'QO' => 'بخش‌های دورافتادهٔ اقیانوسیه',
+ 'RE' => 'رئونیون',
+ 'RO' => 'رومانی',
+ 'RS' => 'صربستان',
+ 'RU' => 'روسیه',
+ 'RW' => 'رواندا',
+ 'SA' => 'عربستان',
+ 'SB' => 'جزایر سلیمان',
+ 'SC' => 'سیشل',
+ 'SD' => 'سودان',
+ 'SE' => 'سوئد',
+ 'SG' => 'سنگاپور',
+ 'SH' => 'سنت هلن',
+ 'SI' => 'اسلوونی',
+ 'SJ' => 'اسوالبارد و جان‌ماین',
+ 'SK' => 'اسلواکی',
+ 'SL' => 'سیرالئون',
+ 'SM' => 'سن مارینو',
+ 'SN' => 'سنگال',
+ 'SO' => 'سومالی',
+ 'SR' => 'سورینام',
+ 'SS' => 'سودان جنوبی',
+ 'ST' => 'سائوتومه و پرینسیپ',
+ 'SV' => 'السالوادور',
+ 'SX' => 'سنت مارتن',
+ 'SY' => 'سوریه',
+ 'SZ' => 'سوازیلند',
+ 'TA' => 'تریستان دا کونا',
+ 'TC' => 'جزایر تورکس و کایکوس',
+ 'TD' => 'چاد',
+ 'TF' => 'قلمروهای جنوبی فرانسه',
+ 'TG' => 'توگو',
+ 'TH' => 'تایلند',
+ 'TJ' => 'تاجیکستان',
+ 'TK' => 'توکلائو',
+ 'TL' => 'تیمور شرقی',
+ 'TM' => 'ترکمنستان',
+ 'TN' => 'تونس',
+ 'TO' => 'تونگا',
+ 'TR' => 'ترکیه',
+ 'TT' => 'ترینیداد و توباگو',
+ 'TV' => 'تووالو',
+ 'TW' => 'تایوان',
+ 'TZ' => 'تانزانیا',
+ 'UA' => 'اوکراین',
+ 'UG' => 'اوگاندا',
+ 'UM' => 'جزایر دورافتادهٔ ایالات متحده',
+ 'US' => 'ایالات متحده',
+ 'UY' => 'اروگوئه',
+ 'UZ' => 'ازبکستان',
+ 'VA' => 'واتیکان',
+ 'VC' => 'سنت وینسنت و گرنادین‌ها',
+ 'VE' => 'ونزوئلا',
+ 'VG' => 'جزایر ویرجین بریتانیا',
+ 'VI' => 'جزایر ویرجین ایالات متحده',
+ 'VN' => 'ویتنام',
+ 'VU' => 'وانواتو',
+ 'WF' => 'والیس و فوتونا',
+ 'WS' => 'ساموآ',
+ 'XK' => 'کوزوو',
+ 'YE' => 'یمن',
+ 'YT' => 'مایوت',
+ 'ZA' => 'افریقای جنوبی',
+ 'ZM' => 'زامبیا',
+ 'ZW' => 'زیمبابوه',
+);
+
+$timeUnits = array(
+ 'day-future-one' => '{0} روز بعد',
+ 'day-future-other' => '{0} روز بعد',
+ 'day-narrow-future-one' => '{0} روز بعد',
+ 'day-narrow-future-other' => '{0} روز بعد',
+ 'day-narrow-past-one' => '{0} روز پیش',
+ 'day-narrow-past-other' => '{0} روز پیش',
+ 'day-one' => '{0} روز',
+ 'day-other' => '{0} روز',
+ 'day-past-one' => '{0} روز پیش',
+ 'day-past-other' => '{0} روز پیش',
+ 'day-short-future-one' => '{0} روز بعد',
+ 'day-short-future-other' => '{0} روز بعد',
+ 'day-short-past-one' => '{0} روز پیش',
+ 'day-short-past-other' => '{0} روز پیش',
+ 'hour-future-one' => '{0} ساعت بعد',
+ 'hour-future-other' => '{0} ساعت بعد',
+ 'hour-narrow-future-one' => '{0} ساعت بعد',
+ 'hour-narrow-future-other' => '{0} ساعت بعد',
+ 'hour-narrow-past-one' => '{0} ساعت پیش',
+ 'hour-narrow-past-other' => '{0} ساعت پیش',
+ 'hour-one' => '{0} ساعت',
+ 'hour-other' => '{0} ساعت',
+ 'hour-past-one' => '{0} ساعت پیش',
+ 'hour-past-other' => '{0} ساعت پیش',
+ 'hour-short-future-one' => '{0} ساعت بعد',
+ 'hour-short-future-other' => '{0} ساعت بعد',
+ 'hour-short-past-one' => '{0} ساعت پیش',
+ 'hour-short-past-other' => '{0} ساعت پیش',
+ 'microsecond-one' => '{0} میکروثانیه',
+ 'microsecond-other' => '{0} میکروثانیه',
+ 'millisecond-one' => '{0} میلی‌ثانیه',
+ 'millisecond-other' => '{0} میلی‌ثانیه',
+ 'minute-future-one' => '{0} دقیقه بعد',
+ 'minute-future-other' => '{0} دقیقه بعد',
+ 'minute-narrow-future-one' => '{0} دقیقه بعد',
+ 'minute-narrow-future-other' => '{0} دقیقه بعد',
+ 'minute-narrow-past-one' => '{0} دقیقه پیش',
+ 'minute-narrow-past-other' => '{0} دقیقه پیش',
+ 'minute-one' => '{0} دقیقه',
+ 'minute-other' => '{0} دقیقه',
+ 'minute-past-one' => '{0} دقیقه پیش',
+ 'minute-past-other' => '{0} دقیقه پیش',
+ 'minute-short-future-one' => '{0} دقیقه بعد',
+ 'minute-short-future-other' => '{0} دقیقه بعد',
+ 'minute-short-past-one' => '{0} دقیقه پیش',
+ 'minute-short-past-other' => '{0} دقیقه پیش',
+ 'month-future-one' => '{0} ماه بعد',
+ 'month-future-other' => '{0} ماه بعد',
+ 'month-narrow-future-one' => '{0} ماه بعد',
+ 'month-narrow-future-other' => '{0} ماه بعد',
+ 'month-narrow-past-one' => '{0} ماه پیش',
+ 'month-narrow-past-other' => '{0} ماه پیش',
+ 'month-one' => '{0} ماه',
+ 'month-other' => '{0} ماه',
+ 'month-past-one' => '{0} ماه پیش',
+ 'month-past-other' => '{0} ماه پیش',
+ 'month-short-future-one' => '{0} ماه بعد',
+ 'month-short-future-other' => '{0} ماه بعد',
+ 'month-short-past-one' => '{0} ماه پیش',
+ 'month-short-past-other' => '{0} ماه پیش',
+ 'nanosecond-one' => '{0} نانوثانیه',
+ 'nanosecond-other' => '{0} نانوثانیه',
+ 'quarter-future-one' => '{0} سه‌ماهه بعد',
+ 'quarter-future-other' => '{0} سه‌ماهه بعد',
+ 'quarter-narrow-future-one' => '{0} سه‌ماهه بعد',
+ 'quarter-narrow-future-other' => '{0} سه‌ماهه بعد',
+ 'quarter-narrow-past-one' => '{0} سه‌ماهه پیش',
+ 'quarter-narrow-past-other' => '{0} سه‌ماهه پیش',
+ 'quarter-past-one' => '{0} سه‌ماهه پیش',
+ 'quarter-past-other' => '{0} سه‌ماهه پیش',
+ 'quarter-short-future-one' => '{0} سه‌ماهه بعد',
+ 'quarter-short-future-other' => '{0} سه‌ماهه بعد',
+ 'quarter-short-past-one' => '{0} سه‌ماهه پیش',
+ 'quarter-short-past-other' => '{0} سه‌ماهه پیش',
+ 'second-future-one' => '{0} ثانیه بعد',
+ 'second-future-other' => '{0} ثانیه بعد',
+ 'second-narrow-future-one' => '{0} ثانیه بعد',
+ 'second-narrow-future-other' => '{0} ثانیه بعد',
+ 'second-narrow-past-one' => '{0} ثانیه پیش',
+ 'second-narrow-past-other' => '{0} ثانیه پیش',
+ 'second-one' => '{0} ثانیه',
+ 'second-other' => '{0} ثانیه',
+ 'second-past-one' => '{0} ثانیه پیش',
+ 'second-past-other' => '{0} ثانیه پیش',
+ 'second-short-future-one' => '{0} ثانیه بعد',
+ 'second-short-future-other' => '{0} ثانیه بعد',
+ 'second-short-past-one' => '{0} ثانیه پیش',
+ 'second-short-past-other' => '{0} ثانیه پیش',
+ 'week-future-one' => '{0} هفته بعد',
+ 'week-future-other' => '{0} هفته بعد',
+ 'week-narrow-future-one' => '{0} هفته بعد',
+ 'week-narrow-future-other' => '{0} هفته بعد',
+ 'week-narrow-past-one' => '{0} هفته پیش',
+ 'week-narrow-past-other' => '{0} هفته پیش',
+ 'week-one' => '{0} هفته',
+ 'week-other' => '{0} هفته',
+ 'week-past-one' => '{0} هفته پیش',
+ 'week-past-other' => '{0} هفته پیش',
+ 'week-short-future-one' => '{0} هفته بعد',
+ 'week-short-future-other' => '{0} هفته بعد',
+ 'week-short-past-one' => '{0} هفته پیش',
+ 'week-short-past-other' => '{0} هفته پیش',
+ 'year-future-one' => '{0} سال بعد',
+ 'year-future-other' => '{0} سال بعد',
+ 'year-narrow-future-one' => '{0} سال بعد',
+ 'year-narrow-future-other' => '{0} سال بعد',
+ 'year-narrow-past-one' => '{0} سال پیش',
+ 'year-narrow-past-other' => '{0} سال پیش',
+ 'year-one' => '{0} سال',
+ 'year-other' => '{0} سال',
+ 'year-past-one' => '{0} سال پیش',
+ 'year-past-other' => '{0} سال پیش',
+ 'year-short-future-one' => '{0} سال بعد',
+ 'year-short-future-other' => '{0} سال بعد',
+ 'year-short-past-one' => '{0} سال پیش',
+ 'year-short-past-other' => '{0} سال پیش',
+);
diff --git a/MLEB/cldr/CldrNames/CldrNamesFf.php b/MLEB/cldr/CldrNames/CldrNamesFf.php
new file mode 100644
index 00000000..576f4019
--- /dev/null
+++ b/MLEB/cldr/CldrNames/CldrNamesFf.php
@@ -0,0 +1,335 @@
+<?php
+
+$languageNames = array(
+ 'ak' => 'Akaan',
+ 'am' => 'Amarik',
+ 'ar' => 'Aarabeere',
+ 'be' => 'Belaruuse',
+ 'bg' => 'Bulgariire',
+ 'bn' => 'Bengali',
+ 'cs' => 'Cekkere',
+ 'de' => 'Docceere',
+ 'el' => 'Gerke',
+ 'en' => 'Engeleere',
+ 'es' => 'Español',
+ 'fa' => 'Perseere',
+ 'ff' => 'Pulaar',
+ 'fr' => 'Farayseere',
+ 'ha' => 'Hawsaŋkoore',
+ 'hi' => 'Hinndi',
+ 'hu' => 'Hongariire',
+ 'id' => 'Endonesiire',
+ 'ig' => 'Igiboore',
+ 'it' => 'Italiyeere',
+ 'ja' => 'Saponeere',
+ 'jv' => 'Sawaneere',
+ 'km' => 'Kemeere',
+ 'ko' => 'Koreere',
+ 'ms' => 'Malayeere',
+ 'my' => 'Burmeese',
+ 'ne' => 'Nepaaleere',
+ 'nl' => 'Dacceere',
+ 'pa' => 'Punjabeere',
+ 'pl' => 'Poloneere',
+ 'pt' => 'Purtugeere',
+ 'ro' => 'Romaneere',
+ 'ru' => 'Riis',
+ 'rw' => 'Ruwaanndeere',
+ 'so' => 'Somalii',
+ 'sv' => 'Sweedeere',
+ 'ta' => 'Tamil',
+ 'th' => 'Taay',
+ 'tr' => 'Turkeere',
+ 'uk' => 'Ukereneere',
+ 'ur' => 'Urdu',
+ 'vi' => 'Wiyetnameere',
+ 'yo' => 'Yorrubaa',
+ 'zh' => 'Sinuwaare',
+ 'zu' => 'Suluŋkoore',
+);
+
+$currencyNames = array(
+ 'AED' => 'Dirham Emiraati Araab Dentuɗi',
+ 'AOA' => 'Kwansaa Anngolaa',
+ 'AUD' => 'Dolaar Ostaraalii',
+ 'BHD' => 'Dinaar Bahrayn',
+ 'BIF' => 'Mbuuɗu Burunndi',
+ 'BWP' => 'Pulaa Botwanaa',
+ 'CAD' => 'Dolaar Kandaaa',
+ 'CDF' => 'Faraa Konngo',
+ 'CHF' => 'Faraa Suwiis',
+ 'CNY' => 'Yuam Siin',
+ 'CVE' => 'Eskudoo Kap Weer',
+ 'DJF' => 'Faraa Jibutii',
+ 'DZD' => 'Dinaar Alaseri',
+ 'EGP' => 'Liibar Ejipt',
+ 'ERN' => 'Nafka Eriteree',
+ 'ETB' => 'Biir Ecoppi',
+ 'EUR' => 'Oroo',
+ 'GBP' => 'Liibar Sterling',
+ 'GHC' => 'Sedi Ganaa',
+ 'GMD' => 'Dalasi Gammbi',
+ 'GNS' => 'Faraa Gine',
+ 'INR' => 'Rupii Enndo',
+ 'JPY' => 'Yen Sapoo',
+ 'KES' => 'Siling Keñaa',
+ 'KMF' => 'Faraa Komoor',
+ 'LRD' => 'Dolaar Liberiyaa',
+ 'LSL' => 'Loti Lesotoo',
+ 'LYD' => 'Dinaar Libi',
+ 'MAD' => 'Diraham Maruk',
+ 'MGA' => 'Ariyari Madagaskaar',
+ 'MRO' => 'Ugiyya Muritani',
+ 'MUR' => 'Rupii Moriis',
+ 'MWK' => 'Kuwacca Malaawi',
+ 'MZM' => 'Metikal Mosammbik',
+ 'NAD' => 'Dolaar Namibii',
+ 'NGN' => 'Nayraa Nijeriyaa',
+ 'RWF' => 'Faraa Ruwanndaa',
+ 'SAR' => 'Riyaal Arabi Sawdit',
+ 'SCR' => 'Rupii Seysel',
+ 'SDG' => 'Liibar Sudaan',
+ 'SHP' => 'Liibar Sent Helen',
+ 'SLL' => 'Lewoon Seraa Liyon',
+ 'SOS' => 'Siling Soomali',
+ 'STD' => 'Dobra Sawo Tome e Prensipe',
+ 'SZL' => 'Lilangeni Swaasilannda',
+ 'TND' => 'Dinaar Tunisii',
+ 'TZS' => 'Siling Tansanii',
+ 'UGX' => 'Siling Uganndaa',
+ 'USD' => 'Dolaar Dowlaaji Dentuɗi',
+ 'XAF' => 'Mbuuɗi Seefaa BEAC',
+ 'XOF' => 'Mbuuɗu Seefaa BCEAO',
+ 'ZAR' => 'Rannda Afrik Bŋ Worgo',
+ 'ZMK' => 'Kuwacca Sammbi (1968–2012)',
+ 'ZMW' => 'Kuwacca Sammbi',
+ 'ZWD' => 'Dolaar Simbaabuwe',
+);
+
+$countryNames = array(
+ 'AD' => 'Anndoora',
+ 'AE' => 'Emiraat Araab Denntuɗe',
+ 'AF' => 'Afganistaan',
+ 'AG' => 'Antiguwaa e Barbudaa',
+ 'AI' => 'Anngiyaa',
+ 'AL' => 'Albanii',
+ 'AM' => 'Armenii',
+ 'AN' => 'Antiiye Nederlanndeeje',
+ 'AO' => 'Anngolaa',
+ 'AR' => 'Arjantiin',
+ 'AS' => 'Samowa Amerik',
+ 'AT' => 'Otiriis',
+ 'AU' => 'Ostaraalii',
+ 'AW' => 'Aruuba',
+ 'AZ' => 'Ajerbayjaan',
+ 'BA' => 'Bosnii Hersegowiin',
+ 'BB' => 'Barbadoos',
+ 'BD' => 'Banglaadees',
+ 'BE' => 'Beljik',
+ 'BF' => 'Burkibaa Faaso',
+ 'BG' => 'Bulgarii',
+ 'BH' => 'Bahreyn',
+ 'BI' => 'Burunndi',
+ 'BJ' => 'Benee',
+ 'BM' => 'Bermudaa',
+ 'BN' => 'Burnaay',
+ 'BO' => 'Boliwii',
+ 'BR' => 'Beresiil',
+ 'BS' => 'Bahamaas',
+ 'BT' => 'Butaan',
+ 'BW' => 'Botswaana',
+ 'BY' => 'Belaruus',
+ 'BZ' => 'Beliise',
+ 'CA' => 'Kanadaa',
+ 'CD' => 'Ndenndaandi Demokaraasiire Konngo',
+ 'CF' => 'Ndenndaandi Santarafrik',
+ 'CG' => 'Konngo',
+ 'CH' => 'Suwiis',
+ 'CI' => 'Kodduwaar',
+ 'CK' => 'Duuɗe Kuuk',
+ 'CL' => 'Cilii',
+ 'CM' => 'Kameruun',
+ 'CN' => 'Siin',
+ 'CO' => 'Kolombiya',
+ 'CR' => 'Kosta Rikaa',
+ 'CU' => 'Kubaa',
+ 'CV' => 'Duuɗe Kap Weer',
+ 'CY' => 'Siipar',
+ 'CZ' => 'Ndenndaandi Cek',
+ 'DE' => 'Almaañ',
+ 'DJ' => 'Jibutii',
+ 'DK' => 'Danmark',
+ 'DM' => 'Dominika',
+ 'DO' => 'Ndenndanndi Dominika',
+ 'DZ' => 'Alaseri',
+ 'EC' => 'Ekuwatoor',
+ 'EE' => 'Estoni',
+ 'EG' => 'Ejipt',
+ 'ER' => 'Eriteree',
+ 'ES' => 'Espaañ',
+ 'ET' => 'Ecoppi',
+ 'FI' => 'Fenland',
+ 'FJ' => 'Fijji',
+ 'FK' => 'Duuɗe Falkland',
+ 'FM' => 'Mikoronesii',
+ 'FR' => 'Farayse',
+ 'GA' => 'Gaboo',
+ 'GB' => 'Laamateeri Rentundi',
+ 'GD' => 'Garnaad',
+ 'GE' => 'Jeorgii',
+ 'GF' => 'Giyaan Farayse',
+ 'GH' => 'Ganaa',
+ 'GI' => 'Jibraltaar',
+ 'GL' => 'Gorwendland',
+ 'GM' => 'Gammbi',
+ 'GN' => 'Gine',
+ 'GP' => 'Gwaadalup',
+ 'GQ' => 'Ginee Ekuwaatoriyaal',
+ 'GR' => 'Gerees',
+ 'GT' => 'Gwaatemalaa',
+ 'GU' => 'Guwam',
+ 'GW' => 'Gine-Bisaawo',
+ 'GY' => 'Giyaan',
+ 'HN' => 'Onnduraas',
+ 'HR' => 'Korwasii',
+ 'HT' => 'Haytii',
+ 'HU' => 'Onngiri',
+ 'ID' => 'Enndonesii',
+ 'IE' => 'Irlannda',
+ 'IL' => 'Israa’iila',
+ 'IN' => 'Enndo',
+ 'IO' => 'Keeriindi britaani to maayo enndo',
+ 'IQ' => 'Iraak',
+ 'IR' => 'Iraan',
+ 'IS' => 'Islannda',
+ 'IT' => 'Itali',
+ 'JM' => 'Jamayka',
+ 'JO' => 'Jordani',
+ 'JP' => 'Sapoo',
+ 'KE' => 'Keñaa',
+ 'KG' => 'Kirgistaan',
+ 'KH' => 'Kambodso',
+ 'KI' => 'Kiribari',
+ 'KM' => 'Komoor',
+ 'KN' => 'Sent Kits e Newis',
+ 'KP' => 'Koree Rewo',
+ 'KR' => 'Koree Worgo',
+ 'KW' => 'Kuweyti',
+ 'KY' => 'Duuɗe Kaymaa',
+ 'KZ' => 'Kasakstaan',
+ 'LA' => 'Lawoos',
+ 'LB' => 'Libaa',
+ 'LC' => 'Sent Lusiyaa',
+ 'LI' => 'Lincenstayn',
+ 'LK' => 'Siri Lanka',
+ 'LR' => 'Liberiyaa',
+ 'LS' => 'Lesoto',
+ 'LT' => 'Lituaanii',
+ 'LU' => 'Liksembuur',
+ 'LV' => 'Letonii',
+ 'LY' => 'Libi',
+ 'MA' => 'Maruk',
+ 'MC' => 'Monaakoo',
+ 'MD' => 'Moldawii',
+ 'MG' => 'Madagaskaar',
+ 'MH' => 'Duuɗe Marsaal',
+ 'MK' => 'Meceduwaan',
+ 'ML' => 'Maali',
+ 'MM' => 'Miyamaar',
+ 'MN' => 'Monngolii',
+ 'MP' => 'Duuɗe Mariyaana Rewo',
+ 'MQ' => 'Martinik',
+ 'MR' => 'Muritani',
+ 'MS' => 'Monseraat',
+ 'MT' => 'Malte',
+ 'MU' => 'Moriis',
+ 'MV' => 'Maldiiwe',
+ 'MW' => 'Malaawi',
+ 'MX' => 'Meksik',
+ 'MY' => 'Malesii',
+ 'MZ' => 'Mosammbik',
+ 'NA' => 'Namibii',
+ 'NC' => 'Nuwel Kaledonii',
+ 'NE' => 'Nijeer',
+ 'NF' => 'Duuɗe Norfolk',
+ 'NG' => 'Nijeriyaa',
+ 'NI' => 'Nikaraguwaa',
+ 'NL' => 'Nederlannda',
+ 'NO' => 'Norwees',
+ 'NP' => 'Nepaal',
+ 'NR' => 'Nawuru',
+ 'NU' => 'Niuwe',
+ 'NZ' => 'Nuwel Selannda',
+ 'OM' => 'Omaan',
+ 'PA' => 'Panamaa',
+ 'PE' => 'Peru',
+ 'PF' => 'Polinesii Farayse',
+ 'PG' => 'Papuwaa Nuwel Gine',
+ 'PH' => 'Filipiin',
+ 'PK' => 'Pakistaan',
+ 'PL' => 'Poloñ',
+ 'PM' => 'See Piyeer e Mikeloo',
+ 'PN' => 'Pitkern',
+ 'PR' => 'Porto Rikoo',
+ 'PS' => 'Palestiin Sisjordani e Gaasaa',
+ 'PT' => 'Purtugaal',
+ 'PW' => 'Palawu',
+ 'PY' => 'Paraguwaay',
+ 'QA' => 'Kataar',
+ 'RE' => 'Rewiñoo',
+ 'RO' => 'Rumanii',
+ 'RU' => 'Riisii',
+ 'RW' => 'Ruwanndaa',
+ 'SA' => 'Arabii Sawdit',
+ 'SB' => 'Duuɗe Solomon',
+ 'SC' => 'Seysel',
+ 'SD' => 'Sudaan',
+ 'SE' => 'Suweed',
+ 'SG' => 'Sinngapuur',
+ 'SH' => 'Sent Helen',
+ 'SI' => 'Slowenii',
+ 'SK' => 'Slowakii',
+ 'SL' => 'Seraa liyon',
+ 'SM' => 'See Maree',
+ 'SN' => 'Senegaal',
+ 'SO' => 'Somalii',
+ 'SR' => 'Surinaam',
+ 'ST' => 'Sawo Tome e Perensipe',
+ 'SV' => 'El Salwador',
+ 'SY' => 'Sirii',
+ 'SZ' => 'Swaasilannda',
+ 'TC' => 'Duuɗe Turke e Keikoos',
+ 'TD' => 'Caad',
+ 'TG' => 'Togoo',
+ 'TH' => 'Taylannda',
+ 'TJ' => 'Tajikistaan',
+ 'TK' => 'Tokelaaw',
+ 'TL' => 'Timoor Fuɗnaange',
+ 'TM' => 'Turkmenistaan',
+ 'TN' => 'Tunisii',
+ 'TO' => 'Tonngaa',
+ 'TR' => 'Turkii',
+ 'TT' => 'Tirnidaad e Tobaago',
+ 'TV' => 'Tuwaluu',
+ 'TW' => 'Taywaan',
+ 'TZ' => 'Tansanii',
+ 'UA' => 'Ukereen',
+ 'UG' => 'Unganndaa',
+ 'US' => 'Dowlaaji Dentuɗi Amerik',
+ 'UY' => 'Uruguwaay',
+ 'UZ' => 'Usbekistaan',
+ 'VA' => 'Dowla Waticaan',
+ 'VC' => 'See Weesaa e Garnadiin',
+ 'VE' => 'Wenesuwelaa',
+ 'VG' => 'duuɗe kecce britanii',
+ 'VI' => 'Duuɗe Kecce Amerik',
+ 'VN' => 'Wiyetnaam',
+ 'VU' => 'Wanuwaatuu',
+ 'WF' => 'Walis e Futuna',
+ 'WS' => 'Samowaa',
+ 'YE' => 'Yemen',
+ 'YT' => 'Mayoot',
+ 'ZA' => 'Afrik bŋ Worgo',
+ 'ZM' => 'Sammbi',
+ 'ZW' => 'Simbaabuwe',
+);
diff --git a/MLEB/cldr/CldrNames/CldrNamesFi.php b/MLEB/cldr/CldrNames/CldrNamesFi.php
new file mode 100644
index 00000000..7e10c7de
--- /dev/null
+++ b/MLEB/cldr/CldrNames/CldrNamesFi.php
@@ -0,0 +1,1591 @@
+<?php
+
+$languageNames = array(
+ 'aa' => 'afar',
+ 'ab' => 'abhaasi',
+ 'ace' => 'atšeh',
+ 'ach' => 'atšoli',
+ 'ada' => 'adangme',
+ 'ady' => 'adyge',
+ 'ae' => 'avesta',
+ 'aeb' => 'tunisianarabia',
+ 'af' => 'afrikaans',
+ 'afh' => 'afrihili',
+ 'agq' => 'aghem',
+ 'ain' => 'ainu',
+ 'ak' => 'akan',
+ 'akk' => 'akkadi',
+ 'akz' => 'alabama',
+ 'ale' => 'aleutti',
+ 'aln' => 'geg',
+ 'alt' => 'altai',
+ 'am' => 'amhara',
+ 'an' => 'aragonia',
+ 'ang' => 'muinaisenglanti',
+ 'anp' => 'angika',
+ 'ar' => 'arabia',
+ 'ar-001' => 'yleisarabia',
+ 'arc' => 'valtakunnanaramea',
+ 'arn' => 'mapudungun',
+ 'aro' => 'araona',
+ 'arp' => 'arapaho',
+ 'arq' => 'algerianarabia',
+ 'arw' => 'arawak',
+ 'ary' => 'marokonarabia',
+ 'arz' => 'egyptinarabia',
+ 'as' => 'assami',
+ 'asa' => 'asu',
+ 'ase' => 'amerikkalainen viittomakieli',
+ 'ast' => 'asturia',
+ 'av' => 'avaari',
+ 'avk' => 'kotava',
+ 'awa' => 'awadhi',
+ 'ay' => 'aimara',
+ 'az' => 'azeri',
+ 'azb' => 'eteläazeri',
+ 'ba' => 'baškiiri',
+ 'bal' => 'belutši',
+ 'ban' => 'bali',
+ 'bar' => 'baijeri',
+ 'bas' => 'basaa',
+ 'bax' => 'bamum',
+ 'bbc' => 'batak-toba',
+ 'bbj' => 'ghomala',
+ 'be' => 'valkovenäjä',
+ 'bej' => 'bedža',
+ 'bem' => 'bemba',
+ 'bew' => 'betawi',
+ 'bez' => 'bena',
+ 'bfd' => 'fut',
+ 'bfq' => 'badaga',
+ 'bg' => 'bulgaria',
+ 'bho' => 'bhodžpuri',
+ 'bi' => 'bislama',
+ 'bik' => 'bikol',
+ 'bin' => 'bini',
+ 'bjn' => 'banjar',
+ 'bkm' => 'kom',
+ 'bla' => 'siksika',
+ 'bm' => 'bambara',
+ 'bn' => 'bengali',
+ 'bo' => 'tiibet',
+ 'bpy' => 'bišnupria',
+ 'bqi' => 'bahtiari',
+ 'br' => 'bretoni',
+ 'bra' => 'bradž',
+ 'brh' => 'brahui',
+ 'brx' => 'bodo',
+ 'bs' => 'bosnia',
+ 'bss' => 'koose',
+ 'bua' => 'burjaatti',
+ 'bug' => 'bugi',
+ 'bum' => 'bulu',
+ 'byn' => 'bilin',
+ 'byv' => 'medumba',
+ 'ca' => 'katalaani',
+ 'cad' => 'caddo',
+ 'car' => 'karibi',
+ 'cay' => 'cayuga',
+ 'cch' => 'atsam',
+ 'ce' => 'tšetšeeni',
+ 'ceb' => 'cebuano',
+ 'cgg' => 'kiga',
+ 'ch' => 'tšamorro',
+ 'chb' => 'tšibtša',
+ 'chg' => 'tšagatai',
+ 'chk' => 'chuuk',
+ 'chm' => 'mari',
+ 'chn' => 'chinook-jargon',
+ 'cho' => 'choctaw',
+ 'chp' => 'chipewyan',
+ 'chr' => 'cherokee',
+ 'chy' => 'cheyenne',
+ 'ckb' => 'sorani',
+ 'co' => 'korsika',
+ 'cop' => 'kopti',
+ 'cps' => 'capiznon',
+ 'cr' => 'cree',
+ 'crh' => 'krimintataari',
+ 'cs' => 'tšekki',
+ 'csb' => 'kašubi',
+ 'cu' => 'kirkkoslaavi',
+ 'cv' => 'tšuvassi',
+ 'cy' => 'kymri',
+ 'da' => 'tanska',
+ 'dak' => 'dakota',
+ 'dar' => 'dargi',
+ 'dav' => 'taita',
+ 'de' => 'saksa',
+ 'de-at' => 'itävallansaksa',
+ 'de-ch' => 'sveitsinyläsaksa',
+ 'del' => 'delaware',
+ 'den' => 'slevi',
+ 'dgr' => 'dogrib',
+ 'din' => 'dinka',
+ 'dje' => 'djerma',
+ 'doi' => 'dogri',
+ 'dsb' => 'alasorbi',
+ 'dtp' => 'dusun',
+ 'dua' => 'duala',
+ 'dum' => 'keskihollanti',
+ 'dv' => 'divehi',
+ 'dyo' => 'jola-fonyi',
+ 'dyu' => 'djula',
+ 'dz' => 'dzongkha',
+ 'dzg' => 'dazaga',
+ 'ebu' => 'embu',
+ 'ee' => 'ewe',
+ 'efi' => 'efik',
+ 'egl' => 'emilia',
+ 'egy' => 'muinaisegypti',
+ 'eka' => 'ekajuk',
+ 'el' => 'kreikka',
+ 'elx' => 'elami',
+ 'en' => 'englanti',
+ 'en-au' => 'australianenglanti',
+ 'en-ca' => 'kanadanenglanti',
+ 'en-gb' => 'britannianenglanti',
+ 'en-us' => 'amerikanenglanti',
+ 'enm' => 'keskienglanti',
+ 'eo' => 'esperanto',
+ 'es' => 'espanja',
+ 'es-419' => 'amerikanespanja',
+ 'es-es' => 'espanjanespanja',
+ 'es-mx' => 'meksikonespanja',
+ 'esu' => 'alaskanjupik',
+ 'et' => 'viro',
+ 'eu' => 'baski',
+ 'ewo' => 'ewondo',
+ 'ext' => 'extremadura',
+ 'fa' => 'farsi',
+ 'fan' => 'fang',
+ 'fat' => 'fanti',
+ 'ff' => 'fulani',
+ 'fi' => 'suomi',
+ 'fil' => 'filipino',
+ 'fit' => 'meänkieli',
+ 'fj' => 'fidži',
+ 'fo' => 'fääri',
+ 'fon' => 'fon',
+ 'fr' => 'ranska',
+ 'fr-ca' => 'kanadanranska',
+ 'fr-ch' => 'sveitsinranska',
+ 'frc' => 'cajun',
+ 'frm' => 'keskiranska',
+ 'fro' => 'muinaisranska',
+ 'frp' => 'arpitaani',
+ 'frr' => 'pohjoisfriisi',
+ 'frs' => 'itäfriisi',
+ 'fur' => 'friuli',
+ 'fy' => 'länsifriisi',
+ 'ga' => 'iiri',
+ 'gaa' => 'ga',
+ 'gag' => 'gagauzi',
+ 'gan' => 'gan-kiina',
+ 'gay' => 'gajo',
+ 'gba' => 'gbaja',
+ 'gbz' => 'zoroastrialaisdari',
+ 'gd' => 'gaeli',
+ 'gez' => 'ge’ez',
+ 'gil' => 'kiribati',
+ 'gl' => 'galicia',
+ 'glk' => 'gilaki',
+ 'gmh' => 'keskiyläsaksa',
+ 'gn' => 'guarani',
+ 'goh' => 'muinaisyläsaksa',
+ 'gom' => 'goankonkani',
+ 'gon' => 'gondi',
+ 'gor' => 'gorontalo',
+ 'got' => 'gootti',
+ 'grb' => 'grebo',
+ 'grc' => 'muinaiskreikka',
+ 'gsw' => 'sveitsinsaksa',
+ 'gu' => 'gudžarati',
+ 'guc' => 'wayuu',
+ 'gur' => 'frafra',
+ 'guz' => 'gusii',
+ 'gv' => 'manksi',
+ 'gwi' => 'gwitšin',
+ 'ha' => 'hausa',
+ 'hai' => 'haida',
+ 'hak' => 'hakka-kiina',
+ 'haw' => 'havaiji',
+ 'he' => 'heprea',
+ 'hi' => 'hindi',
+ 'hif' => 'fidžinhindi',
+ 'hil' => 'hiligaino',
+ 'hit' => 'heetti',
+ 'hmn' => 'hmong',
+ 'ho' => 'hiri-motu',
+ 'hr' => 'kroatia',
+ 'hsb' => 'yläsorbi',
+ 'hsn' => 'xiang-kiina',
+ 'ht' => 'haiti',
+ 'hu' => 'unkari',
+ 'hup' => 'hupa',
+ 'hy' => 'armenia',
+ 'hz' => 'herero',
+ 'ia' => 'interlingua',
+ 'iba' => 'iban',
+ 'ibb' => 'ibibio',
+ 'id' => 'indonesia',
+ 'ie' => 'interlingue',
+ 'ig' => 'igbo',
+ 'ii' => 'sichuanin-yi',
+ 'ik' => 'inupiaq',
+ 'ilo' => 'iloko',
+ 'inh' => 'inguuši',
+ 'io' => 'ido',
+ 'is' => 'islanti',
+ 'it' => 'italia',
+ 'iu' => 'inuktitut',
+ 'izh' => 'inkeroinen',
+ 'ja' => 'japani',
+ 'jam' => 'jamaikankreolienglanti',
+ 'jbo' => 'lojban',
+ 'jgo' => 'ngomba',
+ 'jmc' => 'machame',
+ 'jpr' => 'juutalaispersia',
+ 'jrb' => 'juutalaisarabia',
+ 'jut' => 'juutti',
+ 'jv' => 'jaava',
+ 'ka' => 'georgia',
+ 'kaa' => 'karakalpakki',
+ 'kab' => 'kabyyli',
+ 'kac' => 'katšin',
+ 'kaj' => 'jju',
+ 'kam' => 'kamba',
+ 'kaw' => 'kavi',
+ 'kbd' => 'kabardi',
+ 'kbl' => 'kanembu',
+ 'kcg' => 'tyap',
+ 'kde' => 'makonde',
+ 'kea' => 'kapverdenkreoli',
+ 'ken' => 'kenyang',
+ 'kfo' => 'norsunluurannikonkoro',
+ 'kg' => 'kongo',
+ 'kgp' => 'kaingang',
+ 'kha' => 'khasi',
+ 'kho' => 'khotani',
+ 'khq' => 'koyra chiini',
+ 'khw' => 'khowar',
+ 'ki' => 'kikuju',
+ 'kiu' => 'kirmanjki',
+ 'kj' => 'kuanjama',
+ 'kk' => 'kazakki',
+ 'kkj' => 'kako',
+ 'kl' => 'kalaallisut',
+ 'kln' => 'kalenjin',
+ 'km' => 'khmer',
+ 'kmb' => 'kimbundu',
+ 'kn' => 'kannada',
+ 'ko' => 'korea',
+ 'koi' => 'komipermjakki',
+ 'kok' => 'konkani',
+ 'kos' => 'kosrae',
+ 'kpe' => 'kpelle',
+ 'kr' => 'kanuri',
+ 'krc' => 'karatšai-balkaari',
+ 'kri' => 'krio',
+ 'krj' => 'kinaray-a',
+ 'krl' => 'karjala',
+ 'kru' => 'kurukh',
+ 'ks' => 'kašmiri',
+ 'ksb' => 'shambala',
+ 'ksf' => 'bafia',
+ 'ksh' => 'kölsch',
+ 'ku' => 'kurdi',
+ 'kum' => 'kumykki',
+ 'kut' => 'kutenai',
+ 'kv' => 'komi',
+ 'kw' => 'korni',
+ 'ky' => 'kirgiisi',
+ 'la' => 'latina',
+ 'lad' => 'ladino',
+ 'lag' => 'lango',
+ 'lah' => 'lahnda',
+ 'lam' => 'lamba',
+ 'lb' => 'luxemburg',
+ 'lez' => 'lezgi',
+ 'lfn' => 'lingua franca nova',
+ 'lg' => 'ganda',
+ 'li' => 'limburg',
+ 'lij' => 'liguuri',
+ 'liv' => 'liivi',
+ 'lkt' => 'lakota',
+ 'lmo' => 'lombardi',
+ 'ln' => 'lingala',
+ 'lo' => 'lao',
+ 'lol' => 'mongo',
+ 'loz' => 'lozi',
+ 'lt' => 'liettua',
+ 'ltg' => 'latgalli',
+ 'lu' => 'katanganluba',
+ 'lua' => 'luluanluba',
+ 'lui' => 'luiseño',
+ 'lun' => 'lunda',
+ 'luo' => 'luo',
+ 'lus' => 'lusai',
+ 'luy' => 'luhya',
+ 'lv' => 'latvia',
+ 'lzh' => 'klassinen kiina',
+ 'lzz' => 'lazi',
+ 'mad' => 'madura',
+ 'maf' => 'mafa',
+ 'mag' => 'magahi',
+ 'mai' => 'maithili',
+ 'mak' => 'makassar',
+ 'man' => 'mandingo',
+ 'mas' => 'maasai',
+ 'mde' => 'maba',
+ 'mdf' => 'mokša',
+ 'mdr' => 'mandar',
+ 'men' => 'mende',
+ 'mer' => 'meru',
+ 'mfe' => 'morisyen',
+ 'mg' => 'malagassi',
+ 'mga' => 'keski-iiri',
+ 'mgh' => 'makua-meetto',
+ 'mgo' => 'meta’',
+ 'mh' => 'marshall',
+ 'mi' => 'maori',
+ 'mic' => 'micmac',
+ 'min' => 'minangkabau',
+ 'mk' => 'makedonia',
+ 'ml' => 'malajalam',
+ 'mn' => 'mongoli',
+ 'mnc' => 'mantšu',
+ 'mni' => 'manipuri',
+ 'moh' => 'mohawk',
+ 'mos' => 'mossi',
+ 'mr' => 'marathi',
+ 'mrj' => 'vuorimari',
+ 'ms' => 'malaiji',
+ 'mt' => 'malta',
+ 'mua' => 'mundang',
+ 'mul' => 'monia kieliä',
+ 'mus' => 'creek',
+ 'mwl' => 'mirandeesi',
+ 'mwr' => 'marwari',
+ 'mwv' => 'mentawai',
+ 'my' => 'burma',
+ 'mye' => 'myene',
+ 'myv' => 'ersä',
+ 'mzn' => 'mazandarani',
+ 'na' => 'nauru',
+ 'nan' => 'min nan -kiina',
+ 'nap' => 'napoli',
+ 'naq' => 'nama',
+ 'nb' => 'norjan bokmål',
+ 'nd' => 'pohjois-ndebele',
+ 'nds' => 'alasaksa',
+ 'ne' => 'nepali',
+ 'new' => 'newari',
+ 'ng' => 'ndonga',
+ 'nia' => 'nias',
+ 'niu' => 'niue',
+ 'njo' => 'ao naga',
+ 'nl' => 'hollanti',
+ 'nl-be' => 'flaami',
+ 'nmg' => 'kwasio',
+ 'nn' => 'norjan nynorsk',
+ 'nnh' => 'ngiemboon',
+ 'no' => 'norja',
+ 'nog' => 'nogai',
+ 'non' => 'muinaisnorja',
+ 'nov' => 'novial',
+ 'nqo' => 'n’ko',
+ 'nr' => 'etelä-ndebele',
+ 'nso' => 'pohjoissotho',
+ 'nus' => 'nuer',
+ 'nv' => 'navajo',
+ 'nwc' => 'klassinen newari',
+ 'ny' => 'njandža',
+ 'nym' => 'nyamwezi',
+ 'nyn' => 'nyankole',
+ 'nyo' => 'nyoro',
+ 'nzi' => 'nzima',
+ 'oc' => 'oksitaani',
+ 'oj' => 'odžibwa',
+ 'om' => 'oromo',
+ 'or' => 'orija',
+ 'os' => 'osseetti',
+ 'osa' => 'osage',
+ 'ota' => 'osmani',
+ 'pa' => 'pandžabi',
+ 'pag' => 'pangasinan',
+ 'pal' => 'pahlavi',
+ 'pam' => 'pampanga',
+ 'pap' => 'papiamentu',
+ 'pau' => 'palau',
+ 'pcd' => 'picardi',
+ 'pdc' => 'pennsylvaniansaksa',
+ 'pdt' => 'plautdietsch',
+ 'peo' => 'muinaispersia',
+ 'pfl' => 'pfaltsi',
+ 'phn' => 'foinikia',
+ 'pi' => 'paali',
+ 'pl' => 'puola',
+ 'pms' => 'piemonte',
+ 'pnt' => 'pontoksenkreikka',
+ 'pon' => 'pohnpei',
+ 'prg' => 'muinaispreussi',
+ 'pro' => 'muinaisprovensaali',
+ 'ps' => 'paštu',
+ 'pt' => 'portugali',
+ 'pt-br' => 'brasilianportugali',
+ 'pt-pt' => 'portugalinportugali',
+ 'qu' => 'ketšua',
+ 'quc' => 'kʼicheʼ',
+ 'qug' => 'chimborazonylänköketšua',
+ 'raj' => 'radžastani',
+ 'rap' => 'rapanui',
+ 'rar' => 'rarotonga',
+ 'rgn' => 'romagnoli',
+ 'rif' => 'tarifit',
+ 'rm' => 'retoromaani',
+ 'rn' => 'rundi',
+ 'ro' => 'romania',
+ 'ro-md' => 'moldova',
+ 'rof' => 'rombo',
+ 'rom' => 'romani',
+ 'rtm' => 'rotuma',
+ 'ru' => 'venäjä',
+ 'rue' => 'ruteeni',
+ 'rug' => 'roviana',
+ 'rup' => 'aromania',
+ 'rw' => 'ruanda',
+ 'rwk' => 'rwa',
+ 'sa' => 'sanskrit',
+ 'sad' => 'sandawe',
+ 'sah' => 'jakuutti',
+ 'sam' => 'samarianaramea',
+ 'saq' => 'samburu',
+ 'sas' => 'sasak',
+ 'sat' => 'santali',
+ 'saz' => 'sauraštri',
+ 'sba' => 'ngambay',
+ 'sbp' => 'sangu',
+ 'sc' => 'sardi',
+ 'scn' => 'sisilia',
+ 'sco' => 'skotti',
+ 'sd' => 'sindhi',
+ 'sdc' => 'sassarinsardi',
+ 'se' => 'pohjoissaame',
+ 'see' => 'seneca',
+ 'seh' => 'sena',
+ 'sei' => 'seri',
+ 'sel' => 'selkuppi',
+ 'ses' => 'koyraboro senni',
+ 'sg' => 'sango',
+ 'sga' => 'muinaisiiri',
+ 'sgs' => 'samogiitti',
+ 'sh' => 'serbokroaatti',
+ 'shi' => 'tašelhit',
+ 'shn' => 'shan',
+ 'shu' => 'tšadinarabia',
+ 'si' => 'sinhala',
+ 'sid' => 'sidamo',
+ 'sk' => 'slovakki',
+ 'sl' => 'sloveeni',
+ 'sli' => 'sleesiansaksa',
+ 'sly' => 'selayar',
+ 'sm' => 'samoa',
+ 'sma' => 'eteläsaame',
+ 'smj' => 'luulajansaame',
+ 'smn' => 'inarinsaame',
+ 'sms' => 'koltansaame',
+ 'sn' => 'šona',
+ 'snk' => 'soninke',
+ 'so' => 'somali',
+ 'sog' => 'sogdi',
+ 'sq' => 'albania',
+ 'sr' => 'serbia',
+ 'srn' => 'sranan',
+ 'srr' => 'serer',
+ 'ss' => 'swazi',
+ 'ssy' => 'saho',
+ 'st' => 'eteläsotho',
+ 'stq' => 'saterlandinfriisi',
+ 'su' => 'sunda',
+ 'suk' => 'sukuma',
+ 'sus' => 'susu',
+ 'sux' => 'sumeri',
+ 'sv' => 'ruotsi',
+ 'sw' => 'swahili',
+ 'swb' => 'komori',
+ 'swc' => 'kingwana',
+ 'syc' => 'muinaissyyria',
+ 'syr' => 'syyria',
+ 'szl' => 'sleesia',
+ 'ta' => 'tamili',
+ 'tcy' => 'tulu',
+ 'te' => 'telugu',
+ 'tem' => 'temne',
+ 'teo' => 'teso',
+ 'ter' => 'tereno',
+ 'tet' => 'tetum',
+ 'tg' => 'tadžikki',
+ 'th' => 'thai',
+ 'ti' => 'tigrinja',
+ 'tig' => 'tigre',
+ 'tiv' => 'tiv',
+ 'tk' => 'turkmeeni',
+ 'tkl' => 'tokelau',
+ 'tkr' => 'tsahuri',
+ 'tl' => 'tagalog',
+ 'tlh' => 'klingon',
+ 'tli' => 'tlingit',
+ 'tly' => 'tališi',
+ 'tmh' => 'tamašek',
+ 'tn' => 'tswana',
+ 'to' => 'tonga',
+ 'tog' => 'malawintonga',
+ 'tpi' => 'tok-pisin',
+ 'tr' => 'turkki',
+ 'tru' => 'turojo',
+ 'trv' => 'taroko',
+ 'ts' => 'tsonga',
+ 'tsd' => 'tsakonia',
+ 'tsi' => 'tsimši',
+ 'tt' => 'tataari',
+ 'ttt' => 'tati',
+ 'tum' => 'tumbuka',
+ 'tvl' => 'tuvalu',
+ 'tw' => 'twi',
+ 'twq' => 'tasawaq',
+ 'ty' => 'tahiti',
+ 'tyv' => 'tuva',
+ 'tzm' => 'keskiatlaksentamazight',
+ 'udm' => 'udmurtti',
+ 'ug' => 'uiguuri',
+ 'uga' => 'ugarit',
+ 'uk' => 'ukraina',
+ 'umb' => 'mbundu',
+ 'und' => 'määrittämätön kieli',
+ 'ur' => 'urdu',
+ 'uz' => 'uzbekki',
+ 'vai' => 'vai',
+ 've' => 'venda',
+ 'vec' => 'venetsia',
+ 'vep' => 'vepsä',
+ 'vi' => 'vietnam',
+ 'vls' => 'länsiflaami',
+ 'vmf' => 'maininfrankki',
+ 'vo' => 'volapük',
+ 'vot' => 'vatja',
+ 'vro' => 'võro',
+ 'vun' => 'vunjo',
+ 'wa' => 'valloni',
+ 'wae' => 'walser',
+ 'wal' => 'wolaitta',
+ 'war' => 'waray',
+ 'was' => 'washo',
+ 'wo' => 'wolof',
+ 'wuu' => 'wu-kiina',
+ 'xal' => 'kalmukki',
+ 'xh' => 'xhosa',
+ 'xmf' => 'mingreli',
+ 'xog' => 'soga',
+ 'yao' => 'jao',
+ 'yap' => 'japi',
+ 'yav' => 'yangben',
+ 'ybb' => 'yemba',
+ 'yi' => 'jiddiš',
+ 'yo' => 'joruba',
+ 'yrl' => 'ñeengatú',
+ 'yue' => 'kantoninkiina',
+ 'za' => 'zhuang',
+ 'zap' => 'zapoteekki',
+ 'zbl' => 'blisskieli',
+ 'zea' => 'seelanti',
+ 'zen' => 'zenaga',
+ 'zgh' => 'vakioitu tamazight',
+ 'zh' => 'kiina',
+ 'zh-hans' => 'yksinkertaistettu kiina',
+ 'zh-hant' => 'perinteinen kiina',
+ 'zu' => 'zulu',
+ 'zun' => 'zuni',
+ 'zxx' => 'ei kielellistä sisältöä',
+ 'zza' => 'zaza',
+);
+
+$currencyNames = array(
+ 'ADP' => 'Andorran peseta',
+ 'AED' => 'Arabiemiirikuntien dirhami',
+ 'AFA' => 'Afganistanin afgaani (1927–2002)',
+ 'AFN' => 'Afganistanin afgaani',
+ 'ALK' => 'Albanian lek (1946–1965)',
+ 'ALL' => 'Albanian lek',
+ 'AMD' => 'Armenian dram',
+ 'ANG' => 'Alankomaiden Antillien guldeni',
+ 'AOA' => 'Angolan kwanza',
+ 'AOK' => 'Angolan kwanza (1977–1991)',
+ 'AON' => 'Angolan uusi kwanza (1990–2000)',
+ 'AOR' => 'Angolan kwanza reajustado (1995–1999)',
+ 'ARA' => 'Argentiinan austral',
+ 'ARL' => 'Argentiinan ley-peso (1970–1983)',
+ 'ARM' => 'Argentiinan peso (1881–1970)',
+ 'ARP' => 'Argentiinan peso (1983–1985)',
+ 'ARS' => 'Argentiinan peso',
+ 'ATS' => 'Itävallan šillinki',
+ 'AUD' => 'Australian dollari',
+ 'AWG' => 'Aruban floriini',
+ 'AZM' => 'Azerbaidžanin manat (1993–2006)',
+ 'AZN' => 'Azerbaidžanin manat',
+ 'BAD' => 'Bosnia-Hertsegovinan dinaari (1992–1994)',
+ 'BAM' => 'Bosnia-Hertsegovinan vaihdettava markka',
+ 'BAN' => 'Bosnia-Hertsegovinan uusi dinaari (1994–1997)',
+ 'BBD' => 'Barbadosin dollari',
+ 'BDT' => 'Bangladeshin taka',
+ 'BEC' => 'Belgian vaihdettava frangi',
+ 'BEF' => 'Belgian frangi',
+ 'BEL' => 'Belgian rahoitusfrangi',
+ 'BGL' => 'Bulgarian kova lev',
+ 'BGM' => 'Bulgarian sosialistinen lev',
+ 'BGN' => 'Bulgarian lev',
+ 'BGO' => 'Bulgarian lev (1879–1952)',
+ 'BHD' => 'Bahrainin dinaari',
+ 'BIF' => 'Burundin frangi',
+ 'BMD' => 'Bermudan dollari',
+ 'BND' => 'Brunein dollari',
+ 'BOB' => 'Bolivian boliviano',
+ 'BOL' => 'Bolivian boliviano (1863–1963)',
+ 'BOP' => 'Bolivian peso',
+ 'BOV' => 'Bolivian mvdol',
+ 'BRB' => 'Brasilian uusi cruzeiro (1967–1986)',
+ 'BRC' => 'Brasilian cruzado (1986–1989)',
+ 'BRE' => 'Brasilian cruzeiro (1990–1993)',
+ 'BRL' => 'Brasilian real',
+ 'BRN' => 'Brasilian uusi cruzado (1989–1990)',
+ 'BRR' => 'Brasilian cruzeiro (1993–1994)',
+ 'BRZ' => 'Brasilian cruzeiro (1942–1967)',
+ 'BSD' => 'Bahaman dollari',
+ 'BTN' => 'Bhutanin ngultrum',
+ 'BUK' => 'Burman kyat',
+ 'BWP' => 'Botswanan pula',
+ 'BYB' => 'Valko-Venäjän uusi rupla (1994–1999)',
+ 'BYR' => 'Valko-Venäjän rupla',
+ 'BZD' => 'Belizen dollari',
+ 'CAD' => 'Kanadan dollari',
+ 'CDF' => 'Kongon frangi',
+ 'CHE' => 'Sveitsin WIR-euro',
+ 'CHF' => 'Sveitsin frangi',
+ 'CHW' => 'Sveitsin WIR-frangi',
+ 'CLE' => 'Chilen escudo',
+ 'CLF' => 'Chilen unidades de fomento',
+ 'CLP' => 'Chilen peso',
+ 'CNX' => 'Kiinan kansanpankin dollari',
+ 'CNY' => 'Kiinan yuan',
+ 'COP' => 'Kolumbian peso',
+ 'COU' => 'Kolumbian unidad de valor real',
+ 'CRC' => 'Costa Rican colon',
+ 'CSD' => 'Serbian dinaari (2002–2006)',
+ 'CSK' => 'Tšekkoslovakian kova koruna',
+ 'CUC' => 'Kuuban vaihdettava peso',
+ 'CUP' => 'Kuuban peso',
+ 'CVE' => 'Kap Verden escudo',
+ 'CYP' => 'Kyproksen punta',
+ 'CZK' => 'Tšekin koruna',
+ 'DDM' => 'Itä-Saksan markka',
+ 'DEM' => 'Saksan markka',
+ 'DJF' => 'Djiboutin frangi',
+ 'DKK' => 'Tanskan kruunu',
+ 'DOP' => 'Dominikaanisen tasavallan peso',
+ 'DZD' => 'Algerian dinaari',
+ 'ECS' => 'Ecuadorin sucre',
+ 'ECV' => 'Ecuadorin UVC',
+ 'EEK' => 'Viron kruunu',
+ 'EGP' => 'Egyptin punta',
+ 'ERN' => 'Eritrean nakfa',
+ 'ESA' => 'Espanjan peseta (A–tili)',
+ 'ESB' => 'Espanjan peseta (vaihdettava tili)',
+ 'ESP' => 'Espanjan peseta',
+ 'ETB' => 'Etiopian birr',
+ 'EUR' => 'euro',
+ 'FIM' => 'Suomen markka',
+ 'FJD' => 'Fidžin dollari',
+ 'FKP' => 'Falklandinsaarten punta',
+ 'FRF' => 'Ranskan frangi',
+ 'GBP' => 'Englannin punta',
+ 'GEK' => 'Georgian kuponkilari',
+ 'GEL' => 'Georgian lari',
+ 'GHC' => 'Ghanan cedi (1979–2007)',
+ 'GHS' => 'Ghanan cedi',
+ 'GIP' => 'Gibraltarin punta',
+ 'GMD' => 'Gambian dalasi',
+ 'GNF' => 'Guinean frangi',
+ 'GNS' => 'Guinean syli',
+ 'GQE' => 'Päiväntasaajan Guinean ekwele',
+ 'GRD' => 'Kreikan drakma',
+ 'GTQ' => 'Guatemalan quetzal',
+ 'GWE' => 'Portugalin Guinean escudo',
+ 'GWP' => 'Guinea-Bissaun peso',
+ 'GYD' => 'Guyanan dollari',
+ 'HKD' => 'Hongkongin dollari',
+ 'HNL' => 'Hondurasin lempira',
+ 'HRD' => 'Kroatian dinaari',
+ 'HRK' => 'Kroatian kuna',
+ 'HTG' => 'Haitin gourde',
+ 'HUF' => 'Unkarin forintti',
+ 'IDR' => 'Indonesian rupia',
+ 'IEP' => 'Irlannin punta',
+ 'ILP' => 'Israelin punta',
+ 'ILR' => 'Israelin sekeli (1980–1985)',
+ 'ILS' => 'Israelin uusi sekeli',
+ 'INR' => 'Intian rupia',
+ 'IQD' => 'Irakin dinaari',
+ 'IRR' => 'Iranin rial',
+ 'ISJ' => 'Islannin kruunu (1918–1981)',
+ 'ISK' => 'Islannin kruunu',
+ 'ITL' => 'Italian liira',
+ 'JMD' => 'Jamaikan dollari',
+ 'JOD' => 'Jordanian dinaari',
+ 'JPY' => 'Japanin jeni',
+ 'KES' => 'Kenian šillinki',
+ 'KGS' => 'Kirgisian som',
+ 'KHR' => 'Kambodžan riel',
+ 'KMF' => 'Komorien frangi',
+ 'KPW' => 'Pohjois-Korean won',
+ 'KRH' => 'Etelä-Korean hwan (1953–1962)',
+ 'KRO' => 'Etelä-Korean won (1945–1953)',
+ 'KRW' => 'Etelä-Korean won',
+ 'KWD' => 'Kuwaitin dinaari',
+ 'KYD' => 'Caymansaarten dollari',
+ 'KZT' => 'Kazakstanin tenge',
+ 'LAK' => 'Laosin kip',
+ 'LBP' => 'Libanonin punta',
+ 'LKR' => 'Sri Lankan rupia',
+ 'LRD' => 'Liberian dollari',
+ 'LSL' => 'Lesothon loti',
+ 'LTL' => 'Liettuan liti',
+ 'LTT' => 'Liettuan talonas',
+ 'LUC' => 'Luxemburgin vaihdettava frangi',
+ 'LUF' => 'Luxemburgin frangi',
+ 'LUL' => 'Luxemburgin rahoitusfrangi',
+ 'LVL' => 'Latvian lati',
+ 'LVR' => 'Latvian rupla',
+ 'LYD' => 'Libyan dinaari',
+ 'MAD' => 'Marokon dirhami',
+ 'MAF' => 'Marokon frangi',
+ 'MCF' => 'Monacon frangi',
+ 'MDC' => 'Moldovan kuponkileu',
+ 'MDL' => 'Moldovan leu',
+ 'MGA' => 'Madagaskarin ariary',
+ 'MGF' => 'Madagaskarin frangi',
+ 'MKD' => 'Makedonian denaari',
+ 'MKN' => 'Makedonian dinaari (1992–1993)',
+ 'MLF' => 'Malin frangi',
+ 'MMK' => 'Myanmarin kyat',
+ 'MNT' => 'Mongolian tugrik',
+ 'MOP' => 'Macaon pataca',
+ 'MRO' => 'Mauritanian ouguiya',
+ 'MTL' => 'Maltan liira',
+ 'MTP' => 'Maltan punta',
+ 'MUR' => 'Mauritiuksen rupia',
+ 'MVP' => 'Malediivien rupia (1947–1981)',
+ 'MVR' => 'Malediivien rufiyaa',
+ 'MWK' => 'Malawin kwacha',
+ 'MXN' => 'Meksikon peso',
+ 'MXP' => 'Meksikon hopeapeso (1861–1992)',
+ 'MXV' => 'Meksikon UDI',
+ 'MYR' => 'Malesian ringgit',
+ 'MZE' => 'Mosambikin escudo',
+ 'MZM' => 'Mosambikin metical (1980–2006)',
+ 'MZN' => 'Mosambikin metical',
+ 'NAD' => 'Namibian dollari',
+ 'NGN' => 'Nigerian naira',
+ 'NIC' => 'Nicaraguan cordoba (1988–1991)',
+ 'NIO' => 'Nicaraguan cordoba',
+ 'NLG' => 'Alankomaiden guldeni',
+ 'NOK' => 'Norjan kruunu',
+ 'NPR' => 'Nepalin rupia',
+ 'NZD' => 'Uuden-Seelannin dollari',
+ 'OMR' => 'Omanin rial',
+ 'PAB' => 'Panaman balboa',
+ 'PEI' => 'Perun inti',
+ 'PEN' => 'Perun uusi sol',
+ 'PES' => 'Perun sol (1863–1965)',
+ 'PGK' => 'Papua-Uuden-Guinean kina',
+ 'PHP' => 'Filippiinien peso',
+ 'PKR' => 'Pakistanin rupia',
+ 'PLN' => 'Puolan zloty',
+ 'PLZ' => 'Puolan zloty (1950–1995)',
+ 'PTE' => 'Portugalin escudo',
+ 'PYG' => 'Paraguayn guarani',
+ 'QAR' => 'Qatarin rial',
+ 'RHD' => 'Rhodesian dollari',
+ 'ROL' => 'Romanian leu (1952–2006)',
+ 'RON' => 'Romanian leu',
+ 'RSD' => 'Serbian dinaari',
+ 'RUB' => 'Venäjän rupla',
+ 'RUR' => 'Venäjän rupla (1991–1998)',
+ 'RWF' => 'Ruandan frangi',
+ 'SAR' => 'Saudi-Arabian rial',
+ 'SBD' => 'Salomonsaarten dollari',
+ 'SCR' => 'Seychellien rupia',
+ 'SDD' => 'Sudanin dinaari (1992–2007)',
+ 'SDG' => 'Sudanin punta',
+ 'SDP' => 'Sudanin punta (1957–1998)',
+ 'SEK' => 'Ruotsin kruunu',
+ 'SGD' => 'Singaporen dollari',
+ 'SHP' => 'Saint Helenan punta',
+ 'SIT' => 'Slovenian tolar',
+ 'SKK' => 'Slovakian koruna',
+ 'SLL' => 'Sierra Leonen leone',
+ 'SOS' => 'Somalian šillinki',
+ 'SRD' => 'Surinamin dollari',
+ 'SRG' => 'Surinamin guldeni',
+ 'SSP' => 'Etelä-Sudanin punta',
+ 'STD' => 'São Tomén ja Príncipen dobra',
+ 'SUR' => 'Neuvostoliiton rupla',
+ 'SVC' => 'El Salvadorin colon',
+ 'SYP' => 'Syyrian punta',
+ 'SZL' => 'Swazimaan lilangeni',
+ 'THB' => 'Thaimaan baht',
+ 'TJR' => 'Tadžikistanin rupla',
+ 'TJS' => 'Tadžikistanin somoni',
+ 'TMM' => 'Turkmenistanin manat (1993–2009)',
+ 'TMT' => 'Turkmenistanin manat',
+ 'TND' => 'Tunisian dinaari',
+ 'TOP' => 'Tongan pa’anga',
+ 'TPE' => 'Timorin escudo',
+ 'TRL' => 'Turkin liira (1922–2005)',
+ 'TRY' => 'Turkin liira',
+ 'TTD' => 'Trinidadin ja Tobagon dollari',
+ 'TWD' => 'Taiwanin uusi dollari',
+ 'TZS' => 'Tansanian šillinki',
+ 'UAH' => 'Ukrainan hryvnia',
+ 'UAK' => 'Ukrainan karbovanetz',
+ 'UGS' => 'Ugandan šillinki (1966–1987)',
+ 'UGX' => 'Ugandan šillinki',
+ 'USD' => 'Yhdysvaltain dollari',
+ 'USN' => 'Yhdysvaltain dollari (seuraava päivä)',
+ 'USS' => 'Yhdysvaltain dollari (sama päivä)',
+ 'UYI' => 'Uruguayn peso en unidades indexadas',
+ 'UYP' => 'Uruguayn peso (1975–1993)',
+ 'UYU' => 'Uruguayn peso',
+ 'UZS' => 'Uzbekistanin som',
+ 'VEB' => 'Venezuelan bolivar (1871–2008)',
+ 'VEF' => 'Venezuelan bolivar',
+ 'VND' => 'Vietnamin dong',
+ 'VNN' => 'Vietnamin dong (1978–1985)',
+ 'VUV' => 'Vanuatun vatu',
+ 'WST' => 'Samoan tala',
+ 'XAF' => 'CFA-frangi BEAC',
+ 'XAG' => 'hopea',
+ 'XAU' => 'kulta',
+ 'XBA' => 'EURCO',
+ 'XBB' => 'Euroopan rahayksikkö (EMU)',
+ 'XBC' => 'EUA (XBC)',
+ 'XBD' => 'EUA (XBD)',
+ 'XCD' => 'Itä-Karibian dollari',
+ 'XDR' => 'erityisnosto-oikeus (SDR)',
+ 'XEU' => 'Euroopan valuuttayksikkö (ECU)',
+ 'XFO' => 'Ranskan kultafrangi',
+ 'XFU' => 'Ranskan UIC-frangi',
+ 'XOF' => 'CFA-frangi BCEAO',
+ 'XPD' => 'palladium',
+ 'XPF' => 'CFP-frangi',
+ 'XPT' => 'platina',
+ 'XRE' => 'RINET-rahastot',
+ 'XSU' => 'etelä-amerikkalaisen ALBA:n laskentayksikkö sucre',
+ 'XTS' => 'testaustarkoitukseen varattu valuuttakoodi',
+ 'XUA' => 'afrikkalainen ADB-laskentayksikkö',
+ 'XXX' => 'tuntematon rahayksikkö',
+ 'YDD' => 'Jemenin dinaari',
+ 'YER' => 'Jemenin rial',
+ 'YUD' => 'Jugoslavian kova dinaari (1966–1990)',
+ 'YUM' => 'Jugoslavian uusi dinaari (1994–2002)',
+ 'YUN' => 'Jugoslavian vaihdettava dinaari (1990–1992)',
+ 'YUR' => 'Jugoslavian uudistettu dinaari (1992–1993)',
+ 'ZAL' => 'Etelä-Afrikan rahoitusrandi',
+ 'ZAR' => 'Etelä-Afrikan randi',
+ 'ZMK' => 'Sambian kwacha (1968–2012)',
+ 'ZMW' => 'Sambian kwacha',
+ 'ZRN' => 'Zairen uusi zaire (1993–1998)',
+ 'ZRZ' => 'Zairen zaire (1971–1993)',
+ 'ZWD' => 'Zimbabwen dollari (1980–2008)',
+ 'ZWL' => 'Zimbabwen dollari (2009)',
+ 'ZWR' => 'Zimbabwen dollari (2008)',
+);
+
+$currencySymbols = array(
+ 'ADP' => 'ADP',
+ 'AED' => 'AED',
+ 'AFA' => 'AFA',
+ 'AFN' => 'AFN',
+ 'ALK' => 'ALK',
+ 'ALL' => 'ALL',
+ 'AMD' => 'AMD',
+ 'ANG' => 'ANG',
+ 'AOA' => 'AOA',
+ 'AOK' => 'AOK',
+ 'AON' => 'AON',
+ 'AOR' => 'AOR',
+ 'ARA' => 'ARA',
+ 'ARL' => 'ARL',
+ 'ARM' => 'ARM',
+ 'ARP' => 'ARP',
+ 'ARS' => 'ARS',
+ 'ATS' => 'ATS',
+ 'AUD' => 'AUD',
+ 'AWG' => 'AWG',
+ 'AZM' => 'AZM',
+ 'AZN' => 'AZN',
+ 'BAD' => 'BAD',
+ 'BAM' => 'BAM',
+ 'BAN' => 'BAN',
+ 'BBD' => 'BBD',
+ 'BDT' => 'BDT',
+ 'BEC' => 'BEC',
+ 'BEF' => 'BEF',
+ 'BEL' => 'BEL',
+ 'BGL' => 'BGL',
+ 'BGM' => 'BGM',
+ 'BGN' => 'BGN',
+ 'BGO' => 'BGO',
+ 'BHD' => 'BHD',
+ 'BIF' => 'BIF',
+ 'BMD' => 'BMD',
+ 'BND' => 'BND',
+ 'BOB' => 'BOB',
+ 'BOL' => 'BOL',
+ 'BOP' => 'BOP',
+ 'BOV' => 'BOV',
+ 'BRB' => 'BRB',
+ 'BRC' => 'BRC',
+ 'BRE' => 'BRE',
+ 'BRL' => 'BRL',
+ 'BRN' => 'BRN',
+ 'BRR' => 'BRR',
+ 'BRZ' => 'BRZ',
+ 'BSD' => 'BSD',
+ 'BTN' => 'BTN',
+ 'BUK' => 'BUK',
+ 'BWP' => 'BWP',
+ 'BYB' => 'BYB',
+ 'BYR' => 'BYR',
+ 'BZD' => 'BZD',
+ 'CAD' => 'CAD',
+ 'CDF' => 'CDF',
+ 'CHE' => 'CHE',
+ 'CHF' => 'CHF',
+ 'CHW' => 'CHW',
+ 'CLE' => 'CLE',
+ 'CLF' => 'CLF',
+ 'CLP' => 'CLP',
+ 'CNX' => 'CNX',
+ 'CNY' => 'CNY',
+ 'COP' => 'COP',
+ 'COU' => 'COU',
+ 'CRC' => 'CRC',
+ 'CSD' => 'CSD',
+ 'CSK' => 'CSK',
+ 'CUC' => 'CUC',
+ 'CUP' => 'CUP',
+ 'CVE' => 'CVE',
+ 'CYP' => 'CYP',
+ 'CZK' => 'CZK',
+ 'DDM' => 'DDM',
+ 'DEM' => 'DEM',
+ 'DJF' => 'DJF',
+ 'DKK' => 'DKK',
+ 'DOP' => 'DOP',
+ 'DZD' => 'DZD',
+ 'ECS' => 'ECS',
+ 'ECV' => 'ECV',
+ 'EEK' => 'EEK',
+ 'EGP' => 'EGP',
+ 'ERN' => 'ERN',
+ 'ESA' => 'ESA',
+ 'ESB' => 'ESB',
+ 'ESP' => 'ESP',
+ 'ETB' => 'ETB',
+ 'EUR' => '€',
+ 'FIM' => 'mk',
+ 'FJD' => 'FJD',
+ 'FKP' => 'FKP',
+ 'FRF' => 'FRF',
+ 'GBP' => '£',
+ 'GEK' => 'GEK',
+ 'GEL' => 'GEL',
+ 'GHC' => 'GHC',
+ 'GHS' => 'GHS',
+ 'GIP' => 'GIP',
+ 'GMD' => 'GMD',
+ 'GNF' => 'GNF',
+ 'GNS' => 'GNS',
+ 'GQE' => 'GQE',
+ 'GRD' => 'GRD',
+ 'GTQ' => 'GTQ',
+ 'GWE' => 'GWE',
+ 'GWP' => 'GWP',
+ 'GYD' => 'GYD',
+ 'HKD' => 'HKD',
+ 'HNL' => 'HNL',
+ 'HRD' => 'HRD',
+ 'HRK' => 'HRK',
+ 'HTG' => 'HTG',
+ 'HUF' => 'HUF',
+ 'IDR' => 'IDR',
+ 'IEP' => 'IEP',
+ 'ILP' => 'ILP',
+ 'ILR' => 'ILR',
+ 'ILS' => 'ILS',
+ 'INR' => 'INR',
+ 'IQD' => 'IQD',
+ 'IRR' => 'IRR',
+ 'ISJ' => 'ISJ',
+ 'ISK' => 'ISK',
+ 'ITL' => 'ITL',
+ 'JMD' => 'JMD',
+ 'JOD' => 'JOD',
+ 'JPY' => '¥',
+ 'KES' => 'KES',
+ 'KGS' => 'KGS',
+ 'KHR' => 'KHR',
+ 'KMF' => 'KMF',
+ 'KPW' => 'KPW',
+ 'KRH' => 'KRH',
+ 'KRO' => 'KRO',
+ 'KRW' => 'KRW',
+ 'KWD' => 'KWD',
+ 'KYD' => 'KYD',
+ 'KZT' => 'KZT',
+ 'LAK' => 'LAK',
+ 'LBP' => 'LBP',
+ 'LKR' => 'LKR',
+ 'LRD' => 'LRD',
+ 'LSL' => 'LSL',
+ 'LTL' => 'LTL',
+ 'LTT' => 'LTT',
+ 'LUC' => 'LUC',
+ 'LUF' => 'LUF',
+ 'LUL' => 'LUL',
+ 'LVL' => 'LVL',
+ 'LVR' => 'LVR',
+ 'LYD' => 'LYD',
+ 'MAD' => 'MAD',
+ 'MAF' => 'MAF',
+ 'MCF' => 'MCF',
+ 'MDC' => 'MDC',
+ 'MDL' => 'MDL',
+ 'MGA' => 'MGA',
+ 'MGF' => 'MGF',
+ 'MKD' => 'MKD',
+ 'MKN' => 'MKN',
+ 'MLF' => 'MLF',
+ 'MMK' => 'MMK',
+ 'MNT' => 'MNT',
+ 'MOP' => 'MOP',
+ 'MRO' => 'MRO',
+ 'MTL' => 'MTL',
+ 'MTP' => 'MTP',
+ 'MUR' => 'MUR',
+ 'MVP' => 'MVP',
+ 'MVR' => 'MVR',
+ 'MWK' => 'MWK',
+ 'MXN' => 'MXN',
+ 'MXP' => 'MXP',
+ 'MXV' => 'MXV',
+ 'MYR' => 'MYR',
+ 'MZE' => 'MZE',
+ 'MZM' => 'MZM',
+ 'MZN' => 'MZN',
+ 'NAD' => 'NAD',
+ 'NGN' => 'NGN',
+ 'NIC' => 'NIC',
+ 'NIO' => 'NIO',
+ 'NLG' => 'NLG',
+ 'NOK' => 'NOK',
+ 'NPR' => 'NPR',
+ 'NZD' => 'NZD',
+ 'OMR' => 'OMR',
+ 'PAB' => 'PAB',
+ 'PEI' => 'PEI',
+ 'PEN' => 'PEN',
+ 'PES' => 'PES',
+ 'PGK' => 'PGK',
+ 'PHP' => 'PHP',
+ 'PKR' => 'PKR',
+ 'PLN' => 'PLN',
+ 'PLZ' => 'PLZ',
+ 'PTE' => 'PTE',
+ 'PYG' => 'PYG',
+ 'QAR' => 'QAR',
+ 'RHD' => 'RHD',
+ 'ROL' => 'ROL',
+ 'RON' => 'RON',
+ 'RSD' => 'RSD',
+ 'RUB' => 'RUB',
+ 'RUR' => 'RUR',
+ 'RWF' => 'RWF',
+ 'SAR' => 'SAR',
+ 'SBD' => 'SBD',
+ 'SCR' => 'SCR',
+ 'SDD' => 'SDD',
+ 'SDG' => 'SDG',
+ 'SDP' => 'SDP',
+ 'SEK' => 'SEK',
+ 'SGD' => 'SGD',
+ 'SHP' => 'SHP',
+ 'SIT' => 'SIT',
+ 'SKK' => 'SKK',
+ 'SLL' => 'SLL',
+ 'SOS' => 'SOS',
+ 'SRD' => 'SRD',
+ 'SRG' => 'SRG',
+ 'SSP' => 'SSP',
+ 'STD' => 'STD',
+ 'SUR' => 'SUR',
+ 'SVC' => 'SVC',
+ 'SYP' => 'SYP',
+ 'SZL' => 'SZL',
+ 'THB' => 'THB',
+ 'TJR' => 'TJR',
+ 'TJS' => 'TJS',
+ 'TMM' => 'TMM',
+ 'TMT' => 'TMT',
+ 'TND' => 'TND',
+ 'TOP' => 'TOP',
+ 'TPE' => 'TPE',
+ 'TRL' => 'TRL',
+ 'TRY' => 'TRY',
+ 'TTD' => 'TTD',
+ 'TWD' => 'TWD',
+ 'TZS' => 'TZS',
+ 'UAH' => 'UAH',
+ 'UAK' => 'UAK',
+ 'UGS' => 'UGS',
+ 'UGX' => 'UGX',
+ 'USD' => '$',
+ 'USN' => 'USN',
+ 'USS' => 'USS',
+ 'UYI' => 'UYI',
+ 'UYP' => 'UYP',
+ 'UYU' => 'UYU',
+ 'UZS' => 'UZS',
+ 'VEB' => 'VEB',
+ 'VEF' => 'VEF',
+ 'VND' => 'VND',
+ 'VNN' => 'VNN',
+ 'VUV' => 'VUV',
+ 'WST' => 'WST',
+ 'XAF' => 'FCFA',
+ 'XAG' => 'XAG',
+ 'XAU' => 'XAU',
+ 'XBA' => 'XBA',
+ 'XBB' => 'XBB',
+ 'XBC' => 'XBC',
+ 'XBD' => 'XBD',
+ 'XCD' => 'XCD',
+ 'XDR' => 'XDR',
+ 'XEU' => 'XEU',
+ 'XFU' => 'XFU',
+ 'XOF' => 'CFA',
+ 'XPD' => 'XPD',
+ 'XPF' => 'XPF',
+ 'XPT' => 'XPT',
+ 'XRE' => 'XRE',
+ 'XSU' => 'XSU',
+ 'XTS' => 'XTS',
+ 'XUA' => 'XUA',
+ 'XXX' => 'XXX',
+ 'YDD' => 'YDD',
+ 'YER' => 'YER',
+ 'YUD' => 'YUD',
+ 'YUM' => 'YUM',
+ 'YUN' => 'YUN',
+ 'YUR' => 'YUR',
+ 'ZAL' => 'ZAL',
+ 'ZAR' => 'ZAR',
+ 'ZMK' => 'ZMK',
+ 'ZMW' => 'ZMW',
+ 'ZRN' => 'ZRN',
+ 'ZRZ' => 'ZRZ',
+ 'ZWD' => 'ZWD',
+ 'ZWL' => 'ZWL',
+ 'ZWR' => 'ZWR',
+);
+
+$countryNames = array(
+ 'AC' => 'Ascension-saari',
+ 'AD' => 'Andorra',
+ 'AE' => 'Arabiemiirikunnat',
+ 'AF' => 'Afganistan',
+ 'AG' => 'Antigua ja Barbuda',
+ 'AI' => 'Anguilla',
+ 'AL' => 'Albania',
+ 'AM' => 'Armenia',
+ 'AN' => 'Alankomaiden Antillit',
+ 'AO' => 'Angola',
+ 'AQ' => 'Antarktis',
+ 'AR' => 'Argentiina',
+ 'AS' => 'Amerikan Samoa',
+ 'AT' => 'Itävalta',
+ 'AU' => 'Australia',
+ 'AW' => 'Aruba',
+ 'AX' => 'Ahvenanmaa',
+ 'AZ' => 'Azerbaidžan',
+ 'BA' => 'Bosnia ja Hertsegovina',
+ 'BB' => 'Barbados',
+ 'BD' => 'Bangladesh',
+ 'BE' => 'Belgia',
+ 'BF' => 'Burkina Faso',
+ 'BG' => 'Bulgaria',
+ 'BH' => 'Bahrain',
+ 'BI' => 'Burundi',
+ 'BJ' => 'Benin',
+ 'BL' => 'Saint-Barthélemy',
+ 'BM' => 'Bermuda',
+ 'BN' => 'Brunei',
+ 'BO' => 'Bolivia',
+ 'BQ' => 'Karibian Alankomaat',
+ 'BR' => 'Brasilia',
+ 'BS' => 'Bahama',
+ 'BT' => 'Bhutan',
+ 'BV' => 'Bouvet’nsaari',
+ 'BW' => 'Botswana',
+ 'BY' => 'Valko-Venäjä',
+ 'BZ' => 'Belize',
+ 'CA' => 'Kanada',
+ 'CC' => 'Kookossaaret (Keelingsaaret)',
+ 'CD' => 'Kongon demokraattinen tasavalta',
+ 'CF' => 'Keski-Afrikan tasavalta',
+ 'CG' => 'Kongon tasavalta',
+ 'CH' => 'Sveitsi',
+ 'CI' => 'Norsunluurannikko',
+ 'CK' => 'Cookinsaaret',
+ 'CL' => 'Chile',
+ 'CM' => 'Kamerun',
+ 'CN' => 'Kiina',
+ 'CO' => 'Kolumbia',
+ 'CP' => 'Clippertoninsaari',
+ 'CR' => 'Costa Rica',
+ 'CU' => 'Kuuba',
+ 'CV' => 'Kap Verde',
+ 'CW' => 'Curaçao',
+ 'CX' => 'Joulusaari',
+ 'CY' => 'Kypros',
+ 'CZ' => 'Tšekki',
+ 'DE' => 'Saksa',
+ 'DG' => 'Diego Garcia',
+ 'DJ' => 'Djibouti',
+ 'DK' => 'Tanska',
+ 'DM' => 'Dominica',
+ 'DO' => 'Dominikaaninen tasavalta',
+ 'DZ' => 'Algeria',
+ 'EA' => 'Ceuta ja Melilla',
+ 'EC' => 'Ecuador',
+ 'EE' => 'Viro',
+ 'EG' => 'Egypti',
+ 'EH' => 'Länsi-Sahara',
+ 'ER' => 'Eritrea',
+ 'ES' => 'Espanja',
+ 'ET' => 'Etiopia',
+ 'EU' => 'Euroopan unioni',
+ 'FI' => 'Suomi',
+ 'FJ' => 'Fidži',
+ 'FK' => 'Falklandinsaaret',
+ 'FM' => 'Mikronesian liittovaltio',
+ 'FO' => 'Färsaaret',
+ 'FR' => 'Ranska',
+ 'GA' => 'Gabon',
+ 'GB' => 'Britannia',
+ 'GD' => 'Grenada',
+ 'GE' => 'Georgia',
+ 'GF' => 'Ranskan Guayana',
+ 'GG' => 'Guernsey',
+ 'GH' => 'Ghana',
+ 'GI' => 'Gibraltar',
+ 'GL' => 'Grönlanti',
+ 'GM' => 'Gambia',
+ 'GN' => 'Guinea',
+ 'GP' => 'Guadeloupe',
+ 'GQ' => 'Päiväntasaajan Guinea',
+ 'GR' => 'Kreikka',
+ 'GS' => 'Etelä-Georgia ja Eteläiset Sandwichsaaret',
+ 'GT' => 'Guatemala',
+ 'GU' => 'Guam',
+ 'GW' => 'Guinea-Bissau',
+ 'GY' => 'Guyana',
+ 'HK' => 'Hongkong',
+ 'HM' => 'Heard ja McDonaldinsaaret',
+ 'HN' => 'Honduras',
+ 'HR' => 'Kroatia',
+ 'HT' => 'Haiti',
+ 'HU' => 'Unkari',
+ 'IC' => 'Kanariansaaret',
+ 'ID' => 'Indonesia',
+ 'IE' => 'Irlanti',
+ 'IL' => 'Israel',
+ 'IM' => 'Mansaari',
+ 'IN' => 'Intia',
+ 'IO' => 'Brittiläinen Intian valtameren alue',
+ 'IQ' => 'Irak',
+ 'IR' => 'Iran',
+ 'IS' => 'Islanti',
+ 'IT' => 'Italia',
+ 'JE' => 'Jersey',
+ 'JM' => 'Jamaika',
+ 'JO' => 'Jordania',
+ 'JP' => 'Japani',
+ 'KE' => 'Kenia',
+ 'KG' => 'Kirgisia',
+ 'KH' => 'Kambodža',
+ 'KI' => 'Kiribati',
+ 'KM' => 'Komorit',
+ 'KN' => 'Saint Kitts ja Nevis',
+ 'KP' => 'Pohjois-Korea',
+ 'KR' => 'Etelä-Korea',
+ 'KW' => 'Kuwait',
+ 'KY' => 'Caymansaaret',
+ 'KZ' => 'Kazakstan',
+ 'LA' => 'Laos',
+ 'LB' => 'Libanon',
+ 'LC' => 'Saint Lucia',
+ 'LI' => 'Liechtenstein',
+ 'LK' => 'Sri Lanka',
+ 'LR' => 'Liberia',
+ 'LS' => 'Lesotho',
+ 'LT' => 'Liettua',
+ 'LU' => 'Luxemburg',
+ 'LV' => 'Latvia',
+ 'LY' => 'Libya',
+ 'MA' => 'Marokko',
+ 'MC' => 'Monaco',
+ 'MD' => 'Moldova',
+ 'ME' => 'Montenegro',
+ 'MF' => 'Saint-Martin',
+ 'MG' => 'Madagaskar',
+ 'MH' => 'Marshallinsaaret',
+ 'MK' => 'Makedonia',
+ 'ML' => 'Mali',
+ 'MM' => 'Myanmar (Burma)',
+ 'MN' => 'Mongolia',
+ 'MO' => 'Macao',
+ 'MP' => 'Pohjois-Mariaanit',
+ 'MQ' => 'Martinique',
+ 'MR' => 'Mauritania',
+ 'MS' => 'Montserrat',
+ 'MT' => 'Malta',
+ 'MU' => 'Mauritius',
+ 'MV' => 'Malediivit',
+ 'MW' => 'Malawi',
+ 'MX' => 'Meksiko',
+ 'MY' => 'Malesia',
+ 'MZ' => 'Mosambik',
+ 'NA' => 'Namibia',
+ 'NC' => 'Uusi-Kaledonia',
+ 'NE' => 'Niger',
+ 'NF' => 'Norfolkinsaari',
+ 'NG' => 'Nigeria',
+ 'NI' => 'Nicaragua',
+ 'NL' => 'Alankomaat',
+ 'NO' => 'Norja',
+ 'NP' => 'Nepal',
+ 'NR' => 'Nauru',
+ 'NU' => 'Niue',
+ 'NZ' => 'Uusi-Seelanti',
+ 'OM' => 'Oman',
+ 'PA' => 'Panama',
+ 'PE' => 'Peru',
+ 'PF' => 'Ranskan Polynesia',
+ 'PG' => 'Papua-Uusi-Guinea',
+ 'PH' => 'Filippiinit',
+ 'PK' => 'Pakistan',
+ 'PL' => 'Puola',
+ 'PM' => 'Saint-Pierre ja Miquelon',
+ 'PN' => 'Pitcairn',
+ 'PR' => 'Puerto Rico',
+ 'PS' => 'Palestiina',
+ 'PT' => 'Portugali',
+ 'PW' => 'Palau',
+ 'PY' => 'Paraguay',
+ 'QA' => 'Qatar',
+ 'QO' => 'ulkomeri',
+ 'RE' => 'Réunion',
+ 'RO' => 'Romania',
+ 'RS' => 'Serbia',
+ 'RU' => 'Venäjä',
+ 'RW' => 'Ruanda',
+ 'SA' => 'Saudi-Arabia',
+ 'SB' => 'Salomonsaaret',
+ 'SC' => 'Seychellit',
+ 'SD' => 'Sudan',
+ 'SE' => 'Ruotsi',
+ 'SG' => 'Singapore',
+ 'SH' => 'Saint Helena',
+ 'SI' => 'Slovenia',
+ 'SJ' => 'Huippuvuoret ja Jan Mayen',
+ 'SK' => 'Slovakia',
+ 'SL' => 'Sierra Leone',
+ 'SM' => 'San Marino',
+ 'SN' => 'Senegal',
+ 'SO' => 'Somalia',
+ 'SR' => 'Surinam',
+ 'SS' => 'Etelä-Sudan',
+ 'ST' => 'São Tomé ja Príncipe',
+ 'SV' => 'El Salvador',
+ 'SX' => 'Sint Maarten',
+ 'SY' => 'Syyria',
+ 'SZ' => 'Swazimaa',
+ 'TA' => 'Tristan da Cunha',
+ 'TC' => 'Turks- ja Caicossaaret',
+ 'TD' => 'Tšad',
+ 'TF' => 'Ranskan ulkopuoliset eteläiset alueet',
+ 'TG' => 'Togo',
+ 'TH' => 'Thaimaa',
+ 'TJ' => 'Tadžikistan',
+ 'TK' => 'Tokelau',
+ 'TL' => 'Itä-Timor',
+ 'TM' => 'Turkmenistan',
+ 'TN' => 'Tunisia',
+ 'TO' => 'Tonga',
+ 'TR' => 'Turkki',
+ 'TT' => 'Trinidad ja Tobago',
+ 'TV' => 'Tuvalu',
+ 'TW' => 'Taiwan',
+ 'TZ' => 'Tansania',
+ 'UA' => 'Ukraina',
+ 'UG' => 'Uganda',
+ 'UM' => 'Yhdysvaltain erillissaaret',
+ 'US' => 'USA',
+ 'UY' => 'Uruguay',
+ 'UZ' => 'Uzbekistan',
+ 'VA' => 'Vatikaani',
+ 'VC' => 'Saint Vincent ja Grenadiinit',
+ 'VE' => 'Venezuela',
+ 'VG' => 'Brittiläiset Neitsytsaaret',
+ 'VI' => 'Yhdysvaltain Neitsytsaaret',
+ 'VN' => 'Vietnam',
+ 'VU' => 'Vanuatu',
+ 'WF' => 'Wallis ja Futuna',
+ 'WS' => 'Samoa',
+ 'XK' => 'Kosovo',
+ 'YE' => 'Jemen',
+ 'YT' => 'Mayotte',
+ 'ZA' => 'Etelä-Afrikka',
+ 'ZM' => 'Sambia',
+ 'ZW' => 'Zimbabwe',
+);
+
+$timeUnits = array(
+ 'day-future-one' => '{0} päivän päästä',
+ 'day-future-other' => '{0} päivän päästä',
+ 'day-narrow-future-one' => '{0} pv päästä',
+ 'day-narrow-future-other' => '{0} pv päästä',
+ 'day-narrow-past-one' => '{0} pv sitten',
+ 'day-narrow-past-other' => '{0} pv sitten',
+ 'day-one' => '{0} päivä',
+ 'day-other' => '{0} päivää',
+ 'day-past-one' => '{0} päivä sitten',
+ 'day-past-other' => '{0} päivää sitten',
+ 'day-short-future-one' => '{0} pv päästä',
+ 'day-short-future-other' => '{0} pv päästä',
+ 'day-short-past-one' => '{0} pv sitten',
+ 'day-short-past-other' => '{0} pv sitten',
+ 'hour-future-one' => '{0} tunnin päästä',
+ 'hour-future-other' => '{0} tunnin päästä',
+ 'hour-narrow-future-one' => '{0} t päästä',
+ 'hour-narrow-future-other' => '{0} t päästä',
+ 'hour-narrow-past-one' => '{0} t sitten',
+ 'hour-narrow-past-other' => '{0} t sitten',
+ 'hour-one' => '{0} tunti',
+ 'hour-other' => '{0} tuntia',
+ 'hour-past-one' => '{0} tunti sitten',
+ 'hour-past-other' => '{0} tuntia sitten',
+ 'hour-short-future-one' => '{0} t päästä',
+ 'hour-short-future-other' => '{0} t päästä',
+ 'hour-short-past-one' => '{0} t sitten',
+ 'hour-short-past-other' => '{0} t sitten',
+ 'microsecond-one' => '{0} mikrosekunti',
+ 'microsecond-other' => '{0} mikrosekuntia',
+ 'millisecond-one' => '{0} millisekunti',
+ 'millisecond-other' => '{0} millisekuntia',
+ 'minute-future-one' => '{0} minuutin päästä',
+ 'minute-future-other' => '{0} minuutin päästä',
+ 'minute-narrow-future-one' => '{0} min päästä',
+ 'minute-narrow-future-other' => '{0} min päästä',
+ 'minute-narrow-past-one' => '{0} min sitten',
+ 'minute-narrow-past-other' => '{0} min sitten',
+ 'minute-one' => '{0} minuutti',
+ 'minute-other' => '{0} minuuttia',
+ 'minute-past-one' => '{0} minuutti sitten',
+ 'minute-past-other' => '{0} minuuttia sitten',
+ 'minute-short-future-one' => '{0} min päästä',
+ 'minute-short-future-other' => '{0} min päästä',
+ 'minute-short-past-one' => '{0} min sitten',
+ 'minute-short-past-other' => '{0} min sitten',
+ 'month-future-one' => '{0} kuukauden päästä',
+ 'month-future-other' => '{0} kuukauden päästä',
+ 'month-narrow-future-one' => '{0} kk päästä',
+ 'month-narrow-future-other' => '{0} kk päästä',
+ 'month-narrow-past-one' => '{0} kk sitten',
+ 'month-narrow-past-other' => '{0} kk sitten',
+ 'month-one' => '{0} kuukausi',
+ 'month-other' => '{0} kuukautta',
+ 'month-past-one' => '{0} kuukausi sitten',
+ 'month-past-other' => '{0} kuukautta sitten',
+ 'month-short-future-one' => '{0} kk päästä',
+ 'month-short-future-other' => '{0} kk päästä',
+ 'month-short-past-one' => '{0} kk sitten',
+ 'month-short-past-other' => '{0} kk sitten',
+ 'nanosecond-one' => '{0} nanosekunti',
+ 'nanosecond-other' => '{0} nanosekuntia',
+ 'quarter-future-one' => '{0} neljännesvuoden päästä',
+ 'quarter-future-other' => '{0} neljännesvuoden päästä',
+ 'quarter-narrow-future-one' => '{0} nelj. päästä',
+ 'quarter-narrow-future-other' => '{0} nelj. päästä',
+ 'quarter-narrow-past-one' => '{0} nelj. sitten',
+ 'quarter-narrow-past-other' => '{0} nelj. sitten',
+ 'quarter-past-one' => '{0} neljännesvuosi sitten',
+ 'quarter-past-other' => '{0} neljännesvuotta sitten',
+ 'quarter-short-future-one' => '{0} neljänneksen päästä',
+ 'quarter-short-future-other' => '{0} neljänneksen päästä',
+ 'quarter-short-past-one' => '{0} neljännes sitten',
+ 'quarter-short-past-other' => '{0} neljännes sitten',
+ 'second-future-one' => '{0} sekunnin päästä',
+ 'second-future-other' => '{0} sekunnin päästä',
+ 'second-narrow-future-one' => '{0} s päästä',
+ 'second-narrow-future-other' => '{0} s päästä',
+ 'second-narrow-past-one' => '{0} s sitten',
+ 'second-narrow-past-other' => '{0} s sitten',
+ 'second-one' => '{0} sekunti',
+ 'second-other' => '{0} sekuntia',
+ 'second-past-one' => '{0} sekunti sitten',
+ 'second-past-other' => '{0} sekuntia sitten',
+ 'second-short-future-one' => '{0} s päästä',
+ 'second-short-future-other' => '{0} s päästä',
+ 'second-short-past-one' => '{0} s sitten',
+ 'second-short-past-other' => '{0} s sitten',
+ 'week-future-one' => '{0} viikon päästä',
+ 'week-future-other' => '{0} viikon päästä',
+ 'week-narrow-future-one' => '{0} vk päästä',
+ 'week-narrow-future-other' => '{0} vk päästä',
+ 'week-narrow-past-one' => '{0} vk sitten',
+ 'week-narrow-past-other' => '{0} vk sitten',
+ 'week-one' => '{0} viikko',
+ 'week-other' => '{0} viikkoa',
+ 'week-past-one' => '{0} viikko sitten',
+ 'week-past-other' => '{0} viikkoa sitten',
+ 'week-short-future-one' => '{0} vk päästä',
+ 'week-short-future-other' => '{0} vk päästä',
+ 'week-short-past-one' => '{0} vk sitten',
+ 'week-short-past-other' => '{0} vk sitten',
+ 'year-future-one' => '{0} vuoden päästä',
+ 'year-future-other' => '{0} vuoden päästä',
+ 'year-narrow-future-one' => '{0} v päästä',
+ 'year-narrow-future-other' => '{0} v päästä',
+ 'year-narrow-past-one' => '{0} v sitten',
+ 'year-narrow-past-other' => '{0} v sitten',
+ 'year-one' => '{0} vuosi',
+ 'year-other' => '{0} vuotta',
+ 'year-past-one' => '{0} vuosi sitten',
+ 'year-past-other' => '{0} vuotta sitten',
+ 'year-short-future-one' => '{0} vuoden päästä',
+ 'year-short-future-other' => '{0} vuoden päästä',
+ 'year-short-past-one' => '{0} vuotta sitten',
+ 'year-short-past-other' => '{0} vuotta sitten',
+);
diff --git a/MLEB/cldr/CldrNames/CldrNamesFo.php b/MLEB/cldr/CldrNames/CldrNamesFo.php
new file mode 100644
index 00000000..7d8b22b7
--- /dev/null
+++ b/MLEB/cldr/CldrNames/CldrNamesFo.php
@@ -0,0 +1,453 @@
+<?php
+
+$languageNames = array(
+ 'ab' => 'abkhaziskt',
+ 'af' => 'afríska',
+ 'am' => 'amhariskt',
+ 'ar' => 'arabiskt',
+ 'as' => 'assamesiskt',
+ 'asa' => 'asu (Tanzania)',
+ 'ay' => 'aymara',
+ 'az' => 'azerbaijaniskt',
+ 'be' => 'hvitarussiskt',
+ 'bem' => 'bemba',
+ 'bez' => 'bena (Tanzania)',
+ 'bg' => 'bulgarskt',
+ 'bm' => 'bambara',
+ 'bn' => 'bengaliskt',
+ 'bo' => 'tibetanskt',
+ 'br' => 'bretonskt',
+ 'bs' => 'bosniskt',
+ 'bss' => 'bakossi',
+ 'ca' => 'katalanskt',
+ 'cs' => 'kekkiskt',
+ 'cy' => 'valisiskt',
+ 'da' => 'danskt',
+ 'de' => 'týskt',
+ 'dv' => 'divehi',
+ 'dz' => 'dzongkha',
+ 'ebu' => 'kiembu',
+ 'efi' => 'efik',
+ 'el' => 'grikiskt',
+ 'en' => 'enskt',
+ 'eo' => 'esperanto',
+ 'es' => 'spanskt',
+ 'et' => 'estlendskt',
+ 'eu' => 'baskiskt',
+ 'fa' => 'persiskt',
+ 'fi' => 'finskt',
+ 'fil' => 'filipiniskt',
+ 'fj' => 'fidjianskt',
+ 'fo' => 'føroyskt',
+ 'fr' => 'franskt',
+ 'fy' => 'vestfrisikt',
+ 'ga' => 'írskt',
+ 'gd' => 'skotskt gæliskt',
+ 'gl' => 'galisiskt',
+ 'gn' => 'guarani',
+ 'gu' => 'gujariti',
+ 'ha' => 'haussa',
+ 'haw' => 'hawaiianskt',
+ 'he' => 'hebraiskt',
+ 'hi' => 'hindi',
+ 'hr' => 'kroatiskt',
+ 'ht' => 'haitiskt',
+ 'hu' => 'ungarskt',
+ 'hy' => 'armenskt',
+ 'ia' => 'interlingua',
+ 'id' => 'indonesiskt',
+ 'ie' => 'interlingue',
+ 'ig' => 'igbo',
+ 'is' => 'íslendskt',
+ 'it' => 'italskt',
+ 'ja' => 'japanskt',
+ 'jv' => 'javanesiskt',
+ 'ka' => 'georgiskt',
+ 'kea' => 'kapverdiskt',
+ 'kk' => 'kazakiskt',
+ 'km' => 'kambodjanskt',
+ 'kn' => 'kannada',
+ 'ko' => 'koreanskt',
+ 'ks' => 'kashmiriskt',
+ 'ku' => 'kurdiskt',
+ 'ky' => 'kirgisikt',
+ 'la' => 'latín',
+ 'lah' => 'lahnda',
+ 'lb' => 'luxemburgiskt',
+ 'ln' => 'lingala',
+ 'lo' => 'laotiskt',
+ 'lt' => 'litavskt',
+ 'luy' => 'olulujia',
+ 'lv' => 'latviskt',
+ 'mg' => 'malagasiskt',
+ 'mi' => 'maoriskt',
+ 'mk' => 'makedonskt',
+ 'ml' => 'malayalam',
+ 'mn' => 'mongoliskt',
+ 'mr' => 'marathiskt',
+ 'ms' => 'malajiskt',
+ 'mt' => 'maltesiskt',
+ 'my' => 'burmesiskt',
+ 'nb' => 'norskt bokmál',
+ 'ne' => 'nepalskt',
+ 'nl' => 'hollendskt',
+ 'nn' => 'nýnorskt',
+ 'no' => 'norskt',
+ 'ny' => 'nyanja',
+ 'oc' => 'occitan',
+ 'or' => 'oriya',
+ 'os' => 'ossetiskt',
+ 'pa' => 'punjabiskt',
+ 'pl' => 'polskt',
+ 'ps' => 'afghanskt',
+ 'pt' => 'portugisiskt',
+ 'qu' => 'quechua',
+ 'rm' => 'romansh',
+ 'rn' => 'rundi',
+ 'ro' => 'romanskt',
+ 'ru' => 'russiskt',
+ 'rw' => 'ruanda',
+ 'sa' => 'sanskrit',
+ 'sd' => 'sindhi',
+ 'sg' => 'sango',
+ 'sh' => 'serbokroatiskt',
+ 'si' => 'sinhalesiskt',
+ 'sk' => 'slovakiskt',
+ 'sl' => 'slovenskt',
+ 'sm' => 'samoiskt',
+ 'sn' => 'shona',
+ 'so' => 'somaliskt',
+ 'sq' => 'albanskt',
+ 'sr' => 'serbiskt',
+ 'ss' => 'swatiskt',
+ 'st' => 'sesotho',
+ 'su' => 'sundanesiskt',
+ 'sv' => 'svenskt',
+ 'sw' => 'swahili',
+ 'swb' => 'shimaoré',
+ 'ta' => 'tamilskt',
+ 'te' => 'telugiskt',
+ 'tet' => 'tetum',
+ 'tg' => 'tajikiskt',
+ 'th' => 'thailendskt',
+ 'ti' => 'tigrinya',
+ 'tk' => 'turkmenskt',
+ 'tl' => 'tagalog',
+ 'tlh' => 'klingonskt',
+ 'tn' => 'tswana',
+ 'to' => 'tonganskt',
+ 'tpi' => 'tok pisin',
+ 'tr' => 'turkiskt',
+ 'ts' => 'tsonga',
+ 'tt' => 'tatariskt',
+ 'tw' => 'twi',
+ 'ty' => 'tahitiskt',
+ 'ug' => 'uighur',
+ 'uk' => 'ukrainskt',
+ 'und' => 'ukjent mál',
+ 'ur' => 'urdu',
+ 'uz' => 'uzbekiskt',
+ 've' => 'venda',
+ 'vi' => 'vietnamesiskt',
+ 'wo' => 'wolof',
+ 'xh' => 'xhosa',
+ 'yi' => 'jiddiskt',
+ 'yo' => 'yoruba',
+ 'yue' => 'kantonesískt',
+ 'zh' => 'kinesiskt',
+ 'zu' => 'sulu',
+);
+
+$currencyNames = array(
+ 'DKK' => 'donsk króna',
+ 'EUR' => 'euro',
+ 'ISK' => 'íslendsk króna',
+ 'NOK' => 'norsk króna',
+ 'SEK' => 'svensk króna',
+ 'XAG' => 'unse sølv',
+ 'XAU' => 'unse guld',
+ 'XPD' => 'unse palladium',
+ 'XPT' => 'unse platin',
+);
+
+$currencySymbols = array(
+ 'DKK' => 'kr',
+);
+
+$countryNames = array(
+ 'AC' => 'Ascensionoyggjin',
+ 'AD' => 'Andorra',
+ 'AE' => 'Sameindu Emirríkini',
+ 'AF' => 'Afganistan',
+ 'AG' => 'Antigua og Barbuda',
+ 'AI' => 'Anguilla',
+ 'AL' => 'Albania',
+ 'AM' => 'Armenia',
+ 'AN' => 'Niðurlendsku Antilloyggjarnar',
+ 'AO' => 'Angola',
+ 'AQ' => 'Antarktis',
+ 'AR' => 'Argentina',
+ 'AS' => 'Amerikanska Sámoa',
+ 'AT' => 'Eysturríki',
+ 'AU' => 'Avstralia',
+ 'AW' => 'Aruba',
+ 'AX' => 'Áland',
+ 'AZ' => 'Aserbajdsjan',
+ 'BA' => 'Bosnia-Hersegovina',
+ 'BB' => 'Barbados',
+ 'BD' => 'Bangladesj',
+ 'BE' => 'Belgia',
+ 'BF' => 'Burkina Faso',
+ 'BG' => 'Bulgaria',
+ 'BH' => 'Bahrain',
+ 'BI' => 'Burundi',
+ 'BJ' => 'Benin',
+ 'BL' => 'Saint Barthélemy',
+ 'BM' => 'Bermuda',
+ 'BN' => 'Brunei',
+ 'BO' => 'Bolivia',
+ 'BQ' => 'Niðurlonds Karibia',
+ 'BR' => 'Brasilia',
+ 'BS' => 'Bahamas',
+ 'BT' => 'Butan',
+ 'BV' => 'Bouvetoyggjin',
+ 'BW' => 'Botsvana',
+ 'BY' => 'Hvítarussland',
+ 'BZ' => 'Belis',
+ 'CA' => 'Kanada',
+ 'CC' => 'Kokosoyggjarnar',
+ 'CD' => 'Kongo-Kinshasa',
+ 'CF' => 'Miðafrikalýðveldið',
+ 'CG' => 'Kongo',
+ 'CH' => 'Sveis',
+ 'CI' => 'Fílabeinsstrondin',
+ 'CK' => 'Cooksoyggjarnar',
+ 'CL' => 'Kili',
+ 'CM' => 'Kamerun',
+ 'CN' => 'Kina',
+ 'CO' => 'Kolombia',
+ 'CP' => 'Clippertonoyggjin',
+ 'CR' => 'Kosta Rika',
+ 'CU' => 'Kuba',
+ 'CV' => 'Grønhøvdaoyggjarnar',
+ 'CW' => 'Curaçao',
+ 'CX' => 'Jólaoyggjin',
+ 'CY' => 'Kýpros',
+ 'CZ' => 'Kekkia',
+ 'DE' => 'Týskland',
+ 'DG' => 'Diego Garcia',
+ 'DJ' => 'Djibouti',
+ 'DK' => 'Danmørk',
+ 'DM' => 'Dominika',
+ 'DO' => 'Domingo lýðveldið',
+ 'DZ' => 'Algeria',
+ 'EA' => 'Ceuta og Melilla',
+ 'EC' => 'Ekvador',
+ 'EE' => 'Estland',
+ 'EG' => 'Egyptaland',
+ 'EH' => 'Vestursahara',
+ 'ER' => 'Eritrea',
+ 'ES' => 'Spania',
+ 'ET' => 'Etiopia',
+ 'EU' => 'Evropasamveldið',
+ 'FI' => 'Finnland',
+ 'FJ' => 'Fiji',
+ 'FK' => 'Falklandsoyggjarnar',
+ 'FM' => 'Mikronesia',
+ 'FO' => 'Føroyar',
+ 'FR' => 'Frakland',
+ 'GA' => 'Gabon',
+ 'GB' => 'Stóra Bretland',
+ 'GD' => 'Grenada',
+ 'GE' => 'Georgia',
+ 'GF' => 'Fransk Gujana',
+ 'GG' => 'Guernsey',
+ 'GH' => 'Ghana',
+ 'GI' => 'Gibraltar',
+ 'GL' => 'Grønland',
+ 'GM' => 'Gambia',
+ 'GN' => 'Guinea',
+ 'GP' => 'Guadeloupe',
+ 'GQ' => 'Ekvator Guinea',
+ 'GR' => 'Grikkaland',
+ 'GS' => 'Suðurgeorgia',
+ 'GT' => 'Guatemala',
+ 'GU' => 'Guam',
+ 'GW' => 'Guinea Bissau',
+ 'GY' => 'Gujana',
+ 'HK' => 'Hongkong',
+ 'HM' => 'Heard- og McDonald-oyggjarnar',
+ 'HN' => 'Honduras',
+ 'HR' => 'Kroatia',
+ 'HT' => 'Haiti',
+ 'HU' => 'Ungarn',
+ 'IC' => 'Kanaríoyggjarnar',
+ 'ID' => 'Indonesia',
+ 'IE' => 'Írland',
+ 'IL' => 'Ísrael',
+ 'IM' => 'Mann',
+ 'IN' => 'India',
+ 'IO' => 'Bretsku Indiahavsoyggjarnar',
+ 'IQ' => 'Irak',
+ 'IR' => 'Iran',
+ 'IS' => 'Ísland',
+ 'IT' => 'Italia',
+ 'JE' => 'Jersey',
+ 'JM' => 'Jameika',
+ 'JO' => 'Jordania',
+ 'JP' => 'Japan',
+ 'KE' => 'Kenja',
+ 'KG' => 'Kirgisia',
+ 'KH' => 'Kambodja',
+ 'KI' => 'Kiribati',
+ 'KM' => 'Komorooyggjarnar',
+ 'KN' => 'Saint Kitts og Nevis',
+ 'KP' => 'Norður-Korea',
+ 'KR' => 'Suður-Korea',
+ 'KW' => 'Kuvait',
+ 'KY' => 'Caymanoyggjarnar',
+ 'KZ' => 'Kasakstan',
+ 'LA' => 'Laos',
+ 'LB' => 'Libanon',
+ 'LC' => 'Saint Lusia',
+ 'LI' => 'Liktenstein',
+ 'LK' => 'Sri Lanka',
+ 'LR' => 'Liberia',
+ 'LS' => 'Lesoto',
+ 'LT' => 'Litava',
+ 'LU' => 'Luksemborg',
+ 'LV' => 'Lettland',
+ 'LY' => 'Libya',
+ 'MA' => 'Marokko',
+ 'MC' => 'Monako',
+ 'MD' => 'Moldova',
+ 'ME' => 'Montenegro',
+ 'MF' => 'Fransk Saint Martin',
+ 'MG' => 'Madagaskar',
+ 'MH' => 'Marshalloyggjarnar',
+ 'MK' => 'Makedónia',
+ 'ML' => 'Mali',
+ 'MM' => 'Burma',
+ 'MN' => 'Mongolia',
+ 'MO' => 'Makao',
+ 'MP' => 'Norðurmarianoyggjarnar',
+ 'MQ' => 'Martinique',
+ 'MR' => 'Móritania',
+ 'MS' => 'Montserrat',
+ 'MT' => 'Malta',
+ 'MU' => 'Móritius',
+ 'MV' => 'Maldivuoyggjarnar',
+ 'MW' => 'Malavi',
+ 'MX' => 'Meksiko',
+ 'MY' => 'Maleisia',
+ 'MZ' => 'Mosambik',
+ 'NA' => 'Namibia',
+ 'NC' => 'Ný-Kaledonia',
+ 'NE' => 'Niger',
+ 'NF' => 'Norfolkoyggjin',
+ 'NG' => 'Nigeria',
+ 'NI' => 'Nikaragua',
+ 'NL' => 'Niðurlond',
+ 'NO' => 'Noreg',
+ 'NP' => 'Nepal',
+ 'NR' => 'Nauru',
+ 'NU' => 'Niue',
+ 'NZ' => 'Ný Sæland',
+ 'OM' => 'Oman',
+ 'PA' => 'Panama',
+ 'PE' => 'Perú',
+ 'PF' => 'Franska Polynesia',
+ 'PG' => 'Papua Nýguinea',
+ 'PH' => 'Filipsoyggjar',
+ 'PK' => 'Pakistan',
+ 'PL' => 'Pólland',
+ 'PM' => 'Saint Pierre og Miquelon',
+ 'PN' => 'Pitcairn',
+ 'PR' => 'Puerto Rico',
+ 'PS' => 'Palestina',
+ 'PT' => 'Portugal',
+ 'PW' => 'Palau',
+ 'PY' => 'Paraguei',
+ 'QA' => 'Katar',
+ 'RE' => 'Réunion',
+ 'RO' => 'Rumenia',
+ 'RS' => 'Serbia',
+ 'RU' => 'Russland',
+ 'RW' => 'Ruanda',
+ 'SA' => 'Saudi-Arábia',
+ 'SB' => 'Sálomonoyggjarnar',
+ 'SC' => 'Seyskelloyggjarnar',
+ 'SD' => 'Norðursudan',
+ 'SE' => 'Svøríki',
+ 'SG' => 'Singapor',
+ 'SH' => 'Saint Helena',
+ 'SI' => 'Slovenia',
+ 'SJ' => 'Svalbard og Jan Mayen',
+ 'SK' => 'Slovakia',
+ 'SL' => 'Sierra Leone',
+ 'SM' => 'San Marino',
+ 'SN' => 'Senegal',
+ 'SO' => 'Somalia',
+ 'SR' => 'Surinam',
+ 'SS' => 'Suðursudan',
+ 'ST' => 'Sao Tome og Prinsipi',
+ 'SV' => 'El Salvador',
+ 'SX' => 'Niðurlonds Saint Martin',
+ 'SY' => 'Syria',
+ 'SZ' => 'Svasiland',
+ 'TA' => 'Tristan da Cunha',
+ 'TC' => 'Turks- og Caicosoyggjarnar',
+ 'TD' => 'Kjad',
+ 'TG' => 'Togo',
+ 'TH' => 'Teiland',
+ 'TJ' => 'Tadsjikistan',
+ 'TK' => 'Tokelau',
+ 'TL' => 'Eystur-Timor',
+ 'TM' => 'Turkmenistan',
+ 'TN' => 'Tunesia',
+ 'TO' => 'Tonga',
+ 'TR' => 'Turkaland',
+ 'TT' => 'Trinidad og Tobago',
+ 'TV' => 'Tuvalu',
+ 'TW' => 'Teivan',
+ 'TZ' => 'Tansania',
+ 'UA' => 'Ukreina',
+ 'UG' => 'Uganda',
+ 'US' => 'USA',
+ 'UY' => 'Uruguei',
+ 'UZ' => 'Usbekistan',
+ 'VA' => 'Vatikan',
+ 'VC' => 'Saint Vinsent og Grenadinoyggjar',
+ 'VE' => 'Venesuela',
+ 'VG' => 'Stóra Bretlands Jómfrúoyggjarnar',
+ 'VI' => 'Sambandsríki Amerikas Jómfrúoyggjarnar',
+ 'VN' => 'Vietnam',
+ 'VU' => 'Vanuatu',
+ 'WF' => 'Wallis og Futuna',
+ 'WS' => 'Sámoa',
+ 'XK' => 'Kosovo',
+ 'YE' => 'Jemen',
+ 'YT' => 'Mayotte',
+ 'ZA' => 'Suðurafrikalýðveldið',
+ 'ZM' => 'Sambia',
+ 'ZW' => 'Simbabvi',
+);
+
+$timeUnits = array(
+ 'day-one' => '{0} samdøgur',
+ 'day-other' => '{0} samdøgur',
+ 'hour-one' => '{0} tími',
+ 'hour-other' => '{0} tímar',
+ 'millisecond-one' => '{0} millisekund',
+ 'millisecond-other' => '{0} millissekundir',
+ 'minute-one' => '{0} minuttur',
+ 'minute-other' => '{0} minuttir',
+ 'month-one' => '{0} mánadur',
+ 'month-other' => '{0} mánaðir',
+ 'second-one' => '{0} sekund',
+ 'second-other' => '{0} sekundir',
+ 'week-one' => '{0} vika',
+ 'week-other' => '{0} vikur',
+ 'year-one' => '{0} ár',
+ 'year-other' => '{0} ára',
+);
diff --git a/MLEB/cldr/CldrNames/CldrNamesFr.php b/MLEB/cldr/CldrNames/CldrNamesFr.php
new file mode 100644
index 00000000..6f25742d
--- /dev/null
+++ b/MLEB/cldr/CldrNames/CldrNamesFr.php
@@ -0,0 +1,1529 @@
+<?php
+
+$languageNames = array(
+ 'aa' => 'afar',
+ 'ab' => 'abkhaze',
+ 'ace' => 'aceh',
+ 'ach' => 'acoli',
+ 'ada' => 'adangme',
+ 'ady' => 'adyghéen',
+ 'ae' => 'avestique',
+ 'aeb' => 'arabe tunisien',
+ 'af' => 'afrikaans',
+ 'afh' => 'afrihili',
+ 'agq' => 'aghem',
+ 'ain' => 'aïnou',
+ 'ak' => 'akan',
+ 'akk' => 'akkadien',
+ 'akz' => 'alabama',
+ 'ale' => 'aléoute',
+ 'aln' => 'guègue',
+ 'alt' => 'altaï du Sud',
+ 'am' => 'amharique',
+ 'an' => 'aragonais',
+ 'ang' => 'ancien anglais',
+ 'anp' => 'angika',
+ 'ar' => 'arabe',
+ 'ar-001' => 'arabe standard moderne',
+ 'arc' => 'araméen',
+ 'arn' => 'araukan',
+ 'aro' => 'araona',
+ 'arp' => 'arapaho',
+ 'arq' => 'arabe algérien',
+ 'arw' => 'arawak',
+ 'ary' => 'arabe marocain',
+ 'arz' => 'arabe égyptien',
+ 'as' => 'assamais',
+ 'asa' => 'assou',
+ 'ase' => 'langue des signes américaine',
+ 'ast' => 'asturien',
+ 'av' => 'avar',
+ 'avk' => 'kotava',
+ 'awa' => 'awadhi',
+ 'ay' => 'aymara',
+ 'az' => 'azéri',
+ 'azb' => 'azéri méridional',
+ 'ba' => 'bachkir',
+ 'bal' => 'baloutchi',
+ 'ban' => 'balinais',
+ 'bar' => 'bavarois',
+ 'bas' => 'bassa',
+ 'bax' => 'bamoun',
+ 'bbc' => 'batak toba',
+ 'bbj' => 'ghomala',
+ 'be' => 'biélorusse',
+ 'bej' => 'bedja',
+ 'bem' => 'bemba',
+ 'bew' => 'betawi',
+ 'bez' => 'béna',
+ 'bfd' => 'bafut',
+ 'bfq' => 'badaga',
+ 'bg' => 'bulgare',
+ 'bho' => 'bhojpuri',
+ 'bi' => 'bichelamar',
+ 'bik' => 'bikol',
+ 'bin' => 'bini',
+ 'bjn' => 'banjar',
+ 'bkm' => 'kom',
+ 'bla' => 'siksika',
+ 'bm' => 'bambara',
+ 'bn' => 'bengali',
+ 'bo' => 'tibétain',
+ 'bpy' => 'bishnupriya',
+ 'bqi' => 'bakhtiari',
+ 'br' => 'breton',
+ 'bra' => 'braj',
+ 'brh' => 'brahoui',
+ 'brx' => 'bodo',
+ 'bs' => 'bosniaque',
+ 'bss' => 'akoose',
+ 'bua' => 'bouriate',
+ 'bug' => 'bugi',
+ 'bum' => 'boulou',
+ 'byn' => 'blin',
+ 'byv' => 'medumba',
+ 'ca' => 'catalan',
+ 'cad' => 'caddo',
+ 'car' => 'caribe',
+ 'cay' => 'cayuga',
+ 'cch' => 'atsam',
+ 'ce' => 'tchétchène',
+ 'ceb' => 'cebuano',
+ 'cgg' => 'kiga',
+ 'ch' => 'chamorro',
+ 'chb' => 'chibcha',
+ 'chg' => 'tchaghataï',
+ 'chk' => 'chuuk',
+ 'chm' => 'mari',
+ 'chn' => 'jargon chinook',
+ 'cho' => 'choctaw',
+ 'chp' => 'chipewyan',
+ 'chr' => 'cherokee',
+ 'chy' => 'cheyenne',
+ 'ckb' => 'sorani',
+ 'co' => 'corse',
+ 'cop' => 'copte',
+ 'cps' => 'capiznon',
+ 'cr' => 'cree',
+ 'crh' => 'turc de Crimée',
+ 'cs' => 'tchèque',
+ 'csb' => 'kachoube',
+ 'cu' => 'slavon d’église',
+ 'cv' => 'tchouvache',
+ 'cy' => 'gallois',
+ 'da' => 'danois',
+ 'dak' => 'dakota',
+ 'dar' => 'dargwa',
+ 'dav' => 'taita',
+ 'de' => 'allemand',
+ 'de-at' => 'allemand autrichien',
+ 'de-ch' => 'allemand suisse',
+ 'del' => 'delaware',
+ 'den' => 'slavey',
+ 'dgr' => 'dogrib',
+ 'din' => 'dinka',
+ 'dje' => 'zarma',
+ 'doi' => 'dogri',
+ 'dsb' => 'bas-sorabe',
+ 'dtp' => 'dusun central',
+ 'dua' => 'douala',
+ 'dum' => 'moyen néerlandais',
+ 'dv' => 'maldivien',
+ 'dyo' => 'diola-fogny',
+ 'dyu' => 'dioula',
+ 'dz' => 'dzongkha',
+ 'dzg' => 'dazaga',
+ 'ebu' => 'embou',
+ 'ee' => 'éwé',
+ 'efi' => 'efik',
+ 'egl' => 'émilien',
+ 'egy' => 'égyptien ancien',
+ 'eka' => 'ekajuk',
+ 'el' => 'grec',
+ 'elx' => 'élamite',
+ 'en' => 'anglais',
+ 'en-au' => 'anglais australien',
+ 'en-ca' => 'anglais canadien',
+ 'en-gb' => 'anglais britannique',
+ 'en-us' => 'anglais américain',
+ 'enm' => 'moyen anglais',
+ 'eo' => 'espéranto',
+ 'es' => 'espagnol',
+ 'es-419' => 'espagnol latino-américain',
+ 'es-es' => 'espagnol d’Europe',
+ 'es-mx' => 'espagnol mexicain',
+ 'esu' => 'youpik central',
+ 'et' => 'estonien',
+ 'eu' => 'basque',
+ 'ewo' => 'éwondo',
+ 'ext' => 'estrémègne',
+ 'fa' => 'persan',
+ 'fan' => 'fang',
+ 'fat' => 'fanti',
+ 'ff' => 'peul',
+ 'fi' => 'finnois',
+ 'fil' => 'filipino',
+ 'fit' => 'finnois tornédalien',
+ 'fj' => 'fidjien',
+ 'fo' => 'féroïen',
+ 'fon' => 'fon',
+ 'fr' => 'français',
+ 'fr-ca' => 'français canadien',
+ 'fr-ch' => 'français suisse',
+ 'frc' => 'français cadien',
+ 'frm' => 'moyen français',
+ 'fro' => 'ancien français',
+ 'frp' => 'franco-provençal',
+ 'frr' => 'frison du Nord',
+ 'frs' => 'frison oriental',
+ 'fur' => 'frioulan',
+ 'fy' => 'frison occidental',
+ 'ga' => 'irlandais',
+ 'gaa' => 'ga',
+ 'gag' => 'gagaouze',
+ 'gan' => 'gan',
+ 'gay' => 'gayo',
+ 'gba' => 'gbaya',
+ 'gbz' => 'dari zoroastrien',
+ 'gd' => 'gaélique écossais',
+ 'gez' => 'guèze',
+ 'gil' => 'gilbertais',
+ 'gl' => 'galicien',
+ 'glk' => 'gilaki',
+ 'gmh' => 'moyen haut-allemand',
+ 'gn' => 'guarani',
+ 'goh' => 'ancien haut allemand',
+ 'gom' => 'konkani de Goa',
+ 'gon' => 'gondi',
+ 'gor' => 'gorontalo',
+ 'got' => 'gotique',
+ 'grb' => 'grebo',
+ 'grc' => 'grec ancien',
+ 'gsw' => 'alémanique',
+ 'gu' => 'gujarati',
+ 'guc' => 'wayuu',
+ 'gur' => 'gurenne',
+ 'guz' => 'gusii',
+ 'gv' => 'manx',
+ 'gwi' => 'gwichʼin',
+ 'ha' => 'haoussa',
+ 'hai' => 'haida',
+ 'hak' => 'hakka',
+ 'haw' => 'hawaïen',
+ 'he' => 'hébreu',
+ 'hi' => 'hindi',
+ 'hif' => 'hindi fidjien',
+ 'hil' => 'hiligaynon',
+ 'hit' => 'hittite',
+ 'hmn' => 'hmong',
+ 'ho' => 'hiri motu',
+ 'hr' => 'croate',
+ 'hsb' => 'haut-sorabe',
+ 'hsn' => 'xiang',
+ 'ht' => 'haïtien',
+ 'hu' => 'hongrois',
+ 'hup' => 'hupa',
+ 'hy' => 'arménien',
+ 'hz' => 'héréro',
+ 'ia' => 'interlingua',
+ 'iba' => 'iban',
+ 'ibb' => 'ibibio',
+ 'id' => 'indonésien',
+ 'ie' => 'interlingue',
+ 'ig' => 'igbo',
+ 'ii' => 'yi du Sichuan',
+ 'ik' => 'inupiaq',
+ 'ilo' => 'ilokano',
+ 'inh' => 'ingouche',
+ 'io' => 'ido',
+ 'is' => 'islandais',
+ 'it' => 'italien',
+ 'iu' => 'inuktitut',
+ 'izh' => 'ingrien',
+ 'ja' => 'japonais',
+ 'jam' => 'créole anglais jamaïcain',
+ 'jbo' => 'lojban',
+ 'jgo' => 'ngomba',
+ 'jmc' => 'machame',
+ 'jpr' => 'judéo-persan',
+ 'jrb' => 'judéo-arabe',
+ 'jut' => 'jute',
+ 'jv' => 'javanais',
+ 'ka' => 'géorgien',
+ 'kaa' => 'karakalpak',
+ 'kab' => 'kabyle',
+ 'kac' => 'kachin',
+ 'kaj' => 'jju',
+ 'kam' => 'kamba',
+ 'kaw' => 'kawi',
+ 'kbd' => 'kabardin',
+ 'kbl' => 'kanembou',
+ 'kcg' => 'tyap',
+ 'kde' => 'makonde',
+ 'kea' => 'capverdien',
+ 'ken' => 'kenyang',
+ 'kfo' => 'koro',
+ 'kg' => 'kongo',
+ 'kgp' => 'caingangue',
+ 'kha' => 'khasi',
+ 'kho' => 'khotanais',
+ 'khq' => 'koyra chiini',
+ 'khw' => 'khowar',
+ 'ki' => 'kikuyu',
+ 'kiu' => 'kirmanjki',
+ 'kj' => 'kuanyama',
+ 'kk' => 'kazakh',
+ 'kkj' => 'kako',
+ 'kl' => 'groenlandais',
+ 'kln' => 'kalenjin',
+ 'km' => 'khmer',
+ 'kmb' => 'kiMboundou',
+ 'kn' => 'kannada',
+ 'ko' => 'coréen',
+ 'koi' => 'komi-permiak',
+ 'kok' => 'konkani',
+ 'kos' => 'kusaien',
+ 'kpe' => 'kpellé',
+ 'kr' => 'kanouri',
+ 'krc' => 'karatchaï balkar',
+ 'kri' => 'krio',
+ 'krj' => 'kinaray-a',
+ 'krl' => 'carélien',
+ 'kru' => 'kurukh',
+ 'ks' => 'kashmiri',
+ 'ksb' => 'chambala',
+ 'ksf' => 'bafia',
+ 'ksh' => 'francique ripuaire',
+ 'ku' => 'kurde',
+ 'kum' => 'koumyk',
+ 'kut' => 'kutenai',
+ 'kv' => 'komi',
+ 'kw' => 'cornique',
+ 'ky' => 'kirghize',
+ 'la' => 'latin',
+ 'lad' => 'ladino',
+ 'lag' => 'langi',
+ 'lah' => 'lahnda',
+ 'lam' => 'lamba',
+ 'lb' => 'luxembourgeois',
+ 'lez' => 'lezghien',
+ 'lfn' => 'lingua franca nova',
+ 'lg' => 'ganda',
+ 'li' => 'limbourgeois',
+ 'lij' => 'ligure',
+ 'liv' => 'livonien',
+ 'lkt' => 'lakota',
+ 'lmo' => 'lombard',
+ 'ln' => 'lingala',
+ 'lo' => 'lao',
+ 'lol' => 'mongo',
+ 'loz' => 'lozi',
+ 'lt' => 'lituanien',
+ 'ltg' => 'latgalien',
+ 'lu' => 'luba-katanga',
+ 'lua' => 'luba-lulua',
+ 'lui' => 'luiseno',
+ 'lun' => 'lunda',
+ 'luo' => 'luo',
+ 'lus' => 'lushai',
+ 'luy' => 'oluluyia',
+ 'lv' => 'letton',
+ 'lzh' => 'chinois littéraire',
+ 'lzz' => 'laze',
+ 'mad' => 'madurais',
+ 'maf' => 'mafa',
+ 'mag' => 'magahi',
+ 'mai' => 'maithili',
+ 'mak' => 'makassar',
+ 'man' => 'mandingue',
+ 'mas' => 'masai',
+ 'mde' => 'maba',
+ 'mdf' => 'moksa',
+ 'mdr' => 'mandar',
+ 'men' => 'mendé',
+ 'mer' => 'merou',
+ 'mfe' => 'créole mauricien',
+ 'mg' => 'malgache',
+ 'mga' => 'moyen irlandais',
+ 'mgh' => 'makhuwa-meetto',
+ 'mgo' => 'méta’',
+ 'mh' => 'marshall',
+ 'mi' => 'maori',
+ 'mic' => 'micmac',
+ 'min' => 'minangkabau',
+ 'mk' => 'macédonien',
+ 'ml' => 'malayalam',
+ 'mn' => 'mongol',
+ 'mnc' => 'mandchou',
+ 'mni' => 'manipuri',
+ 'moh' => 'mohawk',
+ 'mos' => 'moré',
+ 'mr' => 'marathe',
+ 'mrj' => 'mari occidental',
+ 'ms' => 'malais',
+ 'mt' => 'maltais',
+ 'mua' => 'mundang',
+ 'mul' => 'multilingue',
+ 'mus' => 'creek',
+ 'mwl' => 'mirandais',
+ 'mwr' => 'marwarî',
+ 'mwv' => 'mentawaï',
+ 'my' => 'birman',
+ 'mye' => 'myènè',
+ 'myv' => 'erzya',
+ 'mzn' => 'mazandérani',
+ 'na' => 'nauruan',
+ 'nan' => 'minnan',
+ 'nap' => 'napolitain',
+ 'naq' => 'nama',
+ 'nb' => 'norvégien bokmål',
+ 'nd' => 'ndébélé du Nord',
+ 'nds' => 'bas-allemand',
+ 'ne' => 'népalais',
+ 'new' => 'newari',
+ 'ng' => 'ndonga',
+ 'nia' => 'nias',
+ 'niu' => 'niué',
+ 'njo' => 'ao naga',
+ 'nl' => 'néerlandais',
+ 'nl-be' => 'flamand',
+ 'nmg' => 'kwasio',
+ 'nn' => 'norvégien nynorsk',
+ 'nnh' => 'ngiemboon',
+ 'no' => 'norvégien',
+ 'nog' => 'nogaï',
+ 'non' => 'vieux norrois',
+ 'nov' => 'novial',
+ 'nqo' => 'n’ko',
+ 'nr' => 'ndébélé du Sud',
+ 'nso' => 'sotho du Nord',
+ 'nus' => 'nuer',
+ 'nv' => 'navaho',
+ 'nwc' => 'newarî classique',
+ 'ny' => 'nyanja',
+ 'nym' => 'nyamwezi',
+ 'nyn' => 'nyankolé',
+ 'nyo' => 'nyoro',
+ 'nzi' => 'nzema',
+ 'oc' => 'occitan',
+ 'oj' => 'ojibwa',
+ 'om' => 'oromo',
+ 'or' => 'oriya',
+ 'os' => 'ossète',
+ 'osa' => 'osage',
+ 'ota' => 'turc ottoman',
+ 'pa' => 'pendjabi',
+ 'pag' => 'pangasinan',
+ 'pal' => 'pahlavi',
+ 'pam' => 'pampangan',
+ 'pap' => 'papiamento',
+ 'pau' => 'palau',
+ 'pcd' => 'picard',
+ 'pdc' => 'allemand de Pennsylvanie',
+ 'pdt' => 'bas-prussien',
+ 'peo' => 'persan ancien',
+ 'pfl' => 'allemand palatin',
+ 'phn' => 'phénicien',
+ 'pi' => 'pali',
+ 'pl' => 'polonais',
+ 'pms' => 'piémontais',
+ 'pnt' => 'pontique',
+ 'pon' => 'pohnpei',
+ 'prg' => 'prussien',
+ 'pro' => 'provençal ancien',
+ 'ps' => 'pachto',
+ 'pt' => 'portugais',
+ 'pt-br' => 'portugais brésilien',
+ 'pt-pt' => 'portugais d’Europe',
+ 'qu' => 'quechua',
+ 'quc' => 'k’iche’',
+ 'qug' => 'quichua du Haut-Chimborazo',
+ 'raj' => 'rajasthani',
+ 'rap' => 'rapanui',
+ 'rar' => 'rarotongien',
+ 'rgn' => 'romagnol',
+ 'rif' => 'riffain',
+ 'rm' => 'romanche',
+ 'rn' => 'roundi',
+ 'ro' => 'roumain',
+ 'ro-md' => 'moldave',
+ 'rof' => 'rombo',
+ 'rom' => 'tzigane',
+ 'rtm' => 'rotuman',
+ 'ru' => 'russe',
+ 'rue' => 'ruthène',
+ 'rug' => 'roviana',
+ 'rup' => 'valaque',
+ 'rw' => 'rwanda',
+ 'rwk' => 'rwa',
+ 'sa' => 'sanskrit',
+ 'sad' => 'sandawe',
+ 'sah' => 'iakoute',
+ 'sam' => 'araméen samaritain',
+ 'saq' => 'samburu',
+ 'sas' => 'sasak',
+ 'sat' => 'santal',
+ 'saz' => 'saurashtra',
+ 'sba' => 'ngambay',
+ 'sbp' => 'sangu',
+ 'sc' => 'sarde',
+ 'scn' => 'sicilien',
+ 'sco' => 'écossais',
+ 'sd' => 'sindhi',
+ 'sdc' => 'sarde sassarais',
+ 'se' => 'sami du Nord',
+ 'see' => 'seneca',
+ 'seh' => 'sena',
+ 'sei' => 'séri',
+ 'sel' => 'selkoupe',
+ 'ses' => 'koyraboro senni',
+ 'sg' => 'sangho',
+ 'sga' => 'ancien irlandais',
+ 'sgs' => 'samogitien',
+ 'sh' => 'serbo-croate',
+ 'shi' => 'chleuh',
+ 'shn' => 'shan',
+ 'shu' => 'arabe tchadien',
+ 'si' => 'cinghalais',
+ 'sid' => 'sidamo',
+ 'sk' => 'slovaque',
+ 'sl' => 'slovène',
+ 'sli' => 'bas-silésien',
+ 'sly' => 'selayar',
+ 'sm' => 'samoan',
+ 'sma' => 'sami du Sud',
+ 'smj' => 'sami de Lule',
+ 'smn' => 'sami d’Inari',
+ 'sms' => 'sami skolt',
+ 'sn' => 'shona',
+ 'snk' => 'soninké',
+ 'so' => 'somali',
+ 'sog' => 'sogdien',
+ 'sq' => 'albanais',
+ 'sr' => 'serbe',
+ 'srn' => 'sranan tongo',
+ 'srr' => 'sérère',
+ 'ss' => 'swati',
+ 'ssy' => 'saho',
+ 'st' => 'sesotho',
+ 'stq' => 'frison de Saterland',
+ 'su' => 'soundanais',
+ 'suk' => 'sukuma',
+ 'sus' => 'soussou',
+ 'sux' => 'sumérien',
+ 'sv' => 'suédois',
+ 'sw' => 'swahili',
+ 'swb' => 'comorien',
+ 'swc' => 'swahili du Congo',
+ 'syc' => 'syriaque classique',
+ 'syr' => 'syriaque',
+ 'szl' => 'silésien',
+ 'ta' => 'tamoul',
+ 'tcy' => 'toulou',
+ 'te' => 'télougou',
+ 'tem' => 'temne',
+ 'teo' => 'teso',
+ 'ter' => 'tereno',
+ 'tet' => 'tetum',
+ 'tg' => 'tadjik',
+ 'th' => 'thaï',
+ 'ti' => 'tigrigna',
+ 'tig' => 'tigré',
+ 'tiv' => 'tiv',
+ 'tk' => 'turkmène',
+ 'tkl' => 'tokelau',
+ 'tkr' => 'tsakhur',
+ 'tl' => 'tagalog',
+ 'tlh' => 'klingon',
+ 'tli' => 'tlingit',
+ 'tly' => 'talysh',
+ 'tmh' => 'tamacheq',
+ 'tn' => 'tswana',
+ 'to' => 'tonguien',
+ 'tog' => 'tonga nyasa',
+ 'tpi' => 'tok pisin',
+ 'tr' => 'turc',
+ 'tru' => 'touroyo',
+ 'trv' => 'taroko',
+ 'ts' => 'tsonga',
+ 'tsd' => 'tsakonien',
+ 'tsi' => 'tsimshian',
+ 'tt' => 'tatar',
+ 'ttt' => 'tati caucasien',
+ 'tum' => 'tumbuka',
+ 'tvl' => 'tuvalu',
+ 'tw' => 'twi',
+ 'twq' => 'tasawaq',
+ 'ty' => 'tahitien',
+ 'tyv' => 'touva',
+ 'tzm' => 'tamazight',
+ 'udm' => 'oudmourte',
+ 'ug' => 'ouïghour',
+ 'uga' => 'ougaritique',
+ 'uk' => 'ukrainien',
+ 'umb' => 'umbundu',
+ 'und' => 'langue indéterminée',
+ 'ur' => 'ourdou',
+ 'uz' => 'ouzbek',
+ 'vai' => 'vaï',
+ 've' => 'venda',
+ 'vec' => 'vénitien',
+ 'vep' => 'vepse',
+ 'vi' => 'vietnamien',
+ 'vls' => 'flamand occidental',
+ 'vmf' => 'franconien du Main',
+ 'vo' => 'volapuk',
+ 'vot' => 'vote',
+ 'vro' => 'võro',
+ 'vun' => 'vunjo',
+ 'wa' => 'wallon',
+ 'wae' => 'walser',
+ 'wal' => 'walamo',
+ 'war' => 'waray',
+ 'was' => 'washo',
+ 'wo' => 'wolof',
+ 'wuu' => 'chinois wu',
+ 'xal' => 'kalmouk',
+ 'xh' => 'xhosa',
+ 'xmf' => 'mingrélien',
+ 'xog' => 'soga',
+ 'yao' => 'yao',
+ 'yap' => 'yapois',
+ 'yav' => 'yangben',
+ 'ybb' => 'yemba',
+ 'yi' => 'yiddish',
+ 'yo' => 'yoruba',
+ 'yrl' => 'nheengatou',
+ 'yue' => 'cantonais',
+ 'za' => 'zhuang',
+ 'zap' => 'zapotèque',
+ 'zbl' => 'symboles Bliss',
+ 'zea' => 'zélandais',
+ 'zen' => 'zenaga',
+ 'zgh' => 'amazighe standard marocain',
+ 'zh' => 'chinois',
+ 'zh-hans' => 'chinois simplifié',
+ 'zh-hant' => 'chinois traditionnel',
+ 'zu' => 'zoulou',
+ 'zun' => 'zuni',
+ 'zxx' => 'sans contenu linguistique',
+ 'zza' => 'zazaki',
+);
+
+$currencyNames = array(
+ 'ADP' => 'peseta andorrane',
+ 'AED' => 'dirham des Émirats arabes unis',
+ 'AFA' => 'afghani (1927–2002)',
+ 'AFN' => 'afghani afghan',
+ 'ALK' => 'lek albanais (1947–1961)',
+ 'ALL' => 'lek albanais',
+ 'AMD' => 'dram arménien',
+ 'ANG' => 'florin antillais',
+ 'AOA' => 'kwanza angolais',
+ 'AOK' => 'kwanza angolais (1977–1990)',
+ 'AON' => 'nouveau kwanza angolais (1990–2000)',
+ 'AOR' => 'kwanza angolais réajusté (1995–1999)',
+ 'ARA' => 'austral argentin',
+ 'ARL' => 'peso lourd argentin (1970–1983)',
+ 'ARM' => 'peso argentin (1881–1970)',
+ 'ARP' => 'peso argentin (1983–1985)',
+ 'ARS' => 'peso argentin',
+ 'ATS' => 'schilling autrichien',
+ 'AUD' => 'dollar australien',
+ 'AWG' => 'florin arubais',
+ 'AZM' => 'manat azéri (1993–2006)',
+ 'AZN' => 'manat azéri',
+ 'BAD' => 'dinar bosniaque',
+ 'BAM' => 'mark convertible bosniaque',
+ 'BBD' => 'dollar barbadien',
+ 'BDT' => 'taka bangladeshi',
+ 'BEC' => 'franc belge (convertible)',
+ 'BEF' => 'franc belge',
+ 'BEL' => 'franc belge (financier)',
+ 'BGL' => 'lev bulgare (1962–1999)',
+ 'BGN' => 'lev bulgare',
+ 'BHD' => 'dinar bahreïni',
+ 'BIF' => 'franc burundais',
+ 'BMD' => 'dollar bermudien',
+ 'BND' => 'dollar brunéien',
+ 'BOB' => 'boliviano bolivien',
+ 'BOL' => 'boliviano bolivien (1863–1963)',
+ 'BOP' => 'peso bolivien',
+ 'BOV' => 'mvdol bolivien',
+ 'BRB' => 'nouveau cruzeiro brésilien (1967–1986)',
+ 'BRC' => 'cruzado brésilien (1986–1989)',
+ 'BRE' => 'cruzeiro brésilien (1990–1993)',
+ 'BRL' => 'réal brésilien',
+ 'BRN' => 'nouveau cruzado',
+ 'BRR' => 'cruzeiro',
+ 'BRZ' => 'cruzeiro brésilien (1942–1967)',
+ 'BSD' => 'dollar bahaméen',
+ 'BTN' => 'ngultrum bouthanais',
+ 'BUK' => 'kyat birman',
+ 'BWP' => 'pula botswanais',
+ 'BYB' => 'nouveau rouble biélorusse (1994–1999)',
+ 'BYR' => 'rouble biélorusse',
+ 'BZD' => 'dollar bélizéen',
+ 'CAD' => 'dollar canadien',
+ 'CDF' => 'franc congolais',
+ 'CHE' => 'euro WIR',
+ 'CHF' => 'franc suisse',
+ 'CHW' => 'franc WIR',
+ 'CLE' => 'escudo chilien',
+ 'CLF' => 'unité d’investissement chilienne',
+ 'CLP' => 'peso chilien',
+ 'CNX' => 'dollar de la Banque populaire chinoise',
+ 'CNY' => 'yuan renminbi chinois',
+ 'COP' => 'peso colombien',
+ 'COU' => 'unité de valeur réelle colombienne',
+ 'CRC' => 'colón costaricain',
+ 'CSD' => 'dinar serbo-monténégrin',
+ 'CSK' => 'couronne forte tchécoslovaque',
+ 'CUC' => 'peso cubain convertible',
+ 'CUP' => 'peso cubain',
+ 'CVE' => 'escudo capverdien',
+ 'CYP' => 'livre chypriote',
+ 'CZK' => 'couronne tchèque',
+ 'DDM' => 'mark est-allemand',
+ 'DEM' => 'mark allemand',
+ 'DJF' => 'franc djiboutien',
+ 'DKK' => 'couronne danoise',
+ 'DOP' => 'peso dominicain',
+ 'DZD' => 'dinar algérien',
+ 'ECS' => 'sucre équatorien',
+ 'ECV' => 'unité de valeur constante équatoriale (UVC)',
+ 'EEK' => 'couronne estonienne',
+ 'EGP' => 'livre égyptienne',
+ 'ERN' => 'nafka érythréen',
+ 'ESA' => 'peseta espagnole (compte A)',
+ 'ESB' => 'peseta espagnole (compte convertible)',
+ 'ESP' => 'peseta espagnole',
+ 'ETB' => 'birr éthiopien',
+ 'EUR' => 'euro',
+ 'FIM' => 'mark finlandais',
+ 'FJD' => 'dollar fidjien',
+ 'FKP' => 'livre des Falkland',
+ 'FRF' => 'franc français',
+ 'GBP' => 'livre sterling',
+ 'GEK' => 'coupon de lari géorgien',
+ 'GEL' => 'lari géorgien',
+ 'GHC' => 'cédi',
+ 'GHS' => 'cédi ghanéen',
+ 'GIP' => 'livre de Gibraltar',
+ 'GMD' => 'dalasi gambien',
+ 'GNF' => 'franc guinéen',
+ 'GNS' => 'syli guinéen',
+ 'GQE' => 'ekwélé équatoguinéen',
+ 'GRD' => 'drachme grecque',
+ 'GTQ' => 'quetzal guatémaltèque',
+ 'GWE' => 'escudo de Guinée portugaise',
+ 'GWP' => 'peso bissau-guinéen',
+ 'GYD' => 'dollar du Guyana',
+ 'HKD' => 'dollar de Hong Kong',
+ 'HNL' => 'lempira hondurien',
+ 'HRD' => 'dinar croate',
+ 'HRK' => 'kuna croate',
+ 'HTG' => 'gourde haïtienne',
+ 'HUF' => 'forint hongrois',
+ 'IDR' => 'roupie indonésienne',
+ 'IEP' => 'livre irlandaise',
+ 'ILP' => 'livre israélienne',
+ 'ILR' => 'shekel israélien (1980–1985)',
+ 'ILS' => 'nouveau shekel israélien',
+ 'INR' => 'roupie indienne',
+ 'IQD' => 'dinar irakien',
+ 'IRR' => 'rial iranien',
+ 'ISK' => 'couronne islandaise',
+ 'ITL' => 'lire italienne',
+ 'JMD' => 'dollar jamaïcain',
+ 'JOD' => 'dinar jordanien',
+ 'JPY' => 'yen japonais',
+ 'KES' => 'shilling kényan',
+ 'KGS' => 'som kirghize',
+ 'KHR' => 'riel cambodgien',
+ 'KMF' => 'franc comorien',
+ 'KPW' => 'won nord-coréen',
+ 'KRH' => 'hwan sud-coréen (1953–1962)',
+ 'KRO' => 'won sud-coréen (1945–1953)',
+ 'KRW' => 'won sud-coréen',
+ 'KWD' => 'dinar koweïtien',
+ 'KYD' => 'dollar des îles Caïmans',
+ 'KZT' => 'tenge kazakh',
+ 'LAK' => 'kip loatien',
+ 'LBP' => 'livre libanaise',
+ 'LKR' => 'roupie srilankaise',
+ 'LRD' => 'dollar libérien',
+ 'LSL' => 'loti lesothan',
+ 'LTL' => 'litas lituanien',
+ 'LTT' => 'talonas lituanien',
+ 'LUC' => 'franc convertible luxembourgeois',
+ 'LUF' => 'franc luxembourgeois',
+ 'LUL' => 'franc financier luxembourgeois',
+ 'LVL' => 'lats letton',
+ 'LVR' => 'rouble letton',
+ 'LYD' => 'dinar libyen',
+ 'MAD' => 'dirham marocain',
+ 'MAF' => 'franc marocain',
+ 'MDL' => 'leu moldave',
+ 'MGA' => 'ariary malgache',
+ 'MGF' => 'franc malgache',
+ 'MKD' => 'denar macédonien',
+ 'MLF' => 'franc malien',
+ 'MMK' => 'kyat myanmarais',
+ 'MNT' => 'tugrik mongol',
+ 'MOP' => 'pataca macanaise',
+ 'MRO' => 'ouguiya mauritanien',
+ 'MTL' => 'lire maltaise',
+ 'MTP' => 'livre maltaise',
+ 'MUR' => 'roupie mauricienne',
+ 'MVP' => 'roupie maldivienne',
+ 'MVR' => 'rufiyaa maldivien',
+ 'MWK' => 'kwacha malawite',
+ 'MXN' => 'peso mexicain',
+ 'MXP' => 'peso d’argent mexicain (1861–1992)',
+ 'MXV' => 'unité de conversion mexicaine (UDI)',
+ 'MYR' => 'ringgit malais',
+ 'MZE' => 'escudo mozambicain',
+ 'MZM' => 'métical',
+ 'MZN' => 'metical mozambicain',
+ 'NAD' => 'dollar namibien',
+ 'NGN' => 'naira nigérian',
+ 'NIC' => 'cordoba',
+ 'NIO' => 'córdoba oro nicaraguayen',
+ 'NLG' => 'florin néerlandais',
+ 'NOK' => 'couronne norvégienne',
+ 'NPR' => 'roupie népalaise',
+ 'NZD' => 'dollar néo-zélandais',
+ 'OMR' => 'rial omanais',
+ 'PAB' => 'balboa panaméen',
+ 'PEI' => 'inti péruvien',
+ 'PEN' => 'nouveau sol péruvien',
+ 'PES' => 'sol péruvien',
+ 'PGK' => 'kina papouan-néo-guinéen',
+ 'PHP' => 'peso philippin',
+ 'PKR' => 'roupie pakistanaise',
+ 'PLN' => 'zloty polonais',
+ 'PLZ' => 'zloty (1950–1995)',
+ 'PTE' => 'escudo portugais',
+ 'PYG' => 'guaraní paraguayen',
+ 'QAR' => 'rial qatari',
+ 'RHD' => 'dollar rhodésien',
+ 'ROL' => 'ancien leu roumain',
+ 'RON' => 'leu roumain',
+ 'RSD' => 'dinar serbe',
+ 'RUB' => 'rouble russe',
+ 'RUR' => 'rouble russe (1991–1998)',
+ 'RWF' => 'franc rwandais',
+ 'SAR' => 'rial saoudien',
+ 'SBD' => 'dollar des îles Salomon',
+ 'SCR' => 'roupie des Seychelles',
+ 'SDD' => 'dinar soudanais',
+ 'SDG' => 'livre soudanaise',
+ 'SDP' => 'livre soudanaise (1956–2007)',
+ 'SEK' => 'couronne suédoise',
+ 'SGD' => 'dollar de Singapour',
+ 'SHP' => 'livre de Sainte-Hélène',
+ 'SIT' => 'tolar slovène',
+ 'SKK' => 'couronne slovaque',
+ 'SLL' => 'leone sierra-léonais',
+ 'SOS' => 'shilling somalien',
+ 'SRD' => 'dollar surinamais',
+ 'SRG' => 'florin surinamais',
+ 'SSP' => 'livre sud-soudanaise',
+ 'STD' => 'dobra santoméen',
+ 'SUR' => 'rouble soviétique',
+ 'SVC' => 'colón salvadorien',
+ 'SYP' => 'livre syrienne',
+ 'SZL' => 'lilangeni swazi',
+ 'THB' => 'baht thaïlandais',
+ 'TJR' => 'rouble tadjik',
+ 'TJS' => 'somoni tadjik',
+ 'TMM' => 'manat turkmène',
+ 'TMT' => 'nouveau manat turkmène',
+ 'TND' => 'dinar tunisien',
+ 'TOP' => 'pa’anga tongan',
+ 'TPE' => 'escudo timorais',
+ 'TRL' => 'livre turque (1844–2005)',
+ 'TRY' => 'livre turque',
+ 'TTD' => 'dollar trinidadien',
+ 'TWD' => 'nouveau dollar taïwanais',
+ 'TZS' => 'shilling tanzanien',
+ 'UAH' => 'hryvnia ukrainienne',
+ 'UAK' => 'karbovanetz',
+ 'UGS' => 'shilling ougandais (1966–1987)',
+ 'UGX' => 'shilling ougandais',
+ 'USD' => 'dollar des États-Unis',
+ 'USN' => 'dollar des Etats-Unis (jour suivant)',
+ 'USS' => 'dollar des Etats-Unis (jour même)',
+ 'UYI' => 'peso uruguayen (unités indexées)',
+ 'UYP' => 'peso uruguayen (1975–1993)',
+ 'UYU' => 'peso uruguayen',
+ 'UZS' => 'sum ouzbek',
+ 'VEB' => 'bolivar vénézuélien (1871–2008)',
+ 'VEF' => 'bolivar vénézuélien',
+ 'VND' => 'dông vietnamien',
+ 'VNN' => 'dông vietnamien (1978–1985)',
+ 'VUV' => 'vatu vanuatuan',
+ 'WST' => 'tala samoan',
+ 'XAF' => 'franc CFA (BEAC)',
+ 'XAG' => 'argent',
+ 'XAU' => 'or',
+ 'XBA' => 'unité européenne composée',
+ 'XBB' => 'unité monétaire européenne',
+ 'XBC' => 'unité de compte européenne (XBC)',
+ 'XBD' => 'unité de compte européenne (XBD)',
+ 'XCD' => 'dollar des Caraïbes orientales',
+ 'XDR' => 'droit de tirage spécial',
+ 'XEU' => 'unité de compte européenne (ECU)',
+ 'XFO' => 'franc or',
+ 'XFU' => 'franc UIC',
+ 'XOF' => 'franc CFA (BCEAO)',
+ 'XPD' => 'palladium',
+ 'XPF' => 'franc CFP',
+ 'XPT' => 'platine',
+ 'XRE' => 'type de fonds RINET',
+ 'XSU' => 'sucre',
+ 'XTS' => '(devise de test)',
+ 'XUA' => 'unité de compte ADB',
+ 'XXX' => 'devise inconnue ou non valide',
+ 'YDD' => 'dinar du Yémen',
+ 'YER' => 'rial yéménite',
+ 'YUD' => 'nouveau dinar yougoslave',
+ 'YUM' => 'dinar yougoslave Noviy',
+ 'YUN' => 'dinar yougoslave convertible',
+ 'ZAL' => 'rand sud-africain (financier)',
+ 'ZAR' => 'rand sud-africain',
+ 'ZMK' => 'kwacha zambien (1968–2012)',
+ 'ZMW' => 'kwacha zambien',
+ 'ZRN' => 'nouveau zaïre zaïrien',
+ 'ZRZ' => 'zaïre zaïrois',
+ 'ZWD' => 'dollar zimbabwéen',
+ 'ZWL' => 'dollar zimbabwéen (2009)',
+ 'ZWR' => 'dollar zimbabwéen (2008)',
+);
+
+$currencySymbols = array(
+ 'AED' => 'AED',
+ 'AFA' => 'AFA',
+ 'AFN' => 'AFN',
+ 'ALL' => 'ALL',
+ 'AMD' => 'AMD',
+ 'ANG' => 'ANG',
+ 'AOA' => 'AOA',
+ 'AOK' => 'AOK',
+ 'AON' => 'AON',
+ 'AOR' => 'AOR',
+ 'ARA' => 'ARA',
+ 'ARL' => 'ARL',
+ 'ARM' => 'ARM',
+ 'ARP' => 'ARP',
+ 'ARS' => '$AR',
+ 'AUD' => '$AU',
+ 'AWG' => 'AWG',
+ 'AZM' => 'AZM',
+ 'AZN' => 'AZN',
+ 'BAM' => 'BAM',
+ 'BBD' => 'BBD',
+ 'BDT' => 'BDT',
+ 'BEF' => 'FB',
+ 'BGN' => 'BGN',
+ 'BHD' => 'BHD',
+ 'BIF' => 'BIF',
+ 'BMD' => '$BM',
+ 'BND' => '$BN',
+ 'BOB' => 'BOB',
+ 'BOL' => 'BOL',
+ 'BOP' => 'BOP',
+ 'BOV' => 'BOV',
+ 'BRB' => 'BRB',
+ 'BRC' => 'BRC',
+ 'BRE' => 'BRE',
+ 'BRL' => 'R$',
+ 'BRN' => 'BRN',
+ 'BRR' => 'BRR',
+ 'BRZ' => 'BRZ',
+ 'BSD' => '$BS',
+ 'BTN' => 'BTN',
+ 'BUK' => 'BUK',
+ 'BWP' => 'BWP',
+ 'BYR' => 'BYR',
+ 'BZD' => '$BZ',
+ 'CAD' => '$CA',
+ 'CDF' => 'CDF',
+ 'CHF' => 'CHF',
+ 'CLE' => 'CLE',
+ 'CLF' => 'CLF',
+ 'CLP' => '$CL',
+ 'CNX' => 'CNX',
+ 'CNY' => 'CNY',
+ 'COP' => '$CO',
+ 'COU' => 'COU',
+ 'CRC' => 'CRC',
+ 'CUC' => 'CUC',
+ 'CUP' => 'CUP',
+ 'CVE' => 'CVE',
+ 'CYP' => '£CY',
+ 'CZK' => 'CZK',
+ 'DJF' => 'DJF',
+ 'DKK' => 'DKK',
+ 'DOP' => 'DOP',
+ 'DZD' => 'DZD',
+ 'ECS' => 'ECS',
+ 'ECV' => 'ECV',
+ 'EGP' => 'EGP',
+ 'ERN' => 'ERN',
+ 'ETB' => 'ETB',
+ 'EUR' => '€',
+ 'FJD' => '$FJ',
+ 'FKP' => '£FK',
+ 'FRF' => 'F',
+ 'GBP' => '£GB',
+ 'GEK' => 'GEK',
+ 'GEL' => 'GEL',
+ 'GHS' => 'GHS',
+ 'GIP' => '£GI',
+ 'GMD' => 'GMD',
+ 'GNF' => 'GNF',
+ 'GQE' => 'GQE',
+ 'GTQ' => 'GTQ',
+ 'GYD' => 'GYD',
+ 'HKD' => 'HKD',
+ 'HNL' => 'HNL',
+ 'HRK' => 'HRK',
+ 'HTG' => 'HTG',
+ 'HUF' => 'HUF',
+ 'IDR' => 'IDR',
+ 'IEP' => '£IE',
+ 'ILP' => '£IL',
+ 'ILR' => 'ILR',
+ 'ILS' => '₪',
+ 'INR' => '₹',
+ 'IQD' => 'IQD',
+ 'IRR' => 'IRR',
+ 'ISK' => 'ISK',
+ 'ITL' => '₤IT',
+ 'JMD' => 'JMD',
+ 'JOD' => 'JOD',
+ 'JPY' => 'JPY',
+ 'KES' => 'KES',
+ 'KGS' => 'KGS',
+ 'KHR' => 'KHR',
+ 'KMF' => 'KMF',
+ 'KPW' => 'KPW',
+ 'KRH' => 'KRH',
+ 'KRO' => 'KRO',
+ 'KRW' => '₩',
+ 'KWD' => 'KWD',
+ 'KYD' => 'KYD',
+ 'KZT' => 'KZT',
+ 'LAK' => 'LAK',
+ 'LBP' => '£LB',
+ 'LKR' => 'LKR',
+ 'LRD' => 'LRD',
+ 'LSL' => 'lLS',
+ 'LTL' => 'LTL',
+ 'LVL' => 'LVL',
+ 'LYD' => 'LYD',
+ 'MAD' => 'MAD',
+ 'MAF' => 'fMA',
+ 'MDL' => 'MDL',
+ 'MGA' => 'MGA',
+ 'MGF' => 'Fmg',
+ 'MKD' => 'MKD',
+ 'MMK' => 'MMK',
+ 'MNT' => 'MNT',
+ 'MOP' => 'MOP',
+ 'MRO' => 'MRO',
+ 'MTP' => '£MT',
+ 'MUR' => 'MUR',
+ 'MVP' => 'MVP',
+ 'MVR' => 'MVR',
+ 'MWK' => 'MWK',
+ 'MXN' => '$MX',
+ 'MXP' => 'MXP',
+ 'MXV' => 'MXV',
+ 'MYR' => 'MYR',
+ 'MZE' => 'MZE',
+ 'MZM' => 'MZM',
+ 'MZN' => 'MZN',
+ 'NAD' => '$NA',
+ 'NGN' => 'NGN',
+ 'NIC' => 'NIC',
+ 'NIO' => 'NIO',
+ 'NOK' => 'NOK',
+ 'NPR' => 'NPR',
+ 'NZD' => '$NZ',
+ 'OMR' => 'OMR',
+ 'PAB' => 'PAB',
+ 'PEI' => 'PEI',
+ 'PEN' => 'PEN',
+ 'PES' => 'PES',
+ 'PGK' => 'PGK',
+ 'PHP' => 'PHP',
+ 'PKR' => 'PKR',
+ 'PLN' => 'PLN',
+ 'PYG' => 'PYG',
+ 'QAR' => 'QAR',
+ 'RHD' => '$RH',
+ 'RON' => 'RON',
+ 'RSD' => 'RSD',
+ 'RUB' => 'RUB',
+ 'RWF' => 'RWF',
+ 'SAR' => 'SAR',
+ 'SBD' => '$SB',
+ 'SCR' => 'SCR',
+ 'SDD' => 'SDD',
+ 'SDG' => 'SDG',
+ 'SDP' => 'SDP',
+ 'SEK' => 'SEK',
+ 'SGD' => '$SG',
+ 'SHP' => 'SHP',
+ 'SLL' => 'SLL',
+ 'SOS' => 'SOS',
+ 'SRD' => '$SR',
+ 'SRG' => 'SRG',
+ 'SSP' => 'SSP',
+ 'STD' => 'STD',
+ 'SVC' => 'SVC',
+ 'SYP' => 'SYP',
+ 'SZL' => 'SZL',
+ 'THB' => '฿',
+ 'TJS' => 'TJS',
+ 'TMT' => 'TMT',
+ 'TND' => 'TND',
+ 'TOP' => 'TOP',
+ 'TPE' => 'TPE',
+ 'TRL' => 'TRL',
+ 'TRY' => 'TRY',
+ 'TTD' => '$TT',
+ 'TWD' => 'TWD',
+ 'TZS' => 'TZS',
+ 'UAH' => 'UAH',
+ 'UGS' => 'UGS',
+ 'UGX' => 'UGX',
+ 'USD' => '$US',
+ 'USN' => 'USN',
+ 'USS' => 'USS',
+ 'UYI' => 'UYI',
+ 'UYP' => 'UYP',
+ 'UYU' => '$UY',
+ 'UZS' => 'UZS',
+ 'VEB' => 'VEB',
+ 'VEF' => 'VEF',
+ 'VND' => '₫',
+ 'VNN' => 'VNN',
+ 'VUV' => 'VUV',
+ 'WST' => 'WS$',
+ 'XAF' => 'FCFA',
+ 'XAG' => 'XAG',
+ 'XAU' => 'XAU',
+ 'XBA' => 'XBA',
+ 'XBB' => 'XBB',
+ 'XBC' => 'XBC',
+ 'XBD' => 'XBD',
+ 'XCD' => 'XCD',
+ 'XDR' => 'DTS',
+ 'XFO' => 'XFO',
+ 'XFU' => 'XFU',
+ 'XOF' => 'CFA',
+ 'XPD' => 'XPD',
+ 'XPF' => 'FCFP',
+ 'XPT' => 'XPT',
+ 'XRE' => 'XRE',
+ 'XSU' => 'XSU',
+ 'XTS' => 'XTS',
+ 'XUA' => 'XUA',
+ 'XXX' => 'XXX',
+ 'YDD' => 'YDD',
+ 'YER' => 'YER',
+ 'ZAL' => 'ZAL',
+ 'ZAR' => 'ZAR',
+ 'ZMK' => 'ZMK',
+ 'ZMW' => 'ZMW',
+ 'ZRN' => 'ZRN',
+ 'ZRZ' => 'ZRZ',
+ 'ZWD' => 'ZWD',
+ 'ZWL' => 'ZWL',
+ 'ZWR' => 'ZWR',
+);
+
+$countryNames = array(
+ 'AC' => 'Île de l’Ascension',
+ 'AD' => 'Andorre',
+ 'AE' => 'Émirats arabes unis',
+ 'AF' => 'Afghanistan',
+ 'AG' => 'Antigua-et-Barbuda',
+ 'AI' => 'Anguilla',
+ 'AL' => 'Albanie',
+ 'AM' => 'Arménie',
+ 'AN' => 'Antilles néerlandaises',
+ 'AO' => 'Angola',
+ 'AQ' => 'Antarctique',
+ 'AR' => 'Argentine',
+ 'AS' => 'Samoa américaines',
+ 'AT' => 'Autriche',
+ 'AU' => 'Australie',
+ 'AW' => 'Aruba',
+ 'AX' => 'Îles Åland',
+ 'AZ' => 'Azerbaïdjan',
+ 'BA' => 'Bosnie-Herzégovine',
+ 'BB' => 'Barbade',
+ 'BD' => 'Bangladesh',
+ 'BE' => 'Belgique',
+ 'BF' => 'Burkina Faso',
+ 'BG' => 'Bulgarie',
+ 'BH' => 'Bahreïn',
+ 'BI' => 'Burundi',
+ 'BJ' => 'Bénin',
+ 'BL' => 'Saint-Barthélemy',
+ 'BM' => 'Bermudes',
+ 'BN' => 'Brunéi Darussalam',
+ 'BO' => 'Bolivie',
+ 'BQ' => 'Pays-Bas caribéens',
+ 'BR' => 'Brésil',
+ 'BS' => 'Bahamas',
+ 'BT' => 'Bhoutan',
+ 'BV' => 'Île Bouvet',
+ 'BW' => 'Botswana',
+ 'BY' => 'Biélorussie',
+ 'BZ' => 'Belize',
+ 'CA' => 'Canada',
+ 'CC' => 'Îles Cocos',
+ 'CD' => 'Congo-Kinshasa',
+ 'CF' => 'République centrafricaine',
+ 'CG' => 'Congo-Brazzaville',
+ 'CH' => 'Suisse',
+ 'CI' => 'Côte d’Ivoire',
+ 'CK' => 'Îles Cook',
+ 'CL' => 'Chili',
+ 'CM' => 'Cameroun',
+ 'CN' => 'Chine',
+ 'CO' => 'Colombie',
+ 'CP' => 'Île Clipperton',
+ 'CR' => 'Costa Rica',
+ 'CU' => 'Cuba',
+ 'CV' => 'Cap-Vert',
+ 'CW' => 'Curaçao',
+ 'CX' => 'Île Christmas',
+ 'CY' => 'Chypre',
+ 'CZ' => 'République tchèque',
+ 'DE' => 'Allemagne',
+ 'DG' => 'Diego Garcia',
+ 'DJ' => 'Djibouti',
+ 'DK' => 'Danemark',
+ 'DM' => 'Dominique',
+ 'DO' => 'République dominicaine',
+ 'DZ' => 'Algérie',
+ 'EA' => 'Ceuta et Melilla',
+ 'EC' => 'Équateur',
+ 'EE' => 'Estonie',
+ 'EG' => 'Égypte',
+ 'EH' => 'Sahara occidental',
+ 'ER' => 'Érythrée',
+ 'ES' => 'Espagne',
+ 'ET' => 'Éthiopie',
+ 'EU' => 'Union européenne',
+ 'FI' => 'Finlande',
+ 'FJ' => 'Fidji',
+ 'FK' => 'Îles Malouines',
+ 'FM' => 'États fédérés de Micronésie',
+ 'FO' => 'Îles Féroé',
+ 'FR' => 'France',
+ 'GA' => 'Gabon',
+ 'GB' => 'R.-U.',
+ 'GD' => 'Grenade',
+ 'GE' => 'Géorgie',
+ 'GF' => 'Guyane française',
+ 'GG' => 'Guernesey',
+ 'GH' => 'Ghana',
+ 'GI' => 'Gibraltar',
+ 'GL' => 'Groenland',
+ 'GM' => 'Gambie',
+ 'GN' => 'Guinée',
+ 'GP' => 'Guadeloupe',
+ 'GQ' => 'Guinée équatoriale',
+ 'GR' => 'Grèce',
+ 'GS' => 'Îles Géorgie du Sud et Sandwich du Sud',
+ 'GT' => 'Guatemala',
+ 'GU' => 'Guam',
+ 'GW' => 'Guinée-Bissau',
+ 'GY' => 'Guyana',
+ 'HK' => 'Hong Kong',
+ 'HM' => 'Îles Heard et McDonald',
+ 'HN' => 'Honduras',
+ 'HR' => 'Croatie',
+ 'HT' => 'Haïti',
+ 'HU' => 'Hongrie',
+ 'IC' => 'Îles Canaries',
+ 'ID' => 'Indonésie',
+ 'IE' => 'Irlande',
+ 'IL' => 'Israël',
+ 'IM' => 'Île de Man',
+ 'IN' => 'Inde',
+ 'IO' => 'Territoire britannique de l’océan Indien',
+ 'IQ' => 'Irak',
+ 'IR' => 'Iran',
+ 'IS' => 'Islande',
+ 'IT' => 'Italie',
+ 'JE' => 'Jersey',
+ 'JM' => 'Jamaïque',
+ 'JO' => 'Jordanie',
+ 'JP' => 'Japon',
+ 'KE' => 'Kenya',
+ 'KG' => 'Kirghizistan',
+ 'KH' => 'Cambodge',
+ 'KI' => 'Kiribati',
+ 'KM' => 'Comores',
+ 'KN' => 'Saint-Christophe-et-Niévès',
+ 'KP' => 'Corée du Nord',
+ 'KR' => 'Corée du Sud',
+ 'KW' => 'Koweït',
+ 'KY' => 'Îles Caïmans',
+ 'KZ' => 'Kazakhstan',
+ 'LA' => 'Laos',
+ 'LB' => 'Liban',
+ 'LC' => 'Sainte-Lucie',
+ 'LI' => 'Liechtenstein',
+ 'LK' => 'Sri Lanka',
+ 'LR' => 'Libéria',
+ 'LS' => 'Lesotho',
+ 'LT' => 'Lituanie',
+ 'LU' => 'Luxembourg',
+ 'LV' => 'Lettonie',
+ 'LY' => 'Libye',
+ 'MA' => 'Maroc',
+ 'MC' => 'Monaco',
+ 'MD' => 'Moldavie',
+ 'ME' => 'Monténégro',
+ 'MF' => 'Saint-Martin (partie française)',
+ 'MG' => 'Madagascar',
+ 'MH' => 'Îles Marshall',
+ 'MK' => 'Macédoine',
+ 'ML' => 'Mali',
+ 'MM' => 'Myanmar',
+ 'MN' => 'Mongolie',
+ 'MO' => 'Macao',
+ 'MP' => 'Îles Mariannes du Nord',
+ 'MQ' => 'Martinique',
+ 'MR' => 'Mauritanie',
+ 'MS' => 'Montserrat',
+ 'MT' => 'Malte',
+ 'MU' => 'Maurice',
+ 'MV' => 'Maldives',
+ 'MW' => 'Malawi',
+ 'MX' => 'Mexique',
+ 'MY' => 'Malaisie',
+ 'MZ' => 'Mozambique',
+ 'NA' => 'Namibie',
+ 'NC' => 'Nouvelle-Calédonie',
+ 'NE' => 'Niger',
+ 'NF' => 'Île Norfolk',
+ 'NG' => 'Nigéria',
+ 'NI' => 'Nicaragua',
+ 'NL' => 'Pays-Bas',
+ 'NO' => 'Norvège',
+ 'NP' => 'Népal',
+ 'NR' => 'Nauru',
+ 'NU' => 'Niue',
+ 'NZ' => 'Nouvelle-Zélande',
+ 'OM' => 'Oman',
+ 'PA' => 'Panama',
+ 'PE' => 'Pérou',
+ 'PF' => 'Polynésie française',
+ 'PG' => 'Papouasie-Nouvelle-Guinée',
+ 'PH' => 'Philippines',
+ 'PK' => 'Pakistan',
+ 'PL' => 'Pologne',
+ 'PM' => 'Saint-Pierre-et-Miquelon',
+ 'PN' => 'Pitcairn',
+ 'PR' => 'Porto Rico',
+ 'PS' => 'Palestine',
+ 'PT' => 'Portugal',
+ 'PW' => 'Palaos',
+ 'PY' => 'Paraguay',
+ 'QA' => 'Qatar',
+ 'QO' => 'régions éloignées de l’Océanie',
+ 'RE' => 'La Réunion',
+ 'RO' => 'Roumanie',
+ 'RS' => 'Serbie',
+ 'RU' => 'Russie',
+ 'RW' => 'Rwanda',
+ 'SA' => 'Arabie saoudite',
+ 'SB' => 'Îles Salomon',
+ 'SC' => 'Seychelles',
+ 'SD' => 'Soudan',
+ 'SE' => 'Suède',
+ 'SG' => 'Singapour',
+ 'SH' => 'Sainte-Hélène',
+ 'SI' => 'Slovénie',
+ 'SJ' => 'Svalbard et Jan Mayen',
+ 'SK' => 'Slovaquie',
+ 'SL' => 'Sierra Leone',
+ 'SM' => 'Saint-Marin',
+ 'SN' => 'Sénégal',
+ 'SO' => 'Somalie',
+ 'SR' => 'Suriname',
+ 'SS' => 'Soudan du Sud',
+ 'ST' => 'Sao Tomé-et-Principe',
+ 'SV' => 'El Salvador',
+ 'SX' => 'Saint-Martin (partie néerlandaise)',
+ 'SY' => 'Syrie',
+ 'SZ' => 'Swaziland',
+ 'TA' => 'Tristan da Cunha',
+ 'TC' => 'Îles Turques-et-Caïques',
+ 'TD' => 'Tchad',
+ 'TF' => 'Terres australes françaises',
+ 'TG' => 'Togo',
+ 'TH' => 'Thaïlande',
+ 'TJ' => 'Tadjikistan',
+ 'TK' => 'Tokelau',
+ 'TL' => 'Timor oriental',
+ 'TM' => 'Turkménistan',
+ 'TN' => 'Tunisie',
+ 'TO' => 'Tonga',
+ 'TR' => 'Turquie',
+ 'TT' => 'Trinité-et-Tobago',
+ 'TV' => 'Tuvalu',
+ 'TW' => 'Taïwan',
+ 'TZ' => 'Tanzanie',
+ 'UA' => 'Ukraine',
+ 'UG' => 'Ouganda',
+ 'UM' => 'Îles mineures éloignées des États-Unis',
+ 'US' => 'É.-U.',
+ 'UY' => 'Uruguay',
+ 'UZ' => 'Ouzbékistan',
+ 'VA' => 'État de la Cité du Vatican',
+ 'VC' => 'Saint-Vincent-et-les-Grenadines',
+ 'VE' => 'Venezuela',
+ 'VG' => 'Îles Vierges britanniques',
+ 'VI' => 'Îles Vierges des États-Unis',
+ 'VN' => 'Vietnam',
+ 'VU' => 'Vanuatu',
+ 'WF' => 'Wallis-et-Futuna',
+ 'WS' => 'Samoa',
+ 'XK' => 'Kosovo',
+ 'YE' => 'Yémen',
+ 'YT' => 'Mayotte',
+ 'ZA' => 'Afrique du Sud',
+ 'ZM' => 'Zambie',
+ 'ZW' => 'Zimbabwe',
+);
+
+$timeUnits = array(
+ 'day-future-one' => 'dans {0} jour',
+ 'day-future-other' => 'dans {0} jours',
+ 'day-narrow-future-one' => '+{0} j',
+ 'day-narrow-future-other' => '+{0} j',
+ 'day-narrow-past-one' => '-{0} j',
+ 'day-narrow-past-other' => '-{0} j',
+ 'day-one' => '{0} jour',
+ 'day-other' => '{0} jours',
+ 'day-past-one' => 'il y a {0} jour',
+ 'day-past-other' => 'il y a {0} jours',
+ 'day-short-future-one' => 'dans {0} j',
+ 'day-short-future-other' => 'dans {0} j',
+ 'day-short-past-one' => 'il y a {0} j',
+ 'day-short-past-other' => 'il y a {0} j',
+ 'hour-future-one' => 'dans {0} heure',
+ 'hour-future-other' => 'dans {0} heures',
+ 'hour-narrow-future-one' => '+{0} h',
+ 'hour-narrow-future-other' => '+{0} h',
+ 'hour-narrow-past-one' => '-{0} h',
+ 'hour-narrow-past-other' => '-{0} h',
+ 'hour-one' => '{0} heure',
+ 'hour-other' => '{0} heures',
+ 'hour-past-one' => 'il y a {0} heure',
+ 'hour-past-other' => 'il y a {0} heures',
+ 'hour-short-future-one' => 'dans {0} h',
+ 'hour-short-future-other' => 'dans {0} h',
+ 'hour-short-past-one' => 'il y a {0} h',
+ 'hour-short-past-other' => 'il y a {0} h',
+ 'microsecond-one' => '{0} microseconde',
+ 'microsecond-other' => '{0} microsecondes',
+ 'millisecond-one' => '{0} milliseconde',
+ 'millisecond-other' => '{0} millisecondes',
+ 'minute-future-one' => 'dans {0} minute',
+ 'minute-future-other' => 'dans {0} minutes',
+ 'minute-narrow-future-one' => '+{0} min',
+ 'minute-narrow-future-other' => '+{0} min',
+ 'minute-narrow-past-one' => '-{0} min',
+ 'minute-narrow-past-other' => '-{0} min',
+ 'minute-one' => '{0} minute',
+ 'minute-other' => '{0} minutes',
+ 'minute-past-one' => 'il y a {0} minute',
+ 'minute-past-other' => 'il y a {0} minutes',
+ 'minute-short-future-one' => 'dans {0} min',
+ 'minute-short-future-other' => 'dans {0} min',
+ 'minute-short-past-one' => 'il y a {0} min',
+ 'minute-short-past-other' => 'il y a {0} min',
+ 'month-future-one' => 'dans {0} mois',
+ 'month-future-other' => 'dans {0} mois',
+ 'month-narrow-future-one' => '+{0} m.',
+ 'month-narrow-future-other' => '+{0} m.',
+ 'month-narrow-past-one' => '-{0} m.',
+ 'month-narrow-past-other' => '-{0} m.',
+ 'month-one' => '{0} mois',
+ 'month-other' => '{0} mois',
+ 'month-past-one' => 'il y a {0} mois',
+ 'month-past-other' => 'il y a {0} mois',
+ 'month-short-future-one' => 'dans {0} m.',
+ 'month-short-future-other' => 'dans {0} m.',
+ 'month-short-past-one' => 'il y a {0} m.',
+ 'month-short-past-other' => 'il y a {0} m.',
+ 'nanosecond-one' => '{0} nanoseconde',
+ 'nanosecond-other' => '{0} nanosecondes',
+ 'quarter-future-one' => 'dans {0} trimestre',
+ 'quarter-future-other' => 'dans {0} trimestres',
+ 'quarter-narrow-future-one' => '+{0} trim.',
+ 'quarter-narrow-future-other' => '+{0} trim.',
+ 'quarter-narrow-past-one' => '-{0} trim.',
+ 'quarter-narrow-past-other' => '-{0} trim.',
+ 'quarter-past-one' => 'il y a {0} trimestre',
+ 'quarter-past-other' => 'il y a {0} trimestres',
+ 'quarter-short-future-one' => 'dans {0} trim.',
+ 'quarter-short-future-other' => 'dans {0} trim.',
+ 'quarter-short-past-one' => 'il y a {0} trim.',
+ 'quarter-short-past-other' => 'il y a {0} trim.',
+ 'second-future-one' => 'dans {0} seconde',
+ 'second-future-other' => 'dans {0} secondes',
+ 'second-narrow-future-one' => '+{0} s',
+ 'second-narrow-future-other' => '+{0} s',
+ 'second-narrow-past-one' => '-{0} s',
+ 'second-narrow-past-other' => '-{0} s',
+ 'second-one' => '{0} seconde',
+ 'second-other' => '{0} secondes',
+ 'second-past-one' => 'il y a {0} seconde',
+ 'second-past-other' => 'il y a {0} secondes',
+ 'second-short-future-one' => 'dans {0} s',
+ 'second-short-future-other' => 'dans {0} s',
+ 'second-short-past-one' => 'il y a {0} s',
+ 'second-short-past-other' => 'il y a {0} s',
+ 'week-future-one' => 'dans {0} semaine',
+ 'week-future-other' => 'dans {0} semaines',
+ 'week-narrow-future-one' => '+{0} sem.',
+ 'week-narrow-future-other' => '+{0} sem.',
+ 'week-narrow-past-one' => '-{0} sem.',
+ 'week-narrow-past-other' => '-{0} sem.',
+ 'week-one' => '{0} semaine',
+ 'week-other' => '{0} semaines',
+ 'week-past-one' => 'il y a {0} semaine',
+ 'week-past-other' => 'il y a {0} semaines',
+ 'week-short-future-one' => 'dans {0} sem.',
+ 'week-short-future-other' => 'dans {0} sem.',
+ 'week-short-past-one' => 'il y a {0} sem.',
+ 'week-short-past-other' => 'il y a {0} sem.',
+ 'year-future-one' => 'dans {0} an',
+ 'year-future-other' => 'dans {0} ans',
+ 'year-narrow-future-one' => '+{0} a',
+ 'year-narrow-future-other' => '+{0} a',
+ 'year-narrow-past-one' => '-{0} a',
+ 'year-narrow-past-other' => '-{0} a',
+ 'year-one' => '{0} an',
+ 'year-other' => '{0} ans',
+ 'year-past-one' => 'il y a {0} an',
+ 'year-past-other' => 'il y a {0} ans',
+ 'year-short-future-one' => 'dans {0} a',
+ 'year-short-future-other' => 'dans {0} a',
+ 'year-short-past-one' => 'il y a {0} a',
+ 'year-short-past-other' => 'il y a {0} a',
+);
diff --git a/MLEB/cldr/CldrNames/CldrNamesFur.php b/MLEB/cldr/CldrNames/CldrNamesFur.php
new file mode 100644
index 00000000..9c3af01b
--- /dev/null
+++ b/MLEB/cldr/CldrNames/CldrNamesFur.php
@@ -0,0 +1,558 @@
+<?php
+
+$languageNames = array(
+ 'aa' => 'afar',
+ 'ab' => 'abcazian',
+ 'ae' => 'avestan',
+ 'af' => 'afrikaans',
+ 'am' => 'amaric',
+ 'an' => 'aragonês',
+ 'ang' => 'vieri inglês',
+ 'ar' => 'arap',
+ 'arc' => 'aramaic',
+ 'as' => 'assamês',
+ 'ast' => 'asturian',
+ 'av' => 'avar',
+ 'ay' => 'aymarà',
+ 'az' => 'azerbaijani',
+ 'be' => 'bielorùs',
+ 'bg' => 'bulgar',
+ 'bn' => 'bengalês',
+ 'bo' => 'tibetan',
+ 'br' => 'breton',
+ 'bs' => 'bosniac',
+ 'ca' => 'catalan',
+ 'ce' => 'cecen',
+ 'ch' => 'chamorro',
+ 'co' => 'cors',
+ 'cop' => 'coptic',
+ 'cr' => 'cree',
+ 'cs' => 'cec',
+ 'cu' => 'sclâf de glesie',
+ 'cy' => 'galês',
+ 'da' => 'danês',
+ 'de' => 'todesc',
+ 'de-at' => 'todesc de Austrie',
+ 'de-ch' => 'alt todesc de Svuizare',
+ 'den' => 'sclâf',
+ 'egy' => 'vieri egjizian',
+ 'el' => 'grêc',
+ 'en' => 'inglês',
+ 'en-au' => 'inglês australian',
+ 'en-ca' => 'inglês canadês',
+ 'en-gb' => 'inglês britanic',
+ 'en-us' => 'ingles merecan',
+ 'eo' => 'esperanto',
+ 'es' => 'spagnûl',
+ 'es-419' => 'spagnûl de Americhe Latine',
+ 'es-es' => 'spagnûl iberic',
+ 'et' => 'eston',
+ 'eu' => 'basc',
+ 'fa' => 'persian',
+ 'ff' => 'fulah',
+ 'fi' => 'finlandês',
+ 'fil' => 'filipin',
+ 'fj' => 'fizian',
+ 'fo' => 'faroês',
+ 'fr' => 'francês',
+ 'fr-ca' => 'francês dal Canade',
+ 'fr-ch' => 'francês de Svuizare',
+ 'fro' => 'vieri francês',
+ 'fur' => 'furlan',
+ 'fy' => 'frisian',
+ 'ga' => 'gaelic irlandês',
+ 'gd' => 'gaelic scozês',
+ 'gl' => 'galizian',
+ 'gn' => 'guaranì',
+ 'got' => 'gotic',
+ 'grc' => 'vieri grêc',
+ 'gu' => 'gujarati',
+ 'gv' => 'manx',
+ 'he' => 'ebraic',
+ 'hi' => 'hindi',
+ 'hr' => 'cravuat',
+ 'ht' => 'haitian',
+ 'hu' => 'ongjarês',
+ 'hy' => 'armen',
+ 'id' => 'indonesian',
+ 'ig' => 'igbo',
+ 'ik' => 'inupiaq',
+ 'io' => 'ido',
+ 'is' => 'islandês',
+ 'it' => 'talian',
+ 'iu' => 'inuktitut',
+ 'ja' => 'gjaponês',
+ 'ka' => 'gjeorgjian',
+ 'kk' => 'kazac',
+ 'kl' => 'kalaallisut',
+ 'km' => 'khmer',
+ 'kn' => 'kannada',
+ 'ko' => 'corean',
+ 'ku' => 'curd',
+ 'kw' => 'cornualiês',
+ 'la' => 'latin',
+ 'lad' => 'ladin',
+ 'lb' => 'lussemburghês',
+ 'li' => 'limburghês',
+ 'ln' => 'lingala',
+ 'lo' => 'lao',
+ 'lt' => 'lituan',
+ 'lv' => 'leton',
+ 'mg' => 'malagasy',
+ 'mi' => 'maori',
+ 'mk' => 'macedon',
+ 'ml' => 'malayalam',
+ 'mn' => 'mongul',
+ 'mr' => 'marathi',
+ 'ms' => 'malês',
+ 'mt' => 'maltês',
+ 'mul' => 'lenghis multiplis',
+ 'mwl' => 'mirandês',
+ 'nap' => 'napoletan',
+ 'nb' => 'norvegjês bokmål',
+ 'nd' => 'ndebele setentrionâl',
+ 'nds' => 'bas todesc',
+ 'ne' => 'nepalês',
+ 'nl' => 'olandês',
+ 'nl-be' => 'flamant',
+ 'nn' => 'norvegjês nynorsk',
+ 'no' => 'norvegjês',
+ 'non' => 'vieri norvegjês',
+ 'nso' => 'sotho setentrionâl',
+ 'nv' => 'navajo',
+ 'oc' => 'ocitan',
+ 'or' => 'oriya',
+ 'os' => 'osetic',
+ 'ota' => 'turc otoman',
+ 'pa' => 'punjabi',
+ 'pap' => 'papiamento',
+ 'peo' => 'vieri persian',
+ 'pl' => 'polac',
+ 'pro' => 'vieri provenzâl',
+ 'ps' => 'pashto',
+ 'pt' => 'portughês',
+ 'pt-br' => 'portughês brasilian',
+ 'pt-pt' => 'portughês iberic',
+ 'qu' => 'quechua',
+ 'rm' => 'rumanç',
+ 'ro' => 'romen',
+ 'ro-md' => 'moldâf',
+ 'ru' => 'rus',
+ 'sa' => 'sanscrit',
+ 'sc' => 'sardegnûl',
+ 'scn' => 'sicilian',
+ 'sco' => 'scozês',
+ 'sd' => 'sindhi',
+ 'se' => 'sami setentrionâl',
+ 'sg' => 'sango',
+ 'sga' => 'vieri irlandês',
+ 'si' => 'sinalês',
+ 'sk' => 'slovac',
+ 'sl' => 'sloven',
+ 'sm' => 'samoan',
+ 'so' => 'somal',
+ 'sq' => 'albanês',
+ 'sr' => 'serp',
+ 'ss' => 'swati',
+ 'st' => 'sotho meridionâl',
+ 'su' => 'sundanês',
+ 'sux' => 'sumeric',
+ 'sv' => 'svedês',
+ 'sw' => 'swahili',
+ 'ta' => 'tamil',
+ 'te' => 'telegu',
+ 'tet' => 'tetum',
+ 'tg' => 'tagic',
+ 'th' => 'thai',
+ 'tk' => 'turcmen',
+ 'tl' => 'tagalog',
+ 'tr' => 'turc',
+ 'tt' => 'tartar',
+ 'ty' => 'tahitian',
+ 'ug' => 'uigur',
+ 'uk' => 'ucrain',
+ 'und' => 'indeterminade',
+ 'ur' => 'urdu',
+ 'uz' => 'uzbec',
+ 've' => 'venda',
+ 'vi' => 'vietnamite',
+ 'wa' => 'valon',
+ 'wo' => 'wolof',
+ 'xh' => 'xhosa',
+ 'yi' => 'yiddish',
+ 'yo' => 'yoruba',
+ 'zh' => 'cinês',
+ 'zh-hans' => 'cinês semplificât',
+ 'zh-hant' => 'cinês tradizionâl',
+ 'zu' => 'zulu',
+);
+
+$currencyNames = array(
+ 'AMD' => 'Dram armen',
+ 'ARS' => 'Peso argjentin',
+ 'ATS' => 'Selin austriac',
+ 'AUD' => 'dolar australian',
+ 'BEF' => 'Franc de Belgjiche',
+ 'BIF' => 'Franc burundês',
+ 'BND' => 'Dolar dal Brunei',
+ 'BRL' => 'real brasilian',
+ 'BYR' => 'Rubli bielorùs',
+ 'CAD' => 'dolar canadês',
+ 'CHF' => 'franc svuizar',
+ 'CNY' => 'yuan cinês',
+ 'CSD' => 'Vieri dinar serp',
+ 'CUP' => 'Peso cuban',
+ 'CZK' => 'Corone de Republiche Ceche',
+ 'DEM' => 'Marc todesc',
+ 'DKK' => 'corone danese',
+ 'DZD' => 'Dinar algerin',
+ 'EUR' => 'euro',
+ 'FRF' => 'Franc francês',
+ 'GBP' => 'sterline britaniche',
+ 'HKD' => 'dolar di Hong Kong',
+ 'HRD' => 'Dinar cravuat',
+ 'HRK' => 'Kuna cravuate',
+ 'IDR' => 'rupiah indonesiane',
+ 'INR' => 'rupie indiane',
+ 'IRR' => 'Rial iranian',
+ 'ITL' => 'Lire taliane',
+ 'JPY' => 'yen gjaponês',
+ 'KRW' => 'won de Coree dal Sud',
+ 'LVL' => 'Lats leton',
+ 'MXN' => 'peso messican',
+ 'NAD' => 'Dolar namibian',
+ 'NIO' => 'Córdoba oro nicaraguan',
+ 'NOK' => 'corone norvegjese',
+ 'NZD' => 'Dollar neozelandês',
+ 'PKR' => 'Rupie pachistane',
+ 'PLN' => 'zloty polac',
+ 'RSD' => 'Dinar serp',
+ 'RUB' => 'rubli rus',
+ 'SAR' => 'riyal de Arabie Saudite',
+ 'SEK' => 'corone svedese',
+ 'SIT' => 'Talar sloven',
+ 'SKK' => 'Corone slovache',
+ 'THB' => 'baht tailandês',
+ 'TRL' => 'Viere Lire turche',
+ 'TRY' => 'lire turche',
+ 'TWD' => 'gnûf dolar taiwanês',
+ 'USD' => 'dolar american',
+ 'USN' => 'Dolar american (prossime zornade)',
+ 'USS' => 'Dolar american (stesse zornade)',
+ 'XAG' => 'Arint',
+ 'XAU' => 'Aur',
+ 'XBA' => 'Unitât composite europeane',
+ 'XBB' => 'Unitât monetarie europeane',
+ 'XBC' => 'Unitât di acont europeane (XBC)',
+ 'XBD' => 'Unitât di acont europeane (XBD)',
+ 'XDR' => 'Dirits speciâi di incas',
+ 'XFO' => 'Franc aur francês',
+ 'XFU' => 'Franc UIC francês',
+ 'XPD' => 'Paladi',
+ 'XPT' => 'Platin',
+ 'XRE' => 'fonts RINET',
+ 'XTS' => 'codiç di verifiche de monede',
+ 'XXX' => 'Monede no valide o no cognossude',
+ 'ZAR' => 'rand sudafrican',
+);
+
+$countryNames = array(
+ 'AD' => 'Andorra',
+ 'AE' => 'Emirâts araps unîts',
+ 'AF' => 'Afghanistan',
+ 'AG' => 'Antigua e Barbuda',
+ 'AI' => 'Anguilla',
+ 'AL' => 'Albanie',
+ 'AM' => 'Armenie',
+ 'AN' => 'Antilis olandesis',
+ 'AO' => 'Angola',
+ 'AQ' => 'Antartic',
+ 'AR' => 'Argjentine',
+ 'AS' => 'Samoa merecanis',
+ 'AT' => 'Austrie',
+ 'AU' => 'Australie',
+ 'AW' => 'Aruba',
+ 'AX' => 'Isulis Aland',
+ 'AZ' => 'Azerbaigian',
+ 'BA' => 'Bosnie e Ercegovine',
+ 'BB' => 'Barbados',
+ 'BD' => 'Bangladesh',
+ 'BE' => 'Belgjiche',
+ 'BF' => 'Burkina Faso',
+ 'BG' => 'Bulgarie',
+ 'BH' => 'Bahrain',
+ 'BI' => 'Burundi',
+ 'BJ' => 'Benin',
+ 'BL' => 'Sant Barthélemy',
+ 'BM' => 'Bermuda',
+ 'BN' => 'Brunei',
+ 'BO' => 'Bolivie',
+ 'BR' => 'Brasîl',
+ 'BS' => 'Bahamas',
+ 'BT' => 'Bhutan',
+ 'BV' => 'Isule Bouvet',
+ 'BW' => 'Botswana',
+ 'BY' => 'Bielorussie',
+ 'BZ' => 'Belize',
+ 'CA' => 'Canade',
+ 'CC' => 'Isulis Cocos',
+ 'CD' => 'Republiche Democratiche dal Congo',
+ 'CF' => 'Republiche centri africane',
+ 'CG' => 'Congo - Brazzaville',
+ 'CH' => 'Svuizare',
+ 'CI' => 'Cueste di Avoli',
+ 'CK' => 'Isulis Cook',
+ 'CL' => 'Cile',
+ 'CM' => 'Camerun',
+ 'CN' => 'Cine',
+ 'CO' => 'Colombie',
+ 'CP' => 'Isule Clipperton',
+ 'CR' => 'Costa Rica',
+ 'CU' => 'Cuba',
+ 'CV' => 'Cjâf vert',
+ 'CX' => 'Isule Christmas',
+ 'CY' => 'Cipri',
+ 'CZ' => 'Republiche ceche',
+ 'DE' => 'Gjermanie',
+ 'DG' => 'Diego Garcia',
+ 'DJ' => 'Gibuti',
+ 'DK' => 'Danimarcje',
+ 'DM' => 'Dominiche',
+ 'DO' => 'Republiche dominicane',
+ 'DZ' => 'Alzerie',
+ 'EA' => 'Ceuta e Melilla',
+ 'EC' => 'Ecuador',
+ 'EE' => 'Estonie',
+ 'EG' => 'Egjit',
+ 'EH' => 'Sahara ocidentâl',
+ 'ER' => 'Eritree',
+ 'ES' => 'Spagne',
+ 'ET' => 'Etiopie',
+ 'EU' => 'Union europeane',
+ 'FI' => 'Finlandie',
+ 'FJ' => 'Fizi',
+ 'FK' => 'Isulis Falkland',
+ 'FM' => 'Micronesie',
+ 'FO' => 'Isulis Faroe',
+ 'FR' => 'France',
+ 'GA' => 'Gabon',
+ 'GB' => 'Ream unît',
+ 'GD' => 'Grenada',
+ 'GE' => 'Gjeorgjie',
+ 'GF' => 'Guiana francês',
+ 'GG' => 'Guernsey',
+ 'GH' => 'Ghana',
+ 'GI' => 'Gjibraltar',
+ 'GL' => 'Groenlande',
+ 'GM' => 'Gambia',
+ 'GN' => 'Guinee',
+ 'GP' => 'Guadalupe',
+ 'GQ' => 'Guinee ecuatoriâl',
+ 'GR' => 'Grecie',
+ 'GS' => 'Georgia dal Sud e Isulis Sandwich dal Sud',
+ 'GT' => 'Guatemala',
+ 'GU' => 'Guam',
+ 'GW' => 'Guinea-Bissau',
+ 'GY' => 'Guyana',
+ 'HK' => 'Hong Kong',
+ 'HM' => 'Isule Heard e Isulis McDonald',
+ 'HN' => 'Honduras',
+ 'HR' => 'Cravuazie',
+ 'HT' => 'Haiti',
+ 'HU' => 'Ongjarie',
+ 'IC' => 'Isulis Canariis',
+ 'ID' => 'Indonesie',
+ 'IE' => 'Irlande',
+ 'IL' => 'Israêl',
+ 'IM' => 'Isule di Man',
+ 'IN' => 'India',
+ 'IO' => 'Teritori britanic dal Ocean Indian',
+ 'IQ' => 'Iraq',
+ 'IR' => 'Iran',
+ 'IS' => 'Islande',
+ 'IT' => 'Italie',
+ 'JE' => 'Jersey',
+ 'JM' => 'Gjamaiche',
+ 'JO' => 'Jordanie',
+ 'JP' => 'Gjapon',
+ 'KE' => 'Kenya',
+ 'KG' => 'Kirghizstan',
+ 'KH' => 'Camboze',
+ 'KI' => 'Kiribati',
+ 'KM' => 'Comoris',
+ 'KN' => 'San Kitts e Nevis',
+ 'KP' => 'Coree dal nord',
+ 'KR' => 'Coree dal sud',
+ 'KW' => 'Kuwait',
+ 'KY' => 'Isulis Cayman',
+ 'KZ' => 'Kazachistan',
+ 'LA' => 'Laos',
+ 'LB' => 'Liban',
+ 'LC' => 'Sante Lusie',
+ 'LI' => 'Liechtenstein',
+ 'LK' => 'Sri Lanka',
+ 'LR' => 'Liberie',
+ 'LS' => 'Lesotho',
+ 'LT' => 'Lituanie',
+ 'LU' => 'Lussemburc',
+ 'LV' => 'Letonie',
+ 'LY' => 'Libie',
+ 'MA' => 'Maroc',
+ 'MC' => 'Monaco',
+ 'MD' => 'Moldavie',
+ 'ME' => 'Montenegro',
+ 'MF' => 'Sant Martin',
+ 'MG' => 'Madagascar',
+ 'MH' => 'Isulis Marshall',
+ 'MK' => 'Macedonie',
+ 'ML' => 'Mali',
+ 'MM' => 'Birmanie',
+ 'MN' => 'Mongolie',
+ 'MO' => 'Macao',
+ 'MP' => 'Isulis Mariana dal Nord',
+ 'MQ' => 'Martiniche',
+ 'MR' => 'Mauritanie',
+ 'MS' => 'Montserrat',
+ 'MT' => 'Malta',
+ 'MU' => 'Maurizi',
+ 'MV' => 'Maldivis',
+ 'MW' => 'Malawi',
+ 'MX' => 'Messic',
+ 'MY' => 'Malaysia',
+ 'MZ' => 'Mozambic',
+ 'NA' => 'Namibie',
+ 'NC' => 'Gnove Caledonie',
+ 'NE' => 'Niger',
+ 'NF' => 'Isole Norfolk',
+ 'NG' => 'Nigerie',
+ 'NI' => 'Nicaragua',
+ 'NL' => 'Paîs bas',
+ 'NO' => 'Norvegje',
+ 'NP' => 'Nepal',
+ 'NR' => 'Nauru',
+ 'NU' => 'Niue',
+ 'NZ' => 'Gnove Zelande',
+ 'OM' => 'Oman',
+ 'PA' => 'Panamà',
+ 'PE' => 'Perù',
+ 'PF' => 'Polinesie francês',
+ 'PG' => 'Papue Gnove Guinee',
+ 'PH' => 'Filipinis',
+ 'PK' => 'Pakistan',
+ 'PL' => 'Polonie',
+ 'PM' => 'San Pierre e Miquelon',
+ 'PN' => 'Pitcairn',
+ 'PR' => 'Porto Rico',
+ 'PS' => 'Teritoris palestinês',
+ 'PT' => 'Portugal',
+ 'PW' => 'Palau',
+ 'PY' => 'Paraguay',
+ 'QA' => 'Qatar',
+ 'QO' => 'Oceanie periferiche',
+ 'RE' => 'Reunion',
+ 'RO' => 'Romanie',
+ 'RS' => 'Serbie',
+ 'RU' => 'Russie',
+ 'RW' => 'Ruande',
+ 'SA' => 'Arabie Saudide',
+ 'SB' => 'Isulis Salomon',
+ 'SC' => 'Seychelles',
+ 'SD' => 'Sudan',
+ 'SE' => 'Svezie',
+ 'SG' => 'Singapore',
+ 'SH' => 'Sante Eline',
+ 'SI' => 'Slovenie',
+ 'SJ' => 'Svalbard e Jan Mayen',
+ 'SK' => 'Slovachie',
+ 'SL' => 'Sierra Leone',
+ 'SM' => 'San Marin',
+ 'SN' => 'Senegal',
+ 'SO' => 'Somalie',
+ 'SR' => 'Suriname',
+ 'ST' => 'Sao Tomè e Principe',
+ 'SV' => 'El Salvador',
+ 'SY' => 'Sirie',
+ 'SZ' => 'Swaziland',
+ 'TA' => 'Tristan da Cunha',
+ 'TC' => 'Isulis Turks e Caicos',
+ 'TD' => 'Çad',
+ 'TF' => 'Teritoris meridionâi francês',
+ 'TG' => 'Togo',
+ 'TH' => 'Tailandie',
+ 'TJ' => 'Tazikistan',
+ 'TK' => 'Tokelau',
+ 'TL' => 'Timor orientâl',
+ 'TM' => 'Turkmenistan',
+ 'TN' => 'Tunisie',
+ 'TO' => 'Tonga',
+ 'TR' => 'Turchie',
+ 'TT' => 'Trinidad e Tobago',
+ 'TV' => 'Tuvalu',
+ 'TW' => 'Taiwan',
+ 'TZ' => 'Tanzanie',
+ 'UA' => 'Ucraine',
+ 'UG' => 'Uganda',
+ 'UM' => 'Isulis periferichis minôrs dai Stâts Unîts',
+ 'US' => 'Stâts Unîts',
+ 'UY' => 'Uruguay',
+ 'UZ' => 'Uzbechistan',
+ 'VA' => 'Vatican',
+ 'VC' => 'San Vincent e lis Grenadinis',
+ 'VE' => 'Venezuela',
+ 'VG' => 'Isulis vergjinis britanichis',
+ 'VI' => 'Isulis vergjinis americanis',
+ 'VN' => 'Vietnam',
+ 'VU' => 'Vanuatu',
+ 'WF' => 'Wallis e Futuna',
+ 'WS' => 'Samoa',
+ 'YE' => 'Yemen',
+ 'YT' => 'Mayotte',
+ 'ZA' => 'Sud Afriche',
+ 'ZM' => 'Zambia',
+ 'ZW' => 'Zimbabwe',
+);
+
+$timeUnits = array(
+ 'day-future-one' => 'ca di {0} zornade',
+ 'day-future-other' => 'ca di {0} zornadis',
+ 'day-one' => '{0} zornade',
+ 'day-other' => '{0} zornadis',
+ 'day-past-one' => '{0} zornade indaûr',
+ 'day-past-other' => '{0} zornadis indaûr',
+ 'hour-future-one' => 'ca di {0} ore',
+ 'hour-future-other' => 'ca di {0} oris',
+ 'hour-one' => '{0} ore',
+ 'hour-other' => '{0} oris',
+ 'hour-past-one' => '{0} ore indaûr',
+ 'hour-past-other' => '{0} oris indaûr',
+ 'minute-future-one' => 'ca di {0} minût',
+ 'minute-future-other' => 'ca di {0} minûts',
+ 'minute-one' => '{0} minût',
+ 'minute-other' => '{0} minûts',
+ 'minute-past-one' => '{0} minût indaûr',
+ 'minute-past-other' => '{0} minûts indaûr',
+ 'month-future-one' => 'ca di {0} mês',
+ 'month-future-other' => 'ca di {0} mês',
+ 'month-one' => '{0} mês',
+ 'month-other' => '{0} mês',
+ 'month-past-one' => '{0} mês indaûr',
+ 'month-past-other' => '{0} mês indaûr',
+ 'second-future-one' => 'ca di {0} secont',
+ 'second-future-other' => 'ca di {0} seconts',
+ 'second-one' => '{0} secont',
+ 'second-other' => '{0} seconts',
+ 'second-past-one' => '{0} secont indaûr',
+ 'second-past-other' => '{0} seconts indaûr',
+ 'week-future-one' => 'ca di {0} setemane',
+ 'week-future-other' => 'ca di {0} setemanis',
+ 'week-one' => '{0} setemane',
+ 'week-other' => '{0} setemanis',
+ 'week-past-one' => '{0} setemane indaûr',
+ 'week-past-other' => '{0} setemanis indaûr',
+ 'year-future-one' => 'ca di {0} an',
+ 'year-future-other' => 'ca di {0} agns',
+ 'year-one' => '{0} an',
+ 'year-other' => '{0} agns',
+ 'year-past-one' => '{0} an indaûr',
+ 'year-past-other' => '{0} agns indaûr',
+);
diff --git a/MLEB/cldr/CldrNames/CldrNamesFy.php b/MLEB/cldr/CldrNames/CldrNamesFy.php
new file mode 100644
index 00000000..98fe4e7a
--- /dev/null
+++ b/MLEB/cldr/CldrNames/CldrNamesFy.php
@@ -0,0 +1,1145 @@
+<?php
+
+$languageNames = array(
+ 'aa' => 'Afar',
+ 'ab' => 'Abchazysk',
+ 'ace' => 'Atjeesk',
+ 'ach' => 'Akoli',
+ 'ada' => 'Adangme',
+ 'ady' => 'Adyghe',
+ 'ae' => 'Avestysk',
+ 'af' => 'Afrikaansk',
+ 'afh' => 'Afrihili',
+ 'agq' => 'Aghem',
+ 'ain' => 'Ainu',
+ 'ak' => 'Akan',
+ 'akk' => 'Akkadysk',
+ 'ale' => 'Aleut',
+ 'alt' => 'Sûd-Altaïsk',
+ 'am' => 'Amhaarsk',
+ 'an' => 'Aragoneesk',
+ 'ang' => 'âldingelsk',
+ 'anp' => 'Angika',
+ 'ar' => 'Arabysk',
+ 'ar-001' => 'Modern standert Arabysk',
+ 'arc' => 'Arameesk',
+ 'arn' => 'Araukaansk',
+ 'arp' => 'Arapaho',
+ 'arw' => 'Arawak',
+ 'as' => 'Assameesk',
+ 'asa' => 'Asu',
+ 'ast' => 'Asturysk',
+ 'av' => 'Avarysk',
+ 'awa' => 'Awadhi',
+ 'ay' => 'Aymara',
+ 'az' => 'Azerbeidzjaansk',
+ 'ba' => 'Basjkiersk',
+ 'bal' => 'Baloetsjysk',
+ 'ban' => 'Balineesk',
+ 'bas' => 'Basa',
+ 'bax' => 'Bamoun',
+ 'bbj' => 'Ghomala’',
+ 'be' => 'Wyt-Russysk',
+ 'bej' => 'Beja',
+ 'bem' => 'Bemba',
+ 'bez' => 'Bena',
+ 'bfd' => 'Bafut',
+ 'bg' => 'Bulgaarsk',
+ 'bho' => 'Bhojpuri',
+ 'bi' => 'Bislama',
+ 'bik' => 'Bikol',
+ 'bin' => 'Bini',
+ 'bkm' => 'Kom',
+ 'bla' => 'Siksika',
+ 'bm' => 'Bambara',
+ 'bn' => 'Bengaalsk',
+ 'bo' => 'Tibetaansk',
+ 'br' => 'Bretonsk',
+ 'bra' => 'Braj',
+ 'brx' => 'Bodo',
+ 'bs' => 'Bosnysk',
+ 'bss' => 'Akoose',
+ 'bua' => 'Buriat',
+ 'bug' => 'Bugineesk',
+ 'bum' => 'Bulu',
+ 'byn' => 'Blin',
+ 'byv' => 'Medumba',
+ 'ca' => 'Katalaansk',
+ 'cad' => 'Kaddo',
+ 'car' => 'Karibysk',
+ 'cay' => 'Cayuga',
+ 'cch' => 'Atsam',
+ 'ce' => 'Tsjetsjeensk',
+ 'ceb' => 'Cebuano',
+ 'cgg' => 'Chiga',
+ 'ch' => 'Chamorro',
+ 'chb' => 'Chibcha',
+ 'chg' => 'Chagatai',
+ 'chk' => 'Chuukeesk',
+ 'chm' => 'Mari',
+ 'chn' => 'Chinook-jargon',
+ 'cho' => 'Choctaw',
+ 'chp' => 'Chipewyan',
+ 'chr' => 'Cherokee',
+ 'chy' => 'Cheyenne',
+ 'ckb' => 'Soranî',
+ 'co' => 'Korsikaansk',
+ 'cop' => 'Koptysk',
+ 'cr' => 'Cree',
+ 'crh' => 'Krim-Tataarsk',
+ 'cs' => 'Tsjechysk',
+ 'csb' => 'Kasjoebysk',
+ 'cu' => 'Kerkslavysk',
+ 'cv' => 'Tsjoevasjysk',
+ 'cy' => 'Welsk',
+ 'da' => 'Deensk',
+ 'dak' => 'Dakota',
+ 'dar' => 'Dargwa',
+ 'dav' => 'Taita',
+ 'de' => 'Dútsk',
+ 'de-at' => 'Eastenryks Dútsk',
+ 'de-ch' => 'Switsersk Heechdútsk',
+ 'del' => 'Delaware',
+ 'den' => 'Slave',
+ 'dgr' => 'Dogrib',
+ 'din' => 'Dinka',
+ 'dje' => 'Zarma',
+ 'doi' => 'Dogri',
+ 'dsb' => 'Nedersorbysk',
+ 'dua' => 'Duala',
+ 'dum' => 'Middelnederlânsk',
+ 'dv' => 'Divehi',
+ 'dyo' => 'Jola-Fonyi',
+ 'dyu' => 'Dyula',
+ 'dz' => 'Dzongkha',
+ 'dzg' => 'Dazaga',
+ 'ebu' => 'Embu',
+ 'ee' => 'Ewe',
+ 'efi' => 'Efik',
+ 'egy' => 'Aldegyptysk',
+ 'eka' => 'Ekajuk',
+ 'el' => 'Gryks',
+ 'elx' => 'Elamitysk',
+ 'en' => 'Ingelsk',
+ 'en-au' => 'Australysk Ingelsk',
+ 'en-ca' => 'Kanadeesk Ingelsk',
+ 'en-gb' => 'Britsk Ingelsk',
+ 'en-us' => 'Amerikaansk Ingelsk',
+ 'enm' => 'Middelingelsk',
+ 'eo' => 'Esperanto',
+ 'es' => 'Spaansk',
+ 'es-419' => 'Latynsk-Amerikaansk Spaansk',
+ 'es-es' => 'Europeesk Spaansk',
+ 'es-mx' => 'Meksikaansk Spaansk',
+ 'et' => 'Estlânsk',
+ 'eu' => 'Baskysk',
+ 'ewo' => 'Ewondo',
+ 'fa' => 'Perzysk',
+ 'fan' => 'Fang',
+ 'fat' => 'Fanti',
+ 'ff' => 'Fulah',
+ 'fi' => 'Finsk',
+ 'fil' => 'Filipynsk',
+ 'fj' => 'Fijysk',
+ 'fo' => 'Faeröersk',
+ 'fon' => 'Fon',
+ 'fr' => 'Frânsk',
+ 'fr-ca' => 'Kanadeesk Frânsk',
+ 'fr-ch' => 'Switserse Frânsk',
+ 'frm' => 'Middelfrânsk',
+ 'fro' => 'Aldfrânsk',
+ 'frr' => 'Noard-Frysk',
+ 'frs' => 'East-Frysk',
+ 'fur' => 'Friulysk',
+ 'fy' => 'West-Frysk',
+ 'ga' => 'Iersk',
+ 'gaa' => 'Ga',
+ 'gay' => 'Gayo',
+ 'gba' => 'Gbaya',
+ 'gd' => 'Schotsk Gaelic',
+ 'gez' => 'Geez',
+ 'gil' => 'Gilberteesk',
+ 'gl' => 'Galisysk',
+ 'gmh' => 'Middelheechdútsk',
+ 'gn' => 'Guaraní',
+ 'goh' => 'Alsheechdútsk',
+ 'gon' => 'Gondi',
+ 'gor' => 'Gorontalo',
+ 'got' => 'Gothysk',
+ 'grb' => 'Grebo',
+ 'grc' => 'Aldgryks',
+ 'gsw' => 'Switsers Dútsk',
+ 'gu' => 'Gujarati',
+ 'guz' => 'Gusii',
+ 'gv' => 'Manks',
+ 'gwi' => 'Gwichʼin',
+ 'ha' => 'Hausa',
+ 'hai' => 'Haida',
+ 'haw' => 'Hawaïaansk',
+ 'he' => 'Hebreeuwsk',
+ 'hi' => 'Hindi',
+ 'hil' => 'Hiligaynon',
+ 'hit' => 'Hettitysk',
+ 'hmn' => 'Hmong',
+ 'ho' => 'Hiri Motu',
+ 'hr' => 'Kroatysk',
+ 'hsb' => 'Oppersorbysk',
+ 'ht' => 'Haïtiaansk',
+ 'hu' => 'Hongaarsk',
+ 'hup' => 'Hupa',
+ 'hy' => 'Armeensk',
+ 'hz' => 'Herero',
+ 'ia' => 'Interlingua',
+ 'iba' => 'Iban',
+ 'ibb' => 'Ibibio',
+ 'id' => 'Yndonezysk',
+ 'ie' => 'Interlingue',
+ 'ig' => 'Igbo',
+ 'ii' => 'Sichuan Yi',
+ 'ik' => 'Inupiaq',
+ 'ilo' => 'Iloko',
+ 'inh' => 'Ingoesj',
+ 'io' => 'Ido',
+ 'is' => 'Yslâns',
+ 'it' => 'Italiaansk',
+ 'iu' => 'Inuktitut',
+ 'ja' => 'Japans',
+ 'jbo' => 'Lojban',
+ 'jgo' => 'Ngomba',
+ 'jmc' => 'Machame',
+ 'jpr' => 'Judeo-Perzysk',
+ 'jrb' => 'Judeo-Arabysk',
+ 'jv' => 'Javaansk',
+ 'ka' => 'Georgysk',
+ 'kaa' => 'Karakalpaks',
+ 'kab' => 'Kabyle',
+ 'kac' => 'Kachin',
+ 'kaj' => 'Jju',
+ 'kam' => 'Kamba',
+ 'kaw' => 'Kawi',
+ 'kbd' => 'Kabardysk',
+ 'kbl' => 'Kanembu',
+ 'kcg' => 'Tyap',
+ 'kde' => 'Makonde',
+ 'kea' => 'Kaapverdysk Creools',
+ 'kfo' => 'Koro',
+ 'kg' => 'Kongo',
+ 'kha' => 'Khasi',
+ 'kho' => 'Khotaneesk',
+ 'khq' => 'Koyra Chiini',
+ 'ki' => 'Kikuyu',
+ 'kj' => 'Kuanyama',
+ 'kk' => 'Kazachs',
+ 'kkj' => 'Kako',
+ 'kl' => 'Grienlâns',
+ 'kln' => 'Kalenjin',
+ 'km' => 'Khmer',
+ 'kmb' => 'Kimbundu',
+ 'kn' => 'Kannada',
+ 'ko' => 'Koreaansk',
+ 'kok' => 'Konkani',
+ 'kos' => 'Kosraeaansk',
+ 'kpe' => 'Kpelle',
+ 'kr' => 'Kanuri',
+ 'krc' => 'Karachay-Balkar',
+ 'krl' => 'Karelysk',
+ 'kru' => 'Kurukh',
+ 'ks' => 'Kasjmiri',
+ 'ksb' => 'Shambala',
+ 'ksf' => 'Bafia',
+ 'ksh' => 'Kölsch',
+ 'ku' => 'Koerdysk',
+ 'kum' => 'Koemuks',
+ 'kut' => 'Kutenai',
+ 'kv' => 'Komi',
+ 'kw' => 'Cornish',
+ 'ky' => 'Kirgizysk',
+ 'la' => 'Latyn',
+ 'lad' => 'Ladino',
+ 'lag' => 'Langi',
+ 'lah' => 'Lahnda',
+ 'lam' => 'Lamba',
+ 'lb' => 'Luxemburgs',
+ 'lez' => 'Lezgysk',
+ 'lg' => 'Ganda',
+ 'li' => 'Limburgs',
+ 'lkt' => 'Lakota',
+ 'ln' => 'Lingala',
+ 'lo' => 'Laotiaansk',
+ 'lol' => 'Mongo',
+ 'loz' => 'Lozi',
+ 'lt' => 'Litouws',
+ 'lu' => 'Luba-Katanga',
+ 'lua' => 'Luba-Lulua',
+ 'lui' => 'Luiseno',
+ 'lun' => 'Lunda',
+ 'luo' => 'Luo',
+ 'lus' => 'Lushai',
+ 'luy' => 'Luyia',
+ 'lv' => 'Letlâns',
+ 'mad' => 'Madurees',
+ 'maf' => 'Mafa',
+ 'mag' => 'Magahi',
+ 'mai' => 'Maithili',
+ 'mak' => 'Makassaars',
+ 'man' => 'Mandingo',
+ 'mas' => 'Masai',
+ 'mde' => 'Maba',
+ 'mdf' => 'Moksha',
+ 'mdr' => 'Mandar',
+ 'men' => 'Mende',
+ 'mer' => 'Meru',
+ 'mfe' => 'Morisyen',
+ 'mg' => 'Malagasysk',
+ 'mga' => 'Middeliers',
+ 'mgh' => 'Makhuwa-Meetto',
+ 'mgo' => 'Meta’',
+ 'mh' => 'Marshallees',
+ 'mi' => 'Maori',
+ 'mic' => 'Mi’kmaq',
+ 'min' => 'Minangkabau',
+ 'mk' => 'Macedonysk',
+ 'ml' => 'Malayalam',
+ 'mn' => 'Mongools',
+ 'mnc' => 'Mantsjoe',
+ 'mni' => 'Manipoeri',
+ 'moh' => 'Mohawk',
+ 'mos' => 'Mossi',
+ 'mr' => 'Marathi',
+ 'ms' => 'Maleis',
+ 'mt' => 'Maltees',
+ 'mua' => 'Mundang',
+ 'mul' => 'Meardere talen',
+ 'mus' => 'Creek',
+ 'mwl' => 'Mirandees',
+ 'mwr' => 'Marwari',
+ 'my' => 'Birmees',
+ 'mye' => 'Myene',
+ 'myv' => 'Erzja',
+ 'na' => 'Nauruaansk',
+ 'nap' => 'Napolitaansk',
+ 'naq' => 'Nama',
+ 'nb' => 'Noors - Bokmål',
+ 'nd' => 'Noard-Ndbele',
+ 'nds' => 'Laagduits',
+ 'ne' => 'Nepalees',
+ 'new' => 'Newari',
+ 'ng' => 'Ndonga',
+ 'nia' => 'Nias',
+ 'niu' => 'Niueaansk',
+ 'nl' => 'Nederlânsk',
+ 'nl-be' => 'Vlaams',
+ 'nmg' => 'Ngumba',
+ 'nn' => 'Noors - Nynorsk',
+ 'nnh' => 'Ngiemboon',
+ 'no' => 'Noors',
+ 'nog' => 'Nogai',
+ 'non' => 'Aldnoarsk',
+ 'nqo' => 'N’ko',
+ 'nr' => 'Sûd-Ndbele',
+ 'nso' => 'Noard-Sotho',
+ 'nus' => 'Nuer',
+ 'nv' => 'Navajo',
+ 'nwc' => 'Klassiek Newari',
+ 'ny' => 'Nyanja',
+ 'nym' => 'Nyamwezi',
+ 'nyn' => 'Nyankole',
+ 'nyo' => 'Nyoro',
+ 'nzi' => 'Nzima',
+ 'oc' => 'Occitaansk',
+ 'oj' => 'Ojibwa',
+ 'om' => 'Oromo',
+ 'or' => 'Odia',
+ 'os' => 'Ossetysk',
+ 'osa' => 'Osage',
+ 'ota' => 'Ottomaansk-Turks',
+ 'pa' => 'Punjabi',
+ 'pag' => 'Pangasinan',
+ 'pal' => 'Pahlavi',
+ 'pam' => 'Pampanga',
+ 'pap' => 'Papiaments',
+ 'pau' => 'Palauaansk',
+ 'peo' => 'Aldperzysk',
+ 'phn' => 'Foenisysk',
+ 'pi' => 'Pali',
+ 'pl' => 'Poalsk',
+ 'pon' => 'Pohnpeiaansk',
+ 'pro' => 'Aldprovençaals',
+ 'ps' => 'Pasjtoe',
+ 'pt' => 'Portugeesk',
+ 'pt-br' => 'Brazyljaansk Portugees',
+ 'pt-pt' => 'Europees Portugees',
+ 'qu' => 'Quechua',
+ 'raj' => 'Rajasthani',
+ 'rap' => 'Rapanui',
+ 'rar' => 'Rarotongan',
+ 'rm' => 'Reto-Romaansk',
+ 'rn' => 'Kirundi',
+ 'ro' => 'Roemeensk',
+ 'ro-md' => 'Moldavysk',
+ 'rof' => 'Rombo',
+ 'rom' => 'Romani',
+ 'ru' => 'Russysk',
+ 'rup' => 'Aromaniaansk',
+ 'rw' => 'Kinyarwanda',
+ 'rwk' => 'Rwa',
+ 'sa' => 'Sanskriet',
+ 'sad' => 'Sandawe',
+ 'sah' => 'Jakoets',
+ 'sam' => 'Samaritaansk-Arameesk',
+ 'saq' => 'Samburu',
+ 'sas' => 'Sasak',
+ 'sat' => 'Santali',
+ 'sba' => 'Ngambay',
+ 'sbp' => 'Sangu',
+ 'sc' => 'Sardinysk',
+ 'scn' => 'Siciliaansk',
+ 'sco' => 'Schots',
+ 'sd' => 'Sindhi',
+ 'se' => 'Noard-Samysk',
+ 'see' => 'Seneca',
+ 'seh' => 'Sena',
+ 'sel' => 'Selkup',
+ 'ses' => 'Koyraboro Senni',
+ 'sg' => 'Sango',
+ 'sga' => 'Aldyrsk',
+ 'sh' => 'Servokroatysk',
+ 'shi' => 'Tashelhiyt',
+ 'shn' => 'Shan',
+ 'shu' => 'Tsjadysk Arabysk',
+ 'si' => 'Singalees',
+ 'sid' => 'Sidamo',
+ 'sk' => 'Slowaaks',
+ 'sl' => 'Sloveensk',
+ 'sm' => 'Samoaansk',
+ 'sma' => 'Sûd-Samysk',
+ 'smj' => 'Lule Sami',
+ 'smn' => 'Inari Sami',
+ 'sms' => 'Skolt Sami',
+ 'sn' => 'Shona',
+ 'snk' => 'Soninke',
+ 'so' => 'Somalysk',
+ 'sog' => 'Sogdysk',
+ 'sq' => 'Albaneesk',
+ 'sr' => 'Servysk',
+ 'srn' => 'Sranantongo',
+ 'srr' => 'Serer',
+ 'ss' => 'Swazi',
+ 'ssy' => 'Saho',
+ 'st' => 'Sûd-Sotho',
+ 'su' => 'Soendaneesk',
+ 'suk' => 'Sukuma',
+ 'sus' => 'Soesoe',
+ 'sux' => 'Soemerysk',
+ 'sv' => 'Zweeds',
+ 'sw' => 'Swahili',
+ 'swb' => 'Shimaore',
+ 'swc' => 'Congo Swahili',
+ 'syc' => 'Klassiek Syrysk',
+ 'syr' => 'Syrysk',
+ 'ta' => 'Tamil',
+ 'te' => 'Telugu',
+ 'tem' => 'Timne',
+ 'teo' => 'Teso',
+ 'ter' => 'Tereno',
+ 'tet' => 'Tetun',
+ 'tg' => 'Tadzjieks',
+ 'th' => 'Thais',
+ 'ti' => 'Tigrinya',
+ 'tig' => 'Tigre',
+ 'tiv' => 'Tiv',
+ 'tk' => 'Turkmeens',
+ 'tkl' => 'Tokelaus',
+ 'tl' => 'Tagalog',
+ 'tlh' => 'Klingon',
+ 'tli' => 'Tlingit',
+ 'tmh' => 'Tamashek',
+ 'tn' => 'Tswana',
+ 'to' => 'Tongaansk',
+ 'tog' => 'Nyasa Tonga',
+ 'tpi' => 'Tok Pisin',
+ 'tr' => 'Turks',
+ 'trv' => 'Taroko',
+ 'ts' => 'Tsonga',
+ 'tsi' => 'Tsimshian',
+ 'tt' => 'Tataars',
+ 'tum' => 'Toemboeka',
+ 'tvl' => 'Tuvaluaansk',
+ 'tw' => 'Twi',
+ 'twq' => 'Tasawaq',
+ 'ty' => 'Tahitysk',
+ 'tyv' => 'Tuvinysk',
+ 'tzm' => 'Tamazight (Sintraal-Marokko)',
+ 'udm' => 'Oedmoerts',
+ 'ug' => 'Oeigoers',
+ 'uga' => 'Oegaritysk',
+ 'uk' => 'Oekraïens',
+ 'umb' => 'Umbundu',
+ 'und' => 'Onbekende taal',
+ 'ur' => 'Urdu',
+ 'uz' => 'Oezbeeks',
+ 'vai' => 'Vai',
+ 've' => 'Venda',
+ 'vi' => 'Vietnamees',
+ 'vo' => 'Volapük',
+ 'vot' => 'Votysk',
+ 'vun' => 'Vunjo',
+ 'wa' => 'Waals',
+ 'wae' => 'Walser',
+ 'wal' => 'Walamo',
+ 'war' => 'Waray',
+ 'was' => 'Washo',
+ 'wo' => 'Wolof',
+ 'xal' => 'Kalmyk',
+ 'xh' => 'Xhosa',
+ 'xog' => 'Soga',
+ 'yao' => 'Yao',
+ 'yap' => 'Yapees',
+ 'yav' => 'Yangben',
+ 'ybb' => 'Yemba',
+ 'yi' => 'Jiddysk',
+ 'yo' => 'Yoruba',
+ 'yue' => 'Kantoneesk',
+ 'za' => 'Zhuang',
+ 'zap' => 'Zapotec',
+ 'zbl' => 'Blissymbolen',
+ 'zen' => 'Zenaga',
+ 'zgh' => 'Standert Marokkaanske Tamazight',
+ 'zh' => 'Sineesk',
+ 'zh-hans' => 'Ferienfâldich Sineesk',
+ 'zh-hant' => 'Tradisjoneel Sineesk',
+ 'zu' => 'Zulu',
+ 'zun' => 'Zuni',
+ 'zxx' => 'Gjin linguïstyske ynhâld',
+ 'zza' => 'Zaza',
+);
+
+$currencyNames = array(
+ 'ADP' => 'Andorrese peseta',
+ 'AED' => 'Verenigde Arabyske Emiraten-dirham',
+ 'AFA' => 'Afghani (1927–2002)',
+ 'AFN' => 'Afghaanske afghani',
+ 'ALL' => 'Albanese lek',
+ 'AMD' => 'Armeense dram',
+ 'ANG' => 'Nederlânsk-Antilliaanske gûne',
+ 'AOA' => 'Angolese kwanza',
+ 'AOK' => 'Angolese kwanza (1977–1990)',
+ 'AON' => 'Angolese nieuwe kwanza (1990–2000)',
+ 'AOR' => 'Angolese kwanza reajustado (1995–1999)',
+ 'ARA' => 'Argentynske austral',
+ 'ARL' => 'Argentynske peso ley (1970–1983)',
+ 'ARM' => 'Argentynske peso (1881–1970)',
+ 'ARP' => 'Argentynske peso (1983–1985)',
+ 'ARS' => 'Argentynske peso',
+ 'ATS' => 'Eastenrykse schilling',
+ 'AUD' => 'Australyske dollar',
+ 'AWG' => 'Arubaanske gulden',
+ 'AZM' => 'Azerbeidzjaanske manat (1993–2006)',
+ 'AZN' => 'Azerbeidzjaanske manat',
+ 'BAD' => 'Bosnyske dinar',
+ 'BAM' => 'Bosnyske convertibele mark',
+ 'BAN' => 'Nije Bosnyske dinar (1994–1997)',
+ 'BBD' => 'Barbadaanske dollar',
+ 'BDT' => 'Bengalese taka',
+ 'BEC' => 'Belgyske frank (convertibel)',
+ 'BEF' => 'Belgyske frank',
+ 'BEL' => 'Belgyske frank (finansjeel)',
+ 'BGL' => 'Bulgaarse harde lev',
+ 'BGM' => 'Bulgaarse socialistyske lev',
+ 'BGN' => 'Bulgaarse lev',
+ 'BGO' => 'Bulgaarse lev (1879–1952)',
+ 'BHD' => 'Bahreinse dinar',
+ 'BIF' => 'Burundese frank',
+ 'BMD' => 'Bermuda-dollar',
+ 'BND' => 'Bruneise dollar',
+ 'BOB' => 'Boliviaanske boliviano',
+ 'BOL' => 'Boliviaanske boliviano (1863–1963)',
+ 'BOP' => 'Boliviaanske peso',
+ 'BOV' => 'Boliviaanske mvdol',
+ 'BRB' => 'Braziliaanske cruzeiro novo (1967–1986)',
+ 'BRC' => 'Braziliaanske cruzado',
+ 'BRE' => 'Braziliaanske cruzeiro (1990–1993)',
+ 'BRL' => 'Braziliaanske real',
+ 'BRN' => 'Braziliaanske cruzado novo',
+ 'BRR' => 'Braziliaanske cruzeiro',
+ 'BRZ' => 'Braziliaanske cruzeiro (1942–1967)',
+ 'BSD' => 'Bahamaanske dollar',
+ 'BTN' => 'Bhutaanske ngultrum',
+ 'BUK' => 'Birmese kyat',
+ 'BWP' => 'Botswaanske pula',
+ 'BYB' => 'Wit-Russyske nieuwe roebel (1994–1999)',
+ 'BYR' => 'Wit-Russyske roebel',
+ 'BZD' => 'Belizaanske dollar',
+ 'CAD' => 'Canadese dollar',
+ 'CDF' => 'Congolese frank',
+ 'CHE' => 'WIR euro',
+ 'CHF' => 'Zwitserse frank',
+ 'CHW' => 'WIR franc',
+ 'CLE' => 'Sileenske escudo',
+ 'CLF' => 'Sileenske unidades de fomento',
+ 'CLP' => 'Sileenske peso',
+ 'CNY' => 'Sineeske yuan renminbi',
+ 'COP' => 'Kolombiaanske peso',
+ 'COU' => 'Unidad de Valor Real',
+ 'CRC' => 'Costaricaanske colón',
+ 'CSD' => 'Alde Servyske dinar',
+ 'CSK' => 'Tsjechoslowaakse harde koruna',
+ 'CUC' => 'Kubaanske convertibele peso',
+ 'CUP' => 'Kubaanske peso',
+ 'CVE' => 'Kaapverdyske escudo',
+ 'CYP' => 'Cyprysk pûn',
+ 'CZK' => 'Tsjechyske kroon',
+ 'DDM' => 'East-Dútske ostmark',
+ 'DEM' => 'Dútske mark',
+ 'DJF' => 'Djiboutiaanske frank',
+ 'DKK' => 'Deenske kroon',
+ 'DOP' => 'Dominikaanske peso',
+ 'DZD' => 'Algerynske dinar',
+ 'ECS' => 'Ecuadoraanske sucre',
+ 'ECV' => 'Ecuadoraanske unidad de valor constante (UVC)',
+ 'EEK' => 'Estlânske kroon',
+ 'EGP' => 'Egyptysk pûn',
+ 'ERN' => 'Eritrese nakfa',
+ 'ESA' => 'Spaanske peseta (account A)',
+ 'ESB' => 'Spaanske peseta (convertibele account)',
+ 'ESP' => 'Spaanske peseta',
+ 'ETB' => 'Ethiopyske birr',
+ 'EUR' => 'Euro',
+ 'FIM' => 'Finse markka',
+ 'FJD' => 'Fiji-dollar',
+ 'FKP' => 'Falklâneilânske pûn',
+ 'FRF' => 'Franske franc',
+ 'GBP' => 'Brits pûn sterling',
+ 'GEK' => 'Georgyske kupon larit',
+ 'GEL' => 'Georgyske lari',
+ 'GHC' => 'Ghanese cedi (1979–2007)',
+ 'GHS' => 'Ghanese cedi',
+ 'GIP' => 'Gibraltarees pûn',
+ 'GMD' => 'Gambiaanske dalasi',
+ 'GNF' => 'Guinese franc',
+ 'GNS' => 'Guinese syli',
+ 'GQE' => 'Equatoriaal-Guinese ekwele guineana',
+ 'GRD' => 'Grykse drachme',
+ 'GTQ' => 'Guatemalteekse quetzal',
+ 'GWE' => 'Portugees-Guinese escudo',
+ 'GWP' => 'Guinee-Bissause peso',
+ 'GYD' => 'Guyaanske dollar',
+ 'HKD' => 'Hongkongske dollar',
+ 'HNL' => 'Hondurese lempira',
+ 'HRD' => 'Kroatyske dinar',
+ 'HRK' => 'Kroatyske kuna',
+ 'HTG' => 'Haïtiaanske gourde',
+ 'HUF' => 'Hongaarse forint',
+ 'IDR' => 'Indonesyske roepia',
+ 'IEP' => 'Ierske pûn',
+ 'ILP' => 'Israëlysk pûn',
+ 'ILS' => 'Israëlyske nieuwe shekel',
+ 'INR' => 'Indiase roepie',
+ 'IQD' => 'Iraakse dinar',
+ 'IRR' => 'Iraanske rial',
+ 'ISK' => 'Yslânske kroon',
+ 'ITL' => 'Italiaanske lire',
+ 'JMD' => 'Jamaikaanske dollar',
+ 'JOD' => 'Jordaanske dinar',
+ 'JPY' => 'Japanse yen',
+ 'KES' => 'Keniaanske shilling',
+ 'KGS' => 'Kirgizyske som',
+ 'KHR' => 'Kambodjaanske riel',
+ 'KMF' => 'Komorese frank',
+ 'KPW' => 'Noard-Koreaanske won',
+ 'KRH' => 'Sûd-Koreaanske hwan (1953–1962)',
+ 'KRO' => 'Alde Sûd-Koreaanske won (1945–1953)',
+ 'KRW' => 'Sûd-Koreaanske won',
+ 'KWD' => 'Koeweitse dinar',
+ 'KYD' => 'Caymaneilânske dollar',
+ 'KZT' => 'Kazachstaanske tenge',
+ 'LAK' => 'Laotiaanske kip',
+ 'LBP' => 'Libaneeske pûn',
+ 'LKR' => 'Sri Lankaanske roepie',
+ 'LRD' => 'Liberiaanske dollar',
+ 'LSL' => 'Lesothaanske loti',
+ 'LTL' => 'Litouwse litas',
+ 'LTT' => 'Litouwse talonas',
+ 'LUC' => 'Lúksemboargske convertibele franc',
+ 'LUF' => 'Lúksemboargske frank',
+ 'LUL' => 'Lúksemboargske finansjele franc',
+ 'LVL' => 'Letse lats',
+ 'LVR' => 'Letse roebel',
+ 'LYD' => 'Libyske dinar',
+ 'MAD' => 'Marokkaanske dirham',
+ 'MAF' => 'Marokkaanske franc',
+ 'MCF' => 'Monegaskyske frank',
+ 'MDC' => 'Moldavyske cupon',
+ 'MDL' => 'Moldavyske leu',
+ 'MGA' => 'Malagassyske ariary',
+ 'MGF' => 'Malagassyske franc',
+ 'MKD' => 'Macedonyske denar',
+ 'MKN' => 'Macedonyske denar (1992–1993)',
+ 'MLF' => 'Malinese franc',
+ 'MMK' => 'Myanmarese kyat',
+ 'MNT' => 'Mongoalske tugrik',
+ 'MOP' => 'Macause pataca',
+ 'MRO' => 'Mauritaanske ouguiya',
+ 'MTL' => 'Maltese lire',
+ 'MTP' => 'Maltees pûn',
+ 'MUR' => 'Mauritiaanske roepie',
+ 'MVR' => 'Maldivyske rufiyaa',
+ 'MWK' => 'Malawyske kwacha',
+ 'MXN' => 'Meksikaanske peso',
+ 'MXP' => 'Meksikaanske sulveren peso (1861–1992)',
+ 'MXV' => 'Meksikaanske unidad de inversion (UDI)',
+ 'MYR' => 'Maleisyske ringgit',
+ 'MZE' => 'Mozambikaanske escudo',
+ 'MZM' => 'Alde Mozambikaanske metical',
+ 'MZN' => 'Mozambikaanske metical',
+ 'NAD' => 'Namibyske dollar',
+ 'NGN' => 'Nigeriaanske naira',
+ 'NIC' => 'Nicaraguaanske córdoba (1988–1991)',
+ 'NIO' => 'Nicaraguaanske córdoba',
+ 'NLG' => 'Nederlânske gûne',
+ 'NOK' => 'Noarske kroon',
+ 'NPR' => 'Nepalese roepie',
+ 'NZD' => 'Nij-Seelânske dollar',
+ 'OMR' => 'Omaanske rial',
+ 'PAB' => 'Panamese balboa',
+ 'PEI' => 'Peruaanske inti',
+ 'PEN' => 'Peruaanske nieuwe sol',
+ 'PES' => 'Peruaanske sol',
+ 'PGK' => 'Papuaanske kina',
+ 'PHP' => 'Filipynske peso',
+ 'PKR' => 'Pakistaanske roepie',
+ 'PLN' => 'Poalske zloty',
+ 'PLZ' => 'Poalske zloty (1950–1995)',
+ 'PTE' => 'Portugeeske escudo',
+ 'PYG' => 'Paraguayaanske guarani',
+ 'QAR' => 'Katarese rial',
+ 'RHD' => 'Rhodesyske dollar',
+ 'ROL' => 'Alde Roemeenske leu',
+ 'RON' => 'Roemeenske leu',
+ 'RSD' => 'Servyske dinar',
+ 'RUB' => 'Russyske roebel',
+ 'RUR' => 'Russyske roebel (1991–1998)',
+ 'RWF' => 'Rwandese frank',
+ 'SAR' => 'Saoedi-Arabyske riyal',
+ 'SBD' => 'Salomon-dollar',
+ 'SCR' => 'Seychelse roepie',
+ 'SDD' => 'Soedaneeske dinar',
+ 'SDG' => 'Soedaneeske pûn',
+ 'SDP' => 'Soedaneeske pûn (1957–1998)',
+ 'SEK' => 'Sweedske kroon',
+ 'SGD' => 'Singaporese dollar',
+ 'SHP' => 'Sint-Heleenske pûn',
+ 'SIT' => 'Sloveenske tolar',
+ 'SKK' => 'Slowaakse koruna',
+ 'SLL' => 'Sierraleoonse leone',
+ 'SOS' => 'Somalyske shilling',
+ 'SRD' => 'Surinaamske dollar',
+ 'SRG' => 'Surinaamske gulden',
+ 'SSP' => 'Sûd-Soedaneeske pûn',
+ 'STD' => 'Santomese dobra',
+ 'SUR' => 'Sovjet-roebel',
+ 'SVC' => 'Salvadoraanske colón',
+ 'SYP' => 'Syrysk pûn',
+ 'SZL' => 'Swazyske lilangeni',
+ 'THB' => 'Thaise baht',
+ 'TJR' => 'Tadzjikistaanske roebel',
+ 'TJS' => 'Tadzjikistaanske somoni',
+ 'TMM' => 'Turkmeense manat (1993–2009)',
+ 'TMT' => 'Turkmeense manat',
+ 'TND' => 'Tunesyske dinar',
+ 'TOP' => 'Tongaanske paʻanga',
+ 'TPE' => 'Timorese escudo',
+ 'TRL' => 'Turkse lire',
+ 'TRY' => 'Turkse lira',
+ 'TTD' => 'Trinidad en Tobago-dollar',
+ 'TWD' => 'Nije Taiwanese dollar',
+ 'TZS' => 'Tanzaniaanske shilling',
+ 'UAH' => 'Oekraïense hryvnia',
+ 'UAK' => 'Oekraïense karbovanetz',
+ 'UGS' => 'Oegandese shilling (1966–1987)',
+ 'UGX' => 'Oegandese shilling',
+ 'USD' => 'Amerikaanske dollar',
+ 'USN' => 'Amerikaanske dollar (folgjende dei)',
+ 'USS' => 'Amerikaanske dollar (zelfde dei)',
+ 'UYI' => 'Uruguayaanske peso en geïndexeerde eenheden',
+ 'UYP' => 'Uruguayaanske peso (1975–1993)',
+ 'UYU' => 'Uruguayaanske peso',
+ 'UZS' => 'Oezbekistaanske sum',
+ 'VEB' => 'Fenezolaanske bolivar (1871–2008)',
+ 'VEF' => 'Fenezolaanske bolivar',
+ 'VND' => 'Fietnameeske dong',
+ 'VNN' => 'Alde Fietnameeske dong (1978–1985)',
+ 'VUV' => 'Vanuatuaanske vatu',
+ 'WST' => 'Samoaanske tala',
+ 'XAF' => 'CFA-frank',
+ 'XAG' => 'Sulver',
+ 'XAU' => 'Goud',
+ 'XBA' => 'Europeeske gearfoege ienheid',
+ 'XBB' => 'Europeeske monetaire ienheid',
+ 'XBC' => 'Europeeske rekkenienheid (XBC)',
+ 'XBD' => 'Europeeske rekkenienheid (XBD)',
+ 'XCD' => 'East-Karibyske dollar',
+ 'XDR' => 'Special Drawing Rights',
+ 'XEU' => 'European Currency Unit',
+ 'XFO' => 'Franse gouden franc',
+ 'XFU' => 'Franse UIC-franc',
+ 'XOF' => 'CFA-franc BCEAO',
+ 'XPD' => 'Palladium',
+ 'XPF' => 'CFP-franc',
+ 'XPT' => 'Platina',
+ 'XRE' => 'RINET-fondsen',
+ 'XSU' => 'Sucre',
+ 'XTS' => 'Valutacode voor testdoeleinden',
+ 'XUA' => 'ADB-rekkenienheid',
+ 'XXX' => 'Unbekende muntienheid',
+ 'YDD' => 'Jemenityske dinar',
+ 'YER' => 'Jemenityske rial',
+ 'YUD' => 'Joegoslavyske harde dinar',
+ 'YUM' => 'Joegoslavyske noviy-dinar',
+ 'YUN' => 'Joegoslavyske convertibele dinar',
+ 'YUR' => 'Joegoslavyske herfoarme dinar (1992–1993)',
+ 'ZAL' => 'Sûd-Afrikaanske rand (finansjeel)',
+ 'ZAR' => 'Sûd-Afrikaanske rand',
+ 'ZMK' => 'Sambiaanske kwacha (1968–2012)',
+ 'ZMW' => 'Sambiaanske kwacha',
+ 'ZRN' => 'Saïreeske nije Saïre',
+ 'ZRZ' => 'Saïreeske Saïre',
+ 'ZWD' => 'Simbabwaanske dollar',
+ 'ZWL' => 'Simbabwaanske dollar (2009)',
+ 'ZWR' => 'Simbabwaanske dollar (2008)',
+);
+
+$currencySymbols = array(
+ 'AUD' => 'AU$',
+ 'BRL' => 'R$',
+ 'CAD' => 'C$',
+ 'CNY' => 'CN¥',
+ 'EUR' => '€',
+ 'FJD' => 'FJ$',
+ 'GBP' => '£',
+ 'HKD' => 'HK$',
+ 'ILS' => '₪',
+ 'INR' => '₹',
+ 'JPY' => 'JP¥',
+ 'KRW' => '₩',
+ 'MXN' => 'MX$',
+ 'NZD' => 'NZ$',
+ 'SBD' => 'SI$',
+ 'THB' => '฿',
+ 'TWD' => 'NT$',
+ 'USD' => 'US$',
+ 'VND' => '₫',
+ 'XAF' => 'FCFA',
+ 'XCD' => 'EC$',
+ 'XOF' => 'CFA',
+ 'XPF' => 'XPF',
+);
+
+$countryNames = array(
+ 'AC' => 'Ascension',
+ 'AD' => 'Andorra',
+ 'AE' => 'Verenigde Arabyske Emiraten',
+ 'AF' => 'Afghanistan',
+ 'AG' => 'Antigua en Barbuda',
+ 'AI' => 'Anguilla',
+ 'AL' => 'Albanië',
+ 'AM' => 'Armenië',
+ 'AN' => 'Nederlânske Antillen',
+ 'AO' => 'Angola',
+ 'AQ' => 'Antarctica',
+ 'AR' => 'Argentinië',
+ 'AS' => 'Amerikaansk Samoa',
+ 'AT' => 'Eastenryk',
+ 'AU' => 'Australië',
+ 'AW' => 'Aruba',
+ 'AX' => 'Ålân',
+ 'AZ' => 'Azerbeidzjan',
+ 'BA' => 'Bosnië en Herzegovina',
+ 'BB' => 'Barbados',
+ 'BD' => 'Bangladesh',
+ 'BE' => 'België',
+ 'BF' => 'Burkina Faso',
+ 'BG' => 'Bulgarije',
+ 'BH' => 'Bahrein',
+ 'BI' => 'Burundi',
+ 'BJ' => 'Benin',
+ 'BL' => 'Saint Barthélemy',
+ 'BM' => 'Bermuda',
+ 'BN' => 'Brunei',
+ 'BO' => 'Bolivia',
+ 'BQ' => 'Karibysk Nederlân',
+ 'BR' => 'Brazilië',
+ 'BS' => 'Bahama’s',
+ 'BT' => 'Bhutan',
+ 'BV' => 'Bouveteilân',
+ 'BW' => 'Botswana',
+ 'BY' => 'Wit-Ruslân',
+ 'BZ' => 'Belize',
+ 'CA' => 'Canada',
+ 'CC' => 'Kokosilanen',
+ 'CD' => 'Congo-Kinshasa',
+ 'CF' => 'Sintraal-Afrikaanske Republyk',
+ 'CG' => 'Congo-Brazzaville',
+ 'CH' => 'Switserlân',
+ 'CI' => 'Ivoorkust',
+ 'CK' => 'Cookeilannen',
+ 'CL' => 'Chili',
+ 'CM' => 'Kameroen',
+ 'CN' => 'Sina',
+ 'CO' => 'Kolombia',
+ 'CP' => 'Clipperton',
+ 'CR' => 'Costa Rica',
+ 'CU' => 'Kuba',
+ 'CV' => 'Kaapverdië',
+ 'CW' => 'Curaçao',
+ 'CX' => 'Krysteilan',
+ 'CY' => 'Syprus',
+ 'CZ' => 'Tsjechje',
+ 'DE' => 'Dútslân',
+ 'DG' => 'Diego Garcia',
+ 'DJ' => 'Djibouti',
+ 'DK' => 'Denemarken',
+ 'DM' => 'Dominika',
+ 'DO' => 'Dominikaanske Republyk',
+ 'DZ' => 'Algerije',
+ 'EA' => 'Ceuta en Melilla',
+ 'EC' => 'Ecuador',
+ 'EE' => 'Estlân',
+ 'EG' => 'Egypte',
+ 'EH' => 'Westelijke Sahara',
+ 'ER' => 'Eritrea',
+ 'ES' => 'Spanje',
+ 'ET' => 'Ethiopië',
+ 'EU' => 'Europeeske Unie',
+ 'FI' => 'Finlân',
+ 'FJ' => 'Fiji',
+ 'FK' => 'Falklâneilannen',
+ 'FM' => 'Micronesië',
+ 'FO' => 'Faeröer',
+ 'FR' => 'Frankrijk',
+ 'GA' => 'Gabon',
+ 'GB' => 'VK',
+ 'GD' => 'Grenada',
+ 'GE' => 'Georgië',
+ 'GF' => 'Frans-Guyana',
+ 'GG' => 'Guernsey',
+ 'GH' => 'Ghana',
+ 'GI' => 'Gibraltar',
+ 'GL' => 'Grienlân',
+ 'GM' => 'Gambia',
+ 'GN' => 'Guinee',
+ 'GP' => 'Guadeloupe',
+ 'GQ' => 'Equatoriaal-Guinea',
+ 'GR' => 'Grikelân',
+ 'GS' => 'Sûd-Georgia en Sûdlike Sandwicheilannen',
+ 'GT' => 'Guatemala',
+ 'GU' => 'Guam',
+ 'GW' => 'Guinee-Bissau',
+ 'GY' => 'Guyana',
+ 'HK' => 'Hongkong',
+ 'HM' => 'Heard- en McDonaldeilannen',
+ 'HN' => 'Honduras',
+ 'HR' => 'Kroatië',
+ 'HT' => 'Haïti',
+ 'HU' => 'Hongarije',
+ 'IC' => 'Kanaryske Eilânnen',
+ 'ID' => 'Yndonesië',
+ 'IE' => 'Ierlân',
+ 'IL' => 'Israël',
+ 'IM' => 'Isle of Man',
+ 'IN' => 'India',
+ 'IO' => 'Britse Gebieden yn de Indyske Oseaan',
+ 'IQ' => 'Irak',
+ 'IR' => 'Iran',
+ 'IS' => 'Yslân',
+ 'IT' => 'Italië',
+ 'JE' => 'Jersey',
+ 'JM' => 'Jamaica',
+ 'JO' => 'Jordanië',
+ 'JP' => 'Japan',
+ 'KE' => 'Kenia',
+ 'KG' => 'Kirgizië',
+ 'KH' => 'Cambodja',
+ 'KI' => 'Kiribati',
+ 'KM' => 'Comoren',
+ 'KN' => 'Saint Kitts en Nevis',
+ 'KP' => 'Noard-Korea',
+ 'KR' => 'Sûd-Korea',
+ 'KW' => 'Koeweit',
+ 'KY' => 'Caymaneilannen',
+ 'KZ' => 'Kazachstan',
+ 'LA' => 'Laos',
+ 'LB' => 'Libanon',
+ 'LC' => 'Saint Lucia',
+ 'LI' => 'Liechtenstein',
+ 'LK' => 'Sri Lanka',
+ 'LR' => 'Liberia',
+ 'LS' => 'Lesotho',
+ 'LT' => 'Litouwen',
+ 'LU' => 'Luxemburg',
+ 'LV' => 'Letlân',
+ 'LY' => 'Libië',
+ 'MA' => 'Marokko',
+ 'MC' => 'Monaco',
+ 'MD' => 'Moldavië',
+ 'ME' => 'Montenegro',
+ 'MF' => 'Saint-Martin',
+ 'MG' => 'Madeiaskar',
+ 'MH' => 'Marshalleilannen',
+ 'MK' => 'Macedonië',
+ 'ML' => 'Mali',
+ 'MM' => 'Myanmar (Birma)',
+ 'MN' => 'Mongolië',
+ 'MO' => 'Macao',
+ 'MP' => 'Noardlike Marianeneilannen',
+ 'MQ' => 'Martinique',
+ 'MR' => 'Mauritanië',
+ 'MS' => 'Montserrat',
+ 'MT' => 'Malta',
+ 'MU' => 'Mauritius',
+ 'MV' => 'Maldiven',
+ 'MW' => 'Malawi',
+ 'MX' => 'Mexico',
+ 'MY' => 'Maleisië',
+ 'MZ' => 'Mozambique',
+ 'NA' => 'Namibië',
+ 'NC' => 'Nij-Caledonië',
+ 'NE' => 'Niger',
+ 'NF' => 'Norfolkeilân',
+ 'NG' => 'Nigeria',
+ 'NI' => 'Nicaragua',
+ 'NL' => 'Nederlân',
+ 'NO' => 'Noarwegen',
+ 'NP' => 'Nepal',
+ 'NR' => 'Nauru',
+ 'NU' => 'Niue',
+ 'NZ' => 'Nij-Seelân',
+ 'OM' => 'Oman',
+ 'PA' => 'Panama',
+ 'PE' => 'Peru',
+ 'PF' => 'Frans-Polynesië',
+ 'PG' => 'Papoea-Nij-Guinea',
+ 'PH' => 'Filipijnen',
+ 'PK' => 'Pakistan',
+ 'PL' => 'Polen',
+ 'PM' => 'Saint-Pierre en Miquelon',
+ 'PN' => 'Pitcairneilannen',
+ 'PR' => 'Puerto Rico',
+ 'PS' => 'Palestina',
+ 'PT' => 'Portugal',
+ 'PW' => 'Palau',
+ 'PY' => 'Paraguay',
+ 'QA' => 'Qatar',
+ 'QO' => 'Oerig Oceanië',
+ 'RE' => 'Réunion',
+ 'RO' => 'Roemenië',
+ 'RS' => 'Servië',
+ 'RU' => 'Ruslân',
+ 'RW' => 'Rwanda',
+ 'SA' => 'Saoedi-Arabië',
+ 'SB' => 'Salomonseilannen',
+ 'SC' => 'Seychellen',
+ 'SD' => 'Soedan',
+ 'SE' => 'Zweden',
+ 'SG' => 'Singapore',
+ 'SH' => 'Sint-Helena',
+ 'SI' => 'Slovenië',
+ 'SJ' => 'Spitsbergen en Jan Mayen',
+ 'SK' => 'Slowakije',
+ 'SL' => 'Sierra Leone',
+ 'SM' => 'San Marino',
+ 'SN' => 'Senegal',
+ 'SO' => 'Somalië',
+ 'SR' => 'Suriname',
+ 'SS' => 'Sûd-Soedan',
+ 'ST' => 'Sao Tomé en Principe',
+ 'SV' => 'El Salvador',
+ 'SX' => 'Sint-Maarten',
+ 'SY' => 'Syrië',
+ 'SZ' => 'Swazilân',
+ 'TA' => 'Tristan da Cunha',
+ 'TC' => 'Turks- en Caicoseilannen',
+ 'TD' => 'Tsjaad',
+ 'TF' => 'Franse Gebieden in de zuidelijke Indyske Oseaan',
+ 'TG' => 'Togo',
+ 'TH' => 'Thailân',
+ 'TJ' => 'Tadzjikistan',
+ 'TK' => 'Tokelau',
+ 'TL' => 'East-Timor',
+ 'TM' => 'Turkmenistan',
+ 'TN' => 'Tunesië',
+ 'TO' => 'Tonga',
+ 'TR' => 'Turkije',
+ 'TT' => 'Trinidad en Tobago',
+ 'TV' => 'Tuvalu',
+ 'TW' => 'Taiwan',
+ 'TZ' => 'Tanzania',
+ 'UA' => 'Oekraïne',
+ 'UG' => 'Oeganda',
+ 'UM' => 'Lyts ôflizzen eilannen fan de Ferienigde Staten',
+ 'US' => 'VS',
+ 'UY' => 'Uruguay',
+ 'UZ' => 'Oezbekistan',
+ 'VA' => 'Vaticaanstêd',
+ 'VC' => 'Saint Vincent en de Grenadines',
+ 'VE' => 'Venezuela',
+ 'VG' => 'Britse Maagdeneilannen',
+ 'VI' => 'Amerikaanske Maagdeneilannen',
+ 'VN' => 'Vietnam',
+ 'VU' => 'Vanuatu',
+ 'WF' => 'Wallis en Futuna',
+ 'WS' => 'Samoa',
+ 'XK' => 'Kosovo',
+ 'YE' => 'Jemen',
+ 'YT' => 'Mayotte',
+ 'ZA' => 'Sûd-Afrika',
+ 'ZM' => 'Zambia',
+ 'ZW' => 'Zimbabwe',
+);
+
+$timeUnits = array(
+ 'day-future-one' => 'Oer {0} dei',
+ 'day-future-other' => 'Oer {0} deien',
+ 'day-one' => '{0} dei',
+ 'day-other' => '{0} deien',
+ 'day-past-one' => '{0} dei lyn',
+ 'day-past-other' => '{0} deien lyn',
+ 'hour-future-one' => 'Oer {0} oere',
+ 'hour-future-other' => 'Oer {0} oere',
+ 'hour-one' => '{0} oere',
+ 'hour-other' => '{0} oere',
+ 'hour-past-one' => '{0} oere lyn',
+ 'hour-past-other' => '{0} oere lyn',
+ 'millisecond-one' => '{0} millisekonde',
+ 'millisecond-other' => '{0} millisekonden',
+ 'minute-future-one' => 'Oer {0} minút',
+ 'minute-future-other' => 'Oer {0} minuten',
+ 'minute-one' => '{0} minút',
+ 'minute-other' => '{0} minuten',
+ 'minute-past-one' => '{0} minút lyn',
+ 'minute-past-other' => '{0} minuten lyn',
+ 'month-future-one' => 'Oer {0} moanne',
+ 'month-future-other' => 'Oer {0} moannen',
+ 'month-one' => '{0} moanne',
+ 'month-other' => '{0} moanneen',
+ 'month-past-one' => '{0} moanne lyn',
+ 'month-past-other' => '{0} moannen lyn',
+ 'second-future-one' => 'Oer {0} sekonde',
+ 'second-future-other' => 'Oer {0} sekonden',
+ 'second-one' => '{0} sekonde',
+ 'second-other' => '{0} sekonden',
+ 'second-past-one' => '{0} sekonde lyn',
+ 'second-past-other' => '{0} sekonden lyn',
+ 'week-future-one' => 'Oer {0} wike',
+ 'week-future-other' => 'Oer {0} wiken',
+ 'week-one' => '{0} wike',
+ 'week-other' => '{0} wiken',
+ 'week-past-one' => '{0} wike lyn',
+ 'week-past-other' => '{0} wiken lyn',
+ 'year-future-one' => 'Oer {0} jier',
+ 'year-future-other' => 'Oer {0} jier',
+ 'year-one' => '{0} jier',
+ 'year-other' => '{0} jier',
+ 'year-past-one' => '{0} jier lyn',
+ 'year-past-other' => '{0} jier lyn',
+);
diff --git a/MLEB/cldr/CldrNames/CldrNamesGa.php b/MLEB/cldr/CldrNames/CldrNamesGa.php
new file mode 100644
index 00000000..89b7ebc0
--- /dev/null
+++ b/MLEB/cldr/CldrNames/CldrNamesGa.php
@@ -0,0 +1,1345 @@
+<?php
+
+$languageNames = array(
+ 'aa' => 'Afáiris',
+ 'ab' => 'Abcáisis',
+ 'ae' => 'Aivéistis',
+ 'af' => 'Afracáinis',
+ 'ain' => 'Aidhniúis',
+ 'ak' => 'Acáinis',
+ 'akk' => 'Acáidis',
+ 'am' => 'Amáiris',
+ 'an' => 'Aragóinis',
+ 'ang' => 'Sean-Bhéarla',
+ 'ar' => 'Araibis',
+ 'ar-001' => 'Araibis Chaighdeánach',
+ 'arc' => 'Aramais',
+ 'arn' => 'Mapúitsis',
+ 'as' => 'Asaimis',
+ 'ast' => 'Astúiris',
+ 'av' => 'Aváiris',
+ 'ay' => 'Aidhmiris',
+ 'az' => 'Asarbaiseáinis',
+ 'ba' => 'Baiscíris',
+ 'ban' => 'Bailís',
+ 'bar' => 'Baváiris',
+ 'be' => 'Bealarúisis',
+ 'bem' => 'Beimbis',
+ 'bg' => 'Bulgáiris',
+ 'bi' => 'Bioslaimis',
+ 'bn' => 'Beangáilis',
+ 'bo' => 'Tibéidis',
+ 'br' => 'Briotáinis',
+ 'bs' => 'Boisnis',
+ 'bua' => 'Buiriáitis',
+ 'bug' => 'Buiginis',
+ 'ca' => 'Catalóinis',
+ 'ce' => 'Sisinis',
+ 'ceb' => 'Seabúáinis',
+ 'ch' => 'Seamóiris',
+ 'chm' => 'Mairis',
+ 'chr' => 'Seiricis',
+ 'co' => 'Corsaicis',
+ 'cop' => 'Coptais',
+ 'cr' => 'Craís',
+ 'cs' => 'Seicis',
+ 'csb' => 'Caisiúibis',
+ 'cu' => 'Slavais na hEaglaise',
+ 'cv' => 'Suvaisis',
+ 'cy' => 'Breatnais',
+ 'da' => 'Danmhairgis',
+ 'de' => 'Gearmáinis',
+ 'de-at' => 'Gearmáinis Ostarach',
+ 'de-ch' => 'Ard-Ghearmáinis Eilvéiseach',
+ 'dje' => 'Zarmais',
+ 'dsb' => 'Sorbais Íochtarach',
+ 'dum' => 'Meán-Ollainnis',
+ 'dv' => 'Divéihis',
+ 'dz' => 'Seoinicis',
+ 'egy' => 'Sean-Éigiptis',
+ 'el' => 'Gréigis',
+ 'en' => 'Béarla',
+ 'en-au' => 'Béarla Astrálach',
+ 'en-ca' => 'Béarla Ceanadach',
+ 'en-gb' => 'Béarla Briotanach',
+ 'en-us' => 'Béarla Meiriceánach',
+ 'enm' => 'Meán-Bhéarla',
+ 'eo' => 'Esperanto',
+ 'es' => 'Spáinnis',
+ 'es-419' => 'Spáinnis Mheiriceá Laidinigh',
+ 'es-es' => 'Spáinnis Eorpach',
+ 'es-mx' => 'Spáinnis Mheicsiceach',
+ 'et' => 'Eastóinis',
+ 'eu' => 'Bascais',
+ 'fa' => 'Peirsis',
+ 'ff' => 'Fuláinis',
+ 'fi' => 'Fionlainnis',
+ 'fil' => 'Filipínis',
+ 'fj' => 'Fidsis',
+ 'fo' => 'Faróis',
+ 'fr' => 'Fraincis',
+ 'fr-ca' => 'Fraincis Cheanadach',
+ 'fr-ch' => 'Fraincis Eilvéiseach',
+ 'frm' => 'Meán-Fhraincis',
+ 'fro' => 'Sean-Fhraincis',
+ 'frr' => 'Freaslainnis an Tuaiscirt',
+ 'fur' => 'Friúilis',
+ 'fy' => 'Freaslainnis Iartharach',
+ 'ga' => 'Gaeilge',
+ 'gd' => 'Gaeilge na hAlban',
+ 'gez' => 'Aetóipis',
+ 'gl' => 'Gailísis',
+ 'gmh' => 'Meán-Ard-Ghearmáinis',
+ 'gn' => 'Guaráinis',
+ 'goh' => 'Sean-Ard-Ghearmáinis',
+ 'grc' => 'Sean-Ghréigis',
+ 'gsw' => 'Gearmáinis Eilvéiseach',
+ 'gu' => 'Gúisearáitis',
+ 'guc' => 'Uaúis',
+ 'gv' => 'Manainnis',
+ 'ha' => 'Hásais',
+ 'hak' => 'Haicéis',
+ 'haw' => 'Haváis',
+ 'he' => 'Eabhrais',
+ 'hi' => 'Hiondúis',
+ 'hif' => 'Hiondúis Fhidsí',
+ 'hil' => 'Hilgeanóinis',
+ 'hit' => 'Hitis',
+ 'hmn' => 'Mongais',
+ 'ho' => 'Motúis Hírí',
+ 'hr' => 'Cróitis',
+ 'hsb' => 'Sorbais Uachtarach',
+ 'ht' => 'Criól Háítíoch',
+ 'hu' => 'Ungáiris',
+ 'hup' => 'Húipis',
+ 'hy' => 'Airméinis',
+ 'hz' => 'Heiréiris',
+ 'ia' => 'Interlingua',
+ 'ibb' => 'Ibibis',
+ 'id' => 'Indinéisis',
+ 'ie' => 'Interlingue',
+ 'ig' => 'Íogbóis',
+ 'ik' => 'Iniúipiaicis',
+ 'inh' => 'Iongúis',
+ 'io' => 'Ido',
+ 'is' => 'Íoslainnis',
+ 'it' => 'Iodáilis',
+ 'iu' => 'Ionúitis',
+ 'ja' => 'Seapáinis',
+ 'jut' => 'Iútlainnis',
+ 'jv' => 'Iáivis',
+ 'ka' => 'Seoirsis',
+ 'kaa' => 'Cara-Chalpáis',
+ 'kg' => 'Congóis',
+ 'ki' => 'Ciocúis',
+ 'kj' => 'Cuainiáimis',
+ 'kk' => 'Casaicis',
+ 'kl' => 'Kalaallisut',
+ 'km' => 'Ciméiris',
+ 'kn' => 'Cannadais',
+ 'ko' => 'Cóiréis',
+ 'kok' => 'Concáinis',
+ 'kr' => 'Canúiris',
+ 'krl' => 'Cairéilis',
+ 'kru' => 'Curúicis',
+ 'ks' => 'Caismíris',
+ 'ku' => 'Coirdis',
+ 'kv' => 'Coimis',
+ 'kw' => 'Coirnis',
+ 'ky' => 'Cirgisis',
+ 'la' => 'Laidin',
+ 'lad' => 'Laidínis',
+ 'lah' => 'Puinseáibis Iartharach',
+ 'lb' => 'Lucsambuirgis',
+ 'lg' => 'Lugandais',
+ 'lij' => 'Liogúiris',
+ 'liv' => 'Liovóinis',
+ 'lmo' => 'Lombairdis',
+ 'ln' => 'Liongáilis',
+ 'lo' => 'Laoisis',
+ 'lt' => 'Liotuáinis',
+ 'lu' => 'Lúba-Cataingis',
+ 'lv' => 'Laitvis',
+ 'men' => 'Meindis',
+ 'mg' => 'Malagáisis',
+ 'mga' => 'Meán-Ghaeilge',
+ 'mh' => 'Mairsillis',
+ 'mi' => 'Maorais',
+ 'mk' => 'Macadóinis',
+ 'ml' => 'Mailéalaimis',
+ 'mn' => 'Mongóilis',
+ 'mni' => 'Manapúiris',
+ 'moh' => 'Móháicis',
+ 'mr' => 'Maraitis',
+ 'mrj' => 'Mairis Iartharach',
+ 'ms' => 'Malaeis',
+ 'mt' => 'Máltais',
+ 'mwl' => 'Mioraindéis',
+ 'mwr' => 'Marmhairis',
+ 'my' => 'Burmais',
+ 'na' => 'Nárúis',
+ 'nb' => 'Ioruais Bokmål',
+ 'nd' => 'Ndeibéilis an Tuaiscirt',
+ 'nds' => 'Gearmáinis Íochtarach',
+ 'ne' => 'Neipeailis',
+ 'ng' => 'Ndongais',
+ 'niu' => 'Níobhais',
+ 'nl' => 'Ollainnis',
+ 'nl-be' => 'Pléimeannais',
+ 'nn' => 'Nua-Ioruais',
+ 'no' => 'Ioruais',
+ 'non' => 'Sean-Lochlainnis',
+ 'nr' => 'Ndeibéilis an Deiscirt',
+ 'nso' => 'Sútúis an Tuaiscirt',
+ 'nv' => 'Navachóis',
+ 'ny' => 'Siséivis',
+ 'oc' => 'Ocsatáinis',
+ 'oj' => 'Óisibis',
+ 'om' => 'Oraimis',
+ 'or' => 'Oirísis',
+ 'os' => 'Oiséitis',
+ 'pa' => 'Puinseáibis',
+ 'peo' => 'Sean-Pheirsis',
+ 'pi' => 'Páilis',
+ 'pl' => 'Polainnis',
+ 'prg' => 'Prúisis',
+ 'ps' => 'Paistis',
+ 'pt' => 'Portaingéilis',
+ 'pt-br' => 'Portaingéilis na Brasaíle',
+ 'pt-pt' => 'Portaingéilis Ibéarach',
+ 'qu' => 'Ceatsuais',
+ 'rm' => 'Rómainis',
+ 'rn' => 'Rúindis',
+ 'ro' => 'Rómáinis',
+ 'ro-md' => 'Moldáivis',
+ 'rom' => 'Romainis',
+ 'ru' => 'Rúisis',
+ 'rup' => 'Arómáinis',
+ 'rw' => 'Ciniaruaindis',
+ 'sa' => 'Sanscrait',
+ 'sah' => 'Sachais',
+ 'sam' => 'Aramais Shamárach',
+ 'sat' => 'Santáilis',
+ 'sc' => 'Sairdínis',
+ 'scn' => 'Sicilis',
+ 'sco' => 'Albainis',
+ 'sd' => 'Sindis',
+ 'se' => 'Sáimis Thuaidh',
+ 'sg' => 'Sangóis',
+ 'sga' => 'Sean-Ghaeilge',
+ 'sh' => 'Seirbea-Chróitis',
+ 'si' => 'Siolóinis',
+ 'sk' => 'Slóvaicis',
+ 'sl' => 'Slóivéinis',
+ 'sm' => 'Samóis',
+ 'smj' => 'Sáimis Lule',
+ 'sn' => 'Seoinis',
+ 'so' => 'Somáilis',
+ 'sog' => 'Sogdánais',
+ 'sq' => 'Albáinis',
+ 'sr' => 'Seirbis',
+ 'ss' => 'Suaisis',
+ 'st' => 'Seasóitis',
+ 'su' => 'Sundais',
+ 'sux' => 'Suiméiris',
+ 'sv' => 'Sualainnis',
+ 'sw' => 'Svahaílis',
+ 'swc' => 'Svahaílis an Chongó',
+ 'syr' => 'Siricis',
+ 'szl' => 'Siléisis',
+ 'ta' => 'Tamailis',
+ 'te' => 'Teileagúis',
+ 'tg' => 'Táidsícis',
+ 'th' => 'Téalainnis',
+ 'ti' => 'Tigrinis',
+ 'tk' => 'Tuircméinis',
+ 'tl' => 'Tagálaigis',
+ 'tlh' => 'Klingon',
+ 'tn' => 'Suáinis',
+ 'to' => 'Tongais',
+ 'tr' => 'Tuircis',
+ 'ts' => 'Songais',
+ 'tt' => 'Tatairis',
+ 'tw' => 'Tíbhis',
+ 'ty' => 'Taihítis',
+ 'udm' => 'Udmairtis',
+ 'ug' => 'Uigiúiris',
+ 'uk' => 'Úcráinis',
+ 'und' => 'Teanga Anaithnid',
+ 'ur' => 'Urdúis',
+ 'uz' => 'Úisbéiceastáinis',
+ 've' => 'Veindis',
+ 'vec' => 'Veinéisis',
+ 'vi' => 'Vítneaimis',
+ 'vls' => 'Pléimeannais Iartharach',
+ 'vo' => 'Volapük',
+ 'wa' => 'Vallúnais',
+ 'wo' => 'Volaifis',
+ 'xal' => 'Cailmícis',
+ 'xh' => 'Cóisis',
+ 'yi' => 'Giúdais',
+ 'yo' => 'Iarúibis',
+ 'yue' => 'Cantainis',
+ 'za' => 'Siuáingis',
+ 'zea' => 'Séalainnis',
+ 'zh' => 'Sínis',
+ 'zh-hans' => 'Sínis Shimplithe',
+ 'zh-hant' => 'Sínis Thraidisiúnta',
+ 'zu' => 'Súlúis',
+ 'zun' => 'Zúinis',
+ 'zxx' => 'Gan ábhar teangeolaíoch',
+);
+
+$currencyNames = array(
+ 'ADP' => 'Peseta Andóra',
+ 'AED' => 'Dirham Aontas na nÉimíríochtaí Arabacha',
+ 'AFA' => 'Afgainí (1927–2002)',
+ 'AFN' => 'Afghani na hAfganastáine',
+ 'ALK' => 'Lek na hAlbáine (1946–1965)',
+ 'ALL' => 'Lek na hAlbáine',
+ 'AMD' => 'Dram na hAirméine',
+ 'ANG' => 'Gildear Aintillí na hÍsiltíre',
+ 'AOA' => 'Kwanza Angóla',
+ 'AOK' => 'Kwanza Angólach (1977–1990)',
+ 'AON' => 'Kwanza Nua Angólach (1990–2000)',
+ 'AOR' => 'Kwanza Reajustado Angólach (1995–1999)',
+ 'ARA' => 'Austral Airgintíneach',
+ 'ARM' => 'Peso na hAirgintíne (1881–1970)',
+ 'ARP' => 'Peso na hAirgintíne (1983–1985)',
+ 'ARS' => 'Peso na hAirgintíne',
+ 'ATS' => 'Scilling Ostarach',
+ 'AUD' => 'Dollar na hAstráile',
+ 'AWG' => 'Flóirín Arúba',
+ 'AZM' => 'Manat na hAsarbaiseáine (1993–2006)',
+ 'AZN' => 'Manat na hAsarbaiseáine',
+ 'BAD' => 'Dínear Bhoisnia-Heirseagaivéin',
+ 'BAM' => 'Marg Inmhalartaithe na Boisnia-Heirseagaivéine',
+ 'BBD' => 'Dollar Bharbadós',
+ 'BDT' => 'Taka na Banglaidéise',
+ 'BEC' => 'Franc Beilgeach (inathraithe)',
+ 'BEF' => 'Franc Beilgeach',
+ 'BEL' => 'Franc Beilgeach (airgeadúil)',
+ 'BGL' => 'Lev Crua na Bulgáire',
+ 'BGN' => 'Lev na Bulgáire',
+ 'BGO' => 'Lev na Bulgáire (1879–1952)',
+ 'BHD' => 'Dinar Bhairéin',
+ 'BIF' => 'Franc na Burúine',
+ 'BMD' => 'Dollar Bheirmiúda',
+ 'BND' => 'Dollar Bhrúiné',
+ 'BOB' => 'Boliviano',
+ 'BOP' => 'Peso na Bolaive',
+ 'BOV' => 'Mvdol na Bolaive',
+ 'BRB' => 'Cruzeiro Nua na Brasaíle (1967–1986)',
+ 'BRC' => 'Cruzado na Brasaíle (1986–1989)',
+ 'BRE' => 'Cruzeiro na Brasaíle (1990–1993)',
+ 'BRL' => 'Real na Brasaíle',
+ 'BRN' => 'Cruzado Nua na Brasaíle (1989–1990)',
+ 'BRR' => 'Cruzeiro na Brasaíle (1993–1994)',
+ 'BRZ' => 'Cruzeiro na Brasaíle (1942–1967)',
+ 'BSD' => 'Dollar na mBahámaí',
+ 'BTN' => 'Ngultrum na Bútáine',
+ 'BUK' => 'Kyat Bhurma',
+ 'BWP' => 'Pula na Botsuáine',
+ 'BYB' => 'Rúbal Nua na Bealarúise (1994–1999)',
+ 'BYR' => 'Rúbal na Bealarúise',
+ 'BZD' => 'Dollar na Beilíse',
+ 'CAD' => 'Dollar Cheanada',
+ 'CDF' => 'Franc an Chongó',
+ 'CHF' => 'Franc na hEilvéise',
+ 'CLE' => 'Escudo na Sile',
+ 'CLF' => 'Unidades de Fomento na Sile',
+ 'CLP' => 'Peso na Sile',
+ 'CNY' => 'Yuan na Síne',
+ 'COP' => 'Peso na Colóime',
+ 'CRC' => 'Colón Chósta Ríce',
+ 'CSD' => 'Dinar na Seirbia (2002–2006)',
+ 'CSK' => 'Koruna Crua na Seicslóvaice',
+ 'CUC' => 'Peso Inmhalartaithe Chúba',
+ 'CUP' => 'Peso Chúba',
+ 'CVE' => 'Escudo Rinn Verde',
+ 'CYP' => 'Punt na Cipire',
+ 'CZK' => 'Koruna Phoblacht na Seice',
+ 'DDM' => 'Ostmark na hOirGhearmáine',
+ 'DEM' => 'Deutsche Mark',
+ 'DJF' => 'Franc Djibouti',
+ 'DKK' => 'Coróin na Danmhairge',
+ 'DOP' => 'Peso na Poblachta Doiminicí',
+ 'DZD' => 'Dinar na hAilgéire',
+ 'ECS' => 'Sucre Eacuadóir',
+ 'ECV' => 'Unidad de Valor Constante (UVC) Eacuadóir',
+ 'EEK' => 'Kroon na hEastóine',
+ 'EGP' => 'Punt na hÉigipte',
+ 'ERN' => 'Nakfa na hEiritré',
+ 'ESP' => 'Peseta na Spáinne',
+ 'ETB' => 'Birr na hAetóipe',
+ 'EUR' => 'Euro',
+ 'FIM' => 'Markka Fionnlannach',
+ 'FJD' => 'Dollar Fhidsí',
+ 'FKP' => 'Punt Oileáin Fháclainne',
+ 'FRF' => 'Franc Francach',
+ 'GBP' => 'Punt Steirling',
+ 'GEK' => 'Kupon Larit na Grúise',
+ 'GEL' => 'Lari na Seoirsia',
+ 'GHC' => 'Cedi Ghána (1979–2007)',
+ 'GHS' => 'Cedi Ghána',
+ 'GIP' => 'Punt Ghiobráltar',
+ 'GMD' => 'Dalasi na Gaimbia',
+ 'GNF' => 'Franc na Guine',
+ 'GNS' => 'Syli Guine',
+ 'GQE' => 'Ekwele Guineana na Guine Meánchriosaí',
+ 'GRD' => 'Drachma Gréagach',
+ 'GTQ' => 'Quetzal Ghuatamala',
+ 'GWE' => 'Escudo na Guine Portaingéalaí',
+ 'GWP' => 'Peso Guine-Bhissau',
+ 'GYD' => 'Dollar na Guáine',
+ 'HKD' => 'Dollar Hong Cong',
+ 'HNL' => 'Lempira Hondúras',
+ 'HRD' => 'Dínear na Cróite',
+ 'HRK' => 'Kuna na Cróite',
+ 'HTG' => 'Gourde Háítí',
+ 'HUF' => 'Forint na hUngáire',
+ 'IDR' => 'Rupiah na hIndinéise',
+ 'IEP' => 'Punt Éireannach',
+ 'ILP' => 'Punt Iosraelach',
+ 'ILS' => 'Seiceal Nua Iosrael',
+ 'INR' => 'Rúipí na hIndia',
+ 'IQD' => 'Dinar na hIaráice',
+ 'IRR' => 'Rial na hIaráine',
+ 'ISK' => 'Króna na hÍoslainne',
+ 'ITL' => 'Lira na hIodáile',
+ 'JMD' => 'Dollar na hIamáice',
+ 'JOD' => 'Dinar na hIordáine',
+ 'JPY' => 'Yen na Seapáine',
+ 'KES' => 'Scilling na Céinia',
+ 'KGS' => 'Som na Cirgeastáine',
+ 'KHR' => 'Riel na Cambóide',
+ 'KMF' => 'Franc Oileáin Chomóra',
+ 'KPW' => 'Won na Cóiré Thuaidh',
+ 'KRW' => 'Won na Cóiré Theas',
+ 'KWD' => 'Dinar Chuáit',
+ 'KYD' => 'Dollar Oileáin Cayman',
+ 'KZT' => 'Tenge na Casacstáine',
+ 'LAK' => 'Kip Laos',
+ 'LBP' => 'Punt na Liobáine',
+ 'LKR' => 'Rúipí Shrí Lanca',
+ 'LRD' => 'Dollar na Libéire',
+ 'LSL' => 'Loti Leosóta',
+ 'LTL' => 'Litas na Liotuáine',
+ 'LTT' => 'Talonas Liotuánach',
+ 'LUF' => 'Franc Lucsamburg',
+ 'LVL' => 'Lats na Laitvia',
+ 'LVR' => 'Rúbal Laitviach',
+ 'LYD' => 'Dinar na Libia',
+ 'MAD' => 'Dirham Mharacó',
+ 'MAF' => 'Franc Mharacó',
+ 'MDL' => 'Leu na Moldóive',
+ 'MGA' => 'Ariary Mhadagascar',
+ 'MGF' => 'Franc Madagascar',
+ 'MKD' => 'Denar na Macadóine',
+ 'MLF' => 'Franc Mhailí',
+ 'MMK' => 'Kyat Mhaenmar',
+ 'MNT' => 'Tugrik na Mongóile',
+ 'MOP' => 'Pataca Mhacao',
+ 'MRO' => 'Ouguiya na Máratáine',
+ 'MTL' => 'Lira Mhálta',
+ 'MTP' => 'Punt Mhálta',
+ 'MUR' => 'Rúipí Oileán Mhuirís',
+ 'MVP' => 'Rúipí Oileáin Mhaildíve',
+ 'MVR' => 'Rufiyaa Oileáin Mhaildíve',
+ 'MWK' => 'Kwacha na Maláive',
+ 'MXN' => 'Peso Mheicsiceo',
+ 'MXP' => 'Peso Airgid Mheicsiceo (1861–1992)',
+ 'MXV' => 'Unidad de Inversion (UDI) Meicsiceo',
+ 'MYR' => 'Ringgit na Malaeisia',
+ 'MZE' => 'Escudo Mósaimbíce',
+ 'MZM' => 'Metical Mósaimbíce',
+ 'MZN' => 'Metical Mhósaimbíc',
+ 'NAD' => 'Dollar na Namaibe',
+ 'NGN' => 'Naira na Nigéire',
+ 'NIC' => 'Córdoba Nicearagua (1988–1991)',
+ 'NIO' => 'Córdoba Nicearagua',
+ 'NLG' => 'Guilder Ísiltíreach',
+ 'NOK' => 'Coróin na hIorua',
+ 'NPR' => 'Rúipí Neipeal',
+ 'NZD' => 'Dollar na Nua-Shéalainne',
+ 'OMR' => 'Rial Óman',
+ 'PAB' => 'Balboa Phanama',
+ 'PEI' => 'Inti Pheiriú',
+ 'PEN' => 'Nuevo Sol Pheiriú',
+ 'PES' => 'Sol Pheiriú (1863–1965)',
+ 'PGK' => 'Kina Nua-Ghuine Phapua',
+ 'PHP' => 'Peso na nOileán Filipíneach',
+ 'PKR' => 'Rúipí na Pacastáine',
+ 'PLN' => 'Zloty na Polainne',
+ 'PLZ' => 'Zloty Polannach (1950–1995)',
+ 'PTE' => 'Escudo na Portaingéile',
+ 'PYG' => 'Guaraní Pharagua',
+ 'QAR' => 'Riyal Chatar',
+ 'ROL' => 'Leu na Rómáine (1952–2006)',
+ 'RON' => 'Leu na Rómáine',
+ 'RSD' => 'Dinar na Seirbia',
+ 'RUB' => 'Rúbal na Rúise',
+ 'RUR' => 'Rúbal na Rúise (1991–1998)',
+ 'RWF' => 'Franc Ruanda',
+ 'SAR' => 'Riyal na hAraibe Sádaí',
+ 'SBD' => 'Dollar Oileáin Sholomón',
+ 'SCR' => 'Rúipí na Séiséal',
+ 'SDD' => 'Dinar na Súdáine (1992–2007)',
+ 'SDG' => 'Punt na Súdáine',
+ 'SDP' => 'Punt na Súdáine (1957–1998)',
+ 'SEK' => 'Coróin na Sualainne',
+ 'SGD' => 'Dollar Shingeapór',
+ 'SHP' => 'Punt San Héilin',
+ 'SIT' => 'Tolar na Slóivéine',
+ 'SKK' => 'Koruna na Slóvaice',
+ 'SLL' => 'Leone Shiarra Leon',
+ 'SOS' => 'Scilling na Somáile',
+ 'SRD' => 'Dollar Shuranam',
+ 'SRG' => 'Gildear Shuranam',
+ 'SSP' => 'Punt na Súdáine Theas',
+ 'STD' => 'Dobra São Tomé agus Príncipe',
+ 'SUR' => 'Rúbal an Aontais Shóivéadaigh',
+ 'SVC' => 'Colón na Salvadóire',
+ 'SYP' => 'Punt na Siria',
+ 'SZL' => 'Lilangeni na Suasalainne',
+ 'THB' => 'Baht na Téalainne',
+ 'TJR' => 'Rúbal na Táidsíceastáine',
+ 'TJS' => 'Somoni na Táidsíceastáine',
+ 'TMM' => 'Manat na An Tuircméanastáine',
+ 'TMT' => 'Manat na Tuircméanastáine',
+ 'TND' => 'Dinar na Túinéise',
+ 'TOP' => 'Paʻanga Thonga',
+ 'TPE' => 'Escudo Tíomóir',
+ 'TRL' => 'Lira na Tuirce (1922–2005)',
+ 'TRY' => 'Lira na Tuirce',
+ 'TTD' => 'Dollar Oileán na Tríonóide agus Tobága',
+ 'TWD' => 'Dollar Nua na Téaváine',
+ 'TZS' => 'Scilling na Tansáine',
+ 'UAH' => 'Hryvnia na hÚcráine',
+ 'UAK' => 'Karbovanetz Úcránach',
+ 'UGS' => 'Scilling Uganda (1966–1987)',
+ 'UGX' => 'Scilling Uganda',
+ 'USD' => 'Dollar S.A.M.',
+ 'USN' => 'Dollar S.A.M. (an chéad lá eile)',
+ 'USS' => 'Dollar S.A.M. (an lá céanna)',
+ 'UYP' => 'Peso Uragua (1975–1993)',
+ 'UYU' => 'Peso Uragua',
+ 'UZS' => 'Sum na hÚisbéiceastáine',
+ 'VEB' => 'Bolívar Veiniséala (1871–2008)',
+ 'VEF' => 'Bolívar Veiniséala',
+ 'VND' => 'Dong Vítneam',
+ 'VNN' => 'Dong Vítneam (1978–1985)',
+ 'VUV' => 'Vatu Vanuatú',
+ 'WST' => 'Tala Shamó',
+ 'XAF' => 'Franc CFA na hAfraice Láir',
+ 'XAG' => 'Airgead',
+ 'XAU' => 'Ór',
+ 'XBA' => 'Aonad Ilchodach Eorpach',
+ 'XBB' => 'Aonad Airgeadaíochta Eorpach',
+ 'XBC' => 'Aonad Cuntais Eorpach (XBC)',
+ 'XBD' => 'Aonad Cuntais Eorpach (XBD)',
+ 'XCD' => 'Dollar na Cairibe Thoir',
+ 'XDR' => 'Cearta Speisialta Tarraingthe',
+ 'XEU' => 'Aonad Airgeadra Eorpach',
+ 'XFO' => 'Franc Ór Francach',
+ 'XFU' => 'UIC-Franc Francach',
+ 'XOF' => 'Franc CFA Iarthar na hAfraice',
+ 'XPD' => 'Pallaidiam',
+ 'XPF' => 'Franc CFP',
+ 'XPT' => 'Platanam',
+ 'XXX' => 'Airgeadra Anaithnid',
+ 'YDD' => 'Dínear Éimin',
+ 'YER' => 'Rial Éimin',
+ 'YUD' => 'Dínear Crua Iúgslavach',
+ 'YUM' => 'Noviy Dinar Iúgslavach',
+ 'YUN' => 'Dínear Inathraithe Iúgslavach',
+ 'ZAL' => 'Rand na hAfraice Theas (airgeadúil)',
+ 'ZAR' => 'Rand na hAfraice Theas',
+ 'ZMK' => 'Kwacha Saimbiach (1968–2012)',
+ 'ZMW' => 'Kwacha na Saimbia',
+ 'ZRN' => 'Zaire Nua Sáíreach',
+ 'ZRZ' => 'Zaire Sáíreach',
+ 'ZWD' => 'Dollar Siombábach',
+);
+
+$currencySymbols = array(
+ 'ADP' => 'ADP',
+ 'AED' => 'AED',
+ 'AFN' => 'AFN',
+ 'ALL' => 'ALL',
+ 'AMD' => 'AMD',
+ 'ANG' => 'ANG',
+ 'AOA' => 'AOA',
+ 'ARA' => 'ARA',
+ 'ARM' => 'ARM',
+ 'ARP' => 'ARP',
+ 'ARS' => 'ARS',
+ 'AUD' => 'A$',
+ 'AWG' => 'AWG',
+ 'AZM' => 'AZM',
+ 'AZN' => 'AZN',
+ 'BAD' => 'BAD',
+ 'BAM' => 'BAM',
+ 'BBD' => 'BBD',
+ 'BDT' => 'BDT',
+ 'BGL' => 'BGL',
+ 'BGN' => 'BGN',
+ 'BGO' => 'BGO',
+ 'BHD' => 'BHD',
+ 'BIF' => 'BIF',
+ 'BMD' => 'BMD',
+ 'BND' => 'BND',
+ 'BOB' => 'BOB',
+ 'BOP' => 'BOP',
+ 'BOV' => 'BOV',
+ 'BRB' => 'BRB',
+ 'BRC' => 'BRC',
+ 'BRE' => 'BRE',
+ 'BRL' => 'R$',
+ 'BRN' => 'BRN',
+ 'BRR' => 'BRR',
+ 'BRZ' => 'BRZ',
+ 'BSD' => 'BSD',
+ 'BTN' => 'BTN',
+ 'BUK' => 'BUK',
+ 'BWP' => 'BWP',
+ 'BYB' => 'BYB',
+ 'BYR' => 'BYR',
+ 'BZD' => 'BZD',
+ 'CAD' => 'CA$',
+ 'CDF' => 'CDF',
+ 'CHF' => 'CHF',
+ 'CLE' => 'CLE',
+ 'CLF' => 'CLF',
+ 'CLP' => 'CLP',
+ 'CNY' => 'CN¥',
+ 'COP' => 'COP',
+ 'CRC' => 'CRC',
+ 'CSD' => 'CSD',
+ 'CSK' => 'CSK',
+ 'CUC' => 'CUC',
+ 'CUP' => 'CUP',
+ 'CVE' => 'CVE',
+ 'CYP' => 'CYP',
+ 'CZK' => 'CZK',
+ 'DJF' => 'DJF',
+ 'DKK' => 'DKK',
+ 'DOP' => 'DOP',
+ 'DZD' => 'DZD',
+ 'ECS' => 'ECS',
+ 'ECV' => 'ECV',
+ 'EGP' => 'EGP',
+ 'ERN' => 'ERN',
+ 'ESP' => 'ESP',
+ 'ETB' => 'ETB',
+ 'EUR' => '€',
+ 'FJD' => 'FJD',
+ 'FKP' => 'FKP',
+ 'GBP' => '£',
+ 'GEL' => 'GEL',
+ 'GHC' => 'GHC',
+ 'GHS' => 'GHS',
+ 'GIP' => 'GIP',
+ 'GMD' => 'GMD',
+ 'GNF' => 'GNF',
+ 'GQE' => 'GQE',
+ 'GRD' => 'GRD',
+ 'GTQ' => 'GTQ',
+ 'GYD' => 'GYD',
+ 'HKD' => 'HK$',
+ 'HNL' => 'HNL',
+ 'HRK' => 'HRK',
+ 'HTG' => 'HTG',
+ 'HUF' => 'HUF',
+ 'IDR' => 'IDR',
+ 'ILS' => '₪',
+ 'INR' => '₹',
+ 'IQD' => 'IQD',
+ 'IRR' => 'IRR',
+ 'ISK' => 'ISK',
+ 'ITL' => 'ITL',
+ 'JMD' => 'JMD',
+ 'JOD' => 'JOD',
+ 'JPY' => '¥',
+ 'KES' => 'KES',
+ 'KGS' => 'KGS',
+ 'KHR' => 'KHR',
+ 'KMF' => 'KMF',
+ 'KPW' => 'KPW',
+ 'KRW' => '₩',
+ 'KWD' => 'KWD',
+ 'KYD' => 'KYD',
+ 'KZT' => 'KZT',
+ 'LAK' => 'LAK',
+ 'LBP' => 'LBP',
+ 'LKR' => 'LKR',
+ 'LRD' => 'LRD',
+ 'LTL' => 'LTL',
+ 'LVL' => 'LVL',
+ 'LYD' => 'LYD',
+ 'MAD' => 'MAD',
+ 'MAF' => 'MAF',
+ 'MDL' => 'MDL',
+ 'MGA' => 'MGA',
+ 'MKD' => 'MKD',
+ 'MMK' => 'MMK',
+ 'MNT' => 'MNT',
+ 'MOP' => 'MOP',
+ 'MRO' => 'MRO',
+ 'MTL' => 'MTL',
+ 'MTP' => 'MTP',
+ 'MUR' => 'MUR',
+ 'MVR' => 'MVR',
+ 'MWK' => 'MWK',
+ 'MXN' => 'MX$',
+ 'MXP' => 'MXP',
+ 'MXV' => 'MXV',
+ 'MYR' => 'MYR',
+ 'MZN' => 'MZN',
+ 'NAD' => 'NAD',
+ 'NGN' => 'NGN',
+ 'NIC' => 'NIC',
+ 'NIO' => 'NIO',
+ 'NOK' => 'NOK',
+ 'NPR' => 'NPR',
+ 'NZD' => 'NZ$',
+ 'OMR' => 'OMR',
+ 'PAB' => 'PAB',
+ 'PEI' => 'PEI',
+ 'PEN' => 'PEN',
+ 'PES' => 'PES',
+ 'PGK' => 'PGK',
+ 'PHP' => 'PHP',
+ 'PKR' => 'PKR',
+ 'PLN' => 'PLN',
+ 'PTE' => 'PTE',
+ 'PYG' => 'PYG',
+ 'QAR' => 'QAR',
+ 'ROL' => 'ROL',
+ 'RON' => 'RON',
+ 'RSD' => 'RSD',
+ 'RUB' => 'RUB',
+ 'RUR' => 'RUR',
+ 'RWF' => 'RWF',
+ 'SAR' => 'SAR',
+ 'SBD' => 'SBD',
+ 'SCR' => 'SCR',
+ 'SDD' => 'SDD',
+ 'SDG' => 'SDG',
+ 'SDP' => 'SDP',
+ 'SEK' => 'SEK',
+ 'SGD' => 'SGD',
+ 'SHP' => 'SHP',
+ 'SIT' => 'SIT',
+ 'SKK' => 'SKK',
+ 'SLL' => 'SLL',
+ 'SOS' => 'SOS',
+ 'SRD' => 'SRD',
+ 'SRG' => 'SRG',
+ 'SSP' => 'SSP',
+ 'STD' => 'STD',
+ 'SUR' => 'SUR',
+ 'SVC' => 'SVC',
+ 'SYP' => 'SYP',
+ 'SZL' => 'SZL',
+ 'THB' => '฿',
+ 'TJS' => 'TJS',
+ 'TMT' => 'TMT',
+ 'TND' => 'TND',
+ 'TOP' => 'TOP',
+ 'TRL' => 'TRL',
+ 'TRY' => 'TRY',
+ 'TTD' => 'TTD',
+ 'TWD' => 'NT$',
+ 'TZS' => 'TZS',
+ 'UAH' => 'UAH',
+ 'UGX' => 'UGX',
+ 'USD' => '$',
+ 'USN' => 'USN',
+ 'USS' => 'USS',
+ 'UYP' => 'UYP',
+ 'UYU' => 'UYU',
+ 'UZS' => 'UZS',
+ 'VEB' => 'VEB',
+ 'VEF' => 'VEF',
+ 'VND' => '₫',
+ 'VNN' => 'VNN',
+ 'VUV' => 'VUV',
+ 'WST' => 'WST',
+ 'XAF' => 'FCFA',
+ 'XAG' => 'XAG',
+ 'XAU' => 'XAU',
+ 'XBB' => 'XBB',
+ 'XBC' => 'XBC',
+ 'XCD' => 'EC$',
+ 'XDR' => 'XDR',
+ 'XFO' => 'XFO',
+ 'XOF' => 'CFA',
+ 'XPD' => 'XPD',
+ 'XPF' => 'CFPF',
+ 'XPT' => 'XPT',
+ 'XXX' => 'XXX',
+ 'YDD' => 'YDD',
+ 'YER' => 'YER',
+ 'YUD' => 'YUD',
+ 'YUM' => 'YUM',
+ 'YUN' => 'YUN',
+ 'ZAR' => 'ZAR',
+ 'ZMW' => 'ZMW',
+ 'ZRZ' => 'ZRZ',
+);
+
+$countryNames = array(
+ 'AC' => 'Oileán na Deascabhála',
+ 'AD' => 'Andóra',
+ 'AE' => 'Aontas na nÉimíríochtaí Arabacha',
+ 'AF' => 'An Afganastáin',
+ 'AG' => 'Antigua agus Barbúda',
+ 'AI' => 'Angaíle',
+ 'AL' => 'An Albáin',
+ 'AM' => 'An Airméin',
+ 'AN' => 'Aintillí na hÍsiltíre',
+ 'AO' => 'Angóla',
+ 'AQ' => 'An Antartaice',
+ 'AR' => 'An Airgintín',
+ 'AS' => 'Samó Meiriceánach',
+ 'AT' => 'An Ostair',
+ 'AU' => 'An Astráil',
+ 'AW' => 'Arúba',
+ 'AX' => 'Oileáin Åland',
+ 'AZ' => 'An Asarbaiseáin',
+ 'BA' => 'An Bhoisnia agus An Heirseagaivéin',
+ 'BB' => 'Barbadós',
+ 'BD' => 'An Bhanglaidéis',
+ 'BE' => 'An Bheilg',
+ 'BF' => 'Buircíne Fasó',
+ 'BG' => 'An Bhulgáir',
+ 'BH' => 'Bairéin',
+ 'BI' => 'An Bhurúin',
+ 'BJ' => 'Beinin',
+ 'BL' => 'Saint Barthélemy',
+ 'BM' => 'Beirmiúda',
+ 'BN' => 'Brúiné',
+ 'BO' => 'An Bholaiv',
+ 'BQ' => 'An Ísiltír Chairibeach',
+ 'BR' => 'An Bhrasaíl',
+ 'BS' => 'Na Bahámaí',
+ 'BT' => 'An Bhútáin',
+ 'BV' => 'Oileán Bouvet',
+ 'BW' => 'An Bhotsuáin',
+ 'BY' => 'An Bhealarúis',
+ 'BZ' => 'An Bheilís',
+ 'CA' => 'Ceanada',
+ 'CC' => 'Oileáin Cocos (Keeling)',
+ 'CD' => 'Poblacht Dhaonlathach an Chongó',
+ 'CF' => 'Poblacht na hAfraice Láir',
+ 'CG' => 'An Congó',
+ 'CH' => 'An Eilvéis',
+ 'CI' => 'An Cósta Eabhair',
+ 'CK' => 'Oileáin Cook',
+ 'CL' => 'An tSile',
+ 'CM' => 'Camarún',
+ 'CN' => 'An tSín',
+ 'CO' => 'An Cholóim',
+ 'CP' => 'Oileán Clipperton',
+ 'CR' => 'Cósta Ríce',
+ 'CU' => 'Cúba',
+ 'CV' => 'Rinn Verde',
+ 'CW' => 'Curaçao',
+ 'CX' => 'Oileán na Nollag',
+ 'CY' => 'An Chipir',
+ 'CZ' => 'Poblacht na Seice',
+ 'DE' => 'An Ghearmáin',
+ 'DG' => 'Diego Garcia',
+ 'DJ' => 'Djibouti',
+ 'DK' => 'An Danmhairg',
+ 'DM' => 'Doiminice',
+ 'DO' => 'An Phoblacht Dhoiminiceach',
+ 'DZ' => 'An Ailgéir',
+ 'EA' => 'Ceuta agus Melilla',
+ 'EC' => 'Eacuadór',
+ 'EE' => 'An Eastóin',
+ 'EG' => 'An Éigipt',
+ 'EH' => 'An Sahára Thiar',
+ 'ER' => 'An Eiritré',
+ 'ES' => 'An Spáinn',
+ 'ET' => 'An Aetóip',
+ 'EU' => 'An tAontas Eorpach',
+ 'FI' => 'An Fhionlainn',
+ 'FJ' => 'Fidsí',
+ 'FK' => 'Oileáin Fháclainne',
+ 'FM' => 'An Mhicrinéis',
+ 'FO' => 'Oileáin Fharó',
+ 'FR' => 'An Fhrainc',
+ 'GA' => 'An Ghabúin',
+ 'GB' => 'RA',
+ 'GD' => 'Greanáda',
+ 'GE' => 'An tSeoirsia',
+ 'GF' => 'Guáin na Fraince',
+ 'GG' => 'Geansaí',
+ 'GH' => 'Gána',
+ 'GI' => 'Giobráltar',
+ 'GL' => 'An Ghraonlainn',
+ 'GM' => 'An Ghaimbia',
+ 'GN' => 'An Ghuine',
+ 'GP' => 'Guadalúip',
+ 'GQ' => 'An Ghuine Mheánchriosach',
+ 'GR' => 'An Ghréig',
+ 'GS' => 'An tSeoirsia Theas agus Oileáin Sandwich Theas',
+ 'GT' => 'Guatamala',
+ 'GU' => 'Guam',
+ 'GW' => 'Guine Bissau',
+ 'GY' => 'An Ghuáin',
+ 'HK' => 'Hong Cong',
+ 'HM' => 'Oileán Heard agus Oileáin McDonald',
+ 'HN' => 'Hondúras',
+ 'HR' => 'An Chróit',
+ 'HT' => 'Háítí',
+ 'HU' => 'An Ungáir',
+ 'IC' => 'Na hOileáin Chanáracha',
+ 'ID' => 'An Indinéis',
+ 'IE' => 'Éire',
+ 'IL' => 'Iosrael',
+ 'IM' => 'Oileán Mhanann',
+ 'IN' => 'An India',
+ 'IO' => 'Críoch Aigéan Indiach na Breataine',
+ 'IQ' => 'An Iaráic',
+ 'IR' => 'An Iaráin',
+ 'IS' => 'An Íoslainn',
+ 'IT' => 'An Iodáil',
+ 'JE' => 'Geirsí',
+ 'JM' => 'Iamáice',
+ 'JO' => 'An Iordáin',
+ 'JP' => 'An tSeapáin',
+ 'KE' => 'An Chéinia',
+ 'KG' => 'An Chirgeastáin',
+ 'KH' => 'An Chambóid',
+ 'KI' => 'Cireabaití',
+ 'KM' => 'Oileáin Chomóra',
+ 'KN' => 'San Críostóir-Nimheas',
+ 'KP' => 'An Chóiré Thuaidh',
+ 'KR' => 'An Chóiré Theas',
+ 'KW' => 'Cuáit',
+ 'KY' => 'Oileáin Cayman',
+ 'KZ' => 'An Chasacstáin',
+ 'LA' => 'Laos',
+ 'LB' => 'An Liobáin',
+ 'LC' => 'Saint Lucia',
+ 'LI' => 'Lichtinstéin',
+ 'LK' => 'Srí Lanca',
+ 'LR' => 'An Libéir',
+ 'LS' => 'Leosóta',
+ 'LT' => 'An Liotuáin',
+ 'LU' => 'Lucsamburg',
+ 'LV' => 'An Laitvia',
+ 'LY' => 'An Libia',
+ 'MA' => 'Maracó',
+ 'MC' => 'Monacó',
+ 'MD' => 'An Mholdóiv',
+ 'ME' => 'Montainéagró',
+ 'MF' => 'Saint-Martin',
+ 'MG' => 'Madagascar',
+ 'MH' => 'Oileáin Marshall',
+ 'MK' => 'An Mhacadóin',
+ 'ML' => 'Mailí',
+ 'MM' => 'Maenmar (Burma)',
+ 'MN' => 'An Mhongóil',
+ 'MO' => 'Macao',
+ 'MP' => 'Na hOileáin Mháirianacha Thuaidh',
+ 'MQ' => 'Martinique',
+ 'MR' => 'An Mháratáin',
+ 'MS' => 'Montsarat',
+ 'MT' => 'Málta',
+ 'MU' => 'Oileán Mhuirís',
+ 'MV' => 'Oileáin Mhaildíve',
+ 'MW' => 'An Mhaláiv',
+ 'MX' => 'Meicsiceo',
+ 'MY' => 'An Mhalaeisia',
+ 'MZ' => 'Mósaimbíc',
+ 'NA' => 'An Namaib',
+ 'NC' => 'An Nua-Chaladóin',
+ 'NE' => 'An Nígir',
+ 'NF' => 'Oileán Norfolk',
+ 'NG' => 'An Nigéir',
+ 'NI' => 'Nicearagua',
+ 'NL' => 'An Ísiltír',
+ 'NO' => 'An Iorua',
+ 'NP' => 'Neipeal',
+ 'NR' => 'Nárú',
+ 'NU' => 'Niue',
+ 'NZ' => 'An Nua-Shéalainn',
+ 'OM' => 'Óman',
+ 'PA' => 'Panama',
+ 'PE' => 'Peiriú',
+ 'PF' => 'Polainéis na Fraince',
+ 'PG' => 'Nua-Ghuine Phapua',
+ 'PH' => 'Na hOileáin Fhilipíneacha',
+ 'PK' => 'An Phacastáin',
+ 'PL' => 'An Pholainn',
+ 'PM' => 'Saint-Pierre-et-Miquelon',
+ 'PN' => 'Oileáin Pitcairn',
+ 'PR' => 'Portó Ríce',
+ 'PS' => 'An Phalaistín',
+ 'PT' => 'An Phortaingéil',
+ 'PW' => 'Palau',
+ 'PY' => 'Paragua',
+ 'QA' => 'Catar',
+ 'QO' => 'An Aigéine Imeallach',
+ 'RE' => 'Réunion',
+ 'RO' => 'An Rómáin',
+ 'RS' => 'An tSeirbia',
+ 'RU' => 'An Rúis',
+ 'RW' => 'Ruanda',
+ 'SA' => 'An Araib Shádach',
+ 'SB' => 'Oileáin Sholomón',
+ 'SC' => 'Na Séiséil',
+ 'SD' => 'An tSúdáin',
+ 'SE' => 'An tSualainn',
+ 'SG' => 'Singeapór',
+ 'SH' => 'San Héilin',
+ 'SI' => 'An tSlóivéin',
+ 'SJ' => 'Svalbard agus Jan Mayen',
+ 'SK' => 'An tSlóvaic',
+ 'SL' => 'Siarra Leon',
+ 'SM' => 'San Mairíne',
+ 'SN' => 'An tSeineagáil',
+ 'SO' => 'An tSomáil',
+ 'SR' => 'Suranam',
+ 'SS' => 'An tSúdáin Theas',
+ 'ST' => 'São Tomé agus Príncipe',
+ 'SV' => 'An tSalvadóir',
+ 'SX' => 'Sint Maarten',
+ 'SY' => 'An tSiria',
+ 'SZ' => 'An tSuasalainn',
+ 'TA' => 'Tristan da Cunha',
+ 'TC' => 'Oileáin na dTurcach agus Caicos',
+ 'TD' => 'Sead',
+ 'TF' => 'Críocha Francacha Dheisceart an Domhain',
+ 'TG' => 'Tóga',
+ 'TH' => 'An Téalainn',
+ 'TJ' => 'An Táidsíceastáin',
+ 'TK' => 'Tócalá',
+ 'TL' => 'Tíomór Thoir',
+ 'TM' => 'An Tuircméanastáin',
+ 'TN' => 'An Túinéis',
+ 'TO' => 'Tonga',
+ 'TR' => 'An Tuirc',
+ 'TT' => 'Oileán na Tríonóide agus Tobága',
+ 'TV' => 'Tuvalu',
+ 'TW' => 'An Téaváin',
+ 'TZ' => 'An Tansáin',
+ 'UA' => 'An Úcráin',
+ 'UG' => 'Uganda',
+ 'UM' => 'Oileáin Imeallacha S.A.M.',
+ 'US' => 'SAM',
+ 'UY' => 'Urugua',
+ 'UZ' => 'An Úisbéiceastáin',
+ 'VA' => 'An Vatacáin',
+ 'VC' => 'San Uinseann agus na Greanáidíní',
+ 'VE' => 'Veiniséala',
+ 'VG' => 'Oileáin Bhriotanacha na Maighdean',
+ 'VI' => 'Oileáin Mheiriceánacha na Maighdean',
+ 'VN' => 'Vítneam',
+ 'VU' => 'Vanuatú',
+ 'WF' => 'Vailís agus Futúna',
+ 'WS' => 'Samó',
+ 'XK' => 'An Chosaiv',
+ 'YE' => 'Éimin',
+ 'YT' => 'Mayotte',
+ 'ZA' => 'An Afraic Theas',
+ 'ZM' => 'An tSaimbia',
+ 'ZW' => 'An tSiombáib',
+);
+
+$timeUnits = array(
+ 'day-few' => '{0} lá',
+ 'day-future-few' => 'i gceann {0} lá',
+ 'day-future-many' => 'i gceann {0} lá',
+ 'day-future-one' => 'i gceann {0} lá',
+ 'day-future-other' => 'i gceann {0} lá',
+ 'day-future-two' => 'i gceann {0} lá',
+ 'day-many' => '{0} lá',
+ 'day-narrow-future-few' => '+{0} lá',
+ 'day-narrow-future-many' => '+{0} lá',
+ 'day-narrow-future-one' => '+{0} lá',
+ 'day-narrow-future-other' => '+{0} lá',
+ 'day-narrow-future-two' => '+{0} lá',
+ 'day-narrow-past-few' => '-{0} lá',
+ 'day-narrow-past-many' => '-{0} lá',
+ 'day-narrow-past-one' => '-{0} lá',
+ 'day-narrow-past-other' => '-{0} lá',
+ 'day-narrow-past-two' => '-{0} lá',
+ 'day-one' => '{0} lá',
+ 'day-other' => '{0} lá',
+ 'day-past-few' => '{0} lá ó shin',
+ 'day-past-many' => '{0} lá ó shin',
+ 'day-past-one' => '{0} lá ó shin',
+ 'day-past-other' => '{0} lá ó shin',
+ 'day-past-two' => '{0} lá ó shin',
+ 'day-short-future-few' => 'i gceann {0} lá',
+ 'day-short-future-many' => 'i gceann {0} lá',
+ 'day-short-future-one' => 'i gceann {0} lá',
+ 'day-short-future-other' => 'i gceann {0} lá',
+ 'day-short-future-two' => 'i gceann {0} lá',
+ 'day-short-past-few' => '{0} lá ó shin',
+ 'day-short-past-many' => '{0} lá ó shin',
+ 'day-short-past-one' => '{0} lá ó shin',
+ 'day-short-past-other' => '{0} lá ó shin',
+ 'day-short-past-two' => '{0} lá ó shin',
+ 'day-two' => '{0} lá',
+ 'hour-few' => '{0} huaire',
+ 'hour-future-few' => 'i gceann {0} huaire an chloig',
+ 'hour-future-many' => 'i gceann {0} n-uaire an chloig',
+ 'hour-future-one' => 'i gceann {0} uair an chloig',
+ 'hour-future-other' => 'i gceann {0} uair an chloig',
+ 'hour-future-two' => 'i gceann {0} uair an chloig',
+ 'hour-many' => '{0} n-uaire',
+ 'hour-narrow-future-few' => '+{0} u',
+ 'hour-narrow-future-many' => '+{0} u',
+ 'hour-narrow-future-one' => '+{0} u',
+ 'hour-narrow-future-other' => '+{0} u',
+ 'hour-narrow-future-two' => '+{0} u',
+ 'hour-narrow-past-few' => '-{0} u',
+ 'hour-narrow-past-many' => '-{0} u',
+ 'hour-narrow-past-one' => '-{0} u',
+ 'hour-narrow-past-other' => '-{0} u',
+ 'hour-narrow-past-two' => '-{0} u',
+ 'hour-one' => '{0} uair',
+ 'hour-other' => '{0} uair',
+ 'hour-past-few' => '{0} huaire an chloig ó shin',
+ 'hour-past-many' => '{0} n-uaire an chloig ó shin',
+ 'hour-past-one' => '{0} uair an chloig ó shin',
+ 'hour-past-other' => '{0} uair an chloig ó shin',
+ 'hour-past-two' => '{0} uair an chloig ó shin',
+ 'hour-short-future-few' => 'i gceann {0} huaire',
+ 'hour-short-future-many' => 'i gceann {0} n-uaire',
+ 'hour-short-future-one' => 'i gceann {0} uair',
+ 'hour-short-future-other' => 'i gceann {0} uair',
+ 'hour-short-future-two' => 'i gceann {0} uair',
+ 'hour-short-past-few' => '{0} huaire ó shin',
+ 'hour-short-past-many' => '{0} n-uaire ó shin',
+ 'hour-short-past-one' => '{0} uair ó shin',
+ 'hour-short-past-other' => '{0} uair ó shin',
+ 'hour-short-past-two' => '{0} uair ó shin',
+ 'hour-two' => '{0} uair',
+ 'microsecond-few' => '{0} mhicreashoicind',
+ 'microsecond-many' => '{0} micreashoicind',
+ 'microsecond-one' => '{0} mhicreashoicind',
+ 'microsecond-other' => '{0} micreashoicind',
+ 'microsecond-two' => '{0} mhicreashoicind',
+ 'millisecond-few' => '{0} mhilleasoicind',
+ 'millisecond-many' => '{0} milleasoicind',
+ 'millisecond-one' => '{0} mhilleasoicind',
+ 'millisecond-other' => '{0} milleasoicind',
+ 'millisecond-two' => '{0} mhilleasoicind',
+ 'minute-few' => '{0} nóiméad',
+ 'minute-future-few' => 'i gceann {0} nóiméad',
+ 'minute-future-many' => 'i gceann {0} nóiméad',
+ 'minute-future-one' => 'i gceann {0} nóiméad',
+ 'minute-future-other' => 'i gceann {0} nóiméad',
+ 'minute-future-two' => 'i gceann {0} nóiméad',
+ 'minute-many' => '{0} nóiméad',
+ 'minute-narrow-future-few' => '+{0} n',
+ 'minute-narrow-future-many' => '+{0} n',
+ 'minute-narrow-future-one' => '+{0} n',
+ 'minute-narrow-future-other' => '+{0} n',
+ 'minute-narrow-future-two' => '+{0} n',
+ 'minute-narrow-past-few' => '-{0} n',
+ 'minute-narrow-past-many' => '-{0} n',
+ 'minute-narrow-past-one' => '-{0} n',
+ 'minute-narrow-past-other' => '-{0} n',
+ 'minute-narrow-past-two' => '-{0} n',
+ 'minute-one' => '{0} nóiméad',
+ 'minute-other' => '{0} nóiméad',
+ 'minute-past-few' => '{0} nóiméad ó shin',
+ 'minute-past-many' => '{0} nóiméad ó shin',
+ 'minute-past-one' => '{0} nóiméad ó shin',
+ 'minute-past-other' => '{0} nóiméad ó shin',
+ 'minute-past-two' => '{0} nóiméad ó shin',
+ 'minute-short-future-few' => 'i gceann {0} nóim.',
+ 'minute-short-future-many' => 'i gceann {0} nóim.',
+ 'minute-short-future-one' => 'i gceann {0} nóim.',
+ 'minute-short-future-other' => 'i gceann {0} nóim.',
+ 'minute-short-future-two' => 'i gceann {0} nóim.',
+ 'minute-short-past-few' => '{0} nóim. ó shin',
+ 'minute-short-past-many' => '{0} nóim. ó shin',
+ 'minute-short-past-one' => '{0} nóim. ó shin',
+ 'minute-short-past-other' => '{0} nóim. ó shin',
+ 'minute-short-past-two' => '{0} nóim. ó shin',
+ 'minute-two' => '{0} nóiméad',
+ 'month-few' => '{0} mhí',
+ 'month-future-few' => 'i gceann {0} mhí',
+ 'month-future-many' => 'i gceann {0} mí',
+ 'month-future-one' => 'i gceann {0} mhí',
+ 'month-future-other' => 'i gceann {0} mí',
+ 'month-future-two' => 'i gceann {0} mhí',
+ 'month-many' => '{0} mí',
+ 'month-narrow-future-few' => '+{0} mhí',
+ 'month-narrow-future-many' => '+{0} mí',
+ 'month-narrow-future-one' => '+{0} mhí',
+ 'month-narrow-future-other' => '+{0} mí',
+ 'month-narrow-future-two' => '+{0} mhí',
+ 'month-narrow-past-few' => '-{0} mhí',
+ 'month-narrow-past-many' => '-{0} mí',
+ 'month-narrow-past-one' => '-{0} mhí',
+ 'month-narrow-past-other' => '-{0} mí',
+ 'month-narrow-past-two' => '-{0} mhí',
+ 'month-one' => '{0} mhí',
+ 'month-other' => '{0} mí',
+ 'month-past-few' => '{0} mhí ó shin',
+ 'month-past-many' => '{0} mí ó shin',
+ 'month-past-one' => '{0} mhí ó shin',
+ 'month-past-other' => '{0} mí ó shin',
+ 'month-past-two' => '{0} mhí ó shin',
+ 'month-short-future-few' => 'i gceann {0} mhí',
+ 'month-short-future-many' => 'i gceann {0} mí',
+ 'month-short-future-one' => 'i gceann {0} mhí',
+ 'month-short-future-other' => 'i gceann {0} mí',
+ 'month-short-future-two' => 'i gceann {0} mhí',
+ 'month-short-past-few' => '{0} mhí ó shin',
+ 'month-short-past-many' => '{0} mí ó shin',
+ 'month-short-past-one' => '{0} mhí ó shin',
+ 'month-short-past-other' => '{0} mí ó shin',
+ 'month-short-past-two' => '{0} mhí ó shin',
+ 'month-two' => '{0} mhí',
+ 'nanosecond-few' => '{0} nanashoicind',
+ 'nanosecond-many' => '{0} nanashoicind',
+ 'nanosecond-one' => '{0} nanashoicind',
+ 'nanosecond-other' => '{0} nanashoicind',
+ 'nanosecond-two' => '{0} nanashoicind',
+ 'quarter-future-few' => 'i gceann {0} ráithe',
+ 'quarter-future-many' => 'i gceann {0} ráithe',
+ 'quarter-future-one' => 'i gceann {0} ráithe',
+ 'quarter-future-other' => 'i gceann {0} ráithe',
+ 'quarter-future-two' => 'i gceann {0} ráithe',
+ 'quarter-narrow-future-few' => '+{0} R',
+ 'quarter-narrow-future-many' => '+{0} R',
+ 'quarter-narrow-future-one' => '+{0} R',
+ 'quarter-narrow-future-other' => '+{0} R',
+ 'quarter-narrow-future-two' => '+{0} R',
+ 'quarter-narrow-past-few' => '-{0} R',
+ 'quarter-narrow-past-many' => '-{0} R',
+ 'quarter-narrow-past-one' => '-{0} R',
+ 'quarter-narrow-past-other' => '-{0} R',
+ 'quarter-narrow-past-two' => '-{0} R',
+ 'quarter-past-few' => '{0} ráithe ó shin',
+ 'quarter-past-many' => '{0} ráithe ó shin',
+ 'quarter-past-one' => '{0} ráithe ó shin',
+ 'quarter-past-other' => '{0} ráithe ó shin',
+ 'quarter-past-two' => '{0} ráithe ó shin',
+ 'quarter-short-future-few' => 'i gceann {0} ráithe',
+ 'quarter-short-future-many' => 'i gceann {0} ráithe',
+ 'quarter-short-future-one' => 'i gceann {0} ráithe',
+ 'quarter-short-future-other' => 'i gceann {0} ráithe',
+ 'quarter-short-future-two' => 'i gceann {0} ráithe',
+ 'quarter-short-past-few' => '{0} ráithe ó shin',
+ 'quarter-short-past-many' => '{0} ráithe ó shin',
+ 'quarter-short-past-one' => '{0} ráithe ó shin',
+ 'quarter-short-past-other' => '{0} ráithe ó shin',
+ 'quarter-short-past-two' => '{0} ráithe ó shin',
+ 'second-few' => '{0} shoicind',
+ 'second-future-few' => 'i gceann {0} shoicind',
+ 'second-future-many' => 'i gceann {0} soicind',
+ 'second-future-one' => 'i gceann {0} soicind',
+ 'second-future-other' => 'i gceann {0} soicind',
+ 'second-future-two' => 'i gceann {0} shoicind',
+ 'second-many' => '{0} soicind',
+ 'second-narrow-future-few' => '+{0} s',
+ 'second-narrow-future-many' => '+{0} s',
+ 'second-narrow-future-one' => '+{0} s',
+ 'second-narrow-future-other' => '+{0} s',
+ 'second-narrow-future-two' => '+{0} s',
+ 'second-narrow-past-few' => '-{0} s',
+ 'second-narrow-past-many' => '-{0} s',
+ 'second-narrow-past-one' => '-{0} s',
+ 'second-narrow-past-other' => '-{0} s',
+ 'second-narrow-past-two' => '-{0} s',
+ 'second-one' => '{0} soicind',
+ 'second-other' => '{0} soicind',
+ 'second-past-few' => '{0} shoicind ó shin',
+ 'second-past-many' => '{0} soicind ó shin',
+ 'second-past-one' => '{0} soicind ó shin',
+ 'second-past-other' => '{0} soicind ó shin',
+ 'second-past-two' => '{0} shoicind ó shin',
+ 'second-short-future-few' => 'i gceann {0} shoic.',
+ 'second-short-future-many' => 'i gceann {0} soic.',
+ 'second-short-future-one' => 'i gceann {0} soic.',
+ 'second-short-future-other' => 'i gceann {0} soic.',
+ 'second-short-future-two' => 'i gceann {0} shoic.',
+ 'second-short-past-few' => '{0} shoic. ó shin',
+ 'second-short-past-many' => '{0} soic. ó shin',
+ 'second-short-past-one' => '{0} soic. ó shin',
+ 'second-short-past-other' => '{0} soic. ó shin',
+ 'second-short-past-two' => '{0} shoic. ó shin',
+ 'second-two' => '{0} shoicind',
+ 'week-few' => '{0} seachtaine',
+ 'week-future-few' => 'i gceann {0} seachtaine',
+ 'week-future-many' => 'i gceann {0} seachtaine',
+ 'week-future-one' => 'i gceann {0} seachtain',
+ 'week-future-other' => 'i gceann {0} seachtain',
+ 'week-future-two' => 'i gceann {0} sheachtain',
+ 'week-many' => '{0} seachtaine',
+ 'week-narrow-future-few' => '+{0} scht.',
+ 'week-narrow-future-many' => '+{0} scht.',
+ 'week-narrow-future-one' => '+{0} scht.',
+ 'week-narrow-future-other' => '+{0} scht.',
+ 'week-narrow-future-two' => '+{0} scht.',
+ 'week-narrow-past-few' => '-{0} scht.',
+ 'week-narrow-past-many' => '-{0} scht.',
+ 'week-narrow-past-one' => '-{0} scht.',
+ 'week-narrow-past-other' => '-{0} scht.',
+ 'week-narrow-past-two' => '-{0} scht.',
+ 'week-one' => '{0} seachtain',
+ 'week-other' => '{0} seachtain',
+ 'week-past-few' => '{0} seachtaine ó shin',
+ 'week-past-many' => '{0} seachtaine ó shin',
+ 'week-past-one' => '{0} seachtain ó shin',
+ 'week-past-other' => '{0} seachtain ó shin',
+ 'week-past-two' => '{0} sheachtain ó shin',
+ 'week-short-future-few' => 'i gceann {0} scht.',
+ 'week-short-future-many' => 'i gceann {0} scht.',
+ 'week-short-future-one' => 'i gceann {0} scht.',
+ 'week-short-future-other' => 'i gceann {0} scht.',
+ 'week-short-future-two' => 'i gceann {0} shcht.',
+ 'week-short-past-few' => '{0} scht. ó shin',
+ 'week-short-past-many' => '{0} scht. ó shin',
+ 'week-short-past-one' => '{0} scht. ó shin',
+ 'week-short-past-other' => '{0} scht. ó shin',
+ 'week-short-past-two' => '{0} scht. ó shin',
+ 'week-two' => '{0} sheachtain',
+ 'year-few' => '{0} bliana',
+ 'year-future-few' => 'i gceann {0} bliana',
+ 'year-future-many' => 'i gceann {0} mbliana',
+ 'year-future-one' => 'i gceann {0} bhliain',
+ 'year-future-other' => 'i gceann {0} bliain',
+ 'year-future-two' => 'i gceann {0} bhliain',
+ 'year-many' => '{0} mbliana',
+ 'year-narrow-future-few' => '+{0} bl.',
+ 'year-narrow-future-many' => '+{0} mbl.',
+ 'year-narrow-future-one' => '+{0} bhl.',
+ 'year-narrow-future-other' => '+{0} bl.',
+ 'year-narrow-future-two' => '+{0} bhl.',
+ 'year-narrow-past-few' => '-{0} bl.',
+ 'year-narrow-past-many' => '-{0} mbl.',
+ 'year-narrow-past-one' => '-{0} bhl.',
+ 'year-narrow-past-other' => '-{0} bl.',
+ 'year-narrow-past-two' => '-{0} bhl.',
+ 'year-one' => '{0} bhliain',
+ 'year-other' => '{0} bliain',
+ 'year-past-few' => '{0} bliana ó shin',
+ 'year-past-many' => '{0} mbliana ó shin',
+ 'year-past-one' => '{0} bhliain ó shin',
+ 'year-past-other' => '{0} bliain ó shin',
+ 'year-past-two' => '{0} bhliain ó shin',
+ 'year-short-future-few' => 'i gceann {0} bl.',
+ 'year-short-future-many' => 'i gceann {0} mbl.',
+ 'year-short-future-one' => 'i gceann {0} bl.',
+ 'year-short-future-other' => 'i gceann {0} bl.',
+ 'year-short-future-two' => 'i gceann {0} bhl.',
+ 'year-short-past-few' => '{0} bl. ó shin',
+ 'year-short-past-many' => '{0} mbl. ó shin',
+ 'year-short-past-one' => '{0} bhl. ó shin',
+ 'year-short-past-other' => '{0} bl. ó shin',
+ 'year-short-past-two' => '{0} bhl. ó shin',
+ 'year-two' => '{0} bhliain',
+);
diff --git a/MLEB/cldr/CldrNames/CldrNamesGd.php b/MLEB/cldr/CldrNames/CldrNamesGd.php
new file mode 100644
index 00000000..0bbbfe22
--- /dev/null
+++ b/MLEB/cldr/CldrNames/CldrNamesGd.php
@@ -0,0 +1,1421 @@
+<?php
+
+$languageNames = array(
+ 'aa' => 'Afar',
+ 'ab' => 'Abchasais',
+ 'ae' => 'Avestanais',
+ 'aeb' => 'Arabais Thuiniseach',
+ 'af' => 'Afraganais',
+ 'agq' => 'Aghem',
+ 'ak' => 'Akan',
+ 'ale' => 'Aleutais',
+ 'am' => 'Amtharais',
+ 'an' => 'Aragonais',
+ 'ang' => 'Seann-Bheurla',
+ 'ar' => 'Arabais',
+ 'ar-001' => 'Nuadh-Arabais Stannardach',
+ 'arc' => 'Aramais',
+ 'arn' => 'Mapuche',
+ 'arq' => 'Arabais Aildireach',
+ 'ary' => 'Arabais Mhorocach',
+ 'arz' => 'Arabais Èipheiteach',
+ 'as' => 'Asamais',
+ 'asa' => 'Asu',
+ 'ase' => 'Cainnt-shanais na h-Aimeireaga',
+ 'ast' => 'Astùrais',
+ 'av' => 'Avarais',
+ 'az' => 'Asarbaideànais',
+ 'azb' => 'Asarbaideànais Dheasach',
+ 'ba' => 'Bashkir',
+ 'bal' => 'Baluchì',
+ 'be' => 'Bealaruisis',
+ 'bem' => 'Bemba',
+ 'bez' => 'Bena',
+ 'bg' => 'Bulgarais',
+ 'bi' => 'Bislama',
+ 'bm' => 'Bambara',
+ 'bn' => 'Beangailis',
+ 'bo' => 'Tibeitis',
+ 'br' => 'Breatnais',
+ 'brx' => 'Bodo',
+ 'bs' => 'Bosnais',
+ 'ca' => 'Catalanais',
+ 'ce' => 'Deideanais',
+ 'cgg' => 'Chiga',
+ 'ch' => 'Chamorro',
+ 'chr' => 'Cherokee',
+ 'ckb' => 'Cùrdais Soranî',
+ 'co' => 'Corsais',
+ 'cop' => 'Coptais',
+ 'crh' => 'Turcais Chriomach',
+ 'cs' => 'Seacais',
+ 'csb' => 'Caisiubais',
+ 'cu' => 'Slàbhais na h-Eaglaise',
+ 'cy' => 'Cuimris',
+ 'da' => 'Danmhairgis',
+ 'dav' => 'Taita',
+ 'de' => 'Gearmailtis',
+ 'de-at' => 'Gearmailtis na h-Ostaire',
+ 'de-ch' => 'Àrd-Ghearmailtis na h-Eilbheise',
+ 'dje' => 'Zarma',
+ 'dsb' => 'Sòrbais Ìochdarach',
+ 'dua' => 'Duala',
+ 'dum' => 'Meadhan-Dhuitsis',
+ 'dv' => 'Divehi',
+ 'dyo' => 'Jola-Fonyi',
+ 'dz' => 'Dzongkha',
+ 'ebu' => 'Embu',
+ 'ee' => 'Ewe',
+ 'egy' => 'Èipheitis Àrsaidh',
+ 'el' => 'Greugais',
+ 'elx' => 'Elamais',
+ 'en' => 'Beurla',
+ 'en-au' => 'Beurla Astràilia',
+ 'en-ca' => 'Beurla Chanada',
+ 'en-gb' => 'Beurla Bhreatainn',
+ 'en-us' => 'Beurla na h-Aimeireaga',
+ 'enm' => 'Meadhan-Bheurla',
+ 'eo' => 'Esperanto',
+ 'es' => 'Spàinntis',
+ 'es-419' => 'Spàinntis na h-Aimeireaga Laidinneach',
+ 'es-es' => 'Spàinntis Eòrpach',
+ 'es-mx' => 'Spàinntis Mheagsagach',
+ 'et' => 'Eastoinis',
+ 'eu' => 'Basgais',
+ 'fa' => 'Farsaidh',
+ 'fi' => 'Fionnlannais',
+ 'fil' => 'Filipinis',
+ 'fj' => 'Fìdis',
+ 'fo' => 'Fàrothais',
+ 'fr' => 'Fraingis',
+ 'fr-ca' => 'Fraingis Chanada',
+ 'fr-ch' => 'Fraingis Eilbheiseach',
+ 'frm' => 'Meadhan-Fhraingis',
+ 'fro' => 'Seann-Fhraingis',
+ 'frr' => 'Frìoslannais Thuathach',
+ 'frs' => 'Frìoslannais Earach',
+ 'fur' => 'Friùilis',
+ 'fy' => 'Frìoslannais Siarach',
+ 'ga' => 'Gaeilge',
+ 'gag' => 'Gagauz',
+ 'gd' => 'Gàidhlig',
+ 'gez' => 'Ge’ez',
+ 'gil' => 'Ciribeasais',
+ 'gl' => 'Gailìsis',
+ 'gmh' => 'Meadhan-Àrd-Gearmailtis',
+ 'gn' => 'Guaraní',
+ 'goh' => 'Seann-Àrd-Gearmailtis',
+ 'got' => 'Gotais',
+ 'grc' => 'Greugais Àrsaidh',
+ 'gsw' => 'Gearmailtis Eilbheiseach',
+ 'gu' => 'Gujarati',
+ 'guz' => 'Gusii',
+ 'gv' => 'Gaelg',
+ 'ha' => 'Hausa',
+ 'haw' => 'Cànan Hawai’i',
+ 'he' => 'Eabhra',
+ 'hi' => 'Hindis',
+ 'hif' => 'Hindis Fhìditheach',
+ 'ho' => 'Hiri Motu',
+ 'hr' => 'Cròthaisis',
+ 'hsb' => 'Sòrbais Uachdarach',
+ 'ht' => 'Crìtheol Haidhti',
+ 'hu' => 'Ungairis',
+ 'hy' => 'Airmeinis',
+ 'ia' => 'Interlingua',
+ 'id' => 'Innd-Innsis',
+ 'ie' => 'Interlingue',
+ 'ig' => 'Igbo',
+ 'ii' => 'Yi Sichuan',
+ 'ik' => 'Inupiaq',
+ 'io' => 'Ido',
+ 'is' => 'Innis Tìlis',
+ 'it' => 'Eadailtis',
+ 'iu' => 'Inuktitut',
+ 'ja' => 'Seapanais',
+ 'jam' => 'Beurla Crìtheolach Diameuga',
+ 'jbo' => 'Lojban',
+ 'jgo' => 'Ngomba',
+ 'jmc' => 'Machame',
+ 'jpr' => 'Peirsis Iùdhach',
+ 'jrb' => 'Arabais Iùdhach',
+ 'jv' => 'Deàbhanais',
+ 'ka' => 'Cairtbheilis',
+ 'kab' => 'Kabyle',
+ 'kam' => 'Kamba',
+ 'kde' => 'Makonde',
+ 'kea' => 'Kabuverdianu',
+ 'khq' => 'Koyra Chiini',
+ 'ki' => 'Kikuyu',
+ 'kk' => 'Casachais',
+ 'kl' => 'Kalaallisut',
+ 'kln' => 'Kalenjin',
+ 'km' => 'Cmèar',
+ 'kn' => 'Kannada',
+ 'ko' => 'Coirèanais',
+ 'koi' => 'Komi-Permyak',
+ 'kok' => 'Konkani',
+ 'ks' => 'Caismiris',
+ 'ksb' => 'Shambala',
+ 'ksf' => 'Bafia',
+ 'ku' => 'Cùrdais',
+ 'kw' => 'Còrnais',
+ 'ky' => 'Cìorgasais',
+ 'la' => 'Laideann',
+ 'lad' => 'Ladino',
+ 'lag' => 'Langi',
+ 'lb' => 'Lugsamburgais',
+ 'lg' => 'Ganda',
+ 'lij' => 'Liogùrais',
+ 'lkt' => 'Lakhóta',
+ 'lmo' => 'Lombardais',
+ 'ln' => 'Lingala',
+ 'lo' => 'Làtho',
+ 'lt' => 'Liotuainis',
+ 'lu' => 'Luba-Katanga',
+ 'luo' => 'Luo',
+ 'luy' => 'Luyia',
+ 'lv' => 'Laitbheis',
+ 'lzh' => 'Sìnis an Litreachais',
+ 'mas' => 'Maasai',
+ 'mer' => 'Meru',
+ 'mfe' => 'Morisyen',
+ 'mg' => 'Malagasais',
+ 'mga' => 'Meadhan-Ghaeilge',
+ 'mgh' => 'Makhuwa-Meetto',
+ 'mgo' => 'Meta’',
+ 'mh' => 'Marshallais',
+ 'mi' => 'Māori',
+ 'mk' => 'Masadonais',
+ 'ml' => 'Malayalam',
+ 'mn' => 'Mongolais',
+ 'moh' => 'Mohawk',
+ 'mr' => 'Marathi',
+ 'ms' => 'Malaidhis',
+ 'mt' => 'Maltais',
+ 'mua' => 'Mundang',
+ 'mul' => 'Iomadh cànan',
+ 'my' => 'Burmais',
+ 'na' => 'Nabhru',
+ 'naq' => 'Nama',
+ 'nb' => 'Bokmål na Nirribhidh',
+ 'nd' => 'Ndebele Thuathach',
+ 'ne' => 'Neapàilis',
+ 'niu' => 'Cànan Niue',
+ 'nl' => 'Duitsis',
+ 'nl-be' => 'Flannrais',
+ 'nmg' => 'Kwasio',
+ 'nn' => 'Nynorsk na Nirribhidh',
+ 'no' => 'Nirribhis',
+ 'non' => 'Seann-Lochlannais',
+ 'nqo' => 'N’Ko',
+ 'nr' => 'Ndebele Dheasach',
+ 'nso' => 'Leasotais Thuathach',
+ 'nus' => 'Nuer',
+ 'ny' => 'Chichewa',
+ 'nyn' => 'Nyankole',
+ 'oc' => 'Ogsatanais',
+ 'om' => 'Oromo',
+ 'or' => 'Oriya',
+ 'os' => 'Ossetic',
+ 'ota' => 'Turcais Otomanach',
+ 'pa' => 'Panjabi',
+ 'pau' => 'Palabhais',
+ 'pdc' => 'Gearmailtis Phennsylvania',
+ 'peo' => 'Seann-Pheirsis',
+ 'pi' => 'Pali',
+ 'pl' => 'Pòlainnis',
+ 'prg' => 'Pruisis',
+ 'ps' => 'Pachtu',
+ 'pt' => 'Portagailis',
+ 'pt-br' => 'Portagailis Bhraisileach',
+ 'pt-pt' => 'Portagailis Eòrpach',
+ 'qu' => 'Ceatsua',
+ 'quc' => 'K’iche’',
+ 'rap' => 'Rapa Nui',
+ 'rm' => 'Rumains',
+ 'rn' => 'Kirundi',
+ 'ro' => 'Romàinis',
+ 'ro-md' => 'Moldobhais',
+ 'rof' => 'Rombo',
+ 'rom' => 'Romanais',
+ 'ru' => 'Ruisis',
+ 'rw' => 'Kinyarwanda',
+ 'rwk' => 'Rwa',
+ 'sa' => 'Sanskrit',
+ 'sah' => 'Sachais',
+ 'sam' => 'Aramais Shamaritanach',
+ 'saq' => 'Samburu',
+ 'sbp' => 'Sangu',
+ 'sc' => 'Sàrdais',
+ 'scn' => 'Sisilis',
+ 'sco' => 'Albais',
+ 'sd' => 'Sindhi',
+ 'se' => 'Sàmais Thuathach',
+ 'seh' => 'Sena',
+ 'ses' => 'Koyraboro Senni',
+ 'sg' => 'Sango',
+ 'sga' => 'Seann-Ghaeilge',
+ 'sh' => 'Sèirb-Chròthaisis',
+ 'shi' => 'Tachelhit',
+ 'shu' => 'Arabais Seàdach',
+ 'si' => 'Sinhala',
+ 'sk' => 'Slòbhacais',
+ 'sl' => 'Slòbhainis',
+ 'sm' => 'Samothais',
+ 'sma' => 'Sàmais Dheasach',
+ 'smj' => 'Sàmais Lule',
+ 'smn' => 'Sàmais Inari',
+ 'sms' => 'Sàmais Skolt',
+ 'sn' => 'Shona',
+ 'snk' => 'Soninke',
+ 'so' => 'Somàilis',
+ 'sq' => 'Albàinis',
+ 'sr' => 'Sèirbis',
+ 'st' => 'Leasotach Dheasach',
+ 'su' => 'Cànan Sunda',
+ 'sv' => 'Suainis',
+ 'sw' => 'Kiswahili',
+ 'swb' => 'Comorais',
+ 'swc' => 'Kiswahili na Congo',
+ 'syc' => 'Suraidheac Chlasaigeach',
+ 'syr' => 'Suraidheac',
+ 'ta' => 'Taimilis',
+ 'te' => 'Telugu',
+ 'teo' => 'Teso',
+ 'tet' => 'Tetum',
+ 'tg' => 'Taidigis',
+ 'th' => 'Tàidh',
+ 'ti' => 'Tigrinya',
+ 'tk' => 'Turcmanais',
+ 'tkl' => 'Tokelau',
+ 'tl' => 'Tagalog',
+ 'to' => 'Tongais',
+ 'tog' => 'Nyasa Tonga',
+ 'tpi' => 'Tok Pisin',
+ 'tr' => 'Turcais',
+ 'ts' => 'Tsonga',
+ 'tt' => 'Tatarais',
+ 'twq' => 'Tasawaq',
+ 'tzm' => 'Tamazight Meadhan na h-Atlas',
+ 'ug' => 'Ùigiurais',
+ 'uk' => 'Ucràinis',
+ 'und' => 'Cànan neo-aithnichte',
+ 'ur' => 'Ùrdu',
+ 'uz' => 'Usbagais',
+ 'vai' => 'Vai',
+ 've' => 'Venda',
+ 'vi' => 'Bhiet-Namais',
+ 'vls' => 'Flannrais Siarach',
+ 'vo' => 'Volapük',
+ 'vun' => 'Vunjo',
+ 'wo' => 'Wolof',
+ 'xh' => 'Xhosa',
+ 'xog' => 'Soga',
+ 'yi' => 'Iùdhais',
+ 'yo' => 'Ioruba',
+ 'yue' => 'Cantonais',
+ 'zgh' => 'Tamazight Stannardach Moroco',
+ 'zh' => 'Sìnis',
+ 'zh-hans' => 'Sìnis Shimplichte',
+ 'zh-hant' => 'Sìnis Thradaiseanta',
+ 'zu' => 'Zulu',
+ 'zxx' => 'Susbaint nach eil ‘na chànan',
+);
+
+$currencyNames = array(
+ 'ADP' => 'Peseta Andorrach',
+ 'AED' => 'Dirham nan Iomaratan Arabach Aonaichte',
+ 'AFA' => 'Afghani Afghanach (1927–2002)',
+ 'AFN' => 'Afghani Afghanach',
+ 'ALK' => 'Lek Albàineach (1946–1965)',
+ 'ALL' => 'Lek Albàineach',
+ 'AMD' => 'Dram Airmeineach',
+ 'ANG' => 'Gulden Eileanan Aintilia nan Tìrean Ìsle',
+ 'AOA' => 'Kwanza Angòlach',
+ 'AOK' => 'Kwanza Angòlach (1977–1991)',
+ 'AON' => 'Kwanza ùr Angòlach (1990–2000)',
+ 'AOR' => 'Kwanza ath-ghleusaichte Angòlach (1995–1999)',
+ 'ARA' => 'Austral Argantaineach',
+ 'ARL' => 'Peso ley Argantaineach (1970–1983)',
+ 'ARM' => 'Peso Argantaineach (1881–1970)',
+ 'ARP' => 'Peso Argantaineach (1983–1985)',
+ 'ARS' => 'Peso Argantaineach',
+ 'ATS' => 'Schilling Ostaireach',
+ 'AUD' => 'Dolar Astràilianach',
+ 'AWG' => 'Florin Arùbach',
+ 'AZM' => 'Manat Asarbaideànach (1993–2006)',
+ 'AZN' => 'Manat Asarbaideànach',
+ 'BAD' => 'Dinar Bhosna agus Hearsagobhana (1992–1994)',
+ 'BAM' => 'Mark iompachail Bhosna agus Hearsagobhana',
+ 'BAN' => 'Dinar ùr Bhosna agus Hearsagobhana (1994–1997)',
+ 'BBD' => 'Dolar Barbadach',
+ 'BDT' => 'Taka Bangladaiseach',
+ 'BEC' => 'Franc Beilgeach (iompachail)',
+ 'BEF' => 'Franc Beilgeach',
+ 'BEL' => 'Franc Beilgeach (ionmhasail)',
+ 'BGL' => 'Lev cruaidh Bulgarach',
+ 'BGM' => 'Lev sòisealach Bulgarach',
+ 'BGN' => 'Lev Bulgarach',
+ 'BGO' => 'Lev Bulgarach (1879–1952)',
+ 'BHD' => 'Dinar Bachraineach',
+ 'BIF' => 'Franc Burundaidheach',
+ 'BMD' => 'Dolar Bearmùdach',
+ 'BND' => 'Dolar Brùnaigheach',
+ 'BOB' => 'Boliviano Boilibhiach',
+ 'BOL' => 'Boliviano Boilibhiach (1863–1963)',
+ 'BOP' => 'Peso Boilibhiach',
+ 'BOV' => 'Mvdol Boilibhiach',
+ 'BRB' => 'Cruzeiro ùr Braisileach (1967–1986)',
+ 'BRC' => 'Cruzado Braisileach (1986–1989)',
+ 'BRE' => 'Cruzeiro Braisileach (1990–1993)',
+ 'BRL' => 'Real Braisileach',
+ 'BRN' => 'Cruzado ùr Braisileach (1989–1990)',
+ 'BRR' => 'Cruzeiro Braisileach (1993–1994)',
+ 'BRZ' => 'Cruzeiro Braisileach (1942–1967)',
+ 'BSD' => 'Dolar Bathamach',
+ 'BTN' => 'Ngultrum Butànach',
+ 'BUK' => 'Kyat Burmach',
+ 'BWP' => 'Pula Botsuanach',
+ 'BYB' => 'Rùbal ùr Bealaruiseach (1994–1999)',
+ 'BYR' => 'Rùbal Bealaruiseach',
+ 'BZD' => 'Dolar Beilìseach',
+ 'CAD' => 'Dolar Canadach',
+ 'CDF' => 'Franc Congothach',
+ 'CHE' => 'Eòro WIR',
+ 'CHF' => 'Franc Eilbheiseach',
+ 'CHW' => 'Franc WIR',
+ 'CLE' => 'Escudo Sileach',
+ 'CLF' => 'Aonad cunntasachd Sileach (UF)',
+ 'CLP' => 'Peso Sileach',
+ 'CNX' => 'Dolar an t-sluagh-bhanca Shìnich',
+ 'CNY' => 'Yuan Sìneach',
+ 'COP' => 'Peso Coloimbeach',
+ 'COU' => 'Aonad fìor-luach Coloimbeach',
+ 'CRC' => 'Colón Costa Rìceach',
+ 'CSD' => 'Dinar Sèirbeach (2002–2006)',
+ 'CSK' => 'Koruna cruaidh Seic-Slòbhacach',
+ 'CUC' => 'Peso iompachail Cùbach',
+ 'CUP' => 'Peso Cùbach',
+ 'CVE' => 'Escudo a’ Chip Uaine',
+ 'CYP' => 'Punnd Cìoprasach',
+ 'CZK' => 'Koruna Seiceach',
+ 'DDM' => 'Mark na Gearmailte an Ear',
+ 'DEM' => 'Mark Gearmailteach',
+ 'DJF' => 'Franc Diobùtaidheach',
+ 'DKK' => 'Krone Danmhairgeach',
+ 'DOP' => 'Peso Doiminiceach',
+ 'DZD' => 'Dinar Aildireach',
+ 'ECS' => 'Sucre Eacuadorach',
+ 'ECV' => 'Aonad luach chunbhalaich Eacuadorach',
+ 'EEK' => 'Kroon Eastoineach',
+ 'EGP' => 'Punnd Èipheiteach',
+ 'ERN' => 'Nakfa Eartrach',
+ 'ESA' => 'Peseta Spàinnteach (cunntas A)',
+ 'ESB' => 'Peseta Spàinnteach (cunntas iompachail)',
+ 'ESP' => 'Peseta Spàinnteach',
+ 'ETB' => 'Birr Itiopach',
+ 'EUR' => 'Eòro',
+ 'FIM' => 'Markka Fionnlannach',
+ 'FJD' => 'Dolar Fìditheach',
+ 'FKP' => 'Punnd Fàclannach',
+ 'FRF' => 'Franc Frangach',
+ 'GBP' => 'Punnd Sasannach',
+ 'GEK' => 'Kupon larit Cairtbheileach',
+ 'GEL' => 'Lari Cairtbheileach',
+ 'GHC' => 'Cedi Gànach (1979–2007)',
+ 'GHS' => 'Cedi Gànach',
+ 'GIP' => 'Punnd Diobraltarach',
+ 'GMD' => 'Dalasi Gaimbitheach',
+ 'GNF' => 'Franc Ginitheach',
+ 'GNS' => 'Syli Ginitheach',
+ 'GQE' => 'Ekwele Gini Meadhan-Chriosaich',
+ 'GRD' => 'Drachma Greugach',
+ 'GTQ' => 'Quetzal Guatamalach',
+ 'GWE' => 'Escudo Gini na Portagaile',
+ 'GWP' => 'Peso Gini-Biosothach',
+ 'GYD' => 'Dolar Guidheànach',
+ 'HKD' => 'Dolar Hong Kong',
+ 'HNL' => 'Lempira Hondùrach',
+ 'HRD' => 'Dinar Cròthaiseach',
+ 'HRK' => 'Kuna Cròthaiseach',
+ 'HTG' => 'Gourde Haidhteach',
+ 'HUF' => 'Forint Ungaireach',
+ 'IDR' => 'Rupiah Innd-Innseach',
+ 'IEP' => 'Punnd Èireannach',
+ 'ILP' => 'Punnd Iosraeleach',
+ 'ILR' => 'Sheqel Iosraeleach (1980–1985)',
+ 'ILS' => 'Sheqel ùr Iosraeleach',
+ 'INR' => 'Rupee Innseanach',
+ 'IQD' => 'Dinar Ioràcach',
+ 'IRR' => 'Rial Iorànach',
+ 'ISJ' => 'Króna Innis Tìleach (1918–1981)',
+ 'ISK' => 'Króna Innis Tìleach',
+ 'ITL' => 'Lira Eadailteach',
+ 'JMD' => 'Dolar Diameugach',
+ 'JOD' => 'Dinar Iòrdanach',
+ 'JPY' => 'Yen Seapanach',
+ 'KES' => 'Shilling Ceineach',
+ 'KGS' => 'Som Cìorgasach',
+ 'KHR' => 'Riel Cambuideach',
+ 'KMF' => 'Franc Comorosach',
+ 'KPW' => 'Won Choirèa a Tuath',
+ 'KRH' => 'Hwan Choirèa a Deas (1953–1962)',
+ 'KRO' => 'Won Choirèa a Deas (1945–1953)',
+ 'KRW' => 'Won Choirèa a Deas',
+ 'KWD' => 'Dinar Cuibhèiteach',
+ 'KYD' => 'Dolar Caimeanach',
+ 'KZT' => 'Tenge Casachach',
+ 'LAK' => 'Kip Làthosach',
+ 'LBP' => 'Punnd Leabanach',
+ 'LKR' => 'Rupee Sri Lancach',
+ 'LRD' => 'Dolar Libèireach',
+ 'LSL' => 'Loti Leasotach',
+ 'LTL' => 'Litas Liotuaineach',
+ 'LTT' => 'Talonas Liotuaineach',
+ 'LUC' => 'Franc iompachail Lugsamburgach',
+ 'LUF' => 'Franc Lugsamburgach',
+ 'LUL' => 'Franc ionmhasail Lugsamburgach',
+ 'LVL' => 'Lats Laitbheach',
+ 'LVR' => 'Rùbal Laitbheach',
+ 'LYD' => 'Dinar Libitheach',
+ 'MAD' => 'Dirham Morocach',
+ 'MAF' => 'Franc Morocach',
+ 'MCF' => 'Franc Monacach',
+ 'MDC' => 'Cupon Moldobhach',
+ 'MDL' => 'Leu Moldobhach',
+ 'MGA' => 'Ariary Madagasgarach',
+ 'MGF' => 'Franc Madagasgarach',
+ 'MKD' => 'Denar Masadonach',
+ 'MKN' => 'Denar Masadonach (1992–1993)',
+ 'MLF' => 'Franc Màilitheach',
+ 'MMK' => 'Kyat Miànmarach',
+ 'MNT' => 'Tugrik Mongolach',
+ 'MOP' => 'Pataca Macàthuach',
+ 'MRO' => 'Ouguiya Moratàineach',
+ 'MTL' => 'Lira Maltach',
+ 'MTP' => 'Punnd Maltach',
+ 'MUR' => 'Rupee Moiriseasach',
+ 'MVP' => 'Rupee Maladaibheach',
+ 'MVR' => 'Rufiyaa Maladaibheach',
+ 'MWK' => 'Kwacha Malabhaidheach',
+ 'MXN' => 'Peso Meagsagach',
+ 'MXP' => 'Peso airgid Meagsagach (1861–1992)',
+ 'MXV' => 'Aonad inbheistidh Meagsagach',
+ 'MYR' => 'Ringgit Malaidheach',
+ 'MZE' => 'Escudo Mòsaimbiceach',
+ 'MZM' => 'Metical Mòsaimbiceach (1980–2006)',
+ 'MZN' => 'Metical Mòsaimbiceach',
+ 'NAD' => 'Dolar Naimibitheach',
+ 'NGN' => 'Naira Nigèiriach',
+ 'NIC' => 'Córdoba Niocaragach (1988–1991)',
+ 'NIO' => 'Córdoba Niocaragach',
+ 'NLG' => 'Gulden Duitseach',
+ 'NOK' => 'Krone Nirribheach',
+ 'NPR' => 'Rupee Neapàlach',
+ 'NZD' => 'Dolar Shealainn Nuaidh',
+ 'OMR' => 'Rial Omànach',
+ 'PAB' => 'Balboa Panamach',
+ 'PEI' => 'Inti Pearùthach',
+ 'PEN' => 'Sol ùr Pearùthach',
+ 'PES' => 'Sol Pearùthach (1863–1965)',
+ 'PGK' => 'Kina Ghini Nuaidh Paputhaiche',
+ 'PHP' => 'Peso Filipineach',
+ 'PKR' => 'Rupee Pagastànach',
+ 'PLN' => 'Złoty Pòlainneach',
+ 'PLZ' => 'Złoty Pòlainneach (1950–1995)',
+ 'PTE' => 'Escudo Portagaileach',
+ 'PYG' => 'Guaraní Paraguaidheach',
+ 'QAR' => 'Rial Catarach',
+ 'RHD' => 'Dolar Rhodesiach',
+ 'ROL' => 'Leu Romàineach (1952–2006)',
+ 'RON' => 'Leu Romàineach',
+ 'RSD' => 'Dinar Sèirbeach',
+ 'RUB' => 'Rùbal Ruiseach',
+ 'RUR' => 'Rùbal Ruiseach (1991–1998)',
+ 'RWF' => 'Franc Rubhandach',
+ 'SAR' => 'Riyal Sabhdach',
+ 'SBD' => 'Dolar Eileanan Sholaimh',
+ 'SCR' => 'Rupee Seiseallach',
+ 'SDD' => 'Dinar Sudànach (1992–2007)',
+ 'SDG' => 'Punnd Sudànach',
+ 'SDP' => 'Punnd Sudànach (1957–1998)',
+ 'SEK' => 'Krona Suaineach',
+ 'SGD' => 'Dolar Singeapòrach',
+ 'SHP' => 'Punnd Eilean Naomh Eilidh',
+ 'SIT' => 'Tolar Slòbhaineach',
+ 'SKK' => 'Koruna Slòbhacach',
+ 'SLL' => 'Leone Siarra Leòmhannach',
+ 'SOS' => 'Shilling Somàilitheach',
+ 'SRD' => 'Dolar Suranamach',
+ 'SRG' => 'Gulden Suranamach',
+ 'SSP' => 'Punnd Sudàin a Deas',
+ 'STD' => 'Dobra São Tomé agus Príncipe',
+ 'SUR' => 'Rùbal Sovietach',
+ 'SVC' => 'Colón Salbhadorach',
+ 'SYP' => 'Punnd Siridheach',
+ 'SZL' => 'Lilangeni Suasaidheach',
+ 'THB' => 'Baht Tàidheach',
+ 'TJR' => 'Rùbal Taidigeach',
+ 'TJS' => 'Somoni Taidigeach',
+ 'TMM' => 'Manat Turcmanach (1993–2009)',
+ 'TMT' => 'Manat Turcmanach',
+ 'TND' => 'Dinar Tuiniseach',
+ 'TOP' => 'Paʻanga Tongach',
+ 'TPE' => 'Escudo Tìomorach',
+ 'TRL' => 'Lira Turcach (1922–2005)',
+ 'TRY' => 'Lira Turcach',
+ 'TTD' => 'Dolar Thrianaid agus Thobago',
+ 'TWD' => 'Dolar ùr Taidh-Bhànach',
+ 'TZS' => 'Shilling Tansanaidheach',
+ 'UAH' => 'Hryvnia Ucràineach',
+ 'UAK' => 'Karbovanets Ucràineach',
+ 'UGS' => 'Shilling Ugandach (1966–1987)',
+ 'UGX' => 'Shilling Ugandach',
+ 'USD' => 'Dolar nan Stàitean Aonaichte',
+ 'USN' => 'Dolar nan SA (an ath–latha)',
+ 'USS' => 'Dolar nan SA (an aon latha)',
+ 'UYI' => 'Peso Uruguaidheach (aonadan inneacsaichte)',
+ 'UYP' => 'Peso Uruguaidheach (1975–1993)',
+ 'UYU' => 'Peso Uruguaidheach',
+ 'UZS' => 'Som Usbagach',
+ 'VEB' => 'Bolívar Bheinisealach (1871–2008)',
+ 'VEF' => 'Bolívar Bheinisealach',
+ 'VND' => 'Dong Bhiet-Namach',
+ 'VNN' => 'Dong Bhiet-Namach (1978–1985)',
+ 'VUV' => 'Vatu Vanuatuthach',
+ 'WST' => 'Tala Samothach',
+ 'XAF' => 'Franc CFA Meadhan-Afragach',
+ 'XAG' => 'Airgead',
+ 'XAU' => 'Òr',
+ 'XBA' => 'Aonad co-dhèanta Eòrpach',
+ 'XBB' => 'Aonad airgid Eòrpach',
+ 'XBC' => 'Aonad cunntasachd Eòrpach (XBC)',
+ 'XBD' => 'Aonad cunntasachd Eòrpach (XBD)',
+ 'XCD' => 'Dolar Caraibeach earach',
+ 'XDR' => 'Còir tarraing shònraichte',
+ 'XEU' => 'Aonad airgeadra Eòrpach',
+ 'XFO' => 'Franc òir Frangach',
+ 'XFU' => 'Franc UIC Frangach',
+ 'XOF' => 'Franc CFA Afraga an Iar',
+ 'XPD' => 'Pallaideam',
+ 'XPF' => 'Franc CFP',
+ 'XPT' => 'Platanam',
+ 'XRE' => 'Aonad maoine RINET',
+ 'XSU' => 'Sucre',
+ 'XTS' => 'Còd airgeadra fo dheuchainn',
+ 'XUA' => 'Aonad cunntasachd ADB',
+ 'XXX' => 'Airgeadra neo-aithnichte',
+ 'YDD' => 'Dinar Eamanach',
+ 'YER' => 'Rial Eamanach',
+ 'YUD' => 'Dinar cruaidh Iùgoslabhach (1966–1990)',
+ 'YUM' => 'Dinar ùr Iùgoslabhach (1994–2002)',
+ 'YUN' => 'Dinar iompachail Iùgoslabhach (1990–1992)',
+ 'YUR' => 'Dinar ath-leasaichte Iùgoslabhach (1992–1993)',
+ 'ZAL' => 'Rand Afraga a Deas (ionmhasail)',
+ 'ZAR' => 'Rand Afraga a Deas',
+ 'ZMK' => 'Kwacha Sàimbitheach (1968–2012)',
+ 'ZMW' => 'Kwacha Sàimbitheach',
+ 'ZRN' => 'Zaïre ùr Zaïreach (1993–1998)',
+ 'ZRZ' => 'Zaïre Zaïreach (1971–1993)',
+ 'ZWD' => 'Dolar Sìombabuthach (1980–2008)',
+ 'ZWL' => 'Dolar Sìombabuthach (2009)',
+ 'ZWR' => 'Dolar Sìombabuthach (2008)',
+);
+
+$currencySymbols = array(
+ 'ADP' => 'ADP',
+ 'AED' => 'AED',
+ 'AFA' => 'AFA',
+ 'AFN' => 'AFN',
+ 'ALK' => 'ALK',
+ 'ALL' => 'ALL',
+ 'AMD' => 'AMD',
+ 'ANG' => 'ANG',
+ 'AOA' => 'AOA',
+ 'AOK' => 'AOK',
+ 'AON' => 'AON',
+ 'AOR' => 'AOR',
+ 'ARA' => 'ARA',
+ 'ARL' => 'ARL',
+ 'ARM' => 'ARM',
+ 'ARP' => 'ARP',
+ 'ARS' => 'ARS',
+ 'ATS' => 'ATS',
+ 'AUD' => 'A$',
+ 'AWG' => 'AWG',
+ 'AZM' => 'AZM',
+ 'AZN' => 'AZN',
+ 'BAD' => 'BAD',
+ 'BAM' => 'BAM',
+ 'BAN' => 'BAN',
+ 'BBD' => 'BBD',
+ 'BDT' => 'BDT',
+ 'BEC' => 'BEC',
+ 'BEF' => 'BEF',
+ 'BEL' => 'BEL',
+ 'BGL' => 'BGL',
+ 'BGM' => 'BGM',
+ 'BGN' => 'BGN',
+ 'BGO' => 'BGO',
+ 'BHD' => 'BHD',
+ 'BIF' => 'BIF',
+ 'BMD' => 'BMD',
+ 'BND' => 'BND',
+ 'BOB' => 'BOB',
+ 'BOL' => 'BOL',
+ 'BOP' => 'BOP',
+ 'BOV' => 'BOV',
+ 'BRB' => 'BRB',
+ 'BRC' => 'BRC',
+ 'BRE' => 'BRE',
+ 'BRL' => 'R$',
+ 'BRN' => 'BRN',
+ 'BRR' => 'BRR',
+ 'BRZ' => 'BRZ',
+ 'BSD' => 'BSD',
+ 'BTN' => 'BTN',
+ 'BUK' => 'BUK',
+ 'BWP' => 'BWP',
+ 'BYB' => 'BYB',
+ 'BYR' => 'BYR',
+ 'BZD' => 'BZD',
+ 'CAD' => 'CA$',
+ 'CDF' => 'CDF',
+ 'CHE' => 'CHE',
+ 'CHF' => 'CHF',
+ 'CHW' => 'CHW',
+ 'CLE' => 'CLE',
+ 'CLF' => 'CLF',
+ 'CLP' => 'CLP',
+ 'CNX' => 'CNX',
+ 'CNY' => 'CN¥',
+ 'COP' => 'COP',
+ 'COU' => 'COU',
+ 'CRC' => 'CRC',
+ 'CSD' => 'CSD',
+ 'CSK' => 'CSK',
+ 'CUC' => 'CUC',
+ 'CUP' => 'CUP',
+ 'CVE' => 'CVE',
+ 'CYP' => 'CYP',
+ 'CZK' => 'CZK',
+ 'DDM' => 'DDM',
+ 'DEM' => 'DEM',
+ 'DJF' => 'DJF',
+ 'DKK' => 'DKK',
+ 'DOP' => 'DOP',
+ 'DZD' => 'DZD',
+ 'ECS' => 'ECS',
+ 'ECV' => 'ECV',
+ 'EEK' => 'EEK',
+ 'EGP' => 'EGP',
+ 'ERN' => 'ERN',
+ 'ESA' => 'ESA',
+ 'ESB' => 'ESB',
+ 'ESP' => 'ESP',
+ 'ETB' => 'ETB',
+ 'EUR' => '€',
+ 'FIM' => 'FIM',
+ 'FJD' => 'FJD',
+ 'FKP' => 'FKP',
+ 'FRF' => 'FRF',
+ 'GBP' => '£',
+ 'GEK' => 'GEK',
+ 'GEL' => 'GEL',
+ 'GHC' => 'GHC',
+ 'GHS' => 'GHS',
+ 'GIP' => 'GIP',
+ 'GMD' => 'GMD',
+ 'GNF' => 'GNF',
+ 'GNS' => 'GNS',
+ 'GQE' => 'GQE',
+ 'GRD' => 'GRD',
+ 'GTQ' => 'GTQ',
+ 'GWE' => 'GWE',
+ 'GWP' => 'GWP',
+ 'GYD' => 'GYD',
+ 'HKD' => 'HK$',
+ 'HNL' => 'HNL',
+ 'HRD' => 'HRD',
+ 'HRK' => 'HRK',
+ 'HTG' => 'HTG',
+ 'HUF' => 'HUF',
+ 'IDR' => 'IDR',
+ 'IEP' => 'IEP',
+ 'ILP' => 'ILP',
+ 'ILR' => 'ILR',
+ 'ILS' => '₪',
+ 'INR' => '₹',
+ 'IQD' => 'IQD',
+ 'IRR' => 'IRR',
+ 'ISJ' => 'ISJ',
+ 'ISK' => 'ISK',
+ 'ITL' => 'ITL',
+ 'JMD' => 'JMD',
+ 'JOD' => 'JOD',
+ 'JPY' => 'JP¥',
+ 'KES' => 'KES',
+ 'KGS' => 'KGS',
+ 'KHR' => 'KHR',
+ 'KMF' => 'KMF',
+ 'KPW' => 'KPW',
+ 'KRH' => 'KRH',
+ 'KRO' => 'KRO',
+ 'KRW' => '₩',
+ 'KWD' => 'KWD',
+ 'KYD' => 'KYD',
+ 'KZT' => 'KZT',
+ 'LAK' => 'LAK',
+ 'LBP' => 'LBP',
+ 'LKR' => 'LKR',
+ 'LRD' => 'LRD',
+ 'LSL' => 'LSL',
+ 'LTL' => 'LTL',
+ 'LTT' => 'LTT',
+ 'LUC' => 'LUC',
+ 'LUF' => 'LUF',
+ 'LUL' => 'LUL',
+ 'LVL' => 'LVL',
+ 'LVR' => 'LVR',
+ 'LYD' => 'LYD',
+ 'MAD' => 'MAD',
+ 'MAF' => 'MAF',
+ 'MCF' => 'MCF',
+ 'MDC' => 'MDC',
+ 'MDL' => 'MDL',
+ 'MGA' => 'MGA',
+ 'MGF' => 'MGF',
+ 'MKD' => 'MKD',
+ 'MKN' => 'MKN',
+ 'MLF' => 'MLF',
+ 'MMK' => 'MMK',
+ 'MNT' => 'MNT',
+ 'MOP' => 'MOP',
+ 'MRO' => 'MRO',
+ 'MTL' => 'MTL',
+ 'MTP' => 'MTP',
+ 'MUR' => 'MUR',
+ 'MVP' => 'MVP',
+ 'MVR' => 'MVR',
+ 'MWK' => 'MWK',
+ 'MXN' => 'MX$',
+ 'MXP' => 'MXP',
+ 'MXV' => 'MXV',
+ 'MYR' => 'MYR',
+ 'MZE' => 'MZE',
+ 'MZM' => 'MZM',
+ 'MZN' => 'MZN',
+ 'NAD' => 'NAD',
+ 'NGN' => 'NGN',
+ 'NIC' => 'NIC',
+ 'NIO' => 'NIO',
+ 'NLG' => 'NLG',
+ 'NOK' => 'NOK',
+ 'NPR' => 'NPR',
+ 'NZD' => 'NZ$',
+ 'OMR' => 'OMR',
+ 'PAB' => 'PAB',
+ 'PEI' => 'PEI',
+ 'PEN' => 'PEN',
+ 'PES' => 'PES',
+ 'PGK' => 'PGK',
+ 'PHP' => 'PHP',
+ 'PKR' => 'PKR',
+ 'PLN' => 'PLN',
+ 'PLZ' => 'PLZ',
+ 'PTE' => 'PTE',
+ 'PYG' => 'PYG',
+ 'QAR' => 'QAR',
+ 'RHD' => 'RHD',
+ 'ROL' => 'ROL',
+ 'RON' => 'RON',
+ 'RSD' => 'RSD',
+ 'RUB' => 'RUB',
+ 'RUR' => 'RUR',
+ 'RWF' => 'RWF',
+ 'SAR' => 'SAR',
+ 'SBD' => 'SBD',
+ 'SCR' => 'SCR',
+ 'SDD' => 'SDD',
+ 'SDG' => 'SDG',
+ 'SDP' => 'SDP',
+ 'SEK' => 'SEK',
+ 'SGD' => 'SGD',
+ 'SHP' => 'SHP',
+ 'SIT' => 'SIT',
+ 'SKK' => 'SKK',
+ 'SLL' => 'SLL',
+ 'SOS' => 'SOS',
+ 'SRD' => 'SRD',
+ 'SRG' => 'SRG',
+ 'SSP' => 'SSP',
+ 'STD' => 'STD',
+ 'SUR' => 'SUR',
+ 'SVC' => 'SVC',
+ 'SYP' => 'SYP',
+ 'SZL' => 'SZL',
+ 'THB' => '฿',
+ 'TJR' => 'TJR',
+ 'TJS' => 'TJS',
+ 'TMM' => 'TMM',
+ 'TMT' => 'TMT',
+ 'TND' => 'TND',
+ 'TOP' => 'TOP',
+ 'TPE' => 'TPE',
+ 'TRL' => 'TRL',
+ 'TRY' => 'TRY',
+ 'TTD' => 'TTD',
+ 'TWD' => 'NT$',
+ 'TZS' => 'TZS',
+ 'UAH' => 'UAH',
+ 'UAK' => 'UAK',
+ 'UGS' => 'UGS',
+ 'UGX' => 'UGX',
+ 'USD' => '$',
+ 'USN' => 'USN',
+ 'USS' => 'USS',
+ 'UYI' => 'UYI',
+ 'UYP' => 'UYP',
+ 'UYU' => 'UYU',
+ 'UZS' => 'UZS',
+ 'VEB' => 'VEB',
+ 'VEF' => 'VEF',
+ 'VND' => '₫',
+ 'VNN' => 'VNN',
+ 'VUV' => 'VUV',
+ 'WST' => 'WST',
+ 'XAF' => 'FCFA',
+ 'XAG' => 'XAG',
+ 'XAU' => 'XAU',
+ 'XBA' => 'XBA',
+ 'XBB' => 'XBB',
+ 'XBC' => 'XBC',
+ 'XBD' => 'XBD',
+ 'XCD' => 'EC$',
+ 'XDR' => 'XDR',
+ 'XEU' => 'XEU',
+ 'XFO' => 'XFO',
+ 'XFU' => 'XFU',
+ 'XOF' => 'CFA',
+ 'XPD' => 'XPD',
+ 'XPF' => 'CFPF',
+ 'XPT' => 'XPT',
+ 'XRE' => 'XRE',
+ 'XSU' => 'XSU',
+ 'XTS' => 'XTS',
+ 'XUA' => 'XUA',
+ 'XXX' => 'XXX',
+ 'YDD' => 'YDD',
+ 'YER' => 'YER',
+ 'YUD' => 'YUD',
+ 'YUM' => 'YUM',
+ 'YUN' => 'YUN',
+ 'YUR' => 'YUR',
+ 'ZAL' => 'ZAL',
+ 'ZAR' => 'ZAR',
+ 'ZMK' => 'ZMK',
+ 'ZMW' => 'ZMW',
+ 'ZRN' => 'ZRN',
+ 'ZRZ' => 'ZRZ',
+ 'ZWD' => 'ZWD',
+ 'ZWL' => 'ZWL',
+ 'ZWR' => 'ZWR',
+);
+
+$countryNames = array(
+ 'AC' => 'Eilean na Deasgabhalach',
+ 'AD' => 'Andorra',
+ 'AE' => 'Na h-Iomaratan Arabach Aonaichte',
+ 'AF' => 'Afghanastàn',
+ 'AG' => 'Aintìoga is Barbuda',
+ 'AI' => 'Anguilla',
+ 'AL' => 'Albàinia',
+ 'AM' => 'Airmeinia',
+ 'AN' => 'Eileanan Aintilia nan Tìrean Ìsle',
+ 'AO' => 'Angòla',
+ 'AQ' => 'An Antartaig',
+ 'AR' => 'An Argantain',
+ 'AS' => 'Samotha na h-Aimeireaga',
+ 'AT' => 'An Ostair',
+ 'AU' => 'Astràilia',
+ 'AW' => 'Arùba',
+ 'AX' => 'Na h-Eileanan Åland',
+ 'AZ' => 'Asarbaideàn',
+ 'BA' => 'Bosna agus Hearsagobhana',
+ 'BB' => 'Barbados',
+ 'BD' => 'Bangladais',
+ 'BE' => 'A’ Bheilg',
+ 'BF' => 'Buirciona Faso',
+ 'BG' => 'A’ Bhulgair',
+ 'BH' => 'Bachrain',
+ 'BI' => 'Burundaidh',
+ 'BJ' => 'Beinin',
+ 'BL' => 'Saint Barthélemy',
+ 'BM' => 'Bearmùda',
+ 'BN' => 'Brùnaigh',
+ 'BO' => 'Boilibhia',
+ 'BQ' => 'Na Tìrean Ìsle Caraibeach',
+ 'BR' => 'Braisil',
+ 'BS' => 'Na h-Eileanan Bhathama',
+ 'BT' => 'Butàn',
+ 'BV' => 'Eilean Bouvet',
+ 'BW' => 'Botsuana',
+ 'BY' => 'A’ Bhealaruis',
+ 'BZ' => 'A’ Bheilìs',
+ 'CA' => 'Canada',
+ 'CC' => 'Na h-Eileanan Cocos (Keeling)',
+ 'CD' => 'Congo - Kinshasa',
+ 'CF' => 'Poblachd Meadhan Afraga',
+ 'CG' => 'A’ Chongo - Brazzaville',
+ 'CH' => 'An Eilbheis',
+ 'CI' => 'Côte d’Ivoire',
+ 'CK' => 'Eileanan Cook',
+ 'CL' => 'An t-Sile',
+ 'CM' => 'Camarun',
+ 'CN' => 'An t-Sìn',
+ 'CO' => 'Coloimbia',
+ 'CP' => 'Eilean Clipperton',
+ 'CR' => 'Costa Rìcea',
+ 'CU' => 'Cùba',
+ 'CV' => 'An Ceap Uaine',
+ 'CW' => 'Curaçao',
+ 'CX' => 'Eilean na Nollaig',
+ 'CY' => 'Cìopras',
+ 'CZ' => 'Poblachd na Seice',
+ 'DE' => 'A’ Ghearmailt',
+ 'DG' => 'Diego Garcia',
+ 'DJ' => 'Diobùtaidh',
+ 'DK' => 'An Danmhairg',
+ 'DM' => 'Doiminicea',
+ 'DO' => 'A’ Phoblachd Dhoiminiceach',
+ 'DZ' => 'Aildiria',
+ 'EA' => 'Ceuta agus Melilla',
+ 'EC' => 'Eacuador',
+ 'EE' => 'An Eastoin',
+ 'EG' => 'An Èiphit',
+ 'EH' => 'Sathara an Iar',
+ 'ER' => 'Eartra',
+ 'ES' => 'An Spàinn',
+ 'ET' => 'An Itiop',
+ 'EU' => 'An t-Aonadh Eòrpach',
+ 'FI' => 'An Fhionnlann',
+ 'FJ' => 'Fìdi',
+ 'FK' => 'Na h-Eileanan Fàclannach',
+ 'FM' => 'Na Meanbh-Eileanan',
+ 'FO' => 'Na h-Eileanan Fàro',
+ 'FR' => 'An Fhraing',
+ 'GA' => 'Gabon',
+ 'GB' => 'RA',
+ 'GD' => 'Greanàda',
+ 'GE' => 'A’ Chairtbheil',
+ 'GF' => 'Guidheàna na Frainge',
+ 'GG' => 'Geàrnsaidh',
+ 'GH' => 'Gàna',
+ 'GI' => 'Diobraltar',
+ 'GL' => 'A’ Ghraonlann',
+ 'GM' => 'A’ Ghaimbia',
+ 'GN' => 'Gini',
+ 'GP' => 'Guadalup',
+ 'GQ' => 'Gini Mheadhan-Chriosach',
+ 'GR' => 'A’ Ghreug',
+ 'GS' => 'Seòrsea a Deas is na h-Eileanan Sandwich a Deas',
+ 'GT' => 'Guatamala',
+ 'GU' => 'Guam',
+ 'GW' => 'Gini-Bioso',
+ 'GY' => 'Guidheàna',
+ 'HK' => 'Hong Kong',
+ 'HM' => 'Eilean Heard is MhicDhòmhnaill',
+ 'HN' => 'Hondùras',
+ 'HR' => 'A’ Chròthais',
+ 'HT' => 'Haidhti',
+ 'HU' => 'An Ungair',
+ 'IC' => 'Na h-Eileanan Canàrach',
+ 'ID' => 'Na h-Innd Innse',
+ 'IE' => 'Èirinn',
+ 'IL' => 'Iosrael',
+ 'IM' => 'Eilean Mhanainn',
+ 'IN' => 'Na h-Innseachan',
+ 'IO' => 'Ranntair Breatannach Cuan nan Innseachan',
+ 'IQ' => 'Ioràc',
+ 'IR' => 'Ioràn',
+ 'IS' => 'Innis Tìle',
+ 'IT' => 'An Eadailt',
+ 'JE' => 'Deàrsaidh',
+ 'JM' => 'Diameuga',
+ 'JO' => 'Iòrdan',
+ 'JP' => 'An t-Seapan',
+ 'KE' => 'Ceinia',
+ 'KG' => 'Cìorgastan',
+ 'KH' => 'Cambuidea',
+ 'KI' => 'Ciribeas',
+ 'KM' => 'Comoros',
+ 'KN' => 'Naomh Crìstean is Nibheis',
+ 'KP' => 'Coirèa a Tuath',
+ 'KR' => 'Coirèa a Deas',
+ 'KW' => 'Cuibhèit',
+ 'KY' => 'Na h-Eileanan Caimean',
+ 'KZ' => 'Casachstàn',
+ 'LA' => 'Làthos',
+ 'LB' => 'Leabanon',
+ 'LC' => 'Naomh Lùisea',
+ 'LI' => 'Lichtenstein',
+ 'LK' => 'Sri Lanca',
+ 'LR' => 'Libèir',
+ 'LS' => 'Leasoto',
+ 'LT' => 'An Liotuain',
+ 'LU' => 'Lugsamburg',
+ 'LV' => 'An Laitbhe',
+ 'LY' => 'Libia',
+ 'MA' => 'Moroco',
+ 'MC' => 'Monaco',
+ 'MD' => 'A’ Mholdobha',
+ 'ME' => 'Am Monadh Neagrach',
+ 'MF' => 'Naomh Màrtainn',
+ 'MG' => 'Madagasgar',
+ 'MH' => 'Eileanan Mharshall',
+ 'MK' => 'A’ Mhasadon',
+ 'ML' => 'Màili',
+ 'MM' => 'Miànmar (Burma)',
+ 'MN' => 'Dùthaich nam Mongol',
+ 'MO' => 'Macàthu',
+ 'MP' => 'Na h-Eileanan Mairianach a Tuath',
+ 'MQ' => 'Mairtinic',
+ 'MR' => 'Moratàinea',
+ 'MS' => 'Montsarat',
+ 'MT' => 'Malta',
+ 'MU' => 'Na h-Eileanan Mhoiriseas',
+ 'MV' => 'Na h-Eileanan Mhaladaibh',
+ 'MW' => 'Malabhaidh',
+ 'MX' => 'Meagsago',
+ 'MY' => 'Malaidhsea',
+ 'MZ' => 'Mòsaimbic',
+ 'NA' => 'An Namaib',
+ 'NC' => 'Cailleann Nuadh',
+ 'NE' => 'Nìgeir',
+ 'NF' => 'Eilean Norfolk',
+ 'NG' => 'Nigèiria',
+ 'NI' => 'Niocaragua',
+ 'NL' => 'Na Tìrean Ìsle',
+ 'NO' => 'An Nirribhidh',
+ 'NP' => 'Neapàl',
+ 'NR' => 'Nabhru',
+ 'NU' => 'Niue',
+ 'NZ' => 'Sealainn Nuadh',
+ 'OM' => 'Omàn',
+ 'PA' => 'Panama',
+ 'PE' => 'Pearù',
+ 'PF' => 'Poilinèis na Frainge',
+ 'PG' => 'Gini Nuadh Phaputhach',
+ 'PH' => 'Na h-Eileanan Filipineach',
+ 'PK' => 'Pagastàn',
+ 'PL' => 'A’ Phòlainn',
+ 'PM' => 'Saint Pierre agus Miquelon',
+ 'PN' => 'Eilean Peit a’ Chàirn',
+ 'PR' => 'Porto Rìceo',
+ 'PS' => 'Palastain',
+ 'PT' => 'A’ Phortagail',
+ 'PW' => 'Palabh',
+ 'PY' => 'Paraguaidh',
+ 'QA' => 'Catar',
+ 'QO' => 'Roinn Iomallach a’ Chuain Sèimh',
+ 'RE' => 'Réunion',
+ 'RO' => 'Romàinia',
+ 'RS' => 'An t-Sèirb',
+ 'RU' => 'An Ruis',
+ 'RW' => 'Rubhanda',
+ 'SA' => 'Aràibia nan Sabhd',
+ 'SB' => 'Eileanan Sholaimh',
+ 'SC' => 'Na h-Eileanan Sheiseall',
+ 'SD' => 'Sudàn',
+ 'SE' => 'An t-Suain',
+ 'SG' => 'Singeapòr',
+ 'SH' => 'Eilean Naomh Eilidh',
+ 'SI' => 'An t-Slòbhain',
+ 'SJ' => 'Svalbard agus Jan Mayen',
+ 'SK' => 'An t-Slòbhac',
+ 'SL' => 'Siarra Leòmhann',
+ 'SM' => 'San Marino',
+ 'SN' => 'Seanagal',
+ 'SO' => 'Somàilia',
+ 'SR' => 'Suranam',
+ 'SS' => 'Sudàn a Deas',
+ 'ST' => 'São Tomé agus Príncipe',
+ 'SV' => 'An Salbhador',
+ 'SX' => 'Sint Maarten',
+ 'SY' => 'Siridhea',
+ 'SZ' => 'Dùthaich nan Suasaidh',
+ 'TA' => 'Tristan da Cunha',
+ 'TC' => 'Na h-Eileanan Turcach is Caiceo',
+ 'TD' => 'An t-Seàd',
+ 'TF' => 'Ranntairean a Deas na Frainge',
+ 'TG' => 'Togo',
+ 'TH' => 'Dùthaich nan Tàidh',
+ 'TJ' => 'Taidigeastàn',
+ 'TK' => 'Tokelau',
+ 'TL' => 'Timor-Leste',
+ 'TM' => 'Turcmanastàn',
+ 'TN' => 'Tuinisea',
+ 'TO' => 'Tonga',
+ 'TR' => 'An Tuirc',
+ 'TT' => 'Trianaid agus Tobago',
+ 'TV' => 'Tubhalu',
+ 'TW' => 'Taidh-Bhàn',
+ 'TZ' => 'An Tansan',
+ 'UA' => 'An Ucràin',
+ 'UG' => 'Uganda',
+ 'UM' => 'Meanbh-Eileanan Iomallach nan Stàitean Aonaichte',
+ 'US' => 'SA',
+ 'UY' => 'Uruguaidh',
+ 'UZ' => 'Usbagastàn',
+ 'VA' => 'Cathair na Bhatacain',
+ 'VC' => 'Naomh Bhionsant agus Eileanan Greanadach',
+ 'VE' => 'A’ Bheiniseala',
+ 'VG' => 'Eileanan Breatannach na Maighdinn',
+ 'VI' => 'Eileanan Aimeireagach na Maighdinn',
+ 'VN' => 'Bhiet-Nam',
+ 'VU' => 'Vanuatu',
+ 'WF' => 'Uallas agus Futuna',
+ 'WS' => 'Samotha',
+ 'XK' => 'A’ Chosobho',
+ 'YE' => 'An Eaman',
+ 'YT' => 'Mayotte',
+ 'ZA' => 'Afraga a Deas',
+ 'ZM' => 'Sàimbia',
+ 'ZW' => 'An t-Sìombab',
+);
+
+$timeUnits = array(
+ 'day-few' => '{0} làithean',
+ 'day-future-few' => 'an ceann {0} làithean',
+ 'day-future-one' => 'an ceann {0} latha',
+ 'day-future-other' => 'an ceann {0} latha',
+ 'day-future-two' => 'an ceann {0} latha',
+ 'day-narrow-future-few' => '+{0} là',
+ 'day-narrow-future-one' => '+{0} là',
+ 'day-narrow-future-other' => '+{0} là',
+ 'day-narrow-future-two' => '+{0} là',
+ 'day-narrow-past-few' => '-{0} là',
+ 'day-narrow-past-one' => '-{0} là',
+ 'day-narrow-past-other' => '-{0} là',
+ 'day-narrow-past-two' => '-{0} là',
+ 'day-one' => '{0} latha',
+ 'day-other' => '{0} latha',
+ 'day-past-few' => 'o chionn {0} làithean',
+ 'day-past-one' => 'o chionn {0} latha',
+ 'day-past-other' => 'o chionn {0} latha',
+ 'day-past-two' => 'o chionn {0} latha',
+ 'day-short-future-few' => 'an {0} là.',
+ 'day-short-future-one' => 'an {0} là',
+ 'day-short-future-other' => 'an {0} là',
+ 'day-short-future-two' => 'an {0} là',
+ 'day-short-past-few' => 'o {0} là.',
+ 'day-short-past-one' => 'o {0} là',
+ 'day-short-past-other' => 'o {0} là',
+ 'day-short-past-two' => 'o {0} là',
+ 'day-two' => '{0} latha',
+ 'hour-few' => '{0} uairean a thìde',
+ 'hour-future-few' => 'an ceann {0} uairean a thìde',
+ 'hour-future-one' => 'an ceann {0} uair a thìde',
+ 'hour-future-other' => 'an ceann {0} uair a thìde',
+ 'hour-future-two' => 'an ceann {0} uair a thìde',
+ 'hour-narrow-future-few' => '+{0} u.',
+ 'hour-narrow-future-one' => '+{0} u.',
+ 'hour-narrow-future-other' => '+{0} u.',
+ 'hour-narrow-future-two' => '+{0} u.',
+ 'hour-narrow-past-few' => '-{0} u.',
+ 'hour-narrow-past-one' => '-{0} u.',
+ 'hour-narrow-past-other' => '-{0} u.',
+ 'hour-narrow-past-two' => '-{0} u.',
+ 'hour-one' => '{0} uair a thìde',
+ 'hour-other' => '{0} uair a thìde',
+ 'hour-past-few' => 'o chionn {0} uairean a thìde',
+ 'hour-past-one' => 'o chionn {0} uair a thìde',
+ 'hour-past-other' => 'o chionn {0} uair a thìde',
+ 'hour-past-two' => 'o chionn {0} uair a thìde',
+ 'hour-short-future-few' => 'an {0} uair.',
+ 'hour-short-future-one' => 'an {0} uair',
+ 'hour-short-future-other' => 'an {0} uair',
+ 'hour-short-future-two' => 'an {0} uair',
+ 'hour-short-past-few' => 'o {0} uair.',
+ 'hour-short-past-one' => 'o {0} uair',
+ 'hour-short-past-other' => 'o {0} uair',
+ 'hour-short-past-two' => 'o {0} uair',
+ 'hour-two' => '{0} uair a thìde',
+ 'microsecond-few' => '{0} micreo-diogan',
+ 'microsecond-one' => '{0} mhicreo-diog',
+ 'microsecond-other' => '{0} micreo-diog',
+ 'microsecond-two' => '{0} mhicreo-diog',
+ 'millisecond-few' => '{0} mille-dhiogan',
+ 'millisecond-one' => '{0} mhille-dhiog',
+ 'millisecond-other' => '{0} mille-dhiog',
+ 'millisecond-two' => '{0} mhille-dhiog',
+ 'minute-few' => '{0} mionaidean',
+ 'minute-future-few' => 'an ceann {0} mionaidean',
+ 'minute-future-one' => 'an ceann {0} mhionaid',
+ 'minute-future-other' => 'an ceann {0} mionaid',
+ 'minute-future-two' => 'an ceann {0} mhionaid',
+ 'minute-narrow-future-few' => '+{0} m',
+ 'minute-narrow-future-one' => '+{0} m',
+ 'minute-narrow-future-other' => '+{0} m',
+ 'minute-narrow-future-two' => '+{0} m',
+ 'minute-narrow-past-few' => '-{0} m',
+ 'minute-narrow-past-one' => '-{0} m',
+ 'minute-narrow-past-other' => '-{0} m',
+ 'minute-narrow-past-two' => '-{0} m',
+ 'minute-one' => '{0} mhionaid',
+ 'minute-other' => '{0} mionaid',
+ 'minute-past-few' => 'o chionn {0} mionaidean',
+ 'minute-past-one' => 'o chionn {0} mhionaid',
+ 'minute-past-other' => 'o chionn {0} mionaid',
+ 'minute-past-two' => 'o chionn {0} mhionaid',
+ 'minute-short-future-few' => 'an {0} mion.',
+ 'minute-short-future-one' => 'an {0} mhion.',
+ 'minute-short-future-other' => 'an {0} mion.',
+ 'minute-short-future-two' => 'an {0} mhion.',
+ 'minute-short-past-few' => 'o {0} mion.',
+ 'minute-short-past-one' => 'o {0} mhion.',
+ 'minute-short-past-other' => 'o {0} mion.',
+ 'minute-short-past-two' => 'o {0} mhion.',
+ 'minute-two' => '{0} mhionaid',
+ 'month-few' => '{0} mìosan',
+ 'month-future-few' => 'an ceann {0} mìosan',
+ 'month-future-one' => 'an ceann {0} mhìosa',
+ 'month-future-other' => 'an ceann {0} mìosa',
+ 'month-future-two' => 'an ceann {0} mhìosa',
+ 'month-narrow-future-few' => '+{0} mì.',
+ 'month-narrow-future-one' => '+{0} mì.',
+ 'month-narrow-future-other' => '+{0} mì.',
+ 'month-narrow-future-two' => '+{0} mì.',
+ 'month-narrow-past-few' => '-{0} mì.',
+ 'month-narrow-past-one' => '-{0} mì.',
+ 'month-narrow-past-other' => '-{0} mì.',
+ 'month-narrow-past-two' => '-{0} mì.',
+ 'month-one' => '{0} mhìos',
+ 'month-other' => '{0} mìos',
+ 'month-past-few' => 'o chionn {0} mìosan',
+ 'month-past-one' => 'o chionn {0} mhìosa',
+ 'month-past-other' => 'o chionn {0} mìosa',
+ 'month-past-two' => 'o chionn {0} mhìosa',
+ 'month-short-future-few' => 'an {0} mìos.',
+ 'month-short-future-one' => 'an {0} mìos.',
+ 'month-short-future-other' => 'an {0} mìos.',
+ 'month-short-future-two' => 'an {0} mìos.',
+ 'month-short-past-few' => 'o {0} mìos.',
+ 'month-short-past-one' => 'o {0} mìos.',
+ 'month-short-past-other' => 'o {0} mìos.',
+ 'month-short-past-two' => 'o {0} mìos.',
+ 'month-two' => '{0} mhìos',
+ 'nanosecond-few' => '{0} nano-dhiogan',
+ 'nanosecond-one' => '{0} nano-dhiog',
+ 'nanosecond-other' => '{0} nano-dhiog',
+ 'nanosecond-two' => '{0} nano-dhiog',
+ 'quarter-future-few' => 'an ceann {0} cairtealan',
+ 'quarter-future-one' => 'an ceann {0} chairteil',
+ 'quarter-future-other' => 'an ceann {0} cairteil',
+ 'quarter-future-two' => 'an ceann {0} chairteil',
+ 'quarter-narrow-future-few' => '+{0} c.',
+ 'quarter-narrow-future-one' => '+{0} c.',
+ 'quarter-narrow-future-other' => '+{0} c.',
+ 'quarter-narrow-future-two' => '+{0} c.',
+ 'quarter-narrow-past-few' => '-{0} c.',
+ 'quarter-narrow-past-one' => '-{0} c.',
+ 'quarter-narrow-past-other' => '-{0} c.',
+ 'quarter-narrow-past-two' => '-{0} c.',
+ 'quarter-past-few' => 'o chionn {0} cairtealan',
+ 'quarter-past-one' => 'o chionn {0} chairteil',
+ 'quarter-past-other' => 'o chionn {0} cairteil',
+ 'quarter-past-two' => 'o chionn {0} chairteil',
+ 'quarter-short-future-few' => 'an {0} cairt.',
+ 'quarter-short-future-one' => 'an {0} chairt.',
+ 'quarter-short-future-other' => 'an {0} cairt.',
+ 'quarter-short-future-two' => 'an {0} chairt.',
+ 'quarter-short-past-few' => 'o {0} cairt.',
+ 'quarter-short-past-one' => 'o {0} chairt.',
+ 'quarter-short-past-other' => 'o {0} cairt.',
+ 'quarter-short-past-two' => 'o {0} chairt.',
+ 'second-few' => '{0} diogan',
+ 'second-future-few' => 'an ceann {0} diogan',
+ 'second-future-one' => 'an ceann {0} diog',
+ 'second-future-other' => 'an ceann {0} diog',
+ 'second-future-two' => 'an ceann {0} dhiog',
+ 'second-narrow-future-few' => '+{0} d',
+ 'second-narrow-future-one' => '+{0} d',
+ 'second-narrow-future-other' => '+{0} d',
+ 'second-narrow-future-two' => '+{0} d',
+ 'second-narrow-past-few' => '-{0} d',
+ 'second-narrow-past-one' => '-{0} d',
+ 'second-narrow-past-other' => '-{0} d',
+ 'second-narrow-past-two' => '-{0} d',
+ 'second-one' => '{0} diog',
+ 'second-other' => '{0} diog',
+ 'second-past-few' => 'o chionn {0} diogan',
+ 'second-past-one' => 'o chionn {0} diog',
+ 'second-past-other' => 'o chionn {0} diog',
+ 'second-past-two' => 'o chionn {0} dhiog',
+ 'second-short-future-few' => 'an {0} diog.',
+ 'second-short-future-one' => 'an {0} diog',
+ 'second-short-future-other' => 'an {0} diog',
+ 'second-short-future-two' => 'an {0} dhiog',
+ 'second-short-past-few' => 'o {0} diog.',
+ 'second-short-past-one' => 'o {0} diog',
+ 'second-short-past-other' => 'o {0} diog',
+ 'second-short-past-two' => 'o {0} dhiog',
+ 'second-two' => '{0} dhiog',
+ 'week-few' => '{0} seachdainean',
+ 'week-future-few' => 'an ceann {0} seachdainean',
+ 'week-future-one' => 'an ceann {0} seachdain',
+ 'week-future-other' => 'an ceann {0} seachdain',
+ 'week-future-two' => 'an ceann {0} sheachdain',
+ 'week-narrow-future-few' => '+{0} sn.',
+ 'week-narrow-future-one' => '+{0} sn.',
+ 'week-narrow-future-other' => '+{0} sn.',
+ 'week-narrow-future-two' => '+{0} sn.',
+ 'week-narrow-past-few' => '-{0} sn.',
+ 'week-narrow-past-one' => '-{0} sn.',
+ 'week-narrow-past-other' => '-{0} sn.',
+ 'week-narrow-past-two' => '-{0} sn.',
+ 'week-one' => '{0} seachdain',
+ 'week-other' => '{0} seachdain',
+ 'week-past-few' => 'o chionn {0} seachdainean',
+ 'week-past-one' => 'o chionn {0} seachdain',
+ 'week-past-other' => 'o chionn {0} seachdain',
+ 'week-past-two' => 'o chionn {0} sheachdain',
+ 'week-short-future-few' => 'an {0} seachd.',
+ 'week-short-future-one' => 'an {0} sheachd.',
+ 'week-short-future-other' => 'an {0} seachd.',
+ 'week-short-future-two' => 'an {0} sheachd.',
+ 'week-short-past-few' => 'o {0} seachd.',
+ 'week-short-past-one' => 'o {0} sheachd.',
+ 'week-short-past-other' => 'o {0} seachd.',
+ 'week-short-past-two' => 'o {0} sheachd.',
+ 'week-two' => '{0} sheachdain',
+ 'year-few' => '{0} bliadhnaichean',
+ 'year-future-few' => 'an ceann {0} bliadhnaichean',
+ 'year-future-one' => 'an ceann {0} bhliadhna',
+ 'year-future-other' => 'an ceann {0} bliadhna',
+ 'year-future-two' => 'an ceann {0} bhliadhna',
+ 'year-narrow-future-few' => '+{0} bl.',
+ 'year-narrow-future-one' => '+{0} bl.',
+ 'year-narrow-future-other' => '+{0} bl.',
+ 'year-narrow-future-two' => '+{0} bl.',
+ 'year-narrow-past-few' => '-{0} bl.',
+ 'year-narrow-past-one' => '-{0} bl.',
+ 'year-narrow-past-other' => '-{0} bl.',
+ 'year-narrow-past-two' => '-{0} bl.',
+ 'year-one' => '{0} bhliadhna',
+ 'year-other' => '{0} bliadhna',
+ 'year-past-few' => 'o chionn {0} bliadhnaichean',
+ 'year-past-one' => 'o chionn {0} bhliadhna',
+ 'year-past-other' => 'o chionn {0} bliadhna',
+ 'year-past-two' => 'o chionn {0} bhliadhna',
+ 'year-short-future-few' => 'an {0} blia.',
+ 'year-short-future-one' => 'an {0} bhlia.',
+ 'year-short-future-other' => 'an {0} blia.',
+ 'year-short-future-two' => 'an {0} bhlia.',
+ 'year-short-past-few' => 'o {0} blia.',
+ 'year-short-past-one' => 'o {0} bhlia.',
+ 'year-short-past-other' => 'o {0} blia.',
+ 'year-short-past-two' => 'o {0} bhlia.',
+ 'year-two' => '{0} bhliadhna',
+);
diff --git a/MLEB/cldr/CldrNames/CldrNamesGl.php b/MLEB/cldr/CldrNames/CldrNamesGl.php
new file mode 100644
index 00000000..4d8a3baa
--- /dev/null
+++ b/MLEB/cldr/CldrNames/CldrNamesGl.php
@@ -0,0 +1,996 @@
+<?php
+
+$languageNames = array(
+ 'ab' => 'abkhazo',
+ 'ach' => 'acoli',
+ 'af' => 'afrikaans',
+ 'agq' => 'aghem',
+ 'ak' => 'akán',
+ 'am' => 'amárico',
+ 'an' => 'aragonés',
+ 'ar' => 'árabe',
+ 'ar-001' => 'árabe estándar moderno',
+ 'arc' => 'arameo',
+ 'arn' => 'mapuche',
+ 'as' => 'assamés',
+ 'asa' => 'asu',
+ 'ast' => 'asturiano',
+ 'ay' => 'aimará',
+ 'az' => 'acerbaixano',
+ 'ba' => 'baskir',
+ 'be' => 'bielorruso',
+ 'bem' => 'bemba',
+ 'bez' => 'bena',
+ 'bg' => 'búlgaro',
+ 'bm' => 'bambara',
+ 'bn' => 'bengalí',
+ 'bo' => 'tibetano',
+ 'br' => 'bretón',
+ 'brx' => 'bodo',
+ 'bs' => 'bosnio',
+ 'ca' => 'catalán',
+ 'cgg' => 'kiga',
+ 'chr' => 'cheroqui',
+ 'ckb' => 'curdo soraní',
+ 'co' => 'corso',
+ 'cs' => 'checo',
+ 'cu' => 'eslavo eclesiástico',
+ 'cy' => 'galés',
+ 'da' => 'dinamarqués',
+ 'dav' => 'taita',
+ 'de' => 'alemán',
+ 'de-at' => 'alemán de austria',
+ 'de-ch' => 'alto alemán suízo',
+ 'dje' => 'zarma',
+ 'dsb' => 'baixo sorabio',
+ 'dua' => 'duala',
+ 'dv' => 'divehi',
+ 'dyo' => 'jola-fonyi',
+ 'dz' => 'dzongkha',
+ 'ebu' => 'embu',
+ 'ee' => 'ewé',
+ 'efi' => 'ibibio',
+ 'egy' => 'exipcio antigo',
+ 'el' => 'grego',
+ 'en' => 'inglés',
+ 'en-au' => 'inglés australiano',
+ 'en-ca' => 'inglés canadiano',
+ 'en-gb' => 'inglés británico',
+ 'en-us' => 'inglés dos Estados Unidos',
+ 'eo' => 'esperanto',
+ 'es' => 'español',
+ 'es-419' => 'español latinoamericano',
+ 'es-es' => 'castelán',
+ 'es-mx' => 'español de México',
+ 'et' => 'estoniano',
+ 'eu' => 'éuscaro',
+ 'fa' => 'persa',
+ 'fi' => 'finés',
+ 'fil' => 'filipino',
+ 'fj' => 'fixiano',
+ 'fo' => 'faroés',
+ 'fr' => 'francés',
+ 'fr-ca' => 'francés canadiano',
+ 'fr-ch' => 'francés suízo',
+ 'fy' => 'frisón',
+ 'ga' => 'irlandés',
+ 'gaa' => 'ga',
+ 'gag' => 'gagauz',
+ 'gd' => 'gaélico escocés',
+ 'gl' => 'galego',
+ 'gn' => 'guaraní',
+ 'grc' => 'grego antigo',
+ 'gsw' => 'alemán suízo',
+ 'gu' => 'guxaratiano',
+ 'guz' => 'gusii',
+ 'gv' => 'manx',
+ 'ha' => 'hausa',
+ 'haw' => 'hawaiano',
+ 'he' => 'hebreo',
+ 'hi' => 'hindi',
+ 'hr' => 'croata',
+ 'hsb' => 'alto sorabio',
+ 'ht' => 'haitiano',
+ 'hu' => 'húngaro',
+ 'hy' => 'armenio',
+ 'ia' => 'interlingua',
+ 'id' => 'indonesio',
+ 'ig' => 'ibo',
+ 'ii' => 'yi sichuanés',
+ 'is' => 'islandés',
+ 'it' => 'italiano',
+ 'iu' => 'inuit',
+ 'ja' => 'xaponés',
+ 'jgo' => 'ngomba',
+ 'jmc' => 'machame',
+ 'jv' => 'xavanés',
+ 'ka' => 'xeorxiano',
+ 'kab' => 'kabile',
+ 'kam' => 'kamba',
+ 'kde' => 'makonde',
+ 'kea' => 'caboverdiano',
+ 'kg' => 'kongo',
+ 'khq' => 'koyra chiini',
+ 'ki' => 'kikuyu',
+ 'kk' => 'casaco',
+ 'kl' => 'groenlandés',
+ 'kln' => 'kalenjin',
+ 'km' => 'cambodiano',
+ 'kn' => 'kannada',
+ 'ko' => 'coreano',
+ 'koi' => 'komi permio',
+ 'kok' => 'konkani',
+ 'ks' => 'cachemir',
+ 'ksb' => 'shambala',
+ 'ksf' => 'bafia',
+ 'ku' => 'kurdo',
+ 'kw' => 'córnico',
+ 'ky' => 'quirguiz',
+ 'la' => 'latín',
+ 'lag' => 'langi',
+ 'lb' => 'luxemburgués',
+ 'lg' => 'ganda',
+ 'lkt' => 'lakota',
+ 'ln' => 'lingala',
+ 'lo' => 'laotiano',
+ 'loz' => 'lozi',
+ 'lt' => 'lituano',
+ 'lu' => 'luba-katanga',
+ 'lua' => 'luba-lulua',
+ 'luo' => 'luo',
+ 'luy' => 'luyia',
+ 'lv' => 'letón',
+ 'mas' => 'masai',
+ 'mer' => 'meru',
+ 'mfe' => 'crioulo mauritano',
+ 'mg' => 'malgaxe',
+ 'mgh' => 'makhuwa-meetto',
+ 'mgo' => 'meta’',
+ 'mi' => 'maorí',
+ 'mk' => 'macedonio',
+ 'ml' => 'malabar',
+ 'mn' => 'mongol',
+ 'moh' => 'mohawk',
+ 'mr' => 'marathi',
+ 'ms' => 'malaio',
+ 'mt' => 'maltés',
+ 'mua' => 'mundang',
+ 'mul' => 'varias linguas',
+ 'my' => 'birmano',
+ 'naq' => 'nama',
+ 'nb' => 'noruegués bokmal',
+ 'nd' => 'ndebele do norte',
+ 'ne' => 'nepalí',
+ 'nl' => 'holandés',
+ 'nl-be' => 'flamenco',
+ 'nmg' => 'kwasio',
+ 'nn' => 'noruegués nynorsk',
+ 'no' => 'noruegués',
+ 'nqo' => 'n’ko',
+ 'nso' => 'sesotho sa leboa',
+ 'nus' => 'nuer',
+ 'ny' => 'chewa',
+ 'nyn' => 'nyankole',
+ 'oc' => 'occitano',
+ 'om' => 'oromo',
+ 'or' => 'oriya',
+ 'os' => 'osetio',
+ 'pa' => 'punjabi',
+ 'pl' => 'polaco',
+ 'ps' => 'paxtún',
+ 'pt' => 'portugués',
+ 'pt-br' => 'portugués brasileiro',
+ 'pt-pt' => 'portugués europeo',
+ 'qu' => 'quechua',
+ 'quc' => 'quiché',
+ 'rm' => 'romanche',
+ 'rn' => 'rundi',
+ 'ro' => 'romanés',
+ 'ro-md' => 'romanés moldavo',
+ 'rof' => 'rombo',
+ 'ru' => 'ruso',
+ 'rw' => 'ruandés',
+ 'rwk' => 'rwa',
+ 'sa' => 'sánscrito',
+ 'saq' => 'samburu',
+ 'sbp' => 'sangu',
+ 'sd' => 'sindhi',
+ 'se' => 'sami do norte',
+ 'seh' => 'sena',
+ 'ses' => 'koyraboro senni',
+ 'sg' => 'sango',
+ 'sh' => 'serbocroata',
+ 'shi' => 'tachelhit',
+ 'si' => 'cingalés',
+ 'sk' => 'eslovaco',
+ 'sl' => 'esloveno',
+ 'sm' => 'samoano',
+ 'sma' => 'saami do sur',
+ 'smj' => 'saami lule',
+ 'smn' => 'saami inari',
+ 'sms' => 'saami skolt',
+ 'sn' => 'shona',
+ 'so' => 'somalí',
+ 'sq' => 'albanés',
+ 'sr' => 'serbio',
+ 'ss' => 'swati',
+ 'st' => 'sesoto',
+ 'su' => 'sondanés',
+ 'sv' => 'sueco',
+ 'sw' => 'swahili',
+ 'swc' => 'suahili congolés',
+ 'ta' => 'tamil',
+ 'te' => 'telugu',
+ 'teo' => 'teso',
+ 'tet' => 'tetún',
+ 'tg' => 'taxico',
+ 'th' => 'tailandés',
+ 'ti' => 'tigriña',
+ 'tk' => 'turcomano',
+ 'tl' => 'tagalo',
+ 'tlh' => 'klingon',
+ 'tn' => 'tswana',
+ 'to' => 'tonganés',
+ 'tpi' => 'tok pisin',
+ 'tr' => 'turco',
+ 'ts' => 'xitsonga',
+ 'tt' => 'tártaro',
+ 'tum' => 'tumbuka',
+ 'tw' => 'twi',
+ 'twq' => 'tasawaq',
+ 'ty' => 'tahitiano',
+ 'tzm' => 'tamazight marroquí central',
+ 'ug' => 'uigur',
+ 'uk' => 'ucraíno',
+ 'und' => 'lingua descoñecida ou non válida',
+ 'ur' => 'urdú',
+ 'uz' => 'uzbeco',
+ 'vai' => 'vai',
+ 've' => 'venda',
+ 'vi' => 'vietnamita',
+ 'vun' => 'vunjo',
+ 'wo' => 'wólof',
+ 'xh' => 'xhosa',
+ 'xog' => 'soga',
+ 'yi' => 'yiddish',
+ 'yo' => 'ioruba',
+ 'zgh' => 'tamazight de Marrocos estándar',
+ 'zh' => 'chinés',
+ 'zh-hans' => 'chinés simplificado',
+ 'zh-hant' => 'chinés tradicional',
+ 'zu' => 'zulú',
+ 'zxx' => 'sen contido lingüístico',
+);
+
+$currencyNames = array(
+ 'ADP' => 'peseta andorrana',
+ 'AED' => 'Dirham dos Emiratos Árabes Unidos',
+ 'AFN' => 'Afgani afgano',
+ 'ALL' => 'Lek albanés',
+ 'AMD' => 'Dram armenio',
+ 'ANG' => 'Florín das Antillas Neerlandesas',
+ 'AOA' => 'Kwanza angoleño',
+ 'ARP' => 'Peso arxentino (1983–1985)',
+ 'ARS' => 'Peso arxentino',
+ 'AUD' => 'Dólar australiano',
+ 'AWG' => 'Florín arubeño',
+ 'AZN' => 'Manat acerbaixano',
+ 'BAM' => 'Marco convertible de Bosnia e Hercegovina',
+ 'BBD' => 'Dólar de Barbados',
+ 'BDT' => 'Taka de Bangladesh',
+ 'BEC' => 'Franco belga (convertible)',
+ 'BEF' => 'Franco belga',
+ 'BEL' => 'Franco belga (financeiro)',
+ 'BGN' => 'Lev búlgaro',
+ 'BHD' => 'Dinar de Baréin',
+ 'BIF' => 'Franco burundés',
+ 'BMD' => 'Dólar das Bemudas',
+ 'BND' => 'Dólar de Brunei',
+ 'BOB' => 'Boliviano',
+ 'BOP' => 'Peso boliviano',
+ 'BOV' => 'MVDOL boliviano',
+ 'BRB' => 'Cruzeiro novo brasileiro (1967–1986)',
+ 'BRC' => 'Cruzado brasileiro',
+ 'BRE' => 'Cruzeiro brasileiro (1990–1993)',
+ 'BRL' => 'Real brasileiro',
+ 'BRN' => 'Cruzado novo brasileiro',
+ 'BRR' => 'Cruzeiro brasileiro',
+ 'BSD' => 'Dólar das Bahamas',
+ 'BTN' => 'Ngultrum butanés',
+ 'BWP' => 'Pula botsuano',
+ 'BYR' => 'Rublo bielorruso',
+ 'BZD' => 'Dólar beliceño',
+ 'CAD' => 'Dólar canadiano',
+ 'CDF' => 'Franco congolés',
+ 'CHF' => 'Franco suízo',
+ 'CLF' => 'Unidades de fomento chilenas',
+ 'CLP' => 'Peso chileno',
+ 'CNY' => 'Iuán chinés',
+ 'COP' => 'Peso colombiano',
+ 'CRC' => 'Colón costarricense',
+ 'CUC' => 'Peso cubano convertible',
+ 'CUP' => 'Peso cubano',
+ 'CVE' => 'Escudo caboverdiano',
+ 'CZK' => 'Coroa checa',
+ 'DEM' => 'Marco alemán',
+ 'DJF' => 'Franco xibutiano',
+ 'DKK' => 'Coroa dinamarquesa',
+ 'DOP' => 'Peso dominicano',
+ 'DZD' => 'Dinar alxeriano',
+ 'ECS' => 'Sucre ecuatoriano',
+ 'ECV' => 'Unidade de valor constante ecuatoriana',
+ 'EGP' => 'Libra exipcia',
+ 'ERN' => 'Nakfa eritreo',
+ 'ESA' => 'Peseta española (conta A)',
+ 'ESB' => 'Peseta española (conta convertible)',
+ 'ESP' => 'Peseta española',
+ 'ETB' => 'Birr etíope',
+ 'EUR' => 'Euro',
+ 'FJD' => 'Dólar fixiano',
+ 'FKP' => 'Libra das Malvinas',
+ 'FRF' => 'Franco francés',
+ 'GBP' => 'Libra esterlina',
+ 'GEL' => 'Lari xeorxiano',
+ 'GHS' => 'Cedi de Gana',
+ 'GIP' => 'Libra de Xibraltar',
+ 'GMD' => 'Dalasi gambiano',
+ 'GNF' => 'Franco guineano',
+ 'GNS' => 'Syli guineano',
+ 'GQE' => 'Ekwele guineana',
+ 'GRD' => 'Dracma grego',
+ 'GTQ' => 'Quetzal guatemalteco',
+ 'GYD' => 'Dólar güianés',
+ 'HKD' => 'Dólar de Hong Kong',
+ 'HNL' => 'Lempira hondureño',
+ 'HRK' => 'Kuna croata',
+ 'HTG' => 'Gourde haitiano',
+ 'HUF' => 'Florín húngaro',
+ 'IDR' => 'Rupia indonesia',
+ 'IEP' => 'Libra irlandesa',
+ 'ILS' => 'Novo shequel israelí',
+ 'INR' => 'Rupia india',
+ 'IQD' => 'Dinar iraquí',
+ 'IRR' => 'Rial iraniano',
+ 'ISK' => 'Coroa islandesa',
+ 'ITL' => 'Lira italiana',
+ 'JMD' => 'Dólar xamaicano',
+ 'JOD' => 'Dinar xordano',
+ 'JPY' => 'Ien xaponés',
+ 'KES' => 'Chelín kenyano',
+ 'KGS' => 'Som quirguizo',
+ 'KHR' => 'Riel camboxano',
+ 'KMF' => 'Franco comoriano',
+ 'KPW' => 'Won norcoreano',
+ 'KRW' => 'Won surcoreano',
+ 'KWD' => 'Dinar kuwaití',
+ 'KYD' => 'Dólar das Illas Caimán',
+ 'KZT' => 'Tenge casaco',
+ 'LAK' => 'Kip laosiano',
+ 'LBP' => 'Libra libanesa',
+ 'LKR' => 'Rupia de Sri Lanka',
+ 'LRD' => 'Dólar liberiano',
+ 'LSL' => 'Loti de Lesoto',
+ 'LTL' => 'Litas lituana',
+ 'LUC' => 'Franco convertible luxemburgués',
+ 'LUF' => 'Franco luxemburgués',
+ 'LUL' => 'Franco financeiro luxemburgués',
+ 'LVL' => 'Lats letón',
+ 'LYD' => 'Dinar libio',
+ 'MAD' => 'Dirham marroquí',
+ 'MAF' => 'Franco marroquí',
+ 'MDL' => 'Leu moldavo',
+ 'MGA' => 'Ariary malgaxe',
+ 'MKD' => 'Dinar macedonio',
+ 'MMK' => 'Kiat birmano',
+ 'MNT' => 'Tugrik mongol',
+ 'MOP' => 'Pataca de Macau',
+ 'MRO' => 'Ouguiya mauritano',
+ 'MUR' => 'Rupia de Mauricio',
+ 'MVR' => 'Rupia maldiva',
+ 'MWK' => 'Kwacha de Malaui',
+ 'MXN' => 'Peso mexicano',
+ 'MXP' => 'Peso de prata mexicano (1861–1992)',
+ 'MXV' => 'Unidade de inversión mexicana',
+ 'MYR' => 'Ringgit malaio',
+ 'MZN' => 'Metical de Mozambique',
+ 'NAD' => 'Dólar namibio',
+ 'NGN' => 'Naira nixeriano',
+ 'NIC' => 'Córdoba nicaragüense',
+ 'NIO' => 'Córdoba de ouro nicaragüense',
+ 'NLG' => 'Florín holandés',
+ 'NOK' => 'Coroa norueguesa',
+ 'NPR' => 'Rupia nepalesa',
+ 'NZD' => 'Dólar neozelandés',
+ 'OMR' => 'Rial omaní',
+ 'PAB' => 'Balboa panameño',
+ 'PEI' => 'Inti peruano',
+ 'PEN' => 'Sol novo peruano',
+ 'PES' => 'Sol peruano',
+ 'PGK' => 'Kina de Papúa Nova Guinea',
+ 'PHP' => 'Peso filipino',
+ 'PKR' => 'Rupia paquistaní',
+ 'PLN' => 'Zloty polaco',
+ 'PTE' => 'Escudo portugués',
+ 'PYG' => 'Guaraní paraguaio',
+ 'QAR' => 'Rial qatarí',
+ 'RON' => 'Leu romanés',
+ 'RSD' => 'Dinar serbio',
+ 'RUB' => 'Rublo ruso',
+ 'RUR' => 'Rublo ruso (1991–1998)',
+ 'RWF' => 'Franco ruandés',
+ 'SAR' => 'Rial saudita',
+ 'SBD' => 'Dólar das Illas Salomón',
+ 'SCR' => 'Rupia de Seixeles',
+ 'SDG' => 'Libra sudanesa',
+ 'SEK' => 'Coroa sueca',
+ 'SGD' => 'Dólar de Singapur',
+ 'SHP' => 'Libra de Santa Helena',
+ 'SLL' => 'Leone de Serra Leoa',
+ 'SOS' => 'Chelín somalí',
+ 'SRD' => 'Dólar surinamés',
+ 'SSP' => 'Libra sursudanesa',
+ 'STD' => 'Dobra de San Tomé e Príncipe',
+ 'SUR' => 'Rublo soviético',
+ 'SVC' => 'Colón salvadoreño',
+ 'SYP' => 'Libra siria',
+ 'SZL' => 'Lilanxeni de Suacilandia',
+ 'THB' => 'Baht tailandés',
+ 'TJS' => 'Somoni taxico',
+ 'TMT' => 'Manat turcomano',
+ 'TND' => 'Dinar tunesino',
+ 'TOP' => 'Paʻanga de Tonga',
+ 'TRY' => 'Lira turca',
+ 'TTD' => 'Dólar de Trinidade e Tobago',
+ 'TWD' => 'Novo dólar taiwanés',
+ 'TZS' => 'Chelín tanzano',
+ 'UAH' => 'Grivna ucraína',
+ 'UGX' => 'Chelín ugandés',
+ 'USD' => 'Dólar estadounidense',
+ 'UYI' => 'Peso en unidades indexadas uruguaio',
+ 'UYP' => 'Peso uruguaio (1975–1993)',
+ 'UYU' => 'Peso uruguaio',
+ 'UZS' => 'Som usbeco',
+ 'VEB' => 'Bolívar venezolano (1871–2008)',
+ 'VEF' => 'Bolívar venezolano',
+ 'VND' => 'Dong vietnamita',
+ 'VUV' => 'Vatu vanuatense',
+ 'WST' => 'Tala samoano',
+ 'XAF' => 'Franco CFA BEAC',
+ 'XAG' => 'Prata',
+ 'XAU' => 'Ouro',
+ 'XCD' => 'Dólar Caribe-Leste',
+ 'XOF' => 'Franco CFA BCEAO',
+ 'XPD' => 'Paladio',
+ 'XPF' => 'Franco CFP',
+ 'XPT' => 'Platino',
+ 'XXX' => 'Unidade monetaria descoñecida',
+ 'YER' => 'Rial iemení',
+ 'ZAR' => 'Rand sudafricano',
+ 'ZMK' => 'Kwacha zambiano (1968–2012)',
+ 'ZMW' => 'Kwacha zambiano',
+);
+
+$currencySymbols = array(
+ 'AED' => 'AED',
+ 'AFN' => 'AFN',
+ 'ALL' => 'ALL',
+ 'AMD' => 'AMD',
+ 'ANG' => 'ANG',
+ 'AOA' => 'AOA',
+ 'ARS' => 'ARS',
+ 'AUD' => '$A',
+ 'AWG' => 'AWG',
+ 'AZN' => 'AZN',
+ 'BAM' => 'BAM',
+ 'BBD' => 'BBD',
+ 'BDT' => 'BDT',
+ 'BGN' => 'BGN',
+ 'BHD' => 'BHD',
+ 'BIF' => 'BIF',
+ 'BMD' => 'BMD',
+ 'BND' => 'BND',
+ 'BOB' => 'BOB',
+ 'BRL' => '$R',
+ 'BSD' => 'BSD',
+ 'BTN' => 'BTN',
+ 'BWP' => 'BWP',
+ 'BYR' => 'BYR',
+ 'BZD' => 'BZD',
+ 'CAD' => '$CA',
+ 'CDF' => 'CDF',
+ 'CHF' => 'CHF',
+ 'CLP' => 'CLP',
+ 'CNY' => 'CN¥',
+ 'COP' => 'COP',
+ 'CRC' => 'CRC',
+ 'CUC' => 'CUC',
+ 'CUP' => 'CUP',
+ 'CVE' => 'CVE',
+ 'CZK' => 'CZK',
+ 'DJF' => 'DJF',
+ 'DKK' => 'DKK',
+ 'DOP' => 'DOP',
+ 'DZD' => 'DZD',
+ 'EGP' => 'EGP',
+ 'ERN' => 'ERN',
+ 'ESP' => '₧',
+ 'ETB' => 'ETB',
+ 'EUR' => '€',
+ 'FJD' => 'FJD',
+ 'FKP' => 'FKP',
+ 'GBP' => '£',
+ 'GEL' => 'GEL',
+ 'GHS' => 'GHS',
+ 'GIP' => 'GIP',
+ 'GMD' => 'GMD',
+ 'GNF' => 'GNF',
+ 'GTQ' => 'GTQ',
+ 'GYD' => 'GYD',
+ 'HKD' => '$HK',
+ 'HNL' => 'HNL',
+ 'HRK' => 'HRK',
+ 'HTG' => 'HTG',
+ 'HUF' => 'HUF',
+ 'IDR' => 'IDR',
+ 'ILS' => '₪',
+ 'INR' => '₹',
+ 'IQD' => 'IQD',
+ 'IRR' => 'IRR',
+ 'ISK' => 'ISK',
+ 'JMD' => 'JMD',
+ 'JOD' => 'JOD',
+ 'JPY' => '¥JP',
+ 'KES' => 'KES',
+ 'KGS' => 'KGS',
+ 'KHR' => 'KHR',
+ 'KMF' => 'KMF',
+ 'KPW' => 'KPW',
+ 'KRW' => '₩',
+ 'KWD' => 'KWD',
+ 'KYD' => 'KYD',
+ 'KZT' => 'KZT',
+ 'LAK' => 'LAK',
+ 'LBP' => 'LBP',
+ 'LKR' => 'LKR',
+ 'LRD' => 'LRD',
+ 'LTL' => 'LTL',
+ 'LVL' => 'LVL',
+ 'LYD' => 'LYD',
+ 'MAD' => 'MAD',
+ 'MDL' => 'MDL',
+ 'MGA' => 'MGA',
+ 'MKD' => 'MKD',
+ 'MMK' => 'MMK',
+ 'MNT' => 'MNT',
+ 'MOP' => 'MOP',
+ 'MRO' => 'MRO',
+ 'MUR' => 'MUR',
+ 'MVR' => 'MVR',
+ 'MWK' => 'MWK',
+ 'MXN' => '$MX',
+ 'MYR' => 'MYR',
+ 'MZN' => 'MZN',
+ 'NAD' => 'NAD',
+ 'NGN' => 'NGN',
+ 'NIO' => 'NIO',
+ 'NOK' => 'NOK',
+ 'NPR' => 'NPR',
+ 'NZD' => 'NZ$',
+ 'OMR' => 'OMR',
+ 'PAB' => 'PAB',
+ 'PEN' => 'PEN',
+ 'PGK' => 'PGK',
+ 'PHP' => 'PHP',
+ 'PKR' => 'PKR',
+ 'PLN' => 'PLN',
+ 'PYG' => 'PYG',
+ 'QAR' => 'QAR',
+ 'RON' => 'RON',
+ 'RSD' => 'RSD',
+ 'RUB' => 'RUB',
+ 'RWF' => 'RWF',
+ 'SAR' => 'SAR',
+ 'SBD' => 'SBD',
+ 'SCR' => 'SCR',
+ 'SDG' => 'SDG',
+ 'SEK' => 'SEK',
+ 'SGD' => 'SGD',
+ 'SHP' => 'SHP',
+ 'SLL' => 'SLL',
+ 'SOS' => 'SOS',
+ 'SRD' => 'SRD',
+ 'SSP' => 'SSP',
+ 'STD' => 'STD',
+ 'SYP' => 'SYP',
+ 'SZL' => 'SZL',
+ 'THB' => '฿',
+ 'TJS' => 'TJS',
+ 'TMT' => 'TMT',
+ 'TND' => 'TND',
+ 'TOP' => 'TOP',
+ 'TRY' => 'TRY',
+ 'TTD' => 'TTD',
+ 'TWD' => '$NT',
+ 'TZS' => 'TZS',
+ 'UAH' => 'UAH',
+ 'UGX' => 'UGX',
+ 'USD' => '$',
+ 'UYU' => 'UYU',
+ 'UZS' => 'UZS',
+ 'VEF' => 'VEF',
+ 'VND' => '₫',
+ 'VUV' => 'VUV',
+ 'WST' => 'WST',
+ 'XAF' => 'FCFA',
+ 'XCD' => 'EC$',
+ 'XOF' => 'CFA',
+ 'XPF' => 'CFPF',
+ 'YER' => 'YER',
+ 'ZAR' => 'ZAR',
+ 'ZMW' => 'ZMW',
+);
+
+$countryNames = array(
+ 'AC' => 'Illa de Ascensión',
+ 'AD' => 'Andorra',
+ 'AE' => 'Emiratos Árabes Unidos',
+ 'AF' => 'Afganistán',
+ 'AG' => 'Antiga e Barbuda',
+ 'AI' => 'Anguila',
+ 'AL' => 'Albania',
+ 'AM' => 'Armenia',
+ 'AN' => 'Antillas Holandesas',
+ 'AO' => 'Angola',
+ 'AQ' => 'Antártida',
+ 'AR' => 'Arxentina',
+ 'AS' => 'Samoa Americana',
+ 'AT' => 'Austria',
+ 'AU' => 'Australia',
+ 'AW' => 'Aruba',
+ 'AX' => 'Illas Aland',
+ 'AZ' => 'Acerbaixán',
+ 'BA' => 'Bosnia e Hercegovina',
+ 'BB' => 'Barbados',
+ 'BD' => 'Bangladesh',
+ 'BE' => 'Bélxica',
+ 'BF' => 'Burkina Faso',
+ 'BG' => 'Bulgaria',
+ 'BH' => 'Bahrein',
+ 'BI' => 'Burundi',
+ 'BJ' => 'Benin',
+ 'BL' => 'San Bartolomé',
+ 'BM' => 'Bermudas',
+ 'BN' => 'Brunei',
+ 'BO' => 'Bolivia',
+ 'BQ' => 'Caribe neerlandés',
+ 'BR' => 'Brasil',
+ 'BS' => 'Bahamas',
+ 'BT' => 'Bután',
+ 'BV' => 'Illa Bouvet',
+ 'BW' => 'Botsuana',
+ 'BY' => 'Bielorrusia',
+ 'BZ' => 'Belice',
+ 'CA' => 'Canadá',
+ 'CC' => 'Illas Cocos (Keeling)',
+ 'CD' => 'República Democrática do Congo',
+ 'CF' => 'República Africana Central',
+ 'CG' => 'Congo',
+ 'CH' => 'Suíza',
+ 'CI' => 'Costa de Marfil',
+ 'CK' => 'Illas Cook',
+ 'CL' => 'Chile',
+ 'CM' => 'Camerún',
+ 'CN' => 'China',
+ 'CO' => 'Colombia',
+ 'CP' => 'Illa Clipperton',
+ 'CR' => 'Costa Rica',
+ 'CU' => 'Cuba',
+ 'CV' => 'Cabo Verde',
+ 'CW' => 'Curaçao',
+ 'CX' => 'Illa Christmas',
+ 'CY' => 'Chipre',
+ 'CZ' => 'República Checa',
+ 'DE' => 'Alemaña',
+ 'DG' => 'Diego García',
+ 'DJ' => 'Xibuti',
+ 'DK' => 'Dinamarca',
+ 'DM' => 'Dominica',
+ 'DO' => 'República Dominicana',
+ 'DZ' => 'Arxelia',
+ 'EA' => 'Ceuta e Melilla',
+ 'EC' => 'Ecuador',
+ 'EE' => 'Estonia',
+ 'EG' => 'Exipto',
+ 'EH' => 'Sahara Occidental',
+ 'ER' => 'Eritrea',
+ 'ES' => 'España',
+ 'ET' => 'Etiopía',
+ 'EU' => 'Unión Europea',
+ 'FI' => 'Finlandia',
+ 'FJ' => 'Fixi',
+ 'FK' => 'Illas Malvinas',
+ 'FM' => 'Micronesia',
+ 'FO' => 'Illas Feroe',
+ 'FR' => 'Francia',
+ 'GA' => 'Gabón',
+ 'GB' => 'RU',
+ 'GD' => 'Granada',
+ 'GE' => 'Xeorxia',
+ 'GF' => 'Güiana Francesa',
+ 'GG' => 'Guernsey',
+ 'GH' => 'Gana',
+ 'GI' => 'Xibraltar',
+ 'GL' => 'Grenlandia',
+ 'GM' => 'Gambia',
+ 'GN' => 'Guinea',
+ 'GP' => 'Guadalupe',
+ 'GQ' => 'Guinea Ecuatorial',
+ 'GR' => 'Grecia',
+ 'GS' => 'Xeorxia do Sur e Illas Sandwich',
+ 'GT' => 'Guatemala',
+ 'GU' => 'Guam',
+ 'GW' => 'Guinea-Bissau',
+ 'GY' => 'Güiana',
+ 'HK' => 'Hong Kong',
+ 'HM' => 'Illa Heard e Illas McDonald',
+ 'HN' => 'Honduras',
+ 'HR' => 'Croacia',
+ 'HT' => 'Haití',
+ 'HU' => 'Hungría',
+ 'IC' => 'Illas Canarias',
+ 'ID' => 'Indonesia',
+ 'IE' => 'Irlanda',
+ 'IL' => 'Israel',
+ 'IM' => 'Illa de Man',
+ 'IN' => 'India',
+ 'IO' => 'Territorio Británico do Océano Índico',
+ 'IQ' => 'Iraq',
+ 'IR' => 'Irán',
+ 'IS' => 'Islandia',
+ 'IT' => 'Italia',
+ 'JE' => 'Jersey',
+ 'JM' => 'Xamaica',
+ 'JO' => 'Xordania',
+ 'JP' => 'Xapón',
+ 'KE' => 'Quenia',
+ 'KG' => 'Quirguicistán',
+ 'KH' => 'Cambodia',
+ 'KI' => 'Kiribati',
+ 'KM' => 'Comores',
+ 'KN' => 'San Cristovo e Nevis',
+ 'KP' => 'Corea do Norte',
+ 'KR' => 'Corea do Sur',
+ 'KW' => 'Kuwait',
+ 'KY' => 'Illas Caimán',
+ 'KZ' => 'Kazakhstan',
+ 'LA' => 'Laos',
+ 'LB' => 'Líbano',
+ 'LC' => 'Santa Lucía',
+ 'LI' => 'Liechtenstein',
+ 'LK' => 'Sri Lanka',
+ 'LR' => 'Liberia',
+ 'LS' => 'Lesotho',
+ 'LT' => 'Lituania',
+ 'LU' => 'Luxemburgo',
+ 'LV' => 'Letonia',
+ 'LY' => 'Libia',
+ 'MA' => 'Marrocos',
+ 'MC' => 'Mónaco',
+ 'MD' => 'Moldova',
+ 'ME' => 'Montenegro',
+ 'MF' => 'San Martiño',
+ 'MG' => 'Madagascar',
+ 'MH' => 'Illas Marshall',
+ 'MK' => 'Macedonia',
+ 'ML' => 'Mali',
+ 'MM' => 'Myanmar (Birmania)',
+ 'MN' => 'Mongolia',
+ 'MO' => 'Macau',
+ 'MP' => 'Illas Marianas do norte',
+ 'MQ' => 'Martinica',
+ 'MR' => 'Mauritania',
+ 'MS' => 'Montserrat',
+ 'MT' => 'Malta',
+ 'MU' => 'Mauricio',
+ 'MV' => 'Maldivas',
+ 'MW' => 'Malaui',
+ 'MX' => 'México',
+ 'MY' => 'Malaisia',
+ 'MZ' => 'Mozambique',
+ 'NA' => 'Namibia',
+ 'NC' => 'Nova Caledonia',
+ 'NE' => 'Níxer',
+ 'NF' => 'Illa Norfolk',
+ 'NG' => 'Nixeria',
+ 'NI' => 'Nicaragua',
+ 'NL' => 'Países Baixos',
+ 'NO' => 'Noruega',
+ 'NP' => 'Nepal',
+ 'NR' => 'Nauru',
+ 'NU' => 'Niue',
+ 'NZ' => 'Nova Celandia',
+ 'OM' => 'Omán',
+ 'PA' => 'Panamá',
+ 'PE' => 'Perú',
+ 'PF' => 'Polinesia Francesa',
+ 'PG' => 'Papúa Nova Guinea',
+ 'PH' => 'Filipinas',
+ 'PK' => 'Paquistán',
+ 'PL' => 'Polonia',
+ 'PM' => 'San Pedro e Miguelón',
+ 'PN' => 'Illas Pitcairn',
+ 'PR' => 'Porto Rico',
+ 'PS' => 'Palestina',
+ 'PT' => 'Portugal',
+ 'PW' => 'Palau',
+ 'PY' => 'Paraguai',
+ 'QA' => 'Qatar',
+ 'QO' => 'Oceanía Distante',
+ 'RE' => 'Reunión',
+ 'RO' => 'Romanía',
+ 'RS' => 'Serbia',
+ 'RU' => 'Rusia',
+ 'RW' => 'Ruanda',
+ 'SA' => 'Arabia Saudita',
+ 'SB' => 'Illas Salomón',
+ 'SC' => 'Seixeles',
+ 'SD' => 'Sudán',
+ 'SE' => 'Suecia',
+ 'SG' => 'Singapur',
+ 'SH' => 'Santa Helena',
+ 'SI' => 'Eslovenia',
+ 'SJ' => 'Svalbard e Jan Mayen',
+ 'SK' => 'Eslovaquia',
+ 'SL' => 'Serra Leoa',
+ 'SM' => 'San Marino',
+ 'SN' => 'Senegal',
+ 'SO' => 'Somalia',
+ 'SR' => 'Surinam',
+ 'SS' => 'Sudán do sur',
+ 'ST' => 'San Tomé e Príncipe',
+ 'SV' => 'El Salvador',
+ 'SX' => 'Sint Maarten',
+ 'SY' => 'Siria',
+ 'SZ' => 'Suacilandia',
+ 'TA' => 'Tristán da Cunha',
+ 'TC' => 'Illas Turks e Caicos',
+ 'TD' => 'Chad',
+ 'TF' => 'Territorios Franceses do Sul',
+ 'TG' => 'Togo',
+ 'TH' => 'Tailandia',
+ 'TJ' => 'Taxiquistán',
+ 'TK' => 'Tokelau',
+ 'TL' => 'Timor Leste',
+ 'TM' => 'Turkmenistán',
+ 'TN' => 'Tunisia',
+ 'TO' => 'Tonga',
+ 'TR' => 'Turquía',
+ 'TT' => 'Trindade e Tobago',
+ 'TV' => 'Tuvalu',
+ 'TW' => 'Taiwán',
+ 'TZ' => 'Tanzania',
+ 'UA' => 'Ucraína',
+ 'UG' => 'Uganda',
+ 'UM' => 'Illas Menores Distantes dos EUA.',
+ 'US' => 'EUA',
+ 'UY' => 'Uruguai',
+ 'UZ' => 'Uzbekistán',
+ 'VA' => 'Cidade do Vaticano',
+ 'VC' => 'San Vicente e Granadinas',
+ 'VE' => 'Venezuela',
+ 'VG' => 'Illas Virxes Británicas',
+ 'VI' => 'Illas Virxes Estadounidenses',
+ 'VN' => 'Vietnam',
+ 'VU' => 'Vanuatu',
+ 'WF' => 'Wallis e Futuna',
+ 'WS' => 'Samoa',
+ 'XK' => 'Kosovo',
+ 'YE' => 'Iemen',
+ 'YT' => 'Mayotte',
+ 'ZA' => 'Sudáfrica',
+ 'ZM' => 'Zambia',
+ 'ZW' => 'Cimbabue',
+);
+
+$timeUnits = array(
+ 'day-future-one' => 'En {0} día',
+ 'day-future-other' => 'En {0} días',
+ 'day-narrow-future-one' => 'En {0} d.',
+ 'day-narrow-future-other' => 'En {0} d.',
+ 'day-narrow-past-one' => 'Hai {0} d.',
+ 'day-narrow-past-other' => 'Hai {0} d.',
+ 'day-one' => '{0} día',
+ 'day-other' => '{0} días',
+ 'day-past-one' => 'Hai {0} día',
+ 'day-past-other' => 'Hai {0} días',
+ 'hour-future-one' => 'En {0} hora',
+ 'hour-future-other' => 'En {0} horas',
+ 'hour-narrow-future-one' => 'En {0} h.',
+ 'hour-narrow-future-other' => 'en {0} hr.',
+ 'hour-narrow-past-one' => 'Hai {0} hr.',
+ 'hour-narrow-past-other' => 'Hai {0} hr.',
+ 'hour-one' => '{0} hora',
+ 'hour-other' => '{0} horas',
+ 'hour-past-one' => 'Hai {0} hora',
+ 'hour-past-other' => 'Hai {0} horas',
+ 'hour-short-future-one' => 'En {0} hr.',
+ 'hour-short-future-other' => 'En {0} hr.',
+ 'hour-short-past-one' => 'Hai {0} hr.',
+ 'hour-short-past-other' => 'Hai {0} hr.',
+ 'microsecond-one' => '{0} microsegundo',
+ 'microsecond-other' => '{0} microsegundos',
+ 'millisecond-one' => '{0} milisegundo',
+ 'millisecond-other' => '{0} milisegundos',
+ 'minute-future-one' => 'En {0} minuto',
+ 'minute-future-other' => 'En {0} minutos',
+ 'minute-one' => '{0} minuto',
+ 'minute-other' => '{0} minutos',
+ 'minute-past-one' => 'Hai {0} minuto',
+ 'minute-past-other' => 'Hai {0} minutos',
+ 'minute-short-future-one' => 'En {0} min.',
+ 'minute-short-future-other' => 'En {0} min.',
+ 'minute-short-past-one' => 'Hai {0} min.',
+ 'minute-short-past-other' => 'Hai {0} min.',
+ 'month-future-one' => 'En {0} mes',
+ 'month-future-other' => 'En {0} meses',
+ 'month-one' => '{0} mes',
+ 'month-other' => '{0} meses',
+ 'month-past-one' => 'Hai {0} mes',
+ 'month-past-other' => 'Hai {0} meses',
+ 'month-short-future-one' => 'En {0} m.',
+ 'month-short-future-other' => 'En {0} m.',
+ 'month-short-past-one' => 'Hai {0} m.',
+ 'month-short-past-other' => 'Hai {0} m.',
+ 'nanosecond-one' => '{0} nanosegundo',
+ 'nanosecond-other' => '{0} nanosegundos',
+ 'quarter-future-one' => 'En {0} trimestre',
+ 'quarter-future-other' => 'En {0} trimestres',
+ 'quarter-narrow-future-one' => 'En {0} trim.',
+ 'quarter-narrow-future-other' => 'En {0} trim.',
+ 'quarter-narrow-past-one' => 'Hai {0} trim.',
+ 'quarter-narrow-past-other' => 'Hai {0} trim.',
+ 'quarter-past-one' => 'Hai {0} trimestre',
+ 'quarter-past-other' => 'Hai {0} trimestres',
+ 'quarter-short-future-one' => 'En {0} trim.',
+ 'quarter-short-future-other' => 'En {0} trim.',
+ 'quarter-short-past-one' => 'Hai {0} trim.',
+ 'quarter-short-past-other' => 'Hai {0} trim.',
+ 'second-future-one' => 'En {0} segundo',
+ 'second-future-other' => 'En {0} segundos',
+ 'second-narrow-future-one' => 'En {0} s.',
+ 'second-narrow-future-other' => 'En {0} s.',
+ 'second-narrow-past-one' => 'Hai {0} s.',
+ 'second-narrow-past-other' => 'Hai {0} s.',
+ 'second-one' => '{0} segundo',
+ 'second-other' => '{0} segundos',
+ 'second-past-one' => 'Hai {0} segundo',
+ 'second-past-other' => 'Hai {0} segundos',
+ 'second-short-future-one' => 'En {0} seg.',
+ 'second-short-future-other' => 'En {0} seg.',
+ 'second-short-past-one' => 'Hai {0} seg.',
+ 'second-short-past-other' => 'Hai {0} seg.',
+ 'week-future-one' => 'En {0} semana',
+ 'week-future-other' => 'En {0} semanas',
+ 'week-one' => '{0} semana',
+ 'week-other' => '{0} semanas',
+ 'week-past-one' => 'Hai {0} semana',
+ 'week-past-other' => 'Hai {0} semanas',
+ 'week-short-future-one' => 'En {0} sem.',
+ 'week-short-future-other' => 'En {0} sem.',
+ 'week-short-past-one' => 'Hai {0} sem.',
+ 'week-short-past-other' => 'Hai {0} sem.',
+ 'year-future-one' => 'En {0} ano',
+ 'year-future-other' => 'En {0} anos',
+ 'year-narrow-future-one' => 'En {0} anos',
+ 'year-narrow-future-other' => 'En {0} anos',
+ 'year-narrow-past-one' => 'Hai {0} anos',
+ 'year-narrow-past-other' => 'Hai {0} anos',
+ 'year-one' => '{0} ano',
+ 'year-other' => '{0} anos',
+ 'year-past-one' => 'Hai {0} ano',
+ 'year-past-other' => 'Hai {0} anos',
+ 'year-short-future-one' => 'En {0} anos',
+ 'year-short-future-other' => 'En {0} anos',
+ 'year-short-past-one' => 'Hai {0} anos',
+ 'year-short-past-other' => 'Hai {0} anos',
+);
diff --git a/MLEB/cldr/CldrNames/CldrNamesGsw.php b/MLEB/cldr/CldrNames/CldrNamesGsw.php
new file mode 100644
index 00000000..69a05cf2
--- /dev/null
+++ b/MLEB/cldr/CldrNames/CldrNamesGsw.php
@@ -0,0 +1,1003 @@
+<?php
+
+$languageNames = array(
+ 'aa' => 'Afar',
+ 'ab' => 'Abchasisch',
+ 'ace' => 'Aceh',
+ 'ach' => 'Acholi',
+ 'ada' => 'Adangme',
+ 'ady' => 'Adygai',
+ 'ae' => 'Avestisch',
+ 'af' => 'Afrikaans',
+ 'afh' => 'Afrihili',
+ 'ain' => 'Ainu',
+ 'ak' => 'Akan',
+ 'akk' => 'Akkadisch',
+ 'ale' => 'Aleutisch',
+ 'alt' => 'Süüd-Altaisch',
+ 'am' => 'Amharisch',
+ 'an' => 'Aragonesisch',
+ 'ang' => 'Altänglisch',
+ 'anp' => 'Angika',
+ 'ar' => 'Arabisch',
+ 'arc' => 'Aramääisch',
+ 'arn' => 'Araukanisch',
+ 'arp' => 'Arapaho',
+ 'arw' => 'Arawak',
+ 'as' => 'Assamesisch',
+ 'asa' => 'Asu (Tanzania)',
+ 'ast' => 'Aschturianisch',
+ 'av' => 'Awarisch',
+ 'awa' => 'Awadhi',
+ 'ay' => 'Aymara',
+ 'az' => 'Aserbaidschanisch',
+ 'ba' => 'Baschkirisch',
+ 'bal' => 'Belutschisch',
+ 'ban' => 'Balinesisch',
+ 'bas' => 'Basaa',
+ 'be' => 'Wiissrussisch',
+ 'bej' => 'Bedauye',
+ 'bem' => 'Bemba',
+ 'bez' => 'Bena (Tanzania)',
+ 'bg' => 'Bulgaarisch',
+ 'bho' => 'Bhodschpuri',
+ 'bi' => 'Bislama',
+ 'bik' => 'Bikolisch',
+ 'bin' => 'Bini',
+ 'bla' => 'Blackfoot-Schpraach',
+ 'bm' => 'Bambara',
+ 'bn' => 'Bengalisch',
+ 'bo' => 'Tibeetisch',
+ 'br' => 'Brötoonisch',
+ 'bra' => 'Braj-Bhakha',
+ 'bs' => 'Bosnisch',
+ 'bua' => 'Burjatisch',
+ 'bug' => 'Bugineesisch',
+ 'byn' => 'Blin',
+ 'ca' => 'Katalaanisch',
+ 'cad' => 'Caddo',
+ 'car' => 'Kariibisch',
+ 'cch' => 'Atsam',
+ 'ce' => 'Tschetscheenisch',
+ 'ceb' => 'Cebuano',
+ 'ch' => 'Chamorro',
+ 'chb' => 'Tschibtscha',
+ 'chg' => 'Tschagataisch',
+ 'chk' => 'Trukesisch',
+ 'chm' => 'Tscheremissisch',
+ 'chn' => 'Chinook',
+ 'cho' => 'Choctaw',
+ 'chp' => 'Chipewyan',
+ 'chr' => 'Cherokee',
+ 'chy' => 'Cheyenne',
+ 'co' => 'Korsisch',
+ 'cop' => 'Koptisch',
+ 'cr' => 'Cree',
+ 'crh' => 'Krimtatarisch',
+ 'cs' => 'Tschechisch',
+ 'csb' => 'Kaschubisch',
+ 'cu' => 'Chileslawisch',
+ 'cv' => 'Tschuwaschisch',
+ 'cy' => 'Walisisch',
+ 'da' => 'Tänisch',
+ 'dak' => 'Takota',
+ 'dar' => 'Targiinisch',
+ 'de' => 'Tüütsch',
+ 'de-at' => 'Öschtriichischs Tüütsch',
+ 'de-ch' => 'Schwiizer Hochtüütsch',
+ 'del' => 'Delaware-Schpraach',
+ 'den' => 'Slavey',
+ 'dgr' => 'Togrib',
+ 'din' => 'Tinka',
+ 'doi' => 'Togri',
+ 'dsb' => 'Nidersorbisch',
+ 'dua' => 'Tuala',
+ 'dum' => 'Mittelniderländisch',
+ 'dv' => 'Malediivisch',
+ 'dyu' => 'Tiula',
+ 'dz' => 'Dschongkha',
+ 'ee' => 'Ewe',
+ 'efi' => 'Efikisch',
+ 'egy' => 'Altägyptisch',
+ 'eka' => 'Ekajuk',
+ 'el' => 'Griechisch',
+ 'elx' => 'Elamisch',
+ 'en' => 'Änglisch',
+ 'en-au' => 'Auschtralischs Änglisch',
+ 'en-ca' => 'Kanadischs Änglisch',
+ 'en-gb' => 'Britischs Änglisch',
+ 'en-us' => 'Amerikanischs Änglisch',
+ 'enm' => 'Mittelänglisch',
+ 'eo' => 'Eschperanto',
+ 'es' => 'Schpanisch',
+ 'es-419' => 'Latiinamerikanischs Schpanisch',
+ 'es-es' => 'Ibeerischs Schpanisch',
+ 'et' => 'Eestnisch',
+ 'eu' => 'Baskisch',
+ 'ewo' => 'Ewondo',
+ 'fa' => 'Persisch',
+ 'fan' => 'Pangwe-Schpraach',
+ 'fat' => 'Fanti-Schpraach',
+ 'ff' => 'Ful',
+ 'fi' => 'Finnisch',
+ 'fil' => 'Filipino',
+ 'fj' => 'Fidschianisch',
+ 'fo' => 'Färöisch',
+ 'fon' => 'Fon',
+ 'fr' => 'Französisch',
+ 'fr-ca' => 'Kanadischs Französisch',
+ 'fr-ch' => 'Schwiizer Französisch',
+ 'frm' => 'Mittelfranzösisch',
+ 'fro' => 'Altfranzösisch',
+ 'frr' => 'Nordfriesisch',
+ 'frs' => 'Oschtfriesisch',
+ 'fur' => 'Friulisch',
+ 'fy' => 'Friesisch',
+ 'ga' => 'Iirisch',
+ 'gaa' => 'Ga',
+ 'gay' => 'Gayo',
+ 'gba' => 'Gbaya',
+ 'gd' => 'Schottisch-Gäälisch',
+ 'gez' => 'Geez',
+ 'gil' => 'Gilbertesisch',
+ 'gl' => 'Galizisch',
+ 'gmh' => 'Mittelhochtüütsch',
+ 'gn' => 'Guarani',
+ 'goh' => 'Althochtüütsch',
+ 'gon' => 'Gondi',
+ 'gor' => 'Mongondou',
+ 'got' => 'Gotisch',
+ 'grb' => 'Grebo',
+ 'grc' => 'Altgriechisch',
+ 'gsw' => 'Schwiizertüütsch',
+ 'gu' => 'Gujarati',
+ 'gv' => 'Manx-Gäälisch',
+ 'gwi' => 'Kutchinisch',
+ 'ha' => 'Haussa',
+ 'hai' => 'Haida',
+ 'haw' => 'Hawaiianisch',
+ 'he' => 'Hebräisch',
+ 'hi' => 'Hindi',
+ 'hil' => 'Hiligaynonisch',
+ 'hit' => 'Hethitisch',
+ 'hmn' => 'Miao',
+ 'ho' => 'Hiri-Motu',
+ 'hr' => 'Kroazisch',
+ 'hsb' => 'Obersorbisch',
+ 'ht' => 'Haitisch',
+ 'hu' => 'Ungarisch',
+ 'hup' => 'Hupa',
+ 'hy' => 'Armenisch',
+ 'hz' => 'Herero',
+ 'ia' => 'Interlingua',
+ 'iba' => 'Ibanisch',
+ 'id' => 'Indonesisch',
+ 'ie' => 'Interlingue',
+ 'ig' => 'Igbo',
+ 'ii' => 'Sezuanischs Yi',
+ 'ik' => 'Inupiak',
+ 'ilo' => 'Ilokano',
+ 'inh' => 'Inguschisch',
+ 'io' => 'Ido',
+ 'is' => 'Iisländisch',
+ 'it' => 'Italiänisch',
+ 'iu' => 'Inukitut',
+ 'ja' => 'Japanisch',
+ 'jbo' => 'Lojbanisch',
+ 'jpr' => 'Jüüdisch-Persisch',
+ 'jrb' => 'Jüüdisch-Arabisch',
+ 'jv' => 'Javanisch',
+ 'ka' => 'Georgisch',
+ 'kaa' => 'Karakalpakisch',
+ 'kab' => 'Kabylisch',
+ 'kac' => 'Kachin-Schpraach',
+ 'kaj' => 'Jju',
+ 'kam' => 'Kamba',
+ 'kaw' => 'Kawi',
+ 'kbd' => 'Kabardinisch',
+ 'kcg' => 'Tyap',
+ 'kea' => 'Kabuverdianu',
+ 'kfo' => 'Koro',
+ 'kg' => 'Kongolesisch',
+ 'kha' => 'Khasisch',
+ 'kho' => 'Sakisch',
+ 'ki' => 'Kikuyu-Schpraach',
+ 'kj' => 'Kwanyama',
+ 'kk' => 'Kasachisch',
+ 'kl' => 'Gröönländisch',
+ 'km' => 'Kambodschanisch',
+ 'kmb' => 'Kimbundu-Schpraach',
+ 'kn' => 'Kannada',
+ 'ko' => 'Koreaanisch',
+ 'kok' => 'Konkani',
+ 'kos' => 'Kosraeanisch',
+ 'kpe' => 'Kpelle-Schpraach',
+ 'kr' => 'Kanuri-Schpraach',
+ 'krc' => 'Karatschaiisch-Balkarisch',
+ 'krl' => 'Karelisch',
+ 'kru' => 'Oraon-Schpraach',
+ 'ks' => 'Kaschmirisch',
+ 'ku' => 'Kurdisch',
+ 'kum' => 'Kumükisch',
+ 'kut' => 'Kutenai-Schpraach',
+ 'kv' => 'Komi-Schpraach',
+ 'kw' => 'Kornisch',
+ 'ky' => 'Kirgiisisch',
+ 'la' => 'Latiin',
+ 'lad' => 'Ladino',
+ 'lah' => 'Lahndanisch',
+ 'lam' => 'Lambanisch',
+ 'lb' => 'Luxemburgisch',
+ 'lez' => 'Lesgisch',
+ 'lg' => 'Ganda-Schpraach',
+ 'li' => 'Limburgisch',
+ 'ln' => 'Lingala',
+ 'lo' => 'Laozisch',
+ 'lol' => 'Mongo',
+ 'loz' => 'Rotse-Schpraach',
+ 'lt' => 'Litauisch',
+ 'lu' => 'Luba',
+ 'lua' => 'Luba-Lulua',
+ 'lui' => 'Luiseno-Schpraach',
+ 'lun' => 'Lunda-Schpraach',
+ 'luo' => 'Luo-Schpraach',
+ 'lus' => 'Lushai-Schpraach',
+ 'luy' => 'Olulujia',
+ 'lv' => 'Lettisch',
+ 'mad' => 'Maduresisch',
+ 'mag' => 'Khotta',
+ 'mai' => 'Maithili',
+ 'mak' => 'Makassarisch',
+ 'man' => 'Manding-Schpraach',
+ 'mas' => 'Massai-Schpraach',
+ 'mdf' => 'Mokschamordwinisch',
+ 'mdr' => 'Mandaresisch',
+ 'men' => 'Mende-Schpraach',
+ 'mg' => 'Madagassisch',
+ 'mga' => 'Mittelirisch',
+ 'mh' => 'Marschallesisch',
+ 'mi' => 'Maori',
+ 'mic' => 'Micmac-Schpraach',
+ 'min' => 'Minangkabau-Schpraach',
+ 'mk' => 'Mazedonisch',
+ 'ml' => 'Malayalam',
+ 'mn' => 'Mongolisch',
+ 'mnc' => 'Mandschurisch',
+ 'mni' => 'Meithei-Schpraach',
+ 'moh' => 'Mohawk-Schpraach',
+ 'mos' => 'Mossi-Schpraach',
+ 'mr' => 'Marathi',
+ 'ms' => 'Malaiisch',
+ 'mt' => 'Maltesisch',
+ 'mul' => 'Mehrschpraachig',
+ 'mus' => 'Muskogee-Schpraach',
+ 'mwl' => 'Mirandesisch',
+ 'mwr' => 'Marwarisch',
+ 'my' => 'Birmanisch',
+ 'myv' => 'Erzya',
+ 'na' => 'Nauruisch',
+ 'nap' => 'Neapolitanisch',
+ 'nb' => 'Norwegisch Bokmål',
+ 'nd' => 'Nord-Ndebele-Schpraach',
+ 'nds' => 'Nidertüütsch',
+ 'ne' => 'Nepalesisch',
+ 'new' => 'Newarisch',
+ 'ng' => 'Ndonga',
+ 'nia' => 'Nias-Schpraach',
+ 'niu' => 'Niue-Schpraach',
+ 'nl' => 'Niderländisch',
+ 'nl-be' => 'Fläämisch',
+ 'nn' => 'Norwegisch Nynorsk',
+ 'no' => 'Norwegisch',
+ 'nog' => 'Nogaisch',
+ 'non' => 'Altnordisch',
+ 'nqo' => 'N’Ko',
+ 'nr' => 'Süüd-Ndebele-Schpraach',
+ 'nso' => 'Nord-Sotho-Schpraach',
+ 'nv' => 'Navajo-Schpraach',
+ 'nwc' => 'Alt-Newari',
+ 'ny' => 'Chewa-Schpraach',
+ 'nym' => 'Nyamwezi-Schpraach',
+ 'nyn' => 'Nyankole',
+ 'nyo' => 'Nyoro',
+ 'nzi' => 'Nzima',
+ 'oc' => 'Okzitanisch',
+ 'oj' => 'Ojibwa-Schpraach',
+ 'om' => 'Oromo',
+ 'or' => 'Orija',
+ 'os' => 'Ossezisch',
+ 'osa' => 'Osage-Schpraach',
+ 'ota' => 'Osmanisch',
+ 'pa' => 'Pandschabisch',
+ 'pag' => 'Pangasinanisch',
+ 'pal' => 'Mittelpersisch',
+ 'pam' => 'Pampanggan-Schpraach',
+ 'pap' => 'Papiamento',
+ 'pau' => 'Palau',
+ 'peo' => 'Altpersisch',
+ 'phn' => 'Phönikisch',
+ 'pi' => 'Pali',
+ 'pl' => 'Polnisch',
+ 'pon' => 'Ponapeanisch',
+ 'pro' => 'Altprovenzalisch',
+ 'ps' => 'Paschtu',
+ 'pt' => 'Portugiisisch',
+ 'pt-br' => 'Brasilianischs Portugiisisch',
+ 'pt-pt' => 'Iberischs Portugiisisch',
+ 'qu' => 'Quechua',
+ 'raj' => 'Rajasthani',
+ 'rap' => 'Oschterinsel-Schpraach',
+ 'rar' => 'Rarotonganisch',
+ 'rm' => 'Rätoromanisch',
+ 'rn' => 'Rundi-Schpraach',
+ 'ro' => 'Rumänisch',
+ 'ro-md' => 'Moldawisch',
+ 'rom' => 'Zigüünerschpraach',
+ 'ru' => 'Russisch',
+ 'rup' => 'Aromunisch',
+ 'rw' => 'Ruandisch',
+ 'sa' => 'Sanschkrit',
+ 'sad' => 'Sandawe-Schpraach',
+ 'sah' => 'Jakutisch',
+ 'sam' => 'Samaritanisch',
+ 'sas' => 'Sasak',
+ 'sat' => 'Santali',
+ 'sc' => 'Sardisch',
+ 'scn' => 'Sizilianisch',
+ 'sco' => 'Schottisch',
+ 'sd' => 'Sindhi',
+ 'se' => 'Nord-Samisch',
+ 'sel' => 'Selkupisch',
+ 'sg' => 'Sango',
+ 'sga' => 'Altirisch',
+ 'sh' => 'Serbo-Kroatisch',
+ 'shn' => 'Schan-Schpraach',
+ 'si' => 'Singhalesisch',
+ 'sid' => 'Sidamo',
+ 'sk' => 'Slowakisch',
+ 'sl' => 'Slowenisch',
+ 'sm' => 'Samoanisch',
+ 'sma' => 'Süüd-Samisch',
+ 'smj' => 'Lule-Samisch',
+ 'smn' => 'Inari-Samisch',
+ 'sms' => 'Skolt-Samisch',
+ 'sn' => 'Schhona',
+ 'snk' => 'Soninke-Schpraach',
+ 'so' => 'Somali',
+ 'sog' => 'Sogdisch',
+ 'sq' => 'Albanisch',
+ 'sr' => 'Serbisch',
+ 'srn' => 'Srananisch',
+ 'srr' => 'Serer-Schpraach',
+ 'ss' => 'Swazi',
+ 'st' => 'Süüd-Sotho-Schpraach',
+ 'su' => 'Sundanesisch',
+ 'suk' => 'Sukuma-Schpraach',
+ 'sus' => 'Susu',
+ 'sux' => 'Sumerisch',
+ 'sv' => 'Schwedisch',
+ 'sw' => 'Suaheli',
+ 'swb' => 'Shimaorisch',
+ 'syc' => 'Altsyrisch',
+ 'syr' => 'Syrisch',
+ 'ta' => 'Tamilisch',
+ 'te' => 'Telugu',
+ 'tem' => 'Temne',
+ 'ter' => 'Tereno-Schpraach',
+ 'tet' => 'Tetum-Schpraach',
+ 'tg' => 'Tadschikisch',
+ 'th' => 'Thailändisch',
+ 'ti' => 'Tigrinja',
+ 'tig' => 'Tigre',
+ 'tiv' => 'Tiv-Schpraach',
+ 'tk' => 'Turkmenisch',
+ 'tkl' => 'Tokelauanisch',
+ 'tl' => 'Tagalog',
+ 'tlh' => 'Klingonisch',
+ 'tli' => 'Tlingit-Schpraach',
+ 'tmh' => 'Tamaseq',
+ 'tn' => 'Tswana-Schpraach',
+ 'to' => 'Tongaisch',
+ 'tog' => 'Tsonga-Schpraach',
+ 'tpi' => 'Neumelanesisch',
+ 'tr' => 'Türkisch',
+ 'ts' => 'Tsonga',
+ 'tsi' => 'Tsimshian-Schpraach',
+ 'tt' => 'Tatarisch',
+ 'tum' => 'Tumbuka-Schpraach',
+ 'tvl' => 'Elliceanisch',
+ 'tw' => 'Twi',
+ 'ty' => 'Tahitisch',
+ 'tyv' => 'Tuwinisch',
+ 'udm' => 'Udmurtisch',
+ 'ug' => 'Uigurisch',
+ 'uga' => 'Ugaritisch',
+ 'uk' => 'Ukrainisch',
+ 'umb' => 'Mbundu-Schpraach',
+ 'und' => 'Unbeschtimmti Schpraach',
+ 'ur' => 'Urdu',
+ 'uz' => 'Usbekisch',
+ 'vai' => 'Vai-Schpraach',
+ 've' => 'Venda-Schpraach',
+ 'vi' => 'Vietnamesisch',
+ 'vo' => 'Volapük',
+ 'vot' => 'Wotisch',
+ 'wa' => 'Wallonisch',
+ 'wal' => 'Walamo-Schpraach',
+ 'war' => 'Waray',
+ 'was' => 'Washo-Schpraach',
+ 'wo' => 'Wolof',
+ 'xal' => 'Kalmückisch',
+ 'xh' => 'Xhosa',
+ 'yao' => 'Yao-Schpraach',
+ 'yap' => 'Yapesisch',
+ 'yi' => 'Jiddisch',
+ 'yo' => 'Yoruba',
+ 'yue' => 'Kantonesisch',
+ 'za' => 'Zhuang',
+ 'zap' => 'Zapotekisch',
+ 'zbl' => 'Bliss-Symbool',
+ 'zen' => 'Zenaga',
+ 'zh' => 'Chineesisch',
+ 'zh-hans' => 'Veräifachts Chineesisch',
+ 'zh-hant' => 'Tradizionells Chineesisch',
+ 'zu' => 'Zulu',
+ 'zun' => 'Zuni-Schpraach',
+ 'zxx' => 'Kän schpraachliche Inhalt',
+ 'zza' => 'Zaza',
+);
+
+$currencyNames = array(
+ 'ADP' => 'Andorranischi Peseete',
+ 'AED' => 'UAE Dirham',
+ 'AFA' => 'Afghani (1927–2002)',
+ 'AFN' => 'Afghani',
+ 'ALL' => 'Lek',
+ 'AMD' => 'Dram',
+ 'ANG' => 'Niderländischi-Antille-Gulde',
+ 'AOA' => 'Kwanza',
+ 'AOK' => 'Angolanische Kwanza (1977–1990)',
+ 'AON' => 'Nöie Kwanza',
+ 'AOR' => 'Kwanza Reajustado',
+ 'ARA' => 'Argentinische Auschtral',
+ 'ARP' => 'Argentinische Peso (1983–1985)',
+ 'ARS' => 'Argentinische Peso',
+ 'ATS' => 'Öschtriichische Schilling',
+ 'AUD' => 'Auschtralische Dollar',
+ 'AWG' => 'Aruba Florin',
+ 'AZM' => 'Aserbeidschanische Manat (1993–2006)',
+ 'AZN' => 'Aserbeidschanische Manat',
+ 'BAD' => 'Bosnie-und-Herzegowina-Dinar',
+ 'BAM' => 'Konvertierbari Mark vo Bosnie und Herzegowina',
+ 'BBD' => 'Barbados-Dollar',
+ 'BDT' => 'Taka',
+ 'BEC' => 'Belgische Franc (konvertibel)',
+ 'BEF' => 'Belgische Franc',
+ 'BEL' => 'Belgische Finanz-Franc',
+ 'BGL' => 'Lew (1962–1999)',
+ 'BGN' => 'Bulgarische Lew',
+ 'BHD' => 'Bahrain-Dinar',
+ 'BIF' => 'Burundi-Franc',
+ 'BMD' => 'Bermuda-Dollar',
+ 'BND' => 'Brunei-Dollar',
+ 'BOB' => 'Boliviano',
+ 'BOP' => 'Bolivianische Peso',
+ 'BOV' => 'Bolivianische Mvdol',
+ 'BRB' => 'Brasilianische Cruzeiro Novo (1967–1986)',
+ 'BRC' => 'Brasilianische Cruzado',
+ 'BRE' => 'Brasilianische Cruzeiro (1990–1993)',
+ 'BRL' => 'Brasilianische Real',
+ 'BRN' => 'Brasilianische Cruzado Novo',
+ 'BRR' => 'Brasilianische Cruzeiro',
+ 'BSD' => 'Bahama-Dollar',
+ 'BTN' => 'Bhutanische Ngultrum',
+ 'BUK' => 'Birmanische Kyat',
+ 'BWP' => 'Botswanische Pula',
+ 'BYB' => 'Belarus-Rubel (alt)',
+ 'BYR' => 'Belarus Rubel (nöi)',
+ 'BZD' => 'Belize-Dollar',
+ 'CAD' => 'Kanadische Dollar',
+ 'CDF' => 'Kongolesische Franc',
+ 'CHE' => 'WIR-Euro',
+ 'CHF' => 'Schwiizer Franke',
+ 'CHW' => 'WIR-Franke',
+ 'CLF' => 'Tschileenische Unidad de Fomento',
+ 'CLP' => 'Tschileenische Peso',
+ 'CNY' => 'Renminbi Yuan',
+ 'COP' => 'Kolumbianische Peso',
+ 'COU' => 'Unidad de Valor Real',
+ 'CRC' => 'Costa Rica Colon',
+ 'CSD' => 'Alte Serbische Dinar',
+ 'CSK' => 'Tschechoslowakischi Chroone',
+ 'CUP' => 'Kubanische Peso',
+ 'CVE' => 'Kap Verde Escudo',
+ 'CYP' => 'Zypere-Pfund',
+ 'CZK' => 'Tschechischi Chroone',
+ 'DDM' => 'DDR-Mark',
+ 'DEM' => 'Tüütschi Mark',
+ 'DJF' => 'Dschibuti-Franc',
+ 'DKK' => 'Tänischi Chroone',
+ 'DOP' => 'Tominikanische Peso',
+ 'DZD' => 'Algeerischi Dinar',
+ 'ECS' => 'Ecuadorianische Sucre',
+ 'ECV' => 'Verrächnigsäiheit für EC',
+ 'EEK' => 'Eestnischi Chroone',
+ 'EGP' => 'Ägüptischs Pfund',
+ 'ERN' => 'Eritreische Nakfa',
+ 'ESA' => 'Schpanischi Peseeta (A–Kontene)',
+ 'ESB' => 'Schpanischi Peseeta (konvertibel)',
+ 'ESP' => 'Schpanischi Peseeta',
+ 'ETB' => 'Äthiopische Birr',
+ 'EUR' => 'Euro',
+ 'FIM' => 'Finnischi Mark',
+ 'FJD' => 'Fidschi Dollar',
+ 'FKP' => 'Falkland-Pfund',
+ 'FRF' => 'Französische Franc',
+ 'GBP' => 'Pfund Schtörling',
+ 'GEK' => 'Georgische Kupon Larit',
+ 'GEL' => 'Georgische Lari',
+ 'GHC' => 'Ghanaische Cedi (GHC)',
+ 'GHS' => 'Ghanaische Cedi (GHS)',
+ 'GIP' => 'Gibraltar-Pfund',
+ 'GMD' => 'Gambische Dalasi',
+ 'GNF' => 'Guinea-Franc',
+ 'GNS' => 'Guineische Syli',
+ 'GQE' => 'Äquatorialguinea-Ekwele',
+ 'GRD' => 'Griechische Trachme',
+ 'GTQ' => 'Quetzal',
+ 'GWE' => 'Portugiisische Guinea Escudo',
+ 'GWP' => 'Guinea-Bissau-Peso',
+ 'GYD' => 'Guyana-Dollar',
+ 'HKD' => 'Hongkong-Dollar',
+ 'HNL' => 'Lempira',
+ 'HRD' => 'Kroazische Dinar',
+ 'HRK' => 'Kuna',
+ 'HTG' => 'Gourde',
+ 'HUF' => 'Forint',
+ 'IDR' => 'Indonesischi Rupie',
+ 'IEP' => 'Iirischs Pfund',
+ 'ILP' => 'Israelischs Pfund',
+ 'ILS' => 'Schekel',
+ 'INR' => 'Indischi Rupie',
+ 'IQD' => 'Irak-Dinar',
+ 'IRR' => 'Rial',
+ 'ISK' => 'Iisländischi Chroone',
+ 'ITL' => 'Italiänischi Lira',
+ 'JMD' => 'Jamaika-Dollar',
+ 'JOD' => 'Jordaanische Dinar',
+ 'JPY' => 'Yen',
+ 'KES' => 'Kenia-Schilling',
+ 'KGS' => 'Som',
+ 'KHR' => 'Riel',
+ 'KMF' => 'Komore-Franc',
+ 'KPW' => 'Nordkoreanische Won',
+ 'KRW' => 'Süüdkoreanische Won',
+ 'KWD' => 'Kuwait-Dinar',
+ 'KYD' => 'Kaiman-Dollar',
+ 'KZT' => 'Tenge',
+ 'LAK' => 'Kip',
+ 'LBP' => 'Libaneesischs Pfund',
+ 'LKR' => 'Sri-Lanka-Rupie',
+ 'LRD' => 'Liberiaanische Dollar',
+ 'LSL' => 'Loti',
+ 'LTL' => 'Litauische Litas',
+ 'LTT' => 'Litauische Talonas',
+ 'LUC' => 'Luxemburgische Franc (konvertibel)',
+ 'LUF' => 'Luxemburgische Franc',
+ 'LUL' => 'Luxemburgischer Finanz-Franc',
+ 'LVL' => 'Lettische Lats',
+ 'LVR' => 'Lettische Rubel',
+ 'LYD' => 'Lüübische Dinar',
+ 'MAD' => 'Marokkanische Dirham',
+ 'MAF' => 'Marokkanischer Franc',
+ 'MDL' => 'Moldau-Löi',
+ 'MGA' => 'Madagaschkar-Ariary',
+ 'MGF' => 'Madagaschkar-Franc',
+ 'MKD' => 'Denar',
+ 'MLF' => 'Malische Franc',
+ 'MMK' => 'Kyat',
+ 'MNT' => 'Tugrik',
+ 'MOP' => 'Pataca',
+ 'MRO' => 'Ouguiya',
+ 'MTL' => 'Malteesischi Lira',
+ 'MTP' => 'Malteesischs Pfund',
+ 'MUR' => 'Maurizius-Rupie',
+ 'MVR' => 'Rufiyaa',
+ 'MWK' => 'Malawi-Kwacha',
+ 'MXN' => 'Mexikanische Peso',
+ 'MXP' => 'Mexikanische Silber-Peso (1861–1992)',
+ 'MXV' => 'Mexikanische Unidad de Inversion (UDI)',
+ 'MYR' => 'Malaysische Ringgit',
+ 'MZE' => 'Mosambikanische Escudo',
+ 'MZM' => 'Alte Metical',
+ 'MZN' => 'Metical',
+ 'NAD' => 'Namibia-Dollar',
+ 'NGN' => 'Naira',
+ 'NIC' => 'Cordoba',
+ 'NIO' => 'Nicaragua-Córdoba',
+ 'NLG' => 'Holländische Gulde',
+ 'NOK' => 'Norweegischi Chroone',
+ 'NPR' => 'Nepaleesischi Rupie',
+ 'NZD' => 'Neuseeland-Dollar',
+ 'OMR' => 'Rial Omani',
+ 'PAB' => 'Balboa',
+ 'PEI' => 'Peruanische Inti',
+ 'PEN' => 'Nöie Sol',
+ 'PES' => 'Sol',
+ 'PGK' => 'Kina',
+ 'PHP' => 'Philippiinische Peso',
+ 'PKR' => 'Pakischtanischi Rupie',
+ 'PLN' => 'Zloty',
+ 'PLZ' => 'Zloty (1950–1995)',
+ 'PTE' => 'Portugiisische Escudo',
+ 'PYG' => 'Guarani',
+ 'QAR' => 'Katar-Riyal',
+ 'RHD' => 'Rhodesische Dollar',
+ 'ROL' => 'Löi',
+ 'RON' => 'Rumäänische Löi',
+ 'RSD' => 'Serbische Dinar',
+ 'RUB' => 'Russische Rubel',
+ 'RUR' => 'Russische Rubel (alt)',
+ 'RWF' => 'Ruanda-Franc',
+ 'SAR' => 'Saudi-Riyal',
+ 'SBD' => 'Salomone-Dollar',
+ 'SCR' => 'Seyschelle-Rupie',
+ 'SDD' => 'Sudaneesische Dinar',
+ 'SDG' => 'Sudaneesischs Pfund',
+ 'SDP' => 'Sudaneesischs Pfund (alt)',
+ 'SEK' => 'Schweedischi Chroone',
+ 'SGD' => 'Singapur-Dollar',
+ 'SHP' => 'St.-Helena-Pfund',
+ 'SIT' => 'Tolar',
+ 'SKK' => 'Slowakischi Chroone',
+ 'SLL' => 'Leone',
+ 'SOS' => 'Somalia-Schilling',
+ 'SRD' => 'Surinamische Dollar',
+ 'SRG' => 'Surinamische Gulde',
+ 'SSP' => 'Süüdsudaneesischs Pfund',
+ 'STD' => 'Dobra',
+ 'SUR' => 'Sowjetische Rubel',
+ 'SVC' => 'El-Salvador-Colon',
+ 'SYP' => 'Süürischs Pfund',
+ 'SZL' => 'Lilangeni',
+ 'THB' => 'Baht',
+ 'TJR' => 'Tadschikischtan-Rubel',
+ 'TJS' => 'Tadschikischtan-Somoni',
+ 'TMM' => 'Turkmeenischtan-Manat',
+ 'TND' => 'Tuneesische Dinar',
+ 'TOP' => 'Paʻanga',
+ 'TPE' => 'Timor-Escudo',
+ 'TRL' => 'Türkischi Liire',
+ 'TRY' => 'Nöii Türkischi Liire',
+ 'TTD' => 'Trinidad-und-Tobago-Dollar',
+ 'TWD' => 'Nöii Taiwan-Dollar',
+ 'TZS' => 'Tansania-Schilling',
+ 'UAH' => 'Hryvnia',
+ 'UAK' => 'Ukraiinische Karbovanetz',
+ 'UGS' => 'Uganda-Schilling (1966–1987)',
+ 'UGX' => 'Uganda-Schilling',
+ 'USD' => 'US-Dollar',
+ 'USN' => 'US Dollar (Nöchschte Taag)',
+ 'USS' => 'US Dollar (Gliiche Taag)',
+ 'UYP' => 'Uruguayische Nöie Peso (1975–1993)',
+ 'UYU' => 'Uruguayische Peso',
+ 'UZS' => 'Usbeekischtan-Sum',
+ 'VEB' => 'Bolivar (1871–2008)',
+ 'VEF' => 'Bolivar',
+ 'VND' => 'Dong',
+ 'VUV' => 'Vatu',
+ 'WST' => 'Tala',
+ 'XAF' => 'CFA-Franc (Äquatoriaal)',
+ 'XAG' => 'Silber',
+ 'XAU' => 'Gold',
+ 'XBA' => 'Europääischi Rächnigseinheit',
+ 'XBB' => 'Europääischi Währigseinheit (XBB)',
+ 'XBC' => 'Europääischi Rächnigseinheit (XBC)',
+ 'XBD' => 'Europääischi Rächnigseinheit (XBD)',
+ 'XCD' => 'Oschtkaribische Dollar',
+ 'XDR' => 'Sunderziäigsrächt',
+ 'XEU' => 'Europääischi Währigseinheit (XEU)',
+ 'XFO' => 'Französische Gold-Franc',
+ 'XFU' => 'Französische UIC-Franc',
+ 'XOF' => 'CFA-Franc (Wescht)',
+ 'XPD' => 'Palladium',
+ 'XPF' => 'CFP-Franc',
+ 'XPT' => 'Platin',
+ 'XRE' => 'RINET-Funds',
+ 'XTS' => 'Teschtwährig',
+ 'XXX' => 'Unbekannti Währig',
+ 'YDD' => 'Jeme-Dinar',
+ 'YER' => 'Jeme-Rial',
+ 'YUD' => 'Jugoslawische Dinar (1966–1990)',
+ 'YUM' => 'Nöii Dinar',
+ 'YUN' => 'Jugoslawische Dinar (konvertibel)',
+ 'ZAR' => 'Rand',
+ 'ZMK' => 'Kwacha (1968–2012)',
+ 'ZMW' => 'Kwacha',
+ 'ZRN' => 'Nöie Zaire',
+ 'ZRZ' => 'Zaire',
+ 'ZWD' => 'Simbabwe-Dollar',
+);
+
+$currencySymbols = array(
+ 'ATS' => 'öS',
+ 'CHF' => 'CHF',
+ 'JPY' => '¥',
+ 'USD' => '$',
+);
+
+$countryNames = array(
+ 'AC' => 'Ascension',
+ 'AD' => 'Andorra',
+ 'AE' => 'Veräinigti Arabischi Emirate',
+ 'AF' => 'Afganischtan',
+ 'AG' => 'Antigua und Barbuda',
+ 'AI' => 'Anguilla',
+ 'AL' => 'Albaanie',
+ 'AM' => 'Armeenie',
+ 'AN' => 'Niderländischi Antille',
+ 'AO' => 'Angoola',
+ 'AQ' => 'Antarktis',
+ 'AR' => 'Argentiinie',
+ 'AS' => 'Amerikaanisch-Samoa',
+ 'AT' => 'Ööschtriich',
+ 'AU' => 'Auschtraalie',
+ 'AW' => 'Aruba',
+ 'AX' => 'Aaland-Insle',
+ 'AZ' => 'Aserbäidschan',
+ 'BA' => 'Bosnie und Herzegowina',
+ 'BB' => 'Barbados',
+ 'BD' => 'Bangladesch',
+ 'BE' => 'Belgie',
+ 'BF' => 'Burkina Faaso',
+ 'BG' => 'Bulgaarie',
+ 'BH' => 'Bachräin',
+ 'BI' => 'Burundi',
+ 'BJ' => 'Benin',
+ 'BL' => 'St. Barthelemi',
+ 'BM' => 'Bermuuda',
+ 'BN' => 'Brunäi Tarussalam',
+ 'BO' => 'Boliivie',
+ 'BR' => 'Brasilie',
+ 'BS' => 'Bahaamas',
+ 'BT' => 'Bhutan',
+ 'BV' => 'Bouvet-Insle',
+ 'BW' => 'Botswana',
+ 'BY' => 'Wiissrussland',
+ 'BZ' => 'Belize',
+ 'CA' => 'Kanada',
+ 'CC' => 'Kokos-Insle',
+ 'CD' => 'Temokraatischi Republik Kongo',
+ 'CF' => 'Zentraalafrikaanischi Republik',
+ 'CG' => 'Kongo',
+ 'CH' => 'Schwiiz',
+ 'CI' => 'Elfebäiküschte',
+ 'CK' => 'Cook-Insle',
+ 'CL' => 'Tschile',
+ 'CM' => 'Kamerun',
+ 'CN' => 'Chiina',
+ 'CO' => 'Kolumbie',
+ 'CP' => 'Clipperton',
+ 'CR' => 'Coschta Rica',
+ 'CU' => 'Kuba',
+ 'CV' => 'Kap Verde',
+ 'CX' => 'Wienachts-Insle',
+ 'CY' => 'Zypere',
+ 'CZ' => 'Tschechischi Republik',
+ 'DE' => 'Tüütschland',
+ 'DG' => 'Diego Garcia',
+ 'DJ' => 'Tschibuuti',
+ 'DK' => 'Tänemark',
+ 'DM' => 'Tominica',
+ 'DO' => 'Tominikaanischi Republik',
+ 'DZ' => 'Algeerie',
+ 'EA' => 'Ceuta und Melilla',
+ 'EC' => 'Ecuador',
+ 'EE' => 'Eestland',
+ 'EG' => 'Ägüpte',
+ 'EH' => 'Weschtsahara',
+ 'ER' => 'Äritreea',
+ 'ES' => 'Schpanie',
+ 'ET' => 'Äthiopie',
+ 'EU' => 'Europääischi Unioon',
+ 'FI' => 'Finnland',
+ 'FJ' => 'Fitschi',
+ 'FK' => 'Falkland-Insle',
+ 'FM' => 'Mikroneesie',
+ 'FO' => 'Färöer',
+ 'FR' => 'Frankriich',
+ 'GA' => 'Gabun',
+ 'GB' => 'Veräinigts Chönigriich',
+ 'GD' => 'Grenada',
+ 'GE' => 'Geoorgie',
+ 'GF' => 'Französisch-Guäjaana',
+ 'GG' => 'Gäärnsi',
+ 'GH' => 'Gaana',
+ 'GI' => 'Gibraltar',
+ 'GL' => 'Gröönland',
+ 'GM' => 'Gambia',
+ 'GN' => 'Gineea',
+ 'GP' => 'Guadälup',
+ 'GQ' => 'Äquatoriaalgineea',
+ 'GR' => 'Griecheland',
+ 'GS' => 'Süüdgeorgie und d’süüdlichi Sändwitsch-Insle',
+ 'GT' => 'Guatemaala',
+ 'GU' => 'Guam',
+ 'GW' => 'Gineea-Bissau',
+ 'GY' => 'Guäjaana',
+ 'HK' => 'Hongkong',
+ 'HM' => 'Höörd- und MäcDonald-Insle',
+ 'HN' => 'Honduras',
+ 'HR' => 'Kroaazie',
+ 'HT' => 'Haiti',
+ 'HU' => 'Ungarn',
+ 'IC' => 'Canarische Eilanden',
+ 'ID' => 'Indoneesie',
+ 'IE' => 'Irland',
+ 'IL' => 'Israel',
+ 'IM' => 'Insle vo Män',
+ 'IN' => 'Indie',
+ 'IO' => 'Britischs Territoorium im Indische Oozean',
+ 'IQ' => 'Iraak',
+ 'IR' => 'Iraan',
+ 'IS' => 'Iisland',
+ 'IT' => 'Itaalie',
+ 'JE' => 'Dschörsi',
+ 'JM' => 'Dschamäika',
+ 'JO' => 'Jordaanie',
+ 'JP' => 'Japan',
+ 'KE' => 'Keenia',
+ 'KG' => 'Kirgiisischtan',
+ 'KH' => 'Kambodscha',
+ 'KI' => 'Kiribaati',
+ 'KM' => 'Komoore',
+ 'KN' => 'St. Kitts und Niuwis',
+ 'KP' => 'Demokraatischi Volksrepublik Koreea',
+ 'KR' => 'Republik Koreea',
+ 'KW' => 'Kuwäit',
+ 'KY' => 'Käimän-Insle',
+ 'KZ' => 'Kasachschtan',
+ 'LA' => 'Laaos',
+ 'LB' => 'Libanon',
+ 'LC' => 'St. Lutschiia',
+ 'LI' => 'Liächteschtäi',
+ 'LK' => 'Schri Lanka',
+ 'LR' => 'Libeeria',
+ 'LS' => 'Lesooto',
+ 'LT' => 'Littaue',
+ 'LU' => 'Luxemburg',
+ 'LV' => 'Lettland',
+ 'LY' => 'Lüübie',
+ 'MA' => 'Marokko',
+ 'MC' => 'Monaco',
+ 'MD' => 'Republik Moldau',
+ 'ME' => 'Monteneegro',
+ 'MF' => 'St. Martin',
+ 'MG' => 'Madagaschkar',
+ 'MH' => 'Marshallinsle',
+ 'MK' => 'Mazedoonie',
+ 'ML' => 'Maali',
+ 'MM' => 'Myanmar (Burma)',
+ 'MN' => 'Mongolei',
+ 'MO' => 'Macao',
+ 'MP' => 'Nördlichi Mariaane',
+ 'MQ' => 'Martinigg',
+ 'MR' => 'Mauretaanie',
+ 'MS' => 'Moosörrat',
+ 'MT' => 'Malta',
+ 'MU' => 'Mauriizius',
+ 'MV' => 'Malediiwe',
+ 'MW' => 'Malaawi',
+ 'MX' => 'Mexiko',
+ 'MY' => 'Maläisia',
+ 'MZ' => 'Mosambik',
+ 'NA' => 'Namiibia',
+ 'NC' => 'Nöikaledoonie',
+ 'NE' => 'Niger',
+ 'NF' => 'Norfolk-Insle',
+ 'NG' => 'Nigeeria',
+ 'NI' => 'Nicaraagua',
+ 'NL' => 'Holland',
+ 'NO' => 'Norweege',
+ 'NP' => 'Neepal',
+ 'NR' => 'Nauru',
+ 'NU' => 'Niue',
+ 'NZ' => 'Nöiseeland',
+ 'OM' => 'Omaan',
+ 'PA' => 'Panama',
+ 'PE' => 'Peru',
+ 'PF' => 'Französisch-Polineesie',
+ 'PG' => 'Papua-Neuguinea',
+ 'PH' => 'Philippiine',
+ 'PK' => 'Pakischtan',
+ 'PL' => 'Poole',
+ 'PM' => 'St. Pierr und Miggelo',
+ 'PN' => 'Pitggäärn',
+ 'PR' => 'Puerto Riggo',
+ 'PS' => 'Paläschtinänsischi Gebiet',
+ 'PT' => 'Portugal',
+ 'PW' => 'Palau',
+ 'PY' => 'Paraguai',
+ 'QA' => 'Ggatar',
+ 'QO' => 'Üssers Ozeaanie',
+ 'RE' => 'Reünioon',
+ 'RO' => 'Rumäänie',
+ 'RS' => 'Särbie',
+ 'RU' => 'Russland',
+ 'RW' => 'Ruanda',
+ 'SA' => 'Saudi-Araabie',
+ 'SB' => 'Salomoone',
+ 'SC' => 'Seischälle',
+ 'SD' => 'Sudan',
+ 'SE' => 'Schweede',
+ 'SG' => 'Singapuur',
+ 'SH' => 'St. Helena',
+ 'SI' => 'Sloweenie',
+ 'SJ' => 'Svalbard und Jaan Määie',
+ 'SK' => 'Slowakäi',
+ 'SL' => 'Sierra Leoone',
+ 'SM' => 'San Mariino',
+ 'SN' => 'Senegal',
+ 'SO' => 'Somaalie',
+ 'SR' => 'Surinam',
+ 'ST' => 'Sao Tome und Prinssipe',
+ 'SV' => 'El Salvador',
+ 'SY' => 'Süürie',
+ 'SZ' => 'Swasiland',
+ 'TA' => 'Tristan da Cunha',
+ 'TC' => 'Törks- und Gaiggos-Insle',
+ 'TD' => 'Tschad',
+ 'TF' => 'Französischi Süüd- und Antarktisgebiet',
+ 'TG' => 'Toogo',
+ 'TH' => 'Thailand',
+ 'TJ' => 'Tadschikischtan',
+ 'TK' => 'Tokelau',
+ 'TL' => 'Oschttimor',
+ 'TM' => 'Turkmeenischtan',
+ 'TN' => 'Tuneesie',
+ 'TO' => 'Tonga',
+ 'TR' => 'Türggei',
+ 'TT' => 'Trinidad und Tobaago',
+ 'TV' => 'Tuvalu',
+ 'TW' => 'Taiwan',
+ 'TZ' => 'Tansaniia',
+ 'UA' => 'Ukraiine',
+ 'UG' => 'Uganda',
+ 'UM' => 'Amerikanisch-Ozeaanie',
+ 'US' => 'USA',
+ 'UY' => 'Uruguay',
+ 'UZ' => 'Uschbeekischtan',
+ 'VA' => 'Vatikanstadt',
+ 'VC' => 'St. Vincent und d’Grönadiine',
+ 'VE' => 'Venezueela',
+ 'VG' => 'Britischi Jungfere-Insle',
+ 'VI' => 'Amerikaanischi Jungfere-Insle',
+ 'VN' => 'Wietnam',
+ 'VU' => 'Wanuatu',
+ 'WF' => 'Wallis und Futuuna',
+ 'WS' => 'Samooa',
+ 'YE' => 'Jeeme',
+ 'YT' => 'Majott',
+ 'ZA' => 'Süüdafrika',
+ 'ZM' => 'Sambia',
+ 'ZW' => 'Simbabwe',
+);
+
+$timeUnits = array(
+ 'day-one' => '{0} Taag',
+ 'day-other' => '{0} Tääg',
+ 'hour-one' => '{0} Schtund',
+ 'hour-other' => '{0} Schtunde',
+ 'millisecond-one' => '{0} Millisekunde',
+ 'millisecond-other' => '{0} Millisekunde',
+ 'minute-one' => '{0} Minuute',
+ 'minute-other' => '{0} Minuute',
+ 'month-one' => '{0} Monet',
+ 'month-other' => '{0} Mönet',
+ 'second-one' => '{0} Sekunde',
+ 'second-other' => '{0} Sekunde',
+ 'week-one' => '{0} Wuche',
+ 'week-other' => '{0} Wuche',
+ 'year-one' => '{0} Jahr',
+ 'year-other' => '{0} Jahr',
+);
diff --git a/MLEB/cldr/CldrNames/CldrNamesGu.php b/MLEB/cldr/CldrNames/CldrNamesGu.php
new file mode 100644
index 00000000..22bf1d66
--- /dev/null
+++ b/MLEB/cldr/CldrNames/CldrNamesGu.php
@@ -0,0 +1,1209 @@
+<?php
+
+$languageNames = array(
+ 'aa' => 'અફાર',
+ 'ab' => 'અબખાજિયન',
+ 'ace' => 'અચીની',
+ 'ach' => 'એકોલી',
+ 'ada' => 'અદાંગ્મી',
+ 'ady' => 'અદિઘે',
+ 'ae' => 'અવેસ્તન',
+ 'af' => 'આફ્રિકન્સ',
+ 'afh' => 'અફ્રિહિલી',
+ 'agq' => 'અઘેમ',
+ 'ain' => 'ઐનુ',
+ 'ak' => 'અકાન',
+ 'akk' => 'અક્કાદીયાન',
+ 'ale' => 'અલેઉત',
+ 'alt' => 'દક્ષિણ અલ્તાઇ',
+ 'am' => 'એમ્હારિક',
+ 'an' => 'અર્ગોનીઝ',
+ 'ang' => 'જુની અંગ્રેજી',
+ 'anp' => 'અંગીકા',
+ 'ar' => 'અરબી',
+ 'ar-001' => 'મોડર્ન સ્ટાન્ડર્ડ અરબી',
+ 'arc' => 'અર્માઇક',
+ 'arn' => 'એરોકૈનિયન',
+ 'arp' => 'અરાપાહો',
+ 'arq' => 'આલ્જેરિયન અરબી',
+ 'arw' => 'અરાવક',
+ 'ary' => 'મોરોક્કન અરબી',
+ 'arz' => 'ઈજિપ્શિયન અરબી',
+ 'as' => 'આસામી',
+ 'asa' => 'અસુ',
+ 'ast' => 'અસ્તુરિયન',
+ 'av' => 'અવેરિક',
+ 'awa' => 'અવધી',
+ 'ay' => 'આયમારા',
+ 'az' => 'અઝરબૈજાની',
+ 'azb' => 'દક્ષિણ ઝરબૈજાની',
+ 'ba' => 'બશ્કીર',
+ 'bal' => 'બલૂચી',
+ 'ban' => 'બાલિનીસ',
+ 'bas' => 'બસા',
+ 'bax' => 'બામન',
+ 'be' => 'બેલારુશિયન',
+ 'bej' => 'બેજા',
+ 'bem' => 'બેમ્બા',
+ 'bez' => 'બેના',
+ 'bg' => 'બલ્ગેરિયન',
+ 'bho' => 'ભોજપુરી',
+ 'bi' => 'બિસ્લામા',
+ 'bik' => 'બિકોલ',
+ 'bin' => 'બિની',
+ 'bla' => 'સિક્સિકા',
+ 'bm' => 'બામ્બારા',
+ 'bn' => 'બંગાળી',
+ 'bo' => 'તિબેટીયન',
+ 'bpy' => 'બિષ્નુપ્રિયા',
+ 'br' => 'બ્રેટોન',
+ 'bra' => 'વ્રજ',
+ 'brh' => 'બ્રાહુઈ',
+ 'brx' => 'બોડો',
+ 'bs' => 'બોસ્નિયન',
+ 'bua' => 'બુરિયાત',
+ 'bug' => 'બગિનીસ',
+ 'byn' => 'બ્લિન',
+ 'ca' => 'કતલાન',
+ 'cad' => 'કડ્ડો',
+ 'car' => 'કરિબ',
+ 'cch' => 'અત્સમ',
+ 'ce' => 'ચેચન',
+ 'ceb' => 'સિબુઆનો',
+ 'cgg' => 'ચિગા',
+ 'ch' => 'કેમોરો',
+ 'chb' => 'ચિબ્ચા',
+ 'chg' => 'છગાતાઇ',
+ 'chk' => 'ચૂકીસે',
+ 'chm' => 'મારી',
+ 'chn' => 'ચિનૂક જાર્ગન',
+ 'cho' => 'ચોક્તૌ',
+ 'chp' => 'શિપેવ્યાન',
+ 'chr' => 'શેરોકી',
+ 'chy' => 'શેયેન્ન',
+ 'ckb' => 'સોરાની કુર્દિશ',
+ 'co' => 'કોર્સિકન',
+ 'cop' => 'કોપ્ટિક',
+ 'cr' => 'ક્રી',
+ 'crh' => 'ક્રિમિયન તુર્કી',
+ 'cs' => 'ચેક',
+ 'csb' => 'કાશુબિયન',
+ 'cu' => 'ચર્ચ સ્લાવિક',
+ 'cv' => 'ચૂવાશ',
+ 'cy' => 'વેલ્શ',
+ 'da' => 'ડેનિશ',
+ 'dak' => 'દાકોતા',
+ 'dar' => 'દાર્ગવા',
+ 'dav' => 'તૈતા',
+ 'de' => 'જર્મન',
+ 'de-at' => 'ઓસ્ટ્રિઅન જર્મન',
+ 'de-ch' => 'સ્વિસ હાય જર્મન',
+ 'del' => 'દેલેવેર',
+ 'den' => 'સ્લેવ',
+ 'dgr' => 'ડોગ્રિબ',
+ 'din' => 'દિન્કા',
+ 'dje' => 'ઝર્મા',
+ 'doi' => 'ડોગ્રી',
+ 'dsb' => 'નિમ્ન સોર્બિયન',
+ 'dua' => 'દુઆલા',
+ 'dum' => 'મધ્ય ડચ',
+ 'dv' => 'દિવેહી',
+ 'dyo' => 'જોલા-ફોન્યી',
+ 'dyu' => 'ડ્યુલા',
+ 'dz' => 'ડ્ઝોંગ્ખા',
+ 'ebu' => 'ઍમ્બુ',
+ 'ee' => 'ઈવ',
+ 'efi' => 'એફિક',
+ 'egy' => 'પ્રાચીન ઇજીપ્શિયન',
+ 'eka' => 'એકાજુક',
+ 'el' => 'ગ્રીક',
+ 'elx' => 'એલામાઇટ',
+ 'en' => 'અંગ્રેજી',
+ 'en-au' => 'ઓસ્ટ્રેલિયન અંગ્રેજી',
+ 'en-ca' => 'કેનેડિયન અંગ્રેજી',
+ 'en-gb' => 'બ્રિટિશ અંગ્રેજી',
+ 'en-us' => 'અમેરિકન અંગ્રેજી',
+ 'enm' => 'મિડિલ અંગ્રેજી',
+ 'eo' => 'એસ્પેરાન્ટો',
+ 'es' => 'સ્પેનિશ',
+ 'es-419' => 'લેટિન અમેરિકન સ્પેનિશ',
+ 'es-es' => 'યુરોપિયન સ્પેનિશ',
+ 'es-mx' => 'મેક્સિકન સ્પેનિશ',
+ 'et' => 'એસ્ટોનિયન',
+ 'eu' => 'બાસ્ક',
+ 'ewo' => 'ઇવોન્ડો',
+ 'fa' => 'ફારસી',
+ 'fan' => 'ફેંગ',
+ 'fat' => 'ફન્ટી',
+ 'ff' => 'ફુલાહ',
+ 'fi' => 'ફિનિશ',
+ 'fil' => 'ફિલિપિનો',
+ 'fj' => 'ફિજીયન',
+ 'fo' => 'ફોરિસ્ત',
+ 'fon' => 'ફોન',
+ 'fr' => 'ફ્રેન્ચ',
+ 'fr-ca' => 'કેનેડિયન ફ્રેંચ',
+ 'fr-ch' => 'સ્વિસ ફ્રેંચ',
+ 'frm' => 'મિડિલ ફ્રેંચ',
+ 'fro' => 'જૂની ફ્રેંચ',
+ 'frr' => 'નોર્ધર્ન ફ્રિશિયન',
+ 'frs' => 'પૂર્વ ફ્રિશિયન',
+ 'fur' => 'ફ્રિયુલિયાન',
+ 'fy' => 'પશ્ચિમી ફ્રિશિયન',
+ 'ga' => 'આઇરિશ',
+ 'gaa' => 'Ga',
+ 'gag' => 'ગાગાઝ',
+ 'gay' => 'ગાયો',
+ 'gba' => 'બાયા',
+ 'gbz' => 'ઝોરોસ્ટ્રિઅન દારી',
+ 'gd' => 'સ્કોટ્સ ગેલિક',
+ 'gez' => 'ગીઝ',
+ 'gil' => 'જિલ્બરટીઝ',
+ 'gl' => 'ગેલિશિયન',
+ 'gmh' => 'મધ્ય હાઇ જર્મન',
+ 'gn' => 'ગુઆરાની',
+ 'goh' => 'જૂની હાઇ જર્મન',
+ 'gom' => 'ગોઅન કોંકણી',
+ 'gon' => 'ગોંડી',
+ 'gor' => 'ગોરોન્તાલો',
+ 'got' => 'ગોથિક',
+ 'grb' => 'ગ્રેબો',
+ 'grc' => 'પ્રાચીન ગ્રીક',
+ 'gsw' => 'સ્વિસ જર્મન',
+ 'gu' => 'ગુજરાતી',
+ 'guz' => 'ગુસી',
+ 'gv' => 'માંક્સ',
+ 'gwi' => 'ગ્વિચ’ઇન',
+ 'ha' => 'હૌસા',
+ 'hai' => 'હૈડા',
+ 'haw' => 'હાવાઇયન',
+ 'he' => 'હીબ્રુ',
+ 'hi' => 'હિન્દી',
+ 'hif' => 'ફીજી હિંદી',
+ 'hil' => 'હિલિગેનોન',
+ 'hit' => 'હિટ્ટિતે',
+ 'hmn' => 'મોંગ',
+ 'ho' => 'હિરી મોટૂ',
+ 'hr' => 'ક્રોએશિયન',
+ 'hsb' => 'અપ્પર સોર્બિયન',
+ 'ht' => 'હૈતીયન',
+ 'hu' => 'હંગેરિયન',
+ 'hup' => 'હૂપા',
+ 'hy' => 'આર્મેનિયન',
+ 'hz' => 'હેરેરો',
+ 'ia' => 'ઇંટરલિંગુઆ',
+ 'iba' => 'ઇબાન',
+ 'id' => 'ઇન્ડોનેશિયન',
+ 'ie' => 'ઇંટરલિંગ',
+ 'ig' => 'ઇગ્બો',
+ 'ii' => 'સિચુઆન યી',
+ 'ik' => 'ઇનુપિયાક',
+ 'ilo' => 'ઇલોકો',
+ 'inh' => 'ઇંગુશ',
+ 'io' => 'ઇડૌ',
+ 'is' => 'આઇસલેન્ડિક',
+ 'it' => 'ઇટાલિયન',
+ 'iu' => 'ઇનુકિટૂટ',
+ 'ja' => 'જાપાનીઝ',
+ 'jbo' => 'લોજ્બાન',
+ 'jgo' => 'નગોમ્બા',
+ 'jmc' => 'મકામે',
+ 'jpr' => 'જુદેઓ-પર્શિયન',
+ 'jrb' => 'જુદેઓ-અરબી',
+ 'jv' => 'જાવાનીસ',
+ 'ka' => 'જ્યોર્જિઅન',
+ 'kaa' => 'કારા-કલ્પક',
+ 'kab' => 'કબાઇલ',
+ 'kac' => 'કાચિન',
+ 'kaj' => 'જ્જુ',
+ 'kam' => 'કમ્બા',
+ 'kaw' => 'કાવી',
+ 'kbd' => 'કબાર્ડિયન',
+ 'kcg' => 'ત્યાપ',
+ 'kde' => 'મકોન્ડે',
+ 'kea' => 'કાબુવર્ડિઆનુ',
+ 'kfo' => 'કોરો',
+ 'kg' => 'કોંગો',
+ 'kha' => 'ખાસી',
+ 'kho' => 'ખોતાનીસ',
+ 'khq' => 'કોયરા ચિનિ',
+ 'ki' => 'કિકુયૂ',
+ 'kj' => 'ક્વાન્યામા',
+ 'kk' => 'કઝાખ',
+ 'kl' => 'કલાલ્લિસુત',
+ 'kln' => 'કલેજિન',
+ 'km' => 'ખ્મેર',
+ 'kmb' => 'કિમ્બન્દુ',
+ 'kn' => 'કન્નડ',
+ 'ko' => 'કોરિયન',
+ 'koi' => 'કોમી-પર્મ્યાક',
+ 'kok' => 'કોંકણી',
+ 'kos' => 'કોસરિયન',
+ 'kpe' => 'ક્પેલ્લે',
+ 'kr' => 'કનુરી',
+ 'krc' => 'કરાચય-બલ્કાર',
+ 'krl' => 'કરેલિયન',
+ 'kru' => 'કુરૂખ',
+ 'ks' => 'કાશ્મીરી',
+ 'ksb' => 'શમ્બાલા',
+ 'ksf' => 'બફિયા',
+ 'ku' => 'કુર્દિશ',
+ 'kum' => 'કુમીક',
+ 'kut' => 'કુતેનાઇ',
+ 'kv' => 'કોમી',
+ 'kw' => 'કોર્નિશ',
+ 'ky' => 'કિર્ગીઝ',
+ 'la' => 'લેટિન',
+ 'lad' => 'લાદીનો',
+ 'lag' => 'લંગી',
+ 'lah' => 'લાહન્ડા',
+ 'lam' => 'લામ્બા',
+ 'lb' => 'લક્ઝેમબર્ગિશ',
+ 'lez' => 'લેઝધીયન',
+ 'lfn' => 'લિંગ્વા ફેન્કા નોવા',
+ 'lg' => 'ગાંડા',
+ 'li' => 'લિંબૂર્ગિશ',
+ 'lkt' => 'લાકોટા',
+ 'ln' => 'લિંગાલા',
+ 'lo' => 'લાઓથિયન',
+ 'lol' => 'મોગો',
+ 'loz' => 'લોઝી',
+ 'lt' => 'લિથુનિયન',
+ 'lu' => 'લ્યૂબા કટાંગા',
+ 'lua' => 'લ્યૂબા-લુલુઆ',
+ 'lui' => 'લુઇસેનો',
+ 'lun' => 'લુન્ડા',
+ 'luo' => 'લ્યુઓ',
+ 'lus' => 'લુશાઇ',
+ 'luy' => 'લુઈયા',
+ 'lv' => 'લાતવિયન',
+ 'mad' => 'માદુરીસ',
+ 'mag' => 'મગહી',
+ 'mai' => 'મૈથિલી',
+ 'mak' => 'મકાસર',
+ 'man' => 'મન્ડિન્ગો',
+ 'mas' => 'મસાઇ',
+ 'mdf' => 'મોક્ષ',
+ 'mdr' => 'મંડાર',
+ 'men' => 'મેન્ડે',
+ 'mer' => 'મેરુ',
+ 'mfe' => 'મોરીસ્યેન',
+ 'mg' => 'મલાગસી',
+ 'mga' => 'મિડિલ આઇરિશ',
+ 'mgh' => 'માખુવા-મીટ્ટુ',
+ 'mgo' => 'મેતા',
+ 'mh' => 'માર્શલીઝ',
+ 'mi' => 'માઓરી',
+ 'mic' => 'મિકમેક',
+ 'min' => 'મિનાંગ્કાબાઉ',
+ 'mk' => 'મેસેડોનિયન',
+ 'ml' => 'મલયાલમ',
+ 'mn' => 'મોંગોલિયન',
+ 'mnc' => 'માન્ચુ',
+ 'mni' => 'મણિપુરી',
+ 'moh' => 'મોહૌક',
+ 'mos' => 'મોસ્સી',
+ 'mr' => 'મરાઠી',
+ 'mrj' => 'પશ્ચિમી મારી',
+ 'ms' => 'મલય',
+ 'mt' => 'માલ્ટિઝ',
+ 'mua' => 'મુનડાન્ગ',
+ 'mul' => 'બહુવિધ ભાષા',
+ 'mus' => 'ક્રિક',
+ 'mwl' => 'મિરાંડી',
+ 'mwr' => 'મારવાડી',
+ 'my' => 'બર્મીઝ',
+ 'myv' => 'એર્ઝયા',
+ 'na' => 'નાઉરૂ',
+ 'nap' => 'નેપોલિટાન',
+ 'naq' => 'નમા',
+ 'nb' => 'નોર્વેજીયન બોકમાલ',
+ 'nd' => 'ઉતર દેબેલ',
+ 'nds' => 'લો જર્મન',
+ 'ne' => 'નેપાળી',
+ 'new' => 'નેવાડી',
+ 'ng' => 'ડોન્ગા',
+ 'nia' => 'નિયાસ',
+ 'niu' => 'નિયુઆન',
+ 'nl' => 'ડચ',
+ 'nl-be' => 'ફ્લેમિશ',
+ 'nmg' => 'ક્વાસિઓ',
+ 'nn' => 'નૉર્વેજીયન નાયનૉર્સ્ક',
+ 'no' => 'નૉર્વેજીયન',
+ 'nog' => 'નોગાઇ',
+ 'non' => 'જૂની નોર્સ',
+ 'nqo' => 'એન’કો',
+ 'nr' => 'દક્ષિણ દેબેલ',
+ 'nso' => 'ઉતરી સોથો',
+ 'nus' => 'નુએર',
+ 'nv' => 'નાવાજો',
+ 'nwc' => 'પરંપરાગત નેવારી',
+ 'ny' => 'ન્યાન્જા',
+ 'nym' => 'ન્યામવેઝી',
+ 'nyn' => 'ન્યાનકોલ',
+ 'nyo' => 'ન્યોરો',
+ 'nzi' => 'ન્ઝિમા',
+ 'oc' => 'ઓક્સિટન',
+ 'oj' => 'ઓઝિંબ્વા',
+ 'om' => 'ઓરોમો',
+ 'or' => 'ઉડિયા',
+ 'os' => 'ઓસ્સેટિક',
+ 'osa' => 'ઓસેજ',
+ 'ota' => 'ઓટોમાન તુર્કિશ',
+ 'pa' => 'પંજાબી',
+ 'pag' => 'પંગાસીનાન',
+ 'pal' => 'પહલવી',
+ 'pam' => 'પમ્પાન્ગા',
+ 'pap' => 'પાપિયામેન્ટો',
+ 'pau' => 'પલાઉઆન',
+ 'peo' => 'જૂની ફારસી',
+ 'phn' => 'ફોનિશિયન',
+ 'pi' => 'પાલી',
+ 'pl' => 'પોલીશ',
+ 'pon' => 'પોહપિએન',
+ 'pro' => 'જુની પ્રોવેન્સલ',
+ 'ps' => 'પશ્તો',
+ 'pt' => 'પોર્ટુગીઝ',
+ 'pt-br' => 'બ્રાઝિલીયન પોર્ટુગીઝ',
+ 'pt-pt' => 'યુરોપિયન પોર્ટુગીઝ',
+ 'qu' => 'ક્વેચુઆ',
+ 'quc' => 'કિચે',
+ 'raj' => 'રાજસ્થાની',
+ 'rap' => 'રાપાનુઇ',
+ 'rar' => 'રારોટોંગન',
+ 'rm' => 'રોમાન્શ',
+ 'rn' => 'રૂન્દી',
+ 'ro' => 'રોમાનિયન',
+ 'ro-md' => 'મોલડાવિયન',
+ 'rof' => 'રોમ્બો',
+ 'rom' => 'રોમાની',
+ 'ru' => 'રશિયન',
+ 'rup' => 'અરોમેનિયન',
+ 'rw' => 'કિન્યારવાન્ડા',
+ 'rwk' => 'રવા',
+ 'sa' => 'સંસ્કૃત',
+ 'sad' => 'સોંડવે',
+ 'sah' => 'યાકૂત',
+ 'sam' => 'સામરિટાન અરેમિક',
+ 'saq' => 'સમ્બુરુ',
+ 'sas' => 'સાસાક',
+ 'sat' => 'સંતાલી',
+ 'sbp' => 'સાંગુ',
+ 'sc' => 'સાર્દિનિયન',
+ 'scn' => 'સિસિલિયાન',
+ 'sco' => 'સ્કોટ્સ',
+ 'sd' => 'સિંધી',
+ 'se' => 'ઉત્તરીય સામી',
+ 'seh' => 'સેના',
+ 'sel' => 'સેલ્કપ',
+ 'ses' => 'કોયરાબોરો સેન્ની',
+ 'sg' => 'સાંગો',
+ 'sga' => 'જૂની આયરિશ',
+ 'sh' => 'સર્બો-ક્રોએશિયન',
+ 'shi' => 'તેશીલહિટ',
+ 'shn' => 'શેન',
+ 'si' => 'સિંહાલી',
+ 'sid' => 'સિદામો',
+ 'sk' => 'સ્લોવૅક',
+ 'sl' => 'સ્લોવેનિયન',
+ 'sm' => 'સામોન',
+ 'sma' => 'દક્ષિણ સામી',
+ 'smj' => 'લ્યુલ સામી',
+ 'smn' => 'ઇનારી સામી',
+ 'sms' => 'સ્કોલ્ટ સામી',
+ 'sn' => 'શોના',
+ 'snk' => 'સોનિન્કે',
+ 'so' => 'સોમાલી',
+ 'sog' => 'સોગ્ડિએન',
+ 'sq' => 'અલ્બેનિયન',
+ 'sr' => 'સર્બિયન',
+ 'srn' => 'સ્રાનન ટોન્ગો',
+ 'srr' => 'સેરેર',
+ 'ss' => 'સ્વાતી',
+ 'st' => 'સદર્ન સોથો',
+ 'su' => 'સંડેનીઝ',
+ 'suk' => 'સુકુમા',
+ 'sus' => 'સુસુ',
+ 'sux' => 'સુમેરિયન',
+ 'sv' => 'સ્વીડિશ',
+ 'sw' => 'સ્વાહિલી',
+ 'swb' => 'કોમોરિયન',
+ 'swc' => 'કોંગો સ્વાહિલી',
+ 'syc' => 'પરંપરાગત સિરિએક',
+ 'syr' => 'સિરિએક',
+ 'ta' => 'તમિલ',
+ 'tcy' => 'તુલુ',
+ 'te' => 'તેલુગુ',
+ 'tem' => 'ટિમ્ને',
+ 'teo' => 'તેસો',
+ 'ter' => 'તેરેનો',
+ 'tet' => 'તેતુમ',
+ 'tg' => 'તાજીક',
+ 'th' => 'થાઈ',
+ 'ti' => 'ટાઇગ્રિનિયા',
+ 'tig' => 'ટાઇગ્રે',
+ 'tiv' => 'તિવ',
+ 'tk' => 'તુર્કમેન',
+ 'tkl' => 'તોકેલાઉ',
+ 'tl' => 'ટાગાલોગ',
+ 'tlh' => 'ક્લિન્ગોન',
+ 'tli' => 'લિંગિત',
+ 'tmh' => 'તામાશેખ',
+ 'tn' => 'ત્સ્વાના',
+ 'to' => 'ટોંગાન',
+ 'tog' => 'ન્યાસા ટોન્ગા',
+ 'tpi' => 'ટોક પિસિન',
+ 'tr' => 'ટર્કીશ',
+ 'ts' => 'સોંગા',
+ 'tsi' => 'સિમ્શિયન',
+ 'tt' => 'તતાર',
+ 'ttt' => 'મુસ્લિમ તાટ',
+ 'tum' => 'તુમ્બુકા',
+ 'tvl' => 'તુવાલુ',
+ 'tw' => 'ટ્વાઇ',
+ 'twq' => 'તસાવાક',
+ 'ty' => 'તાહિતિયન',
+ 'tyv' => 'ટુવીનિયન',
+ 'tzm' => 'સેન્ટ્રલ ઍટ્લસ તામાઝિગ્ટ',
+ 'udm' => 'ઉદમુર્ત',
+ 'ug' => 'ઉઇગુર',
+ 'uga' => 'યુગેરિટિક',
+ 'uk' => 'યુક્રેનિયન',
+ 'umb' => 'ઉમ્બુન્ડૂ',
+ 'und' => 'અજ્ઞાત ભાષા',
+ 'ur' => 'ઉર્દૂ',
+ 'uz' => 'ઉઝ્બેક',
+ 'vai' => 'વાઇ',
+ 've' => 'વેન્દા',
+ 'vi' => 'વિયેતનામીસ',
+ 'vo' => 'વોલાપુક',
+ 'vot' => 'વોટિક',
+ 'vun' => 'વુન્જો',
+ 'wa' => 'વાલૂન',
+ 'wal' => 'વલામો',
+ 'war' => 'વારે',
+ 'was' => 'વાશો',
+ 'wo' => 'વોલોફ',
+ 'xal' => 'કાલ્મિક',
+ 'xh' => 'ખોસા',
+ 'xog' => 'સોગા',
+ 'yao' => 'યાઓ',
+ 'yap' => 'યાપીસ',
+ 'yi' => 'યિદ્દિશ',
+ 'yo' => 'યોરૂબા',
+ 'yue' => 'કેંટોનીઝ',
+ 'za' => 'ઝુઆગ',
+ 'zap' => 'ઝેપોટેક',
+ 'zbl' => 'બ્લિસિમ્બોલ્સ',
+ 'zen' => 'ઝેનાગા',
+ 'zgh' => 'પ્રમાણભૂત મોરોક્કન ટમાઝિટ',
+ 'zh' => 'ચાઇનીઝ',
+ 'zh-hans' => 'સરળીકૃત ચાઇનીઝ',
+ 'zh-hant' => 'પારંપરિક ચાઇનીઝ',
+ 'zu' => 'ઝુલુ',
+ 'zun' => 'ઝૂની',
+ 'zxx' => 'કોઇ ભાષાશાસ્ત્રીય સામગ્રી નથી',
+ 'zza' => 'ઝાઝા',
+);
+
+$currencyNames = array(
+ 'AED' => 'યુનાઈટેડ આરબ અમિરાત દિરહામ',
+ 'AFN' => 'અફ્ગાન અફ્ગાની',
+ 'ALL' => 'અલ્બેનિયન લેક',
+ 'AMD' => 'અર્મેનિયન ડ્રેમ',
+ 'ANG' => 'નેધરલેંડ એંટિલિન ગિલ્ડર',
+ 'AOA' => 'અંગોલિયન ક્વાન્ઝા',
+ 'ARS' => 'અર્જેન્ટીના પેસો',
+ 'AUD' => 'ઑસ્ટ્રેલિયન ડૉલર',
+ 'AWG' => 'અરુબન ફ્લોરિન',
+ 'AZN' => 'અઝરબૈજાની મનાત',
+ 'BAM' => 'બોસ્નિયા અને હર્ઝેગોવિના રૂપાંતર યોગ્ય માર્ક',
+ 'BBD' => 'બાર્બાડિયન ડોલર',
+ 'BDT' => 'બાંગલાદેશી ટાકા',
+ 'BGN' => 'બલ્ગેરીયન લેવ',
+ 'BHD' => 'બેહરિની દિનાર',
+ 'BIF' => 'બુરુન્ડિયન ફ્રેંક',
+ 'BMD' => 'બર્મુડન ડોલર',
+ 'BND' => 'બ્રુનેઇ ડોલર',
+ 'BOB' => 'બોલિવિયન બોલિવિયાનો',
+ 'BRL' => 'બ્રાઝિલીયન રિઆલ',
+ 'BSD' => 'બહામિયન ડોલર',
+ 'BTN' => 'ભુતાનિઝ એંગુલ્ત્રમ',
+ 'BWP' => 'બોત્સવાનન પુલા',
+ 'BYR' => 'બેલારુશિયન રૂબલ',
+ 'BZD' => 'બેલિઝ ડોલર',
+ 'CAD' => 'કેનેડિયન ડૉલર',
+ 'CDF' => 'કોંગોલિઝ ફ્રેંક',
+ 'CHF' => 'સ્વિસ ફ્રેંક',
+ 'CLP' => 'ચિલિઅન પેસો',
+ 'CNY' => 'ચાઇનિઝ યુઆન',
+ 'COP' => 'કોલમ્બિયન પેસો',
+ 'CRC' => 'કોસ્ટા રિકન કોલોન',
+ 'CUC' => 'ક્યુબન રૂપાંતર યોગ્ય પેસો',
+ 'CUP' => 'ક્યુબન પેસો',
+ 'CVE' => 'કેપ વર્દિયન એસ્કુડો',
+ 'CZK' => 'ચેક રીપબ્લિક કોરુના',
+ 'DJF' => 'જિબુટિયન ફ્રેંક',
+ 'DKK' => 'ડેનિશ ક્રોન',
+ 'DOP' => 'ડોમિનિકન પેસો',
+ 'DZD' => 'અલ્જિરિયન દિનાર',
+ 'EGP' => 'ઇજિપ્તિયન પાઉન્ડ',
+ 'ERN' => 'એરિટ્રેયન નક્ફા',
+ 'ETB' => 'ઇથિયોપીયન બિર',
+ 'EUR' => 'યુરો',
+ 'FJD' => 'ફિજિઅન ડોલર',
+ 'FKP' => 'ફૉકલેન્ડ આઇલેંડ્સ પાઉન્ડ',
+ 'GBP' => 'બ્રિટિશ પાઉન્ડ સ્ટર્લિંગ',
+ 'GEL' => 'જ્યોર્જિઅન લારી',
+ 'GHS' => 'ઘાનાઇયન સેડી',
+ 'GIP' => 'જીબ્રાલ્ટર પાઉન્ડ',
+ 'GMD' => 'ગેમ્બિયન દલાસી',
+ 'GNF' => 'ગિનીયન ફ્રેંક',
+ 'GTQ' => 'ગ્વાટેમાલા કુઇટ્ઝલ',
+ 'GYD' => 'ગયાનિઝ ડોલર',
+ 'HKD' => 'હોંગ કોંગ ડૉલર',
+ 'HNL' => 'હોન્ડ્યુરન લેમ્પિરા',
+ 'HRK' => 'ક્રોએશિયન ક્યુના',
+ 'HTG' => 'હાઇટિઇન ગોર્ડ',
+ 'HUF' => 'હંગેરીયન ફોરિન્ત',
+ 'IDR' => 'ઇન્ડોનેશિયન રૂપિયા',
+ 'ILS' => 'ઇઝરાયેલી ન્યુ શેકલ',
+ 'INR' => 'ભારતીય રૂપિયા',
+ 'IQD' => 'ઇરાકી દિનાર',
+ 'IRR' => 'ઇરાનિયન રિયાલ',
+ 'ISK' => 'આઇસલેન્ડિક ક્રોના',
+ 'JMD' => 'જમૈકિયન ડોલર',
+ 'JOD' => 'જોર્ડનિયન દિનાર',
+ 'JPY' => 'જાપાનીઝ યેન',
+ 'KES' => 'કેન્યેન શિલિંગ',
+ 'KGS' => 'કિર્ગિસ્તાની સોમ',
+ 'KHR' => 'કેમ્બોડિયન રીઅલ',
+ 'KMF' => 'કોમોરિઅન ફ્રેંક',
+ 'KPW' => 'ઉત્તર કોરિયન વન',
+ 'KRW' => 'દક્ષિણ કોરિયન વન',
+ 'KWD' => 'કુવૈતી દિનાર',
+ 'KYD' => 'કેયમેન આઇલેંડ્સ ડોલર',
+ 'KZT' => 'કઝાકિસ્તાની ટેંગ',
+ 'LAK' => 'લાઓશિયન કિપ',
+ 'LBP' => 'લેબેનિઝ પાઉન્ડ',
+ 'LKR' => 'શ્રી લંકન રૂપી',
+ 'LRD' => 'લિબેરિયન ડોલર',
+ 'LSL' => 'લેસોથો લોતી',
+ 'LTL' => 'લિથુએનિયન લિતાસ',
+ 'LVL' => 'લાતવિયન લેત્સ',
+ 'LYD' => 'લિબ્યન દિનાર',
+ 'MAD' => 'મોરોક્કન દિરહામ',
+ 'MDL' => 'મોલડોવેન લિયુ',
+ 'MGA' => 'માલાગેસી અરીઆરી',
+ 'MKD' => 'મેસેડોનિયન દિનાર',
+ 'MMK' => 'મ્યાંમાર ક્યાત',
+ 'MNT' => 'મોંગોલિયન ટગરિક',
+ 'MOP' => 'માકાનિઝ પતાકા',
+ 'MRO' => 'મોરીશેનિયન ઓગુયા',
+ 'MUR' => 'મોરેશીઅન રૂપી',
+ 'MVR' => 'માલ્દિવિયન રુફિયા',
+ 'MWK' => 'માલાવિયન ક્વાચા',
+ 'MXN' => 'મેક્સિકન પેસો',
+ 'MYR' => 'મલેશિયન રિંગ્ગેટ',
+ 'MZN' => 'મોઝામ્બિકન મેટિકલ',
+ 'NAD' => 'નામિબિયન ડોલર',
+ 'NGN' => 'નાઇજીરિયન નૈરા',
+ 'NIO' => 'નિકારાગુઅન કોર્ડોબા',
+ 'NOK' => 'નૉર્વેજિયન ક્રોન',
+ 'NPR' => 'નેપાલિઝ રૂપી',
+ 'NZD' => 'ન્યૂઝિલેંડ ડૉલર',
+ 'OMR' => 'ઓમાની રિયાલ',
+ 'PAB' => 'પનામેનિયન બાલ્બોઆ',
+ 'PEN' => 'પેરુવિયન ન્યુવો સોલ',
+ 'PGK' => 'પાપુઆ ન્યૂ ગિનીયન કિના',
+ 'PHP' => 'ફિલીપાઇન પેસો',
+ 'PKR' => 'પાકિસ્તાની રૂપી',
+ 'PLN' => 'પોલિસ ઝ્લોટી',
+ 'PYG' => 'પરાગ્વેયન ગુઆરાની',
+ 'QAR' => 'કતારી રિયાલ',
+ 'RON' => 'રોમાનિયન લેઉ',
+ 'RSD' => 'સર્બિયન દિનાર',
+ 'RUB' => 'રશિયન રબલ',
+ 'RWF' => 'રવાંડન ફ્રેંક',
+ 'SAR' => 'સાઉદી રિયાલ',
+ 'SBD' => 'સોલોમન આઇલેંડ્સ ડોલર',
+ 'SCR' => 'સેશેલોઈ રૂપી',
+ 'SDG' => 'સુદાનિઝ પાઉન્ડ',
+ 'SEK' => 'સ્વીડિશ ક્રોના',
+ 'SGD' => 'સિંગાપુર ડૉલર',
+ 'SHP' => 'સેંટ હેલેના પાઉન્ડ',
+ 'SLL' => 'સિએરા લિઓનિઅન લિઓન',
+ 'SOS' => 'સોમાલી શિલિંગ',
+ 'SRD' => 'સૂરીનામિઝ ડોલર',
+ 'SSP' => 'દક્ષિણ સુદાનિઝ પાઉન્ડ',
+ 'STD' => 'સાઓ ટૉમ એન્ડ પ્રિંસાઇપ ડોબ્રા',
+ 'SYP' => 'સાઇરિયન પાઉન્ડ',
+ 'SZL' => 'સ્વાઝી લિલાન્ગેની',
+ 'THB' => 'થાઇ બાહ્ત',
+ 'TJS' => 'તાજિકિસ્તાની સોમોની',
+ 'TMT' => 'તુર્કમેનિસ્તાની મનત',
+ 'TND' => 'ટ્યુનિશિયન દિનાર',
+ 'TOP' => 'ટોંગન પ’અંગા',
+ 'TRY' => 'તુર્કિશ લિરા',
+ 'TTD' => 'ત્રિનિદાદ અને ટોબેગો ડોલર',
+ 'TWD' => 'ન્યુ તાઇવાન ડૉલર',
+ 'TZS' => 'તાન્ઝાનિયન શિલિંગ',
+ 'UAH' => 'યુક્રેનિયન હ્રિવિનિયા',
+ 'UGX' => 'યુગાંડન શિલિંગ',
+ 'USD' => 'યુઍસ ડોલર',
+ 'UYU' => 'ઉરુગ્વેયન પેસો',
+ 'UZS' => 'ઉઝ્બેકિસ્તાન સોમ',
+ 'VEF' => 'વેનેઝુએલન બોલિવર',
+ 'VND' => 'વિયેતનામીસ ડોંગ',
+ 'VUV' => 'વનૌતુ વાતુ',
+ 'WST' => 'સમોઅન તાલા',
+ 'XAF' => '[CFA] ફ્રેંક [BEAC]',
+ 'XCD' => 'ઇસ્ટ કેરિબિયન ડોલર',
+ 'XOF' => '[CFA] ફ્રેંક [BCEAO]',
+ 'XPF' => '[CFP] ફ્રેંક',
+ 'XXX' => 'અજ્ઞાત ચલણ',
+ 'YER' => 'યેમેની રિઆલ',
+ 'ZAR' => 'દક્ષિણ આફ્રિકી રેંડ',
+ 'ZMK' => 'ઝામ્બિયન ક્વાચા (1968–2012)',
+ 'ZMW' => 'ઝામ્બિયન ક્વાચા',
+);
+
+$currencySymbols = array(
+ 'AED' => 'AED',
+ 'AFN' => 'AFN',
+ 'ALL' => 'ALL',
+ 'AMD' => 'AMD',
+ 'ANG' => 'ANG',
+ 'AOA' => 'AOA',
+ 'ARS' => 'ARS',
+ 'AUD' => 'A$',
+ 'AWG' => 'AWG',
+ 'AZN' => 'AZN',
+ 'BAM' => 'BAM',
+ 'BBD' => 'BBD',
+ 'BDT' => 'BDT',
+ 'BGN' => 'BGN',
+ 'BHD' => 'BHD',
+ 'BIF' => 'BIF',
+ 'BMD' => 'BMD',
+ 'BND' => 'BND',
+ 'BOB' => 'BOB',
+ 'BRL' => 'R$',
+ 'BSD' => 'BSD',
+ 'BTN' => 'BTN',
+ 'BWP' => 'BWP',
+ 'BYR' => 'BYR',
+ 'BZD' => 'BZD',
+ 'CAD' => 'CA$',
+ 'CDF' => 'CDF',
+ 'CHF' => 'CHF',
+ 'CLP' => 'CLP',
+ 'CNY' => 'CN¥',
+ 'COP' => 'COP',
+ 'CRC' => 'CRC',
+ 'CUC' => 'CUC',
+ 'CUP' => 'CUP',
+ 'CVE' => 'CVE',
+ 'CZK' => 'CZK',
+ 'DJF' => 'DJF',
+ 'DKK' => 'DKK',
+ 'DOP' => 'DOP',
+ 'DZD' => 'DZD',
+ 'EGP' => 'EGP',
+ 'ERN' => 'ERN',
+ 'ETB' => 'ETB',
+ 'EUR' => '€',
+ 'FJD' => 'FJD',
+ 'FKP' => 'FKP',
+ 'GBP' => '£',
+ 'GEL' => 'GEL',
+ 'GHS' => 'GHS',
+ 'GIP' => 'GIP',
+ 'GMD' => 'GMD',
+ 'GNF' => 'GNF',
+ 'GTQ' => 'GTQ',
+ 'GYD' => 'GYD',
+ 'HKD' => 'HK$',
+ 'HNL' => 'HNL',
+ 'HRK' => 'HRK',
+ 'HTG' => 'HTG',
+ 'HUF' => 'HUF',
+ 'IDR' => 'IDR',
+ 'ILS' => '₪',
+ 'INR' => '₹',
+ 'IQD' => 'IQD',
+ 'IRR' => 'IRR',
+ 'ISK' => 'ISK',
+ 'JMD' => 'JMD',
+ 'JOD' => 'JOD',
+ 'JPY' => 'JP¥',
+ 'KES' => 'KES',
+ 'KGS' => 'KGS',
+ 'KHR' => 'KHR',
+ 'KMF' => 'KMF',
+ 'KPW' => 'KPW',
+ 'KRW' => '₩',
+ 'KWD' => 'KWD',
+ 'KYD' => 'KYD',
+ 'KZT' => 'KZT',
+ 'LAK' => 'LAK',
+ 'LBP' => 'LBP',
+ 'LKR' => 'LKR',
+ 'LRD' => 'LRD',
+ 'LTL' => 'LTL',
+ 'LVL' => 'LVL',
+ 'LYD' => 'LYD',
+ 'MAD' => 'MAD',
+ 'MDL' => 'MDL',
+ 'MGA' => 'MGA',
+ 'MKD' => 'MKD',
+ 'MMK' => 'MMK',
+ 'MNT' => 'MNT',
+ 'MOP' => 'MOP',
+ 'MRO' => 'MRO',
+ 'MUR' => 'MUR',
+ 'MVR' => 'MVR',
+ 'MWK' => 'MWK',
+ 'MXN' => 'MX$',
+ 'MYR' => 'MYR',
+ 'MZN' => 'MZN',
+ 'NAD' => 'NAD',
+ 'NGN' => 'NGN',
+ 'NIO' => 'NIO',
+ 'NOK' => 'NOK',
+ 'NPR' => 'NPR',
+ 'NZD' => 'NZ$',
+ 'OMR' => 'OMR',
+ 'PAB' => 'PAB',
+ 'PEN' => 'PEN',
+ 'PGK' => 'PGK',
+ 'PHP' => 'PHP',
+ 'PKR' => 'PKR',
+ 'PLN' => 'PLN',
+ 'PYG' => 'PYG',
+ 'QAR' => 'QAR',
+ 'RON' => 'RON',
+ 'RSD' => 'RSD',
+ 'RUB' => 'RUB',
+ 'RWF' => 'RWF',
+ 'SAR' => 'SAR',
+ 'SBD' => 'SBD',
+ 'SCR' => 'SCR',
+ 'SDG' => 'SDG',
+ 'SEK' => 'SEK',
+ 'SGD' => 'SGD',
+ 'SHP' => 'SHP',
+ 'SLL' => 'SLL',
+ 'SOS' => 'SOS',
+ 'SRD' => 'SRD',
+ 'SSP' => 'SSP',
+ 'STD' => 'STD',
+ 'SYP' => 'SYP',
+ 'SZL' => 'SZL',
+ 'THB' => '฿',
+ 'TJS' => 'TJS',
+ 'TMT' => 'TMT',
+ 'TND' => 'TND',
+ 'TOP' => 'TOP',
+ 'TRY' => 'TRY',
+ 'TTD' => 'TTD',
+ 'TWD' => 'NT$',
+ 'TZS' => 'TZS',
+ 'UAH' => 'UAH',
+ 'UGX' => 'UGX',
+ 'USD' => 'US$',
+ 'UYU' => 'UYU',
+ 'UZS' => 'UZS',
+ 'VEF' => 'VEF',
+ 'VND' => '₫',
+ 'VUV' => 'VUV',
+ 'WST' => 'WST',
+ 'XAF' => 'FCFA',
+ 'XCD' => 'EC$',
+ 'XOF' => 'CFA',
+ 'XPF' => 'CFPF',
+ 'YER' => 'YER',
+ 'ZAR' => 'ZAR',
+ 'ZMW' => 'ZMW',
+);
+
+$countryNames = array(
+ 'AC' => 'એસેન્શન આઇલેન્ડ',
+ 'AD' => 'ઍંડોરા',
+ 'AE' => 'યુનાઇટેડ આરબ અમીરાત',
+ 'AF' => 'અફઘાનિસ્તાન',
+ 'AG' => 'એન્ટીગુઆ અને બરબુડા',
+ 'AI' => 'ઍંગ્વિલા',
+ 'AL' => 'અલ્બેનિયા',
+ 'AM' => 'આર્મેનિયા',
+ 'AN' => 'નેધરલેંડ્સ એંટિલેસ',
+ 'AO' => 'અંગોલા',
+ 'AQ' => 'એન્ટાર્કટિકા',
+ 'AR' => 'આર્જેન્ટીના',
+ 'AS' => 'અમેરીકન સમોઆ',
+ 'AT' => 'ઑસ્ટ્રિયા',
+ 'AU' => 'ઑસ્ટ્રેલિયા',
+ 'AW' => 'અરુબા',
+ 'AX' => 'એલેંડ આઇલેન્ડ્સ',
+ 'AZ' => 'અઝરબૈજાન',
+ 'BA' => 'બોસ્નિયા અને હર્ઝેગોવિના',
+ 'BB' => 'બાર્બાડોસ',
+ 'BD' => 'બાંગ્લાદેશ',
+ 'BE' => 'બેલ્જીયમ',
+ 'BF' => 'બુર્કિના ફાસો',
+ 'BG' => 'બલ્ગેરિયા',
+ 'BH' => 'બેહરીન',
+ 'BI' => 'બુરુંડી',
+ 'BJ' => 'બેનિન',
+ 'BL' => 'સેંટ બાર્થલેમી',
+ 'BM' => 'બર્મુડા',
+ 'BN' => 'બ્રુનેઇ',
+ 'BO' => 'બોલિવિયા',
+ 'BQ' => 'કેરેબિયન નેધરલેન્ડ્ઝ',
+ 'BR' => 'બ્રાઝિલ',
+ 'BS' => 'બહામાસ',
+ 'BT' => 'ભૂટાન',
+ 'BV' => 'બૌવેત આઇલેન્ડ',
+ 'BW' => 'બોત્સ્વાના',
+ 'BY' => 'બેલારુસ',
+ 'BZ' => 'બેલીઝ',
+ 'CA' => 'કેનેડા',
+ 'CC' => 'કોકોઝ (કીલીંગ) આઇલેન્ડ્સ',
+ 'CD' => 'કોંગો - કિંશાસા',
+ 'CF' => 'સેંટ્રલ આફ્રિકન રીપબ્લિક',
+ 'CG' => 'કોંગો - બ્રાઝાવિલે',
+ 'CH' => 'સ્વિટ્ઝર્લૅન્ડ',
+ 'CI' => 'કોટ ડી આઇવરી',
+ 'CK' => 'કુક આઇલેન્ડ્સ',
+ 'CL' => 'ચિલી',
+ 'CM' => 'કૅમરૂન',
+ 'CN' => 'ચીન',
+ 'CO' => 'કોલમ્બિયા',
+ 'CP' => 'ક્લિપરટન આઇલેન્ડ',
+ 'CR' => 'કોસ્ટા રિકા',
+ 'CU' => 'ક્યુબા',
+ 'CV' => 'કૅપ વર્ડે',
+ 'CW' => 'કુરાકાઓ',
+ 'CX' => 'ક્રિસમસ આઇલેન્ડ',
+ 'CY' => 'સાયપ્રસ',
+ 'CZ' => 'ચેક રીપબ્લિક',
+ 'DE' => 'જર્મની',
+ 'DG' => 'ડિએગો ગારસિઆ',
+ 'DJ' => 'જીબૌટી',
+ 'DK' => 'ડેનમાર્ક',
+ 'DM' => 'ડોમિનિકા',
+ 'DO' => 'ડોમિનિકન રીપબ્લિક',
+ 'DZ' => 'અલ્જીરિયા',
+ 'EA' => 'સ્યુટા અને મેલિલા',
+ 'EC' => 'એક્વાડોર',
+ 'EE' => 'એસ્ટોનિયા',
+ 'EG' => 'ઇજિપ્ત',
+ 'EH' => 'પશ્ચિમી સહારા',
+ 'ER' => 'એરિટ્રિયા',
+ 'ES' => 'સ્પેન',
+ 'ET' => 'ઇથિઓપિયા',
+ 'EU' => 'યુરોપિયન સંઘ',
+ 'FI' => 'ફિનલેન્ડ',
+ 'FJ' => 'ફીજી',
+ 'FK' => 'ફૉકલેન્ડ આઇલેન્ડ્સ',
+ 'FM' => 'માઇક્રોનેશિયા',
+ 'FO' => 'ફૅરો આઇલેન્ડ્સ',
+ 'FR' => 'ફ્રાંસ',
+ 'GA' => 'ગેબન',
+ 'GB' => 'યુ.કે.',
+ 'GD' => 'ગ્રેનેડા',
+ 'GE' => 'જ્યોર્જીયા',
+ 'GF' => 'ફ્રેંચ ગયાના',
+ 'GG' => 'ગ્વેર્નસે',
+ 'GH' => 'ઘાના',
+ 'GI' => 'જીબ્રાલ્ટર',
+ 'GL' => 'ગ્રીનલેન્ડ',
+ 'GM' => 'ગેમ્બિયા',
+ 'GN' => 'ગિની',
+ 'GP' => 'ગ્વાડેલોપ',
+ 'GQ' => 'ઇક્વેટોરિયલ ગિની',
+ 'GR' => 'ગ્રીસ',
+ 'GS' => 'દક્ષિણ જ્યોર્જીયા અને દક્ષિણ સેન્ડવિચ આઇલેન્ડ્સ',
+ 'GT' => 'ગ્વાટેમાલા',
+ 'GU' => 'ગ્વામ',
+ 'GW' => 'ગિની-બિસાઉ',
+ 'GY' => 'ગયાના',
+ 'HK' => 'હોંગ કોંગ',
+ 'HM' => 'હર્ડ અને મેકડોનાલ્ડ આઇલેન્ડ્સ',
+ 'HN' => 'હોન્ડુરસ',
+ 'HR' => 'ક્રોએશિયા',
+ 'HT' => 'હૈતિ',
+ 'HU' => 'હંગેરી',
+ 'IC' => 'કૅનેરી આઇલેન્ડ્સ',
+ 'ID' => 'ઇન્ડોનેશિયા',
+ 'IE' => 'આયર્લેંડ',
+ 'IL' => 'ઇઝરાઇલ',
+ 'IM' => 'આઈલ ઓફ મૅન',
+ 'IN' => 'ભારત',
+ 'IO' => 'બ્રિટિશ ઇન્ડિયન ઓશન ટેરિટરી',
+ 'IQ' => 'ઇરાક',
+ 'IR' => 'ઈરાન',
+ 'IS' => 'આઇસલેન્ડ',
+ 'IT' => 'ઇટાલી',
+ 'JE' => 'જર્સી',
+ 'JM' => 'જમૈકા',
+ 'JO' => 'જોર્ડન',
+ 'JP' => 'જાપાન',
+ 'KE' => 'કેન્યા',
+ 'KG' => 'કિર્ગિઝ્સ્તાન',
+ 'KH' => 'કંબોડિયા',
+ 'KI' => 'કિરિબાટી',
+ 'KM' => 'કોમોરસ',
+ 'KN' => 'સેંટ કિટ્સ એંડ નેવિસ',
+ 'KP' => 'ઉત્તર કોરિયા',
+ 'KR' => 'દક્ષિણ કોરિયા',
+ 'KW' => 'કુવૈત',
+ 'KY' => 'કેયમેન આઇલેન્ડ્સ',
+ 'KZ' => 'કઝાકિસ્તાન',
+ 'LA' => 'લાઓસ',
+ 'LB' => 'લેબનોન',
+ 'LC' => 'સેંટ લુસિયા',
+ 'LI' => 'લૈચટેંસ્ટેઇન',
+ 'LK' => 'શ્રીલંકા',
+ 'LR' => 'લાઇબેરિયા',
+ 'LS' => 'લેસોથો',
+ 'LT' => 'લિથુઆનિયા',
+ 'LU' => 'લક્ઝમબર્ગ',
+ 'LV' => 'લાત્વિયા',
+ 'LY' => 'લિબિયા',
+ 'MA' => 'મોરોક્કો',
+ 'MC' => 'મોનાકો',
+ 'MD' => 'મોલડોવા',
+ 'ME' => 'મૉન્ટેંનેગ્રો',
+ 'MF' => 'સેંટ માર્ટિન',
+ 'MG' => 'મેડાગાસ્કર',
+ 'MH' => 'માર્શલ આઇલેન્ડ્સ',
+ 'MK' => 'મેસેડોનિયા',
+ 'ML' => 'માલી',
+ 'MM' => 'મ્યાંમાર (બર્મા)',
+ 'MN' => 'મંગોલિયા',
+ 'MO' => 'મકાઉ',
+ 'MP' => 'ઉત્તરીય મારિયાના આઇલેન્ડ્સ',
+ 'MQ' => 'માર્ટીનીક',
+ 'MR' => 'મૌરિટાનિયા',
+ 'MS' => 'મોંટસેરાત',
+ 'MT' => 'માલ્ટા',
+ 'MU' => 'મોરિશિયસ',
+ 'MV' => 'માલદિવ્સ',
+ 'MW' => 'માલાવી',
+ 'MX' => 'મેક્સિકો',
+ 'MY' => 'મલેશિયા',
+ 'MZ' => 'મોઝામ્બિક',
+ 'NA' => 'નામિબિયા',
+ 'NC' => 'ન્યુ સેલેડોનિયા',
+ 'NE' => 'નાઇજર',
+ 'NF' => 'નોરફૉક આઇલેન્ડ',
+ 'NG' => 'નાઇજીરીયા',
+ 'NI' => 'નિકારાગુઆ',
+ 'NL' => 'નેધરલેન્ડ',
+ 'NO' => 'નૉર્વે',
+ 'NP' => 'નેપાળ',
+ 'NR' => 'નૌરુ',
+ 'NU' => 'નીયુ',
+ 'NZ' => 'ન્યુઝીલેન્ડ',
+ 'OM' => 'ઓમાન',
+ 'PA' => 'પનામા',
+ 'PE' => 'પેરુ',
+ 'PF' => 'ફ્રેંચ પોલિનેશિયા',
+ 'PG' => 'પાપુઆ ન્યૂ ગિની',
+ 'PH' => 'ફિલીપાઇન્સ',
+ 'PK' => 'પાકિસ્તાન',
+ 'PL' => 'પોલેંડ',
+ 'PM' => 'સેંટ પીએરે એન્ડ મિકીલોન',
+ 'PN' => 'પીટકૈર્ન આઇલેન્ડ્સ',
+ 'PR' => 'પ્યુઅર્ટો રિકો',
+ 'PS' => 'પેલેસ્ટાઇન',
+ 'PT' => 'પોર્ટુગલ',
+ 'PW' => 'પલાઉ',
+ 'PY' => 'પેરાગ્વે',
+ 'QA' => 'કતાર',
+ 'QO' => 'આઉટલાયિંગ ઓશનિયા',
+ 'RE' => 'રીયુનિયન',
+ 'RO' => 'રોમાનિયા',
+ 'RS' => 'સર્બિયા',
+ 'RU' => 'રશિયા',
+ 'RW' => 'રવાંડા',
+ 'SA' => 'સાઉદી અરેબિયા',
+ 'SB' => 'સોલોમન આઇલેન્ડ્સ',
+ 'SC' => 'શેશેલ્સ',
+ 'SD' => 'સુદાન',
+ 'SE' => 'સ્વીડન',
+ 'SG' => 'સિંગાપુર',
+ 'SH' => 'સેંટ હેલેના',
+ 'SI' => 'સ્લોવેનિયા',
+ 'SJ' => 'સ્વાલબર્ડ એન્ડ જેન મેયન',
+ 'SK' => 'સ્લોવેકિયા',
+ 'SL' => 'સીએરા લેઓન',
+ 'SM' => 'સૅન મેરિનો',
+ 'SN' => 'સેનેગલ',
+ 'SO' => 'સોમાલિયા',
+ 'SR' => 'સુરીનામ',
+ 'SS' => 'દક્ષિણ સુદાન',
+ 'ST' => 'સાઓ ટૉમ અને પ્રિંસિપે',
+ 'SV' => 'એલ સેલ્વાડોર',
+ 'SX' => 'સિંટ માર્ટેન',
+ 'SY' => 'સીરિયા',
+ 'SZ' => 'સ્વાઝિલેન્ડ',
+ 'TA' => 'ત્રિસ્તાન દા કુન્હા',
+ 'TC' => 'ટર્ક્સ એન્ડ કૈકોસ આઇલેન્ડ્સ',
+ 'TD' => 'ચાડ',
+ 'TF' => 'ફ્રેંચ સદર્ન ટેરિટરીઝ',
+ 'TG' => 'ટોગો',
+ 'TH' => 'થાઇલેંડ',
+ 'TJ' => 'તાજીકિસ્તાન',
+ 'TK' => 'ટોકેલાઉ',
+ 'TL' => 'તિમોર-લેસ્તે',
+ 'TM' => 'તુર્કમેનિસ્તાન',
+ 'TN' => 'ટ્યુનિશિયા',
+ 'TO' => 'ટોંગા',
+ 'TR' => 'તુર્કી',
+ 'TT' => 'ત્રિનિદાદ અને ટોબેગો',
+ 'TV' => 'તુવાલુ',
+ 'TW' => 'તાઇવાન',
+ 'TZ' => 'તાંઝાનિયા',
+ 'UA' => 'યુક્રેન',
+ 'UG' => 'યુગાંડા',
+ 'UM' => 'સંયુક્ત રાજ્ય આઉટલાઇંગ આયલેન્ડ્સ',
+ 'US' => 'યુ.એસ.',
+ 'UY' => 'ઉરુગ્વે',
+ 'UZ' => 'ઉઝ્બેકિસ્તાન',
+ 'VA' => 'વેટિકન સિટી',
+ 'VC' => 'સેન્ટ વિન્સેન્ટ એન્ડ ગ્રેનેડીન્સ',
+ 'VE' => 'વેનેઝુએલા',
+ 'VG' => 'બ્રિટિશ વર્જિન આઇલેન્ડ્સ',
+ 'VI' => 'યુ.એસ વર્જિન આઇલેન્ડ્સ',
+ 'VN' => 'વિયેતનામ',
+ 'VU' => 'વાનુઆતુ',
+ 'WF' => 'વૉલિસ એંડ ફ્યુચુના',
+ 'WS' => 'સમોઆ',
+ 'XK' => 'કોસોવો',
+ 'YE' => 'યેમેન',
+ 'YT' => 'મેયોટ',
+ 'ZA' => 'દક્ષિણ આફ્રિકા',
+ 'ZM' => 'ઝામ્બિયા',
+ 'ZW' => 'ઝિમ્બાબ્વે',
+);
+
+$timeUnits = array(
+ 'day-future-one' => '{0} દિવસમાં',
+ 'day-future-other' => '{0} દિવસમાં',
+ 'day-narrow-future-one' => '+{0} દિવસ',
+ 'day-narrow-future-other' => '+{0} દિવસ',
+ 'day-narrow-past-one' => '-{0} દિવસ',
+ 'day-narrow-past-other' => '-{0} દિવસ',
+ 'day-one' => '{0} દિવસ',
+ 'day-other' => '{0} દિવસ',
+ 'day-past-one' => '{0} દિવસ પહેલા',
+ 'day-past-other' => '{0} દિવસ પહેલા',
+ 'day-short-future-one' => '{0} દિવસમાં',
+ 'day-short-future-other' => '{0} દિવસમાં',
+ 'day-short-past-one' => '{0} દિવસ પહેલા',
+ 'day-short-past-other' => '{0} દિવસ પહેલા',
+ 'hour-future-one' => '{0} કલાકમાં',
+ 'hour-future-other' => '{0} કલાકમાં',
+ 'hour-narrow-future-one' => '{0} કલાકમાં',
+ 'hour-narrow-future-other' => '{0} કલાકમાં',
+ 'hour-narrow-past-one' => '-{0} કલાક',
+ 'hour-narrow-past-other' => '-{0} કલાક',
+ 'hour-one' => '{0} કલાક',
+ 'hour-other' => '{0} કલાક',
+ 'hour-past-one' => '{0} કલાક પહેલા',
+ 'hour-past-other' => '{0} કલાક પહેલા',
+ 'hour-short-future-one' => '{0} કલાકમાં',
+ 'hour-short-future-other' => '{0} કલાકમાં',
+ 'hour-short-past-one' => '{0} કલાક પહેલા',
+ 'hour-short-past-other' => '{0} કલાક પહેલા',
+ 'microsecond-one' => '{0} માઇક્રોસેકંડ',
+ 'microsecond-other' => '{0} માઇક્રોસેકંડ',
+ 'millisecond-one' => '{0} મિલિસેકન્ડ',
+ 'millisecond-other' => '{0} મિલિસેકન્ડ',
+ 'minute-future-one' => '{0} મિનિટમાં',
+ 'minute-future-other' => '{0} મિનિટમાં',
+ 'minute-narrow-future-one' => '{0} મિનિટમાં',
+ 'minute-narrow-future-other' => '{0} મિનિટમાં',
+ 'minute-narrow-past-one' => '-{0} મિનિટ',
+ 'minute-narrow-past-other' => '-{0} મિનિટ',
+ 'minute-one' => '{0} મિનિટ',
+ 'minute-other' => '{0} મિનિટ',
+ 'minute-past-one' => '{0} મિનિટ પહેલા',
+ 'minute-past-other' => '{0} મિનિટ પહેલા',
+ 'minute-short-future-one' => '{0} મિનિટમાં',
+ 'minute-short-future-other' => '{0} મિનિટમાં',
+ 'minute-short-past-one' => '{0} મિનિટ પહેલા',
+ 'minute-short-past-other' => '{0} મિનિટ પહેલા',
+ 'month-future-one' => '{0} મહિનામાં',
+ 'month-future-other' => '{0} મહિનામાં',
+ 'month-narrow-future-one' => '+{0} મહિના',
+ 'month-narrow-future-other' => '+{0} મહિના',
+ 'month-narrow-past-one' => '-{0} મહિના',
+ 'month-narrow-past-other' => '-{0} મહિના',
+ 'month-one' => '{0} મહિનો',
+ 'month-other' => '{0} મહિના',
+ 'month-past-one' => '{0} મહિના પહેલા',
+ 'month-past-other' => '{0} મહિના પહેલા',
+ 'month-short-future-one' => '{0} મહિનામાં',
+ 'month-short-future-other' => '{0} મહિનામાં',
+ 'month-short-past-one' => '{0} મહિના પહેલા',
+ 'month-short-past-other' => '{0} મહિના પહેલા',
+ 'nanosecond-one' => '{0} નેનોસેકંડ',
+ 'nanosecond-other' => '{0} નેનોસેકંડ',
+ 'quarter-future-one' => '{0} ત્રિમાસમાં',
+ 'quarter-future-other' => '{0} ત્રિમાસમાં',
+ 'quarter-narrow-future-one' => '+{0} ત્રિમાસ',
+ 'quarter-narrow-future-other' => '+{0} ત્રિમાસ',
+ 'quarter-narrow-past-one' => '-{0} ત્રિમાસ',
+ 'quarter-narrow-past-other' => '-{0} ત્રિમાસ',
+ 'quarter-past-one' => '{0} ત્રિમાસ પહેલાં',
+ 'quarter-past-other' => '{0} ત્રિમાસ પહેલાં',
+ 'quarter-short-future-one' => '{0} ત્રિમાસમાં',
+ 'quarter-short-future-other' => '{0} ત્રિમાસમાં',
+ 'quarter-short-past-one' => '{0} ત્રિમાસ પહેલાં',
+ 'quarter-short-past-other' => '{0} ત્રિમાસ પહેલાં',
+ 'second-future-one' => '{0} સેકંડમાં',
+ 'second-future-other' => '{0} સેકંડમાં',
+ 'second-narrow-future-one' => '{0} સેકંડમાં',
+ 'second-narrow-future-other' => '{0} સેકંડમાં',
+ 'second-narrow-past-one' => '-{0} સેકંડ પહેલા',
+ 'second-narrow-past-other' => '-{0} સેકંડ પહેલા',
+ 'second-one' => '{0} સેકંડ',
+ 'second-other' => '{0} સેકંડ',
+ 'second-past-one' => '{0} સેકંડ પહેલા',
+ 'second-past-other' => '{0} સેકંડ પહેલા',
+ 'second-short-future-one' => '{0} સેકંડમાં',
+ 'second-short-future-other' => '{0} સેકંડમાં',
+ 'second-short-past-one' => '{0} સેકંડ પહેલા',
+ 'second-short-past-other' => '{0} સેકંડ પહેલા',
+ 'week-future-one' => '{0} અઠવાડિયામાં',
+ 'week-future-other' => '{0} અઠવાડિયામાં',
+ 'week-narrow-future-one' => '+{0} અઠવાડિયા',
+ 'week-narrow-future-other' => '+{0} અઠવાડિયા',
+ 'week-narrow-past-one' => '-{0} અઠવાડિયા',
+ 'week-narrow-past-other' => '-{0} અઠવાડિયા',
+ 'week-one' => '{0} અઠવાડિયું',
+ 'week-other' => '{0} અઠવાડિયા',
+ 'week-past-one' => '{0} અઠવાડિયા પહેલા',
+ 'week-past-other' => '{0} અઠવાડિયા પહેલા',
+ 'week-short-future-one' => '{0} અઠવાડિયામાં',
+ 'week-short-future-other' => '{0} અઠવાડિયામાં',
+ 'week-short-past-one' => '{0} અઠવાડિયા પહેલા',
+ 'week-short-past-other' => '{0} અઠવાડિયા પહેલા',
+ 'year-future-one' => '{0} વર્ષમાં',
+ 'year-future-other' => '{0} વર્ષમાં',
+ 'year-narrow-future-one' => '+{0} વર્ષ',
+ 'year-narrow-future-other' => '+{0} વર્ષ',
+ 'year-narrow-past-one' => '-{0} વર્ષ',
+ 'year-narrow-past-other' => '-{0} વર્ષ',
+ 'year-one' => '{0} વર્ષ',
+ 'year-other' => '{0} વર્ષ',
+ 'year-past-one' => '{0} વર્ષ પહેલા',
+ 'year-past-other' => '{0} વર્ષ પહેલા',
+ 'year-short-future-one' => '{0} વર્ષમાં',
+ 'year-short-future-other' => '{0} વર્ષમાં',
+ 'year-short-past-one' => '{0} વર્ષ પહેલા',
+ 'year-short-past-other' => '{0} વર્ષ પહેલા',
+);
diff --git a/MLEB/cldr/CldrNames/CldrNamesGv.php b/MLEB/cldr/CldrNames/CldrNamesGv.php
new file mode 100644
index 00000000..0f948499
--- /dev/null
+++ b/MLEB/cldr/CldrNames/CldrNamesGv.php
@@ -0,0 +1,10 @@
+<?php
+
+$languageNames = array(
+ 'gv' => 'Gaelg',
+);
+
+$countryNames = array(
+ 'GB' => 'Rywvaneth Unys',
+ 'IM' => 'Ellan Vannin',
+);
diff --git a/MLEB/cldr/CldrNames/CldrNamesHa.php b/MLEB/cldr/CldrNames/CldrNamesHa.php
new file mode 100644
index 00000000..80a74cb5
--- /dev/null
+++ b/MLEB/cldr/CldrNames/CldrNamesHa.php
@@ -0,0 +1,404 @@
+<?php
+
+$languageNames = array(
+ 'af' => 'Afirkanci',
+ 'ak' => 'Akan',
+ 'am' => 'Amharik',
+ 'ar' => 'Larabci',
+ 'as' => 'Asamisanci',
+ 'az' => 'Azerbaijanci',
+ 'be' => 'Belarusanci',
+ 'bg' => 'Bulgaranci',
+ 'bn' => 'Bengali',
+ 'br' => 'Buretananci',
+ 'bs' => 'Bosniyanci',
+ 'ca' => 'Kataloniyanci',
+ 'cs' => 'Harshen Cak',
+ 'cy' => 'Kabilar Welsh',
+ 'da' => 'Danish',
+ 'de' => 'Jamusanci',
+ 'el' => 'Girkanci',
+ 'en' => 'Turanci',
+ 'eo' => 'Dʼan/ʼYar Kabilar Andalus',
+ 'es' => 'Ispaniyanci',
+ 'et' => 'Istoniyanci',
+ 'eu' => 'Dan/ʼYar Kabilar Bas',
+ 'fa' => 'Parisanci',
+ 'fi' => 'Yaren mutanen Finland',
+ 'fil' => 'Dan Filifin',
+ 'fo' => 'Faroese',
+ 'fr' => 'Faransanci',
+ 'fy' => 'Kʼabilan Firsi',
+ 'ga' => 'Dan Ailan',
+ 'gd' => 'Kʼabilan Scots Gaelic',
+ 'gl' => 'Bagalike',
+ 'gn' => 'Guwaraniyanci',
+ 'gu' => 'Gujarati',
+ 'ha' => 'Hausa',
+ 'he' => 'Yahudanci',
+ 'hi' => 'Harshen Hindi',
+ 'hr' => 'Kuroshiyan',
+ 'hu' => 'Harshen Hungari',
+ 'hy' => 'Armeniyanci',
+ 'ia' => 'Yare Tsakanin Kasashe',
+ 'id' => 'Harshen Indunusiya',
+ 'ie' => 'Intagulanci',
+ 'ig' => 'Inyamuranci',
+ 'is' => 'Yaren mutanen Iceland',
+ 'it' => 'Italiyanci',
+ 'ja' => 'Japananci',
+ 'jv' => 'Jabananci',
+ 'ka' => 'Jojiyanci',
+ 'km' => 'Harshen Kimar',
+ 'kn' => 'Dan/ʼYar Kabilar Kannada',
+ 'ko' => 'Harshen Koreya',
+ 'ku' => 'Kurdanci',
+ 'ky' => 'Kirgizanci',
+ 'la' => 'Dan Kabilar Latin',
+ 'ln' => 'Lingala',
+ 'lo' => 'Laothian',
+ 'lt' => 'Lituweniyanci',
+ 'lv' => 'Latbiyanci',
+ 'mk' => 'Dan Masedoniya',
+ 'ml' => 'Kabilar Maleyalam',
+ 'mn' => 'Mongolian',
+ 'mr' => 'Kʼabilan Marathi',
+ 'ms' => 'Harshen Malai',
+ 'mt' => 'Harshen Maltis',
+ 'my' => 'Burmanci',
+ 'ne' => 'Nepali',
+ 'nl' => 'Holanci',
+ 'nn' => 'Yaren Kasar Norway',
+ 'no' => 'Yaren mutanen Norway',
+ 'oc' => 'Ositanci',
+ 'or' => 'Oriyanci',
+ 'pa' => 'Punjabi',
+ 'pl' => 'Harshen Polan',
+ 'ps' => 'Pashtanci',
+ 'pt' => 'Harshen Portugal',
+ 'pt-br' => 'Fotigis (Burazil)',
+ 'pt-pt' => 'Yaren Kasar Portugal',
+ 'ro' => 'Romaniyanci',
+ 'ru' => 'Rashanci',
+ 'rw' => 'Kiniyaruwanda',
+ 'sa' => 'sanskrit',
+ 'sd' => 'Sindiyanci',
+ 'sh' => 'Kuroweshiyancin-Sabiya',
+ 'si' => 'Sinhalanci',
+ 'sk' => 'Basulake',
+ 'sl' => 'Basulabe',
+ 'so' => 'Somali',
+ 'sq' => 'Dʼan/ʼYar Kabilar Albaniya',
+ 'sr' => 'Sabiyan',
+ 'st' => 'Sesotanci',
+ 'su' => 'Sundanese',
+ 'sv' => 'Harshen Suwedan',
+ 'sw' => 'Harshen Suwahili',
+ 'ta' => 'Tamil',
+ 'te' => 'Dʼan/ʼYar Kabilar Telug',
+ 'th' => 'Thai',
+ 'ti' => 'Tigriyanci',
+ 'tk' => 'Tukmenistanci',
+ 'tlh' => 'Klingon',
+ 'tr' => 'Harshen Turkiyya',
+ 'tw' => 'Tiwiniyanci',
+ 'ug' => 'Ugiranci',
+ 'uk' => 'Harshen Yukuren',
+ 'ur' => 'Harshen Urdu',
+ 'uz' => 'Uzbek',
+ 'vi' => 'Harshen Biyetinam',
+ 'xh' => 'Bazosa',
+ 'yo' => 'Yarbanci',
+ 'zh' => 'Harshen Sin',
+ 'zu' => 'Harshen Zulu',
+);
+
+$currencyNames = array(
+ 'AED' => 'Kuɗin Haɗaɗɗiyar Daular Larabawa',
+ 'AOA' => 'Kuɗin Angola',
+ 'AUD' => 'Dalar Ostareliya',
+ 'BHD' => 'Kuɗin Baharan',
+ 'BIF' => 'Kuɗin Burundi',
+ 'BWP' => 'Kuɗin Baswana',
+ 'CAD' => 'Dalar Kanada',
+ 'CDF' => 'Kuɗin Kongo',
+ 'CHF' => 'Kuɗin Suwizalan',
+ 'CNY' => 'Kuɗin Caina/Sin',
+ 'CVE' => 'Kuɗin Tsibiran Kap Barde',
+ 'DJF' => 'Kuɗin Jibuti',
+ 'DZD' => 'Kuɗin Aljeriya',
+ 'EGP' => 'Fam kin Masar',
+ 'ERN' => 'Kuɗin Eritireya',
+ 'ETB' => 'Kuɗin Habasha',
+ 'EUR' => 'Yuro',
+ 'GBP' => 'Fam kin Ingila',
+ 'GHC' => 'Cedi',
+ 'GMD' => 'Kuɗin Gambiya',
+ 'GNS' => 'Kuɗin Gini',
+ 'INR' => 'Kuɗin Indiya',
+ 'JPY' => 'Kuɗin Japan',
+ 'KES' => 'Sulen Kenya',
+ 'KMF' => 'Kuɗin Kwamoras',
+ 'LRD' => 'Dalar Laberiya',
+ 'LSL' => 'Kuɗin Lesoto',
+ 'LYD' => 'Kuɗin Libiya',
+ 'MAD' => 'Kuɗin Maroko',
+ 'MGA' => 'Kuɗin Madagaskar',
+ 'MRO' => 'Kuɗin Moritaniya',
+ 'MUR' => 'Kuɗin Moritus',
+ 'MWK' => 'Kuɗin Malawi',
+ 'MZM' => 'Kuɗin Mozambik',
+ 'NAD' => 'Dalar Namibiya',
+ 'NGN' => 'Naira',
+ 'RWF' => 'Kuɗin Ruwanda',
+ 'SAR' => 'Riyal',
+ 'SCR' => 'Kuɗin Saishal',
+ 'SDG' => 'Fam kin Sudan',
+ 'SHP' => 'Fam kin San Helena',
+ 'SLL' => 'Kuɗin Salewo',
+ 'SOS' => 'Sulen Somaliya',
+ 'STD' => 'Kuɗin Sawo Tome da Paransip',
+ 'SZL' => 'Kuɗin Lilangeni',
+ 'TND' => 'Kuɗin Tunisiya',
+ 'TZS' => 'Sulen Tanzaniya',
+ 'UGX' => 'Sule Yuganda',
+ 'USD' => 'Dalar Amurka',
+ 'XAF' => 'Kuɗin Sefa na Afirka Ta Tsakiya',
+ 'XOF' => 'Kuɗin Sefa na Afirka Ta Yamma',
+ 'ZAR' => 'Kuɗin Afirka Ta Kudu',
+ 'ZMK' => 'Kuɗin Zambiya (1968–2012)',
+ 'ZMW' => 'Kuɗin Zambiya',
+ 'ZWD' => 'Dalar zimbabuwe',
+);
+
+$currencySymbols = array(
+ 'NGN' => '₦',
+);
+
+$countryNames = array(
+ 'AD' => 'Andora',
+ 'AE' => 'Haɗaɗɗiyar Daular Larabawa',
+ 'AF' => 'Afaganistan',
+ 'AG' => 'Antigwa da Barbuba',
+ 'AI' => 'Angila',
+ 'AL' => 'Albaniya',
+ 'AM' => 'Armeniya',
+ 'AN' => 'Antiya Na Holan',
+ 'AO' => 'Angola',
+ 'AR' => 'Arjantiniya',
+ 'AS' => 'Samowa Ta Amurka',
+ 'AT' => 'Ostiriya',
+ 'AU' => 'Ostareliya',
+ 'AW' => 'Aruba',
+ 'AZ' => 'Azarbaijan',
+ 'BA' => 'Bosniya Harzagobina',
+ 'BB' => 'Barbadas',
+ 'BD' => 'Bangiladas',
+ 'BE' => 'Belgiyom',
+ 'BF' => 'Burkina Faso',
+ 'BG' => 'Bulgariya',
+ 'BH' => 'Baharan',
+ 'BI' => 'Burundi',
+ 'BJ' => 'Binin',
+ 'BM' => 'Barmuda',
+ 'BN' => 'Burune',
+ 'BO' => 'Bolibiya',
+ 'BR' => 'Birazil',
+ 'BS' => 'Bahamas',
+ 'BT' => 'Butan',
+ 'BW' => 'Baswana',
+ 'BY' => 'Belarus',
+ 'BZ' => 'Beliz',
+ 'CA' => 'Kanada',
+ 'CD' => 'Jamhuriyar Dimokuraɗiyyar Kongo',
+ 'CF' => 'Jamhuriyar Afirka Ta Tsakiya',
+ 'CG' => 'Kongo',
+ 'CH' => 'Suwizalan',
+ 'CI' => 'Aibari Kwas',
+ 'CK' => 'Tsibiran Kuku',
+ 'CL' => 'Cayile',
+ 'CM' => 'Kamaru',
+ 'CN' => 'Caina, Sin',
+ 'CO' => 'Kolambiya',
+ 'CR' => 'Kwasta Rika',
+ 'CU' => 'Kyuba',
+ 'CV' => 'Tsibiran Kap Barde',
+ 'CY' => 'Sifurus',
+ 'CZ' => 'Jamhuriyar Cak',
+ 'DE' => 'Jamus',
+ 'DJ' => 'Jibuti',
+ 'DK' => 'Danmark',
+ 'DM' => 'Dominika',
+ 'DO' => 'Jamhuriyar Dominika',
+ 'DZ' => 'Aljeriya',
+ 'EC' => 'Ekwador',
+ 'EE' => 'Estoniya',
+ 'EG' => 'Masar, Misira',
+ 'ER' => 'Eritireya',
+ 'ES' => 'Sipen',
+ 'ET' => 'Habasha',
+ 'FI' => 'Finlan',
+ 'FJ' => 'Fiji',
+ 'FK' => 'Tsibiran Falkilan',
+ 'FM' => 'Mikuronesiya',
+ 'FR' => 'Faransa',
+ 'GA' => 'Gabon',
+ 'GB' => 'Birtaniya',
+ 'GD' => 'Girnada',
+ 'GE' => 'Jiwarjiya',
+ 'GF' => 'Gini Ta Faransa',
+ 'GH' => 'Gana',
+ 'GI' => 'Jibaraltar',
+ 'GL' => 'Grinlan',
+ 'GM' => 'Gambiya',
+ 'GN' => 'Gini',
+ 'GP' => 'Gwadaluf',
+ 'GQ' => 'Gini Ta Ikwaita',
+ 'GR' => 'Girka',
+ 'GT' => 'Gwatamala',
+ 'GU' => 'Gwam',
+ 'GW' => 'Gini Bisau',
+ 'GY' => 'Guyana',
+ 'HN' => 'Honduras',
+ 'HR' => 'Kurowaishiya',
+ 'HT' => 'Haiti',
+ 'HU' => 'Hungari',
+ 'ID' => 'Indunusiya',
+ 'IE' => 'Ayalan',
+ 'IL' => 'Iziraʼila',
+ 'IN' => 'Indiya',
+ 'IO' => 'Yankin Birtaniya Na Tekun Indiya',
+ 'IQ' => 'Iraƙi',
+ 'IR' => 'Iran',
+ 'IS' => 'Aisalan',
+ 'IT' => 'Italiya',
+ 'JM' => 'Jamaika',
+ 'JO' => 'Jordan',
+ 'JP' => 'Japan',
+ 'KE' => 'Kenya',
+ 'KG' => 'Kirgizistan',
+ 'KH' => 'Kambodiya',
+ 'KI' => 'Kiribati',
+ 'KM' => 'Kwamoras',
+ 'KN' => 'San Kiti Da Nebis',
+ 'KP' => 'Koreya Ta Arewa',
+ 'KR' => 'Koreya Ta Kudu',
+ 'KW' => 'Kwiyat',
+ 'KY' => 'Tsibiran Kaiman',
+ 'KZ' => 'Kazakistan',
+ 'LA' => 'Lawas',
+ 'LB' => 'Labanan',
+ 'LC' => 'San Lusiya',
+ 'LI' => 'Licansitan',
+ 'LK' => 'Siri Lanka',
+ 'LR' => 'Laberiya',
+ 'LS' => 'Lesoto',
+ 'LT' => 'Lituweniya',
+ 'LU' => 'Lukusambur',
+ 'LV' => 'latibiya',
+ 'LY' => 'Libiya',
+ 'MA' => 'Maroko',
+ 'MC' => 'Monako',
+ 'MD' => 'Maldoba',
+ 'MG' => 'Madagaskar',
+ 'MH' => 'Tsibiran Marshal',
+ 'MK' => 'Masedoniya',
+ 'ML' => 'Mali',
+ 'MM' => 'Burma, Miyamar',
+ 'MN' => 'Mangoliya',
+ 'MP' => 'Tsibiran Mariyana Na Arewa',
+ 'MQ' => 'Martinik',
+ 'MR' => 'Moritaniya',
+ 'MS' => 'Manserati',
+ 'MT' => 'Malta',
+ 'MU' => 'Moritus',
+ 'MV' => 'Maldibi',
+ 'MW' => 'Malawi',
+ 'MX' => 'Makasiko',
+ 'MY' => 'Malaisiya',
+ 'MZ' => 'Mozambik',
+ 'NA' => 'Namibiya',
+ 'NC' => 'Kaledoniya Sabuwa',
+ 'NE' => 'Nijar',
+ 'NF' => 'Tsibirin Narfalk',
+ 'NG' => 'Najeriya',
+ 'NI' => 'Nikaraguwa',
+ 'NL' => 'Holan',
+ 'NO' => 'Norwe',
+ 'NP' => 'Nefal',
+ 'NR' => 'Nauru',
+ 'NU' => 'Niyu',
+ 'NZ' => 'Nuzilan',
+ 'OM' => 'Oman',
+ 'PA' => 'Panama',
+ 'PE' => 'Peru',
+ 'PF' => 'Folinesiya Ta Faransa',
+ 'PG' => 'Papuwa Nugini',
+ 'PH' => 'Filipin',
+ 'PK' => 'Pakistan',
+ 'PL' => 'Polan',
+ 'PM' => 'San Piyar Da Mikelan',
+ 'PN' => 'Pitakarin',
+ 'PR' => 'Porto Riko',
+ 'PS' => 'Palasɗinu',
+ 'PT' => 'Portugal',
+ 'PW' => 'Palau',
+ 'PY' => 'Paragai',
+ 'QA' => 'Kwatar',
+ 'RE' => 'Rawuniyan',
+ 'RO' => 'Romaniya',
+ 'RU' => 'Rasha',
+ 'RW' => 'Ruwanda',
+ 'SA' => 'Ƙasar Makka',
+ 'SB' => 'Tsibiran Salaman',
+ 'SC' => 'Saishal',
+ 'SD' => 'Sudan',
+ 'SE' => 'Suwedan',
+ 'SG' => 'Singapur',
+ 'SH' => 'San Helena',
+ 'SI' => 'Sulobeniya',
+ 'SK' => 'Sulobakiya',
+ 'SL' => 'Salewo',
+ 'SM' => 'San Marino',
+ 'SN' => 'Sinigal',
+ 'SO' => 'Somaliya',
+ 'SR' => 'Suriname',
+ 'ST' => 'Sawo Tome Da Paransip',
+ 'SV' => 'El Salbador',
+ 'SY' => 'Sham, Siriya',
+ 'SZ' => 'Suwazilan',
+ 'TC' => 'Turkis Da Tsibiran Kaikwas',
+ 'TD' => 'Cadi',
+ 'TG' => 'Togo',
+ 'TH' => 'Tailan',
+ 'TJ' => 'Tajikistan',
+ 'TK' => 'Takelau',
+ 'TL' => 'Timor Ta Gabas',
+ 'TM' => 'Turkumenistan',
+ 'TN' => 'Tunisiya',
+ 'TO' => 'Tanga',
+ 'TR' => 'Turkiyya',
+ 'TT' => 'Tirinidad Da Tobago',
+ 'TV' => 'Tubalu',
+ 'TW' => 'Taiwan',
+ 'TZ' => 'Tanzaniya',
+ 'UA' => 'Yukaran',
+ 'UG' => 'Yuganda',
+ 'US' => 'Amurka',
+ 'UY' => 'Yurugai',
+ 'UZ' => 'Uzubekistan',
+ 'VA' => 'Batikan',
+ 'VC' => 'San Binsan Da Girnadin',
+ 'VE' => 'Benezuwela',
+ 'VG' => 'Tsibirin Birjin Na Birtaniya',
+ 'VI' => 'Tsibiran Birjin Ta Amurka',
+ 'VN' => 'Biyetinam',
+ 'VU' => 'Banuwatu',
+ 'WF' => 'Walis Da Futuna',
+ 'WS' => 'Samowa',
+ 'YE' => 'Yamal',
+ 'YT' => 'Mayoti',
+ 'ZA' => 'Afirka Ta Kudu',
+ 'ZM' => 'Zambiya',
+ 'ZW' => 'Zimbabuwe',
+);
diff --git a/MLEB/cldr/CldrNames/CldrNamesHaw.php b/MLEB/cldr/CldrNames/CldrNamesHaw.php
new file mode 100644
index 00000000..8c10d6ff
--- /dev/null
+++ b/MLEB/cldr/CldrNames/CldrNamesHaw.php
@@ -0,0 +1,81 @@
+<?php
+
+$languageNames = array(
+ 'ar' => 'ʻAlapia',
+ 'cy' => 'Wale',
+ 'da' => 'Kenemaka',
+ 'de' => 'Kelemānia',
+ 'el' => 'Helene',
+ 'en' => 'Pelekānia',
+ 'en-au' => 'Pelekāne Nū Hōlani',
+ 'en-ca' => 'Pelekāne Kanakā',
+ 'en-gb' => 'Pelekānia Pekekāne',
+ 'en-us' => 'Pelekānia ʻAmelika',
+ 'es' => 'Paniolo',
+ 'fj' => 'Pīkī',
+ 'fr' => 'Palani',
+ 'fr-ca' => 'Palani Kanakā',
+ 'fr-ch' => 'Kuikilani',
+ 'ga' => 'ʻAiliki',
+ 'gsw' => 'Kuikilani Kelemānia',
+ 'haw' => 'ʻŌlelo Hawaiʻi',
+ 'he' => 'Hebera',
+ 'it' => 'ʻĪkālia',
+ 'ja' => 'Kepanī',
+ 'ko' => 'Kōlea',
+ 'la' => 'Lākina',
+ 'mi' => 'Māori',
+ 'nl' => 'Hōlani',
+ 'pt' => 'Pukikī',
+ 'pt-br' => 'Pukikī Palakila',
+ 'ru' => 'Lūkia',
+ 'sm' => 'Kāmoa',
+ 'sv' => 'Kuekene',
+ 'to' => 'Tonga',
+ 'ty' => 'Polapola',
+ 'und' => 'ʻIke ʻole ‘ia a kūpono ʻole paha ka ʻōlelo',
+ 'vi' => 'Wiekanama',
+ 'zh' => 'Pākē',
+ 'zh-hans' => 'Pākē Hoʻomaʻalahi ʻia',
+ 'zh-hant' => 'Pākē Kuʻuna',
+);
+
+$countryNames = array(
+ 'AU' => 'Nūhōlani',
+ 'CA' => 'Kanakā',
+ 'CN' => 'Kina',
+ 'DE' => 'Kelemānia',
+ 'DK' => 'Kenemaka',
+ 'ES' => 'Kepania',
+ 'FR' => 'Palani',
+ 'GB' => 'Aupuni Mōʻī Hui Pū ʻIa',
+ 'GR' => 'Helene',
+ 'IE' => 'ʻIlelani',
+ 'IL' => 'ʻIseraʻela',
+ 'IN' => 'ʻĪnia',
+ 'IT' => 'ʻĪkālia',
+ 'JP' => 'Iāpana',
+ 'MX' => 'Mekiko',
+ 'NL' => 'Hōlani',
+ 'NZ' => 'Aotearoa',
+ 'PH' => 'ʻĀina Pilipino',
+ 'RU' => 'Lūkia',
+ 'US' => 'ʻAmelika Hui Pū ʻIa',
+);
+
+$timeUnits = array(
+ 'day-one' => '{0} lā',
+ 'day-other' => '{0} lā',
+ 'hour-one' => '{0} hola',
+ 'hour-other' => '{0} hola',
+ 'minute-one' => '{0} minuke',
+ 'minute-other' => '{0} minuke',
+ 'month-one' => '{0} mahina',
+ 'month-other' => '{0} mahina',
+ 'second-one' => '{0} kekona',
+ 'second-other' => '{0} kekona',
+ 'week-one' => '{0} pule',
+ 'week-other' => '{0} pule',
+ 'year-one' => '{0} makahiki',
+ 'year-other' => '{0} makahiki',
+);
diff --git a/MLEB/cldr/CldrNames/CldrNamesHe.php b/MLEB/cldr/CldrNames/CldrNamesHe.php
new file mode 100644
index 00000000..7336a333
--- /dev/null
+++ b/MLEB/cldr/CldrNames/CldrNamesHe.php
@@ -0,0 +1,1406 @@
+<?php
+
+$languageNames = array(
+ 'aa' => 'אפארית',
+ 'ab' => 'אבחזית',
+ 'ace' => 'אכינזית',
+ 'ach' => 'אקולי',
+ 'ada' => 'אדנמה',
+ 'ady' => 'אדיגית',
+ 'ae' => 'אבסטן',
+ 'af' => 'אפריקאנס',
+ 'afh' => 'אפריהילי',
+ 'agq' => 'אהיים',
+ 'ain' => 'אינו',
+ 'ak' => 'אקאן',
+ 'akk' => 'אכדית',
+ 'ale' => 'אלאוט',
+ 'alt' => 'אלטאי דרומית',
+ 'am' => 'אמהרית',
+ 'an' => 'אראגונית',
+ 'ang' => 'אנגלית עתיקה',
+ 'anp' => 'אנג׳יקה',
+ 'ar' => 'ערבית',
+ 'ar-001' => 'ערבית ספרותית',
+ 'arc' => 'ארמית',
+ 'arn' => 'אראוקנית',
+ 'arp' => 'ארפהו',
+ 'arw' => 'ארוואק',
+ 'as' => 'אסאמית',
+ 'asa' => 'אסו',
+ 'ast' => 'אסטורית',
+ 'av' => 'אבארית',
+ 'awa' => 'אוואדית',
+ 'ay' => 'איימארית',
+ 'az' => 'אזרית',
+ 'ba' => 'בשקירית',
+ 'bal' => 'באלוצ׳י',
+ 'ban' => 'בלינזית',
+ 'bar' => 'בווארית',
+ 'bas' => 'בסאא',
+ 'bax' => 'באקס',
+ 'bbj' => 'גומל',
+ 'be' => 'בלארוסית',
+ 'bej' => 'בז׳ה',
+ 'bem' => 'במבה',
+ 'bez' => 'בנה',
+ 'bfd' => 'באפוט',
+ 'bg' => 'בולגרית',
+ 'bho' => 'בוג׳פורי',
+ 'bi' => 'ביסלמה',
+ 'bik' => 'ביקול',
+ 'bin' => 'ביני',
+ 'bkm' => 'קום',
+ 'bla' => 'סיקסיקה',
+ 'bm' => 'במבארה',
+ 'bn' => 'בנגלית',
+ 'bo' => 'טיבטית',
+ 'br' => 'ברטונית',
+ 'bra' => 'בראג׳',
+ 'brx' => 'בודו',
+ 'bs' => 'בוסנית',
+ 'bss' => 'אקוסה',
+ 'bua' => 'בוריאט',
+ 'bug' => 'בוגינזית',
+ 'bum' => 'בולו',
+ 'byn' => 'בלין',
+ 'byv' => 'מדומבה',
+ 'ca' => 'קטלאנית',
+ 'cad' => 'קאדו',
+ 'car' => 'קאריב',
+ 'cay' => 'קאיוגה',
+ 'cch' => 'אטסם',
+ 'ce' => 'צ׳צ׳נית',
+ 'ceb' => 'קבואנו',
+ 'cgg' => 'צ׳יגה',
+ 'ch' => 'צ׳מורו',
+ 'chb' => 'צ׳יבצ׳ה',
+ 'chg' => 'צ׳אגאטאי',
+ 'chk' => 'צ׳וקסה',
+ 'chm' => 'מארי',
+ 'chn' => 'ניב צ׳ינוק',
+ 'cho' => 'צ׳וקטאו',
+ 'chp' => 'צ׳יפוויאן',
+ 'chr' => 'צ׳רוקי',
+ 'chy' => 'שאיין',
+ 'ckb' => 'כורדית סוראנית',
+ 'co' => 'קורסיקנית',
+ 'cop' => 'קופטית',
+ 'cr' => 'קרי',
+ 'crh' => 'טטרית של קרים',
+ 'cs' => 'צ׳כית',
+ 'csb' => 'קשוביאן',
+ 'cu' => 'סלאבית כנסייתית עתיקה',
+ 'cv' => 'צ׳ובאש',
+ 'cy' => 'ולשית',
+ 'da' => 'דנית',
+ 'dak' => 'דקוטה',
+ 'dar' => 'דרגווה',
+ 'dav' => 'טאיטה',
+ 'de' => 'גרמנית',
+ 'de-at' => 'גרמנית אוסטרית',
+ 'de-ch' => 'גרמנית שוויצרית (גבוהה)',
+ 'del' => 'דלאוור',
+ 'den' => 'סלאבית',
+ 'dgr' => 'דוגריב',
+ 'din' => 'דינקה',
+ 'dje' => 'זארמה',
+ 'doi' => 'דוגרי',
+ 'dsb' => 'סורבית נמוכה',
+ 'dua' => 'דואלה',
+ 'dum' => 'הולנדית תיכונה',
+ 'dv' => 'דיבהי',
+ 'dyo' => 'הולה-פוניי',
+ 'dyu' => 'דיולה',
+ 'dz' => 'דזונקה',
+ 'dzg' => 'דזאנגה',
+ 'ebu' => 'אמבו',
+ 'ee' => 'אווה',
+ 'efi' => 'אפיק',
+ 'egy' => 'מצרית עתיקה',
+ 'eka' => 'אקיוק',
+ 'el' => 'יוונית',
+ 'elx' => 'עילמית',
+ 'en' => 'אנגלית',
+ 'en-au' => 'אנגלית אוסטרלית',
+ 'en-ca' => 'אנגלית קנדית',
+ 'en-gb' => 'אנגלית בריטית',
+ 'en-us' => 'אנגלית אמריקאית',
+ 'enm' => 'אנגלית תיכונה',
+ 'eo' => 'אספרנטו',
+ 'es' => 'ספרדית',
+ 'es-419' => 'ספרדית לטינו־אמריקאית',
+ 'es-es' => 'ספרדית אירופאית',
+ 'es-mx' => 'ספרדית מקסיקנית',
+ 'et' => 'אסטונית',
+ 'eu' => 'בסקית',
+ 'ewo' => 'אוונדו',
+ 'fa' => 'פרסית',
+ 'fan' => 'פנג',
+ 'fat' => 'פאנטי',
+ 'ff' => 'פולה',
+ 'fi' => 'פינית',
+ 'fil' => 'פיליפינית',
+ 'fj' => 'פיג׳ית',
+ 'fo' => 'פארואזית',
+ 'fon' => 'פון',
+ 'fr' => 'צרפתית',
+ 'fr-ca' => 'צרפתית קנדית',
+ 'fr-ch' => 'צרפתית שוויצרית',
+ 'frm' => 'צרפתית תיכונה',
+ 'fro' => 'צרפתית עתיקה',
+ 'frr' => 'פריזית צפונית',
+ 'frs' => 'פריזיאן מזרחית',
+ 'fur' => 'פריולית',
+ 'fy' => 'פריזית',
+ 'ga' => 'אירית',
+ 'gaa' => 'גא',
+ 'gag' => 'גגאוזית',
+ 'gay' => 'גאיו',
+ 'gba' => 'גבאיה',
+ 'gd' => 'גאלית סקוטית',
+ 'gez' => 'געז',
+ 'gil' => 'גילברטזית',
+ 'gl' => 'גליציאנית',
+ 'gmh' => 'גרמנית בינונית-גבוהה',
+ 'gn' => 'גוארני',
+ 'goh' => 'גרמנית עתיקה גבוהה',
+ 'gon' => 'גונדי',
+ 'gor' => 'גורונטאלו',
+ 'got' => 'גותית',
+ 'grb' => 'גרבו',
+ 'grc' => 'יוונית עתיקה',
+ 'gsw' => 'גרמנית שוויצרית',
+ 'gu' => 'גוג׳ראטית',
+ 'guz' => 'גוסי',
+ 'gv' => 'מאנית',
+ 'gwi' => 'גוויצ׳ין',
+ 'ha' => 'האוסה',
+ 'hai' => 'האידה',
+ 'haw' => 'הוואית',
+ 'he' => 'עברית',
+ 'hi' => 'הינדי',
+ 'hil' => 'היליגאינון',
+ 'hit' => 'חיתית',
+ 'hmn' => 'מונג',
+ 'ho' => 'הארי מוטו',
+ 'hr' => 'קרואטית',
+ 'hsb' => 'סורבית גבוהה',
+ 'ht' => 'האיטית',
+ 'hu' => 'הונגרית',
+ 'hup' => 'הופה',
+ 'hy' => 'ארמנית',
+ 'hz' => 'הררו',
+ 'ia' => '‏אינטרלינגואה',
+ 'iba' => 'איבאן',
+ 'ibb' => 'איביביו',
+ 'id' => 'אינדונזית',
+ 'ie' => 'אינטרלינגה',
+ 'ig' => 'איגבו',
+ 'ii' => 'סיצ׳ואן יי',
+ 'ik' => 'אינופיאק',
+ 'ilo' => 'אילוקו',
+ 'inh' => 'אינגושית',
+ 'io' => 'אידו',
+ 'is' => 'איסלנדית',
+ 'it' => 'איטלקית',
+ 'iu' => 'אינוקטיטוט',
+ 'ja' => 'יפנית',
+ 'jbo' => 'לויבאן',
+ 'jgo' => 'נגומה',
+ 'jmc' => 'מצ׳אמה',
+ 'jpr' => 'פרסית יהודית',
+ 'jrb' => 'ערבית יהודית',
+ 'jv' => 'יאוונית',
+ 'ka' => 'גאורגית',
+ 'kaa' => 'קארא-קלפאק',
+ 'kab' => 'קבילה',
+ 'kac' => 'קצ׳ין',
+ 'kaj' => 'ג׳יו',
+ 'kam' => 'קמבה',
+ 'kaw' => 'קאווי',
+ 'kbd' => 'קברדית',
+ 'kbl' => 'קנמבו',
+ 'kcg' => 'טיאפ',
+ 'kde' => 'מקונדה',
+ 'kea' => 'קאבוורדיאנו',
+ 'kfo' => 'קורו',
+ 'kg' => 'קונגו',
+ 'kha' => 'קאסי',
+ 'kho' => 'קוטאנזית',
+ 'khq' => 'קוירה צ׳יני',
+ 'ki' => 'קיקויו',
+ 'kj' => 'קואניאמה',
+ 'kk' => 'קזחית',
+ 'kkj' => 'קאקו',
+ 'kl' => 'קאלאליסוטית',
+ 'kln' => 'קאלנג׳ין',
+ 'km' => 'קמרית',
+ 'kmb' => 'קימבונדו',
+ 'kn' => 'קנאדה',
+ 'ko' => 'קוריאנית',
+ 'koi' => 'קומי-פרמיאקית',
+ 'kok' => 'קונקאני',
+ 'kos' => 'קוסראיאן',
+ 'kpe' => 'קפלה',
+ 'kr' => 'קאנורי',
+ 'krc' => 'קראצ׳י-בלקר',
+ 'krl' => 'קארלית',
+ 'kru' => 'קורוק',
+ 'ks' => 'קשמירית',
+ 'ksb' => 'שמבאלה',
+ 'ksf' => 'באפיה',
+ 'ksh' => 'קולוניאן',
+ 'ku' => 'כורדית',
+ 'kum' => 'קומיק',
+ 'kut' => 'קוטנאי',
+ 'kv' => 'קומי',
+ 'kw' => 'קורנית',
+ 'ky' => 'קירגיזית',
+ 'la' => 'לטינית',
+ 'lad' => 'לדינו',
+ 'lag' => 'לאנגי',
+ 'lah' => 'לנדה',
+ 'lam' => 'למבה',
+ 'lb' => 'לוקסמבורגית',
+ 'lez' => 'לזגית',
+ 'lg' => 'גאנדה',
+ 'li' => 'לימבורגיש',
+ 'lkt' => 'לקוטה',
+ 'ln' => 'לינגלה',
+ 'lo' => 'לאית',
+ 'lol' => 'מונגו',
+ 'loz' => 'לוזי',
+ 'lt' => 'ליטאית',
+ 'lu' => 'לובה-קטנגה',
+ 'lua' => 'לובה, לולואה',
+ 'lui' => 'לואיסנו',
+ 'lun' => 'לונדה',
+ 'luo' => 'לואו',
+ 'lus' => 'לושאי',
+ 'luy' => 'לויה',
+ 'lv' => 'לטבית',
+ 'mad' => 'מדורסה',
+ 'maf' => 'מאפא',
+ 'mag' => 'מאגאהית',
+ 'mai' => 'מאיטילית',
+ 'mak' => 'מקסאר',
+ 'man' => 'מנדינגו',
+ 'mas' => 'מאסאית',
+ 'mde' => 'מאבא',
+ 'mdf' => 'מוקשה',
+ 'mdr' => 'מנדאר',
+ 'men' => 'מנדה',
+ 'mer' => 'מרו',
+ 'mfe' => 'מוריסיין',
+ 'mg' => 'מלגשית',
+ 'mga' => 'אירית תיכונה',
+ 'mgh' => 'מקואה-מיטו',
+ 'mgo' => 'מטא',
+ 'mh' => 'מרשאלס',
+ 'mi' => 'מאורית',
+ 'mic' => 'מיקמק',
+ 'min' => 'מיננגקבאו',
+ 'mk' => 'מקדונית',
+ 'ml' => 'מלאיאלם',
+ 'mn' => 'מונגולית',
+ 'mnc' => 'מנצ׳ו',
+ 'mni' => 'מניפורית',
+ 'moh' => 'מוהוק',
+ 'mos' => 'מוסי',
+ 'mr' => 'מרטהי',
+ 'ms' => 'מלאית',
+ 'mt' => 'מלטית',
+ 'mua' => 'מונדאנג',
+ 'mul' => 'מספר שפות',
+ 'mus' => 'קריק',
+ 'mwl' => 'מירנדזית',
+ 'mwr' => 'מרווארי',
+ 'my' => 'בורמזית',
+ 'mye' => 'מאיין',
+ 'myv' => 'ארזיה',
+ 'na' => 'נאורית',
+ 'nap' => 'נפוליטנית',
+ 'naq' => 'נאמה',
+ 'nb' => '‏נורבגית ספרותית',
+ 'nd' => 'צפון נדבלה',
+ 'nds' => 'גרמנית תחתית',
+ 'ne' => 'נפאלית',
+ 'new' => 'נווארי',
+ 'ng' => 'נדונגה',
+ 'nia' => 'ניאס',
+ 'niu' => 'ניואיאן',
+ 'nl' => 'הולנדית',
+ 'nl-be' => 'פלמית',
+ 'nmg' => 'קוואסיו',
+ 'nn' => 'נורבגית חדשה',
+ 'nnh' => 'נגיאמבון',
+ 'no' => 'נורבגית',
+ 'nog' => 'נוגאי',
+ 'non' => '‏נורדית עתיקה',
+ 'nqo' => 'נ׳קו',
+ 'nr' => 'דרום נדבלה',
+ 'nso' => 'סוטו הצפונית',
+ 'nus' => 'נואר',
+ 'nv' => 'נבחו',
+ 'nwc' => 'נווארית קלאסית',
+ 'ny' => 'ניאנג׳ה',
+ 'nym' => 'ניאמווזי',
+ 'nyn' => 'ניאנקולה',
+ 'nyo' => 'ניורו',
+ 'nzi' => 'נזימה',
+ 'oc' => 'אוקסיטנית',
+ 'oj' => 'אוג׳יבווה',
+ 'om' => 'אורומו',
+ 'or' => 'אוריה',
+ 'os' => 'אוסטית',
+ 'osa' => 'אוסג׳ה',
+ 'ota' => 'טורקית עותומנית',
+ 'pa' => 'פנג׳אבית',
+ 'pag' => 'פנגסינאן',
+ 'pal' => 'פלאבי',
+ 'pam' => 'פמפאניה',
+ 'pap' => 'פפיאמנטו',
+ 'pau' => 'פלוואן',
+ 'peo' => 'פרסית עתיקה',
+ 'phn' => 'פניקית',
+ 'pi' => 'פאלי',
+ 'pl' => 'פולנית',
+ 'pon' => 'פונפיאן',
+ 'pro' => 'פרובנסאל עתיקה',
+ 'ps' => 'פאשטו',
+ 'pt' => 'פורטוגלית',
+ 'pt-br' => 'פורטוגלית ברזילאית',
+ 'pt-pt' => 'פורטוגלית אירופאית',
+ 'qu' => 'קצ׳ואה',
+ 'quc' => 'קיצ׳ה',
+ 'raj' => 'ראג׳סטן',
+ 'rap' => 'רפאנוי',
+ 'rar' => 'ררוטונגאן',
+ 'rm' => 'רומאנש',
+ 'rn' => 'קירונדי',
+ 'ro' => 'רומנית',
+ 'ro-md' => 'מולדבית',
+ 'rof' => 'רומבו',
+ 'rom' => 'רומאנית',
+ 'ru' => 'רוסית',
+ 'rup' => 'ארומנית',
+ 'rw' => 'קינירואנדה',
+ 'rwk' => 'רווא',
+ 'sa' => 'סנסקריט',
+ 'sad' => 'סנדאווה',
+ 'sah' => 'סאחה',
+ 'sam' => 'ארמית שומרונית',
+ 'saq' => 'סמבורו',
+ 'sas' => 'ססאק',
+ 'sat' => 'סאנטלי',
+ 'sba' => 'נגמבאי',
+ 'sbp' => 'סאנגו',
+ 'sc' => 'סרדינית',
+ 'scn' => 'סיציליאנית',
+ 'sco' => 'סקוטית',
+ 'sd' => 'סינדהית',
+ 'se' => 'לאפית צפונית',
+ 'see' => 'סנקה',
+ 'seh' => 'סנה',
+ 'sel' => 'סלקופ',
+ 'ses' => 'קויראבורו סני',
+ 'sg' => 'סנגו',
+ 'sga' => 'אירית עתיקה',
+ 'sh' => 'סרבו-קרואטית',
+ 'shi' => 'טצ׳להיט',
+ 'shn' => 'שאן',
+ 'shu' => 'ערבית צ׳אדית',
+ 'si' => 'סינהלה',
+ 'sid' => 'סידמו',
+ 'sk' => 'סלובקית',
+ 'sl' => 'סלובנית',
+ 'sm' => 'סמואית',
+ 'sma' => 'סאמי דרומית',
+ 'smj' => 'לולה סאמי',
+ 'smn' => 'אינארי סאמי',
+ 'sms' => 'סקולט סאמי',
+ 'sn' => 'שונה',
+ 'snk' => 'סונינקה',
+ 'so' => 'סומלית',
+ 'sog' => 'סוגדיאן',
+ 'sq' => 'אלבנית',
+ 'sr' => 'סרבית',
+ 'srn' => 'סרנאן טונגו',
+ 'srr' => 'סרר',
+ 'ss' => 'סיסוואטי',
+ 'ssy' => 'סאהו',
+ 'st' => 'ססות׳ו',
+ 'su' => 'סונדנית',
+ 'suk' => 'סוקומה',
+ 'sus' => 'סוסו',
+ 'sux' => 'שומרית',
+ 'sv' => 'שוודית',
+ 'sw' => 'סווהילית',
+ 'swb' => 'קומורו',
+ 'swc' => 'סווהילי קונגולטזית',
+ 'syc' => 'סירית קלאסית',
+ 'syr' => 'סורית',
+ 'ta' => 'טמילית',
+ 'te' => 'טלוגו',
+ 'tem' => 'טימנה',
+ 'teo' => 'טסו',
+ 'ter' => 'טרנו',
+ 'tet' => 'טטום',
+ 'tg' => 'טג׳יקית',
+ 'th' => 'תאית',
+ 'ti' => 'טיגרינאית',
+ 'tig' => 'טיגרית',
+ 'tiv' => 'טיב',
+ 'tk' => 'טורקמנית',
+ 'tkl' => 'טוקלאו',
+ 'tl' => 'טגלוג',
+ 'tlh' => 'קלינגון',
+ 'tli' => 'טלינגיט',
+ 'tmh' => 'טמאשק',
+ 'tn' => 'טוניסיה',
+ 'to' => 'טונגן',
+ 'tog' => 'ניאסה טונגה',
+ 'tpi' => 'טוק פיסין',
+ 'tr' => 'טורקית',
+ 'trv' => 'טרוקו',
+ 'ts' => 'טסונגה',
+ 'tsi' => 'טסימשיאן',
+ 'tt' => 'טטרית',
+ 'tum' => 'טומבוקה',
+ 'tvl' => 'טובאלו',
+ 'tw' => 'טווי',
+ 'twq' => 'טסוואק',
+ 'ty' => 'טהיטית',
+ 'tyv' => 'טובינית',
+ 'tzm' => 'טמזייט של מרכז מרוקו',
+ 'udm' => 'אודמורט',
+ 'ug' => 'אויגהור',
+ 'uga' => 'אוגריתית',
+ 'uk' => 'אוקראינית',
+ 'umb' => 'אומבונדו',
+ 'und' => 'שפה לא ידועה',
+ 'ur' => 'אורדו',
+ 'uz' => 'אוזבקית',
+ 'vai' => 'ואי',
+ 've' => 'וונדה',
+ 'vi' => 'ויאטנמית',
+ 'vo' => '‏וולאפיק',
+ 'vot' => 'ווטיק',
+ 'vun' => 'וונג׳ו',
+ 'wa' => 'וואלון',
+ 'wae' => 'וואלסר',
+ 'wal' => 'וולאמו',
+ 'war' => 'ווראי',
+ 'was' => 'וואשו',
+ 'wo' => 'ג׳ולוף',
+ 'xal' => 'קלמיק',
+ 'xh' => 'קסוסה',
+ 'xog' => 'סוגה',
+ 'yao' => 'יאו',
+ 'yap' => 'יאפזית',
+ 'yav' => 'יאנגבן',
+ 'ybb' => 'ימבה',
+ 'yi' => 'יידיש',
+ 'yo' => 'יורובה',
+ 'yue' => 'קנטונזית',
+ 'za' => 'ז׳ואנג',
+ 'zap' => 'זאפוטק',
+ 'zbl' => 'בליסימבולס',
+ 'zen' => 'זנאגה',
+ 'zgh' => 'תמזיע׳ת מרוקאית תקנית',
+ 'zh' => 'סינית',
+ 'zh-hans' => 'סינית מפושטת',
+ 'zh-hant' => 'סינית מסורתית',
+ 'zu' => 'זולו',
+ 'zun' => 'זוני',
+ 'zxx' => 'ללא תוכן לשוני',
+ 'zza' => 'זאזא',
+);
+
+$currencyNames = array(
+ 'ADP' => 'פזטה אנדורית',
+ 'AED' => 'דירהם של איחוד הנסיכויות הערביות',
+ 'AFN' => 'אפגני אפגני',
+ 'ALL' => 'לק אלבני',
+ 'AMD' => 'דראם ארמני',
+ 'ANG' => 'גילדר של האנטילים ההולנדיים',
+ 'AOA' => 'קואנזה אנגולי',
+ 'AON' => 'קואנזה חדש אנגולי (1990–2000)',
+ 'AOR' => 'קואנזה רג׳וסטדו אנגולי (1995–1999)',
+ 'ARP' => 'פזו ארגנטינאי (1983–1985)',
+ 'ARS' => 'פסו ארגנטינאי',
+ 'ATS' => 'שילינג אוסטרי',
+ 'AUD' => 'דולר אוסטרלי',
+ 'AWG' => 'פלורין של ארובה',
+ 'AZM' => 'מנאט אזרביג׳אני (1993–2006)',
+ 'AZN' => 'מאנאט אזרביג׳ני',
+ 'BAD' => 'דינר של בוסניה־הרצגובינה',
+ 'BAM' => 'מארק בר המרה של בוסניה־הרצגובינה',
+ 'BBD' => 'דולר ברבדיאני',
+ 'BDT' => 'טאקה בנגלדשי',
+ 'BEC' => 'פרנק בלגי (בר המרה)',
+ 'BEF' => 'פרנק בלגי',
+ 'BGL' => 'לב בולגרי ישן',
+ 'BGN' => 'לב בולגרי',
+ 'BHD' => 'דינר בחרייני',
+ 'BIF' => 'פרנק בורונדי',
+ 'BMD' => 'דולר ברמודה',
+ 'BND' => 'דולר ברוניי',
+ 'BOB' => 'בוליביאנו',
+ 'BOP' => 'פזו בוליבי',
+ 'BRB' => 'קרוזיארו חדש ברזילאי (1967–1986)',
+ 'BRC' => 'קרוזדו ברזילאי',
+ 'BRL' => 'ריאל ברזילאי',
+ 'BSD' => 'דולר בהאמי',
+ 'BTN' => 'נגולטרום בהוטני',
+ 'BWP' => 'פולה בוצוואני',
+ 'BYR' => 'רובל בלרוסי',
+ 'BZD' => 'דולר בליזי',
+ 'CAD' => 'דולר קנדי',
+ 'CDF' => 'פרנק קונגולזי',
+ 'CHF' => 'פרנק שוויצרי',
+ 'CLP' => 'פסו צ׳ילאני',
+ 'CNY' => 'יואן סיני',
+ 'COP' => 'פסו קולומביאני',
+ 'CRC' => 'קולון קוסטה־ריקני',
+ 'CSD' => 'דינר סרבי ישן',
+ 'CUC' => 'פזו קובני להמרה',
+ 'CUP' => 'פזו קובני',
+ 'CVE' => 'אסקודו כף ורדה',
+ 'CYP' => 'לירה קפריסאית',
+ 'CZK' => 'קורונה צ׳כית',
+ 'DDM' => 'מרק מזרח גרמני',
+ 'DEM' => 'מרק גרמני',
+ 'DJF' => 'פרנק ג׳יבוטי',
+ 'DKK' => 'כתר דני',
+ 'DOP' => 'פזו דומיניקני',
+ 'DZD' => 'דינר אלג׳ירי',
+ 'ECS' => 'סוקר אקואדורי',
+ 'EEK' => 'קרון אסטוני',
+ 'EGP' => 'לירה מצרית',
+ 'ERN' => 'נאקפה אריתראי',
+ 'ESA' => 'פזטה [ESA]',
+ 'ESB' => 'פזטה [ESB]',
+ 'ESP' => 'פסטה ספרדי',
+ 'ETB' => 'ביר אתיופי',
+ 'EUR' => 'אירו',
+ 'FIM' => 'מרק פיני',
+ 'FJD' => 'דולר פיג׳י',
+ 'FKP' => 'לירה של איי פוקלנד',
+ 'FRF' => 'פרנק צרפתי',
+ 'GBP' => 'לירה שטרלינג',
+ 'GEL' => 'לרי גאורגי',
+ 'GHS' => 'סדי גאני',
+ 'GIP' => 'פאונד גיברלטר',
+ 'GMD' => 'דלאסי גמבי',
+ 'GNF' => 'פרנק גינאי',
+ 'GRD' => 'דרכמה',
+ 'GTQ' => 'קצל גואטמלי',
+ 'GWP' => 'פזו גינאי',
+ 'GYD' => 'דולר גיאני',
+ 'HKD' => 'דולר הונג קונגי',
+ 'HNL' => 'למפירה הונדורי',
+ 'HRK' => 'קונה קרואטי',
+ 'HTG' => 'גורד האיטי',
+ 'HUF' => 'פורינט הונגרי',
+ 'IDR' => 'רופיה אינדונזית',
+ 'IEP' => 'לירה אירית',
+ 'ILP' => 'לירה ישראלית',
+ 'ILS' => 'ש״ח',
+ 'INR' => 'רופי הודי',
+ 'IQD' => 'דינר עירקי',
+ 'IRR' => 'ריאל איראני',
+ 'ISK' => 'קרונה איסלנדית',
+ 'ITL' => 'לירה איטלקית',
+ 'JMD' => 'דולר ג׳מייקני',
+ 'JOD' => 'דינר ירדני',
+ 'JPY' => 'ין יפני',
+ 'KES' => 'שילינג קנייאתי',
+ 'KGS' => 'סום קירגיזי',
+ 'KHR' => 'ריל קמבודי',
+ 'KMF' => 'פרנק קומורואי',
+ 'KPW' => 'וון צפון-קוריאני',
+ 'KRW' => 'וון דרום-קוריאני',
+ 'KWD' => 'דינר כוויתי',
+ 'KYD' => 'דולר קיימאני',
+ 'KZT' => 'טנגה קזחסטני',
+ 'LAK' => 'קיפ לאי',
+ 'LBP' => 'לירה לבנונית',
+ 'LKR' => 'רופי סרי לנקי',
+ 'LRD' => 'דולר ליברי',
+ 'LSL' => 'לוטי לסותי',
+ 'LTL' => 'ליטא ליטאי',
+ 'LUF' => 'פרנק לוקסמבורגי',
+ 'LVL' => 'לט לטבי',
+ 'LYD' => 'דינר לובי',
+ 'MAD' => 'דירהם מרוקאי',
+ 'MAF' => 'פרנק מרוקאי',
+ 'MDL' => 'ליאו מולדובני',
+ 'MGA' => 'אריארי מלגשי',
+ 'MGF' => 'פרנק מדגסקארי',
+ 'MKD' => 'דינר מקדוני',
+ 'MMK' => 'קיאט מיאנמרי',
+ 'MNT' => 'טוגריק מונגולי',
+ 'MOP' => 'פטקה של מקאו',
+ 'MRO' => 'אוגוויה מאוריטני',
+ 'MTL' => 'לירה מלטית',
+ 'MUR' => 'רופי מאוריציני',
+ 'MVR' => 'רופיה מלדיבית',
+ 'MWK' => 'קואצ׳ה מלאוי',
+ 'MXN' => 'פזו מקסיקני',
+ 'MXP' => 'פזו מקסיקני (1861 – 1992)',
+ 'MYR' => 'רינגיט מלזי',
+ 'MZE' => 'אסקודו מוזמביקי',
+ 'MZM' => 'מטיקל',
+ 'MZN' => 'מטיקל מוזמביני',
+ 'NAD' => 'דולר נמיבי',
+ 'NGN' => 'נאירה ניגרי',
+ 'NIO' => 'קורדובה ניקראגי',
+ 'NLG' => 'גילדן הולנדי',
+ 'NOK' => 'כתר נורבגי',
+ 'NPR' => 'רופי נפאלי',
+ 'NZD' => 'דולר ניו זילנדי',
+ 'OMR' => 'ריאל עומאני',
+ 'PAB' => 'בלבואה פנמי',
+ 'PEN' => 'סול פרואני חדש',
+ 'PGK' => 'קינה של פפואה גינאה החדשה',
+ 'PHP' => 'פזו פיליפיני',
+ 'PKR' => 'רופי פקיסטני',
+ 'PLN' => 'זלוטי פולני',
+ 'PLZ' => 'זלוטי (1950 – 1995)',
+ 'PTE' => 'אסקודו פורטוגלי',
+ 'PYG' => 'גוורני פראגוואי',
+ 'QAR' => 'ריאל קטארי',
+ 'ROL' => 'לאו רומני ישן',
+ 'RON' => 'לאו רומני',
+ 'RSD' => 'דינר סרבי',
+ 'RUB' => 'רובל רוסי',
+ 'RUR' => 'רובל רוסי (1991 – 1998)',
+ 'RWF' => 'פרנק רואנדי',
+ 'SAR' => 'ריאל סעודי',
+ 'SBD' => 'דולר איי שלמה',
+ 'SCR' => 'רופי סיישלי',
+ 'SDD' => 'דינר סודני',
+ 'SDG' => 'לירה סודנית',
+ 'SDP' => 'לירה סודנית (1957–1998)',
+ 'SEK' => 'כתר שוודי',
+ 'SGD' => 'דולר סינגפורי',
+ 'SHP' => 'פאונד סנט הלני',
+ 'SIT' => 'טולאר סלובני',
+ 'SKK' => 'קורונה סלובקי',
+ 'SLL' => 'ליאון סיירה לאוני',
+ 'SOS' => 'שילינג סומאלי',
+ 'SRD' => 'דולר סורינאמי',
+ 'SRG' => 'גילדר סורינאמי',
+ 'SSP' => 'לירה דרום-סודנית',
+ 'STD' => 'דוברה של סן טומה ופרינסיפה',
+ 'SUR' => 'רובל סובייטי',
+ 'SVC' => 'קולון סלבדורי',
+ 'SYP' => 'לירה סורית',
+ 'SZL' => 'לילנגני סווזי',
+ 'THB' => 'בהט תאילנדי',
+ 'TJS' => 'סומוני טג׳קיסטני',
+ 'TMM' => 'מנאט טורקמאני',
+ 'TMT' => 'מאנאט טורקמני',
+ 'TND' => 'דינר טוניסאי',
+ 'TOP' => 'פאנגה טונגי',
+ 'TPE' => 'אסקודו טימוראי',
+ 'TRL' => 'לירה טורקית',
+ 'TRY' => 'לירה טורקית חדשה',
+ 'TTD' => 'דולר טרינידדי',
+ 'TWD' => 'דולר טייוואני חדש',
+ 'TZS' => 'שילינג טנזני',
+ 'UAH' => 'גריבנה אוקראיני',
+ 'UGS' => 'שילינג אוגנדי (1966 – 1987)',
+ 'UGX' => 'שילינג אוגנדי',
+ 'USD' => 'דולר אמריקאי',
+ 'USN' => 'דולר אמריקאי (היום הבא)',
+ 'USS' => 'דולר אמריקאי (היום הזה)',
+ 'UYU' => 'פסו אורוגוואי',
+ 'UZS' => 'סום אוזבקי',
+ 'VEB' => 'בוליבר ונצואלי (1871–2008)',
+ 'VEF' => 'בוליבר ונצואלי',
+ 'VND' => 'דונג וייטנאמי',
+ 'VUV' => 'ואטו של ונואטו',
+ 'WST' => 'טאלה סמואי',
+ 'XAF' => 'פרנק CFA BEAC',
+ 'XAG' => 'כסף',
+ 'XAU' => 'זהב',
+ 'XCD' => 'דולר מזרח קריבי',
+ 'XDR' => 'זכויות משיכה מיוחדות',
+ 'XFO' => 'פרנק זהב',
+ 'XOF' => 'פרנק CFA BCEAO',
+ 'XPD' => 'פלדיום',
+ 'XPF' => 'פרנק פולינזיה הצרפתית',
+ 'XPT' => 'פלטינה',
+ 'XTS' => 'סימון למטרות בדיקה',
+ 'XXX' => 'מטבע שאינו ידוע',
+ 'YDD' => 'דינר תימני',
+ 'YER' => 'ריאל תימני',
+ 'YUD' => 'דינר יגוסלבי חדש',
+ 'YUM' => 'דינר יגוסלבי',
+ 'ZAL' => 'ראנד דרום אפריקאי (כספי)',
+ 'ZAR' => 'ראנד דרום אפריקאי',
+ 'ZMK' => 'קוואצ׳ה זמבית (1968–2012)',
+ 'ZMW' => 'קוואצ׳ה זמבית',
+ 'ZRN' => 'זאיר חדש',
+ 'ZWD' => 'דולר זימבבואי',
+);
+
+$currencySymbols = array(
+ 'AED' => 'AED',
+ 'AFN' => 'AFN',
+ 'ALL' => 'ALL',
+ 'AMD' => 'AMD',
+ 'ANG' => 'ANG',
+ 'AOA' => 'AOA',
+ 'ARS' => 'ARS',
+ 'AUD' => 'A$',
+ 'AWG' => 'AWG',
+ 'AZN' => 'AZN',
+ 'BAM' => 'BAM',
+ 'BBD' => 'BBD',
+ 'BDT' => 'BDT',
+ 'BGN' => 'BGN',
+ 'BHD' => 'BHD',
+ 'BIF' => 'BIF',
+ 'BMD' => 'BMD',
+ 'BND' => 'BND',
+ 'BOB' => 'BOB',
+ 'BRL' => 'R$',
+ 'BSD' => 'BSD',
+ 'BTN' => 'BTN',
+ 'BWP' => 'BWP',
+ 'BYR' => 'BYR',
+ 'BZD' => 'BZD',
+ 'CAD' => 'CA$',
+ 'CDF' => 'CDF',
+ 'CHF' => 'CHF',
+ 'CLP' => 'CLP',
+ 'CNY' => 'CN¥',
+ 'COP' => 'COP',
+ 'CRC' => 'CRC',
+ 'CUC' => 'CUC',
+ 'CUP' => 'CUP',
+ 'CVE' => 'CVE',
+ 'CZK' => 'CZK',
+ 'DJF' => 'DJF',
+ 'DKK' => 'DKK',
+ 'DOP' => 'DOP',
+ 'DZD' => 'DZD',
+ 'EGP' => 'EGP',
+ 'ERN' => 'ERN',
+ 'ETB' => 'ETB',
+ 'EUR' => '€',
+ 'FJD' => 'FJD',
+ 'FKP' => 'FKP',
+ 'GBP' => '£',
+ 'GEL' => 'GEL',
+ 'GHS' => 'GHS',
+ 'GIP' => 'GIP',
+ 'GMD' => 'GMD',
+ 'GNF' => 'GNF',
+ 'GTQ' => 'GTQ',
+ 'GYD' => 'GYD',
+ 'HKD' => 'HK$',
+ 'HNL' => 'HNL',
+ 'HRK' => 'HRK',
+ 'HTG' => 'HTG',
+ 'HUF' => 'HUF',
+ 'IDR' => 'IDR',
+ 'ILP' => 'ל״י',
+ 'ILS' => '₪',
+ 'INR' => '₹',
+ 'IQD' => 'IQD',
+ 'IRR' => 'IRR',
+ 'ISK' => 'ISK',
+ 'JMD' => 'JMD',
+ 'JOD' => 'JOD',
+ 'JPY' => 'JP¥',
+ 'KES' => 'KES',
+ 'KGS' => 'KGS',
+ 'KHR' => 'KHR',
+ 'KMF' => 'KMF',
+ 'KPW' => 'KPW',
+ 'KRW' => '₩',
+ 'KWD' => 'KWD',
+ 'KYD' => 'KYD',
+ 'KZT' => 'KZT',
+ 'LAK' => 'LAK',
+ 'LBP' => 'LBP',
+ 'LKR' => 'LKR',
+ 'LRD' => 'LRD',
+ 'LTL' => 'LTL',
+ 'LVL' => 'LVL',
+ 'LYD' => 'LYD',
+ 'MAD' => 'MAD',
+ 'MDL' => 'MDL',
+ 'MGA' => 'MGA',
+ 'MKD' => 'MKD',
+ 'MMK' => 'MMK',
+ 'MNT' => 'MNT',
+ 'MOP' => 'MOP',
+ 'MRO' => 'MRO',
+ 'MUR' => 'MUR',
+ 'MVR' => 'MVR',
+ 'MWK' => 'MWK',
+ 'MXN' => 'MX$',
+ 'MYR' => 'MYR',
+ 'MZN' => 'MZN',
+ 'NAD' => 'NAD',
+ 'NGN' => 'NGN',
+ 'NIO' => 'NIO',
+ 'NOK' => 'NOK',
+ 'NPR' => 'NPR',
+ 'NZD' => 'NZ$',
+ 'OMR' => 'OMR',
+ 'PAB' => 'PAB',
+ 'PEN' => 'PEN',
+ 'PGK' => 'PGK',
+ 'PHP' => 'PHP',
+ 'PKR' => 'PKR',
+ 'PLN' => 'PLN',
+ 'PYG' => 'PYG',
+ 'QAR' => 'QAR',
+ 'RON' => 'RON',
+ 'RSD' => 'RSD',
+ 'RUB' => 'RUB',
+ 'RWF' => 'RWF',
+ 'SAR' => 'SAR',
+ 'SBD' => 'SBD',
+ 'SCR' => 'SCR',
+ 'SDG' => 'SDG',
+ 'SEK' => 'SEK',
+ 'SGD' => 'SGD',
+ 'SHP' => 'SHP',
+ 'SLL' => 'SLL',
+ 'SOS' => 'SOS',
+ 'SRD' => 'SRD',
+ 'SSP' => 'SSP',
+ 'STD' => 'STD',
+ 'SYP' => 'SYP',
+ 'SZL' => 'SZL',
+ 'THB' => '฿',
+ 'TJS' => 'TJS',
+ 'TMT' => 'TMT',
+ 'TND' => 'TND',
+ 'TOP' => 'TOP',
+ 'TRY' => 'TRY',
+ 'TTD' => 'TTD',
+ 'TWD' => 'NT$',
+ 'TZS' => 'TZS',
+ 'UAH' => 'UAH',
+ 'UGX' => 'UGX',
+ 'USD' => '$',
+ 'UYU' => 'UYU',
+ 'UZS' => 'UZS',
+ 'VEF' => 'VEF',
+ 'VND' => '₫',
+ 'VUV' => 'VUV',
+ 'WST' => 'WST',
+ 'XAF' => 'FCFA',
+ 'XCD' => 'EC$',
+ 'XOF' => 'CFA',
+ 'XPF' => 'CFPF',
+ 'YER' => 'YER',
+ 'ZAR' => 'ZAR',
+ 'ZMW' => 'ZMW',
+);
+
+$countryNames = array(
+ 'AC' => 'האי אסנשן',
+ 'AD' => 'אנדורה',
+ 'AE' => 'איחוד האמירויות הערביות',
+ 'AF' => 'אפגניסטן',
+ 'AG' => 'אנטיגואה וברבודה',
+ 'AI' => 'אנגילה',
+ 'AL' => 'אלבניה',
+ 'AM' => 'ארמניה',
+ 'AN' => 'אנטילים הולנדיים',
+ 'AO' => 'אנגולה',
+ 'AQ' => 'אנטארקטיקה',
+ 'AR' => 'ארגנטינה',
+ 'AS' => 'סמואה האמריקנית',
+ 'AT' => 'אוסטריה',
+ 'AU' => 'אוסטרליה',
+ 'AW' => 'ארובה',
+ 'AX' => 'איי אולנד',
+ 'AZ' => 'אזרבייג׳ן',
+ 'BA' => 'בוסניה והרצגובינה',
+ 'BB' => 'ברבדוס',
+ 'BD' => 'בנגלדש',
+ 'BE' => 'בלגיה',
+ 'BF' => 'בורקינה פאסו',
+ 'BG' => 'בולגריה',
+ 'BH' => 'בחריין',
+ 'BI' => 'בורונדי',
+ 'BJ' => 'בנין',
+ 'BL' => 'סנט ברתולומיאו',
+ 'BM' => 'ברמודה',
+ 'BN' => 'ברוניי',
+ 'BO' => 'בוליביה',
+ 'BQ' => 'האיים הקריביים ההולנדיים',
+ 'BR' => 'ברזיל',
+ 'BS' => 'איי בהאמה',
+ 'BT' => 'בהוטן',
+ 'BV' => 'איי בובה',
+ 'BW' => 'בוטסוואנה',
+ 'BY' => 'בלארוס',
+ 'BZ' => 'בליז',
+ 'CA' => 'קנדה',
+ 'CC' => 'איי קוקוס (קילינג)',
+ 'CD' => 'קונגו - קינשאסה',
+ 'CF' => 'הרפובליקה של מרכז אפריקה',
+ 'CG' => 'קונגו - ברזאויל',
+ 'CH' => 'שווייץ',
+ 'CI' => 'חוף השנהב',
+ 'CK' => 'איי קוק',
+ 'CL' => 'צ׳ילה',
+ 'CM' => 'קמרון',
+ 'CN' => 'סין',
+ 'CO' => 'קולומביה',
+ 'CP' => 'האי קליפרטון',
+ 'CR' => 'קוסטה ריקה',
+ 'CU' => 'קובה',
+ 'CV' => 'כף ורדה',
+ 'CW' => 'קוראסאו',
+ 'CX' => 'אי חג המולד',
+ 'CY' => 'קפריסין',
+ 'CZ' => 'צ׳כיה',
+ 'DE' => 'גרמניה',
+ 'DG' => 'דייגו גרסיה',
+ 'DJ' => 'ג׳יבוטי',
+ 'DK' => 'דנמרק',
+ 'DM' => 'דומיניקה',
+ 'DO' => 'הרפובליקה הדומיניקנית',
+ 'DZ' => 'אלג׳יריה',
+ 'EA' => 'סאוטה ומלייה',
+ 'EC' => 'אקוודור',
+ 'EE' => 'אסטוניה',
+ 'EG' => 'מצרים',
+ 'EH' => 'סהרה המערבית',
+ 'ER' => 'אריתריאה',
+ 'ES' => 'ספרד',
+ 'ET' => 'אתיופיה',
+ 'EU' => 'האיחוד האירופי',
+ 'FI' => 'פינלנד',
+ 'FJ' => 'פיג׳י',
+ 'FK' => 'איי פוקלנד',
+ 'FM' => 'מיקרונזיה',
+ 'FO' => 'איי פארו',
+ 'FR' => 'צרפת',
+ 'GA' => 'גאבון',
+ 'GB' => 'בריטניה',
+ 'GD' => 'גרנדה',
+ 'GE' => 'גאורגיה',
+ 'GF' => 'גיאנה הצרפתית',
+ 'GG' => 'גרנסי',
+ 'GH' => 'גאנה',
+ 'GI' => 'גיברלטר',
+ 'GL' => 'גרינלנד',
+ 'GM' => 'גמביה',
+ 'GN' => 'גיניאה',
+ 'GP' => 'גוואדלופ',
+ 'GQ' => 'גיניאה המשוונית',
+ 'GR' => 'יוון',
+ 'GS' => 'ג׳ורג׳יה הדרומית ואיי סנדוויץ׳ הדרומיים',
+ 'GT' => 'גואטמלה',
+ 'GU' => 'גואם',
+ 'GW' => 'גיניאה-ביסאו',
+ 'GY' => 'גיאנה',
+ 'HK' => 'הונג קונג',
+ 'HM' => 'איי הרד ואיי מקדונלד',
+ 'HN' => 'הונדורס',
+ 'HR' => 'קרואטיה',
+ 'HT' => 'האיטי',
+ 'HU' => 'הונגריה',
+ 'IC' => 'האיים הקנריים',
+ 'ID' => 'אינדונזיה',
+ 'IE' => 'אירלנד',
+ 'IL' => 'ישראל',
+ 'IM' => 'האי מאן',
+ 'IN' => 'הודו',
+ 'IO' => 'טריטוריה בריטית באוקיאנוס ההודי',
+ 'IQ' => 'עיראק',
+ 'IR' => 'איראן',
+ 'IS' => 'איסלנד',
+ 'IT' => 'איטליה',
+ 'JE' => 'ג׳רסי',
+ 'JM' => 'ג׳מייקה',
+ 'JO' => 'ירדן',
+ 'JP' => 'יפן',
+ 'KE' => 'קניה',
+ 'KG' => 'קירגיזסטן',
+ 'KH' => 'קמבודיה',
+ 'KI' => 'קיריבאטי',
+ 'KM' => 'קומורוס',
+ 'KN' => 'סנט קיטס ונוויס',
+ 'KP' => 'קוריאה הצפונית',
+ 'KR' => 'קוריאה הדרומית',
+ 'KW' => 'כווית',
+ 'KY' => 'איי קיימן',
+ 'KZ' => 'קזחסטן',
+ 'LA' => 'לאוס',
+ 'LB' => 'לבנון',
+ 'LC' => 'סנט לוסיה',
+ 'LI' => 'ליכטנשטיין',
+ 'LK' => 'סרי לנקה',
+ 'LR' => 'ליבריה',
+ 'LS' => 'לסוטו',
+ 'LT' => 'ליטא',
+ 'LU' => 'לוקסמבורג',
+ 'LV' => 'לטביה',
+ 'LY' => 'לוב',
+ 'MA' => 'מרוקו',
+ 'MC' => 'מונקו',
+ 'MD' => 'מולדובה',
+ 'ME' => 'מונטנגרו',
+ 'MF' => 'סנט מרטין',
+ 'MG' => 'מדגסקר',
+ 'MH' => 'איי מרשל',
+ 'MK' => 'מקדוניה',
+ 'ML' => 'מאלי',
+ 'MM' => 'מיאנמאר (בורמה)‎',
+ 'MN' => 'מונגוליה',
+ 'MO' => 'מקאו',
+ 'MP' => 'איי מריאנה הצפוניים',
+ 'MQ' => 'מרטיניק',
+ 'MR' => 'מאוריטניה',
+ 'MS' => 'מונסראט',
+ 'MT' => 'מלטה',
+ 'MU' => 'מאוריציוס',
+ 'MV' => 'האיים המלדיביים',
+ 'MW' => 'מלאווי',
+ 'MX' => 'מקסיקו',
+ 'MY' => 'מלזיה',
+ 'MZ' => 'מוזמביק',
+ 'NA' => 'נמיביה',
+ 'NC' => 'קלדוניה החדשה',
+ 'NE' => 'ניז׳ר',
+ 'NF' => 'איי נורפוק',
+ 'NG' => 'ניגריה',
+ 'NI' => 'ניקרגואה',
+ 'NL' => 'הולנד',
+ 'NO' => 'נורווגיה',
+ 'NP' => 'נפאל',
+ 'NR' => 'נאורו',
+ 'NU' => 'ניווה',
+ 'NZ' => 'ניו זילנד',
+ 'OM' => 'עומאן',
+ 'PA' => 'פנמה',
+ 'PE' => 'פרו',
+ 'PF' => 'פולינזיה הצרפתית',
+ 'PG' => 'פפואה גיניאה החדשה',
+ 'PH' => 'פיליפינים',
+ 'PK' => 'פקיסטן',
+ 'PL' => 'פולין',
+ 'PM' => 'סנט פייר ומיקלון',
+ 'PN' => 'איי פיטקרן',
+ 'PR' => 'פורטו ריקו',
+ 'PS' => 'פלסטין',
+ 'PT' => 'פורטוגל',
+ 'PW' => 'פאלאו',
+ 'PY' => 'פרגוואי',
+ 'QA' => 'קטאר',
+ 'QO' => 'אוקיאניה חיצונית',
+ 'RE' => 'ראוניון',
+ 'RO' => 'רומניה',
+ 'RS' => 'סרביה',
+ 'RU' => 'רוסיה',
+ 'RW' => 'רואנדה',
+ 'SA' => 'ערב הסעודית',
+ 'SB' => 'איי שלמה',
+ 'SC' => 'איי סיישל',
+ 'SD' => 'סודן',
+ 'SE' => 'שוודיה',
+ 'SG' => 'סינגפור',
+ 'SH' => 'סנט הלנה',
+ 'SI' => 'סלובניה',
+ 'SJ' => 'סוולבארד ויאן מאיין',
+ 'SK' => 'סלובקיה',
+ 'SL' => 'סיירה לאונה',
+ 'SM' => 'סן מרינו',
+ 'SN' => 'סנגל',
+ 'SO' => 'סומליה',
+ 'SR' => 'סורינם',
+ 'SS' => 'דרום סודן',
+ 'ST' => 'סאו טומה ופרינסיפה',
+ 'SV' => 'אל סלבדור',
+ 'SX' => 'סינט מארטן',
+ 'SY' => 'סוריה',
+ 'SZ' => 'סווזילנד',
+ 'TA' => 'טריסטן דה קונה',
+ 'TC' => 'איי טורקס וקאיקוס',
+ 'TD' => 'צ׳אד',
+ 'TF' => 'טריטוריות דרומיות של צרפת',
+ 'TG' => 'טוגו',
+ 'TH' => 'תאילנד',
+ 'TJ' => 'טג׳יקיסטן',
+ 'TK' => 'טוקלאו',
+ 'TL' => 'טימור לסטה',
+ 'TM' => 'טורקמניסטן',
+ 'TN' => 'תוניסיה',
+ 'TO' => 'טונגה',
+ 'TR' => 'טורקיה',
+ 'TT' => 'טרינידד וטובגו',
+ 'TV' => 'טובלו',
+ 'TW' => 'טייוואן',
+ 'TZ' => 'טנזניה',
+ 'UA' => 'אוקראינה',
+ 'UG' => 'אוגנדה',
+ 'UM' => 'איים לחוף ארצות הברית',
+ 'US' => 'ארה״ב',
+ 'UY' => 'אורוגוואי',
+ 'UZ' => 'אוזבקיסטן',
+ 'VA' => 'הוותיקן',
+ 'VC' => 'סנט וינסנט והגרנדינים',
+ 'VE' => 'ונצואלה',
+ 'VG' => 'איי הבתולה הבריטיים',
+ 'VI' => 'איי הבתולה האמריקניים',
+ 'VN' => 'וייטנאם',
+ 'VU' => 'ונואטו',
+ 'WF' => 'איי ווליס ופוטונה',
+ 'WS' => 'סמואה',
+ 'XK' => 'קוסובו',
+ 'YE' => 'תימן',
+ 'YT' => 'מאיוט',
+ 'ZA' => 'דרום אפריקה',
+ 'ZM' => 'זמביה',
+ 'ZW' => 'זימבאבווה',
+);
+
+$timeUnits = array(
+ 'day-future-many' => 'בעוד {0} ימים',
+ 'day-future-one' => 'בעוד יום {0}',
+ 'day-future-other' => 'בעוד {0} ימים',
+ 'day-future-two' => 'בעוד יומיים',
+ 'day-many' => '{0} יום',
+ 'day-narrow-future-many' => 'בעוד {0} יום',
+ 'day-narrow-future-one' => 'מחר',
+ 'day-narrow-future-other' => 'בעוד {0} ימ׳',
+ 'day-narrow-future-two' => 'בעוד יומיים',
+ 'day-narrow-past-many' => 'לפני {0} יום',
+ 'day-narrow-past-one' => 'אתמול',
+ 'day-narrow-past-other' => 'לפני {0} ימ׳',
+ 'day-narrow-past-two' => 'לפני יומיים',
+ 'day-one' => 'יום',
+ 'day-other' => '{0} ימים',
+ 'day-past-many' => 'לפני {0} ימים',
+ 'day-past-one' => 'לפני יום {0}',
+ 'day-past-other' => 'לפני {0} ימים',
+ 'day-past-two' => 'לפני יומיים',
+ 'day-short-future-many' => 'בעוד {0} יום',
+ 'day-short-future-one' => 'מחר',
+ 'day-short-future-other' => 'בעוד {0} ימ׳',
+ 'day-short-future-two' => 'בעוד יומיים',
+ 'day-short-past-many' => 'לפני {0} יום',
+ 'day-short-past-one' => 'אתמול',
+ 'day-short-past-other' => 'לפני {0} ימ׳',
+ 'day-short-past-two' => 'לפני יומיים',
+ 'day-two' => 'יומיים',
+ 'hour-future-many' => 'בעוד {0} שעות',
+ 'hour-future-one' => 'בעוד שעה',
+ 'hour-future-other' => 'בעוד {0} שעות',
+ 'hour-future-two' => 'בעוד שעתיים',
+ 'hour-many' => '{0} שעות',
+ 'hour-narrow-future-many' => 'בעוד {0} שע׳',
+ 'hour-narrow-future-one' => 'בעוד שעה',
+ 'hour-narrow-future-other' => 'בעוד {0} שע׳',
+ 'hour-narrow-future-two' => 'בעוד שעתיים',
+ 'hour-narrow-past-many' => 'לפני {0} שע׳',
+ 'hour-narrow-past-one' => 'לפני שעה',
+ 'hour-narrow-past-other' => 'לפני {0} שע׳',
+ 'hour-narrow-past-two' => 'לפני שעתיים',
+ 'hour-one' => 'שעה',
+ 'hour-other' => '{0} שעות',
+ 'hour-past-many' => 'לפני {0} שעות',
+ 'hour-past-one' => 'לפני שעה',
+ 'hour-past-other' => 'לפני {0} שעות',
+ 'hour-past-two' => 'לפני שעתיים',
+ 'hour-short-future-many' => 'בעוד {0} שע׳',
+ 'hour-short-future-one' => 'בעוד שעה',
+ 'hour-short-future-other' => 'בעוד {0} שע׳',
+ 'hour-short-future-two' => 'בעוד שעתיים',
+ 'hour-short-past-many' => 'לפני {0} שע׳',
+ 'hour-short-past-one' => 'לפני שעה',
+ 'hour-short-past-other' => 'לפני {0} שע׳',
+ 'hour-short-past-two' => 'לפני שעתיים',
+ 'hour-two' => 'שעתיים',
+ 'microsecond-many' => '{0} מיליוניות שנייה',
+ 'microsecond-one' => '{0} מיליונית שנייה',
+ 'microsecond-other' => '{0} מיליוניות שנייה',
+ 'microsecond-two' => '{0} מיליוניות שנייה',
+ 'millisecond-many' => '{0} אלפיות שנייה',
+ 'millisecond-one' => 'אלפית שנייה {0}',
+ 'millisecond-other' => '{0} אלפיות שנייה',
+ 'millisecond-two' => '{0} אלפיות שנייה',
+ 'minute-future-many' => 'בעוד {0} דקות',
+ 'minute-future-one' => 'בעוד דקה',
+ 'minute-future-other' => 'בעוד {0} דקות',
+ 'minute-future-two' => 'בעוד שתי דקות',
+ 'minute-many' => '{0} דקות',
+ 'minute-narrow-future-many' => 'בעוד {0} דק׳',
+ 'minute-narrow-future-one' => 'בעוד דקה',
+ 'minute-narrow-future-other' => 'בעוד {0} דק׳',
+ 'minute-narrow-future-two' => 'בעוד שתי דק׳',
+ 'minute-narrow-past-many' => 'לפני {0} דק׳',
+ 'minute-narrow-past-one' => 'לפני דקה',
+ 'minute-narrow-past-other' => 'לפני {0} דק׳',
+ 'minute-narrow-past-two' => 'לפני שתי דק׳',
+ 'minute-one' => 'דקה',
+ 'minute-other' => '{0} דקות',
+ 'minute-past-many' => 'לפני {0} דקות',
+ 'minute-past-one' => 'לפני דקה',
+ 'minute-past-other' => 'לפני {0} דקות',
+ 'minute-past-two' => 'לפני שתי דקות',
+ 'minute-short-future-many' => 'בעוד {0} דק׳',
+ 'minute-short-future-one' => 'בעוד דקה',
+ 'minute-short-future-other' => 'בעוד {0} דק׳',
+ 'minute-short-future-two' => 'בעוד שתי דק׳',
+ 'minute-short-past-many' => 'לפני {0} דק׳',
+ 'minute-short-past-one' => 'לפני דקה',
+ 'minute-short-past-other' => 'לפני {0} דק׳',
+ 'minute-short-past-two' => 'לפני {0} דק׳',
+ 'minute-two' => 'שתי דקות',
+ 'month-future-many' => 'בעוד {0} חודשים',
+ 'month-future-one' => 'בעוד חודש',
+ 'month-future-other' => 'בעוד {0} חודשים',
+ 'month-future-two' => 'בעוד חודשיים',
+ 'month-many' => '{0} חודשים',
+ 'month-narrow-future-many' => 'בעוד {0} חו׳',
+ 'month-narrow-future-one' => 'בעוד חו׳',
+ 'month-narrow-future-other' => 'בעוד {0} חו׳',
+ 'month-narrow-future-two' => 'בעוד חודשיים',
+ 'month-narrow-past-many' => 'לפני {0} חו׳',
+ 'month-narrow-past-one' => 'לפני חו׳',
+ 'month-narrow-past-other' => 'לפני {0} חו׳',
+ 'month-narrow-past-two' => 'לפני חודשיים',
+ 'month-one' => 'חודש',
+ 'month-other' => '{0} חודשים',
+ 'month-past-many' => 'לפני {0} חודשים',
+ 'month-past-one' => 'לפני חודש',
+ 'month-past-other' => 'לפני {0} חודשים',
+ 'month-past-two' => 'לפני חודשיים',
+ 'month-short-future-many' => 'בעוד {0} חודשים',
+ 'month-short-future-one' => 'בעוד חודש',
+ 'month-short-future-other' => 'בעוד {0} חודשים',
+ 'month-short-future-two' => 'בעוד חודשיים',
+ 'month-short-past-many' => 'לפני {0} חודשים',
+ 'month-short-past-one' => 'לפני חודש',
+ 'month-short-past-other' => 'לפני {0} חודשים',
+ 'month-short-past-two' => 'לפני חודשיים',
+ 'month-two' => 'חודשיים',
+ 'nanosecond-many' => '{0} ננו שניות',
+ 'nanosecond-one' => '{0} ננו שנייה',
+ 'nanosecond-other' => '{0} ננו שניות',
+ 'nanosecond-two' => '{0} ננו שניות',
+ 'quarter-future-many' => 'בעוד {0} רבעונים',
+ 'quarter-future-one' => 'ברבעון הבא',
+ 'quarter-future-other' => 'בעוד {0} רבעונים',
+ 'quarter-future-two' => 'בעוד שני רבעונים',
+ 'quarter-narrow-future-many' => 'בעוד {0} רבע׳',
+ 'quarter-narrow-future-one' => 'ברבע׳ הבא',
+ 'quarter-narrow-future-other' => 'בעוד {0} רבע׳',
+ 'quarter-narrow-future-two' => 'בעוד שני רבע׳',
+ 'quarter-narrow-past-many' => 'לפני {0} רבע׳',
+ 'quarter-narrow-past-one' => 'ברבע׳ הקודם',
+ 'quarter-narrow-past-other' => 'לפני {0} רבע׳',
+ 'quarter-narrow-past-two' => 'לפני שני רבע׳',
+ 'quarter-past-many' => 'לפני {0} רבעונים',
+ 'quarter-past-one' => 'ברבעון הקודם',
+ 'quarter-past-other' => 'לפני {0} רבעונים',
+ 'quarter-past-two' => 'לפני שני רבעונים',
+ 'quarter-short-future-many' => 'בעוד {0} רבע׳',
+ 'quarter-short-future-one' => 'ברבע׳ הבא',
+ 'quarter-short-future-other' => 'בעוד {0} רבע׳',
+ 'quarter-short-future-two' => 'בעוד שני רבע׳',
+ 'quarter-short-past-many' => 'לפני {0} רבע׳',
+ 'quarter-short-past-one' => 'ברבע׳ הקודם',
+ 'quarter-short-past-other' => 'לפני {0} רבע׳',
+ 'quarter-short-past-two' => 'לפני שני רבע׳',
+ 'second-future-many' => 'בעוד {0} שניות',
+ 'second-future-one' => 'בעוד שנייה',
+ 'second-future-other' => 'בעוד {0} שניות',
+ 'second-future-two' => 'בעוד שתי שניות',
+ 'second-many' => '‏{0} שניות',
+ 'second-narrow-future-many' => 'בעוד {0} שנ׳',
+ 'second-narrow-future-one' => 'בעוד שנ׳',
+ 'second-narrow-future-other' => 'בעוד {0} שנ׳',
+ 'second-narrow-future-two' => 'בעוד שתי שנ׳',
+ 'second-narrow-past-many' => 'לפני {0} שנ׳',
+ 'second-narrow-past-one' => 'לפני שנ׳',
+ 'second-narrow-past-other' => 'לפני {0} שנ׳',
+ 'second-narrow-past-two' => 'לפני שתי שנ׳',
+ 'second-one' => 'שניה',
+ 'second-other' => '{0} שניות',
+ 'second-past-many' => 'לפני {0} שניות',
+ 'second-past-one' => 'לפני שנייה',
+ 'second-past-other' => 'לפני {0} שניות',
+ 'second-past-two' => 'לפני שתי שניות',
+ 'second-short-future-many' => 'בעוד {0} שנ׳',
+ 'second-short-future-one' => 'בעוד שנ׳',
+ 'second-short-future-other' => 'בעוד {0} שנ׳',
+ 'second-short-future-two' => 'בעוד שתי שנ׳',
+ 'second-short-past-many' => 'לפני {0} שנ׳',
+ 'second-short-past-one' => 'לפני שנ׳',
+ 'second-short-past-other' => 'לפני {0} שנ׳',
+ 'second-short-past-two' => 'לפני שתי שנ׳',
+ 'second-two' => 'שתי שניות',
+ 'week-future-many' => 'בעוד {0} שבועות',
+ 'week-future-one' => 'בעוד שבוע',
+ 'week-future-other' => 'בעוד {0} שבועות',
+ 'week-future-two' => 'בעוד שבועיים',
+ 'week-many' => '{0} שבועות',
+ 'week-narrow-future-many' => 'בעוד {0} שב׳',
+ 'week-narrow-future-one' => 'בעוד שב׳',
+ 'week-narrow-future-other' => 'בעוד {0} שב׳',
+ 'week-narrow-future-two' => 'בעוד שבועיים',
+ 'week-narrow-past-many' => 'לפני {0} שב׳',
+ 'week-narrow-past-one' => 'לפני שבוע',
+ 'week-narrow-past-other' => 'לפני {0} שב׳',
+ 'week-narrow-past-two' => 'לפני שבועיים',
+ 'week-one' => 'שבוע',
+ 'week-other' => '{0} שבועות',
+ 'week-past-many' => 'לפני {0} שבועות',
+ 'week-past-one' => 'לפני שבוע',
+ 'week-past-other' => 'לפני {0} שבועות',
+ 'week-past-two' => 'לפני שבועיים',
+ 'week-short-future-many' => 'בעוד {0} שב׳',
+ 'week-short-future-one' => 'בעוד שב׳',
+ 'week-short-future-other' => 'בעוד {0} שב׳',
+ 'week-short-future-two' => 'בעוד שבועיים',
+ 'week-short-past-many' => 'לפני {0} שב׳',
+ 'week-short-past-one' => 'לפני שב׳',
+ 'week-short-past-other' => 'לפני {0} שב׳',
+ 'week-short-past-two' => 'לפני שבועיים',
+ 'week-two' => 'שבועיים',
+ 'year-future-many' => 'בעוד {0} שנה',
+ 'year-future-one' => 'בעוד שנה',
+ 'year-future-other' => 'בעוד {0} שנים',
+ 'year-future-two' => 'בעוד שנתיים',
+ 'year-many' => '{0} שנה',
+ 'year-narrow-future-many' => 'בעוד {0} שנה',
+ 'year-narrow-future-one' => 'בעוד שנה',
+ 'year-narrow-future-other' => 'בעוד {0} שנים',
+ 'year-narrow-future-two' => 'בעוד שנתיים',
+ 'year-narrow-past-many' => 'לפני {0} שנה',
+ 'year-narrow-past-one' => 'לפני שנה',
+ 'year-narrow-past-other' => 'לפני {0} שנים',
+ 'year-narrow-past-two' => 'לפני שנתיים',
+ 'year-one' => 'שנה',
+ 'year-other' => '{0} שנים',
+ 'year-past-many' => 'לפני {0} שנה',
+ 'year-past-one' => 'לפני שנה',
+ 'year-past-other' => 'לפני {0} שנים',
+ 'year-past-two' => 'לפני שנתיים',
+ 'year-short-future-many' => 'בעוד {0} שנה',
+ 'year-short-future-one' => 'בעוד שנה',
+ 'year-short-future-other' => 'בעוד {0} שנים',
+ 'year-short-future-two' => 'בעוד שנתיים',
+ 'year-short-past-many' => 'לפני {0} שנה',
+ 'year-short-past-one' => 'לפני שנה',
+ 'year-short-past-other' => 'לפני {0} שנים',
+ 'year-short-past-two' => 'לפני שנתיים',
+ 'year-two' => 'שנתיים',
+);
diff --git a/MLEB/cldr/CldrNames/CldrNamesHi.php b/MLEB/cldr/CldrNames/CldrNamesHi.php
new file mode 100644
index 00000000..ed217fc7
--- /dev/null
+++ b/MLEB/cldr/CldrNames/CldrNamesHi.php
@@ -0,0 +1,1216 @@
+<?php
+
+$languageNames = array(
+ 'aa' => 'अफ़ार',
+ 'ab' => 'अब्ख़ाज़ियन',
+ 'ace' => 'अचाइनीस',
+ 'ach' => 'अकोली',
+ 'ada' => 'अदान्गमे',
+ 'ady' => 'अदिघे',
+ 'ae' => 'अवस्ताई',
+ 'af' => 'अफ़्रीकी',
+ 'afh' => 'अफ्रिहिली',
+ 'agq' => 'अग्हेम',
+ 'ain' => 'ऐनू',
+ 'ak' => 'अकन',
+ 'akk' => 'अक्कादी',
+ 'ale' => 'अलेउत',
+ 'alt' => 'दक्षिणी अल्ताई',
+ 'am' => 'अम्हेरी',
+ 'an' => 'अर्गोनी',
+ 'ang' => 'पुरानी अंग्रेज़ी',
+ 'anp' => 'अंगिका',
+ 'ar' => 'अरबी',
+ 'ar-001' => 'आधुनिक मानक अरबी',
+ 'arc' => 'ऐरेमेक',
+ 'arn' => 'मापूचे',
+ 'arp' => 'अराफाओ',
+ 'arw' => 'अरावक',
+ 'as' => 'असमिया',
+ 'asa' => 'असु',
+ 'ast' => 'अस्तुरियन',
+ 'av' => 'अवेरिक',
+ 'awa' => 'अवधी',
+ 'ay' => 'आयमारा',
+ 'az' => 'अज़रबैजानी',
+ 'ba' => 'बशख़िर',
+ 'bal' => 'बलूची',
+ 'ban' => 'बालिनीस',
+ 'bas' => 'बसा',
+ 'be' => 'बेलारूसी',
+ 'bej' => 'बेजा',
+ 'bem' => 'बेम्बा',
+ 'bez' => 'बेना',
+ 'bg' => 'बुल्गारियाई',
+ 'bho' => 'भोजपुरी',
+ 'bi' => 'बिस्लामा',
+ 'bik' => 'बिकोल',
+ 'bin' => 'बिनी',
+ 'bla' => 'सिक्सिका',
+ 'bm' => 'बाम्बारा',
+ 'bn' => 'बंगाली',
+ 'bo' => 'तिब्बती',
+ 'br' => 'ब्रेटन',
+ 'bra' => 'ब्रज',
+ 'brx' => 'बोडो',
+ 'bs' => 'बोस्नियाई',
+ 'bua' => 'बुरियात',
+ 'bug' => 'बगिनीस',
+ 'byn' => 'ब्लिन',
+ 'ca' => 'कातालान',
+ 'cad' => 'कैड्डो',
+ 'car' => 'कैरिब',
+ 'cch' => 'अत्सम',
+ 'ce' => 'चेचन',
+ 'ceb' => 'सिबुआनो',
+ 'cgg' => 'शिगा',
+ 'ch' => 'कमोरो',
+ 'chb' => 'चिब्चा',
+ 'chg' => 'छगाताई',
+ 'chk' => 'चूकीस',
+ 'chm' => 'मारी',
+ 'chn' => 'चिनूक जारगॉन',
+ 'cho' => 'चोक्तौ',
+ 'chp' => 'शिपेव्यान',
+ 'chr' => 'शेरोकी',
+ 'chy' => 'शेयेन्न',
+ 'ckb' => 'सोरानी कुर्दिश',
+ 'co' => 'कोर्सीकन',
+ 'cop' => 'कॉप्टिक',
+ 'cr' => 'क्री',
+ 'crh' => 'क्रीमीन तुर्की',
+ 'cs' => 'चेक',
+ 'csb' => 'काशुबियन',
+ 'cu' => 'चर्च साल्विक',
+ 'cv' => 'चूवाश',
+ 'cy' => 'वेल्श',
+ 'da' => 'डेनिश',
+ 'dak' => 'दाकोता',
+ 'dar' => 'दार्गवा',
+ 'dav' => 'तैता',
+ 'de' => 'जर्मन',
+ 'de-at' => 'ऑस्ट्रियाई जर्मन',
+ 'de-ch' => 'स्विस उच्च जर्मन',
+ 'del' => 'डिलैवेयर',
+ 'den' => 'स्लेव',
+ 'dgr' => 'डोग्रिब',
+ 'din' => 'दिन्का',
+ 'dje' => 'झार्मा',
+ 'doi' => 'डोग्री',
+ 'dsb' => 'निचला सॉर्बियन',
+ 'dua' => 'दुआला',
+ 'dum' => 'मध्य पुर्तगाली',
+ 'dv' => 'दिवेही',
+ 'dyo' => 'जोला-फोंई',
+ 'dyu' => 'ड्युला',
+ 'dz' => 'ज़ोन्गखा',
+ 'ebu' => 'एम्बु',
+ 'ee' => 'ईवे',
+ 'efi' => 'एफिक',
+ 'egy' => 'प्राचीन मिस्री',
+ 'eka' => 'एकाजुक',
+ 'el' => 'यूनानी',
+ 'elx' => 'एलामाइट',
+ 'en' => 'अंग्रेज़ी',
+ 'en-au' => 'ऑस्ट्रेलियाई अंग्रेज़ी',
+ 'en-ca' => 'कनाडाई अंग्रेज़ी',
+ 'en-gb' => 'ब्रिटिश अंग्रेज़ी',
+ 'en-us' => 'अमेरिकी अंग्रेज़ी',
+ 'enm' => 'मध्यकालीन अंग्रेज़ी',
+ 'eo' => 'एस्पेरेंतो',
+ 'es' => 'स्पेनी',
+ 'es-419' => 'लैटिन अमेरिकी स्पेनी',
+ 'es-es' => 'यूरोपीय स्पेनी',
+ 'es-mx' => 'मैक्सिकन स्पेनिश',
+ 'et' => 'एस्टोनियाई',
+ 'eu' => 'बास्क',
+ 'ewo' => 'इवोन्डो',
+ 'fa' => 'फ़ारसी',
+ 'fan' => 'फैन्ग',
+ 'fat' => 'फन्टी',
+ 'ff' => 'फुलाह',
+ 'fi' => 'फ़िनिश',
+ 'fil' => 'फ़िलिपीनो',
+ 'fj' => 'फ़ीजी',
+ 'fo' => 'फ़ैरोइज़',
+ 'fon' => 'फॉन',
+ 'fr' => 'फ़्रेंच',
+ 'fr-ca' => 'कनाडाई फ़्रेंच',
+ 'fr-ch' => 'स्विस फ़्रेंच',
+ 'frm' => 'मध्यकालीन फ़्रांसीसी',
+ 'fro' => 'पुरातन फ़्रांसीसी',
+ 'frr' => 'उत्तरी फ्रीसीयन',
+ 'frs' => 'पूर्वी फ्रीसीयन',
+ 'fur' => 'फ्रीयुलीयान',
+ 'fy' => 'पश्चिमी फ़्रिसियाई',
+ 'ga' => 'आइरिश',
+ 'gaa' => 'गा',
+ 'gag' => 'गागौज़',
+ 'gay' => 'गायो',
+ 'gba' => 'ग्बाया',
+ 'gd' => 'स्काट्स् गायेलिक्',
+ 'gez' => 'गीज़',
+ 'gil' => 'गिल्बरतीस',
+ 'gl' => 'गैलिशियन',
+ 'gmh' => 'मध्यकालीन हाइ जर्मन',
+ 'gn' => 'गुआरानी',
+ 'goh' => 'पुरातन हाइ जर्मन',
+ 'gon' => 'गाँडी',
+ 'gor' => 'गोरोन्तालो',
+ 'got' => 'गॉथिक',
+ 'grb' => 'ग्रेबो',
+ 'grc' => 'प्राचीन यूनानी',
+ 'gsw' => 'स्विस जर्मन',
+ 'gu' => 'गुजराती',
+ 'guz' => 'गुसी',
+ 'gv' => 'मैंक्स',
+ 'gwi' => 'ग्विच’इन',
+ 'ha' => 'हौसा',
+ 'hai' => 'हैडा',
+ 'haw' => 'हवाई',
+ 'he' => 'हिब्रू',
+ 'hi' => 'हिंदी',
+ 'hil' => 'हिलिगेनन',
+ 'hit' => 'हिताइत',
+ 'hmn' => 'ह्मॉंग',
+ 'ho' => 'हिरी मोटू',
+ 'hr' => 'क्रोएशियाई',
+ 'hsb' => 'ऊपरी सॉर्बियन',
+ 'ht' => 'हैतियाई',
+ 'hu' => 'हंगेरियाई',
+ 'hup' => 'हूपा',
+ 'hy' => 'आर्मेनियाई',
+ 'hz' => 'हरैरो',
+ 'ia' => 'ईन्टरलिंगुआ',
+ 'iba' => 'इबान',
+ 'id' => 'इंडोनेशियाई',
+ 'ie' => 'ईन्टरलिंगुइ',
+ 'ig' => 'ईग्बो',
+ 'ii' => 'सिचुआन यी',
+ 'ik' => 'इनुपियाक्',
+ 'ilo' => 'इलोको',
+ 'inh' => 'इंगुश',
+ 'io' => 'इडौ',
+ 'is' => 'आइसलैंडी',
+ 'it' => 'इतालवी',
+ 'iu' => 'इनूकीटूत्',
+ 'ja' => 'जापानी',
+ 'jbo' => 'लोज्बान',
+ 'jgo' => 'नगोंबा',
+ 'jmc' => 'मैकहैमे',
+ 'jpr' => 'जुदेओ-पर्शियन',
+ 'jrb' => 'जुदेओ-अरेबिक',
+ 'jv' => 'जावानीज़',
+ 'ka' => 'जॉर्जियाई',
+ 'kaa' => 'कारा-कल्पक',
+ 'kab' => 'कबाइल',
+ 'kac' => 'काचिन',
+ 'kaj' => 'ज्जु',
+ 'kam' => 'कम्बा',
+ 'kaw' => 'कावी',
+ 'kbd' => 'कबार्डियन',
+ 'kcg' => 'त्याप',
+ 'kde' => 'मैकोंड',
+ 'kea' => 'काबुवेर्दियानु',
+ 'kfo' => 'कोरो',
+ 'kg' => 'कोंगो',
+ 'kha' => 'खासी',
+ 'kho' => 'खोतानीस',
+ 'khq' => 'कोयरा चीनी',
+ 'ki' => 'किकुयू',
+ 'kj' => 'क्वान्यामा',
+ 'kk' => 'कज़ाख़',
+ 'kl' => 'ग्रीनलैंडिक',
+ 'kln' => 'कलेंजिन',
+ 'km' => 'खमेर',
+ 'kmb' => 'किम्बन्दु',
+ 'kn' => 'कन्नड़',
+ 'ko' => 'कोरियाई',
+ 'koi' => 'कोमी-पर्मयाक',
+ 'kok' => 'कोंकणी',
+ 'kos' => 'कोसरैन',
+ 'kpe' => 'क्पेल्लै',
+ 'kr' => 'कनुरी',
+ 'krc' => 'कराचय-बल्कार',
+ 'krl' => 'करेलियन',
+ 'kru' => 'कुरूख',
+ 'ks' => 'कश्मीरी',
+ 'ksb' => 'शम्बाला',
+ 'ksf' => 'बफिआ',
+ 'ku' => 'कुर्दिश',
+ 'kum' => 'कुमीक',
+ 'kut' => 'कुतेनाई',
+ 'kv' => 'कोमी',
+ 'kw' => 'कोर्निश',
+ 'ky' => 'किर्गीज़',
+ 'la' => 'लैटिन',
+ 'lad' => 'लादीनो',
+ 'lag' => 'लांगि',
+ 'lah' => 'लाह्न्डा',
+ 'lam' => 'लाम्बा',
+ 'lb' => 'लग्ज़मबर्गी',
+ 'lez' => 'लेज़्घीयन',
+ 'lg' => 'गांडा',
+ 'li' => 'लिंबर्गिश',
+ 'lkt' => 'लैकोटा',
+ 'ln' => 'लिंगाला',
+ 'lo' => 'लाओ',
+ 'lol' => 'मोंगो',
+ 'loz' => 'लोज़ी',
+ 'lt' => 'लिथुआनियाई',
+ 'lu' => 'ल्यूबा-कटांगा',
+ 'lua' => 'ल्यूबा-लुलुआ',
+ 'lui' => 'लुइसेनो',
+ 'lun' => 'लुन्डा',
+ 'luo' => 'ल्युओ',
+ 'lus' => 'लुशाई',
+ 'luy' => 'ल्युईआ',
+ 'lv' => 'लातवियाई',
+ 'mad' => 'मादुरीस',
+ 'mag' => 'मगाही',
+ 'mai' => 'मैथिली',
+ 'mak' => 'मकासर',
+ 'man' => 'मन्डिन्गो',
+ 'mas' => 'मसाई',
+ 'mdf' => 'मोक्ष',
+ 'mdr' => 'मंधार',
+ 'men' => 'मेन्डे',
+ 'mer' => 'मेरु',
+ 'mfe' => 'मोरीस्येन',
+ 'mg' => 'मालागासी',
+ 'mga' => 'मध्यकाल आइरिश',
+ 'mgh' => 'मैखुवा-मीट्टो',
+ 'mgo' => 'मेटा',
+ 'mh' => 'मार्शलीज़',
+ 'mi' => 'माओरी',
+ 'mic' => 'मिकमैक',
+ 'min' => 'मिनांग्काबाउ',
+ 'mk' => 'मैसिडोनियाई',
+ 'ml' => 'मलयालम',
+ 'mn' => 'मंगोलीयाई',
+ 'mnc' => 'मन्चु',
+ 'mni' => 'मणिपूरी',
+ 'moh' => 'मोहौक',
+ 'mos' => 'मोस्सी',
+ 'mr' => 'मराठी',
+ 'ms' => 'मलय',
+ 'mt' => 'माल्टीज़',
+ 'mua' => 'मुंडैंग',
+ 'mul' => 'विविध भाषाएँ',
+ 'mus' => 'क्रीक',
+ 'mwl' => 'मिरांडी',
+ 'mwr' => 'मारवाड़ी',
+ 'my' => 'बर्मीज़',
+ 'myv' => 'एर्ज़या',
+ 'na' => 'नाउरू',
+ 'nap' => 'नीपोलिटन',
+ 'naq' => 'नामा',
+ 'nb' => 'नॉर्वेजियाई बोकमाल',
+ 'nd' => 'उत्तरी देबेल',
+ 'nds' => 'निचला जर्मन',
+ 'ne' => 'नेपाली',
+ 'new' => 'नेवाड़ी',
+ 'ng' => 'डोन्गा',
+ 'nia' => 'नियास',
+ 'niu' => 'नियुआन',
+ 'nl' => 'डच',
+ 'nl-be' => 'फ़्लेमिश',
+ 'nmg' => 'क्वासिओ',
+ 'nn' => 'नॉर्वेजियाई नॉयनॉर्स्क',
+ 'no' => 'नॉर्वेजियाई',
+ 'nog' => 'नोगाई',
+ 'non' => 'पुराना नॉर्स',
+ 'nqo' => 'एन्को',
+ 'nr' => 'दक्षिण देबेल',
+ 'nso' => 'उत्तरी सोथो',
+ 'nus' => 'नुएर',
+ 'nv' => 'नावाजो',
+ 'nwc' => 'पारम्परिक नेवारी',
+ 'ny' => 'न्यानजा',
+ 'nym' => 'न्यामवेज़ी',
+ 'nyn' => 'न्यानकोल',
+ 'nyo' => 'न्योरो',
+ 'nzi' => 'न्ज़ीमा',
+ 'oc' => 'ओसीटान',
+ 'oj' => 'ओजिब्वा',
+ 'om' => 'ओरोमो',
+ 'or' => 'उड़िया',
+ 'os' => 'ओस्सेटिक',
+ 'osa' => 'ओसेज',
+ 'ota' => 'ओटोमान तुर्किश',
+ 'pa' => 'पंजाबी',
+ 'pag' => 'पंगासीनान',
+ 'pal' => 'पाह्लावी',
+ 'pam' => 'पाम्पान्गा',
+ 'pap' => 'पापियामेन्टो',
+ 'pau' => 'पलोउआन',
+ 'peo' => 'पुरानी फारसी',
+ 'phn' => 'फोएनिशियन',
+ 'pi' => 'पाली',
+ 'pl' => 'पोलिश',
+ 'pon' => 'पोह्नपिएन',
+ 'pro' => 'पुरानी प्रोवेन्सल',
+ 'ps' => 'पश्तो',
+ 'pt' => 'पुर्तगाली',
+ 'pt-br' => 'ब्राज़ीली पुर्तगाली',
+ 'pt-pt' => 'यूरोपीय पुर्तगाली',
+ 'qu' => 'क्वेचुआ',
+ 'quc' => 'किश',
+ 'raj' => 'राजस्थानी',
+ 'rap' => 'रापानुई',
+ 'rar' => 'रारोतोंगन',
+ 'rm' => 'रोमान्श',
+ 'rn' => 'रुन्दी',
+ 'ro' => 'रोमानियाई',
+ 'ro-md' => 'मोलडावियन',
+ 'rof' => 'रोम्बो',
+ 'rom' => 'रोमानी',
+ 'ru' => 'रूसी',
+ 'rup' => 'अरोमानियन',
+ 'rw' => 'किन्यारवांडा',
+ 'rwk' => 'रवा',
+ 'sa' => 'संस्कृत',
+ 'sad' => 'सन्डावे',
+ 'sah' => 'याकूत',
+ 'sam' => 'सामैरिटन अरैमिक',
+ 'saq' => 'सैम्बुरु',
+ 'sas' => 'सासाक',
+ 'sat' => 'संताली',
+ 'sbp' => 'सैंगु',
+ 'sc' => 'सार्दिनियन',
+ 'scn' => 'सिसिलियन',
+ 'sco' => 'स्कॉट्स',
+ 'sd' => 'सिंधी',
+ 'se' => 'नॉर्दन सामी',
+ 'seh' => 'सेना',
+ 'sel' => 'सेल्कप',
+ 'ses' => 'कोयराबोरो सेन्नी',
+ 'sg' => 'सांगो',
+ 'sga' => 'पुरानी आइरिश',
+ 'sh' => 'सेर्बो-क्रोएशन्',
+ 'shi' => 'तैचेल्हित',
+ 'shn' => 'शैन',
+ 'si' => 'सिंहली',
+ 'sid' => 'सिदामो',
+ 'sk' => 'स्लोवाक',
+ 'sl' => 'स्लोवेनियाई',
+ 'sm' => 'सामोन',
+ 'sma' => 'दक्षिण सामी',
+ 'smj' => 'ल्युल सामी',
+ 'smn' => 'इनारी सामी',
+ 'sms' => 'स्कोल्ट सामी',
+ 'sn' => 'शोणा',
+ 'snk' => 'सोनिन्के',
+ 'so' => 'सोमाली',
+ 'sog' => 'सोग्डिएन',
+ 'sq' => 'अल्बानियाई',
+ 'sr' => 'सर्बियाई',
+ 'srn' => 'स्रानान टॉन्गो',
+ 'srr' => 'सेरेर',
+ 'ss' => 'स्वाती',
+ 'st' => 'सेसोथो',
+ 'su' => 'सुंडानी',
+ 'suk' => 'सुकुमा',
+ 'sus' => 'सुसु',
+ 'sux' => 'सुमेरियन',
+ 'sv' => 'स्वीडिश',
+ 'sw' => 'स्वाहिली',
+ 'swb' => 'कोमोरियन',
+ 'swc' => 'कांगो स्वाहिली',
+ 'syc' => 'क्लासिकल सिरिएक',
+ 'syr' => 'सिरिएक',
+ 'ta' => 'तमिल',
+ 'te' => 'तेलुगू',
+ 'tem' => 'टिम्ने',
+ 'teo' => 'टेसो',
+ 'ter' => 'तेरेनो',
+ 'tet' => 'तेतुम',
+ 'tg' => 'ताजिक',
+ 'th' => 'थाई',
+ 'ti' => 'तिग्रीन्या',
+ 'tig' => 'टाइग्रे',
+ 'tiv' => 'तिव',
+ 'tk' => 'तुर्कमेन',
+ 'tkl' => 'तोकेलाऊ',
+ 'tl' => 'तागालोग',
+ 'tlh' => 'क्लिंगन',
+ 'tli' => 'त्लिंगित',
+ 'tmh' => 'तामाशेक',
+ 'tn' => 'सेत्स्वाना',
+ 'to' => 'टोंगन',
+ 'tog' => 'न्यासा टोन्गा',
+ 'tpi' => 'टोक पिसिन',
+ 'tr' => 'तुर्की',
+ 'ts' => 'सोंगा',
+ 'tsi' => 'त्सिमीशियन',
+ 'tt' => 'तातार',
+ 'tum' => 'तम्बूका',
+ 'tvl' => 'तुवालु',
+ 'tw' => 'ट्वी',
+ 'twq' => 'टासवाक',
+ 'ty' => 'ताहितियन',
+ 'tyv' => 'तुवीनियन',
+ 'tzm' => 'मध्य एटलस तमाज़ित',
+ 'udm' => 'उदमुर्त',
+ 'ug' => 'विघुर',
+ 'uga' => 'युगैरिटिक',
+ 'uk' => 'यूक्रेनियाई',
+ 'umb' => 'उम्बुन्डु',
+ 'und' => 'अज्ञात भाषा',
+ 'ur' => 'उर्दू',
+ 'uz' => 'उज़्बेक',
+ 'vai' => 'वाई',
+ 've' => 'वेन्दा',
+ 'vi' => 'वियतनामी',
+ 'vo' => 'वोलापुक',
+ 'vot' => 'वॉटिक',
+ 'vun' => 'वुंजो',
+ 'wa' => 'वाल्लून',
+ 'wal' => 'वलामो',
+ 'war' => 'वारै',
+ 'was' => 'वाशो',
+ 'wo' => 'वोलोफ़',
+ 'xal' => 'काल्मिक',
+ 'xh' => 'ख़ोसा',
+ 'xog' => 'सोगा',
+ 'yao' => 'याओ',
+ 'yap' => 'यापीस',
+ 'yi' => 'येहुदी',
+ 'yo' => 'योरूबा',
+ 'yue' => 'कैंटोनीज़',
+ 'za' => 'ज़ुआंग',
+ 'zap' => 'ज़ेपोटेक',
+ 'zbl' => 'ब्लिसिम्बॉल्स',
+ 'zen' => 'ज़ेनान्गा',
+ 'zgh' => 'मानक मोरक्कन तामाज़ाइट',
+ 'zh' => 'चीनी',
+ 'zh-hans' => 'सरलीकृत चीनी',
+ 'zh-hant' => 'पारंपरिक चीनी',
+ 'zu' => 'ज़ुलू',
+ 'zun' => 'ज़ूनी',
+ 'zxx' => 'कोई भाषा सामग्री नहीं',
+ 'zza' => 'ज़ाज़ा',
+);
+
+$currencyNames = array(
+ 'AED' => 'संयुक्त अरब अमीरात दिरहाम',
+ 'AFA' => 'अफगानी (1927–2002)',
+ 'AFN' => 'अफ़गान अफ़गानी',
+ 'ALL' => 'अल्बानियाई लेक',
+ 'AMD' => 'आर्मेनियाई द्राम',
+ 'ANG' => 'नीदरलैंड एंटीलियन गिल्डर',
+ 'AOA' => 'अंगोला क्वांज़ा',
+ 'ARS' => 'अर्जेंटीनी पीसो',
+ 'AUD' => 'ऑस्ट्रेलियाई डॉलर',
+ 'AWG' => 'अरूबाई फ़्लोरिन',
+ 'AZN' => 'अज़रबैजानी मैनेट',
+ 'BAM' => 'बोस्निया हर्ज़ेगोविना परिवर्तनीय मार्क',
+ 'BBD' => 'बार्बेडियन डॉलर',
+ 'BDT' => 'बांग्लादेशी टका',
+ 'BGN' => 'बुल्गारियाई लेव',
+ 'BHD' => 'बहरीनी दिनार',
+ 'BIF' => 'बुरूंडी फ़्रैंक',
+ 'BMD' => 'बरमूडा डॉलर',
+ 'BND' => 'ब्रूनेई डॉलर',
+ 'BOB' => 'बोलिवियाई बोलिवियानो',
+ 'BRL' => 'ब्राज़ीली रियाल',
+ 'BSD' => 'बहामाई डॉलर',
+ 'BTN' => 'भूटानी नंगलट्रम',
+ 'BWP' => 'बोत्सवानियाई पुला',
+ 'BYR' => 'बेलारूसी रूबल',
+ 'BZD' => 'बेलीज़ डॉलर',
+ 'CAD' => 'कनाडाई डॉलर',
+ 'CDF' => 'कोंगोली फ़्रैंक',
+ 'CHF' => 'स्विस फ़्रैंक',
+ 'CLP' => 'चिली पीसो',
+ 'CNY' => 'चीनी युआन',
+ 'COP' => 'कोलंबियाई पीसो',
+ 'CRC' => 'कोस्टा रिका कोलोन',
+ 'CSD' => 'सर्बिय का ढीनार',
+ 'CUC' => 'क्यूबाई परिवर्तनीय पीसो',
+ 'CUP' => 'क्यूबाई पीसो',
+ 'CVE' => 'केप वर्ड एस्कूडो',
+ 'CYP' => 'साईप्रस पाऊंड',
+ 'CZK' => 'चेक गणराज्य कोरुना',
+ 'DEM' => 'डच मार्क',
+ 'DJF' => 'जिबूती फ़्रैंक',
+ 'DKK' => 'डैनिश क्रोन',
+ 'DOP' => 'डोमिनिकन पीसो',
+ 'DZD' => 'अल्जीरियाई दिनार',
+ 'EEK' => 'एस्टोनियाई क्रून्',
+ 'EGP' => 'मिस्र पाउंड',
+ 'ERN' => 'इरीट्रियन नाक्फ़ा',
+ 'ETB' => 'इथियोपियन बिर',
+ 'EUR' => 'यूरो',
+ 'FJD' => 'फ़िजी डॉलर',
+ 'FKP' => 'फ़ॉकलैंड द्वीपसमूह पाउंड',
+ 'FRF' => 'फ़्रांसीसी फ़्रैंक',
+ 'GBP' => 'ब्रिटिश पाउंड स्टर्लिंग',
+ 'GEL' => 'जॉर्जियन लारी',
+ 'GHS' => 'घानियन सेडी',
+ 'GIP' => 'जिब्राल्टर पाउंड',
+ 'GMD' => 'गैंबियन डलासी',
+ 'GNF' => 'गिनीयन फ़्रैंक',
+ 'GTQ' => 'ग्वाटेमाला क्वेटज़ल',
+ 'GYD' => 'गयानीज़ डॉलर',
+ 'HKD' => 'हाँगकाँग डॉलर',
+ 'HNL' => 'होंडुरन लेम्पिरा',
+ 'HRD' => 'क्रोएशियन दिनार',
+ 'HRK' => 'क्रोएशियाई कुना',
+ 'HTG' => 'हैतियाई गर्ड',
+ 'HUF' => 'हंगेरियन फ़ोरिंट',
+ 'IDR' => 'इंडोनेशियाई रुपिया',
+ 'ILS' => 'इज़राइली न्यू शेकेल',
+ 'INR' => 'भारतीय रुपया',
+ 'IQD' => 'इराकी दिनार',
+ 'IRR' => 'ईरानी रियाल',
+ 'ISK' => 'आइसलैंडिक क्रोना',
+ 'ITL' => 'इतली का लीरा',
+ 'JMD' => 'जमैकन डॉलर',
+ 'JOD' => 'जॉर्डनियन दिनार',
+ 'JPY' => 'जापानी येन',
+ 'KES' => 'केन्याई शिलिंग',
+ 'KGS' => 'किर्गिस्तानी सोम',
+ 'KHR' => 'कंबोडियाई रियाल',
+ 'KMF' => 'कोमोरियन फ़्रैंक',
+ 'KPW' => 'उत्तर कोरियाई वॉन',
+ 'KRW' => 'दक्षिण कोरियाई वॉन',
+ 'KWD' => 'कुवैती दिनार',
+ 'KYD' => 'कैमेन द्वीपसमूह डॉलर',
+ 'KZT' => 'कज़ाखिस्तानी टेंज़',
+ 'LAK' => 'लाओशियन किप',
+ 'LBP' => 'लेबनानी पाउंड',
+ 'LKR' => 'श्रीलंकाई रुपया',
+ 'LRD' => 'लाइबेरियाई डॉलर',
+ 'LSL' => 'लेसोथो लोटी',
+ 'LTL' => 'लिथुआनियाई लितास',
+ 'LVL' => 'लात्वियन लैत्स',
+ 'LYD' => 'लीबियाई दिनार',
+ 'MAD' => 'मोरक्को दिरहम',
+ 'MAF' => 'मोरक्को फ्रैंक',
+ 'MDL' => 'मोल्डोवन लियू',
+ 'MGA' => 'मालागासी आरियरी',
+ 'MKD' => 'मैसीडोनियन दिनार',
+ 'MMK' => 'म्यांमार क्याट',
+ 'MNT' => 'मंगोलियाई टगरिक',
+ 'MOP' => 'मेकानीज़ पाटाका',
+ 'MRO' => 'मॉरीटेनियन ओगुइया',
+ 'MUR' => 'मॉरिशियन रुपया',
+ 'MVR' => 'मालदीवी रुफ़िया',
+ 'MWK' => 'मालावियन क्वाचा',
+ 'MXN' => 'मैक्सिकन पीसो',
+ 'MYR' => 'मलेशियाई रिंगित',
+ 'MZN' => 'मोज़ाम्बिकन मेटिकल',
+ 'NAD' => 'नामीबियाई डॉलर',
+ 'NGN' => 'नाइजीरियाई नाइरा',
+ 'NIO' => 'निकारागुअन कोरडोबा',
+ 'NOK' => 'नॉर्वेजियन क्रोन',
+ 'NPR' => 'नेपाली रुपया',
+ 'NZD' => 'न्यूज़ीलैंड डॉलर',
+ 'OMR' => 'ओमानी रियाल',
+ 'PAB' => 'पनामेनियन बैल्बोआ',
+ 'PEN' => 'पेरूवियन नुएवो सोल',
+ 'PGK' => 'पापुआ न्यू गिनीयन किना',
+ 'PHP' => 'फ़िलिपीनी पीसो',
+ 'PKR' => 'पाकिस्तानी रुपया',
+ 'PLN' => 'पोलिश ज़्लॉटी',
+ 'PYG' => 'पैराग्वियन गुआरानी',
+ 'QAR' => 'क़तरी रियाल',
+ 'RHD' => 'रोडेशियाई डालर',
+ 'RON' => 'रोमानियाई ल्यू',
+ 'RSD' => 'सर्बियन दिनार',
+ 'RUB' => 'रूसी रूबल',
+ 'RWF' => 'रवांडाई फ़्रैंक',
+ 'SAR' => 'सउदी रियाल',
+ 'SBD' => 'सोलोमन द्वीपसमूह डॉलर',
+ 'SCR' => 'सेशेल्सियाई रुपया',
+ 'SDD' => 'पुरानी सूडानी दिनार',
+ 'SDG' => 'सूडानी पाउंड',
+ 'SDP' => 'पुराना सूडानी पाउंड',
+ 'SEK' => 'स्वीडीश क्रोना',
+ 'SGD' => 'सिंगापुर डॉलर',
+ 'SHP' => 'सेंट हेलेना पाउंड',
+ 'SIT' => 'स्लोवेनियाई तोलार',
+ 'SKK' => 'स्लोवाक कोरुना',
+ 'SLL' => 'सिएरा लियोनियन लियोन',
+ 'SOS' => 'सोमाली शिलिंग',
+ 'SRD' => 'सूरीनामी डॉलर',
+ 'SRG' => 'सूरीनामी गिल्डर',
+ 'SSP' => 'दक्षिण सूडानी पाउंड',
+ 'STD' => 'साओ तोम और प्रिंसिपे डोबरा',
+ 'SUR' => 'सोवियत रूबल',
+ 'SYP' => 'सीरियाई पाउंड',
+ 'SZL' => 'स्वाज़ी लिलांजेनी',
+ 'THB' => 'थाई बहत',
+ 'TJR' => 'तजाखी रूबल',
+ 'TJS' => 'ताजिकिस्तानी सोमोनी',
+ 'TMT' => 'तुर्कमेनिस्तानी मैनत',
+ 'TND' => 'ट्यूनीशियाई दिनार',
+ 'TOP' => 'टोंगन पांगा',
+ 'TRL' => 'पुरानी तुर्की लीरा',
+ 'TRY' => 'तुर्की लीरा',
+ 'TTD' => 'त्रिनिदाद और टोबैगो डॉलर',
+ 'TWD' => 'नया ताईवानी डॉलर',
+ 'TZS' => 'तंज़ानियाई शिलिंग',
+ 'UAH' => 'यूक्रेनियन रिव्निया',
+ 'UGX' => 'युगांडाई शिलिंग',
+ 'USD' => 'यूएस डॉलर',
+ 'USN' => 'अमेरीकी डालर (कल)',
+ 'USS' => 'अमेरीकी डालर (आज)',
+ 'UYU' => 'उरुग्वियन पीसो',
+ 'UZS' => 'उज़्बेकिस्तान सोम',
+ 'VEB' => 'वेनेज़ुएला बोलिवर (1871–2008)',
+ 'VEF' => 'वेनेज़ुएला बोलिवर',
+ 'VND' => 'वियतनामी डोंग',
+ 'VUV' => 'वनुआतू वातू',
+ 'WST' => 'समोआई ताला',
+ 'XAF' => '[CFA] फ़्रैंक [BEAC]',
+ 'XCD' => 'पूर्वी कैरिबियाई डॉलर',
+ 'XOF' => '[CFA] फ़्रैंक [BCEAO]',
+ 'XPF' => '[CFP] फ़्रैंक',
+ 'XXX' => 'अज्ञात मुद्रा',
+ 'YER' => 'यमनी रियाल',
+ 'ZAR' => 'दक्षिण अफ़्रीकी रैंड',
+ 'ZMK' => 'ज़ाम्बियन क्वाचा (1968–2012)',
+ 'ZMW' => 'ज़ाम्बियन क्वाचा',
+);
+
+$currencySymbols = array(
+ 'AED' => 'AED',
+ 'AFN' => 'AFN',
+ 'ALL' => 'ALL',
+ 'AMD' => 'AMD',
+ 'ANG' => 'ANG',
+ 'AOA' => 'AOA',
+ 'ARS' => 'ARS',
+ 'AUD' => 'A$',
+ 'AWG' => 'AWG',
+ 'AZN' => 'AZN',
+ 'BAM' => 'BAM',
+ 'BBD' => 'BBD',
+ 'BDT' => 'BDT',
+ 'BGN' => 'BGN',
+ 'BHD' => 'BHD',
+ 'BIF' => 'BIF',
+ 'BMD' => 'BMD',
+ 'BND' => 'BND',
+ 'BOB' => 'BOB',
+ 'BRL' => 'R$',
+ 'BSD' => 'BSD',
+ 'BTN' => 'BTN',
+ 'BWP' => 'BWP',
+ 'BYR' => 'BYR',
+ 'BZD' => 'BZD',
+ 'CAD' => 'CA$',
+ 'CDF' => 'CDF',
+ 'CHF' => 'CHF',
+ 'CLP' => 'CLP',
+ 'CNY' => 'CN¥',
+ 'COP' => 'COP',
+ 'CRC' => 'CRC',
+ 'CUC' => 'CUC',
+ 'CUP' => 'CUP',
+ 'CVE' => 'CVE',
+ 'CZK' => 'CZK',
+ 'DJF' => 'DJF',
+ 'DKK' => 'DKK',
+ 'DOP' => 'DOP',
+ 'DZD' => 'DZD',
+ 'EGP' => 'EGP',
+ 'ERN' => 'ERN',
+ 'ETB' => 'ETB',
+ 'EUR' => '€',
+ 'FJD' => 'FJD',
+ 'FKP' => 'FKP',
+ 'GBP' => '£',
+ 'GEL' => 'GEL',
+ 'GHS' => 'GHS',
+ 'GIP' => 'GIP',
+ 'GMD' => 'GMD',
+ 'GNF' => 'GNF',
+ 'GTQ' => 'GTQ',
+ 'GYD' => 'GYD',
+ 'HKD' => 'HK$',
+ 'HNL' => 'HNL',
+ 'HRK' => 'HRK',
+ 'HTG' => 'HTG',
+ 'HUF' => 'HUF',
+ 'IDR' => 'IDR',
+ 'ILS' => '₪',
+ 'INR' => '₹',
+ 'IQD' => 'IQD',
+ 'IRR' => 'IRR',
+ 'ISK' => 'ISK',
+ 'JMD' => 'JMD',
+ 'JOD' => 'JOD',
+ 'JPY' => 'JP¥',
+ 'KES' => 'KES',
+ 'KGS' => 'KGS',
+ 'KHR' => 'KHR',
+ 'KMF' => 'KMF',
+ 'KPW' => 'KPW',
+ 'KRW' => '₩',
+ 'KWD' => 'KWD',
+ 'KYD' => 'KYD',
+ 'KZT' => 'KZT',
+ 'LAK' => 'LAK',
+ 'LBP' => 'LBP',
+ 'LKR' => 'LKR',
+ 'LRD' => 'LRD',
+ 'LTL' => 'LTL',
+ 'LVL' => 'LVL',
+ 'LYD' => 'LYD',
+ 'MAD' => 'MAD',
+ 'MDL' => 'MDL',
+ 'MGA' => 'MGA',
+ 'MKD' => 'MKD',
+ 'MMK' => 'MMK',
+ 'MNT' => 'MNT',
+ 'MOP' => 'MOP',
+ 'MRO' => 'MRO',
+ 'MUR' => 'MUR',
+ 'MVR' => 'MVR',
+ 'MWK' => 'MWK',
+ 'MXN' => 'MX$',
+ 'MYR' => 'MYR',
+ 'MZN' => 'MZN',
+ 'NAD' => 'NAD',
+ 'NGN' => 'NGN',
+ 'NIO' => 'NIO',
+ 'NOK' => 'NOK',
+ 'NPR' => 'NPR',
+ 'NZD' => 'NZ$',
+ 'OMR' => 'OMR',
+ 'PAB' => 'PAB',
+ 'PEN' => 'PEN',
+ 'PGK' => 'PGK',
+ 'PHP' => 'PHP',
+ 'PKR' => 'PKR',
+ 'PLN' => 'PLN',
+ 'PYG' => 'PYG',
+ 'QAR' => 'QAR',
+ 'RON' => 'RON',
+ 'RSD' => 'RSD',
+ 'RUB' => 'RUB',
+ 'RWF' => 'RWF',
+ 'SAR' => 'SAR',
+ 'SBD' => 'SBD',
+ 'SCR' => 'SCR',
+ 'SDG' => 'SDG',
+ 'SEK' => 'SEK',
+ 'SGD' => 'SGD',
+ 'SHP' => 'SHP',
+ 'SLL' => 'SLL',
+ 'SOS' => 'SOS',
+ 'SRD' => 'SRD',
+ 'SSP' => 'SSP',
+ 'STD' => 'STD',
+ 'SYP' => 'SYP',
+ 'SZL' => 'SZL',
+ 'THB' => '฿',
+ 'TJS' => 'TJS',
+ 'TMT' => 'TMT',
+ 'TND' => 'TND',
+ 'TOP' => 'TOP',
+ 'TRY' => 'TRY',
+ 'TTD' => 'TTD',
+ 'TWD' => 'NT$',
+ 'TZS' => 'TZS',
+ 'UAH' => 'UAH',
+ 'UGX' => 'UGX',
+ 'USD' => '$',
+ 'UYU' => 'UYU',
+ 'UZS' => 'UZS',
+ 'VEF' => 'VEF',
+ 'VND' => '₫',
+ 'VUV' => 'VUV',
+ 'WST' => 'WST',
+ 'XAF' => 'FCFA',
+ 'XCD' => 'EC$',
+ 'XOF' => 'CFA',
+ 'XPF' => 'CFPF',
+ 'YER' => 'YER',
+ 'ZAR' => 'ZAR',
+ 'ZMW' => 'ZMW',
+);
+
+$countryNames = array(
+ 'AC' => 'असेंशन द्वीप',
+ 'AD' => 'एंडोरा',
+ 'AE' => 'संयुक्त अरब अमीरात',
+ 'AF' => 'अफ़गानिस्तान',
+ 'AG' => 'एंटिगुआ और बरबुडा',
+ 'AI' => 'एंग्विला',
+ 'AL' => 'अल्बानिया',
+ 'AM' => 'आर्मेनिया',
+ 'AN' => 'नीदरलैंडी ऐंटील',
+ 'AO' => 'अंगोला',
+ 'AQ' => 'अंटार्कटिका',
+ 'AR' => 'अर्जेंटीना',
+ 'AS' => 'अमेरिकी समोआ',
+ 'AT' => 'ऑस्ट्रिया',
+ 'AU' => 'ऑस्ट्रेलिया',
+ 'AW' => 'अरूबा',
+ 'AX' => 'एलैंड द्वीपसमूह',
+ 'AZ' => 'अज़रबैजान',
+ 'BA' => 'बोस्निया और हर्ज़ेगोविना',
+ 'BB' => 'बारबाडोस',
+ 'BD' => 'बांग्लादेश',
+ 'BE' => 'बेल्जियम',
+ 'BF' => 'बुर्किना फ़ासो',
+ 'BG' => 'बुल्गारिया',
+ 'BH' => 'बहरीन',
+ 'BI' => 'बुरुंडी',
+ 'BJ' => 'बेनिन',
+ 'BL' => 'सेंट बार्थेलेमी',
+ 'BM' => 'बरमूडा',
+ 'BN' => 'ब्रूनेई',
+ 'BO' => 'बोलीविया',
+ 'BQ' => 'कैरिबियन नीदरलैंड',
+ 'BR' => 'ब्राज़ील',
+ 'BS' => 'बहामास',
+ 'BT' => 'भूटान',
+ 'BV' => 'बोवेत द्वीप',
+ 'BW' => 'बोत्स्वाना',
+ 'BY' => 'बेलारूस',
+ 'BZ' => 'बेलीज़',
+ 'CA' => 'कनाडा',
+ 'CC' => 'कोकोस (कीलिंग) द्वीपसमूह',
+ 'CD' => 'कांगो - किंशासा',
+ 'CF' => 'मध्य अफ़्रीकी गणराज्य',
+ 'CG' => 'कांगो – ब्राज़ाविल',
+ 'CH' => 'स्विट्ज़रलैंड',
+ 'CI' => 'कोट डी आइवर',
+ 'CK' => 'कुक द्वीपसमूह',
+ 'CL' => 'चिली',
+ 'CM' => 'कैमरून',
+ 'CN' => 'चीन',
+ 'CO' => 'कोलंबिया',
+ 'CP' => 'क्लिपर्टन द्वीप',
+ 'CR' => 'कोस्टारिका',
+ 'CU' => 'क्यूबा',
+ 'CV' => 'केप वर्ड',
+ 'CW' => 'क्यूरासाओ',
+ 'CX' => 'क्रिसमस द्वीप',
+ 'CY' => 'साइप्रस',
+ 'CZ' => 'चेक गणराज्य',
+ 'DE' => 'जर्मनी',
+ 'DG' => 'डिएगो गार्सिया',
+ 'DJ' => 'जिबूती',
+ 'DK' => 'डेनमार्क',
+ 'DM' => 'डोमिनिका',
+ 'DO' => 'डोमिनिकन गणराज्य',
+ 'DZ' => 'अल्जीरिया',
+ 'EA' => 'सेउटा और मेलिला',
+ 'EC' => 'इक्वाडोर',
+ 'EE' => 'एस्टोनिया',
+ 'EG' => 'मिस्र',
+ 'EH' => 'पश्चिमी सहारा',
+ 'ER' => 'इरिट्रिया',
+ 'ES' => 'स्पेन',
+ 'ET' => 'इथियोपिया',
+ 'EU' => 'यूरोपीय संघ',
+ 'FI' => 'फ़िनलैंड',
+ 'FJ' => 'फ़िजी',
+ 'FK' => 'फ़ॉकलैंड द्वीपसमूह',
+ 'FM' => 'माइक्रोनेशिया',
+ 'FO' => 'फ़ेरो द्वीपसमूह',
+ 'FR' => 'फ़्रांस',
+ 'GA' => 'गैबॉन',
+ 'GB' => 'यू.के.',
+ 'GD' => 'ग्रेनाडा',
+ 'GE' => 'जॉर्जिया',
+ 'GF' => 'फ़्रेंच गयाना',
+ 'GG' => 'गर्नसी',
+ 'GH' => 'घाना',
+ 'GI' => 'जिब्राल्टर',
+ 'GL' => 'ग्रीनलैंड',
+ 'GM' => 'गाम्बिया',
+ 'GN' => 'गिनी',
+ 'GP' => 'ग्वाडेलूप',
+ 'GQ' => 'इक्वेटोरियल गिनी',
+ 'GR' => 'यूनान',
+ 'GS' => 'दक्षिण जॉर्जिया और दक्षिण सैंडविच द्वीपसमूह',
+ 'GT' => 'ग्वाटेमाला',
+ 'GU' => 'गुआम',
+ 'GW' => 'गिनी-बिसाउ',
+ 'GY' => 'गयाना',
+ 'HK' => 'हाँग काँग',
+ 'HM' => 'हर्ड द्वीप और मैकडोनॉल्ड द्वीपसमूह',
+ 'HN' => 'होंडूरास',
+ 'HR' => 'क्रोएशिया',
+ 'HT' => 'हैती',
+ 'HU' => 'हंगरी',
+ 'IC' => 'कैनेरी द्वीपसमूह',
+ 'ID' => 'इंडोनेशिया',
+ 'IE' => 'आयरलैंड',
+ 'IL' => 'इसराइल',
+ 'IM' => 'आइल ऑफ़ मैन',
+ 'IN' => 'भारत',
+ 'IO' => 'ब्रिटिश हिंद महासागरीय क्षेत्र',
+ 'IQ' => 'इराक',
+ 'IR' => 'ईरान',
+ 'IS' => 'आइसलैंड',
+ 'IT' => 'इटली',
+ 'JE' => 'जर्सी',
+ 'JM' => 'जमैका',
+ 'JO' => 'जॉर्डन',
+ 'JP' => 'जापान',
+ 'KE' => 'केन्या',
+ 'KG' => 'किर्गिज़स्तान',
+ 'KH' => 'कंबोडिया',
+ 'KI' => 'किरिबाती',
+ 'KM' => 'कोमोरोस',
+ 'KN' => 'सेंट किट्स और नेविस',
+ 'KP' => 'उत्तर कोरिया',
+ 'KR' => 'दक्षिण कोरिया',
+ 'KW' => 'कुवैत',
+ 'KY' => 'केमैन द्वीपसमूह',
+ 'KZ' => 'कज़ाखस्तान',
+ 'LA' => 'लाओस',
+ 'LB' => 'लेबनान',
+ 'LC' => 'सेंट लूसिया',
+ 'LI' => 'लिचेंस्टीन',
+ 'LK' => 'श्रीलंका',
+ 'LR' => 'लाइबेरिया',
+ 'LS' => 'लेसोथो',
+ 'LT' => 'लिथुआनिया',
+ 'LU' => 'लग्ज़मबर्ग',
+ 'LV' => 'लातविया',
+ 'LY' => 'लीबिया',
+ 'MA' => 'मोरक्को',
+ 'MC' => 'मोनाको',
+ 'MD' => 'मॉल्डोवा',
+ 'ME' => 'मोंटेनेग्रो',
+ 'MF' => 'सेंट मार्टिन',
+ 'MG' => 'मेडागास्कर',
+ 'MH' => 'मार्शल द्वीपसमूह',
+ 'MK' => 'मैसिडोनिया',
+ 'ML' => 'माली',
+ 'MM' => 'म्यांमार (बर्मा)',
+ 'MN' => 'मंगोलिया',
+ 'MO' => 'मकाऊ',
+ 'MP' => 'उत्तरी मारियाना द्वीपसमूह',
+ 'MQ' => 'मार्टीनिक',
+ 'MR' => 'मॉरिटानिया',
+ 'MS' => 'मोंटसेरात',
+ 'MT' => 'माल्टा',
+ 'MU' => 'मॉरिशस',
+ 'MV' => 'मालदीव',
+ 'MW' => 'मलावी',
+ 'MX' => 'मैक्सिको',
+ 'MY' => 'मलेशिया',
+ 'MZ' => 'मोज़ांबिक',
+ 'NA' => 'नामीबिया',
+ 'NC' => 'न्यू कैलेडोनिया',
+ 'NE' => 'नाइजर',
+ 'NF' => 'नॉरफ़ॉक द्वीप',
+ 'NG' => 'नाइजीरिया',
+ 'NI' => 'निकारागुआ',
+ 'NL' => 'नीदरलैंड',
+ 'NO' => 'नॉर्वे',
+ 'NP' => 'नेपाल',
+ 'NR' => 'नाउरु',
+ 'NU' => 'नीयू',
+ 'NZ' => 'न्यूज़ीलैंड',
+ 'OM' => 'ओमान',
+ 'PA' => 'पनामा',
+ 'PE' => 'पेरू',
+ 'PF' => 'फ़्रेंच पोलिनेशिया',
+ 'PG' => 'पापुआ न्यू गिनी',
+ 'PH' => 'फ़िलिपींस',
+ 'PK' => 'पाकिस्तान',
+ 'PL' => 'पोलैंड',
+ 'PM' => 'सेंट पिएरे और मिक्वेलान',
+ 'PN' => 'पिटकैर्न द्वीपसमूह',
+ 'PR' => 'पोर्टो रिको',
+ 'PS' => 'फ़िलिस्तीन',
+ 'PT' => 'पुर्तगाल',
+ 'PW' => 'पलाऊ',
+ 'PY' => 'पेराग्वे',
+ 'QA' => 'क़तर',
+ 'QO' => 'आउटलाइंग ओशिनिया',
+ 'RE' => 'रियूनियन',
+ 'RO' => 'रोमानिया',
+ 'RS' => 'सर्बिया',
+ 'RU' => 'रूस',
+ 'RW' => 'रवांडा',
+ 'SA' => 'सऊदी अरब',
+ 'SB' => 'सोलोमन द्वीपसमूह',
+ 'SC' => 'सेशेल्स',
+ 'SD' => 'सूडान',
+ 'SE' => 'स्वीडन',
+ 'SG' => 'सिंगापुर',
+ 'SH' => 'सेंट हेलेना',
+ 'SI' => 'स्लोवेनिया',
+ 'SJ' => 'स्वालबार्ड और जान मायेन',
+ 'SK' => 'स्लोवाकिया',
+ 'SL' => 'सिएरा लियोन',
+ 'SM' => 'सैन मेरीनो',
+ 'SN' => 'सेनेगल',
+ 'SO' => 'सोमालिया',
+ 'SR' => 'सूरीनाम',
+ 'SS' => 'दक्षिण सूडान',
+ 'ST' => 'साओ टोम और प्रिंसिपे',
+ 'SV' => 'अल सल्वाडोर',
+ 'SX' => 'सिंट मार्टिन',
+ 'SY' => 'सीरिया',
+ 'SZ' => 'स्वाज़ीलैंड',
+ 'TA' => 'त्रिस्टान डा कुना',
+ 'TC' => 'तुर्क और कैकोज़ द्वीपसमूह',
+ 'TD' => 'चाड',
+ 'TF' => 'फ़्रांसीसी दक्षिणी क्षेत्र',
+ 'TG' => 'टोगो',
+ 'TH' => 'थाईलैंड',
+ 'TJ' => 'ताजिकिस्तान',
+ 'TK' => 'तोकेलाउ',
+ 'TL' => 'तिमोर-लेस्त',
+ 'TM' => 'तुर्कमेनिस्तान',
+ 'TN' => 'ट्यूनीशिया',
+ 'TO' => 'टोंगा',
+ 'TR' => 'तुर्की',
+ 'TT' => 'त्रिनिदाद और टोबैगो',
+ 'TV' => 'तुवालू',
+ 'TW' => 'ताइवान',
+ 'TZ' => 'तंज़ानिया',
+ 'UA' => 'यूक्रेन',
+ 'UG' => 'युगांडा',
+ 'UM' => 'यू.एस. आउटलाइंग द्वीपसमूह',
+ 'US' => 'अमेरिका',
+ 'UY' => 'उरूग्वे',
+ 'UZ' => 'उज़्बेकिस्तान',
+ 'VA' => 'वेटिकन सिटी',
+ 'VC' => 'सेंट विंसेंट और ग्रेनाडाइंस',
+ 'VE' => 'वेनेज़ुएला',
+ 'VG' => 'ब्रिटिश वर्जिन द्वीपसमूह',
+ 'VI' => 'यू.एस. वर्जिन द्वीपसमूह',
+ 'VN' => 'वियतनाम',
+ 'VU' => 'वनुआतू',
+ 'WF' => 'वालिस और फ़्यूचूना',
+ 'WS' => 'समोआ',
+ 'XK' => 'कोसोवो',
+ 'YE' => 'यमन',
+ 'YT' => 'मायोते',
+ 'ZA' => 'दक्षिण अफ़्रीका',
+ 'ZM' => 'ज़ाम्बिया',
+ 'ZW' => 'ज़िम्बाब्वे',
+);
+
+$timeUnits = array(
+ 'day-future-one' => '{0} दिन में',
+ 'day-future-other' => '{0} दिन में',
+ 'day-narrow-future-one' => '{0} दिन में',
+ 'day-narrow-future-other' => '{0} दिन में',
+ 'day-narrow-past-one' => '{0} दिन पहले',
+ 'day-narrow-past-other' => '{0} दिन पहले',
+ 'day-one' => '{0} दिन',
+ 'day-other' => '{0} दिन',
+ 'day-past-one' => '{0} दिन पहले',
+ 'day-past-other' => '{0} दिन पहले',
+ 'day-short-future-one' => '{0} दिन में',
+ 'day-short-future-other' => '{0} दिन में',
+ 'day-short-past-one' => '{0} दिन पहले',
+ 'day-short-past-other' => '{0} दिन पहले',
+ 'hour-future-one' => '{0} घंटे में',
+ 'hour-future-other' => '{0} घंटे में',
+ 'hour-narrow-future-one' => '{0} घं. में',
+ 'hour-narrow-future-other' => '{0} घं. में',
+ 'hour-narrow-past-one' => '{0} घं. पहले',
+ 'hour-narrow-past-other' => '{0} घं. पहले',
+ 'hour-one' => '{0} घंटा',
+ 'hour-other' => '{0} घंटे',
+ 'hour-past-one' => '{0} घंटे पहले',
+ 'hour-past-other' => '{0} घंटे पहले',
+ 'hour-short-future-one' => '{0} घं. में',
+ 'hour-short-future-other' => '{0} घं. में',
+ 'hour-short-past-one' => '{0} घं. पहले',
+ 'hour-short-past-other' => '{0} घं. पहले',
+ 'microsecond-one' => '{0} माइक्रोसेकंड',
+ 'microsecond-other' => '{0} माइक्रोसेकंड',
+ 'millisecond-one' => '{0} मिलीसेकंड',
+ 'millisecond-other' => '{0} मिलीसेकंड',
+ 'minute-future-one' => '{0} मिनट में',
+ 'minute-future-other' => '{0} मिनट में',
+ 'minute-narrow-future-one' => '{0} मि. में',
+ 'minute-narrow-future-other' => '{0} मि. में',
+ 'minute-narrow-past-one' => '{0} मि. पहले',
+ 'minute-narrow-past-other' => '{0} मि. पहले',
+ 'minute-one' => '{0} मिनट',
+ 'minute-other' => '{0} मिनट',
+ 'minute-past-one' => '{0} मिनट पहले',
+ 'minute-past-other' => '{0} मिनट पहले',
+ 'minute-short-future-one' => '{0} मि. में',
+ 'minute-short-future-other' => '{0} मि. में',
+ 'minute-short-past-one' => '{0} मि. पहले',
+ 'minute-short-past-other' => '{0} मि. पहले',
+ 'month-future-one' => '{0} माह में',
+ 'month-future-other' => '{0} माह में',
+ 'month-narrow-future-one' => '{0} माह में',
+ 'month-narrow-future-other' => '{0} माह में',
+ 'month-narrow-past-one' => '{0} माह पहले',
+ 'month-narrow-past-other' => '{0} माह पहले',
+ 'month-one' => '{0} माह',
+ 'month-other' => '{0} माह',
+ 'month-past-one' => '{0} माह पहले',
+ 'month-past-other' => '{0} माह पहले',
+ 'month-short-future-one' => '{0} माह में',
+ 'month-short-future-other' => '{0} माह में',
+ 'month-short-past-one' => '{0} माह पहले',
+ 'month-short-past-other' => '{0} माह पहले',
+ 'nanosecond-one' => '{0} नैनो सेकंड',
+ 'nanosecond-other' => '{0} नैनो सेकंड',
+ 'quarter-future-one' => '{0} तिमाही में',
+ 'quarter-future-other' => '{0} तिमाहियों में',
+ 'quarter-narrow-future-one' => '{0} ति. में',
+ 'quarter-narrow-future-other' => '{0} ति. में',
+ 'quarter-narrow-past-one' => '{0} ति. पहले',
+ 'quarter-narrow-past-other' => '{0} ति. पहले',
+ 'quarter-past-one' => '{0} तिमाही पहले',
+ 'quarter-past-other' => '{0} तिमाही पहले',
+ 'quarter-short-future-one' => '{0} तिमाही में',
+ 'quarter-short-future-other' => '{0} तिमाहियों में',
+ 'quarter-short-past-one' => '{0} तिमाही पहले',
+ 'quarter-short-past-other' => '{0} तिमाहियों पहले',
+ 'second-future-one' => '{0} सेकंड में',
+ 'second-future-other' => '{0} सेकंड में',
+ 'second-narrow-future-one' => '{0} से. में',
+ 'second-narrow-future-other' => '{0} से. में',
+ 'second-narrow-past-one' => '{0} से. पहले',
+ 'second-narrow-past-other' => '{0} से. पहले',
+ 'second-one' => '{0} सेकंड',
+ 'second-other' => '{0} सेकंड',
+ 'second-past-one' => '{0} सेकंड पहले',
+ 'second-past-other' => '{0} सेकंड पहले',
+ 'second-short-future-one' => '{0} से. में',
+ 'second-short-future-other' => '{0} से. में',
+ 'second-short-past-one' => '{0} से. पहले',
+ 'second-short-past-other' => '{0} से. पहले',
+ 'week-future-one' => '{0} सप्ताह में',
+ 'week-future-other' => '{0} सप्ताह में',
+ 'week-narrow-future-one' => '{0} सप्ताह में',
+ 'week-narrow-future-other' => '{0} सप्ताह में',
+ 'week-narrow-past-one' => '{0} सप्ताह पहले',
+ 'week-narrow-past-other' => '{0} सप्ताह पहले',
+ 'week-one' => '{0} सप्ताह',
+ 'week-other' => '{0} सप्ताह',
+ 'week-past-one' => '{0} सप्ताह पहले',
+ 'week-past-other' => '{0} सप्ताह पहले',
+ 'week-short-future-one' => '{0} सप्ताह में',
+ 'week-short-future-other' => '{0} सप्ताह में',
+ 'week-short-past-one' => '{0} सप्ताह पहले',
+ 'week-short-past-other' => '{0} सप्ताह पहले',
+ 'year-future-one' => '{0} वर्ष में',
+ 'year-future-other' => '{0} वर्ष में',
+ 'year-narrow-future-one' => '{0} वर्ष में',
+ 'year-narrow-future-other' => '{0} वर्ष में',
+ 'year-narrow-past-one' => '{0} वर्ष पहले',
+ 'year-narrow-past-other' => '{0} वर्ष पहले',
+ 'year-one' => '{0} वर्ष',
+ 'year-other' => '{0} वर्ष',
+ 'year-past-one' => '{0} वर्ष पहले',
+ 'year-past-other' => '{0} वर्ष पहले',
+ 'year-short-future-one' => '{0} वर्ष में',
+ 'year-short-future-other' => '{0} वर्ष में',
+ 'year-short-past-one' => '{0} वर्ष पहले',
+ 'year-short-past-other' => '{0} वर्ष पहले',
+);
diff --git a/MLEB/cldr/CldrNames/CldrNamesHr.php b/MLEB/cldr/CldrNames/CldrNamesHr.php
new file mode 100644
index 00000000..5a41866b
--- /dev/null
+++ b/MLEB/cldr/CldrNames/CldrNamesHr.php
@@ -0,0 +1,1557 @@
+<?php
+
+$languageNames = array(
+ 'aa' => 'afarski',
+ 'ab' => 'abhaski',
+ 'ace' => 'achinese',
+ 'ach' => 'acoli',
+ 'ada' => 'adangme',
+ 'ady' => 'adigejski',
+ 'ae' => 'avestan',
+ 'af' => 'afrikaans',
+ 'afh' => 'afrihili',
+ 'agq' => 'aghem',
+ 'ain' => 'ainu',
+ 'ak' => 'akanski',
+ 'akk' => 'akkadian',
+ 'ale' => 'aleutski',
+ 'alt' => 'južni altai',
+ 'am' => 'amharski',
+ 'an' => 'aragonski',
+ 'ang' => 'staroengleski',
+ 'anp' => 'angika',
+ 'ar' => 'arapski',
+ 'ar-001' => 'moderni standardni arapski',
+ 'arc' => 'aramejski',
+ 'arn' => 'araukanski',
+ 'arp' => 'arapaho',
+ 'arw' => 'arawak',
+ 'as' => 'asamski',
+ 'asa' => 'asu',
+ 'ast' => 'asturijski',
+ 'av' => 'avarski',
+ 'awa' => 'awadhi',
+ 'ay' => 'aymara',
+ 'az' => 'azerbajdžanski',
+ 'ba' => 'baškirski',
+ 'bal' => 'baluchi',
+ 'ban' => 'balinezijski',
+ 'bas' => 'basa',
+ 'bax' => 'bamunski',
+ 'bbj' => 'ghomala',
+ 'be' => 'bjeloruski',
+ 'bej' => 'beja',
+ 'bem' => 'bemba',
+ 'bez' => 'bena',
+ 'bfd' => 'bafut',
+ 'bg' => 'bugarski',
+ 'bho' => 'bhojpuri',
+ 'bi' => 'bislama',
+ 'bik' => 'bikol',
+ 'bin' => 'bini',
+ 'bkm' => 'kom',
+ 'bla' => 'siksika',
+ 'bm' => 'bambara',
+ 'bn' => 'bengalski',
+ 'bo' => 'tibetanski',
+ 'br' => 'bretonski',
+ 'bra' => 'braj',
+ 'brx' => 'bodo',
+ 'bs' => 'bosanski',
+ 'bss' => 'akoose',
+ 'bua' => 'buriat',
+ 'bug' => 'buginski',
+ 'bum' => 'bulu',
+ 'byn' => 'blin',
+ 'byv' => 'medumba',
+ 'ca' => 'katalonski',
+ 'cad' => 'caddo',
+ 'car' => 'karipski',
+ 'cay' => 'cayuga',
+ 'cch' => 'atsam',
+ 'ce' => 'čečenski',
+ 'ceb' => 'cebuano',
+ 'cgg' => 'chiga',
+ 'ch' => 'chamorro',
+ 'chb' => 'chibcha',
+ 'chg' => 'chagatai',
+ 'chk' => 'chuukese',
+ 'chm' => 'mari',
+ 'chn' => 'chinook žargon',
+ 'cho' => 'choctaw',
+ 'chp' => 'chipewyan',
+ 'chr' => 'čeroki',
+ 'chy' => 'čejenski',
+ 'ckb' => 'soranski kurdski',
+ 'co' => 'korzički',
+ 'cop' => 'koptski',
+ 'cr' => 'cree',
+ 'crh' => 'krimski turski',
+ 'cs' => 'češki',
+ 'csb' => 'kašupski',
+ 'cu' => 'crkvenoslavenski',
+ 'cv' => 'chuvash',
+ 'cy' => 'velški',
+ 'da' => 'danski',
+ 'dak' => 'dakota jezik',
+ 'dar' => 'dargwa',
+ 'dav' => 'taita',
+ 'de' => 'njemački',
+ 'de-at' => 'austrijski njemački',
+ 'de-ch' => 'gornjonjemački (švicarski)',
+ 'del' => 'delavarski',
+ 'den' => 'slave',
+ 'dgr' => 'dogrib',
+ 'din' => 'dinka',
+ 'dje' => 'zarma',
+ 'doi' => 'dogri',
+ 'dsb' => 'lužičkosrpski',
+ 'dua' => 'duala',
+ 'dum' => 'nizozemski, srednji',
+ 'dv' => 'divehi',
+ 'dyo' => 'jola-fonyi',
+ 'dyu' => 'dyula',
+ 'dz' => 'dzongkha',
+ 'dzg' => 'dazaga',
+ 'ebu' => 'embu',
+ 'ee' => 'ewe',
+ 'efi' => 'efik',
+ 'egy' => 'staroegipatski',
+ 'eka' => 'ekajuk',
+ 'el' => 'grčki',
+ 'elx' => 'elamitski',
+ 'en' => 'engleski',
+ 'en-au' => 'australski engleski',
+ 'en-ca' => 'kanadski engleski',
+ 'en-gb' => 'britanski engleski',
+ 'en-us' => 'američki engleski',
+ 'enm' => 'engleski, srednji',
+ 'eo' => 'esperanto',
+ 'es' => 'španjolski',
+ 'es-419' => 'latinoamerički španjolski',
+ 'es-es' => 'europski španjolski',
+ 'es-mx' => 'meksički španjolski',
+ 'et' => 'estonski',
+ 'eu' => 'baskijski',
+ 'ewo' => 'ewondo',
+ 'fa' => 'perzijski',
+ 'fan' => 'fang',
+ 'fat' => 'fanti',
+ 'ff' => 'fulah',
+ 'fi' => 'finski',
+ 'fil' => 'filipino',
+ 'fj' => 'fidžijski',
+ 'fo' => 'ferojski',
+ 'fon' => 'fon',
+ 'fr' => 'francuski',
+ 'fr-ca' => 'kanadski francuski',
+ 'fr-ch' => 'švicarski francuski',
+ 'frm' => 'francuski, srednji',
+ 'fro' => 'starofrancuski',
+ 'frr' => 'sjevernofrizijski',
+ 'frs' => 'istočnofrizijski',
+ 'fur' => 'friulski',
+ 'fy' => 'zapadnofrizijski',
+ 'ga' => 'irski',
+ 'gaa' => 'ga',
+ 'gag' => 'gagauski',
+ 'gay' => 'gayo',
+ 'gba' => 'gbaya',
+ 'gd' => 'škotski-galski',
+ 'gez' => 'staroetiopski',
+ 'gil' => 'gilbertski',
+ 'gl' => 'galicijski',
+ 'gmh' => 'njemački, srednji visoki',
+ 'gn' => 'guarani',
+ 'goh' => 'staronjemački, visoki',
+ 'gon' => 'gondi',
+ 'gor' => 'gorontalo',
+ 'got' => 'gothic',
+ 'grb' => 'grebo',
+ 'grc' => 'starogrčki',
+ 'gsw' => 'švicarski njemački',
+ 'gu' => 'gudžaratski',
+ 'guz' => 'gusii',
+ 'gv' => 'manski',
+ 'gwi' => 'gwich’in',
+ 'ha' => 'hausa',
+ 'hai' => 'haidi',
+ 'haw' => 'havajski',
+ 'he' => 'hebrejski',
+ 'hi' => 'hindski',
+ 'hil' => 'hiligaynon',
+ 'hit' => 'hetitski',
+ 'hmn' => 'hmong',
+ 'ho' => 'hiri motu',
+ 'hr' => 'hrvatski',
+ 'hsb' => 'gornjolužički',
+ 'ht' => 'kreolski',
+ 'hu' => 'mađarski',
+ 'hup' => 'hupa',
+ 'hy' => 'armenski',
+ 'hz' => 'herero',
+ 'ia' => 'interlingua',
+ 'iba' => 'iban',
+ 'ibb' => 'ibibio',
+ 'id' => 'indonezijski',
+ 'ie' => 'interligua',
+ 'ig' => 'igbo',
+ 'ii' => 'sichuan yi',
+ 'ik' => 'inupiaq',
+ 'ilo' => 'iloko',
+ 'inh' => 'ingušetski',
+ 'io' => 'ido',
+ 'is' => 'islandski',
+ 'it' => 'talijanski',
+ 'iu' => 'inuktitut',
+ 'ja' => 'japanski',
+ 'jbo' => 'lojban',
+ 'jgo' => 'ngomba',
+ 'jmc' => 'machame',
+ 'jpr' => 'judejsko-perzijski',
+ 'jrb' => 'judejsko-arapski',
+ 'jv' => 'javanski',
+ 'ka' => 'gruzijski',
+ 'kaa' => 'kara-kalpak',
+ 'kab' => 'kabilski',
+ 'kac' => 'kachin',
+ 'kaj' => 'kaje',
+ 'kam' => 'kamba',
+ 'kaw' => 'kawi',
+ 'kbd' => 'kabardian',
+ 'kbl' => 'kanembu',
+ 'kcg' => 'tyap',
+ 'kde' => 'makonde',
+ 'kea' => 'zelenortski',
+ 'kfo' => 'koro',
+ 'kg' => 'kongo',
+ 'kha' => 'khasi',
+ 'kho' => 'khotanese',
+ 'khq' => 'koyra chiini',
+ 'ki' => 'kikuyu',
+ 'kj' => 'kuanyama',
+ 'kk' => 'kazaški',
+ 'kkj' => 'kako',
+ 'kl' => 'kalaallisut',
+ 'kln' => 'kalenjin',
+ 'km' => 'kmerski',
+ 'kmb' => 'kimbundu',
+ 'kn' => 'kannadski',
+ 'ko' => 'korejski',
+ 'koi' => 'komski ili permski',
+ 'kok' => 'konkani',
+ 'kos' => 'naurski',
+ 'kpe' => 'kpelle',
+ 'kr' => 'kanuri',
+ 'krc' => 'karachay-balkar',
+ 'krl' => 'karelijski',
+ 'kru' => 'kuruški',
+ 'ks' => 'kašmirski',
+ 'ksb' => 'shambala',
+ 'ksf' => 'bafia',
+ 'ksh' => 'kelnski',
+ 'ku' => 'kurdski',
+ 'kum' => 'kumyk',
+ 'kut' => 'kutenai',
+ 'kv' => 'komi',
+ 'kw' => 'kornski',
+ 'ky' => 'kirgiški',
+ 'la' => 'latinski',
+ 'lad' => 'ladino',
+ 'lag' => 'langi',
+ 'lah' => 'lahnda',
+ 'lam' => 'lamba',
+ 'lb' => 'luksemburški',
+ 'lez' => 'lezgiški',
+ 'lg' => 'ganda',
+ 'li' => 'limburgish',
+ 'lkt' => 'lakota',
+ 'ln' => 'lingala',
+ 'lo' => 'laoski',
+ 'lol' => 'mongo',
+ 'loz' => 'lozi',
+ 'lt' => 'litavski',
+ 'lu' => 'luba-katanga',
+ 'lua' => 'luba-lulua',
+ 'lui' => 'luiseno',
+ 'lun' => 'lunda',
+ 'luo' => 'luo',
+ 'lus' => 'lushai',
+ 'luy' => 'luyia',
+ 'lv' => 'latvijski',
+ 'mad' => 'madurski',
+ 'maf' => 'mafa',
+ 'mag' => 'magahi',
+ 'mai' => 'maithili',
+ 'mak' => 'makasar',
+ 'man' => 'mandingo',
+ 'mas' => 'masajski',
+ 'mde' => 'maba',
+ 'mdf' => 'moksha',
+ 'mdr' => 'mandar',
+ 'men' => 'mende',
+ 'mer' => 'meru',
+ 'mfe' => 'mauricijski kreolski',
+ 'mg' => 'malgaški',
+ 'mga' => 'irski, srednji',
+ 'mgh' => 'makhuwa-meetto',
+ 'mgo' => 'meta’',
+ 'mh' => 'maršalski',
+ 'mi' => 'maorski',
+ 'mic' => 'micmac',
+ 'min' => 'minangkabau',
+ 'mk' => 'makedonski',
+ 'ml' => 'malajalamski',
+ 'mn' => 'mongolski',
+ 'mnc' => 'mandžurski',
+ 'mni' => 'manipurski',
+ 'moh' => 'mohawk',
+ 'mos' => 'mossi',
+ 'mr' => 'marathski',
+ 'ms' => 'malajski',
+ 'mt' => 'malteški',
+ 'mua' => 'mundang',
+ 'mul' => 'više jezika',
+ 'mus' => 'creek',
+ 'mwl' => 'mirandski',
+ 'mwr' => 'marwari',
+ 'my' => 'burmanski',
+ 'mye' => 'myene',
+ 'myv' => 'mordvinski',
+ 'na' => 'nauru',
+ 'nap' => 'napolitanski',
+ 'naq' => 'nama',
+ 'nb' => 'književni norveški',
+ 'nd' => 'sjeverni ndebele',
+ 'nds' => 'donjonjemački',
+ 'ne' => 'nepalski',
+ 'new' => 'newari',
+ 'ng' => 'ndonga',
+ 'nia' => 'nias',
+ 'niu' => 'niujski',
+ 'nl' => 'nizozemski',
+ 'nl-be' => 'flamanski',
+ 'nmg' => 'kwasio',
+ 'nn' => 'novonorveški',
+ 'nnh' => 'ngiemboon',
+ 'no' => 'norveški',
+ 'nog' => 'nogajski',
+ 'non' => 'staronorveški',
+ 'nqo' => 'n’ko',
+ 'nr' => 'južni ndebele',
+ 'nso' => 'sjeverni sotho',
+ 'nus' => 'nuer',
+ 'nv' => 'navajo',
+ 'nwc' => 'klasični newari',
+ 'ny' => 'nyanja',
+ 'nym' => 'nyamwezi',
+ 'nyn' => 'nyankole',
+ 'nyo' => 'nyoro',
+ 'nzi' => 'nzima',
+ 'oc' => 'okcitanski',
+ 'oj' => 'ojibwa',
+ 'om' => 'oromski',
+ 'or' => 'orijski',
+ 'os' => 'osetski',
+ 'osa' => 'osage',
+ 'ota' => 'turski - otomanski',
+ 'pa' => 'pandžapski',
+ 'pag' => 'pangasinan',
+ 'pal' => 'pahlavi',
+ 'pam' => 'pampanga',
+ 'pap' => 'papiamento',
+ 'pau' => 'palauanski',
+ 'peo' => 'staroperzijski',
+ 'phn' => 'fenički',
+ 'pi' => 'pali',
+ 'pl' => 'poljski',
+ 'pon' => 'pohnpeian',
+ 'pro' => 'staroprovansalski',
+ 'ps' => 'paštu',
+ 'pt' => 'portugalski',
+ 'pt-br' => 'brazilski portugalski',
+ 'pt-pt' => 'europski portugalski',
+ 'qu' => 'kečua',
+ 'quc' => 'kiče',
+ 'raj' => 'rajasthani',
+ 'rap' => 'rapa nui',
+ 'rar' => 'rarotonški',
+ 'rm' => 'romanš',
+ 'rn' => 'rundi',
+ 'ro' => 'rumunjski',
+ 'ro-md' => 'moldavski',
+ 'rof' => 'rombo',
+ 'rom' => 'romski',
+ 'ru' => 'ruski',
+ 'rup' => 'aromunski',
+ 'rw' => 'kinyarwanda',
+ 'rwk' => 'rwa',
+ 'sa' => 'sanskrtski',
+ 'sad' => 'sandawe',
+ 'sah' => 'jakutski',
+ 'sam' => 'samarijanski aramejski',
+ 'saq' => 'samburu',
+ 'sas' => 'sasak',
+ 'sat' => 'santali',
+ 'sba' => 'ngambay',
+ 'sbp' => 'sangu',
+ 'sc' => 'sardski',
+ 'scn' => 'sicilijski',
+ 'sco' => 'škotski',
+ 'sd' => 'sindhi',
+ 'se' => 'južni sami',
+ 'see' => 'seneca',
+ 'seh' => 'sena',
+ 'sel' => 'selkupski',
+ 'ses' => 'koyraboro senni',
+ 'sg' => 'sango',
+ 'sga' => 'staroirski',
+ 'sh' => 'srpsko-hrvatski',
+ 'shi' => 'tachelhit',
+ 'shn' => 'shan',
+ 'shu' => 'čadski arapski',
+ 'si' => 'sinhaleški',
+ 'sid' => 'sidamo',
+ 'sk' => 'slovački',
+ 'sl' => 'slovenski',
+ 'sm' => 'samoanski',
+ 'sma' => 'sjeverni sami',
+ 'smj' => 'lule sami',
+ 'smn' => 'inari sami',
+ 'sms' => 'skolt sami',
+ 'sn' => 'shona',
+ 'snk' => 'soninke',
+ 'so' => 'somalski',
+ 'sog' => 'sogdien',
+ 'sq' => 'albanski',
+ 'sr' => 'srpski',
+ 'srn' => 'sranan tongo',
+ 'srr' => 'serer',
+ 'ss' => 'svati',
+ 'ssy' => 'saho',
+ 'st' => 'sesotski',
+ 'su' => 'sundanski',
+ 'suk' => 'sukuma',
+ 'sus' => 'susu',
+ 'sux' => 'sumerski',
+ 'sv' => 'švedski',
+ 'sw' => 'svahili',
+ 'swb' => 'komorski',
+ 'swc' => 'kongoanski swahili',
+ 'syc' => 'klasični sirski',
+ 'syr' => 'sirijski',
+ 'ta' => 'tamilski',
+ 'te' => 'telugu',
+ 'tem' => 'temne',
+ 'teo' => 'teso',
+ 'ter' => 'tereno',
+ 'tet' => 'tetum',
+ 'tg' => 'tadžički',
+ 'th' => 'tajlandski',
+ 'ti' => 'tigrinja',
+ 'tig' => 'tigriški',
+ 'tiv' => 'tiv',
+ 'tk' => 'turkmenski',
+ 'tkl' => 'tokelaunski',
+ 'tl' => 'tagalog',
+ 'tlh' => 'klingonski',
+ 'tli' => 'tlingit',
+ 'tmh' => 'tamashek',
+ 'tn' => 'cvana',
+ 'to' => 'tonganski',
+ 'tog' => 'nyasa tonga',
+ 'tpi' => 'tok pisin',
+ 'tr' => 'turski',
+ 'trv' => 'taroko',
+ 'ts' => 'tsonga',
+ 'tsi' => 'tsimshian',
+ 'tt' => 'tatarski',
+ 'tum' => 'tumbuka',
+ 'tvl' => 'tuvaluanski',
+ 'tw' => 'twi',
+ 'twq' => 'tasawaq',
+ 'ty' => 'tahićanski',
+ 'tyv' => 'tuvinian',
+ 'tzm' => 'marokanski tamazight',
+ 'udm' => 'udmurtski',
+ 'ug' => 'ujgurski',
+ 'uga' => 'ugaritski',
+ 'uk' => 'ukrajinski',
+ 'umb' => 'umbundu',
+ 'und' => 'nepoznati jezik',
+ 'ur' => 'urdski',
+ 'uz' => 'uzbečki',
+ 'vai' => 'vai',
+ 've' => 'venda',
+ 'vi' => 'vijetnamski',
+ 'vo' => 'volapük',
+ 'vot' => 'votic',
+ 'vun' => 'vunjo',
+ 'wa' => 'valonski',
+ 'wae' => 'walser',
+ 'wal' => 'walamo',
+ 'war' => 'waray',
+ 'was' => 'washo',
+ 'wo' => 'wolof',
+ 'xal' => 'kalmyk',
+ 'xh' => 'xhosa',
+ 'xog' => 'soga',
+ 'yao' => 'yao',
+ 'yap' => 'japski',
+ 'yav' => 'yangben',
+ 'ybb' => 'yemba',
+ 'yi' => 'jidiš',
+ 'yo' => 'joruba',
+ 'yue' => 'kantonski',
+ 'za' => 'zhuang',
+ 'zap' => 'zapotec',
+ 'zbl' => 'blissymbols',
+ 'zen' => 'zenaga',
+ 'zgh' => 'standardni marokanski tamazight',
+ 'zh' => 'kineski',
+ 'zh-hans' => 'kineski (pojednostavljeni)',
+ 'zh-hant' => 'kineski (tradicionalni)',
+ 'zu' => 'zulu',
+ 'zun' => 'zuni',
+ 'zxx' => 'bez jezičnog sadržaja',
+ 'zza' => 'zazaki',
+);
+
+$currencyNames = array(
+ 'ADP' => 'andorska pezeta',
+ 'AED' => 'UAE dirham',
+ 'AFA' => 'afganistanski afgani (1927.–2002.)',
+ 'AFN' => 'afganistanski afgani',
+ 'ALK' => 'stari albanski lek',
+ 'ALL' => 'albanski lek',
+ 'AMD' => 'armenski dram',
+ 'ANG' => 'nizozemskoantilski gulden',
+ 'AOA' => 'angolska kvanza',
+ 'AOK' => 'angolska kvanza (1977.–1990.)',
+ 'AON' => 'angolska nova kvanza (1990.–2000.)',
+ 'AOR' => 'angolska kvanza (1995.–1999.)',
+ 'ARA' => 'argentinski austral',
+ 'ARL' => 'argentinski pezo lej (1970.–1983.)',
+ 'ARM' => 'argentinski pezo (1881.–1970.)',
+ 'ARP' => 'argentinski pezo (1983.–1985.)',
+ 'ARS' => 'argentinski pezo',
+ 'ATS' => 'austrijski šiling',
+ 'AUD' => 'australski dolar',
+ 'AWG' => 'arupski florin',
+ 'AZM' => 'azerbajdžanski manat (1993.–2006.)',
+ 'AZN' => 'azerbajdžanski manat',
+ 'BAD' => 'bosansko-hercegovački dinar',
+ 'BAM' => 'konvertibilna marka',
+ 'BAN' => 'bosansko-hercegovački novi dinar',
+ 'BBD' => 'barbadoski dolar',
+ 'BDT' => 'bangladeška taka',
+ 'BEC' => 'belgijski franak (konvertibilan)',
+ 'BEF' => 'belgijski franak',
+ 'BEL' => 'belgijski franak (financijski)',
+ 'BGL' => 'bugarski čvrsti lev',
+ 'BGM' => 'bugarski socijalistički lev',
+ 'BGN' => 'bugarski lev',
+ 'BGO' => 'stari bugarski lev',
+ 'BHD' => 'bahreinski dinar',
+ 'BIF' => 'burundski franak',
+ 'BMD' => 'bermudski dolar',
+ 'BND' => 'brunejski dolar',
+ 'BOB' => 'bolivijski bolivijano',
+ 'BOL' => 'stari bolivijski bolivijano',
+ 'BOP' => 'bolivijski pezo',
+ 'BOV' => 'bolivijski mvdol',
+ 'BRB' => 'brazilski novi cruzeiro (1967.–1986.)',
+ 'BRC' => 'brazilski cruzado',
+ 'BRE' => 'brazilski cruzeiro (1990.–1993.)',
+ 'BRL' => 'brazilski real',
+ 'BRN' => 'brazilski novi cruzado',
+ 'BRR' => 'brazilski cruzeiro',
+ 'BRZ' => 'stari brazilski kruzeiro',
+ 'BSD' => 'bahamski dolar',
+ 'BTN' => 'butanski ngultrum',
+ 'BUK' => 'burmanski kyat',
+ 'BWP' => 'bocvanska pula',
+ 'BYB' => 'bjeloruska nova rublja (1994–1999)',
+ 'BYR' => 'bjeloruska rublja',
+ 'BZD' => 'belizeanski dolar',
+ 'CAD' => 'kanadski dolar',
+ 'CDF' => 'kongoanski franak',
+ 'CHE' => 'WIR euro',
+ 'CHF' => 'švicarski franak',
+ 'CHW' => 'WIR franak',
+ 'CLE' => 'čileanski eskudo',
+ 'CLF' => 'čileanski unidades de fomentos',
+ 'CLP' => 'čileanski pezo',
+ 'CNX' => 'kineski narodni dolar',
+ 'CNY' => 'kineski yuan',
+ 'COP' => 'kolumbijski pezo',
+ 'COU' => 'unidad de valor real',
+ 'CRC' => 'kostarikanski kolon',
+ 'CSD' => 'stari srpski dinar',
+ 'CSK' => 'čehoslovačka kruna',
+ 'CUC' => 'kubanski konvertibilni pezo',
+ 'CUP' => 'kubanski pezo',
+ 'CVE' => 'zelenortski eskudo',
+ 'CYP' => 'ciparska funta',
+ 'CZK' => 'češka kruna',
+ 'DDM' => 'istočnonjemačka marka',
+ 'DEM' => 'njemačka marka',
+ 'DJF' => 'džibutski franak',
+ 'DKK' => 'danska kruna',
+ 'DOP' => 'dominikanski pezo',
+ 'DZD' => 'alžirski dinar',
+ 'ECS' => 'ekvatorska sukra',
+ 'ECV' => 'ekvatorski unidad de valor constante (UVC)',
+ 'EEK' => 'estonska kruna',
+ 'EGP' => 'egipatska funta',
+ 'ERN' => 'eritrejska nakfa',
+ 'ESA' => 'španjolska pezeta (A račun)',
+ 'ESB' => 'španjolska pezeta (konvertibilni račun)',
+ 'ESP' => 'španjolska pezeta',
+ 'ETB' => 'etiopski bir',
+ 'EUR' => 'euro',
+ 'FIM' => 'finska marka',
+ 'FJD' => 'fidžijski dolar',
+ 'FKP' => 'falklandska funta',
+ 'FRF' => 'francuski franak',
+ 'GBP' => 'britanska funta',
+ 'GEK' => 'gruzijski kupon larit',
+ 'GEL' => 'gruzijski lari',
+ 'GHC' => 'ganski cedi (1979.–2007.)',
+ 'GHS' => 'ganski cedi',
+ 'GIP' => 'gibraltarska funta',
+ 'GMD' => 'gambijski dalas',
+ 'GNF' => 'gvinejski franak',
+ 'GNS' => 'gvinejski syli',
+ 'GQE' => 'ekvatorski gvinejski ekwele',
+ 'GRD' => 'grčka drahma',
+ 'GTQ' => 'gvatemalski kvecal',
+ 'GWE' => 'portugalski gvinejski eskudo',
+ 'GWP' => 'gvinejskobisauski pezo',
+ 'GYD' => 'gvajanski dolar',
+ 'HKD' => 'hongkonški dolar',
+ 'HNL' => 'honduraška lempira',
+ 'HRD' => 'hrvatski dinar',
+ 'HRK' => 'hrvatska kuna',
+ 'HTG' => 'haićanski gourd',
+ 'HUF' => 'mađarska forinta',
+ 'IDR' => 'indonezijska rupija',
+ 'IEP' => 'irska funta',
+ 'ILP' => 'izraelska funta',
+ 'ILR' => 'stari izraelski šekel',
+ 'ILS' => 'novi izraelski šekel',
+ 'INR' => 'indijska rupija',
+ 'IQD' => 'irački dinar',
+ 'IRR' => 'iranski rijal',
+ 'ISJ' => 'stara islandska kruna',
+ 'ISK' => 'islandska kruna',
+ 'ITL' => 'talijanska lira',
+ 'JMD' => 'jamajčanski dolar',
+ 'JOD' => 'jordanski dinar',
+ 'JPY' => 'japanski jen',
+ 'KES' => 'kenijski šiling',
+ 'KGS' => 'kirgiski som',
+ 'KHR' => 'kambođanski rijal',
+ 'KMF' => 'komorski franak',
+ 'KPW' => 'sjevernokorejski won',
+ 'KRH' => 'južnokorejski hvan',
+ 'KRO' => 'stari južnokorejski von',
+ 'KRW' => 'južnokorejski won',
+ 'KWD' => 'kuvajtski dinar',
+ 'KYD' => 'kajmanski dolar',
+ 'KZT' => 'kazahstanski tenge',
+ 'LAK' => 'laoski kip',
+ 'LBP' => 'libanonska funta',
+ 'LKR' => 'šrilankanska rupija',
+ 'LRD' => 'liberijski dolar',
+ 'LSL' => 'lesoto loti',
+ 'LTL' => 'litavski litas',
+ 'LTT' => 'litavski talonas',
+ 'LUC' => 'luksemburški konvertibilni franak',
+ 'LUF' => 'luksemburški franak',
+ 'LUL' => 'luksemburški financijski franak',
+ 'LVL' => 'letonski lats',
+ 'LVR' => 'letonska rublja',
+ 'LYD' => 'libijski dinar',
+ 'MAD' => 'marokanski dirham',
+ 'MAF' => 'marokanski franak',
+ 'MCF' => 'monegaški franak',
+ 'MDC' => 'moldavski kupon',
+ 'MDL' => 'moldavski lej',
+ 'MGA' => 'madagaskarski ariary',
+ 'MGF' => 'madagaskarski franak',
+ 'MKD' => 'makedonski denar',
+ 'MKN' => 'stari makedonski denar',
+ 'MLF' => 'malijski franak',
+ 'MMK' => 'mjanmarski kjat',
+ 'MNT' => 'mongolski tugrik',
+ 'MOP' => 'makaoška pataka',
+ 'MRO' => 'mauritanijska ouguja',
+ 'MTL' => 'malteška lira',
+ 'MTP' => 'malteška funta',
+ 'MUR' => 'mauricijska rupija',
+ 'MVP' => 'maldivijska rupija',
+ 'MVR' => 'maldivijska rufija',
+ 'MWK' => 'malavijska kvača',
+ 'MXN' => 'meksički pezo',
+ 'MXP' => 'meksički srebrni pezo (1861–1992)',
+ 'MXV' => 'meksički unidad de inversion (UDI)',
+ 'MYR' => 'malezijski ringit',
+ 'MZE' => 'mozambijski eskudo',
+ 'MZM' => 'stari mozambijski metikal',
+ 'MZN' => 'mozambički metikal',
+ 'NAD' => 'namibijski dolar',
+ 'NGN' => 'nigerijska naira',
+ 'NIC' => 'nikaragvanska kordoba',
+ 'NIO' => 'nikaragvanska zlatna kordoba',
+ 'NLG' => 'nizozemski gulden',
+ 'NOK' => 'norveška kruna',
+ 'NPR' => 'nepalska rupija',
+ 'NZD' => 'novozelandski dolar',
+ 'OMR' => 'omanski rijal',
+ 'PAB' => 'panamska balboa',
+ 'PEI' => 'peruanski inti',
+ 'PEN' => 'peruanski novi sol',
+ 'PES' => 'peruanski sol',
+ 'PGK' => 'kina Papue Nove Gvineje',
+ 'PHP' => 'filipinski pezo',
+ 'PKR' => 'pakistanska rupija',
+ 'PLN' => 'poljska zlota',
+ 'PLZ' => 'poljska zlota (1950.–1995.)',
+ 'PTE' => 'portugalski eskudo',
+ 'PYG' => 'paragvajski gvarani',
+ 'QAR' => 'katarski rial',
+ 'RHD' => 'rodezijski dolar',
+ 'ROL' => 'starorumunjski lek',
+ 'RON' => 'rumunjski lej',
+ 'RSD' => 'srpski dinar',
+ 'RUB' => 'ruska rublja',
+ 'RUR' => 'ruska rublja (1991.–1998.)',
+ 'RWF' => 'ruandski franak',
+ 'SAR' => 'saudijski rial',
+ 'SBD' => 'solmonskootočni dolar',
+ 'SCR' => 'sejšelska rupija',
+ 'SDD' => 'sudanski dinar',
+ 'SDG' => 'sudanska funta',
+ 'SDP' => 'stara sudanska funta',
+ 'SEK' => 'švedska kruna',
+ 'SGD' => 'singapurski dolar',
+ 'SHP' => 'svetohelenska funta',
+ 'SIT' => 'slovenski tolar',
+ 'SKK' => 'slovačka kruna',
+ 'SLL' => 'sijeraleonski leone',
+ 'SOS' => 'somalijski šiling',
+ 'SRD' => 'surinamski dolar',
+ 'SRG' => 'surinamski gulden',
+ 'SSP' => 'južnosudanska funta',
+ 'STD' => 'dobra Svetog Tome i Principa',
+ 'SUR' => 'sovjetska rublja',
+ 'SVC' => 'salvadorski kolon',
+ 'SYP' => 'sirijska funta',
+ 'SZL' => 'svazi lilangeni',
+ 'THB' => 'tajlandski baht',
+ 'TJR' => 'tajikistanska rublja',
+ 'TJS' => 'tadžikistanski somoni',
+ 'TMM' => 'turkmenistanski manat (1993.–2009.)',
+ 'TMT' => 'turkmenistanski manat',
+ 'TND' => 'tuniski dinar',
+ 'TOP' => 'tongaška pa’anga',
+ 'TPE' => 'timorski eskudo',
+ 'TRL' => 'turska lira (1922.–2005.)',
+ 'TRY' => 'turska lira',
+ 'TTD' => 'trininadtobaški dolar',
+ 'TWD' => 'novotajvanski dolar',
+ 'TZS' => 'tanzanijski šiling',
+ 'UAH' => 'ukrajinska hrivnja',
+ 'UAK' => 'ukrajinski karbovanet',
+ 'UGS' => 'ugandski šiling (1966.–1987.)',
+ 'UGX' => 'ugandski šiling',
+ 'USD' => 'američki dolar',
+ 'USN' => 'američki dolar (sljedeći dan)',
+ 'USS' => 'američki dolar (isti dan)',
+ 'UYI' => 'urugvajski pezo en unidades indexadas',
+ 'UYP' => 'urugvajski pezo (1975.–1993.)',
+ 'UYU' => 'urugvajski pezo',
+ 'UZS' => 'uzbekistanski som',
+ 'VEB' => 'venezuelanski bolivar (1871.–2008.)',
+ 'VEF' => 'venezuelanski bolivar',
+ 'VND' => 'vijetnamski dong',
+ 'VNN' => 'vijetnamski dong (1978.–1985.)',
+ 'VUV' => 'vanuatuški vatu',
+ 'WST' => 'samoanska tala',
+ 'XAF' => 'CFA franak BEAC',
+ 'XAG' => 'srebro',
+ 'XAU' => 'zlato',
+ 'XBA' => 'Europska složena jedinica',
+ 'XBB' => 'Europska monetarna jedinica',
+ 'XBC' => 'europska obračunska jedinica (XBC)',
+ 'XBD' => 'europska obračunska jedinica (XBD)',
+ 'XCD' => 'istočnokaripski dolar',
+ 'XDR' => 'posebna crtaća prava',
+ 'XEU' => 'europska monetarna jedinica (ECU)',
+ 'XFO' => 'francuski zlatni franak',
+ 'XFU' => 'francuski UIC-franak',
+ 'XOF' => 'CFA franak BCEAO',
+ 'XPD' => 'paladij',
+ 'XPF' => 'CFP franak',
+ 'XPT' => 'platina',
+ 'XRE' => 'RINET fondovi',
+ 'XSU' => 'sukre',
+ 'XTS' => 'ispitni kod valute',
+ 'XUA' => 'obračunska jedinica ADB',
+ 'XXX' => 'nepoznata valuta',
+ 'YDD' => 'jemenski dinar',
+ 'YER' => 'jemenski rial',
+ 'YUD' => 'jugoslavenski čvrsti dinar',
+ 'YUM' => 'jugoslavenski novi dinar',
+ 'YUN' => 'jugoslavenski konvertibilni dinar',
+ 'YUR' => 'jugoslavenski reformirani dinar',
+ 'ZAL' => 'južnoafrički rand (financijski)',
+ 'ZAR' => 'južnoafrički rand',
+ 'ZMK' => 'zambijska kvača (1968–2012)',
+ 'ZMW' => 'zambijska kvača',
+ 'ZRN' => 'zairski novi zair',
+ 'ZRZ' => 'zairski zair',
+ 'ZWD' => 'zimbabveanski dolar (1980.–2008.)',
+ 'ZWL' => 'zimbabveanski dolar (2009)',
+ 'ZWR' => 'zimbabveanski dolar (2008)',
+);
+
+$currencySymbols = array(
+ 'ADP' => 'ADP',
+ 'AED' => 'AED',
+ 'AFA' => 'AFA',
+ 'AFN' => 'AFN',
+ 'ALK' => 'ALK',
+ 'ALL' => 'ALL',
+ 'AMD' => 'AMD',
+ 'ANG' => 'ANG',
+ 'AOA' => 'AOA',
+ 'AOK' => 'AOK',
+ 'AON' => 'AON',
+ 'AOR' => 'AOR',
+ 'ARA' => 'ARA',
+ 'ARL' => 'ARL',
+ 'ARM' => 'ARM',
+ 'ARP' => 'ARP',
+ 'ARS' => 'ARS',
+ 'ATS' => 'ATS',
+ 'AUD' => 'AUD',
+ 'AWG' => 'AWG',
+ 'AZM' => 'AZM',
+ 'AZN' => 'AZN',
+ 'BAD' => 'BAD',
+ 'BAM' => 'BAM',
+ 'BAN' => 'BAN',
+ 'BBD' => 'BBD',
+ 'BDT' => 'BDT',
+ 'BEC' => 'BEC',
+ 'BEF' => 'BEF',
+ 'BEL' => 'BEL',
+ 'BGL' => 'BGL',
+ 'BGM' => 'BGM',
+ 'BGN' => 'BGN',
+ 'BGO' => 'BGO',
+ 'BHD' => 'BHD',
+ 'BIF' => 'BIF',
+ 'BMD' => 'BMD',
+ 'BND' => 'BND',
+ 'BOB' => 'BOB',
+ 'BOL' => 'BOL',
+ 'BOP' => 'BOP',
+ 'BOV' => 'BOV',
+ 'BRB' => 'BRB',
+ 'BRC' => 'BRC',
+ 'BRE' => 'BRE',
+ 'BRL' => 'BRL',
+ 'BRN' => 'BRN',
+ 'BRR' => 'BRR',
+ 'BRZ' => 'BRZ',
+ 'BSD' => 'BSD',
+ 'BTN' => 'BTN',
+ 'BUK' => 'BUK',
+ 'BWP' => 'BWP',
+ 'BYB' => 'BYB',
+ 'BYR' => 'BYR',
+ 'BZD' => 'BZD',
+ 'CAD' => 'CAD',
+ 'CDF' => 'CDF',
+ 'CHE' => 'CHE',
+ 'CHF' => 'CHF',
+ 'CHW' => 'CHW',
+ 'CLE' => 'CLE',
+ 'CLF' => 'CLF',
+ 'CLP' => 'CLP',
+ 'CNX' => 'CNX',
+ 'CNY' => 'CNY',
+ 'COP' => 'COP',
+ 'COU' => 'COU',
+ 'CRC' => 'CRC',
+ 'CSD' => 'CSD',
+ 'CSK' => 'CSK',
+ 'CUC' => 'CUC',
+ 'CUP' => 'CUP',
+ 'CVE' => 'CVE',
+ 'CYP' => 'CYP',
+ 'CZK' => 'CZK',
+ 'DDM' => 'DDM',
+ 'DEM' => 'DEM',
+ 'DJF' => 'DJF',
+ 'DKK' => 'DKK',
+ 'DOP' => 'DOP',
+ 'DZD' => 'DZD',
+ 'ECS' => 'ECS',
+ 'ECV' => 'ECV',
+ 'EEK' => 'EEK',
+ 'EGP' => 'EGP',
+ 'ERN' => 'ERN',
+ 'ESA' => 'ESA',
+ 'ESB' => 'ESB',
+ 'ESP' => 'ESP',
+ 'ETB' => 'ETB',
+ 'EUR' => 'EUR',
+ 'FIM' => 'FIM',
+ 'FJD' => 'FJD',
+ 'FKP' => 'FKP',
+ 'FRF' => 'FRF',
+ 'GBP' => 'GBP',
+ 'GEK' => 'GEK',
+ 'GEL' => 'GEL',
+ 'GHC' => 'GHC',
+ 'GHS' => 'GHS',
+ 'GIP' => 'GIP',
+ 'GMD' => 'GMD',
+ 'GNF' => 'GNF',
+ 'GNS' => 'GNS',
+ 'GQE' => 'GQE',
+ 'GRD' => 'GRD',
+ 'GTQ' => 'GTQ',
+ 'GWE' => 'GWE',
+ 'GWP' => 'GWP',
+ 'GYD' => 'GYD',
+ 'HKD' => 'HKD',
+ 'HNL' => 'HNL',
+ 'HRD' => 'HRD',
+ 'HRK' => 'HRK',
+ 'HTG' => 'HTG',
+ 'HUF' => 'HUF',
+ 'IDR' => 'IDR',
+ 'IEP' => 'IEP',
+ 'ILP' => 'ILP',
+ 'ILR' => 'ILR',
+ 'ILS' => 'ILS',
+ 'INR' => 'INR',
+ 'IQD' => 'IQD',
+ 'IRR' => 'IRR',
+ 'ISJ' => 'ISJ',
+ 'ISK' => 'ISK',
+ 'ITL' => 'ITL',
+ 'JMD' => 'JMD',
+ 'JOD' => 'JOD',
+ 'JPY' => 'JPY',
+ 'KES' => 'KES',
+ 'KGS' => 'KGS',
+ 'KHR' => 'KHR',
+ 'KMF' => 'KMF',
+ 'KPW' => 'KPW',
+ 'KRH' => 'KRH',
+ 'KRO' => 'KRO',
+ 'KRW' => 'KRW',
+ 'KWD' => 'KWD',
+ 'KYD' => 'KYD',
+ 'KZT' => 'KZT',
+ 'LAK' => 'LAK',
+ 'LBP' => 'LBP',
+ 'LKR' => 'LKR',
+ 'LRD' => 'LRD',
+ 'LSL' => 'LSL',
+ 'LTL' => 'LTL',
+ 'LTT' => 'LTT',
+ 'LUC' => 'LUC',
+ 'LUF' => 'LUF',
+ 'LUL' => 'LUL',
+ 'LVL' => 'LVL',
+ 'LVR' => 'LVR',
+ 'LYD' => 'LYD',
+ 'MAD' => 'MAD',
+ 'MAF' => 'MAF',
+ 'MCF' => 'MCF',
+ 'MDC' => 'MDC',
+ 'MDL' => 'MDL',
+ 'MGA' => 'MGA',
+ 'MGF' => 'MGF',
+ 'MKD' => 'MKD',
+ 'MKN' => 'MKN',
+ 'MLF' => 'MLF',
+ 'MMK' => 'MMK',
+ 'MNT' => 'MNT',
+ 'MOP' => 'MOP',
+ 'MRO' => 'MRO',
+ 'MTL' => 'MTL',
+ 'MTP' => 'MTP',
+ 'MUR' => 'MUR',
+ 'MVP' => 'MVP',
+ 'MVR' => 'MVR',
+ 'MWK' => 'MWK',
+ 'MXN' => 'MXN',
+ 'MXP' => 'MXP',
+ 'MXV' => 'MXV',
+ 'MYR' => 'MYR',
+ 'MZE' => 'MZE',
+ 'MZM' => 'MZM',
+ 'MZN' => 'MZN',
+ 'NAD' => 'NAD',
+ 'NGN' => 'NGN',
+ 'NIC' => 'NIC',
+ 'NIO' => 'NIO',
+ 'NLG' => 'NLG',
+ 'NOK' => 'NOK',
+ 'NPR' => 'NPR',
+ 'NZD' => 'NZD',
+ 'OMR' => 'OMR',
+ 'PAB' => 'PAB',
+ 'PEI' => 'PEI',
+ 'PEN' => 'PEN',
+ 'PES' => 'PES',
+ 'PGK' => 'PGK',
+ 'PHP' => 'PHP',
+ 'PKR' => 'PKR',
+ 'PLN' => 'PLN',
+ 'PLZ' => 'PLZ',
+ 'PTE' => 'PTE',
+ 'PYG' => 'PYG',
+ 'QAR' => 'QAR',
+ 'RHD' => 'RHD',
+ 'ROL' => 'ROL',
+ 'RON' => 'RON',
+ 'RSD' => 'RSD',
+ 'RUB' => 'RUB',
+ 'RUR' => 'RUR',
+ 'RWF' => 'RWF',
+ 'SAR' => 'SAR',
+ 'SBD' => 'SBD',
+ 'SCR' => 'SCR',
+ 'SDD' => 'SDD',
+ 'SDG' => 'SDG',
+ 'SDP' => 'SDP',
+ 'SEK' => 'SEK',
+ 'SGD' => 'SGD',
+ 'SHP' => 'SHP',
+ 'SIT' => 'SIT',
+ 'SKK' => 'SKK',
+ 'SLL' => 'SLL',
+ 'SOS' => 'SOS',
+ 'SRD' => 'SRD',
+ 'SRG' => 'SRG',
+ 'SSP' => 'SSP',
+ 'STD' => 'STD',
+ 'SUR' => 'SUR',
+ 'SVC' => 'SVC',
+ 'SYP' => 'SYP',
+ 'SZL' => 'SZL',
+ 'THB' => 'THB',
+ 'TJR' => 'TJR',
+ 'TJS' => 'TJS',
+ 'TMM' => 'TMM',
+ 'TMT' => 'TMT',
+ 'TND' => 'TND',
+ 'TOP' => 'TOP',
+ 'TPE' => 'TPE',
+ 'TRL' => 'TRL',
+ 'TRY' => 'TRY',
+ 'TTD' => 'TTD',
+ 'TWD' => 'TWD',
+ 'TZS' => 'TZS',
+ 'UAH' => 'UAH',
+ 'UAK' => 'UAK',
+ 'UGS' => 'UGS',
+ 'UGX' => 'UGX',
+ 'USD' => 'USD',
+ 'USN' => 'USN',
+ 'USS' => 'USS',
+ 'UYI' => 'UYI',
+ 'UYP' => 'UYP',
+ 'UYU' => 'UYU',
+ 'UZS' => 'UZS',
+ 'VEB' => 'VEB',
+ 'VEF' => 'VEF',
+ 'VND' => 'VND',
+ 'VNN' => 'VNN',
+ 'VUV' => 'VUV',
+ 'WST' => 'WST',
+ 'XAF' => 'FCFA',
+ 'XAG' => 'XAG',
+ 'XAU' => 'XAU',
+ 'XBA' => 'XBA',
+ 'XBB' => 'XBB',
+ 'XBC' => 'XBC',
+ 'XBD' => 'XBD',
+ 'XCD' => 'XCD',
+ 'XDR' => 'XDR',
+ 'XEU' => 'XEU',
+ 'XFO' => 'XFO',
+ 'XFU' => 'XFU',
+ 'XOF' => 'CFA',
+ 'XPD' => 'XPD',
+ 'XPF' => 'XPF',
+ 'XPT' => 'XPT',
+ 'XRE' => 'XRE',
+ 'XSU' => 'XSU',
+ 'XTS' => 'XTS',
+ 'XUA' => 'XUA',
+ 'XXX' => 'XXX',
+ 'YDD' => 'YDD',
+ 'YER' => 'YER',
+ 'YUD' => 'YUD',
+ 'YUM' => 'YUM',
+ 'YUN' => 'YUN',
+ 'YUR' => 'YUR',
+ 'ZAL' => 'ZAL',
+ 'ZAR' => 'ZAR',
+ 'ZMK' => 'ZMK',
+ 'ZMW' => 'ZMW',
+ 'ZRN' => 'ZRN',
+ 'ZRZ' => 'ZRZ',
+ 'ZWD' => 'ZWD',
+ 'ZWL' => 'ZWL',
+ 'ZWR' => 'ZWR',
+);
+
+$countryNames = array(
+ 'AC' => 'Otok Ascension',
+ 'AD' => 'Andora',
+ 'AE' => 'Ujedinjeni Arapski Emirati',
+ 'AF' => 'Afganistan',
+ 'AG' => 'Antigua i Barbuda',
+ 'AI' => 'Angvila',
+ 'AL' => 'Albanija',
+ 'AM' => 'Armenija',
+ 'AN' => 'Nizozemski Antili',
+ 'AO' => 'Angola',
+ 'AQ' => 'Antarktika',
+ 'AR' => 'Argentina',
+ 'AS' => 'Američka Samoa',
+ 'AT' => 'Austrija',
+ 'AU' => 'Australija',
+ 'AW' => 'Aruba',
+ 'AX' => 'Otoci Aland',
+ 'AZ' => 'Azerbajdžan',
+ 'BA' => 'Bosna i Hercegovina',
+ 'BB' => 'Barbados',
+ 'BD' => 'Bangladeš',
+ 'BE' => 'Belgija',
+ 'BF' => 'Burkina Faso',
+ 'BG' => 'Bugarska',
+ 'BH' => 'Bahrein',
+ 'BI' => 'Burundi',
+ 'BJ' => 'Benin',
+ 'BL' => 'Sveti Bartolomej',
+ 'BM' => 'Bermuda',
+ 'BN' => 'Brunej',
+ 'BO' => 'Bolivija',
+ 'BQ' => 'Karipski otoci Nizozemske',
+ 'BR' => 'Brazil',
+ 'BS' => 'Bahami',
+ 'BT' => 'Butan',
+ 'BV' => 'Otok Bouvet',
+ 'BW' => 'Bocvana',
+ 'BY' => 'Bjelorusija',
+ 'BZ' => 'Belize',
+ 'CA' => 'Kanada',
+ 'CC' => 'Kokosovi (Keeling) Otoci',
+ 'CD' => 'Kongo - Kinshasa',
+ 'CF' => 'Srednjoafrička Republika',
+ 'CG' => 'Kongo - Brazzaville',
+ 'CH' => 'Švicarska',
+ 'CI' => 'Obala Bjelokosti',
+ 'CK' => 'Cookovi Otoci',
+ 'CL' => 'Čile',
+ 'CM' => 'Kamerun',
+ 'CN' => 'Kina',
+ 'CO' => 'Kolumbija',
+ 'CP' => 'Otok Clipperton',
+ 'CR' => 'Kostarika',
+ 'CU' => 'Kuba',
+ 'CV' => 'Zelenortska Republika',
+ 'CW' => 'Curaçao',
+ 'CX' => 'Božićni Otok',
+ 'CY' => 'Cipar',
+ 'CZ' => 'Češka Republika',
+ 'DE' => 'Njemačka',
+ 'DG' => 'Diego Garcia',
+ 'DJ' => 'Džibuti',
+ 'DK' => 'Danska',
+ 'DM' => 'Dominika',
+ 'DO' => 'Dominikanska Republika',
+ 'DZ' => 'Alžir',
+ 'EA' => 'Ceuta i Melilla',
+ 'EC' => 'Ekvador',
+ 'EE' => 'Estonija',
+ 'EG' => 'Egipat',
+ 'EH' => 'Zapadna Sahara',
+ 'ER' => 'Eritreja',
+ 'ES' => 'Španjolska',
+ 'ET' => 'Etiopija',
+ 'EU' => 'Europska unija',
+ 'FI' => 'Finska',
+ 'FJ' => 'Fidži',
+ 'FK' => 'Falklandski Otoci',
+ 'FM' => 'Mikronezija',
+ 'FO' => 'Farski Otoci',
+ 'FR' => 'Francuska',
+ 'GA' => 'Gabon',
+ 'GB' => 'UK',
+ 'GD' => 'Grenada',
+ 'GE' => 'Gruzija',
+ 'GF' => 'Francuska Gvajana',
+ 'GG' => 'Guernsey',
+ 'GH' => 'Gana',
+ 'GI' => 'Gibraltar',
+ 'GL' => 'Grenland',
+ 'GM' => 'Gambija',
+ 'GN' => 'Gvineja',
+ 'GP' => 'Guadalupa',
+ 'GQ' => 'Ekvatorska Gvineja',
+ 'GR' => 'Grčka',
+ 'GS' => 'Južna Georgija i Južni Sendvički Otoci',
+ 'GT' => 'Gvatemala',
+ 'GU' => 'Guam',
+ 'GW' => 'Gvineja Bisau',
+ 'GY' => 'Gvajana',
+ 'HK' => 'Hong Kong',
+ 'HM' => 'Otoci Heard i McDonald',
+ 'HN' => 'Honduras',
+ 'HR' => 'Hrvatska',
+ 'HT' => 'Haiti',
+ 'HU' => 'Mađarska',
+ 'IC' => 'Kanarski Otoci',
+ 'ID' => 'Indonezija',
+ 'IE' => 'Irska',
+ 'IL' => 'Izrael',
+ 'IM' => 'Otok Man',
+ 'IN' => 'Indija',
+ 'IO' => 'Britanski Indijskooceanski Teritorij',
+ 'IQ' => 'Irak',
+ 'IR' => 'Iran',
+ 'IS' => 'Island',
+ 'IT' => 'Italija',
+ 'JE' => 'Jersey',
+ 'JM' => 'Jamajka',
+ 'JO' => 'Jordan',
+ 'JP' => 'Japan',
+ 'KE' => 'Kenija',
+ 'KG' => 'Kirgistan',
+ 'KH' => 'Kambodža',
+ 'KI' => 'Kiribati',
+ 'KM' => 'Komori',
+ 'KN' => 'Sveti Kristofor i Nevis',
+ 'KP' => 'Sjeverna Koreja',
+ 'KR' => 'Južna Koreja',
+ 'KW' => 'Kuvajt',
+ 'KY' => 'Kajmanski Otoci',
+ 'KZ' => 'Kazahstan',
+ 'LA' => 'Laos',
+ 'LB' => 'Libanon',
+ 'LC' => 'Sveta Lucija',
+ 'LI' => 'Lihtenštajn',
+ 'LK' => 'Šri Lanka',
+ 'LR' => 'Liberija',
+ 'LS' => 'Lesoto',
+ 'LT' => 'Litva',
+ 'LU' => 'Luksemburg',
+ 'LV' => 'Latvija',
+ 'LY' => 'Libija',
+ 'MA' => 'Maroko',
+ 'MC' => 'Monako',
+ 'MD' => 'Moldavija',
+ 'ME' => 'Crna Gora',
+ 'MF' => 'Sveti Martin',
+ 'MG' => 'Madagaskar',
+ 'MH' => 'Maršalovi Otoci',
+ 'MK' => 'Makedonija',
+ 'ML' => 'Mali',
+ 'MM' => 'Mijanmar (Burma)',
+ 'MN' => 'Mongolija',
+ 'MO' => 'Makao',
+ 'MP' => 'Sjeverni Marijanski Otoci',
+ 'MQ' => 'Martinique',
+ 'MR' => 'Mauritanija',
+ 'MS' => 'Montserrat',
+ 'MT' => 'Malta',
+ 'MU' => 'Mauricijus',
+ 'MV' => 'Maldivi',
+ 'MW' => 'Malavi',
+ 'MX' => 'Meksiko',
+ 'MY' => 'Malezija',
+ 'MZ' => 'Mozambik',
+ 'NA' => 'Namibija',
+ 'NC' => 'Nova Kaledonija',
+ 'NE' => 'Niger',
+ 'NF' => 'Otok Norfolk',
+ 'NG' => 'Nigerija',
+ 'NI' => 'Nikaragva',
+ 'NL' => 'Nizozemska',
+ 'NO' => 'Norveška',
+ 'NP' => 'Nepal',
+ 'NR' => 'Nauru',
+ 'NU' => 'Niue',
+ 'NZ' => 'Novi Zeland',
+ 'OM' => 'Oman',
+ 'PA' => 'Panama',
+ 'PE' => 'Peru',
+ 'PF' => 'Francuska Polinezija',
+ 'PG' => 'Papua Nova Gvineja',
+ 'PH' => 'Filipini',
+ 'PK' => 'Pakistan',
+ 'PL' => 'Poljska',
+ 'PM' => 'Sveti Petar i Mikelon',
+ 'PN' => 'Otoci Pitcairn',
+ 'PR' => 'Portoriko',
+ 'PS' => 'Palestina',
+ 'PT' => 'Portugal',
+ 'PW' => 'Palau',
+ 'PY' => 'Paragvaj',
+ 'QA' => 'Katar',
+ 'QO' => 'Ostala oceanija',
+ 'RE' => 'Reunion',
+ 'RO' => 'Rumunjska',
+ 'RS' => 'Srbija',
+ 'RU' => 'Rusija',
+ 'RW' => 'Ruanda',
+ 'SA' => 'Saudijska Arabija',
+ 'SB' => 'Salomonski Otoci',
+ 'SC' => 'Sejšeli',
+ 'SD' => 'Sudan',
+ 'SE' => 'Švedska',
+ 'SG' => 'Singapur',
+ 'SH' => 'Sveta Helena',
+ 'SI' => 'Slovenija',
+ 'SJ' => 'Svalbard i Jan Mayen',
+ 'SK' => 'Slovačka',
+ 'SL' => 'Sijera Leone',
+ 'SM' => 'San Marino',
+ 'SN' => 'Senegal',
+ 'SO' => 'Somalija',
+ 'SR' => 'Surinam',
+ 'SS' => 'Južni Sudan',
+ 'ST' => 'Sveti Toma i Princip',
+ 'SV' => 'Salvador',
+ 'SX' => 'Sint Maarten',
+ 'SY' => 'Sirija',
+ 'SZ' => 'Svazi',
+ 'TA' => 'Tristan da Cunha',
+ 'TC' => 'Otoci Turks i Caicos',
+ 'TD' => 'Čad',
+ 'TF' => 'Francuske Južne i Antarktičke Zemlje',
+ 'TG' => 'Togo',
+ 'TH' => 'Tajland',
+ 'TJ' => 'Tadžikistan',
+ 'TK' => 'Tokelau',
+ 'TL' => 'Istočni Timor',
+ 'TM' => 'Turkmenistan',
+ 'TN' => 'Tunis',
+ 'TO' => 'Tonga',
+ 'TR' => 'Turska',
+ 'TT' => 'Trinidad i Tobago',
+ 'TV' => 'Tuvalu',
+ 'TW' => 'Tajvan',
+ 'TZ' => 'Tanzanija',
+ 'UA' => 'Ukrajina',
+ 'UG' => 'Uganda',
+ 'UM' => 'Mali udaljeni otoci SAD-a',
+ 'US' => 'SAD',
+ 'UY' => 'Urugvaj',
+ 'UZ' => 'Uzbekistan',
+ 'VA' => 'Sveta Stolica',
+ 'VC' => 'Sveti Vincent i Grenadini',
+ 'VE' => 'Venezuela',
+ 'VG' => 'Britanski Djevičanski Otoci',
+ 'VI' => 'Američki Djevičanski Otoci',
+ 'VN' => 'Vijetnam',
+ 'VU' => 'Vanuatu',
+ 'WF' => 'Wallis i Futuna',
+ 'WS' => 'Samoa',
+ 'XK' => 'Kosovo',
+ 'YE' => 'Jemen',
+ 'YT' => 'Mayotte',
+ 'ZA' => 'Južnoafrička Republika',
+ 'ZM' => 'Zambija',
+ 'ZW' => 'Zimbabve',
+);
+
+$timeUnits = array(
+ 'day-few' => '{0} dana',
+ 'day-future-few' => 'za {0} dana',
+ 'day-future-one' => 'za {0} dan',
+ 'day-future-other' => 'za {0} dana',
+ 'day-narrow-future-few' => 'za {0} d',
+ 'day-narrow-future-one' => 'za {0} d',
+ 'day-narrow-future-other' => 'za {0} d',
+ 'day-narrow-past-few' => 'prije {0} d',
+ 'day-narrow-past-one' => 'prije {0} d',
+ 'day-narrow-past-other' => 'prije {0} d',
+ 'day-one' => '{0} dan',
+ 'day-other' => '{0} dana',
+ 'day-past-few' => 'prije {0} dana',
+ 'day-past-one' => 'prije {0} dan',
+ 'day-past-other' => 'prije {0} dana',
+ 'day-short-future-few' => 'za {0} dana',
+ 'day-short-future-one' => 'za {0} dan',
+ 'day-short-future-other' => 'za {0} dana',
+ 'day-short-past-few' => 'prije {0} dana',
+ 'day-short-past-one' => 'prije {0} dan',
+ 'day-short-past-other' => 'prije {0} dana',
+ 'hour-few' => '{0} sata',
+ 'hour-future-few' => 'za {0} sata',
+ 'hour-future-one' => 'za {0} sat',
+ 'hour-future-other' => 'za {0} sati',
+ 'hour-narrow-future-few' => '+{0} h',
+ 'hour-narrow-future-one' => '+{0} h',
+ 'hour-narrow-future-other' => '+{0} h',
+ 'hour-narrow-past-few' => '-{0} h',
+ 'hour-narrow-past-one' => '-{0} h',
+ 'hour-narrow-past-other' => '-{0} h',
+ 'hour-one' => '{0} sat',
+ 'hour-other' => '{0} sati',
+ 'hour-past-few' => 'prije {0} sata',
+ 'hour-past-one' => 'prije {0} sat',
+ 'hour-past-other' => 'prije {0} sati',
+ 'hour-short-future-few' => 'za {0} h',
+ 'hour-short-future-one' => 'za {0} h',
+ 'hour-short-future-other' => 'za {0} h',
+ 'hour-short-past-few' => 'prije {0} h',
+ 'hour-short-past-one' => 'prije {0} h',
+ 'hour-short-past-other' => 'prije {0} h',
+ 'microsecond-few' => '{0} mikrosekunde',
+ 'microsecond-one' => '{0} mikrosekunda',
+ 'microsecond-other' => '{0} mikrosekundi',
+ 'millisecond-few' => '{0} milisekunde',
+ 'millisecond-one' => '{0} milisekunda',
+ 'millisecond-other' => '{0} milisekundi',
+ 'minute-few' => '{0} minute',
+ 'minute-future-few' => 'za {0} minute',
+ 'minute-future-one' => 'za {0} minutu',
+ 'minute-future-other' => 'za {0} minuta',
+ 'minute-narrow-future-few' => '+{0} min',
+ 'minute-narrow-future-one' => '+{0} min',
+ 'minute-narrow-future-other' => '+{0} min',
+ 'minute-narrow-past-few' => '-{0} min',
+ 'minute-narrow-past-one' => '-{0} min',
+ 'minute-narrow-past-other' => '-{0} min',
+ 'minute-one' => '{0} minuta',
+ 'minute-other' => '{0} minuta',
+ 'minute-past-few' => 'prije {0} minute',
+ 'minute-past-one' => 'prije {0} minutu',
+ 'minute-past-other' => 'prije {0} minuta',
+ 'minute-short-future-few' => 'za {0} min',
+ 'minute-short-future-one' => 'za {0} min',
+ 'minute-short-future-other' => 'za {0} min',
+ 'minute-short-past-few' => 'prije {0} min',
+ 'minute-short-past-one' => 'prije {0} min',
+ 'minute-short-past-other' => 'prije {0} min',
+ 'month-few' => '{0} mjeseca',
+ 'month-future-few' => 'za {0} mjeseca',
+ 'month-future-one' => 'za {0} mjesec',
+ 'month-future-other' => 'za {0} mjeseci',
+ 'month-narrow-future-few' => '+{0} mj.',
+ 'month-narrow-future-one' => '+{0} mj.',
+ 'month-narrow-future-other' => '+{0} mj.',
+ 'month-narrow-past-few' => '-{0} mj.',
+ 'month-narrow-past-one' => '-{0} mj.',
+ 'month-narrow-past-other' => '-{0} mj.',
+ 'month-one' => '{0} mjesec',
+ 'month-other' => '{0} mjeseci',
+ 'month-past-few' => 'prije {0} mjeseca',
+ 'month-past-one' => 'prije {0} mjesec',
+ 'month-past-other' => 'prije {0} mjeseci',
+ 'month-short-future-few' => 'za {0} mj.',
+ 'month-short-future-one' => 'za {0} mj.',
+ 'month-short-future-other' => 'za {0} mj.',
+ 'month-short-past-few' => 'prije {0} mj.',
+ 'month-short-past-one' => 'prije {0} mj.',
+ 'month-short-past-other' => 'prije {0} mj.',
+ 'nanosecond-few' => '{0} nanosekunde',
+ 'nanosecond-one' => '{0} nanosekunda',
+ 'nanosecond-other' => '{0} nanosekundi',
+ 'quarter-future-few' => 'za {0} kvartala',
+ 'quarter-future-one' => 'za {0} kvartal',
+ 'quarter-future-other' => 'za {0} kvartala',
+ 'quarter-narrow-future-few' => '+{0} kv.',
+ 'quarter-narrow-future-one' => '+{0} kv.',
+ 'quarter-narrow-future-other' => '+{0} kv.',
+ 'quarter-narrow-past-few' => '-{0} kv.',
+ 'quarter-narrow-past-one' => '-{0} kv.',
+ 'quarter-narrow-past-other' => '-{0} kv.',
+ 'quarter-past-few' => 'prije {0} kvartala',
+ 'quarter-past-one' => 'prije {0} kvartal',
+ 'quarter-past-other' => 'prije {0} kvartala',
+ 'quarter-short-future-few' => 'za {0} kv.',
+ 'quarter-short-future-one' => 'za {0} kv.',
+ 'quarter-short-future-other' => 'za {0} kv.',
+ 'quarter-short-past-few' => 'prije {0} kv.',
+ 'quarter-short-past-one' => 'prije {0} kv.',
+ 'quarter-short-past-other' => 'prije {0} kv.',
+ 'second-few' => '{0} sekunde',
+ 'second-future-few' => 'za {0} sekunde',
+ 'second-future-one' => 'za {0} sekundu',
+ 'second-future-other' => 'za {0} sekundi',
+ 'second-narrow-future-few' => '+{0} s',
+ 'second-narrow-future-one' => '+{0} s',
+ 'second-narrow-future-other' => '+{0} s',
+ 'second-narrow-past-few' => '-{0} s',
+ 'second-narrow-past-one' => '-{0} s',
+ 'second-narrow-past-other' => '-{0} s',
+ 'second-one' => '{0} sekunda',
+ 'second-other' => '{0} sekundi',
+ 'second-past-few' => 'prije {0} sekunde',
+ 'second-past-one' => 'prije {0} sekundu',
+ 'second-past-other' => 'prije {0} sekundi',
+ 'second-short-future-few' => 'za {0} s',
+ 'second-short-future-one' => 'za {0} s',
+ 'second-short-future-other' => 'za {0} s',
+ 'second-short-past-few' => 'prije {0} s',
+ 'second-short-past-one' => 'prije {0} s',
+ 'second-short-past-other' => 'prije {0} s',
+ 'week-few' => '{0} tjedna',
+ 'week-future-few' => 'za {0} tjedna',
+ 'week-future-one' => 'za {0} tjedan',
+ 'week-future-other' => 'za {0} tjedana',
+ 'week-narrow-future-few' => '+{0} tj.',
+ 'week-narrow-future-one' => '+{0} tj.',
+ 'week-narrow-future-other' => '+{0} tj.',
+ 'week-narrow-past-few' => '-{0} tj.',
+ 'week-narrow-past-one' => '-{0} tj.',
+ 'week-narrow-past-other' => '-{0} tj.',
+ 'week-one' => '{0} tjedan',
+ 'week-other' => '{0} tjedana',
+ 'week-past-few' => 'prije {0} tjedna',
+ 'week-past-one' => 'prije {0} tjedan',
+ 'week-past-other' => 'prije {0} tjedana',
+ 'week-short-future-few' => 'za {0} tj.',
+ 'week-short-future-one' => 'za {0} tj.',
+ 'week-short-future-other' => 'za {0} tj.',
+ 'week-short-past-few' => 'prije {0} tj.',
+ 'week-short-past-one' => 'prije {0} tj.',
+ 'week-short-past-other' => 'prije {0} tj.',
+ 'year-few' => '{0} godine',
+ 'year-future-few' => 'za {0} godine',
+ 'year-future-one' => 'za {0} godinu',
+ 'year-future-other' => 'za {0} godina',
+ 'year-narrow-future-few' => '+{0} g.',
+ 'year-narrow-future-one' => '+{0} g.',
+ 'year-narrow-future-other' => '+{0} g.',
+ 'year-narrow-past-few' => '-{0} g.',
+ 'year-narrow-past-one' => '-{0} g.',
+ 'year-narrow-past-other' => '-{0} g.',
+ 'year-one' => '{0} godina',
+ 'year-other' => '{0} godina',
+ 'year-past-few' => 'prije {0} godine',
+ 'year-past-one' => 'prije {0} godinu',
+ 'year-past-other' => 'prije {0} godina',
+ 'year-short-future-few' => 'za {0} g.',
+ 'year-short-future-one' => 'za {0} g.',
+ 'year-short-future-other' => 'za {0} g.',
+ 'year-short-past-few' => 'prije {0} g.',
+ 'year-short-past-one' => 'prije {0} g.',
+ 'year-short-past-other' => 'prije {0} g.',
+);
diff --git a/MLEB/cldr/CldrNames/CldrNamesHsb.php b/MLEB/cldr/CldrNames/CldrNamesHsb.php
new file mode 100644
index 00000000..cdb05972
--- /dev/null
+++ b/MLEB/cldr/CldrNames/CldrNamesHsb.php
@@ -0,0 +1,975 @@
+<?php
+
+$languageNames = array(
+ 'aa' => 'afaršćina',
+ 'ab' => 'abchazišćina',
+ 'af' => 'afrikaanšćina',
+ 'agq' => 'aghemšćina',
+ 'ak' => 'akanšćina',
+ 'am' => 'amharšćina',
+ 'an' => 'aragonšćina',
+ 'ang' => 'anglosakšćina',
+ 'ar' => 'arabšćina',
+ 'ar-001' => 'moderna wysokoarabšćina',
+ 'arn' => 'arawkanšćina',
+ 'as' => 'asamšćina',
+ 'asa' => 'pare',
+ 'ast' => 'asturšćina',
+ 'av' => 'awaršćina',
+ 'ay' => 'aymaršćina',
+ 'az' => 'azerbajdźanšćina',
+ 'ba' => 'baškiršćina',
+ 'be' => 'běłorušćina',
+ 'bem' => 'bemba',
+ 'bez' => 'bena',
+ 'bg' => 'bołharšćina',
+ 'bi' => 'bislamšćina',
+ 'bm' => 'bambara',
+ 'bn' => 'bengalšćina',
+ 'bo' => 'tibetšćina',
+ 'br' => 'bretonšćina',
+ 'brx' => 'bodo',
+ 'bs' => 'bosnišćina',
+ 'bug' => 'buginezišćina',
+ 'ca' => 'katalanšćina',
+ 'cgg' => 'chiga',
+ 'ch' => 'čamoršćina',
+ 'cho' => 'choctawšćina',
+ 'chr' => 'cherokee',
+ 'ckb' => 'sorani',
+ 'co' => 'korsišćina',
+ 'cr' => 'kri',
+ 'cs' => 'čěšćina',
+ 'cy' => 'walizišćina',
+ 'da' => 'danšćina',
+ 'dav' => 'taita',
+ 'de' => 'němčina',
+ 'de-at' => 'awstriska němčina',
+ 'dje' => 'zarma',
+ 'dsb' => 'delnjoserbšćina',
+ 'dua' => 'duala',
+ 'dv' => 'divehi',
+ 'dyo' => 'jola-fonyi',
+ 'dz' => 'dzongkha',
+ 'ebu' => 'embu',
+ 'ee' => 'ewe',
+ 'el' => 'grjekšćina',
+ 'en' => 'jendźelšćina',
+ 'en-au' => 'awstralska jendźelšćina',
+ 'en-ca' => 'kanadiska jendźelšćina',
+ 'en-gb' => 'britiska jendźelšćina',
+ 'en-us' => 'ameriska jendźelšćina',
+ 'eo' => 'esperanto',
+ 'es' => 'španišćina',
+ 'es-419' => 'łaćonskoameriska španišćina',
+ 'es-es' => 'europska španišćina',
+ 'es-mx' => 'mexiska španišćina',
+ 'et' => 'estišćina',
+ 'eu' => 'baskišćina',
+ 'fa' => 'persišćina',
+ 'fi' => 'finšćina',
+ 'fil' => 'filipinšćina',
+ 'fj' => 'fidźišćina',
+ 'fo' => 'färöšćina',
+ 'fr' => 'francošćina',
+ 'fr-ca' => 'kanadiska francošćina',
+ 'fr-ch' => 'šwicarska francošćina',
+ 'fy' => 'frizišćina',
+ 'ga' => 'iršćina',
+ 'gag' => 'gagauzišćina',
+ 'gd' => 'šotiska gelšćina',
+ 'gl' => 'galicišćina',
+ 'gn' => 'guarani',
+ 'got' => 'gotšćina',
+ 'gsw' => 'šwicarska němčina',
+ 'gu' => 'gujarati',
+ 'guz' => 'gusii',
+ 'gv' => 'manšćina',
+ 'ha' => 'hausa',
+ 'haw' => 'hawaiišćina',
+ 'he' => 'hebrejšćina',
+ 'hi' => 'hindišćina',
+ 'hr' => 'chorwatšćina',
+ 'hsb' => 'hornjoserbšćina',
+ 'ht' => 'haitišćina',
+ 'hu' => 'madźaršćina',
+ 'hy' => 'armenšćina',
+ 'ia' => 'interlingua',
+ 'id' => 'indonešćina',
+ 'ig' => 'igbo',
+ 'ii' => 'sichuan yi',
+ 'ik' => 'inupiak',
+ 'io' => 'ido',
+ 'is' => 'islandšćina',
+ 'it' => 'italšćina',
+ 'iu' => 'inuitšćina',
+ 'ja' => 'japanšćina',
+ 'jgo' => 'ngomba',
+ 'jmc' => 'machame',
+ 'jv' => 'javašćina',
+ 'ka' => 'georgišćina',
+ 'kab' => 'kabylšćina',
+ 'kam' => 'kamba',
+ 'kde' => 'makonde',
+ 'kea' => 'kapverdšćina',
+ 'khq' => 'koyra chiini',
+ 'ki' => 'kikuyu',
+ 'kk' => 'kazachšćina',
+ 'kl' => 'gröndlandšćina',
+ 'kln' => 'kalenjin',
+ 'km' => 'khmeršćina',
+ 'kn' => 'kannadšćina',
+ 'ko' => 'korejšćina',
+ 'koi' => 'permska komišćina',
+ 'kok' => 'konkani',
+ 'kri' => 'krio',
+ 'ks' => 'kašmiršćina',
+ 'ksb' => 'šambala',
+ 'ksf' => 'bafia',
+ 'ku' => 'kurdišćina',
+ 'kw' => 'kornišćina',
+ 'ky' => 'kirgišćina',
+ 'la' => 'łaćonšćina',
+ 'lag' => 'langi',
+ 'lb' => 'luxemburgšćina',
+ 'lg' => 'gandšćina',
+ 'li' => 'limburšćina',
+ 'lkt' => 'lakota',
+ 'ln' => 'lingala',
+ 'lo' => 'laošćina',
+ 'lt' => 'litawšćina',
+ 'lu' => 'luba-katanga',
+ 'luo' => 'luo',
+ 'luy' => 'luhya',
+ 'lv' => 'letišćina',
+ 'mas' => 'masaišćina',
+ 'mer' => 'meru',
+ 'mfe' => 'mauriciska kreolšćina',
+ 'mg' => 'malagassišćina',
+ 'mgh' => 'makhuwa-meetto',
+ 'mgo' => 'meta’',
+ 'mi' => 'maoršćina',
+ 'mk' => 'makedonšćina',
+ 'ml' => 'malajamšćina',
+ 'mn' => 'mongolšćina',
+ 'moh' => 'mohawkšćina',
+ 'mr' => 'maratišćina',
+ 'ms' => 'malajšćina',
+ 'mt' => 'maltašćina',
+ 'mua' => 'mundang',
+ 'mus' => 'krik',
+ 'my' => 'burmašćina',
+ 'na' => 'naurušćina',
+ 'naq' => 'nama',
+ 'nb' => 'norwegšćina (bokmål)',
+ 'nd' => 'sewjero-ndebele',
+ 'nds' => 'delnjoněmčina',
+ 'ne' => 'nepalšćina',
+ 'nl' => 'nižozemšćina',
+ 'nl-be' => 'flamšćina',
+ 'nmg' => 'kwasio',
+ 'nn' => 'norwegšćina (nynorsk)',
+ 'no' => 'norwegšćina',
+ 'nqo' => 'n’ko',
+ 'nus' => 'nuer',
+ 'nv' => 'navaho',
+ 'nyn' => 'nyankole',
+ 'oc' => 'okcitanšćina',
+ 'om' => 'oromo',
+ 'or' => 'orijšćina',
+ 'pa' => 'pandźabšćina',
+ 'pl' => 'pólšćina',
+ 'prg' => 'prušćina',
+ 'ps' => 'paštunšćina',
+ 'pt' => 'portugalšćina',
+ 'pt-br' => 'brazilska portugalšćina',
+ 'pt-pt' => 'europska portugalšćina',
+ 'qu' => 'kečua',
+ 'quc' => 'kʼicheʼ',
+ 'rm' => 'retoromanšćina',
+ 'rn' => 'kirundišćina',
+ 'ro' => 'rumunšćina',
+ 'ro-md' => 'moldawšćina',
+ 'rof' => 'rombo',
+ 'ru' => 'rušćina',
+ 'rw' => 'kinjarwanda',
+ 'rwk' => 'rwa',
+ 'sa' => 'sanskrit',
+ 'saq' => 'samburu',
+ 'sbp' => 'sangu',
+ 'sc' => 'sardinšćina',
+ 'scn' => 'sicilšćina',
+ 'sd' => 'sindhišćina',
+ 'se' => 'sewjerosamišćina',
+ 'seh' => 'sena',
+ 'ses' => 'koyra senni',
+ 'sg' => 'sango',
+ 'sh' => 'serbochorwatšćina',
+ 'shi' => 'tašelhit',
+ 'si' => 'singhalšćina',
+ 'sk' => 'słowakšćina',
+ 'sl' => 'słowjenšćina',
+ 'sm' => 'samoašćina',
+ 'sma' => 'južnosamišćina',
+ 'smj' => 'lule-samišćina',
+ 'smn' => 'inari-samišćina',
+ 'sms' => 'skolt-samišćina',
+ 'sn' => 'šonašćina',
+ 'so' => 'somališćina',
+ 'sq' => 'albanšćina',
+ 'sr' => 'serbišćina',
+ 'ss' => 'siswati',
+ 'st' => 'južnosotšćina (Sesotho)',
+ 'stq' => 'saterfrizišćina',
+ 'su' => 'sundanezišćina',
+ 'sv' => 'šwedšćina',
+ 'sw' => 'suahelšćina',
+ 'swc' => 'kongoska suahelšćina',
+ 'ta' => 'tamilšćina',
+ 'te' => 'telugu',
+ 'teo' => 'teso',
+ 'tg' => 'tadźikšćina',
+ 'th' => 'thailandšćina',
+ 'ti' => 'tigrinšćina',
+ 'tk' => 'turkmenšćina',
+ 'tl' => 'tagalog',
+ 'tn' => 'tswana',
+ 'to' => 'tongašćina',
+ 'tr' => 'turkowšćina',
+ 'ts' => 'tsonga',
+ 'tt' => 'tataršćina',
+ 'tw' => 'twi',
+ 'twq' => 'tasawaq',
+ 'ty' => 'tahitišćina',
+ 'tzm' => 'tamazight (srjedźny Marokko)',
+ 'ug' => 'ujguršćina',
+ 'uk' => 'ukrainšćina',
+ 'und' => 'njeznata rěč',
+ 'ur' => 'urdušćina',
+ 'uz' => 'uzbekšćina',
+ 'vai' => 'vai',
+ 'vi' => 'vietnamšćina',
+ 'vo' => 'volapük',
+ 'vun' => 'vunjo',
+ 'wa' => 'walonšćina',
+ 'wo' => 'wolof',
+ 'xh' => 'xhosa',
+ 'xog' => 'soga',
+ 'yi' => 'jidišćina',
+ 'yo' => 'jorubašćina',
+ 'za' => 'zhuang',
+ 'zgh' => 'tamazight',
+ 'zh' => 'chinšćina',
+ 'zh-hans' => 'chinšćina (zjednorjena)',
+ 'zh-hant' => 'chinšćina (tradicionalna)',
+ 'zu' => 'zulušćina"',
+ 'zxx' => 'žadyn rěčny wobsah',
+);
+
+$currencyNames = array(
+ 'ADP' => 'andorraska peseta',
+ 'AED' => 'ZAE dirham',
+ 'AFN' => 'afghaniski afghani',
+ 'ALL' => 'albanski lek',
+ 'AMD' => 'armenski dram',
+ 'ANG' => 'nižozemsko-antilski gulden',
+ 'AOA' => 'angolska kwanza',
+ 'AOK' => 'angolska kwanza (1977–1990)',
+ 'AON' => 'angolska nowa kwanza (1990–2000)',
+ 'AOR' => 'angolska kwanza reajustado (1995–1999)',
+ 'ARA' => 'argentinski austral',
+ 'ARP' => 'argentinski peso (1983–1985)',
+ 'ARS' => 'argentinski peso',
+ 'ATS' => 'awstriski šiling',
+ 'AUD' => 'awstralski dolar',
+ 'AWG' => 'aruba-florin',
+ 'AZM' => 'azerbajdźanski manat (1993–2006)',
+ 'AZN' => 'azerbajdźanski manat',
+ 'BAD' => 'bosniski dinar',
+ 'BAM' => 'bosniska konwertibelna hriwna',
+ 'BBD' => 'barbadoski dolar',
+ 'BDT' => 'bangladešska taka',
+ 'BEC' => 'belgiski frank (konwertibelny)',
+ 'BEF' => 'belgiski frank',
+ 'BEL' => 'belgiski finančny frank',
+ 'BGL' => 'bołharski lew (1962–1999)',
+ 'BGN' => 'bołharski lew',
+ 'BHD' => 'bahrainski dinar',
+ 'BIF' => 'burundiski frank',
+ 'BMD' => 'bermudaski dolar',
+ 'BND' => 'bruneiski dolar',
+ 'BOB' => 'boliwiski boliviano',
+ 'BOP' => 'boliwiski peso',
+ 'BOV' => 'boliwiski mvdol',
+ 'BRB' => 'brazilski nowy cruzeiro (1967–1986)',
+ 'BRC' => 'brazilski cruzado (1986–1989)',
+ 'BRE' => 'brazilski cruzeiro (1990–1993)',
+ 'BRL' => 'brazilski real',
+ 'BRN' => 'brazilski nowy cruzado (1989–1990)',
+ 'BRR' => 'brazilski cruzeiro (1993–1994)',
+ 'BSD' => 'bahamaski dolar',
+ 'BTN' => 'bhutanski ngultrum',
+ 'BUK' => 'burmaski kyat',
+ 'BWP' => 'botswanska pula',
+ 'BYB' => 'běłoruski rubl (1994–1999)',
+ 'BYR' => 'běłoruski rubl',
+ 'BZD' => 'belizeski dolar',
+ 'CAD' => 'kanadiski dolar',
+ 'CDF' => 'kongoski frank',
+ 'CHF' => 'šwicarski frank',
+ 'CLP' => 'chilski peso',
+ 'CNY' => 'chinski yuan',
+ 'COP' => 'kolumbiski peso',
+ 'CRC' => 'kosta-rikaski colón',
+ 'CUC' => 'kubaski konwertibelny peso',
+ 'CUP' => 'kubaski peso',
+ 'CVE' => 'kapverdski escudo',
+ 'CZK' => 'čěska króna',
+ 'DJF' => 'dźibutiski frank',
+ 'DKK' => 'danska króna',
+ 'DOP' => 'dominikanski peso',
+ 'DZD' => 'algeriski dinar',
+ 'EGP' => 'egyptowski punt',
+ 'ERN' => 'eritrejska nakfa',
+ 'ETB' => 'etiopiski birr',
+ 'EUR' => 'euro',
+ 'FJD' => 'fidźiski dolar',
+ 'FKP' => 'falklandski punt',
+ 'GBP' => 'britiski punt',
+ 'GEL' => 'georgiski lari',
+ 'GHS' => 'ghanaski cedi',
+ 'GIP' => 'gibraltarski punt',
+ 'GMD' => 'gambiski dalasi',
+ 'GNF' => 'ginejski frank',
+ 'GTQ' => 'guatemalski quetzal',
+ 'GWP' => 'ginejsko-bissauski peso',
+ 'GYD' => 'guyanski dolar',
+ 'HKD' => 'hongkongski dolar',
+ 'HNL' => 'honduraska lempira',
+ 'HRK' => 'chorwatska kuna',
+ 'HTG' => 'haitiska gourda',
+ 'HUF' => 'madźarski forint',
+ 'IDR' => 'indoneska rupija',
+ 'ILS' => 'israelski nowy šekel',
+ 'INR' => 'indiska rupija',
+ 'IQD' => 'irakski dinar',
+ 'IRR' => 'iranski rial',
+ 'ISK' => 'islandska króna',
+ 'JMD' => 'jamaiski dolar',
+ 'JOD' => 'jordaniski dinar',
+ 'JPY' => 'japanski yen',
+ 'KES' => 'keniaski šiling',
+ 'KGS' => 'kirgiski som',
+ 'KHR' => 'kambodźaski riel',
+ 'KMF' => 'komorski frank',
+ 'KPW' => 'sewjernokorejski won',
+ 'KRW' => 'južnokorejski won',
+ 'KWD' => 'kuwaitski dinar',
+ 'KYD' => 'kajmanski dolar',
+ 'KZT' => 'kazachski tenge',
+ 'LAK' => 'laoski kip',
+ 'LBP' => 'libanonski punt',
+ 'LKR' => 'sri-lankaska rupija',
+ 'LRD' => 'liberiski dolar',
+ 'LTL' => 'litawski litas',
+ 'LVL' => 'letiski lat',
+ 'LYD' => 'libyski dinar',
+ 'MAD' => 'marokkoski dirham',
+ 'MDL' => 'moldawski leu',
+ 'MGA' => 'madagaskarski ariary',
+ 'MKD' => 'makedonski denar',
+ 'MMK' => 'myanmarski kyat',
+ 'MNT' => 'mongolski tugrik',
+ 'MOP' => 'macaoska pataka',
+ 'MRO' => 'mawretanska ouguiya',
+ 'MUR' => 'mauritiuska rupija',
+ 'MVR' => 'malediwiska rupija',
+ 'MWK' => 'malawiski kwacha',
+ 'MXN' => 'mexiski peso',
+ 'MYR' => 'malajziski ringgit',
+ 'MZE' => 'mosambikski escudo',
+ 'MZM' => 'mosambikski metical (1980–2006)',
+ 'MZN' => 'mosambikski metical',
+ 'NAD' => 'namibiski dolar',
+ 'NGN' => 'nigeriski naira',
+ 'NIO' => 'nikaraguaski cordoba',
+ 'NOK' => 'norwegska króna',
+ 'NPR' => 'nepalska rupija',
+ 'NZD' => 'nowoseelandski dolar',
+ 'OMR' => 'omanski rial',
+ 'PAB' => 'panamaski balboa',
+ 'PEN' => 'peruski nowy sol',
+ 'PGK' => 'papua-nowoginejski kina',
+ 'PHP' => 'filipinski peso',
+ 'PKR' => 'pakistanska rupija',
+ 'PLN' => 'pólski złoty',
+ 'PYG' => 'paraguayski guarani',
+ 'QAR' => 'katarski rial',
+ 'RON' => 'rumunski leu',
+ 'RSD' => 'serbiski dinar',
+ 'RUB' => 'ruski rubl',
+ 'RWF' => 'ruandiski frank',
+ 'SAR' => 'saudi-arabski rial',
+ 'SBD' => 'salomonski dolar',
+ 'SCR' => 'seychellska rupija',
+ 'SDG' => 'sudanski punt',
+ 'SEK' => 'šwedska króna',
+ 'SGD' => 'singapurski dolar',
+ 'SHP' => 'St. Helenski punt',
+ 'SLL' => 'sierra-leoneski leone',
+ 'SOS' => 'somaliski šiling',
+ 'SRD' => 'surinamski dolar',
+ 'SSP' => 'južnosudanski punt',
+ 'STD' => 'são tomeski dobra',
+ 'SVC' => 'el salvadorski colón',
+ 'SYP' => 'syriski punt',
+ 'SZL' => 'swasiski lilangeni',
+ 'THB' => 'thaiski baht',
+ 'TJS' => 'tadźikski somoni',
+ 'TMT' => 'turkmenski manat',
+ 'TND' => 'tuneziski dinar',
+ 'TOP' => 'tongaski paʻanga',
+ 'TRY' => 'turkowska lira',
+ 'TTD' => 'trinidad-tobagoski dolar',
+ 'TWD' => 'nowy taiwanski dolar',
+ 'TZS' => 'tansaniski šiling',
+ 'UAH' => 'ukrainska hriwna',
+ 'UGX' => 'ugandaski šiling',
+ 'USD' => 'ameriski dolar',
+ 'UYU' => 'uruguayski peso',
+ 'UZS' => 'uzbekski sum',
+ 'VEF' => 'venezuelski bolívar',
+ 'VND' => 'vietnamski dong',
+ 'VUV' => 'vanuatuski vatu',
+ 'WST' => 'samoaski tala',
+ 'XAF' => 'CFA-frank (BEAC)',
+ 'XCD' => 'wuchodnokaribiski dolar',
+ 'XOF' => 'CFA-frank (BCEAO)',
+ 'XPF' => 'CFP-frank',
+ 'XXX' => 'njeznata měna',
+ 'YER' => 'jemenski rial',
+ 'ZAR' => 'južnoafriski rand',
+ 'ZMW' => 'sambiski kwacha',
+);
+
+$currencySymbols = array(
+ 'ALL' => 'ALL',
+ 'AUD' => 'AUD',
+ 'BGN' => 'BGN',
+ 'CAD' => 'CA$',
+ 'CNY' => 'CN¥',
+ 'EUR' => '€',
+ 'GBP' => '£',
+ 'HKD' => 'HK$',
+ 'ILS' => '₪',
+ 'JPY' => '¥',
+ 'KPW' => 'KPW',
+ 'KRW' => '₩',
+ 'MXN' => 'MX$',
+ 'NZD' => 'NZ$',
+ 'PLN' => 'zł',
+ 'THB' => '฿',
+ 'TWD' => 'NT$',
+ 'USD' => '$',
+ 'VND' => '₫',
+ 'XAF' => 'FCFA',
+ 'XCD' => 'EC$',
+ 'XOF' => 'CFA',
+ 'XPF' => 'CFPF',
+);
+
+$countryNames = array(
+ 'AC' => 'Ascension',
+ 'AD' => 'Andorra',
+ 'AE' => 'Zjednoćene arabske emiraty',
+ 'AF' => 'Afghanistan',
+ 'AG' => 'Antigua a Barbuda',
+ 'AI' => 'Anguilla',
+ 'AL' => 'Albanska',
+ 'AM' => 'Armenska',
+ 'AO' => 'Angola',
+ 'AQ' => 'Antarktika',
+ 'AR' => 'Argentinska',
+ 'AS' => 'Ameriska Samoa',
+ 'AT' => 'Awstriska',
+ 'AU' => 'Awstralska',
+ 'AW' => 'Aruba',
+ 'AX' => 'Åland',
+ 'AZ' => 'Azerbajdźan',
+ 'BA' => 'Bosniska a Hercegowina',
+ 'BB' => 'Barbados',
+ 'BD' => 'Bangladeš',
+ 'BE' => 'Belgiska',
+ 'BF' => 'Burkina Faso',
+ 'BG' => 'Bołharska',
+ 'BH' => 'Bahrain',
+ 'BI' => 'Burundi',
+ 'BJ' => 'Benin',
+ 'BL' => 'St. Barthélemy',
+ 'BM' => 'Bermudy',
+ 'BN' => 'Brunei',
+ 'BO' => 'Boliwiska',
+ 'BQ' => 'Karibiska Nižozemska',
+ 'BR' => 'Brazilska',
+ 'BS' => 'Bahamy',
+ 'BT' => 'Bhutan',
+ 'BV' => 'Bouvetowa kupa',
+ 'BW' => 'Botswana',
+ 'BY' => 'Běłoruska',
+ 'BZ' => 'Belize',
+ 'CA' => 'Kanada',
+ 'CC' => 'Kokosowe kupy',
+ 'CD' => 'Kongo-Kinshasa',
+ 'CF' => 'Centralnoafriska republika',
+ 'CG' => 'Kongo-Brazzaville',
+ 'CH' => 'Šwicarska',
+ 'CI' => 'Côte d’Ivoire',
+ 'CK' => 'Cookowe kupy',
+ 'CL' => 'Chilska',
+ 'CM' => 'Kamerun',
+ 'CN' => 'China',
+ 'CO' => 'Kolumbiska',
+ 'CP' => 'Clippertonowa kupa',
+ 'CR' => 'Kosta Rika',
+ 'CU' => 'Kuba',
+ 'CV' => 'Kap Verde',
+ 'CW' => 'Curaçao',
+ 'CX' => 'Hodowna kupa',
+ 'CY' => 'Cypern',
+ 'CZ' => 'Čěska republika',
+ 'DE' => 'Němska',
+ 'DG' => 'Diego Garcia',
+ 'DJ' => 'Dźibuti',
+ 'DK' => 'Danska',
+ 'DM' => 'Dominika',
+ 'DO' => 'Dominikanska republika',
+ 'DZ' => 'Algeriska',
+ 'EA' => 'Ceuta a Melilla',
+ 'EC' => 'Ekwador',
+ 'EE' => 'Estiska',
+ 'EG' => 'Egyptowska',
+ 'EH' => 'Zapadna Sahara',
+ 'ER' => 'Eritreja',
+ 'ES' => 'Španiska',
+ 'ET' => 'Etiopiska',
+ 'EU' => 'Europska unija',
+ 'FI' => 'Finska',
+ 'FJ' => 'Fidźi',
+ 'FK' => 'Falklandske kupy',
+ 'FM' => 'Mikroneziska',
+ 'FO' => 'Färöske kupy',
+ 'FR' => 'Francoska',
+ 'GA' => 'Gabun',
+ 'GB' => 'UK',
+ 'GD' => 'Grenada',
+ 'GE' => 'Georgiska',
+ 'GF' => 'Francoska Guyana',
+ 'GG' => 'Guernsey',
+ 'GH' => 'Ghana',
+ 'GI' => 'Gibraltar',
+ 'GL' => 'Grönlandska',
+ 'GM' => 'Gambija',
+ 'GN' => 'Gineja',
+ 'GP' => 'Guadeloupe',
+ 'GQ' => 'Ekwatorialna Gineja',
+ 'GR' => 'Grjekska',
+ 'GS' => 'Južna Georgiska a Južne Sandwichowe kupy',
+ 'GT' => 'Guatemala',
+ 'GU' => 'Guam',
+ 'GW' => 'Gineja-Bissau',
+ 'GY' => 'Guyana',
+ 'HK' => 'Hongkong',
+ 'HM' => 'Heardowa kupa a McDonaldowe kupy',
+ 'HN' => 'Honduras',
+ 'HR' => 'Chorwatska',
+ 'HT' => 'Haiti',
+ 'HU' => 'Madźarska',
+ 'IC' => 'Kanariske kupy',
+ 'ID' => 'Indoneska',
+ 'IE' => 'Irska',
+ 'IL' => 'Israel',
+ 'IM' => 'Man',
+ 'IN' => 'Indiska',
+ 'IO' => 'Britiski teritorij w Indiskim oceanje',
+ 'IQ' => 'Irak',
+ 'IR' => 'Iran',
+ 'IS' => 'Islandska',
+ 'IT' => 'Italska',
+ 'JE' => 'Jersey',
+ 'JM' => 'Jamaika',
+ 'JO' => 'Jordaniska',
+ 'JP' => 'Japanska',
+ 'KE' => 'Kenija',
+ 'KG' => 'Kirgizistan',
+ 'KH' => 'Kambodźa',
+ 'KI' => 'Kiribati',
+ 'KM' => 'Komory',
+ 'KN' => 'St. Kitts a Nevis',
+ 'KP' => 'Sewjerna Koreja',
+ 'KR' => 'Južna Koreja',
+ 'KW' => 'Kuwait',
+ 'KY' => 'Kajmanske kupy',
+ 'KZ' => 'Kazachstan',
+ 'LA' => 'Laos',
+ 'LB' => 'Libanon',
+ 'LC' => 'St. Lucia',
+ 'LI' => 'Liechtenstein',
+ 'LK' => 'Sri Lanka',
+ 'LR' => 'Liberija',
+ 'LS' => 'Lesotho',
+ 'LT' => 'Litawska',
+ 'LU' => 'Luxemburgska',
+ 'LV' => 'Letiska',
+ 'LY' => 'Libyska',
+ 'MA' => 'Marokko',
+ 'MC' => 'Monaco',
+ 'MD' => 'Moldawska',
+ 'ME' => 'Montenegro',
+ 'MF' => 'St. Martin',
+ 'MG' => 'Madagaskar',
+ 'MH' => 'Marshallowe kupy',
+ 'MK' => 'Makedonska',
+ 'ML' => 'Mali',
+ 'MM' => 'Myanmar',
+ 'MN' => 'Mongolska',
+ 'MO' => 'Macao',
+ 'MP' => 'Sewjerne Mariany',
+ 'MQ' => 'Martinique',
+ 'MR' => 'Mawretanska',
+ 'MS' => 'Montserrat',
+ 'MT' => 'Malta',
+ 'MU' => 'Mauritius',
+ 'MV' => 'Malediwy',
+ 'MW' => 'Malawi',
+ 'MX' => 'Mexiko',
+ 'MY' => 'Malajzija',
+ 'MZ' => 'Mosambik',
+ 'NA' => 'Namibija',
+ 'NC' => 'Nowa Kaledoniska',
+ 'NE' => 'Niger',
+ 'NF' => 'Norfolkowa kupa',
+ 'NG' => 'Nigerija',
+ 'NI' => 'Nikaragua',
+ 'NL' => 'Nižozemska',
+ 'NO' => 'Norwegska',
+ 'NP' => 'Nepal',
+ 'NR' => 'Nauru',
+ 'NU' => 'Niue',
+ 'NZ' => 'Nowoseelandska',
+ 'OM' => 'Oman',
+ 'PA' => 'Panama',
+ 'PE' => 'Peru',
+ 'PF' => 'Francoska Polyneziska',
+ 'PG' => 'Papuwa-Nowa Gineja',
+ 'PH' => 'Filipiny',
+ 'PK' => 'Pakistan',
+ 'PL' => 'Pólska',
+ 'PM' => 'St. Pierre a Miquelon',
+ 'PN' => 'Pitcairnowe kupy',
+ 'PR' => 'Puerto Rico',
+ 'PS' => 'Palestina',
+ 'PT' => 'Portugalska',
+ 'PW' => 'Palau',
+ 'PY' => 'Paraguay',
+ 'QA' => 'Katar',
+ 'QO' => 'Wonkowna Oceaniska',
+ 'RE' => 'Réunion',
+ 'RO' => 'Rumunska',
+ 'RS' => 'Serbiska',
+ 'RU' => 'Ruska',
+ 'RW' => 'Ruanda',
+ 'SA' => 'Sawdi-Arabska',
+ 'SB' => 'Salomony',
+ 'SC' => 'Seychelle',
+ 'SD' => 'Sudan',
+ 'SE' => 'Šwedska',
+ 'SG' => 'Singapur',
+ 'SH' => 'St. Helena',
+ 'SI' => 'Słowjenska',
+ 'SJ' => 'Svalbard a Jan Mayen',
+ 'SK' => 'Słowakska',
+ 'SL' => 'Sierra Leone',
+ 'SM' => 'San Marino',
+ 'SN' => 'Senegal',
+ 'SO' => 'Somalija',
+ 'SR' => 'Surinam',
+ 'SS' => 'Južny Sudan',
+ 'ST' => 'São Tomé a Príncipe',
+ 'SV' => 'El Salvador',
+ 'SX' => 'Sint Maarten',
+ 'SY' => 'Syriska',
+ 'SZ' => 'Swaziska',
+ 'TA' => 'Tristan da Cunha',
+ 'TC' => 'kupy Turks a Caicos',
+ 'TD' => 'Čad',
+ 'TF' => 'Francoski južny a antarktiski teritorij',
+ 'TG' => 'Togo',
+ 'TH' => 'Thailandska',
+ 'TJ' => 'Tadźikistan',
+ 'TK' => 'Tokelau',
+ 'TL' => 'Timor-Leste',
+ 'TM' => 'Turkmeniska',
+ 'TN' => 'Tuneziska',
+ 'TO' => 'Tonga',
+ 'TR' => 'Turkowska',
+ 'TT' => 'Trinidad a Tobago',
+ 'TV' => 'Tuvalu',
+ 'TW' => 'Taiwan',
+ 'TZ' => 'Tansanija',
+ 'UA' => 'Ukraina',
+ 'UG' => 'Uganda',
+ 'UM' => 'Ameriska Oceaniska',
+ 'US' => 'USA',
+ 'UY' => 'Uruguay',
+ 'UZ' => 'Uzbekistan',
+ 'VA' => 'Vatikanske město',
+ 'VC' => 'St. Vincent a Grenadiny',
+ 'VE' => 'Venezuela',
+ 'VG' => 'Britiske knježniske kupy',
+ 'VI' => 'Ameriske knježniske kupy',
+ 'VN' => 'Vietnam',
+ 'VU' => 'Vanuatu',
+ 'WF' => 'Wallis a Futuna',
+ 'WS' => 'Samoa',
+ 'XK' => 'Kosowo',
+ 'YE' => 'Jemen',
+ 'YT' => 'Mayotte',
+ 'ZA' => 'Južna Afrika (Republika)',
+ 'ZM' => 'Sambija',
+ 'ZW' => 'Simbabwe',
+);
+
+$timeUnits = array(
+ 'day-few' => '{0} dny',
+ 'day-future-few' => 'za {0} dny',
+ 'day-future-one' => 'za {0} dźeń',
+ 'day-future-other' => 'za {0} dnjow',
+ 'day-future-two' => 'za {0} dnjej',
+ 'day-narrow-future-few' => 'za {0} d',
+ 'day-narrow-future-one' => 'za {0} d',
+ 'day-narrow-future-other' => 'za {0} d',
+ 'day-narrow-future-two' => 'za {0} d',
+ 'day-narrow-past-few' => 'před {0} d',
+ 'day-narrow-past-one' => 'před {0} d',
+ 'day-narrow-past-other' => 'před {0} d',
+ 'day-narrow-past-two' => 'před {0} d',
+ 'day-one' => '{0} dźeń',
+ 'day-other' => '{0} dnjow',
+ 'day-past-few' => 'před {0} dnjemi',
+ 'day-past-one' => 'před {0} dnjom',
+ 'day-past-other' => 'před {0} dnjemi',
+ 'day-past-two' => 'před {0} dnjomaj',
+ 'day-short-future-few' => 'za {0} dny',
+ 'day-short-future-one' => 'za {0} dźeń',
+ 'day-short-future-other' => 'za {0} dnj.',
+ 'day-short-future-two' => 'za {0} dnj.',
+ 'day-short-past-few' => 'před {0} dnj.',
+ 'day-short-past-one' => 'před {0} dnj.',
+ 'day-short-past-other' => 'před {0} dnj.',
+ 'day-short-past-two' => 'před {0} dnj.',
+ 'day-two' => '{0} dnjej',
+ 'hour-few' => '{0} hodźiny',
+ 'hour-future-few' => 'za {0} hodźiny',
+ 'hour-future-one' => 'za {0} hodźinu',
+ 'hour-future-other' => 'za {0} hodźin',
+ 'hour-future-two' => 'za {0} hodźinje',
+ 'hour-narrow-future-few' => 'za {0} h',
+ 'hour-narrow-future-one' => 'za {0} h',
+ 'hour-narrow-future-other' => 'za {0} h',
+ 'hour-narrow-future-two' => 'za {0} h',
+ 'hour-narrow-past-few' => 'před {0} h',
+ 'hour-narrow-past-one' => 'před {0} h',
+ 'hour-narrow-past-other' => 'před {0} h',
+ 'hour-narrow-past-two' => 'před {0} h',
+ 'hour-one' => '{0} hodźina',
+ 'hour-other' => '{0} hodźinow',
+ 'hour-past-few' => 'před {0} hodźinami',
+ 'hour-past-one' => 'před {0} hodźinu',
+ 'hour-past-other' => 'před {0} hodźinami',
+ 'hour-past-two' => 'před {0} hodźinomaj',
+ 'hour-short-future-few' => 'za {0} hodź.',
+ 'hour-short-future-one' => 'za {0} hodź.',
+ 'hour-short-future-other' => 'za {0} hodź.',
+ 'hour-short-future-two' => 'za {0} hodź.',
+ 'hour-short-past-few' => 'před {0} hodź.',
+ 'hour-short-past-one' => 'před {0} hodź.',
+ 'hour-short-past-other' => 'před {0} hodź.',
+ 'hour-short-past-two' => 'před {0} hodź.',
+ 'hour-two' => '{0} hodźinje',
+ 'microsecond-few' => '{0} mikrosekundy',
+ 'microsecond-one' => '{0} mikrosekunda',
+ 'microsecond-other' => '{0} mikrosekundow',
+ 'microsecond-two' => '{0} mikrosekundźe',
+ 'millisecond-few' => '{0} milisekundy',
+ 'millisecond-one' => '{0} milisekunda',
+ 'millisecond-other' => '{0} milisekundow',
+ 'millisecond-two' => '{0} milisekundźe',
+ 'minute-few' => '{0} minuty',
+ 'minute-future-few' => 'za {0} minuty',
+ 'minute-future-one' => 'za {0} minutu',
+ 'minute-future-other' => 'za {0} minutow',
+ 'minute-future-two' => 'za {0} minuće',
+ 'minute-narrow-future-few' => 'za {0} m',
+ 'minute-narrow-future-one' => 'za {0} m',
+ 'minute-narrow-future-other' => 'za {0} m',
+ 'minute-narrow-future-two' => 'za {0} m',
+ 'minute-narrow-past-few' => 'před {0} m',
+ 'minute-narrow-past-one' => 'před {0} m',
+ 'minute-narrow-past-other' => 'před {0} m',
+ 'minute-narrow-past-two' => 'před {0} m',
+ 'minute-one' => '{0} minuta',
+ 'minute-other' => '{0} minutow',
+ 'minute-past-few' => 'před {0} minutami',
+ 'minute-past-one' => 'před {0} minutu',
+ 'minute-past-other' => 'před {0} minutami',
+ 'minute-past-two' => 'před {0} minutomaj',
+ 'minute-short-future-few' => 'za {0} min.',
+ 'minute-short-future-one' => 'za {0} min.',
+ 'minute-short-future-other' => 'za {0} min.',
+ 'minute-short-future-two' => 'za {0} min.',
+ 'minute-short-past-few' => 'před {0} min.',
+ 'minute-short-past-one' => 'před {0} min.',
+ 'minute-short-past-other' => 'před {0} min.',
+ 'minute-short-past-two' => 'před {0} min.',
+ 'minute-two' => '{0} minuće',
+ 'month-few' => '{0} měsacy',
+ 'month-future-few' => 'za {0} měsacy',
+ 'month-future-one' => 'za {0} měsac',
+ 'month-future-other' => 'za {0} měsacow',
+ 'month-future-two' => 'za {0} měsacaj',
+ 'month-narrow-future-few' => 'za {0} měs.',
+ 'month-narrow-future-one' => 'za {0} měs.',
+ 'month-narrow-future-other' => 'za {0} měs.',
+ 'month-narrow-future-two' => 'za {0} měs.',
+ 'month-narrow-past-few' => 'před {0} měs.',
+ 'month-narrow-past-one' => 'před {0} měs.',
+ 'month-narrow-past-other' => 'před {0} měs.',
+ 'month-narrow-past-two' => 'před {0} měs.',
+ 'month-one' => '{0} měsac',
+ 'month-other' => '{0} měsacow',
+ 'month-past-few' => 'před {0} měsacami',
+ 'month-past-one' => 'před {0} měsacom',
+ 'month-past-other' => 'před {0} měsacami',
+ 'month-past-two' => 'před {0} měsacomaj',
+ 'month-short-future-few' => 'za {0} měs.',
+ 'month-short-future-one' => 'za {0} měs.',
+ 'month-short-future-other' => 'za {0} měs.',
+ 'month-short-future-two' => 'za {0} měs.',
+ 'month-short-past-few' => 'před {0} měs.',
+ 'month-short-past-one' => 'před {0} měs.',
+ 'month-short-past-other' => 'před {0} měs.',
+ 'month-short-past-two' => 'před {0} měs.',
+ 'month-two' => '{0} měsacaj',
+ 'nanosecond-few' => '{0} nanosekundy',
+ 'nanosecond-one' => '{0} nanosekunda',
+ 'nanosecond-other' => '{0} nanosekundow',
+ 'nanosecond-two' => '{0} nanosekundźe',
+ 'quarter-future-few' => 'za {0} kwartale',
+ 'quarter-future-one' => 'za {0} kwartal',
+ 'quarter-future-other' => 'za {0} kwartalow',
+ 'quarter-future-two' => 'za {0} kwartalej',
+ 'quarter-narrow-future-few' => 'za {0} kw.',
+ 'quarter-narrow-future-one' => 'za {0} kw.',
+ 'quarter-narrow-future-other' => 'za {0} kw.',
+ 'quarter-narrow-future-two' => 'za {0} kw.',
+ 'quarter-narrow-past-few' => 'před {0} kw.',
+ 'quarter-narrow-past-one' => 'před {0} kw.',
+ 'quarter-narrow-past-other' => 'před {0} kw.',
+ 'quarter-narrow-past-two' => 'před {0} kw.',
+ 'quarter-past-few' => 'před {0} kwartalemi',
+ 'quarter-past-one' => 'před {0} kwartalom',
+ 'quarter-past-other' => 'před {0} kwartalemi',
+ 'quarter-past-two' => 'před {0} kwartalomaj',
+ 'quarter-short-future-few' => 'za {0} kwart.',
+ 'quarter-short-future-one' => 'za {0} kwart.',
+ 'quarter-short-future-other' => 'za {0} kwart.',
+ 'quarter-short-future-two' => 'za {0} kwart.',
+ 'quarter-short-past-few' => 'před {0} kwart.',
+ 'quarter-short-past-one' => 'před {0} kwart.',
+ 'quarter-short-past-other' => 'před {0} kwart.',
+ 'quarter-short-past-two' => 'před {0} kwart.',
+ 'second-few' => '{0} sekundy',
+ 'second-future-few' => 'za {0} sekundy',
+ 'second-future-one' => 'za {0} sekundu',
+ 'second-future-other' => 'za {0} sekundow',
+ 'second-future-two' => 'za {0} sekundźe',
+ 'second-narrow-future-few' => 'za {0} s',
+ 'second-narrow-future-one' => 'za {0} s',
+ 'second-narrow-future-other' => 'za {0} s',
+ 'second-narrow-future-two' => 'za {0} s',
+ 'second-narrow-past-few' => 'před {0} s',
+ 'second-narrow-past-one' => 'před {0} s',
+ 'second-narrow-past-other' => 'před {0} s',
+ 'second-narrow-past-two' => 'před {0} s',
+ 'second-one' => '{0} sekunda',
+ 'second-other' => '{0} sekundow',
+ 'second-past-few' => 'před {0} sekundami',
+ 'second-past-one' => 'před {0} sekundu',
+ 'second-past-other' => 'před {0} sekundami',
+ 'second-past-two' => 'před {0} sekundomaj',
+ 'second-short-future-few' => 'za {0} sek.',
+ 'second-short-future-one' => 'za {0} sek.',
+ 'second-short-future-other' => 'za {0} sek.',
+ 'second-short-future-two' => 'za {0} sek.',
+ 'second-short-past-few' => 'před {0} sek.',
+ 'second-short-past-one' => 'před {0} sek.',
+ 'second-short-past-other' => 'před {0} sek.',
+ 'second-short-past-two' => 'před {0} sek.',
+ 'second-two' => '{0} sekundźe',
+ 'week-few' => '{0} tydźenje',
+ 'week-future-few' => 'za {0} tydźenje',
+ 'week-future-one' => 'za {0} tydźeń',
+ 'week-future-other' => 'za {0} tydźenjow',
+ 'week-future-two' => 'za {0} tydźenjej',
+ 'week-narrow-future-few' => 'za {0} tydź.',
+ 'week-narrow-future-one' => 'za {0} tydź.',
+ 'week-narrow-future-other' => 'za {0} tydź.',
+ 'week-narrow-future-two' => 'za {0} tydź.',
+ 'week-narrow-past-few' => 'před {0} tydź.',
+ 'week-narrow-past-one' => 'před {0} tydź.',
+ 'week-narrow-past-other' => 'před {0} tydź.',
+ 'week-narrow-past-two' => 'před {0} tydź.',
+ 'week-one' => '{0} tydźeń',
+ 'week-other' => '{0} tydźenjow',
+ 'week-past-few' => 'před {0} tydźenjemi',
+ 'week-past-one' => 'před {0} tydźenjom',
+ 'week-past-other' => 'před {0} tydźenjemi',
+ 'week-past-two' => 'před {0} tydźenjomaj',
+ 'week-short-future-few' => 'za {0} tydź.',
+ 'week-short-future-one' => 'za {0} tydź.',
+ 'week-short-future-other' => 'za {0} tydź.',
+ 'week-short-future-two' => 'za {0} tydź.',
+ 'week-short-past-few' => 'před {0} tydź.',
+ 'week-short-past-one' => 'před {0} tydź.',
+ 'week-short-past-other' => 'před {0} tydź.',
+ 'week-short-past-two' => 'před {0} tydź.',
+ 'week-two' => '{0} tydźenjej',
+ 'year-few' => '{0} lěta',
+ 'year-future-few' => 'za {0} lěta',
+ 'year-future-one' => 'za {0} lěto',
+ 'year-future-other' => 'za {0} lět',
+ 'year-future-two' => 'za {0} lěće',
+ 'year-narrow-future-few' => 'za {0} l.',
+ 'year-narrow-future-one' => 'za {0} l.',
+ 'year-narrow-future-other' => 'za {0} l.',
+ 'year-narrow-future-two' => 'za {0} l.',
+ 'year-narrow-past-few' => 'před {0} l.',
+ 'year-narrow-past-one' => 'před {0} l.',
+ 'year-narrow-past-other' => 'před {0} l.',
+ 'year-narrow-past-two' => 'před {0} l.',
+ 'year-one' => '{0} lěto',
+ 'year-other' => '{0} lět',
+ 'year-past-few' => 'před {0} lětami',
+ 'year-past-one' => 'před {0} lětom',
+ 'year-past-other' => 'před {0} lětami',
+ 'year-past-two' => 'před {0} lětomaj',
+ 'year-short-future-few' => 'za {0} l.',
+ 'year-short-future-one' => 'za {0} l.',
+ 'year-short-future-other' => 'za {0} l.',
+ 'year-short-future-two' => 'za {0} l.',
+ 'year-short-past-few' => 'před {0} l.',
+ 'year-short-past-one' => 'před {0} l.',
+ 'year-short-past-other' => 'před {0} l.',
+ 'year-short-past-two' => 'před {0} l.',
+ 'year-two' => '{0} lěće',
+);
diff --git a/MLEB/cldr/CldrNames/CldrNamesHu.php b/MLEB/cldr/CldrNames/CldrNamesHu.php
new file mode 100644
index 00000000..70a7701f
--- /dev/null
+++ b/MLEB/cldr/CldrNames/CldrNamesHu.php
@@ -0,0 +1,1337 @@
+<?php
+
+$languageNames = array(
+ 'aa' => 'afar',
+ 'ab' => 'abház',
+ 'ace' => 'achinéz',
+ 'ach' => 'akoli',
+ 'ada' => 'adangme',
+ 'ady' => 'adyghe',
+ 'ae' => 'avesztán',
+ 'af' => 'afrikaans',
+ 'afh' => 'afrihili',
+ 'agq' => 'agem',
+ 'ain' => 'ainu',
+ 'ak' => 'akan',
+ 'akk' => 'akkád',
+ 'ale' => 'aleut',
+ 'alt' => 'dél-altaji',
+ 'am' => 'amhara',
+ 'an' => 'aragonéz',
+ 'ang' => 'óangol',
+ 'anp' => 'angika',
+ 'ar' => 'arab',
+ 'ar-001' => 'modern szabányos arab',
+ 'arc' => 'arámi',
+ 'arn' => 'araucani',
+ 'arp' => 'arapaho',
+ 'arw' => 'aravak',
+ 'as' => 'asszámi',
+ 'asa' => 'asu',
+ 'ast' => 'asztúr',
+ 'av' => 'avar',
+ 'awa' => 'awádi',
+ 'ay' => 'ajmara',
+ 'az' => 'azerbajdzsáni',
+ 'ba' => 'baskír',
+ 'bal' => 'balucsi',
+ 'ban' => 'balinéz',
+ 'bas' => 'basza',
+ 'bax' => 'bamun',
+ 'bbj' => 'gomala',
+ 'be' => 'belorusz',
+ 'bej' => 'bedzsa',
+ 'bem' => 'bemba',
+ 'bez' => 'bena',
+ 'bfd' => 'bafut',
+ 'bg' => 'bolgár',
+ 'bho' => 'bodzspuri',
+ 'bi' => 'bislama',
+ 'bik' => 'bikol',
+ 'bin' => 'bini',
+ 'bkm' => 'kom',
+ 'bla' => 'siksika',
+ 'bm' => 'bambara',
+ 'bn' => 'bengáli',
+ 'bo' => 'tibeti',
+ 'br' => 'breton',
+ 'bra' => 'braj',
+ 'brx' => 'bodo',
+ 'bs' => 'bosnyák',
+ 'bss' => 'koszi',
+ 'bua' => 'burját',
+ 'bug' => 'buginéz',
+ 'bum' => 'bulu',
+ 'byn' => 'blin',
+ 'byv' => 'medumba',
+ 'ca' => 'katalán',
+ 'cad' => 'caddo',
+ 'car' => 'karib',
+ 'cay' => 'kajuga',
+ 'cch' => 'atszam',
+ 'ce' => 'csecsen',
+ 'ceb' => 'cebui',
+ 'cgg' => 'kiga',
+ 'ch' => 'csamoró',
+ 'chb' => 'csibcsa',
+ 'chg' => 'csagatáj',
+ 'chk' => 'csukéz',
+ 'chm' => 'mari',
+ 'chn' => 'csinuk zsargon',
+ 'cho' => 'csoktó',
+ 'chp' => 'csipevé',
+ 'chr' => 'cseroki',
+ 'chy' => 'csejen',
+ 'ckb' => 'szoráni kurd',
+ 'co' => 'korzikai',
+ 'cop' => 'kopt',
+ 'cr' => 'krí',
+ 'crh' => 'krími tatár',
+ 'cs' => 'cseh',
+ 'csb' => 'kasub',
+ 'cu' => 'egyházi szláv',
+ 'cv' => 'csuvas',
+ 'cy' => 'walesi',
+ 'da' => 'dán',
+ 'dak' => 'dakota',
+ 'dar' => 'dargva',
+ 'dav' => 'taita',
+ 'de' => 'német',
+ 'de-at' => 'osztrák német',
+ 'de-ch' => 'svájci felnémet',
+ 'del' => 'delavár',
+ 'den' => 'szlevi',
+ 'dgr' => 'dogrib',
+ 'din' => 'dinka',
+ 'dje' => 'zarma',
+ 'doi' => 'dogri',
+ 'dsb' => 'alsó szorb',
+ 'dua' => 'duala',
+ 'dum' => 'közép holland',
+ 'dv' => 'divehi',
+ 'dyo' => 'jola-fonyi',
+ 'dyu' => 'diula',
+ 'dz' => 'butáni',
+ 'dzg' => 'dazaga',
+ 'ebu' => 'embu',
+ 'ee' => 'eve',
+ 'efi' => 'efik',
+ 'egy' => 'óegyiptomi',
+ 'eka' => 'ekadzsuk',
+ 'el' => 'görög',
+ 'elx' => 'elamit',
+ 'en' => 'angol',
+ 'en-au' => 'ausztrál angol',
+ 'en-ca' => 'kanadai angol',
+ 'en-gb' => 'brit angol',
+ 'en-us' => 'amerikai angol',
+ 'enm' => 'közép angol',
+ 'eo' => 'eszperantó',
+ 'es' => 'spanyol',
+ 'es-419' => 'latin-amerikai spanyol',
+ 'es-es' => 'európai spanyol',
+ 'es-mx' => 'spanyol (mexikói)',
+ 'et' => 'észt',
+ 'eu' => 'baszk',
+ 'ewo' => 'evondo',
+ 'fa' => 'perzsa',
+ 'fan' => 'fang',
+ 'fat' => 'fanti',
+ 'ff' => 'fulani',
+ 'fi' => 'finn',
+ 'fil' => 'filippínó',
+ 'fj' => 'fidzsi',
+ 'fo' => 'feröeri',
+ 'fon' => 'fon',
+ 'fr' => 'francia',
+ 'fr-ca' => 'kanadai francia',
+ 'fr-ch' => 'svájci francia',
+ 'frm' => 'közép francia',
+ 'fro' => 'ófrancia',
+ 'frr' => 'északi fríz',
+ 'frs' => 'keleti fríz',
+ 'fur' => 'friuli',
+ 'fy' => 'fríz',
+ 'ga' => 'ír',
+ 'gaa' => 'ga',
+ 'gag' => 'gagauz',
+ 'gay' => 'gajo',
+ 'gba' => 'gbaja',
+ 'gd' => 'skót gael',
+ 'gez' => 'geez',
+ 'gil' => 'ikiribati',
+ 'gl' => 'galíciai',
+ 'gmh' => 'közép felső német',
+ 'gn' => 'guarani',
+ 'goh' => 'ófelső német',
+ 'gon' => 'gondi',
+ 'gor' => 'gorontalo',
+ 'got' => 'gót',
+ 'grb' => 'grebó',
+ 'grc' => 'ógörög',
+ 'gsw' => 'svájci német',
+ 'gu' => 'gudzsarati',
+ 'guz' => 'guszii',
+ 'gv' => 'man-szigeti',
+ 'gwi' => 'gvicsin',
+ 'ha' => 'hausza',
+ 'hai' => 'haida',
+ 'haw' => 'hawaii',
+ 'he' => 'héber',
+ 'hi' => 'hindi',
+ 'hil' => 'hiligajnon',
+ 'hit' => 'hittite',
+ 'hmn' => 'hmong',
+ 'ho' => 'hiri motu',
+ 'hr' => 'horvát',
+ 'hsb' => 'felső szorb',
+ 'ht' => 'haiti',
+ 'hu' => 'magyar',
+ 'hup' => 'hupa',
+ 'hy' => 'örmény',
+ 'hz' => 'herero',
+ 'ia' => 'interlingva',
+ 'iba' => 'iban',
+ 'ibb' => 'ibibió',
+ 'id' => 'indonéz',
+ 'ie' => 'interlingue',
+ 'ig' => 'igbó',
+ 'ii' => 'szecsuán ji',
+ 'ik' => 'inupiak',
+ 'ilo' => 'ilokó',
+ 'inh' => 'ingus',
+ 'io' => 'idó',
+ 'is' => 'izlandi',
+ 'it' => 'olasz',
+ 'iu' => 'inuktitut',
+ 'ja' => 'japán',
+ 'jbo' => 'lojban',
+ 'jgo' => 'ngomba',
+ 'jmc' => 'machame',
+ 'jpr' => 'zsidó-perzsa',
+ 'jrb' => 'zsidó-arab',
+ 'jv' => 'jávai',
+ 'ka' => 'grúz',
+ 'kaa' => 'kara-kalpak',
+ 'kab' => 'kabije',
+ 'kac' => 'kacsin',
+ 'kaj' => 'jju',
+ 'kam' => 'kamba',
+ 'kaw' => 'kawi',
+ 'kbd' => 'kabardi',
+ 'kbl' => 'kanembu',
+ 'kcg' => 'tyap',
+ 'kde' => 'makonde',
+ 'kea' => 'kabuverdianu',
+ 'kfo' => 'koro',
+ 'kg' => 'kongo',
+ 'kha' => 'kaszi',
+ 'kho' => 'kotanéz',
+ 'khq' => 'kojra-csíni',
+ 'ki' => 'kikuju',
+ 'kj' => 'kuanyama',
+ 'kk' => 'kazah',
+ 'kkj' => 'kakó',
+ 'kl' => 'grönlandi',
+ 'kln' => 'kalendzsin',
+ 'km' => 'kambodzsai',
+ 'kmb' => 'kimbundu',
+ 'kn' => 'kannada',
+ 'ko' => 'koreai',
+ 'koi' => 'komi-permják',
+ 'kok' => 'konkani',
+ 'kos' => 'kosrei',
+ 'kpe' => 'kpelle',
+ 'kr' => 'kanuri',
+ 'krc' => 'karacsáj-balkár',
+ 'krl' => 'karelai',
+ 'kru' => 'kuruh',
+ 'ks' => 'kásmíri',
+ 'ksb' => 'sambala',
+ 'ksf' => 'bafia',
+ 'ksh' => 'kölsch',
+ 'ku' => 'kurd',
+ 'kum' => 'kumük',
+ 'kut' => 'kutenai',
+ 'kv' => 'komi',
+ 'kw' => 'korni',
+ 'ky' => 'kirgiz',
+ 'la' => 'latin',
+ 'lad' => 'ladino',
+ 'lag' => 'langi',
+ 'lah' => 'lahnda',
+ 'lam' => 'lamba',
+ 'lb' => 'luxemburgi',
+ 'lez' => 'lezg',
+ 'lg' => 'ganda',
+ 'li' => 'limburgi',
+ 'lkt' => 'lakota',
+ 'ln' => 'lingala',
+ 'lo' => 'laoszi',
+ 'lol' => 'mongó',
+ 'loz' => 'lozi',
+ 'lt' => 'litván',
+ 'lu' => 'luba-katanga',
+ 'lua' => 'luba-lulua',
+ 'lui' => 'luiseno',
+ 'lun' => 'lunda',
+ 'luo' => 'luo',
+ 'lus' => 'lushai',
+ 'luy' => 'lujia',
+ 'lv' => 'lett',
+ 'mad' => 'madurai',
+ 'maf' => 'mafa',
+ 'mag' => 'magahi',
+ 'mai' => 'maithili',
+ 'mak' => 'makaszar',
+ 'man' => 'mandingó',
+ 'mas' => 'masai',
+ 'mde' => 'maba',
+ 'mdf' => 'moksán',
+ 'mdr' => 'mandar',
+ 'men' => 'mende',
+ 'mer' => 'meru',
+ 'mfe' => 'mauritiusi kreol',
+ 'mg' => 'málgas',
+ 'mga' => 'közép ír',
+ 'mgh' => 'makua-metó',
+ 'mgo' => 'meta’',
+ 'mh' => 'marshalli',
+ 'mi' => 'maori',
+ 'mic' => 'mikmak',
+ 'min' => 'minangkabau',
+ 'mk' => 'macedón',
+ 'ml' => 'malajálam',
+ 'mn' => 'mongol',
+ 'mnc' => 'mandzsu',
+ 'mni' => 'manipuri',
+ 'moh' => 'mohawk',
+ 'mos' => 'moszi',
+ 'mr' => 'marathi',
+ 'ms' => 'maláj',
+ 'mt' => 'máltai',
+ 'mua' => 'mundang',
+ 'mul' => 'többszörös nyelvek',
+ 'mus' => 'krík',
+ 'mwl' => 'mirandéz',
+ 'mwr' => 'marvari',
+ 'my' => 'burmai',
+ 'mye' => 'myene',
+ 'myv' => 'erzjány',
+ 'na' => 'naurui',
+ 'nap' => 'nápolyi',
+ 'naq' => 'nama',
+ 'nb' => 'norvég bokmal',
+ 'nd' => 'északi ndebele',
+ 'nds' => 'alsónémet',
+ 'ne' => 'nepáli',
+ 'new' => 'nevari',
+ 'ng' => 'ndonga',
+ 'nia' => 'nias',
+ 'niu' => 'niui',
+ 'nl' => 'holland',
+ 'nl-be' => 'flamand',
+ 'nmg' => 'ngumba',
+ 'nn' => 'norvég nynorsk',
+ 'nnh' => 'ngiemboon',
+ 'no' => 'norvég',
+ 'nog' => 'nogaj',
+ 'non' => 'óskandináv',
+ 'nqo' => 'n’kó',
+ 'nr' => 'déli ndebele',
+ 'nso' => 'északi szotó',
+ 'nus' => 'nuer',
+ 'nv' => 'navahó',
+ 'nwc' => 'klasszikus newari',
+ 'ny' => 'nyanja',
+ 'nym' => 'nyamvézi',
+ 'nyn' => 'nyankole',
+ 'nyo' => 'nyoró',
+ 'nzi' => 'nzima',
+ 'oc' => 'okszitán',
+ 'oj' => 'ojibva',
+ 'om' => 'oromói',
+ 'or' => 'orija',
+ 'os' => 'oszét',
+ 'osa' => 'osage',
+ 'ota' => 'ottomán török',
+ 'pa' => 'pandzsábi',
+ 'pag' => 'pangaszinan',
+ 'pal' => 'pahlavi',
+ 'pam' => 'pampangan',
+ 'pap' => 'papiamentó',
+ 'pau' => 'palaui',
+ 'peo' => 'óperzsa',
+ 'phn' => 'főniciai',
+ 'pi' => 'pali',
+ 'pl' => 'lengyel',
+ 'pon' => 'pohnpei',
+ 'pro' => 'óprovánszi',
+ 'ps' => 'pastu',
+ 'pt' => 'portugál',
+ 'pt-br' => 'brazíliai portugál',
+ 'pt-pt' => 'európai portugál',
+ 'qu' => 'kecsua',
+ 'quc' => 'kicse',
+ 'raj' => 'radzsasztáni',
+ 'rap' => 'rapanui',
+ 'rar' => 'rarotongai',
+ 'rm' => 'réto-román',
+ 'rn' => 'kirundi',
+ 'ro' => 'román',
+ 'ro-md' => 'moldvai',
+ 'rof' => 'rombo',
+ 'rom' => 'roma',
+ 'ru' => 'orosz',
+ 'rup' => 'aromán',
+ 'rw' => 'kiruanda',
+ 'rwk' => 'rwo',
+ 'sa' => 'szanszkrit',
+ 'sad' => 'szandave',
+ 'sah' => 'jakut',
+ 'sam' => 'szamaritánus arámi',
+ 'saq' => 'szamburu',
+ 'sas' => 'sasak',
+ 'sat' => 'szantáli',
+ 'sba' => 'ngambay',
+ 'sbp' => 'szangu',
+ 'sc' => 'szardíniai',
+ 'scn' => 'szicíliai',
+ 'sco' => 'skót',
+ 'sd' => 'szindhi',
+ 'se' => 'északi számi',
+ 'see' => 'szeneka',
+ 'seh' => 'szena',
+ 'sel' => 'szölkup',
+ 'ses' => 'kojra-szenni',
+ 'sg' => 'szangó',
+ 'sga' => 'óír',
+ 'sh' => 'szerbhorvát',
+ 'shi' => 'tachelhit',
+ 'shn' => 'san',
+ 'shu' => 'csádi arab',
+ 'si' => 'szingaléz',
+ 'sid' => 'szidamó',
+ 'sk' => 'szlovák',
+ 'sl' => 'szlovén',
+ 'sm' => 'szamoai',
+ 'sma' => 'déli számi',
+ 'smj' => 'lule számi',
+ 'smn' => 'inar sami',
+ 'sms' => 'koltta lapp',
+ 'sn' => 'sona',
+ 'snk' => 'szoninke',
+ 'so' => 'szomáliai',
+ 'sog' => 'sogdien',
+ 'sq' => 'albán',
+ 'sr' => 'szerb',
+ 'srn' => 'szranai tongó',
+ 'srr' => 'szerer',
+ 'ss' => 'sziszuati',
+ 'ssy' => 'szahó',
+ 'st' => 'szeszotó',
+ 'su' => 'szundanéz',
+ 'suk' => 'szukuma',
+ 'sus' => 'szuszu',
+ 'sux' => 'sumér',
+ 'sv' => 'svéd',
+ 'sw' => 'szuahéli',
+ 'swb' => 'comorei',
+ 'swc' => 'kongói szuahéli',
+ 'syc' => 'klasszikus szír',
+ 'syr' => 'szíriai',
+ 'ta' => 'tamil',
+ 'te' => 'telugu',
+ 'tem' => 'temne',
+ 'teo' => 'teszó',
+ 'ter' => 'terenó',
+ 'tet' => 'tetum',
+ 'tg' => 'tadzsik',
+ 'th' => 'thai',
+ 'ti' => 'tigrinja',
+ 'tig' => 'tigré',
+ 'tiv' => 'tiv',
+ 'tk' => 'türkmén',
+ 'tkl' => 'tokelaui',
+ 'tl' => 'tagalog',
+ 'tlh' => 'klingon',
+ 'tli' => 'tlingit',
+ 'tmh' => 'tamasek',
+ 'tn' => 'szecsuáni',
+ 'to' => 'tonga',
+ 'tog' => 'nyasa tonga',
+ 'tpi' => 'tok pisin',
+ 'tr' => 'török',
+ 'trv' => 'tarokó',
+ 'ts' => 'conga',
+ 'tsi' => 'csimsiáni',
+ 'tt' => 'tatár',
+ 'tum' => 'tumbuka',
+ 'tvl' => 'tuvalu',
+ 'tw' => 'twi',
+ 'twq' => 'szavák',
+ 'ty' => 'tahiti',
+ 'tyv' => 'tuvai',
+ 'tzm' => 'közép-marokkói tamazigt',
+ 'udm' => 'udmurt',
+ 'ug' => 'ujgur',
+ 'uga' => 'ugariti',
+ 'uk' => 'ukrán',
+ 'umb' => 'umbundu',
+ 'und' => 'ismeretlen nyelv',
+ 'ur' => 'urdu',
+ 'uz' => 'üzbég',
+ 'vai' => 'vai',
+ 've' => 'venda',
+ 'vi' => 'vietnami',
+ 'vo' => 'volapük',
+ 'vot' => 'votják',
+ 'vun' => 'vunjo',
+ 'wa' => 'vallon',
+ 'wae' => 'walser',
+ 'wal' => 'valamo',
+ 'war' => 'varaó',
+ 'was' => 'vasó',
+ 'wo' => 'volof',
+ 'xal' => 'kalmük',
+ 'xh' => 'hosza',
+ 'xog' => 'szoga',
+ 'yao' => 'jaó',
+ 'yap' => 'japi',
+ 'yav' => 'jangben',
+ 'ybb' => 'jemba',
+ 'yi' => 'jiddis',
+ 'yo' => 'joruba',
+ 'yue' => 'kantoni',
+ 'za' => 'zsuang',
+ 'zap' => 'zapoték',
+ 'zbl' => 'Bliss jelképrendszer',
+ 'zen' => 'zenaga',
+ 'zgh' => 'marokkói tamazight',
+ 'zh' => 'kínai',
+ 'zh-hans' => 'egyszerűsített kínai',
+ 'zh-hant' => 'hagyományos kínai',
+ 'zu' => 'zulu',
+ 'zun' => 'zuni',
+ 'zxx' => 'nincs nyelvészeti tartalom',
+ 'zza' => 'zaza',
+);
+
+$currencyNames = array(
+ 'ADP' => 'Andorrai peseta',
+ 'AED' => 'EAE-dirham',
+ 'AFA' => 'afgán afghani (1927–2002)',
+ 'AFN' => 'afgán afghani',
+ 'ALL' => 'albán lek',
+ 'AMD' => 'örmény dram',
+ 'ANG' => 'holland antilláki forint',
+ 'AOA' => 'angolai kwanza',
+ 'AOK' => 'Angolai kwanza (1977–1990)',
+ 'AON' => 'Angolai új kwanza (1990–2000)',
+ 'AOR' => 'Angolai kwanza reajustado (1995–1999)',
+ 'ARA' => 'Argentín austral',
+ 'ARP' => 'Argentín peso (1983–1985)',
+ 'ARS' => 'argentin peso',
+ 'ATS' => 'Osztrák schilling',
+ 'AUD' => 'ausztrál dollár',
+ 'AWG' => 'arubai florin',
+ 'AZM' => 'azerbajdzsáni manat (1993–2006)',
+ 'AZN' => 'azerbajdzsáni manat',
+ 'BAD' => 'Bosznia-hercegovinai dínár (1992–1994)',
+ 'BAM' => 'bosznia-hercegovinai konvertibilis márka',
+ 'BBD' => 'barbadosi dollár',
+ 'BDT' => 'bangladesi taka',
+ 'BEC' => 'Belga frank (konvertibilis)',
+ 'BEF' => 'Belga frank',
+ 'BEL' => 'Belga frank (pénzügyi)',
+ 'BGL' => 'Bolgár kemény leva',
+ 'BGN' => 'bolgár új leva',
+ 'BHD' => 'bahreini dinár',
+ 'BIF' => 'burundi frank',
+ 'BMD' => 'bermudai dollár',
+ 'BND' => 'brunei dollár',
+ 'BOB' => 'bolíviai boliviano',
+ 'BOP' => 'Bolíviai peso',
+ 'BOV' => 'Bolíviai mvdol',
+ 'BRB' => 'Brazi cruzeiro novo (1967–1986)',
+ 'BRC' => 'Brazi cruzado (1986–1989)',
+ 'BRE' => 'Brazil cruzeiro (1990–1993)',
+ 'BRL' => 'brazil real',
+ 'BRN' => 'Brazil cruzado novo (1989–1990)',
+ 'BRR' => 'Brazil cruzeiro (1993–1994)',
+ 'BSD' => 'bahamai dollár',
+ 'BTN' => 'bhutáni ngultrum',
+ 'BUK' => 'Burmai kyat',
+ 'BWP' => 'botswanai pula',
+ 'BYB' => 'Fehérorosz új rubel (1994–1999)',
+ 'BYR' => 'fehérorosz rubel',
+ 'BZD' => 'belize-i dollár',
+ 'CAD' => 'kanadai dollár',
+ 'CDF' => 'kongói frank',
+ 'CHE' => 'WIR euro',
+ 'CHF' => 'svájci frank',
+ 'CHW' => 'WIR frank',
+ 'CLF' => 'Chilei unidades de fomento',
+ 'CLP' => 'chilei peso',
+ 'CNY' => 'kínai jüan',
+ 'COP' => 'kolumbiai peso',
+ 'COU' => 'Unidad de Valor Real',
+ 'CRC' => 'Costa Rica-i colon',
+ 'CSD' => 'szerb dinár',
+ 'CSK' => 'Csehszlovák kemény korona',
+ 'CUC' => 'kubai konvertibilis peso',
+ 'CUP' => 'kubai peso',
+ 'CVE' => 'Cape Verde-i escudo',
+ 'CYP' => 'Ciprusi font',
+ 'CZK' => 'cseh korona',
+ 'DDM' => 'Kelet-Német márka',
+ 'DEM' => 'Német márka',
+ 'DJF' => 'dzsibuti frank',
+ 'DKK' => 'dán korona',
+ 'DOP' => 'dominikai peso',
+ 'DZD' => 'algériai dínár',
+ 'ECS' => 'Ecuadori sucre',
+ 'ECV' => 'Ecuadori Unidad de Valor Constante (UVC)',
+ 'EEK' => 'Észt korona',
+ 'EGP' => 'egyiptomi font',
+ 'ERN' => 'eritreai nakfa',
+ 'ESA' => 'spanyol peseta (A–kontó)',
+ 'ESB' => 'spanyol peseta (konvertibilis kontó)',
+ 'ESP' => 'Spanyol peseta',
+ 'ETB' => 'etiópiai birr',
+ 'EUR' => 'euró',
+ 'FIM' => 'Finn markka',
+ 'FJD' => 'fidzsi dollár',
+ 'FKP' => 'falkland-szigeteki font',
+ 'FRF' => 'Francia frank',
+ 'GBP' => 'brit font sterling',
+ 'GEK' => 'Grúz kupon larit',
+ 'GEL' => 'grúz lari',
+ 'GHC' => 'Ghánai cedi (1979–2007)',
+ 'GHS' => 'ghánai cedi',
+ 'GIP' => 'gibraltári font',
+ 'GMD' => 'gambiai dalasi',
+ 'GNF' => 'guineai frank',
+ 'GNS' => 'Guineai syli',
+ 'GQE' => 'Egyenlítői-guineai ekwele guineana',
+ 'GRD' => 'Görög drachma',
+ 'GTQ' => 'guatemalai quetzal',
+ 'GWE' => 'Portugál guinea escudo',
+ 'GWP' => 'Guinea-Bissaui peso',
+ 'GYD' => 'guyanai dollár',
+ 'HKD' => 'hongkongi dollár',
+ 'HNL' => 'hodurasi lempira',
+ 'HRD' => 'Horvát dínár',
+ 'HRK' => 'horvát kuna',
+ 'HTG' => 'haiti gourde',
+ 'HUF' => 'magyar forint',
+ 'IDR' => 'indonéz rúpia',
+ 'IEP' => 'Ír font',
+ 'ILP' => 'Izraeli font',
+ 'ILS' => 'izraeli új sékel',
+ 'INR' => 'indiai rúpia',
+ 'IQD' => 'iraki dínár',
+ 'IRR' => 'iráni rial',
+ 'ISK' => 'izlandi korona',
+ 'ITL' => 'Olasz líra',
+ 'JMD' => 'jamaicai dollár',
+ 'JOD' => 'jordániai dínár',
+ 'JPY' => 'japán jen',
+ 'KES' => 'kenyai shilling',
+ 'KGS' => 'kirgizisztáni szom',
+ 'KHR' => 'kambodzsai riel',
+ 'KMF' => 'comorei frank',
+ 'KPW' => 'észak-koreai won',
+ 'KRW' => 'dél-koreai won',
+ 'KWD' => 'kuvaiti dínár',
+ 'KYD' => 'kajmán-szigeteki dollár',
+ 'KZT' => 'kazahsztáni tenge',
+ 'LAK' => 'laoszi kip',
+ 'LBP' => 'libanoni font',
+ 'LKR' => 'Srí Lanka-i rúpia',
+ 'LRD' => 'libériai dollár',
+ 'LSL' => 'Lesothoi loti',
+ 'LTL' => 'litvániai litas',
+ 'LTT' => 'Litvániai talonas',
+ 'LUC' => 'luxemburgi konvertibilis frank',
+ 'LUF' => 'Luxemburgi frank',
+ 'LUL' => 'luxemburgi pénzügyi frank',
+ 'LVL' => 'lett lats',
+ 'LVR' => 'Lett rubel',
+ 'LYD' => 'líbiai dínár',
+ 'MAD' => 'marokkói dirham',
+ 'MAF' => 'Marokkói frank',
+ 'MDL' => 'moldován lei',
+ 'MGA' => 'madagaszkári ariary',
+ 'MGF' => 'Madagaszkári frank',
+ 'MKD' => 'macedon dínár',
+ 'MLF' => 'Mali frank',
+ 'MMK' => 'mianmari kyat',
+ 'MNT' => 'mongóliai tugrik',
+ 'MOP' => 'makaói pataca',
+ 'MRO' => 'mauritániai ouguiya',
+ 'MTL' => 'Máltai líra',
+ 'MTP' => 'Máltai font',
+ 'MUR' => 'mauritiusi rúpia',
+ 'MVR' => 'maldív-szigeteki rufiyaa',
+ 'MWK' => 'malawi kwacha',
+ 'MXN' => 'mexikói peso',
+ 'MXP' => 'Mexikói ezüst peso (1861–1992)',
+ 'MXV' => 'Mexikói Unidad de Inversion (UDI)',
+ 'MYR' => 'malajziai ringgit',
+ 'MZE' => 'Mozambik escudo',
+ 'MZM' => 'Mozambik metical',
+ 'MZN' => 'mozambiki metikális',
+ 'NAD' => 'namíbiai dollár',
+ 'NGN' => 'nigériai naira',
+ 'NIC' => 'Nikaraguai cordoba',
+ 'NIO' => 'nicaraguai córdoba',
+ 'NLG' => 'Holland forint',
+ 'NOK' => 'norvég korona',
+ 'NPR' => 'nepáli rúpia',
+ 'NZD' => 'új-zélandi dollár',
+ 'OMR' => 'ománi rial',
+ 'PAB' => 'panamai balboa',
+ 'PEI' => 'Perui inti',
+ 'PEN' => 'perui sol nuevo',
+ 'PES' => 'Perui sol',
+ 'PGK' => 'pápua új-guineai kina',
+ 'PHP' => 'fülöp-szigeteki peso',
+ 'PKR' => 'pakisztáni rúpia',
+ 'PLN' => 'lengyel zloty',
+ 'PLZ' => 'Lengyel zloty (1950–1995)',
+ 'PTE' => 'Portugál escudo',
+ 'PYG' => 'paraguayi guarani',
+ 'QAR' => 'katari rial',
+ 'RHD' => 'rhodéziai dollár',
+ 'ROL' => 'román lej (1952–2006)',
+ 'RON' => 'román lej',
+ 'RSD' => 'szerb dínár',
+ 'RUB' => 'orosz rubel',
+ 'RUR' => 'orosz rubel (1991–1998)',
+ 'RWF' => 'ruandai frank',
+ 'SAR' => 'szaúdi riyal',
+ 'SBD' => 'salamon-szigeteki dollár',
+ 'SCR' => 'seychelle-szigeteki rúpia',
+ 'SDD' => 'Szudáni dínár (1992–2007)',
+ 'SDG' => 'szudáni font',
+ 'SDP' => 'Szudáni font (1957–1998)',
+ 'SEK' => 'svéd korona',
+ 'SGD' => 'szingapúri dollár',
+ 'SHP' => 'Szent Ilona-i font',
+ 'SIT' => 'Szlovén tolar',
+ 'SKK' => 'Szlovák korona',
+ 'SLL' => 'Sierra Leone-i leone',
+ 'SOS' => 'szomáli shilling',
+ 'SRD' => 'suriname-i dollár',
+ 'SRG' => 'Suriname-i gulden',
+ 'SSP' => 'dél-szudáni font',
+ 'STD' => 'São Tomé és Príncipe-i dobra',
+ 'SUR' => 'Szovjet rubel',
+ 'SVC' => 'Salvadori colón',
+ 'SYP' => 'szíriai font',
+ 'SZL' => 'szváziföldi lilangeni',
+ 'THB' => 'thai baht',
+ 'TJR' => 'Tádzsikisztáni rubel',
+ 'TJS' => 'tádzsikisztáni somoni',
+ 'TMM' => 'türkmenisztáni manat (1993–2009)',
+ 'TMT' => 'türkmenisztáni manat',
+ 'TND' => 'tunéziai dínár',
+ 'TOP' => 'tongai paanga',
+ 'TPE' => 'Timori escudo',
+ 'TRL' => 'török líra (1922–2005)',
+ 'TRY' => 'török líra',
+ 'TTD' => 'Trinidad és Tobago-i dollár',
+ 'TWD' => 'tajvani új dollár',
+ 'TZS' => 'tanzániai shilling',
+ 'UAH' => 'ukrán hrivnya',
+ 'UAK' => 'Ukrán karbovanec',
+ 'UGS' => 'Ugandai shilling (1966–1987)',
+ 'UGX' => 'ugandai shilling',
+ 'USD' => 'USA-dollár',
+ 'USN' => 'USA dollár (következő napi)',
+ 'USS' => 'USA dollár (aznapi)',
+ 'UYI' => 'Uruguayi peso en unidades indexadas',
+ 'UYP' => 'Uruguay-i peso (1975–1993)',
+ 'UYU' => 'uruguay-i peso',
+ 'UZS' => 'üzbegisztáni szum',
+ 'VEB' => 'Venezuelai bolivar (1871–2008)',
+ 'VEF' => 'venezuelai bolivar',
+ 'VND' => 'vietnami dong',
+ 'VUV' => 'vanuatui vatu',
+ 'WST' => 'nyugat-szamoai tala',
+ 'XAF' => 'CFA frank BEAC',
+ 'XAG' => 'Ezüst',
+ 'XAU' => 'Arany',
+ 'XBA' => 'Európai kompozit egység',
+ 'XBB' => 'Európai monetáris egység',
+ 'XBC' => 'Európai kontó egység (XBC)',
+ 'XBD' => 'Európai kontó egység (XBD)',
+ 'XCD' => 'kelet-karibi dollár',
+ 'XDR' => 'Special Drawing Rights',
+ 'XEU' => 'európai pénznemegység',
+ 'XFO' => 'Francia arany frank',
+ 'XFU' => 'Francia UIC-frank',
+ 'XOF' => 'CFA frank BCEAO',
+ 'XPD' => 'palládium',
+ 'XPF' => 'csendes-óceáni valutaközösségi frank',
+ 'XPT' => 'platina',
+ 'XRE' => 'RINET tőke',
+ 'XTS' => 'Tesztelési pénznemkód',
+ 'XXX' => 'ismeretlen pénznem',
+ 'YDD' => 'Jemeni dínár',
+ 'YER' => 'jemeni rial',
+ 'YUD' => 'Jugoszláv kemény dínár',
+ 'YUM' => 'Jugoszláv új dínár',
+ 'YUN' => 'Jugoszláv konvertibilis dínár',
+ 'ZAL' => 'Dél-afrikai rand (pénzügyi)',
+ 'ZAR' => 'dél-afrikai rand',
+ 'ZMK' => 'Zambiai kwacha (1968–2012)',
+ 'ZMW' => 'zambiai kwacha',
+ 'ZRN' => 'Zairei új zaire',
+ 'ZRZ' => 'Zairei zaire',
+ 'ZWD' => 'Zimbabwei dollár (1980–2008)',
+ 'ZWL' => 'Zimbabwei dollár (2009)',
+ 'ZWR' => 'Zimbabwei dollár (2008)',
+);
+
+$currencySymbols = array(
+ 'AED' => 'AED',
+ 'AFN' => 'AFN',
+ 'ALL' => 'ALL',
+ 'AMD' => 'AMD',
+ 'ANG' => 'ANG',
+ 'AOA' => 'AOA',
+ 'ARS' => 'ARS',
+ 'AUD' => 'AUD',
+ 'AWG' => 'AWG',
+ 'AZN' => 'AZN',
+ 'BAM' => 'BAM',
+ 'BBD' => 'BBD',
+ 'BDT' => 'BDT',
+ 'BGN' => 'BGN',
+ 'BHD' => 'BHD',
+ 'BIF' => 'BIF',
+ 'BMD' => 'BMD',
+ 'BND' => 'BND',
+ 'BOB' => 'BOB',
+ 'BRL' => 'BRL',
+ 'BSD' => 'BSD',
+ 'BTN' => 'BTN',
+ 'BWP' => 'BWP',
+ 'BYR' => 'BYR',
+ 'BZD' => 'BZD',
+ 'CAD' => 'CAD',
+ 'CDF' => 'CDF',
+ 'CHF' => 'CHF',
+ 'CLP' => 'CLP',
+ 'CNY' => 'CNY',
+ 'COP' => 'COP',
+ 'CRC' => 'CRC',
+ 'CUC' => 'CUC',
+ 'CUP' => 'CUP',
+ 'CVE' => 'CVE',
+ 'CZK' => 'CZK',
+ 'DJF' => 'DJF',
+ 'DKK' => 'DKK',
+ 'DOP' => 'DOP',
+ 'DZD' => 'DZD',
+ 'EGP' => 'EGP',
+ 'ERN' => 'ERN',
+ 'ETB' => 'ETB',
+ 'EUR' => 'EUR',
+ 'FJD' => 'FJD',
+ 'FKP' => 'FKP',
+ 'GBP' => 'GBP',
+ 'GEL' => 'GEL',
+ 'GHS' => 'GHS',
+ 'GIP' => 'GIP',
+ 'GMD' => 'GMD',
+ 'GNF' => 'GNF',
+ 'GTQ' => 'GTQ',
+ 'GYD' => 'GYD',
+ 'HKD' => 'HKD',
+ 'HNL' => 'HNL',
+ 'HRK' => 'HRK',
+ 'HTG' => 'HTG',
+ 'HUF' => 'HUF',
+ 'IDR' => 'IDR',
+ 'ILS' => 'ILS',
+ 'INR' => 'INR',
+ 'IQD' => 'IQD',
+ 'IRR' => 'IRR',
+ 'ISK' => 'ISK',
+ 'JMD' => 'JMD',
+ 'JOD' => 'JOD',
+ 'JPY' => '¥',
+ 'KES' => 'KES',
+ 'KGS' => 'KGS',
+ 'KHR' => 'KHR',
+ 'KMF' => 'KMF',
+ 'KPW' => 'KPW',
+ 'KRW' => 'KRW',
+ 'KWD' => 'KWD',
+ 'KYD' => 'KYD',
+ 'KZT' => 'KZT',
+ 'LAK' => 'LAK',
+ 'LBP' => 'LBP',
+ 'LKR' => 'LKR',
+ 'LRD' => 'LRD',
+ 'LTL' => 'LTL',
+ 'LVL' => 'LVL',
+ 'LYD' => 'LYD',
+ 'MAD' => 'MAD',
+ 'MDL' => 'MDL',
+ 'MGA' => 'MGA',
+ 'MKD' => 'MKD',
+ 'MMK' => 'MMK',
+ 'MNT' => 'MNT',
+ 'MOP' => 'MOP',
+ 'MRO' => 'MRO',
+ 'MUR' => 'MUR',
+ 'MVR' => 'MVR',
+ 'MWK' => 'MWK',
+ 'MXN' => 'MXN',
+ 'MYR' => 'MYR',
+ 'MZN' => 'MZN',
+ 'NAD' => 'NAD',
+ 'NGN' => 'NGN',
+ 'NIO' => 'NIO',
+ 'NOK' => 'NOK',
+ 'NPR' => 'NPR',
+ 'NZD' => 'NZD',
+ 'OMR' => 'OMR',
+ 'PAB' => 'PAB',
+ 'PEN' => 'PEN',
+ 'PGK' => 'PGK',
+ 'PHP' => 'PHP',
+ 'PKR' => 'PKR',
+ 'PLN' => 'PLN',
+ 'PYG' => 'PYG',
+ 'QAR' => 'QAR',
+ 'RON' => 'RON',
+ 'RSD' => 'RSD',
+ 'RUB' => 'RUB',
+ 'RWF' => 'RWF',
+ 'SAR' => 'SAR',
+ 'SBD' => 'SBD',
+ 'SCR' => 'SCR',
+ 'SDG' => 'SDG',
+ 'SEK' => 'SEK',
+ 'SGD' => 'SGD',
+ 'SHP' => 'SHP',
+ 'SLL' => 'SLL',
+ 'SOS' => 'SOS',
+ 'SRD' => 'SRD',
+ 'SSP' => 'SSP',
+ 'STD' => 'STD',
+ 'SYP' => 'SYP',
+ 'SZL' => 'SZL',
+ 'THB' => 'THB',
+ 'TJS' => 'TJS',
+ 'TMT' => 'TMT',
+ 'TND' => 'TND',
+ 'TOP' => 'TOP',
+ 'TRY' => 'TRY',
+ 'TTD' => 'TTD',
+ 'TWD' => 'TWD',
+ 'TZS' => 'TZS',
+ 'UAH' => 'UAH',
+ 'UGX' => 'UGX',
+ 'USD' => 'USD',
+ 'UYU' => 'UYU',
+ 'UZS' => 'UZS',
+ 'VEF' => 'VEF',
+ 'VND' => 'VND',
+ 'VUV' => 'VUV',
+ 'WST' => 'WST',
+ 'XAF' => 'FCFA',
+ 'XCD' => 'XCD',
+ 'XOF' => 'CFA',
+ 'XPF' => 'CFPF',
+ 'YER' => 'YER',
+ 'ZAR' => 'ZAR',
+ 'ZMK' => 'ZMK',
+ 'ZMW' => 'ZMW',
+);
+
+$countryNames = array(
+ 'AC' => 'Ascension-sziget',
+ 'AD' => 'Andorra',
+ 'AE' => 'Egyesült Arab Emirátus',
+ 'AF' => 'Afganisztán',
+ 'AG' => 'Antigua és Barbuda',
+ 'AI' => 'Anguilla',
+ 'AL' => 'Albánia',
+ 'AM' => 'Örményország',
+ 'AN' => 'Holland Antillák',
+ 'AO' => 'Angola',
+ 'AQ' => 'Antarktisz',
+ 'AR' => 'Argentína',
+ 'AS' => 'Amerikai Szamoa',
+ 'AT' => 'Ausztria',
+ 'AU' => 'Ausztrália',
+ 'AW' => 'Aruba',
+ 'AX' => 'Åland-szigetek',
+ 'AZ' => 'Azerbajdzsán',
+ 'BA' => 'Bosznia-Hercegovina',
+ 'BB' => 'Barbados',
+ 'BD' => 'Banglades',
+ 'BE' => 'Belgium',
+ 'BF' => 'Burkina Faso',
+ 'BG' => 'Bulgária',
+ 'BH' => 'Bahrein',
+ 'BI' => 'Burundi',
+ 'BJ' => 'Benin',
+ 'BL' => 'Saint-Barthélemy',
+ 'BM' => 'Bermuda',
+ 'BN' => 'Brunei',
+ 'BO' => 'Bolívia',
+ 'BQ' => 'Holland Karib-térség',
+ 'BR' => 'Brazília',
+ 'BS' => 'Bahama-szigetek',
+ 'BT' => 'Bhután',
+ 'BV' => 'Bouvet-sziget',
+ 'BW' => 'Botswana',
+ 'BY' => 'Fehéroroszország',
+ 'BZ' => 'Belize',
+ 'CA' => 'Kanada',
+ 'CC' => 'Kókusz-szigetek',
+ 'CD' => 'Kongó - Kinshasa',
+ 'CF' => 'Közép-afrikai Köztársaság',
+ 'CG' => 'Kongó - Brazzaville',
+ 'CH' => 'Svájc',
+ 'CI' => 'Elefántcsontpart',
+ 'CK' => 'Cook-szigetek',
+ 'CL' => 'Chile',
+ 'CM' => 'Kamerun',
+ 'CN' => 'Kína',
+ 'CO' => 'Kolumbia',
+ 'CP' => 'Clipperton-sziget',
+ 'CR' => 'Costa Rica',
+ 'CU' => 'Kuba',
+ 'CV' => 'Zöld-foki Köztársaság',
+ 'CW' => 'Curaçao',
+ 'CX' => 'Karácsony-sziget',
+ 'CY' => 'Ciprus',
+ 'CZ' => 'Csehország',
+ 'DE' => 'Németország',
+ 'DG' => 'Diego Garcia',
+ 'DJ' => 'Dzsibuti',
+ 'DK' => 'Dánia',
+ 'DM' => 'Dominika',
+ 'DO' => 'Dominikai Köztársaság',
+ 'DZ' => 'Algéria',
+ 'EA' => 'Ceuta és Melilla',
+ 'EC' => 'Ecuador',
+ 'EE' => 'Észtország',
+ 'EG' => 'Egyiptom',
+ 'EH' => 'Nyugat-Szahara',
+ 'ER' => 'Eritrea',
+ 'ES' => 'Spanyolország',
+ 'ET' => 'Etiópia',
+ 'EU' => 'Európai Unió',
+ 'FI' => 'Finnország',
+ 'FJ' => 'Fidzsi-szigetek',
+ 'FK' => 'Falkland-szigetek',
+ 'FM' => 'Mikronézia',
+ 'FO' => 'Feröer-szigetek',
+ 'FR' => 'Franciaország',
+ 'GA' => 'Gabon',
+ 'GB' => 'UK',
+ 'GD' => 'Grenada',
+ 'GE' => 'Grúzia',
+ 'GF' => 'Francia Guyana',
+ 'GG' => 'Guernsey',
+ 'GH' => 'Ghána',
+ 'GI' => 'Gibraltár',
+ 'GL' => 'Grönland',
+ 'GM' => 'Gambia',
+ 'GN' => 'Guinea',
+ 'GP' => 'Guadeloupe',
+ 'GQ' => 'Egyenlítői-Guinea',
+ 'GR' => 'Görögország',
+ 'GS' => 'Déli-Georgia és Déli-Sandwich-szigetek',
+ 'GT' => 'Guatemala',
+ 'GU' => 'Guam',
+ 'GW' => 'Guinea-Bissau',
+ 'GY' => 'Guyana',
+ 'HK' => 'Hongkong',
+ 'HM' => 'Heard-sziget és McDonald-szigetek',
+ 'HN' => 'Honduras',
+ 'HR' => 'Horvátország',
+ 'HT' => 'Haiti',
+ 'HU' => 'Magyarország',
+ 'IC' => 'Kanári-szigetek',
+ 'ID' => 'Indonézia',
+ 'IE' => 'Írország',
+ 'IL' => 'Izrael',
+ 'IM' => 'Man-sziget',
+ 'IN' => 'India',
+ 'IO' => 'Brit Indiai-óceáni Terület',
+ 'IQ' => 'Irak',
+ 'IR' => 'Irán',
+ 'IS' => 'Izland',
+ 'IT' => 'Olaszország',
+ 'JE' => 'Jersey',
+ 'JM' => 'Jamaica',
+ 'JO' => 'Jordánia',
+ 'JP' => 'Japán',
+ 'KE' => 'Kenya',
+ 'KG' => 'Kirgizisztán',
+ 'KH' => 'Kambodzsa',
+ 'KI' => 'Kiribati',
+ 'KM' => 'Comore-szigetek',
+ 'KN' => 'Saint Kitts és Nevis',
+ 'KP' => 'Észak-Korea',
+ 'KR' => 'Dél-Korea',
+ 'KW' => 'Kuvait',
+ 'KY' => 'Kajmán-szigetek',
+ 'KZ' => 'Kazahsztán',
+ 'LA' => 'Laosz',
+ 'LB' => 'Libanon',
+ 'LC' => 'Santa Lucia',
+ 'LI' => 'Liechtenstein',
+ 'LK' => 'Srí Lanka',
+ 'LR' => 'Libéria',
+ 'LS' => 'Lesotho',
+ 'LT' => 'Litvánia',
+ 'LU' => 'Luxemburg',
+ 'LV' => 'Lettország',
+ 'LY' => 'Líbia',
+ 'MA' => 'Marokkó',
+ 'MC' => 'Monaco',
+ 'MD' => 'Moldova',
+ 'ME' => 'Montenegró',
+ 'MF' => 'Saint Martin',
+ 'MG' => 'Madagaszkár',
+ 'MH' => 'Marshall-szigetek',
+ 'MK' => 'Macedónia',
+ 'ML' => 'Mali',
+ 'MM' => 'Mianmar (Burma)',
+ 'MN' => 'Mongólia',
+ 'MO' => 'Makaó',
+ 'MP' => 'Északi Mariana-szigetek',
+ 'MQ' => 'Martinique',
+ 'MR' => 'Mauritánia',
+ 'MS' => 'Montserrat',
+ 'MT' => 'Málta',
+ 'MU' => 'Mauritius',
+ 'MV' => 'Maldív-szigetek',
+ 'MW' => 'Malawi',
+ 'MX' => 'Mexikó',
+ 'MY' => 'Malajzia',
+ 'MZ' => 'Mozambik',
+ 'NA' => 'Namíbia',
+ 'NC' => 'Új-Kaledónia',
+ 'NE' => 'Niger',
+ 'NF' => 'Norfolk-sziget',
+ 'NG' => 'Nigéria',
+ 'NI' => 'Nicaragua',
+ 'NL' => 'Hollandia',
+ 'NO' => 'Norvégia',
+ 'NP' => 'Nepál',
+ 'NR' => 'Nauru',
+ 'NU' => 'Niue',
+ 'NZ' => 'Új-Zéland',
+ 'OM' => 'Omán',
+ 'PA' => 'Panama',
+ 'PE' => 'Peru',
+ 'PF' => 'Francia Polinézia',
+ 'PG' => 'Pápua Új-Guinea',
+ 'PH' => 'Fülöp-szigetek',
+ 'PK' => 'Pakisztán',
+ 'PL' => 'Lengyelország',
+ 'PM' => 'Saint Pierre és Miquelon',
+ 'PN' => 'Pitcairn-szigetek',
+ 'PR' => 'Puerto Rico',
+ 'PS' => 'Palesztina',
+ 'PT' => 'Portugália',
+ 'PW' => 'Palau',
+ 'PY' => 'Paraguay',
+ 'QA' => 'Katar',
+ 'QO' => 'Külső-Óceánia',
+ 'RE' => 'Reunion',
+ 'RO' => 'Románia',
+ 'RS' => 'Szerbia',
+ 'RU' => 'Oroszország',
+ 'RW' => 'Ruanda',
+ 'SA' => 'Szaúd-Arábia',
+ 'SB' => 'Salamon-szigetek',
+ 'SC' => 'Seychelle-szigetek',
+ 'SD' => 'Szudán',
+ 'SE' => 'Svédország',
+ 'SG' => 'Szingapúr',
+ 'SH' => 'Szent Ilona',
+ 'SI' => 'Szlovénia',
+ 'SJ' => 'Spitzbergák és Jan Mayen-szigetek',
+ 'SK' => 'Szlovákia',
+ 'SL' => 'Sierra Leone',
+ 'SM' => 'San Marino',
+ 'SN' => 'Szenegál',
+ 'SO' => 'Szomália',
+ 'SR' => 'Suriname',
+ 'SS' => 'Dél-Szudán',
+ 'ST' => 'Sao Tomé és Príncipe',
+ 'SV' => 'Salvador',
+ 'SX' => 'Sint Maarten',
+ 'SY' => 'Szíria',
+ 'SZ' => 'Szváziföld',
+ 'TA' => 'Tristan da Cunha',
+ 'TC' => 'Turks- és Caicos-szigetek',
+ 'TD' => 'Csád',
+ 'TF' => 'Francia Déli Területek',
+ 'TG' => 'Togo',
+ 'TH' => 'Thaiföld',
+ 'TJ' => 'Tádzsikisztán',
+ 'TK' => 'Tokelau',
+ 'TL' => 'Kelet-Timor',
+ 'TM' => 'Türkmenisztán',
+ 'TN' => 'Tunézia',
+ 'TO' => 'Tonga',
+ 'TR' => 'Törökország',
+ 'TT' => 'Trinidad és Tobago',
+ 'TV' => 'Tuvalu',
+ 'TW' => 'Tajvan',
+ 'TZ' => 'Tanzánia',
+ 'UA' => 'Ukrajna',
+ 'UG' => 'Uganda',
+ 'UM' => 'Amerikai Csendes-óceáni Szigetek',
+ 'US' => 'USA',
+ 'UY' => 'Uruguay',
+ 'UZ' => 'Üzbegisztán',
+ 'VA' => 'Vatikán',
+ 'VC' => 'Saint Vincent és a Grenadine-szigetek',
+ 'VE' => 'Venezuela',
+ 'VG' => 'Brit Virgin-szigetek',
+ 'VI' => 'Amerikai Virgin-szigetek',
+ 'VN' => 'Vietnam',
+ 'VU' => 'Vanuatu',
+ 'WF' => 'Wallis- és Futuna-szigetek',
+ 'WS' => 'Szamoa',
+ 'XK' => 'Koszovó',
+ 'YE' => 'Jemen',
+ 'YT' => 'Mayotte',
+ 'ZA' => 'Dél-afrikai Köztársaság',
+ 'ZM' => 'Zambia',
+ 'ZW' => 'Zimbabwe',
+);
+
+$timeUnits = array(
+ 'day-future-one' => '{0} nap múlva',
+ 'day-future-other' => '{0} nap múlva',
+ 'day-narrow-future-one' => '{0} nap múlva',
+ 'day-narrow-future-other' => '{0} nap múlva',
+ 'day-narrow-past-one' => '{0} napja',
+ 'day-narrow-past-other' => '{0} napja',
+ 'day-one' => '{0} nap',
+ 'day-other' => '{0} nap',
+ 'day-past-one' => '{0} nappal ezelőtt',
+ 'day-past-other' => '{0} nappal ezelőtt',
+ 'day-short-future-one' => '{0} nap múlva',
+ 'day-short-future-other' => '{0} nap múlva',
+ 'day-short-past-one' => '{0} napja',
+ 'day-short-past-other' => '{0} napja',
+ 'hour-future-one' => '{0} óra múlva',
+ 'hour-future-other' => '{0} óra múlva',
+ 'hour-narrow-future-one' => '{0} óra múlva',
+ 'hour-narrow-future-other' => '{0} óra múlva',
+ 'hour-narrow-past-one' => '{0} órával ezelőtt',
+ 'hour-narrow-past-other' => '{0} órával ezelőtt',
+ 'hour-one' => '{0} óra',
+ 'hour-other' => '{0} óra',
+ 'hour-past-one' => '{0} órával ezelőtt',
+ 'hour-past-other' => '{0} órával ezelőtt',
+ 'hour-short-future-one' => '{0} óra múlva',
+ 'hour-short-future-other' => '{0} óra múlva',
+ 'hour-short-past-one' => '{0} órával ezelőtt',
+ 'hour-short-past-other' => '{0} órával ezelőtt',
+ 'microsecond-one' => '{0} mikroszekundum',
+ 'microsecond-other' => '{0} mikroszekundum',
+ 'millisecond-one' => '{0} ezredmásodperc',
+ 'millisecond-other' => '{0} ezredmásodperc',
+ 'minute-future-one' => '{0} perc múlva',
+ 'minute-future-other' => '{0} perc múlva',
+ 'minute-narrow-future-one' => '{0} perc múlva',
+ 'minute-narrow-future-other' => '{0} perc múlva',
+ 'minute-narrow-past-one' => '{0} perccel ezelőtt',
+ 'minute-narrow-past-other' => '{0} perccel ezelőtt',
+ 'minute-one' => '{0} perc',
+ 'minute-other' => '{0} perc',
+ 'minute-past-one' => '{0} perccel ezelőtt',
+ 'minute-past-other' => '{0} perccel ezelőtt',
+ 'minute-short-future-one' => '{0} perc múlva',
+ 'minute-short-future-other' => '{0} perc múlva',
+ 'minute-short-past-one' => '{0} perccel ezelőtt',
+ 'minute-short-past-other' => '{0} perccel ezelőtt',
+ 'month-future-one' => '{0} hónap múlva',
+ 'month-future-other' => '{0} hónap múlva',
+ 'month-narrow-future-one' => '{0} hónap múlva',
+ 'month-narrow-future-other' => '{0} hónap múlva',
+ 'month-narrow-past-one' => '{0} hónappal ezelőtt',
+ 'month-narrow-past-other' => '{0} hónappal ezelőtt',
+ 'month-one' => '{0} hónap',
+ 'month-other' => '{0} hónap',
+ 'month-past-one' => '{0} hónappal ezelőtt',
+ 'month-past-other' => '{0} hónappal ezelőtt',
+ 'month-short-future-one' => '{0} hónap múlva',
+ 'month-short-future-other' => '{0} hónap múlva',
+ 'month-short-past-one' => '{0} hónappal ezelőtt',
+ 'month-short-past-other' => '{0} hónappal ezelőtt',
+ 'nanosecond-one' => '{0} nanoszekundum',
+ 'nanosecond-other' => '{0} nanoszekundum',
+ 'quarter-future-one' => '{0} negyedév múlva',
+ 'quarter-future-other' => '{0} negyedév múlva',
+ 'quarter-narrow-future-one' => '{0} negyedév múlva',
+ 'quarter-narrow-future-other' => '{0} negyedév múlva',
+ 'quarter-narrow-past-one' => '{0} negyedévvel ezelőtt',
+ 'quarter-narrow-past-other' => '{0} negyedévvel ezelőtt',
+ 'quarter-past-one' => '{0} negyedévvel ezelőtt',
+ 'quarter-past-other' => '{0} negyedévvel ezelőtt',
+ 'quarter-short-future-one' => '{0} negyedév múlva',
+ 'quarter-short-future-other' => '{0} negyedév múlva',
+ 'quarter-short-past-one' => '{0} negyedévvel ezelőtt',
+ 'quarter-short-past-other' => '{0} negyedévvel ezelőtt',
+ 'second-future-one' => '{0} másodperc múlva',
+ 'second-future-other' => '{0} másodperc múlva',
+ 'second-narrow-future-one' => '{0} másodperc múlva',
+ 'second-narrow-future-other' => '{0} másodperc múlva',
+ 'second-narrow-past-one' => '{0} másodperccel ezelőtt',
+ 'second-narrow-past-other' => '{0} másodperccel ezelőtt',
+ 'second-one' => '{0} másodperc',
+ 'second-other' => '{0} másodperc',
+ 'second-past-one' => '{0} másodperccel ezelőtt',
+ 'second-past-other' => '{0} másodperccel ezelőtt',
+ 'second-short-future-one' => '{0} másodperc múlva',
+ 'second-short-future-other' => '{0} másodperc múlva',
+ 'second-short-past-one' => '{0} másodperccel ezelőtt',
+ 'second-short-past-other' => '{0} másodperccel ezelőtt',
+ 'week-future-one' => '{0} hét múlva',
+ 'week-future-other' => '{0} hét múlva',
+ 'week-narrow-future-one' => '{0} hét múlva',
+ 'week-narrow-future-other' => '{0} hét múlva',
+ 'week-narrow-past-one' => '{0} héttel ezelőtt',
+ 'week-narrow-past-other' => '{0} héttel ezelőtt',
+ 'week-one' => '{0} hét',
+ 'week-other' => '{0} hét',
+ 'week-past-one' => '{0} héttel ezelőtt',
+ 'week-past-other' => '{0} héttel ezelőtt',
+ 'week-short-future-one' => '{0} hét múlva',
+ 'week-short-future-other' => '{0} hét múlva',
+ 'week-short-past-one' => '{0} héttel ezelőtt',
+ 'week-short-past-other' => '{0} héttel ezelőtt',
+ 'year-future-one' => '{0} év múlva',
+ 'year-future-other' => '{0} év múlva',
+ 'year-narrow-future-one' => '{0} év múlva',
+ 'year-narrow-future-other' => '{0} év múlva',
+ 'year-narrow-past-one' => '{0} évvel ezelőtt',
+ 'year-narrow-past-other' => '{0} évvel ezelőtt',
+ 'year-one' => '{0} év',
+ 'year-other' => '{0} év',
+ 'year-past-one' => '{0} évvel ezelőtt',
+ 'year-past-other' => '{0} évvel ezelőtt',
+ 'year-short-future-one' => '{0} év múlva',
+ 'year-short-future-other' => '{0} év múlva',
+ 'year-short-past-one' => '{0} évvel ezelőtt',
+ 'year-short-past-other' => '{0} évvel ezelőtt',
+);
diff --git a/MLEB/cldr/CldrNames/CldrNamesHy.php b/MLEB/cldr/CldrNames/CldrNamesHy.php
new file mode 100644
index 00000000..77378221
--- /dev/null
+++ b/MLEB/cldr/CldrNames/CldrNamesHy.php
@@ -0,0 +1,936 @@
+<?php
+
+$languageNames = array(
+ 'ab' => 'աբխազերեն',
+ 'af' => 'աֆրիկաանս',
+ 'agq' => 'աղեմ',
+ 'ak' => 'աքաներեն',
+ 'am' => 'ամհարերեն',
+ 'ar' => 'արաբերեն',
+ 'ar-001' => 'ժամանակակից ստանդարտ արաբերեն',
+ 'arn' => 'մապուչի',
+ 'as' => 'ասամերեն',
+ 'asa' => 'ասու',
+ 'az' => 'ադրբեջաներեն',
+ 'ba' => 'բաշկիրերեն',
+ 'be' => 'բելառուսերեն',
+ 'bem' => 'բեմբա',
+ 'bez' => 'բենա',
+ 'bg' => 'բուլղարերեն',
+ 'bm' => 'բամբարա',
+ 'bn' => 'բենգալերեն',
+ 'bo' => 'տիբեթերեն',
+ 'br' => 'բրետոներեն',
+ 'brx' => 'բոդո',
+ 'bs' => 'բոսնիերեն',
+ 'ca' => 'կատալաներեն',
+ 'cgg' => 'չիգա',
+ 'chr' => 'շերոկի',
+ 'ckb' => 'սորանի (քրդերեն)',
+ 'co' => 'կորսիկերեն',
+ 'cs' => 'չեխերեն',
+ 'cy' => 'ուելսերեն',
+ 'da' => 'դանիերեն',
+ 'dav' => 'թաիթա',
+ 'de' => 'գերմաներեն',
+ 'de-at' => 'ավստրիական գերմաներեն',
+ 'de-ch' => 'շվեյցարական բարձր գերմաներեն',
+ 'dje' => 'զարմա',
+ 'dsb' => 'ստորին սորբիերեն',
+ 'dua' => 'դուալա',
+ 'dyo' => 'ջոլա-ֆոնյի',
+ 'dz' => 'ջոնգքհա',
+ 'ebu' => 'էմբու',
+ 'ee' => 'էվե',
+ 'el' => 'հունարեն',
+ 'en' => 'անգլերեն',
+ 'en-au' => 'ավստրալական անգլերեն',
+ 'en-ca' => 'կանադական անգլերեն',
+ 'en-gb' => 'բրիտանական անգլերեն',
+ 'en-us' => 'ամերիկյան անգլերեն',
+ 'eo' => 'էսպերանտո',
+ 'es' => 'իսպաներեն',
+ 'es-419' => 'լատինաամերիկյան իսպաներեն',
+ 'es-es' => 'եվրոպական իսպաներեն',
+ 'es-mx' => 'մեքսիկական իսպաներեն',
+ 'et' => 'էստոներեն',
+ 'eu' => 'բասկերեն',
+ 'fa' => 'պարսկերեն',
+ 'fi' => 'ֆիններեն',
+ 'fil' => 'ֆիլիպիներեն',
+ 'fj' => 'ֆիջիերեն',
+ 'fo' => 'ֆարյորերեն',
+ 'fr' => 'ֆրանսերեն',
+ 'fr-ca' => 'կանադական ֆրանսերեն',
+ 'fr-ch' => 'շվեյցարական ֆրանսերեն',
+ 'fy' => 'արևմտյան ֆրիզերեն',
+ 'ga' => 'իռլանդերեն',
+ 'gag' => 'գագաուզերեն',
+ 'gd' => 'Գաելյան Շոտլանդերեն',
+ 'gl' => 'գալիսերեն',
+ 'gn' => 'գուարանի',
+ 'gsw' => 'շվեյցարական գերմաներեն',
+ 'gu' => 'գուջարաթի',
+ 'guz' => 'գուսի',
+ 'gv' => 'մեներեն',
+ 'ha' => 'հաուսա',
+ 'haw' => 'հավայիերեն',
+ 'he' => 'եբրայերեն',
+ 'hi' => 'հինդի',
+ 'hr' => 'խորվաթերեն',
+ 'hsb' => 'վերին սորբիերեն',
+ 'ht' => 'հաիթերեն',
+ 'hu' => 'հունգարերեն',
+ 'hy' => 'հայերեն',
+ 'ia' => 'Ինտերլինգուա',
+ 'id' => 'ինդոնեզերեն',
+ 'ie' => 'Ինտերլինգ',
+ 'ig' => 'իգբո',
+ 'ii' => 'սիխուան յի',
+ 'is' => 'իսլանդերեն',
+ 'it' => 'իտալերեն',
+ 'iu' => 'ինուկտիտուտ',
+ 'ja' => 'ճապոներեն',
+ 'jgo' => 'նգոմբա',
+ 'jmc' => 'մաշամե',
+ 'jv' => 'ճավայերեն',
+ 'ka' => 'վրացերեն',
+ 'kab' => 'կաբիլերեն',
+ 'kam' => 'կամբա',
+ 'kde' => 'մակոնդե',
+ 'kea' => 'կուբավերդիանու',
+ 'khq' => 'կոյրա չինի',
+ 'ki' => 'կիկույու',
+ 'kk' => 'ղազախերեն',
+ 'kl' => 'կալաալիսուտ',
+ 'kln' => 'կալենջին',
+ 'km' => 'քմերերեն',
+ 'kn' => 'կաննադա',
+ 'ko' => 'կորեերեն',
+ 'koi' => 'կոմի-պերմյակ',
+ 'kok' => 'կոնկանի',
+ 'ks' => 'քաշմիրերեն',
+ 'ksb' => 'շամբալա',
+ 'ksf' => 'բաֆիա',
+ 'ku' => 'քրդերեն',
+ 'kw' => 'կոռներեն',
+ 'ky' => 'ղրղզերեն',
+ 'la' => 'լատիներեն',
+ 'lag' => 'լանգի',
+ 'lb' => 'լյուքսեմբուրգերեն',
+ 'lg' => 'գանդա',
+ 'lkt' => 'լակոտա',
+ 'ln' => 'լինգալա',
+ 'lo' => 'լաոսերեն',
+ 'lt' => 'լիտվերեն',
+ 'lu' => 'լուբա-կատանգա',
+ 'luo' => 'լուո',
+ 'luy' => 'լույա',
+ 'lv' => 'լատվիերեն',
+ 'mas' => 'մասաի',
+ 'mer' => 'մերու',
+ 'mfe' => 'մորիսյեն',
+ 'mg' => 'մալագասերեն',
+ 'mgh' => 'մաքուա-մետտո',
+ 'mgo' => 'մետա',
+ 'mi' => 'մաորի',
+ 'mk' => 'մակեդոներեն',
+ 'ml' => 'մալայալամ',
+ 'mn' => 'մոնղոլերեն',
+ 'moh' => 'մոհավք',
+ 'mr' => 'մարաթի',
+ 'ms' => 'մալայերեն',
+ 'mt' => 'մալթերեն',
+ 'mua' => 'մունդանգ',
+ 'my' => 'բիրմայերեն',
+ 'naq' => 'նամա',
+ 'nb' => 'նորվեգերեն բուկմոլ',
+ 'nd' => 'հյուսիսային նդեբելե',
+ 'ne' => 'նեպալերեն',
+ 'nl' => 'հոլանդերեն',
+ 'nl-be' => 'ֆլամանդերեն',
+ 'nmg' => 'կվասիո',
+ 'nn' => 'նորվեգերեն նյունորսկ',
+ 'no' => 'Նորվեգերեն',
+ 'nqo' => 'նկո',
+ 'nus' => 'նուեր',
+ 'nyn' => 'նյանկոլե',
+ 'oc' => 'Ակվիտաներեն',
+ 'om' => 'օրոմո',
+ 'or' => 'օրիյա',
+ 'pa' => 'փենջաբերեն',
+ 'pl' => 'լեհերեն',
+ 'ps' => 'փուշթու',
+ 'pt' => 'պորտուգալերեն',
+ 'pt-br' => 'բրազիլական պորտուգալերեն',
+ 'pt-pt' => 'եվրոպական պորտուգալերեն',
+ 'qu' => 'քեչուա',
+ 'quc' => 'կիչե',
+ 'rm' => 'ռոմանշերեն',
+ 'rn' => 'ռունդի',
+ 'ro' => 'ռումիներեն',
+ 'ro-md' => 'մոլդովերեն',
+ 'rof' => 'ռոմբո',
+ 'ru' => 'ռուսերեն',
+ 'rw' => 'քինյարվանդա',
+ 'rwk' => 'ռվա',
+ 'sa' => 'սանսկրիտ',
+ 'saq' => 'սամբուրու',
+ 'sbp' => 'սանգու',
+ 'sd' => 'սինդհի',
+ 'se' => 'հյուսիսային սամի',
+ 'seh' => 'սենա',
+ 'ses' => 'կոյրաբորո սեննի',
+ 'sg' => 'սանգո',
+ 'sh' => 'Սերբա-Խորվաթերեն',
+ 'shi' => 'տաշելհիթ',
+ 'si' => 'սինհալերեն',
+ 'sk' => 'սլովակերեն',
+ 'sl' => 'սլովեներեն',
+ 'sma' => 'հարավային սամի',
+ 'smj' => 'լուլե սամի',
+ 'smn' => 'ինարի սամի',
+ 'sms' => 'սկոլտ սամի',
+ 'sn' => 'շոնա',
+ 'so' => 'սոմալիերեն',
+ 'sq' => 'ալբաներեն',
+ 'sr' => 'սերբերեն',
+ 'st' => 'Սեսոտո',
+ 'su' => 'սունդաներեն',
+ 'sv' => 'շվեդերեն',
+ 'sw' => 'սուահիլի',
+ 'swc' => 'կոնգոյի սուահիլի',
+ 'ta' => 'թամիլերեն',
+ 'te' => 'թելուգու',
+ 'teo' => 'տեսո',
+ 'tg' => 'տաջիկերեն',
+ 'th' => 'թայերեն',
+ 'ti' => 'թիգրինիա',
+ 'tk' => 'թուրքմեներեն',
+ 'tlh' => 'Կլինգոն',
+ 'to' => 'տոնգա',
+ 'tr' => 'թուրքերեն',
+ 'tt' => 'թաթարերեն',
+ 'tw' => 'Տուի',
+ 'twq' => 'տասավաք',
+ 'tzm' => 'կենտրոնատլասյան թամազիխտ',
+ 'ug' => 'ույղուրերեն',
+ 'uk' => 'ուկրաիներեն',
+ 'und' => 'անհայտ լեզու',
+ 'ur' => 'ուրդու',
+ 'uz' => 'ուզբեկերեն',
+ 'vai' => 'վաի',
+ 'vi' => 'վիետնամերեն',
+ 'vun' => 'վունջո',
+ 'wo' => 'վոլոֆ',
+ 'xh' => 'քսոզա',
+ 'xog' => 'սոգա',
+ 'yi' => 'Իդիշ',
+ 'yo' => 'յորուբա',
+ 'zgh' => 'ստանդարտ մարոկական թամազիղտ',
+ 'zh' => 'չինարեն',
+ 'zh-hans' => 'պարզեցված չինարեն',
+ 'zh-hant' => 'ավանդական չինարեն',
+ 'zu' => 'զուլուսերեն',
+ 'zxx' => 'առանց լեզվային բովանդակության',
+);
+
+$currencyNames = array(
+ 'AED' => 'Արաբական Միացյալ Էմիրությունների դիրհամ',
+ 'AFN' => 'Աֆղանական աֆղանի',
+ 'ALL' => 'Ալբանական լեկ',
+ 'AMD' => 'Հայկական դրամ',
+ 'ANG' => 'Նիդերլանդական Անտիլների գուլդեն',
+ 'AOA' => 'Անգոլական կվանզա',
+ 'ARS' => 'Արգենտինական պեսո',
+ 'AUD' => 'Ավստրալական դոլար',
+ 'AWG' => 'Արուբական ֆլորին',
+ 'AZN' => 'Ադրբեջանական մանաթ',
+ 'BAM' => 'Բոսնիա և Հերցեգովինայի փոխարկելի մարկա',
+ 'BBD' => 'Բարբադոսյան դոլար',
+ 'BDT' => 'Բանգլադեշի տակա',
+ 'BGN' => 'Բուլղարական լև',
+ 'BHD' => 'Բահրեյնական դինար',
+ 'BIF' => 'Բուրունդիի ֆրանկ',
+ 'BMD' => 'Բերմուդյան դոլար',
+ 'BND' => 'Բրունեյական դոլար',
+ 'BOB' => 'Բոլիվիական բոլիվիանո',
+ 'BRL' => 'Բրազիլական ռեալ',
+ 'BSD' => 'Բահամական դոլար',
+ 'BTN' => 'Բութանական նգուլտրում',
+ 'BWP' => 'Բոթսվանական պուլա',
+ 'BYR' => 'Բելառուսական ռուբլի',
+ 'BZD' => 'Բելիզի դոլար',
+ 'CAD' => 'Կանադական դոլար',
+ 'CDF' => 'Կոնգոյի ֆրանկ',
+ 'CHF' => 'Շվեյցարական ֆրանկ',
+ 'CLP' => 'Չիլիական պեսո',
+ 'CNY' => 'Չինական յուան',
+ 'COP' => 'Կոլումբիական պեսո',
+ 'CRC' => 'Կոստա Ռիկայի կոլոն',
+ 'CUC' => 'Կուբական փոխարկելի պեսո',
+ 'CUP' => 'Կուբական պեսո',
+ 'CVE' => 'Կաբո Վերդեի էսկուդո',
+ 'CZK' => 'Չեխական կրոնա',
+ 'DJF' => 'Ջիբութիի ֆրանկ',
+ 'DKK' => 'Դանիական կրոնա',
+ 'DOP' => 'Դոմինիկական պեսո',
+ 'DZD' => 'Ալժիրական դինար',
+ 'EGP' => 'Եգիպտական ֆունտ',
+ 'ERN' => 'Էրիթրեական նակֆա',
+ 'ETB' => 'Եթովպական բիր',
+ 'EUR' => 'Եվրո',
+ 'FJD' => 'Ֆիջիական դոլար',
+ 'FKP' => 'Ֆոլկլենդյան կղզիներ ֆունտ',
+ 'GBP' => 'Բրիտանական ֆունտ ստեռլինգ',
+ 'GEL' => 'Վրացական լարի',
+ 'GHS' => 'Գանական սեդի',
+ 'GIP' => 'Ջիբրալթարի ֆունտ',
+ 'GMD' => 'Գամբիական դալասի',
+ 'GNF' => 'Գվինեական ֆրանկ',
+ 'GTQ' => 'Գվատեմալական կետսալ',
+ 'GYD' => 'Գայանական դոլար',
+ 'HKD' => 'Հոնկոնգի դոլար',
+ 'HNL' => 'Հոնդուրասական լեմպրիա',
+ 'HRK' => 'Խորվաթական կունա',
+ 'HTG' => 'Հաիթյան գուրդ',
+ 'HUF' => 'Հունգարական ֆորինտ',
+ 'IDR' => 'Ինդոնեզական ռուփի',
+ 'ILS' => 'Իսրայելի նոր շեկել',
+ 'INR' => 'Հնդկական ռուփի',
+ 'IQD' => 'Իրաքյան դինար',
+ 'IRR' => 'Իրանական ռիալ',
+ 'ISK' => 'Իսլանդական կրոնա',
+ 'JMD' => 'Ջամայկական դոլար',
+ 'JOD' => 'Հորդանանական դինար',
+ 'JPY' => 'Ճապոնական իեն',
+ 'KES' => 'Քենիական շիլինգ',
+ 'KGS' => 'Ղրղզական սոմ',
+ 'KHR' => 'Կամբոջական ռիել',
+ 'KMF' => 'Կոմորյան կղզիների ֆրանկ',
+ 'KPW' => 'ԿԺԴՀ-ի վոնա',
+ 'KRW' => 'Հարավկորեական վոնա',
+ 'KWD' => 'Քուվեյթական դինար',
+ 'KYD' => 'Կայմանյան կղզիների դոլար',
+ 'KZT' => 'Ղազախական տենգե',
+ 'LAK' => 'Լաոսական կիպ',
+ 'LBP' => 'Լիբանանական ֆունտ',
+ 'LKR' => 'Լանկիական ռուփի',
+ 'LRD' => 'Լիբերիական դոլար',
+ 'LTL' => 'Լիտվական լիտ',
+ 'LVL' => 'Լատվիական լատ',
+ 'LYD' => 'Լիբիական դինար',
+ 'MAD' => 'Մարոկական դիրհամ',
+ 'MDL' => 'Մոլդովական լեյ',
+ 'MGA' => 'Մադագասկարի արիարի',
+ 'MKD' => 'Մակեդոնական դենար',
+ 'MMK' => 'Մյանմական կյատ',
+ 'MNT' => 'Մոնղոլական տուգրիկ',
+ 'MOP' => 'Մակաոյի պատակա',
+ 'MRO' => 'Մավրիտանական ուգիյա',
+ 'MUR' => 'Մավրիկական ռուփի',
+ 'MVR' => 'Մալդիվյան ռուֆիա',
+ 'MWK' => 'Մալավիական կվաչա',
+ 'MXN' => 'Մեքսիկական պեսո',
+ 'MYR' => 'Մալայզիական ռինգիտ',
+ 'MZN' => 'Մոզամբիկյան մետիկալ',
+ 'NAD' => 'Նամիբիական դոլար',
+ 'NGN' => 'Նիգերիական նայրա',
+ 'NIO' => 'Նիկարագուական կորդոբա',
+ 'NOK' => 'Նորվեգական կրոնա',
+ 'NPR' => 'Նեպալական ռուփի',
+ 'NZD' => 'Նորզելանդական դոլար',
+ 'OMR' => 'Օմանական ռիալ',
+ 'PAB' => 'Պանամական բալբոա',
+ 'PEN' => 'Պերուի նոր սոլ',
+ 'PGK' => 'Պապուա-Նոր Գվինեայի կինա',
+ 'PHP' => 'Ֆիլիպինական պեսո',
+ 'PKR' => 'Պակիստանական ռուփի',
+ 'PLN' => 'Լեհական զլոտի',
+ 'PYG' => 'Պարագվայական գուարանի',
+ 'QAR' => 'Քաթարական ռիալ',
+ 'RON' => 'Ռումինական լեյ',
+ 'RSD' => 'Սերբական դինար',
+ 'RUB' => 'Ռուսական ռուբլի',
+ 'RWF' => 'Ռուանդական ֆրանկ',
+ 'SAR' => 'Սաուդյան Արաբիայի ռիալ',
+ 'SBD' => 'Սողոմոնյան կղզիների դոլար',
+ 'SCR' => 'Սեյշելյան կղզիների ռուփի',
+ 'SDG' => 'Սուդանական ֆունտ',
+ 'SEK' => 'Շվեդական կրոնա',
+ 'SGD' => 'Սինգապուրյան դոլար',
+ 'SHP' => 'Սուրբ Հեղինեի կղզու ֆունտ',
+ 'SLL' => 'Սիերա-Լեոնեի լեոնե',
+ 'SOS' => 'Սոմալիական շիլինգ',
+ 'SRD' => 'Սուրինամական դոլար',
+ 'SSP' => 'Հարավսուդանական ֆունտ',
+ 'STD' => 'Սան Տոմե և Պրինսիպիի դոբրա',
+ 'SYP' => 'Սիրիական ֆունտ',
+ 'SZL' => 'Սվազիլենդական լիլանգենի',
+ 'THB' => 'Թաիլանդական բատ',
+ 'TJS' => 'Տաջիկական սոմոնի',
+ 'TMT' => 'Թուրքմենական մանաթ',
+ 'TND' => 'Թունիսական դինար',
+ 'TOP' => 'Տոնգայի պաանգա',
+ 'TRY' => 'Թուրքական լիրա',
+ 'TTD' => 'Տրինիդադ և Տոբագոյի դոլար',
+ 'TWD' => 'Թայվանական նոր դոլար',
+ 'TZS' => 'Տանզանիական շիլինգ',
+ 'UAH' => 'Ուկրաինական գրիվնա',
+ 'UGX' => 'Ուգանդական շիլինգ',
+ 'USD' => 'ԱՄՆ դոլար',
+ 'UYU' => 'Ուրուգվայական պեսո',
+ 'UZS' => 'Ուզբեկական սում',
+ 'VEF' => 'Վենեսուելական բոլիվար',
+ 'VND' => 'Վիետնամական դոնգ',
+ 'VUV' => 'Վանուատուի վատու',
+ 'WST' => 'Սամոական տալա',
+ 'XAF' => 'Աֆրիկական ֆինանսական համայնքի ֆրանկ BEAC',
+ 'XCD' => 'Արևելակարիբյան դոլար',
+ 'XOF' => 'Աֆրիկական ֆինանսական համայնքի ֆրանկ BCEAO',
+ 'XPF' => 'ԿՊՖ ֆրանկ',
+ 'XXX' => 'Անհայտ արժույթ',
+ 'YER' => 'Եմենական ռիալ',
+ 'ZAR' => 'Հարավաֆրիկական ռենդ',
+ 'ZMK' => 'Զամբիական կվաչա (1968–2012)',
+ 'ZMW' => 'Զամբիական կվաչա',
+);
+
+$currencySymbols = array(
+ 'AED' => 'AED',
+ 'AFN' => 'AFN',
+ 'ALL' => 'ALL',
+ 'AMD' => '֏',
+ 'ANG' => 'ANG',
+ 'AOA' => 'AOA',
+ 'ARS' => 'ARS',
+ 'AUD' => 'A$',
+ 'AWG' => 'AWG',
+ 'AZN' => 'AZN',
+ 'BAM' => 'BAM',
+ 'BBD' => 'BBD',
+ 'BDT' => 'BDT',
+ 'BGN' => 'BGN',
+ 'BHD' => 'BHD',
+ 'BIF' => 'BIF',
+ 'BMD' => 'BMD',
+ 'BND' => 'BND',
+ 'BOB' => 'BOB',
+ 'BRL' => 'R$',
+ 'BSD' => 'BSD',
+ 'BTN' => 'BTN',
+ 'BWP' => 'BWP',
+ 'BYR' => 'BYR',
+ 'BZD' => 'BZD',
+ 'CAD' => 'CA$',
+ 'CDF' => 'CDF',
+ 'CHF' => 'CHF',
+ 'CLP' => 'CLP',
+ 'CNY' => 'CN¥',
+ 'COP' => 'COP',
+ 'CRC' => 'CRC',
+ 'CUC' => 'CUC',
+ 'CUP' => 'CUP',
+ 'CVE' => 'CVE',
+ 'CZK' => 'CZK',
+ 'DJF' => 'DJF',
+ 'DKK' => 'DKK',
+ 'DOP' => 'DOP',
+ 'DZD' => 'DZD',
+ 'EGP' => 'EGP',
+ 'ERN' => 'ERN',
+ 'ETB' => 'ETB',
+ 'EUR' => '€',
+ 'FJD' => 'FJD',
+ 'FKP' => 'FKP',
+ 'GBP' => '£',
+ 'GEL' => 'GEL',
+ 'GHS' => 'GHS',
+ 'GIP' => 'GIP',
+ 'GMD' => 'GMD',
+ 'GNF' => 'GNF',
+ 'GTQ' => 'GTQ',
+ 'GYD' => 'GYD',
+ 'HKD' => 'HK$',
+ 'HNL' => 'HNL',
+ 'HRK' => 'HRK',
+ 'HTG' => 'HTG',
+ 'HUF' => 'HUF',
+ 'IDR' => 'IDR',
+ 'ILS' => '₪',
+ 'INR' => '₹',
+ 'IQD' => 'IQD',
+ 'IRR' => 'IRR',
+ 'ISK' => 'ISK',
+ 'JMD' => 'JMD',
+ 'JOD' => 'JOD',
+ 'JPY' => 'JP¥',
+ 'KES' => 'KES',
+ 'KGS' => 'KGS',
+ 'KHR' => 'KHR',
+ 'KMF' => 'KMF',
+ 'KPW' => 'KPW',
+ 'KRW' => '₩',
+ 'KWD' => 'KWD',
+ 'KYD' => 'KYD',
+ 'KZT' => 'KZT',
+ 'LAK' => 'LAK',
+ 'LBP' => 'LBP',
+ 'LKR' => 'LKR',
+ 'LRD' => 'LRD',
+ 'LTL' => 'LTL',
+ 'LVL' => 'LVL',
+ 'LYD' => 'LYD',
+ 'MAD' => 'MAD',
+ 'MDL' => 'MDL',
+ 'MGA' => 'MGA',
+ 'MKD' => 'MKD',
+ 'MMK' => 'MMK',
+ 'MNT' => 'MNT',
+ 'MOP' => 'MOP',
+ 'MRO' => 'MRO',
+ 'MUR' => 'MUR',
+ 'MVR' => 'MVR',
+ 'MWK' => 'MWK',
+ 'MXN' => 'MX$',
+ 'MYR' => 'MYR',
+ 'MZN' => 'MZN',
+ 'NAD' => 'NAD',
+ 'NGN' => 'NGN',
+ 'NIO' => 'NIO',
+ 'NOK' => 'NOK',
+ 'NPR' => 'NPR',
+ 'NZD' => 'NZ$',
+ 'OMR' => 'OMR',
+ 'PAB' => 'PAB',
+ 'PEN' => 'PEN',
+ 'PGK' => 'PGK',
+ 'PHP' => 'PHP',
+ 'PKR' => 'PKR',
+ 'PLN' => 'PLN',
+ 'PYG' => 'PYG',
+ 'QAR' => 'QAR',
+ 'RON' => 'RON',
+ 'RSD' => 'RSD',
+ 'RUB' => 'RUB',
+ 'RWF' => 'RWF',
+ 'SAR' => 'SAR',
+ 'SBD' => 'SBD',
+ 'SCR' => 'SCR',
+ 'SDG' => 'SDG',
+ 'SEK' => 'SEK',
+ 'SGD' => 'SGD',
+ 'SHP' => 'SHP',
+ 'SLL' => 'SLL',
+ 'SOS' => 'SOS',
+ 'SRD' => 'SRD',
+ 'SSP' => 'SSP',
+ 'STD' => 'STD',
+ 'SYP' => 'SYP',
+ 'SZL' => 'SZL',
+ 'THB' => '฿',
+ 'TJS' => 'TJS',
+ 'TMT' => 'TMT',
+ 'TND' => 'TND',
+ 'TOP' => 'TOP',
+ 'TRY' => 'TRY',
+ 'TTD' => 'TTD',
+ 'TWD' => 'NT$',
+ 'TZS' => 'TZS',
+ 'UAH' => 'UAH',
+ 'UGX' => 'UGX',
+ 'USD' => '$',
+ 'UYU' => 'UYU',
+ 'UZS' => 'UZS',
+ 'VEF' => 'VEF',
+ 'VND' => '₫',
+ 'VUV' => 'VUV',
+ 'WST' => 'WST',
+ 'XAF' => 'FCFA',
+ 'XCD' => 'EC$',
+ 'XOF' => 'CFA',
+ 'XPF' => 'CFPF',
+ 'YER' => 'YER',
+ 'ZAR' => 'ZAR',
+ 'ZMW' => 'ZMW',
+);
+
+$countryNames = array(
+ 'AC' => 'Համբարձման կղզի',
+ 'AD' => 'Անդորա',
+ 'AE' => 'Միացյալ Արաբական Էմիրություններ',
+ 'AF' => 'Աֆղանստան',
+ 'AG' => 'Անտիգուա և Բարբուդա',
+ 'AI' => 'Անգիլիա',
+ 'AL' => 'Ալբանիա',
+ 'AM' => 'Հայաստան',
+ 'AO' => 'Անգոլա',
+ 'AQ' => 'Անտարկտիդա',
+ 'AR' => 'Արգենտինա',
+ 'AS' => 'Ամերիկյան Սամոա',
+ 'AT' => 'Ավստրիա',
+ 'AU' => 'Ավստրալիա',
+ 'AW' => 'Արուբա',
+ 'AX' => 'Ալանդյան կղզիներ',
+ 'AZ' => 'Ադրբեջան',
+ 'BA' => 'Բոսնիա և Հերցեգովինա',
+ 'BB' => 'Բարբադոս',
+ 'BD' => 'Բանգլադեշ',
+ 'BE' => 'Բելգիա',
+ 'BF' => 'Բուրկինա Ֆասո',
+ 'BG' => 'Բուլղարիա',
+ 'BH' => 'Բահրեյն',
+ 'BI' => 'Բուրունդի',
+ 'BJ' => 'Բենին',
+ 'BL' => 'Սուրբ Բարթողոմեոսի կղզի',
+ 'BM' => 'Բերմուդյան կղզիներ',
+ 'BN' => 'Բրունեյ',
+ 'BO' => 'Բոլիվիա',
+ 'BQ' => 'Կարիբյան Նիդերլանդներ',
+ 'BR' => 'Բրազիլիա',
+ 'BS' => 'Բահամյան կղզիներ',
+ 'BT' => 'Բութան',
+ 'BV' => 'Բուվե կղզի',
+ 'BW' => 'Բոտսվանա',
+ 'BY' => 'Բելառուս',
+ 'BZ' => 'Բելիզ',
+ 'CA' => 'Կանադա',
+ 'CC' => 'Կոկոսյան (Քիլինգ) կղզիներ',
+ 'CD' => 'Կոնգո - Կինշասա',
+ 'CF' => 'Կենտրոնական Աֆրիկյան Հանրապետություն',
+ 'CG' => 'Կոնգո - Բրազավիլ',
+ 'CH' => 'Շվեյցարիա',
+ 'CI' => 'Փղոսկրի Ափ',
+ 'CK' => 'Կուկի կղզիներ',
+ 'CL' => 'Չիլի',
+ 'CM' => 'Կամերուն',
+ 'CN' => 'Չինաստան',
+ 'CO' => 'Կոլումբիա',
+ 'CP' => 'Քլիփերթոն կղզի',
+ 'CR' => 'Կոստա-Ռիկա',
+ 'CU' => 'Կուբա',
+ 'CV' => 'Կաբո Վերդե',
+ 'CW' => 'Կյուրասաո',
+ 'CX' => 'Ծննդյան կղզի',
+ 'CY' => 'Կիպրոս',
+ 'CZ' => 'Չեխիա',
+ 'DE' => 'Գերմանիա',
+ 'DG' => 'Դիեգո Գարսիա',
+ 'DJ' => 'Ջիբուտի',
+ 'DK' => 'Դանիա',
+ 'DM' => 'Դոմինիկա',
+ 'DO' => 'Դոմինիկյան Հանրապետություն',
+ 'DZ' => 'Ալժիր',
+ 'EA' => 'Սեուտա և Մելիլյա',
+ 'EC' => 'Էկվադոր',
+ 'EE' => 'Էստոնիա',
+ 'EG' => 'Եգիպտոս',
+ 'EH' => 'Արևմտյան Սահարա',
+ 'ER' => 'Էրիտրեա',
+ 'ES' => 'Իսպանիա',
+ 'ET' => 'Եթովպիա',
+ 'EU' => 'Եվրոպական Միություն',
+ 'FI' => 'Ֆինլանդիա',
+ 'FJ' => 'Ֆիջի',
+ 'FK' => 'Ֆոլկլենդյան կղզիներ',
+ 'FM' => 'Միկրոնեզիա',
+ 'FO' => 'Ֆարերյան կղզիներ',
+ 'FR' => 'Ֆրանսիա',
+ 'GA' => 'Գաբոն',
+ 'GB' => 'Միացյալ Թագավորություն',
+ 'GD' => 'Գրենադա',
+ 'GE' => 'Վրաստան',
+ 'GF' => 'Ֆրանսիական Գվիանա',
+ 'GG' => 'Գերնսի',
+ 'GH' => 'Գանա',
+ 'GI' => 'Ջիբրալթար',
+ 'GL' => 'Գրենլանդիա',
+ 'GM' => 'Գամբիա',
+ 'GN' => 'Գվինեա',
+ 'GP' => 'Գվադելուպա',
+ 'GQ' => 'Հասարակածային Գվինեա',
+ 'GR' => 'Հունաստան',
+ 'GS' => 'Հարավային Ջորջիա և Հարավային Սենդվիչյան կղզիներ',
+ 'GT' => 'Գվատեմալա',
+ 'GU' => 'Գուամ',
+ 'GW' => 'Գվինեա-Բիսաու',
+ 'GY' => 'Գայանա',
+ 'HK' => 'Հոնկոնգ',
+ 'HM' => 'Հերդ կղզի և ՄակԴոնալդի կղզիներ',
+ 'HN' => 'Հոնդուրաս',
+ 'HR' => 'Խորվաթիա',
+ 'HT' => 'Հաիթի',
+ 'HU' => 'Հունգարիա',
+ 'IC' => 'Կանարյան կղզիներ',
+ 'ID' => 'Ինդոնեզիա',
+ 'IE' => 'Իռլանդիա',
+ 'IL' => 'Իսրայել',
+ 'IM' => 'Մեն կղզի',
+ 'IN' => 'Հնդկաստան',
+ 'IO' => 'Հնդկական Օվկիանոսում Բրիտանական Տարածք',
+ 'IQ' => 'Իրաք',
+ 'IR' => 'Իրան',
+ 'IS' => 'Իսլանդիա',
+ 'IT' => 'Իտալիա',
+ 'JE' => 'Ջերսի',
+ 'JM' => 'Ջամայկա',
+ 'JO' => 'Հորդանան',
+ 'JP' => 'Ճապոնիա',
+ 'KE' => 'Քենիա',
+ 'KG' => 'Ղրղզստան',
+ 'KH' => 'Կամբոջա',
+ 'KI' => 'Կիրիբատի',
+ 'KM' => 'Կոմորյան կղզիներ',
+ 'KN' => 'Սենթ Քիթս և Նևիս',
+ 'KP' => 'Հյուսիսային Կորեա',
+ 'KR' => 'Հարավային Կորեա',
+ 'KW' => 'Քուվեյթ',
+ 'KY' => 'Կայմանյան կղզիներ',
+ 'KZ' => 'Ղազախստան',
+ 'LA' => 'Լաոս',
+ 'LB' => 'Լիբանան',
+ 'LC' => 'Սենթ Լյուսիա',
+ 'LI' => 'Լիխտենշտեյն',
+ 'LK' => 'Շրի Լանկա',
+ 'LR' => 'Լիբերիա',
+ 'LS' => 'Լեսոտո',
+ 'LT' => 'Լիտվա',
+ 'LU' => 'Լյուքսեմբուրգ',
+ 'LV' => 'Լատվիա',
+ 'LY' => 'Լիբիա',
+ 'MA' => 'Մարոկո',
+ 'MC' => 'Մոնակո',
+ 'MD' => 'Մոլդովա',
+ 'ME' => 'Չեռնոգորիա',
+ 'MF' => 'Սեն Մարտեն',
+ 'MG' => 'Մադագասկար',
+ 'MH' => 'Մարշալյան կղզիներ',
+ 'MK' => 'Մակեդոնիա',
+ 'ML' => 'Մալի',
+ 'MM' => 'Մյանմա (Բիրմա)',
+ 'MN' => 'Մոնղոլիա',
+ 'MO' => 'Մակաո',
+ 'MP' => 'Հյուսիսային Մարիանյան կղզիներ',
+ 'MQ' => 'Մարտինիկա',
+ 'MR' => 'Մավրիտանիա',
+ 'MS' => 'Մոնտսերատ',
+ 'MT' => 'Մալթա',
+ 'MU' => 'Մավրիկիոս',
+ 'MV' => 'Մալդիվներ',
+ 'MW' => 'Մալավի',
+ 'MX' => 'Մեքսիկա',
+ 'MY' => 'Մալայզիա',
+ 'MZ' => 'Մոզամբիկ',
+ 'NA' => 'Նամիբիա',
+ 'NC' => 'Նոր Կալեդոնիա',
+ 'NE' => 'Նիգեր',
+ 'NF' => 'Նորֆոլկ կղզի',
+ 'NG' => 'Նիգերիա',
+ 'NI' => 'Նիկարագուա',
+ 'NL' => 'Նիդերլանդեր',
+ 'NO' => 'Նորվեգիա',
+ 'NP' => 'Նեպալ',
+ 'NR' => 'Նաուրու',
+ 'NU' => 'Նիուե',
+ 'NZ' => 'Նոր Զելանդիա',
+ 'OM' => 'Օման',
+ 'PA' => 'Պանամա',
+ 'PE' => 'Պերու',
+ 'PF' => 'Ֆրանսիական Պոլինեզիա',
+ 'PG' => 'Պապուա Նոր Գվինեա',
+ 'PH' => 'Ֆիլիպիններ',
+ 'PK' => 'Պակիստան',
+ 'PL' => 'Լեհաստան',
+ 'PM' => 'Սեն Պիեր և Միկելոն',
+ 'PN' => 'Պիտկեռն կղզիներ',
+ 'PR' => 'Պուերտո Ռիկո',
+ 'PS' => 'Պաղեստին',
+ 'PT' => 'Պորտուգալիա',
+ 'PW' => 'Պալաու',
+ 'PY' => 'Պարագվայ',
+ 'QA' => 'Կատար',
+ 'QO' => 'Արտաքին Օվկիանիա',
+ 'RE' => 'Ռեյունիոն',
+ 'RO' => 'Ռումինիա',
+ 'RS' => 'Սերբիա',
+ 'RU' => 'Ռուսաստան',
+ 'RW' => 'Ռուանդա',
+ 'SA' => 'Սաուդյան Արաբիա',
+ 'SB' => 'Սողոմոնյան կղզիներ',
+ 'SC' => 'Սեյշելյան կղզիներ',
+ 'SD' => 'Սուդան',
+ 'SE' => 'Շվեդիա',
+ 'SG' => 'Սինգապուր',
+ 'SH' => 'Սուրբ Հեղինեի կղզի',
+ 'SI' => 'Սլովենիա',
+ 'SJ' => 'Սվալբարդ և Յան-Մայեն',
+ 'SK' => 'Սլովակիա',
+ 'SL' => 'Սյերա-Լեոնե',
+ 'SM' => 'Սան Մարինո',
+ 'SN' => 'Սենեգալ',
+ 'SO' => 'Սոմալի',
+ 'SR' => 'Սուրինամ',
+ 'SS' => 'Հարավային Սուդան',
+ 'ST' => 'Սան Տոմե և Պրինսիպի',
+ 'SV' => 'Սալվադոր',
+ 'SX' => 'Սինտ Մարտեն',
+ 'SY' => 'Սիրիա',
+ 'SZ' => 'Սվազիլենդ',
+ 'TA' => 'Տրիստան դա Կունյա',
+ 'TC' => 'Տերկս և Կայկոս կղզիներ',
+ 'TD' => 'Չադ',
+ 'TF' => 'Ֆրանսիական Հարավային Տարածքներ',
+ 'TG' => 'Տոգո',
+ 'TH' => 'Թաիլանդ',
+ 'TJ' => 'Տաջիկստան',
+ 'TK' => 'Տոկելաու',
+ 'TL' => 'Թիմոր-Լեստե',
+ 'TM' => 'Թուրքմենստան',
+ 'TN' => 'Թունիս',
+ 'TO' => 'Տոնգա',
+ 'TR' => 'Թուրքիա',
+ 'TT' => 'Տրինիդադ և Տոբագո',
+ 'TV' => 'Տուվալու',
+ 'TW' => 'Թայվան',
+ 'TZ' => 'Տանզանիա',
+ 'UA' => 'Ուկրաինա',
+ 'UG' => 'Ուգանդա',
+ 'UM' => 'Արտաքին կղզիներ (ԱՄՆ)',
+ 'US' => 'ԱՄՆ',
+ 'UY' => 'Ուրուգվայ',
+ 'UZ' => 'Ուզբեկստան',
+ 'VA' => 'Վատիկան քաղաք-պետություն',
+ 'VC' => 'Սենթ Վիսենտ և Գրենադիններ',
+ 'VE' => 'Վենեսուելա',
+ 'VG' => 'Բրիտանական Վիրջինյան կղզիներ',
+ 'VI' => 'Ամերիկյան Վիրջինյան կղզիներ',
+ 'VN' => 'Վիետնամ',
+ 'VU' => 'Վանուատու',
+ 'WF' => 'Ուոլիս և Ֆուտունա',
+ 'WS' => 'Սամոա',
+ 'XK' => 'Կոսովո',
+ 'YE' => 'Եմեն',
+ 'YT' => 'Մայոտ',
+ 'ZA' => 'Հարավաֆրիկյան Հանրապետություն',
+ 'ZM' => 'Զամբիա',
+ 'ZW' => 'Զիմբաբվե',
+);
+
+$timeUnits = array(
+ 'day-future-one' => '{0} օր անց',
+ 'day-future-other' => '{0} օր անց',
+ 'day-narrow-future-one' => '{0} օրից',
+ 'day-narrow-future-other' => '{0} օրից',
+ 'day-narrow-past-one' => '{0} օր առաջ',
+ 'day-narrow-past-other' => '{0} օր առաջ',
+ 'day-one' => '{0} օր',
+ 'day-other' => '{0} օր',
+ 'day-past-one' => '{0} օր առաջ',
+ 'day-past-other' => '{0} օր առաջ',
+ 'day-short-future-one' => '{0} օրից',
+ 'day-short-future-other' => '{0} օրից',
+ 'day-short-past-one' => '{0} օր առաջ',
+ 'day-short-past-other' => '{0} օր առաջ',
+ 'hour-future-one' => '{0} ժամ անց',
+ 'hour-future-other' => '{0} ժամ անց',
+ 'hour-narrow-future-one' => '{0} ժ-ից',
+ 'hour-narrow-future-other' => '{0} ժ-ից',
+ 'hour-narrow-past-one' => '{0} ժ առաջ',
+ 'hour-narrow-past-other' => '{0} ժ առաջ',
+ 'hour-one' => '{0} ժամ',
+ 'hour-other' => '{0} ժամ',
+ 'hour-past-one' => '{0} ժամ առաջ',
+ 'hour-past-other' => '{0} ժամ առաջ',
+ 'hour-short-future-one' => '{0} ժ-ից',
+ 'hour-short-future-other' => '{0} ժ-ից',
+ 'hour-short-past-one' => '{0} ժ առաջ',
+ 'hour-short-past-other' => '{0} ժ առաջ',
+ 'microsecond-one' => '{0} միկրովայրկյան',
+ 'microsecond-other' => '{0} միկրովայրկյան',
+ 'millisecond-one' => '{0} միլիվայրկյան',
+ 'millisecond-other' => '{0} միլիվայրկյան',
+ 'minute-future-one' => '{0} րոպե անց',
+ 'minute-future-other' => '{0} րոպե անց',
+ 'minute-narrow-future-one' => '{0} ր-ից',
+ 'minute-narrow-future-other' => '{0} ր-ից',
+ 'minute-narrow-past-one' => '{0} ր առաջ',
+ 'minute-narrow-past-other' => '{0} ր առաջ',
+ 'minute-one' => '{0} րոպե',
+ 'minute-other' => '{0} րոպե',
+ 'minute-past-one' => '{0} րոպե առաջ',
+ 'minute-past-other' => '{0} րոպե առաջ',
+ 'minute-short-future-one' => '{0} ր-ից',
+ 'minute-short-future-other' => '{0} ր-ից',
+ 'minute-short-past-one' => '{0} ր առաջ',
+ 'minute-short-past-other' => '{0} ր առաջ',
+ 'month-future-one' => '{0} ամիս անց',
+ 'month-future-other' => '{0} ամիս անց',
+ 'month-narrow-future-one' => '{0} ամիս անց',
+ 'month-narrow-future-other' => '{0} ամիս անց',
+ 'month-narrow-past-one' => '{0} ամիս առաջ',
+ 'month-narrow-past-other' => '{0} ամիս առաջ',
+ 'month-one' => '{0} ամիս',
+ 'month-other' => '{0} ամիս',
+ 'month-past-one' => '{0} ամիս առաջ',
+ 'month-past-other' => '{0} ամիս առաջ',
+ 'month-short-future-one' => '{0} ամիս անց',
+ 'month-short-future-other' => '{0} ամիս անց',
+ 'month-short-past-one' => '{0} ամիս առաջ',
+ 'month-short-past-other' => '{0} ամիս առաջ',
+ 'nanosecond-one' => '{0} նանովայրկյան',
+ 'nanosecond-other' => '{0} նանովայրկյան',
+ 'quarter-future-one' => '{0} եռամսյակ անց',
+ 'quarter-future-other' => '{0} եռամսյակ անց',
+ 'quarter-narrow-future-one' => '{0} եռմս. անց',
+ 'quarter-narrow-future-other' => '{0} եռմս. անց',
+ 'quarter-narrow-past-one' => '{0} եռմս. առաջ',
+ 'quarter-narrow-past-other' => '{0} եռմս. առաջ',
+ 'quarter-past-one' => '{0} եռամսյակ առաջ',
+ 'quarter-past-other' => '{0} եռամսյակ առաջ',
+ 'quarter-short-future-one' => '{0} եռմս. անց',
+ 'quarter-short-future-other' => '{0} եռմս. անց',
+ 'quarter-short-past-one' => '{0} եռմս. առաջ',
+ 'quarter-short-past-other' => '{0} եռմս. առաջ',
+ 'second-future-one' => '{0} վայրկյան անց',
+ 'second-future-other' => '{0} վայրկյան անց',
+ 'second-narrow-future-one' => '{0} վրկ-ից',
+ 'second-narrow-future-other' => '{0} վրկ-ից',
+ 'second-narrow-past-one' => '{0} վրկ առաջ',
+ 'second-narrow-past-other' => '{0} վրկ առաջ',
+ 'second-one' => '{0} վայրկյան',
+ 'second-other' => '{0} վայրկյան',
+ 'second-past-one' => '{0} վայրկյան առաջ',
+ 'second-past-other' => '{0} վայրկյան առաջ',
+ 'second-short-future-one' => '{0} վրկ-ից',
+ 'second-short-future-other' => '{0} վրկ-ից',
+ 'second-short-past-one' => '{0} վրկ առաջ',
+ 'second-short-past-other' => '{0} վրկ առաջ',
+ 'week-future-one' => '{0} շաբաթ անց',
+ 'week-future-other' => '{0} շաբաթ անց',
+ 'week-narrow-future-one' => '{0} շբթ. անց',
+ 'week-narrow-future-other' => '{0} շբթ. անց',
+ 'week-narrow-past-one' => '{0} շբթ. առաջ',
+ 'week-narrow-past-other' => '{0} շբթ. առաջ',
+ 'week-one' => '{0} շաբաթ',
+ 'week-other' => '{0} շաբաթ',
+ 'week-past-one' => '{0} շաբաթ առաջ',
+ 'week-past-other' => '{0} շաբաթ առաջ',
+ 'week-short-future-one' => '{0} շբթ. անց',
+ 'week-short-future-other' => '{0} շբթ. անց',
+ 'week-short-past-one' => '{0} շբթ. առաջ',
+ 'week-short-past-other' => '{0} շբթ. առաջ',
+ 'year-future-one' => '{0} տարի անց',
+ 'year-future-other' => '{0} տարի անց',
+ 'year-narrow-future-one' => '{0} տ. անց',
+ 'year-narrow-future-other' => '{0} տ. անց',
+ 'year-narrow-past-one' => '{0} տ. առաջ',
+ 'year-narrow-past-other' => '{0} տ. առաջ',
+ 'year-one' => '{0} տարի',
+ 'year-other' => '{0} տարի',
+ 'year-past-one' => '{0} տարի առաջ',
+ 'year-past-other' => '{0} տարի առաջ',
+ 'year-short-future-one' => '{0} տ. անց',
+ 'year-short-future-other' => '{0} տ. անց',
+ 'year-short-past-one' => '{0} տ. առաջ',
+ 'year-short-past-other' => '{0} տ. առաջ',
+);
diff --git a/MLEB/cldr/CldrNames/CldrNamesIa.php b/MLEB/cldr/CldrNames/CldrNamesIa.php
new file mode 100644
index 00000000..bd198134
--- /dev/null
+++ b/MLEB/cldr/CldrNames/CldrNamesIa.php
@@ -0,0 +1,305 @@
+<?php
+
+$languageNames = array(
+ 'af' => 'afrikaans',
+ 'am' => 'amharico',
+ 'ar' => 'arabe',
+ 'as' => 'Assamese',
+ 'az' => 'azerbaidzhani',
+ 'be' => 'bielorusso',
+ 'bg' => 'bulgaro',
+ 'bn' => 'bengali',
+ 'br' => 'breton',
+ 'bs' => 'bosniaco',
+ 'ca' => 'catalano',
+ 'cs' => 'checo',
+ 'cy' => 'gallese',
+ 'da' => 'danese',
+ 'de' => 'germano',
+ 'el' => 'greco',
+ 'en' => 'anglese',
+ 'en-gb' => 'anglese (RU)',
+ 'en-us' => 'anglese (SUA)',
+ 'eo' => 'esperanto',
+ 'es' => 'espaniol',
+ 'et' => 'estoniano',
+ 'eu' => 'basco',
+ 'fa' => 'persiano',
+ 'fi' => 'finnese',
+ 'fil' => 'tagalog',
+ 'fo' => 'faroese',
+ 'fr' => 'francese',
+ 'fy' => 'frisiano',
+ 'ga' => 'irlandese',
+ 'gd' => 'scoto gaelic',
+ 'gl' => 'gallego',
+ 'gn' => 'guarani',
+ 'gu' => 'gujarati',
+ 'he' => 'hebreo',
+ 'hi' => 'hindi',
+ 'hr' => 'croato',
+ 'hu' => 'hungaro',
+ 'hy' => 'armeniano',
+ 'ia' => 'interlingua',
+ 'id' => 'indonesiano',
+ 'ie' => 'Interlingue',
+ 'is' => 'islandese',
+ 'it' => 'italiano',
+ 'ja' => 'japonese',
+ 'jv' => 'javanese',
+ 'ka' => 'georgiano',
+ 'km' => 'Cambodiano',
+ 'kn' => 'kannada',
+ 'ko' => 'coreano',
+ 'ku' => 'kurdo',
+ 'ky' => 'kirghizo',
+ 'la' => 'latino',
+ 'ln' => 'lingala',
+ 'lo' => 'laotiano',
+ 'lt' => 'lithuano',
+ 'lv' => 'letton',
+ 'mk' => 'macedone',
+ 'ml' => 'malayalam',
+ 'mn' => 'mongolico',
+ 'mr' => 'marathi',
+ 'ms' => 'malay',
+ 'mt' => 'maltese',
+ 'ne' => 'nepalese',
+ 'nl' => 'nederlandese',
+ 'nn' => 'norvegiano (nynorsk)',
+ 'no' => 'norvegiano',
+ 'oc' => 'occitano',
+ 'or' => 'oriya',
+ 'pa' => 'punjabi',
+ 'pl' => 'polonese',
+ 'ps' => 'pashto',
+ 'pt' => 'portugese',
+ 'ro' => 'romaniano',
+ 'ru' => 'russo',
+ 'sa' => 'sanscrito',
+ 'sd' => 'sindhi',
+ 'sh' => 'serbocroate',
+ 'si' => 'sinhalese',
+ 'sk' => 'slovaco',
+ 'sl' => 'sloveno',
+ 'so' => 'somali',
+ 'sq' => 'albanese',
+ 'sr' => 'serbo',
+ 'st' => 'sesotho',
+ 'su' => 'sundanese',
+ 'sv' => 'svedese',
+ 'sw' => 'swahili',
+ 'ta' => 'tamil',
+ 'te' => 'telugu',
+ 'th' => 'thai',
+ 'ti' => 'tigrinya',
+ 'tk' => 'turkmeno',
+ 'tlh' => 'Klingon',
+ 'tr' => 'turco',
+ 'tw' => 'twi',
+ 'ug' => 'Uyghur',
+ 'uk' => 'ukrainiano',
+ 'ur' => 'urdu',
+ 'uz' => 'uzbeco',
+ 'vi' => 'vietnamese',
+ 'xh' => 'xhosa',
+ 'yi' => 'yiddish',
+ 'zu' => 'zulu',
+);
+
+$currencyNames = array(
+ 'AUD' => 'Dollares australian',
+ 'CAD' => 'Dollares canadian',
+ 'CHF' => 'Francos suisse',
+ 'DEM' => 'Marcos german',
+ 'DKK' => 'Coronas danese',
+ 'EUR' => 'Euros',
+ 'FRF' => 'francos francese',
+ 'GBP' => 'Libras sterling britannic',
+ 'JPY' => 'Yen japonese',
+ 'NOK' => 'Coronas norvegian',
+ 'SEK' => 'Coronas svedese',
+ 'USD' => 'Dollares statounitese',
+);
+
+$countryNames = array(
+ 'AE' => 'Emiratos Arabe Unite',
+ 'AF' => 'Afghanistan',
+ 'AG' => 'Antigua e Barbuda',
+ 'AL' => 'Albania',
+ 'AM' => 'Armenia',
+ 'AN' => 'Antillas nederlandese',
+ 'AO' => 'Angola',
+ 'AQ' => 'Antarctica',
+ 'AR' => 'Argentina',
+ 'AS' => 'Samoa american',
+ 'AT' => 'Austria',
+ 'AU' => 'Australia',
+ 'AZ' => 'Azerbaidzhan',
+ 'BA' => 'Bosnia e Herzegovina',
+ 'BD' => 'Bangladesh',
+ 'BE' => 'Belgica',
+ 'BF' => 'Burkina Faso',
+ 'BG' => 'Bulgaria',
+ 'BI' => 'Burundi',
+ 'BJ' => 'Benin',
+ 'BO' => 'Bolivia',
+ 'BR' => 'Brasil',
+ 'BS' => 'Bahamas',
+ 'BT' => 'Bhutan',
+ 'BV' => 'Insula de Bouvet',
+ 'BW' => 'Botswana',
+ 'BY' => 'Bielorussia',
+ 'CA' => 'Canada',
+ 'CF' => 'Republica African Central',
+ 'CG' => 'Congo',
+ 'CH' => 'Suissa',
+ 'CK' => 'Insulas Cook',
+ 'CL' => 'Chile',
+ 'CM' => 'Camerun',
+ 'CN' => 'China',
+ 'CO' => 'Colombia',
+ 'CU' => 'Cuba',
+ 'CX' => 'Insula de Natal',
+ 'CY' => 'Cypro',
+ 'CZ' => 'Republica Tchec',
+ 'DE' => 'Germania',
+ 'DK' => 'Danmark',
+ 'DO' => 'Republica Dominican',
+ 'DZ' => 'Algeria',
+ 'EC' => 'Ecuador',
+ 'EE' => 'Estonia',
+ 'EG' => 'Egypto',
+ 'EH' => 'Sahara occidental',
+ 'ER' => 'Eritrea',
+ 'ES' => 'Espania',
+ 'ET' => 'Ethiopia',
+ 'FI' => 'Finlandia',
+ 'FM' => 'Micronesia',
+ 'FO' => 'Insulas Feroe',
+ 'FR' => 'Francia',
+ 'GA' => 'Gabon',
+ 'GB' => 'Regno Unite',
+ 'GE' => 'Georgia',
+ 'GF' => 'Guyana francese',
+ 'GH' => 'Ghana',
+ 'GL' => 'Groenlandia',
+ 'GM' => 'Gambia',
+ 'GN' => 'Guinea',
+ 'GQ' => 'Guinea equatorial',
+ 'GR' => 'Grecia',
+ 'GW' => 'Guinea-Bissau',
+ 'HN' => 'Honduras',
+ 'HR' => 'Croatia',
+ 'HT' => 'Haiti',
+ 'HU' => 'Hungaria',
+ 'ID' => 'Indonesia',
+ 'IE' => 'Irlanda',
+ 'IL' => 'Israel',
+ 'IN' => 'India',
+ 'IO' => 'Territorio oceanic britanno-indian',
+ 'IQ' => 'Irak',
+ 'IR' => 'Iran',
+ 'IS' => 'Islanda',
+ 'IT' => 'Italia',
+ 'JO' => 'Jordania',
+ 'JP' => 'Japon',
+ 'KE' => 'Kenya',
+ 'KG' => 'Kirghizistan',
+ 'KH' => 'Cambodgia',
+ 'KI' => 'Kiribati',
+ 'KM' => 'Comoros',
+ 'KN' => 'Sancte Christophoro e Nevis',
+ 'KP' => 'Corea del Nord',
+ 'KR' => 'Corea del Sud',
+ 'KY' => 'Insulas de Caiman',
+ 'KZ' => 'Kazakhstan',
+ 'LB' => 'Libano',
+ 'LC' => 'Sancte Lucia',
+ 'LI' => 'Liechtenstein',
+ 'LK' => 'Sri Lanka',
+ 'LR' => 'Liberia',
+ 'LS' => 'Lesotho',
+ 'LT' => 'Lituania',
+ 'LV' => 'Lettonia',
+ 'LY' => 'Libya',
+ 'MA' => 'Marocco',
+ 'MD' => 'Moldavia',
+ 'MG' => 'Madagascar',
+ 'MH' => 'Insulas Marshall',
+ 'MK' => 'Macedonia',
+ 'ML' => 'Mali',
+ 'MM' => 'Birmania/Myanmar',
+ 'MN' => 'Mongolia',
+ 'MP' => 'Insulas Marianna del Nord',
+ 'MR' => 'Mauritania',
+ 'MW' => 'Malawi',
+ 'MX' => 'Mexico',
+ 'MY' => 'Malaysia',
+ 'MZ' => 'Mozambique',
+ 'NA' => 'Namibia',
+ 'NC' => 'Nove Caledonia',
+ 'NE' => 'Niger',
+ 'NF' => 'Insula Norfolk',
+ 'NG' => 'Nigeria',
+ 'NI' => 'Nicaragua',
+ 'NL' => 'Nederlandia',
+ 'NO' => 'Norvegia',
+ 'NP' => 'Nepal',
+ 'NZ' => 'Nove Zelanda',
+ 'OM' => 'Oman',
+ 'PE' => 'Peru',
+ 'PF' => 'Polynesia francese',
+ 'PG' => 'Papua Nove Guinea',
+ 'PH' => 'Philippinas',
+ 'PK' => 'Pakistan',
+ 'PL' => 'Polonia',
+ 'PT' => 'Portugal',
+ 'PY' => 'Paraguay',
+ 'RO' => 'Romania',
+ 'RW' => 'Ruanda',
+ 'SA' => 'Arabia Saudita',
+ 'SB' => 'Insulas Solomon',
+ 'SC' => 'Seychelles',
+ 'SD' => 'Sudan',
+ 'SE' => 'Svedia',
+ 'SI' => 'Slovenia',
+ 'SK' => 'Slovachia',
+ 'SL' => 'Sierra Leone',
+ 'SM' => 'San Marino',
+ 'SN' => 'Senegal',
+ 'SO' => 'Somalia',
+ 'SR' => 'Suriname',
+ 'SS' => 'Sudan del Sud',
+ 'SY' => 'Syria',
+ 'SZ' => 'Swazilandia',
+ 'TC' => 'Insulas Turcos e Caicos',
+ 'TD' => 'Tchad',
+ 'TF' => 'Territorios meridional francese',
+ 'TG' => 'Togo',
+ 'TH' => 'Thailandia',
+ 'TJ' => 'Tadzhikistan',
+ 'TK' => 'Tokelau',
+ 'TL' => 'Timor del Est',
+ 'TM' => 'Turkmenistan',
+ 'TN' => 'Tunisia',
+ 'TO' => 'tonga',
+ 'TR' => 'Turchia',
+ 'TT' => 'Trinidad e Tobago',
+ 'TV' => 'Tuvalu',
+ 'TW' => 'Taiwan',
+ 'TZ' => 'Tanzania',
+ 'UA' => 'Ukraina',
+ 'UG' => 'Uganda',
+ 'US' => 'Statos Unite',
+ 'UY' => 'Uruguay',
+ 'UZ' => 'Uzbekistan',
+ 'VC' => 'Sancte Vincente e le Grenadinas',
+ 'VE' => 'Venezuela',
+ 'VU' => 'Vanuatu',
+ 'WS' => 'Samoa',
+ 'YE' => 'Yemen',
+ 'ZA' => 'Africa del Sud',
+ 'ZM' => 'Zambia',
+ 'ZW' => 'Zimbabwe',
+);
diff --git a/MLEB/cldr/CldrNames/CldrNamesId.php b/MLEB/cldr/CldrNames/CldrNamesId.php
new file mode 100644
index 00000000..dd713d68
--- /dev/null
+++ b/MLEB/cldr/CldrNames/CldrNamesId.php
@@ -0,0 +1,1458 @@
+<?php
+
+$languageNames = array(
+ 'aa' => 'Afar',
+ 'ab' => 'Abkhaz',
+ 'ace' => 'Aceh',
+ 'ach' => 'Acoli',
+ 'ada' => 'Adangme',
+ 'ady' => 'Adygei',
+ 'ae' => 'Avesta',
+ 'aeb' => 'Arab Tunisia',
+ 'af' => 'Afrikaans',
+ 'afh' => 'Afrihili',
+ 'agq' => 'Aghem',
+ 'ain' => 'Ainu',
+ 'ak' => 'Akan',
+ 'akk' => 'Akkadia',
+ 'akz' => 'Alabama',
+ 'ale' => 'Aleut',
+ 'alt' => 'Altai Selatan',
+ 'am' => 'Amharik',
+ 'an' => 'Aragon',
+ 'ang' => 'Inggris Kuno',
+ 'anp' => 'Angika',
+ 'ar' => 'Arab',
+ 'ar-001' => 'Arab Standar Modern',
+ 'arc' => 'Aram',
+ 'arn' => 'Araukan',
+ 'arp' => 'Arapaho',
+ 'arq' => 'Arab Algeria',
+ 'arw' => 'Arawak',
+ 'ary' => 'Arab Maroko',
+ 'arz' => 'Arab Mesir',
+ 'as' => 'Assam',
+ 'asa' => 'Asu',
+ 'ase' => 'Bahasa Isyarat Amerika',
+ 'ast' => 'Astur',
+ 'av' => 'Avar',
+ 'awa' => 'Awadhi',
+ 'ay' => 'Aymara',
+ 'az' => 'Azerbaijan',
+ 'azb' => 'Azerbaijani Selatan',
+ 'ba' => 'Bashkir',
+ 'bal' => 'Baluchi',
+ 'ban' => 'Bali',
+ 'bar' => 'Bavaria',
+ 'bas' => 'Basa',
+ 'bax' => 'Bamun',
+ 'bbc' => 'Batak Toba',
+ 'bbj' => 'Ghomala',
+ 'be' => 'Belarusia',
+ 'bej' => 'Beja',
+ 'bem' => 'Bemba',
+ 'bew' => 'Betawi',
+ 'bez' => 'Bena',
+ 'bfd' => 'Bafut',
+ 'bg' => 'Bulgar',
+ 'bho' => 'Bhojpuri',
+ 'bi' => 'Bislama',
+ 'bik' => 'Bikol',
+ 'bin' => 'Bini',
+ 'bjn' => 'Banjar',
+ 'bkm' => 'Kom',
+ 'bla' => 'Siksika',
+ 'bm' => 'Bambara',
+ 'bn' => 'Bengali',
+ 'bo' => 'Tibet',
+ 'br' => 'Breton',
+ 'bra' => 'Braj',
+ 'brx' => 'Bodo',
+ 'bs' => 'Bosnia',
+ 'bss' => 'Akoose',
+ 'bua' => 'Buriat',
+ 'bug' => 'Bugis',
+ 'bum' => 'Bulu',
+ 'byn' => 'Blin',
+ 'byv' => 'Medumba',
+ 'ca' => 'Katalan',
+ 'cad' => 'Kado',
+ 'car' => 'Karib',
+ 'cay' => 'Cayuga',
+ 'cch' => 'Atsam',
+ 'ce' => 'Chechen',
+ 'ceb' => 'Sebuano',
+ 'cgg' => 'Kiga',
+ 'ch' => 'Chamorro',
+ 'chb' => 'Chibcha',
+ 'chg' => 'Chagatai',
+ 'chk' => 'Chuuke',
+ 'chm' => 'Mari',
+ 'chn' => 'Jargon Chinook',
+ 'cho' => 'Koktaw',
+ 'chp' => 'Chipewyan',
+ 'chr' => 'Cherokee',
+ 'chy' => 'Cheyenne',
+ 'ckb' => 'Kurdi Sorani',
+ 'co' => 'Korsika',
+ 'cop' => 'Koptik',
+ 'cr' => 'Kree',
+ 'crh' => 'Tatar Krimea',
+ 'cs' => 'Cheska',
+ 'csb' => 'Kashubia',
+ 'cu' => 'Bahasa Gereja Slavonia',
+ 'cv' => 'Chuvash',
+ 'cy' => 'Welsh',
+ 'da' => 'Dansk',
+ 'dak' => 'Dakota',
+ 'dar' => 'Dargwa',
+ 'dav' => 'Taita',
+ 'de' => 'Jerman',
+ 'de-at' => 'Jerman Austria',
+ 'de-ch' => 'Jerman Tinggi Swiss',
+ 'del' => 'Delaware',
+ 'den' => 'Slave',
+ 'dgr' => 'Dogrib',
+ 'din' => 'Dinka',
+ 'dje' => 'Zarma',
+ 'doi' => 'Dogri',
+ 'dsb' => 'Sorbia Rendah',
+ 'dua' => 'Duala',
+ 'dum' => 'Belanda Tengah',
+ 'dv' => 'Divehi',
+ 'dyo' => 'Jola-Fonyi',
+ 'dyu' => 'Dyula',
+ 'dz' => 'Dzongkha',
+ 'dzg' => 'Dazaga',
+ 'ebu' => 'Embu',
+ 'ee' => 'Ewe',
+ 'efi' => 'Efik',
+ 'egy' => 'Mesir Kuno',
+ 'eka' => 'Ekajuk',
+ 'el' => 'Yunani',
+ 'elx' => 'Elam',
+ 'en' => 'Inggris',
+ 'en-au' => 'Inggris Australia',
+ 'en-ca' => 'Inggris Kanada',
+ 'en-gb' => 'Inggris Inggris',
+ 'en-us' => 'Inggris Amerika',
+ 'enm' => 'Inggris Abad Pertengahan',
+ 'eo' => 'Esperanto',
+ 'es' => 'Spanyol',
+ 'es-419' => 'Spanyol Amerika Latin',
+ 'es-es' => 'Spanyol Eropa',
+ 'es-mx' => 'Spanyol Meksiko',
+ 'et' => 'Esti',
+ 'eu' => 'Bask',
+ 'ewo' => 'Ewondo',
+ 'fa' => 'Persia',
+ 'fan' => 'Fang',
+ 'fat' => 'Fanti',
+ 'ff' => 'Fula',
+ 'fi' => 'Suomi',
+ 'fil' => 'Filipino',
+ 'fj' => 'Fiji',
+ 'fo' => 'Faro',
+ 'fon' => 'Fon',
+ 'fr' => 'Prancis',
+ 'fr-ca' => 'Prancis Kanada',
+ 'fr-ch' => 'Prancis Swiss',
+ 'frm' => 'Prancis Abad Pertengahan',
+ 'fro' => 'Prancis Kuno',
+ 'frp' => 'Arpitan',
+ 'frr' => 'Frisia Utara',
+ 'frs' => 'Frisia Timur',
+ 'fur' => 'Friuli',
+ 'fy' => 'Frisia Barat',
+ 'ga' => 'Irlandia',
+ 'gaa' => 'Ga',
+ 'gag' => 'Gagauz',
+ 'gay' => 'Gayo',
+ 'gba' => 'Gbaya',
+ 'gd' => 'Gaelik Skotlandia',
+ 'gez' => 'Geez',
+ 'gil' => 'Gilbert',
+ 'gl' => 'Galisia',
+ 'glk' => 'Gilaki',
+ 'gmh' => 'Jerman Abad Pertengahan',
+ 'gn' => 'Guarani',
+ 'goh' => 'Jerman Kuno',
+ 'gon' => 'Gondi',
+ 'gor' => 'Gorontalo',
+ 'got' => 'Gothik',
+ 'grb' => 'Grebo',
+ 'grc' => 'Yunani Kuno',
+ 'gsw' => 'Jerman Swiss',
+ 'gu' => 'Gujarati',
+ 'guz' => 'Gusii',
+ 'gv' => 'Manx',
+ 'gwi' => 'Gwich’in',
+ 'ha' => 'Hausa',
+ 'hai' => 'Haida',
+ 'haw' => 'Hawaii',
+ 'he' => 'Ibrani',
+ 'hi' => 'Hindi',
+ 'hif' => 'Hindi Fiji',
+ 'hil' => 'Hiligaynon',
+ 'hit' => 'Hitit',
+ 'hmn' => 'Hmong',
+ 'ho' => 'Hiri Motu',
+ 'hr' => 'Kroasia',
+ 'hsb' => 'Sorbia Atas',
+ 'ht' => 'Haiti',
+ 'hu' => 'Hungaria',
+ 'hup' => 'Hupa',
+ 'hy' => 'Armenia',
+ 'hz' => 'Herero',
+ 'ia' => 'Interlingua',
+ 'iba' => 'Iban',
+ 'ibb' => 'Ibibio',
+ 'id' => 'Bahasa Indonesia',
+ 'ie' => 'Interlingue',
+ 'ig' => 'Igbo',
+ 'ii' => 'Sichuan Yi',
+ 'ik' => 'Inupiak',
+ 'ilo' => 'Iloko',
+ 'inh' => 'Ingushetia',
+ 'io' => 'Ido',
+ 'is' => 'Islandia',
+ 'it' => 'Italia',
+ 'iu' => 'Inuktitut',
+ 'ja' => 'Jepang',
+ 'jbo' => 'Lojban',
+ 'jgo' => 'Ngomba',
+ 'jmc' => 'Machame',
+ 'jpr' => 'Ibrani-Persia',
+ 'jrb' => 'Ibrani-Arab',
+ 'jv' => 'Jawa',
+ 'ka' => 'Georgia',
+ 'kaa' => 'Kara-Kalpak',
+ 'kab' => 'Kabyle',
+ 'kac' => 'Kachin',
+ 'kaj' => 'Jju',
+ 'kam' => 'Kamba',
+ 'kaw' => 'Kawi',
+ 'kbd' => 'Kabardi',
+ 'kbl' => 'Kanembu',
+ 'kcg' => 'Tyap',
+ 'kde' => 'Makonde',
+ 'kea' => 'Kabuverdianu',
+ 'ken' => 'Kenyang',
+ 'kfo' => 'Koro',
+ 'kg' => 'Kongo',
+ 'kha' => 'Khasi',
+ 'kho' => 'Khotan',
+ 'khq' => 'Koyra Chiini',
+ 'ki' => 'Kikuyu',
+ 'kj' => 'Kuanyama',
+ 'kk' => 'Kazakh',
+ 'kkj' => 'Kako',
+ 'kl' => 'Kalaallisut',
+ 'kln' => 'Kalenjin',
+ 'km' => 'Khmer',
+ 'kmb' => 'Kimbundu',
+ 'kn' => 'Kannada',
+ 'ko' => 'Korea',
+ 'koi' => 'Komi-Permyak',
+ 'kok' => 'Konkani',
+ 'kos' => 'Kosre',
+ 'kpe' => 'Kpelle',
+ 'kr' => 'Kanuri',
+ 'krc' => 'Karachai Balkar',
+ 'kri' => 'Krio',
+ 'krl' => 'Karelia',
+ 'kru' => 'Kuruk',
+ 'ks' => 'Kashmir',
+ 'ksb' => 'Shambala',
+ 'ksf' => 'Bafia',
+ 'ksh' => 'Dialek Kolsch',
+ 'ku' => 'Kurdi',
+ 'kum' => 'Kumyk',
+ 'kut' => 'Kutenai',
+ 'kv' => 'Komi',
+ 'kw' => 'Kornish',
+ 'ky' => 'Kirgiz',
+ 'la' => 'Latin',
+ 'lad' => 'Ladino',
+ 'lag' => 'Langi',
+ 'lah' => 'Lahnda',
+ 'lam' => 'Lamba',
+ 'lb' => 'Luksemburg',
+ 'lez' => 'Lezghia',
+ 'lg' => 'Ganda',
+ 'li' => 'Limburgia',
+ 'lij' => 'Liguria',
+ 'lkt' => 'Lakota',
+ 'ln' => 'Lingala',
+ 'lo' => 'Lao',
+ 'lol' => 'Mongo',
+ 'loz' => 'Lozi',
+ 'lt' => 'Lituavi',
+ 'lu' => 'Luba-Katanga',
+ 'lua' => 'Luba-Lulua',
+ 'lui' => 'Luiseno',
+ 'lun' => 'Lunda',
+ 'luo' => 'Luo',
+ 'lus' => 'Mizo',
+ 'luy' => 'Luyia',
+ 'lv' => 'Latvi',
+ 'lzz' => 'Laz',
+ 'mad' => 'Madura',
+ 'maf' => 'Mafa',
+ 'mag' => 'Magahi',
+ 'mai' => 'Maithili',
+ 'mak' => 'Makasar',
+ 'man' => 'Mandingo',
+ 'mas' => 'Masai',
+ 'mde' => 'Maba',
+ 'mdf' => 'Moksha',
+ 'mdr' => 'Mandar',
+ 'men' => 'Mende',
+ 'mer' => 'Meru',
+ 'mfe' => 'Morisien',
+ 'mg' => 'Malagasi',
+ 'mga' => 'Irlandia Abad Pertengahan',
+ 'mgh' => 'Makhuwa-Meetto',
+ 'mgo' => 'meta’',
+ 'mh' => 'Marshall',
+ 'mi' => 'Maori',
+ 'mic' => 'Mikmak',
+ 'min' => 'Minangkabau',
+ 'mk' => 'Makedonia',
+ 'ml' => 'Malayalam',
+ 'mn' => 'Mongolia',
+ 'mnc' => 'Manchuria',
+ 'mni' => 'Manipuri',
+ 'moh' => 'Mohawk',
+ 'mos' => 'Mossi',
+ 'mr' => 'Marathi',
+ 'ms' => 'Melayu',
+ 'mt' => 'Malta',
+ 'mua' => 'Mundang',
+ 'mul' => 'Beberapa Bahasa',
+ 'mus' => 'Bahasa Muskogee',
+ 'mwl' => 'Miranda',
+ 'mwr' => 'Marwari',
+ 'mwv' => 'Mentawai',
+ 'my' => 'Burma',
+ 'mye' => 'Myene',
+ 'myv' => 'Eryza',
+ 'na' => 'Nauru',
+ 'nap' => 'Neapolitan',
+ 'naq' => 'Nama',
+ 'nb' => 'Bokmål Norwegia',
+ 'nd' => 'Ndebele Utara',
+ 'nds' => 'Jerman Rendah',
+ 'ne' => 'Nepali',
+ 'new' => 'Newari',
+ 'ng' => 'Ndonga',
+ 'nia' => 'Nias',
+ 'niu' => 'Niuea',
+ 'nl' => 'Belanda',
+ 'nl-be' => 'Flemish',
+ 'nmg' => 'Kwasio',
+ 'nn' => 'Nynorsk Norwegia',
+ 'nnh' => 'Ngiemboon',
+ 'no' => 'Norwegia',
+ 'nog' => 'Nogai',
+ 'non' => 'Norse Kuno',
+ 'nqo' => 'N’Ko',
+ 'nr' => 'Ndebele Selatan',
+ 'nso' => 'Sotho Utara',
+ 'nus' => 'Nuer',
+ 'nv' => 'Navajo',
+ 'nwc' => 'Newari Klasik',
+ 'ny' => 'Nyanja',
+ 'nym' => 'Nyamwezi',
+ 'nyn' => 'Nyankole',
+ 'nyo' => 'Nyoro',
+ 'nzi' => 'Nzima',
+ 'oc' => 'Ositania',
+ 'oj' => 'Ojibwa',
+ 'om' => 'Oromo',
+ 'or' => 'Oriya',
+ 'os' => 'Ossetia',
+ 'osa' => 'Osage',
+ 'ota' => 'Turki Osmani',
+ 'pa' => 'Punjabi',
+ 'pag' => 'Pangasina',
+ 'pal' => 'Pahlevi',
+ 'pam' => 'Pampanga',
+ 'pap' => 'Papiamento',
+ 'pau' => 'Palau',
+ 'pdc' => 'Jerman Pennsylvania',
+ 'peo' => 'Persia Kuno',
+ 'phn' => 'Funisia',
+ 'pi' => 'Pali',
+ 'pl' => 'Polski',
+ 'pon' => 'Pohnpeia',
+ 'pro' => 'Provencal Lama',
+ 'ps' => 'Pashto',
+ 'pt' => 'Portugis',
+ 'pt-br' => 'Portugis Brasil',
+ 'pt-pt' => 'Portugis Eropa',
+ 'qu' => 'Quechua',
+ 'quc' => 'Kʼicheʼ',
+ 'raj' => 'Rajasthani',
+ 'rap' => 'Rapanui',
+ 'rar' => 'Rarotonga',
+ 'rm' => 'Reto-Roman',
+ 'rn' => 'Rundi',
+ 'ro' => 'Rumania',
+ 'ro-md' => 'Moldavia',
+ 'rof' => 'Rombo',
+ 'rom' => 'Romani',
+ 'rtm' => 'Rotuma',
+ 'ru' => 'Rusia',
+ 'rup' => 'Makedo-Rumania',
+ 'rw' => 'Kinyarwanda',
+ 'rwk' => 'Rwa',
+ 'sa' => 'Sanskerta',
+ 'sad' => 'Sandawe',
+ 'sah' => 'Sakha',
+ 'sam' => 'Aram Samaria',
+ 'saq' => 'Samburu',
+ 'sas' => 'Sasak',
+ 'sat' => 'Santali',
+ 'sba' => 'Ngambai',
+ 'sbp' => 'Sangu',
+ 'sc' => 'Sardinia',
+ 'scn' => 'Sisilia',
+ 'sco' => 'Skotlandia',
+ 'sd' => 'Sindhi',
+ 'se' => 'Sami Utara',
+ 'see' => 'Seneca',
+ 'seh' => 'Sena',
+ 'sei' => 'Seri',
+ 'sel' => 'Selkup',
+ 'ses' => 'Koyraboro Senni',
+ 'sg' => 'Sango',
+ 'sga' => 'Irlandia Kuno',
+ 'sh' => 'Serbo-Kroasia',
+ 'shi' => 'Tachelhit',
+ 'shn' => 'Shan',
+ 'shu' => 'Arab Suwa',
+ 'si' => 'Sinhala',
+ 'sid' => 'Sidamo',
+ 'sk' => 'Slovak',
+ 'sl' => 'Sloven',
+ 'sli' => 'Silesia Bawah',
+ 'sly' => 'Selayar',
+ 'sm' => 'Samoa',
+ 'sma' => 'Sami Selatan',
+ 'smj' => 'Lule Sami',
+ 'smn' => 'Inari Sami',
+ 'sms' => 'Skolt Sami',
+ 'sn' => 'Shona',
+ 'snk' => 'Soninke',
+ 'so' => 'Somali',
+ 'sog' => 'Sogdien',
+ 'sq' => 'Albania',
+ 'sr' => 'Serb',
+ 'srn' => 'Sranan Tongo',
+ 'srr' => 'Serer',
+ 'ss' => 'Swati',
+ 'ssy' => 'Saho',
+ 'st' => 'Sotho Selatan',
+ 'su' => 'Sunda',
+ 'suk' => 'Sukuma',
+ 'sus' => 'Susu',
+ 'sux' => 'Sumeria',
+ 'sv' => 'Swedia',
+ 'sw' => 'Swahili',
+ 'swb' => 'Komoria',
+ 'swc' => 'Kongo Swahili',
+ 'syc' => 'Suriah Klasik',
+ 'syr' => 'Suriah',
+ 'szl' => 'Silesia',
+ 'ta' => 'Tamil',
+ 'tcy' => 'Tulu',
+ 'te' => 'Telugu',
+ 'tem' => 'Timne',
+ 'teo' => 'Teso',
+ 'ter' => 'Tereno',
+ 'tet' => 'Tetun',
+ 'tg' => 'Tajik',
+ 'th' => 'Thai',
+ 'ti' => 'Tigrinya',
+ 'tig' => 'Tigre',
+ 'tiv' => 'Tiv',
+ 'tk' => 'Turkmen',
+ 'tkl' => 'Tokelau',
+ 'tl' => 'Tagalog',
+ 'tlh' => 'Klingon',
+ 'tli' => 'Tlingit',
+ 'tmh' => 'Tamashek',
+ 'tn' => 'Tswana',
+ 'to' => 'Tonga',
+ 'tog' => 'Nyasa Tonga',
+ 'tpi' => 'Tok Pisin',
+ 'tr' => 'Turki',
+ 'tru' => 'Turoyo',
+ 'trv' => 'Taroko',
+ 'ts' => 'Tsonga',
+ 'tsi' => 'Tsimshia',
+ 'tt' => 'Tatar',
+ 'ttt' => 'Tat Muslim',
+ 'tum' => 'Tumbuka',
+ 'tvl' => 'Tuvalu',
+ 'tw' => 'Twi',
+ 'twq' => 'Tasawaq',
+ 'ty' => 'Tahiti',
+ 'tyv' => 'Tuvinia',
+ 'tzm' => 'Tamazight Maroko Tengah',
+ 'udm' => 'Udmurt',
+ 'ug' => 'Uyghur',
+ 'uga' => 'Ugarit',
+ 'uk' => 'Ukraina',
+ 'umb' => 'Umbundu',
+ 'und' => 'Bahasa Tidak Dikenal',
+ 'ur' => 'Urdu',
+ 'uz' => 'Uzbek',
+ 'vai' => 'Vai',
+ 've' => 'Venda',
+ 'vec' => 'Venesia',
+ 'vi' => 'Vietnam',
+ 'vo' => 'Volapuk',
+ 'vot' => 'Votia',
+ 'vun' => 'Vunjo',
+ 'wa' => 'Walloon',
+ 'wae' => 'Walser',
+ 'wal' => 'Walamo',
+ 'war' => 'Warai',
+ 'was' => 'Washo',
+ 'wo' => 'Wolof',
+ 'xal' => 'Kalmuk',
+ 'xh' => 'Xhosa',
+ 'xog' => 'Soga',
+ 'yao' => 'Yao',
+ 'yap' => 'Yapois',
+ 'yav' => 'Yangben',
+ 'ybb' => 'Yemba',
+ 'yi' => 'Yiddish',
+ 'yo' => 'Yoruba',
+ 'yue' => 'Kanton',
+ 'za' => 'Zhuang',
+ 'zap' => 'Zapotek',
+ 'zbl' => 'Blissymbol',
+ 'zen' => 'Zenaga',
+ 'zgh' => 'Tamazight Maroko Standar',
+ 'zh' => 'China',
+ 'zh-hans' => 'China (Aksara Sederhana)',
+ 'zh-hant' => 'China (Aksara Tradisional)',
+ 'zu' => 'Zulu',
+ 'zun' => 'Zuni',
+ 'zxx' => 'Tidak ada konten linguistik',
+ 'zza' => 'Zaza',
+);
+
+$currencyNames = array(
+ 'ADP' => 'Peseta Andorra',
+ 'AED' => 'Dirham Uni Emirat Arab',
+ 'AFA' => 'Afgani Afganistan (1927–2002)',
+ 'AFN' => 'Afgani Afganistan',
+ 'ALL' => 'Lek Albania',
+ 'AMD' => 'Dram Armenia',
+ 'ANG' => 'Guilder Antilla Belanda',
+ 'AOA' => 'Kwanza Angola',
+ 'AOK' => 'Kwanza Angola (1977–1991)',
+ 'AON' => 'Kwanza Baru Angola (1990–2000)',
+ 'AOR' => 'Kwanza Angola yang Disesuaikan Lagi (1995–1999)',
+ 'ARA' => 'Austral Argentina',
+ 'ARL' => 'Peso Ley Argentina (1970–1983)',
+ 'ARM' => 'Peso Argentina (1881–1970)',
+ 'ARP' => 'Peso Argentina (1983–1985)',
+ 'ARS' => 'Peso Argentina',
+ 'ATS' => 'Schilling Austria',
+ 'AUD' => 'Dolar Australia',
+ 'AWG' => 'Florin Aruba',
+ 'AZM' => 'Manat Azerbaijan (1993–2006)',
+ 'AZN' => 'Manat Azerbaijan',
+ 'BAD' => 'Dinar Bosnia-Herzegovina (1992–1994)',
+ 'BAM' => 'Mark Konvertibel Bosnia-Herzegovina',
+ 'BAN' => 'Dinar Baru Bosnia-Herzegovina (1994–1997)',
+ 'BBD' => 'Dolar Barbados',
+ 'BDT' => 'Taka Bangladesh',
+ 'BEC' => 'Franc Belgia (konvertibel)',
+ 'BEF' => 'Franc Belgia',
+ 'BEL' => 'Franc Belgia (keuangan)',
+ 'BGL' => 'Hard Lev Bulgaria',
+ 'BGM' => 'Socialist Lev Bulgaria',
+ 'BGN' => 'Lev Bulgaria',
+ 'BGO' => 'Lev Bulgaria (1879–1952)',
+ 'BHD' => 'Dinar Bahrain',
+ 'BIF' => 'Franc Burundi',
+ 'BMD' => 'Dolar Bermuda',
+ 'BND' => 'Dolar Brunei',
+ 'BOB' => 'Boliviano',
+ 'BOL' => 'Boliviano Bolivia (1863–1963)',
+ 'BOP' => 'Peso Bolivia',
+ 'BOV' => 'Mvdol Bolivia',
+ 'BRB' => 'Cruzeiro Baru Brasil (1967–1986)',
+ 'BRC' => 'Cruzado Brasil (1986–1989)',
+ 'BRE' => 'Cruzeiro Brasil (1990–1993)',
+ 'BRL' => 'Real Brasil',
+ 'BRN' => 'Cruzado Baru Brasil (1989–1990)',
+ 'BRR' => 'Cruzeiro Brasil (1993–1994)',
+ 'BRZ' => 'Cruzeiro Brasil (1942–1967)',
+ 'BSD' => 'Dolar Bahama',
+ 'BTN' => 'Ngultrum Bhutan',
+ 'BUK' => 'Kyat Burma',
+ 'BWP' => 'Pula Botswana',
+ 'BYB' => 'Rubel Baru Belarus (1994–1999)',
+ 'BYR' => 'Rubel Belarusia',
+ 'BZD' => 'Dolar Belize',
+ 'CAD' => 'Dolar Kanada',
+ 'CDF' => 'Franc Kongo',
+ 'CHE' => 'Euro WIR',
+ 'CHF' => 'Franc Swiss',
+ 'CHW' => 'Franc WIR',
+ 'CLE' => 'Escudo Cile',
+ 'CLF' => 'Satuan Hitung (UF) Cile',
+ 'CLP' => 'Peso Cile',
+ 'CNY' => 'Yuan China',
+ 'COP' => 'Peso Kolombia',
+ 'COU' => 'Unit Nilai Nyata Kolombia',
+ 'CRC' => 'Colon Kosta Rika',
+ 'CSD' => 'Dinar Serbia (2002–2006)',
+ 'CSK' => 'Hard Koruna Cheska',
+ 'CUC' => 'Peso Konvertibel Kuba',
+ 'CUP' => 'Peso Kuba',
+ 'CVE' => 'Escudo Tanjung Verde',
+ 'CYP' => 'Pound Siprus',
+ 'CZK' => 'Koruna Cheska',
+ 'DDM' => 'Mark Jerman Timur',
+ 'DEM' => 'Mark Jerman',
+ 'DJF' => 'Franc Jibuti',
+ 'DKK' => 'Krone Denmark',
+ 'DOP' => 'Peso Dominika',
+ 'DZD' => 'Dinar Algeria',
+ 'ECS' => 'Sucre Ekuador',
+ 'ECV' => 'Satuan Nilai Tetap Ekuador',
+ 'EEK' => 'Kroon Estonia',
+ 'EGP' => 'Pound Mesir',
+ 'ERN' => 'Nakfa Eritrea',
+ 'ESA' => 'Peseta Spanyol (akun)',
+ 'ESB' => 'Peseta Spanyol (konvertibel)',
+ 'ESP' => 'Peseta Spanyol',
+ 'ETB' => 'Birr Etiopia',
+ 'EUR' => 'Euro',
+ 'FIM' => 'Markka Finlandia',
+ 'FJD' => 'Dolar Fiji',
+ 'FKP' => 'Pound Kepulauan Falkland',
+ 'FRF' => 'Franc Prancis',
+ 'GBP' => 'Pound Sterling Inggris',
+ 'GEK' => 'Kupon Larit Georgia',
+ 'GEL' => 'Lari Georgia',
+ 'GHC' => 'Cedi Ghana (1979–2007)',
+ 'GHS' => 'Cedi Ghana',
+ 'GIP' => 'Pound Gibraltar',
+ 'GMD' => 'Dalasi Gambia',
+ 'GNF' => 'Franc Guinea',
+ 'GNS' => 'Syli Guinea',
+ 'GQE' => 'Ekuele Guinea Ekuatorial',
+ 'GRD' => 'Drachma Yunani',
+ 'GTQ' => 'Quetzal Guatemala',
+ 'GWE' => 'Escudo Guinea Portugal',
+ 'GWP' => 'Peso Guinea-Bissau',
+ 'GYD' => 'Dolar Guyana',
+ 'HKD' => 'Dolar Hong Kong',
+ 'HNL' => 'Lempira Honduras',
+ 'HRD' => 'Dinar Kroasia',
+ 'HRK' => 'Kuna Kroasia',
+ 'HTG' => 'Gourde Haiti',
+ 'HUF' => 'Forint Hungaria',
+ 'IDR' => 'Rupiah Indonesia',
+ 'IEP' => 'Pound Irlandia',
+ 'ILP' => 'Pound Israel',
+ 'ILR' => 'Shekel Israel',
+ 'ILS' => 'Shekel Baru Israel',
+ 'INR' => 'Rupee India',
+ 'IQD' => 'Dinar Irak',
+ 'IRR' => 'Rial Iran',
+ 'ISJ' => 'Krona Islandia (1918–1981)',
+ 'ISK' => 'Krona Islandia',
+ 'ITL' => 'Lira Italia',
+ 'JMD' => 'Dolar Jamaika',
+ 'JOD' => 'Dinar Yordania',
+ 'JPY' => 'Yen Jepang',
+ 'KES' => 'Shilling Kenya',
+ 'KGS' => 'Som Kirgistan',
+ 'KHR' => 'Riel Kamboja',
+ 'KMF' => 'Franc Komoro',
+ 'KPW' => 'Won Korea Utara',
+ 'KRH' => 'Hwan Korea Selatan (1953–1962)',
+ 'KRO' => 'Won Korea Selatan (1945–1953)',
+ 'KRW' => 'Won Korea Selatan',
+ 'KWD' => 'Dinar Kuwait',
+ 'KYD' => 'Dolar Kepulauan Cayman',
+ 'KZT' => 'Tenge Kazakstan',
+ 'LAK' => 'Kip Laos',
+ 'LBP' => 'Pound Lebanon',
+ 'LKR' => 'Rupee Sri Lanka',
+ 'LRD' => 'Dolar Liberia',
+ 'LSL' => 'Loti Lesotho',
+ 'LTL' => 'Litas Lituania',
+ 'LTT' => 'Talonas Lituania',
+ 'LUC' => 'Franc Konvertibel Luksemburg',
+ 'LUF' => 'Franc Luksemburg',
+ 'LUL' => 'Financial Franc Luksemburg',
+ 'LVL' => 'Lats Latvia',
+ 'LVR' => 'Rubel Latvia',
+ 'LYD' => 'Dinar Libya',
+ 'MAD' => 'Dirham Maroko',
+ 'MAF' => 'Franc Maroko',
+ 'MCF' => 'Franc Monegasque',
+ 'MDC' => 'Cupon Moldova',
+ 'MDL' => 'Leu Moldova',
+ 'MGA' => 'Ariary Madagaskar',
+ 'MGF' => 'Franc Malagasi',
+ 'MKD' => 'Denar Makedonia',
+ 'MKN' => 'Denar Makedonia (1992–1993)',
+ 'MLF' => 'Franc Mali',
+ 'MMK' => 'Kyat Myanmar',
+ 'MNT' => 'Tugrik Mongolia',
+ 'MOP' => 'Pataca Makau',
+ 'MRO' => 'Ouguiya Mauritania',
+ 'MTL' => 'Lira Malta',
+ 'MTP' => 'Pound Malta',
+ 'MUR' => 'Rupee Mauritius',
+ 'MVP' => 'Rufiyaa Maladewa (1947–1981)',
+ 'MVR' => 'Rufiyaa Maladewa',
+ 'MWK' => 'Kwacha Malawi',
+ 'MXN' => 'Peso Meksiko',
+ 'MXP' => 'Peso Silver Meksiko (1861–1992)',
+ 'MXV' => 'Unit Investasi Meksiko',
+ 'MYR' => 'Ringgit Malaysia',
+ 'MZE' => 'Escudo Mozambik',
+ 'MZM' => 'Metical Mozambik (1980–2006)',
+ 'MZN' => 'Metical Mozambik',
+ 'NAD' => 'Dolar Namibia',
+ 'NGN' => 'Naira Nigeria',
+ 'NIC' => 'Cordoba Nikaragua (1988–1991)',
+ 'NIO' => 'Cordoba Nikaragua',
+ 'NLG' => 'Guilder Belanda',
+ 'NOK' => 'Krone Norwegia',
+ 'NPR' => 'Rupee Nepal',
+ 'NZD' => 'Dolar Selandia Baru',
+ 'OMR' => 'Rial Oman',
+ 'PAB' => 'Balboa Panama',
+ 'PEI' => 'Inti Peru',
+ 'PEN' => 'Nuevo Sol Peru',
+ 'PES' => 'Sol Peru (1863–1965)',
+ 'PGK' => 'Kina Papua Nugini',
+ 'PHP' => 'Peso Filipina',
+ 'PKR' => 'Rupee Pakistan',
+ 'PLN' => 'Polandia Zloty',
+ 'PLZ' => 'Zloty Polandia (1950–1995)',
+ 'PTE' => 'Escudo Portugal',
+ 'PYG' => 'Guarani Paraguay',
+ 'QAR' => 'Rial Qatar',
+ 'RHD' => 'Dolar Rhodesia',
+ 'ROL' => 'Leu Rumania (1952–2006)',
+ 'RON' => 'Leu Rumania',
+ 'RSD' => 'Dinar Serbia',
+ 'RUB' => 'Rubel Rusia',
+ 'RUR' => 'Rubel Rusia (1991–1998)',
+ 'RWF' => 'Franc Rwanda',
+ 'SAR' => 'Riyal Arab Saudi',
+ 'SBD' => 'Dolar Kepulauan Solomon',
+ 'SCR' => 'Rupee Seychelles',
+ 'SDD' => 'Dinar Sudan (1992–2007)',
+ 'SDG' => 'Pound Sudan',
+ 'SDP' => 'Pound Sudan (1957–1998)',
+ 'SEK' => 'Krona Swedia',
+ 'SGD' => 'Dolar Singapura',
+ 'SHP' => 'Pound Saint Helena',
+ 'SIT' => 'Tolar Slovenia',
+ 'SKK' => 'Koruna Slovakia',
+ 'SLL' => 'Leone Sierra Leone',
+ 'SOS' => 'Shilling Somalia',
+ 'SRD' => 'Dolar Suriname',
+ 'SRG' => 'Guilder Suriname',
+ 'SSP' => 'Pound Sudan Selatan',
+ 'STD' => 'Dobra Sao Tome dan Principe',
+ 'SUR' => 'Rubel Soviet',
+ 'SVC' => 'Colon El Savador',
+ 'SYP' => 'Pound Suriah',
+ 'SZL' => 'Lilangeni Swaziland',
+ 'THB' => 'Baht Thailand',
+ 'TJR' => 'Rubel Tajikistan',
+ 'TJS' => 'Somoni Tajikistan',
+ 'TMM' => 'Manat Turkmenistan (1993–2009)',
+ 'TMT' => 'Manat Turkimenistan',
+ 'TND' => 'Dinar Tunisia',
+ 'TOP' => 'Paʻanga Tonga',
+ 'TPE' => 'Escudo Timor',
+ 'TRL' => 'Lira Turki (1922–2005)',
+ 'TRY' => 'Lira Turki',
+ 'TTD' => 'Dolar Trinidad dan Tobago',
+ 'TWD' => 'Dolar Baru Taiwan',
+ 'TZS' => 'Shilling Tanzania',
+ 'UAH' => 'Hryvnia Ukraina',
+ 'UAK' => 'Karbovanet Ukraina',
+ 'UGS' => 'Shilling Uganda (1966–1987)',
+ 'UGX' => 'Shilling Uganda',
+ 'USD' => 'Dolar Amerika Serikat',
+ 'USN' => 'Dolar AS (Hari berikutnya)',
+ 'USS' => 'Dolar AS (Hari yang sama)',
+ 'UYI' => 'Peso Uruguay (Unit Diindeks)',
+ 'UYP' => 'Peso Uruguay (1975–1993)',
+ 'UYU' => 'Peso Uruguay',
+ 'UZS' => 'Som Uzbekistan',
+ 'VEB' => 'Bolivar Venezuela (1871–2008)',
+ 'VEF' => 'Bolivar Venezuela',
+ 'VND' => 'Dong Vietnam',
+ 'VNN' => 'Dong Vietnam (1978–1985)',
+ 'VUV' => 'Vatu Vanuatu',
+ 'WST' => 'Tala Samoa',
+ 'XAF' => 'Franc CFA BEAC',
+ 'XAG' => 'Silver',
+ 'XAU' => 'Emas',
+ 'XBA' => 'Unit Gabungan Eropa',
+ 'XBB' => 'Unit Keuangan Eropa',
+ 'XBC' => 'Satuan Hitung Eropa (XBC)',
+ 'XBD' => 'Satuan Hitung Eropa (XBD)',
+ 'XCD' => 'Dolar Karibia Timur',
+ 'XDR' => 'Hak Khusus Menggambar',
+ 'XEU' => 'Satuan Mata Uang Eropa',
+ 'XFO' => 'Franc Gold Perancis',
+ 'XFU' => 'Franc UIC Perancis',
+ 'XOF' => 'Franc CFA BCEAO',
+ 'XPD' => 'Palladium',
+ 'XPF' => 'Franc CFP',
+ 'XPT' => 'Platinum',
+ 'XRE' => 'Dana RINET',
+ 'XTS' => 'Kode Mata Uang Pengujian',
+ 'XXX' => 'Mata Uang Tidak Dikenal',
+ 'YDD' => 'Dinar Yaman',
+ 'YER' => 'Rial Yaman',
+ 'YUD' => 'Hard Dinar Yugoslavia (1966–1990)',
+ 'YUM' => 'Dinar Baru Yugoslavia (1994–2002)',
+ 'YUN' => 'Dinar Konvertibel Yugoslavia (1990–1992)',
+ 'YUR' => 'Dinar Reformasi Yugoslavia (1992–1993)',
+ 'ZAL' => 'Rand Afrika Selatan (Keuangan)',
+ 'ZAR' => 'Rand Afrika Selatan',
+ 'ZMK' => 'Kwacha Zambia (1968–2012)',
+ 'ZMW' => 'Kwacha Zambia',
+ 'ZRN' => 'Zaire Baru Zaire (1993–1998)',
+ 'ZRZ' => 'Zaire Zaire (1971–1993)',
+ 'ZWD' => 'Dolar Zimbabwe (1980–2008)',
+ 'ZWL' => 'Dolar Zimbabwe (2009)',
+ 'ZWR' => 'Dolar Zimbabwe (2008)',
+);
+
+$currencySymbols = array(
+ 'ADP' => 'ADP',
+ 'AED' => 'AED',
+ 'AFA' => 'AFA',
+ 'AFN' => 'AFN',
+ 'ALL' => 'ALL',
+ 'AMD' => 'AMD',
+ 'ANG' => 'ANG',
+ 'AOA' => 'AOA',
+ 'AOK' => 'AOK',
+ 'AON' => 'AON',
+ 'AOR' => 'AOR',
+ 'ARA' => 'ARA',
+ 'ARL' => 'ARL',
+ 'ARM' => 'ARM',
+ 'ARP' => 'ARP',
+ 'ARS' => 'ARS',
+ 'ATS' => 'ATS',
+ 'AUD' => 'AU$',
+ 'AWG' => 'AWG',
+ 'AZM' => 'AZM',
+ 'AZN' => 'AZN',
+ 'BAD' => 'BAD',
+ 'BAM' => 'BAM',
+ 'BAN' => 'BAN',
+ 'BBD' => 'BBD',
+ 'BDT' => 'BDT',
+ 'BEC' => 'BEC',
+ 'BEF' => 'BEF',
+ 'BEL' => 'BEL',
+ 'BGL' => 'BGL',
+ 'BGM' => 'BGM',
+ 'BGN' => 'BGN',
+ 'BGO' => 'BGO',
+ 'BHD' => 'BHD',
+ 'BIF' => 'BIF',
+ 'BMD' => 'BMD',
+ 'BND' => 'BND',
+ 'BOB' => 'BOB',
+ 'BOL' => 'BOL',
+ 'BOP' => 'BOP',
+ 'BOV' => 'BOV',
+ 'BRB' => 'BRB',
+ 'BRC' => 'BRC',
+ 'BRE' => 'BRE',
+ 'BRL' => 'R$',
+ 'BRN' => 'BRN',
+ 'BRR' => 'BRR',
+ 'BRZ' => 'BRZ',
+ 'BSD' => 'BSD',
+ 'BTN' => 'BTN',
+ 'BUK' => 'BUK',
+ 'BWP' => 'BWP',
+ 'BYB' => 'BYB',
+ 'BYR' => 'BYR',
+ 'BZD' => 'BZD',
+ 'CAD' => 'CA$',
+ 'CDF' => 'CDF',
+ 'CHE' => 'CHE',
+ 'CHF' => 'CHF',
+ 'CHW' => 'CHW',
+ 'CLE' => 'CLE',
+ 'CLF' => 'CLF',
+ 'CLP' => 'CLP',
+ 'CNY' => 'CN¥',
+ 'COP' => 'COP',
+ 'COU' => 'COU',
+ 'CRC' => 'CRC',
+ 'CSD' => 'CSD',
+ 'CSK' => 'CSK',
+ 'CUC' => 'CUC',
+ 'CUP' => 'CUP',
+ 'CVE' => 'CVE',
+ 'CYP' => 'CYP',
+ 'CZK' => 'CZK',
+ 'DDM' => 'DDM',
+ 'DEM' => 'DEM',
+ 'DJF' => 'DJF',
+ 'DKK' => 'DKK',
+ 'DOP' => 'DOP',
+ 'DZD' => 'DZD',
+ 'ECS' => 'ECS',
+ 'ECV' => 'ECV',
+ 'EEK' => 'EEK',
+ 'EGP' => 'EGP',
+ 'ERN' => 'ERN',
+ 'ESA' => 'ESA',
+ 'ESB' => 'ESB',
+ 'ESP' => 'ESP',
+ 'ETB' => 'ETB',
+ 'EUR' => '€',
+ 'FIM' => 'FIM',
+ 'FJD' => 'FJD',
+ 'FKP' => 'FKP',
+ 'FRF' => 'FRF',
+ 'GBP' => '£',
+ 'GEK' => 'GEK',
+ 'GEL' => 'GEL',
+ 'GHC' => 'GHC',
+ 'GHS' => 'GHS',
+ 'GIP' => 'GIP',
+ 'GMD' => 'GMD',
+ 'GNF' => 'GNF',
+ 'GNS' => 'GNS',
+ 'GQE' => 'GQE',
+ 'GRD' => 'GRD',
+ 'GTQ' => 'GTQ',
+ 'GWE' => 'GWE',
+ 'GWP' => 'GWP',
+ 'GYD' => 'GYD',
+ 'HKD' => 'HK$',
+ 'HNL' => 'HNL',
+ 'HRD' => 'HRD',
+ 'HRK' => 'HRK',
+ 'HTG' => 'HTG',
+ 'HUF' => 'HUF',
+ 'IDR' => 'Rp',
+ 'IEP' => 'IEP',
+ 'ILP' => 'ILP',
+ 'ILS' => '₪',
+ 'INR' => 'Rs',
+ 'IQD' => 'IQD',
+ 'IRR' => 'IRR',
+ 'ISK' => 'ISK',
+ 'ITL' => 'ITL',
+ 'JMD' => 'JMD',
+ 'JOD' => 'JOD',
+ 'JPY' => 'JP¥',
+ 'KES' => 'KES',
+ 'KGS' => 'KGS',
+ 'KHR' => 'KHR',
+ 'KMF' => 'KMF',
+ 'KPW' => 'KPW',
+ 'KRH' => 'KRH',
+ 'KRO' => 'KRO',
+ 'KRW' => '₩',
+ 'KWD' => 'KWD',
+ 'KYD' => 'KYD',
+ 'KZT' => 'KZT',
+ 'LAK' => 'LAK',
+ 'LBP' => 'LBP',
+ 'LKR' => 'LKR',
+ 'LRD' => 'LRD',
+ 'LSL' => 'LSL',
+ 'LTL' => 'LTL',
+ 'LTT' => 'LTT',
+ 'LUC' => 'LUC',
+ 'LUF' => 'LUF',
+ 'LUL' => 'LUL',
+ 'LVL' => 'LVL',
+ 'LVR' => 'LVR',
+ 'LYD' => 'LYD',
+ 'MAD' => 'MAD',
+ 'MAF' => 'MAF',
+ 'MCF' => 'MCF',
+ 'MDC' => 'MDC',
+ 'MDL' => 'MDL',
+ 'MGA' => 'MGA',
+ 'MGF' => 'MGF',
+ 'MKD' => 'MKD',
+ 'MKN' => 'MKN',
+ 'MLF' => 'MLF',
+ 'MMK' => 'MMK',
+ 'MNT' => 'MNT',
+ 'MOP' => 'MOP',
+ 'MRO' => 'MRO',
+ 'MTL' => 'MTL',
+ 'MTP' => 'MTP',
+ 'MUR' => 'MUR',
+ 'MVR' => 'MVR',
+ 'MWK' => 'MWK',
+ 'MXN' => 'MX$',
+ 'MXP' => 'MXP',
+ 'MXV' => 'MXV',
+ 'MYR' => 'MYR',
+ 'MZE' => 'MZE',
+ 'MZM' => 'MZM',
+ 'MZN' => 'MZN',
+ 'NAD' => 'NAD',
+ 'NGN' => 'NGN',
+ 'NIC' => 'NIC',
+ 'NIO' => 'NIO',
+ 'NLG' => 'NLG',
+ 'NOK' => 'NOK',
+ 'NPR' => 'NPR',
+ 'NZD' => 'NZ$',
+ 'OMR' => 'OMR',
+ 'PAB' => 'PAB',
+ 'PEI' => 'PEI',
+ 'PEN' => 'PEN',
+ 'PES' => 'PES',
+ 'PGK' => 'PGK',
+ 'PHP' => 'PHP',
+ 'PKR' => 'PKR',
+ 'PLN' => 'PLN',
+ 'PLZ' => 'PLZ',
+ 'PTE' => 'PTE',
+ 'PYG' => 'PYG',
+ 'QAR' => 'QAR',
+ 'RHD' => 'RHD',
+ 'ROL' => 'ROL',
+ 'RON' => 'RON',
+ 'RSD' => 'RSD',
+ 'RUB' => 'RUB',
+ 'RUR' => 'RUR',
+ 'RWF' => 'RWF',
+ 'SAR' => 'SAR',
+ 'SBD' => 'SBD',
+ 'SCR' => 'SCR',
+ 'SDD' => 'SDD',
+ 'SDG' => 'SDG',
+ 'SDP' => 'SDP',
+ 'SEK' => 'SEK',
+ 'SGD' => 'SGD',
+ 'SHP' => 'SHP',
+ 'SIT' => 'SIT',
+ 'SKK' => 'SKK',
+ 'SLL' => 'SLL',
+ 'SOS' => 'SOS',
+ 'SRD' => 'SRD',
+ 'SRG' => 'SRG',
+ 'SSP' => 'SSP',
+ 'STD' => 'STD',
+ 'SUR' => 'SUR',
+ 'SVC' => 'SVC',
+ 'SYP' => 'SYP',
+ 'SZL' => 'SZL',
+ 'THB' => '฿',
+ 'TJR' => 'TJR',
+ 'TJS' => 'TJS',
+ 'TMM' => 'TMM',
+ 'TMT' => 'TMT',
+ 'TND' => 'TND',
+ 'TOP' => 'TOP',
+ 'TPE' => 'TPE',
+ 'TRL' => 'TRL',
+ 'TRY' => 'TRY',
+ 'TTD' => 'TTD',
+ 'TWD' => 'NT$',
+ 'TZS' => 'TZS',
+ 'UAH' => 'UAH',
+ 'UAK' => 'UAK',
+ 'UGS' => 'UGS',
+ 'UGX' => 'UGX',
+ 'USD' => 'US$',
+ 'USN' => 'USN',
+ 'USS' => 'USS',
+ 'UYI' => 'UYI',
+ 'UYP' => 'UYP',
+ 'UYU' => '$U',
+ 'UZS' => 'UZS',
+ 'VEB' => 'VEB',
+ 'VEF' => 'VEF',
+ 'VND' => '₫',
+ 'VNN' => 'VNN',
+ 'VUV' => 'VUV',
+ 'WST' => 'WST',
+ 'XAF' => 'FCFA',
+ 'XAG' => 'XAG',
+ 'XAU' => 'XAU',
+ 'XBA' => 'XBA',
+ 'XBB' => 'XBB',
+ 'XBC' => 'XBC',
+ 'XBD' => 'XBD',
+ 'XCD' => 'EC$',
+ 'XDR' => 'XDR',
+ 'XEU' => 'XEU',
+ 'XFO' => 'XFO',
+ 'XOF' => 'CFA',
+ 'XPD' => 'XPD',
+ 'XPF' => 'CFPF',
+ 'XPT' => 'XPT',
+ 'XRE' => 'XRE',
+ 'XTS' => 'XTS',
+ 'XXX' => 'XXX',
+ 'YDD' => 'YDD',
+ 'YER' => 'YER',
+ 'YUD' => 'YUD',
+ 'YUM' => 'YUM',
+ 'YUN' => 'YUN',
+ 'YUR' => 'YUR',
+ 'ZAL' => 'ZAL',
+ 'ZAR' => 'ZAR',
+ 'ZMK' => 'ZMK',
+ 'ZMW' => 'ZMW',
+ 'ZRN' => 'ZRN',
+ 'ZRZ' => 'ZRZ',
+ 'ZWD' => 'ZWD',
+ 'ZWL' => 'ZWL',
+ 'ZWR' => 'ZWR',
+);
+
+$countryNames = array(
+ 'AC' => 'Pulau Ascension',
+ 'AD' => 'Andorra',
+ 'AE' => 'Uni Emirat Arab',
+ 'AF' => 'Afganistan',
+ 'AG' => 'Antigua dan Barbuda',
+ 'AI' => 'Anguilla',
+ 'AL' => 'Albania',
+ 'AM' => 'Armenia',
+ 'AN' => 'Antilla Belanda',
+ 'AO' => 'Angola',
+ 'AQ' => 'Antarktika',
+ 'AR' => 'Argentina',
+ 'AS' => 'Samoa Amerika',
+ 'AT' => 'Austria',
+ 'AU' => 'Australia',
+ 'AW' => 'Aruba',
+ 'AX' => 'Kepulauan Aland',
+ 'AZ' => 'Azerbaijan',
+ 'BA' => 'Bosnia dan Herzegovina',
+ 'BB' => 'Barbados',
+ 'BD' => 'Bangladesh',
+ 'BE' => 'Belgia',
+ 'BF' => 'Burkina Faso',
+ 'BG' => 'Bulgaria',
+ 'BH' => 'Bahrain',
+ 'BI' => 'Burundi',
+ 'BJ' => 'Benin',
+ 'BL' => 'Saint Barthelemy',
+ 'BM' => 'Bermuda',
+ 'BN' => 'Brunei',
+ 'BO' => 'Bolivia',
+ 'BQ' => 'Karibia Belanda',
+ 'BR' => 'Brasil',
+ 'BS' => 'Bahama',
+ 'BT' => 'Bhutan',
+ 'BV' => 'Pulau Bouvet',
+ 'BW' => 'Botswana',
+ 'BY' => 'Belarus',
+ 'BZ' => 'Belize',
+ 'CA' => 'Kanada',
+ 'CC' => 'Kepulauan Cocos',
+ 'CD' => 'Kongo - Kinshasa',
+ 'CF' => 'Republik Afrika Tengah',
+ 'CG' => 'Kongo - Brazzaville',
+ 'CH' => 'Swiss',
+ 'CI' => 'Cote d’Ivoire',
+ 'CK' => 'Kepulauan Cook',
+ 'CL' => 'Cile',
+ 'CM' => 'Kamerun',
+ 'CN' => 'China',
+ 'CO' => 'Kolombia',
+ 'CP' => 'Pulau Clipperton',
+ 'CR' => 'Kosta Rika',
+ 'CU' => 'Kuba',
+ 'CV' => 'Tanjung Verde',
+ 'CW' => 'Curaçao',
+ 'CX' => 'Pulau Christmas',
+ 'CY' => 'Siprus',
+ 'CZ' => 'Republik Cheska',
+ 'DE' => 'Jerman',
+ 'DG' => 'Diego Garcia',
+ 'DJ' => 'Jibuti',
+ 'DK' => 'Denmark',
+ 'DM' => 'Dominika',
+ 'DO' => 'Republik Dominika',
+ 'DZ' => 'Aljazair',
+ 'EA' => 'Ceuta dan Melilla',
+ 'EC' => 'Ekuador',
+ 'EE' => 'Estonia',
+ 'EG' => 'Mesir',
+ 'EH' => 'Sahara Barat',
+ 'ER' => 'Eritrea',
+ 'ES' => 'Spanyol',
+ 'ET' => 'Etiopia',
+ 'EU' => 'Uni Eropa',
+ 'FI' => 'Finlandia',
+ 'FJ' => 'Fiji',
+ 'FK' => 'Kepulauan Malvinas',
+ 'FM' => 'Mikronesia',
+ 'FO' => 'Kepulauan Faroe',
+ 'FR' => 'Prancis',
+ 'GA' => 'Gabon',
+ 'GB' => 'GB',
+ 'GD' => 'Grenada',
+ 'GE' => 'Georgia',
+ 'GF' => 'Guyana Prancis',
+ 'GG' => 'Guernsey',
+ 'GH' => 'Ghana',
+ 'GI' => 'Gibraltar',
+ 'GL' => 'Grinlandia',
+ 'GM' => 'Gambia',
+ 'GN' => 'Guinea',
+ 'GP' => 'Guadeloupe',
+ 'GQ' => 'Guinea Ekuatorial',
+ 'GR' => 'Yunani',
+ 'GS' => 'Georgia Selatan dan Kepulauan Sandwich Selatan',
+ 'GT' => 'Guatemala',
+ 'GU' => 'Guam',
+ 'GW' => 'Guinea-Bissau',
+ 'GY' => 'Guyana',
+ 'HK' => 'Hong Kong',
+ 'HM' => 'Pulau Heard dan Kepulauan McDonald',
+ 'HN' => 'Honduras',
+ 'HR' => 'Kroasia',
+ 'HT' => 'Haiti',
+ 'HU' => 'Hungaria',
+ 'IC' => 'Kepulauan Canary',
+ 'ID' => 'Indonesia',
+ 'IE' => 'Irlandia',
+ 'IL' => 'Israel',
+ 'IM' => 'Pulau Man',
+ 'IN' => 'India',
+ 'IO' => 'Wilayah Inggris di Samudra Hindia',
+ 'IQ' => 'Irak',
+ 'IR' => 'Iran',
+ 'IS' => 'Islandia',
+ 'IT' => 'Italia',
+ 'JE' => 'Jersey',
+ 'JM' => 'Jamaika',
+ 'JO' => 'Yordania',
+ 'JP' => 'Jepang',
+ 'KE' => 'Kenya',
+ 'KG' => 'Kirgistan',
+ 'KH' => 'Kamboja',
+ 'KI' => 'Kiribati',
+ 'KM' => 'Komoro',
+ 'KN' => 'Saint Kitts dan Nevis',
+ 'KP' => 'Korea Utara',
+ 'KR' => 'Korea Selatan',
+ 'KW' => 'Kuwait',
+ 'KY' => 'Kepulauan Cayman',
+ 'KZ' => 'Kazakstan',
+ 'LA' => 'Laos',
+ 'LB' => 'Lebanon',
+ 'LC' => 'Saint Lucia',
+ 'LI' => 'Liechtenstein',
+ 'LK' => 'Sri Lanka',
+ 'LR' => 'Liberia',
+ 'LS' => 'Lesotho',
+ 'LT' => 'Lituania',
+ 'LU' => 'Luksemburg',
+ 'LV' => 'Latvia',
+ 'LY' => 'Libia',
+ 'MA' => 'Maroko',
+ 'MC' => 'Monako',
+ 'MD' => 'Moldova',
+ 'ME' => 'Montenegro',
+ 'MF' => 'Saint Martin',
+ 'MG' => 'Madagaskar',
+ 'MH' => 'Kepulauan Marshall',
+ 'MK' => 'Makedonia',
+ 'ML' => 'Mali',
+ 'MM' => 'Myanmar (Burma)',
+ 'MN' => 'Mongolia',
+ 'MO' => 'Makau',
+ 'MP' => 'Kepulauan Mariana Utara',
+ 'MQ' => 'Martinik',
+ 'MR' => 'Mauritania',
+ 'MS' => 'Montserrat',
+ 'MT' => 'Malta',
+ 'MU' => 'Mauritius',
+ 'MV' => 'Maladewa',
+ 'MW' => 'Malawi',
+ 'MX' => 'Meksiko',
+ 'MY' => 'Malaysia',
+ 'MZ' => 'Mozambik',
+ 'NA' => 'Namibia',
+ 'NC' => 'Kaledonia Baru',
+ 'NE' => 'Niger',
+ 'NF' => 'Kepulauan Norfolk',
+ 'NG' => 'Nigeria',
+ 'NI' => 'Nikaragua',
+ 'NL' => 'Belanda',
+ 'NO' => 'Norwegia',
+ 'NP' => 'Nepal',
+ 'NR' => 'Nauru',
+ 'NU' => 'Niue',
+ 'NZ' => 'Selandia Baru',
+ 'OM' => 'Oman',
+ 'PA' => 'Panama',
+ 'PE' => 'Peru',
+ 'PF' => 'Polinesia Prancis',
+ 'PG' => 'Papua Nugini',
+ 'PH' => 'Filipina',
+ 'PK' => 'Pakistan',
+ 'PL' => 'Polandia',
+ 'PM' => 'Saint Pierre dan Miquelon',
+ 'PN' => 'Kepulauan Pitcairn',
+ 'PR' => 'Puerto Riko',
+ 'PS' => 'Palestina',
+ 'PT' => 'Portugal',
+ 'PW' => 'Palau',
+ 'PY' => 'Paraguay',
+ 'QA' => 'Qatar',
+ 'QO' => 'Oseania Luar',
+ 'RE' => 'Réunion',
+ 'RO' => 'Rumania',
+ 'RS' => 'Serbia',
+ 'RU' => 'Rusia',
+ 'RW' => 'Rwanda',
+ 'SA' => 'Arab Saudi',
+ 'SB' => 'Kepulauan Solomon',
+ 'SC' => 'Seychelles',
+ 'SD' => 'Sudan',
+ 'SE' => 'Swedia',
+ 'SG' => 'Singapura',
+ 'SH' => 'Saint Helena',
+ 'SI' => 'Slovenia',
+ 'SJ' => 'Kepulauan Svalbard dan Jan Mayen',
+ 'SK' => 'Slovakia',
+ 'SL' => 'Sierra Leone',
+ 'SM' => 'San Marino',
+ 'SN' => 'Senegal',
+ 'SO' => 'Somalia',
+ 'SR' => 'Suriname',
+ 'SS' => 'Sudan Selatan',
+ 'ST' => 'Sao Tome dan Principe',
+ 'SV' => 'El Salvador',
+ 'SX' => 'Sint Maarten',
+ 'SY' => 'Suriah',
+ 'SZ' => 'Swaziland',
+ 'TA' => 'Tristan da Cunha',
+ 'TC' => 'Kepulauan Turks dan Caicos',
+ 'TD' => 'Cad',
+ 'TF' => 'Wilayah Kutub Selatan Prancis',
+ 'TG' => 'Togo',
+ 'TH' => 'Thailand',
+ 'TJ' => 'Tajikistan',
+ 'TK' => 'Tokelau',
+ 'TL' => 'Timor Leste',
+ 'TM' => 'Turkimenistan',
+ 'TN' => 'Tunisia',
+ 'TO' => 'Tonga',
+ 'TR' => 'Turki',
+ 'TT' => 'Trinidad dan Tobago',
+ 'TV' => 'Tuvalu',
+ 'TW' => 'Taiwan',
+ 'TZ' => 'Tanzania',
+ 'UA' => 'Ukraina',
+ 'UG' => 'Uganda',
+ 'UM' => 'Kepulauan Terluar A.S.',
+ 'US' => 'A.S.',
+ 'UY' => 'Uruguay',
+ 'UZ' => 'Uzbekistan',
+ 'VA' => 'Vatikan',
+ 'VC' => 'Saint Vincent dan Grenadines',
+ 'VE' => 'Venezuela',
+ 'VG' => 'Kepulauan Virgin Inggris',
+ 'VI' => 'Kepulauan Virgin A.S.',
+ 'VN' => 'Vietnam',
+ 'VU' => 'Vanuatu',
+ 'WF' => 'Kepulauan Wallis dan Futuna',
+ 'WS' => 'Samoa',
+ 'XK' => 'Kosovo',
+ 'YE' => 'Yaman',
+ 'YT' => 'Mayotte',
+ 'ZA' => 'Afrika Selatan',
+ 'ZM' => 'Zambia',
+ 'ZW' => 'Zimbabwe',
+);
+
+$timeUnits = array(
+ 'day-future-other' => 'Dalam {0} hari',
+ 'day-narrow-future-other' => 'Dalam {0} hari',
+ 'day-narrow-past-other' => '{0} hari yang lalu',
+ 'day-other' => '{0} hari',
+ 'day-past-other' => '{0} hari yang lalu',
+ 'day-short-future-other' => 'Dalam {0} hari',
+ 'day-short-past-other' => '{0} hari yang lalu',
+ 'hour-future-other' => 'Dalam {0} jam',
+ 'hour-narrow-future-other' => '+{0} jam',
+ 'hour-narrow-past-other' => '-{0} jam',
+ 'hour-other' => '{0} jam',
+ 'hour-past-other' => '{0} jam yang lalu',
+ 'hour-short-future-other' => 'dlm {0} jam',
+ 'hour-short-past-other' => '{0} jam yg lalu',
+ 'microsecond-other' => '{0} mikrodetik',
+ 'millisecond-other' => '{0} milidetik',
+ 'minute-future-other' => 'Dalam {0} menit',
+ 'minute-narrow-future-other' => '+{0} mnt',
+ 'minute-narrow-past-other' => '-{0} mnt',
+ 'minute-other' => '{0} menit',
+ 'minute-past-other' => '{0} menit yang lalu',
+ 'minute-short-future-other' => 'dlm {0} mnt',
+ 'minute-short-past-other' => '{0} mnt yg lalu',
+ 'month-future-other' => 'Dalam {0} bulan',
+ 'month-narrow-future-other' => '+{0} bln.',
+ 'month-narrow-past-other' => '-{0} bln.',
+ 'month-other' => '{0} bulan',
+ 'month-past-other' => '{0} bulan yang lalu',
+ 'month-short-future-other' => 'Dalam {0} bulan',
+ 'month-short-past-other' => '{0} bulan yang lalu',
+ 'nanosecond-other' => '{0} nanodetik',
+ 'quarter-future-other' => 'dalam {0} triwulan',
+ 'quarter-narrow-future-other' => '+{0} triwln.',
+ 'quarter-narrow-past-other' => '-{0} triwln.',
+ 'quarter-past-other' => '{0} triwulan yang lalu',
+ 'quarter-short-future-other' => 'dalam {0} triwulan',
+ 'quarter-short-past-other' => '{0} triwulan yang lalu',
+ 'second-future-other' => 'Dalam {0} detik',
+ 'second-narrow-future-other' => '+{0} dtk',
+ 'second-narrow-past-other' => '-{0} d yg lalu',
+ 'second-other' => '{0} detik',
+ 'second-past-other' => '{0} detik yang lalu',
+ 'second-short-future-other' => 'dlm {0} dtk',
+ 'second-short-past-other' => '{0} dtk yg lalu',
+ 'week-future-other' => 'Dalam {0} minggu',
+ 'week-narrow-future-other' => '+{0} mgg.',
+ 'week-narrow-past-other' => '-{0} mgg.',
+ 'week-other' => '{0} minggu',
+ 'week-past-other' => '{0} minggu yang lalu',
+ 'week-short-future-other' => 'Dalam {0} minggu',
+ 'week-short-past-other' => '{0} minggu yang lalu',
+ 'year-future-other' => 'Dalam {0} tahun',
+ 'year-narrow-future-other' => '+{0} thn.',
+ 'year-narrow-past-other' => '-{0} thn.',
+ 'year-other' => '{0} tahun',
+ 'year-past-other' => '{0} tahun yang lalu',
+ 'year-short-future-other' => 'Dalam {0} tahun',
+ 'year-short-past-other' => '{0} tahun yang lalu',
+);
diff --git a/MLEB/cldr/CldrNames/CldrNamesIg.php b/MLEB/cldr/CldrNames/CldrNamesIg.php
new file mode 100644
index 00000000..522f008c
--- /dev/null
+++ b/MLEB/cldr/CldrNames/CldrNamesIg.php
@@ -0,0 +1,68 @@
+<?php
+
+$languageNames = array(
+ 'ak' => 'Akan',
+ 'am' => 'Amariikị',
+ 'ar' => 'Arabiikị',
+ 'be' => 'Belaruusu',
+ 'bg' => 'Bọlụgarịa',
+ 'bn' => 'Bengali',
+ 'cs' => 'Cheekị',
+ 'de' => 'Jamaan',
+ 'el' => 'Giriikị',
+ 'en' => 'Oyibo',
+ 'es' => 'Panya',
+ 'fa' => 'Peshan',
+ 'fr' => 'Fụrench',
+ 'ha' => 'Awụsa',
+ 'hi' => 'Hindi',
+ 'hu' => 'Magịya',
+ 'id' => 'Indonisia',
+ 'ig' => 'Igbo',
+ 'it' => 'Italo',
+ 'ja' => 'Japanese',
+ 'jv' => 'Java',
+ 'km' => 'Keme, Etiti',
+ 'ko' => 'Koria',
+ 'ms' => 'Maleyi',
+ 'my' => 'Mịanma',
+ 'ne' => 'Nepali',
+ 'nl' => 'Dọọch',
+ 'pa' => 'Punjabi',
+ 'pl' => 'Poliishi',
+ 'pt' => 'Potoki',
+ 'ro' => 'Rumenia',
+ 'ru' => 'Rọshan',
+ 'rw' => 'Rụwanda',
+ 'so' => 'Somali',
+ 'sv' => 'Sụwidiishi',
+ 'ta' => 'Tamụlụ',
+ 'th' => 'Taị',
+ 'tr' => 'Tọkiishi',
+ 'uk' => 'Ukureenị',
+ 'ur' => 'Urudu',
+ 'vi' => 'Viyetịnaamụ',
+ 'yo' => 'Yoruba',
+ 'zh' => 'Mandarịịnị',
+ 'zu' => 'Zulu',
+);
+
+$currencyNames = array(
+ 'CVE' => 'Escudo Caboverdiano',
+ 'NGN' => 'Naịra',
+);
+
+$currencySymbols = array(
+ 'NGN' => '₦',
+);
+
+$countryNames = array(
+ 'BJ' => 'Binin',
+ 'BM' => 'Bemuda',
+ 'CN' => 'Chaina',
+ 'HT' => 'Hati',
+ 'KM' => 'Comorosu',
+ 'LY' => 'Libyia',
+ 'MV' => 'Maldivesa',
+ 'NG' => 'Nigeria',
+);
diff --git a/MLEB/cldr/CldrNames/CldrNamesIi.php b/MLEB/cldr/CldrNames/CldrNamesIi.php
new file mode 100644
index 00000000..39ba00c8
--- /dev/null
+++ b/MLEB/cldr/CldrNames/CldrNamesIi.php
@@ -0,0 +1,35 @@
+<?php
+
+$languageNames = array(
+ 'de' => 'ꄓꇩꉙ',
+ 'en' => 'ꑱꇩꉙ',
+ 'es' => 'ꑭꀠꑸꉙ',
+ 'fr' => 'ꃔꇩꉙ',
+ 'ii' => 'ꆈꌠꉙ',
+ 'it' => 'ꑴꄊꆺꉙ',
+ 'ja' => 'ꏝꀪꉙ',
+ 'pt' => 'ꁍꄨꑸꉙ',
+ 'pt-br' => 'ꀠꑟꁍꄨꑸꉙ',
+ 'ru' => 'ꊉꇩꉙ',
+ 'und' => 'ꅉꀋꌠꅇꂷ',
+ 'zh' => 'ꍏꇩꉙ',
+ 'zh-hans' => 'ꈝꐯꍏꇩꉙ',
+ 'zh-hant' => 'ꀎꋏꍏꇩꉙ',
+);
+
+$currencyNames = array(
+ 'XXX' => 'ꅉꀋꐚꌠꌋꆀꎆꃀꀋꈁꀐꌠ',
+);
+
+$countryNames = array(
+ 'BR' => 'ꀠꑭ',
+ 'CN' => 'ꍏꇩ',
+ 'DE' => 'ꄓꇩ',
+ 'FR' => 'ꃔꇩ',
+ 'GB' => 'ꑱꇩ',
+ 'IN' => 'ꑴꄗ',
+ 'IT' => 'ꑴꄊꆺ',
+ 'JP' => 'ꏝꀪ',
+ 'RU' => 'ꊉꇆꌦ',
+ 'US' => 'ꂰꇩ',
+);
diff --git a/MLEB/cldr/CldrNames/CldrNamesIs.php b/MLEB/cldr/CldrNames/CldrNamesIs.php
new file mode 100644
index 00000000..5fa797e5
--- /dev/null
+++ b/MLEB/cldr/CldrNames/CldrNamesIs.php
@@ -0,0 +1,1269 @@
+<?php
+
+$languageNames = array(
+ 'aa' => 'afár',
+ 'ab' => 'abkasíska',
+ 'ace' => 'akkíska',
+ 'ach' => 'acoli',
+ 'ada' => 'adangme',
+ 'ady' => 'adýge',
+ 'ae' => 'avestíska',
+ 'af' => 'afríkanska',
+ 'afh' => 'afríhílí',
+ 'agq' => 'aghem',
+ 'ain' => 'aínu (Japan)',
+ 'ak' => 'akan',
+ 'akk' => 'akkadíska',
+ 'ale' => 'aleúska',
+ 'alt' => 'suðuraltaíska',
+ 'am' => 'amharíska',
+ 'an' => 'aragonska',
+ 'ang' => 'fornenska',
+ 'anp' => 'angíka',
+ 'ar' => 'arabíska',
+ 'ar-001' => 'stöðluð nútímaarabíska',
+ 'arc' => 'arameíska',
+ 'arn' => 'arákaníska',
+ 'arp' => 'arapahó',
+ 'arw' => 'aravakska',
+ 'as' => 'assamska',
+ 'asa' => 'asu',
+ 'ast' => 'astúríska',
+ 'av' => 'avaríska',
+ 'awa' => 'avadí',
+ 'ay' => 'aímara',
+ 'az' => 'aserska',
+ 'ba' => 'baskír',
+ 'bal' => 'balúkí',
+ 'ban' => 'balíska',
+ 'bas' => 'basa',
+ 'bax' => 'bamun',
+ 'be' => 'hvítrússneska',
+ 'bej' => 'beja',
+ 'bem' => 'bemba',
+ 'bez' => 'bena',
+ 'bg' => 'búlgarska',
+ 'bho' => 'bojpúrí',
+ 'bi' => 'bíslama',
+ 'bik' => 'bíkol',
+ 'bin' => 'bíní',
+ 'bla' => 'siksika',
+ 'bm' => 'bambara',
+ 'bn' => 'bengalska',
+ 'bo' => 'tíbeska',
+ 'br' => 'bretónska',
+ 'bra' => 'braí',
+ 'brx' => 'bódó',
+ 'bs' => 'bosníska',
+ 'bss' => 'bakossi',
+ 'bua' => 'búríat',
+ 'bug' => 'búgíska',
+ 'byn' => 'blín',
+ 'ca' => 'katalónska',
+ 'cad' => 'kaddó',
+ 'car' => 'karíbamál',
+ 'cay' => 'kajúga',
+ 'cch' => 'atsam',
+ 'ce' => 'tsjetsjenska',
+ 'ceb' => 'kebúanó',
+ 'cgg' => 'kíga',
+ 'ch' => 'kamorró',
+ 'chb' => 'síbsja',
+ 'chg' => 'sjagataí',
+ 'chk' => 'sjúkíska',
+ 'chm' => 'marí',
+ 'chn' => 'sínúk',
+ 'cho' => 'sjoktá',
+ 'chp' => 'sípevíska',
+ 'chr' => 'Cherokee-mál',
+ 'chy' => 'sjeyen',
+ 'ckb' => 'sorani-kúrdíska',
+ 'co' => 'korsíska',
+ 'cop' => 'koptíska',
+ 'cr' => 'krí',
+ 'crh' => 'krímtyrkneska',
+ 'cs' => 'tékkneska',
+ 'csb' => 'kasúbíska',
+ 'cu' => 'kirkjuslavneska',
+ 'cv' => 'sjúvas',
+ 'cy' => 'velska',
+ 'da' => 'danska',
+ 'dak' => 'dakóta',
+ 'dar' => 'dargva',
+ 'dav' => 'taíta',
+ 'de' => 'þýska',
+ 'de-at' => 'austurrísk þýska',
+ 'de-ch' => 'svissnesk háþýska',
+ 'del' => 'delaver',
+ 'den' => 'slavneska',
+ 'dgr' => 'dogríb',
+ 'din' => 'dinka',
+ 'dje' => 'zarma',
+ 'doi' => 'dogrí',
+ 'dsb' => 'lágsorbneska',
+ 'dua' => 'dúala',
+ 'dum' => 'miðhollenska',
+ 'dv' => 'dívehí',
+ 'dyo' => 'jola-fonyi',
+ 'dyu' => 'djúla',
+ 'dz' => 'dsongka',
+ 'ebu' => 'embu',
+ 'ee' => 'ewe',
+ 'efi' => 'efík',
+ 'egy' => 'fornegypska',
+ 'eka' => 'ekajúk',
+ 'el' => 'gríska',
+ 'elx' => 'elamít',
+ 'en' => 'enska',
+ 'en-au' => 'áströlsk enska',
+ 'en-ca' => 'kanadísk enska',
+ 'en-gb' => 'bresk enska',
+ 'en-us' => 'bandarísk enska',
+ 'enm' => 'miðenska',
+ 'eo' => 'esperantó',
+ 'es' => 'spænska',
+ 'es-419' => 'rómanskamerísk spænska',
+ 'es-es' => 'evrópsk spænska',
+ 'es-mx' => 'mexíkósk spænska',
+ 'et' => 'eistneska',
+ 'eu' => 'baskneska',
+ 'ewo' => 'evondó',
+ 'fa' => 'persneska',
+ 'fan' => 'fang',
+ 'fat' => 'fantí',
+ 'ff' => 'fúla',
+ 'fi' => 'finnska',
+ 'fil' => 'filippseyska',
+ 'fj' => 'fídjeyska',
+ 'fo' => 'færeyska',
+ 'fon' => 'fón',
+ 'fr' => 'franska',
+ 'fr-ca' => 'kanadísk franska',
+ 'fr-ch' => 'svissnesk franska',
+ 'frm' => 'miðfranska',
+ 'fro' => 'fornfranska',
+ 'frr' => 'norðurfrísneska',
+ 'frs' => 'austurfrísneska',
+ 'fur' => 'fríúlska',
+ 'fy' => 'vesturfrísneska',
+ 'ga' => 'írska',
+ 'gaa' => 'ga',
+ 'gag' => 'gagás',
+ 'gay' => 'gajó',
+ 'gba' => 'gbaja',
+ 'gd' => 'skosk gelíska',
+ 'gez' => 'gís',
+ 'gil' => 'gilberska',
+ 'gl' => 'galíanska',
+ 'gmh' => 'miðháþýska',
+ 'gn' => 'gvaraní',
+ 'goh' => 'fornháþýska',
+ 'gon' => 'gondí',
+ 'gor' => 'gorontaló',
+ 'got' => 'gotneska',
+ 'grb' => 'gerbó',
+ 'grc' => 'forngríska',
+ 'gsw' => 'svissnesk þýska',
+ 'gu' => 'gújaratí',
+ 'guz' => 'gusii',
+ 'gv' => 'manska',
+ 'gwi' => 'gvísín',
+ 'ha' => 'hása',
+ 'hai' => 'haída',
+ 'haw' => 'havaíska',
+ 'he' => 'hebreska',
+ 'hi' => 'hindí',
+ 'hil' => 'híligaínon',
+ 'hit' => 'hettitíska',
+ 'hmn' => 'hmong',
+ 'ho' => 'hírímótú',
+ 'hr' => 'króatíska',
+ 'hsb' => 'hásorbneska',
+ 'ht' => 'haítíska',
+ 'hu' => 'ungverska',
+ 'hup' => 'húpa',
+ 'hy' => 'armenska',
+ 'hz' => 'hereró',
+ 'ia' => 'alþjóðatunga',
+ 'iba' => 'íban',
+ 'ibb' => 'ibibio',
+ 'id' => 'indónesíska',
+ 'ie' => 'interlingve',
+ 'ig' => 'ígbó',
+ 'ii' => 'sísúanjí',
+ 'ik' => 'ínúpíak',
+ 'ilo' => 'ílokó',
+ 'inh' => 'ingús',
+ 'io' => 'ídó',
+ 'is' => 'íslenska',
+ 'it' => 'ítalska',
+ 'iu' => 'inúktitút',
+ 'ja' => 'japanska',
+ 'jbo' => 'lojban',
+ 'jgo' => 'ngomba',
+ 'jmc' => 'masjáme',
+ 'jpr' => 'gyðingapersneska',
+ 'jrb' => 'gyðingaarabíska',
+ 'jv' => 'javanska',
+ 'ka' => 'georgíska',
+ 'kaa' => 'karakalpak',
+ 'kab' => 'kabíle',
+ 'kac' => 'kasín',
+ 'kaj' => 'jju',
+ 'kam' => 'kamba',
+ 'kaw' => 'kaví',
+ 'kbd' => 'kabardíska',
+ 'kcg' => 'tyap',
+ 'kde' => 'makonde',
+ 'kea' => 'grænhöfðeyska',
+ 'kfo' => 'koro',
+ 'kg' => 'kongóska',
+ 'kha' => 'kasí',
+ 'kho' => 'kotaska',
+ 'khq' => 'koyra chiini',
+ 'ki' => 'kíkújú',
+ 'kj' => 'kúanjama',
+ 'kk' => 'kasakska',
+ 'kkj' => 'kako',
+ 'kl' => 'grænlenska',
+ 'kln' => 'kalenjin',
+ 'km' => 'kmer',
+ 'kmb' => 'kimbúndú',
+ 'kn' => 'kannada',
+ 'ko' => 'kóreska',
+ 'koi' => 'kómí-permyak',
+ 'kok' => 'konkaní',
+ 'kos' => 'kosraska',
+ 'kpe' => 'kpelle',
+ 'kr' => 'kanúrí',
+ 'krc' => 'karasaíbalkar',
+ 'krl' => 'karélska',
+ 'kru' => 'kúrúk',
+ 'ks' => 'kasmírska',
+ 'ksb' => 'sjambala',
+ 'ksf' => 'bafía',
+ 'ksh' => 'kölníska',
+ 'ku' => 'kúrdíska',
+ 'kum' => 'kúmík',
+ 'kut' => 'kútenaí',
+ 'kv' => 'komíska',
+ 'kw' => 'kornbreska',
+ 'ky' => 'kirgiska',
+ 'la' => 'latína',
+ 'lad' => 'ladínska',
+ 'lag' => 'langí',
+ 'lah' => 'landa',
+ 'lam' => 'lamba',
+ 'lb' => 'lúxemborgíska',
+ 'lez' => 'lesgíska',
+ 'lg' => 'ganda',
+ 'li' => 'limbúrgíska',
+ 'lkt' => 'lakóta',
+ 'ln' => 'lingala',
+ 'lo' => 'laó',
+ 'lol' => 'mongó',
+ 'loz' => 'lozi',
+ 'lt' => 'litháíska',
+ 'lu' => 'lúbakatanga',
+ 'lua' => 'luba-lulua',
+ 'lui' => 'lúisenó',
+ 'lun' => 'lúnda',
+ 'luo' => 'lúó',
+ 'lus' => 'lúsaí',
+ 'luy' => 'luyia',
+ 'lv' => 'lettneska',
+ 'mad' => 'madúrska',
+ 'mag' => 'magahí',
+ 'mai' => 'maítílí',
+ 'mak' => 'makasar',
+ 'man' => 'mandingó',
+ 'mas' => 'masaí',
+ 'mdf' => 'moksa',
+ 'mdr' => 'mandar',
+ 'men' => 'mende',
+ 'mer' => 'merú',
+ 'mfe' => 'máritíska',
+ 'mg' => 'malagasíska',
+ 'mga' => 'miðírska',
+ 'mgh' => 'makhuwa-meetto',
+ 'mgo' => 'meta’',
+ 'mh' => 'marshallska',
+ 'mi' => 'maorí',
+ 'mic' => 'mikmak',
+ 'min' => 'mínangkabá',
+ 'mk' => 'makedónska',
+ 'ml' => 'malajalam',
+ 'mn' => 'mongólska',
+ 'mnc' => 'mansjú',
+ 'mni' => 'manípúrí',
+ 'moh' => 'móhíska',
+ 'mos' => 'mossí',
+ 'mr' => 'maratí',
+ 'ms' => 'malaíska',
+ 'mt' => 'maltneska',
+ 'mua' => 'mundang',
+ 'mul' => 'margvísleg mál',
+ 'mus' => 'krík',
+ 'mwl' => 'mirandesíska',
+ 'mwr' => 'marvarí',
+ 'my' => 'burmneska',
+ 'myv' => 'ersja',
+ 'na' => 'nárúska',
+ 'nap' => 'napólíska',
+ 'naq' => 'nama',
+ 'nb' => 'norskt bókmál',
+ 'nd' => 'norður-ndebele',
+ 'nds' => 'lágþýska; lágsaxneska',
+ 'ne' => 'nepalska',
+ 'new' => 'nevarí',
+ 'ng' => 'ndonga',
+ 'nia' => 'nías',
+ 'niu' => 'níveska',
+ 'nl' => 'hollenska',
+ 'nl-be' => 'flæmska',
+ 'nmg' => 'kwasio',
+ 'nn' => 'nýnorska',
+ 'no' => 'norska',
+ 'nog' => 'nógaí',
+ 'non' => 'norræna',
+ 'nqo' => 'n’ko',
+ 'nr' => 'suðurndebele',
+ 'nso' => 'norðursótó',
+ 'nus' => 'núer',
+ 'nv' => 'navahó',
+ 'nwc' => 'klassísk nevaríska',
+ 'ny' => 'njanja; sísjeva; sjeva',
+ 'nym' => 'njamvesí',
+ 'nyn' => 'nyankole',
+ 'nyo' => 'njóró',
+ 'nzi' => 'nsíma',
+ 'oc' => 'oksítaníska',
+ 'oj' => 'ojibva',
+ 'om' => 'oromo',
+ 'or' => 'óría',
+ 'os' => 'ossetíska',
+ 'osa' => 'ósage',
+ 'ota' => 'tyrkneska, ottóman',
+ 'pa' => 'púnjabí',
+ 'pag' => 'pangasínmál',
+ 'pal' => 'palaví',
+ 'pam' => 'pampanga',
+ 'pap' => 'papíamentó',
+ 'pau' => 'paláska',
+ 'peo' => 'fornpersneska',
+ 'phn' => 'fönikíska',
+ 'pi' => 'palí',
+ 'pl' => 'pólska',
+ 'pon' => 'ponpeiska',
+ 'pro' => 'fornpróvensalska',
+ 'ps' => 'pastú',
+ 'pt' => 'portúgalska',
+ 'pt-br' => 'brasílísk portúgalska',
+ 'pt-pt' => 'evrópsk portúgalska',
+ 'qu' => 'kvesjúa',
+ 'quc' => 'kiche',
+ 'raj' => 'rajastaní',
+ 'rap' => 'rapanúí',
+ 'rar' => 'rarótongska',
+ 'rm' => 'rómanska',
+ 'rn' => 'rúndí',
+ 'ro' => 'rúmenska',
+ 'ro-md' => 'moldóvska',
+ 'rof' => 'rombó',
+ 'rom' => 'romaní',
+ 'ru' => 'rússneska',
+ 'rup' => 'arúmenska',
+ 'rw' => 'kínjarvanda',
+ 'rwk' => 'rúa',
+ 'sa' => 'sanskrít',
+ 'sad' => 'sandave',
+ 'sah' => 'jakút',
+ 'sam' => 'samversk arameíska',
+ 'saq' => 'sambúrú',
+ 'sas' => 'sasak',
+ 'sat' => 'santalí',
+ 'sbp' => 'sangú',
+ 'sc' => 'sardínska',
+ 'scn' => 'sikileyska',
+ 'sco' => 'skoska',
+ 'sd' => 'sindí',
+ 'se' => 'norðursamíska',
+ 'seh' => 'sena',
+ 'sel' => 'selkúp',
+ 'ses' => 'koíraboró-senní',
+ 'sg' => 'sangó',
+ 'sga' => 'fornírska',
+ 'sh' => 'serbókróatíska',
+ 'shi' => 'tachelhit',
+ 'shn' => 'sjan',
+ 'si' => 'singalíska',
+ 'sid' => 'sídamó',
+ 'sk' => 'slóvakíska',
+ 'sl' => 'slóvenska',
+ 'sm' => 'samóska',
+ 'sma' => 'suðursamíska',
+ 'smj' => 'lúlesamíska',
+ 'smn' => 'enaresamíska',
+ 'sms' => 'skoltesamíska',
+ 'sn' => 'shona',
+ 'snk' => 'sóninke',
+ 'so' => 'sómalska',
+ 'sog' => 'sogdíen',
+ 'sq' => 'albanska',
+ 'sr' => 'serbneska',
+ 'srn' => 'sranan tongo',
+ 'srr' => 'serer',
+ 'ss' => 'svatí',
+ 'ssy' => 'saho',
+ 'st' => 'suðursótó',
+ 'su' => 'súndanska',
+ 'suk' => 'súkúma',
+ 'sus' => 'súsú',
+ 'sux' => 'súmerska',
+ 'sv' => 'sænska',
+ 'sw' => 'svahílí',
+ 'swb' => 'shimaoríska',
+ 'swc' => 'Kongó-svahílí',
+ 'syc' => 'klassísk sýrlenska',
+ 'syr' => 'sýrlenska',
+ 'ta' => 'tamílska',
+ 'te' => 'telúgú',
+ 'tem' => 'tímne',
+ 'teo' => 'tesó',
+ 'ter' => 'terenó',
+ 'tet' => 'tetúm',
+ 'tg' => 'tadsjikska',
+ 'th' => 'taílenska',
+ 'ti' => 'tígrinja',
+ 'tig' => 'tígre',
+ 'tiv' => 'tív',
+ 'tk' => 'túrkmenska',
+ 'tkl' => 'tókeláska',
+ 'tl' => 'tagalog',
+ 'tlh' => 'klingonska',
+ 'tli' => 'tlingit',
+ 'tmh' => 'tamasjek',
+ 'tn' => 'tsúana',
+ 'to' => 'tongverska',
+ 'tog' => 'tongverska (nyasa)',
+ 'tpi' => 'tokpisin',
+ 'tr' => 'tyrkneska',
+ 'ts' => 'tsonga',
+ 'tsi' => 'tsimsíska',
+ 'tt' => 'tatarska',
+ 'tum' => 'túmbúka',
+ 'tvl' => 'túvalúska',
+ 'tw' => 'tví',
+ 'twq' => 'tasawaq',
+ 'ty' => 'tahítíska',
+ 'tyv' => 'túvínska',
+ 'tzm' => 'tamazight',
+ 'udm' => 'údmúrt',
+ 'ug' => 'úígúr',
+ 'uga' => 'úgarítíska',
+ 'uk' => 'úkraínska',
+ 'umb' => 'úmbúndú',
+ 'und' => 'óþekkt tungumál',
+ 'ur' => 'úrdú',
+ 'uz' => 'úsbekska',
+ 'vai' => 'vaí',
+ 've' => 'venda',
+ 'vi' => 'víetnamska',
+ 'vo' => 'volapyk',
+ 'vot' => 'votíska',
+ 'vun' => 'vunjó',
+ 'wa' => 'vallónska',
+ 'wal' => 'valamó',
+ 'war' => 'varaí',
+ 'was' => 'vasjó',
+ 'wo' => 'volof',
+ 'xal' => 'kalmúkska',
+ 'xh' => 'sósa',
+ 'xog' => 'sóga',
+ 'yao' => 'jaó',
+ 'yap' => 'japíska',
+ 'yi' => 'jiddíska',
+ 'yo' => 'jórúba',
+ 'yue' => 'kantoneska',
+ 'za' => 'súang',
+ 'zap' => 'sapótek',
+ 'zbl' => 'blisstákn',
+ 'zen' => 'senaga',
+ 'zgh' => 'staðlað marokkóskt tamazight',
+ 'zh' => 'kínverska',
+ 'zh-hans' => 'kínverska (einfölduð)',
+ 'zh-hant' => 'kínverska (hefðbundin)',
+ 'zu' => 'súlú',
+ 'zun' => 'súní',
+ 'zxx' => 'ekkert tungumálaefni',
+ 'zza' => 'zázáíska',
+);
+
+$currencyNames = array(
+ 'ADP' => 'Andorrskur peseti',
+ 'AED' => 'Arabískt dírham',
+ 'AFN' => 'Afgani',
+ 'ALL' => 'Albanskt lek',
+ 'AMD' => 'Armenskt dramm',
+ 'ANG' => 'Hollenskt Antillugyllini',
+ 'AOA' => 'Angólsk kvansa',
+ 'ARA' => 'Argentine Austral',
+ 'ARP' => 'Argentískur pesi (1983–1985)',
+ 'ARS' => 'Argentínskur pesi',
+ 'ATS' => 'Austurrískur skildingur',
+ 'AUD' => 'Ástralskur dalur',
+ 'AWG' => 'Arúbönsk flórína',
+ 'AZN' => 'Aserskt manat',
+ 'BAM' => 'Skiptanlegt Bosníu og Hersegóvínu-mark',
+ 'BBD' => 'Barbadoskur dalur',
+ 'BDT' => 'Bangladessk taka',
+ 'BEF' => 'Belgískur franki',
+ 'BGL' => 'Lef',
+ 'BGN' => 'Búlgarskt lef',
+ 'BHD' => 'Bareinskur denari',
+ 'BIF' => 'Búrúndískur franki',
+ 'BMD' => 'Bermúdadalur',
+ 'BND' => 'Brúneiskur dalur',
+ 'BOB' => 'Bólivíani',
+ 'BOP' => 'Bólivískur pesi',
+ 'BOV' => 'Bolivian Mvdol',
+ 'BRL' => 'Brasilískt ríal',
+ 'BSD' => 'Bahamadalur',
+ 'BTN' => 'Bútanskt núltrum',
+ 'BUK' => 'Búrmverskt kjat',
+ 'BWP' => 'Botsvönsk púla',
+ 'BYR' => 'Hvítrússnesk rúbla',
+ 'BZD' => 'Belískur dalur',
+ 'CAD' => 'Kanadískur dalur',
+ 'CDF' => 'Kongóskur franki',
+ 'CHF' => 'Svissneskur franki',
+ 'CLF' => 'Chilean Unidades de Fomento',
+ 'CLP' => 'Síleskur pesi',
+ 'CNY' => 'Kínverskt júan',
+ 'COP' => 'Kólumbískur pesi',
+ 'CRC' => 'Kostarískt kólon',
+ 'CSK' => 'Tékknesk króna, eldri',
+ 'CUC' => 'Kúbverskur skiptanlegur pesi',
+ 'CUP' => 'Kúbverskur pesi',
+ 'CVE' => 'Grænhöfðeyskur skúti',
+ 'CYP' => 'Kýpverskt pund',
+ 'CZK' => 'Tékknesk króna',
+ 'DDM' => 'Austurþýskt mark',
+ 'DEM' => 'Þýskt mark',
+ 'DJF' => 'Djíbútískur franki',
+ 'DKK' => 'Dönsk króna',
+ 'DOP' => 'Dóminískur pesi',
+ 'DZD' => 'Alsírskur denari',
+ 'ECS' => 'Ecuador Sucre',
+ 'EEK' => 'Eistnesk króna',
+ 'EGP' => 'Egypskt pund',
+ 'ERN' => 'Erítresk nakfa',
+ 'ESP' => 'Spænskur peseti',
+ 'ETB' => 'Eþíópískt birr',
+ 'EUR' => 'Evra',
+ 'FIM' => 'Finnskt mark',
+ 'FJD' => 'Fídjeyskur dalur',
+ 'FKP' => 'Falklenskt pund',
+ 'FRF' => 'Franskur franki',
+ 'GBP' => 'Sterlingspund',
+ 'GEL' => 'Georgískur lari',
+ 'GHS' => 'Ganverskur sedi',
+ 'GIP' => 'Gíbraltarspund',
+ 'GMD' => 'Gambískur dalasi',
+ 'GNF' => 'Gíneufranki',
+ 'GRD' => 'Drakma',
+ 'GTQ' => 'Gvatemalskt kvesal',
+ 'GWE' => 'Portúgalskur, gíneskur skúti',
+ 'GYD' => 'Gvæjanskur dalur',
+ 'HKD' => 'Hong Kong-dalur',
+ 'HNL' => 'Hondúrsk lempíra',
+ 'HRK' => 'Króatísk kúna',
+ 'HTG' => 'Haítískur gúrdi',
+ 'HUF' => 'Ungversk fórinta',
+ 'IDR' => 'Indónesísk rúpía',
+ 'IEP' => 'Írskt pund',
+ 'ILP' => 'Ísraelskt pund',
+ 'ILS' => 'Nýr ísraelskur sikill',
+ 'INR' => 'Indversk rúpía',
+ 'IQD' => 'Írakskur denari',
+ 'IRR' => 'Íranskt ríal',
+ 'ISK' => 'Íslensk króna',
+ 'ITL' => 'Ítölsk líra',
+ 'JMD' => 'Jamaískur dalur',
+ 'JOD' => 'Jórdanskur denari',
+ 'JPY' => 'Japanskt jen',
+ 'KES' => 'Kenískur skildingur',
+ 'KGS' => 'Kirgiskt som',
+ 'KHR' => 'Kambódískt ríal',
+ 'KMF' => 'Kómoreyskur franki',
+ 'KPW' => 'Norðurkóreskt vonn',
+ 'KRW' => 'Suðurkóreskt vonn',
+ 'KWD' => 'Kúveiskur denari',
+ 'KYD' => 'Caymaneyskur dalur',
+ 'KZT' => 'Kasakst tengi',
+ 'LAK' => 'Laoskt kip',
+ 'LBP' => 'Líbanskt pund',
+ 'LKR' => 'Srílönsk rúpía',
+ 'LRD' => 'Líberískur dalur',
+ 'LSL' => 'Lesotho Loti',
+ 'LTL' => 'Litháískt lít',
+ 'LTT' => 'Lithuanian Talonas',
+ 'LUF' => 'Lúxemborgarfranki',
+ 'LVL' => 'Lettneskt lat',
+ 'LVR' => 'Lettnesk rúbla',
+ 'LYD' => 'Líbískur denari',
+ 'MAD' => 'Marokkóskt dírham',
+ 'MAF' => 'Marokkóskur franki',
+ 'MDL' => 'Moldavískt lei',
+ 'MGA' => 'Madagaskararjari',
+ 'MGF' => 'Madagaskur franki',
+ 'MKD' => 'Makedónskur denari',
+ 'MLF' => 'Malískur franki',
+ 'MMK' => 'Mjanmarskt kjat',
+ 'MNT' => 'Mongólskur túríkur',
+ 'MOP' => 'Makaópataka',
+ 'MRO' => 'Máritönsk úgía',
+ 'MTL' => 'Meltnesk líra',
+ 'MTP' => 'Maltneskt pund',
+ 'MUR' => 'Máritísk rúpía',
+ 'MVR' => 'Maldíveysk rúpía',
+ 'MWK' => 'Malavísk kvaka',
+ 'MXN' => 'Mexíkóskur pesi',
+ 'MXP' => 'Mexíkóskur silfurpesi (1861–1992)',
+ 'MXV' => 'Mexíkóskur pesi, UDI',
+ 'MYR' => 'Malasískt ringit',
+ 'MZE' => 'Mósambískur skúti',
+ 'MZN' => 'Mósambískt metikal',
+ 'NAD' => 'Namibískur dalur',
+ 'NGN' => 'Nígerísk næra',
+ 'NIC' => 'Níkarögsk kordóva (1988–1991)',
+ 'NIO' => 'Níkarögsk kordóva',
+ 'NLG' => 'Hollenskt gyllini',
+ 'NOK' => 'Norsk króna',
+ 'NPR' => 'Nepölsk rúpía',
+ 'NZD' => 'Nýsjálenskur dalur',
+ 'OMR' => 'Ómanskt ríal',
+ 'PAB' => 'Balbói',
+ 'PEN' => 'Perúskt sól',
+ 'PGK' => 'Papúsk kína',
+ 'PHP' => 'Filippseyskur pesi',
+ 'PKR' => 'Pakistönsk rúpía',
+ 'PLN' => 'Pólskt slot',
+ 'PLZ' => 'Slot',
+ 'PTE' => 'Portúgalskur skúti',
+ 'PYG' => 'Paragvæskt gvaraní',
+ 'QAR' => 'Katarskt ríal',
+ 'ROL' => 'Rúmenskt lei (1952–2006)',
+ 'RON' => 'Rúmenskt lei',
+ 'RSD' => 'Serbneskur denari',
+ 'RUB' => 'Rússnesk rúbla',
+ 'RUR' => 'Rússnesk rúbla (1991–1998)',
+ 'RWF' => 'Rúandskur franki',
+ 'SAR' => 'Sádiarabískt ríal',
+ 'SBD' => 'Salómonseyskur dalur',
+ 'SCR' => 'Seychellesrúpía',
+ 'SDD' => 'Súdanskur denari',
+ 'SDG' => 'Súdanskt pund',
+ 'SDP' => 'Súdanskt pund (1957–1998)',
+ 'SEK' => 'Sænsk króna',
+ 'SGD' => 'Singapúrskur dalur',
+ 'SHP' => 'Helenskt pund',
+ 'SIT' => 'Slóvenskur dalur',
+ 'SKK' => 'Slóvakísk króna',
+ 'SLL' => 'Síerraleónsk ljóna',
+ 'SOS' => 'Sómalískur skildingur',
+ 'SRD' => 'Súrínamdalur',
+ 'SRG' => 'Suriname Guilder',
+ 'SSP' => 'Suðursúdanskt pund',
+ 'STD' => 'Saó Tóme og Prinsípe-dóbra',
+ 'SUR' => 'Soviet Rouble',
+ 'SVC' => 'El Salvador Colon',
+ 'SYP' => 'Sýrlenskt pund',
+ 'SZL' => 'Svasílenskur lílangeni',
+ 'THB' => 'Taílenskt bat',
+ 'TJR' => 'Tadsjiksk rúbla',
+ 'TJS' => 'Tadsjikskur sómóni',
+ 'TMM' => 'Túrkmenskt manat (1993–2009)',
+ 'TMT' => 'Túrkmenskt manat',
+ 'TND' => 'Túniskur denari',
+ 'TOP' => 'Tongapanga',
+ 'TPE' => 'Tímorskur skúti',
+ 'TRL' => 'Tyrknesk líra (1922–2005)',
+ 'TRY' => 'Tyrknesk líra',
+ 'TTD' => 'Trínidad og Tóbagó-dalur',
+ 'TWD' => 'Taívanskur dalur',
+ 'TZS' => 'Tansanískur skildingur',
+ 'UAH' => 'Úkraínsk hrinja',
+ 'UAK' => 'Ukrainian Karbovanetz',
+ 'UGX' => 'Úgandskur skildingur',
+ 'USD' => 'Bandaríkjadalur',
+ 'USN' => 'Bandaríkjadalur (næsta dag)',
+ 'USS' => 'Bandaríkjadalur (sama dag)',
+ 'UYU' => 'Úrúgvæskur pesi',
+ 'UZS' => 'Úsbekskt súm',
+ 'VEB' => 'Bolívar í Venesúela (1871–2008)',
+ 'VEF' => 'Venesúelskur bólívari',
+ 'VND' => 'Víetnamskt dong',
+ 'VUV' => 'Vanúatúskt vatú',
+ 'WST' => 'Samóatala',
+ 'XAF' => 'Miðafrískur franki',
+ 'XAG' => 'unse silfur',
+ 'XAU' => 'unse gull',
+ 'XCD' => 'Austurkarabískur dalur',
+ 'XDR' => 'Sérstök dráttarréttindi',
+ 'XFO' => 'Franskur gullfranki',
+ 'XFU' => 'Franskur franki, UIC',
+ 'XOF' => 'Vesturafrískur franki',
+ 'XPD' => 'unse palladín',
+ 'XPF' => 'Pólinesískur franki',
+ 'XPT' => 'unse platína',
+ 'XXX' => 'Óþekktur gjaldmiðill',
+ 'YDD' => 'Jemenskur denari',
+ 'YER' => 'Jemenskt ríal',
+ 'YUM' => 'Júgóslavneskur denari',
+ 'ZAL' => 'Rand (viðskipta)',
+ 'ZAR' => 'Suðurafrískt rand',
+ 'ZMK' => 'Zambian Kwacha (1968–2012)',
+ 'ZMW' => 'Sambísk kvaka',
+ 'ZWD' => 'Simbabveskur dalur',
+);
+
+$currencySymbols = array(
+ 'AED' => 'AED',
+ 'AFN' => 'AFN',
+ 'ALL' => 'ALL',
+ 'AMD' => 'AMD',
+ 'ANG' => 'ANG',
+ 'AOA' => 'AOA',
+ 'ARS' => 'ARS',
+ 'AUD' => 'AUD',
+ 'AWG' => 'AWG',
+ 'AZN' => 'AZN',
+ 'BAM' => 'BAM',
+ 'BBD' => 'BBD',
+ 'BDT' => 'BDT',
+ 'BGN' => 'BGN',
+ 'BHD' => 'BHD',
+ 'BIF' => 'BIF',
+ 'BMD' => 'BMD',
+ 'BND' => 'BND',
+ 'BOB' => 'BOB',
+ 'BRL' => 'BRL',
+ 'BSD' => 'BSD',
+ 'BTN' => 'BTN',
+ 'BWP' => 'BWP',
+ 'BYR' => 'BYR',
+ 'BZD' => 'BZD',
+ 'CAD' => 'CAD',
+ 'CDF' => 'CDF',
+ 'CHF' => 'CHF',
+ 'CLP' => 'CLP',
+ 'CNY' => 'CN¥',
+ 'COP' => 'COP',
+ 'CRC' => 'CRC',
+ 'CUC' => 'CUC',
+ 'CUP' => 'CUP',
+ 'CVE' => 'CVE',
+ 'CZK' => 'CZK',
+ 'DJF' => 'DJF',
+ 'DKK' => 'DKK',
+ 'DOP' => 'DOP',
+ 'DZD' => 'DZD',
+ 'EGP' => 'EGP',
+ 'ERN' => 'ERN',
+ 'ETB' => 'ETB',
+ 'EUR' => 'EUR',
+ 'FJD' => 'FJD',
+ 'FKP' => 'FKP',
+ 'GBP' => 'GBP',
+ 'GEL' => 'GEL',
+ 'GHS' => 'GHS',
+ 'GIP' => 'GIP',
+ 'GMD' => 'GMD',
+ 'GNF' => 'GNF',
+ 'GTQ' => 'GTQ',
+ 'GYD' => 'GYD',
+ 'HKD' => 'HK$',
+ 'HNL' => 'HNL',
+ 'HRK' => 'HRK',
+ 'HTG' => 'HTG',
+ 'HUF' => 'HUF',
+ 'IDR' => 'IDR',
+ 'ILS' => '₪',
+ 'INR' => 'INR',
+ 'IQD' => 'IQD',
+ 'IRR' => 'IRR',
+ 'ISK' => 'ISK',
+ 'JMD' => 'JMD',
+ 'JOD' => 'JOD',
+ 'JPY' => 'JP¥',
+ 'KES' => 'KES',
+ 'KGS' => 'KGS',
+ 'KHR' => 'KHR',
+ 'KMF' => 'KMF',
+ 'KPW' => 'KPW',
+ 'KRW' => 'KRW',
+ 'KWD' => 'KWD',
+ 'KYD' => 'KYD',
+ 'KZT' => 'KZT',
+ 'LAK' => 'LAK',
+ 'LBP' => 'LBP',
+ 'LKR' => 'LKR',
+ 'LRD' => 'LRD',
+ 'LTL' => 'LTL',
+ 'LVL' => 'LVL',
+ 'LYD' => 'LYD',
+ 'MAD' => 'MAD',
+ 'MDL' => 'MDL',
+ 'MGA' => 'MGA',
+ 'MKD' => 'MKD',
+ 'MMK' => 'MMK',
+ 'MNT' => 'MNT',
+ 'MOP' => 'MOP',
+ 'MRO' => 'MRO',
+ 'MUR' => 'MUR',
+ 'MVR' => 'MVR',
+ 'MWK' => 'MWK',
+ 'MXN' => 'MXN',
+ 'MYR' => 'MYR',
+ 'MZN' => 'MZN',
+ 'NAD' => 'NAD',
+ 'NGN' => 'NGN',
+ 'NIO' => 'NIO',
+ 'NOK' => 'NOK',
+ 'NPR' => 'NPR',
+ 'NZD' => 'NZD',
+ 'OMR' => 'OMR',
+ 'PAB' => 'PAB',
+ 'PEN' => 'PEN',
+ 'PGK' => 'PGK',
+ 'PHP' => 'PHP',
+ 'PKR' => 'PKR',
+ 'PLN' => 'PLN',
+ 'PYG' => 'PYG',
+ 'QAR' => 'QAR',
+ 'RON' => 'RON',
+ 'RSD' => 'RSD',
+ 'RUB' => 'RUB',
+ 'RWF' => 'RWF',
+ 'SAR' => 'SAR',
+ 'SBD' => 'SBD',
+ 'SCR' => 'SCR',
+ 'SDG' => 'SDG',
+ 'SEK' => 'SEK',
+ 'SGD' => 'SGD',
+ 'SHP' => 'SHP',
+ 'SLL' => 'SLL',
+ 'SOS' => 'SOS',
+ 'SRD' => 'SRD',
+ 'SSP' => 'SSP',
+ 'STD' => 'STD',
+ 'SYP' => 'SYP',
+ 'SZL' => 'SZL',
+ 'THB' => 'THB',
+ 'TJS' => 'TJS',
+ 'TMT' => 'TMT',
+ 'TND' => 'TND',
+ 'TOP' => 'TOP',
+ 'TRY' => 'TRY',
+ 'TTD' => 'TTD',
+ 'TWD' => 'TWD',
+ 'TZS' => 'TZS',
+ 'UAH' => 'UAH',
+ 'UGX' => 'UGX',
+ 'USD' => 'USD',
+ 'UYU' => 'UYU',
+ 'UZS' => 'UZS',
+ 'VEF' => 'VEF',
+ 'VND' => 'VND',
+ 'VUV' => 'VUV',
+ 'WST' => 'WST',
+ 'XAF' => 'FCFA',
+ 'XCD' => 'EC$',
+ 'XOF' => 'CFA',
+ 'XPF' => 'CFPF',
+ 'YER' => 'YER',
+ 'ZAR' => 'ZAR',
+ 'ZMW' => 'ZMW',
+);
+
+$countryNames = array(
+ 'AC' => 'Ascension-eyja',
+ 'AD' => 'Andorra',
+ 'AE' => 'Sameinuðu arabísku furstadæmin',
+ 'AF' => 'Afganistan',
+ 'AG' => 'Antígva og Barbúda',
+ 'AI' => 'Angvilla',
+ 'AL' => 'Albanía',
+ 'AM' => 'Armenía',
+ 'AN' => 'Hollensku Antillur',
+ 'AO' => 'Angóla',
+ 'AQ' => 'Suðurskautslandið',
+ 'AR' => 'Argentína',
+ 'AS' => 'Bandaríska Samóa',
+ 'AT' => 'Austurríki',
+ 'AU' => 'Ástralía',
+ 'AW' => 'Arúba',
+ 'AX' => 'Álandseyjar',
+ 'AZ' => 'Aserbaídsjan',
+ 'BA' => 'Bosnía og Hersegóvína',
+ 'BB' => 'Barbados',
+ 'BD' => 'Bangladess',
+ 'BE' => 'Belgía',
+ 'BF' => 'Búrkína Fasó',
+ 'BG' => 'Búlgaría',
+ 'BH' => 'Barein',
+ 'BI' => 'Búrúndí',
+ 'BJ' => 'Benín',
+ 'BL' => 'Saint Barthélemy',
+ 'BM' => 'Bermúdaeyjar',
+ 'BN' => 'Brúnei',
+ 'BO' => 'Bólivía',
+ 'BQ' => 'Karíbahafshluti Hollands',
+ 'BR' => 'Brasilía',
+ 'BS' => 'Bahamaeyjar',
+ 'BT' => 'Bútan',
+ 'BV' => 'Bouveteyja',
+ 'BW' => 'Botsvana',
+ 'BY' => 'Hvíta-Rússland',
+ 'BZ' => 'Belís',
+ 'CA' => 'Kanada',
+ 'CC' => 'Kókoseyjar (Keeling)',
+ 'CD' => 'Kongó-Kinshasa',
+ 'CF' => 'Mið-Afríkulýðveldið',
+ 'CG' => 'Kongó-Brazzaville',
+ 'CH' => 'Sviss',
+ 'CI' => 'Fílabeinsströndin',
+ 'CK' => 'Cooks-eyjar',
+ 'CL' => 'Síle',
+ 'CM' => 'Kamerún',
+ 'CN' => 'Kína',
+ 'CO' => 'Kólumbía',
+ 'CP' => 'Clipperton-eyja',
+ 'CR' => 'Kostaríka',
+ 'CU' => 'Kúba',
+ 'CV' => 'Grænhöfðaeyjar',
+ 'CW' => 'Curacao',
+ 'CX' => 'Jólaey',
+ 'CY' => 'Kýpur',
+ 'CZ' => 'Tékkland',
+ 'DE' => 'Þýskaland',
+ 'DG' => 'Diego Garcia',
+ 'DJ' => 'Djíbútí',
+ 'DK' => 'Danmörk',
+ 'DM' => 'Dóminíka',
+ 'DO' => 'Dóminíska lýðveldið',
+ 'DZ' => 'Alsír',
+ 'EA' => 'Ceuta og Melilla',
+ 'EC' => 'Ekvador',
+ 'EE' => 'Eistland',
+ 'EG' => 'Egyptaland',
+ 'EH' => 'Vestur-Sahara',
+ 'ER' => 'Erítrea',
+ 'ES' => 'Spánn',
+ 'ET' => 'Eþíópía',
+ 'EU' => 'Evrópusambandið',
+ 'FI' => 'Finnland',
+ 'FJ' => 'Fídjieyjar',
+ 'FK' => 'Falklandseyjar',
+ 'FM' => 'Míkrónesía',
+ 'FO' => 'Færeyjar',
+ 'FR' => 'Frakkland',
+ 'GA' => 'Gabon',
+ 'GB' => 'Bretland',
+ 'GD' => 'Grenada',
+ 'GE' => 'Georgía',
+ 'GF' => 'Franska Gvæjana',
+ 'GG' => 'Guernsey',
+ 'GH' => 'Gana',
+ 'GI' => 'Gíbraltar',
+ 'GL' => 'Grænland',
+ 'GM' => 'Gambía',
+ 'GN' => 'Gínea',
+ 'GP' => 'Gvadelúpeyjar',
+ 'GQ' => 'Miðbaugs-Gínea',
+ 'GR' => 'Grikkland',
+ 'GS' => 'Suður-Georgía og Suður-Sandvíkureyjar',
+ 'GT' => 'Gvatemala',
+ 'GU' => 'Gvam',
+ 'GW' => 'Gínea-Bissá',
+ 'GY' => 'Gvæjana',
+ 'HK' => 'Hong Kong',
+ 'HM' => 'Heard og McDonaldseyjar',
+ 'HN' => 'Hondúras',
+ 'HR' => 'Króatía',
+ 'HT' => 'Haítí',
+ 'HU' => 'Ungverjaland',
+ 'IC' => 'Kanaríeyjar',
+ 'ID' => 'Indónesía',
+ 'IE' => 'Írland',
+ 'IL' => 'Ísrael',
+ 'IM' => 'Mön',
+ 'IN' => 'Indland',
+ 'IO' => 'Bresku Indlandshafseyjar',
+ 'IQ' => 'Írak',
+ 'IR' => 'Íran',
+ 'IS' => 'Ísland',
+ 'IT' => 'Ítalía',
+ 'JE' => 'Jersey',
+ 'JM' => 'Jamaíka',
+ 'JO' => 'Jórdanía',
+ 'JP' => 'Japan',
+ 'KE' => 'Kenía',
+ 'KG' => 'Kirgistan',
+ 'KH' => 'Kambódía',
+ 'KI' => 'Kíribatí',
+ 'KM' => 'Kómoreyjar',
+ 'KN' => 'Sankti Kitts og Nevis',
+ 'KP' => 'Norður-Kórea',
+ 'KR' => 'Suður-Kórea',
+ 'KW' => 'Kúveit',
+ 'KY' => 'Caymaneyjar',
+ 'KZ' => 'Kasakstan',
+ 'LA' => 'Laos',
+ 'LB' => 'Líbanon',
+ 'LC' => 'Sankti Lúsía',
+ 'LI' => 'Liechtenstein',
+ 'LK' => 'Srí Lanka',
+ 'LR' => 'Líbería',
+ 'LS' => 'Lesótó',
+ 'LT' => 'Litháen',
+ 'LU' => 'Lúxemborg',
+ 'LV' => 'Lettland',
+ 'LY' => 'Líbía',
+ 'MA' => 'Marokkó',
+ 'MC' => 'Mónakó',
+ 'MD' => 'Moldóva',
+ 'ME' => 'Svartfjallaland',
+ 'MF' => 'Saint Martin',
+ 'MG' => 'Madagaskar',
+ 'MH' => 'Marshalleyjar',
+ 'MK' => 'Makedónía',
+ 'ML' => 'Malí',
+ 'MM' => 'Mjanmar (Búrma)',
+ 'MN' => 'Mongólía',
+ 'MO' => 'Makaó',
+ 'MP' => 'Norður-Maríanaeyjar',
+ 'MQ' => 'Martiník',
+ 'MR' => 'Máritanía',
+ 'MS' => 'Montserrat',
+ 'MT' => 'Malta',
+ 'MU' => 'Máritíus',
+ 'MV' => 'Maldíveyjar',
+ 'MW' => 'Malaví',
+ 'MX' => 'Mexíkó',
+ 'MY' => 'Malasía',
+ 'MZ' => 'Mósambík',
+ 'NA' => 'Namibía',
+ 'NC' => 'Nýja-Kaledónía',
+ 'NE' => 'Níger',
+ 'NF' => 'Norfolkeyja',
+ 'NG' => 'Nígería',
+ 'NI' => 'Níkaragva',
+ 'NL' => 'Holland',
+ 'NO' => 'Noregur',
+ 'NP' => 'Nepal',
+ 'NR' => 'Nárú',
+ 'NU' => 'Niue',
+ 'NZ' => 'Nýja-Sjáland',
+ 'OM' => 'Óman',
+ 'PA' => 'Panama',
+ 'PE' => 'Perú',
+ 'PF' => 'Franska Pólýnesía',
+ 'PG' => 'Papúa Nýja-Gínea',
+ 'PH' => 'Filippseyjar',
+ 'PK' => 'Pakistan',
+ 'PL' => 'Pólland',
+ 'PM' => 'Sankti Pierre og Miquelon',
+ 'PN' => 'Pitcairn-eyjar',
+ 'PR' => 'Púertó Ríkó',
+ 'PS' => 'Palestína',
+ 'PT' => 'Portúgal',
+ 'PW' => 'Palá',
+ 'PY' => 'Paragvæ',
+ 'QA' => 'Katar',
+ 'QO' => 'Ytri Eyjaálfa',
+ 'RE' => 'Réunion',
+ 'RO' => 'Rúmenía',
+ 'RS' => 'Serbía',
+ 'RU' => 'Rússland',
+ 'RW' => 'Rúanda',
+ 'SA' => 'Sádi-Arabía',
+ 'SB' => 'Salómonseyjar',
+ 'SC' => 'Seychelles-eyjar',
+ 'SD' => 'Súdan',
+ 'SE' => 'Svíþjóð',
+ 'SG' => 'Singapúr',
+ 'SH' => 'Sankti Helena',
+ 'SI' => 'Slóvenía',
+ 'SJ' => 'Svalbarði og Jan Mayen',
+ 'SK' => 'Slóvakía',
+ 'SL' => 'Síerra Leóne',
+ 'SM' => 'San Marínó',
+ 'SN' => 'Senegal',
+ 'SO' => 'Sómalía',
+ 'SR' => 'Súrínam',
+ 'SS' => 'Suður-Súdan',
+ 'ST' => 'Saó Tóme og Prinsípe',
+ 'SV' => 'El Salvador',
+ 'SX' => 'Sint Maarten',
+ 'SY' => 'Sýrland',
+ 'SZ' => 'Svasíland',
+ 'TA' => 'Tristan da Cunha',
+ 'TC' => 'Turks- og Caicoseyjar',
+ 'TD' => 'Tsjad',
+ 'TF' => 'Frönsku suðlægu landsvæðin',
+ 'TG' => 'Tógó',
+ 'TH' => 'Taíland',
+ 'TJ' => 'Tadsjikistan',
+ 'TK' => 'Tókelá',
+ 'TL' => 'Tímor-Leste',
+ 'TM' => 'Túrkmenistan',
+ 'TN' => 'Túnis',
+ 'TO' => 'Tonga',
+ 'TR' => 'Tyrkland',
+ 'TT' => 'Trínidad og Tóbagó',
+ 'TV' => 'Túvalú',
+ 'TW' => 'Taívan',
+ 'TZ' => 'Tansanía',
+ 'UA' => 'Úkraína',
+ 'UG' => 'Úganda',
+ 'UM' => 'Smáeyjar Bandaríkjanna',
+ 'US' => 'BNA',
+ 'UY' => 'Úrúgvæ',
+ 'UZ' => 'Úsbekistan',
+ 'VA' => 'Vatíkanið',
+ 'VC' => 'Sankti Vinsent og Grenadíneyjar',
+ 'VE' => 'Venesúela',
+ 'VG' => 'Bresku Jómfrúaeyjar',
+ 'VI' => 'Bandarísku Jómfrúaeyjar',
+ 'VN' => 'Víetnam',
+ 'VU' => 'Vanúatú',
+ 'WF' => 'Wallis- og Fútúnaeyjar',
+ 'WS' => 'Samóa',
+ 'XK' => 'Kósóvó',
+ 'YE' => 'Jemen',
+ 'YT' => 'Mayotte',
+ 'ZA' => 'Suður-Afríka',
+ 'ZM' => 'Sambía',
+ 'ZW' => 'Simbabve',
+);
+
+$timeUnits = array(
+ 'day-future-one' => 'eftir {0} dag',
+ 'day-future-other' => 'eftir {0} daga',
+ 'day-narrow-future-one' => '+{0} dag',
+ 'day-narrow-future-other' => '+{0} daga',
+ 'day-narrow-past-one' => '-{0} degi',
+ 'day-narrow-past-other' => '-{0} dögum',
+ 'day-one' => '{0} dagur',
+ 'day-other' => '{0} dagar',
+ 'day-past-one' => 'fyrir {0} degi',
+ 'day-past-other' => 'fyrir {0} dögum',
+ 'day-short-future-one' => 'eftir {0} dag',
+ 'day-short-future-other' => 'eftir {0} daga',
+ 'day-short-past-one' => 'fyrir {0} dögum',
+ 'day-short-past-other' => 'fyrir {0} dögum',
+ 'hour-future-one' => 'eftir {0} klukkustund',
+ 'hour-future-other' => 'eftir {0} klukkustundir',
+ 'hour-narrow-future-one' => '+{0} klst.',
+ 'hour-narrow-future-other' => '+{0} klst.',
+ 'hour-narrow-past-one' => '-{0} klst.',
+ 'hour-narrow-past-other' => '-{0} klst.',
+ 'hour-one' => '{0} klukkustund',
+ 'hour-other' => '{0} klukkustundir',
+ 'hour-past-one' => 'fyrir {0} klukkustund',
+ 'hour-past-other' => 'fyrir {0} klukkustundum',
+ 'hour-short-future-one' => 'eftir {0} klst.',
+ 'hour-short-future-other' => 'eftir {0} klst.',
+ 'hour-short-past-one' => 'fyrir {0} klst.',
+ 'hour-short-past-other' => 'fyrir {0} klst.',
+ 'microsecond-one' => '{0} míkrósekúnda',
+ 'microsecond-other' => '{0} míkrósekúndur',
+ 'millisecond-one' => '{0} millisekúnda',
+ 'millisecond-other' => '{0} millisekúndur',
+ 'minute-future-one' => 'eftir {0} mínútu',
+ 'minute-future-other' => 'eftir {0} mínútur',
+ 'minute-narrow-future-one' => '+{0} mín.',
+ 'minute-narrow-future-other' => '+{0} mín.',
+ 'minute-narrow-past-one' => '-{0} mín.',
+ 'minute-narrow-past-other' => '-{0} mín.',
+ 'minute-one' => '{0} mínúta',
+ 'minute-other' => '{0} mínútur',
+ 'minute-past-one' => 'fyrir {0} mínútu',
+ 'minute-past-other' => 'fyrir {0} mínútum',
+ 'minute-short-future-one' => 'eftir {0} mín.',
+ 'minute-short-future-other' => 'eftir {0} mín.',
+ 'minute-short-past-one' => 'fyrir {0} mín.',
+ 'minute-short-past-other' => 'fyrir {0} mín.',
+ 'month-future-one' => 'eftir {0} mánuð',
+ 'month-future-other' => 'eftir {0} mánuði',
+ 'month-narrow-future-one' => 'eftir {0} mán.',
+ 'month-narrow-future-other' => 'eftir {0} mán.',
+ 'month-narrow-past-one' => 'fyrir {0} mán.',
+ 'month-narrow-past-other' => 'fyrir {0} mán.',
+ 'month-one' => '{0} mánuður',
+ 'month-other' => '{0} mánuðir',
+ 'month-past-one' => 'fyrir {0} mánuði',
+ 'month-past-other' => 'fyrir {0} mánuðum',
+ 'month-short-future-one' => 'eftir {0} mán.',
+ 'month-short-future-other' => 'eftir {0} mán.',
+ 'month-short-past-one' => 'fyrir {0} mán.',
+ 'month-short-past-other' => 'fyrir {0} mán.',
+ 'nanosecond-one' => '{0} nanósekúnda',
+ 'nanosecond-other' => '{0} nanósekúndur',
+ 'quarter-future-one' => 'eftir {0} ársfjórðung',
+ 'quarter-future-other' => 'eftir {0} ársfjórðunga',
+ 'quarter-narrow-future-one' => 'eftir {0} ársfj.',
+ 'quarter-narrow-future-other' => 'eftir {0} ársfj.',
+ 'quarter-narrow-past-one' => 'fyrir {0} ársfj.',
+ 'quarter-narrow-past-other' => 'fyrir {0} ársfj.',
+ 'quarter-past-one' => 'fyrir {0} ársfjórðungi',
+ 'quarter-past-other' => 'fyrir {0} ársfjórðungum',
+ 'quarter-short-future-one' => 'eftir {0} ársfj.',
+ 'quarter-short-future-other' => 'eftir {0} ársfj.',
+ 'quarter-short-past-one' => 'fyrir {0} ársfj.',
+ 'quarter-short-past-other' => 'fyrir {0} ársfj.',
+ 'second-future-one' => 'eftir {0} sekúndu',
+ 'second-future-other' => 'eftir {0} sekúndur',
+ 'second-narrow-future-one' => '+{0} sek.',
+ 'second-narrow-future-other' => '+{0} sek.',
+ 'second-narrow-past-one' => '-{0} sek.',
+ 'second-narrow-past-other' => '-{0} sek.',
+ 'second-one' => '{0} sekúnda',
+ 'second-other' => '{0} sekúndur',
+ 'second-past-one' => 'fyrir {0} sekúndu',
+ 'second-past-other' => 'fyrir {0} sekúndum',
+ 'second-short-future-one' => 'eftir {0} sek.',
+ 'second-short-future-other' => 'eftir {0} sek.',
+ 'second-short-past-one' => 'fyrir {0} sek.',
+ 'second-short-past-other' => 'fyrir {0} sek.',
+ 'week-future-one' => 'eftir {0} viku',
+ 'week-future-other' => 'eftir {0} vikur',
+ 'week-narrow-future-one' => '+{0} viku',
+ 'week-narrow-future-other' => '+{0} vikur',
+ 'week-narrow-past-one' => '-{0} viku',
+ 'week-narrow-past-other' => '-{0} vikur',
+ 'week-one' => '{0} vika',
+ 'week-other' => '{0} vikur',
+ 'week-past-one' => 'fyrir {0} viku',
+ 'week-past-other' => 'fyrir {0} vikum',
+ 'week-short-future-one' => 'eftir {0} vikur',
+ 'week-short-future-other' => 'eftir {0} vikur',
+ 'week-short-past-one' => 'fyrir {0} viku',
+ 'week-short-past-other' => 'fyrir {0} vikum',
+ 'year-future-one' => 'eftir {0} ár',
+ 'year-future-other' => 'eftir {0} ár',
+ 'year-narrow-future-one' => 'eftir {0} ár',
+ 'year-narrow-future-other' => 'eftir {0} ár',
+ 'year-narrow-past-one' => 'fyrir {0} árum',
+ 'year-narrow-past-other' => 'fyrir {0} árum',
+ 'year-one' => '{0} ár',
+ 'year-other' => '{0} ár',
+ 'year-past-one' => 'fyrir {0} ári',
+ 'year-past-other' => 'fyrir {0} árum',
+ 'year-short-future-one' => 'eftir {0} ár',
+ 'year-short-future-other' => 'eftir {0} ár',
+ 'year-short-past-one' => 'fyrir {0} ári',
+ 'year-short-past-other' => 'fyrir {0} árum',
+);
diff --git a/MLEB/cldr/CldrNames/CldrNamesIt.php b/MLEB/cldr/CldrNames/CldrNamesIt.php
new file mode 100644
index 00000000..42627a62
--- /dev/null
+++ b/MLEB/cldr/CldrNames/CldrNamesIt.php
@@ -0,0 +1,1416 @@
+<?php
+
+$languageNames = array(
+ 'aa' => 'afar',
+ 'ab' => 'abcaso',
+ 'ace' => 'accinese',
+ 'ach' => 'acioli',
+ 'ada' => 'adangme',
+ 'ady' => 'adyghe',
+ 'ae' => 'avestan',
+ 'aeb' => 'arabo tunisino',
+ 'af' => 'afrikaans',
+ 'afh' => 'afrihili',
+ 'agq' => 'aghem',
+ 'ain' => 'ainu',
+ 'ak' => 'akan',
+ 'akk' => 'accado',
+ 'akz' => 'alabama',
+ 'ale' => 'aleuto',
+ 'aln' => 'albanese ghego',
+ 'alt' => 'altai meridionale',
+ 'am' => 'amarico',
+ 'an' => 'aragonese',
+ 'ang' => 'inglese antico',
+ 'anp' => 'angika',
+ 'ar' => 'arabo',
+ 'ar-001' => 'arabo moderno standard',
+ 'arc' => 'aramaico',
+ 'arn' => 'araucano',
+ 'aro' => 'araona',
+ 'arp' => 'arapaho',
+ 'arq' => 'arabo algerino',
+ 'arw' => 'aruaco',
+ 'ary' => 'arabo marocchino',
+ 'arz' => 'arabo egiziano',
+ 'as' => 'assamese',
+ 'asa' => 'asu',
+ 'ase' => 'lingua dei segni americana',
+ 'ast' => 'asturiano',
+ 'av' => 'avaro',
+ 'avk' => 'kotava',
+ 'awa' => 'awadhi',
+ 'ay' => 'aymara',
+ 'az' => 'azerbaigiano',
+ 'azb' => 'azero meridionale',
+ 'ba' => 'baschiro',
+ 'bal' => 'beluci',
+ 'ban' => 'balinese',
+ 'bar' => 'bavarese',
+ 'bas' => 'basa',
+ 'bax' => 'bamun',
+ 'bbc' => 'batak toba',
+ 'bbj' => 'ghomala',
+ 'be' => 'bielorusso',
+ 'bej' => 'begia',
+ 'bem' => 'wemba',
+ 'bew' => 'betawi',
+ 'bez' => 'bena',
+ 'bfd' => 'bafut',
+ 'bfq' => 'badaga',
+ 'bg' => 'bulgaro',
+ 'bho' => 'bhojpuri',
+ 'bi' => 'bislama',
+ 'bik' => 'bicol',
+ 'bin' => 'bini',
+ 'bjn' => 'banjar',
+ 'bkm' => 'kom',
+ 'bla' => 'siksika',
+ 'bm' => 'bambara',
+ 'bn' => 'bengalese',
+ 'bo' => 'tibetano',
+ 'bpy' => 'bishnupriya',
+ 'bqi' => 'bakhtiari',
+ 'br' => 'bretone',
+ 'bra' => 'braj',
+ 'brh' => 'brahui',
+ 'brx' => 'bodo',
+ 'bs' => 'bosniaco',
+ 'bss' => 'akoose',
+ 'bua' => 'buriat',
+ 'bug' => 'bugi',
+ 'bum' => 'bulu',
+ 'byn' => 'blin',
+ 'byv' => 'medumba',
+ 'ca' => 'catalano',
+ 'cad' => 'caddo',
+ 'car' => 'caribico',
+ 'cay' => 'cayuga',
+ 'cch' => 'atsam',
+ 'ce' => 'ceceno',
+ 'ceb' => 'cebuano',
+ 'cgg' => 'chiga',
+ 'ch' => 'chamorro',
+ 'chb' => 'chibcha',
+ 'chg' => 'ciagataico',
+ 'chk' => 'chuukese',
+ 'chm' => 'mari',
+ 'chn' => 'gergo chinook',
+ 'cho' => 'choctaw',
+ 'chp' => 'chipewyan',
+ 'chr' => 'cherokee',
+ 'chy' => 'cheyenne',
+ 'ckb' => 'curdo sorani',
+ 'co' => 'corso',
+ 'cop' => 'copto',
+ 'cps' => 'capiznon',
+ 'cr' => 'cree',
+ 'crh' => 'turco crimeo',
+ 'cs' => 'ceco',
+ 'csb' => 'kashubian',
+ 'cu' => 'slavo della Chiesa',
+ 'cv' => 'chuvash',
+ 'cy' => 'gallese',
+ 'da' => 'danese',
+ 'dak' => 'dakota',
+ 'dar' => 'dargwa',
+ 'dav' => 'taita',
+ 'de' => 'tedesco',
+ 'de-at' => 'tedesco austriaco',
+ 'de-ch' => 'alto tedesco svizzero',
+ 'del' => 'delaware',
+ 'den' => 'slave',
+ 'dgr' => 'dogrib',
+ 'din' => 'dinca',
+ 'dje' => 'zarma',
+ 'doi' => 'dogri',
+ 'dsb' => 'basso sorabo',
+ 'dtp' => 'dusun centrale',
+ 'dua' => 'duala',
+ 'dum' => 'olandese medio',
+ 'dv' => 'divehi',
+ 'dyo' => 'jola-fony',
+ 'dyu' => 'diula',
+ 'dz' => 'dzongkha',
+ 'dzg' => 'dazaga',
+ 'ebu' => 'embu',
+ 'ee' => 'ewe',
+ 'efi' => 'efik',
+ 'egl' => 'emiliano',
+ 'egy' => 'egiziano antico',
+ 'eka' => 'ekajuka',
+ 'el' => 'greco',
+ 'elx' => 'elamitico',
+ 'en' => 'inglese',
+ 'en-au' => 'inglese australiano',
+ 'en-ca' => 'inglese canadese',
+ 'en-gb' => 'inglese britannico',
+ 'en-us' => 'inglese americano',
+ 'enm' => 'inglese medio',
+ 'eo' => 'esperanto',
+ 'es' => 'spagnolo',
+ 'es-419' => 'spagnolo latinoamericano',
+ 'es-es' => 'spagnolo europeo',
+ 'es-mx' => 'spagnolo messicano',
+ 'esu' => 'yupik centrale',
+ 'et' => 'estone',
+ 'eu' => 'basco',
+ 'ewo' => 'ewondo',
+ 'ext' => 'estremegno',
+ 'fa' => 'persiano',
+ 'fan' => 'fang',
+ 'fat' => 'fanti',
+ 'ff' => 'fulah',
+ 'fi' => 'finlandese',
+ 'fil' => 'filippino',
+ 'fit' => 'finlandese del Tornedalen',
+ 'fj' => 'figiano',
+ 'fo' => 'faroese',
+ 'fon' => 'fon',
+ 'fr' => 'francese',
+ 'fr-ca' => 'francese canadese',
+ 'fr-ch' => 'francese svizzero',
+ 'frc' => 'francese cajun',
+ 'frm' => 'francese medio',
+ 'fro' => 'francese antico',
+ 'frp' => 'francoprovenzale',
+ 'frr' => 'frisone settentrionale',
+ 'frs' => 'frisone orientale',
+ 'fur' => 'friulano',
+ 'fy' => 'frisone occidentale',
+ 'ga' => 'irlandese',
+ 'gaa' => 'ga',
+ 'gag' => 'gagauzo',
+ 'gan' => 'gan',
+ 'gay' => 'gayo',
+ 'gba' => 'gbaya',
+ 'gbz' => 'dari zoroastriano',
+ 'gd' => 'gaelico scozzese',
+ 'gez' => 'geez',
+ 'gil' => 'gilbertese',
+ 'gl' => 'galiziano',
+ 'glk' => 'gilaki',
+ 'gmh' => 'tedesco medio alto',
+ 'gn' => 'guaraní',
+ 'goh' => 'tedesco antico alto',
+ 'gom' => 'konkani goano',
+ 'gon' => 'gondi',
+ 'gor' => 'gorontalo',
+ 'got' => 'gotico',
+ 'grb' => 'gerbo',
+ 'grc' => 'greco antico',
+ 'gsw' => 'tedesco svizzero',
+ 'gu' => 'gujarati',
+ 'guc' => 'wayuu',
+ 'guz' => 'gusii',
+ 'gv' => 'manx',
+ 'gwi' => 'gwichʼin',
+ 'ha' => 'hausa',
+ 'hai' => 'haida',
+ 'hak' => 'hakka',
+ 'haw' => 'hawaiano',
+ 'he' => 'ebraico',
+ 'hi' => 'hindi',
+ 'hif' => 'hindi figiano',
+ 'hil' => 'hiligayna',
+ 'hit' => 'hittite',
+ 'hmn' => 'hmong',
+ 'ho' => 'hiri motu',
+ 'hr' => 'croato',
+ 'hsb' => 'alto sorabo',
+ 'hsn' => 'xiang',
+ 'ht' => 'haitiano',
+ 'hu' => 'ungherese',
+ 'hup' => 'hupa',
+ 'hy' => 'armeno',
+ 'hz' => 'herero',
+ 'ia' => 'interlingua',
+ 'iba' => 'iban',
+ 'ibb' => 'ibibio',
+ 'id' => 'indonesiano',
+ 'ie' => 'interlingue',
+ 'ig' => 'igbo',
+ 'ii' => 'sichuan yi',
+ 'ik' => 'inupiak',
+ 'ilo' => 'ilocano',
+ 'inh' => 'ingush',
+ 'io' => 'ido',
+ 'is' => 'islandese',
+ 'it' => 'italiano',
+ 'iu' => 'inuktitut',
+ 'izh' => 'ingrico',
+ 'ja' => 'giapponese',
+ 'jam' => 'creolo giamaicano',
+ 'jbo' => 'lojban',
+ 'jgo' => 'ngamambo',
+ 'jmc' => 'machame',
+ 'jpr' => 'giudeo persiano',
+ 'jrb' => 'giudeo arabo',
+ 'jut' => 'jutlandico',
+ 'jv' => 'giavanese',
+ 'ka' => 'georgiano',
+ 'kaa' => 'kara-kalpak',
+ 'kab' => 'cabilo',
+ 'kac' => 'kachin',
+ 'kaj' => 'kai',
+ 'kam' => 'kamba',
+ 'kaw' => 'kawi',
+ 'kbd' => 'kabardia',
+ 'kbl' => 'kanembu',
+ 'kcg' => 'tyap',
+ 'kde' => 'makonde',
+ 'kea' => 'capoverdiano',
+ 'kfo' => 'koro',
+ 'kg' => 'kongo',
+ 'kgp' => 'kaingang',
+ 'kha' => 'khasi',
+ 'kho' => 'khotanese',
+ 'khq' => 'koyra chiini',
+ 'khw' => 'khowar',
+ 'ki' => 'kikuyu',
+ 'kiu' => 'kirmanjki',
+ 'kj' => 'kuanyama',
+ 'kk' => 'kazako',
+ 'kkj' => 'kako',
+ 'kl' => 'kalaallisut',
+ 'kln' => 'kalenjin',
+ 'km' => 'khmer',
+ 'kmb' => 'kimbundu',
+ 'kn' => 'kannada',
+ 'ko' => 'coreano',
+ 'koi' => 'permiaco',
+ 'kok' => 'konkani',
+ 'kos' => 'kosraean',
+ 'kpe' => 'kpelle',
+ 'kr' => 'kanuri',
+ 'krc' => 'karachay-Balkar',
+ 'krl' => 'careliano',
+ 'kru' => 'kurukh',
+ 'ks' => 'kashmiri',
+ 'ksb' => 'shambala',
+ 'ksf' => 'bafia',
+ 'ksh' => 'coloniese',
+ 'ku' => 'curdo',
+ 'kum' => 'kumyk',
+ 'kut' => 'kutenai',
+ 'kv' => 'komi',
+ 'kw' => 'cornico',
+ 'ky' => 'chirghiso',
+ 'la' => 'latino',
+ 'lad' => 'giudeo-spagnolo',
+ 'lag' => 'langi',
+ 'lah' => 'lahnda',
+ 'lam' => 'lamba',
+ 'lb' => 'lussemburghese',
+ 'lez' => 'lezghian',
+ 'lfn' => 'Lingua Franca Nova',
+ 'lg' => 'ganda',
+ 'li' => 'limburgese',
+ 'lij' => 'ligure',
+ 'liv' => 'livone',
+ 'lkt' => 'lakota',
+ 'lmo' => 'lombardo',
+ 'ln' => 'lingala',
+ 'lo' => 'lao',
+ 'lol' => 'lolo bantu',
+ 'loz' => 'lozi',
+ 'lt' => 'lituano',
+ 'ltg' => 'letgallo',
+ 'lu' => 'luba-katanga',
+ 'lua' => 'luba-lulua',
+ 'lui' => 'luiseno',
+ 'lun' => 'lunda',
+ 'luo' => 'luo',
+ 'lus' => 'lushai',
+ 'luy' => 'luyia',
+ 'lv' => 'lettone',
+ 'lzh' => 'cinese classico',
+ 'lzz' => 'laz',
+ 'mad' => 'madurese',
+ 'maf' => 'mafa',
+ 'mag' => 'magahi',
+ 'mai' => 'maithili',
+ 'mak' => 'makasar',
+ 'man' => 'mandingo',
+ 'mas' => 'masai',
+ 'mde' => 'maba',
+ 'mdf' => 'moksha',
+ 'mdr' => 'mandar',
+ 'men' => 'mende',
+ 'mer' => 'meru',
+ 'mfe' => 'creolo mauriziano',
+ 'mg' => 'malgascio',
+ 'mga' => 'irlandese medio',
+ 'mgh' => 'makhuwa-meetto',
+ 'mgo' => 'meta’',
+ 'mh' => 'marshallese',
+ 'mi' => 'maori',
+ 'mic' => 'micmac',
+ 'min' => 'menangkabau',
+ 'mk' => 'macedone',
+ 'ml' => 'malayalam',
+ 'mn' => 'mongolo',
+ 'mnc' => 'manchu',
+ 'mni' => 'manipuri',
+ 'moh' => 'mohawk',
+ 'mos' => 'mossi',
+ 'mr' => 'marathi',
+ 'mrj' => 'mari occidentale',
+ 'ms' => 'malese',
+ 'mt' => 'maltese',
+ 'mua' => 'mundang',
+ 'mul' => 'multilingua',
+ 'mus' => 'creek',
+ 'mwl' => 'mirandese',
+ 'mwr' => 'marwari',
+ 'mwv' => 'mentawai',
+ 'my' => 'birmano',
+ 'mye' => 'myene',
+ 'myv' => 'erzya',
+ 'mzn' => 'mazandarani',
+ 'na' => 'nauru',
+ 'nan' => 'min nan',
+ 'nap' => 'napoletano',
+ 'naq' => 'nama',
+ 'nb' => 'norvegese bokmål',
+ 'nd' => 'ndebele del nord',
+ 'nds' => 'basso tedesco',
+ 'ne' => 'nepalese',
+ 'new' => 'newari',
+ 'ng' => 'ndonga',
+ 'nia' => 'nias',
+ 'niu' => 'niue',
+ 'njo' => 'ao',
+ 'nl' => 'olandese',
+ 'nl-be' => 'fiammingo',
+ 'nmg' => 'kwasio',
+ 'nn' => 'norvegese nynorsk',
+ 'nnh' => 'ngiemboon',
+ 'no' => 'norvegese',
+ 'nog' => 'nogai',
+ 'non' => 'norse antico',
+ 'nov' => 'novial',
+ 'nqo' => 'n’ko',
+ 'nr' => 'ndebele del sud',
+ 'nso' => 'sotho del nord',
+ 'nus' => 'nuer',
+ 'nv' => 'navajo',
+ 'nwc' => 'newari classico',
+ 'ny' => 'nyanja',
+ 'nym' => 'nyamwezi',
+ 'nyn' => 'nyankole',
+ 'nyo' => 'nyoro',
+ 'nzi' => 'nzima',
+ 'oc' => 'occitano',
+ 'oj' => 'ojibwa',
+ 'om' => 'oromo',
+ 'or' => 'oriya',
+ 'os' => 'ossetico',
+ 'osa' => 'osage',
+ 'ota' => 'turco ottomano',
+ 'pa' => 'punjabi',
+ 'pag' => 'pangasinan',
+ 'pal' => 'pahlavi',
+ 'pam' => 'pampanga',
+ 'pap' => 'papiamento',
+ 'pau' => 'palau',
+ 'pcd' => 'piccardo',
+ 'pdc' => 'tedesco della Pennsylvania',
+ 'peo' => 'persiano antico',
+ 'pfl' => 'tedesco palatino',
+ 'phn' => 'fenicio',
+ 'pi' => 'pali',
+ 'pl' => 'polacco',
+ 'pms' => 'piemontese',
+ 'pnt' => 'pontico',
+ 'pon' => 'ponape',
+ 'prg' => 'prussiano',
+ 'pro' => 'provenzale antico',
+ 'ps' => 'pashto',
+ 'pt' => 'portoghese',
+ 'pt-br' => 'portoghese brasiliano',
+ 'pt-pt' => 'portoghese europeo',
+ 'qu' => 'quechua',
+ 'quc' => 'k’iche’',
+ 'qug' => 'quechua dell’altopiano del Chimborazo',
+ 'raj' => 'rajasthani',
+ 'rap' => 'rapanui',
+ 'rar' => 'rarotonga',
+ 'rgn' => 'romagnolo',
+ 'rif' => 'tarifit',
+ 'rm' => 'romancio',
+ 'rn' => 'rundi',
+ 'ro' => 'rumeno',
+ 'ro-md' => 'moldavo',
+ 'rof' => 'rombo',
+ 'rom' => 'romani',
+ 'rtm' => 'rotumano',
+ 'ru' => 'russo',
+ 'rue' => 'ruteno',
+ 'rug' => 'roviana',
+ 'rup' => 'arumeno',
+ 'rw' => 'kinyarwanda',
+ 'rwk' => 'rwa',
+ 'sa' => 'sanscrito',
+ 'sad' => 'sandawe',
+ 'sah' => 'yakut',
+ 'sam' => 'aramaico samaritano',
+ 'saq' => 'samburu',
+ 'sas' => 'sasak',
+ 'sat' => 'santali',
+ 'saz' => 'saurashtra',
+ 'sba' => 'ngambay',
+ 'sbp' => 'sangu',
+ 'sc' => 'sardo',
+ 'scn' => 'siciliano',
+ 'sco' => 'scozzese',
+ 'sd' => 'sindhi',
+ 'sdc' => 'sassarese',
+ 'se' => 'sami del nord',
+ 'see' => 'seneca',
+ 'seh' => 'sena',
+ 'sei' => 'seri',
+ 'sel' => 'selkup',
+ 'ses' => 'koyraboro senni',
+ 'sg' => 'sango',
+ 'sga' => 'irlandese antico',
+ 'sgs' => 'samogitico',
+ 'sh' => 'serbo-croato',
+ 'shi' => 'tashelhit',
+ 'shn' => 'shan',
+ 'shu' => 'chadian arabic',
+ 'si' => 'singalese',
+ 'sid' => 'sidamo',
+ 'sk' => 'slovacco',
+ 'sl' => 'sloveno',
+ 'sli' => 'tedesco slesiano',
+ 'sly' => 'selayar',
+ 'sm' => 'samoano',
+ 'sma' => 'sami del sud',
+ 'smj' => 'sami di Lule',
+ 'smn' => 'sami di Inari',
+ 'sms' => 'sami skolt',
+ 'sn' => 'shona',
+ 'snk' => 'soninke',
+ 'so' => 'somalo',
+ 'sog' => 'sogdiano',
+ 'sq' => 'albanese',
+ 'sr' => 'serbo',
+ 'srn' => 'sranan tongo',
+ 'srr' => 'serer',
+ 'ss' => 'swati',
+ 'ssy' => 'saho',
+ 'st' => 'sotho del sud',
+ 'stq' => 'saterfriesisch',
+ 'su' => 'sundanese',
+ 'suk' => 'sukuma',
+ 'sus' => 'susu',
+ 'sux' => 'sumero',
+ 'sv' => 'svedese',
+ 'sw' => 'swahili',
+ 'swb' => 'comoriano',
+ 'swc' => 'congo swahili',
+ 'syc' => 'siriaco classico',
+ 'syr' => 'siriaco',
+ 'szl' => 'slesiano',
+ 'ta' => 'tamil',
+ 'tcy' => 'tulu',
+ 'te' => 'telugu',
+ 'tem' => 'temne',
+ 'teo' => 'teso',
+ 'ter' => 'tereno',
+ 'tet' => 'tetum',
+ 'tg' => 'tagico',
+ 'th' => 'thai',
+ 'ti' => 'tigrino',
+ 'tig' => 'tigre',
+ 'tiv' => 'tiv',
+ 'tk' => 'turcomanno',
+ 'tkl' => 'tokelau',
+ 'tkr' => 'tsakhur',
+ 'tl' => 'tagalog',
+ 'tlh' => 'klingon',
+ 'tli' => 'tlingit',
+ 'tly' => 'taliscio',
+ 'tmh' => 'tamashek',
+ 'tn' => 'tswana',
+ 'to' => 'tongano',
+ 'tog' => 'nyasa del Tonga',
+ 'tpi' => 'tok pisin',
+ 'tr' => 'turco',
+ 'tru' => 'turoyo',
+ 'trv' => 'taroko',
+ 'ts' => 'tsonga',
+ 'tsd' => 'zaconico',
+ 'tsi' => 'tsimshian',
+ 'tt' => 'tataro',
+ 'ttt' => 'tat islamico',
+ 'tum' => 'tumbuka',
+ 'tvl' => 'tuvalu',
+ 'tw' => 'ci',
+ 'twq' => 'tasawaq',
+ 'ty' => 'taitiano',
+ 'tyv' => 'tuvinian',
+ 'tzm' => 'tamazight',
+ 'udm' => 'udmurt',
+ 'ug' => 'uiguro',
+ 'uga' => 'ugaritico',
+ 'uk' => 'ucraino',
+ 'umb' => 'mbundu',
+ 'und' => 'lingua imprecisata',
+ 'ur' => 'urdu',
+ 'uz' => 'usbeco',
+ 'vai' => 'vai',
+ 've' => 'venda',
+ 'vec' => 'veneto',
+ 'vep' => 'vepso',
+ 'vi' => 'vietnamita',
+ 'vls' => 'fiammingo occidentale',
+ 'vo' => 'volapük',
+ 'vot' => 'voto',
+ 'vro' => 'võro',
+ 'vun' => 'vunjo',
+ 'wa' => 'vallone',
+ 'wae' => 'walser',
+ 'wal' => 'walamo',
+ 'war' => 'waray',
+ 'was' => 'washo',
+ 'wo' => 'wolof',
+ 'wuu' => 'wu',
+ 'xal' => 'kalmyk',
+ 'xh' => 'xhosa',
+ 'xmf' => 'mengrelio',
+ 'xog' => 'soga',
+ 'yao' => 'yao (bantu)',
+ 'yap' => 'yapese',
+ 'yav' => 'yangben',
+ 'ybb' => 'yemba',
+ 'yi' => 'yiddish',
+ 'yo' => 'yoruba',
+ 'yrl' => 'nheengatu',
+ 'yue' => 'cantonese',
+ 'za' => 'zhuang',
+ 'zap' => 'zapotec',
+ 'zbl' => 'blissymbol',
+ 'zea' => 'zelandese',
+ 'zen' => 'zenaga',
+ 'zgh' => 'tamazight del Marocco standard',
+ 'zh' => 'cinese',
+ 'zh-hans' => 'cinese semplificato',
+ 'zh-hant' => 'cinese tradizionale',
+ 'zu' => 'zulu',
+ 'zun' => 'zuni',
+ 'zxx' => 'nessun contenuto linguistico',
+ 'zza' => 'zaza',
+);
+
+$currencyNames = array(
+ 'ADP' => 'Peseta Andorrana',
+ 'AED' => 'Dirham degli Emirati Arabi Uniti',
+ 'AFA' => 'Afgani (1927–2002)',
+ 'AFN' => 'Afghani',
+ 'ALL' => 'Lek Albanese',
+ 'AMD' => 'Dram armeno',
+ 'ANG' => 'Fiorino delle Antille Olandesi',
+ 'AOA' => 'Kwanza Angolano',
+ 'AOK' => 'Kwanza Angolano (1977–1990)',
+ 'AON' => 'Nuovo Kwanza Angolano (1990–2000)',
+ 'AOR' => 'Kwanza Reajustado Angolano (1995–1999)',
+ 'ARA' => 'Austral Argentino',
+ 'ARP' => 'Peso Argentino (vecchio Cod.)',
+ 'ARS' => 'Peso Argentino',
+ 'ATS' => 'Scellino Austriaco',
+ 'AUD' => 'Dollaro Australiano',
+ 'AWG' => 'Fiorino di Aruba',
+ 'AZM' => 'Manat azero (1993–2006)',
+ 'AZN' => 'Manat azero',
+ 'BAD' => 'Dinar Bosnia-Herzegovina',
+ 'BAM' => 'Marco Conv. Bosnia-Erzegovina',
+ 'BBD' => 'Dollaro di Barbados',
+ 'BDT' => 'Taka Bangladese',
+ 'BEC' => 'Franco Belga (convertibile)',
+ 'BEF' => 'Franco Belga',
+ 'BEL' => 'Franco Belga (finanziario)',
+ 'BGL' => 'Lev Bulgaro (1962–1999)',
+ 'BGN' => 'Lev bulgaro',
+ 'BHD' => 'Dinaro del Bahrein',
+ 'BIF' => 'Franco del Burundi',
+ 'BMD' => 'Dollaro delle Bermuda',
+ 'BND' => 'Dollaro del Brunei',
+ 'BOB' => 'Boliviano',
+ 'BOP' => 'Peso Boliviano',
+ 'BOV' => 'Mvdol Boliviano',
+ 'BRB' => 'Cruzeiro Novo Brasiliano (1967–1986)',
+ 'BRC' => 'Cruzado Brasiliano',
+ 'BRE' => 'Cruzeiro Brasiliano (1990–1993)',
+ 'BRL' => 'Real Brasiliano',
+ 'BRN' => 'Cruzado Novo Brasiliano',
+ 'BRR' => 'Cruzeiro Brasiliano',
+ 'BSD' => 'Dollaro delle Bahamas',
+ 'BTN' => 'Ngultrum Butanese',
+ 'BUK' => 'Kyat Birmano',
+ 'BWP' => 'Pula del Botswana',
+ 'BYB' => 'Nuovo Rublo Bielorussia (1994–1999)',
+ 'BYR' => 'Rublo Bielorussia',
+ 'BZD' => 'Dollaro del Belize',
+ 'CAD' => 'Dollaro Canadese',
+ 'CDF' => 'Franco Congolese',
+ 'CHF' => 'Franco svizzero',
+ 'CLF' => 'Unidades de Fomento Chilene',
+ 'CLP' => 'Peso Cileno',
+ 'CNY' => 'Renminbi cinese',
+ 'COP' => 'Peso Colombiano',
+ 'CRC' => 'Colón Costaricano',
+ 'CSD' => 'Antico Dinaro Serbo',
+ 'CSK' => 'Corona forte cecoslovacca',
+ 'CUC' => 'Peso Cubano Convertibile',
+ 'CUP' => 'Peso Cubano',
+ 'CVE' => 'Escudo del Capo Verde',
+ 'CYP' => 'Sterlina Cipriota',
+ 'CZK' => 'Corona Ceca',
+ 'DDM' => 'Ostmark della Germania Orientale',
+ 'DEM' => 'Marco Tedesco',
+ 'DJF' => 'Franco Gibutiano',
+ 'DKK' => 'Corona danese',
+ 'DOP' => 'Peso Dominicano',
+ 'DZD' => 'Dinaro Algerino',
+ 'ECS' => 'Sucre dell’Ecuador',
+ 'ECV' => 'Unidad de Valor Constante (UVC) dell’Ecuador',
+ 'EEK' => 'Corona dell’Estonia',
+ 'EGP' => 'Sterlina Egiziana',
+ 'ERN' => 'Nakfa Eritreo',
+ 'ESA' => 'Peseta Spagnola Account',
+ 'ESB' => 'Peseta Spagnola Account Convertibile',
+ 'ESP' => 'Peseta Spagnola',
+ 'ETB' => 'Birr Etiopico',
+ 'EUR' => 'Euro',
+ 'FIM' => 'Markka Finlandese',
+ 'FJD' => 'Dollaro delle Figi',
+ 'FKP' => 'Sterlina delle Falkland',
+ 'FRF' => 'Franco Francese',
+ 'GBP' => 'Sterlina Inglese',
+ 'GEK' => 'Kupon Larit Georgiano',
+ 'GEL' => 'Lari georgiano',
+ 'GHC' => 'Cedi del Ghana',
+ 'GHS' => 'Cedi ghanese',
+ 'GIP' => 'Sterlina di Gibilterra',
+ 'GMD' => 'Dalasi del Gambia',
+ 'GNF' => 'Franco della Guinea',
+ 'GNS' => 'Syli della Guinea',
+ 'GQE' => 'Ekwele della Guinea Equatoriale',
+ 'GRD' => 'Dracma Greca',
+ 'GTQ' => 'Quetzal Guatemalteco',
+ 'GWE' => 'Escudo della Guinea portoghese',
+ 'GWP' => 'Peso della Guinea-Bissau',
+ 'GYD' => 'Dollaro della Guyana',
+ 'HKD' => 'Dollaro di Hong Kong',
+ 'HNL' => 'Lempira Honduregna',
+ 'HRD' => 'Dinaro Croato',
+ 'HRK' => 'Kuna Croata',
+ 'HTG' => 'Gourde Haitiano',
+ 'HUF' => 'Fiorino Ungherese',
+ 'IDR' => 'Rupia Indonesiana',
+ 'IEP' => 'Sterlina irlandese',
+ 'ILP' => 'Sterlina Israeliana',
+ 'ILS' => 'Nuovo siclo israeliano',
+ 'INR' => 'Rupia Indiana',
+ 'IQD' => 'Dinaro iracheno',
+ 'IRR' => 'Rial Iraniano',
+ 'ISK' => 'Corona islandese',
+ 'ITL' => 'Lira Italiana',
+ 'JMD' => 'Dollaro Giamaicano',
+ 'JOD' => 'Dinaro giordano',
+ 'JPY' => 'Yen giapponese',
+ 'KES' => 'Scellino Keniota',
+ 'KGS' => 'Som Kirghiso',
+ 'KHR' => 'Riel Cambogiano',
+ 'KMF' => 'Franco Comoriano',
+ 'KPW' => 'Won Nordcoreano',
+ 'KRW' => 'Won Sudcoreano',
+ 'KWD' => 'Dinaro kuwaitiano',
+ 'KYD' => 'Dollaro delle Isole Cayman',
+ 'KZT' => 'Tenge kazako',
+ 'LAK' => 'Kip Laotiano',
+ 'LBP' => 'Lira libanese',
+ 'LKR' => 'Rupia di Sri Lanka',
+ 'LRD' => 'Dollaro Liberiano',
+ 'LSL' => 'Loti del Lesotho',
+ 'LTL' => 'Litas lituano',
+ 'LTT' => 'Talonas Lituani',
+ 'LUC' => 'Franco Convertibile del Lussemburgo',
+ 'LUF' => 'Franco del Lussemburgo',
+ 'LUL' => 'Franco Finanziario del Lussemburgo',
+ 'LVL' => 'Lats lettone',
+ 'LVR' => 'Rublo Lettone',
+ 'LYD' => 'Dinaro Libico',
+ 'MAD' => 'Dirham Marocchino',
+ 'MAF' => 'Franco Marocchino',
+ 'MDL' => 'Leu Moldavo',
+ 'MGA' => 'Ariary Malgascio',
+ 'MGF' => 'Franco Malgascio',
+ 'MKD' => 'Dinaro Macedone',
+ 'MLF' => 'Franco di Mali',
+ 'MMK' => 'Kyat di Myanmar',
+ 'MNT' => 'Tugrik mongolo',
+ 'MOP' => 'Pataca di Macao',
+ 'MRO' => 'Ouguiya della Mauritania',
+ 'MTL' => 'Lira Maltese',
+ 'MTP' => 'Sterlina Maltese',
+ 'MUR' => 'Rupia Mauriziana',
+ 'MVR' => 'Rufiyaa delle Maldive',
+ 'MWK' => 'Kwacha Malawiano',
+ 'MXN' => 'Peso Messicano',
+ 'MXP' => 'Peso messicano d’argento (1861–1992)',
+ 'MXV' => 'Unidad de Inversion (UDI) Messicana',
+ 'MYR' => 'Ringgit della Malesia',
+ 'MZE' => 'Escudo del Mozambico',
+ 'MZN' => 'Metical mozambicano',
+ 'NAD' => 'Dollaro Namibiano',
+ 'NGN' => 'Naira Nigeriana',
+ 'NIC' => 'Cordoba Nicaraguense',
+ 'NIO' => 'Córdoba Nicaraguense',
+ 'NLG' => 'Fiorino Olandese',
+ 'NOK' => 'Corona norvegese',
+ 'NPR' => 'Rupia Nepalese',
+ 'NZD' => 'Dollaro Neozelandese',
+ 'OMR' => 'Rial dell’Oman',
+ 'PAB' => 'Balboa di Panama',
+ 'PEI' => 'Inti Peruviano',
+ 'PEN' => 'Sol Nuevo Peruviano',
+ 'PES' => 'Sol Peruviano',
+ 'PGK' => 'Kina della Papua Nuova Guinea',
+ 'PHP' => 'Peso delle Filippine',
+ 'PKR' => 'Rupia del Pakistan',
+ 'PLN' => 'Złoty polacco',
+ 'PLZ' => 'Złoty Polacco (1950–1995)',
+ 'PTE' => 'Escudo Portoghese',
+ 'PYG' => 'Guaraní del Paraguay',
+ 'QAR' => 'Rial del Qatar',
+ 'RHD' => 'Dollaro della Rhodesia',
+ 'ROL' => 'Leu della Romania',
+ 'RON' => 'Leu Rumeno',
+ 'RSD' => 'Dinaro Serbo',
+ 'RUB' => 'Rublo Russo',
+ 'RUR' => 'Rublo della CSI',
+ 'RWF' => 'Franco Ruandese',
+ 'SAR' => 'Riyal saudita',
+ 'SBD' => 'Dollaro delle Isole Solomon',
+ 'SCR' => 'Rupia delle Seychelles',
+ 'SDD' => 'Dinaro Sudanese',
+ 'SDG' => 'Sterlina Sudanese',
+ 'SEK' => 'Corona svedese',
+ 'SGD' => 'Dollaro di Singapore',
+ 'SHP' => 'Sterlina di Sant’Elena',
+ 'SIT' => 'Tallero Sloveno',
+ 'SKK' => 'Corona Slovacca',
+ 'SLL' => 'Leone della Sierra Leone',
+ 'SOS' => 'Scellino Somalo',
+ 'SRD' => 'Dollaro Surinamese',
+ 'SRG' => 'Fiorino del Suriname',
+ 'SSP' => 'Sterlina sudsudanese',
+ 'STD' => 'Dobra di Sao Tomé e Principe',
+ 'SUR' => 'Rublo Sovietico',
+ 'SVC' => 'Colón Salvadoregno',
+ 'SYP' => 'Lira siriana',
+ 'SZL' => 'Lilangeni dello Swaziland',
+ 'THB' => 'Baht thailandese',
+ 'TJR' => 'Rublo del Tajikistan',
+ 'TJS' => 'Somoni del Tajikistan',
+ 'TMM' => 'Manat Turkmeno (1993–2009)',
+ 'TMT' => 'Manat Turkmeno',
+ 'TND' => 'Dinaro Tunisino',
+ 'TOP' => 'Paʻanga di Tonga',
+ 'TPE' => 'Escudo di Timor',
+ 'TRL' => 'Lira turca (1922–2005)',
+ 'TRY' => 'Lira turca',
+ 'TTD' => 'Dollaro di Trinidad e Tobago',
+ 'TWD' => 'Nuovo dollaro taiwanese',
+ 'TZS' => 'Scellino della Tanzania',
+ 'UAH' => 'Grivnia Ucraina',
+ 'UAK' => 'Karbovanetz Ucraino',
+ 'UGS' => 'Scellino Ugandese (1966–1987)',
+ 'UGX' => 'Scellino Ugandese',
+ 'USD' => 'Dollaro Statunitense',
+ 'USN' => 'Dollaro Statunitense (Next day)',
+ 'USS' => 'Dollaro Statunitense (Same day)',
+ 'UYI' => 'Peso uruguaiano in unità indicizzate',
+ 'UYP' => 'Peso Uruguaiano (1975–1993)',
+ 'UYU' => 'Peso Uruguaiano',
+ 'UZS' => 'Sum dell’Uzbekistan',
+ 'VEB' => 'Bolivar Venezuelano (1871–2008)',
+ 'VEF' => 'Bolívar Venezuelano',
+ 'VND' => 'Dong Vietnamita',
+ 'VUV' => 'Vatu di Vanuatu',
+ 'WST' => 'Tala della Samoa Occidentale',
+ 'XAF' => 'Franco CFA BEAC',
+ 'XAG' => 'Argento',
+ 'XAU' => 'Oro',
+ 'XBA' => 'Unità composita europea',
+ 'XBB' => 'Unità monetaria europea',
+ 'XBC' => 'Unità di acconto europea (XBC)',
+ 'XBD' => 'Unità di acconto europea (XBD)',
+ 'XCD' => 'Dollaro dei Caraibi Orientali',
+ 'XDR' => 'Diritti Speciali di Incasso',
+ 'XFO' => 'Franco Oro Francese',
+ 'XFU' => 'Franco UIC Francese',
+ 'XOF' => 'Franco CFA BCEAO',
+ 'XPD' => 'Palladio',
+ 'XPF' => 'Franco CFP',
+ 'XPT' => 'Platino',
+ 'XRE' => 'Fondi RINET',
+ 'XTS' => 'Codice di verifica della valuta',
+ 'XXX' => 'Valuta sconosciuta',
+ 'YDD' => 'Dinaro dello Yemen',
+ 'YER' => 'Riyal yemenita',
+ 'YUD' => 'Dinaro Forte Yugoslavo',
+ 'YUM' => 'Dinaro Noviy Yugoslavo',
+ 'YUN' => 'Dinaro Convertibile Yugoslavo',
+ 'ZAL' => 'Rand Sudafricano (finanziario)',
+ 'ZAR' => 'Rand Sudafricano',
+ 'ZMK' => 'Kwacha dello Zambia (1968–2012)',
+ 'ZMW' => 'Kwacha dello Zambia',
+ 'ZRN' => 'Nuovo Zaire dello Zaire',
+ 'ZRZ' => 'Zaire dello Zaire',
+ 'ZWD' => 'Dollaro dello Zimbabwe',
+ 'ZWL' => 'Dollaro Zimbabwiano (2009)',
+);
+
+$currencySymbols = array(
+ 'AED' => 'AED',
+ 'AFN' => 'AFN',
+ 'ALL' => 'ALL',
+ 'AMD' => 'AMD',
+ 'ANG' => 'ANG',
+ 'AOA' => 'AOA',
+ 'ARS' => 'ARS',
+ 'AUD' => 'A$',
+ 'AWG' => 'AWG',
+ 'AZN' => 'AZN',
+ 'BAM' => 'BAM',
+ 'BBD' => 'BBD',
+ 'BDT' => 'BDT',
+ 'BGN' => 'BGN',
+ 'BHD' => 'BHD',
+ 'BIF' => 'BIF',
+ 'BMD' => 'BMD',
+ 'BND' => 'BND',
+ 'BOB' => 'BOB',
+ 'BRL' => 'BRL',
+ 'BSD' => 'BSD',
+ 'BTN' => 'BTN',
+ 'BWP' => 'BWP',
+ 'BYR' => 'BYR',
+ 'BZD' => 'BZD',
+ 'CAD' => 'CA$',
+ 'CDF' => 'CDF',
+ 'CHF' => 'CHF',
+ 'CLP' => 'CLP',
+ 'CNY' => 'CN¥',
+ 'COP' => 'COP',
+ 'CRC' => 'CRC',
+ 'CUC' => 'CUC',
+ 'CUP' => 'CUP',
+ 'CVE' => 'CVE',
+ 'CZK' => 'CZK',
+ 'DJF' => 'DJF',
+ 'DKK' => 'DKK',
+ 'DOP' => 'DOP',
+ 'DZD' => 'DZD',
+ 'EGP' => 'EGP',
+ 'ERN' => 'ERN',
+ 'ETB' => 'ETB',
+ 'EUR' => '€',
+ 'FJD' => 'FJD',
+ 'FKP' => 'FKP',
+ 'GBP' => '£',
+ 'GEL' => 'GEL',
+ 'GHS' => 'GHS',
+ 'GIP' => 'GIP',
+ 'GMD' => 'GMD',
+ 'GNF' => 'GNF',
+ 'GTQ' => 'GTQ',
+ 'GYD' => 'GYD',
+ 'HKD' => 'HKD',
+ 'HNL' => 'HNL',
+ 'HRK' => 'HRK',
+ 'HTG' => 'HTG',
+ 'HUF' => 'HUF',
+ 'IDR' => 'IDR',
+ 'ILS' => '₪',
+ 'INR' => '₹',
+ 'IQD' => 'IQD',
+ 'IRR' => 'IRR',
+ 'ISK' => 'ISK',
+ 'JMD' => 'JMD',
+ 'JOD' => 'JOD',
+ 'JPY' => 'JPY',
+ 'KES' => 'KES',
+ 'KGS' => 'KGS',
+ 'KHR' => 'KHR',
+ 'KMF' => 'KMF',
+ 'KPW' => 'KPW',
+ 'KRW' => 'KRW',
+ 'KWD' => 'KWD',
+ 'KYD' => 'KYD',
+ 'KZT' => 'KZT',
+ 'LAK' => 'LAK',
+ 'LBP' => 'LBP',
+ 'LKR' => 'LKR',
+ 'LRD' => 'LRD',
+ 'LTL' => 'LTL',
+ 'LVL' => 'LVL',
+ 'LYD' => 'LYD',
+ 'MAD' => 'MAD',
+ 'MDL' => 'MDL',
+ 'MGA' => 'MGA',
+ 'MKD' => 'MKD',
+ 'MMK' => 'MMK',
+ 'MNT' => 'MNT',
+ 'MOP' => 'MOP',
+ 'MRO' => 'MRO',
+ 'MUR' => 'MUR',
+ 'MVR' => 'MVR',
+ 'MWK' => 'MWK',
+ 'MXN' => 'MXN',
+ 'MYR' => 'MYR',
+ 'MZN' => 'MZN',
+ 'NAD' => 'NAD',
+ 'NGN' => 'NGN',
+ 'NIO' => 'NIO',
+ 'NOK' => 'NOK',
+ 'NPR' => 'NPR',
+ 'NZD' => 'NZ$',
+ 'OMR' => 'OMR',
+ 'PAB' => 'PAB',
+ 'PEN' => 'PEN',
+ 'PGK' => 'PGK',
+ 'PHP' => 'PHP',
+ 'PKR' => 'PKR',
+ 'PLN' => 'PLN',
+ 'PYG' => 'PYG',
+ 'QAR' => 'QAR',
+ 'RON' => 'RON',
+ 'RSD' => 'RSD',
+ 'RUB' => 'RUB',
+ 'RWF' => 'RWF',
+ 'SAR' => 'SAR',
+ 'SBD' => 'SBD',
+ 'SCR' => 'SCR',
+ 'SDG' => 'SDG',
+ 'SEK' => 'SEK',
+ 'SGD' => 'SGD',
+ 'SHP' => 'SHP',
+ 'SLL' => 'SLL',
+ 'SOS' => 'SOS',
+ 'SRD' => 'SRD',
+ 'SSP' => 'SSP',
+ 'STD' => 'STD',
+ 'SYP' => 'SYP',
+ 'SZL' => 'SZL',
+ 'THB' => '฿',
+ 'TJS' => 'TJS',
+ 'TMT' => 'TMT',
+ 'TND' => 'TND',
+ 'TOP' => 'TOP',
+ 'TRY' => 'TRY',
+ 'TTD' => 'TTD',
+ 'TWD' => 'TWD',
+ 'TZS' => 'TZS',
+ 'UAH' => 'UAH',
+ 'UGX' => 'UGX',
+ 'USD' => 'US$',
+ 'UYU' => 'UYU',
+ 'UZS' => 'UZS',
+ 'VEF' => 'VEF',
+ 'VND' => '₫',
+ 'VUV' => 'VUV',
+ 'WST' => 'WST',
+ 'XAF' => 'FCFA',
+ 'XCD' => 'EC$',
+ 'XOF' => 'CFA',
+ 'XPF' => 'CFPF',
+ 'YER' => 'YER',
+ 'ZAR' => 'ZAR',
+ 'ZMW' => 'ZMW',
+);
+
+$countryNames = array(
+ 'AC' => 'Isola di Ascensione',
+ 'AD' => 'Andorra',
+ 'AE' => 'Emirati Arabi Uniti',
+ 'AF' => 'Afghanistan',
+ 'AG' => 'Antigua e Barbuda',
+ 'AI' => 'Anguilla',
+ 'AL' => 'Albania',
+ 'AM' => 'Armenia',
+ 'AN' => 'Antille Olandesi',
+ 'AO' => 'Angola',
+ 'AQ' => 'Antartide',
+ 'AR' => 'Argentina',
+ 'AS' => 'Samoa Americane',
+ 'AT' => 'Austria',
+ 'AU' => 'Australia',
+ 'AW' => 'Aruba',
+ 'AX' => 'Isole Aland',
+ 'AZ' => 'Azerbaigian',
+ 'BA' => 'Bosnia-Erzegovina',
+ 'BB' => 'Barbados',
+ 'BD' => 'Bangladesh',
+ 'BE' => 'Belgio',
+ 'BF' => 'Burkina Faso',
+ 'BG' => 'Bulgaria',
+ 'BH' => 'Bahrein',
+ 'BI' => 'Burundi',
+ 'BJ' => 'Benin',
+ 'BL' => 'Saint-Barthélemy',
+ 'BM' => 'Bermuda',
+ 'BN' => 'Brunei',
+ 'BO' => 'Bolivia',
+ 'BQ' => 'Caraibi Olandesi',
+ 'BR' => 'Brasile',
+ 'BS' => 'Bahamas',
+ 'BT' => 'Bhutan',
+ 'BV' => 'Isola Bouvet',
+ 'BW' => 'Botswana',
+ 'BY' => 'Bielorussia',
+ 'BZ' => 'Belize',
+ 'CA' => 'Canada',
+ 'CC' => 'Isole Cocos',
+ 'CD' => 'Congo - Kinshasa',
+ 'CF' => 'Repubblica Centrafricana',
+ 'CG' => 'Congo-Brazzaville',
+ 'CH' => 'Svizzera',
+ 'CI' => 'Costa d’Avorio',
+ 'CK' => 'Isole Cook',
+ 'CL' => 'Cile',
+ 'CM' => 'Camerun',
+ 'CN' => 'Cina',
+ 'CO' => 'Colombia',
+ 'CP' => 'Isola di Clipperton',
+ 'CR' => 'Costa Rica',
+ 'CU' => 'Cuba',
+ 'CV' => 'Capo Verde',
+ 'CW' => 'Curaçao',
+ 'CX' => 'Isola di Christmas',
+ 'CY' => 'Cipro',
+ 'CZ' => 'Repubblica Ceca',
+ 'DE' => 'Germania',
+ 'DG' => 'Diego Garcia',
+ 'DJ' => 'Gibuti',
+ 'DK' => 'Danimarca',
+ 'DM' => 'Dominica',
+ 'DO' => 'Repubblica Dominicana',
+ 'DZ' => 'Algeria',
+ 'EA' => 'Ceuta e Melilla',
+ 'EC' => 'Ecuador',
+ 'EE' => 'Estonia',
+ 'EG' => 'Egitto',
+ 'EH' => 'Sahara Occidentale',
+ 'ER' => 'Eritrea',
+ 'ES' => 'Spagna',
+ 'ET' => 'Etiopia',
+ 'EU' => 'Unione Europea',
+ 'FI' => 'Finlandia',
+ 'FJ' => 'Figi',
+ 'FK' => 'Isole Falkland',
+ 'FM' => 'Micronesia',
+ 'FO' => 'Isole Faroe',
+ 'FR' => 'Francia',
+ 'GA' => 'Gabon',
+ 'GB' => 'GB',
+ 'GD' => 'Grenada',
+ 'GE' => 'Georgia',
+ 'GF' => 'Guiana Francese',
+ 'GG' => 'Guernsey',
+ 'GH' => 'Ghana',
+ 'GI' => 'Gibilterra',
+ 'GL' => 'Groenlandia',
+ 'GM' => 'Gambia',
+ 'GN' => 'Guinea',
+ 'GP' => 'Guadalupa',
+ 'GQ' => 'Guinea Equatoriale',
+ 'GR' => 'Grecia',
+ 'GS' => 'Georgia del Sud e isole Sandwich meridionali',
+ 'GT' => 'Guatemala',
+ 'GU' => 'Guam',
+ 'GW' => 'Guinea-Bissau',
+ 'GY' => 'Guyana',
+ 'HK' => 'Hong-Kong',
+ 'HM' => 'Isole Heard ed Isole McDonald',
+ 'HN' => 'Honduras',
+ 'HR' => 'Croazia',
+ 'HT' => 'Haiti',
+ 'HU' => 'Ungheria',
+ 'IC' => 'Isole Canarie',
+ 'ID' => 'Indonesia',
+ 'IE' => 'Irlanda',
+ 'IL' => 'Israele',
+ 'IM' => 'Isola di Man',
+ 'IN' => 'India',
+ 'IO' => 'Territorio Britannico dell’Oceano Indiano',
+ 'IQ' => 'Iraq',
+ 'IR' => 'Iran',
+ 'IS' => 'Islanda',
+ 'IT' => 'Italia',
+ 'JE' => 'Jersey',
+ 'JM' => 'Giamaica',
+ 'JO' => 'Giordania',
+ 'JP' => 'Giappone',
+ 'KE' => 'Kenya',
+ 'KG' => 'Kirghizistan',
+ 'KH' => 'Cambogia',
+ 'KI' => 'Kiribati',
+ 'KM' => 'Comore',
+ 'KN' => 'Saint Kitts e Nevis',
+ 'KP' => 'Corea del Nord',
+ 'KR' => 'Corea del Sud',
+ 'KW' => 'Kuwait',
+ 'KY' => 'Isole Cayman',
+ 'KZ' => 'Kazakistan',
+ 'LA' => 'Laos',
+ 'LB' => 'Libano',
+ 'LC' => 'Saint Lucia',
+ 'LI' => 'Liechtenstein',
+ 'LK' => 'Sri Lanka',
+ 'LR' => 'Liberia',
+ 'LS' => 'Lesotho',
+ 'LT' => 'Lituania',
+ 'LU' => 'Lussemburgo',
+ 'LV' => 'Lettonia',
+ 'LY' => 'Libia',
+ 'MA' => 'Marocco',
+ 'MC' => 'Monaco',
+ 'MD' => 'Moldavia',
+ 'ME' => 'Montenegro',
+ 'MF' => 'Saint Martin',
+ 'MG' => 'Madagascar',
+ 'MH' => 'Isole Marshall',
+ 'MK' => 'Repubblica di Macedonia',
+ 'ML' => 'Mali',
+ 'MM' => 'Myanmar (Birmania)',
+ 'MN' => 'Mongolia',
+ 'MO' => 'Macao',
+ 'MP' => 'Isole Marianne Settentrionali',
+ 'MQ' => 'Martinica',
+ 'MR' => 'Mauritania',
+ 'MS' => 'Montserrat',
+ 'MT' => 'Malta',
+ 'MU' => 'Mauritius',
+ 'MV' => 'Maldive',
+ 'MW' => 'Malawi',
+ 'MX' => 'Messico',
+ 'MY' => 'Malesia',
+ 'MZ' => 'Mozambico',
+ 'NA' => 'Namibia',
+ 'NC' => 'Nuova Caledonia',
+ 'NE' => 'Niger',
+ 'NF' => 'Isola Norfolk',
+ 'NG' => 'Nigeria',
+ 'NI' => 'Nicaragua',
+ 'NL' => 'Paesi Bassi',
+ 'NO' => 'Norvegia',
+ 'NP' => 'Nepal',
+ 'NR' => 'Nauru',
+ 'NU' => 'Niue',
+ 'NZ' => 'Nuova Zelanda',
+ 'OM' => 'Oman',
+ 'PA' => 'Panamá',
+ 'PE' => 'Perù',
+ 'PF' => 'Polinesia Francese',
+ 'PG' => 'Papua Nuova Guinea',
+ 'PH' => 'Filippine',
+ 'PK' => 'Pakistan',
+ 'PL' => 'Polonia',
+ 'PM' => 'Saint Pierre e Miquelon',
+ 'PN' => 'Isole Pitcairn',
+ 'PR' => 'Portorico',
+ 'PS' => 'Palestina',
+ 'PT' => 'Portogallo',
+ 'PW' => 'Palau',
+ 'PY' => 'Paraguay',
+ 'QA' => 'Qatar',
+ 'QO' => 'Oceania lontana',
+ 'RE' => 'Réunion',
+ 'RO' => 'Romania',
+ 'RS' => 'Serbia',
+ 'RU' => 'Federazione Russa',
+ 'RW' => 'Ruanda',
+ 'SA' => 'Arabia Saudita',
+ 'SB' => 'Isole Solomon',
+ 'SC' => 'Seychelles',
+ 'SD' => 'Sudan',
+ 'SE' => 'Svezia',
+ 'SG' => 'Singapore',
+ 'SH' => 'Sant’Elena',
+ 'SI' => 'Slovenia',
+ 'SJ' => 'Svalbard e Jan Mayen',
+ 'SK' => 'Slovacchia',
+ 'SL' => 'Sierra Leone',
+ 'SM' => 'San Marino',
+ 'SN' => 'Senegal',
+ 'SO' => 'Somalia',
+ 'SR' => 'Suriname',
+ 'SS' => 'Sudan del Sud',
+ 'ST' => 'São Tomé e Príncipe',
+ 'SV' => 'El Salvador',
+ 'SX' => 'Sint Maarten',
+ 'SY' => 'Siria',
+ 'SZ' => 'Swaziland',
+ 'TA' => 'Tristan da Cunha',
+ 'TC' => 'Isole Turks e Caicos',
+ 'TD' => 'Ciad',
+ 'TF' => 'Territori australi francesi',
+ 'TG' => 'Togo',
+ 'TH' => 'Tailandia',
+ 'TJ' => 'Tagikistan',
+ 'TK' => 'Tokelau',
+ 'TL' => 'Timor Est',
+ 'TM' => 'Turkmenistan',
+ 'TN' => 'Tunisia',
+ 'TO' => 'Tonga',
+ 'TR' => 'Turchia',
+ 'TT' => 'Trinidad e Tobago',
+ 'TV' => 'Tuvalu',
+ 'TW' => 'Taiwan',
+ 'TZ' => 'Tanzania',
+ 'UA' => 'Ucraina',
+ 'UG' => 'Uganda',
+ 'UM' => 'Isole minori lontane dagli USA',
+ 'US' => 'USA',
+ 'UY' => 'Uruguay',
+ 'UZ' => 'Uzbekistan',
+ 'VA' => 'Città del Vaticano',
+ 'VC' => 'Saint Vincent e Grenadines',
+ 'VE' => 'Venezuela',
+ 'VG' => 'Isole Vergini Britanniche',
+ 'VI' => 'Isole Vergini Americane',
+ 'VN' => 'Vietnam',
+ 'VU' => 'Vanuatu',
+ 'WF' => 'Wallis e Futuna',
+ 'WS' => 'Samoa',
+ 'XK' => 'Kosovo',
+ 'YE' => 'Yemen',
+ 'YT' => 'Mayotte',
+ 'ZA' => 'Sudafrica',
+ 'ZM' => 'Zambia',
+ 'ZW' => 'Zimbabwe',
+);
+
+$timeUnits = array(
+ 'day-future-one' => 'tra {0} giorno',
+ 'day-future-other' => 'tra {0} giorni',
+ 'day-narrow-future-one' => 'tra {0} g',
+ 'day-narrow-future-other' => 'tra {0} gg',
+ 'day-narrow-past-one' => '{0} g fa',
+ 'day-narrow-past-other' => '{0} gg fa',
+ 'day-one' => '{0} giorno',
+ 'day-other' => '{0} giorni',
+ 'day-past-one' => '{0} giorno fa',
+ 'day-past-other' => '{0} giorni fa',
+ 'day-short-future-one' => 'tra {0} g',
+ 'day-short-future-other' => 'tra {0} gg',
+ 'day-short-past-one' => '{0} g fa',
+ 'day-short-past-other' => '{0} gg fa',
+ 'hour-future-one' => 'tra {0} ora',
+ 'hour-future-other' => 'tra {0} ore',
+ 'hour-narrow-future-one' => 'tra {0} h',
+ 'hour-narrow-future-other' => 'tra {0} h',
+ 'hour-narrow-past-one' => '{0} h fa',
+ 'hour-narrow-past-other' => '{0} h fa',
+ 'hour-one' => '{0} ora',
+ 'hour-other' => '{0} ore',
+ 'hour-past-one' => '{0} ora fa',
+ 'hour-past-other' => '{0} ore fa',
+ 'hour-short-future-one' => 'tra {0} h.',
+ 'hour-short-future-other' => 'tra {0} h.',
+ 'hour-short-past-one' => '{0} h. fa',
+ 'hour-short-past-other' => '{0} h. fa',
+ 'microsecond-one' => '{0} microsecondo',
+ 'microsecond-other' => '{0} microsecondi',
+ 'millisecond-one' => '{0} millisecondo',
+ 'millisecond-other' => '{0} millisecondi',
+ 'minute-future-one' => 'tra {0} minuto',
+ 'minute-future-other' => 'tra {0} minuti',
+ 'minute-narrow-future-one' => 'tra {0} min',
+ 'minute-narrow-future-other' => 'tra {0} min',
+ 'minute-narrow-past-one' => '{0} min fa',
+ 'minute-narrow-past-other' => '{0} min fa',
+ 'minute-one' => '{0} minuto',
+ 'minute-other' => '{0} minuti',
+ 'minute-past-one' => '{0} minuto fa',
+ 'minute-past-other' => '{0} minuti fa',
+ 'minute-short-future-one' => 'tra {0} min.',
+ 'minute-short-future-other' => 'tra {0} min.',
+ 'minute-short-past-one' => '{0} min. fa',
+ 'minute-short-past-other' => '{0} min. fa',
+ 'month-future-one' => 'tra {0} mese',
+ 'month-future-other' => 'tra {0} mesi',
+ 'month-narrow-future-one' => 'tra {0} mese',
+ 'month-narrow-future-other' => 'tra {0} mesi',
+ 'month-narrow-past-one' => '{0} mese fa',
+ 'month-narrow-past-other' => '{0} mesi fa',
+ 'month-one' => '{0} mese',
+ 'month-other' => '{0} mesi',
+ 'month-past-one' => '{0} mese fa',
+ 'month-past-other' => '{0} mesi fa',
+ 'month-short-future-one' => 'tra {0} mese',
+ 'month-short-future-other' => 'tra {0} mesi',
+ 'month-short-past-one' => '{0} mese fa',
+ 'month-short-past-other' => '{0} mesi fa',
+ 'nanosecond-one' => '{0} nanosecondo',
+ 'nanosecond-other' => '{0} nanosecondi',
+ 'quarter-future-one' => 'tra {0} trimestre',
+ 'quarter-future-other' => 'tra {0} trimestri',
+ 'quarter-narrow-future-one' => 'tra {0} trim.',
+ 'quarter-narrow-future-other' => 'tra {0} trim.',
+ 'quarter-narrow-past-one' => '{0} trim. fa',
+ 'quarter-narrow-past-other' => '{0} trim. fa',
+ 'quarter-past-one' => '{0} trimestre fa',
+ 'quarter-past-other' => '{0} trimestri fa',
+ 'quarter-short-future-one' => 'tra {0} trim.',
+ 'quarter-short-future-other' => 'tra {0} trim.',
+ 'quarter-short-past-one' => '{0} trim. fa',
+ 'quarter-short-past-other' => '{0} trim. fa',
+ 'second-future-one' => 'tra {0} secondo',
+ 'second-future-other' => 'tra {0} secondi',
+ 'second-narrow-future-one' => 'tra {0} s',
+ 'second-narrow-future-other' => 'tra {0} s',
+ 'second-narrow-past-one' => '{0} s fa',
+ 'second-narrow-past-other' => '{0} s fa',
+ 'second-one' => '{0} secondo',
+ 'second-other' => '{0} secondi',
+ 'second-past-one' => '{0} secondo fa',
+ 'second-past-other' => '{0} secondi fa',
+ 'second-short-future-one' => 'tra {0} sec.',
+ 'second-short-future-other' => 'tra {0} sec.',
+ 'second-short-past-one' => '{0} sec. fa',
+ 'second-short-past-other' => '{0} sec. fa',
+ 'week-future-one' => 'tra {0} settimana',
+ 'week-future-other' => 'tra {0} settimane',
+ 'week-narrow-future-one' => 'tra {0} sett.',
+ 'week-narrow-future-other' => 'tra {0} sett.',
+ 'week-narrow-past-one' => '{0} sett. fa',
+ 'week-narrow-past-other' => '{0} sett. fa',
+ 'week-one' => '{0} settimana',
+ 'week-other' => '{0} settimane',
+ 'week-past-one' => '{0} settimana fa',
+ 'week-past-other' => '{0} settimane fa',
+ 'week-short-future-one' => 'tra {0} sett.',
+ 'week-short-future-other' => 'tra {0} sett.',
+ 'week-short-past-one' => '{0} sett. fa',
+ 'week-short-past-other' => '{0} sett. fa',
+ 'year-future-one' => 'tra {0} anno',
+ 'year-future-other' => 'tra {0} anni',
+ 'year-narrow-future-one' => 'tra {0} anno',
+ 'year-narrow-future-other' => 'tra {0} anni',
+ 'year-narrow-past-one' => '{0} anno fa',
+ 'year-narrow-past-other' => '{0} anni fa',
+ 'year-one' => '{0} anno',
+ 'year-other' => '{0} anni',
+ 'year-past-one' => '{0} anno fa',
+ 'year-past-other' => '{0} anni fa',
+ 'year-short-future-one' => 'tra {0} anno',
+ 'year-short-future-other' => 'tra {0} anni',
+ 'year-short-past-one' => '{0} anno fa',
+ 'year-short-past-other' => '{0} anni fa',
+);
diff --git a/MLEB/cldr/CldrNames/CldrNamesJa.php b/MLEB/cldr/CldrNames/CldrNamesJa.php
new file mode 100644
index 00000000..3a313cbb
--- /dev/null
+++ b/MLEB/cldr/CldrNames/CldrNamesJa.php
@@ -0,0 +1,1528 @@
+<?php
+
+$languageNames = array(
+ 'aa' => 'アファル語',
+ 'ab' => 'アブハズ語',
+ 'ace' => 'アチェ語',
+ 'ach' => 'アチョリ語',
+ 'ada' => 'アダングメ語',
+ 'ady' => 'アディゲ語',
+ 'ae' => 'アヴェスタ語',
+ 'aeb' => 'チュニジア・アラビア語',
+ 'af' => 'アフリカーンス語',
+ 'afh' => 'アフリヒリ語',
+ 'agq' => 'アゲム語',
+ 'ain' => 'アイヌ語',
+ 'ak' => 'アカン語',
+ 'akk' => 'アッカド語',
+ 'akz' => 'アラバマ語',
+ 'ale' => 'アレウト語',
+ 'aln' => 'ゲグ・アルバニア語',
+ 'alt' => '南アルタイ語',
+ 'am' => 'アムハラ語',
+ 'an' => 'アラゴン語',
+ 'ang' => '古英語',
+ 'anp' => 'アンギカ語',
+ 'ar' => 'アラビア語',
+ 'ar-001' => '現代標準アラビア語',
+ 'arc' => 'アラム語',
+ 'arn' => 'アラウカン語',
+ 'aro' => 'アラオナ語',
+ 'arp' => 'アラパホー語',
+ 'arq' => 'アルジェリア・アラビア語',
+ 'arw' => 'アラワク語',
+ 'ary' => 'モロッコ・アラビア語',
+ 'arz' => 'エジプト・アラビア語',
+ 'as' => 'アッサム語',
+ 'asa' => 'アス語',
+ 'ase' => 'アメリカ手話',
+ 'ast' => 'アストゥリアス語',
+ 'av' => 'アヴァル語',
+ 'avk' => 'コタヴァ',
+ 'awa' => 'アワディー語',
+ 'ay' => 'アイマラ語',
+ 'az' => 'アゼルバイジャン語',
+ 'azb' => '南アゼルバイジャン語',
+ 'ba' => 'バシキール語',
+ 'bal' => 'バルーチー語',
+ 'ban' => 'バリ語',
+ 'bar' => 'バイエルン・オーストリア語',
+ 'bas' => 'バサ語',
+ 'bax' => 'バムン語',
+ 'bbc' => 'トバ・バタク語',
+ 'bbj' => 'ゴーマラ語',
+ 'be' => 'ベラルーシ語',
+ 'bej' => 'ベジャ語',
+ 'bem' => 'ベンバ語',
+ 'bew' => 'ベタウィ語',
+ 'bez' => 'ベナ語',
+ 'bfd' => 'バフット語',
+ 'bfq' => 'バダガ語',
+ 'bg' => 'ブルガリア語',
+ 'bho' => 'ボージュプリー語',
+ 'bi' => 'ビスラマ語',
+ 'bik' => 'ビコル語',
+ 'bin' => 'ビニ語',
+ 'bjn' => 'バンジャル語',
+ 'bkm' => 'コム語',
+ 'bla' => 'シクシカ語',
+ 'bm' => 'バンバラ語',
+ 'bn' => 'ベンガル語',
+ 'bo' => 'チベット語',
+ 'bpy' => 'ビシュヌプリヤ・マニプリ語',
+ 'bqi' => 'バフティヤーリー語',
+ 'br' => 'ブルトン語',
+ 'bra' => 'ブラジ語',
+ 'brh' => 'ブラフイ語',
+ 'brx' => 'ボド語',
+ 'bs' => 'ボスニア語',
+ 'bss' => 'アコース語',
+ 'bua' => 'ブリヤート語',
+ 'bug' => 'ブギ語',
+ 'bum' => 'ブル語',
+ 'byn' => 'ビリン語',
+ 'byv' => 'メドゥンバ語',
+ 'ca' => 'カタロニア語',
+ 'cad' => 'カドー語',
+ 'car' => 'カリブ語',
+ 'cay' => 'カユーガ語',
+ 'cch' => 'チャワイ語',
+ 'ce' => 'チェチェン語',
+ 'ceb' => 'セブアノ語',
+ 'cgg' => 'チガ語',
+ 'ch' => 'チャモロ語',
+ 'chb' => 'チブチャ語',
+ 'chg' => 'チャガタイ語',
+ 'chk' => 'チューク語',
+ 'chm' => 'マリ語',
+ 'chn' => 'チヌーク混成語',
+ 'cho' => 'チョクトー語',
+ 'chp' => 'チペワイアン語',
+ 'chr' => 'チェロキー語',
+ 'chy' => 'シャイアン語',
+ 'ckb' => 'クルド語(ソラニー)',
+ 'co' => 'コルシカ語',
+ 'cop' => 'コプト語',
+ 'cps' => 'カピス語',
+ 'cr' => 'クリー語',
+ 'crh' => 'クリミア・タタール語',
+ 'cs' => 'チェコ語',
+ 'csb' => 'カシューブ語',
+ 'cu' => '教会スラブ語',
+ 'cv' => 'チュヴァシ語',
+ 'cy' => 'ウェールズ語',
+ 'da' => 'デンマーク語',
+ 'dak' => 'ダコタ語',
+ 'dar' => 'ダルガン語',
+ 'dav' => 'タイタ語',
+ 'de' => 'ドイツ語',
+ 'de-ch' => '標準ドイツ語(スイス)',
+ 'del' => 'デラウェア語',
+ 'den' => 'スレイビー語',
+ 'dgr' => 'ドグリブ語',
+ 'din' => 'ディンカ語',
+ 'dje' => 'ザルマ語',
+ 'doi' => 'ドーグリー語',
+ 'dsb' => '低ソルビア語',
+ 'dtp' => '中央ドゥスン語',
+ 'dua' => 'ドゥアラ語',
+ 'dum' => '中世オランダ語',
+ 'dv' => 'ディベヒ語',
+ 'dyo' => 'ジョラ=フォニィ語',
+ 'dyu' => 'ジュラ語',
+ 'dz' => 'ゾンカ語',
+ 'dzg' => 'ダザガ語',
+ 'ebu' => 'エンブ語',
+ 'ee' => 'エウェ語',
+ 'efi' => 'エフィク語',
+ 'egl' => 'エミリア語',
+ 'egy' => '古代エジプト語',
+ 'eka' => 'エカジュク語',
+ 'el' => 'ギリシャ語',
+ 'elx' => 'エラム語',
+ 'en' => '英語',
+ 'en-au' => 'オーストラリア英語',
+ 'en-ca' => 'カナダ英語',
+ 'en-gb' => 'イギリス英語',
+ 'en-us' => 'アメリカ英語',
+ 'enm' => '中英語',
+ 'eo' => 'エスペラント語',
+ 'es' => 'スペイン語',
+ 'es-es' => 'スペイン語(イベリア半島)',
+ 'esu' => '中央アラスカ・ユピック語',
+ 'et' => 'エストニア語',
+ 'eu' => 'バスク語',
+ 'ewo' => 'エウォンド語',
+ 'ext' => 'エストレマドゥーラ語',
+ 'fa' => 'ペルシア語',
+ 'fan' => 'ファング語',
+ 'fat' => 'ファンティー語',
+ 'ff' => 'フラニ語',
+ 'fi' => 'フィンランド語',
+ 'fil' => 'フィリピノ語',
+ 'fit' => 'トルネダール・フィンランド語',
+ 'fj' => 'フィジー語',
+ 'fo' => 'フェロー語',
+ 'fon' => 'フォン語',
+ 'fr' => 'フランス語',
+ 'frc' => 'ケイジャン・フランス語',
+ 'frm' => '中期フランス語',
+ 'fro' => '古フランス語',
+ 'frp' => 'アルピタン語',
+ 'frr' => '北フリジア語',
+ 'frs' => '東フリジア語',
+ 'fur' => 'フリウリ語',
+ 'fy' => '西フリジア語',
+ 'ga' => 'アイルランド語',
+ 'gaa' => 'ガ語',
+ 'gag' => 'ガガウズ語',
+ 'gan' => '贛語',
+ 'gay' => 'ガヨ語',
+ 'gba' => 'バヤ語',
+ 'gbz' => 'ダリー語(ゾロアスター教)',
+ 'gd' => 'スコットランド・ゲール語',
+ 'gez' => 'ゲエズ語',
+ 'gil' => 'キリバス語',
+ 'gl' => 'ガリシア語',
+ 'glk' => 'ギラキ語',
+ 'gmh' => '中高ドイツ語',
+ 'gn' => 'グアラニー語',
+ 'goh' => '古高ドイツ語',
+ 'gom' => 'ゴア・コンカニ語',
+ 'gon' => 'ゴーンディー語',
+ 'gor' => 'ゴロンタロ語',
+ 'got' => 'ゴート語',
+ 'grb' => 'グレボ語',
+ 'grc' => '古代ギリシャ語',
+ 'gsw' => 'スイスドイツ語',
+ 'gu' => 'グジャラート語',
+ 'guc' => 'ワユ語',
+ 'gur' => 'フラフラ語',
+ 'guz' => 'グシイ語',
+ 'gv' => 'マン島語',
+ 'gwi' => 'グウィッチン語',
+ 'ha' => 'ハウサ語',
+ 'hai' => 'ハイダ語',
+ 'hak' => '客家語',
+ 'haw' => 'ハワイ語',
+ 'he' => 'ヘブライ語',
+ 'hi' => 'ヒンディー語',
+ 'hif' => 'フィジー・ヒンディー語',
+ 'hil' => 'ヒリガイノン語',
+ 'hit' => 'ヒッタイト語',
+ 'hmn' => 'フモン語',
+ 'ho' => 'ヒリモツ語',
+ 'hr' => 'クロアチア語',
+ 'hsb' => '上ソルビア語',
+ 'hsn' => '湘語',
+ 'ht' => 'ハイチ語',
+ 'hu' => 'ハンガリー語',
+ 'hup' => 'アタパスカ語',
+ 'hy' => 'アルメニア語',
+ 'hz' => 'ヘレロ語',
+ 'ia' => 'インターリングア',
+ 'iba' => 'イバン語',
+ 'ibb' => 'イビビオ語',
+ 'id' => 'インドネシア語',
+ 'ie' => 'インターリング',
+ 'ig' => 'イボ語',
+ 'ii' => '四川イ語',
+ 'ik' => 'イヌピアック語',
+ 'ilo' => 'イロカノ語',
+ 'inh' => 'イングーシ語',
+ 'io' => 'イド語',
+ 'is' => 'アイスランド語',
+ 'it' => 'イタリア語',
+ 'iu' => 'イヌクウティトット語',
+ 'izh' => 'イングリア語',
+ 'ja' => '日本語',
+ 'jam' => 'ジャマイカ・クレオール語',
+ 'jbo' => 'ロジバン語',
+ 'jgo' => 'ンゴンバ語',
+ 'jmc' => 'マチャメ語',
+ 'jpr' => 'ユダヤ・ペルシア語',
+ 'jrb' => 'ユダヤ・アラビア語',
+ 'jut' => 'ユトランド語',
+ 'jv' => 'ジャワ語',
+ 'ka' => 'グルジア語',
+ 'kaa' => 'カラカルパク語',
+ 'kab' => 'カビル語',
+ 'kac' => 'カチン語',
+ 'kaj' => 'カジェ語',
+ 'kam' => 'カンバ語',
+ 'kaw' => 'カウィ語',
+ 'kbd' => 'カバルド語',
+ 'kbl' => 'カネンブ語',
+ 'kcg' => 'カタブ語',
+ 'kde' => 'マコンデ語',
+ 'kea' => 'カーボベルデ・クレオール語',
+ 'ken' => 'ニャン語',
+ 'kfo' => 'コロ語',
+ 'kg' => 'コンゴ語',
+ 'kgp' => 'カインガング語',
+ 'kha' => 'カシ語',
+ 'kho' => 'コータン語',
+ 'khq' => 'コイラ・チーニ語',
+ 'khw' => 'コワール語',
+ 'ki' => 'キクユ語',
+ 'kiu' => 'キルマンジュキ語',
+ 'kj' => 'クワニャマ語',
+ 'kk' => 'カザフ語',
+ 'kkj' => 'カコ語',
+ 'kl' => 'グリーンランド語',
+ 'kln' => 'カレンジン語',
+ 'km' => 'クメール語',
+ 'kmb' => 'キンブンド語',
+ 'kn' => 'カンナダ語',
+ 'ko' => '韓国語',
+ 'koi' => 'コミ・ペルミャク語',
+ 'kok' => 'コンカニ語',
+ 'kos' => 'コスラエ語',
+ 'kpe' => 'クペレ語',
+ 'kr' => 'カヌリ語',
+ 'krc' => 'カラチャイ語',
+ 'kri' => 'クリオ語',
+ 'krj' => 'キナライア語',
+ 'krl' => 'カレリア語',
+ 'kru' => 'クルク語',
+ 'ks' => 'カシミール語',
+ 'ksb' => 'サンバー語',
+ 'ksf' => 'バフィア語',
+ 'ksh' => 'ケルン語',
+ 'ku' => 'クルド語',
+ 'kum' => 'クムク語',
+ 'kut' => 'クテナイ語',
+ 'kv' => 'コミ語',
+ 'kw' => 'コーンウォール語',
+ 'ky' => 'キルギス語',
+ 'la' => 'ラテン語',
+ 'lad' => 'ラディノ語',
+ 'lag' => 'ランギ語',
+ 'lah' => 'ラフンダー語',
+ 'lam' => 'ランバ語',
+ 'lb' => 'ルクセンブルク語',
+ 'lez' => 'レズギ語',
+ 'lfn' => 'リングア・フランカ・ノバ',
+ 'lg' => 'ガンダ語',
+ 'li' => 'リンブルフ語',
+ 'lij' => 'リグリア語',
+ 'liv' => 'リヴォニア語',
+ 'lkt' => 'ラコタ語',
+ 'lmo' => 'ロンバルド語',
+ 'ln' => 'リンガラ語',
+ 'lo' => 'ラオ語',
+ 'lol' => 'モンゴ語',
+ 'loz' => 'ロジ語',
+ 'lt' => 'リトアニア語',
+ 'ltg' => 'ラトガリア語',
+ 'lu' => 'ルバ・カタンガ語',
+ 'lua' => 'ルバ・ルルア語',
+ 'lui' => 'ルイセーニョ語',
+ 'lun' => 'ルンダ語',
+ 'luo' => 'ルオ語',
+ 'lus' => 'ルシャイ語',
+ 'luy' => 'ルヒヤ語',
+ 'lv' => 'ラトビア語',
+ 'lzh' => '漢文',
+ 'lzz' => 'ラズ語',
+ 'mad' => 'マドゥラ語',
+ 'maf' => 'マファ語',
+ 'mag' => 'マガヒー語',
+ 'mai' => 'マイティリー語',
+ 'mak' => 'マカッサル語',
+ 'man' => 'マンディンゴ語',
+ 'mas' => 'マサイ語',
+ 'mde' => 'マバ語',
+ 'mdf' => 'モクシャ語',
+ 'mdr' => 'マンダル語',
+ 'men' => 'メンデ語',
+ 'mer' => 'メル語',
+ 'mfe' => 'モーリシャス・クレオール語',
+ 'mg' => 'マダガスカル語',
+ 'mga' => '中期アイルランド語',
+ 'mgh' => 'マクア・ミート語',
+ 'mgo' => 'メタ語',
+ 'mh' => 'マーシャル語',
+ 'mi' => 'マオリ語',
+ 'mic' => 'ミクマク語',
+ 'min' => 'ミナンカバウ語',
+ 'mk' => 'マケドニア語',
+ 'ml' => 'マラヤーラム語',
+ 'mn' => 'モンゴル語',
+ 'mnc' => '満州語',
+ 'mni' => 'マニプリ語',
+ 'moh' => 'モーホーク語',
+ 'mos' => 'モシ語',
+ 'mr' => 'マラーティー語',
+ 'mrj' => '山地マリ語',
+ 'ms' => 'マレー語',
+ 'mt' => 'マルタ語',
+ 'mua' => 'ムンダン語',
+ 'mul' => '複数言語',
+ 'mus' => 'クリーク語',
+ 'mwl' => 'ミランダ語',
+ 'mwr' => 'マールワーリー語',
+ 'mwv' => 'メンタワイ語',
+ 'my' => 'ビルマ語',
+ 'mye' => 'ミエネ語',
+ 'myv' => 'エルジャ語',
+ 'mzn' => 'マーザンダラーン語',
+ 'na' => 'ナウル語',
+ 'nan' => '閩南語',
+ 'nap' => 'ナポリ語',
+ 'naq' => 'ナマ語',
+ 'nb' => 'ノルウェー語(ブークモール)',
+ 'nd' => '北ンデベレ語',
+ 'nds' => '低地ドイツ語',
+ 'ne' => 'ネパール語',
+ 'new' => 'ネワール語',
+ 'ng' => 'ンドンガ語',
+ 'nia' => 'ニアス語',
+ 'niu' => 'ニウーエイ語',
+ 'njo' => 'アオ・ナガ語',
+ 'nl' => 'オランダ語',
+ 'nl-be' => 'フレミッシュ語',
+ 'nmg' => 'クワシオ語',
+ 'nn' => 'ノルウェー語(ニーノシュク)',
+ 'nnh' => 'ンジエムブーン語',
+ 'no' => 'ノルウェー語',
+ 'nog' => 'ノガイ語',
+ 'non' => '古ノルド語',
+ 'nov' => 'ノヴィアル',
+ 'nqo' => 'ンコ語',
+ 'nr' => '南ンデベレ語',
+ 'nso' => '北部ソト語',
+ 'nus' => 'ヌエル語',
+ 'nv' => 'ナバホ語',
+ 'nwc' => '古典ネワール語',
+ 'ny' => 'ニャンジャ語',
+ 'nym' => 'ニャムウェジ語',
+ 'nyn' => 'ニャンコレ語',
+ 'nyo' => 'ニョロ語',
+ 'nzi' => 'ンゼマ語',
+ 'oc' => 'オック語',
+ 'oj' => 'オジブウェー語',
+ 'om' => 'オロモ語',
+ 'or' => 'オリヤー語',
+ 'os' => 'オセット語',
+ 'osa' => 'オセージ語',
+ 'ota' => 'オスマントルコ語',
+ 'pa' => 'パンジャブ語',
+ 'pag' => 'パンガシナン語',
+ 'pal' => 'パフラヴィー語',
+ 'pam' => 'パンパンガ語',
+ 'pap' => 'パピアメント語',
+ 'pau' => 'パラオ語',
+ 'pcd' => 'ピカルディ語',
+ 'pdc' => 'ペンシルベニア・ドイツ語',
+ 'pdt' => 'メノナイト低地ドイツ語',
+ 'peo' => '古代ペルシア語',
+ 'pfl' => 'プファルツ語',
+ 'phn' => 'フェニキア語',
+ 'pi' => 'パーリ語',
+ 'pl' => 'ポーランド語',
+ 'pms' => 'ピエモンテ語',
+ 'pnt' => 'ポントス・ギリシャ語',
+ 'pon' => 'ポンペイ語',
+ 'prg' => 'プロシア語',
+ 'pro' => '古期プロバンス語',
+ 'ps' => 'パシュトゥー語',
+ 'pt' => 'ポルトガル語',
+ 'pt-pt' => 'ポルトガル語(イベリア半島)',
+ 'qu' => 'ケチュア語',
+ 'quc' => 'キチェ語',
+ 'qug' => 'チンボラソ高地ケチュア語',
+ 'raj' => 'ラージャスターン語',
+ 'rap' => 'ラパヌイ語',
+ 'rar' => 'ラロトンガ語',
+ 'rgn' => 'ロマーニャ語',
+ 'rif' => 'リーフ語',
+ 'rm' => 'ロマンシュ語',
+ 'rn' => 'ルンディ語',
+ 'ro' => 'ルーマニア語',
+ 'ro-md' => 'モルダビア語',
+ 'rof' => 'ロンボ語',
+ 'rom' => 'ロマーニー語',
+ 'rtm' => 'ロツマ語',
+ 'ru' => 'ロシア語',
+ 'rue' => 'ルシン語',
+ 'rug' => 'ロヴィアナ語',
+ 'rup' => 'アルーマニア語',
+ 'rw' => 'ルワンダ語',
+ 'rwk' => 'ルワ語',
+ 'sa' => 'サンスクリット語',
+ 'sad' => 'サンダウェ語',
+ 'sah' => 'ヤクート語',
+ 'sam' => 'サマリア・アラム語',
+ 'saq' => 'サンブル語',
+ 'sas' => 'ササク語',
+ 'sat' => 'サンターリー語',
+ 'saz' => 'サウラーシュトラ語',
+ 'sba' => 'ンガムバイ語',
+ 'sbp' => 'サング語',
+ 'sc' => 'サルデーニャ語',
+ 'scn' => 'シチリア語',
+ 'sco' => 'スコットランド語',
+ 'sd' => 'シンド語',
+ 'sdc' => 'サッサリ・サルデーニャ語',
+ 'se' => '北サーミ語',
+ 'see' => 'セネカ語',
+ 'seh' => 'セナ語',
+ 'sei' => 'セリ語',
+ 'sel' => 'セリクプ語',
+ 'ses' => 'コイラボロ・センニ語',
+ 'sg' => 'サンゴ語',
+ 'sga' => '古期アイルランド語',
+ 'sgs' => 'サモギティア語)',
+ 'sh' => 'セルボ・クロアチア語',
+ 'shi' => 'タシルハイト語',
+ 'shn' => 'シャン語',
+ 'shu' => 'チャド・アラビア語',
+ 'si' => 'シンハラ語',
+ 'sid' => 'シダモ語',
+ 'sk' => 'スロバキア語',
+ 'sl' => 'スロベニア語',
+ 'sli' => '低シレジア語',
+ 'sly' => 'スラヤール語',
+ 'sm' => 'サモア語',
+ 'sma' => '南サーミ語',
+ 'smj' => 'ルレ・サーミ語',
+ 'smn' => 'イナリ・サーミ語',
+ 'sms' => 'スコルト・サーミ語',
+ 'sn' => 'ショナ語',
+ 'snk' => 'ソニンケ語',
+ 'so' => 'ソマリ語',
+ 'sog' => 'ソグド語',
+ 'sq' => 'アルバニア語',
+ 'sr' => 'セルビア語',
+ 'srn' => 'スリナム語',
+ 'srr' => 'セレル語',
+ 'ss' => 'スワジ語',
+ 'ssy' => 'サホ語',
+ 'st' => '南部ソト語',
+ 'stq' => 'ザーターフリジア語',
+ 'su' => 'スンダ語',
+ 'suk' => 'スクマ語',
+ 'sus' => 'スス語',
+ 'sux' => 'シュメール語',
+ 'sv' => 'スウェーデン語',
+ 'sw' => 'スワヒリ語',
+ 'swb' => 'コモロ語',
+ 'swc' => 'コンゴ・スワヒリ語',
+ 'syc' => '古典シリア語',
+ 'syr' => 'シリア語',
+ 'szl' => 'シレジア語',
+ 'ta' => 'タミル語',
+ 'tcy' => 'トゥル語',
+ 'te' => 'テルグ語',
+ 'tem' => 'テムネ語',
+ 'teo' => 'テソ語',
+ 'ter' => 'テレーノ語',
+ 'tet' => 'テトゥン語',
+ 'tg' => 'タジク語',
+ 'th' => 'タイ語',
+ 'ti' => 'ティグリニア語',
+ 'tig' => 'ティグレ語',
+ 'tiv' => 'ティブ語',
+ 'tk' => 'トルクメン語',
+ 'tkl' => 'トケラウ語',
+ 'tkr' => 'ツァフル語',
+ 'tl' => 'タガログ語',
+ 'tlh' => 'クリンゴン語',
+ 'tli' => 'トリンギット語',
+ 'tly' => 'タリシュ語',
+ 'tmh' => 'タマシェク語',
+ 'tn' => 'ツワナ語',
+ 'to' => 'トンガ語',
+ 'tog' => 'トンガ語(ニアサ)',
+ 'tpi' => 'トク・ピシン語',
+ 'tr' => 'トルコ語',
+ 'tru' => 'トゥロヨ語',
+ 'trv' => 'タロコ語',
+ 'ts' => 'ツォンガ語',
+ 'tsd' => 'ツァコン語',
+ 'tsi' => 'チムシュ語',
+ 'tt' => 'タタール語',
+ 'ttt' => 'ムスリム・タタール語',
+ 'tum' => 'トゥンブカ語',
+ 'tvl' => 'ツバル語',
+ 'tw' => 'トウィ語',
+ 'twq' => 'タサワク語',
+ 'ty' => 'タヒチ語',
+ 'tyv' => 'トゥヴァ語',
+ 'tzm' => '中央アトラス・タマジクト語',
+ 'udm' => 'ウドムルト語',
+ 'ug' => 'ウイグル語',
+ 'uga' => 'ウガリト語',
+ 'uk' => 'ウクライナ語',
+ 'umb' => 'ムブンドゥ語',
+ 'und' => '言語不明',
+ 'ur' => 'ウルドゥー語',
+ 'uz' => 'ウズベク語',
+ 'vai' => 'ヴァイ語',
+ 've' => 'ベンダ語',
+ 'vec' => 'ヴェネト語',
+ 'vep' => 'ヴェプス語',
+ 'vi' => 'ベトナム語',
+ 'vls' => '西フラマン語',
+ 'vmf' => 'マインフランク語',
+ 'vo' => 'ヴォラピュク語',
+ 'vot' => 'ヴォート語',
+ 'vro' => 'ヴォロ語',
+ 'vun' => 'ヴンジョ語',
+ 'wa' => 'ワロン語',
+ 'wae' => 'ヴァリス語',
+ 'wal' => 'ウォライタ語',
+ 'war' => 'ワライ語',
+ 'was' => 'ワショ語',
+ 'wo' => 'ウォロフ語',
+ 'wuu' => '呉語',
+ 'xal' => 'カルムイク語',
+ 'xh' => 'コサ語',
+ 'xmf' => 'メグレル語',
+ 'xog' => 'ソガ語',
+ 'yao' => 'ヤオ語',
+ 'yap' => 'ヤップ語',
+ 'yav' => 'ヤンベン語',
+ 'ybb' => 'イエンバ語',
+ 'yi' => 'イディッシュ語',
+ 'yo' => 'ヨルバ語',
+ 'yrl' => 'ニェエンガトゥ語',
+ 'yue' => '広東語',
+ 'za' => 'チワン語',
+ 'zap' => 'サポテカ語',
+ 'zbl' => 'ブリスシンボル',
+ 'zea' => 'ゼーラント語',
+ 'zen' => 'ゼナガ語',
+ 'zgh' => 'タマージク語(モロッコ公用語)',
+ 'zh' => '中国語',
+ 'zh-hans' => '簡体中国語',
+ 'zh-hant' => '繁体中国語',
+ 'zu' => 'ズールー語',
+ 'zun' => 'ズニ語',
+ 'zxx' => '言語的内容なし',
+ 'zza' => 'ザザ語',
+);
+
+$currencyNames = array(
+ 'ADP' => 'アンドラ ペセタ',
+ 'AED' => 'アラブ首長国連邦ディルハム',
+ 'AFA' => 'アフガニスタン アフガニー (1927–2002)',
+ 'AFN' => 'アフガニー',
+ 'ALK' => 'アルバニア レク (1946–1965)',
+ 'ALL' => 'アルバニア レク',
+ 'AMD' => 'アルメニア ドラム',
+ 'ANG' => 'オランダ領アンティル ギルダー',
+ 'AOA' => 'クワンザ',
+ 'AOK' => 'アンゴラ クワンザ (1977–1991)',
+ 'AON' => 'アンゴラ 新クワンザ (1990–2000)',
+ 'AOR' => 'アンゴラ 旧クワンザ (1995–1999)',
+ 'ARA' => 'アルゼンチン アゥストラール',
+ 'ARL' => 'アルゼンチン・ペソ・レイ(1970-1983)',
+ 'ARM' => 'アルゼンチン・ペソ(1881-1970)',
+ 'ARP' => 'アルゼンチン ペソ (1983–1985)',
+ 'ARS' => 'アルゼンチン ペソ',
+ 'ATS' => 'オーストリア シリング',
+ 'AUD' => 'オーストラリア ドル',
+ 'AWG' => 'アルバ ギルダー',
+ 'AZM' => 'アゼルバイジャン マナト (1993–2006)',
+ 'AZN' => 'アゼルバイジャン マナト',
+ 'BAD' => 'ボスニア・ヘルツェゴビナ ディナール (1992–1994)',
+ 'BAM' => 'ボスニア マルク (BAM)',
+ 'BAN' => 'ボスニア・ヘルツェゴビナ 新ディナール(1994-1997)',
+ 'BBD' => 'バルバドス ドル',
+ 'BDT' => 'バングラデシュ タカ',
+ 'BEC' => 'ベルギー フラン (BEC)',
+ 'BEF' => 'ベルギー フラン',
+ 'BEL' => 'ベルギー フラン (BEL)',
+ 'BGL' => 'ブルガリア レフ',
+ 'BGM' => 'ブルガリア社会主義 レフ',
+ 'BGN' => 'ブルガリア 新レフ',
+ 'BGO' => 'ブルガリア レフ(1879-1952)',
+ 'BHD' => 'バーレーン ディナール',
+ 'BIF' => 'ブルンジ フラン',
+ 'BMD' => 'バミューダ ドル',
+ 'BND' => 'ブルネイ ドル',
+ 'BOB' => 'ボリビア ボリビアーノ',
+ 'BOL' => 'ボリビア ボリビアーノ (1863–1963)',
+ 'BOP' => 'ボリビア ペソ',
+ 'BOV' => 'ボリビア (Mvdol)',
+ 'BRB' => 'ブラジル 新クルゼイロ (1967–1986)',
+ 'BRC' => 'ブラジル クルザード (1986–1989)',
+ 'BRE' => 'ブラジル クルゼイロ (1990–1993)',
+ 'BRL' => 'ブラジル レアル',
+ 'BRN' => 'ブラジル 新クルザード (1989–1990)',
+ 'BRR' => 'ブラジル クルゼイロ (1993–1994)',
+ 'BRZ' => 'ブラジル クルゼイロ(1942-1967)',
+ 'BSD' => 'バハマ ドル',
+ 'BTN' => 'ブータン ニュルタム',
+ 'BUK' => 'ビルマ チャット',
+ 'BWP' => 'ボツワナ プラ',
+ 'BYB' => 'ベラルーシ 新ルーブル (1994–1999)',
+ 'BYR' => 'ベラルーシ ルーブル',
+ 'BZD' => 'ベリーズ ドル',
+ 'CAD' => 'カナダ ドル',
+ 'CDF' => 'コンゴ フラン',
+ 'CHE' => 'ユーロ (WIR)',
+ 'CHF' => 'スイス フラン',
+ 'CHW' => 'フラン (WIR)',
+ 'CLE' => 'チリ エスクード',
+ 'CLF' => 'チリ ウニダ・デ・フォメント (UF)',
+ 'CLP' => 'チリ ペソ',
+ 'CNX' => '中国人民銀行ドル',
+ 'CNY' => '中国人民元',
+ 'COP' => 'コロンビア ペソ',
+ 'COU' => 'コロンビア レアル (UVR)',
+ 'CRC' => 'コスタリカ コロン',
+ 'CSD' => 'セルビア ディナール (2002–2006)',
+ 'CSK' => 'チェコスロバキア コルナ',
+ 'CUC' => 'キューバ 兌換ペソ',
+ 'CUP' => 'キューバ ペソ',
+ 'CVE' => 'カーボベルデ エスクード',
+ 'CYP' => 'キプロス ポンド',
+ 'CZK' => 'チェコ コルナ',
+ 'DDM' => '東ドイツ マルク',
+ 'DEM' => 'ドイツ マルク',
+ 'DJF' => 'ジブチ フラン',
+ 'DKK' => 'デンマーク クローネ',
+ 'DOP' => 'ドミニカ ペソ',
+ 'DZD' => 'アルジェリア ディナール',
+ 'ECS' => 'エクアドル スクレ',
+ 'ECV' => 'エクアドル (UVC)',
+ 'EEK' => 'エストニア クルーン',
+ 'EGP' => 'エジプト ポンド',
+ 'ERN' => 'エリトリア ナクファ',
+ 'ESA' => 'スペインペセタ(勘定A)',
+ 'ESB' => 'スペイン 兌換ペセタ',
+ 'ESP' => 'スペイン ペセタ',
+ 'ETB' => 'エチオピア ブル',
+ 'EUR' => 'ユーロ',
+ 'FIM' => 'フィンランド マルカ',
+ 'FJD' => 'フィジー諸島 ドル',
+ 'FKP' => 'フォークランド(マルビナス)諸島 ポンド',
+ 'FRF' => 'フランス フラン',
+ 'GBP' => '英国ポンド',
+ 'GEK' => 'グルジア クーポン ラリ',
+ 'GEL' => 'グルジア ラリ',
+ 'GHC' => 'ガーナ セディ (1979–2007)',
+ 'GHS' => 'ガーナ セディ',
+ 'GIP' => 'ジブラルタル ポンド',
+ 'GMD' => 'ガンビア ダラシ',
+ 'GNF' => 'ギニア フラン',
+ 'GNS' => 'ギニア シリー',
+ 'GQE' => '赤道ギニア エクウェレ',
+ 'GRD' => 'ギリシャ ドラクマ',
+ 'GTQ' => 'グアテマラ ケツァル',
+ 'GWE' => 'ポルトガル領ギニア エスクード',
+ 'GWP' => 'ギニアビサウ ペソ',
+ 'GYD' => 'ガイアナ ドル',
+ 'HKD' => '香港ドル',
+ 'HNL' => 'ホンジュラス レンピラ',
+ 'HRD' => 'クロアチア ディナール',
+ 'HRK' => 'クロアチア クーナ',
+ 'HTG' => 'ハイチ グールド',
+ 'HUF' => 'ハンガリー フォリント',
+ 'IDR' => 'インドネシア ルピア',
+ 'IEP' => 'アイリッシュ ポンド',
+ 'ILP' => 'イスラエル ポンド',
+ 'ILR' => 'イスラエル シェケル (1980–1985)',
+ 'ILS' => 'イスラエル新シェケル',
+ 'INR' => 'インド ルピー',
+ 'IQD' => 'イラク ディナール',
+ 'IRR' => 'イラン リアル',
+ 'ISJ' => 'アイスランド クローナ (1918–1981)',
+ 'ISK' => 'アイスランド クローナ',
+ 'ITL' => 'イタリア リラ',
+ 'JMD' => 'ジャマイカ ドル',
+ 'JOD' => 'ヨルダン ディナール',
+ 'JPY' => '日本円',
+ 'KES' => 'ケニア シリング',
+ 'KGS' => 'キルギスタン ソム',
+ 'KHR' => 'カンボジア リエル',
+ 'KMF' => 'コモロ フラン',
+ 'KPW' => '北朝鮮 ウォン',
+ 'KRH' => '韓国 ファン(1953-1962)',
+ 'KRO' => '韓国 ウォン(1945-1953)',
+ 'KRW' => '韓国 ウォン',
+ 'KWD' => 'クウェート ディナール',
+ 'KYD' => 'ケイマン諸島 ドル',
+ 'KZT' => 'カザフスタン テンゲ',
+ 'LAK' => 'ラオス キープ',
+ 'LBP' => 'レバノン ポンド',
+ 'LKR' => 'スリランカ ルピー',
+ 'LRD' => 'リベリア ドル',
+ 'LSL' => 'レソト ロティ',
+ 'LTL' => 'リトアニア リタス',
+ 'LTT' => 'リトアニア タロナ',
+ 'LUC' => 'ルクセンブルク 兌換フラン',
+ 'LUF' => 'ルクセンブルグ フラン',
+ 'LUL' => 'ルクセンブルク 金融フラン',
+ 'LVL' => 'ラトビア ラッツ',
+ 'LVR' => 'ラトビア ルーブル',
+ 'LYD' => 'リビア ディナール',
+ 'MAD' => 'モロッコ ディルハム',
+ 'MAF' => 'モロッコ フラン',
+ 'MCF' => 'モネガスク フラン',
+ 'MDC' => 'モルドバ クーポン',
+ 'MDL' => 'モルドバ レイ',
+ 'MGA' => 'マダガスカル アリアリ',
+ 'MGF' => 'マラガシ フラン',
+ 'MKD' => 'マケドニア デナル',
+ 'MKN' => 'マケドニア ディナール(1992-1993)',
+ 'MLF' => 'マリ フラン',
+ 'MMK' => 'ミャンマー チャット',
+ 'MNT' => 'モンゴル トグログ',
+ 'MOP' => 'マカオ パタカ',
+ 'MRO' => 'モーリタニア ウギア',
+ 'MTL' => 'マルタ リラ',
+ 'MTP' => 'マルタ ポンド',
+ 'MUR' => 'モーリシャス ルピー',
+ 'MVP' => 'モルディブ諸島 ルピー',
+ 'MVR' => 'モルディブ諸島 ルフィア',
+ 'MWK' => 'マラウィ クワチャ',
+ 'MXN' => 'メキシコ ペソ',
+ 'MXP' => 'メキシコ ペソ (1861–1992)',
+ 'MXV' => 'メキシコ (UDI)',
+ 'MYR' => 'マレーシア リンギット',
+ 'MZE' => 'モザンピーク エスクード',
+ 'MZM' => 'モザンビーク メティカル (1980–2006)',
+ 'MZN' => 'モザンビーク メティカル',
+ 'NAD' => 'ナミビア ドル',
+ 'NGN' => 'ナイジェリア ナイラ',
+ 'NIC' => 'ニカラグア コルドバ (1988–1991)',
+ 'NIO' => 'ニカラグア コルドバ オロ',
+ 'NLG' => 'オランダ ギルダー',
+ 'NOK' => 'ノルウェー クローネ',
+ 'NPR' => 'ネパール ルピー',
+ 'NZD' => 'ニュージーランド ドル',
+ 'OMR' => 'オマーン リアル',
+ 'PAB' => 'パナマ バルボア',
+ 'PEI' => 'ペルー インティ',
+ 'PEN' => 'ペルー 新ソル',
+ 'PES' => 'ペルー ソル (1863–1965)',
+ 'PGK' => 'パプアニューギニア キナ',
+ 'PHP' => 'フィリピン ペソ',
+ 'PKR' => 'パキスタン ルピー',
+ 'PLN' => 'ポーランド ズウォティ',
+ 'PLZ' => 'ポーランド ズウォティ (1950–1995)',
+ 'PTE' => 'ポルトガル エスクード',
+ 'PYG' => 'パラグアイ グアラニ',
+ 'QAR' => 'カタール リアル',
+ 'RHD' => 'ローデシア ドル',
+ 'ROL' => 'ルーマニア レイ (1952–2006)',
+ 'RON' => 'ルーマニア レイ',
+ 'RSD' => 'ディナール (セルビア)',
+ 'RUB' => 'ロシア ルーブル',
+ 'RUR' => 'ロシア ルーブル (1991–1998)',
+ 'RWF' => 'ルワンダ フラン',
+ 'SAR' => 'サウジ リヤル',
+ 'SBD' => 'ソロモン諸島 ドル',
+ 'SCR' => 'セーシェル ルピー',
+ 'SDD' => 'スーダン ディナール (1992–2007)',
+ 'SDG' => 'スーダン ポンド',
+ 'SDP' => 'スーダン ポンド (1957–1998)',
+ 'SEK' => 'スウェーデン クローナ',
+ 'SGD' => 'シンガポール ドル',
+ 'SHP' => 'セントヘレナ島 ポンド',
+ 'SIT' => 'スロベニア トラール',
+ 'SKK' => 'スロバキア コルナ',
+ 'SLL' => 'シエラレオネ レオン',
+ 'SOS' => 'ソマリア シリング',
+ 'SRD' => 'スリナム ドル',
+ 'SRG' => 'スリナム ギルダー',
+ 'SSP' => '南スーダン・ポンド',
+ 'STD' => 'サントメ・プリンシペ ドブラ',
+ 'SUR' => 'ソ連 ルーブル',
+ 'SVC' => 'エルサルバドル コロン',
+ 'SYP' => 'シリア ポンド',
+ 'SZL' => 'スワジランド リランゲニ',
+ 'THB' => 'タイ バーツ',
+ 'TJR' => 'タジキスタン ルーブル',
+ 'TJS' => 'タジキスタン ソモニ',
+ 'TMM' => 'トルクメニスタン マナト (1993–2009)',
+ 'TMT' => 'トルクメニスタン マナト',
+ 'TND' => 'チュニジア ディナール',
+ 'TOP' => 'トンガ パ・アンガ',
+ 'TPE' => 'ティモール エスクード',
+ 'TRL' => 'トルコ リラ (1922–2005)',
+ 'TRY' => '新トルコリラ',
+ 'TTD' => 'トリニダードトバゴ ドル',
+ 'TWD' => '新台湾ドル',
+ 'TZS' => 'タンザニア シリング',
+ 'UAH' => 'ウクライナ グリブナ',
+ 'UAK' => 'ウクライナ カルボバネツ',
+ 'UGS' => 'ウガンダ シリング (1966–1987)',
+ 'UGX' => 'ウガンダ シリング',
+ 'USD' => '米ドル',
+ 'USN' => '米ドル (翌日)',
+ 'USS' => '米ドル (当日)',
+ 'UYI' => 'ウルグアイ ペソエン',
+ 'UYP' => 'ウルグアイ ペソ (1975–1993)',
+ 'UYU' => 'ウルグアイ ペソ',
+ 'UZS' => 'ウズベキスタン スム',
+ 'VEB' => 'ベネズエラ ボリバル (1871–2008)',
+ 'VEF' => 'ベネズエラ ボリバル',
+ 'VND' => 'ベトナム ドン',
+ 'VNN' => 'ベトナム ドン(1978-1985)',
+ 'VUV' => 'バヌアツ バツ',
+ 'WST' => 'サモア タラ',
+ 'XAF' => 'CFA フラン(BEAC)',
+ 'XAG' => '銀',
+ 'XAU' => '金',
+ 'XBA' => 'ヨーロッパ混合単位 (EURCO)',
+ 'XBB' => 'ヨーロッパ通貨単位 (EMU–6)',
+ 'XBC' => 'ヨーロッパ勘定単位 (EUA–9)',
+ 'XBD' => 'ヨーロッパ勘定単位 (EUA–17)',
+ 'XCD' => '東カリブ ドル',
+ 'XDR' => '特別引き出し権',
+ 'XEU' => 'ヨーロッパ通貨単位',
+ 'XFO' => 'フランス金フラン',
+ 'XFU' => 'フランス フラン (UIC)',
+ 'XOF' => 'CFA フラン(BCEAO)',
+ 'XPD' => 'パラジウム',
+ 'XPF' => 'CFP フラン',
+ 'XPT' => 'プラチナ',
+ 'XRE' => 'RINET基金',
+ 'XSU' => 'スクレ',
+ 'XTS' => 'テスト用通貨コード',
+ 'XUA' => 'UA (アフリカ開発銀行)',
+ 'XXX' => '不明または無効な通貨',
+ 'YDD' => 'イエメン ディナール',
+ 'YER' => 'イエメン リアル',
+ 'YUD' => 'ユーゴスラビア ハード・ディナール (1966–1990)',
+ 'YUM' => 'ユーゴスラビア ノビ・ディナール (1994–2002)',
+ 'YUN' => 'ユーゴスラビア 兌換ディナール (1990–1992)',
+ 'YUR' => 'ユーゴスラビア 改革ディナール(1992-1993)',
+ 'ZAL' => '南アフリカ ランド (ZAL)',
+ 'ZAR' => '南アフリカ ランド',
+ 'ZMK' => 'ザンビア クワチャ (1968–2012)',
+ 'ZMW' => 'ザンビア クワチャ',
+ 'ZRN' => 'ザイール 新ザイール (1993–1998)',
+ 'ZRZ' => 'ザイール ザイール (1971–1993)',
+ 'ZWD' => 'ジンバブエ ドル (1980–2008)',
+ 'ZWL' => 'ジンバブエ ドル (2009)',
+ 'ZWR' => 'シンバブエ ドル(2008)',
+);
+
+$currencySymbols = array(
+ 'ADP' => 'ADP',
+ 'AED' => 'AED',
+ 'AFA' => 'AFA',
+ 'AFN' => 'AFN',
+ 'ALK' => 'ALK',
+ 'ALL' => 'ALL',
+ 'AMD' => 'AMD',
+ 'ANG' => 'ANG',
+ 'AOA' => 'AOA',
+ 'AOK' => 'AOK',
+ 'AON' => 'AON',
+ 'AOR' => 'AOR',
+ 'ARA' => 'ARA',
+ 'ARL' => 'ARL',
+ 'ARM' => 'ARM',
+ 'ARP' => 'ARP',
+ 'ARS' => 'ARS',
+ 'ATS' => 'ATS',
+ 'AUD' => 'AU$',
+ 'AWG' => 'AWG',
+ 'AZM' => 'AZM',
+ 'AZN' => 'AZN',
+ 'BAD' => 'BAD',
+ 'BAM' => 'BAM',
+ 'BAN' => 'BAN',
+ 'BBD' => 'BBD',
+ 'BDT' => 'BDT',
+ 'BEC' => 'BEC',
+ 'BEF' => 'BEF',
+ 'BEL' => 'BEL',
+ 'BGL' => 'BGL',
+ 'BGM' => 'BGM',
+ 'BGN' => 'BGN',
+ 'BGO' => 'BGO',
+ 'BHD' => 'BHD',
+ 'BIF' => 'BIF',
+ 'BMD' => 'BMD',
+ 'BND' => 'BND',
+ 'BOB' => 'BOB',
+ 'BOL' => 'BOL',
+ 'BOP' => 'BOP',
+ 'BOV' => 'BOV',
+ 'BRB' => 'BRB',
+ 'BRC' => 'BRC',
+ 'BRE' => 'BRE',
+ 'BRL' => 'R$',
+ 'BRN' => 'BRN',
+ 'BRR' => 'BRR',
+ 'BRZ' => 'BRZ',
+ 'BSD' => 'BSD',
+ 'BTN' => 'BTN',
+ 'BUK' => 'BUK',
+ 'BWP' => 'BWP',
+ 'BYB' => 'BYB',
+ 'BYR' => 'BYR',
+ 'BZD' => 'BZD',
+ 'CAD' => 'CA$',
+ 'CDF' => 'CDF',
+ 'CHE' => 'CHE',
+ 'CHF' => 'CHF',
+ 'CHW' => 'CHW',
+ 'CLE' => 'CLE',
+ 'CLF' => 'CLF',
+ 'CLP' => 'CLP',
+ 'CNX' => 'CNX',
+ 'CNY' => '元',
+ 'COP' => 'COP',
+ 'COU' => 'COU',
+ 'CRC' => 'CRC',
+ 'CSD' => 'CSD',
+ 'CSK' => 'CSK',
+ 'CUC' => 'CUC',
+ 'CUP' => 'CUP',
+ 'CVE' => 'CVE',
+ 'CYP' => 'CYP',
+ 'CZK' => 'CZK',
+ 'DDM' => 'DDM',
+ 'DEM' => 'DEM',
+ 'DJF' => 'DJF',
+ 'DKK' => 'DKK',
+ 'DOP' => 'DOP',
+ 'DZD' => 'DZD',
+ 'ECS' => 'ECS',
+ 'ECV' => 'ECV',
+ 'EEK' => 'EEK',
+ 'EGP' => 'EGP',
+ 'ERN' => 'ERN',
+ 'ESA' => 'ESA',
+ 'ESB' => 'ESB',
+ 'ESP' => 'ESP',
+ 'ETB' => 'ETB',
+ 'EUR' => '€',
+ 'FIM' => 'FIM',
+ 'FJD' => 'FJD',
+ 'FKP' => 'FKP',
+ 'FRF' => 'FRF',
+ 'GBP' => '£',
+ 'GEK' => 'GEK',
+ 'GEL' => 'GEL',
+ 'GHC' => 'GHC',
+ 'GHS' => 'GHS',
+ 'GIP' => 'GIP',
+ 'GMD' => 'GMD',
+ 'GNF' => 'GNF',
+ 'GNS' => 'GNS',
+ 'GQE' => 'GQE',
+ 'GRD' => 'GRD',
+ 'GTQ' => 'GTQ',
+ 'GWE' => 'GWE',
+ 'GWP' => 'GWP',
+ 'GYD' => 'GYD',
+ 'HKD' => 'HK$',
+ 'HNL' => 'HNL',
+ 'HRD' => 'HRD',
+ 'HRK' => 'HRK',
+ 'HTG' => 'HTG',
+ 'HUF' => 'HUF',
+ 'IDR' => 'IDR',
+ 'IEP' => 'IEP',
+ 'ILP' => 'ILP',
+ 'ILR' => 'ILR',
+ 'ILS' => '₪',
+ 'INR' => '₹',
+ 'IQD' => 'IQD',
+ 'IRR' => 'IRR',
+ 'ISJ' => 'ISJ',
+ 'ISK' => 'ISK',
+ 'ITL' => 'ITL',
+ 'JMD' => 'JMD',
+ 'JOD' => 'JOD',
+ 'JPY' => '¥',
+ 'KES' => 'KES',
+ 'KGS' => 'KGS',
+ 'KHR' => 'KHR',
+ 'KMF' => 'KMF',
+ 'KPW' => 'KPW',
+ 'KRH' => 'KRH',
+ 'KRO' => 'KRO',
+ 'KRW' => '₩',
+ 'KWD' => 'KWD',
+ 'KYD' => 'KYD',
+ 'KZT' => 'KZT',
+ 'LAK' => 'LAK',
+ 'LBP' => 'LBP',
+ 'LKR' => 'LKR',
+ 'LRD' => 'LRD',
+ 'LSL' => 'LSL',
+ 'LTL' => 'LTL',
+ 'LTT' => 'LTT',
+ 'LUC' => 'LUC',
+ 'LUF' => 'LUF',
+ 'LUL' => 'LUL',
+ 'LVL' => 'LVL',
+ 'LVR' => 'LVR',
+ 'LYD' => 'LYD',
+ 'MAD' => 'MAD',
+ 'MAF' => 'MAF',
+ 'MCF' => 'MCF',
+ 'MDC' => 'MDC',
+ 'MDL' => 'MDL',
+ 'MGA' => 'MGA',
+ 'MGF' => 'MGF',
+ 'MKD' => 'MKD',
+ 'MKN' => 'MKN',
+ 'MLF' => 'MLF',
+ 'MMK' => 'MMK',
+ 'MNT' => 'MNT',
+ 'MOP' => 'MOP',
+ 'MRO' => 'MRO',
+ 'MTL' => 'MTL',
+ 'MTP' => 'MTP',
+ 'MUR' => 'MUR',
+ 'MVP' => 'MVP',
+ 'MVR' => 'MVR',
+ 'MWK' => 'MWK',
+ 'MXN' => 'MX$',
+ 'MXP' => 'MXP',
+ 'MXV' => 'MXV',
+ 'MYR' => 'MYR',
+ 'MZE' => 'MZE',
+ 'MZM' => 'MZM',
+ 'MZN' => 'MZN',
+ 'NAD' => 'NAD',
+ 'NGN' => 'NGN',
+ 'NIC' => 'NIC',
+ 'NIO' => 'NIO',
+ 'NLG' => 'NLG',
+ 'NOK' => 'NOK',
+ 'NPR' => 'NPR',
+ 'NZD' => 'NZ$',
+ 'OMR' => 'OMR',
+ 'PAB' => 'PAB',
+ 'PEI' => 'PEI',
+ 'PEN' => 'PEN',
+ 'PES' => 'PES',
+ 'PGK' => 'PGK',
+ 'PHP' => 'PHP',
+ 'PKR' => 'PKR',
+ 'PLN' => 'PLN',
+ 'PLZ' => 'PLZ',
+ 'PTE' => 'PTE',
+ 'PYG' => 'PYG',
+ 'QAR' => 'QAR',
+ 'RHD' => 'RHD',
+ 'ROL' => 'ROL',
+ 'RON' => 'RON',
+ 'RSD' => 'RSD',
+ 'RUB' => 'RUB',
+ 'RUR' => 'RUR',
+ 'RWF' => 'RWF',
+ 'SAR' => 'SAR',
+ 'SBD' => 'SBD',
+ 'SCR' => 'SCR',
+ 'SDD' => 'SDD',
+ 'SDG' => 'SDG',
+ 'SDP' => 'SDP',
+ 'SEK' => 'SEK',
+ 'SGD' => 'SGD',
+ 'SHP' => 'SHP',
+ 'SIT' => 'SIT',
+ 'SKK' => 'SKK',
+ 'SLL' => 'SLL',
+ 'SOS' => 'SOS',
+ 'SRD' => 'SRD',
+ 'SRG' => 'SRG',
+ 'SSP' => 'SSP',
+ 'STD' => 'STD',
+ 'SUR' => 'SUR',
+ 'SVC' => 'SVC',
+ 'SYP' => 'SYP',
+ 'SZL' => 'SZL',
+ 'THB' => '฿',
+ 'TJR' => 'TJR',
+ 'TJS' => 'TJS',
+ 'TMM' => 'TMM',
+ 'TMT' => 'TMT',
+ 'TND' => 'TND',
+ 'TOP' => 'TOP',
+ 'TPE' => 'TPE',
+ 'TRL' => 'TRL',
+ 'TRY' => 'TRY',
+ 'TTD' => 'TTD',
+ 'TWD' => 'NT$',
+ 'TZS' => 'TZS',
+ 'UAH' => 'UAH',
+ 'UAK' => 'UAK',
+ 'UGS' => 'UGS',
+ 'UGX' => 'UGX',
+ 'USD' => '$',
+ 'USN' => 'USN',
+ 'USS' => 'USS',
+ 'UYI' => 'UYI',
+ 'UYP' => 'UYP',
+ 'UYU' => 'UYU',
+ 'UZS' => 'UZS',
+ 'VEB' => 'VEB',
+ 'VEF' => 'VEF',
+ 'VND' => '₫',
+ 'VNN' => 'VNN',
+ 'VUV' => 'VUV',
+ 'WST' => 'WST',
+ 'XAF' => 'FCFA',
+ 'XAG' => 'XAG',
+ 'XAU' => 'XAU',
+ 'XBA' => 'XBA',
+ 'XBB' => 'XBB',
+ 'XBC' => 'XBC',
+ 'XBD' => 'XBD',
+ 'XCD' => 'EC$',
+ 'XDR' => 'XDR',
+ 'XEU' => 'XEU',
+ 'XFO' => 'XFO',
+ 'XFU' => 'XFU',
+ 'XOF' => 'CFA',
+ 'XPD' => 'XPD',
+ 'XPF' => 'CFPF',
+ 'XPT' => 'XPT',
+ 'XRE' => 'XRE',
+ 'XSU' => 'XSU',
+ 'XTS' => 'XTS',
+ 'XUA' => 'XUA',
+ 'XXX' => 'XXX',
+ 'YDD' => 'YDD',
+ 'YER' => 'YER',
+ 'YUD' => 'YUD',
+ 'YUM' => 'YUM',
+ 'YUN' => 'YUN',
+ 'YUR' => 'YUR',
+ 'ZAL' => 'ZAL',
+ 'ZAR' => 'ZAR',
+ 'ZMK' => 'ZMK',
+ 'ZMW' => 'ZMW',
+ 'ZRN' => 'ZRN',
+ 'ZRZ' => 'ZRZ',
+ 'ZWD' => 'ZWD',
+ 'ZWL' => 'ZWL',
+ 'ZWR' => 'ZWR',
+);
+
+$countryNames = array(
+ 'AC' => 'アセンション島',
+ 'AD' => 'アンドラ',
+ 'AE' => 'アラブ首長国連邦',
+ 'AF' => 'アフガニスタン',
+ 'AG' => 'アンティグア・バーブーダ',
+ 'AI' => 'アンギラ',
+ 'AL' => 'アルバニア',
+ 'AM' => 'アルメニア',
+ 'AN' => 'オランダ領アンティル',
+ 'AO' => 'アンゴラ',
+ 'AQ' => '南極',
+ 'AR' => 'アルゼンチン',
+ 'AS' => '米領サモア',
+ 'AT' => 'オーストリア',
+ 'AU' => 'オーストラリア',
+ 'AW' => 'アルバ',
+ 'AX' => 'オーランド諸島',
+ 'AZ' => 'アゼルバイジャン',
+ 'BA' => 'ボスニア・ヘルツェゴビナ',
+ 'BB' => 'バルバドス',
+ 'BD' => 'バングラデシュ',
+ 'BE' => 'ベルギー',
+ 'BF' => 'ブルキナファソ',
+ 'BG' => 'ブルガリア',
+ 'BH' => 'バーレーン',
+ 'BI' => 'ブルンジ',
+ 'BJ' => 'ベナン',
+ 'BL' => 'サン・バルテルミー島',
+ 'BM' => 'バミューダ',
+ 'BN' => 'ブルネイ',
+ 'BO' => 'ボリビア',
+ 'BQ' => 'オランダ領カリブ',
+ 'BR' => 'ブラジル',
+ 'BS' => 'バハマ',
+ 'BT' => 'ブータン',
+ 'BV' => 'ブーベ島',
+ 'BW' => 'ボツワナ',
+ 'BY' => 'ベラルーシ',
+ 'BZ' => 'ベリーズ',
+ 'CA' => 'カナダ',
+ 'CC' => 'ココス(キーリング)諸島',
+ 'CD' => 'コンゴ民主共和国(キンシャサ)',
+ 'CF' => '中央アフリカ共和国',
+ 'CG' => 'コンゴ共和国(ブラザビル)',
+ 'CH' => 'スイス',
+ 'CI' => 'コートジボワール',
+ 'CK' => 'クック諸島',
+ 'CL' => 'チリ',
+ 'CM' => 'カメルーン',
+ 'CN' => '中国',
+ 'CO' => 'コロンビア',
+ 'CP' => 'クリッパートン島',
+ 'CR' => 'コスタリカ',
+ 'CU' => 'キューバ',
+ 'CV' => 'カーボベルデ',
+ 'CW' => 'キュラソー',
+ 'CX' => 'クリスマス島',
+ 'CY' => 'キプロス',
+ 'CZ' => 'チェコ共和国',
+ 'DE' => 'ドイツ',
+ 'DG' => 'ディエゴガルシア島',
+ 'DJ' => 'ジブチ',
+ 'DK' => 'デンマーク',
+ 'DM' => 'ドミニカ国',
+ 'DO' => 'ドミニカ共和国',
+ 'DZ' => 'アルジェリア',
+ 'EA' => 'セウタ・メリリャ',
+ 'EC' => 'エクアドル',
+ 'EE' => 'エストニア',
+ 'EG' => 'エジプト',
+ 'EH' => '西サハラ',
+ 'ER' => 'エリトリア',
+ 'ES' => 'スペイン',
+ 'ET' => 'エチオピア',
+ 'EU' => '欧州連合',
+ 'FI' => 'フィンランド',
+ 'FJ' => 'フィジー',
+ 'FK' => 'フォークランド諸島',
+ 'FM' => 'ミクロネシア連邦',
+ 'FO' => 'フェロー諸島',
+ 'FR' => 'フランス',
+ 'GA' => 'ガボン',
+ 'GB' => '英国',
+ 'GD' => 'グレナダ',
+ 'GE' => 'グルジア',
+ 'GF' => '仏領ギアナ',
+ 'GG' => 'ガーンジー',
+ 'GH' => 'ガーナ',
+ 'GI' => 'ジブラルタル',
+ 'GL' => 'グリーンランド',
+ 'GM' => 'ガンビア',
+ 'GN' => 'ギニア',
+ 'GP' => 'グアドループ',
+ 'GQ' => '赤道ギニア',
+ 'GR' => 'ギリシャ',
+ 'GS' => '南ジョージア島・南サンドイッチ諸島',
+ 'GT' => 'グアテマラ',
+ 'GU' => 'グアム',
+ 'GW' => 'ギニアビサウ',
+ 'GY' => 'ガイアナ',
+ 'HK' => '香港',
+ 'HM' => 'ハード島・マクドナルド諸島',
+ 'HN' => 'ホンジュラス',
+ 'HR' => 'クロアチア',
+ 'HT' => 'ハイチ',
+ 'HU' => 'ハンガリー',
+ 'IC' => 'カナリア諸島',
+ 'ID' => 'インドネシア',
+ 'IE' => 'アイルランド',
+ 'IL' => 'イスラエル',
+ 'IM' => 'マン島',
+ 'IN' => 'インド',
+ 'IO' => '英領インド洋地域',
+ 'IQ' => 'イラク',
+ 'IR' => 'イラン',
+ 'IS' => 'アイスランド',
+ 'IT' => 'イタリア',
+ 'JE' => 'ジャージー',
+ 'JM' => 'ジャマイカ',
+ 'JO' => 'ヨルダン',
+ 'JP' => '日本',
+ 'KE' => 'ケニア',
+ 'KG' => 'キルギス',
+ 'KH' => 'カンボジア',
+ 'KI' => 'キリバス',
+ 'KM' => 'コモロ',
+ 'KN' => 'セントクリストファー・ネイビス',
+ 'KP' => '朝鮮民主主義人民共和国',
+ 'KR' => '大韓民国',
+ 'KW' => 'クウェート',
+ 'KY' => 'ケイマン諸島',
+ 'KZ' => 'カザフスタン',
+ 'LA' => 'ラオス',
+ 'LB' => 'レバノン',
+ 'LC' => 'セントルシア',
+ 'LI' => 'リヒテンシュタイン',
+ 'LK' => 'スリランカ',
+ 'LR' => 'リベリア',
+ 'LS' => 'レソト',
+ 'LT' => 'リトアニア',
+ 'LU' => 'ルクセンブルグ',
+ 'LV' => 'ラトビア',
+ 'LY' => 'リビア',
+ 'MA' => 'モロッコ',
+ 'MC' => 'モナコ',
+ 'MD' => 'モルドバ',
+ 'ME' => 'モンテネグロ',
+ 'MF' => 'サン・マルタン',
+ 'MG' => 'マダガスカル',
+ 'MH' => 'マーシャル諸島',
+ 'MK' => 'マケドニア',
+ 'ML' => 'マリ',
+ 'MM' => 'ミャンマー',
+ 'MN' => 'モンゴル',
+ 'MO' => 'マカオ',
+ 'MP' => '北マリアナ諸島',
+ 'MQ' => 'マルティニーク',
+ 'MR' => 'モーリタニア',
+ 'MS' => 'モントセラト',
+ 'MT' => 'マルタ',
+ 'MU' => 'モーリシャス',
+ 'MV' => 'モルディブ',
+ 'MW' => 'マラウイ',
+ 'MX' => 'メキシコ',
+ 'MY' => 'マレーシア',
+ 'MZ' => 'モザンビーク',
+ 'NA' => 'ナミビア',
+ 'NC' => 'ニューカレドニア',
+ 'NE' => 'ニジェール',
+ 'NF' => 'ノーフォーク島',
+ 'NG' => 'ナイジェリア',
+ 'NI' => 'ニカラグア',
+ 'NL' => 'オランダ',
+ 'NO' => 'ノルウェー',
+ 'NP' => 'ネパール',
+ 'NR' => 'ナウル',
+ 'NU' => 'ニウエ島',
+ 'NZ' => 'ニュージーランド',
+ 'OM' => 'オマーン',
+ 'PA' => 'パナマ',
+ 'PE' => 'ペルー',
+ 'PF' => '仏領ポリネシア',
+ 'PG' => 'パプアニューギニア',
+ 'PH' => 'フィリピン',
+ 'PK' => 'パキスタン',
+ 'PL' => 'ポーランド',
+ 'PM' => 'サンピエール島・ミクロン島',
+ 'PN' => 'ピトケアン諸島',
+ 'PR' => 'プエルトリコ',
+ 'PS' => 'パレスチナ',
+ 'PT' => 'ポルトガル',
+ 'PW' => 'パラオ',
+ 'PY' => 'パラグアイ',
+ 'QA' => 'カタール',
+ 'QO' => 'オセアニア周辺地域',
+ 'RE' => 'レユニオン島',
+ 'RO' => 'ルーマニア',
+ 'RS' => 'セルビア',
+ 'RU' => 'ロシア',
+ 'RW' => 'ルワンダ',
+ 'SA' => 'サウジアラビア',
+ 'SB' => 'ソロモン諸島',
+ 'SC' => 'セーシェル',
+ 'SD' => 'スーダン',
+ 'SE' => 'スウェーデン',
+ 'SG' => 'シンガポール',
+ 'SH' => 'セントヘレナ',
+ 'SI' => 'スロベニア',
+ 'SJ' => 'スバールバル諸島・ヤンマイエン島',
+ 'SK' => 'スロバキア',
+ 'SL' => 'シエラレオネ',
+ 'SM' => 'サンマリノ',
+ 'SN' => 'セネガル',
+ 'SO' => 'ソマリア',
+ 'SR' => 'スリナム',
+ 'SS' => '南スーダン',
+ 'ST' => 'サントメ・プリンシペ',
+ 'SV' => 'エルサルバドル',
+ 'SX' => 'シント・マールテン',
+ 'SY' => 'シリア',
+ 'SZ' => 'スワジランド',
+ 'TA' => 'トリスタン・ダ・クーニャ',
+ 'TC' => 'タークス・カイコス諸島',
+ 'TD' => 'チャド',
+ 'TF' => '仏領極南諸島',
+ 'TG' => 'トーゴ',
+ 'TH' => 'タイ',
+ 'TJ' => 'タジキスタン',
+ 'TK' => 'トケラウ',
+ 'TL' => '東ティモール',
+ 'TM' => 'トルクメニスタン',
+ 'TN' => 'チュニジア',
+ 'TO' => 'トンガ',
+ 'TR' => 'トルコ',
+ 'TT' => 'トリニダード・トバゴ',
+ 'TV' => 'ツバル',
+ 'TW' => '台湾',
+ 'TZ' => 'タンザニア',
+ 'UA' => 'ウクライナ',
+ 'UG' => 'ウガンダ',
+ 'UM' => '米領太平洋諸島',
+ 'US' => 'アメリカ',
+ 'UY' => 'ウルグアイ',
+ 'UZ' => 'ウズベキスタン',
+ 'VA' => 'バチカン市国',
+ 'VC' => 'セントビンセント・グレナディーン諸島',
+ 'VE' => 'ベネズエラ',
+ 'VG' => '英領ヴァージン諸島',
+ 'VI' => '米領ヴァージン諸島',
+ 'VN' => 'ベトナム',
+ 'VU' => 'バヌアツ',
+ 'WF' => 'ウォリス・フツナ',
+ 'WS' => 'サモア',
+ 'XK' => 'コソボ',
+ 'YE' => 'イエメン',
+ 'YT' => 'マヨット島',
+ 'ZA' => '南アフリカ',
+ 'ZM' => 'ザンビア',
+ 'ZW' => 'ジンバブエ',
+);
+
+$timeUnits = array(
+ 'day-future-other' => '{0} 日後',
+ 'day-narrow-future-other' => '{0} 日後',
+ 'day-narrow-past-other' => '{0} 日前',
+ 'day-other' => '{0} 日',
+ 'day-past-other' => '{0} 日前',
+ 'day-short-future-other' => '{0} 日後',
+ 'day-short-past-other' => '{0} 日前',
+ 'hour-future-other' => '{0} 時間後',
+ 'hour-narrow-future-other' => '{0} 時間後',
+ 'hour-narrow-past-other' => '{0} 時間前',
+ 'hour-other' => '{0} 時間',
+ 'hour-past-other' => '{0} 時間前',
+ 'hour-short-future-other' => '{0} 時間後',
+ 'hour-short-past-other' => '{0} 時間前',
+ 'microsecond-other' => '{0} マイクロ秒',
+ 'millisecond-other' => '{0} ミリ秒',
+ 'minute-future-other' => '{0} 分後',
+ 'minute-narrow-future-other' => '{0} 分後',
+ 'minute-narrow-past-other' => '{0} 分前',
+ 'minute-other' => '{0} 分',
+ 'minute-past-other' => '{0} 分前',
+ 'minute-short-future-other' => '{0} 分後',
+ 'minute-short-past-other' => '{0} 分前',
+ 'month-future-other' => '{0} か月後',
+ 'month-narrow-future-other' => '{0} か月後',
+ 'month-narrow-past-other' => '{0} か月前',
+ 'month-other' => '{0} か月',
+ 'month-past-other' => '{0} か月前',
+ 'month-short-future-other' => '{0} か月後',
+ 'month-short-past-other' => '{0} か月前',
+ 'nanosecond-other' => '{0} ナノ秒',
+ 'quarter-future-other' => '{0} 四半期後',
+ 'quarter-narrow-future-other' => '{0} 四半期後',
+ 'quarter-narrow-past-other' => '{0} 四半期前',
+ 'quarter-past-other' => '{0} 四半期前',
+ 'quarter-short-future-other' => '{0} 四半期後',
+ 'quarter-short-past-other' => '{0} 四半期前',
+ 'second-future-other' => '{0} 秒後',
+ 'second-narrow-future-other' => '{0} 秒後',
+ 'second-narrow-past-other' => '{0} 秒前',
+ 'second-other' => '{0} 秒',
+ 'second-past-other' => '{0} 秒前',
+ 'second-short-future-other' => '{0} 秒後',
+ 'second-short-past-other' => '{0} 秒前',
+ 'week-future-other' => '{0} 週間後',
+ 'week-narrow-future-other' => '{0} 週間後',
+ 'week-narrow-past-other' => '{0} 週間前',
+ 'week-other' => '{0} 週間',
+ 'week-past-other' => '{0} 週間前',
+ 'week-short-future-other' => '{0} 週間後',
+ 'week-short-past-other' => '{0} 週間前',
+ 'year-future-other' => '{0} 年後',
+ 'year-narrow-future-other' => '{0} 年後',
+ 'year-narrow-past-other' => '{0} 年前',
+ 'year-other' => '{0} 年',
+ 'year-past-other' => '{0} 年前',
+ 'year-short-future-other' => '{0} 年後',
+ 'year-short-past-other' => '{0} 年前',
+);
diff --git a/MLEB/cldr/CldrNames/CldrNamesKa.php b/MLEB/cldr/CldrNames/CldrNamesKa.php
new file mode 100644
index 00000000..6ffaa473
--- /dev/null
+++ b/MLEB/cldr/CldrNames/CldrNamesKa.php
@@ -0,0 +1,1189 @@
+<?php
+
+$languageNames = array(
+ 'aa' => 'აფარი',
+ 'ab' => 'აფხაზური',
+ 'ace' => 'აჩეხური',
+ 'ach' => 'აჩოლი',
+ 'ada' => 'ადანგმე',
+ 'ady' => 'ადიღეური',
+ 'ae' => 'ავესტური',
+ 'af' => 'აფრიკაანსი',
+ 'agq' => 'აღემი',
+ 'ain' => 'აინუური',
+ 'ak' => 'აკანი',
+ 'akk' => 'აქადური',
+ 'ale' => 'ალეუტური',
+ 'alt' => 'სამხრეთ ალთაური',
+ 'am' => 'ამჰარული',
+ 'an' => 'არაგონული',
+ 'ang' => 'ძველი ინგლისური',
+ 'anp' => 'ანგიკა',
+ 'ar' => 'არაბული',
+ 'ar-001' => 'თანამედროვე სტანდარტული არაბული',
+ 'arc' => 'არამეული',
+ 'arn' => 'მაპუდუნგუნი',
+ 'arp' => 'არაპაჰო',
+ 'arw' => 'არავაკი',
+ 'as' => 'ასამური',
+ 'asa' => 'ასუ',
+ 'ast' => 'ასტურიული',
+ 'av' => 'ხუნძური',
+ 'awa' => 'ავადი',
+ 'ay' => 'აიმარა',
+ 'az' => 'აზერბაიჯანული',
+ 'ba' => 'ბაშკირული',
+ 'bal' => 'ბელუჯი',
+ 'ban' => 'ბალინური',
+ 'bas' => 'ბასა',
+ 'bax' => 'ბამუნი',
+ 'be' => 'ბელორუსული',
+ 'bej' => 'ბეჯა',
+ 'bem' => 'ბემბა',
+ 'bez' => 'ბენა',
+ 'bg' => 'ბულგარული',
+ 'bho' => 'ბოჯპური',
+ 'bm' => 'ბამბარა',
+ 'bn' => 'ბენგალური',
+ 'bo' => 'ტიბეტური',
+ 'br' => 'ბრეტონული',
+ 'bra' => 'ბრაჯი',
+ 'brx' => 'ბოდო',
+ 'bs' => 'ბოსნიური',
+ 'bua' => 'ბურიატული',
+ 'byn' => 'ბილინი',
+ 'ca' => 'კატალანური',
+ 'cay' => 'კაიუგა',
+ 'ce' => 'ჩეჩნური',
+ 'cgg' => 'ჩიგა',
+ 'chb' => 'ჩიბჩა',
+ 'chm' => 'მარიული',
+ 'chn' => 'ჩინუკი ვავა',
+ 'cho' => 'ჩოკტო',
+ 'chp' => 'დენე სულინე',
+ 'chr' => 'ჩეროკი',
+ 'chy' => 'ჩეიენი',
+ 'ckb' => 'სორანი ქურთული',
+ 'co' => 'კორსიკული',
+ 'cop' => 'კოპტური',
+ 'cr' => 'კრი',
+ 'crh' => 'ყირიმულ-თურქული',
+ 'cs' => 'ჩეხური',
+ 'csb' => 'კაშუბური',
+ 'cu' => 'საეკლესიო სლავური',
+ 'cv' => 'ჩუვაშური',
+ 'cy' => 'უელსური',
+ 'da' => 'დანიური',
+ 'dak' => 'დაკოტა',
+ 'dar' => 'დარგუული',
+ 'dav' => 'ტაიტა',
+ 'de' => 'გერმანული',
+ 'de-at' => 'ავსტრიული გერმანული',
+ 'de-ch' => 'შვეიცარიული ზემოგერმანული',
+ 'del' => 'დელავარული',
+ 'den' => 'სლეივი',
+ 'dgr' => 'დოგრიბი',
+ 'din' => 'დინკა',
+ 'dje' => 'ზარმა',
+ 'doi' => 'დოგრი',
+ 'dsb' => 'ქვემოსორბული',
+ 'dua' => 'დუალა',
+ 'dum' => 'საშუალო ჰოლანდიური',
+ 'dv' => 'დივეჰი',
+ 'dyo' => 'დიოლა',
+ 'dyu' => 'დიულა',
+ 'dz' => 'ძონგკხა',
+ 'ebu' => 'ემბუ',
+ 'ee' => 'ევე',
+ 'efi' => 'ეფიკი',
+ 'egy' => 'ძველეგვიპტური',
+ 'el' => 'ბერძნული',
+ 'en' => 'ინგლისური',
+ 'en-au' => 'ავსტრალიური ინგლისური',
+ 'en-ca' => 'კანადური ინგლისური',
+ 'en-gb' => 'ბრიტანული ინგლისური',
+ 'en-us' => 'ამერიკული ინგლისური',
+ 'enm' => 'საშუალო ინგლისური',
+ 'eo' => 'ესპერანტო',
+ 'es' => 'ესპანური',
+ 'es-419' => 'ლათინურ ამერიკული ესპანური',
+ 'es-es' => 'ევროპული ესპანური',
+ 'es-mx' => 'მექსიკური ესპანური',
+ 'et' => 'ესტონური',
+ 'eu' => 'ბასკური',
+ 'ewo' => 'ევონდო',
+ 'fa' => 'სპარსული',
+ 'fi' => 'ფინური',
+ 'fil' => 'ფილიპინური',
+ 'fj' => 'ფიჯი',
+ 'fo' => 'ფარერული',
+ 'fon' => 'ფონი',
+ 'fr' => 'ფრანგული',
+ 'fr-ca' => 'კანადური ფრანგული',
+ 'fr-ch' => 'შვეიცარიული ფრანგული',
+ 'frm' => 'საშუალო ფრანგული',
+ 'fro' => 'ძველი ფრანგული',
+ 'frr' => 'ჩრდილოფრიზიული',
+ 'frs' => 'აღმოსავლეთფრიზიული',
+ 'fur' => 'ფრიულური',
+ 'fy' => 'დასავლეთფრიზიული',
+ 'ga' => 'ირლანდიური',
+ 'gag' => 'გაგაუზური',
+ 'gba' => 'გბაია',
+ 'gd' => 'შოტლანდიური გელური',
+ 'gez' => 'გეეზი',
+ 'gl' => 'გალისიური',
+ 'gmh' => 'საშუალო ზემოგერმანული',
+ 'gn' => 'გუარანი',
+ 'goh' => 'ძველი ზემოგერმანული',
+ 'gon' => 'გონდი',
+ 'got' => 'გოთური',
+ 'grc' => 'ძველი ბერძნული',
+ 'gsw' => 'შვეიცარიული გერმანული',
+ 'gu' => 'გუჯარათი',
+ 'guz' => 'გუსიი',
+ 'gv' => 'მენური',
+ 'ha' => 'ჰაუსა',
+ 'haw' => 'ჰავაიური',
+ 'he' => 'ებრაული',
+ 'hi' => 'ჰინდი',
+ 'hit' => 'ხეთური ენა',
+ 'hr' => 'ხორვატული',
+ 'hsb' => 'ზემოსორბული',
+ 'ht' => 'ჰაიტიური',
+ 'hu' => 'უნგრული',
+ 'hy' => 'სომხური',
+ 'ia' => 'ინტერლინგუალური',
+ 'iba' => 'იბანი',
+ 'ibb' => 'იბიბიო',
+ 'id' => 'ინდონეზიური',
+ 'ie' => 'ინტერლინგი',
+ 'ig' => 'იგბო',
+ 'ii' => 'სიჩუანის ი',
+ 'inh' => 'ინგუშური',
+ 'io' => 'იდო',
+ 'is' => 'ისლანდიური',
+ 'it' => 'იტალიური',
+ 'iu' => 'ინუკტიტუტი',
+ 'ja' => 'იაპონური',
+ 'jbo' => 'ლოჟბანი',
+ 'jgo' => 'ნგომბა',
+ 'jmc' => 'კიმაშამი',
+ 'jpr' => 'იუდეო-სპარსული',
+ 'jrb' => 'იუდეო-არაბული',
+ 'jv' => 'იავური',
+ 'ka' => 'ქართული',
+ 'kaa' => 'ყარაყალფახური',
+ 'kab' => 'კაბილური',
+ 'kac' => 'კაჩინი',
+ 'kam' => 'კამბა',
+ 'kbd' => 'ყაბარდოული',
+ 'kde' => 'მაკონდე',
+ 'kea' => 'კაბუვერდიანუ',
+ 'kg' => 'კონგო',
+ 'khq' => 'კოირა-ჩიინი',
+ 'ki' => 'კიკუიუ',
+ 'kk' => 'ყაზახური',
+ 'kl' => 'დასავლეთ გრენლანდიური',
+ 'kln' => 'კალენჯინი',
+ 'km' => 'ქმერული',
+ 'kmb' => 'კიმბუნდუ',
+ 'kn' => 'კანადა',
+ 'ko' => 'კორეული',
+ 'koi' => 'კომი-პერმიაკული',
+ 'kok' => 'კონკანი',
+ 'kos' => 'კუსაიე',
+ 'kpe' => 'კპელე',
+ 'kr' => 'კანური',
+ 'krc' => 'ყარაჩაულ-ბალყარული',
+ 'krl' => 'კარელიური',
+ 'kru' => 'კურუქი',
+ 'ks' => 'ქაშმირული',
+ 'ksb' => 'შამბალა',
+ 'ksf' => 'ბაფია',
+ 'ku' => 'ქურთული',
+ 'kum' => 'ყუმუხური',
+ 'kut' => 'კუტენაი',
+ 'kv' => 'კომი',
+ 'kw' => 'კორნული',
+ 'ky' => 'ყირგიზული',
+ 'la' => 'ლათინური',
+ 'lad' => 'ლადინო',
+ 'lag' => 'ლანგი',
+ 'lah' => 'ლანდა',
+ 'lam' => 'ლამბა',
+ 'lb' => 'ლუქსემბურგული',
+ 'lez' => 'ლეზგიური',
+ 'lg' => 'განდა',
+ 'li' => 'ლიმბურგული',
+ 'lkt' => 'ლაკოტა',
+ 'ln' => 'ლინგალა',
+ 'lo' => 'ლაოსური',
+ 'lol' => 'მონგო',
+ 'loz' => 'ლოზი',
+ 'lt' => 'ლიტვური',
+ 'lu' => 'ლუბა-კატანგა',
+ 'lua' => 'ლუბა-კასაი',
+ 'lui' => 'ლუისენიო',
+ 'lun' => 'ლუნდა',
+ 'luo' => 'ლუო',
+ 'lus' => 'მიზო',
+ 'luy' => 'ლუჰია',
+ 'lv' => 'ლატვიური',
+ 'maf' => 'მაფა',
+ 'mag' => 'მაგაჰი',
+ 'mai' => 'მაითილი',
+ 'mas' => 'მასაი',
+ 'mde' => 'მაბა',
+ 'mdf' => 'მოქშა',
+ 'men' => 'მენდე',
+ 'mer' => 'მერუ',
+ 'mfe' => 'მორისიენი',
+ 'mg' => 'მალაგასიური',
+ 'mga' => 'საშუალო ირლანდიური',
+ 'mgh' => 'მაქუვა-მეეტო',
+ 'mgo' => 'მეტა’ ენა',
+ 'mi' => 'მაორი',
+ 'mic' => 'მიკმაკი',
+ 'min' => 'მინანგკაბაუ',
+ 'mk' => 'მაკედონური',
+ 'ml' => 'მალაიალამური',
+ 'mn' => 'მონღოლური',
+ 'mnc' => 'მანჯურიული',
+ 'mni' => 'მანიპური',
+ 'moh' => 'მოჰაუკური',
+ 'mos' => 'მოორე',
+ 'mr' => 'მარათჰი',
+ 'ms' => 'მალაიური',
+ 'mt' => 'მალტური',
+ 'mua' => 'მუნდანგი',
+ 'mus' => 'კრიკი',
+ 'mwl' => 'მირანდული',
+ 'mwr' => 'მარვარი',
+ 'my' => 'ბირმული',
+ 'mye' => 'მიენე',
+ 'myv' => 'ერზია',
+ 'na' => 'ნაურუ',
+ 'nap' => 'ნეაპოლიტანური',
+ 'naq' => 'ნამა',
+ 'nb' => 'ნორვეგიული ბუკმოლი',
+ 'nd' => 'ჩრდილოეთ ნდებელე',
+ 'nds' => 'ქვემოგერმანული',
+ 'ne' => 'ნეპალური',
+ 'new' => 'ნევარი',
+ 'nl' => 'ნიდერლანდური',
+ 'nl-be' => 'ფლამანდიური',
+ 'nmg' => 'კვასიო',
+ 'nn' => 'ნორვეგიული ნიუნორსკი',
+ 'no' => 'ნორვეგიული',
+ 'nog' => 'ნოღაური',
+ 'non' => 'ძველსკანდინავიური',
+ 'nqo' => 'ნკო',
+ 'nus' => 'ნუერი',
+ 'nv' => 'ნავახო',
+ 'nwc' => 'კლასიკური ნევარული',
+ 'ny' => 'ნიანჯა',
+ 'nym' => 'ნიამვეზი',
+ 'nyn' => 'ნიანკოლე',
+ 'nyo' => 'ნიორო',
+ 'nzi' => 'ნზიმა',
+ 'oc' => 'ოქსიტანური',
+ 'oj' => 'ოჯიბვე',
+ 'om' => 'ორომო',
+ 'or' => 'ორია',
+ 'os' => 'ოსური',
+ 'pa' => 'პენჯაბური',
+ 'pal' => 'ფალაური',
+ 'peo' => 'ძველი სპარსული',
+ 'phn' => 'ფინიკიური',
+ 'pi' => 'პალი',
+ 'pl' => 'პოლონური',
+ 'pro' => 'ძველი პროვანსული',
+ 'ps' => 'პუშტუ',
+ 'pt' => 'პორტუგალიური',
+ 'pt-br' => 'ბრაზილიური პორტუგალიური',
+ 'pt-pt' => 'ევროპული პორტუგალიური',
+ 'qu' => 'კეჩუა',
+ 'quc' => 'კიჩე',
+ 'raj' => 'რაჯასთანი',
+ 'rap' => 'რაპანუი',
+ 'rar' => 'რაროტონგული',
+ 'rm' => 'რეტორომანული',
+ 'rn' => 'რუნდი',
+ 'ro' => 'რუმინული',
+ 'ro-md' => 'მოლდავური',
+ 'rof' => 'რომბო',
+ 'rom' => 'ბოშური',
+ 'ru' => 'რუსული',
+ 'rw' => 'კინიარუანდა',
+ 'rwk' => 'რუა',
+ 'sa' => 'სანსკრიტი',
+ 'sah' => 'იაკუტური',
+ 'sam' => 'სამარიულ-არამეული',
+ 'saq' => 'სამბურუ',
+ 'sbp' => 'სანგუ',
+ 'sc' => 'სარდინიული',
+ 'scn' => 'სიცილიური',
+ 'sd' => 'სინდჰური',
+ 'se' => 'ჩრდილოეთ საამური',
+ 'see' => 'სენეკა',
+ 'seh' => 'სენა',
+ 'sel' => 'სელკუპური',
+ 'ses' => 'კოირაბორო-სენი',
+ 'sg' => 'სანგო',
+ 'sga' => 'ძველი ირლანდიური',
+ 'sh' => 'სერბულ-ხორვატული',
+ 'shi' => 'შილჰა',
+ 'shn' => 'შანი',
+ 'shu' => 'ჩადური არაბული',
+ 'si' => 'სინჰალური',
+ 'sk' => 'სლოვაკური',
+ 'sl' => 'სლოვენური',
+ 'sm' => 'სამოა',
+ 'sma' => 'სამხრეთ საამური',
+ 'smj' => 'ლულე-საამური',
+ 'smn' => 'ინარი-საამური',
+ 'sms' => 'სკოლტ-საამური',
+ 'sn' => 'შონა',
+ 'so' => 'სომალიური',
+ 'sq' => 'ალბანური',
+ 'sr' => 'სერბული',
+ 'st' => 'სამხრეთ სოთოს ენა',
+ 'su' => 'სუნდური',
+ 'sux' => 'შუმერული',
+ 'sv' => 'შვედური',
+ 'sw' => 'სუაჰილი',
+ 'swb' => 'კომორული',
+ 'swc' => 'კონგოს სუაჰილი',
+ 'syc' => 'კლასიკური სირიული',
+ 'syr' => 'სირიული',
+ 'ta' => 'ტამილური',
+ 'te' => 'ტელუგუ',
+ 'teo' => 'ტესო',
+ 'tg' => 'ტაჯიკური',
+ 'th' => 'ტაი',
+ 'ti' => 'თიგრინია',
+ 'tig' => 'თიგრე',
+ 'tk' => 'თურქმენული',
+ 'tlh' => 'კლინგონი',
+ 'tn' => 'ტსვანა',
+ 'to' => 'ტონგანური',
+ 'tr' => 'თურქული',
+ 'tt' => 'თათრული',
+ 'tw' => 'თუი',
+ 'twq' => 'ტასავაქი',
+ 'tyv' => 'ტუვა',
+ 'tzm' => 'ცენტრალური მოროკოს ტამაზიგხტი',
+ 'udm' => 'უდმურტული',
+ 'ug' => 'უიღურული',
+ 'uga' => 'უგარითული',
+ 'uk' => 'უკრაინული',
+ 'und' => 'უცნობი ენა',
+ 'ur' => 'ურდუ',
+ 'uz' => 'უზბეკური',
+ 'vai' => 'ვაი',
+ 'vi' => 'ვიეტნამური',
+ 'vun' => 'ვუნჯო',
+ 'wal' => 'ველაითა',
+ 'wo' => 'ვოლოფური',
+ 'xal' => 'ყალმუხური',
+ 'xh' => 'ქჰოსა',
+ 'xog' => 'სოგა',
+ 'yi' => 'იდიში',
+ 'yo' => 'იორუბა',
+ 'yue' => 'კანტონური',
+ 'zbl' => 'ბლისსიმბოლოები',
+ 'zen' => 'ზენაგა',
+ 'zgh' => 'სტანდარტული მაროკოული ტამაზიგხტი',
+ 'zh' => 'ჩინური',
+ 'zh-hans' => 'გამარტივებული ჩინური',
+ 'zh-hant' => 'ტრადიციული ჩინური',
+ 'zu' => 'ზულუ',
+ 'zxx' => 'ლინგვისტური შიგთავსი არ არის',
+ 'zza' => 'ზაზაკი',
+);
+
+$currencyNames = array(
+ 'ADP' => 'ანდორული პესეტა',
+ 'AED' => 'არაბთა გაერთიანებული საამიროების დირჰამი',
+ 'AFA' => 'ავღანი (1927–2002)',
+ 'AFN' => 'ავღანური ავღანი',
+ 'ALL' => 'ალბანური ლეკი',
+ 'AMD' => 'სომხური დრამი',
+ 'ANG' => 'ნიდერლანდების ანტილების გულდენი',
+ 'AOA' => 'ანგოლური კვანზა',
+ 'AOK' => 'ანგოლური კვანზა (1977–1990)',
+ 'AON' => 'ანგოლური ახალი კვანზა (1990–2000)',
+ 'AOR' => 'ანგოლური მიტოლებული კვანზა (1995–1999)',
+ 'ARA' => 'არგენტინული აუსტრალი',
+ 'ARP' => 'არგენტინული პესო (1983–1985)',
+ 'ARS' => 'არგენტინული პესო',
+ 'ATS' => 'ავსტრიული შილინგი',
+ 'AUD' => 'ავსტრალიური დოლარი',
+ 'AWG' => 'არუბანული გულდენი',
+ 'AZM' => 'აზერბაიჯანული მანათი (1993–2006)',
+ 'AZN' => 'აზერბაიჯანული მანათი',
+ 'BAD' => 'ბოსნია-ჰერცოგოვინას დინარი',
+ 'BAM' => 'ბოსნია და ჰერცოგოვინას კონვერტირებადი მარკა',
+ 'BBD' => 'ბარბადოსული დოლარი',
+ 'BDT' => 'ბანგლადეშური ტაკა',
+ 'BEC' => 'ბელგიური ფრანკი (კოვერტირებადი)',
+ 'BEF' => 'ბელგიური ფრანკი',
+ 'BEL' => 'ბელგიური ფრანკი (ფინანსური)',
+ 'BGL' => 'ბულგარული მყარი ლევი',
+ 'BGN' => 'ბულგარული ლევი',
+ 'BHD' => 'ბაჰრეინული დინარი',
+ 'BIF' => 'ბურუნდიული ფრანკი',
+ 'BMD' => 'ბერმუდული დოლარი',
+ 'BND' => 'ბრუნეული დოლარი',
+ 'BOB' => 'ბოლივიური ბოლივიანო',
+ 'BOP' => 'ბოლივიური პესო',
+ 'BRB' => 'ბრაზილიური კრუზეირო ნოვო (1967–1986)',
+ 'BRC' => 'ბრაზილიური კრუზადო',
+ 'BRE' => 'ბრაზილიური კრუზეირო (1990–1993)',
+ 'BRL' => 'ბრაზილიური რეალი',
+ 'BRN' => 'ბრაზილიური კრუზადო ნოვო',
+ 'BRR' => 'ბრაზილიური კრუზეირო',
+ 'BSD' => 'ბაჰამური დოლარი',
+ 'BTN' => 'ბუტანური ნგულტრუმი',
+ 'BWP' => 'ბოცვანური პულა',
+ 'BYB' => 'ახალი ბელარუსიული რუბლი (1994–1999)',
+ 'BYR' => 'ბელორუსული რუბლი',
+ 'BZD' => 'ბელიზის დოლარი',
+ 'CAD' => 'კანადური დოლარი',
+ 'CDF' => 'კონგოს ფრანკი',
+ 'CHF' => 'შვეიცარიული ფრანკი',
+ 'CLP' => 'ჩილეს პესო',
+ 'CNY' => 'ჩინური იუანი',
+ 'COP' => 'კოლუმბიური პესო',
+ 'CRC' => 'კოსტა-რიკული კოლონი',
+ 'CSD' => 'ძველი სერბიული დინარი',
+ 'CSK' => 'ჩეხოსლოვაკიის მყარი კრონა',
+ 'CUC' => 'კუბური კონვერტირებადი პესო',
+ 'CUP' => 'კუბური პესო',
+ 'CVE' => 'კაბო-ვერდეს ესკუდო',
+ 'CYP' => 'კვიპროსის გირვანქა',
+ 'CZK' => 'ჩეხური კრონა',
+ 'DDM' => 'აღმოსავლეთ გერმანული მარკა',
+ 'DEM' => 'გერმანული მარკა',
+ 'DJF' => 'ჯიბუტის ფრანკი',
+ 'DKK' => 'დანიური კრონა',
+ 'DOP' => 'დომინიკური პესო',
+ 'DZD' => 'ალჟირული დინარი',
+ 'EEK' => 'ესტონური კრუნა',
+ 'EGP' => 'ეგვიპტური გირვანქა',
+ 'ERN' => 'ერიტრეის ნაკფა',
+ 'ESP' => 'ესპანური პესეტა',
+ 'ETB' => 'ეთიოპიური ბირი',
+ 'EUR' => 'ევრო',
+ 'FIM' => 'ფინური მარკა',
+ 'FJD' => 'ფიჯის დოლარი',
+ 'FKP' => 'ფოლკლენდის კუნძულების ფუნტი',
+ 'FRF' => 'ფრანგული ფრანკი',
+ 'GBP' => 'ბრიტანული გირვანქა სტერლინგი',
+ 'GEK' => 'ქართული კუპონი ლარით',
+ 'GEL' => 'ქართული ლარი',
+ 'GHS' => 'განური სედი',
+ 'GIP' => 'გიბრალტარული ფუნტი',
+ 'GMD' => 'გამბიური დალასი',
+ 'GNF' => 'გვინეური ფრანკი',
+ 'GRD' => 'ბერძნული დრაჰმა',
+ 'GTQ' => 'გვატემალური კეტსალი',
+ 'GWE' => 'პორტუგალიური გინეა ესკუდო',
+ 'GYD' => 'გაიანური დოლარი',
+ 'HKD' => 'ჰონკონგის დოლარი',
+ 'HNL' => 'ჰონდურასული ლემპირა',
+ 'HRD' => 'ხორვატიული დინარი',
+ 'HRK' => 'ხორვატული კუნა',
+ 'HTG' => 'ჰაიტური გურდი',
+ 'HUF' => 'უნგრული ფორინტი',
+ 'IDR' => 'ინდონეზიური რუპია',
+ 'IEP' => 'ირლანდიური გირვანქა',
+ 'ILS' => 'ისრაელის ახალი შეკელი',
+ 'INR' => 'ინდური რუპია',
+ 'IQD' => 'ერაყული დინარი',
+ 'IRR' => 'ირანული რიალი',
+ 'ISK' => 'ისლანდიური კრონა',
+ 'ITL' => 'იტალიური ლირა',
+ 'JMD' => 'იამაიკური დოლარი',
+ 'JOD' => 'იორდანიული დოლარი',
+ 'JPY' => 'იაპონური იენი',
+ 'KES' => 'კენიური შილინგი',
+ 'KGS' => 'ყირგიზული სომი',
+ 'KHR' => 'კამბოჯური რიელი',
+ 'KMF' => 'კომორული ფრანკი',
+ 'KPW' => 'ჩრდილოეთ კორეული ვონი',
+ 'KRW' => 'სამხრეთ კორეული ვონი',
+ 'KWD' => 'ქუვეითური დინარი',
+ 'KYD' => 'კაიმანის კუნძულების დოლარი',
+ 'KZT' => 'ყაზახური ტენგე',
+ 'LAK' => 'ლაოსური კიპი',
+ 'LBP' => 'ლიბანური ფუნტი',
+ 'LKR' => 'შრი-ლანკური რუპია',
+ 'LRD' => 'ლიბერიული დოლარი',
+ 'LTL' => 'ლიტვური ლიტა',
+ 'LTT' => 'ლიტვური ტალონი',
+ 'LUC' => 'ლუქსემბურგის კონვერტირებადი ფრანკი',
+ 'LUF' => 'ლუქსემბურგის ფრანკი',
+ 'LUL' => 'ლუქსემბურგის ფინანსური ფრანკი',
+ 'LVL' => 'ლატვიური ლატი',
+ 'LVR' => 'ლატვიური რუბლი',
+ 'LYD' => 'ლიბიური დინარი',
+ 'MAD' => 'მაროკოს დირჰამი',
+ 'MAF' => 'მაროკოს ფრანკი',
+ 'MDL' => 'მოლდოვური ლეუ',
+ 'MGA' => 'მადაგასკარის არიარი',
+ 'MGF' => 'მადაგასკარის ფრანკი',
+ 'MKD' => 'მაკედონიური დინარი',
+ 'MLF' => 'მალის ფრანკი',
+ 'MMK' => 'მიანმარის კიატი',
+ 'MNT' => 'მონღოლური ტუგრიკი',
+ 'MOP' => 'მაკაუს პატაკა',
+ 'MRO' => 'მავრიტანული უგია',
+ 'MTL' => 'მალტის ლირა',
+ 'MTP' => 'მალტის გირვანქა',
+ 'MUR' => 'მავრიტანული რუპია',
+ 'MVR' => 'მალდივური რუფია',
+ 'MWK' => 'მალავიური კვაჩა',
+ 'MXN' => 'მექსიკური პესო',
+ 'MXP' => 'მექსიკური ვერცხლის პესო (1861–1992)',
+ 'MYR' => 'მალაიზიური რინგიტი',
+ 'MZE' => 'მოზამბიკური ესკუდო',
+ 'MZM' => 'ძველი მოზამბიკური მეტიკალი',
+ 'MZN' => 'მოზამბიკური მეტიკალი',
+ 'NAD' => 'ნამიბიური დოლარი',
+ 'NGN' => 'ნიგერიული ნაირა',
+ 'NIC' => 'ნიკარაგუას კორდობა',
+ 'NIO' => 'ნიკარაგუული კორდობა',
+ 'NLG' => 'ჰოლანდიური გულდენი',
+ 'NOK' => 'ნორვეგიული კრონა',
+ 'NPR' => 'ნეპალური რუპია',
+ 'NZD' => 'ახალი ზელანდიის დოლარი',
+ 'OMR' => 'ომანის რიალი',
+ 'PAB' => 'პანამური ბალბოა',
+ 'PEI' => 'პერუს ინტი',
+ 'PEN' => 'პერუს ახალი სოლი',
+ 'PES' => 'პერუს სოლი',
+ 'PGK' => 'პაპუა-ახალი გვინეის კინა',
+ 'PHP' => 'ფილიპინური პესო',
+ 'PKR' => 'პაკისტანური რუპია',
+ 'PLN' => 'პოლონური ზლოტი',
+ 'PLZ' => 'პოლონური ზლოტი (1950–1995)',
+ 'PTE' => 'პორტუგალიური ესკუდო',
+ 'PYG' => 'პარაგვაული გუარანი',
+ 'QAR' => 'კატარის რიალი',
+ 'RHD' => 'როდეზიული დოლარი',
+ 'ROL' => 'ძველი რუმინული ლეუ',
+ 'RON' => 'რუმინული ლეუ',
+ 'RSD' => 'სერბული დინარი',
+ 'RUB' => 'რუსული რუბლი',
+ 'RUR' => 'რუსული რუბლი (1991–1998)',
+ 'RWF' => 'რუანდული ფრანკი',
+ 'SAR' => 'საუდის არაბეთის რიალი',
+ 'SBD' => 'სოლომონის კუნძულების დოლარი',
+ 'SCR' => 'სეიშელური რუპია',
+ 'SDD' => 'სუდანის დინარი',
+ 'SDG' => 'სუდანური ფუნტი',
+ 'SDP' => 'სუდანის გირვანქა',
+ 'SEK' => 'შვედური კრონა',
+ 'SGD' => 'სინგაპურის დოლარი',
+ 'SHP' => 'წმ. ელენეს კუნძულის ფუნტი',
+ 'SLL' => 'სიერა-ლეონეს ლეონე',
+ 'SOS' => 'სომალური შილინგი',
+ 'SRD' => 'სურინამული დოლარი',
+ 'SRG' => 'სურინამის გულდენი',
+ 'SSP' => 'სამხრეთ სუდანური ფუნტი',
+ 'STD' => 'სან-ტომე და პრინსიპის დობრა',
+ 'SUR' => 'საბჭოთა რუბლი',
+ 'SYP' => 'სირიული ფუნტი',
+ 'SZL' => 'სვაზილენდის ლილანგენი',
+ 'THB' => 'ტაილანდური ბატი',
+ 'TJR' => 'ტაჯიკური რუბლი',
+ 'TJS' => 'ტაჯიკური სომონი',
+ 'TMM' => 'თურქმენული მანათი',
+ 'TMT' => 'თურქმენეთის მანათი',
+ 'TND' => 'ტუნისური დინარი',
+ 'TOP' => 'ტონგანური პაანგა',
+ 'TRL' => 'თურქული ლირა',
+ 'TRY' => 'ახალი თურქული ლირა',
+ 'TTD' => 'ტრინიდად და ტობაგოს დოლარი',
+ 'TWD' => 'ტაივანური ახალი დოლარი',
+ 'TZS' => 'ტანზანიური შილინგი',
+ 'UAH' => 'უკრაინული გრივნა',
+ 'UAK' => 'უკრაინული კარბოვანეცი',
+ 'UGS' => 'უგანდური შილინგი (1966–1987)',
+ 'UGX' => 'უგანდური შილინგი',
+ 'USD' => 'აშშ დოლარი',
+ 'USN' => 'აშშ დოლარი (შემდეგი დღე)',
+ 'USS' => 'აშშ დოლარი (იგივე დღე)',
+ 'UYP' => 'ურუგვაის პესო (1975–1993)',
+ 'UYU' => 'ურუგვაის პესო',
+ 'UZS' => 'უზბეკური სუმი',
+ 'VEB' => 'ვენესუელის ბოლივარი (1871–2008)',
+ 'VEF' => 'ვენესუელის ბოლივარი',
+ 'VND' => 'ვიეტნამური დონგი',
+ 'VUV' => 'ვანუატუს ვატუ',
+ 'WST' => 'სამოური ტალა',
+ 'XAF' => 'CFA ფრანკი (BEAC)',
+ 'XAG' => 'ვერცხლი',
+ 'XBA' => 'ევროპული კომპპოზიტური ერთეული',
+ 'XBB' => 'ევროპული ფულადი ერთეული',
+ 'XCD' => 'აღმოსავლეთ კარიბიული დოლარი',
+ 'XEU' => 'ევროპული სავალუტო ერთეული',
+ 'XFO' => 'ფრანგული ოქროს ფრანკი',
+ 'XOF' => '(CFA) ფრანკი (BCEAO)',
+ 'XPF' => 'CFP ფრანკი',
+ 'XXX' => 'უცნობი ვალუტა',
+ 'YDD' => 'იემენის დინარი',
+ 'YER' => 'იემენის რეალი',
+ 'YUD' => 'იუგოსლავიური მყარი დინარი',
+ 'YUM' => 'იუგოსლავიური ახალი დინარი',
+ 'YUN' => 'იუგოსლავიური კონვერტირებადი დინარი',
+ 'ZAR' => 'სამხრეთ აფრიკული რანდი',
+ 'ZMK' => 'ზამბიური კვაჭა (1968–2012)',
+ 'ZMW' => 'ზამბიური კვაჭა',
+ 'ZRN' => 'ზაირის ახალი ზაირი',
+ 'ZRZ' => 'ზაირის ზაირი',
+ 'ZWD' => 'ზიმბაბვეს დოლარი',
+);
+
+$currencySymbols = array(
+ 'AED' => 'AED',
+ 'AFN' => 'AFN',
+ 'ALL' => 'ALL',
+ 'AMD' => 'AMD',
+ 'ANG' => 'ANG',
+ 'AOA' => 'AOA',
+ 'ARS' => 'ARS',
+ 'AUD' => 'AUD',
+ 'AWG' => 'AWG',
+ 'AZN' => 'AZN',
+ 'BAM' => 'BAM',
+ 'BBD' => 'BBD',
+ 'BDT' => 'BDT',
+ 'BGN' => 'BGN',
+ 'BHD' => 'BHD',
+ 'BIF' => 'BIF',
+ 'BMD' => 'BMD',
+ 'BND' => 'BND',
+ 'BOB' => 'BOB',
+ 'BRL' => 'R$',
+ 'BSD' => 'BSD',
+ 'BTN' => 'BTN',
+ 'BWP' => 'BWP',
+ 'BYR' => 'BYR',
+ 'BZD' => 'BZD',
+ 'CAD' => 'CA$',
+ 'CDF' => 'CDF',
+ 'CHF' => 'CHF',
+ 'CLP' => 'CLP',
+ 'CNY' => 'CNY',
+ 'COP' => 'COP',
+ 'CRC' => 'CRC',
+ 'CUC' => 'CUC',
+ 'CUP' => 'CUP',
+ 'CVE' => 'CVE',
+ 'CZK' => 'CZK',
+ 'DJF' => 'DJF',
+ 'DKK' => 'DKK',
+ 'DOP' => 'DOP',
+ 'DZD' => 'DZD',
+ 'EGP' => 'EGP',
+ 'ERN' => 'ERN',
+ 'ETB' => 'ETB',
+ 'EUR' => '€',
+ 'FJD' => 'FJD',
+ 'FKP' => 'FKP',
+ 'GBP' => '£',
+ 'GEL' => 'GEL',
+ 'GHS' => 'GHS',
+ 'GIP' => 'GIP',
+ 'GMD' => 'GMD',
+ 'GNF' => 'GNF',
+ 'GTQ' => 'GTQ',
+ 'GYD' => 'GYD',
+ 'HKD' => 'HKD',
+ 'HNL' => 'HNL',
+ 'HRK' => 'HRK',
+ 'HTG' => 'HTG',
+ 'HUF' => 'HUF',
+ 'IDR' => 'IDR',
+ 'ILS' => 'ILS',
+ 'INR' => 'INR',
+ 'IQD' => 'IQD',
+ 'IRR' => 'IRR',
+ 'ISK' => 'ISK',
+ 'JMD' => 'JMD',
+ 'JOD' => 'JOD',
+ 'JPY' => 'JPY',
+ 'KES' => 'KES',
+ 'KGS' => 'KGS',
+ 'KHR' => 'KHR',
+ 'KMF' => 'KMF',
+ 'KPW' => 'KPW',
+ 'KRW' => 'KRW',
+ 'KWD' => 'KWD',
+ 'KYD' => 'KYD',
+ 'KZT' => 'KZT',
+ 'LAK' => 'LAK',
+ 'LBP' => 'LBP',
+ 'LKR' => 'LKR',
+ 'LRD' => 'LRD',
+ 'LTL' => 'LTL',
+ 'LVL' => 'LVL',
+ 'LYD' => 'LYD',
+ 'MAD' => 'MAD',
+ 'MDL' => 'MDL',
+ 'MGA' => 'MGA',
+ 'MKD' => 'MKD',
+ 'MMK' => 'MMK',
+ 'MNT' => 'MNT',
+ 'MOP' => 'MOP',
+ 'MRO' => 'MRO',
+ 'MUR' => 'MUR',
+ 'MVR' => 'MVR',
+ 'MWK' => 'MWK',
+ 'MXN' => 'MX$',
+ 'MYR' => 'MYR',
+ 'MZN' => 'MZN',
+ 'NAD' => 'NAD',
+ 'NGN' => 'NGN',
+ 'NIO' => 'NIO',
+ 'NOK' => 'NOK',
+ 'NPR' => 'NPR',
+ 'NZD' => 'NZD',
+ 'OMR' => 'OMR',
+ 'PAB' => 'PAB',
+ 'PEN' => 'PEN',
+ 'PGK' => 'PGK',
+ 'PHP' => 'PHP',
+ 'PKR' => 'PKR',
+ 'PLN' => 'PLN',
+ 'PYG' => 'PYG',
+ 'QAR' => 'QAR',
+ 'RON' => 'RON',
+ 'RSD' => 'RSD',
+ 'RUB' => 'RUB',
+ 'RWF' => 'RWF',
+ 'SAR' => 'SAR',
+ 'SBD' => 'SBD',
+ 'SCR' => 'SCR',
+ 'SDG' => 'SDG',
+ 'SEK' => 'SEK',
+ 'SGD' => 'SGD',
+ 'SHP' => 'SHP',
+ 'SLL' => 'SLL',
+ 'SOS' => 'SOS',
+ 'SRD' => 'SRD',
+ 'SSP' => 'SSP',
+ 'STD' => 'STD',
+ 'SYP' => 'SYP',
+ 'SZL' => 'SZL',
+ 'THB' => 'THB',
+ 'TJS' => 'TJS',
+ 'TMT' => 'TMT',
+ 'TND' => 'TND',
+ 'TOP' => 'TOP',
+ 'TRY' => 'TRY',
+ 'TTD' => 'TTD',
+ 'TWD' => 'NT$',
+ 'TZS' => 'TZS',
+ 'UAH' => 'UAH',
+ 'UGX' => 'UGX',
+ 'USD' => 'US$',
+ 'UYU' => 'UYU',
+ 'UZS' => 'UZS',
+ 'VEF' => 'VEF',
+ 'VND' => 'VND',
+ 'VUV' => 'VUV',
+ 'WST' => 'WST',
+ 'XAF' => 'FCFA',
+ 'XCD' => 'EC$',
+ 'XOF' => 'CFA',
+ 'XPF' => 'CFPF',
+ 'YER' => 'YER',
+ 'ZAR' => 'ZAR',
+ 'ZMK' => 'ZMK',
+ 'ZMW' => 'ZMW',
+);
+
+$countryNames = array(
+ 'AC' => 'ამაღლების კუნძული',
+ 'AD' => 'ანდორა',
+ 'AE' => 'არაბთა გაერთიანებული საამიროები',
+ 'AF' => 'ავღანეთი',
+ 'AG' => 'ანტიგუა და ბარბუდა',
+ 'AI' => 'ანგვილა',
+ 'AL' => 'ალბანეთი',
+ 'AM' => 'სომხეთი',
+ 'AN' => 'ნიდერლანდების ანტილები',
+ 'AO' => 'ანგოლა',
+ 'AQ' => 'ანტარქტიკა',
+ 'AR' => 'არგენტინა',
+ 'AS' => 'ამერიკული სამოა',
+ 'AT' => 'ავსტრია',
+ 'AU' => 'ავსტრალია',
+ 'AW' => 'არუბა',
+ 'AX' => 'ალანდის კუნძულები',
+ 'AZ' => 'აზერბაიჯანი',
+ 'BA' => 'ბოსნია და ჰერცეგოვინა',
+ 'BB' => 'ბარბადოსი',
+ 'BD' => 'ბანგლადეში',
+ 'BE' => 'ბელგია',
+ 'BF' => 'ბურკინა-ფასო',
+ 'BG' => 'ბულგარეთი',
+ 'BH' => 'ბაჰრეინი',
+ 'BI' => 'ბურუნდი',
+ 'BJ' => 'ბენინი',
+ 'BL' => 'სენ-ბართლემი',
+ 'BM' => 'ბერმუდი',
+ 'BN' => 'ბრუნეი',
+ 'BO' => 'ბოლივია',
+ 'BQ' => 'კარიბის ნიდერლანდები',
+ 'BR' => 'ბრაზილია',
+ 'BS' => 'ბაჰამის კუნძულები',
+ 'BT' => 'ბუტანი',
+ 'BV' => 'ბუვეს კუნძული',
+ 'BW' => 'ბოტსვანა',
+ 'BY' => 'ბელორუსია',
+ 'BZ' => 'ბელიზი',
+ 'CA' => 'კანადა',
+ 'CC' => 'ქოქოსის (კილინგის) კუნძულები',
+ 'CD' => 'კონგო - კინშასა',
+ 'CF' => 'ცენტრალური აფრიკის რესპუბლიკა',
+ 'CG' => 'კონგო - ბრაზავილი',
+ 'CH' => 'შვეიცარია',
+ 'CI' => 'კოტ-დივუარი',
+ 'CK' => 'კუკის კუნძულები',
+ 'CL' => 'ჩილე',
+ 'CM' => 'კამერუნი',
+ 'CN' => 'ჩინეთი',
+ 'CO' => 'კოლუმბია',
+ 'CP' => 'კლიპერტონის კუნძული',
+ 'CR' => 'კოსტა-რიკა',
+ 'CU' => 'კუბა',
+ 'CV' => 'კაბო-ვერდე',
+ 'CW' => 'კიურასაო',
+ 'CX' => 'შობის კუნძული',
+ 'CY' => 'კვიპროსი',
+ 'CZ' => 'ჩეხეთის რესპუბლიკა',
+ 'DE' => 'გერმანია',
+ 'DG' => 'დიეგო-გარსია',
+ 'DJ' => 'ჯიბუტი',
+ 'DK' => 'დანია',
+ 'DM' => 'დომინიკა',
+ 'DO' => 'დომინიკანის რესპუბლიკა',
+ 'DZ' => 'ალჟირი',
+ 'EA' => 'სეუტა და მელილა',
+ 'EC' => 'ეკვადორი',
+ 'EE' => 'ესტონეთი',
+ 'EG' => 'ეგვიპტე',
+ 'EH' => 'დასავლეთი საჰარა',
+ 'ER' => 'ერიტრეა',
+ 'ES' => 'ესპანეთი',
+ 'ET' => 'ეთიოპია',
+ 'EU' => 'ევროკავშირი',
+ 'FI' => 'ფინეთი',
+ 'FJ' => 'ფიჯი',
+ 'FK' => 'ფოლკლენდის კუნძულები',
+ 'FM' => 'მიკრონეზია',
+ 'FO' => 'ფარერის კუნძულები',
+ 'FR' => 'საფრანგეთი',
+ 'GA' => 'გაბონი',
+ 'GB' => 'გაერთ.სამ.',
+ 'GD' => 'გრენადა',
+ 'GE' => 'საქართველო',
+ 'GF' => 'ფრანგული გვიანა',
+ 'GG' => 'გერნსი',
+ 'GH' => 'განა',
+ 'GI' => 'გიბრალტარი',
+ 'GL' => 'გრენლანდია',
+ 'GM' => 'გამბია',
+ 'GN' => 'გვინეა',
+ 'GP' => 'გვადელუპე',
+ 'GQ' => 'ეკვატორული გვინეა',
+ 'GR' => 'საბერძნეთი',
+ 'GS' => 'სამხრეთი გეორგია და სამხრეთ სენდვიჩის კუნძულები',
+ 'GT' => 'გვატემალა',
+ 'GU' => 'გუამი',
+ 'GW' => 'გვინეა-ბისაუ',
+ 'GY' => 'გაიანა',
+ 'HK' => 'ჰონკონგი',
+ 'HM' => 'ჰერდი და მაკდონალდის კუნძულები',
+ 'HN' => 'ჰონდურასი',
+ 'HR' => 'ხორვატია',
+ 'HT' => 'ჰაიტი',
+ 'HU' => 'უნგრეთი',
+ 'IC' => 'კანარის კუნძულები',
+ 'ID' => 'ინდონეზია',
+ 'IE' => 'ირლანდია',
+ 'IL' => 'ისრაელი',
+ 'IM' => 'მენის კუნძული',
+ 'IN' => 'ინდოეთი',
+ 'IO' => 'ბრიტანული ტერიტორია ინდოეთის ოკეანეში',
+ 'IQ' => 'ერაყი',
+ 'IR' => 'ირანი',
+ 'IS' => 'ისლანდია',
+ 'IT' => 'იტალია',
+ 'JE' => 'ჯერსი',
+ 'JM' => 'იამაიკა',
+ 'JO' => 'იორდანია',
+ 'JP' => 'იაპონია',
+ 'KE' => 'კენია',
+ 'KG' => 'ყირგიზეთი',
+ 'KH' => 'კამბოჯა',
+ 'KI' => 'კირიბატი',
+ 'KM' => 'კომორის კუნძულები',
+ 'KN' => 'სენტ-კიტსი და ნევისი',
+ 'KP' => 'ჩრდილოეთი კორეა',
+ 'KR' => 'სამხრეთი კორეა',
+ 'KW' => 'ქუვეითი',
+ 'KY' => 'კაიმანის კუნძულები',
+ 'KZ' => 'ყაზახეთი',
+ 'LA' => 'ლაოსი',
+ 'LB' => 'ლიბანი',
+ 'LC' => 'სენტ-ლუსია',
+ 'LI' => 'ლიხტენშტეინი',
+ 'LK' => 'შრი-ლანკა',
+ 'LR' => 'ლიბერია',
+ 'LS' => 'ლესოთო',
+ 'LT' => 'ლიტვა',
+ 'LU' => 'ლუქსემბურგი',
+ 'LV' => 'ლატვია',
+ 'LY' => 'ლიბია',
+ 'MA' => 'მაროკო',
+ 'MC' => 'მონაკო',
+ 'MD' => 'მოლდოვა',
+ 'ME' => 'მონტენეგრო',
+ 'MF' => 'სენ-მარტენი',
+ 'MG' => 'მადაგასკარი',
+ 'MH' => 'მარშალის კუნძულები',
+ 'MK' => 'მაკედონია',
+ 'ML' => 'მალი',
+ 'MM' => 'მიანმარი (ბირმა)',
+ 'MN' => 'მონღოლეთი',
+ 'MO' => 'მაკაო',
+ 'MP' => 'ჩრდილოეთ მარიანას კუნძულები',
+ 'MQ' => 'მარტინიკა',
+ 'MR' => 'მავრიტანია',
+ 'MS' => 'მონსერატი',
+ 'MT' => 'მალტა',
+ 'MU' => 'მავრიკი',
+ 'MV' => 'მალდივის კუნძულები',
+ 'MW' => 'მალავი',
+ 'MX' => 'მექსიკა',
+ 'MY' => 'მალაიზია',
+ 'MZ' => 'მოზამბიკი',
+ 'NA' => 'ნამიბია',
+ 'NC' => 'ახალი კალედონია',
+ 'NE' => 'ნიგერი',
+ 'NF' => 'ნორფოლკის კუნძული',
+ 'NG' => 'ნიგერია',
+ 'NI' => 'ნიკარაგუა',
+ 'NL' => 'ნიდერლანდები',
+ 'NO' => 'ნორვეგია',
+ 'NP' => 'ნეპალი',
+ 'NR' => 'ნაურუ',
+ 'NU' => 'ნიუე',
+ 'NZ' => 'ახალი ზელანდია',
+ 'OM' => 'ომანი',
+ 'PA' => 'პანამა',
+ 'PE' => 'პერუ',
+ 'PF' => 'ფრანგული პოლინეზია',
+ 'PG' => 'პაპუა-ახალი გვინეა',
+ 'PH' => 'ფილიპინები',
+ 'PK' => 'პაკისტანი',
+ 'PL' => 'პოლონეთი',
+ 'PM' => 'სენ-პიერი და მიკელონი',
+ 'PN' => 'პიტკერნის კუნძულები',
+ 'PR' => 'პუერტო-რიკო',
+ 'PS' => 'პალესტინა',
+ 'PT' => 'პორტუგალია',
+ 'PW' => 'პალაუ',
+ 'PY' => 'პარაგვაი',
+ 'QA' => 'კატარი',
+ 'QO' => 'შორეული ოკეანეთი',
+ 'RE' => 'რეუნიონი',
+ 'RO' => 'რუმინეთი',
+ 'RS' => 'სერბეთი',
+ 'RU' => 'რუსეთი',
+ 'RW' => 'რუანდა',
+ 'SA' => 'საუდის არაბეთი',
+ 'SB' => 'სოლომონის კუნძულები',
+ 'SC' => 'სეიშელის კუნძულები',
+ 'SD' => 'სუდანი',
+ 'SE' => 'შვედეთი',
+ 'SG' => 'სინგაპური',
+ 'SH' => 'წმინდა ელენეს კუნძული',
+ 'SI' => 'სლოვენია',
+ 'SJ' => 'შპიცბერგენი და იან-მაიენი',
+ 'SK' => 'სლოვაკეთი',
+ 'SL' => 'სიერა-ლეონე',
+ 'SM' => 'სან-მარინო',
+ 'SN' => 'სენეგალი',
+ 'SO' => 'სომალი',
+ 'SR' => 'სურინამი',
+ 'SS' => 'სამხრეთი სუდანი',
+ 'ST' => 'სან-ტომე და პრინსიპი',
+ 'SV' => 'სალვადორი',
+ 'SX' => 'სინტ-მარტენი',
+ 'SY' => 'სირია',
+ 'SZ' => 'სვაზილენდი',
+ 'TA' => 'ტრისტან-და-კუნია',
+ 'TC' => 'ტერკსის და კაიკოსის კუნძულები',
+ 'TD' => 'ჩადი',
+ 'TF' => 'ფრანგული სამხრეთის ტერიტორიები',
+ 'TG' => 'ტოგო',
+ 'TH' => 'ტაილანდი',
+ 'TJ' => 'ტაჯიკეთი',
+ 'TK' => 'ტოკელაუ',
+ 'TL' => 'ტიმორ-ლეშტი',
+ 'TM' => 'თურქმენეთი',
+ 'TN' => 'ტუნისი',
+ 'TO' => 'ტონგა',
+ 'TR' => 'თურქეთი',
+ 'TT' => 'ტრინიდადი და ტობაგო',
+ 'TV' => 'ტუვალუ',
+ 'TW' => 'ტაივანი',
+ 'TZ' => 'ტანზანია',
+ 'UA' => 'უკრაინა',
+ 'UG' => 'უგანდა',
+ 'UM' => 'აშშ-ის შორეული კუნძულები',
+ 'US' => 'აშშ',
+ 'UY' => 'ურუგვაი',
+ 'UZ' => 'უზბეკეთი',
+ 'VA' => 'ქალაქი ვატიკანი',
+ 'VC' => 'სენტ-ვინსენტი და გრენადინები',
+ 'VE' => 'ვენესუელა',
+ 'VG' => 'ბრიტანეთის ვირჯინიის კუნძულები',
+ 'VI' => 'აშშ-ის ვირჯინიის კუნძულები',
+ 'VN' => 'ვიეტნამი',
+ 'VU' => 'ვანუატუ',
+ 'WF' => 'უოლისი და ფუტუნა',
+ 'WS' => 'სამოა',
+ 'XK' => 'კოსოვო',
+ 'YE' => 'იემენი',
+ 'YT' => 'მაიოტა',
+ 'ZA' => 'სამხრეთ აფრიკა',
+ 'ZM' => 'ზამბია',
+ 'ZW' => 'ზიმბაბვე',
+);
+
+$timeUnits = array(
+ 'day-future-one' => '{0} დღეში',
+ 'day-future-other' => '{0} დღეში',
+ 'day-narrow-future-one' => '{0} დღეში',
+ 'day-narrow-future-other' => '{0} დღეში',
+ 'day-narrow-past-one' => '{0} დღის წინ',
+ 'day-narrow-past-other' => '{0} დღის წინ',
+ 'day-one' => '{0} დღე',
+ 'day-other' => '{0} დღე',
+ 'day-past-one' => '{0} დღის წინ',
+ 'day-past-other' => '{0} დღის წინ',
+ 'day-short-future-one' => '{0} დღეში',
+ 'day-short-future-other' => '{0} დღეში',
+ 'day-short-past-one' => '{0} დღის წინ',
+ 'day-short-past-other' => '{0} დღის წინ',
+ 'hour-future-one' => '{0} საათში',
+ 'hour-future-other' => '{0} საათში',
+ 'hour-narrow-future-one' => '{0} საათში',
+ 'hour-narrow-future-other' => '{0} საათში',
+ 'hour-narrow-past-one' => '{0} სთ წინ',
+ 'hour-narrow-past-other' => '{0} სთ წინ',
+ 'hour-one' => '{0} საათი',
+ 'hour-other' => '{0} საათი',
+ 'hour-past-one' => '{0} საათის წინ',
+ 'hour-past-other' => '{0} საათის წინ',
+ 'hour-short-future-one' => '{0} საათში',
+ 'hour-short-future-other' => '{0} საათში',
+ 'hour-short-past-one' => '{0} სთ წინ',
+ 'hour-short-past-other' => '{0} სთ წინ',
+ 'microsecond-one' => '{0} მიკროწამი',
+ 'microsecond-other' => '{0} მიკროწამი',
+ 'millisecond-one' => '{0} მილიწამი',
+ 'millisecond-other' => '{0} მილიწამი',
+ 'minute-future-one' => '{0} წუთში',
+ 'minute-future-other' => '{0} წუთში',
+ 'minute-narrow-future-one' => '{0} წუთში',
+ 'minute-narrow-future-other' => '{0} წუთში',
+ 'minute-narrow-past-one' => '{0} წთ წინ',
+ 'minute-narrow-past-other' => '{0} წთ წინ',
+ 'minute-one' => '{0} წუთი',
+ 'minute-other' => '{0} წუთი',
+ 'minute-past-one' => '{0} წუთის წინ',
+ 'minute-past-other' => '{0} წუთის წინ',
+ 'minute-short-future-one' => '{0} წუთში',
+ 'minute-short-future-other' => '{0} წუთში',
+ 'minute-short-past-one' => '{0} წთ წინ',
+ 'minute-short-past-other' => '{0} წთ წინ',
+ 'month-future-one' => '{0} თვეში',
+ 'month-future-other' => '{0} თვეში',
+ 'month-narrow-future-one' => '{0} თვეში',
+ 'month-narrow-future-other' => '{0} თვეში',
+ 'month-narrow-past-one' => '{0} თვის წინ',
+ 'month-narrow-past-other' => '{0} თვის წინ',
+ 'month-one' => '{0} თვე',
+ 'month-other' => '{0} თვე',
+ 'month-past-one' => '{0} თვის წინ',
+ 'month-past-other' => '{0} თვის წინ',
+ 'month-short-future-one' => '{0} თვეში',
+ 'month-short-future-other' => '{0} თვეში',
+ 'month-short-past-one' => '{0} თვის წინ',
+ 'month-short-past-other' => '{0} თვის წინ',
+ 'nanosecond-one' => '{0} ნანოწამი',
+ 'nanosecond-other' => '{0} ნანოწამი',
+ 'quarter-future-one' => '{0} კვარტალში',
+ 'quarter-future-other' => '{0} კვარტალში',
+ 'quarter-narrow-future-one' => '{0} კვარტალში',
+ 'quarter-narrow-future-other' => '{0} კვარტალში',
+ 'quarter-narrow-past-one' => '{0} კვარტ. წინ',
+ 'quarter-narrow-past-other' => '{0} კვარტ. წინ',
+ 'quarter-past-one' => '{0} კვარტალის წინ',
+ 'quarter-past-other' => '{0} კვარტალის წინ',
+ 'quarter-short-future-one' => '{0} კვარტალში',
+ 'quarter-short-future-other' => '{0} კვარტალში',
+ 'quarter-short-past-one' => '{0} კვარტ. წინ',
+ 'quarter-short-past-other' => '{0} კვარტ. წინ',
+ 'second-future-one' => '{0} წამში',
+ 'second-future-other' => '{0} წამში',
+ 'second-narrow-future-one' => '{0} წამში',
+ 'second-narrow-future-other' => '{0} წამში',
+ 'second-narrow-past-one' => '{0} წმ წინ',
+ 'second-narrow-past-other' => '{0} წმ წინ',
+ 'second-one' => '{0} წამი',
+ 'second-other' => '{0} წამი',
+ 'second-past-one' => '{0} წამის წინ',
+ 'second-past-other' => '{0} წამის წინ',
+ 'second-short-future-one' => '{0} წამში',
+ 'second-short-future-other' => '{0} წამში',
+ 'second-short-past-one' => '{0} წმ წინ',
+ 'second-short-past-other' => '{0} წმ წინ',
+ 'week-future-one' => '{0} კვირაში',
+ 'week-future-other' => '{0} კვირაში',
+ 'week-narrow-future-one' => '{0} კვირაში',
+ 'week-narrow-future-other' => '{0} კვირაში',
+ 'week-narrow-past-one' => '{0} კვირის წინ',
+ 'week-narrow-past-other' => '{0} კვირის წინ',
+ 'week-one' => '{0} კვირა',
+ 'week-other' => '{0} კვირა',
+ 'week-past-one' => '{0} კვირის წინ',
+ 'week-past-other' => '{0} კვირის წინ',
+ 'week-short-future-one' => '{0} კვირაში',
+ 'week-short-future-other' => '{0} კვირაში',
+ 'week-short-past-one' => '{0} კვ. წინ',
+ 'week-short-past-other' => '{0} კვ. წინ',
+ 'year-future-one' => '{0} წელიწადში',
+ 'year-future-other' => '{0} წელიწადში',
+ 'year-narrow-future-one' => '{0} წელში',
+ 'year-narrow-future-other' => '{0} წელში',
+ 'year-narrow-past-one' => '{0} წლის წინ',
+ 'year-narrow-past-other' => '{0} წლის წინ',
+ 'year-one' => '{0} წელი',
+ 'year-other' => '{0} წელი',
+ 'year-past-one' => '{0} წლის წინ',
+ 'year-past-other' => '{0} წლის წინ',
+ 'year-short-future-one' => '{0} წელში',
+ 'year-short-future-other' => '{0} წელში',
+ 'year-short-past-one' => '{0} წლის წინ',
+ 'year-short-past-other' => '{0} წლის წინ',
+);
diff --git a/MLEB/cldr/CldrNames/CldrNamesKab.php b/MLEB/cldr/CldrNames/CldrNamesKab.php
new file mode 100644
index 00000000..1d2e684b
--- /dev/null
+++ b/MLEB/cldr/CldrNames/CldrNamesKab.php
@@ -0,0 +1,339 @@
+<?php
+
+$languageNames = array(
+ 'ak' => 'Takanit',
+ 'am' => 'Tamahrict',
+ 'ar' => 'Taɛrabt',
+ 'be' => 'Tabilarusit',
+ 'bg' => 'Tabulgarit',
+ 'bn' => 'Tabengalit',
+ 'cs' => 'Tačikit',
+ 'de' => 'Talmant',
+ 'el' => 'Tagrikit',
+ 'en' => 'Taglizit',
+ 'es' => 'Taspenyulit',
+ 'fa' => 'Tafarisit',
+ 'fr' => 'Tafransist',
+ 'ha' => 'Tahwasit',
+ 'hi' => 'Tahendit',
+ 'hu' => 'Tahungarit',
+ 'id' => 'Tandunisit',
+ 'ig' => 'Tigbut',
+ 'it' => 'Taṭalyanit',
+ 'ja' => 'Tajapunit',
+ 'jv' => 'Tajavanit',
+ 'kab' => 'Taqbaylit',
+ 'km' => 'Takemrit',
+ 'ko' => 'Takurit',
+ 'ms' => 'Tamalawit',
+ 'my' => 'Taburmisit',
+ 'ne' => 'Tanipalit',
+ 'nl' => 'Tadučit',
+ 'pa' => 'Tapunjabit',
+ 'pl' => 'Tapulunit',
+ 'pt' => 'Tapurtugalit',
+ 'ro' => 'Tarumanit',
+ 'ru' => 'Tarusit',
+ 'rw' => 'Taruwandit',
+ 'so' => 'Taṣumalit',
+ 'sv' => 'Taswidit',
+ 'ta' => 'Taṭamulit',
+ 'th' => 'Taṭaylundit',
+ 'tr' => 'Taṭurkit',
+ 'uk' => 'Tukranit',
+ 'ur' => 'Turdut',
+ 'vi' => 'Tabyiṭnamit',
+ 'yo' => 'Tayurubit',
+ 'zh' => 'Tacinwat, Tamundarint',
+ 'zu' => 'Tazulut',
+);
+
+$currencyNames = array(
+ 'AED' => 'Adirham n Tgeldunin Taɛrabin Yedduklen',
+ 'AOA' => 'Akwanza n Ungula',
+ 'AUD' => 'Adular n Lusṭrali',
+ 'BHD' => 'Adinar Abaḥrini',
+ 'BIF' => 'Afrank Aburandi',
+ 'BWP' => 'Apula Abusṭwanan',
+ 'CAD' => 'Adular Akanadi',
+ 'CDF' => 'Afrank Akunguli',
+ 'CHF' => 'Afrank Aswis',
+ 'CNY' => 'Ayuwan Renminbi Acinwa',
+ 'CVE' => 'Akabuviradinu Askudi',
+ 'DJF' => 'Afrank Ajibuti',
+ 'DZD' => 'Adinar Azzayri',
+ 'EGP' => 'Apund Amaṣri',
+ 'ERN' => 'Anakfa Iritiri',
+ 'ETB' => 'Abir Utyupi',
+ 'EUR' => 'Uru',
+ 'GBP' => 'Apund Sterling Aglizi',
+ 'GHC' => 'Asidi Aɣani',
+ 'GMD' => 'Adalasi Agambi',
+ 'GNS' => 'Afrank Aɣini',
+ 'INR' => 'Arupi Ahendi',
+ 'JPY' => 'Ayen Ajappuni',
+ 'KES' => 'Aciling Akini',
+ 'KMF' => 'Afrank Akamiruni',
+ 'LRD' => 'Adular Alibiri',
+ 'LSL' => 'Aluṭi Alizuṭi',
+ 'LYD' => 'Adinar Alibi',
+ 'MAD' => 'Adirham Amerruki',
+ 'MGA' => 'Aryari Amalgac',
+ 'MRO' => 'Agiya Amuriṭani',
+ 'MUR' => 'Arupi Amurisi',
+ 'MWK' => 'Akwaca Amalawi',
+ 'MZM' => 'Amitikal Amuzembiqi',
+ 'NAD' => 'Adular Anamibi',
+ 'NGN' => 'Anayra Anijiri',
+ 'RWF' => 'Afrank Aruwandi',
+ 'SAR' => 'Aryal Asuɛudi',
+ 'SCR' => 'Arupi Aseycili',
+ 'SDG' => 'Apund Asudani',
+ 'SHP' => 'Apund Asant Ilini',
+ 'SLL' => 'Alyun',
+ 'SOS' => 'Aciling Aṣumali',
+ 'STD' => 'Asw Ṭum d Udubra Amenzay',
+ 'SZL' => 'Alilangini',
+ 'TND' => 'Adinar Atunsi',
+ 'TZS' => 'Aciling Aṭanẓani',
+ 'UGX' => 'Aciling Awgandi',
+ 'USD' => 'Adular WD',
+ 'XAF' => 'Afrank BCEA CFA',
+ 'XOF' => 'Afrank BCEAO CFA',
+ 'ZAR' => 'Arand Afriqi n Wadda',
+ 'ZMK' => 'Akwaca Azambi (1968–2012)',
+ 'ZMW' => 'Akwaca Azambi',
+ 'ZWD' => 'Adular Azimbabwi',
+);
+
+$currencySymbols = array(
+ 'DZD' => 'DA',
+);
+
+$countryNames = array(
+ 'AD' => 'Undura',
+ 'AE' => 'Tigeldunin Yedduklen Taɛrabin',
+ 'AF' => 'Afɣanistan',
+ 'AG' => 'Untiga d Barbuda',
+ 'AI' => 'Ungiya',
+ 'AL' => 'Lalbani',
+ 'AM' => 'Arminya',
+ 'AN' => 'Antilles n Tmura-Yessakesren',
+ 'AO' => 'Ungula',
+ 'AR' => 'Arjuntin',
+ 'AS' => 'Samwa Tamarikanit',
+ 'AT' => 'Ustriya',
+ 'AU' => 'Ustrali',
+ 'AW' => 'Aruba',
+ 'AZ' => 'Azrabijan',
+ 'BA' => 'Busna d Hersek',
+ 'BB' => 'Barbadus',
+ 'BD' => 'Bangladac',
+ 'BE' => 'Belǧik',
+ 'BF' => 'Burkina Fasu',
+ 'BG' => 'Bulgari',
+ 'BH' => 'Baḥrin',
+ 'BI' => 'Burandi',
+ 'BJ' => 'Binin',
+ 'BM' => 'Bermuda',
+ 'BN' => 'Bruney',
+ 'BO' => 'Bulivi',
+ 'BR' => 'Brizil',
+ 'BS' => 'Bahamas',
+ 'BT' => 'Bhutan',
+ 'BW' => 'Bustwana',
+ 'BY' => 'Bilarus',
+ 'BZ' => 'Biliz',
+ 'CA' => 'Kanada',
+ 'CD' => 'Tigduda Tagdudant n Kungu',
+ 'CF' => 'Tigduda n Tefriqt Talemmast',
+ 'CG' => 'Kungu',
+ 'CH' => 'Swis',
+ 'CI' => 'Kuṭ Divwar',
+ 'CK' => 'Tigzirin n Kuk',
+ 'CL' => 'Cili',
+ 'CM' => 'Kamirun',
+ 'CN' => 'Lacin',
+ 'CO' => 'Kulumbi',
+ 'CR' => 'Kusta Rika',
+ 'CU' => 'Kuba',
+ 'CV' => 'Tigzirin n yixef azegzaw',
+ 'CY' => 'Cipr',
+ 'CZ' => 'Čček',
+ 'DE' => 'Lalman',
+ 'DJ' => 'Ǧibuti',
+ 'DK' => 'Denmark',
+ 'DM' => 'Duminik',
+ 'DO' => 'Tigduda Taduminikit',
+ 'DZ' => 'Lezzayer',
+ 'EC' => 'Ikwaṭur',
+ 'EE' => 'Istunya',
+ 'EG' => 'Maṣr',
+ 'ER' => 'Iritiria',
+ 'ES' => 'Spanya',
+ 'ET' => 'Utyupi',
+ 'FI' => 'Finlund',
+ 'FJ' => 'Fiji',
+ 'FK' => 'Tigzirin n Falkland',
+ 'FM' => 'Mikrunizya',
+ 'FR' => 'Fransa',
+ 'GA' => 'Gabun',
+ 'GB' => 'Tagelda Yedduklen',
+ 'GD' => 'Grunad',
+ 'GE' => 'Jiyurji',
+ 'GF' => 'Ɣana tafransist',
+ 'GH' => 'Ɣana',
+ 'GI' => 'Jibraltar',
+ 'GL' => 'Grunland',
+ 'GM' => 'Gambya',
+ 'GN' => 'Ɣinya',
+ 'GP' => 'Gwadalupi',
+ 'GQ' => 'Ɣinya Tasebgast',
+ 'GR' => 'Lagris',
+ 'GT' => 'Gwatimala',
+ 'GU' => 'Gwam',
+ 'GW' => 'Ɣinya-Bisaw',
+ 'GY' => 'Guwana',
+ 'HN' => 'Hunduras',
+ 'HR' => 'Kerwasya',
+ 'HT' => 'Hayti',
+ 'HU' => 'Hungri',
+ 'ID' => 'Indunizi',
+ 'IE' => 'Lirlund',
+ 'IL' => 'Izrayil',
+ 'IN' => 'Lhend',
+ 'IO' => 'Akal Aglizi deg Ugaraw Ahendi',
+ 'IQ' => 'Lɛiraq',
+ 'IR' => 'Iran',
+ 'IS' => 'Island',
+ 'IT' => 'Ṭelyan',
+ 'JM' => 'Jamyika',
+ 'JO' => 'Lajurdani',
+ 'JP' => 'Jappu',
+ 'KE' => 'Kinya',
+ 'KG' => 'Kirigistan',
+ 'KH' => 'Cambudya',
+ 'KI' => 'Kiribati',
+ 'KM' => 'Kumur',
+ 'KN' => 'San Kits d Nivis',
+ 'KP' => 'Kurya, Ufella',
+ 'KR' => 'Kurya, Wadda',
+ 'KW' => 'Kuwayt',
+ 'KY' => 'Tigzirin n Kamyan',
+ 'KZ' => 'Kazaxistan',
+ 'LA' => 'Laws',
+ 'LB' => 'Lubnan',
+ 'LC' => 'San Lučya',
+ 'LI' => 'Layctenstan',
+ 'LK' => 'Sri Lanka',
+ 'LR' => 'Libirya',
+ 'LS' => 'Lizuṭu',
+ 'LT' => 'Liṭwanya',
+ 'LU' => 'Luksamburg',
+ 'LV' => 'Latvia',
+ 'LY' => 'Libya',
+ 'MA' => 'Lmerruk',
+ 'MC' => 'Munaku',
+ 'MD' => 'Muldabi',
+ 'MG' => 'Madaɣecqer',
+ 'MH' => 'Tigzirin n Marcal',
+ 'MK' => 'Masidwan',
+ 'ML' => 'Mali',
+ 'MM' => 'Myanmar',
+ 'MN' => 'Mungulya',
+ 'MP' => 'Tigzirin n Maryan Ufella',
+ 'MQ' => 'Martinik',
+ 'MR' => 'Muriṭanya',
+ 'MS' => 'Munsirat',
+ 'MT' => 'Malṭ',
+ 'MU' => 'Muris',
+ 'MV' => 'Maldib',
+ 'MW' => 'Malawi',
+ 'MX' => 'Meksik',
+ 'MY' => 'Malizya',
+ 'MZ' => 'Muzembiq',
+ 'NA' => 'Namibya',
+ 'NC' => 'Kalidunya Tamaynut',
+ 'NE' => 'Nijer',
+ 'NF' => 'Tigzirin Tinawfukin',
+ 'NG' => 'Nijirya',
+ 'NI' => 'Nikaragwa',
+ 'NL' => 'Timura-Yessakesren',
+ 'NO' => 'Nurvij',
+ 'NP' => 'Nipal',
+ 'NR' => 'Nuru',
+ 'NU' => 'Niwi',
+ 'NZ' => 'Ziland Tamaynut',
+ 'OM' => 'Ɛuman',
+ 'PA' => 'Panam',
+ 'PE' => 'Piru',
+ 'PF' => 'Pulunizi tafransist',
+ 'PG' => 'Ɣinya Tamaynut Tapaput',
+ 'PH' => 'Filipin',
+ 'PK' => 'Pakistan',
+ 'PL' => 'Pulund',
+ 'PM' => 'San Pyar d Miklun',
+ 'PN' => 'Pitkarin',
+ 'PR' => 'Purtu Riku',
+ 'PS' => 'Falisṭin d Ɣezza',
+ 'PT' => 'Purtugal',
+ 'PW' => 'Palu',
+ 'PY' => 'Paragway',
+ 'QA' => 'Qaṭar',
+ 'RE' => 'Timlilit',
+ 'RO' => 'Rumani',
+ 'RU' => 'Rrus',
+ 'RW' => 'Ruwanda',
+ 'SA' => 'Suɛudiya Taɛrabt',
+ 'SB' => 'Tigzirin n Sulumun',
+ 'SC' => 'Seycel',
+ 'SD' => 'Sudan',
+ 'SE' => 'Swid',
+ 'SG' => 'Singafur',
+ 'SH' => 'Sant Ilina',
+ 'SI' => 'Sluvinya',
+ 'SK' => 'Sluvakya',
+ 'SL' => 'Sira Lyun',
+ 'SM' => 'San Marinu',
+ 'SN' => 'Sinigal',
+ 'SO' => 'Ṣumal',
+ 'SR' => 'Surinam',
+ 'ST' => 'Saw Tumi d Pransip',
+ 'SV' => 'Salvadur',
+ 'SY' => 'Surya',
+ 'SZ' => 'Swazilund',
+ 'TC' => 'Ṭurk d Tegzirin n Kaykus',
+ 'TD' => 'Čad',
+ 'TG' => 'Ṭugu',
+ 'TH' => 'Ṭayland',
+ 'TJ' => 'Tajikistan',
+ 'TK' => 'Ṭuklu',
+ 'TL' => 'Tumur Asamar',
+ 'TM' => 'Ṭurkmanistan',
+ 'TN' => 'Tunes',
+ 'TO' => 'Ṭunga',
+ 'TR' => 'Ṭurk',
+ 'TT' => 'Ṭrindad d Ṭubagu',
+ 'TV' => 'Ṭuvalu',
+ 'TW' => 'Ṭaywan',
+ 'TZ' => 'Ṭanzanya',
+ 'UA' => 'Ukran',
+ 'UG' => 'Uɣanda',
+ 'US' => 'WDM',
+ 'UY' => 'Urugway',
+ 'UZ' => 'Uzbaxistan',
+ 'VA' => 'Awanek n Vatikan',
+ 'VC' => 'San Vansu d Grunadin',
+ 'VE' => 'Venzwila',
+ 'VG' => 'Tigzirin Tiverjiniyin Tigliziyin',
+ 'VI' => 'W.D. Tigzirin n Virginya',
+ 'VN' => 'Vyeṭnam',
+ 'VU' => 'Vanwatu',
+ 'WF' => 'Wallis d Futuna',
+ 'WS' => 'Samwa',
+ 'YE' => 'Lyamen',
+ 'YT' => 'Mayuṭ',
+ 'ZA' => 'Tafriqt Wadda',
+ 'ZM' => 'Zambya',
+ 'ZW' => 'Zimbabwi',
+);
diff --git a/MLEB/cldr/CldrNames/CldrNamesKi.php b/MLEB/cldr/CldrNames/CldrNamesKi.php
new file mode 100644
index 00000000..9f8f3f8b
--- /dev/null
+++ b/MLEB/cldr/CldrNames/CldrNamesKi.php
@@ -0,0 +1,339 @@
+<?php
+
+$languageNames = array(
+ 'ak' => 'Kiakan',
+ 'am' => 'Kiamhari',
+ 'ar' => 'Kĩarabu',
+ 'be' => 'Kibelarusi',
+ 'bg' => 'Kibulgaria',
+ 'bn' => 'Kibangla',
+ 'cs' => 'Kichecki',
+ 'de' => 'Kĩnjeremani',
+ 'el' => 'Kigiriki',
+ 'en' => 'Gĩthungũ',
+ 'es' => 'Kihispania',
+ 'fa' => 'Kiajemi',
+ 'fr' => 'Kĩbaranja',
+ 'ha' => 'Kihausa',
+ 'hi' => 'Kĩhĩndĩ',
+ 'hu' => 'Kihungari',
+ 'id' => 'Kiindonesia',
+ 'ig' => 'Kiigbo',
+ 'it' => 'Kĩtaliano',
+ 'ja' => 'Kĩnjabani',
+ 'jv' => 'Kijava',
+ 'ki' => 'Gikuyu',
+ 'km' => 'Kikambodia',
+ 'ko' => 'Kikorea',
+ 'ms' => 'Kimalesia',
+ 'my' => 'Kiburma',
+ 'ne' => 'Kinepali',
+ 'nl' => 'Kiholanzi',
+ 'pa' => 'Kipunjabi',
+ 'pl' => 'Kipolandi',
+ 'pt' => 'Kireno',
+ 'ro' => 'Kiromania',
+ 'ru' => 'Kĩracia',
+ 'rw' => 'Kinyarwanda',
+ 'so' => 'Kĩcumarĩ',
+ 'sv' => 'Kiswidi',
+ 'ta' => 'Kitamil',
+ 'th' => 'Kitailandi',
+ 'tr' => 'Kituruki',
+ 'uk' => 'Kiukrania',
+ 'ur' => 'Kiurdu',
+ 'vi' => 'Kivietinamu',
+ 'yo' => 'Kiyoruba',
+ 'zh' => 'Kĩcaina',
+ 'zu' => 'Kizulu',
+);
+
+$currencyNames = array(
+ 'AED' => 'Dirham ya Falme za Kiarabu',
+ 'AOA' => 'Kwanza ya Angola',
+ 'AUD' => 'Dola ya Australia',
+ 'BHD' => 'Dinari ya Bahareni',
+ 'BIF' => 'Faranga ya Burundi',
+ 'BWP' => 'Pula ya Botswana',
+ 'CAD' => 'Ndora ya Kananda',
+ 'CDF' => 'Faranga ya Kongo',
+ 'CHF' => 'Faranga ya Uswisi',
+ 'CNY' => 'Yuan Renminbi ya China',
+ 'CVE' => 'Eskudo ya Kepuvede',
+ 'DJF' => 'Faranga ya Jibuti',
+ 'DZD' => 'Dinari ya Aljeria',
+ 'EGP' => 'Pauni ya Misri',
+ 'ERN' => 'Nakfa ya Eritrea',
+ 'ETB' => 'Bir ya Uhabeshi',
+ 'EUR' => 'Yuro',
+ 'GBP' => 'Mbauini cia Ngeretha',
+ 'GHC' => 'Sedi ya Ghana',
+ 'GMD' => 'Dalasi ya Gambia',
+ 'GNS' => 'Faranga ya Gine',
+ 'INR' => 'Rubia rwa India',
+ 'JPY' => 'Sarafu ya Kijapani',
+ 'KES' => 'Ciringi ya Kenya',
+ 'KMF' => 'Faranga ya Komoro',
+ 'LRD' => 'Dola ya Liberia',
+ 'LSL' => 'Loti ya Lesoto',
+ 'LYD' => 'Dinari ya Libya',
+ 'MAD' => 'Dirham ya Moroko',
+ 'MGA' => 'Ariary ya Bukini',
+ 'MRO' => 'Ugwiya ya Moritania',
+ 'MUR' => 'Rupia ya Morisi',
+ 'MWK' => 'Kwacha ya Malawi',
+ 'MZM' => 'Metikali ya Msumbiji',
+ 'NAD' => 'Dola ya Namibia',
+ 'NGN' => 'Naira ya Nijeria',
+ 'RWF' => 'Faranga ya Rwanda',
+ 'SAR' => 'Riyal ya Saudia',
+ 'SCR' => 'Rupia ya Shelisheli',
+ 'SDG' => 'Pauni ya Sudani',
+ 'SHP' => 'Pauni ya Santahelena',
+ 'SLL' => 'Leoni',
+ 'SOS' => 'ciringi cia cumarĩ',
+ 'STD' => 'Dobra ya Sao Tome na Principe',
+ 'SZL' => 'Lilangeni',
+ 'TND' => 'Dinari ya Tunisia',
+ 'TZS' => 'ciringi cia Tanizania',
+ 'UGX' => 'ciringi cia Ũganda',
+ 'USD' => 'Ndora cia Amerika',
+ 'XAF' => 'Faranga CFA BEAC',
+ 'XOF' => 'Faranga CFA BCEAO',
+ 'ZAR' => 'Randi ya Afrika Kusini',
+ 'ZMK' => 'Kwacha ya Zambia (1968–2012)',
+ 'ZMW' => 'Kwacha ya Zambia',
+ 'ZWD' => 'Dola ya Zimbabwe',
+);
+
+$currencySymbols = array(
+ 'KES' => 'Ksh',
+);
+
+$countryNames = array(
+ 'AD' => 'Andora',
+ 'AE' => 'Falme za Kiarabu',
+ 'AF' => 'Afuganistani',
+ 'AG' => 'Antigua na Barbuda',
+ 'AI' => 'Anguilla',
+ 'AL' => 'Albania',
+ 'AM' => 'Armenia',
+ 'AN' => 'Antili za Uholanzi',
+ 'AO' => 'Angola',
+ 'AR' => 'Ajentina',
+ 'AS' => 'Samoa ya Marekani',
+ 'AT' => 'Austria',
+ 'AU' => 'Australia',
+ 'AW' => 'Aruba',
+ 'AZ' => 'Azabajani',
+ 'BA' => 'Bosnia na Hezegovina',
+ 'BB' => 'Babadosi',
+ 'BD' => 'Bangladeshi',
+ 'BE' => 'Ubelgiji',
+ 'BF' => 'Bukinafaso',
+ 'BG' => 'Bulgaria',
+ 'BH' => 'Bahareni',
+ 'BI' => 'Mburundi',
+ 'BJ' => 'Benini',
+ 'BM' => 'Bermuda',
+ 'BN' => 'Brunei',
+ 'BO' => 'Bolivia',
+ 'BR' => 'Brazili',
+ 'BS' => 'Bahama',
+ 'BT' => 'Butani',
+ 'BW' => 'Botswana',
+ 'BY' => 'Belarusi',
+ 'BZ' => 'Belize',
+ 'CA' => 'Kanada',
+ 'CD' => 'Jamhuri ya Kidemokrasia ya Kongo',
+ 'CF' => 'Jamhuri ya Afrika ya Kati',
+ 'CG' => 'Kongo',
+ 'CH' => 'Uswisi',
+ 'CI' => 'Kodivaa',
+ 'CK' => 'Visiwa vya Cook',
+ 'CL' => 'Chile',
+ 'CM' => 'Kameruni',
+ 'CN' => 'Caina',
+ 'CO' => 'Kolombia',
+ 'CR' => 'Kostarika',
+ 'CU' => 'Kiumba',
+ 'CV' => 'Kepuvede',
+ 'CY' => 'Kuprosi',
+ 'CZ' => 'Jamhuri ya Cheki',
+ 'DE' => 'Njeremani',
+ 'DJ' => 'Jibuti',
+ 'DK' => 'Denmaki',
+ 'DM' => 'Dominika',
+ 'DO' => 'Jamhuri ya Dominika',
+ 'DZ' => 'Aljeria',
+ 'EC' => 'Ekwado',
+ 'EE' => 'Estonia',
+ 'EG' => 'Misri',
+ 'ER' => 'Eritrea',
+ 'ES' => 'Hispania',
+ 'ET' => 'Uhabeshi',
+ 'FI' => 'Ufini',
+ 'FJ' => 'Fiji',
+ 'FK' => 'Visiwa vya Falkland',
+ 'FM' => 'Mikronesia',
+ 'FR' => 'Ubaranja',
+ 'GA' => 'Gaboni',
+ 'GB' => 'Ngeretha',
+ 'GD' => 'Grenada',
+ 'GE' => 'Jojia',
+ 'GF' => 'Gwiyana ya Ufaransa',
+ 'GH' => 'Ngana',
+ 'GI' => 'Jibralta',
+ 'GL' => 'Grinlandi',
+ 'GM' => 'Gambia',
+ 'GN' => 'Gine',
+ 'GP' => 'Gwadelupe',
+ 'GQ' => 'Ginekweta',
+ 'GR' => 'Ugiriki',
+ 'GT' => 'Gwatemala',
+ 'GU' => 'Gwam',
+ 'GW' => 'Ginebisau',
+ 'GY' => 'Guyana',
+ 'HN' => 'Hondurasi',
+ 'HR' => 'Korasia',
+ 'HT' => 'Haiti',
+ 'HU' => 'Hungaria',
+ 'ID' => 'Indonesia',
+ 'IE' => 'Ayalandi',
+ 'IL' => 'Israeli',
+ 'IN' => 'India',
+ 'IO' => 'Eneo la Uingereza katika Bahari Hindi',
+ 'IQ' => 'Iraki',
+ 'IR' => 'Uajemi',
+ 'IS' => 'Aislandi',
+ 'IT' => 'Italia',
+ 'JM' => 'Jamaika',
+ 'JO' => 'Njorondani',
+ 'JP' => 'Njabani',
+ 'KE' => 'Kenya',
+ 'KG' => 'Kirigizistani',
+ 'KH' => 'Kambodia',
+ 'KI' => 'Kiribati',
+ 'KM' => 'Komoro',
+ 'KN' => 'Santakitzi na Nevis',
+ 'KP' => 'Korea Kaskazini',
+ 'KR' => 'Korea Kusini',
+ 'KW' => 'Kuwaiti',
+ 'KY' => 'Visiwa vya Kayman',
+ 'KZ' => 'Kazakistani',
+ 'LA' => 'Laosi',
+ 'LB' => 'Lebanoni',
+ 'LC' => 'Santalusia',
+ 'LI' => 'Lishenteni',
+ 'LK' => 'Sirilanka',
+ 'LR' => 'Liberia',
+ 'LS' => 'Lesoto',
+ 'LT' => 'Litwania',
+ 'LU' => 'Lasembagi',
+ 'LV' => 'Lativia',
+ 'LY' => 'Libya',
+ 'MA' => 'Moroko',
+ 'MC' => 'Monako',
+ 'MD' => 'Moldova',
+ 'MG' => 'Bukini',
+ 'MH' => 'Visiwa vya Marshal',
+ 'MK' => 'Masedonia',
+ 'ML' => 'Mali',
+ 'MM' => 'Myama',
+ 'MN' => 'Mongolia',
+ 'MP' => 'Visiwa vya Mariana vya Kaskazini',
+ 'MQ' => 'Martiniki',
+ 'MR' => 'Moritania',
+ 'MS' => 'Montserrati',
+ 'MT' => 'Malta',
+ 'MU' => 'Morisi',
+ 'MV' => 'Modivu',
+ 'MW' => 'Malawi',
+ 'MX' => 'Meksiko',
+ 'MY' => 'Malesia',
+ 'MZ' => 'Msumbiji',
+ 'NA' => 'Namimbia',
+ 'NC' => 'Nyukaledonia',
+ 'NE' => 'Nijeri',
+ 'NF' => 'Kisiwa cha Norfok',
+ 'NG' => 'Nainjeria',
+ 'NI' => 'Nikaragwa',
+ 'NL' => 'Uholanzi',
+ 'NO' => 'Norwe',
+ 'NP' => 'Nepali',
+ 'NR' => 'Nauru',
+ 'NU' => 'Niue',
+ 'NZ' => 'Nyuzilandi',
+ 'OM' => 'Omani',
+ 'PA' => 'Panama',
+ 'PE' => 'Peru',
+ 'PF' => 'Polinesia ya Ufaransa',
+ 'PG' => 'Papua',
+ 'PH' => 'Filipino',
+ 'PK' => 'Pakistani',
+ 'PL' => 'Polandi',
+ 'PM' => 'Santapieri na Mikeloni',
+ 'PN' => 'Pitkairni',
+ 'PR' => 'Pwetoriko',
+ 'PS' => 'Ukingo wa Magharibi na Ukanda wa Gaza wa Palestina',
+ 'PT' => 'Ureno',
+ 'PW' => 'Palau',
+ 'PY' => 'Paragwai',
+ 'QA' => 'Katari',
+ 'RE' => 'Riyunioni',
+ 'RO' => 'Romania',
+ 'RU' => 'Urusi',
+ 'RW' => 'Rwanda',
+ 'SA' => 'Saudi',
+ 'SB' => 'Visiwa vya Solomon',
+ 'SC' => 'Shelisheli',
+ 'SD' => 'Sudani',
+ 'SE' => 'Uswidi',
+ 'SG' => 'Singapoo',
+ 'SH' => 'Santahelena',
+ 'SI' => 'Slovenia',
+ 'SK' => 'Slovakia',
+ 'SL' => 'Siera Leoni',
+ 'SM' => 'Samarino',
+ 'SN' => 'Senegali',
+ 'SO' => 'Somaria',
+ 'SR' => 'Surinamu',
+ 'ST' => 'Sao Tome na Principe',
+ 'SV' => 'Elsavado',
+ 'SY' => 'Siria',
+ 'SZ' => 'Uswazi',
+ 'TC' => 'Visiwa vya Turki na Kaiko',
+ 'TD' => 'Chadi',
+ 'TG' => 'Togo',
+ 'TH' => 'Tailandi',
+ 'TJ' => 'Tajikistani',
+ 'TK' => 'Tokelau',
+ 'TL' => 'Timori ya Mashariki',
+ 'TM' => 'Turukimenistani',
+ 'TN' => 'Tunisia',
+ 'TO' => 'Tonga',
+ 'TR' => 'Uturuki',
+ 'TT' => 'Trinidad na Tobago',
+ 'TV' => 'Tuvalu',
+ 'TW' => 'Taiwani',
+ 'TZ' => 'Tanzania',
+ 'UA' => 'Ukraini',
+ 'UG' => 'Uganda',
+ 'US' => 'Amerika',
+ 'UY' => 'Urugwai',
+ 'UZ' => 'Uzibekistani',
+ 'VA' => 'Vatikani',
+ 'VC' => 'Santavisenti na Grenadini',
+ 'VE' => 'Venezuela',
+ 'VG' => 'Visiwa vya Virgin vya Uingereza',
+ 'VI' => 'Visiwa vya Virgin vya Marekani',
+ 'VN' => 'Vietinamu',
+ 'VU' => 'Vanuatu',
+ 'WF' => 'Walis na Futuna',
+ 'WS' => 'Samoa',
+ 'YE' => 'Yemeni',
+ 'YT' => 'Mayotte',
+ 'ZA' => 'Afrika Kusini',
+ 'ZM' => 'Zambia',
+ 'ZW' => 'Zimbabwe',
+);
diff --git a/MLEB/cldr/CldrNames/CldrNamesKk_cyrl.php b/MLEB/cldr/CldrNames/CldrNamesKk_cyrl.php
new file mode 100644
index 00000000..fd1d6577
--- /dev/null
+++ b/MLEB/cldr/CldrNames/CldrNamesKk_cyrl.php
@@ -0,0 +1,908 @@
+<?php
+
+$languageNames = array(
+ 'ab' => 'абхаз тілі',
+ 'af' => 'африкаанс',
+ 'agq' => 'агхем',
+ 'ak' => 'акан',
+ 'am' => 'амхар',
+ 'ar' => 'араб тілі',
+ 'ar-001' => 'қазіргі стандартты араб тілі',
+ 'arn' => 'мапуче',
+ 'as' => 'ассам тілі',
+ 'asa' => 'асу',
+ 'ay' => 'Аймара',
+ 'az' => 'әзірбайжан тілі',
+ 'ba' => 'башқұрт тілі',
+ 'be' => 'беларус тілі',
+ 'bem' => 'бемба',
+ 'bez' => 'бена',
+ 'bg' => 'болгар тілі',
+ 'bm' => 'бамбара',
+ 'bn' => 'бенгал тілі',
+ 'bo' => 'тибет тілі',
+ 'br' => 'бретон тілі',
+ 'brx' => 'бодо тілі',
+ 'bs' => 'босния тілі',
+ 'ca' => 'каталан',
+ 'cgg' => 'кига',
+ 'chr' => 'чероки тілі',
+ 'ckb' => 'сорани тілі',
+ 'co' => 'корсикан тілі',
+ 'cs' => 'чех тілі',
+ 'cy' => 'валлий',
+ 'da' => 'дат',
+ 'dav' => 'таита',
+ 'de' => 'неміс тілі',
+ 'de-at' => 'австриялық неміс тілі',
+ 'de-ch' => 'неміс тілінің швейцариялық диалекті',
+ 'dje' => 'зарма',
+ 'dsb' => 'төменгі лужица тілі',
+ 'dua' => 'дуала',
+ 'dv' => 'Мальдив',
+ 'dyo' => 'диола',
+ 'dz' => 'дзонг-кэ',
+ 'ebu' => 'ембу',
+ 'ee' => 'эве',
+ 'efi' => 'эфик',
+ 'el' => 'грек тілі',
+ 'en' => 'ағылшын тілі',
+ 'en-au' => 'австралиялық ағылшын тілі',
+ 'en-ca' => 'канадалық ағылшын тілі',
+ 'en-gb' => 'британиялық ағылшын тілі',
+ 'en-us' => 'американдық ағылшын тілі',
+ 'eo' => 'эсперанто',
+ 'es' => 'испан тілі',
+ 'es-419' => 'латын американдық испан тілі',
+ 'es-es' => 'ибериялық испан тілі',
+ 'es-mx' => 'мексикалық испан тілі',
+ 'et' => 'эстон тілі',
+ 'eu' => 'баск',
+ 'fa' => 'парсы тілі',
+ 'fi' => 'фин',
+ 'fil' => 'филиппин',
+ 'fj' => 'фиджи',
+ 'fo' => 'фарер',
+ 'fr' => 'француз тілі',
+ 'fr-ca' => 'канадалық француз тілі',
+ 'fr-ch' => 'швейцариялық француз тілі',
+ 'fy' => 'батыс фриз',
+ 'ga' => 'ирланд тілі',
+ 'gag' => 'гагауз',
+ 'gd' => 'Солтүстік Шотландия',
+ 'gl' => 'гали',
+ 'gn' => 'гуарани',
+ 'gsw' => 'швейцариялық неміс тілі',
+ 'gu' => 'гуджарати',
+ 'guz' => 'гусии',
+ 'gv' => 'мэнс',
+ 'ha' => 'хауса',
+ 'haw' => 'гавай',
+ 'he' => 'иврит',
+ 'hi' => 'хинди',
+ 'hr' => 'хорват',
+ 'hsb' => 'жоғарғы лужица',
+ 'ht' => 'гаитян',
+ 'hu' => 'венгер',
+ 'hy' => 'армян тілі',
+ 'ia' => 'интерлингва',
+ 'id' => 'индонез тілі',
+ 'ie' => 'интерлингве',
+ 'ig' => 'игбо',
+ 'ii' => 'сычуан и тілі',
+ 'is' => 'исланд',
+ 'it' => 'итальян тілі',
+ 'iu' => 'инуктитут',
+ 'ja' => 'жапон тілі',
+ 'jgo' => 'нгомба',
+ 'jmc' => 'мачаме',
+ 'jv' => 'ява',
+ 'ka' => 'грузин тілі',
+ 'kab' => 'кабил',
+ 'kam' => 'камба',
+ 'kde' => 'маконде',
+ 'kea' => 'кабувердиана',
+ 'khq' => 'койра чини',
+ 'ki' => 'кикуйю',
+ 'kk' => 'қазақ тілі',
+ 'kl' => 'калаалисут',
+ 'kln' => 'каленжин',
+ 'km' => 'кхмер',
+ 'kn' => 'каннада',
+ 'ko' => 'кәріс тілі',
+ 'koi' => 'коми-пермь тілі',
+ 'kok' => 'конкани',
+ 'ks' => 'кашмир тілі',
+ 'ksb' => 'шамбала',
+ 'ksf' => 'бафиа',
+ 'ku' => 'күрд тілі',
+ 'kw' => 'корниш',
+ 'ky' => 'қырғыз тілі',
+ 'la' => 'латын',
+ 'lag' => 'ланги тілі',
+ 'lb' => 'люксембург',
+ 'lg' => 'ганда',
+ 'lkt' => 'лакота',
+ 'ln' => 'лингала',
+ 'lo' => 'лаос тілі',
+ 'lt' => 'литва тілі',
+ 'lu' => 'луба-катанга',
+ 'luo' => 'луо',
+ 'luy' => 'лухиа',
+ 'lv' => 'латыш тілі',
+ 'mas' => 'масай',
+ 'mer' => 'меру',
+ 'mfe' => 'морисиен',
+ 'mg' => 'малагаси',
+ 'mgh' => 'макуа-меетто',
+ 'mgo' => 'мета',
+ 'mi' => 'маори',
+ 'mk' => 'македон тілі',
+ 'ml' => 'малайялам',
+ 'mn' => 'моңғол тілі',
+ 'moh' => 'мохоки',
+ 'mr' => 'маратхи',
+ 'ms' => 'малай',
+ 'mt' => 'мальта',
+ 'mua' => 'мунданг',
+ 'my' => 'бирман',
+ 'naq' => 'нама',
+ 'nb' => 'норвегиялық букмол',
+ 'nd' => 'солтүстік ндебел',
+ 'ne' => 'непал',
+ 'nl' => 'нидерланд тілі',
+ 'nl-be' => 'фламанд тілі',
+ 'nmg' => 'квасио',
+ 'nn' => 'норвегиялық нинорск',
+ 'no' => 'норвег',
+ 'nqo' => 'нко',
+ 'nso' => 'Солтүстік сотхо',
+ 'nus' => 'нуер',
+ 'ny' => 'ньянджа',
+ 'nyn' => 'нианколе',
+ 'oc' => 'окситан',
+ 'om' => 'оромо',
+ 'or' => 'ория',
+ 'os' => 'осетин',
+ 'pa' => 'пенджаб',
+ 'pl' => 'поляк тілі',
+ 'ps' => 'пушту',
+ 'pt' => 'португал тілі',
+ 'pt-br' => 'бразилиялық португал тілі',
+ 'pt-pt' => 'еуропалық португал тілі',
+ 'qu' => 'кечуа',
+ 'quc' => 'киче',
+ 'rm' => 'романш',
+ 'rn' => 'рунди',
+ 'ro' => 'румын',
+ 'ro-md' => 'молдован тілі',
+ 'rof' => 'ромбо',
+ 'ru' => 'орыс тілі',
+ 'rw' => 'киньяруанда',
+ 'rwk' => 'руа',
+ 'sa' => 'санскрит',
+ 'sah' => 'якут',
+ 'saq' => 'самбуру',
+ 'sbp' => 'сангу',
+ 'sd' => 'синдхи',
+ 'se' => 'солтүстік сами',
+ 'seh' => 'сена',
+ 'ses' => 'койраборо сенни',
+ 'sg' => 'санго',
+ 'sh' => 'сербхорват',
+ 'shi' => 'ташелхит',
+ 'si' => 'сингал',
+ 'sk' => 'словак',
+ 'sl' => 'словен',
+ 'sma' => 'оңтүстік саами',
+ 'smj' => 'луле саам',
+ 'smn' => 'инари саам',
+ 'sms' => 'сколт саам',
+ 'sn' => 'шона',
+ 'so' => 'сомали',
+ 'sq' => 'албан',
+ 'sr' => 'серб тілі',
+ 'st' => 'сесото',
+ 'su' => 'судан',
+ 'sv' => 'швед',
+ 'sw' => 'суахили',
+ 'swc' => 'конго суахили тілі',
+ 'ta' => 'тамил',
+ 'te' => 'телугу',
+ 'teo' => 'тесо',
+ 'tg' => 'тәжік тілі',
+ 'th' => 'тай',
+ 'ti' => 'тигринья',
+ 'tk' => 'түрікмен',
+ 'tlh' => 'клингон',
+ 'to' => 'тонган',
+ 'tr' => 'түрік',
+ 'tt' => 'татар тілі',
+ 'tw' => 'тви',
+ 'twq' => 'тасавак',
+ 'tzm' => 'орталық атлас тамасагихт тілі',
+ 'ug' => 'ұйғыр тілі',
+ 'uk' => 'украин тілі',
+ 'und' => 'белгісіз тіл',
+ 'ur' => 'урду',
+ 'uz' => 'өзбек',
+ 'vai' => 'вай',
+ 'vi' => 'вьетнам',
+ 'vun' => 'вунджо',
+ 'wo' => 'волоф',
+ 'xh' => 'ксоза',
+ 'xog' => 'сога',
+ 'yi' => 'идиш',
+ 'yo' => 'йоруба',
+ 'zgh' => 'марокколық стандартты тамазигхт',
+ 'zh' => 'қытай тілі',
+ 'zh-hans' => 'жеңілдетілген қытай тілі',
+ 'zh-hant' => 'дәстүрлі қытай тілі',
+ 'zu' => 'зулу',
+ 'zxx' => 'тілдік мазмұны жоқ',
+);
+
+$currencyNames = array(
+ 'AED' => 'Дихрам (БАЭ)',
+ 'AFN' => 'Ауғаныстан афганиі',
+ 'ALL' => 'Албания лекі',
+ 'AMD' => 'Армения драмы',
+ 'ANG' => 'Нидерланд антиль гульдені',
+ 'AOA' => 'Ангола кванзасы',
+ 'ARS' => 'Аргентина песосы',
+ 'AUD' => 'Австралия доллары',
+ 'AWG' => 'Арубан флоринсы',
+ 'AZM' => 'Азербайджан манаты (1993–2006)',
+ 'AZN' => 'Әзірбайжан манаты',
+ 'BAM' => 'Босния және Герцеговина айырбасталмалы маркасы',
+ 'BBD' => 'Барбадос доллары',
+ 'BDT' => 'Бангладеш такасы',
+ 'BGN' => 'Болгар леві',
+ 'BHD' => 'Бахрейн динары',
+ 'BIF' => 'Бурунди франкы',
+ 'BMD' => 'Бермуд доллары',
+ 'BND' => 'Бруней доллары',
+ 'BOB' => 'Боливия боливианосы',
+ 'BRL' => 'Бразилия реалы',
+ 'BSD' => 'Багам доллары',
+ 'BTN' => 'Бутан нгултрумы',
+ 'BWP' => 'Ботсвана пуласы',
+ 'BYR' => 'Беларус рублі',
+ 'BZD' => 'Белиз доллары',
+ 'CAD' => 'Канада доллары',
+ 'CDF' => 'Конго франкы',
+ 'CHF' => 'Швейцария франкы',
+ 'CLP' => 'Чили песосы',
+ 'CNY' => 'Қытай юаны',
+ 'COP' => 'Колумбия песосы',
+ 'CRC' => 'Коста-рика колоны',
+ 'CUC' => 'Куба айырбасталмалы песосы',
+ 'CUP' => 'Куба песосы',
+ 'CVE' => 'Кабо-Верде эскудосы',
+ 'CZK' => 'Чех кронасы',
+ 'DJF' => 'Джибути франкы',
+ 'DKK' => 'Дат кроны',
+ 'DOP' => 'Доминикан песосы',
+ 'DZD' => 'Алжир динары',
+ 'EGP' => 'Мысыр фунты',
+ 'ERN' => 'Эритрей накфасы',
+ 'ETB' => 'Эфиопия быры',
+ 'EUR' => 'Еуро',
+ 'FJD' => 'Фиджи доллары',
+ 'FKP' => 'Фолкленд аралдарының фунты',
+ 'GBP' => 'Британия фунты',
+ 'GEL' => 'Грузия лариі',
+ 'GHS' => 'Гана седиі',
+ 'GIP' => 'Гибралтар фунты',
+ 'GMD' => 'Гамбия даласиі',
+ 'GNF' => 'Гвиней франкы',
+ 'GTQ' => 'Гватемала кетсалі',
+ 'GYD' => 'Гайана доллары',
+ 'HKD' => 'Гонконг доллары',
+ 'HNL' => 'Гондурас лемпираcы',
+ 'HRK' => 'Хорватия кунасы',
+ 'HTG' => 'Гаити гурды',
+ 'HUF' => 'Венгер форинты',
+ 'IDR' => 'Индонезия рупиі',
+ 'ILS' => 'Израиль жаңа шекелі',
+ 'INR' => 'Үнді рупиясы',
+ 'IQD' => 'Ирак динары',
+ 'IRR' => 'Иран риалы',
+ 'ISK' => 'Исландия кронасы',
+ 'JMD' => 'Ямайка доллары',
+ 'JOD' => 'Йордания динары',
+ 'JPY' => 'Жапон иені',
+ 'KES' => 'Кения шиллингі',
+ 'KGS' => 'Қырғызстан сомы',
+ 'KHR' => 'Камбоджа риелі',
+ 'KMF' => 'Комор аралдары франкы',
+ 'KPW' => 'Солтүстік Корея воны',
+ 'KRW' => 'Оңтүстік Корея воны',
+ 'KWD' => 'Кувейт динары',
+ 'KYD' => 'Кайман аралдары доллары',
+ 'KZT' => 'Қазақстан теңгесі',
+ 'LAK' => 'Лаос кипі',
+ 'LBP' => 'Ливан фунты',
+ 'LKR' => 'Шри-Ланка рупиясы',
+ 'LRD' => 'Либерия доллары',
+ 'LTL' => 'Литва литы',
+ 'LVL' => 'Латвия латы',
+ 'LYD' => 'Ливия динары',
+ 'MAD' => 'Марокко дирхамы',
+ 'MDL' => 'Молдава лейі',
+ 'MGA' => 'Малагаси ариариы',
+ 'MKD' => 'Македония динары',
+ 'MMK' => 'Мьянма кьяты',
+ 'MNT' => 'Моңғолия тугрикасы',
+ 'MOP' => 'Макао патакасы',
+ 'MRO' => 'Мавритания угиясы',
+ 'MUR' => 'Маврикий рупиясы',
+ 'MVR' => 'Мальдив руфиясы',
+ 'MWK' => 'Малави квачасы',
+ 'MXN' => 'Мексика пессосы',
+ 'MYR' => 'Малайзия ринггиті',
+ 'MZN' => 'Мозамбик метикалы',
+ 'NAD' => 'Намибия доллары',
+ 'NGN' => 'Нигерия найрасы',
+ 'NIO' => 'Никарагуа кордобасы',
+ 'NOK' => 'Норвегия кроны',
+ 'NPR' => 'Непал рупиі',
+ 'NZD' => 'Жаңа Зеландия доллары',
+ 'OMR' => 'Оман риалы',
+ 'PAB' => 'Панама бальбоасы',
+ 'PEN' => 'Перу жаңа солі',
+ 'PGK' => 'Папуа - Жаңа Гвинея кинасы',
+ 'PHP' => 'Филиппин песосы',
+ 'PKR' => 'Пәкістан рупиі',
+ 'PLN' => 'Польша злотасы',
+ 'PYG' => 'Парагвай гуараниі',
+ 'QAR' => 'Катар риалы',
+ 'RON' => 'Румыния лейі',
+ 'RSD' => 'Сербия динары',
+ 'RUB' => 'Ресей рубль',
+ 'RWF' => 'Руанда франкы',
+ 'SAR' => 'Сауд Арабия риалы',
+ 'SBD' => 'Соломон аралдары доллары',
+ 'SCR' => 'Сейшель рупиясы',
+ 'SDG' => 'Судан фунты',
+ 'SEK' => 'Швед кроны',
+ 'SGD' => 'Сингапур доллары',
+ 'SHP' => 'Әулие Елена аралы фунты',
+ 'SLL' => 'Сьерра-Леоне леонесы',
+ 'SOS' => 'Сомали шиллингі',
+ 'SRD' => 'Суринам доллары',
+ 'SSP' => 'Оңтүстік Судан фунты',
+ 'STD' => 'Сант-Томе мен Принсипи добрасы',
+ 'SYP' => 'Сирия фунты',
+ 'SZL' => 'Свазиленд лилангениі',
+ 'THB' => 'Тай баты',
+ 'TJS' => 'Тәжікстан сомониі',
+ 'TMT' => 'Түрікменстан манаты',
+ 'TND' => 'Тунис динары',
+ 'TOP' => 'Тонга паангасы',
+ 'TRY' => 'Түрік лирасы',
+ 'TTD' => 'Тринидад пен Тобаго доллары',
+ 'TWD' => 'Жаңа Тайван доллары',
+ 'TZS' => 'Танзания шиллингі',
+ 'UAH' => 'Украина гривнасы',
+ 'UGX' => 'Уганда шиллингі',
+ 'USD' => 'АҚШ доллары',
+ 'UYU' => 'Уругвай песосы',
+ 'UZS' => 'Өзбекстан сомы',
+ 'VEF' => 'Венесуэла боливары',
+ 'VND' => 'Вьетнам донгы',
+ 'VUV' => 'Вануату ватуы',
+ 'WST' => 'Самоа таласы',
+ 'XAF' => 'КФА ВЕАС франкы',
+ 'XCD' => 'Шығыс Кариб доллары',
+ 'XOF' => 'КФА ВСЕАО франкы',
+ 'XPF' => 'КФП франкы',
+ 'XXX' => 'Белгісіз валюта',
+ 'YER' => 'Йемен риалы',
+ 'ZAR' => 'Оңтүстік Африка рэнді',
+ 'ZMW' => 'Замбия квачасы',
+);
+
+$currencySymbols = array(
+ 'AED' => 'AED',
+ 'AFN' => 'AFN',
+ 'AMD' => 'AMD',
+ 'ANG' => 'ANG',
+ 'AOA' => 'AOA',
+ 'AUD' => 'A$',
+ 'AWG' => 'AWG',
+ 'AZN' => 'AZN',
+ 'BBD' => 'BBD',
+ 'BDT' => 'BDT',
+ 'BHD' => 'BHD',
+ 'BIF' => 'BIF',
+ 'BMD' => 'БД',
+ 'BND' => 'BND',
+ 'BSD' => 'BSD',
+ 'BTN' => 'BTN',
+ 'BWP' => 'BWP',
+ 'BZD' => 'BZD',
+ 'CAD' => 'КД$',
+ 'CDF' => 'CDF',
+ 'CNY' => 'CN¥',
+ 'CRC' => 'CRC',
+ 'CUC' => 'CUC',
+ 'CUP' => 'CUP',
+ 'CVE' => 'CVE',
+ 'DJF' => 'DJF',
+ 'DOP' => 'DOP',
+ 'DZD' => 'DZD',
+ 'EGP' => 'EGP',
+ 'ERN' => 'ERN',
+ 'ETB' => 'ETB',
+ 'FJD' => 'FJD',
+ 'GEL' => 'GEL',
+ 'GHS' => 'GHS',
+ 'GMD' => 'GMD',
+ 'GNF' => 'GNF',
+ 'GTQ' => 'GTQ',
+ 'HKD' => 'HK$',
+ 'HNL' => 'HNL',
+ 'HTG' => 'HTG',
+ 'IDR' => 'IDR',
+ 'ILS' => '₪',
+ 'INR' => '₹',
+ 'IQD' => 'IQD',
+ 'IRR' => 'IRR',
+ 'JMD' => 'JMD',
+ 'JOD' => 'JOD',
+ 'JPY' => 'JP¥',
+ 'KES' => 'KES',
+ 'KGS' => 'KGS',
+ 'KHR' => 'KHR',
+ 'KMF' => 'KMF',
+ 'KPW' => 'KPW',
+ 'KRW' => '₩',
+ 'KWD' => 'KWD',
+ 'KYD' => 'KYD',
+ 'KZT' => '₸',
+ 'LAK' => 'LAK',
+ 'LBP' => 'LBP',
+ 'LKR' => 'LKR',
+ 'LRD' => 'LRD',
+ 'LYD' => 'LYD',
+ 'MAD' => 'MAD',
+ 'MGA' => 'MGA',
+ 'MMK' => 'MMK',
+ 'MNT' => 'MNT',
+ 'MOP' => 'MOP',
+ 'MRO' => 'MRO',
+ 'MUR' => 'MUR',
+ 'MVR' => 'MVR',
+ 'MWK' => 'MWK',
+ 'MXN' => 'MX$',
+ 'MYR' => 'MYR',
+ 'MZN' => 'MZN',
+ 'NAD' => 'NAD',
+ 'NGN' => 'NGN',
+ 'NIO' => 'NIO',
+ 'NPR' => 'NPR',
+ 'NZD' => 'NZ$',
+ 'OMR' => 'OMR',
+ 'PAB' => 'PAB',
+ 'PGK' => 'PGK',
+ 'PHP' => 'PHP',
+ 'PKR' => 'PKR',
+ 'QAR' => 'QAR',
+ 'RUB' => 'руб.',
+ 'RWF' => 'RWF',
+ 'SAR' => 'SAR',
+ 'SBD' => 'SBD',
+ 'SCR' => 'SCR',
+ 'SDG' => 'SDG',
+ 'SGD' => 'SGD',
+ 'SHP' => 'SHP',
+ 'SLL' => 'SLL',
+ 'SOS' => 'SOS',
+ 'SSP' => 'SSP',
+ 'STD' => 'STD',
+ 'SYP' => 'SYP',
+ 'SZL' => 'SZL',
+ 'THB' => '฿',
+ 'TJS' => 'TJS',
+ 'TMT' => 'TMT',
+ 'TND' => 'TND',
+ 'TOP' => 'TOP',
+ 'TRY' => 'TRY',
+ 'TTD' => 'TTD',
+ 'TWD' => 'NT$',
+ 'TZS' => 'TZS',
+ 'UGX' => 'UGX',
+ 'USD' => '$',
+ 'UZS' => 'UZS',
+ 'VND' => '₫',
+ 'VUV' => 'VUV',
+ 'WST' => 'WST',
+ 'XAF' => 'FCFA',
+ 'XCD' => 'EC$',
+ 'XOF' => 'CFA',
+ 'XPF' => 'CFPF',
+ 'YER' => 'YER',
+ 'ZAR' => 'ZAR',
+ 'ZMW' => 'ZMW',
+);
+
+$countryNames = array(
+ 'AC' => 'Ғибадат аралы',
+ 'AD' => 'Андорра',
+ 'AE' => 'Біріккен Араб Эмираттары',
+ 'AF' => 'Ауғанстан',
+ 'AG' => 'Антигуа мен Барбуда',
+ 'AI' => 'Ангилья',
+ 'AL' => 'Албания',
+ 'AM' => 'Армения',
+ 'AO' => 'Ангола',
+ 'AQ' => 'Антарктика',
+ 'AR' => 'Аргентина',
+ 'AS' => 'Американ Самоасы',
+ 'AT' => 'Австрия',
+ 'AU' => 'Австралия',
+ 'AW' => 'Аруба',
+ 'AX' => 'Аланд аралдары',
+ 'AZ' => 'Әзербайжан',
+ 'BA' => 'Босния және Герцеговина',
+ 'BB' => 'Барбадос',
+ 'BD' => 'Бангладеш',
+ 'BE' => 'Бельгия',
+ 'BF' => 'Буркина-Фасо',
+ 'BG' => 'Болгария',
+ 'BH' => 'Бахрейн',
+ 'BI' => 'Бурунди',
+ 'BJ' => 'Бенин',
+ 'BL' => 'Сен-Бартелеми',
+ 'BM' => 'Бермуд аралдары',
+ 'BN' => 'Бруней',
+ 'BO' => 'Боливия',
+ 'BQ' => 'Кариб Нидерландысы',
+ 'BR' => 'Бразилия',
+ 'BS' => 'Багам аралдары',
+ 'BT' => 'Бутан',
+ 'BV' => 'Буве аралы',
+ 'BW' => 'Ботсвана',
+ 'BY' => 'Беларусь',
+ 'BZ' => 'Белиз',
+ 'CA' => 'Канада',
+ 'CC' => 'Кокос аралдары',
+ 'CD' => 'Конго',
+ 'CF' => 'Орталық Африка Республикасы',
+ 'CG' => 'Конго-Браззавиль Республикасы',
+ 'CH' => 'Швейцария',
+ 'CI' => 'Кот-д’Ивуар',
+ 'CK' => 'Кук аралдары',
+ 'CL' => 'Чили',
+ 'CM' => 'Камерун',
+ 'CN' => 'Қытай',
+ 'CO' => 'Колумбия',
+ 'CP' => 'Клиппертон аралы',
+ 'CR' => 'Коста-Рика',
+ 'CU' => 'Куба',
+ 'CV' => 'Кабо-Верде',
+ 'CW' => 'Кюрасао',
+ 'CX' => 'Кристмас аралы',
+ 'CY' => 'Кипр',
+ 'CZ' => 'Чех Республикасы',
+ 'DE' => 'Германия',
+ 'DG' => 'Диего-Гарсия',
+ 'DJ' => 'Джибути',
+ 'DK' => 'Дания',
+ 'DM' => 'Доминика',
+ 'DO' => 'Доминикан Республикасы',
+ 'DZ' => 'Алжир',
+ 'EA' => 'Сеута мен Мелилья',
+ 'EC' => 'Эквадор',
+ 'EE' => 'Эстония',
+ 'EG' => 'Мысыр',
+ 'EH' => 'Батыс Сахара',
+ 'ER' => 'Эритрея',
+ 'ES' => 'Испания',
+ 'ET' => 'Эфиопия',
+ 'EU' => 'Еуропалық Одақ',
+ 'FI' => 'Финляндия',
+ 'FJ' => 'Фиджи',
+ 'FK' => 'Фолкленд аралдары',
+ 'FM' => 'Микронезия',
+ 'FO' => 'Фарер аралдары',
+ 'FR' => 'Франция',
+ 'GA' => 'Габон',
+ 'GB' => 'БК',
+ 'GD' => 'Гренада',
+ 'GE' => 'Грузия',
+ 'GF' => 'Француз Гвианасы',
+ 'GG' => 'Гернси',
+ 'GH' => 'Гана',
+ 'GI' => 'Гибралтар',
+ 'GL' => 'Гренландия',
+ 'GM' => 'Гамбия',
+ 'GN' => 'Гвинея',
+ 'GP' => 'Гваделупа',
+ 'GQ' => 'Экваторлық Гвинея',
+ 'GR' => 'Греция',
+ 'GS' => 'Оңтүстік Георгия және Оңтүстік Сандвичев аралы',
+ 'GT' => 'Гватемала',
+ 'GU' => 'Гуам',
+ 'GW' => 'Гвинея-Бисау',
+ 'GY' => 'Гайана',
+ 'HK' => 'Гонконг',
+ 'HM' => 'Херд аралы мен Макдональд аралы',
+ 'HN' => 'Гондурас',
+ 'HR' => 'Хорватия',
+ 'HT' => 'Гаити',
+ 'HU' => 'Венгрия',
+ 'IC' => 'Канар аралдары',
+ 'ID' => 'Индонезия',
+ 'IE' => 'Ирландия',
+ 'IL' => 'Израиль',
+ 'IM' => 'Мэн аралы',
+ 'IN' => 'Үндістан',
+ 'IO' => 'Үнді мұхитындағы Британ аймағы',
+ 'IQ' => 'Ирак',
+ 'IR' => 'Иран',
+ 'IS' => 'Исландия',
+ 'IT' => 'Италия',
+ 'JE' => 'Джерси',
+ 'JM' => 'Ямайка',
+ 'JO' => 'Иордания',
+ 'JP' => 'Жапония',
+ 'KE' => 'Кения',
+ 'KG' => 'Қырғызстан',
+ 'KH' => 'Камбоджа',
+ 'KI' => 'Кирибати',
+ 'KM' => 'Комор',
+ 'KN' => 'Сент-Китс және Невис',
+ 'KP' => 'Оңтүстік Корея',
+ 'KR' => 'Солтүстік Корея',
+ 'KW' => 'Кувейт',
+ 'KY' => 'Кайман аралдары',
+ 'KZ' => 'Қазақстан',
+ 'LA' => 'Лаос',
+ 'LB' => 'Ливан',
+ 'LC' => 'Сент-Люсия',
+ 'LI' => 'Лихтенштейн',
+ 'LK' => 'Шри-Ланка',
+ 'LR' => 'Либерия',
+ 'LS' => 'Лесото',
+ 'LT' => 'Литва',
+ 'LU' => 'Люксембург',
+ 'LV' => 'Латвия',
+ 'LY' => 'Либия',
+ 'MA' => 'Морокко',
+ 'MC' => 'Монако',
+ 'MD' => 'Молдова',
+ 'ME' => 'Черногория',
+ 'MF' => 'Сен-Мартен',
+ 'MG' => 'Мадагаскар',
+ 'MH' => 'Маршалл аралдары',
+ 'MK' => 'Македония',
+ 'ML' => 'Мали',
+ 'MM' => 'Мьянма (Бирма)',
+ 'MN' => 'Моңғолия',
+ 'MO' => 'Макао',
+ 'MP' => 'Солтүстік Мариан аралдары',
+ 'MQ' => 'Мартиника',
+ 'MR' => 'Мавритания',
+ 'MS' => 'Монтсеррат',
+ 'MT' => 'Мальта',
+ 'MU' => 'Маврикий',
+ 'MV' => 'Мальдив Республикасы',
+ 'MW' => 'Малави',
+ 'MX' => 'Мексика',
+ 'MY' => 'Малайзия',
+ 'MZ' => 'Мозамбик',
+ 'NA' => 'Намибия',
+ 'NC' => 'Жаңа Каледония',
+ 'NE' => 'Нигер',
+ 'NF' => 'Норфолк аралы',
+ 'NG' => 'Нигерия',
+ 'NI' => 'Никарагуа',
+ 'NL' => 'Голландия',
+ 'NO' => 'Норвегия',
+ 'NP' => 'Непал',
+ 'NR' => 'Науру',
+ 'NU' => 'Ниуэ',
+ 'NZ' => 'Жаңа Зеландия',
+ 'OM' => 'Оман',
+ 'PA' => 'Панама',
+ 'PE' => 'Перу',
+ 'PF' => 'Француз Полинезиясы',
+ 'PG' => 'Папуа — Жаңа Гвинея',
+ 'PH' => 'Филиппиндер',
+ 'PK' => 'Пәкістан',
+ 'PL' => 'Польша',
+ 'PM' => 'Сен-Пьер және Микелон',
+ 'PN' => 'Питкэрн аралдары',
+ 'PR' => 'Пуэрто-Рико',
+ 'PS' => 'Палестина',
+ 'PT' => 'Португалия',
+ 'PW' => 'Палау',
+ 'PY' => 'Парагвай',
+ 'QA' => 'Катар',
+ 'QO' => 'Алыс Океания',
+ 'RE' => 'Реюньон',
+ 'RO' => 'Румыния',
+ 'RS' => 'Сербия',
+ 'RU' => 'Ресей',
+ 'RW' => 'Руанда',
+ 'SA' => 'Сауд Арабиясы',
+ 'SB' => 'Соломон аралдары',
+ 'SC' => 'Сейшель аралдары',
+ 'SD' => 'Судан',
+ 'SE' => 'Швеция',
+ 'SG' => 'Сингапур',
+ 'SH' => 'Әулие Елена аралы',
+ 'SI' => 'Словения',
+ 'SJ' => 'Шпицберген мен Ян-Майен',
+ 'SK' => 'Словакия',
+ 'SL' => 'Сьерра-Леоне',
+ 'SM' => 'Сан-Марино',
+ 'SN' => 'Сенегал',
+ 'SO' => 'Сомали',
+ 'SR' => 'Суринам',
+ 'SS' => 'Оңтүстік Судан',
+ 'ST' => 'Сан-Томе мен Принсипи',
+ 'SV' => 'Сальвадор',
+ 'SX' => 'Синт-Мартен',
+ 'SY' => 'Сирия',
+ 'SZ' => 'Свазиленд',
+ 'TA' => 'Тристан-да-Кунья',
+ 'TC' => 'Туркс пен Кайкос',
+ 'TD' => 'Чад',
+ 'TF' => 'Францияның солтүстік аймағы',
+ 'TG' => 'Того',
+ 'TH' => 'Тайланд',
+ 'TJ' => 'Тәжікстан',
+ 'TK' => 'Токелау',
+ 'TL' => 'Тимор-Лесте',
+ 'TM' => 'Түрікменстан',
+ 'TN' => 'Тунис',
+ 'TO' => 'Тонга',
+ 'TR' => 'Түркия',
+ 'TT' => 'Тринидад пен Тобаго',
+ 'TV' => 'Тувалу',
+ 'TW' => 'Тайвань',
+ 'TZ' => 'Танзания',
+ 'UA' => 'Украина',
+ 'UG' => 'Уганда',
+ 'UM' => 'АҚШ-тың ішкі кіші аралдары',
+ 'US' => 'АҚШ',
+ 'UY' => 'Уругвай',
+ 'UZ' => 'Өзбекстан',
+ 'VA' => 'Ватикан',
+ 'VC' => 'Сент-Винсент және Гренадиндер',
+ 'VE' => 'Венесуэла',
+ 'VG' => 'Британдық Виргин аралдары',
+ 'VI' => 'АҚШ-тың Виргин аралдары',
+ 'VN' => 'Вьетнам',
+ 'VU' => 'Вануату',
+ 'WF' => 'Уоллис пен Футуна',
+ 'WS' => 'Самоа',
+ 'XK' => 'Косово',
+ 'YE' => 'Йемен',
+ 'YT' => 'Майотта',
+ 'ZA' => 'Оңтүстік Африка республикасы',
+ 'ZM' => 'Замбия',
+ 'ZW' => 'Зимбабве',
+);
+
+$timeUnits = array(
+ 'day-future-one' => '{0} күннен кейін',
+ 'day-future-other' => '{0} күннен кейін',
+ 'day-narrow-future-one' => '{0} күннен кейін',
+ 'day-narrow-future-other' => '{0} күннен кейін',
+ 'day-narrow-past-one' => '{0} күн бұрын',
+ 'day-narrow-past-other' => '{0} күн бұрын',
+ 'day-one' => '{0} тәулік',
+ 'day-other' => '{0} тәулік',
+ 'day-past-one' => '{0} күн бұрын',
+ 'day-past-other' => '{0} күн бұрын',
+ 'day-short-future-one' => '{0} күннен кейін',
+ 'day-short-future-other' => '{0} күннен кейін',
+ 'day-short-past-one' => '{0} күн бұрын',
+ 'day-short-past-other' => '{0} күн бұрын',
+ 'hour-future-one' => '{0} сағаттан кейін',
+ 'hour-future-other' => '{0} сағаттан кейін',
+ 'hour-narrow-future-one' => '{0} сағ.кейін',
+ 'hour-narrow-future-other' => '{0} сағаттан кейін',
+ 'hour-narrow-past-one' => '{0} сағ.бұрын',
+ 'hour-narrow-past-other' => '{0} сағат бұрын',
+ 'hour-one' => '{0} сағат',
+ 'hour-other' => '{0} сағат',
+ 'hour-past-one' => '{0} сағат бұрын',
+ 'hour-past-other' => '{0} сағат бұрын',
+ 'hour-short-future-one' => '{0} сағаттан кейін',
+ 'hour-short-future-other' => '{0} сағаттан кейін',
+ 'hour-short-past-one' => '{0} сағат бұрын',
+ 'hour-short-past-other' => '{0} сағат бұрын',
+ 'microsecond-one' => '{0} микросекунд',
+ 'microsecond-other' => '{0} микросекунд',
+ 'millisecond-one' => '{0} миллисекунд',
+ 'millisecond-other' => '{0} миллисекунд',
+ 'minute-future-one' => '{0} минуттан кейін',
+ 'minute-future-other' => '{0} минуттан кейін',
+ 'minute-narrow-future-one' => '{0} мин.кейін',
+ 'minute-narrow-future-other' => '{0} мин.кейін',
+ 'minute-narrow-past-one' => '{0} мин.бұрын',
+ 'minute-narrow-past-other' => '{0} минут бұрын',
+ 'minute-one' => '{0} минут',
+ 'minute-other' => '{0} минут',
+ 'minute-past-one' => '{0} минут бұрын',
+ 'minute-past-other' => '{0} минут бұрын',
+ 'minute-short-future-one' => '{0} минуттан кейін',
+ 'minute-short-future-other' => '{0} минуттан кейін',
+ 'minute-short-past-one' => '{0} минут бұрын',
+ 'minute-short-past-other' => '{0} минут бұрын',
+ 'month-future-one' => '{0} айдан кейін',
+ 'month-future-other' => '{0} айдан кейін',
+ 'month-narrow-future-one' => '{0} айдан кейін',
+ 'month-narrow-future-other' => '{0} айдан кейін',
+ 'month-narrow-past-one' => '{0} ай бұрын',
+ 'month-narrow-past-other' => '{0} ай бұрын',
+ 'month-one' => '{0} ай',
+ 'month-other' => '{0} ай',
+ 'month-past-one' => '{0} ай бұрын',
+ 'month-past-other' => '{0} ай бұрын',
+ 'month-short-future-one' => '{0} айдан кейін',
+ 'month-short-future-other' => '{0} айдан кейін',
+ 'month-short-past-one' => '{0} ай бұрын',
+ 'month-short-past-other' => '{0} ай бұрын',
+ 'nanosecond-one' => '{0} наносекунд',
+ 'nanosecond-other' => '{0} наносекунд',
+ 'quarter-future-one' => '{0} тоқсаннан кейін',
+ 'quarter-future-other' => '{0} тоқсаннан кейін',
+ 'quarter-narrow-future-one' => '{0} тоқ.кейін',
+ 'quarter-narrow-future-other' => '{0} тоқ.кейін',
+ 'quarter-narrow-past-one' => '{0} тоқ. бұрын',
+ 'quarter-narrow-past-other' => '{0} тоқ.бұрын',
+ 'quarter-past-one' => '{0} тоқсан бұрын',
+ 'quarter-past-other' => '{0} тоқсан бұрын',
+ 'quarter-short-future-one' => '{0} тоқ. кейін',
+ 'quarter-short-future-other' => '{0} тоқ. кейін',
+ 'quarter-short-past-one' => '{0} тоқ. бұрын',
+ 'quarter-short-past-other' => '{0} тоқ. бұрын',
+ 'second-future-one' => '{0} секундтан кейін',
+ 'second-future-other' => '{0} секундтан кейін',
+ 'second-narrow-future-one' => '{0} сек.кейін',
+ 'second-narrow-future-other' => '{0} сек.кейін',
+ 'second-narrow-past-one' => '{0} сек.бұрын',
+ 'second-narrow-past-other' => '{0} сек.бұрын',
+ 'second-one' => '{0} секунд',
+ 'second-other' => '{0} секунд',
+ 'second-past-one' => '{0} секунд бұрын',
+ 'second-past-other' => '{0} секунд бұрын',
+ 'second-short-future-one' => '{0} секундтан кейін',
+ 'second-short-future-other' => '{0} секундтан кейін',
+ 'second-short-past-one' => '{0} секунд бұрын',
+ 'second-short-past-other' => '{0} секунд бұрын',
+ 'week-future-one' => '{0} аптадан кейін',
+ 'week-future-other' => '{0} аптадан кейін',
+ 'week-narrow-future-one' => '{0} ап.кейін',
+ 'week-narrow-future-other' => '{0} ап.кейін',
+ 'week-narrow-past-one' => '{0} ап.бұрын',
+ 'week-narrow-past-other' => '{0} ап.бұрын',
+ 'week-one' => '{0} апта',
+ 'week-other' => '{0} апта',
+ 'week-past-one' => '{0} апта бұрын',
+ 'week-past-other' => '{0} апта бұрын',
+ 'week-short-future-one' => '{0} ап. кейін',
+ 'week-short-future-other' => '{0} ап. кейін',
+ 'week-short-past-one' => '{0} ап. бұрын',
+ 'week-short-past-other' => '{0} ап. бұрын',
+ 'year-future-one' => '{0} жылдан кейін',
+ 'year-future-other' => '{0} жылдан кейін',
+ 'year-narrow-future-one' => '+{0} ж.',
+ 'year-narrow-future-other' => '+{0} ж.',
+ 'year-narrow-past-one' => '-{0} ж.',
+ 'year-narrow-past-other' => '-{0} ж.',
+ 'year-one' => '{0} жыл',
+ 'year-other' => '{0} жыл',
+ 'year-past-one' => '{0} жыл бұрын',
+ 'year-past-other' => '{0} жыл бұрын',
+ 'year-short-future-one' => '{0} ж. кейін',
+ 'year-short-future-other' => '{0} ж. кейін',
+ 'year-short-past-one' => '{0} ж. бұрын',
+ 'year-short-past-other' => '{0} ж. бұрын',
+);
diff --git a/MLEB/cldr/CldrNames/CldrNamesKl.php b/MLEB/cldr/CldrNames/CldrNamesKl.php
new file mode 100644
index 00000000..251d0c83
--- /dev/null
+++ b/MLEB/cldr/CldrNames/CldrNamesKl.php
@@ -0,0 +1,339 @@
+<?php
+
+$languageNames = array(
+ 'ar' => 'arabiamiusut',
+ 'az' => 'aserbajdsjaniskisut',
+ 'bn' => 'bengalimiutut',
+ 'cs' => 'tjekkiamut',
+ 'da' => 'qallunaatut',
+ 'de' => 'tyskisut',
+ 'en' => 'tuluttut',
+ 'eo' => 'esperanto',
+ 'es' => 'spanskisut',
+ 'et' => 'estlandimiutut',
+ 'fa' => 'persiskisut',
+ 'fi' => 'finlandimiutut',
+ 'fo' => 'savalimmiutut',
+ 'fr' => 'franskisut',
+ 'ga' => 'irlandimiutut',
+ 'he' => 'hebraimiutut',
+ 'hi' => 'hindimiutut',
+ 'id' => 'indonesiamiutut',
+ 'is' => 'islandimiusut',
+ 'it' => 'italiamiutut',
+ 'ja' => 'japanimiusut',
+ 'kl' => 'kalaallisut',
+ 'ko' => 'koreamiusut',
+ 'ku' => 'kurdiskisut',
+ 'la' => 'latiinerisut',
+ 'lt' => 'litauenimiutut',
+ 'lv' => 'letlandimiutut',
+ 'mg' => 'malagassiskisut',
+ 'mi' => 'maorimiutut',
+ 'nl' => 'hollandimiutut',
+ 'pl' => 'polenimiutut',
+ 'ps' => 'pashtomiutut',
+ 'pt' => 'portugalimiutut',
+ 'ro' => 'rumænimiutut',
+ 'ru' => 'russisut',
+ 'sk' => 'slovakimiusut',
+ 'sv' => 'svenskisut',
+ 'sw' => 'swahilimiutut',
+ 'th' => 'thailandimiutut',
+ 'tr' => 'tyrkiskisut',
+ 'uk' => 'ukrainimiusut',
+ 'und' => '(atorsinnaanngitsoq oqaatsit)',
+ 'ur' => 'urdumiutut',
+ 'vi' => 'vietnamimiusut',
+ 'zh' => 'kineserisut',
+);
+
+$currencyNames = array(
+ 'DKK' => 'danmarkimut koruuni',
+ 'EUR' => 'euro',
+ 'NOK' => 'norskit koruuni',
+ 'SEK' => 'svenskit koruuni',
+);
+
+$currencySymbols = array(
+ 'DKK' => 'kr.',
+ 'EUR' => '€',
+ 'NOK' => 'Nkr',
+ 'SEK' => 'Skr',
+);
+
+$countryNames = array(
+ 'AC' => 'Ascension qeqertaq',
+ 'AD' => 'Andorra',
+ 'AF' => 'Afghanistani',
+ 'AG' => 'Antigua aamma Barbuda',
+ 'AI' => 'Anguilla',
+ 'AL' => 'Albania',
+ 'AM' => 'Armenia',
+ 'AO' => 'Angola',
+ 'AQ' => 'Qalasersuaq Kujalleq',
+ 'AR' => 'Argentina',
+ 'AT' => 'Østrigi',
+ 'AU' => 'Australia',
+ 'AW' => 'Aruba',
+ 'AX' => 'Ålandi',
+ 'BA' => 'Bosnia aamma Herzegovina',
+ 'BB' => 'Barbados',
+ 'BD' => 'Bangladesh',
+ 'BE' => 'Belgia',
+ 'BF' => 'Burkina Faso',
+ 'BG' => 'Bulgaria',
+ 'BH' => 'Bahrain',
+ 'BI' => 'Burundi',
+ 'BJ' => 'Benin',
+ 'BL' => 'Saint Barthélemy',
+ 'BM' => 'Bermuda',
+ 'BN' => 'Brunei',
+ 'BO' => 'Bolivia',
+ 'BR' => 'Brazil',
+ 'BS' => 'Bahamas',
+ 'BT' => 'Bhutan',
+ 'BV' => 'Bouvet qeqertaq',
+ 'BW' => 'Botswana',
+ 'BY' => 'Hvideruslandi',
+ 'BZ' => 'Belize',
+ 'CA' => 'Canada',
+ 'CC' => 'Cocos qeqertaq',
+ 'CD' => 'Kongo-Kinshasa',
+ 'CG' => 'Kongo-Brazzaville',
+ 'CH' => 'Schweizi',
+ 'CK' => 'Cook qeqertaq',
+ 'CL' => 'Chile',
+ 'CM' => 'Kamerun',
+ 'CN' => 'Kina',
+ 'CO' => 'Colombia',
+ 'CP' => 'Clipperton qeqertaq',
+ 'CR' => 'Costa Rica',
+ 'CU' => 'Kuba',
+ 'CV' => 'Cap Verde',
+ 'CW' => 'Curaçao',
+ 'CX' => 'Jul-qeqertaq',
+ 'CY' => 'Cypern',
+ 'CZ' => 'Tjekkia',
+ 'DE' => 'Tysklandi',
+ 'DG' => 'Diego Garcia',
+ 'DJ' => 'Djibouti',
+ 'DK' => 'Danmarki',
+ 'DM' => 'Dominica',
+ 'DZ' => 'Algeriet',
+ 'EA' => 'Ceuta aamma Melilla',
+ 'EC' => 'Ecuador',
+ 'EE' => 'Estlandi',
+ 'EG' => 'Egypten',
+ 'EH' => 'Sahara Killiit',
+ 'ER' => 'Eritrea',
+ 'ES' => 'Spania',
+ 'ET' => 'Ethiopia',
+ 'EU' => 'Europami nunat kattusimaffiat',
+ 'FI' => 'Finlandi',
+ 'FJ' => 'Fiji',
+ 'FK' => 'Falklandi qeqertaq',
+ 'FM' => 'Micronesia',
+ 'FO' => 'Savalimmiut',
+ 'FR' => 'Frankrigi',
+ 'GA' => 'Gabon',
+ 'GB' => 'Tuluit Nunaat',
+ 'GD' => 'Grenada',
+ 'GE' => 'Georgia',
+ 'GG' => 'Guernsey',
+ 'GH' => 'Ghana',
+ 'GI' => 'Gibraltar',
+ 'GL' => 'Kalaallit Nunaat',
+ 'GM' => 'Gambia',
+ 'GN' => 'Guinea',
+ 'GP' => 'Guadeloupe',
+ 'GR' => 'Grækenlandi',
+ 'GT' => 'Guatemala',
+ 'GU' => 'Guam',
+ 'GW' => 'Guinea-Bissau',
+ 'GY' => 'Guyana',
+ 'HK' => 'Hongkong',
+ 'HN' => 'Honduras',
+ 'HR' => 'Kroatia',
+ 'HT' => 'Haiti',
+ 'HU' => 'Ungarni',
+ 'IC' => 'Kanaria qeqertaq',
+ 'ID' => 'Indonesia',
+ 'IE' => 'Irlandi',
+ 'IL' => 'Israel',
+ 'IM' => 'Isle of Man',
+ 'IN' => 'India',
+ 'IQ' => 'Irak',
+ 'IR' => 'Iran',
+ 'IS' => 'Islandi',
+ 'IT' => 'Italia',
+ 'JE' => 'Jersey',
+ 'JM' => 'Jamaica',
+ 'JO' => 'Jordani',
+ 'JP' => 'Japani',
+ 'KE' => 'Kenya',
+ 'KH' => 'Kambodia',
+ 'KI' => 'Kiribati',
+ 'KM' => 'Comoros',
+ 'KN' => 'Saint Kitts aamma Nevis',
+ 'KP' => 'Korea Avannarleq',
+ 'KR' => 'Korea Kujalleq',
+ 'KW' => 'Kuwait',
+ 'KY' => 'Cayman qeqertaq',
+ 'KZ' => 'Kasakhstani',
+ 'LA' => 'Laos',
+ 'LB' => 'Libanon',
+ 'LC' => 'Saint Lucia',
+ 'LI' => 'Liechtensteini',
+ 'LK' => 'Sri Lanka',
+ 'LR' => 'Liberia',
+ 'LS' => 'Lesotho',
+ 'LT' => 'Litaueni',
+ 'LU' => 'Luxembourg',
+ 'LV' => 'Letlandi',
+ 'LY' => 'Libya',
+ 'MA' => 'Marocko',
+ 'MC' => 'Monaco',
+ 'MD' => 'Moldova',
+ 'ME' => 'Montenegro',
+ 'MF' => 'Frankrigi Saint Martin',
+ 'MG' => 'Madagaskar',
+ 'MK' => 'Makedonia',
+ 'ML' => 'Mali',
+ 'MM' => 'Burma',
+ 'MO' => 'Macao',
+ 'MQ' => 'Martinique',
+ 'MR' => 'Mauritania',
+ 'MS' => 'Montserrat',
+ 'MT' => 'Malta',
+ 'MU' => 'Mauritius',
+ 'MW' => 'Malawi',
+ 'MX' => 'Mexiko',
+ 'MY' => 'Malaysia',
+ 'MZ' => 'Moçambique',
+ 'NA' => 'Namibia',
+ 'NC' => 'Nutaaq Caledonia',
+ 'NE' => 'Niger',
+ 'NG' => 'Nigeria',
+ 'NI' => 'Nicaragua',
+ 'NL' => 'Hollandi',
+ 'NO' => 'Norge',
+ 'NP' => 'Nepal',
+ 'NR' => 'Nauru',
+ 'NU' => 'Niue',
+ 'NZ' => 'Nutaaq Zeelandi',
+ 'OM' => 'Oman',
+ 'PA' => 'Panama',
+ 'PE' => 'Peru',
+ 'PG' => 'Papua Nutaaq Guinea',
+ 'PK' => 'Pakistani',
+ 'PL' => 'Poleni',
+ 'PM' => 'Saint Pierre aamma Miquelon',
+ 'PR' => 'Puerto Rico',
+ 'PT' => 'Portugali',
+ 'PW' => 'Palau',
+ 'PY' => 'Paraguay',
+ 'QA' => 'Quatar',
+ 'RE' => 'Réunion',
+ 'RO' => 'Rumænia',
+ 'RS' => 'Serbia',
+ 'RU' => 'Ruslandi',
+ 'RW' => 'Rwanda',
+ 'SA' => 'Saudi Arabia',
+ 'SD' => 'Avannarleqsudan',
+ 'SE' => 'Sverige',
+ 'SG' => 'Singapore',
+ 'SH' => 'Saint Helena',
+ 'SI' => 'Slovenia',
+ 'SJ' => 'Svalbard aamma Jan Mayen',
+ 'SK' => 'Slovakia',
+ 'SL' => 'Sierra Leone',
+ 'SM' => 'San Marino',
+ 'SN' => 'Senegal',
+ 'SO' => 'Somalia',
+ 'SR' => 'Suriname',
+ 'SS' => 'Kujalleqsudan',
+ 'ST' => 'São Tomé aamma Príncipe',
+ 'SV' => 'El Salvador',
+ 'SY' => 'Syria',
+ 'SZ' => 'Swazilandi',
+ 'TA' => 'Tristan da Cunha',
+ 'TD' => 'Chad',
+ 'TG' => 'Togo',
+ 'TH' => 'Thailandi',
+ 'TJ' => 'Tajikistani',
+ 'TK' => 'Tokelau',
+ 'TL' => 'Timor Kangilliit',
+ 'TM' => 'Turkmenistani',
+ 'TN' => 'Tunisia',
+ 'TO' => 'Tonga',
+ 'TR' => 'Tyrkia',
+ 'TT' => 'Trinidad aamma Tobago',
+ 'TV' => 'Tuvalu',
+ 'TW' => 'Taiwan',
+ 'TZ' => 'Tanzania',
+ 'UA' => 'Ukraina',
+ 'UG' => 'Uganda',
+ 'US' => 'USA',
+ 'UY' => 'Uruguay',
+ 'UZ' => 'Uzbekistani',
+ 'VA' => 'Vatikani',
+ 'VE' => 'Venezuela',
+ 'VN' => 'Vietnam',
+ 'VU' => 'Vanuatu',
+ 'WF' => 'Wallis aamma Futuna',
+ 'WS' => 'Samoa',
+ 'XK' => 'Kosovo',
+ 'YE' => 'Jemen',
+ 'YT' => 'Mayotte',
+ 'ZA' => 'Kujalleqafrika',
+ 'ZM' => 'Zambia',
+ 'ZW' => 'Zimbabwe',
+);
+
+$timeUnits = array(
+ 'day-future-one' => 'om {0} ulloq unnuarlu',
+ 'day-future-other' => 'om {0} ulloq unnuarlu',
+ 'day-one' => '{0} ulloq unnuarlu',
+ 'day-other' => '{0} ulloq unnuarlu',
+ 'day-past-one' => 'for {0} ulloq unnuarlu siden',
+ 'day-past-other' => 'for {0} ulloq unnuarlu siden',
+ 'hour-future-one' => 'om {0} nalunaaquttap-akunnera',
+ 'hour-future-other' => 'om {0} nalunaaquttap-akunnera',
+ 'hour-one' => '{0} nalunaaquttap-akunnera',
+ 'hour-other' => '{0} nalunaaquttap-akunnera',
+ 'hour-past-one' => 'for {0} nalunaaquttap-akunnera siden',
+ 'hour-past-other' => 'for {0} nalunaaquttap-akunnera siden',
+ 'millisecond-one' => '{0} millisekundi',
+ 'millisecond-other' => '{0} millisekundi',
+ 'minute-future-one' => 'om {0} minutsi',
+ 'minute-future-other' => 'om {0} minutsi',
+ 'minute-one' => '{0} minutsi',
+ 'minute-other' => '{0} minutsi',
+ 'minute-past-one' => 'for {0} minutsi siden',
+ 'minute-past-other' => 'for {0} minutsi siden',
+ 'month-future-one' => 'om {0} qaammat',
+ 'month-future-other' => 'om {0} qaammat',
+ 'month-one' => '{0} qaammat',
+ 'month-other' => '{0} qaammat',
+ 'month-past-one' => 'for {0} qaammat siden',
+ 'month-past-other' => 'for {0} qaammat siden',
+ 'second-future-one' => 'om {0} sekundi',
+ 'second-future-other' => 'om {0} sekundi',
+ 'second-one' => '{0} sekundi',
+ 'second-other' => '{0} sekundi',
+ 'second-past-one' => 'for {0} sekundi siden',
+ 'second-past-other' => 'for {0} sekundi siden',
+ 'week-future-one' => 'om {0} sapaatip-akunnera',
+ 'week-future-other' => 'om {0} sapaatip-akunnera',
+ 'week-one' => '{0} sapaatip-akunnera',
+ 'week-other' => '{0} sapaatip-akunnera',
+ 'week-past-one' => 'for {0} sapaatip-akunnera siden',
+ 'week-past-other' => 'for {0} sapaatip-akunnera siden',
+ 'year-future-one' => 'om {0} ukioq',
+ 'year-future-other' => 'om {0} ukioq',
+ 'year-one' => '{0} ukioq',
+ 'year-other' => '{0} ukioq',
+ 'year-past-one' => 'for {0} ukioq siden',
+ 'year-past-other' => 'for {0} ukioq siden',
+);
diff --git a/MLEB/cldr/CldrNames/CldrNamesKm.php b/MLEB/cldr/CldrNames/CldrNamesKm.php
new file mode 100644
index 00000000..890d86b1
--- /dev/null
+++ b/MLEB/cldr/CldrNames/CldrNamesKm.php
@@ -0,0 +1,880 @@
+<?php
+
+$languageNames = array(
+ 'aa' => 'ភាសាអាហ្វារ',
+ 'ab' => 'អាប់ខាហ៊្សាន',
+ 'ae' => 'ភាសាអាវែស្តង់',
+ 'af' => 'អាហ្វ្រីកាអាន',
+ 'agq' => 'Aghem',
+ 'ak' => 'Akan',
+ 'am' => 'អាមហារីច',
+ 'an' => 'ភាសាអារ៉ាហ្គោន',
+ 'ar' => 'អារ៉ាប់',
+ 'ar-001' => 'អារ៉ាប់​ស្តង់ដារ​ទំនើប',
+ 'arn' => 'Mapuche',
+ 'as' => 'អាសាមីស',
+ 'asa' => 'Asu',
+ 'ay' => 'ភាសាអីម៉ារ៉ា',
+ 'az' => 'អាហ៊្សែរបែហ្សង់',
+ 'ba' => 'បែស្កឺ',
+ 'be' => 'បេឡារុស្ស',
+ 'bem' => 'Bemba',
+ 'bez' => 'Bena',
+ 'bg' => 'ប៊ុលហ្ការី',
+ 'bm' => 'បាម្បារា',
+ 'bn' => 'បង់ក្លាដែស',
+ 'bo' => 'ទីបេ',
+ 'br' => 'ប្រីស្តុន',
+ 'brx' => 'Bodo',
+ 'bs' => 'បូស្នី',
+ 'ca' => 'កាតាឡាន',
+ 'cgg' => 'Chiga',
+ 'chr' => 'ឆេរូគី',
+ 'ckb' => 'សុរ៉ានី',
+ 'co' => 'Corsican',
+ 'cs' => 'ឆេក',
+ 'cy' => 'វេល',
+ 'da' => 'ដាណឺម៉ាក',
+ 'dav' => 'Taita',
+ 'de' => 'អាល្លឺម៉ង់',
+ 'de-at' => 'អាល្លឺម៉ង់ អូទ្រីស',
+ 'de-ch' => 'អាល្លឺម៉ង់ ស្វីស',
+ 'dje' => 'Zarma',
+ 'dsb' => 'Lower Sorbian',
+ 'dua' => 'Duala',
+ 'dyo' => 'Jola-Fonyi',
+ 'dz' => 'ភាសាប៊ូតាន',
+ 'ebu' => 'Embu',
+ 'ee' => 'Ewe',
+ 'el' => 'ក្រិច',
+ 'en' => 'អង់គ្លេស',
+ 'en-au' => 'អង់គ្លេស អូស្ត្រាលី',
+ 'en-ca' => 'អង់គ្លេស កាណាដា',
+ 'en-gb' => 'អង់គ្លេស ចក្រភព​អង់គ្លេស',
+ 'en-us' => 'អង់គ្លេស អាមេរិក',
+ 'eo' => 'អេស្ពេរ៉ាន់តូ',
+ 'es' => 'អេស្ប៉ាញ',
+ 'es-419' => 'អេស្ប៉ាញ អាមេរីកឡាតាំង',
+ 'es-es' => 'អេស្ប៉ាញ អឺរ៉ុប',
+ 'et' => 'អេស្តូនី',
+ 'eu' => 'បាស្កេ',
+ 'fa' => 'ភឺសៀន',
+ 'fi' => 'ហ្វាំងឡង់',
+ 'fil' => 'ហ្វីលីពីន',
+ 'fj' => 'ហ៊្វីជី',
+ 'fo' => 'ហ្វារូស',
+ 'fr' => 'បារាំង',
+ 'fy' => 'ហ្វ្រីស៊ានខាងលិច',
+ 'ga' => 'អៀរឡង់',
+ 'gag' => 'Gagauz',
+ 'gd' => 'ភាសាហ្កែលិគ (gd)',
+ 'gl' => 'ហ្គាលីស្យាន',
+ 'gn' => 'ហ្គូរ៉ានី',
+ 'gsw' => 'អាល្លឺម៉ង ស្វីស',
+ 'gu' => 'ហ្កុយ៉ារាទី',
+ 'guz' => 'Gusii',
+ 'gv' => 'Manx',
+ 'ha' => 'ហូសា',
+ 'haw' => 'ហាវៃ',
+ 'he' => 'អ៊ីស្រាអែល',
+ 'hi' => 'ហិណ្ឌូ',
+ 'hr' => 'ក្រូអាត',
+ 'hsb' => 'Upper Sorbian',
+ 'ht' => 'ហៃទី',
+ 'hu' => 'ហុងគ្រី',
+ 'hy' => 'អារមេនី',
+ 'ia' => 'អីនធើលីង',
+ 'id' => 'ឥណ្ឌូណេស៊ី',
+ 'ig' => 'អ៊ីកបូ',
+ 'ii' => 'Sichuan Yi',
+ 'is' => 'អ៊ីស្លង់',
+ 'it' => 'អ៊ីតាលី',
+ 'iu' => 'Inuktitut',
+ 'ja' => 'ជប៉ុន',
+ 'jgo' => 'Ngomba',
+ 'jmc' => 'Machame',
+ 'jv' => 'ជ្វា',
+ 'ka' => 'ហ្សក​ហ្ស៊ី',
+ 'kab' => 'Kabyle',
+ 'kam' => 'Kamba',
+ 'kde' => 'Makonde',
+ 'kea' => 'Kabuverdianu',
+ 'khq' => 'Koyra Chiini',
+ 'ki' => 'Kikuyu',
+ 'kk' => 'កាហ្សាក់ស្តង់់',
+ 'kl' => 'Kalaallisut',
+ 'kln' => 'Kalenjin',
+ 'km' => 'ខ្មែរ',
+ 'kn' => 'កន្នដ',
+ 'ko' => 'កូរ៉េ',
+ 'koi' => 'Komi-Permyak',
+ 'kok' => 'Konkani',
+ 'ks' => 'កាស្មៀរ',
+ 'ksb' => 'Shambala',
+ 'ksf' => 'Bafia',
+ 'ku' => 'ឃឺដ',
+ 'kw' => 'Cornish',
+ 'ky' => 'គៀរហ្គីស្តង់',
+ 'la' => 'ឡាតំាង',
+ 'lag' => 'Langi',
+ 'lb' => 'លុចហ្សំបួរ',
+ 'lg' => 'Ganda',
+ 'lkt' => 'Lakota',
+ 'ln' => 'លីនកាឡា',
+ 'lo' => 'ឡាវ',
+ 'lt' => 'លីទុយអានី',
+ 'lu' => 'Luba-Katanga',
+ 'luo' => 'Luo',
+ 'luy' => 'Luyia',
+ 'lv' => 'ឡាតវីយ៉ា',
+ 'mas' => 'Masai',
+ 'mer' => 'Meru',
+ 'mfe' => 'Morisyen',
+ 'mg' => 'ម៉ាឡាហ្គាស៊ី',
+ 'mgh' => 'Makhuwa-Meetto',
+ 'mgo' => 'Meta',
+ 'mi' => 'ម៉ោរី',
+ 'mk' => 'ម៉ាសេដូនី',
+ 'ml' => 'មលយាល័ម',
+ 'mn' => 'ម៉ុងហ្គោលី',
+ 'moh' => 'Mohawk',
+ 'mr' => 'មរាធិ',
+ 'ms' => 'ម៉ាឡេស៊ី',
+ 'mt' => 'ម៉ាល់តា',
+ 'mua' => 'Mundang',
+ 'my' => 'ភូមា',
+ 'naq' => 'Nama',
+ 'nb' => 'ន័រវែស បុកម៉ាល់',
+ 'nd' => 'North Ndebele',
+ 'ne' => 'នេប៉ាល់',
+ 'nl' => 'ហុល្លង់',
+ 'nl-be' => 'ផ្លាមីស',
+ 'nmg' => 'Kwasio',
+ 'nn' => 'ន័រវែស នីនូស',
+ 'no' => 'ភាសាន័រវែស',
+ 'nqo' => 'N’Ko',
+ 'nus' => 'Nuer',
+ 'nyn' => 'Nyankole',
+ 'oc' => 'អូសីតាន់',
+ 'om' => 'Oromo',
+ 'or' => 'អូរីយ៉ា',
+ 'pa' => 'បឹនជាពិ',
+ 'pl' => 'ប៉ូឡូញ',
+ 'ps' => 'បាស្តូ',
+ 'pt' => 'ព័រទុយហ្កាល់',
+ 'pt-br' => 'ព័រទុយហ្គាល់ ប្រេស៊ីល',
+ 'pt-pt' => 'ព័រទុយហ្គាល់ អឺរ៉ុប',
+ 'qu' => 'កេទជួអា',
+ 'quc' => 'Kʼicheʼ',
+ 'rm' => 'រ៉ូម៉ង់',
+ 'rn' => 'រូន្ឌី',
+ 'ro' => 'រូម៉ានី',
+ 'ro-md' => 'ភាសាម៉ុលដាវី',
+ 'rof' => 'Rombo',
+ 'ru' => 'រុស្ស៊ី',
+ 'rw' => 'Kinyarwanda',
+ 'rwk' => 'Rwa',
+ 'sa' => 'សំស្ក្រឹត',
+ 'saq' => 'Samburu',
+ 'sbp' => 'Sangu',
+ 'sd' => '​​ស៊ីន្តី',
+ 'se' => 'Sami ភាគ​ខាង​ជើង',
+ 'seh' => 'Sena',
+ 'ses' => 'Koyraboro Senni',
+ 'sg' => 'Sango',
+ 'sh' => 'សើបូក្រូទៀន',
+ 'shi' => 'Tachelhit',
+ 'si' => 'ស្រីលង្កា',
+ 'sk' => 'ស្លូវ៉ាគី',
+ 'sl' => 'ស្លូវ៉ានី',
+ 'sm' => 'ភាសាសាមូអា',
+ 'sma' => 'Sami ភាគ​ខាង​ត្បូង',
+ 'smj' => 'Lule Sami',
+ 'smn' => 'Inari Sami',
+ 'sms' => 'Skolt Sami',
+ 'sn' => 'Shona',
+ 'so' => 'សូម៉ាលី',
+ 'sq' => 'អាល់បានី',
+ 'sr' => 'សើប',
+ 'st' => 'សេសូដូ',
+ 'su' => 'ស៊ូដង់',
+ 'sv' => 'ស៊ុយអែដ',
+ 'sw' => 'ស្វាហ៊ីលី',
+ 'swc' => 'Congo Swahili',
+ 'ta' => 'តាមីល',
+ 'te' => 'តេលុគុ',
+ 'teo' => 'Teso',
+ 'tg' => 'តាដហ្សីគីស្តង់',
+ 'th' => 'ថៃ',
+ 'ti' => 'ទីរិនយា',
+ 'tk' => 'ទួគមេនីស្តង់',
+ 'tlh' => 'ខ្លិងសុន',
+ 'to' => 'តុងហ្គោ',
+ 'tr' => 'ទួរគី',
+ 'tt' => 'តាតារ',
+ 'tw' => 'ទ្វី',
+ 'twq' => 'Tasawaq',
+ 'tzm' => 'Atlas Tamazight កណ្ដាល',
+ 'ug' => 'អ៊ុយហ្គឺរ',
+ 'uk' => 'អ៊ុយក្រែន',
+ 'und' => 'មិន​ស្គាល់​ភាសា',
+ 'ur' => 'អ៊ូរឌូ',
+ 'uz' => 'អ៊ូហ្សបេគីស្តង់',
+ 'vai' => 'Vai',
+ 'vi' => 'វៀតណាម',
+ 'vun' => 'Vunjo',
+ 'wo' => 'វូឡុហ្វ',
+ 'xh' => 'ឃសា',
+ 'xog' => 'Soga',
+ 'yi' => 'ភាសាយីឌីហ្ស',
+ 'yo' => 'យរូបា',
+ 'za' => 'ភាសាចួង',
+ 'zgh' => 'ម៉ារ៉ុក',
+ 'zh' => 'ចិន',
+ 'zh-hans' => 'ចិន​អក្សរ​កាត់',
+ 'zh-hant' => 'ចិន​អក្សរ​ពេញ',
+ 'zu' => 'សូលូ',
+ 'zxx' => 'គ្មាន​ទិន្នន័យ​ភាសា',
+);
+
+$currencyNames = array(
+ 'AED' => 'ឌៀរហាំ​អេមីរ៉ាតអារ៉ាប់រួម',
+ 'AFN' => 'អាហ្វហ្គានី​អាហ្វហ្គានីស្ថាន',
+ 'ALL' => 'លិក​អាល់បានី',
+ 'AMD' => 'ដ្រាំ​អាមេនី',
+ 'ANG' => 'ហ្គីឌិន​ហុល្លង់​អង់ទីលៀន',
+ 'AOA' => 'ក្វាន់ហ្សា​អង់ហ្គោឡា',
+ 'ARS' => 'ប៉ឺហ្សូ​អាហ្សង់ទីន',
+ 'AUD' => 'ដុល្លារ​អូស្ត្រាលី',
+ 'AWG' => 'ហ្វ្រ័ររិញ​អារ៉ូបា',
+ 'AZN' => 'ម៉ាណាត​អាស៊ែបៃហ្សង់',
+ 'BAM' => 'ម៉ាក​អាច​បម្លែង​បាន​បូស្នី',
+ 'BBD' => 'ដុល្លារ​បាបាដុស',
+ 'BDT' => 'តាកា​បង់ក្លាដែស',
+ 'BGN' => 'លីវ​ប៊ុលហ្គារី',
+ 'BHD' => 'ឌីណា​បារ៉ែន',
+ 'BIF' => 'ហ្វ្រង់​ប៊ូរុនឌី',
+ 'BMD' => 'ដុល្លារ​ប៊ឺមុយដា',
+ 'BND' => 'ដុល្លារ​ប្រុយណេ',
+ 'BOB' => 'បូលីវីណូ​បូលីវី',
+ 'BRL' => 'រៀល​ប្រេស៊ីល',
+ 'BSD' => 'ដុល្លារ​បាហាម៉ា',
+ 'BTN' => 'ញូលត្រឹម​ប៊ូតង់',
+ 'BWP' => 'ពូឡា​បុតស្វាណា',
+ 'BYR' => 'រ៉ូបល​បេឡារុស',
+ 'BZD' => 'ដុល្លារ​បេលី',
+ 'CAD' => 'ដុល្លារ​កាណាដា',
+ 'CDF' => 'ហ្វ្រង់​កុងហ្គោ',
+ 'CHF' => 'ហ្វ្រង់ ស្វីស',
+ 'CLP' => 'ប៉ឺហ្សូ​ស៊ីលី',
+ 'CNY' => 'យ៉ន់​ចិន',
+ 'COP' => 'ប៉ឺហ្សូ​កូឡុំប៊ី',
+ 'CRC' => 'កូឡុង​កូស្តារីកា',
+ 'CUC' => 'ប៉ឺហ្សូ​អាច​បម្លែង​បាន​គុយបា',
+ 'CUP' => 'ប៉ឺហ្សូ​គុយបា',
+ 'CVE' => 'អ៊ីស្កូឌូ​កាប់វែរ',
+ 'CZK' => 'កូរុណា​សាធារណៈ​ឆេក',
+ 'DJF' => 'ហ្វ្រង់​ជីប៊ូទី',
+ 'DKK' => 'ក្រូណេ​ដាណាម៉ាក់',
+ 'DOP' => 'ប៉ឺហ្សូ​ដូមីនីក',
+ 'DZD' => 'ឌីណា​អាល់ស៊េរី',
+ 'EGP' => 'ផោន​​អេហ្សីប',
+ 'ERN' => 'ណាក់ហ្វា​អេរីត្រេ',
+ 'ETB' => 'ប៊័រ​អេត្យូពី',
+ 'EUR' => 'អឺរ៉ូ',
+ 'FJD' => 'ដុល្លារ​ហ្វីជី',
+ 'FKP' => 'ផោន​កោះ​ហ្វក់ឡែន',
+ 'GBP' => 'ផោនស្ទែរលិញ​ចក្រភព​អង់គ្លេស',
+ 'GEL' => 'ឡារី​​ហ្សកហ្ស៊ី',
+ 'GHS' => 'ស៊ីឌី​ហ្គាណា',
+ 'GIP' => 'ផោន​ហ្ស៊ីប្រាល់តា',
+ 'GMD' => 'ដាឡាស៊ី​ហ្គំប៊ី',
+ 'GNF' => 'ហ្វ្រង់​ហ្គីណេ',
+ 'GTQ' => 'ហ្គីស្សាល​ក្វាតេម៉ាឡា',
+ 'GYD' => 'ដុល្លារ​ហ្គីយ៉ាន',
+ 'HKD' => 'ដុល្លារ​ហុងកុង',
+ 'HNL' => 'លិមពីរ៉ា​ហុងឌូរ៉ាស',
+ 'HRK' => 'គូណា​ក្រូអាត',
+ 'HTG' => 'គោឌី​ហៃទី',
+ 'HUF' => 'ហ្វូរីន​ហុងគ្រី',
+ 'IDR' => 'រ៉ូពីឥណ្ឌូណេស៊ី',
+ 'ILS' => 'ស្ស៊ីហ្គែល​អ៊ីស្រាអែល',
+ 'INR' => 'រ៉ូពី​ឥណ្ឌា',
+ 'IQD' => 'ឌីណា​អ៊ីរ៉ាក់',
+ 'IRR' => 'រៀល​អ៊ីរ៉ង់',
+ 'ISK' => 'ក្រូណា​អ៊ីស្លង់',
+ 'JMD' => 'ដុល្លារ​ហ្សាម៉ាអ៊ីក',
+ 'JOD' => 'ឌីណា​ហ្ស៊កដានី',
+ 'JPY' => 'យេន​ជប៉ុន',
+ 'KES' => 'ស៊ីលិញ​កេនយ៉ា',
+ 'KGS' => 'សុម​កៀហ្ស៊ីស៊ីស្ថាន',
+ 'KHR' => 'រៀល​កម្ពុជា',
+ 'KMF' => 'ហ្វ្រង់​កូម័រ',
+ 'KPW' => 'វូន​កូរ៉េ​ខាង​ជើង',
+ 'KRW' => 'វូន​កូរ៉េ​ខាង​ត្បូង',
+ 'KWD' => 'ឌីណា​គុយវ៉ែត',
+ 'KYD' => 'ដុល្លារ​កោះ​កៃម៉ែន',
+ 'KZT' => 'តង់ហ្គី​កាហ្សាក់ស្ថាន',
+ 'LAK' => 'គីប​ឡាវ',
+ 'LBP' => 'ផោន​លីបង់',
+ 'LKR' => 'រ៉ូពី​ស្រីលង្ការ',
+ 'LRD' => 'ដុល្លារ​លីប៊ី',
+ 'LTL' => 'លីតា​លីទុយអានី',
+ 'LVL' => 'ឡាត់​ឡេតូនី',
+ 'LYD' => 'ឌីណា​លីប៊ី',
+ 'MAD' => 'ឌៀរហាំ​ម៉ារ៉ុក',
+ 'MDL' => 'លូ​ម៉ុលដាវី',
+ 'MGA' => 'អារៀរី​ម៉ាឡាហ្គាស៊ី',
+ 'MKD' => 'ឌីណា​ម៉ាសេដ្វាន',
+ 'MMK' => 'គីយ៉ាត​ភូមា',
+ 'MNT' => 'ទូរីក​ម៉ុងហ្គោលី',
+ 'MOP' => 'ប៉ាតាកា​ម៉ាកាវ',
+ 'MRO' => 'អ៊ូហ្គីយ៉ា​ម៉ូរីតានី',
+ 'MUR' => 'រ៉ូពី​ម៉ូរីតានី',
+ 'MVR' => 'រ៉ូហ្វីយ៉ា​ម៉ាល់ឌីវ',
+ 'MWK' => 'ក្វាចា​ម៉ាឡាវី',
+ 'MXN' => 'ប៉ីហ្សូ​ម៉ិកស៉ិក',
+ 'MYR' => 'រីងហ្គីត​ម៉ាឡេស៊ី',
+ 'MZN' => 'មីទីខល​ម៉ូសំប៊ិក',
+ 'NAD' => 'ដុល្លារ​ណាមីប៊ី',
+ 'NGN' => 'ណៃរ៉ា​នីហ្សេរីយ៉ា',
+ 'NIO' => 'ខឌូបា​នីការ៉ាហ្គា',
+ 'NOK' => 'ក្រូណេ​ន័រវ៉េ',
+ 'NPR' => 'រ៉ូពី​នេប៉ាល់',
+ 'NZD' => 'ដុល្លារ​នូវែលសេឡង់',
+ 'OMR' => 'រៀល​រូម៉ានី',
+ 'PAB' => 'បាល់ប៉ៅ​ប៉ាណាម៉ា',
+ 'PEN' => 'ញូវ៉ូសូល​ប៉េរូ',
+ 'PGK' => 'គីណា​ប៉ាពូនូហ្គីណេ',
+ 'PHP' => 'ប៉ឺហ្សូ​ហ្វីលីពីន',
+ 'PKR' => 'រ៉ូពី​ប៉ាគីស្ថាន',
+ 'PLN' => 'ហ្សូទី​ប៉ូឡូញ',
+ 'PYG' => 'ហ្គូរីនី​ប៉ារ៉ាហ្គាយ',
+ 'QAR' => 'រៀល​កាតា',
+ 'RON' => 'លូ​រូម៉ានី',
+ 'RSD' => 'ឌីណា​សើប',
+ 'RUB' => 'រ៉ូបល​រុស្ស៊ី',
+ 'RWF' => 'ហ្វ្រង់​រវ៉ាន់ដា',
+ 'SAR' => 'រីយ៉ាល​អារ៉ាប៊ីសាអូឌីត',
+ 'SBD' => 'ដុល្លារ​កោះ​សូឡូម៉ុង',
+ 'SCR' => 'រ៉ូពី​សីស្ហែល',
+ 'SDG' => 'ផោន​ស៊ូដង់',
+ 'SEK' => 'ក្រូណា​ស៊ុយអែត',
+ 'SGD' => 'ដុល្លារ​​សិង្ហបូរី',
+ 'SHP' => 'ផោន​សាំងហេឡេណា',
+ 'SLL' => 'លីអ៊ុន​សៀរ៉ាឡេអូន',
+ 'SOS' => 'ស៊ីលិញ​សូម៉ាលី',
+ 'SRD' => 'ដុល្លារ​សូរីណាម',
+ 'SSP' => 'ផោន​ស៊ូដង់​ខាង​ត្បូង',
+ 'STD' => 'ឌូប្រា​សៅតូម៉េ និងប្រាំងស៊ីប',
+ 'SYP' => 'ផោន​ស៊ីរី',
+ 'SZL' => 'លីឡាងហ្គីនី​ស្វាស៊ីឡង់',
+ 'THB' => 'បាត​ថៃ',
+ 'TJS' => 'សូមុនី​តាហ្ស៊ីគីស្ថាន',
+ 'TMT' => 'ម៉ាណាត​តួកម៉េនីស្ថាន',
+ 'TND' => 'ឌីណា​ទុយនីស៊ី',
+ 'TOP' => 'ប៉ាអង់កា​តុងហ្គា',
+ 'TRY' => 'លីរ៉ា​ទួគី',
+ 'TTD' => 'ដុល្លារ​ទ្រីនីដាដ និងតូបាហ្គោ',
+ 'TWD' => 'ដុល្លារ​តៃវ៉ាន់',
+ 'TZS' => 'ស៊ីលិញ​តង់សានី',
+ 'UAH' => 'ហ៊ូនីយ៉ា​អ៊ុយក្រែន',
+ 'UGX' => 'ស៊ីលិញ​អ៊ូហ្គង់ដា',
+ 'USD' => 'ដុល្លារ​អាមេរិក',
+ 'UYU' => 'ប៉ឺហ្សូអ៊ុយរូហ្គាយ',
+ 'UZS' => 'សុម​អ៊ូសបេគីស្ថាន',
+ 'VEF' => 'ប៊ូលីវ៉ា​វ៉េណេស៊ុយអេឡា',
+ 'VND' => 'ដុង​វៀតណាម',
+ 'VUV' => 'វ៉ាទូ​វ៉ានូទូ',
+ 'WST' => 'តាឡា​សាម័រ',
+ 'XAF' => 'ហ្វ្រង់ BEAC CFA',
+ 'XCD' => 'ដុល្លារ​ការ៉ាប៊ីន​ខាង​កើត',
+ 'XOF' => 'ហ្វ្រង់ BCEAO CFA',
+ 'XPF' => 'ហ្វ្រង់ CFP',
+ 'XXX' => 'រូបិយប័ណ្ណ​មិនស្គាល់',
+ 'YER' => 'រៀល​យេម៉ែន',
+ 'ZAR' => 'រ៉ង់​អាព្រិក​ខាង​ត្បូង',
+ 'ZMK' => 'ក្វាចា សំប៊ី (1968–2012)',
+ 'ZMW' => 'ក្វាចា​សំប៊ី',
+);
+
+$currencySymbols = array(
+ 'AED' => 'AED',
+ 'AFN' => 'AFN',
+ 'ALL' => 'ALL',
+ 'AMD' => 'AMD',
+ 'ANG' => 'ANG',
+ 'AOA' => 'AOA',
+ 'ARS' => 'ARS',
+ 'AUD' => 'A$',
+ 'AWG' => 'AWG',
+ 'AZN' => 'AZN',
+ 'BAM' => 'BAM',
+ 'BBD' => 'BBD',
+ 'BDT' => 'BDT',
+ 'BGN' => 'BGN',
+ 'BHD' => 'BHD',
+ 'BIF' => 'BIF',
+ 'BMD' => 'BMD',
+ 'BND' => 'BND',
+ 'BOB' => 'BOB',
+ 'BRL' => 'R$',
+ 'BSD' => 'BSD',
+ 'BTN' => 'BTN',
+ 'BWP' => 'BWP',
+ 'BYR' => 'BYR',
+ 'BZD' => 'BZD',
+ 'CAD' => 'CA$',
+ 'CDF' => 'CDF',
+ 'CHF' => 'CHF',
+ 'CLP' => 'CLP',
+ 'CNY' => 'CN¥',
+ 'COP' => 'COP',
+ 'CRC' => 'CRC',
+ 'CUC' => 'CUC',
+ 'CUP' => 'CUP',
+ 'CVE' => 'CVE',
+ 'CZK' => 'CZK',
+ 'DJF' => 'DJF',
+ 'DKK' => 'DKK',
+ 'DOP' => 'DOP',
+ 'DZD' => 'DZD',
+ 'EGP' => 'EGP',
+ 'ERN' => 'ERN',
+ 'ETB' => 'ETB',
+ 'EUR' => '€',
+ 'FJD' => 'FJD',
+ 'FKP' => 'FKP',
+ 'GBP' => '£',
+ 'GEL' => 'GEL',
+ 'GHS' => 'GHS',
+ 'GIP' => 'GIP',
+ 'GMD' => 'GMD',
+ 'GNF' => 'GNF',
+ 'GTQ' => 'GTQ',
+ 'GYD' => 'GYD',
+ 'HKD' => 'HK$',
+ 'HNL' => 'HNL',
+ 'HRK' => 'HRK',
+ 'HTG' => 'HTG',
+ 'HUF' => 'HUF',
+ 'IDR' => 'IDR',
+ 'ILS' => '₪',
+ 'INR' => '₹',
+ 'IQD' => 'IQD',
+ 'IRR' => 'IRR',
+ 'ISK' => 'ISK',
+ 'JMD' => 'JMD',
+ 'JOD' => 'JOD',
+ 'JPY' => 'JP¥',
+ 'KES' => 'KES',
+ 'KGS' => 'KGS',
+ 'KHR' => '៛',
+ 'KMF' => 'KMF',
+ 'KPW' => 'KPW',
+ 'KRW' => '₩',
+ 'KWD' => 'KWD',
+ 'KYD' => 'KYD',
+ 'KZT' => 'KZT',
+ 'LAK' => 'LAK',
+ 'LBP' => 'LBP',
+ 'LKR' => 'LKR',
+ 'LRD' => 'LRD',
+ 'LTL' => 'LTL',
+ 'LVL' => 'LVL',
+ 'LYD' => 'LYD',
+ 'MAD' => 'MAD',
+ 'MDL' => 'MDL',
+ 'MGA' => 'MGA',
+ 'MKD' => 'MKD',
+ 'MMK' => 'MMK',
+ 'MNT' => 'MNT',
+ 'MOP' => 'MOP',
+ 'MRO' => 'MRO',
+ 'MUR' => 'MUR',
+ 'MVR' => 'MVR',
+ 'MWK' => 'MWK',
+ 'MXN' => 'MX$',
+ 'MYR' => 'MYR',
+ 'MZN' => 'MZN',
+ 'NAD' => 'NAD',
+ 'NGN' => 'NGN',
+ 'NIO' => 'NIO',
+ 'NOK' => 'NOK',
+ 'NPR' => 'NPR',
+ 'NZD' => 'NZ$',
+ 'OMR' => 'OMR',
+ 'PAB' => 'PAB',
+ 'PEN' => 'PEN',
+ 'PGK' => 'PGK',
+ 'PHP' => 'PHP',
+ 'PKR' => 'PKR',
+ 'PLN' => 'PLN',
+ 'PYG' => 'PYG',
+ 'QAR' => 'QAR',
+ 'RON' => 'RON',
+ 'RSD' => 'RSD',
+ 'RUB' => 'RUB',
+ 'RWF' => 'RWF',
+ 'SAR' => 'SAR',
+ 'SBD' => 'SBD',
+ 'SCR' => 'SCR',
+ 'SDG' => 'SDG',
+ 'SEK' => 'SEK',
+ 'SGD' => 'SGD',
+ 'SHP' => 'SHP',
+ 'SLL' => 'SLL',
+ 'SOS' => 'SOS',
+ 'SRD' => 'SRD',
+ 'SSP' => 'SSP',
+ 'STD' => 'STD',
+ 'SYP' => 'SYP',
+ 'SZL' => 'SZL',
+ 'THB' => '฿',
+ 'TJS' => 'TJS',
+ 'TMT' => 'TMT',
+ 'TND' => 'TND',
+ 'TOP' => 'TOP',
+ 'TRY' => 'TRY',
+ 'TTD' => 'TTD',
+ 'TWD' => 'NT$',
+ 'TZS' => 'TZS',
+ 'UAH' => 'UAH',
+ 'UGX' => 'UGX',
+ 'USD' => '$',
+ 'UYU' => 'UYU',
+ 'UZS' => 'UZS',
+ 'VEF' => 'VEF',
+ 'VND' => '₫',
+ 'VUV' => 'VUV',
+ 'WST' => 'WST',
+ 'XAF' => 'FCFA',
+ 'XCD' => 'EC$',
+ 'XOF' => 'CFA',
+ 'XPF' => 'CFPF',
+ 'YER' => 'YER',
+ 'ZAR' => 'ZAR',
+ 'ZMW' => 'ZMW',
+);
+
+$countryNames = array(
+ 'AC' => 'កោះ​អាសេនសិន',
+ 'AD' => 'អង់ដូរ៉ា',
+ 'AE' => 'អេមីរ៉ែទអារ៉ាប់រួម',
+ 'AF' => 'អាហ្វហ្គានីស្ថាន',
+ 'AG' => 'អង់ទីគ័រ និង​បាបុយដា',
+ 'AI' => 'អង់កូឡា',
+ 'AL' => 'អាល់បានី',
+ 'AM' => 'អារមេនី',
+ 'AO' => 'អង់ហ្គោឡា',
+ 'AQ' => 'អង់តាទីកា',
+ 'AR' => 'អាហ្សង់ទីន',
+ 'AS' => 'សៅម៉ៅ អាមេរិក',
+ 'AT' => 'អូទ្រីស',
+ 'AU' => 'អូស្ត្រាលី',
+ 'AW' => 'អារូបា',
+ 'AX' => 'កោះ​អាឡាំង',
+ 'AZ' => 'អាហ៊្សែរបែហ្សង់',
+ 'BA' => 'បូស្ន៉ី',
+ 'BB' => 'បារបាដូស',
+ 'BD' => 'បង់ក្លាដេស្ហ',
+ 'BE' => 'បែលហ្ស៉ិក',
+ 'BF' => 'ប៊ូរគីណាហ្វាសូ',
+ 'BG' => 'ប៊ុលហ្គារី',
+ 'BH' => 'បារ៉ែន',
+ 'BI' => 'ប៊ូរុនឌី',
+ 'BJ' => 'បេណាំង',
+ 'BL' => 'សង់ បាតេឡេម៉ី',
+ 'BM' => 'ប៊ឺមុយដា',
+ 'BN' => 'ព្រុយណេ',
+ 'BO' => 'បូលីវី',
+ 'BQ' => 'ហុល្លង់ ការ៉ាប៊ីន',
+ 'BR' => 'ប្រេស៊ីល',
+ 'BS' => 'បាហាម៉ា',
+ 'BT' => 'ប៊ូតាន',
+ 'BV' => 'កោះ​ប៊ូវ៉េត',
+ 'BW' => 'បុតស្វាណា',
+ 'BY' => 'បេឡារុស្ស',
+ 'BZ' => 'បេលីហ្ស',
+ 'CA' => 'កាណាដា',
+ 'CC' => 'កោះ​កូកូស',
+ 'CD' => 'កុងហ្គោ- គីនស្ហាសា',
+ 'CF' => 'សាធារណរដ្ឋអាហ្វ្រិកកណ្ដាល',
+ 'CG' => 'កុងហ្គោ - ប្រាហ្សាវីល',
+ 'CH' => 'ស្វីស',
+ 'CI' => 'កូដឌីវ័រ',
+ 'CK' => 'កោះ​ខូក',
+ 'CL' => 'ស៊ីលី',
+ 'CM' => 'កាមេរូន',
+ 'CN' => 'ចិន',
+ 'CO' => 'កូឡុំប៊ី',
+ 'CP' => 'កោះ​ឃ្លីភឺតុន',
+ 'CR' => 'កូស្តារីកា',
+ 'CU' => 'គុយបា',
+ 'CV' => 'កាបវែរ',
+ 'CW' => 'កូរ៉ាកៅ',
+ 'CX' => 'កោះ​គ្រីស្មាស',
+ 'CY' => 'ស៉ីពរ៍',
+ 'CZ' => 'សាធារណរដ្ឋឆេក',
+ 'DE' => 'អាល្លឺម៉ង់',
+ 'DG' => 'ឌៀហ្គោហ្គាស៊ី',
+ 'DJ' => 'ហ្ស៉ីបូទី',
+ 'DK' => 'ដាណឺម៉ាក',
+ 'DM' => 'ដូមីនីកា',
+ 'DO' => 'សាធារណរដ្ឋដូមីនីកែន',
+ 'DZ' => 'អាល់ហ្សេរី',
+ 'EA' => 'ជឺតា និង​ម៉េលីឡា',
+ 'EC' => 'អេក្វាឌ័រ',
+ 'EE' => 'អេស្តូនី',
+ 'EG' => 'អេហ្ស៉ីប',
+ 'EH' => 'សាហារ៉ាខាងលិច',
+ 'ER' => 'អេរីទ្រា',
+ 'ES' => 'អេស្ប៉ាញ',
+ 'ET' => 'អេត្យូពី',
+ 'EU' => 'សហភាព​អឺរ៉ុប',
+ 'FI' => 'ហ្វាំងឡង់',
+ 'FJ' => 'ហ្វីជី',
+ 'FK' => 'កោះ​ហ្វក់ឡែន',
+ 'FM' => 'មិក្រូនេស៊ី',
+ 'FO' => 'កោះ​ហ្វារ៉ូ',
+ 'FR' => 'បារាំង',
+ 'GA' => 'ហ្គាបុង',
+ 'GB' => 'ច.អ.',
+ 'GD' => 'ហ្គ្រើណាដ',
+ 'GE' => 'ហ្សកហ្ស៉ី',
+ 'GF' => 'ហ្វ្វេន​ហ្គៀណា',
+ 'GG' => 'ហ្គេនស៊ី',
+ 'GH' => 'ហ្គាណា',
+ 'GI' => 'ហ្គីប្រាលតា',
+ 'GL' => 'ហ្គ្រោអង់ឡង់',
+ 'GM' => 'ហ្គាំប៊ី',
+ 'GN' => 'ហ្គីណេ',
+ 'GP' => 'ហ្គោដឺឡុប',
+ 'GQ' => 'ហ្គីណេអេក្វាទ័រ',
+ 'GR' => 'ក្រិច',
+ 'GS' => 'កោះ​ហ្សកហ្ស៊ី​ខាង​ត្បូង និង​សាន់វិច​ខាង​ត្បូង',
+ 'GT' => 'ហ្គាតេម៉ាឡា',
+ 'GU' => 'ហ្គាំ',
+ 'GW' => 'ហ្គីណេប៊ីសូ',
+ 'GY' => 'ហ្គីយ៉ាណា',
+ 'HK' => 'ហុងកុង',
+ 'HM' => 'កោះ​ហឺដ និង​ម៉ាក់ដូណាល់',
+ 'HN' => 'ហុងឌួរ៉ាស់',
+ 'HR' => 'ក្រូអាត',
+ 'HT' => 'ហៃទី',
+ 'HU' => 'ហុងគ្រី',
+ 'IC' => 'កោះ​កាណារី',
+ 'ID' => 'ឥណ្ឌូណេស៊ី',
+ 'IE' => 'អៀរឡង់',
+ 'IL' => 'អ៊ីស្រាអែល',
+ 'IM' => 'អែលអុហ្វមែន',
+ 'IN' => 'ឥណ្ឌា',
+ 'IO' => 'ដែន​មហា​សមុទ្រ​ឥណ្ឌា ចក្រភព​អង់គ្លេស',
+ 'IQ' => 'អ៊ីរ៉ាក់',
+ 'IR' => 'អ៊ីរ៉ង់',
+ 'IS' => 'អ៊ីស្លង់',
+ 'IT' => 'អ៊ីតាលី',
+ 'JE' => 'ជឺស៊ី',
+ 'JM' => 'ហ្សាម៉ាអ៉ិគ',
+ 'JO' => 'ហ៊្សកដានី',
+ 'JP' => 'ជប៉ុន',
+ 'KE' => 'កេនយ៉ា',
+ 'KG' => 'គៀរហ្គីស្តង់',
+ 'KH' => 'កម្ពុជា',
+ 'KI' => 'គិរិបាទី',
+ 'KM' => 'កុំម៉ូរ៉ូស',
+ 'KN' => 'សង់ឃីត និង​ណេវីស',
+ 'KP' => 'កូរ៉េ​ខាង​ជើង',
+ 'KR' => 'កូរ៉េ​ខាង​ត្បូង',
+ 'KW' => 'គុយវ៉ែត',
+ 'KY' => 'កោះ​កៃម៉ង់',
+ 'KZ' => 'កាហ្សាក់ស្តាង់់',
+ 'LA' => 'ឡាវ',
+ 'LB' => 'លីបង់',
+ 'LC' => 'សង់​លូសៀ',
+ 'LI' => 'លិចទេនស្តែន',
+ 'LK' => 'ស្រីលង្កា',
+ 'LR' => 'លីបេរីយ៉ា',
+ 'LS' => 'លើសូតូ',
+ 'LT' => 'លីទុយអានី',
+ 'LU' => 'លុចហ្សំបួរ',
+ 'LV' => 'ឡាតវីយ៉ា',
+ 'LY' => 'លីប៊ី',
+ 'MA' => 'ម៉ារ៉ុក',
+ 'MC' => 'ម៉ូណាកូ',
+ 'MD' => 'សាធារណរដ្ឋម៉ុលដាវី',
+ 'ME' => 'ម៉ុងតេណេហ្គ្រោ',
+ 'MF' => 'សង់​ម៉ាទីន',
+ 'MG' => 'ម៉ាដាហ្កាស្ការ',
+ 'MH' => 'កោះ​ម៉ាស់សល',
+ 'MK' => 'ម៉ាសេដន',
+ 'ML' => 'ម៉ាលី',
+ 'MM' => 'មីយ៉ាន់ម៉ា (ភូមា)',
+ 'MN' => 'ម៉ុងហ្គោលី',
+ 'MO' => 'ម៉ាកាវ',
+ 'MP' => 'កោះ​ម៉ារីណា​ខាង​ជើង',
+ 'MQ' => 'ម៉ាទីនីក',
+ 'MR' => 'ម៉ូរីតានី',
+ 'MS' => 'ម៉ុង​សេរ៉ង់',
+ 'MT' => 'ម៉ាល់តា',
+ 'MU' => 'ម៉ូរីទុស',
+ 'MV' => 'ម៉ាល់ឌីវ',
+ 'MW' => 'ម៉ាឡាវី',
+ 'MX' => 'ម៉ិចសិក',
+ 'MY' => 'ម៉ាឡេស៊ី',
+ 'MZ' => 'ម៉ូហ្សាំប៊ិក',
+ 'NA' => 'ណាមីប៊ី',
+ 'NC' => 'ញូកាឡេដូនៀ',
+ 'NE' => 'នីហ្សេរ',
+ 'NF' => 'កោះ​ណ័រហ្វក់',
+ 'NG' => 'នីហ្សេរីយ៉ា',
+ 'NI' => 'នីការ៉ាហ្គ័រ',
+ 'NL' => 'ហុល្លង់',
+ 'NO' => 'ន័រវែស',
+ 'NP' => 'នេប៉ាល់',
+ 'NR' => 'ណូរូ',
+ 'NU' => 'ណៀ',
+ 'NZ' => 'នូវែលហ្សេឡង់',
+ 'OM' => 'អូម៉ង់',
+ 'PA' => 'ប៉ាណាម៉ា',
+ 'PE' => 'ប៉េរូ',
+ 'PF' => 'ហ្វ្រេន​ប៉ូលី​ណេស៊ី',
+ 'PG' => 'ប៉ាពូអានូវែលហ្គីណេ',
+ 'PH' => 'ហ្វីលីពីន',
+ 'PK' => 'ប៉ាគីស្ថាន',
+ 'PL' => 'ប៉ូលូញ',
+ 'PM' => 'សង់ព្យែរ និង​មីគីឡុង',
+ 'PN' => 'កោះ​ភីតខារិន',
+ 'PR' => 'ព័រតូរីកូ',
+ 'PS' => 'ប៉ាលេស្ទីន',
+ 'PT' => 'ព័រទុយហ្កាល់',
+ 'PW' => 'ផៅឡូ',
+ 'PY' => 'ប៉ារ៉ាហ្គាយ',
+ 'QA' => 'កាតារ',
+ 'QO' => 'អៅលីយីង អុកស៊ីន',
+ 'RE' => 'រ៉េអ៊ុយ៉ុង',
+ 'RO' => 'រូម៉ានី',
+ 'RS' => 'សើប',
+ 'RU' => 'រុស្ស៊ី',
+ 'RW' => 'រវ៉ាន់ដា',
+ 'SA' => 'អារ៉ាប៊ីសាអ៊ូឌីត',
+ 'SB' => 'កោះ​ស៊ូឡូម៉ុង',
+ 'SC' => 'សីសែល',
+ 'SD' => 'ស៊ូដង់',
+ 'SE' => 'ស៊ុយអែដ',
+ 'SG' => 'សិង្ហបុរី',
+ 'SH' => 'សង់​ហេឡេណា',
+ 'SI' => 'ស្លូវេនី',
+ 'SJ' => 'ស្វាប៊ឺត និង​ហ្យង់ម៉ាយេន',
+ 'SK' => 'ស្លូវ៉ាគី',
+ 'SL' => 'សេរ៉ាឡេអូន',
+ 'SM' => 'សាន​ម៉ារីណូ',
+ 'SN' => 'សេនេហ្កាល់',
+ 'SO' => 'សូម៉ាលី',
+ 'SR' => 'សូរីណាម',
+ 'SS' => 'ស៊ូដង់​ខាង​ត្បូង',
+ 'ST' => 'សៅ​តុំ និង​ព្រីនស៊ីប៉េ',
+ 'SV' => 'អែលសាល់វ៉ាឌ័រ',
+ 'SX' => 'សីង​ម៉ាធីន',
+ 'SY' => 'ស៊ីរី',
+ 'SZ' => 'សូហ្ស៉ីឡង់',
+ 'TA' => 'ទ្រីស្តង់​ដា​ចូនហា',
+ 'TC' => 'កោះ​កៃកូស និងទូក',
+ 'TD' => 'ឆាដ',
+ 'TF' => 'ដែន​បារាំង​ខាង​ត្បូង',
+ 'TG' => 'តូហ្គូ',
+ 'TH' => 'ថៃ',
+ 'TJ' => 'តាដហ្ស៉ីគីស្តង់',
+ 'TK' => 'តូខេឡៅ',
+ 'TL' => 'ទីម័រ',
+ 'TM' => 'ទួគមេនីស្តង់',
+ 'TN' => 'ទុយនេស៊ី',
+ 'TO' => 'តុងហ្គា',
+ 'TR' => 'ទួរគី',
+ 'TT' => 'ទ្រីនីដាត និង​តូបាហ្គោ',
+ 'TV' => 'ទូវ៉ាលូ',
+ 'TW' => 'តៃវ៉ាន់',
+ 'TZ' => 'តង់ហ្សានី',
+ 'UA' => 'អ៊ុយក្រែន',
+ 'UG' => 'អ៊ូហ្កង់ដា',
+ 'UM' => 'កោះ​អៅឡាយីង​អាមេរិក',
+ 'US' => 'ស.រ.អ',
+ 'UY' => 'អ៊ុយរុយហ្គាយ',
+ 'UZ' => 'អ៊ូហ្សបេគីស្តង់',
+ 'VA' => 'ទីក្រុងវ៉ាទីកង់',
+ 'VC' => 'សាំង​វីនសេន និង​ឌឹ​ហ្គ្រីណាឌីនីស',
+ 'VE' => 'វេនេហ្ស៊ុយឡា',
+ 'VG' => 'កោះ​វឺជិន​ចក្រភព​អង់គ្លេស',
+ 'VI' => 'កោះ​វឺជីន​អាមេរិក',
+ 'VN' => 'វៀតណាម',
+ 'VU' => 'វ៉ាន់ណៅទូ',
+ 'WF' => 'វ៉ាលីស និង​ហ្វូទូណា',
+ 'WS' => 'សាមូអា',
+ 'XK' => 'កូសូវ៉ូ',
+ 'YE' => 'យេមែន',
+ 'YT' => 'ម៉ាយុត',
+ 'ZA' => 'អាព្រិក​ភាគ​ខាង​ត្បូង',
+ 'ZM' => 'ហ្សាំប៊ី',
+ 'ZW' => 'ហ្ស៊ីមបាបវ៉េ',
+);
+
+$timeUnits = array(
+ 'day-future-other' => 'ក្នុង​រយៈ​ពេល {0} ថ្ងៃ',
+ 'day-narrow-future-other' => 'ក្នុងពេល {0} ថ្ងៃ',
+ 'day-narrow-past-other' => '{0} ថ្ងៃ​​មុន',
+ 'day-other' => '{0} ថ្ងៃ',
+ 'day-past-other' => '{0} ថ្ងៃ​មុន',
+ 'day-short-future-other' => 'ក្នុង​រយៈ​ពេល {0} ថ្ងៃ',
+ 'day-short-past-other' => '{0} ថ្ងៃ​​មុន',
+ 'hour-future-other' => 'ក្នុង​រយៈ​ពេល {0} ម៉ោង',
+ 'hour-narrow-future-other' => 'ក្នុង​រយៈ​ពេល {0} ម៉ោង',
+ 'hour-narrow-past-other' => '{0} ម៉ោង​មុន',
+ 'hour-other' => '{0} ម៉ោង',
+ 'hour-past-other' => '{0} ម៉ោង​មុន',
+ 'hour-short-future-other' => 'ក្នុង​រយៈ​ពេល {0} ម៉ោង',
+ 'hour-short-past-other' => '{0} ម៉ោង​មុន',
+ 'microsecond-other' => '{0} មីក្រូ​វិនាទី',
+ 'millisecond-other' => '{0} មិល្លី​វិនាទី',
+ 'minute-future-other' => 'ក្នុង​រយៈពេល {0} នាទី',
+ 'minute-narrow-future-other' => 'ក្នុង​រយៈពេល {0} នាទី',
+ 'minute-narrow-past-other' => '{0} នាទី​​មុន',
+ 'minute-other' => '{0} នាទី',
+ 'minute-past-other' => '{0} នាទី​មុន',
+ 'minute-short-future-other' => 'ក្នុង​រយៈពេល {0} នាទី',
+ 'minute-short-past-other' => '{0} នាទី​​មុន',
+ 'month-future-other' => 'ក្នុង​រយៈ​ពេល {0} ខែ',
+ 'month-narrow-future-other' => 'ក្នុង​រយៈ​ពេល {0} ខែ',
+ 'month-narrow-past-other' => '{0} ខែមុន',
+ 'month-other' => '{0} ខែ',
+ 'month-past-other' => '{0} ខែមុន',
+ 'month-short-future-other' => 'ក្នុង​រយៈ​ពេល {0} ខែ',
+ 'month-short-past-other' => '{0} ខែមុន',
+ 'nanosecond-other' => '{0} ណាណូវិនាទី',
+ 'quarter-future-other' => 'ក្នុង​រយៈ​ពេល {0} ត្រីមាស',
+ 'quarter-narrow-future-other' => 'ក្នុង​រយៈ​ពេល {0} ត្រីមាស',
+ 'quarter-narrow-past-other' => '{0} ត្រីមាស​មុន',
+ 'quarter-past-other' => '{0} ត្រីមាស​មុន',
+ 'quarter-short-future-other' => 'ក្នុង​រយៈ​ពេល {0} ត្រីមាស',
+ 'quarter-short-past-other' => '{0} ត្រីមាស​មុន',
+ 'second-future-other' => 'ក្នុង​រយៈពេល {0} វិនាទី',
+ 'second-narrow-future-other' => '{0} វិនាទី',
+ 'second-narrow-past-other' => '{0} វិនាទី​មុន',
+ 'second-other' => '{0} វិនាទី',
+ 'second-past-other' => '{0} វិនាទី​មុន',
+ 'second-short-future-other' => 'ក្នុង​រយៈពេល {0} វិនាទី',
+ 'second-short-past-other' => '{0} វិនាទី​មុន',
+ 'week-future-other' => 'ក្នុង​រយៈ​ពេល {0} សប្ដាហ៍',
+ 'week-narrow-future-other' => 'ក្នុង​រយៈ​ពេល {0} សប្ដាហ៍',
+ 'week-narrow-past-other' => '{0} សប្ដាហ៍​មុន',
+ 'week-other' => '{0} សប្ដាហ៍',
+ 'week-past-other' => '{0} សប្ដាហ៍​មុន',
+ 'week-short-future-other' => 'ក្នុង​រយៈ​ពេល {0} សប្ដាហ៍',
+ 'week-short-past-other' => '{0} សប្ដាហ៍​មុន',
+ 'year-future-other' => 'ក្នុង​រយៈ​ពេល {0} ឆ្នាំ',
+ 'year-narrow-future-other' => 'ក្នុង​រយៈ​ពេល {0} ឆ្នាំ',
+ 'year-narrow-past-other' => '{0} ឆ្នាំ​មុន',
+ 'year-other' => '{0} ឆ្នាំ',
+ 'year-past-other' => '{0} ឆ្នាំ​មុន',
+ 'year-short-future-other' => 'ក្នុង​រយៈ​ពេល {0} ឆ្នាំ',
+ 'year-short-past-other' => '{0} ឆ្នាំ​មុន',
+);
diff --git a/MLEB/cldr/CldrNames/CldrNamesKn.php b/MLEB/cldr/CldrNames/CldrNamesKn.php
new file mode 100644
index 00000000..7f6b2bb9
--- /dev/null
+++ b/MLEB/cldr/CldrNames/CldrNamesKn.php
@@ -0,0 +1,1195 @@
+<?php
+
+$languageNames = array(
+ 'aa' => 'ಅಫಾರ್',
+ 'ab' => 'ಅಬ್ಖಾಜಿಯನ್',
+ 'ace' => 'ಅಛಿನೀಸ್',
+ 'ach' => 'ಅಕೋಲಿ',
+ 'ada' => 'ಅಡಂಗ್‌ಮೆ',
+ 'ady' => 'ಅಡೈಘೆ',
+ 'ae' => 'ಅವೆಸ್ಟನ್',
+ 'af' => 'ಆಫ್ರಿಕಾನ್ಸ್',
+ 'afh' => 'ಆಫ್ರಿಹಿಲಿ',
+ 'agq' => 'ಅಘೆಮ್',
+ 'ain' => 'ಐನು',
+ 'ak' => 'ಅಕಾನ್',
+ 'akk' => 'ಅಕ್ಕಾಡಿಯನ್',
+ 'ale' => 'ಅಲೆಯುಟ್',
+ 'alt' => 'ದಕ್ಷಿಣ ಅಲ್ಟಾಯ್',
+ 'am' => 'ಅಂಹರಿಕ್',
+ 'an' => 'ಅರಗೊನೀಸ್',
+ 'ang' => 'ಪ್ರಾಚೀನ ಇಂಗ್ಲೀಷ್',
+ 'anp' => 'ಆಂಗಿಕಾ',
+ 'ar' => 'ಅರೇಬಿಕ್',
+ 'ar-001' => 'ಆಧುನಿಕ ಪ್ರಮಾಣಿತ ಅರೇಬಿಕ್',
+ 'arc' => 'ಅರಾಮಿಕ್',
+ 'arn' => 'ಮಪುಚೆ',
+ 'arp' => 'ಅರಪಾಹೋ',
+ 'arw' => 'ಅರಾವಾಕ್',
+ 'as' => 'ಅಸ್ಸಾಮೀಸ್',
+ 'asa' => 'ಅಸು',
+ 'ast' => 'ಆಸ್ಟುರಿಯನ್',
+ 'av' => 'ಅವರಿಕ್',
+ 'awa' => 'ಅವಧಿ',
+ 'ay' => 'ಅಯ್ಮಾರಾ',
+ 'az' => 'ಅಜೆರ್ಬೈಜಾನಿ',
+ 'ba' => 'ಬಶ್ಕಿರ್',
+ 'bal' => 'ಬಲೂಚಿ',
+ 'ban' => 'ಬಲಿನೀಸ್',
+ 'bas' => 'ಬಸಾ',
+ 'be' => 'ಬೆಲರೂಸಿಯನ್',
+ 'bej' => 'ಬೇಜಾ',
+ 'bem' => 'ಬೆಂಬಾ',
+ 'bez' => 'ಬೆನ',
+ 'bg' => 'ಬಲ್ಗೇರಿಯನ್',
+ 'bho' => 'ಭೋಜಪುರಿ',
+ 'bi' => 'ಬಿಸ್ಲಾಮಾ',
+ 'bik' => 'ಬಿಕೊಲ್',
+ 'bin' => 'ಬಿನಿ',
+ 'bla' => 'ಸಿಕ್ಸಿಕಾ',
+ 'bm' => 'ಬಂಬಾರಾ',
+ 'bn' => 'ಬೆಂಗಾಲಿ',
+ 'bo' => 'ಟಿಬೇಟಿಯನ್',
+ 'br' => 'ಬ್ರೆಟನ್',
+ 'bra' => 'ಬ್ರಾಜ್',
+ 'brx' => 'ಬೋಡೊ',
+ 'bs' => 'ಬೋಸ್ನಿಯನ್',
+ 'bua' => 'ಬುರಿಯಟ್',
+ 'bug' => 'ಬುಗಿನೀಸ್',
+ 'byn' => 'ಬ್ಲಿನ್',
+ 'ca' => 'ಕೆಟಲಾನ್',
+ 'cad' => 'ಕ್ಯಾಡ್ಡೋ',
+ 'car' => 'ಕಾರಿಬ್',
+ 'cch' => 'ಅಟ್ಸಮ್',
+ 'ce' => 'ಚೆಚನ್',
+ 'ceb' => 'ಸೆಬುಆನೋ',
+ 'cgg' => 'ಚಿಗಾ',
+ 'ch' => 'ಕಮೊರೊ',
+ 'chb' => 'ಚಿಬ್ಚಾ',
+ 'chg' => 'ಚಗಟಾಯ್',
+ 'chk' => 'ಚೂಕಿಸೆ',
+ 'chm' => 'ಮಾರಿ',
+ 'chn' => 'ಚಿನೂಕ್ ಜಾರ್ಗೋನ್',
+ 'cho' => 'ಚೋಕ್ಟಾವ್',
+ 'chp' => 'ಚಿಪೆವ್ಯಾನ್',
+ 'chr' => 'ಚೆರೋಕೀ',
+ 'chy' => 'ಚೀಯೆನ್ನೇ',
+ 'ckb' => 'ಸೊರಾನಿ ಕುರ್ದಿಷ್',
+ 'co' => 'ಕೋರ್ಸಿಕನ್',
+ 'cop' => 'ಕೊಪ್ಟಿಕ್',
+ 'cr' => 'ಕ್ರೀ',
+ 'crh' => 'ಕ್ರಿಮೀಯನ್ ಟರ್ಕಿಷ್',
+ 'cs' => 'ಜೆಕ್',
+ 'csb' => 'ಕಶುಬಿಯನ್',
+ 'cu' => 'ಚರ್ಚ್ ಸ್ಲಾವಿಕ್',
+ 'cv' => 'ಚುವಾಶ್',
+ 'cy' => 'ವೆಲ್ಶ್',
+ 'da' => 'ಡ್ಯಾನಿಶ್',
+ 'dak' => 'ಡಕೋಟ',
+ 'dar' => 'ದರ್ಗ್ವಾ',
+ 'dav' => 'ಟೈಟ',
+ 'de' => 'ಜರ್ಮನ್',
+ 'de-at' => 'ಆಸ್ಟ್ರಿಯನ್ ಜರ್ಮನ್',
+ 'de-ch' => 'ಸ್ವಿಸ್ ಹೈ ಜರ್ಮನ್',
+ 'del' => 'ಡೆಲಾವೇರ್',
+ 'den' => 'ಸ್ಲೇವ್',
+ 'dgr' => 'ಡೋಗ್ರಿಬ್',
+ 'din' => 'ಡಿಂಕಾ',
+ 'dje' => 'ಜರ್ಮಾ',
+ 'doi' => 'ಡೋಗ್ರಿ',
+ 'dsb' => 'ಲೋವರ್ ಸೋರ್ಬಿಯನ್',
+ 'dua' => 'ಡುವಾಲಾ',
+ 'dum' => 'ಮಧ್ಯ ಡಚ್',
+ 'dv' => 'ದಿವೆಹಿ',
+ 'dyo' => 'ಜೊಲ-ಫೊನ್ಯಿ',
+ 'dyu' => 'ಡ್ಯೂಲಾ',
+ 'dz' => 'ಜೋಂಗ್‌ಖಾ',
+ 'ebu' => 'ಎಂಬು',
+ 'ee' => 'ಈವ್',
+ 'efi' => 'ಎಫಿಕ್',
+ 'egy' => 'ಪ್ರಾಚೀನ ಈಜಿಪ್ಟಿಯನ್',
+ 'eka' => 'ಎಕಾಜುಕ್',
+ 'el' => 'ಗ್ರೀಕ್',
+ 'elx' => 'ಎಲಾಮೈಟ್',
+ 'en' => 'ಇಂಗ್ಲೀಷ್',
+ 'en-au' => 'ಆಸ್ಟ್ರೇಲಿಯನ್ ಇಂಗ್ಲೀಷ್',
+ 'en-ca' => 'ಕೆನೆಡಿಯನ್ ಇಂಗ್ಲೀಷ್',
+ 'en-gb' => 'ಬ್ರಿಟಿಷ್ ಇಂಗ್ಲೀಷ್',
+ 'en-us' => 'ಅಮೆರಿಕನ್ ಇಂಗ್ಲೀಷ್',
+ 'enm' => 'ಮಧ್ಯ ಇಂಗ್ಲೀಷ್',
+ 'eo' => 'ಎಸ್ಪೆರಾಂಟೊ',
+ 'es' => 'ಸ್ಪ್ಯಾನಿಷ್',
+ 'es-419' => 'ಲ್ಯಾಟಿನ್ ಅಮೇರಿಕನ್ ಸ್ಪ್ಯಾನಿಶ್',
+ 'es-es' => 'ಯುರೋಪಿಯನ್ ಸ್ಪ್ಯಾನಿಷ್',
+ 'es-mx' => 'ಮೆಕ್ಸಿಕನ್ ಸ್ಪ್ಯಾನಿಷ್',
+ 'et' => 'ಎಸ್ಟೊನಿಯನ್',
+ 'eu' => 'ಬಾಸ್ಕ್',
+ 'ewo' => 'ಇವಾಂಡೋ',
+ 'fa' => 'ಪರ್ಶಿಯನ್',
+ 'fan' => 'ಫೆಂಗ್',
+ 'fat' => 'ಫಾಂಟಿ',
+ 'ff' => 'ಫುಲಾಹ್',
+ 'fi' => 'ಫಿನ್ನಿಶ್',
+ 'fil' => 'ಫಿಲಿಪಿನೊ',
+ 'fj' => 'ಫಿಜಿಯನ್',
+ 'fo' => 'ಫರೋಸಿ',
+ 'fon' => 'ಫೋನ್',
+ 'fr' => 'ಫ್ರೆಂಚ್',
+ 'fr-ca' => 'ಕೆನೆಡಿಯನ್ ಫ್ರೆಂಚ್',
+ 'fr-ch' => 'ಸ್ವಿಸ್ ಫ್ರೆಂಚ್',
+ 'frm' => 'ಮಧ್ಯ ಫ್ರೆಂಚ್',
+ 'fro' => 'ಪ್ರಾಚೀನ ಫ್ರೆಂಚ್',
+ 'frr' => 'ಉತ್ತರ ಫ್ರಿಸಿಯನ್',
+ 'frs' => 'ಪೂರ್ವ ಫ್ರಿಸಿಯನ್',
+ 'fur' => 'ಫ್ರಿಯುಲಿಯನ್',
+ 'fy' => 'ಪಶ್ಚಿಮ ಫ್ರಿಸಿಯನ್',
+ 'ga' => 'ಐರಿಷ್',
+ 'gaa' => 'ಗ',
+ 'gag' => 'ಗಗೌಜ್',
+ 'gay' => 'ಗಾಯೋ',
+ 'gba' => 'ಗ್ಬಾಯಾ',
+ 'gd' => 'ಸ್ಕಾಟಿಶ್ ಗ್ಯಾಲಿಕ್',
+ 'gez' => 'ಗೀಝ್',
+ 'gil' => 'ಗಿಲ್ಬರ್ಟೀಸ್',
+ 'gl' => 'ಗ್ಯಾಲಿಶಿಯನ್',
+ 'gmh' => 'ಮಧ್ಯ ಹೈ ಜರ್ಮನ್',
+ 'gn' => 'ಗೌರಾನಿ',
+ 'goh' => 'ಪ್ರಾಚೀನ ಹೈ ಜರ್ಮನ್',
+ 'gon' => 'ಗೊಂಡಿ',
+ 'gor' => 'ಗೊರೊಂಟಾಲೋ',
+ 'got' => 'ಗೋಥಿಕ್',
+ 'grb' => 'ಗ್ರೇಬೋ',
+ 'grc' => 'ಪ್ರಾಚೀನ ಗ್ರೀಕ್',
+ 'gsw' => 'ಸ್ವಿಸ್ ಜರ್ಮನ್',
+ 'gu' => 'ಗುಜರಾತಿ',
+ 'guz' => 'ಗುಸಿ',
+ 'gv' => 'ಮ್ಯಾಂಕ್ಸ್',
+ 'gwi' => 'ಗ್ವಿಚ್‌ಇನ್',
+ 'ha' => 'ಹೌಸಾ',
+ 'hai' => 'ಹೈಡಾ',
+ 'haw' => 'ಹವಾಯಿಯನ್',
+ 'he' => 'ಹೀಬ್ರ್ಯೂ',
+ 'hi' => 'ಹಿಂದಿ',
+ 'hil' => 'ಹಿಲಿಗೇನನ್',
+ 'hit' => 'ಹಿಟ್ಟಿಟೆ',
+ 'hmn' => 'ಮೋಂಗ್',
+ 'ho' => 'ಹಿರಿ ಮೊಟು',
+ 'hr' => 'ಕ್ರೊಯೇಶಿಯನ್',
+ 'hsb' => 'ಅಪ್ಪರ್ ಸರ್ಬಿಯನ್',
+ 'ht' => 'ಹೈತಿಯನ್',
+ 'hu' => 'ಹಂಗೇರಿಯನ್',
+ 'hup' => 'ಹೂಪಾ',
+ 'hy' => 'ಅರ್ಮೇನಿಯನ್',
+ 'hz' => 'ಹೆರೆರೊ',
+ 'ia' => 'ಇಂಟರ್‌ಲಿಂಗ್ವಾ',
+ 'iba' => 'ಇಬಾನ್',
+ 'id' => 'ಇಂಡೋನೇಶಿಯನ್',
+ 'ie' => 'ಇಂಟರ್ಲಿಂಗ್',
+ 'ig' => 'ಇಗ್ಬೊ',
+ 'ii' => 'ಸಿಚುಅನ್ ಯಿ',
+ 'ik' => 'ಇನುಪಿಯಾಕ್',
+ 'ilo' => 'ಇಲ್ಲಿಕೋ',
+ 'inh' => 'ಇಂಗುಷ್',
+ 'io' => 'ಇಡೊ',
+ 'is' => 'ಐಸ್ಲಾಂಡಿಕ್',
+ 'it' => 'ಇಟಾಲಿಯನ್',
+ 'iu' => 'ಇನುಕ್ಟಿಟುಟ್',
+ 'ja' => 'ಜಾಪನೀಸ್',
+ 'jbo' => 'ಲೊಜ್ಬಾನ್',
+ 'jgo' => 'ನೊಂಬಾ',
+ 'jmc' => 'ಮ್ಯಕಮೆ',
+ 'jpr' => 'ಜೂಡಿಯೋ-ಪರ್ಶಿಯನ್',
+ 'jrb' => 'ಜೂಡಿಯೋ-ಅರೇಬಿಕ್',
+ 'jv' => 'ಜಾವಾನೀಸ್',
+ 'ka' => 'ಜಾರ್ಜಿಯನ್',
+ 'kaa' => 'ಕಾರಾ-ಕಲ್ಪಾಕ್',
+ 'kab' => 'ಕಬೈಲ್',
+ 'kac' => 'ಕಚಿನ್',
+ 'kaj' => 'ಜ್ಜು',
+ 'kam' => 'ಕಂಬಾ',
+ 'kaw' => 'ಕಾವಿ',
+ 'kbd' => 'ಕಬರ್ಡಿಯನ್',
+ 'kcg' => 'ಟ್ಯಾಪ್',
+ 'kde' => 'ಮ್ಯಾಕೊಂಡ್',
+ 'kea' => 'ಕಬುವೆರ್ಡಿಯನು',
+ 'kfo' => 'ಕೋರೋ',
+ 'kg' => 'ಕೊಂಗೊ',
+ 'kha' => 'ಖಾಸಿ',
+ 'kho' => 'ಖೋಟಾನೀಸ್',
+ 'khq' => 'ಕೊಯ್ರ ಚೀನಿ',
+ 'ki' => 'ಕಿಕುಯು',
+ 'kj' => 'ಕ್ವಾನ್‌ಯಾಮಾ',
+ 'kk' => 'ಕಝಕ್',
+ 'kl' => 'ಕಲಾಲ್ಲಿಸುಟ್',
+ 'kln' => 'ಕಲೆಂಜಿನ್',
+ 'km' => 'ಖಮೇರ್',
+ 'kmb' => 'ಕಿಂಬುಂಡು',
+ 'kn' => 'ಕನ್ನಡ',
+ 'ko' => 'ಕೊರಿಯನ್',
+ 'koi' => 'ಕೊಮಿ-ಪರ್ಮ್ಯಕ್',
+ 'kok' => 'ಕೊಂಕಣಿ',
+ 'kos' => 'ಕೊಸರಿಯನ್',
+ 'kpe' => 'ಕಪೆಲ್ಲೆ',
+ 'kr' => 'ಕನುರಿ',
+ 'krc' => 'ಕರಚಯ್-ಬಲ್ಕಾರ್',
+ 'krl' => 'ಕರೇಲಿಯನ್',
+ 'kru' => 'ಕುರುಖ್',
+ 'ks' => 'ಕಾಶ್ಮೀರಿ',
+ 'ksb' => 'ಶಂಬಲ',
+ 'ksf' => 'ಬಫಿಯ',
+ 'ku' => 'ಕುರ್ದಿಷ್',
+ 'kum' => 'ಕುಮೈಕ್',
+ 'kut' => 'ಕುಟೇನಾಯ್',
+ 'kv' => 'ಕೋಮಿ',
+ 'kw' => 'ಕೋರ್ನಿಷ್',
+ 'ky' => 'ಕಿರ್ಗಿಜ್',
+ 'la' => 'ಲ್ಯಾಟಿನ್',
+ 'lad' => 'ಕಾಡಿನೋ',
+ 'lag' => 'ಲಾಂಗಿ',
+ 'lah' => 'ಲಹಂಡಾ',
+ 'lam' => 'ಲಂಬಾ',
+ 'lb' => 'ಲಕ್ಸಂಬರ್ಗ್',
+ 'lez' => 'ಲೆಜ್ಘಿಯನ್',
+ 'lg' => 'ಗಾಂಡಾ',
+ 'li' => 'ಲಿಂಬರ್ಗಿಶ್',
+ 'lkt' => 'ಲಕೊಟ',
+ 'ln' => 'ಲಿಂಗಾಲ',
+ 'lo' => 'ಲಾವೋ',
+ 'lol' => 'ಮೊಂಗೋ',
+ 'loz' => 'ಲೋಝಿ',
+ 'lt' => 'ಲಿಥುವೇನಿಯನ್',
+ 'lu' => 'ಲೂಬಾ-ಕಟಾಂಗಾ',
+ 'lua' => 'ಲುಬ-ಲುಲಾ',
+ 'lui' => 'ಲೂಯಿಸೆನೋ',
+ 'lun' => 'ಲುಂಡಾ',
+ 'luo' => 'ಲುವೋ',
+ 'lus' => 'ಲುಶಾಯ್',
+ 'luy' => 'ಲುಯಿಯ',
+ 'lv' => 'ಲಟ್ವಿಯನ್',
+ 'mad' => 'ಮದುರೀಸ್',
+ 'mag' => 'ಮಗಾಹಿ',
+ 'mai' => 'ಮೈಥಿಲಿ',
+ 'mak' => 'ಮಕಾಸರ್',
+ 'man' => 'ಮಂಡಿಂಗೊ',
+ 'mas' => 'ಮಸಾಯ್',
+ 'mdf' => 'ಮೋಕ್ಷ',
+ 'mdr' => 'ಮಂದಾರ್',
+ 'men' => 'ಮೆಂಡೆ',
+ 'mer' => 'ಮೆರು',
+ 'mfe' => 'ಮೊರಿಸನ್',
+ 'mg' => 'ಮಲಗಾಸಿ',
+ 'mga' => 'ಮಧ್ಯ ಐರಿಷ್',
+ 'mgh' => 'ಮ್ಯಖುವಾ- ಮೀಟ್ಟೊ',
+ 'mgo' => 'ಮೆಟಾ',
+ 'mh' => 'ಮಾರ್ಶಲ್ಲೀಸ್',
+ 'mi' => 'ಮಾವೋರಿ',
+ 'mic' => 'ಮಿಕ್‌ಮ್ಯಾಕ್',
+ 'min' => 'ಮಿನಂಗ್‌ಕಬಾವು',
+ 'mk' => 'ಮೆಸಿಡೋನಿಯನ್',
+ 'ml' => 'ಮಲಯಾಳಂ',
+ 'mn' => 'ಮಂಗೋಲಿಯನ್',
+ 'mnc' => 'ಮಂಚು',
+ 'mni' => 'ಮಣಿಪುರಿ',
+ 'moh' => 'ಮೊಹಾವ್ಕ್',
+ 'mos' => 'ಮೊಸ್ಸಿ',
+ 'mr' => 'ಮರಾಠಿ',
+ 'ms' => 'ಮಲಯ್',
+ 'mt' => 'ಮಾಲ್ಟೀಸ್',
+ 'mua' => 'ಮುಂಡಂಗ್',
+ 'mul' => 'ಬಹುಸಂಖ್ಯೆಯ ಭಾಷೆಗಳು',
+ 'mus' => 'ಕ್ರೀಕ್',
+ 'mwl' => 'ಕಿರಾಂಡೀಸ್',
+ 'mwr' => 'ಮಾರ್ವಾಡಿ',
+ 'my' => 'ಬರ್ಮೀಸ್',
+ 'myv' => 'ಎರ್‌ಝ್ಯಾ',
+ 'na' => 'ನೌರು',
+ 'nap' => 'ನಿಯಾಪೊಲಿಟನ್',
+ 'naq' => 'ನಮ',
+ 'nb' => 'ನಾರ್ವೆಜಿಯನ್ ಬೊಕ್ಮಲ್',
+ 'nd' => 'ಉತ್ತರ ದೆಬೆಲೆ',
+ 'nds' => 'ಲೋ ಜರ್ಮನ್',
+ 'ne' => 'ನೇಪಾಳಿ',
+ 'new' => 'ನೇವಾರೀ',
+ 'ng' => 'ಡೋಂಗಾ',
+ 'nia' => 'ನಿಯಾಸ್',
+ 'niu' => 'ನಿಯುವನ್',
+ 'nl' => 'ಡಚ್',
+ 'nl-be' => 'ಫ್ಲೆಮಿಷ್',
+ 'nmg' => 'ಖ್ವಾಸಿಯೊ',
+ 'nn' => 'ನಾರ್ವೆಜಿಯನ್ ನೈನೊಸ್ಕ್',
+ 'no' => 'ನಾರ್ವೇಜಿಯನ್',
+ 'nog' => 'ನೊಗಾಯ್',
+ 'non' => 'ಪ್ರಾಚೀನ ನೋರ್ಸ್',
+ 'nqo' => 'ಎನ್‌ಕೋ',
+ 'nr' => 'ದಕ್ಷಿಣ ದೆಬೆಲೆ',
+ 'nso' => 'ಉತ್ತರ ಸೋಥೋ',
+ 'nus' => 'ನೂಯರ್',
+ 'nv' => 'ನವಾಜೊ',
+ 'nwc' => 'ಶಾಸ್ತ್ರೀಯ ನೇವಾರಿ',
+ 'ny' => 'ನ್ಯಾಂಜಾ',
+ 'nym' => 'ನ್ಯಾಮ್‌ವೆಂಜಿ',
+ 'nyn' => 'ನ್ಯಾನ್‌ಕೋಲೆ',
+ 'nyo' => 'ನ್ಯೋರೋ',
+ 'nzi' => 'ಜೀಮಾ',
+ 'oc' => 'ಒಸಿಟನ್',
+ 'oj' => 'ಒಜಿಬ್ವಾ',
+ 'om' => 'ಓರೊಮೋ',
+ 'or' => 'ಒರಿಯಾ',
+ 'os' => 'ಒಸ್ಸೆಟಿಕ್',
+ 'osa' => 'ಓಸಾಜ್',
+ 'ota' => 'ಒಟ್ಟೋಮನ್ ತುರ್ಕಿಷ್',
+ 'pa' => 'ಪಂಜಾಬಿ',
+ 'pag' => 'ಪಂಗಾಸಿನನ್',
+ 'pal' => 'ಪಹ್ಲವಿ',
+ 'pam' => 'ಪಂಪಾಂಗಾ',
+ 'pap' => 'ಪಾಪಿಯಮೆಂಟೋ',
+ 'pau' => 'ಪಲುಆನ್',
+ 'peo' => 'ಪ್ರಾಚೀನ ಪರ್ಶಿಯನ್',
+ 'phn' => 'ಫೀನಿಷಿಯನ್',
+ 'pi' => 'ಪಾಲಿ',
+ 'pl' => 'ಪೋಲಿಶ್',
+ 'pon' => 'ಪೋನ್‌‌ಪಿಯನ್',
+ 'pro' => 'ಪ್ರಾಚೀನ ಪ್ರೊವೆನ್ಶಿಯಲ್',
+ 'ps' => 'ಪಾಷ್ಟೋ',
+ 'pt' => 'ಪೋರ್ಚುಗೀಸ್',
+ 'pt-br' => 'ಬ್ರೆಜಿಲಿಯನ್ ಪೋರ್ಚುಗೀಸ್',
+ 'pt-pt' => 'ಯೂರೋಪಿಯನ್ ಪೋರ್ಚುಗೀಸ್',
+ 'qu' => 'ಕ್ವೆಚುವಾ',
+ 'quc' => 'ಕಿಷೆ',
+ 'raj' => 'ರಾಜಾಸ್ಥಾನಿ',
+ 'rap' => 'ರಾಪಾನುಯಿ',
+ 'rar' => 'ರಾರೋಟೊಂಗನ್',
+ 'rm' => 'ರೊಮಾನ್ಷ್',
+ 'rn' => 'ರುಂಡಿ',
+ 'ro' => 'ರೊಮೇನಿಯನ್',
+ 'ro-md' => 'ಮೊಲ್ಡೆವಿಯನ್',
+ 'rof' => 'ರೊಂಬೊ',
+ 'rom' => 'ರೋಮಾನಿ',
+ 'ru' => 'ರಷ್ಯನ್',
+ 'rup' => 'ಅರೋಮಾನಿಯನ್',
+ 'rw' => 'ಕೀನ್ಯಾರುವಾಂಡಾ',
+ 'rwk' => 'ರುವ',
+ 'sa' => 'ಸಂಸ್ಕೃತ',
+ 'sad' => 'ಸಂಡಾವೇ',
+ 'sah' => 'ಯಾಕುಟ್',
+ 'sam' => 'ಸಮರಿಟನ್ ಅರಾಮಿಕ್',
+ 'saq' => 'ಸಂಬುರು',
+ 'sas' => 'ಸಸಾಕ್',
+ 'sat' => 'ಸಂತಾಲಿ',
+ 'sbp' => 'ಸಂಗು',
+ 'sc' => 'ಸರ್ಡೀನಿಯನ್',
+ 'scn' => 'ಸಿಸಿಲಿಯನ್',
+ 'sco' => 'ಸ್ಕೋಟ್ಸ್',
+ 'sd' => 'ಸಿಂಧಿ',
+ 'se' => 'ಉತ್ತರ ಸಾಮಿ',
+ 'seh' => 'ಸೆನ',
+ 'sel' => 'ಸೆಲ್ಕಪ್',
+ 'ses' => 'ಕೊಯ್ರಬೊರೊ ಸೆನ್ನಿ',
+ 'sg' => 'ಸಾಂಗೋ',
+ 'sga' => 'ಪ್ರಾಚೀನ ಐರಿಷ್',
+ 'sh' => 'ಸರ್ಬೋ-ಕ್ರೊಯೇಶಿಯನ್',
+ 'shi' => 'ಟಷೆಲ್‍ಹಿಟ್',
+ 'shn' => 'ಶಾನ್',
+ 'si' => 'ಸಿಂಹಳ',
+ 'sid' => 'ಸಿಡಾಮೋ',
+ 'sk' => 'ಸ್ಲೋವಾಕ್',
+ 'sl' => 'ಸ್ಲೋವೇನಿಯನ್',
+ 'sm' => 'ಸಮೋವನ್',
+ 'sma' => 'ದಕ್ಷಿಣ ಸಾಮಿ',
+ 'smj' => 'ಲೂಲ್ ಸಾಮಿ',
+ 'smn' => 'ಇನರಿ ಸಾಮಿ',
+ 'sms' => 'ಸ್ಕೋಟ್ ಸಾಮಿ',
+ 'sn' => 'ಶೋನಾ',
+ 'snk' => 'ಸೋನಿಂಕೆ',
+ 'so' => 'ಸೊಮಾಲಿ',
+ 'sog' => 'ಸೋಗ್ಡಿಏನ್',
+ 'sq' => 'ಅಲ್ಬೇನಿಯನ್',
+ 'sr' => 'ಸರ್ಬಿಯನ್',
+ 'srn' => 'ಸ್ರಾನನ್ ಟೋಂಗೋ',
+ 'srr' => 'ಸೇರೇರ್',
+ 'ss' => 'ಸ್ವಾತಿ',
+ 'st' => 'ದಕ್ಷಿಣ ಸೋಥೋ',
+ 'su' => 'ಸುಂಡಾನೀಸ್',
+ 'suk' => 'ಸುಕುಮಾ',
+ 'sus' => 'ಸುಸು',
+ 'sux' => 'ಸುಮೇರಿಯನ್',
+ 'sv' => 'ಸ್ವೀಡಿಷ್',
+ 'sw' => 'ಸ್ವಹಿಲಿ',
+ 'swb' => 'ಕೊಮೊರಿಯನ್',
+ 'swc' => 'ಕಾಂಗೊ ಸ್ವಹಿಲಿ',
+ 'syc' => 'ಶಾಸ್ತ್ರೀಯ ಸಿರಿಯಕ್',
+ 'syr' => 'ಸಿರಿಯಕ್',
+ 'ta' => 'ತಮಿಳು',
+ 'te' => 'ತೆಲುಗು',
+ 'tem' => 'ಟಿಮ್ನೆ',
+ 'teo' => 'ಟೆಸೊ',
+ 'ter' => 'ಟೆರೆನೋ',
+ 'tet' => 'ಟೇಟಮ್',
+ 'tg' => 'ತಾಜಿಕ್',
+ 'th' => 'ಥಾಯ್',
+ 'ti' => 'ಟಿಗ್ರಿನ್ಯಾ',
+ 'tig' => 'ಟೈಗ್ರೆ',
+ 'tiv' => 'ಟಿವ್',
+ 'tk' => 'ಟರ್ಕ್‌ಮೆನ್',
+ 'tkl' => 'ಟೊಕೆಲಾವ್',
+ 'tl' => 'ಟ್ಯಾಗಲೋಗ್',
+ 'tlh' => 'ಕ್ಲಿಂಗನ್',
+ 'tli' => 'ಟ್ಲಿಂಗಿಟ್',
+ 'tmh' => 'ಟಮಾಷೆಕ್',
+ 'tn' => 'ಸ್ವಾನಾ',
+ 'to' => 'ಟೋಂಗನ್',
+ 'tog' => 'ನ್ಯಾಸಾ ಟೋಂಗಾ',
+ 'tpi' => 'ಟೋಕ್ ಪಿಸಿನ್',
+ 'tr' => 'ಟರ್ಕಿಶ್',
+ 'ts' => 'ಸೋಂಗಾ',
+ 'tsi' => 'ಸಿಂಶಿಯನ್',
+ 'tt' => 'ಟಾಟರ್',
+ 'tum' => 'ತುಂಬುಕಾ',
+ 'tvl' => 'ಟುವಾಲು',
+ 'tw' => 'ಟ್ವಿ',
+ 'twq' => 'ಟಸವಕ್',
+ 'ty' => 'ತಹಿತಿಯನ್',
+ 'tyv' => 'ಟುವಿನಿಯನ್',
+ 'tzm' => 'ಮಧ್ಯ ಅಟ್ಲಾಸ್ ಟಮಜೈಟ್',
+ 'udm' => 'ಉಡ್‌ಮುರ್ಟ್',
+ 'ug' => 'ಉಯಿಘರ್',
+ 'uga' => 'ಉಗಾರಿಟಿಕ್',
+ 'uk' => 'ಉಕ್ರೈನಿಯನ್',
+ 'umb' => 'ಉಂಬುಂಡು',
+ 'und' => 'ಅಪರಿಚಿತ ಅಥವಾ ಅಮಾನ್ಯ ಭಾಷೆ',
+ 'ur' => 'ಉರ್ದು',
+ 'uz' => 'ಉಜ್ಬೇಕ್',
+ 'vai' => 'ವಾಯಿ',
+ 've' => 'ವೆಂಡಾ',
+ 'vi' => 'ವಿಯೇಟ್ನಾಮೀಸ್',
+ 'vo' => 'ವೋಲಾಪುಕ್',
+ 'vot' => 'ವೋಟಿಕ್',
+ 'vun' => 'ವುಂಜೊ',
+ 'wa' => 'ವಾಲೂನ್',
+ 'wal' => 'ವಲಾಮೋ',
+ 'war' => 'ವರಾಯ್',
+ 'was' => 'ವಾಷೋ',
+ 'wo' => 'ವೋಲೋಫ್',
+ 'xal' => 'ಕಲ್‌ಮೈಕ್',
+ 'xh' => 'ಕ್ಸೋಸ',
+ 'xog' => 'ಸೊಗ',
+ 'yao' => 'ಯಾಓ',
+ 'yap' => 'ಯಪೀಸೆ',
+ 'yi' => 'ಯಡ್ಡಿಶ್',
+ 'yo' => 'ಯೊರುಬಾ',
+ 'yue' => 'ಕಾಂಟೊನೀಸ್',
+ 'za' => 'ಝೂವಾಂಗ್',
+ 'zap' => 'ಝೋಪೊಟೆಕ್',
+ 'zbl' => 'ಬ್ಲಿಸ್‌ಸಿಂಬಲ್ಸ್',
+ 'zen' => 'ಝೆನಾಗಾ',
+ 'zgh' => 'ಸ್ಟ್ಯಾಂಡರ್ಡ್ ಮೊರೊಕ್ಕನ್ ಟಮಜೈಟ್',
+ 'zh' => 'ಚೈನೀಸ್',
+ 'zh-hans' => 'ಸರಳೀಕೃತ ಚೈನೀಸ್',
+ 'zh-hant' => 'ಸಾಂಪ್ರದಾಯಿಕ ಚೈನೀಸ್',
+ 'zu' => 'ಜುಲು',
+ 'zun' => 'ಝೂನಿ',
+ 'zxx' => 'ಯಾವುದೇ ಭಾಷಾಸಂಬಂಧಿ ವಿಷಯವಿಲ್ಲ',
+ 'zza' => 'ಜಾಝಾ',
+);
+
+$currencyNames = array(
+ 'AED' => 'ಸಂಯುಕ್ತ ಅರಬ್‌ ಎಮಿರೇಟ್‌‌ಗಳ ದಿರಾಮ್‌‌',
+ 'AFN' => 'ಅಫ್‌ಘನ್ ಅಫಗಾನಿ',
+ 'ALL' => 'ಅಲ್‌ಬೇನಿಯನ್ ಲೆಕ್',
+ 'AMD' => 'ಅರ್ಮೆನಿಯನ್ ಡ್ರಾಮ್',
+ 'ANG' => 'ನೆದರ್ಲೆಂಡ್ಸ್ ಆಂಟಿಲಿಯನ್ ಗಿಲ್ಡರ್',
+ 'AOA' => 'ಅಂಗೋಲಾದ ಕ್ವಾನ್ಝಾ',
+ 'ARS' => 'ಅರ್ಜೆಂಟಿನಾ ಪೆಸೊ',
+ 'AUD' => 'ಆಸ್ಟ್ರೇಲಿಯನ್ ಡಾಲರ್‌',
+ 'AWG' => 'ಅರುಬನ್ ಫ್ಲೊರೀನ್‌‌',
+ 'AZN' => 'ಅಝರ್‌ಬೈಜಾನಿ ಮನಾತ್',
+ 'BAM' => 'ಬೋಸ್ನಿಯಾ-ಹರ್ಜ್‌ಗೋವಿನ ಪರಿವರ್ತನೀಯ ಗುರುತು',
+ 'BBD' => 'ಬರ್ಬಾಡಿಯನ್ ಡಾಲರ್',
+ 'BDT' => 'ಬಾಂಗ್ಲಾದೇಶದ ಟಾಕಾ',
+ 'BGN' => 'ಬಲ್ಗೇರಿಯನ್ ಲೆವ್',
+ 'BHD' => 'ಬಹ್‌‌ರೈನಿ ದಿನಾರ್',
+ 'BIF' => 'ಬುರುಂದಿಯನ್ ಫ್ರಾಂಕ್',
+ 'BMD' => 'ಬರ್ಮುಡನ್ ಡಾಲರ್',
+ 'BND' => 'ಬ್ರೂನಿ ಡಾಲರ್',
+ 'BOB' => 'ಬೊಲಿವಿಯಾದ ಬೊಲಿವಿಯಾನೊ',
+ 'BRL' => 'ಬ್ರೆಜಿಲಿಯನ್‌ ರಿಯಲ್',
+ 'BSD' => 'ಬಹಾಮಿಯನ್ ಡಾಲರ್',
+ 'BTN' => 'ಭೂತಾನೀಸ್ ನುಲ್ತರಮ್',
+ 'BWP' => 'ಬೋಟ್ಸ್‌ವಾನನ್ ಪುಲಾ',
+ 'BYR' => 'ಬೆಲಾರುಸಿಯನ್ ರೂಬಲ್',
+ 'BZD' => 'ಬೆಲೀಜ್ ಡಾಲರ್',
+ 'CAD' => 'ಕೆನಡಾದ ಡಾಲರ್',
+ 'CDF' => 'ಕಾಂಗೋಲೀಸ್ ಫ್ರಾಂಕ್',
+ 'CHF' => 'ಸ್ವಿಸ್ ಫ್ರಾಂಕ್',
+ 'CLP' => 'ಚಿಲಿಯ ಪೆಸೊ',
+ 'CNY' => 'ಚೈನೀಸ್ ಯುವಾನ್',
+ 'COP' => 'ಕೊಲೊಂಬಿಯೋದ ಪೆಸೊ',
+ 'CRC' => 'ಕೋಸ್ಟ ರಿಕನ್ ಕೊಲನ್',
+ 'CUC' => 'ಕ್ಯುಬಾದ ಪರಿವರ್ತನೀಯ ಪೆಸೊ',
+ 'CUP' => 'ಕ್ಯೂಬಾದ ಪೆಸೊ',
+ 'CVE' => 'ಕೇಪ್ ವರ್ಡಿನ್ ಎಸ್‌ಕೂಡೊ',
+ 'CZK' => 'ಝೆಕ್ ಗಣರಾಜ್ಯ ಕೊರೂನ',
+ 'DJF' => 'ಜಿಬೊಟಿಯನ್ ಫ್ರಾಂಕ್',
+ 'DKK' => 'ಡ್ಯಾನಿಶ್ ಕ್ರೋನ್',
+ 'DOP' => 'ಡೊಮಿನಿಕನ್ ಪೆಸೊ',
+ 'DZD' => 'ಅಲ್ಗೇರಿಯನ್ ದಿನಾರ್',
+ 'EGP' => 'ಈಜಿಪ್ಷಿಯನ್ ಪೌಂಡ್‍',
+ 'ERN' => 'ಎರಿತ್ರಿಯನ್ ನಕ್ಫಾ',
+ 'ETB' => 'ಇಥಿಯೋಪಿಯನ್ ಬಿರ್',
+ 'EUR' => 'ಯೂರೊ',
+ 'FJD' => 'ಫಿಜಿಯನ್ ಡಾಲರ್',
+ 'FKP' => 'ಫಾಲ್ಕ್‌ಲ್ಯಾಂಡ್ ದ್ವೀಪಗಳ ಪೌಂಡ್',
+ 'GBP' => 'ಬ್ರಿಟೀಷ್ ಪೌಂಡ್ ಸ್ಟೆರ್ಲಿಂಗ್',
+ 'GEL' => 'ಜಾರ್ಜಿಯಾದ ಲಾರಿ',
+ 'GHS' => 'ಘಾನಾದ ಸೆದಿ',
+ 'GIP' => 'ಗಿಬ್ರಾಲ್ಟರ್ ಪೌಂಡ್',
+ 'GMD' => 'ಗ್ಯಾಂಬಿಯಾದ ದಲಾಸಿ',
+ 'GNF' => 'ಗಿನಿಯನ್ ಫ್ರಾಂಕ್',
+ 'GTQ' => 'ಗ್ವಾಟೆಮಾಲಾದ ಕುಯಿಟ್ಸಲ್‌‌',
+ 'GYD' => 'ಗುಯಾನೀಸ್‌ ಡಾಲರ್‌',
+ 'HKD' => 'ಹಾಂಗ್ ಕಾಂಗ್ ಡಾಲರ್',
+ 'HNL' => 'ಹೊಂಡುರಾನ್‌ ಲೆಂಪಿರಾ',
+ 'HRK' => 'ಕ್ರೊಯೆಷ್ಯಾದ ಕೂನಾ',
+ 'HTG' => 'ಹೈಟಿಯ ಗೋರ್ದೆ',
+ 'HUF' => 'ಹಂಗೇರಿಯನ್ ಫೋರಿಂಟ್',
+ 'IDR' => 'ಇಂಡೊನೇಷ್ಯಾ ರುಪೈ',
+ 'ILS' => 'ಇಸ್ರೇಲಿ ನ್ಯೂ ಶೇಖಲ್',
+ 'INR' => 'ಭಾರತೀಯ ರುಪಾಯಿ',
+ 'IQD' => 'ಇರಾಖಿಯನ್ ದಿನಾರ್',
+ 'IRR' => 'ಇರಾನಿಯನ್ ರಿಯಲ್',
+ 'ISK' => 'ಐಸ್‌ಲ್ಯಾಂಡಿಕ್ ಕ್ರೋನಾ',
+ 'JMD' => 'ಜಮೈಕನ್ ಡಾಲರ್',
+ 'JOD' => 'ಜೋರ್ಡಾನಿಯನ್ ದಿನಾರ್',
+ 'JPY' => 'ಜಪಾನೀಸ್ ಯೆನ್',
+ 'KES' => 'ಕೆನ್ಯನ್ ಶಿಲ್ಲಿಂಗ್',
+ 'KGS' => 'ಕಿರ್ಗಿಸ್ತಾನಿ ಸೋಮ್',
+ 'KHR' => 'ಕಾಂಬೋಡಿಯನ್ ರಿಯಲ್',
+ 'KMF' => 'ಕೊಮೊರಿಯನ್ ಫ್ರಾಂಕ್',
+ 'KPW' => 'ಉತ್ತರ ಕೊರಿಯನ್ ವೋನ್',
+ 'KRW' => 'ದಕ್ಷಿಣ ಕೊರಿಯನ್ ವೊನ್',
+ 'KWD' => 'ಕುವೈತೀ ದಿನಾರ್',
+ 'KYD' => 'ಕೆಮ್ಯಾನ್‌ ಐಲ್ಯಾಂಡ್‌ನ ಡಾಲರ್‌',
+ 'KZT' => 'ಕಜಾಕಿಸ್ತಾನಿ ತೆಂಗೆ',
+ 'LAK' => 'ಲೋಟಿಯನ್ ಕಿಪ್',
+ 'LBP' => 'ಲೆಬೆನೀಸ್ ಪೌಂಡ್',
+ 'LKR' => 'ಶ್ರೀಲಂಕಾದ ರುಪೀ',
+ 'LRD' => 'ಲಿಬೇರಿಯನ್ ಡಾಲರ್',
+ 'LSL' => 'ಲೆಸೊತೊ ಲೊತಿ',
+ 'LTL' => 'ಲಿಥುನಿಯನ್‌ ಲಿತಾಸ್‌',
+ 'LVL' => 'ಲ್ಯಾಟ್ವಿಯನ್ ಲ್ಯಾಟ್ಸ್',
+ 'LYD' => 'ಲಿಬಿಯಾದ ದಿನಾರ್‌',
+ 'MAD' => 'ಮೊರೊಕನ್ ದಿರ್‌ಹಮ್',
+ 'MDL' => 'ಮಲ್ದೋವಾದ ಲೆವೂ',
+ 'MGA' => 'ಮಲಗಾಸಿ ಅರಿಯಾರಿ',
+ 'MKD' => 'ಮೆಸಡೋನಿಯನ್ ದಿನಾರ್',
+ 'MMK' => 'ಮ್ಯಾನ್ಮಾರ್ ಕ್ಯಾಟ್',
+ 'MNT' => 'ಮಂಗೋಲಿಯಾದ ತುಗ್ರಿಕ್‌‌',
+ 'MOP' => 'ಮಕ್ಯೂದ ಪಟಕಾ',
+ 'MRO' => 'ಮೌರೀಶಿಯನಿಯನ್ ಒಗಿಯ',
+ 'MUR' => 'ಮಾರಿಷಿಯನ್ ರುಪಿ',
+ 'MVR' => 'ಮಾಲ್ಡೀವಿಯನ್ ರುಫಿಯಾ',
+ 'MWK' => 'ಮಲಾವಿಯ ಕ್ವಾಚ',
+ 'MXN' => 'ಮೆಕ್ಸಿಕೊದ ಪೆಸೊ',
+ 'MYR' => 'ಮಲೇಶಿಯನ್ ರಿಂಗಿಟ್ಟ್',
+ 'MZN' => 'ಮೊಝಾಂಬಿಕನ್ ಮೆಟಿಕಲ್',
+ 'NAD' => 'ನಮೀಬಿಯನ್ ಡಾಲರ್',
+ 'NGN' => 'ನೈಜೀರಿಯಾದ ನೇರಾ',
+ 'NIO' => 'ನಿಕಾರಗ್ವಾದ ಕರ್ದೊಬಾ',
+ 'NOK' => 'ನಾರ್ವೇಯ ಕ್ರೋನ್',
+ 'NPR' => 'ನೇಪಾಳದ ರುಪೀ',
+ 'NZD' => 'ನ್ಯೂಜಿಲ್ಯಾಂಡ್ ಡಾಲರ್',
+ 'OMR' => 'ಒಮಾನಿ ರಿಯಲ್',
+ 'PAB' => 'ಪನಾಮಾನಿಯನ್ ಬಲ್ಬೋವಾ',
+ 'PEN' => 'ಪೆರುವಿಯನ್ ನುಯೆವೊ ಸೊಲ್',
+ 'PGK' => 'ಪಪುವಾ ನ್ಯೂ ಗಿನಿಯನ್ ಕಿನಾ',
+ 'PHP' => 'ಫಿಲಿಪ್ಪೈನ್ ಪೆಸೊ',
+ 'PKR' => 'ಪಾಕಿಸ್ತಾನದ ರುಪೀ',
+ 'PLN' => 'ಪೊಲಿಶ್ ಝ್ಲೋಟಿ',
+ 'PYG' => 'ಪೆರುಗ್ವೇಯ ಗ್ವಾರನೀ',
+ 'QAR' => 'ಖತಾರಿ ರಿಯಲ್',
+ 'RON' => 'ರೊಮೇನಿಯನ್ ಲೆವು',
+ 'RSD' => 'ಸೆರ್ಬಿಯನ್ ದಿನಾರ್',
+ 'RUB' => 'ರಶಿಯನ್ ರೂಬಲ್',
+ 'RWF' => 'ರುವಾಂಡನ್ ಫ್ರಾಂಕ್',
+ 'SAR' => 'ಸೌದಿ ರಿಯಾಲ್',
+ 'SBD' => 'ಸೊಲೊಮನ್ ದ್ವೀಪಗಳ ಡಾಲರ್',
+ 'SCR' => 'ಸೆಚೊಲಿಯೊಸ್ ರುಪಿ',
+ 'SDG' => 'ಸುಡಾನೀಸ್ ಪೌಂಡ್',
+ 'SEK' => 'ಸ್ವೀಡಿಷ್ ಕ್ರೋನಾ',
+ 'SGD' => 'ಸಿಂಗಾಪುರ್ ಡಾಲರ್‌',
+ 'SHP' => 'ಸೇಂಟ್ ಹೆಲೇನಾ ಪೌಂಡ್',
+ 'SLL' => 'ಸಿಯೆರಾ ಲಿಯೋನಿಯನ್ ಲಿಯೋನ್',
+ 'SOS' => 'ಸೊಮಾಲಿ ಶಿಲ್ಲಿಂಗ್',
+ 'SRD' => 'ಸುರಿನಾಮೀಸ್ ಡಾಲರ್',
+ 'SSP' => 'ದಕ್ಷಿಣ ಸೂಡಾನೀಸ್ ಪೌಂಡ್‍',
+ 'STD' => 'ಸಾವೊ ಟೋಮ್ ಮತ್ತು ಪ್ರಿನ್ಸಿಪ್ ದೊಬ್ರಾ',
+ 'SYP' => 'ಸಿರಿಯನ್ ಪೌಂಡ್',
+ 'SZL' => 'ಸ್ವಾಜಿ ಲಿಲಂಗೆನಿ',
+ 'THB' => 'ಥಾಯ್ ಬಹ್ತ್',
+ 'TJS' => 'ತಜಕಿಸ್ತಾನಿ ಸೊಮೋನಿ',
+ 'TMT' => 'ಟರ್ಕ್‍ಮೆನಿಸ್ತಾನ್ ಮನಾತ್',
+ 'TND' => 'ತುನೀಸಿಯನ್ ದಿನಾರ್',
+ 'TOP' => 'ಟೊಂಗಾ ಪಾಂಗ',
+ 'TRY' => 'ಟರ್ಕಿಶ್ ಲಿರಾ',
+ 'TTD' => 'ಟ್ರಿನಿಡಾಡ್ ಮತ್ತು ಟೊಬಾಗೊ ಡಾಲರ್',
+ 'TWD' => 'ನ್ಯೂ ತೈವಾನ್ ಡಾಲರ್',
+ 'TZS' => 'ತಾನ್‌ಜೇನಿಯನ್ ಶಿಲ್ಲಿಂಗ್',
+ 'UAH' => 'ಉಕ್ರೇನಿಯನ್ ಹ್ರಿವ್ನೀಯ',
+ 'UGX' => 'ಉಗಾಂಡನ್ ಶಿಲ್ಲಿಂಗ್',
+ 'USD' => 'ಅಮೆರಿಕದ ಡಾಲರ್‌',
+ 'UYU' => 'ಉರುಗ್ವೆಯ ಪೆಸೊ',
+ 'UZS' => 'ಉಜ್ಬೇಕಿಸ್ತಾನ್ ಸೊಮ್',
+ 'VEF' => 'ವೆನಿಜುಲಿಯನ್ ಬೊಲಿವರ್',
+ 'VND' => 'ವಿಯೆಟ್ನಾಮೀಸ್ ಡಾಂಗ್',
+ 'VUV' => 'ವನೂತು ವತು',
+ 'WST' => 'ಸಮೋನ್ ತಲಾ',
+ 'XAF' => 'CFA ಫ್ರಾಂಕ್ BEAC',
+ 'XCD' => 'ಪೂರ್ವ ಕೆರೀಬಿಯನ್ ಡಾಲರ್',
+ 'XOF' => 'CFA ಫ್ರಾಂಕ್ BCEAO',
+ 'XPF' => 'CFP ಫ್ರಾಂಕ್',
+ 'XXX' => 'ಗೊತ್ತಿಲ್ಲದ ಕರೆನ್ಸಿ',
+ 'YER' => 'ಯೆಮೆನಿ ರಿಯಲ್',
+ 'ZAR' => 'ದಕ್ಷಿಣ ಆಫ್ರಿಕನ್ ರಾಂಡ್',
+ 'ZMK' => 'ಜಾಂಬಿಯಾ ಕ್ವಾಚ (1968–2012)',
+ 'ZMW' => 'ಜಾಂಬಿಯಾ ಕ್ವಾಚ',
+);
+
+$currencySymbols = array(
+ 'AED' => 'AED',
+ 'AFN' => 'AFN',
+ 'ALL' => 'ALL',
+ 'AMD' => 'AMD',
+ 'ANG' => 'ANG',
+ 'AOA' => 'AOA',
+ 'ARS' => 'ARS',
+ 'AUD' => 'A$',
+ 'AWG' => 'AWG',
+ 'AZN' => 'AZN',
+ 'BAM' => 'BAM',
+ 'BBD' => 'BBD',
+ 'BDT' => 'BDT',
+ 'BGN' => 'BGN',
+ 'BHD' => 'BHD',
+ 'BIF' => 'BIF',
+ 'BMD' => 'BMD',
+ 'BND' => 'BND',
+ 'BOB' => 'BOB',
+ 'BRL' => 'R$',
+ 'BSD' => 'BSD',
+ 'BTN' => 'BTN',
+ 'BWP' => 'BWP',
+ 'BYR' => 'BYR',
+ 'BZD' => 'BZD',
+ 'CAD' => 'CA$',
+ 'CDF' => 'CDF',
+ 'CHF' => 'CHF',
+ 'CLP' => 'CLP',
+ 'CNY' => 'CN¥',
+ 'COP' => 'COP',
+ 'CRC' => 'CRC',
+ 'CUC' => 'CUC',
+ 'CUP' => 'CUP',
+ 'CVE' => 'CVE',
+ 'CZK' => 'CZK',
+ 'DJF' => 'DJF',
+ 'DKK' => 'DKK',
+ 'DOP' => 'DOP',
+ 'DZD' => 'DZD',
+ 'EGP' => 'EGP',
+ 'ERN' => 'ERN',
+ 'ETB' => 'ETB',
+ 'EUR' => '€',
+ 'FJD' => 'FJD',
+ 'FKP' => 'FKP',
+ 'GBP' => '£',
+ 'GEL' => 'GEL',
+ 'GHS' => 'GHS',
+ 'GIP' => 'GIP',
+ 'GMD' => 'GMD',
+ 'GNF' => 'GNF',
+ 'GTQ' => 'GTQ',
+ 'GYD' => 'GYD',
+ 'HKD' => 'HK$',
+ 'HNL' => 'HNL',
+ 'HRK' => 'HRK',
+ 'HTG' => 'HTG',
+ 'HUF' => 'HUF',
+ 'IDR' => 'IDR',
+ 'ILS' => '₪',
+ 'INR' => '₹',
+ 'IQD' => 'IQD',
+ 'IRR' => 'IRR',
+ 'ISK' => 'ISK',
+ 'JMD' => 'JMD',
+ 'JOD' => 'JOD',
+ 'JPY' => 'JP¥',
+ 'KES' => 'KES',
+ 'KGS' => 'KGS',
+ 'KHR' => 'KHR',
+ 'KMF' => 'KMF',
+ 'KPW' => 'KPW',
+ 'KRW' => '₩',
+ 'KWD' => 'KWD',
+ 'KYD' => 'KYD',
+ 'KZT' => 'KZT',
+ 'LAK' => 'LAK',
+ 'LBP' => 'LBP',
+ 'LKR' => 'LKR',
+ 'LRD' => 'LRD',
+ 'LTL' => 'LTL',
+ 'LVL' => 'LVL',
+ 'LYD' => 'LYD',
+ 'MAD' => 'MAD',
+ 'MDL' => 'MDL',
+ 'MGA' => 'MGA',
+ 'MKD' => 'MKD',
+ 'MMK' => 'MMK',
+ 'MNT' => 'MNT',
+ 'MOP' => 'MOP',
+ 'MRO' => 'MRO',
+ 'MUR' => 'MUR',
+ 'MVR' => 'MVR',
+ 'MWK' => 'MWK',
+ 'MXN' => 'MX$',
+ 'MYR' => 'MYR',
+ 'MZN' => 'MZN',
+ 'NAD' => 'NAD',
+ 'NGN' => 'NGN',
+ 'NIO' => 'NIO',
+ 'NOK' => 'NOK',
+ 'NPR' => 'NPR',
+ 'NZD' => 'NZ$',
+ 'OMR' => 'OMR',
+ 'PAB' => 'PAB',
+ 'PEN' => 'PEN',
+ 'PGK' => 'PGK',
+ 'PHP' => 'PHP',
+ 'PKR' => 'PKR',
+ 'PLN' => 'PLN',
+ 'PYG' => 'PYG',
+ 'QAR' => 'QAR',
+ 'RON' => 'RON',
+ 'RSD' => 'RSD',
+ 'RUB' => 'RUB',
+ 'RWF' => 'RWF',
+ 'SAR' => 'SAR',
+ 'SBD' => 'SBD',
+ 'SCR' => 'SCR',
+ 'SDG' => 'SDG',
+ 'SEK' => 'SEK',
+ 'SGD' => 'SGD',
+ 'SHP' => 'SHP',
+ 'SLL' => 'SLL',
+ 'SOS' => 'SOS',
+ 'SRD' => 'SRD',
+ 'SSP' => 'SSP',
+ 'STD' => 'STD',
+ 'SYP' => 'SYP',
+ 'SZL' => 'SZL',
+ 'THB' => '฿',
+ 'TJS' => 'TJS',
+ 'TMT' => 'TMT',
+ 'TND' => 'TND',
+ 'TOP' => 'TOP',
+ 'TRY' => 'TRY',
+ 'TTD' => 'TTD',
+ 'TWD' => 'NT$',
+ 'TZS' => 'TZS',
+ 'UAH' => 'UAH',
+ 'UGX' => 'UGX',
+ 'USD' => '$',
+ 'UYU' => 'UYU',
+ 'UZS' => 'UZS',
+ 'VEF' => 'VEF',
+ 'VND' => '₫',
+ 'VUV' => 'VUV',
+ 'WST' => 'WST',
+ 'XAF' => 'FCFA',
+ 'XCD' => 'EC$',
+ 'XOF' => 'CFA',
+ 'XPF' => 'CFPF',
+ 'YER' => 'YER',
+ 'ZAR' => 'ZAR',
+ 'ZMW' => 'ZMW',
+);
+
+$countryNames = array(
+ 'AC' => 'ಅಸೆನ್ಶನ್ ದ್ವೀಪ',
+ 'AD' => 'ಅಂಡೋರಾ',
+ 'AE' => 'ಸಂಯುಕ್ತ ಅರಬ್ ಎಮಿರೇಟಸ್',
+ 'AF' => 'ಅಫಘಾನಿಸ್ಥಾನ್',
+ 'AG' => 'ಆಂಟಿಗುವಾ ಮತ್ತು ಬರ್ಬುಡಾ',
+ 'AI' => 'ಆಂಗುಯಿಲ್ಲಾ',
+ 'AL' => 'ಅಲ್ಬೇನಿಯಾ',
+ 'AM' => 'ಅರ್ಮೇನಿಯಾ',
+ 'AN' => 'ನೆದರ್‌ಲ್ಯಾಂಡ್',
+ 'AO' => 'ಅಂಗೋಲಾ',
+ 'AQ' => 'ಅಂಟಾರ್ಟಿಕಾ',
+ 'AR' => 'ಅರ್ಜೆಂಟಿನಾ',
+ 'AS' => 'ಅಮೇರಿಕನ್ ಸಮೋವಾ',
+ 'AT' => 'ಆಸ್ಟ್ರಿಯಾ',
+ 'AU' => 'ಆಸ್ಟ್ರೇಲಿಯ',
+ 'AW' => 'ಅರುಬಾ',
+ 'AX' => 'ಆಲ್ಯಾಂಡ್ ದ್ವೀಪಗಳು',
+ 'AZ' => 'ಅಜರ್ಬೈಜಾನ್',
+ 'BA' => 'ಬೋಸ್ನಿಯಾ ಮತ್ತು ಹರ್ಜೆಗೋವಿನಾ',
+ 'BB' => 'ಬಾರ್ಬಡೋಸ್',
+ 'BD' => 'ಬಾಂಗ್ಲಾದೇಶ್',
+ 'BE' => 'ಬೆಲ್ಜಿಯಮ್',
+ 'BF' => 'ಬುರ್ಕಿನಾ ಫಾಸೋ',
+ 'BG' => 'ಬಲ್ಗೇರಿಯಾ',
+ 'BH' => 'ಬಹರೈನ್',
+ 'BI' => 'ಬುರುಂಡಿ',
+ 'BJ' => 'ಬೆನಿನ್',
+ 'BL' => 'ಸೇಂಟ್ ಬಾರ್ಥೆಲೆಮಿ',
+ 'BM' => 'ಬರ್ಮುಡಾ',
+ 'BN' => 'ಬ್ರೂನಿ',
+ 'BO' => 'ಬೊಲಿವಿಯಾ',
+ 'BQ' => 'ಕೆರೀಬಿಯನ್ ನೆದರ್‌ಲ್ಯಾಂಡ್ಸ್',
+ 'BR' => 'ಬ್ರೆಜಿಲ್',
+ 'BS' => 'ಬಹಾಮಾಸ್',
+ 'BT' => 'ಭೂತಾನ್',
+ 'BV' => 'ಬೋವೆಟ್ ದ್ವೀಪ',
+ 'BW' => 'ಬೋಟ್ಸ್‌ವಾನಾ',
+ 'BY' => 'ಬೆಲಾರಸ್',
+ 'BZ' => 'ಬೆಲಿಜ್',
+ 'CA' => 'ಕೆನಡಾ',
+ 'CC' => 'ಕೊಕೊಸ್ (ಕೀಲಿಂಗ್) ದ್ವೀಪಗಳು',
+ 'CD' => 'ಕಾಂಗೋ - ಕಿನ್ಶಾಸಾ',
+ 'CF' => 'ಮಧ್ಯ ಆಫ್ರಿಕಾ ಗಣರಾಜ್ಯ',
+ 'CG' => 'ಕಾಂಗೋ - ಬ್ರಾಜಾವಿಲ್ಲೇ',
+ 'CH' => 'ಸ್ವಿಟ್ಜರ್ಲ್ಯಾಂಡ್',
+ 'CI' => 'ಕೋತ್‌ ದಿವಾರ್‍',
+ 'CK' => 'ಕುಕ್ ದ್ವೀಪಗಳು',
+ 'CL' => 'ಚಿಲಿ',
+ 'CM' => 'ಕ್ಯಾಮರೋನ್',
+ 'CN' => 'ಚೀನಾ',
+ 'CO' => 'ಕೊಲಂಬಿಯಾ',
+ 'CP' => 'ಕ್ಲಿಪ್ಪರ್‌ಟಾನ್ ದ್ವೀಪಗಳು',
+ 'CR' => 'ಕೊಸ್ಟಾ ರಿಕಾ',
+ 'CU' => 'ಕ್ಯೂಬಾ',
+ 'CV' => 'ಕೇಪ್ ವರ್ಡೆ',
+ 'CW' => 'ಕುರಾಕಾವ್',
+ 'CX' => 'ಕ್ರಿಸ್ಮಸ್ ದ್ವೀಪ',
+ 'CY' => 'ಸೈಪ್ರಸ್',
+ 'CZ' => 'ಚೆಕ್ ರಿಪಬ್ಲಿಕ್',
+ 'DE' => 'ಜರ್ಮನಿ',
+ 'DG' => 'ಡೈಗೋ ಗಾರ್ಸಿಯ',
+ 'DJ' => 'ಜಿಬೋಟಿ',
+ 'DK' => 'ಡೆನ್ಮಾರ್ಕ್',
+ 'DM' => 'ಡೊಮಿನಿಕಾ',
+ 'DO' => 'ಡೊಮೆನಿಕನ್ ರಿಪಬ್ಲಿಕ್',
+ 'DZ' => 'ಅಲ್ಗೇರಿಯಾ',
+ 'EA' => 'ಸೆಯುಟಾ ಹಾಗೂ ಮೆಲಿಲ್ಲಾ',
+ 'EC' => 'ಈಕ್ವೆಡಾರ್',
+ 'EE' => 'ಎಸ್ಟೋನಿಯಾ',
+ 'EG' => 'ಈಜಿಪ್ಟ್',
+ 'EH' => 'ಪಶ್ಚಿಮ ಸಹಾರಾ',
+ 'ER' => 'ಏರಿಟ್ರಿಯಾ',
+ 'ES' => 'ಸ್ಪೇನ್',
+ 'ET' => 'ಇಥಿಯೋಪಿಯಾ',
+ 'EU' => 'ಯುರೋಪಿಯನ್ ಯೂನಿಯನ್',
+ 'FI' => 'ಫಿನ್‌ಲ್ಯಾಂಡ್',
+ 'FJ' => 'ಫಿಜಿ',
+ 'FK' => 'ಫಾಲ್ಕ್‌ಲ್ಯಾಂಡ್ ದ್ವೀಪಗಳು',
+ 'FM' => 'ಮೈಕ್ರೋನೇಶಿಯಾ',
+ 'FO' => 'ಫರೋ ದ್ವೀಪಗಳು',
+ 'FR' => 'ಫ್ರಾನ್ಸ್',
+ 'GA' => 'ಗೆಬೊನ್',
+ 'GB' => 'ಯು.ಕೆ.',
+ 'GD' => 'ಗ್ರೆನೆಡಾ',
+ 'GE' => 'ಜಾರ್ಜಿಯಾ',
+ 'GF' => 'ಫ್ರೆಂಚ್ ಗಯಾನಾ',
+ 'GG' => 'ಗುರ್ನ್‌ಸೆ',
+ 'GH' => 'ಘಾನಾ',
+ 'GI' => 'ಗಿಬ್ರಾಲ್ಟರ್',
+ 'GL' => 'ಗ್ರೀನ್‌ಲ್ಯಾಂಡ್',
+ 'GM' => 'ಗ್ಯಾಂಬಿಯಾ',
+ 'GN' => 'ಗಿನಿ',
+ 'GP' => 'ಗುಡೆಲೋಪ್',
+ 'GQ' => 'ಈಕ್ವೆಟೋರಿಯಲ್ ಗಿನಿ',
+ 'GR' => 'ಗ್ರೀಸ್',
+ 'GS' => 'ದಕ್ಷಿಣ ಜಾರ್ಜಿಯಾ ಮತ್ತು ದಕ್ಷಿಣ ಸ್ಯಾಂಡ್‍ವಿಚ್ ದ್ವೀಪಗಳು',
+ 'GT' => 'ಗ್ವಾಟೆಮಾಲಾ',
+ 'GU' => 'ಗುಯಾಮ್',
+ 'GW' => 'ಗಿನಿ-ಬಿಸ್ಸಾವ್',
+ 'GY' => 'ಗಯಾನಾ',
+ 'HK' => 'ಹಾಂಗ್ ಕಾಂಗ್',
+ 'HM' => 'ಹರ್ಡ್ ದ್ವೀಪ ಮತ್ತು ಮ್ಯಾಕ್‍ಡೊನಾಲ್ಡ್ ದ್ವೀಪಗಳು',
+ 'HN' => 'ಹೊಂಡುರಾಸ್',
+ 'HR' => 'ಕ್ರೊಯೇಶಿಯಾ',
+ 'HT' => 'ಹೈಟಿ',
+ 'HU' => 'ಹಂಗಾರಿ',
+ 'IC' => 'ಕ್ಯಾನರಿ ದ್ವೀಪಗಳು',
+ 'ID' => 'ಇಂಡೋನೇಶಿಯಾ',
+ 'IE' => 'ಐರ್ಲೆಂಡ್',
+ 'IL' => 'ಇಸ್ರೇಲ್',
+ 'IM' => 'ಐಲ್ ಆಫ್ ಮ್ಯಾನ್',
+ 'IN' => 'ಭಾರತ',
+ 'IO' => 'ಬ್ರಿಟೀಶ್ ಇಂಡಿಯನ್ ಮಹಾಸಾಗರ ಪ್ರದೇಶ',
+ 'IQ' => 'ಇರಾಕ್',
+ 'IR' => 'ಇರಾನ್',
+ 'IS' => 'ಐಸ್‌ಲ್ಯಾಂಡ್',
+ 'IT' => 'ಇಟಲಿ',
+ 'JE' => 'ಜೆರ್ಸಿ',
+ 'JM' => 'ಜಮೈಕಾ',
+ 'JO' => 'ಜೋರ್ಡಾನ್',
+ 'JP' => 'ಜಪಾನ್',
+ 'KE' => 'ಕೀನ್ಯಾ',
+ 'KG' => 'ಕಿರ್ಗಿಸ್ಥಾನ್',
+ 'KH' => 'ಕಾಂಬೋಡಿಯಾ',
+ 'KI' => 'ಕಿರಿಬಾತಿ',
+ 'KM' => 'ಕೊಮೊರೊಸ್',
+ 'KN' => 'ಸೇಂಟ್ ಕಿಟ್ಸ್ ಮತ್ತು ನೆವಿಸ್',
+ 'KP' => 'ಉತ್ತರ ಕೋರಿಯಾ',
+ 'KR' => 'ದಕ್ಷಿಣ ಕೋರಿಯಾ',
+ 'KW' => 'ಕುವೈತ್',
+ 'KY' => 'ಕೇಮನ್ ದ್ವೀಪಗಳು',
+ 'KZ' => 'ಕಝಾಕಿಸ್ಥಾನ್',
+ 'LA' => 'ಲಾವೋಸ್',
+ 'LB' => 'ಲೆಬನಾನ್',
+ 'LC' => 'ಸೇಂಟ್ ಲೂಸಿಯಾ',
+ 'LI' => 'ಲಿಚೆನ್‌ಸ್ಟೈನ್',
+ 'LK' => 'ಶ್ರೀಲಂಕಾ',
+ 'LR' => 'ಲಿಬೇರಿಯಾ',
+ 'LS' => 'ಲೆಸೊಥೋ',
+ 'LT' => 'ಲಿಥುವೇನಿಯಾ',
+ 'LU' => 'ಲಕ್ಸಂಬರ್ಗ್',
+ 'LV' => 'ಲಾಟ್ವಿಯಾ',
+ 'LY' => 'ಲಿಬಿಯಾ',
+ 'MA' => 'ಮೊರಾಕ್ಕೊ',
+ 'MC' => 'ಮೊನಾಕೊ',
+ 'MD' => 'ಮೊಲ್ಡೋವಾ',
+ 'ME' => 'ಮೊಂಟೆನೆಗ್ರೋ',
+ 'MF' => 'ಸೇಂಟ್ ಮಾರ್ಟಿನ್',
+ 'MG' => 'ಮಡಗಾಸ್ಕರ್',
+ 'MH' => 'ಮಾರ್ಷಲ್ ದ್ವೀಪಗಳು',
+ 'MK' => 'ಮ್ಯಾಸಿಡೋನಿಯಾ',
+ 'ML' => 'ಮಾಲಿ',
+ 'MM' => 'ಮಯನ್ಮಾರ್ (ಬರ್ಮಾ)',
+ 'MN' => 'ಮೊಂಗೋಲಿಯಾ',
+ 'MO' => 'ಮಖಾವ್',
+ 'MP' => 'ಉತ್ತರ ಮರಿಯಾನಾ ದ್ವೀಪಗಳು',
+ 'MQ' => 'ಮಾರ್ಟಿನಿಕ್',
+ 'MR' => 'ಮಾರಿಟೇನಿಯಾ',
+ 'MS' => 'ಮಾಂಟ್‌ಸೆರೇಟ್',
+ 'MT' => 'ಮಾಲ್ಟಾ',
+ 'MU' => 'ಮಾರಿಶಿಯಸ್',
+ 'MV' => 'ಮಾಲ್ಡಿವ್ಸ್',
+ 'MW' => 'ಮಲಾವಿ',
+ 'MX' => 'ಮೆಕ್ಸಿಕೊ',
+ 'MY' => 'ಮಲೇಶಿಯಾ',
+ 'MZ' => 'ಮೊಜಾಂಬಿಕ್',
+ 'NA' => 'ನಮೀಬಿಯಾ',
+ 'NC' => 'ನ್ಯೂ ಕ್ಯಾಲಿಡೋನಿಯಾ',
+ 'NE' => 'ನೈಜರ್',
+ 'NF' => 'ನಾರ್ಫೋಕ್ ದ್ವೀಪ',
+ 'NG' => 'ನೈಜೀರಿಯಾ',
+ 'NI' => 'ನಿಕಾರಾಗುವಾ',
+ 'NL' => 'ನೆದರ್‌ಲ್ಯಾಂಡ್ಸ್',
+ 'NO' => 'ನಾರ್ವೇ',
+ 'NP' => 'ನೇಪಾಳ',
+ 'NR' => 'ನೌರು',
+ 'NU' => 'ನಿಯು',
+ 'NZ' => 'ನ್ಯೂಜಿಲೆಂಡ್',
+ 'OM' => 'ಓಮನ್',
+ 'PA' => 'ಪನಾಮಾ',
+ 'PE' => 'ಪೆರು',
+ 'PF' => 'ಫ್ರೆಂಚ್ ಪಾಲಿನೇಷ್ಯಾ',
+ 'PG' => 'ಪಪುವಾ ನ್ಯೂಗಿನಿಯಾ',
+ 'PH' => 'ಫಿಲಿಫೈನ್ಸ್',
+ 'PK' => 'ಪಾಕಿಸ್ತಾನ',
+ 'PL' => 'ಪೋಲ್ಯಾಂಡ್',
+ 'PM' => 'ಸೇಂಟ್ ಪಿಯರೆ ಮತ್ತು ಮಿಕೆಲನ್',
+ 'PN' => 'ಪಿಟ್‌ಕೈರ್ನ್ ದ್ವೀಪಗಳು',
+ 'PR' => 'ಪ್ಯೂರ್ಟೋ ರಿಕೊ',
+ 'PS' => 'ಪ್ಯಾಲೆಸ್ಟೇನ್',
+ 'PT' => 'ಪೋರ್ಚುಗಲ್',
+ 'PW' => 'ಪಲಾವು',
+ 'PY' => 'ಪರಾಗ್ವೇ',
+ 'QA' => 'ಖತಾರ್',
+ 'QO' => 'ಔಟ್ ಲೈಯಿಂಗ್ ಓಷಿಯಾನಿಯಾ',
+ 'RE' => 'ರೀಯೂನಿಯನ್',
+ 'RO' => 'ರೊಮೇನಿಯಾ',
+ 'RS' => 'ಸೆರ್ಬಿಯಾ',
+ 'RU' => 'ರಷ್ಯಾ',
+ 'RW' => 'ರುವಾಂಡಾ',
+ 'SA' => 'ಸೌದಿ ಅರೇಬಿಯಾ',
+ 'SB' => 'ಸೊಲೊಮನ್ ದ್ವೀಪಗಳು',
+ 'SC' => 'ಸೀಶೆಲ್ಲೆಸ್',
+ 'SD' => 'ಸೂಡಾನ್',
+ 'SE' => 'ಸ್ವೀಡನ್',
+ 'SG' => 'ಸಿಂಗಾಪುರ್',
+ 'SH' => 'ಸೇಂಟ್ ಹೆಲೆನಾ',
+ 'SI' => 'ಸ್ಲೋವೇನಿಯಾ',
+ 'SJ' => 'ಸ್ವಾಲ್ಬಾರ್ಡ್ ಮತ್ತು ಜಾನ್ ಮೆಯನ್',
+ 'SK' => 'ಸ್ಲೋವೇಕಿಯಾ',
+ 'SL' => 'ಸಿಯೆರ್ರಾ ಲಿಯೋನ್',
+ 'SM' => 'ಸ್ಯಾನ್ ಮೆರಿನೋ',
+ 'SN' => 'ಸೆನೆಗಲ್',
+ 'SO' => 'ಸೊಮಾಲಿಯಾ',
+ 'SR' => 'ಸುರಿನಾಮ',
+ 'SS' => 'ದಕ್ಷಿಣ ಸೂಡಾನ್',
+ 'ST' => 'ಸಾವೋ ಟೋಮ್ ಮತ್ತು ಪ್ರಿನ್ಸಿಪಿ',
+ 'SV' => 'ಎಲ್ ಸಾಲ್ವೇಡಾರ್',
+ 'SX' => 'ಸಿಂಟ್ ಮಾರ್ಟೆನ್',
+ 'SY' => 'ಸಿರಿಯಾ',
+ 'SZ' => 'ಸ್ವಾಜಿಲ್ಯಾಂಡ್',
+ 'TA' => 'ಟ್ರಿಸ್ತನ್ ಡಾ ಕುನ್ಹಾ',
+ 'TC' => 'ಟರ್ಕ್ಸ್ ಮತ್ತು ಕೈಕೋಸ್ ದ್ವೀಪಗಳು',
+ 'TD' => 'ಚಾದ್',
+ 'TF' => 'ಫ್ರೆಂಚ್ ದಕ್ಷಿಣ ಪ್ರದೇಶಗಳು',
+ 'TG' => 'ಟೋಗೋ',
+ 'TH' => 'ಥೈಲ್ಯಾಂಡ್',
+ 'TJ' => 'ತಜಾಕಿಸ್ಥಾನ್',
+ 'TK' => 'ಟೊಕೆಲಾವ್',
+ 'TL' => 'ಪೂರ್ವ ತಿಮೋರ್',
+ 'TM' => 'ತುರ್ಕ್ಮೇನಿಸ್ಥಾನ್',
+ 'TN' => 'ಟುನಿಶಿಯಾ',
+ 'TO' => 'ಟೊಂಗ',
+ 'TR' => 'ಟರ್ಕಿ',
+ 'TT' => 'ಟ್ರಿನಿಡಾಡ್ ಮತ್ತು ಟೊಬಾಗೊ',
+ 'TV' => 'ಟುವಾಲು',
+ 'TW' => 'ಥೈವಾನ್',
+ 'TZ' => 'ತಾಂಜೇನಿಯಾ',
+ 'UA' => 'ಉಕ್ರೈನ್',
+ 'UG' => 'ಉಗಾಂಡಾ',
+ 'UM' => 'ಯುಎಸ್‌. ಔಟ್‌ಲೇಯಿಂಗ್ ದ್ವೀಪಗಳು',
+ 'US' => 'ಯು.ಎಸ್',
+ 'UY' => 'ಉರುಗ್ವೇ',
+ 'UZ' => 'ಉಜ್ಬೇಕಿಸ್ಥಾನ್',
+ 'VA' => 'ವ್ಯಾಟಿಕನ್',
+ 'VC' => 'ಸೇಂಟ್. ವಿನ್ಸೆಂಟ್ ಮತ್ತು ಗ್ರೆನೆಡೈನ್ಸ್',
+ 'VE' => 'ವೆನೆಜುವೆಲಾ',
+ 'VG' => 'ಬ್ರಿಟಿಷ್ ವರ್ಜಿನ್ ದ್ವೀಪಗಳು',
+ 'VI' => 'ಯು.ಎಸ್. ವರ್ಜಿನ್ ದ್ವೀಪಗಳು',
+ 'VN' => 'ವಿಯೇಟ್ನಾಮ್',
+ 'VU' => 'ವನೌಟು',
+ 'WF' => 'ವಾಲಿಸ್ ಮತ್ತು ಫುಟುನಾ',
+ 'WS' => 'ಸಮೋವಾ',
+ 'XK' => 'ಕೊಸೊವೊ',
+ 'YE' => 'ಯೆಮನ್',
+ 'YT' => 'ಮಯೊಟ್ಟೆ',
+ 'ZA' => 'ದಕ್ಷಿಣ ಆಫ್ರಿಕಾ',
+ 'ZM' => 'ಝಾಂಬಿಯಾ',
+ 'ZW' => 'ಜಿಂಬಾಬ್ವೆ',
+);
+
+$timeUnits = array(
+ 'day-future-one' => '{0} ದಿನದಲ್ಲಿ',
+ 'day-future-other' => '{0} ದಿನಗಳಲ್ಲಿ',
+ 'day-narrow-future-one' => '{0} ದಿನದಲ್ಲಿ',
+ 'day-narrow-future-other' => '{0} ದಿನಗಳಲ್ಲಿ',
+ 'day-narrow-past-one' => '{0} ದಿನಗಳ ಹಿಂದೆ',
+ 'day-narrow-past-other' => '{0} ದಿನಗಳ ಹಿಂದೆ',
+ 'day-one' => '{0} ದಿನ',
+ 'day-other' => '{0} ದಿನಗಳು',
+ 'day-past-one' => '{0} ದಿನದ ಹಿಂದೆ',
+ 'day-past-other' => '{0} ದಿನಗಳ ಹಿಂದೆ',
+ 'day-short-future-one' => '{0} ದಿನದಲ್ಲಿ',
+ 'day-short-future-other' => '{0} ದಿನಗಳಲ್ಲಿ',
+ 'day-short-past-one' => '{0} ದಿನಗಳ ಹಿಂದೆ',
+ 'day-short-past-other' => '{0} ದಿನಗಳ ಹಿಂದೆ',
+ 'hour-future-one' => '{0} ಗಂಟೆಯಲ್ಲಿ',
+ 'hour-future-other' => '{0} ಗಂಟೆಗಳಲ್ಲಿ',
+ 'hour-narrow-future-one' => '{0} ಗಂಟೆಯಲ್ಲಿ',
+ 'hour-narrow-future-other' => '{0} ಗಂಟೆಗಳಲ್ಲಿ',
+ 'hour-narrow-past-one' => '{0} ಗಂಟೆ ಹಿಂದೆ',
+ 'hour-narrow-past-other' => '{0} ಗಂಟೆಗಳ ಹಿಂದೆ',
+ 'hour-one' => '{0} ಗಂಟೆ',
+ 'hour-other' => '{0} ಗಂಟೆಗಳು',
+ 'hour-past-one' => '{0} ಗಂಟೆ ಹಿಂದೆ',
+ 'hour-past-other' => '{0} ಗಂಟೆಗಳ ಹಿಂದೆ',
+ 'hour-short-future-one' => '{0} ಗಂಟೆಯಲ್ಲಿ',
+ 'hour-short-future-other' => '{0} ಗಂಟೆಗಳಲ್ಲಿ',
+ 'hour-short-past-one' => '{0} ಗಂಟೆ ಹಿಂದೆ',
+ 'hour-short-past-other' => '{0} ಗಂಟೆಗಳ ಹಿಂದೆ',
+ 'microsecond-one' => '{0} ಮೈಕ್ರೊಸೆಕೆಂಡ್',
+ 'microsecond-other' => '{0} ಮೈಕ್ರೊಸೆಕೆಂಡುಗಳು',
+ 'millisecond-one' => '{0} ಮಿಲಿಸೆಕೆಂಡ್',
+ 'millisecond-other' => '{0} ಮಿಲಿಸೆಕೆಂಡುಗಳು',
+ 'minute-future-one' => '{0} ನಿಮಿಷದಲ್ಲಿ',
+ 'minute-future-other' => '{0} ನಿಮಿಷಗಳಲ್ಲಿ',
+ 'minute-narrow-future-one' => '{0} ನಿಮಿಷದಲ್ಲಿ',
+ 'minute-narrow-future-other' => '{0} ನಿಮಿಷಗಳಲ್ಲಿ',
+ 'minute-narrow-past-one' => '{0} ನಿಮಿಷದ ಹಿಂದೆ',
+ 'minute-narrow-past-other' => '{0} ನಿಮಿಷಗಳ ಹಿಂದೆ',
+ 'minute-one' => '{0} ನಿಮಿಷ',
+ 'minute-other' => '{0} ನಿಮಿಷಗಳು',
+ 'minute-past-one' => '{0} ನಿಮಿಷಗಳ ಹಿಂದೆ',
+ 'minute-past-other' => '{0} ನಿಮಿಷಗಳ ಹಿಂದೆ',
+ 'minute-short-future-one' => '{0} ನಿಮಿಷದಲ್ಲಿ',
+ 'minute-short-future-other' => '{0} ನಿಮಿಷಗಳಲ್ಲಿ',
+ 'minute-short-past-one' => '{0} ನಿಮಿಷದ ಹಿಂದೆ',
+ 'minute-short-past-other' => '{0} ನಿಮಿಷಗಳ ಹಿಂದೆ',
+ 'month-future-one' => '{0} ತಿಂಗಳಲ್ಲಿ',
+ 'month-future-other' => '{0} ತಿಂಗಳುಗಳಲ್ಲಿ',
+ 'month-narrow-future-one' => '{0} ತಿಂಗಳಲ್ಲಿ',
+ 'month-narrow-future-other' => '{0} ತಿಂಗಳುಗಳಲ್ಲಿ',
+ 'month-narrow-past-one' => '{0} ತಿಂಗಳ ಹಿಂದೆ',
+ 'month-narrow-past-other' => '{0} ತಿಂಗಳುಗಳ ಹಿಂದೆ',
+ 'month-one' => '{0} ತಿಂಗಳು',
+ 'month-other' => '{0} ತಿಂಗಳು',
+ 'month-past-one' => '{0} ತಿಂಗಳುಗಳ ಹಿಂದೆ',
+ 'month-past-other' => '{0} ತಿಂಗಳುಗಳ ಹಿಂದೆ',
+ 'month-short-future-one' => '{0} ತಿಂಗಳಲ್ಲಿ',
+ 'month-short-future-other' => '{0} ತಿಂಗಳುಗಳಲ್ಲಿ',
+ 'month-short-past-one' => '{0} ತಿಂಗಳು ಹಿಂದೆ',
+ 'month-short-past-other' => '{0} ತಿಂಗಳುಗಳ ಹಿಂದೆ',
+ 'nanosecond-one' => '{0} ನ್ಯಾನೊಸೆಕೆಂಡ್',
+ 'nanosecond-other' => '{0} ನ್ಯಾನೊಸೆಕೆಂಡುಗಳು',
+ 'quarter-future-one' => '{0} ತ್ರೈಮಾಸಿಕದಲ್ಲಿ',
+ 'quarter-future-other' => '{0} ತ್ರೈಮಾಸಿಕಗಳಲ್ಲಿ',
+ 'quarter-narrow-future-one' => '+{0} ತ್ರೈ',
+ 'quarter-narrow-future-other' => '+{0} ತ್ರೈ',
+ 'quarter-narrow-past-one' => '+{0} ತ್ರೈ. ಹಿಂದೆ',
+ 'quarter-narrow-past-other' => '+{0} ತ್ರೈ. ಹಿಂದೆ',
+ 'quarter-past-one' => '{0} ತ್ರೈಮಾಸಿಕದ ಹಿಂದೆ',
+ 'quarter-past-other' => '{0} ತ್ರೈಮಾಸಿಕಗಳ ಹಿಂದೆ',
+ 'quarter-short-future-one' => '{0} ತ್ರೈ.ಮಾ.ದಲ್ಲಿ',
+ 'quarter-short-future-other' => '{0} ತ್ರೈ.ಮಾ.ಗಳಲ್ಲಿ',
+ 'quarter-short-past-one' => '{0} ತ್ರೈ.ಮಾ. ಹಿಂದೆ',
+ 'quarter-short-past-other' => '{0} ತ್ರೈ.ಮಾ. ಗಳ ಹಿಂದೆ',
+ 'second-future-one' => '{0} ಸೆಕೆಂಡ್‌ನಲ್ಲಿ',
+ 'second-future-other' => '{0} ಸೆಕೆಂಡ್‌ಗಳಲ್ಲಿ',
+ 'second-narrow-future-one' => '{0} ಸೆಕೆಂಡ್‌ನಲ್ಲಿ',
+ 'second-narrow-future-other' => '{0} ಸೆಕೆಂಡ್‌ಗಳಲ್ಲಿ',
+ 'second-narrow-past-one' => '{0} ಸೆಕೆಂಡ್ ಹಿಂದೆ',
+ 'second-narrow-past-other' => '{0} ಸೆಕೆಂಡುಗಳ ಹಿಂದೆ',
+ 'second-one' => '{0} ಸೆಕೆಂಡ್',
+ 'second-other' => '{0} ಸೆಕೆಂಡುಗಳು',
+ 'second-past-one' => '{0} ಸೆಕೆಂಡ್ ಹಿಂದೆ',
+ 'second-past-other' => '{0} ಸೆಕೆಂಡುಗಳ ಹಿಂದೆ',
+ 'second-short-future-one' => '{0} ಸೆಕೆಂಡ್‌ನಲ್ಲಿ',
+ 'second-short-future-other' => '{0} ಸೆಕೆಂಡ್‌ಗಳಲ್ಲಿ',
+ 'second-short-past-one' => '{0} ಸೆಕೆಂಡ್ ಹಿಂದೆ',
+ 'second-short-past-other' => '{0} ಸೆಕೆಂಡುಗಳ ಹಿಂದೆ',
+ 'week-future-one' => '{0} ವಾರದಲ್ಲಿ',
+ 'week-future-other' => '{0} ವಾರಗಳಲ್ಲಿ',
+ 'week-narrow-future-one' => '{0} ವಾರದಲ್ಲಿ',
+ 'week-narrow-future-other' => '{0} ವಾರಗಳಲ್ಲಿ',
+ 'week-narrow-past-one' => '{0} ವಾರದ ಹಿಂದೆ',
+ 'week-narrow-past-other' => '{0} ವಾರಗಳ ಹಿಂದೆ',
+ 'week-one' => '{0} ವಾರಗಳು',
+ 'week-other' => '{0} ವಾರಗಳು',
+ 'week-past-one' => '{0} ವಾರದ ಹಿಂದೆ',
+ 'week-past-other' => '{0} ವಾರಗಳ ಹಿಂದೆ',
+ 'week-short-future-one' => '{0} ವಾರದಲ್ಲಿ',
+ 'week-short-future-other' => '{0} ವಾರಗಳಲ್ಲಿ',
+ 'week-short-past-one' => '{0} ವಾರದ ಹಿಂದೆ',
+ 'week-short-past-other' => '{0} ವಾರಗಳ ಹಿಂದೆ',
+ 'year-future-one' => '{0} ವರ್ಷದಲ್ಲಿ',
+ 'year-future-other' => '{0} ವರ್ಷಗಳಲ್ಲಿ',
+ 'year-narrow-future-one' => '{0} ವರ್ಷದಲ್ಲಿ',
+ 'year-narrow-future-other' => '{0} ವರ್ಷಗಳಲ್ಲಿ',
+ 'year-narrow-past-one' => '{0} ವರ್ಷದ ಹಿಂದೆ',
+ 'year-narrow-past-other' => '{0} ವರ್ಷಗಳ ಹಿಂದೆ',
+ 'year-one' => '{0} ವರ್ಷ',
+ 'year-other' => '{0} ವರ್ಷಗಳು',
+ 'year-past-one' => '{0} ವರ್ಷದ ಹಿಂದೆ',
+ 'year-past-other' => '{0} ವರ್ಷಗಳ ಹಿಂದೆ',
+ 'year-short-future-one' => '{0} ವರ್ಷದಲ್ಲಿ',
+ 'year-short-future-other' => '{0} ವರ್ಷಗಳಲ್ಲಿ',
+ 'year-short-past-one' => '{0} ವರ್ಷದ ಹಿಂದೆ',
+ 'year-short-past-other' => '{0} ವರ್ಷಗಳ ಹಿಂದೆ',
+);
diff --git a/MLEB/cldr/CldrNames/CldrNamesKo.php b/MLEB/cldr/CldrNames/CldrNamesKo.php
new file mode 100644
index 00000000..6f6b3604
--- /dev/null
+++ b/MLEB/cldr/CldrNames/CldrNamesKo.php
@@ -0,0 +1,1305 @@
+<?php
+
+$languageNames = array(
+ 'aa' => '아파르어',
+ 'ab' => '압카즈어',
+ 'ace' => '아체어',
+ 'ach' => '아콜리어',
+ 'ada' => '아당메어',
+ 'ady' => '아닥헤어',
+ 'ae' => '아베스타어',
+ 'aeb' => '튀니지 아랍어',
+ 'af' => '아프리칸스어',
+ 'afh' => '아프리히리어',
+ 'agq' => '아그햄어',
+ 'ain' => '아이누어',
+ 'ak' => '아칸어',
+ 'akk' => '아카드어',
+ 'ale' => '알류트어',
+ 'alt' => '남부 알타이어',
+ 'am' => '암하라어',
+ 'an' => '아라곤어',
+ 'ang' => '고대 영어',
+ 'anp' => '앙가어',
+ 'ar' => '아랍어',
+ 'ar-001' => '현대 표준 아랍어',
+ 'arc' => '아람어',
+ 'arn' => '아라우칸어',
+ 'arp' => '아라파호어',
+ 'arq' => '알제리 아랍어',
+ 'arw' => '아라와크어',
+ 'ary' => '모로코 아랍어',
+ 'arz' => '이집트 아랍어',
+ 'as' => '아샘어',
+ 'asa' => '아수어',
+ 'ast' => '아스투리아어',
+ 'av' => '아바릭어',
+ 'awa' => '아와히어',
+ 'ay' => '아이마라어',
+ 'az' => '아제르바이잔어',
+ 'azb' => '남아제르바이잔어',
+ 'ba' => '바슈키르어',
+ 'bal' => '발루치어',
+ 'ban' => '발리어',
+ 'bas' => '바사어',
+ 'bax' => '바문어',
+ 'bbj' => '고말라어',
+ 'be' => '벨라루스어',
+ 'bej' => '베자어',
+ 'bem' => '벰바어',
+ 'bez' => '베나어',
+ 'bfd' => '바푸트어',
+ 'bg' => '불가리아어',
+ 'bho' => '호즈푸리어',
+ 'bi' => '비슬라마어',
+ 'bik' => '비콜어',
+ 'bin' => '비니어',
+ 'bkm' => '콤어',
+ 'bla' => '식시카어',
+ 'bm' => '밤바라어',
+ 'bn' => '벵골어',
+ 'bo' => '티베트어',
+ 'br' => '브르타뉴어',
+ 'bra' => '브라지어',
+ 'brh' => '브라후이어',
+ 'brx' => '보도어',
+ 'bs' => '보스니아어',
+ 'bss' => '아쿠즈어',
+ 'bua' => '부리아타',
+ 'bug' => '부기어',
+ 'bum' => '불루어',
+ 'byn' => '브린어',
+ 'byv' => '메둠바어',
+ 'ca' => '카탈로니아어',
+ 'cad' => '카도어',
+ 'car' => '카리브어',
+ 'cay' => '카유가어',
+ 'cch' => '아삼어',
+ 'ce' => '체첸어',
+ 'ceb' => '세부아노어',
+ 'cgg' => '치가어',
+ 'ch' => '차모로어',
+ 'chb' => '치브차어',
+ 'chg' => '차가타이어',
+ 'chk' => '추크어',
+ 'chm' => '마리어',
+ 'chn' => '치누크어와 영어 프랑스어의 혼성어',
+ 'cho' => '촉토어',
+ 'chp' => '치페우얀',
+ 'chr' => '체로키어',
+ 'chy' => '샤이엔어',
+ 'ckb' => '소라니 쿠르드어',
+ 'co' => '코르시카어',
+ 'cop' => '콥트어',
+ 'cr' => '크리어',
+ 'crh' => '크리민 터키어; 크리민 타타르어',
+ 'cs' => '체코어',
+ 'csb' => '카슈비아어',
+ 'cu' => '교회 슬라브어',
+ 'cv' => '추바시어',
+ 'cy' => '웨일스어',
+ 'da' => '덴마크어',
+ 'dak' => '다코타어',
+ 'dar' => '다르그와어',
+ 'dav' => '타이타어',
+ 'de' => '독일어',
+ 'de-ch' => '고지 독일어 (스위스)',
+ 'del' => '델라웨어어',
+ 'den' => '슬라브어',
+ 'dgr' => '도그리브어',
+ 'din' => '딩카어',
+ 'dje' => '자르마어',
+ 'doi' => '도그리어',
+ 'dsb' => '저지 소르비아어',
+ 'dua' => '드와라어',
+ 'dum' => '중세 네덜란드어',
+ 'dv' => '디베히어',
+ 'dyo' => '졸라 포니어',
+ 'dyu' => '드율라어',
+ 'dz' => '종카어',
+ 'dzg' => '다장가어',
+ 'ebu' => '엠부어',
+ 'ee' => '에웨어',
+ 'efi' => '이픽어',
+ 'egy' => '이집트어 (고대)',
+ 'eka' => '이카죽어',
+ 'el' => '그리스어',
+ 'elx' => '엘람어',
+ 'en' => '영어',
+ 'en-au' => '영어(호주)',
+ 'en-ca' => '영어 (캐나다)',
+ 'en-gb' => '영어 (영국식)',
+ 'enm' => '영어, 중세',
+ 'eo' => '에스페란토어',
+ 'es' => '스페인어',
+ 'es-419' => '중남미 스페인어',
+ 'es-es' => '유럽식 스페인어',
+ 'et' => '에스토니아어',
+ 'eu' => '바스크어',
+ 'ewo' => '이원도어',
+ 'fa' => '페르시아어',
+ 'fan' => '팡그어',
+ 'fat' => '판티어',
+ 'ff' => '풀라어',
+ 'fi' => '핀란드어',
+ 'fil' => '필리핀어',
+ 'fj' => '피지어',
+ 'fo' => '페로어',
+ 'fon' => '폰어',
+ 'fr' => '프랑스어',
+ 'fr-ca' => '프랑스어 (캐나다)',
+ 'fr-ch' => '프랑스어 (스위스)',
+ 'frm' => '중세 프랑스어',
+ 'fro' => '고대 프랑스어',
+ 'frr' => '북부 프리슬란드어',
+ 'frs' => '동부 프리슬란드어',
+ 'fur' => '프리우리안어',
+ 'fy' => '프리지아어',
+ 'ga' => '아일랜드어',
+ 'gaa' => '가어',
+ 'gag' => '가가우스어',
+ 'gay' => '가요어',
+ 'gba' => '그바야어',
+ 'gbz' => '조로아스터 다리어',
+ 'gd' => '스코틀랜드 게일어',
+ 'gez' => '게이즈어',
+ 'gil' => '키리바시어',
+ 'gl' => '갈리시아어',
+ 'glk' => '길라키어',
+ 'gmh' => '중세 고지 독일어',
+ 'gn' => '과라니어',
+ 'goh' => '고대 고지 독일어',
+ 'gom' => '고아 콘칸어',
+ 'gon' => '곤디어',
+ 'gor' => '고론탈로어',
+ 'got' => '고트어',
+ 'grb' => '게르보어',
+ 'grc' => '그리스어, 고대',
+ 'gsw' => '독일어(스위스)',
+ 'gu' => '구자라트어',
+ 'guz' => '구시어',
+ 'gv' => '맹크스어',
+ 'gwi' => '그위친어',
+ 'ha' => '하우사어',
+ 'hai' => '하이다어',
+ 'haw' => '하와이어',
+ 'he' => '히브리어',
+ 'hi' => '힌디어',
+ 'hif' => '피지 힌디어',
+ 'hil' => '헤리가뇬어',
+ 'hit' => '하타이트어',
+ 'hmn' => '히몸어',
+ 'ho' => '히리 모투어',
+ 'hr' => '크로아티아어',
+ 'hsb' => '고지 소르비아어',
+ 'ht' => '아이티어',
+ 'hu' => '헝가리어',
+ 'hup' => '후파어',
+ 'hy' => '아르메니아어',
+ 'hz' => '헤레로어',
+ 'ia' => '인테르링구아 (국제보조어협회)',
+ 'iba' => '이반어',
+ 'ibb' => '이비비오어',
+ 'id' => '인도네시아어',
+ 'ie' => '인테르링구에',
+ 'ig' => '이그보어',
+ 'ii' => '쓰촨 이어',
+ 'ik' => '이누피아크어',
+ 'ilo' => '이로코어',
+ 'inh' => '인귀시어',
+ 'io' => '이도어',
+ 'is' => '아이슬란드어',
+ 'it' => '이탈리아어',
+ 'iu' => '이눅티투트어',
+ 'ja' => '일본어',
+ 'jbo' => '로반어',
+ 'jgo' => '응곰바어',
+ 'jmc' => '마차메어',
+ 'jpr' => '유대-페르시아어',
+ 'jrb' => '유대-아라비아어',
+ 'jv' => '자바어',
+ 'ka' => '조지아어',
+ 'kaa' => '카라칼파크어',
+ 'kab' => '커바일어',
+ 'kac' => '카친어',
+ 'kaj' => '까꼬토끄어',
+ 'kam' => '캄바어',
+ 'kaw' => '카위어',
+ 'kbd' => '카바르디어',
+ 'kbl' => '카넴부어',
+ 'kcg' => '티얍어',
+ 'kde' => '마콘데어',
+ 'kea' => '크리올어',
+ 'kfo' => '코로어',
+ 'kg' => '콩고어',
+ 'kha' => '카시어',
+ 'kho' => '호탄어',
+ 'khq' => '코이라 친니어',
+ 'khw' => '코와르어',
+ 'ki' => '키쿠유어',
+ 'kj' => '쿠안야마어',
+ 'kk' => '카자흐어',
+ 'kkj' => '카코어',
+ 'kl' => '그린란드어',
+ 'kln' => '칼렌진어',
+ 'km' => '캄보디아어',
+ 'kmb' => '킴분두어',
+ 'kn' => '칸나다어',
+ 'ko' => '한국어',
+ 'koi' => '코미페르먀크어',
+ 'kok' => '코카니어',
+ 'kos' => '코스라이엔어',
+ 'kpe' => '크펠레어',
+ 'kr' => '칸누리어',
+ 'krc' => '카라챠이-발카르어',
+ 'krl' => '카렐리야어',
+ 'kru' => '쿠르크어',
+ 'ks' => '카슈미르어',
+ 'ksb' => '샴발라어',
+ 'ksf' => '바피아어',
+ 'ksh' => '콜로그니안어',
+ 'ku' => '쿠르드어',
+ 'kum' => '쿠믹어',
+ 'kut' => '쿠테네어',
+ 'kv' => '코미어',
+ 'kw' => '콘월어',
+ 'ky' => '키르기스어',
+ 'la' => '라틴어',
+ 'lad' => '라디노어',
+ 'lag' => '랑기어',
+ 'lah' => '라한다어',
+ 'lam' => '람바어',
+ 'lb' => '룩셈부르크어',
+ 'lez' => '레즈기안어',
+ 'lfn' => '링구아 프랑카 노바',
+ 'lg' => '간다어',
+ 'li' => '림버거어',
+ 'lkt' => '라코타어',
+ 'ln' => '링갈라어',
+ 'lo' => '라오어',
+ 'lol' => '몽구어',
+ 'loz' => '로지어',
+ 'lt' => '리투아니아어',
+ 'lu' => '루바-카탄가어',
+ 'lua' => '루바-룰루아어',
+ 'lui' => '루이세노어',
+ 'lun' => '룬다어',
+ 'luo' => '루오어',
+ 'lus' => '루샤이어',
+ 'luy' => '루야어',
+ 'lv' => '라트비아어',
+ 'mad' => '마두라어',
+ 'maf' => '마파어',
+ 'mag' => '마가히',
+ 'mai' => '마이틸리',
+ 'mak' => '마카사어',
+ 'man' => '만딩고어',
+ 'mas' => '마사이어',
+ 'mde' => '마바어',
+ 'mdf' => '모크샤어',
+ 'mdr' => '만다르어',
+ 'men' => '멘데어',
+ 'mer' => '메루어',
+ 'mfe' => '모리스얀어',
+ 'mg' => '말라가시어',
+ 'mga' => '아일랜드어, 중세',
+ 'mgh' => '마크후와-메토어',
+ 'mgo' => '메타어',
+ 'mh' => '마셜제도어',
+ 'mi' => '마오리어',
+ 'mic' => '미크맥어',
+ 'min' => '미낭카바우',
+ 'mk' => '마케도니아어',
+ 'ml' => '말라얄람어',
+ 'mn' => '몽고어',
+ 'mnc' => '만주어',
+ 'mni' => '마니푸리어',
+ 'moh' => '모호크어',
+ 'mos' => '모시어',
+ 'mr' => '마라티어',
+ 'mrj' => '서부 마리어',
+ 'ms' => '말레이어',
+ 'mt' => '몰타어',
+ 'mua' => '문당어',
+ 'mul' => '다중 언어',
+ 'mus' => '크리크어',
+ 'mwl' => '미란데어',
+ 'mwr' => '마르와리어',
+ 'my' => '버마어',
+ 'mye' => '미예네어',
+ 'myv' => '엘즈야어',
+ 'mzn' => '마잔데라니어',
+ 'na' => '나우루어',
+ 'nap' => '나폴리어',
+ 'naq' => '나마어',
+ 'nb' => '노르웨이어(보크말)',
+ 'nd' => '북부 은데벨레어',
+ 'nds' => '저지 독일어',
+ 'ne' => '네팔어',
+ 'new' => '네와르어',
+ 'ng' => '느동가어',
+ 'nia' => '니아스어',
+ 'niu' => '니웨언어',
+ 'nl' => '네덜란드어',
+ 'nl-be' => '플라망어',
+ 'nmg' => '크와시오어',
+ 'nn' => '노르웨이어(니노르스크)',
+ 'nnh' => '느기엠본어',
+ 'no' => '노르웨이어',
+ 'nog' => '노가이어',
+ 'non' => '노르웨이, 고대',
+ 'nqo' => '응코어',
+ 'nr' => '남부 은데벨레어',
+ 'nso' => '소토어 (북부)',
+ 'nus' => '누에르어',
+ 'nv' => '나바호어',
+ 'nwc' => '네와르어 (고전)',
+ 'ny' => '니안자어; 치츄어; 츄어',
+ 'nym' => '니암웨지어',
+ 'nyn' => '니안콜어',
+ 'nyo' => '뉴로어',
+ 'nzi' => '느지마어',
+ 'oc' => '오크어',
+ 'oj' => '오지브웨이어',
+ 'om' => '오로모어',
+ 'or' => '오리야어',
+ 'os' => '오세트어',
+ 'osa' => '오세이지어',
+ 'ota' => '터키어, 오스만',
+ 'pa' => '펀잡어',
+ 'pag' => '판가시난어',
+ 'pal' => '팔레비어',
+ 'pam' => '팜팡가어',
+ 'pap' => '파피아먼토어',
+ 'pau' => '파라우안어',
+ 'peo' => '고대 페르시아어',
+ 'phn' => '페니키아어',
+ 'pi' => '팔리어',
+ 'pl' => '폴란드어',
+ 'pnt' => '폰틱어',
+ 'pon' => '폼페이어',
+ 'pro' => '고대 프로방스어',
+ 'ps' => '파슈토어',
+ 'pt' => '포르투갈어',
+ 'pt-br' => '포르투갈어 (브라질)',
+ 'pt-pt' => '유럽식 포르투갈어',
+ 'qu' => '케추아어',
+ 'quc' => '키체어',
+ 'raj' => '라자스탄어',
+ 'rap' => '라파뉴이',
+ 'rar' => '라로통가어',
+ 'rm' => '레토로만어',
+ 'rn' => '룬디어',
+ 'ro' => '루마니아어',
+ 'ro-md' => '몰도바어',
+ 'rof' => '롬보어',
+ 'rom' => '집시어',
+ 'ru' => '러시아어',
+ 'rue' => '루신어',
+ 'rup' => '아로마니아어',
+ 'rw' => '르완다어',
+ 'rwk' => '르와어',
+ 'sa' => '산스크리트어',
+ 'sad' => '산다웨어',
+ 'sah' => '야큐트어',
+ 'sam' => '사마리아 아랍어',
+ 'saq' => '삼부루어',
+ 'sas' => '사사크어',
+ 'sat' => '산탈리어',
+ 'sba' => '느감바이어',
+ 'sbp' => '상구어',
+ 'sc' => '사르디니아어',
+ 'scn' => '시칠리아어',
+ 'sco' => '스코틀랜드어',
+ 'sd' => '신디어',
+ 'se' => '북부 사미어',
+ 'see' => '세네카어',
+ 'seh' => '세나어',
+ 'sel' => '셀쿠프어',
+ 'ses' => '코이야보로 세니어',
+ 'sg' => '산고어',
+ 'sga' => '아일랜드, 고대',
+ 'sh' => '세르비아-크로아티아어',
+ 'shi' => '타셸히트어',
+ 'shn' => '샨어',
+ 'shu' => '차디언 아라비아어',
+ 'si' => '스리랑카어',
+ 'sid' => '시다모어',
+ 'sk' => '슬로바키아어',
+ 'sl' => '슬로베니아어',
+ 'sm' => '사모아어',
+ 'sma' => '남부 사미어',
+ 'smj' => '룰레 사미어',
+ 'smn' => '이나리 사미어',
+ 'sms' => '스콜트 사미어',
+ 'sn' => '쇼나어',
+ 'snk' => '소닌케어',
+ 'so' => '소말리아어',
+ 'sog' => '소그디엔어',
+ 'sq' => '알바니아어',
+ 'sr' => '세르비아어',
+ 'srn' => '스라난 통가어',
+ 'srr' => '세레르어',
+ 'ss' => '시스와티어',
+ 'ssy' => '사호어',
+ 'st' => '소토어 (남부)',
+ 'su' => '순다어',
+ 'suk' => '수쿠마족어',
+ 'sus' => '수수어',
+ 'sux' => '수메르어',
+ 'sv' => '스웨덴어',
+ 'sw' => '스와힐리어',
+ 'swb' => '코모로어',
+ 'swc' => '콩고 스와힐리어',
+ 'syc' => '시리아어 (고전)',
+ 'syr' => '시리아어',
+ 'ta' => '타밀어',
+ 'te' => '텔루구어',
+ 'tem' => '팀니어',
+ 'teo' => '테조어',
+ 'ter' => '테레노어',
+ 'tet' => '테툼어',
+ 'tg' => '타지크어',
+ 'th' => '태국어',
+ 'ti' => '티그리냐어',
+ 'tig' => '티그레어',
+ 'tiv' => '티비어',
+ 'tk' => '투르크멘어',
+ 'tkl' => '토켈라우제도어',
+ 'tkr' => '차후르어',
+ 'tl' => '타갈로그어',
+ 'tlh' => '클링온어',
+ 'tli' => '틀링깃족어',
+ 'tly' => '탈리쉬어',
+ 'tmh' => '타마섹어',
+ 'tn' => '세츠와나어',
+ 'to' => '통가어',
+ 'tog' => '통가어 (니아살랜드)',
+ 'tpi' => '토크 피신어',
+ 'tr' => '터키어',
+ 'trv' => '타로코어',
+ 'ts' => '총가어',
+ 'tsi' => '트심시안어',
+ 'tt' => '타타르어',
+ 'tum' => '툼부카어',
+ 'tvl' => '투발루어',
+ 'tw' => '트위어',
+ 'twq' => '타사와크어',
+ 'ty' => '타히티어',
+ 'tyv' => '투비니안어',
+ 'tzm' => '중앙모로코 타마지트어',
+ 'udm' => '우드말트어',
+ 'ug' => '위구르어',
+ 'uga' => '유가리틱어',
+ 'uk' => '우크라이나어',
+ 'umb' => '윤번두어',
+ 'und' => '알 수 없는 언어',
+ 'ur' => '우르두어',
+ 'uz' => '우즈베크어',
+ 'vai' => '바이어',
+ 've' => '벤다어',
+ 'vi' => '베트남어',
+ 'vo' => '볼라퓌크어',
+ 'vot' => '보틱어',
+ 'vun' => '분조어',
+ 'wa' => '왈론어',
+ 'wae' => '월저어',
+ 'wal' => '와라모어',
+ 'war' => '와라이어',
+ 'was' => '와쇼어',
+ 'wo' => '올로프어',
+ 'xal' => '칼미크어',
+ 'xh' => '코사어',
+ 'xog' => '소가어',
+ 'yao' => '야오족어',
+ 'yap' => '얍페세어',
+ 'yav' => '양본어',
+ 'ybb' => '옘바어',
+ 'yi' => '이디시어',
+ 'yo' => '요루바어',
+ 'yue' => '광둥어',
+ 'za' => '주앙어',
+ 'zap' => '사포테크어',
+ 'zbl' => '블리스 심볼',
+ 'zen' => '제나가어',
+ 'zgh' => '표준 모로코 타마제크어',
+ 'zh' => '중국어',
+ 'zh-hans' => '중국어(간체)',
+ 'zh-hant' => '중국어(번체)',
+ 'zu' => '줄루어',
+ 'zun' => '주니어',
+ 'zxx' => '언어 관련 내용 없음',
+ 'zza' => '자자어',
+);
+
+$currencyNames = array(
+ 'ADP' => '안도라 페세타',
+ 'AED' => '아랍에미리트 디르함',
+ 'AFA' => '아프가니 (1927–2002)',
+ 'AFN' => '아프가니스탄 아프가니',
+ 'ALL' => '알바니아 레크',
+ 'AMD' => '아르메니아 드람',
+ 'ANG' => '네덜란드령 안틸레스 길더',
+ 'AOA' => '앙골라 콴자',
+ 'AOK' => '앙골라 콴자 (1977–1990)',
+ 'AON' => '앙골라 신콴자 (1990–2000)',
+ 'AOR' => '앙골라 재조정 콴자 (1995–1999)',
+ 'ARA' => '아르헨티나 오스트랄',
+ 'ARL' => '아르헨티나 페소 레이 (1970–1983)',
+ 'ARM' => '아르헨티나 페소 (18810–1970)',
+ 'ARP' => '아르헨티나 페소 (1983–1985)',
+ 'ARS' => '아르헨티나 페소',
+ 'ATS' => '호주 실링',
+ 'AUD' => '호주 달러',
+ 'AWG' => '아루바 플로린',
+ 'AZM' => '아제르바이젠 마나트(1993–2006)',
+ 'AZN' => '아제르바이잔 마나트',
+ 'BAD' => '보스니아-헤르체고비나 디나르',
+ 'BAM' => '보스니아-헤르체고비나 태환 마르크',
+ 'BAN' => '보스니아-헤르체고비나 신디나르 (1994–1997)',
+ 'BBD' => '바베이도스 달러',
+ 'BDT' => '방글라데시 타카',
+ 'BEC' => '벨기에 프랑 (태환)',
+ 'BEF' => '벨기에 프랑',
+ 'BEL' => '벨기에 프랑 (금융)',
+ 'BGL' => '불가리아 동전 렛',
+ 'BGM' => '불가리아 사회주의자 렛',
+ 'BGN' => '불가리아 레프',
+ 'BGO' => '불가리아 렛 (1879–1952)',
+ 'BHD' => '바레인 디나르',
+ 'BIF' => '부룬디 프랑',
+ 'BMD' => '버뮤다 달러',
+ 'BND' => '부루나이 달러',
+ 'BOB' => '볼리비아노',
+ 'BOL' => '볼리비아 볼리비아노 (1863–1963)',
+ 'BOP' => '볼리비아노 페소',
+ 'BOV' => '볼리비아노 Mvdol(기금)',
+ 'BRB' => '볼리비아노 크루제이루 노보 (1967–1986)',
+ 'BRC' => '브라질 크루자두',
+ 'BRE' => '브라질 크루제이루 (1990–1993)',
+ 'BRL' => '브라질 레알',
+ 'BRN' => '브라질 크루자두 노보',
+ 'BRR' => '브라질 크루제이루',
+ 'BRZ' => '브라질 크루제이루 (1942–1967)',
+ 'BSD' => '바하마 달러',
+ 'BTN' => '부탄 눌투눔',
+ 'BUK' => '버마 차트',
+ 'BWP' => '보츠와나 폴라',
+ 'BYB' => '벨라루스 신권 루블 (1994–1999)',
+ 'BYR' => '벨라루스 루블',
+ 'BZD' => '벨리즈 달러',
+ 'CAD' => '캐나다 달러',
+ 'CDF' => '콩고 프랑 콩골라스',
+ 'CHE' => '유로 (WIR)',
+ 'CHF' => '스위스 프랑',
+ 'CHW' => '프랑 (WIR)',
+ 'CLE' => '칠레 에스쿠도',
+ 'CLF' => '칠레 (UF)',
+ 'CLP' => '칠레 페소',
+ 'CNY' => '중국 위안화',
+ 'COP' => '콜롬비아 페소',
+ 'COU' => '콜롬비아 실가 단위',
+ 'CRC' => '코스타리카 콜론',
+ 'CSD' => '고 세르비아 디나르',
+ 'CSK' => '체코슬로바키아 동전 코루나',
+ 'CUC' => '쿠바 태환 페소',
+ 'CUP' => '쿠바 페소',
+ 'CVE' => '카보베르데 에스쿠도',
+ 'CYP' => '싸이프러스 파운드',
+ 'CZK' => '체코 공화국 코루나',
+ 'DDM' => '동독 오스트마르크',
+ 'DEM' => '독일 마르크',
+ 'DJF' => '지부티 프랑',
+ 'DKK' => '덴마크 크로네',
+ 'DOP' => '도미니카 페소',
+ 'DZD' => '알제리 디나르',
+ 'ECS' => '에쿠아도르 수크레',
+ 'ECV' => '에콰도르 (UVC)',
+ 'EEK' => '에스토니아 크룬',
+ 'EGP' => '이집트 파운드',
+ 'ERN' => '에리트리아 나크파',
+ 'ESA' => '스페인 페세타(예금)',
+ 'ESB' => '스페인 페세타(변환 예금)',
+ 'ESP' => '스페인 페세타',
+ 'ETB' => '이디오피아 비르',
+ 'EUR' => '유로',
+ 'FIM' => '핀란드 마르카',
+ 'FJD' => '피지 달러',
+ 'FKP' => '포클랜드제도 파운드',
+ 'FRF' => '프랑스 프랑',
+ 'GBP' => '파운드',
+ 'GEK' => '그루지야 지폐 라리트',
+ 'GEL' => '조지아 라리',
+ 'GHC' => '가나 시디 (1979–2007)',
+ 'GHS' => '가나 시디',
+ 'GIP' => '지브롤터 파운드',
+ 'GMD' => '감비아 달라시',
+ 'GNF' => '기니 프랑',
+ 'GNS' => '기니 시리',
+ 'GQE' => '적도 기니 에쿨 (Ekwele)',
+ 'GRD' => '그리스 드라크마',
+ 'GTQ' => '과테말라 케트살',
+ 'GWE' => '포르투갈령 기니 에스쿠도',
+ 'GWP' => '기네비쏘 페소',
+ 'GYD' => '가이아나 달러',
+ 'HKD' => '홍콩 달러',
+ 'HNL' => '온두라스 렘피라',
+ 'HRD' => '크로아티아 디나르',
+ 'HRK' => '크로아티아 쿠나',
+ 'HTG' => '하이티 구르드',
+ 'HUF' => '헝가리 포린트',
+ 'IDR' => '인도네시아 루피아',
+ 'IEP' => '아일랜드 파운드',
+ 'ILP' => '이스라엘 파운드',
+ 'ILS' => '이스라엘 신권 세켈',
+ 'INR' => '인도 루피',
+ 'IQD' => '이라크 디나르',
+ 'IRR' => '이란 리얄',
+ 'ISK' => '아이슬란드 크로나',
+ 'ITL' => '이탈리아 리라',
+ 'JMD' => '자메이카 달러',
+ 'JOD' => '요르단 디나르',
+ 'JPY' => '일본 엔화',
+ 'KES' => '케냐 실링',
+ 'KGS' => '키르기스스탄 솜',
+ 'KHR' => '캄보디아 리얄',
+ 'KMF' => '코모르 프랑',
+ 'KPW' => '조선 민주주의 인민 공화국 원',
+ 'KRH' => '대한민국 환 (1953–1962)',
+ 'KRW' => '대한민국 원',
+ 'KWD' => '쿠웨이트 디나르',
+ 'KYD' => '케이맨 제도 달러',
+ 'KZT' => '카자흐스탄 텐게',
+ 'LAK' => '라오스 키프',
+ 'LBP' => '레바논 파운드',
+ 'LKR' => '스리랑카 루피',
+ 'LRD' => '라이베리아 달러',
+ 'LSL' => '레소토 로티',
+ 'LTL' => '리투아니아 리타',
+ 'LTT' => '룩셈부르크 타로나',
+ 'LUC' => '룩셈부르크 변환 프랑',
+ 'LUF' => '룩셈부르크 프랑',
+ 'LUL' => '룩셈부르크 재정 프랑',
+ 'LVL' => '라트비아 라트',
+ 'LVR' => '라트비아 루블',
+ 'LYD' => '리비아 디나르',
+ 'MAD' => '모로코 디렘',
+ 'MAF' => '모로코 프랑',
+ 'MCF' => '모나코 프랑',
+ 'MDC' => '몰도바 쿠폰',
+ 'MDL' => '몰도바 레이',
+ 'MGA' => '마다가스카르 아리아리',
+ 'MGF' => '마다가스카르 프랑',
+ 'MKD' => '마케도니아 디나르',
+ 'MLF' => '말리 프랑',
+ 'MMK' => '미얀마 키얏',
+ 'MNT' => '몽골 투그릭',
+ 'MOP' => '마카오 파타카',
+ 'MRO' => '모리타니 우기야',
+ 'MTL' => '몰타 리라',
+ 'MTP' => '몰타 파운드',
+ 'MUR' => '모리셔스 루피',
+ 'MVR' => '몰디브 제도 루피아',
+ 'MWK' => '말라위 콰쳐',
+ 'MXN' => '멕시코 페소',
+ 'MXP' => '멕시코 실버 페소 (1861–1992)',
+ 'MXV' => '멕시코 (UDI)',
+ 'MYR' => '말레이시아 링깃',
+ 'MZE' => '모잠비크 에스쿠도',
+ 'MZM' => '고 모잠비크 메티칼',
+ 'MZN' => '모잠비크 메티칼',
+ 'NAD' => '나미비아 달러',
+ 'NGN' => '니제르 나이라',
+ 'NIC' => '니카라과 코르도바',
+ 'NIO' => '니카라과 코르도바 오로',
+ 'NLG' => '네델란드 길더',
+ 'NOK' => '노르웨이 크로네',
+ 'NPR' => '네팔 루피',
+ 'NZD' => '뉴질랜드 달러',
+ 'OMR' => '오만 리얄',
+ 'PAB' => '파나마 발보아',
+ 'PEI' => '페루 인티',
+ 'PEN' => '페루 누에보 솔',
+ 'PES' => '페루 솔',
+ 'PGK' => '파푸아뉴기니 키나',
+ 'PHP' => '필리핀 페소',
+ 'PKR' => '파키스탄 루피',
+ 'PLN' => '폴란드 즐로티',
+ 'PLZ' => '폴란드 즐로티 (1950–1995)',
+ 'PTE' => '포르투갈 에스쿠도',
+ 'PYG' => '파라과이 과라니',
+ 'QAR' => '카타르 리얄',
+ 'RHD' => '로디지아 달러',
+ 'ROL' => '루마니아 레이',
+ 'RON' => '루마니아 레우',
+ 'RSD' => '세르비아 디나르',
+ 'RUB' => '러시아 루블',
+ 'RUR' => '러시아 루블 (1991–1998)',
+ 'RWF' => '르완다 프랑',
+ 'SAR' => '사우디아라비아 리얄',
+ 'SBD' => '솔로몬 제도 달러',
+ 'SCR' => '세이셸 루피',
+ 'SDD' => '수단 디나르',
+ 'SDG' => '수단 파운드',
+ 'SDP' => '고 수단 파운드',
+ 'SEK' => '스웨덴 크로나',
+ 'SGD' => '싱가폴 달러',
+ 'SHP' => '세인트헬레나 파운드',
+ 'SIT' => '슬로베니아 톨라르',
+ 'SKK' => '슬로바키아 코루나',
+ 'SLL' => '시에라리온 리온',
+ 'SOS' => '소말리아 실링',
+ 'SRD' => '수리남 달러',
+ 'SRG' => '수리남 길더',
+ 'SSP' => '남수단 파운드',
+ 'STD' => '상투메 프린시페 도브라',
+ 'SUR' => '소련 루블',
+ 'SVC' => '엘살바도르 콜론',
+ 'SYP' => '시리아 파운드',
+ 'SZL' => '스와질란드 릴랑게니',
+ 'THB' => '태국 바트',
+ 'TJR' => '타지키스탄 루블',
+ 'TJS' => '타지키스탄 소모니',
+ 'TMM' => '투르크메니스탄 마나트 (1993–2009)',
+ 'TMT' => '투르크메니스탄 마나트',
+ 'TND' => '튀니지 디나르',
+ 'TOP' => '통가 파앙가',
+ 'TPE' => '티모르 에스쿠도',
+ 'TRL' => '터키 리라',
+ 'TRY' => '신 터키 리라',
+ 'TTD' => '트리니다드 토바고 달러',
+ 'TWD' => '신 타이완 달러',
+ 'TZS' => '탄자니아 실링',
+ 'UAH' => '우크라이나 그리브나',
+ 'UAK' => '우크라이나 카보바네츠',
+ 'UGS' => '우간다 실링 (1966–1987)',
+ 'UGX' => '우간다 실링',
+ 'USD' => '미국 달러',
+ 'USN' => '미국 달러(다음날)',
+ 'USS' => '미국 달러(당일)',
+ 'UYI' => '우루과이 페소 (UI)',
+ 'UYP' => '우루과이 페소 (1975–1993)',
+ 'UYU' => '우루과이 페소 우루과요',
+ 'UZS' => '우즈베키스탄 숨',
+ 'VEB' => '베네주엘라 볼리바르 (1871–2008)',
+ 'VEF' => '베네수엘라 볼리바르',
+ 'VND' => '베트남 동',
+ 'VNN' => '베트남 동 (1978–1985)',
+ 'VUV' => '바누아투 바투',
+ 'WST' => '서 사모아 탈라',
+ 'XAF' => 'CFA 프랑 BEAC',
+ 'XAG' => '은화',
+ 'XAU' => '금',
+ 'XBA' => '유르코 (유럽 회계 단위)',
+ 'XBB' => '유럽 통화 동맹',
+ 'XBC' => '유럽 계산 단위 (XBC)',
+ 'XBD' => '유럽 계산 단위 (XBD)',
+ 'XCD' => '동카리브 달러',
+ 'XDR' => '특별인출권',
+ 'XEU' => '유럽 환율 단위',
+ 'XFO' => '프랑스 프랑 (Gold)',
+ 'XFU' => '프랑스 프랑 (UIC)',
+ 'XOF' => 'CFA 프랑 BCEAO',
+ 'XPD' => '팔라듐',
+ 'XPF' => 'CFP 프랑',
+ 'XPT' => '백금',
+ 'XRE' => 'RINET 기금',
+ 'XTS' => '테스트 통화 코드',
+ 'XXX' => '알 수 없는 통화단위',
+ 'YDD' => '예멘 디나르',
+ 'YER' => '예멘 리알',
+ 'YUD' => '유고슬라비아 동전 디나르',
+ 'YUM' => '유고슬라비아 노비 디나르',
+ 'YUN' => '유고슬라비아 전환 디나르',
+ 'ZAL' => '남아프리카 랜드 (금융)',
+ 'ZAR' => '남아프리카 랜드',
+ 'ZMK' => '쟘비아 콰쳐 (1968–2012)',
+ 'ZMW' => '잠비아 콰쳐',
+ 'ZRN' => '자이르 신권 자이르',
+ 'ZRZ' => '자이르 자이르',
+ 'ZWD' => '짐바브웨 달러',
+ 'ZWL' => '짐바브웨 달러 (2009)',
+ 'ZWR' => '짐바브웨 달러 (2008)',
+);
+
+$currencySymbols = array(
+ 'AED' => 'AED',
+ 'AFN' => 'AFN',
+ 'ALL' => 'ALL',
+ 'AMD' => 'AMD',
+ 'ANG' => 'ANG',
+ 'AOA' => 'AOA',
+ 'ARS' => 'ARS',
+ 'AUD' => 'AU$',
+ 'AWG' => 'AWG',
+ 'AZN' => 'AZN',
+ 'BAM' => 'BAM',
+ 'BBD' => 'BBD',
+ 'BDT' => 'BDT',
+ 'BGN' => 'BGN',
+ 'BHD' => 'BHD',
+ 'BIF' => 'BIF',
+ 'BMD' => 'BMD',
+ 'BND' => 'BND',
+ 'BOB' => 'BOB',
+ 'BRL' => 'R$',
+ 'BSD' => 'BSD',
+ 'BTN' => 'BTN',
+ 'BWP' => 'BWP',
+ 'BYR' => 'BYR',
+ 'BZD' => 'BZD',
+ 'CAD' => 'CA$',
+ 'CDF' => 'CDF',
+ 'CHF' => 'CHF',
+ 'CLP' => 'CLP',
+ 'CNY' => 'CN¥',
+ 'COP' => 'COP',
+ 'CRC' => 'CRC',
+ 'CUC' => 'CUC',
+ 'CUP' => 'CUP',
+ 'CVE' => 'CVE',
+ 'CZK' => 'CZK',
+ 'DJF' => 'DJF',
+ 'DKK' => 'DKK',
+ 'DOP' => 'DOP',
+ 'DZD' => 'DZD',
+ 'EGP' => 'EGP',
+ 'ERN' => 'ERN',
+ 'ETB' => 'ETB',
+ 'EUR' => '€',
+ 'FJD' => 'FJD',
+ 'FKP' => 'FKP',
+ 'GBP' => '£',
+ 'GEL' => 'GEL',
+ 'GHS' => 'GHS',
+ 'GIP' => 'GIP',
+ 'GMD' => 'GMD',
+ 'GNF' => 'GNF',
+ 'GTQ' => 'GTQ',
+ 'GYD' => 'GYD',
+ 'HKD' => 'HK$',
+ 'HNL' => 'HNL',
+ 'HRK' => 'HRK',
+ 'HTG' => 'HTG',
+ 'HUF' => 'HUF',
+ 'IDR' => 'IDR',
+ 'ILS' => '₪',
+ 'INR' => '₹',
+ 'IQD' => 'IQD',
+ 'IRR' => 'IRR',
+ 'ISK' => 'ISK',
+ 'JMD' => 'JMD',
+ 'JOD' => 'JOD',
+ 'JPY' => 'JP¥',
+ 'KES' => 'KES',
+ 'KGS' => 'KGS',
+ 'KHR' => 'KHR',
+ 'KMF' => 'KMF',
+ 'KPW' => 'KPW',
+ 'KRW' => '₩',
+ 'KWD' => 'KWD',
+ 'KYD' => 'KYD',
+ 'KZT' => 'KZT',
+ 'LAK' => 'LAK',
+ 'LBP' => 'LBP',
+ 'LKR' => 'LKR',
+ 'LRD' => 'LRD',
+ 'LTL' => 'LTL',
+ 'LVL' => 'LVL',
+ 'LYD' => 'LYD',
+ 'MAD' => 'MAD',
+ 'MDL' => 'MDL',
+ 'MGA' => 'MGA',
+ 'MKD' => 'MKD',
+ 'MMK' => 'MMK',
+ 'MNT' => 'MNT',
+ 'MOP' => 'MOP',
+ 'MRO' => 'MRO',
+ 'MUR' => 'MUR',
+ 'MVR' => 'MVR',
+ 'MWK' => 'MWK',
+ 'MXN' => 'MX$',
+ 'MYR' => 'MYR',
+ 'MZN' => 'MZN',
+ 'NAD' => 'NAD',
+ 'NGN' => 'NGN',
+ 'NIO' => 'NIO',
+ 'NOK' => 'NOK',
+ 'NPR' => 'NPR',
+ 'NZD' => 'NZ$',
+ 'OMR' => 'OMR',
+ 'PAB' => 'PAB',
+ 'PEN' => 'PEN',
+ 'PGK' => 'PGK',
+ 'PHP' => 'PHP',
+ 'PKR' => 'PKR',
+ 'PLN' => 'PLN',
+ 'PYG' => 'PYG',
+ 'QAR' => 'QAR',
+ 'RON' => 'RON',
+ 'RSD' => 'RSD',
+ 'RUB' => 'RUB',
+ 'RWF' => 'RWF',
+ 'SAR' => 'SAR',
+ 'SBD' => 'SBD',
+ 'SCR' => 'SCR',
+ 'SDG' => 'SDG',
+ 'SEK' => 'SEK',
+ 'SGD' => 'SGD',
+ 'SHP' => 'SHP',
+ 'SLL' => 'SLL',
+ 'SOS' => 'SOS',
+ 'SRD' => 'SRD',
+ 'SSP' => 'SSP',
+ 'STD' => 'STD',
+ 'SYP' => 'SYP',
+ 'SZL' => 'SZL',
+ 'THB' => '฿',
+ 'TJS' => 'TJS',
+ 'TMT' => 'TMT',
+ 'TND' => 'TND',
+ 'TOP' => 'TOP',
+ 'TRY' => 'TRY',
+ 'TTD' => 'TTD',
+ 'TWD' => 'NT$',
+ 'TZS' => 'TZS',
+ 'UAH' => 'UAH',
+ 'UGX' => 'UGX',
+ 'USD' => 'US$',
+ 'UYU' => 'UYU',
+ 'UZS' => 'UZS',
+ 'VEF' => 'VEF',
+ 'VND' => '₫',
+ 'VUV' => 'VUV',
+ 'WST' => 'WST',
+ 'XAF' => 'FCFA',
+ 'XCD' => 'EC$',
+ 'XOF' => 'CFA',
+ 'XPF' => 'CFPF',
+ 'YER' => 'YER',
+ 'ZAR' => 'ZAR',
+ 'ZMW' => 'ZMW',
+);
+
+$countryNames = array(
+ 'AC' => '어센션 섬',
+ 'AD' => '안도라',
+ 'AE' => '아랍에미리트 연합',
+ 'AF' => '아프가니스탄',
+ 'AG' => '앤티가 바부다',
+ 'AI' => '안길라',
+ 'AL' => '알바니아',
+ 'AM' => '아르메니아',
+ 'AN' => '네덜란드령 안틸레스',
+ 'AO' => '앙골라',
+ 'AQ' => '남극 대륙',
+ 'AR' => '아르헨티나',
+ 'AS' => '아메리칸 사모아',
+ 'AT' => '오스트리아',
+ 'AU' => '오스트레일리아',
+ 'AW' => '아루바',
+ 'AX' => '올란드 제도',
+ 'AZ' => '아제르바이잔',
+ 'BA' => '보스니아 헤르체고비나',
+ 'BB' => '바베이도스',
+ 'BD' => '방글라데시',
+ 'BE' => '벨기에',
+ 'BF' => '부르키나파소',
+ 'BG' => '불가리아',
+ 'BH' => '바레인',
+ 'BI' => '부룬디',
+ 'BJ' => '베냉',
+ 'BL' => '생 바르텔르미',
+ 'BM' => '버뮤다',
+ 'BN' => '브루나이',
+ 'BO' => '볼리비아',
+ 'BQ' => '네덜란드령 카리브',
+ 'BR' => '브라질',
+ 'BS' => '바하마',
+ 'BT' => '부탄',
+ 'BV' => '부베',
+ 'BW' => '보츠와나',
+ 'BY' => '벨라루스',
+ 'BZ' => '벨리즈',
+ 'CA' => '캐나다',
+ 'CC' => '코코스제도',
+ 'CD' => '콩고-킨샤사',
+ 'CF' => '중앙 아프리카 공화국',
+ 'CG' => '콩고',
+ 'CH' => '스위스',
+ 'CI' => '코트디부아르',
+ 'CK' => '쿡제도',
+ 'CL' => '칠레',
+ 'CM' => '카메룬',
+ 'CN' => '중국',
+ 'CO' => '콜롬비아',
+ 'CP' => '클립퍼튼 섬',
+ 'CR' => '코스타리카',
+ 'CU' => '쿠바',
+ 'CV' => '까뽀베르데',
+ 'CW' => '퀴라소',
+ 'CX' => '크리스마스섬',
+ 'CY' => '사이프러스',
+ 'CZ' => '체코',
+ 'DE' => '독일',
+ 'DG' => '디에고 가르시아',
+ 'DJ' => '지부티',
+ 'DK' => '덴마크',
+ 'DM' => '도미니카',
+ 'DO' => '도미니카 공화국',
+ 'DZ' => '알제리',
+ 'EA' => '세우타 및 멜리야',
+ 'EC' => '에콰도르',
+ 'EE' => '에스토니아',
+ 'EG' => '이집트',
+ 'EH' => '서사하라',
+ 'ER' => '에리트리아',
+ 'ES' => '스페인',
+ 'ET' => '이디오피아',
+ 'EU' => '유럽 연합',
+ 'FI' => '핀란드',
+ 'FJ' => '피지',
+ 'FK' => '포클랜드 제도',
+ 'FM' => '미크로네시아',
+ 'FO' => '페로제도',
+ 'FR' => '프랑스',
+ 'GA' => '가봉',
+ 'GB' => '영국',
+ 'GD' => '그레나다',
+ 'GE' => '조지아',
+ 'GF' => '프랑스령 기아나',
+ 'GG' => '건지',
+ 'GH' => '가나',
+ 'GI' => '지브롤터',
+ 'GL' => '그린란드',
+ 'GM' => '감비아',
+ 'GN' => '기니',
+ 'GP' => '과들루프',
+ 'GQ' => '적도 기니',
+ 'GR' => '그리스',
+ 'GS' => '사우스조지아 사우스샌드위치 제도',
+ 'GT' => '과테말라',
+ 'GU' => '괌',
+ 'GW' => '기네비쏘',
+ 'GY' => '가이아나',
+ 'HK' => '홍콩',
+ 'HM' => '허드섬-맥도널드제도',
+ 'HN' => '온두라스',
+ 'HR' => '크로아티아',
+ 'HT' => '아이티',
+ 'HU' => '헝가리',
+ 'IC' => '카나리아 제도',
+ 'ID' => '인도네시아',
+ 'IE' => '아일랜드',
+ 'IL' => '이스라엘',
+ 'IM' => '맨 섬',
+ 'IN' => '인도',
+ 'IO' => '영국령인도양식민지',
+ 'IQ' => '이라크',
+ 'IR' => '이란',
+ 'IS' => '아이슬란드',
+ 'IT' => '이탈리아',
+ 'JE' => '저지',
+ 'JM' => '자메이카',
+ 'JO' => '요르단',
+ 'JP' => '일본',
+ 'KE' => '케냐',
+ 'KG' => '키르기스스탄',
+ 'KH' => '캄보디아',
+ 'KI' => '키리바시',
+ 'KM' => '코모로스',
+ 'KN' => '세인트 키츠 네비스',
+ 'KP' => '조선 민주주의 인민 공화국',
+ 'KR' => '대한민국',
+ 'KW' => '쿠웨이트',
+ 'KY' => '케이맨제도',
+ 'KZ' => '카자흐스탄',
+ 'LA' => '라오스',
+ 'LB' => '레바논',
+ 'LC' => '세인트루시아',
+ 'LI' => '리히텐슈타인',
+ 'LK' => '스리랑카',
+ 'LR' => '라이베리아',
+ 'LS' => '레소토',
+ 'LT' => '리투아니아',
+ 'LU' => '룩셈부르크',
+ 'LV' => '라트비아',
+ 'LY' => '리비아',
+ 'MA' => '모로코',
+ 'MC' => '모나코',
+ 'MD' => '몰도바',
+ 'ME' => '몬테네그로',
+ 'MF' => '생 마르탱',
+ 'MG' => '마다가스카르',
+ 'MH' => '마샬 군도',
+ 'MK' => '마케도니아',
+ 'ML' => '말리',
+ 'MM' => '미얀마',
+ 'MN' => '몽골',
+ 'MO' => '마카오',
+ 'MP' => '북마리아나제도',
+ 'MQ' => '말티니크',
+ 'MR' => '모리타니',
+ 'MS' => '몬트세라트',
+ 'MT' => '몰타',
+ 'MU' => '모리셔스',
+ 'MV' => '몰디브',
+ 'MW' => '말라위',
+ 'MX' => '멕시코',
+ 'MY' => '말레이시아',
+ 'MZ' => '모잠비크',
+ 'NA' => '나미비아',
+ 'NC' => '뉴 칼레도니아',
+ 'NE' => '니제르',
+ 'NF' => '노퍽섬',
+ 'NG' => '나이지리아',
+ 'NI' => '니카라과',
+ 'NL' => '네덜란드',
+ 'NO' => '노르웨이',
+ 'NP' => '네팔',
+ 'NR' => '나우루',
+ 'NU' => '니우에',
+ 'NZ' => '뉴질랜드',
+ 'OM' => '오만',
+ 'PA' => '파나마',
+ 'PE' => '페루',
+ 'PF' => '프랑스령 폴리네시아',
+ 'PG' => '파푸아뉴기니',
+ 'PH' => '필리핀',
+ 'PK' => '파키스탄',
+ 'PL' => '폴란드',
+ 'PM' => '생피에르 미클롱',
+ 'PN' => '핏케언 섬',
+ 'PR' => '푸에르토리코',
+ 'PS' => '팔레스타인',
+ 'PT' => '포르투갈',
+ 'PW' => '팔라우',
+ 'PY' => '파라과이',
+ 'QA' => '카타르',
+ 'QO' => '오세아니아 외곽',
+ 'RE' => '리유니온',
+ 'RO' => '루마니아',
+ 'RS' => '세르비아',
+ 'RU' => '러시아',
+ 'RW' => '르완다',
+ 'SA' => '사우디아라비아',
+ 'SB' => '솔로몬 제도',
+ 'SC' => '쉐이쉘',
+ 'SD' => '수단',
+ 'SE' => '스웨덴',
+ 'SG' => '싱가포르',
+ 'SH' => '세인트헬레나',
+ 'SI' => '슬로베니아',
+ 'SJ' => '스발바르제도-얀마웬섬',
+ 'SK' => '슬로바키아',
+ 'SL' => '시에라리온',
+ 'SM' => '산마리노',
+ 'SN' => '세네갈',
+ 'SO' => '소말리아',
+ 'SR' => '수리남',
+ 'SS' => '남수단',
+ 'ST' => '상투메 프린시페',
+ 'SV' => '엘살바도르',
+ 'SX' => '신트마르턴',
+ 'SY' => '시리아',
+ 'SZ' => '스와질랜드',
+ 'TA' => '트리스탄다쿠나',
+ 'TC' => '터크스케이커스제도',
+ 'TD' => '차드',
+ 'TF' => '프랑스 남부 지방',
+ 'TG' => '토고',
+ 'TH' => '태국',
+ 'TJ' => '타지키스탄',
+ 'TK' => '토켈라우',
+ 'TL' => '동티모르',
+ 'TM' => '투르크메니스탄',
+ 'TN' => '튀니지',
+ 'TO' => '통가',
+ 'TR' => '터키',
+ 'TT' => '트리니다드 토바고',
+ 'TV' => '투발루',
+ 'TW' => '대만',
+ 'TZ' => '탄자니아',
+ 'UA' => '우크라이나',
+ 'UG' => '우간다',
+ 'UM' => '미국령 해외 제도',
+ 'US' => '미국',
+ 'UY' => '우루과이',
+ 'UZ' => '우즈베키스탄',
+ 'VA' => '바티칸',
+ 'VC' => '세인트빈센트그레나딘',
+ 'VE' => '베네수엘라',
+ 'VG' => '영국령 버진 아일랜드',
+ 'VI' => '미국령 버진 아일랜드',
+ 'VN' => '베트남',
+ 'VU' => '바누아투',
+ 'WF' => '왈리스-푸투나 제도',
+ 'WS' => '사모아',
+ 'XK' => '코소보',
+ 'YE' => '예멘',
+ 'YT' => '마요티',
+ 'ZA' => '남아프리카',
+ 'ZM' => '잠비아',
+ 'ZW' => '짐바브웨',
+);
+
+$timeUnits = array(
+ 'day-future-other' => '{0}일 후',
+ 'day-narrow-future-other' => '{0}일 후',
+ 'day-narrow-past-other' => '{0}일 전',
+ 'day-other' => '{0}일',
+ 'day-past-other' => '{0}일 전',
+ 'day-short-future-other' => '{0}일 후',
+ 'day-short-past-other' => '{0}일 전',
+ 'hour-future-other' => '{0}시간 후',
+ 'hour-narrow-future-other' => '{0}시간 후',
+ 'hour-narrow-past-other' => '{0}시간 전',
+ 'hour-other' => '{0}시간',
+ 'hour-past-other' => '{0}시간 전',
+ 'hour-short-future-other' => '{0}시간 후',
+ 'hour-short-past-other' => '{0}시간 전',
+ 'microsecond-other' => '{0}마이크로초',
+ 'millisecond-other' => '{0}밀리초',
+ 'minute-future-other' => '{0}분 후',
+ 'minute-narrow-future-other' => '{0}분 후',
+ 'minute-narrow-past-other' => '{0}분 전',
+ 'minute-other' => '{0}분',
+ 'minute-past-other' => '{0}분 전',
+ 'minute-short-future-other' => '{0}분 후',
+ 'minute-short-past-other' => '{0}분 전',
+ 'month-future-other' => '{0}개월 후',
+ 'month-narrow-future-other' => '{0}개월 후',
+ 'month-narrow-past-other' => '{0}개월 전',
+ 'month-other' => '{0}개월',
+ 'month-past-other' => '{0}개월 전',
+ 'month-short-future-other' => '{0}개월 후',
+ 'month-short-past-other' => '{0}개월 전',
+ 'nanosecond-other' => '{0}나노초',
+ 'quarter-future-other' => '{0}분기 후',
+ 'quarter-narrow-future-other' => '{0}분기 후',
+ 'quarter-narrow-past-other' => '{0}분기 전',
+ 'quarter-past-other' => '{0}분기 전',
+ 'quarter-short-future-other' => '{0}분기 후',
+ 'quarter-short-past-other' => '{0}분기 전',
+ 'second-future-other' => '{0}초 후',
+ 'second-narrow-future-other' => '{0}초 후',
+ 'second-narrow-past-other' => '{0}초 전',
+ 'second-other' => '{0}초',
+ 'second-past-other' => '{0}초 전',
+ 'second-short-future-other' => '{0}초 후',
+ 'second-short-past-other' => '{0}초 전',
+ 'week-future-other' => '{0}주 후',
+ 'week-narrow-future-other' => '{0}주 후',
+ 'week-narrow-past-other' => '{0}주 전',
+ 'week-other' => '{0}주',
+ 'week-past-other' => '{0}주 전',
+ 'week-short-future-other' => '{0}주 후',
+ 'week-short-past-other' => '{0}주 전',
+ 'year-future-other' => '{0}년 후',
+ 'year-narrow-future-other' => '{0}년 후',
+ 'year-narrow-past-other' => '{0}년 전',
+ 'year-other' => '{0}년',
+ 'year-past-other' => '{0}년 전',
+ 'year-short-future-other' => '{0}년 후',
+ 'year-short-past-other' => '{0}년 전',
+);
diff --git a/MLEB/cldr/CldrNames/CldrNamesKs.php b/MLEB/cldr/CldrNames/CldrNamesKs.php
new file mode 100644
index 00000000..11f383b8
--- /dev/null
+++ b/MLEB/cldr/CldrNames/CldrNamesKs.php
@@ -0,0 +1,958 @@
+<?php
+
+$languageNames = array(
+ 'aa' => 'اَفار',
+ 'ab' => 'اَبخازِیان',
+ 'ace' => 'اَچَےنیٖز',
+ 'ach' => 'اَکولی',
+ 'ada' => 'اَدَنٛگمیے',
+ 'ady' => 'اَدَیٖگیے',
+ 'ae' => 'اَویستَن',
+ 'af' => 'اَفریٖکانٛز',
+ 'afh' => 'اَفرِہِلی',
+ 'ain' => 'اینوٗ',
+ 'ak' => 'اَکان',
+ 'akk' => 'اَکادِیَن',
+ 'ale' => 'اَلویتی',
+ 'alt' => 'جنوٗبی اَلتایی',
+ 'am' => 'اَمہاری',
+ 'an' => 'اَراگونی',
+ 'ang' => 'پرون اَنٛگریٖزی',
+ 'anp' => 'اَنٛگِکا',
+ 'ar' => 'عربی',
+ 'arc' => 'اَرَمیک',
+ 'arn' => 'ایرو کونِیَن',
+ 'arp' => 'اَراپاہو',
+ 'arw' => 'اَراوَک',
+ 'as' => 'اسٲمۍ',
+ 'ast' => 'ایسٹوٗریَن',
+ 'av' => 'اَوارِک',
+ 'awa' => 'اَوَدی',
+ 'ay' => 'ایمارا',
+ 'az' => 'اَزَربیجانی',
+ 'ba' => 'بَشکیٖر',
+ 'bal' => 'بَلوٗچی',
+ 'ban' => 'بالِنیٖز',
+ 'bas' => 'باسا',
+ 'be' => 'بیلَروٗشیَن',
+ 'bej' => 'بیجا',
+ 'bem' => 'بیٚمبا',
+ 'bg' => 'بینا',
+ 'bho' => 'بوجپوٗری',
+ 'bi' => 'بِسلاما',
+ 'bik' => 'بِکول',
+ 'bin' => 'بِنی',
+ 'bla' => 'سِکسِکا',
+ 'bm' => 'بَمبارا',
+ 'bn' => 'بَنٛگٲلۍ',
+ 'bo' => 'تِبتی',
+ 'br' => 'بریٹَن',
+ 'bra' => 'برٛج',
+ 'bs' => 'بوسنِیَن',
+ 'bua' => 'بُرِیَت',
+ 'bug' => 'بَگنیٖز',
+ 'byn' => 'بٕلِن',
+ 'ca' => 'کَتلان',
+ 'cad' => 'کاڈو',
+ 'car' => 'کارِب',
+ 'cch' => 'اتسَم',
+ 'ce' => 'چیچَن',
+ 'ceb' => 'سیباونو',
+ 'ch' => 'کَمورو',
+ 'chb' => 'چیٖبچا',
+ 'chg' => 'چھَگتاے',
+ 'chk' => 'چُکیٖز',
+ 'chm' => 'ماری',
+ 'chn' => 'چِنوٗک جارگَن',
+ 'cho' => 'چوکتَو',
+ 'chp' => 'شیپویان',
+ 'chr' => 'چیٚروکی',
+ 'chy' => 'شییون',
+ 'co' => 'کارسِکَن',
+ 'cop' => 'کاپٹِک',
+ 'cr' => 'کری',
+ 'crh' => 'کرٕمیٖن تُرکی',
+ 'cs' => 'چیٚک',
+ 'csb' => 'کَشوٗبِیَن',
+ 'cu' => 'چٔرچ سلاوِک',
+ 'cv' => 'چُواش',
+ 'cy' => 'ویٚلش',
+ 'da' => 'ڈینِش',
+ 'dak' => 'ڈکوٹا',
+ 'dar' => 'دَرگوا',
+ 'de' => 'جٔرمَن',
+ 'de-at' => 'آسٹرِیَن جٔرمَن',
+ 'de-ch' => 'سٕوِس ہاےجٔرمَن',
+ 'del' => 'ڈیٚلوییَر',
+ 'den' => 'سلیو',
+ 'dgr' => 'ڈاگرِب',
+ 'din' => 'ڈِنکا',
+ 'doi' => 'ڈوگری',
+ 'dsb' => 'بوٚنِم ساربِیَن',
+ 'dua' => 'دُوالا',
+ 'dum' => 'وَستی پُرتُگالی',
+ 'dv' => 'دِویہی',
+ 'dyu' => 'ڈِیوٗلا',
+ 'dz' => 'زونٛگکھا',
+ 'ee' => 'ایٖو',
+ 'efi' => 'ایٚفِک',
+ 'egy' => 'قدیٖمی مِصری',
+ 'eka' => 'ایٚکاجُک',
+ 'el' => 'یوٗنٲنی',
+ 'elx' => 'ایٚلامایِٹ',
+ 'en' => 'اَنٛگیٖزۍ',
+ 'en-au' => 'آسٹریلیَن اَنٛگریٖزۍ',
+ 'en-ca' => 'کینَڈِیٲیی اَنٛگریٖزۍ',
+ 'en-gb' => 'بَرطانوی اَنٛگریٖزۍ',
+ 'en-us' => 'یوٗ ایٚس اَنٛگریٖزۍ',
+ 'enm' => 'وَسطی اَنٛگریٖزۍ',
+ 'eo' => 'ایٚسپَرینٹو',
+ 'es' => 'سپینِش',
+ 'es-419' => 'لیٹٕن امریٖکی سپینِش',
+ 'es-es' => 'لِبیریَن سپینِش',
+ 'et' => 'ایٚسٹونیَن',
+ 'eu' => 'باسک',
+ 'ewo' => 'ایٚوونڈو',
+ 'fa' => 'فارسی',
+ 'fan' => 'فینٛگ',
+ 'fat' => 'فانٹی',
+ 'ff' => 'فُلاہ',
+ 'fi' => 'فِنِش',
+ 'fil' => 'فِلِپیٖنو',
+ 'fj' => 'فِجیَن',
+ 'fo' => 'فَروس',
+ 'fon' => 'فون',
+ 'fr' => 'فریٚنچ',
+ 'fr-ca' => 'کَنیڈیَن فریٚنچ',
+ 'fr-ch' => 'سٕوٕس فریٚنچ',
+ 'frm' => 'وسطی فریٚنچ',
+ 'fro' => 'پرون فریٚنچ',
+ 'frr' => 'شُمٲلی فرِشیَن',
+ 'frs' => 'مشرِقی فرِشیَن',
+ 'fur' => 'فروٗلِیَن',
+ 'fy' => 'مغربی فرِشیَن',
+ 'ga' => 'اَیرِش',
+ 'gaa' => 'گا',
+ 'gay' => 'گیےیو',
+ 'gba' => 'گبایا',
+ 'gd' => 'سکوٹِش گیےلِک',
+ 'gez' => 'گیٖز',
+ 'gil' => 'گِلبٔرٹیٖز',
+ 'gl' => 'گیلِشِیَن',
+ 'gmh' => 'وَسطی ہاے جٔرمَن',
+ 'gn' => 'گُوارَنی',
+ 'goh' => 'پرون ہاے جٔرمَن',
+ 'gon' => 'گوندی',
+ 'gor' => 'گورینٹیلو',
+ 'got' => 'گوتھِک',
+ 'grb' => 'گرِبو',
+ 'grc' => 'قدیٖم یوٗنٲنی',
+ 'gsw' => 'سٕوِس جٔرمَن',
+ 'gu' => 'گُجرٲتی',
+ 'gv' => 'مینٛکس',
+ 'gwi' => 'گُوِچ اِن',
+ 'ha' => 'ہاوسا',
+ 'hai' => 'ہَیدا',
+ 'haw' => 'ہوایِیَن',
+ 'he' => 'عبرٲنۍ',
+ 'hi' => 'ہِندی',
+ 'hil' => 'ہِلیٖگینَن',
+ 'hit' => 'ہِتایِت',
+ 'hmn' => 'ہمونٛگ',
+ 'ho' => 'ہِری موتوٗ',
+ 'hr' => 'کروشِیَن',
+ 'hsb' => 'ہیٚرِم ساربِیَن',
+ 'ht' => 'ہیتِیاں',
+ 'hu' => 'ہَنٛگیریَن',
+ 'hup' => 'ہُپا',
+ 'hy' => 'اَرمینیَن',
+ 'hz' => 'ہیٚریٖرو',
+ 'ia' => 'اِنٹَرلِنٛگوا',
+ 'iba' => 'اِبان',
+ 'id' => 'اِنڈونیشیا',
+ 'ie' => 'اِنٹَر لِنٛنگویے',
+ 'ig' => 'اِگبو',
+ 'ii' => 'سِچوان یٖی',
+ 'ik' => 'اِنُپِیاک',
+ 'ilo' => 'اِلوکو',
+ 'inh' => 'اِنٛگُش',
+ 'io' => 'اِڈو',
+ 'is' => 'آیِسلینڈِک',
+ 'it' => 'اِٹیلیَن',
+ 'iu' => 'اِنُکتِتوٗ',
+ 'ja' => 'جاپٲنۍ',
+ 'jbo' => 'لوجبان',
+ 'jpr' => 'جوڈیو فارسی',
+ 'jrb' => 'جوڈیو عربی',
+ 'jv' => 'جَوَنیٖز',
+ 'ka' => 'جارجِیَن',
+ 'kaa' => 'کارا کَلپَک',
+ 'kab' => 'کَبایِل',
+ 'kac' => 'کاچِن',
+ 'kaj' => 'جُوٗ',
+ 'kam' => 'کامبا',
+ 'kaw' => 'کَوی',
+ 'kbd' => 'کَبارڈِیَن',
+ 'kcg' => 'تَیَپ',
+ 'kfo' => 'کورو',
+ 'kg' => 'کونٛگو',
+ 'kha' => 'کھاسی',
+ 'kho' => 'کھوتَنیٖز',
+ 'ki' => 'کِکُیوٗ',
+ 'kj' => 'کُوانیاما',
+ 'kk' => 'کازَخ',
+ 'kl' => 'کَلالِسُت',
+ 'km' => 'خَمیر',
+ 'kmb' => 'کِمبُندوٗ',
+ 'kn' => 'کَنَڑ',
+ 'ko' => 'کوریَن',
+ 'kok' => 'کونکَنی',
+ 'kos' => 'کوسرییَن',
+ 'kpe' => 'کَپیلی',
+ 'kr' => 'کَنوٗری',
+ 'krc' => 'کراچیے بَلکار',
+ 'krl' => 'کَریلِیَن',
+ 'kru' => 'کُرُکھ',
+ 'ks' => 'کٲشُر',
+ 'ku' => 'کُردِش',
+ 'kum' => 'کُمِک',
+ 'kut' => 'کُتینَے',
+ 'kv' => 'کومی',
+ 'kw' => 'کورنِش',
+ 'ky' => 'کِرگِز',
+ 'la' => 'لاتیٖنی',
+ 'lad' => 'لیڈِنو',
+ 'lah' => 'لَہَندا',
+ 'lam' => 'لَمبا',
+ 'lb' => 'لُکھزیمبورگِش',
+ 'lez' => 'لیزگِیَن',
+ 'lg' => 'گاندا',
+ 'li' => 'لِمبٔرگِش',
+ 'ln' => 'لِنگالا',
+ 'lo' => 'لاو',
+ 'lol' => 'مونٛگو',
+ 'loz' => 'لوزی',
+ 'lt' => 'لِتھوانِیَن',
+ 'lu' => 'لوُبا کَتَنٛگا',
+ 'lua' => 'لوٗبا لوٗلُوا',
+ 'lui' => 'لویِسینو',
+ 'lun' => 'لُندا',
+ 'luo' => 'لُوو',
+ 'lus' => 'لُسہاے',
+ 'lv' => 'لَتوِیَن',
+ 'mad' => 'مَدُریٖز',
+ 'mag' => 'مَگاے',
+ 'mai' => 'میتَھلی',
+ 'mak' => 'مَکَسار',
+ 'man' => 'مَندِنٛگو',
+ 'mas' => 'مَساے',
+ 'mdf' => 'موکشا',
+ 'mdr' => 'مَندَر',
+ 'men' => 'میندیے',
+ 'mg' => 'مَلاگَسی',
+ 'mga' => 'وَستی ایرِش',
+ 'mh' => 'مارشَلیٖز',
+ 'mi' => 'ماوری',
+ 'mic' => 'مِکمیک',
+ 'min' => 'مِنَنٛگکَباو',
+ 'mk' => 'میکَڈونیَن',
+ 'ml' => 'مٔلیالَم',
+ 'mn' => 'مَنٛگولی',
+ 'mnc' => 'مانٛچوٗ',
+ 'mni' => 'مَنیپوٗری',
+ 'moh' => 'موہاک',
+ 'mos' => 'موسی',
+ 'mr' => 'مَرٲٹھۍ',
+ 'ms' => 'مَلَے',
+ 'mt' => 'مَلتیٖس',
+ 'mul' => 'واریاہ زبان',
+ 'mus' => 'کریٖک',
+ 'mwl' => 'مِراندیٖز',
+ 'mwr' => 'مارواڑی',
+ 'my' => 'بٔمیٖز',
+ 'myv' => 'ایٚرزِیا',
+ 'na' => 'ناورُ',
+ 'nap' => 'نیٖپالیٹَن',
+ 'nb' => 'ناروییَن بوکمال',
+ 'nd' => 'شُمال ڈَبیل',
+ 'nds' => 'بوٚنِم جٔرمَن',
+ 'ne' => 'نیٚپٲلۍ',
+ 'new' => 'نیٚواری',
+ 'ng' => 'ڈونٛگا',
+ 'nia' => 'نِیاس',
+ 'niu' => 'نِیویَن',
+ 'nl' => 'ڈَچ',
+ 'nl-be' => 'فلیٚمِش',
+ 'nn' => 'ناروییَن نَے نورسک',
+ 'no' => 'ناروییَن',
+ 'nog' => 'نوگاے',
+ 'non' => 'پرون نارسی',
+ 'nqo' => 'ایٚن کو',
+ 'nr' => 'جنوب ڈیٚبیل',
+ 'nso' => 'شمالی ستھو',
+ 'nv' => 'نَواجو',
+ 'nwc' => 'کلاسِکَل نیواری',
+ 'ny' => 'نِیَنجا',
+ 'nym' => 'نِیَمویٚزی',
+ 'nyn' => 'نِیَنکول',
+ 'nyo' => 'نِیورو',
+ 'nzi' => 'نَظیٖما',
+ 'oc' => 'اوکسیٖٹَن',
+ 'oj' => 'اوجِبوا',
+ 'om' => 'اوٚرومو',
+ 'or' => 'اوٚرِیا',
+ 'os' => 'اوٚسیٚٹِک',
+ 'osa' => 'اوٚسیج',
+ 'ota' => 'اوٹومَن تُرکِش',
+ 'pa' => 'پَنجٲبۍ',
+ 'pag' => 'پَنٛگاسِنَن',
+ 'pal' => 'پَہلَوی',
+ 'pam' => 'پَمپَنٛگا',
+ 'pap' => 'پَپِیامیٚنٹو',
+ 'pau' => 'پَلااُواں',
+ 'peo' => 'پرون فارسی',
+ 'phn' => 'فونیٖشیَن',
+ 'pi' => 'پالی',
+ 'pl' => 'پالِش',
+ 'pon' => 'پانپیٚیَن',
+ 'pro' => 'پرون پروویٚنچَل',
+ 'ps' => 'پَشتوٗ',
+ 'pt' => 'پُرتَگیٖز',
+ 'pt-br' => 'برازیٖلی پُتَگیٖز',
+ 'pt-pt' => 'لِبیریَن پُرتَگیٖز',
+ 'qu' => 'کُویشُوا',
+ 'raj' => 'راجِستھٲنۍ',
+ 'rap' => 'رَپانوی',
+ 'rar' => 'رَروٹونٛگَن',
+ 'rm' => 'رومانش',
+ 'rn' => 'رُندی',
+ 'ro' => 'رومٲنی',
+ 'ro-md' => 'مولداوِیَن',
+ 'rom' => 'رومَنی',
+ 'ru' => 'روٗسی',
+ 'rup' => 'اَرومانی',
+ 'rw' => 'کِنیاوِندا',
+ 'sa' => 'سَنسکرٕت',
+ 'sad' => 'سَندَویے',
+ 'sah' => 'یاکُت',
+ 'sam' => 'سَمارِتَن اَرامیک',
+ 'sas' => 'سَسَک',
+ 'sat' => 'سَنتالی',
+ 'sc' => 'سراڈیٖنی',
+ 'scn' => 'سِچِلِیَن',
+ 'sco' => 'سکاٹس',
+ 'sd' => 'سِندی',
+ 'se' => 'شُمٲلی سَمی',
+ 'sel' => 'سیٚلکُپ',
+ 'sg' => 'سَنگو',
+ 'sga' => 'پرون ایرِش',
+ 'sh' => 'سیٚربو کروشِیَن',
+ 'shn' => 'شان',
+ 'si' => 'سِنہالا',
+ 'sid' => 'سِدامو',
+ 'sk' => 'سلووَک',
+ 'sl' => 'سلووینیَن',
+ 'sm' => 'سَمواَن',
+ 'sma' => 'جنوٗبی سَمی',
+ 'smj' => 'لولیے سَمی',
+ 'smn' => 'اِناری سَمی',
+ 'sms' => 'سکولٹ سَمی',
+ 'sn' => 'شونا',
+ 'snk' => 'سونِنکیے',
+ 'so' => 'سومٲلی',
+ 'sog' => 'سوگڈِیَن',
+ 'sq' => 'البانِیَن',
+ 'sr' => 'سٔربِیَن',
+ 'srn' => 'سرٛانَن ٹونٛگو',
+ 'srr' => 'سیٚریر',
+ 'ss' => 'سواتی',
+ 'st' => 'جنوبی ستھو',
+ 'su' => 'سَنڈَنیٖز',
+ 'suk' => 'سُکُما',
+ 'sus' => 'سُسوٗ',
+ 'sux' => 'سُمیریَن',
+ 'sv' => 'سویٖڈِش',
+ 'sw' => 'سواہِلی',
+ 'syr' => 'سیٖریٲیی',
+ 'ta' => 'تَمِل',
+ 'te' => 'تیلگوٗ',
+ 'tem' => 'ٹِمنیے',
+ 'ter' => 'ٹیٚریٚنو',
+ 'tet' => 'ٹیٹَم',
+ 'tg' => 'تاجِک',
+ 'th' => 'تھاے',
+ 'ti' => 'ٹِگرِنیا',
+ 'tig' => 'ٹاےگریے',
+ 'tiv' => 'تیٖو',
+ 'tk' => 'تُرکمین',
+ 'tkl' => 'ٹوکیٖلاو',
+ 'tl' => 'تَماشیک',
+ 'tlh' => 'کِلِنگون',
+ 'tli' => 'ٹِلِنگِت',
+ 'tmh' => 'تاماشیک',
+ 'tn' => 'سوانا',
+ 'to' => 'ٹونٛگا',
+ 'tog' => 'نیاسا ٹونٛگا',
+ 'tpi' => 'ٹاک پِسِن',
+ 'tr' => 'تُرکِش',
+ 'ts' => 'ژونٛگا',
+ 'tsi' => 'ژھِمشِیان',
+ 'tt' => 'تَتار',
+ 'tum' => 'تُمبُکا',
+ 'tvl' => 'تُوالوٗ',
+ 'tw' => 'توی',
+ 'ty' => 'تاہیشِیَن',
+ 'tyv' => 'تُویٖنیَن',
+ 'udm' => 'اُدمُرت',
+ 'uga' => 'اُگارتِک',
+ 'uk' => 'یوٗکرینیٲیی',
+ 'umb' => 'یُمبُندوٗ',
+ 'und' => 'اَنزٲنۍ یا نَہ لَگہٕہار زبان',
+ 'ur' => 'اُردوٗ',
+ 'uz' => 'اُزبیک',
+ 'vai' => 'واے',
+ 've' => 'ویندا',
+ 'vi' => 'وِیَتنَمیٖز',
+ 'vo' => 'وولَپُک',
+ 'vot' => 'ووتِک',
+ 'wa' => 'وَلوٗن',
+ 'wal' => 'والامو',
+ 'war' => 'وَریے',
+ 'was' => 'واشو',
+ 'wo' => 'وولوف',
+ 'xal' => 'کالمِک',
+ 'xh' => 'کھوسا',
+ 'yao' => 'یاو',
+ 'yap' => 'یَپیٖز',
+ 'yi' => 'یِدِش',
+ 'yo' => 'یورُبا',
+ 'za' => 'زُہانٛگ',
+ 'zap' => 'زَپوتیٚک',
+ 'zen' => 'زیناگا',
+ 'zh' => 'چیٖنی',
+ 'zh-hans' => 'سیٚود چیٖنی',
+ 'zh-hant' => 'رِوٲجی چیٖنی',
+ 'zu' => 'زُلوٗ',
+ 'zun' => 'زوٗنی',
+ 'zxx' => 'کانٛہہ تہِ لِسانیاتی مواد نہٕ',
+ 'zza' => 'زازا',
+);
+
+$currencyNames = array(
+ 'ADP' => 'اٮ۪ڑورَن پیسِٹا',
+ 'AED' => 'مُتحدہ عرب اِمارات دِرہم',
+ 'AFN' => 'افغان افغٲنی',
+ 'ALL' => 'اٮ۪لبینِیَن لِک',
+ 'AMD' => 'اَرمانٮ۪ن ڈرٛٮ۪م',
+ 'ANG' => 'نایدَرلینٛڑ اٮ۪نٹٕلیٖیَن گِلڑَر',
+ 'AOA' => 'اٮ۪نگولَن کوانزا',
+ 'AOR' => 'اٮ۪نگولَن کوانٛزا رٮ۪جِسٹاڑو',
+ 'ARA' => 'أرجَنٹیٖن اَسٹرل',
+ 'ARS' => 'أرجَنٹیٖن پِسو',
+ 'ATS' => 'آسٹریَن شِلِنٛگ',
+ 'AUD' => 'آسٹریلِیَن ڈالَر',
+ 'AWG' => 'اَروبَن فِلورِن',
+ 'AZN' => 'آزَرباجانی مَنَٹ',
+ 'BAD' => 'بوزنِیاہَرزِگووِنا دیٖنار',
+ 'BAM' => 'بوزنِیاہَرزِگووِنا کَنوٲٹیبٕل مارٕک',
+ 'BBD' => 'بابیڑِیَن ڈالَر',
+ 'BDT' => 'بَنگلادیٖشی ٹَکا',
+ 'BEF' => 'بَلجِیَن فرینٛک',
+ 'BGN' => 'بیلگیرِیَن ہاڑ لِو',
+ 'BHD' => 'بحریٖنی دیٖنار',
+ 'BIF' => 'بُرُنڑِین فرینٛک',
+ 'BMD' => 'بٔرمیوٗڑَن ڈالَر',
+ 'BND' => 'برٛونی ڈالَر',
+ 'BOB' => 'بولِوِیَن بولوینو',
+ 'BOP' => 'بولویَن پِسو',
+ 'BOV' => 'بولوِیَن مَوڈال',
+ 'BRB' => 'برٛازیٖلین کرٛوزِرو نووو',
+ 'BRC' => 'برٛازیٖلین کرٛوزیڑو',
+ 'BRE' => 'برٛازیٖلین کرٛوزِرو',
+ 'BRL' => 'برٛازیٖلین رِیَل',
+ 'BRN' => 'برٛازیٖلین کرٛوزیڑو نووو',
+ 'BRR' => 'برٛازیٖلین کرٛوزیرو',
+ 'BSD' => 'بہامِیَن ڈالر',
+ 'BTN' => 'بوٗٹینیٖز نگُلٹرٛم',
+ 'BUK' => 'بٔرمیٖز کیٹ',
+ 'BWP' => 'بوٹٕسوانَن پُلا',
+ 'BYB' => 'بِلیروشِیَن نِو رِبٕل',
+ 'BYR' => 'بِلیروشِیَن رِبٕل',
+ 'BZD' => 'بِلِزی ڈالر',
+ 'CAD' => 'کینَڑِیَن ڈالر',
+ 'CDF' => 'کونٛگولیٖز فرٛیک',
+ 'CHE' => 'وِر یوٗرو',
+ 'CHF' => 'سُوِز فریک',
+ 'CHW' => 'وِر فرٛیک',
+ 'CLF' => 'چِلِن یوٗنِڑیدیٖز ڑِ فومیٹو',
+ 'CLP' => 'چِلِن پِسو',
+ 'CNY' => 'چینیٖز یَن رِنمِنبی',
+ 'COP' => 'کولَمبِین پِسو',
+ 'COU' => 'ِٖیوٗنِڑیڑ ڑِ ویلور رِیل',
+ 'CRC' => 'کوسٹا رِکَن کولَن',
+ 'CSD' => 'پرٛون سٔربِین ڈالر',
+ 'CSK' => 'چِکوسولوواک ہاڑ کوروٗنا',
+ 'CUP' => 'کیوٗبَن پِسو',
+ 'CYP' => 'کیپروٹ پَوُڑ',
+ 'CZK' => 'چیک کوریٖنا',
+ 'DDM' => 'مٔشرِقی جٔرمَن مارٕک',
+ 'DEM' => 'جٔرمَن مارٕک',
+ 'DKK' => 'ڈٔنِش کرٛون',
+ 'DOP' => 'ڈومِنِکَن پِسو',
+ 'DZD' => 'اٮ۪لجیرِیَن ڈیٖنار',
+ 'EEK' => 'اٮ۪سٹونِیَن کرٛون',
+ 'EGP' => 'اِجِپٹِیَن پَوُنڑ',
+ 'ERN' => 'رِٹریٖن نَفکا',
+ 'ESP' => 'سِپینِش پیسِٹا',
+ 'ETB' => 'اِتھوپِیَن بِر',
+ 'EUR' => 'یوٗرو',
+ 'FIM' => 'فِنِش مارکا',
+ 'FJD' => 'فِجین ڈالر',
+ 'FKP' => 'فیکلینٛڑِس آیلینٛڑ پونٛڑ',
+ 'FRF' => 'فرٛانسِسی فرٛیک',
+ 'GBP' => 'برطٲنوی پاونٛڑ سٹٔرلِنٛگ',
+ 'GEK' => 'جارجِیَن کیوٗپَن لَرِٹ',
+ 'GEL' => 'جارجِیَن لاری',
+ 'GHC' => 'گَنیٚیَن سٮ۪ڑی(۱۹۷۹–۲٠٠۷)',
+ 'GHS' => 'گَنیٚیَن سٮ۪ڑی',
+ 'GIP' => 'گِبریلٹَر پَاونٛڑ',
+ 'GMD' => 'گیمبِیاہُک دلاسی',
+ 'GNF' => 'گِنِیَن فرٛینٛک',
+ 'GNS' => 'گِنِیَن سِلی',
+ 'GQE' => 'اِکویٹورِیَل گِنِیَن اٮ۪کویٖل',
+ 'GRD' => 'گریٖسُک ڑرٛٮ۪کما',
+ 'GTQ' => 'گواٹَمالَن قیوٗٹزَل',
+ 'GWE' => 'پورتگیٖزُک گِنی اٮ۪سکیوٗڑو',
+ 'GWP' => 'گِنی بِساوُک پٮ۪سو',
+ 'GYD' => 'گَیَنیٖزُک ڑالَر',
+ 'HKD' => 'حانٛگ کانٛگُک ڑالَر',
+ 'HNL' => 'حونڑورنُک لٮ۪مپیٖرا',
+ 'HRD' => 'کروایشنُک دیٖنار',
+ 'HRK' => 'کروایشنُک کوٗنا',
+ 'HTG' => 'حیشَنُک گوڑ',
+ 'HUF' => 'حَنگیرِیَن فورِنٛٹ',
+ 'IDR' => 'اِنڑونیشیاہُک رُپِیاہ',
+ 'IEP' => 'اَیرلینڑُک پاونٛڑ',
+ 'ILP' => 'اِزرٲیِلی پاونٛڑ',
+ 'ILS' => 'اِزرٲیِلی نٔوۍ شٮ۪قٕل',
+ 'INR' => 'ہِندُستٲنۍ رۄپَے',
+ 'IQD' => 'ایٖراقُک دیٖنار',
+ 'IRR' => 'ایٖرانُک رِیال',
+ 'ISK' => 'اَیسلینٛڑُک کرٛونا',
+ 'ITL' => 'اِٹلیٖ یُک لیٖرا',
+ 'JMD' => 'جَمَیکاہُک ڑالَر',
+ 'JOD' => 'جَرڑینیاہُک دیٖنار',
+ 'JPY' => 'جاپانُک یَن',
+ 'KES' => 'کٮ۪نیَن شِلِنٛگ',
+ 'KGS' => 'کِرگِستانُک سوم',
+ 'KHR' => 'کَمبوڑِیاہُک رِیال',
+ 'KMF' => 'کومورِیَن فرٛینٛک',
+ 'KPW' => 'جنوٗبی کورِیَن وَن',
+ 'KRW' => 'ساوتھ کورِیَن وَن',
+ 'KWD' => 'قُویتُک دیٖنار',
+ 'KYD' => 'کیمین ججیٖرُک ڑالَر',
+ 'KZT' => 'کزاکِستان ٹینٛج',
+ 'LAK' => 'لَوٹِیَن کِپ',
+ 'LBP' => 'لیبنیٖزُک پاونٛڑ',
+ 'LKR' => 'سری لَنکاہٕچ رۄپَے',
+ 'LRD' => 'لَیبیرِیَن ڑالَر',
+ 'LSL' => 'لِسوتھو لوٹی',
+ 'LTL' => 'لِتھوینِیَن لِٹاس',
+ 'LTT' => 'لِتھوینِیَن ٹٮ۪لوناس',
+ 'LUC' => 'لَکزٕمبورگِیَن کَنؤرٹِبٕل فرٛینٛک',
+ 'LUF' => 'لَکزٕمبورگِیَن فرٛینٛک',
+ 'LUL' => 'لَکزٕمبوگ فَینانشَل فرٛینٛک',
+ 'LVL' => 'لَتوِیَن لیٹس',
+ 'LVR' => 'لَتوِیَن رَبٕل',
+ 'LYD' => 'لِبیَن دیٖنار',
+ 'MAD' => 'موروکَن دِرہَم',
+ 'MAF' => 'موروکَن فرٛینٛک',
+ 'MDL' => 'مولڑووین لیوٗ',
+ 'MGA' => 'مٮ۪لٮ۪گیسی اٮ۪ریَری',
+ 'MGF' => 'مٮ۪لٮ۪گیسی فرٛینٛک',
+ 'MKD' => 'مٮ۪کَڑونِیَن دیٖنار',
+ 'MLF' => 'میلِیَن فرٛینٛک',
+ 'MMK' => 'مِیانما کیاٹ',
+ 'MNT' => 'مۄنگولِیَن ٹُگرِک',
+ 'MOP' => 'مٮ۪کانیٖز پَٹاکا',
+ 'MRO' => 'مورِٹینِیَن عوگیوٗیا',
+ 'MTL' => 'مالٹیٖزُک لیٖرا',
+ 'MTP' => 'مالٹیٖزُک پاونٛڑ',
+ 'MUR' => 'مورٮ۪شِیاہٕچ رۄپَے',
+ 'MVR' => 'مالدِیٖوِیَن رُفِیا',
+ 'MWK' => 'مٮ۪لیوِیَن کواچا',
+ 'MXN' => 'مٮ۪کسِکَن پٮ۪سو',
+ 'MXP' => 'مٮ۪کسِکَن سِلوَر پٮ۪سو (۱۸۶۱–۱۹۹۲)',
+ 'MYR' => 'مَلیشِیَن رِنٛگِٹ',
+ 'MZE' => 'موزیمبِکَن سکیوٗڑو',
+ 'MZM' => 'پرٛون موزیمبِکَن مٮ۪ٹِکَل',
+ 'MZN' => 'موزیمبِکَن مٮ۪ٹِکَل',
+ 'NAD' => 'نامِبِیَن ڑالَر',
+ 'NGN' => 'نَیجیرِیَن ڑالَر',
+ 'NIC' => 'نِکٮ۪راگُوٮ۪ن کورڑوبا',
+ 'NIO' => 'نِکٮ۪راگُوٮ۪ن کورڑوبا اورو',
+ 'NLG' => 'ڈَچ گِلڑَر',
+ 'NOK' => 'نورویٚیِنُک کرٛون',
+ 'NPR' => 'نیپالٕچ رۄپَے',
+ 'NZD' => 'نِوزیٖلینٛڑُک ڑالَر',
+ 'OMR' => 'اومِنی رِیال',
+ 'PAB' => 'پانامانِیَن بالبوز',
+ 'PEI' => 'پٔریوٗوِیَن اِنٛٹی',
+ 'PEN' => 'پٔریوٗوِیَن نیوٗاوز سولٕز',
+ 'PES' => 'پٔریوٗوِیَن سول',
+ 'PGK' => 'نیوٗ پیپُعا گِنِیَن کیٖنا',
+ 'PHP' => 'پھِلِپایِٔن پٮ۪سو',
+ 'PKR' => 'پاکِستٲنۍ رۄپَے',
+ 'PLN' => 'پولِش زلوٹی',
+ 'PLZ' => 'پولِش زلوٹی(۱۹۵٠–۱۹۹۵)',
+ 'PTE' => 'پورتُگیٖز اٮ۪سکیوٗڑو',
+ 'PYG' => 'پٮ۪رٮ۪گیوٗوَیَن گُعارانی',
+ 'QAR' => 'قطاری رِیال',
+ 'RHD' => 'رھوڑیشِیَن ڑالَر',
+ 'ROL' => 'اولڑ رومانِیَن لٮ۪یوٗ',
+ 'RON' => 'رومانِیَن لٮ۪یوٗ',
+ 'RSD' => 'سٔربِیَن دیٖنار',
+ 'RUB' => 'رٔشیَن رَبٕل',
+ 'RUR' => 'رٔشیَن رَبٕل(۱۹۹۱–۱۹۹۸)',
+ 'RWF' => 'روانٛڑَن فرانٛک',
+ 'SAR' => 'سودیٖیُک رِیال',
+ 'SBD' => 'سولَمَن جٔزیٖرُک ڈالَر',
+ 'SDD' => 'پرون سوٗڈانُک دیٖنار',
+ 'SDG' => 'سوٗڈانُک پونٛڈ',
+ 'SDP' => 'پرون سوٗڈانُک پونٛڈ',
+ 'SEK' => 'سویٖڈِش کَرونا',
+ 'SGD' => 'سِنگاپورُک ڈالَر',
+ 'SHP' => 'سینٹ ہیلِنا پونٛڈ',
+ 'SIT' => 'سلووینُک ٹولَر',
+ 'SKK' => 'سلووَک کَرونا',
+ 'SOS' => 'سومالی شِلِنٛگ',
+ 'SRD' => 'سُریٖنامُک ڈالَر',
+ 'SRG' => 'سُریٖنام گِلدَر',
+ 'SUR' => 'سوویت روبٕل',
+ 'SVC' => 'سَلویدَرُک کولَن',
+ 'SYP' => 'سیٖریاہُک پونٛڈ',
+ 'SZL' => 'سوازی لِلَنگیٚنی',
+ 'THB' => 'تھایھک بات',
+ 'TJR' => 'تاجکِستانُک رَبٕل',
+ 'TJS' => 'تاجِکتانُک سَمونی',
+ 'TMM' => 'تُکَمَنِستانُک مَنَت',
+ 'TND' => 'ٹُنیشیاہُک دیٖنار',
+ 'TOP' => 'ٹونگَن پانٛگا',
+ 'TPE' => 'ٹیموریٚسو ایٚکیٖڈو',
+ 'TRL' => 'پرون تُرکِش لیرا',
+ 'TRY' => 'تُرکیہُک لیرا',
+ 'TTD' => 'ٹرِنہِ ڈیڈ تہٕ ٹوبیگو ڈالَر',
+ 'TWD' => 'نوٚو تیوانُک ڈالَر',
+ 'TZS' => 'تَنزانیاہُک شِلِنٛگ',
+ 'UAH' => 'یوٗکرینیاہُک ہرِوِنیا',
+ 'UAK' => 'یوٗکرینیاہُک کاربووَنیٹس',
+ 'UGS' => 'اُگاداہُک شِلِنٛگ(۱۹۶۶–۱۹۸۷)',
+ 'UGX' => 'اُگاداہُک شِلِنٛگ',
+ 'USD' => 'یوٗ ایٚس ڈالَر',
+ 'USN' => 'یوٗ ایٚس ڈالَر(پَگاہ)',
+ 'USS' => 'یوٗ ایٚس ڈالَر(تَمی دًۄہ)',
+ 'UYI' => 'اُرگایَن پیٚسو یوٗنِڈیڈَس اِنڈیٚکسَس',
+ 'UYP' => 'اُرگایَن پیٚسو(۱۹۷۵–۱۹۹۳)',
+ 'UYU' => 'اُروٗگایَن پیٚسو',
+ 'UZS' => 'اُبیکِستان سوم',
+ 'VEB' => 'وینٕزوٗلیُک بولِوَر (۱۸۷۱–۲۰۰۸)',
+ 'VEF' => 'وینٕزوٗلیُک بولِوَر',
+ 'VND' => 'وِیَنَمُک ڈانٛگ',
+ 'VUV' => 'وَنوٗاَتوٗ وَتوٗ',
+ 'WST' => 'سَمون تَلا',
+ 'XAF' => 'سی ایٚف اے فرینک بی ایٖ اے سی',
+ 'XAG' => 'رۄپھ',
+ 'XAU' => 'سۄن',
+ 'XBA' => 'یوٗرپی کَمپوسِٹ یوٗنِٹ',
+ 'XBB' => 'یوٗرپی مونِٹَری یوٗنِٹ',
+ 'XBC' => 'یوٗرپی یوٗنِٹ آف ایٚکاوُنٛٹ (ایکس بی سی)',
+ 'XBD' => 'یوٗرپی یوٗنِٹ آف ایٚکاوُنٛٹ (ایکس بی ڈی)',
+ 'XCD' => 'مَشرِقی کیرِبِیَن ڈالَر',
+ 'XDR' => 'خاص ڈرایِنٛگ رایٹس',
+ 'XEU' => 'یوٗرپی کَرَنسی یوٗنِٹ',
+ 'XFO' => 'فریٚنچ گولڈ فرینک',
+ 'XFU' => 'فریٛنچ یوٗ اے سی فرینک',
+ 'XOF' => 'سی ایٚف اے فرینک بی سی ایٖ اے او',
+ 'XPD' => 'پُلیڈیَم',
+ 'XPF' => 'سی ایٚف پی فرینک',
+ 'XPT' => 'پلیٹِنَم',
+ 'XRE' => 'آر آے ایٚن ایٖ ٹی فَنٛڈ',
+ 'XTS' => 'ٹیٚسٹِنٛگ کَرَنسی کوڈ',
+ 'XXX' => 'اَنزٲنۍ یا نالَگہٕ ہار سِکہٕ',
+ 'YDD' => 'یَمنُک دیٖنار',
+ 'YER' => 'یَمنُک رِیال',
+ 'YUD' => 'یوگوسلاوِیَن ہاڑ دیٖنار',
+ 'YUM' => 'یوگوسلاوِیَن نووِے دیٖنار',
+ 'YUN' => 'یوگوسلاوِیَن کَنؤٹِبٕل دیٖنار',
+ 'ZAR' => 'ساوُتھ افریٖکاہُک رینڈ',
+ 'ZMK' => 'زِمبابیُک کواچا (1968–2012)',
+ 'ZMW' => 'زِمبابیُک کواچا',
+ 'ZRN' => 'زایرِیَن نِو زایِر',
+ 'ZRZ' => 'زَیرُک ڈالَر',
+ 'ZWD' => 'زِمبابِیُک ڈالَر',
+);
+
+$countryNames = array(
+ 'AD' => 'اٮ۪نڑورا',
+ 'AE' => 'مُتحدہ عرَب امارات',
+ 'AF' => 'اَفغانَستان',
+ 'AG' => 'اٮ۪نٹِگُوا تہٕ باربوڑا',
+ 'AI' => 'انگوئیلا',
+ 'AL' => 'اٮ۪لبانِیا',
+ 'AM' => 'اَرمانِیا',
+ 'AN' => 'نَیدَرلینٛڑٕس اٮ۪نٹَیلٕس',
+ 'AO' => 'انگولا',
+ 'AQ' => 'اینٹارٹِکا',
+ 'AR' => 'أرجَنٹینا',
+ 'AS' => 'اَمریٖکَن سَموا',
+ 'AT' => 'آسٹِیا',
+ 'AU' => 'آسٹریلِیا',
+ 'AW' => 'اَروٗبا',
+ 'AX' => 'ایلینٛڑ جٔزیٖرٕ',
+ 'AZ' => 'آزَرباجان',
+ 'BA' => 'بوسنِیا تہٕ ہَرزِگووِنا',
+ 'BB' => 'باربیڈاس',
+ 'BD' => 'بَنٛگلادیش',
+ 'BE' => 'بیٛلجِیَم',
+ 'BF' => 'بُرکِنا فیسو',
+ 'BG' => 'بَلجیرِیا',
+ 'BH' => 'بحریٖن',
+ 'BI' => 'بورَنڈِ',
+ 'BJ' => 'بِنِن',
+ 'BL' => 'سینٛٹ بارتَھیلمی',
+ 'BM' => 'بٔرمیوڈا',
+ 'BN' => 'بُرنٔے',
+ 'BO' => 'بولِوِیا',
+ 'BQ' => 'برطانوی قُطبہِ جَنوٗبی علاقہٕ',
+ 'BR' => 'برٛازِل',
+ 'BS' => 'بَہامَس',
+ 'BT' => 'بوٗٹان',
+ 'BV' => 'بووَٹ جٔزیٖرٕ',
+ 'BW' => 'بوتَسوانا',
+ 'BY' => 'بیلاروٗس',
+ 'BZ' => 'بیلِج',
+ 'CA' => 'کینَڑا',
+ 'CC' => 'کوکَس کیٖلِنٛگ جٔزیٖرٕ',
+ 'CD' => 'کونٛگو کِنشاسا',
+ 'CF' => 'مرکٔزی اَفریٖکی جموٗریَت',
+ 'CG' => 'کونٛگو بٔرٛزاوِلی',
+ 'CH' => 'سُوِزَرلینٛڑ',
+ 'CI' => 'اَیوٕری کوسٹ',
+ 'CK' => 'کُک جٔزیٖرٕ',
+ 'CL' => 'چِلی',
+ 'CM' => 'کیٚمِروٗن',
+ 'CN' => 'چیٖن',
+ 'CO' => 'کولَمبِیا',
+ 'CR' => 'کوسٹا رِکا',
+ 'CU' => 'کیوٗبا',
+ 'CV' => 'کیپ ؤرڑی',
+ 'CX' => 'کرِسمَس جٔزیٖرٕ',
+ 'CY' => 'سایفرٛس',
+ 'CZ' => 'چیک جَموٗرِیَت',
+ 'DE' => 'جرمٔنی',
+ 'DJ' => 'جِبوٗتی',
+ 'DK' => 'ڈینٛمارٕک',
+ 'DM' => 'ڈومِنِکا',
+ 'DO' => 'ڈومِنِکَن جموٗرِیَت',
+ 'DZ' => 'اٮ۪لجیرِیا',
+ 'EC' => 'اِکواڑور',
+ 'EE' => 'ایسٹونِیا',
+ 'EG' => 'مِسٔر',
+ 'EH' => 'مشرِقی سَہارا',
+ 'ER' => 'اِرٕٹِیا',
+ 'ES' => 'سٕپین',
+ 'ET' => 'اِتھوپِیا',
+ 'FI' => 'فِنلینٛڑ',
+ 'FJ' => 'فِجی',
+ 'FK' => 'فٕلاکلینٛڑ جٔزیٖرٕ',
+ 'FR' => 'فرٛانس',
+ 'GA' => 'گیبان',
+ 'GB' => 'یُنایٹِڑ کِنٛگڈَم',
+ 'GD' => 'گرٛنیڑا',
+ 'GE' => 'جارجِیا',
+ 'GF' => 'فرٛانسِسی گِانا',
+ 'GG' => 'گیوَنَرسے',
+ 'GH' => 'گانا',
+ 'GI' => 'جِبرالٹَر',
+ 'GL' => 'گریٖنلینٛڑ',
+ 'GM' => 'گَمبِیا',
+ 'GN' => 'گِنی',
+ 'GP' => 'گَواڑیلوپ',
+ 'GQ' => 'اِکوِٹورِیَل گِنی',
+ 'GR' => 'گریٖس',
+ 'GS' => 'جنوٗبی جارجِیا تہٕ جنوٗبی سینٛڑوٕچ جٔزیٖرٕ',
+ 'GT' => 'گوتیدالا',
+ 'GU' => 'گُوام',
+ 'GW' => 'گیٖنی بِساو',
+ 'GY' => 'گُیانا',
+ 'HK' => 'ہانٛگ کانٛگ ایس اے آر چیٖن',
+ 'HM' => 'ہَرٕڑ جٔزیٖرٕ تہٕ مٮ۪کڈونالڑٕ جٔزیٖرٕ',
+ 'HN' => 'ہانٛڈوٗرِس',
+ 'HR' => 'کرٛوشِیا',
+ 'HT' => 'ہایتی',
+ 'HU' => 'ہَنٛگری',
+ 'ID' => 'اِنڑونیشِیا',
+ 'IE' => 'اَیَرلینٛڑ',
+ 'IL' => 'اِسرایٖل',
+ 'IM' => 'آیِل آف میٛن',
+ 'IN' => 'ہِنٛدوستان',
+ 'IO' => 'برطانوی بحرِ ہِنٛدۍ علاقہٕ',
+ 'IQ' => 'ایٖراق',
+ 'IR' => 'ایٖران',
+ 'IS' => 'اَیِسلینٛڑ',
+ 'IT' => 'اِٹلی',
+ 'JE' => 'جٔرسی',
+ 'JM' => 'جَمایکا',
+ 'JP' => 'جاپان',
+ 'KE' => 'کِنٛیا',
+ 'KG' => 'کِرگِستان',
+ 'KH' => 'کَمبوڑِیا',
+ 'KI' => 'کِرٕباتی',
+ 'KM' => 'کَمورَس',
+ 'KN' => 'سینٛٹ کِٹَس تہٕ نیوِس',
+ 'KP' => 'شُمٲلی کورِیا',
+ 'KR' => 'جنوٗبی کورِیا',
+ 'KW' => 'کُویت',
+ 'KY' => 'کیمَن جٔزیٖرٕ',
+ 'KZ' => 'کَزاکِستان',
+ 'LA' => 'لاس',
+ 'LB' => 'لٮ۪بنان',
+ 'LC' => 'سینٛٹ لوٗسِیا',
+ 'LI' => 'لِکٹیٛسٹیٖن',
+ 'LK' => 'سِریٖلَنٛکا',
+ 'LR' => 'لایبیرِیا',
+ 'LS' => 'لیسوتھو',
+ 'LT' => 'لِتھُوانِیا',
+ 'LU' => 'لَکسَمبٔرٕگ',
+ 'LV' => 'لیٛٹوِیا',
+ 'LY' => 'لِبیا',
+ 'MA' => 'موروکو',
+ 'MC' => 'مونیٚکو',
+ 'MD' => 'مولڑاوِیا',
+ 'ME' => 'موٹونیٛگِریو',
+ 'MF' => 'سینٛٹ مارٹِن',
+ 'MG' => 'میڑاگاسکار',
+ 'MH' => 'مارشَل جٔزیٖرٕ',
+ 'MK' => 'مٮ۪سوڑونِیا',
+ 'ML' => 'مالی',
+ 'MM' => 'مَیَنما بٔرما',
+ 'MN' => 'مَنٛگولِیا',
+ 'MO' => 'مَکاوو ایس اے آر چیٖن',
+ 'MP' => 'شُمٲلی مارِیانا جٔزیٖرٕ',
+ 'MQ' => 'مارٹِنِک',
+ 'MR' => 'مارٕٹانِیا',
+ 'MS' => 'مانٛٹسیراٹ',
+ 'MT' => 'مالٹا',
+ 'MU' => 'مورِشَس',
+ 'MV' => 'مالدیٖو',
+ 'MW' => 'ملاوی',
+ 'MX' => 'مٮ۪کسِکو',
+ 'MY' => 'مَلیشِیا',
+ 'MZ' => 'موزَمبِک',
+ 'NA' => 'نامِبِیا',
+ 'NC' => 'نِو کیلِڑونِیا',
+ 'NE' => 'نایجَر',
+ 'NF' => 'نارفاک جٔزیٖرٕ',
+ 'NG' => 'نایجیرِیا',
+ 'NI' => 'ناکاراگُوا',
+ 'NL' => 'نیٖدَرلینٛڑ',
+ 'NO' => 'ناروے',
+ 'NP' => 'نیپال',
+ 'NR' => 'نارووٗ',
+ 'NU' => 'نیوٗ',
+ 'NZ' => 'نیوٗزِلینٛڑ',
+ 'OM' => 'اومان',
+ 'PA' => 'پَناما',
+ 'PE' => 'پیٖروٗ',
+ 'PF' => 'فرٛانسی پولِنیشِیا',
+ 'PG' => 'پاپُوا نیوٗ گیٖنی',
+ 'PH' => 'فِلِپِینس',
+ 'PK' => 'پاکِستان',
+ 'PL' => 'پولینٛڑ',
+ 'PM' => 'سینٛٹ پیٖری تہٕ موکیلِیَن',
+ 'PN' => 'پِٹکیرٕنۍ جٔزیٖرٕ',
+ 'PR' => 'پٔرٹو رِکو',
+ 'PS' => 'فَلَستیٖن',
+ 'PT' => 'پُرتِگال',
+ 'PW' => 'پَلاو',
+ 'PY' => 'پَراگُے',
+ 'QA' => 'قَطِر',
+ 'QO' => 'آوُٹلاینِگ اوشینِیا',
+ 'RE' => 'رِیوٗنِیَن',
+ 'RO' => 'رومانِیا',
+ 'RS' => 'سَربِیا',
+ 'RU' => 'روٗس',
+ 'RW' => 'روٗوانٛڈا',
+ 'SA' => 'سوٗدی عربِیہ',
+ 'SB' => 'سولامان جٔزیٖرٕ',
+ 'SC' => 'سیشَلِس',
+ 'SD' => 'سوٗڈان',
+ 'SE' => 'سُوِڈَن',
+ 'SG' => 'ٛسِنٛگاپوٗر',
+ 'SH' => 'سینٛٹ ہٮ۪لِنا',
+ 'SI' => 'سَلووینِیا',
+ 'SJ' => 'سَوالبریڑ تہٕ جان ماییڑ',
+ 'SK' => 'سَلوواکِیا',
+ 'SL' => 'سیٖرالیوون',
+ 'SM' => 'سین میرِنو',
+ 'SN' => 'سینیگَل',
+ 'SO' => 'سومالِیا',
+ 'SR' => 'سُرِنام',
+ 'ST' => 'ساو توم تہٕ پرٛنسِپی',
+ 'SV' => 'اٮ۪ل سَلواڑور',
+ 'SY' => 'شام',
+ 'SZ' => 'سُوزِلینٛڑ',
+ 'TC' => 'تُرُک تہٕ کیکوس جٔزیٖرٕ',
+ 'TD' => 'چاڑ',
+ 'TF' => 'فرٛانسِسی جَنوٗبی عَلاقہٕ',
+ 'TG' => 'ٹوگو',
+ 'TH' => 'تھایلینٛڑ',
+ 'TJ' => 'تاجکِستان',
+ 'TK' => 'توکیلاو',
+ 'TL' => 'مَشرِقی تایمور',
+ 'TM' => 'تُرمِنِستان',
+ 'TN' => 'ٹونیشِیا',
+ 'TO' => 'ٹونٛگا',
+ 'TR' => 'تُرکی',
+ 'TT' => 'ٹرٛنِنداد تہٕ ٹوبیگو',
+ 'TV' => 'توٗوالوٗ',
+ 'TW' => 'تایوان',
+ 'TZ' => 'تَنجانِیا',
+ 'UA' => 'یوٗرِکین',
+ 'UG' => 'یوٗگانٛڑا',
+ 'UM' => 'یوٗنایٹِڑ سِٹیٹِس ماینَر آوُٹلییِنٛگ جٔزیٖرٕ',
+ 'US' => 'یوٗنایٹِڑ سِٹیٹِس',
+ 'UY' => 'یوٗروگے',
+ 'UZ' => 'اُزبِکِستان',
+ 'VA' => 'ویٹِکَن سِٹی',
+ 'VC' => 'سینٛٹ وینسٮ۪ٹ تہٕ گرٛیناڑاینٕز',
+ 'VE' => 'وینازوٗلا',
+ 'VG' => 'بَرطانوی ؤرجِن جٔزیٖرٕ',
+ 'VI' => 'یوٗ ایس ؤرجِن جٔزیٖرٕ',
+ 'VN' => 'ویٹِنام',
+ 'VU' => 'وانوٗتوٗ',
+ 'WF' => 'والِس تہٕ فیوٗچوٗنا',
+ 'WS' => 'سیمووا',
+ 'YE' => 'یَمَن',
+ 'YT' => 'مَییٹ',
+ 'ZA' => 'جَنوٗبی اَفریٖکا',
+ 'ZM' => 'جامبِیا',
+ 'ZW' => 'زِمبابے',
+);
+
+$timeUnits = array(
+ 'day-one' => '{0} دۄہ',
+ 'day-other' => '{0} دۄہ',
+ 'hour-one' => '{0} گَنٹہٕ',
+ 'hour-other' => '{0} گٲنٛٹہٕ',
+ 'minute-one' => '{0} مِنَٹ',
+ 'minute-other' => '{0} مِنَٹ',
+ 'month-one' => '{0} ریٚتھ',
+ 'month-other' => '{0} ریٚتھ',
+ 'second-one' => '{0} سیٚکَنٛڈ',
+ 'second-other' => '{0} سیٚکَنٛڈ',
+ 'week-one' => '{0} ہَفتہٕ',
+ 'week-other' => '{0} ہَفتہٕ',
+ 'year-one' => '{0} ؤری',
+ 'year-other' => '{0} ؤری',
+);
diff --git a/MLEB/cldr/CldrNames/CldrNamesKsh.php b/MLEB/cldr/CldrNames/CldrNamesKsh.php
new file mode 100644
index 00000000..0502e1f4
--- /dev/null
+++ b/MLEB/cldr/CldrNames/CldrNamesKsh.php
@@ -0,0 +1,692 @@
+<?php
+
+$languageNames = array(
+ 'aa' => 'Afahresch',
+ 'ab' => 'Abchahsesch',
+ 'ace' => 'Aschenehsesch',
+ 'ae' => 'Avästahnesch',
+ 'aeb' => 'Tonehsesch Arahbesch',
+ 'af' => 'Afrikaans',
+ 'afh' => 'Afrehihlesch',
+ 'ak' => 'Akahnesch',
+ 'akk' => 'Akahdesch',
+ 'ale' => 'Ale’uhtesch',
+ 'am' => 'Amhahresch',
+ 'an' => 'Arrajonehsesch',
+ 'ang' => 'Ahl Änglesch',
+ 'ar' => 'Arahbesch',
+ 'ar-001' => 'Schtandatt Arahbesch',
+ 'arq' => 'Aljehresch Arahbesch',
+ 'ary' => 'Marokahnesch Arahbesch',
+ 'arz' => 'Äjiptesch Arahbesch',
+ 'as' => 'Aßamehsesch',
+ 'asa' => 'Pare',
+ 'ase' => 'Amärrekahnesche Blendeschprohch',
+ 'ast' => 'Astuhrejahnesch',
+ 'av' => 'Avahresch',
+ 'ay' => 'Aimahresch',
+ 'az' => 'Asserbaidschahnesch',
+ 'azb' => 'Södasserbaidschahnesch',
+ 'ba' => 'Baschkihresch',
+ 'bal' => 'Beluhtschesch',
+ 'ban' => 'Balinehsesch',
+ 'bar' => 'Bairesch',
+ 'be' => 'Wiißrußesch',
+ 'bem' => 'Bemba',
+ 'bez' => 'Bena',
+ 'bg' => 'Bulljaaresch',
+ 'bm' => 'Bambara',
+ 'bn' => 'Bängjaalesch',
+ 'bo' => 'Tibehtesch',
+ 'bpy' => 'Bischnuprejahnesch',
+ 'br' => 'Bettohnesch',
+ 'bra' => 'Brajesch',
+ 'brh' => 'Brahuijesch',
+ 'brx' => 'Boddo',
+ 'bs' => 'Boßnesch',
+ 'bua' => 'Burejahtesch',
+ 'bug' => 'Bujinehsesch',
+ 'ca' => 'Kattalahnesch',
+ 'co' => 'Korsesch',
+ 'cop' => 'Koptesch',
+ 'cs' => 'Tschäschesch',
+ 'csb' => 'Kaschuhbesch',
+ 'cu' => 'Kerscheßlahwesch',
+ 'cv' => 'Tschowaschesch',
+ 'cy' => 'Wallihsesch',
+ 'da' => 'Dähnesch',
+ 'de' => 'Deutsch',
+ 'de-at' => 'Deutsch uß Ößterich',
+ 'de-ch' => 'Deutsch uß de Schweijz',
+ 'dsb' => 'Niddersorbesch',
+ 'dum' => 'Meddelnehderlängsch',
+ 'dv' => 'Divehjesch',
+ 'dz' => 'Butahnesch',
+ 'dzg' => 'Dassajahnesch',
+ 'ebu' => 'Embu',
+ 'ee' => 'Ewe',
+ 'efi' => 'Efik',
+ 'egl' => 'Emilijahnesch',
+ 'egy' => 'Ahl Äjiptesch',
+ 'el' => 'Jrihschesch',
+ 'en' => 'Änglesch',
+ 'en-au' => 'Änglesch uß Außtraalije',
+ 'en-ca' => 'Änglesch uß Kanada',
+ 'en-gb' => 'Änglesch uß Jruußbrettannije',
+ 'en-us' => 'Amärrekaanesch Änglesch',
+ 'enm' => 'Meddelänglesch',
+ 'eo' => 'Esperanto',
+ 'es' => 'Schpahnesch',
+ 'es-419' => 'Schpaanesch uß Latting-Ammärrika',
+ 'es-es' => 'Schpahnesch en Schpahneje',
+ 'es-mx' => 'Schpahnesch en Mäxikoh',
+ 'esu' => 'Zätrahl-Jupik',
+ 'et' => 'Äßnesch',
+ 'eu' => 'Baskesch',
+ 'fa' => 'Pärsesch',
+ 'fi' => 'Finnesch',
+ 'fil' => 'fil',
+ 'fj' => 'Fidschesch',
+ 'fo' => 'Färröeresch',
+ 'fr' => 'Franzüüsesch',
+ 'fr-ca' => 'Franzüüsesch uß Kanada',
+ 'fr-ch' => 'Franzüüsesch uß de Schweijz',
+ 'fy' => 'Wäßfriisesch',
+ 'ga' => 'Ieresch',
+ 'gl' => 'Jalliizesch',
+ 'gn' => 'Juwaraanesch',
+ 'gsw' => 'Schwitzerdütsch',
+ 'gu' => 'Gutscharatesch',
+ 'ha' => 'Haußa',
+ 'haw' => 'Hauajaanesch',
+ 'he' => 'Hebräjesch',
+ 'hi' => 'Hindi',
+ 'hr' => 'Krowatesch',
+ 'ht' => 'Ha’iitesch',
+ 'hu' => 'Unjarresch',
+ 'hy' => 'Armeenesch',
+ 'id' => 'Indoneesesch',
+ 'ig' => 'Igbo',
+ 'inh' => 'Engjuschesch',
+ 'io' => 'Ido',
+ 'is' => 'Ißländesch',
+ 'it' => 'Etalljänesch',
+ 'iu' => 'Inuktitut',
+ 'izh' => 'Ingjrijahnesch',
+ 'ja' => 'Japaanesch',
+ 'jam' => 'Jamaikahnesch-Änglesch',
+ 'jbo' => 'Lodschbahn',
+ 'jpr' => 'Jühdesch-Pärsesch',
+ 'jut' => 'Jütesch',
+ 'jv' => 'Javahnesch',
+ 'ka' => 'Je’orjesch',
+ 'kea' => 'Kapvärdesch',
+ 'kk' => 'Kassakesch',
+ 'km' => 'Khmer',
+ 'kn' => 'Kannada',
+ 'ko' => 'Korrejaanesch',
+ 'ks' => 'Kaschmieresch',
+ 'ksh' => 'Kölsch',
+ 'ku' => 'Kurdesch',
+ 'ky' => 'Kirjihsesch',
+ 'la' => 'Lateijnesch',
+ 'lah' => 'de Landa-Schprooche',
+ 'lb' => 'Luxemborjesch',
+ 'ln' => 'Lingjalla',
+ 'lo' => 'Lahootesch',
+ 'lt' => 'Littouesch',
+ 'luy' => 'Luyjanesch',
+ 'lv' => 'Lättesch',
+ 'mg' => 'Madajaßkesch',
+ 'mi' => 'Maahori',
+ 'mk' => 'Mazedoonesch',
+ 'ml' => 'Mallajalam',
+ 'mn' => 'Mongjolesch',
+ 'mr' => 'Marraatesch',
+ 'ms' => 'Mallaijesch',
+ 'mt' => 'Malteesesch',
+ 'mul' => '-ongerscheidlijje Schprooche-',
+ 'my' => 'Burmessesch',
+ 'nb' => 'Norrweejesch Bokmål',
+ 'nd' => 'Nood-Ndebele',
+ 'ne' => 'Nepallessesch',
+ 'nl' => 'Holländesch',
+ 'nl-be' => 'Flämesch',
+ 'nn' => 'Neu-Norrweejesch',
+ 'no' => 'Norrweejesch',
+ 'nso' => 'Nood-Sooto',
+ 'ny' => 'Schi-Schewa',
+ 'or' => 'Oriija',
+ 'os' => 'Oßeetesch',
+ 'pa' => 'Panschaabesch',
+ 'pl' => 'Pollnesch',
+ 'ps' => 'Paschtuunesch',
+ 'pt' => 'Pochtojesesch',
+ 'pt-br' => 'Brasilljaanesch Pochtojesesch',
+ 'pt-pt' => 'Pochtojesesch uß Pochtojall',
+ 'qu' => 'Kättschowa',
+ 'rm' => 'Rätoromaanesch',
+ 'rn' => 'K-Rundesch',
+ 'ro' => 'Rumänesch',
+ 'rof' => 'Kirombo',
+ 'ru' => 'Rußßesch',
+ 'rw' => 'Kinja-Ruandesch',
+ 'sa' => 'Sanskrit',
+ 'sah' => 'Jackutesch',
+ 'sd' => 'Sinndi',
+ 'se' => 'Nood-Lappländesch',
+ 'sg' => 'Sangjo',
+ 'sh' => 'Särbokowatesch',
+ 'si' => 'Singjaleesesch',
+ 'sk' => 'ẞlovakesch',
+ 'sl' => 'ẞloveenesch',
+ 'sm' => 'Sammohanesch',
+ 'sn' => 'Schi-Schona',
+ 'so' => 'Somaalesch',
+ 'sq' => 'Albaanesch',
+ 'sr' => 'Särbesch',
+ 'ss' => 'Si-Swatesch',
+ 'st' => 'Söd-Sooto',
+ 'su' => 'Sindaneesesch',
+ 'sv' => 'Schweedesch',
+ 'sw' => 'Suaheelesch',
+ 'swb' => 'Kommooresch',
+ 'ta' => 'Tamiilesch',
+ 'te' => 'Telluuju',
+ 'tet' => 'Tetumsch',
+ 'tg' => 'Tadschiikesch',
+ 'th' => 'Tailändesch',
+ 'ti' => 'Tijrenejaanesch',
+ 'tk' => 'Törkmeenesch',
+ 'tl' => 'Tagalog',
+ 'tn' => 'Se-Zwaanesch',
+ 'to' => 'Tongjaanesch',
+ 'tpi' => 'Took Pisin',
+ 'tr' => 'Törkesch',
+ 'ts' => 'Xi-Zongjanesch',
+ 'tt' => 'Tattaaresch',
+ 'ty' => 'Tahitesch',
+ 'ug' => 'Uj’juuersch',
+ 'uk' => 'Ukrainesch',
+ 'und' => '-onbikannte-Schprooch-',
+ 'ur' => 'Urdu/Hindi',
+ 'uz' => 'Ußbeekesch',
+ 've' => 'Wenda',
+ 'vi' => 'Vijätnammeesesch',
+ 'wae' => 'Walserdütsch',
+ 'wo' => 'Woloff',
+ 'xh' => 'Isi-Khoosa',
+ 'yo' => 'Joruuba',
+ 'yue' => 'Kanton-Schineesesch',
+ 'zh' => 'Schineesesch',
+ 'zh-hans' => 'Schineesesch en de eijfacher Schreff',
+ 'zh-hant' => 'Schineesesch en de tradizjonälle Schreff',
+ 'zu' => 'Suulu',
+ 'zxx' => 'kein Schprooch',
+);
+
+$currencyNames = array(
+ 'AED' => 'de vereineschte arraabesche Emiraate ier Dirham',
+ 'AFN' => 'Afjahni',
+ 'ALL' => 'albaanesche Lek',
+ 'AMD' => 'armeenesche Dram',
+ 'ANG' => 'neederlängsch antillesche Jullde',
+ 'AOA' => 'angjolaanesche Kwansa',
+ 'ARS' => 'ajentiinesche Peeso',
+ 'AUD' => 'austraalesche Dollaa',
+ 'AWG' => 'arubesche Florin',
+ 'AZM' => 'Asserbaidschaani Manat (1993–2006)',
+ 'AZN' => 'Asserbaidschaani Manat',
+ 'BAM' => 'ömtuuschbaa Mark us Boßnije un dä Hächejovvina',
+ 'BBD' => 'Barbados-Dollaa',
+ 'BDT' => 'Taka us Bangladäsch',
+ 'BGN' => 'buljaaresche Lev',
+ 'BHD' => 'Bachrainesche Denaa',
+ 'BIF' => 'burundesche Frang',
+ 'BMD' => 'Bermuuda-Dollaa',
+ 'BND' => 'Brunei-Dollaa',
+ 'BOB' => 'Bollivijano',
+ 'BRL' => 'brasilljaanesche Real',
+ 'BSD' => 'bahama’sche Dollaa',
+ 'BTN' => 'bhutanesesche Ngultrum',
+ 'BWP' => 'Pula us Bozwaana',
+ 'BYR' => 'wiißrußesche Rubel',
+ 'BZD' => 'belizjaanesche Dollaa',
+ 'CAD' => 'kannaadesche Dollaa',
+ 'CDF' => 'kongjoleesesche Frang',
+ 'CHF' => 'schweijzer Fränkli',
+ 'CLP' => 'schileenesche Peeso',
+ 'CNY' => 'schineesesche Yuan Renminbi',
+ 'COP' => 'kolumbesche Peso',
+ 'CRC' => 'koßtarikaanesche Colón',
+ 'CUC' => 'ömtuuschbaa kubaanesche Pesos',
+ 'CUP' => 'kubaanesche Peesos',
+ 'CVE' => 'kapverdesche Eskuudos',
+ 'CZK' => 'tschäschesche Kruhne',
+ 'DJF' => 'Frang uß Dschibuti',
+ 'DKK' => 'dänesche Kruhne',
+ 'DOP' => 'dommenikaanesche Peesos',
+ 'DZD' => 'aljeresche Denaa',
+ 'EEK' => 'Äßnesche Kruhne',
+ 'EGP' => 'äjiptesche Pongk',
+ 'ERN' => 'Nafka uß Erritreja',
+ 'ETB' => 'ätejoopesche Birr',
+ 'EUR' => 'Euro',
+ 'FJD' => 'Fidschi-Dollaa',
+ 'FKP' => 'Pongk vun de Falkland-Enselle',
+ 'GBP' => 'brittesche £',
+ 'GEL' => 'jeorjesche Lari',
+ 'GHS' => 'janaaesche Cedi',
+ 'GIP' => 'jibraltaa’sche Pongk',
+ 'GMD' => 'jambesche Dalasi',
+ 'GNF' => 'Jineea-Frang',
+ 'GTQ' => 'juatemalesche Quetzal',
+ 'GYD' => 'Juaana-Dollaa',
+ 'HKD' => 'Hongkong-Dollaa',
+ 'HNL' => 'hondureanesche Lempira',
+ 'HRK' => 'krowaatesche Kuna',
+ 'HTG' => 'haiitesche Gourde',
+ 'HUF' => 'unjarresche Forint',
+ 'IDR' => 'indoneesesche Ruupije',
+ 'ILS' => 'ißraeelesche Schekel',
+ 'INR' => 'indesche Ruupije',
+ 'IQD' => 'iraakesche Denaa',
+ 'IRR' => 'persesche Rial',
+ 'ISK' => 'ißländesche Kruhne',
+ 'JMD' => 'jamaikaanesche Dollaa',
+ 'JOD' => 'Jordaanesche Dollaa',
+ 'JPY' => 'japaanesche Jen',
+ 'KES' => 'Kenjaanesche Schillinge',
+ 'KGS' => 'kirjiisesche Som',
+ 'KHR' => 'kambodschaanesche Riel',
+ 'KMF' => 'kommooresche Frang',
+ 'KPW' => 'noodkorejaansche Won',
+ 'KRW' => 'söödkorejaansche Won',
+ 'KWD' => 'kuwaitesche Denaa',
+ 'KYD' => 'Kaimann-Dollaa',
+ 'KZT' => 'kasakesche Tenge',
+ 'LAK' => 'loaatesche Kip',
+ 'LBP' => 'libaneesesche Pongk',
+ 'LKR' => 'schrilankesche Ruupije',
+ 'LRD' => 'liberijaanesche Dollaa',
+ 'LSL' => 'lesoothesche Loti',
+ 'LTL' => 'littouesche Litas',
+ 'LVL' => 'lättesche Lats',
+ 'LYD' => 'libesche Denaa',
+ 'MAD' => 'marrokaanesche Dirhamm',
+ 'MDL' => 'moldaavesche Leu',
+ 'MGA' => 'madajaskesche Ariary',
+ 'MKD' => 'mazedoonesche Denaa',
+ 'MMK' => 'burmeesesche Kyat',
+ 'MNT' => 'mongjoolesche Tugrik',
+ 'MOP' => 'makaneesesche Pataca',
+ 'MRO' => 'mauretanesche Ouguiya',
+ 'MUR' => 'maurizjahnesche Ruupije',
+ 'MVR' => 'mallediivesche Rufiyaa',
+ 'MWK' => 'malaawesche Kwache',
+ 'MXN' => 'mexekaanesche Peeso',
+ 'MYR' => 'malaisesche Ringgit',
+ 'MZM' => 'mosambikaanesche Metical (1980–2006)',
+ 'MZN' => 'mossambikaanesche Metical',
+ 'NAD' => 'namiibesche Dollaa',
+ 'NGN' => 'nijerijaanesche Naira',
+ 'NIO' => 'nikarajaanesche Córdoba',
+ 'NOK' => 'norrweejesche Kruhne',
+ 'NPR' => 'nepaleesesche Ruupije',
+ 'NZD' => 'neuseeländesche Dollaa',
+ 'OMR' => 'ommaanesche Rijal',
+ 'PAB' => 'pannameesesche Balboa',
+ 'PEN' => 'perruaanesche Nuevo Sol',
+ 'PGK' => 'papua neujinejaanesche Kina',
+ 'PHP' => 'fillipiinesche Pesos',
+ 'PKR' => 'pakestaanesche Ruupije',
+ 'PLN' => 'polnesche Złoty',
+ 'PYG' => 'parajuaanesche Juarani',
+ 'QAR' => 'kataaresche Rijal',
+ 'ROL' => 'romäänesche Leu (1952–2006)',
+ 'RON' => 'romäänesche Leu',
+ 'RSD' => 'särbesche Denaare',
+ 'RUB' => 'russesche Ruubel',
+ 'RWF' => 'ruandesche Frang',
+ 'SAR' => 'saudesche Rijal',
+ 'SBD' => 'solomonesche Dollaa',
+ 'SCR' => 'seischellesche Ruupije',
+ 'SDG' => 'sudaneesesche Pongk',
+ 'SEK' => 'schweedesche Kruhne',
+ 'SGD' => 'singjapurejaanesche Dollaa',
+ 'SHP' => 'Zint-Hellena-Pongk',
+ 'SKK' => 'ßlovaakesche Kruhne',
+ 'SLL' => 'ẞjärra-lejoneesesche Leone',
+ 'SOS' => 'somaalesche Schillenge',
+ 'SRD' => 'sürinameesesche Dollaa',
+ 'SSP' => 'södsudaneesesche Pongk',
+ 'STD' => 'Dobra vun São Tomé un Príncipe',
+ 'SVC' => 'asalvadorejaanesche Cosan',
+ 'SYP' => 'süüresche Pund',
+ 'SZL' => 'swasiländesche Lilangeni',
+ 'THB' => 'tailändesche Baht',
+ 'TJS' => 'tadschikißtaanesche Somoni',
+ 'TMM' => 'turkmeneßtaanesche Manat (1993–2009)',
+ 'TMT' => 'turkmeneßtaanesche Manat',
+ 'TND' => 'tuneesesche Denaa',
+ 'TOP' => 'tongjanes Paʻangache',
+ 'TRY' => 'törkesche Liire',
+ 'TTD' => 'Dollaa uß Trinidad un Tobääjo',
+ 'TWD' => 'neu taiwaneesesche Dollaa',
+ 'TZS' => 'tansaanesche Schillenge',
+ 'UAH' => 'ukraijnesche Hryvnia',
+ 'UGX' => 'ujandesche Schillenge',
+ 'USD' => 'ammärrikaanesche Dollaa',
+ 'UYU' => 'urrujuwaische Peeso',
+ 'UZS' => 'ußbeekesche Som',
+ 'VEF' => 'venezuelaanesche Bolívar',
+ 'VND' => 'vijätnammeesesche Dong',
+ 'VUV' => 'vanuatesche Vatu',
+ 'WST' => 'samowaanesche Tala',
+ 'XAF' => 'Kmmeruhner Frang',
+ 'XAG' => 'Sellver',
+ 'XAU' => 'Jold',
+ 'XCD' => 'oß-karribbesche Dollaa',
+ 'XFO' => 'franzüüsesche Joldfranke',
+ 'XOF' => 'Frang uß de Älfebeinköß',
+ 'XPD' => 'Palladijum',
+ 'XPF' => 'polineesesche Frang',
+ 'XPT' => 'Plaatin',
+ 'XTS' => 'Währong zum Prööfe',
+ 'XXX' => 'onbikannte Währong',
+ 'YER' => 'jemenitesche Rijal',
+ 'ZAR' => 'södaffrekaanesche Rand',
+ 'ZMK' => 'sambesche Kwacha (1968–2012)',
+ 'ZMW' => 'sambesche Kwacha',
+ 'ZWD' => 'simbabwesche Dollaa (1980–2008)',
+ 'ZWL' => 'simbabwesche Dollaa (2009)',
+);
+
+$countryNames = array(
+ 'AC' => 'Aßension',
+ 'AD' => 'Andorra',
+ 'AE' => 'Vereinschte Arrabesche Emmirate',
+ 'AF' => 'Afjaanistahn',
+ 'AG' => 'Antigwa un Barbuda',
+ 'AI' => 'Anggwilla',
+ 'AL' => 'Albaanije',
+ 'AM' => 'Arrmeenije',
+ 'AN' => 'de Nederlängsche Antille',
+ 'AO' => 'Angjoola',
+ 'AQ' => 'der Södpol',
+ 'AR' => 'Ajjentiinije',
+ 'AS' => 'Ammerikaanesch Sammoha',
+ 'AT' => 'Öösterisch',
+ 'AU' => 'Austraalije',
+ 'AW' => 'Aruba',
+ 'AX' => 'de Ohland-Enselle',
+ 'AZ' => 'Asserbaidschahn',
+ 'BA' => 'Boßnije un Herzegovina',
+ 'BB' => 'de Ensel Barbados',
+ 'BD' => 'Bangladesch',
+ 'BE' => 'Bellje',
+ 'BF' => 'Bukkinna-Faase',
+ 'BG' => 'Bulljaarije',
+ 'BH' => 'Bachrain',
+ 'BI' => 'Burundi',
+ 'BJ' => 'dä Benin',
+ 'BL' => 'de Zint Battälmi-Enselle',
+ 'BM' => 'de Bermudas',
+ 'BN' => 'Brunei',
+ 'BO' => 'Bolliivije',
+ 'BQ' => 'de karribbesche Nederläng',
+ 'BR' => 'Brasilije',
+ 'BS' => 'de Bahamas',
+ 'BT' => 'Buttaan',
+ 'BV' => 'de Buvee-Ensel',
+ 'BW' => 'Bozwaana',
+ 'BY' => 'Wießrußland',
+ 'BZ' => 'Belize',
+ 'CA' => 'Kanada',
+ 'CC' => 'de Kokkos-Enselle',
+ 'CD' => 'dä Konggo (Kinschasa)',
+ 'CF' => 'de Zäntraalaffrikaanesche Republik',
+ 'CG' => 'dä Konggo (Brassavill)',
+ 'CH' => 'de Schweiz',
+ 'CI' => 'Älfebeijn-Köß',
+ 'CK' => 'de Kuuk-Enselle',
+ 'CL' => 'Schiile',
+ 'CM' => 'Kammeruhn',
+ 'CN' => 'Schiina',
+ 'CO' => 'Kolumbije',
+ 'CP' => 'de Klipperton-Ensel',
+ 'CR' => 'Kostarika',
+ 'CU' => 'Kuba',
+ 'CV' => 'de kapvärdesche Enselle',
+ 'CW' => 'Curaçao',
+ 'CX' => 'de Weihnaachs-Ensel',
+ 'CY' => 'Züppere',
+ 'CZ' => 'de Tschäschei',
+ 'DE' => 'Doütschland',
+ 'DG' => 'de Diego-Garcia-Ensel',
+ 'DJ' => 'Dschibutti',
+ 'DK' => 'Dänemark',
+ 'DM' => 'Dominnika',
+ 'DO' => 'de Dommenekaanesche Reppublik',
+ 'DZ' => 'Alljeerije',
+ 'EA' => 'Ze’uta un Meliija',
+ 'EC' => 'Äkwador',
+ 'EE' => 'Äßland',
+ 'EG' => 'Äjüpte',
+ 'EH' => 'Wäß-Sahara',
+ 'ER' => 'Äritreja',
+ 'ES' => 'Schpaanije',
+ 'ET' => 'Ättijoopije',
+ 'EU' => 'de Europäjesche Unijon',
+ 'FI' => 'Finnland',
+ 'FJ' => 'de Fidschi-Endelle',
+ 'FK' => 'de Falkland-Enselle',
+ 'FM' => 'Mikroneesije',
+ 'FO' => 'de Färrör-Enselle',
+ 'FR' => 'Frankrisch',
+ 'GA' => 'Jabuhn',
+ 'GB' => 'Jruußbrettannije',
+ 'GD' => 'Jrenaada',
+ 'GE' => 'Jeorrjije',
+ 'GF' => 'Franzüüsesch Jujaana',
+ 'GG' => 'Jöönsei',
+ 'GH' => 'Jaana',
+ 'GI' => 'Jibralltaa',
+ 'GL' => 'Jröhnland',
+ 'GM' => 'Jambija',
+ 'GN' => 'Jinneha',
+ 'GP' => 'Juadelupp',
+ 'GQ' => 'Äquatorial Jineeja',
+ 'GR' => 'Jriescheland',
+ 'GS' => 'Söd-Jeorjie un de södlijje Botteramms-Enselle',
+ 'GT' => 'Juwatemaala',
+ 'GU' => 'Juham',
+ 'GW' => 'Jinneha_Bißau',
+ 'GY' => 'Jujaana',
+ 'HK' => 'Hongkong',
+ 'HM' => 'de Heart Ensel un de McDonald-Enselle',
+ 'HN' => 'Honduras',
+ 'HR' => 'Krowazije',
+ 'HT' => 'Ha’itti',
+ 'HU' => 'Unjann',
+ 'IC' => 'de Kannaresche Enselle',
+ 'ID' => 'Indoneesije',
+ 'IE' => 'Irrland',
+ 'IL' => 'Ißraäl',
+ 'IM' => 'de Ensel Män',
+ 'IN' => 'Indije',
+ 'IO' => 'Brettesche Besezunge em indesche Oozejahn',
+ 'IQ' => 'Irak',
+ 'IR' => 'Persije',
+ 'IS' => 'Ißland',
+ 'IT' => 'Itaalije',
+ 'JE' => 'Jööseh',
+ 'JM' => 'Jammaika',
+ 'JO' => 'Jordaanije',
+ 'JP' => 'Japan',
+ 'KE' => 'Keenija',
+ 'KG' => 'Kirrjiisije',
+ 'KH' => 'Kambodscha',
+ 'KI' => 'Kiribati',
+ 'KM' => 'de Kommoore',
+ 'KN' => 'Zint Kitts un Nevis',
+ 'KP' => 'Nood-Koreja',
+ 'KR' => 'Söd-Koreja',
+ 'KW' => 'Kuweit',
+ 'KY' => 'de Kaiman-Enselle',
+ 'KZ' => 'Kassakstahn',
+ 'LA' => 'La’os',
+ 'LB' => 'Lebbannon',
+ 'LC' => 'de Ensel Zint-Lutscha',
+ 'LI' => 'Lischteschtein',
+ 'LK' => 'Sri Lanka',
+ 'LR' => 'Libeerija',
+ 'LS' => 'Lesooto',
+ 'LT' => 'Littaue',
+ 'LU' => 'Luxembursch',
+ 'LV' => 'Lätland',
+ 'LY' => 'Libbije',
+ 'MA' => 'Marokko',
+ 'MC' => 'Monakko',
+ 'MD' => 'Moldaavije',
+ 'ME' => 'et Monteneejro',
+ 'MF' => 'de Zint-Määtes-Ensel',
+ 'MG' => 'Maddajaska',
+ 'MH' => 'de Machschall-Enselle',
+ 'MK' => 'Mazedoonije',
+ 'ML' => 'Maali',
+ 'MM' => 'Birma',
+ 'MN' => 'Mongjolei',
+ 'MO' => 'Makau',
+ 'MP' => 'de nöödlijje Marijanne-Enselle',
+ 'MQ' => 'Machtinik',
+ 'MR' => 'Mautitaanije',
+ 'MS' => 'Mongßerrat',
+ 'MT' => 'Malta',
+ 'MU' => 'Maurizijus',
+ 'MV' => 'Mallediive',
+ 'MW' => 'Malawi',
+ 'MX' => 'Mäxiko',
+ 'MY' => 'Malaisije',
+ 'MZ' => 'Mosambik',
+ 'NA' => 'Namiibije',
+ 'NC' => 'Neuschottland',
+ 'NE' => 'Nijer',
+ 'NF' => 'de Noofok-Ensel',
+ 'NG' => 'Nikaraagua',
+ 'NI' => 'Nikaraaguwa',
+ 'NL' => 'de Nederläng',
+ 'NO' => 'Norrweeje',
+ 'NP' => 'Nepall',
+ 'NR' => 'Nauru',
+ 'NU' => 'Niue',
+ 'NZ' => 'Neuseeland',
+ 'OM' => 'Oman',
+ 'PA' => 'Pannama',
+ 'PE' => 'Perruh',
+ 'PF' => 'Franzüüsesch Pollineesije',
+ 'PG' => 'Papuwa Neujineeja',
+ 'PH' => 'Fillipiine',
+ 'PK' => 'Pakistahn',
+ 'PL' => 'Pole',
+ 'PM' => 'Zint Pjäär un Mikelong',
+ 'PN' => 'de Pitkärn-Ensel',
+ 'PR' => 'Pochtoriko',
+ 'PS' => 'Palästina',
+ 'PT' => 'Pochtojall',
+ 'PW' => 'Pallau',
+ 'PY' => 'Parraguwai',
+ 'QA' => 'Kataa',
+ 'QO' => 'Ozejaanije ußerhallef',
+ 'RE' => 'Rehunjohn',
+ 'RO' => 'Romäänije',
+ 'RS' => 'Särbije',
+ 'RU' => 'Rußland',
+ 'RW' => 'Ruanda',
+ 'SA' => 'Saudi Arraabije',
+ 'SB' => 'de Solomone-Enselle',
+ 'SC' => 'de Seischälle',
+ 'SD' => 'Noodsudahn',
+ 'SE' => 'Schweede',
+ 'SG' => 'Singjapuur',
+ 'SH' => 'de Ensel Zint Hellena',
+ 'SI' => 'ẞloveenije',
+ 'SJ' => 'de Enselle Svalbard un Jan Mayen',
+ 'SK' => 'ẞlovakei',
+ 'SL' => 'Sjärra Lejone',
+ 'SM' => 'San-Marino',
+ 'SN' => 'der Sennejall',
+ 'SO' => 'Somaalije',
+ 'SR' => 'Sürinamm',
+ 'SS' => 'Södsudahn',
+ 'ST' => 'Zint Tommeh un Printschipe',
+ 'SV' => 'Äl Slavadoor',
+ 'SX' => 'Zint Maarten',
+ 'SY' => 'Sürije',
+ 'SZ' => 'ẞwaasiland',
+ 'TA' => 'Tristan da Cunja',
+ 'TC' => 'de Enselle Turks un Kaikos',
+ 'TD' => 'der Tschadd',
+ 'TF' => 'Franzüüsesche Södsee-Enselle',
+ 'TG' => 'Toojo',
+ 'TH' => 'Tailand',
+ 'TJ' => 'Tadschikistahn',
+ 'TK' => 'Tokelau',
+ 'TL' => 'Oß-Timor',
+ 'TM' => 'Turkmenistahn',
+ 'TN' => 'Tuneesije',
+ 'TO' => 'Tongga',
+ 'TR' => 'de Törkei',
+ 'TT' => 'Trinidad un Tobääjo',
+ 'TV' => 'Tuvalu',
+ 'TW' => 'Taiwan',
+ 'TZ' => 'Tansanija',
+ 'UA' => 'de Ukra’iine',
+ 'UG' => 'Ujanda',
+ 'UM' => 'de Vereineschte Schtaate vun Amärrika ier ußerhallef jelääje Enselsche',
+ 'US' => 'USA',
+ 'UY' => 'Urrujwai',
+ 'UZ' => 'Ußbeekistahn',
+ 'VA' => 'der Vattikahn',
+ 'VC' => 'Zint Vinzänz un de Jrenadines-Enselle',
+ 'VE' => 'Venezuela',
+ 'VG' => 'de brettesche Juffer-Enselle',
+ 'VI' => 'de ammärrikahnesche Juffer-Enselle',
+ 'VN' => 'Vijätnamm',
+ 'VU' => 'Vanuatu',
+ 'WF' => 'Wallis un Futuna',
+ 'WS' => 'Sammoha',
+ 'XK' => 'Kosovo',
+ 'YE' => 'Jämme',
+ 'YT' => 'Majott',
+ 'ZA' => 'de Republik Södaffrika',
+ 'ZM' => 'Sambija',
+ 'ZW' => 'Simbabwe',
+);
+
+$timeUnits = array(
+ 'day-one' => '{0} Dääsch',
+ 'day-other' => '{0} Dääsch',
+ 'day-zero' => '{0} Dääsch',
+ 'hour-one' => '{0} Schtunde',
+ 'hour-other' => '{0} Schtunde',
+ 'hour-zero' => '{0} Schtunde',
+ 'millisecond-one' => '{0} Millisekunde',
+ 'millisecond-other' => '{0} Millisekunde',
+ 'millisecond-zero' => '{0} Millisekunde',
+ 'minute-one' => '{0} Menutte',
+ 'minute-other' => '{0} Menutte',
+ 'minute-zero' => '{0} Menutte',
+ 'month-one' => '{0} Mohnde',
+ 'month-other' => '{0} Mohnde',
+ 'month-zero' => '{0} Mohnde',
+ 'second-one' => '{0} Sekunde',
+ 'second-other' => '{0} Sekunde',
+ 'second-zero' => '{0} Sekunde',
+ 'week-one' => '{0} Woche',
+ 'week-other' => '{0} Woche',
+ 'week-zero' => '{0} Woche',
+ 'year-one' => '{0} Johre',
+ 'year-other' => '{0} Johre',
+ 'year-zero' => '{0} Johre',
+);
diff --git a/MLEB/cldr/CldrNames/CldrNamesKw.php b/MLEB/cldr/CldrNames/CldrNamesKw.php
new file mode 100644
index 00000000..fabd39ad
--- /dev/null
+++ b/MLEB/cldr/CldrNames/CldrNamesKw.php
@@ -0,0 +1,41 @@
+<?php
+
+$languageNames = array(
+ 'ar' => 'Arabek',
+ 'cy' => 'Kembrek',
+ 'da' => 'Danek',
+ 'de' => 'Almaynek',
+ 'en' => 'Sowsnek',
+ 'es' => 'Spaynek',
+ 'eu' => 'Baskek',
+ 'fr' => 'Frenkek',
+ 'ga' => 'Wordhonek',
+ 'it' => 'Italek',
+ 'ja' => 'Japanek',
+ 'kw' => 'kernewek',
+ 'nl' => 'Iseldiryek',
+ 'pt' => 'Portyngalek',
+ 'pt-br' => 'Portyngalek Brasil',
+ 'ru' => 'Russek',
+ 'yue' => 'Kantonek',
+ 'zh' => 'Chinek',
+ 'zh-hans' => 'Chinek sempel',
+ 'zh-hant' => 'Chînek Tradycyonal',
+);
+
+$currencyNames = array(
+ 'EUR' => 'Euro',
+);
+
+$countryNames = array(
+ 'BR' => 'Brasil',
+ 'CN' => 'China',
+ 'DE' => 'Almayn',
+ 'FR' => 'Pow Frenk',
+ 'GB' => 'Rywvaneth Unys',
+ 'IN' => 'Eynda',
+ 'IT' => 'Itali',
+ 'JP' => 'Japan',
+ 'RU' => 'Russi',
+ 'US' => 'Statys Unys',
+);
diff --git a/MLEB/cldr/CldrNames/CldrNamesKy.php b/MLEB/cldr/CldrNames/CldrNamesKy.php
new file mode 100644
index 00000000..786078eb
--- /dev/null
+++ b/MLEB/cldr/CldrNames/CldrNamesKy.php
@@ -0,0 +1,836 @@
+<?php
+
+$languageNames = array(
+ 'ab' => 'абхазча',
+ 'af' => 'африкаанча',
+ 'agq' => 'агемче',
+ 'ak' => 'аканча',
+ 'am' => 'амхарча',
+ 'ar' => 'арабча',
+ 'ar-001' => 'азыркы адабий араб тилинде',
+ 'arn' => 'мапучеде',
+ 'as' => 'ассамча',
+ 'asa' => 'асуча',
+ 'az' => 'азербайжанча',
+ 'ba' => 'башкырча',
+ 'be' => 'беларусча',
+ 'bem' => 'бембача',
+ 'bez' => 'бенача',
+ 'bg' => 'болгарча',
+ 'bm' => 'бамбарада',
+ 'bn' => 'бангладешче',
+ 'bo' => 'тибетче',
+ 'br' => 'бретончо',
+ 'brx' => 'бододо',
+ 'bs' => 'боснийче',
+ 'ca' => 'каталанча',
+ 'cgg' => 'чигача',
+ 'chr' => 'черокиче',
+ 'ckb' => 'сорани курд',
+ 'co' => 'корсиканча',
+ 'cs' => 'чехче',
+ 'cy' => 'уелшче',
+ 'da' => 'датча',
+ 'dav' => 'таитача',
+ 'de' => 'немисче',
+ 'de-ch' => 'жогорку немисче (Швейцария)',
+ 'dje' => 'замрача',
+ 'dsb' => 'төмөнкү сорбианча',
+ 'dua' => 'дуалача',
+ 'dyo' => 'жола-фониче',
+ 'dz' => 'жонгуча',
+ 'ebu' => 'эмбуча',
+ 'ee' => 'эбече',
+ 'el' => 'грекче',
+ 'en' => 'англисче',
+ 'eo' => 'эсперанто',
+ 'es' => 'испанча',
+ 'es-es' => 'испанча (Европа)',
+ 'et' => 'эстончо',
+ 'eu' => 'баскча',
+ 'fa' => 'фарсыча',
+ 'fi' => 'финче',
+ 'fil' => 'филипино',
+ 'fj' => 'фижиче',
+ 'fo' => 'фароэче',
+ 'fr' => 'французча',
+ 'fy' => 'батыш фризче',
+ 'ga' => 'ирландча',
+ 'gag' => 'гагаузча',
+ 'gl' => 'галисияча',
+ 'gn' => 'гуараш',
+ 'gsw' => 'немисче (Швейцария)',
+ 'gu' => 'гужаратча',
+ 'guz' => 'гусиче',
+ 'gv' => 'манксыча',
+ 'ha' => 'хаусача',
+ 'haw' => 'гавайча',
+ 'he' => 'ивритте',
+ 'hi' => 'хиндиче',
+ 'hr' => 'хорватча',
+ 'hsb' => 'жогорку сорбианча',
+ 'ht' => 'гаитиче',
+ 'hu' => 'мажарча',
+ 'hy' => 'армянча',
+ 'id' => 'индонезче',
+ 'ig' => 'игбочо',
+ 'ii' => 'носуча',
+ 'is' => 'исландча',
+ 'it' => 'италиянча',
+ 'iu' => 'инуктитутта',
+ 'ja' => 'япончо',
+ 'jgo' => 'нгомбача',
+ 'jmc' => 'мачамече',
+ 'jv' => 'жаванизче',
+ 'ka' => 'грузинче',
+ 'kab' => 'кабылча',
+ 'kam' => 'камбача',
+ 'kde' => 'макондече',
+ 'kea' => 'кабувердиче',
+ 'khq' => 'койра чиниче',
+ 'ki' => 'кикуйиче',
+ 'kk' => 'казакча',
+ 'kl' => 'калаалисутча',
+ 'kln' => 'каленжиче',
+ 'km' => 'кмерче',
+ 'kn' => 'каннадача',
+ 'ko' => 'корейче',
+ 'koi' => 'коми-пермякча',
+ 'kok' => 'конканиче',
+ 'ks' => 'кашмирче',
+ 'ksb' => 'шамабалача',
+ 'ksf' => 'бафияча',
+ 'ku' => 'курдча',
+ 'kw' => 'корнишче',
+ 'ky' => 'кыргызча',
+ 'la' => 'латынча',
+ 'lag' => 'лангиче',
+ 'lb' => 'люксембургча',
+ 'lg' => 'гандача',
+ 'lkt' => 'лакотача',
+ 'ln' => 'лингалача',
+ 'lo' => 'лаочо',
+ 'lt' => 'литовчо',
+ 'lu' => 'луба-катангача',
+ 'luo' => 'луочо',
+ 'luy' => 'лухияча',
+ 'lv' => 'латышча',
+ 'mas' => 'масайча',
+ 'mer' => 'меруча',
+ 'mfe' => 'морисианча',
+ 'mg' => 'малагасча',
+ 'mgh' => 'макуача',
+ 'mgo' => 'метөчө',
+ 'mi' => 'маориче',
+ 'mk' => 'македончо',
+ 'ml' => 'малайаламча',
+ 'mn' => 'моңголчо',
+ 'moh' => 'мохаукча',
+ 'mr' => 'маратиче',
+ 'ms' => 'малайча',
+ 'mt' => 'малтизче',
+ 'mua' => 'мундангча',
+ 'my' => 'бурмача',
+ 'naq' => 'намача',
+ 'nb' => 'норвежче (Букмал)',
+ 'nd' => 'түндүк ндыбелче',
+ 'ne' => 'непалча',
+ 'nl' => 'голландча',
+ 'nl-be' => 'фламандча',
+ 'nmg' => 'квасиочо',
+ 'nn' => 'норвежче (Нинорск)',
+ 'no' => 'норвежче',
+ 'nqo' => 'нкочо',
+ 'nus' => 'нуерче',
+ 'nyn' => 'ныйанколчо',
+ 'om' => 'оромочо',
+ 'or' => 'орияча',
+ 'pa' => 'пунжабиче',
+ 'pl' => 'полякча',
+ 'ps' => 'пашточо',
+ 'pt' => 'португалча',
+ 'pt-pt' => 'португалча (Европа)',
+ 'qu' => 'кечуача',
+ 'quc' => 'кичече',
+ 'rm' => 'романшча',
+ 'rn' => 'рундиче',
+ 'ro' => 'румынча',
+ 'ro-md' => 'молдованча',
+ 'rof' => 'ромбочо',
+ 'ru' => 'орусча',
+ 'rw' => 'руандача',
+ 'rwk' => 'руача',
+ 'sa' => 'санскритче',
+ 'saq' => 'самбуруча',
+ 'sbp' => 'сангуча',
+ 'sd' => 'синдхиче',
+ 'se' => 'түндүк самиче',
+ 'seh' => 'сенача',
+ 'ses' => 'койраборо сенниче',
+ 'sg' => 'сангочо',
+ 'sh' => 'серб-хорват',
+ 'shi' => 'ташелитче',
+ 'si' => 'сингалача',
+ 'sk' => 'словакча',
+ 'sl' => 'словенче',
+ 'sma' => 'түштүк саамиче',
+ 'smj' => 'лөлө саамиче',
+ 'smn' => 'инари саамиче',
+ 'sms' => 'сколт саамиче',
+ 'sn' => 'шонача',
+ 'so' => 'сомаличе',
+ 'sq' => 'албанча',
+ 'sr' => 'сербче',
+ 'st' => 'сесото',
+ 'su' => 'сунданча',
+ 'sv' => 'шведче',
+ 'sw' => 'суахиличе',
+ 'swc' => 'конго суахаличе',
+ 'ta' => 'тамилче',
+ 'te' => 'телугуча',
+ 'teo' => 'тесочо',
+ 'tg' => 'тажикче',
+ 'th' => 'тайча',
+ 'ti' => 'тигриниача',
+ 'tk' => 'түркмөнчө',
+ 'tlh' => 'клингончо',
+ 'to' => 'тонгача',
+ 'tr' => 'түркчө',
+ 'tt' => 'татарча',
+ 'tw' => 'тви',
+ 'twq' => 'тасабакча',
+ 'tzm' => 'борбордук Атлас тамазитче',
+ 'ug' => 'уйгурча',
+ 'uk' => 'украинче',
+ 'und' => 'белгисиз тилде',
+ 'ur' => 'урдуча',
+ 'uz' => 'өзбекче',
+ 'vai' => 'вайиче',
+ 'vi' => 'вьетнамча',
+ 'vun' => 'вунжочо',
+ 'wo' => 'уолофчо',
+ 'xh' => 'косача',
+ 'xog' => 'согача',
+ 'yi' => 'идишче',
+ 'yo' => 'йорубача',
+ 'zgh' => 'марокко тамазигт адабий тилинде',
+ 'zh' => 'кытайча',
+ 'zh-hans' => 'кытайча (жөнөкөйлөштүрүлгөн)',
+ 'zh-hant' => 'кытайча (салттуу)',
+ 'zu' => 'зулуча',
+ 'zxx' => 'тилдик мазмун жок',
+);
+
+$currencyNames = array(
+ 'AED' => 'Бириккен Араб Эмираттары дирхамы',
+ 'AFN' => 'Афганстан афганиси',
+ 'ALL' => 'албан леги',
+ 'AMD' => 'Армения драмы',
+ 'ANG' => 'нидерланд-антил гулдени',
+ 'AOA' => 'Ангола кванзасы',
+ 'ARS' => 'аргентина песосу',
+ 'AUD' => 'Австралия доллары',
+ 'AWG' => 'аруба флорини',
+ 'AZN' => 'Азербайжан манаты',
+ 'BAM' => 'босния-герцоговина жүгүртөлмөлүү маркасы',
+ 'BBD' => 'барбадос доллары',
+ 'BDT' => 'Бангладеш такасы',
+ 'BGN' => 'болгар левиси',
+ 'BHD' => 'Бахрейн динары',
+ 'BIF' => 'Бурунди франкы',
+ 'BMD' => 'бермуд доллары',
+ 'BND' => 'Бруней доллары',
+ 'BOB' => 'боливия боливианосу',
+ 'BRL' => 'бразилия реалы',
+ 'BSD' => 'багама доллары',
+ 'BTN' => 'Бутан нгултруму',
+ 'BWP' => 'Ботсвана пуласы',
+ 'BYR' => 'беларусь рублу',
+ 'BZD' => 'белиз доллары',
+ 'CAD' => 'канада доллары',
+ 'CDF' => 'Конго франкы',
+ 'CHF' => 'швейцария франкы',
+ 'CLP' => 'чили песосу',
+ 'CNY' => 'Кытай юаны',
+ 'COP' => 'колумбия песосу',
+ 'CRC' => 'коста-рика колону',
+ 'CUC' => 'куба жүгүртүлмөлүү песосу',
+ 'CUP' => 'куба песосу',
+ 'CVE' => 'Кабо-Верде эскудосу',
+ 'CZK' => 'чех кронасы',
+ 'DJF' => 'Жибути франкы',
+ 'DKK' => 'дания крону',
+ 'DOP' => 'доминикан песосу',
+ 'DZD' => 'Алжир динары',
+ 'EGP' => 'Мисир фунту',
+ 'ERN' => 'Эритреа накфасы',
+ 'ETB' => 'Эфиопия бирри',
+ 'EUR' => 'Евро',
+ 'FJD' => 'Фижи доллары',
+ 'FKP' => 'фолкленд аралдарынын фунту',
+ 'GBP' => 'британия фунт стерлинги',
+ 'GEL' => 'Грузия лариси',
+ 'GHS' => 'Гана седиси',
+ 'GIP' => 'гибралтар фунту',
+ 'GMD' => 'Гамбия даласиси',
+ 'GNF' => 'Гине франкы',
+ 'GTQ' => 'гватемала кетсалы',
+ 'GYD' => 'гуйана доллары',
+ 'HKD' => 'Гоӊ Коӊ доллары',
+ 'HNL' => 'гондурас лемпирасы',
+ 'HRK' => 'хорват кунасы',
+ 'HTG' => 'гаити гурдусу',
+ 'HUF' => 'венгр форинти',
+ 'IDR' => 'Индонезия рупийасы',
+ 'ILS' => 'Израил жаӊы шегели',
+ 'INR' => 'Индия руписи',
+ 'IQD' => 'Ирак динары',
+ 'IRR' => 'Иран риалы',
+ 'ISK' => 'исландия крону',
+ 'JMD' => 'ямайка доллары',
+ 'JOD' => 'Йордания динары',
+ 'JPY' => 'Жапан йени',
+ 'KES' => 'Кения шиллинги',
+ 'KGS' => 'Кыргызстан сому',
+ 'KHR' => 'Камбожа риели',
+ 'KMF' => 'Коморос франкы',
+ 'KPW' => 'Түндүк Корея уону',
+ 'KRW' => 'Түштүк Корея уону',
+ 'KWD' => 'Кувейт динары',
+ 'KYD' => 'кайман доллары',
+ 'KZT' => 'Казакстан теӊгеси',
+ 'LAK' => 'Лаос киби',
+ 'LBP' => 'Ливан фунту',
+ 'LKR' => 'Шри Ланка руписи',
+ 'LRD' => 'Либерия доллары',
+ 'LTL' => 'литва литасы',
+ 'LVL' => 'латвия латы',
+ 'LYD' => 'Ливия динары',
+ 'MAD' => 'Марокко дирхамы',
+ 'MDL' => 'молдован лейи',
+ 'MGA' => 'Мадагаскар ариариси',
+ 'MKD' => 'македон денары',
+ 'MMK' => 'Мйанмар кйаты',
+ 'MNT' => 'Монгол тугриги',
+ 'MOP' => 'Макау патакасы',
+ 'MRO' => 'Мавритания угиясы',
+ 'MUR' => 'Мавританий руписи',
+ 'MVR' => 'Малдив Руфийасы',
+ 'MWK' => 'Малави квачасы',
+ 'MXN' => 'мексика песосу',
+ 'MYR' => 'Малайзия ринггити',
+ 'MZN' => 'Мозамбик метикалы',
+ 'NAD' => 'Намибия доллары',
+ 'NGN' => 'Нигерия найрасы',
+ 'NIO' => 'никарагуа кордобасы',
+ 'NOK' => 'норвегия крону',
+ 'NPR' => 'Непал руписи',
+ 'NZD' => 'Жаӊы Зеландия доллары',
+ 'OMR' => 'Оман риалы',
+ 'PAB' => 'панама балбоасы',
+ 'PEN' => 'перу нуэво солу',
+ 'PGK' => 'Папуа Жаӊы Гине кинасы',
+ 'PHP' => 'Филиппин песосу',
+ 'PKR' => 'Пакистан руписи',
+ 'PLN' => 'польша злотыйы',
+ 'PYG' => 'парагвай гуараниси',
+ 'QAR' => 'Катар риалы',
+ 'RON' => 'румын лейи',
+ 'RSD' => 'серб динары',
+ 'RUB' => 'орус рублу',
+ 'RWF' => 'Руанда франкы',
+ 'SAR' => 'Сауд риалы',
+ 'SBD' => 'Соломон доллары',
+ 'SCR' => 'Сейшел руписи',
+ 'SDG' => 'Судан фунту',
+ 'SEK' => 'швеция крону',
+ 'SGD' => 'Сингапур доллары',
+ 'SHP' => 'Ыйык Елена фунту',
+ 'SLL' => 'Сиерра-Леоне леонеси',
+ 'SOS' => 'Сомали шиллинги',
+ 'SRD' => 'суринам доллары',
+ 'SSP' => 'Түштүк Судан фунту',
+ 'STD' => 'Сао Томе жана Принсипе добрасы',
+ 'SYP' => 'Сирия фунту',
+ 'SZL' => 'Свази лилангени',
+ 'THB' => 'Тай баты',
+ 'TJS' => 'Тажикстан сомониси',
+ 'TMT' => 'Түркмөнстан манаты',
+ 'TND' => 'Тунис динары',
+ 'TOP' => 'Тонга паангасы',
+ 'TRY' => 'Түркия лирасы',
+ 'TTD' => 'тринидад жана тобаго доллары',
+ 'TWD' => 'Тайвань жаӊы доллары',
+ 'TZS' => 'Танзания шиллинги',
+ 'UAH' => 'украин гривени',
+ 'UGX' => 'Уганда шиллинги',
+ 'USD' => 'АКШ доллары',
+ 'UYU' => 'уругвай песосу',
+ 'UZS' => 'Өзбекстан сому',
+ 'VEF' => 'венесуэла боливары',
+ 'VND' => 'Вьетнам доӊу',
+ 'VUV' => 'Вануату ватусу',
+ 'WST' => 'Самоа таласы',
+ 'XAF' => 'КФА ВЕАС франкы',
+ 'XCD' => 'чыгыш кариб доллары',
+ 'XOF' => 'КФА ВСЕАО франкы',
+ 'XPF' => 'КФП франкы',
+ 'XXX' => 'Белгисиз акча',
+ 'YER' => 'Йемен риалы',
+ 'ZAR' => 'Түштүк Африка ранды',
+ 'ZMW' => 'Замбия квачасы',
+);
+
+$currencySymbols = array(
+ 'ARS' => 'ARS',
+ 'AUD' => 'AUD',
+ 'BAM' => 'BAM',
+ 'BBD' => 'BBD',
+ 'BGN' => 'BGN',
+ 'BMD' => 'BMD',
+ 'BOB' => 'BOB',
+ 'BRL' => 'BRL',
+ 'BYR' => 'BYR',
+ 'BZD' => 'BZD',
+ 'CAD' => 'CAD',
+ 'CHF' => 'CHF',
+ 'CLP' => 'CLP',
+ 'CNY' => 'CN¥',
+ 'COP' => 'COP',
+ 'CVE' => 'CVE',
+ 'CZK' => 'CZK',
+ 'DKK' => 'DKK',
+ 'EUR' => '€',
+ 'FKP' => 'FKP',
+ 'GBP' => 'GBP',
+ 'GHS' => 'GHS',
+ 'GIP' => 'GIP',
+ 'GMD' => 'GMD',
+ 'GNF' => 'GNF',
+ 'GTQ' => 'GTQ',
+ 'GYD' => 'GYD',
+ 'HKD' => 'HKD',
+ 'HNL' => 'HNL',
+ 'HRK' => 'HRK',
+ 'HUF' => 'HUF',
+ 'ILS' => 'ILS',
+ 'INR' => 'INR',
+ 'ISK' => 'ISK',
+ 'JPY' => 'JP¥',
+ 'KGS' => 'сом',
+ 'KRW' => 'KRW',
+ 'LRD' => 'LRD',
+ 'LTL' => 'LTL',
+ 'LVL' => 'LVL',
+ 'MKD' => 'MKD',
+ 'MRO' => 'MRO',
+ 'MXN' => 'MXN',
+ 'NGN' => 'NGN',
+ 'NOK' => 'NOK',
+ 'NZD' => 'NZD',
+ 'PAB' => 'PAB',
+ 'PEN' => 'PEN',
+ 'PGK' => 'PGK',
+ 'PLN' => 'PLN',
+ 'PYG' => 'PYG',
+ 'RON' => 'RON',
+ 'RSD' => 'RSD',
+ 'RUB' => 'RUB',
+ 'SBD' => 'SBD',
+ 'SEK' => 'SEK',
+ 'SHP' => 'SHP',
+ 'SLL' => 'SLL',
+ 'SRD' => 'SRD',
+ 'THB' => '฿',
+ 'TTD' => 'TTD',
+ 'TWD' => 'TWD',
+ 'UAH' => 'UAH',
+ 'USD' => 'USD',
+ 'UYU' => 'UYU',
+ 'VEF' => 'VEF',
+ 'VND' => '₫',
+ 'XAF' => 'FCFA',
+ 'XCD' => 'XCD',
+ 'XOF' => 'CFA',
+ 'XPF' => 'CFPF',
+);
+
+$countryNames = array(
+ 'AC' => 'Ассеншин аралы',
+ 'AD' => 'Андорра',
+ 'AE' => 'Бириккен Араб Эмираттары',
+ 'AF' => 'Афганистан',
+ 'AG' => 'Антигуа жана Барбуда',
+ 'AI' => 'Ангуила',
+ 'AL' => 'Албания',
+ 'AM' => 'Армения',
+ 'AO' => 'Ангола',
+ 'AQ' => 'Антарктика',
+ 'AR' => 'Аргентина',
+ 'AS' => 'Америка Самоасы',
+ 'AT' => 'Австрия',
+ 'AU' => 'Австралия',
+ 'AW' => 'Аруба',
+ 'AX' => 'Аланд аралдары',
+ 'AZ' => 'Азербайжан',
+ 'BA' => 'Босния жана Герцеговина',
+ 'BB' => 'Барбадос',
+ 'BD' => 'Бангладеш',
+ 'BE' => 'Бельгия',
+ 'BF' => 'Буркина-Фасо',
+ 'BG' => 'Болгария',
+ 'BH' => 'Бахрейн',
+ 'BI' => 'Бурунди',
+ 'BJ' => 'Бенин',
+ 'BL' => 'Сент Бартелеми',
+ 'BM' => 'Бермуд аралдары',
+ 'BN' => 'Бруней',
+ 'BO' => 'Боливия',
+ 'BQ' => 'Кариб Нидерланддары',
+ 'BR' => 'Бразилия',
+ 'BS' => 'Багам аралдары',
+ 'BT' => 'Бутан',
+ 'BV' => 'Буве аралдары',
+ 'BW' => 'Ботсвана',
+ 'BY' => 'Беларусь',
+ 'BZ' => 'Белиз',
+ 'CA' => 'Канада',
+ 'CC' => 'Кокос (Килиӊ) аралдары',
+ 'CD' => 'Конго-Киншаса',
+ 'CF' => 'Борбордук Африка Республикасы',
+ 'CG' => 'Конго-Браззавил',
+ 'CH' => 'Швейцария',
+ 'CI' => 'Кот-д’Ивуар',
+ 'CK' => 'Кук аралдары',
+ 'CL' => 'Чили',
+ 'CM' => 'Камерун',
+ 'CN' => 'Кытай',
+ 'CO' => 'Колумбия',
+ 'CP' => 'Клиппертон аралы',
+ 'CR' => 'Коста-Рика',
+ 'CU' => 'Куба',
+ 'CV' => 'Капе Верде',
+ 'CW' => 'Кюрасао',
+ 'CX' => 'Крисмас аралы',
+ 'CY' => 'Кипр',
+ 'CZ' => 'Чехия',
+ 'DE' => 'Германия',
+ 'DG' => 'Диего Гарсия',
+ 'DJ' => 'Джибути',
+ 'DK' => 'Дания',
+ 'DM' => 'Доминика',
+ 'DO' => 'Доминика Республикасы',
+ 'DZ' => 'Алжир',
+ 'EA' => 'Сеута жана Мелилла',
+ 'EC' => 'Эквадор',
+ 'EE' => 'Эстония',
+ 'EG' => 'Египет',
+ 'EH' => 'Батыш Сахара',
+ 'ER' => 'Эритрея',
+ 'ES' => 'Испания',
+ 'ET' => 'Эфиопия',
+ 'EU' => 'Европа Биримдиги',
+ 'FI' => 'Финляндия',
+ 'FJ' => 'Фиджи',
+ 'FK' => 'Фолклэнд аралдары',
+ 'FM' => 'Микронезия',
+ 'FO' => 'Фарер аралдары',
+ 'FR' => 'Франция',
+ 'GA' => 'Габон',
+ 'GB' => 'УБ',
+ 'GD' => 'Гренада',
+ 'GE' => 'Грузия',
+ 'GF' => 'Гвиана (Франция)',
+ 'GG' => 'Гернси',
+ 'GH' => 'Гана',
+ 'GI' => 'Гибралтар',
+ 'GL' => 'Гренландия',
+ 'GM' => 'Гамбия',
+ 'GN' => 'Гвинея',
+ 'GP' => 'Гваделупа',
+ 'GQ' => 'Экваториалдык Гвинея',
+ 'GR' => 'Греция',
+ 'GS' => 'Түштүк Жоржия жана Түштүк Сэндвич аралдары',
+ 'GT' => 'Гватемала',
+ 'GU' => 'Гуам',
+ 'GW' => 'Гвинея-Бисау',
+ 'GY' => 'Гайана',
+ 'HK' => 'Гонконг',
+ 'HM' => 'Херд жана Макдоналд аралдары',
+ 'HN' => 'Гондурас',
+ 'HR' => 'Хорватия',
+ 'HT' => 'Гаити',
+ 'HU' => 'Венгрия',
+ 'IC' => 'Канар аралдары',
+ 'ID' => 'Индонезия',
+ 'IE' => 'Ирландия',
+ 'IL' => 'Израиль',
+ 'IM' => 'Мэн аралы',
+ 'IN' => 'Индия',
+ 'IO' => 'Британиянын Индия океанындагы аймагы',
+ 'IQ' => 'Ирак',
+ 'IR' => 'Иран',
+ 'IS' => 'Исландия',
+ 'IT' => 'Италия',
+ 'JE' => 'Жерси',
+ 'JM' => 'Ямайка',
+ 'JO' => 'Иордания',
+ 'JP' => 'Япония',
+ 'KE' => 'Кения',
+ 'KG' => 'Кыргызстан',
+ 'KH' => 'Камбоджа',
+ 'KI' => 'Кирибати',
+ 'KM' => 'Коморос',
+ 'KN' => 'Сент-Китс жана Невис',
+ 'KP' => 'Түндүк Корея',
+ 'KR' => 'Түштүк Корея',
+ 'KW' => 'Кувейт',
+ 'KY' => 'Кайман Аралдары',
+ 'KZ' => 'Казакстан',
+ 'LA' => 'Лаос',
+ 'LB' => 'Ливан',
+ 'LC' => 'Сент-Люсия',
+ 'LI' => 'Лихтенштейн',
+ 'LK' => 'Шри-Ланка',
+ 'LR' => 'Либерия',
+ 'LS' => 'Лесото',
+ 'LT' => 'Литва',
+ 'LU' => 'Люксембург',
+ 'LV' => 'Латвия',
+ 'LY' => 'Ливия',
+ 'MA' => 'Марокко',
+ 'MC' => 'Монако',
+ 'MD' => 'Молдова',
+ 'ME' => 'Черногория',
+ 'MF' => 'Сент-Мартин',
+ 'MG' => 'Мадагаскар',
+ 'MH' => 'Маршалл аралдары',
+ 'MK' => 'Македония',
+ 'ML' => 'Мали',
+ 'MM' => 'Мьянма (Бирма)',
+ 'MN' => 'Монголия',
+ 'MO' => 'Макау',
+ 'MP' => 'Түндүк Мариана аралдары',
+ 'MQ' => 'Мартиника',
+ 'MR' => 'Мавритания',
+ 'MS' => 'Монсеррат',
+ 'MT' => 'Мальта',
+ 'MU' => 'Маврикий',
+ 'MV' => 'Малдив аралдары',
+ 'MW' => 'Малави',
+ 'MX' => 'Мексика',
+ 'MY' => 'Малайзия',
+ 'MZ' => 'Мозамбик',
+ 'NA' => 'Намибия',
+ 'NC' => 'Жаӊы Каледония',
+ 'NE' => 'Нигер',
+ 'NF' => 'Норфолк аралы',
+ 'NG' => 'Нигерия',
+ 'NI' => 'Никарагуа',
+ 'NL' => 'Нидерланддар',
+ 'NO' => 'Норвегия',
+ 'NP' => 'Непал',
+ 'NR' => 'Науру',
+ 'NU' => 'Ниуэ',
+ 'NZ' => 'Жаӊы Зеландия',
+ 'OM' => 'Оман',
+ 'PA' => 'Панама',
+ 'PE' => 'Перу',
+ 'PF' => 'Француз Полинезиясы',
+ 'PG' => 'Папуа Жаңы-Гвинея',
+ 'PH' => 'Филлипин',
+ 'PK' => 'Пакистан',
+ 'PL' => 'Польша',
+ 'PM' => 'Сен-Пьер жана Микелон',
+ 'PN' => 'Питкэрн аралдары',
+ 'PR' => 'Пуэрто-Рико',
+ 'PS' => 'Палестина',
+ 'PT' => 'Португалия',
+ 'PW' => 'Палау',
+ 'PY' => 'Парагвай',
+ 'QA' => 'Катар',
+ 'QO' => 'Алыскы Океания',
+ 'RE' => 'Реюнион',
+ 'RO' => 'Румыния',
+ 'RS' => 'Сербия',
+ 'RU' => 'Россия',
+ 'RW' => 'Руанда',
+ 'SA' => 'Сауд Арабиясы',
+ 'SB' => 'Соломон аралдары',
+ 'SC' => 'Сейшелдер',
+ 'SD' => 'Судан',
+ 'SE' => 'Швеция',
+ 'SG' => 'Сингапур',
+ 'SH' => 'Ыйык Елена',
+ 'SI' => 'Словения',
+ 'SJ' => 'Свалбард жана Жан Майен',
+ 'SK' => 'Словакия',
+ 'SL' => 'Сьерра-Леоне',
+ 'SM' => 'Сан Марино',
+ 'SN' => 'Сенегал',
+ 'SO' => 'Сомали',
+ 'SR' => 'Суринаме',
+ 'SS' => 'Түштүк Судан',
+ 'ST' => 'Сан-Томе жана Принсипи',
+ 'SV' => 'Эл Салвадор',
+ 'SX' => 'Синт Маартен',
+ 'SY' => 'Сирия',
+ 'SZ' => 'Свазиленд',
+ 'TA' => 'Тристан да Кунья',
+ 'TC' => 'Түркс жана Кайкос аралдары',
+ 'TD' => 'Чад',
+ 'TF' => 'Франциянын Түштүктөгү аймактары',
+ 'TG' => 'Того',
+ 'TH' => 'Таиланд',
+ 'TJ' => 'Тажикстан',
+ 'TK' => 'Токелау',
+ 'TL' => 'Тимор-Лесте',
+ 'TM' => 'Түркмөнстан',
+ 'TN' => 'Тунис',
+ 'TO' => 'Тонга',
+ 'TR' => 'Түркия',
+ 'TT' => 'Тринидад жана Тобаго',
+ 'TV' => 'Тувалу',
+ 'TW' => 'Тайвань',
+ 'TZ' => 'Танзания',
+ 'UA' => 'Украина',
+ 'UG' => 'Уганда',
+ 'UM' => 'АКШнын сырткы аралдары',
+ 'US' => 'АКШ',
+ 'UY' => 'Уругвай',
+ 'UZ' => 'Өзбекстан',
+ 'VA' => 'Ватикан',
+ 'VC' => 'Сент-Винсент жана Гренадиналар',
+ 'VE' => 'Венесуэла',
+ 'VG' => 'Виргин аралдары (Британия)',
+ 'VI' => 'Виргин аралдары (АКШ)',
+ 'VN' => 'Вьетнам',
+ 'VU' => 'Вануату',
+ 'WF' => 'Уоллис жана Футуна',
+ 'WS' => 'Самоа',
+ 'XK' => 'Косово',
+ 'YE' => 'Йемен',
+ 'YT' => 'Майотта',
+ 'ZA' => 'Түштүк Африка Республикасы',
+ 'ZM' => 'Замбия',
+ 'ZW' => 'Зимбабве',
+);
+
+$timeUnits = array(
+ 'day-future-one' => '{0} күндөн кийин',
+ 'day-future-other' => '{0} күндөн кийин',
+ 'day-narrow-future-one' => '+{0} күн',
+ 'day-narrow-future-other' => '+{0} күн',
+ 'day-narrow-past-one' => '-{0} күн',
+ 'day-narrow-past-other' => '-{0} күн',
+ 'day-one' => '{0} күн',
+ 'day-other' => '{0} күн',
+ 'day-past-one' => '{0} күн мурун',
+ 'day-past-other' => '{0} күн мурун',
+ 'day-short-future-one' => '{0} күндөн кийин',
+ 'day-short-future-other' => '{0} күндөн кийин',
+ 'day-short-past-one' => '{0} күн мурун',
+ 'day-short-past-other' => '{0} күн мурун',
+ 'hour-future-one' => '{0} сааттан кийин',
+ 'hour-future-other' => '{0} сааттан кийин',
+ 'hour-narrow-future-one' => '+{0} с.',
+ 'hour-narrow-future-other' => '+{0} с.',
+ 'hour-narrow-past-one' => '-{0} с.',
+ 'hour-narrow-past-other' => '-{0} с.',
+ 'hour-one' => '{0} саат',
+ 'hour-other' => '{0} саат',
+ 'hour-past-one' => '{0} саат мурун',
+ 'hour-past-other' => '{0} саат мурун',
+ 'hour-short-future-one' => '{0} саат. кийин',
+ 'hour-short-future-other' => '{0} саат. кийин',
+ 'hour-short-past-one' => '{0} саат. мурун',
+ 'hour-short-past-other' => '{0} саат. мурун',
+ 'microsecond-one' => '{0} микросекунд',
+ 'microsecond-other' => '{0} микросекунд',
+ 'millisecond-one' => '{0} миллисекунд',
+ 'millisecond-other' => '{0} миллисекунд',
+ 'minute-future-one' => '{0} мүнөттөн кийин',
+ 'minute-future-other' => '{0} мүнөттөн кийин',
+ 'minute-narrow-future-one' => '+{0} м.',
+ 'minute-narrow-future-other' => '-{0} м.',
+ 'minute-narrow-past-one' => '-{0} м.',
+ 'minute-narrow-past-other' => '-{0} м.',
+ 'minute-one' => '{0} мүнөт',
+ 'minute-other' => '{0} мүнөт',
+ 'minute-past-one' => '{0} мүнөт мурун',
+ 'minute-past-other' => '{0} мүнөт мурун',
+ 'minute-short-future-one' => '{0} мүн. кийин',
+ 'minute-short-future-other' => '{0} мүн. кийин',
+ 'minute-short-past-one' => '{0} мүн. мурун',
+ 'minute-short-past-other' => '{0} мүн. мурун',
+ 'month-future-one' => '{0} айдан кийин',
+ 'month-future-other' => '{0} айдан кийин',
+ 'month-narrow-future-one' => '+{0} ай',
+ 'month-narrow-future-other' => '+{0} ай',
+ 'month-narrow-past-one' => '-{0} ай',
+ 'month-narrow-past-other' => '-{0} ай',
+ 'month-one' => '{0} ай',
+ 'month-other' => '{0} ай',
+ 'month-past-one' => '{0} ай мурун',
+ 'month-past-other' => '{0} ай мурун',
+ 'month-short-future-one' => '{0} айдан кийин',
+ 'month-short-future-other' => '{0} айдан кийин',
+ 'month-short-past-one' => '{0} ай мурун',
+ 'month-short-past-other' => '{0} ай мурун',
+ 'nanosecond-one' => '{0} наносекунд',
+ 'nanosecond-other' => '{0} наносекунд',
+ 'quarter-future-one' => 'кийинки {0} чейректе',
+ 'quarter-future-other' => 'кийинки {0} чейректе',
+ 'quarter-narrow-future-one' => '+{0} чейр.',
+ 'quarter-narrow-future-other' => '+{0} чейр.',
+ 'quarter-narrow-past-one' => '-{0} чейр.',
+ 'quarter-narrow-past-other' => '-{0} чейр.',
+ 'quarter-past-one' => '{0} чейрек мурун',
+ 'quarter-past-other' => '{0} чейрек мурун',
+ 'quarter-short-future-one' => 'кийинки {0} чейр.',
+ 'quarter-short-future-other' => 'кийинки {0} чейр.',
+ 'quarter-short-past-one' => '{0} чейр. мурун',
+ 'quarter-short-past-other' => '{0} чейр. мурун',
+ 'second-future-one' => '{0} секунддан кийин',
+ 'second-future-other' => '{0} секунддан кийин',
+ 'second-narrow-future-one' => '+{0} сек.',
+ 'second-narrow-future-other' => '+{0} сек.',
+ 'second-narrow-past-one' => '-{0} сек. мурун',
+ 'second-narrow-past-other' => '-{0} сек. мурун',
+ 'second-one' => '{0} секунд',
+ 'second-other' => '{0} секунд',
+ 'second-past-one' => '{0} секунд мурун',
+ 'second-past-other' => '{0} секунд мурун',
+ 'second-short-future-one' => '{0} сек. кийин',
+ 'second-short-future-other' => '{0} сек. кийин',
+ 'second-short-past-one' => '{0} сек. мурун',
+ 'second-short-past-other' => '{0} сек. мурун',
+ 'week-future-one' => '{0} аптадан кийин',
+ 'week-future-other' => '{0} аптадан кийин',
+ 'week-narrow-future-one' => '+{0} апт.',
+ 'week-narrow-future-other' => '+{0} апт.',
+ 'week-narrow-past-one' => '-{0} апт.',
+ 'week-narrow-past-other' => '-{0} апт.',
+ 'week-one' => '{0} апта',
+ 'week-other' => '{0} апта',
+ 'week-past-one' => '{0} апта мурун',
+ 'week-past-other' => '{0} апта мурун',
+ 'week-short-future-one' => '{0} апт. кийин',
+ 'week-short-future-other' => '{0} апт. кийин',
+ 'week-short-past-one' => '{0} апт. мурун',
+ 'week-short-past-other' => '{0} апт. мурун',
+ 'year-future-one' => '{0} жылдан кийин',
+ 'year-future-other' => '{0} жылдан кийин',
+ 'year-narrow-future-one' => '{0} жыл. кийин',
+ 'year-narrow-future-other' => '{0} жыл. кийин',
+ 'year-narrow-past-one' => '{0} жыл мурун',
+ 'year-narrow-past-other' => '{0} жыл мурун',
+ 'year-one' => '{0} жыл',
+ 'year-other' => '{0} жыл',
+ 'year-past-one' => '{0} жыл мурун',
+ 'year-past-other' => '{0} жыл мурун',
+ 'year-short-future-one' => '{0} жыл. кийин',
+ 'year-short-future-other' => '{0} жыл. кийин',
+ 'year-short-past-one' => '{0} жыл мурун',
+ 'year-short-past-other' => '{0} жыл мурун',
+);
diff --git a/MLEB/cldr/CldrNames/CldrNamesLb.php b/MLEB/cldr/CldrNames/CldrNamesLb.php
new file mode 100644
index 00000000..ea05a85a
--- /dev/null
+++ b/MLEB/cldr/CldrNames/CldrNamesLb.php
@@ -0,0 +1,1314 @@
+<?php
+
+$languageNames = array(
+ 'aa' => 'Afar',
+ 'ab' => 'Abchasesch',
+ 'ace' => 'Aceh-Sprooch',
+ 'ach' => 'Acholi-Sprooch',
+ 'ada' => 'Adangme',
+ 'ady' => 'Adygéiesch',
+ 'ae' => 'Avestesch',
+ 'aeb' => 'Tunesescht Arabesch',
+ 'af' => 'Afrikaans',
+ 'afh' => 'Afrihili',
+ 'agq' => 'Aghem',
+ 'ain' => 'Ainu-Sprooch',
+ 'ak' => 'Akan',
+ 'akk' => 'Akkadesch',
+ 'akz' => 'Alabama',
+ 'ale' => 'Aleutesch',
+ 'aln' => 'Gegesch',
+ 'alt' => 'Süd-Alaesch',
+ 'am' => 'Amharesch',
+ 'an' => 'Aragonesesch',
+ 'ang' => 'Alenglesch',
+ 'anp' => 'Angika',
+ 'ar' => 'Arabesch',
+ 'ar-001' => 'Modernt Héicharabesch',
+ 'arc' => 'Aramäesch',
+ 'arn' => 'Araukanesch',
+ 'aro' => 'Araona',
+ 'arp' => 'Arapaho-Sprooch',
+ 'arq' => 'Algerescht Arabesch',
+ 'arw' => 'Arawak-Sprooch',
+ 'ary' => 'Marokkanescht Arabesch',
+ 'arz' => 'Egyptescht Arabesch',
+ 'as' => 'Assamesesch',
+ 'asa' => 'Asu (Tanzania)',
+ 'ase' => 'Amerikanesch Zeechesprooch',
+ 'ast' => 'Asturianesch',
+ 'av' => 'Awaresch',
+ 'avk' => 'Kotava',
+ 'awa' => 'Awadhi',
+ 'ay' => 'Aymara',
+ 'az' => 'Aserbaidschanesch',
+ 'azb' => 'Süd-Aserbaidschanesch',
+ 'ba' => 'Baschkiresch',
+ 'bal' => 'Belutschesch',
+ 'ban' => 'Balinesesch',
+ 'bar' => 'Bairesch',
+ 'bas' => 'Basaa-Sprooch',
+ 'bax' => 'Bamun',
+ 'bbc' => 'Batak Toba',
+ 'bbj' => 'Ghomálá’',
+ 'be' => 'Wäissrussesch',
+ 'bej' => 'Bedauye',
+ 'bem' => 'Bemba-Sprooch',
+ 'bew' => 'Betawi',
+ 'bez' => 'Bena',
+ 'bfd' => 'Bafut',
+ 'bfq' => 'Badaga',
+ 'bg' => 'Bulgaresch',
+ 'bho' => 'Bhodschpuri',
+ 'bi' => 'Bislama',
+ 'bik' => 'Bikol-Sprooch',
+ 'bin' => 'Bini-Sprooch',
+ 'bjn' => 'Banjaresesch',
+ 'bkm' => 'Kom',
+ 'bla' => 'Blackfoot-Sprooch',
+ 'bm' => 'Bambara-Sprooch',
+ 'bn' => 'Bengalesch',
+ 'bo' => 'Tibetesch',
+ 'bpy' => 'Bishnupriya',
+ 'bqi' => 'Bachtiaresch',
+ 'br' => 'Bretonesch',
+ 'bra' => 'Braj-Bhakha',
+ 'brh' => 'Brahui',
+ 'brx' => 'Bodo',
+ 'bs' => 'Bosnesch',
+ 'bss' => 'Akoose',
+ 'bua' => 'Burjatesch',
+ 'bug' => 'Buginesesch',
+ 'bum' => 'Bulu',
+ 'byn' => 'Blin',
+ 'byv' => 'Medumba',
+ 'ca' => 'Katalanesch',
+ 'cad' => 'Caddo',
+ 'car' => 'Karibesch',
+ 'cay' => 'Cayuga',
+ 'cch' => 'Atsam',
+ 'ce' => 'Tschetschenesch',
+ 'ceb' => 'Cebuano',
+ 'cgg' => 'Kiga',
+ 'ch' => 'Chamorro-Sprooch',
+ 'chb' => 'Chibcha-Sprooch',
+ 'chg' => 'Tschagataesch',
+ 'chk' => 'Trukesesch',
+ 'chm' => 'Mari',
+ 'chn' => 'Chinook',
+ 'cho' => 'Choctaw',
+ 'chp' => 'Chipewyan',
+ 'chr' => 'Cherokee',
+ 'chy' => 'Cheyenne',
+ 'ckb' => 'Sorani',
+ 'co' => 'Korsesch',
+ 'cop' => 'Koptesch',
+ 'cps' => 'Capiznon',
+ 'cr' => 'Cree',
+ 'crh' => 'Krimtataresch',
+ 'cs' => 'Tschechesch',
+ 'csb' => 'Kaschubesch',
+ 'cu' => 'Kiercheslawesch',
+ 'cv' => 'Tschuwaschesch',
+ 'cy' => 'Walisesch',
+ 'da' => 'Dänesch',
+ 'dak' => 'Dakota-Sprooch',
+ 'dar' => 'Darginesch',
+ 'dav' => 'Taita',
+ 'de' => 'Däitsch',
+ 'de-at' => 'Éisträichescht Däitsch',
+ 'de-ch' => 'Schwäizer Héichdäitsch',
+ 'del' => 'Delaware-Sprooch',
+ 'den' => 'Slave',
+ 'dgr' => 'Dogrib',
+ 'din' => 'Dinka-Sprooch',
+ 'dje' => 'Zarma',
+ 'doi' => 'Dogri',
+ 'dsb' => 'Niddersorbesch',
+ 'dtp' => 'Zentral-Dusun',
+ 'dua' => 'Duala',
+ 'dum' => 'Mëttelhollännesch',
+ 'dv' => 'Maldivesch',
+ 'dyo' => 'Jola-Fonyi',
+ 'dyu' => 'Dyula-Sprooch',
+ 'dz' => 'Bhutanesch',
+ 'dzg' => 'Dazaga',
+ 'ebu' => 'Kiembu',
+ 'ee' => 'Ewe-Sprooch',
+ 'efi' => 'Efik',
+ 'egl' => 'Emilianesch',
+ 'egy' => 'Egyptesch',
+ 'eka' => 'Ekajuk',
+ 'el' => 'Griichesch',
+ 'elx' => 'Elamesch',
+ 'en' => 'Englesch',
+ 'en-au' => 'Australescht Englesch',
+ 'en-ca' => 'Kanadescht Englesch',
+ 'en-gb' => 'Britescht Englesch',
+ 'en-us' => 'Amerikanescht Englesch',
+ 'enm' => 'Mëttelenglesch',
+ 'eo' => 'Esperanto',
+ 'es' => 'Spuenesch',
+ 'es-419' => 'Latäinamerikanescht Spuenesch',
+ 'es-es' => 'Europäescht Spuenesch',
+ 'es-mx' => 'Mexikanescht Spuenesch',
+ 'esu' => 'Yup’ik',
+ 'et' => 'Estnesch',
+ 'eu' => 'Baskesch',
+ 'ewo' => 'Ewondo',
+ 'ext' => 'Extremaduresch',
+ 'fa' => 'Persesch',
+ 'fan' => 'Pangwe-Sprooch',
+ 'fat' => 'Fanti-Sprooch',
+ 'ff' => 'Ful',
+ 'fi' => 'Finnesch',
+ 'fil' => 'Filipino',
+ 'fit' => 'Meänkieli',
+ 'fj' => 'Fidschianesch',
+ 'fo' => 'Färöesch',
+ 'fon' => 'Fon-Sprooch',
+ 'fr' => 'Franséisch',
+ 'fr-ca' => 'Kanadescht Franséisch',
+ 'fr-ch' => 'Schwäizer Franséisch',
+ 'frc' => 'Cajun',
+ 'frm' => 'Mëttelfranséisch',
+ 'fro' => 'Alfranséisch',
+ 'frp' => 'Frankoprovenzalesch',
+ 'frr' => 'Nordfriesesch',
+ 'frs' => 'Ostfriesesch',
+ 'fur' => 'Friulesch',
+ 'fy' => 'Westfriesesch',
+ 'ga' => 'Iresch',
+ 'gaa' => 'Ga-Sprooch',
+ 'gag' => 'Gagausesch',
+ 'gan' => 'Gan-Chinesesch',
+ 'gay' => 'Gayo',
+ 'gba' => 'Gbaya-Sprooch',
+ 'gbz' => 'Zoroastrianescht Dari',
+ 'gd' => 'Schottescht Gällesch',
+ 'gez' => 'Geez',
+ 'gil' => 'Gilbertesesch',
+ 'gl' => 'Galizesch',
+ 'glk' => 'Gilaki',
+ 'gmh' => 'Mëttelhéichdäitsch',
+ 'gn' => 'Guarani',
+ 'goh' => 'Alhéichdäitsch',
+ 'gom' => 'Goan-Konkani',
+ 'gon' => 'Gondi-Sprooch',
+ 'gor' => 'Mongondou',
+ 'got' => 'Gotesch',
+ 'grb' => 'Grebo-Sprooch',
+ 'grc' => 'Algriichesch',
+ 'gsw' => 'Schwäizerdäitsch',
+ 'gu' => 'Gujarati',
+ 'guc' => 'Wayuu',
+ 'gur' => 'Farefare',
+ 'guz' => 'Gusii-Sprooch',
+ 'gv' => 'Manx',
+ 'gwi' => 'Kutchin-Sprooch',
+ 'ha' => 'Hausa',
+ 'hai' => 'Haida-Sprooch',
+ 'hak' => 'Hakka-Chinesesch',
+ 'haw' => 'Hawaiesch',
+ 'he' => 'Hebräesch',
+ 'hi' => 'Hindi',
+ 'hif' => 'Fidschi-Hindi',
+ 'hil' => 'Hiligaynon-Sprooch',
+ 'hit' => 'Hethitesch',
+ 'hmn' => 'Miao-Sprooch',
+ 'ho' => 'Hiri-Motu',
+ 'hr' => 'Kroatesch',
+ 'hsb' => 'Uewersorbesch',
+ 'hsn' => 'Xiang-Chinesesch',
+ 'ht' => 'Haitianesch',
+ 'hu' => 'Ungaresch',
+ 'hup' => 'Hupa',
+ 'hy' => 'Armenesch',
+ 'hz' => 'Herero-Sprooch',
+ 'ia' => 'Interlingua',
+ 'iba' => 'Iban',
+ 'ibb' => 'Ibibio',
+ 'id' => 'Indonesesch',
+ 'ie' => 'Interlingue',
+ 'ig' => 'Igbo-Sprooch',
+ 'ii' => 'Sichuan Yi',
+ 'ik' => 'Inupiak',
+ 'ilo' => 'Ilokano-Sprooch',
+ 'inh' => 'Inguschesch',
+ 'io' => 'Ido-Sprooch',
+ 'is' => 'Islännesch',
+ 'it' => 'Italienesch',
+ 'iu' => 'Inukitut',
+ 'izh' => 'Ischoresch',
+ 'ja' => 'Japanesch',
+ 'jam' => 'Jamaikanesch-Kreolesch',
+ 'jbo' => 'Lojban',
+ 'jgo' => 'Ngomba',
+ 'jmc' => 'Machame',
+ 'jpr' => 'Jiddesch-Persesch',
+ 'jrb' => 'Jiddesch-Arabesch',
+ 'jut' => 'Jütesch',
+ 'jv' => 'Javanesch',
+ 'ka' => 'Georgesch',
+ 'kaa' => 'Karakalpakesch',
+ 'kab' => 'Kabylesch',
+ 'kac' => 'Kachin-Sprooch',
+ 'kaj' => 'Jju',
+ 'kam' => 'Kamba',
+ 'kaw' => 'Kawi',
+ 'kbd' => 'Kabardinesch',
+ 'kbl' => 'Kanembu',
+ 'kcg' => 'Tyap',
+ 'kde' => 'Makonde',
+ 'kea' => 'Kabuverdianu',
+ 'ken' => 'Kenyang',
+ 'kfo' => 'Koro',
+ 'kg' => 'Kongolesesch',
+ 'kgp' => 'Kaingang',
+ 'kha' => 'Khasi-Sprooch',
+ 'kho' => 'Sakesch',
+ 'khq' => 'Koyra Chiini',
+ 'khw' => 'Khowar',
+ 'ki' => 'Kikuyu-Sprooch',
+ 'kiu' => 'Kirmanjki',
+ 'kj' => 'Kwanyama',
+ 'kk' => 'Kasachesch',
+ 'kkj' => 'Kako',
+ 'kl' => 'Grönlännesch',
+ 'kln' => 'Kalenjin',
+ 'km' => 'Kambodschanesch',
+ 'kmb' => 'Kimbundu-Sprooch',
+ 'kn' => 'Kannada',
+ 'ko' => 'Koreanesch',
+ 'koi' => 'Komi-Permiak',
+ 'kok' => 'Konkani',
+ 'kos' => 'Kosraeanesch',
+ 'kpe' => 'Kpelle-Sprooch',
+ 'kr' => 'Kanuri-Sprooch',
+ 'krc' => 'Karatschaiesch-Balkaresch',
+ 'kri' => 'Krio',
+ 'krj' => 'Kinaray-a',
+ 'krl' => 'Karelesch',
+ 'kru' => 'Oraon-Sprooch',
+ 'ks' => 'Kaschmiresch',
+ 'ksb' => 'Shambala',
+ 'ksf' => 'Bafia',
+ 'ksh' => 'Kölsch',
+ 'ku' => 'Kurdesch',
+ 'kum' => 'Kumükesch',
+ 'kut' => 'Kutenai-Sprooch',
+ 'kv' => 'Komi-Sprooch',
+ 'kw' => 'Kornesch',
+ 'ky' => 'Kirgisesch',
+ 'la' => 'Latäin',
+ 'lad' => 'Ladino',
+ 'lag' => 'Langi',
+ 'lah' => 'Lahnda',
+ 'lam' => 'Lamba-Sprooch',
+ 'lb' => 'Lëtzebuergesch',
+ 'lez' => 'Lesgesch',
+ 'lfn' => 'Lingua Franca Nova',
+ 'lg' => 'Ganda-Sprooch',
+ 'li' => 'Limburgesch',
+ 'lij' => 'Liguresch',
+ 'liv' => 'Livesch',
+ 'lkt' => 'Lakota-Sprooch',
+ 'lmo' => 'Lombardesch',
+ 'ln' => 'Lingala',
+ 'lo' => 'Laotesch',
+ 'lol' => 'Mongo',
+ 'loz' => 'Rotse-Sprooch',
+ 'lt' => 'Litauesch',
+ 'ltg' => 'Lettgallesch',
+ 'lu' => 'Luba-Katanga',
+ 'lua' => 'Luba-Lulua',
+ 'lui' => 'Luiseno-Sprooch',
+ 'lun' => 'Lunda-Sprooch',
+ 'luo' => 'Luo-Sprooch',
+ 'lus' => 'Lushai-Sprooch',
+ 'luy' => 'Olulujia',
+ 'lv' => 'Lettesch',
+ 'lzh' => 'Klassescht Chinesesch',
+ 'lzz' => 'Lasesch Sprooch',
+ 'mad' => 'Maduresesch',
+ 'maf' => 'Mafa',
+ 'mag' => 'Khotta',
+ 'mai' => 'Maithili',
+ 'mak' => 'Makassaresch',
+ 'man' => 'Manding-Sprooch',
+ 'mas' => 'Massai-Sprooch',
+ 'mde' => 'Maba',
+ 'mdf' => 'Moksha',
+ 'mdr' => 'Mandaresesch',
+ 'men' => 'Mende-Sprooch',
+ 'mer' => 'Meru-Sprooch',
+ 'mfe' => 'Morisyen',
+ 'mg' => 'Malagassi-Sprooch',
+ 'mga' => 'Mëtteliresch',
+ 'mgh' => 'Makhuwa-Meetto',
+ 'mgo' => 'Meta’',
+ 'mh' => 'Marschallesesch',
+ 'mi' => 'Maori',
+ 'mic' => 'Micmac-Sprooch',
+ 'min' => 'Minangkabau-Sprooch',
+ 'mk' => 'Mazedonesch',
+ 'ml' => 'Malayalam',
+ 'mn' => 'Mongolesch',
+ 'mnc' => 'Mandschuresch',
+ 'mni' => 'Meithei-Sprooch',
+ 'moh' => 'Mohawk-Sprooch',
+ 'mos' => 'Mossi-Sprooch',
+ 'mr' => 'Marathi',
+ 'mrj' => 'West-Mari',
+ 'ms' => 'Malaiesch',
+ 'mt' => 'Maltesesch',
+ 'mua' => 'Mundang',
+ 'mul' => 'Méisproocheg',
+ 'mus' => 'Muskogee-Sprooch',
+ 'mwl' => 'Mirandesesch',
+ 'mwr' => 'Marwari',
+ 'mwv' => 'Mentawai',
+ 'my' => 'Birmanesch',
+ 'mye' => 'Myene',
+ 'myv' => 'Ersja-Mordwinesch',
+ 'mzn' => 'Mazandarani',
+ 'na' => 'Nauruesch',
+ 'nan' => 'Min-Nan-Chinesesch',
+ 'nap' => 'Neapolitanesch',
+ 'naq' => 'Nama',
+ 'nb' => 'Norwegesch Bokmål',
+ 'nd' => 'Nord-Ndebele-Sprooch',
+ 'nds' => 'Nidderdäitsch',
+ 'ne' => 'Nepalesesch',
+ 'new' => 'Newari',
+ 'ng' => 'Ndonga',
+ 'nia' => 'Nias-Sprooch',
+ 'niu' => 'Niue-Sprooch',
+ 'njo' => 'Ao Naga',
+ 'nl' => 'Hollännesch',
+ 'nl-be' => 'Flämesch',
+ 'nmg' => 'Kwasio',
+ 'nn' => 'Norwegesch Nynorsk',
+ 'nnh' => 'Ngiemboon',
+ 'no' => 'Norwegesch',
+ 'nog' => 'Nogai',
+ 'non' => 'Alnordesch',
+ 'nov' => 'Novial',
+ 'nqo' => 'N’Ko',
+ 'nr' => 'Süd-Ndebele-Sprooch',
+ 'nso' => 'Nord-Sotho-Sprooch',
+ 'nus' => 'Nuer',
+ 'nv' => 'Navajo',
+ 'nwc' => 'Al-Newari',
+ 'ny' => 'Nyanja-Sprooch',
+ 'nym' => 'Nyamwezi-Sprooch',
+ 'nyn' => 'Nyankole',
+ 'nyo' => 'Nyoro',
+ 'nzi' => 'Nzima',
+ 'oc' => 'Okzitanesch',
+ 'oj' => 'Ojibwa-Sprooch',
+ 'om' => 'Oromo',
+ 'or' => 'Orija',
+ 'os' => 'Ossetesch',
+ 'osa' => 'Osage-Sprooch',
+ 'ota' => 'Osmanesch',
+ 'pa' => 'Pandschabesch',
+ 'pag' => 'Pangasinan-Sprooch',
+ 'pal' => 'Mëttelpersesch',
+ 'pam' => 'Pampanggan-Sprooch',
+ 'pap' => 'Papiamento',
+ 'pau' => 'Palau',
+ 'pcd' => 'Picardesch',
+ 'pdc' => 'Pennsylvaniadäitsch',
+ 'pdt' => 'Plattdäitsch',
+ 'peo' => 'Alpersesch',
+ 'pfl' => 'Pfälzesch Däitsch',
+ 'phn' => 'Phönikesch',
+ 'pi' => 'Pali',
+ 'pl' => 'Polnesch',
+ 'pms' => 'Piemontesesch',
+ 'pnt' => 'Pontesch',
+ 'pon' => 'Ponapeanesch',
+ 'prg' => 'Preisesch',
+ 'pro' => 'Alprovenzalesch',
+ 'ps' => 'Paschtu',
+ 'pt' => 'Portugisesch',
+ 'pt-br' => 'Brasilianescht Portugisesch',
+ 'pt-pt' => 'Europäescht Portugisesch',
+ 'qu' => 'Quechua',
+ 'quc' => 'Quiché-Sprooch',
+ 'qug' => 'Kichwa (Chimborazo-Gebidder)',
+ 'raj' => 'Rajasthani',
+ 'rap' => 'Ouschterinsel-Sprooch',
+ 'rar' => 'Rarotonganesch',
+ 'rgn' => 'Romagnol',
+ 'rif' => 'Tarifit',
+ 'rm' => 'Rätoromanesch',
+ 'rn' => 'Rundi-Sprooch',
+ 'ro' => 'Rumänesch',
+ 'ro-md' => 'Moldawesch',
+ 'rof' => 'Rombo',
+ 'rom' => 'Romani',
+ 'rtm' => 'Rotumanesch',
+ 'ru' => 'Russesch',
+ 'rue' => 'Russinesch',
+ 'rug' => 'Roviana',
+ 'rup' => 'Aromunesch',
+ 'rw' => 'Ruandesch',
+ 'rwk' => 'Rwa',
+ 'sa' => 'Sanskrit',
+ 'sad' => 'Sandawe-Sprooch',
+ 'sah' => 'Jakutesch',
+ 'sam' => 'Samaritanesch',
+ 'saq' => 'Samburu',
+ 'sas' => 'Sasak',
+ 'sat' => 'Santali',
+ 'saz' => 'Saurashtra',
+ 'sba' => 'Ngambay',
+ 'sbp' => 'Sangu',
+ 'sc' => 'Sardesch',
+ 'scn' => 'Sizilianesch',
+ 'sco' => 'Schottesch',
+ 'sd' => 'Sindhi',
+ 'sdc' => 'Sassaresesch',
+ 'se' => 'Nordsamesch',
+ 'see' => 'Seneca',
+ 'seh' => 'Sena',
+ 'sei' => 'Seri',
+ 'sel' => 'Selkupesch',
+ 'ses' => 'Koyra Senni',
+ 'sg' => 'Sango',
+ 'sga' => 'Aliresch',
+ 'sgs' => 'Samogitesch',
+ 'sh' => 'Serbo-Kroatesch',
+ 'shi' => 'Taschelhit',
+ 'shn' => 'Schan-Sprooch',
+ 'shu' => 'Tschadesch-Arabesch',
+ 'si' => 'Singhalesesch',
+ 'sid' => 'Sidamo',
+ 'sk' => 'Slowakesch',
+ 'sl' => 'Slowenesch',
+ 'sli' => 'Nidderschlesesch',
+ 'sly' => 'Selayar',
+ 'sm' => 'Samoanesch',
+ 'sma' => 'Südsamesch',
+ 'smj' => 'Lule-Lappesch',
+ 'smn' => 'Inari-Lappesch',
+ 'sms' => 'Skolt-Lappesch',
+ 'sn' => 'Shona',
+ 'snk' => 'Soninke-Sprooch',
+ 'so' => 'Somali',
+ 'sog' => 'Sogdesch',
+ 'sq' => 'Albanesch',
+ 'sr' => 'Serbesch',
+ 'srn' => 'Srananesch',
+ 'srr' => 'Serer-Sprooch',
+ 'ss' => 'Swazi',
+ 'ssy' => 'Saho',
+ 'st' => 'Süd-Sotho-Sprooch',
+ 'stq' => 'Saterfriesesch',
+ 'su' => 'Sundanesesch',
+ 'suk' => 'Sukuma-Sprooch',
+ 'sus' => 'Susu',
+ 'sux' => 'Sumeresch',
+ 'sv' => 'Schwedesch',
+ 'sw' => 'Suaheli',
+ 'swb' => 'Komoresch',
+ 'swc' => 'Kongo-Swahili',
+ 'syc' => 'Alsyresch',
+ 'syr' => 'Syresch',
+ 'szl' => 'Schlesesch',
+ 'ta' => 'Tamilesch',
+ 'tcy' => 'Tulu',
+ 'te' => 'Telugu',
+ 'tem' => 'Temne',
+ 'teo' => 'Teso',
+ 'ter' => 'Tereno-Sprooch',
+ 'tet' => 'Tetum-Sprooch',
+ 'tg' => 'Tadschikesch',
+ 'th' => 'Thailännesch',
+ 'ti' => 'Tigrinja',
+ 'tig' => 'Tigre',
+ 'tiv' => 'Tiv-Sprooch',
+ 'tk' => 'Turkmenesch',
+ 'tkl' => 'Tokelauanesch',
+ 'tkr' => 'Tsachuresch',
+ 'tl' => 'Dagalog',
+ 'tlh' => 'Klingonesch',
+ 'tli' => 'Tlingit-Sprooch',
+ 'tly' => 'Talesch',
+ 'tmh' => 'Tamaseq',
+ 'tn' => 'Tswana-Sprooch',
+ 'to' => 'Tongaesch',
+ 'tog' => 'Tsonga-Sprooch',
+ 'tpi' => 'Neimelanesesch',
+ 'tr' => 'Tierkesch',
+ 'tru' => 'Turoyo',
+ 'trv' => 'Seediq',
+ 'ts' => 'Tsonga',
+ 'tsd' => 'Tsakonesch',
+ 'tsi' => 'Tsimshian-Sprooch',
+ 'tt' => 'Tataresch',
+ 'ttt' => 'Tatesch',
+ 'tum' => 'Tumbuka-Sprooch',
+ 'tvl' => 'Elliceanesch',
+ 'tw' => 'Twi',
+ 'twq' => 'Tasawaq',
+ 'ty' => 'Tahitesch',
+ 'tyv' => 'Tuwinesch',
+ 'tzm' => 'Mëttlert-Atlas-Tamazight',
+ 'udm' => 'Udmurtesch',
+ 'ug' => 'Uiguresch',
+ 'uga' => 'Ugaritesch',
+ 'uk' => 'Ukrainesch',
+ 'umb' => 'Mbundu-Sprooch',
+ 'und' => 'Onbestëmmt Sprooch',
+ 'ur' => 'Urdu',
+ 'uz' => 'Usbekesch',
+ 'vai' => 'Vai-Sprooch',
+ 've' => 'Venda-Sprooch',
+ 'vec' => 'Venezesch',
+ 'vep' => 'Wepsesch',
+ 'vi' => 'Vietnamesesch',
+ 'vls' => 'Westflämesch',
+ 'vmf' => 'Mainfränkesch',
+ 'vo' => 'Volapük',
+ 'vot' => 'Wotesch',
+ 'vro' => 'Voro',
+ 'vun' => 'Vunjo',
+ 'wa' => 'Wallounesch',
+ 'wae' => 'Walliserdäitsch',
+ 'wal' => 'Walamo-Sprooch',
+ 'war' => 'Waray',
+ 'was' => 'Washo-Sprooch',
+ 'wo' => 'Wolof',
+ 'wuu' => 'Wu-Chinesesch',
+ 'xal' => 'Kalmückesch',
+ 'xh' => 'Xhosa',
+ 'xmf' => 'Mingrelesch Sprooch',
+ 'xog' => 'Soga',
+ 'yao' => 'Yao-Sprooch',
+ 'yap' => 'Yapesesch',
+ 'yav' => 'Yangben',
+ 'ybb' => 'Yemba',
+ 'yi' => 'Jiddesch',
+ 'yo' => 'Yoruba',
+ 'yrl' => 'Nheengatu',
+ 'yue' => 'Kantonesesch',
+ 'za' => 'Zhuang',
+ 'zap' => 'Zapotekesch',
+ 'zbl' => 'Bliss-Symboler',
+ 'zea' => 'Seelännesch',
+ 'zen' => 'Zenaga',
+ 'zgh' => 'Marokkanescht Standard-Tamazight',
+ 'zh' => 'Chinesesch',
+ 'zh-hans' => 'Chinesesch (vereinfacht)',
+ 'zh-hant' => 'Chinesesch (traditionell)',
+ 'zu' => 'Zulu',
+ 'zun' => 'Zuni-Sprooch',
+ 'zxx' => 'Keng Sproochinhalter',
+ 'zza' => 'Zaza',
+);
+
+$currencyNames = array(
+ 'ADP' => 'Andorranesch Peseta',
+ 'AED' => 'VAE-Dirham',
+ 'AFA' => 'Afghanesch Afghani (1927–2002)',
+ 'AFN' => 'Afghanesch Afghani',
+ 'ALL' => 'Albanesche Lek',
+ 'AMD' => 'Armeneschen Dram',
+ 'ANG' => 'Antillen-Gulden',
+ 'AOA' => 'Angolanesche Kwanza',
+ 'AOK' => 'Angolanesche Kwanza (1977–1990)',
+ 'AON' => 'Angolaneschen Neie Kwanza (1990–2000)',
+ 'AOR' => 'Angolanesche Kwanza Reajustado (1995–1999)',
+ 'ARA' => 'Argentineschen Austral',
+ 'ARP' => 'Argentinesche Peso (1983–1985)',
+ 'ARS' => 'Argentinesche Peso',
+ 'ATS' => 'Éisträichesche Schilling',
+ 'AUD' => 'Australeschen Dollar',
+ 'AWG' => 'Aruba-Florin',
+ 'AZM' => 'Aserbaidschan-Manat (1993–2006)',
+ 'AZN' => 'Aserbaidschan-Manat',
+ 'BAD' => 'Bosnien an Herzegowina Dinar (1992–1994)',
+ 'BAM' => 'Bosnien an Herzegowina Konvertéierbar Mark',
+ 'BBD' => 'Barbados-Dollar',
+ 'BDT' => 'Bangladesch-Taka',
+ 'BEC' => 'Belsche Frang (konvertibel)',
+ 'BEF' => 'Belsche Frang',
+ 'BEL' => 'Belsche Finanz-Frang',
+ 'BGL' => 'Bulgaresch Lew (1962–1999)',
+ 'BGN' => 'Bulgaresch Lew',
+ 'BHD' => 'Bahrain-Dinar',
+ 'BIF' => 'Burundi-Frang',
+ 'BMD' => 'Bermuda-Dollar',
+ 'BND' => 'Brunei-Dollar',
+ 'BOB' => 'Bolivianesche Boliviano',
+ 'BOP' => 'Bolivianesche Peso',
+ 'BOV' => 'Bolivianseche Mvdol',
+ 'BRB' => 'Brasilianesche Cruzeiro Novo (1967–1986)',
+ 'BRC' => 'Brasilianesche Cruzado (1986–1989)',
+ 'BRE' => 'Brasilianesche Cruzeiro (1990–1993)',
+ 'BRL' => 'Brasilianesche Real',
+ 'BRN' => 'Brasilianesche Cruzado Novo (1989–1990)',
+ 'BRR' => 'Brasilianesche Cruzeiro (1993–1994)',
+ 'BRZ' => 'Brasilianesche Cruzeiro (1942–1967)',
+ 'BSD' => 'Bahama-Dollar',
+ 'BTN' => 'Bhutan-Ngultrum',
+ 'BUK' => 'Birmanesche Kyat',
+ 'BWP' => 'Botswanesch Pula',
+ 'BYB' => 'Wäissrussesche Rubel (1994–1999)',
+ 'BYR' => 'Wäissrussesche Rubel',
+ 'BZD' => 'Belize-Dollar',
+ 'CAD' => 'Kanadeschen Dollar',
+ 'CDF' => 'Kongo-Frang',
+ 'CHE' => 'WIR-Euro',
+ 'CHF' => 'Schwäizer Frang',
+ 'CHW' => 'WIR-Frang',
+ 'CLF' => 'Chileneschen Unidad de Fomento',
+ 'CLP' => 'Chilenesche Peso',
+ 'CNY' => 'Renminbi Yuan',
+ 'COP' => 'Kolumbianesche Peso',
+ 'CRC' => 'Costa-Rica-Colón',
+ 'CSD' => 'Serbeschen Dinar (2002–2006)',
+ 'CSK' => 'Tschechoslowakesch Kroun',
+ 'CUC' => 'Kubanesche Peso (konvertibel)',
+ 'CUP' => 'Kubanesche Peso',
+ 'CVE' => 'Kap-Verde-Escudo',
+ 'CYP' => 'Zypern-Pond',
+ 'CZK' => 'Tschechesch Kroun',
+ 'DDM' => 'DDR-Mark',
+ 'DEM' => 'Däitsch Mark',
+ 'DJF' => 'Dschibuti-Frang',
+ 'DKK' => 'Dänesch Kroun',
+ 'DOP' => 'Dominikanesche Peso',
+ 'DZD' => 'Algereschen Dinar',
+ 'ECS' => 'Ecuadorianesche Sucre',
+ 'ECV' => 'Verrechnungseenheete fir Ecuador',
+ 'EEK' => 'Estnesch Kroun',
+ 'EGP' => 'Egyptescht Pond',
+ 'ERN' => 'Eritréieschen Nakfa',
+ 'ESA' => 'Spuenesch Peseta (A–Konten)',
+ 'ESB' => 'Spuenesch Peseta (konvertibel)',
+ 'ESP' => 'Spuenesch Peseta',
+ 'ETB' => 'Ethiopescht Birr',
+ 'EUR' => 'Euro',
+ 'FIM' => 'Finnesch Mark',
+ 'FJD' => 'Fidschi-Dollar',
+ 'FKP' => 'Falkland-Pond',
+ 'FRF' => 'Franséische Frang',
+ 'GBP' => 'Britescht Pond Sterling',
+ 'GEK' => 'Georgesche Kupon Larit',
+ 'GEL' => 'Georgesche Lari',
+ 'GHC' => 'Ghanaeschen Cedi (1979–2007)',
+ 'GHS' => 'Ghanaeschen Cedi',
+ 'GIP' => 'Gibraltar-Pond',
+ 'GMD' => 'Gambia-Dalasi',
+ 'GNF' => 'Guinea-Frang',
+ 'GNS' => 'Guinéiesche Syli',
+ 'GQE' => 'Equatorialguinea-Ekwele',
+ 'GRD' => 'Griichesch Drachme',
+ 'GTQ' => 'Guatemaltekesche Quetzal',
+ 'GWE' => 'Portugisesch-Guinea Escudo',
+ 'GWP' => 'Guinea-Bissau Peso',
+ 'GYD' => 'Guyana-Dollar',
+ 'HKD' => 'Hong-Kong-Dollar',
+ 'HNL' => 'Honduras-Lempira',
+ 'HRD' => 'Kroateschen Dinar',
+ 'HRK' => 'Kroatesche Kuna',
+ 'HTG' => 'Haitianesch Gourde',
+ 'HUF' => 'Ungaresche Forint',
+ 'IDR' => 'Indonesesch Rupiah',
+ 'IEP' => 'Irescht Pond',
+ 'ILP' => 'Israelescht Pond',
+ 'ILS' => 'Israeleschen Neie Schekel',
+ 'INR' => 'Indesch Rupie',
+ 'IQD' => 'Irakeschen Dinar',
+ 'IRR' => 'Iranesch Rial',
+ 'ISK' => 'Islännesch Kroun',
+ 'ITL' => 'Italienesch Lira',
+ 'JMD' => 'Jamaika-Dollar',
+ 'JOD' => 'Jordaneschen Dinar',
+ 'JPY' => 'Japanesche Yen',
+ 'KES' => 'Kenia-Schilling',
+ 'KGS' => 'Kirgisesche Som',
+ 'KHR' => 'Kambodschanesche Riel',
+ 'KMF' => 'Komore-Frang',
+ 'KPW' => 'Nordkoreanesche Won',
+ 'KRW' => 'Südkoreanesche Won',
+ 'KWD' => 'Kuwait-Dinar',
+ 'KYD' => 'Kaiman-Dollar',
+ 'KZT' => 'Kasacheschen Tenge',
+ 'LAK' => 'Laoteschen Kip',
+ 'LBP' => 'Libanesescht Pond',
+ 'LKR' => 'Sri-Lanka-Rupie',
+ 'LRD' => 'Liberianeschen Dollar',
+ 'LSL' => 'Loti',
+ 'LTL' => 'Litauesche Litas',
+ 'LTT' => 'Litaueschen Talonas',
+ 'LUC' => 'Lëtzebuerger Frang (konvertibel)',
+ 'LUF' => 'Lëtzebuerger Frang',
+ 'LUL' => 'Lëtzebuerger Finanz-Frang',
+ 'LVL' => 'Lettesche Lats',
+ 'LVR' => 'Lettesche Rubel',
+ 'LYD' => 'Libeschen Dinar',
+ 'MAD' => 'Marokkaneschen Dirham',
+ 'MAF' => 'Marokkanesche Frang',
+ 'MDL' => 'Moldawesche Leu',
+ 'MGA' => 'Madagaskar-Ariary',
+ 'MGF' => 'Madagaskar-Frang',
+ 'MKD' => 'Mazedoneschen Denar',
+ 'MLF' => 'Malesche Frang',
+ 'MMK' => 'Myanmaresche Kyat',
+ 'MNT' => 'Mongoleschen Tögrög',
+ 'MOP' => 'Macau-Pataca',
+ 'MRO' => 'Mauretaneschen Ouguiya',
+ 'MTL' => 'Maltesesch Lira',
+ 'MTP' => 'Maltesescht Pond',
+ 'MUR' => 'Mauritius-Rupie',
+ 'MVR' => 'Maldiven-Rupie',
+ 'MWK' => 'Malawi-Kwacha',
+ 'MXN' => 'Mexikanesche Peso',
+ 'MXP' => 'Mexikanesche Sëlwer-Peso (1861–1992)',
+ 'MXV' => 'Mexikaneschen Unidad de Inversion (UDI)',
+ 'MYR' => 'Malayseschen Ringgit',
+ 'MZE' => 'Mosambikaneschen Escudo',
+ 'MZM' => 'Mosambikanesche Metical (1980–2006)',
+ 'MZN' => 'Mosambikanesche Metical',
+ 'NAD' => 'Namibia-Dollar',
+ 'NGN' => 'Nigerianeschen Naira',
+ 'NIC' => 'Nicaraguanesche Córdoba (1988–1991)',
+ 'NIO' => 'Nicaraguanesche Córdoba',
+ 'NLG' => 'Hollännesche Gulden',
+ 'NOK' => 'Norwegesch Kroun',
+ 'NPR' => 'Nepalesesch Rupie',
+ 'NZD' => 'Neiséiland-Dollar',
+ 'OMR' => 'Omanesche Rial',
+ 'PAB' => 'Panamaesche Balboa',
+ 'PEI' => 'Peruaneschen Inti',
+ 'PEN' => 'Peruaneschen Neie Sol',
+ 'PES' => 'Peruanesche Sol (1863–1965)',
+ 'PGK' => 'Papua-Neiguinéiesche Kina',
+ 'PHP' => 'Philippinnesche Peso',
+ 'PKR' => 'Pakistanesch Rupie',
+ 'PLN' => 'Polneschen Zloty',
+ 'PLZ' => 'Polneschen Zloty (1950–1995)',
+ 'PTE' => 'Portugiseschen Escudo',
+ 'PYG' => 'Paraguayeschen Guaraní',
+ 'QAR' => 'Katar-Riyal',
+ 'RHD' => 'Rhodeseschen Dollar',
+ 'ROL' => 'Rumänesche Leu (1952–2006)',
+ 'RON' => 'Rumänesche Leu',
+ 'RSD' => 'Serbeschen Dinar',
+ 'RUB' => 'Russesche Rubel',
+ 'RUR' => 'Russesche Rubel (1991–1998)',
+ 'RWF' => 'Ruanda-Frang',
+ 'SAR' => 'Saudi-Rial',
+ 'SBD' => 'Salomonen-Dollar',
+ 'SCR' => 'Seychellen-Rupie',
+ 'SDD' => 'Sudaneseschen Dinar (1992–2007)',
+ 'SDG' => 'Sudanesescht Pond',
+ 'SDP' => 'Sudanesescht Pond (1957–1998)',
+ 'SEK' => 'Schwedesch Kroun',
+ 'SGD' => 'Singapur-Dollar',
+ 'SHP' => 'St. Helena-Pond',
+ 'SIT' => 'Sloweneschen Tolar',
+ 'SKK' => 'Slowakesch Kroun',
+ 'SLL' => 'Sierra-leonesche Leone',
+ 'SOS' => 'Somalia-Schilling',
+ 'SRD' => 'Surinameschen Dollar',
+ 'SRG' => 'Surinamesche Gulden',
+ 'SSP' => 'Südsudanesescht Pond',
+ 'STD' => 'São-toméeschen Dobra',
+ 'SUR' => 'Sowjetesche Rubel',
+ 'SVC' => 'El-Salvador-Colón',
+ 'SYP' => 'Syrescht Pond',
+ 'SZL' => 'Swasilännesche Lilangeni',
+ 'THB' => 'Thailännesche Baht',
+ 'TJR' => 'Tadschikistan-Rubel',
+ 'TJS' => 'Tadschikistan-Somoni',
+ 'TMM' => 'Turkmenistan-Manat (1993–2009)',
+ 'TMT' => 'Turkmenistan-Manat',
+ 'TND' => 'Tuneseschen Dinar',
+ 'TOP' => 'Tongaeschen Paʻanga',
+ 'TPE' => 'Timor-Escudo',
+ 'TRL' => 'Tierkesch Lira (1922–2005)',
+ 'TRY' => 'Tierkesch Lira',
+ 'TTD' => 'Trinidad-an-Tobago-Dollar',
+ 'TWD' => 'Neien Taiwan-Dollar',
+ 'TZS' => 'Tansania-Schilling',
+ 'UAH' => 'Ukraineschen Hrywnja',
+ 'UAK' => 'Ukrainesche Karbovanetz',
+ 'UGS' => 'Uganda-Schilling (1966–1987)',
+ 'UGX' => 'Uganda-Schilling',
+ 'USD' => 'US-Dollar',
+ 'USN' => 'US Dollar (Nächsten Dag)',
+ 'USS' => 'US Dollar (Selwechten Dag)',
+ 'UYP' => 'Uruguayesche Peso (1975–1993)',
+ 'UYU' => 'Uruguayesche Peso',
+ 'UZS' => 'Usbekistan-Sum',
+ 'VEB' => 'Venezolanesche Bolívar (1871–2008)',
+ 'VEF' => 'Venezolanesche Bolívar',
+ 'VND' => 'Vietnameseschen Dong',
+ 'VUV' => 'Vanuatu-Vatu',
+ 'WST' => 'Samoaneschen Tala',
+ 'XAF' => 'CFA-Frang (BEAC)',
+ 'XAG' => 'Onze Sëlwer',
+ 'XAU' => 'Onze Gold',
+ 'XBA' => 'Europäesch Rechnungseenheet',
+ 'XBB' => 'Europäesch Währungseenheet (XBB)',
+ 'XBC' => 'Europäesch Rechnungseenheet (XBC)',
+ 'XBD' => 'Europäesch Rechnungseenheet (XBD)',
+ 'XCD' => 'Ostkaribeschen Dollar',
+ 'XDR' => 'Sonnerzéiungsrecht',
+ 'XEU' => 'Europäesch Währungseenheet (XEU)',
+ 'XFO' => 'Franséische Gold-Frang',
+ 'XFU' => 'Franséischen UIC-Frang',
+ 'XOF' => 'CFA-Frang (BCEAO)',
+ 'XPD' => 'Onz Palladium',
+ 'XPF' => 'CFP-Frang',
+ 'XPT' => 'Onz Platin',
+ 'XRE' => 'RINET Funds',
+ 'XTS' => 'Testwährung',
+ 'XXX' => 'Onbekannt Währung',
+ 'YDD' => 'Jemen-Dinar',
+ 'YER' => 'Jemen-Rial',
+ 'YUD' => 'Jugoslaweschen Dinar (1966–1990)',
+ 'YUM' => 'Jugoslaweschen Neien Dinar (1994–2002)',
+ 'YUN' => 'Jugoslaweschen Dinar (konvertibel)',
+ 'ZAL' => 'Südafrikanesche Rand (Finanz)',
+ 'ZAR' => 'Südafrikanesche Rand',
+ 'ZMK' => 'Kwacha (1968–2012)',
+ 'ZMW' => 'Kwacha',
+ 'ZRN' => 'Zaire-Neien Zaïre (1993–1998)',
+ 'ZRZ' => 'Zaire-Zaïre (1971–1993)',
+ 'ZWD' => 'Simbabwe-Dollar (1980–2008)',
+ 'ZWL' => 'Simbabwe-Dollar (2009)',
+ 'ZWR' => 'Simbabwe-Dollar (2008)',
+);
+
+$currencySymbols = array(
+ 'AFA' => 'AFA',
+ 'AFN' => 'AFN',
+ 'ATS' => 'öS',
+ 'AUD' => 'AU$',
+ 'BDT' => 'BDT',
+ 'BND' => 'BND',
+ 'BRL' => 'R$',
+ 'BTN' => 'BTN',
+ 'BUK' => 'BUK',
+ 'CAD' => 'CA$',
+ 'CNY' => 'CN¥',
+ 'EUR' => '€',
+ 'GBP' => '£',
+ 'HKD' => 'HK$',
+ 'IDR' => 'IDR',
+ 'ILS' => '₪',
+ 'INR' => '₹',
+ 'IRR' => 'IRR',
+ 'JPY' => '¥',
+ 'KHR' => 'KHR',
+ 'KPW' => 'KPW',
+ 'KRW' => '₩',
+ 'LAK' => 'LAK',
+ 'LKR' => 'LKR',
+ 'MMK' => 'MMK',
+ 'MNT' => 'MNT',
+ 'MOP' => 'MOP',
+ 'MVR' => 'MVR',
+ 'MXN' => 'MX$',
+ 'MYR' => 'MYR',
+ 'NPR' => 'NPR',
+ 'NZD' => 'NZ$',
+ 'PHP' => 'PHP',
+ 'PKR' => 'PKR',
+ 'SGD' => 'SGD',
+ 'THB' => '฿',
+ 'TWD' => 'NT$',
+ 'USD' => '$',
+ 'VND' => '₫',
+ 'XAF' => 'FCFA',
+ 'XCD' => 'EC$',
+ 'XOF' => 'CFA',
+ 'XPF' => 'CFPF',
+);
+
+$countryNames = array(
+ 'AC' => 'Ascension',
+ 'AD' => 'Andorra',
+ 'AE' => 'Vereenegt Arabesch Emirater',
+ 'AF' => 'Afghanistan',
+ 'AG' => 'Antigua a Barbuda',
+ 'AI' => 'Anguilla',
+ 'AL' => 'Albanien',
+ 'AM' => 'Armenien',
+ 'AO' => 'Angola',
+ 'AQ' => 'Antarktis',
+ 'AR' => 'Argentinien',
+ 'AS' => 'Amerikanesch-Samoa',
+ 'AT' => 'Éisträich',
+ 'AU' => 'Australien',
+ 'AW' => 'Aruba',
+ 'AX' => 'Ålandinselen',
+ 'AZ' => 'Aserbaidschan',
+ 'BA' => 'Bosnien an Herzegowina',
+ 'BB' => 'Barbados',
+ 'BD' => 'Bangladesch',
+ 'BE' => 'Belsch',
+ 'BF' => 'Burkina Faso',
+ 'BG' => 'Bulgarien',
+ 'BH' => 'Bahrain',
+ 'BI' => 'Burundi',
+ 'BJ' => 'Benin',
+ 'BL' => 'Saint-Barthélemy',
+ 'BM' => 'Bermuda',
+ 'BN' => 'Brunei',
+ 'BO' => 'Bolivien',
+ 'BQ' => 'Karibescht Holland',
+ 'BR' => 'Brasilien',
+ 'BS' => 'Bahamas',
+ 'BT' => 'Bhutan',
+ 'BV' => 'Bouvetinsel',
+ 'BW' => 'Botsuana',
+ 'BY' => 'Wäissrussland',
+ 'BZ' => 'Belize',
+ 'CA' => 'Kanada',
+ 'CC' => 'Kokosinselen',
+ 'CD' => 'Kongo-Kinshasa',
+ 'CF' => 'Zentralafrikanesch Republik',
+ 'CG' => 'Kongo-Brazzaville',
+ 'CH' => 'Schwäiz',
+ 'CI' => 'Elfebeeküst',
+ 'CK' => 'Cookinselen',
+ 'CL' => 'Chile',
+ 'CM' => 'Kamerun',
+ 'CN' => 'China',
+ 'CO' => 'Kolumbien',
+ 'CP' => 'Clipperton-Insel',
+ 'CR' => 'Costa Rica',
+ 'CU' => 'Kuba',
+ 'CV' => 'Kap Verde',
+ 'CW' => 'Curaçao',
+ 'CX' => 'Chrëschtdagsinsel',
+ 'CY' => 'Zypern',
+ 'CZ' => 'Tschechien',
+ 'DE' => 'Däitschland',
+ 'DG' => 'Diego Garcia',
+ 'DJ' => 'Dschibuti',
+ 'DK' => 'Dänemark',
+ 'DM' => 'Dominica',
+ 'DO' => 'Dominikanesch Republik',
+ 'DZ' => 'Algerien',
+ 'EA' => 'Ceuta a Melilla',
+ 'EC' => 'Ecuador',
+ 'EE' => 'Estland',
+ 'EG' => 'Egypten',
+ 'EH' => 'Westsahara',
+ 'ER' => 'Eritrea',
+ 'ES' => 'Spanien',
+ 'ET' => 'Ethiopien',
+ 'EU' => 'Europäesch Unioun',
+ 'FI' => 'Finnland',
+ 'FJ' => 'Fidschi',
+ 'FK' => 'Falklandinselen',
+ 'FM' => 'Mikronesien',
+ 'FO' => 'Färöer',
+ 'FR' => 'Frankräich',
+ 'GA' => 'Gabun',
+ 'GB' => 'GB',
+ 'GD' => 'Grenada',
+ 'GE' => 'Georgien',
+ 'GF' => 'Guayane',
+ 'GG' => 'Guernsey',
+ 'GH' => 'Ghana',
+ 'GI' => 'Gibraltar',
+ 'GL' => 'Grönland',
+ 'GM' => 'Gambia',
+ 'GN' => 'Guinea',
+ 'GP' => 'Guadeloupe',
+ 'GQ' => 'Equatorialguinea',
+ 'GR' => 'Griicheland',
+ 'GS' => 'Südgeorgien an déi Südlech Sandwichinselen',
+ 'GT' => 'Guatemala',
+ 'GU' => 'Guam',
+ 'GW' => 'Guinea-Bissau',
+ 'GY' => 'Guyana',
+ 'HK' => 'Hong Kong',
+ 'HM' => 'Heard- a McDonald-Inselen',
+ 'HN' => 'Honduras',
+ 'HR' => 'Kroatien',
+ 'HT' => 'Haiti',
+ 'HU' => 'Ungarn',
+ 'IC' => 'Kanaresch Inselen',
+ 'ID' => 'Indonesien',
+ 'IE' => 'Irland',
+ 'IL' => 'Israel',
+ 'IM' => 'Isle of Man',
+ 'IN' => 'Indien',
+ 'IO' => 'Britescht Territorium am Indeschen Ozean',
+ 'IQ' => 'Irak',
+ 'IR' => 'Iran',
+ 'IS' => 'Island',
+ 'IT' => 'Italien',
+ 'JE' => 'Jersey',
+ 'JM' => 'Jamaika',
+ 'JO' => 'Jordanien',
+ 'JP' => 'Japan',
+ 'KE' => 'Kenia',
+ 'KG' => 'Kirgisistan',
+ 'KH' => 'Kambodscha',
+ 'KI' => 'Kiribati',
+ 'KM' => 'Komoren',
+ 'KN' => 'St. Kitts an Nevis',
+ 'KP' => 'Nordkorea',
+ 'KR' => 'Südkorea',
+ 'KW' => 'Kuwait',
+ 'KY' => 'Kaimaninselen',
+ 'KZ' => 'Kasachstan',
+ 'LA' => 'Laos',
+ 'LB' => 'Libanon',
+ 'LC' => 'St. Lucia',
+ 'LI' => 'Liechtenstein',
+ 'LK' => 'Sri Lanka',
+ 'LR' => 'Liberia',
+ 'LS' => 'Lesotho',
+ 'LT' => 'Litauen',
+ 'LU' => 'Lëtzebuerg',
+ 'LV' => 'Lettland',
+ 'LY' => 'Libyen',
+ 'MA' => 'Marokko',
+ 'MC' => 'Monaco',
+ 'MD' => 'Moldawien',
+ 'ME' => 'Montenegro',
+ 'MF' => 'St. Martin',
+ 'MG' => 'Madagaskar',
+ 'MH' => 'Marshallinselen',
+ 'MK' => 'Mazedonien',
+ 'ML' => 'Mali',
+ 'MM' => 'Myanmar',
+ 'MN' => 'Mongolei',
+ 'MO' => 'Macau',
+ 'MP' => 'Nërdlech Marianen',
+ 'MQ' => 'Martinique',
+ 'MR' => 'Mauretanien',
+ 'MS' => 'Montserrat',
+ 'MT' => 'Malta',
+ 'MU' => 'Mauritius',
+ 'MV' => 'Maldiven',
+ 'MW' => 'Malawi',
+ 'MX' => 'Mexiko',
+ 'MY' => 'Malaysia',
+ 'MZ' => 'Mosambik',
+ 'NA' => 'Namibia',
+ 'NC' => 'Neikaledonien',
+ 'NE' => 'Niger',
+ 'NF' => 'Norfolkinsel',
+ 'NG' => 'Nigeria',
+ 'NI' => 'Nicaragua',
+ 'NL' => 'Holland',
+ 'NO' => 'Norwegen',
+ 'NP' => 'Nepal',
+ 'NR' => 'Nauru',
+ 'NU' => 'Niue',
+ 'NZ' => 'Neiséiland',
+ 'OM' => 'Oman',
+ 'PA' => 'Panama',
+ 'PE' => 'Peru',
+ 'PF' => 'Franséisch-Polynesien',
+ 'PG' => 'Papua-Neiguinea',
+ 'PH' => 'Philippinnen',
+ 'PK' => 'Pakistan',
+ 'PL' => 'Polen',
+ 'PM' => 'St. Pierre a Miquelon',
+ 'PN' => 'Pitcairninselen',
+ 'PR' => 'Puerto Rico',
+ 'PS' => 'Palestina',
+ 'PT' => 'Portugal',
+ 'PW' => 'Palau',
+ 'PY' => 'Paraguay',
+ 'QA' => 'Katar',
+ 'QO' => 'Baussecht Ozeanien',
+ 'RE' => 'Réunion',
+ 'RO' => 'Rumänien',
+ 'RS' => 'Serbien',
+ 'RU' => 'Russland',
+ 'RW' => 'Ruanda',
+ 'SA' => 'Saudi-Arabien',
+ 'SB' => 'Salomonen',
+ 'SC' => 'Seychellen',
+ 'SD' => 'Sudan',
+ 'SE' => 'Schweden',
+ 'SG' => 'Singapur',
+ 'SH' => 'St. Helena',
+ 'SI' => 'Slowenien',
+ 'SJ' => 'Svalbard a Jan Mayen',
+ 'SK' => 'Slowakei',
+ 'SL' => 'Sierra Leone',
+ 'SM' => 'San Marino',
+ 'SN' => 'Senegal',
+ 'SO' => 'Somalia',
+ 'SR' => 'Suriname',
+ 'SS' => 'Südsudan',
+ 'ST' => 'São Tomé a Príncipe',
+ 'SV' => 'El Salvador',
+ 'SX' => 'Sint Maarten',
+ 'SY' => 'Syrien',
+ 'SZ' => 'Swasiland',
+ 'TA' => 'Tristan da Cunha',
+ 'TC' => 'Turks- a Caicosinselen',
+ 'TD' => 'Tschad',
+ 'TF' => 'Franséisch Süd- an Antarktisgebidder',
+ 'TG' => 'Togo',
+ 'TH' => 'Thailand',
+ 'TJ' => 'Tadschikistan',
+ 'TK' => 'Tokelau',
+ 'TL' => 'Osttimor',
+ 'TM' => 'Turkmenistan',
+ 'TN' => 'Tunesien',
+ 'TO' => 'Tonga',
+ 'TR' => 'Tierkei',
+ 'TT' => 'Trinidad an Tobago',
+ 'TV' => 'Tuvalu',
+ 'TW' => 'Taiwan',
+ 'TZ' => 'Tansania',
+ 'UA' => 'Ukrain',
+ 'UG' => 'Uganda',
+ 'UM' => 'Amerikanesch-Ozeanien',
+ 'US' => 'US',
+ 'UY' => 'Uruguay',
+ 'UZ' => 'Usbekistan',
+ 'VA' => 'Vatikanstad',
+ 'VC' => 'St. Vincent an d’Grenadinnen',
+ 'VE' => 'Venezuela',
+ 'VG' => 'Britesch Joffereninselen',
+ 'VI' => 'Amerikanesch Joffereninselen',
+ 'VN' => 'Vietnam',
+ 'VU' => 'Vanuatu',
+ 'WF' => 'Wallis a Futuna',
+ 'WS' => 'Samoa',
+ 'XK' => 'Kosovo',
+ 'YE' => 'Jemen',
+ 'YT' => 'Mayotte',
+ 'ZA' => 'Südafrika',
+ 'ZM' => 'Sambia',
+ 'ZW' => 'Simbabwe',
+);
+
+$timeUnits = array(
+ 'day-future-one' => 'an {0} Dag',
+ 'day-future-other' => 'a(n) {0} Deeg',
+ 'day-narrow-future-one' => '+{0} D.',
+ 'day-narrow-future-other' => '+{0} D.',
+ 'day-narrow-past-one' => '-{0} D.',
+ 'day-narrow-past-other' => '-{0} D.',
+ 'day-one' => '{0} Dag',
+ 'day-other' => '{0} Deeg',
+ 'day-past-one' => 'virun {0} Dag',
+ 'day-past-other' => 'viru(n) {0} Deeg',
+ 'day-short-future-one' => 'an {0} D.',
+ 'day-short-future-other' => 'a(n) {0} D.',
+ 'day-short-past-one' => 'virun {0} D.',
+ 'day-short-past-other' => 'viru(n) {0} D.',
+ 'hour-future-one' => 'an {0} Stonn',
+ 'hour-future-other' => 'a(n) {0} Stonnen',
+ 'hour-narrow-future-one' => '+{0} St.',
+ 'hour-narrow-future-other' => '+{0} St.',
+ 'hour-narrow-past-one' => '-{0} St.',
+ 'hour-narrow-past-other' => '-{0} St.',
+ 'hour-one' => '{0} Stonn',
+ 'hour-other' => '{0} Stonnen',
+ 'hour-past-one' => 'virun {0} Stonn',
+ 'hour-past-other' => 'viru(n) {0} Stonnen',
+ 'hour-short-future-one' => 'an {0} St.',
+ 'hour-short-future-other' => 'a(n) {0} St.',
+ 'hour-short-past-one' => 'virun {0} St.',
+ 'hour-short-past-other' => 'viru(n) {0} St.',
+ 'microsecond-one' => '{0} Mikrosekonn',
+ 'microsecond-other' => '{0} Mikrosekonnen',
+ 'millisecond-one' => '{0} Millisekonn',
+ 'millisecond-other' => '{0} Millisekonnen',
+ 'minute-future-one' => 'an {0} Minutt',
+ 'minute-future-other' => 'a(n) {0} Minutten',
+ 'minute-narrow-future-one' => '+{0} Min.',
+ 'minute-narrow-future-other' => '+{0} Min.',
+ 'minute-narrow-past-one' => '-{0} Min.',
+ 'minute-narrow-past-other' => '-{0} Min.',
+ 'minute-one' => '{0} Minutt',
+ 'minute-other' => '{0} Minutten',
+ 'minute-past-one' => 'virun {0} Minutt',
+ 'minute-past-other' => 'viru(n) {0} Minutten',
+ 'minute-short-future-one' => 'an {0} Min.',
+ 'minute-short-future-other' => 'a(n) {0} Min.',
+ 'minute-short-past-one' => 'virun {0} Min.',
+ 'minute-short-past-other' => 'viru(n) {0} Min.',
+ 'month-future-one' => 'an {0} Mount',
+ 'month-future-other' => 'a(n) {0} Méint',
+ 'month-narrow-future-one' => '+{0} M.',
+ 'month-narrow-future-other' => '+{0} M.',
+ 'month-narrow-past-one' => '-{0} M.',
+ 'month-narrow-past-other' => '-{0} M.',
+ 'month-one' => '{0} Mount',
+ 'month-other' => '{0} Méint',
+ 'month-past-one' => 'virun {0} Mount',
+ 'month-past-other' => 'viru(n) {0} Méint',
+ 'month-short-future-one' => 'an {0} M.',
+ 'month-short-future-other' => 'a(n) {0} M.',
+ 'month-short-past-one' => 'virun {0} M.',
+ 'month-short-past-other' => 'viru(n) {0} M.',
+ 'nanosecond-one' => '{0} Nanosekonn',
+ 'nanosecond-other' => '{0} Nanosekonnen',
+ 'quarter-future-one' => 'an {0} Quartal',
+ 'quarter-future-other' => 'a(n) {0} Quartaler',
+ 'quarter-narrow-future-one' => '+{0} Q.',
+ 'quarter-narrow-future-other' => '+{0} Q.',
+ 'quarter-narrow-past-one' => '-{0} Q.',
+ 'quarter-narrow-past-other' => '-{0} Q.',
+ 'quarter-past-one' => 'virun {0} Quartal',
+ 'quarter-past-other' => 'viru(n) {0} Quartaler',
+ 'quarter-short-future-one' => 'an {0} Q.',
+ 'quarter-short-future-other' => 'a(n) {0} Q.',
+ 'quarter-short-past-one' => 'virun {0} Q.',
+ 'quarter-short-past-other' => 'viru(n) {0} Q.',
+ 'second-future-one' => 'an {0} Sekonn',
+ 'second-future-other' => 'a(n) {0} Sekonnen',
+ 'second-narrow-future-one' => '+{0} Sek.',
+ 'second-narrow-future-other' => '+{0} Sek.',
+ 'second-narrow-past-one' => '-{0} Sek.',
+ 'second-narrow-past-other' => '-{0} Sek.',
+ 'second-one' => '{0} Sekonn',
+ 'second-other' => '{0} Sekonnen',
+ 'second-past-one' => 'virun {0} Sekonn',
+ 'second-past-other' => 'viru(n) {0} Sekonnen',
+ 'second-short-future-one' => 'an {0} Sek.',
+ 'second-short-future-other' => 'a(n) {0} Sek.',
+ 'second-short-past-one' => 'virun {0} Sek.',
+ 'second-short-past-other' => 'viru(n) {0} Sek.',
+ 'week-future-one' => 'an {0} Woch',
+ 'week-future-other' => 'a(n) {0} Wochen',
+ 'week-narrow-future-one' => '+{0} W.',
+ 'week-narrow-future-other' => '+{0} W.',
+ 'week-narrow-past-one' => '-{0} W.',
+ 'week-narrow-past-other' => '-{0} W.',
+ 'week-one' => '{0} Woch',
+ 'week-other' => '{0} Wochen',
+ 'week-past-one' => 'virun {0} Woch',
+ 'week-past-other' => 'viru(n) {0} Wochen',
+ 'week-short-future-one' => 'an {0} W.',
+ 'week-short-future-other' => 'a(n) {0} W.',
+ 'week-short-past-one' => 'virun {0} W.',
+ 'week-short-past-other' => 'viru(n) {0} W.',
+ 'year-future-one' => 'an {0} Joer',
+ 'year-future-other' => 'a(n) {0} Joer',
+ 'year-narrow-future-one' => '+{0} J.',
+ 'year-narrow-future-other' => '+{0} J.',
+ 'year-narrow-past-one' => '-{0} J.',
+ 'year-narrow-past-other' => '-{0} J.',
+ 'year-one' => '{0} Joer',
+ 'year-other' => '{0} Joer',
+ 'year-past-one' => 'virun {0} Joer',
+ 'year-past-other' => 'viru(n) {0} Joer',
+ 'year-short-future-one' => 'an {0} J.',
+ 'year-short-future-other' => 'a(n) {0} J.',
+ 'year-short-past-one' => 'virun {0} J.',
+ 'year-short-past-other' => 'viru(n) {0} J.',
+);
diff --git a/MLEB/cldr/CldrNames/CldrNamesLg.php b/MLEB/cldr/CldrNames/CldrNamesLg.php
new file mode 100644
index 00000000..11ca3348
--- /dev/null
+++ b/MLEB/cldr/CldrNames/CldrNamesLg.php
@@ -0,0 +1,340 @@
+<?php
+
+$languageNames = array(
+ 'ak' => 'Lu-akaani',
+ 'am' => 'Lu-amhariki',
+ 'ar' => 'Luwarabu',
+ 'be' => 'Lubelarusi',
+ 'bg' => 'Lubulugariya',
+ 'bn' => 'Lubengali',
+ 'cs' => 'Luceeke',
+ 'de' => 'Ludaaki',
+ 'el' => 'Lugereeki/Luyonaani',
+ 'en' => 'Lungereza',
+ 'es' => 'Lusipanya',
+ 'fa' => 'Luperusi',
+ 'fr' => 'Lufalansa',
+ 'ha' => 'Luhawuza',
+ 'hi' => 'Luhindu',
+ 'hu' => 'Luhangare',
+ 'id' => 'Luyindonezya',
+ 'ig' => 'Luyibo',
+ 'it' => 'Luyitale',
+ 'ja' => 'Lujapani',
+ 'jv' => 'Lunnajjava',
+ 'km' => 'Lukme',
+ 'ko' => 'Lukoreya',
+ 'lg' => 'Luganda',
+ 'ms' => 'Lumalayi',
+ 'my' => 'Lubbama',
+ 'ne' => 'Lunepali',
+ 'nl' => 'Luholandi',
+ 'pa' => 'Lupunjabi',
+ 'pl' => 'Lupolandi',
+ 'pt' => 'Lupotugiizi',
+ 'ro' => 'Lulomaniya',
+ 'ru' => 'Lulasa',
+ 'rw' => 'Lunarwanda',
+ 'so' => 'Lusomaliya',
+ 'sv' => 'Luswideni',
+ 'ta' => 'Lutamiiru',
+ 'th' => 'Luttaayi',
+ 'tr' => 'Lutake',
+ 'uk' => 'Luyukurayine',
+ 'ur' => 'Lu-urudu',
+ 'vi' => 'Luvyetinaamu',
+ 'yo' => 'Luyoruba',
+ 'zh' => 'Lucayina',
+ 'zu' => 'Luzzulu',
+);
+
+$currencyNames = array(
+ 'AED' => 'Diraamu eya Emireeti',
+ 'AOA' => 'Kwanza ey’Angola',
+ 'AUD' => 'Doola ey’Awusiturelya',
+ 'BHD' => 'Dinaali ey’eBaareeni',
+ 'BIF' => 'Faranga ey’eburundi',
+ 'BWP' => 'Pula ey’eBotiswana',
+ 'CAD' => 'Doola ey’eKanada',
+ 'CDF' => 'Faranga ey’eKongo',
+ 'CHF' => 'Faranga ey’eSwitizirandi',
+ 'CNY' => 'Yuwani Reniminibi ey’eCayina',
+ 'CVE' => 'Esikudo ey’Keepu Veredi',
+ 'DJF' => 'Faranga ey’eJjibuti',
+ 'DZD' => 'Dinaali ey’Aligerya',
+ 'EGP' => 'Pawundi ey’eMisiri',
+ 'ERN' => 'Nakifa ey’Eritureya',
+ 'ETB' => 'Biiru ey’Esyopya',
+ 'EUR' => 'Yuro',
+ 'GBP' => 'Pawundi ey’eBungereza',
+ 'GHC' => 'Sedi ey’eGana',
+ 'GMD' => 'Dalasi ey’eGambya',
+ 'GNS' => 'Faranga ey’eGini',
+ 'INR' => 'Rupiya ey’eBuyindi',
+ 'JPY' => 'Yeni ey’eJapani',
+ 'KES' => 'Silingi ey’eKenya',
+ 'KMF' => 'Faranga ey’eKomoro',
+ 'LRD' => 'Doola ey’eLiberya',
+ 'LSL' => 'Loti ey’eLesoso',
+ 'LYD' => 'Dinaali ey’eLibya',
+ 'MAD' => 'Diraamu ey’eMoroko',
+ 'MGA' => 'Faranga ey’eMalagase',
+ 'MRO' => 'Wugwiya ey’eMawritenya',
+ 'MUR' => 'Rupiya ey’eMawurisyasi',
+ 'MWK' => 'Kwaca ey’eMalawi',
+ 'MZM' => 'Metikaali ey’eMozambiiki',
+ 'NAD' => 'Doola ey’eNamibiya',
+ 'NGN' => 'Nayira ey’eNayijerya',
+ 'RWF' => 'Faranga ey’eRwanda',
+ 'SAR' => 'Riyaali ey’eBuwarabu',
+ 'SCR' => 'Rupiya ey’eSesere',
+ 'SDG' => 'Dinaali ey’eSudaani',
+ 'SDP' => 'Pawundi ey’eSudaani',
+ 'SHP' => 'Pawundi ey’eSenti Herena',
+ 'SLL' => 'Lewone',
+ 'SOS' => 'Silingi ey’eSomaliya',
+ 'STD' => 'Dobura ey’eSantome ne Purincipe',
+ 'SZL' => 'Lilangeni',
+ 'TND' => 'Dinaali ey’eTunizya',
+ 'TZS' => 'Silingi ey’eTanzaniya',
+ 'UGX' => 'Silingi eya Yuganda',
+ 'USD' => 'Doola ey’Amerika',
+ 'XAF' => 'Faranga ey’omu Afirika eya wakati',
+ 'XOF' => 'Faranga ey’omu Afirika ey’ebugwanjuba',
+ 'ZAR' => 'Randi ey’eSawusafirika',
+ 'ZMK' => 'Kwaca ey’eZambya (1968–2012)',
+ 'ZMW' => 'Kwaca ey’eZambya',
+ 'ZWD' => 'Doola ey’eZimbabwe',
+);
+
+$currencySymbols = array(
+ 'UGX' => 'USh',
+);
+
+$countryNames = array(
+ 'AD' => 'Andora',
+ 'AE' => 'Emireeti',
+ 'AF' => 'Afaganisitani',
+ 'AG' => 'Antigwa ne Barabuda',
+ 'AI' => 'Angwila',
+ 'AL' => 'Alibaniya',
+ 'AM' => 'Arameniya',
+ 'AN' => 'Bizinga bya Antile eby’abaHolandi',
+ 'AO' => 'Angola',
+ 'AR' => 'Arigentina',
+ 'AS' => 'Samowa omumerika',
+ 'AT' => 'Awusituriya',
+ 'AU' => 'Awusitureliya',
+ 'AW' => 'Aruba',
+ 'AZ' => 'Azerebayijaani',
+ 'BA' => 'Boziniya Hezegovina',
+ 'BB' => 'Barabadosi',
+ 'BD' => 'Bangaladesi',
+ 'BE' => 'Bubirigi',
+ 'BF' => 'Burukina Faso',
+ 'BG' => 'Bulugariya',
+ 'BH' => 'Baareeni',
+ 'BI' => 'Burundi',
+ 'BJ' => 'Benini',
+ 'BM' => 'Beremuda',
+ 'BN' => 'Burunayi',
+ 'BO' => 'Boliviya',
+ 'BR' => 'Buraziiri',
+ 'BS' => 'Bahamasi',
+ 'BT' => 'Butaani',
+ 'BW' => 'Botiswana',
+ 'BY' => 'Belarusi',
+ 'BZ' => 'Belize',
+ 'CA' => 'Kanada',
+ 'CD' => 'Kongo - Zayire',
+ 'CF' => 'Lipubulika eya Senturafiriki',
+ 'CG' => 'Kongo',
+ 'CH' => 'Switizirandi',
+ 'CI' => 'Kote Divwa',
+ 'CK' => 'Bizinga bya Kkuki',
+ 'CL' => 'Cile',
+ 'CM' => 'Kameruuni',
+ 'CN' => 'Cayina',
+ 'CO' => 'Kolombya',
+ 'CR' => 'Kosita Rika',
+ 'CU' => 'Cuba',
+ 'CV' => 'Bizinga by’e Kepu Veredi',
+ 'CY' => 'Sipuriya',
+ 'CZ' => 'Lipubulika ya Ceeka',
+ 'DE' => 'Budaaki',
+ 'DJ' => 'Jjibuti',
+ 'DK' => 'Denimaaka',
+ 'DM' => 'Dominika',
+ 'DO' => 'Lipubulika ya Dominika',
+ 'DZ' => 'Aligerya',
+ 'EC' => 'Ekwado',
+ 'EE' => 'Esitoniya',
+ 'EG' => 'Misiri',
+ 'ER' => 'Eritureya',
+ 'ES' => 'Sipeyini',
+ 'ET' => 'Esyopya',
+ 'FI' => 'Finilandi',
+ 'FJ' => 'Fiji',
+ 'FK' => 'Bizinga by’eFalikalandi',
+ 'FM' => 'Mikuronezya',
+ 'FR' => 'Bufalansa',
+ 'GA' => 'Gaboni',
+ 'GB' => 'Bungereza',
+ 'GD' => 'Gurenada',
+ 'GE' => 'Gyogya',
+ 'GF' => 'Guyana enfalansa',
+ 'GH' => 'Gana',
+ 'GI' => 'Giburalita',
+ 'GL' => 'Gurenelandi',
+ 'GM' => 'Gambya',
+ 'GN' => 'Gini',
+ 'GP' => 'Gwadalupe',
+ 'GQ' => 'Gayana ey’oku ekweta',
+ 'GR' => 'Bugereeki/Buyonaani',
+ 'GT' => 'Gwatemala',
+ 'GU' => 'Gwamu',
+ 'GW' => 'Gini-Bisawu',
+ 'GY' => 'Gayana',
+ 'HN' => 'Hundurasi',
+ 'HR' => 'Kurowesya',
+ 'HT' => 'Hayiti',
+ 'HU' => 'Hangare',
+ 'ID' => 'Yindonezya',
+ 'IE' => 'Ayalandi',
+ 'IL' => 'Yisirayeri',
+ 'IN' => 'Buyindi',
+ 'IO' => 'Bizinga by’eCago',
+ 'IQ' => 'Yiraaka',
+ 'IR' => 'Yiraani',
+ 'IS' => 'Ayisirandi',
+ 'IT' => 'Yitale',
+ 'JM' => 'Jamayika',
+ 'JO' => 'Yorodani',
+ 'JP' => 'Japani',
+ 'KE' => 'Kenya',
+ 'KG' => 'Kirigizisitaani',
+ 'KH' => 'Kambodya',
+ 'KI' => 'Kiribati',
+ 'KM' => 'Bizinga by’eKomoro',
+ 'KN' => 'Senti Kitisi ne Nevisi',
+ 'KP' => 'Koreya ey’omumambuka',
+ 'KR' => 'Koreya ey’omumaserengeta',
+ 'KW' => 'Kuweti',
+ 'KY' => 'Bizinga ebya Kayimaani',
+ 'KZ' => 'Kazakisitaani',
+ 'LA' => 'Lawosi',
+ 'LB' => 'Lebanoni',
+ 'LC' => 'Senti Luciya',
+ 'LI' => 'Licitensitayini',
+ 'LK' => 'Sirilanka',
+ 'LR' => 'Liberya',
+ 'LS' => 'Lesoso',
+ 'LT' => 'Lisuwenya',
+ 'LU' => 'Lukisembaaga',
+ 'LV' => 'Lativya',
+ 'LY' => 'Libya',
+ 'MA' => 'Moroko',
+ 'MC' => 'Monako',
+ 'MD' => 'Molodova',
+ 'MG' => 'Madagasika',
+ 'MH' => 'Bizinga bya Mariso',
+ 'MK' => 'Masedoniya',
+ 'ML' => 'Mali',
+ 'MM' => 'Myanima',
+ 'MN' => 'Mongoliya',
+ 'MP' => 'Bizinga bya Mariyana eby’omumambuka',
+ 'MQ' => 'Maritiniiki',
+ 'MR' => 'Mawulitenya',
+ 'MS' => 'Monteseraati',
+ 'MT' => 'Malita',
+ 'MU' => 'Mawulisyasi',
+ 'MV' => 'Bizinga by’eMalidive',
+ 'MW' => 'Malawi',
+ 'MX' => 'Mekisiko',
+ 'MY' => 'Malezya',
+ 'MZ' => 'Mozambiiki',
+ 'NA' => 'Namibiya',
+ 'NC' => 'Kaledonya mupya',
+ 'NE' => 'Nije',
+ 'NF' => 'Kizinga ky’eNorofoko',
+ 'NG' => 'Nayijerya',
+ 'NI' => 'Nikaraguwa',
+ 'NL' => 'Holandi',
+ 'NO' => 'Nowe',
+ 'NP' => 'Nepalo',
+ 'NR' => 'Nawuru',
+ 'NU' => 'Niyuwe',
+ 'NZ' => 'Niyuziirandi',
+ 'OM' => 'Omaani',
+ 'PA' => 'Panama',
+ 'PE' => 'Peru',
+ 'PF' => 'Polinesiya enfalansa',
+ 'PG' => 'Papwa Nyugini',
+ 'PH' => 'Bizinga bya Firipino',
+ 'PK' => 'Pakisitaani',
+ 'PL' => 'Polandi',
+ 'PM' => 'Senti Piyere ne Mikeloni',
+ 'PN' => 'Pitikeeni',
+ 'PR' => 'Potoriko',
+ 'PS' => 'Palesitayini',
+ 'PT' => 'Potugaali',
+ 'PW' => 'Palawu',
+ 'PY' => 'Paragwayi',
+ 'QA' => 'Kataa',
+ 'RE' => 'Leyunyoni',
+ 'RO' => 'Lomaniya',
+ 'RU' => 'Lasa',
+ 'RW' => 'Rwanda',
+ 'SA' => 'Sawudarebya - Buwarabu',
+ 'SB' => 'Bizanga by’eSolomooni',
+ 'SC' => 'Sesere',
+ 'SD' => 'Sudaani',
+ 'SE' => 'Swideni',
+ 'SG' => 'Singapowa',
+ 'SH' => 'Senti Herena',
+ 'SI' => 'Sirovenya',
+ 'SK' => 'Sirovakya',
+ 'SL' => 'Siyeralewone',
+ 'SM' => 'Sanimarino',
+ 'SN' => 'Senegaalo',
+ 'SO' => 'Somaliya',
+ 'SR' => 'Surinaamu',
+ 'ST' => 'Sanitome ne Purincipe',
+ 'SV' => 'El salivado',
+ 'SY' => 'Siriya',
+ 'SZ' => 'Swazirandi',
+ 'TC' => 'Bizinga by’eTaaka ne Kayikosi',
+ 'TD' => 'Caadi',
+ 'TG' => 'Togo',
+ 'TH' => 'Tayirandi',
+ 'TJ' => 'Tajikisitaani',
+ 'TK' => 'Tokelawu',
+ 'TL' => 'Timowa',
+ 'TM' => 'Takimenesitaani',
+ 'TN' => 'Tunisya',
+ 'TO' => 'Tonga',
+ 'TR' => 'Ttake',
+ 'TT' => 'Turindaadi ne Tobago',
+ 'TV' => 'Tuvalu',
+ 'TW' => 'Tayiwani',
+ 'TZ' => 'Tanzaniya',
+ 'UA' => 'Yukurayine',
+ 'UG' => 'Yuganda',
+ 'US' => 'Amerika',
+ 'UY' => 'Wurugwayi',
+ 'UZ' => 'Wuzibekisitaani',
+ 'VA' => 'Vatikaani',
+ 'VC' => 'Senti Vinsenti ne Gurendadiini',
+ 'VE' => 'Venzwera',
+ 'VG' => 'Bizinga ebya Virigini ebitwalibwa Bungereza',
+ 'VI' => 'Bizinga bya Virigini eby’Amerika',
+ 'VN' => 'Vyetinaamu',
+ 'VU' => 'Vanawuwatu',
+ 'WF' => 'Walisi ne Futuna',
+ 'WS' => 'Samowa',
+ 'YE' => 'Yemeni',
+ 'YT' => 'Mayotte',
+ 'ZA' => 'Sawusafirika',
+ 'ZM' => 'Zambya',
+ 'ZW' => 'Zimbabwe',
+);
diff --git a/MLEB/cldr/CldrNames/CldrNamesLn.php b/MLEB/cldr/CldrNames/CldrNamesLn.php
new file mode 100644
index 00000000..f8e60681
--- /dev/null
+++ b/MLEB/cldr/CldrNames/CldrNamesLn.php
@@ -0,0 +1,403 @@
+<?php
+
+$languageNames = array(
+ 'af' => 'afrikansi',
+ 'ak' => 'akan',
+ 'am' => 'liamariki',
+ 'ar' => 'lialabo',
+ 'be' => 'libyelorisí',
+ 'bg' => 'libiligali',
+ 'bn' => 'libengali',
+ 'cs' => 'litshekɛ',
+ 'de' => 'lialemá',
+ 'de-at' => 'lialémani ya Otrish',
+ 'de-ch' => 'lialémani ya Swisi',
+ 'el' => 'ligeleki',
+ 'en' => 'lingɛlɛ́sa',
+ 'en-ca' => 'lingɛlɛ́sa ya Kanadá',
+ 'en-gb' => 'lingɛlɛ́sa ya Ingɛlɛ́tɛlɛ',
+ 'es' => 'lisipanye',
+ 'es-419' => 'lispanyoli ya Ameríka Latína',
+ 'es-es' => 'lispanyoli ya Erópa',
+ 'fa' => 'lipelésanɛ',
+ 'fr' => 'lifalansɛ́',
+ 'fr-ca' => 'lifalansɛ́ ya Kanadá',
+ 'fr-ch' => 'lifalansɛ́ ya Swisi',
+ 'gsw' => 'lialemaniki',
+ 'ha' => 'hausa',
+ 'he' => 'liébeleo',
+ 'hi' => 'lihindi',
+ 'hu' => 'liongili',
+ 'id' => 'lindonezi',
+ 'ig' => 'igbo',
+ 'it' => 'litaliano',
+ 'ja' => 'lizapɔ',
+ 'jv' => 'lizava',
+ 'kg' => 'kikɔ́ngɔ',
+ 'km' => 'likambodza',
+ 'ko' => 'likoreya',
+ 'la' => 'latina',
+ 'ln' => 'lingála',
+ 'lu' => 'kiluba',
+ 'lua' => 'ciluba',
+ 'ms' => 'limalezi',
+ 'my' => 'libilimá',
+ 'ne' => 'linepalɛ',
+ 'nl' => 'lifalamá',
+ 'pa' => 'lipendzabi',
+ 'pl' => 'lipolonɛ',
+ 'pt' => 'lipulutugɛ́si',
+ 'pt-br' => 'lipulutugɛ́si ya Brazil',
+ 'pt-pt' => 'lipulutugɛ́si ya Erópa',
+ 'rm' => 'liromansh',
+ 'ro' => 'liromani',
+ 'ru' => 'lirisí',
+ 'rw' => 'kinyarwanda',
+ 'so' => 'lisomali',
+ 'sv' => 'lisuwedɛ',
+ 'sw' => 'kiswahíli',
+ 'ta' => 'litamuli',
+ 'th' => 'litaye',
+ 'tr' => 'litiliki',
+ 'uk' => 'likrɛni',
+ 'ur' => 'liurdu',
+ 'vi' => 'liviyetinámi',
+ 'yo' => 'yoruba',
+ 'zh' => 'lisinwa',
+ 'zu' => 'zulu',
+);
+
+$currencyNames = array(
+ 'AED' => 'Dirihamɛ ya Lémila alabo',
+ 'AOA' => 'Kwanza ya Angóla',
+ 'ARS' => 'Peso y’Argentina',
+ 'AUD' => 'Dolarɛ ya Ositali',
+ 'BHD' => 'Dinarɛ ya Bahrɛnɛ',
+ 'BIF' => 'Falánga ya Burundi',
+ 'BOB' => 'Boliviano',
+ 'BRL' => 'Real ya Brazil',
+ 'BWP' => 'Pula ya Botswana',
+ 'CAD' => 'Dolarɛ ya Kanadá',
+ 'CDF' => 'Falánga ya Kongó',
+ 'CHF' => 'Falánga ya Swisɛ',
+ 'CLP' => 'Peso ya Shili',
+ 'CNY' => 'Yuanɛ Renminbi ya Sinɛ',
+ 'COP' => 'Peso ya Kolombi',
+ 'CRC' => 'Colon ya Kosta Rika',
+ 'CUP' => 'Peso ya Kuba',
+ 'CVE' => 'Esikudo ya Kapevɛrɛ',
+ 'CZK' => 'Motolé Sheki',
+ 'DJF' => 'Falánga ya Dzibuti',
+ 'DKK' => 'Motolé ya Danemark',
+ 'DOP' => 'Peso Dominikani',
+ 'DZD' => 'Dinarɛ ya Alizeri',
+ 'EGP' => 'Paunɛ ya Ezípitɛ',
+ 'ERN' => 'Nakfa ya Elitlɛ',
+ 'ETB' => 'Birɛ ya Etsiópi',
+ 'EUR' => 'Ɛlɔ́',
+ 'GBP' => 'Paunɛ ya Angɛlɛtɛ́lɛ',
+ 'GHC' => 'Sedi ya Gana',
+ 'GHS' => 'Cedi',
+ 'GMD' => 'Dalasi ya Gambi',
+ 'GNF' => 'Falánga ya Gine',
+ 'GNS' => 'Falánga ya Ginɛ',
+ 'HTG' => 'Gurde',
+ 'INR' => 'Rupi ya Índɛ',
+ 'ISK' => 'Motolé ya Islandi',
+ 'JPY' => 'Yeni ya Zapɔ',
+ 'KES' => 'Shilingɛ ya Kenya',
+ 'KMF' => 'Falánga ya Komoro',
+ 'LRD' => 'Dolarɛ ya Liberya',
+ 'LSL' => 'Loti ya Lesóto',
+ 'LTL' => 'Litas ya Litwani',
+ 'LVL' => 'Lats ya Letoni',
+ 'LYD' => 'Dinarɛ ya Libí',
+ 'MAD' => 'Dirihame ya Marokɛ',
+ 'MGA' => 'Falánga ya Madagasikarɛ',
+ 'MRO' => 'Ugwiya ya Moritani',
+ 'MUR' => 'Rupi ya Morisi',
+ 'MWK' => 'Kwasha ya Malawi',
+ 'MXN' => 'Peso ya Mexiko',
+ 'MZM' => 'Metikali ya Mozambiki',
+ 'NAD' => 'Dolarɛ ya Namibi',
+ 'NGN' => 'Naira ya Nizerya',
+ 'NOK' => 'Motolé ya Norvej',
+ 'PAB' => 'Balboa',
+ 'PEN' => 'Sol Sika',
+ 'PYG' => 'Guarani',
+ 'RWF' => 'Falánga ya Rwanda',
+ 'SAR' => 'Riyalɛ ya Alabi Sawuditɛ',
+ 'SCR' => 'Rupi ya Sɛshɛlɛ',
+ 'SDG' => 'Dinarɛ ya Sudá',
+ 'SDP' => 'Paunɛ ya Sudá',
+ 'SEK' => 'Motolé ya Swédi',
+ 'SHP' => 'Paunɛ ya Sántu elena',
+ 'SLL' => 'Leonɛ',
+ 'SOS' => 'Shilingɛ ya Somali',
+ 'STD' => 'Dobra ya Sao Tomé mpé Presipe',
+ 'SZL' => 'Lilangeni',
+ 'TND' => 'Dinarɛ ya Tinizi',
+ 'TZS' => 'Shilingɛ ya Tanzani',
+ 'UGX' => 'Shilingɛ ya Uganda',
+ 'USD' => 'Dolarɛ ya Ameriki',
+ 'XAF' => 'Falánga CFA BEAC',
+ 'XOF' => 'Falánga CFA BCEAO',
+ 'ZAR' => 'Randɛ ya Afríka Súdi',
+ 'ZMK' => 'Kwasha ya Zambi (1968–2012)',
+ 'ZMW' => 'Kwasha ya Zambi',
+ 'ZWD' => 'Dolarɛ ya Zimbabwɛ',
+);
+
+$currencySymbols = array(
+ 'CDF' => 'FC',
+);
+
+$countryNames = array(
+ 'AC' => 'Esenga ya Mbuta o likoló',
+ 'AD' => 'Andorɛ',
+ 'AE' => 'Lɛmila alabo',
+ 'AF' => 'Afiganisitá',
+ 'AG' => 'Antiga mpé Barbuda',
+ 'AI' => 'Angiyɛ',
+ 'AL' => 'Alibani',
+ 'AM' => 'Amɛni',
+ 'AN' => 'Antiyɛ ya Olandɛ',
+ 'AO' => 'Angóla',
+ 'AQ' => 'Antarctique',
+ 'AR' => 'Arizantinɛ',
+ 'AS' => 'Samoa ya Ameriki',
+ 'AT' => 'Otilisi',
+ 'AU' => 'Ositáli',
+ 'AW' => 'Aruba',
+ 'AX' => 'Bisanga Ɛland',
+ 'AZ' => 'Azɛlɛbaizá',
+ 'BA' => 'Bosini mpé Hezegovine',
+ 'BB' => 'Barɛbadɛ',
+ 'BD' => 'Bengalidɛsi',
+ 'BE' => 'Beleziki',
+ 'BF' => 'Bukina Faso',
+ 'BG' => 'Biligari',
+ 'BH' => 'Bahrɛnɛ',
+ 'BI' => 'Burundi',
+ 'BJ' => 'Benɛ',
+ 'BM' => 'Bermuda',
+ 'BN' => 'Brineyi',
+ 'BO' => 'Bolivi',
+ 'BR' => 'Brezílɛ',
+ 'BS' => 'Bahamasɛ',
+ 'BT' => 'Butáni',
+ 'BV' => 'Esenga Buvé',
+ 'BW' => 'Botswana',
+ 'BY' => 'Byelorisi',
+ 'BZ' => 'Belizɛ',
+ 'CA' => 'Kanada',
+ 'CC' => 'Bisanga Kokos',
+ 'CD' => 'Repibiki demokratiki ya Kongó',
+ 'CF' => 'Repibiki ya Afríka ya Káti',
+ 'CG' => 'Kongo',
+ 'CH' => 'Swisɛ',
+ 'CI' => 'Kotídivualɛ',
+ 'CK' => 'Bisanga bya Kookɛ',
+ 'CL' => 'Síli',
+ 'CM' => 'Kamɛrune',
+ 'CN' => 'Sinɛ',
+ 'CO' => 'Kolombi',
+ 'CR' => 'Kositarika',
+ 'CU' => 'Kiba',
+ 'CV' => 'Bisanga bya Kapevɛrɛ',
+ 'CX' => 'Esenga ya Mbótama',
+ 'CY' => 'Sípɛlɛ',
+ 'CZ' => 'Repibiki Tsekɛ',
+ 'DE' => 'Alemani',
+ 'DJ' => 'Dzibuti',
+ 'DK' => 'Danɛmarike',
+ 'DM' => 'Domínike',
+ 'DO' => 'Repibiki ya Domínikɛ',
+ 'DZ' => 'Alizɛri',
+ 'EA' => 'Zewta mpé Melílla',
+ 'EC' => 'Ekwatɛ́lɛ',
+ 'EE' => 'Esitoni',
+ 'EG' => 'Ezípite',
+ 'EH' => 'Sahara ya Limbɛ',
+ 'ER' => 'Elitelɛ',
+ 'ES' => 'Esipanye',
+ 'ET' => 'Etsíopi',
+ 'EU' => 'Lisangá ya Erópa',
+ 'FI' => 'Filandɛ',
+ 'FJ' => 'Fidzi',
+ 'FK' => 'Bisanga bya Maluni',
+ 'FM' => 'Mikronezi',
+ 'FO' => 'Bisanga ya Fɛróa',
+ 'FR' => 'Falánsɛ',
+ 'GA' => 'Gabɔ',
+ 'GB' => 'Angɛlɛtɛ́lɛ',
+ 'GD' => 'Gelenadɛ',
+ 'GE' => 'Zorzi',
+ 'GF' => 'Giyanɛ ya Falánsɛ',
+ 'GG' => 'Guernesey',
+ 'GH' => 'Gana',
+ 'GI' => 'Zibatalɛ',
+ 'GL' => 'Gowelande',
+ 'GM' => 'Gambi',
+ 'GN' => 'Ginɛ',
+ 'GP' => 'Gwadɛlupɛ',
+ 'GQ' => 'Ginɛ́kwatɛ́lɛ',
+ 'GR' => 'Geleki',
+ 'GS' => 'Îles de Géorgie du Sud et Sandwich du Sud',
+ 'GT' => 'Gwatémala',
+ 'GU' => 'Gwamɛ',
+ 'GW' => 'Ginɛbisau',
+ 'GY' => 'Giyane',
+ 'HK' => 'Hong Kong',
+ 'HM' => 'Ile Heard et Iles McDonald',
+ 'HN' => 'Ondurasɛ',
+ 'HR' => 'Krowasi',
+ 'HT' => 'Ayiti',
+ 'HU' => 'Ongili',
+ 'IC' => 'Bisanga bya Kanári',
+ 'ID' => 'Indonezi',
+ 'IE' => 'Irelandɛ',
+ 'IL' => 'Isirayelɛ',
+ 'IM' => 'Esanga ya Man',
+ 'IN' => 'Índɛ',
+ 'IO' => 'Mabelé ya Angɛlɛtɛ́lɛ na mbú ya Indiya',
+ 'IQ' => 'Iraki',
+ 'IR' => 'Irâ',
+ 'IS' => 'Isilandɛ',
+ 'IT' => 'Itali',
+ 'JM' => 'Zamaiki',
+ 'JO' => 'Zɔdani',
+ 'JP' => 'Zapɔ',
+ 'KE' => 'Kenya',
+ 'KG' => 'Kigizisitá',
+ 'KH' => 'Kambodza',
+ 'KI' => 'Kiribati',
+ 'KM' => 'Komorɛ',
+ 'KN' => 'Sántu krístofe mpé Nevɛ̀s',
+ 'KP' => 'Korɛ ya nɔ́rdi',
+ 'KR' => 'Korɛ ya súdi',
+ 'KW' => 'Koweti',
+ 'KY' => 'Bisanga bya Kayíma',
+ 'KZ' => 'Kazakisitá',
+ 'LA' => 'Lawosi',
+ 'LB' => 'Libá',
+ 'LC' => 'Sántu lisi',
+ 'LI' => 'Lishɛteni',
+ 'LK' => 'Sirilanka',
+ 'LR' => 'Libériya',
+ 'LS' => 'Lesoto',
+ 'LT' => 'Litwani',
+ 'LU' => 'Likisambulu',
+ 'LV' => 'Letoni',
+ 'LY' => 'Libí',
+ 'MA' => 'Marokɛ',
+ 'MC' => 'Monako',
+ 'MD' => 'Molidavi',
+ 'ME' => 'Monténégro',
+ 'MG' => 'Madagasikari',
+ 'MH' => 'Bisanga bya Marishalɛ',
+ 'MK' => 'Masedwanɛ',
+ 'ML' => 'Malí',
+ 'MM' => 'Birmanie',
+ 'MN' => 'Mongolí',
+ 'MO' => 'Makau',
+ 'MP' => 'Bisanga bya Marianɛ ya nɔ́rdi',
+ 'MQ' => 'Martiniki',
+ 'MR' => 'Moritani',
+ 'MS' => 'Mɔsera',
+ 'MT' => 'Malitɛ',
+ 'MU' => 'Morisɛ',
+ 'MV' => 'Madívɛ',
+ 'MW' => 'Malawi',
+ 'MX' => 'Meksike',
+ 'MY' => 'Malezi',
+ 'MZ' => 'Mozambíki',
+ 'NA' => 'Namibi',
+ 'NC' => 'Kaledoni ya sika',
+ 'NE' => 'Nizɛrɛ',
+ 'NF' => 'Esanga Norfokɛ',
+ 'NG' => 'Nizerya',
+ 'NI' => 'Nikaragwa',
+ 'NL' => 'Olandɛ',
+ 'NO' => 'Norivezɛ',
+ 'NP' => 'Nepálɛ',
+ 'NR' => 'Nauru',
+ 'NU' => 'Nyué',
+ 'NZ' => 'Zelandɛ ya sika',
+ 'OM' => 'Ománɛ',
+ 'PA' => 'Panama',
+ 'PE' => 'Péru',
+ 'PF' => 'Polinezi ya Falánsɛ',
+ 'PG' => 'Papwazi Ginɛ ya sika',
+ 'PH' => 'Filipinɛ',
+ 'PK' => 'Pakisitá',
+ 'PL' => 'Poloni',
+ 'PM' => 'Sántu pététo mpé Mikelɔ',
+ 'PN' => 'Pikairni',
+ 'PR' => 'Pɔtoriko',
+ 'PS' => 'Palɛsine',
+ 'PT' => 'Putúlugɛsi',
+ 'PW' => 'Palau',
+ 'PY' => 'Palagwei',
+ 'QA' => 'Katari',
+ 'RE' => 'Lenyo',
+ 'RO' => 'Romani',
+ 'RS' => 'Serbie',
+ 'RU' => 'Risí',
+ 'RW' => 'Rwanda',
+ 'SA' => 'Alabi Sawuditɛ',
+ 'SB' => 'Bisanga Solomɔ',
+ 'SC' => 'Sɛshɛlɛ',
+ 'SD' => 'Sudá',
+ 'SE' => 'Swédɛ',
+ 'SG' => 'Singapurɛ',
+ 'SH' => 'Sántu eleni',
+ 'SI' => 'Siloveni',
+ 'SJ' => 'Svalbard mpé Jan Mayen',
+ 'SK' => 'Silovaki',
+ 'SL' => 'Siera Leonɛ',
+ 'SM' => 'Sántu Marinɛ',
+ 'SN' => 'Senegalɛ',
+ 'SO' => 'Somali',
+ 'SR' => 'Surinamɛ',
+ 'SS' => 'Sudani ya Sidi',
+ 'ST' => 'Sao Tomé mpé Presipɛ',
+ 'SV' => 'Savadɔrɛ',
+ 'SY' => 'Sirí',
+ 'SZ' => 'Swazilandi',
+ 'TC' => 'Bisanga bya Turki mpé Kaiko',
+ 'TD' => 'Tsádi',
+ 'TF' => 'Terres australes et antarctiques françaises',
+ 'TG' => 'Togo',
+ 'TH' => 'Tailandɛ',
+ 'TJ' => 'Tazikisitá',
+ 'TK' => 'Tokelau',
+ 'TL' => 'Timorɛ ya Moniɛlɛ',
+ 'TM' => 'Tikɛménisitá',
+ 'TN' => 'Tinizi',
+ 'TO' => 'Tonga',
+ 'TR' => 'Tiliki',
+ 'TT' => 'Tinidadɛ mpé Tobago',
+ 'TV' => 'Tuvalu',
+ 'TW' => 'Taiwanin',
+ 'TZ' => 'Tanzani',
+ 'UA' => 'Ikrɛni',
+ 'UG' => 'Uganda',
+ 'US' => 'Ameriki',
+ 'UY' => 'Irigwei',
+ 'UZ' => 'Uzibɛkisitá',
+ 'VA' => 'Vatiká',
+ 'VC' => 'Sántu vesá mpé Gelenadinɛ',
+ 'VE' => 'Venézuela',
+ 'VG' => 'Bisanga bya Vierzi ya Angɛlɛtɛ́lɛ',
+ 'VI' => 'Bisanga bya Vierzi ya Ameriki',
+ 'VN' => 'Viyetinamɛ',
+ 'VU' => 'Vanuatu',
+ 'WF' => 'Walisɛ mpé Futuna',
+ 'WS' => 'Samoa',
+ 'YE' => 'Yemɛnɛ',
+ 'YT' => 'Mayotɛ',
+ 'ZA' => 'Afríka ya Súdi',
+ 'ZM' => 'Zambi',
+ 'ZW' => 'Zimbabwe',
+);
diff --git a/MLEB/cldr/CldrNames/CldrNamesLo.php b/MLEB/cldr/CldrNames/CldrNamesLo.php
new file mode 100644
index 00000000..4f2d7dcb
--- /dev/null
+++ b/MLEB/cldr/CldrNames/CldrNamesLo.php
@@ -0,0 +1,1289 @@
+<?php
+
+$languageNames = array(
+ 'aa' => 'ອະຟາ',
+ 'ab' => 'ແອບຄາຊຽນ',
+ 'ace' => 'ແອັກຊີເນັສ',
+ 'ach' => 'ອາໂຄລີ',
+ 'ada' => 'ອາແດງມີ',
+ 'ady' => 'ເອດີຮິ',
+ 'ae' => 'ອາເວັສແຕນ',
+ 'af' => 'ອາຟຣິການ',
+ 'afh' => 'ແອຟີຮີລີ',
+ 'agq' => 'ອາເຮັມ',
+ 'ain' => 'ໄອນູ',
+ 'ak' => 'ອາການ',
+ 'akk' => 'ອັກກາດຽມ',
+ 'ale' => 'ອາເລີດ',
+ 'alt' => 'ອານໄຕໃຕ້',
+ 'am' => 'ອຳຮາຣິກ',
+ 'an' => 'ອາຣາໂກເນັດ',
+ 'ang' => 'ອັງກິດໂບຮານ',
+ 'anp' => 'ແອນຈີກາ',
+ 'ar' => 'ອາຣັບ',
+ 'ar-001' => 'ອາຣາບິກມາດຕະຖານສະໄໝໃໝ່',
+ 'arc' => 'ອາລາມິກ',
+ 'arn' => 'ອາຣົວຄານຽນ',
+ 'arp' => 'ອາຣາປາໂຮ',
+ 'arw' => 'ອາຣາແວກ',
+ 'as' => 'ອັສຊາມີສ',
+ 'asa' => 'ອາຊູ',
+ 'ast' => 'ອັສຕູຮຽນ',
+ 'av' => 'ອາວາຣິກ',
+ 'awa' => 'ອາວາຮິ',
+ 'ay' => 'ອາຍມາລາ',
+ 'az' => 'ອາເຊີໄບຈານິ',
+ 'ba' => 'ບາຣກີ',
+ 'bal' => 'ບາລູຊີ',
+ 'ban' => 'ບາລີເນັດ',
+ 'bas' => 'ບາຊາ',
+ 'bax' => 'ບາມຸນ',
+ 'bbj' => 'ໂຄມາລາ',
+ 'be' => 'ເບລາຣັສຊຽນ',
+ 'bej' => 'ບີເຈ',
+ 'bem' => 'ເບັມບາ',
+ 'bez' => 'ບີນາ',
+ 'bfd' => 'ບາຟັດ',
+ 'bg' => 'ບັງກາຣຽນ',
+ 'bho' => 'ໂບພູຣິ',
+ 'bi' => 'ບິສລະມາ',
+ 'bik' => 'ບີຄອນ',
+ 'bin' => 'ບີນີ',
+ 'bkm' => 'ກົມ',
+ 'bla' => 'ຊິກຊິກາ',
+ 'bm' => 'ບາມບາຣາ',
+ 'bn' => 'ເບັງກາລີ',
+ 'bo' => 'ທິເບທັນ',
+ 'br' => 'ເບຣຕັນ',
+ 'bra' => 'ບຣາ',
+ 'brx' => 'ໂບດູ',
+ 'bs' => 'ບອສນຽນ',
+ 'bss' => 'ອາຄຸດ',
+ 'bua' => 'ບູຣຽດ',
+ 'bug' => 'ບູຈີເນັດ',
+ 'bum' => 'ບູລູ',
+ 'byn' => 'ບລິນ',
+ 'byv' => 'ເມດູມບາ',
+ 'ca' => 'ຄາຕາລານ',
+ 'cad' => 'ແຄດໂດ',
+ 'car' => 'ຄາຣິບ',
+ 'cay' => 'ຄາຢູກາ',
+ 'cch' => 'ອາດແຊມ',
+ 'ce' => 'ຊີເຄນ',
+ 'ceb' => 'ຊີບູໂນ',
+ 'cgg' => 'ຊີກາ',
+ 'ch' => 'ຊາມໍໂຣ',
+ 'chb' => 'ຊິບຊາ',
+ 'chg' => 'ຊາກາໄຕ',
+ 'chk' => 'ຊູເກດ',
+ 'chm' => 'ມາຣິ',
+ 'chn' => 'ຊີນຸກຈາກອນ',
+ 'cho' => 'ຊອກຕິວ',
+ 'chp' => 'ຊີພິວຢານ',
+ 'chr' => 'ຊີໂຣກີ',
+ 'chy' => 'ຊີເຢນນີ',
+ 'ckb' => 'ໂຊຣານິ ເຄີດິຊ',
+ 'co' => 'ຄໍຊິກາ',
+ 'cop' => 'ຄອບຕິກ',
+ 'cr' => 'ຄີ',
+ 'crh' => 'ຄຣີເມນເຕີຄິຊ',
+ 'cs' => 'ເຊກ',
+ 'csb' => 'ກາຊູບຽນ',
+ 'cu' => 'ໂບດສລາວິກ',
+ 'cv' => 'ຊູວາຊ',
+ 'cy' => 'ເວວ',
+ 'da' => 'ແດນິຊ',
+ 'dak' => 'ດາໂກຕາ',
+ 'dar' => 'ດາກວາ',
+ 'dav' => 'ໄຕຕາ',
+ 'de' => 'ເຢຍລະມັນ',
+ 'de-at' => 'ອອສຕຣຽນ ເຈີແມນ',
+ 'de-ch' => 'ສະວິສ ໄຮ ເຈີແມນ',
+ 'del' => 'ເດລາວາ',
+ 'den' => 'ຊີເລັບ',
+ 'dgr' => 'ໂດກຣິບ',
+ 'din' => 'ດິນກາ',
+ 'dje' => 'ຊາມາ',
+ 'doi' => 'ດອກຣີ',
+ 'dsb' => 'ຊໍບຽນຕໍ່ກວ່າ',
+ 'dua' => 'ດົວລາ',
+ 'dum' => 'ດັກກາງ',
+ 'dv' => 'ດີວີຮີ',
+ 'dyo' => 'ໂຈລາ-ຟອນຢີ',
+ 'dyu' => 'ດູລາ',
+ 'dz' => 'ດີຊອງຄາ',
+ 'dzg' => 'ດາຊາກາ',
+ 'ebu' => 'ເອັມບູ',
+ 'ee' => 'ອິວາ',
+ 'efi' => 'ອີຟິກ',
+ 'egy' => 'ອີຢິບບູຮານ',
+ 'eka' => 'ອີກາຈັກ',
+ 'el' => 'ກຣີກ',
+ 'elx' => 'ອີລາໄມ',
+ 'en' => 'ອັງກິດ',
+ 'en-au' => 'ອັງກິດ (ອອສເຕຣລຽນ)',
+ 'en-ca' => 'ອັງກິດ (ເຄເນດຽນ)',
+ 'en-gb' => 'ອັງກິດ (ບຣິດທິຊ)',
+ 'en-us' => 'ອັງກິດ (ອາເມລິກັນ)',
+ 'enm' => 'ອັງກິດກາງ',
+ 'eo' => 'ເອສເປີຣັນໂຕ',
+ 'es' => 'ສະແປນນິຊ',
+ 'es-419' => 'ລາຕິນ ອາເມຣິກັນ ສະແປນນິຊ',
+ 'es-es' => 'ຢູໂຣປຽນ ສະແປນນິຊ',
+ 'es-mx' => 'ເມັກຊິກັນ ສະແປນນິຊ',
+ 'et' => 'ເອສໂຕນຽນ',
+ 'eu' => 'ບັສກີ',
+ 'ewo' => 'ອີວອນດູ',
+ 'fa' => 'ເປີຊຽນ',
+ 'fan' => 'ແຟງ',
+ 'fat' => 'ແຟນຕີ',
+ 'ff' => 'ຟູລາ',
+ 'fi' => 'ຟິນນິຊ',
+ 'fil' => 'ຟີລິປີໂນ',
+ 'fj' => 'ຟິຈຽນ',
+ 'fo' => 'ຟາໂຣສ',
+ 'fon' => 'ຟອນ',
+ 'fr' => 'ຝຣັ່ງ',
+ 'fr-ca' => 'ເຄເນດຽນ ຝຣັ່ງ',
+ 'fr-ch' => 'ສະວິສ ຝຣັ່ງ',
+ 'frm' => 'ຟຮັ່ງເສດກາງ',
+ 'fro' => 'ຟຮັ່ງເສດໂບຮານ',
+ 'frr' => 'ຟຣີຊຽນເໜືອ',
+ 'frs' => 'ຟຣີຊຽນຕາເວັນອອກ',
+ 'fur' => 'ຟຣີລຽນ',
+ 'fy' => 'ເວສເທີນ ຟຣິຊຽນ',
+ 'ga' => 'ໄອຣິສ',
+ 'gaa' => 'ກາ',
+ 'gag' => 'ກາກາອຸຊ',
+ 'gay' => 'ກາໂຢ',
+ 'gba' => 'ບາຍາ',
+ 'gd' => 'ສະກັອດເກລິກ',
+ 'gez' => 'ກີ',
+ 'gil' => 'ກິນເບີເທັດ',
+ 'gl' => 'ກາລິຊຽນ',
+ 'gmh' => 'ເຢຍລະມັນສູງກາງ',
+ 'gn' => 'ກົວຣານີ',
+ 'goh' => 'ເຢຍລະມັນສູງໂບຮານ',
+ 'gon' => 'ກອນດີ',
+ 'gor' => 'ໂກຣອນຕາໂຣ',
+ 'got' => 'ກອດຮິກ',
+ 'grb' => 'ກຣີໂບ',
+ 'grc' => 'ແອນຊຽນກຣີກ',
+ 'gsw' => 'ສະວິສ ເຈີແມນ',
+ 'gu' => 'ກູຈາຣາຕິ',
+ 'guz' => 'ກູຊິ',
+ 'gv' => 'ແມງຊ໌',
+ 'gwi' => 'ວິດອິນ',
+ 'ha' => 'ເຮົາຊາ',
+ 'hai' => 'ໄຮດາ',
+ 'haw' => 'ຮາໄວອຽນ',
+ 'he' => 'ຮີບຣິວ',
+ 'hi' => 'ຮິນດິ',
+ 'hil' => 'ຮິຣິໄກນອນ',
+ 'hit' => 'ຮິດໄຕ',
+ 'hmn' => 'ມອງ',
+ 'ho' => 'ຮິຣິໂມຕູ',
+ 'hr' => 'ໂຄຣເອທຽນ',
+ 'hsb' => 'ຊຸບເປີຊໍບຽນ',
+ 'ht' => 'ໄຮຕຽນ',
+ 'hu' => 'ຮັງກາຣຽນ',
+ 'hup' => 'ຮູປາ',
+ 'hy' => 'ອາເມນຽນ',
+ 'hz' => 'ເຮິຮິໂຣ',
+ 'ia' => 'ອິນເຕີລິງລົວ',
+ 'iba' => 'ໄອບານ',
+ 'ibb' => 'ໄອໄບໄບໂອ',
+ 'id' => 'ອິນໂດເນຊຽນ',
+ 'ie' => 'ອິນເຕີລິງກຣີ',
+ 'ig' => 'ອິກໂບ',
+ 'ii' => 'ເຊສວຍຢີ',
+ 'ik' => 'ອິນນູປຽກ',
+ 'ilo' => 'ໄອໂລໂກ',
+ 'inh' => 'ອິນກັຊ',
+ 'io' => 'ອີໂດ',
+ 'is' => 'ໄອສແລນດິກ',
+ 'it' => 'ອິຕາລຽນ',
+ 'iu' => 'ອິນນຸກຕິຕັດ',
+ 'ja' => 'ຍີ່ປຸ່ນ',
+ 'jbo' => 'ໂລບບັນ',
+ 'jgo' => 'ງອມບາ',
+ 'jmc' => 'ມາແຊມ',
+ 'jpr' => 'ຈູແດວ-ເພີຊຽນ',
+ 'jrb' => 'ຈູແດວ-ອາລາບິກ',
+ 'jv' => 'ຈາແວນີສ',
+ 'ka' => 'ຈໍຈຽນ',
+ 'kaa' => 'ກາຣາ-ການປາກ',
+ 'kab' => 'ກາໄບລ໌',
+ 'kac' => 'ກາຊິນ',
+ 'kaj' => 'ຈຣູ',
+ 'kam' => 'ກາມບາ',
+ 'kaw' => 'ກະວີ',
+ 'kbd' => 'ກາບາດຽນ',
+ 'kbl' => 'ຄາແນມບູ',
+ 'kcg' => 'ຕີບ',
+ 'kde' => 'ມາຄອນເດ',
+ 'kea' => 'ຄາເວີເດຍນູ',
+ 'kfo' => 'ໂຄໂລ',
+ 'kg' => 'ຄອງໂກ',
+ 'kha' => 'ຄາສິ',
+ 'kho' => 'ໂຄຕັນ',
+ 'khq' => 'ຄອຍຣາ ຊິນີ',
+ 'ki' => 'ຄິຄູຢຸ',
+ 'kj' => 'ກວນຍາມາ',
+ 'kk' => 'ຄາຊັກ',
+ 'kkj' => 'ຄາໂກ',
+ 'kl' => 'ກຣີນແລນລິດ',
+ 'kln' => 'ຄາເລັນຈິນ',
+ 'km' => 'ຂະເໝນ',
+ 'kmb' => 'ຄິມບັນດູ',
+ 'kn' => 'ຄັນນາດາ',
+ 'ko' => 'ເກົາຫລີ',
+ 'koi' => 'ໂຄມີ-ເພີມຢັກ',
+ 'kok' => 'ກອນການີ',
+ 'kos' => 'ຄູສໄລ',
+ 'kpe' => 'ກາແປຣ',
+ 'kr' => 'ຄານຸລິ',
+ 'krc' => 'ກາຣາໄຊ-ບານກາ',
+ 'krl' => 'ກາເຣລຽນ',
+ 'kru' => 'ກູຣູກ',
+ 'ks' => 'ຄັດຊະມີຣີ',
+ 'ksb' => 'ຊຳບາລ້າ',
+ 'ksf' => 'ບາເຟຍ',
+ 'ksh' => 'ໂຄລອກນຽນ',
+ 'ku' => 'ເຄີດິສ',
+ 'kum' => 'ຄູມີກ',
+ 'kut' => 'ຄູເທໄນ',
+ 'kv' => 'ໂຄມິ',
+ 'kw' => 'ຄໍນິຊ',
+ 'ky' => 'ເກຍກີສ',
+ 'la' => 'ລາຕິນ',
+ 'lad' => 'ລາດີໂນ',
+ 'lag' => 'ແລນກິ',
+ 'lah' => 'ລານດາ',
+ 'lam' => 'ແລມບາ',
+ 'lb' => 'ລັກເຊມບວກກິຊ',
+ 'lez' => 'ລີຊຽນ',
+ 'lg' => 'ແກນດາ',
+ 'li' => 'ລິມເບີກີຊ',
+ 'lkt' => 'ລາໂກຕາ',
+ 'ln' => 'ລິງກາລາ',
+ 'lo' => 'ລາວ',
+ 'lol' => 'ແມັງໂກ້',
+ 'loz' => 'ໂລຊິ',
+ 'lt' => 'ລິທົວນຽນ',
+ 'lu' => 'ລູບາ-ຄາຕັງກາ',
+ 'lua' => 'ລູບາ-ລູລົວ',
+ 'lui' => 'ລູເຊໂນ',
+ 'lun' => 'ລຸນດາ',
+ 'luo' => 'ລົວ',
+ 'lus' => 'ລູໄຊ',
+ 'luy' => 'ລູໄຍ',
+ 'lv' => 'ລັດວຽນ',
+ 'mad' => 'ມາດູລາ',
+ 'maf' => 'ມາຟາ',
+ 'mag' => 'ມາກາຮິ',
+ 'mai' => 'ໄມທີລິ',
+ 'mak' => 'ມາກາຊາຣ',
+ 'man' => 'ມັນດິງກາ',
+ 'mas' => 'ມາໄຊ',
+ 'mde' => 'ມາບາ',
+ 'mdf' => 'ມອກຊາ',
+ 'mdr' => 'ມານດາຣ',
+ 'men' => 'ເມນເດ',
+ 'mer' => 'ເມຣູ',
+ 'mfe' => 'ມໍຣິສເຢນ',
+ 'mg' => 'ມາລາກາສຊີ',
+ 'mga' => 'ໄອລິດກາງ',
+ 'mgh' => 'ມາຄູວາ-ມີດໂຕ',
+ 'mgo' => 'ເມທາ',
+ 'mh' => 'ມາຊານເລັດ',
+ 'mi' => 'ມາວຣິ',
+ 'mic' => 'ມິກແມກ',
+ 'min' => 'ທີແນງກາບູ',
+ 'mk' => 'ແມັກເຊໂດນຽນ',
+ 'ml' => 'ມາເລອາລຳ',
+ 'mn' => 'ມອງໂກເລຍ',
+ 'mnc' => 'ແມນຈູ',
+ 'mni' => 'ມານີພູຣິ',
+ 'moh' => 'ໂມຫາ',
+ 'mos' => 'ມອສຊີ',
+ 'mr' => 'ມາຣາທີ',
+ 'ms' => 'ມາເລ',
+ 'mt' => 'ມອລທີສ',
+ 'mua' => 'ມັນດັງ',
+ 'mul' => 'ຫລາຍພາສາ',
+ 'mus' => 'ຄຣິກ',
+ 'mwl' => 'ມີລັນດາ',
+ 'mwr' => 'ມາວາຣິ',
+ 'my' => 'ມຽນມາ',
+ 'mye' => 'ມໍຢິນ',
+ 'myv' => 'ເອີຍາ',
+ 'na' => 'ນາຢູລູ',
+ 'nap' => 'ນາໂປລີ',
+ 'naq' => 'ນາມາ',
+ 'nb' => 'ນໍເວຈຽນ ບັອກມອລ',
+ 'nd' => 'ເອັນເດເບເລເໜືອ',
+ 'nds' => 'ເຢຍລະມັນຕ່ຳ ແຊກຊອນຕໍ່ຳ',
+ 'ne' => 'ເນປາລີ',
+ 'new' => 'ນີວາຣິ',
+ 'ng' => 'ເອັນດອງກາ',
+ 'nia' => 'ນີ່ອັດ',
+ 'niu' => 'ນີ່ອູ',
+ 'nl' => 'ດັຊ',
+ 'nl-be' => 'ຟລີມິຊ',
+ 'nmg' => 'ກວາຊີໂອ',
+ 'nn' => 'ນໍເວຈຽນ ນີນອກ',
+ 'nnh' => 'ຈີ່ມບູນ',
+ 'no' => 'ນໍເວຍ',
+ 'nog' => 'ນໍໄກ',
+ 'non' => 'ນໍໂບຮານ',
+ 'nqo' => 'ເອັນໂກ',
+ 'nr' => 'ນີບີລີໃຕ້',
+ 'nso' => 'ໂຊໂທເໜືອ',
+ 'nus' => 'ເນີ',
+ 'nv' => 'ນາວາໂຈ',
+ 'nwc' => 'ເນວາດັ້ງເດີມ',
+ 'ny' => 'ນານຈາ',
+ 'nym' => 'ນາມວີຊິ',
+ 'nyn' => 'ນານຄອນ',
+ 'nyo' => 'ໂນໂຣ',
+ 'nzi' => 'ນິມາ',
+ 'oc' => 'ອັອກຊີຕານ',
+ 'oj' => 'ໂອຈິບວາ',
+ 'om' => 'ໂອໂຣໂມ',
+ 'or' => 'ໂອຣິຢາ',
+ 'os' => 'ອອດເຊຕິກ',
+ 'osa' => 'ໂອແຊກ',
+ 'ota' => 'ຕູກີອອດໂຕມັນ',
+ 'pa' => 'ປັນຈາບີ',
+ 'pag' => 'ປານກາຊີມານ',
+ 'pal' => 'ພາລາວີ',
+ 'pam' => 'ປາມປານກາ',
+ 'pap' => 'ປາມເປຍເມັນໂທ',
+ 'pau' => 'ປາລົວອານ',
+ 'peo' => 'ເປີເຊຍໂບຮານ',
+ 'phn' => 'ຟີນີເຊຍ',
+ 'pi' => 'ປາລີ',
+ 'pl' => 'ໂປລິຊ',
+ 'pon' => 'ພອນເພ',
+ 'pro' => 'ໂປວອງຊານໂບຮານ',
+ 'ps' => 'ປາສໂຕ',
+ 'pt' => 'ປໍຕູກີສ',
+ 'pt-br' => 'ບຣາຊິລຽນ ປໍຕູກີສ',
+ 'pt-pt' => 'ຢູໂຣປຽນ ປໍຕູກີສ',
+ 'qu' => 'ຄີຊົວ',
+ 'quc' => 'Kʼicheʼ',
+ 'raj' => 'ຣາຈັສທານິ',
+ 'rap' => 'ຣາປານຸຍ',
+ 'rar' => 'ຣາໂຣທອນການ',
+ 'rm' => 'ໂຣແມນ',
+ 'rn' => 'ຣຸນດິ',
+ 'ro' => 'ໂຣແມນຽນ',
+ 'ro-md' => 'ໂມດາວຽນ',
+ 'rof' => 'ຣົມໂບ',
+ 'rom' => 'ໂຣເມນີ',
+ 'ru' => 'ຣັດຊຽນ',
+ 'rup' => 'ອາໂຣມານຽນ',
+ 'rw' => 'ຄິນຢາວານດາ',
+ 'rwk' => 'ອາຣວາ',
+ 'sa' => 'ສັນສະກຣິດ',
+ 'sad' => 'ຊັນດາວ',
+ 'sah' => 'ຊາກາ',
+ 'sam' => 'ສາມາຣິແຕນ-',
+ 'saq' => 'ຊຳບູຣູ',
+ 'sas' => 'ຊາຊັກ',
+ 'sat' => 'ຊານທາລິ',
+ 'sba' => 'ກຳເບ',
+ 'sbp' => 'ຊານກູ',
+ 'sc' => 'ສາດີນຽນ',
+ 'scn' => 'ຊີຊິລີນ',
+ 'sco' => 'ສກອດ',
+ 'sd' => 'ສິນທິ',
+ 'se' => 'ຊາມິເໜືອ',
+ 'see' => 'ຊີນີກາ',
+ 'seh' => 'ຊີນາ',
+ 'sel' => 'ເຊນຄັບ',
+ 'ses' => 'ໂຄຍຣາໂບໂຣ ເຊນນິ',
+ 'sg' => 'ແຊງໂກ',
+ 'sga' => 'ອີຣິຊເກົ່າ',
+ 'sh' => 'ເຊີໂບ-ໂກເຊຍ',
+ 'shi' => 'ທາເຊວຫິດ',
+ 'shn' => 'ໄທໃຫ່ຍ',
+ 'shu' => 'ອາລັບ-ຊາດ',
+ 'si' => 'ສິນຫາລາ',
+ 'sid' => 'ຊິດາໂມ',
+ 'sk' => 'ສະໂລແວັກ',
+ 'sl' => 'ສະໂລເວນຽນ',
+ 'sm' => 'ຊາມົວ',
+ 'sma' => 'ຊາມິໃຕ້',
+ 'smj' => 'ລຸນຊາມິ',
+ 'smn' => 'ອີນາຣິຊາມິ',
+ 'sms' => 'ສກອດຊາມິ',
+ 'sn' => 'ໂຊນາ',
+ 'snk' => 'ໂຊນິນກີ',
+ 'so' => 'ໂຊມາລີ',
+ 'sog' => 'ຊອກດິນ',
+ 'sq' => 'ອານບານຽນ',
+ 'sr' => 'ເຊີບຽນ',
+ 'srn' => 'ສຣານນານຕອນໂກ',
+ 'srr' => 'ເຊເລີ',
+ 'ss' => 'ຊຣາຕິ',
+ 'ssy' => 'ຊາໂຮ',
+ 'st' => 'ໂຊໂທໃຕ້',
+ 'su' => 'ຊຸນແດນນີສ',
+ 'suk' => 'ຊູຄູມ້າ',
+ 'sus' => 'ຊູຊູ',
+ 'sux' => 'ຊູເມີເລຍ',
+ 'sv' => 'ສະວີດິຊ',
+ 'sw' => 'ຊວາຮີລິ',
+ 'swb' => 'ໂຄໂນຣຽນ',
+ 'swc' => 'ຄອງໂກ ຊວາຮີລິ',
+ 'syc' => 'ຊີເລຍແບບດັ້ງເດີມ',
+ 'syr' => 'ຊີເລຍ',
+ 'ta' => 'ທາມິລ',
+ 'te' => 'ເຕລູກູ',
+ 'tem' => 'ທີມເນ',
+ 'teo' => 'ເຕໂຊ',
+ 'ter' => 'ເຕເລໂນ',
+ 'tet' => 'ເຕຕູມ',
+ 'tg' => 'ທາຈິກ',
+ 'th' => 'ໄທ',
+ 'ti' => 'ຕິກຣິນຢາ',
+ 'tig' => 'ໄທກຣີ',
+ 'tiv' => 'ຕີວ',
+ 'tk' => 'ເທີກເມັນ',
+ 'tkl' => 'ໂຕເກເລົາ',
+ 'tl' => 'ຕາກາລອກ',
+ 'tlh' => 'ຄຣິງກອນ',
+ 'tli' => 'ທລີງກິດ',
+ 'tmh' => 'ທາມາກເຊກ',
+ 'tn' => 'ເຕສະວານາ',
+ 'to' => 'ທອງການ',
+ 'tog' => 'ນາຍອາຊາຕອງກາ',
+ 'tpi' => 'ທອກພີຊິນ',
+ 'tr' => 'ເທີຄິຊ',
+ 'trv' => 'ຕາໂລໂກ',
+ 'ts' => 'ເຕຊອງກາ',
+ 'tsi' => 'ຊີມຊີແອນ',
+ 'tt' => 'ທາທາ',
+ 'tum' => 'ຕຳບູກາ',
+ 'tvl' => 'ຕູວາລູ',
+ 'tw' => 'ທວີ',
+ 'twq' => 'ຕາຊາວັກ',
+ 'ty' => 'ຕາຮີຕຽນ',
+ 'tyv' => 'ຕູວີນຽນ',
+ 'tzm' => 'ອັດລາສ ທາມາຊີກ ກາງ',
+ 'udm' => 'ອຸດມັດ',
+ 'ug' => 'ອຸຍເຄີ',
+ 'uga' => 'ຢູກາລິກ',
+ 'uk' => 'ຢູເຄຣນຽນ',
+ 'umb' => 'ອຳບັນດູ',
+ 'und' => 'ບໍ່ສາມາດລະບຸພາສາ',
+ 'ur' => 'ອູຣະດູ',
+ 'uz' => 'ອຸສເບກ',
+ 'vai' => 'ໄວ',
+ 've' => 'ເວນດາ',
+ 'vi' => 'ຫວຽດນາມ',
+ 'vo' => 'ໂວລາພັກ',
+ 'vot' => 'ໂວຕິກ',
+ 'vun' => 'ວັນໂຈ',
+ 'wa' => 'ວໍລູມ',
+ 'wae' => 'ວາເຊີ',
+ 'wal' => 'ວາລາໂມ',
+ 'war' => 'ວາເລ',
+ 'was' => 'ວາໂຊ',
+ 'wo' => 'ວໍລອບ',
+ 'xal' => 'ການມິກ',
+ 'xh' => 'ໂຮຊາ',
+ 'xog' => 'ໂຊກາ',
+ 'yao' => 'ເຢົ້າ',
+ 'yap' => 'ຢັບ',
+ 'yav' => 'ແຍງເບນ',
+ 'ybb' => 'ແຢມບາ',
+ 'yi' => 'ຢິວ',
+ 'yo' => 'ໂຢຣູບາ',
+ 'yue' => 'ກວາງຕຸ້ງ',
+ 'za' => 'ຊວາງ',
+ 'zap' => 'ຊາໂປແຕບ',
+ 'zbl' => 'ສັນຍາລັກບລີຊິມ',
+ 'zen' => 'ເຊນາກາ',
+ 'zgh' => 'ໂມຣັອກແຄນ ທາມາຊີກ ມາດຕະຖານ',
+ 'zh' => 'ຈີນ',
+ 'zh-hans' => 'ຈີນແບບຮຽບງ່າຍ',
+ 'zh-hant' => 'ຈີນແບບດັ້ງເດີມ',
+ 'zu' => 'ຊູລູ',
+ 'zun' => 'ຊູນີ',
+ 'zxx' => 'ບໍ່ມີເນື້ອຫາພາສາ',
+ 'zza' => 'ຊາຊາ',
+);
+
+$currencyNames = array(
+ 'ADP' => 'ເປເຊຕາ ອັນໂດລາ',
+ 'AED' => 'ສະ​ຫະ​ລັດ​ອາ​ຣັບ​ອາ​ມິ​ເຣດ ເດີ​ແຮມ',
+ 'AFA' => 'ອັບການິ ອັບການິສະຖານ (1927–2002)',
+ 'AFN' => 'ອັຟ​ກັນ ອັຟ​ກາ​ນິ',
+ 'ALL' => 'ອັລ​ບາ​ນຽນ ເລກ',
+ 'AMD' => 'ອາ​ເມ​ນຽນ ແດຣມ',
+ 'ANG' => 'ເນ​ເທີ​ແລນ ແອນ​ຕິ​ລຽນ ກິວ​ເດີ',
+ 'AOA' => 'ແອງ​ໂກ​ລັນ ຄວນ​ຊາ',
+ 'AOK' => 'ກວານຊາ ແອງໂກລາ (1977–1991)',
+ 'AON' => 'ກວານຊາ ແອງໂກລາ ໃໝ່ (1995–1999)',
+ 'AOR' => 'ກວານຊາກທີ່ແກ້ໄຂໃໝ່ ແອງກູລາ (1995–1999)',
+ 'ARA' => 'ອອສຕຣານ ອາກຊັງຕິນ',
+ 'ARL' => 'ເປໂຊເລ ອາກຊັງຕິນ (1970–1983)',
+ 'ARM' => 'ເປໂຊ ອາກຊັງຕິນ (1881–1970)',
+ 'ARP' => 'ເປໂຊ ອາກຊັງຕິນ (1983–1985)',
+ 'ARS' => 'ອາ​ເຈນ​ທິ​ນາ ເປ​ໂຊ',
+ 'ATS' => 'ຊິລລິງ ອົດສະຕາລີ',
+ 'AUD' => 'ອອສ​ເຕຣ​ລຽນ ໂດ​ລ່າ',
+ 'AWG' => 'ອະຣູແບນ ຟລໍຣິນ',
+ 'AZM' => 'ມານັດ ອາແຊກບາຍຊານ (1993–2006)',
+ 'AZN' => 'ອາ​ເຊີ​ໄບ​ຈາ​ນິ ມາ​ນັດ',
+ 'BAD' => 'ດີນາ ບອສເນຍ ເຮີເຊໂບວາເນຍ (1992–1994)',
+ 'BAM' => 'ບອ​ສ​ເນຍ-ເຮີ​ເຊ​ໂກວິ​ນາ ຄອນ​ເວີດ​ຕິ​ໂບ ມາກ',
+ 'BAN' => 'ດີນາໃໝ່ ບອສເນຍ ເຮີເຊໂບວີນາ(1994–1997)',
+ 'BBD' => 'ໂດລ່າ ບາບາດຽນ',
+ 'BDT' => 'ບັງ​ຄລາ​ເທດ ຕາ​ກາ',
+ 'BEC' => 'ຟຣັງ ບູນກາລີ (ປ່ຽນແປງໄດ້)',
+ 'BEF' => 'ຟຣັງ ບູນກາລີ',
+ 'BEL' => 'ຟຣັງ ບູນກາລີ (ການເງິນ)',
+ 'BGL' => 'ຮາດເລບ ບູນກາລີ',
+ 'BGM' => 'ເລບ ສັງຄົມບູນກາລີ',
+ 'BGN' => 'ບັງ​ກາ​ຣຽນ ເລບ',
+ 'BGO' => 'ເລບ ບູນກາລີ (1879–1952)',
+ 'BHD' => 'ບາ​ໄຣ​ນິ ດິ​ນາ',
+ 'BIF' => 'ບຸ​ຣັນ​ດຽນ ຟຣັງ',
+ 'BMD' => 'ໂດ​ລ່າ​ເບີ​ມິວ​ດາ',
+ 'BND' => 'ບຣູ​ໄນ ໂດ​ລ່າ',
+ 'BOB' => 'ໂບ​ລິ​ວຽນ ໂບ​ລິ​ເວຍ​ໂນ',
+ 'BOL' => 'ໂລລິເວຍໂນ ໂລລິເວຍ (1863–1963)',
+ 'BOP' => 'ເປໂຊໂລລິເວຍ',
+ 'BOV' => 'ມະດອນ ໂລລິເວຍ',
+ 'BRB' => 'ກຣູເຊໂດບາຊິ ໃໝ່ (1967–1986)',
+ 'BRC' => 'ກຣູຊາໂດບາຊິວ (1986–1989)',
+ 'BRE' => 'ກຣູເຊໂຣ ບາຊິ ກຣູໂຊ ບາຊິວ (1993–1994)',
+ 'BRL' => 'ບຣາ​ຊິ​ລຽນ ຣຽວ',
+ 'BRN' => 'ກຣູຊາໂດ ບາຊິວ ໃໝ່ (1989–1990)',
+ 'BRR' => 'ກຣູເຊໂຣ ບາຊິວ (1993–1994)',
+ 'BRZ' => 'ກຣູເຊໂຣ ບາຊິວ (1942–1967)',
+ 'BSD' => 'ໂດລ່າ ບາຮາມຽນ',
+ 'BTN' => 'ພູ​ຖານ ງຸນດຣັມ',
+ 'BUK' => 'ຈາດ ພະມ້າ',
+ 'BWP' => 'ບອດ​ສະ​ວາ​ນານ ພູ​ລາ',
+ 'BYB' => 'ຣູໂບ ເບຣາຣຸສ ໃໝ່(1994–1999)',
+ 'BYR' => 'ເບ​ລາ​ຣຸ​ສ​ຊຽນ ຣູ​ເບິນ',
+ 'BZD' => 'ໂດ​ລ່າ​ເບ​ລິ​ຊ',
+ 'CAD' => 'ໂດລ່າຄານາດາ',
+ 'CDF' => 'ຄອງ​ໂກ​ລີສ ຟຣັງ',
+ 'CHE' => 'ເອີໂຣ WIR',
+ 'CHF' => 'ສະ​ວິ​ສ ຟ​ຣັງ',
+ 'CHW' => 'ຟຣັງ WIR',
+ 'CLE' => 'ເອສກູໂດ ຊິລີ',
+ 'CLF' => 'ຫົວໜ່ວຍບັນຊີ (UF) ຊິລີ',
+ 'CLP' => 'ຊິ​ລຽນ ເປ​ໂຊ',
+ 'CNY' => 'ຈີນ ຢວນ',
+ 'COP' => 'ໂຄ​ລົມ​ບຽນ ເປ​ໂຊ',
+ 'COU' => 'ຫົວໜ່ວຍຄ່າຈິງ ໂຄລັມເບຍ',
+ 'CRC' => 'ໂຄສຕາ ຣິກັນ ໂຄລອນ',
+ 'CSD' => 'ດີນາ ເຊີເບຍ (2002–2006)',
+ 'CSK' => 'ຮາດໂກຣູນາ ເຊັກໂກສະໂລວັກ',
+ 'CUC' => 'ຄິວແບນ ຄອນເວີດຕິໂບ ເປໂຊ',
+ 'CUP' => 'ຄິວແບນ ເປໂຊ',
+ 'CVE' => 'ເຄບ ເວີດ​ດີນ ເອ​ສ​ຄູ​ໂດ',
+ 'CYP' => 'ປອນ ໄຊປຣັດ',
+ 'CZK' => 'ໂຄ​ຣູ​ນາ ເຊກ',
+ 'DDM' => 'ມາກ ເຢຍລະມັນ ຕາເວັນອອກ',
+ 'DEM' => 'ມາກ ເຢຍລະມັນ',
+ 'DJF' => '​ດິ​ບູ​ຈຽນ ຟຣັງ',
+ 'DKK' => 'ແດນ​ນິ​ຊ ໂຄຣນ',
+ 'DOP' => 'ໂດ​ມິ​ນິ​ກັນ ເປ​ໂຊ',
+ 'DZD' => 'ອັລ​ເຈີ​ຣຽນ ດິ​ນາ',
+ 'ECS' => 'ຊູເກ ເອກາວາດໍ',
+ 'ECV' => 'ຫົວໜ່ວຍຄ່າຄົງທີ່ຂອງເອກາວາດໍ',
+ 'EEK' => 'ຄຣູນເອສ ໂຕເນຍ',
+ 'EGP' => 'ອີ​ຢິບ​ທຽນ ພາວດ໌',
+ 'ERN' => 'ອິ​ຣິ​ທຣຽນ ແນກ​ຟ​າ',
+ 'ESA' => 'ເປເຊຕາສະເປັນ (ບັນຊີ)',
+ 'ESB' => 'ເປເຊຕາສະເປນ (ປ່ຽນແປງໄດ້)',
+ 'ESP' => 'ເປເຊຕາ ສະເປນ',
+ 'ETB' => 'ເອ​ທິ​ໂອ​ປຽນ ເບີ​ຣ໌',
+ 'EUR' => 'ຢູ​ໂຣ',
+ 'FIM' => 'ມາກກາ ຟິນແລນ',
+ 'FJD' => 'ຟິ​ຈຽນ ໂດ​ລ່າ',
+ 'FKP' => 'ຟອ​ລ໌ກ​ແລນ ໄອ​ແລນ​ສ໌ ພາວ​ດ໌',
+ 'FRF' => 'ຟຣັງ ຝຣັ່ງ',
+ 'GBP' => 'ພາວ​ດ໌ ສະ​ເຕີ​ຣິງ (ອັງ​ກິດ)',
+ 'GEK' => 'ກູປອນ ລາຣິທ ຈໍເຈຍ',
+ 'GEL' => 'ຈໍ​ຈຽນ ລາ​ຣິ',
+ 'GHC' => 'ເຊດີ ການາ (1979–2007)',
+ 'GHS' => 'ເຊ​ດິ ກາ​ນາ​ອຽນ',
+ 'GIP' => 'ກິບ​ຣາ​ທາ ພາ​ວດ໌',
+ 'GMD' => '​ແກມ​ບຽນ ດາ​ລາ​ຊິ',
+ 'GNF' => 'ກິ​ນຽນ ຟຣັງ',
+ 'GNS' => 'ໄຊລິ ກີນີ',
+ 'GQE' => 'ເອັກເວເລ ອີຄວາຕິຣຽວ ກິນີ',
+ 'GRD' => 'ດາກຊະມາ ເກຣັກ',
+ 'GTQ' => 'ກົວເຕມາລານ ເຄັດຊອນ',
+ 'GWE' => 'ເອສກູໂດ ກີນີໂປຕູເກດ',
+ 'GWP' => 'ເປໂຊກິນີ-ບິສເຊົາ',
+ 'GYD' => 'ກາຍ​ຢາ​ນີ​ສ ໂດ​ລ່າ',
+ 'HKD' => 'ຮອງ​ກົງ ໂດ​ລ່າ',
+ 'HNL' => 'ຮອນດູແຣນ ເລມພິຣາ',
+ 'HRD' => 'ດີນາ ໂຄຣເອເຊຍ',
+ 'HRK' => 'ໂຄຣ​ເອ​ທຽນ ຄູ​ນາ',
+ 'HTG' => 'ໄຮ​ຕຽນ ກົວ​ເດ',
+ 'HUF' => 'ຮັງ​ກາ​ຣຽນ ຟໍ​ຣິນ',
+ 'IDR' => 'ອິນ​ໂດ​ເນ​ຊຽນ ໂດ​ລ່າ',
+ 'IEP' => 'ປອນ ໄອຣິຊ',
+ 'ILP' => 'ປອນ ອີສະລາເອວ',
+ 'ILS' => 'ອິສ​ຣາ​ເອວ​ລິ ນິວ ເຊ​ເກວ',
+ 'INR' => 'ອິນ​ເດຍ ຣູ​ປີ',
+ 'IQD' => 'ອິ​ຣັກ​ກິ ດິ​ນາ',
+ 'IRR' => 'ອິ​ຣາ​ນິ ຣຽວ',
+ 'ISK' => 'ໄອ​ສ໌​ແລນ​ດິກ ໂຄຣ​ນາ',
+ 'ITL' => 'ລິຣາ ອີຕາລີ',
+ 'JMD' => '​ຈາ​ໄມ​ກັນ ໂດ​ລ່າ',
+ 'JOD' => 'ຈໍ​ແດ​ນຽນ ດິ​ນາ',
+ 'JPY' => 'ຍີ່​ປຸ່ນ ເຢນ',
+ 'KES' => 'ເຄນ​ຢັນ ຊິວ​ລິງ',
+ 'KGS' => 'ຄ​ຣີ​ກິສ​​ຖາ​ນິ ໂຊມ',
+ 'KHR' => 'ກຳ​ປູ​ເຈຍ ຣຽວ',
+ 'KMF' => 'ໂຄ​ໂມ​ຣຽນ ຟຣັງ',
+ 'KPW' => 'ເກົາ​ຫລີ​ເໜືອ ວອນ',
+ 'KRH' => 'ຮາວານ ເກົາຫຼີເນື້',
+ 'KRO' => 'ວອນ ເກົາຫຼີໃຕ້ (1945–1953)',
+ 'KRW' => 'ເກົາ​ຫລີໃຕ້ ວອນ',
+ 'KWD' => 'ຄູ​ເວ​ຕິ ດິ​ນາ',
+ 'KYD' => 'ເຄ​ແມນ ໄອ​ແລນ ໂດ​ລ່າ',
+ 'KZT' => 'ຄາ​ຊັກ​ສະ​ຖາ​ນິ ເຕັງ​ເຈ',
+ 'LAK' => 'ລາວ ກີບ',
+ 'LBP' => 'ເລ​ບາ​ນີ​ສ ພາວດ໌',
+ 'LKR' => 'ສີ​ລັງ​ກາ ຣູ​ປີ',
+ 'LRD' => 'ລິ​ເບີ​ຣຽນ ໂດ​ລ່າ',
+ 'LSL' => 'ໂລຕິ ເລໂຊໂຕ',
+ 'LTL' => 'ລິ​ທົວ​ນຽນ ລິ​ທັ​ສ',
+ 'LTT' => 'ທາໂລນັສ ລິທົວເນຍ',
+ 'LUC' => 'ຟຣັງ ລຸກຊຳບວກ ທີ່ປ່ຽນແປງ',
+ 'LUF' => 'ຟຣັງ ລຸກຊຳບວກ',
+ 'LUL' => 'ຟຣັງ ລຸກຊຳບວກ ການເງິນ',
+ 'LVL' => 'ລັດ​ວຽນ ລັດ​ສ໌',
+ 'LVR' => 'ຣູໂບ ລາວຽນ',
+ 'LYD' => 'ລິບ​ບຽນ ດິ​ນາ',
+ 'MAD' => 'ມໍ​ຣັອກ​ແຄນ​ ເດີ​ແຮມ',
+ 'MAF' => 'ຟຣັງ ໂມຣອກໂກ',
+ 'MCF' => 'ຟຣັງ ໂມດາໂກ',
+ 'MDC' => 'ບັດປັນສ່ວນ ມອງໂດວາ',
+ 'MDL' => 'ມອນ​ໂດ​ແວນ ເລ​ອູ',
+ 'MGA' => 'ມາ​ລາ​ກາ​ຊີ ອາ​ເຣຍ​ຣີ',
+ 'MGF' => 'ຟຣັງ ມາດາກັດສະກາ',
+ 'MKD' => 'ແມັກ​ເຊ​ໂດ​ນຽນ ເດ​ນາ',
+ 'MKN' => 'ດີນາ ມາຊີໂດເນຍ (1992–1993)',
+ 'MLF' => 'ຟຣັງ ມາລີ',
+ 'MMK' => 'ມຽນ​ມາ ຈ໊າດ',
+ 'MNT' => 'ມອງ​ໂກ​ລຽນ ຕູກຣິກ',
+ 'MOP' => 'ມາ​ເກົ້າ ປາ​​ຕາ​ກາ',
+ 'MRO' => 'ມົວ​ຣິ​ທາ​ນຽນ ອູ​ກິວ​ຢາ',
+ 'MTL' => 'ລິຣາ ມອນຕາ',
+ 'MTP' => 'ປອນ ມອນຕາ',
+ 'MUR' => 'ເມົາ​ຣິ​ທຽນ ຣູ​ປີ',
+ 'MVR' => 'ມັ​ລ​ດິ​ວຽນ ຣູ​ຟິ​ຢາ',
+ 'MWK' => 'ມາ​ລາ​ວຽນ ຄວາ​ຊາ',
+ 'MXN' => 'ເມັກຊິກັນ ເປໂຊ',
+ 'MXP' => 'ຫົວໜ່ວຍເງິນ ເປໂຊ ແມັກຊິໂກ(1861–1992)',
+ 'MXV' => 'ຫົວໜ່ວຍການລົງທຶນ ແມັກຊິໂກ',
+ 'MYR' => 'ມາ​ເລ​ເຊຍ ຣິງ​ກິດ',
+ 'MZE' => 'ເອສກູໂດ ໂມຊຳບິກ',
+ 'MZM' => 'ເມຕິຄໍ ໂມຊຳບິກ (1980–2006)',
+ 'MZN' => 'ໂມ​ແຊມ​ບິ​ກັນ ເມ​ທິ​ຄອນ',
+ 'NAD' => 'ນາ​ມິ​ບຽນ ໂດ​ລ່າ',
+ 'NGN' => 'ໄນ​ຣາ ​ໄນເຈີ​ຣຽນ',
+ 'NIC' => 'ຄໍໂດບາ ນິກາຣາກົວ (1988–1991)',
+ 'NIO' => 'ນິກາຣາກວນ ໂຄໂດບາ',
+ 'NLG' => 'ກິລເດີ ເນເທີແລນ',
+ 'NOK' => 'ນໍ​ເວ​ກຽນ ​ໂຄຣນ',
+ 'NPR' => 'ເນ​ປານ ຣູ​ປີ',
+ 'NZD' => 'ນິວ​ຊີ​ແລນ ໂດ​ລ່າ',
+ 'OMR' => 'ໂອ​ມາ​ນິ ຣຽວ',
+ 'PAB' => 'ພານາມານຽນ ບອນບົວ',
+ 'PEI' => 'ອິນຕິ ເປຣູ',
+ 'PEN' => 'ເປ​ຣູ​ວຽນ ນູ​ໂວ ໂຊ​ລ໌',
+ 'PES' => 'ໂຊນ ເປຣູ (1863–1965)',
+ 'PGK' => 'ປາ​ປົວ ນິວ ກິ​ນຽນ ກິ​ນາ',
+ 'PHP' => 'ຟິ​ລິບ​ປິນ ເປ​ໂຊ',
+ 'PKR' => 'ປາ​ກິ​ສຖານ ຣູ​ປີ',
+ 'PLN' => 'ໂປ​ລິ​ຊ ຊະ​ລໍ​ຕີ',
+ 'PLZ' => 'ຊະລອສຕີ ໂປແລນ (1950–1995)',
+ 'PTE' => 'ເອສກູໂດ ໂປຕູເກສ',
+ 'PYG' => 'ກວາຣານີ ປາຣາກວາຍ',
+ 'QAR' => 'ຄາ​ຕາ​ຣິ ຣຽວ',
+ 'RHD' => 'ດອນລາ ໂຣດີເຊຍ',
+ 'ROL' => 'ລິວ ໂຣມາເນຍເກົ່າ',
+ 'RON' => 'ໂຣ​ມາ​ນຽນ ເລ​ອູ',
+ 'RSD' => 'ເຊີ​ບຽນ ດິ​ນາ',
+ 'RUB' => 'ຣັສ​ຊຽນ ຣູ​ເບິນ',
+ 'RUR' => 'ຣູໂບ ຣັດເຊຍ (1991–1998)',
+ 'RWF' => 'ຣະ​ວັນ​ດັນ ຟຣັງ',
+ 'SAR' => 'ຊາ​ອູ​ດິ ຣິ​ຢອນ',
+ 'SBD' => 'ໂຊ​ໂລມອນ ໄອ​ແລນ ໂດ​ລ່າ',
+ 'SCR' => 'ເຊ​ເຊວ​ລອຍ​ສ໌ ຣູ​ປີ',
+ 'SDD' => 'ດີນາ ຊູດານເກົ່າ',
+ 'SDG' => 'ຊູ​ດານ​ນີ​ສ ພາວດ໌',
+ 'SDP' => 'ປອນ ຊູດານເກົ່າ',
+ 'SEK' => 'ສະ​ວີ​ດິ​ຊ ໂຄຣ​ນາ',
+ 'SGD' => 'ສິງ​ກະ​ໂປ ໂດ​ລ່າ',
+ 'SHP' => 'ເຊນ ເຮ​ເລ​ນາ ພາວດ໌',
+ 'SIT' => 'ໂຕລາ ສະໂລວິເນຍ',
+ 'SKK' => 'ຄູໂຣນາ ສະໂລວັກ',
+ 'SLL' => 'ເຊຍ​ນາ ​ເລໂອ​ນຽນ ເລ​ໂອນ',
+ 'SOS' => 'ໂຊ​ມາ​ລິ ຊິວ​ລິງ',
+ 'SRD' => 'ຊູ​ຣິ​ນາ​ມີ​ສ ໂດ​ລ່າ',
+ 'SRG' => 'ກິລເດີ ຊູຣິນາເມ',
+ 'SSP' => 'ເຊົາ​ທ໌ ຊູ​ດານ​ນີ​ສ ພາວດ໌',
+ 'STD' => 'ເຊົາ ໂທ​ເມ ແອນ ພ​ຣິນ​ຊິ​ປີ ໂດບຣາ',
+ 'SUR' => 'ຣູໂບ ໂຊວຽດ',
+ 'SVC' => 'ໂກລອງ ເອກາວາດໍ',
+ 'SYP' => 'ຊີ​ຣຽນ ພາວດ໌',
+ 'SZL' => 'ສະ​ວາ​ຊິ ລິ​ລັນ​ກິ​ນີ',
+ 'THB' => 'ໄທ ບາດ',
+ 'TJR' => 'ຣູໂບ ຕັຈີກິສຖານ',
+ 'TJS' => 'ທາ​ຈິ​ກິ​​ຖາ​ນິ ໂຊ​ໂມ​ນິ',
+ 'TMM' => 'ມານັດ ຕວກເມນິສຖານ (1966–1987)',
+ 'TMT' => 'ເຕີກ​ເມ​ນິ​ສ​ຖາ​ນິ ມາ​ນັດ',
+ 'TND' => 'ຕູ​ນິ​ຊຽນ ດິ​ນາ',
+ 'TOP' => 'ຕອງ​ກັນ ປາ​ອັງ​ກາ',
+ 'TPE' => 'ເອສກູໂດ ຕີມໍ',
+ 'TRL' => 'ລີຕາ ຕູຣາກີເກົ່າ',
+ 'TRY' => 'ເຕີ​ກິ​ຊ ລິ​ຣາ',
+ 'TTD' => 'ທ​ຣິ​ນິ​ແດດ ແອນ ໂທ​ບາ​ໂກ ໂດ​ລ່າ',
+ 'TWD' => 'ນິວ ໄຕ້​ຫວັນ ໂດ​ລ່າ',
+ 'TZS' => 'ທານ​ຊາ​ນຽນ ຊິວ​ລິງ',
+ 'UAH' => 'ຢູ​ເຄຣ​ນຽນ ຮະ​ຣີບ​ເນຍ',
+ 'UAK' => 'ຄາໂບວາເນດ ອູແກຣນ',
+ 'UGS' => 'ຊິນລິງ ອູກັນດາ (1966–1987)',
+ 'UGX' => 'ອູ​ກັນ​ດັນ ຊິວ​ລິງ',
+ 'USD' => '​ໂດ​ລ່າ​ສະ​ຫະ​ລັດຯ',
+ 'USN' => 'ດອນລາສະຫະລັດ (ມື້ຖັດໄປ)',
+ 'USS' => 'ດອນລາສະຫະລັດ (ມື້ດຽວກັນ)',
+ 'UYI' => 'ເປໂຊອູຣຸກວຍ (ຫົວໜ່ວຍອິນເດັກ)',
+ 'UYP' => 'ເປໂຊ ອູຣຸກວຍ (1975–1993)',
+ 'UYU' => 'ອູ​ຣຸ​ກົວ​ຢານ ເປ​ໂຊ',
+ 'UZS' => 'ອຸສ​ເບ​ກິ​ສ​ຖານ ໂຊມ',
+ 'VEB' => 'ໂບລີວາ ເວເນຊູເອລາ (1871–2008)',
+ 'VEF' => 'ເວ​ເນ​ຊູ​ເອ​ລັນ ໂບ​ລິ​ວາ',
+ 'VND' => 'ຫວຽດ​ນາມ ດົງ',
+ 'VNN' => 'ດົງ ຫວຽດນາມ (1978–1985)',
+ 'VUV' => '​ວາ​ນົວ​ຕູ ວາ​ຕູ',
+ 'WST' => 'ຊາ​ໂມນ ທາ​ລາ',
+ 'XAF' => 'ຟຣັງ ເຊຟານ ທະນາຄານລັດອາຟຣິກາກາງ',
+ 'XAG' => 'ເງິນ',
+ 'XAU' => 'ຄຳ',
+ 'XBA' => 'ຫົວໜ່ວຍຄອມໂປຊິດ ເອີຣົບ',
+ 'XBB' => 'ຫົວໜ່ວຍໂມນີແທຣີ ເອີຣົບ',
+ 'XBC' => 'ຫົວໜ່ວຍບັນຊີເອີຣົບ (XBC)',
+ 'XBD' => 'ຫົວໜ່ວຍບັນຊີເອີຣົບ (XBD)',
+ 'XCD' => 'ອີ​ສ ຄາ​ຣິ​ບຽນ ໂດ​ລ່າ',
+ 'XDR' => 'ສິດທິຖອນເງິນພິເສດ',
+ 'XEU' => 'ຫົວໜ່ວຍສະກຸນເງິນ ເອີຣົບ',
+ 'XFO' => 'ຟຣັງ ຄຳຝຣັ່ງ',
+ 'XFU' => 'ຟຣັງ ຢູໄອຊີ ຝຣັ່ງ',
+ 'XOF' => 'ຟັງເຊຟານ ອາຟຣິກາຕາເວັນຕົກ',
+ 'XPD' => 'ແພເລດຽມ',
+ 'XPF' => 'ຊີ​ເອັບ​ພີ ຟຣັງ',
+ 'XPT' => 'ແພລັດຕິນຳ',
+ 'XRE' => 'ກອງທຶນໄຣເນັດ',
+ 'XTS' => 'ລະຫັດທົດສອບສະກຸນເງິນ',
+ 'XXX' => 'ສະ​ກຸນ​ເງິນ​ທີ່ບໍ່​ຮູັ​ຈັກ',
+ 'YDD' => 'ດີນາ ເຢເມນ',
+ 'YER' => 'ເຢ​ເມ​ນິ ຣຽວ',
+ 'YUD' => 'ຮາດດີນາ ຢູໂກສະລາວີ',
+ 'YUM' => 'ດີນາໃໝ່ ຢູໂກສະລາວີ (1994–2002)',
+ 'YUN' => 'ດີນາ ທີ່ປ່ຽນສະພາບ ຢູໂກສະລາວີ (1990–1992)',
+ 'YUR' => 'ດີນາ ປະຕິຮູບ ຢູໂກສະລາວີ (1992–1993)',
+ 'ZAL' => 'ແຣນ ອາຟຣິກາໃຕ້ (ການເງິນ)',
+ 'ZAR' => 'ເຊົາທ໌ ອາ​ຟຣິ​ກັນ ແຣນດ໌',
+ 'ZMK' => 'ຄວາຊາ ຊັມເບຍ (1968–2012)',
+ 'ZMW' => 'ແຊມ​ບຽນ ຄວາ​ຊາ',
+ 'ZRN' => 'ແຊ ຄອງໂກໃໝ່',
+ 'ZRZ' => 'ແຊຄອງໂກ',
+ 'ZWD' => 'ດອນລາ ຊິມບັບເວ (1980–2008)',
+ 'ZWL' => 'ດອນລາ ຊິມບັບເວ (2009)',
+ 'ZWR' => 'ດອນລາ ຊິມບັບເວ (2008)',
+);
+
+$currencySymbols = array(
+ 'AED' => 'AED',
+ 'AFN' => 'AFN',
+ 'ALL' => 'ALL',
+ 'AMD' => 'AMD',
+ 'ANG' => 'ANG',
+ 'AOA' => 'AOA',
+ 'ARS' => 'ARS',
+ 'AUD' => 'A$',
+ 'AWG' => 'AWG',
+ 'AZN' => 'AZN',
+ 'BAM' => 'BAM',
+ 'BBD' => 'BBD',
+ 'BDT' => 'BDT',
+ 'BGN' => 'BGN',
+ 'BHD' => 'BHD',
+ 'BIF' => 'BIF',
+ 'BMD' => 'BMD',
+ 'BND' => 'BND',
+ 'BOB' => 'BOB',
+ 'BRL' => 'R$',
+ 'BSD' => 'BSD',
+ 'BTN' => 'BTN',
+ 'BWP' => 'BWP',
+ 'BYR' => 'BYR',
+ 'BZD' => 'BZD',
+ 'CAD' => 'CA$',
+ 'CDF' => 'CDF',
+ 'CHF' => 'CHF',
+ 'CLP' => 'CLP',
+ 'CNY' => 'CN¥',
+ 'COP' => 'COP',
+ 'CRC' => 'CRC',
+ 'CUC' => 'CUC',
+ 'CUP' => 'CUP',
+ 'CVE' => 'CVE',
+ 'CZK' => 'CZK',
+ 'DJF' => 'DJF',
+ 'DKK' => 'DKK',
+ 'DOP' => 'DOP',
+ 'DZD' => 'DZD',
+ 'EGP' => 'EGP',
+ 'ERN' => 'ERN',
+ 'ETB' => 'ETB',
+ 'EUR' => '€',
+ 'FJD' => '$',
+ 'FKP' => 'FKP',
+ 'GBP' => '£',
+ 'GEL' => 'GEL',
+ 'GHS' => 'GHS',
+ 'GIP' => 'GIP',
+ 'GMD' => 'GMD',
+ 'GNF' => 'GNF',
+ 'GTQ' => 'GTQ',
+ 'GYD' => 'GYD',
+ 'HKD' => 'HK$',
+ 'HNL' => 'HNL',
+ 'HRK' => 'HRK',
+ 'HTG' => 'HTG',
+ 'HUF' => 'HUF',
+ 'IDR' => 'IDR',
+ 'ILS' => '₪',
+ 'INR' => '₹',
+ 'IQD' => 'IQD',
+ 'IRR' => 'IRR',
+ 'ISK' => 'ISK',
+ 'JMD' => 'JMD',
+ 'JOD' => 'JOD',
+ 'JPY' => 'JP¥',
+ 'KES' => 'KES',
+ 'KGS' => 'KGS',
+ 'KHR' => 'KHR',
+ 'KMF' => 'KMF',
+ 'KPW' => 'KPW',
+ 'KRW' => '₩',
+ 'KWD' => 'KWD',
+ 'KYD' => 'KYD',
+ 'KZT' => 'KZT',
+ 'LAK' => '₭',
+ 'LBP' => 'LBP',
+ 'LKR' => 'LKR',
+ 'LRD' => 'LRD',
+ 'LTL' => 'LTL',
+ 'LVL' => 'LVL',
+ 'LYD' => 'LYD',
+ 'MAD' => 'MAD',
+ 'MDL' => 'MDL',
+ 'MGA' => 'MGA',
+ 'MKD' => 'MKD',
+ 'MMK' => 'MMK',
+ 'MNT' => 'MNT',
+ 'MOP' => 'MOP',
+ 'MRO' => 'MRO',
+ 'MUR' => 'MUR',
+ 'MVR' => 'MVR',
+ 'MWK' => 'MWK',
+ 'MXN' => 'MX$',
+ 'MYR' => 'MYR',
+ 'MZN' => 'MZN',
+ 'NAD' => 'NAD',
+ 'NGN' => 'NGN',
+ 'NIO' => 'NIO',
+ 'NOK' => 'NOK',
+ 'NPR' => 'NPR',
+ 'NZD' => 'NZ$',
+ 'OMR' => 'OMR',
+ 'PAB' => 'PAB',
+ 'PEN' => 'PEN',
+ 'PGK' => 'PGK',
+ 'PHP' => 'PHP',
+ 'PKR' => 'PKR',
+ 'PLN' => 'PLN',
+ 'PYG' => 'PYG',
+ 'QAR' => 'QAR',
+ 'RON' => 'RON',
+ 'RSD' => 'RSD',
+ 'RUB' => 'RUB',
+ 'RWF' => 'RWF',
+ 'SAR' => 'SAR',
+ 'SBD' => 'SBD',
+ 'SCR' => 'SCR',
+ 'SDG' => 'SDG',
+ 'SEK' => 'SEK',
+ 'SGD' => 'SGD',
+ 'SHP' => 'SHP',
+ 'SLL' => 'SLL',
+ 'SOS' => 'SOS',
+ 'SRD' => 'SRD',
+ 'SSP' => 'SSP',
+ 'STD' => 'STD',
+ 'SYP' => 'SYP',
+ 'SZL' => 'SZL',
+ 'THB' => '฿',
+ 'TJS' => 'TJS',
+ 'TMT' => 'TMT',
+ 'TND' => 'TND',
+ 'TOP' => 'TOP',
+ 'TRY' => 'TRY',
+ 'TTD' => 'TTD',
+ 'TWD' => 'NT$',
+ 'TZS' => 'TZS',
+ 'UAH' => 'UAH',
+ 'UGX' => 'UGX',
+ 'USD' => 'US$',
+ 'UYU' => 'UYU',
+ 'UZS' => 'UZS',
+ 'VEF' => 'VEF',
+ 'VND' => '₫',
+ 'VUV' => 'VUV',
+ 'WST' => 'WST',
+ 'XAF' => 'FCFA',
+ 'XCD' => 'EC$',
+ 'XOF' => 'CFA',
+ 'XPF' => 'CFPF',
+ 'YER' => 'YER',
+ 'ZAR' => 'ZAR',
+ 'ZMW' => 'ZMW',
+);
+
+$countryNames = array(
+ 'AC' => 'ເກາະອາເຊນຊັນ',
+ 'AD' => 'ອັນດໍຣາ',
+ 'AE' => 'ສະຫະລັດອາຣັບເອມິເຣດ',
+ 'AF' => 'ອາຟການິສຖານ',
+ 'AG' => 'ອາທິກົວ ບາບູດາ',
+ 'AI' => 'ແອນກຸຍລາ',
+ 'AL' => 'ແອວເບເນຍ',
+ 'AM' => 'ອາເມເນຍ',
+ 'AN' => 'ເນເທີແລນແອນເທິນ',
+ 'AO' => 'ອັນໂກລາ',
+ 'AQ' => 'ແອນຕາດຕິກາ',
+ 'AR' => 'ອາເຈນທິນາ',
+ 'AS' => 'ອາເມຣິກາ ຊາມົວ',
+ 'AT' => 'ອອສເທຣຍ',
+ 'AU' => 'ອອສເຕຣເລຍ',
+ 'AW' => 'ອໍຣູບາ',
+ 'AX' => 'ຫມູ່ເກາະໂອລັນ',
+ 'AZ' => 'ອາເຊີໄບຈານ',
+ 'BA' => 'ບອດສະເນຍ ແລະ ແຮສໂກວີນາ',
+ 'BB' => 'ບາບາໂດສ',
+ 'BD' => 'ບັງກະລາເທດ',
+ 'BE' => 'ເບວຢຽມ',
+ 'BF' => 'ເບີກິນາ ຟາໂຊ',
+ 'BG' => 'ບັງກາເຣຍ',
+ 'BH' => 'ບາເຣນ',
+ 'BI' => 'ບູຣຸນດິ',
+ 'BJ' => 'ເບນິນ',
+ 'BL' => 'ເຊນ ບາເທເລມີ',
+ 'BM' => 'ເບີມິວດາ',
+ 'BN' => 'ບຣູໄນ',
+ 'BO' => 'ໂບລິເວຍ',
+ 'BQ' => 'ຄາຣິບບຽນ ເນເທີແລນ',
+ 'BR' => 'ບຣາຊິວ',
+ 'BS' => 'ບາຮາມາສ',
+ 'BT' => 'ພູຖານ',
+ 'BV' => 'ເກາະບູເວດ',
+ 'BW' => 'ບອດສະວານາ',
+ 'BY' => 'ເບວບາຣຸສ',
+ 'BZ' => 'ເບລີຊ',
+ 'CA' => 'ແຄນາດາ',
+ 'CC' => 'ຫມູ່ເກາະໂກໂກສ',
+ 'CD' => 'ຄອງໂກ - ຄິນຊາຊາ',
+ 'CF' => 'ສາທາລະນະລັດອາຟຣິກາກາງ',
+ 'CG' => 'ຄອງໂກ - ບຣາຊາວິວ',
+ 'CH' => 'ສະວິດເຊີແລນ',
+ 'CI' => 'ໂຄຕີ ວົວ',
+ 'CK' => 'ໝູ່ເກາະຄຸກ',
+ 'CL' => 'ຊິລີ',
+ 'CM' => 'ຄາເມຣູນ',
+ 'CN' => 'ຈີນ',
+ 'CO' => 'ໂຄລົມເບຍ',
+ 'CP' => 'ເກາະຄລິບເປີຕັນ',
+ 'CR' => 'ໂຄສຕາ ຣິກາ',
+ 'CU' => 'ຄິວບາ',
+ 'CV' => 'ເຄບ ເວີດ',
+ 'CW' => 'ຄູຣາຊາວ',
+ 'CX' => 'ເກາະຄຣິສມາດ',
+ 'CY' => 'ໄຊປຣັສ',
+ 'CZ' => 'ສາທາລະນະລັດເຊກ',
+ 'DE' => 'ເຢຍລະມັນ',
+ 'DG' => 'ດິເອໂກ ກາເຊຍ',
+ 'DJ' => 'ຈິບູຕິ',
+ 'DK' => 'ເດນມາກ',
+ 'DM' => 'ໂດມີນິຄາ',
+ 'DO' => 'ສາທາລະນະລັດ ໂດມິນິກັນ',
+ 'DZ' => 'ອັລຈິເຣຍ',
+ 'EA' => 'ເຊວຕາ ແລະເມລິນລາ',
+ 'EC' => 'ເອກກວາດໍ',
+ 'EE' => 'ເອສໂຕເນຍ',
+ 'EG' => 'ອີຢິບ',
+ 'EH' => 'ຊາຮາຣາຕາເວັນຕົກ',
+ 'ER' => 'ເອຣິເທຣຍ',
+ 'ES' => 'ສະເປນ',
+ 'ET' => 'ອີທິໂອເປຍ',
+ 'EU' => 'ສະຫະພາບຢູໂຣບ',
+ 'FI' => 'ຟິນແລນ',
+ 'FJ' => 'ຟິຈິ',
+ 'FK' => 'ຫມູ່ເກາະຟອກແລນ',
+ 'FM' => 'ໄມໂຄຣນີເຊຍ',
+ 'FO' => 'ຫມູ່ເກາະແຟໂຣ',
+ 'FR' => 'ຝຣັ່ງ',
+ 'GA' => 'ກາບອນ',
+ 'GB' => 'ສະຫະລາດຊະອະນາຈັກຯ',
+ 'GD' => 'ເກຣເນດາ',
+ 'GE' => 'ຈໍເຈຍ',
+ 'GF' => 'ເຟຣນຊ໌ ກຸຍອານາ',
+ 'GG' => 'ເກີນຊີ',
+ 'GH' => 'ການາ',
+ 'GI' => 'ຈິບບຣອນທາ',
+ 'GL' => 'ກຣີນແລນ',
+ 'GM' => 'ສາທາລະນະລັດແກມເບຍ',
+ 'GN' => 'ກິນີ',
+ 'GP' => 'ກົວດາລູບ',
+ 'GQ' => 'ອີຄົວໂຕຣຽວ ກີນີ',
+ 'GR' => 'ກຣີຊ',
+ 'GS' => 'ໝູ່ເກາະຈໍເຈຍ & ເຊົາ ແຊນວິດ',
+ 'GT' => 'ກົວເທມາລາ',
+ 'GU' => 'ກວມ',
+ 'GW' => 'ກິນີ-ບິສເຊົາ',
+ 'GY' => 'ກາຍຢານາ',
+ 'HK' => 'ຮອງກົງ',
+ 'HM' => 'ໝູ່ເກາະເຮີດ & ແມັກໂດນອລ',
+ 'HN' => 'ຮອນດູຣັສ',
+ 'HR' => 'ໂຄຣເອເທຍ',
+ 'HT' => 'ໄຮຕິ',
+ 'HU' => 'ຮັງກາຣີ',
+ 'IC' => 'ໝູ່ເກາະຄານາຣີ',
+ 'ID' => 'ອິນໂດເນເຊຍ',
+ 'IE' => 'ໄອຣ໌ແລນ',
+ 'IL' => 'ອິສຣາເອວ',
+ 'IM' => 'ເອວ ອອບ ແມນ',
+ 'IN' => 'ອິນເດຍ',
+ 'IO' => 'ເຂດແດນບຣິທິສອິນດຽນໂອຊຽນ',
+ 'IQ' => 'ອີຣັກ',
+ 'IR' => 'ອີຣ່ານ',
+ 'IS' => 'ໄອສແລນ',
+ 'IT' => 'ອິຕາລີ',
+ 'JE' => 'ເຈີຊີ',
+ 'JM' => 'ຈາໄມຄາ',
+ 'JO' => 'ຈໍແດນ',
+ 'JP' => 'ຍີ່ປຸ່ນ',
+ 'KE' => 'ເຄນຢາ',
+ 'KG' => 'ຄີກິສຖານ',
+ 'KH' => 'ກຳປູເຈຍ',
+ 'KI' => 'ຄິຣິບາທິ',
+ 'KM' => 'ໂຄໂມໂຣສ',
+ 'KN' => 'ເຊນ ຄິດ ແລະ ເນວິສ',
+ 'KP' => 'ເກົາຫລີເໜືອ',
+ 'KR' => 'ເກົາຫລີໃຕ້',
+ 'KW' => 'ຄູເວດ',
+ 'KY' => 'ເຄແມນ ໄອແລນ',
+ 'KZ' => 'ຄາຊັກສະຖານ',
+ 'LA' => 'ລາວ',
+ 'LB' => 'ເລບານອນ',
+ 'LC' => 'ເຊນ ລູເຊຍ',
+ 'LI' => 'ລິດເທນສະຕາຍ',
+ 'LK' => 'ສີລັງກາ',
+ 'LR' => 'ລິເບີເຣຍ',
+ 'LS' => 'ເລໂຊໂທ',
+ 'LT' => 'ລິທົວເນຍ',
+ 'LU' => 'ລຸກແຊມເບີກ',
+ 'LV' => 'ລັດເວຍ',
+ 'LY' => 'ລິເບຍ',
+ 'MA' => 'ໂມຣັອກໂຄ',
+ 'MC' => 'ໂມນາໂຄ',
+ 'MD' => 'ໂມນໂດວາ',
+ 'ME' => 'ມອນເຕເນໂກຣ',
+ 'MF' => 'ເຊນ ມາທິນ',
+ 'MG' => 'ມາດາກາສກາ',
+ 'MH' => 'ຫມູ່ເກາະມາແຊວ',
+ 'MK' => 'ແມຊິໂດເນຍ',
+ 'ML' => 'ມາລິ',
+ 'MM' => 'ມຽນມາ (ເບີມາ)',
+ 'MN' => 'ມອງໂກເລຍ',
+ 'MO' => 'ມາເກົ້າ',
+ 'MP' => 'ຫມູ່ເກາະມາແຊວຕອນເຫນືອ',
+ 'MQ' => 'ມາຕິນີກ',
+ 'MR' => 'ມົວຣິເທເນຍ',
+ 'MS' => 'ມອນເຊີຣາດ',
+ 'MT' => 'ມອນທາ',
+ 'MU' => 'ມົວຣິຊຽສ',
+ 'MV' => 'ມັນດິຟ',
+ 'MW' => 'ມາລາວີ',
+ 'MX' => 'ເມັກຊິໂກ',
+ 'MY' => 'ມາເລເຊຍ',
+ 'MZ' => 'ໂມແຊມບິກ',
+ 'NA' => 'ນາມີເບຍ',
+ 'NC' => 'ນິວ ຄາເລໂດເນຍ',
+ 'NE' => 'ນິເຈີ',
+ 'NF' => 'ເກາະນໍໂຟກ',
+ 'NG' => 'ໄນຈີເຣຍ',
+ 'NI' => 'ນິກຄາຣາກົວ',
+ 'NL' => 'ເນເທີແລນ',
+ 'NO' => 'ນໍເວ',
+ 'NP' => 'ເນປານ',
+ 'NR' => 'ນາອູຣູ',
+ 'NU' => 'ນີອູເອ',
+ 'NZ' => 'ນິວຊີແລນ',
+ 'OM' => 'ໂອມານ',
+ 'PA' => 'ພານາມາ',
+ 'PE' => 'ເປຣູ',
+ 'PF' => 'ເຟຣນຊ໌ ໂພລີນີເຊຍ',
+ 'PG' => 'ປາປົວນິວກີນີ',
+ 'PH' => 'ຟິລິບປິນ',
+ 'PK' => 'ປາກິສຖານ',
+ 'PL' => 'ໂປແລນ',
+ 'PM' => 'ເຊນ ປີແອ ມິເກວລອນ',
+ 'PN' => 'ໝູ່ເກາະພິດແຄນ',
+ 'PR' => 'ເພືອໂຕ ຣິໂກ',
+ 'PS' => 'ປາເລສຕິນ',
+ 'PT' => 'ພອລທູໂກ',
+ 'PW' => 'ປາເລົາ',
+ 'PY' => 'ພາຣາກວຍ',
+ 'QA' => 'ກາຕາ',
+ 'QO' => 'ເຂດຫ່າງໄກໂອຊີເນຍ',
+ 'RE' => 'ເຣອູນິຍົງ',
+ 'RO' => 'ໂຣແມເນຍ',
+ 'RS' => 'ເຊີເບຍ',
+ 'RU' => 'ຣັດເຊຍ',
+ 'RW' => 'ຣວັນດາ',
+ 'SA' => 'ຊາອຸດິ ອາຣາເບຍ',
+ 'SB' => 'ຫມູ່ເກາະໂຊໂລມອນ',
+ 'SC' => 'ເຊເຊວເລສ',
+ 'SD' => 'ຊູດານ',
+ 'SE' => 'ສະວີເດັນ',
+ 'SG' => 'ສິງກະໂປ',
+ 'SH' => 'ເຊນ ເຮເລນາ',
+ 'SI' => 'ສະໂລເວເນຍ',
+ 'SJ' => 'ສະວາບາ ແລະ ແຢນ ມາເຢນ',
+ 'SK' => 'ສະໂລວາເກຍ',
+ 'SL' => 'ເຊຍຣາ ລີໂອນ',
+ 'SM' => 'ແຊນ ມາຣິໂນ',
+ 'SN' => 'ເຊນີໂກລ',
+ 'SO' => 'ໂຊມາເລຍ',
+ 'SR' => 'ຊູຣິນາມ',
+ 'SS' => 'ຊູດານໃຕ້',
+ 'ST' => 'ເຊົາທູເມ ແລະ ພຣິນຊິບ',
+ 'SV' => 'ເອວ ຊໍວາດໍ',
+ 'SX' => 'ຊິນ ມາເທັນ',
+ 'SY' => 'ຊີເຣຍ',
+ 'SZ' => 'ສະວາຊິແລນ',
+ 'TA' => 'ທຣິສຕັນ ດາ ກັນຮາ',
+ 'TC' => 'ໝູ່ເກາະ ເທີກ ແລະ ໄຄໂຄສ',
+ 'TD' => 'ຊາດ',
+ 'TF' => 'ເຂດແດນທາງໃຕ້ຂອຝຮັ່ງ',
+ 'TG' => 'ໂຕໂກ',
+ 'TH' => 'ໄທ',
+ 'TJ' => 'ທາຈິກິສຖານ',
+ 'TK' => 'ໂຕເກເລົາ',
+ 'TL' => 'ທິມໍ-ເລສເຕ',
+ 'TM' => 'ເທີກເມນິສຖານ',
+ 'TN' => 'ຕູນິເຊຍ',
+ 'TO' => 'ທອງກາ',
+ 'TR' => 'ເທີຄີ',
+ 'TT' => 'ທຣິນິແດດ ແລະ ໂທແບໂກ',
+ 'TV' => 'ຕູວາລູ',
+ 'TW' => 'ໄຕ້ຫວັນ',
+ 'TZ' => 'ທານຊາເນຍ',
+ 'UA' => 'ຢູເຄຣນ',
+ 'UG' => 'ອູການດາ',
+ 'UM' => 'ໝູ່ເກາະຮອບນອກຂອງສະຫະລັດຯ',
+ 'US' => 'ສະຫະລັດຯ',
+ 'UY' => 'ອູຣຸກວຍ',
+ 'UZ' => 'ອຸສເບກິສຖານ',
+ 'VA' => 'ນະຄອນ ວາຕິກັນ',
+ 'VC' => 'ເຊນ ວິນເຊນ & ເກຣເນດິນ',
+ 'VE' => 'ເວເນຊູເອລາ',
+ 'VG' => 'ໝູ່ເກາະ ບຣິທິຊ ເວີຈິນ',
+ 'VI' => 'ໝູ່ເກາະ ຢູເອສ ເວີຈິນ',
+ 'VN' => 'ຫວຽດນາມ',
+ 'VU' => 'ວານົວຕູ',
+ 'WF' => 'ວາລິສ ແລະ ຟຸຕູນາ',
+ 'WS' => 'ຊາມົວ',
+ 'XK' => 'ໂຄໂຊໂວ',
+ 'YE' => 'ເຢເມນ',
+ 'YT' => 'ມາຢັອດ',
+ 'ZA' => 'ອາຟະລິກາໃຕ້',
+ 'ZM' => 'ແຊມເບຍ',
+ 'ZW' => 'ຊິມບັບເວ',
+);
+
+$timeUnits = array(
+ 'day-future-other' => 'ໃນອີກ {0} ມື້',
+ 'day-narrow-future-other' => 'ໃນອີກ {0} ມື້',
+ 'day-narrow-past-other' => '{0} ມື້ກ່ອນ',
+ 'day-other' => '{0} ມື້',
+ 'day-past-other' => '{0} ມື້ກ່ອນ',
+ 'day-short-future-other' => 'ໃນອີກ {0} ມື້',
+ 'day-short-past-other' => '{0} ມື້ກ່ອນ',
+ 'hour-future-other' => 'ໃນອີກ {0} ຊົ່ວໂມງ',
+ 'hour-narrow-future-other' => 'ໃນອີກ {0} ຊົ່ວໂມງ',
+ 'hour-narrow-past-other' => '{0} ຊົ່ວໂມງກ່ອນ',
+ 'hour-other' => '{0} ຊົ່ວໂມງ',
+ 'hour-past-other' => '{0} ຊົ່ວໂມງກ່ອນ',
+ 'hour-short-future-other' => 'ໃນອີກ {0} ຊົ່ວໂມງ',
+ 'hour-short-past-other' => '{0} ຊົ່ວໂມງກ່ອນ',
+ 'microsecond-other' => '{0} ໄມ​ໂຄຣ​ວິ​ນາ​ທີ',
+ 'millisecond-other' => '{0} ມິນລີວິນາທີ',
+ 'minute-future-other' => '{0} ໃນອີກ 0 ນາທີ',
+ 'minute-narrow-future-other' => 'ໃນອີກ {0} ນາທີ',
+ 'minute-narrow-past-other' => '{0} ນາທີກ່ອນ',
+ 'minute-other' => '{0} ນາທີ',
+ 'minute-past-other' => '{0} ນາທີກ່ອນ',
+ 'minute-short-future-other' => 'ໃນອີກ {0} ນາທີ',
+ 'minute-short-past-other' => '{0} ນາທີກ່ອນ',
+ 'month-future-other' => 'ໃນອີກ {0} ເດືອນ',
+ 'month-narrow-future-other' => '+{0} ດ.',
+ 'month-narrow-past-other' => '-{0} ດ.',
+ 'month-other' => '{0} ເດືອນ',
+ 'month-past-other' => '{0} ເດືອນກ່ອນ',
+ 'month-short-future-other' => 'ໃນອີກ {0} ດ.',
+ 'month-short-past-other' => '{0} ດ. ກ່ອນ',
+ 'nanosecond-other' => '{0} ນາ​ໂນ​ວິ​ນາ​ທີ',
+ 'quarter-future-other' => 'ໃນອີກ {0} ຄວດເຕີ',
+ 'quarter-narrow-future-other' => '+{0} ຄຕ.',
+ 'quarter-narrow-past-other' => '-{0} ຄຕ.',
+ 'quarter-past-other' => '{0} ຄວດເຕີກ່ອນ',
+ 'quarter-short-future-other' => 'ໃນອີກ {0} ຄຕ.',
+ 'quarter-short-past-other' => '{0} ຄຕ. ກ່ອນ',
+ 'second-future-other' => 'ໃນອີກ {0} ວິນາທີ',
+ 'second-narrow-future-other' => 'ໃນອີກ {0} ວິນາທີ',
+ 'second-narrow-past-other' => '{0} ວິນາທີກ່ອນ',
+ 'second-other' => '{0} ວິນາທີ',
+ 'second-past-other' => '{0} ວິນາທີກ່ອນ',
+ 'second-short-future-other' => 'ໃນອີກ {0} ວິນາທີ',
+ 'second-short-past-other' => '{0} ວິນາທີກ່ອນ',
+ 'week-future-other' => 'ໃນອີກ {0} ອາທິດ',
+ 'week-narrow-future-other' => '+{0} ອທ.',
+ 'week-narrow-past-other' => '-{0} ອທ.',
+ 'week-other' => '{0} ອາທິດ',
+ 'week-past-other' => '{0} ອາທິດກ່ອນ',
+ 'week-short-future-other' => 'ໃນອີກ {0} ອທ.',
+ 'week-short-past-other' => '{0} ອທ. ກ່ອນ',
+ 'year-future-other' => 'ໃນອີກ {0} ປີ',
+ 'year-other' => '{0} ປີ',
+ 'year-past-other' => '{0} ປີກ່ອນ',
+);
diff --git a/MLEB/cldr/CldrNames/CldrNamesLt.php b/MLEB/cldr/CldrNames/CldrNamesLt.php
new file mode 100644
index 00000000..653afa3b
--- /dev/null
+++ b/MLEB/cldr/CldrNames/CldrNamesLt.php
@@ -0,0 +1,1567 @@
+<?php
+
+$languageNames = array(
+ 'aa' => 'afarų',
+ 'ab' => 'abchazų',
+ 'ace' => 'ačinezų',
+ 'ach' => 'akolių',
+ 'ada' => 'adangmų',
+ 'ady' => 'adygėjų',
+ 'ae' => 'avestų',
+ 'aeb' => 'Tuniso arabų',
+ 'af' => 'afrikanų',
+ 'afh' => 'afrihili',
+ 'agq' => 'aghemų',
+ 'ain' => 'ainų',
+ 'ak' => 'akanų',
+ 'akk' => 'akadianų',
+ 'akz' => 'alabamiečių',
+ 'ale' => 'aleutų',
+ 'aln' => 'albanų kalbos gegų tarmė',
+ 'alt' => 'pietų Altajaus',
+ 'am' => 'amharų',
+ 'an' => 'aragonesų',
+ 'ang' => 'senoji anglų',
+ 'anp' => 'angikų',
+ 'ar' => 'arabų',
+ 'ar-001' => 'šiuolaikinė standartinė arabų',
+ 'arc' => 'aramaikų',
+ 'arn' => 'mapudungunų',
+ 'aro' => 'araonų',
+ 'arp' => 'arapahų',
+ 'arq' => 'Alžyro arabų',
+ 'arw' => 'aravakų',
+ 'ary' => 'Maroko arabų',
+ 'arz' => 'Egipto arabų',
+ 'as' => 'asamų',
+ 'asa' => 'asu',
+ 'ase' => 'Amerikos ženklų kalba',
+ 'ast' => 'asturianų',
+ 'av' => 'avarikų',
+ 'avk' => 'kotava',
+ 'awa' => 'avadhi',
+ 'ay' => 'aimarų',
+ 'az' => 'azerbaidžaniečių',
+ 'azb' => 'pietų Azerbaidžano',
+ 'ba' => 'baškirų',
+ 'bal' => 'baluči',
+ 'ban' => 'balinezų',
+ 'bar' => 'bavarų',
+ 'bas' => 'basų',
+ 'bax' => 'bamunų',
+ 'bbc' => 'batak toba',
+ 'bbj' => 'ghomalų',
+ 'be' => 'baltarusių',
+ 'bej' => 'bėjų',
+ 'bem' => 'bembų',
+ 'bew' => 'betavi',
+ 'bez' => 'benų',
+ 'bfd' => 'bafutų',
+ 'bfq' => 'badaga',
+ 'bg' => 'bulgarų',
+ 'bho' => 'baučpuri',
+ 'bi' => 'bislama',
+ 'bik' => 'bikolų',
+ 'bin' => 'bini',
+ 'bjn' => 'bandžarų',
+ 'bkm' => 'komų',
+ 'bla' => 'siksika',
+ 'bm' => 'bambarų',
+ 'bn' => 'bengalų',
+ 'bo' => 'tibetiečių',
+ 'bpy' => 'Bišnuprijos',
+ 'bqi' => 'bakhtiari',
+ 'br' => 'bretonų',
+ 'bra' => 'brajų',
+ 'brh' => 'brahujų',
+ 'brx' => 'bodo',
+ 'bs' => 'bosnių',
+ 'bss' => 'akūsų',
+ 'bua' => 'buriatų',
+ 'bug' => 'buginezų',
+ 'bum' => 'bulu',
+ 'byn' => 'blin',
+ 'byv' => 'medumbų',
+ 'ca' => 'katalonų',
+ 'cad' => 'kado',
+ 'car' => 'karibų',
+ 'cay' => 'kaijūgų',
+ 'cch' => 'atsamų',
+ 'ce' => 'čečėnų',
+ 'ceb' => 'cebuanų',
+ 'cgg' => 'čigų',
+ 'ch' => 'čamorų',
+ 'chb' => 'čibča',
+ 'chg' => 'čagatų',
+ 'chk' => 'čukesų',
+ 'chm' => 'mari',
+ 'chn' => 'činuk žargonas',
+ 'cho' => 'čoktau',
+ 'chp' => 'čipvėjų',
+ 'chr' => 'čerokių',
+ 'chy' => 'čajenų',
+ 'ckb' => 'soranių kurdų',
+ 'co' => 'korsikiečių',
+ 'cop' => 'koptų',
+ 'cps' => 'capiznon',
+ 'cr' => 'kry',
+ 'crh' => 'Krymo turkų',
+ 'cs' => 'čekų',
+ 'csb' => 'kašubų',
+ 'cu' => 'bažnytinė slavų',
+ 'cv' => 'čiuvašų',
+ 'cy' => 'valų',
+ 'da' => 'danų',
+ 'dak' => 'dakotų',
+ 'dar' => 'dargva',
+ 'dav' => 'taitų',
+ 'de' => 'vokiečių',
+ 'de-at' => 'Austrijos vokiečių',
+ 'de-ch' => 'Šveicarijos aukštutinė vokiečių',
+ 'del' => 'delavero',
+ 'den' => 'slave',
+ 'dgr' => 'dogribų',
+ 'din' => 'dinkų',
+ 'dje' => 'zarmų',
+ 'doi' => 'dogri',
+ 'dsb' => 'žemutinių sorbų',
+ 'dtp' => 'centrinio Dusuno',
+ 'dua' => 'dualų',
+ 'dum' => 'Vidurio Vokietijos',
+ 'dv' => 'divehi',
+ 'dyo' => 'džiola-foni',
+ 'dyu' => 'dyulų',
+ 'dz' => 'botijų',
+ 'dzg' => 'dazagų',
+ 'ebu' => 'embu',
+ 'ee' => 'evių',
+ 'efi' => 'efik',
+ 'egl' => 'italų kalbos Emilijos tarmė',
+ 'egy' => 'senovės egiptiečių',
+ 'eka' => 'ekajuk',
+ 'el' => 'graikų',
+ 'elx' => 'elamitų',
+ 'en' => 'anglų',
+ 'en-au' => 'Australijos anglų',
+ 'en-ca' => 'Kanados anglų',
+ 'en-gb' => 'Didžiosios Britanijos anglų',
+ 'en-us' => 'Jungtinių Valstijų anglų',
+ 'enm' => 'Vidurio Anglijos',
+ 'eo' => 'esperanto',
+ 'es' => 'ispanų',
+ 'es-419' => 'Lotynų Amerikos ispanų',
+ 'es-es' => 'Europos ispanų',
+ 'es-mx' => 'Meksikos ispanų',
+ 'esu' => 'centrinės Aliaskos jupikų',
+ 'et' => 'estų',
+ 'eu' => 'baskų',
+ 'ewo' => 'evondo',
+ 'ext' => 'ispanų kalbos Ekstremadūros tarmė',
+ 'fa' => 'persų',
+ 'fan' => 'fang',
+ 'fat' => 'fanti',
+ 'ff' => 'fulahų',
+ 'fi' => 'suomių',
+ 'fil' => 'filipiniečių',
+ 'fit' => 'suomių kalbos Tornedalio tarmė',
+ 'fj' => 'fidžių',
+ 'fo' => 'farerų',
+ 'fon' => 'fon',
+ 'fr' => 'prancūzų',
+ 'fr-ca' => 'Kanados prancūzų',
+ 'fr-ch' => 'Šveicarijos prancūzų',
+ 'frc' => 'kadžunų prancūzų',
+ 'frm' => 'Vidurio Prancūzijos',
+ 'fro' => 'senoji prancūzų',
+ 'frp' => 'Arpitano',
+ 'frr' => 'šiaurinių fryzų',
+ 'frs' => 'rytų fryzų',
+ 'fur' => 'frulan',
+ 'fy' => 'vakarų fryzų',
+ 'ga' => 'airių',
+ 'gaa' => 'ga',
+ 'gag' => 'gagaūzų',
+ 'gan' => 'kinų kalbos dziangsi tarmė',
+ 'gay' => 'gajo',
+ 'gba' => 'gbaja',
+ 'gbz' => 'zoroastrų dari',
+ 'gd' => 'škotų (gėlų)',
+ 'gez' => 'gyz',
+ 'gil' => 'kiribati',
+ 'gl' => 'galisų',
+ 'glk' => 'gilaki',
+ 'gmh' => 'Vidurio Aukštosios Vokietijos',
+ 'gn' => 'gvaranių',
+ 'goh' => 'Senoji Aukštosios Vokietijos',
+ 'gom' => 'Goa konkanių',
+ 'gon' => 'gondi',
+ 'gor' => 'gorontalo',
+ 'got' => 'gotų',
+ 'grb' => 'grebo',
+ 'grc' => 'senovės graikų',
+ 'gsw' => 'Šveicarijos vokiečių',
+ 'gu' => 'gudžaratų',
+ 'guc' => 'vajų',
+ 'gur' => 'frafra',
+ 'guz' => 'gusi',
+ 'gv' => 'meniečių',
+ 'gwi' => 'gvičino',
+ 'ha' => 'hausų',
+ 'hai' => 'haido',
+ 'hak' => 'kinų kalbos hakų tarmė',
+ 'haw' => 'havajiečių',
+ 'he' => 'hebrajų',
+ 'hi' => 'hindi',
+ 'hif' => 'Fidžio hindi',
+ 'hil' => 'hiligainon',
+ 'hit' => 'hititų',
+ 'hmn' => 'hmong',
+ 'ho' => 'hiri motu',
+ 'hr' => 'kroatų',
+ 'hsb' => 'aukštutinių sorbų',
+ 'hsn' => 'kinų kalbos hunano tarmė',
+ 'ht' => 'Haičio',
+ 'hu' => 'vengrų',
+ 'hup' => 'hupa',
+ 'hy' => 'armėnų',
+ 'hz' => 'herero',
+ 'ia' => 'interlingva',
+ 'iba' => 'iban',
+ 'ibb' => 'ibibio',
+ 'id' => 'indoneziečių',
+ 'ie' => 'interkalba',
+ 'ig' => 'igbų',
+ 'ii' => 'sičuan ji',
+ 'ik' => 'inupiak',
+ 'ilo' => 'iloko',
+ 'inh' => 'ingušų',
+ 'io' => 'ido',
+ 'is' => 'islandų',
+ 'it' => 'italų',
+ 'iu' => 'inukitut',
+ 'izh' => 'ingrų',
+ 'ja' => 'japonų',
+ 'jam' => 'Jamaikos kreolų anglų',
+ 'jbo' => 'loiban',
+ 'jgo' => 'ngombų',
+ 'jmc' => 'mačamų',
+ 'jpr' => 'judėjų persų',
+ 'jrb' => 'judėjų arabų',
+ 'jut' => 'danų kalbos jutų tarmė',
+ 'jv' => 'javiečių',
+ 'ka' => 'gruzinų',
+ 'kaa' => 'karakalpakų',
+ 'kab' => 'kebailų',
+ 'kac' => 'kačin',
+ 'kaj' => 'ju',
+ 'kam' => 'kembų',
+ 'kaw' => 'kavi',
+ 'kbd' => 'kabardinų',
+ 'kbl' => 'kanembų',
+ 'kcg' => 'tyap',
+ 'kde' => 'makondų',
+ 'kea' => 'Žaliojo Kyšulio kreolų',
+ 'ken' => 'kenyang',
+ 'kfo' => 'koro',
+ 'kg' => 'Kongo',
+ 'kgp' => 'kaingang',
+ 'kha' => 'kasi',
+ 'kho' => 'kotanezų',
+ 'khq' => 'kojra čini',
+ 'khw' => 'khovarų',
+ 'ki' => 'kikujų',
+ 'kiu' => 'kirmanjki',
+ 'kj' => 'kuaniama',
+ 'kk' => 'kazachų',
+ 'kkj' => 'kako',
+ 'kl' => 'kalalisut',
+ 'kln' => 'kalenjinų',
+ 'km' => 'khmerų',
+ 'kmb' => 'kimbundu',
+ 'kn' => 'kanadų',
+ 'ko' => 'korėjiečių',
+ 'koi' => 'komių-permių',
+ 'kok' => 'konkanių',
+ 'kos' => 'kosreanų',
+ 'kpe' => 'kpele',
+ 'kr' => 'kanuri',
+ 'krc' => 'karačiajų balkarijos',
+ 'kri' => 'krio',
+ 'krj' => 'kinaray-a',
+ 'krl' => 'karelų',
+ 'kru' => 'kuruk',
+ 'ks' => 'kašmyrų',
+ 'ksb' => 'šambalų',
+ 'ksf' => 'bafų',
+ 'ksh' => 'kolognų',
+ 'ku' => 'kurdų',
+ 'kum' => 'kumikų',
+ 'kut' => 'kutenai',
+ 'kv' => 'komi',
+ 'kw' => 'kornų',
+ 'ky' => 'kirgizų',
+ 'la' => 'lotynų',
+ 'lad' => 'ladino',
+ 'lag' => 'langi',
+ 'lah' => 'landa',
+ 'lam' => 'lamba',
+ 'lb' => 'liuksemburgiečių',
+ 'lez' => 'lezginų',
+ 'lfn' => 'naujoji frankų kalba',
+ 'lg' => 'ganda',
+ 'li' => 'limburgiš',
+ 'lij' => 'ligūrų',
+ 'liv' => 'lyvių',
+ 'lkt' => 'lakotų',
+ 'lmo' => 'lombardų',
+ 'ln' => 'ngalų',
+ 'lo' => 'laosiečių',
+ 'lol' => 'mongo',
+ 'loz' => 'lozi',
+ 'lt' => 'lietuvių',
+ 'ltg' => 'latgalių',
+ 'lu' => 'luba katanga',
+ 'lua' => 'luba lulua',
+ 'lui' => 'luiseno',
+ 'lun' => 'lunda',
+ 'luo' => 'luo',
+ 'lus' => 'mizo',
+ 'luy' => 'luja',
+ 'lv' => 'latvių',
+ 'lzh' => 'klasikinė kinų',
+ 'lzz' => 'laz',
+ 'mad' => 'madurezų',
+ 'maf' => 'mafų',
+ 'mag' => 'magahi',
+ 'mai' => 'maithili',
+ 'mak' => 'makasaro',
+ 'man' => 'mandingo',
+ 'mas' => 'masajų',
+ 'mde' => 'mabų',
+ 'mdf' => 'mokša',
+ 'mdr' => 'mandar',
+ 'men' => 'mende',
+ 'mer' => 'merų',
+ 'mfe' => 'morisijų',
+ 'mg' => 'malagasų',
+ 'mga' => 'Vidurio Airijos',
+ 'mgh' => 'makua-maeto',
+ 'mgo' => 'meta',
+ 'mh' => 'Maršalo Salų',
+ 'mi' => 'maorių',
+ 'mic' => 'mikmak',
+ 'min' => 'minankabu',
+ 'mk' => 'makedonų',
+ 'ml' => 'malajalių',
+ 'mn' => 'mongolų',
+ 'mnc' => 'manču',
+ 'mni' => 'manipuri',
+ 'moh' => 'mohok',
+ 'mos' => 'mosi',
+ 'mr' => 'maratų',
+ 'mrj' => 'vakarų mari',
+ 'ms' => 'malajiečių',
+ 'mt' => 'maltiečių',
+ 'mua' => 'mundangų',
+ 'mul' => 'kelios kalbos',
+ 'mus' => 'krykų',
+ 'mwl' => 'mirandezų',
+ 'mwr' => 'marvari',
+ 'mwv' => 'mentavai',
+ 'my' => 'birmiečių',
+ 'mye' => 'mjenų',
+ 'myv' => 'erzyjų',
+ 'mzn' => 'mazenderanių',
+ 'na' => 'naurų',
+ 'nan' => 'kinų kalbos pietų minų tarmė',
+ 'nap' => 'neapoliečių',
+ 'naq' => 'nama',
+ 'nb' => 'Norvegijos rašytinė – būkmolų',
+ 'nd' => 'šiaurės ndebelų',
+ 'nds' => 'Žemutinės Vokietijos',
+ 'ne' => 'nepaliečių',
+ 'new' => 'nevari',
+ 'ng' => 'ndongų',
+ 'nia' => 'nias',
+ 'niu' => 'niuenų',
+ 'njo' => 'ao naga',
+ 'nl' => 'olandų',
+ 'nl-be' => 'flamandų',
+ 'nmg' => 'kvasių',
+ 'nn' => 'naujoji norvegų',
+ 'nnh' => 'ngiembūnų',
+ 'no' => 'norvegų',
+ 'nog' => 'nogų',
+ 'non' => 'norsu',
+ 'nov' => 'novial',
+ 'nqo' => 'enko',
+ 'nr' => 'pietų ndebele',
+ 'nso' => 'šiaurės sothų',
+ 'nus' => 'nuerų',
+ 'nv' => 'navajų',
+ 'nwc' => 'klasikinė nevari',
+ 'ny' => 'nianja',
+ 'nym' => 'niamvezi',
+ 'nyn' => 'niankolų',
+ 'nyo' => 'nioro',
+ 'nzi' => 'nzima',
+ 'oc' => 'očitarų',
+ 'oj' => 'ojibva',
+ 'om' => 'oromų',
+ 'or' => 'orijų',
+ 'os' => 'osetinų',
+ 'osa' => 'osage',
+ 'ota' => 'osmanų turkų',
+ 'pa' => 'pendžabų',
+ 'pag' => 'pangasinan',
+ 'pal' => 'pahlavi',
+ 'pam' => 'pampanga',
+ 'pap' => 'papiemento',
+ 'pau' => 'palau',
+ 'pcd' => 'pikardų',
+ 'pdc' => 'Pensilvanijos vokiečių',
+ 'pdt' => 'vokiečių kalbos žemaičių tarmė',
+ 'peo' => 'senoji persų',
+ 'pfl' => 'vokiečių kalbos Pfalco tarmė',
+ 'phn' => 'finikiečių',
+ 'pi' => 'pali',
+ 'pl' => 'lenkų',
+ 'pms' => 'italų kalbos Pjemonto tarmė',
+ 'pnt' => 'Ponto',
+ 'pon' => 'Ponapės',
+ 'prg' => 'prūsų',
+ 'pro' => 'senovės provansalų',
+ 'ps' => 'puštūnų',
+ 'pt' => 'portugalų',
+ 'pt-br' => 'Brazilijos portugalų',
+ 'pt-pt' => 'Europos portugalų',
+ 'qu' => 'kečujų',
+ 'quc' => 'kičių',
+ 'qug' => 'Čimboraso aukštumų kečujų',
+ 'raj' => 'radžastano',
+ 'rap' => 'rapanui',
+ 'rar' => 'rarotongan',
+ 'rgn' => 'italų kalbos Romanijos tarmė',
+ 'rif' => 'rifų',
+ 'rm' => 'retoromanų',
+ 'rn' => 'rundi',
+ 'ro' => 'rumunų',
+ 'ro-md' => 'moldavų',
+ 'rof' => 'rombo',
+ 'rom' => 'romų',
+ 'rtm' => 'rotumanų',
+ 'ru' => 'rusų',
+ 'rue' => 'rusinų',
+ 'rug' => 'Rovianos',
+ 'rup' => 'aromanių',
+ 'rw' => 'kinjaruandų',
+ 'rwk' => 'rua',
+ 'sa' => 'sanskritas',
+ 'sad' => 'sandavi',
+ 'sah' => 'jakutų',
+ 'sam' => 'samarėjų aramių',
+ 'saq' => 'sambūrų',
+ 'sas' => 'sasak',
+ 'sat' => 'santali',
+ 'saz' => 'sauraštrų',
+ 'sba' => 'ngambajų',
+ 'sbp' => 'sangų',
+ 'sc' => 'sardiniečių',
+ 'scn' => 'siciliečių',
+ 'sco' => 'škotų',
+ 'sd' => 'sindų',
+ 'sdc' => 'sasaresų sardinų',
+ 'se' => 'šiaurės samių',
+ 'see' => 'senecų',
+ 'seh' => 'senų',
+ 'sei' => 'seri',
+ 'sel' => 'selkup',
+ 'ses' => 'kojraboro seni',
+ 'sg' => 'sango',
+ 'sga' => 'senoji airių',
+ 'sgs' => 'žemaičių',
+ 'sh' => 'serbų-kroatų',
+ 'shi' => 'tachelhitų',
+ 'shn' => 'šan',
+ 'shu' => 'chadian arabų',
+ 'si' => 'sinhalų',
+ 'sid' => 'sidamo',
+ 'sk' => 'slovakų',
+ 'sl' => 'slovėnų',
+ 'sli' => 'sileziečių žemaičių',
+ 'sly' => 'selajarų',
+ 'sm' => 'samoa',
+ 'sma' => 'pietų samių',
+ 'smj' => 'Lulėjo samių',
+ 'smn' => 'Inario samių',
+ 'sms' => 'Skolto samių',
+ 'sn' => 'šonų',
+ 'snk' => 'soninke',
+ 'so' => 'somaliečių',
+ 'sog' => 'sogdien',
+ 'sq' => 'albanų',
+ 'sr' => 'serbų',
+ 'srn' => 'sranan tongo',
+ 'srr' => 'sererų',
+ 'ss' => 'svati',
+ 'ssy' => 'saho',
+ 'st' => 'pietų sesuto',
+ 'stq' => 'Saterlendo fryzų',
+ 'su' => 'sundų',
+ 'suk' => 'sukuma',
+ 'sus' => 'susu',
+ 'sux' => 'šumerų',
+ 'sv' => 'švedų',
+ 'sw' => 'suahilių',
+ 'swb' => 'Komorų',
+ 'swc' => 'Kongo suahilių',
+ 'syc' => 'klasikinė siriečių',
+ 'syr' => 'sirų',
+ 'szl' => 'sileziečių',
+ 'ta' => 'tamilų',
+ 'tcy' => 'tulų',
+ 'te' => 'telugų',
+ 'tem' => 'timne',
+ 'teo' => 'teso',
+ 'ter' => 'tereno',
+ 'tet' => 'tetum',
+ 'tg' => 'tadžikų',
+ 'th' => 'tajų',
+ 'ti' => 'tigrajų',
+ 'tig' => 'tigre',
+ 'tiv' => 'tiv',
+ 'tk' => 'turkmėnų',
+ 'tkl' => 'tokelau',
+ 'tkr' => 'tsakurų',
+ 'tl' => 'tagalogų',
+ 'tlh' => 'klingonų',
+ 'tli' => 'tlingit',
+ 'tly' => 'talyšų',
+ 'tmh' => 'tamašek',
+ 'tn' => 'tsvana',
+ 'to' => 'tonganų',
+ 'tog' => 'niasa tongos',
+ 'tpi' => 'tok pisin',
+ 'tr' => 'turkų',
+ 'tru' => 'turoyo',
+ 'trv' => 'taroko',
+ 'ts' => 'tsonga',
+ 'tsd' => 'tsakonų',
+ 'tsi' => 'tsimšian',
+ 'tt' => 'totorių',
+ 'ttt' => 'musulmonų tatų',
+ 'tum' => 'tumbukų',
+ 'tvl' => 'tuvalu',
+ 'tw' => 'tvi',
+ 'twq' => 'tasavakų',
+ 'ty' => 'taitiečių',
+ 'tyv' => 'tuvių',
+ 'tzm' => 'Centrinio Maroko tamazitų',
+ 'udm' => 'udmurtų',
+ 'ug' => 'uigūrų',
+ 'uga' => 'ugaritic',
+ 'uk' => 'ukrainiečių',
+ 'umb' => 'umbundu',
+ 'und' => 'nežinoma kalba',
+ 'ur' => 'urdų',
+ 'uz' => 'uzbekų',
+ 'vai' => 'vai',
+ 've' => 'venda',
+ 'vec' => 'venetų',
+ 'vep' => 'vepsų',
+ 'vi' => 'vietnamiečių',
+ 'vls' => 'vakarų flamandų',
+ 'vmf' => 'pagrindinė frankonų',
+ 'vo' => 'volapiuk',
+ 'vot' => 'votik',
+ 'vro' => 'võro',
+ 'vun' => 'vunjo',
+ 'wa' => 'valonų',
+ 'wae' => 'valserų',
+ 'wal' => 'valamo',
+ 'war' => 'varai',
+ 'was' => 'vašo',
+ 'wo' => 'volofų',
+ 'wuu' => 'kinų kalbos vu tarmė',
+ 'xal' => 'kalmukų',
+ 'xh' => 'kosų',
+ 'xmf' => 'megrelų',
+ 'xog' => 'sogų',
+ 'yao' => 'jao',
+ 'yap' => 'japezų',
+ 'yav' => 'jangbenų',
+ 'ybb' => 'jembų',
+ 'yi' => 'jidiš',
+ 'yo' => 'jorubų',
+ 'yrl' => 'njengatu',
+ 'yue' => 'kinų kalbos Kantono tarmė',
+ 'za' => 'chuang',
+ 'zap' => 'zapotekų',
+ 'zbl' => '„Bliss“ simbolių',
+ 'zea' => 'zelandų',
+ 'zen' => 'zenaga',
+ 'zgh' => 'standartinė Maroko tamazigtų',
+ 'zh' => 'kinų',
+ 'zh-hans' => 'supaprastintoji kinų',
+ 'zh-hant' => 'tradicinė kinų',
+ 'zu' => 'zulų',
+ 'zun' => 'zuni',
+ 'zxx' => 'nėra kalbinio turinio',
+ 'zza' => 'zaza',
+);
+
+$currencyNames = array(
+ 'ADP' => 'Andoros peseta',
+ 'AED' => 'Jungtinių Arabų Emyratų dirhamas',
+ 'AFA' => 'Afganistano afganis (1927–2002)',
+ 'AFN' => 'Afganistano afganis',
+ 'ALK' => 'Albanijos lekas (1946–1965)',
+ 'ALL' => 'Albanijos lekas',
+ 'AMD' => 'Armėnijos dramas',
+ 'ANG' => 'Olandijos Antilų guldenas',
+ 'AOA' => 'Angolos kvanza',
+ 'AOK' => 'Angolos kvanza (1977–1990)',
+ 'AON' => 'Angolos naujoji kvanza (1990–2000)',
+ 'AOR' => 'Angolos patikslinta kvanza (1995–1999)',
+ 'ARA' => 'Argentinos australs',
+ 'ARL' => 'Argentinos pesos ley (1970–1983)',
+ 'ARM' => 'Argentinos pesai (1881–1970)',
+ 'ARP' => 'Argentinos pesas (1983–1985)',
+ 'ARS' => 'Argentinos pesas',
+ 'ATS' => 'Austrijos šilingas',
+ 'AUD' => 'Australijos doleris',
+ 'AWG' => 'Arubos guldenas',
+ 'AZM' => 'Azerbaidžano manatas (1993–2006)',
+ 'AZN' => 'Azerbaidžano manatas',
+ 'BAD' => 'Bosnijos ir Hercegovinos dinaras (1992–1994)',
+ 'BAM' => 'Bosnijos ir Hercegovinos konvertuojamoji markė',
+ 'BAN' => 'Bosnijos ir Hercegovinos naujasis dinaras (1994–1997)',
+ 'BBD' => 'Barbadoso doleris',
+ 'BDT' => 'Bangladešo taka',
+ 'BEC' => 'Belgijos frankas (konvertuojamas)',
+ 'BEF' => 'Belgijos frankas',
+ 'BEL' => 'Belgijos frankas (finansinis)',
+ 'BGL' => 'Bulgarijos levas (1962–1999)',
+ 'BGM' => 'Bulgarų socialistų leva',
+ 'BGN' => 'Bulgarijos levas',
+ 'BGO' => 'Bulgarijos levas (1879–1952)',
+ 'BHD' => 'Bahreino dinaras',
+ 'BIF' => 'Burundžio frankas',
+ 'BMD' => 'Bermudos doleris',
+ 'BND' => 'Brunėjaus doleris',
+ 'BOB' => 'Bolivijos bolivijanas',
+ 'BOL' => 'Bolivijos bolivijanas (1863–1963)',
+ 'BOP' => 'Bolivijos pesas',
+ 'BOV' => 'Bolivijos mvdol',
+ 'BRB' => 'Brazilijos naujieji kruzeirai (1967–1986)',
+ 'BRC' => 'Brazilijos kruzadai (1986–1989)',
+ 'BRE' => 'Brazilijos kruzeiras (1990–1993)',
+ 'BRL' => 'Brazilijos realas',
+ 'BRN' => 'Brazilijos naujiejis kruzadai (1989–1990)',
+ 'BRR' => 'Brazilijos kruzeiras (1993–1994)',
+ 'BRZ' => 'Brazilijos kruzeirai (1942–1967)',
+ 'BSD' => 'Bahamų doleris',
+ 'BTN' => 'Butano ngultrumas',
+ 'BUK' => 'Birmos kijatas',
+ 'BWP' => 'Botsvanos pula',
+ 'BYB' => 'Baltarusijos naujasis rublis (1994–1999)',
+ 'BYR' => 'Baltarusijos rublis',
+ 'BZD' => 'Belizo doleris',
+ 'CAD' => 'Kanados doleris',
+ 'CDF' => 'Kongo frankas',
+ 'CHE' => 'WIR eurai',
+ 'CHF' => 'Šveicarijos frankas',
+ 'CHW' => 'WIR frankas',
+ 'CLE' => 'Čilės eskudai',
+ 'CLF' => 'Čiliečių unidades de fomentos',
+ 'CLP' => 'Čilės pesas',
+ 'CNX' => 'Kinijos "People" banko doleris',
+ 'CNY' => 'Kinijos ženminbi juanis',
+ 'COP' => 'Kolumbijos pesas',
+ 'COU' => 'unidad de valor realai',
+ 'CRC' => 'Kosta Rikos kolonas',
+ 'CSD' => 'Serbijos dinaras (2002–2006)',
+ 'CSK' => 'Čekoslovakų sunkusis korunas',
+ 'CUC' => 'Kubos konvertuojamasis pesas',
+ 'CUP' => 'Kubos pesas',
+ 'CVE' => 'Žaliojo Kyšulio eskudas',
+ 'CYP' => 'Kipro svaras',
+ 'CZK' => 'Čekijos krona',
+ 'DDM' => 'Rytų Vokietijos markė',
+ 'DEM' => 'Vokietijos markė',
+ 'DJF' => 'Džibučio frankas',
+ 'DKK' => 'Danijos krona',
+ 'DOP' => 'Dominikos pesas',
+ 'DZD' => 'Alžyro dinaras',
+ 'ECS' => 'Ekvadoro sukrė',
+ 'ECV' => 'Ekvadoro constante (UVC)',
+ 'EEK' => 'Estijos krona',
+ 'EGP' => 'Egipto svaras',
+ 'ERN' => 'Eritrėjos nakfa',
+ 'ESA' => 'Ispanų pesetai (A sąskaita)',
+ 'ESB' => 'Ispanų pesetai (konvertuojama sąskaita)',
+ 'ESP' => 'Ispanijos peseta',
+ 'ETB' => 'Etiopijos biras',
+ 'EUR' => 'Euras',
+ 'FIM' => 'Suomijos markė',
+ 'FJD' => 'Fidžio doleris',
+ 'FKP' => 'Falklando salų svaras',
+ 'FRF' => 'Prancūzijos frankas',
+ 'GBP' => 'Didžiosios Britanijos svaras sterlingų',
+ 'GEK' => 'Gruzinų kupon larits',
+ 'GEL' => 'Gruzijos laris',
+ 'GHC' => 'Ganos sedis (1979–2007)',
+ 'GHS' => 'Ganos sedis',
+ 'GIP' => 'Gibraltaro svaras',
+ 'GMD' => 'Gambijos dalasis',
+ 'GNF' => 'Gvinėjos frankas',
+ 'GNS' => 'Guinean sylis',
+ 'GQE' => 'Pusiaujo Guinean ekwele',
+ 'GRD' => 'Graikijos drachma',
+ 'GTQ' => 'Gvatemalos ketcalis',
+ 'GWE' => 'Portugalų Gvinėjos eskudas',
+ 'GWP' => 'Gvinėjos-Bisau pesas',
+ 'GYD' => 'Gajanos doleris',
+ 'HKD' => 'Honkongo doleris',
+ 'HNL' => 'Hondūro lempira',
+ 'HRD' => 'Kroatijos dinaras',
+ 'HRK' => 'Kroatijos kuna',
+ 'HTG' => 'Haičio gurdas',
+ 'HUF' => 'Vengrijos forintas',
+ 'IDR' => 'Indonezijos rupija',
+ 'IEP' => 'Airijos svaras',
+ 'ILP' => 'Izraelio svaras',
+ 'ILR' => 'Izraelio šekelis (1980–1985)',
+ 'ILS' => 'Izraelio naujasis šekelis',
+ 'INR' => 'Indijos rupija',
+ 'IQD' => 'Irako dinaras',
+ 'IRR' => 'Irano rialas',
+ 'ISJ' => 'Islandijos krona (1918–1981)',
+ 'ISK' => 'Islandijos krona',
+ 'ITL' => 'Italijos lira',
+ 'JMD' => 'Jamaikos doleris',
+ 'JOD' => 'Jordanijos dinaras',
+ 'JPY' => 'Japonijos jena',
+ 'KES' => 'Kenijos šilingas',
+ 'KGS' => 'Kirgizijos somas',
+ 'KHR' => 'Kambodžos rielis',
+ 'KMF' => 'Komoro frankas',
+ 'KPW' => 'Šiaurės Korėjos vonas',
+ 'KRH' => 'Pietų Korėjos hwanas (1953–1962)',
+ 'KRO' => 'Pietų Korėjos vonas (1945–1953)',
+ 'KRW' => 'Pietų Korėjos vonas',
+ 'KWD' => 'Kuveito dinaras',
+ 'KYD' => 'Kaimanų salų doleris',
+ 'KZT' => 'Kazachstano tengė',
+ 'LAK' => 'Laoso kipas',
+ 'LBP' => 'Libano svaras',
+ 'LKR' => 'Šri Lankos rupija',
+ 'LRD' => 'Liberijos doleris',
+ 'LSL' => 'Lesoto lotis',
+ 'LTL' => 'Lietuvos litas',
+ 'LTT' => 'Lietuvos talonas',
+ 'LUC' => 'Liuksemburgo konvertuojamas frankas',
+ 'LUF' => 'Liuksemburgo frankas',
+ 'LUL' => 'Liuksemburgo finansinis frankas',
+ 'LVL' => 'Latvijos latas',
+ 'LVR' => 'Latvijos rublis',
+ 'LYD' => 'Libijos dinaras',
+ 'MAD' => 'Maroko dirhamas',
+ 'MAF' => 'Maroko frankas',
+ 'MCF' => 'Monegasque frankas',
+ 'MDC' => 'Moldovų cupon',
+ 'MDL' => 'Moldovos lėja',
+ 'MGA' => 'Madagaskaro ariaris',
+ 'MGF' => 'Madagaskaro frankas',
+ 'MKD' => 'Makedonijos denaras',
+ 'MKN' => 'Makedonijos denaras (1992–1993)',
+ 'MLF' => 'Malio frankas',
+ 'MMK' => 'Mianmaro kijatas',
+ 'MNT' => 'Mongolijos tugrikas',
+ 'MOP' => 'Makao pataka',
+ 'MRO' => 'Mauritanijos ugija',
+ 'MTL' => 'Maltos lira',
+ 'MTP' => 'Maltos svaras',
+ 'MUR' => 'Mauricijaus rupija',
+ 'MVP' => 'Maldyvų rupija',
+ 'MVR' => 'Maldyvų rufija',
+ 'MWK' => 'Malavio kvača',
+ 'MXN' => 'Meksikos pesas',
+ 'MXP' => 'Meksikos sidabrinis pesas (1861–1992)',
+ 'MXV' => 'Meksikos United de Inversion (UDI)',
+ 'MYR' => 'Malaizijos ringitas',
+ 'MZE' => 'Mozambiko eskudas',
+ 'MZM' => 'Mozambiko metikalis (1980–2006)',
+ 'MZN' => 'Mozambiko metikalis',
+ 'NAD' => 'Namibijos doleris',
+ 'NGN' => 'Nigerijos naira',
+ 'NIC' => 'Nikaragvos kardoba (1988–1991)',
+ 'NIO' => 'Nikaragvos kordoba',
+ 'NLG' => 'Nyderlandų guldenas',
+ 'NOK' => 'Norvegijos krona',
+ 'NPR' => 'Nepalo rupija',
+ 'NZD' => 'Naujosios Zelandijos doleris',
+ 'OMR' => 'Omano rialas',
+ 'PAB' => 'Panamos balboja',
+ 'PEI' => 'Peru intis',
+ 'PEN' => 'Peru naujasis solis',
+ 'PES' => 'Peru solis (1863–1965)',
+ 'PGK' => 'Papua Naujosios Gvinėjos kina',
+ 'PHP' => 'Filipinų pesas',
+ 'PKR' => 'Pakistano rupija',
+ 'PLN' => 'Lenkijos zlotas',
+ 'PLZ' => 'Lenkijos zlotas (1950–1995)',
+ 'PTE' => 'Portugalijos eskudas',
+ 'PYG' => 'Paragvajaus guaranis',
+ 'QAR' => 'Kataro rialas',
+ 'RHD' => 'Rodezijos doleris',
+ 'ROL' => 'Rumunijos lėja (1952–2006)',
+ 'RON' => 'Rumunijos lėja',
+ 'RSD' => 'Serbijos dinaras',
+ 'RUB' => 'Rusijos rublis',
+ 'RUR' => 'Rusijos rublis (1991–1998)',
+ 'RWF' => 'Ruandos frankas',
+ 'SAR' => 'Saudo Arabijos rijalas',
+ 'SBD' => 'Saliamono salų doleris',
+ 'SCR' => 'Seišelių rupija',
+ 'SDD' => 'Sudano dinaras (1992–2007)',
+ 'SDG' => 'Sudano svaras',
+ 'SDP' => 'Sudano svaras (1957–1998)',
+ 'SEK' => 'Švedijos krona',
+ 'SGD' => 'Singapūro doleris',
+ 'SHP' => 'Šv. Elenos salų svaras',
+ 'SIT' => 'Slovėnijos tolaras',
+ 'SKK' => 'Slovakijos krona',
+ 'SLL' => 'Siera Leonės leonė',
+ 'SOS' => 'Somalio šilingas',
+ 'SRD' => 'Surimano doleris',
+ 'SRG' => 'Surimano guldenas',
+ 'SSP' => 'Pietų Sudano svaras',
+ 'STD' => 'San Tomės ir Principės dobra',
+ 'SUR' => 'Sovietų rublis',
+ 'SVC' => 'Salvadoro kolonas',
+ 'SYP' => 'Sirijos svaras',
+ 'SZL' => 'Svazilando lilangenis',
+ 'THB' => 'Tailando batas',
+ 'TJR' => 'Tadžikistano rublis',
+ 'TJS' => 'Tadžikistano somonis',
+ 'TMM' => 'Turkmėnistano manatas (1993–2009)',
+ 'TMT' => 'Turkmėnistano manatas',
+ 'TND' => 'Tuniso dinaras',
+ 'TOP' => 'Tongo paanga',
+ 'TPE' => 'Timoro eskudas',
+ 'TRL' => 'Turkijos lira (1922–2005)',
+ 'TRY' => 'Turkijos lira',
+ 'TTD' => 'Trinidado ir Tobago doleris',
+ 'TWD' => 'Taivano naujasis doleris',
+ 'TZS' => 'Tanzanijos šilingas',
+ 'UAH' => 'Ukrainos grivina',
+ 'UAK' => 'Ukrainos karbovanecas',
+ 'UGS' => 'Ugandos šilingas (1966–1987)',
+ 'UGX' => 'Ugandos šilingas',
+ 'USD' => 'JAV doleris',
+ 'USN' => 'JAV doleris (kitos dienos)',
+ 'USS' => 'JAV doleris (šios dienos)',
+ 'UYI' => 'Urugvajaus pesai en unidades indexadas',
+ 'UYP' => 'Urugvajaus pesas (1975–1993)',
+ 'UYU' => 'Urugvajaus pesas',
+ 'UZS' => 'Uzbekistano sumas',
+ 'VEB' => 'Venesuelos bolivaras (1871–2008)',
+ 'VEF' => 'Venesuelos bolivaras',
+ 'VND' => 'Vietnamo dongas',
+ 'VNN' => 'Vietnamo dongas (1978–1985)',
+ 'VUV' => 'Vanuatu vatas',
+ 'WST' => 'Samoa tala',
+ 'XAF' => 'CFA BEAC frankas',
+ 'XAG' => 'Sidabras',
+ 'XAU' => 'Auksas',
+ 'XBA' => 'Europos suvestinės vienetas',
+ 'XBB' => 'Europos piniginis vienetas',
+ 'XBC' => 'Europos valiutos / apskaitos vienetas (XBC)',
+ 'XBD' => 'Europos valiutos / apskaitos vienetas (XBD)',
+ 'XCD' => 'Rytų Karibų doleris',
+ 'XDR' => 'SDR tarptautinis valiutos fondas',
+ 'XEU' => 'Europos piniginis vienetas (1993–1999)',
+ 'XFO' => 'Aukso frankas',
+ 'XFU' => 'Prancūzijos UIC - frankas',
+ 'XOF' => 'CFA BCEAO frankas',
+ 'XPD' => 'Paladis',
+ 'XPF' => 'CFP frankas',
+ 'XPT' => 'Platina',
+ 'XRE' => 'RINET fondai',
+ 'XSU' => 'Sukrė',
+ 'XTS' => 'Tikrinamas valiutos kodas',
+ 'XUA' => 'Azijos plėtros banko apskaitos vienetas',
+ 'XXX' => 'nežinoma valiuta',
+ 'YDD' => 'Jemeno dinaras',
+ 'YER' => 'Jemeno rialas',
+ 'YUD' => 'Jugoslavijos kietasis dinaras (1966–1990)',
+ 'YUM' => 'Jugoslavijos naujasis dinaras (1994–2002)',
+ 'YUN' => 'Jugoslavijos konvertuojamas dinaras (1990–1992)',
+ 'YUR' => 'Jugoslavijos reformuotas dinaras (1992–1993)',
+ 'ZAL' => 'Pietų Afrikos finansinis randas',
+ 'ZAR' => 'Pietų Afrikos Respublikos randas',
+ 'ZMK' => 'Zambijos kvača (1968–2012)',
+ 'ZMW' => 'Zambijos kvača',
+ 'ZRN' => 'Zairo naujasis zairas (1993–1998)',
+ 'ZRZ' => 'Zairo zairas (1971–1993)',
+ 'ZWD' => 'Zimbabvės doleris (1980–2008)',
+ 'ZWL' => 'Zimbabvės doleris (2009)',
+ 'ZWR' => 'Zimbabvės doleris (2008)',
+);
+
+$currencySymbols = array(
+ 'AED' => 'AED',
+ 'AFN' => 'AFN',
+ 'ALL' => 'ALL',
+ 'AMD' => 'AMD',
+ 'ANG' => 'ANG',
+ 'AOA' => 'AOA',
+ 'ARS' => 'ARS',
+ 'AUD' => 'AUD',
+ 'AWG' => 'AWG',
+ 'AZN' => 'AZN',
+ 'BAM' => 'BAM',
+ 'BBD' => 'BBD',
+ 'BDT' => 'BDT',
+ 'BGN' => 'BGN',
+ 'BHD' => 'BHD',
+ 'BIF' => 'BIF',
+ 'BMD' => 'BMD',
+ 'BND' => 'BND',
+ 'BOB' => 'BOB',
+ 'BRL' => 'BRL',
+ 'BSD' => 'BSD',
+ 'BTN' => 'BTN',
+ 'BWP' => 'BWP',
+ 'BYR' => 'BYR',
+ 'BZD' => 'BZD',
+ 'CAD' => 'CAD',
+ 'CDF' => 'CDF',
+ 'CHF' => 'CHF',
+ 'CLP' => 'CLP',
+ 'CNY' => 'CNY',
+ 'COP' => 'COP',
+ 'CRC' => 'CRC',
+ 'CUC' => 'CUC',
+ 'CUP' => 'CUP',
+ 'CVE' => 'CVE',
+ 'CZK' => 'CZK',
+ 'DJF' => 'DJF',
+ 'DKK' => 'DKK',
+ 'DOP' => 'DOP',
+ 'DZD' => 'DZD',
+ 'EGP' => 'EGP',
+ 'ERN' => 'ERN',
+ 'ETB' => 'ETB',
+ 'EUR' => 'EUR',
+ 'FJD' => 'FJD',
+ 'FKP' => 'FKP',
+ 'GBP' => 'GBP',
+ 'GEL' => 'GEL',
+ 'GHS' => 'GHS',
+ 'GIP' => 'GIP',
+ 'GMD' => 'GMD',
+ 'GNF' => 'GNF',
+ 'GTQ' => 'GTQ',
+ 'GYD' => 'GYD',
+ 'HKD' => 'HKD',
+ 'HNL' => 'HNL',
+ 'HRK' => 'HRK',
+ 'HTG' => 'HTG',
+ 'HUF' => 'HUF',
+ 'IDR' => 'IDR',
+ 'ILS' => 'ILS',
+ 'INR' => 'INR',
+ 'IQD' => 'IQD',
+ 'IRR' => 'IRR',
+ 'ISK' => 'ISK',
+ 'JMD' => 'JMD',
+ 'JOD' => 'JOD',
+ 'JPY' => 'JPY',
+ 'KES' => 'KES',
+ 'KGS' => 'KGS',
+ 'KHR' => 'KHR',
+ 'KMF' => 'KMF',
+ 'KPW' => 'KPW',
+ 'KRW' => 'KRW',
+ 'KWD' => 'KWD',
+ 'KYD' => 'KYD',
+ 'KZT' => 'KZT',
+ 'LAK' => 'LAK',
+ 'LBP' => 'LBP',
+ 'LKR' => 'LKR',
+ 'LRD' => 'LRD',
+ 'LTL' => 'LTL',
+ 'LVL' => 'LVL',
+ 'LYD' => 'LYD',
+ 'MAD' => 'MAD',
+ 'MDL' => 'MDL',
+ 'MGA' => 'MGA',
+ 'MKD' => 'MKD',
+ 'MMK' => 'MMK',
+ 'MNT' => 'MNT',
+ 'MOP' => 'MOP',
+ 'MRO' => 'MRO',
+ 'MUR' => 'MUR',
+ 'MVR' => 'MVR',
+ 'MWK' => 'MWK',
+ 'MXN' => 'MXN',
+ 'MYR' => 'MYR',
+ 'MZN' => 'MZN',
+ 'NAD' => 'NAD',
+ 'NGN' => 'NGN',
+ 'NIO' => 'NIO',
+ 'NOK' => 'NOK',
+ 'NPR' => 'NPR',
+ 'NZD' => 'NZD',
+ 'OMR' => 'OMR',
+ 'PAB' => 'PAB',
+ 'PEN' => 'PEN',
+ 'PGK' => 'PGK',
+ 'PHP' => 'PHP',
+ 'PKR' => 'PKR',
+ 'PLN' => 'PLN',
+ 'PYG' => 'PYG',
+ 'QAR' => 'QAR',
+ 'RON' => 'RON',
+ 'RSD' => 'RSD',
+ 'RUB' => 'RUB',
+ 'RWF' => 'RWF',
+ 'SAR' => 'SAR',
+ 'SBD' => 'SBD',
+ 'SCR' => 'SCR',
+ 'SDG' => 'SDG',
+ 'SEK' => 'SEK',
+ 'SGD' => 'SGD',
+ 'SHP' => 'SHP',
+ 'SLL' => 'SLL',
+ 'SOS' => 'SOS',
+ 'SRD' => 'SRD',
+ 'SSP' => 'SSP',
+ 'STD' => 'STD',
+ 'SYP' => 'SYP',
+ 'SZL' => 'SZL',
+ 'THB' => 'THB',
+ 'TJS' => 'TJS',
+ 'TMT' => 'TMT',
+ 'TND' => 'TND',
+ 'TOP' => 'TOP',
+ 'TRY' => 'TRY',
+ 'TTD' => 'TTD',
+ 'TWD' => 'TWD',
+ 'TZS' => 'TZS',
+ 'UAH' => 'UAH',
+ 'UGX' => 'UGX',
+ 'USD' => 'USD',
+ 'UYU' => 'UYU',
+ 'UZS' => 'UZS',
+ 'VEF' => 'VEF',
+ 'VND' => 'VND',
+ 'VUV' => 'VUV',
+ 'WST' => 'WST',
+ 'XAF' => 'XAF',
+ 'XCD' => 'XCD',
+ 'XOF' => 'XOF',
+ 'XPF' => 'XPF',
+ 'YER' => 'YER',
+ 'ZAR' => 'ZAR',
+ 'ZMW' => 'ZMW',
+);
+
+$countryNames = array(
+ 'AC' => 'Dangun Žengimo sala',
+ 'AD' => 'Andora',
+ 'AE' => 'Jungtiniai Arabų Emyratai',
+ 'AF' => 'Afganistanas',
+ 'AG' => 'Antigva ir Barbuda',
+ 'AI' => 'Angilija',
+ 'AL' => 'Albanija',
+ 'AM' => 'Armėnija',
+ 'AN' => 'Olandijos Antilai',
+ 'AO' => 'Angola',
+ 'AQ' => 'Antarktida',
+ 'AR' => 'Argentina',
+ 'AS' => 'Amerikos Samoa',
+ 'AT' => 'Austrija',
+ 'AU' => 'Australija',
+ 'AW' => 'Aruba',
+ 'AX' => 'Alandų Salos',
+ 'AZ' => 'Azerbaidžanas',
+ 'BA' => 'Bosnija ir Hercegovina',
+ 'BB' => 'Barbadosas',
+ 'BD' => 'Bangladešas',
+ 'BE' => 'Belgija',
+ 'BF' => 'Burkina Fasas',
+ 'BG' => 'Bulgarija',
+ 'BH' => 'Bahreinas',
+ 'BI' => 'Burundis',
+ 'BJ' => 'Beninas',
+ 'BL' => 'Sen Bartelemi',
+ 'BM' => 'Bermuda',
+ 'BN' => 'Brunėjus',
+ 'BO' => 'Bolivija',
+ 'BQ' => 'Karibų Nyderlandai',
+ 'BR' => 'Brazilija',
+ 'BS' => 'Bahamos',
+ 'BT' => 'Butanas',
+ 'BV' => 'Buvė Sala',
+ 'BW' => 'Botsvana',
+ 'BY' => 'Baltarusija',
+ 'BZ' => 'Belizas',
+ 'CA' => 'Kanada',
+ 'CC' => 'Kokosų (Kilingo) Salos',
+ 'CD' => 'Kongas-Kinšasa',
+ 'CF' => 'Centrinės Afrikos Respublika',
+ 'CG' => 'Kongas-Brazavilis',
+ 'CH' => 'Šveicarija',
+ 'CI' => 'Dramblio Kaulo Krantas',
+ 'CK' => 'Kuko Salos',
+ 'CL' => 'Čilė',
+ 'CM' => 'Kamerūnas',
+ 'CN' => 'Kinija',
+ 'CO' => 'Kolumbija',
+ 'CP' => 'Klipertono sala',
+ 'CR' => 'Kosta Rika',
+ 'CU' => 'Kuba',
+ 'CV' => 'Žaliasis Kyšulys',
+ 'CW' => 'Kiurasao',
+ 'CX' => 'Kalėdų Sala',
+ 'CY' => 'Kipras',
+ 'CZ' => 'Čekija',
+ 'DE' => 'Vokietija',
+ 'DG' => 'Diego Garsija',
+ 'DJ' => 'Džibutis',
+ 'DK' => 'Danija',
+ 'DM' => 'Dominika',
+ 'DO' => 'Dominikos Respublika',
+ 'DZ' => 'Alžyras',
+ 'EA' => 'Seuta ir Melila',
+ 'EC' => 'Ekvadoras',
+ 'EE' => 'Estija',
+ 'EG' => 'Egiptas',
+ 'EH' => 'Vakarų Sachara',
+ 'ER' => 'Eritrėja',
+ 'ES' => 'Ispanija',
+ 'ET' => 'Etiopija',
+ 'EU' => 'Europos Sąjunga',
+ 'FI' => 'Suomija',
+ 'FJ' => 'Fidžis',
+ 'FK' => 'Folklando Salos',
+ 'FM' => 'Mikronezija',
+ 'FO' => 'Farerų Salos',
+ 'FR' => 'Prancūzija',
+ 'GA' => 'Gabonas',
+ 'GB' => 'Didžioji Britanija',
+ 'GD' => 'Grenada',
+ 'GE' => 'Gruzija',
+ 'GF' => 'Prancūzijos Gviana',
+ 'GG' => 'Gernsis',
+ 'GH' => 'Gana',
+ 'GI' => 'Gibraltaras',
+ 'GL' => 'Grenlandija',
+ 'GM' => 'Gambija',
+ 'GN' => 'Gvinėja',
+ 'GP' => 'Gvadelupa',
+ 'GQ' => 'Pusiaujo Gvinėja',
+ 'GR' => 'Graikija',
+ 'GS' => 'Pietų Džordžija ir Pietų Sandvičo salos',
+ 'GT' => 'Gvatemala',
+ 'GU' => 'Guamas',
+ 'GW' => 'Bisau Gvinėja',
+ 'GY' => 'Gajana',
+ 'HK' => 'Honkongas',
+ 'HM' => 'Herdo ir Makdonaldo Salos',
+ 'HN' => 'Hondūras',
+ 'HR' => 'Kroatija',
+ 'HT' => 'Haitis',
+ 'HU' => 'Vengrija',
+ 'IC' => 'Kanarų salos',
+ 'ID' => 'Indonezija',
+ 'IE' => 'Airija',
+ 'IL' => 'Izraelis',
+ 'IM' => 'Meno Sala',
+ 'IN' => 'Indija',
+ 'IO' => 'Indijos Vandenyno Britų Sritis',
+ 'IQ' => 'Irakas',
+ 'IR' => 'Iranas',
+ 'IS' => 'Islandija',
+ 'IT' => 'Italija',
+ 'JE' => 'Džersis',
+ 'JM' => 'Jamaika',
+ 'JO' => 'Jordanija',
+ 'JP' => 'Japonija',
+ 'KE' => 'Kenija',
+ 'KG' => 'Kirgizija',
+ 'KH' => 'Kambodža',
+ 'KI' => 'Kiribatis',
+ 'KM' => 'Komorai',
+ 'KN' => 'Sent Kitsas ir Nevis',
+ 'KP' => 'Šiaurės Korėja',
+ 'KR' => 'Pietų Korėja',
+ 'KW' => 'Kuveitas',
+ 'KY' => 'Kaimanų Salos',
+ 'KZ' => 'Kazachstanas',
+ 'LA' => 'Laosas',
+ 'LB' => 'Libanas',
+ 'LC' => 'Šventoji Liucija',
+ 'LI' => 'Lichtenšteinas',
+ 'LK' => 'Šri Lanka',
+ 'LR' => 'Liberija',
+ 'LS' => 'Lesotas',
+ 'LT' => 'Lietuva',
+ 'LU' => 'Liuksemburgas',
+ 'LV' => 'Latvija',
+ 'LY' => 'Libija',
+ 'MA' => 'Marokas',
+ 'MC' => 'Monakas',
+ 'MD' => 'Moldova',
+ 'ME' => 'Juodkalnija',
+ 'MF' => 'Sen Martenas',
+ 'MG' => 'Madagaskaras',
+ 'MH' => 'Maršalo Salos',
+ 'MK' => 'Makedonija',
+ 'ML' => 'Malis',
+ 'MM' => 'Mianmaras (Birma)',
+ 'MN' => 'Mongolija',
+ 'MO' => 'Makao',
+ 'MP' => 'Marianos Šiaurinės Salos',
+ 'MQ' => 'Martinika',
+ 'MR' => 'Mauritanija',
+ 'MS' => 'Montseratas',
+ 'MT' => 'Malta',
+ 'MU' => 'Mauricijus',
+ 'MV' => 'Maldyvai',
+ 'MW' => 'Malavis',
+ 'MX' => 'Meksika',
+ 'MY' => 'Malaizija',
+ 'MZ' => 'Mozambikas',
+ 'NA' => 'Namibija',
+ 'NC' => 'Naujoji Kaledonija',
+ 'NE' => 'Nigeris',
+ 'NF' => 'Norfolko sala',
+ 'NG' => 'Nigerija',
+ 'NI' => 'Nikaragva',
+ 'NL' => 'Nyderlandai',
+ 'NO' => 'Norvegija',
+ 'NP' => 'Nepalas',
+ 'NR' => 'Nauru',
+ 'NU' => 'Niujė',
+ 'NZ' => 'Naujoji Zelandija',
+ 'OM' => 'Omanas',
+ 'PA' => 'Panama',
+ 'PE' => 'Peru',
+ 'PF' => 'Prancūzų Polinezija',
+ 'PG' => 'Papua Naujoji Gvinėja',
+ 'PH' => 'Filipinai',
+ 'PK' => 'Pakistanas',
+ 'PL' => 'Lenkija',
+ 'PM' => 'Sen Pjeras ir Mikelonas',
+ 'PN' => 'Pitkernas',
+ 'PR' => 'Puerto Rikas',
+ 'PS' => 'Palestina',
+ 'PT' => 'Portugalija',
+ 'PW' => 'Palau',
+ 'PY' => 'Paragvajus',
+ 'QA' => 'Kataras',
+ 'QO' => 'Nuošali Okeanija',
+ 'RE' => 'Reunjonas',
+ 'RO' => 'Rumunija',
+ 'RS' => 'Serbija',
+ 'RU' => 'Rusija',
+ 'RW' => 'Ruanda',
+ 'SA' => 'Saudo Arabija',
+ 'SB' => 'Saliamono Salos',
+ 'SC' => 'Seišeliai',
+ 'SD' => 'Sudanas',
+ 'SE' => 'Švedija',
+ 'SG' => 'Singapūras',
+ 'SH' => 'Šv. Elenos Sala',
+ 'SI' => 'Slovėnija',
+ 'SJ' => 'Svalbardas ir Janas Majenas',
+ 'SK' => 'Slovakija',
+ 'SL' => 'Siera Leonė',
+ 'SM' => 'San Marinas',
+ 'SN' => 'Senegalas',
+ 'SO' => 'Somalis',
+ 'SR' => 'Surinamas',
+ 'SS' => 'Pietų Sudanas',
+ 'ST' => 'San Tomė ir Prinsipė',
+ 'SV' => 'Salvadoras',
+ 'SX' => 'Sint Martenas',
+ 'SY' => 'Sirija',
+ 'SZ' => 'Svazilandas',
+ 'TA' => 'Tristanas da Kunja',
+ 'TC' => 'Terkso ir Kaikoso Salos',
+ 'TD' => 'Čadas',
+ 'TF' => 'Prancūzijos Pietų sritys',
+ 'TG' => 'Togas',
+ 'TH' => 'Tailandas',
+ 'TJ' => 'Tadžikija',
+ 'TK' => 'Tokelau',
+ 'TL' => 'Rytų Timoras',
+ 'TM' => 'Turkmėnistanas',
+ 'TN' => 'Tunisas',
+ 'TO' => 'Tonga',
+ 'TR' => 'Turkija',
+ 'TT' => 'Trinidadas ir Tobagas',
+ 'TV' => 'Tuvalu',
+ 'TW' => 'Taivanas',
+ 'TZ' => 'Tanzanija',
+ 'UA' => 'Ukraina',
+ 'UG' => 'Uganda',
+ 'UM' => 'Jungtinių Valstijų Mažosios Tolimosios Salos',
+ 'US' => 'JAV',
+ 'UY' => 'Urugvajus',
+ 'UZ' => 'Uzbekistanas',
+ 'VA' => 'Vatikano Miesto Valstybė',
+ 'VC' => 'Šventasis Vincentas ir Grenadinai',
+ 'VE' => 'Venesuela',
+ 'VG' => 'Didžiosios Britanijos Mergelių Salos',
+ 'VI' => 'Jungtinių Valstijų Mergelių Salos',
+ 'VN' => 'Vietnamas',
+ 'VU' => 'Vanuatu',
+ 'WF' => 'Volisas ir Futuna',
+ 'WS' => 'Samoa',
+ 'XK' => 'Kosovas',
+ 'YE' => 'Jemenas',
+ 'YT' => 'Majotas',
+ 'ZA' => 'Pietų Afrika',
+ 'ZM' => 'Zambija',
+ 'ZW' => 'Zimbabvė',
+);
+
+$timeUnits = array(
+ 'day-few' => '{0} dienos',
+ 'day-future-few' => 'po {0} dienų',
+ 'day-future-many' => 'po {0} dienos',
+ 'day-future-one' => 'po {0} dienos',
+ 'day-future-other' => 'po {0} dienų',
+ 'day-many' => '{0} dienos',
+ 'day-narrow-future-few' => 'po {0} d.',
+ 'day-narrow-future-many' => 'po {0} d.',
+ 'day-narrow-future-one' => 'po {0} d.',
+ 'day-narrow-future-other' => 'po {0} d.',
+ 'day-narrow-past-few' => 'prieš {0} d.',
+ 'day-narrow-past-many' => 'prieš {0} d.',
+ 'day-narrow-past-one' => 'prieš {0} d.',
+ 'day-narrow-past-other' => 'prieš {0} d.',
+ 'day-one' => '{0} diena',
+ 'day-other' => '{0} dienų',
+ 'day-past-few' => 'prieš {0} dienas',
+ 'day-past-many' => 'prieš {0} dienos',
+ 'day-past-one' => 'prieš {0} dieną',
+ 'day-past-other' => 'prieš {0} dienų',
+ 'day-short-future-few' => 'po {0} d.',
+ 'day-short-future-many' => 'po {0} d.',
+ 'day-short-future-one' => 'po {0} d.',
+ 'day-short-future-other' => 'po {0} d.',
+ 'day-short-past-few' => 'prieš {0} d.',
+ 'day-short-past-many' => 'prieš {0} d.',
+ 'day-short-past-one' => 'prieš {0} d.',
+ 'day-short-past-other' => 'prieš {0} d.',
+ 'hour-few' => '{0} valandos',
+ 'hour-future-few' => 'po {0} valandų',
+ 'hour-future-many' => 'po {0} valandos',
+ 'hour-future-one' => 'po {0} valandos',
+ 'hour-future-other' => 'po {0} valandų',
+ 'hour-many' => '{0} valandos',
+ 'hour-narrow-future-few' => 'po {0} val.',
+ 'hour-narrow-future-many' => 'po {0} val.',
+ 'hour-narrow-future-one' => 'po {0} val.',
+ 'hour-narrow-future-other' => 'po {0} val.',
+ 'hour-narrow-past-few' => 'prieš {0} val.',
+ 'hour-narrow-past-many' => 'prieš {0} val.',
+ 'hour-narrow-past-one' => 'prieš {0} val.',
+ 'hour-narrow-past-other' => 'prieš {0} val.',
+ 'hour-one' => '{0} valanda',
+ 'hour-other' => '{0} valandų',
+ 'hour-past-few' => 'prieš {0} valandas',
+ 'hour-past-many' => 'prieš {0} valandos',
+ 'hour-past-one' => 'prieš {0} valandą',
+ 'hour-past-other' => 'prieš {0} valandų',
+ 'hour-short-future-few' => 'po {0} val.',
+ 'hour-short-future-many' => 'po {0} val.',
+ 'hour-short-future-one' => 'po {0} val.',
+ 'hour-short-future-other' => 'po {0} val.',
+ 'hour-short-past-few' => 'prieš {0} val.',
+ 'hour-short-past-many' => 'prieš {0} val.',
+ 'hour-short-past-one' => 'prieš {0} val.',
+ 'hour-short-past-other' => 'prieš {0} val.',
+ 'microsecond-few' => '{0} mikrosekundės',
+ 'microsecond-many' => '{0} mikrosekundės',
+ 'microsecond-one' => '{0} mikrosekundė',
+ 'microsecond-other' => '{0} mikrosekundžių',
+ 'millisecond-few' => '{0} milisekundės',
+ 'millisecond-many' => '{0} milisekundės',
+ 'millisecond-one' => '{0} milisekundė',
+ 'millisecond-other' => '{0} milisekundžių',
+ 'minute-few' => '{0} minutės',
+ 'minute-future-few' => 'po {0} minučių',
+ 'minute-future-many' => 'po {0} minutės',
+ 'minute-future-one' => 'po {0} minutės',
+ 'minute-future-other' => 'po {0} minučių',
+ 'minute-many' => '{0} minutės',
+ 'minute-narrow-future-few' => 'po {0} min.',
+ 'minute-narrow-future-many' => 'po {0} min.',
+ 'minute-narrow-future-one' => 'po {0} min.',
+ 'minute-narrow-future-other' => 'po {0} min.',
+ 'minute-narrow-past-few' => 'prieš {0} min.',
+ 'minute-narrow-past-many' => 'prieš {0} min.',
+ 'minute-narrow-past-one' => 'prieš {0} min.',
+ 'minute-narrow-past-other' => 'prieš {0} min.',
+ 'minute-one' => '{0} minutė',
+ 'minute-other' => '{0} minučių',
+ 'minute-past-few' => 'prieš {0} minutes',
+ 'minute-past-many' => 'prieš {0} minutės',
+ 'minute-past-one' => 'prieš {0} minutę',
+ 'minute-past-other' => 'prieš {0} minučių',
+ 'minute-short-future-few' => 'po {0} min.',
+ 'minute-short-future-many' => 'po {0} min.',
+ 'minute-short-future-one' => 'po {0} min.',
+ 'minute-short-future-other' => 'po {0} min.',
+ 'minute-short-past-few' => 'prieš {0} min.',
+ 'minute-short-past-many' => 'prieš {0} min.',
+ 'minute-short-past-one' => 'prieš {0} min.',
+ 'minute-short-past-other' => 'prieš {0} min.',
+ 'month-few' => '{0} mėnesiai',
+ 'month-future-few' => 'po {0} mėnesių',
+ 'month-future-many' => 'po {0} mėnesio',
+ 'month-future-one' => 'po {0} mėnesio',
+ 'month-future-other' => 'po {0} mėnesių',
+ 'month-many' => '{0} mėnesio',
+ 'month-narrow-future-few' => 'po {0} mėn.',
+ 'month-narrow-future-many' => 'po {0} mėn.',
+ 'month-narrow-future-one' => 'po {0} mėn.',
+ 'month-narrow-future-other' => 'po {0} mėn.',
+ 'month-narrow-past-few' => 'prieš {0} mėn.',
+ 'month-narrow-past-many' => 'prieš {0} mėn.',
+ 'month-narrow-past-one' => 'prieš {0} mėn.',
+ 'month-narrow-past-other' => 'prieš {0} mėn.',
+ 'month-one' => '{0} mėnuo',
+ 'month-other' => '{0} mėnesių',
+ 'month-past-few' => 'prieš {0} mėnesius',
+ 'month-past-many' => 'prieš {0} mėnesio',
+ 'month-past-one' => 'prieš {0} mėnesį',
+ 'month-past-other' => 'prieš {0} mėnesių',
+ 'month-short-future-few' => 'po {0} mėn.',
+ 'month-short-future-many' => 'po {0} mėn.',
+ 'month-short-future-one' => 'po {0} mėn.',
+ 'month-short-future-other' => 'po {0} mėn.',
+ 'month-short-past-few' => 'prieš {0} mėn.',
+ 'month-short-past-many' => 'prieš {0} mėn.',
+ 'month-short-past-one' => 'prieš {0} mėn.',
+ 'month-short-past-other' => 'prieš {0} mėn.',
+ 'nanosecond-few' => '{0} nanosekundės',
+ 'nanosecond-many' => '{0} nanosekundės',
+ 'nanosecond-one' => '{0} nanosekundė',
+ 'nanosecond-other' => '{0} nanosekundžių',
+ 'quarter-future-few' => 'po {0} ketvirčių',
+ 'quarter-future-many' => 'po {0} ketvirčio',
+ 'quarter-future-one' => 'po {0} ketvirčio',
+ 'quarter-future-other' => 'po {0} ketvirčių',
+ 'quarter-narrow-future-few' => 'po {0} ketv.',
+ 'quarter-narrow-future-many' => 'po {0} ketv.',
+ 'quarter-narrow-future-one' => 'po {0} ketv.',
+ 'quarter-narrow-future-other' => 'po {0} ketv.',
+ 'quarter-narrow-past-few' => 'prieš {0} ketv.',
+ 'quarter-narrow-past-many' => 'prieš {0} ketv.',
+ 'quarter-narrow-past-one' => 'prieš {0} ketv.',
+ 'quarter-narrow-past-other' => 'prieš {0} ketv.',
+ 'quarter-past-few' => 'prieš {0} ketvirčius',
+ 'quarter-past-many' => 'prieš {0} ketvirčio',
+ 'quarter-past-one' => 'prieš {0} ketvirtį',
+ 'quarter-past-other' => 'prieš {0} ketvirčių',
+ 'quarter-short-future-few' => 'po {0} ketv.',
+ 'quarter-short-future-many' => 'po {0} ketv.',
+ 'quarter-short-future-one' => 'po {0} ketv.',
+ 'quarter-short-future-other' => 'po {0} ketv.',
+ 'quarter-short-past-few' => 'prieš {0} ketv.',
+ 'quarter-short-past-many' => 'prieš {0} ketv.',
+ 'quarter-short-past-one' => 'prieš {0} ketv.',
+ 'quarter-short-past-other' => 'prieš {0} ketv.',
+ 'second-few' => '{0} sekundės',
+ 'second-future-few' => 'po {0} sekundžių',
+ 'second-future-many' => 'po {0} sekundės',
+ 'second-future-one' => 'po {0} sekundės',
+ 'second-future-other' => 'po {0} sekundžių',
+ 'second-many' => '{0} sekundės',
+ 'second-narrow-future-few' => 'po {0} s',
+ 'second-narrow-future-many' => 'po {0} s',
+ 'second-narrow-future-one' => 'po {0} s',
+ 'second-narrow-future-other' => 'po {0} s',
+ 'second-narrow-past-few' => 'prieš {0} s',
+ 'second-narrow-past-many' => 'prieš {0} s',
+ 'second-narrow-past-one' => 'prieš {0} s',
+ 'second-narrow-past-other' => 'prieš {0} s',
+ 'second-one' => '{0} sekundė',
+ 'second-other' => '{0} sekundžių',
+ 'second-past-few' => 'prieš {0} sekundes',
+ 'second-past-many' => 'prieš {0} sekundės',
+ 'second-past-one' => 'prieš {0} sekundę',
+ 'second-past-other' => 'prieš {0} sekundžių',
+ 'second-short-future-few' => 'po {0} sek.',
+ 'second-short-future-many' => 'po {0} sek.',
+ 'second-short-future-one' => 'po {0} sek.',
+ 'second-short-future-other' => 'po {0} sek.',
+ 'second-short-past-few' => 'prieš {0} sek.',
+ 'second-short-past-many' => 'prieš {0} sek.',
+ 'second-short-past-one' => 'prieš {0} sek.',
+ 'second-short-past-other' => 'prieš {0} sek.',
+ 'week-few' => '{0} savaitės',
+ 'week-future-few' => 'po {0} savaičių',
+ 'week-future-many' => 'po {0} savaitės',
+ 'week-future-one' => 'po {0} savaitės',
+ 'week-future-other' => 'po {0} savaičių',
+ 'week-many' => '{0} savaitės',
+ 'week-narrow-future-few' => 'po {0} sav.',
+ 'week-narrow-future-many' => 'po {0} sav.',
+ 'week-narrow-future-one' => 'po {0} sav.',
+ 'week-narrow-future-other' => 'po {0} sav.',
+ 'week-narrow-past-few' => 'prieš {0} sav.',
+ 'week-narrow-past-many' => 'prieš {0} sav.',
+ 'week-narrow-past-one' => 'prieš {0} sav.',
+ 'week-narrow-past-other' => 'prieš {0} sav.',
+ 'week-one' => '{0} savaitė',
+ 'week-other' => '{0} savaičių',
+ 'week-past-few' => 'prieš {0} savaites',
+ 'week-past-many' => 'prieš {0} savaitės',
+ 'week-past-one' => 'prieš {0} savaitę',
+ 'week-past-other' => 'prieš {0} savaičių',
+ 'week-short-future-few' => 'po {0} sav.',
+ 'week-short-future-many' => 'po {0} sav.',
+ 'week-short-future-one' => 'po {0} sav.',
+ 'week-short-future-other' => 'po {0} sav.',
+ 'week-short-past-few' => 'prieš {0} sav.',
+ 'week-short-past-many' => 'prieš {0} sav.',
+ 'week-short-past-one' => 'prieš {0} sav.',
+ 'week-short-past-other' => 'prieš {0} sav.',
+ 'year-few' => '{0} metai',
+ 'year-future-few' => 'po {0} metų',
+ 'year-future-many' => 'po {0} metų',
+ 'year-future-one' => 'po {0} metų',
+ 'year-future-other' => 'po {0} metų',
+ 'year-many' => '{0} metų',
+ 'year-narrow-future-few' => 'po {0} m.',
+ 'year-narrow-future-many' => 'po {0} m.',
+ 'year-narrow-future-one' => 'po {0} m.',
+ 'year-narrow-future-other' => 'po {0} m.',
+ 'year-narrow-past-few' => 'prieš {0} m.',
+ 'year-narrow-past-many' => 'prieš {0} m.',
+ 'year-narrow-past-one' => 'prieš {0} m.',
+ 'year-narrow-past-other' => 'prieš {0} m.',
+ 'year-one' => '{0} metai',
+ 'year-other' => '{0} metų',
+ 'year-past-few' => 'prieš {0} metus',
+ 'year-past-many' => 'prieš {0} metų',
+ 'year-past-one' => 'prieš {0} metus',
+ 'year-past-other' => 'prieš {0} metų',
+ 'year-short-future-few' => 'po {0} m.',
+ 'year-short-future-many' => 'po {0} m.',
+ 'year-short-future-one' => 'po {0} m.',
+ 'year-short-future-other' => 'po {0} m.',
+ 'year-short-past-few' => 'prieš {0} m.',
+ 'year-short-past-many' => 'prieš {0} m.',
+ 'year-short-past-one' => 'prieš {0} m.',
+ 'year-short-past-other' => 'prieš {0} metų',
+);
diff --git a/MLEB/cldr/CldrNames/CldrNamesLv.php b/MLEB/cldr/CldrNames/CldrNamesLv.php
new file mode 100644
index 00000000..b8a8c351
--- /dev/null
+++ b/MLEB/cldr/CldrNames/CldrNamesLv.php
@@ -0,0 +1,1324 @@
+<?php
+
+$languageNames = array(
+ 'aa' => 'afāru',
+ 'ab' => 'abhāzu',
+ 'ace' => 'ačinu',
+ 'ach' => 'ačolu',
+ 'ada' => 'adangmu',
+ 'ady' => 'adigu',
+ 'ae' => 'avesta',
+ 'af' => 'afrikandu',
+ 'afh' => 'afrihili',
+ 'agq' => 'aghemu',
+ 'ain' => 'ainu',
+ 'ak' => 'akanu',
+ 'akk' => 'akadiešu',
+ 'ale' => 'aleutu',
+ 'alt' => 'dienvidaltajiešu',
+ 'am' => 'amharu',
+ 'an' => 'aragoniešu',
+ 'ang' => 'senangļu',
+ 'anp' => 'angika',
+ 'ar' => 'arābu',
+ 'ar-001' => 'mūsdienu standarta arābu',
+ 'arc' => 'aramiešu',
+ 'arn' => 'araukāņu',
+ 'arp' => 'arapahu',
+ 'arw' => 'aravaku',
+ 'as' => 'asamiešu',
+ 'asa' => 'asu',
+ 'ast' => 'astūriešu',
+ 'av' => 'avāru',
+ 'awa' => 'avadhu',
+ 'ay' => 'aimaru',
+ 'az' => 'azerbaidžāņu',
+ 'ba' => 'baškīru',
+ 'bal' => 'beludžu',
+ 'ban' => 'baliešu',
+ 'bas' => 'basu',
+ 'bax' => 'bamumu',
+ 'bbj' => 'gomalu',
+ 'be' => 'baltkrievu',
+ 'bej' => 'bedžu',
+ 'bem' => 'bembu',
+ 'bez' => 'bena',
+ 'bfd' => 'bafutu',
+ 'bg' => 'bulgāru',
+ 'bho' => 'bhodžpūru',
+ 'bi' => 'bišlamā',
+ 'bik' => 'bikolu',
+ 'bin' => 'binu',
+ 'bkm' => 'komu',
+ 'bla' => 'siksiku',
+ 'bm' => 'bambaru',
+ 'bn' => 'bengāļu',
+ 'bo' => 'tibetiešu',
+ 'br' => 'bretoņu',
+ 'bra' => 'bradžiešu',
+ 'brx' => 'bodo',
+ 'bs' => 'bosniešu',
+ 'bss' => 'nkosi',
+ 'bua' => 'burjatu',
+ 'bug' => 'bugu',
+ 'bum' => 'bulu',
+ 'byn' => 'bilinu',
+ 'byv' => 'medumbu',
+ 'ca' => 'katalāņu',
+ 'cad' => 'kadu',
+ 'car' => 'karību',
+ 'cay' => 'kajuga',
+ 'cch' => 'atsamu',
+ 'ce' => 'čečenu',
+ 'ceb' => 'sebuāņu',
+ 'cgg' => 'kiga',
+ 'ch' => 'čamorru',
+ 'chb' => 'čibču',
+ 'chg' => 'džagatajs',
+ 'chk' => 'čūku',
+ 'chm' => 'mariešu',
+ 'chn' => 'činuku žargons',
+ 'cho' => 'čoktavu',
+ 'chp' => 'čipevaianu',
+ 'chr' => 'čiroku',
+ 'chy' => 'šejenu',
+ 'ckb' => 'kurdu (Sorani)',
+ 'co' => 'korsikāņu',
+ 'cop' => 'koptu',
+ 'cr' => 'krī',
+ 'crh' => 'Krimas tatāru',
+ 'cs' => 'čehu',
+ 'csb' => 'kašubu',
+ 'cu' => 'baznīcslāvu',
+ 'cv' => 'čuvašu',
+ 'cy' => 'velsiešu',
+ 'da' => 'dāņu',
+ 'dak' => 'dakotu',
+ 'dar' => 'dargu',
+ 'dav' => 'taitu',
+ 'de' => 'vācu',
+ 'de-at' => 'Austrijas vācu',
+ 'de-ch' => 'Šveices augšvācu',
+ 'del' => 'delavēru',
+ 'den' => 'sleivu',
+ 'dgr' => 'dogribu',
+ 'din' => 'dinku',
+ 'dje' => 'zarmu',
+ 'doi' => 'dogru',
+ 'dsb' => 'lejassorbu',
+ 'dua' => 'dualu',
+ 'dum' => 'vidusholandiešu',
+ 'dv' => 'maldīviešu',
+ 'dyo' => 'diola-fonjī',
+ 'dyu' => 'diūlu',
+ 'dz' => 'dzongke',
+ 'dzg' => 'dazu',
+ 'ebu' => 'kjembu',
+ 'ee' => 'evu',
+ 'efi' => 'efiku',
+ 'egy' => 'ēģiptiešu',
+ 'eka' => 'ekadžuku',
+ 'el' => 'grieķu',
+ 'elx' => 'elamiešu',
+ 'en' => 'angļu',
+ 'en-au' => 'Austrālijas angļu',
+ 'en-ca' => 'Kanādas angļu',
+ 'en-gb' => 'Lielbritānijas angļu',
+ 'en-us' => 'ASV angļu',
+ 'enm' => 'vidusangļu',
+ 'eo' => 'esperanto',
+ 'es' => 'spāņu',
+ 'es-419' => 'Latīņamerikas spāņu',
+ 'es-es' => 'Eiropas spāņu',
+ 'es-mx' => 'Meksikas spāņu',
+ 'et' => 'igauņu',
+ 'eu' => 'basku',
+ 'ewo' => 'evondu',
+ 'fa' => 'persiešu',
+ 'fan' => 'fangu',
+ 'fat' => 'fantu',
+ 'ff' => 'fulu',
+ 'fi' => 'somu',
+ 'fil' => 'filipīniešu',
+ 'fj' => 'fidžiešu',
+ 'fo' => 'fēru',
+ 'fon' => 'fonu',
+ 'fr' => 'franču',
+ 'fr-ca' => 'Kanādas franču',
+ 'fr-ch' => 'Šveices franču',
+ 'frm' => 'vidusfranču',
+ 'fro' => 'senfranču',
+ 'frr' => 'ziemeļfrīzu',
+ 'frs' => 'austrumfrīzu',
+ 'fur' => 'friūlu',
+ 'fy' => 'rietumfrīzu',
+ 'ga' => 'īru',
+ 'gaa' => 'ga',
+ 'gag' => 'gagauzu',
+ 'gay' => 'gajo',
+ 'gba' => 'gbaju',
+ 'gd' => 'gēlu',
+ 'gez' => 'gēzu',
+ 'gil' => 'kiribatiešu',
+ 'gl' => 'galisiešu',
+ 'gmh' => 'vidusaugšvācu',
+ 'gn' => 'gvaranu',
+ 'goh' => 'senaugšvācu',
+ 'gon' => 'gondu valodas',
+ 'gor' => 'gorontalu',
+ 'got' => 'gotu',
+ 'grb' => 'grebo',
+ 'grc' => 'sengrieķu',
+ 'gsw' => 'Šveices vācu',
+ 'gu' => 'gudžaratu',
+ 'guz' => 'gusii',
+ 'gv' => 'meniešu',
+ 'gwi' => 'kučinu',
+ 'ha' => 'hausu',
+ 'hai' => 'haidu',
+ 'haw' => 'havajiešu',
+ 'he' => 'ivrits',
+ 'hi' => 'hindi',
+ 'hil' => 'hiligainonu',
+ 'hit' => 'hetu',
+ 'hmn' => 'hmongu',
+ 'ho' => 'hirimotu',
+ 'hr' => 'horvātu',
+ 'hsb' => 'augšsorbu',
+ 'ht' => 'haitiešu',
+ 'hu' => 'ungāru',
+ 'hup' => 'hupu',
+ 'hy' => 'armēņu',
+ 'hz' => 'hereru',
+ 'ia' => 'interlingva',
+ 'iba' => 'ibanu',
+ 'ibb' => 'ibibio',
+ 'id' => 'indonēziešu',
+ 'ie' => 'interlingve',
+ 'ig' => 'igbo',
+ 'ii' => 'Sičuaņas ji',
+ 'ik' => 'inupiaku',
+ 'ilo' => 'iloku',
+ 'inh' => 'ingušu',
+ 'io' => 'ido',
+ 'is' => 'īslandiešu',
+ 'it' => 'itāļu',
+ 'iu' => 'inuītu',
+ 'ja' => 'japāņu',
+ 'jbo' => 'ložbans',
+ 'jgo' => 'jgo',
+ 'jmc' => 'mačamu',
+ 'jpr' => 'jūdpersiešu',
+ 'jrb' => 'jūdarābu',
+ 'jv' => 'javiešu',
+ 'ka' => 'gruzīnu',
+ 'kaa' => 'karakalpaku',
+ 'kab' => 'kabilu',
+ 'kac' => 'kačinu',
+ 'kaj' => 'kadži',
+ 'kam' => 'kambu',
+ 'kaw' => 'kāvi',
+ 'kbd' => 'kabardiešu',
+ 'kbl' => 'kaņembu',
+ 'kcg' => 'katabu',
+ 'kde' => 'makonde',
+ 'kea' => 'kaboverdiešu',
+ 'kfo' => 'koru',
+ 'kg' => 'kongu',
+ 'kha' => 'khasu',
+ 'kho' => 'hotaniešu',
+ 'khq' => 'koiračiinī',
+ 'ki' => 'kikuju',
+ 'kj' => 'kvaņamu',
+ 'kk' => 'kazahu',
+ 'kkj' => 'kako',
+ 'kl' => 'grenlandiešu',
+ 'kln' => 'kalendžīnu',
+ 'km' => 'khmeru',
+ 'kmb' => 'kimbundu',
+ 'kn' => 'kannadu',
+ 'ko' => 'korejiešu',
+ 'koi' => 'komiešu-permiešu',
+ 'kok' => 'konkanu',
+ 'kos' => 'kosrājiešu',
+ 'kpe' => 'kpellu',
+ 'kr' => 'kanuru',
+ 'krc' => 'karačaju un balkāru',
+ 'krl' => 'karēļu',
+ 'kru' => 'kuruhu',
+ 'ks' => 'kašmiriešu',
+ 'ksb' => 'šambalu',
+ 'ksf' => 'bafiju',
+ 'ksh' => 'Ķelnes vācu',
+ 'ku' => 'kurdu',
+ 'kum' => 'kumiku',
+ 'kut' => 'kutenaju',
+ 'kv' => 'komiešu',
+ 'kw' => 'korniešu',
+ 'ky' => 'kirgīzu',
+ 'la' => 'latīņu',
+ 'lad' => 'ladino',
+ 'lag' => 'langi',
+ 'lah' => 'landu',
+ 'lam' => 'lambu',
+ 'lb' => 'luksemburgiešu',
+ 'lez' => 'lezgīnu',
+ 'lg' => 'gandu',
+ 'li' => 'limburgiešu',
+ 'lkt' => 'lakotu',
+ 'ln' => 'lingala',
+ 'lo' => 'laosiešu',
+ 'lol' => 'mongu',
+ 'loz' => 'lozu',
+ 'lt' => 'lietuviešu',
+ 'lu' => 'lubakatanga',
+ 'lua' => 'lubalulva',
+ 'lui' => 'luisenu',
+ 'lun' => 'lundu',
+ 'luo' => 'luo',
+ 'lus' => 'lušeju',
+ 'luy' => 'luhju',
+ 'lv' => 'latviešu',
+ 'mad' => 'maduriešu',
+ 'maf' => 'mafu',
+ 'mag' => 'magahiešu',
+ 'mai' => 'maithili',
+ 'mak' => 'makasaru',
+ 'man' => 'mandingu',
+ 'mas' => 'masaju',
+ 'mde' => 'mabu',
+ 'mdf' => 'mokšu',
+ 'mdr' => 'mandaru',
+ 'men' => 'mendu',
+ 'mer' => 'meru',
+ 'mfe' => 'Maurīcijas kreolu',
+ 'mg' => 'malagasu',
+ 'mga' => 'vidusīru',
+ 'mgh' => 'makua-meetto',
+ 'mgo' => 'mgo',
+ 'mh' => 'māršaliešu',
+ 'mi' => 'maoru',
+ 'mic' => 'mikmaku',
+ 'min' => 'minangkabavu',
+ 'mk' => 'maķedoniešu',
+ 'ml' => 'malajalu',
+ 'mn' => 'mongoļu',
+ 'mnc' => 'mandžūru',
+ 'mni' => 'manipūru',
+ 'moh' => 'mohauku',
+ 'mos' => 'mosu',
+ 'mr' => 'maratu',
+ 'ms' => 'malajiešu',
+ 'mt' => 'maltiešu',
+ 'mua' => 'mundangu',
+ 'mul' => 'vairākas valodas',
+ 'mus' => 'krīku',
+ 'mwl' => 'mirandiešu',
+ 'mwr' => 'marvaru',
+ 'my' => 'birmiešu',
+ 'mye' => 'mjenu',
+ 'myv' => 'erzju',
+ 'na' => 'nauruiešu',
+ 'nap' => 'neapoliešu',
+ 'naq' => 'nama',
+ 'nb' => 'norvēģu bukmols',
+ 'nd' => 'ziemeļndebelu',
+ 'nds' => 'lejasvācu',
+ 'ne' => 'nepāliešu',
+ 'new' => 'nevaru',
+ 'ng' => 'ndongu',
+ 'nia' => 'njasu',
+ 'niu' => 'niuāņu',
+ 'nl' => 'holandiešu',
+ 'nl-be' => 'flāmu',
+ 'nmg' => 'kvasio',
+ 'nn' => 'jaunnorvēģu',
+ 'nnh' => 'ngjembūnu',
+ 'no' => 'norvēģu',
+ 'nog' => 'nogaju',
+ 'non' => 'sennorvēģu',
+ 'nqo' => 'nko',
+ 'nr' => 'dienvidndebelu',
+ 'nso' => 'ziemeļsotu',
+ 'nus' => 'nueru',
+ 'nv' => 'navahu',
+ 'nwc' => 'klasiskā nevaru',
+ 'ny' => 'čičeva',
+ 'nym' => 'ņamvezu',
+ 'nyn' => 'ņankolu',
+ 'nyo' => 'ņoru',
+ 'nzi' => 'nzemu',
+ 'oc' => 'oksitāņu',
+ 'oj' => 'odžibvu',
+ 'om' => 'oromu',
+ 'or' => 'oriju',
+ 'os' => 'osetīnu',
+ 'osa' => 'važāžu',
+ 'ota' => 'turku osmaņu',
+ 'pa' => 'pandžabu',
+ 'pag' => 'pangasinanu',
+ 'pal' => 'pehlevi',
+ 'pam' => 'pampanganu',
+ 'pap' => 'papjamento',
+ 'pau' => 'palaviešu',
+ 'peo' => 'senpersu',
+ 'phn' => 'feniķiešu',
+ 'pi' => 'pāli',
+ 'pl' => 'poļu',
+ 'pon' => 'ponapiešu',
+ 'pro' => 'senprovansiešu',
+ 'ps' => 'puštu',
+ 'pt' => 'portugāļu',
+ 'pt-br' => 'Brazīlijas portugāļu',
+ 'pt-pt' => 'Eiropas portugāļu',
+ 'qu' => 'kečvu',
+ 'quc' => 'kiče',
+ 'raj' => 'radžastāņu',
+ 'rap' => 'rapanuju',
+ 'rar' => 'rarotongiešu',
+ 'rm' => 'retoromāņu',
+ 'rn' => 'rundu',
+ 'ro' => 'rumāņu',
+ 'ro-md' => 'moldāvu',
+ 'rof' => 'rombo',
+ 'rom' => 'čigānu',
+ 'ru' => 'krievu',
+ 'rup' => 'aromūnu',
+ 'rw' => 'kiņaruanda',
+ 'rwk' => 'ruanda',
+ 'sa' => 'sanskrits',
+ 'sad' => 'sandavu',
+ 'sah' => 'jakutu',
+ 'sam' => 'samārijas aramiešu',
+ 'saq' => 'samburu',
+ 'sas' => 'sasaku',
+ 'sat' => 'santalu',
+ 'sba' => 'ngambeju',
+ 'sbp' => 'sangu',
+ 'sc' => 'sardīniešu',
+ 'scn' => 'sicīliešu',
+ 'sco' => 'skotu',
+ 'sd' => 'sindhu',
+ 'se' => 'ziemeļsāmu',
+ 'see' => 'seneku',
+ 'seh' => 'senu',
+ 'sel' => 'selkupu',
+ 'ses' => 'koiraboro senni',
+ 'sg' => 'sango',
+ 'sga' => 'senīru',
+ 'sh' => 'serbu-horvātu',
+ 'shi' => 'šilhu',
+ 'shn' => 'šanu',
+ 'shu' => 'Čadas arābu',
+ 'si' => 'singāļu',
+ 'sid' => 'sidamu',
+ 'sk' => 'slovāku',
+ 'sl' => 'slovēņu',
+ 'sm' => 'samoāņu',
+ 'sma' => 'dienvidsāmu',
+ 'smj' => 'Luleo sāmu',
+ 'smn' => 'Inari sāmu',
+ 'sms' => 'skoltsāmu',
+ 'sn' => 'šonu',
+ 'snk' => 'soninku',
+ 'so' => 'somāļu',
+ 'sog' => 'sogdiešu',
+ 'sq' => 'albāņu',
+ 'sr' => 'serbu',
+ 'srn' => 'sranantogo',
+ 'srr' => 'serēru',
+ 'ss' => 'svatu',
+ 'ssy' => 'saho',
+ 'st' => 'dienvidsotu',
+ 'su' => 'sundaniešu',
+ 'suk' => 'sukumu',
+ 'sus' => 'susu',
+ 'sux' => 'šumeru',
+ 'sv' => 'zviedru',
+ 'sw' => 'svahili',
+ 'swb' => 'komoru',
+ 'swc' => 'Kongo svahili',
+ 'syc' => 'klasiskā sīriešu',
+ 'syr' => 'sīriešu',
+ 'ta' => 'tamilu',
+ 'te' => 'telugu',
+ 'tem' => 'temnu',
+ 'teo' => 'teso',
+ 'ter' => 'tereno',
+ 'tet' => 'tetumu',
+ 'tg' => 'tadžiku',
+ 'th' => 'taju',
+ 'ti' => 'tigrinja',
+ 'tig' => 'tigru',
+ 'tiv' => 'tivu',
+ 'tk' => 'turkmēņu',
+ 'tkl' => 'tokelaviešu',
+ 'tl' => 'tagalu',
+ 'tlh' => 'klingoņu',
+ 'tli' => 'tlinkitu',
+ 'tmh' => 'tuaregu',
+ 'tn' => 'cvanu',
+ 'to' => 'tongiešu',
+ 'tog' => 'njasas tongu',
+ 'tpi' => 'tokpisins',
+ 'tr' => 'turku',
+ 'trv' => 'taroko',
+ 'ts' => 'congu',
+ 'tsi' => 'cimšiāņu',
+ 'tt' => 'tatāru',
+ 'tum' => 'tumbuku',
+ 'tvl' => 'tuvaliešu',
+ 'tw' => 'tvī',
+ 'twq' => 'tasavaku',
+ 'ty' => 'taitiešu',
+ 'tyv' => 'tuviešu',
+ 'tzm' => 'Centrālmarokas tamazīts',
+ 'udm' => 'udmurtu',
+ 'ug' => 'uiguru',
+ 'uga' => 'ugaritiešu',
+ 'uk' => 'ukraiņu',
+ 'umb' => 'umbundu',
+ 'und' => 'nezināma valoda',
+ 'ur' => 'urdu',
+ 'uz' => 'uzbeku',
+ 'vai' => 'vaju',
+ 've' => 'vendu',
+ 'vi' => 'vjetnamiešu',
+ 'vo' => 'volapiks',
+ 'vot' => 'votu',
+ 'vun' => 'vundžo',
+ 'wa' => 'valoņu',
+ 'wae' => 'Vallisas vācu',
+ 'wal' => 'valamu',
+ 'war' => 'varaju',
+ 'was' => 'vašo',
+ 'wo' => 'volofu',
+ 'xal' => 'kalmiku',
+ 'xh' => 'khosu',
+ 'xog' => 'sogu',
+ 'yao' => 'jao',
+ 'yap' => 'japiešu',
+ 'yav' => 'janbaņu',
+ 'ybb' => 'jembu',
+ 'yi' => 'jidišs',
+ 'yo' => 'jorubu',
+ 'yue' => 'kantoniešu',
+ 'za' => 'džuanu',
+ 'zap' => 'sapoteku',
+ 'zbl' => 'blissimbolika',
+ 'zen' => 'zenagu',
+ 'zgh' => 'standarta marokāņu berberu',
+ 'zh' => 'ķīniešu',
+ 'zh-hans' => 'ķīniešu vienkāršotā',
+ 'zh-hant' => 'ķīniešu tradicionālā',
+ 'zu' => 'zulu',
+ 'zun' => 'zunju',
+ 'zxx' => 'bez lingvistiska satura',
+ 'zza' => 'zazaki',
+);
+
+$currencyNames = array(
+ 'AED' => 'Apvienoto Arābu Emirātu dirhēms',
+ 'AFN' => 'Afganistānas afgāns',
+ 'ALL' => 'Albānijas leks',
+ 'AMD' => 'Armēnijas drams',
+ 'ANG' => 'Nīderlandes Antiļu guldenis',
+ 'AOA' => 'Angolas kvanza',
+ 'ARS' => 'Argentīnas peso',
+ 'ATS' => 'Austrijas šiliņš',
+ 'AUD' => 'Austrālijas dolārs',
+ 'AWG' => 'Arubas guldenis',
+ 'AZM' => 'Azerbaidžānas manats (1993–2006)',
+ 'AZN' => 'Azerbaidžānas manats',
+ 'BAM' => 'Bosnijas un Hercogovinas marka',
+ 'BBD' => 'Barbadosas dolārs',
+ 'BDT' => 'Bangladešas taka',
+ 'BEF' => 'Beļģijas franks',
+ 'BGN' => 'Bulgārijas leva',
+ 'BHD' => 'Bahreinas dinārs',
+ 'BIF' => 'Burundi franks',
+ 'BMD' => 'Bermudu dolārs',
+ 'BND' => 'Brunejas dolārs',
+ 'BOB' => 'Bolīvijas boliviano',
+ 'BRL' => 'Brazīlijas reāls',
+ 'BSD' => 'Bahamu dolārs',
+ 'BTN' => 'Butānas ngultrums',
+ 'BWP' => 'Botsvanas pula',
+ 'BYR' => 'Baltkrievijas rubelis',
+ 'BZD' => 'Belizas dolārs',
+ 'CAD' => 'Kanādas dolārs',
+ 'CDF' => 'KDR franks',
+ 'CHF' => 'Šveices franks',
+ 'CLP' => 'Čīles peso',
+ 'CNY' => 'Ķīnas juaņs',
+ 'COP' => 'Kolumbijas peso',
+ 'COU' => 'Kolumbijas reāls',
+ 'CRC' => 'Kostarikas kolons',
+ 'CUC' => 'Kubas konvertējamais peso',
+ 'CUP' => 'Kubas peso',
+ 'CVE' => 'Kaboverdes eskudo',
+ 'CYP' => 'Kipras mārciņa',
+ 'CZK' => 'Čehijas krona',
+ 'DEM' => 'Vācijas marka',
+ 'DJF' => 'Džibutijas franks',
+ 'DKK' => 'Dānijas krona',
+ 'DOP' => 'Dominikānas peso',
+ 'DZD' => 'Alžīrijas dinārs',
+ 'EEK' => 'Igaunijas krona',
+ 'EGP' => 'Ēģiptes mārciņa',
+ 'ERN' => 'Eritrejas nakfa',
+ 'ESP' => 'Spānijas peseta',
+ 'ETB' => 'Etiopijas birs',
+ 'EUR' => 'eiro',
+ 'FIM' => 'Somijas marka',
+ 'FJD' => 'Fidži dolārs',
+ 'FKP' => 'Folklenda Salu mārciņa',
+ 'FRF' => 'Francijas franks',
+ 'GBP' => 'Lielbritānijas sterliņu mārciņa',
+ 'GEL' => 'Gruzijas lari',
+ 'GHS' => 'Ganas sedi',
+ 'GIP' => 'Gibraltāra mārciņa',
+ 'GMD' => 'Gambijas dalasi',
+ 'GNF' => 'Gvinejas franks',
+ 'GRD' => 'Grieķijas drahma',
+ 'GTQ' => 'Gvatemalas ketsals',
+ 'GYD' => 'Gajānas dolārs',
+ 'HKD' => 'Honkongas dolārs',
+ 'HNL' => 'Hondurasas lempīra',
+ 'HRK' => 'Horvātijas kuna',
+ 'HTG' => 'Haiti gurds',
+ 'HUF' => 'Ungārijas forints',
+ 'IDR' => 'Indonēzijas rūpija',
+ 'IEP' => 'Īrijas mārciņa',
+ 'ILS' => 'Izraēlas šekelis',
+ 'INR' => 'Indijas rūpija',
+ 'IQD' => 'Irākas dinārs',
+ 'IRR' => 'Irānas riāls',
+ 'ISK' => 'Īslandes krona',
+ 'ITL' => 'Itālijas lira',
+ 'JMD' => 'Jamaikas dolārs',
+ 'JOD' => 'Jordānas dinārs',
+ 'JPY' => 'Japānas jena',
+ 'KES' => 'Kenijas šiliņš',
+ 'KGS' => 'Kirgizstānas soms',
+ 'KHR' => 'Kambodžas riels',
+ 'KMF' => 'Komoru franks',
+ 'KPW' => 'Ziemeļkorejas vona',
+ 'KRW' => 'Dienvidkorejas vona',
+ 'KWD' => 'Kuveitas dinārs',
+ 'KYD' => 'Kaimanu salu dolārs',
+ 'KZT' => 'Kazahstānas tenge',
+ 'LAK' => 'Laosas kips',
+ 'LBP' => 'Libānas mārciņa',
+ 'LKR' => 'Šrilankas rūpija',
+ 'LRD' => 'Libērijas dolārs',
+ 'LSL' => 'Lesoto loti',
+ 'LTL' => 'Lietuvas lits',
+ 'LUF' => 'Luksemburgas franks',
+ 'LVL' => 'Latvijas lats',
+ 'LVR' => 'Latvijas rublis',
+ 'LYD' => 'Lībijas dinārs',
+ 'MAD' => 'Marokas dirhēms',
+ 'MDL' => 'Moldovas leja',
+ 'MGA' => 'Madagaskaras ariari',
+ 'MKD' => 'Maķedonijas denārs',
+ 'MLF' => 'CFA (Āfrikas) franks',
+ 'MMK' => 'Mjanmas kjats',
+ 'MNT' => 'Mongolijas tugriks',
+ 'MOP' => 'Makao pataka',
+ 'MRO' => 'Mauritānijas ugija',
+ 'MTL' => 'Maltas lira',
+ 'MTP' => 'Maltas mārciņa',
+ 'MUR' => 'Maurīcijas rūpija',
+ 'MVR' => 'Maldīvijas rūfija',
+ 'MWK' => 'Malāvijas kvača',
+ 'MXN' => 'Meksikas peso',
+ 'MYR' => 'Malaizijas ringits',
+ 'MZE' => 'Mozambikas eskudo',
+ 'MZM' => 'Mozambikas vecais metikals',
+ 'MZN' => 'Mozambikas metikals',
+ 'NAD' => 'Namībijas dolārs',
+ 'NGN' => 'Nigērijas naira',
+ 'NIO' => 'Nikaragvas kordoba',
+ 'NLG' => 'Nīderlandes guldenis',
+ 'NOK' => 'Norvēģijas krona',
+ 'NPR' => 'Nepālas rūpija',
+ 'NZD' => 'Jaunzēlandes dolārs',
+ 'OMR' => 'Omānas riāls',
+ 'PAB' => 'Panamas balboa',
+ 'PEN' => 'Peru jaunais sols',
+ 'PGK' => 'Papua-Jaungvinejas kina',
+ 'PHP' => 'Filipīnu peso',
+ 'PKR' => 'Pakistānas rūpija',
+ 'PLN' => 'Polijas zlots',
+ 'PTE' => 'Portugāles eskudo',
+ 'PYG' => 'Paragvajas guarani',
+ 'QAR' => 'Kataras riāls',
+ 'ROL' => 'Rumānijas vecā leja',
+ 'RON' => 'Rumānijas leja',
+ 'RSD' => 'Serbijas dinārs',
+ 'RUB' => 'Krievijas rublis',
+ 'RWF' => 'Ruandas franks',
+ 'SAR' => 'Saūda riāls',
+ 'SBD' => 'Zālamana Salu dolārs',
+ 'SCR' => 'Seišelu salu rūpija',
+ 'SDG' => 'Sudānas mārciņa',
+ 'SEK' => 'Zviedrijas krona',
+ 'SGD' => 'Singapūras dolārs',
+ 'SHP' => 'Sv.Helēnas salas mārciņa',
+ 'SIT' => 'Slovēnijas tolars',
+ 'SKK' => 'Slovakijas krona',
+ 'SLL' => 'Sjerraleones leone',
+ 'SOS' => 'Somālijas šiliņš',
+ 'SRD' => 'Surinamas dolārs',
+ 'SRG' => 'Surinamas guldenis',
+ 'SSP' => 'Dienvidsudānas mārciņa',
+ 'STD' => 'Santome un Prinsipi dobra',
+ 'SVC' => 'Salvadoras kolons',
+ 'SYP' => 'Sīrijas mārciņa',
+ 'SZL' => 'Svazilendas lilangeni',
+ 'THB' => 'Taizemes bāts',
+ 'TJS' => 'Tadžikistānas somons',
+ 'TMM' => 'Turkmenistānas manats (1993–2009)',
+ 'TMT' => 'Turkmenistānas manats',
+ 'TND' => 'Tunisijas dinārs',
+ 'TOP' => 'Tongas paanga',
+ 'TRL' => 'Turcijas lira (1922–2005)',
+ 'TRY' => 'Turcijas lira',
+ 'TTD' => 'Trinidādas un Tobāgo dolārs',
+ 'TWD' => 'Taivānas jaunais dolārs',
+ 'TZS' => 'Tanzānijas šiliņš',
+ 'UAH' => 'Ukrainas grivna',
+ 'UGX' => 'Ugandas šiliņš',
+ 'USD' => 'ASV dolārs',
+ 'UYU' => 'Urugvajas peso',
+ 'UZS' => 'Uzbekistānas sums',
+ 'VEB' => 'Venecuēlas bolivārs (1871–2008)',
+ 'VEF' => 'Venecuēlas bolivārs',
+ 'VND' => 'Vjetnamas dongi',
+ 'VUV' => 'Vanuatu vatu',
+ 'WST' => 'Samoa tala',
+ 'XAF' => 'Centrālāfrikas CFA franks',
+ 'XAG' => 'sudrabs',
+ 'XAU' => 'zelts',
+ 'XBA' => 'Eiropas norēķinu vienība EURCO',
+ 'XBB' => 'Eiropas naudas vienība',
+ 'XBC' => 'Eiropas norēķinu vienība (XBC)',
+ 'XBD' => 'Eiropas norēķinu vienība (XBD)',
+ 'XCD' => 'Austrumkarību dolārs',
+ 'XDR' => 'Speciālās aizņēmuma tiesības',
+ 'XEU' => 'Eiropas norēķinu vienība',
+ 'XFO' => 'Francijas zelta franks',
+ 'XFU' => 'Francijas UIC franks',
+ 'XOF' => 'Rietumāfrikas CFA franks',
+ 'XPD' => 'pallādijs',
+ 'XPF' => 'CFP franks',
+ 'XPT' => 'platīns',
+ 'XTS' => 'Testa valūtas kods',
+ 'XXX' => 'Nezināma valūta',
+ 'YER' => 'Jemenas riāls',
+ 'ZAR' => 'Dienvidāfrikas rends',
+ 'ZMK' => 'Zambijas kvača (1968–2012)',
+ 'ZMW' => 'Zambijas kvača',
+ 'ZWD' => 'Zimbabves dolārs',
+ 'ZWL' => 'Zimbabves dolārs (2009)',
+);
+
+$currencySymbols = array(
+ 'AED' => 'AED',
+ 'AFN' => 'AFN',
+ 'ALL' => 'ALL',
+ 'AMD' => 'AMD',
+ 'ANG' => 'ANG',
+ 'AOA' => 'AOA',
+ 'ARS' => 'ARS',
+ 'AUD' => 'AU$',
+ 'AWG' => 'AWG',
+ 'AZN' => 'AZN',
+ 'BAM' => 'BAM',
+ 'BBD' => 'BBD',
+ 'BDT' => 'BDT',
+ 'BGN' => 'BGN',
+ 'BHD' => 'BHD',
+ 'BIF' => 'BIF',
+ 'BMD' => 'BMD',
+ 'BND' => 'BND',
+ 'BOB' => 'BOB',
+ 'BRL' => 'R$',
+ 'BSD' => 'BSD',
+ 'BTN' => 'BTN',
+ 'BWP' => 'BWP',
+ 'BYR' => 'BYR',
+ 'BZD' => 'BZD',
+ 'CAD' => 'CA$',
+ 'CDF' => 'CDF',
+ 'CHF' => 'CHF',
+ 'CLP' => 'CLP',
+ 'CNY' => 'CN¥',
+ 'COP' => 'COP',
+ 'CRC' => 'CRC',
+ 'CUC' => 'CUC',
+ 'CUP' => 'CUP',
+ 'CVE' => 'CVE',
+ 'CZK' => 'CZK',
+ 'DJF' => 'DJF',
+ 'DKK' => 'DKK',
+ 'DOP' => 'DOP',
+ 'DZD' => 'DZD',
+ 'EGP' => 'EGP',
+ 'ERN' => 'ERN',
+ 'ETB' => 'ETB',
+ 'EUR' => '€',
+ 'FJD' => 'FJD',
+ 'FKP' => 'FKP',
+ 'GBP' => '£',
+ 'GEL' => 'GEL',
+ 'GHS' => 'GHS',
+ 'GIP' => 'GIP',
+ 'GMD' => 'GMD',
+ 'GNF' => 'GNF',
+ 'GTQ' => 'GTQ',
+ 'GYD' => 'GYD',
+ 'HKD' => 'HK$',
+ 'HNL' => 'HNL',
+ 'HRK' => 'HRK',
+ 'HTG' => 'HTG',
+ 'HUF' => 'HUF',
+ 'IDR' => 'IDR',
+ 'ILS' => '₪',
+ 'INR' => '₹',
+ 'IQD' => 'IQD',
+ 'IRR' => 'IRR',
+ 'ISK' => 'ISK',
+ 'JMD' => 'JMD',
+ 'JOD' => 'JOD',
+ 'JPY' => '¥',
+ 'KES' => 'KES',
+ 'KGS' => 'KGS',
+ 'KHR' => 'KHR',
+ 'KMF' => 'KMF',
+ 'KPW' => 'KPW',
+ 'KRW' => '₩',
+ 'KWD' => 'KWD',
+ 'KYD' => 'KYD',
+ 'KZT' => 'KZT',
+ 'LAK' => 'LAK',
+ 'LBP' => 'LBP',
+ 'LKR' => 'LKR',
+ 'LRD' => 'LRD',
+ 'LTL' => 'LTL',
+ 'LVL' => 'Ls',
+ 'LYD' => 'LYD',
+ 'MAD' => 'MAD',
+ 'MDL' => 'MDL',
+ 'MGA' => 'MGA',
+ 'MKD' => 'MKD',
+ 'MMK' => 'MMK',
+ 'MNT' => 'MNT',
+ 'MOP' => 'MOP',
+ 'MRO' => 'MRO',
+ 'MUR' => 'MUR',
+ 'MVR' => 'MVR',
+ 'MWK' => 'MWK',
+ 'MXN' => 'MX$',
+ 'MYR' => 'MYR',
+ 'MZN' => 'MZN',
+ 'NAD' => 'NAD',
+ 'NGN' => 'NGN',
+ 'NIO' => 'NIO',
+ 'NOK' => 'NOK',
+ 'NPR' => 'NPR',
+ 'NZD' => 'NZ$',
+ 'OMR' => 'OMR',
+ 'PAB' => 'PAB',
+ 'PEN' => 'PEN',
+ 'PGK' => 'PGK',
+ 'PHP' => 'PHP',
+ 'PKR' => 'PKR',
+ 'PLN' => 'PLN',
+ 'PYG' => 'PYG',
+ 'QAR' => 'QAR',
+ 'RON' => 'RON',
+ 'RSD' => 'RSD',
+ 'RUB' => 'RUB',
+ 'RWF' => 'RWF',
+ 'SAR' => 'SAR',
+ 'SBD' => 'SBD',
+ 'SCR' => 'SCR',
+ 'SDG' => 'SDG',
+ 'SEK' => 'SEK',
+ 'SGD' => 'SGD',
+ 'SHP' => 'SHP',
+ 'SLL' => 'SLL',
+ 'SOS' => 'SOS',
+ 'SRD' => 'SRD',
+ 'SSP' => 'SSP',
+ 'STD' => 'STD',
+ 'SYP' => 'SYP',
+ 'SZL' => 'SZL',
+ 'THB' => '฿',
+ 'TJS' => 'TJS',
+ 'TMT' => 'TMT',
+ 'TND' => 'TND',
+ 'TOP' => 'TOP',
+ 'TRY' => 'TRY',
+ 'TTD' => 'TTD',
+ 'TWD' => 'NT$',
+ 'TZS' => 'TZS',
+ 'UAH' => 'UAH',
+ 'UGX' => 'UGX',
+ 'USD' => '$',
+ 'UYU' => 'UYU',
+ 'UZS' => 'UZS',
+ 'VEF' => 'VEF',
+ 'VND' => '₫',
+ 'VUV' => 'VUV',
+ 'WST' => 'WST',
+ 'XAF' => 'FCFA',
+ 'XCD' => 'EC$',
+ 'XOF' => 'CFA',
+ 'XPF' => 'CFPF',
+ 'YER' => 'YER',
+ 'ZAR' => 'ZAR',
+ 'ZMK' => 'ZMK',
+ 'ZMW' => 'ZMW',
+);
+
+$countryNames = array(
+ 'AC' => 'Debesbraukšanas sala',
+ 'AD' => 'Andora',
+ 'AE' => 'Apvienotie Arābu Emirāti',
+ 'AF' => 'Afganistāna',
+ 'AG' => 'Antigva un Barbuda',
+ 'AI' => 'Angilja',
+ 'AL' => 'Albānija',
+ 'AM' => 'Armēnija',
+ 'AN' => 'Nīderlandes Antiļas',
+ 'AO' => 'Angola',
+ 'AQ' => 'Antarktika',
+ 'AR' => 'Argentīna',
+ 'AS' => 'Amerikāņu Samoa',
+ 'AT' => 'Austrija',
+ 'AU' => 'Austrālija',
+ 'AW' => 'Aruba',
+ 'AX' => 'Olandes salas',
+ 'AZ' => 'Azerbaidžāna',
+ 'BA' => 'Bosnija un Hercegovina',
+ 'BB' => 'Barbadosa',
+ 'BD' => 'Bangladeša',
+ 'BE' => 'Beļģija',
+ 'BF' => 'Burkinafaso',
+ 'BG' => 'Bulgārija',
+ 'BH' => 'Bahreina',
+ 'BI' => 'Burundi',
+ 'BJ' => 'Benina',
+ 'BL' => 'Senbartelmī',
+ 'BM' => 'Bermudu salas',
+ 'BN' => 'Bruneja',
+ 'BO' => 'Bolīvija',
+ 'BQ' => 'Nīderlandes Karību salas',
+ 'BR' => 'Brazīlija',
+ 'BS' => 'Bahamu salas',
+ 'BT' => 'Butāna',
+ 'BV' => 'Buvē sala',
+ 'BW' => 'Botsvāna',
+ 'BY' => 'Baltkrievija',
+ 'BZ' => 'Beliza',
+ 'CA' => 'Kanāda',
+ 'CC' => 'Kokosu jeb Kīlinga salas',
+ 'CD' => 'Kongo-Kinšasa',
+ 'CF' => 'Centrālāfrikas Republika',
+ 'CG' => 'Kongo - Brazavila',
+ 'CH' => 'Šveice',
+ 'CI' => 'Kotdivuāra',
+ 'CK' => 'Kuka salas',
+ 'CL' => 'Čīle',
+ 'CM' => 'Kamerūna',
+ 'CN' => 'Ķīna',
+ 'CO' => 'Kolumbija',
+ 'CP' => 'Klipertona sala',
+ 'CR' => 'Kostarika',
+ 'CU' => 'Kuba',
+ 'CV' => 'Kaboverde',
+ 'CW' => 'Kirasao',
+ 'CX' => 'Ziemsvētku sala',
+ 'CY' => 'Kipra',
+ 'CZ' => 'Čehija',
+ 'DE' => 'Vācija',
+ 'DG' => 'Djego Garsijas atols',
+ 'DJ' => 'Džibutija',
+ 'DK' => 'Dānija',
+ 'DM' => 'Dominika',
+ 'DO' => 'Dominikāna',
+ 'DZ' => 'Alžīrija',
+ 'EA' => 'Seūta un Melilja',
+ 'EC' => 'Ekvadora',
+ 'EE' => 'Igaunija',
+ 'EG' => 'Ēģipte',
+ 'EH' => 'Rietumsahāra',
+ 'ER' => 'Eritreja',
+ 'ES' => 'Spānija',
+ 'ET' => 'Etiopija',
+ 'EU' => 'Eiropas Savienība',
+ 'FI' => 'Somija',
+ 'FJ' => 'Fidži',
+ 'FK' => 'Folklenda salas',
+ 'FM' => 'Mikronēzija',
+ 'FO' => 'Fēru Salas',
+ 'FR' => 'Francija',
+ 'GA' => 'Gabona',
+ 'GB' => 'Lielbritānija',
+ 'GD' => 'Grenāda',
+ 'GE' => 'Gruzija',
+ 'GF' => 'Franču Gviāna',
+ 'GG' => 'Gērnsija',
+ 'GH' => 'Gana',
+ 'GI' => 'Gibraltārs',
+ 'GL' => 'Grenlande',
+ 'GM' => 'Gambija',
+ 'GN' => 'Gvineja',
+ 'GP' => 'Gvadelupa',
+ 'GQ' => 'Ekvatoriālā Gvineja',
+ 'GR' => 'Grieķija',
+ 'GS' => 'Dienviddžordžija un Dienvidsendviču salas',
+ 'GT' => 'Gvatemala',
+ 'GU' => 'Guama',
+ 'GW' => 'Gvineja-Bisava',
+ 'GY' => 'Gajāna',
+ 'HK' => 'Honkonga',
+ 'HM' => 'Hērda un Makdonalda salas',
+ 'HN' => 'Hondurasa',
+ 'HR' => 'Horvātija',
+ 'HT' => 'Haiti',
+ 'HU' => 'Ungārija',
+ 'IC' => 'Kanāriju salas',
+ 'ID' => 'Indonēzija',
+ 'IE' => 'Īrija',
+ 'IL' => 'Izraēla',
+ 'IM' => 'Mena',
+ 'IN' => 'Indija',
+ 'IO' => 'Indijas okeāna Britu teritorija',
+ 'IQ' => 'Irāka',
+ 'IR' => 'Irāna',
+ 'IS' => 'Īslande',
+ 'IT' => 'Itālija',
+ 'JE' => 'Džērsija',
+ 'JM' => 'Jamaika',
+ 'JO' => 'Jordānija',
+ 'JP' => 'Japāna',
+ 'KE' => 'Kenija',
+ 'KG' => 'Kirgizstāna',
+ 'KH' => 'Kambodža',
+ 'KI' => 'Kiribati',
+ 'KM' => 'Komoru salas',
+ 'KN' => 'Sentkitsa un Nevisa',
+ 'KP' => 'Ziemeļkoreja',
+ 'KR' => 'Dienvidkoreja',
+ 'KW' => 'Kuveita',
+ 'KY' => 'Kaimanu salas',
+ 'KZ' => 'Kazahstāna',
+ 'LA' => 'Laosa',
+ 'LB' => 'Libāna',
+ 'LC' => 'Sentlūsija',
+ 'LI' => 'Lihtenšteina',
+ 'LK' => 'Šrilanka',
+ 'LR' => 'Libērija',
+ 'LS' => 'Lesoto',
+ 'LT' => 'Lietuva',
+ 'LU' => 'Luksemburga',
+ 'LV' => 'Latvija',
+ 'LY' => 'Lībija',
+ 'MA' => 'Maroka',
+ 'MC' => 'Monako',
+ 'MD' => 'Moldova',
+ 'ME' => 'Melnkalne',
+ 'MF' => 'Senmartēna',
+ 'MG' => 'Madagaskara',
+ 'MH' => 'Māršala salas',
+ 'MK' => 'Maķedonija',
+ 'ML' => 'Mali',
+ 'MM' => 'Mjanma (Birma)',
+ 'MN' => 'Mongolija',
+ 'MO' => 'Makao',
+ 'MP' => 'Ziemeļu Marianas salas',
+ 'MQ' => 'Martinika',
+ 'MR' => 'Mauritānija',
+ 'MS' => 'Montserrata',
+ 'MT' => 'Malta',
+ 'MU' => 'Maurīcija',
+ 'MV' => 'Maldīvija',
+ 'MW' => 'Malāvija',
+ 'MX' => 'Meksika',
+ 'MY' => 'Malaizija',
+ 'MZ' => 'Mozambika',
+ 'NA' => 'Namībija',
+ 'NC' => 'Jaunkaledonija',
+ 'NE' => 'Nigēra',
+ 'NF' => 'Norfolkas sala',
+ 'NG' => 'Nigērija',
+ 'NI' => 'Nikaragva',
+ 'NL' => 'Nīderlande',
+ 'NO' => 'Norvēģija',
+ 'NP' => 'Nepāla',
+ 'NR' => 'Nauru',
+ 'NU' => 'Niue',
+ 'NZ' => 'Jaunzēlande',
+ 'OM' => 'Omāna',
+ 'PA' => 'Panama',
+ 'PE' => 'Peru',
+ 'PF' => 'Franču Polinēzija',
+ 'PG' => 'Papua-Jaungvineja',
+ 'PH' => 'Filipīnas',
+ 'PK' => 'Pakistāna',
+ 'PL' => 'Polija',
+ 'PM' => 'Senpjēra un Mikelona',
+ 'PN' => 'Pitkērna',
+ 'PR' => 'Puertoriko',
+ 'PS' => 'Palestīna',
+ 'PT' => 'Portugāle',
+ 'PW' => 'Palau',
+ 'PY' => 'Paragvaja',
+ 'QA' => 'Katara',
+ 'QO' => 'Okeānijas attālās salas',
+ 'RE' => 'Reinjona',
+ 'RO' => 'Rumānija',
+ 'RS' => 'Serbija',
+ 'RU' => 'Krievija',
+ 'RW' => 'Ruanda',
+ 'SA' => 'Saūda Arābija',
+ 'SB' => 'Zālamana salas',
+ 'SC' => 'Šeišelu salas',
+ 'SD' => 'Sudāna',
+ 'SE' => 'Zviedrija',
+ 'SG' => 'Singapūra',
+ 'SH' => 'Sv.Helēnas sala',
+ 'SI' => 'Slovēnija',
+ 'SJ' => 'Svalbāra un Jana Majena sala',
+ 'SK' => 'Slovākija',
+ 'SL' => 'Sjerraleone',
+ 'SM' => 'Sanmarīno',
+ 'SN' => 'Senegāla',
+ 'SO' => 'Somālija',
+ 'SR' => 'Surinama',
+ 'SS' => 'Dienvidsudāna',
+ 'ST' => 'Santome un Prinsipi',
+ 'SV' => 'Salvadora',
+ 'SX' => 'Sintmārtena',
+ 'SY' => 'Sīrija',
+ 'SZ' => 'Svazilenda',
+ 'TA' => 'Tristana da Kuņas salas',
+ 'TC' => 'Tērksas un Kaikosas salas',
+ 'TD' => 'Čada',
+ 'TF' => 'Francijas Dienvidjūru Zemes',
+ 'TG' => 'Togo',
+ 'TH' => 'Taizeme',
+ 'TJ' => 'Tadžikistāna',
+ 'TK' => 'Tokelau',
+ 'TL' => 'Austrumtimora',
+ 'TM' => 'Turkmenistāna',
+ 'TN' => 'Tunisija',
+ 'TO' => 'Tonga',
+ 'TR' => 'Turcija',
+ 'TT' => 'Trinidāda un Tobāgo',
+ 'TV' => 'Tuvalu',
+ 'TW' => 'Taivāna',
+ 'TZ' => 'Tanzānija',
+ 'UA' => 'Ukraina',
+ 'UG' => 'Uganda',
+ 'UM' => 'ASV Aizjūras salas',
+ 'US' => 'ASV',
+ 'UY' => 'Urugvaja',
+ 'UZ' => 'Uzbekistāna',
+ 'VA' => 'Vatikāns',
+ 'VC' => 'Sentvinsenta un Grenadīnas',
+ 'VE' => 'Venecuēla',
+ 'VG' => 'Britu Virdžīnas',
+ 'VI' => 'ASV Virdžīnas',
+ 'VN' => 'Vjetnama',
+ 'VU' => 'Vanuatu',
+ 'WF' => 'Volisa un Futuna',
+ 'WS' => 'Samoa',
+ 'XK' => 'Kosova',
+ 'YE' => 'Jemena',
+ 'YT' => 'Majota',
+ 'ZA' => 'Dienvidāfrikas Republika',
+ 'ZM' => 'Zambija',
+ 'ZW' => 'Zimbabve',
+);
+
+$timeUnits = array(
+ 'day-future-one' => 'pēc {0} dienas',
+ 'day-future-other' => 'pēc {0} dienām',
+ 'day-future-zero' => 'pēc {0} dienām',
+ 'day-narrow-future-one' => 'pēc {0} d.',
+ 'day-narrow-future-other' => 'pēc {0} d.',
+ 'day-narrow-future-zero' => 'pēc {0} d.',
+ 'day-narrow-past-one' => 'pirms {0} d.',
+ 'day-narrow-past-other' => 'pirms {0} d.',
+ 'day-narrow-past-zero' => 'pirms {0} d.',
+ 'day-one' => '{0} diena',
+ 'day-other' => '{0} dienas',
+ 'day-past-one' => 'pirms {0} dienas',
+ 'day-past-other' => 'pirms {0} dienām',
+ 'day-past-zero' => 'pirms {0} dienām',
+ 'day-short-future-one' => 'pēc {0} d.',
+ 'day-short-future-other' => 'pēc {0} d.',
+ 'day-short-future-zero' => 'pēc {0} d.',
+ 'day-short-past-one' => 'pirms {0} d.',
+ 'day-short-past-other' => 'pirms {0} d.',
+ 'day-short-past-zero' => 'pirms {0} d.',
+ 'day-zero' => '{0} dienas',
+ 'hour-future-one' => 'pēc {0} stundas',
+ 'hour-future-other' => 'pēc {0} stundām',
+ 'hour-future-zero' => 'pēc {0} stundām',
+ 'hour-narrow-future-one' => 'pēc {0} h',
+ 'hour-narrow-future-other' => 'pēc {0} h',
+ 'hour-narrow-future-zero' => 'pēc {0} h',
+ 'hour-narrow-past-one' => 'pirms {0} h',
+ 'hour-narrow-past-other' => 'pirms {0} h',
+ 'hour-narrow-past-zero' => 'pirms {0} h',
+ 'hour-one' => '{0} stunda',
+ 'hour-other' => '{0} stundas',
+ 'hour-past-one' => 'pirms {0} stundas',
+ 'hour-past-other' => 'pirms {0} stundām',
+ 'hour-past-zero' => 'pirms {0} stundām',
+ 'hour-short-future-one' => 'pēc {0} st.',
+ 'hour-short-future-other' => 'pēc {0} st.',
+ 'hour-short-future-zero' => 'pēc {0} st.',
+ 'hour-short-past-one' => 'pirms {0} st.',
+ 'hour-short-past-other' => 'pirms {0} st.',
+ 'hour-short-past-zero' => 'pirms {0} st.',
+ 'hour-zero' => '{0} stundas',
+ 'microsecond-one' => '{0} mikrosekunde',
+ 'microsecond-other' => '{0} mikrosekundes',
+ 'microsecond-zero' => '{0} mikrosekundes',
+ 'millisecond-one' => '{0} milisekunde',
+ 'millisecond-other' => '{0} milisekundes',
+ 'millisecond-zero' => '{0} milisekundes',
+ 'minute-future-one' => 'pēc {0} minūtes',
+ 'minute-future-other' => 'pēc {0} minūtēm',
+ 'minute-future-zero' => 'pēc {0} minūtēm',
+ 'minute-narrow-future-one' => 'pēc {0} min',
+ 'minute-narrow-future-other' => 'pēc {0} min',
+ 'minute-narrow-future-zero' => 'pēc {0} min',
+ 'minute-narrow-past-one' => 'pirms {0} min',
+ 'minute-narrow-past-other' => 'pirms {0} min',
+ 'minute-narrow-past-zero' => 'pirms {0} min',
+ 'minute-one' => '{0} minūte',
+ 'minute-other' => '{0} minūtes',
+ 'minute-past-one' => 'pirms {0} minūtes',
+ 'minute-past-other' => 'pirms {0} minūtēm',
+ 'minute-past-zero' => 'pirms {0} minūtēm',
+ 'minute-short-future-one' => 'pēc {0} min.',
+ 'minute-short-future-other' => 'pēc {0} min.',
+ 'minute-short-future-zero' => 'pēc {0} min.',
+ 'minute-short-past-one' => 'pirms {0} min.',
+ 'minute-short-past-other' => 'pirms {0} min.',
+ 'minute-short-past-zero' => 'pirms {0} min.',
+ 'minute-zero' => '{0} minūtes',
+ 'month-future-one' => 'pēc {0} mēneša',
+ 'month-future-other' => 'pēc {0} mēnešiem',
+ 'month-future-zero' => 'pēc {0} mēnešiem',
+ 'month-narrow-future-one' => 'pēc {0} mēn.',
+ 'month-narrow-future-other' => 'pēc {0} mēn.',
+ 'month-narrow-future-zero' => 'pēc {0} mēn.',
+ 'month-narrow-past-one' => 'pirms {0} mēn.',
+ 'month-narrow-past-other' => 'pirms {0} mēn.',
+ 'month-narrow-past-zero' => 'pirms {0} mēn.',
+ 'month-one' => '{0} mēnesis',
+ 'month-other' => '{0} mēneši',
+ 'month-past-one' => 'pirms {0} mēneša',
+ 'month-past-other' => 'pirms {0} mēnešiem',
+ 'month-past-zero' => 'pirms {0} mēnešiem',
+ 'month-short-future-one' => 'pēc {0} mēn.',
+ 'month-short-future-other' => 'pēc {0} mēn.',
+ 'month-short-future-zero' => 'pēc {0} mēn.',
+ 'month-short-past-one' => 'pirms {0} mēn.',
+ 'month-short-past-other' => 'pirms {0} mēn.',
+ 'month-short-past-zero' => 'pirms {0} mēn.',
+ 'month-zero' => '{0} mēneši',
+ 'nanosecond-one' => '{0} nanosekunde',
+ 'nanosecond-other' => '{0} nanosekundes',
+ 'nanosecond-zero' => '{0} nanosekundes',
+ 'quarter-future-one' => 'pēc {0} ceturkšņa',
+ 'quarter-future-other' => 'pēc {0} ceturkšņiem',
+ 'quarter-future-zero' => 'pēc {0} ceturkšņiem',
+ 'quarter-narrow-future-one' => 'pēc {0} cet.',
+ 'quarter-narrow-future-other' => 'pēc {0} cet.',
+ 'quarter-narrow-future-zero' => 'pēc {0} cet.',
+ 'quarter-narrow-past-one' => 'pirms {0} cet.',
+ 'quarter-narrow-past-other' => 'pirms {0} cet.',
+ 'quarter-narrow-past-zero' => 'pirms {0} cet.',
+ 'quarter-past-one' => 'pirms {0} ceturkšņa',
+ 'quarter-past-other' => 'pirms {0} ceturkšņiem',
+ 'quarter-past-zero' => 'pirms {0} ceturkšņiem',
+ 'quarter-short-future-one' => 'pēc {0} cet.',
+ 'quarter-short-future-other' => 'pēc {0} cet.',
+ 'quarter-short-future-zero' => 'pēc {0} cet.',
+ 'quarter-short-past-one' => 'pirms {0} cet.',
+ 'quarter-short-past-other' => 'pirms {0} cet.',
+ 'quarter-short-past-zero' => 'pirms {0} cet.',
+ 'second-future-one' => 'pēc {0} sekundes',
+ 'second-future-other' => 'pēc {0} sekundēm',
+ 'second-future-zero' => 'pēc {0} sekundēm',
+ 'second-narrow-future-one' => 'pēc {0} s',
+ 'second-narrow-future-other' => 'pēc {0} s',
+ 'second-narrow-future-zero' => 'pēc {0} s',
+ 'second-narrow-past-one' => 'pirms {0} s',
+ 'second-narrow-past-other' => 'pirms {0} s',
+ 'second-narrow-past-zero' => 'pirms {0} s',
+ 'second-one' => '{0} sekunde',
+ 'second-other' => '{0} sekundes',
+ 'second-past-one' => 'pirms {0} sekundes',
+ 'second-past-other' => 'pirms {0} sekundēm',
+ 'second-past-zero' => 'pirms {0} sekundēm',
+ 'second-short-future-one' => 'pēc {0} sek.',
+ 'second-short-future-other' => 'pēc {0} sek.',
+ 'second-short-future-zero' => 'pēc {0} sek.',
+ 'second-short-past-one' => 'pirms {0} sek.',
+ 'second-short-past-other' => 'pirms {0} sek.',
+ 'second-short-past-zero' => 'pirms {0} sek.',
+ 'second-zero' => '{0} sekundes',
+ 'week-future-one' => 'pēc {0} nedēļas',
+ 'week-future-other' => 'pēc {0} nedēļām',
+ 'week-future-zero' => 'pēc {0} nedēļām',
+ 'week-narrow-future-one' => 'pēc {0} ned.',
+ 'week-narrow-future-other' => 'pēc {0} ned.',
+ 'week-narrow-future-zero' => 'pēc {0} ned.',
+ 'week-narrow-past-one' => 'pirms {0} ned.',
+ 'week-narrow-past-other' => 'pirms {0} ned.',
+ 'week-narrow-past-zero' => 'pirms {0} ned.',
+ 'week-one' => '{0} nedēļa',
+ 'week-other' => '{0} nedēļas',
+ 'week-past-one' => 'pirms {0} nedēļas',
+ 'week-past-other' => 'pirms {0} nedēļām',
+ 'week-past-zero' => 'pirms {0} nedēļām',
+ 'week-short-future-one' => 'pēc {0} ned.',
+ 'week-short-future-other' => 'pēc {0} ned.',
+ 'week-short-future-zero' => 'pēc {0} ned.',
+ 'week-short-past-one' => 'pirms {0} ned.',
+ 'week-short-past-other' => 'pirms {0} ned.',
+ 'week-short-past-zero' => 'pirms {0} ned.',
+ 'week-zero' => '{0} nedēļas',
+ 'year-future-one' => 'pēc {0} gada',
+ 'year-future-other' => 'pēc {0} gadiem',
+ 'year-future-zero' => 'pēc {0} gadiem',
+ 'year-narrow-future-one' => 'pēc {0} g.',
+ 'year-narrow-future-other' => 'pēc {0} g.',
+ 'year-narrow-future-zero' => 'pēc {0} g.',
+ 'year-narrow-past-one' => 'pirms {0} g.',
+ 'year-narrow-past-other' => 'pirms {0} g.',
+ 'year-narrow-past-zero' => 'pirms {0} g.',
+ 'year-one' => '{0} gads',
+ 'year-other' => '{0} gadi',
+ 'year-past-one' => 'pirms {0} gada',
+ 'year-past-other' => 'pirms {0} gadiem',
+ 'year-past-zero' => 'pirms {0} gadiem',
+ 'year-short-future-one' => 'pēc {0} g.',
+ 'year-short-future-other' => 'pēc {0} g.',
+ 'year-short-future-zero' => 'pēc {0} g.',
+ 'year-short-past-one' => 'pirms {0} g.',
+ 'year-short-past-other' => 'pirms {0} g.',
+ 'year-short-past-zero' => 'pirms {0} g.',
+ 'year-zero' => '{0} gadi',
+);
diff --git a/MLEB/cldr/CldrNames/CldrNamesMg.php b/MLEB/cldr/CldrNames/CldrNamesMg.php
new file mode 100644
index 00000000..0cd19236
--- /dev/null
+++ b/MLEB/cldr/CldrNames/CldrNamesMg.php
@@ -0,0 +1,340 @@
+<?php
+
+$languageNames = array(
+ 'ak' => 'Akan',
+ 'am' => 'Amharika',
+ 'ar' => 'Arabo',
+ 'be' => 'Bielorosy',
+ 'bg' => 'Biolgara',
+ 'bn' => 'Bengali',
+ 'cs' => 'Tseky',
+ 'de' => 'Alemanina',
+ 'el' => 'Grika',
+ 'en' => 'Anglisy',
+ 'es' => 'Espaniola',
+ 'fa' => 'Persa',
+ 'fr' => 'Frantsay',
+ 'ha' => 'haoussa',
+ 'hi' => 'hindi',
+ 'hu' => 'hongroà',
+ 'id' => 'Indonezianina',
+ 'ig' => 'igbo',
+ 'it' => 'Italianina',
+ 'ja' => 'Japoney',
+ 'jv' => 'Javaney',
+ 'km' => 'khmer',
+ 'ko' => 'Koreanina',
+ 'mg' => 'Malagasy',
+ 'ms' => 'Malay',
+ 'my' => 'Birmana',
+ 'ne' => 'Nepale',
+ 'nl' => 'Holandey',
+ 'pa' => 'Penjabi',
+ 'pl' => 'Poloney',
+ 'pt' => 'Portiogey',
+ 'ro' => 'Romanianina',
+ 'ru' => 'Rosianina',
+ 'rw' => 'Roande',
+ 'so' => 'Somalianina',
+ 'sv' => 'Soisa',
+ 'ta' => 'Tamoila',
+ 'th' => 'Taioaney',
+ 'tr' => 'Tiorka',
+ 'uk' => 'Okrainianina',
+ 'ur' => 'Ordò',
+ 'vi' => 'Vietnamianina',
+ 'yo' => 'Yôrobà',
+ 'zh' => 'Sinoa, Mandarin',
+ 'zu' => 'Zolò',
+);
+
+$currencyNames = array(
+ 'AED' => 'Dirham',
+ 'AOA' => 'kwanza angoley',
+ 'AUD' => 'Dolara aostralianina',
+ 'BHD' => 'dinar bahreïni',
+ 'BIF' => 'Farantsa Borondi',
+ 'BWP' => 'Pola botsoaney',
+ 'CAD' => 'Dôlara Kanadianina',
+ 'CDF' => 'Farantsa kôngôley',
+ 'CHF' => 'Farantsa soisa',
+ 'CNY' => 'Yoan sinoa Renminbi',
+ 'CVE' => 'Escudo',
+ 'DJF' => 'Farantsa Djibotianina',
+ 'DZD' => 'Dinara alzerianina',
+ 'EGP' => 'vola venty ejipsiana',
+ 'ERN' => 'Nakfà Eritreanina',
+ 'ETB' => 'Bir etiopianina',
+ 'EUR' => 'Eoro',
+ 'GBP' => 'livre sterling',
+ 'GHC' => 'cédi',
+ 'GMD' => 'Dalasi gambianina',
+ 'GNS' => 'Farantsa Gineanina',
+ 'INR' => 'Ropia Indianina',
+ 'JPY' => 'Yen Japoney',
+ 'KES' => 'Shilling kenianina',
+ 'KMF' => 'Farantsa Komorianina',
+ 'LRD' => 'Dôlara Liberianina',
+ 'LSL' => 'Loti',
+ 'LYD' => 'Dinara Libyanina',
+ 'MAD' => 'Dirham marokianina',
+ 'MGA' => 'Ariary',
+ 'MRO' => 'Ouguiya moritanianina',
+ 'MUR' => 'Ropia maorisianina',
+ 'MWK' => 'kwacha malawite',
+ 'MZM' => 'Metikaly',
+ 'NAD' => 'Dolara namibianina',
+ 'NGN' => 'Naira nigerianina',
+ 'RWF' => 'Farantsa Roande',
+ 'SAR' => 'Rial saodianina',
+ 'SCR' => 'Ropia Seysheloà',
+ 'SDG' => 'Dinara Sodaney',
+ 'SDP' => 'livre soudanaise (1956–2007)',
+ 'SHP' => 'livre de Sainte-Hélène',
+ 'SLL' => 'Leone',
+ 'SOS' => 'Shilling somalianina',
+ 'STD' => 'Dobra',
+ 'SZL' => 'Lilangeni',
+ 'TND' => 'Dinar tonizianina',
+ 'TZS' => 'Shilling tanzanianina',
+ 'UGX' => 'Shilling ogandianina',
+ 'USD' => 'Dolara amerikanina',
+ 'XAF' => 'Farantsa CFA (BEAC)',
+ 'XOF' => 'Farantsa CFA (BCEAO)',
+ 'ZAR' => 'Rand afrikanina tatsimo',
+ 'ZMK' => 'Kwacha zambianina (1968–2012)',
+ 'ZMW' => 'Kwacha zambianina',
+ 'ZWD' => 'Dôlara Zimbaboeanina',
+);
+
+$currencySymbols = array(
+ 'MGA' => 'Ar',
+);
+
+$countryNames = array(
+ 'AD' => 'Andorra',
+ 'AE' => 'Emirà Arabo mitambatra',
+ 'AF' => 'Afghanistan',
+ 'AG' => 'Antiga sy Barboda',
+ 'AI' => 'Anguilla',
+ 'AL' => 'Albania',
+ 'AM' => 'Armenia',
+ 'AN' => 'Vondronosy karaiba holandey',
+ 'AO' => 'Angola',
+ 'AR' => 'Arzantina',
+ 'AS' => 'Samoa amerikanina',
+ 'AT' => 'Aotrisy',
+ 'AU' => 'Aostralia',
+ 'AW' => 'Arobà',
+ 'AZ' => 'Azerbaidjan',
+ 'BA' => 'Bosnia sy Herzegovina',
+ 'BB' => 'Barbady',
+ 'BD' => 'Bangladesy',
+ 'BE' => 'Belzika',
+ 'BF' => 'Borkina Faso',
+ 'BG' => 'Biolgaria',
+ 'BH' => 'Bahrain',
+ 'BI' => 'Borondi',
+ 'BJ' => 'Benin',
+ 'BM' => 'Bermioda',
+ 'BN' => 'Brunei',
+ 'BO' => 'Bolivia',
+ 'BR' => 'Brezila',
+ 'BS' => 'Bahamas',
+ 'BT' => 'Bhotana',
+ 'BW' => 'Botsoana',
+ 'BY' => 'Belarosy',
+ 'BZ' => 'Belize',
+ 'CA' => 'Kanada',
+ 'CD' => 'Repoblikan’i Kongo',
+ 'CF' => 'Repoblika Ivon’Afrika',
+ 'CG' => 'Kôngô',
+ 'CH' => 'Soisa',
+ 'CI' => 'Côte d’Ivoire',
+ 'CK' => 'Nosy Kook',
+ 'CL' => 'Shili',
+ 'CM' => 'Kamerona',
+ 'CN' => 'Sina',
+ 'CO' => 'Kôlômbia',
+ 'CR' => 'Kosta Rikà',
+ 'CU' => 'Kiobà',
+ 'CV' => 'Nosy Cap-Vert',
+ 'CY' => 'Sypra',
+ 'CZ' => 'Repoblikan’i Tseky',
+ 'DE' => 'Alemaina',
+ 'DJ' => 'Djiboti',
+ 'DK' => 'Danmarka',
+ 'DM' => 'Dominika',
+ 'DO' => 'Repoblika Dominikanina',
+ 'DZ' => 'Alzeria',
+ 'EC' => 'Ekoatera',
+ 'EE' => 'Estonia',
+ 'EG' => 'Ejypta',
+ 'ER' => 'Eritrea',
+ 'ES' => 'Espaina',
+ 'ET' => 'Ethiopia',
+ 'FI' => 'Finlandy',
+ 'FJ' => 'Fidji',
+ 'FK' => 'Nosy Falkand',
+ 'FM' => 'Mikrônezia',
+ 'FR' => 'Frantsa',
+ 'GA' => 'Gabon',
+ 'GB' => 'Angletera',
+ 'GD' => 'Grenady',
+ 'GE' => 'Zeorzia',
+ 'GF' => 'Guyana frantsay',
+ 'GH' => 'Ghana',
+ 'GI' => 'Zibraltara',
+ 'GL' => 'Groenland',
+ 'GM' => 'Gambia',
+ 'GN' => 'Ginea',
+ 'GP' => 'Goadelopy',
+ 'GQ' => 'Guinea Ekoatera',
+ 'GR' => 'Gresy',
+ 'GT' => 'Goatemalà',
+ 'GU' => 'Guam',
+ 'GW' => 'Giné-Bisao',
+ 'GY' => 'Guyana',
+ 'HN' => 'Hondiorasy',
+ 'HR' => 'Kroasia',
+ 'HT' => 'Haiti',
+ 'HU' => 'Hongria',
+ 'ID' => 'Indonezia',
+ 'IE' => 'Irlandy',
+ 'IL' => 'Israely',
+ 'IN' => 'Indy',
+ 'IO' => 'Faridranomasina indiana britanika',
+ 'IQ' => 'Irak',
+ 'IR' => 'Iran',
+ 'IS' => 'Islandy',
+ 'IT' => 'Italia',
+ 'JM' => 'Jamaïka',
+ 'JO' => 'Jordania',
+ 'JP' => 'Japana',
+ 'KE' => 'Kenya',
+ 'KG' => 'Kiordistan',
+ 'KH' => 'Kambôdja',
+ 'KI' => 'Kiribati',
+ 'KM' => 'Kômaoro',
+ 'KN' => 'Saint-Christophe-et-Niévès',
+ 'KP' => 'Korea Avaratra',
+ 'KR' => 'Korea Atsimo',
+ 'KW' => 'Kôeity',
+ 'KY' => 'Nosy Kayman',
+ 'KZ' => 'Kazakhstan',
+ 'LA' => 'Laôs',
+ 'LB' => 'Libana',
+ 'LC' => 'Sainte-Lucie',
+ 'LI' => 'Listenstein',
+ 'LK' => 'Sri Lanka',
+ 'LR' => 'Liberia',
+ 'LS' => 'Lesotho',
+ 'LT' => 'Litoania',
+ 'LU' => 'Lioksamboro',
+ 'LV' => 'Letonia',
+ 'LY' => 'Libya',
+ 'MA' => 'Marôka',
+ 'MC' => 'Mônakô',
+ 'MD' => 'Môldavia',
+ 'MG' => 'Madagasikara',
+ 'MH' => 'Nosy Marshall',
+ 'MK' => 'Makedonia',
+ 'ML' => 'Mali',
+ 'MM' => 'Myanmar',
+ 'MN' => 'Môngôlia',
+ 'MP' => 'Nosy Mariana Atsinanana',
+ 'MQ' => 'Martinika',
+ 'MR' => 'Maoritania',
+ 'MS' => 'Montserrat',
+ 'MT' => 'Malta',
+ 'MU' => 'Maorisy',
+ 'MV' => 'Maldiva',
+ 'MW' => 'Malaoì',
+ 'MX' => 'Meksika',
+ 'MY' => 'Malaizia',
+ 'MZ' => 'Mozambika',
+ 'NA' => 'Namibia',
+ 'NC' => 'Nouvelle-Calédonie',
+ 'NE' => 'Niger',
+ 'NF' => 'Nosy Norfolk',
+ 'NG' => 'Nizeria',
+ 'NI' => 'Nikaragoà',
+ 'NL' => 'Holanda',
+ 'NO' => 'Nôrvezy',
+ 'NP' => 'Nepala',
+ 'NR' => 'Naorò',
+ 'NU' => 'Nioé',
+ 'NZ' => 'Nouvelle-Zélande',
+ 'OM' => 'Oman',
+ 'PA' => 'Panama',
+ 'PE' => 'Peroa',
+ 'PF' => 'Polynezia frantsay',
+ 'PG' => 'Papouasie-Nouvelle-Guinée',
+ 'PH' => 'Filipina',
+ 'PK' => 'Pakistan',
+ 'PL' => 'Pôlôna',
+ 'PM' => 'Saint-Pierre-et-Miquelon',
+ 'PN' => 'Pitkairn',
+ 'PR' => 'Pôrtô Rikô',
+ 'PS' => 'Palestina',
+ 'PT' => 'Pôrtiogala',
+ 'PW' => 'Palao',
+ 'PY' => 'Paragoay',
+ 'QA' => 'Katar',
+ 'RE' => 'Larenion',
+ 'RO' => 'Romania',
+ 'RU' => 'Rosia',
+ 'RW' => 'Roanda',
+ 'SA' => 'Arabia saodita',
+ 'SB' => 'Nosy Salomona',
+ 'SC' => 'Seyshela',
+ 'SD' => 'Sodan',
+ 'SE' => 'Soedy',
+ 'SG' => 'Singaporo',
+ 'SH' => 'Sainte-Hélène',
+ 'SI' => 'Slovenia',
+ 'SK' => 'Slovakia',
+ 'SL' => 'Sierra Leone',
+ 'SM' => 'Saint-Marin',
+ 'SN' => 'Senegal',
+ 'SO' => 'Somalia',
+ 'SR' => 'Sorinam',
+ 'ST' => 'São Tomé-et-Príncipe',
+ 'SV' => 'El Salvador',
+ 'SY' => 'Syria',
+ 'SZ' => 'Soazilandy',
+ 'TC' => 'Nosy Turks sy Caïques',
+ 'TD' => 'Tsady',
+ 'TG' => 'Togo',
+ 'TH' => 'Thailandy',
+ 'TJ' => 'Tajikistan',
+ 'TK' => 'Tokelao',
+ 'TL' => 'Timor Atsinanana',
+ 'TM' => 'Torkmenistan',
+ 'TN' => 'Tonizia',
+ 'TO' => 'Tongà',
+ 'TR' => 'Torkia',
+ 'TT' => 'Trinidad sy Tobagô',
+ 'TV' => 'Tovalò',
+ 'TW' => 'Taioana',
+ 'TZ' => 'Tanzania',
+ 'UA' => 'Okraina',
+ 'UG' => 'Oganda',
+ 'US' => 'Etazonia',
+ 'UY' => 'Orogoay',
+ 'UZ' => 'Ozbekistan',
+ 'VA' => 'Firenen’i Vatikana',
+ 'VC' => 'Saint-Vincent-et-les Grenadines',
+ 'VE' => 'Venezoelà',
+ 'VG' => 'Nosy britanika virijiny',
+ 'VI' => 'Nosy Virijiny Etazonia',
+ 'VN' => 'Vietnam',
+ 'VU' => 'Vanoatò',
+ 'WF' => 'Wallis sy Futuna',
+ 'WS' => 'Samoa',
+ 'YE' => 'Yemen',
+ 'YT' => 'Mayôty',
+ 'ZA' => 'Afrika Atsimo',
+ 'ZM' => 'Zambia',
+ 'ZW' => 'Zimbaboe',
+);
diff --git a/MLEB/cldr/CldrNames/CldrNamesMk.php b/MLEB/cldr/CldrNames/CldrNamesMk.php
new file mode 100644
index 00000000..7829c77f
--- /dev/null
+++ b/MLEB/cldr/CldrNames/CldrNamesMk.php
@@ -0,0 +1,1368 @@
+<?php
+
+$languageNames = array(
+ 'aa' => 'афарски',
+ 'ab' => 'апхаски',
+ 'ace' => 'ачешки',
+ 'ach' => 'аколи',
+ 'ada' => 'адангме',
+ 'ady' => 'адигејски',
+ 'ae' => 'авестански',
+ 'aeb' => 'туниски арапски',
+ 'af' => 'африканс',
+ 'afh' => 'африхили',
+ 'agq' => 'агемски',
+ 'ain' => 'ајну',
+ 'ak' => 'акански',
+ 'akk' => 'акадски',
+ 'akz' => 'алабамски',
+ 'ale' => 'алеутски',
+ 'aln' => 'гешки албански',
+ 'alt' => 'јужноалтајски',
+ 'am' => 'амхарски',
+ 'an' => 'арагонски',
+ 'ang' => 'староанглиски',
+ 'anp' => 'ангика',
+ 'ar' => 'арапски',
+ 'ar-001' => 'литературен арапски',
+ 'arc' => 'арамејски',
+ 'arn' => 'мапучки',
+ 'aro' => 'араона',
+ 'arp' => 'арапахо',
+ 'arq' => 'алжирски арапски',
+ 'arw' => 'аравачки',
+ 'ary' => 'марокански арапски',
+ 'arz' => 'египетски арапски',
+ 'as' => 'асамски',
+ 'asa' => 'асу',
+ 'ase' => 'американски знаковен јазик',
+ 'ast' => 'астурски',
+ 'av' => 'аварски',
+ 'avk' => 'котава',
+ 'awa' => 'авади',
+ 'ay' => 'ајмарски',
+ 'az' => 'азербејџански',
+ 'azb' => 'јужноазербејџански',
+ 'ba' => 'башкирски',
+ 'bal' => 'белуџиски',
+ 'ban' => 'балиски',
+ 'bar' => 'баварски',
+ 'bas' => 'баса',
+ 'bax' => 'бамунски',
+ 'bbc' => 'тоба',
+ 'bbj' => 'гомала',
+ 'be' => 'белоруски',
+ 'bej' => 'беџа',
+ 'bem' => 'бемба',
+ 'bew' => 'бетавски',
+ 'bez' => 'бена',
+ 'bfd' => 'бафут',
+ 'bfq' => 'бадага',
+ 'bg' => 'бугарски',
+ 'bho' => 'боџпури',
+ 'bi' => 'бислама',
+ 'bik' => 'биколски',
+ 'bin' => 'бини',
+ 'bjn' => 'банџарски',
+ 'bkm' => 'ком',
+ 'bla' => 'сиксика',
+ 'bm' => 'бамбара',
+ 'bn' => 'бенгалски',
+ 'bo' => 'тибетски',
+ 'bpy' => 'бишнуприја',
+ 'bqi' => 'бахтијарски',
+ 'br' => 'бретонски',
+ 'bra' => 'брај',
+ 'brh' => 'брахујски',
+ 'brx' => 'бодо',
+ 'bs' => 'босански',
+ 'bss' => 'акосе',
+ 'bua' => 'бурјатски',
+ 'bug' => 'бугиски',
+ 'bum' => 'булу',
+ 'byn' => 'биленски',
+ 'byv' => 'медумба',
+ 'ca' => 'каталонски',
+ 'cad' => 'кадо',
+ 'car' => 'карипски',
+ 'cay' => 'кајуга',
+ 'cch' => 'ацам',
+ 'ce' => 'чеченски',
+ 'ceb' => 'себуански',
+ 'cgg' => 'чига',
+ 'ch' => 'чаморски',
+ 'chb' => 'чибча',
+ 'chg' => 'чагатајски',
+ 'chk' => 'чучки',
+ 'chm' => 'мариски',
+ 'chn' => 'чинучки жаргон',
+ 'cho' => 'чоктавски',
+ 'chp' => 'чипевјански',
+ 'chr' => 'черокиски',
+ 'chy' => 'чејенски',
+ 'ckb' => 'сорански курдски',
+ 'co' => 'корзикански',
+ 'cop' => 'коптски',
+ 'cps' => 'капизнон',
+ 'cr' => 'кри',
+ 'crh' => 'кримскотурски',
+ 'cs' => 'чешки',
+ 'csb' => 'кашупски',
+ 'cu' => 'црковнословенски',
+ 'cv' => 'чувашки',
+ 'cy' => 'велшки',
+ 'da' => 'дански',
+ 'dak' => 'дакота',
+ 'dar' => 'даргва',
+ 'dav' => 'таита',
+ 'de' => 'германски',
+ 'del' => 'делавер',
+ 'den' => 'слејви',
+ 'dgr' => 'догрипски',
+ 'din' => 'динка',
+ 'dje' => 'зарма',
+ 'doi' => 'догри',
+ 'dsb' => 'долнолужички',
+ 'dtp' => 'дусунски',
+ 'dua' => 'дуала',
+ 'dum' => 'среднохоландски',
+ 'dv' => 'дивехи',
+ 'dyo' => 'јола-фоњи',
+ 'dyu' => 'џула',
+ 'dz' => 'ѕонгка',
+ 'dzg' => 'дазага',
+ 'ebu' => 'ембу',
+ 'ee' => 'еве',
+ 'efi' => 'ефик',
+ 'egl' => 'емилијански',
+ 'egy' => 'староегипетски',
+ 'eka' => 'екаџук',
+ 'el' => 'грчки',
+ 'elx' => 'еламски',
+ 'en' => 'англиски',
+ 'en-gb' => 'британски англиски',
+ 'en-us' => 'американски англиски',
+ 'enm' => 'средноанглиски',
+ 'eo' => 'есперанто',
+ 'es' => 'шпански',
+ 'es-es' => 'шпански (во Европа)',
+ 'esu' => 'централнојупички',
+ 'et' => 'естонски',
+ 'eu' => 'баскиски',
+ 'ewo' => 'евондо',
+ 'ext' => 'екстремадурски',
+ 'fa' => 'персиски',
+ 'fan' => 'фанг',
+ 'fat' => 'фанти',
+ 'ff' => 'фула',
+ 'fi' => 'фински',
+ 'fil' => 'филипински',
+ 'fit' => 'турнедаленски фински',
+ 'fj' => 'фиџиски',
+ 'fo' => 'фарски',
+ 'fon' => 'фон',
+ 'fr' => 'француски',
+ 'fr-ca' => 'француски (во Канада)',
+ 'frc' => 'каџунски француски',
+ 'frm' => 'среднофранцуски',
+ 'fro' => 'старофранцуски',
+ 'frp' => 'франкопровансалски',
+ 'frr' => 'севернофризиски',
+ 'frs' => 'источнофризиски',
+ 'fur' => 'фурлански',
+ 'fy' => 'западнофризиски',
+ 'ga' => 'ирски',
+ 'gaa' => 'га',
+ 'gag' => 'гагауски',
+ 'gan' => 'ган',
+ 'gay' => 'гајо',
+ 'gba' => 'гбаја',
+ 'gbz' => 'зороастриски дари',
+ 'gd' => 'шкотски гелски',
+ 'gez' => 'гиз',
+ 'gil' => 'гилбертански',
+ 'gl' => 'галициски',
+ 'glk' => 'гилански',
+ 'gmh' => 'средногорногермански',
+ 'gn' => 'гварански',
+ 'goh' => 'старогорногермански',
+ 'gom' => 'гоански конкани',
+ 'gon' => 'гонди',
+ 'gor' => 'горонтало',
+ 'got' => 'готски',
+ 'grb' => 'гребо',
+ 'grc' => 'старогрчки',
+ 'gsw' => 'швајцарски германски',
+ 'gu' => 'гуџарати',
+ 'guc' => 'гвахиро',
+ 'gur' => 'фарефаре',
+ 'guz' => 'гуси',
+ 'gv' => 'манкс',
+ 'gwi' => 'гвичински',
+ 'ha' => 'хауса',
+ 'hai' => 'хајда',
+ 'hak' => 'хака',
+ 'haw' => 'хавајски',
+ 'he' => 'хебрејски',
+ 'hi' => 'хинди',
+ 'hif' => 'фиџиски хинди',
+ 'hil' => 'хилигајнонски',
+ 'hit' => 'хетитски',
+ 'hmn' => 'хмонг',
+ 'ho' => 'хири моту',
+ 'hr' => 'хрватски',
+ 'hsb' => 'горнолужички',
+ 'hsn' => 'сјанг',
+ 'ht' => 'хаитски',
+ 'hu' => 'унгарски',
+ 'hup' => 'хупа',
+ 'hy' => 'ерменски',
+ 'hz' => 'хереро',
+ 'ia' => 'интерлингва',
+ 'iba' => 'ибан',
+ 'ibb' => 'ибибио',
+ 'id' => 'индонезиски',
+ 'ie' => 'окцидентал',
+ 'ig' => 'игбо',
+ 'ii' => 'носу',
+ 'ik' => 'инупијачки',
+ 'ilo' => 'илокански',
+ 'inh' => 'ингушки',
+ 'io' => 'идо',
+ 'is' => 'исландски',
+ 'it' => 'италијански',
+ 'iu' => 'инуктитут',
+ 'izh' => 'ижорски',
+ 'ja' => 'јапонски',
+ 'jam' => 'јамајски креолски',
+ 'jbo' => 'ложбан',
+ 'jgo' => 'нгомба',
+ 'jmc' => 'мачаме',
+ 'jpr' => 'еврејскоперсиски',
+ 'jrb' => 'еврејскоарапски',
+ 'jut' => 'јитски',
+ 'jv' => 'јавански',
+ 'ka' => 'грузиски',
+ 'kaa' => 'каракалпачки',
+ 'kab' => 'кабилски',
+ 'kac' => 'качински',
+ 'kaj' => 'каџе',
+ 'kam' => 'камба',
+ 'kaw' => 'кави',
+ 'kbd' => 'кабардински',
+ 'kbl' => 'канембу',
+ 'kcg' => 'тјап',
+ 'kde' => 'маконде',
+ 'kea' => 'кабувердиану',
+ 'ken' => 'кењанг',
+ 'kfo' => 'коро',
+ 'kg' => 'конго',
+ 'kgp' => 'каинганшки',
+ 'kha' => 'каси',
+ 'kho' => 'хотански',
+ 'khq' => 'којра чиини',
+ 'khw' => 'коварски',
+ 'ki' => 'кикују',
+ 'kiu' => 'зазаки',
+ 'kj' => 'квањама',
+ 'kk' => 'казакстански',
+ 'kkj' => 'како',
+ 'kl' => 'калалисут',
+ 'kln' => 'каленџин',
+ 'km' => 'кмерски',
+ 'kmb' => 'кимбунду',
+ 'kn' => 'каннада',
+ 'ko' => 'корејски',
+ 'koi' => 'коми-пермјачки',
+ 'kok' => 'конкани',
+ 'kos' => 'козрејски',
+ 'kpe' => 'кпеле',
+ 'kr' => 'канури',
+ 'krc' => 'карачаевско-балкарски',
+ 'kri' => 'крио',
+ 'krj' => 'кинарајски',
+ 'krl' => 'карелски',
+ 'kru' => 'курух',
+ 'ks' => 'кашмирски',
+ 'ksb' => 'шамбала',
+ 'ksf' => 'бафија',
+ 'ksh' => 'колоњски',
+ 'ku' => 'курдски',
+ 'kum' => 'кумички',
+ 'kut' => 'кутенајски',
+ 'kv' => 'коми',
+ 'kw' => 'корнски',
+ 'ky' => 'киргиски',
+ 'la' => 'латински',
+ 'lad' => 'ладино',
+ 'lag' => 'ланги',
+ 'lah' => 'ланда',
+ 'lam' => 'ламба',
+ 'lb' => 'луксембуршки',
+ 'lez' => 'лезгински',
+ 'lfn' => 'лингва франка нова',
+ 'lg' => 'ганда',
+ 'li' => 'лимбуршки',
+ 'lij' => 'лигурски',
+ 'liv' => 'ливонски',
+ 'lkt' => 'лакотски',
+ 'lmo' => 'ломбардски',
+ 'ln' => 'лингала',
+ 'lo' => 'лаошки',
+ 'lol' => 'монго',
+ 'loz' => 'лози',
+ 'lt' => 'литвански',
+ 'ltg' => 'латгалски',
+ 'lu' => 'луба-катанга',
+ 'lua' => 'луба-лулуа',
+ 'lui' => 'лујсењски',
+ 'lun' => 'лунда',
+ 'luo' => 'луо',
+ 'lus' => 'мизо',
+ 'luy' => 'луја',
+ 'lv' => 'латвиски',
+ 'lzh' => 'книжевен кинески',
+ 'lzz' => 'ласки',
+ 'mad' => 'мадурски',
+ 'maf' => 'мафа',
+ 'mag' => 'магахи',
+ 'mai' => 'маитили',
+ 'mak' => 'макасарски',
+ 'man' => 'мандинго',
+ 'mas' => 'масајски',
+ 'mde' => 'маба',
+ 'mdf' => 'мокшански',
+ 'mdr' => 'мандарски',
+ 'men' => 'менде',
+ 'mer' => 'меру',
+ 'mfe' => 'морисјен',
+ 'mg' => 'малгашки',
+ 'mga' => 'средноирски',
+ 'mgh' => 'макува-мито',
+ 'mgo' => 'мета',
+ 'mh' => 'маршалски',
+ 'mi' => 'маорски',
+ 'mic' => 'микмак',
+ 'min' => 'минангкабау',
+ 'mk' => 'македонски',
+ 'ml' => 'малајалам',
+ 'mn' => 'монголски',
+ 'mnc' => 'манџурски',
+ 'mni' => 'манипури',
+ 'moh' => 'мохавски',
+ 'mos' => 'моси',
+ 'mr' => 'марати',
+ 'mrj' => 'западномариски',
+ 'ms' => 'малајски',
+ 'mt' => 'малтешки',
+ 'mua' => 'мунданг',
+ 'mul' => 'повеќе јазици',
+ 'mus' => 'крик',
+ 'mwl' => 'мирандски',
+ 'mwr' => 'марвари',
+ 'my' => 'бурмански',
+ 'mye' => 'мјене',
+ 'myv' => 'ерзјански',
+ 'mzn' => 'мазендерански',
+ 'na' => 'науруански',
+ 'nan' => 'јужномински',
+ 'nap' => 'неаполски',
+ 'naq' => 'нама',
+ 'nb' => 'норвешки букмол',
+ 'nd' => 'северен ндебеле',
+ 'nds' => 'долногермански',
+ 'ne' => 'непалски',
+ 'new' => 'неварски',
+ 'ng' => 'ндонга',
+ 'nia' => 'нијас',
+ 'niu' => 'ниуејски',
+ 'njo' => 'ао',
+ 'nl' => 'холандски',
+ 'nmg' => 'квазио',
+ 'nn' => 'норвешки нинорск',
+ 'nnh' => 'нгиембун',
+ 'no' => 'норвешки',
+ 'nog' => 'ногајски',
+ 'non' => 'старонордиски',
+ 'nov' => 'новијал',
+ 'nqo' => 'нко',
+ 'nr' => 'јужен ндебеле',
+ 'nso' => 'северен сото',
+ 'nus' => 'нуер',
+ 'nv' => 'навахо',
+ 'nwc' => 'класичен неварски',
+ 'ny' => 'њанџа',
+ 'nym' => 'њамвези',
+ 'nyn' => 'њанколе',
+ 'nyo' => 'њоро',
+ 'nzi' => 'нзима',
+ 'oc' => 'окситански',
+ 'oj' => 'оџибва',
+ 'om' => 'оромо',
+ 'or' => 'орија',
+ 'os' => 'осетски',
+ 'osa' => 'осашки',
+ 'ota' => 'отомански турски',
+ 'pa' => 'пенџапски',
+ 'pag' => 'пангасинански',
+ 'pal' => 'средноперсиски',
+ 'pam' => 'пампанга',
+ 'pap' => 'папијаменто',
+ 'pau' => 'палауански',
+ 'pcd' => 'пикардски',
+ 'pdc' => 'пенсилваниски германски',
+ 'pdt' => 'менонитски долногермански',
+ 'peo' => 'староперсиски',
+ 'pfl' => 'фалечкогермански',
+ 'phn' => 'феникиски',
+ 'pi' => 'пали',
+ 'pl' => 'полски',
+ 'pms' => 'пиемонтски',
+ 'pnt' => 'понтски',
+ 'pon' => 'понпејски',
+ 'prg' => 'пруски',
+ 'pro' => 'старопровансалски',
+ 'ps' => 'паштунски',
+ 'pt' => 'португалски',
+ 'pt-pt' => 'португалски (во Европа)',
+ 'qu' => 'кечуански',
+ 'quc' => 'киче',
+ 'qug' => 'кичвански',
+ 'raj' => 'раџастански',
+ 'rap' => 'рапанујски',
+ 'rar' => 'раротонгански',
+ 'rgn' => 'ромањолски',
+ 'rif' => 'рифски',
+ 'rm' => 'реторомански',
+ 'rn' => 'рунди',
+ 'ro' => 'романски',
+ 'ro-md' => 'молдавски',
+ 'rof' => 'ромбо',
+ 'rom' => 'ромски',
+ 'rtm' => 'ротумански',
+ 'ru' => 'руски',
+ 'rue' => 'русински',
+ 'rug' => 'ровијански',
+ 'rup' => 'влашки',
+ 'rw' => 'руанда',
+ 'rwk' => 'руа',
+ 'sa' => 'санскрит',
+ 'sad' => 'сандаве',
+ 'sah' => 'јакутски',
+ 'sam' => 'самарјански арамејски',
+ 'saq' => 'самбуру',
+ 'sas' => 'сасачки',
+ 'sat' => 'сантали',
+ 'saz' => 'саураштра',
+ 'sba' => 'нгембеј',
+ 'sbp' => 'сангу',
+ 'sc' => 'сардински',
+ 'scn' => 'сицилијански',
+ 'sco' => 'шкотски германски',
+ 'sd' => 'синди',
+ 'sdc' => 'сасарски сардински',
+ 'se' => 'севернолапонски',
+ 'see' => 'сенека',
+ 'seh' => 'сена',
+ 'sei' => 'сери',
+ 'sel' => 'селкупски',
+ 'ses' => 'којраборо сени',
+ 'sg' => 'санго',
+ 'sga' => 'староирски',
+ 'sgs' => 'самогитски',
+ 'sh' => 'српскохрватски',
+ 'shi' => 'тачелхит',
+ 'shn' => 'шан',
+ 'shu' => 'чадски арапски',
+ 'si' => 'синхалски',
+ 'sid' => 'сидамо',
+ 'sk' => 'словачки',
+ 'sl' => 'словенечки',
+ 'sli' => 'долношлезиски',
+ 'sly' => 'селајарски',
+ 'sm' => 'самоански',
+ 'sma' => 'јужнолапонски',
+ 'smj' => 'лулски лапонски',
+ 'smn' => 'инарски лапонски',
+ 'sms' => 'сколтски лапонски',
+ 'sn' => 'шона',
+ 'snk' => 'сонинке',
+ 'so' => 'сомалиски',
+ 'sog' => 'зогдијански',
+ 'sq' => 'албански',
+ 'sr' => 'српски',
+ 'srn' => 'срански тонго',
+ 'srr' => 'серер',
+ 'ss' => 'свати',
+ 'ssy' => 'сахо',
+ 'st' => 'сесото',
+ 'stq' => 'затерландски фризиски',
+ 'su' => 'сундски',
+ 'suk' => 'сукума',
+ 'sus' => 'сусу',
+ 'sux' => 'сумерски',
+ 'sv' => 'шведски',
+ 'sw' => 'свахили',
+ 'swb' => 'коморијански',
+ 'swc' => 'конгоански свахили',
+ 'syc' => 'класичен сириски',
+ 'syr' => 'сириски',
+ 'szl' => 'шлезиски',
+ 'ta' => 'тамилски',
+ 'tcy' => 'тулу',
+ 'te' => 'телугу',
+ 'tem' => 'тимне',
+ 'teo' => 'тесо',
+ 'ter' => 'терено',
+ 'tet' => 'тетум',
+ 'tg' => 'таџикистански',
+ 'th' => 'тајландски',
+ 'ti' => 'тигриња',
+ 'tig' => 'тигре',
+ 'tiv' => 'тив',
+ 'tk' => 'туркменски',
+ 'tkl' => 'токелауански',
+ 'tkr' => 'цахурски',
+ 'tl' => 'тагалог',
+ 'tlh' => 'клингонски',
+ 'tli' => 'тлингит',
+ 'tly' => 'талишки',
+ 'tmh' => 'тамашек',
+ 'tn' => 'цвана',
+ 'to' => 'тонгански',
+ 'tog' => 'њаса тонга',
+ 'tpi' => 'ток писин',
+ 'tr' => 'турски',
+ 'tru' => 'туројо',
+ 'trv' => 'тароко',
+ 'ts' => 'цонга',
+ 'tsd' => 'цаконски',
+ 'tsi' => 'цимшијански',
+ 'tt' => 'татарски',
+ 'ttt' => 'татски',
+ 'tum' => 'тумбука',
+ 'tvl' => 'тувалуански',
+ 'tw' => 'тви',
+ 'twq' => 'тазавак',
+ 'ty' => 'тахитски',
+ 'tyv' => 'тувански',
+ 'tzm' => 'централно марокански тамазитски',
+ 'udm' => 'удмуртски',
+ 'ug' => 'ујгурски',
+ 'uga' => 'угаритски',
+ 'uk' => 'украински',
+ 'umb' => 'умбунду',
+ 'und' => 'непознат јазик',
+ 'ur' => 'урду',
+ 'uz' => 'узбекистански',
+ 'vai' => 'вај',
+ 've' => 'венда',
+ 'vec' => 'венетски',
+ 'vep' => 'вепшки',
+ 'vi' => 'виетнамски',
+ 'vls' => 'западнофламански',
+ 'vmf' => 'мајнскофранконски',
+ 'vo' => 'волапик',
+ 'vot' => 'вотски',
+ 'vro' => 'виру',
+ 'vun' => 'вунџо',
+ 'wa' => 'валонски',
+ 'wae' => 'валсер',
+ 'wal' => 'воламо',
+ 'war' => 'варајски',
+ 'was' => 'вашо',
+ 'wo' => 'волофски',
+ 'wuu' => 'ву',
+ 'xal' => 'калмички',
+ 'xh' => 'коса',
+ 'xmf' => 'мегрелски',
+ 'xog' => 'сога',
+ 'yao' => 'јао',
+ 'yap' => 'јапски',
+ 'yav' => 'јенгбен',
+ 'ybb' => 'јемба',
+ 'yi' => 'јидиш',
+ 'yo' => 'јорупски',
+ 'yrl' => 'њенгату',
+ 'yue' => 'кантонски',
+ 'za' => 'џуаншки',
+ 'zap' => 'запотечки',
+ 'zbl' => 'блиссимболи',
+ 'zea' => 'зеландски',
+ 'zen' => 'зенага',
+ 'zgh' => 'стандарден марокански тамазигтски',
+ 'zh' => 'кинески',
+ 'zh-hans' => 'поедноставен кинески',
+ 'zh-hant' => 'традиционален кинески',
+ 'zu' => 'зулу',
+ 'zun' => 'зуни',
+ 'zxx' => 'без лингвистичка содржина',
+ 'zza' => 'заза',
+);
+
+$currencyNames = array(
+ 'ADP' => 'Андорска Пезета',
+ 'AED' => 'Обединети Арапски Емирати Дирхам',
+ 'AFA' => 'Авгани (1927–2002)',
+ 'AFN' => 'Авганистански авгани',
+ 'ALL' => 'Албански Лек',
+ 'AMD' => 'Ермениски Драм',
+ 'ANG' => 'Холандски антилски гилдер',
+ 'AOA' => 'Анголска Кванза',
+ 'AOK' => 'Анголска Кванза (1977–1990)',
+ 'AON' => 'Анголска нова Кванза (1990–2000)',
+ 'ARP' => 'Аргентински Пезос (1983–1985)',
+ 'ARS' => 'Аргентински Пезос',
+ 'ATS' => 'Австралиски Шилинг',
+ 'AUD' => 'Австралиски долар',
+ 'AWG' => 'Арубиски флорин',
+ 'AZN' => 'Азербејџански манат',
+ 'BAD' => 'Босанско-Херцеговски Динар',
+ 'BAM' => 'Босанско-Херцеговска конвертибилна марка',
+ 'BBD' => 'Барбадоски долар',
+ 'BDT' => 'Бангладешка така',
+ 'BEC' => 'Белгиски Франк (конвертибилен)',
+ 'BEF' => 'Белгиски Франк',
+ 'BEL' => 'Белгиски Франк (финансиски)',
+ 'BGL' => 'Бугарски цврст лев',
+ 'BGN' => 'Бугарски лев',
+ 'BHD' => 'Бахреински Динар',
+ 'BIF' => 'Бурундиски Франк',
+ 'BMD' => 'Бермудски долар',
+ 'BND' => 'Брунејски долар',
+ 'BOB' => 'Боливиски боливиано',
+ 'BRL' => 'Бразилски реал',
+ 'BSD' => 'Бахамски долар',
+ 'BTN' => 'Бутански нгултрум',
+ 'BWP' => 'Боцванска Пула',
+ 'BYB' => 'Белоруска нова рубља (1994–1999)',
+ 'BYR' => 'Белоруска рубља',
+ 'BZD' => 'Белизиски Долар',
+ 'CAD' => 'Канадски долар',
+ 'CDF' => 'Конголски франк',
+ 'CHF' => 'Швајцарски Франк',
+ 'CLP' => 'Чилеански пезос',
+ 'CNY' => 'Кинески јуан',
+ 'COP' => 'Колумбиски Пезос',
+ 'CRC' => 'Костарикански колон',
+ 'CSK' => 'Чехословачка цврста корона',
+ 'CUC' => 'Кубански пезос (конвертибилен)',
+ 'CUP' => 'Кубански пезос',
+ 'CVE' => 'Зелено’ртски ескудо',
+ 'CYP' => 'Кипарска фунта',
+ 'CZK' => 'Чешка корона',
+ 'DEM' => 'Германска Марка',
+ 'DJF' => 'Џибути франк',
+ 'DKK' => 'Данска круна',
+ 'DOP' => 'Доминикански Пезос',
+ 'DZD' => 'Алжирски Динар',
+ 'EGP' => 'Египетска Фунта',
+ 'ERN' => 'Еритрејска Накфа',
+ 'ESP' => 'Шпанска Пезета',
+ 'ETB' => 'Етиописки Бир',
+ 'EUR' => 'Евро',
+ 'FIM' => 'Финска марка',
+ 'FJD' => 'Фиџиски долар',
+ 'FKP' => 'Фолкландска фунта',
+ 'FRF' => 'Француски франк',
+ 'GBP' => 'Британска Фунта',
+ 'GEL' => 'Грузиски лари',
+ 'GHC' => 'Ганајски Седи',
+ 'GHS' => 'Гански седи',
+ 'GIP' => 'Гибралтарска фунта',
+ 'GMD' => 'Гамбиски даласи',
+ 'GNF' => 'Гвинејски франк',
+ 'GRD' => 'Грчка драхма',
+ 'GTQ' => 'Гватемалски кветцал',
+ 'GWP' => 'Гвинејски Бисау пезос',
+ 'GYD' => 'Гвијански Долар',
+ 'HKD' => 'Хонгконшки долар',
+ 'HNL' => 'Хондурска лемпира',
+ 'HRD' => 'Хрватски динар',
+ 'HRK' => 'Хрватска Куна',
+ 'HTG' => 'Хаитски гурд',
+ 'HUF' => 'Унгарска форинта',
+ 'IDR' => 'Индонезиска рупија',
+ 'IEP' => 'Ирска фунта',
+ 'ILP' => 'Изрелска фунта',
+ 'ILS' => 'Израелски нов шекел',
+ 'INR' => 'Индијска рупија',
+ 'IQD' => 'Ирачки динар',
+ 'IRR' => 'Ирански риал',
+ 'ISK' => 'Исландска крона',
+ 'ITL' => 'Италијанска лира',
+ 'JMD' => 'Јамајкански долар',
+ 'JOD' => 'Јордански динар',
+ 'JPY' => 'Јапонски јен',
+ 'KES' => 'Кениски шилинг',
+ 'KGS' => 'Киргистански сом',
+ 'KHR' => 'Камбоџиски рел',
+ 'KMF' => 'Коморски долар',
+ 'KPW' => 'Северно корејски вон',
+ 'KRW' => 'Јужно корејски вон',
+ 'KWD' => 'Кувајтски динар',
+ 'KYD' => 'Долар на кајмански острови',
+ 'KZT' => 'Казахстанска тенга',
+ 'LAK' => 'Лаоски кип',
+ 'LBP' => 'Либанска фунта',
+ 'LKR' => 'Шриланканска рупија',
+ 'LRD' => 'Либериски долар',
+ 'LSL' => 'Лесотско лоти',
+ 'LTL' => 'Литваниска лита',
+ 'LTT' => 'Литваниски литаз',
+ 'LUF' => 'Луксембуршки франк',
+ 'LVL' => 'Латвијски лат',
+ 'LVR' => 'Латвијска рубља',
+ 'LYD' => 'Либијски динар',
+ 'MAD' => 'Марокански Дирхам',
+ 'MAF' => 'Марокански франк',
+ 'MDL' => 'Молдавски леу',
+ 'MGA' => 'Малагасиски ариари',
+ 'MKD' => 'Македонски денар',
+ 'MLF' => 'Малски франк',
+ 'MMK' => 'Мјанмарски киат',
+ 'MNT' => 'Монголиски тугрик',
+ 'MOP' => 'Макао патака',
+ 'MRO' => 'Мавританска угија',
+ 'MTL' => 'Малтешка лира',
+ 'MTP' => 'Малтешка фунта',
+ 'MUR' => 'Мавританска рупија',
+ 'MVR' => 'Малдивиска руфија',
+ 'MWK' => 'Малависка квача',
+ 'MXN' => 'Мексикански пезос',
+ 'MXP' => 'Мексикански сребрен пезос (1861–1992)',
+ 'MYR' => 'Малазиски рингит',
+ 'MZE' => 'Мозамбиско ескудо',
+ 'MZM' => 'Стар мозамбиски метикал',
+ 'MZN' => 'Мозамбиски метикал',
+ 'NAD' => 'Намибиски долар',
+ 'NGN' => 'Нигериска наира',
+ 'NIC' => 'Никарагванска кордоба (1988–1991)',
+ 'NIO' => 'Никарагванска кордоба',
+ 'NLG' => 'Холандски гилдер',
+ 'NOK' => 'Норвешка круна',
+ 'NPR' => 'Непалска рупија',
+ 'NZD' => 'Новозеландски долар',
+ 'OMR' => 'Омански риал',
+ 'PAB' => 'Панамска балбоа',
+ 'PEN' => 'Перуански нов сол',
+ 'PES' => 'Перуански сол',
+ 'PGK' => 'Папуа новогвинејска кина',
+ 'PHP' => 'Филипински пезос',
+ 'PKR' => 'Пакистанска рупија',
+ 'PLN' => 'Полска злота',
+ 'PLZ' => 'Полска злота (1950–1995)',
+ 'PTE' => 'Португалско ескудо',
+ 'PYG' => 'Парагвајска гуарана',
+ 'QAR' => 'Катарски риал',
+ 'ROL' => 'Романска леи (1952–2006)',
+ 'RON' => 'Романска леи',
+ 'RSD' => 'Српски динар',
+ 'RUB' => 'Руска рубља',
+ 'RUR' => 'Руска рубља (1991–1998)',
+ 'RWF' => 'Руандски франк',
+ 'SAR' => 'Саудиски ријал',
+ 'SBD' => 'Соломонски долар',
+ 'SCR' => 'Сејшелска рупија',
+ 'SDD' => 'Стар судански динар',
+ 'SDG' => 'Суданска фунта',
+ 'SDP' => 'Стара суданска фунта',
+ 'SEK' => 'Шведска круна',
+ 'SGD' => 'Сингапурски долар',
+ 'SHP' => 'Фунта на Света Елена',
+ 'SIT' => 'Словенечки толар',
+ 'SKK' => 'Словачка круна',
+ 'SLL' => 'Сиералеонско леоне',
+ 'SOS' => 'Сомалијски шилинг',
+ 'SRD' => 'Суринамски долар',
+ 'SRG' => 'Суринамски гилдер',
+ 'SSP' => 'Јужносуданска фунта',
+ 'STD' => 'Добра на Сао Томе и Принсипе',
+ 'SUR' => 'Советска рубља',
+ 'SVC' => 'Салвадорски колон',
+ 'SYP' => 'Сиријска фунта',
+ 'SZL' => 'Свазилендски лиланген',
+ 'THB' => 'Таи бат',
+ 'TJR' => 'Таџикистанска рубља',
+ 'TJS' => 'Таџикистански сомони',
+ 'TMM' => 'Туркменистански манат',
+ 'TMT' => 'Туркменист. манат',
+ 'TND' => 'Тунизиски динар',
+ 'TOP' => 'Тонганска панга',
+ 'TPE' => 'Тиморски ескудо',
+ 'TRL' => 'Турска лира (1922–2005)',
+ 'TRY' => 'Турска лира',
+ 'TTD' => 'Долар на Тринидад и Тобаго',
+ 'TWD' => 'Тајвански нов долар',
+ 'TZS' => 'Танзаниски шилинг',
+ 'UAH' => 'Украинска хривнија',
+ 'UGS' => 'Угандиски шилинг (1966–1987)',
+ 'UGX' => 'Угандиски шилинг',
+ 'USD' => 'Американски долар',
+ 'USN' => 'САД долар (Next day)',
+ 'USS' => 'САД долар (Same day)',
+ 'UYP' => 'Уругвајски пезос (1975–1993)',
+ 'UYU' => 'Уругвајски пезос',
+ 'UZS' => 'Узбекистански сом',
+ 'VEB' => 'Венецуелски боливар (1871–2008)',
+ 'VEF' => 'Венецуелски боливар',
+ 'VND' => 'Виетнамски донг',
+ 'VUV' => 'Ванатски вату',
+ 'WST' => 'Самоанска тала',
+ 'XAF' => 'XAF',
+ 'XCD' => 'Источно карибиски долар',
+ 'XOF' => 'XOF',
+ 'XPF' => 'ЦФП франк',
+ 'XXX' => 'Непозната валута',
+ 'YDD' => 'Јеменски динар',
+ 'YER' => 'Јеменски риал',
+ 'YUD' => 'Југословенски динар',
+ 'YUN' => 'Југословенски конвертибилен динар',
+ 'ZAL' => 'Јужно афрички ранд(финансиски)',
+ 'ZAR' => 'Јужно афрички ранд',
+ 'ZMK' => 'Замбијска квача (1968–2012)',
+ 'ZMW' => 'Замбијска квача',
+ 'ZRN' => 'Заирско новозаире',
+ 'ZRZ' => 'Заирско заире',
+ 'ZWD' => 'Зимбабвиски долар',
+);
+
+$currencySymbols = array(
+ 'AED' => 'AED',
+ 'AFN' => 'AFN',
+ 'ALL' => 'ALL',
+ 'AMD' => 'AMD',
+ 'ANG' => 'ANG',
+ 'AOA' => 'AOA',
+ 'ARS' => 'ARS',
+ 'AUD' => 'AUD',
+ 'AWG' => 'AWG',
+ 'AZN' => 'AZN',
+ 'BAM' => 'BAM',
+ 'BBD' => 'BBD',
+ 'BDT' => 'BDT',
+ 'BGN' => 'BGN',
+ 'BHD' => 'BHD',
+ 'BIF' => 'BIF',
+ 'BMD' => 'BMD',
+ 'BND' => 'BND',
+ 'BOB' => 'BOB',
+ 'BRL' => 'R$',
+ 'BSD' => 'BSD',
+ 'BTN' => 'BTN',
+ 'BWP' => 'BWP',
+ 'BYR' => 'BYR',
+ 'BZD' => 'BZD',
+ 'CAD' => 'CA$',
+ 'CDF' => 'CDF',
+ 'CHF' => 'CHF',
+ 'CLP' => 'CLP',
+ 'CNY' => 'CNY',
+ 'COP' => 'COP',
+ 'CRC' => 'CRC',
+ 'CUC' => 'CUC',
+ 'CUP' => 'CUP',
+ 'CVE' => 'CVE',
+ 'CZK' => 'CZK',
+ 'DJF' => 'DJF',
+ 'DKK' => 'DKK',
+ 'DOP' => 'DOP',
+ 'DZD' => 'DZD',
+ 'EGP' => 'EGP',
+ 'ERN' => 'ERN',
+ 'ETB' => 'ETB',
+ 'EUR' => '€',
+ 'FJD' => 'FJD',
+ 'FKP' => 'FKP',
+ 'GBP' => 'GBP',
+ 'GEL' => 'GEL',
+ 'GHS' => 'GHS',
+ 'GIP' => 'GIP',
+ 'GMD' => 'GMD',
+ 'GNF' => 'GNF',
+ 'GTQ' => 'GTQ',
+ 'GYD' => 'GYD',
+ 'HKD' => 'HKD',
+ 'HNL' => 'HNL',
+ 'HRK' => 'HRK',
+ 'HTG' => 'HTG',
+ 'HUF' => 'HUF',
+ 'IDR' => 'IDR',
+ 'ILS' => 'ILS',
+ 'INR' => 'INR',
+ 'IQD' => 'IQD',
+ 'IRR' => 'IRR',
+ 'ISK' => 'ISK',
+ 'JMD' => 'JMD',
+ 'JOD' => 'JOD',
+ 'JPY' => 'JPY',
+ 'KES' => 'KES',
+ 'KGS' => 'KGS',
+ 'KHR' => 'KHR',
+ 'KMF' => 'KMF',
+ 'KPW' => 'KPW',
+ 'KRW' => 'KRW',
+ 'KWD' => 'KWD',
+ 'KYD' => 'KYD',
+ 'KZT' => 'KZT',
+ 'LAK' => 'LAK',
+ 'LBP' => 'LBP',
+ 'LKR' => 'LKR',
+ 'LRD' => 'LRD',
+ 'LTL' => 'LTL',
+ 'LVL' => 'LVL',
+ 'LYD' => 'LYD',
+ 'MAD' => 'MAD',
+ 'MDL' => 'MDL',
+ 'MGA' => 'MGA',
+ 'MKD' => 'ден',
+ 'MMK' => 'MMK',
+ 'MNT' => 'MNT',
+ 'MOP' => 'MOP',
+ 'MRO' => 'MRO',
+ 'MUR' => 'MUR',
+ 'MVR' => 'MVR',
+ 'MWK' => 'MWK',
+ 'MXN' => 'MX$',
+ 'MYR' => 'MYR',
+ 'MZN' => 'MZN',
+ 'NAD' => 'NAD',
+ 'NGN' => 'NGN',
+ 'NIO' => 'NIO',
+ 'NOK' => 'NOK',
+ 'NPR' => 'NPR',
+ 'NZD' => 'NZD',
+ 'OMR' => 'OMR',
+ 'PAB' => 'PAB',
+ 'PEN' => 'PEN',
+ 'PGK' => 'PGK',
+ 'PHP' => 'PHP',
+ 'PKR' => 'PKR',
+ 'PLN' => 'PLN',
+ 'PYG' => 'PYG',
+ 'QAR' => 'QAR',
+ 'RON' => 'RON',
+ 'RSD' => 'RSD',
+ 'RUB' => 'RUB',
+ 'RWF' => 'RWF',
+ 'SAR' => 'SAR',
+ 'SBD' => 'SBD',
+ 'SCR' => 'SCR',
+ 'SDG' => 'SDG',
+ 'SEK' => 'SEK',
+ 'SGD' => 'SGD',
+ 'SHP' => 'SHP',
+ 'SLL' => 'SLL',
+ 'SOS' => 'SOS',
+ 'SRD' => 'SRD',
+ 'SSP' => 'SSP',
+ 'STD' => 'STD',
+ 'SYP' => 'SYP',
+ 'SZL' => 'SZL',
+ 'THB' => 'THB',
+ 'TJS' => 'TJS',
+ 'TMT' => 'TMT',
+ 'TND' => 'TND',
+ 'TOP' => 'TOP',
+ 'TRY' => 'TRY',
+ 'TTD' => 'TTD',
+ 'TWD' => 'TWD',
+ 'TZS' => 'TZS',
+ 'UAH' => 'UAH',
+ 'UGX' => 'UGX',
+ 'USD' => 'US$',
+ 'UYU' => 'UYU',
+ 'UZS' => 'UZS',
+ 'VEF' => 'VEF',
+ 'VND' => 'VND',
+ 'VUV' => 'VUV',
+ 'WST' => 'WST',
+ 'XAF' => 'FCFA',
+ 'XCD' => 'EC$',
+ 'XOF' => 'CFA',
+ 'XPF' => 'CFPF',
+ 'YER' => 'YER',
+ 'ZAR' => 'ZAR',
+ 'ZMW' => 'ZMW',
+);
+
+$countryNames = array(
+ 'AC' => 'Остров Асенсион',
+ 'AD' => 'Андора',
+ 'AE' => 'Обединети Арапски Емирати',
+ 'AF' => 'Авганистан',
+ 'AG' => 'Антигва и Барбуда',
+ 'AI' => 'Ангвила',
+ 'AL' => 'Албанија',
+ 'AM' => 'Ерменија',
+ 'AN' => 'Холандски Антили',
+ 'AO' => 'Ангола',
+ 'AQ' => 'Антарктик',
+ 'AR' => 'Аргентина',
+ 'AS' => 'Американска Самоа',
+ 'AT' => 'Австрија',
+ 'AU' => 'Австралија',
+ 'AW' => 'Аруба',
+ 'AX' => 'Оландски острови',
+ 'AZ' => 'Азербејџан',
+ 'BA' => 'Босна и Херцеговина',
+ 'BB' => 'Барбадос',
+ 'BD' => 'Бангладеш',
+ 'BE' => 'Белгија',
+ 'BF' => 'Буркина Фасо',
+ 'BG' => 'Бугарија',
+ 'BH' => 'Бахреин',
+ 'BI' => 'Бурунди',
+ 'BJ' => 'Бенин',
+ 'BL' => 'Свети Вартоломеј',
+ 'BM' => 'Бермуди',
+ 'BN' => 'Брунеј',
+ 'BO' => 'Боливија',
+ 'BQ' => 'Карипска Холандија',
+ 'BR' => 'Бразил',
+ 'BS' => 'Бахами',
+ 'BT' => 'Бутан',
+ 'BV' => 'Остров Буве',
+ 'BW' => 'Боцвана',
+ 'BY' => 'Белорусија',
+ 'BZ' => 'Белизе',
+ 'CA' => 'Канада',
+ 'CC' => 'Кокосови (Килиншки) Острови',
+ 'CD' => 'Конго - Киншаса',
+ 'CF' => 'Централноафриканска Република',
+ 'CG' => 'Конго - Бразавил',
+ 'CH' => 'Швајцарија',
+ 'CI' => 'Брегот на Слоновата Коска',
+ 'CK' => 'Кукови Острови',
+ 'CL' => 'Чиле',
+ 'CM' => 'Камерун',
+ 'CN' => 'Кина',
+ 'CO' => 'Колумбија',
+ 'CP' => 'Остров Клипертон',
+ 'CR' => 'Костарика',
+ 'CU' => 'Куба',
+ 'CV' => 'Зелен ’Рт',
+ 'CW' => 'Курасао',
+ 'CX' => 'Божиќен Остров',
+ 'CY' => 'Кипар',
+ 'CZ' => 'Република Чешка',
+ 'DE' => 'Германија',
+ 'DG' => 'Диего Гарсија',
+ 'DJ' => 'Џибути',
+ 'DK' => 'Данска',
+ 'DM' => 'Доминика',
+ 'DO' => 'Доминиканска Република',
+ 'DZ' => 'Алжир',
+ 'EA' => 'Сеута и Мелиља',
+ 'EC' => 'Еквадор',
+ 'EE' => 'Естонија',
+ 'EG' => 'Египет',
+ 'EH' => 'Западна Сахара',
+ 'ER' => 'Еритреја',
+ 'ES' => 'Шпанија',
+ 'ET' => 'Етиопија',
+ 'EU' => 'Европска унија',
+ 'FI' => 'Финска',
+ 'FJ' => 'Фиџи',
+ 'FK' => 'Фолкландски Острови',
+ 'FM' => 'Микронезија',
+ 'FO' => 'Фарски Острови',
+ 'FR' => 'Франција',
+ 'GA' => 'Габон',
+ 'GB' => 'ОК',
+ 'GD' => 'Гренада',
+ 'GE' => 'Грузија',
+ 'GF' => 'Француска Гвајана',
+ 'GG' => 'Гернзи',
+ 'GH' => 'Гана',
+ 'GI' => 'Гибралтар',
+ 'GL' => 'Гренланд',
+ 'GM' => 'Гамбија',
+ 'GN' => 'Гвинеја',
+ 'GP' => 'Гвадалупе',
+ 'GQ' => 'Екваторска Гвинеја',
+ 'GR' => 'Грција',
+ 'GS' => 'Јужна Џорџија и Јужни Сендвички Острови',
+ 'GT' => 'Гватемала',
+ 'GU' => 'Гвам',
+ 'GW' => 'Гвинеја-Бисау',
+ 'GY' => 'Гвајана',
+ 'HK' => 'Хонг Конг',
+ 'HM' => 'Остров Херд и Острови Макдоналд',
+ 'HN' => 'Хондурас',
+ 'HR' => 'Хрватска',
+ 'HT' => 'Хаити',
+ 'HU' => 'Унгарија',
+ 'IC' => 'Канарски Острови',
+ 'ID' => 'Индонезија',
+ 'IE' => 'Ирска',
+ 'IL' => 'Израел',
+ 'IM' => 'Остров Ман',
+ 'IN' => 'Индија',
+ 'IO' => 'Британска Индоокеанска Територија',
+ 'IQ' => 'Ирак',
+ 'IR' => 'Иран',
+ 'IS' => 'Исланд',
+ 'IT' => 'Италија',
+ 'JE' => 'Џерси',
+ 'JM' => 'Јамајка',
+ 'JO' => 'Јордан',
+ 'JP' => 'Јапонија',
+ 'KE' => 'Кенија',
+ 'KG' => 'Киргистан',
+ 'KH' => 'Камбоџа',
+ 'KI' => 'Кирибати',
+ 'KM' => 'Коморски Острови',
+ 'KN' => 'Свети Кристофер и Невис',
+ 'KP' => 'Северна Кореја',
+ 'KR' => 'Јужна Кореја',
+ 'KW' => 'Кувајт',
+ 'KY' => 'Кајмански Острови',
+ 'KZ' => 'Казахстан',
+ 'LA' => 'Лаос',
+ 'LB' => 'Либан',
+ 'LC' => 'Света Луција',
+ 'LI' => 'Лихтенштајн',
+ 'LK' => 'Шри Ланка',
+ 'LR' => 'Либерија',
+ 'LS' => 'Лесото',
+ 'LT' => 'Литванија',
+ 'LU' => 'Луксембург',
+ 'LV' => 'Латвија',
+ 'LY' => 'Либија',
+ 'MA' => 'Мароко',
+ 'MC' => 'Монако',
+ 'MD' => 'Молдавија',
+ 'ME' => 'Црна Гора',
+ 'MF' => 'Сент Мартин',
+ 'MG' => 'Мадагаскар',
+ 'MH' => 'Маршалски Острови',
+ 'MK' => 'Македонија',
+ 'ML' => 'Мали',
+ 'MM' => 'Мјанмар (Бурма)',
+ 'MN' => 'Монголија',
+ 'MO' => 'Макао',
+ 'MP' => 'Северни Маријански Острови',
+ 'MQ' => 'Мартиник',
+ 'MR' => 'Мавританија',
+ 'MS' => 'Монсерат',
+ 'MT' => 'Малта',
+ 'MU' => 'Маврициус',
+ 'MV' => 'Малдиви',
+ 'MW' => 'Малави',
+ 'MX' => 'Мексико',
+ 'MY' => 'Малезија',
+ 'MZ' => 'Мозамбик',
+ 'NA' => 'Намибија',
+ 'NC' => 'Нова Каледонија',
+ 'NE' => 'Нигер',
+ 'NF' => 'Норфолшки Остров',
+ 'NG' => 'Нигерија',
+ 'NI' => 'Никарагва',
+ 'NL' => 'Холандија',
+ 'NO' => 'Норвешка',
+ 'NP' => 'Непал',
+ 'NR' => 'Науру',
+ 'NU' => 'Ниуе',
+ 'NZ' => 'Нов Зеланд',
+ 'OM' => 'Оман',
+ 'PA' => 'Панама',
+ 'PE' => 'Перу',
+ 'PF' => 'Француска Полинезија',
+ 'PG' => 'Папуа Нова Гвинеја',
+ 'PH' => 'Филипини',
+ 'PK' => 'Пакистан',
+ 'PL' => 'Полска',
+ 'PM' => 'Сент Пјер и Микелан',
+ 'PN' => 'Питкернски Острови',
+ 'PR' => 'Порторико',
+ 'PS' => 'Палестина',
+ 'PT' => 'Португалија',
+ 'PW' => 'Палау',
+ 'PY' => 'Парагвај',
+ 'QA' => 'Катар',
+ 'QO' => 'Зависни земји во Океанија',
+ 'RE' => 'Ријунион',
+ 'RO' => 'Романија',
+ 'RS' => 'Србија',
+ 'RU' => 'Русија',
+ 'RW' => 'Руанда',
+ 'SA' => 'Саудиска Арабија',
+ 'SB' => 'Соломонски Острови',
+ 'SC' => 'Сејшели',
+ 'SD' => 'Судан',
+ 'SE' => 'Шведска',
+ 'SG' => 'Сингапур',
+ 'SH' => 'Света Елена',
+ 'SI' => 'Словенија',
+ 'SJ' => 'Свалбард и Жан Мејен',
+ 'SK' => 'Словачка',
+ 'SL' => 'Сиера Леоне',
+ 'SM' => 'Сан Марино',
+ 'SN' => 'Сенегал',
+ 'SO' => 'Сомалија',
+ 'SR' => 'Суринам',
+ 'SS' => 'Јужен Судан',
+ 'ST' => 'Сао Томе и Принсипе',
+ 'SV' => 'Ел Салвадор',
+ 'SX' => 'Свети Мартин',
+ 'SY' => 'Сирија',
+ 'SZ' => 'Свазиленд',
+ 'TA' => 'Тристан да Куња',
+ 'TC' => 'Острови Туркс и Кајкос',
+ 'TD' => 'Чад',
+ 'TF' => 'Француски Јужни територии',
+ 'TG' => 'Того',
+ 'TH' => 'Тајланд',
+ 'TJ' => 'Таџикистан',
+ 'TK' => 'Токелау',
+ 'TL' => 'Источен Тимор (Тимор Лесте)',
+ 'TM' => 'Туркменистан',
+ 'TN' => 'Тунис',
+ 'TO' => 'Тонга',
+ 'TR' => 'Турција',
+ 'TT' => 'Тринидад и Тобаго',
+ 'TV' => 'Тувалу',
+ 'TW' => 'Тајван',
+ 'TZ' => 'Танзанија',
+ 'UA' => 'Украина',
+ 'UG' => 'Уганда',
+ 'UM' => 'Американски територии во Пацификот',
+ 'US' => 'САД',
+ 'UY' => 'Уругвај',
+ 'UZ' => 'Узбекистан',
+ 'VA' => 'Ватикан',
+ 'VC' => 'Свети Винсент и Гренадините',
+ 'VE' => 'Венецуела',
+ 'VG' => 'Британски Девствени Острови',
+ 'VI' => 'Американски Девствени Острови',
+ 'VN' => 'Виетнам',
+ 'VU' => 'Вануату',
+ 'WF' => 'Волис и Футуна',
+ 'WS' => 'Самоа',
+ 'XK' => 'Косово',
+ 'YE' => 'Јемен',
+ 'YT' => 'Мајот',
+ 'ZA' => 'Јужноафриканска Република',
+ 'ZM' => 'Замбија',
+ 'ZW' => 'Зимбабве',
+);
+
+$timeUnits = array(
+ 'day-future-one' => 'за {0} ден',
+ 'day-future-other' => 'за {0} дена',
+ 'day-narrow-future-one' => 'за {0} ден',
+ 'day-narrow-future-other' => 'за {0} дена',
+ 'day-narrow-past-one' => 'пред {0} ден',
+ 'day-narrow-past-other' => 'пред {0} дена',
+ 'day-one' => '{0} ден',
+ 'day-other' => '{0} дена',
+ 'day-past-one' => 'пред {0} ден',
+ 'day-past-other' => 'пред {0} дена',
+ 'day-short-future-one' => 'за {0} ден',
+ 'day-short-future-other' => 'за {0} дена',
+ 'day-short-past-one' => 'пред {0} ден',
+ 'day-short-past-other' => 'пред {0} дена',
+ 'hour-future-one' => 'за {0} час',
+ 'hour-future-other' => 'за {0} часа',
+ 'hour-narrow-future-one' => 'за {0} час',
+ 'hour-narrow-future-other' => 'за {0} часа',
+ 'hour-narrow-past-one' => 'пред {0} час',
+ 'hour-narrow-past-other' => 'пред {0} часа',
+ 'hour-one' => '{0} час',
+ 'hour-other' => '{0} часа',
+ 'hour-past-one' => 'пред {0} час',
+ 'hour-past-other' => 'пред {0} часа',
+ 'hour-short-future-one' => 'за {0} час',
+ 'hour-short-future-other' => 'за {0} часа',
+ 'hour-short-past-one' => 'пред {0} час',
+ 'hour-short-past-other' => 'пред {0} часа',
+ 'microsecond-one' => '{0} микросекунда',
+ 'microsecond-other' => '{0} микросекунди',
+ 'millisecond-one' => '{0} милисекунда',
+ 'millisecond-other' => '{0} милисекунди',
+ 'minute-future-one' => 'за {0} минута',
+ 'minute-future-other' => 'за {0} минути',
+ 'minute-narrow-future-one' => 'за {0} минута',
+ 'minute-narrow-future-other' => 'за {0} минути',
+ 'minute-narrow-past-one' => 'пред {0} минута',
+ 'minute-narrow-past-other' => 'пред {0} минути',
+ 'minute-one' => '{0} минута',
+ 'minute-other' => '{0} минути',
+ 'minute-past-one' => 'пред {0} минута',
+ 'minute-past-other' => 'пред {0} минути',
+ 'minute-short-future-one' => 'за {0} минута',
+ 'minute-short-future-other' => 'за {0} минути',
+ 'minute-short-past-one' => 'пред {0} минута',
+ 'minute-short-past-other' => 'пред {0} минути',
+ 'month-future-one' => 'за {0} месец',
+ 'month-future-other' => 'за {0} месеци',
+ 'month-narrow-future-one' => 'за {0} месец',
+ 'month-narrow-future-other' => 'за {0} месеци',
+ 'month-narrow-past-one' => 'пред {0} месец',
+ 'month-narrow-past-other' => 'пред {0} месеци',
+ 'month-one' => '{0} месец',
+ 'month-other' => '{0} месеци',
+ 'month-past-one' => 'пред {0} месец',
+ 'month-past-other' => 'пред {0} месеци',
+ 'month-short-future-one' => 'за {0} месец',
+ 'month-short-future-other' => 'за {0} месеци',
+ 'month-short-past-one' => 'пред {0} месец',
+ 'month-short-past-other' => 'пред {0} месеци',
+ 'nanosecond-one' => '{0} наносекунда',
+ 'nanosecond-other' => '{0} наносекунди',
+ 'quarter-future-one' => 'за {0} тромесечје',
+ 'quarter-future-other' => 'за {0} тромесечја',
+ 'quarter-narrow-future-one' => 'за {0} тромесечја',
+ 'quarter-narrow-future-other' => 'за {0} тромесечја',
+ 'quarter-narrow-past-one' => 'пред {0} тромесечја',
+ 'quarter-narrow-past-other' => 'пред {0} тромесечја',
+ 'quarter-past-one' => 'пред {0} тромесечје',
+ 'quarter-past-other' => 'пред {0} тромесечја',
+ 'quarter-short-future-one' => 'за {0} тромесечје',
+ 'quarter-short-future-other' => 'за {0} тромесечја',
+ 'quarter-short-past-one' => 'пред {0} тромесечје',
+ 'quarter-short-past-other' => 'пред {0} тромесечја',
+ 'second-future-one' => 'за {0} секунда',
+ 'second-future-other' => 'за {0} секунди',
+ 'second-narrow-future-one' => 'за {0} секунда',
+ 'second-narrow-future-other' => 'за {0} секунди',
+ 'second-narrow-past-one' => 'пред {0} секунда',
+ 'second-narrow-past-other' => 'пред {0} секунди',
+ 'second-one' => '{0} секунда',
+ 'second-other' => '{0} секунди',
+ 'second-past-one' => 'пред {0} секунда',
+ 'second-past-other' => 'пред {0} секунди',
+ 'second-short-future-one' => 'за {0} секунда',
+ 'second-short-future-other' => 'за {0} секунди',
+ 'second-short-past-one' => 'пред {0} секунда',
+ 'second-short-past-other' => 'пред {0} секунди',
+ 'week-future-one' => 'за {0} седмица',
+ 'week-future-other' => 'за {0} седмици',
+ 'week-narrow-future-one' => 'за {0} седмица',
+ 'week-narrow-future-other' => 'за {0} седмици',
+ 'week-narrow-past-one' => 'пред {0} седмица',
+ 'week-narrow-past-other' => 'пред {0} седмици',
+ 'week-one' => '{0} седмица',
+ 'week-other' => '{0} седмици',
+ 'week-past-one' => 'пред {0} седмица',
+ 'week-past-other' => 'пред {0} седмици',
+ 'week-short-future-one' => 'за {0} седмица',
+ 'week-short-future-other' => 'за {0} седмици',
+ 'week-short-past-one' => 'пред {0} седмица',
+ 'week-short-past-other' => 'пред {0} седмици',
+ 'year-future-one' => 'за {0} година',
+ 'year-future-other' => 'за {0} години',
+ 'year-narrow-future-one' => 'За {0} години',
+ 'year-narrow-future-other' => 'За {0} години',
+ 'year-narrow-past-one' => 'Пред {0} години',
+ 'year-narrow-past-other' => 'Пред {0} години',
+ 'year-one' => '{0} година',
+ 'year-other' => '{0} години',
+ 'year-past-one' => 'пред {0} година',
+ 'year-past-other' => 'пред {0} години',
+ 'year-short-future-one' => 'за {0} година',
+ 'year-short-future-other' => 'за {0} години',
+ 'year-short-past-one' => 'пред {0} година',
+ 'year-short-past-other' => 'пред {0} години',
+);
diff --git a/MLEB/cldr/CldrNames/CldrNamesMl.php b/MLEB/cldr/CldrNames/CldrNamesMl.php
new file mode 100644
index 00000000..a2e8d9ba
--- /dev/null
+++ b/MLEB/cldr/CldrNames/CldrNamesMl.php
@@ -0,0 +1,1334 @@
+<?php
+
+$languageNames = array(
+ 'aa' => 'അഫാർ',
+ 'ab' => 'അബ്‌ഖാസിയൻ',
+ 'ace' => 'അചിനീസ്',
+ 'ach' => 'അകോലി',
+ 'ada' => 'അഡാങ്ഗമി',
+ 'ady' => 'അഡൈഗേ',
+ 'ae' => 'അവസ്റ്റാൻ',
+ 'af' => 'ആഫ്രിക്കാൻസ്',
+ 'afh' => 'ആഫ്രിഹിലി',
+ 'agq' => 'ആഘേം',
+ 'ain' => 'അയിനു',
+ 'ak' => 'അകാൻ‌',
+ 'akk' => 'അക്കാഡിയൻ',
+ 'ale' => 'അലൈട്ട്',
+ 'alt' => 'തെക്കൻ അൾത്തായി',
+ 'am' => 'അംഹാരിക്',
+ 'an' => 'അരഗോണീസ്',
+ 'ang' => 'പഴയ ഇംഗ്ലീഷ്',
+ 'anp' => 'ആൻഗിക',
+ 'ar' => 'അറബിക്',
+ 'ar-001' => 'ആധുനിക സ്റ്റാൻഡേർഡ് അറബിക്',
+ 'arc' => 'അരമായഭാഷ',
+ 'arn' => 'മാപുചി',
+ 'arp' => 'അരപാഹോ',
+ 'arw' => 'അറാവക്',
+ 'as' => 'ആസ്സാമീസ്',
+ 'asa' => 'ആസു',
+ 'ast' => 'ഓസ്‌ട്രിയൻ',
+ 'av' => 'അവാരിക്',
+ 'awa' => 'അവധി',
+ 'ay' => 'അയ്മാറ',
+ 'az' => 'അസർബൈജാനി',
+ 'ba' => 'ബഷ്ഖിർ',
+ 'bal' => 'ബലൂചി',
+ 'ban' => 'ബാലിനീസ്',
+ 'bas' => 'ബസ',
+ 'bax' => 'ബാമുൻ',
+ 'bbj' => 'ഘോമാല',
+ 'be' => 'ബെലാറുഷ്യൻ',
+ 'bej' => 'ബേജ',
+ 'bem' => 'ബേംബ',
+ 'bez' => 'ബെനാ',
+ 'bfd' => 'ബാഫട്ട്',
+ 'bg' => 'ബൾഗേറിയൻ',
+ 'bho' => 'ഭോജ്‌പൂരി',
+ 'bi' => 'ബിസ്‌ലാമ',
+ 'bik' => 'ബികോൽ',
+ 'bin' => 'ബിനി',
+ 'bkm' => 'കോം',
+ 'bla' => 'സിക്സിക',
+ 'bm' => 'ബംബാറ',
+ 'bn' => 'ബംഗാളി',
+ 'bo' => 'ടിബറ്റൻ',
+ 'br' => 'ബ്രെട്ടൺ',
+ 'bra' => 'ബ്രജ്',
+ 'brx' => 'ബോഡോ',
+ 'bs' => 'ബോസ്നിയൻ',
+ 'bss' => 'അക്കൂസ്',
+ 'bua' => 'ബുറിയത്ത്',
+ 'bug' => 'ബുഗിനീസ്',
+ 'bum' => 'ബുളു',
+ 'byn' => 'ബ്ലിൻ',
+ 'byv' => 'മെഡുംബ',
+ 'ca' => 'കറ്റാലാൻ',
+ 'cad' => 'കാഡോ',
+ 'car' => 'കാരിബ്',
+ 'cay' => 'കയൂഗ',
+ 'cch' => 'അറ്റ്സാം',
+ 'ce' => 'ചെചൻ',
+ 'ceb' => 'സെബുവാനോ',
+ 'cgg' => 'ചിഗ',
+ 'ch' => 'കമോറോ',
+ 'chb' => 'ചിബ്ച',
+ 'chg' => 'ചഗതൈ',
+ 'chk' => 'ചൂകീസ്',
+ 'chm' => 'മാരി',
+ 'chn' => 'ചിനൂഗ്-ജാർഗൺ',
+ 'cho' => 'ചോക്റ്റാവ്',
+ 'chp' => 'ചിപേവ്യൻ',
+ 'chr' => 'ഷെരോക്കി',
+ 'chy' => 'ചിയേന്നേ',
+ 'ckb' => 'സൊറാനി കുർദിഷ്',
+ 'co' => 'കോർസിക്കൻ',
+ 'cop' => 'കോപ്റ്റിക്',
+ 'cr' => 'ക്രീ',
+ 'crh' => 'ക്രിമിയൻ ടർക്കിഷ്',
+ 'cs' => 'ചെക്ക്',
+ 'csb' => 'കാഷുബിയാൻ',
+ 'cu' => 'ചർച്ച് സ്ലാവിക്',
+ 'cv' => 'ചുവാഷ്',
+ 'cy' => 'വെൽഷ്',
+ 'da' => 'ഡാനിഷ്',
+ 'dak' => 'ഡകോട്ട',
+ 'dar' => 'ഡർഗ്വാ',
+ 'dav' => 'തൈത',
+ 'de' => 'ജർമ്മൻ',
+ 'de-at' => 'ഓസ്‌ട്രിയൻ ജർമൻ',
+ 'de-ch' => 'സ്വിസ് ഹൈ ജർമൻ',
+ 'del' => 'ദലവാരെ',
+ 'den' => 'സ്ലേവ്',
+ 'dgr' => 'ഡോഗ്രിബ്',
+ 'din' => 'ദിൻക',
+ 'dje' => 'സാർമ്മ',
+ 'doi' => 'ഡോഗ്രി',
+ 'dsb' => 'ലോവർ സോർബിയൻ',
+ 'dua' => 'ദ്വാല',
+ 'dum' => 'മദ്ധ്യ ഡച്ച്',
+ 'dv' => 'ദിവെഹി',
+ 'dyo' => 'യോല-ഫോന്യി',
+ 'dyu' => 'ദ്വൈല',
+ 'dz' => 'സോങ്ക',
+ 'dzg' => 'ഡാസാഗ',
+ 'ebu' => 'എംബു',
+ 'ee' => 'ഇവ്',
+ 'efi' => 'എഫിക്',
+ 'egy' => 'പ്രാചീന ഈജിപ്ഷ്യൻ',
+ 'eka' => 'എകാജുക്',
+ 'el' => 'ഗ്രീക്ക്',
+ 'elx' => 'എലാമൈറ്റ്',
+ 'en' => 'ഇംഗ്ലീഷ്',
+ 'en-au' => 'ഓസ്‌ട്രേലിയൻ ഇംഗ്ലീഷ്',
+ 'en-ca' => 'കനേഡിയൻ ഇംഗ്ലീഷ്',
+ 'en-gb' => 'ബ്രിട്ടീഷ് ഇംഗ്ലീഷ്',
+ 'en-us' => 'അമേരിക്കൻ ഇംഗ്ലീഷ്',
+ 'enm' => 'മദ്ധ്യ ഇംഗ്ലീഷ്',
+ 'eo' => 'എസ്‌പരാന്റോ',
+ 'es' => 'സ്‌പാനിഷ്',
+ 'es-419' => 'ലാറ്റിൻ അമേരിക്കൻ സ്‌പാനിഷ്',
+ 'es-es' => 'യൂറോപ്യൻ സ്‌പാനിഷ്',
+ 'es-mx' => 'മെക്സിക്കൻ സ്പാനിഷ്',
+ 'et' => 'എസ്റ്റോണിയൻ',
+ 'eu' => 'ബാസ്‌ക്',
+ 'ewo' => 'എവോൻഡോ',
+ 'fa' => 'പേർഷ്യൻ',
+ 'fan' => 'ഫങ്',
+ 'fat' => 'ഫിലിപ്പീനോ',
+ 'ff' => 'ഫുല',
+ 'fi' => 'ഫിന്നിഷ്',
+ 'fil' => 'ഫിലിപ്പിനോ',
+ 'fj' => 'ഫിജിയൻ',
+ 'fo' => 'ഫാറോസ്',
+ 'fon' => 'ഫോൻ',
+ 'fr' => 'ഫ്രഞ്ച്',
+ 'fr-ca' => 'കനേഡിയൻ ഫ്രഞ്ച്',
+ 'fr-ch' => 'സ്വിസ് ഫ്രഞ്ച്',
+ 'frm' => 'മദ്ധ്യ ഫ്രഞ്ച്',
+ 'fro' => 'പഴയ ഫ്രഞ്ച്',
+ 'frr' => 'നോർത്തേൻ ഫ്രിഷ്യൻ',
+ 'frs' => 'ഈസ്റ്റേൺ ഫ്രിഷ്യൻ',
+ 'fur' => 'ഫ്രിയുലിയാൻ',
+ 'fy' => 'പശ്ചിമ ഫ്രിഷിയൻ',
+ 'ga' => 'ഐറിഷ്',
+ 'gaa' => 'ഗാ',
+ 'gag' => 'ഗാഗൂസ്',
+ 'gay' => 'ഗയൊ',
+ 'gba' => 'ഗബ്യ',
+ 'gd' => 'സ്കോട്ടിഷ് ഗൈലിക്',
+ 'gez' => 'ഗീസ്',
+ 'gil' => 'ഗിൽബർസേ',
+ 'gl' => 'ഗലീഷ്യൻ',
+ 'gmh' => 'മദ്ധ്യ ഉച്ച ജർമൻ',
+ 'gn' => 'ഗ്വരനീ',
+ 'goh' => 'പ്രാചീന ഉച്ച ജർമൻ',
+ 'gon' => 'ഗോണ്ഡി',
+ 'gor' => 'ഗൊറോൻറാലോ',
+ 'got' => 'ഗോഥിക്ക്',
+ 'grb' => 'ഗ്രബൊ',
+ 'grc' => 'പുരാതന യവന ഭാഷ',
+ 'gsw' => 'സ്വിസ് ജർമ്മൻ',
+ 'gu' => 'ഗുജറാത്തി',
+ 'guz' => 'ഗുസീ',
+ 'gv' => 'മാൻസ്',
+ 'gwi' => 'ഗ്വിച്ച് ഇൻ',
+ 'ha' => 'ഹൗസ',
+ 'hai' => 'ഹൈഡ',
+ 'haw' => 'ഹവായിയൻ',
+ 'he' => 'ഹീബ്രു',
+ 'hi' => 'ഹിന്ദി',
+ 'hil' => 'ഹിലിഗയ്നോൺ',
+ 'hit' => 'ഹിറ്റൈറ്റേ',
+ 'hmn' => 'മോങ്',
+ 'ho' => 'ഹിരി മോതു',
+ 'hr' => 'ക്രൊയേഷ്യൻ',
+ 'hsb' => 'അപ്പർ സോർബിയൻ',
+ 'ht' => 'ഹെയ്‌തിയൻ',
+ 'hu' => 'ഹംഗേറിയൻ',
+ 'hup' => 'ഹൂപ',
+ 'hy' => 'അർമേനിയൻ',
+ 'hz' => 'ഹെരേരൊ',
+ 'ia' => 'ഇന്റർലിൻ‌ഗ്വാ',
+ 'iba' => 'ഇബാൻ',
+ 'ibb' => 'ഇബീബിയോ',
+ 'id' => 'ഇൻഡോനേഷ്യൻ',
+ 'ie' => 'ഇന്റർലിംഗ്വ',
+ 'ig' => 'ഇഗ്ബോ',
+ 'ii' => 'ഷുവാൻയി',
+ 'ik' => 'ഇനുപിയാക്',
+ 'ilo' => 'ഇലോകോ',
+ 'inh' => 'ഇംഗ്വിഷ്',
+ 'io' => 'ഇഡോ',
+ 'is' => 'ഐസ്‌ലാൻഡിക്',
+ 'it' => 'ഇറ്റാലിയൻ',
+ 'iu' => 'ഇനുക്റ്റിറ്റട്ട്',
+ 'ja' => 'ജപ്പാനീസ്',
+ 'jbo' => 'ലോജ്ബാൻ',
+ 'jgo' => 'ഗോമ്പ',
+ 'jmc' => 'മചേം',
+ 'jpr' => 'ജൂഡിയോ-പേർഷ്യൻ',
+ 'jrb' => 'ജൂഡിയോ-അറബിക്',
+ 'jv' => 'ജാവാനീസ്',
+ 'ka' => 'ജോർജിയൻ',
+ 'kaa' => 'കര-കാൽപ്പക്',
+ 'kab' => 'കബൈൽ',
+ 'kac' => 'കാചിൻ',
+ 'kaj' => 'ജ്ജു',
+ 'kam' => 'കംബ',
+ 'kaw' => 'കാവി',
+ 'kbd' => 'കബർഡിയാൻ',
+ 'kbl' => 'കനെംബു',
+ 'kcg' => 'ട്യാപ്',
+ 'kde' => 'മക്കോണ്ടെ',
+ 'kea' => 'കബുവെർദിയാനു',
+ 'kfo' => 'കോറോ',
+ 'kg' => 'കോംഗോ',
+ 'kha' => 'ഘാസി',
+ 'kho' => 'ഘോറ്റാനേസേ',
+ 'khq' => 'കൊയ്റ ചീനി',
+ 'ki' => 'കികൂയു',
+ 'kj' => 'ക്വാന്യമ',
+ 'kk' => 'കസാഖ്',
+ 'kkj' => 'കക്കോ',
+ 'kl' => 'കലാല്ലിസട്ട്',
+ 'kln' => 'കലെഞ്ഞിൻ',
+ 'km' => 'ഖമെർ',
+ 'kmb' => 'ക്ലിംഗൻ',
+ 'kn' => 'കന്നഡ',
+ 'ko' => 'കൊറിയൻ',
+ 'koi' => 'കോമി-പെർമ്യാക്ക്',
+ 'kok' => 'കൊങ്കണി',
+ 'kos' => 'കൊസറേയൻ',
+ 'kpe' => 'കപെല്ലേ',
+ 'kr' => 'കനൂറി',
+ 'krc' => 'കരചൈ-ബാൽകർ',
+ 'krl' => 'കരീലിയൻ',
+ 'kru' => 'കുരുഖ്',
+ 'ks' => 'കാശ്‌മീരി',
+ 'ksb' => 'ഷംഭാള',
+ 'ksf' => 'ഭാഫിയ',
+ 'ksh' => 'കൊളോഞ്ഞിയൻ',
+ 'ku' => 'കുർദ്ദിഷ്',
+ 'kum' => 'കുമൈക്',
+ 'kut' => 'കുതേനൈ',
+ 'kv' => 'കോമി',
+ 'kw' => 'കോർണിഷ്',
+ 'ky' => 'കിർഗിസ്',
+ 'la' => 'ലാറ്റിൻ',
+ 'lad' => 'ലാഡിനോ',
+ 'lag' => 'ലാംഗി',
+ 'lah' => 'ലഹ്‌ൻഡ',
+ 'lam' => 'ലംബ',
+ 'lb' => 'ലക്‌സംബർഗിഷ്',
+ 'lez' => 'ലഹ്ഗിയാൻ',
+ 'lg' => 'ഗാണ്ട',
+ 'li' => 'ലിംബർഗിഷ്',
+ 'lkt' => 'ലഗോത്ത',
+ 'ln' => 'ലിംഗാല',
+ 'lo' => 'ലാവോ',
+ 'lol' => 'മോങ്കോ',
+ 'loz' => 'ലൊസി',
+ 'lt' => 'ലിത്വാനിയൻ',
+ 'lu' => 'ലുബ-കറ്റംഗ',
+ 'lua' => 'ലൂബ-ലുലുവ',
+ 'lui' => 'ലൂയിസെനോ',
+ 'lun' => 'ലുൻഡ',
+ 'luo' => 'ലുവോ',
+ 'lus' => 'മിസോ',
+ 'luy' => 'ലുയിയ',
+ 'lv' => 'ലാറ്റ്വിയൻ',
+ 'mad' => 'മദുരേസേ',
+ 'maf' => 'മാഫ',
+ 'mag' => 'മഗാഹി',
+ 'mai' => 'മൈഥിലി',
+ 'mak' => 'മകാസർ',
+ 'man' => 'മണ്ഡിൻഗോ',
+ 'mas' => 'മസായ്',
+ 'mde' => 'മാബ',
+ 'mdf' => 'മോക്ഷ',
+ 'mdr' => 'മണ്ഡാർ',
+ 'men' => 'മെൻഡെ',
+ 'mer' => 'മേരു',
+ 'mfe' => 'മൊറിസിൻ',
+ 'mg' => 'മലഗാസി',
+ 'mga' => 'മദ്ധ്യ ഐറിഷ്',
+ 'mgh' => 'മാഖുവാ-മീത്തോ',
+ 'mgo' => 'മേത്താ',
+ 'mh' => 'മാർഷല്ലീസ്',
+ 'mi' => 'മവോറി',
+ 'mic' => 'മിക്മാക്',
+ 'min' => 'മിനാങ്കബൗ',
+ 'mk' => 'മാസിഡോണിയൻ',
+ 'ml' => 'മലയാളം',
+ 'mn' => 'മംഗോളിയൻ',
+ 'mnc' => 'മൻചു',
+ 'mni' => 'മണിപ്പൂരി',
+ 'moh' => 'മോഹാക്',
+ 'mos' => 'മൊസ്സി',
+ 'mr' => 'മറാത്തി',
+ 'ms' => 'മലെയ്',
+ 'mt' => 'മാൾട്ടീസ്',
+ 'mua' => 'മുന്ദാംഗ്',
+ 'mul' => 'പലഭാഷകൾ',
+ 'mus' => 'ക്രീക്ക്',
+ 'mwl' => 'മിരാൻറസേ',
+ 'mwr' => 'മർവാരി',
+ 'my' => 'ബർമീസ്',
+ 'mye' => 'മയീൻ',
+ 'myv' => 'ഏഴ്സ്യ',
+ 'na' => 'നൗറു',
+ 'nap' => 'നെപ്പോളിറ്റാൻ',
+ 'naq' => 'നാമ',
+ 'nb' => 'നോർവീജിയൻ ബുക്‌മൽ',
+ 'nd' => 'നോർത്ത് ഡെബിൾ',
+ 'nds' => 'ലോ ജർമൻ',
+ 'ne' => 'നേപ്പാളി',
+ 'new' => 'നേവാരി',
+ 'ng' => 'ഡോങ്ക',
+ 'nia' => 'നിയാസ്',
+ 'niu' => 'ന്യുവാൻ',
+ 'nl' => 'ഡച്ച്',
+ 'nl-be' => 'ഫ്ലമിഷ്',
+ 'nmg' => 'ക്വാസിയോ',
+ 'nn' => 'നോർവീജിയൻ നൈനോർക്‌സ്',
+ 'nnh' => 'ഗീംബൂൺ',
+ 'no' => 'നോർവീജിയൻ',
+ 'nog' => 'നോഗൈ',
+ 'non' => 'പഴയ പേർഷ്യൻ',
+ 'nqo' => 'ഇൻകോ',
+ 'nr' => 'ദക്ഷിണ നെഡിബിൾ',
+ 'nso' => 'നോർത്തേൻ സോതോ',
+ 'nus' => 'നുവേർ',
+ 'nv' => 'നവാഹൊ',
+ 'nwc' => 'ക്ലാസിക്കൽ നേവാരി',
+ 'ny' => 'ന്യൻജ',
+ 'nym' => 'ന്യാംവേസി',
+ 'nyn' => 'ന്യാൻകോൾ',
+ 'nyo' => 'ന്യോറോ',
+ 'nzi' => 'സിമ',
+ 'oc' => 'ഓക്‌സിറ്റൻ',
+ 'oj' => 'ഓജിബ്വാ',
+ 'om' => 'ഒറോമോ',
+ 'or' => 'ഒഡിയ',
+ 'os' => 'ഒസ്സെറ്റിക്',
+ 'osa' => 'ഒസേജ്',
+ 'ota' => 'ഓട്ടോമൻ തുർക്കിഷ്',
+ 'pa' => 'പഞ്ചാബി',
+ 'pag' => 'പങ്കാസിനൻ',
+ 'pal' => 'പാഹ്ലവി',
+ 'pam' => 'പാംപൻഗ',
+ 'pap' => 'പാപിയാമെൻറൊ',
+ 'pau' => 'പലാവുൻ',
+ 'peo' => 'പ്രാചീന പേർഷ്യൻ',
+ 'phn' => 'ഫീനിഷ്യൻ',
+ 'pi' => 'പാലി',
+ 'pl' => 'പോളിഷ്',
+ 'pon' => 'പൊൻപിയൻ',
+ 'pro' => 'പ്രൊവൻഷ്ൽ',
+ 'ps' => 'പഷ്തു',
+ 'pt' => 'പോർച്ചുഗീസ്',
+ 'pt-br' => 'ബ്രസീലിയൻ പോർച്ചുഗീസ്',
+ 'pt-pt' => 'യൂറോപ്യൻ പോർച്ചുഗീസ്',
+ 'qu' => 'ക്വെച്ചുവ',
+ 'quc' => 'ക്വിച്ചെ',
+ 'raj' => 'രാജസ്ഥാനി',
+ 'rap' => 'രാപനൂയി',
+ 'rar' => 'രാരോടോങ്കൻ',
+ 'rm' => 'റൊമാഞ്ച്',
+ 'rn' => 'റുണ്ടി',
+ 'ro' => 'റൊമാനിയൻ',
+ 'ro-md' => 'മോൾഡാവിയൻ',
+ 'rof' => 'റോംബോ',
+ 'rom' => 'റോമനി',
+ 'ru' => 'റഷ്യൻ',
+ 'rup' => 'ആരോമാനിയൻ',
+ 'rw' => 'കിന്യാർവാണ്ട',
+ 'rwk' => 'റുവാ',
+ 'sa' => 'സംസ്‌കൃതം',
+ 'sad' => 'സാൻഡവേ',
+ 'sah' => 'സാഖ',
+ 'sam' => 'സമരിയാക്കാരുടെ അരമായ',
+ 'saq' => 'സംബുരു',
+ 'sas' => 'സസാക്',
+ 'sat' => 'സന്താലി',
+ 'sba' => 'ഗംബായ്',
+ 'sbp' => 'സംഗു',
+ 'sc' => 'സർഡിനിയാൻ',
+ 'scn' => 'സിസിലിയൻ',
+ 'sco' => 'സ്കോട്സ്',
+ 'sd' => 'സിന്ധി',
+ 'se' => 'വടക്കൻ സമി',
+ 'see' => 'സെനേക',
+ 'seh' => 'സേന',
+ 'sel' => 'സെൽകപ്',
+ 'ses' => 'കൊയ്റാബൊറോ സെന്നി',
+ 'sg' => 'സാംഗോ',
+ 'sga' => 'പ്രാചീന ഐറിഷ്',
+ 'sh' => 'സെർബോ-ക്രൊയേഷ്യൻ',
+ 'shi' => 'താച്ചലിറ്റ്',
+ 'shn' => 'ഷാൻ',
+ 'shu' => 'ചാഡ് അറബി',
+ 'si' => 'സിംഹള',
+ 'sid' => 'സിഡാമോ',
+ 'sk' => 'സ്ലോവാക്',
+ 'sl' => 'സ്ലോവേനിയൻ',
+ 'sm' => 'സമോവൻ',
+ 'sma' => 'തെക്കൻ സാമി',
+ 'smj' => 'ലൂലീ സമി',
+ 'smn' => 'ഇനാരി സാമി',
+ 'sms' => 'സ്കോൾട്ട് സമി',
+ 'sn' => 'ഷോണ',
+ 'snk' => 'സോണിൻകെ',
+ 'so' => 'സോമാലി',
+ 'sog' => 'സോജിഡിയൻ',
+ 'sq' => 'അൽബേനിയൻ',
+ 'sr' => 'സെർബിയൻ',
+ 'srn' => 'ശ്രാനൻ ഡോങ്കോ',
+ 'srr' => 'സെറർ',
+ 'ss' => 'സ്വാറ്റി',
+ 'ssy' => 'സാഹോ',
+ 'st' => 'തെക്കൻ സോതോ',
+ 'su' => 'സുഡാനീസ്',
+ 'suk' => 'സുകുമ',
+ 'sus' => 'സുസു',
+ 'sux' => 'സുമേരിയൻ',
+ 'sv' => 'സ്വീഡിഷ്',
+ 'sw' => 'സ്വാഹിലി',
+ 'swb' => 'കൊമോറിയൻ',
+ 'swc' => 'കോംഗോ സ്വാഹിലി',
+ 'syc' => 'പുരാതന സുറിയാനിഭാഷ',
+ 'syr' => 'സുറിയാനി',
+ 'ta' => 'തമിഴ്',
+ 'te' => 'തെലുങ്ക്',
+ 'tem' => 'ടിംനേ',
+ 'teo' => 'ടെസോ',
+ 'ter' => 'ടെറേനോ',
+ 'tet' => 'ടെറ്റും',
+ 'tg' => 'താജിക്',
+ 'th' => 'തായ്',
+ 'ti' => 'ടൈഗ്രിന്യ',
+ 'tig' => 'ടൈഗ്രി',
+ 'tiv' => 'ടിവ്',
+ 'tk' => 'തുർക്‌മെൻ',
+ 'tkl' => 'ടൊക്കേലൗ',
+ 'tl' => 'തഗാലോഗ്',
+ 'tlh' => 'ക്ലിംഗോൺ',
+ 'tli' => 'ലിംഗ്വിറ്റ്',
+ 'tmh' => 'ടമഷേക്',
+ 'tn' => 'ത്സ്വാന',
+ 'to' => 'ടോംഗൻ',
+ 'tog' => 'ന്യാസാ ഡോങ്ക',
+ 'tpi' => 'ടോക് പിസിൻ',
+ 'tr' => 'ടർക്കിഷ്',
+ 'trv' => 'തരോക്കോ',
+ 'ts' => 'ത്സോംഗ',
+ 'tsi' => 'സിംഷ്യൻ',
+ 'tt' => 'ടാട്ടർ',
+ 'tum' => 'ടുംബുക',
+ 'tvl' => 'തുവാലു',
+ 'tw' => 'ട്വി',
+ 'twq' => 'ടസവാക്ക്',
+ 'ty' => 'താഹിതിയൻ',
+ 'tyv' => 'തുവിനിയൻ',
+ 'tzm' => 'മധ്യ അറ്റ്‌ലസ് ടമാസൈറ്റ്',
+ 'udm' => 'ഉഡ്മുർട്ട്',
+ 'ug' => 'ഉയ്ഘുർ',
+ 'uga' => 'ഉഗറിട്ടിക്',
+ 'uk' => 'ഉക്രേനിയൻ',
+ 'umb' => 'ഉംബുന്ദു',
+ 'und' => 'അജ്ഞാത ഭാഷ',
+ 'ur' => 'ഉറുദു',
+ 'uz' => 'ഉസ്‌ബെക്ക്',
+ 'vai' => 'വൈ',
+ 've' => 'വെന്ദ',
+ 'vi' => 'വിയറ്റ്നാമീസ്',
+ 'vo' => 'വോളാപുക്',
+ 'vot' => 'വോട്ടിക്',
+ 'vun' => 'വുഞ്ജോ',
+ 'wa' => 'വല്ലൂൺ',
+ 'wae' => 'വാൾസർ',
+ 'wal' => 'വലമൊ',
+ 'war' => 'വാരേയ്',
+ 'was' => 'വാഷൊ',
+ 'wo' => 'വൊളോഫ്',
+ 'xal' => 'കൽമൈക്',
+ 'xh' => 'ഖോസ',
+ 'xog' => 'സോഗോ',
+ 'yao' => 'യാവോ',
+ 'yap' => 'യെപ്പീസ്',
+ 'yav' => 'യാംഗ്ബെൻ',
+ 'ybb' => 'യംബ',
+ 'yi' => 'യിദ്ദിഷ്',
+ 'yo' => 'യൊറൂബാ',
+ 'yue' => 'കാന്റണീസ്',
+ 'za' => 'സ്വാംഗ്',
+ 'zap' => 'സാപ്പോടെക്',
+ 'zbl' => 'ബ്ലിസ്സിംബൽസ്',
+ 'zen' => 'സെനഗ',
+ 'zgh' => 'മൊറോക്കൻ സാധാരണ താമസൈറ്റ്',
+ 'zh' => 'ചൈനീസ്',
+ 'zh-hans' => 'ചീനഭാഷ-ലളിതലിപി',
+ 'zh-hant' => 'ചീനഭാഷ-പരമ്പരാഗതലിപി',
+ 'zu' => 'സുലു',
+ 'zun' => 'സുനി',
+ 'zxx' => 'ഭാഷാപരമായ ഉള്ളടക്കമൊന്നുമില്ല',
+ 'zza' => 'സാസാ',
+);
+
+$currencyNames = array(
+ 'ADP' => 'അൻഡോറൻ പെസെയ്റ്റ',
+ 'AED' => 'യുണൈറ്റഡ് അറബ് എമിറേറ്റ്സ് ദിർഹം',
+ 'AFA' => 'അഫ്ഘാനി (1927–2002)',
+ 'AFN' => 'അഫ്‌ഗാൻ അഫ്‌‌ഗാനി',
+ 'ALL' => 'അൽബേനിയൻ ലെക്',
+ 'AMD' => 'അർമേനിയൻ ഡ്രാം',
+ 'ANG' => 'നെതർലാൻഡ്‌സ് ആന്റിലൻ ഗിൽഡർ',
+ 'AOA' => 'അംഗോളൻ ‍ക്വാൻസ',
+ 'AOK' => 'അംഗോളൻ ‍ക്വാൻസ (1977–1990)',
+ 'AON' => 'അംഗോളൻ ‍ന്യൂ ക്വാൻസ (1990–2000)',
+ 'AOR' => 'അംഗോളൻ ‍ക്വാൻസ റിയാജസ്റ്റാഡോ (1995–1999)',
+ 'ARA' => 'അർജൻറീൻ ഓസ്ട്രൽ',
+ 'ARP' => 'അർജൻറീൻ പെയ്സോ (1983–1985)',
+ 'ARS' => 'അർജൻറീൻ പെസോ',
+ 'ATS' => 'ഓസ്ട്രേലിയൻ ഷില്ലിംഗ്',
+ 'AUD' => 'ഓസ്ട്രേലിയൻ ഡോളർ',
+ 'AWG' => 'അറൂബൻ ഫ്ലോറിൻ',
+ 'AZM' => 'അസർബയ്ജാനിയൻ മനത് (1993–2006)',
+ 'AZN' => 'അസർബൈജാനി മനത്',
+ 'BAD' => 'ബോസ്നിയ-ഹെർസഗോവിന ദിനാർ',
+ 'BAM' => 'ബോസ്‌നിയ-ഹെർസഗോവിന കൺവേർട്ടബിൾ മാർക്ക്',
+ 'BBD' => 'ബാർബഡോസ് ഡോളർ',
+ 'BDT' => 'ബംഗ്ലാദേശി ടാക്ക',
+ 'BEC' => 'ബെൽജിയൻ ഫ്രാങ്ക് (കൈമാറ്റം ചെയ്യാവുന്നത്)',
+ 'BEF' => 'ബെൽജിയൻ ഫ്രാങ്ക്',
+ 'BEL' => 'ബൽജിയൻ ഫ്രാങ്ക്',
+ 'BGL' => 'ബൾഗേറിയൻ ഹാർഡ് ലെവ്',
+ 'BGN' => 'ബൾഗേറിയൻ ലെവ്',
+ 'BHD' => 'ബഹ്റൈനി ദിനാർ',
+ 'BIF' => 'ബറുണ്ടിയൻ ഫ്രാങ്ക്',
+ 'BMD' => 'ബെർമുഡൻ ഡോളർ',
+ 'BND' => 'ബ്രൂണൈ ഡോളർ',
+ 'BOB' => 'ബൊളീവിയൻ ബൊളിവിയാനോ',
+ 'BOP' => 'ബൊളീവിയൻ പെയ്സോ',
+ 'BOV' => 'ബൊളീവിയൻ എംവിഡോൾ',
+ 'BRB' => 'ബ്രസീലിയൻ ക്രുസെയ്റോ നോവോ (1967–1986)',
+ 'BRC' => 'ബ്രസീലിയൻ ക്രുസാഡോ',
+ 'BRE' => 'ബ്രസീലിയൻ ക്രുസെയ്റോ (1990–1993)',
+ 'BRL' => 'ബ്രസീലിയൻ റിയാൽ',
+ 'BRN' => 'ബ്രസീലിയൻ ക്രുസാഡോ നോവോ',
+ 'BRR' => 'ബ്രസീലിയൻ ക്രുസെയ്റോ',
+ 'BSD' => 'ബഹാമിയൻ ഡോളർ',
+ 'BTN' => 'ഭൂട്ടാനീസ് ഗൾട്രം',
+ 'BUK' => 'ബർമീസ് ചാറ്റ്',
+ 'BWP' => 'ബോട്‌സ്വാനൻ പ്യുല',
+ 'BYB' => 'ബെലാറഷ്യൻ ന്യൂ റൂബിൾ (1994–1999)',
+ 'BYR' => 'ബെലാറുഷ്യൻ റൂബിൾ',
+ 'BZD' => 'ബെലീസ് ഡോളർ',
+ 'CAD' => 'കനേഡിയൻ ഡോളർ',
+ 'CDF' => 'കോങ്കളീസ് ഫ്രാങ്ക്',
+ 'CHE' => 'WIR യൂറോ',
+ 'CHF' => 'സ്വിസ് ഫ്രാങ്ക്',
+ 'CHW' => 'WIR ഫ്രാങ്ക്',
+ 'CLF' => 'ചിലിയൻ യൂണിഡാഡ്സ് ഡി ഫോമെൻറോ',
+ 'CLP' => 'ചിലിയൻ പെസോ',
+ 'CNY' => 'ചൈനീസ് യുവാൻ',
+ 'COP' => 'കൊളംബിയൻ പെസോ',
+ 'COU' => 'യൂണിഡാഡ് ഡി വാലർ റിയൽ',
+ 'CRC' => 'കോസ്റ്റാ റിക്കൻ കോളൻ',
+ 'CSD' => 'പ്രാചീന സെർബിയൻ ദിനാർ',
+ 'CSK' => 'ചെക്കോസ്ലൊവാക്ക് ഹാർഡ് കൊരൂന',
+ 'CUC' => 'ക്യൂബൻ കൺവേർട്ടബിൾ പെസോ',
+ 'CUP' => 'ക്യൂബൻ പെസോ',
+ 'CVE' => 'കേപ് വെർദിയൻ എസ്‌ക്യുഡോ',
+ 'CYP' => 'സൈപ്രസ് പൌണ്ട്',
+ 'CZK' => 'ചെക്ക് റിപ്പബ്ലിക് കൊരുണ',
+ 'DDM' => 'കിഴക്കൻ ജർമൻ ഓസ്റ്റ്മാർക്ക്',
+ 'DEM' => 'ജർമൻ മാർക്ക്',
+ 'DJF' => 'ദിജിബൗട്ടിയൻ ഫ്രാങ്ക്',
+ 'DKK' => 'ഡാനിഷ് ക്രോണെ',
+ 'DOP' => 'ഡൊമിനിക്കൻ പെസോ',
+ 'DZD' => 'അൾജീരിയൻ ദിനാർ',
+ 'ECS' => 'ഇക്വഡോർ സൂക്രേ',
+ 'ECV' => 'ഇക്വഡോർ യൂണിഡാഡ് വാലർ കോൺസ്റ്റൻറെ (UVC)',
+ 'EEK' => 'എസ്റ്റൌനിയൻ ക്രൂൺ',
+ 'EGP' => 'ഈജിപ്‌ഷ്യൻ പൗണ്ട്',
+ 'ERN' => 'എറിത്രിയൻ നക്ഫ',
+ 'ESA' => 'സ്പാനിഷ് പസെയ്റ്റ (A അക്കൌണ്ട്)',
+ 'ESB' => 'സ്പാനിഷ് പസെയ്റ്റ (കൈമാറ്റം ചെയ്യാവുന്ന അക്കൌണ്ട്)',
+ 'ESP' => 'സ്പാനിഷ് പസെയ്റ്റ',
+ 'ETB' => 'എത്യോപ്യൻ ബിർ',
+ 'EUR' => 'യൂറോ',
+ 'FIM' => 'ഫിന്നിഷ് മാർക്ക',
+ 'FJD' => 'ഫിജിയൻ ഡോളർ',
+ 'FKP' => 'ഫാക്ക്‌ലാന്റ് ദ്വീപുകളുടെ പൗണ്ട്',
+ 'FRF' => 'ഫ്രാങ്ക്',
+ 'GBP' => 'ബ്രിട്ടീഷ് പൗണ്ട് സ്‌റ്റെർലിംഗ്',
+ 'GEK' => 'ജോർ‍ജ്ജിയൻ ക്യൂപോൺ ലാരിറ്റ്',
+ 'GEL' => 'ജോർജ്ജിയൻ ലാറി',
+ 'GHC' => 'ഘാന കെഡി (1979–2007)',
+ 'GHS' => 'ഘാനയൻ കെഡി',
+ 'GIP' => 'ജിബ്രാൾട്ടർ പൗണ്ട്',
+ 'GMD' => 'ഗാംബിയൻ ദലാസി',
+ 'GNF' => 'ഗിനിയൻ ഫ്രാങ്ക്',
+ 'GNS' => 'ഗിനിയ സൈലി',
+ 'GQE' => 'ഇക്വിറ്റോറിയൽ ഗിനിയ എക്വീലെ ഗിനിയാന',
+ 'GRD' => 'ഗ്രീക്ക് ഡ്രാക്ക്മ',
+ 'GTQ' => 'ഗ്വാട്ടിമാലൻ ക്വെറ്റ്‌സൽ',
+ 'GWE' => 'പോർച്ചുഗീസ് ഗിനി എസ്ക്യൂഡോ',
+ 'GWP' => 'ഗിനിയ-ബിസാവു പെയ്സോ',
+ 'GYD' => 'ഗയാനീസ് ഡോളർ',
+ 'HKD' => 'ഹോങ്കോങ്ങ് ഡോളർ',
+ 'HNL' => 'ഹോണ്ടുറൻ ലെംപിറ',
+ 'HRD' => 'ക്രൊയേഷ്യൻ ദിനാർ',
+ 'HRK' => 'ക്രൊയേഷൻ ക്യുന',
+ 'HTG' => 'ഹെയ്‌തിയൻ ഗൂർഡ്',
+ 'HUF' => 'ഹംഗേറിയൻ ഫോറിന്റ്',
+ 'IDR' => 'ഇന്തോനേഷ്യൻ റുപിയ',
+ 'IEP' => 'ഐറിഷ് പൌണ്ട്',
+ 'ILP' => 'ഇസ്രയേലി പൌണ്ട്',
+ 'ILS' => 'ഇസ്രായേലി ന്യൂ ഷെക്കെൽ',
+ 'INR' => 'ഇന്ത്യൻ രൂപ',
+ 'IQD' => 'ഇറാഖി ദിനാർ',
+ 'IRR' => 'ഇറാനിയൻ റിയാൽ',
+ 'ISK' => 'ഐസ്‌ലാൻഡിക് ക്രോണ',
+ 'ITL' => 'ഇറ്റാലിയൻ ലിറ',
+ 'JMD' => 'ജമൈക്കൻ ഡോളർ',
+ 'JOD' => 'ജോർദ്ദാനിയൻ ദിനാർ',
+ 'JPY' => 'ജപ്പാനീസ് യെൻ',
+ 'KES' => 'കെനിയൻ ഷില്ലിംഗ്',
+ 'KGS' => 'കിർഗിസ്ഥാനി സോം',
+ 'KHR' => 'കംബോഡിയൻ റീൽ',
+ 'KMF' => 'കൊമോറിയൻ ഫ്രാങ്ക്',
+ 'KPW' => 'ഉത്തര കൊറിയൻ വോൺ',
+ 'KRW' => 'ദക്ഷിണ കൊറിയൻ വോൺ',
+ 'KWD' => 'കുവൈറ്റി ദിനാർ',
+ 'KYD' => 'കേമാൻ ഐലൻഡ്‌സ് ഡോളർ',
+ 'KZT' => 'കസാക്കിസ്ഥാൻ ടെംഗെ',
+ 'LAK' => 'ലാവോഷിയൻ കിപ്',
+ 'LBP' => 'ലെബനീസ് പൗണ്ട്',
+ 'LKR' => 'ശ്രീലങ്കൻ റുപ്പീ',
+ 'LRD' => 'ലൈബീരിയൻ ഡോളർ',
+ 'LSL' => 'ലെസോതോ ലോത്തി',
+ 'LTL' => 'ലിത്വാനിയൻ ലിറ്റാസ്',
+ 'LTT' => 'ലിത്വാനിയൻ തലോനാസ്',
+ 'LUC' => 'ലക്സംബർഗ് കൺവേർട്ടിബിൾ ഫ്രാങ്ക്',
+ 'LUF' => 'ലക്സംബർഗ് ഫ്രാങ്ക്',
+ 'LUL' => 'ലക്സംബർഗ് ഫിനാൻഷ്യൽ ഫ്രാങ്ക്',
+ 'LVL' => 'ലാറ്റ്വിയൻ ലാറ്റ്സ്',
+ 'LVR' => 'ലാറ്റ്വിയൻ റൂബിൾ',
+ 'LYD' => 'ലിബിയൻ ദിനാർ',
+ 'MAD' => 'മൊറോക്കൻ ദിർഹം',
+ 'MAF' => 'മൊറോക്കൻ ഫ്രാങ്ക്',
+ 'MDL' => 'മൊൾഡോവൻ ലിയു',
+ 'MGA' => 'മഡഗാസി ഏരിയറി',
+ 'MGF' => 'മഡഗാസ്കർ ഫ്രാങ്ക്',
+ 'MKD' => 'മാസിഡോണിയൻ ദിനാർ',
+ 'MLF' => 'മാലി ഫ്രാങ്ക്',
+ 'MMK' => 'മ്യാൻമാർ ക്യാട്',
+ 'MNT' => 'മംഗോളിയൻ തുഗ്രിക്',
+ 'MOP' => 'മകാനീസ് പതാക്ക',
+ 'MRO' => 'മൗറിറ്റേനിയൻ ഔഗിയ',
+ 'MTL' => 'മൽത്തീസ് ലിറ',
+ 'MTP' => 'മൽത്തീസ് പൌണ്ട്',
+ 'MUR' => 'മൗറീഷ്യൻ റുപ്പീ',
+ 'MVR' => 'മാൽദീവിയൻ റുഫിയ',
+ 'MWK' => 'മലാവിയൻ ക്വച്ചാ',
+ 'MXN' => 'മെക്സിക്കൻ പെസോ',
+ 'MXP' => 'മെക്സിക്കൻ സിൽവർ പെയ്സോ (1861–1992)',
+ 'MXV' => 'മെക്സിക്കൻ യൂണിഡാഡ് ഡി ഇൻവെർഷൻ (UDI)',
+ 'MYR' => 'മലേഷ്യൻ റിംഗിറ്റ്',
+ 'MZE' => 'മൊസാന്പിക്ക് എസ്ക്യുഡോ',
+ 'MZM' => 'ഓൾഡ് മൊസാന്പിക്ക് മെറ്റിക്കൽ',
+ 'MZN' => 'മൊസാംബിക്കൻ മെറ്റിക്കൽ',
+ 'NAD' => 'നമീബിയൻ ഡോളർ',
+ 'NGN' => 'നൈജീരിയൻ നൈറ',
+ 'NIC' => 'നികരാഗ്വൻ കൊർഡോബ',
+ 'NIO' => 'നിക്കരാഗ്വൻ കോർഡോബ',
+ 'NLG' => 'നെതർലൻഡ്സ് ഗിൽഡർ',
+ 'NOK' => 'നോർവീജിയൻ ക്രോണെ',
+ 'NPR' => 'നേപ്പാളീസ് റുപ്പീ',
+ 'NZD' => 'ന്യൂസിലാന്റ് ഡോളർ',
+ 'OMR' => 'ഒമാനി റിയാൽ',
+ 'PAB' => 'പനാമനിയൻ ബാൽബോവ',
+ 'PEI' => 'പെറൂവിയൻ ഇൻറി',
+ 'PEN' => 'പെറുവിയൻ ന്യൂവോ സോൾ',
+ 'PES' => 'പെറൂവിയൻ സോൾ',
+ 'PGK' => 'പാപ്പുവ ന്യൂ ഗിനിയൻ കിന',
+ 'PHP' => 'ഫിലിപ്പീനി പെസോ',
+ 'PKR' => 'പാക്കിസ്ഥാനി റുപ്പീ',
+ 'PLN' => 'പോളിഷ് സ്ലോട്ടി',
+ 'PLZ' => 'പോളിഷ് സ്ലോട്ടി (1950–1995)',
+ 'PTE' => 'പോർച്ചുഗീസ് എസ്ക്യുഡോ',
+ 'PYG' => 'പരാഗ്വേയൻ ഗ്വരനീ',
+ 'QAR' => 'ഖത്തർ റിയാൽ',
+ 'RHD' => 'റൊഡേഷ്യൻ ഡോളർ',
+ 'ROL' => 'പ്രാചീന റൊമേനിയൻ ലിയു',
+ 'RON' => 'റൊമാനിയൻ ലെയു',
+ 'RSD' => 'സെർബിയൻ ദിനാർ',
+ 'RUB' => 'റഷ്യൻ റൂബിൾ',
+ 'RUR' => 'റഷ്യൻ റൂബിൾ (1991–1998)',
+ 'RWF' => 'റുവാണ്ടൻ ഫ്രാങ്ക്',
+ 'SAR' => 'സൗദി റിയാൽ',
+ 'SBD' => 'സോളമൻ ദ്വീപുകളുടെ ഡോളർ',
+ 'SCR' => 'സീഷെലോയിസ് റുപ്പീ',
+ 'SDD' => 'പ്രാചീന സുഡാനീസ് ദിനാർ',
+ 'SDG' => 'സുഡാനീസ് പൗണ്ട്',
+ 'SDP' => 'പ്രാചീന സുഡാനീസ് പൌണ്ട്',
+ 'SEK' => 'സ്വീഡിഷ് ക്രോണ',
+ 'SGD' => 'സിംഗപ്പൂർ ഡോളർ',
+ 'SHP' => 'സെന്റ് ഹെലീന പൗണ്ട്',
+ 'SIT' => 'സ്ലൊവേനിയ റ്റോളർ',
+ 'SKK' => 'സ്ലോവാക് കൊരൂന',
+ 'SLL' => 'സിയെറ ലിയോണിയൻ ലിയോൺ',
+ 'SOS' => 'സോമാലി ഷില്ലിംഗ്',
+ 'SRD' => 'സുരിനെയിമിസ് ഡോളർ',
+ 'SRG' => 'സൂരിനാം ഗിൽഡർ',
+ 'SSP' => 'ദക്ഷിണ സുഡാനീസ് പൗണ്ട്',
+ 'STD' => 'സാവോ ടോമി ആൻഡ് പ്രിൻസിപെ ഡോബ്ര',
+ 'SUR' => 'സോവിയറ്റ് റൂബിൾ',
+ 'SVC' => 'എൽ സാൽവഡോർ കോളൻ',
+ 'SYP' => 'സിറിയൻ പൗണ്ട്',
+ 'SZL' => 'സ്വാസി ലിലാംഗനി',
+ 'THB' => 'തായ് ബട്ട്',
+ 'TJR' => 'താജിക്കിസ്ഥാൻ റൂബിൾ',
+ 'TJS' => 'താജിക്കിസ്ഥാനി സൊമോനി',
+ 'TMM' => 'തുർക്മെനിസ്ഥാൻ മനത്',
+ 'TMT' => 'തുർക്ക്‌മെനിസ്ഥാനി മനത്',
+ 'TND' => 'ടുണീഷ്യൻ ദിനാർ',
+ 'TOP' => 'ടോംഗൻ പാംഗ',
+ 'TPE' => 'തിമോർ എസ്ക്യൂഡോ',
+ 'TRL' => 'പ്രാചീന തുർക്കിഷ് ലിറ',
+ 'TRY' => 'ടർക്കിഷ് ലിറ',
+ 'TTD' => 'ട്രിനിഡാഡ് അന്റ് ടുബാഗോ ഡോളർ',
+ 'TWD' => 'ന്യൂ തായ്‌വാൻ ഡോളർ',
+ 'TZS' => 'ടാൻസാനിയൻ ഷില്ലിംഗ്',
+ 'UAH' => 'ഉക്രേനിയൻ ഹ്രിവ്‌നിയ',
+ 'UAK' => 'യുക്രേനിയൻ കാർബോവാനെസ്',
+ 'UGS' => 'ഉഗാണ്ടൻ ഷില്ലിംഗ് (1966–1987)',
+ 'UGX' => 'ഉഗാണ്ടൻ ഷില്ലിംഗ്',
+ 'USD' => 'യു.എസ്. ഡോളർ',
+ 'USN' => 'യുഎസ് ഡോളർ (അടുത്ത ദിവസം)',
+ 'USS' => 'യുഎസ് ഡോളർ (അതേ ദിവസം)',
+ 'UYI' => 'ഉറുഗ്വേ പെയ്സോ എൻ യൂണിഡാഡ്സ്',
+ 'UYP' => 'ഉറുഗ്വേ പെയ്സോ (1975–1993)',
+ 'UYU' => 'ഉറുഗ്വേയൻ പെസോ',
+ 'UZS' => 'ഉസ്‌ബെക്കിസ്ഥാൻ സോം',
+ 'VEB' => 'വെനസ്വേലൻ ബോലിവർ (1871–2008)',
+ 'VEF' => 'വെനിസ്വേലൻ ബൊളീവർ',
+ 'VND' => 'വിയറ്റ്നാമീസ് ഡോങ്',
+ 'VUV' => 'വന്വാതു വാതു',
+ 'WST' => 'സമോവൻ താല',
+ 'XAF' => 'CFA ഫ്രാങ്ക് BEAC',
+ 'XAG' => 'വെള്ളി',
+ 'XAU' => 'സ്വർണ്ണം',
+ 'XBA' => 'യൂറോപ്യൻ കോന്പസിറ്റ് യൂണിറ്റ്',
+ 'XBB' => 'യൂറോപ്യൻ മോണിറ്ററി യൂണിറ്റ്',
+ 'XBC' => 'യൂറോപ്യൻ യൂണിറ്റ് ഓഫ് അക്കൌണ്ട് (XBC)',
+ 'XBD' => 'യൂറോപ്യൻ യൂണിറ്റ് ഓഫ് അക്കൌണ്ട് (XBD)',
+ 'XCD' => 'കിഴക്കൻ കരീബിയൻ ഡോളർ',
+ 'XDR' => 'സ്പെഷ്യൽ ഡ്രോയിംഗ് റൈറ്റ്സ്',
+ 'XEU' => 'യൂറോപ്യൻ നാണയ യൂണിറ്റ്',
+ 'XFO' => 'ഫ്രെഞ്ച് ഗോൾഡ് ഫ്രാങ്ക്',
+ 'XFU' => 'ഫ്രെഞ്ച് UIC-ഫ്രാങ്ക്',
+ 'XOF' => 'CFA ഫ്രാങ്ക് BCEAO',
+ 'XPD' => 'പലാഡിയം',
+ 'XPF' => 'CFP ഫ്രാങ്ക്',
+ 'XPT' => 'പ്ലാറ്റിനം',
+ 'XRE' => 'RINET ഫണ്ട്സ്',
+ 'XTS' => 'ടെസ്റ്റിംഗിനുള്ള കറൻസി കോഡ്',
+ 'XXX' => 'അജ്ഞാത നാണയം',
+ 'YDD' => 'യമനി ദിനാർ',
+ 'YER' => 'യെമനി റിയാൽ',
+ 'YUD' => 'യൂഗോസ്ലേവിയൻ ഹാർഡ് ദിനാർ',
+ 'YUM' => 'യൂഗോസ്ലേവിയൻ നോവി ദിനാർ',
+ 'YUN' => 'യൂഗോസ്ലേവിയൻ കൺവേർട്ടിബിൾ ദിനാർ',
+ 'ZAL' => 'ദക്ഷിണാഫ്രിക്കൻ റാൻഡ് (ഫിനാൻഷ്യൽ)',
+ 'ZAR' => 'ദക്ഷിണാഫ്രിക്കൻ റാൻഡ്',
+ 'ZMK' => 'സാംബിയൻ ക്വാച (1968–2012)',
+ 'ZMW' => 'സാംബിയൻ ക്വാച്ച',
+ 'ZRN' => 'സൈറിയൻ ന്യൂ സൈർ',
+ 'ZRZ' => 'സൈറിയൻ സൈർ',
+ 'ZWD' => 'സിംബാബ്‌വെ ഡോളർ',
+);
+
+$currencySymbols = array(
+ 'AED' => 'AED',
+ 'AFN' => 'AFN',
+ 'ALL' => 'ALL',
+ 'AMD' => 'AMD',
+ 'ANG' => 'ANG',
+ 'AOA' => 'AOA',
+ 'ARS' => 'ARS',
+ 'AUD' => 'A$',
+ 'AWG' => 'AWG',
+ 'AZN' => 'AZN',
+ 'BAM' => 'BAM',
+ 'BBD' => 'BBD',
+ 'BDT' => 'BDT',
+ 'BGN' => 'BGN',
+ 'BHD' => 'BHD',
+ 'BIF' => 'BIF',
+ 'BMD' => 'BMD',
+ 'BND' => 'BND',
+ 'BOB' => 'BOB',
+ 'BRL' => 'R$',
+ 'BSD' => 'BSD',
+ 'BTN' => 'BTN',
+ 'BWP' => 'BWP',
+ 'BYR' => 'BYR',
+ 'BZD' => 'BZD',
+ 'CAD' => 'CA$',
+ 'CDF' => 'CDF',
+ 'CHF' => 'CHF',
+ 'CLP' => 'CLP',
+ 'CNY' => 'CN¥',
+ 'COP' => 'COP',
+ 'CRC' => 'CRC',
+ 'CUC' => 'CUC',
+ 'CUP' => 'CUP',
+ 'CVE' => 'CVE',
+ 'CZK' => 'CZK',
+ 'DJF' => 'DJF',
+ 'DKK' => 'DKK',
+ 'DOP' => 'DOP',
+ 'DZD' => 'DZD',
+ 'EGP' => 'EGP',
+ 'ERN' => 'ERN',
+ 'ETB' => 'ETB',
+ 'EUR' => '€',
+ 'FJD' => 'FJD',
+ 'FKP' => 'FKP',
+ 'GBP' => '£',
+ 'GEL' => 'GEL',
+ 'GHS' => 'GHS',
+ 'GIP' => 'GIP',
+ 'GMD' => 'GMD',
+ 'GNF' => 'GNF',
+ 'GTQ' => 'GTQ',
+ 'GYD' => 'GYD',
+ 'HKD' => 'HK$',
+ 'HNL' => 'HNL',
+ 'HRK' => 'HRK',
+ 'HTG' => 'HTG',
+ 'HUF' => 'HUF',
+ 'IDR' => 'IDR',
+ 'ILS' => '₪',
+ 'INR' => '₹',
+ 'IQD' => 'IQD',
+ 'IRR' => 'IRR',
+ 'ISK' => 'ISK',
+ 'JMD' => 'JMD',
+ 'JOD' => 'JOD',
+ 'JPY' => '¥',
+ 'KES' => 'KES',
+ 'KGS' => 'KGS',
+ 'KHR' => 'KHR',
+ 'KMF' => 'KMF',
+ 'KPW' => 'KPW',
+ 'KRW' => '₩',
+ 'KWD' => 'KWD',
+ 'KYD' => 'KYD',
+ 'KZT' => 'KZT',
+ 'LAK' => 'LAK',
+ 'LBP' => 'LBP',
+ 'LKR' => 'LKR',
+ 'LRD' => 'LRD',
+ 'LTL' => 'LTL',
+ 'LVL' => 'LVL',
+ 'LYD' => 'LYD',
+ 'MAD' => 'MAD',
+ 'MDL' => 'MDL',
+ 'MGA' => 'MGA',
+ 'MKD' => 'MKD',
+ 'MMK' => 'MMK',
+ 'MNT' => 'MNT',
+ 'MOP' => 'MOP',
+ 'MRO' => 'MRO',
+ 'MUR' => 'MUR',
+ 'MVR' => 'MVR',
+ 'MWK' => 'MWK',
+ 'MXN' => 'MX$',
+ 'MYR' => 'MYR',
+ 'MZN' => 'MZN',
+ 'NAD' => 'NAD',
+ 'NGN' => 'NGN',
+ 'NIO' => 'NIO',
+ 'NOK' => 'NOK',
+ 'NPR' => 'NPR',
+ 'NZD' => 'NZ$',
+ 'OMR' => 'OMR',
+ 'PAB' => 'PAB',
+ 'PEN' => 'PEN',
+ 'PGK' => 'PGK',
+ 'PHP' => 'PHP',
+ 'PKR' => 'PKR',
+ 'PLN' => 'PLN',
+ 'PYG' => 'PYG',
+ 'QAR' => 'QAR',
+ 'RON' => 'RON',
+ 'RSD' => 'RSD',
+ 'RUB' => 'RUB',
+ 'RWF' => 'RWF',
+ 'SAR' => 'SAR',
+ 'SBD' => 'SBD',
+ 'SCR' => 'SCR',
+ 'SDG' => 'SDG',
+ 'SEK' => 'SEK',
+ 'SGD' => 'SGD',
+ 'SHP' => 'SHP',
+ 'SLL' => 'SLL',
+ 'SOS' => 'SOS',
+ 'SRD' => 'SRD',
+ 'SSP' => 'SSP',
+ 'STD' => 'STD',
+ 'SYP' => 'SYP',
+ 'SZL' => 'SZL',
+ 'THB' => '฿',
+ 'TJS' => 'TJS',
+ 'TMT' => 'TMT',
+ 'TND' => 'TND',
+ 'TOP' => 'TOP',
+ 'TRY' => 'TRY',
+ 'TTD' => 'TTD',
+ 'TWD' => 'NT$',
+ 'TZS' => 'TZS',
+ 'UAH' => 'UAH',
+ 'UGX' => 'UGX',
+ 'USD' => '$',
+ 'UYU' => 'UYU',
+ 'UZS' => 'UZS',
+ 'VEF' => 'VEF',
+ 'VND' => '₫',
+ 'VUV' => 'VUV',
+ 'WST' => 'WST',
+ 'XAF' => 'FCFA',
+ 'XCD' => 'EC$',
+ 'XOF' => 'CFA',
+ 'XPF' => 'CFPF',
+ 'YER' => 'YER',
+ 'ZAR' => 'ZAR',
+ 'ZMW' => 'ZMW',
+);
+
+$countryNames = array(
+ 'AC' => 'അസൻഷൻ ദ്വീപ്',
+ 'AD' => 'അന്റോറ',
+ 'AE' => 'യുണൈറ്റഡ് അറബ് എമിറൈറ്റ്‌സ്',
+ 'AF' => 'അഫ്‌ഗാനിസ്ഥാൻ',
+ 'AG' => 'ആൻറിഗ്വയും ബർബുഡയും',
+ 'AI' => 'ആൻഗ്വില്ല',
+ 'AL' => 'അൽബേനിയ',
+ 'AM' => 'അർമേനിയ',
+ 'AN' => 'നെതർലൻഡ്സ് ആൻറിലിസ്',
+ 'AO' => 'അംഗോള',
+ 'AQ' => 'അൻറാർട്ടിക്ക',
+ 'AR' => 'അർജൻറീന',
+ 'AS' => 'അമേരിക്കൻ സമോവ',
+ 'AT' => 'ഓസ്ട്രിയ',
+ 'AU' => 'ഓസ്‌ട്രേലിയ',
+ 'AW' => 'അറൂബ',
+ 'AX' => 'അലൻഡ് ദ്വീപുകൾ',
+ 'AZ' => 'അസർബൈജാൻ',
+ 'BA' => 'ബോസ്നിയയും ഹെർസഗോവിനയും',
+ 'BB' => 'ബാർബഡോസ്',
+ 'BD' => 'ബംഗ്ലാദേശ്',
+ 'BE' => 'ബെൽജിയം',
+ 'BF' => 'ബുർക്കിനാ ഫാസോ',
+ 'BG' => 'ബൾഗേറിയ',
+ 'BH' => 'ബഹ്റിൻ',
+ 'BI' => 'ബറുണ്ടി',
+ 'BJ' => 'ബെനിൻ',
+ 'BL' => 'സെന്റ് ബാർത്തലമി',
+ 'BM' => 'ബർമുഡ',
+ 'BN' => 'ബ്രൂണൈ',
+ 'BO' => 'ബൊളീവിയ',
+ 'BQ' => 'ബൊണെയ്ർ, സിന്റ് യുസ്റ്റേഷ്യസ്, സാബ എന്നിവ',
+ 'BR' => 'ബ്രസീൽ',
+ 'BS' => 'ബഹാമാസ്',
+ 'BT' => 'ഭൂട്ടാൻ',
+ 'BV' => 'ബൗവെട്ട് ദ്വീപ്',
+ 'BW' => 'ബോട്സ്വാന',
+ 'BY' => 'ബെലറൂസ്',
+ 'BZ' => 'ബെലീസ്',
+ 'CA' => 'കാനഡ',
+ 'CC' => 'കോക്കസ് ദ്വീപുകൾ',
+ 'CD' => 'കോംഗോ - കിൻഷാസ',
+ 'CF' => 'സെൻട്രൽ ആഫ്രിക്കൻ റിപ്പബ്ലിക്',
+ 'CG' => 'കോംഗോ - ബ്രാസവില്ലി',
+ 'CH' => 'സ്വിറ്റ്സർലാൻഡ്',
+ 'CI' => 'കോട്ട് ഡി വാർ',
+ 'CK' => 'കുക്ക് ദ്വീപുകൾ',
+ 'CL' => 'ചിലി',
+ 'CM' => 'കാമറൂൺ',
+ 'CN' => 'ചൈന',
+ 'CO' => 'കൊളംബിയ',
+ 'CP' => 'ക്ലിപ്പെർട്ടൻ ദ്വീപ്',
+ 'CR' => 'കോസ്റ്ററിക്ക',
+ 'CU' => 'ക്യൂബ',
+ 'CV' => 'കേപ്പ് വെർദെ',
+ 'CW' => 'കുറാകാവോ',
+ 'CX' => 'ക്രിസ്മസ് ദ്വീപ്',
+ 'CY' => 'സൈപ്രസ്',
+ 'CZ' => 'ചെക്ക് റിപ്പബ്ലിക്',
+ 'DE' => 'ജർമനി',
+ 'DG' => 'ഡീഗോ ഗ്രാഷ്യ',
+ 'DJ' => 'ദിജിബൗട്ടി',
+ 'DK' => 'ഡെൻമാർക്ക്',
+ 'DM' => 'ഡൊമിനിക്ക',
+ 'DO' => 'ഡൊമിനിക്കൻ റിപ്പബ്ലിക്',
+ 'DZ' => 'അൾജീരിയ',
+ 'EA' => 'സെയൂത്ത ആൻഡ് മെലിയ',
+ 'EC' => 'ഇക്വഡോർ',
+ 'EE' => 'എസ്റ്റോണിയ‍',
+ 'EG' => 'ഈജിപ്ത്',
+ 'EH' => 'പശ്ചിമ സഹാറ',
+ 'ER' => 'എറിത്രിയ',
+ 'ES' => 'സ്‌പെയിൻ',
+ 'ET' => 'എത്യോപ്യ',
+ 'EU' => 'യൂറോപ്യൻ യൂണിയൻ',
+ 'FI' => 'ഫിൻലാൻഡ്',
+ 'FJ' => 'ഫിജി',
+ 'FK' => 'ഫാക്ക്‌ലാന്റ് ദ്വീപുകൾ',
+ 'FM' => 'മൈക്രോനേഷ്യ',
+ 'FO' => 'ഫറോ ദ്വീപുകൾ',
+ 'FR' => 'ഫ്രാൻസ്',
+ 'GA' => 'ഗാബൺ',
+ 'GB' => 'യു.കെ.',
+ 'GD' => 'ഗ്രനേഡ',
+ 'GE' => 'ജോർജ്ജിയ',
+ 'GF' => 'ഫ്രഞ്ച് ഗയാന',
+ 'GG' => 'ഗേൺസി',
+ 'GH' => 'ഘാന',
+ 'GI' => 'ജിബ്രാൾട്ടർ',
+ 'GL' => 'ഗ്രീൻലാൻറ്',
+ 'GM' => 'ഗാംബിയ',
+ 'GN' => 'ഗിനിയ',
+ 'GP' => 'ഗ്വാഡലൂപ്പ്',
+ 'GQ' => 'ഇക്വറ്റോറിയൽ ഗിനിയ',
+ 'GR' => 'ഗ്രീസ്',
+ 'GS' => 'ദക്ഷിണ ജോർജ്ജിയയും ദക്ഷിണ സാൻഡ്‌വിച്ച് ദ്വീപുകളും',
+ 'GT' => 'ഗ്വാട്ടിമാല',
+ 'GU' => 'ഗ്വാം',
+ 'GW' => 'ഗിനിയ-ബിസൗ',
+ 'GY' => 'ഗയാന',
+ 'HK' => 'ഹോങ്കോങ്ങ്',
+ 'HM' => 'ഹിയേർഡും മക്‌ഡൊണാൾഡ് ദ്വീപുകളും',
+ 'HN' => 'ഹോണ്ടുറാസ്',
+ 'HR' => 'ക്രൊയേഷ്യ',
+ 'HT' => 'ഹെയ്തി',
+ 'HU' => 'ഹംഗറി',
+ 'IC' => 'കാനറി ദ്വീപുകൾ',
+ 'ID' => 'ഇന്തോനേഷ്യ',
+ 'IE' => 'അയർലാൻഡ്',
+ 'IL' => 'ഇസ്രായേൽ',
+ 'IM' => 'ഐൽ ഓഫ് മാൻ',
+ 'IN' => 'ഇന്ത്യ',
+ 'IO' => 'ബ്രിട്ടീഷ് ഇന്ത്യൻ മഹാസമുദ്ര പ്രദേശം',
+ 'IQ' => 'ഇറാഖ്',
+ 'IR' => 'ഇറാൻ',
+ 'IS' => 'ഐസ്‌ലാന്റ്',
+ 'IT' => 'ഇറ്റലി',
+ 'JE' => 'ജേഴ്സി',
+ 'JM' => 'ജമൈക്ക',
+ 'JO' => 'ജോർദ്ദാൻ',
+ 'JP' => 'ജപ്പാൻ',
+ 'KE' => 'കെനിയ',
+ 'KG' => 'കിർഗിസ്ഥാൻ',
+ 'KH' => 'കംബോഡിയ',
+ 'KI' => 'കിരിബാട്ടി',
+ 'KM' => 'കോമൊറോസ്',
+ 'KN' => 'സെന്റ് കിറ്റ്‌സും നെവിസും',
+ 'KP' => 'ഉത്തരകൊറിയ',
+ 'KR' => 'ദക്ഷിണകൊറിയ',
+ 'KW' => 'കുവൈറ്റ്',
+ 'KY' => 'കേമാൻ ദ്വീപുകൾ',
+ 'KZ' => 'കസാഖിസ്ഥാൻ',
+ 'LA' => 'ലാവോസ്',
+ 'LB' => 'ലെബനൻ',
+ 'LC' => 'സെൻറ് ലൂസിയ',
+ 'LI' => 'ലിച്ചൺസ്റ്റൈൻ',
+ 'LK' => 'ശ്രീലങ്ക',
+ 'LR' => 'ലൈബീരിയ',
+ 'LS' => 'ലെസോതോ',
+ 'LT' => 'ലിത്വാനിയ',
+ 'LU' => 'ലക്സംബർഗ്',
+ 'LV' => 'ലാറ്റ്വിയ',
+ 'LY' => 'ലിബിയ',
+ 'MA' => 'മൊറോക്കൊ',
+ 'MC' => 'മൊണാക്കോ',
+ 'MD' => 'മൾഡോവ',
+ 'ME' => 'മോണ്ടെനെഗ്രോ',
+ 'MF' => 'സെൻറ് മാർട്ടിൻ',
+ 'MG' => 'മഡഗാസ്കർ',
+ 'MH' => 'മാർഷൽ‍‍ ദ്വീപുകൾ',
+ 'MK' => 'മാസിഡോണിയ',
+ 'ML' => 'മാലി',
+ 'MM' => 'മ്യാൻമാർ (ബർമ്മ)',
+ 'MN' => 'മംഗോളിയ',
+ 'MO' => 'മക്കാവു',
+ 'MP' => 'ഉത്തര മറിയാനാ ദ്വീപുകൾ',
+ 'MQ' => 'മാർട്ടിനിക്ക്',
+ 'MR' => 'മൗറിറ്റാനിയ',
+ 'MS' => 'മൊണ്ടെസരത്ത്',
+ 'MT' => 'മാൾട്ട',
+ 'MU' => 'മൗറീഷ്യസ്',
+ 'MV' => 'മാലിദ്വീപ്',
+ 'MW' => 'മലാവി',
+ 'MX' => 'മെക്സിക്കോ',
+ 'MY' => 'മലേഷ്യ',
+ 'MZ' => 'മൊസാംബിക്ക്',
+ 'NA' => 'നമീബിയ',
+ 'NC' => 'പുതിയ കാലിഡോണിയ',
+ 'NE' => 'നൈജർ',
+ 'NF' => 'നോർഫോക് ദ്വീപ്',
+ 'NG' => 'നൈജീരിയ',
+ 'NI' => 'നിക്കരാഗ്വ',
+ 'NL' => 'നെതർലാൻഡ്‌സ്',
+ 'NO' => 'നോർവെ',
+ 'NP' => 'നേപ്പാൾ',
+ 'NR' => 'നൗറു',
+ 'NU' => 'ന്യൂയി',
+ 'NZ' => 'ന്യൂസിലാൻറ്',
+ 'OM' => 'ഒമാൻ',
+ 'PA' => 'പനാമ',
+ 'PE' => 'പെറു',
+ 'PF' => 'ഫ്രഞ്ച് പോളിനേഷ്യ',
+ 'PG' => 'പാപ്പുവ ന്യൂ ഗിനിയ',
+ 'PH' => 'ഫിലിപ്പൈൻസ്',
+ 'PK' => 'പാക്കിസ്ഥാൻ',
+ 'PL' => 'പോളണ്ട്',
+ 'PM' => 'സെന്റ് പിയറിയും മിക്കലണും',
+ 'PN' => 'പിറ്റ്‌കെയ്‌ൻ ദ്വീപുകൾ',
+ 'PR' => 'പ്യൂർട്ടോ റിക്കോ',
+ 'PS' => 'പലസ്‌തീൻ',
+ 'PT' => 'പോർച്ചുഗൽ',
+ 'PW' => 'പലാവു',
+ 'PY' => 'പരാഗ്വേ',
+ 'QA' => 'ഖത്തർ',
+ 'QO' => 'ദ്വീപസമൂഹം',
+ 'RE' => 'റീയൂണിയൻ',
+ 'RO' => 'റൊമാനിയ',
+ 'RS' => 'സെർബിയ',
+ 'RU' => 'റഷ്യ',
+ 'RW' => 'റുവാണ്ട',
+ 'SA' => 'സൗദി അറേബ്യ',
+ 'SB' => 'സോളമൻ‍ ദ്വീപുകൾ',
+ 'SC' => 'സെയ്‌ഷെൽസ്',
+ 'SD' => 'സുഡാൻ',
+ 'SE' => 'സ്വീഡൻ',
+ 'SG' => 'സിംഗപ്പുർ',
+ 'SH' => 'സെൻറ് ഹെലീന',
+ 'SI' => 'സ്ലോവേനിയ',
+ 'SJ' => 'സ്വാൽബാഡും ജാൻ മായേനും',
+ 'SK' => 'സ്ലോവാക്യ',
+ 'SL' => 'സിയെറ ലിയോൺ',
+ 'SM' => 'സാൻ മറിനോ',
+ 'SN' => 'സെനഗൽ',
+ 'SO' => 'സോമാലിയ',
+ 'SR' => 'സുരിനെയിം',
+ 'SS' => 'ദക്ഷിണ സുഡാൻ',
+ 'ST' => 'സാവോ ടോമും പ്രിൻസിപെയും',
+ 'SV' => 'എൽ സാൽവദോർ',
+ 'SX' => 'സിന്റ് മാർട്ടെൻ',
+ 'SY' => 'സിറിയ',
+ 'SZ' => 'സ്വാസിലാൻറ്',
+ 'TA' => 'ട്രസ്റ്റൻ ഡ കൂന',
+ 'TC' => 'ടർക്ക്‌സും കെയ്‌ക്കോ ദ്വീപുകളും',
+ 'TD' => 'ഛാഡ്',
+ 'TF' => 'ഫ്രഞ്ച് ദക്ഷിണ ഭൂപ്രദേശം',
+ 'TG' => 'ടോഗോ',
+ 'TH' => 'തായ്‌ലാൻഡ്',
+ 'TJ' => 'താജിക്കിസ്ഥാൻ',
+ 'TK' => 'ടോക്കെലൂ',
+ 'TL' => 'തിമോർ-ലെസ്റ്റെ',
+ 'TM' => 'തുർക്ക്മെനിസ്ഥാൻ',
+ 'TN' => 'ടുണീഷ്യ',
+ 'TO' => 'ടോംഗ',
+ 'TR' => 'തുർക്കി',
+ 'TT' => 'ട്രിനിഡാഡും ടുബാഗോയും',
+ 'TV' => 'ടുവാലു',
+ 'TW' => 'തായ്‌വാൻ',
+ 'TZ' => 'ടാൻസാനിയ',
+ 'UA' => 'ഉക്രെയ്‌ൻ',
+ 'UG' => 'ഉഗാണ്ട',
+ 'UM' => 'യു.എസ്. ദ്വീപസമൂഹങ്ങൾ',
+ 'US' => 'യു.എസ്',
+ 'UY' => 'ഉറുഗ്വേ',
+ 'UZ' => 'ഉസ്‌ബെക്കിസ്ഥാൻ',
+ 'VA' => 'വത്തിക്കാൻ',
+ 'VC' => 'സെന്റ് വിൻസെന്റും ഗ്രനെഡൈൻസും',
+ 'VE' => 'വെനിസ്വേല',
+ 'VG' => 'ബ്രിട്ടീഷ് വെർജിൻ ദ്വീപുകൾ',
+ 'VI' => 'യു.എസ്. വെർജിൻ ദ്വീപുകൾ',
+ 'VN' => 'വിയറ്റ്നാം',
+ 'VU' => 'വന്വാതു',
+ 'WF' => 'വാലിസ് ആന്റ് ഫ്യൂച്യുന',
+ 'WS' => 'സമോവ',
+ 'XK' => 'കൊസോവൊ',
+ 'YE' => 'യെമൻ',
+ 'YT' => 'മയോട്ടി',
+ 'ZA' => 'ദക്ഷിണാഫ്രിക്ക',
+ 'ZM' => 'സാംബിയ',
+ 'ZW' => 'സിംബാബ്‌വേ',
+);
+
+$timeUnits = array(
+ 'day-future-one' => '{0} ദിവസത്തിൽ',
+ 'day-future-other' => '{0} ദിവസത്തിൽ',
+ 'day-narrow-future-one' => '{0} ദിവസത്തിൽ',
+ 'day-narrow-future-other' => '{0} ദിവസത്തിൽ',
+ 'day-narrow-past-one' => '{0} ദിവസം മുമ്പ്',
+ 'day-narrow-past-other' => '{0} ദിവസം മുമ്പ്',
+ 'day-one' => '{0} ദിവസം',
+ 'day-other' => '{0} ദിവസം',
+ 'day-past-one' => '{0} ദിവസം മുമ്പ്',
+ 'day-past-other' => '{0} ദിവസം മുമ്പ്',
+ 'day-short-future-one' => '{0} ദിവസത്തിൽ',
+ 'day-short-future-other' => '{0} ദിവസത്തിൽ',
+ 'day-short-past-one' => '{0} ദിവസം മുമ്പ്',
+ 'day-short-past-other' => '{0} ദിവസം മുമ്പ്',
+ 'hour-future-one' => '{0} മണിക്കൂറിൽ',
+ 'hour-future-other' => '{0} മണിക്കൂറിൽ',
+ 'hour-narrow-future-one' => '{0} മണിക്കൂറിൽ',
+ 'hour-narrow-future-other' => '{0} മണിക്കൂറിൽ',
+ 'hour-narrow-past-one' => '{0} മണിക്കൂർ മുമ്പ്',
+ 'hour-narrow-past-other' => '{0} മണിക്കൂർ മുമ്പ്',
+ 'hour-one' => '{0} മണിക്കൂർ',
+ 'hour-other' => '{0} മണിക്കൂർ',
+ 'hour-past-one' => '{0} മണിക്കൂർ മുമ്പ്',
+ 'hour-past-other' => '{0} മണിക്കൂർ മുമ്പ്',
+ 'hour-short-future-one' => '{0} മണിക്കൂറിൽ',
+ 'hour-short-future-other' => '{0} മണിക്കൂറിൽ',
+ 'hour-short-past-one' => '{0} മണിക്കൂർ മുമ്പ്',
+ 'hour-short-past-other' => '{0} മണിക്കൂർ മുമ്പ്',
+ 'microsecond-one' => '{0} മൈക്രോസെക്കൻഡ്',
+ 'microsecond-other' => '{0} മൈക്രോസെക്കൻഡ്',
+ 'millisecond-one' => '{0} മില്ലിസെക്കൻഡ്',
+ 'millisecond-other' => '{0} മില്ലിസെക്കൻഡ്',
+ 'minute-future-one' => '{0} മിനിറ്റിൽ',
+ 'minute-future-other' => '{0} മിനിറ്റിൽ',
+ 'minute-narrow-future-one' => '{0} മിനിറ്റിൽ',
+ 'minute-narrow-future-other' => '{0} മിനിറ്റിൽ',
+ 'minute-narrow-past-one' => '{0} മിനിറ്റ് മുമ്പ്',
+ 'minute-narrow-past-other' => '{0} മിനിറ്റ് മുമ്പ്',
+ 'minute-one' => '{0} മിനിറ്റ്',
+ 'minute-other' => '{0} മിനിറ്റ്',
+ 'minute-past-one' => '{0} മിനിറ്റ് മുമ്പ്',
+ 'minute-past-other' => '{0} മിനിറ്റ് മുമ്പ്',
+ 'minute-short-future-one' => '{0} മിനിറ്റിൽ',
+ 'minute-short-future-other' => '{0} മിനിറ്റിൽ',
+ 'minute-short-past-one' => '{0} മിനിറ്റ് മുമ്പ്',
+ 'minute-short-past-other' => '{0} മിനിറ്റ് മുമ്പ്',
+ 'month-future-one' => '{0} മാസത്തിൽ',
+ 'month-future-other' => '{0} മാസത്തിൽ',
+ 'month-narrow-future-one' => '{0} മാസത്തിൽ',
+ 'month-narrow-future-other' => '{0} മാസത്തിൽ',
+ 'month-narrow-past-one' => '{0} മാസം മുമ്പ്',
+ 'month-narrow-past-other' => '{0} മാസം മുമ്പ്',
+ 'month-one' => '{0} മാസം',
+ 'month-other' => '{0} മാസം',
+ 'month-past-one' => '{0} മാസം മുമ്പ്',
+ 'month-past-other' => '{0} മാസം മുമ്പ്',
+ 'month-short-future-one' => '{0} മാസത്തിൽ',
+ 'month-short-future-other' => '{0} മാസത്തിൽ',
+ 'month-short-past-one' => '{0} മാസം മുമ്പ്',
+ 'month-short-past-other' => '{0} മാസം മുമ്പ്',
+ 'nanosecond-one' => '{0} നാനോസെക്കൻഡ്',
+ 'nanosecond-other' => '{0} നാനോസെക്കൻഡ്',
+ 'quarter-future-one' => '{0} പാദത്തിൽ',
+ 'quarter-future-other' => '{0} പാദത്തിൽ',
+ 'quarter-narrow-future-one' => '{0} പാദത്തിൽ',
+ 'quarter-narrow-future-other' => '{0} പാദത്തിൽ',
+ 'quarter-narrow-past-one' => '{0} പാദം മുമ്പ്',
+ 'quarter-narrow-past-other' => '{0} പാദം മുമ്പ്',
+ 'quarter-past-one' => '{0} പാദം മുമ്പ്',
+ 'quarter-past-other' => '{0} പാദം മുമ്പ്',
+ 'quarter-short-future-one' => '{0} പാദത്തിൽ',
+ 'quarter-short-future-other' => '{0} പാദത്തിൽ',
+ 'quarter-short-past-one' => '{0} പാദം മുമ്പ്',
+ 'quarter-short-past-other' => '{0} പാദം മുമ്പ്',
+ 'second-future-one' => '{0} സെക്കൻഡിൽ',
+ 'second-future-other' => '{0} സെക്കൻഡിൽ',
+ 'second-narrow-future-one' => '{0} സെക്കൻഡിൽ',
+ 'second-narrow-future-other' => '{0} സെക്കൻഡിൽ',
+ 'second-narrow-past-one' => '{0} സെക്കൻഡ് മുമ്പ്',
+ 'second-narrow-past-other' => '{0} സെക്കൻഡ് മുമ്പ്',
+ 'second-one' => '{0} സെക്കൻഡ്',
+ 'second-other' => '{0} സെക്കൻഡ്',
+ 'second-past-one' => '{0} സെക്കൻഡ് മുമ്പ്',
+ 'second-past-other' => '{0} സെക്കൻഡ് മുമ്പ്',
+ 'second-short-future-one' => '{0} സെക്കൻഡിൽ',
+ 'second-short-future-other' => '{0} സെക്കൻഡിൽ',
+ 'second-short-past-one' => '{0} സെക്കൻഡ് മുമ്പ്',
+ 'second-short-past-other' => '{0} സെക്കൻഡ് മുമ്പ്',
+ 'week-future-one' => '{0} ആഴ്ചയിൽ',
+ 'week-future-other' => '{0} ആഴ്ചയിൽ',
+ 'week-narrow-future-one' => '{0} ആഴ്ചയിൽ',
+ 'week-narrow-future-other' => '{0} ആഴ്ചയിൽ',
+ 'week-narrow-past-one' => '{0} ആഴ്ച മുമ്പ്',
+ 'week-narrow-past-other' => '{0} ആഴ്ച മുമ്പ്',
+ 'week-one' => '{0} ആഴ്ച',
+ 'week-other' => '{0} ആഴ്ച',
+ 'week-past-one' => '{0} ആഴ്ച മുമ്പ്',
+ 'week-past-other' => '{0} ആഴ്ച മുമ്പ്',
+ 'week-short-future-one' => '{0} ആഴ്ചയിൽ',
+ 'week-short-future-other' => '{0} ആഴ്ചയിൽ',
+ 'week-short-past-one' => '{0} ആഴ്ച മുമ്പ്',
+ 'week-short-past-other' => '{0} ആഴ്ച മുമ്പ്',
+ 'year-future-one' => '{0} വർഷത്തിൽ',
+ 'year-future-other' => '{0} വർഷത്തിൽ',
+ 'year-narrow-future-one' => '{0} വർഷത്തിൽ',
+ 'year-narrow-future-other' => '{0} വർഷത്തിൽ',
+ 'year-narrow-past-one' => '{0} വർഷം മുമ്പ്',
+ 'year-narrow-past-other' => '{0} വർഷം മുമ്പ്',
+ 'year-one' => '{0} വർഷം',
+ 'year-other' => '{0} വർഷം',
+ 'year-past-one' => '{0} വർഷം മുമ്പ്',
+ 'year-past-other' => '{0} വർഷം മുമ്പ്',
+ 'year-short-future-one' => '{0} വർഷത്തിൽ',
+ 'year-short-future-other' => '{0} വർഷത്തിൽ',
+ 'year-short-past-one' => '{0} വർഷം മുമ്പ്',
+ 'year-short-past-other' => '{0} വർഷം മുമ്പ്',
+);
diff --git a/MLEB/cldr/CldrNames/CldrNamesMn.php b/MLEB/cldr/CldrNames/CldrNamesMn.php
new file mode 100644
index 00000000..aae8cd41
--- /dev/null
+++ b/MLEB/cldr/CldrNames/CldrNamesMn.php
@@ -0,0 +1,936 @@
+<?php
+
+$languageNames = array(
+ 'ab' => 'абхаз',
+ 'af' => 'африк',
+ 'agq' => 'агем',
+ 'ak' => 'акан',
+ 'am' => 'амхар',
+ 'ar' => 'араб',
+ 'ar-001' => 'стандарт араб',
+ 'arn' => 'мапүчи',
+ 'as' => 'ассам',
+ 'asa' => 'асу',
+ 'az' => 'азербайжан',
+ 'ba' => 'башкир',
+ 'be' => 'беларусь',
+ 'bem' => 'бемба',
+ 'bez' => 'бена',
+ 'bg' => 'болгар',
+ 'bm' => 'бамбара',
+ 'bn' => 'бенгал',
+ 'bo' => 'төвд',
+ 'br' => 'бретон',
+ 'brx' => 'бодо',
+ 'bs' => 'босни',
+ 'ca' => 'каталан',
+ 'cgg' => 'чига',
+ 'chr' => 'чироки',
+ 'ckb' => 'сорани күрд',
+ 'co' => 'корсик',
+ 'cs' => 'чех',
+ 'cy' => 'уэлс',
+ 'da' => 'дани',
+ 'dav' => 'тайта',
+ 'de' => 'герман',
+ 'de-at' => 'австри герман',
+ 'de-ch' => 'швейцари дээр герман',
+ 'dje' => 'зарма',
+ 'dsb' => 'ловер-сорби',
+ 'dua' => 'дуала',
+ 'dyo' => 'жола-фони',
+ 'dz' => 'жонха',
+ 'ebu' => 'эмбу',
+ 'ee' => 'эвэ',
+ 'el' => 'грек',
+ 'en' => 'англи',
+ 'en-au' => 'австрали англи',
+ 'en-ca' => 'канад англи',
+ 'en-gb' => 'британийн англи',
+ 'en-us' => 'америкийн англи',
+ 'eo' => 'эсперанто',
+ 'es' => 'испани',
+ 'es-419' => 'латин америкийн испани',
+ 'es-es' => 'европын испани',
+ 'es-mx' => 'мексикийн испани',
+ 'et' => 'эстони',
+ 'eu' => 'баск',
+ 'fa' => 'перс',
+ 'fi' => 'финлянд',
+ 'fil' => 'филиппин',
+ 'fj' => 'фижи',
+ 'fo' => 'фарер',
+ 'fr' => 'франц',
+ 'fr-ca' => 'канад франц',
+ 'fr-ch' => 'швейцари франц',
+ 'fy' => 'баруун фризын',
+ 'ga' => 'ирланд',
+ 'gag' => 'гагуз',
+ 'gd' => 'шотланд келт',
+ 'gl' => 'галик',
+ 'gn' => 'гуарани',
+ 'gsw' => 'швейцари герман',
+ 'gu' => 'гужарати',
+ 'guz' => 'гузы',
+ 'gv' => 'манкс',
+ 'ha' => 'хауса',
+ 'haw' => 'хавай',
+ 'he' => 'еврей',
+ 'hi' => 'хинди',
+ 'hr' => 'хорват',
+ 'hsb' => 'дээд сорби',
+ 'ht' => 'гаити',
+ 'hu' => 'унгар',
+ 'hy' => 'армен',
+ 'ia' => 'интерлингво',
+ 'id' => 'индонези',
+ 'ie' => 'нэгдмэл хэл',
+ 'ig' => 'игбо',
+ 'ii' => 'шичуан еи',
+ 'is' => 'исланд',
+ 'it' => 'итали',
+ 'iu' => 'инуктитут',
+ 'ja' => 'япон',
+ 'jgo' => 'нгомба',
+ 'jmc' => 'мачамэ',
+ 'jv' => 'ява',
+ 'ka' => 'гүрж',
+ 'kab' => 'кабиле',
+ 'kam' => 'камба',
+ 'kde' => 'маконде',
+ 'kea' => 'кабүвердиану',
+ 'khq' => 'койра чини',
+ 'ki' => 'кикуюү',
+ 'kk' => 'хасаг',
+ 'kl' => 'калалисут',
+ 'kln' => 'каленжин',
+ 'km' => 'камбож',
+ 'kn' => 'каннада',
+ 'ko' => 'солонгос',
+ 'koi' => 'коми-пермяк',
+ 'kok' => 'конкани',
+ 'ks' => 'кашмир',
+ 'ksb' => 'шамбала',
+ 'ksf' => 'бафиа',
+ 'ku' => 'күрд',
+ 'kw' => 'корны',
+ 'ky' => 'киргиз',
+ 'la' => 'латин',
+ 'lag' => 'ланги',
+ 'lb' => 'люксембург',
+ 'lg' => 'ганда',
+ 'lkt' => 'лакота',
+ 'ln' => 'лингала',
+ 'lo' => 'лаос',
+ 'lt' => 'литва',
+ 'lu' => 'луба-катанга',
+ 'luo' => 'луо',
+ 'luy' => 'луяа',
+ 'lv' => 'латви',
+ 'mas' => 'масай',
+ 'mer' => 'меру',
+ 'mfe' => 'морисен',
+ 'mg' => 'малагаси',
+ 'mgh' => 'макува-мито',
+ 'mgo' => 'мета',
+ 'mi' => 'маори',
+ 'mk' => 'македон',
+ 'ml' => 'малайлам',
+ 'mn' => 'монгол',
+ 'moh' => 'мохаук',
+ 'mr' => 'марати',
+ 'ms' => 'малай',
+ 'mt' => 'малти',
+ 'mua' => 'мунданг',
+ 'my' => 'бирм',
+ 'naq' => 'нама',
+ 'nb' => 'норвегийн букмол',
+ 'nd' => 'хойд ндебеле',
+ 'ne' => 'балба',
+ 'nl' => 'голланд',
+ 'nl-be' => 'фламанд',
+ 'nmg' => 'квазио',
+ 'nn' => 'норвегийн нинорск',
+ 'no' => 'норвеги',
+ 'nqo' => 'нко',
+ 'nus' => 'нуер',
+ 'nyn' => 'нянколе',
+ 'oc' => 'францын окситан',
+ 'om' => 'оромо',
+ 'or' => 'ория',
+ 'pa' => 'панжаб',
+ 'pl' => 'польш',
+ 'ps' => 'пашто',
+ 'pt' => 'португал',
+ 'pt-br' => 'португал (бразил)',
+ 'pt-pt' => 'европын португал',
+ 'qu' => 'кечуа',
+ 'quc' => 'киче',
+ 'rm' => 'романш',
+ 'rn' => 'рунди',
+ 'ro' => 'румын',
+ 'ro-md' => 'молдав',
+ 'rof' => 'ромбо',
+ 'ru' => 'орос',
+ 'rw' => 'кинярванда',
+ 'rwk' => 'рва',
+ 'sa' => 'санскрит',
+ 'saq' => 'самбүрү',
+ 'sbp' => 'сангү',
+ 'sd' => 'синдхи',
+ 'se' => 'хойд сами',
+ 'seh' => 'сена',
+ 'ses' => 'кёраборо сени',
+ 'sg' => 'санго',
+ 'sh' => 'хорватын серб',
+ 'shi' => 'тачелхит',
+ 'si' => 'синхала',
+ 'sk' => 'словак',
+ 'sl' => 'словен',
+ 'sma' => 'өмнөд сами',
+ 'smj' => 'люле сами',
+ 'smn' => 'инари сами',
+ 'sms' => 'сколт сами',
+ 'sn' => 'шона',
+ 'so' => 'сомали',
+ 'sq' => 'албани',
+ 'sr' => 'серб',
+ 'st' => 'сесото',
+ 'su' => 'сундан',
+ 'sv' => 'швед',
+ 'sw' => 'свахили',
+ 'swc' => 'конго свахили',
+ 'ta' => 'тамил',
+ 'te' => 'тэлүгү',
+ 'teo' => 'тэсо',
+ 'tg' => 'тажик',
+ 'th' => 'тай',
+ 'ti' => 'тигрина',
+ 'tk' => 'туркмен',
+ 'tlh' => 'клингон хэл',
+ 'to' => 'тонга',
+ 'tr' => 'турк',
+ 'tt' => 'татар',
+ 'tw' => 'тви',
+ 'twq' => 'тасавак',
+ 'tzm' => 'төв атласын тамазайт',
+ 'ug' => 'уйгар',
+ 'uk' => 'украйн',
+ 'und' => 'тодорхойгүй хэл',
+ 'ur' => 'урду',
+ 'uz' => 'узбек',
+ 'vai' => 'вай',
+ 'vi' => 'вьетнам',
+ 'vun' => 'вунжо',
+ 'wo' => 'волоф',
+ 'xh' => 'хоса',
+ 'xog' => 'сога',
+ 'yi' => 'иддиш',
+ 'yo' => 'ёруба',
+ 'zgh' => 'тамазит',
+ 'zh' => 'хятад',
+ 'zh-hans' => 'хялбаршуулсан хятад',
+ 'zh-hant' => 'уламжлалт хятад',
+ 'zu' => 'зулу',
+ 'zxx' => 'хэл зүйн агуулга байхгүй',
+);
+
+$currencyNames = array(
+ 'AED' => 'арабын нэгдсэн эмиратын дирхам',
+ 'AFN' => 'афганистаний афгани',
+ 'ALL' => 'албанийн лек',
+ 'AMD' => 'арменийн драм',
+ 'ANG' => 'нидерландын антиллъя гулдер',
+ 'AOA' => 'Ангол кванза',
+ 'ARS' => 'аргентин песо',
+ 'AUD' => 'австрали доллар',
+ 'AWG' => 'арубын флорин',
+ 'AZN' => 'азербайжаны манат',
+ 'BAM' => 'босни-герцеговин хөрвөгч марк',
+ 'BBD' => 'барбадос доллар',
+ 'BDT' => 'бангладешийн така',
+ 'BGN' => 'болгарийн лев',
+ 'BHD' => 'бахрейн динар',
+ 'BIF' => 'Бурунд франк',
+ 'BMD' => 'бермуд доллар',
+ 'BND' => 'бруней доллар',
+ 'BOB' => 'боливи боливиано',
+ 'BRL' => 'бразилийн рил',
+ 'BSD' => 'багам доллар',
+ 'BTN' => 'бутаны нгултрум',
+ 'BWP' => 'Ботсвани пула',
+ 'BYR' => 'беларус рубль',
+ 'BZD' => 'белиз доллар',
+ 'CAD' => 'канад доллар',
+ 'CDF' => 'Конго франк',
+ 'CHF' => 'швейцарь франк',
+ 'CLP' => 'чилийн песо',
+ 'CNY' => 'хятад юань',
+ 'COP' => 'колумбын песо',
+ 'CRC' => 'коста рикагийн колон',
+ 'CUC' => 'кубийн хөрвөгч песо',
+ 'CUP' => 'кубийн песо',
+ 'CVE' => 'Кабо-Верде эскудо',
+ 'CZK' => 'чехийн коруна',
+ 'DJF' => 'Жибоути франк',
+ 'DKK' => 'данийн крон',
+ 'DOP' => 'доминикын песо',
+ 'DZD' => 'алжир доллар',
+ 'EGP' => 'египет паунд',
+ 'ERN' => 'Эритрей накфа',
+ 'ETB' => 'Этиоп бирр',
+ 'EUR' => 'евро',
+ 'FJD' => 'фижи доллар',
+ 'FKP' => 'фолклэнд арлын паунд',
+ 'GBP' => 'британийн фунт стерлинг',
+ 'GEL' => 'гүржийн лари',
+ 'GHS' => 'Гана седи',
+ 'GIP' => 'гибралтар паунд',
+ 'GMD' => 'Гамби даласи',
+ 'GNF' => 'Гвиней франк',
+ 'GTQ' => 'гватемалийн кецал',
+ 'GYD' => 'гайана доллар',
+ 'HKD' => 'хонгконг доллар',
+ 'HNL' => 'гондурасын лемпира',
+ 'HRK' => 'хорватын куна',
+ 'HTG' => 'гайтийн гоурд',
+ 'HUF' => 'унгарийн форинт',
+ 'IDR' => 'индонези рупи',
+ 'ILS' => 'израйлийн шинэ шекел',
+ 'INR' => 'энэтхэг рупи',
+ 'IQD' => 'ирак динар',
+ 'IRR' => 'иран риал',
+ 'ISK' => 'исландийн крон',
+ 'JMD' => 'ямайк доллар',
+ 'JOD' => 'йордан динар',
+ 'JPY' => 'япон иен',
+ 'KES' => 'Кени шиллинг',
+ 'KGS' => 'кыргызын сом',
+ 'KHR' => 'камбож риел',
+ 'KMF' => 'Комор франк',
+ 'KPW' => 'хойд солонгос вон',
+ 'KRW' => 'өмнөд солонгос вон',
+ 'KWD' => 'кувейт динар',
+ 'KYD' => 'кайман арлын доллар',
+ 'KZT' => 'казахын тэнгэ',
+ 'LAK' => 'лаосын кип',
+ 'LBP' => 'ливан паунд',
+ 'LKR' => 'шри-ланк рупи',
+ 'LRD' => 'Либери доллар',
+ 'LTL' => 'литвийн литас',
+ 'LVL' => 'латвийн лац',
+ 'LYD' => 'ливи доллар',
+ 'MAD' => 'мароккогийн дирхам',
+ 'MDL' => 'молдавийн леу',
+ 'MGA' => 'Малайн ариари',
+ 'MKD' => 'македони динар',
+ 'MMK' => 'мьянмарын киат',
+ 'MNT' => 'төгрөг',
+ 'MOP' => 'макаогийн патака',
+ 'MRO' => 'Мавритан угия',
+ 'MUR' => 'Мавритын рупи',
+ 'MVR' => 'мальдив руфия',
+ 'MWK' => 'Малави квача',
+ 'MXN' => 'мексикийн песо',
+ 'MYR' => 'малайзын рингит',
+ 'MZN' => 'Мозамбик метикал',
+ 'NAD' => 'Намиби доллар',
+ 'NGN' => 'Нигери найра',
+ 'NIO' => 'никарагуагийн кордоба',
+ 'NOK' => 'норвегийн крон',
+ 'NPR' => 'балба рупи',
+ 'NZD' => 'шинэ зеланд доллар',
+ 'OMR' => 'омани риал',
+ 'PAB' => 'панамын бальбоа',
+ 'PEN' => 'перугийн невосоль',
+ 'PGK' => 'папуа-шинэ гвинейн кина',
+ 'PHP' => 'филиппин песо',
+ 'PKR' => 'пакистан рупи',
+ 'PLN' => 'польшийн злот',
+ 'PYG' => 'парагвайн гуарани',
+ 'QAR' => 'катар риал',
+ 'RON' => 'румыны леу',
+ 'RSD' => 'серб динар',
+ 'RUB' => 'орос рубль',
+ 'RWF' => 'Руанд франк',
+ 'SAR' => 'сауди риал',
+ 'SBD' => 'соломон арлын доллар',
+ 'SCR' => 'Сейшел рупи',
+ 'SDG' => 'судан паунд',
+ 'SEK' => 'шведийн крон',
+ 'SGD' => 'сингапур доллар',
+ 'SHP' => 'Сент Хелена паунд',
+ 'SLL' => 'Сьерра Леоне леоне',
+ 'SOS' => 'Сомали шиллинг',
+ 'SRD' => 'суринам доллар',
+ 'SSP' => 'өмнөд судан паунд',
+ 'STD' => 'Сан-Томе ба Принсипи добра',
+ 'SYP' => 'сири паунд',
+ 'SZL' => 'Свазиланд лилангени',
+ 'THB' => 'тайландын бат',
+ 'TJS' => 'тажикийн сомон',
+ 'TMT' => 'туркмен манат',
+ 'TND' => 'тунис доллар',
+ 'TOP' => 'тонгагийн панга',
+ 'TRY' => 'туркийн лира',
+ 'TTD' => 'тринидад ба тобаго доллар',
+ 'TWD' => 'шинэ тайван доллар',
+ 'TZS' => 'Танзани шиллинг',
+ 'UAH' => 'украйны гривня',
+ 'UGX' => 'Уганд шиллинг',
+ 'USD' => 'америк доллар',
+ 'UYU' => 'уругвайн песо',
+ 'UZS' => 'узбекын сом',
+ 'VEF' => 'венесуэлийн боливар',
+ 'VND' => 'вьетнамын донг',
+ 'VUV' => 'вануатугийн вату',
+ 'WST' => 'самоагийн тала',
+ 'XAF' => 'Франк КФА BEAC',
+ 'XCD' => 'зүүн карибийн доллар',
+ 'XOF' => 'Франк КФА BCЕАО',
+ 'XPF' => 'CFP франк',
+ 'XXX' => 'Тодорхойгүй мөнгөн тэмдэгт',
+ 'YER' => 'йемен риал',
+ 'ZAR' => 'Өмнөд Африкийн ранд',
+ 'ZMK' => 'Замби квача (1968–2012)',
+ 'ZMW' => 'Замби квача',
+);
+
+$currencySymbols = array(
+ 'AED' => 'AED',
+ 'AFN' => 'AFN',
+ 'ALL' => 'ALL',
+ 'AMD' => 'AMD',
+ 'ANG' => 'ANG',
+ 'AOA' => 'AOA',
+ 'ARS' => 'ARS',
+ 'AUD' => 'A$',
+ 'AWG' => 'AWG',
+ 'AZN' => 'AZN',
+ 'BAM' => 'BAM',
+ 'BBD' => 'BBD',
+ 'BDT' => 'BDT',
+ 'BGN' => 'BGN',
+ 'BHD' => 'BHD',
+ 'BIF' => 'BIF',
+ 'BMD' => 'BMD',
+ 'BND' => 'BND',
+ 'BOB' => 'BOB',
+ 'BRL' => 'R$',
+ 'BSD' => 'BSD',
+ 'BTN' => 'BTN',
+ 'BWP' => 'BWP',
+ 'BYR' => 'BYR',
+ 'BZD' => 'BZD',
+ 'CAD' => 'CA$',
+ 'CDF' => 'CDF',
+ 'CHF' => 'CHF',
+ 'CLP' => 'CLP',
+ 'CNY' => 'CN¥',
+ 'COP' => 'COP',
+ 'CRC' => 'CRC',
+ 'CUC' => 'CUC',
+ 'CUP' => 'CUP',
+ 'CVE' => 'CVE',
+ 'CZK' => 'CZK',
+ 'DJF' => 'DJF',
+ 'DKK' => 'DKK',
+ 'DOP' => 'DOP',
+ 'DZD' => 'DZD',
+ 'EGP' => 'EGP',
+ 'ERN' => 'ERN',
+ 'ETB' => 'ETB',
+ 'EUR' => '€',
+ 'FJD' => 'FJD',
+ 'FKP' => 'FKP',
+ 'GBP' => '£',
+ 'GEL' => 'GEL',
+ 'GHS' => 'GHS',
+ 'GIP' => 'GIP',
+ 'GMD' => 'GMD',
+ 'GNF' => 'GNF',
+ 'GTQ' => 'GTQ',
+ 'GYD' => 'GYD',
+ 'HKD' => 'HK$',
+ 'HNL' => 'HNL',
+ 'HRK' => 'HRK',
+ 'HTG' => 'HTG',
+ 'HUF' => 'HUF',
+ 'IDR' => 'IDR',
+ 'ILS' => '₪',
+ 'INR' => '₹',
+ 'IQD' => 'IQD',
+ 'IRR' => 'IRR',
+ 'ISK' => 'ISK',
+ 'JMD' => 'JMD',
+ 'JOD' => 'JOD',
+ 'JPY' => 'JP¥',
+ 'KES' => 'KES',
+ 'KGS' => 'KGS',
+ 'KHR' => 'KHR',
+ 'KMF' => 'KMF',
+ 'KPW' => 'KPW',
+ 'KRW' => '₩',
+ 'KWD' => 'KWD',
+ 'KYD' => 'KYD',
+ 'KZT' => 'KZT',
+ 'LAK' => 'LAK',
+ 'LBP' => 'LBP',
+ 'LKR' => 'LKR',
+ 'LRD' => 'LRD',
+ 'LTL' => 'LTL',
+ 'LVL' => 'LVL',
+ 'LYD' => 'LYD',
+ 'MAD' => 'MAD',
+ 'MDL' => 'MDL',
+ 'MGA' => 'MGA',
+ 'MKD' => 'MKD',
+ 'MMK' => 'MMK',
+ 'MNT' => '₮',
+ 'MOP' => 'MOP',
+ 'MRO' => 'MRO',
+ 'MUR' => 'MUR',
+ 'MVR' => 'MVR',
+ 'MWK' => 'MWK',
+ 'MXN' => 'MX$',
+ 'MYR' => 'MYR',
+ 'MZN' => 'MZN',
+ 'NAD' => 'NAD',
+ 'NGN' => 'NGN',
+ 'NIO' => 'NIO',
+ 'NOK' => 'NOK',
+ 'NPR' => 'NPR',
+ 'NZD' => 'NZ$',
+ 'OMR' => 'OMR',
+ 'PAB' => 'PAB',
+ 'PEN' => 'PEN',
+ 'PGK' => 'PGK',
+ 'PHP' => 'PHP',
+ 'PKR' => 'PKR',
+ 'PLN' => 'PLN',
+ 'PYG' => 'PYG',
+ 'QAR' => 'QAR',
+ 'RON' => 'RON',
+ 'RSD' => 'RSD',
+ 'RUB' => 'RUB',
+ 'RWF' => 'RWF',
+ 'SAR' => 'SAR',
+ 'SBD' => 'SBD',
+ 'SCR' => 'SCR',
+ 'SDG' => 'SDG',
+ 'SEK' => 'SEK',
+ 'SGD' => 'SGD',
+ 'SHP' => 'SHP',
+ 'SLL' => 'SLL',
+ 'SOS' => 'SOS',
+ 'SRD' => 'SRD',
+ 'SSP' => 'SSP',
+ 'STD' => 'STD',
+ 'SYP' => 'SYP',
+ 'SZL' => 'SZL',
+ 'THB' => '฿',
+ 'TJS' => 'TJS',
+ 'TMT' => 'TMT',
+ 'TND' => 'TND',
+ 'TOP' => 'TOP',
+ 'TRY' => 'TRY',
+ 'TTD' => 'TTD',
+ 'TWD' => 'NT$',
+ 'TZS' => 'TZS',
+ 'UAH' => 'UAH',
+ 'UGX' => 'UGX',
+ 'USD' => '$',
+ 'UYU' => 'UYU',
+ 'UZS' => 'UZS',
+ 'VEF' => 'VEF',
+ 'VND' => '₫',
+ 'VUV' => 'VUV',
+ 'WST' => 'WST',
+ 'XAF' => 'FCFA',
+ 'XCD' => 'EC$',
+ 'XOF' => 'CFA',
+ 'XPF' => 'CFPF',
+ 'YER' => 'YER',
+ 'ZAR' => 'ZAR',
+ 'ZMW' => 'ZMW',
+);
+
+$countryNames = array(
+ 'AC' => 'Аскенсион Арал',
+ 'AD' => 'Андорра',
+ 'AE' => 'Арабын Нэгдсэн Эмират',
+ 'AF' => 'Афганистан',
+ 'AG' => 'Антигуа ба Барбуда',
+ 'AI' => 'Ангила',
+ 'AL' => 'Албани',
+ 'AM' => 'Армен',
+ 'AO' => 'Ангол',
+ 'AQ' => 'Антарктик',
+ 'AR' => 'Аргентин',
+ 'AS' => 'Америкийн Самоа',
+ 'AT' => 'Австри',
+ 'AU' => 'Австрали',
+ 'AW' => 'Аруба',
+ 'AX' => 'Аландын Арлууд',
+ 'AZ' => 'Азербайжан',
+ 'BA' => 'Босни Херцеговин',
+ 'BB' => 'Барбадос',
+ 'BD' => 'Бангладеш',
+ 'BE' => 'Белги',
+ 'BF' => 'Буркина фасо',
+ 'BG' => 'Болгар',
+ 'BH' => 'Бахрейн',
+ 'BI' => 'Бурунди',
+ 'BJ' => 'Бенин',
+ 'BL' => 'Сент Бартельми',
+ 'BM' => 'Бермуд',
+ 'BN' => 'Бруней',
+ 'BO' => 'Боливи',
+ 'BQ' => 'Карибын Нидерланд',
+ 'BR' => 'Бразил',
+ 'BS' => 'Багам',
+ 'BT' => 'Бутан',
+ 'BV' => 'Буветын Арлууд',
+ 'BW' => 'Ботсвана',
+ 'BY' => 'Беларус',
+ 'BZ' => 'Белиз',
+ 'CA' => 'Канад',
+ 'CC' => 'Кокос (Кийлинг) Арлууд',
+ 'CD' => 'Конго-Киншаса',
+ 'CF' => 'Төв Африкийн Бүгд Найрамдах Улс',
+ 'CG' => 'Конго Браззавиль',
+ 'CH' => 'Швейцари',
+ 'CI' => 'Кот д’Ивуар',
+ 'CK' => 'Күүкийн Арлууд',
+ 'CL' => 'Чили',
+ 'CM' => 'Камерун',
+ 'CN' => 'Хятад',
+ 'CO' => 'Колумб',
+ 'CP' => 'Клиппертон Арал',
+ 'CR' => 'Коста Рика',
+ 'CU' => 'Куба',
+ 'CV' => 'Капе Верде',
+ 'CW' => 'Куракао',
+ 'CX' => 'Зул Сарын Арал',
+ 'CY' => 'Кипр',
+ 'CZ' => 'Бүгд Найрамдах Чех Улс',
+ 'DE' => 'Герман',
+ 'DG' => 'Диего Гарсиа',
+ 'DJ' => 'Джибути',
+ 'DK' => 'Дани',
+ 'DM' => 'Доминик',
+ 'DO' => 'Бүгд Найрамдах Доминикан',
+ 'DZ' => 'Алжир',
+ 'EA' => 'Сеута ба Мелилья',
+ 'EC' => 'Эквадор',
+ 'EE' => 'Эстон',
+ 'EG' => 'Египет',
+ 'EH' => 'Баруун Сахар',
+ 'ER' => 'Эритри',
+ 'ES' => 'Испани',
+ 'ET' => 'Этиоп',
+ 'EU' => 'Европын Холбоо',
+ 'FI' => 'Финланд',
+ 'FJ' => 'Фижи',
+ 'FK' => 'Фолькландын Арлууд',
+ 'FM' => 'Микронези',
+ 'FO' => 'Фароэ Арлууд',
+ 'FR' => 'Франц',
+ 'GA' => 'Габон',
+ 'GB' => 'ИБ',
+ 'GD' => 'Гренада',
+ 'GE' => 'Гүрж',
+ 'GF' => 'Францын Гайана',
+ 'GG' => 'Гернси',
+ 'GH' => 'Гана',
+ 'GI' => 'Гибралтар',
+ 'GL' => 'Гренланд',
+ 'GM' => 'Гамби',
+ 'GN' => 'Гвиней',
+ 'GP' => 'Гваделуп',
+ 'GQ' => 'Экваторын Гвиней',
+ 'GR' => 'Грек',
+ 'GS' => 'Өмнөд Жоржиа ба Өмнөд Сэндвичийн Арлууд',
+ 'GT' => 'Гватемал',
+ 'GU' => 'Гуам',
+ 'GW' => 'Гвиней-Бисау',
+ 'GY' => 'Гайана',
+ 'HK' => 'Хонг Конг',
+ 'HM' => 'Хэрд болон Макдоналд Арлууд',
+ 'HN' => 'Гондурас',
+ 'HR' => 'Хорват',
+ 'HT' => 'Гаити',
+ 'HU' => 'Унгар',
+ 'IC' => 'Канарын арлууд',
+ 'ID' => 'Индонези',
+ 'IE' => 'Ирланд',
+ 'IL' => 'Израиль',
+ 'IM' => 'Мэн Арал',
+ 'IN' => 'Энэтхэг',
+ 'IO' => 'Британийн харьяа Энэтхэгийн далай дахь нутаг дэвсгэрүүд',
+ 'IQ' => 'Ирак',
+ 'IR' => 'Иран',
+ 'IS' => 'Исланд',
+ 'IT' => 'Итали',
+ 'JE' => 'Жерси',
+ 'JM' => 'Ямайк',
+ 'JO' => 'Йордан',
+ 'JP' => 'Япон',
+ 'KE' => 'Кени',
+ 'KG' => 'Кыргызстан',
+ 'KH' => 'Камбож',
+ 'KI' => 'Кирибати',
+ 'KM' => 'Коморос',
+ 'KN' => 'Сент-Киттс ба Невис',
+ 'KP' => 'Хойд Солонгос',
+ 'KR' => 'Өмнөд Солонгос',
+ 'KW' => 'Кувейт',
+ 'KY' => 'Кайманы Арлууд',
+ 'KZ' => 'Казахстан',
+ 'LA' => 'Лаос',
+ 'LB' => 'Ливан',
+ 'LC' => 'Сент Люсиа',
+ 'LI' => 'Лихтенштейн',
+ 'LK' => 'Шри Ланка',
+ 'LR' => 'Либери',
+ 'LS' => 'Лесото',
+ 'LT' => 'Литва',
+ 'LU' => 'Люксембург',
+ 'LV' => 'Латви',
+ 'LY' => 'Ливи',
+ 'MA' => 'Марокко',
+ 'MC' => 'Монако',
+ 'MD' => 'Молдав',
+ 'ME' => 'Монтенегро',
+ 'MF' => 'Сент-Мартин',
+ 'MG' => 'Мадагаскар',
+ 'MH' => 'Маршаллын Арлууд',
+ 'MK' => 'Македон',
+ 'ML' => 'Мали',
+ 'MM' => 'Мьянмар (Бурма)',
+ 'MN' => 'Монгол',
+ 'MO' => 'Макао',
+ 'MP' => 'Хойд Марианы Арлууд',
+ 'MQ' => 'Мартиник',
+ 'MR' => 'Мавритани',
+ 'MS' => 'Монтсеррат',
+ 'MT' => 'Мальта',
+ 'MU' => 'Мавритус',
+ 'MV' => 'Мальдив',
+ 'MW' => 'Малави',
+ 'MX' => 'Мексик',
+ 'MY' => 'Малайз',
+ 'MZ' => 'Мозамбик',
+ 'NA' => 'Намиби',
+ 'NC' => 'Шинэ Каледони',
+ 'NE' => 'Нигер',
+ 'NF' => 'Норфолк Арлууд',
+ 'NG' => 'Нигери',
+ 'NI' => 'Никарагуа',
+ 'NL' => 'Голланд',
+ 'NO' => 'Норвеги',
+ 'NP' => 'Балба',
+ 'NR' => 'Науру',
+ 'NU' => 'Ниуэ',
+ 'NZ' => 'Шинэ Зеланд',
+ 'OM' => 'Оман',
+ 'PA' => 'Панам',
+ 'PE' => 'Перу',
+ 'PF' => 'Францын Полинез',
+ 'PG' => 'Папуа Шинэ Гвиней',
+ 'PH' => 'Филиппин',
+ 'PK' => 'Пакистан',
+ 'PL' => 'Польш',
+ 'PM' => 'Сэнт Пьер ба Микелон',
+ 'PN' => 'Питкэрн Арлууд',
+ 'PR' => 'Пуэрто Рико',
+ 'PS' => 'Палестин',
+ 'PT' => 'Португал',
+ 'PW' => 'Палау',
+ 'PY' => 'Парагвай',
+ 'QA' => 'Катар',
+ 'QO' => 'Номхон далайг тойрсон улс орнууд',
+ 'RE' => 'Реюньон',
+ 'RO' => 'Румын',
+ 'RS' => 'Серби',
+ 'RU' => 'Орос',
+ 'RW' => 'Руанда',
+ 'SA' => 'Саудын Араб',
+ 'SB' => 'Соломоны Арлууд',
+ 'SC' => 'Сейшел',
+ 'SD' => 'Судан',
+ 'SE' => 'Швед',
+ 'SG' => 'Сингапур',
+ 'SH' => 'Сент Хелена',
+ 'SI' => 'Словени',
+ 'SJ' => 'Свалбард ба Ян Майен',
+ 'SK' => 'Словак',
+ 'SL' => 'Сьерра-Леоне',
+ 'SM' => 'Сан-Марино',
+ 'SN' => 'Сенегал',
+ 'SO' => 'Сомали',
+ 'SR' => 'Суринам',
+ 'SS' => 'Өмнөд Судан',
+ 'ST' => 'Сан-Томе ба Принсипи',
+ 'SV' => 'Эль Сальвадор',
+ 'SX' => 'Синт Мартен',
+ 'SY' => 'Сири',
+ 'SZ' => 'Свазиланд',
+ 'TA' => 'Тристан да Кунья',
+ 'TC' => 'Турк ба Кайкосын Арлууд',
+ 'TD' => 'Чад',
+ 'TF' => 'Францын өмнөд газар нутаг',
+ 'TG' => 'Того',
+ 'TH' => 'Тайланд',
+ 'TJ' => 'Тажикистан',
+ 'TK' => 'Токелау',
+ 'TL' => 'Тимор-Лесте',
+ 'TM' => 'Туркменистан',
+ 'TN' => 'Тунис',
+ 'TO' => 'Тонга',
+ 'TR' => 'Турк',
+ 'TT' => 'Тринидад ба Тобаго',
+ 'TV' => 'Тувалу',
+ 'TW' => 'Тайван',
+ 'TZ' => 'Танзани',
+ 'UA' => 'Украйн',
+ 'UG' => 'Уганда',
+ 'UM' => 'АНУ-ын тойрсон арлууд',
+ 'US' => 'АНУ',
+ 'UY' => 'Уругвай',
+ 'UZ' => 'Узбекистан',
+ 'VA' => 'Ватикан хот улс',
+ 'VC' => 'Сэнт Винсэнт ба Гренадин',
+ 'VE' => 'Венесуэл',
+ 'VG' => 'Британийн Виржиний Арлууд',
+ 'VI' => 'АНУ-ын Виржиний Арлууд',
+ 'VN' => 'Вьетнам',
+ 'VU' => 'Вануату',
+ 'WF' => 'Уоллис ба Футуна',
+ 'WS' => 'Самоа',
+ 'XK' => 'Косово',
+ 'YE' => 'Йемен',
+ 'YT' => 'Майотте',
+ 'ZA' => 'Өмнөд Африк тив',
+ 'ZM' => 'Замби',
+ 'ZW' => 'Зимбабве',
+);
+
+$timeUnits = array(
+ 'day-future-one' => '{0} өдрийн дараа',
+ 'day-future-other' => '{0} өдрийн дараа',
+ 'day-narrow-future-one' => '+{0} өдөр',
+ 'day-narrow-future-other' => '+{0} өдөр',
+ 'day-narrow-past-one' => '-{0} өдөр',
+ 'day-narrow-past-other' => '-{0} өдөр',
+ 'day-one' => '{0} өдөр',
+ 'day-other' => '{0} өдөр',
+ 'day-past-one' => '{0} өдрийн өмнө',
+ 'day-past-other' => '{0} өдрийн өмнө',
+ 'day-short-future-one' => '{0} өдрийн дараа',
+ 'day-short-future-other' => '{0} өдрийн дараа',
+ 'day-short-past-one' => '{0} өдрийн өмнө',
+ 'day-short-past-other' => '{0} өдрийн өмнө',
+ 'hour-future-one' => '{0} цагийн дараа',
+ 'hour-future-other' => '{0} цагийн дараа',
+ 'hour-narrow-future-one' => '+{0} ц',
+ 'hour-narrow-future-other' => '+{0} ц',
+ 'hour-narrow-past-one' => '-{0} ц',
+ 'hour-narrow-past-other' => '-{0} ц',
+ 'hour-one' => '{0} цаг',
+ 'hour-other' => '{0} цаг',
+ 'hour-past-one' => '{0} цагийн өмнө',
+ 'hour-past-other' => '{0} цагийн өмнө',
+ 'hour-short-future-one' => '{0} ц. дараа',
+ 'hour-short-future-other' => '{0} ц. дараа',
+ 'hour-short-past-one' => '{0} ц. өмнө',
+ 'hour-short-past-other' => '{0} ц. өмнө',
+ 'microsecond-one' => '{0} микросекунд',
+ 'microsecond-other' => '{0} микросекунд',
+ 'millisecond-one' => '{0} милисекунд',
+ 'millisecond-other' => '{0} милисекунд',
+ 'minute-future-one' => '{0} минутын дараа',
+ 'minute-future-other' => '{0} минутын дараа',
+ 'minute-narrow-future-one' => '+{0} м',
+ 'minute-narrow-future-other' => '+{0} м',
+ 'minute-narrow-past-one' => '-{0} м',
+ 'minute-narrow-past-other' => '-{0} м',
+ 'minute-one' => '{0} минут',
+ 'minute-other' => '{0} минут',
+ 'minute-past-one' => '{0} минутын өмнө',
+ 'minute-past-other' => '{0} минутын өмнө',
+ 'minute-short-future-one' => '{0} мин. дараа',
+ 'minute-short-future-other' => '{0} мин. дараа',
+ 'minute-short-past-one' => '{0} мин. өмнө',
+ 'minute-short-past-other' => '{0} мин. өмнө',
+ 'month-future-one' => '{0} сарын дараа',
+ 'month-future-other' => '{0} сарын дараа',
+ 'month-narrow-future-one' => '+{0} ср.',
+ 'month-narrow-future-other' => '+{0} ср.',
+ 'month-narrow-past-one' => '-{0} ср.',
+ 'month-narrow-past-other' => '-{0} ср.',
+ 'month-one' => '{0} сар',
+ 'month-other' => '{0} сар',
+ 'month-past-one' => '{0} сарын өмнө',
+ 'month-past-other' => '{0} сарын өмнө',
+ 'month-short-future-one' => '{0} ср. дараа',
+ 'month-short-future-other' => '{0} ср. дараа',
+ 'month-short-past-one' => '{0} ср. өмнө',
+ 'month-short-past-other' => '{0} ср. өмнө',
+ 'nanosecond-one' => '{0} наносекунд',
+ 'nanosecond-other' => '{0} наносекунд',
+ 'quarter-future-one' => '{0} улирлын дараа',
+ 'quarter-future-other' => '{0} улирлын дараа',
+ 'quarter-narrow-future-one' => '+{0} У',
+ 'quarter-narrow-future-other' => '+{0} У',
+ 'quarter-narrow-past-one' => '-{0} У',
+ 'quarter-narrow-past-other' => '-{0} У',
+ 'quarter-past-one' => '{0} улирлын өмнө',
+ 'quarter-past-other' => '{0} улирлын өмнө',
+ 'quarter-short-future-one' => '{0} улрл. дараа',
+ 'quarter-short-future-other' => '{0} улрл. дараа',
+ 'quarter-short-past-one' => '{0} улрл. өмнө',
+ 'quarter-short-past-other' => '{0} улрл. өмнө',
+ 'second-future-one' => '{0} секундын дараа',
+ 'second-future-other' => '{0} секундын дараа',
+ 'second-narrow-future-one' => '+{0} с',
+ 'second-narrow-future-other' => '+{0} с',
+ 'second-narrow-past-one' => '-{0} с',
+ 'second-narrow-past-other' => '-{0} с',
+ 'second-one' => '{0} секунд',
+ 'second-other' => '{0} секунд',
+ 'second-past-one' => '{0} секундын өмнө',
+ 'second-past-other' => '{0} секундын өмнө',
+ 'second-short-future-one' => '{0} сек. дараа',
+ 'second-short-future-other' => '{0} сек. дараа',
+ 'second-short-past-one' => '{0} сек. өмнө',
+ 'second-short-past-other' => '{0} сек. өмнө',
+ 'week-future-one' => '{0} долоо хоногийн дараа',
+ 'week-future-other' => '{0} долоо хоногийн дараа',
+ 'week-narrow-future-one' => '+{0} дх.',
+ 'week-narrow-future-other' => '+{0} дх.',
+ 'week-narrow-past-one' => '-{0} дх.',
+ 'week-narrow-past-other' => '-{0} дх.',
+ 'week-one' => '{0} долоо хоног',
+ 'week-other' => '{0} долоо хоног',
+ 'week-past-one' => '{0} долоо хоногийн өмнө',
+ 'week-past-other' => '{0} долоо хоногийн өмнө',
+ 'week-short-future-one' => '{0} дх. дараа',
+ 'week-short-future-other' => '{0} дх. дараа',
+ 'week-short-past-one' => '{0} дх. өмнө',
+ 'week-short-past-other' => '{0} дх. өмнө',
+ 'year-future-one' => '{0} жилийн дараа',
+ 'year-future-other' => '{0} жилийн дараа',
+ 'year-narrow-future-one' => '+{0} жл.',
+ 'year-narrow-future-other' => '+{0} жл.',
+ 'year-narrow-past-one' => '-{0} жл.',
+ 'year-narrow-past-other' => '-{0} жл.',
+ 'year-one' => '{0} жил',
+ 'year-other' => '{0} жил',
+ 'year-past-one' => '{0} жилийн өмнө',
+ 'year-past-other' => '{0} жилийн өмнө',
+ 'year-short-future-one' => '{0} жл. дараа',
+ 'year-short-future-other' => '{0} жл. дараа',
+ 'year-short-past-one' => '{0} жл. өмнө',
+ 'year-short-past-other' => '{0} жл. өмнө',
+);
diff --git a/MLEB/cldr/CldrNames/CldrNamesMr.php b/MLEB/cldr/CldrNames/CldrNamesMr.php
new file mode 100644
index 00000000..4a77929e
--- /dev/null
+++ b/MLEB/cldr/CldrNames/CldrNamesMr.php
@@ -0,0 +1,1195 @@
+<?php
+
+$languageNames = array(
+ 'aa' => 'अफार',
+ 'ab' => 'अबखेजियन',
+ 'ace' => 'अचीनी',
+ 'ach' => 'अकोली',
+ 'ada' => 'अडांग्मे',
+ 'ady' => 'अडिघे',
+ 'ae' => 'अवेस्तन',
+ 'af' => 'अफ्रिकान्स',
+ 'afh' => 'अफ्रिहिली',
+ 'agq' => 'अघेम',
+ 'ain' => 'ऐनू',
+ 'ak' => 'अकान',
+ 'akk' => 'अक्कादिआन',
+ 'ale' => 'अलेउत',
+ 'alt' => 'दक्षिणात्य अल्ताई',
+ 'am' => 'अम्हारिक',
+ 'an' => 'अर्गोनीज',
+ 'ang' => 'पुरातन इंग्रजी',
+ 'anp' => 'अंगिका',
+ 'ar' => 'अरबी',
+ 'ar-001' => 'आधुनिक प्रमाणित अरबी',
+ 'arc' => 'अ‍ॅरेमाइक',
+ 'arn' => 'मापुची',
+ 'arp' => 'अराफाओ',
+ 'arw' => 'अरावक',
+ 'as' => 'आसामी',
+ 'asa' => 'असु',
+ 'ast' => 'अस्तुरियन',
+ 'av' => 'अ‍ॅव्हेरिक',
+ 'awa' => 'अवधी',
+ 'ay' => 'ऐमरा',
+ 'az' => 'अझरबैजानी',
+ 'ba' => 'बष्किर',
+ 'bal' => 'बलुची',
+ 'ban' => 'बालिनीस',
+ 'bas' => 'बसा',
+ 'be' => 'बेलारुशियन',
+ 'bej' => 'बेजा',
+ 'bem' => 'बेम्बा',
+ 'bez' => 'बेना',
+ 'bg' => 'बल्गेरियन',
+ 'bho' => 'भोजपुरी',
+ 'bi' => 'बिस्लामा',
+ 'bik' => 'बिकोल',
+ 'bin' => 'बिनी',
+ 'bla' => 'सिक्सिका',
+ 'bm' => 'बाम्बारा',
+ 'bn' => 'बंगाली',
+ 'bo' => 'तिबेटी',
+ 'br' => 'ब्रेतॉन',
+ 'bra' => 'ब्रज',
+ 'brx' => 'बोडो',
+ 'bs' => 'बोस्नियन',
+ 'bua' => 'बुरियात',
+ 'bug' => 'बगिनीस',
+ 'byn' => 'ब्लिन',
+ 'ca' => 'कातालान',
+ 'cad' => 'कॅड्डो',
+ 'car' => 'कॅरिब',
+ 'cch' => 'अत्सम',
+ 'ce' => 'चेचन',
+ 'ceb' => 'सिबुआनो',
+ 'cgg' => 'किगा',
+ 'ch' => 'कॅमोरो',
+ 'chb' => 'चिब्चा',
+ 'chg' => 'छगाताई',
+ 'chk' => 'चूकीसे',
+ 'chm' => 'मारी',
+ 'chn' => 'चिनूक जारगॉन',
+ 'cho' => 'चोक्तौ',
+ 'chp' => 'शिपेव्यान',
+ 'chr' => 'चेरोकी',
+ 'chy' => 'शेयेन्न',
+ 'ckb' => 'सोरानी कुर्दिश',
+ 'co' => 'कॉर्सिकन',
+ 'cop' => 'कॉप्टिक',
+ 'cr' => 'क्री',
+ 'crh' => 'क्राइमीन तुर्की',
+ 'cs' => 'झेक',
+ 'csb' => 'काशुबियन',
+ 'cu' => 'चर्च स्लाव्हिक',
+ 'cv' => 'चूवाश',
+ 'cy' => 'वेल्श',
+ 'da' => 'डॅनिश',
+ 'dak' => 'दाकोता',
+ 'dar' => 'दार्गवा',
+ 'dav' => 'तायता',
+ 'de' => 'जर्मन',
+ 'de-at' => 'ऑस्ट्रियन जर्मन',
+ 'de-ch' => 'स्विस हाय जर्मन',
+ 'del' => 'डेलॅवेयर',
+ 'den' => 'स्लाव्ह',
+ 'dgr' => 'डोग्रिब',
+ 'din' => 'दिन्का',
+ 'dje' => 'झार्मा',
+ 'doi' => 'डोगरी',
+ 'dsb' => 'लोअर सोर्बियन',
+ 'dua' => 'दुआला',
+ 'dum' => 'मिडल डच',
+ 'dv' => 'दिवेही',
+ 'dyo' => 'जोला-फोंयी',
+ 'dyu' => 'ड्युला',
+ 'dz' => 'झोंगखा',
+ 'ebu' => 'एम्बू',
+ 'ee' => 'एवे',
+ 'efi' => 'एफिक',
+ 'egy' => 'प्राचीन इजिप्शियन',
+ 'eka' => 'एकाजुक',
+ 'el' => 'ग्रीक',
+ 'elx' => 'एलामाइट',
+ 'en' => 'इंग्रजी',
+ 'en-au' => 'ऑस्ट्रेलियन इंग्रजी',
+ 'en-ca' => 'कॅनडियन इंग्रजी',
+ 'en-gb' => 'ब्रिटिश इंग्रजी',
+ 'en-us' => 'अमेरिकन इंग्रजी',
+ 'enm' => 'मिडल इंग्रजी',
+ 'eo' => 'एस्परान्टो',
+ 'es' => 'स्पॅनिश',
+ 'es-419' => 'लॅटिन अमेरिकन स्पॅनिश',
+ 'es-es' => 'युरोपियन स्पॅनिश',
+ 'es-mx' => 'मेक्सिकन स्पॅनिश',
+ 'et' => 'इस्टोनियन',
+ 'eu' => 'बास्क',
+ 'ewo' => 'इवोन्डो',
+ 'fa' => 'फारसी',
+ 'fan' => 'फँग',
+ 'fat' => 'फन्टी',
+ 'ff' => 'फुलाह',
+ 'fi' => 'फिन्निश',
+ 'fil' => 'फिलिपिनो',
+ 'fj' => 'फिजियन',
+ 'fo' => 'फरोइज',
+ 'fon' => 'फॉन',
+ 'fr' => 'फ्रेंच',
+ 'fr-ca' => 'कॅनडियन फ्रेंच',
+ 'fr-ch' => 'स्विस फ्रेंच',
+ 'frm' => 'मिडल फ्रेंच',
+ 'fro' => 'पुरातन फ्रेंच',
+ 'frr' => 'उत्तरी फ्रिशियन',
+ 'frs' => 'पौर्वात्य फ्रिशियन',
+ 'fur' => 'फ्रियुलियान',
+ 'fy' => 'पश्चिमी फ्रिशियन',
+ 'ga' => 'आयरिश',
+ 'gaa' => 'Ga',
+ 'gag' => 'गागाउझ',
+ 'gay' => 'गायो',
+ 'gba' => 'बाया',
+ 'gd' => 'स्कॉट्स गेलिक',
+ 'gez' => 'गीझ',
+ 'gil' => 'जिल्बरटीज',
+ 'gl' => 'गॅलिशियन',
+ 'gmh' => 'मिडल हाय जर्मन',
+ 'gn' => 'गुआरनी',
+ 'goh' => 'पुरातन हाइ जर्मन',
+ 'gon' => 'गाँडी',
+ 'gor' => 'गोरोन्तालो',
+ 'got' => 'गॉथिक',
+ 'grb' => 'ग्रेबो',
+ 'grc' => 'प्राचीन ग्रीक',
+ 'gsw' => 'स्विस जर्मन',
+ 'gu' => 'गुजराती',
+ 'guz' => 'गसी',
+ 'gv' => 'मांक्स',
+ 'gwi' => 'ग्विच’इन',
+ 'ha' => 'हौसा',
+ 'hai' => 'हैडा',
+ 'haw' => 'हवाईयन',
+ 'he' => 'हिब्रू',
+ 'hi' => 'हिंदी',
+ 'hil' => 'हिलीगेनॉन',
+ 'hit' => 'हिट्टिते',
+ 'hmn' => 'माँग',
+ 'ho' => 'हिरी मॉटू',
+ 'hr' => 'क्रोएशियन',
+ 'hsb' => 'अप्पर सॉर्बियन',
+ 'ht' => 'हैतीयन',
+ 'hu' => 'हंगेरियन',
+ 'hup' => 'हूपा',
+ 'hy' => 'आर्मेनियन',
+ 'hz' => 'हरेरो',
+ 'ia' => 'इंटरलिंग्वा',
+ 'iba' => 'इबान',
+ 'id' => 'इंडोनेशियन',
+ 'ie' => 'इन्टरलिंग',
+ 'ig' => 'ईग्बो',
+ 'ii' => 'सिचुआन यी',
+ 'ik' => 'इनूपियाक',
+ 'ilo' => 'इलोको',
+ 'inh' => 'इंगुश',
+ 'io' => 'इडौ',
+ 'is' => 'आईसलँडिक',
+ 'it' => 'इटालियन',
+ 'iu' => 'इनुकिटुट्',
+ 'ja' => 'जपानी',
+ 'jbo' => 'लोज्बान',
+ 'jgo' => 'गोम्बा',
+ 'jmc' => 'मशामे',
+ 'jpr' => 'जुदेओ-फारसी',
+ 'jrb' => 'जुदेओ-अरबी',
+ 'jv' => 'जावानीज',
+ 'ka' => 'जॉर्जियन',
+ 'kaa' => 'कारा-कल्पक',
+ 'kab' => 'कबाइल',
+ 'kac' => 'काचिन',
+ 'kaj' => 'ज्जु',
+ 'kam' => 'काम्बा',
+ 'kaw' => 'कावी',
+ 'kbd' => 'कबार्डियन',
+ 'kcg' => 'त्याप',
+ 'kde' => 'माकोन्दे',
+ 'kea' => 'काबवर्दियानु',
+ 'kfo' => 'कोरो',
+ 'kg' => 'काँगो',
+ 'kha' => 'खासी',
+ 'kho' => 'खोतानीस',
+ 'khq' => 'कोयरा चीनी',
+ 'ki' => 'किकुयू',
+ 'kj' => 'क्वान्यामा',
+ 'kk' => 'कझाक',
+ 'kl' => 'कलाल्लिसत',
+ 'kln' => 'कालेंजीन',
+ 'km' => 'ख्मेर',
+ 'kmb' => 'किम्बन्दु',
+ 'kn' => 'कन्नड',
+ 'ko' => 'कोरियन',
+ 'koi' => 'कोमी-परम्याक',
+ 'kok' => 'कोंकणी',
+ 'kos' => 'कोसरियन',
+ 'kpe' => 'क्पेल्ले',
+ 'kr' => 'कनुरी',
+ 'krc' => 'कराचय-बाल्कर',
+ 'krl' => 'करेलियन',
+ 'kru' => 'कुरूख',
+ 'ks' => 'काश्मीरी',
+ 'ksb' => 'शांबाला',
+ 'ksf' => 'बाफिया',
+ 'ku' => 'कुर्दिश',
+ 'kum' => 'कुमीक',
+ 'kut' => 'कुतेनाई',
+ 'kv' => 'कोमी',
+ 'kw' => 'कोर्निश',
+ 'ky' => 'किरगीझ',
+ 'la' => 'लॅटिन',
+ 'lad' => 'लादीनो',
+ 'lag' => 'लांगी',
+ 'lah' => 'लाह्न्डा',
+ 'lam' => 'लाम्बा',
+ 'lb' => 'लक्झेंबर्गिश',
+ 'lez' => 'लेझ्घीयन',
+ 'lg' => 'गांडा',
+ 'li' => 'लिंबूर्गिश',
+ 'lkt' => 'लाकोटा',
+ 'ln' => 'लिंगाला',
+ 'lo' => 'लाओ',
+ 'lol' => 'मोंगो',
+ 'loz' => 'लोझि',
+ 'lt' => 'लिथुआनियन',
+ 'lu' => 'ल्यूबा-कटांगा',
+ 'lua' => 'लुबा-लुलुआ',
+ 'lui' => 'लुइसेनो',
+ 'lun' => 'लुन्डा',
+ 'luo' => 'ल्युओ',
+ 'lus' => 'लुशाई',
+ 'luy' => 'ल्युइया',
+ 'lv' => 'लात्व्हियन',
+ 'mad' => 'मादुरीस',
+ 'mag' => 'मगही',
+ 'mai' => 'मैथिली',
+ 'mak' => 'मकस्सर',
+ 'man' => 'मन्डिन्गो',
+ 'mas' => 'मसाई',
+ 'mdf' => 'मोक्ष',
+ 'mdr' => 'मंडार',
+ 'men' => 'मेन्डे',
+ 'mer' => 'मेरू',
+ 'mfe' => 'मोरिस्येन',
+ 'mg' => 'मलागसी',
+ 'mga' => 'मिडल आयरिश',
+ 'mgh' => 'माखुव्हा-मीट्टो',
+ 'mgo' => 'मीटा',
+ 'mh' => 'मार्शलीज',
+ 'mi' => 'माओरी',
+ 'mic' => 'मिकमॅक',
+ 'min' => 'मिनांग्काबाउ',
+ 'mk' => 'मॅसेडोनियन',
+ 'ml' => 'मल्याळम',
+ 'mn' => 'मंगोलियन',
+ 'mnc' => 'मान्चु',
+ 'mni' => 'मणिपुरी',
+ 'moh' => 'मोहॉक',
+ 'mos' => 'मोस्सी',
+ 'mr' => 'मराठी',
+ 'ms' => 'मलय',
+ 'mt' => 'माल्टिज्',
+ 'mua' => 'मुंडांग',
+ 'mul' => 'एकविध भाषा',
+ 'mus' => 'क्रीक',
+ 'mwl' => 'मिरांडिज्',
+ 'mwr' => 'मारवाडी',
+ 'my' => 'बर्मी',
+ 'myv' => 'एर्झ्या',
+ 'na' => 'नउरू',
+ 'nap' => 'नेपोलिटान',
+ 'naq' => 'नामा',
+ 'nb' => 'नॉर्वेजियन बोकमाल',
+ 'nd' => 'उत्तर देबेली',
+ 'nds' => 'लो जर्मन',
+ 'ne' => 'नेपाळी',
+ 'new' => 'नेवारी',
+ 'ng' => 'डोंगा',
+ 'nia' => 'नियास',
+ 'niu' => 'नियुआन',
+ 'nl' => 'डच',
+ 'nl-be' => 'फ्लेमिश',
+ 'nmg' => 'क्वासिओ',
+ 'nn' => 'नॉर्वेजियन न्योर्स्क',
+ 'no' => 'नोर्वेजियन',
+ 'nog' => 'नोगाई',
+ 'non' => 'पुरातन नॉर्स',
+ 'nqo' => 'एन्को',
+ 'nr' => 'दक्षिणात्य देबेली',
+ 'nso' => 'उत्तरी सोथो',
+ 'nus' => 'नुएर',
+ 'nv' => 'नावाजो',
+ 'nwc' => 'अभिजात नेवारी',
+ 'ny' => 'न्यान्जा',
+ 'nym' => 'न्यामवेझी',
+ 'nyn' => 'न्यानकोल',
+ 'nyo' => 'न्योरो',
+ 'nzi' => 'न्झिमा',
+ 'oc' => 'ऑक्सितान',
+ 'oj' => 'ओजिब्वा',
+ 'om' => 'ओरोमो',
+ 'or' => 'उडिया',
+ 'os' => 'ओस्सेटिक',
+ 'osa' => 'ओसेज',
+ 'ota' => 'ओटोमान तुर्किश',
+ 'pa' => 'पंजाबी',
+ 'pag' => 'पंगासीनान',
+ 'pal' => 'पहलवी',
+ 'pam' => 'पाम्पान्गा',
+ 'pap' => 'पापियामेन्टो',
+ 'pau' => 'पालाउआन',
+ 'peo' => 'पुरातन फारसी',
+ 'phn' => 'फोनिशियन',
+ 'pi' => 'पाली',
+ 'pl' => 'पोलिश',
+ 'pon' => 'पोह्नपियन',
+ 'pro' => 'पुरातन प्रोव्हेन्सल',
+ 'ps' => 'पश्तो',
+ 'pt' => 'पोर्तुगीज',
+ 'pt-br' => 'ब्राझिलियन पोर्तुगीज',
+ 'pt-pt' => 'युरोपियन पोर्तुगीज',
+ 'qu' => 'क्वेचुआ',
+ 'quc' => 'कीशेइ',
+ 'raj' => 'राजस्थानी',
+ 'rap' => 'रापानुई',
+ 'rar' => 'रारोटोंगन',
+ 'rm' => 'रोमान्श',
+ 'rn' => 'रुन्दी',
+ 'ro' => 'रोमानियन',
+ 'ro-md' => 'मोल्डाव्हियन',
+ 'rof' => 'रोम्बो',
+ 'rom' => 'रोमानी',
+ 'ru' => 'रशियन',
+ 'rup' => 'अरोमानियन',
+ 'rw' => 'किन्यार्वान्डा',
+ 'rwk' => 'रव्हा',
+ 'sa' => 'संस्कृत',
+ 'sad' => 'सँडवे',
+ 'sah' => 'याकूत',
+ 'sam' => 'सामरिटान अरॅमिक',
+ 'saq' => 'सांबुरू',
+ 'sas' => 'सासाक',
+ 'sat' => 'संताली',
+ 'sbp' => 'सांगु',
+ 'sc' => 'सर्दिनियन',
+ 'scn' => 'सिसिलियन',
+ 'sco' => 'स्कॉट्स',
+ 'sd' => 'सिंधी',
+ 'se' => 'उत्तरी सामी',
+ 'seh' => 'सेना',
+ 'sel' => 'सेल्कप',
+ 'ses' => 'कोयराबोरो सेन्नी',
+ 'sg' => 'सांगो',
+ 'sga' => 'पुरातन आयरिश',
+ 'sh' => 'सर्बो-क्रोएशियन',
+ 'shi' => 'ताशेल्हिट',
+ 'shn' => 'शॅन',
+ 'si' => 'सिंहला',
+ 'sid' => 'सिदामो',
+ 'sk' => 'स्लोव्हाक',
+ 'sl' => 'स्लोव्हेनियन',
+ 'sm' => 'सामोअन',
+ 'sma' => 'दक्षिणात्य सामी',
+ 'smj' => 'ल्युल सामी',
+ 'smn' => 'इनारी सामी',
+ 'sms' => 'स्कोल्ट सामी',
+ 'sn' => 'शोना',
+ 'snk' => 'सोनिन्के',
+ 'so' => 'सोमाली',
+ 'sog' => 'सोग्डिएन',
+ 'sq' => 'अल्बानियन',
+ 'sr' => 'सर्बियन',
+ 'srn' => 'स्रानान टॉन्गो',
+ 'srr' => 'सेरेर',
+ 'ss' => 'स्वाती',
+ 'st' => 'सेसोथो',
+ 'su' => 'सुंदानीज',
+ 'suk' => 'सुकुमा',
+ 'sus' => 'सुसु',
+ 'sux' => 'सुमेरियन',
+ 'sv' => 'स्वीडिश',
+ 'sw' => 'स्वाहिली',
+ 'swb' => 'कोमोरियन',
+ 'swc' => 'काँगो स्वाहिली',
+ 'syc' => 'अभिजात सिरियाक',
+ 'syr' => 'सिरियाक',
+ 'ta' => 'तामिळ',
+ 'te' => 'तेलगू',
+ 'tem' => 'टिम्ने',
+ 'teo' => 'तेसो',
+ 'ter' => 'तेरेनो',
+ 'tet' => 'तेतुम',
+ 'tg' => 'ताजिक',
+ 'th' => 'थाई',
+ 'ti' => 'तिग्रिन्या',
+ 'tig' => 'टाइग्रे',
+ 'tiv' => 'तिव',
+ 'tk' => 'तुर्कमेन',
+ 'tkl' => 'टोकेलाऊ',
+ 'tl' => 'टागालोग',
+ 'tlh' => 'क्लिंगोन',
+ 'tli' => 'लिंगित',
+ 'tmh' => 'तामाशेक',
+ 'tn' => 'त्स्वाना',
+ 'to' => 'टोंगन',
+ 'tog' => 'न्यासा टोन्गा',
+ 'tpi' => 'टोक पिसिन',
+ 'tr' => 'तुर्की',
+ 'ts' => 'सोंगा',
+ 'tsi' => 'सिम्शियन',
+ 'tt' => 'तातर',
+ 'tum' => 'तुम्बुका',
+ 'tvl' => 'टुवालु',
+ 'tw' => 'ट्वी',
+ 'twq' => 'तासाव्हाक',
+ 'ty' => 'ताहितीयन',
+ 'tyv' => 'टुवीनियन',
+ 'tzm' => 'मध्य ऍटलास तॅमॅझायट',
+ 'udm' => 'उदमुर्त',
+ 'ug' => 'उइगुर',
+ 'uga' => 'युगॅरिटिक',
+ 'uk' => 'युक्रेनियन',
+ 'umb' => 'उम्बुन्डु',
+ 'und' => 'अज्ञात भाषा',
+ 'ur' => 'उर्दू',
+ 'uz' => 'उझ्बेक',
+ 'vai' => 'वाई',
+ 've' => 'व्हेंदा',
+ 'vi' => 'व्हिएतनामी',
+ 'vo' => 'ओलापुक',
+ 'vot' => 'वॉटिक',
+ 'vun' => 'वुंजो',
+ 'wa' => 'वालून',
+ 'wal' => 'वलामो',
+ 'war' => 'वारे',
+ 'was' => 'वाशो',
+ 'wo' => 'वोलोफ',
+ 'xal' => 'काल्मिक',
+ 'xh' => 'खोसा',
+ 'xog' => 'सोगा',
+ 'yao' => 'याओ',
+ 'yap' => 'यापीस',
+ 'yi' => 'यिद्दिश',
+ 'yo' => 'योरुबा',
+ 'yue' => 'कँटोनीज',
+ 'za' => 'झुआंग',
+ 'zap' => 'झेपोटेक',
+ 'zbl' => 'ब्लिसिम्बॉल्स',
+ 'zen' => 'झेनान्गा',
+ 'zgh' => 'प्रमाण मोरोक्कन तॅमॅझायट',
+ 'zh' => 'चीनी',
+ 'zh-hans' => 'सरलीकृत चीनी',
+ 'zh-hant' => 'पारंपारिक चीनी',
+ 'zu' => 'झुलू',
+ 'zun' => 'झुनी',
+ 'zxx' => 'भाषावैज्ञानिक सामग्री नाही',
+ 'zza' => 'झाझा',
+);
+
+$currencyNames = array(
+ 'AED' => 'संयुक्त अरब अमीरात दिरहॅम',
+ 'AFN' => 'अफगाण अफगाणी',
+ 'ALL' => 'अल्बानियन लेक',
+ 'AMD' => 'आर्मेनियन द्रॅम',
+ 'ANG' => 'नेदरलँडचा अँटिलीन गिल्डर',
+ 'AOA' => 'अँगोलन क्वॅन्झा',
+ 'ARS' => 'अर्जेंटाइन पेसो',
+ 'AUD' => 'ऑस्ट्रेलियन डॉलर',
+ 'AWG' => 'अरुबा फ्लोरिन',
+ 'AZN' => 'अझरबैझानी मानाट',
+ 'BAM' => 'बोस्निया-हर्जेगोविना विनिमय मार्क',
+ 'BBD' => 'बार्बाडियन डॉलर',
+ 'BDT' => 'बांगलादेशी टका',
+ 'BGN' => 'बल्गेरियन लेव',
+ 'BHD' => 'बाहरिनी दिनार',
+ 'BIF' => 'बुरुडियन फ्रँक',
+ 'BMD' => 'बर्मुडा डॉलर',
+ 'BND' => 'ब्रुनेई डॉलर',
+ 'BOB' => 'बोलिव्हियन बोलिव्हियानो',
+ 'BRL' => 'ब्राझिलियन रियाल',
+ 'BSD' => 'बहामी डॉलर',
+ 'BTN' => 'भूतानी एंगल्ट्रम',
+ 'BWP' => 'बोट्सवाना पुला',
+ 'BYR' => 'बेलारुशियन रुबल',
+ 'BZD' => 'बेलीझ डॉलर',
+ 'CAD' => 'कॅनडियन डॉलर',
+ 'CDF' => 'काँगोलीज फ्रँक',
+ 'CHF' => 'स्विस फ्रँक',
+ 'CLP' => 'चिली पेसो',
+ 'CNY' => 'चीनी युआन',
+ 'COP' => 'कोलंबियन पेसो',
+ 'CRC' => 'कोस्टा रिका कोलोन',
+ 'CUC' => 'क्यूबन विनिमय पेसो',
+ 'CUP' => 'क्यूबन पेसो',
+ 'CVE' => 'केप व्हर्डेयन एस्कुडो',
+ 'CZK' => 'झेक प्रजासत्ताक कोरुना',
+ 'DJF' => 'जिबौटियन फ्रँक',
+ 'DKK' => 'डॅनिश क्रोन',
+ 'DOP' => 'डोमिनिकन पेसो',
+ 'DZD' => 'अल्जेरियन दिनार',
+ 'EGP' => 'इजिप्शियन पाउंड',
+ 'ERN' => 'इरिट्रियन नाफ्का',
+ 'ETB' => 'इथिओपियन बिर',
+ 'EUR' => 'युरो',
+ 'FJD' => 'फिजियन डॉलर',
+ 'FKP' => 'फॉकलंड आयलंड पाउंड',
+ 'GBP' => 'ब्रिटिश पाऊंड स्टर्लिंग',
+ 'GEL' => 'जॉर्जियन लारी',
+ 'GHS' => 'घानीयन सेडी',
+ 'GIP' => 'जिब्राल्टर पाउंड',
+ 'GMD' => 'गाम्बियन डालासी',
+ 'GNF' => 'गिनी फ्रँक',
+ 'GTQ' => 'ग्वाटेमालाचे क्वेत्झाल',
+ 'GYD' => 'गयाना डॉलर',
+ 'HKD' => 'हाँगकाँग डॉलर',
+ 'HNL' => 'होंडुरा लेम्पियरा',
+ 'HRK' => 'क्रोएशियन कूना',
+ 'HTG' => 'हैती गोअर्ड',
+ 'HUF' => 'हंगेरियन फॉरिन्ट',
+ 'IDR' => 'इंडोनेशियन रुपैयाह',
+ 'ILS' => 'ईस्त्रायली न्यू शेकेल',
+ 'INR' => 'भारतीय रुपया',
+ 'IQD' => 'इराकी दिनार',
+ 'IRR' => 'इराणी रियाल',
+ 'ISK' => 'आइसलँडिक क्रोना',
+ 'JMD' => 'जमैकन डॉलर',
+ 'JOD' => 'जॉर्डनियन दिनार',
+ 'JPY' => 'जपानी येन',
+ 'KES' => 'केनियन शिलिंग',
+ 'KGS' => 'किरगिस्तानी सॉम',
+ 'KHR' => 'कंबोडियन रियेल',
+ 'KMF' => 'कोलोरियन फ्रँक',
+ 'KPW' => 'उत्तर कोरियन वॉन',
+ 'KRW' => 'दक्षिण कोरियन वॉन',
+ 'KWD' => 'कुवैती दिनार',
+ 'KYD' => 'केमेन आयलॅंड डॉलर',
+ 'KZT' => 'कझाकिस्तानी तेंगे',
+ 'LAK' => 'लेओशियन किप',
+ 'LBP' => 'लेबनीज पाउंड',
+ 'LKR' => 'श्रीलंकन रुपी',
+ 'LRD' => 'लाइबेरियन डॉलर',
+ 'LSL' => 'लेसोटो लोटी',
+ 'LTL' => 'लिथुआनियन लिटास',
+ 'LVL' => 'लाट्व्हियन लाट्झ',
+ 'LYD' => 'लिबियाचा दिनार',
+ 'MAD' => 'मोरोक्को दिरहॅम',
+ 'MDL' => 'मोल्डोवन लेउ',
+ 'MGA' => 'मालागासी एरियारी',
+ 'MKD' => 'मॅसेडोनियन देनार',
+ 'MMK' => 'म्यानमार क्याट',
+ 'MNT' => 'मंगोलियन टुग्रिक',
+ 'MOP' => 'मॅकॅनीज् पटाका',
+ 'MRO' => 'मॉरिटानियन ओगिया',
+ 'MUR' => 'मॉरिशियन रुपी',
+ 'MVR' => 'मालदीवियन रुफिया',
+ 'MWK' => 'मालावियन क्वाचा',
+ 'MXN' => 'मेक्सिको पेसो',
+ 'MYR' => 'मलेशियन रिंगिट',
+ 'MZN' => 'मोझांबिकन मेटिकल',
+ 'NAD' => 'नमिबियन डॉलर',
+ 'NGN' => 'नायजेरियन नायरा',
+ 'NIO' => 'निकाराग्वेचा कोर्डोबा',
+ 'NOK' => 'नॉर्वेजियन क्रोन',
+ 'NPR' => 'नेपाळी रुपया',
+ 'NZD' => 'न्यूझीलँड डॉलर',
+ 'OMR' => 'ओमानी रियाल',
+ 'PAB' => 'पनामा बाल्बोआ',
+ 'PEN' => 'पेरुवियन नुइव्हो सोल',
+ 'PGK' => 'पापुआ न्यू गिनीयन किना',
+ 'PHP' => 'फिलिपिनी पेसो',
+ 'PKR' => 'पाकिस्तानी रुपया',
+ 'PLN' => 'पोलिश झ्लॉटी',
+ 'PYG' => 'पराग्वे ग्वारानी',
+ 'QAR' => 'कतारी रियाल',
+ 'RON' => 'रोमानियन लेऊ',
+ 'RSD' => 'सर्बियन दिनार',
+ 'RUB' => 'रशियन रुबल',
+ 'RWF' => 'रवांडा फ्रँक',
+ 'SAR' => 'सौदी रियाल',
+ 'SBD' => 'सोलोमन आयलँड्स डॉलर',
+ 'SCR' => 'सेशेलोईस रुपी',
+ 'SDG' => 'सुदानी पाउंड',
+ 'SEK' => 'स्वीडिश क्रोना',
+ 'SGD' => 'सिंगापूर डॉलर',
+ 'SHP' => 'सेंट हेलेना पाउंड',
+ 'SLL' => 'सिएरा लिऑनचा लिऑन',
+ 'SOS' => 'सोमाली शिलिंग',
+ 'SRD' => 'सुरिनामी डॉलर',
+ 'SSP' => 'दक्षिण सुदानी पाउंड',
+ 'STD' => 'साओ टोम आणि प्रिन्सिपे डोबरा',
+ 'SYP' => 'सीरियन पाउंड',
+ 'SZL' => 'स्वाझी लीलांगेनी',
+ 'THB' => 'थाई बाहत',
+ 'TJS' => 'ताजकीस्तानी सोमोनी',
+ 'TMT' => 'तुर्कमेनिस्तानी मानाट',
+ 'TND' => 'ट्यूनिशियन दिनार',
+ 'TOP' => 'टोंगा पाआंगा',
+ 'TRY' => 'तुर्की लिरा',
+ 'TTD' => 'त्रिनिदाद आणि टोबॅगो डॉलर',
+ 'TWD' => 'न्यू तैवान डॉलर',
+ 'TZS' => 'टांझानियन शिलिंग',
+ 'UAH' => 'युक्रेनियन रिवनिया',
+ 'UGX' => 'युगांडा शिलिंग',
+ 'USD' => 'यूएस डॉलर',
+ 'UYU' => 'उरुग्वेचा पेसो',
+ 'UZS' => 'उझबेकिस्तान सॉम',
+ 'VEF' => 'व्हेनेझुएला बोलिव्हार',
+ 'VND' => 'व्हिएतनामी डोंग',
+ 'VUV' => 'वानाटु वाटु',
+ 'WST' => 'सामोअन टाला',
+ 'XAF' => '[CFA] फ्रँक [BEAC]',
+ 'XCD' => 'पूर्व कॅरीबियन डॉलर',
+ 'XOF' => '[CFA] फ्रँक [BCEAO]',
+ 'XPF' => '[CFP] फ्रँक',
+ 'XXX' => 'अज्ञात चलन',
+ 'YER' => 'येमेनी रियाल',
+ 'ZAR' => 'दक्षिण आफ्रिकी रँड',
+ 'ZMK' => 'झांबियन क्वाचा (1968–2012)',
+ 'ZMW' => 'झांबियन क्वाचा',
+);
+
+$currencySymbols = array(
+ 'AED' => 'AED',
+ 'AFN' => 'AFN',
+ 'ALL' => 'ALL',
+ 'AMD' => 'AMD',
+ 'ANG' => 'ANG',
+ 'AOA' => 'AOA',
+ 'ARS' => 'ARS',
+ 'AUD' => 'A$',
+ 'AWG' => 'AWG',
+ 'AZN' => 'AZN',
+ 'BAM' => 'BAM',
+ 'BBD' => 'BBD',
+ 'BDT' => 'BDT',
+ 'BGN' => 'BGN',
+ 'BHD' => 'BHD',
+ 'BIF' => 'BIF',
+ 'BMD' => 'BMD',
+ 'BND' => 'BND',
+ 'BOB' => 'BOB',
+ 'BRL' => 'R$',
+ 'BSD' => 'BSD',
+ 'BTN' => 'BTN',
+ 'BWP' => 'BWP',
+ 'BYR' => 'BYR',
+ 'BZD' => 'BZD',
+ 'CAD' => 'CA$',
+ 'CDF' => 'CDF',
+ 'CHF' => 'CHF',
+ 'CLP' => 'CLP',
+ 'CNY' => 'CN¥',
+ 'COP' => 'COP',
+ 'CRC' => 'CRC',
+ 'CUC' => 'CUC',
+ 'CUP' => 'CUP',
+ 'CVE' => 'CVE',
+ 'CZK' => 'CZK',
+ 'DJF' => 'DJF',
+ 'DKK' => 'DKK',
+ 'DOP' => 'DOP',
+ 'DZD' => 'DZD',
+ 'EGP' => 'EGP',
+ 'ERN' => 'ERN',
+ 'ETB' => 'ETB',
+ 'EUR' => '€',
+ 'FJD' => 'FJD',
+ 'FKP' => 'FKP',
+ 'GBP' => '£',
+ 'GEL' => 'GEL',
+ 'GHS' => 'GHS',
+ 'GIP' => 'GIP',
+ 'GMD' => 'GMD',
+ 'GNF' => 'GNF',
+ 'GTQ' => 'GTQ',
+ 'GYD' => 'GYD',
+ 'HKD' => 'HK$',
+ 'HNL' => 'HNL',
+ 'HRK' => 'HRK',
+ 'HTG' => 'HTG',
+ 'HUF' => 'HUF',
+ 'IDR' => 'IDR',
+ 'ILS' => '₪',
+ 'INR' => '₹',
+ 'IQD' => 'IQD',
+ 'IRR' => 'IRR',
+ 'ISK' => 'ISK',
+ 'JMD' => 'JMD',
+ 'JOD' => 'JOD',
+ 'JPY' => 'JP¥',
+ 'KES' => 'KES',
+ 'KGS' => 'KGS',
+ 'KHR' => 'KHR',
+ 'KMF' => 'KMF',
+ 'KPW' => 'KPW',
+ 'KRW' => '₩',
+ 'KWD' => 'KWD',
+ 'KYD' => 'KYD',
+ 'KZT' => 'KZT',
+ 'LAK' => 'LAK',
+ 'LBP' => 'LBP',
+ 'LKR' => 'LKR',
+ 'LRD' => 'LRD',
+ 'LTL' => 'LTL',
+ 'LVL' => 'LVL',
+ 'LYD' => 'LYD',
+ 'MAD' => 'MAD',
+ 'MDL' => 'MDL',
+ 'MGA' => 'MGA',
+ 'MKD' => 'MKD',
+ 'MMK' => 'MMK',
+ 'MNT' => 'MNT',
+ 'MOP' => 'MOP',
+ 'MRO' => 'MRO',
+ 'MUR' => 'MUR',
+ 'MVR' => 'MVR',
+ 'MWK' => 'MWK',
+ 'MXN' => 'MX$',
+ 'MYR' => 'MYR',
+ 'MZN' => 'MZN',
+ 'NAD' => 'NAD',
+ 'NGN' => 'NGN',
+ 'NIO' => 'NIO',
+ 'NOK' => 'NOK',
+ 'NPR' => 'NPR',
+ 'NZD' => 'NZ$',
+ 'OMR' => 'OMR',
+ 'PAB' => 'PAB',
+ 'PEN' => 'PEN',
+ 'PGK' => 'PGK',
+ 'PHP' => 'PHP',
+ 'PKR' => 'PKR',
+ 'PLN' => 'PLN',
+ 'PYG' => 'PYG',
+ 'QAR' => 'QAR',
+ 'RON' => 'RON',
+ 'RSD' => 'RSD',
+ 'RUB' => 'RUB',
+ 'RWF' => 'RWF',
+ 'SAR' => 'SAR',
+ 'SBD' => 'SBD',
+ 'SCR' => 'SCR',
+ 'SDG' => 'SDG',
+ 'SEK' => 'SEK',
+ 'SGD' => 'SGD',
+ 'SHP' => 'SHP',
+ 'SLL' => 'SLL',
+ 'SOS' => 'SOS',
+ 'SRD' => 'SRD',
+ 'SSP' => 'SSP',
+ 'STD' => 'STD',
+ 'SYP' => 'SYP',
+ 'SZL' => 'SZL',
+ 'THB' => '฿',
+ 'TJS' => 'TJS',
+ 'TMT' => 'TMT',
+ 'TND' => 'TND',
+ 'TOP' => 'TOP',
+ 'TRY' => 'TRY',
+ 'TTD' => 'TTD',
+ 'TWD' => 'NT$',
+ 'TZS' => 'TZS',
+ 'UAH' => 'UAH',
+ 'UGX' => 'UGX',
+ 'USD' => '$',
+ 'UYU' => 'UYU',
+ 'UZS' => 'UZS',
+ 'VEF' => 'VEF',
+ 'VND' => '₫',
+ 'VUV' => 'VUV',
+ 'WST' => 'WST',
+ 'XAF' => 'FCFA',
+ 'XCD' => 'EC$',
+ 'XOF' => 'CFA',
+ 'XPF' => 'CFPF',
+ 'YER' => 'YER',
+ 'ZAR' => 'ZAR',
+ 'ZMW' => 'ZMW',
+);
+
+$countryNames = array(
+ 'AC' => 'अ‍ॅसेन्शियन बेट',
+ 'AD' => 'अँडोरा',
+ 'AE' => 'संयुक्त अरब अमीरात',
+ 'AF' => 'अफगाणिस्तान',
+ 'AG' => 'अँटिग्वा आणि बर्बुडा',
+ 'AI' => 'अँग्विला',
+ 'AL' => 'अल्बानिया',
+ 'AM' => 'अर्मेनिया',
+ 'AN' => 'नेदरलँड्‍स अँ‍टिल्स',
+ 'AO' => 'अंगोला',
+ 'AQ' => 'अंटार्क्टिका',
+ 'AR' => 'अर्जेंटिना',
+ 'AS' => 'अमेरिकन सामोआ',
+ 'AT' => 'ऑस्ट्रिया',
+ 'AU' => 'ऑस्ट्रेलिया',
+ 'AW' => 'अरुबा',
+ 'AX' => 'अ‍ॅलँड बेटे',
+ 'AZ' => 'अझरबैजान',
+ 'BA' => 'बोस्निया अणि हर्जेगोविना',
+ 'BB' => 'बार्बाडोस',
+ 'BD' => 'बांगलादेश',
+ 'BE' => 'बेल्जियम',
+ 'BF' => 'बुर्किना फासो',
+ 'BG' => 'बल्गेरिया',
+ 'BH' => 'बहारीन',
+ 'BI' => 'बुरुंडी',
+ 'BJ' => 'बेनिन',
+ 'BL' => 'सेंट बार्थेलेमी',
+ 'BM' => 'बर्मुडा',
+ 'BN' => 'ब्रुनेई',
+ 'BO' => 'बोलिव्हिया',
+ 'BQ' => 'कॅरिबियन नेदरलँड्स',
+ 'BR' => 'ब्राझिल',
+ 'BS' => 'बहामाज',
+ 'BT' => 'भूतान',
+ 'BV' => 'बोउवेट बेट',
+ 'BW' => 'बोट्सवाना',
+ 'BY' => 'बेलारूस',
+ 'BZ' => 'बलिझ',
+ 'CA' => 'कॅनडा',
+ 'CC' => 'कोकोस (कीलिंग) बेटे',
+ 'CD' => 'काँगो - किंशासा',
+ 'CF' => 'केंद्रीय अफ्रिकी प्रजासत्ताक',
+ 'CG' => 'काँगो - ब्राझाविले',
+ 'CH' => 'स्वित्झर्लंड',
+ 'CI' => 'आयव्हरी कोस्ट',
+ 'CK' => 'कुक बेटे',
+ 'CL' => 'चिली',
+ 'CM' => 'कॅमेरून',
+ 'CN' => 'चीन',
+ 'CO' => 'कोलम्बिया',
+ 'CP' => 'क्लिपरटोन बेट',
+ 'CR' => 'कोस्टा रिका',
+ 'CU' => 'क्यूबा',
+ 'CV' => 'केप व्हर्डे',
+ 'CW' => 'कुरॅको',
+ 'CX' => 'ख्रिसमस बेट',
+ 'CY' => 'सायप्रस',
+ 'CZ' => 'झेक प्रजासत्ताक',
+ 'DE' => 'जर्मनी',
+ 'DG' => 'दिएगो गार्सिया',
+ 'DJ' => 'जिबौटी',
+ 'DK' => 'डेन्मार्क',
+ 'DM' => 'डोमिनिका',
+ 'DO' => 'डोमिनिकन प्रजासत्ताक',
+ 'DZ' => 'अल्जीरिया',
+ 'EA' => 'स्यूटा आणि मेलिला',
+ 'EC' => 'इक्वाडोर',
+ 'EE' => 'एस्टोनिया',
+ 'EG' => 'इजिप्त',
+ 'EH' => 'पश्चिम सहारा',
+ 'ER' => 'एरिट्रिया',
+ 'ES' => 'स्पेन',
+ 'ET' => 'इथिओपिया',
+ 'EU' => 'युरोपीय संघ',
+ 'FI' => 'फिनलंड',
+ 'FJ' => 'फिजी',
+ 'FK' => 'फॉकलंड बेटे',
+ 'FM' => 'मायक्रोनेशिया',
+ 'FO' => 'फेरो बेटे',
+ 'FR' => 'फ्रान्स',
+ 'GA' => 'गॅबॉन',
+ 'GB' => 'यू.के.',
+ 'GD' => 'ग्रेनेडा',
+ 'GE' => 'जॉर्जिया',
+ 'GF' => 'फ्रेंच गयाना',
+ 'GG' => 'ग्वेर्नसे',
+ 'GH' => 'घाना',
+ 'GI' => 'जिब्राल्टर',
+ 'GL' => 'ग्रीनलंड',
+ 'GM' => 'गाम्बिया',
+ 'GN' => 'गिनी',
+ 'GP' => 'ग्वाडेलोउपे',
+ 'GQ' => 'इक्वेटोरियल गिनी',
+ 'GR' => 'ग्रीस',
+ 'GS' => 'दक्षिण जॉर्जिया आणि दक्षिण सँडविच बेटे',
+ 'GT' => 'ग्वाटेमाला',
+ 'GU' => 'गुआम',
+ 'GW' => 'गिनी-बिसाउ',
+ 'GY' => 'गयाना',
+ 'HK' => 'हाँगकाँग',
+ 'HM' => 'हर्ड आणि मॅक्डोनाल्ड बेटे',
+ 'HN' => 'होंडुरास',
+ 'HR' => 'क्रोएशिया',
+ 'HT' => 'हैती',
+ 'HU' => 'हंगेरी',
+ 'IC' => 'कॅनरी बेटे',
+ 'ID' => 'इंडोनेशिया',
+ 'IE' => 'आयर्लंड',
+ 'IL' => 'इस्त्राइल',
+ 'IM' => 'इस्ले ऑफ मॅन',
+ 'IN' => 'भारत',
+ 'IO' => 'ब्रिटिश हिंदी महासागर क्षेत्र',
+ 'IQ' => 'इराक',
+ 'IR' => 'ईराण',
+ 'IS' => 'आइसलँड',
+ 'IT' => 'इटली',
+ 'JE' => 'जर्सी',
+ 'JM' => 'जमैका',
+ 'JO' => 'जॉर्डन',
+ 'JP' => 'जपान',
+ 'KE' => 'केनिया',
+ 'KG' => 'किरगिझस्तान',
+ 'KH' => 'कंबोडिया',
+ 'KI' => 'किरीबाटी',
+ 'KM' => 'कोमोरोज',
+ 'KN' => 'सेंट किट्स आणि नेव्हिस',
+ 'KP' => 'उत्तर कोरिया',
+ 'KR' => 'दक्षिण कोरिया',
+ 'KW' => 'कुवेत',
+ 'KY' => 'केमन बेटे',
+ 'KZ' => 'कझाकस्तान',
+ 'LA' => 'लाओस',
+ 'LB' => 'लेबनॉन',
+ 'LC' => 'सेंट ल्यूसिया',
+ 'LI' => 'लिक्टेनस्टाइन',
+ 'LK' => 'श्रीलंका',
+ 'LR' => 'लायबेरिया',
+ 'LS' => 'लेसोथो',
+ 'LT' => 'लिथुआनिया',
+ 'LU' => 'लक्झेंबर्ग',
+ 'LV' => 'लात्विया',
+ 'LY' => 'लिबिया',
+ 'MA' => 'मोरोक्को',
+ 'MC' => 'मोनॅको',
+ 'MD' => 'मोल्डोव्हा',
+ 'ME' => 'मोंटेनेग्रो',
+ 'MF' => 'सेंट मार्टिन',
+ 'MG' => 'मादागास्कर',
+ 'MH' => 'मार्शल बेटे',
+ 'MK' => 'मॅसेडोनिया',
+ 'ML' => 'माली',
+ 'MM' => 'म्यानमार (बर्मा)',
+ 'MN' => 'मंगोलिया',
+ 'MO' => 'मकाओ',
+ 'MP' => 'उत्तरी मारियाना बेटे',
+ 'MQ' => 'मार्टिनिक',
+ 'MR' => 'मॉरिटानिया',
+ 'MS' => 'मॉन्ट्सेराट',
+ 'MT' => 'माल्टा',
+ 'MU' => 'मॉरिशस',
+ 'MV' => 'मालदीव',
+ 'MW' => 'मलावी',
+ 'MX' => 'मेक्सिको',
+ 'MY' => 'मलेशिया',
+ 'MZ' => 'मोझाम्बिक',
+ 'NA' => 'नामिबिया',
+ 'NC' => 'न्यू कॅलेडोनिया',
+ 'NE' => 'नाइजर',
+ 'NF' => 'नॉरफॉक बेट',
+ 'NG' => 'नायजेरिया',
+ 'NI' => 'निकाराग्वा',
+ 'NL' => 'नेदरलँड',
+ 'NO' => 'नॉर्वे',
+ 'NP' => 'नेपाळ',
+ 'NR' => 'नऊरु',
+ 'NU' => 'नीयू',
+ 'NZ' => 'न्यूझीलंड',
+ 'OM' => 'ओमान',
+ 'PA' => 'पनामा',
+ 'PE' => 'पेरू',
+ 'PF' => 'फ्रेंच पॉलिनेशिया',
+ 'PG' => 'पापुआ न्यू गिनी',
+ 'PH' => 'फिलिपिन्स',
+ 'PK' => 'पाकिस्तान',
+ 'PL' => 'पोलंड',
+ 'PM' => 'सेंट पियरे आणि मिक्वेलोन',
+ 'PN' => 'पिटकैर्न बेटे',
+ 'PR' => 'प्युएर्तो रिको',
+ 'PS' => 'पॅलेस्टाईन',
+ 'PT' => 'पोर्तुगाल',
+ 'PW' => 'पलाऊ',
+ 'PY' => 'पराग्वे',
+ 'QA' => 'कतार',
+ 'QO' => 'आउटलाईंग ओशनिया',
+ 'RE' => 'रियुनियन',
+ 'RO' => 'रोमानिया',
+ 'RS' => 'सर्बिया',
+ 'RU' => 'रशिया',
+ 'RW' => 'रवांडा',
+ 'SA' => 'सौदी अरब',
+ 'SB' => 'सोलोमन बेटे',
+ 'SC' => 'सेशेल्स',
+ 'SD' => 'सुदान',
+ 'SE' => 'स्वीडन',
+ 'SG' => 'सिंगापूर',
+ 'SH' => 'सेंट हेलेना',
+ 'SI' => 'स्लोव्हेनिया',
+ 'SJ' => 'स्वालबर्ड आणि जान मायेन',
+ 'SK' => 'स्लोव्हाकिया',
+ 'SL' => 'सिएरा लिओन',
+ 'SM' => 'सॅन मरीनो',
+ 'SN' => 'सेनेगल',
+ 'SO' => 'सोमालिया',
+ 'SR' => 'सुरिनाम',
+ 'SS' => 'दक्षिण सुदान',
+ 'ST' => 'साओ टोम आणि प्रिंसिपे',
+ 'SV' => 'अल साल्वाडोर',
+ 'SX' => 'सिंट मार्टेन',
+ 'SY' => 'सीरिया',
+ 'SZ' => 'स्वाझिलँड',
+ 'TA' => 'ट्रिस्टन दा कुन्हा',
+ 'TC' => 'टर्क्स आणि कैकोस बेटे',
+ 'TD' => 'चाड',
+ 'TF' => 'फ्रेंच दाक्षिणात्य प्रदेश',
+ 'TG' => 'टोगो',
+ 'TH' => 'थायलंड',
+ 'TJ' => 'ताजिकिस्तान',
+ 'TK' => 'तोकेलाउ',
+ 'TL' => 'पूर्व तिमोर',
+ 'TM' => 'तुर्कमेनिस्तान',
+ 'TN' => 'ट्यूनिशिया',
+ 'TO' => 'टोंगा',
+ 'TR' => 'तुर्की',
+ 'TT' => 'त्रिनिदाद आणि टोबॅगो',
+ 'TV' => 'टुवालु',
+ 'TW' => 'तैवान',
+ 'TZ' => 'टांझानिया',
+ 'UA' => 'युक्रेन',
+ 'UG' => 'युगांडा',
+ 'UM' => 'यू.एस. आउटलाइंग बेटे',
+ 'US' => 'यू.एस.',
+ 'UY' => 'उरुग्वे',
+ 'UZ' => 'उझबेकिस्तान',
+ 'VA' => 'व्हॅटिकन सिटी',
+ 'VC' => 'सेंट व्हिन्सेंट आणि ग्रेनडाइन्स',
+ 'VE' => 'व्हेनेझुएला',
+ 'VG' => 'ब्रिटिश व्हर्जिन बेटे',
+ 'VI' => 'यू.एस. व्हर्जिन बेटे',
+ 'VN' => 'व्हिएतनाम',
+ 'VU' => 'वानौटु',
+ 'WF' => 'वालिस आणि फ्यूचूना',
+ 'WS' => 'सामोआ',
+ 'XK' => 'कोसोव्हो',
+ 'YE' => 'येमेन',
+ 'YT' => 'मायोट्टे',
+ 'ZA' => 'दक्षिण आफ्रिका',
+ 'ZM' => 'झाम्बिया',
+ 'ZW' => 'झिम्बाब्वे',
+);
+
+$timeUnits = array(
+ 'day-future-one' => '{0} दिवसामध्ये',
+ 'day-future-other' => '{0} दिवसांमध्ये',
+ 'day-narrow-future-one' => '+{0} दिवस',
+ 'day-narrow-future-other' => '+{0} दिवस',
+ 'day-narrow-past-one' => '-{0} दिवस',
+ 'day-narrow-past-other' => '-{0} दिवस',
+ 'day-one' => '{0} दिवस',
+ 'day-other' => '{0} दिवस',
+ 'day-past-one' => '{0} दिवसापूर्वी',
+ 'day-past-other' => '{0} दिवसांपूर्वी',
+ 'day-short-future-one' => '{0} दिवसामध्ये',
+ 'day-short-future-other' => '{0} दिवसांमध्ये',
+ 'day-short-past-one' => '{0} दिवसापूर्वी',
+ 'day-short-past-other' => '{0} दिवसांपूर्वी',
+ 'hour-future-one' => '{0} तासामध्ये',
+ 'hour-future-other' => '{0} तासांमध्ये',
+ 'hour-narrow-future-one' => '+{0} ता',
+ 'hour-narrow-future-other' => '+{0} ता',
+ 'hour-narrow-past-one' => '-{0} ता',
+ 'hour-narrow-past-other' => '-{0} ता',
+ 'hour-one' => '{0} तास',
+ 'hour-other' => '{0} तास',
+ 'hour-past-one' => '{0} तासापूर्वी',
+ 'hour-past-other' => '{0} तासांपूर्वी',
+ 'hour-short-future-one' => '{0} तासामध्ये',
+ 'hour-short-future-other' => '{0} तासामध्ये',
+ 'hour-short-past-one' => '{0} तासापूर्वी',
+ 'hour-short-past-other' => '{0} तासापूर्वी',
+ 'microsecond-one' => '{0} मायक्रोसेकंद',
+ 'microsecond-other' => '{0} मायक्रोसेकंद',
+ 'millisecond-one' => '{0} मिलिसेकंद',
+ 'millisecond-other' => '{0} मिलिसेकंद',
+ 'minute-future-one' => '{0} मिनिटामध्ये',
+ 'minute-future-other' => '{0} मिनिटांमध्ये',
+ 'minute-narrow-future-one' => '+{0} मि',
+ 'minute-narrow-future-other' => '+{0} मि',
+ 'minute-narrow-past-one' => '-{0} मि',
+ 'minute-narrow-past-other' => '-{0} मि',
+ 'minute-one' => '{0} मिनिट',
+ 'minute-other' => '{0} मिनिटे',
+ 'minute-past-one' => '{0} मिनिटापूर्वी',
+ 'minute-past-other' => '{0} मिनिटांपूर्वी',
+ 'minute-short-future-one' => '{0} मिनि. मध्ये',
+ 'minute-short-future-other' => '{0} मिनि. मध्ये',
+ 'minute-short-past-one' => '{0} मिनि. पूर्वी',
+ 'minute-short-past-other' => '{0} मिनि. पूर्वी',
+ 'month-future-one' => '{0} महिन्यामध्ये',
+ 'month-future-other' => '{0} महिन्यांमध्ये',
+ 'month-narrow-future-one' => '+{0} महिना',
+ 'month-narrow-future-other' => '+{0} महिना',
+ 'month-narrow-past-one' => '-{0} महिना',
+ 'month-narrow-past-other' => '-{0} महिना',
+ 'month-one' => '{0} महिना',
+ 'month-other' => '{0} महिने',
+ 'month-past-one' => '{0} महिन्यापूर्वी',
+ 'month-past-other' => '{0} महिन्यांपूर्वी',
+ 'month-short-future-one' => '{0} महिन्यामध्ये',
+ 'month-short-future-other' => '{0} महिन्यामध्ये',
+ 'month-short-past-one' => '{0} महिन्यापूर्वी',
+ 'month-short-past-other' => '{0} महिन्यापूर्वी',
+ 'nanosecond-one' => '{0} नॅनोसेकंद',
+ 'nanosecond-other' => '{0} नॅनोसेकंद',
+ 'quarter-future-one' => '{0} तिमाहीमध्ये',
+ 'quarter-future-other' => '{0} तिमाहींमध्ये',
+ 'quarter-narrow-future-one' => '+{0} तिमाही',
+ 'quarter-narrow-future-other' => '+{0} तिमाही',
+ 'quarter-narrow-past-one' => '-{0} तिमाही',
+ 'quarter-narrow-past-other' => '-{0} तिमाही',
+ 'quarter-past-one' => '{0} तिमाहीपूर्वी',
+ 'quarter-past-other' => '{0} तिमाहींपूर्वी',
+ 'quarter-short-future-one' => '{0} तिमाहीमध्ये',
+ 'quarter-short-future-other' => '{0} तिमाहींमध्ये',
+ 'quarter-short-past-one' => '{0} तिमाहीपूर्वी',
+ 'quarter-short-past-other' => '{0} तिमाहींपूर्वी',
+ 'second-future-one' => '{0} सेकंदामध्ये',
+ 'second-future-other' => '{0} सेकंदांमध्ये',
+ 'second-narrow-future-one' => '+{0} से',
+ 'second-narrow-future-other' => '+{0} से',
+ 'second-narrow-past-one' => '-{0} से पूर्वी',
+ 'second-narrow-past-other' => '-{0} से पूर्वी',
+ 'second-one' => '{0} सेकंद',
+ 'second-other' => '{0} सेकंद',
+ 'second-past-one' => '{0} सेकंदापूर्वी',
+ 'second-past-other' => '{0} सेकंदांपूर्वी',
+ 'second-short-future-one' => '{0} सेकंदामध्ये',
+ 'second-short-future-other' => '{0} सेकंदामध्ये',
+ 'second-short-past-one' => '{0} सेकंदापूर्वी',
+ 'second-short-past-other' => '{0} सेकंदापूर्वी',
+ 'week-future-one' => '{0} आठवड्यामध्ये',
+ 'week-future-other' => '{0} आठवड्यांमध्ये',
+ 'week-narrow-future-one' => '+{0} आठवडा',
+ 'week-narrow-future-other' => '+{0} आठवडा',
+ 'week-narrow-past-one' => '-{0} आठवडा',
+ 'week-narrow-past-other' => '-{0} आठवडा',
+ 'week-one' => '{0} आठवडा',
+ 'week-other' => '{0} आठवडे',
+ 'week-past-one' => '{0} आठवड्यापूर्वी',
+ 'week-past-other' => '{0} आठवड्यांपूर्वी',
+ 'week-short-future-one' => '{0} आठवड्यामध्ये',
+ 'week-short-future-other' => '{0} आठवड्यामध्ये',
+ 'week-short-past-one' => '{0} आठवड्यापूर्वी',
+ 'week-short-past-other' => '{0} आठवड्यापूर्वी',
+ 'year-future-one' => '{0} वर्षामध्ये',
+ 'year-future-other' => '{0} वर्षांमध्ये',
+ 'year-narrow-future-one' => '+{0} वर्ष',
+ 'year-narrow-future-other' => '+{0} वर्ष',
+ 'year-narrow-past-one' => '-{0} वर्ष',
+ 'year-narrow-past-other' => '-{0} वर्ष',
+ 'year-one' => '{0} वर्ष',
+ 'year-other' => '{0} वर्षे',
+ 'year-past-one' => '{0} वर्षापूर्वी',
+ 'year-past-other' => '{0} वर्षांपूर्वी',
+ 'year-short-future-one' => '{0} वर्षांमध्ये',
+ 'year-short-future-other' => '{0} वर्षांमध्ये',
+ 'year-short-past-one' => '{0} वर्षांपूर्वी',
+ 'year-short-past-other' => '{0} वर्षांपूर्वी',
+);
diff --git a/MLEB/cldr/CldrNames/CldrNamesMs.php b/MLEB/cldr/CldrNames/CldrNamesMs.php
new file mode 100644
index 00000000..8d23f86c
--- /dev/null
+++ b/MLEB/cldr/CldrNames/CldrNamesMs.php
@@ -0,0 +1,958 @@
+<?php
+
+$languageNames = array(
+ 'ab' => 'Abkhazia',
+ 'ach' => 'Akoli',
+ 'ady' => 'Adyghe',
+ 'ae' => 'Avestan',
+ 'aeb' => 'Arab Tunisia',
+ 'af' => 'Afrikaans',
+ 'agq' => 'Aghem',
+ 'ak' => 'Akan',
+ 'alt' => 'Altai Selatan',
+ 'am' => 'Amharic',
+ 'ar' => 'Arab',
+ 'ar-001' => 'Arab Standard Moden',
+ 'arn' => 'Mapuche',
+ 'arq' => 'Arab Algeria',
+ 'ary' => 'Arab Maghribi',
+ 'arz' => 'Arab Mesir',
+ 'as' => 'Assam',
+ 'asa' => 'Asu',
+ 'av' => 'Avaric',
+ 'ay' => 'Aymara',
+ 'az' => 'Azerbaijan',
+ 'azb' => 'Azerbaijan Selatan',
+ 'ba' => 'Bashkir',
+ 'bal' => 'Baluchi',
+ 'bax' => 'Bamun',
+ 'bbj' => 'Ghomala',
+ 'be' => 'Belarus',
+ 'bej' => 'Beja',
+ 'bem' => 'Bemba',
+ 'bez' => 'Bena',
+ 'bfd' => 'Bafut',
+ 'bg' => 'Bulgaria',
+ 'bkm' => 'Kom',
+ 'bm' => 'Bambara',
+ 'bn' => 'Benggala',
+ 'bo' => 'Tibet',
+ 'bpy' => 'Bishnupriya',
+ 'br' => 'Breton',
+ 'brh' => 'Brahui',
+ 'brx' => 'Bodo',
+ 'bs' => 'Bosnia',
+ 'bss' => 'Akoose',
+ 'bua' => 'Buriat',
+ 'bum' => 'Bulu',
+ 'byv' => 'Medumba',
+ 'ca' => 'Catalonia',
+ 'cay' => 'Cayuga',
+ 'ce' => 'Chechen',
+ 'cgg' => 'Chiga',
+ 'chm' => 'Mari',
+ 'chr' => 'Cherokee',
+ 'ckb' => 'Kurdi Sorani',
+ 'co' => 'Corsica',
+ 'cop' => 'Coptic',
+ 'crh' => 'Turki Krimea',
+ 'cs' => 'Czech',
+ 'cu' => 'Slavik Gereja',
+ 'cv' => 'Chuvash',
+ 'cy' => 'Wales',
+ 'da' => 'Denmark',
+ 'dav' => 'Taita',
+ 'de' => 'Jerman',
+ 'de-at' => 'Jerman Austria',
+ 'de-ch' => 'Jerman Halus Switzerland',
+ 'dje' => 'Zarma',
+ 'doi' => 'Dogri',
+ 'dsb' => 'Lower Sorbian',
+ 'dua' => 'Duala',
+ 'dv' => 'Divehi',
+ 'dyo' => 'Jola-Fonyi',
+ 'dz' => 'Dzongkha',
+ 'dzg' => 'Dazaga',
+ 'ebu' => 'Embu',
+ 'ee' => 'Ewe',
+ 'efi' => 'Efik',
+ 'el' => 'Greek',
+ 'en' => 'Inggeris',
+ 'en-au' => 'Inggeris Australia',
+ 'en-ca' => 'Inggeris Kanada',
+ 'en-gb' => 'Inggeris British',
+ 'en-us' => 'Inggeris AS',
+ 'eo' => 'Esperanto',
+ 'es' => 'Sepanyol',
+ 'es-419' => 'Sepanyol Amerika Latin',
+ 'es-es' => 'Sepanyol Eropah',
+ 'es-mx' => 'Sepanyol Mexico',
+ 'et' => 'Estonia',
+ 'eu' => 'Basque',
+ 'fa' => 'Parsi',
+ 'fi' => 'Finland',
+ 'fil' => 'Filipina',
+ 'fj' => 'Fiji',
+ 'fo' => 'Faroe',
+ 'fr' => 'Perancis',
+ 'fr-ca' => 'Perancis Kanada',
+ 'fr-ch' => 'Perancis Switzerland',
+ 'fy' => 'Frisian',
+ 'ga' => 'Ireland',
+ 'gaa' => 'Ga',
+ 'gag' => 'Gagauz',
+ 'gba' => 'Gbaya',
+ 'gbz' => 'Zoroastrian Dari',
+ 'gd' => 'Scots Gaelic',
+ 'gl' => 'Galicia',
+ 'glk' => 'Gilaki',
+ 'gn' => 'Guarani',
+ 'grc' => 'Greek Purba',
+ 'gsw' => 'Jerman Switzerland',
+ 'gu' => 'Gujerat',
+ 'guz' => 'Gusii',
+ 'gv' => 'Manx',
+ 'ha' => 'Hausa',
+ 'haw' => 'Hawaii',
+ 'he' => 'Ibrani',
+ 'hi' => 'Hindi',
+ 'hr' => 'Croat',
+ 'hsb' => 'Upper Sorbian',
+ 'ht' => 'Haiti',
+ 'hu' => 'Hungary',
+ 'hy' => 'Armenia',
+ 'ia' => 'Interlingua',
+ 'ibb' => 'Ibibio',
+ 'id' => 'Indonesia',
+ 'ie' => 'Interlingue',
+ 'ig' => 'Igbo',
+ 'ii' => 'Sichuan Yi',
+ 'is' => 'Iceland',
+ 'it' => 'Itali',
+ 'iu' => 'Inuktitut',
+ 'ja' => 'Jepun',
+ 'jgo' => 'Ngomba',
+ 'jmc' => 'Machame',
+ 'jv' => 'Jawa',
+ 'ka' => 'Georgia',
+ 'kab' => 'Kabyle',
+ 'kam' => 'Kamba',
+ 'kbl' => 'Kanembu',
+ 'kde' => 'Makonde',
+ 'kea' => 'Kabuverdianu',
+ 'kg' => 'Kongo',
+ 'khq' => 'Koyra Chiini',
+ 'khw' => 'Khowar',
+ 'ki' => 'Kikuya',
+ 'kk' => 'Kazakhstan',
+ 'kkj' => 'Kako',
+ 'kl' => 'Kalaallisut',
+ 'kln' => 'Kalenjin',
+ 'km' => 'Khmer',
+ 'kn' => 'Kannada',
+ 'ko' => 'Korea',
+ 'koi' => 'Komi-Permyak',
+ 'kok' => 'Konkani',
+ 'ks' => 'Kashmir',
+ 'ksb' => 'Shambala',
+ 'ksf' => 'Bafia',
+ 'ksh' => 'Colognian',
+ 'ku' => 'Kurdish',
+ 'kw' => 'Cornish',
+ 'ky' => 'Kirghiz',
+ 'la' => 'Latin',
+ 'lag' => 'Langi',
+ 'lah' => 'Lahnda',
+ 'lb' => 'Luxembourg',
+ 'lg' => 'Ganda',
+ 'lkt' => 'Lakota',
+ 'ln' => 'Lingala',
+ 'lo' => 'Laos',
+ 'loz' => 'Lozi',
+ 'lt' => 'Lithuania',
+ 'lu' => 'Luba-Katanga',
+ 'lua' => 'Luba-Lulua',
+ 'luo' => 'Luo',
+ 'lus' => 'Mizo',
+ 'luy' => 'Luyia',
+ 'lv' => 'Latvia',
+ 'maf' => 'Mafa',
+ 'mas' => 'Masai',
+ 'mde' => 'Maba',
+ 'mer' => 'Meru',
+ 'mfe' => 'Morisyen',
+ 'mg' => 'Malagasy',
+ 'mgh' => 'Makhuwa-Meetto',
+ 'mgo' => 'Meta’',
+ 'mi' => 'Maori',
+ 'mk' => 'Macedonia',
+ 'ml' => 'Malayalam',
+ 'mn' => 'Mongolia',
+ 'mni' => 'Manipuri',
+ 'moh' => 'Mohawk',
+ 'mr' => 'Marathi',
+ 'ms' => 'Bahasa Melayu',
+ 'mt' => 'Malta',
+ 'mua' => 'Mundang',
+ 'my' => 'Burma',
+ 'mye' => 'Myene',
+ 'mzn' => 'Mazanderani',
+ 'naq' => 'Nama',
+ 'nb' => 'Bokmål Norway',
+ 'nd' => 'Ndebele Utara',
+ 'ne' => 'Nepal',
+ 'nl' => 'Belanda',
+ 'nl-be' => 'Flemish',
+ 'nmg' => 'Kwasio',
+ 'nn' => 'Nynorsk Norway',
+ 'no' => 'Norway',
+ 'nqo' => 'N’ko',
+ 'nso' => 'Sotho Utara',
+ 'nus' => 'Nuer',
+ 'ny' => 'Nyanja',
+ 'nyn' => 'Nyankole',
+ 'oc' => 'Occitania',
+ 'om' => 'Oromo',
+ 'or' => 'Oriya',
+ 'os' => 'Ossete',
+ 'pa' => 'Punjabi',
+ 'pl' => 'Poland',
+ 'ps' => 'Pashto',
+ 'pt' => 'Portugis',
+ 'pt-br' => 'Portugis Brazil',
+ 'pt-pt' => 'Portugis Eropah',
+ 'qu' => 'Quechua',
+ 'quc' => 'Kʼicheʼ',
+ 'rm' => 'Romansh',
+ 'rn' => 'Rundi',
+ 'ro' => 'Romania',
+ 'ro-md' => 'Moldavia',
+ 'rof' => 'Rombo',
+ 'ru' => 'Rusia',
+ 'rw' => 'Kinyarwanda',
+ 'rwk' => 'Rwa',
+ 'sa' => 'Sanskrit',
+ 'saq' => 'Samburu',
+ 'sba' => 'Ngambay',
+ 'sbp' => 'Sangu',
+ 'sd' => 'Sindhi',
+ 'se' => 'Sami Utara',
+ 'see' => 'Seneca',
+ 'seh' => 'Sena',
+ 'ses' => 'Koyraboro Senni',
+ 'sg' => 'Sango',
+ 'sh' => 'SerboCroatia',
+ 'shi' => 'Tachelhit',
+ 'shu' => 'Chadian Arab',
+ 'si' => 'Sinhala',
+ 'sk' => 'Slovak',
+ 'sl' => 'Slovenia',
+ 'sm' => 'Samoa',
+ 'sma' => 'Sami Selatan',
+ 'smj' => 'Lule Sami',
+ 'smn' => 'Inari Sami',
+ 'sms' => 'Skolt Sami',
+ 'sn' => 'Shona',
+ 'so' => 'Somali',
+ 'sq' => 'Albania',
+ 'sr' => 'Serbia',
+ 'ss' => 'Swati',
+ 'ssy' => 'Saho',
+ 'st' => 'Sotho Selatan',
+ 'su' => 'Sunda',
+ 'sv' => 'Sweden',
+ 'sw' => 'Swahili',
+ 'swb' => 'Comoria',
+ 'swc' => 'Congo Swahili',
+ 'ta' => 'Tamil',
+ 'te' => 'Telugu',
+ 'teo' => 'Teso',
+ 'tet' => 'Tetum',
+ 'tg' => 'Tajik',
+ 'th' => 'Thai',
+ 'ti' => 'Tigrinya',
+ 'tk' => 'Turkmen',
+ 'tlh' => 'Klingon',
+ 'tly' => 'Talysh',
+ 'tn' => 'Tswana',
+ 'to' => 'Tonga',
+ 'tpi' => 'Tok Pisin',
+ 'tr' => 'Turki',
+ 'trv' => 'Taroko',
+ 'ts' => 'Tsonga',
+ 'tt' => 'Tatar',
+ 'tum' => 'Tumbuka',
+ 'tw' => 'Twi',
+ 'twq' => 'Tasawaq',
+ 'ty' => 'Tahiti',
+ 'tzm' => 'Tamazight Atlas Tengah',
+ 'ug' => 'Uyghur',
+ 'uk' => 'Ukraine',
+ 'und' => 'Bahasa Tidak Diketahui',
+ 'ur' => 'Urdu',
+ 'uz' => 'Uzbekistan',
+ 'vai' => 'Vai',
+ 've' => 'Venda',
+ 'vi' => 'Vietnam',
+ 'vun' => 'Vunjo',
+ 'wae' => 'Walser',
+ 'wo' => 'Wolof',
+ 'xh' => 'Xhosa',
+ 'xog' => 'Soga',
+ 'yav' => 'Yangben',
+ 'ybb' => 'Yemba',
+ 'yi' => 'Yiddish',
+ 'yo' => 'Yoruba',
+ 'zgh' => 'Tamazight Maghribi Standard',
+ 'zh' => 'Cina',
+ 'zh-hans' => 'Cina Ringkas',
+ 'zh-hant' => 'Cina Tradisional',
+ 'zu' => 'Zulu',
+ 'zxx' => 'Tiada kandungan linguistik',
+ 'zza' => 'Zaza',
+);
+
+$currencyNames = array(
+ 'AED' => 'Dirham Emiriah Arab Bersatu',
+ 'AFN' => 'Afghani Afghanistan',
+ 'ALL' => 'Lek Albania',
+ 'AMD' => 'Dram Armenia',
+ 'ANG' => 'Guilder Antillean Netherland',
+ 'AOA' => 'Kwanza Angola',
+ 'ARS' => 'Peso Argentina',
+ 'AUD' => 'Dolar Australia',
+ 'AWG' => 'Florin Aruba',
+ 'AZN' => 'Manat Azerbaijan',
+ 'BAM' => 'Mark Boleh Tukar Bosnia-Herzegovina',
+ 'BBD' => 'Dolar Barbados',
+ 'BDT' => 'Taka Bangladesh',
+ 'BGN' => 'Lev Bulgaria',
+ 'BHD' => 'Dinar Bahrain',
+ 'BIF' => 'Franc Burundia',
+ 'BMD' => 'Dolar Bermuda',
+ 'BND' => 'Dolar Brunei',
+ 'BOB' => 'Boliviano Bolivia',
+ 'BRL' => 'Real Brazil',
+ 'BSD' => 'Dolar Bahamas',
+ 'BTN' => 'Ngultrum Bhutan',
+ 'BWP' => 'Pula Botswana',
+ 'BYR' => 'Ruble Belarus',
+ 'BZD' => 'Dolar Belize',
+ 'CAD' => 'Dolar Kanada',
+ 'CDF' => 'Franc Congo',
+ 'CHF' => 'Franc Switzerland',
+ 'CLP' => 'Peso Chile',
+ 'CNY' => 'Yuan Cina',
+ 'COP' => 'Peso Colombia',
+ 'CRC' => 'Colon Costa Rica',
+ 'CUC' => 'Peso Boleh Tukar Cuba',
+ 'CUP' => 'Peso Cuba',
+ 'CVE' => 'Escudo Tanjung Verde',
+ 'CZK' => 'Koruna Republik Czech',
+ 'DJF' => 'Franc Djibouti',
+ 'DKK' => 'Krone Denmark',
+ 'DOP' => 'Peso Dominican',
+ 'DZD' => 'Dinar Algeria',
+ 'EGP' => 'Paun Mesir',
+ 'ERN' => 'ERN',
+ 'ETB' => 'Birr Ethiopia',
+ 'EUR' => 'Euro',
+ 'FJD' => 'Dolar Fiji',
+ 'FKP' => 'Paun Kepulauan Falkland',
+ 'GBP' => 'Paun Sterling British',
+ 'GEL' => 'Lari Georgia',
+ 'GHS' => 'Cedi Ghana',
+ 'GIP' => 'Paun Gibraltar',
+ 'GMD' => 'Dalasi Gambia',
+ 'GNF' => 'Franc Guinea',
+ 'GTQ' => 'Quetzal Guatemala',
+ 'GYD' => 'Dolar Guyana',
+ 'HKD' => 'Dolar Hong Kong',
+ 'HNL' => 'Lempira Honduras',
+ 'HRK' => 'Kuna Croatia',
+ 'HTG' => 'Gourde Haiti',
+ 'HUF' => 'Forint Hungary',
+ 'IDR' => 'Rupiah Indonesia',
+ 'ILS' => 'Sheqel Baru Israel',
+ 'INR' => 'Rupee India',
+ 'IQD' => 'Dinar Iraq',
+ 'IRR' => 'Rial Iran',
+ 'ISK' => 'Krona Iceland',
+ 'JMD' => 'Dolar Jamaica',
+ 'JOD' => 'Dinar Jordan',
+ 'JPY' => 'Yen Jepun',
+ 'KES' => 'Syiling Kenya',
+ 'KGS' => 'Som Kyrgystani',
+ 'KHR' => 'Riel Kemboja',
+ 'KMF' => 'Franc Comoria',
+ 'KPW' => 'Won Korea Utara',
+ 'KRW' => 'Won Korea Selatan',
+ 'KWD' => 'Dinar Kuwait',
+ 'KYD' => 'Dolar Kepulauan Cayman',
+ 'KZT' => 'Tenge Kazakhstan',
+ 'LAK' => 'Kip Laos',
+ 'LBP' => 'Paun Lubnan',
+ 'LKR' => 'Rupee Sri Lanka',
+ 'LRD' => 'Dolar Liberia',
+ 'LSL' => 'Loti Lesotho',
+ 'LTL' => 'Litas Lithuania',
+ 'LVL' => 'Lats Latvia',
+ 'LYD' => 'Dinar Libya',
+ 'MAD' => 'Dirham Maghribi',
+ 'MDL' => 'Leu Moldova',
+ 'MGA' => 'Ariary Malagasy',
+ 'MKD' => 'Denar Macedonia',
+ 'MMK' => 'Kyat Myanma',
+ 'MNT' => 'Tugrik Mongolia',
+ 'MOP' => 'Pataca Macau',
+ 'MRO' => 'Ouguiya Mauritania',
+ 'MUR' => 'Rupee Mauritia',
+ 'MVR' => 'Rufiyaa Maldives',
+ 'MWK' => 'Kwacha Malawi',
+ 'MXN' => 'Peso Mexico',
+ 'MYR' => 'Ringgit Malaysia',
+ 'MZN' => 'Metikal Mozambique',
+ 'NAD' => 'Dolar Namibia',
+ 'NGN' => 'Naira Nigeria',
+ 'NIO' => 'Cordoba Nicaragua',
+ 'NOK' => 'Krone Norway',
+ 'NPR' => 'Rupee Nepal',
+ 'NZD' => 'Dolar New Zealand',
+ 'OMR' => 'Rial Oman',
+ 'PAB' => 'Balboa Panama',
+ 'PEN' => 'Nuevo Sol Peru',
+ 'PGK' => 'Kina Papua New Guinea',
+ 'PHP' => 'Peso Filipina',
+ 'PKR' => 'Rupee Pakistan',
+ 'PLN' => 'Zloty Poland',
+ 'PYG' => 'Guarani Paraguay',
+ 'QAR' => 'Rial Qatar',
+ 'RON' => 'Leu Romania',
+ 'RSD' => 'Dinar Serbia',
+ 'RUB' => 'Ruble Rusia',
+ 'RWF' => 'Franc Rwanda',
+ 'SAR' => 'Riyal Saudi',
+ 'SBD' => 'Dolar Kepulauan Solomon',
+ 'SCR' => 'Rupee Seychelles',
+ 'SDG' => 'Paun Sudan',
+ 'SEK' => 'Krona Sweden',
+ 'SGD' => 'Dolar Singapura',
+ 'SHP' => 'Paun Saint Helena',
+ 'SLL' => 'Leone Sierra Leone',
+ 'SOS' => 'Syiling Somali',
+ 'SRD' => 'Dolar Surinam',
+ 'SSP' => 'Paun Sudan selatan',
+ 'STD' => 'Dobra Sao Tome dan Principe',
+ 'SYP' => 'Paun Syria',
+ 'SZL' => 'Lilangeni Swazi',
+ 'THB' => 'Baht Thai',
+ 'TJS' => 'Somoni Tajikistan',
+ 'TMT' => 'Manat Turkmenistan',
+ 'TND' => 'Dinar Tunisia',
+ 'TOP' => 'Tongan Paʻanga',
+ 'TRY' => 'Lira Turki',
+ 'TTD' => 'Dolar Trinidad dan Tobago',
+ 'TWD' => 'Dolar Taiwan Baru',
+ 'TZS' => 'Syiling Tanzania',
+ 'UAH' => 'Hryvnia Ukraine',
+ 'UGX' => 'Syiling Uganda',
+ 'USD' => 'Dolar AS',
+ 'UYU' => 'UYU',
+ 'UZS' => 'Som Uzbekistan',
+ 'VEF' => 'Bolivar Venezuela',
+ 'VND' => 'Dong Vietnam',
+ 'VUV' => 'Vatu Vanuatu',
+ 'WST' => 'Tala Samoa',
+ 'XAF' => 'Franc CFA BEAC',
+ 'XCD' => 'Dolar Caribbean Timur',
+ 'XOF' => 'Franc CFA BCEAO',
+ 'XPF' => 'Franc CFP',
+ 'XXX' => 'Mata Wang Tidak Diketahui',
+ 'YER' => 'Rial Yaman',
+ 'ZAR' => 'Rand Afrika Selatan',
+ 'ZMK' => 'Kwacha Zambia (1968–2012)',
+ 'ZMW' => 'Kwacha Zambia',
+);
+
+$currencySymbols = array(
+ 'AED' => 'AED',
+ 'AFN' => 'AFN',
+ 'ALL' => 'ALL',
+ 'AMD' => 'AMD',
+ 'ANG' => 'ANG',
+ 'AOA' => 'AOA',
+ 'ARS' => 'ARS',
+ 'AUD' => 'A$',
+ 'AWG' => 'AWG',
+ 'AZN' => 'AZN',
+ 'BAM' => 'BAM',
+ 'BBD' => 'BBD',
+ 'BDT' => 'BDT',
+ 'BGN' => 'BGN',
+ 'BHD' => 'BHD',
+ 'BIF' => 'BIF',
+ 'BMD' => 'BMD',
+ 'BND' => 'BND',
+ 'BOB' => 'BOB',
+ 'BRL' => 'R$',
+ 'BSD' => 'BSD',
+ 'BTN' => 'BTN',
+ 'BWP' => 'BWP',
+ 'BYR' => 'BYR',
+ 'BZD' => 'BZD',
+ 'CAD' => 'CAD',
+ 'CDF' => 'CDF',
+ 'CHF' => 'CHF',
+ 'CLP' => 'CLP',
+ 'CNY' => 'CN¥',
+ 'COP' => 'COP',
+ 'CRC' => 'CRC',
+ 'CUC' => 'CUC',
+ 'CUP' => 'CUP',
+ 'CVE' => 'CVE',
+ 'CZK' => 'CZK',
+ 'DJF' => 'DJF',
+ 'DKK' => 'DKK',
+ 'DOP' => 'DOP',
+ 'DZD' => 'DZD',
+ 'EGP' => 'EGP',
+ 'ERN' => 'ERN',
+ 'ETB' => 'ETB',
+ 'EUR' => '€',
+ 'FJD' => 'FJD',
+ 'FKP' => 'FKP',
+ 'GBP' => '£',
+ 'GEL' => 'GEL',
+ 'GHS' => 'GHS',
+ 'GIP' => 'GIP',
+ 'GMD' => 'GMD',
+ 'GNF' => 'GNF',
+ 'GTQ' => 'GTQ',
+ 'GYD' => 'GYD',
+ 'HKD' => 'HK$',
+ 'HNL' => 'HNL',
+ 'HRK' => 'HRK',
+ 'HTG' => 'HTG',
+ 'HUF' => 'HUF',
+ 'IDR' => 'IDR',
+ 'ILS' => '₪',
+ 'INR' => '₹',
+ 'IQD' => 'IQD',
+ 'IRR' => 'IRR',
+ 'ISK' => 'ISK',
+ 'JMD' => 'JMD',
+ 'JOD' => 'JOD',
+ 'JPY' => 'JP¥',
+ 'KES' => 'KES',
+ 'KGS' => 'KGS',
+ 'KHR' => 'KHR',
+ 'KMF' => 'KMF',
+ 'KPW' => 'KPW',
+ 'KRW' => '₩',
+ 'KWD' => 'KWD',
+ 'KYD' => 'KYD',
+ 'KZT' => 'KZT',
+ 'LAK' => 'LAK',
+ 'LBP' => 'LBP',
+ 'LKR' => 'LKR',
+ 'LRD' => 'LRD',
+ 'LTL' => 'LTL',
+ 'LVL' => 'LVL',
+ 'LYD' => 'LYD',
+ 'MAD' => 'MAD',
+ 'MDL' => 'MDL',
+ 'MGA' => 'MGA',
+ 'MKD' => 'MKD',
+ 'MMK' => 'MMK',
+ 'MNT' => 'MNT',
+ 'MOP' => 'MOP',
+ 'MRO' => 'MRO',
+ 'MUR' => 'MUR',
+ 'MVR' => 'MVR',
+ 'MWK' => 'MWK',
+ 'MXN' => 'MXN',
+ 'MYR' => 'RM',
+ 'MZN' => 'MZN',
+ 'NAD' => 'NAD',
+ 'NGN' => 'NGN',
+ 'NIO' => 'NIO',
+ 'NOK' => 'NOK',
+ 'NPR' => 'NPR',
+ 'NZD' => 'NZ$',
+ 'OMR' => 'OMR',
+ 'PAB' => 'PAB',
+ 'PEN' => 'PEN',
+ 'PGK' => 'PGK',
+ 'PHP' => 'PHP',
+ 'PKR' => 'PKR',
+ 'PLN' => 'PLN',
+ 'PYG' => 'PYG',
+ 'QAR' => 'QAR',
+ 'RON' => 'RON',
+ 'RSD' => 'RSD',
+ 'RUB' => 'RUB',
+ 'RWF' => 'RWF',
+ 'SAR' => 'SAR',
+ 'SBD' => 'SBD',
+ 'SCR' => 'SCR',
+ 'SDG' => 'SDG',
+ 'SEK' => 'SEK',
+ 'SGD' => 'SGD',
+ 'SHP' => 'SHP',
+ 'SLL' => 'SLL',
+ 'SOS' => 'SOS',
+ 'SRD' => 'SRD',
+ 'SSP' => 'SSP',
+ 'STD' => 'STD',
+ 'SYP' => 'SYP',
+ 'SZL' => 'SZL',
+ 'THB' => '฿',
+ 'TJS' => 'TJS',
+ 'TMT' => 'TMT',
+ 'TND' => 'TND',
+ 'TOP' => 'TOP',
+ 'TRY' => 'TRY',
+ 'TTD' => 'TTD',
+ 'TWD' => 'NT$',
+ 'TZS' => 'TZS',
+ 'UAH' => 'UAH',
+ 'UGX' => 'UGX',
+ 'USD' => 'USD',
+ 'UYU' => 'UYU',
+ 'UZS' => 'UZS',
+ 'VEF' => 'VEF',
+ 'VND' => '₫',
+ 'VUV' => 'VUV',
+ 'WST' => 'WST',
+ 'XAF' => 'FCFA',
+ 'XCD' => 'EC$',
+ 'XOF' => 'CFA',
+ 'XPF' => 'CFPF',
+ 'YER' => 'YER',
+ 'ZAR' => 'ZAR',
+ 'ZMK' => 'ZMK',
+ 'ZMW' => 'ZMW',
+);
+
+$countryNames = array(
+ 'AC' => 'Pulau Ascension',
+ 'AD' => 'Andorra',
+ 'AE' => 'Emiriah Arab Bersatu',
+ 'AF' => 'Afghanistan',
+ 'AG' => 'Antigua dan Barbuda',
+ 'AI' => 'Anguilla',
+ 'AL' => 'Albania',
+ 'AM' => 'Armenia',
+ 'AN' => 'Netherlands Antilles',
+ 'AO' => 'Angola',
+ 'AQ' => 'Antartika',
+ 'AR' => 'Argentina',
+ 'AS' => 'Samoa Amerika',
+ 'AT' => 'Austria',
+ 'AU' => 'Australia',
+ 'AW' => 'Aruba',
+ 'AX' => 'Kepulauan Aland',
+ 'AZ' => 'Azerbaijan',
+ 'BA' => 'Bosnia dan Herzegovina',
+ 'BB' => 'Barbados',
+ 'BD' => 'Bangladesh',
+ 'BE' => 'Belgium',
+ 'BF' => 'Burkina Faso',
+ 'BG' => 'Bulgaria',
+ 'BH' => 'Bahrain',
+ 'BI' => 'Burundi',
+ 'BJ' => 'Benin',
+ 'BL' => 'Saint Barthélemy',
+ 'BM' => 'Bermuda',
+ 'BN' => 'Brunei',
+ 'BO' => 'Bolivia',
+ 'BQ' => 'Belanda Caribbean',
+ 'BR' => 'Brazil',
+ 'BS' => 'Bahamas',
+ 'BT' => 'Bhutan',
+ 'BV' => 'Pulau Bouvet',
+ 'BW' => 'Botswana',
+ 'BY' => 'Belarus',
+ 'BZ' => 'Belize',
+ 'CA' => 'Kanada',
+ 'CC' => 'Kepulauan Cocos (Keeling)',
+ 'CD' => 'Congo - Kinshasa',
+ 'CF' => 'Republik Afrika Tengah',
+ 'CG' => 'Congo - Brazzaville',
+ 'CH' => 'Switzerland',
+ 'CI' => 'Cote d’Ivoire',
+ 'CK' => 'Kepulauan Cook',
+ 'CL' => 'Chile',
+ 'CM' => 'Cameroon',
+ 'CN' => 'China',
+ 'CO' => 'Colombia',
+ 'CP' => 'Pulau Clipperton',
+ 'CR' => 'Costa Rica',
+ 'CU' => 'Cuba',
+ 'CV' => 'Cape Verde',
+ 'CW' => 'Curacao',
+ 'CX' => 'Pulau Krismas',
+ 'CY' => 'Cyprus',
+ 'CZ' => 'Republik Czech',
+ 'DE' => 'Jerman',
+ 'DG' => 'Diego Garcia',
+ 'DJ' => 'Djibouti',
+ 'DK' => 'Denmark',
+ 'DM' => 'Dominica',
+ 'DO' => 'Republik Dominica',
+ 'DZ' => 'Algeria',
+ 'EA' => 'Ceuta dan Melilla',
+ 'EC' => 'Ecuador',
+ 'EE' => 'Estonia',
+ 'EG' => 'Mesir',
+ 'EH' => 'Sahara Barat',
+ 'ER' => 'Eritrea',
+ 'ES' => 'Sepanyol',
+ 'ET' => 'Ethiopia',
+ 'EU' => 'Kesatuan Eropah',
+ 'FI' => 'Finland',
+ 'FJ' => 'Fiji',
+ 'FK' => 'Kepulauan Falkland',
+ 'FM' => 'Micronesia',
+ 'FO' => 'Kepulauan Faroe',
+ 'FR' => 'Perancis',
+ 'GA' => 'Gabon',
+ 'GB' => 'GB',
+ 'GD' => 'Grenada',
+ 'GE' => 'Georgia',
+ 'GF' => 'Guiana Perancis',
+ 'GG' => 'Guernsey',
+ 'GH' => 'Ghana',
+ 'GI' => 'Gibraltar',
+ 'GL' => 'Greenland',
+ 'GM' => 'Gambia',
+ 'GN' => 'Guinea',
+ 'GP' => 'Guadeloupe',
+ 'GQ' => 'Guinea Khatulistiwa',
+ 'GR' => 'Yunani',
+ 'GS' => 'Kepulauan Georgia Selatan & Sandwich Selatan',
+ 'GT' => 'Guatemala',
+ 'GU' => 'Guam',
+ 'GW' => 'Guinea Bissau',
+ 'GY' => 'Guyana',
+ 'HK' => 'Hong Kong',
+ 'HM' => 'Kepulauan Heard & McDonald',
+ 'HN' => 'Honduras',
+ 'HR' => 'Croatia',
+ 'HT' => 'Haiti',
+ 'HU' => 'Hungary',
+ 'IC' => 'Kepulauan Canary',
+ 'ID' => 'Indonesia',
+ 'IE' => 'Ireland',
+ 'IL' => 'Israel',
+ 'IM' => 'Isle of Man',
+ 'IN' => 'India',
+ 'IO' => 'Wilayah Lautan Hindi British',
+ 'IQ' => 'Iraq',
+ 'IR' => 'Iran',
+ 'IS' => 'Iceland',
+ 'IT' => 'Itali',
+ 'JE' => 'Jersey',
+ 'JM' => 'Jamaica',
+ 'JO' => 'Jordan',
+ 'JP' => 'Jepun',
+ 'KE' => 'Kenya',
+ 'KG' => 'Kyrgyzstan',
+ 'KH' => 'Kemboja',
+ 'KI' => 'Kiribati',
+ 'KM' => 'Comoros',
+ 'KN' => 'Saint Kitts dan Nevis',
+ 'KP' => 'Korea Utara',
+ 'KR' => 'Korea Selatan',
+ 'KW' => 'Kuwait',
+ 'KY' => 'Kepulauan Cayman',
+ 'KZ' => 'Kazakhstan',
+ 'LA' => 'Laos',
+ 'LB' => 'Lubnan',
+ 'LC' => 'Saint Lucia',
+ 'LI' => 'Liechtenstein',
+ 'LK' => 'Sri Lanka',
+ 'LR' => 'Liberia',
+ 'LS' => 'Lesotho',
+ 'LT' => 'Lithuania',
+ 'LU' => 'Luxembourg',
+ 'LV' => 'Latvia',
+ 'LY' => 'Libya',
+ 'MA' => 'Maghribi',
+ 'MC' => 'Monaco',
+ 'MD' => 'Moldova',
+ 'ME' => 'Montenegro',
+ 'MF' => 'Saint Martin',
+ 'MG' => 'Madagaskar',
+ 'MH' => 'Kepulauan Marshall',
+ 'MK' => 'Macedonia',
+ 'ML' => 'Mali',
+ 'MM' => 'Myanmar (Burma)',
+ 'MN' => 'Mongolia',
+ 'MO' => 'Macau',
+ 'MP' => 'Kepulauan Mariana Utara',
+ 'MQ' => 'Martinique',
+ 'MR' => 'Mauritania',
+ 'MS' => 'Montserrat',
+ 'MT' => 'Malta',
+ 'MU' => 'Mauritius',
+ 'MV' => 'Maldives',
+ 'MW' => 'Malawi',
+ 'MX' => 'Mexico',
+ 'MY' => 'Malaysia',
+ 'MZ' => 'Mozambique',
+ 'NA' => 'Namibia',
+ 'NC' => 'New Caledonia',
+ 'NE' => 'Niger',
+ 'NF' => 'Pulau Norfolk',
+ 'NG' => 'Nigeria',
+ 'NI' => 'Nicaragua',
+ 'NL' => 'Belanda',
+ 'NO' => 'Norway',
+ 'NP' => 'Nepal',
+ 'NR' => 'Nauru',
+ 'NU' => 'Niue',
+ 'NZ' => 'New Zealand',
+ 'OM' => 'Oman',
+ 'PA' => 'Panama',
+ 'PE' => 'Peru',
+ 'PF' => 'Polinesia Perancis',
+ 'PG' => 'Papua New Guinea',
+ 'PH' => 'Filipina',
+ 'PK' => 'Pakistan',
+ 'PL' => 'Poland',
+ 'PM' => 'Saint Pierre dan Miquelon',
+ 'PN' => 'Kepulauan Pitcairn',
+ 'PR' => 'Puerto Rico',
+ 'PS' => 'Palestin',
+ 'PT' => 'Portugal',
+ 'PW' => 'Palau',
+ 'PY' => 'Paraguay',
+ 'QA' => 'Qatar',
+ 'QO' => 'Oceania Terpencil',
+ 'RE' => 'Reunion',
+ 'RO' => 'Romania',
+ 'RS' => 'Serbia',
+ 'RU' => 'Rusia',
+ 'RW' => 'Rwanda',
+ 'SA' => 'Arab Saudi',
+ 'SB' => 'Kepulauan Solomon',
+ 'SC' => 'Seychelles',
+ 'SD' => 'Sudan',
+ 'SE' => 'Sweden',
+ 'SG' => 'Singapura',
+ 'SH' => 'Saint Helena',
+ 'SI' => 'Slovenia',
+ 'SJ' => 'Svalbard dan Jan Mayen',
+ 'SK' => 'Slovakia',
+ 'SL' => 'Sierra Leone',
+ 'SM' => 'San Marino',
+ 'SN' => 'Senegal',
+ 'SO' => 'Somalia',
+ 'SR' => 'Surinam',
+ 'SS' => 'Sudan Selatan',
+ 'ST' => 'Sao Tome dan Principe',
+ 'SV' => 'El Salvador',
+ 'SX' => 'Sint Maarten',
+ 'SY' => 'Syria',
+ 'SZ' => 'Swaziland',
+ 'TA' => 'Tristan da Cunha',
+ 'TC' => 'Kepulauan Turks dan Caicos',
+ 'TD' => 'Chad',
+ 'TF' => 'Wilayah Selatan Perancis',
+ 'TG' => 'Togo',
+ 'TH' => 'Thailand',
+ 'TJ' => 'Tajikistan',
+ 'TK' => 'Tokelau',
+ 'TL' => 'Timor-Leste',
+ 'TM' => 'Turkmenistan',
+ 'TN' => 'Tunisia',
+ 'TO' => 'Tonga',
+ 'TR' => 'Turki',
+ 'TT' => 'Trinidad dan Tobago',
+ 'TV' => 'Tuvalu',
+ 'TW' => 'Taiwan',
+ 'TZ' => 'Tanzania',
+ 'UA' => 'Ukraine',
+ 'UG' => 'Uganda',
+ 'UM' => 'Kepulauan Terpencil A.S.',
+ 'US' => 'A.S',
+ 'UY' => 'Uruguay',
+ 'UZ' => 'Uzbekistan',
+ 'VA' => 'Kota Vatican',
+ 'VC' => 'Saint Vincent dan Grenadines',
+ 'VE' => 'Venezuela',
+ 'VG' => 'Kepulauan Virgin British',
+ 'VI' => 'Kepulauan Virgin A.S.',
+ 'VN' => 'Vietnam',
+ 'VU' => 'Vanuatu',
+ 'WF' => 'Wallis dan Futuna',
+ 'WS' => 'Samoa',
+ 'XK' => 'Kosovo',
+ 'YE' => 'Yaman',
+ 'YT' => 'Mayotte',
+ 'ZA' => 'Afrika Selatan',
+ 'ZM' => 'Zambia',
+ 'ZW' => 'Zimbabwe',
+);
+
+$timeUnits = array(
+ 'day-future-other' => 'dalam {0} hari',
+ 'day-narrow-future-other' => 'dlm {0} hari',
+ 'day-narrow-past-other' => '{0} hari yg lalu',
+ 'day-other' => '{0} hari',
+ 'day-past-other' => '{0} hari lalu',
+ 'day-short-future-other' => 'dlm {0} hari',
+ 'day-short-past-other' => '{0} hari yg lalu',
+ 'hour-future-other' => 'dalam {0} jam',
+ 'hour-narrow-future-other' => 'dlm {0} jam',
+ 'hour-narrow-past-other' => '{0} jam yg lalu',
+ 'hour-other' => '{0} jam',
+ 'hour-past-other' => '{0} jam yang lalu',
+ 'hour-short-future-other' => 'dlm {0} jam',
+ 'hour-short-past-other' => '{0} jam yg lalu',
+ 'microsecond-other' => '{0} mikrosaat',
+ 'millisecond-other' => '{0} milisaat',
+ 'minute-future-other' => 'dalam {0} minit',
+ 'minute-narrow-future-other' => 'dlm {0} min',
+ 'minute-narrow-past-other' => '{0} min yg lalu',
+ 'minute-other' => '{0} minit',
+ 'minute-past-other' => '{0} minit yang lalu',
+ 'minute-short-future-other' => 'dlm {0} min',
+ 'minute-short-past-other' => '{0} min yg lalu',
+ 'month-future-other' => 'dalam {0} bulan',
+ 'month-narrow-future-other' => 'dalam {0} bln lalu',
+ 'month-narrow-past-other' => '{0} bulan lalu',
+ 'month-other' => '{0} bulan',
+ 'month-past-other' => '{0} bulan lalu',
+ 'month-short-future-other' => 'dlm {0} bln',
+ 'month-short-past-other' => '{0} bln lalu',
+ 'nanosecond-other' => '{0} nanosaat',
+ 'quarter-future-other' => 'dalam {0} suku',
+ 'quarter-narrow-future-other' => 'dlm {0} suku',
+ 'quarter-narrow-past-other' => '{0} suku lalu',
+ 'quarter-past-other' => '{0} suku lalu',
+ 'quarter-short-future-other' => 'dlm {0} suku',
+ 'quarter-short-past-other' => '{0} suku lalu',
+ 'second-future-other' => 'dalam {0} saat',
+ 'second-narrow-future-other' => 'dlm {0} saat',
+ 'second-narrow-past-other' => '{0} saat yg lalu',
+ 'second-other' => '{0} saat',
+ 'second-past-other' => '{0} saat lalu',
+ 'second-short-future-other' => 'dlm {0} saat',
+ 'second-short-past-other' => '{0} saat yg lalu',
+ 'week-future-other' => 'dalam {0} minggu',
+ 'week-narrow-future-other' => 'dlm {0} mgu',
+ 'week-narrow-past-other' => '{0} mgu lalu',
+ 'week-other' => '{0} minggu',
+ 'week-past-other' => '{0} minggu lalu',
+ 'week-short-future-other' => 'dlm {0} mgu',
+ 'week-short-past-other' => '{0} mng lalu',
+ 'year-future-other' => 'dalam {0} saat',
+ 'year-narrow-future-other' => 'dalam {0} thn',
+ 'year-narrow-past-other' => '{0} thn lalu',
+ 'year-other' => '{0} tahun',
+ 'year-past-other' => '{0} tahun lalu',
+ 'year-short-future-other' => 'dalam {0} thn',
+ 'year-short-past-other' => '{0} thn lalu',
+);
diff --git a/MLEB/cldr/CldrNames/CldrNamesMt.php b/MLEB/cldr/CldrNames/CldrNamesMt.php
new file mode 100644
index 00000000..ee2a4dc7
--- /dev/null
+++ b/MLEB/cldr/CldrNames/CldrNamesMt.php
@@ -0,0 +1,686 @@
+<?php
+
+$languageNames = array(
+ 'aa' => 'Afar',
+ 'ab' => 'Abkażjan',
+ 'ace' => 'Aċiniż',
+ 'ach' => 'Akoli',
+ 'ada' => 'Adangme',
+ 'ady' => 'Adyghe',
+ 'ae' => 'Avestan',
+ 'af' => 'Afrikans',
+ 'afh' => 'Afriħili',
+ 'ain' => 'Ajnu',
+ 'ak' => 'Akan',
+ 'akk' => 'Akkadjen',
+ 'ale' => 'Aleut',
+ 'am' => 'Amħariku',
+ 'an' => 'Aragonese',
+ 'ang' => 'Ingliż, Antik',
+ 'anp' => 'Angika',
+ 'ar' => 'Għarbi',
+ 'ar-001' => 'Għarbi Standard Modern',
+ 'arc' => 'Aramajk',
+ 'arn' => 'Arawkanjan',
+ 'arp' => 'Arapaħo',
+ 'arw' => 'Arawak',
+ 'as' => 'Assamese',
+ 'ast' => 'Asturian',
+ 'av' => 'Avarik',
+ 'awa' => 'Awadħi',
+ 'ay' => 'Ajmara',
+ 'az' => 'Ażerbajġani',
+ 'ba' => 'Baxkir',
+ 'bal' => 'Baluċi',
+ 'ban' => 'Baliniż',
+ 'bas' => 'Basa',
+ 'be' => 'Belarussu',
+ 'bej' => 'Beja',
+ 'bem' => 'Bemba',
+ 'bg' => 'Bulgaru',
+ 'bho' => 'Bojpuri',
+ 'bi' => 'Bislama',
+ 'bik' => 'Bikol',
+ 'bin' => 'Bini',
+ 'bla' => 'Siksika',
+ 'bm' => 'Bambara',
+ 'bn' => 'Bengali',
+ 'bo' => 'Tibetjan',
+ 'br' => 'Brenton',
+ 'bra' => 'Braj',
+ 'bs' => 'Bosnijan',
+ 'bua' => 'Burjat',
+ 'bug' => 'Buginiż',
+ 'byn' => 'Blin',
+ 'ca' => 'Katalan',
+ 'cad' => 'Kaddo',
+ 'car' => 'Karib',
+ 'cch' => 'Atsam',
+ 'ce' => 'Ċeċen',
+ 'ceb' => 'Sibwano',
+ 'ch' => 'Ċamorro',
+ 'chb' => 'Ċibċa',
+ 'chg' => 'Ċagataj',
+ 'chk' => 'Ċukese',
+ 'chm' => 'Mari',
+ 'chn' => 'Ġargon taċ-Ċinuk',
+ 'cho' => 'Ċostaw',
+ 'chp' => 'Ċipewjan',
+ 'chr' => 'Ċerokij',
+ 'chy' => 'Xajenn',
+ 'co' => 'Korsiku',
+ 'cop' => 'Koptiku',
+ 'cr' => 'Krij',
+ 'crh' => 'Crimean Turkish; Crimean Tatar',
+ 'cs' => 'Ċek',
+ 'csb' => 'Kashubian',
+ 'cu' => 'Slaviku tal-Knisja',
+ 'cv' => 'Ċuvax',
+ 'cy' => 'Welx',
+ 'da' => 'Daniż',
+ 'dak' => 'Dakota',
+ 'dar' => 'Dargwa',
+ 'de' => 'Ġermaniż',
+ 'del' => 'Delawerjan',
+ 'den' => 'Slav',
+ 'dgr' => 'Dogrib',
+ 'din' => 'Dinka',
+ 'doi' => 'Dogri',
+ 'dsb' => 'Lower Sorbian',
+ 'dua' => 'Dwala',
+ 'dum' => 'Olandiż, Medjevali',
+ 'dv' => 'Diveħi',
+ 'dyu' => 'Djula',
+ 'dz' => 'Dżongka',
+ 'ee' => 'Ewe',
+ 'efi' => 'Efik',
+ 'egy' => 'Eġizzjan (Antik)',
+ 'eka' => 'Ekajuk',
+ 'el' => 'Grieg',
+ 'elx' => 'Elamit',
+ 'en' => 'Ingliż',
+ 'en-au' => 'Ingliż Awstraljan',
+ 'en-gb' => 'Ingliż Brittaniku',
+ 'en-us' => 'Ingliż Amerikan',
+ 'enm' => 'Ingliż, Medjevali',
+ 'eo' => 'Esperanto',
+ 'es' => 'Spanjol',
+ 'et' => 'Estonjan',
+ 'eu' => 'Bask',
+ 'ewo' => 'Ewondo',
+ 'fa' => 'Persjan',
+ 'fan' => 'Fang',
+ 'fat' => 'Fanti',
+ 'ff' => 'Fulaħ',
+ 'fi' => 'Finlandiż',
+ 'fil' => 'Filippino',
+ 'fj' => 'Fiġi',
+ 'fo' => 'Fawriż',
+ 'fon' => 'Fon',
+ 'fr' => 'Franċiż',
+ 'fr-ca' => 'Franċiż Kanadiż',
+ 'fr-ch' => 'Franċiż Żvizzeru',
+ 'frm' => 'Franċiż, Medjevali',
+ 'fro' => 'Franċiż, Antik',
+ 'fur' => 'Frijuljan',
+ 'fy' => 'Friżjan',
+ 'ga' => 'Irlandiż',
+ 'gaa' => 'Ga',
+ 'gay' => 'Gajo',
+ 'gba' => 'Gbaja',
+ 'gd' => 'Galliku Skoċċiż',
+ 'gez' => 'Geez',
+ 'gil' => 'Gilbertjan',
+ 'gl' => 'Gallegjan',
+ 'gmh' => 'Ġermaniku, Medjevali Pulit',
+ 'gn' => 'Gwarani',
+ 'goh' => 'Ġermaniku, Antik Pulit',
+ 'gon' => 'Gondi',
+ 'gor' => 'Gorontalo',
+ 'got' => 'Gotiku',
+ 'grb' => 'Ġerbo',
+ 'grc' => 'Grieg, Antik',
+ 'gu' => 'Guġarati',
+ 'gv' => 'Manks',
+ 'gwi' => 'Gwiċin',
+ 'ha' => 'Ħawsa',
+ 'hai' => 'Ħajda',
+ 'haw' => 'Ħawajjan',
+ 'he' => 'Ebrajk',
+ 'hi' => 'Ħindi',
+ 'hil' => 'Hiligaynon',
+ 'hit' => 'Ħittit',
+ 'hmn' => 'Ħmong',
+ 'ho' => 'Ħiri Motu',
+ 'hr' => 'Kroat',
+ 'hsb' => 'Upper Sorbian',
+ 'ht' => 'Haitian',
+ 'hu' => 'Ungeriż',
+ 'hup' => 'Ħupa',
+ 'hy' => 'Armenjan',
+ 'hz' => 'Ħerero',
+ 'ia' => 'Interlingua',
+ 'iba' => 'Iban',
+ 'id' => 'Indoneżjan',
+ 'ie' => 'Interlingue',
+ 'ig' => 'Igbo',
+ 'ii' => 'Sichuan Yi',
+ 'ik' => 'Inupjak',
+ 'ilo' => 'Iloko',
+ 'inh' => 'Ingush',
+ 'io' => 'Ido',
+ 'is' => 'Iżlandiż',
+ 'it' => 'Taljan',
+ 'iu' => 'Inukitut',
+ 'ja' => 'Ġappuniż',
+ 'jbo' => 'Lojban',
+ 'jpr' => 'Lhudi-Persjan',
+ 'jrb' => 'Lhudi-Għarbi',
+ 'jv' => 'Ġavaniż',
+ 'ka' => 'Ġorġjan',
+ 'kaa' => 'Kara-Kalpak',
+ 'kab' => 'Kabuljan',
+ 'kac' => 'Kaċin',
+ 'kam' => 'Kamba',
+ 'kaw' => 'Kawi',
+ 'kbd' => 'Kabardian',
+ 'kg' => 'Kongo',
+ 'kha' => 'Kasi',
+ 'kho' => 'Kotaniż',
+ 'ki' => 'Kikuju',
+ 'kj' => 'Kuanyama',
+ 'kk' => 'Każak',
+ 'kl' => 'Kalallisut',
+ 'km' => 'Kmer',
+ 'kmb' => 'Kimbundu',
+ 'kn' => 'Kannada',
+ 'ko' => 'Korejan',
+ 'kok' => 'Konkani',
+ 'kos' => 'Kosrejan',
+ 'kpe' => 'Kpelle',
+ 'kr' => 'Kanuri',
+ 'krc' => 'Karachay-Balkar',
+ 'kru' => 'Kurusk',
+ 'ks' => 'Kaxmiri',
+ 'ku' => 'Kurdiż',
+ 'kum' => 'Kumiku',
+ 'kut' => 'Kutenaj',
+ 'kv' => 'Komi',
+ 'kw' => 'Korniku',
+ 'ky' => 'Kirgiż',
+ 'la' => 'Latin',
+ 'lad' => 'Ladino',
+ 'lah' => 'Landa',
+ 'lam' => 'Lamba',
+ 'lb' => 'Letżburgiż',
+ 'lez' => 'Leżgjan',
+ 'lg' => 'Ganda',
+ 'li' => 'Limburgish',
+ 'ln' => 'Lingaljan',
+ 'lo' => 'Lao',
+ 'lol' => 'Mongo',
+ 'loz' => 'Lożi',
+ 'lt' => 'Litwanjan',
+ 'lu' => 'Luba-Katanga',
+ 'lua' => 'Luba-Luluwa',
+ 'lui' => 'Luwisinuż',
+ 'lun' => 'Lunda',
+ 'luo' => 'Luwa',
+ 'lus' => 'Luxaj',
+ 'lv' => 'Latvjan',
+ 'mad' => 'Maduriż',
+ 'mag' => 'Magaħi',
+ 'mai' => 'Majtili',
+ 'mak' => 'Makasar',
+ 'man' => 'Mandingwan',
+ 'mas' => 'Masaj',
+ 'mdf' => 'Moksha',
+ 'mdr' => 'Mandar',
+ 'men' => 'Mende',
+ 'mg' => 'Malagażi',
+ 'mga' => 'Irlandiż, Medjevali',
+ 'mh' => 'Marxall',
+ 'mi' => 'Maori',
+ 'mic' => 'Mikmek',
+ 'min' => 'Minangkabaw',
+ 'mk' => 'Maċedonjan',
+ 'ml' => 'Malajalam',
+ 'mn' => 'Mongoljan',
+ 'mnc' => 'Manċurjan',
+ 'mni' => 'Manipuri',
+ 'moh' => 'Moħak',
+ 'mos' => 'Mossi',
+ 'mr' => 'Marati',
+ 'ms' => 'Malajan',
+ 'mt' => 'Malti',
+ 'mul' => 'Lingwi Diversi',
+ 'mus' => 'Kriek',
+ 'mwl' => 'Mirandiż',
+ 'mwr' => 'Marwari',
+ 'my' => 'Burmiż',
+ 'myv' => 'Erzya',
+ 'na' => 'Nawuru',
+ 'nap' => 'Neapolitan',
+ 'nb' => 'Bokmahal Norveġiż',
+ 'nd' => 'Ndebele, ta’ Fuq',
+ 'nds' => 'Ġermaniż Komuni; Sassonu Komuni',
+ 'ne' => 'Nepaliż',
+ 'new' => 'Newari',
+ 'ng' => 'Ndonga',
+ 'nia' => 'Nijas',
+ 'niu' => 'Nijuwejan',
+ 'nl' => 'Olandiż',
+ 'nn' => 'Ninorsk Norveġiż',
+ 'no' => 'Norveġiż',
+ 'nog' => 'Nogai',
+ 'non' => 'Skandinav, Antik',
+ 'nr' => 'Ndebele, t’Isfel',
+ 'nso' => 'Soto, ta’ Fuq',
+ 'nv' => 'Navaħo',
+ 'nwc' => 'Classical Newari',
+ 'ny' => 'Ċiċewa; Njanġa',
+ 'nym' => 'Njamweżi',
+ 'nyn' => 'Nyankole',
+ 'nyo' => 'Njoro',
+ 'nzi' => 'Nżima',
+ 'oc' => 'Oċċitan',
+ 'oj' => 'Oġibwa',
+ 'om' => 'Oromo (Afan)',
+ 'or' => 'Orija',
+ 'os' => 'Ossettiku',
+ 'osa' => 'Osaġjan',
+ 'ota' => 'Tork (Imperu Ottoman)',
+ 'pa' => 'Punġabi',
+ 'pag' => 'Pangasinjan',
+ 'pal' => 'Paħlavi',
+ 'pam' => 'Pampamga',
+ 'pap' => 'Papjamento',
+ 'pau' => 'Palawjan',
+ 'peo' => 'Persjan Antik',
+ 'phn' => 'Feniċju',
+ 'pi' => 'Pali',
+ 'pl' => 'Pollakk',
+ 'pon' => 'Ponpejan',
+ 'pro' => 'Provenzal, Antik',
+ 'ps' => 'Paxtun',
+ 'pt' => 'Portugiż',
+ 'qu' => 'Keċwa',
+ 'raj' => 'Raġastani',
+ 'rap' => 'Rapanwi',
+ 'rar' => 'Rarotongani',
+ 'rm' => 'Reto-Romanz',
+ 'rn' => 'Rundi',
+ 'ro' => 'Rumen',
+ 'ro-md' => 'Moldavjan',
+ 'rom' => 'Żingaru',
+ 'ru' => 'Russu',
+ 'rup' => 'Aromanijan',
+ 'rw' => 'Kinjarwanda',
+ 'sa' => 'Sanskrit',
+ 'sad' => 'Sandawe',
+ 'sah' => 'Jakut',
+ 'sam' => 'Samritan',
+ 'sas' => 'Saska',
+ 'sat' => 'Santali',
+ 'sc' => 'Sardinjan',
+ 'sco' => 'Skoċċiż',
+ 'sd' => 'Sindi',
+ 'se' => 'Sami ta’ Fuq',
+ 'sel' => 'Selkup',
+ 'sg' => 'Sango',
+ 'sga' => 'Irlandiż, Antik',
+ 'sh' => 'Serbo-Kroat',
+ 'shn' => 'Xan',
+ 'si' => 'Sinħaliż',
+ 'sid' => 'Sidamo',
+ 'sk' => 'Slovakk',
+ 'sl' => 'Sloven',
+ 'sm' => 'Samojan',
+ 'sma' => 'Southern Sami',
+ 'smj' => 'Lule Sami',
+ 'smn' => 'Inari Sami',
+ 'sms' => 'Skolt Sami',
+ 'sn' => 'Xona',
+ 'snk' => 'Soninke',
+ 'so' => 'Somali',
+ 'sog' => 'Sogdien',
+ 'sq' => 'Albaniż',
+ 'sr' => 'Serb',
+ 'srr' => 'Serer',
+ 'ss' => 'Swati',
+ 'st' => 'Soto, t’Isfel',
+ 'su' => 'Sundaniż',
+ 'suk' => 'Sukuma',
+ 'sus' => 'Susu',
+ 'sux' => 'Sumerjan',
+ 'sv' => 'Svediż',
+ 'sw' => 'Swaħili',
+ 'syr' => 'Sirjan',
+ 'ta' => 'Tamil',
+ 'te' => 'Telugu',
+ 'tem' => 'Timne',
+ 'ter' => 'Tereno',
+ 'tet' => 'Tetum',
+ 'tg' => 'Taġik',
+ 'th' => 'Tajlandiż',
+ 'ti' => 'Tigrinja',
+ 'tig' => 'Tigre',
+ 'tiv' => 'Tiv',
+ 'tk' => 'Turkmeni',
+ 'tkl' => 'Tokelau',
+ 'tl' => 'Tagalog',
+ 'tlh' => 'Klingon',
+ 'tli' => 'Tlingit',
+ 'tmh' => 'Tamaxek',
+ 'tn' => 'Zwana',
+ 'to' => 'Tongan',
+ 'tog' => 'Tonga (Njasa)',
+ 'tpi' => 'Tok Pisin',
+ 'tr' => 'Tork',
+ 'ts' => 'Tsonga',
+ 'tsi' => 'Zimxjan',
+ 'tt' => 'Tatar',
+ 'tum' => 'Tumbuka',
+ 'tvl' => 'Tuvalu',
+ 'tw' => 'Twi',
+ 'ty' => 'Taħitjan',
+ 'tyv' => 'Tuvinjan',
+ 'udm' => 'Udmurt',
+ 'ug' => 'Wigur',
+ 'uga' => 'Ugaritiku',
+ 'uk' => 'Ukranjan',
+ 'umb' => 'Umbundu',
+ 'und' => 'Lingwa Mhux Magħrufa',
+ 'ur' => 'Urdu',
+ 'uz' => 'Użbek',
+ 'vai' => 'Vai',
+ 've' => 'Venda',
+ 'vi' => 'Vjetnamiż',
+ 'vo' => 'Volapuk',
+ 'vot' => 'Votik',
+ 'wa' => 'Walloon',
+ 'wal' => 'Walamo',
+ 'war' => 'Waraj',
+ 'was' => 'Waxo',
+ 'wo' => 'Wolof',
+ 'xal' => 'Kalmyk',
+ 'xh' => 'Ħoża',
+ 'yao' => 'Jao',
+ 'yap' => 'Japese',
+ 'yi' => 'Jiddix',
+ 'yo' => 'Joruba',
+ 'za' => 'Żwang',
+ 'zap' => 'Żapotek',
+ 'zen' => 'Żenaga',
+ 'zh' => 'Ċiniż',
+ 'zh-hans' => 'Ċiniż Simplifikat',
+ 'zu' => 'Żulu',
+ 'zun' => 'Żuni',
+ 'zxx' => 'Bla kontent lingwistiku',
+);
+
+$currencyNames = array(
+ 'EUR' => 'ewro',
+ 'MTL' => 'Lira Maltija',
+ 'XXX' => 'Munita Mhux Magħrufa jew Mhux Valida',
+);
+
+$currencySymbols = array(
+ 'EUR' => '€',
+);
+
+$countryNames = array(
+ 'AD' => 'Andorra',
+ 'AE' => 'Emirati Għarab Maqgħuda',
+ 'AF' => 'Afganistan',
+ 'AG' => 'Antigua and Barbuda',
+ 'AI' => 'Angwilla',
+ 'AL' => 'Albanija',
+ 'AM' => 'Armenja',
+ 'AN' => 'Antilles Olandiżi',
+ 'AO' => 'Angola',
+ 'AQ' => 'Antartika',
+ 'AR' => 'Arġentina',
+ 'AS' => 'Samoa Amerikana',
+ 'AT' => 'Awstrija',
+ 'AU' => 'Awstralja',
+ 'AW' => 'Aruba',
+ 'AX' => 'Gżejjer Aland',
+ 'AZ' => 'Ażerbajġan',
+ 'BA' => 'Bożnija Ħerżegovina',
+ 'BB' => 'Barbados',
+ 'BD' => 'Bangladexx',
+ 'BE' => 'Belġju',
+ 'BF' => 'Burkina Faso',
+ 'BG' => 'Bulgarija',
+ 'BH' => 'Baħrajn',
+ 'BI' => 'Burundi',
+ 'BJ' => 'Benin',
+ 'BM' => 'Bermuda',
+ 'BN' => 'Brunej',
+ 'BO' => 'Bolivja',
+ 'BR' => 'Il-Brażil',
+ 'BS' => 'Baħamas',
+ 'BT' => 'Butan',
+ 'BV' => 'Bouvet Island',
+ 'BW' => 'Botswana',
+ 'BY' => 'Bjelorussja',
+ 'BZ' => 'Beliże',
+ 'CA' => 'Kanada',
+ 'CC' => 'Cocos (Keeling) Islands',
+ 'CD' => 'Democratic Republic of the Congo',
+ 'CF' => 'Repubblika Afrikana Ċentrali',
+ 'CG' => 'Kongo',
+ 'CH' => 'Svizzera',
+ 'CI' => 'Kosta ta’ l-Avorju',
+ 'CK' => 'Cook Islands',
+ 'CL' => 'Ċili',
+ 'CM' => 'Kamerun',
+ 'CN' => 'Iċ-Ċina',
+ 'CO' => 'Kolumbja',
+ 'CR' => 'Kosta Rika',
+ 'CU' => 'Kuba',
+ 'CV' => 'Kape Verde',
+ 'CX' => 'Christmas Island',
+ 'CY' => 'Ċipru',
+ 'CZ' => 'Repubblika Ċeka',
+ 'DE' => 'Il-Ġermanja',
+ 'DJ' => 'Ġibuti',
+ 'DK' => 'Danimarka',
+ 'DM' => 'Dominika',
+ 'DO' => 'Republikka Domenikana',
+ 'DZ' => 'Alġerija',
+ 'EC' => 'Ekwador',
+ 'EE' => 'Estonja',
+ 'EG' => 'Eġittu',
+ 'EH' => 'Sahara tal-Punent',
+ 'ER' => 'Eritreja',
+ 'ES' => 'Spanja',
+ 'ET' => 'Etijopja',
+ 'EU' => 'Unjoni Ewropea',
+ 'FI' => 'Finlandja',
+ 'FJ' => 'Fiġi',
+ 'FK' => 'Falkland Islands',
+ 'FM' => 'Mikronesja',
+ 'FO' => 'Gżejjer Faroe',
+ 'FR' => 'Franza',
+ 'GA' => 'Gabon',
+ 'GB' => 'L-Ingilterra',
+ 'GD' => 'Grenada',
+ 'GE' => 'Ġorġja',
+ 'GF' => 'Gujana Franċiża',
+ 'GH' => 'Gana',
+ 'GI' => 'Gibraltar',
+ 'GL' => 'Grinlandja',
+ 'GM' => 'Gambja',
+ 'GN' => 'Gineja',
+ 'GP' => 'Gwadelupe',
+ 'GQ' => 'Ginea Ekwatorjali',
+ 'GR' => 'Greċja',
+ 'GS' => 'South Georgia and the South Sandwich Islands',
+ 'GT' => 'Gwatemala',
+ 'GU' => 'Gwam',
+ 'GW' => 'Ginea-Bissaw',
+ 'GY' => 'Gujana',
+ 'HK' => 'Ħong Kong',
+ 'HM' => 'Heard Island and McDonald Islands',
+ 'HN' => 'Ħonduras',
+ 'HR' => 'Kroazja',
+ 'HT' => 'Ħaiti',
+ 'HU' => 'Ungerija',
+ 'ID' => 'Indoneżja',
+ 'IE' => 'Irlanda',
+ 'IL' => 'Iżrael',
+ 'IM' => 'Isle of Man',
+ 'IN' => 'L-Indja',
+ 'IO' => 'British Indian Ocean Territory',
+ 'IQ' => 'Iraq',
+ 'IR' => 'Iran',
+ 'IS' => 'Islanda',
+ 'IT' => 'L-Italja',
+ 'JM' => 'Ġamajka',
+ 'JO' => 'Ġordan',
+ 'JP' => 'Il-Ġappun',
+ 'KE' => 'Kenja',
+ 'KG' => 'Kirgistan',
+ 'KH' => 'Kambodja',
+ 'KI' => 'Kiribati',
+ 'KM' => 'Komoros',
+ 'KN' => 'Saint Kitts and Nevis',
+ 'KP' => 'Koreja ta’ Fuq',
+ 'KR' => 'Koreja t’Isfel',
+ 'KW' => 'Kuwajt',
+ 'KY' => 'Gżejjer Kajmani',
+ 'KZ' => 'Każakstan',
+ 'LA' => 'Laos',
+ 'LB' => 'Libanu',
+ 'LC' => 'Santa Luċija',
+ 'LI' => 'Liechtenstein',
+ 'LK' => 'Sri Lanka',
+ 'LR' => 'Liberja',
+ 'LS' => 'Lesoto',
+ 'LT' => 'Litwanja',
+ 'LU' => 'Lussemburgu',
+ 'LV' => 'Latvja',
+ 'LY' => 'Libja',
+ 'MA' => 'Marokk',
+ 'MC' => 'Monako',
+ 'MD' => 'Maldova',
+ 'MG' => 'Madagaskar',
+ 'MH' => 'Gżejjer ta’ Marshall',
+ 'MK' => 'Maċedonja',
+ 'ML' => 'Mali',
+ 'MM' => 'Mjanmar',
+ 'MN' => 'Mongolja',
+ 'MO' => 'Macao',
+ 'MP' => 'Gżejjer Marjana ta’ Fuq',
+ 'MQ' => 'Martinik',
+ 'MR' => 'Mawritanja',
+ 'MS' => 'Montserrat',
+ 'MT' => 'Malta',
+ 'MU' => 'Mawrizju',
+ 'MV' => 'Maldives',
+ 'MW' => 'Malawi',
+ 'MX' => 'Messiku',
+ 'MY' => 'Malasja',
+ 'MZ' => 'Możambik',
+ 'NA' => 'Namibja',
+ 'NC' => 'New Caledonia',
+ 'NE' => 'Niġer',
+ 'NF' => 'Norfolk Island',
+ 'NG' => 'Niġerja',
+ 'NI' => 'Nikaragwa',
+ 'NL' => 'Olanda',
+ 'NO' => 'Norveġja',
+ 'NP' => 'Nepal',
+ 'NR' => 'Nauru',
+ 'NU' => 'Niue',
+ 'NZ' => 'New Zealand',
+ 'OM' => 'Oman',
+ 'PA' => 'Panama',
+ 'PE' => 'Peru',
+ 'PF' => 'Polinesja Franċiża',
+ 'PG' => 'Papwa-Ginea Ġdida',
+ 'PH' => 'Filippini',
+ 'PK' => 'Pakistan',
+ 'PL' => 'Polonja',
+ 'PM' => 'Saint Pierre and Miquelon',
+ 'PN' => 'Pitcairn',
+ 'PR' => 'Puerto Rico',
+ 'PS' => 'Territorju Palestinjan',
+ 'PT' => 'Portugall',
+ 'PW' => 'Palau',
+ 'PY' => 'Paragwaj',
+ 'QA' => 'Qatar',
+ 'RE' => 'Réunion',
+ 'RO' => 'Rumanija',
+ 'RU' => 'Ir-Russja',
+ 'RW' => 'Rwanda',
+ 'SA' => 'Għarabja Sawdita',
+ 'SB' => 'Solomon Islands',
+ 'SC' => 'Seychelles',
+ 'SD' => 'Sudan',
+ 'SE' => 'Żvezja',
+ 'SG' => 'Singapor',
+ 'SH' => 'Saint Helena',
+ 'SI' => 'Slovenja',
+ 'SJ' => 'Svalbard and Jan Mayen',
+ 'SK' => 'Slovakkja',
+ 'SL' => 'Sierra Leone',
+ 'SM' => 'San Marino',
+ 'SN' => 'Senegal',
+ 'SO' => 'Somalja',
+ 'SR' => 'Surinam',
+ 'ST' => 'Sao Tome and Principe',
+ 'SV' => 'El Salvador',
+ 'SY' => 'Sirja',
+ 'SZ' => 'Sważiland',
+ 'TC' => 'Turks and Caicos Islands',
+ 'TD' => 'Ċad',
+ 'TF' => 'Territorji Franċiżi ta’ Nofsinhar',
+ 'TG' => 'Togo',
+ 'TH' => 'Tajlandja',
+ 'TJ' => 'Taġikistan',
+ 'TK' => 'Tokelaw',
+ 'TL' => 'Timor tal-Lvant',
+ 'TM' => 'Turkmenistan',
+ 'TN' => 'Tuneż',
+ 'TO' => 'Tonga',
+ 'TR' => 'Turkija',
+ 'TT' => 'Trinidad u Tobago',
+ 'TV' => 'Tuvalu',
+ 'TW' => 'Tajwan',
+ 'TZ' => 'Tanżanija',
+ 'UA' => 'Ukraina',
+ 'UG' => 'Uganda',
+ 'UM' => 'United States Minor Outlying Islands',
+ 'US' => 'L-Istati Uniti',
+ 'UY' => 'Urugwaj',
+ 'UZ' => 'Użbekistan',
+ 'VA' => 'Vatikan',
+ 'VC' => 'Saint Vincent and the Grenadines',
+ 'VE' => 'Venezwela',
+ 'VG' => 'British Virgin Islands',
+ 'VI' => 'U.S. Virgin Islands',
+ 'VN' => 'Vjetnam',
+ 'VU' => 'Vanwatu',
+ 'WF' => 'Wallis and Futuna',
+ 'WS' => 'Samoa',
+ 'XK' => 'Kosovo',
+ 'YE' => 'Jemen',
+ 'YT' => 'Majotte',
+ 'ZA' => 'Afrika t’Isfel',
+ 'ZM' => 'Żambja',
+ 'ZW' => 'Żimbabwe',
+);
+
+$timeUnits = array(
+ 'millisecond-few' => '{0} millisekondi',
+ 'millisecond-many' => '{0} millisekondi',
+ 'millisecond-one' => '{0} millisekonda',
+ 'millisecond-other' => '{0} millisekondi',
+ 'year-past-few' => '{0} snin ilu',
+ 'year-past-many' => '{0} snin ilu',
+ 'year-past-one' => '{0} sena ilu',
+ 'year-past-other' => '{0} snin ilu',
+);
diff --git a/MLEB/cldr/CldrNames/CldrNamesMy.php b/MLEB/cldr/CldrNames/CldrNamesMy.php
new file mode 100644
index 00000000..8df84b92
--- /dev/null
+++ b/MLEB/cldr/CldrNames/CldrNamesMy.php
@@ -0,0 +1,758 @@
+<?php
+
+$languageNames = array(
+ 'ab' => 'အက်ခါဇူအနျ',
+ 'af' => 'အာဖရိကန်းစ်',
+ 'agq' => 'အာဂ်ဟိန်း',
+ 'ak' => 'အာကိန်',
+ 'am' => 'အန်ဟာရစျချ',
+ 'ang' => 'အင်္ဂလိပ်စာဟောင်း',
+ 'ar' => 'အာရေဗီ',
+ 'ar-001' => 'အရေဗီ(ပုံမှန်)',
+ 'arn' => 'မာပုချီ',
+ 'as' => 'အက္စမီစ်',
+ 'asa' => 'အာစု',
+ 'az' => 'အော်ဇောဘိုင်ဂျောနီ',
+ 'ba' => 'ဘက်ရှ်ကီအာ',
+ 'ban' => 'ဘာလီ',
+ 'bas' => 'ဘာဆာ',
+ 'be' => 'ဘီလာရု',
+ 'bem' => 'ဘိန်ဘာ',
+ 'bez' => 'ဘီနာ',
+ 'bg' => 'ဘူဂေးရီးယား',
+ 'bm' => 'ဘန်ဘာရာ',
+ 'bn' => 'ဘင်္ဂါလီ',
+ 'bo' => 'တိဘက်',
+ 'br' => 'ဘရီတွန်',
+ 'brx' => 'ဗိုဒို',
+ 'bs' => 'ဘော့စ်နီးယား',
+ 'ca' => 'ကာတာလန်',
+ 'ce' => 'ချေချင်း',
+ 'cgg' => 'ချီဂါ',
+ 'chr' => 'ချာရိုကီ',
+ 'ckb' => 'ဆိုရာနီ ကူဒစ်ရှ်',
+ 'co' => 'ခိုစီကန်',
+ 'cr' => 'ခရီး',
+ 'cs' => 'ချက်',
+ 'cy' => 'ဝေလ',
+ 'da' => 'ဒိန်းမတ်',
+ 'dak' => 'ဒါကိုတာ',
+ 'dav' => 'တိုင်တာ',
+ 'de' => 'ဂျာမန်',
+ 'de-at' => 'ဩစတြီးယ ဂျာမန်',
+ 'de-ch' => 'ဆွစ် အမြင့် ဂျာမန်',
+ 'del' => 'ဒီလာဝဲ',
+ 'dje' => 'ဇာမာ',
+ 'dsb' => 'အောက်ဆိုဘီအမ်',
+ 'dua' => 'ဒူအလာ',
+ 'dum' => 'အလယ်ပိုင်း ဒတ်ချ်',
+ 'dyo' => 'ဂျိုလာ-ဖွန်ရီ',
+ 'dz' => 'ဒွန်ကာ',
+ 'ebu' => 'အမ်ဘူ',
+ 'ee' => 'ဝီ',
+ 'egy' => 'ရှေးဟောင်း အီဂျစ်',
+ 'el' => 'ဂရိ',
+ 'en' => 'အင်္ဂလိပ်',
+ 'en-au' => 'ဩစတြေးလျှ အင်္ဂလိပ်',
+ 'en-ca' => 'ကနေဒါ အင်္ဂလိပ်',
+ 'en-gb' => 'ဗြိတိသျှ အင်္ဂလိပ်',
+ 'en-us' => 'အမေရိကန် အင်္ဂလိပ်',
+ 'enm' => 'အလယ်ပိုင်း အင်္ဂလိပ်',
+ 'eo' => 'အက္စပရန္တို',
+ 'es' => 'စပိန်',
+ 'es-419' => 'လက်တင်အမေရိက စပိန်',
+ 'es-es' => 'စပိန်(ဥရောပ)',
+ 'et' => 'အက်စ်တိုးနီးရန်း',
+ 'eu' => 'ဘစ်က္ကီ',
+ 'fa' => 'ပါရှန်',
+ 'fi' => 'ဖင်နစ်ရှ်',
+ 'fil' => 'ဖိလစ်ပီနို',
+ 'fj' => 'ဖီဂျီ',
+ 'fo' => 'ဖာရိုအိစ်',
+ 'fr' => 'ပြင်သစ်',
+ 'fr-ca' => 'ကနေဒါ ပြင်သစ်',
+ 'fr-ch' => 'ဆွစ် ပြင်သစ်',
+ 'frm' => 'အလယ်ပိုင်းပြင်သစ်',
+ 'fro' => 'ပြင်သစ်ဟောင်း',
+ 'frr' => 'မြောက်ပိုင်း ဖရီစီရန်',
+ 'frs' => 'အရှေ့ပိုင်း ဖရီစီရန်',
+ 'fy' => 'အနောက်ပိုင်း ဖရီစီရန်',
+ 'ga' => 'အိုင်းရစ်',
+ 'gag' => 'ဂါဂါဇ်',
+ 'gl' => 'ဂါလာစီယံ',
+ 'gmh' => 'အလယ်ပိုင်းအမြင့်ဂျာမန်',
+ 'gn' => 'ဂူအာရာနီ',
+ 'grc' => 'ရှေးဟောင်း ဂရိ',
+ 'gsw' => 'ဆွစ် ဂျာမန်',
+ 'gu' => 'ဂူဂျာရသီ',
+ 'guz' => 'ဂူစီး',
+ 'gv' => 'မန်းဇ်',
+ 'ha' => 'ဟာဥစာ',
+ 'haw' => 'ဟာဝေယံ',
+ 'he' => 'ဟီးဘရူး',
+ 'hi' => 'ဟိန္ဒီ',
+ 'hr' => 'ခရိုအေရှန်',
+ 'hsb' => 'အပေါ်ဆိုဘီအမ်',
+ 'ht' => 'ဟာအီတီအန်',
+ 'hu' => 'ဟန်ဂေရီ',
+ 'hy' => 'အာမေနီအန်',
+ 'id' => 'အင်ဒိုနီးရှား',
+ 'ig' => 'အစ္ဂဘို',
+ 'ii' => 'စီချွမ် ရီ',
+ 'is' => 'အိုင်စ်လန္ဒီ',
+ 'it' => 'အီတလီ',
+ 'iu' => 'အီနုခ်တီတု',
+ 'ja' => 'ဂျပန်',
+ 'jgo' => 'ဂွမ်ဘာ',
+ 'jmc' => 'မချာမီ',
+ 'jpr' => 'ဂျူဒီယို-ပါရှန်',
+ 'jrb' => 'ဂျူဒီယို-အာရေဗျ',
+ 'jv' => 'ဂျာဗားနီးစ်',
+ 'ka' => 'ဂျော်ဂျီယန်',
+ 'kab' => 'ခဘိုင်လ်',
+ 'kac' => 'ကချင်',
+ 'kam' => 'ခမ်ဘာ',
+ 'kde' => 'မာခွန်ဒီ',
+ 'kea' => 'ခဘူဗာဒီအာနူ',
+ 'kg' => 'ကွန်ဂို',
+ 'kha' => 'ခါစီ',
+ 'khq' => 'ခိုရာ ချီအီနီ',
+ 'ki' => 'ခီခူယူ',
+ 'kk' => 'ခါဇါခ်',
+ 'kl' => 'ခလာအ်လီဆပ်',
+ 'kln' => 'ခါလိမ်ဂျင်',
+ 'km' => 'ခမာ',
+ 'kn' => 'ကန္နာဒါ',
+ 'ko' => 'ကိုးရီးယား',
+ 'koi' => 'ကိုမီ-ပါမြက်',
+ 'kok' => 'ကွန်ကနီ',
+ 'ks' => 'ကက်ရှ်မီရီ',
+ 'ksb' => 'ရှန်ဘာလာ',
+ 'ksf' => 'ဘာဖီအာ',
+ 'ku' => 'ကဒ်',
+ 'kw' => 'ခိုနီရှ်',
+ 'ky' => 'ခရူဂစ်',
+ 'la' => 'လက်တင်',
+ 'lag' => 'လန်ဂီ',
+ 'lb' => 'လူဇင်ဘတ်က်',
+ 'lg' => 'ဂန်ဒီ',
+ 'lkt' => 'လာကိုတာ',
+ 'ln' => 'လင်ဂါလာ',
+ 'lo' => 'လာအို',
+ 'lt' => 'လစ္သူအာနီယံ',
+ 'lu' => 'လူဘာ-ခါတန်ဂါ',
+ 'luo' => 'လူအို',
+ 'luy' => 'လူရီအာ',
+ 'lv' => 'လက္ဘီအံ',
+ 'mas' => 'မာဆိုင်',
+ 'mer' => 'မီရု',
+ 'mfe' => 'မိုရှီစ်ယန်း',
+ 'mg' => 'အာလာဂါစီ',
+ 'mga' => 'အလယ်ပိုင်း အိုင်းရစ်',
+ 'mgh' => 'မာခူဝါ-မီအီတို',
+ 'mgo' => 'မီတာ',
+ 'mi' => 'မောင်းရီ (နယူးဇီလန်ကျွန်းရှိ ပင်ရင်းတိုင်းရင်းသားလူမျိုး)',
+ 'mk' => 'မာစီဒိုနီယံ',
+ 'ml' => 'မလေးရာလမ်',
+ 'mn' => 'မွန်ဂိုလီးယန်း',
+ 'mnc' => 'မန်ချူး',
+ 'mni' => 'မနိပူရီ',
+ 'moh' => 'မိုဟော့ခ်',
+ 'mr' => 'မာရသီ',
+ 'ms' => 'မလေး',
+ 'mt' => 'မောလ္တီစ်',
+ 'mua' => 'မန်ဒန်း',
+ 'mul' => 'အကြိမ်များစွာ ဘာသာစကားများ',
+ 'my' => 'ဗမာ',
+ 'naq' => 'နာမာ',
+ 'nb' => 'ဘွတ်မော်လ်',
+ 'nd' => 'တောင်ဒီဘီလီ',
+ 'nds' => 'အနိမ့် ဂျာမန်',
+ 'ne' => 'နီပါလီ',
+ 'nl' => 'ဒတ်ချ်',
+ 'nl-be' => 'ဖလီမစ်ရှ်',
+ 'nmg' => 'ဝါဆီအို',
+ 'nn' => 'နော်ဝေး နီးနော်စ်ခ်',
+ 'no' => 'နော်ဝေး',
+ 'nqo' => 'နကို',
+ 'nus' => 'နူအာ',
+ 'nyn' => 'ယန်ကိုလီ',
+ 'om' => 'အိုရိုမို',
+ 'or' => 'အိုရီရာ',
+ 'pa' => 'ပန်ချာပီ',
+ 'peo' => 'ပါရှန် အဟောင်း',
+ 'pi' => 'ပါဠိ',
+ 'pl' => 'ပိုလန်',
+ 'ps' => 'ပါရှ်တို',
+ 'pt' => 'ပေါ်တူဂီ',
+ 'pt-br' => 'ဘရာဇီး ပေါ်တူဂီ',
+ 'pt-pt' => 'ဥရောပ ပေါ်တူဂီ',
+ 'qu' => 'ခက်ချ်ဝါ',
+ 'quc' => 'ခီခ်အီချီ',
+ 'rm' => 'ရောမ',
+ 'rn' => 'ရွန်ဒီ',
+ 'ro' => 'ရိုမေနီယား',
+ 'rof' => 'ရွမ်ဘို',
+ 'ru' => 'ရုရှ',
+ 'rw' => 'ကင်ရာဝန်ဒါ',
+ 'rwk' => 'ဝါ',
+ 'sa' => 'သင်္သကရိုက်',
+ 'saq' => 'ဆန်ဘူရု',
+ 'sbp' => 'ဆန်ဂု',
+ 'sco' => 'စကော့',
+ 'sd' => 'စင်ဒီ',
+ 'se' => 'တောင်ဆာမိ',
+ 'seh' => 'စီနာ',
+ 'ses' => 'ခိုရာဘိုရို ဆမ်နီ',
+ 'sg' => 'ဆမ်ဂို',
+ 'sga' => 'အိုင်းရစ် ဟောင်း',
+ 'shi' => 'တာချယ်လ်ဟစ်',
+ 'shn' => 'ရှမ်း',
+ 'si' => 'ဆင်ဟာလ',
+ 'sk' => 'စလိုဗက်',
+ 'sl' => 'စလိုဗေးနီးယမ်း',
+ 'sma' => 'တောင်ပိုင်း ဆာမိ',
+ 'smj' => 'လူလီ ဆာမိ',
+ 'smn' => 'အီနာရီ ဆာမိ',
+ 'sms' => 'ခိုလ် ဆာမိ',
+ 'sn' => 'ရှိနာ',
+ 'so' => 'ဆိုမာလီ',
+ 'sq' => 'အယ်လ်ဘေးနီးယန်း',
+ 'sr' => 'ဆားဗီးယန်း',
+ 'su' => 'ဆူဒန်',
+ 'sv' => 'ဆွီဒင်',
+ 'sw' => 'ဆြာဟီလီ',
+ 'swc' => 'ခွန်ဂို စွာဟီလီ',
+ 'ta' => 'တမီးလ်',
+ 'te' => 'တီလီဂု',
+ 'teo' => 'တီဆို',
+ 'tg' => 'တာဂွီခ်',
+ 'th' => 'ထိုင်း',
+ 'ti' => 'တီဂ်ရင်ရာ',
+ 'tk' => 'တခ္မင်',
+ 'to' => 'တွန်ဂါ',
+ 'tr' => 'တာကစ်',
+ 'tt' => 'တတာ',
+ 'twq' => 'တာဆာဝါခ်',
+ 'tzm' => 'အလယ်အက်တ်လက်စ် တာမာဇိုက်',
+ 'ug' => 'ဝီဂါ',
+ 'uk' => 'ယူကရိန်း',
+ 'und' => 'မသိ သို့မဟုတ် မရှိ သော ဘာသာစကား',
+ 'ur' => 'အော်ဒူ',
+ 'uz' => 'ဦးဇ်ဘက်',
+ 'vai' => 'ဗိုင်',
+ 'vi' => 'ဗီယက်နမ်',
+ 'vun' => 'ဗန်ဂျို',
+ 'wo' => 'ဝူလိုဖ်',
+ 'xh' => 'ဇိုစာ',
+ 'xog' => 'ဆိုဂါ',
+ 'yo' => 'ရိုရုဘာ',
+ 'zgh' => 'မိုရိုကန် တွမ်မဇိုတ် စံ',
+ 'zh' => 'တရုတ်',
+ 'zh-hans' => 'ရိုးရှင်းသော တရုတ်',
+ 'zh-hant' => 'ရှေးရိုးစဉ်လာ တရုတ်',
+ 'zu' => 'ဇူလူ',
+ 'zxx' => 'ဘာသာစကား နှင့် ပတ်သက် သောအရာမရှိ',
+);
+
+$currencyNames = array(
+ 'AED' => 'အာရပ်ဒူဟမ်း',
+ 'AFN' => 'အာဖဂန်အာဖဂါနီ',
+ 'ALL' => 'အယ်လ်ဘီးနီးယားလီခ်',
+ 'AMD' => 'အာမေးနီးယားဒရမ်း',
+ 'ANG' => 'နယ်သာလန် အန်တီလန် ဂင်းဒါး',
+ 'AOA' => 'အင်ဂိုလာ ကန်ဇာ',
+ 'ARP' => 'အာဂျင်တီးနား ပီဆို (၁၉၈၃–၁၉၈၅)',
+ 'ARS' => 'အာဂျင်တီးနား ပီဆို',
+ 'AUD' => 'ဩစတြေးလျ ဒေါ်လာ',
+ 'AWG' => 'အရူဘန် ဂင်းဒါး',
+ 'AZN' => 'အဇာဘိုင်ဂျန်မာနတ်',
+ 'BAM' => 'ဘော့စနီးယား နှင့် ဟာဇီဂိုဘီးနားမတ်က်',
+ 'BBD' => 'ဘာဘဒီယံဒေါ်လာ',
+ 'BDT' => 'ဘင်္ဂလားဒေ့ရှ် တာကာ',
+ 'BEF' => 'ဘယ်လ်ဂျီယမ် ဖရန့်',
+ 'BGN' => 'ဘူဂေးရီးယားလက်ဖ်',
+ 'BHD' => 'ဘာရိန်းဒီနား',
+ 'BIF' => 'ဘူရွန်ဒီ ဖရန့်',
+ 'BMD' => 'ဘာမူဒါ ဒေါ်လာ',
+ 'BND' => 'ဘရူနိုင်း ဒေါ်လာ',
+ 'BOB' => 'ဘိုလီဘီယံ ဘိုလီဘီအားနို',
+ 'BOP' => 'ဘိုလီးဘီးယား ပီဆို',
+ 'BRL' => 'ဘရာဇီး ရီးယဲ',
+ 'BSD' => 'ဘဟားမား ဒေါ်လာ',
+ 'BTN' => 'ဘူတန်အံဂါလ်ထရန်',
+ 'BUK' => 'ဗမာ ကျပ်',
+ 'BWP' => 'ဘော့စ်ဝါနာ ပုလ',
+ 'BYB' => 'ဘီလာရုစ် ရူဘယ်အသစ် (၁၉၉၄–၁၉၉၉)',
+ 'BYR' => 'ဘီလာရုစ် ရူဘယ်',
+ 'BZD' => 'ဘေလီဇ် ဒေါ်လာ',
+ 'CAD' => 'ကနေဒါ ဒေါ်လာ',
+ 'CDF' => 'ကွန်ဂို ဖရန့်',
+ 'CHF' => 'ဆွစ် ဖရန့်',
+ 'CLP' => 'ချီလီ ပီဆို',
+ 'CNY' => 'တရုတ် ယွမ်',
+ 'COP' => 'ကိုလံဘီယာ ပီဆို',
+ 'CRC' => 'ကော့စ်တာရီကာ ခိုလုံး',
+ 'CUC' => 'နိုင်ငံခြားငွေလဲလှယ်နိုင်သော ကျူးဘားပီဆိုငွေ',
+ 'CUP' => 'ကျူးဘား ပီဆို',
+ 'CVE' => 'ခေ့ပ်ဗာဒူ အက်စ်ခူဒို',
+ 'CYP' => 'ဆိုက်ပရက်စ် ပေါင်',
+ 'CZK' => 'ချက်ခိုရိုနာ',
+ 'DEM' => 'ဂျာမဏီ မတ်',
+ 'DJF' => 'ဂျီဘူတီ ဖရန့်',
+ 'DKK' => 'ဒိန်းမတ်ခရိုဏာ',
+ 'DOP' => 'ဒိုမီနီကန် ပီဆို',
+ 'DZD' => 'အဲလ်ဂျီရီယန် ဒီနာ',
+ 'EGP' => 'အီဂျစ် ပေါင်',
+ 'ERN' => 'အီရီတရီအာနာ့ခ်ဖာ',
+ 'ESP' => 'စပိန် ပယ်စေးတာ',
+ 'ETB' => 'အီသီယိုးပီးယားဘီးယာ',
+ 'EUR' => 'ယူရို',
+ 'FJD' => 'ဖီဂျီ ဒေါ်လာ',
+ 'FKP' => 'ဖောက်ကလန် ကျွန်းစု ပေါင်',
+ 'FRF' => 'ပြင်သစ် ဖရန့်',
+ 'GBP' => 'ဗြိတိသျှ ပေါင်',
+ 'GEL' => 'ဂျော်ဂျီယာလားရီ',
+ 'GHS' => 'ဂါနာ ဆဲဒီ',
+ 'GIP' => 'ဂျီဘရော်လ်တာ ပေါင်',
+ 'GMD' => 'ဂန်ဘီယာ ဒါလာစီ',
+ 'GNF' => 'ဂီးနီ ဖရန့်',
+ 'GTQ' => 'ဂွာတီမာလာ ခက်ဇော်လ်',
+ 'GYD' => 'ဂူရာနာ ဒေါ်လာ',
+ 'HKD' => 'ဟောင်ကောင် ဒေါ်လာ',
+ 'HNL' => 'ဟွန်ဒူးရပ်စ် လန်းပီးရာ',
+ 'HRK' => 'ခရိုအေးရှားခူးနာ',
+ 'HTG' => 'ဟေတီဂူးအော်ဒ်',
+ 'HUF' => 'ဟန်ဂေရီယံဖော်ရင့်တ်',
+ 'IDR' => 'အင်ဒိုနီးရှား ရူပီးယား',
+ 'ILP' => 'အစ္စရေး ပေါင်',
+ 'ILS' => 'အစ္စရေးရှဲကလ်အသစ်',
+ 'INR' => 'အိန္ဒိယ ရူပီး',
+ 'IQD' => 'အီရပ်ဒီနား',
+ 'IRR' => 'အီရန်ရီအော်လ်',
+ 'ISK' => 'အိုက်စလန် ခရိုဏာ',
+ 'JMD' => 'ဂျမေကာ ဒေါ်လာ',
+ 'JOD' => 'ဂျော်ဒန်ဒီနား',
+ 'JPY' => 'ဂျပန်ယန်း',
+ 'KES' => 'ကင်ညာသျှီလင်',
+ 'KGS' => 'ခရူဂစ်စတန်ဆော်မ်',
+ 'KHR' => 'ကမ္ဘောဒီးယား ရီးယဲ',
+ 'KMF' => 'ကိုမိုရိုစ် ဖရန့်',
+ 'KPW' => 'မြောက်ကိုးရီးယား ဝမ်',
+ 'KRW' => 'တောင်ကိုးရီးယား ဝမ်',
+ 'KWD' => 'ကူဝိတ်ဒီနာ',
+ 'KYD' => 'ကေမန် ကျွန်းစု ဒေါ်လာ',
+ 'KZT' => 'ခရူဂစ်စတန်ထိန်ဂျီ',
+ 'LAK' => 'လာအိုခိပ်',
+ 'LBP' => 'လက်ဘနွန် ပေါင်',
+ 'LKR' => 'သီရိလင်္ကာ ရူပီး',
+ 'LRD' => 'လိုင်ဘေးရီးယား ဒေါ်လာ',
+ 'LTL' => 'လစ်သူယေးနီးယားလီတားစ်',
+ 'LVL' => 'လတ်ဗီးယားလတ်',
+ 'LYD' => 'လီဗျာ ဒီနာ',
+ 'MAD' => 'မိုရိုကို ဒရမ်',
+ 'MDL' => 'မောလ်ဒိုဗာလယ်အို',
+ 'MGA' => 'မလာဂစ်စီ အရီရရီ ငွေကြေး',
+ 'MKD' => 'မာစီဒိုးနီးယားဒီနာ',
+ 'MMK' => 'မြန်မာကျပ်',
+ 'MNT' => 'မွန်ဂိုးလီးယားထူးဂရခ်',
+ 'MOP' => 'မကာအိုပါတားကား',
+ 'MRO' => 'မောရီတာနီအာအူဂီးယာ',
+ 'MUR' => 'မော်ရေရှားစ် ရူပီ',
+ 'MVR' => 'မော်လ်ဒိုက်ရူးဖီရာ',
+ 'MWK' => 'မာလာဝီခွါးချာ',
+ 'MXN' => 'မက္ကဆီကို ပီဆို',
+ 'MYR' => 'မလေးရှား ရင်းဂစ်',
+ 'MZN' => 'မိုဇန်ဘစ်မက်တီခယ်လ်',
+ 'NAD' => 'နမ်မီးဘီးယား ဒေါ်လာ',
+ 'NGN' => 'နိုင်ဂျီးရီးယားနိုင်းရာ',
+ 'NIO' => 'နီကာရာဂွာ ခိုးဒိုဘာ',
+ 'NOK' => 'နော်ဝေ ခရိုဏာ',
+ 'NPR' => 'နီပေါ ရူပီး',
+ 'NZD' => 'နယူးဇီလန် ဒေါ်လာ',
+ 'OMR' => 'အိုမန်ရီအော်လ်',
+ 'PAB' => 'ပနားမား ဘလ်ဘိုးအာ',
+ 'PEN' => 'ပီရူး နူအီဗိုဆိုးလ်',
+ 'PGK' => 'ပါပူရာနယူးဂီနီခီးနာ',
+ 'PHP' => 'ဖိလစ်ပိုင် ပီဆို',
+ 'PKR' => 'ပါကစ္စတန် ရူပီး',
+ 'PLN' => 'ပိုလန် ဇ‌လော့တီ',
+ 'PYG' => 'ပါရာဂွေးဂွါးအ်နီး',
+ 'QAR' => 'ကာတာရီအော်လ်',
+ 'RON' => 'ရိုမေးနီယားလယ်အို',
+ 'RSD' => 'ဆားဘီးယားဒယ်နား',
+ 'RUB' => 'ရုရှ ရူဘယ်',
+ 'RUR' => 'ရုရှ ရူဘယ် (၁၉၉၁–၁၉၉၈)',
+ 'RWF' => 'ရဝန်ဒါ ဖရန့်',
+ 'SAR' => 'ဆော်ဒီအာရေးဗီးယားရီယော်လ်',
+ 'SBD' => 'ဆော်လမွန်ကျွန်းစု ဒေါ်လာ',
+ 'SCR' => 'ဆေးရှလ်ရူးပီး',
+ 'SDG' => 'ဆူဒန် ပေါင်',
+ 'SDP' => 'ဆူဒန် ပေါင်အဟောင်း',
+ 'SEK' => 'ဆွီဒင် ခရိုဏာ',
+ 'SGD' => 'စင်္ကာပူ ဒေါ်လာ',
+ 'SHP' => 'စိန့်ဟဲလီနာ ပေါင်',
+ 'SLL' => 'ဆီအဲရာ လီအိုနီယန် လီအိုနီ',
+ 'SOS' => 'ဆိုမာလီသျှီလင်',
+ 'SRD' => 'ဆူရီနိမ်း ဒေါ်လာ',
+ 'SSP' => 'တောင်ဆူဒန်ပေါင်',
+ 'STD' => 'စိန့်တိုမီနှင့်ပရင်စီပ့် ဒိုဘရာ',
+ 'SUR' => 'ဆိုဗီယက် ရူဗယ်',
+ 'SYP' => 'ဆီးရီးယား ပေါင်',
+ 'SZL' => 'စွာဇီလန်လီလန်းဂီနီ',
+ 'THB' => 'ထိုင်းဘတ်',
+ 'TJS' => 'တာဂျီကစ္စတန်ဆိုမိုနီ',
+ 'TMT' => 'တာခ်မီန့စ်တန်မာနတ်',
+ 'TND' => 'တူနီရှားဒီနာ',
+ 'TOP' => 'တွန်ဂါဗန်ဂါ',
+ 'TRL' => 'ရှေးဟောင်းတူရကီ လိုင်ရာ',
+ 'TRY' => 'တူရကီ လိုင်ရာ',
+ 'TTD' => 'ထရိုင်နီဒတ်နှင့်တိုဘာဂိုဒေါ်လာ',
+ 'TWD' => 'ထိုင်ဝမ် ဒေါ်လာအသစ်',
+ 'TZS' => 'တန်ဇန်းနီးယားသျှီလင်',
+ 'UAH' => 'ယူကရိန်း',
+ 'UGX' => 'ယူဂန္ဓာသျှီလင်',
+ 'USD' => 'အမေရိကန် ဒေါ်လာ',
+ 'USN' => 'အမေရိကန် ဒေါ်လာ (နောက်နေ့)',
+ 'USS' => 'အမေရိကန် ဒေါ်လာ (တနေ့တည်း)',
+ 'UYU' => 'ဥရုဂွေးပီဆို',
+ 'UZS' => 'ဥဘက်ကစ္စတန်ဆော်မ်',
+ 'VEF' => 'ဗင်နီဇွဲလား ဘိုလီဗာ',
+ 'VND' => 'ဗီယက်နမ် ဒေါင်',
+ 'VUV' => 'ဗာနုအာတူဗားထူ',
+ 'WST' => 'စမိုအထားလာ',
+ 'XAF' => 'ကင်မရွန်းဖရန့်',
+ 'XAG' => 'ငွေ',
+ 'XAU' => 'ရွှေ',
+ 'XBB' => 'ဥရောပငွေကြေးစံနစ်',
+ 'XCD' => 'အရှေ့ကာရီဘီယံဒေါ်လာ',
+ 'XDR' => 'အထူးထုတ်ယူခွင့်',
+ 'XOF' => 'အိုင်ဗရီးကိုးစ်ဖရန့်',
+ 'XPF' => 'XPFဖရန့်',
+ 'XPT' => 'ပလက်တီနမ်',
+ 'XTS' => 'စမ်းသပ် ငွေကြေး ကုဒ်',
+ 'XXX' => 'မသိသို့မဟုတ်မရှိသောငွေကြေး',
+ 'YER' => 'ယီမင်ရီအော်လ်',
+ 'ZAR' => 'တောင်အဖရိက ရန်း',
+ 'ZMW' => 'ဇင်ဘာဘွေခွါးချာ',
+ 'ZWD' => 'ဇင်ဘာဘွေ ဒေါ်လာ',
+);
+
+$currencySymbols = array(
+ 'AUD' => 'A$',
+ 'BRL' => 'R$',
+ 'CAD' => 'CA$',
+ 'CNY' => 'CN¥',
+ 'EUR' => '€',
+ 'GBP' => '£',
+ 'HKD' => 'HK$',
+ 'ILS' => '₪',
+ 'INR' => '₹',
+ 'JPY' => 'JP¥',
+ 'KRW' => '₩',
+ 'MMK' => 'K',
+ 'MXN' => 'MX$',
+ 'NZD' => 'NZ$',
+ 'THB' => '฿',
+ 'TWD' => 'NT$',
+ 'USD' => 'US$',
+ 'VND' => '₫',
+ 'XAF' => 'FCFA',
+ 'XCD' => 'EC$',
+ 'XOF' => 'CFA',
+ 'XPF' => 'CFPF',
+);
+
+$countryNames = array(
+ 'AC' => 'အက်စ်စင်ရှီအွန်ကျွန်း',
+ 'AD' => 'အန်ဒိုရာ',
+ 'AE' => 'ယူအေအီး',
+ 'AF' => 'အာဖဂန်နစ္စတန်',
+ 'AG' => 'အန်တီဂုအာနှင့်ဘာဘုဒါ',
+ 'AI' => 'အန်ဂွီလာ',
+ 'AL' => 'အဲလ်ဘာနီအာ',
+ 'AM' => 'အာမေနီးယား',
+ 'AO' => 'အင်ဂိုလာ',
+ 'AQ' => 'အန္တာတိက',
+ 'AR' => 'အာဂျင်တီးနား',
+ 'AS' => 'အမေရိကန် စမိုအ',
+ 'AT' => 'ဩစတြီးယား',
+ 'AU' => 'ဩစတြေးလျ',
+ 'AW' => 'အာရုဘာ',
+ 'AX' => 'အာလန်ကျွန်း',
+ 'AZ' => 'အဇာဘိုင်ဂျန်',
+ 'BA' => 'ဘော့စနီးယား နှင့် ဟာဇီဂိုဘီးနား',
+ 'BB' => 'ဘာဘဒိုးစ်',
+ 'BD' => 'ဘင်္ဂလားဒေ့ရှ်',
+ 'BE' => 'ဘယ်လ်ဂျီယမ်',
+ 'BF' => 'ဘာကီနာ ဖာဆို',
+ 'BG' => 'ဘူဂေးရီးယား',
+ 'BH' => 'ဘာရိန်း',
+ 'BI' => 'ဘူရွန်ဒီ',
+ 'BJ' => 'ဘီနင်',
+ 'BL' => 'စိန့်ဘာသီလီမိုင်',
+ 'BM' => 'ဘာမူဒါ',
+ 'BN' => 'ဘရူနိုင်း',
+ 'BO' => 'ဘိုလီးဘီးယား',
+ 'BQ' => 'ကာရီဘီယံနယ်သာလန်',
+ 'BR' => 'ဘရာဇီး',
+ 'BS' => 'ဘဟားမား',
+ 'BT' => 'ဘူတန်',
+ 'BV' => 'ဘူဗက်ကျွန်း',
+ 'BW' => 'ဘော့စ်ဝါနာ',
+ 'BY' => 'ဘီလာရုစ်',
+ 'BZ' => 'ဘေလီဇ်',
+ 'CA' => 'ကနေဒါ',
+ 'CC' => 'ကိုကိုး ကျွန်းစု',
+ 'CD' => 'ကွန်ဂို-ကင်ရှာစ',
+ 'CF' => 'အလယ်ပိုင်း အာဖရိက ပြည်ထောင်စု',
+ 'CG' => 'ကွန်ဂို-ဘရာဇာဗီလ်',
+ 'CH' => 'ဆွစ်ဇလန်',
+ 'CI' => 'အိုင်ဗရီကိုစ့်',
+ 'CK' => 'ကွတ် ကျွန်းစု',
+ 'CL' => 'ချီလီ',
+ 'CM' => 'ကင်မရွန်း',
+ 'CN' => 'တရုတ်',
+ 'CO' => 'ကိုလံဘီယာ',
+ 'CP' => 'ကလစ်ပါတန်ကျွန်း',
+ 'CR' => 'ကော့စ်တာရီကာ',
+ 'CU' => 'ကျူးဘား',
+ 'CV' => 'ခေ့ပ်ဗာဒူ',
+ 'CW' => 'ခူရာကာအို',
+ 'CX' => 'ခရစ်စမတ် ကျွန်း',
+ 'CY' => 'ဆိုက်ပရက်စ်',
+ 'CZ' => 'ချက် ပြည်ထောင်စု',
+ 'DE' => 'ဂျာမဏီ',
+ 'DG' => 'ဒီအေဂိုဂရာစီအာ',
+ 'DJ' => 'ဂျီဘူတီ',
+ 'DK' => 'ဒိန်းမတ်',
+ 'DM' => 'ဒိုမီနီကာ',
+ 'DO' => 'ဒိုမီနီကန်',
+ 'DZ' => 'အယ်လ်ဂျီးရီးယား',
+ 'EA' => 'ဆယ်ဥတာနှင့်မယ်လီလ်လာ',
+ 'EC' => 'အီကွေဒေါ',
+ 'EE' => 'အက်စတိုးနီးယား',
+ 'EG' => 'အီဂျစ်',
+ 'EH' => 'အနောက်ပိုင်း ဆာဟာရ',
+ 'ER' => 'အီရီတရီအာ',
+ 'ES' => 'စပိန်',
+ 'ET' => 'အီသီယိုးပီးယား',
+ 'EU' => 'ဥရောပသမဂ္ဂ',
+ 'FI' => 'ဖင်လန်',
+ 'FJ' => 'ဖီဂျီ',
+ 'FK' => 'ဖောက်ကလန် ကျွန်းစု',
+ 'FM' => 'မိုင်ခရိုနီရှား',
+ 'FO' => 'ဖာရိုး ကျွန်းစုများ',
+ 'FR' => 'ပြင်သစ်',
+ 'GA' => 'ဂါဘွန်',
+ 'GB' => 'ယူကေ',
+ 'GD' => 'ဂရီနာဒါ',
+ 'GE' => 'ဂျော်ဂျီယာ',
+ 'GF' => 'ပြင်သစ် ဂီယာနာ',
+ 'GG' => 'ဂွန်းဇီ',
+ 'GH' => 'ဂါနာ',
+ 'GI' => 'ဂျီဘရော်လ်တာ',
+ 'GL' => 'ဂရင်းလန်း',
+ 'GM' => 'ဂန်ဘီရာ',
+ 'GN' => 'ဂီးနီ',
+ 'GP' => 'ဂူအာဒီလုပ်',
+ 'GQ' => 'အီကွေတာ ဂီရာနာ',
+ 'GR' => 'ဂရိ',
+ 'GS' => 'တောင် ဂျော်ဂျီယာ နှင့် တောင် ဆင်းဒဝစ်ဂျ် ကျွန်းစုများ',
+ 'GT' => 'ဂွာတီမာလာ',
+ 'GU' => 'ဂူအမ်',
+ 'GW' => 'ဂီရာနာ-ဘီစ်စာဥ',
+ 'GY' => 'ဂူရာနာ',
+ 'HK' => 'ဟောင်ကောင်',
+ 'HM' => 'ဟတ်ကျွန်းနှင့်မက်ဒေါနယ်ကျွန်းစု',
+ 'HN' => 'ဟွန်ဒူးရပ်စ်',
+ 'HR' => 'ခရိုအေးရှား',
+ 'HT' => 'ဟေတီ',
+ 'HU' => 'ဟန်ဂေရီ',
+ 'IC' => 'ကာနာရီကျွန်းစု',
+ 'ID' => 'အင်ဒိုနီးရှား',
+ 'IE' => 'အိုင်ယာလန်',
+ 'IL' => 'အစ္စရေး',
+ 'IM' => 'မန်ကျွန်း',
+ 'IN' => 'အိန္ဒိယ',
+ 'IO' => 'ဗြိတိသျှ အိန္ဒြိယ သမုဒ္ဒရာ ပိုင်နက်',
+ 'IQ' => 'အီရတ်',
+ 'IR' => 'အီရန်',
+ 'IS' => 'အိုက်စလန်',
+ 'IT' => 'အီတလီ',
+ 'JE' => 'ဂျာစီ',
+ 'JM' => 'ဂျမေကာ',
+ 'JO' => 'ဂျော်ဒန်',
+ 'JP' => 'ဂျပန်',
+ 'KE' => 'ကင်ညာ',
+ 'KG' => 'ခရူဂစ်စတန်',
+ 'KH' => 'ကမ္ဘောဒီးယား',
+ 'KI' => 'ခီရီဘာတီ',
+ 'KM' => 'ကိုမိုရိုစ်',
+ 'KN' => 'စိန့်ကစ်နှင့်နီဗီစ်',
+ 'KP' => 'မြောက်ကိုရီးယား',
+ 'KR' => 'တောင်ကိုရီးယား',
+ 'KW' => 'ကူဝိတ်',
+ 'KY' => 'ကေမန် ကျွန်းစု',
+ 'KZ' => 'ကာဇက်စတန်',
+ 'LA' => 'လာအို',
+ 'LB' => 'လက်ဘနွန်',
+ 'LC' => 'စိန့်လူစီအာ',
+ 'LI' => 'လစ်ခ်ထင်စတိုင်',
+ 'LK' => 'သီရိလင်္ကာ',
+ 'LR' => 'လိုင်ဘေးရီးယား',
+ 'LS' => 'လီဆိုသို',
+ 'LT' => 'လစ်သူယေးနီးယား',
+ 'LU' => 'လူဇင်ဘတ်',
+ 'LV' => 'လတ်ဗီးယား',
+ 'LY' => 'လီဗရာ',
+ 'MA' => 'မော်ရိုကို',
+ 'MC' => 'မိုနာကို',
+ 'MD' => 'မောလ်ဒိုဗာ',
+ 'ME' => 'မွန်တီနိဂရိုး',
+ 'MF' => 'စိန့်မာတင်',
+ 'MG' => 'မာဒါဂတ်စကာ',
+ 'MH' => 'မာရှယ် ကျွန်းစု',
+ 'MK' => 'မာစီဒိုးနီးယား',
+ 'ML' => 'မာလီ',
+ 'MM' => 'မြန်မာ',
+ 'MN' => 'မွန်ဂိုးလီးယား',
+ 'MO' => 'မကာအို',
+ 'MP' => 'တောင်ပိုင်းမာရီအာနာကျွန်းစု',
+ 'MQ' => 'မာတီနီကီ',
+ 'MR' => 'မောရီတာနီအာ',
+ 'MS' => 'မောင့်စဲရက်',
+ 'MT' => 'မောလ်တာ',
+ 'MU' => 'မော်ရေရှားစ်',
+ 'MV' => 'မော်လ်ဒိုက်',
+ 'MW' => 'မာလာဝီ',
+ 'MX' => 'မက္ကဆီကို',
+ 'MY' => 'မလေးရှား',
+ 'MZ' => 'မိုဇန်ဘစ်',
+ 'NA' => 'နမ်မီးဘီးယား',
+ 'NC' => 'နယူး ကယ်လီဒိုနီးယား',
+ 'NE' => 'နိုင်ဂျာ',
+ 'NF' => 'နောဖော့ခ်ကျွန်း',
+ 'NG' => 'နိုင်ဂျီးရီးယား',
+ 'NI' => 'နီကာရာဂွာ',
+ 'NL' => 'နယ်သာလန်',
+ 'NO' => 'နော်ဝေ',
+ 'NP' => 'နီပေါ',
+ 'NR' => 'နာဥူရူ',
+ 'NU' => 'နီဥူအေ',
+ 'NZ' => 'နယူးဇီလန်',
+ 'OM' => 'အိုမန်',
+ 'PA' => 'ပနားမား',
+ 'PE' => 'ပီရူး',
+ 'PF' => 'ပြင်သစ် ပေါ်လီနေးရှား',
+ 'PG' => 'ပါပူရာနယူးဂီနီ',
+ 'PH' => 'ဖိလစ်ပိုင်',
+ 'PK' => 'ပါကစ္စတန်',
+ 'PL' => 'ပိုလန်',
+ 'PM' => 'စိန့်ပီအဲရီနှင့်မီကွီလွန်',
+ 'PN' => 'ပစ်တ်ကိန်းကျွန်းစု',
+ 'PR' => 'ပေါ်တူရီကို',
+ 'PS' => 'ပါလက်စတိုင်း',
+ 'PT' => 'ပေါ်တူဂီ',
+ 'PW' => 'ပလောင်',
+ 'PY' => 'ပါရာဂွေး',
+ 'QA' => 'ကာတာ',
+ 'QO' => 'သမုဒ္ဒရာဒေသအပြင်ထွက်နေသောဒေသများ',
+ 'RE' => 'ရဲအူနီရွန်',
+ 'RO' => 'ရိုမေးနီးယား',
+ 'RS' => 'ဆားဘီးယား',
+ 'RU' => 'ရုရှ',
+ 'RW' => 'ရဝန်ဒါ',
+ 'SA' => 'ဆော်ဒီအာရေးဗီးယား',
+ 'SB' => 'ဆော်လမွန်ကျွန်းစု',
+ 'SC' => 'ဆေးရှလ်',
+ 'SD' => 'ဆူဒန်',
+ 'SE' => 'ဆွီဒင်',
+ 'SG' => 'စင်္ကာပူ',
+ 'SH' => 'စိန့်ဟဲလီနာ',
+ 'SI' => 'စလိုဗေးနီးယား',
+ 'SJ' => 'စဗိုလ်ဘတ်နှင့်ဂျန်မေရန်',
+ 'SK' => 'စလိုဗေးကီးယား',
+ 'SL' => 'ဆီအဲရာ လီအိုနီ',
+ 'SM' => 'ဆော့န်မာရီနို',
+ 'SN' => 'ဆီနီဂေါ',
+ 'SO' => 'ဆိုမာလီယာ',
+ 'SR' => 'ဆူရီနိမ်း',
+ 'SS' => 'မြောက်ဆူဒန်',
+ 'ST' => 'စိန့်တိုမီနှင့်ပရင်စီပ့်',
+ 'SV' => 'အယ်လ်ဆာဗေးဒိုး',
+ 'SX' => 'ဆင့်မာအာတင်',
+ 'SY' => 'ဆီးရီးယား',
+ 'SZ' => 'စွာဇီလန်',
+ 'TA' => 'ထရစ်တန်ဒါကွန်ဟာ',
+ 'TC' => 'တခ်စ်နှင့်ကာအီကိုစ်ကျွန်းစု',
+ 'TD' => 'ချဒ်',
+ 'TF' => 'ပြင်သစ် တောင်ပိုင်း ပိုင်နက်များ',
+ 'TG' => 'တိုဂို',
+ 'TH' => 'ထိုင်း',
+ 'TJ' => 'တာဂျီကစ္စတန်',
+ 'TK' => 'ထိုးခါလူ',
+ 'TL' => 'အရှေ့တီမော',
+ 'TM' => 'တာခ်မီန့စ်တန်',
+ 'TN' => 'တူနီးရှား',
+ 'TO' => 'တွန်ဂါ',
+ 'TR' => 'တူရကီ',
+ 'TT' => 'ထရိုင်နီဒတ်နှင့်တိုဘာဂို',
+ 'TV' => 'ထူးဗလူ',
+ 'TW' => 'ထိုင်ဝမ်',
+ 'TZ' => 'တန်ဇန်းနီးယား',
+ 'UA' => 'ယူကရိန်း',
+ 'UG' => 'ယူဂန္ဓာ',
+ 'UM' => 'ယူနိုက်တက်စတိတ် အပြင်ထွက် နေသည့် သေးငယ်သောကျွန်းများ',
+ 'US' => 'ယူအက်စ်',
+ 'UY' => 'ဥရုဂွေး',
+ 'UZ' => 'ဥဘက်ကစ္စတန်',
+ 'VA' => 'ဗာတီကန်စီတီး',
+ 'VC' => 'စိန့်ဗင့်ဆင့်နှင့် သည်ဂရဲနာဒင်းစ်',
+ 'VE' => 'ဗင်နီဇွဲလား',
+ 'VG' => 'ဗြိတိသျှ ဗာဂျင်း ကျွန်းစု',
+ 'VI' => 'ယူအက်စ် ဗာဂျင်း ကျွန်းစု',
+ 'VN' => 'ဗီယက်နမ်',
+ 'VU' => 'ဗာနုအာတူ',
+ 'WF' => 'ဝေါလစ်နှင့်ဖူထူးနား',
+ 'WS' => 'ဆာမိုအာ',
+ 'XK' => 'ကိုဆိုဗို',
+ 'YE' => 'ယီမင်',
+ 'YT' => 'မေအိုတီ',
+ 'ZA' => 'တောင်အာဖရိက',
+ 'ZM' => 'ဇမ်ဘီယာ',
+ 'ZW' => 'ဇင်ဘာဘွေ',
+);
+
+$timeUnits = array(
+ 'day-future-other' => '{0}ရက်အတွင်း',
+ 'day-other' => '{0}ရက်',
+ 'day-past-other' => 'လွန်ခဲ့သော{0}ရက်',
+ 'hour-future-other' => '{0}နာရီအတွင်း',
+ 'hour-other' => '{0}နာရီ',
+ 'hour-past-other' => 'လွန်ခဲ့သော{0}နာရီ',
+ 'microsecond-other' => '{0}မိုက်ခရိုစက္ကန့်',
+ 'millisecond-other' => '{0}မီလီစက္ကန့်',
+ 'minute-future-other' => '{0}မိနစ်အတွင်း',
+ 'minute-other' => '{0} မိနစ်',
+ 'minute-past-other' => 'လွန်ခဲ့သော{0}မိနစ်',
+ 'month-future-other' => '{0}လအတွင်း',
+ 'month-other' => '{0}လ',
+ 'month-past-other' => 'လွန်ခဲ့သော{0}လ',
+ 'nanosecond-other' => '{0} နာနိုစက္ကန့်',
+ 'quarter-future-other' => 'သုံးလပတ်{0}ခု အတွင်း',
+ 'quarter-narrow-future-other' => 'သုံးလပတ်{0}ခု အတွင်း',
+ 'quarter-narrow-past-other' => 'လွန်ခဲ့သော သုံးလပတ်{0}ခု',
+ 'quarter-past-other' => 'လွန်ခဲ့သော သုံးလပတ်{0}ခု',
+ 'quarter-short-future-other' => 'သုံးလပတ်{0}ခု အတွင်း',
+ 'quarter-short-past-other' => 'လွန်ခဲ့သော သုံးလပတ်{0}ခု',
+ 'second-future-other' => '{0}စက္ကန့်အတွင်း',
+ 'second-other' => '{0} စက္ကန့်',
+ 'second-past-other' => 'လွန်ခဲ့သော{0}စက္ကန့်',
+ 'week-future-other' => '{0}ပတ်အတွင်း',
+ 'week-other' => '{0}ပတ်',
+ 'week-past-other' => 'လွန်ခဲ့သော{0}ပတ်',
+ 'year-future-other' => '{0}နှစ်အတွင်း',
+ 'year-other' => '{0}နှစ်',
+ 'year-past-other' => 'လွန်ခဲ့သော{0}နှစ်',
+);
diff --git a/MLEB/cldr/CldrNames/CldrNamesNb.php b/MLEB/cldr/CldrNames/CldrNamesNb.php
new file mode 100644
index 00000000..36015a9d
--- /dev/null
+++ b/MLEB/cldr/CldrNames/CldrNamesNb.php
@@ -0,0 +1,1496 @@
+<?php
+
+$languageNames = array(
+ 'aa' => 'afar',
+ 'ab' => 'abkhasisk',
+ 'ace' => 'achinesisk',
+ 'ach' => 'acoli',
+ 'ada' => 'adangme',
+ 'ady' => 'adyghe',
+ 'ae' => 'avestisk',
+ 'af' => 'afrikaans',
+ 'afh' => 'afrihili',
+ 'agq' => 'aghem',
+ 'ain' => 'ainu',
+ 'ak' => 'akan',
+ 'akk' => 'akkadisk',
+ 'ale' => 'aleutisk',
+ 'alt' => 'søraltaisk',
+ 'am' => 'amharisk',
+ 'an' => 'aragonsk',
+ 'ang' => 'gammelengelsk',
+ 'anp' => 'angika',
+ 'ar' => 'arabisk',
+ 'ar-001' => 'moderne standard arabisk',
+ 'arc' => 'arameisk',
+ 'arn' => 'araukansk',
+ 'arp' => 'arapaho',
+ 'arw' => 'arawak',
+ 'as' => 'assamisk',
+ 'asa' => 'asu',
+ 'ast' => 'asturisk',
+ 'av' => 'avarisk',
+ 'awa' => 'awadhi',
+ 'ay' => 'aymara',
+ 'az' => 'aserbajdsjansk',
+ 'ba' => 'basjkirsk',
+ 'bal' => 'baluchi',
+ 'ban' => 'balinesisk',
+ 'bas' => 'basa',
+ 'bax' => 'bamun',
+ 'bbj' => 'ghomala',
+ 'be' => 'hviterussisk',
+ 'bej' => 'beja',
+ 'bem' => 'bemba',
+ 'bez' => 'bena',
+ 'bfd' => 'bafut',
+ 'bg' => 'bulgarsk',
+ 'bho' => 'bhojpuri',
+ 'bi' => 'bislama',
+ 'bik' => 'bikol',
+ 'bin' => 'bini',
+ 'bkm' => 'kom',
+ 'bla' => 'siksika',
+ 'bm' => 'bambara',
+ 'bn' => 'bengali',
+ 'bo' => 'tibetansk',
+ 'br' => 'bretonsk',
+ 'bra' => 'braj',
+ 'brx' => 'bodo',
+ 'bs' => 'bosnisk',
+ 'bss' => 'akose',
+ 'bua' => 'buriat',
+ 'bug' => 'buginesisk',
+ 'bum' => 'bulu',
+ 'byn' => 'blin',
+ 'byv' => 'medumba',
+ 'ca' => 'katalansk',
+ 'cad' => 'caddo',
+ 'car' => 'karibisk',
+ 'cay' => 'cayuga',
+ 'cch' => 'atsam',
+ 'ce' => 'tsjetsjensk',
+ 'ceb' => 'cebuansk',
+ 'cgg' => 'kiga',
+ 'ch' => 'chamorro',
+ 'chb' => 'chibcha',
+ 'chg' => 'chagatai',
+ 'chk' => 'chuukesisk',
+ 'chm' => 'mari',
+ 'chn' => 'chinook',
+ 'cho' => 'choctaw',
+ 'chp' => 'chipewiansk',
+ 'chr' => 'cherokesisk',
+ 'chy' => 'cheyenne',
+ 'ckb' => 'kurdisk (sorani)',
+ 'co' => 'korsikansk',
+ 'cop' => 'koptisk',
+ 'cr' => 'cree',
+ 'crh' => 'krimtatarisk',
+ 'cs' => 'tsjekkisk',
+ 'csb' => 'kasjubisk',
+ 'cu' => 'kirkeslavisk',
+ 'cv' => 'tsjuvansk',
+ 'cy' => 'walisisk',
+ 'da' => 'dansk',
+ 'dak' => 'dakota',
+ 'dar' => 'dargwa',
+ 'dav' => 'taita',
+ 'de' => 'tysk',
+ 'de-at' => 'østerriksk tysk',
+ 'de-ch' => 'sveitsisk høytysk',
+ 'del' => 'delaware',
+ 'den' => 'slavisk',
+ 'dgr' => 'dogrib',
+ 'din' => 'dinka',
+ 'dje' => 'zarma',
+ 'doi' => 'dogri',
+ 'dsb' => 'lavsorbisk',
+ 'dua' => 'duala',
+ 'dum' => 'mellomnederlandsk',
+ 'dv' => 'divehi',
+ 'dyo' => 'jola-fonyi',
+ 'dyu' => 'dyula',
+ 'dz' => 'dzongkha',
+ 'dzg' => 'dazaga',
+ 'ebu' => 'kiembu',
+ 'ee' => 'ewe',
+ 'efi' => 'efik',
+ 'egy' => 'gammelegyptisk',
+ 'eka' => 'ekajuk',
+ 'el' => 'gresk',
+ 'elx' => 'elamittisk',
+ 'en' => 'engelsk',
+ 'en-au' => 'australsk engelsk',
+ 'en-ca' => 'canadisk engelsk',
+ 'en-gb' => 'britisk engelsk',
+ 'en-us' => 'amerikansk engelsk',
+ 'enm' => 'mellomengelsk',
+ 'eo' => 'esperanto',
+ 'es' => 'spansk',
+ 'es-419' => 'latinamerikansk spansk',
+ 'es-es' => 'europeisk spansk',
+ 'es-mx' => 'meksikansk spansk',
+ 'et' => 'estisk',
+ 'eu' => 'baskisk',
+ 'ewo' => 'ewondo',
+ 'fa' => 'persisk',
+ 'fan' => 'fang',
+ 'fat' => 'fanti',
+ 'ff' => 'fulani',
+ 'fi' => 'finsk',
+ 'fil' => 'filippinsk',
+ 'fj' => 'fijiansk',
+ 'fo' => 'færøysk',
+ 'fon' => 'fon',
+ 'fr' => 'fransk',
+ 'fr-ca' => 'canadisk fransk',
+ 'fr-ch' => 'sveitsisk fransk',
+ 'frm' => 'mellomfransk',
+ 'fro' => 'gammelfransk',
+ 'frr' => 'nordfrisisk',
+ 'frs' => 'østfrisisk',
+ 'fur' => 'friuliansk',
+ 'fy' => 'vestfrisisk',
+ 'ga' => 'irsk',
+ 'gaa' => 'ga',
+ 'gag' => 'gagausisk',
+ 'gay' => 'gayo',
+ 'gba' => 'gbaya',
+ 'gd' => 'skotsk gælisk',
+ 'gez' => 'ges',
+ 'gil' => 'kiribatisk',
+ 'gl' => 'galisisk',
+ 'gmh' => 'mellomhøytysk',
+ 'gn' => 'guarani',
+ 'goh' => 'gammelhøytysk',
+ 'gon' => 'gondi',
+ 'gor' => 'gorontalo',
+ 'got' => 'gotisk',
+ 'grb' => 'grebo',
+ 'grc' => 'gammelgresk',
+ 'gsw' => 'sveitsertysk',
+ 'gu' => 'gujarati',
+ 'guz' => 'gusii',
+ 'gv' => 'mansk',
+ 'gwi' => 'gwichin',
+ 'ha' => 'hausa',
+ 'hai' => 'haida',
+ 'haw' => 'hawaiisk',
+ 'he' => 'hebraisk',
+ 'hi' => 'hindi',
+ 'hil' => 'hiligaynon',
+ 'hit' => 'hettittisk',
+ 'hmn' => 'hmong',
+ 'ho' => 'hiri motu',
+ 'hr' => 'kroatisk',
+ 'hsb' => 'høysorbisk',
+ 'ht' => 'haitisk',
+ 'hu' => 'ungarsk',
+ 'hup' => 'hupa',
+ 'hy' => 'armensk',
+ 'hz' => 'herero',
+ 'ia' => 'interlingua',
+ 'iba' => 'iban',
+ 'ibb' => 'ibibio',
+ 'id' => 'indonesisk',
+ 'ie' => 'interlingue',
+ 'ig' => 'ibo',
+ 'ii' => 'sichuan-yi',
+ 'ik' => 'inupiak',
+ 'ilo' => 'iloko',
+ 'inh' => 'ingusjisk',
+ 'io' => 'ido',
+ 'is' => 'islandsk',
+ 'it' => 'italiensk',
+ 'iu' => 'inuktitut',
+ 'ja' => 'japansk',
+ 'jbo' => 'lojban',
+ 'jgo' => 'ngomba',
+ 'jmc' => 'machame',
+ 'jpr' => 'jødepersisk',
+ 'jrb' => 'jødearabisk',
+ 'jv' => 'javanesisk',
+ 'ka' => 'georgisk',
+ 'kaa' => 'karakalpakisk',
+ 'kab' => 'kabylsk',
+ 'kac' => 'kachin',
+ 'kaj' => 'jju',
+ 'kam' => 'kamba',
+ 'kaw' => 'kawi',
+ 'kbd' => 'kabardisk',
+ 'kbl' => 'kanembu',
+ 'kcg' => 'tyap',
+ 'kde' => 'makonde',
+ 'kea' => 'kappverdisk',
+ 'kfo' => 'koro',
+ 'kg' => 'kikongo',
+ 'kha' => 'khasi',
+ 'kho' => 'khotanesisk',
+ 'khq' => 'koyra chiini',
+ 'ki' => 'kikuyu',
+ 'kj' => 'kuanyama',
+ 'kk' => 'kasakhisk',
+ 'kkj' => 'kako',
+ 'kl' => 'grønlandsk',
+ 'kln' => 'kalenjin',
+ 'km' => 'khmer',
+ 'kmb' => 'kimbundu',
+ 'kn' => 'kannada',
+ 'ko' => 'koreansk',
+ 'koi' => 'komipermjakisk',
+ 'kok' => 'konkani',
+ 'kos' => 'kosraeansk',
+ 'kpe' => 'kpelle',
+ 'kr' => 'kanuri',
+ 'krc' => 'karachay-balkar',
+ 'krl' => 'karelsk',
+ 'kru' => 'kurukh',
+ 'ks' => 'kasjmiri',
+ 'ksb' => 'shambala',
+ 'ksf' => 'bafia',
+ 'ksh' => 'kølnsk',
+ 'ku' => 'kurdisk',
+ 'kum' => 'kumyk',
+ 'kut' => 'kutenai',
+ 'kv' => 'komi',
+ 'kw' => 'kornisk',
+ 'ky' => 'kirgisisk',
+ 'la' => 'latin',
+ 'lad' => 'ladinsk',
+ 'lag' => 'langi',
+ 'lah' => 'lahnda',
+ 'lam' => 'lamba',
+ 'lb' => 'luxemburgsk',
+ 'lez' => 'lezghian',
+ 'lg' => 'ganda',
+ 'li' => 'limburgisk',
+ 'lkt' => 'lakota',
+ 'ln' => 'lingala',
+ 'lo' => 'laotisk',
+ 'lol' => 'mongo',
+ 'loz' => 'lozi',
+ 'lt' => 'litauisk',
+ 'lu' => 'luba-katanga',
+ 'lua' => 'luba-lulua',
+ 'lui' => 'luiseno',
+ 'lun' => 'lunda',
+ 'luo' => 'luo',
+ 'lus' => 'lushai',
+ 'luy' => 'luhya',
+ 'lv' => 'latvisk',
+ 'mad' => 'maduresisk',
+ 'maf' => 'mafa',
+ 'mag' => 'magahi',
+ 'mai' => 'maithili',
+ 'mak' => 'makasar',
+ 'man' => 'mandingo',
+ 'mas' => 'masai',
+ 'mde' => 'maba',
+ 'mdf' => 'moksha',
+ 'mdr' => 'mandar',
+ 'men' => 'mende',
+ 'mer' => 'meru',
+ 'mfe' => 'mauritisk-kreolsk',
+ 'mg' => 'madagassisk',
+ 'mga' => 'mellomirsk',
+ 'mgh' => 'makhuwa-meetto',
+ 'mgo' => 'meta’',
+ 'mh' => 'marshallesisk',
+ 'mi' => 'maori',
+ 'mic' => 'micmac',
+ 'min' => 'minangkabau',
+ 'mk' => 'makedonsk',
+ 'ml' => 'malayalam',
+ 'mn' => 'mongolsk',
+ 'mnc' => 'mandsju',
+ 'mni' => 'manipuri',
+ 'moh' => 'mohawk',
+ 'mos' => 'mossi',
+ 'mr' => 'marathi',
+ 'ms' => 'malayisk',
+ 'mt' => 'maltesisk',
+ 'mua' => 'mundang',
+ 'mul' => 'flere språk',
+ 'mus' => 'creek',
+ 'mwl' => 'mirandesisk',
+ 'mwr' => 'marwari',
+ 'my' => 'burmesisk',
+ 'mye' => 'myene',
+ 'myv' => 'erzya',
+ 'na' => 'nauru',
+ 'nap' => 'napolitansk',
+ 'naq' => 'nama',
+ 'nb' => 'norsk bokmål',
+ 'nd' => 'nord-ndebele',
+ 'nds' => 'lavtysk',
+ 'ne' => 'nepali',
+ 'new' => 'newari',
+ 'ng' => 'ndonga',
+ 'nia' => 'nias',
+ 'niu' => 'niueansk',
+ 'nl' => 'nederlandsk',
+ 'nl-be' => 'flamsk',
+ 'nmg' => 'kwasio',
+ 'nn' => 'norsk nynorsk',
+ 'nnh' => 'ngiemboon',
+ 'no' => 'norsk',
+ 'nog' => 'nogai',
+ 'non' => 'gammelnorsk',
+ 'nqo' => 'nkå',
+ 'nr' => 'sør-ndebele',
+ 'nso' => 'nord-sotho',
+ 'nus' => 'nuer',
+ 'nv' => 'navajo',
+ 'nwc' => 'klassisk newari',
+ 'ny' => 'nyanja',
+ 'nym' => 'nyamwezi',
+ 'nyn' => 'nyankole',
+ 'nyo' => 'nyoro',
+ 'nzi' => 'nzima',
+ 'oc' => 'oksitansk',
+ 'oj' => 'ojibwa',
+ 'om' => 'oromo',
+ 'or' => 'oriya',
+ 'os' => 'ossetisk',
+ 'osa' => 'osage',
+ 'ota' => 'ottomansk tyrkisk',
+ 'pa' => 'punjabi',
+ 'pag' => 'pangasinan',
+ 'pal' => 'pahlavi',
+ 'pam' => 'pampanga',
+ 'pap' => 'papiamento',
+ 'pau' => 'palauisk',
+ 'peo' => 'gammelpersisk',
+ 'phn' => 'fønikisk',
+ 'pi' => 'pali',
+ 'pl' => 'polsk',
+ 'pon' => 'ponapisk',
+ 'pro' => 'gammelprovençalsk',
+ 'ps' => 'pashto',
+ 'pt' => 'portugisisk',
+ 'pt-br' => 'brasiliansk portugisisk',
+ 'pt-pt' => 'europeisk portugisisk',
+ 'qu' => 'quechua',
+ 'quc' => 'quiché',
+ 'raj' => 'rajasthani',
+ 'rap' => 'rapanui',
+ 'rar' => 'rarotongansk',
+ 'rm' => 'retoromansk',
+ 'rn' => 'rundi',
+ 'ro' => 'rumensk',
+ 'ro-md' => 'moldovsk',
+ 'rof' => 'rombo',
+ 'rom' => 'romani',
+ 'ru' => 'russisk',
+ 'rup' => 'aromansk',
+ 'rw' => 'kinyarwanda',
+ 'rwk' => 'rwa',
+ 'sa' => 'sanskrit',
+ 'sad' => 'sandawe',
+ 'sah' => 'jakutsk',
+ 'sam' => 'samaritansk arameisk',
+ 'saq' => 'samburu',
+ 'sas' => 'sasak',
+ 'sat' => 'santali',
+ 'sba' => 'ngambay',
+ 'sbp' => 'sangu',
+ 'sc' => 'sardinsk',
+ 'scn' => 'siciliansk',
+ 'sco' => 'skotsk',
+ 'sd' => 'sindhi',
+ 'se' => 'nordsamisk',
+ 'see' => 'seneca',
+ 'seh' => 'sena',
+ 'sel' => 'selkupisk',
+ 'ses' => 'koyraboro senni',
+ 'sg' => 'sango',
+ 'sga' => 'gammelirsk',
+ 'sh' => 'serbokroatisk',
+ 'shi' => 'tachelhit',
+ 'shn' => 'shan',
+ 'shu' => 'Tsjad-arabisk',
+ 'si' => 'singalesisk',
+ 'sid' => 'sidamo',
+ 'sk' => 'slovakisk',
+ 'sl' => 'slovensk',
+ 'sm' => 'samoansk',
+ 'sma' => 'sørsamisk',
+ 'smj' => 'lulesamisk',
+ 'smn' => 'enaresamisk',
+ 'sms' => 'skoltesamisk',
+ 'sn' => 'shona',
+ 'snk' => 'soninke',
+ 'so' => 'somali',
+ 'sog' => 'sogdisk',
+ 'sq' => 'albansk',
+ 'sr' => 'serbisk',
+ 'srn' => 'sranan tongo',
+ 'srr' => 'serer',
+ 'ss' => 'swati',
+ 'ssy' => 'saho',
+ 'st' => 'sør-sotho',
+ 'su' => 'sundanesisk',
+ 'suk' => 'sukuma',
+ 'sus' => 'susu',
+ 'sux' => 'sumerisk',
+ 'sv' => 'svensk',
+ 'sw' => 'swahili',
+ 'swb' => 'komorisk',
+ 'swc' => 'kongolesisk swahili',
+ 'syc' => 'klassisk syrisk',
+ 'syr' => 'syrisk',
+ 'ta' => 'tamilsk',
+ 'te' => 'telugu',
+ 'tem' => 'temne',
+ 'teo' => 'teso',
+ 'ter' => 'tereno',
+ 'tet' => 'tetum',
+ 'tg' => 'tadsjikisk',
+ 'th' => 'thai',
+ 'ti' => 'tigrinja',
+ 'tig' => 'tigré',
+ 'tiv' => 'tiv',
+ 'tk' => 'turkmensk',
+ 'tkl' => 'tokelau',
+ 'tl' => 'tagalog',
+ 'tlh' => 'klingon',
+ 'tli' => 'tlingit',
+ 'tmh' => 'tamasjek',
+ 'tn' => 'setswana',
+ 'to' => 'tongansk',
+ 'tog' => 'nyasa-tongansk',
+ 'tpi' => 'tok pisin',
+ 'tr' => 'tyrkisk',
+ 'trv' => 'taroko',
+ 'ts' => 'tsonga',
+ 'tsi' => 'tsimshian',
+ 'tt' => 'tatarisk',
+ 'tum' => 'tumbuka',
+ 'tvl' => 'tuvalu',
+ 'tw' => 'twi',
+ 'twq' => 'tasawaq',
+ 'ty' => 'tahitisk',
+ 'tyv' => 'tuvinisk',
+ 'tzm' => 'sentralmarokkansk tamazight',
+ 'udm' => 'udmurt',
+ 'ug' => 'uigurisk',
+ 'uga' => 'ugaritisk',
+ 'uk' => 'ukrainsk',
+ 'umb' => 'umbundu',
+ 'und' => 'ukjent språk',
+ 'ur' => 'urdu',
+ 'uz' => 'usbekisk',
+ 'vai' => 'vai',
+ 've' => 'venda',
+ 'vi' => 'vietnamesisk',
+ 'vo' => 'volapyk',
+ 'vot' => 'votisk',
+ 'vun' => 'vunjo',
+ 'wa' => 'vallonsk',
+ 'wae' => 'walser',
+ 'wal' => 'walamo',
+ 'war' => 'waray',
+ 'was' => 'washo',
+ 'wo' => 'wolof',
+ 'xal' => 'kalmyk',
+ 'xh' => 'xhosa',
+ 'xog' => 'soga',
+ 'yao' => 'yao',
+ 'yap' => 'yapesisk',
+ 'yav' => 'yangben',
+ 'ybb' => 'yemba',
+ 'yi' => 'jiddisk',
+ 'yo' => 'joruba',
+ 'yue' => 'kantonesisk',
+ 'za' => 'zhuang',
+ 'zap' => 'zapotec',
+ 'zbl' => 'blissymboler',
+ 'zen' => 'zenaga',
+ 'zgh' => 'standard marrokansk tamazight',
+ 'zh' => 'kinesisk',
+ 'zh-hans' => 'forenklet kinesisk',
+ 'zh-hant' => 'tradisjonell kinesisk',
+ 'zu' => 'zulu',
+ 'zun' => 'zuni',
+ 'zxx' => 'uten språklig innhold',
+ 'zza' => 'zaza',
+);
+
+$currencyNames = array(
+ 'ADP' => 'andorranske pesetas',
+ 'AED' => 'emiratarabiske dirham',
+ 'AFA' => 'afgansk afghani (1927–2002)',
+ 'AFN' => 'afghansk afghani',
+ 'ALK' => 'albanske lek (1946–1965)',
+ 'ALL' => 'albanske lek',
+ 'AMD' => 'armenske dram',
+ 'ANG' => 'nederlandske antillegylden',
+ 'AOA' => 'angolanske kwanza',
+ 'AOK' => 'angolanske kwanza (1977–1990)',
+ 'AON' => 'angolanske nye kwanza (1990–2000)',
+ 'AOR' => 'angolanske omjusterte kwanza (1995–1999)',
+ 'ARA' => 'argentinske australer',
+ 'ARL' => 'argentinske peso ley',
+ 'ARM' => 'argentinsk pesos (1881–1970)',
+ 'ARP' => 'argentinske pesos (1983–1985)',
+ 'ARS' => 'argentinske pesos',
+ 'ATS' => 'østerrikske shilling',
+ 'AUD' => 'australske dollar',
+ 'AWG' => 'arubiske floriner',
+ 'AZM' => 'aserbajdsjanske manat (1993–2006)',
+ 'AZN' => 'aserbajdsjanske manat',
+ 'BAD' => 'bosnisk-hercegovinske dinarer (1992–1994)',
+ 'BAM' => 'bosnisk-hercegovinske konvertible mark',
+ 'BAN' => 'nye bosnisk-hercegovinske dinarer (1994–1997)',
+ 'BBD' => 'barbadiske dollar',
+ 'BDT' => 'bangladeshiske taka',
+ 'BEC' => 'belgiske franc (konvertible)',
+ 'BEF' => 'belgiske franc',
+ 'BEL' => 'belgiske franc (finansielle)',
+ 'BGL' => 'bulgarske lev (hard)',
+ 'BGM' => 'bulgarske lev (sosialist)',
+ 'BGN' => 'bulgarske lev',
+ 'BGO' => 'bulgarske lev (1879–1952)',
+ 'BHD' => 'bahrainske dinarer',
+ 'BIF' => 'burundiske franc',
+ 'BMD' => 'bermudiske dollar',
+ 'BND' => 'bruneiske dollar',
+ 'BOB' => 'bolivianske boliviano',
+ 'BOL' => 'bolivianske boliviano (1863–1963)',
+ 'BOP' => 'bolivianske pesos',
+ 'BOV' => 'bolivianske mvdol',
+ 'BRB' => 'brasilianske cruzeiro novo (1967–1986)',
+ 'BRC' => 'brasilianske cruzado',
+ 'BRE' => 'brasilianske cruzeiro (1990–1993)',
+ 'BRL' => 'brasilianske real',
+ 'BRN' => 'brasilianske cruzado novo (1989–1990)',
+ 'BRR' => 'brasilianske cruzeiro',
+ 'BRZ' => 'brasilianske cruzeiro (1942–1967)',
+ 'BSD' => 'bahamanske dollar',
+ 'BTN' => 'bhutanske ngultrum',
+ 'BUK' => 'burmesiske kyat',
+ 'BWP' => 'botswanske pula',
+ 'BYB' => 'hviterussiske nye rubler (1994–1999)',
+ 'BYR' => 'hviterussiske rubler',
+ 'BZD' => 'beliziske dollar',
+ 'CAD' => 'kanadiske dollar',
+ 'CDF' => 'kongolesiske franc',
+ 'CHE' => 'WIR euro',
+ 'CHF' => 'sveitsiske franc',
+ 'CHW' => 'WIR franc',
+ 'CLE' => 'chilenske escudo',
+ 'CLF' => 'chilenske unidades de fomento',
+ 'CLP' => 'chilenske pesos',
+ 'CNX' => 'Kinas folkebank dollar',
+ 'CNY' => 'kinesiske yuan',
+ 'COP' => 'colombianske pesos',
+ 'COU' => 'unidad de valor real',
+ 'CRC' => 'costaricanske colón',
+ 'CSD' => 'serbiske dinarer (2002–2006)',
+ 'CSK' => 'tsjekkoslovakiske koruna (hard)',
+ 'CUC' => 'kubanske konvertible pesos',
+ 'CUP' => 'kubanske pesos',
+ 'CVE' => 'kappverdiske escudos',
+ 'CYP' => 'kypriotiske pund',
+ 'CZK' => 'tsjekkiske koruna',
+ 'DDM' => 'østtyske ostmark',
+ 'DEM' => 'tyske mark',
+ 'DJF' => 'djiboutiske franc',
+ 'DKK' => 'danske kroner',
+ 'DOP' => 'dominikanske pesos',
+ 'DZD' => 'algeriske dinarer',
+ 'ECS' => 'ecuadorianske sucre',
+ 'ECV' => 'ecuadorianske unidad de valor constante (UVC)',
+ 'EEK' => 'estiske kroon',
+ 'EGP' => 'egyptiske pund',
+ 'ERN' => 'eritreiske nakfa',
+ 'ESA' => 'spanske peseta (A–konto)',
+ 'ESB' => 'spanske peseta (konvertibel konto)',
+ 'ESP' => 'spanske peseta',
+ 'ETB' => 'etiopiske birr',
+ 'EUR' => 'euro',
+ 'FIM' => 'finske mark',
+ 'FJD' => 'fijianske dollar',
+ 'FKP' => 'falklandspund',
+ 'FRF' => 'franske franc',
+ 'GBP' => 'britiske pund sterling',
+ 'GEK' => 'georgiske kupon larit',
+ 'GEL' => 'georgiske lari',
+ 'GHC' => 'ghanesisk cedi (1979–2007)',
+ 'GHS' => 'ghanesiske cedi',
+ 'GIP' => 'gibraltarske pund',
+ 'GMD' => 'gambiske dalasi',
+ 'GNF' => 'guineanske franc',
+ 'GNS' => 'guineanske syli',
+ 'GQE' => 'ekvatorialguineanske ekwele guineana',
+ 'GRD' => 'greske drakmer',
+ 'GTQ' => 'guatemalanske quetzal',
+ 'GWE' => 'portugisiske guinea escudo',
+ 'GWP' => 'Guinea-Bissau-pesos',
+ 'GYD' => 'guyanske dollar',
+ 'HKD' => 'Hongkong-dollar',
+ 'HNL' => 'honduranske lempira',
+ 'HRD' => 'kroatiske dinarer',
+ 'HRK' => 'kroatiske kuna',
+ 'HTG' => 'haitiske gourde',
+ 'HUF' => 'ungarske forinter',
+ 'IDR' => 'indonesiske rupier',
+ 'IEP' => 'irske pund',
+ 'ILP' => 'israelske pund',
+ 'ILR' => 'israelske shekler (1980–1985)',
+ 'ILS' => 'nye israelske shekler',
+ 'INR' => 'indiske rupier',
+ 'IQD' => 'irakske dinarer',
+ 'IRR' => 'iranske rialer',
+ 'ISJ' => 'gammel islandsk krone',
+ 'ISK' => 'islandske kroner',
+ 'ITL' => 'italienske lire',
+ 'JMD' => 'jamaikanske dollar',
+ 'JOD' => 'jordanske dinarer',
+ 'JPY' => 'japanske yen',
+ 'KES' => 'kenyanske shilling',
+ 'KGS' => 'kirgisiske som',
+ 'KHR' => 'kambodsjanske riel',
+ 'KMF' => 'komoriske franc',
+ 'KPW' => 'nordkoreanske won',
+ 'KRH' => 'sørkoreanske hwan (1953–1962)',
+ 'KRO' => 'sørkoreanske won (1945–1953)',
+ 'KRW' => 'sørkoreanske won',
+ 'KWD' => 'kuwaitiske dinarer',
+ 'KYD' => 'caymanske dollar',
+ 'KZT' => 'kasakhstanske tenge',
+ 'LAK' => 'laotiske kip',
+ 'LBP' => 'libanesiske pund',
+ 'LKR' => 'srilankiske rupier',
+ 'LRD' => 'liberiske dollar',
+ 'LSL' => 'lesothiske loti',
+ 'LTL' => 'litauiske lita',
+ 'LTT' => 'litauiske talonas',
+ 'LUC' => 'luxemburgske konvertible franc',
+ 'LUF' => 'luxemburgske franc',
+ 'LUL' => 'luxemburgske finansielle franc',
+ 'LVL' => 'latviske lats',
+ 'LVR' => 'latviske rubler',
+ 'LYD' => 'libyske dinarer',
+ 'MAD' => 'marokkanske dirham',
+ 'MAF' => 'marokkanske franc',
+ 'MCF' => 'MCF',
+ 'MDC' => 'moldovske cupon',
+ 'MDL' => 'moldovske leu',
+ 'MGA' => 'madagassiske ariary',
+ 'MGF' => 'madagassiske franc',
+ 'MKD' => 'makedonske denarer',
+ 'MKN' => 'makedonske denarer (1992–1993)',
+ 'MLF' => 'maliske franc',
+ 'MMK' => 'myanmarske kyat',
+ 'MNT' => 'mongolske tugrik',
+ 'MOP' => 'makaoiske pataca',
+ 'MRO' => 'mauritanske ouguiya',
+ 'MTL' => 'maltesiske lira',
+ 'MTP' => 'maltesiske pund',
+ 'MUR' => 'mauritiske rupier',
+ 'MVP' => 'maldiviske rupier',
+ 'MVR' => 'maldiviske rufiyaa',
+ 'MWK' => 'malawiske kwacha',
+ 'MXN' => 'meksikanske pesos',
+ 'MXP' => 'meksikanske sølvpesos (1861–1992)',
+ 'MXV' => 'meksikanske unidad de inversion (UDI)',
+ 'MYR' => 'malaysiske ringgit',
+ 'MZE' => 'mosambikiske escudo',
+ 'MZM' => 'gamle mosambikiske metical',
+ 'MZN' => 'mosambikiske metical',
+ 'NAD' => 'namibiske dollar',
+ 'NGN' => 'nigerianske naira',
+ 'NIC' => 'nicaraguanske cordoba (1988–1991)',
+ 'NIO' => 'nicaraguanske córdoba',
+ 'NLG' => 'nederlandske gylden',
+ 'NOK' => 'norske kroner',
+ 'NPR' => 'nepalske rupier',
+ 'NZD' => 'newzealandske dollar',
+ 'OMR' => 'omanske rialer',
+ 'PAB' => 'panamanske balboa',
+ 'PEI' => 'peruvianske inti',
+ 'PEN' => 'peruanske nuevo sol',
+ 'PES' => 'peruvianske sol (1863–1965)',
+ 'PGK' => 'papuanske kina',
+ 'PHP' => 'filippinske pesos',
+ 'PKR' => 'pakistanske rupier',
+ 'PLN' => 'polske zloty',
+ 'PLZ' => 'polske zloty (1950–1995)',
+ 'PTE' => 'portugisiske escudo',
+ 'PYG' => 'paraguayanske guarani',
+ 'QAR' => 'qatarske rialer',
+ 'RHD' => 'rhodesiske dollar',
+ 'ROL' => 'rumenske leu (1952–2006)',
+ 'RON' => 'rumenske leu',
+ 'RSD' => 'serbiske dinarer',
+ 'RUB' => 'russiske rubler',
+ 'RUR' => 'russiske rubler (1991–1998)',
+ 'RWF' => 'rwandiske franc',
+ 'SAR' => 'saudiarabiske riyaler',
+ 'SBD' => 'salomonske dollar',
+ 'SCR' => 'seychelliske rupier',
+ 'SDD' => 'sudanesiske dinarer (1992–2007)',
+ 'SDG' => 'sudanske pund',
+ 'SDP' => 'sudanesiske pund',
+ 'SEK' => 'svenske kroner',
+ 'SGD' => 'singaporske dollar',
+ 'SHP' => 'sankthelenske pund',
+ 'SIT' => 'slovenske tolar',
+ 'SKK' => 'slovakiske koruna',
+ 'SLL' => 'sierraleonske leone',
+ 'SOS' => 'somaliske shilling',
+ 'SRD' => 'surinamske dollar',
+ 'SRG' => 'surinamske gylden',
+ 'SSP' => 'sørsudanske pund',
+ 'STD' => 'São Tomé og Príncipe-dobra',
+ 'SUR' => 'sovjetiske rubler',
+ 'SVC' => 'salvadoranske colon',
+ 'SYP' => 'syriske pund',
+ 'SZL' => 'swazilandske lilangeni',
+ 'THB' => 'thailandske baht',
+ 'TJR' => 'tadsjikiske rubler',
+ 'TJS' => 'tadsjikiske somoni',
+ 'TMM' => 'turkmenske manat (1993–2009)',
+ 'TMT' => 'turkmenske manat',
+ 'TND' => 'tunisiske dinarer',
+ 'TOP' => 'tonganske paʻanga',
+ 'TPE' => 'timoresiske escudo',
+ 'TRL' => 'tyrkiske lire (1922–2005)',
+ 'TRY' => 'tyrkiske lire',
+ 'TTD' => 'trinidadiske dollar',
+ 'TWD' => 'nye taiwanske dollar',
+ 'TZS' => 'tanzanianske shilling',
+ 'UAH' => 'ukrainske hryvnia',
+ 'UAK' => 'ukrainske karbovanetz',
+ 'UGS' => 'ugandiske shilling (1966–1987)',
+ 'UGX' => 'ugandiske shilling',
+ 'USD' => 'amerikanske dollar',
+ 'USN' => 'amerikanske dollar (neste dag)',
+ 'USS' => 'amerikanske dollar (samme dag)',
+ 'UYI' => 'uruguyanske pesos (indekserte enheter)',
+ 'UYP' => 'uruguayanske pesos (1975–1993)',
+ 'UYU' => 'uruguayanske pesos',
+ 'UZS' => 'usbekiske som',
+ 'VEB' => 'venezuelanske bolivar (1871–2008)',
+ 'VEF' => 'venezuelanske bolivar',
+ 'VND' => 'vietnamesiske dong',
+ 'VNN' => 'vietnamesiske dong (1978–1985)',
+ 'VUV' => 'vanuatiske vatu',
+ 'WST' => 'samoanske tala',
+ 'XAF' => 'sentralafrikanske CFA-franc',
+ 'XAG' => 'sølv',
+ 'XAU' => 'gull',
+ 'XBA' => 'europeisk sammensatt enhet',
+ 'XBB' => 'europeisk monetær enhet',
+ 'XBC' => 'europeisk kontoenhet (XBC)',
+ 'XBD' => 'europeisk kontoenhet (XBD)',
+ 'XCD' => 'østkaribiske dollar',
+ 'XDR' => 'spesielle trekkrettigheter',
+ 'XEU' => 'europeisk valutaenhet',
+ 'XFO' => 'franske gullfranc',
+ 'XFU' => 'franske UIC-franc',
+ 'XOF' => 'vestafrikanske CFA-franc',
+ 'XPD' => 'palladium',
+ 'XPF' => 'CFP-franc',
+ 'XPT' => 'platina',
+ 'XRE' => 'RINET-fond',
+ 'XSU' => 'sucre',
+ 'XTS' => 'testvalutakode',
+ 'XUA' => 'ADB-kontoenhet',
+ 'XXX' => 'ukjent valuta',
+ 'YDD' => 'jemenittiske dinarer',
+ 'YER' => 'jemenittiske rialer',
+ 'YUD' => 'jugoslaviske dinarer (hard)',
+ 'YUM' => 'jugoslaviske noviy-dinarer',
+ 'YUN' => 'jugoslaviske konvertible dinarer',
+ 'YUR' => 'jugoslaviske reformerte dinarer (1992–1993)',
+ 'ZAL' => 'sørafrikanske rand (finansielle)',
+ 'ZAR' => 'sørafrikanske rand',
+ 'ZMK' => 'zambiske kwacha (1968–2012)',
+ 'ZMW' => 'zambiske kwacha',
+ 'ZRN' => 'zairiske nye zaire',
+ 'ZRZ' => 'zairiske zaire',
+ 'ZWD' => 'zimbabwiske dollar (1980–2008)',
+ 'ZWL' => 'zimbabwisk dollar (2009)',
+ 'ZWR' => 'zimbabwisk dollar (2008)',
+);
+
+$currencySymbols = array(
+ 'ADP' => 'ADP',
+ 'AED' => 'AED',
+ 'AFA' => 'AFA',
+ 'AFN' => 'AFN',
+ 'ALK' => 'ALK',
+ 'ALL' => 'ALL',
+ 'AMD' => 'AMD',
+ 'ANG' => 'ANG',
+ 'AOA' => 'AOA',
+ 'AOK' => 'AOK',
+ 'AON' => 'AON',
+ 'AOR' => 'AOR',
+ 'ARA' => 'ARA',
+ 'ARL' => 'ARL',
+ 'ARM' => 'ARM',
+ 'ARP' => 'ARP',
+ 'ARS' => 'ARS',
+ 'ATS' => 'ATS',
+ 'AUD' => 'AUD',
+ 'AWG' => 'AWG',
+ 'AZM' => 'AZM',
+ 'AZN' => 'AZN',
+ 'BAD' => 'BAD',
+ 'BAM' => 'BAM',
+ 'BAN' => 'BAN',
+ 'BBD' => 'BBD',
+ 'BDT' => 'BDT',
+ 'BEC' => 'BEC',
+ 'BEF' => 'BEF',
+ 'BEL' => 'BEL',
+ 'BGL' => 'BGL',
+ 'BGM' => 'BGM',
+ 'BGN' => 'BGN',
+ 'BGO' => 'BGO',
+ 'BHD' => 'BHD',
+ 'BIF' => 'BIF',
+ 'BMD' => 'BMD',
+ 'BND' => 'BND',
+ 'BOB' => 'BOB',
+ 'BOL' => 'BOL',
+ 'BOP' => 'BOP',
+ 'BOV' => 'BOV',
+ 'BRB' => 'BRB',
+ 'BRC' => 'BRC',
+ 'BRE' => 'BRE',
+ 'BRL' => 'BRL',
+ 'BRN' => 'BRN',
+ 'BRR' => 'BRR',
+ 'BRZ' => 'BRZ',
+ 'BSD' => 'BSD',
+ 'BTN' => 'BTN',
+ 'BUK' => 'BUK',
+ 'BWP' => 'BWP',
+ 'BYB' => 'BYB',
+ 'BYR' => 'BYR',
+ 'BZD' => 'BZD',
+ 'CAD' => 'CAD',
+ 'CDF' => 'CDF',
+ 'CHE' => 'CHE',
+ 'CHF' => 'CHF',
+ 'CHW' => 'CHW',
+ 'CLE' => 'CLE',
+ 'CLF' => 'CLF',
+ 'CLP' => 'CLP',
+ 'CNX' => 'CNX',
+ 'CNY' => 'CNY',
+ 'COP' => 'COP',
+ 'COU' => 'COU',
+ 'CRC' => 'CRC',
+ 'CSD' => 'CSD',
+ 'CSK' => 'CSK',
+ 'CUC' => 'CUC',
+ 'CUP' => 'CUP',
+ 'CVE' => 'CVE',
+ 'CYP' => 'CYP',
+ 'CZK' => 'CZK',
+ 'DDM' => 'DDM',
+ 'DEM' => 'DEM',
+ 'DJF' => 'DJF',
+ 'DKK' => 'DKK',
+ 'DOP' => 'DOP',
+ 'DZD' => 'DZD',
+ 'ECS' => 'ECS',
+ 'ECV' => 'ECV',
+ 'EEK' => 'EEK',
+ 'EGP' => 'EGP',
+ 'ERN' => 'ERN',
+ 'ESA' => 'ESA',
+ 'ESB' => 'ESB',
+ 'ESP' => 'ESP',
+ 'ETB' => 'ETB',
+ 'EUR' => '€',
+ 'FIM' => 'FIM',
+ 'FJD' => 'FJD',
+ 'FKP' => 'FKP',
+ 'FRF' => 'FRF',
+ 'GBP' => '£',
+ 'GEK' => 'GEK',
+ 'GEL' => 'GEL',
+ 'GHC' => 'GHC',
+ 'GHS' => 'GHS',
+ 'GIP' => 'GIP',
+ 'GMD' => 'GMD',
+ 'GNF' => 'GNF',
+ 'GNS' => 'GNS',
+ 'GQE' => 'GQE',
+ 'GRD' => 'GRD',
+ 'GTQ' => 'GTQ',
+ 'GWE' => 'GWE',
+ 'GWP' => 'GWP',
+ 'GYD' => 'GYD',
+ 'HKD' => 'HKD',
+ 'HNL' => 'HNL',
+ 'HRD' => 'HRD',
+ 'HRK' => 'HRK',
+ 'HTG' => 'HTG',
+ 'HUF' => 'HUF',
+ 'IDR' => 'IDR',
+ 'IEP' => 'IEP',
+ 'ILP' => 'ILP',
+ 'ILR' => 'ILR',
+ 'ILS' => 'ILS',
+ 'INR' => 'INR',
+ 'IQD' => 'IQD',
+ 'IRR' => 'IRR',
+ 'ISK' => 'ISK',
+ 'ITL' => 'ITL',
+ 'JMD' => 'JMD',
+ 'JOD' => 'JOD',
+ 'JPY' => 'JPY',
+ 'KES' => 'KES',
+ 'KGS' => 'KGS',
+ 'KHR' => 'KHR',
+ 'KMF' => 'KMF',
+ 'KPW' => 'KPW',
+ 'KRH' => 'KRH',
+ 'KRO' => 'KRO',
+ 'KRW' => 'KRW',
+ 'KWD' => 'KWD',
+ 'KYD' => 'KYD',
+ 'KZT' => 'KZT',
+ 'LAK' => 'LAK',
+ 'LBP' => 'LBP',
+ 'LKR' => 'LKR',
+ 'LRD' => 'LRD',
+ 'LSL' => 'LSL',
+ 'LTL' => 'LTL',
+ 'LTT' => 'LTT',
+ 'LUC' => 'LUC',
+ 'LUF' => 'LUF',
+ 'LUL' => 'LUL',
+ 'LVL' => 'LVL',
+ 'LVR' => 'LVR',
+ 'LYD' => 'LYD',
+ 'MAD' => 'MAD',
+ 'MAF' => 'MAF',
+ 'MCF' => 'MCF',
+ 'MDC' => 'MDC',
+ 'MDL' => 'MDL',
+ 'MGA' => 'MGA',
+ 'MKD' => 'MKD',
+ 'MKN' => 'MKN',
+ 'MLF' => 'MLF',
+ 'MMK' => 'MMK',
+ 'MNT' => 'MNT',
+ 'MOP' => 'MOP',
+ 'MRO' => 'MRO',
+ 'MTL' => 'MTL',
+ 'MTP' => 'MTP',
+ 'MUR' => 'MUR',
+ 'MVP' => 'MVP',
+ 'MVR' => 'MVR',
+ 'MWK' => 'MWK',
+ 'MXN' => 'MXN',
+ 'MXP' => 'MXP',
+ 'MXV' => 'MXV',
+ 'MYR' => 'MYR',
+ 'MZE' => 'MZE',
+ 'MZM' => 'MZM',
+ 'MZN' => 'MZN',
+ 'NAD' => 'NAD',
+ 'NGN' => 'NGN',
+ 'NIC' => 'NIC',
+ 'NIO' => 'NIO',
+ 'NLG' => 'NLG',
+ 'NOK' => 'kr',
+ 'NPR' => 'NPR',
+ 'NZD' => 'NZD',
+ 'OMR' => 'OMR',
+ 'PAB' => 'PAB',
+ 'PEI' => 'PEI',
+ 'PEN' => 'PEN',
+ 'PES' => 'PES',
+ 'PGK' => 'PGK',
+ 'PHP' => 'PHP',
+ 'PKR' => 'PKR',
+ 'PLN' => 'PLN',
+ 'PLZ' => 'PLZ',
+ 'PTE' => 'PTE',
+ 'PYG' => 'PYG',
+ 'QAR' => 'QAR',
+ 'RHD' => 'RHD',
+ 'ROL' => 'ROL',
+ 'RON' => 'RON',
+ 'RSD' => 'RSD',
+ 'RUB' => 'RUB',
+ 'RUR' => 'RUR',
+ 'RWF' => 'RWF',
+ 'SAR' => 'SAR',
+ 'SBD' => 'SBD',
+ 'SCR' => 'SCR',
+ 'SDD' => 'SDD',
+ 'SDG' => 'SDG',
+ 'SDP' => 'SDP',
+ 'SEK' => 'SEK',
+ 'SGD' => 'SGD',
+ 'SHP' => 'SHP',
+ 'SIT' => 'SIT',
+ 'SKK' => 'SKK',
+ 'SLL' => 'SLL',
+ 'SOS' => 'SOS',
+ 'SRD' => 'SRD',
+ 'SRG' => 'SRG',
+ 'SSP' => 'SSP',
+ 'STD' => 'STD',
+ 'SUR' => 'SUR',
+ 'SVC' => 'SVC',
+ 'SYP' => 'SYP',
+ 'SZL' => 'SZL',
+ 'THB' => 'THB',
+ 'TJR' => 'TJR',
+ 'TJS' => 'TJS',
+ 'TMM' => 'TMM',
+ 'TMT' => 'TMT',
+ 'TND' => 'TND',
+ 'TOP' => 'TOP',
+ 'TPE' => 'TPE',
+ 'TRL' => 'TRL',
+ 'TRY' => 'TRY',
+ 'TTD' => 'TTD',
+ 'TWD' => 'TWD',
+ 'TZS' => 'TZS',
+ 'UAH' => 'UAH',
+ 'UAK' => 'UAK',
+ 'UGS' => 'UGS',
+ 'UGX' => 'UGX',
+ 'USD' => 'USD',
+ 'USN' => 'USN',
+ 'USS' => 'USS',
+ 'UYI' => 'UYI',
+ 'UYP' => 'UYP',
+ 'UYU' => 'UYU',
+ 'UZS' => 'UZS',
+ 'VEB' => 'VEB',
+ 'VEF' => 'VEF',
+ 'VND' => 'VND',
+ 'VNN' => 'VNN',
+ 'VUV' => 'VUV',
+ 'WST' => 'WST',
+ 'XAF' => 'XAF',
+ 'XAG' => 'XAG',
+ 'XAU' => 'XAU',
+ 'XBA' => 'XBA',
+ 'XBB' => 'XBB',
+ 'XBC' => 'XBC',
+ 'XBD' => 'XBD',
+ 'XCD' => 'XCD',
+ 'XDR' => 'XDR',
+ 'XEU' => 'XEU',
+ 'XFO' => 'XFO',
+ 'XFU' => 'XFU',
+ 'XOF' => 'CFA',
+ 'XPD' => 'XPD',
+ 'XPF' => 'XPF',
+ 'XPT' => 'XPT',
+ 'XRE' => 'XRE',
+ 'XSU' => 'XSU',
+ 'XTS' => 'XTS',
+ 'XUA' => 'XUA',
+ 'XXX' => 'XXX',
+ 'YDD' => 'YDD',
+ 'YER' => 'YER',
+ 'YUD' => 'YUD',
+ 'YUM' => 'YUM',
+ 'YUN' => 'YUN',
+ 'YUR' => 'YUR',
+ 'ZAL' => 'ZAL',
+ 'ZAR' => 'ZAR',
+ 'ZMK' => 'ZMK',
+ 'ZMW' => 'ZMW',
+ 'ZRN' => 'ZRN',
+ 'ZRZ' => 'ZRZ',
+ 'ZWD' => 'ZWD',
+ 'ZWL' => 'ZWL',
+);
+
+$countryNames = array(
+ 'AC' => 'Ascension',
+ 'AD' => 'Andorra',
+ 'AE' => 'De forente arabiske emirater',
+ 'AF' => 'Afghanistan',
+ 'AG' => 'Antigua og Barbuda',
+ 'AI' => 'Anguilla',
+ 'AL' => 'Albania',
+ 'AM' => 'Armenia',
+ 'AN' => 'De nederlandske antiller',
+ 'AO' => 'Angola',
+ 'AQ' => 'Antarktis',
+ 'AR' => 'Argentina',
+ 'AS' => 'Amerikansk Samoa',
+ 'AT' => 'Østerrike',
+ 'AU' => 'Australia',
+ 'AW' => 'Aruba',
+ 'AX' => 'Åland',
+ 'AZ' => 'Aserbajdsjan',
+ 'BA' => 'Bosnia-Hercegovina',
+ 'BB' => 'Barbados',
+ 'BD' => 'Bangladesh',
+ 'BE' => 'Belgia',
+ 'BF' => 'Burkina Faso',
+ 'BG' => 'Bulgaria',
+ 'BH' => 'Bahrain',
+ 'BI' => 'Burundi',
+ 'BJ' => 'Benin',
+ 'BL' => 'Saint-Barthélemy',
+ 'BM' => 'Bermuda',
+ 'BN' => 'Brunei',
+ 'BO' => 'Bolivia',
+ 'BQ' => 'Karibisk Nederland',
+ 'BR' => 'Brasil',
+ 'BS' => 'Bahamas',
+ 'BT' => 'Bhutan',
+ 'BV' => 'Bouvetøya',
+ 'BW' => 'Botswana',
+ 'BY' => 'Hviterussland',
+ 'BZ' => 'Belize',
+ 'CA' => 'Canada',
+ 'CC' => 'Kokosøyene',
+ 'CD' => 'Kongo-Kinshasa',
+ 'CF' => 'Den sentralafrikanske republikk',
+ 'CG' => 'Kongo-Brazzaville',
+ 'CH' => 'Sveits',
+ 'CI' => 'Elfenbenskysten',
+ 'CK' => 'Cookøyene',
+ 'CL' => 'Chile',
+ 'CM' => 'Kamerun',
+ 'CN' => 'Kina',
+ 'CO' => 'Colombia',
+ 'CP' => 'Clippertonøya',
+ 'CR' => 'Costa Rica',
+ 'CU' => 'Cuba',
+ 'CV' => 'Kapp Verde',
+ 'CW' => 'Curaçao',
+ 'CX' => 'Christmasøya',
+ 'CY' => 'Kypros',
+ 'CZ' => 'Tsjekkia',
+ 'DE' => 'Tyskland',
+ 'DG' => 'Diego Garcia',
+ 'DJ' => 'Djibouti',
+ 'DK' => 'Danmark',
+ 'DM' => 'Dominica',
+ 'DO' => 'Den dominikanske republikk',
+ 'DZ' => 'Algerie',
+ 'EA' => 'Ceuta og Melilla',
+ 'EC' => 'Ecuador',
+ 'EE' => 'Estland',
+ 'EG' => 'Egypt',
+ 'EH' => 'Vest-Sahara',
+ 'ER' => 'Eritrea',
+ 'ES' => 'Spania',
+ 'ET' => 'Etiopia',
+ 'EU' => 'EU',
+ 'FI' => 'Finland',
+ 'FJ' => 'Fiji',
+ 'FK' => 'Falklandsøyene',
+ 'FM' => 'Mikronesiaføderasjonen',
+ 'FO' => 'Færøyene',
+ 'FR' => 'Frankrike',
+ 'GA' => 'Gabon',
+ 'GB' => 'Storbritannia',
+ 'GD' => 'Grenada',
+ 'GE' => 'Georgia',
+ 'GF' => 'Fransk Guyana',
+ 'GG' => 'Guernsey',
+ 'GH' => 'Ghana',
+ 'GI' => 'Gibraltar',
+ 'GL' => 'Grønland',
+ 'GM' => 'Gambia',
+ 'GN' => 'Guinea',
+ 'GP' => 'Guadeloupe',
+ 'GQ' => 'Ekvatorial-Guinea',
+ 'GR' => 'Hellas',
+ 'GS' => 'Sør-Georgia og Sør-Sandwichøyene',
+ 'GT' => 'Guatemala',
+ 'GU' => 'Guam',
+ 'GW' => 'Guinea-Bissau',
+ 'GY' => 'Guyana',
+ 'HK' => 'Hongkong',
+ 'HM' => 'Heard- og McDonaldøyene',
+ 'HN' => 'Honduras',
+ 'HR' => 'Kroatia',
+ 'HT' => 'Haiti',
+ 'HU' => 'Ungarn',
+ 'IC' => 'Kanariøyene',
+ 'ID' => 'Indonesia',
+ 'IE' => 'Irland',
+ 'IL' => 'Israel',
+ 'IM' => 'Man',
+ 'IN' => 'India',
+ 'IO' => 'Britiske territorier i Indiahavet',
+ 'IQ' => 'Irak',
+ 'IR' => 'Iran',
+ 'IS' => 'Island',
+ 'IT' => 'Italia',
+ 'JE' => 'Jersey',
+ 'JM' => 'Jamaica',
+ 'JO' => 'Jordan',
+ 'JP' => 'Japan',
+ 'KE' => 'Kenya',
+ 'KG' => 'Kirgisistan',
+ 'KH' => 'Kambodsja',
+ 'KI' => 'Kiribati',
+ 'KM' => 'Komorene',
+ 'KN' => 'St. Kitts og Nevis',
+ 'KP' => 'Nord-Korea',
+ 'KR' => 'Sør-Korea',
+ 'KW' => 'Kuwait',
+ 'KY' => 'Caymanøyene',
+ 'KZ' => 'Kasakhstan',
+ 'LA' => 'Laos',
+ 'LB' => 'Libanon',
+ 'LC' => 'St. Lucia',
+ 'LI' => 'Liechtenstein',
+ 'LK' => 'Sri Lanka',
+ 'LR' => 'Liberia',
+ 'LS' => 'Lesotho',
+ 'LT' => 'Litauen',
+ 'LU' => 'Luxemburg',
+ 'LV' => 'Latvia',
+ 'LY' => 'Libya',
+ 'MA' => 'Marokko',
+ 'MC' => 'Monaco',
+ 'MD' => 'Moldova',
+ 'ME' => 'Montenegro',
+ 'MF' => 'Saint-Martin',
+ 'MG' => 'Madagaskar',
+ 'MH' => 'Marshalløyene',
+ 'MK' => 'Makedonia',
+ 'ML' => 'Mali',
+ 'MM' => 'Myanmar (Burma)',
+ 'MN' => 'Mongolia',
+ 'MO' => 'Macao',
+ 'MP' => 'Nord-Marianene',
+ 'MQ' => 'Martinique',
+ 'MR' => 'Mauritania',
+ 'MS' => 'Montserrat',
+ 'MT' => 'Malta',
+ 'MU' => 'Mauritius',
+ 'MV' => 'Maldivene',
+ 'MW' => 'Malawi',
+ 'MX' => 'Mexico',
+ 'MY' => 'Malaysia',
+ 'MZ' => 'Mosambik',
+ 'NA' => 'Namibia',
+ 'NC' => 'Ny-Caledonia',
+ 'NE' => 'Niger',
+ 'NF' => 'Norfolkøya',
+ 'NG' => 'Nigeria',
+ 'NI' => 'Nicaragua',
+ 'NL' => 'Nederland',
+ 'NO' => 'Norge',
+ 'NP' => 'Nepal',
+ 'NR' => 'Nauru',
+ 'NU' => 'Niue',
+ 'NZ' => 'New Zealand',
+ 'OM' => 'Oman',
+ 'PA' => 'Panama',
+ 'PE' => 'Peru',
+ 'PF' => 'Fransk Polynesia',
+ 'PG' => 'Papua Ny-Guinea',
+ 'PH' => 'Filippinene',
+ 'PK' => 'Pakistan',
+ 'PL' => 'Polen',
+ 'PM' => 'St. Pierre og Miquelon',
+ 'PN' => 'Pitcairn',
+ 'PR' => 'Puerto Rico',
+ 'PS' => 'Palestina',
+ 'PT' => 'Portugal',
+ 'PW' => 'Palau',
+ 'PY' => 'Paraguay',
+ 'QA' => 'Qatar',
+ 'QO' => 'ytre Oseania',
+ 'RE' => 'Réunion',
+ 'RO' => 'Romania',
+ 'RS' => 'Serbia',
+ 'RU' => 'Russland',
+ 'RW' => 'Rwanda',
+ 'SA' => 'Saudi-Arabia',
+ 'SB' => 'Salomonøyene',
+ 'SC' => 'Seychellene',
+ 'SD' => 'Sudan',
+ 'SE' => 'Sverige',
+ 'SG' => 'Singapore',
+ 'SH' => 'St. Helena',
+ 'SI' => 'Slovenia',
+ 'SJ' => 'Svalbard og Jan Mayen',
+ 'SK' => 'Slovakia',
+ 'SL' => 'Sierra Leone',
+ 'SM' => 'San Marino',
+ 'SN' => 'Senegal',
+ 'SO' => 'Somalia',
+ 'SR' => 'Surinam',
+ 'SS' => 'Sør-Sudan',
+ 'ST' => 'São Tomé og Príncipe',
+ 'SV' => 'El Salvador',
+ 'SX' => 'Sint Maarten',
+ 'SY' => 'Syria',
+ 'SZ' => 'Swaziland',
+ 'TA' => 'Tristan da Cunha',
+ 'TC' => 'Turks- og Caicosøyene',
+ 'TD' => 'Tsjad',
+ 'TF' => 'De franske sørterritorier',
+ 'TG' => 'Togo',
+ 'TH' => 'Thailand',
+ 'TJ' => 'Tadsjikistan',
+ 'TK' => 'Tokelau',
+ 'TL' => 'Øst-Timor',
+ 'TM' => 'Turkmenistan',
+ 'TN' => 'Tunisia',
+ 'TO' => 'Tonga',
+ 'TR' => 'Tyrkia',
+ 'TT' => 'Trinidad og Tobago',
+ 'TV' => 'Tuvalu',
+ 'TW' => 'Taiwan',
+ 'TZ' => 'Tanzania',
+ 'UA' => 'Ukraina',
+ 'UG' => 'Uganda',
+ 'UM' => 'USAs ytre øyer',
+ 'US' => 'USA',
+ 'UY' => 'Uruguay',
+ 'UZ' => 'Usbekistan',
+ 'VA' => 'Vatikanstaten',
+ 'VC' => 'St. Vincent og Grenadinene',
+ 'VE' => 'Venezuela',
+ 'VG' => 'De britiske jomfruøyene',
+ 'VI' => 'De amerikanske jomfruøyene',
+ 'VN' => 'Vietnam',
+ 'VU' => 'Vanuatu',
+ 'WF' => 'Wallis og Futuna',
+ 'WS' => 'Samoa',
+ 'XK' => 'Kosovo',
+ 'YE' => 'Jemen',
+ 'YT' => 'Mayotte',
+ 'ZA' => 'Sør-Afrika',
+ 'ZM' => 'Zambia',
+ 'ZW' => 'Zimbabwe',
+);
+
+$timeUnits = array(
+ 'day-future-one' => 'om {0} døgn',
+ 'day-future-other' => 'om {0} døgn',
+ 'day-narrow-future-one' => '+{0} d.',
+ 'day-narrow-future-other' => '+{0} d.',
+ 'day-narrow-past-one' => '-{0} d.',
+ 'day-narrow-past-other' => '-{0} d.',
+ 'day-one' => '{0} døgn',
+ 'day-other' => '{0} døgn',
+ 'day-past-one' => 'for {0} døgn siden',
+ 'day-past-other' => 'for {0} døgn siden',
+ 'day-short-future-one' => 'om {0} døgn',
+ 'day-short-future-other' => 'om {0} døgn',
+ 'day-short-past-one' => 'for {0} døgn siden',
+ 'day-short-past-other' => 'for {0} døgn siden',
+ 'hour-future-one' => 'om {0} time',
+ 'hour-future-other' => 'om {0} timer',
+ 'hour-narrow-future-one' => '+{0} t',
+ 'hour-narrow-future-other' => '+{0} t',
+ 'hour-narrow-past-one' => '-{0} t',
+ 'hour-narrow-past-other' => '-{0} t',
+ 'hour-one' => '{0} time',
+ 'hour-other' => '{0} timer',
+ 'hour-past-one' => 'for {0} time siden',
+ 'hour-past-other' => 'for {0} timer siden',
+ 'hour-short-future-one' => 'om {0} t',
+ 'hour-short-future-other' => 'om {0} t',
+ 'hour-short-past-one' => 'for {0} t siden',
+ 'hour-short-past-other' => 'for {0} t siden',
+ 'microsecond-one' => '{0} mikrosekund',
+ 'microsecond-other' => '{0} mikrosekunder',
+ 'millisecond-one' => '{0} millisekund',
+ 'millisecond-other' => '{0} millisekunder',
+ 'minute-future-one' => 'om {0} minutt',
+ 'minute-future-other' => 'om {0} minutter',
+ 'minute-narrow-future-one' => '+{0} min',
+ 'minute-narrow-future-other' => '+{0} min',
+ 'minute-narrow-past-one' => '-{0} min',
+ 'minute-narrow-past-other' => '-{0} min',
+ 'minute-one' => '{0} minutt',
+ 'minute-other' => '{0} minutter',
+ 'minute-past-one' => 'for {0} minutt siden',
+ 'minute-past-other' => 'for {0} minutter siden',
+ 'minute-short-future-one' => 'om {0} min',
+ 'minute-short-future-other' => 'om {0} min',
+ 'minute-short-past-one' => 'for {0} min siden',
+ 'minute-short-past-other' => 'for {0} min siden',
+ 'month-future-one' => 'om {0} måned',
+ 'month-future-other' => 'om {0} måneder',
+ 'month-narrow-future-one' => '+{0} md.',
+ 'month-narrow-future-other' => '+{0} md.',
+ 'month-narrow-past-one' => '-{0} md.',
+ 'month-narrow-past-other' => '-{0} md.',
+ 'month-one' => '{0} måned',
+ 'month-other' => '{0} måneder',
+ 'month-past-one' => 'for {0} måned siden',
+ 'month-past-other' => 'for {0} måneder siden',
+ 'month-short-future-one' => 'om {0} måneder',
+ 'month-short-future-other' => 'om {0} måneder',
+ 'month-short-past-one' => 'for {0} måneder siden',
+ 'month-short-past-other' => 'for {0} måneder siden',
+ 'nanosecond-one' => '{0} nanosekund',
+ 'nanosecond-other' => '{0} nanosekunder',
+ 'quarter-future-one' => 'om {0} kvartal',
+ 'quarter-future-other' => 'om {0} kvartaler',
+ 'quarter-narrow-future-one' => '+{0} kv.',
+ 'quarter-narrow-future-other' => '+{0} kv.',
+ 'quarter-narrow-past-one' => '–{0} kv.',
+ 'quarter-narrow-past-other' => '–{0} kv.',
+ 'quarter-past-one' => 'for {0} kvartal siden',
+ 'quarter-past-other' => 'for {0} kvartaler siden',
+ 'quarter-short-future-one' => 'om {0} kv.',
+ 'quarter-short-future-other' => 'om {0} kv.',
+ 'quarter-short-past-one' => 'for {0} kv. siden',
+ 'quarter-short-past-other' => 'for {0} kv. siden',
+ 'second-future-one' => 'om {0} sekund',
+ 'second-future-other' => 'om {0} sekunder',
+ 'second-narrow-future-one' => '+{0} s',
+ 'second-narrow-future-other' => '+{0} s',
+ 'second-narrow-past-one' => '-{0} s',
+ 'second-narrow-past-other' => '-{0} s',
+ 'second-one' => '{0} sekund',
+ 'second-other' => '{0} sekunder',
+ 'second-past-one' => 'for {0} sekund siden',
+ 'second-past-other' => 'for {0} sekunder siden',
+ 'second-short-future-one' => 'om {0} sek',
+ 'second-short-future-other' => 'om {0} sek',
+ 'second-short-past-one' => 'for {0} sek siden',
+ 'second-short-past-other' => 'for {0} sek siden',
+ 'week-future-one' => 'om {0} uke',
+ 'week-future-other' => 'om {0} uker',
+ 'week-narrow-future-one' => '+{0} u.',
+ 'week-narrow-future-other' => '+{0} u.',
+ 'week-narrow-past-one' => '-{0} u.',
+ 'week-narrow-past-other' => '-{0} u.',
+ 'week-one' => '{0} uke',
+ 'week-other' => '{0} uker',
+ 'week-past-one' => 'for {0} uke siden',
+ 'week-past-other' => 'for {0} uker siden',
+ 'week-short-future-one' => 'om {0} uke',
+ 'week-short-future-other' => 'om {0} uker',
+ 'week-short-past-one' => 'for {0} uke siden',
+ 'week-short-past-other' => 'for {0} uker siden',
+ 'year-future-one' => 'om {0} år',
+ 'year-future-other' => 'om {0} år',
+ 'year-narrow-future-one' => '+{0} år',
+ 'year-narrow-future-other' => '+{0} år',
+ 'year-narrow-past-one' => '–{0} år',
+ 'year-narrow-past-other' => '–{0} år',
+ 'year-one' => '{0} år',
+ 'year-other' => '{0} år',
+ 'year-past-one' => 'for {0} år siden',
+ 'year-past-other' => 'for {0} år siden',
+ 'year-short-future-one' => 'om {0} år',
+ 'year-short-future-other' => 'om {0} år',
+ 'year-short-past-one' => 'for {0} år siden',
+ 'year-short-past-other' => 'for {0} år siden',
+);
diff --git a/MLEB/cldr/CldrNames/CldrNamesNe.php b/MLEB/cldr/CldrNames/CldrNamesNe.php
new file mode 100644
index 00000000..eeb2e748
--- /dev/null
+++ b/MLEB/cldr/CldrNames/CldrNamesNe.php
@@ -0,0 +1,920 @@
+<?php
+
+$languageNames = array(
+ 'ab' => 'अब्खाजियाली',
+ 'af' => 'अफ्रिकान्स',
+ 'agq' => 'आघेम',
+ 'ak' => 'आकान',
+ 'am' => 'अम्हारिक',
+ 'ar' => 'अरबी',
+ 'ar-001' => 'आधुनिक मानक अरबी',
+ 'arn' => 'मापुचे',
+ 'as' => 'आसामी',
+ 'asa' => 'आसु',
+ 'az' => 'अजरबैजानी',
+ 'ba' => 'बाश्किर',
+ 'be' => 'वेलारूसी',
+ 'bem' => 'बेम्बा',
+ 'bez' => 'बेना',
+ 'bg' => 'बुल्गेरियाली',
+ 'bm' => 'बाम्बारा',
+ 'bn' => 'बंगाली',
+ 'bo' => 'तिब्बती',
+ 'br' => 'ब्रेटन',
+ 'brx' => 'बोडो',
+ 'bs' => 'बोस्नियाली',
+ 'ca' => 'क्याटालन',
+ 'cgg' => 'चिगा',
+ 'chr' => 'चेरोकी',
+ 'ckb' => 'सोरानी कुर्दिश',
+ 'co' => 'कोर्सिकन',
+ 'cs' => 'चेक',
+ 'cy' => 'वेल्श',
+ 'da' => 'डेनिश',
+ 'dav' => 'ताइता',
+ 'de' => 'जर्मन',
+ 'de-at' => 'अष्ट्रियन जर्मन',
+ 'de-ch' => 'स्वीस हाई जर्मन',
+ 'dje' => 'जर्मा',
+ 'dsb' => 'तल्लो सोर्बियन',
+ 'dua' => 'दुवाला',
+ 'dyo' => 'जोला-फोनिल',
+ 'dz' => 'जोङ्खा',
+ 'ebu' => 'एम्बु',
+ 'ee' => 'इवि',
+ 'el' => 'ग्रीक',
+ 'en' => 'अंग्रेजी',
+ 'eo' => 'एस्पेरान्तो',
+ 'es' => 'स्पेनिस',
+ 'es-es' => 'युरोपेली स्पेनिस',
+ 'et' => 'इस्टोनियाली',
+ 'eu' => 'बास्क',
+ 'fa' => 'फारसी',
+ 'fi' => 'फिनिश',
+ 'fil' => 'फिलिपिनी',
+ 'fj' => 'फिजियाली',
+ 'fo' => 'फारोज',
+ 'fr' => 'फ्रान्सेली',
+ 'fy' => 'फ्रिजीयन',
+ 'ga' => 'आइरिश',
+ 'gag' => 'गगाउज',
+ 'gd' => 'स्कट्स गाएलिक',
+ 'gl' => 'गलिसियाली',
+ 'gn' => 'गुजरानी',
+ 'gsw' => 'स्वीस जर्मन',
+ 'gu' => 'गुजराती',
+ 'guz' => 'गुसी',
+ 'gv' => 'मान्क्स',
+ 'ha' => 'हाउसा',
+ 'haw' => 'हवाइयन',
+ 'he' => 'हिब्रु',
+ 'hi' => 'हिन्दी',
+ 'hr' => 'क्रोएशियाली',
+ 'hsb' => 'माथिल्लो सोर्बियन',
+ 'ht' => 'हैटियाली',
+ 'hu' => 'हंग्रीयाली',
+ 'hy' => 'आर्मेनियाली',
+ 'ia' => 'इन्टर्लिङ्गुआ',
+ 'id' => 'इन्डोनेसियाली',
+ 'ie' => 'अन्तरभाषी',
+ 'ig' => 'इग्बो',
+ 'ii' => 'सिचुआन यि',
+ 'is' => 'आइसल्यान्डिक',
+ 'it' => 'इटालियन',
+ 'iu' => 'लनुक्टिटुट',
+ 'ja' => 'जापानी',
+ 'jgo' => 'गोम्बा',
+ 'jmc' => 'माचामे',
+ 'jv' => 'जाभानिज',
+ 'ka' => 'जर्जियाली',
+ 'kab' => 'काबिल',
+ 'kam' => 'काम्बा',
+ 'kde' => 'माकोन्डे',
+ 'kea' => 'काबुभेर्डियानु',
+ 'khq' => 'कोयरा चिनी',
+ 'ki' => 'किकुयु',
+ 'kk' => 'काजाख',
+ 'kl' => 'कालालिसुट',
+ 'kln' => 'कालेन्जिन',
+ 'km' => 'खमेर',
+ 'kn' => 'कन्नाडा',
+ 'ko' => 'कोरियाली',
+ 'koi' => 'कोमी-पर्म्याक',
+ 'kok' => 'कोन्कानी',
+ 'ks' => 'काश्मीरी',
+ 'ksb' => 'शाम्बाला',
+ 'ksf' => 'बाफिया',
+ 'ku' => 'कुर्दिश',
+ 'kw' => 'कोर्निश',
+ 'ky' => 'किर्गिज',
+ 'la' => 'ल्याटिन',
+ 'lag' => 'लाङ्गी',
+ 'lb' => 'लक्जेम्बर्गिस',
+ 'lg' => 'गान्डा',
+ 'lkt' => 'लोकोता',
+ 'ln' => 'लिंगाला',
+ 'lo' => 'लाओ',
+ 'lt' => 'लिथुआनियाली',
+ 'lu' => 'लुबा-काताङ्गा',
+ 'luo' => 'लुओ',
+ 'luy' => 'लुइया',
+ 'lv' => 'लात्भियाली',
+ 'mas' => 'मासाल',
+ 'mer' => 'मेरू',
+ 'mfe' => 'मोरिसेन',
+ 'mg' => 'मलागासी',
+ 'mgh' => 'माखुवा-मिट्टो',
+ 'mgo' => 'मेटा',
+ 'mi' => 'माओरी',
+ 'mk' => 'म्याकेडोनियन',
+ 'ml' => 'मलयालम',
+ 'mn' => 'मंगोल',
+ 'moh' => 'मोहक',
+ 'mr' => 'मराठी',
+ 'ms' => 'मलाया',
+ 'mt' => 'माल्टिज',
+ 'mua' => 'मुन्डाङ',
+ 'my' => 'वर्मेली',
+ 'naq' => 'नामा',
+ 'nb' => 'नर्वेली बोकमाल',
+ 'nd' => 'उत्तर नेडेबेले',
+ 'ne' => 'नेपाली',
+ 'nl' => 'डच',
+ 'nl-be' => 'फ्लेमिश',
+ 'nmg' => 'क्वासियो',
+ 'nn' => 'नर्वेली नाइनोर्स्क',
+ 'no' => 'नर्वेजियाली',
+ 'nqo' => 'नको',
+ 'nus' => 'नुएर',
+ 'nyn' => 'न्यान्कोल',
+ 'oc' => 'अक्सिटन',
+ 'om' => 'ओरोमो',
+ 'or' => 'ओरिया',
+ 'pa' => 'पंजाबी',
+ 'pl' => 'पोलिश',
+ 'ps' => 'पाश्तो',
+ 'pt' => 'पोर्तुगी',
+ 'pt-pt' => 'पोर्तुगी (युरोप)',
+ 'qu' => 'क्वेचुवा',
+ 'quc' => 'किचे',
+ 'rm' => 'रोमानिश',
+ 'rn' => 'रूण्डी',
+ 'ro' => 'रोमानियाली',
+ 'ro-md' => 'माल्डाभियन',
+ 'rof' => 'रोम्बो',
+ 'ru' => 'रूसी',
+ 'rw' => 'किन्यारवान्डा',
+ 'rwk' => 'र्‌वा',
+ 'sa' => 'संस्कृत',
+ 'saq' => 'साम्बुरू',
+ 'sbp' => 'साङ्गु',
+ 'sd' => 'सिन्धी',
+ 'se' => 'उत्तरी सामी',
+ 'seh' => 'सेना',
+ 'ses' => 'कोयराबोरो सेन्नी',
+ 'sg' => 'साङ्गो',
+ 'shi' => 'टाचेल्हिट',
+ 'si' => 'सिन्हाला',
+ 'sk' => 'स्लोभाकियाली',
+ 'sl' => 'स्लोभेनियाली',
+ 'sma' => 'दक्षिणी सामी',
+ 'smj' => 'लुले सामी',
+ 'smn' => 'इनारी सामी',
+ 'sms' => 'स्कोइट सामी',
+ 'sn' => 'शोना',
+ 'so' => 'सोमाली',
+ 'sq' => 'अल्बेनियन',
+ 'sr' => 'सर्बियाली',
+ 'su' => 'सुडानी',
+ 'sv' => 'स्विडिश',
+ 'sw' => 'स्वाहिली',
+ 'swc' => 'कोङ्गो स्वाहिली',
+ 'ta' => 'तामिल',
+ 'te' => 'तेलुगु',
+ 'teo' => 'टेसो',
+ 'tg' => 'ताजिक',
+ 'th' => 'थाई',
+ 'ti' => 'तिग्रीन्या',
+ 'tk' => 'टर्कमेन',
+ 'tlh' => 'क्लिङ्गन',
+ 'to' => 'टोङ्गन',
+ 'tr' => 'टर्किश',
+ 'tt' => 'तातार',
+ 'twq' => 'तासावाक',
+ 'tzm' => 'केन्द्रीय एट्लास टामाजिघट',
+ 'ug' => 'उइघुर',
+ 'uk' => 'युक्रेनी',
+ 'und' => 'अज्ञात भाषा',
+ 'ur' => 'उर्दु',
+ 'uz' => 'उज्बेकी',
+ 'vai' => 'भाइ',
+ 'vi' => 'भियतनामी',
+ 'vun' => 'भुन्जो',
+ 'wo' => 'वुलुफ',
+ 'xh' => 'खोसा',
+ 'xog' => 'सोगा',
+ 'yi' => 'यिद्दिस',
+ 'yo' => 'योरूवा',
+ 'zgh' => 'मानक मोरोक्कोन तामाजिघट',
+ 'zh' => 'चिनियाँ',
+ 'zh-hans' => 'सरलिकृत चिनियाँ',
+ 'zh-hant' => 'परम्परागत चिनियाँ',
+ 'zu' => 'जुलु',
+ 'zxx' => 'भाषिक सामग्री छैन',
+);
+
+$currencyNames = array(
+ 'AED' => 'संयुक्त अरब एमिराट्स डिर्हाम',
+ 'AFA' => 'अफ्गानी(१९२७–२००२)',
+ 'AFN' => 'अफ्गान अफ्गानी',
+ 'ALL' => 'अल्बानियन लेक',
+ 'AMD' => 'आर्मेनियाली ड्राम',
+ 'ANG' => 'नेदरल्याण्ड्स एन्टिलियन गिल्डर',
+ 'AOA' => 'एङ्गोलान क्वान्जा',
+ 'ARS' => 'अर्जेन्टिनी पेसो',
+ 'AUD' => 'अष्ट्रेलियन डलर',
+ 'AWG' => 'आरूबन फ्लोरिन',
+ 'AZN' => 'अजरबैजानी मानात',
+ 'BAM' => 'बोस्निया-हर्जगोभिनिया रूपान्तरयोग्य मार्क',
+ 'BBD' => 'बर्बाडियन डलर',
+ 'BDT' => 'बङ्गलादेशी टाका',
+ 'BGN' => 'बुल्गारियाली लेभ',
+ 'BHD' => 'बाहारैनी डिनार',
+ 'BIF' => 'बुरूण्डियाली फ्रान्क',
+ 'BMD' => 'बर्मुडन डलर',
+ 'BND' => 'ब्रुनाई डलर',
+ 'BOB' => 'बोलिभियन बोलिभियानो',
+ 'BRL' => 'ब्राजिलियन रियल',
+ 'BSD' => 'बहामियाली डलर',
+ 'BTN' => 'भुटानी एन्‌गुल्ट्रुम',
+ 'BWP' => 'बोट्सवानान पुला',
+ 'BYR' => 'बेलारूसी रूबल',
+ 'BZD' => 'वेलिज डलर',
+ 'CAD' => 'क्यानाडियाली डलर',
+ 'CDF' => 'कङ्गोली फ्रान्क',
+ 'CHF' => 'स्विस् फ्रैङ्क',
+ 'CLP' => 'चिलियन पेसो',
+ 'CNY' => 'चिनिँया युआन',
+ 'COP' => 'कोलम्वियन पेसो',
+ 'CRC' => 'कोष्टारिकन कोलोन',
+ 'CUC' => 'क्यूवाली रूपान्तरणयोग्य पेसो',
+ 'CUP' => 'क्यूवाली पेसो',
+ 'CVE' => 'केप भर्डियन एस्कुडो',
+ 'CZK' => 'चेख गणतञ्त्र कोरूना',
+ 'DJF' => 'जिबौंटियाली फ्रान्क',
+ 'DKK' => 'ड्यानिश क्रोन',
+ 'DOP' => 'डोमिनिकन पेसो',
+ 'DZD' => 'अल्जेरियाली डिनार',
+ 'EGP' => 'इजिप्सियन पाउन्ड',
+ 'ERN' => 'एरिट्रियन नाक्फा',
+ 'ETB' => 'इथियोपियाली बिर',
+ 'EUR' => 'युरो',
+ 'FJD' => 'फिजीयाली डलर',
+ 'FKP' => 'फक्‌ल्याण्ड टापुहरूका पाउन्ड',
+ 'GBP' => 'बेलायती पाउण्ड स्टर्लिङ',
+ 'GEL' => 'जर्जियाली लारी',
+ 'GHS' => 'घानाली सेडी',
+ 'GIP' => 'जिब्राल्टर पाउण्ड',
+ 'GMD' => 'गाम्वियाली डालासी',
+ 'GNF' => 'गिनियाली फ्रान्क',
+ 'GTQ' => 'ग्वाटेमाला क्वेट्जाल',
+ 'GYD' => 'गाइनिज डलर',
+ 'HKD' => 'हङकङ डलर',
+ 'HNL' => 'होन्डुरान लेम्पिरा',
+ 'HRK' => 'क्रोएशियाली कुना',
+ 'HTG' => 'हैटियाली गुर्ड',
+ 'HUF' => 'हङ्गेरियन फोरिन्ट',
+ 'IDR' => 'इण्डोनेशियाली रूपियाँ',
+ 'ILS' => 'इजरायली नयाँ शेकेल',
+ 'INR' => 'भारती रूपिँया',
+ 'IQD' => 'इराकी डिनार',
+ 'IRR' => 'इरानियाली रियाल',
+ 'ISK' => 'आइसल्याण्डिक क्रोना',
+ 'JMD' => 'जमाइकाली डलर',
+ 'JOD' => 'जोर्डानियाली डलर',
+ 'JPY' => 'जापानी येन',
+ 'KES' => 'केन्याली शिलिङ',
+ 'KGS' => 'किर्गिस्तानी सोम',
+ 'KHR' => 'कम्बोडिनेयाली रियल',
+ 'KMF' => 'कोमोरियन फ्रान्क',
+ 'KPW' => 'उत्तर कोरियाली वन',
+ 'KRW' => 'दक्षिण कोरियाली वन',
+ 'KWD' => 'कुवेती डिनार',
+ 'KYD' => 'केम्यान टापुहरूका डलर',
+ 'KZT' => 'काजाखस्तानी टेन्ज',
+ 'LAK' => 'लाओशियन किप',
+ 'LBP' => 'लेबनाली पाउन्ड',
+ 'LKR' => 'श्रीलङ्काली रूपिया',
+ 'LRD' => 'लिबेरियाली डलर',
+ 'LTL' => 'लिथुनियाली लिटास',
+ 'LVL' => 'लाट्भियाली लाट्स',
+ 'LYD' => 'लिवियाली डिनार',
+ 'MAD' => 'मोरोक्काली डिर्‌हाम',
+ 'MDL' => 'माल्डोभन लेउ',
+ 'MGA' => 'मालागासी एरिआरी',
+ 'MKD' => 'म्यासेडोनियाली डेनार',
+ 'MMK' => 'म्यान्मा क्याट',
+ 'MNT' => 'मङ्गोलियाली टुग्रिक',
+ 'MOP' => 'माकानिज पटाका',
+ 'MRO' => 'माउरिटानियानली औगुइया',
+ 'MUR' => 'माउरिटियन रूपी',
+ 'MVR' => 'मालडिभियाली रूफियाँ',
+ 'MWK' => 'मलाविअन क्वाचा',
+ 'MXN' => 'मेक्सिकन पेसो',
+ 'MYR' => 'मलेशियाली रिङ्गेट',
+ 'MZN' => 'मोजाम्विकन मेटिकल',
+ 'NAD' => 'नामिबियन डलर',
+ 'NGN' => 'नाइजेरियन नाइरा',
+ 'NIO' => 'निकारागुवान कोर्डोवा',
+ 'NOK' => 'नर्वेजियाली क्रोन',
+ 'NPR' => 'नेपाली रूपैयाँ',
+ 'NZD' => 'न्यूजिल्याण्ड डलर',
+ 'OMR' => 'ओमनी रियल',
+ 'PAB' => 'पानामानियाली बाल्बोआ',
+ 'PEN' => 'पेरूभियाली न्यूभो सोल',
+ 'PGK' => 'पपुआ न्यू गिनियाली किना',
+ 'PHP' => 'फिलिपिनी पेसो',
+ 'PKR' => 'पाकिस्तानी रूपियाँ',
+ 'PLN' => 'पोलिश ज्लोटाई',
+ 'PYG' => 'पारागुयाली गुरानी',
+ 'QAR' => 'कतारी रियल',
+ 'RON' => 'रोमानियाली लेऊ',
+ 'RSD' => 'सर्बियाली डिनार',
+ 'RUB' => 'रूसी रूबल',
+ 'RWF' => 'र्‌वाण्डाली फ्रान्क',
+ 'SAR' => 'साउदी रियालहरू',
+ 'SBD' => 'सोलोमन टापुहरूका डलर',
+ 'SCR' => 'सेचेलोइस रूपी',
+ 'SDG' => 'सुडानी पाउन्ड',
+ 'SEK' => 'स्विडिश क्रोना',
+ 'SGD' => 'सिङ्गापुर डलर',
+ 'SHP' => 'सेन्ट हेलेना पाउन्ड',
+ 'SLL' => 'सियरा लियोनेन लियोन',
+ 'SOS' => 'सोमाली शिलिङ',
+ 'SRD' => 'सुरिनामिज डलर',
+ 'SSP' => 'दक्षिण सुडानी पाउन्ड',
+ 'STD' => 'साओ टोम र प्रिन्सिप डोब्रा',
+ 'SYP' => 'सिरियाली पाउन्ड',
+ 'SZL' => 'स्वाजी लिलान्गेनी',
+ 'THB' => 'थाई भाट',
+ 'TJS' => 'ताजिक्स्तानी सोमोनी',
+ 'TMT' => 'टुर्क्मेनिस्तानी मानात',
+ 'TND' => 'टुनिसियाली डिनार',
+ 'TOP' => 'टङ्गन पाङ्गा',
+ 'TRY' => 'टर्किश लिरा',
+ 'TTD' => 'त्रिनिडाड र टोबागो डलर',
+ 'TWD' => 'नयाँ ताइवान डलर',
+ 'TZS' => 'ताञ्जानियाली शिलिङ',
+ 'UAH' => 'युक्रेनी हिर्भिनिया',
+ 'UGX' => 'युगाण्डाली शिलिङ',
+ 'USD' => 'अमेरिकी डलर',
+ 'UYU' => 'उरूगुवायाली पेसो',
+ 'UZS' => 'उज्बेकिस्तान सोम',
+ 'VEF' => 'भेनेजुएलन बोलिभर',
+ 'VND' => 'भियतनामी डङ्',
+ 'VUV' => 'भानुआतू भातु',
+ 'WST' => 'सामोआन ताला',
+ 'XAF' => 'सीएफ्‌ए फ्रान्क बीइएसी',
+ 'XCD' => 'पूर्वी क्यारिबियन डलर',
+ 'XOF' => 'सीएफ्‌ए फ्रान्क बीसीइएओ',
+ 'XPF' => 'सीएफ्‌पी फ्रान्क',
+ 'XXX' => 'अज्ञात मुद्रा',
+ 'YER' => 'येमेनी रियाल',
+ 'ZAR' => 'दक्षिण अफ्रिकी र्‍यान्ड',
+ 'ZMK' => 'जाम्बियाली क्वाचा (१९६८–२०१२)',
+ 'ZMW' => 'जाम्बियाली क्वाचा',
+);
+
+$currencySymbols = array(
+ 'AED' => 'AED',
+ 'AFN' => 'AFN',
+ 'ALL' => 'ALL',
+ 'AMD' => 'AMD',
+ 'ANG' => 'ANG',
+ 'AOA' => 'AOA',
+ 'ARS' => 'ARS',
+ 'AUD' => 'A$',
+ 'AWG' => 'AWG',
+ 'AZN' => 'AZN',
+ 'BAM' => 'BAM',
+ 'BBD' => 'BBD',
+ 'BDT' => 'BDT',
+ 'BGN' => 'BGN',
+ 'BHD' => 'BHD',
+ 'BIF' => 'BIF',
+ 'BMD' => 'BMD',
+ 'BND' => 'BND',
+ 'BOB' => 'BOB',
+ 'BRL' => 'R$',
+ 'BSD' => 'BSD',
+ 'BTN' => 'BTN',
+ 'BWP' => 'BWP',
+ 'BYR' => 'BYR',
+ 'BZD' => 'BZD',
+ 'CAD' => 'CA$',
+ 'CDF' => 'CDF',
+ 'CHF' => 'CHF',
+ 'CLP' => 'CLP',
+ 'CNY' => 'CN¥',
+ 'COP' => 'COP',
+ 'CRC' => 'CRC',
+ 'CUC' => 'CUC',
+ 'CUP' => 'CUP',
+ 'CVE' => 'CVE',
+ 'CZK' => 'CZK',
+ 'DJF' => 'DJF',
+ 'DKK' => 'DKK',
+ 'DOP' => 'DOP',
+ 'DZD' => 'DZD',
+ 'EGP' => 'EGP',
+ 'ERN' => 'ERN',
+ 'ETB' => 'ETB',
+ 'EUR' => '€',
+ 'FJD' => 'FJD',
+ 'FKP' => 'FKP',
+ 'GBP' => '£',
+ 'GEL' => 'GEL',
+ 'GHS' => 'GHS',
+ 'GIP' => 'GIP',
+ 'GMD' => 'GMD',
+ 'GNF' => 'GNF',
+ 'GTQ' => 'GTQ',
+ 'GYD' => 'GYD',
+ 'HKD' => 'HK$',
+ 'HNL' => 'HNL',
+ 'HRK' => 'HRK',
+ 'HTG' => 'HTG',
+ 'HUF' => 'HUF',
+ 'IDR' => 'IDR',
+ 'ILS' => '₪',
+ 'INR' => '₹',
+ 'IQD' => 'IQD',
+ 'IRR' => 'IRR',
+ 'ISK' => 'ISK',
+ 'JMD' => 'JMD',
+ 'JOD' => 'JOD',
+ 'JPY' => 'JP¥',
+ 'KES' => 'KES',
+ 'KGS' => 'KGS',
+ 'KHR' => 'KHR',
+ 'KMF' => 'KMF',
+ 'KPW' => 'KPW',
+ 'KRW' => '₩',
+ 'KWD' => 'KWD',
+ 'KYD' => 'KYD',
+ 'KZT' => 'KZT',
+ 'LAK' => 'LAK',
+ 'LBP' => 'LBP',
+ 'LKR' => 'LKR',
+ 'LRD' => 'LRD',
+ 'LTL' => 'LTL',
+ 'LVL' => 'LVL',
+ 'LYD' => 'LYD',
+ 'MAD' => 'MAD',
+ 'MDL' => 'MDL',
+ 'MGA' => 'MGA',
+ 'MKD' => 'MKD',
+ 'MMK' => 'MMK',
+ 'MNT' => 'MNT',
+ 'MOP' => 'MOP',
+ 'MRO' => 'MRO',
+ 'MUR' => 'MUR',
+ 'MVR' => 'MVR',
+ 'MWK' => 'MWK',
+ 'MXN' => 'MX$',
+ 'MYR' => 'MYR',
+ 'MZN' => 'MZN',
+ 'NAD' => 'NAD',
+ 'NGN' => 'NGN',
+ 'NIO' => 'NIO',
+ 'NOK' => 'NOK',
+ 'NPR' => 'नेरू',
+ 'NZD' => 'NZ$',
+ 'OMR' => 'OMR',
+ 'PAB' => 'PAB',
+ 'PEN' => 'PEN',
+ 'PGK' => 'PGK',
+ 'PHP' => 'PHP',
+ 'PKR' => 'PKR',
+ 'PLN' => 'PLN',
+ 'PYG' => 'PYG',
+ 'QAR' => 'QAR',
+ 'RON' => 'RON',
+ 'RSD' => 'RSD',
+ 'RUB' => 'RUB',
+ 'RWF' => 'RWF',
+ 'SAR' => 'SAR',
+ 'SBD' => 'SBD',
+ 'SCR' => 'SCR',
+ 'SDG' => 'SDG',
+ 'SEK' => 'SEK',
+ 'SGD' => 'SGD',
+ 'SHP' => 'SHP',
+ 'SLL' => 'SLL',
+ 'SOS' => 'SOS',
+ 'SRD' => 'SRD',
+ 'SSP' => 'SSP',
+ 'STD' => 'STD',
+ 'SYP' => 'SYP',
+ 'SZL' => 'SZL',
+ 'THB' => '฿',
+ 'TJS' => 'TJS',
+ 'TMT' => 'TMT',
+ 'TND' => 'TND',
+ 'TOP' => 'TOP',
+ 'TRY' => 'TRY',
+ 'TTD' => 'TTD',
+ 'TWD' => 'NT$',
+ 'TZS' => 'TZS',
+ 'UAH' => 'UAH',
+ 'UGX' => 'UGX',
+ 'USD' => 'US$',
+ 'UYU' => 'UYU',
+ 'UZS' => 'UZS',
+ 'VEF' => 'VEF',
+ 'VND' => '₫',
+ 'VUV' => 'VUV',
+ 'WST' => 'WST',
+ 'XAF' => 'FCFA',
+ 'XCD' => 'EC$',
+ 'XOF' => 'CFA',
+ 'XPF' => 'CFPF',
+ 'YER' => 'YER',
+ 'ZAR' => 'ZAR',
+ 'ZMW' => 'ZMW',
+);
+
+$countryNames = array(
+ 'AC' => 'एस्केन्सन टापु',
+ 'AD' => 'अन्डोर्रा',
+ 'AE' => 'संयुक्त अरब इमिराट्स',
+ 'AF' => 'अफगानिस्तान',
+ 'AG' => 'एन्टिगुआ र बारबुडा',
+ 'AI' => 'आङ्गुइला',
+ 'AL' => 'अल्बानिया',
+ 'AM' => 'आर्मेनिया',
+ 'AN' => 'नेदरल्याण्ड्स एण्टिलिस',
+ 'AO' => 'अङ्गोला',
+ 'AQ' => 'अन्टारतिका',
+ 'AR' => 'अर्जेन्टिना',
+ 'AS' => 'अमेरिकी समोआ',
+ 'AT' => 'अष्ट्रिया',
+ 'AU' => 'अष्ट्रेलिया',
+ 'AW' => 'आरूबा',
+ 'AX' => 'अलान्ड टापुहरु',
+ 'AZ' => 'अजरबैजान',
+ 'BA' => 'बोस्निया एण्ड हर्जगोभिनिया',
+ 'BB' => 'बार्बाडोस',
+ 'BD' => 'बङ्गलादेश',
+ 'BE' => 'बेल्जियम',
+ 'BF' => 'बर्किना फासो',
+ 'BG' => 'बुल्गेरिया',
+ 'BH' => 'बहराइन',
+ 'BI' => 'बुरूण्डी',
+ 'BJ' => 'बेनिन',
+ 'BL' => 'सेन्ट बार्थालेमी',
+ 'BM' => 'बर्मुडा',
+ 'BN' => 'ब्रुनाइ',
+ 'BO' => 'बोलिभिया',
+ 'BQ' => 'क्यारिवियन नेदरल्याण्ड्स',
+ 'BR' => 'ब्राजिल',
+ 'BS' => 'बहामास',
+ 'BT' => 'भुटान',
+ 'BV' => 'बुभेट टापु',
+ 'BW' => 'बोट्स्वाना',
+ 'BY' => 'बेलारूस',
+ 'BZ' => 'बेलिज',
+ 'CA' => 'क्यानाडा',
+ 'CC' => 'कोकोस (किलिंग) टापुहरु',
+ 'CD' => 'कोङ्गो-किन्शासा',
+ 'CF' => 'केन्द्रीय अफ्रिकी गणतन्त्र',
+ 'CG' => 'कोङ्गो - ब्राज्जाभिल्ले',
+ 'CH' => 'स्विजरल्याण्ड',
+ 'CI' => 'आइभरी कोस्ट',
+ 'CK' => 'कुक टापुहरु',
+ 'CL' => 'चिली',
+ 'CM' => 'क्यामरून',
+ 'CN' => 'चीन',
+ 'CO' => 'कोलोम्बिया',
+ 'CP' => 'क्लिप्पेर्टन टापु',
+ 'CR' => 'कोष्टारिका',
+ 'CU' => 'क्युबा',
+ 'CV' => 'केप भर्डे',
+ 'CW' => 'कुराकाओ',
+ 'CX' => 'क्रिष्टमस टापु',
+ 'CY' => 'साइप्रस',
+ 'CZ' => 'चेक गणतन्त्र',
+ 'DE' => 'जर्मनी',
+ 'DG' => 'डियगो गार्सिया',
+ 'DJ' => 'डिजिबुटी',
+ 'DK' => 'डेनमार्क',
+ 'DM' => 'डोमिनिका',
+ 'DO' => 'डोमिनिकन गणतन्त्र',
+ 'DZ' => 'अल्जेरिया',
+ 'EA' => 'सिउटा र मेलिला',
+ 'EC' => 'इक्वडेर',
+ 'EE' => 'इस्टोनिया',
+ 'EG' => 'इजिप्ट',
+ 'EH' => 'पश्चिमी साहारा',
+ 'ER' => 'एरित्रिया',
+ 'ES' => 'स्पेन',
+ 'ET' => 'इथियोपिया',
+ 'EU' => 'युरोपियन युनियन',
+ 'FI' => 'फिन्ल्याण्ड',
+ 'FJ' => 'फिजी',
+ 'FK' => 'फकल्याण्ड टापुहरु',
+ 'FM' => 'माइक्रोनेसिया',
+ 'FO' => 'फारोर टापुहरु',
+ 'FR' => 'फ्रान्स',
+ 'GA' => 'गावोन',
+ 'GB' => 'बेलायत',
+ 'GD' => 'ग्रेनाडा',
+ 'GE' => 'जर्जिया',
+ 'GF' => 'फ्रान्सेली गायना',
+ 'GG' => 'गुएर्नसे',
+ 'GH' => 'घाना',
+ 'GI' => 'जिब्राल्टार',
+ 'GL' => 'ग्रिनल्याण्ड',
+ 'GM' => 'गाम्विया',
+ 'GN' => 'गिनी',
+ 'GP' => 'ग्वाडेलुप',
+ 'GQ' => 'भू-मध्यीय गिनी',
+ 'GR' => 'ग्रिस',
+ 'GS' => 'दक्षिण जर्जिया र दक्षिण स्यान्डवीच टापुहरू',
+ 'GT' => 'ग्वाटेमाला',
+ 'GU' => 'गुवाम',
+ 'GW' => 'गिनी-बिसाउ',
+ 'GY' => 'गुयाना',
+ 'HK' => 'हङकङ',
+ 'HM' => 'हर्ड टापु एण्ड म्याकडोनाल्ड टापुहरु',
+ 'HN' => 'हन्डुरास',
+ 'HR' => 'क्रोएशिया',
+ 'HT' => 'हैटी',
+ 'HU' => 'हङ्गेरी',
+ 'IC' => 'क्यानारी टापुहरू',
+ 'ID' => 'इन्डोनेशिया',
+ 'IE' => 'आयरल्याण्ड',
+ 'IL' => 'इजरायल',
+ 'IM' => 'आइज्ले अफ् म्यान',
+ 'IN' => 'भारत',
+ 'IO' => 'बेलायती हिन्द महासागर क्षेत्र',
+ 'IQ' => 'इराक',
+ 'IR' => 'इरान',
+ 'IS' => 'आइस्ल्याण्ड',
+ 'IT' => 'इटाली',
+ 'JE' => 'जर्सी',
+ 'JM' => 'जमाइका',
+ 'JO' => 'जोर्डन',
+ 'JP' => 'जापान',
+ 'KE' => 'केन्या',
+ 'KG' => 'किर्गिस्थान',
+ 'KH' => 'कम्बोडिया',
+ 'KI' => 'किरिबाटी',
+ 'KM' => 'कोमोरोस',
+ 'KN' => 'सेन्ट किट्स र नेभिस',
+ 'KP' => 'उत्तर कोरिया',
+ 'KR' => 'दक्षिण कोरिया',
+ 'KW' => 'कुवेत',
+ 'KY' => 'केयमान टापु',
+ 'KZ' => 'काजाकस्तान',
+ 'LA' => 'लाओस',
+ 'LB' => 'लेबनन',
+ 'LC' => 'सेन्ट लुसिया',
+ 'LI' => 'लिएखटेन्स्टाइन',
+ 'LK' => 'श्रीलङ्का',
+ 'LR' => 'लाइबेरिया',
+ 'LS' => 'लेसोथो',
+ 'LT' => 'लिथुअनिया',
+ 'LU' => 'लक्जेमबर्ग',
+ 'LV' => 'लाट्भिया',
+ 'LY' => 'लिबिया',
+ 'MA' => 'मोरोक्को',
+ 'MC' => 'मोनाको',
+ 'MD' => 'माल्डोभा',
+ 'ME' => 'मोन्टेनेग्रो',
+ 'MF' => 'सेन्ट मार्टिन',
+ 'MG' => 'मडागास्कर',
+ 'MH' => 'मार्शल टापुहरु',
+ 'MK' => 'म्याकेडोनिया',
+ 'ML' => 'माली',
+ 'MM' => 'म्यान्मार (बर्मा)',
+ 'MN' => 'मङ्गोलिया',
+ 'MO' => 'मकावो',
+ 'MP' => 'उत्तरी मारिआना टापु',
+ 'MQ' => 'मार्टिनिक',
+ 'MR' => 'माउरिटानिया',
+ 'MS' => 'मोन्टसेर्राट',
+ 'MT' => 'माल्टा',
+ 'MU' => 'माउरिटस',
+ 'MV' => 'माल्दिभ्स',
+ 'MW' => 'मालावी',
+ 'MX' => 'मेक्सिको',
+ 'MY' => 'मलेसिया',
+ 'MZ' => 'मोजाम्बिक',
+ 'NA' => 'नामिबिया',
+ 'NC' => 'नयाँ कालेडोनिया',
+ 'NE' => 'नाइजर',
+ 'NF' => 'नोरफोल्क टापु',
+ 'NG' => 'नाइजेरिया',
+ 'NI' => 'निकारागुवा',
+ 'NL' => 'नेदरल्याण्ड्स',
+ 'NO' => 'नर्वे',
+ 'NP' => 'नेपाल',
+ 'NR' => 'नाउरू',
+ 'NU' => 'नियुइ',
+ 'NZ' => 'न्युजिल्याण्ड',
+ 'OM' => 'ओमन',
+ 'PA' => 'पनामा',
+ 'PE' => 'पेरू',
+ 'PF' => 'फ्रान्सेली पोलिनेसिया',
+ 'PG' => 'पपुआ न्यू गाइनिया',
+ 'PH' => 'फिलिपिन्स',
+ 'PK' => 'पाकिस्तान',
+ 'PL' => 'पोल्याण्ड',
+ 'PM' => 'सेन्ट पिर्रे र मिक्केलोन',
+ 'PN' => 'पिटकाइर्न टापुहरु',
+ 'PR' => 'पुएर्टो रिको',
+ 'PS' => 'प्यालेसटाइन',
+ 'PT' => 'पोर्चुगल',
+ 'PW' => 'पलाउ',
+ 'PY' => 'प्याराग्वे',
+ 'QA' => 'कतार',
+ 'QO' => 'बाह्य ओसनिया',
+ 'RE' => 'रियुनियन',
+ 'RO' => 'रोमानिया',
+ 'RS' => 'सर्बिया',
+ 'RU' => 'रूस',
+ 'RW' => 'रवाण्डा',
+ 'SA' => 'साउदी अरब',
+ 'SB' => 'सोलोमोन टापुहरु',
+ 'SC' => 'सेचेलेस',
+ 'SD' => 'सुडान',
+ 'SE' => 'स्विडेन',
+ 'SG' => 'सिङ्गापुर',
+ 'SH' => 'सेन्ट हेलेना',
+ 'SI' => 'स्लोभेनिया',
+ 'SJ' => 'सभाल्बार्ड र जान मायेन',
+ 'SK' => 'स्लोभाकिया',
+ 'SL' => 'सिएर्रा लिओन',
+ 'SM' => 'सान् मारिनो',
+ 'SN' => 'सेनेगाल',
+ 'SO' => 'सोमालिया',
+ 'SR' => 'सुरिनेम',
+ 'SS' => 'दक्षिणी सुडान',
+ 'ST' => 'साओ टोमे र प्रिन्सिप',
+ 'SV' => 'एल् साल्भाडोर',
+ 'SX' => 'सिन्ट मार्टेन',
+ 'SY' => 'सिरिया',
+ 'SZ' => 'स्वाजिल्याण्ड',
+ 'TA' => 'ट्रिस्टान डा कुन्हा',
+ 'TC' => 'तुर्क र काइकोस टापु',
+ 'TD' => 'चाड',
+ 'TF' => 'फ्रान्सेली दक्षिणी क्षेत्रहरु',
+ 'TG' => 'टोगो',
+ 'TH' => 'थाइल्याण्ड',
+ 'TJ' => 'ताजिकिस्तान',
+ 'TK' => 'तोकेलाउ',
+ 'TL' => 'टिमोर-लेस्टे',
+ 'TM' => 'तुर्कमेनिस्तान',
+ 'TN' => 'ट्युनिसिया',
+ 'TO' => 'टोंगा',
+ 'TR' => 'टर्की',
+ 'TT' => 'त्रिनिडाड एण्ड टोबागो',
+ 'TV' => 'तुभालु',
+ 'TW' => 'ताइवान',
+ 'TZ' => 'तान्जानिया',
+ 'UA' => 'युक्रेन',
+ 'UG' => 'युगाण्डा',
+ 'UM' => 'संयुक्त राज्य बाह्य टापुहरु',
+ 'US' => 'अमेरिका',
+ 'UY' => 'उरूग्वे',
+ 'UZ' => 'उज्बेकिस्तान',
+ 'VA' => 'भेटिकन सिटी',
+ 'VC' => 'सेन्ट भिन्सेन्ट र ग्रेनाडिन्स',
+ 'VE' => 'भेनेजुएला',
+ 'VG' => 'बेलायती भर्जिन टापुहरु',
+ 'VI' => 'संयुक्त राज्य भर्जिन टापुहरु',
+ 'VN' => 'भिएतनाम',
+ 'VU' => 'भानुआतु',
+ 'WF' => 'वालिस र फुटुना',
+ 'WS' => 'सामोआ',
+ 'XK' => 'कोसोवो',
+ 'YE' => 'येमेन',
+ 'YT' => 'मायोट्ट',
+ 'ZA' => 'दक्षिण अफ्रिका',
+ 'ZM' => 'जाम्बिया',
+ 'ZW' => 'जिम्बाबे',
+);
+
+$timeUnits = array(
+ 'day-future-one' => '{0} दिनमा',
+ 'day-future-other' => '{0} दिनमा',
+ 'day-narrow-future-one' => '{0} दिनमा',
+ 'day-narrow-future-other' => '{0} दिनमा',
+ 'day-narrow-past-one' => '{0} दिन पहिले',
+ 'day-narrow-past-other' => '{0} दिन पहिले',
+ 'day-one' => '{0} दिन',
+ 'day-other' => '{0} दिन',
+ 'day-past-one' => '{0} दिन पहिले',
+ 'day-past-other' => '{0} दिन पहिले',
+ 'day-short-future-one' => '{0} दिनमा',
+ 'day-short-future-other' => '{0} दिनमा',
+ 'day-short-past-one' => '{0} दिन पहिले',
+ 'day-short-past-other' => '{0} दिन पहिले',
+ 'hour-future-one' => '{0} घण्टामा',
+ 'hour-future-other' => '{0} घण्टामा',
+ 'hour-narrow-future-one' => '{0} घण्टामा',
+ 'hour-narrow-future-other' => '{0} घण्टामा',
+ 'hour-narrow-past-one' => '{0} घण्टा पहिले',
+ 'hour-narrow-past-other' => '{0} घण्टा पहिले',
+ 'hour-one' => '{0} घण्टा',
+ 'hour-other' => '{0} घण्टा',
+ 'hour-past-one' => '{0} घण्टा पहिले',
+ 'hour-past-other' => '{0} घण्टा पहिले',
+ 'hour-short-future-one' => '{0} घण्टामा',
+ 'hour-short-future-other' => '{0} घण्टामा',
+ 'hour-short-past-one' => '{0} घण्टा पहिले',
+ 'hour-short-past-other' => '{0} घण्टा पहिले',
+ 'microsecond-one' => '{0}माइक्रोसेकेण्ड',
+ 'microsecond-other' => '{0}माइक्रोसेकेण्ड',
+ 'millisecond-one' => '{0} मिली सेकेण्ड',
+ 'millisecond-other' => '{0} मिली सेकेण्ड',
+ 'minute-future-one' => '{0} मिनेटमा',
+ 'minute-future-other' => '{0} मिनेटमा',
+ 'minute-one' => '{0} मिनेट',
+ 'minute-other' => '{0} मिनेट',
+ 'minute-past-one' => '{0} मिनेट पहिले',
+ 'minute-past-other' => '{0} मिनेट पहिले',
+ 'minute-short-future-one' => '{0} मिनेटमा',
+ 'minute-short-future-other' => '{0} मिनेटमा',
+ 'minute-short-past-one' => '{0} मिनेट पहिले',
+ 'minute-short-past-other' => '{0} मिनेट पहिले',
+ 'month-future-one' => '{0} महिनामा',
+ 'month-future-other' => '{0} महिनामा',
+ 'month-narrow-future-one' => '{0} महिनामा',
+ 'month-narrow-future-other' => '{0} महिनामा',
+ 'month-narrow-past-one' => '{0} महिना पहिले',
+ 'month-narrow-past-other' => '{0} महिना पहिले',
+ 'month-one' => '{0} महिना',
+ 'month-other' => '{0} महिना',
+ 'month-past-one' => '{0} महिना पहिले',
+ 'month-past-other' => '{0} महिना पहिले',
+ 'month-short-future-one' => '{0} महिनामा',
+ 'month-short-future-other' => '{0} महिनामा',
+ 'month-short-past-one' => '{0} महिना पहिले',
+ 'month-short-past-other' => '{0} महिना पहिले',
+ 'nanosecond-one' => '{0}न्यानोसेकेण्ड',
+ 'nanosecond-other' => '{0}न्यानोसेकेण्ड',
+ 'quarter-future-one' => '+{0} सत्रमा',
+ 'quarter-future-other' => '{0}सत्रमा',
+ 'quarter-narrow-future-one' => '{0}सत्रमा',
+ 'quarter-narrow-future-other' => '{0}सत्रमा',
+ 'quarter-narrow-past-one' => '{0}सत्र अघि',
+ 'quarter-narrow-past-other' => '{0}सत्र अघि',
+ 'quarter-past-one' => '{0}सत्र अघि',
+ 'quarter-past-other' => '{0}सत्र अघि',
+ 'quarter-short-future-one' => '{0}सत्रमा',
+ 'quarter-short-future-other' => '{0}सत्रमा',
+ 'second-future-one' => '{0} सेकेण्डमा',
+ 'second-future-other' => '{0} सेकेण्डमा',
+ 'second-narrow-future-one' => '{0} सेकेण्डमा',
+ 'second-narrow-future-other' => '{0} सेकेण्डमा',
+ 'second-narrow-past-one' => '{0} सेकेण्ड पहिले',
+ 'second-narrow-past-other' => '{0} सेकेण्ड पहिले',
+ 'second-one' => '{0} सेकेण्ड',
+ 'second-other' => '{0} सेकेण्ड',
+ 'second-past-one' => '{0} सेकेण्ड पहिले',
+ 'second-past-other' => '{0} सेकेण्ड पहिले',
+ 'second-short-future-one' => '{0} सेकेण्डमा',
+ 'second-short-future-other' => '{0} सेकेण्डमा',
+ 'second-short-past-one' => '{0} सेकेण्ड पहिले',
+ 'second-short-past-other' => '{0} सेकेण्ड पहिले',
+ 'week-future-one' => '{0} हप्तामा',
+ 'week-future-other' => '{0} हप्तामा',
+ 'week-narrow-future-one' => '{0} हप्तामा',
+ 'week-narrow-future-other' => '{0} हप्तामा',
+ 'week-narrow-past-one' => '{0} हप्ता पहिले',
+ 'week-narrow-past-other' => '{0} हप्ता पहिले',
+ 'week-one' => '{0} हप्ता',
+ 'week-other' => '{0} हप्ता',
+ 'week-past-one' => '{0} हप्ता पहिले',
+ 'week-past-other' => '{0} हप्ता पहिले',
+ 'week-short-future-one' => '{0} हप्तामा',
+ 'week-short-future-other' => '{0} हप्तामा',
+ 'week-short-past-one' => '{0} हप्ता पहिले',
+ 'week-short-past-other' => '{0} हप्ता पहिले',
+ 'year-future-one' => '{0} वर्षमा',
+ 'year-future-other' => '{0} वर्षमा',
+ 'year-narrow-future-one' => '{0} वर्षमा',
+ 'year-narrow-future-other' => '{0} वर्षमा',
+ 'year-narrow-past-one' => '{0} वर्ष अघि',
+ 'year-narrow-past-other' => '{0} वर्ष अघि',
+ 'year-one' => '{0} वर्ष',
+ 'year-other' => '{0} वर्ष',
+ 'year-past-one' => '{0} वर्ष अघि',
+ 'year-past-other' => '{0} वर्ष अघि',
+ 'year-short-future-one' => '{0} वर्षमा',
+ 'year-short-future-other' => '{0} वर्षमा',
+ 'year-short-past-one' => '{0} वर्ष अघि',
+ 'year-short-past-other' => '{0} वर्ष अघि',
+);
diff --git a/MLEB/cldr/CldrNames/CldrNamesNl.php b/MLEB/cldr/CldrNames/CldrNamesNl.php
new file mode 100644
index 00000000..7f0dbe90
--- /dev/null
+++ b/MLEB/cldr/CldrNames/CldrNamesNl.php
@@ -0,0 +1,1591 @@
+<?php
+
+$languageNames = array(
+ 'aa' => 'Afar',
+ 'ab' => 'Abchazisch',
+ 'ace' => 'Atjehs',
+ 'ach' => 'Akoli',
+ 'ada' => 'Adangme',
+ 'ady' => 'Adygees',
+ 'ae' => 'Avestisch',
+ 'aeb' => 'Tunesisch Arabisch',
+ 'af' => 'Afrikaans',
+ 'afh' => 'Afrihili',
+ 'agq' => 'Aghem',
+ 'ain' => 'Ainu',
+ 'ak' => 'Akan',
+ 'akk' => 'Akkadisch',
+ 'akz' => 'Alabama',
+ 'ale' => 'Aleoetisch',
+ 'aln' => 'Gegisch',
+ 'alt' => 'Zuid-Altaïsch',
+ 'am' => 'Amhaars',
+ 'an' => 'Aragonees',
+ 'ang' => 'Oudengels',
+ 'anp' => 'Angika',
+ 'ar' => 'Arabisch',
+ 'ar-001' => 'modern standaard Arabisch',
+ 'arc' => 'Aramees',
+ 'arn' => 'Mapudungun',
+ 'aro' => 'Araona',
+ 'arp' => 'Arapaho',
+ 'arq' => 'Algerijns Arabisch',
+ 'arw' => 'Arawak',
+ 'ary' => 'Marokkaans Arabisch',
+ 'arz' => 'Egyptisch Arabisch',
+ 'as' => 'Assamees',
+ 'asa' => 'Asu',
+ 'ase' => 'Amerikaanse Gebarentaal',
+ 'ast' => 'Asturisch',
+ 'av' => 'Avarisch',
+ 'avk' => 'Kotava',
+ 'awa' => 'Awadhi',
+ 'ay' => 'Aymara',
+ 'az' => 'Azerbeidzjaans',
+ 'azb' => 'Zuid-Azerbeidzjaans Arabisch',
+ 'ba' => 'Basjkiers',
+ 'bal' => 'Beloetsji',
+ 'ban' => 'Balinees',
+ 'bar' => 'Beiers',
+ 'bas' => 'Basa',
+ 'bax' => 'Bamoun',
+ 'bbc' => 'Batak Toba',
+ 'bbj' => 'Ghomala’',
+ 'be' => 'Wit-Russisch',
+ 'bej' => 'Beja',
+ 'bem' => 'Bemba',
+ 'bew' => 'Betawi',
+ 'bez' => 'Bena',
+ 'bfd' => 'Bafut',
+ 'bfq' => 'Badaga',
+ 'bg' => 'Bulgaars',
+ 'bho' => 'Bhojpuri',
+ 'bi' => 'Bislama',
+ 'bik' => 'Bikol',
+ 'bin' => 'Bini',
+ 'bjn' => 'Banjar',
+ 'bkm' => 'Kom',
+ 'bla' => 'Siksika',
+ 'bm' => 'Bambara',
+ 'bn' => 'Bengaals',
+ 'bo' => 'Tibetaans',
+ 'bpy' => 'Bishnupriya',
+ 'bqi' => 'Bakhtiari',
+ 'br' => 'Bretons',
+ 'bra' => 'Braj',
+ 'brh' => 'Brahui',
+ 'brx' => 'Bodo',
+ 'bs' => 'Bosnisch',
+ 'bss' => 'Akoose',
+ 'bua' => 'Boerjatisch',
+ 'bug' => 'Buginees',
+ 'bum' => 'Bulu',
+ 'byn' => 'Blin',
+ 'byv' => 'Medumba',
+ 'ca' => 'Catalaans',
+ 'cad' => 'Caddo',
+ 'car' => 'Caribisch',
+ 'cay' => 'Cayuga',
+ 'cch' => 'Atsam',
+ 'ce' => 'Tsjetsjeens',
+ 'ceb' => 'Cebuano',
+ 'cgg' => 'Chiga',
+ 'ch' => 'Chamorro',
+ 'chb' => 'Chibcha',
+ 'chg' => 'Chagatai',
+ 'chk' => 'Chuukees',
+ 'chm' => 'Mari',
+ 'chn' => 'Chinook Jargon',
+ 'cho' => 'Choctaw',
+ 'chp' => 'Chipewyan',
+ 'chr' => 'Cherokee',
+ 'chy' => 'Cheyenne',
+ 'ckb' => 'Soranî',
+ 'co' => 'Corsicaans',
+ 'cop' => 'Koptisch',
+ 'cps' => 'Capiznon',
+ 'cr' => 'Cree',
+ 'crh' => 'Krim-Tataars',
+ 'cs' => 'Tsjechisch',
+ 'csb' => 'Kasjoebisch',
+ 'cu' => 'Kerkslavisch',
+ 'cv' => 'Tsjoevasjisch',
+ 'cy' => 'Welsh',
+ 'da' => 'Deens',
+ 'dak' => 'Dakota',
+ 'dar' => 'Dargwa',
+ 'dav' => 'Taita',
+ 'de' => 'Duits',
+ 'de-at' => 'Oostenrijks Duits',
+ 'de-ch' => 'Zwitsers Hoogduits',
+ 'del' => 'Delaware',
+ 'den' => 'Slavey',
+ 'dgr' => 'Dogrib',
+ 'din' => 'Dinka',
+ 'dje' => 'Zarma',
+ 'doi' => 'Dogri',
+ 'dsb' => 'Nedersorbisch',
+ 'dtp' => 'Dusun',
+ 'dua' => 'Duala',
+ 'dum' => 'Middelnederlands',
+ 'dv' => 'Divehi',
+ 'dyo' => 'Jola-Fonyi',
+ 'dyu' => 'Dyula',
+ 'dz' => 'Dzongkha',
+ 'dzg' => 'Dazaga',
+ 'ebu' => 'Embu',
+ 'ee' => 'Ewe',
+ 'efi' => 'Efik',
+ 'egl' => 'Emiliano',
+ 'egy' => 'Oudegyptisch',
+ 'eka' => 'Ekajuk',
+ 'el' => 'Grieks',
+ 'elx' => 'Elamitisch',
+ 'en' => 'Engels',
+ 'en-au' => 'Australisch Engels',
+ 'en-ca' => 'Canadees Engels',
+ 'en-gb' => 'Brits Engels',
+ 'en-us' => 'Amerikaans Engels',
+ 'enm' => 'Middelengels',
+ 'eo' => 'Esperanto',
+ 'es' => 'Spaans',
+ 'es-419' => 'Latijns-Amerikaans Spaans',
+ 'es-es' => 'Europees Spaans',
+ 'es-mx' => 'Mexicaans Spaans',
+ 'esu' => 'Yupik',
+ 'et' => 'Estisch',
+ 'eu' => 'Baskisch',
+ 'ewo' => 'Ewondo',
+ 'ext' => 'Extremeens',
+ 'fa' => 'Perzisch',
+ 'fan' => 'Fang',
+ 'fat' => 'Fanti',
+ 'ff' => 'Fulah',
+ 'fi' => 'Fins',
+ 'fil' => 'Filipijns',
+ 'fit' => 'Tornedal-Fins',
+ 'fj' => 'Fijisch',
+ 'fo' => 'Faeröers',
+ 'fon' => 'Fon',
+ 'fr' => 'Frans',
+ 'fr-ca' => 'Canadees Frans',
+ 'fr-ch' => 'Zwitsers Frans',
+ 'frc' => 'Cajun-Frans',
+ 'frm' => 'Middelfrans',
+ 'fro' => 'Oudfrans',
+ 'frp' => 'Arpitaans',
+ 'frr' => 'Noord-Fries',
+ 'frs' => 'Oost-Fries',
+ 'fur' => 'Friulisch',
+ 'fy' => 'Fries',
+ 'ga' => 'Iers',
+ 'gaa' => 'Ga',
+ 'gag' => 'Gagaoezisch',
+ 'gan' => 'Gan',
+ 'gay' => 'Gayo',
+ 'gba' => 'Gbaya',
+ 'gbz' => 'Zoroastrisch Dari',
+ 'gd' => 'Schots-Gaelisch',
+ 'gez' => 'Ge’ez',
+ 'gil' => 'Gilbertees',
+ 'gl' => 'Galicisch',
+ 'glk' => 'Gilaki',
+ 'gmh' => 'Middelhoogduits',
+ 'gn' => 'Guaraní',
+ 'goh' => 'Oudhoogduits',
+ 'gom' => 'Goa Konkani',
+ 'gon' => 'Gondi',
+ 'gor' => 'Gorontalo',
+ 'got' => 'Gothisch',
+ 'grb' => 'Grebo',
+ 'grc' => 'Oudgrieks',
+ 'gsw' => 'Zwitserduits',
+ 'gu' => 'Gujarati',
+ 'guc' => 'Wayuu',
+ 'gur' => 'Gurune',
+ 'guz' => 'Gusii',
+ 'gv' => 'Manx',
+ 'gwi' => 'Gwichʼin',
+ 'ha' => 'Hausa',
+ 'hai' => 'Haida',
+ 'hak' => 'Hakka',
+ 'haw' => 'Hawaïaans',
+ 'he' => 'Hebreeuws',
+ 'hi' => 'Hindi',
+ 'hif' => 'Fijisch Hindi',
+ 'hil' => 'Hiligaynon',
+ 'hit' => 'Hettitisch',
+ 'hmn' => 'Hmong',
+ 'ho' => 'Hiri Motu',
+ 'hr' => 'Kroatisch',
+ 'hsb' => 'Oppersorbisch',
+ 'hsn' => 'Xiangyu',
+ 'ht' => 'Haïtiaans Creools',
+ 'hu' => 'Hongaars',
+ 'hup' => 'Hupa',
+ 'hy' => 'Armeens',
+ 'hz' => 'Herero',
+ 'ia' => 'Interlingua',
+ 'iba' => 'Iban',
+ 'ibb' => 'Ibibio',
+ 'id' => 'Indonesisch',
+ 'ie' => 'Interlingue',
+ 'ig' => 'Igbo',
+ 'ii' => 'Yi',
+ 'ik' => 'Inupiaq',
+ 'ilo' => 'Iloko',
+ 'inh' => 'Ingoesjetisch',
+ 'io' => 'Ido',
+ 'is' => 'IJslands',
+ 'it' => 'Italiaans',
+ 'iu' => 'Inuktitut',
+ 'izh' => 'Ingrisch',
+ 'ja' => 'Japans',
+ 'jam' => 'Jamaicaans Creools',
+ 'jbo' => 'Lojban',
+ 'jgo' => 'Ngomba',
+ 'jmc' => 'Machame',
+ 'jpr' => 'Judeo-Perzisch',
+ 'jrb' => 'Judeo-Arabisch',
+ 'jut' => 'Jutlands',
+ 'jv' => 'Javaans',
+ 'ka' => 'Georgisch',
+ 'kaa' => 'Karakalpaks',
+ 'kab' => 'Kabylisch',
+ 'kac' => 'Kachin',
+ 'kaj' => 'Jju',
+ 'kam' => 'Kamba',
+ 'kaw' => 'Kawi',
+ 'kbd' => 'Kabardisch',
+ 'kbl' => 'Kanembu',
+ 'kcg' => 'Tyap',
+ 'kde' => 'Makonde',
+ 'kea' => 'Kaapverdisch Creools',
+ 'ken' => 'Kenyang',
+ 'kfo' => 'Koro',
+ 'kg' => 'Kongo',
+ 'kgp' => 'Kaingang',
+ 'kha' => 'Khasi',
+ 'kho' => 'Khotanees',
+ 'khq' => 'Koyra Chiini',
+ 'khw' => 'Khowar',
+ 'ki' => 'Gikuyu',
+ 'kiu' => 'Kirmanckî',
+ 'kj' => 'Kuanyama',
+ 'kk' => 'Kazachs',
+ 'kkj' => 'Kako',
+ 'kl' => 'Groenlands',
+ 'kln' => 'Kalenjin',
+ 'km' => 'Khmer',
+ 'kmb' => 'Kimbundu',
+ 'kn' => 'Kannada',
+ 'ko' => 'Koreaans',
+ 'koi' => 'Komi-Permjaaks',
+ 'kok' => 'Konkani',
+ 'kos' => 'Kosraeaans',
+ 'kpe' => 'Kpelle',
+ 'kr' => 'Kanuri',
+ 'krc' => 'Karatsjaj-Balkarisch',
+ 'kri' => 'Krio',
+ 'krj' => 'Kinaray-a',
+ 'krl' => 'Karelisch',
+ 'kru' => 'Kurukh',
+ 'ks' => 'Kasjmiri',
+ 'ksb' => 'Shambala',
+ 'ksf' => 'Bafia',
+ 'ksh' => 'Kölsch',
+ 'ku' => 'Koerdisch',
+ 'kum' => 'Koemuks',
+ 'kut' => 'Kutenai',
+ 'kv' => 'Komi',
+ 'kw' => 'Cornish',
+ 'ky' => 'Kirgizisch',
+ 'la' => 'Latijn',
+ 'lad' => 'Ladino',
+ 'lag' => 'Langi',
+ 'lah' => 'Lahnda',
+ 'lam' => 'Lamba',
+ 'lb' => 'Luxemburgs',
+ 'lez' => 'Lezgisch',
+ 'lfn' => 'Lingua Franca Nova',
+ 'lg' => 'Luganda',
+ 'li' => 'Limburgs',
+ 'lij' => 'Ligurisch',
+ 'liv' => 'Lijfs',
+ 'lkt' => 'Lakota',
+ 'lmo' => 'Lombardisch',
+ 'ln' => 'Lingala',
+ 'lo' => 'Laotiaans',
+ 'lol' => 'Mongo',
+ 'loz' => 'Lozi',
+ 'lt' => 'Litouws',
+ 'ltg' => 'Letgaals',
+ 'lu' => 'Luba-Katanga',
+ 'lua' => 'Luba-Lulua',
+ 'lui' => 'Luiseno',
+ 'lun' => 'Lunda',
+ 'luo' => 'Luo',
+ 'lus' => 'Mizo',
+ 'luy' => 'Luyia',
+ 'lv' => 'Lets',
+ 'lzh' => 'Klassiek Chinees',
+ 'lzz' => 'Lazisch',
+ 'mad' => 'Madoerees',
+ 'maf' => 'Mafa',
+ 'mag' => 'Magahi',
+ 'mai' => 'Maithili',
+ 'mak' => 'Makassaars',
+ 'man' => 'Mandingo',
+ 'mas' => 'Maa',
+ 'mde' => 'Maba',
+ 'mdf' => 'Moksja',
+ 'mdr' => 'Mandar',
+ 'men' => 'Mende',
+ 'mer' => 'Meru',
+ 'mfe' => 'Morisyen',
+ 'mg' => 'Malagassisch',
+ 'mga' => 'Middeliers',
+ 'mgh' => 'Makhuwa-Meetto',
+ 'mgo' => 'Meta’',
+ 'mh' => 'Marshallees',
+ 'mi' => 'Maori',
+ 'mic' => 'Mi’kmaq',
+ 'min' => 'Minangkabau',
+ 'mk' => 'Macedonisch',
+ 'ml' => 'Malayalam',
+ 'mn' => 'Mongools',
+ 'mnc' => 'Mantsjoe',
+ 'mni' => 'Meitei',
+ 'moh' => 'Mohawk',
+ 'mos' => 'Mossi',
+ 'mr' => 'Marathi',
+ 'mrj' => 'West-Mari',
+ 'ms' => 'Maleis',
+ 'mt' => 'Maltees',
+ 'mua' => 'Mundang',
+ 'mul' => 'Meerdere talen',
+ 'mus' => 'Creek',
+ 'mwl' => 'Mirandees',
+ 'mwr' => 'Marwari',
+ 'mwv' => 'Mentawai',
+ 'my' => 'Birmaans',
+ 'mye' => 'Myene',
+ 'myv' => 'Erzja',
+ 'mzn' => 'Mazanderani',
+ 'na' => 'Nauruaans',
+ 'nan' => 'Minnanyu',
+ 'nap' => 'Napolitaans',
+ 'naq' => 'Nama',
+ 'nb' => 'Noors - Bokmål',
+ 'nd' => 'Noord-Ndebele',
+ 'nds' => 'Nedersaksisch',
+ 'ne' => 'Nepalees',
+ 'new' => 'Newari',
+ 'ng' => 'Ndonga',
+ 'nia' => 'Nias',
+ 'niu' => 'Niueaans',
+ 'njo' => 'Ao Naga',
+ 'nl' => 'Nederlands',
+ 'nl-be' => 'Vlaams',
+ 'nmg' => 'Ngumba',
+ 'nn' => 'Noors - Nynorsk',
+ 'nnh' => 'Ngiemboon',
+ 'no' => 'Noors',
+ 'nog' => 'Nogai',
+ 'non' => 'Oudnoors',
+ 'nov' => 'Novial',
+ 'nqo' => 'N’Ko',
+ 'nr' => 'Zuid-Ndbele',
+ 'nso' => 'Noord-Sotho',
+ 'nus' => 'Nuer',
+ 'nv' => 'Navajo',
+ 'nwc' => 'Klassiek Nepalbhasa',
+ 'ny' => 'Nyanja',
+ 'nym' => 'Nyamwezi',
+ 'nyn' => 'Nyankole',
+ 'nyo' => 'Nyoro',
+ 'nzi' => 'Nzima',
+ 'oc' => 'Occitaans',
+ 'oj' => 'Ojibwa',
+ 'om' => 'Afaan Oromo',
+ 'or' => 'Odia',
+ 'os' => 'Ossetisch',
+ 'osa' => 'Osage',
+ 'ota' => 'Ottomaans-Turks',
+ 'pa' => 'Punjabi',
+ 'pag' => 'Pangasinan',
+ 'pal' => 'Pahlavi',
+ 'pam' => 'Pampanga',
+ 'pap' => 'Papiaments',
+ 'pau' => 'Palaus',
+ 'pcd' => 'Picardisch',
+ 'pdc' => 'Pennsylvania-Duits',
+ 'pdt' => 'Plautdietsch',
+ 'peo' => 'Oudperzisch',
+ 'pfl' => 'Paltsisch',
+ 'phn' => 'Foenicisch',
+ 'pi' => 'Pali',
+ 'pl' => 'Pools',
+ 'pms' => 'Piëmontees',
+ 'pnt' => 'Pontisch',
+ 'pon' => 'Pohnpeiaans',
+ 'prg' => 'Oudpruisisch',
+ 'pro' => 'Oudprovençaals',
+ 'ps' => 'Pasjtoe',
+ 'pt' => 'Portugees',
+ 'pt-br' => 'Braziliaans Portugees',
+ 'pt-pt' => 'Europees Portugees',
+ 'qu' => 'Quechua',
+ 'quc' => 'K’iche’',
+ 'qug' => 'Kichwa',
+ 'raj' => 'Rajasthani',
+ 'rap' => 'Rapanui',
+ 'rar' => 'Rarotongan',
+ 'rgn' => 'Romagnol',
+ 'rif' => 'Riffijns',
+ 'rm' => 'Reto-Romaans',
+ 'rn' => 'Kirundi',
+ 'ro' => 'Roemeens',
+ 'rof' => 'Rombo',
+ 'rom' => 'Romani',
+ 'rtm' => 'Rotumaans',
+ 'ru' => 'Russisch',
+ 'rue' => 'Roetheens',
+ 'rug' => 'Roviana',
+ 'rup' => 'Aroemeens',
+ 'rw' => 'Kinyarwanda',
+ 'rwk' => 'Rwa',
+ 'sa' => 'Sanskriet',
+ 'sad' => 'Sandawe',
+ 'sah' => 'Jakoets',
+ 'sam' => 'Samaritaans-Aramees',
+ 'saq' => 'Samburu',
+ 'sas' => 'Sasak',
+ 'sat' => 'Santali',
+ 'saz' => 'Saurashtra',
+ 'sba' => 'Ngambay',
+ 'sbp' => 'Sangu',
+ 'sc' => 'Sardijns',
+ 'scn' => 'Siciliaans',
+ 'sco' => 'Schots',
+ 'sd' => 'Sindhi',
+ 'sdc' => 'Sassarees',
+ 'se' => 'Noord-Samisch',
+ 'see' => 'Seneca',
+ 'seh' => 'Sena',
+ 'sei' => 'Seri',
+ 'sel' => 'Selkoeps',
+ 'ses' => 'Koyraboro Senni',
+ 'sg' => 'Sango',
+ 'sga' => 'Oudiers',
+ 'sgs' => 'Samogitisch',
+ 'sh' => 'Servokroatisch',
+ 'shi' => 'Tashelhiyt',
+ 'shn' => 'Shan',
+ 'shu' => 'Tsjadisch Arabisch',
+ 'si' => 'Singalees',
+ 'sid' => 'Sidamo',
+ 'sk' => 'Slowaaks',
+ 'sl' => 'Sloveens',
+ 'sli' => 'Silezisch Duits',
+ 'sly' => 'Selayar',
+ 'sm' => 'Samoaans',
+ 'sma' => 'Zuid-Samisch',
+ 'smj' => 'Lule-Samisch',
+ 'smn' => 'Inari-Samisch',
+ 'sms' => 'Skolt-Samisch',
+ 'sn' => 'Shona',
+ 'snk' => 'Soninke',
+ 'so' => 'Somalisch',
+ 'sog' => 'Sogdisch',
+ 'sq' => 'Albanees',
+ 'sr' => 'Servisch',
+ 'srn' => 'Sranantongo',
+ 'srr' => 'Serer',
+ 'ss' => 'Swazi',
+ 'ssy' => 'Saho',
+ 'st' => 'Zuid-Sotho',
+ 'stq' => 'Saterfries',
+ 'su' => 'Soendanees',
+ 'suk' => 'Sukuma',
+ 'sus' => 'Soesoe',
+ 'sux' => 'Soemerisch',
+ 'sv' => 'Zweeds',
+ 'sw' => 'Swahili',
+ 'swb' => 'Shimaore',
+ 'swc' => 'Congo Swahili',
+ 'syc' => 'Klassiek Syrisch',
+ 'syr' => 'Syrisch',
+ 'szl' => 'Silezisch',
+ 'ta' => 'Tamil',
+ 'tcy' => 'Tulu',
+ 'te' => 'Telugu',
+ 'tem' => 'Timne',
+ 'teo' => 'Teso',
+ 'ter' => 'Tereno',
+ 'tet' => 'Tetun',
+ 'tg' => 'Tadzjieks',
+ 'th' => 'Thais',
+ 'ti' => 'Tigrinya',
+ 'tig' => 'Tigre',
+ 'tiv' => 'Tiv',
+ 'tk' => 'Turkmeens',
+ 'tkl' => 'Tokelaus',
+ 'tkr' => 'Tsakhur',
+ 'tl' => 'Tagalog',
+ 'tlh' => 'Klingon',
+ 'tli' => 'Tlingit',
+ 'tly' => 'Talisch',
+ 'tmh' => 'Tamashek',
+ 'tn' => 'Tswana',
+ 'to' => 'Tongaans',
+ 'tog' => 'Nyasa Tonga',
+ 'tpi' => 'Tok Pisin',
+ 'tr' => 'Turks',
+ 'tru' => 'Turoyo',
+ 'trv' => 'Taroko',
+ 'ts' => 'Tsonga',
+ 'tsd' => 'Tsakonisch',
+ 'tsi' => 'Tsimshian',
+ 'tt' => 'Tataars',
+ 'ttt' => 'Moslim Tat',
+ 'tum' => 'Toemboeka',
+ 'tvl' => 'Tuvaluaans',
+ 'tw' => 'Twi',
+ 'twq' => 'Tasawaq',
+ 'ty' => 'Tahitiaans',
+ 'tyv' => 'Toevaans',
+ 'tzm' => 'Tamazight (Centraal-Marokko)',
+ 'udm' => 'Oedmoerts',
+ 'ug' => 'Oeigoers',
+ 'uga' => 'Oegaritisch',
+ 'uk' => 'Oekraïens',
+ 'umb' => 'Umbundu',
+ 'und' => 'onbekende taal',
+ 'ur' => 'Urdu',
+ 'uz' => 'Oezbeeks',
+ 'vai' => 'Vai',
+ 've' => 'Venda',
+ 'vec' => 'Venetiaans',
+ 'vep' => 'Wepsisch',
+ 'vi' => 'Vietnamees',
+ 'vls' => 'West-Vlaams',
+ 'vmf' => 'Mainfränkisch',
+ 'vo' => 'Volapük',
+ 'vot' => 'Votisch',
+ 'vro' => 'Võro',
+ 'vun' => 'Vunjo',
+ 'wa' => 'Waals',
+ 'wae' => 'Walser',
+ 'wal' => 'Wolaytta',
+ 'war' => 'Waray',
+ 'was' => 'Washo',
+ 'wo' => 'Wolof',
+ 'wuu' => 'Wuyu',
+ 'xal' => 'Kalmuks',
+ 'xh' => 'Xhosa',
+ 'xmf' => 'Mingreels',
+ 'xog' => 'Soga',
+ 'yao' => 'Yao',
+ 'yap' => 'Yapees',
+ 'yav' => 'Yangben',
+ 'ybb' => 'Yemba',
+ 'yi' => 'Jiddisch',
+ 'yo' => 'Yoruba',
+ 'yrl' => 'Nheengatu',
+ 'yue' => 'Kantonees',
+ 'za' => 'Zhuang',
+ 'zap' => 'Zapotec',
+ 'zbl' => 'Blissymbolen',
+ 'zea' => 'Zeeuws',
+ 'zen' => 'Zenaga',
+ 'zgh' => 'Standaard Marokkaanse Tamazight',
+ 'zh' => 'Chinees',
+ 'zh-hans' => 'vereenvoudigd Chinees',
+ 'zh-hant' => 'traditioneel Chinees',
+ 'zu' => 'Zoeloe',
+ 'zun' => 'Zuni',
+ 'zxx' => 'geen linguïstische inhoud',
+ 'zza' => 'Zaza',
+);
+
+$currencyNames = array(
+ 'ADP' => 'Andorrese peseta',
+ 'AED' => 'Verenigde Arabische Emiraten-dirham',
+ 'AFA' => 'Afghani (1927–2002)',
+ 'AFN' => 'Afghaanse afghani',
+ 'ALK' => 'Albanese lek (1946–1965)',
+ 'ALL' => 'Albanese lek',
+ 'AMD' => 'Armeense dram',
+ 'ANG' => 'Nederlands-Antilliaanse gulden',
+ 'AOA' => 'Angolese kwanza',
+ 'AOK' => 'Angolese kwanza (1977–1990)',
+ 'AON' => 'Angolese nieuwe kwanza (1990–2000)',
+ 'AOR' => 'Angolese kwanza reajustado (1995–1999)',
+ 'ARA' => 'Argentijnse austral',
+ 'ARL' => 'Argentijnse peso ley (1970–1983)',
+ 'ARM' => 'Argentijnse peso (1881–1970)',
+ 'ARP' => 'Argentijnse peso (1983–1985)',
+ 'ARS' => 'Argentijnse peso',
+ 'ATS' => 'Oostenrijkse schilling',
+ 'AUD' => 'Australische dollar',
+ 'AWG' => 'Arubaanse gulden',
+ 'AZM' => 'Azerbeidzjaanse manat (1993–2006)',
+ 'AZN' => 'Azerbeidzjaanse manat',
+ 'BAD' => 'Bosnische dinar',
+ 'BAM' => 'Bosnische convertibele mark',
+ 'BAN' => 'Nieuwe Bosnische dinar (1994–1997)',
+ 'BBD' => 'Barbadaanse dollar',
+ 'BDT' => 'Bengalese taka',
+ 'BEC' => 'Belgische frank (convertibel)',
+ 'BEF' => 'Belgische frank',
+ 'BEL' => 'Belgische frank (financieel)',
+ 'BGL' => 'Bulgaarse harde lev',
+ 'BGM' => 'Bulgaarse socialistische lev',
+ 'BGN' => 'Bulgaarse lev',
+ 'BGO' => 'Bulgaarse lev (1879–1952)',
+ 'BHD' => 'Bahreinse dinar',
+ 'BIF' => 'Burundese frank',
+ 'BMD' => 'Bermuda-dollar',
+ 'BND' => 'Bruneise dollar',
+ 'BOB' => 'Boliviaanse boliviano',
+ 'BOL' => 'Boliviaanse boliviano (1863–1963)',
+ 'BOP' => 'Boliviaanse peso',
+ 'BOV' => 'Boliviaanse mvdol',
+ 'BRB' => 'Braziliaanse cruzeiro novo (1967–1986)',
+ 'BRC' => 'Braziliaanse cruzado',
+ 'BRE' => 'Braziliaanse cruzeiro (1990–1993)',
+ 'BRL' => 'Braziliaanse real',
+ 'BRN' => 'Braziliaanse cruzado novo',
+ 'BRR' => 'Braziliaanse cruzeiro',
+ 'BRZ' => 'Braziliaanse cruzeiro (1942–1967)',
+ 'BSD' => 'Bahamaanse dollar',
+ 'BTN' => 'Bhutaanse ngultrum',
+ 'BUK' => 'Birmese kyat',
+ 'BWP' => 'Botswaanse pula',
+ 'BYB' => 'Wit-Russische nieuwe roebel (1994–1999)',
+ 'BYR' => 'Wit-Russische roebel',
+ 'BZD' => 'Belizaanse dollar',
+ 'CAD' => 'Canadese dollar',
+ 'CDF' => 'Congolese frank',
+ 'CHE' => 'WIR euro',
+ 'CHF' => 'Zwitserse frank',
+ 'CHW' => 'WIR franc',
+ 'CLE' => 'Chileense escudo',
+ 'CLF' => 'Chileense unidades de fomento',
+ 'CLP' => 'Chileense peso',
+ 'CNX' => 'dollar van de Chinese Volksbank',
+ 'CNY' => 'Chinese yuan renminbi',
+ 'COP' => 'Colombiaanse peso',
+ 'COU' => 'Unidad de Valor Real',
+ 'CRC' => 'Costa Ricaanse colon',
+ 'CSD' => 'Oude Servische dinar',
+ 'CSK' => 'Tsjechoslowaakse harde koruna',
+ 'CUC' => 'Cubaanse convertibele peso',
+ 'CUP' => 'Cubaanse peso',
+ 'CVE' => 'Kaapverdische escudo',
+ 'CYP' => 'Cyprisch pond',
+ 'CZK' => 'Tsjechische kroon',
+ 'DDM' => 'Oost-Duitse ostmark',
+ 'DEM' => 'Duitse mark',
+ 'DJF' => 'Djiboutiaanse frank',
+ 'DKK' => 'Deense kroon',
+ 'DOP' => 'Dominicaanse peso',
+ 'DZD' => 'Algerijnse dinar',
+ 'ECS' => 'Ecuadoraanse sucre',
+ 'ECV' => 'Ecuadoraanse unidad de valor constante (UVC)',
+ 'EEK' => 'Estlandse kroon',
+ 'EGP' => 'Egyptisch pond',
+ 'ERN' => 'Eritrese nakfa',
+ 'ESA' => 'Spaanse peseta (account A)',
+ 'ESB' => 'Spaanse peseta (convertibele account)',
+ 'ESP' => 'Spaanse peseta',
+ 'ETB' => 'Ethiopische birr',
+ 'EUR' => 'Euro',
+ 'FIM' => 'Finse markka',
+ 'FJD' => 'Fiji-dollar',
+ 'FKP' => 'Falklandeilands pond',
+ 'FRF' => 'Franse franc',
+ 'GBP' => 'Brits pond sterling',
+ 'GEK' => 'Georgische kupon larit',
+ 'GEL' => 'Georgische lari',
+ 'GHC' => 'Ghanese cedi (1979–2007)',
+ 'GHS' => 'Ghanese cedi',
+ 'GIP' => 'Gibraltarees pond',
+ 'GMD' => 'Gambiaanse dalasi',
+ 'GNF' => 'Guinese franc',
+ 'GNS' => 'Guinese syli',
+ 'GQE' => 'Equatoriaal-Guinese ekwele guineana',
+ 'GRD' => 'Griekse drachme',
+ 'GTQ' => 'Guatemalteekse quetzal',
+ 'GWE' => 'Portugees-Guinese escudo',
+ 'GWP' => 'Guinee-Bissause peso',
+ 'GYD' => 'Guyaanse dollar',
+ 'HKD' => 'Hongkongse dollar',
+ 'HNL' => 'Hondurese lempira',
+ 'HRD' => 'Kroatische dinar',
+ 'HRK' => 'Kroatische kuna',
+ 'HTG' => 'Haïtiaanse gourde',
+ 'HUF' => 'Hongaarse forint',
+ 'IDR' => 'Indonesische roepia',
+ 'IEP' => 'Iers pond',
+ 'ILP' => 'Israëlisch pond',
+ 'ILR' => 'Israëlische sjekel (1980–1985)',
+ 'ILS' => 'Israëlische nieuwe shekel',
+ 'INR' => 'Indiase roepie',
+ 'IQD' => 'Iraakse dinar',
+ 'IRR' => 'Iraanse rial',
+ 'ISJ' => 'IJslandse kroon (1918–1981)',
+ 'ISK' => 'IJslandse kroon',
+ 'ITL' => 'Italiaanse lire',
+ 'JMD' => 'Jamaicaanse dollar',
+ 'JOD' => 'Jordaanse dinar',
+ 'JPY' => 'Japanse yen',
+ 'KES' => 'Keniaanse shilling',
+ 'KGS' => 'Kirgizische som',
+ 'KHR' => 'Cambodjaanse riel',
+ 'KMF' => 'Comorese frank',
+ 'KPW' => 'Noord-Koreaanse won',
+ 'KRH' => 'Zuid-Koreaanse hwan (1953–1962)',
+ 'KRO' => 'Oude Zuid-Koreaanse won (1945–1953)',
+ 'KRW' => 'Zuid-Koreaanse won',
+ 'KWD' => 'Koeweitse dinar',
+ 'KYD' => 'Caymaneilandse dollar',
+ 'KZT' => 'Kazachse tenge',
+ 'LAK' => 'Laotiaanse kip',
+ 'LBP' => 'Libanees pond',
+ 'LKR' => 'Sri Lankaanse roepie',
+ 'LRD' => 'Liberiaanse dollar',
+ 'LSL' => 'Lesothaanse loti',
+ 'LTL' => 'Litouwse litas',
+ 'LTT' => 'Litouwse talonas',
+ 'LUC' => 'Luxemburgse convertibele franc',
+ 'LUF' => 'Luxemburgse frank',
+ 'LUL' => 'Luxemburgse financiële franc',
+ 'LVL' => 'Letse lats',
+ 'LVR' => 'Letse roebel',
+ 'LYD' => 'Libische dinar',
+ 'MAD' => 'Marokkaanse dirham',
+ 'MAF' => 'Marokkaanse franc',
+ 'MCF' => 'Monegaskische frank',
+ 'MDC' => 'Moldavische cupon',
+ 'MDL' => 'Moldavische leu',
+ 'MGA' => 'Malagassische ariary',
+ 'MGF' => 'Malagassische franc',
+ 'MKD' => 'Macedonische denar',
+ 'MKN' => 'Macedonische denar (1992–1993)',
+ 'MLF' => 'Malinese franc',
+ 'MMK' => 'Myanmarese kyat',
+ 'MNT' => 'Mongoolse tugrik',
+ 'MOP' => 'Macause pataca',
+ 'MRO' => 'Mauritaanse ouguiya',
+ 'MTL' => 'Maltese lire',
+ 'MTP' => 'Maltees pond',
+ 'MUR' => 'Mauritiaanse roepie',
+ 'MVP' => 'Maldivische roepie',
+ 'MVR' => 'Maldivische rufiyaa',
+ 'MWK' => 'Malawische kwacha',
+ 'MXN' => 'Mexicaanse peso',
+ 'MXP' => 'Mexicaanse zilveren peso (1861–1992)',
+ 'MXV' => 'Mexicaanse unidad de inversion (UDI)',
+ 'MYR' => 'Maleisische ringgit',
+ 'MZE' => 'Mozambikaanse escudo',
+ 'MZM' => 'Oude Mozambikaanse metical',
+ 'MZN' => 'Mozambikaanse metical',
+ 'NAD' => 'Namibische dollar',
+ 'NGN' => 'Nigeriaanse naira',
+ 'NIC' => 'Nicaraguaanse córdoba (1988–1991)',
+ 'NIO' => 'Nicaraguaanse córdoba',
+ 'NLG' => 'Nederlandse gulden',
+ 'NOK' => 'Noorse kroon',
+ 'NPR' => 'Nepalese roepie',
+ 'NZD' => 'Nieuw-Zeelandse dollar',
+ 'OMR' => 'Omaanse rial',
+ 'PAB' => 'Panamese balboa',
+ 'PEI' => 'Peruaanse inti',
+ 'PEN' => 'Peruaanse nieuwe sol',
+ 'PES' => 'Peruaanse sol',
+ 'PGK' => 'Papoea-Nieuw-Guinese kina',
+ 'PHP' => 'Filipijnse peso',
+ 'PKR' => 'Pakistaanse roepie',
+ 'PLN' => 'Poolse zloty',
+ 'PLZ' => 'Poolse zloty (1950–1995)',
+ 'PTE' => 'Portugese escudo',
+ 'PYG' => 'Paraguayaanse guarani',
+ 'QAR' => 'Qatarese rial',
+ 'RHD' => 'Rhodesische dollar',
+ 'ROL' => 'Oude Roemeense leu',
+ 'RON' => 'Roemeense leu',
+ 'RSD' => 'Servische dinar',
+ 'RUB' => 'Russische roebel',
+ 'RUR' => 'Russische roebel (1991–1998)',
+ 'RWF' => 'Rwandese frank',
+ 'SAR' => 'Saoedi-Arabische riyal',
+ 'SBD' => 'Salomon-dollar',
+ 'SCR' => 'Seychelse roepie',
+ 'SDD' => 'Soedanese dinar',
+ 'SDG' => 'Soedanees pond',
+ 'SDP' => 'Soedanees pond (1957–1998)',
+ 'SEK' => 'Zweedse kroon',
+ 'SGD' => 'Singaporese dollar',
+ 'SHP' => 'Sint-Heleens pond',
+ 'SIT' => 'Sloveense tolar',
+ 'SKK' => 'Slowaakse koruna',
+ 'SLL' => 'Sierraleoonse leone',
+ 'SOS' => 'Somalische shilling',
+ 'SRD' => 'Surinaamse dollar',
+ 'SRG' => 'Surinaamse gulden',
+ 'SSP' => 'Zuid-Soedanees pond',
+ 'STD' => 'Santomese dobra',
+ 'SUR' => 'Sovjet-roebel',
+ 'SVC' => 'Salvadoraanse colón',
+ 'SYP' => 'Syrisch pond',
+ 'SZL' => 'Swazische lilangeni',
+ 'THB' => 'Thaise baht',
+ 'TJR' => 'Tadzjikistaanse roebel',
+ 'TJS' => 'Tadzjiekse somoni',
+ 'TMM' => 'Turkmeense manat (1993–2009)',
+ 'TMT' => 'Turkmeense manat',
+ 'TND' => 'Tunesische dinar',
+ 'TOP' => 'Tongaanse paʻanga',
+ 'TPE' => 'Timorese escudo',
+ 'TRL' => 'Turkse lire',
+ 'TRY' => 'Turkse lira',
+ 'TTD' => 'Trinidad en Tobago-dollar',
+ 'TWD' => 'Nieuwe Taiwanese dollar',
+ 'TZS' => 'Tanzaniaanse shilling',
+ 'UAH' => 'Oekraïense hryvnia',
+ 'UAK' => 'Oekraïense karbovanetz',
+ 'UGS' => 'Oegandese shilling (1966–1987)',
+ 'UGX' => 'Oegandese shilling',
+ 'USD' => 'Amerikaanse dollar',
+ 'USN' => 'Amerikaanse dollar (volgende dag)',
+ 'USS' => 'Amerikaanse dollar (zelfde dag)',
+ 'UYI' => 'Uruguayaanse peso en geïndexeerde eenheden',
+ 'UYP' => 'Uruguayaanse peso (1975–1993)',
+ 'UYU' => 'Uruguayaanse peso',
+ 'UZS' => 'Oezbeekse sum',
+ 'VEB' => 'Venezolaanse bolivar (1871–2008)',
+ 'VEF' => 'Venezolaanse bolivar',
+ 'VND' => 'Vietnamese dong',
+ 'VNN' => 'Oude Vietnamese dong (1978–1985)',
+ 'VUV' => 'Vanuatuaanse vatu',
+ 'WST' => 'Samoaanse tala',
+ 'XAF' => 'CFA-frank',
+ 'XAG' => 'Zilver',
+ 'XAU' => 'Goud',
+ 'XBA' => 'Europese samengestelde eenheid',
+ 'XBB' => 'Europese monetaire eenheid',
+ 'XBC' => 'Europese rekeneenheid (XBC)',
+ 'XBD' => 'Europese rekeneenheid (XBD)',
+ 'XCD' => 'Oost-Caribische dollar',
+ 'XDR' => 'Special Drawing Rights',
+ 'XEU' => 'European Currency Unit',
+ 'XFO' => 'Franse gouden franc',
+ 'XFU' => 'Franse UIC-franc',
+ 'XOF' => 'CFA-franc BCEAO',
+ 'XPD' => 'Palladium',
+ 'XPF' => 'CFP-franc',
+ 'XPT' => 'Platina',
+ 'XRE' => 'RINET-fondsen',
+ 'XSU' => 'Sucre',
+ 'XTS' => 'Valutacode voor testdoeleinden',
+ 'XUA' => 'ADB-rekeneenheid',
+ 'XXX' => 'onbekende munteenheid',
+ 'YDD' => 'Jemenitische dinar',
+ 'YER' => 'Jemenitische rial',
+ 'YUD' => 'Joegoslavische harde dinar',
+ 'YUM' => 'Joegoslavische noviy-dinar',
+ 'YUN' => 'Joegoslavische convertibele dinar',
+ 'YUR' => 'Joegoslavische hervormde dinar (1992–1993)',
+ 'ZAL' => 'Zuid-Afrikaanse rand (financieel)',
+ 'ZAR' => 'Zuid-Afrikaanse rand',
+ 'ZMK' => 'Zambiaanse kwacha (1968–2012)',
+ 'ZMW' => 'Zambiaanse kwacha',
+ 'ZRN' => 'Zaïrese nieuwe zaïre',
+ 'ZRZ' => 'Zaïrese zaïre',
+ 'ZWD' => 'Zimbabwaanse dollar',
+ 'ZWL' => 'Zimbabwaanse dollar (2009)',
+ 'ZWR' => 'Zimbabwaanse dollar (2008)',
+);
+
+$currencySymbols = array(
+ 'ADP' => 'ADP',
+ 'AED' => 'AED',
+ 'AFA' => 'AFA',
+ 'AFN' => 'AFN',
+ 'ALK' => 'ALK',
+ 'ALL' => 'ALL',
+ 'AMD' => 'AMD',
+ 'ANG' => 'ANG',
+ 'AOA' => 'AOA',
+ 'AOK' => 'AOK',
+ 'AON' => 'AON',
+ 'AOR' => 'AOR',
+ 'ARA' => 'ARA',
+ 'ARL' => 'ARL',
+ 'ARM' => 'ARM',
+ 'ARP' => 'ARP',
+ 'ARS' => 'ARS',
+ 'ATS' => 'ATS',
+ 'AUD' => 'AU$',
+ 'AWG' => 'AWG',
+ 'AZM' => 'AZM',
+ 'AZN' => 'AZN',
+ 'BAD' => 'BAD',
+ 'BAM' => 'BAM',
+ 'BAN' => 'BAN',
+ 'BBD' => 'BBD',
+ 'BDT' => 'BDT',
+ 'BEC' => 'BEC',
+ 'BEF' => 'BEF',
+ 'BEL' => 'BEL',
+ 'BGL' => 'BGL',
+ 'BGM' => 'BGM',
+ 'BGN' => 'BGN',
+ 'BGO' => 'BGO',
+ 'BHD' => 'BHD',
+ 'BIF' => 'BIF',
+ 'BMD' => 'BMD',
+ 'BND' => 'BND',
+ 'BOB' => 'BOB',
+ 'BOL' => 'BOL',
+ 'BOP' => 'BOP',
+ 'BOV' => 'BOV',
+ 'BRB' => 'BRB',
+ 'BRC' => 'BRC',
+ 'BRE' => 'BRE',
+ 'BRL' => 'R$',
+ 'BRN' => 'BRN',
+ 'BRR' => 'BRR',
+ 'BRZ' => 'BRZ',
+ 'BSD' => 'BSD',
+ 'BTN' => 'BTN',
+ 'BUK' => 'BUK',
+ 'BWP' => 'BWP',
+ 'BYB' => 'BYB',
+ 'BYR' => 'BYR',
+ 'BZD' => 'BZD',
+ 'CAD' => 'C$',
+ 'CDF' => 'CDF',
+ 'CHE' => 'CHE',
+ 'CHF' => 'CHF',
+ 'CHW' => 'CHW',
+ 'CLE' => 'CLE',
+ 'CLF' => 'CLF',
+ 'CLP' => 'CLP',
+ 'CNX' => 'CNX',
+ 'CNY' => 'CN¥',
+ 'COP' => 'COP',
+ 'COU' => 'COU',
+ 'CRC' => 'CRC',
+ 'CSD' => 'CSD',
+ 'CSK' => 'CSK',
+ 'CUC' => 'CUC',
+ 'CUP' => 'CUP',
+ 'CVE' => 'CVE',
+ 'CYP' => 'CYP',
+ 'CZK' => 'CZK',
+ 'DDM' => 'DDM',
+ 'DEM' => 'DEM',
+ 'DJF' => 'DJF',
+ 'DKK' => 'DKK',
+ 'DOP' => 'DOP',
+ 'DZD' => 'DZD',
+ 'ECS' => 'ECS',
+ 'ECV' => 'ECV',
+ 'EEK' => 'EEK',
+ 'EGP' => 'EGP',
+ 'ERN' => 'ERN',
+ 'ESA' => 'ESA',
+ 'ESB' => 'ESB',
+ 'ESP' => 'ESP',
+ 'ETB' => 'ETB',
+ 'EUR' => '€',
+ 'FIM' => 'FIM',
+ 'FJD' => 'FJ$',
+ 'FKP' => 'FKP',
+ 'FRF' => 'FRF',
+ 'GBP' => '£',
+ 'GEK' => 'GEK',
+ 'GEL' => 'GEL',
+ 'GHC' => 'GHC',
+ 'GHS' => 'GHS',
+ 'GIP' => 'GIP',
+ 'GMD' => 'GMD',
+ 'GNF' => 'GNF',
+ 'GNS' => 'GNS',
+ 'GQE' => 'GQE',
+ 'GRD' => 'GRD',
+ 'GTQ' => 'GTQ',
+ 'GWE' => 'GWE',
+ 'GWP' => 'GWP',
+ 'GYD' => 'GYD',
+ 'HKD' => 'HK$',
+ 'HNL' => 'HNL',
+ 'HRD' => 'HRD',
+ 'HRK' => 'HRK',
+ 'HTG' => 'HTG',
+ 'HUF' => 'HUF',
+ 'IDR' => 'IDR',
+ 'IEP' => 'IEP',
+ 'ILP' => 'ILP',
+ 'ILR' => 'ILR',
+ 'ILS' => '₪',
+ 'INR' => '₹',
+ 'IQD' => 'IQD',
+ 'IRR' => 'IRR',
+ 'ISJ' => 'ISJ',
+ 'ISK' => 'ISK',
+ 'ITL' => 'ITL',
+ 'JMD' => 'JMD',
+ 'JOD' => 'JOD',
+ 'JPY' => 'JP¥',
+ 'KES' => 'KES',
+ 'KGS' => 'KGS',
+ 'KHR' => 'KHR',
+ 'KMF' => 'KMF',
+ 'KPW' => 'KPW',
+ 'KRH' => 'KRH',
+ 'KRO' => 'KRO',
+ 'KRW' => '₩',
+ 'KWD' => 'KWD',
+ 'KYD' => 'KYD',
+ 'KZT' => 'KZT',
+ 'LAK' => 'LAK',
+ 'LBP' => 'LBP',
+ 'LKR' => 'LKR',
+ 'LRD' => 'LRD',
+ 'LSL' => 'LSL',
+ 'LTL' => 'LTL',
+ 'LTT' => 'LTT',
+ 'LUC' => 'LUC',
+ 'LUF' => 'LUF',
+ 'LUL' => 'LUL',
+ 'LVL' => 'LVL',
+ 'LVR' => 'LVR',
+ 'LYD' => 'LYD',
+ 'MAD' => 'MAD',
+ 'MAF' => 'MAF',
+ 'MCF' => 'MCF',
+ 'MDC' => 'MDC',
+ 'MDL' => 'MDL',
+ 'MGA' => 'MGA',
+ 'MGF' => 'MGF',
+ 'MKD' => 'MKD',
+ 'MKN' => 'MKN',
+ 'MLF' => 'MLF',
+ 'MMK' => 'MMK',
+ 'MNT' => 'MNT',
+ 'MOP' => 'MOP',
+ 'MRO' => 'MRO',
+ 'MTL' => 'MTL',
+ 'MTP' => 'MTP',
+ 'MUR' => 'MUR',
+ 'MVP' => 'MVP',
+ 'MVR' => 'MVR',
+ 'MWK' => 'MWK',
+ 'MXN' => 'MX$',
+ 'MXP' => 'MXP',
+ 'MXV' => 'MXV',
+ 'MYR' => 'MYR',
+ 'MZE' => 'MZE',
+ 'MZM' => 'MZM',
+ 'MZN' => 'MZN',
+ 'NAD' => 'NAD',
+ 'NGN' => 'NGN',
+ 'NIC' => 'NIC',
+ 'NIO' => 'NIO',
+ 'NLG' => 'NLG',
+ 'NOK' => 'NOK',
+ 'NPR' => 'NPR',
+ 'NZD' => 'NZ$',
+ 'OMR' => 'OMR',
+ 'PAB' => 'PAB',
+ 'PEI' => 'PEI',
+ 'PEN' => 'PEN',
+ 'PES' => 'PES',
+ 'PGK' => 'PGK',
+ 'PHP' => 'PHP',
+ 'PKR' => 'PKR',
+ 'PLN' => 'PLN',
+ 'PLZ' => 'PLZ',
+ 'PTE' => 'PTE',
+ 'PYG' => 'PYG',
+ 'QAR' => 'QAR',
+ 'RHD' => 'RHD',
+ 'ROL' => 'ROL',
+ 'RON' => 'RON',
+ 'RSD' => 'RSD',
+ 'RUB' => 'RUB',
+ 'RUR' => 'RUR',
+ 'RWF' => 'RWF',
+ 'SAR' => 'SAR',
+ 'SBD' => 'SI$',
+ 'SCR' => 'SCR',
+ 'SDD' => 'SDD',
+ 'SDG' => 'SDG',
+ 'SDP' => 'SDP',
+ 'SEK' => 'SEK',
+ 'SGD' => 'SGD',
+ 'SHP' => 'SHP',
+ 'SIT' => 'SIT',
+ 'SKK' => 'SKK',
+ 'SLL' => 'SLL',
+ 'SOS' => 'SOS',
+ 'SRD' => 'SRD',
+ 'SRG' => 'SRG',
+ 'SSP' => 'SSP',
+ 'STD' => 'STD',
+ 'SUR' => 'SUR',
+ 'SVC' => 'SVC',
+ 'SYP' => 'SYP',
+ 'SZL' => 'SZL',
+ 'THB' => '฿',
+ 'TJR' => 'TJR',
+ 'TJS' => 'TJS',
+ 'TMM' => 'TMM',
+ 'TMT' => 'TMT',
+ 'TND' => 'TND',
+ 'TOP' => 'TOP',
+ 'TPE' => 'TPE',
+ 'TRL' => 'TRL',
+ 'TRY' => 'TRY',
+ 'TTD' => 'TTD',
+ 'TWD' => 'NT$',
+ 'TZS' => 'TZS',
+ 'UAH' => 'UAH',
+ 'UAK' => 'UAK',
+ 'UGS' => 'UGS',
+ 'UGX' => 'UGX',
+ 'USD' => 'US$',
+ 'USN' => 'USN',
+ 'USS' => 'USS',
+ 'UYI' => 'UYI',
+ 'UYP' => 'UYP',
+ 'UYU' => 'UYU',
+ 'UZS' => 'UZS',
+ 'VEB' => 'VEB',
+ 'VEF' => 'VEF',
+ 'VND' => '₫',
+ 'VNN' => 'VNN',
+ 'VUV' => 'VUV',
+ 'WST' => 'WST',
+ 'XAF' => 'FCFA',
+ 'XAG' => 'XAG',
+ 'XAU' => 'XAU',
+ 'XBA' => 'XBA',
+ 'XBB' => 'XBB',
+ 'XBC' => 'XBC',
+ 'XBD' => 'XBD',
+ 'XCD' => 'EC$',
+ 'XDR' => 'XDR',
+ 'XEU' => 'XEU',
+ 'XFO' => 'XFO',
+ 'XFU' => 'XFU',
+ 'XOF' => 'CFA',
+ 'XPD' => 'XPD',
+ 'XPF' => 'XPF',
+ 'XPT' => 'XPT',
+ 'XRE' => 'XRE',
+ 'XSU' => 'XSU',
+ 'XTS' => 'XTS',
+ 'XUA' => 'XUA',
+ 'XXX' => 'XXX',
+ 'YDD' => 'YDD',
+ 'YER' => 'YER',
+ 'YUD' => 'YUD',
+ 'YUM' => 'YUM',
+ 'YUN' => 'YUN',
+ 'YUR' => 'YUR',
+ 'ZAL' => 'ZAL',
+ 'ZAR' => 'ZAR',
+ 'ZMK' => 'ZMK',
+ 'ZMW' => 'ZMW',
+ 'ZRN' => 'ZRN',
+ 'ZRZ' => 'ZRZ',
+ 'ZWD' => 'ZWD',
+ 'ZWL' => 'ZWL',
+ 'ZWR' => 'ZWR',
+);
+
+$countryNames = array(
+ 'AC' => 'Ascension',
+ 'AD' => 'Andorra',
+ 'AE' => 'Verenigde Arabische Emiraten',
+ 'AF' => 'Afghanistan',
+ 'AG' => 'Antigua en Barbuda',
+ 'AI' => 'Anguilla',
+ 'AL' => 'Albanië',
+ 'AM' => 'Armenië',
+ 'AN' => 'Nederlandse Antillen',
+ 'AO' => 'Angola',
+ 'AQ' => 'Antarctica',
+ 'AR' => 'Argentinië',
+ 'AS' => 'Amerikaans-Samoa',
+ 'AT' => 'Oostenrijk',
+ 'AU' => 'Australië',
+ 'AW' => 'Aruba',
+ 'AX' => 'Åland',
+ 'AZ' => 'Azerbeidzjan',
+ 'BA' => 'Bosnië en Herzegovina',
+ 'BB' => 'Barbados',
+ 'BD' => 'Bangladesh',
+ 'BE' => 'België',
+ 'BF' => 'Burkina Faso',
+ 'BG' => 'Bulgarije',
+ 'BH' => 'Bahrein',
+ 'BI' => 'Burundi',
+ 'BJ' => 'Benin',
+ 'BL' => 'Saint-Barthélemy',
+ 'BM' => 'Bermuda',
+ 'BN' => 'Brunei',
+ 'BO' => 'Bolivia',
+ 'BQ' => 'Caribisch Nederland',
+ 'BR' => 'Brazilië',
+ 'BS' => 'Bahama’s',
+ 'BT' => 'Bhutan',
+ 'BV' => 'Bouveteiland',
+ 'BW' => 'Botswana',
+ 'BY' => 'Wit-Rusland',
+ 'BZ' => 'Belize',
+ 'CA' => 'Canada',
+ 'CC' => 'Cocoseilanden',
+ 'CD' => 'Congo-Kinshasa',
+ 'CF' => 'Centraal-Afrikaanse Republiek',
+ 'CG' => 'Congo-Brazzaville',
+ 'CH' => 'Zwitserland',
+ 'CI' => 'Ivoorkust',
+ 'CK' => 'Cookeilanden',
+ 'CL' => 'Chili',
+ 'CM' => 'Kameroen',
+ 'CN' => 'China',
+ 'CO' => 'Colombia',
+ 'CP' => 'Clipperton',
+ 'CR' => 'Costa Rica',
+ 'CU' => 'Cuba',
+ 'CV' => 'Kaapverdië',
+ 'CW' => 'Curaçao',
+ 'CX' => 'Christmaseiland',
+ 'CY' => 'Cyprus',
+ 'CZ' => 'Tsjechië',
+ 'DE' => 'Duitsland',
+ 'DG' => 'Diego Garcia',
+ 'DJ' => 'Djibouti',
+ 'DK' => 'Denemarken',
+ 'DM' => 'Dominica',
+ 'DO' => 'Dominicaanse Republiek',
+ 'DZ' => 'Algerije',
+ 'EA' => 'Ceuta en Melilla',
+ 'EC' => 'Ecuador',
+ 'EE' => 'Estland',
+ 'EG' => 'Egypte',
+ 'EH' => 'Westelijke Sahara',
+ 'ER' => 'Eritrea',
+ 'ES' => 'Spanje',
+ 'ET' => 'Ethiopië',
+ 'EU' => 'Europese Unie',
+ 'FI' => 'Finland',
+ 'FJ' => 'Fiji',
+ 'FK' => 'Falklandeilanden',
+ 'FM' => 'Micronesia',
+ 'FO' => 'Faeröer',
+ 'FR' => 'Frankrijk',
+ 'GA' => 'Gabon',
+ 'GB' => 'VK',
+ 'GD' => 'Grenada',
+ 'GE' => 'Georgië',
+ 'GF' => 'Frans-Guyana',
+ 'GG' => 'Guernsey',
+ 'GH' => 'Ghana',
+ 'GI' => 'Gibraltar',
+ 'GL' => 'Groenland',
+ 'GM' => 'Gambia',
+ 'GN' => 'Guinee',
+ 'GP' => 'Guadeloupe',
+ 'GQ' => 'Equatoriaal-Guinea',
+ 'GR' => 'Griekenland',
+ 'GS' => 'Zuid-Georgia en Zuidelijke Sandwicheilanden',
+ 'GT' => 'Guatemala',
+ 'GU' => 'Guam',
+ 'GW' => 'Guinee-Bissau',
+ 'GY' => 'Guyana',
+ 'HK' => 'Hongkong',
+ 'HM' => 'Heard en McDonaldeilanden',
+ 'HN' => 'Honduras',
+ 'HR' => 'Kroatië',
+ 'HT' => 'Haïti',
+ 'HU' => 'Hongarije',
+ 'IC' => 'Canarische Eilanden',
+ 'ID' => 'Indonesië',
+ 'IE' => 'Ierland',
+ 'IL' => 'Israël',
+ 'IM' => 'Isle of Man',
+ 'IN' => 'India',
+ 'IO' => 'Britse Gebieden in de Indische Oceaan',
+ 'IQ' => 'Irak',
+ 'IR' => 'Iran',
+ 'IS' => 'IJsland',
+ 'IT' => 'Italië',
+ 'JE' => 'Jersey',
+ 'JM' => 'Jamaica',
+ 'JO' => 'Jordanië',
+ 'JP' => 'Japan',
+ 'KE' => 'Kenia',
+ 'KG' => 'Kirgizië',
+ 'KH' => 'Cambodja',
+ 'KI' => 'Kiribati',
+ 'KM' => 'Comoren',
+ 'KN' => 'Saint Kitts en Nevis',
+ 'KP' => 'Noord-Korea',
+ 'KR' => 'Zuid-Korea',
+ 'KW' => 'Koeweit',
+ 'KY' => 'Caymaneilanden',
+ 'KZ' => 'Kazachstan',
+ 'LA' => 'Laos',
+ 'LB' => 'Libanon',
+ 'LC' => 'Saint Lucia',
+ 'LI' => 'Liechtenstein',
+ 'LK' => 'Sri Lanka',
+ 'LR' => 'Liberia',
+ 'LS' => 'Lesotho',
+ 'LT' => 'Litouwen',
+ 'LU' => 'Luxemburg',
+ 'LV' => 'Letland',
+ 'LY' => 'Libië',
+ 'MA' => 'Marokko',
+ 'MC' => 'Monaco',
+ 'MD' => 'Moldavië',
+ 'ME' => 'Montenegro',
+ 'MF' => 'Saint-Martin',
+ 'MG' => 'Madagaskar',
+ 'MH' => 'Marshalleilanden',
+ 'MK' => 'Macedonië',
+ 'ML' => 'Mali',
+ 'MM' => 'Myanmar (Birma)',
+ 'MN' => 'Mongolië',
+ 'MO' => 'Macau',
+ 'MP' => 'Noordelijke Marianen',
+ 'MQ' => 'Martinique',
+ 'MR' => 'Mauritanië',
+ 'MS' => 'Montserrat',
+ 'MT' => 'Malta',
+ 'MU' => 'Mauritius',
+ 'MV' => 'Maldiven',
+ 'MW' => 'Malawi',
+ 'MX' => 'Mexico',
+ 'MY' => 'Maleisië',
+ 'MZ' => 'Mozambique',
+ 'NA' => 'Namibië',
+ 'NC' => 'Nieuw-Caledonië',
+ 'NE' => 'Niger',
+ 'NF' => 'Norfolk',
+ 'NG' => 'Nigeria',
+ 'NI' => 'Nicaragua',
+ 'NL' => 'Nederland',
+ 'NO' => 'Noorwegen',
+ 'NP' => 'Nepal',
+ 'NR' => 'Nauru',
+ 'NU' => 'Niue',
+ 'NZ' => 'Nieuw-Zeeland',
+ 'OM' => 'Oman',
+ 'PA' => 'Panama',
+ 'PE' => 'Peru',
+ 'PF' => 'Frans-Polynesië',
+ 'PG' => 'Papoea-Nieuw-Guinea',
+ 'PH' => 'Filipijnen',
+ 'PK' => 'Pakistan',
+ 'PL' => 'Polen',
+ 'PM' => 'Saint-Pierre en Miquelon',
+ 'PN' => 'Pitcairneilanden',
+ 'PR' => 'Puerto Rico',
+ 'PS' => 'Palestina',
+ 'PT' => 'Portugal',
+ 'PW' => 'Palau',
+ 'PY' => 'Paraguay',
+ 'QA' => 'Qatar',
+ 'QO' => 'overig Oceanië',
+ 'RE' => 'Réunion',
+ 'RO' => 'Roemenië',
+ 'RS' => 'Servië',
+ 'RU' => 'Rusland',
+ 'RW' => 'Rwanda',
+ 'SA' => 'Saoedi-Arabië',
+ 'SB' => 'Salomonseilanden',
+ 'SC' => 'Seychellen',
+ 'SD' => 'Soedan',
+ 'SE' => 'Zweden',
+ 'SG' => 'Singapore',
+ 'SH' => 'Sint-Helena',
+ 'SI' => 'Slovenië',
+ 'SJ' => 'Spitsbergen en Jan Mayen',
+ 'SK' => 'Slowakije',
+ 'SL' => 'Sierra Leone',
+ 'SM' => 'San Marino',
+ 'SN' => 'Senegal',
+ 'SO' => 'Somalië',
+ 'SR' => 'Suriname',
+ 'SS' => 'Zuid-Soedan',
+ 'ST' => 'Sao Tomé en Principe',
+ 'SV' => 'El Salvador',
+ 'SX' => 'Sint-Maarten',
+ 'SY' => 'Syrië',
+ 'SZ' => 'Swaziland',
+ 'TA' => 'Tristan da Cunha',
+ 'TC' => 'Turks- en Caicoseilanden',
+ 'TD' => 'Tsjaad',
+ 'TF' => 'Franse Gebieden in de zuidelijke Indische Oceaan',
+ 'TG' => 'Togo',
+ 'TH' => 'Thailand',
+ 'TJ' => 'Tadzjikistan',
+ 'TK' => 'Tokelau',
+ 'TL' => 'Oost-Timor',
+ 'TM' => 'Turkmenistan',
+ 'TN' => 'Tunesië',
+ 'TO' => 'Tonga',
+ 'TR' => 'Turkije',
+ 'TT' => 'Trinidad en Tobago',
+ 'TV' => 'Tuvalu',
+ 'TW' => 'Taiwan',
+ 'TZ' => 'Tanzania',
+ 'UA' => 'Oekraïne',
+ 'UG' => 'Oeganda',
+ 'UM' => 'Kleine afgelegen eilanden van de Verenigde Staten',
+ 'US' => 'VS',
+ 'UY' => 'Uruguay',
+ 'UZ' => 'Oezbekistan',
+ 'VA' => 'Vaticaanstad',
+ 'VC' => 'Saint Vincent en de Grenadines',
+ 'VE' => 'Venezuela',
+ 'VG' => 'Britse Maagdeneilanden',
+ 'VI' => 'Amerikaanse Maagdeneilanden',
+ 'VN' => 'Vietnam',
+ 'VU' => 'Vanuatu',
+ 'WF' => 'Wallis en Futuna',
+ 'WS' => 'Samoa',
+ 'XK' => 'Kosovo',
+ 'YE' => 'Jemen',
+ 'YT' => 'Mayotte',
+ 'ZA' => 'Zuid-Afrika',
+ 'ZM' => 'Zambia',
+ 'ZW' => 'Zimbabwe',
+);
+
+$timeUnits = array(
+ 'day-future-one' => 'over {0} dag',
+ 'day-future-other' => 'over {0} dagen',
+ 'day-narrow-future-one' => 'over {0} dag',
+ 'day-narrow-future-other' => 'over {0} dgn',
+ 'day-narrow-past-one' => '{0} dag geleden',
+ 'day-narrow-past-other' => '{0} dgn geleden',
+ 'day-one' => '{0} dag',
+ 'day-other' => '{0} dagen',
+ 'day-past-one' => '{0} dag geleden',
+ 'day-past-other' => '{0} dagen geleden',
+ 'day-short-future-one' => 'over {0} dag',
+ 'day-short-future-other' => 'over {0} dgn',
+ 'day-short-past-one' => '{0} dag geleden',
+ 'day-short-past-other' => '{0} dgn geleden',
+ 'hour-future-one' => 'over {0} uur',
+ 'hour-future-other' => 'over {0} uur',
+ 'hour-narrow-future-one' => 'over {0} uur',
+ 'hour-narrow-future-other' => 'over {0} uur',
+ 'hour-narrow-past-one' => '{0} uur geleden',
+ 'hour-narrow-past-other' => '{0} uur geleden',
+ 'hour-one' => '{0} uur',
+ 'hour-other' => '{0} uur',
+ 'hour-past-one' => '{0} uur geleden',
+ 'hour-past-other' => '{0} uur geleden',
+ 'hour-short-future-one' => 'over {0} uur',
+ 'hour-short-future-other' => 'over {0} uur',
+ 'hour-short-past-one' => '{0} uur geleden',
+ 'hour-short-past-other' => '{0} uur geleden',
+ 'microsecond-one' => '{0} microseconde',
+ 'microsecond-other' => '{0} microseconden',
+ 'millisecond-one' => '{0} milliseconde',
+ 'millisecond-other' => '{0} milliseconden',
+ 'minute-future-one' => 'over {0} minuut',
+ 'minute-future-other' => 'over {0} minuten',
+ 'minute-narrow-future-one' => 'over {0} min.',
+ 'minute-narrow-future-other' => 'over {0} min.',
+ 'minute-narrow-past-one' => '{0} min. geleden',
+ 'minute-narrow-past-other' => '{0} min. geleden',
+ 'minute-one' => '{0} minuut',
+ 'minute-other' => '{0} minuten',
+ 'minute-past-one' => '{0} minuut geleden',
+ 'minute-past-other' => '{0} minuten geleden',
+ 'minute-short-future-one' => 'over {0} min.',
+ 'minute-short-future-other' => 'over {0} min.',
+ 'minute-short-past-one' => '{0} min. geleden',
+ 'minute-short-past-other' => '{0} min. geleden',
+ 'month-future-one' => 'over {0} maand',
+ 'month-future-other' => 'over {0} maanden',
+ 'month-narrow-future-one' => 'over {0} maand',
+ 'month-narrow-future-other' => 'over {0} maanden',
+ 'month-narrow-past-one' => '{0} maand geleden',
+ 'month-narrow-past-other' => '{0} maanden geleden',
+ 'month-one' => '{0} maand',
+ 'month-other' => '{0} maanden',
+ 'month-past-one' => '{0} maand geleden',
+ 'month-past-other' => '{0} maanden geleden',
+ 'month-short-future-one' => 'over {0} maand',
+ 'month-short-future-other' => 'over {0} maanden',
+ 'month-short-past-one' => '{0} maand geleden',
+ 'month-short-past-other' => '{0} maanden geleden',
+ 'nanosecond-one' => '{0} nanoseconde',
+ 'nanosecond-other' => '{0} nanoseconden',
+ 'quarter-future-one' => 'over {0} kwartaal',
+ 'quarter-future-other' => 'over {0} kwartalen',
+ 'quarter-narrow-future-one' => 'over {0} kwartaal',
+ 'quarter-narrow-future-other' => 'over {0} kwartalen',
+ 'quarter-narrow-past-one' => '{0} kwartaal geleden',
+ 'quarter-narrow-past-other' => '{0} kwartalen geleden',
+ 'quarter-past-one' => '{0} kwartaal geleden',
+ 'quarter-past-other' => '{0} kwartalen geleden',
+ 'quarter-short-future-one' => 'over {0} kwartaal',
+ 'quarter-short-future-other' => 'over {0} kwartalen',
+ 'quarter-short-past-one' => '{0} kwartaal geleden',
+ 'quarter-short-past-other' => '{0} kwartalen geleden',
+ 'second-future-one' => 'over {0} seconde',
+ 'second-future-other' => 'over {0} seconden',
+ 'second-narrow-future-one' => 'over {0} sec.',
+ 'second-narrow-future-other' => 'over {0} sec.',
+ 'second-narrow-past-one' => '{0} sec. geleden',
+ 'second-narrow-past-other' => '{0} sec. geleden',
+ 'second-one' => '{0} seconde',
+ 'second-other' => '{0} seconden',
+ 'second-past-one' => '{0} seconde geleden',
+ 'second-past-other' => '{0} seconden geleden',
+ 'second-short-future-one' => 'over {0} sec.',
+ 'second-short-future-other' => 'over {0} sec.',
+ 'second-short-past-one' => '{0} sec. geleden',
+ 'second-short-past-other' => '{0} sec. geleden',
+ 'week-future-one' => 'over {0} week',
+ 'week-future-other' => 'over {0} weken',
+ 'week-narrow-future-one' => 'over {0} week',
+ 'week-narrow-future-other' => 'over {0} weken',
+ 'week-narrow-past-one' => '{0} week geleden',
+ 'week-narrow-past-other' => '{0} weken geleden',
+ 'week-one' => '{0} week',
+ 'week-other' => '{0} weken',
+ 'week-past-one' => '{0} week geleden',
+ 'week-past-other' => '{0} weken geleden',
+ 'week-short-future-one' => 'over {0} week',
+ 'week-short-future-other' => 'over {0} weken',
+ 'week-short-past-one' => '{0} week geleden',
+ 'week-short-past-other' => '{0} weken geleden',
+ 'year-future-one' => 'over {0} jaar',
+ 'year-future-other' => 'over {0} jaar',
+ 'year-narrow-future-one' => 'over {0} jaar',
+ 'year-narrow-future-other' => 'over {0} jaar',
+ 'year-narrow-past-one' => '{0} jaar geleden',
+ 'year-narrow-past-other' => '{0} jaar geleden',
+ 'year-one' => '{0} jaar',
+ 'year-other' => '{0} jaar',
+ 'year-past-one' => '{0} jaar geleden',
+ 'year-past-other' => '{0} jaar geleden',
+ 'year-short-future-one' => 'over {0} jaar',
+ 'year-short-future-other' => 'over {0} jaar',
+ 'year-short-past-one' => '{0} jaar geleden',
+ 'year-short-past-other' => '{0} jaar geleden',
+);
diff --git a/MLEB/cldr/CldrNames/CldrNamesNn.php b/MLEB/cldr/CldrNames/CldrNamesNn.php
new file mode 100644
index 00000000..16da0e14
--- /dev/null
+++ b/MLEB/cldr/CldrNames/CldrNamesNn.php
@@ -0,0 +1,1055 @@
+<?php
+
+$languageNames = array(
+ 'aa' => 'afar',
+ 'ab' => 'abkhasisk',
+ 'ace' => 'achinesisk',
+ 'ach' => 'acoli',
+ 'ada' => 'adangme',
+ 'ady' => 'adyghe',
+ 'ae' => 'avestisk',
+ 'af' => 'afrikaans',
+ 'afh' => 'afrihili',
+ 'agq' => 'aghem',
+ 'ain' => 'ainu',
+ 'ak' => 'akan',
+ 'akk' => 'akkadisk',
+ 'ale' => 'aleutisk',
+ 'alt' => 'sør-altai',
+ 'am' => 'amharisk',
+ 'an' => 'aragonsk',
+ 'ang' => 'gammalengelsk',
+ 'anp' => 'angika',
+ 'ar' => 'arabisk',
+ 'arc' => 'arameisk',
+ 'arn' => 'araukansk',
+ 'arp' => 'arapaho',
+ 'arw' => 'arawak',
+ 'as' => 'assamisk',
+ 'asa' => 'asu (Tanzania)',
+ 'ast' => 'asturisk',
+ 'av' => 'avarisk',
+ 'awa' => 'awadhi',
+ 'ay' => 'aymara',
+ 'az' => 'aserbajdsjansk',
+ 'ba' => 'basjkirsk',
+ 'bal' => 'baluchi',
+ 'ban' => 'balinesisk',
+ 'bas' => 'basa',
+ 'bax' => 'bamun',
+ 'be' => 'kviterussisk',
+ 'bej' => 'beja',
+ 'bem' => 'bemba',
+ 'bez' => 'bena (Tanzania)',
+ 'bg' => 'bulgarsk',
+ 'bho' => 'bhojpuri',
+ 'bi' => 'bislama',
+ 'bik' => 'bikol',
+ 'bin' => 'bini',
+ 'bla' => 'siksika',
+ 'bm' => 'bambara',
+ 'bn' => 'bengali',
+ 'bo' => 'tibetansk',
+ 'br' => 'bretonsk',
+ 'bra' => 'braj',
+ 'brx' => 'bodo',
+ 'bs' => 'bosnisk',
+ 'bss' => 'bakossi',
+ 'bua' => 'burjatisk',
+ 'bug' => 'buginesisk',
+ 'byn' => 'blin',
+ 'ca' => 'katalansk',
+ 'cad' => 'caddo',
+ 'car' => 'karibisk',
+ 'cch' => 'atsam',
+ 'ce' => 'tsjetsjensk',
+ 'ceb' => 'cebuansk',
+ 'ch' => 'chamorro',
+ 'chb' => 'chibcha',
+ 'chg' => 'chagatai',
+ 'chk' => 'chuukesisk',
+ 'chm' => 'mari',
+ 'chn' => 'chinook',
+ 'cho' => 'choctaw',
+ 'chp' => 'chipewiansk',
+ 'chr' => 'cherokee',
+ 'chy' => 'cheyenne',
+ 'co' => 'korsikansk',
+ 'cop' => 'koptisk',
+ 'cr' => 'cree',
+ 'crh' => 'krimtatarisk',
+ 'cs' => 'tsjekkisk',
+ 'csb' => 'kasjubisk',
+ 'cu' => 'kyrkjeslavisk',
+ 'cv' => 'tsjuvansk',
+ 'cy' => 'walisisk',
+ 'da' => 'dansk',
+ 'dak' => 'dakota',
+ 'dar' => 'dargwa',
+ 'de' => 'tysk',
+ 'de-at' => 'austerriksk tysk',
+ 'de-ch' => 'sveitsisk høgtysk',
+ 'del' => 'delaware',
+ 'den' => 'slavej',
+ 'dgr' => 'dogrib',
+ 'din' => 'dinka',
+ 'dje' => 'zarma',
+ 'doi' => 'dogri',
+ 'dsb' => 'lågsorbisk',
+ 'dua' => 'duala',
+ 'dum' => 'mellumnederlandsk',
+ 'dv' => 'divehi',
+ 'dyo' => 'jola-fonyi',
+ 'dyu' => 'dyula',
+ 'dz' => 'dzongkha',
+ 'ebu' => 'kiembu',
+ 'ee' => 'ewe',
+ 'efi' => 'efik',
+ 'egy' => 'gammalegyptisk',
+ 'eka' => 'ekajuk',
+ 'el' => 'gresk',
+ 'elx' => 'elamittisk',
+ 'en' => 'engelsk',
+ 'en-au' => 'australisk engelsk',
+ 'en-ca' => 'kanadisk engelsk',
+ 'en-gb' => 'britisk engelsk',
+ 'en-us' => 'engelsk (amerikansk)',
+ 'enm' => 'mellomengelsk',
+ 'eo' => 'esperanto',
+ 'es' => 'spansk',
+ 'es-419' => 'latinamerikansk spansk',
+ 'es-es' => 'iberisk spansk',
+ 'et' => 'estisk',
+ 'eu' => 'baskisk',
+ 'ewo' => 'ewondo',
+ 'fa' => 'persisk',
+ 'fan' => 'fang',
+ 'fat' => 'fanti',
+ 'ff' => 'fulani',
+ 'fi' => 'finsk',
+ 'fil' => 'filippinsk',
+ 'fj' => 'fijiansk',
+ 'fo' => 'færøysk',
+ 'fon' => 'fon',
+ 'fr' => 'fransk',
+ 'fr-ca' => 'kanadisk fransk',
+ 'fr-ch' => 'sveitsisk fransk',
+ 'frm' => 'mellomfransk',
+ 'fro' => 'gammalfransk',
+ 'frr' => 'nordfrisisk',
+ 'frs' => 'austfrisisk',
+ 'fur' => 'friuliansk',
+ 'fy' => 'vestfrisisk',
+ 'ga' => 'irsk',
+ 'gaa' => 'ga',
+ 'gay' => 'gayo',
+ 'gba' => 'gbaya',
+ 'gd' => 'skotsk-gælisk',
+ 'gez' => 'ges',
+ 'gil' => 'kiribatisk',
+ 'gl' => 'galicisk',
+ 'gmh' => 'mellomhøgtysk',
+ 'gn' => 'guarani',
+ 'goh' => 'gammalhøgtysk',
+ 'gon' => 'gondi',
+ 'gor' => 'gorontalo',
+ 'got' => 'gotisk',
+ 'grb' => 'grebo',
+ 'grc' => 'gammalgresk',
+ 'gsw' => 'sveitsertysk',
+ 'gu' => 'gujarati',
+ 'gv' => 'manx',
+ 'gwi' => 'gwichin',
+ 'ha' => 'hausa',
+ 'hai' => 'haida',
+ 'haw' => 'hawaiisk',
+ 'he' => 'hebraisk',
+ 'hi' => 'hindi',
+ 'hil' => 'hiligaynon',
+ 'hit' => 'hettittisk',
+ 'hmn' => 'hmong',
+ 'ho' => 'hiri motu',
+ 'hr' => 'kroatisk',
+ 'hsb' => 'høgsorbisk',
+ 'ht' => 'haitisk',
+ 'hu' => 'ungarsk',
+ 'hup' => 'hupa',
+ 'hy' => 'armensk',
+ 'hz' => 'herero',
+ 'ia' => 'interlingua',
+ 'iba' => 'iban',
+ 'ibb' => 'ibibio',
+ 'id' => 'indonesisk',
+ 'ie' => 'interlingue',
+ 'ig' => 'ibo',
+ 'ii' => 'sichuan-yi',
+ 'ik' => 'inupiak',
+ 'ilo' => 'iloko',
+ 'inh' => 'ingusjisk',
+ 'io' => 'ido',
+ 'is' => 'islandsk',
+ 'it' => 'italiensk',
+ 'iu' => 'inuktitut',
+ 'ja' => 'japansk',
+ 'jbo' => 'lojban',
+ 'jpr' => 'jødepersisk',
+ 'jrb' => 'jødearabisk',
+ 'jv' => 'javanesisk',
+ 'ka' => 'georgisk',
+ 'kaa' => 'karakalpakisk',
+ 'kab' => 'kabylsk',
+ 'kac' => 'kachin',
+ 'kaj' => 'jju',
+ 'kam' => 'kamba',
+ 'kaw' => 'kawi',
+ 'kbd' => 'kabardisk',
+ 'kcg' => 'tyap',
+ 'kea' => 'kapverdisk',
+ 'kfo' => 'koro',
+ 'kg' => 'kikongo',
+ 'kha' => 'khasi',
+ 'kho' => 'khotanesisk',
+ 'ki' => 'kikuyu',
+ 'kj' => 'kuanyama',
+ 'kk' => 'kasakhisk',
+ 'kkj' => 'kako',
+ 'kl' => 'kalaallisut; grønlandsk',
+ 'km' => 'khmer',
+ 'kmb' => 'kimbundu',
+ 'kn' => 'kannada',
+ 'ko' => 'koreansk',
+ 'kok' => 'konkani',
+ 'kos' => 'kosraeansk',
+ 'kpe' => 'kpelle',
+ 'kr' => 'kanuri',
+ 'krc' => 'karachay-balkar',
+ 'krl' => 'karelsk',
+ 'kru' => 'kurukh',
+ 'ks' => 'kasjmiri',
+ 'ksf' => 'bafia',
+ 'ku' => 'kurdisk',
+ 'kum' => 'kumyk',
+ 'kut' => 'kutenai',
+ 'kv' => 'komi',
+ 'kw' => 'kornisk',
+ 'ky' => 'kirgisisk',
+ 'la' => 'latin',
+ 'lad' => 'ladinsk',
+ 'lah' => 'lahnda',
+ 'lam' => 'lamba',
+ 'lb' => 'luxemburgsk',
+ 'lez' => 'lezghian',
+ 'lg' => 'ganda',
+ 'li' => 'limburgisk',
+ 'ln' => 'lingala',
+ 'lo' => 'laotisk',
+ 'lol' => 'mongo',
+ 'loz' => 'lozi',
+ 'lt' => 'litauisk',
+ 'lu' => 'luba-katanga',
+ 'lua' => 'luba-lulua',
+ 'lui' => 'luiseno',
+ 'lun' => 'lunda',
+ 'luo' => 'luo',
+ 'lus' => 'lushai',
+ 'luy' => 'olulujia',
+ 'lv' => 'latvisk',
+ 'mad' => 'maduresisk',
+ 'mag' => 'magahi',
+ 'mai' => 'maithili',
+ 'mak' => 'makasar',
+ 'man' => 'mandingo',
+ 'mas' => 'masai',
+ 'mdf' => 'moksha',
+ 'mdr' => 'mandar',
+ 'men' => 'mende',
+ 'mg' => 'madagassisk',
+ 'mga' => 'mellomirsk',
+ 'mh' => 'marshallesisk',
+ 'mi' => 'maori',
+ 'mic' => 'micmac',
+ 'min' => 'minangkabau',
+ 'mk' => 'makedonsk',
+ 'ml' => 'malayalam',
+ 'mn' => 'mongolsk',
+ 'mnc' => 'mandsju',
+ 'mni' => 'manipuri',
+ 'moh' => 'mohawk',
+ 'mos' => 'mossi',
+ 'mr' => 'marathi',
+ 'ms' => 'malayisk',
+ 'mt' => 'maltesisk',
+ 'mua' => 'mundang',
+ 'mul' => 'fleire språk',
+ 'mus' => 'creek',
+ 'mwl' => 'mirandesisk',
+ 'mwr' => 'marwari',
+ 'my' => 'burmesisk',
+ 'myv' => 'erzya',
+ 'na' => 'nauru',
+ 'nap' => 'napolitansk',
+ 'nb' => 'bokmål',
+ 'nd' => 'nord-ndebele',
+ 'nds' => 'lågtysk',
+ 'ne' => 'nepalsk',
+ 'new' => 'newari',
+ 'ng' => 'ndonga',
+ 'nia' => 'nias',
+ 'niu' => 'niueansk',
+ 'nl' => 'nederlandsk',
+ 'nl-be' => 'flamsk',
+ 'nmg' => 'kwasio',
+ 'nn' => 'nynorsk',
+ 'no' => 'norsk',
+ 'nog' => 'nogai',
+ 'non' => 'gammalnorsk',
+ 'nqo' => 'n’ko',
+ 'nr' => 'sør-ndebele',
+ 'nso' => 'nordsotho',
+ 'nus' => 'nuer',
+ 'nv' => 'navajo',
+ 'nwc' => 'klassisk newarisk',
+ 'ny' => 'nyanja',
+ 'nym' => 'nyamwezi',
+ 'nyn' => 'nyankole',
+ 'nyo' => 'nyoro',
+ 'nzi' => 'nzima',
+ 'oc' => 'oksitansk',
+ 'oj' => 'ojibwa',
+ 'om' => 'oromo',
+ 'or' => 'oriya',
+ 'os' => 'ossetisk',
+ 'osa' => 'osage',
+ 'ota' => 'ottomansk tyrkisk',
+ 'pa' => 'panjabi',
+ 'pag' => 'pangasinan',
+ 'pal' => 'pahlavi',
+ 'pam' => 'pampanga',
+ 'pap' => 'papiamento',
+ 'pau' => 'palauisk',
+ 'peo' => 'gammalpersisk',
+ 'phn' => 'fønikisk',
+ 'pi' => 'pali',
+ 'pl' => 'polsk',
+ 'pon' => 'ponapisk',
+ 'pro' => 'gammalprovençalsk',
+ 'ps' => 'pashto',
+ 'pt' => 'portugisisk',
+ 'pt-br' => 'brasiliansk portugisisk',
+ 'pt-pt' => 'europeisk portugisisk',
+ 'qu' => 'quechua',
+ 'raj' => 'rajasthani',
+ 'rap' => 'rapanui',
+ 'rar' => 'rarotongansk',
+ 'rm' => 'retoromansk',
+ 'rn' => 'rundi',
+ 'ro' => 'rumensk',
+ 'ro-md' => 'moldavisk',
+ 'rof' => 'rombo',
+ 'rom' => 'romani',
+ 'ru' => 'russisk',
+ 'rup' => 'aromansk',
+ 'rw' => 'kinjarwanda',
+ 'rwk' => 'rwa',
+ 'sa' => 'sanskrit',
+ 'sad' => 'sandawe',
+ 'sah' => 'jakutsk',
+ 'sam' => 'samaritansk arameisk',
+ 'sas' => 'sasak',
+ 'sat' => 'santali',
+ 'sbp' => 'sangu',
+ 'sc' => 'sardinsk',
+ 'scn' => 'siciliansk',
+ 'sco' => 'skotsk',
+ 'sd' => 'sindhi',
+ 'se' => 'nordsamisk',
+ 'sel' => 'selkupisk',
+ 'sg' => 'sango',
+ 'sga' => 'gammalirsk',
+ 'sh' => 'serbokroatisk',
+ 'shn' => 'shan',
+ 'si' => 'singalesisk',
+ 'sid' => 'sidamo',
+ 'sk' => 'slovakisk',
+ 'sl' => 'slovensk',
+ 'sm' => 'samoansk',
+ 'sma' => 'sørsamisk',
+ 'smj' => 'lulesamisk',
+ 'smn' => 'enaresamisk',
+ 'sms' => 'skoltesamisk',
+ 'sn' => 'shona',
+ 'snk' => 'soninke',
+ 'so' => 'somali',
+ 'sog' => 'sogdisk',
+ 'sq' => 'albansk',
+ 'sr' => 'serbisk',
+ 'srn' => 'sranan tongo',
+ 'srr' => 'serer',
+ 'ss' => 'swati',
+ 'st' => 'sørsotho',
+ 'su' => 'sundanesisk',
+ 'suk' => 'sukuma',
+ 'sus' => 'susu',
+ 'sux' => 'sumerisk',
+ 'sv' => 'svensk',
+ 'sw' => 'swahili',
+ 'swb' => 'shimaore',
+ 'syc' => 'klassisk syrisk',
+ 'syr' => 'syrisk',
+ 'ta' => 'tamil',
+ 'te' => 'telugu',
+ 'tem' => 'temne',
+ 'ter' => 'tereno',
+ 'tet' => 'tetum',
+ 'tg' => 'tatsjikisk',
+ 'th' => 'thai',
+ 'ti' => 'tigrinja',
+ 'tig' => 'tigré',
+ 'tiv' => 'tivi',
+ 'tk' => 'turkmensk',
+ 'tkl' => 'tokelau',
+ 'tl' => 'tagalog',
+ 'tlh' => 'klingon',
+ 'tli' => 'tlingit',
+ 'tmh' => 'tamasjek',
+ 'tn' => 'tswana',
+ 'to' => 'tonga (Tonga-øyane)',
+ 'tog' => 'tonga (Nyasa)',
+ 'tpi' => 'tok pisin',
+ 'tr' => 'tyrkisk',
+ 'ts' => 'tsonga',
+ 'tsi' => 'tsimshian',
+ 'tt' => 'tatarisk',
+ 'tum' => 'tumbuka',
+ 'tvl' => 'tuvalu',
+ 'tw' => 'twi',
+ 'twq' => 'tasawaq',
+ 'ty' => 'tahitisk',
+ 'tyv' => 'tuvinisk',
+ 'udm' => 'udmurt',
+ 'ug' => 'uigurisk',
+ 'uga' => 'ugaritisk',
+ 'uk' => 'ukrainsk',
+ 'umb' => 'umbundu',
+ 'und' => 'ukjent språk',
+ 'ur' => 'urdu',
+ 'uz' => 'usbekisk',
+ 'vai' => 'vai',
+ 've' => 'venda',
+ 'vi' => 'vietnamesisk',
+ 'vo' => 'volapyk',
+ 'vot' => 'votisk',
+ 'wa' => 'vallonsk',
+ 'wal' => 'walamo',
+ 'war' => 'waray',
+ 'was' => 'washo',
+ 'wo' => 'wolof',
+ 'xal' => 'kalmyk',
+ 'xh' => 'xhosa',
+ 'yao' => 'yao',
+ 'yap' => 'yapesisk',
+ 'yav' => 'yangben',
+ 'yi' => 'jiddisk',
+ 'yo' => 'joruba',
+ 'yue' => 'kantonesisk',
+ 'za' => 'zhuang',
+ 'zap' => 'zapotec',
+ 'zbl' => 'blissymbol',
+ 'zen' => 'zenaga',
+ 'zh' => 'kinesisk',
+ 'zh-hans' => 'forenkla kinesisk',
+ 'zh-hant' => 'tradisjonell kinesisk',
+ 'zu' => 'zulu',
+ 'zun' => 'zuni',
+ 'zxx' => 'utan språkleg innhald',
+ 'zza' => 'zaza',
+);
+
+$currencyNames = array(
+ 'ADP' => 'andorransk peseta',
+ 'AED' => 'UAE dirham',
+ 'AFA' => 'afghani (1927–2002)',
+ 'AFN' => 'afghani',
+ 'ALL' => 'albansk lek',
+ 'AMD' => 'armensk dram',
+ 'ANG' => 'nederlansk antillegylden',
+ 'AOA' => 'angolsk kwanza',
+ 'AOK' => 'angolsk kwanza (1977–1990)',
+ 'AON' => 'angolsk ny kwanza (1990–2000)',
+ 'AOR' => 'angolsk kwanza reajustado (1995–1999)',
+ 'ARA' => 'argentisk austral',
+ 'ARP' => 'argentinsk peso (1983–1985)',
+ 'ARS' => 'argentinsk peso',
+ 'ATS' => 'austerriksk schilling',
+ 'AUD' => 'australsk dollar',
+ 'AWG' => 'arubisk gylden',
+ 'AZM' => 'aserbaijansk manat',
+ 'AZN' => 'aserbajdsjansk manat',
+ 'BAD' => 'bosnisk-hercegovinsk dinar',
+ 'BAM' => 'bosnisk-hercegovinsk mark (konvertibel)',
+ 'BBD' => 'barbadisk dollar',
+ 'BDT' => 'bangladeshisk taka',
+ 'BEC' => 'belgisk franc (konvertibel)',
+ 'BEF' => 'belgisk franc',
+ 'BEL' => 'belgisk franc (finansiell)',
+ 'BGL' => 'bulgarsk hard lev',
+ 'BGN' => 'bulgarsk ny lev',
+ 'BHD' => 'bahrainsk dinar',
+ 'BIF' => 'burundisk franc',
+ 'BMD' => 'bermudisk dollar',
+ 'BND' => 'bruneisk dollar',
+ 'BOB' => 'boliviano',
+ 'BOP' => 'bolivisk peso',
+ 'BOV' => 'bolivisk mvdol',
+ 'BRB' => 'brasiliansk cruzeiro novo (1967–1986)',
+ 'BRC' => 'brasiliansk cruzado',
+ 'BRE' => 'brasiliansk cruzeiro (1990–1993)',
+ 'BRL' => 'brasiliansk real',
+ 'BRN' => 'brasiliansk cruzado novo',
+ 'BRR' => 'brasiliansk cruzeiro',
+ 'BSD' => 'bahamisk dollar',
+ 'BTN' => 'bhutansk ngultrum',
+ 'BUK' => 'burmesisk kyat',
+ 'BWP' => 'botswansk pula',
+ 'BYB' => 'kviterussisk ny rubel (1994–1999)',
+ 'BYR' => 'kviterussisk rubel',
+ 'BZD' => 'belizisk dollar',
+ 'CAD' => 'kanadisk dollar',
+ 'CDF' => 'kongolesisk franc',
+ 'CHE' => 'WIR euro',
+ 'CHF' => 'sveitsisk franc',
+ 'CHW' => 'WIR franc',
+ 'CLF' => 'chilensk unidades de fomento',
+ 'CLP' => 'chilensk peso',
+ 'CNY' => 'kinesisk yuan renminbi',
+ 'COP' => 'colombiansk peso',
+ 'COU' => 'unidad de valor real',
+ 'CRC' => 'costaricansk colon',
+ 'CSD' => 'gammal serbisk dinar',
+ 'CSK' => 'tsjekkoslovakisk koruna (hard)',
+ 'CUC' => 'kubansk peso (konvertibel)',
+ 'CUP' => 'kubansk peso',
+ 'CVE' => 'kappverdisk escudo',
+ 'CYP' => 'kypriotisk pund',
+ 'CZK' => 'tsjekkisk koruna',
+ 'DDM' => 'austtysk mark',
+ 'DEM' => 'tysk mark',
+ 'DJF' => 'djiboutisk franc',
+ 'DKK' => 'dansk krone',
+ 'DOP' => 'dominikansk peso',
+ 'DZD' => 'algerisk dinar',
+ 'ECS' => 'ecuadoriansk sucre',
+ 'ECV' => 'ecuadoriansk unidad de valor constante (UVC)',
+ 'EEK' => 'estisk kroon',
+ 'EGP' => 'egyptisk pund',
+ 'ERN' => 'eritreisk nakfa',
+ 'ESA' => 'spansk peseta (A–konto)',
+ 'ESB' => 'spansk peseta (konvertibel konto)',
+ 'ESP' => 'spansk peseta',
+ 'ETB' => 'etiopisk birr',
+ 'EUR' => 'euro',
+ 'FIM' => 'finsk mark',
+ 'FJD' => 'fijiansk dollar',
+ 'FKP' => 'Falkland-pund',
+ 'FRF' => 'fransk franc',
+ 'GBP' => 'britisk pund sterling',
+ 'GEK' => 'georgisk kupon larit',
+ 'GEL' => 'georgisk lari',
+ 'GHC' => 'ghanesisk cedi (1979–2007)',
+ 'GHS' => 'ghanesisk cedi',
+ 'GIP' => 'gibraltarsk pund',
+ 'GMD' => 'gambisk dalasi',
+ 'GNF' => 'guineansk franc',
+ 'GNS' => 'guineansk syli',
+ 'GQE' => 'ekvatorialguineansk ekwele guineana',
+ 'GRD' => 'gresk drakme',
+ 'GTQ' => 'guatemalansk quetzal',
+ 'GWE' => 'portugisisk guinea escudo',
+ 'GWP' => 'Guinea-Bissau-peso',
+ 'GYD' => 'guyansk dollar',
+ 'HKD' => 'Hongkong-dollar',
+ 'HNL' => 'honduransk lempira',
+ 'HRD' => 'kroatisk dinar',
+ 'HRK' => 'kroatisk kuna',
+ 'HTG' => 'haitisk gourde',
+ 'HUF' => 'ungarsk forint',
+ 'IDR' => 'indonesisk rupi',
+ 'IEP' => 'irsk pund',
+ 'ILP' => 'israelsk pund',
+ 'ILS' => 'israelsk ny shekel',
+ 'INR' => 'indisk rupi',
+ 'IQD' => 'iraksk dinar',
+ 'IRR' => 'iransk rial',
+ 'ISK' => 'islandsk krone',
+ 'ITL' => 'italiensk lire',
+ 'JMD' => 'jamaikansk dollar',
+ 'JOD' => 'jordansk dinar',
+ 'JPY' => 'japansk yen',
+ 'KES' => 'kenyansk shilling',
+ 'KGS' => 'kirgisisk som',
+ 'KHR' => 'kambodsjansk riel',
+ 'KMF' => 'komorisk franc',
+ 'KPW' => 'nordkoreansk won',
+ 'KRW' => 'sørkoreansk won',
+ 'KWD' => 'kuwaitisk dinar',
+ 'KYD' => 'caymansk dollar',
+ 'KZT' => 'kasakhstansk tenge',
+ 'LAK' => 'laotisk kip',
+ 'LBP' => 'libanesisk pund',
+ 'LKR' => 'srilankisk rupi',
+ 'LRD' => 'liberisk dollar',
+ 'LSL' => 'lesothisk loti',
+ 'LTL' => 'litauisk lita',
+ 'LTT' => 'litauisk talona',
+ 'LUC' => 'luxemburgsk konvertibel franc',
+ 'LUF' => 'luxemburgsk franc',
+ 'LUL' => 'luxemburgsk finansiell franc',
+ 'LVL' => 'latvisk lat',
+ 'LVR' => 'latvisk rubel',
+ 'LYD' => 'libysk dinar',
+ 'MAD' => 'marokkansk dirham',
+ 'MAF' => 'marokkansk franc',
+ 'MDL' => 'moldovsk leu',
+ 'MGA' => 'madagassisk ariary',
+ 'MGF' => 'madagassisk franc',
+ 'MKD' => 'makedonsk denar',
+ 'MLF' => 'malisk franc',
+ 'MMK' => 'myanmarsk kyat',
+ 'MNT' => 'mongolsk tugrik',
+ 'MOP' => 'makaosk pataca',
+ 'MRO' => 'mauritansk ouguiya',
+ 'MTL' => 'maltesisk lira',
+ 'MTP' => 'maltesisk pund',
+ 'MUR' => 'mauritansk rupi',
+ 'MVR' => 'maldivisk rufiyaa',
+ 'MWK' => 'malawisk kwacha',
+ 'MXN' => 'meksikansk peso',
+ 'MXP' => 'meksikansk sølvpeso (1861–1992)',
+ 'MXV' => 'meksikansk unidad de inversion (UDI)',
+ 'MYR' => 'malaysisk ringgit',
+ 'MZE' => 'mosambikisk escudo',
+ 'MZM' => 'gammal mosambikisk metical',
+ 'MZN' => 'mosambikisk metical',
+ 'NAD' => 'namibisk dollar',
+ 'NGN' => 'nigeriansk naira',
+ 'NIC' => 'nicaraguansk cordoba',
+ 'NIO' => 'nicaraguansk cordoba oro',
+ 'NLG' => 'nederlandsk gylden',
+ 'NOK' => 'norsk krone',
+ 'NPR' => 'nepalsk rupi',
+ 'NZD' => 'new zealandsk dollar',
+ 'OMR' => 'omansk rial',
+ 'PAB' => 'panamansk balboa',
+ 'PEI' => 'peruansk inti',
+ 'PEN' => 'peruansk nuevo sol',
+ 'PES' => 'peruansk sol',
+ 'PGK' => 'papuansk kina',
+ 'PHP' => 'filippinsk peso',
+ 'PKR' => 'pakistansk rupi',
+ 'PLN' => 'polsk zloty',
+ 'PLZ' => 'polsk zloty (1950–1995)',
+ 'PTE' => 'portugisisk escudo',
+ 'PYG' => 'paraguayansk guarani',
+ 'QAR' => 'qatarsk rial',
+ 'RHD' => 'rhodesisk dollar',
+ 'ROL' => 'gammal rumensk leu',
+ 'RON' => 'rumensk leu',
+ 'RSD' => 'serbisk dinar',
+ 'RUB' => 'russisk rubel',
+ 'RUR' => 'russisk rubel (1991–1998)',
+ 'RWF' => 'rwandisk franc',
+ 'SAR' => 'saudiarabisk rial',
+ 'SBD' => 'salomonsk dollar',
+ 'SCR' => 'seychellisk rupi',
+ 'SDD' => 'gammal sudanesisk dinar',
+ 'SDG' => 'sudansk pund',
+ 'SDP' => 'gammalt sudanesisk pund',
+ 'SEK' => 'svensk krone',
+ 'SGD' => 'singaporsk dollar',
+ 'SHP' => 'sankthelensk pund',
+ 'SIT' => 'slovensk tolar',
+ 'SKK' => 'slovakisk koruna',
+ 'SLL' => 'sierraleonsk leone',
+ 'SOS' => 'somalisk shilling',
+ 'SRD' => 'surinamsk dollar',
+ 'SRG' => 'surinamsk gylden',
+ 'STD' => 'Sao Tome og Principe-dobra',
+ 'SUR' => 'sovjetisk rubel',
+ 'SVC' => 'salvadoransk colon',
+ 'SYP' => 'syrisk pund',
+ 'SZL' => 'swazilandsk lilangeni',
+ 'THB' => 'thailandsk baht',
+ 'TJR' => 'tadsjikisk rubel',
+ 'TJS' => 'tadsjikisk somoni',
+ 'TMM' => 'turkmensk manat',
+ 'TMT' => 'turkmenistansk manat',
+ 'TND' => 'tunisisk dinar',
+ 'TOP' => 'tongansk paʻanga',
+ 'TPE' => 'timoresisk escudo',
+ 'TRL' => 'gammal tyrkiske lire',
+ 'TRY' => 'tyrkisk lire',
+ 'TTD' => 'trinidadisk dollar',
+ 'TWD' => 'taiwansk ny dollar',
+ 'TZS' => 'tanzaniansk shilling',
+ 'UAH' => 'ukrainsk hryvnia',
+ 'UAK' => 'ukrainsk karbovanetz',
+ 'UGS' => 'ugandisk shilling (1966–1987)',
+ 'UGX' => 'ugandisk shilling',
+ 'USD' => 'amerikansk dollar',
+ 'USN' => 'amerikansk dollar (neste dag)',
+ 'USS' => 'amerikansk dollar (same dag)',
+ 'UYI' => 'uruguayansk peso en unidades indexadas',
+ 'UYP' => 'uruguayansk peso (1975–1993)',
+ 'UYU' => 'uruguayansk peso',
+ 'UZS' => 'usbekisk sum',
+ 'VEB' => 'venezuelansk bolivar (1871–2008)',
+ 'VEF' => 'venezuelansk bolivar',
+ 'VND' => 'vietnamesisk dong',
+ 'VUV' => 'vanuatuisk vatu',
+ 'WST' => 'vestsamoisk tala',
+ 'XAF' => 'CFA franc BEAC',
+ 'XAG' => 'sølv',
+ 'XAU' => 'gull',
+ 'XBA' => 'europeisk samansett eining',
+ 'XBB' => 'europeisk monetær eining',
+ 'XBC' => 'europeisk kontoeining (XBC)',
+ 'XBD' => 'europeisk kontoeining (XBD)',
+ 'XCD' => 'austkaribisk dollar',
+ 'XDR' => 'spesielle trekkrettar',
+ 'XEU' => 'europeisk valutaeining',
+ 'XFO' => 'fransk gullfranc',
+ 'XFU' => 'fransk UIC-franc',
+ 'XOF' => 'CFA franc BCEAO',
+ 'XPD' => 'palladium',
+ 'XPF' => 'CFP franc',
+ 'XPT' => 'platina',
+ 'XRE' => 'RINET-fond',
+ 'XTS' => 'testvalutakode',
+ 'XXX' => 'ukjend eller ugyldig valuta',
+ 'YDD' => 'jemenittisk dinar',
+ 'YER' => 'jemenittisk rial',
+ 'YUD' => 'jugoslavisk dinar (hard)',
+ 'YUM' => 'jugoslavisk noviy-dinar',
+ 'YUN' => 'jugoslavisk konvertibel dinar',
+ 'ZAL' => 'sørafrikansk rand (finansiell)',
+ 'ZAR' => 'sørafrikansk rand',
+ 'ZMK' => 'zambisk kwacha (1968–2012)',
+ 'ZMW' => 'zambisk kwacha',
+ 'ZRN' => 'zairisk ny zaire',
+ 'ZRZ' => 'zairisk zaire',
+ 'ZWD' => 'zimbabwisk dollar',
+ 'ZWL' => 'Zimbabwe-dollar (2009)',
+);
+
+$currencySymbols = array(
+ 'NOK' => 'kr',
+);
+
+$countryNames = array(
+ 'AC' => 'Ascension',
+ 'AD' => 'Andorra',
+ 'AE' => 'Dei sameinte arabiske emirata',
+ 'AF' => 'Afghanistan',
+ 'AG' => 'Antigua og Barbuda',
+ 'AI' => 'Anguilla',
+ 'AL' => 'Albania',
+ 'AM' => 'Armenia',
+ 'AN' => 'Dei nederlandske Antillane',
+ 'AO' => 'Angola',
+ 'AQ' => 'Antarktis',
+ 'AR' => 'Argentina',
+ 'AS' => 'Amerikansk Samoa',
+ 'AT' => 'Austerrike',
+ 'AU' => 'Australia',
+ 'AW' => 'Aruba',
+ 'AX' => 'Åland',
+ 'AZ' => 'Aserbajdsjan',
+ 'BA' => 'Bosnia og Hercegovina',
+ 'BB' => 'Barbados',
+ 'BD' => 'Bangladesh',
+ 'BE' => 'Belgia',
+ 'BF' => 'Burkina Faso',
+ 'BG' => 'Bulgaria',
+ 'BH' => 'Bahrain',
+ 'BI' => 'Burundi',
+ 'BJ' => 'Benin',
+ 'BL' => 'Saint Barthélemy',
+ 'BM' => 'Bermuda',
+ 'BN' => 'Brunei Darussalam',
+ 'BO' => 'Bolivia',
+ 'BQ' => 'Karibisk Nederland',
+ 'BR' => 'Brasil',
+ 'BS' => 'Bahamas',
+ 'BT' => 'Bhutan',
+ 'BV' => 'Bouvetøya',
+ 'BW' => 'Botswana',
+ 'BY' => 'Kviterussland',
+ 'BZ' => 'Belize',
+ 'CA' => 'Canada',
+ 'CC' => 'Kokosøyane',
+ 'CD' => 'Kongo-Kinshasa',
+ 'CF' => 'Den sentralafrikanske republikken',
+ 'CG' => 'Kongo-Brazzaville',
+ 'CH' => 'Sveits',
+ 'CI' => 'Elfenbeinskysten',
+ 'CK' => 'Cookøyane',
+ 'CL' => 'Chile',
+ 'CM' => 'Kamerun',
+ 'CN' => 'Kina',
+ 'CO' => 'Colombia',
+ 'CP' => 'Clippertonøya',
+ 'CR' => 'Costa Rica',
+ 'CU' => 'Cuba',
+ 'CV' => 'Kapp Verde',
+ 'CW' => 'Curaçao',
+ 'CX' => 'Christmasøya',
+ 'CY' => 'Kypros',
+ 'CZ' => 'Tsjekkia',
+ 'DE' => 'Tyskland',
+ 'DG' => 'Diego Garcia',
+ 'DJ' => 'Djibouti',
+ 'DK' => 'Danmark',
+ 'DM' => 'Dominica',
+ 'DO' => 'Den dominikanske republikken',
+ 'DZ' => 'Algerie',
+ 'EA' => 'Ceuta og Melilla',
+ 'EC' => 'Ecuador',
+ 'EE' => 'Estland',
+ 'EG' => 'Egypt',
+ 'EH' => 'Vest-Sahara',
+ 'ER' => 'Eritrea',
+ 'ES' => 'Spania',
+ 'ET' => 'Etiopia',
+ 'EU' => 'Den europeiske unionen',
+ 'FI' => 'Finland',
+ 'FJ' => 'Fiji',
+ 'FK' => 'Falklandsøyane',
+ 'FM' => 'Mikronesiaføderasjonen',
+ 'FO' => 'Færøyane',
+ 'FR' => 'Frankrike',
+ 'GA' => 'Gabon',
+ 'GB' => 'Storbritannia',
+ 'GD' => 'Grenada',
+ 'GE' => 'Georgia',
+ 'GF' => 'Fransk Guyana',
+ 'GG' => 'Guernsey',
+ 'GH' => 'Ghana',
+ 'GI' => 'Gibraltar',
+ 'GL' => 'Grønland',
+ 'GM' => 'Gambia',
+ 'GN' => 'Guinea',
+ 'GP' => 'Guadeloupe',
+ 'GQ' => 'Ekvatorial-Guinea',
+ 'GR' => 'Hellas',
+ 'GS' => 'Sør-Georgia og Sør-Sandwich-øyane',
+ 'GT' => 'Guatemala',
+ 'GU' => 'Guam',
+ 'GW' => 'Guinea-Bissau',
+ 'GY' => 'Guyana',
+ 'HK' => 'Hongkong',
+ 'HM' => 'Heard- og McDonaldsøyane',
+ 'HN' => 'Honduras',
+ 'HR' => 'Kroatia',
+ 'HT' => 'Haiti',
+ 'HU' => 'Ungarn',
+ 'IC' => 'Kanariøyane',
+ 'ID' => 'Indonesia',
+ 'IE' => 'Irland',
+ 'IL' => 'Israel',
+ 'IM' => 'Man',
+ 'IN' => 'India',
+ 'IO' => 'Britiske område i Det indiske hav',
+ 'IQ' => 'Irak',
+ 'IR' => 'Iran',
+ 'IS' => 'Island',
+ 'IT' => 'Italia',
+ 'JE' => 'Jersey',
+ 'JM' => 'Jamaica',
+ 'JO' => 'Jordan',
+ 'JP' => 'Japan',
+ 'KE' => 'Kenya',
+ 'KG' => 'Kirgisistan',
+ 'KH' => 'Kambodsja',
+ 'KI' => 'Kiribati',
+ 'KM' => 'Komorene',
+ 'KN' => 'St. Christopher og Nevis',
+ 'KP' => 'Nord-Korea',
+ 'KR' => 'Sør-Korea',
+ 'KW' => 'Kuwait',
+ 'KY' => 'Caymanøyane',
+ 'KZ' => 'Kasakhstan',
+ 'LA' => 'Laos',
+ 'LB' => 'Libanon',
+ 'LC' => 'St. Lucia',
+ 'LI' => 'Liechtenstein',
+ 'LK' => 'Sri Lanka',
+ 'LR' => 'Liberia',
+ 'LS' => 'Lesotho',
+ 'LT' => 'Litauen',
+ 'LU' => 'Luxembourg',
+ 'LV' => 'Latvia',
+ 'LY' => 'Libya',
+ 'MA' => 'Marokko',
+ 'MC' => 'Monaco',
+ 'MD' => 'Moldova',
+ 'ME' => 'Montenegro',
+ 'MF' => 'Saint Martin',
+ 'MG' => 'Madagaskar',
+ 'MH' => 'Marshalløyane',
+ 'MK' => 'Makedonia',
+ 'ML' => 'Mali',
+ 'MM' => 'Myanmar',
+ 'MN' => 'Mongolia',
+ 'MO' => 'Macao',
+ 'MP' => 'Nord-Marianane',
+ 'MQ' => 'Martinique',
+ 'MR' => 'Mauritania',
+ 'MS' => 'Montserrat',
+ 'MT' => 'Malta',
+ 'MU' => 'Mauritius',
+ 'MV' => 'Maldivane',
+ 'MW' => 'Malawi',
+ 'MX' => 'Mexico',
+ 'MY' => 'Malaysia',
+ 'MZ' => 'Mosambik',
+ 'NA' => 'Namibia',
+ 'NC' => 'Ny-Caledonia',
+ 'NE' => 'Niger',
+ 'NF' => 'Norfolkøyane',
+ 'NG' => 'Nigeria',
+ 'NI' => 'Nicaragua',
+ 'NL' => 'Nederland',
+ 'NO' => 'Noreg',
+ 'NP' => 'Nepal',
+ 'NR' => 'Nauru',
+ 'NU' => 'Niue',
+ 'NZ' => 'New Zealand',
+ 'OM' => 'Oman',
+ 'PA' => 'Panama',
+ 'PE' => 'Peru',
+ 'PF' => 'Fransk Polynesia',
+ 'PG' => 'Papua Ny-Guinea',
+ 'PH' => 'Filippinane',
+ 'PK' => 'Pakistan',
+ 'PL' => 'Polen',
+ 'PM' => 'St. Pierre og Miquelon',
+ 'PN' => 'Pitcairn',
+ 'PR' => 'Puerto Rico',
+ 'PS' => 'Palestina',
+ 'PT' => 'Portugal',
+ 'PW' => 'Palau',
+ 'PY' => 'Paraguay',
+ 'QA' => 'Qatar',
+ 'QO' => 'Ytre Oseania',
+ 'RE' => 'Réunion',
+ 'RO' => 'Romania',
+ 'RS' => 'Serbia',
+ 'RU' => 'Russland',
+ 'RW' => 'Rwanda',
+ 'SA' => 'Saudi Arabia',
+ 'SB' => 'Salomonøyane',
+ 'SC' => 'Seychellane',
+ 'SD' => 'Sudan',
+ 'SE' => 'Sverige',
+ 'SG' => 'Singapore',
+ 'SH' => 'Saint Helena',
+ 'SI' => 'Slovenia',
+ 'SJ' => 'Svalbard og Jan Mayen',
+ 'SK' => 'Slovakia',
+ 'SL' => 'Sierra Leone',
+ 'SM' => 'San Marino',
+ 'SN' => 'Senegal',
+ 'SO' => 'Somalia',
+ 'SR' => 'Surinam',
+ 'SS' => 'Sør-Sudan',
+ 'ST' => 'São Tomé og Príncipe',
+ 'SV' => 'El Salvador',
+ 'SX' => 'Nederlandsk St. Martin',
+ 'SY' => 'Syria',
+ 'SZ' => 'Swaziland',
+ 'TA' => 'Tristan da Cunha',
+ 'TC' => 'Turks- og Caicosøyane',
+ 'TD' => 'Tchad',
+ 'TF' => 'Franske sørområde',
+ 'TG' => 'Togo',
+ 'TH' => 'Thailand',
+ 'TJ' => 'Tadsjikistan',
+ 'TK' => 'Tokelau',
+ 'TL' => 'Aust-Timor',
+ 'TM' => 'Turkmenistan',
+ 'TN' => 'Tunisia',
+ 'TO' => 'Tonga',
+ 'TR' => 'Tyrkia',
+ 'TT' => 'Trinidad og Tobago',
+ 'TV' => 'Tuvalu',
+ 'TW' => 'Taiwan',
+ 'TZ' => 'Tanzania',
+ 'UA' => 'Ukraina',
+ 'UG' => 'Uganda',
+ 'UM' => 'USAs ytre småøyar',
+ 'US' => 'USA',
+ 'UY' => 'Uruguay',
+ 'UZ' => 'Usbekistan',
+ 'VA' => 'Vatikanstaten',
+ 'VC' => 'St. Vincent og Grenadinane',
+ 'VE' => 'Venezuela',
+ 'VG' => 'Dei britiske jomfruøyane',
+ 'VI' => 'Dei amerikanske jomfruøyane',
+ 'VN' => 'Vietnam',
+ 'VU' => 'Vanuatu',
+ 'WF' => 'Wallis og Futuna',
+ 'WS' => 'Samoa',
+ 'XK' => 'Kosovo',
+ 'YE' => 'Yemen',
+ 'YT' => 'Mayotte',
+ 'ZA' => 'Sør-Afrika',
+ 'ZM' => 'Zambia',
+ 'ZW' => 'Zimbabwe',
+);
+
+$timeUnits = array(
+ 'day-future-one' => 'om {0} døgn',
+ 'day-future-other' => 'om {0} døgn',
+ 'day-one' => '{0} døgn',
+ 'day-other' => '{0} døgn',
+ 'day-past-one' => 'for {0} døgn siden',
+ 'day-past-other' => 'for {0} døgn siden',
+ 'hour-future-one' => 'om {0} time',
+ 'hour-future-other' => 'om {0} timer',
+ 'hour-one' => '{0} time',
+ 'hour-other' => '{0} timer',
+ 'hour-past-one' => 'for {0} time siden',
+ 'hour-past-other' => 'for {0} timer siden',
+ 'millisecond-one' => '{0} millisekund',
+ 'millisecond-other' => '{0} millisekunder',
+ 'minute-future-one' => 'om {0} minutt',
+ 'minute-future-other' => 'om {0} minutter',
+ 'minute-one' => '{0} minutt',
+ 'minute-other' => '{0} minutter',
+ 'minute-past-one' => 'for {0} minutt siden',
+ 'minute-past-other' => 'for {0} minutter siden',
+ 'month-future-one' => 'om {0} måned',
+ 'month-future-other' => 'om {0} måneder',
+ 'month-one' => '{0} måned',
+ 'month-other' => '{0} måneder',
+ 'month-past-one' => 'for {0} måned siden',
+ 'month-past-other' => 'for {0} måneder siden',
+ 'second-future-one' => 'om {0} sekund',
+ 'second-future-other' => 'om {0} sekunder',
+ 'second-one' => '{0} sekund',
+ 'second-other' => '{0} sekunder',
+ 'second-past-one' => 'for {0} sekund siden',
+ 'second-past-other' => 'for {0} sekunder siden',
+ 'week-future-one' => 'om {0} uke',
+ 'week-future-other' => 'om {0} uker',
+ 'week-one' => '{0} uke',
+ 'week-other' => '{0} uker',
+ 'week-past-one' => 'for {0} uke siden',
+ 'week-past-other' => 'for {0} uker siden',
+ 'year-future-one' => 'om {0} år',
+ 'year-future-other' => 'om {0} år',
+ 'year-one' => '{0} år',
+ 'year-other' => '{0} år',
+ 'year-past-one' => 'for {0} år siden',
+ 'year-past-other' => 'for {0} år siden',
+);
diff --git a/MLEB/cldr/CldrNames/CldrNamesNso.php b/MLEB/cldr/CldrNames/CldrNamesNso.php
new file mode 100644
index 00000000..6d1760ee
--- /dev/null
+++ b/MLEB/cldr/CldrNames/CldrNamesNso.php
@@ -0,0 +1,5 @@
+<?php
+
+$languageNames = array(
+ 'nso' => 'Sesotho sa Leboa',
+);
diff --git a/MLEB/cldr/CldrNames/CldrNamesOm.php b/MLEB/cldr/CldrNames/CldrNamesOm.php
new file mode 100644
index 00000000..76297ebd
--- /dev/null
+++ b/MLEB/cldr/CldrNames/CldrNamesOm.php
@@ -0,0 +1,121 @@
+<?php
+
+$languageNames = array(
+ 'af' => 'Afrikoota',
+ 'am' => 'Afaan Sidaamaa',
+ 'ar' => 'Arabiffaa',
+ 'az' => 'Afaan Azerbaijani',
+ 'be' => 'Afaan Belarusia',
+ 'bg' => 'Afaan Bulgariya',
+ 'bn' => 'Afaan Baangladeshi',
+ 'bs' => 'Afaan Bosniyaa',
+ 'ca' => 'Afaan Katalaa',
+ 'cs' => 'Afaan Czech',
+ 'cy' => 'Welishiffaa',
+ 'da' => 'Afaan Deenmaark',
+ 'de' => 'Afaan Jarmanii',
+ 'el' => 'Afaan Giriiki',
+ 'en' => 'Ingliffa',
+ 'eo' => 'Afaan Esperantoo',
+ 'es' => 'Afaan Ispeen',
+ 'et' => 'Afaan Istooniya',
+ 'eu' => 'Afaan Baskuu',
+ 'fa' => 'Afaan Persia',
+ 'fi' => 'Afaan Fiilaandi',
+ 'fil' => 'Afaan Filippinii',
+ 'fo' => 'Afaan Faroese',
+ 'fr' => 'Afaan Faransaayii',
+ 'fy' => 'Afaan Firisiyaani',
+ 'ga' => 'Afaan Ayirishii',
+ 'gd' => 'Scots Gaelic',
+ 'gl' => 'Afaan Galishii',
+ 'gn' => 'Afaan Guarani',
+ 'gu' => 'Afaan Gujarati',
+ 'he' => 'Afaan Hebrew',
+ 'hi' => 'Afaan Hindii',
+ 'hr' => 'Afaan Croatian',
+ 'hu' => 'Afaan Hangaari',
+ 'ia' => 'Interlingua',
+ 'id' => 'Afaan Indoneziya',
+ 'is' => 'Ayiislandiffaa',
+ 'it' => 'Afaan Xaaliyaani',
+ 'ja' => 'Afaan Japanii',
+ 'jv' => 'Afaan Java',
+ 'ka' => 'Afaan Georgian',
+ 'kn' => 'Afaan Kannada',
+ 'ko' => 'Afaan Korea',
+ 'la' => 'Afaan Laatini',
+ 'lt' => 'Afaan Liituniyaa',
+ 'lv' => 'Afaan Lativiyaa',
+ 'mk' => 'Afaan Macedooniyaa',
+ 'ml' => 'Malayaalamiffaa',
+ 'mr' => 'Afaan Maratii',
+ 'ms' => 'Malaayiffaa',
+ 'mt' => 'Afaan Maltesii',
+ 'ne' => 'Afaan Nepalii',
+ 'nl' => 'Afaan Dachii',
+ 'nn' => 'Afaan Norwegian',
+ 'no' => 'Afaan Norweyii',
+ 'oc' => 'Afaan Occit',
+ 'om' => 'Oromoo',
+ 'pa' => 'Afaan Punjabii',
+ 'pl' => 'Afaan Polandii',
+ 'pt' => 'Afaan Porchugaal',
+ 'pt-br' => 'Afaan Portugali (Braazil)',
+ 'pt-pt' => 'Afaan Protuguese',
+ 'ro' => 'Afaan Romaniyaa',
+ 'ru' => 'Afaan Rushiyaa',
+ 'si' => 'Afaan Sinhalese',
+ 'sk' => 'Afaan Slovak',
+ 'sl' => 'Afaan Islovaniyaa',
+ 'sq' => 'Afaan Albaniyaa',
+ 'sr' => 'Afaan Serbiya',
+ 'su' => 'Afaan Sudaanii',
+ 'sv' => 'Afaan Suwidiin',
+ 'sw' => 'Suwahilii',
+ 'ta' => 'Afaan Tamilii',
+ 'te' => 'Afaan Telugu',
+ 'th' => 'Afaan Tayii',
+ 'ti' => 'Afaan Tigiree',
+ 'tk' => 'Lammii Turkii',
+ 'tlh' => 'Afaan Kilingon',
+ 'tr' => 'Afaan Turkii',
+ 'uk' => 'Afaan Ukreenii',
+ 'ur' => 'Afaan Urdu',
+ 'uz' => 'Afaan Uzbek',
+ 'vi' => 'Afaan Veetinam',
+ 'xh' => 'Afaan Xhosa',
+ 'zh' => 'Chinese',
+ 'zu' => 'Afaan Zuulu',
+);
+
+$currencyNames = array(
+ 'BRL' => 'Brazilian Real',
+ 'CNY' => 'Chinese Yuan Renminbi',
+ 'ETB' => 'Itoophiyaa Birrii',
+ 'EUR' => 'Euro',
+ 'GBP' => 'British Pound Sterling',
+ 'INR' => 'Indian Rupee',
+ 'JPY' => 'Japanese Yen',
+ 'RUB' => 'Russian Ruble',
+ 'USD' => 'US Dollar',
+);
+
+$currencySymbols = array(
+ 'ETB' => 'Br',
+);
+
+$countryNames = array(
+ 'BR' => 'Brazil',
+ 'CN' => 'China',
+ 'DE' => 'Germany',
+ 'ET' => 'Itoophiyaa',
+ 'FR' => 'France',
+ 'GB' => 'United Kingdom',
+ 'IN' => 'India',
+ 'IT' => 'Italy',
+ 'JP' => 'Japan',
+ 'KE' => 'Keeniyaa',
+ 'RU' => 'Russia',
+ 'US' => 'United States',
+);
diff --git a/MLEB/cldr/CldrNames/CldrNamesOr.php b/MLEB/cldr/CldrNames/CldrNamesOr.php
new file mode 100644
index 00000000..596b546a
--- /dev/null
+++ b/MLEB/cldr/CldrNames/CldrNamesOr.php
@@ -0,0 +1,704 @@
+<?php
+
+$languageNames = array(
+ 'aa' => 'ଅଫାର୍',
+ 'ab' => 'ଆବ୍ଖାଜିଆନ୍',
+ 'ace' => 'ଆଚାଇନୀଜ୍',
+ 'ach' => 'ଆକୋଲି',
+ 'ada' => 'ଆଦାଙ୍ଗେମ୍',
+ 'ady' => 'ଅଦ୍ୟଘେ',
+ 'ae' => 'ଅବେସ୍ତନ',
+ 'af' => 'ଆଫ୍ରିକାନସ୍',
+ 'afh' => 'ଆଫ୍ରିହିଲି',
+ 'agq' => 'ଆଘେମ',
+ 'ain' => 'ଆଇନୁ',
+ 'ak' => 'ଅକନ୍',
+ 'akk' => 'ଆକାଡିଆନ୍',
+ 'ale' => 'ଆଲେଇଟୁ',
+ 'alt' => 'ଦକ୍ଷିଣ ଆଲ୍ଟାଇ',
+ 'am' => 'ଆମହାରକି',
+ 'an' => 'ଆର୍ଗୋନୀ',
+ 'ang' => 'ପୁରୁଣା ଇଁରାଜୀ',
+ 'anp' => 'ଅଁଗୀକା',
+ 'ar' => 'ଆରବିକ୍',
+ 'ar-001' => 'ମାନକ ଆରବିକ',
+ 'arc' => 'ଆରାମାଇକ୍',
+ 'arn' => 'ଆରାଉକାନିଆନ୍',
+ 'arp' => 'ଆରାପାହୋ',
+ 'arw' => 'ଆରୱକ',
+ 'as' => 'ଆସାମୀ',
+ 'asa' => 'ଆସୁ',
+ 'ast' => 'ଆଷ୍ଟୁରିଆନ୍',
+ 'av' => 'ଆଭାରିକ୍',
+ 'awa' => 'ଆୱାଧି',
+ 'ay' => 'ଆୟମାରା',
+ 'az' => 'ଆଜେରବାଇଜାନି',
+ 'ba' => 'ବଶଖିର୍',
+ 'bal' => 'ବାଲୁଚି',
+ 'ban' => 'ବାଲିନୀଜ୍',
+ 'bas' => 'ବାସା',
+ 'be' => 'ବେଲାରୁଷିଆନ୍',
+ 'bej' => 'ବେଜା',
+ 'bem' => 'ବେମ୍ବା',
+ 'bez' => 'ବେନା',
+ 'bg' => 'ବୁଲଗେରିଆନ୍',
+ 'bho' => 'ଭୋଜପୁରୀ',
+ 'bi' => 'ବିସଲାମା',
+ 'bik' => 'ବିକୋଲ୍',
+ 'bin' => 'ବିନି',
+ 'bla' => 'ବିକ୍ସିକା',
+ 'bm' => 'ବାମ୍ବାରା',
+ 'bn' => 'ବଙ୍ଗାଳୀ',
+ 'bo' => 'ତିବେତାନ୍',
+ 'br' => 'ବ୍ରେଟନ୍',
+ 'bra' => 'ବ୍ରାଜ୍',
+ 'bs' => 'କାଟଲାନ୍',
+ 'bua' => 'ବୁରିଆଟ୍',
+ 'bug' => 'ବୁଗୀନୀଜ୍',
+ 'byn' => 'ବ୍ଲିନ୍',
+ 'ca' => 'କାଟାଲାନ୍',
+ 'cad' => 'କାଡୋ',
+ 'car' => 'କାରିବ୍',
+ 'cch' => 'ଆତ୍ସମ୍',
+ 'ce' => 'ଚେଚନ୍',
+ 'ceb' => 'ସୀବୁଆନୋ',
+ 'ch' => 'ଚାମୋରୋ',
+ 'chb' => 'ଚିବ୍ଚା',
+ 'chg' => 'ଛଗତାଇ',
+ 'chk' => 'ଚୁକୀସେ',
+ 'chm' => 'ମାରୀ',
+ 'chn' => 'ଚିନୁକ୍ ଜାରଗାଁନ୍',
+ 'cho' => 'ଚୋଟୱା',
+ 'chp' => 'ଚିପେୱାନ୍',
+ 'chr' => 'ଚେରୋକୀ',
+ 'chy' => 'ଚେଚେନା',
+ 'ckb' => 'ସୋରାନି କୁର୍ଦିଶ',
+ 'co' => 'କୋର୍ସିକାନ୍',
+ 'cop' => 'କପ୍ଟିକ୍',
+ 'cr' => 'କ୍ରୀ',
+ 'crh' => 'କ୍ରୀମିନ୍ ତୁର୍କୀସ୍',
+ 'cs' => 'ଚେକ୍',
+ 'csb' => 'କାଶୁବିଆନ୍',
+ 'cu' => 'ଚର୍ଚ୍ଚ ସ୍ଲାଭିକ୍',
+ 'cv' => 'ଚୁଭାଶ୍',
+ 'cy' => 'ୱେଲ୍ସ',
+ 'da' => 'ଡାନ୍ନିସ୍',
+ 'dak' => 'ଡାକୋଟା',
+ 'dar' => 'ଡାରାଗ୍ୱା',
+ 'de' => 'ଜର୍ମାନ୍',
+ 'de-at' => 'ଅଷ୍ଟ୍ରିଆନ୍ ଜର୍ମାନ',
+ 'de-ch' => 'ସ୍ବିସ୍ ହାଇ ଜର୍ମାନ୍',
+ 'del' => 'ଡେଲାୱେର୍',
+ 'den' => 'ସ୍ଲେଭ୍',
+ 'dgr' => 'ଡୋଗ୍ରିବ୍',
+ 'din' => 'ଦିଙ୍କା',
+ 'doi' => 'ଡୋଗ୍ରୀ',
+ 'dsb' => 'ନିଚଳା ସର୍ବିଆନ୍',
+ 'dua' => 'ଡୁଆନା',
+ 'dum' => 'ମଧ୍ୟ ପର୍ତ୍ତୁଗାଲୀ',
+ 'dv' => 'ଡିଭେହୀ',
+ 'dyu' => 'ଡୁଆଲା',
+ 'dz' => 'ଭୂଟାନୀ',
+ 'ee' => 'ଇୱେ',
+ 'efi' => 'ଏଫିକ୍',
+ 'egy' => 'ପ୍ରାଚୀନ୍ ମିଶିରି',
+ 'eka' => 'ଏକାଜୁକ୍',
+ 'el' => 'ଗ୍ରୀକ୍',
+ 'elx' => 'ଏଲାମାଇଟ୍',
+ 'en' => 'ଇଂରାଜୀ',
+ 'en-au' => 'ଅଷ୍ଟ୍ରେଲିଆନ୍ ଇଁରାଜୀ',
+ 'en-ca' => 'କାନାଡିଆନ୍ ଇଁରାଜୀ',
+ 'en-gb' => 'ବ୍ରିଟିଶ୍ ଇଁରାଜୀ',
+ 'en-us' => 'ୟୁ.ଏସ୍. ଇଁରାଜୀ',
+ 'enm' => 'ମଧ୍ୟ ଇଁରାଜୀ',
+ 'eo' => 'ଏସ୍ପାରେଣ୍ଟୋ',
+ 'es' => 'ସ୍ପାନିସ୍',
+ 'es-419' => 'ଲାଟିନ୍ ଆମେରିକାନ୍ ସ୍ପାନିଶ୍',
+ 'es-es' => 'ଲେବେରିଆନ୍ ସ୍ପାନିଶ୍',
+ 'et' => 'ଏସ୍ତୋନିଆନ୍',
+ 'eu' => 'ବାସ୍କ୍ୱି',
+ 'ewo' => 'ଇୱୋଣ୍ଡୋ',
+ 'fa' => 'ପର୍ସିଆନ୍',
+ 'fan' => 'ଫାଙ୍ଗ',
+ 'fat' => 'ଫାଣ୍ଟି',
+ 'ff' => 'ଫୁଲାହ',
+ 'fi' => 'ଫିନ୍ନିସ୍',
+ 'fil' => 'ଫିଲିପିନୋ',
+ 'fj' => 'ଫିଜି',
+ 'fo' => 'ଫାରୋଏସେ',
+ 'fon' => 'ଫନ୍',
+ 'fr' => 'ଫ୍ରେଞ୍ଚ',
+ 'fr-ca' => 'କାନାଡିଆନ୍ ଫ୍ରେଞ୍ଚ',
+ 'fr-ch' => 'ସ୍ବିସ୍ ଫ୍ରେଞ୍ଚ୍',
+ 'frm' => 'ମଧ୍ୟ ଫ୍ରେଞ୍ଚ',
+ 'fro' => 'ପୁରୁଣା ଫ୍ରେଞ୍ଚ',
+ 'frr' => 'ଉତ୍ତର ଫ୍ରିସିୟାନ୍',
+ 'frs' => 'ପୂର୍ବ ଫ୍ରିସିୟାନ୍',
+ 'fur' => 'ଫ୍ରିୟୁଲୀୟାନ୍',
+ 'fy' => 'ପଶ୍ଚିମ ଫ୍ରିସିୟନ୍',
+ 'ga' => 'ଇରିସ୍',
+ 'gaa' => 'ଗା',
+ 'gay' => 'ଗାୟୋ',
+ 'gba' => 'ଗବାୟା',
+ 'gd' => 'ସ୍କଟିସ୍ ଗାଏଲିକ୍',
+ 'gez' => 'ଗୀଜ୍',
+ 'gil' => 'ଜିବ୍ରାଟୀଜ୍',
+ 'gl' => 'ଗାଲସିଆନ୍',
+ 'gmh' => 'ମିଡିଲ୍ ହାଇ ଜର୍ମାନ୍',
+ 'gn' => 'ଗୁଆରାନୀ',
+ 'goh' => 'ପୁରୁଣା ହାଇ ଜର୍ମାନ୍',
+ 'gon' => 'ଗୋଣ୍ଡି',
+ 'gor' => 'ଗୋରୋଣ୍ଟାଲୋ',
+ 'got' => 'ଗୋଥିକ୍',
+ 'grb' => 'ଗ୍ରେବୋ',
+ 'grc' => 'ପ୍ରାଚୀନ୍ ୟୁନାନୀ',
+ 'gsw' => 'ସ୍ବିସ୍ ଜର୍ମାନ୍',
+ 'gu' => 'ଗୁଜୁରାଟୀ',
+ 'gv' => 'ମାଁକ୍ସ',
+ 'gwi' => 'ସ୍ବିଚ୍ ଇନ୍',
+ 'ha' => 'ହୌସା',
+ 'hai' => 'ହାଇଡା',
+ 'haw' => 'ହାୱାଇନ୍',
+ 'he' => 'ହେବ୍ର୍ୟୁ',
+ 'hi' => 'ହିନ୍ଦୀ',
+ 'hil' => 'ହିଲିଗୈନନ୍',
+ 'hit' => 'ହିତୀତେ',
+ 'hmn' => 'ହଁଙ୍ଗ',
+ 'ho' => 'ହିରି ମୋଟୁ',
+ 'hr' => 'କ୍ରୋଆଟିଆନ୍',
+ 'hsb' => 'ଉପର ସର୍ବିଆନ୍',
+ 'ht' => 'ହୈତାୟିନ୍',
+ 'hu' => 'ହଙ୍ଗେରିଆନ୍',
+ 'hup' => 'ହୁପା',
+ 'hy' => 'ଆର୍ମେନିଆନ୍',
+ 'hz' => 'ହେରେରୋ',
+ 'ia' => 'ଇର୍ଣ୍ଟଲିଙ୍ଗୁଆ',
+ 'iba' => 'ଇବାନ୍',
+ 'id' => 'ଇଣ୍ଡୋନେସିଆନ୍',
+ 'ie' => 'ଇର୍ଣ୍ଟରଲିଙ୍ଗୁଇ',
+ 'ig' => 'ଇଗ୍ବୋ',
+ 'ii' => 'ସିଚୁଆନ୍ ୟୀ',
+ 'ik' => 'ଇନୁପିୟାକ୍',
+ 'ilo' => 'ଇଲୋକୋ',
+ 'inh' => 'ଇଁଙ୍ଗୁଶ୍',
+ 'io' => 'ଇଡୋ',
+ 'is' => 'ଆଇସଲାଣ୍ଡିକ୍',
+ 'it' => 'ଇଟାଲିଆନ୍',
+ 'iu' => 'ଇନକୀଟୁତ୍',
+ 'ja' => 'ଜାପାନୀଜ୍',
+ 'jbo' => 'ଲୋଜବାନ୍',
+ 'jpr' => 'ଜୁଡେଓ-ପର୍ସିଆନ୍',
+ 'jrb' => 'ଜୁଡେଓ-ଆରବୀକ୍',
+ 'jv' => 'ଜାଭାନୀଜ୍',
+ 'ka' => 'ଜର୍ଜିଆନ୍',
+ 'kaa' => 'କାରା-କଲ୍ପକ୍',
+ 'kab' => 'କବାଇଲ୍',
+ 'kac' => 'କଚିନ୍',
+ 'kaj' => 'ଜ୍ଜୁ',
+ 'kam' => 'କମ୍ବା',
+ 'kaw' => 'କାୱି',
+ 'kbd' => 'କାବାର୍ଡିଆନ୍',
+ 'kcg' => 'ତ୍ୟାପ୍',
+ 'kfo' => 'କୋରୋ',
+ 'kg' => 'କଙ୍ଗୋ',
+ 'kha' => 'ଖାସୀ',
+ 'kho' => 'ଖୋତାନୀଜ୍',
+ 'ki' => 'କୀକୁୟୁ',
+ 'kj' => 'କ୍ୱାନ୍ୟାମ୍',
+ 'kk' => 'କାଜାକ୍',
+ 'kl' => 'ଗ୍ରୀନଲାଣ୍ଡିକ୍',
+ 'km' => 'ଖ୍ମେର୍',
+ 'kmb' => 'କିମ୍ବୁଣ୍ଡୁ',
+ 'kn' => 'କନ୍ନଡ',
+ 'ko' => 'କୋରିଆନ୍',
+ 'kok' => 'କୋନକାନୀ',
+ 'kos' => 'କୋସରୈନ୍',
+ 'kpe' => 'କୈପେଲେ',
+ 'kr' => 'କନୁରୀ',
+ 'krc' => 'କରାଚୟ-ବଲ୍କାର',
+ 'krl' => 'କାରେଲିୟାନ୍',
+ 'kru' => 'କୁରୁଖ',
+ 'ks' => 'କାଶ୍ମିରୀ',
+ 'ku' => 'କୁର୍ଦ୍ଦିଶ୍',
+ 'kum' => 'କୁମୀକ୍',
+ 'kut' => 'କୁତେନାଉ',
+ 'kv' => 'କୋମି',
+ 'kw' => 'କୋର୍ନିସ୍',
+ 'ky' => 'କିରଗିଜ୍',
+ 'la' => 'ଲାଟିନ୍',
+ 'lad' => 'ଲାଦିନୋ',
+ 'lah' => 'ଲାହାଣ୍ଡା',
+ 'lam' => 'ଲାମ୍ବା',
+ 'lb' => 'ଲକ୍ସେମବର୍ଗିସ୍',
+ 'lez' => 'ଲେଜଗିୟାନ୍',
+ 'lg' => 'ଗନ୍ଦା',
+ 'li' => 'ଲିମ୍ବୁର୍ଗିସ୍',
+ 'ln' => 'ଲିଙ୍ଗାଲା',
+ 'lo' => 'ଲାଓ',
+ 'lol' => 'ମଙ୍ଗୋ',
+ 'loz' => 'ଲୋଜି',
+ 'lt' => 'ଲିଥୁଆନିଆନ୍',
+ 'lu' => 'ଲ୍ୟୁବା-କାଟାଙ୍ଗା',
+ 'lua' => 'ଲୁବା-ଲୁଲୁଆ',
+ 'lui' => 'ଲୁଇସେନୋ',
+ 'lun' => 'ଲୁଣ୍ଡା',
+ 'luo' => 'ଲୁଓ',
+ 'lus' => 'ଲୁସାଉ',
+ 'lv' => 'ଲାଟଭିଆନ୍',
+ 'mad' => 'ମାଦୁରୀସ୍',
+ 'mag' => 'ମାଗାହୀ',
+ 'mai' => 'ମୈଥିଳୀ',
+ 'mak' => 'ମକାସର୍',
+ 'man' => 'ମାଣ୍ଡିଙ୍ଗୋ',
+ 'mas' => 'ମାସାଇ',
+ 'mdf' => 'ମୋକ୍ଷ',
+ 'mdr' => 'ମନ୍ଦାର',
+ 'men' => 'ମେଣ୍ଡେ',
+ 'mg' => 'ମାଲାଗାସୀ',
+ 'mga' => 'ମଧ୍ୟ ଇରିଶ୍',
+ 'mh' => 'ମାର୍ଶାଲୀଜ୍',
+ 'mi' => 'ମାଓରୀ',
+ 'mic' => 'ମିକମୌକ୍',
+ 'min' => 'ମିନାଙ୍ଗାବାଉ',
+ 'mk' => 'ମାକଡୋନିଆନ୍',
+ 'ml' => 'ମାଲାୟଲମ୍',
+ 'mn' => 'ମଙ୍ଗୋଲିଆନ୍',
+ 'mnc' => 'ମାଞ୍ଚୁ',
+ 'mni' => 'ମଣିପୁରୀ',
+ 'moh' => 'ମୋହୌକ',
+ 'mos' => 'ମୋସି',
+ 'mr' => 'ମରାଠୀ',
+ 'ms' => 'ମାଲୟ',
+ 'mt' => 'ମାଲଟୀଜ୍',
+ 'mul' => 'ବିବିଧ ଭାଷାମାନ',
+ 'mus' => 'କ୍ରୀକ୍',
+ 'mwl' => 'ମିରାଣ୍ଡିଜ୍',
+ 'mwr' => 'ମାରୱାରୀ',
+ 'my' => 'ବର୍ମୀଜ୍',
+ 'myv' => 'ଏର୍ଜୟା',
+ 'na' => 'ନାଉରୁ',
+ 'nap' => 'ନୀପୋଲିଟାନ୍',
+ 'nb' => 'ନରୱେଜିଆନ୍ ବୋକମଲ୍',
+ 'nd' => 'ଉତ୍ତର ନେଡବେଲେ',
+ 'nds' => 'ଲୋ ଜର୍ମାନ୍',
+ 'ne' => 'ନେପାଳୀ',
+ 'new' => 'ନେୱାରୀ',
+ 'ng' => 'ଡୋଙ୍ଗା',
+ 'nia' => 'ନୀୟାସ୍',
+ 'niu' => 'ନିୟୁଆନ୍',
+ 'nl' => 'ଡଚ୍',
+ 'nl-be' => 'ଫ୍ଲେମିଶ୍',
+ 'nn' => 'ନରୱେଜିଆନ୍ ନିୟୋର୍ସ୍କ',
+ 'no' => 'ନରୱେଜିଆନ୍',
+ 'nog' => 'ନୋଗାଇ',
+ 'non' => 'ପୁରୁଣା ନର୍ସ',
+ 'nqo' => 'ଏନ୍କୋ',
+ 'nr' => 'ଦକ୍ଷିଣ ନେଡବେଲେ',
+ 'nso' => 'ଉତ୍ତରୀ ସୋଥୋ',
+ 'nv' => 'ନାଭାଜୋ',
+ 'nwc' => 'ପାରମ୍ପରିକ ନେୱାରୀ',
+ 'ny' => 'ନିୟାଞ୍ଜ',
+ 'nym' => 'ନ୍ୟାମୱେଜୀ',
+ 'nyn' => 'ନ୍ୟାନକୋଲ୍',
+ 'nyo' => 'ନ୍ୟାରୋ',
+ 'nzi' => 'ଞ୍ଜିମା',
+ 'oc' => 'ଓସିଟାନ୍',
+ 'oj' => 'ଓଜିୱା',
+ 'om' => 'ଓରୋମୋ',
+ 'or' => 'ଓଡ଼ିଆ',
+ 'os' => 'ଓସେଟିକ୍',
+ 'osa' => 'ୱୌସେଜ୍',
+ 'ota' => 'ଓଟ୍ଟୋମନ୍ ତୁର୍କିସ୍',
+ 'pa' => 'ପଞ୍ଜାବୀ',
+ 'pag' => 'ପାଙ୍ଗାସିନିଆନ୍',
+ 'pal' => 'ପାହ୍ଲାଭି',
+ 'pam' => 'ପାମ୍ପାଙ୍ଗା',
+ 'pap' => 'ପାପିୟାମିଣ୍ଟୋ',
+ 'pau' => 'ପାଲାଉଆନ୍',
+ 'peo' => 'ପୁରୁଣା ପର୍ସିଆନ୍',
+ 'phn' => 'ଫୋନେସିଆନ୍',
+ 'pi' => 'ପାଲି',
+ 'pl' => 'ପୋଲିଶ୍',
+ 'pon' => 'ପୋହପିଏନ୍',
+ 'pro' => 'ପୁରୁଣା ପ୍ରେଭେନେସିଆଲ୍',
+ 'ps' => 'ପାସ୍ତୋ',
+ 'pt' => 'ପର୍ତ୍ତୁଗ୍ରୀଜ୍',
+ 'pt-br' => 'ବ୍ରାଜିଲିଆନ୍ ପର୍ତ୍ତୁଗୀଜ୍',
+ 'pt-pt' => 'ଲେବେରିଆନ୍ ପର୍ତ୍ତୁଗୀଜ୍',
+ 'qu' => 'କ୍ୱେଚୁଆ',
+ 'raj' => 'ରାଜସ୍ଥାନୀ',
+ 'rap' => 'ରାପାନୁଇ',
+ 'rar' => 'ରାରୋତୋଙ୍ଗନ୍',
+ 'rm' => 'ରେହେଟୋ-ରୋମାନ୍ସ',
+ 'rn' => 'ରୁଣ୍ଡି',
+ 'ro' => 'ରୋମାନିଆନ୍',
+ 'ro-md' => 'ମୋଲଡୋଭିଆନ୍',
+ 'rof' => 'ରୋମ୍ବୋ',
+ 'rom' => 'ରୋମାନି',
+ 'ru' => 'ରଷିଆନ୍',
+ 'rup' => 'ଆରୋମାନିଆନ୍',
+ 'rw' => 'କିନ୍ୟାରୱାଣ୍ଡା',
+ 'sa' => 'ସଂସ୍କୃତ',
+ 'sad' => 'ସଣ୍ଡାୱେ',
+ 'sah' => 'ୟାକୁଟ୍',
+ 'sam' => 'ସାମୌରିଟନ୍ ଆରମାଇକ୍',
+ 'sas' => 'ସାସାକ୍',
+ 'sat' => 'ସାନ୍ତାଳି',
+ 'sc' => 'ସର୍ଦିନିଆନ୍',
+ 'scn' => 'ସିଶିଲିଆନ୍',
+ 'sco' => 'ସ୍କଟସ୍',
+ 'sd' => 'ସିନ୍ଧୀ',
+ 'se' => 'ଉତ୍ତର ସାମି',
+ 'sel' => 'ସେଲ୍କପ୍',
+ 'sg' => 'ସାଙ୍ଗୋ',
+ 'sga' => 'ପୁରୁଣା ଇରିଶ୍',
+ 'sh' => 'ସର୍ବୋ-କ୍ରୋଆଟିଆନ୍',
+ 'shn' => 'ଶାନ୍',
+ 'si' => 'ସିଂହଳ',
+ 'sid' => 'ସିଦାମୋ',
+ 'sk' => 'ସ୍ଲୋଭାକ୍',
+ 'sl' => 'ସ୍ଲୋଭେନିଆନ୍',
+ 'sm' => 'ସାମୋଆନ୍',
+ 'sma' => 'ଦକ୍ଷିଣ ସାମି',
+ 'smj' => 'ଲୁଲେ ସାମି',
+ 'smn' => 'ଇନାରୀ ସାମି',
+ 'sms' => 'ସ୍କୋଲ୍ଟ ସାମୀ',
+ 'sn' => 'ଶୋନା',
+ 'snk' => 'ସୋନିଙ୍କେ',
+ 'so' => 'ସୋମାଲିଆ',
+ 'sog' => 'ସୋଗଡିଏନ୍',
+ 'sq' => 'ଆଲବାନିଆନ୍',
+ 'sr' => 'ସର୍ବିଆନ୍',
+ 'srn' => 'ଶାରାନା ଟୋଙ୍ଗୋ',
+ 'srr' => 'ଶେରେର୍',
+ 'ss' => 'ସ୍ବାତୀ',
+ 'st' => 'ସେସୋଥୋ',
+ 'su' => 'ସୁଦାନୀଜ୍',
+ 'suk' => 'ସୁକୁମା',
+ 'sus' => 'ଶୁଶୁ',
+ 'sux' => 'ସୁମେରିଆନ୍',
+ 'sv' => 'ସ୍ୱେଡିସ୍',
+ 'sw' => 'ସ୍ୱାହିଲ୍',
+ 'syc' => 'କ୍ଲାସିକାଲ୍ ସିରିକ୍',
+ 'syr' => 'ସିରିକ୍',
+ 'ta' => 'ତାମିଲ୍',
+ 'te' => 'ତେଲୁଗୁ',
+ 'tem' => 'ତିମନେ',
+ 'ter' => 'ତେରେନୋ',
+ 'tet' => 'ତେତୁମ୍',
+ 'tg' => 'ତାଜିକ୍',
+ 'th' => 'ଥାଇ',
+ 'ti' => 'ଟ୍ରିଗିନିଆ',
+ 'tig' => 'ଟାଇଗ୍ରେ',
+ 'tiv' => 'ତୀଭ୍',
+ 'tk' => 'ତୁର୍କମେନ୍',
+ 'tkl' => 'ଟୋକେଲାଉ',
+ 'tl' => 'ଟାଗାଲଗ୍',
+ 'tlh' => 'କ୍ଲିଙ୍ଗନ୍',
+ 'tli' => 'ତ୍ଲିଙ୍ଗିଟ୍',
+ 'tmh' => 'ତାମାଶେକ୍',
+ 'tn' => 'ସେସ୍ବାନା',
+ 'to' => 'ଟୋଙ୍ଗା',
+ 'tog' => 'ନ୍ୟାସା ଟୋଙ୍ଗୋ',
+ 'tpi' => 'ଟୋକ୍ ପିସିନ୍',
+ 'tr' => 'ତୁର୍କିସ୍',
+ 'ts' => 'ସୋଂଗା',
+ 'tsi' => 'ତିସିମିସିଆନ୍',
+ 'tt' => 'ତାତାର୍',
+ 'tum' => 'ଟୁମ୍ବୁକା',
+ 'tvl' => 'ତୁଭାଲୁ',
+ 'tw' => 'ତ୍ୱି',
+ 'ty' => 'ତାହିତିଆନ୍',
+ 'tyv' => 'ତୁଭିନିଆନ୍',
+ 'udm' => 'ଉଦମୂର୍ତ୍ତ',
+ 'ug' => 'ୟୁଘୁର୍',
+ 'uga' => 'ୟୁଗୋରଟିକ୍',
+ 'uk' => 'ୟୁକ୍ରାନିଆନ୍',
+ 'umb' => 'ଉମ୍ବୁଣ୍ଡୁ',
+ 'und' => 'ଅଜଣା ଏବଂ ଅବୈଧ ଭାଷା',
+ 'ur' => 'ଉର୍ଦ୍ଦୁ',
+ 'uz' => 'ଉଜବେକ୍',
+ 'vai' => 'ଭାଇ',
+ 've' => 'ଭେଣ୍ଡା',
+ 'vi' => 'ଭିଏତନାମିଜ୍',
+ 'vo' => 'ବୋଲାପୁକ',
+ 'vot' => 'ଭୋଟିକ୍',
+ 'wa' => 'ୱାଲୁନ୍',
+ 'wal' => 'ୱାଲମୋ',
+ 'war' => 'ୱାରୈ',
+ 'was' => 'ୱାସୋ',
+ 'wo' => 'ୱୋଲଫ୍',
+ 'xal' => 'କାଲ୍ମୀକ୍',
+ 'xh' => 'ଖୋସା',
+ 'yao' => 'ୟାଓ',
+ 'yap' => 'ୟାପୀସ୍',
+ 'yi' => 'ୟିଡିସ୍',
+ 'yo' => 'ୟୋରୁବା',
+ 'za' => 'ଜୁଆଙ୍ଗ',
+ 'zap' => 'ଜାପୋଟେକ୍',
+ 'zbl' => 'ବ୍ଲିସିମ୍ବଲସ୍',
+ 'zen' => 'ଜେନାଗା',
+ 'zh' => 'ଚାଇନୀଜ୍',
+ 'zh-hans' => 'ସରଳିକରଣ ଚାଇନୀଜ୍',
+ 'zh-hant' => 'ପାରମ୍ପରିକ ଚାଇନୀଜ୍',
+ 'zu' => 'ଜୁଲୁ',
+ 'zun' => 'ଜୁନୀ',
+ 'zxx' => 'କୌଣସି ଲିଙ୍ଗୁଇଷ୍ଟ ସାମଗ୍ରୀ ନାହିଁ',
+ 'zza' => 'ଜାଜା',
+);
+
+$currencyNames = array(
+ 'INR' => 'ଟଙକା',
+);
+
+$countryNames = array(
+ 'AD' => 'ଆଣ୍ଡୋରା',
+ 'AE' => 'ସଂଯୁକ୍ତ ଆରବ ଏମିରେଟସ୍',
+ 'AF' => 'ଆଫାଗାନିସ୍ତାନ୍',
+ 'AG' => 'ଆଣ୍ଟିଗୁଆ ଏବଂ ବାରବୁଦା',
+ 'AI' => 'ଆଙ୍ଗୁଇଲ୍ଲା',
+ 'AL' => 'ଆଲବାନିଆ',
+ 'AM' => 'ଆର୍ମେନିଆ',
+ 'AN' => 'ନେଦରଲ୍ୟାଣ୍ଡସ୍ ଆଣ୍ଟିଲିଜ୍',
+ 'AO' => 'ଆଙ୍ଗୋଲା',
+ 'AQ' => 'ଆର୍ଣ୍ଟକଟିକା',
+ 'AR' => 'ଆର୍ଜେଣ୍ଟିନା',
+ 'AS' => 'ଆମେରିକାନ୍ ସାମୋଆ',
+ 'AT' => 'ଅଷ୍ଟ୍ରିଆ',
+ 'AU' => 'ଅଷ୍ଟ୍ରେଲିଆ',
+ 'AW' => 'ଆରୁବା',
+ 'AX' => 'ଆଲାଣ୍ଡ ଆଇସଲ୍ୟାଣ୍ଡ',
+ 'AZ' => 'ଆଜେରବାଇଜାନ୍',
+ 'BA' => 'ବୋସନିଆ ଏବଂ ହର୍ଜଗୋଭିନା',
+ 'BB' => 'ବାରବାଡୋସ୍',
+ 'BD' => 'ବାଙ୍ଗଲାଦେଶ୍',
+ 'BE' => 'ବେଲଜିୟମ୍',
+ 'BF' => 'ବୁର୍କିନୋ ଫାସୋ',
+ 'BG' => 'ବୁଲଗେରିଆ',
+ 'BH' => 'ବାହାରିନ୍',
+ 'BI' => 'ବୁରୁନ୍ଦି',
+ 'BJ' => 'ବେନିନ୍',
+ 'BL' => 'ସେଣ୍ଟ ବାର୍ଥେଲେମି',
+ 'BM' => 'ବରମୁଡା',
+ 'BN' => 'ବ୍ରୁନେଇ',
+ 'BO' => 'ବୋଲଭିଆ',
+ 'BR' => 'ବ୍ରାଜିଲ୍',
+ 'BS' => 'ବାହାମାସ୍',
+ 'BT' => 'ଭୁଟାନ୍',
+ 'BV' => 'ବୌଭେଟ୍ ଆଇସଲ୍ୟାଣ୍ଡ',
+ 'BW' => 'ବୋଟସ୍ବାନ୍',
+ 'BY' => 'ବେଲାରୁଷ୍',
+ 'BZ' => 'ବେଲିଜ୍',
+ 'CA' => 'କାନାଡା',
+ 'CC' => 'କୋକୋସ୍ ଆଇସଲ୍ୟାଣ୍ଡ',
+ 'CD' => 'କଙ୍ଗୋ-କିନସାସା',
+ 'CF' => 'ମଧ୍ୟ ଆଫ୍ରିକୀୟ ଗଣତନ୍ତ୍ର',
+ 'CG' => 'କଙ୍ଗୋ-ବ୍ରାଜିଭିଲ୍ଲେ',
+ 'CH' => 'ସ୍ବିଜରଲ୍ୟାଣ୍ଡ',
+ 'CI' => 'ଆଇବରୀ କୋଷ୍ଟ',
+ 'CK' => 'କୁକ୍ ଆଇସଲ୍ୟାଣ୍ଡ',
+ 'CL' => 'ଚିଲ୍ଲୀ',
+ 'CM' => 'କାମେରୁନ୍',
+ 'CN' => 'ଚିନ୍',
+ 'CO' => 'କୋଲମ୍ବିଆ',
+ 'CR' => 'କୋଷ୍ଟା ରିକା',
+ 'CU' => 'କ୍ୱିବା',
+ 'CV' => 'କେପ୍ ଭର୍ଦେ',
+ 'CX' => 'ଖ୍ରୀଷ୍ଟମାସ ଆଇଲ୍ୟାଣ୍ଡ',
+ 'CY' => 'ସାଇପ୍ରସ୍',
+ 'CZ' => 'ଚେକ୍ ସାଧାରଣତନ୍ତ୍ର',
+ 'DE' => 'ଜର୍ମାନୀ',
+ 'DJ' => 'ଡିବୌଟି',
+ 'DK' => 'ଡେନମାର୍କ',
+ 'DM' => 'ଡୋମିନାକା',
+ 'DO' => 'ଡୋମିନକାନ୍ ପ୍ରଜାତନ୍ତ୍ର',
+ 'DZ' => 'ଆଲଜେରିଆ',
+ 'EC' => 'ଇକ୍ୱାଡୋର୍',
+ 'EE' => 'ଏସ୍ତୋନିଆ',
+ 'EG' => 'ଇଜିପ୍ଟ',
+ 'EH' => 'ପଶ୍ଚିମ ସାହାରା',
+ 'ER' => 'ଇରିଟ୍ରିୟା',
+ 'ES' => 'ସ୍ପେନ୍',
+ 'ET' => 'ଇଥିଓପିଆ',
+ 'EU' => 'ୟୁରୋପିଆନ୍ ୟୁନିଅନ୍',
+ 'FI' => 'ଫିନଲ୍ୟାଣ୍ଡ',
+ 'FJ' => 'ଫିଜି',
+ 'FK' => 'ଫଲ୍କଲ୍ୟାଣ୍ଡ ଦ୍ବୀପପୁଞ୍ଜ',
+ 'FM' => 'ମାଇକ୍ରୋନେସିଆ',
+ 'FO' => 'ଫାରୋଇ ଦ୍ବୀପପୁଞ୍ଜ',
+ 'FR' => 'ଫ୍ରାନ୍ସ',
+ 'GA' => 'ଗାବୋନ୍',
+ 'GB' => 'ବ୍ରିଟେନ୍',
+ 'GD' => 'ଗ୍ରେନାଡା',
+ 'GE' => 'ଜର୍ଜିଆ',
+ 'GF' => 'ଫ୍ରେଞ୍ଚ ଗୁଇନା',
+ 'GG' => 'ଗୁଏରନେସି',
+ 'GH' => 'ଘାନା',
+ 'GI' => 'ଜିବ୍ରାଲ୍ଟର୍',
+ 'GL' => 'ଗ୍ରୀନଲ୍ୟାଣ୍ଡ',
+ 'GM' => 'ଗାମ୍ବିଆ',
+ 'GN' => 'ଗୁଏନେଆ',
+ 'GP' => 'ଗୌଡେଲୌପେ',
+ 'GQ' => 'ଇକ୍ବାଟେରିଆଲ୍ ଗୁଇନିଆ',
+ 'GR' => 'ଗ୍ରୀସ୍',
+ 'GS' => 'ଦକ୍ଷିଣ ଜର୍ଜିଆ ଏବଂ ଦକ୍ଷିଣ ସାଣ୍ଡୱିଚ୍ ଦ୍ବୀପପୁଞ୍ଜ',
+ 'GT' => 'ଗୁଏତମାଲା',
+ 'GU' => 'ଗୁଆମ୍',
+ 'GW' => 'ଗୁଇନିଆ-ବିସାଉ',
+ 'GY' => 'ଗୁଇନା',
+ 'HK' => 'ହଂକଂ ବିଶେଷ ପ୍ରଶାସନିକ କ୍ଷେତ୍ର ଚୀନ୍',
+ 'HM' => 'ହାର୍ଡ ଦ୍ବୀପପୁଞ୍ଜ ଏବଂ ମ୍ୟାକଡୋନାଲ୍ ଦ୍ବୀପପୁଞ୍ଜ',
+ 'HN' => 'ହୋଣ୍ଡାରୁସ୍',
+ 'HR' => 'କ୍ରୋଆଟିଆ',
+ 'HT' => 'ହାଇତି',
+ 'HU' => 'ହଙ୍ଗେରୀ',
+ 'ID' => 'ଇଣ୍ଡୋନେସିଆ',
+ 'IE' => 'ଆୟରଲ୍ୟାଣ୍ଡ',
+ 'IL' => 'ଇସ୍ରାଏଲ୍',
+ 'IM' => 'ଆଇଲ୍ ଅଫ୍ ମୈନ୍',
+ 'IN' => 'ଭାରତ',
+ 'IO' => 'ବ୍ରିଟିଶ୍ ଭାରତୀୟ ସାମୁଦ୍ରିକ କ୍ଷେତ୍ର',
+ 'IQ' => 'ଇରାକ୍',
+ 'IR' => 'ଇରାନ୍',
+ 'IS' => 'ଆଇସଲ୍ୟାଣ୍ଡ',
+ 'IT' => 'ଇଟାଲୀ',
+ 'JE' => 'ଜର୍ସି',
+ 'JM' => 'ଜାମାଇକା',
+ 'JO' => 'ଜୋର୍ଡାନ୍',
+ 'JP' => 'ଜାପାନ୍',
+ 'KE' => 'କେନିୟା',
+ 'KG' => 'କିର୍ଗିଜିସ୍ଥାନ',
+ 'KH' => 'କାମ୍ବୋଡିଆ',
+ 'KI' => 'କିରିବାଟୀ',
+ 'KM' => 'କାମୋରସ୍',
+ 'KN' => 'ସେଣ୍ଟ କିଟସ୍ ଏଣ୍ଡ ନେଭିସ୍',
+ 'KP' => 'ଉତ୍ତର କୋରିଆ',
+ 'KR' => 'ଦକ୍ଷିଣ କୋରିଆ',
+ 'KW' => 'କୁଏତ୍',
+ 'KY' => 'କେମ୍ୟାନ୍ ଦ୍ବୀପପୁଞ୍ଜ',
+ 'KZ' => 'କାଜାକାସ୍ଥାନ୍',
+ 'LA' => 'ଲାଓସ୍',
+ 'LB' => 'ଲେବାନନ୍',
+ 'LC' => 'ସେଣ୍ଟ ଲୁସିଆ',
+ 'LI' => 'ଲିଚେସ୍ତିଆନାନ୍',
+ 'LK' => 'ଶ୍ରୀଲଙ୍କା',
+ 'LR' => 'ଲିବେରିଆ',
+ 'LS' => 'ଲେସୋଥୋ',
+ 'LT' => 'ଲିଥାଆନିଆ',
+ 'LU' => 'ଲକ୍ସେମବର୍ଗ',
+ 'LV' => 'ଲାଟଭିଆ',
+ 'LY' => 'ଲିବିଆ',
+ 'MA' => 'ମୋରୋକ୍କୋ',
+ 'MC' => 'ମୋନାକୋ',
+ 'MD' => 'ମାଲଡୋଭା',
+ 'ME' => 'ମଣ୍ଟେଗ୍ରୋ',
+ 'MF' => 'ସେଣ୍ଟ ମାର୍ଟିନ୍',
+ 'MG' => 'ମାଡାଗାସ୍କର୍',
+ 'MH' => 'ମାର୍ଶଲ୍ ଦ୍ବୀପପୁଞ୍ଜ',
+ 'MK' => 'ମାସେଡୋନିଆ',
+ 'ML' => 'ମାଳୀ',
+ 'MM' => 'ମିୟାମାର୍',
+ 'MN' => 'ମଙ୍ଗୋଲିଆ',
+ 'MO' => 'ମାକାଉ SAR ଚିନ୍',
+ 'MP' => 'ଉତ୍ତର ମାରିଆନା ଦ୍ବୀପପୁଞ୍ଜ',
+ 'MQ' => 'ମାର୍ଟିନିକ୍ୟୁ',
+ 'MR' => 'ମାଉରିଟାନିଆ',
+ 'MS' => 'ମଣ୍ଟେସେରାଟ୍',
+ 'MT' => 'ମାଲ୍ଟା',
+ 'MU' => 'ମୌରିସସ୍',
+ 'MV' => 'ମାଳଦ୍ବୀପ',
+ 'MW' => 'ମାଲୱି',
+ 'MX' => 'ମେକ୍ସିକୋ',
+ 'MY' => 'ମାଲେସିଆ',
+ 'MZ' => 'ମୋଜାମ୍ବିକ୍ୟୁ',
+ 'NA' => 'ନାମ୍ବିଆ',
+ 'NC' => 'ନୂତନ କାଲେଡୋନିଆ',
+ 'NE' => 'ନାଇଜର୍',
+ 'NF' => 'ନରଫ୍ଲକ୍ ଦ୍ବୀପ',
+ 'NG' => 'ନାଇଜେରିଆ',
+ 'NI' => 'ନିକାରାଗୁଆ',
+ 'NL' => 'ନେଦରଲ୍ୟାଣ୍ଡ',
+ 'NO' => 'ନରୱେ',
+ 'NP' => 'ନେପାଳ',
+ 'NR' => 'ନାଉରୁ',
+ 'NU' => 'ନିଉ',
+ 'NZ' => 'ନ୍ୟୁଜିଲାଣ୍ଡ',
+ 'OM' => 'ଓମାନ୍',
+ 'PA' => 'ପାନାମା',
+ 'PE' => 'ପେରୁ',
+ 'PF' => 'ଫ୍ରେଞ୍ଚ ପଲିନେସିଆ',
+ 'PG' => 'ପପୁଆ ନ୍ୟୁ ଗୁଏନିଆ',
+ 'PH' => 'ଫିଲିପାଇନସ୍',
+ 'PK' => 'ପାକିସ୍ତାନ',
+ 'PL' => 'ପୋଲାଣ୍ଡ',
+ 'PM' => 'ସେଣ୍ଟ ପିଏରେ ଏବଂ ମିକ୍ବାଲୋନ୍',
+ 'PN' => 'ପିଟକାଇରିନ୍',
+ 'PR' => 'ପୁଏର୍ତ୍ତୋ ରିକୋ',
+ 'PS' => 'ପାଲେସ୍ତେନିଆ',
+ 'PT' => 'ପର୍ତ୍ତୁଗାଲ୍',
+ 'PW' => 'ପାଲାଉ',
+ 'PY' => 'ପାରାଗୁଏ',
+ 'QA' => 'କତାର୍',
+ 'QO' => 'ଆଉଟଲେଇଂ ଓସେନିଆ',
+ 'RE' => 'ରିୟୁନିଅନ୍',
+ 'RO' => 'ରୋମାନିଆ',
+ 'RS' => 'ସର୍ବିଆ',
+ 'RU' => 'ରୁଷିଆ',
+ 'RW' => 'ରାୱାଣ୍ଡା',
+ 'SA' => 'ସାଉଦି ଆରବିଆ',
+ 'SB' => 'ସୋଲୋମନ୍ ଦ୍ବୀପପୁଞ୍ଜ',
+ 'SC' => 'ସେଚେଲସ୍',
+ 'SD' => 'ସୁଦାନ୍',
+ 'SE' => 'ସ୍ୱେଡେନ୍',
+ 'SG' => 'ସିଙ୍ଗାପୁର୍',
+ 'SH' => 'ସେଣ୍ଟ ହେଲେନା',
+ 'SI' => 'ସ୍ଲୋଭେନିଆ',
+ 'SJ' => 'ସାଲ୍ଭାର୍ଡ ଏବଂ ଜାନ୍ ମାୟୋନ୍',
+ 'SK' => 'ସ୍ଲୋଭାକିଆ',
+ 'SL' => 'ସିଓରା ଲିଓନ୍',
+ 'SM' => 'ସାନ୍ ମାରିନୋ',
+ 'SN' => 'ସେନେଗାଲ୍',
+ 'SO' => 'ସୋମାଲିଆ',
+ 'SR' => 'ସୁରିନାମ',
+ 'SS' => 'ଦକ୍ଷିନ ସୁଦାନ',
+ 'ST' => 'ସାଓ ଟୋମେ ଏବଂ ପ୍ରିନସିପି',
+ 'SV' => 'ଏଲ୍ ସାଲଭାଡୋର୍',
+ 'SY' => 'ସିରିଆ',
+ 'SZ' => 'ସ୍ବାଜିଲାଣ୍ଡ',
+ 'TC' => 'ତୁର୍କସ୍ ଏବଂ ସାଇକସ୍ ଦ୍ବୀପପୁଞ୍ଜ',
+ 'TD' => 'ଚାଦ୍',
+ 'TF' => 'ଫରାସୀ ଦକ୍ଷିଣ କ୍ଷେତ୍ର',
+ 'TG' => 'ଟୋଗୋ',
+ 'TH' => 'ଥାଇଲାଣ୍ଡ',
+ 'TJ' => 'ତାଜିକିସ୍ଥାନ୍',
+ 'TK' => 'ଟୋକେଲାଉ',
+ 'TL' => 'ପୁର୍ବ ତିମୋର୍',
+ 'TM' => 'ତୁର୍କମେନିସ୍ତାନ୍',
+ 'TN' => 'ତୁନିସିଆ',
+ 'TO' => 'ଟୋଙ୍ଗା',
+ 'TR' => 'ତୁର୍କୀ',
+ 'TT' => 'ତ୍ରିନିଦାଦ୍ ଏବଂ ଟୋବାଗୋ',
+ 'TV' => 'ଟୁଭାଲୁ',
+ 'TW' => 'ତାଇୱାନ୍',
+ 'TZ' => 'ତାଞ୍ଜାନିଆ',
+ 'UA' => 'ୟୁକ୍ରାଇନ୍',
+ 'UG' => 'ଉଗାଣ୍ଡା',
+ 'UM' => 'ୟୁନାଇଟେଡ୍ ଷ୍ଟେଟସ୍ ମାଇନର୍ ଆଉଟଲେଇଂ ଦ୍ବୀପପୁଞ୍ଜ',
+ 'US' => 'ୟୁ.ଏସ୍',
+ 'UY' => 'ଉରୁଗୁଏ',
+ 'UZ' => 'ଉଜବେକିସ୍ଥାନ୍',
+ 'VA' => 'ଭାଟିକାନ୍',
+ 'VC' => 'ସେଣ୍ଟ ଭିନସେଣ୍ଟ ଏବଂ ଦି ଗ୍ରେନାଡିସ୍',
+ 'VE' => 'ଭେନଜୁଏଲା',
+ 'VG' => 'ବ୍ରିଟିଶ୍ ଭର୍ଜିନ୍ ଦ୍ବୀପପୁଞ୍ଜ',
+ 'VI' => 'ୟୁଏସ୍ ଭର୍ଜିନ୍ ଦ୍ବୀପପୁଞ୍ଜ',
+ 'VN' => 'ଭିଏତନାମ୍',
+ 'VU' => 'ଭାନୁଆତୁ',
+ 'WF' => 'ୱାଲିସ୍ ଏବଂ ଫୁତୁନା',
+ 'WS' => 'ସାମୋଆ',
+ 'YE' => 'ୟେମେନ୍',
+ 'YT' => 'ମାୟୋଟେ',
+ 'ZA' => 'ଦକ୍ଷିଣ ଆଫ୍ରିକା',
+ 'ZM' => 'ଜାମ୍ବିଆ',
+ 'ZW' => 'ଜିମ୍ବାୱେ',
+);
diff --git a/MLEB/cldr/CldrNames/CldrNamesOs.php b/MLEB/cldr/CldrNames/CldrNamesOs.php
new file mode 100644
index 00000000..3d8a63fa
--- /dev/null
+++ b/MLEB/cldr/CldrNames/CldrNamesOs.php
@@ -0,0 +1,130 @@
+<?php
+
+$languageNames = array(
+ 'ab' => 'абхазаг',
+ 'ady' => 'адыгейаг',
+ 'ae' => 'авестӕ',
+ 'af' => 'африкаанс',
+ 'ang' => 'рагон англисаг',
+ 'ar' => 'араббаг',
+ 'av' => 'авайраг',
+ 'az' => 'тӕтӕйраг',
+ 'ba' => 'башкираг',
+ 'bg' => 'болгайраг',
+ 'bs' => 'босниаг',
+ 'bua' => 'бурятаг',
+ 'ca' => 'каталайнаг',
+ 'ce' => 'цӕцӕйнаг',
+ 'cop' => 'коптаг',
+ 'cs' => 'чехаг',
+ 'cv' => 'чувашаг',
+ 'da' => 'даниаг',
+ 'de' => 'немыцаг',
+ 'de-at' => 'австралиаг немыцаг',
+ 'de-ch' => 'швйецариаг немыцаг',
+ 'egy' => 'рагон египтаг',
+ 'el' => 'бердзейнаг',
+ 'en' => 'англисаг',
+ 'en-au' => 'австралиаг англисаг',
+ 'en-ca' => 'канадӕйаг англисаг',
+ 'en-gb' => 'бритайнаг англисаг',
+ 'en-us' => 'америкаг англисаг',
+ 'eo' => 'есперанто',
+ 'es' => 'испайнаг',
+ 'es-419' => 'латинаг америкаг англисаг',
+ 'es-es' => 'европӕйаг англисаг',
+ 'et' => 'естойнаг',
+ 'eu' => 'баскаг',
+ 'fa' => 'персайнаг',
+ 'fi' => 'финнаг',
+ 'fil' => 'филиппинаг',
+ 'fj' => 'фиджи',
+ 'fo' => 'фарераг',
+ 'fr' => 'францаг',
+ 'fr-ca' => 'канадӕйаг францаг',
+ 'fr-ch' => 'швейцариаг францаг',
+ 'fro' => 'рагон францаг',
+ 'ga' => 'ирландиаг',
+ 'grc' => 'рагон бердзейнаг',
+ 'he' => 'уираг',
+ 'hr' => 'хорватаг',
+ 'hu' => 'венгериаг',
+ 'hy' => 'сомихаг',
+ 'inh' => 'мӕхъӕлон',
+ 'it' => 'италиаг',
+ 'ja' => 'япойнаг',
+ 'ka' => 'гуырдзиаг',
+ 'kbd' => 'кӕсгон',
+ 'krc' => 'бӕлхъӕрон',
+ 'ku' => 'курдаг',
+ 'kum' => 'хъуымыхъхъаг',
+ 'la' => 'латинаг',
+ 'lez' => 'лекъаг',
+ 'mk' => 'мӕчъидон',
+ 'os' => 'ирон',
+ 'pt' => 'португалиаг',
+ 'pt-br' => 'бразилиаг португалиаг',
+ 'pt-pt' => 'европӕйаг полтугалиаг',
+ 'rom' => 'цигайнаг',
+ 'ru' => 'уырыссаг',
+ 'und' => 'нӕзонгӕ ӕвзаг',
+ 'zh' => 'китайаг',
+ 'zh-hans' => 'ӕнцонгонд китайаг',
+ 'zh-hant' => 'традицион китайаг',
+);
+
+$currencyNames = array(
+ 'BRL' => 'Бразилиаг реал',
+ 'EUR' => 'Евро',
+ 'GBP' => 'Бритайнаг Стерлингы Фунт',
+ 'GEL' => 'Лар',
+ 'RUB' => 'Сом',
+ 'USD' => 'АИШ-ы Доллар',
+ 'XXX' => 'Нӕзонгӕ валютӕ',
+);
+
+$currencySymbols = array(
+ 'BRL' => 'R$',
+ 'EUR' => '€',
+ 'GBP' => '£',
+ 'USD' => '$',
+);
+
+$countryNames = array(
+ 'BR' => 'Бразили',
+ 'CN' => 'Китай',
+ 'DE' => 'Герман',
+ 'FR' => 'Франц',
+ 'GB' => 'Стыр Британи',
+ 'GE' => 'Гуырдзыстон',
+ 'IN' => 'Инди',
+ 'IT' => 'Итали',
+ 'JP' => 'Япон',
+ 'RU' => 'Уӕрӕсе',
+ 'US' => 'АИШ',
+);
+
+$timeUnits = array(
+ 'day-future-one' => '{0} боны фӕстӕ',
+ 'day-future-other' => '{0} боны фӕстӕ',
+ 'day-one' => '{0} бон',
+ 'day-other' => '{0} боны',
+ 'day-past-one' => '{0} бон раздӕр',
+ 'day-past-other' => '{0} боны размӕ',
+ 'hour-future-one' => '{0} сахаты фӕстӕ',
+ 'hour-future-other' => '{0} сахаты фӕстӕ',
+ 'hour-one' => '{0} сахат',
+ 'hour-other' => '{0} сахаты',
+ 'hour-past-one' => '{0} сахаты размӕ',
+ 'hour-past-other' => '{0} сахаты размӕ',
+ 'minute-one' => '{0} минут',
+ 'minute-other' => '{0} минуты',
+ 'month-one' => '{0} мӕй',
+ 'month-other' => '{0} мӕйы',
+ 'second-one' => '{0} секунд',
+ 'second-other' => '{0} секунды',
+ 'week-one' => '{0} къуыри',
+ 'week-other' => '{0} къуырийы',
+ 'year-one' => '{0} аз',
+ 'year-other' => '{0} азы',
+);
diff --git a/MLEB/cldr/CldrNames/CldrNamesPa.php b/MLEB/cldr/CldrNames/CldrNamesPa.php
new file mode 100644
index 00000000..57944b89
--- /dev/null
+++ b/MLEB/cldr/CldrNames/CldrNamesPa.php
@@ -0,0 +1,991 @@
+<?php
+
+$languageNames = array(
+ 'ab' => 'ਅਬਖਾਜ਼ੀਅਨ',
+ 'ace' => 'ਅਚੀਨੀ',
+ 'ach' => 'ਅਕੋਲੀ',
+ 'af' => 'ਅਫ਼ਰੀਕੀ',
+ 'agq' => 'ਅਗੇਮ',
+ 'ak' => 'ਅਕਾਨ',
+ 'am' => 'ਅਮਹਾਰਿਕ',
+ 'ang' => 'ਪੁਰਾਣੀ ਅੰਗਰੇਜ਼ੀ',
+ 'ar' => 'ਅਰਬੀ',
+ 'ar-001' => 'ਆਧੁਨਿਕ ਮਿਆਰੀ ਅਰਬੀ',
+ 'arn' => 'ਮਾਪੁਚੇ',
+ 'as' => 'ਅਸਾਮੀ',
+ 'asa' => 'ਅਸੂ',
+ 'az' => 'ਅਜ਼ਰਬਾਈਜਾਨੀ',
+ 'ba' => 'ਬਸ਼ਕੀਰ',
+ 'be' => 'ਬੇਲਾਰੂਸੀ',
+ 'bem' => 'ਬੇਮਬਾ',
+ 'bez' => 'ਬੇਨਾ',
+ 'bg' => 'ਬੁਲਗਾਰੀਆਈ',
+ 'bho' => 'ਭੋਜਪੁਰੀ',
+ 'bm' => 'ਬੰਬਾਰਾ',
+ 'bn' => 'ਬੰਗਾਲੀ',
+ 'bo' => 'ਤਿੱਬਤੀ',
+ 'br' => 'ਬਰੇਟਨ',
+ 'brx' => 'ਬੋਡੋ',
+ 'bs' => 'ਬੋਸਨੀਆਈ',
+ 'ca' => 'ਕੈਟਾਲਾਨ',
+ 'ce' => 'ਚੇਚਨ',
+ 'cgg' => 'ਚੀਗਾ',
+ 'chm' => 'ਮਾਰੀ',
+ 'chr' => 'ਚੇਰੋਕੀ',
+ 'ckb' => 'ਸੋਰਾਨੀ ਕੁਰਦਿਸ਼',
+ 'co' => 'ਕੋਰਸੀਕਨ',
+ 'cs' => 'ਚੈਕ',
+ 'cy' => 'ਵੈਲਜ਼',
+ 'da' => 'ਡੈਨਿਸ਼',
+ 'dav' => 'ਟੇਟਾ',
+ 'de' => 'ਜਰਮਨ',
+ 'de-at' => 'ਆਸਟਰੀਆਈ ਜਰਮਨ',
+ 'de-ch' => 'ਸਵਿਸ ਹਾਈ ਜਰਮਨ',
+ 'dje' => 'ਜ਼ਾਰਮਾ',
+ 'dsb' => 'ਲੋਅਰ ਸੋਰਬੀਅਨ',
+ 'dua' => 'ਡੂਆਲਾ',
+ 'dyo' => 'ਜੋਲਾ-ਫੋਇਨੀ',
+ 'dz' => 'ਜ਼ੋਂਗਖਾ',
+ 'ebu' => 'ਇੰਬੂ',
+ 'ee' => 'ਈਵਈ',
+ 'egy' => 'ਪੁਰਾਤਨ ਮਿਸਰੀ',
+ 'el' => 'ਯੂਨਾਨੀ',
+ 'en' => 'ਅੰਗਰੇਜ਼ੀ',
+ 'en-au' => 'ਆਸਟ੍ਰੇਲੀਆਈ ਅੰਗਰੇਜ਼ੀ',
+ 'en-ca' => 'ਕੈਨੇਡੀਅਨ ਅੰਗਰੇਜ਼ੀ',
+ 'en-gb' => 'ਬਰਤਾਨਵੀ ਅੰਗਰੇਜ਼ੀ',
+ 'en-us' => 'ਅਮਰੀਕੀ ਅੰਗਰੇਜ਼ੀ',
+ 'eo' => 'ਇਸਪੇਰਾਂਟੋ',
+ 'es' => 'ਸਪੇਨੀ',
+ 'es-419' => 'ਲਾਤੀਨੀ ਅਮਰੀਕੀ ਸਪੇਨੀ',
+ 'es-es' => 'ਯੂਰਪੀ ਸਪੇਨੀ',
+ 'es-mx' => 'ਮੈਕਸੀਕਨ ਸਪੈਨਿਸ਼',
+ 'et' => 'ਇਸਟੋਨੀਆਈ',
+ 'eu' => 'ਬਾਸਕ',
+ 'fa' => 'ਫ਼ਾਰਸੀ',
+ 'fi' => 'ਫਿਨਿਸ਼',
+ 'fil' => 'ਫਿਲੀਪਿਨੋ',
+ 'fj' => 'ਫ਼ਿਜ਼ੀ',
+ 'fo' => 'ਫ਼ੇਰੋਸੇ',
+ 'fr' => 'ਫਰਾਂਸੀਸੀ',
+ 'fr-ca' => 'ਕੈਨੇਡੀਅਨ ਫਰਾਂਸੀਸੀ',
+ 'fr-ch' => 'ਸਵਿਸ ਫਰਾਂਸੀਸੀ',
+ 'fy' => 'ਪੱਛਮੀ ਫ੍ਰਿਸੀਅਨ',
+ 'ga' => 'ਆਇਰੀ',
+ 'gag' => 'ਗਾਗੌਜ਼',
+ 'gl' => 'ਗੈਲਿਸ਼ਿਅਨ',
+ 'gn' => 'ਗੁਆਰਾਨੀ',
+ 'grc' => 'ਪੁਰਾਤਨ ਯੂਨਾਨੀ',
+ 'gsw' => 'ਸਵਿਸ ਜਰਮਨ',
+ 'gu' => 'ਗੁਜਰਾਤੀ',
+ 'guz' => 'ਗੁਸੀ',
+ 'gv' => 'ਮੈਂਕਸ',
+ 'ha' => 'ਹੌਸਾ',
+ 'haw' => 'ਹਵਾਈ',
+ 'he' => 'ਹਿਬਰੂ',
+ 'hi' => 'ਹਿੰਦੀ',
+ 'hif' => 'ਫਿਜੀ ਹਿੰਦੀ',
+ 'hr' => 'ਕ੍ਰੋਏਸ਼ਿਆਈ',
+ 'hsb' => 'ਅੱਪਰ ਸੋਰਬੀਅਨ',
+ 'ht' => 'ਹੈਤੀਆਈ',
+ 'hu' => 'ਹੰਗਰੀਆਈ',
+ 'hy' => 'ਅਰਮੀਨੀਆਈ',
+ 'id' => 'ਇੰਡੋਨੇਸ਼ੀਆਈ',
+ 'ig' => 'ਇਗਬੋ',
+ 'ii' => 'ਸਿਚੁਆਨ ਯੀ',
+ 'is' => 'ਆਈਸਲੈਂਡਿਕ',
+ 'it' => 'ਇਤਾਲਵੀ',
+ 'iu' => 'ਇੰਕਟੀਟੂਤ',
+ 'ja' => 'ਜਪਾਨੀ',
+ 'jgo' => 'ਨਗੋਂਬਾ',
+ 'jmc' => 'ਮਚਾਮੇ',
+ 'jv' => 'ਜਾਵਾਨੀਜ਼',
+ 'ka' => 'ਜਾਰਜੀਆਈ',
+ 'kab' => 'ਕਬਾਇਲ',
+ 'kam' => 'ਕੰਬਾ',
+ 'kde' => 'ਮਕੋਂਡ',
+ 'kea' => 'ਕਾਬੁਵੇਰਦਿਆਨੂ',
+ 'khq' => 'ਕੋਯਰਾ ਚੀਨੀ',
+ 'ki' => 'ਕਿਕੂਯੂ',
+ 'kk' => 'ਕਜ਼ਾਖ਼',
+ 'kl' => 'ਕਲਾਅੱਲੀਸੁਟ',
+ 'kln' => 'ਕਲੇਜਿਨ',
+ 'km' => 'ਖਮੇਰ',
+ 'kn' => 'ਕੰਨੜ',
+ 'ko' => 'ਕੋਰੀਆਈ',
+ 'koi' => 'ਕੋਮੀ-ਪੇਰਮਿਆਕ',
+ 'kok' => 'ਕੋਂਕਣੀ',
+ 'ks' => 'ਕਸ਼ਮੀਰੀ',
+ 'ksb' => 'ਸ਼ੰਬਾਲਾ',
+ 'ksf' => 'ਬਫ਼ੀਆ',
+ 'ku' => 'ਕੁਰਦ',
+ 'kw' => 'ਕੋਰਨਿਸ਼',
+ 'ky' => 'ਕਿਰਗੀਜ਼',
+ 'la' => 'ਲਾਤੀਨੀ',
+ 'lag' => 'ਲੰਗਾਈ',
+ 'lb' => 'ਲਕਜ਼ਮਬਰਗਿਸ਼',
+ 'lg' => 'ਗਾਂਡਾ',
+ 'lkt' => 'ਲਕੋਟਾ',
+ 'ln' => 'ਲਿੰਗਾਲਾ',
+ 'lo' => 'ਲਾਓ',
+ 'lt' => 'ਲਿਥੁਆਨੀਅਨ',
+ 'lu' => 'ਲੂਬਾ-ਕਾਟਾਂਗਾ',
+ 'luo' => 'ਲੂਓ',
+ 'luy' => 'ਲੂਈਆ',
+ 'lv' => 'ਲਾਟਵਿਅਨ',
+ 'mai' => 'ਮੈਥਲੀ',
+ 'mas' => 'ਮਸਾਈ',
+ 'mer' => 'ਮੇਰੂ',
+ 'mfe' => 'ਮੋਰੀਸਿਅਨ',
+ 'mg' => 'ਮੇਲੇਗਸੀ',
+ 'mgh' => 'ਮਖੋਵਾ-ਮਿੱਟੋ',
+ 'mgo' => 'ਮੇਟਾ',
+ 'mi' => 'ਮਾਉਰੀ',
+ 'mk' => 'ਮੈਕਡੋਨੀਆਈ',
+ 'ml' => 'ਮਲਿਆਲਮ',
+ 'mn' => 'ਮੰਗੋਲੀਅਨ',
+ 'mni' => 'ਮਨੀਪੁਰੀ',
+ 'moh' => 'ਮੋਹਾਵਕ',
+ 'mr' => 'ਮਰਾਠੀ',
+ 'ms' => 'ਮਲਯ',
+ 'mt' => 'ਮਾਲਟੀਜ਼',
+ 'mua' => 'ਮੁੰਡੇਂਗ',
+ 'mul' => 'ਕਈ ਭਾਸ਼ਾਵਾਂ',
+ 'my' => 'ਬਰਮੀ',
+ 'naq' => 'ਨਾਮਾ',
+ 'nb' => 'ਨਾਰਵੇਜਿਆਈ ਬੋਕਮਲ',
+ 'nd' => 'ਉੱਤਰੀ ਨਡੇਬੇਲੇ',
+ 'ne' => 'ਨੇਪਾਲੀ',
+ 'nl' => 'ਡੱਚ',
+ 'nl-be' => 'ਫਲੈਮਿਸ਼',
+ 'nmg' => 'ਕਵਾਸਿਓ',
+ 'nn' => 'ਨਾਰਵੇਜਿਆਈ ਨਿਓਨੌਰਸਕ',
+ 'no' => 'ਨਾਰਵੇਜੀਅਨ',
+ 'nqo' => 'ਐਂਕੋ',
+ 'nus' => 'ਨੁਏਰ',
+ 'nyn' => 'ਨਿਆਂਕੋਲੇ',
+ 'om' => 'ਓਰੋਮੋ',
+ 'or' => 'ਉੜੀਆ',
+ 'pa' => 'ਪੰਜਾਬੀ',
+ 'pi' => 'ਪਲੀ',
+ 'pl' => 'ਪੋਲੈਂਡੀ',
+ 'ps' => 'ਪਸ਼ਤੋ',
+ 'pt' => 'ਪੁਰਤਗਾਲੀ',
+ 'pt-br' => 'ਬ੍ਰਾਜ਼ੀਲੀਆਈ ਪੁਰਤਗਾਲੀ',
+ 'pt-pt' => 'ਯੂਰਪੀ ਪੁਰਤਗਾਲੀ',
+ 'qu' => 'ਕਕੇਸ਼ੁਆ',
+ 'quc' => 'ਕੇਸ਼',
+ 'raj' => 'ਰਾਜਸਥਾਨੀ',
+ 'rm' => 'ਰੋਮਾਂਸ਼',
+ 'rn' => 'ਰੁੰਡੀ',
+ 'ro' => 'ਰੋਮਾਨੀਆਈ',
+ 'ro-md' => 'ਮੋਲਡਾਵੀਆਈ',
+ 'rof' => 'ਰੋਮਬੋ',
+ 'ru' => 'ਰੂਸੀ',
+ 'rw' => 'ਕਿਨਿਆਰਵਾਂਡਾ',
+ 'rwk' => 'ਰਵਾ',
+ 'sa' => 'ਸੰਸਕ੍ਰਿਤ',
+ 'saq' => 'ਸਮਬੁਰੂ',
+ 'sat' => 'ਸੰਥਾਲੀ',
+ 'sbp' => 'ਸੇਂਗੋ',
+ 'sd' => 'ਸਿੰਧੀ',
+ 'se' => 'ਉੱਤਰੀ ਸਾਮੀ',
+ 'seh' => 'ਸੇਨਾ',
+ 'ses' => 'ਕੋਇਰਾਬੋਰੋ ਸੇਂਨੀ',
+ 'sg' => 'ਸਾਂਗੋ',
+ 'shi' => 'ਟਚੇਲਹਿਟ',
+ 'shn' => 'ਸ਼ਾਨ',
+ 'si' => 'ਸਿੰਹਾਲਾ',
+ 'sk' => 'ਸਲੋਵਾਕ',
+ 'sl' => 'ਸਲੋਵੇਨੀਆਈ',
+ 'sma' => 'ਦੱਖਣੀ ਸਾਮੀ',
+ 'smj' => 'ਲਿਊਲ ਸਾਮੀ',
+ 'smn' => 'ਇਨਾਰੀ ਸਾਮੀ',
+ 'sms' => 'ਸਕੌਲਟ ਸਾਮੀ',
+ 'sn' => 'ਸ਼ੋਨਾ',
+ 'so' => 'ਸੋਮਾਲੀ',
+ 'sq' => 'ਅਲਬਾਨੀਆਈ',
+ 'sr' => 'ਸਰਬੀਆਈ',
+ 'su' => 'ਸੂਡਾਨੀ',
+ 'sv' => 'ਸਵੀਡਿਸ਼',
+ 'sw' => 'ਸਵਾਹਿਲੀ',
+ 'swc' => 'ਕਾਂਗੋ ਸਵਾਹਿਲੀ',
+ 'ta' => 'ਤਮਿਲ',
+ 'te' => 'ਤੇਲਗੂ',
+ 'teo' => 'ਟੇਸੋ',
+ 'tg' => 'ਤਾਜਿਕ',
+ 'th' => 'ਥਾਈ',
+ 'ti' => 'ਤਿਗ੍ਰੀਨਿਆ',
+ 'tk' => 'ਤੁਰਕਮੇਨ',
+ 'to' => 'ਟੌਂਗਨ',
+ 'tr' => 'ਤੁਰਕੀ',
+ 'tt' => 'ਤਤਾਰ',
+ 'tw' => 'ਤ੍ਵਿ',
+ 'twq' => 'ਤਾਸਾਵਿਕ',
+ 'tzm' => 'ਮੱਧ ਐਟਲਸ ਤਮਾਜ਼ਿਤ',
+ 'ug' => 'ਉਇਗੁਰ',
+ 'uk' => 'ਯੂਕਰੇਨੀਆਈ',
+ 'und' => 'ਅਣਪਛਾਤੀ ਭਾਸ਼ਾ',
+ 'ur' => 'ਉਰਦੂ',
+ 'uz' => 'ਉਜ਼ਬੇਕ',
+ 'vai' => 'ਵਾਈ',
+ 'vi' => 'ਵੀਅਤਨਾਮੀ',
+ 'vun' => 'ਵੂੰਜੋ',
+ 'wo' => 'ਵੋਲੋਫ',
+ 'xh' => 'ਖੋਸਾ',
+ 'xog' => 'ਸੋਗਾ',
+ 'yo' => 'ਯੋਰੂਬਾ',
+ 'zgh' => 'ਮਿਆਰੀ ਮੋਰੋਕੇਨ ਟਾਮਾਜ਼ਿਕ',
+ 'zh' => 'ਚੀਨੀ',
+ 'zh-hans' => 'ਸਰਲ ਚੀਨੀ',
+ 'zh-hant' => 'ਰਵਾਇਤੀ ਚੀਨੀ',
+ 'zu' => 'ਜ਼ੁਲੂ',
+ 'zxx' => 'ਕੋਈ ਭਾਸ਼ਾਈ ਸਮੱਗਰੀ ਨਹੀਂ',
+);
+
+$currencyNames = array(
+ 'AED' => 'ਸੰਯੁਕਤ ਅਰਬ ਅਮੀਰਾਤ ਦਿਰਹਾਮ',
+ 'AFN' => 'ਅਫ਼ਗਾਨ ਅਫ਼ਗਾਨੀ',
+ 'ALL' => 'ਅਲਬਾਨੀਆਈ ਲੇਕ',
+ 'AMD' => 'ਅਰਮੀਨੀਆਈ ਦਰਮ',
+ 'ANG' => 'ਨੀਦਰਲੈਂਡਸ ਐਂਟੀਲੀਅਨ ਗਿਲਡਰ',
+ 'AOA' => 'ਅੰਗੋਲਾ ਕਵਾਂਜਾ',
+ 'ARA' => 'ਅਰਜਨਟੀਨੀ ਅਸਟਰਾਲ',
+ 'ARL' => 'ਅਰਜਨਟੀਨੀ ਪੇਸੋ ਲੇ (1970–1983)',
+ 'ARM' => 'ਅਰਜਨਟੀਨੀ ਪੇਸੋ (1881–1970)',
+ 'ARP' => 'ਅਰਜਨਟੀਨੀ ਪੇਸੋ (1983–1985)',
+ 'ARS' => 'ਅਰਜਨਟੀਨੀ ਪੇਸੋ',
+ 'AUD' => 'ਆਸਟ੍ਰੇਲੀਆਈ ਡਾਲਰ',
+ 'AWG' => 'ਅਰੂਬਨ ਫਲੋਰਿਨ',
+ 'AZN' => 'ਅਜ਼ਰਬਾਈਜਾਨ ਮਾਨਤ',
+ 'BAM' => 'ਬੋਸਨੀਆ-ਹਰਜ਼ੇਗੋਵੀਨਾ ਬਦਲਣਯੋਗ ਮਾਰਕ',
+ 'BBD' => 'ਬਾਰਬਾਡੀਅਨ ਡਾਲਰ',
+ 'BDT' => 'ਬੰਗਲਾਦੇਸ਼ੀ ਟਕਾ',
+ 'BGN' => 'ਬੁਲਗਾਰੀਆਈ ਲੇਵ',
+ 'BHD' => 'ਬਹਿਰੀਨੀ ਦਿਨਾਰ',
+ 'BIF' => 'ਬੁਰੁੰਡੀਆਈ ਫ੍ਰੈਂਕ',
+ 'BMD' => 'ਬਰਮੂਡਾ ਡਾਲਰ',
+ 'BND' => 'ਬਰੂਨੇਈ ਡਾਲਰ',
+ 'BOB' => 'ਬੋਲੀਵੀਅਨ ਬੋਲੀਵੀਅਨੋ',
+ 'BOL' => 'ਬੋਲੀਵੀਆਈ ਬੋਲੀਵੀਅਨੋ (1863–1963)',
+ 'BOP' => 'ਬੋਲੀਵੀਆਈ ਪੇਸੋ',
+ 'BOV' => 'ਬੋਲੀਵੀਆਈ ਮਵਡੋਲ',
+ 'BRB' => 'ਬ੍ਰਾਜ਼ੀਲੀਆਈ ਨਿਊ ਕਰੁਜ਼ਿਰੋਸ (1967–1986)',
+ 'BRC' => 'ਬ੍ਰਾਜ਼ੀਲੀਆਈ ਕਰੁਜ਼ਾਡੂ (1986–1989)',
+ 'BRE' => 'ਬ੍ਰਾਜ਼ੀਲੀਆਈ ਕਰੁਜ਼ਿਰੋਸ (1990–1993)',
+ 'BRL' => 'ਬ੍ਰਾਜ਼ੀਲੀਆਈ ਰੀਅਲ',
+ 'BRN' => 'ਬ੍ਰਾਜ਼ੀਲੀਆਈ ਨਿਊ ਕਰੁਜ਼ਾਡੂ (1989–1990)',
+ 'BRR' => 'ਬ੍ਰਾਜ਼ੀਲੀਆਈ ਕਰੁਜ਼ਿਰੋਸ (1993–1994)',
+ 'BRZ' => 'ਬ੍ਰਾਜ਼ੀਲੀਆਈ ਕਰੁਜ਼ਿਰੋਸ (1942–1967)',
+ 'BSD' => 'ਬਾਹਾਮੀਅਨ ਡਾਲਰ',
+ 'BTN' => 'ਭੂਟਾਨੀ ਐਂਗਲਟ੍ਰਮ',
+ 'BWP' => 'ਬੋਟਸਵਾਨਾ ਪੁਲਾ',
+ 'BYR' => 'ਬੇਲਾਰੂਸੀ ਰੂਬਲ',
+ 'BZD' => 'ਬੇਲੀਜ਼ ਡਾਲਰ',
+ 'CAD' => 'ਕੇਨੇਡਿਆਈ ਡਾਲਰ',
+ 'CDF' => 'ਕਾਂਗੋਲੀਜ਼ ਫ੍ਰੈਂਕ',
+ 'CHF' => 'ਸਵਿਸ ਫ੍ਰੈਂਕ',
+ 'CLP' => 'ਚਿਲੀ ਪੇਸੋ',
+ 'CNY' => 'ਚੀਨੀ ਯੁਆਨ',
+ 'COP' => 'ਕੋਲੰਬਿਆਈ ਪੇਸੋ',
+ 'CRC' => 'ਕੋਸਟਾ ਰੀਕਨ ਕੋਲਨ',
+ 'CUC' => 'ਕਿਊਬਨ ਬਦਲਣਯੋਗ ਪੇਸੋ',
+ 'CUP' => 'ਕਿਊਬਨ ਪੇਸੋ',
+ 'CVE' => 'ਕੇਪ ਵਰਡੀਅਨ ਸਕੂਡੋ',
+ 'CZK' => 'ਚੈਕ ਗਣਰਾਜ ਕੋਰੁਨਾ',
+ 'DEM' => 'ਜਰਮਨ ਮਾਰਕ',
+ 'DJF' => 'ਜ਼ੀਬੂਤੀਅਨ ਫ੍ਰੈਂਕ',
+ 'DKK' => 'ਡੈਨਿਸ਼ ਕਰੌਨ',
+ 'DOP' => 'ਡੌਮਿਨਿਕਨ ਪੇਸੋ',
+ 'DZD' => 'ਅਲਜੀਰਿਆਈ ਦਿਨਾਰ',
+ 'EGP' => 'ਮਿਸਰੀ ਪੌਂਡ',
+ 'ERN' => 'ਇਰੀਟ੍ਰਿਆਈ ਨਾਫ਼ਾ',
+ 'ETB' => 'ਇਥੋਪੀਆਈ ਬਿਰ',
+ 'EUR' => 'ਯੂਰੋ',
+ 'FJD' => 'ਫ਼ਿਜ਼ੀ ਡਾਲਰ',
+ 'FKP' => 'ਫ਼ਾਕਲੈਂਡ ਆਈਲੈਂਡਸ ਪੌਂਡ',
+ 'GBP' => 'ਬ੍ਰਿਟਿਸ਼ ਪੌਂਡ ਸਟਰਲਿੰਗ',
+ 'GEL' => 'ਜਾਰਜੀਆਈ ਲਾਰੀ',
+ 'GHS' => 'ਘਾਨਾਈ ਸੇਡੀ',
+ 'GIP' => 'ਜਿਬਰਾਲਟਰ ਪੌਂਡ',
+ 'GMD' => 'ਗੈਂਬੀਆਈ ਦਲਾਸੀ',
+ 'GNF' => 'ਗਿਨੀ ਫ੍ਰੈਂਕ',
+ 'GTQ' => 'ਗੁਆਟੇਮਾਲਾ ਕੁਏਟਜ਼ਲ',
+ 'GYD' => 'ਗੁਆਨਾਆਈ ਡਾਲਰ',
+ 'HKD' => 'ਹਾਂਗ ਕਾਂਗ ਡਾਲਰ',
+ 'HNL' => 'ਹਾਨਡੂਰਨ ਲੇਮਪਿਰਾ',
+ 'HRK' => 'ਕਰੋਏਸ਼ੀਆਈ ਕੁਨਾ',
+ 'HTG' => 'ਹੈਤੀ ਗੌਰਡੇ',
+ 'HUF' => 'ਹੰਗਰੀ ਫੋਰਿੰਟ',
+ 'IDR' => 'ਇੰਡੋਨੇਸ਼ੀਆਈ ਰੁਪਿਆਹ',
+ 'IEP' => 'ਆਇਰਿਸ਼ ਪੌਂਡ',
+ 'ILP' => 'ਇਜ਼ਰਾਈਲੀ ਪੌਂਡ',
+ 'ILS' => 'ਇਜ਼ਰਾਈਲੀ ਨਵੀਂ ਸ਼ੇਕੇਲ',
+ 'INR' => 'ਭਾਰਤੀ ਰੁਪਇਆ',
+ 'IQD' => 'ਇਰਾਕੀ ਦਿਨਾਰ',
+ 'IRR' => 'ਈਰਾਨੀ ਰਿਆਲ',
+ 'ISK' => 'ਆਈਸਲੈਂਡਿਕ ਕਰੌਨ',
+ 'JMD' => 'ਜਮਾਇਕਨ ਡਾਲਰ',
+ 'JOD' => 'ਜਾਰਡਨ ਦਿਨਾਰ',
+ 'JPY' => 'ਜਪਾਨੀ ਯੇਨ',
+ 'KES' => 'ਕੀਨੀਆਈ ਸ਼ਿਲਿੰਗ',
+ 'KGS' => 'ਕਿਰਗਿਸਤਾਨੀ ਸੋਮ',
+ 'KHR' => 'ਕੰਬੋਡੀਆਈ ਰੀਅਲ',
+ 'KMF' => 'ਕੋਮੋਰੀਅਨ ਫ੍ਰੈਂਕ',
+ 'KPW' => 'ਉੱਤਰੀ ਕੋਰੀਆਈ ਵੋਨ',
+ 'KRW' => 'ਦੱਖਣੀ ਕੋਰੀਆਈ ਵੋਨ',
+ 'KWD' => 'ਕੁਵੈਤੀ ਦਿਨਾਰ',
+ 'KYD' => 'ਕੇਮੈਨ ਆਈਲੈਂਡਸ ਡਾਲਰ',
+ 'KZT' => 'ਕਜ਼ਾਖਸਤਾਨੀ ਤੇਂਗੇ',
+ 'LAK' => 'ਲਾਓਟਿਆਈ ਕਿਪ',
+ 'LBP' => 'ਲੈਬਨਾਨੀ ਪੌਂਡ',
+ 'LKR' => 'ਸ੍ਰੀਲੰਕਾਈ ਰੁਪਇਆ',
+ 'LRD' => 'ਲਾਈਬੀਰੀਆਈ ਡਾਲਰ',
+ 'LTL' => 'ਲਿਥੁਆਨੀਆਈ ਲਿਤਾਸ',
+ 'LVL' => 'ਲਾਟਵਿਆਈ ਲਾਟਸ',
+ 'LYD' => 'ਲੀਬੀਅਨ ਦਿਨਾਰ',
+ 'MAD' => 'ਮੋਰੱਕਨ ਦਿਰਹਾਮ',
+ 'MDL' => 'ਮੋਲਡੋਵਨ ਲੇਉ',
+ 'MGA' => 'ਮਾਲਾਗਾਸੀ ਅਰਾਇਰੀ',
+ 'MKD' => 'ਮੈਕਡੋਨੀਆਈ ਡੇਨਾਰ',
+ 'MMK' => 'ਮਿਆਂਮਾਰ ਕਿਆਤ',
+ 'MNT' => 'ਮੰਗੋਲੀਆਈ ਤੁਗਰਿਕ',
+ 'MOP' => 'ਮੇਕਾਨੀ ਪਟਾਕਾ',
+ 'MRO' => 'ਮੋਰਿਟਾਨੀਆਈ ਊਗੀਆ',
+ 'MUR' => 'ਮੌਰਿਸ਼ੀਆਈ ਰੁਪਇਆ',
+ 'MVR' => 'ਮਾਲਦੀਵੀ ਰੁਫੀਆ',
+ 'MWK' => 'ਮਾਲਾਵੀਆਈ ਕਵਾਚਾ',
+ 'MXN' => 'ਮੈਕਸੀਕਨ ਪੇਸੋ',
+ 'MYR' => 'ਮਲੇਸ਼ੀਆਈ ਰਿੰਗਿਟ',
+ 'MZN' => 'ਮੋਜ਼ਾਮਬੀਕਨ ਮੈਟੀਕਲ',
+ 'NAD' => 'ਨਾਮੀਬੀਆਈ ਡਾਲਰ',
+ 'NGN' => 'ਨਾਇਜੀਰੀਆਈ ਨਾਇਰਾ',
+ 'NIO' => 'ਨਿਕਾਰਾਗੁਆਈ ਕੋਰਡੋਬਾ',
+ 'NOK' => 'ਨਾਰਵੇਜੀਆਈ ਕਰੌਨ',
+ 'NPR' => 'ਨੇਪਾਲੀ ਰੁਪਇਆ',
+ 'NZD' => 'ਨਿਊਜ਼ੀਲੈਂਡ ਡਾਲਰ',
+ 'OMR' => 'ਓਮਾਨੀ ਰਿਆਲ',
+ 'PAB' => 'ਪਨਾਮੇਨੀਅਨ ਬਾਲਬੋਆ',
+ 'PEN' => 'ਪੇਰੂਵੀਅਨ ਨਿਊਵੋ ਸੋਲ',
+ 'PGK' => 'ਪਾਪੂਆ ਨਿਊ ਗਿਨੀਆਈ ਕੀਨਾ',
+ 'PHP' => 'ਫਿਲਿਪੀਨੀ ਪੇਸੋ',
+ 'PKR' => 'ਪਾਕਿਸਤਾਨੀ ਰੁਪਇਆ',
+ 'PLN' => 'ਪੋਲੈਂਡੀ ਜ਼ਲੌਟੀ',
+ 'PYG' => 'ਪੈਰਾਗੁਵਾਇਨ ਗੁਆਰਾਨੀ',
+ 'QAR' => 'ਕਤਰੀ ਰਿਆਲ',
+ 'RON' => 'ਰੋਮਾਨੀਆਈ ਲੇਉ',
+ 'RSD' => 'ਸਰਬੀਆਈ ਦਿਨਾਰ',
+ 'RUB' => 'ਰੂਸੀ ਰੂਬਲ',
+ 'RWF' => 'ਰਵਾਂਡਨ ਫ੍ਰੈਂਕ',
+ 'SAR' => 'ਸਾਊਦੀ ਰਿਆਲ',
+ 'SBD' => 'ਸੋਲੋਮਨ ਆਈਲੈਂਡਸ ਡਾਲਰ',
+ 'SCR' => 'ਸੇਸ਼ਲਸ ਰੁਪਇਆ',
+ 'SDG' => 'ਸੂਡਾਨੀ ਪੌਂਡ',
+ 'SEK' => 'ਸਵੀਡਿਸ਼ ਕਰੋਨਾ',
+ 'SGD' => 'ਸਿੰਗਾਪੁਰ ਡਾਲਰ',
+ 'SHP' => 'ਸੇਂਟ ਹੇਲੇਨਾ ਪੌਂਡ',
+ 'SLL' => 'ਸਿਏਰਾ ਲਿਓਨੀਅਨ ਲਿਓਨ',
+ 'SOS' => 'ਸੋਮਾਲੀ ਸ਼ਿਲਿੰਗ',
+ 'SRD' => 'ਸੂਰੀਨਾਮੀ ਡਾਲਰ',
+ 'SSP' => 'ਦੱਖਣੀ ਸੂਡਾਨੀ ਪੌਂਡ',
+ 'STD' => 'ਸਾਉ ਟੋਮੀ ਐਂਡ ਪ੍ਰਿੰਸਪੀ ਡੋਬਰਾ',
+ 'SUR' => 'ਸੋਵੀਅਤ ਰੂਬਲ',
+ 'SYP' => 'ਸੀਰੀਆਈ ਪੌਂਡ',
+ 'SZL' => 'ਸਵਾਜ਼ੀ ਲਾਇਲੈਂਗਨੀ',
+ 'THB' => 'ਥਾਈ ਬਾਹਤ',
+ 'TJS' => 'ਤਾਜਿਕਿਸਤਾਨੀ ਸੋਮੋਨੀ',
+ 'TMT' => 'ਤੁਰਕਮੇਨਿਸਤਾਨੀ ਮਾਨਤ',
+ 'TND' => 'ਟਿਉਨੀਸ਼ੀਆਈ ਦਿਨਾਰ',
+ 'TOP' => 'ਟੌਂਗਨ ਪੈਂਗਾ',
+ 'TRY' => 'ਤੁਰਕੀ ਲੀਰਾ',
+ 'TTD' => 'ਟ੍ਰਿਨੀਡਾਡ ਅਤੇ ਟੋਬਾਗੋ ਡਾਲਰ',
+ 'TWD' => 'ਨਵਾਂ ਤਾਇਵਾਨ ਡਾਲਰ',
+ 'TZS' => 'ਤਨਜ਼ਾਨੀਆਈ ਸ਼ਿਲਿੰਗ',
+ 'UAH' => 'ਯੂਕਰੇਨੀਆਈ ਰਿਵਨਿਆ',
+ 'UGX' => 'ਯੂਗਾਂਡੀਆਈ ਸ਼ਿਲਿੰਗ',
+ 'USD' => 'ਯੂ.ਐਸ. ਡਾਲਰ',
+ 'UYP' => 'ਉਰੂਗੁਵਾਇਨ ਪੇਸੋ (1975–1993)',
+ 'UYU' => 'ਉਰੂਗੁਵਾਇਨ ਪੇਸੋ',
+ 'UZS' => 'ਉਜ਼ਬੇਕਿਸਤਾਨ ਸੋਮ',
+ 'VEB' => 'ਵੇਨੇਜ਼ੂਏਲਨ ਬੋਲੀਵਰ (1871–2008)',
+ 'VEF' => 'ਵੇਨੇਜ਼ੂਏਲਨ ਬੋਲੀਵਰ',
+ 'VND' => 'ਵੀਅਤਨਾਮੀ ਡੋਂਗ',
+ 'VNN' => 'ਵੀਅਤਨਾਮੀ ਡੋਂਗ (1978–1985)',
+ 'VUV' => 'ਵਾਨੂਆਟੂ ਵਾਟੂ',
+ 'WST' => 'ਸਾਮੋਆਈ ਤਾਲਾ',
+ 'XAF' => 'ਫ੍ਰੈਂਕ (CFA BEAC)',
+ 'XAG' => 'ਚਾਂਦੀ',
+ 'XAU' => 'ਸੋਨਾ',
+ 'XBB' => 'ਯੂਰਪੀ ਵਿੱਤੀ ਇਕਾਈ',
+ 'XCD' => 'ਪੂਰਬੀ ਕੈਰੇਬੀਅਨ ਡਾਲਰ',
+ 'XEU' => 'ਯੂਰਪੀ ਮੁਦਰਾ ਇਕਾਈ',
+ 'XOF' => 'ਫ੍ਰੈਂਕ (CFA BCEAO)',
+ 'XPF' => 'ਫ੍ਰੈਂਕ (CFP)',
+ 'XXX' => 'ਅਗਿਆਤ ਮੁਦਰਾ',
+ 'YER' => 'ਯਮਨੀ ਰਿਆਲ',
+ 'ZAR' => 'ਦੱਖਣੀ ਅਫਰੀਕੀ ਰੈਂਡ',
+ 'ZMW' => 'ਜ਼ਾਮਬੀਆਈ ਕਵਾਚਾ',
+);
+
+$currencySymbols = array(
+ 'AED' => 'AED',
+ 'AFN' => 'AFN',
+ 'ALL' => 'ALL',
+ 'AMD' => 'AMD',
+ 'ANG' => 'ANG',
+ 'AOA' => 'AOA',
+ 'ARA' => 'ARA',
+ 'ARL' => 'ARL',
+ 'ARM' => 'ARM',
+ 'ARP' => 'ARP',
+ 'ARS' => 'ARS',
+ 'AUD' => 'A$',
+ 'AWG' => 'AWG',
+ 'AZN' => 'AZN',
+ 'BAM' => 'BAM',
+ 'BBD' => 'BBD',
+ 'BDT' => 'BDT',
+ 'BGN' => 'BGN',
+ 'BHD' => 'BHD',
+ 'BIF' => 'BIF',
+ 'BMD' => 'BMD',
+ 'BND' => 'BND',
+ 'BOB' => 'BOB',
+ 'BOL' => 'BOL',
+ 'BOP' => 'BOP',
+ 'BOV' => 'BOV',
+ 'BRB' => 'BRB',
+ 'BRC' => 'BRC',
+ 'BRE' => 'BRE',
+ 'BRL' => 'R$',
+ 'BRN' => 'BRN',
+ 'BRR' => 'BRR',
+ 'BRZ' => 'BRZ',
+ 'BSD' => 'BSD',
+ 'BTN' => 'BTN',
+ 'BWP' => 'BWP',
+ 'BYR' => 'BYR',
+ 'BZD' => 'BZD',
+ 'CAD' => 'CA$',
+ 'CDF' => 'CDF',
+ 'CHF' => 'CHF',
+ 'CLP' => 'CLP',
+ 'CNY' => 'CN¥',
+ 'COP' => 'COP',
+ 'CRC' => 'CRC',
+ 'CUC' => 'CUC',
+ 'CUP' => 'CUP',
+ 'CVE' => 'CVE',
+ 'CZK' => 'CZK',
+ 'DEM' => 'DEM',
+ 'DJF' => 'DJF',
+ 'DKK' => 'DKK',
+ 'DOP' => 'DOP',
+ 'DZD' => 'DZD',
+ 'EGP' => 'EGP',
+ 'ERN' => 'ERN',
+ 'ETB' => 'ETB',
+ 'EUR' => '€',
+ 'FJD' => 'FJD',
+ 'FKP' => 'FKP',
+ 'GBP' => '£',
+ 'GEL' => 'GEL',
+ 'GHS' => 'GHS',
+ 'GIP' => 'GIP',
+ 'GMD' => 'GMD',
+ 'GNF' => 'GNF',
+ 'GTQ' => 'GTQ',
+ 'GYD' => 'GYD',
+ 'HKD' => 'HK$',
+ 'HNL' => 'HNL',
+ 'HRK' => 'HRK',
+ 'HTG' => 'HTG',
+ 'HUF' => 'HUF',
+ 'IDR' => 'IDR',
+ 'ILP' => 'ILP',
+ 'ILS' => '₪',
+ 'INR' => '₹',
+ 'IQD' => 'IQD',
+ 'IRR' => 'IRR',
+ 'ISK' => 'ISK',
+ 'JMD' => 'JMD',
+ 'JOD' => 'JOD',
+ 'JPY' => 'JP¥',
+ 'KES' => 'KES',
+ 'KGS' => 'KGS',
+ 'KHR' => 'KHR',
+ 'KMF' => 'KMF',
+ 'KPW' => 'KPW',
+ 'KRW' => '₩',
+ 'KWD' => 'KWD',
+ 'KYD' => 'KYD',
+ 'KZT' => 'KZT',
+ 'LAK' => 'LAK',
+ 'LBP' => 'LBP',
+ 'LKR' => 'LKR',
+ 'LRD' => 'LRD',
+ 'LTL' => 'LTL',
+ 'LVL' => 'LVL',
+ 'LYD' => 'LYD',
+ 'MAD' => 'MAD',
+ 'MDL' => 'MDL',
+ 'MGA' => 'MGA',
+ 'MKD' => 'MKD',
+ 'MMK' => 'MMK',
+ 'MNT' => 'MNT',
+ 'MOP' => 'MOP',
+ 'MRO' => 'MRO',
+ 'MUR' => 'MUR',
+ 'MVR' => 'MVR',
+ 'MWK' => 'MWK',
+ 'MXN' => 'MX$',
+ 'MYR' => 'MYR',
+ 'MZN' => 'MZN',
+ 'NAD' => 'NAD',
+ 'NGN' => 'NGN',
+ 'NIO' => 'NIO',
+ 'NOK' => 'NOK',
+ 'NPR' => 'NPR',
+ 'NZD' => 'NZ$',
+ 'OMR' => 'OMR',
+ 'PAB' => 'PAB',
+ 'PEN' => 'PEN',
+ 'PGK' => 'PGK',
+ 'PHP' => 'PHP',
+ 'PKR' => 'PKR',
+ 'PLN' => 'PLN',
+ 'PYG' => 'PYG',
+ 'QAR' => 'QAR',
+ 'RON' => 'RON',
+ 'RSD' => 'RSD',
+ 'RUB' => 'RUB',
+ 'RWF' => 'RWF',
+ 'SAR' => 'SAR',
+ 'SBD' => 'SBD',
+ 'SCR' => 'SCR',
+ 'SDG' => 'SDG',
+ 'SEK' => 'SEK',
+ 'SGD' => 'SGD',
+ 'SHP' => 'SHP',
+ 'SLL' => 'SLL',
+ 'SOS' => 'SOS',
+ 'SRD' => 'SRD',
+ 'SSP' => 'SSP',
+ 'STD' => 'STD',
+ 'SUR' => 'SUR',
+ 'SYP' => 'SYP',
+ 'SZL' => 'SZL',
+ 'THB' => '฿',
+ 'TJS' => 'TJS',
+ 'TMT' => 'TMT',
+ 'TND' => 'TND',
+ 'TOP' => 'TOP',
+ 'TRY' => 'TRY',
+ 'TTD' => 'TTD',
+ 'TWD' => 'NT$',
+ 'TZS' => 'TZS',
+ 'UAH' => 'UAH',
+ 'UGX' => 'UGX',
+ 'USD' => 'US$',
+ 'UYP' => 'UYP',
+ 'UYU' => 'UYU',
+ 'UZS' => 'UZS',
+ 'VEB' => 'VEB',
+ 'VEF' => 'VEF',
+ 'VND' => '₫',
+ 'VNN' => 'VNN',
+ 'VUV' => 'VUV',
+ 'WST' => 'WST',
+ 'XAF' => 'FCFA',
+ 'XAG' => 'XAG',
+ 'XAU' => 'XAU',
+ 'XBB' => 'XBB',
+ 'XCD' => 'EC$',
+ 'XEU' => 'XEU',
+ 'XOF' => 'CFA',
+ 'XPF' => 'CFPF',
+ 'XXX' => 'XXX',
+ 'YER' => 'YER',
+ 'ZAR' => 'ZAR',
+ 'ZMW' => 'ZMW',
+);
+
+$countryNames = array(
+ 'AC' => 'ਅਸੈਂਸ਼ਨ ਟਾਪੂ',
+ 'AD' => 'ਅੰਡੋਰਾ',
+ 'AE' => 'ਸੰਯੁਕਤ ਅਰਬ ਅਮੀਰਾਤ',
+ 'AF' => 'ਅਫ਼ਗਾਨਿਸਤਾਨ',
+ 'AG' => 'ਐਂਟੀਗੁਆ ਅਤੇ ਬਾਰਬੁਡਾ',
+ 'AI' => 'ਅੰਗੁਇਲਾ',
+ 'AL' => 'ਅਲਬਾਨੀਆ',
+ 'AM' => 'ਅਰਮੀਨੀਆ',
+ 'AO' => 'ਅੰਗੋਲਾ',
+ 'AQ' => 'ਅੰਟਾਰਕਟਿਕਾ',
+ 'AR' => 'ਅਰਜਨਟੀਨਾ',
+ 'AS' => 'ਅਮੈਰੀਕਨ ਸਮੋਆ',
+ 'AT' => 'ਆਸਟਰੀਆ',
+ 'AU' => 'ਆਸਟ੍ਰੇਲੀਆ',
+ 'AW' => 'ਅਰੂਬਾ',
+ 'AX' => 'ਅਲੈਂਡ ਟਾਪੂ',
+ 'AZ' => 'ਅਜ਼ਰਬਾਈਜਾਨ',
+ 'BA' => 'ਬੋਸਨੀਆ ਅਤੇ ਹਰਜ਼ੇਗੋਵੀਨਾ',
+ 'BB' => 'ਬਾਰਬਾਡੋਸ',
+ 'BD' => 'ਬੰਗਲਾਦੇਸ਼',
+ 'BE' => 'ਬੈਲਜੀਅਮ',
+ 'BF' => 'ਬੁਰਕੀਨਾ ਫ਼ਾਸੋ',
+ 'BG' => 'ਬੁਲਗਾਰੀਆ',
+ 'BH' => 'ਬਹਿਰੀਨ',
+ 'BI' => 'ਬੁਰੁੰਡੀ',
+ 'BJ' => 'ਬੇਨਿਨ',
+ 'BL' => 'ਸੇਂਟ ਬਾਰਥੇਲੇਮੀ',
+ 'BM' => 'ਬਰਮੂਡਾ',
+ 'BN' => 'ਬਰੂਨੇਈ',
+ 'BO' => 'ਬੋਲੀਵੀਆ',
+ 'BQ' => 'ਕੈਰੇਬੀਆਈ ਨੀਦਰਲੈਂਡ',
+ 'BR' => 'ਬ੍ਰਾਜ਼ੀਲ',
+ 'BS' => 'ਬਹਾਮਾਸ',
+ 'BT' => 'ਭੂਟਾਨ',
+ 'BV' => 'ਬੌਵੇਟ ਟਾਪੂ',
+ 'BW' => 'ਬੋਟਸਵਾਨਾ',
+ 'BY' => 'ਬੇਲਾਰੂਸ',
+ 'BZ' => 'ਬੇਲੀਜ਼',
+ 'CA' => 'ਕੈਨੇਡਾ',
+ 'CC' => 'ਕੋਕੋਸ (ਕੀਲਿੰਗ) ਟਾਪੂ',
+ 'CD' => 'ਕਾਂਗੋ - ਕਿੰਸ਼ਾਸਾ',
+ 'CF' => 'ਕੇਂਦਰੀ ਅਫ਼ਰੀਕੀ ਗਣਰਾਜ',
+ 'CG' => 'ਕਾਂਗੋ - ਬ੍ਰਾਜ਼ਾਵਿਲੇ',
+ 'CH' => 'ਸਵਿਟਜ਼ਰਲੈਂਡ',
+ 'CI' => 'ਕੋਟ ਡੀਵੋਆਰ',
+ 'CK' => 'ਕੁੱਕ ਟਾਪੂ',
+ 'CL' => 'ਚਿਲੀ',
+ 'CM' => 'ਕੈਮਰੂਨ',
+ 'CN' => 'ਚੀਨ',
+ 'CO' => 'ਕੋਲੰਬੀਆ',
+ 'CP' => 'ਕਲਿੱਪਰਟਨ ਟਾਪੂ',
+ 'CR' => 'ਕੋਸਟਾ ਰੀਕਾ',
+ 'CU' => 'ਕਿਊਬਾ',
+ 'CV' => 'ਕੇਪ ਵਰਡੇ',
+ 'CW' => 'ਕੁਰਾਕਾਓ',
+ 'CX' => 'ਕ੍ਰਿਸਮਿਸ ਟਾਪੂ',
+ 'CY' => 'ਸਾਇਪ੍ਰਸ',
+ 'CZ' => 'ਚੈਕ ਗਣਰਾਜ',
+ 'DE' => 'ਜਰਮਨੀ',
+ 'DG' => 'ਡੀਇਗੋ ਗਾਰਸੀਆ',
+ 'DJ' => 'ਜ਼ੀਬੂਤੀ',
+ 'DK' => 'ਡੈਨਮਾਰਕ',
+ 'DM' => 'ਡੋਮੀਨਿਕਾ',
+ 'DO' => 'ਡੋਮੀਨਿਕਾਈ ਗਣਰਾਜ',
+ 'DZ' => 'ਅਲਜੀਰੀਆ',
+ 'EA' => 'ਸਿਓਟਾ ਅਤੇ ਮੇਲਿੱਲਾ',
+ 'EC' => 'ਇਕਵੇਡੋਰ',
+ 'EE' => 'ਇਸਟੋਨੀਆ',
+ 'EG' => 'ਮਿਸਰ',
+ 'EH' => 'ਪੱਛਮੀ ਸਹਾਰਾ',
+ 'ER' => 'ਇਰੀਟ੍ਰਿਆ',
+ 'ES' => 'ਸਪੇਨ',
+ 'ET' => 'ਇਥੋਪੀਆ',
+ 'EU' => 'ਯੂਰਪੀ ਯੂਨੀਅਨ',
+ 'FI' => 'ਫਿਨਲੈਂਡ',
+ 'FJ' => 'ਫ਼ਿਜੀ',
+ 'FK' => 'ਫ਼ਾਕਲੈਂਡ ਟਾਪੂ',
+ 'FM' => 'ਮਾਇਕ੍ਰੋਨੇਸ਼ੀਆ',
+ 'FO' => 'ਫੈਰੋ ਟਾਪੂ',
+ 'FR' => 'ਫ਼ਰਾਂਸ',
+ 'GA' => 'ਗਬੋਨ',
+ 'GB' => 'ਯੂ.ਕੇ.',
+ 'GD' => 'ਗ੍ਰੇਨਾਡਾ',
+ 'GE' => 'ਜਾਰਜੀਆ',
+ 'GF' => 'ਫ਼ਰੈਂਚ ਗੁਆਨਾ',
+ 'GG' => 'ਗਰਨਜੀ',
+ 'GH' => 'ਘਾਨਾ',
+ 'GI' => 'ਜਿਬਰਾਲਟਰ',
+ 'GL' => 'ਗ੍ਰੀਨਲੈਂਡ',
+ 'GM' => 'ਗੈਂਬੀਆ',
+ 'GN' => 'ਗਿਨੀ',
+ 'GP' => 'ਗੁਆਡੇਲੋਪ',
+ 'GQ' => 'ਭੂ-ਖੰਡੀ ਗਿਨੀ',
+ 'GR' => 'ਗ੍ਰੀਸ',
+ 'GS' => 'ਦੱਖਣੀ ਜਾਰਜੀਆ ਅਤੇ ਦੱਖਣੀ ਸੈਂਡਵਿਚ ਟਾਪੂ',
+ 'GT' => 'ਗੁਆਟੇਮਾਲਾ',
+ 'GU' => 'ਗੁਆਮ',
+ 'GW' => 'ਗਿਨੀ-ਬਿਸਾਉ',
+ 'GY' => 'ਗੁਯਾਨਾ',
+ 'HK' => 'ਹਾਂਗ ਕਾਂਗ',
+ 'HM' => 'ਹਰਡ ਤੇ ਮੈਕਡੋਨਾਲਡ ਟਾਪੂ',
+ 'HN' => 'ਹੋਂਡੁਰਸ',
+ 'HR' => 'ਕਰੋਏਸ਼ੀਆ',
+ 'HT' => 'ਹੈਤੀ',
+ 'HU' => 'ਹੰਗਰੀ',
+ 'IC' => 'ਕੇਨਾਰੀ ਟਾਪੂ',
+ 'ID' => 'ਇੰਡੋਨੇਸ਼ੀਆ',
+ 'IE' => 'ਆਇਰਲੈਂਡ',
+ 'IL' => 'ਇਜ਼ਰਾਈਲ',
+ 'IM' => 'ਆਇਲ ਆਫ ਮੈਨ',
+ 'IN' => 'ਭਾਰਤ',
+ 'IO' => 'ਬਰਤਾਨਵੀ ਹਿੰਦ ਮਹਾਂਸਾਗਰ ਪ੍ਰਦੇਸ਼',
+ 'IQ' => 'ਇਰਾਕ',
+ 'IR' => 'ਈਰਾਨ',
+ 'IS' => 'ਆਈਸਲੈਂਡ',
+ 'IT' => 'ਇਟਲੀ',
+ 'JE' => 'ਜਰਸੀ',
+ 'JM' => 'ਜਮਾਇਕਾ',
+ 'JO' => 'ਜਾਰਡਨ',
+ 'JP' => 'ਜਪਾਨ',
+ 'KE' => 'ਕੀਨੀਆ',
+ 'KG' => 'ਕਿਰਗਿਜ਼ਸਤਾਨ',
+ 'KH' => 'ਕੰਬੋਡੀਆ',
+ 'KI' => 'ਕਿਰਬਾਤੀ',
+ 'KM' => 'ਕੋਮੋਰੋਸ',
+ 'KN' => 'ਸੈਂਟ ਕਿਟਸ ਐਂਡ ਨੇਵਿਸ',
+ 'KP' => 'ਉੱਤਰੀ ਕੋਰੀਆ',
+ 'KR' => 'ਦੱਖਣੀ ਕੋਰੀਆ',
+ 'KW' => 'ਕੁਵੈਤ',
+ 'KY' => 'ਕੇਮੈਨ ਟਾਪੂ',
+ 'KZ' => 'ਕਜ਼ਾਖਸਤਾਨ',
+ 'LA' => 'ਲਾਓਸ',
+ 'LB' => 'ਲੈਬਨਾਨ',
+ 'LC' => 'ਸੇਂਟ ਲੂਸੀਆ',
+ 'LI' => 'ਲਿਚੇਂਸਟਾਇਨ',
+ 'LK' => 'ਸ੍ਰੀ ਲੰਕਾ',
+ 'LR' => 'ਲਾਈਬੀਰੀਆ',
+ 'LS' => 'ਲੇਸੋਥੋ',
+ 'LT' => 'ਲਿਥੁਆਨੀਆ',
+ 'LU' => 'ਲਕਜ਼ਮਬਰਗ',
+ 'LV' => 'ਲਾਟਵੀਆ',
+ 'LY' => 'ਲੀਬੀਆ',
+ 'MA' => 'ਮੋਰੱਕੋ',
+ 'MC' => 'ਮੋਨਾਕੋ',
+ 'MD' => 'ਮੋਲਡੋਵਾ',
+ 'ME' => 'ਮੋਂਟੇਨੇਗਰੋ',
+ 'MF' => 'ਸੇਂਟ ਮਾਰਟਿਨ',
+ 'MG' => 'ਮੈਡਾਗਾਸਕਰ',
+ 'MH' => 'ਮਾਰਸ਼ਲ ਟਾਪੂ',
+ 'MK' => 'ਮੈਕਡੋਨੀਆ',
+ 'ML' => 'ਮਾਲੀ',
+ 'MM' => 'ਮਿਆਂਮਾਰ (ਬਰਮਾ)',
+ 'MN' => 'ਮੰਗੋਲੀਆ',
+ 'MO' => 'ਮਕਾਉ',
+ 'MP' => 'ਉੱਤਰੀ ਮਾਰੀਆਨਾ ਟਾਪੂ',
+ 'MQ' => 'ਮਾਰਟੀਨਿਕ',
+ 'MR' => 'ਮੋਰਿਟਾਨੀਆ',
+ 'MS' => 'ਮੋਂਟਸੇਰਾਤ',
+ 'MT' => 'ਮਾਲਟਾ',
+ 'MU' => 'ਮੌਰਿਸ਼ਸ',
+ 'MV' => 'ਮਾਲਦੀਵ',
+ 'MW' => 'ਮਲਾਵੀ',
+ 'MX' => 'ਮੈਕਸੀਕੋ',
+ 'MY' => 'ਮਲੇਸ਼ੀਆ',
+ 'MZ' => 'ਮੋਜ਼ਾਮਬੀਕ',
+ 'NA' => 'ਨਾਮੀਬੀਆ',
+ 'NC' => 'ਨਿਊ ਕੈਲੇਡੋਨੀਆ',
+ 'NE' => 'ਨਾਈਜਰ',
+ 'NF' => 'ਨੋਰਫੌਕ ਟਾਪੂ',
+ 'NG' => 'ਨਾਈਜੀਰੀਆ',
+ 'NI' => 'ਨਿਕਾਰਾਗੁਆ',
+ 'NL' => 'ਨੀਦਰਲੈਂਡ',
+ 'NO' => 'ਨਾਰਵੇ',
+ 'NP' => 'ਨੇਪਾਲ',
+ 'NR' => 'ਨਾਉਰੂ',
+ 'NU' => 'ਨਿਯੂ',
+ 'NZ' => 'ਨਿਊਜ਼ੀਲੈਂਡ',
+ 'OM' => 'ਓਮਾਨ',
+ 'PA' => 'ਪਨਾਮਾ',
+ 'PE' => 'ਪੇਰੂ',
+ 'PF' => 'ਫਰੈਂਚ ਪੋਲੀਨੇਸ਼ੀਆ',
+ 'PG' => 'ਪਾਪੂਆ ਨਿਊ ਗਿਨੀ',
+ 'PH' => 'ਫਿਲੀਪੀਂਸ',
+ 'PK' => 'ਪਾਕਿਸਤਾਨ',
+ 'PL' => 'ਪੋਲੈਂਡ',
+ 'PM' => 'ਸੈਂਟ ਪੀਅਰੇ ਐਂਡ ਮਿਕੇਲਨ',
+ 'PN' => 'ਪਿਟਕੇਰਨ ਟਾਪੂ',
+ 'PR' => 'ਪਿਊਰਟੋ ਰਿਕੋ',
+ 'PS' => 'ਫਿਲੀਸਤੀਨ',
+ 'PT' => 'ਪੁਰਤਗਾਲ',
+ 'PW' => 'ਪਲਾਉ',
+ 'PY' => 'ਪੈਰਾਗਵੇ',
+ 'QA' => 'ਕਤਰ',
+ 'QO' => 'ਆਊਟਲਾਇੰਗ ਓਸ਼ੀਨੀਆ',
+ 'RE' => 'ਰਿਯੂਨੀਅਨ',
+ 'RO' => 'ਰੋਮਾਨੀਆ',
+ 'RS' => 'ਸਰਬੀਆ',
+ 'RU' => 'ਰੂਸ',
+ 'RW' => 'ਰਵਾਂਡਾ',
+ 'SA' => 'ਸਾਊਦੀ ਅਰਬ',
+ 'SB' => 'ਸੋਲੋਮਨ ਟਾਪੂ',
+ 'SC' => 'ਸੇਸ਼ਲਸ',
+ 'SD' => 'ਸੂਡਾਨ',
+ 'SE' => 'ਸਵੀਡਨ',
+ 'SG' => 'ਸਿੰਗਾਪੁਰ',
+ 'SH' => 'ਸੇਂਟ ਹੇਲੇਨਾ',
+ 'SI' => 'ਸਲੋਵੇਨੀਆ',
+ 'SJ' => 'ਸਵਾਲਬਰਡ ਅਤੇ ਜਾਨ ਮਾਯੇਨ',
+ 'SK' => 'ਸਲੋਵਾਕੀਆ',
+ 'SL' => 'ਸਿਏਰਾ ਲਿਓਨ',
+ 'SM' => 'ਸੈਨ ਮਰੀਨੋ',
+ 'SN' => 'ਸੇਨੇਗਲ',
+ 'SO' => 'ਸੋਮਾਲੀਆ',
+ 'SR' => 'ਸੂਰੀਨਾਮ',
+ 'SS' => 'ਦੱਖਣੀ ਸੂਡਾਨ',
+ 'ST' => 'ਸਾਓ ਟੋਮ ਅਤੇ ਪ੍ਰਿੰਸੀਪੇ',
+ 'SV' => 'ਅਲ ਸਲਵਾਡੋਰ',
+ 'SX' => 'ਸਿੰਟ ਮਾਰਟੀਨ',
+ 'SY' => 'ਸੀਰੀਆ',
+ 'SZ' => 'ਸਵਾਜ਼ੀਲੈਂਡ',
+ 'TA' => 'ਟ੍ਰਿਸਟਾਨ ਦਾ ਕੁੰਹਾ',
+ 'TC' => 'ਟੁਰਕਸ ਅਤੇ ਕੈਕੋਸ ਟਾਪੂ',
+ 'TD' => 'ਚਾਡ',
+ 'TF' => 'ਫਰੈਂਚ ਦੱਖਣੀ ਪ੍ਰਦੇਸ਼',
+ 'TG' => 'ਟੋਗੋ',
+ 'TH' => 'ਥਾਈਲੈਂਡ',
+ 'TJ' => 'ਤਾਜਿਕਿਸਤਾਨ',
+ 'TK' => 'ਟੋਕੇਲਾਉ',
+ 'TL' => 'ਤਿਮੋਰ-ਲੇਸਤੇ',
+ 'TM' => 'ਤੁਰਕਮੇਨਿਸਤਾਨ',
+ 'TN' => 'ਟਿਊਨੀਸ਼ੀਆ',
+ 'TO' => 'ਟੌਂਗਾ',
+ 'TR' => 'ਤੁਰਕੀ',
+ 'TT' => 'ਟ੍ਰਿਨੀਡਾਡ ਅਤੇ ਟੋਬਾਗੋ',
+ 'TV' => 'ਟੁਵਾਲੂ',
+ 'TW' => 'ਤਾਇਵਾਨ',
+ 'TZ' => 'ਤਨਜ਼ਾਨੀਆ',
+ 'UA' => 'ਯੂਕਰੇਨ',
+ 'UG' => 'ਯੂਗਾਂਡਾ',
+ 'UM' => 'ਯੂ.ਐਸ. ਦੂਰ-ਦੁਰਾਡੇ ਟਾਪੂ',
+ 'US' => 'ਯੂ.ਐਸ.',
+ 'UY' => 'ਉਰੂਗਵੇ',
+ 'UZ' => 'ਉਜ਼ਬੇਕਿਸਤਾਨ',
+ 'VA' => 'ਵੈਟੀਕਨ ਸਿਟੀ',
+ 'VC' => 'ਸੇਂਟ ਵਿਨਸੈਂਟ ਐਂਡ ਗ੍ਰੇਨਾਡੀਨਸ',
+ 'VE' => 'ਵੇਨੇਜ਼ੂਏਲਾ',
+ 'VG' => 'ਬ੍ਰਿਟਿਸ਼ ਵਰਜਿਨ ਟਾਪੂ',
+ 'VI' => 'ਯੂ ਐਸ ਵਰਜਿਨ ਟਾਪੂ',
+ 'VN' => 'ਵੀਅਤਨਾਮ',
+ 'VU' => 'ਵਾਨੂਆਟੂ',
+ 'WF' => 'ਵਾਲਿਸ ਅਤੇ ਫੂਟੂਨਾ',
+ 'WS' => 'ਸਾਮੋਆ',
+ 'XK' => 'ਕੋਸੋਵੋ',
+ 'YE' => 'ਯਮਨ',
+ 'YT' => 'ਮਾਯੋਟੀ',
+ 'ZA' => 'ਦੱਖਣੀ ਅਫਰੀਕਾ',
+ 'ZM' => 'ਜ਼ਾਮਬੀਆ',
+ 'ZW' => 'ਜ਼ਿੰਬਾਬਵੇ',
+);
+
+$timeUnits = array(
+ 'day-future-one' => '{0} ਦਿਨ ਵਿੱਚ',
+ 'day-future-other' => '{0} ਦਿਨਾਂ ਵਿੱਚ',
+ 'day-narrow-future-one' => '{0} ਦਿਨ ਵਿੱਚ',
+ 'day-narrow-future-other' => '{0} ਦਿਨਾਂ ਵਿੱਚ',
+ 'day-narrow-past-one' => '{0} ਦਿਨ ਪਹਿਲਾਂ',
+ 'day-narrow-past-other' => '{0} ਦਿਨ ਪਹਿਲਾਂ',
+ 'day-one' => '{0} ਦਿਨ',
+ 'day-other' => '{0} ਦਿਨ',
+ 'day-past-one' => '{0} ਦਿਨ ਪਹਿਲਾਂ',
+ 'day-past-other' => '{0} ਦਿਨ ਪਹਿਲਾਂ',
+ 'day-short-future-one' => '{0} ਦਿਨ ਵਿੱਚ',
+ 'day-short-future-other' => '{0} ਦਿਨਾਂ ਵਿੱਚ',
+ 'day-short-past-one' => '{0} ਦਿਨ ਪਹਿਲਾਂ',
+ 'day-short-past-other' => '{0} ਦਿਨ ਪਹਿਲਾਂ',
+ 'hour-future-one' => '{0} ਘੰਟੇ ਵਿੱਚ',
+ 'hour-future-other' => '{0} ਘੰਟਿਆਂ ਵਿੱਚ',
+ 'hour-narrow-future-one' => '{0} ਘੰਟੇ ਵਿੱਚ',
+ 'hour-narrow-future-other' => '{0} ਘੰਟਿਆਂ ਵਿੱਚ',
+ 'hour-narrow-past-one' => '{0} ਘੰਟਾ ਪਹਿਲਾਂ',
+ 'hour-narrow-past-other' => '{0} ਘੰਟੇ ਪਹਿਲਾਂ',
+ 'hour-one' => '{0} ਘੰਟਾ',
+ 'hour-other' => '{0} ਘੰਟੇ',
+ 'hour-past-one' => '{0} ਘੰਟਾ ਪਹਿਲਾਂ',
+ 'hour-past-other' => '{0} ਘੰਟੇ ਪਹਿਲਾਂ',
+ 'hour-short-future-one' => '{0} ਘੰਟੇ ਵਿੱਚ',
+ 'hour-short-future-other' => '{0} ਘੰਟਿਆਂ ਵਿੱਚ',
+ 'hour-short-past-one' => '{0} ਘੰਟਾ ਪਹਿਲਾਂ',
+ 'hour-short-past-other' => '{0} ਘੰਟੇ ਪਹਿਲਾਂ',
+ 'microsecond-one' => '{0} ਮਾਈਕਰੋਸਕਿੰਟ',
+ 'microsecond-other' => '{0} ਮਾਈਕਰੋਸਕਿੰਟ',
+ 'millisecond-one' => '{0} ਮਿਲੀਸਕਿੰਟ',
+ 'millisecond-other' => '{0} ਮਿਲੀਸਕਿੰਟ',
+ 'minute-future-one' => '{0} ਮਿੰਟ ਵਿੱਚ',
+ 'minute-future-other' => '{0} ਮਿੰਟਾਂ ਵਿੱਚ',
+ 'minute-narrow-future-one' => '{0} ਮਿੰਟ ਵਿੱਚ',
+ 'minute-narrow-future-other' => '{0} ਮਿੰਟਾਂ ਵਿੱਚ',
+ 'minute-narrow-past-one' => '{0} ਮਿੰਟ ਪਹਿਲਾਂ',
+ 'minute-narrow-past-other' => '{0} ਮਿੰਟ ਪਹਿਲਾਂ',
+ 'minute-one' => '{0} ਮਿੰਟ',
+ 'minute-other' => '{0} ਮਿੰਟ',
+ 'minute-past-one' => '{0} ਮਿੰਟ ਪਹਿਲਾਂ',
+ 'minute-past-other' => '{0} ਮਿੰਟ ਪਹਿਲਾਂ',
+ 'minute-short-future-one' => '{0} ਮਿੰਟ ਵਿੱਚ',
+ 'minute-short-future-other' => '{0} ਮਿੰਟਾਂ ਵਿੱਚ',
+ 'minute-short-past-one' => '{0} ਮਿੰਟ ਪਹਿਲਾਂ',
+ 'minute-short-past-other' => '{0} ਮਿੰਟ ਪਹਿਲਾਂ',
+ 'month-future-one' => '{0} ਮਹੀਨੇ ਵਿੱਚ',
+ 'month-future-other' => '{0} ਮਹੀਨਿਆਂ ਵਿੱਚ',
+ 'month-narrow-future-one' => '{0} ਮਹੀਨੇ ਵਿੱਚ',
+ 'month-narrow-future-other' => '{0} ਮਹੀਨਿਆਂ ਵਿੱਚ',
+ 'month-narrow-past-one' => '{0} ਮਹੀਨੇ ਪਹਿਲਾਂ',
+ 'month-narrow-past-other' => '{0} ਮਹੀਨੇ ਪਹਿਲਾਂ',
+ 'month-one' => '{0} ਮਹੀਨਾ',
+ 'month-other' => '{0} ਮਹੀਨੇ',
+ 'month-past-one' => '{0} ਮਹੀਨੇ ਪਹਿਲਾਂ',
+ 'month-past-other' => '{0} ਮਹੀਨੇ ਪਹਿਲਾਂ',
+ 'month-short-future-one' => '{0} ਮਹੀਨੇ ਵਿੱਚ',
+ 'month-short-future-other' => '{0} ਮਹੀਨਿਆਂ ਵਿੱਚ',
+ 'month-short-past-one' => '{0} ਮਹੀਨੇ ਪਹਿਲਾਂ',
+ 'month-short-past-other' => '{0} ਮਹੀਨੇ ਪਹਿਲਾਂ',
+ 'nanosecond-one' => '{0} ਨੈਨੋਸਕਿੰਟ',
+ 'nanosecond-other' => '{0} ਨੈਨੋਸਕਿੰਟ',
+ 'quarter-future-one' => '{0} ਤਿਮਾਹੀ ਵਿੱਚ',
+ 'quarter-future-other' => '{0} ਤਿਮਾਹੀਆਂ ਵਿੱਚ',
+ 'quarter-narrow-future-one' => '+{0} ਤਿਮਾਹੀ',
+ 'quarter-narrow-future-other' => '+{0} ਤਿਮਾਹੀਆਂ',
+ 'quarter-narrow-past-one' => '-{0} ਤਿਮਾਹੀ',
+ 'quarter-narrow-past-other' => '-{0} ਤਿਮਾਹੀਆਂ',
+ 'quarter-past-one' => '{0} ਤਿਮਾਹੀ ਪਹਿਲਾਂ',
+ 'quarter-past-other' => '{0} ਤਿਮਾਹੀਆਂ ਪਹਿਲਾਂ',
+ 'quarter-short-future-one' => '{0} ਤਿਮਾਹੀ ਵਿੱਚ',
+ 'quarter-short-future-other' => '{0} ਤਿਮਾਹੀਆਂ ਵਿੱਚ',
+ 'quarter-short-past-one' => '{0} ਤਿਮਾਹੀ ਪਹਿਲਾਂ',
+ 'quarter-short-past-other' => '{0} ਤਿਮਾਹੀਆਂ ਪਹਿਲਾਂ',
+ 'second-future-one' => '{0} ਸਕਿੰਟ ਵਿੱਚ',
+ 'second-future-other' => '{0} ਸਕਿੰਟਾਂ ਵਿੱਚ',
+ 'second-narrow-future-one' => '{0} ਸਕਿੰਟ ਵਿੱਚ',
+ 'second-narrow-future-other' => '{0} ਸਕਿੰਟਾਂ ਵਿੱਚ',
+ 'second-narrow-past-one' => '{0} ਸਕਿੰਟ ਪਹਿਲਾਂ',
+ 'second-narrow-past-other' => '{0} ਸਕਿੰਟ ਪਹਿਲਾਂ',
+ 'second-one' => '{0} ਸਕਿੰਟ',
+ 'second-other' => '{0} ਸਕਿੰਟ',
+ 'second-past-one' => '{0} ਸਕਿੰਟ ਪਹਿਲਾਂ',
+ 'second-past-other' => '{0} ਸਕਿੰਟ ਪਹਿਲਾਂ',
+ 'second-short-future-one' => '{0} ਸਕਿੰਟ ਵਿੱਚ',
+ 'second-short-future-other' => '{0} ਸਕਿੰਟਾਂ ਵਿੱਚ',
+ 'second-short-past-one' => '{0} ਸਕਿੰਟ ਪਹਿਲਾਂ',
+ 'second-short-past-other' => '{0} ਸਕਿੰਟ ਪਹਿਲਾਂ',
+ 'week-future-one' => '{0} ਹਫ਼ਤੇ ਵਿੱਚ',
+ 'week-future-other' => '{0} ਹਫ਼ਤਿਆਂ ਵਿੱਚ',
+ 'week-narrow-future-one' => '{0} ਹਫ਼ਤੇ ਵਿੱਚ',
+ 'week-narrow-future-other' => '{0} ਹਫ਼ਤਿਆਂ ਵਿੱਚ',
+ 'week-narrow-past-one' => '{0} ਹਫ਼ਤੇ ਪਹਿਲਾਂ',
+ 'week-narrow-past-other' => '{0} ਹਫ਼ਤੇ ਪਹਿਲਾਂ',
+ 'week-one' => '{0} ਹਫ਼ਤਾ',
+ 'week-other' => '{0} ਹਫ਼ਤੇ',
+ 'week-past-one' => '{0} ਹਫ਼ਤਾ ਪਹਿਲਾਂ',
+ 'week-past-other' => '{0} ਹਫ਼ਤੇ ਪਹਿਲਾਂ',
+ 'week-short-future-one' => '{0} ਹਫ਼ਤੇ ਵਿੱਚ',
+ 'week-short-future-other' => '{0} ਹਫ਼ਤਿਆਂ ਵਿੱਚ',
+ 'week-short-past-one' => '{0} ਹਫ਼ਤੇ ਪਹਿਲਾਂ',
+ 'week-short-past-other' => '{0} ਹਫ਼ਤੇ ਪਹਿਲਾਂ',
+ 'year-future-one' => '{0} ਸਾਲ ਵਿੱਚ',
+ 'year-future-other' => '{0} ਸਾਲਾਂ ਵਿੱਚ',
+ 'year-narrow-future-one' => '{0} ਸਾਲ ਵਿੱਚ',
+ 'year-narrow-future-other' => '{0} ਸਾਲਾਂ ਵਿੱਚ',
+ 'year-narrow-past-one' => '{0} ਸਾਲ ਪਹਿਲਾਂ',
+ 'year-narrow-past-other' => '{0} ਸਾਲ ਪਹਿਲਾਂ',
+ 'year-one' => '{0} ਸਾਲ',
+ 'year-other' => '{0} ਸਾਲ',
+ 'year-past-one' => '{0} ਸਾਲ ਪਹਿਲਾਂ',
+ 'year-past-other' => '{0} ਸਾਲ ਪਹਿਲਾਂ',
+ 'year-short-future-one' => '{0} ਸਾਲ ਵਿੱਚ',
+ 'year-short-future-other' => '{0} ਸਾਲਾਂ ਵਿੱਚ',
+ 'year-short-past-one' => '{0} ਸਾਲ ਪਹਿਲਾਂ',
+ 'year-short-past-other' => '{0} ਸਾਲ ਪਹਿਲਾਂ',
+);
diff --git a/MLEB/cldr/CldrNames/CldrNamesPl.php b/MLEB/cldr/CldrNames/CldrNamesPl.php
new file mode 100644
index 00000000..65a8433e
--- /dev/null
+++ b/MLEB/cldr/CldrNames/CldrNamesPl.php
@@ -0,0 +1,1534 @@
+<?php
+
+$languageNames = array(
+ 'aa' => 'afar',
+ 'ab' => 'abchaski',
+ 'ace' => 'aceh',
+ 'ach' => 'aczoli',
+ 'ada' => 'adangme',
+ 'ady' => 'adygejski',
+ 'ae' => 'awestyjski',
+ 'aeb' => 'tunezyjski arabski',
+ 'af' => 'afrikaans',
+ 'afh' => 'afrihili',
+ 'agq' => 'aghem',
+ 'ain' => 'ajnu',
+ 'ak' => 'akan',
+ 'akk' => 'akadyjski',
+ 'akz' => 'alabama',
+ 'ale' => 'aleucki',
+ 'aln' => 'albański gegijski',
+ 'alt' => 'południowoałtajski',
+ 'am' => 'amharski',
+ 'an' => 'aragoński',
+ 'ang' => 'staroangielski',
+ 'anp' => 'angika',
+ 'ar' => 'arabski',
+ 'ar-001' => 'współczesny arabski',
+ 'arc' => 'aramejski',
+ 'arn' => 'araukański',
+ 'aro' => 'araona',
+ 'arp' => 'arapaho',
+ 'arq' => 'algierski arabski',
+ 'arw' => 'arawak',
+ 'ary' => 'marokański arabski',
+ 'arz' => 'egipski arabski',
+ 'as' => 'asamski',
+ 'asa' => 'asu',
+ 'ase' => 'amerykański język migowy',
+ 'ast' => 'asturyjski',
+ 'av' => 'awarski',
+ 'avk' => 'kotava',
+ 'awa' => 'awadhi',
+ 'ay' => 'ajmara',
+ 'az' => 'azerski',
+ 'azb' => 'południowoazerski',
+ 'ba' => 'baszkirski',
+ 'bal' => 'beludżi',
+ 'ban' => 'balijski',
+ 'bar' => 'bawarski',
+ 'bas' => 'basa',
+ 'bax' => 'bamum',
+ 'bbc' => 'batak toba',
+ 'bbj' => 'ghomala',
+ 'be' => 'białoruski',
+ 'bej' => 'bedża',
+ 'bem' => 'bemba',
+ 'bew' => 'betawi',
+ 'bez' => 'bena',
+ 'bfd' => 'bafut',
+ 'bfq' => 'badaga',
+ 'bg' => 'bułgarski',
+ 'bho' => 'bhodźpuri',
+ 'bi' => 'bislama',
+ 'bik' => 'bikol',
+ 'bin' => 'bini',
+ 'bjn' => 'banjar',
+ 'bkm' => 'kom',
+ 'bla' => 'siksika',
+ 'bm' => 'bambara',
+ 'bn' => 'bengalski',
+ 'bo' => 'tybetański',
+ 'bpy' => 'bisznuprija-manipuri',
+ 'bqi' => 'bachtiarski',
+ 'br' => 'bretoński',
+ 'bra' => 'bradź',
+ 'brh' => 'brahui',
+ 'brx' => 'bodo',
+ 'bs' => 'bośniacki',
+ 'bss' => 'akose',
+ 'bua' => 'buriacki',
+ 'bug' => 'bugiński',
+ 'bum' => 'bulu',
+ 'byn' => 'blin',
+ 'byv' => 'medumba',
+ 'ca' => 'kataloński',
+ 'cad' => 'kaddo',
+ 'car' => 'karibi',
+ 'cay' => 'kajuga',
+ 'cch' => 'atsam',
+ 'ce' => 'czeczeński',
+ 'ceb' => 'cebuano',
+ 'cgg' => 'chiga',
+ 'ch' => 'chamorro',
+ 'chb' => 'czibcza',
+ 'chg' => 'czagatajski',
+ 'chk' => 'truk',
+ 'chm' => 'maryjski',
+ 'chn' => 'żargon Chinook',
+ 'cho' => 'choctaw',
+ 'chp' => 'chipewyan',
+ 'chr' => 'czirokeski',
+ 'chy' => 'język Czejenów',
+ 'ckb' => 'sorani',
+ 'co' => 'korsykański',
+ 'cop' => 'koptyjski',
+ 'cps' => 'capiznon',
+ 'cr' => 'kri',
+ 'crh' => 'krymski turecki',
+ 'cs' => 'czeski',
+ 'csb' => 'kaszubski',
+ 'cu' => 'staro-cerkiewno-słowiański',
+ 'cv' => 'czuwaski',
+ 'cy' => 'walijski',
+ 'da' => 'duński',
+ 'dak' => 'dakota',
+ 'dar' => 'dargwijski',
+ 'dav' => 'taita',
+ 'de' => 'niemiecki',
+ 'de-at' => 'austriacki niemiecki',
+ 'de-ch' => 'wysokoniemiecki (Szwajcaria)',
+ 'del' => 'delaware',
+ 'den' => 'slave',
+ 'dgr' => 'dogrib',
+ 'din' => 'dinka',
+ 'dje' => 'dżerma',
+ 'doi' => 'dogri',
+ 'dsb' => 'dolnołużycki',
+ 'dtp' => 'dusun centralny',
+ 'dua' => 'duala',
+ 'dum' => 'średniowieczny niderlandzki',
+ 'dv' => 'malediwski',
+ 'dyo' => 'diola',
+ 'dyu' => 'dyula',
+ 'dz' => 'dzongkha',
+ 'dzg' => 'dazaga',
+ 'ebu' => 'embu',
+ 'ee' => 'ewe',
+ 'efi' => 'efik',
+ 'egl' => 'emilijski',
+ 'egy' => 'starożytny egipski',
+ 'eka' => 'ekajuk',
+ 'el' => 'grecki',
+ 'elx' => 'elamicki',
+ 'en' => 'angielski',
+ 'en-au' => 'australijski angielski',
+ 'en-ca' => 'kanadyjski angielski',
+ 'en-gb' => 'brytyjski angielski',
+ 'en-us' => 'amerykański angielski',
+ 'enm' => 'średnioangielski',
+ 'eo' => 'esperanto',
+ 'es' => 'hiszpański',
+ 'es-419' => 'amerykański hiszpański',
+ 'es-es' => 'europejski hiszpański',
+ 'es-mx' => 'meksykański hiszpański',
+ 'esu' => 'yupik środkowosyberyjski',
+ 'et' => 'estoński',
+ 'eu' => 'baskijski',
+ 'ewo' => 'ewondo',
+ 'ext' => 'estremadurski',
+ 'fa' => 'perski',
+ 'fan' => 'fang',
+ 'fat' => 'fanti',
+ 'ff' => 'fulani',
+ 'fi' => 'fiński',
+ 'fil' => 'filipino',
+ 'fit' => 'meänkieli',
+ 'fj' => 'fidżijski',
+ 'fo' => 'farerski',
+ 'fon' => 'fon',
+ 'fr' => 'francuski',
+ 'fr-ca' => 'kanadyjski francuski',
+ 'fr-ch' => 'szwajcarski francuski',
+ 'frc' => 'cajun',
+ 'frm' => 'średniofrancuski',
+ 'fro' => 'starofrancuski',
+ 'frp' => 'franko-prowansalski',
+ 'frr' => 'północnofryzyjski',
+ 'frs' => 'fryzyjski wschodni',
+ 'fur' => 'friulijski',
+ 'fy' => 'zachodniofryzyjski',
+ 'ga' => 'irlandzki',
+ 'gaa' => 'ga',
+ 'gag' => 'gagauski',
+ 'gan' => 'gan',
+ 'gay' => 'gayo',
+ 'gba' => 'gbaya',
+ 'gbz' => 'zaratusztriański dari',
+ 'gd' => 'szkocki gaelicki',
+ 'gez' => 'gyyz',
+ 'gil' => 'gilbertański',
+ 'gl' => 'galicyjski',
+ 'glk' => 'giliański',
+ 'gmh' => 'średnio-wysoko-niemiecki',
+ 'gn' => 'guarani',
+ 'goh' => 'staro-wysoko-niemiecki',
+ 'gom' => 'konkani (Goa)',
+ 'gon' => 'gondi',
+ 'gor' => 'gorontalo',
+ 'got' => 'gocki',
+ 'grb' => 'grebo',
+ 'grc' => 'starogrecki',
+ 'gsw' => 'szwajcarski niemiecki',
+ 'gu' => 'gudźaracki',
+ 'guc' => 'wayúu',
+ 'gur' => 'frafra',
+ 'guz' => 'gusii',
+ 'gv' => 'manx',
+ 'gwi' => 'gwichʼin',
+ 'ha' => 'hausa',
+ 'hai' => 'haida',
+ 'hak' => 'hakka',
+ 'haw' => 'hawajski',
+ 'he' => 'hebrajski',
+ 'hi' => 'hindi',
+ 'hif' => 'hindi fidżyjskie',
+ 'hil' => 'hiligajnon',
+ 'hit' => 'hetycki',
+ 'hmn' => 'hmongijski',
+ 'ho' => 'hiri motu',
+ 'hr' => 'chorwacki',
+ 'hsb' => 'górnołużycki',
+ 'hsn' => 'xiang',
+ 'ht' => 'haitański',
+ 'hu' => 'węgierski',
+ 'hup' => 'hupa',
+ 'hy' => 'ormiański',
+ 'hz' => 'herero',
+ 'ia' => 'interlingua',
+ 'iba' => 'ibanag',
+ 'ibb' => 'ibibio',
+ 'id' => 'indonezyjski',
+ 'ie' => 'interlingue',
+ 'ig' => 'igbo',
+ 'ii' => 'syczuański',
+ 'ik' => 'inupiak',
+ 'ilo' => 'ilokano',
+ 'inh' => 'inguski',
+ 'io' => 'ido',
+ 'is' => 'islandzki',
+ 'it' => 'włoski',
+ 'iu' => 'inuktitut',
+ 'izh' => 'ingryjski',
+ 'ja' => 'japoński',
+ 'jam' => 'jamajski',
+ 'jbo' => 'lojban',
+ 'jgo' => 'ngombe',
+ 'jmc' => 'machame',
+ 'jpr' => 'judeoperski',
+ 'jrb' => 'judeoarabski',
+ 'jut' => 'jutlandzki',
+ 'jv' => 'jawajski',
+ 'ka' => 'gruziński',
+ 'kaa' => 'karakałpacki',
+ 'kab' => 'kabylski',
+ 'kac' => 'kaczin',
+ 'kaj' => 'jju',
+ 'kam' => 'kamba',
+ 'kaw' => 'kawi',
+ 'kbd' => 'kabardyjski',
+ 'kbl' => 'kanembu',
+ 'kcg' => 'tyap',
+ 'kde' => 'makonde',
+ 'kea' => 'kreolski Wysp Zielonego Przylądka',
+ 'ken' => 'kenyang',
+ 'kfo' => 'koro',
+ 'kg' => 'kongo',
+ 'kgp' => 'kaingang',
+ 'kha' => 'khasi',
+ 'kho' => 'chotański',
+ 'khq' => 'koyra chini',
+ 'khw' => 'khowar',
+ 'ki' => 'kikuju',
+ 'kiu' => 'kirmandżki',
+ 'kj' => 'kwanyama',
+ 'kk' => 'kazachski',
+ 'kkj' => 'kako',
+ 'kl' => 'grenlandzki',
+ 'kln' => 'kalenjin',
+ 'km' => 'khmerski',
+ 'kmb' => 'kimbundu',
+ 'kn' => 'kannada',
+ 'ko' => 'koreański',
+ 'koi' => 'komi-permiacki',
+ 'kok' => 'konkani',
+ 'kos' => 'kosrae',
+ 'kpe' => 'kpelle',
+ 'kr' => 'kanuri',
+ 'krc' => 'karaczajsko-bałkarski',
+ 'kri' => 'krio',
+ 'krj' => 'kinaraya',
+ 'krl' => 'karelski',
+ 'kru' => 'kurukh',
+ 'ks' => 'kaszmirski',
+ 'ksb' => 'sambala',
+ 'ksf' => 'bafia',
+ 'ksh' => 'gwara kolońska',
+ 'ku' => 'kurdyjski',
+ 'kum' => 'kumycki',
+ 'kut' => 'kutenai',
+ 'kv' => 'komi',
+ 'kw' => 'kornijski',
+ 'ky' => 'kirgiski',
+ 'la' => 'łaciński',
+ 'lad' => 'ladyński',
+ 'lag' => 'langi',
+ 'lah' => 'lahnda',
+ 'lam' => 'lamba',
+ 'lb' => 'luksemburski',
+ 'lez' => 'lezgijski',
+ 'lfn' => 'Lingua Franca Nova',
+ 'lg' => 'ganda',
+ 'li' => 'limburgijski',
+ 'lij' => 'liguryjski',
+ 'liv' => 'liwski',
+ 'lkt' => 'lakota',
+ 'lmo' => 'lombardzki',
+ 'ln' => 'lingala',
+ 'lo' => 'laotański',
+ 'lol' => 'mongo',
+ 'loz' => 'lozi',
+ 'lt' => 'litewski',
+ 'ltg' => 'łatgalski',
+ 'lu' => 'luba-katanga',
+ 'lua' => 'luba-lulua',
+ 'lui' => 'luiseno',
+ 'lun' => 'lunda',
+ 'luo' => 'luo',
+ 'lus' => 'lushai',
+ 'luy' => 'luhya',
+ 'lv' => 'łotewski',
+ 'lzh' => 'chiński klasyczny',
+ 'lzz' => 'lazyjski',
+ 'mad' => 'madurajski',
+ 'maf' => 'mafa',
+ 'mag' => 'magahi',
+ 'mai' => 'maithili',
+ 'mak' => 'makasar',
+ 'man' => 'mandingo',
+ 'mas' => 'masajski',
+ 'mde' => 'maba',
+ 'mdf' => 'moksha',
+ 'mdr' => 'mandar',
+ 'men' => 'mende',
+ 'mer' => 'meru',
+ 'mfe' => 'kreolski Mauritiusa',
+ 'mg' => 'malgaski',
+ 'mga' => 'średnioirlandzki',
+ 'mgh' => 'makua',
+ 'mgo' => 'meta',
+ 'mh' => 'marshall',
+ 'mi' => 'maoryjski',
+ 'mic' => 'micmac',
+ 'min' => 'minangkabu',
+ 'mk' => 'macedoński',
+ 'ml' => 'malajalam',
+ 'mn' => 'mongolski',
+ 'mnc' => 'manchu',
+ 'mni' => 'manipuryjski',
+ 'moh' => 'mohawk',
+ 'mos' => 'mossi',
+ 'mr' => 'marathi',
+ 'mrj' => 'zachodniomaryjski',
+ 'ms' => 'malajski',
+ 'mt' => 'maltański',
+ 'mua' => 'mundang',
+ 'mul' => 'wiele języków',
+ 'mus' => 'creek',
+ 'mwl' => 'mirandese',
+ 'mwr' => 'marwari',
+ 'mwv' => 'mentawai',
+ 'my' => 'birmański',
+ 'mye' => 'myene',
+ 'myv' => 'erzya',
+ 'mzn' => 'mazanderański',
+ 'na' => 'nauru',
+ 'nan' => 'minnański',
+ 'nap' => 'neapolitański',
+ 'naq' => 'nama',
+ 'nb' => 'norweski (bokmål)',
+ 'nd' => 'ndebele północny',
+ 'nds' => 'dolnosaksoński',
+ 'ne' => 'nepalski',
+ 'new' => 'newarski',
+ 'ng' => 'ndonga',
+ 'nia' => 'nias',
+ 'niu' => 'niue',
+ 'njo' => 'ao',
+ 'nl' => 'niderlandzki',
+ 'nl-be' => 'flamandzki (Belgia)',
+ 'nmg' => 'ngumba',
+ 'nn' => 'norweski (nynorsk)',
+ 'nnh' => 'ngiemboon',
+ 'no' => 'norweski',
+ 'nog' => 'nogajski',
+ 'non' => 'staronordyjski',
+ 'nov' => 'novial',
+ 'nqo' => 'n’ko',
+ 'nr' => 'ndebele południowy',
+ 'nso' => 'sotho północny',
+ 'nus' => 'nuer',
+ 'nv' => 'nawaho',
+ 'nwc' => 'newarski klasyczny',
+ 'ny' => 'njandża',
+ 'nym' => 'niamwezi',
+ 'nyn' => 'nyankole',
+ 'nyo' => 'nyoro',
+ 'nzi' => 'nzema',
+ 'oc' => 'prowansalski',
+ 'oj' => 'odżibwa',
+ 'om' => 'oromski',
+ 'or' => 'orija',
+ 'os' => 'osetyjski',
+ 'osa' => 'osage',
+ 'ota' => 'osmańsko-turecki',
+ 'pa' => 'pendżabski',
+ 'pag' => 'pangasino',
+ 'pal' => 'pahlavi',
+ 'pam' => 'pampango',
+ 'pap' => 'papiamento',
+ 'pau' => 'palau',
+ 'pcd' => 'pikardyjski',
+ 'pdc' => 'pensylwański',
+ 'pdt' => 'plautdietsch',
+ 'peo' => 'staroperski',
+ 'pfl' => 'palatynacki',
+ 'phn' => 'fenicki',
+ 'pi' => 'palijski',
+ 'pl' => 'polski',
+ 'pms' => 'piemoncki',
+ 'pnt' => 'pontyjski',
+ 'pon' => 'ponpejski',
+ 'prg' => 'pruski',
+ 'pro' => 'staroprowansalski',
+ 'ps' => 'paszto',
+ 'pt' => 'portugalski',
+ 'pt-br' => 'brazylijski portugalski',
+ 'pt-pt' => 'europejski portugalski',
+ 'qu' => 'keczua',
+ 'quc' => 'kicze',
+ 'qug' => 'chimborazo górski keczua',
+ 'raj' => 'radźasthani',
+ 'rap' => 'rapanui',
+ 'rar' => 'rarotonga',
+ 'rgn' => 'romagnol',
+ 'rif' => 'tarifit',
+ 'rm' => 'retoromański',
+ 'rn' => 'rundi',
+ 'ro' => 'rumuński',
+ 'ro-md' => 'mołdawski',
+ 'rof' => 'rombo',
+ 'rom' => 'cygański',
+ 'rtm' => 'rotumański',
+ 'ru' => 'rosyjski',
+ 'rue' => 'rusiński',
+ 'rug' => 'roviana',
+ 'rup' => 'arumuński',
+ 'rw' => 'kinya-ruanda',
+ 'rwk' => 'rwa',
+ 'sa' => 'sanskryt',
+ 'sad' => 'sandawe',
+ 'sah' => 'jakucki',
+ 'sam' => 'samarytański aramejski',
+ 'saq' => 'samburu',
+ 'sas' => 'sasak',
+ 'sat' => 'santali',
+ 'saz' => 'saurasztryjski',
+ 'sba' => 'ngambay',
+ 'sbp' => 'sangu',
+ 'sc' => 'sardyński',
+ 'scn' => 'sycylijski',
+ 'sco' => 'szkocki',
+ 'sd' => 'sindhi',
+ 'sdc' => 'sassarski',
+ 'se' => 'lapoński północny',
+ 'see' => 'seneka',
+ 'seh' => 'sena',
+ 'sei' => 'seri',
+ 'sel' => 'selkupski',
+ 'ses' => 'koyraboro senni',
+ 'sg' => 'sango',
+ 'sga' => 'staroirlandzki',
+ 'sgs' => 'żmudzki',
+ 'sh' => 'serbsko-chorwacki',
+ 'shi' => 'tashelhiyt',
+ 'shn' => 'shan',
+ 'shu' => 'arabski (Czad)',
+ 'si' => 'syngaleski',
+ 'sid' => 'sidamo',
+ 'sk' => 'słowacki',
+ 'sl' => 'słoweński',
+ 'sli' => 'dolnośląski',
+ 'sly' => 'selayar',
+ 'sm' => 'samoański',
+ 'sma' => 'lapoński południowy',
+ 'smj' => 'lapoński Lule',
+ 'smn' => 'lapoński Inari',
+ 'sms' => 'lapoński Skolt',
+ 'sn' => 'szona',
+ 'snk' => 'soninke',
+ 'so' => 'somalijski',
+ 'sog' => 'sogdyjski',
+ 'sq' => 'albański',
+ 'sr' => 'serbski',
+ 'srn' => 'sranan tongo',
+ 'srr' => 'serer',
+ 'ss' => 'siswati',
+ 'ssy' => 'saho',
+ 'st' => 'sotho południowy',
+ 'stq' => 'fryzyjski saterlandzki',
+ 'su' => 'sundajski',
+ 'suk' => 'sukuma',
+ 'sus' => 'susu',
+ 'sux' => 'sumeryjski',
+ 'sv' => 'szwedzki',
+ 'sw' => 'suahili',
+ 'swb' => 'komoryjski',
+ 'swc' => 'kongijski suahili',
+ 'syc' => 'syriacki',
+ 'syr' => 'syryjski',
+ 'szl' => 'śląski',
+ 'ta' => 'tamilski',
+ 'tcy' => 'tulu',
+ 'te' => 'telugu',
+ 'tem' => 'temne',
+ 'teo' => 'ateso',
+ 'ter' => 'tereno',
+ 'tet' => 'tetum',
+ 'tg' => 'tadżycki',
+ 'th' => 'tajski',
+ 'ti' => 'tigrinia',
+ 'tig' => 'tigre',
+ 'tiv' => 'tiw',
+ 'tk' => 'turkmeński',
+ 'tkl' => 'tokelau',
+ 'tkr' => 'cachurski',
+ 'tl' => 'tagalski',
+ 'tlh' => 'klingoński',
+ 'tli' => 'tlingit',
+ 'tly' => 'tałyski',
+ 'tmh' => 'tamaszek',
+ 'tn' => 'setswana',
+ 'to' => 'tonga',
+ 'tog' => 'tonga (Niasa)',
+ 'tpi' => 'tok pisin',
+ 'tr' => 'turecki',
+ 'tru' => 'turoyo',
+ 'trv' => 'taroko',
+ 'ts' => 'tsonga',
+ 'tsd' => 'cakoński',
+ 'tsi' => 'tsimshian',
+ 'tt' => 'tatarski',
+ 'ttt' => 'tacki',
+ 'tum' => 'tumbuka',
+ 'tvl' => 'tuvalu',
+ 'tw' => 'twi',
+ 'twq' => 'tasawaq',
+ 'ty' => 'tahitański',
+ 'tyv' => 'tuwiński',
+ 'tzm' => 'centralnomarokański tamazight',
+ 'udm' => 'udmurcki',
+ 'ug' => 'ujgurski',
+ 'uga' => 'ugarycki',
+ 'uk' => 'ukraiński',
+ 'umb' => 'umbundu',
+ 'und' => 'nieznany język',
+ 'ur' => 'urdu',
+ 'uz' => 'uzbecki',
+ 'vai' => 'wai',
+ 've' => 'venda',
+ 'vec' => 'wenecki',
+ 'vep' => 'wepski',
+ 'vi' => 'wietnamski',
+ 'vls' => 'zachodnioflamandzki',
+ 'vmf' => 'meński frankoński',
+ 'vo' => 'volapuk',
+ 'vot' => 'wotiacki',
+ 'vro' => 'võro',
+ 'vun' => 'vunjo',
+ 'wa' => 'waloński',
+ 'wae' => 'walser',
+ 'wal' => 'walamo',
+ 'war' => 'waraj',
+ 'was' => 'washo',
+ 'wo' => 'wolof',
+ 'wuu' => 'wu',
+ 'xal' => 'kałmucki',
+ 'xh' => 'khosa',
+ 'xmf' => 'megrelski',
+ 'xog' => 'soga',
+ 'yao' => 'yao',
+ 'yap' => 'japski',
+ 'yav' => 'yangben',
+ 'ybb' => 'yemba',
+ 'yi' => 'jidysz',
+ 'yo' => 'joruba',
+ 'yrl' => 'nhengatu',
+ 'yue' => 'kantoński',
+ 'za' => 'czuang',
+ 'zap' => 'zapotecki',
+ 'zbl' => 'bliss',
+ 'zea' => 'zelandzki',
+ 'zen' => 'zenaga',
+ 'zgh' => 'zgh',
+ 'zh' => 'chiński',
+ 'zh-hans' => 'chiński (uproszczony)',
+ 'zh-hant' => 'chiński (tradycyjny)',
+ 'zu' => 'zulu',
+ 'zun' => 'zuni',
+ 'zxx' => 'brak treści o charakterze językowym',
+ 'zza' => 'zazaki',
+);
+
+$currencyNames = array(
+ 'ADP' => 'peseta andorska',
+ 'AED' => 'dirham arabski',
+ 'AFA' => 'afgani (1927–2002)',
+ 'AFN' => 'afgani',
+ 'ALL' => 'lek albański',
+ 'AMD' => 'dram armeński',
+ 'ANG' => 'gulden antylski',
+ 'AOA' => 'kwanza angolańska',
+ 'AOK' => 'kwanza angolańska (1977–1990)',
+ 'AON' => 'nowa kwanza angolańska (1990–2000)',
+ 'AOR' => 'kwanza angolańska Reajustado (1995–1999)',
+ 'ARA' => 'austral argentyński',
+ 'ARP' => 'peso argentyńskie (1983–1985)',
+ 'ARS' => 'peso argentyńskie',
+ 'ATS' => 'szyling austriacki',
+ 'AUD' => 'dolar australijski',
+ 'AWG' => 'florin arubański',
+ 'AZM' => 'manat azerbejdżański',
+ 'AZN' => 'manat azerski',
+ 'BAD' => 'dinar Bośni i Hercegowiny',
+ 'BAM' => 'marka zamienna Bośni i Hercegowiny',
+ 'BBD' => 'dolar Barbadosu',
+ 'BDT' => 'taka bengalska',
+ 'BEC' => 'frank belgijski (zamienny)',
+ 'BEF' => 'frank belgijski',
+ 'BEL' => 'frank belgijski (finansowy)',
+ 'BGL' => 'lew bułgarski wymienny',
+ 'BGM' => 'lew bułgarski socjalistyczny',
+ 'BGN' => 'lew bułgarski',
+ 'BGO' => 'lew bułgarski (1879–1952)',
+ 'BHD' => 'dinar bahrański',
+ 'BIF' => 'frank burundyjski',
+ 'BMD' => 'dolar bermudzki',
+ 'BND' => 'dolar brunejski',
+ 'BOB' => 'boliviano',
+ 'BOP' => 'peso boliwijskie',
+ 'BOV' => 'mvdol boliwijski',
+ 'BRB' => 'cruzeiro novo brazylijskie (1967–1986)',
+ 'BRC' => 'cruzado brazylijskie',
+ 'BRE' => 'cruzeiro brazylijskie (1990–1993)',
+ 'BRL' => 'real brazylijski',
+ 'BRN' => 'nowe cruzado brazylijskie',
+ 'BRR' => 'cruzeiro brazylijskie',
+ 'BSD' => 'dolar bahamski',
+ 'BTN' => 'ngultrum bhutański',
+ 'BUK' => 'kyat birmański',
+ 'BWP' => 'pula botswańska',
+ 'BYB' => 'rubel białoruski (1994–1999)',
+ 'BYR' => 'rubel białoruski',
+ 'BZD' => 'dolar belizeński',
+ 'CAD' => 'dolar kanadyjski',
+ 'CDF' => 'frank kongijski',
+ 'CHF' => 'frank szwajcarski',
+ 'CLP' => 'peso chilijskie',
+ 'CNY' => 'juan chiński',
+ 'COP' => 'peso kolumbijskie',
+ 'CRC' => 'colon kostarykański',
+ 'CSD' => 'stary dinar serbski',
+ 'CSK' => 'korona czechosłowacka',
+ 'CUC' => 'peso kubańskie wymienialne',
+ 'CUP' => 'peso kubańskie',
+ 'CVE' => 'escudo zielonoprzylądkowe',
+ 'CYP' => 'funt cypryjski',
+ 'CZK' => 'korona czeska',
+ 'DDM' => 'wschodnia marka wschodnioniemiecka',
+ 'DEM' => 'marka niemiecka',
+ 'DJF' => 'frank dżibutyjski',
+ 'DKK' => 'korona duńska',
+ 'DOP' => 'peso dominikańskie',
+ 'DZD' => 'dinar algierski',
+ 'ECS' => 'sucre ekwadorski',
+ 'EEK' => 'korona estońska',
+ 'EGP' => 'funt egipski',
+ 'ERN' => 'nakfa erytrejska',
+ 'ESA' => 'peseta hiszpańska (Konto A)',
+ 'ESB' => 'peseta hiszpańska (konto wymienne)',
+ 'ESP' => 'peseta hiszpańska',
+ 'ETB' => 'birr etiopski',
+ 'EUR' => 'euro',
+ 'FIM' => 'marka fińska',
+ 'FJD' => 'dolar fidżi',
+ 'FKP' => 'funt falklandzki',
+ 'FRF' => 'frank francuski',
+ 'GBP' => 'funt szterling',
+ 'GEK' => 'kupon gruziński larit',
+ 'GEL' => 'lari gruzińskie',
+ 'GHC' => 'cedi ghańskie (1979–2007)',
+ 'GHS' => 'cedi ghański',
+ 'GIP' => 'funt gibraltarski',
+ 'GMD' => 'dalasi gambijskie',
+ 'GNF' => 'frank gwinejski',
+ 'GNS' => 'syli gwinejskie',
+ 'GQE' => 'ekwele gwinejskie Gwinei Równikowej',
+ 'GRD' => 'drachma grecka',
+ 'GTQ' => 'quetzal gwatemalski',
+ 'GWE' => 'escudo Gwinea Portugalska',
+ 'GWP' => 'peso Guinea-Bissau',
+ 'GYD' => 'dolar gujański',
+ 'HKD' => 'dolar hongkoński',
+ 'HNL' => 'lempira honduraska',
+ 'HRD' => 'dinar chorwacki',
+ 'HRK' => 'kuna chorwacka',
+ 'HTG' => 'gourde haitańskie',
+ 'HUF' => 'forint węgierski',
+ 'IDR' => 'rupia indonezyjska',
+ 'IEP' => 'funt irlandzki',
+ 'ILP' => 'funt izraelski',
+ 'ILS' => 'nowy szekel izraelski',
+ 'INR' => 'rupia indyjska',
+ 'IQD' => 'dinar iracki',
+ 'IRR' => 'rial irański',
+ 'ISK' => 'korona islandzka',
+ 'ITL' => 'lir włoski',
+ 'JMD' => 'dolar jamajski',
+ 'JOD' => 'dinar jordański',
+ 'JPY' => 'jen japoński',
+ 'KES' => 'szyling kenijski',
+ 'KGS' => 'som kirgiski',
+ 'KHR' => 'riel kambodżański',
+ 'KMF' => 'frank komoryjski',
+ 'KPW' => 'won północnokoreański',
+ 'KRW' => 'won południowokoreański',
+ 'KWD' => 'dinar kuwejcki',
+ 'KYD' => 'dolar kajmański',
+ 'KZT' => 'tenge kazachskie',
+ 'LAK' => 'kip laotański',
+ 'LBP' => 'funt libański',
+ 'LKR' => 'rupia lankijska',
+ 'LRD' => 'dolar liberyjski',
+ 'LSL' => 'loti Lesoto',
+ 'LTL' => 'lit litewski',
+ 'LTT' => 'talon litewski',
+ 'LUF' => 'frank luksemburski',
+ 'LVL' => 'łat łotewski',
+ 'LVR' => 'rubel łotewski',
+ 'LYD' => 'dinar libijski',
+ 'MAD' => 'dirham marokański',
+ 'MAF' => 'frank marokański',
+ 'MDL' => 'lej mołdawski',
+ 'MGA' => 'ariary malgaski',
+ 'MGF' => 'frank malgaski',
+ 'MKD' => 'denar macedoński',
+ 'MLF' => 'frank malijski',
+ 'MMK' => 'kiat birmański',
+ 'MNT' => 'tugrik mongolski',
+ 'MOP' => 'pataca Makau',
+ 'MRO' => 'ouguiya mauretańska',
+ 'MTL' => 'lira maltańska',
+ 'MTP' => 'funt maltański',
+ 'MUR' => 'rupia maurytyjska',
+ 'MVR' => 'rupia malediwska',
+ 'MWK' => 'kwacha malawska',
+ 'MXN' => 'peso meksykańskie',
+ 'MXP' => 'peso srebrne meksykańskie (1861–1992)',
+ 'MYR' => 'ringgit malezyjski',
+ 'MZE' => 'escudo mozambickie',
+ 'MZM' => 'metical Mozambik',
+ 'MZN' => 'metical mozambicki',
+ 'NAD' => 'dolar namibijski',
+ 'NGN' => 'naira nigeryjska',
+ 'NIC' => 'cordoba nikaraguańska (1988–1991)',
+ 'NIO' => 'cordoba nikaraguańska',
+ 'NLG' => 'gulden holenderski',
+ 'NOK' => 'korona norweska',
+ 'NPR' => 'rupia nepalska',
+ 'NZD' => 'dolar nowozelandzki',
+ 'OMR' => 'rial omański',
+ 'PAB' => 'balboa panamski',
+ 'PEI' => 'inti peruwiański',
+ 'PEN' => 'nowy sol peruwiański',
+ 'PES' => 'sol peruwiański',
+ 'PGK' => 'kina Papua Nowa Gwinea',
+ 'PHP' => 'peso filipińskie',
+ 'PKR' => 'rupia pakistańska',
+ 'PLN' => 'złoty polski',
+ 'PLZ' => 'złoty polski (1950–1995)',
+ 'PTE' => 'escudo portugalskie',
+ 'PYG' => 'guarani paragwajskie',
+ 'QAR' => 'rial katarski',
+ 'RHD' => 'dolar rodezyjski',
+ 'ROL' => 'lej rumuński (1952–2006)',
+ 'RON' => 'lej rumuński',
+ 'RSD' => 'dinar serbski',
+ 'RUB' => 'rubel rosyjski',
+ 'RUR' => 'rubel rosyjski (1991–1998)',
+ 'RWF' => 'frank ruandyjski',
+ 'SAR' => 'rial saudyjski',
+ 'SBD' => 'dolar Wysp Salomona',
+ 'SCR' => 'rupia seszelska',
+ 'SDD' => 'dinar sudański',
+ 'SDG' => 'funt sudański',
+ 'SDP' => 'funt sudański (1957–1998)',
+ 'SEK' => 'korona szwedzka',
+ 'SGD' => 'dolar singapurski',
+ 'SHP' => 'funt Wyspy Świętej Heleny',
+ 'SIT' => 'tolar słoweński',
+ 'SKK' => 'korona słowacka',
+ 'SLL' => 'leone sierraleoński',
+ 'SOS' => 'szyling somalijski',
+ 'SRD' => 'dolar surinamski',
+ 'SRG' => 'gulden surinamski',
+ 'SSP' => 'funt południowosudański',
+ 'STD' => 'dobra Wysp Świętego Tomasza i Książęcej',
+ 'SUR' => 'rubel radziecki',
+ 'SVC' => 'colon salwadorski',
+ 'SYP' => 'funt syryjski',
+ 'SZL' => 'lilangeni Suazi',
+ 'THB' => 'baht tajski',
+ 'TJR' => 'rubel tadżycki',
+ 'TJS' => 'somoni tadżyckie',
+ 'TMM' => 'manat turkmeński (1993–2009)',
+ 'TMT' => 'manat turkmeński',
+ 'TND' => 'dinar tunezyjski',
+ 'TOP' => 'pa’anga tongijska',
+ 'TPE' => 'escudo timorskie',
+ 'TRL' => 'lira turecka (1922–2005)',
+ 'TRY' => 'lira turecka',
+ 'TTD' => 'dolar Trynidadu i Tobago',
+ 'TWD' => 'nowy dolar tajwański',
+ 'TZS' => 'szyling tanzański',
+ 'UAH' => 'hrywna ukraińska',
+ 'UAK' => 'karbowaniec ukraiński',
+ 'UGS' => 'szyling ugandyjski (1966–1987)',
+ 'UGX' => 'szyling ugandyjski',
+ 'USD' => 'dolar amerykański',
+ 'UYP' => 'peso urugwajskie (1975–1993)',
+ 'UYU' => 'peso urugwajskie',
+ 'UZS' => 'som uzbecki',
+ 'VEB' => 'boliwar wenezuelski (1871–2008)',
+ 'VEF' => 'boliwar wenezuelski',
+ 'VND' => 'dong wietnamski',
+ 'VUV' => 'vatu Vanuatu',
+ 'WST' => 'tala samoańska',
+ 'XAF' => 'frank CFA BEAC',
+ 'XAG' => 'srebro',
+ 'XAU' => 'złoto',
+ 'XBA' => 'jednostka emisji euroobligacji',
+ 'XBB' => 'europejska jednostka monetarna',
+ 'XBC' => 'europejska jednostka rozrachunkowa (XBC)',
+ 'XBD' => 'europejska jednostka rozrachunkowa (XBD)',
+ 'XCD' => 'dolar wschodniokaraibski',
+ 'XDR' => 'specjalne prawa ciągnienia',
+ 'XEU' => 'ECU',
+ 'XFO' => 'frank złoty francuski',
+ 'XFU' => 'UIC-frank francuski',
+ 'XOF' => 'frank CFA',
+ 'XPD' => 'pallad',
+ 'XPF' => 'frank CFP',
+ 'XPT' => 'platyna',
+ 'XTS' => 'testowy kod waluty',
+ 'XXX' => 'nieznana waluta',
+ 'YDD' => 'dinar jemeński',
+ 'YER' => 'rial jemeński',
+ 'YUM' => 'nowy dinar jugosławiański',
+ 'YUN' => 'dinar jugosławiański wymienny',
+ 'ZAL' => 'rand południowoafrykański (finansowy)',
+ 'ZAR' => 'rand południowoafrykański',
+ 'ZMK' => 'kwacha zambijska (1968–2012)',
+ 'ZMW' => 'kwacha zambijska',
+ 'ZRN' => 'nowy zair zairski',
+ 'ZRZ' => 'zair zairski',
+ 'ZWD' => 'dolar Zimbabwe (1980–2008)',
+ 'ZWL' => 'dolar Zimbabwe (2009)',
+ 'ZWR' => 'dolar Zimbabwe (2008)',
+);
+
+$currencySymbols = array(
+ 'AED' => 'AED',
+ 'AFN' => 'AFN',
+ 'ALL' => 'ALL',
+ 'AMD' => 'AMD',
+ 'ANG' => 'ANG',
+ 'AOA' => 'AOA',
+ 'ARS' => 'ARS',
+ 'AUD' => 'AUD',
+ 'AWG' => 'AWG',
+ 'AZN' => 'AZN',
+ 'BAM' => 'BAM',
+ 'BBD' => 'BBD',
+ 'BDT' => 'BDT',
+ 'BGN' => 'BGN',
+ 'BHD' => 'BHD',
+ 'BIF' => 'BIF',
+ 'BMD' => 'BMD',
+ 'BND' => 'BND',
+ 'BOB' => 'BOB',
+ 'BRL' => 'R$',
+ 'BSD' => 'BSD',
+ 'BTN' => 'BTN',
+ 'BWP' => 'BWP',
+ 'BYR' => 'BYR',
+ 'BZD' => 'BZD',
+ 'CAD' => 'CAD',
+ 'CDF' => 'CDF',
+ 'CHF' => 'CHF',
+ 'CLP' => 'CLP',
+ 'CNY' => 'CNY',
+ 'COP' => 'COP',
+ 'CRC' => 'CRC',
+ 'CUC' => 'CUC',
+ 'CUP' => 'CUP',
+ 'CVE' => 'CVE',
+ 'CZK' => 'CZK',
+ 'DJF' => 'DJF',
+ 'DKK' => 'DKK',
+ 'DOP' => 'DOP',
+ 'DZD' => 'DZD',
+ 'EGP' => 'EGP',
+ 'ERN' => 'ERN',
+ 'ETB' => 'ETB',
+ 'EUR' => '€',
+ 'FJD' => 'FJD',
+ 'FKP' => 'FKP',
+ 'GBP' => 'GBP',
+ 'GEL' => 'GEL',
+ 'GHS' => 'GHS',
+ 'GIP' => 'GIP',
+ 'GMD' => 'GMD',
+ 'GNF' => 'GNF',
+ 'GTQ' => 'GTQ',
+ 'GYD' => 'GYD',
+ 'HKD' => 'HKD',
+ 'HNL' => 'HNL',
+ 'HRK' => 'HRK',
+ 'HTG' => 'HTG',
+ 'HUF' => 'HUF',
+ 'IDR' => 'IDR',
+ 'ILS' => 'ILS',
+ 'INR' => 'INR',
+ 'IQD' => 'IQD',
+ 'IRR' => 'IRR',
+ 'ISK' => 'ISK',
+ 'JMD' => 'JMD',
+ 'JOD' => 'JOD',
+ 'JPY' => 'JPY',
+ 'KES' => 'KES',
+ 'KGS' => 'KGS',
+ 'KHR' => 'KHR',
+ 'KMF' => 'KMF',
+ 'KPW' => 'KPW',
+ 'KRW' => 'KRW',
+ 'KWD' => 'KWD',
+ 'KYD' => 'KYD',
+ 'KZT' => 'KZT',
+ 'LAK' => 'LAK',
+ 'LBP' => 'LBP',
+ 'LKR' => 'LKR',
+ 'LRD' => 'LRD',
+ 'LTL' => 'LTL',
+ 'LVL' => 'LVL',
+ 'LYD' => 'LYD',
+ 'MAD' => 'MAD',
+ 'MDL' => 'MDL',
+ 'MGA' => 'MGA',
+ 'MKD' => 'MKD',
+ 'MMK' => 'MMK',
+ 'MNT' => 'MNT',
+ 'MOP' => 'MOP',
+ 'MRO' => 'MRO',
+ 'MUR' => 'MUR',
+ 'MVR' => 'MVR',
+ 'MWK' => 'MWK',
+ 'MXN' => 'MXN',
+ 'MYR' => 'MYR',
+ 'MZN' => 'MZN',
+ 'NAD' => 'NAD',
+ 'NGN' => 'NGN',
+ 'NIO' => 'NIO',
+ 'NOK' => 'NOK',
+ 'NPR' => 'NPR',
+ 'NZD' => 'NZD',
+ 'OMR' => 'OMR',
+ 'PAB' => 'PAB',
+ 'PEN' => 'PEN',
+ 'PGK' => 'PGK',
+ 'PHP' => 'PHP',
+ 'PKR' => 'PKR',
+ 'PLN' => 'zł',
+ 'PYG' => 'PYG',
+ 'QAR' => 'QAR',
+ 'RON' => 'RON',
+ 'RSD' => 'RSD',
+ 'RUB' => 'RUB',
+ 'RWF' => 'RWF',
+ 'SAR' => 'SAR',
+ 'SBD' => 'SBD',
+ 'SCR' => 'SCR',
+ 'SDG' => 'SDG',
+ 'SEK' => 'SEK',
+ 'SGD' => 'SGD',
+ 'SHP' => 'SHP',
+ 'SLL' => 'SLL',
+ 'SOS' => 'SOS',
+ 'SRD' => 'SRD',
+ 'SSP' => 'SSP',
+ 'STD' => 'STD',
+ 'SYP' => 'SYP',
+ 'SZL' => 'SZL',
+ 'THB' => 'THB',
+ 'TJS' => 'TJS',
+ 'TMT' => 'TMT',
+ 'TND' => 'TND',
+ 'TOP' => 'TOP',
+ 'TRY' => 'TRY',
+ 'TTD' => 'TTD',
+ 'TWD' => 'TWD',
+ 'TZS' => 'TZS',
+ 'UAH' => 'UAH',
+ 'UGX' => 'UGX',
+ 'USD' => 'USD',
+ 'UYU' => 'UYU',
+ 'UZS' => 'UZS',
+ 'VEF' => 'VEF',
+ 'VND' => 'VND',
+ 'VUV' => 'VUV',
+ 'WST' => 'WST',
+ 'XAF' => 'FCFA',
+ 'XCD' => 'EC$',
+ 'XOF' => 'CFA',
+ 'XPF' => 'CFPF',
+ 'YER' => 'YER',
+ 'ZAR' => 'ZAR',
+ 'ZMW' => 'ZMW',
+);
+
+$countryNames = array(
+ 'AC' => 'Wyspa Wniebowstąpienia',
+ 'AD' => 'Andora',
+ 'AE' => 'Zjednoczone Emiraty Arabskie',
+ 'AF' => 'Afganistan',
+ 'AG' => 'Antigua i Barbuda',
+ 'AI' => 'Anguilla',
+ 'AL' => 'Albania',
+ 'AM' => 'Armenia',
+ 'AN' => 'Antyle Holenderskie',
+ 'AO' => 'Angola',
+ 'AQ' => 'Antarktyka',
+ 'AR' => 'Argentyna',
+ 'AS' => 'Samoa Amerykańskie',
+ 'AT' => 'Austria',
+ 'AU' => 'Australia',
+ 'AW' => 'Aruba',
+ 'AX' => 'Wyspy Alandzkie',
+ 'AZ' => 'Azerbejdżan',
+ 'BA' => 'Bośnia i Hercegowina',
+ 'BB' => 'Barbados',
+ 'BD' => 'Bangladesz',
+ 'BE' => 'Belgia',
+ 'BF' => 'Burkina Faso',
+ 'BG' => 'Bułgaria',
+ 'BH' => 'Bahrajn',
+ 'BI' => 'Burundi',
+ 'BJ' => 'Benin',
+ 'BL' => 'Saint-Barthélemy',
+ 'BM' => 'Bermudy',
+ 'BN' => 'Brunei Darussalam',
+ 'BO' => 'Boliwia',
+ 'BQ' => 'Niderlandy Karaibskie',
+ 'BR' => 'Brazylia',
+ 'BS' => 'Bahamy',
+ 'BT' => 'Bhutan',
+ 'BV' => 'Wyspa Bouveta',
+ 'BW' => 'Botswana',
+ 'BY' => 'Białoruś',
+ 'BZ' => 'Belize',
+ 'CA' => 'Kanada',
+ 'CC' => 'Wyspy Kokosowe',
+ 'CD' => 'Demokratyczna Republika Konga',
+ 'CF' => 'Republika Środkowoafrykańska',
+ 'CG' => 'Kongo',
+ 'CH' => 'Szwajcaria',
+ 'CI' => 'Côte d’Ivoire',
+ 'CK' => 'Wyspy Cooka',
+ 'CL' => 'Chile',
+ 'CM' => 'Kamerun',
+ 'CN' => 'Chiny',
+ 'CO' => 'Kolumbia',
+ 'CP' => 'Clipperton',
+ 'CR' => 'Kostaryka',
+ 'CU' => 'Kuba',
+ 'CV' => 'Republika Zielonego Przylądka',
+ 'CW' => 'Curaçao',
+ 'CX' => 'Wyspa Bożego Narodzenia',
+ 'CY' => 'Cypr',
+ 'CZ' => 'Czechy',
+ 'DE' => 'Niemcy',
+ 'DG' => 'Diego Garcia',
+ 'DJ' => 'Dżibuti',
+ 'DK' => 'Dania',
+ 'DM' => 'Dominika',
+ 'DO' => 'Dominikana',
+ 'DZ' => 'Algieria',
+ 'EA' => 'Ceuta i Melilla',
+ 'EC' => 'Ekwador',
+ 'EE' => 'Estonia',
+ 'EG' => 'Egipt',
+ 'EH' => 'Sahara Zachodnia',
+ 'ER' => 'Erytrea',
+ 'ES' => 'Hiszpania',
+ 'ET' => 'Etiopia',
+ 'EU' => 'Unia Europejska',
+ 'FI' => 'Finlandia',
+ 'FJ' => 'Fidżi',
+ 'FK' => 'Falklandy',
+ 'FM' => 'Mikronezja',
+ 'FO' => 'Wyspy Owcze',
+ 'FR' => 'Francja',
+ 'GA' => 'Gabon',
+ 'GB' => 'GB',
+ 'GD' => 'Grenada',
+ 'GE' => 'Gruzja',
+ 'GF' => 'Gujana Francuska',
+ 'GG' => 'Wyspa Guernsey',
+ 'GH' => 'Ghana',
+ 'GI' => 'Gibraltar',
+ 'GL' => 'Grenlandia',
+ 'GM' => 'Gambia',
+ 'GN' => 'Gwinea',
+ 'GP' => 'Gwadelupa',
+ 'GQ' => 'Gwinea Równikowa',
+ 'GR' => 'Grecja',
+ 'GS' => 'Georgia Południowa i Sandwich Południowy',
+ 'GT' => 'Gwatemala',
+ 'GU' => 'Guam',
+ 'GW' => 'Gwinea Bissau',
+ 'GY' => 'Gujana',
+ 'HK' => 'Hongkong',
+ 'HM' => 'Wyspy Heard i McDonalda',
+ 'HN' => 'Honduras',
+ 'HR' => 'Chorwacja',
+ 'HT' => 'Haiti',
+ 'HU' => 'Węgry',
+ 'IC' => 'Wyspy Kanaryjskie',
+ 'ID' => 'Indonezja',
+ 'IE' => 'Irlandia',
+ 'IL' => 'Izrael',
+ 'IM' => 'Wyspa Man',
+ 'IN' => 'Indie',
+ 'IO' => 'Brytyjskie Terytorium Oceanu Indyjskiego',
+ 'IQ' => 'Irak',
+ 'IR' => 'Iran',
+ 'IS' => 'Islandia',
+ 'IT' => 'Włochy',
+ 'JE' => 'Wyspa Jersey',
+ 'JM' => 'Jamajka',
+ 'JO' => 'Jordania',
+ 'JP' => 'Japonia',
+ 'KE' => 'Kenia',
+ 'KG' => 'Kirgistan',
+ 'KH' => 'Kambodża',
+ 'KI' => 'Kiribati',
+ 'KM' => 'Komory',
+ 'KN' => 'Saint Kitts i Nevis',
+ 'KP' => 'Korea Północna',
+ 'KR' => 'Korea Południowa',
+ 'KW' => 'Kuwejt',
+ 'KY' => 'Kajmany',
+ 'KZ' => 'Kazachstan',
+ 'LA' => 'Laos',
+ 'LB' => 'Liban',
+ 'LC' => 'Saint Lucia',
+ 'LI' => 'Liechtenstein',
+ 'LK' => 'Sri Lanka',
+ 'LR' => 'Liberia',
+ 'LS' => 'Lesotho',
+ 'LT' => 'Litwa',
+ 'LU' => 'Luksemburg',
+ 'LV' => 'Łotwa',
+ 'LY' => 'Libia',
+ 'MA' => 'Maroko',
+ 'MC' => 'Monako',
+ 'MD' => 'Mołdawia',
+ 'ME' => 'Czarnogóra',
+ 'MF' => 'Saint-Martin',
+ 'MG' => 'Madagaskar',
+ 'MH' => 'Wyspy Marshalla',
+ 'MK' => 'Macedonia',
+ 'ML' => 'Mali',
+ 'MM' => 'Mjanma (Birma)',
+ 'MN' => 'Mongolia',
+ 'MO' => 'Makau',
+ 'MP' => 'Mariany Północne',
+ 'MQ' => 'Martynika',
+ 'MR' => 'Mauretania',
+ 'MS' => 'Montserrat',
+ 'MT' => 'Malta',
+ 'MU' => 'Mauritius',
+ 'MV' => 'Malediwy',
+ 'MW' => 'Malawi',
+ 'MX' => 'Meksyk',
+ 'MY' => 'Malezja',
+ 'MZ' => 'Mozambik',
+ 'NA' => 'Namibia',
+ 'NC' => 'Nowa Kaledonia',
+ 'NE' => 'Niger',
+ 'NF' => 'Norfolk',
+ 'NG' => 'Nigeria',
+ 'NI' => 'Nikaragua',
+ 'NL' => 'Holandia',
+ 'NO' => 'Norwegia',
+ 'NP' => 'Nepal',
+ 'NR' => 'Nauru',
+ 'NU' => 'Niue',
+ 'NZ' => 'Nowa Zelandia',
+ 'OM' => 'Oman',
+ 'PA' => 'Panama',
+ 'PE' => 'Peru',
+ 'PF' => 'Polinezja Francuska',
+ 'PG' => 'Papua-Nowa Gwinea',
+ 'PH' => 'Filipiny',
+ 'PK' => 'Pakistan',
+ 'PL' => 'Polska',
+ 'PM' => 'Saint-Pierre i Miquelon',
+ 'PN' => 'Pitcairn',
+ 'PR' => 'Portoryko',
+ 'PS' => 'Palestyna',
+ 'PT' => 'Portugalia',
+ 'PW' => 'Palau',
+ 'PY' => 'Paragwaj',
+ 'QA' => 'Katar',
+ 'QO' => 'Oceania inne',
+ 'RE' => 'Reunion',
+ 'RO' => 'Rumunia',
+ 'RS' => 'Serbia',
+ 'RU' => 'Rosja',
+ 'RW' => 'Rwanda',
+ 'SA' => 'Arabia Saudyjska',
+ 'SB' => 'Wyspy Salomona',
+ 'SC' => 'Seszele',
+ 'SD' => 'Sudan',
+ 'SE' => 'Szwecja',
+ 'SG' => 'Singapur',
+ 'SH' => 'Wyspa Świętej Heleny',
+ 'SI' => 'Słowenia',
+ 'SJ' => 'Svalbard i Jan Mayen',
+ 'SK' => 'Słowacja',
+ 'SL' => 'Sierra Leone',
+ 'SM' => 'San Marino',
+ 'SN' => 'Senegal',
+ 'SO' => 'Somalia',
+ 'SR' => 'Surinam',
+ 'SS' => 'Sudan Południowy',
+ 'ST' => 'Wyspy Świętego Tomasza i Książęca',
+ 'SV' => 'Salwador',
+ 'SX' => 'Sint Maarten',
+ 'SY' => 'Syria',
+ 'SZ' => 'Suazi',
+ 'TA' => 'Tristan da Cunha',
+ 'TC' => 'Turks i Caicos',
+ 'TD' => 'Czad',
+ 'TF' => 'Francuskie Terytoria Południowe',
+ 'TG' => 'Togo',
+ 'TH' => 'Tajlandia',
+ 'TJ' => 'Tadżykistan',
+ 'TK' => 'Tokelau',
+ 'TL' => 'Timor Wschodni',
+ 'TM' => 'Turkmenistan',
+ 'TN' => 'Tunezja',
+ 'TO' => 'Tonga',
+ 'TR' => 'Turcja',
+ 'TT' => 'Trynidad i Tobago',
+ 'TV' => 'Tuvalu',
+ 'TW' => 'Tajwan',
+ 'TZ' => 'Tanzania',
+ 'UA' => 'Ukraina',
+ 'UG' => 'Uganda',
+ 'UM' => 'Dalekie Wyspy Mniejsze Stanów Zjednoczonych',
+ 'US' => 'USA',
+ 'UY' => 'Urugwaj',
+ 'UZ' => 'Uzbekistan',
+ 'VA' => 'Watykan',
+ 'VC' => 'Saint Vincent i Grenadyny',
+ 'VE' => 'Wenezuela',
+ 'VG' => 'Brytyjskie Wyspy Dziewicze',
+ 'VI' => 'Wyspy Dziewicze Stanów Zjednoczonych',
+ 'VN' => 'Wietnam',
+ 'VU' => 'Vanuatu',
+ 'WF' => 'Wallis i Futuna',
+ 'WS' => 'Samoa',
+ 'XK' => 'Kosowo',
+ 'YE' => 'Jemen',
+ 'YT' => 'Majotta',
+ 'ZA' => 'Republika Południowej Afryki',
+ 'ZM' => 'Zambia',
+ 'ZW' => 'Zimbabwe',
+);
+
+$timeUnits = array(
+ 'day-few' => '{0} dni',
+ 'day-future-few' => 'za {0} dni',
+ 'day-future-many' => 'za {0} dni',
+ 'day-future-one' => 'za {0} dzień',
+ 'day-future-other' => 'za {0} dnia',
+ 'day-many' => '{0} dni',
+ 'day-narrow-future-few' => 'za {0} dni',
+ 'day-narrow-future-many' => 'za {0} dni',
+ 'day-narrow-future-one' => 'za {0} dzień',
+ 'day-narrow-future-other' => 'za {0} dnia',
+ 'day-narrow-past-few' => '{0} dni temu',
+ 'day-narrow-past-many' => '{0} dni temu',
+ 'day-narrow-past-one' => '{0} dzień temu',
+ 'day-narrow-past-other' => '{0} dnia temu',
+ 'day-one' => '{0} dzień',
+ 'day-other' => '{0} dnia',
+ 'day-past-few' => '{0} dni temu',
+ 'day-past-many' => '{0} dni temu',
+ 'day-past-one' => '{0} dzień temu',
+ 'day-past-other' => '{0} dnia temu',
+ 'day-short-future-few' => 'za {0} dni',
+ 'day-short-future-many' => 'za {0} dni',
+ 'day-short-future-one' => 'za {0} dzień',
+ 'day-short-future-other' => 'za {0} dnia',
+ 'day-short-past-few' => '{0} dni temu',
+ 'day-short-past-many' => '{0} dni temu',
+ 'day-short-past-one' => '{0} dzień temu',
+ 'day-short-past-other' => '{0} dnia temu',
+ 'hour-few' => '{0} godziny',
+ 'hour-future-few' => 'za {0} godziny',
+ 'hour-future-many' => 'za {0} godzin',
+ 'hour-future-one' => 'za {0} godzinę',
+ 'hour-future-other' => 'za {0} godziny',
+ 'hour-many' => '{0} godzin',
+ 'hour-narrow-future-few' => 'za {0} g.',
+ 'hour-narrow-future-many' => 'za {0} g.',
+ 'hour-narrow-future-one' => 'za {0} g.',
+ 'hour-narrow-future-other' => 'za {0} g.',
+ 'hour-narrow-past-few' => '{0} g. temu',
+ 'hour-narrow-past-many' => '{0} g. temu',
+ 'hour-narrow-past-one' => '{0} g. temu',
+ 'hour-narrow-past-other' => '{0} g. temu',
+ 'hour-one' => '{0} godzina',
+ 'hour-other' => '{0} godzin',
+ 'hour-past-few' => '{0} godziny temu',
+ 'hour-past-many' => '{0} godzin temu',
+ 'hour-past-one' => '{0} godzinę temu',
+ 'hour-past-other' => '{0} godziny temu',
+ 'hour-short-future-few' => 'za {0} godz.',
+ 'hour-short-future-many' => 'za {0} godz.',
+ 'hour-short-future-one' => 'za {0} godz.',
+ 'hour-short-future-other' => 'za {0} godz.',
+ 'hour-short-past-few' => '{0} godz. temu',
+ 'hour-short-past-many' => '{0} godz. temu',
+ 'hour-short-past-one' => '{0} godz. temu',
+ 'hour-short-past-other' => '{0} godz. temu',
+ 'microsecond-few' => '{0} mikrosekundy',
+ 'microsecond-many' => '{0} mikrosekund',
+ 'microsecond-one' => '{0} mikrosekunda',
+ 'microsecond-other' => '{0} mikrosekundy',
+ 'millisecond-few' => '{0} milisekundy',
+ 'millisecond-many' => '{0} milisekund',
+ 'millisecond-one' => '{0} milisekunda',
+ 'millisecond-other' => '{0} milisekundy',
+ 'minute-few' => '{0} minuty',
+ 'minute-future-few' => 'za {0} minuty',
+ 'minute-future-many' => 'za {0} minut',
+ 'minute-future-one' => 'za {0} minutę',
+ 'minute-future-other' => 'za {0} minuty',
+ 'minute-many' => '{0} minut',
+ 'minute-narrow-future-few' => 'za {0} min',
+ 'minute-narrow-future-many' => 'za {0} min',
+ 'minute-narrow-future-one' => 'za {0} min',
+ 'minute-narrow-future-other' => 'za {0} min',
+ 'minute-narrow-past-few' => '{0} min temu',
+ 'minute-narrow-past-many' => '{0} min temu',
+ 'minute-narrow-past-one' => '{0} min temu',
+ 'minute-narrow-past-other' => '{0} min temu',
+ 'minute-one' => '{0} minuta',
+ 'minute-other' => '{0} minuty',
+ 'minute-past-few' => '{0} minuty temu',
+ 'minute-past-many' => '{0} minut temu',
+ 'minute-past-one' => '{0} minutę temu',
+ 'minute-past-other' => '{0} minuty temu',
+ 'minute-short-future-few' => 'za {0} min',
+ 'minute-short-future-many' => 'za {0} min',
+ 'minute-short-future-one' => 'za {0} min',
+ 'minute-short-future-other' => 'za {0} min',
+ 'minute-short-past-few' => '{0} min temu',
+ 'minute-short-past-many' => '{0} min temu',
+ 'minute-short-past-one' => '{0} min temu',
+ 'minute-short-past-other' => '{0} min temu',
+ 'month-few' => '{0} miesiące',
+ 'month-future-few' => 'za {0} miesiące',
+ 'month-future-many' => 'za {0} miesięcy',
+ 'month-future-one' => 'za {0} miesiąc',
+ 'month-future-other' => 'za {0} miesiąca',
+ 'month-many' => '{0} miesięcy',
+ 'month-narrow-future-few' => '+{0} mies.',
+ 'month-narrow-future-many' => '+{0} mies.',
+ 'month-narrow-future-one' => '+{0} mies.',
+ 'month-narrow-future-other' => '+{0} mies.',
+ 'month-narrow-past-few' => '–{0} mies.',
+ 'month-narrow-past-many' => '–{0} mies.',
+ 'month-narrow-past-one' => '–{0} mies.',
+ 'month-narrow-past-other' => '–{0} mies.',
+ 'month-one' => '{0} miesiąc',
+ 'month-other' => '{0} miesiąca',
+ 'month-past-few' => '{0} miesiące temu',
+ 'month-past-many' => '{0} miesięcy temu',
+ 'month-past-one' => '{0} miesiąc temu',
+ 'month-past-other' => '{0} miesiąca temu',
+ 'month-short-future-few' => 'za {0} mies.',
+ 'month-short-future-many' => 'za {0} mies.',
+ 'month-short-future-one' => 'za {0} mies.',
+ 'month-short-future-other' => 'za {0} mies.',
+ 'month-short-past-few' => '{0} mies. temu',
+ 'month-short-past-many' => '{0} mies. temu',
+ 'month-short-past-one' => '{0} mies. temu',
+ 'month-short-past-other' => '{0} mies. temu',
+ 'nanosecond-few' => '{0} nanosekundy',
+ 'nanosecond-many' => '{0} nanosekund',
+ 'nanosecond-one' => '{0} nanosekunda',
+ 'nanosecond-other' => '{0} nanosekundy',
+ 'quarter-future-few' => 'za {0} kwartały',
+ 'quarter-future-many' => 'za {0} kwartałów',
+ 'quarter-future-one' => 'za {0} kwartał',
+ 'quarter-future-other' => 'za {0} kwartału',
+ 'quarter-narrow-future-few' => '+{0} kw.',
+ 'quarter-narrow-future-many' => '+{0} kw.',
+ 'quarter-narrow-future-one' => '+{0} kw.',
+ 'quarter-narrow-future-other' => '+{0} kw.',
+ 'quarter-narrow-past-few' => '–{0} kw.',
+ 'quarter-narrow-past-many' => '–{0} kw.',
+ 'quarter-narrow-past-one' => '–{0} kw.',
+ 'quarter-narrow-past-other' => '–{0} kw.',
+ 'quarter-past-few' => '{0} kwartały temu',
+ 'quarter-past-many' => '{0} kwartałów temu',
+ 'quarter-past-one' => '{0} kwartał temu',
+ 'quarter-past-other' => '{0} kwartału temu',
+ 'quarter-short-future-few' => 'za {0} kw.',
+ 'quarter-short-future-many' => 'za {0} kw.',
+ 'quarter-short-future-one' => 'za {0} kw.',
+ 'quarter-short-future-other' => 'za {0} kw.',
+ 'quarter-short-past-few' => '{0} kw. temu',
+ 'quarter-short-past-many' => '{0} kw. temu',
+ 'quarter-short-past-one' => '{0} kw. temu',
+ 'quarter-short-past-other' => '{0} kw. temu',
+ 'second-few' => '{0} sekundy',
+ 'second-future-few' => 'za {0} sekundy',
+ 'second-future-many' => 'za {0} sekund',
+ 'second-future-one' => 'za {0} sekundę',
+ 'second-future-other' => 'za {0} sekundy',
+ 'second-many' => '{0} sekund',
+ 'second-narrow-future-few' => 'za {0} s',
+ 'second-narrow-future-many' => 'za {0} s',
+ 'second-narrow-future-one' => 'za {0} s',
+ 'second-narrow-future-other' => 'za {0} s',
+ 'second-narrow-past-few' => '{0} s temu',
+ 'second-narrow-past-many' => '{0} s temu',
+ 'second-narrow-past-one' => '{0} s temu',
+ 'second-narrow-past-other' => '{0} s temu',
+ 'second-one' => '{0} sekunda',
+ 'second-other' => '{0} sekundy',
+ 'second-past-few' => '{0} sekundy temu',
+ 'second-past-many' => '{0} sekund temu',
+ 'second-past-one' => '{0} sekundę temu',
+ 'second-past-other' => '{0} sekundy temu',
+ 'second-short-future-few' => 'za {0} sek.',
+ 'second-short-future-many' => 'za {0} sek.',
+ 'second-short-future-one' => 'za {0} sek.',
+ 'second-short-future-other' => 'za {0} sek.',
+ 'second-short-past-few' => '{0} sek. temu',
+ 'second-short-past-many' => '{0} sek. temu',
+ 'second-short-past-one' => '{0} sek. temu',
+ 'second-short-past-other' => '{0} sek. temu',
+ 'week-few' => '{0} tygodnie',
+ 'week-future-few' => 'za {0} tygodnie',
+ 'week-future-many' => 'za {0} tygodni',
+ 'week-future-one' => 'za {0} tydzień',
+ 'week-future-other' => 'za {0} tygodnia',
+ 'week-many' => '{0} tygodni',
+ 'week-narrow-future-few' => 'za {0} tyg.',
+ 'week-narrow-future-many' => 'za {0} tyg.',
+ 'week-narrow-future-one' => 'za {0} tydz.',
+ 'week-narrow-future-other' => 'za {0} tyg.',
+ 'week-narrow-past-few' => '{0} tyg. temu',
+ 'week-narrow-past-many' => '{0} tyg. temu',
+ 'week-narrow-past-one' => '{0} tydz. temu',
+ 'week-narrow-past-other' => '{0} tyg. temu',
+ 'week-one' => '{0} tydzień',
+ 'week-other' => '{0} tygodnia',
+ 'week-past-few' => '{0} tygodnie temu',
+ 'week-past-many' => '{0} tygodni temu',
+ 'week-past-one' => '{0} tydzień temu',
+ 'week-past-other' => '{0} tygodnia temu',
+ 'week-short-future-few' => 'za {0} tyg.',
+ 'week-short-future-many' => 'za {0} tyg.',
+ 'week-short-future-one' => 'za {0} tydz.',
+ 'week-short-future-other' => 'za {0} tyg.',
+ 'week-short-past-few' => '{0} tyg. temu',
+ 'week-short-past-many' => '{0} tyg. temu',
+ 'week-short-past-one' => '{0} tydz. temu',
+ 'week-short-past-other' => '{0} tyg. temu',
+ 'year-few' => '{0} lata',
+ 'year-future-few' => 'za {0} lata',
+ 'year-future-many' => 'za {0} lat',
+ 'year-future-one' => 'za {0} rok',
+ 'year-future-other' => 'za {0} roku',
+ 'year-many' => '{0} lat',
+ 'year-narrow-future-few' => 'za {0} lata',
+ 'year-narrow-future-many' => 'za {0} lat',
+ 'year-narrow-future-one' => 'za {0} rok',
+ 'year-narrow-future-other' => 'za {0} roku',
+ 'year-narrow-past-few' => '{0} lata temu',
+ 'year-narrow-past-many' => '{0} lat temu',
+ 'year-narrow-past-one' => '{0} rok temu',
+ 'year-narrow-past-other' => '{0} roku temu',
+ 'year-one' => '{0} rok',
+ 'year-other' => '{0} roku',
+ 'year-past-few' => '{0} lata temu',
+ 'year-past-many' => '{0} lat temu',
+ 'year-past-one' => '{0} rok temu',
+ 'year-past-other' => '{0} roku temu',
+ 'year-short-future-few' => 'za {0} lata',
+ 'year-short-future-many' => 'za {0} lat',
+ 'year-short-future-one' => 'za {0} rok',
+ 'year-short-future-other' => 'za {0} roku',
+ 'year-short-past-few' => '{0} lata temu',
+ 'year-short-past-many' => '{0} lat temu',
+ 'year-short-past-one' => '{0} rok temu',
+ 'year-short-past-other' => '{0} roku temu',
+);
diff --git a/MLEB/cldr/CldrNames/CldrNamesPs.php b/MLEB/cldr/CldrNames/CldrNamesPs.php
new file mode 100644
index 00000000..5a32d523
--- /dev/null
+++ b/MLEB/cldr/CldrNames/CldrNamesPs.php
@@ -0,0 +1,186 @@
+<?php
+
+$languageNames = array(
+ 'af' => 'افريکاني',
+ 'am' => 'امهاري',
+ 'ar' => 'عربي',
+ 'as' => 'اسمائى ژبه',
+ 'az' => 'أذربائجاني',
+ 'bal' => 'بلوڅي',
+ 'be' => 'بېلاروسي',
+ 'bg' => 'بلغاري',
+ 'bn' => 'بنګالي',
+ 'br' => 'برېتون',
+ 'bs' => 'بوسني',
+ 'ca' => 'کټلاني',
+ 'cs' => 'چېک',
+ 'cy' => 'ويلشي',
+ 'da' => 'ډېنش',
+ 'de' => 'الماني',
+ 'el' => 'یوناني',
+ 'en' => 'انګلیسي',
+ 'eo' => 'اسپرانتو',
+ 'es' => 'هسپانوي',
+ 'et' => 'حبشي',
+ 'eu' => 'باسکي',
+ 'fa' => 'فارسي',
+ 'fi' => 'فینلنډي',
+ 'fil' => 'تګالوګ',
+ 'fo' => 'فاروئې',
+ 'fr' => 'فرانسوي',
+ 'fy' => 'فريزي',
+ 'ga' => 'ائيرلېنډي',
+ 'gd' => 'سکاټلېنډي ګېلک',
+ 'gl' => 'ګلېشيايي',
+ 'gn' => 'ګوراني',
+ 'gu' => 'ګجراتي',
+ 'he' => 'عبري',
+ 'hi' => 'هندي',
+ 'hr' => 'کروواتي',
+ 'hu' => 'هنګري',
+ 'hy' => 'ارمني',
+ 'ia' => 'انټرلنګوا',
+ 'id' => 'انډونېشيايي',
+ 'ie' => 'آسا نا جبة',
+ 'is' => 'أيسلېنډي',
+ 'it' => 'ایټالوي',
+ 'ja' => 'جاپانی',
+ 'jv' => 'جاوايې',
+ 'ka' => 'جورجيائي',
+ 'km' => 'کمبوډيايې يا د کمبوډيا',
+ 'kn' => 'کنأډه',
+ 'ko' => 'کوريائي',
+ 'ku' => 'کردي',
+ 'ky' => 'کرګيز',
+ 'la' => 'لاتیني',
+ 'lo' => 'لويتين',
+ 'lt' => 'ليتواني',
+ 'lv' => 'لېټواني',
+ 'mg' => 'ملغاسي',
+ 'mk' => 'مقدوني',
+ 'ml' => 'مالايالم',
+ 'mn' => 'مغولي',
+ 'mr' => 'مراټهي',
+ 'ms' => 'ملایا',
+ 'mt' => 'مالټايي',
+ 'ne' => 'نېپالي',
+ 'nl' => 'هالېنډي',
+ 'nn' => 'ناروېئي (نائنورسک)',
+ 'no' => 'ناروېئې',
+ 'oc' => 'اوکسيټاني',
+ 'or' => 'اوريا',
+ 'pa' => 'پنجابي',
+ 'pl' => 'پولنډي',
+ 'ps' => 'پښتو',
+ 'pt' => 'پورتګالي',
+ 'pt-br' => 'پرتگال (برازيل)',
+ 'pt-pt' => 'پرتګالي (پرتګال)',
+ 'ro' => 'روماني',
+ 'ru' => 'روسي',
+ 'sa' => 'سنسکریټ',
+ 'sd' => 'سندهي',
+ 'sh' => 'سرب-کروشيايي',
+ 'si' => 'سينهالي',
+ 'sk' => 'سلوواکي',
+ 'sl' => 'سلوواني',
+ 'so' => 'سومالي',
+ 'sq' => 'الباني',
+ 'sr' => 'سربيائي',
+ 'st' => 'سيسوتو',
+ 'su' => 'سوډاني',
+ 'sv' => 'سویډنی',
+ 'sw' => 'سواهېلي',
+ 'ta' => 'تامل',
+ 'te' => 'تېليګو',
+ 'tg' => 'تاجک',
+ 'th' => 'تايلېنډي',
+ 'ti' => 'تيګريني',
+ 'tk' => 'ترکمني',
+ 'tlh' => 'کلينګاني',
+ 'tr' => 'ترکي',
+ 'tt' => 'تاتار',
+ 'tw' => 'توی',
+ 'ug' => 'اويگور',
+ 'uk' => 'اوکرانايي',
+ 'ur' => 'اردو',
+ 'uz' => 'ازبکي',
+ 'vi' => 'وېتنامي',
+ 'xh' => 'خوسا',
+ 'yi' => 'يديش',
+ 'zh' => 'چیني',
+ 'zu' => 'زولو',
+);
+
+$currencyNames = array(
+ 'AFN' => 'افغانۍ',
+);
+
+$currencySymbols = array(
+ 'AFN' => '؋',
+);
+
+$countryNames = array(
+ 'AF' => 'افغانستان',
+ 'AL' => 'البانیه',
+ 'AO' => 'انګولا',
+ 'AQ' => 'انتارکتیکا',
+ 'AT' => 'اتریش',
+ 'BD' => 'بنګله‌دیش',
+ 'BG' => 'بلغاریه',
+ 'CA' => 'کاناډا',
+ 'CH' => 'سویس',
+ 'CN' => 'چین',
+ 'CO' => 'کولمبیا',
+ 'CU' => 'کیوبا',
+ 'DE' => 'المان',
+ 'DK' => 'ډنمارک',
+ 'DZ' => 'الجزایر',
+ 'EG' => 'مصر',
+ 'ES' => 'هسپانیه',
+ 'ET' => 'حبشه',
+ 'FI' => 'فنلینډ',
+ 'FR' => 'فرانسه',
+ 'GB' => 'برتانیه',
+ 'GH' => 'ګانا',
+ 'GN' => 'ګیانا',
+ 'GR' => 'یونان',
+ 'GT' => 'ګواتیمالا',
+ 'HN' => 'هانډوراس',
+ 'HU' => 'مجارستان',
+ 'ID' => 'اندونیزیا',
+ 'IN' => 'هند',
+ 'IQ' => 'عراق',
+ 'IS' => 'آیسلینډ',
+ 'IT' => 'ایټالیه',
+ 'JM' => 'جمیکا',
+ 'JP' => 'جاپان',
+ 'KH' => 'کمبودیا',
+ 'KW' => 'کویټ',
+ 'LA' => 'لاوس',
+ 'LB' => 'لبنان',
+ 'LR' => 'لایبریا',
+ 'LY' => 'لیبیا',
+ 'MA' => 'مراکش',
+ 'MN' => 'مغولستان',
+ 'MY' => 'مالیزیا',
+ 'NG' => 'نایجیریا',
+ 'NI' => 'نکاراګوا',
+ 'NL' => 'هالېنډ',
+ 'NO' => 'ناروې',
+ 'NP' => 'نیپال',
+ 'NZ' => 'نیوزیلنډ',
+ 'PK' => 'پاکستان',
+ 'PL' => 'پولنډ',
+ 'PS' => 'فلسطین',
+ 'PT' => 'پورتګال',
+ 'RU' => 'روسیه',
+ 'RW' => 'روندا',
+ 'SA' => 'سعودی عربستان',
+ 'SE' => 'سویډن',
+ 'SV' => 'سالوېډور',
+ 'SY' => 'سوریه',
+ 'TJ' => 'تاجکستان',
+ 'TZ' => 'تنزانیا',
+ 'UY' => 'یوروګوای',
+ 'YE' => 'یمن',
+);
diff --git a/MLEB/cldr/CldrNames/CldrNamesPt.php b/MLEB/cldr/CldrNames/CldrNamesPt.php
new file mode 100644
index 00000000..a2b8af55
--- /dev/null
+++ b/MLEB/cldr/CldrNames/CldrNamesPt.php
@@ -0,0 +1,292 @@
+<?php
+
+$languageNames = array(
+ 'af' => 'africânder',
+ 'ar-001' => 'árabe moderno padrão',
+ 'arn' => 'mapuche',
+ 'bax' => 'bamun',
+ 'bbj' => 'ghomala',
+ 'bug' => 'buginese',
+ 'ce' => 'chechene',
+ 'chn' => 'jargão chinook',
+ 'ckb' => 'sorani curdo',
+ 'cs' => 'checo',
+ 'dsb' => 'baixo sórabio',
+ 'dyu' => 'diula',
+ 'ee' => 'ewe',
+ 'egy' => 'egípcio clássico',
+ 'en-ca' => 'inglês canadiano',
+ 'enm' => 'inglês medieval',
+ 'es-mx' => 'espanhol do México',
+ 'et' => 'estónio',
+ 'fr-ca' => 'francês canadiano',
+ 'frm' => 'francês medieval',
+ 'frs' => 'frísio oriental',
+ 'fy' => 'frísico ocidental',
+ 'gmh' => 'alemão medieval alto',
+ 'grc' => 'grego clássico',
+ 'ha' => 'haúça',
+ 'hi' => 'hindi',
+ 'hsb' => 'alto sórabio',
+ 'hy' => 'arménio',
+ 'ig' => 'igbo',
+ 'ik' => 'inupiaq',
+ 'kea' => 'cabo-verdiano',
+ 'kg' => 'conguês',
+ 'km' => 'cmer',
+ 'kn' => 'canarim',
+ 'lez' => 'lezghiano',
+ 'lg' => 'ganda',
+ 'luo' => 'luo',
+ 'mga' => 'irlandês, medieval',
+ 'mk' => 'macedónio',
+ 'moh' => 'mohawk',
+ 'nb' => 'norueguês bokmål',
+ 'nds' => 'baixo alemão',
+ 'nn' => 'norueguês nynorsk',
+ 'non' => 'norse, old',
+ 'oc' => 'provençal',
+ 'os' => 'ossético',
+ 'pl' => 'polaco',
+ 'pro' => 'provençal, arcaico',
+ 'ps' => 'pastó',
+ 'rom' => 'romanês',
+ 'rw' => 'kinyarwanda',
+ 'sah' => 'sakha',
+ 'shu' => 'árabe do Chade',
+ 'swb' => 'língua comoriana',
+ 'tk' => 'turcomano',
+ 'tl' => 'tagalogue',
+ 'to' => 'tonga',
+ 'tog' => 'toganês',
+ 'tyv' => 'tuviniano',
+ 'tzm' => 'tamazight do Atlas Central',
+ 'vai' => 'vai',
+ 'xog' => 'soga',
+ 'zgh' => 'tamazight padrão de Marrocos',
+);
+
+$currencyNames = array(
+ 'AED' => 'Dirham dos Emirados Árabes Unidos',
+ 'AFA' => 'Afeghani (1927–2002)',
+ 'AFN' => 'Afegani do Afeganistão',
+ 'AMD' => 'Dram arménio',
+ 'AWG' => 'Florim de Aruba',
+ 'AZN' => 'Manat do Azerbaijão',
+ 'BAD' => 'Dinar da Bósnia-Herzegóvina',
+ 'BAM' => 'Marco bósnio-herzegóvino conversível',
+ 'BDT' => 'Taka de Bangladesh',
+ 'BEC' => 'Franco belga (convertível)',
+ 'BHD' => 'Dinar baremita',
+ 'BND' => 'Dólar bruneíno',
+ 'BSD' => 'Dólar das Bahamas',
+ 'BTN' => 'Ngultrum do Butão',
+ 'BWP' => 'Pula de Botswana',
+ 'BYB' => 'Rublo novo bielorusso (1994–1999)',
+ 'BZD' => 'Dólar belizense',
+ 'CAD' => 'Dólar canadiano',
+ 'CRC' => 'Colon costa-riquenho',
+ 'CYP' => 'Libra de Chipre',
+ 'CZK' => 'Coroa checa',
+ 'DJF' => 'Franco jibutiano',
+ 'ECV' => 'Unidad de Valor Constante (UVC) do Equador',
+ 'FJD' => 'Dólar de Fiji',
+ 'FKP' => 'Libra das Ilhas Falkland',
+ 'GHC' => 'Cedi do Gana',
+ 'GHS' => 'Cedi de Gana',
+ 'GMD' => 'Dalasi da Gâmbia',
+ 'GNF' => 'Franco guineense',
+ 'GTQ' => 'Quetzal da Guatemala',
+ 'GYD' => 'Dólar da Guiana',
+ 'HNL' => 'Lempira das Honduras',
+ 'ILS' => 'Sheqel novo israelita',
+ 'IRR' => 'Rial iraniano',
+ 'KGS' => 'Som do Quirguistão',
+ 'KMF' => 'Franco comoriano',
+ 'KYD' => 'Dólar das Ilhas Caimão',
+ 'KZT' => 'Tenge do Cazaquistão',
+ 'LAK' => 'Kip de Laos',
+ 'LKR' => 'Rupia do Sri Lanka',
+ 'LTL' => 'Litas da Lituânia',
+ 'LVL' => 'Lats da Letónia',
+ 'MAD' => 'Dirham marroquino',
+ 'MDL' => 'Leu moldavo',
+ 'MGA' => 'Ariari de Madagáscar',
+ 'MKD' => 'Dinar macedónio',
+ 'MLF' => 'Franco do Mali',
+ 'MMK' => 'Kyat de Mianmar',
+ 'MNT' => 'Tugrik da Mongólia',
+ 'MOP' => 'Pataca de Macau',
+ 'MRO' => 'Ouguiya da Mauritânia',
+ 'MVR' => 'Rupia das Ilhas Maldivas',
+ 'MWK' => 'Kwacha do Malawi',
+ 'MXP' => 'Peso Plata mexicano (1861–1992)',
+ 'MXV' => 'Unidad de Inversion (UDI) mexicana',
+ 'MZN' => 'Metical de Moçambique',
+ 'NAD' => 'Dólar da Namíbia',
+ 'NIC' => 'Córdoba nicaraguano',
+ 'NIO' => 'Córdoba de ouro da Nicarágua',
+ 'OMR' => 'Rial de Omã',
+ 'PAB' => 'Balboa do Panamá',
+ 'PEN' => 'Novo sol peruano',
+ 'PGK' => 'Kina da Papua-Nova Guiné',
+ 'PLN' => 'Zloti polaco',
+ 'PLZ' => 'Zloti polaco (1950–1995)',
+ 'QAR' => 'Rial do Catar',
+ 'RON' => 'Leu romeno',
+ 'SAR' => 'Rial saudita',
+ 'SGD' => 'Dólar de Singapura',
+ 'SOS' => 'Xelim somali',
+ 'SRD' => 'Dólar do Suriname',
+ 'SZL' => 'Lilangeni da Suazilândia',
+ 'THB' => 'Baht da Tailândia',
+ 'TJS' => 'Somoni do Tajaquistão',
+ 'TMT' => 'Manat do Turquemenistão',
+ 'TND' => 'Dinar tunisino',
+ 'TOP' => 'Paʻanga de Tonga',
+ 'TTD' => 'Dólar de Trindade e Tobago',
+ 'UAH' => 'Hryvnia da Ucrânia',
+ 'USD' => 'Dólar dos Estados Unidos',
+ 'UZS' => 'Som do Uzbequistão',
+ 'VUV' => 'Vatu de Vanuatu',
+ 'XAF' => 'Franco CFA (BEAC)',
+ 'XCD' => 'Dólar das Caraíbas Orientais',
+ 'XDR' => 'direito especial de saque',
+ 'XEU' => 'Unidade da Moeda Europeia',
+ 'XOF' => 'Franco CFA (BCEAO)',
+ 'YER' => 'Rial iemenita',
+ 'YUD' => 'Dinar forte jugoslavo',
+ 'YUM' => 'Super Dinar jugoslavo',
+ 'YUN' => 'Dinar conversível jugoslavo',
+ 'ZMK' => 'Kwacha zambiano (1968–2012)',
+ 'ZWD' => 'Dólar do Zimbabwe',
+);
+
+$countryNames = array(
+ 'AI' => 'Anguila',
+ 'AM' => 'Arménia',
+ 'BH' => 'Barém',
+ 'BJ' => 'Benim',
+ 'BW' => 'Botswana',
+ 'CC' => 'Ilhas Cocos',
+ 'CD' => 'Congo-Kinshasa',
+ 'CG' => 'Congo-Brazzaville',
+ 'CM' => 'Camarões',
+ 'CW' => 'Curaçau',
+ 'CX' => 'Ilha do Natal',
+ 'CZ' => 'República Checa',
+ 'DJ' => 'Jibuti',
+ 'DM' => 'Domínica',
+ 'EE' => 'Estónia',
+ 'EG' => 'Egipto',
+ 'FK' => 'Ilhas Falkland',
+ 'FO' => 'Ilhas Faroé',
+ 'GB' => 'RU',
+ 'GL' => 'Gronelândia',
+ 'GS' => 'Ilhas Geórgia do Sul e Sandwich do Sul',
+ 'GU' => 'Guame',
+ 'GW' => 'Guiné-Bissau',
+ 'IR' => 'Irão',
+ 'KE' => 'Quénia',
+ 'KY' => 'Ilhas Caimão',
+ 'LV' => 'Letónia',
+ 'MC' => 'Mónaco',
+ 'MG' => 'Madagáscar',
+ 'MK' => 'Macedónia',
+ 'MS' => 'Monserrate',
+ 'MU' => 'Maurícia',
+ 'NC' => 'Nova Caledónia',
+ 'NL' => 'Países Baixos',
+ 'PL' => 'Polónia',
+ 'PN' => 'Pitcairn',
+ 'PS' => 'Território Palestiniano',
+ 'QO' => 'Oceânia Insular',
+ 'RO' => 'Roménia',
+ 'SC' => 'Seicheles',
+ 'SG' => 'Singapura',
+ 'SI' => 'Eslovénia',
+ 'SM' => 'São Marino',
+ 'TC' => 'Ilhas Turcas e Caicos',
+ 'TK' => 'Toquelau',
+ 'TM' => 'Turquemenistão',
+ 'TT' => 'Trindade e Tobago',
+ 'VN' => 'Vietname',
+ 'YE' => 'Iémen',
+ 'YT' => 'Maiote',
+ 'ZW' => 'Zimbabué',
+);
+
+$timeUnits = array(
+ 'day-future-one' => 'dentro de {0} dia',
+ 'day-future-other' => 'dentro de {0} dias',
+ 'day-past-one' => 'há {0} dia',
+ 'day-past-other' => 'há {0} dias',
+ 'day-short-future-one' => 'dentro de {0} dia',
+ 'day-short-future-other' => 'dentro de {0} dias',
+ 'day-short-past-one' => 'há {0} dia',
+ 'day-short-past-other' => 'há {0} dias',
+ 'hour-future-one' => 'dentro de {0} hora',
+ 'hour-future-other' => 'dentro de {0} horas',
+ 'hour-past-one' => 'há {0} hora',
+ 'hour-past-other' => 'há {0} horas',
+ 'hour-short-future-one' => 'dentro de {0} h',
+ 'hour-short-future-other' => 'dentro de {0} h',
+ 'hour-short-past-one' => 'há {0} h',
+ 'hour-short-past-other' => 'há {0} h',
+ 'minute-future-one' => 'dentro de {0} minuto',
+ 'minute-future-other' => 'dentro de {0} minutos',
+ 'minute-narrow-future-one' => '+{0} min',
+ 'minute-narrow-future-other' => '+{0} min',
+ 'minute-narrow-past-one' => '-{0} min',
+ 'minute-narrow-past-other' => '-{0} min',
+ 'minute-past-one' => 'há {0} minuto',
+ 'minute-past-other' => 'há {0} minutos',
+ 'minute-short-future-one' => 'dentro de {0} min',
+ 'minute-short-future-other' => 'dentro de {0} min',
+ 'minute-short-past-one' => 'há {0} min',
+ 'minute-short-past-other' => 'há {0} min',
+ 'month-future-one' => 'dentro de {0} mês',
+ 'month-future-other' => 'dentro de {0} meses',
+ 'month-past-one' => 'há {0} mês',
+ 'month-past-other' => 'há {0} meses',
+ 'month-short-future-one' => 'dentro de {0} mês',
+ 'month-short-future-other' => 'dentro de {0} meses',
+ 'month-short-past-one' => 'há {0} mês',
+ 'month-short-past-other' => 'há {0} meses',
+ 'quarter-future-one' => 'dentro de {0} trimestre',
+ 'quarter-future-other' => 'dentro de {0} trimestres',
+ 'quarter-narrow-future-one' => '+{0} trim.',
+ 'quarter-narrow-future-other' => '+{0} trim.',
+ 'quarter-narrow-past-one' => '-{0} trim.',
+ 'quarter-narrow-past-other' => '-{0} trim.',
+ 'quarter-past-one' => 'há {0} trimestre',
+ 'quarter-past-other' => 'há {0} trimestres',
+ 'quarter-short-future-one' => 'dentro de {0} trim.',
+ 'quarter-short-future-other' => 'dentro de {0} trim.',
+ 'quarter-short-past-one' => 'há {0} trim.',
+ 'quarter-short-past-other' => 'há {0} trim.',
+ 'second-future-one' => 'dentro de {0} segundo',
+ 'second-future-other' => 'dentro de {0} segundos',
+ 'second-past-one' => 'há {0} segundo',
+ 'second-past-other' => 'há {0} segundos',
+ 'second-short-future-one' => 'dentro de {0} s',
+ 'second-short-future-other' => 'dentro de {0} s',
+ 'second-short-past-one' => 'há {0} s',
+ 'second-short-past-other' => 'há {0} s',
+ 'week-future-one' => 'dentro de {0} semana',
+ 'week-future-other' => 'dentro de {0} semanas',
+ 'week-past-one' => 'há {0} semana',
+ 'week-past-other' => 'há {0} semanas',
+ 'week-short-future-one' => 'dentro de {0} sem.',
+ 'week-short-future-other' => 'dentro de {0} sem.',
+ 'week-short-past-one' => 'há {0} sem.',
+ 'week-short-past-other' => 'há {0} sem.',
+ 'year-future-one' => 'dentro de {0} ano',
+ 'year-future-other' => 'dentro de {0} anos',
+ 'year-past-one' => 'há {0} ano',
+ 'year-past-other' => 'há {0} anos',
+ 'year-short-future-one' => 'dentro de {0} ano',
+ 'year-short-future-other' => 'dentro de {0} anos',
+ 'year-short-past-one' => 'há {0} ano',
+ 'year-short-past-other' => 'há {0} anos',
+);
diff --git a/MLEB/cldr/CldrNames/CldrNamesPt_br.php b/MLEB/cldr/CldrNames/CldrNamesPt_br.php
new file mode 100644
index 00000000..1bdc76da
--- /dev/null
+++ b/MLEB/cldr/CldrNames/CldrNamesPt_br.php
@@ -0,0 +1,1357 @@
+<?php
+
+$languageNames = array(
+ 'aa' => 'afar',
+ 'ab' => 'abcázio',
+ 'ace' => 'achém',
+ 'ach' => 'acoli',
+ 'ada' => 'adangme',
+ 'ady' => 'adigue',
+ 'ae' => 'avéstico',
+ 'af' => 'africâner',
+ 'afh' => 'afrihili',
+ 'agq' => 'aghem',
+ 'ain' => 'ainu',
+ 'ak' => 'akan',
+ 'akk' => 'acadiano',
+ 'ale' => 'aleúte',
+ 'alt' => 'altai do sul',
+ 'am' => 'amárico',
+ 'an' => 'aragonês',
+ 'ang' => 'inglês arcaico',
+ 'anp' => 'angika',
+ 'ar' => 'árabe',
+ 'ar-001' => 'árabe moderno',
+ 'arc' => 'aramaico',
+ 'arn' => 'araucano',
+ 'arp' => 'arapaho',
+ 'arw' => 'arauaqui',
+ 'as' => 'assamês',
+ 'asa' => 'asu',
+ 'ast' => 'asturiano',
+ 'av' => 'avaric',
+ 'awa' => 'awadhi',
+ 'ay' => 'aimara',
+ 'az' => 'azerbaijano',
+ 'ba' => 'bashkir',
+ 'bal' => 'balúchi',
+ 'ban' => 'balinês',
+ 'bas' => 'basa',
+ 'bax' => 'bamum',
+ 'bbj' => 'ghomala’',
+ 'be' => 'bielorrusso',
+ 'bej' => 'beja',
+ 'bem' => 'bemba',
+ 'bez' => 'bena',
+ 'bfd' => 'bafut',
+ 'bg' => 'búlgaro',
+ 'bho' => 'bhojpuri',
+ 'bi' => 'bislamá',
+ 'bik' => 'bikol',
+ 'bin' => 'bini',
+ 'bkm' => 'kom',
+ 'bla' => 'siksika',
+ 'bm' => 'bambara',
+ 'bn' => 'bengali',
+ 'bo' => 'tibetano',
+ 'br' => 'bretão',
+ 'bra' => 'braj',
+ 'brx' => 'bodo',
+ 'bs' => 'bósnio',
+ 'bss' => 'akoose',
+ 'bua' => 'buriat',
+ 'bug' => 'buguinês',
+ 'bum' => 'bulu',
+ 'byn' => 'blin',
+ 'byv' => 'medumba',
+ 'ca' => 'catalão',
+ 'cad' => 'caddo',
+ 'car' => 'caribe',
+ 'cay' => 'cayuga',
+ 'cch' => 'atsam',
+ 'ce' => 'checheno',
+ 'ceb' => 'cebuano',
+ 'cgg' => 'chiga',
+ 'ch' => 'chamorro',
+ 'chb' => 'chibcha',
+ 'chg' => 'chagatai',
+ 'chk' => 'chuukese',
+ 'chm' => 'mari',
+ 'chn' => 'chinook jargon',
+ 'cho' => 'choctaw',
+ 'chp' => 'chipewyan',
+ 'chr' => 'cherokee',
+ 'chy' => 'cheiene',
+ 'ckb' => 'sorâni curdo',
+ 'co' => 'córsico',
+ 'cop' => 'copta',
+ 'cr' => 'cree',
+ 'crh' => 'turco da Crimeia',
+ 'cs' => 'tcheco',
+ 'csb' => 'kashubian',
+ 'cu' => 'eslavo eclesiástico',
+ 'cv' => 'chuvash',
+ 'cy' => 'galês',
+ 'da' => 'dinamarquês',
+ 'dak' => 'dacota',
+ 'dar' => 'dargwa',
+ 'dav' => 'taita',
+ 'de' => 'alemão',
+ 'de-at' => 'alemão austríaco',
+ 'de-ch' => 'alto alemão suíço',
+ 'del' => 'delaware',
+ 'den' => 'slave',
+ 'dgr' => 'dogrib',
+ 'din' => 'dinka',
+ 'dje' => 'zarma',
+ 'doi' => 'dogri',
+ 'dsb' => 'sérvio baixo',
+ 'dua' => 'duala',
+ 'dum' => 'holandês médio',
+ 'dv' => 'divehi',
+ 'dyo' => 'jola-fonyi',
+ 'dyu' => 'diúla',
+ 'dz' => 'dzonga',
+ 'dzg' => 'dazaga',
+ 'ebu' => 'embu',
+ 'ee' => 'eve',
+ 'efi' => 'efique',
+ 'egy' => 'egípcio arcaico',
+ 'eka' => 'ekajuk',
+ 'el' => 'grego',
+ 'elx' => 'elamite',
+ 'en' => 'inglês',
+ 'en-au' => 'inglês australiano',
+ 'en-ca' => 'inglês canadense',
+ 'en-gb' => 'inglês britânico',
+ 'en-us' => 'inglês americano',
+ 'enm' => 'inglês médio',
+ 'eo' => 'esperanto',
+ 'es' => 'espanhol',
+ 'es-419' => 'espanhol latino-americano',
+ 'es-es' => 'espanhol europeu',
+ 'es-mx' => 'espanhol mexicano',
+ 'et' => 'estoniano',
+ 'eu' => 'basco',
+ 'ewo' => 'ewondo',
+ 'fa' => 'persa',
+ 'fan' => 'fangue',
+ 'fat' => 'fanti',
+ 'ff' => 'fula',
+ 'fi' => 'finlandês',
+ 'fil' => 'filipino',
+ 'fj' => 'fijiano',
+ 'fo' => 'feroês',
+ 'fon' => 'fom',
+ 'fr' => 'francês',
+ 'fr-ca' => 'francês canadense',
+ 'fr-ch' => 'francês suíço',
+ 'frm' => 'francês médio',
+ 'fro' => 'francês arcaico',
+ 'frr' => 'frísio setentrional',
+ 'frs' => 'frisão oriental',
+ 'fur' => 'friulano',
+ 'fy' => 'frísio ocidental',
+ 'ga' => 'irlandês',
+ 'gaa' => 'ga',
+ 'gag' => 'gagauz',
+ 'gay' => 'gayo',
+ 'gba' => 'gbaia',
+ 'gd' => 'gaélico escocês',
+ 'gez' => 'geez',
+ 'gil' => 'gilbertês',
+ 'gl' => 'galego',
+ 'gmh' => 'alemão médio-alto',
+ 'gn' => 'guarani',
+ 'goh' => 'alemão arcaico alto',
+ 'gon' => 'gondi',
+ 'gor' => 'gorontalo',
+ 'got' => 'gótico',
+ 'grb' => 'grebo',
+ 'grc' => 'grego arcaico',
+ 'gsw' => 'alemão suíço',
+ 'gu' => 'guzerate',
+ 'guz' => 'gusii',
+ 'gv' => 'manx',
+ 'gwi' => 'gwichʼin',
+ 'ha' => 'hauçá',
+ 'hai' => 'haida',
+ 'haw' => 'havaiano',
+ 'he' => 'hebraico',
+ 'hi' => 'híndi',
+ 'hil' => 'hiligaynon',
+ 'hit' => 'hitita',
+ 'hmn' => 'hmong',
+ 'ho' => 'hiri motu',
+ 'hr' => 'croata',
+ 'hsb' => 'sorábio superior',
+ 'ht' => 'haitiano',
+ 'hu' => 'húngaro',
+ 'hup' => 'hupa',
+ 'hy' => 'armênio',
+ 'hz' => 'herero',
+ 'ia' => 'interlíngua',
+ 'iba' => 'iban',
+ 'ibb' => 'ibibio',
+ 'id' => 'indonésio',
+ 'ie' => 'interlingue',
+ 'ig' => 'ibo',
+ 'ii' => 'sichuan yi',
+ 'ik' => 'inupiaque',
+ 'ilo' => 'ilocano',
+ 'inh' => 'inguche',
+ 'io' => 'ido',
+ 'is' => 'islandês',
+ 'it' => 'italiano',
+ 'iu' => 'inuktitut',
+ 'ja' => 'japonês',
+ 'jbo' => 'lojban',
+ 'jgo' => 'nguemba',
+ 'jmc' => 'machame',
+ 'jpr' => 'judaico-persa',
+ 'jrb' => 'judaico-arábico',
+ 'jv' => 'javanês',
+ 'ka' => 'georgiano',
+ 'kaa' => 'kara-kalpak',
+ 'kab' => 'kabyle',
+ 'kac' => 'kachin',
+ 'kaj' => 'jju',
+ 'kam' => 'kamba',
+ 'kaw' => 'kawi',
+ 'kbd' => 'kabardiano',
+ 'kbl' => 'kanembu',
+ 'kcg' => 'tyap',
+ 'kde' => 'maconde',
+ 'kea' => 'kabuverdianu',
+ 'kfo' => 'koro',
+ 'kg' => 'congolês',
+ 'kha' => 'khasi',
+ 'kho' => 'khotanês',
+ 'khq' => 'koyra chiini',
+ 'ki' => 'quicuio',
+ 'kj' => 'kuanyama',
+ 'kk' => 'cazaque',
+ 'kkj' => 'kako',
+ 'kl' => 'groenlandês',
+ 'kln' => 'kalenjin',
+ 'km' => 'khmer',
+ 'kmb' => 'quimbundo',
+ 'kn' => 'canarês',
+ 'ko' => 'coreano',
+ 'koi' => 'komi-permyak',
+ 'kok' => 'concani',
+ 'kos' => 'kosraean',
+ 'kpe' => 'kpelle',
+ 'kr' => 'canúri',
+ 'krc' => 'karachay-balkar',
+ 'krl' => 'idioma carélio',
+ 'kru' => 'kurukh',
+ 'ks' => 'caxemira',
+ 'ksb' => 'shambala',
+ 'ksf' => 'bafia',
+ 'ksh' => 'kölsch',
+ 'ku' => 'curdo',
+ 'kum' => 'kumyk',
+ 'kut' => 'kutenai',
+ 'kv' => 'komi',
+ 'kw' => 'córnico',
+ 'ky' => 'quirguiz',
+ 'la' => 'latim',
+ 'lad' => 'ladino',
+ 'lag' => 'langi',
+ 'lah' => 'lahnda',
+ 'lam' => 'lamba',
+ 'lb' => 'luxemburguês',
+ 'lez' => 'lezghian',
+ 'lg' => 'luganda',
+ 'li' => 'limburguês',
+ 'lkt' => 'lacota',
+ 'ln' => 'lingala',
+ 'lo' => 'laosiano',
+ 'lol' => 'mongo',
+ 'loz' => 'lozi',
+ 'lt' => 'lituano',
+ 'lu' => 'luba-catanga',
+ 'lua' => 'luba-lulua',
+ 'lui' => 'luiseno',
+ 'lun' => 'lunda',
+ 'luo' => 'luo',
+ 'lus' => 'lushai',
+ 'luy' => 'luyia',
+ 'lv' => 'letão',
+ 'mad' => 'madurês',
+ 'maf' => 'mafa',
+ 'mag' => 'magahi',
+ 'mai' => 'maithili',
+ 'mak' => 'makasar',
+ 'man' => 'mandinga',
+ 'mas' => 'massai',
+ 'mde' => 'maba',
+ 'mdf' => 'mocsa',
+ 'mdr' => 'mandar',
+ 'men' => 'mende',
+ 'mer' => 'meru',
+ 'mfe' => 'morisyen',
+ 'mg' => 'malgaxe',
+ 'mga' => 'irlandês médio',
+ 'mgh' => 'macua',
+ 'mgo' => 'meta’',
+ 'mh' => 'marshalês',
+ 'mi' => 'maori',
+ 'mic' => 'miquemaque',
+ 'min' => 'minangkabau',
+ 'mk' => 'macedônio',
+ 'ml' => 'malaiala',
+ 'mn' => 'mongol',
+ 'mnc' => 'manchu',
+ 'mni' => 'manipuri',
+ 'moh' => 'moicano',
+ 'mos' => 'mossi',
+ 'mr' => 'marata',
+ 'ms' => 'malaio',
+ 'mt' => 'maltês',
+ 'mua' => 'mundang',
+ 'mul' => 'idiomas múltiplos',
+ 'mus' => 'creek',
+ 'mwl' => 'mirandês',
+ 'mwr' => 'marwari',
+ 'my' => 'birmanês',
+ 'mye' => 'myene',
+ 'myv' => 'erzya',
+ 'na' => 'nauruano',
+ 'nap' => 'napolitano',
+ 'naq' => 'nama',
+ 'nb' => 'bokmål norueguês',
+ 'nd' => 'ndebele do norte',
+ 'nds' => 'baixo-alemão',
+ 'ne' => 'nepali',
+ 'new' => 'newari',
+ 'ng' => 'dongo',
+ 'nia' => 'nias',
+ 'niu' => 'niueano',
+ 'nl' => 'holandês',
+ 'nl-be' => 'flamengo',
+ 'nmg' => 'kwasio',
+ 'nn' => 'nynorsk norueguês',
+ 'nnh' => 'ngiemboon',
+ 'no' => 'norueguês',
+ 'nog' => 'nogai',
+ 'non' => 'nórdico arcaico',
+ 'nqo' => 'n’ko',
+ 'nr' => 'ndebele do sul',
+ 'nso' => 'soto setentrional',
+ 'nus' => 'nuer',
+ 'nv' => 'navajo',
+ 'nwc' => 'newari clássico',
+ 'ny' => 'nianja',
+ 'nym' => 'nyamwezi',
+ 'nyn' => 'nyankole',
+ 'nyo' => 'nyoro',
+ 'nzi' => 'nzima',
+ 'oc' => 'occitânico',
+ 'oj' => 'ojibwa',
+ 'om' => 'oromo',
+ 'or' => 'oriya',
+ 'os' => 'ossetic',
+ 'osa' => 'osage',
+ 'ota' => 'turco otomano',
+ 'pa' => 'panjabi',
+ 'pag' => 'pangasinã',
+ 'pal' => 'pálavi',
+ 'pam' => 'pampanga',
+ 'pap' => 'papiamento',
+ 'pau' => 'palauano',
+ 'peo' => 'persa arcaico',
+ 'phn' => 'fenício',
+ 'pi' => 'páli',
+ 'pl' => 'polonês',
+ 'pon' => 'pohnpeian',
+ 'pro' => 'provençal arcaico',
+ 'ps' => 'pashto',
+ 'pt' => 'português',
+ 'pt-br' => 'português do Brasil',
+ 'pt-pt' => 'português europeu',
+ 'qu' => 'quíchua',
+ 'quc' => 'quiché',
+ 'raj' => 'rajastani',
+ 'rap' => 'rapanui',
+ 'rar' => 'rarotongano',
+ 'rm' => 'romanche',
+ 'rn' => 'rundi',
+ 'ro' => 'romeno',
+ 'ro-md' => 'moldávio',
+ 'rof' => 'rombo',
+ 'rom' => 'romani',
+ 'ru' => 'russo',
+ 'rup' => 'aromeno',
+ 'rw' => 'ruanda',
+ 'rwk' => 'rwa',
+ 'sa' => 'sânscrito',
+ 'sad' => 'sandawe',
+ 'sah' => 'iacuto',
+ 'sam' => 'aramaico samaritano',
+ 'saq' => 'samburu',
+ 'sas' => 'sasak',
+ 'sat' => 'santali',
+ 'sba' => 'ngambay',
+ 'sbp' => 'sangu',
+ 'sc' => 'sardo',
+ 'scn' => 'siciliano',
+ 'sco' => 'escocês',
+ 'sd' => 'sindi',
+ 'se' => 'sami do norte',
+ 'see' => 'seneca',
+ 'seh' => 'sena',
+ 'sel' => 'selkup',
+ 'ses' => 'koyraboro senni',
+ 'sg' => 'sango',
+ 'sga' => 'irlandês arcaico',
+ 'sh' => 'servo-croata',
+ 'shi' => 'tachelhit',
+ 'shn' => 'shan',
+ 'shu' => 'árabe chadiano',
+ 'si' => 'cingalês',
+ 'sid' => 'sidamo',
+ 'sk' => 'eslovaco',
+ 'sl' => 'esloveno',
+ 'sm' => 'samoano',
+ 'sma' => 'sami do sul',
+ 'smj' => 'lule sami',
+ 'smn' => 'inari sami',
+ 'sms' => 'skolt sami',
+ 'sn' => 'shona',
+ 'snk' => 'soninquê',
+ 'so' => 'somali',
+ 'sog' => 'sogdiano',
+ 'sq' => 'albanês',
+ 'sr' => 'sérvio',
+ 'srn' => 'idioma surinamês',
+ 'srr' => 'serere',
+ 'ss' => 'swati',
+ 'ssy' => 'saho',
+ 'st' => 'soto do sul',
+ 'su' => 'sundanês',
+ 'suk' => 'sukuma',
+ 'sus' => 'sosso',
+ 'sux' => 'sumério',
+ 'sv' => 'sueco',
+ 'sw' => 'suaíli',
+ 'swb' => 'comoriano',
+ 'swc' => 'suaíli do Congo',
+ 'syc' => 'siríaco clássico',
+ 'syr' => 'siríaco',
+ 'ta' => 'tâmil',
+ 'te' => 'telugu',
+ 'tem' => 'timne',
+ 'teo' => 'teso',
+ 'ter' => 'tereno',
+ 'tet' => 'tétum',
+ 'tg' => 'tajique',
+ 'th' => 'tailandês',
+ 'ti' => 'tigrínia',
+ 'tig' => 'tigré',
+ 'tiv' => 'tiv',
+ 'tk' => 'turcomeno',
+ 'tkl' => 'toquelauano',
+ 'tl' => 'tagalo',
+ 'tlh' => 'klingon',
+ 'tli' => 'tlinguite',
+ 'tmh' => 'tamaxeque',
+ 'tn' => 'tswana',
+ 'to' => 'tonganês',
+ 'tog' => 'tonganês de Nyasa',
+ 'tpi' => 'tok pisin',
+ 'tr' => 'turco',
+ 'trv' => 'taroko',
+ 'ts' => 'tsonga',
+ 'tsi' => 'tsimshian',
+ 'tt' => 'tatar',
+ 'tum' => 'tumbuka',
+ 'tvl' => 'tuvaluano',
+ 'tw' => 'twi',
+ 'twq' => 'tasawaq',
+ 'ty' => 'taitiano',
+ 'tyv' => 'tuvinian',
+ 'tzm' => 'tamazight',
+ 'udm' => 'udmurt',
+ 'ug' => 'uigur',
+ 'uga' => 'ugarítico',
+ 'uk' => 'ucraniano',
+ 'umb' => 'umbundu',
+ 'und' => 'idioma desconhecido',
+ 'ur' => 'urdu',
+ 'uz' => 'usbeque',
+ 'vai' => 'vai',
+ 've' => 'venda',
+ 'vi' => 'vietnamita',
+ 'vo' => 'volapuque',
+ 'vot' => 'votic',
+ 'vun' => 'vunjo',
+ 'wa' => 'valão',
+ 'wae' => 'walser',
+ 'wal' => 'walamo',
+ 'war' => 'waray',
+ 'was' => 'washo',
+ 'wo' => 'uólofe',
+ 'xal' => 'kalmyk',
+ 'xh' => 'xosa',
+ 'xog' => 'lusoga',
+ 'yao' => 'yao',
+ 'yap' => 'yapese',
+ 'yav' => 'yangben',
+ 'ybb' => 'yemba',
+ 'yi' => 'iídiche',
+ 'yo' => 'ioruba',
+ 'yue' => 'cantonês',
+ 'za' => 'zhuang',
+ 'zap' => 'zapoteca',
+ 'zbl' => 'símbolos blis',
+ 'zen' => 'zenaga',
+ 'zgh' => 'tamazight marroquino padrão',
+ 'zh' => 'chinês',
+ 'zh-hans' => 'chinês simplificado',
+ 'zh-hant' => 'chinês tradicional',
+ 'zu' => 'zulu',
+ 'zun' => 'zunhi',
+ 'zxx' => 'sem conteúdo linguístico',
+ 'zza' => 'zaza',
+);
+
+$currencyNames = array(
+ 'ADP' => 'Peseta de Andorra',
+ 'AED' => 'Dirrã dos Emirados Árabes Unidos',
+ 'AFA' => 'Afegane (1927–2002)',
+ 'AFN' => 'Afegane afegão',
+ 'ALK' => 'Lek Albanês (1946–1965)',
+ 'ALL' => 'Lek albanês',
+ 'AMD' => 'Dram armênio',
+ 'ANG' => 'Florim das Antilhas Holandesas',
+ 'AOA' => 'Kwanza angolano',
+ 'AOK' => 'Cuanza angolano (1977–1990)',
+ 'AON' => 'Novo cuanza angolano (1990–2000)',
+ 'AOR' => 'Cuanza angolano reajustado (1995–1999)',
+ 'ARA' => 'Austral argentino',
+ 'ARL' => 'Peso lei argentino (1970–1983)',
+ 'ARM' => 'Peso argentino (1881–1970)',
+ 'ARP' => 'Peso argentino (1983–1985)',
+ 'ARS' => 'Peso argentino',
+ 'ATS' => 'Xelim austríaco',
+ 'AUD' => 'Dólar australiano',
+ 'AWG' => 'Florim arubano',
+ 'AZM' => 'Manat azerbaijano (1993–2006)',
+ 'AZN' => 'Manat azeri',
+ 'BAD' => 'Dinar da Bósnia-Herzegovina (1992–1994)',
+ 'BAM' => 'Marco bósnio-herzegovino conversível',
+ 'BAN' => 'Novo dinar da Bósnia-Herzegovina (1994–1997)',
+ 'BBD' => 'Dólar barbadense',
+ 'BDT' => 'Taka bengalesa',
+ 'BEC' => 'Franco belga (conversível)',
+ 'BEF' => 'Franco belga',
+ 'BEL' => 'Franco belga (financeiro)',
+ 'BGL' => 'Lev forte búlgaro',
+ 'BGM' => 'Lev socialista búlgaro',
+ 'BGN' => 'Lev búlgaro',
+ 'BGO' => 'Lev búlgaro (1879–1952)',
+ 'BHD' => 'Dinar bareinita',
+ 'BIF' => 'Franco burundiano',
+ 'BMD' => 'Dólar bermudense',
+ 'BND' => 'Dólar bruneano',
+ 'BOB' => 'Boliviano',
+ 'BOL' => 'Boliviano (1863–1963)',
+ 'BOP' => 'Peso boliviano',
+ 'BOV' => 'Mvdol boliviano',
+ 'BRB' => 'Cruzeiro novo brasileiro (1967–1986)',
+ 'BRC' => 'Cruzado brasileiro (1986–1989)',
+ 'BRE' => 'Cruzeiro brasileiro (1990–1993)',
+ 'BRL' => 'Real brasileiro',
+ 'BRN' => 'Cruzado novo brasileiro (1989–1990)',
+ 'BRR' => 'Cruzeiro brasileiro (1993–1994)',
+ 'BRZ' => 'Cruzeiro brasileiro (1942–1967)',
+ 'BSD' => 'Dólar bahamense',
+ 'BTN' => 'Ngultrum butanês',
+ 'BUK' => 'Kyat birmanês',
+ 'BWP' => 'Pula botsuanesa',
+ 'BYB' => 'Rublo novo bielo-russo (1994–1999)',
+ 'BYR' => 'Rublo bielorrusso',
+ 'BZD' => 'Dólar belizenho',
+ 'CAD' => 'Dólar canadense',
+ 'CDF' => 'Franco congolês',
+ 'CHE' => 'Euro WIR',
+ 'CHF' => 'Franco suíço',
+ 'CHW' => 'Franco WIR',
+ 'CLE' => 'Escudo chileno',
+ 'CLF' => 'Unidades de Fomento chilenas',
+ 'CLP' => 'Peso chileno',
+ 'CNX' => 'Dólar do Banco Popular da China',
+ 'CNY' => 'Yuan chinês',
+ 'COP' => 'Peso colombiano',
+ 'COU' => 'Unidade de Valor Real',
+ 'CRC' => 'Colón costarriquenho',
+ 'CSD' => 'Dinar sérvio (2002–2006)',
+ 'CSK' => 'Coroa Forte checoslovaca',
+ 'CUC' => 'Peso cubano conversível',
+ 'CUP' => 'Peso cubano',
+ 'CVE' => 'Escudo cabo-verdiano',
+ 'CYP' => 'Libra cipriota',
+ 'CZK' => 'Coroa tcheca',
+ 'DDM' => 'Ostmark da Alemanha Oriental',
+ 'DEM' => 'Marco alemão',
+ 'DJF' => 'Franco djibutiense',
+ 'DKK' => 'Coroa dinamarquesa',
+ 'DOP' => 'Peso dominicano',
+ 'DZD' => 'Dinar argelino',
+ 'ECS' => 'Sucre equatoriano',
+ 'ECV' => 'Unidade de Valor Constante (UVC) do Equador',
+ 'EEK' => 'Coroa estoniana',
+ 'EGP' => 'Libra egípcia',
+ 'ERN' => 'Nakfa da Eritreia',
+ 'ESA' => 'Peseta espanhola (conta A)',
+ 'ESB' => 'Peseta espanhola (conta conversível)',
+ 'ESP' => 'Peseta espanhola',
+ 'ETB' => 'Birr etíope',
+ 'EUR' => 'Euro',
+ 'FIM' => 'Marca finlandesa',
+ 'FJD' => 'Dólar fijiano',
+ 'FKP' => 'Libra malvinense',
+ 'FRF' => 'Franco francês',
+ 'GBP' => 'Libra esterlina britânica',
+ 'GEK' => 'Cupom Lari georgiano',
+ 'GEL' => 'Lari georgiano',
+ 'GHC' => 'Cedi de Gana (1979–2007)',
+ 'GHS' => 'Cedi ganês',
+ 'GIP' => 'Libra de Gibraltar',
+ 'GMD' => 'Dalasi gambiano',
+ 'GNF' => 'Franco guineano',
+ 'GNS' => 'Syli da Guiné',
+ 'GQE' => 'Ekwele da Guiné Equatorial',
+ 'GRD' => 'Dracma grego',
+ 'GTQ' => 'Quetzal guatemalense',
+ 'GWE' => 'Escudo da Guiné Portuguesa',
+ 'GWP' => 'Peso da Guiné-Bissau',
+ 'GYD' => 'Dólar guianense',
+ 'HKD' => 'Dólar de Hong Kong',
+ 'HNL' => 'Lempira hondurenha',
+ 'HRD' => 'Dinar croata',
+ 'HRK' => 'Kuna croata',
+ 'HTG' => 'Gourde haitiano',
+ 'HUF' => 'Forint húngaro',
+ 'IDR' => 'Rupia indonésia',
+ 'IEP' => 'Libra irlandesa',
+ 'ILP' => 'Libra israelita',
+ 'ILR' => 'Sheqel antigo israelita',
+ 'ILS' => 'Sheqel novo israelita',
+ 'INR' => 'Rupia indiana',
+ 'IQD' => 'Dinar iraquiano',
+ 'IRR' => 'Rial iraniano',
+ 'ISJ' => 'Coroa antiga islandesa',
+ 'ISK' => 'Coroa islandesa',
+ 'ITL' => 'Lira italiana',
+ 'JMD' => 'Dólar jamaicano',
+ 'JOD' => 'Dinar jordaniano',
+ 'JPY' => 'Iene japonês',
+ 'KES' => 'Xelim queniano',
+ 'KGS' => 'Som quirguiz',
+ 'KHR' => 'Riel cambojano',
+ 'KMF' => 'Franco comorense',
+ 'KPW' => 'Won norte-coreano',
+ 'KRH' => 'Hwan da Coreia do Sul (1953–1962)',
+ 'KRO' => 'Won da Coreia do Sul (1945–1953)',
+ 'KRW' => 'Won sul-coreano',
+ 'KWD' => 'Dinar kuwaitiano',
+ 'KYD' => 'Dólar das Ilhas Caiman',
+ 'KZT' => 'Tenge cazaque',
+ 'LAK' => 'Kip laosiano',
+ 'LBP' => 'Libra libanesa',
+ 'LKR' => 'Rupia ceilandesa',
+ 'LRD' => 'Dólar liberiano',
+ 'LSL' => 'Loti do Lesoto',
+ 'LTL' => 'Litas lituano',
+ 'LTT' => 'Talonas lituano',
+ 'LUC' => 'Franco conversível de Luxemburgo',
+ 'LUF' => 'Franco luxemburguês',
+ 'LUL' => 'Franco financeiro de Luxemburgo',
+ 'LVL' => 'Lats letão',
+ 'LVR' => 'Rublo letão',
+ 'LYD' => 'Dinar líbio',
+ 'MAD' => 'Dirrã marroquino',
+ 'MAF' => 'Franco marroquino',
+ 'MCF' => 'Franco monegasco',
+ 'MDC' => 'Cupon moldávio',
+ 'MDL' => 'Leu moldávio',
+ 'MGA' => 'Ariary malgaxe',
+ 'MGF' => 'Franco de Madagascar',
+ 'MKD' => 'Dinar macedônio',
+ 'MKN' => 'Dinar macedônio (1992–1993)',
+ 'MLF' => 'Franco de Mali',
+ 'MMK' => 'Kyat mianmarense',
+ 'MNT' => 'Tugrik mongol',
+ 'MOP' => 'Pataca macaense',
+ 'MRO' => 'Ouguiya mauritana',
+ 'MTL' => 'Lira maltesa',
+ 'MTP' => 'Libra maltesa',
+ 'MUR' => 'Rupia mauriciana',
+ 'MVR' => 'Rupia maldiva',
+ 'MWK' => 'Kwacha malawiana',
+ 'MXN' => 'Peso mexicano',
+ 'MXP' => 'Peso Prata mexicano (1861–1992)',
+ 'MXV' => 'Unidade Mexicana de Investimento (UDI)',
+ 'MYR' => 'Ringgit malaio',
+ 'MZE' => 'Escudo de Moçambique',
+ 'MZM' => 'Metical de Moçambique (1980–2006)',
+ 'MZN' => 'Metical moçambicano',
+ 'NAD' => 'Dólar namibiano',
+ 'NGN' => 'Naira nigeriana',
+ 'NIC' => 'Córdoba nicaraguense (1988–1991)',
+ 'NIO' => 'Córdoba nicaraguense',
+ 'NLG' => 'Florim holandês',
+ 'NOK' => 'Coroa norueguesa',
+ 'NPR' => 'Rupia nepalesa',
+ 'NZD' => 'Dólar neozelandês',
+ 'OMR' => 'Rial omanense',
+ 'PAB' => 'Balboa panamenha',
+ 'PEI' => 'Inti peruano',
+ 'PEN' => 'Novo sol peruano',
+ 'PES' => 'Sol peruano (1863–1965)',
+ 'PGK' => 'Kina papuásia',
+ 'PHP' => 'Peso filipino',
+ 'PKR' => 'Rupia paquistanesa',
+ 'PLN' => 'Zloti polonês',
+ 'PLZ' => 'Zloti polonês (1950–1995)',
+ 'PTE' => 'Escudo português',
+ 'PYG' => 'Guarani paraguaio',
+ 'QAR' => 'Rial catariano',
+ 'RHD' => 'Dólar rodesiano',
+ 'ROL' => 'Leu romeno (1952–2006)',
+ 'RON' => 'Leu romeno',
+ 'RSD' => 'Dinar sérvio',
+ 'RUB' => 'Rublo russo',
+ 'RUR' => 'Rublo russo (1991–1998)',
+ 'RWF' => 'Franco ruandês',
+ 'SAR' => 'Riyal saudita',
+ 'SBD' => 'Dólar das Ilhas Salomão',
+ 'SCR' => 'Rupia seichelense',
+ 'SDD' => 'Dinar sudanês (1992–2007)',
+ 'SDG' => 'Libra sudanesa',
+ 'SDP' => 'Libra sudanesa (1957–1998)',
+ 'SEK' => 'Coroa sueca',
+ 'SGD' => 'Dólar singapuriano',
+ 'SHP' => 'Libra de Santa Helena',
+ 'SIT' => 'Tolar Bons esloveno',
+ 'SKK' => 'Coroa eslovaca',
+ 'SLL' => 'Leone de Serra Leoa',
+ 'SOS' => 'Xelim somaliano',
+ 'SRD' => 'Dólar surinamês',
+ 'SRG' => 'Florim do Suriname',
+ 'SSP' => 'Libra sul-sudanesa',
+ 'STD' => 'Dobra de São Tomé e Príncipe',
+ 'SUR' => 'Rublo soviético',
+ 'SVC' => 'Colom salvadorenho',
+ 'SYP' => 'Libra síria',
+ 'SZL' => 'Lilangeni suazi',
+ 'THB' => 'Baht tailandês',
+ 'TJR' => 'Rublo do Tadjiquistão',
+ 'TJS' => 'Somoni tadjique',
+ 'TMM' => 'Manat do Turcomenistão (1993–2009)',
+ 'TMT' => 'Manat turcomeno',
+ 'TND' => 'Dinar tunisiano',
+ 'TOP' => 'Paʻanga tonganesa',
+ 'TPE' => 'Escudo timorense',
+ 'TRL' => 'Lira turca (1922–2005)',
+ 'TRY' => 'Lira turca',
+ 'TTD' => 'Dólar de Trinidad e Tobago',
+ 'TWD' => 'Novo dólar taiwanês',
+ 'TZS' => 'Xelim tanzaniano',
+ 'UAH' => 'Hryvnia ucraniano',
+ 'UAK' => 'Karbovanetz ucraniano',
+ 'UGS' => 'Xelim ugandense (1966–1987)',
+ 'UGX' => 'Xelim ugandense',
+ 'USD' => 'Dólar americano',
+ 'USN' => 'Dólar norte-americano (Dia seguinte)',
+ 'USS' => 'Dólar norte-americano (Mesmo dia)',
+ 'UYI' => 'Peso uruguaio en unidades indexadas',
+ 'UYP' => 'Peso uruguaio (1975–1993)',
+ 'UYU' => 'Peso uruguaio',
+ 'UZS' => 'Som uzbeque',
+ 'VEB' => 'Bolívar venezuelano (1871–2008)',
+ 'VEF' => 'Bolívar venezuelano',
+ 'VND' => 'Dong vietnamita',
+ 'VNN' => 'Dong vietnamita (1978–1985)',
+ 'VUV' => 'Vatu vanuatuense',
+ 'WST' => 'Tala samoano',
+ 'XAF' => 'Franco CFA de BEAC',
+ 'XAG' => 'Prata',
+ 'XAU' => 'Ouro',
+ 'XBA' => 'Unidade Composta Europeia',
+ 'XBB' => 'Unidade Monetária Europeia',
+ 'XBC' => 'Unidade de Conta Europeia (XBC)',
+ 'XBD' => 'Unidade de Conta Europeia (XBD)',
+ 'XCD' => 'Dólar do Caribe Oriental',
+ 'XDR' => 'Direitos Especiais de Giro',
+ 'XEU' => 'Unidade de Moeda Europeia',
+ 'XFO' => 'Franco-ouro francês',
+ 'XFU' => 'Franco UIC francês',
+ 'XOF' => 'Franco CFA de BCEAO',
+ 'XPD' => 'Paládio',
+ 'XPF' => 'Franco CFP',
+ 'XPT' => 'Platina',
+ 'XRE' => 'Fundos RINET',
+ 'XTS' => 'Código de Moeda de Teste',
+ 'XXX' => 'Moeda desconhecida',
+ 'YDD' => 'Dinar iemenita',
+ 'YER' => 'Rial iemenita',
+ 'YUD' => 'Dinar forte iugoslavo (1966–1990)',
+ 'YUM' => 'Dinar noviy iugoslavo (1994–2002)',
+ 'YUN' => 'Dinar conversível iugoslavo (1990–1992)',
+ 'YUR' => 'Dinar reformado iugoslavo (1992–1993)',
+ 'ZAL' => 'Rand sul-africano (financeiro)',
+ 'ZAR' => 'Rand sul-africano',
+ 'ZMK' => 'Cuacha zambiano (1968–2012)',
+ 'ZMW' => 'Kwacha zambiano',
+ 'ZRN' => 'Zaire Novo zairense (1993–1998)',
+ 'ZRZ' => 'Zaire zairense (1971–1993)',
+ 'ZWD' => 'Dólar do Zimbábue (1980–2008)',
+ 'ZWL' => 'Dólar do Zimbábue (2009)',
+ 'ZWR' => 'Dólar do Zimbábue (2008)',
+);
+
+$currencySymbols = array(
+ 'AED' => 'AED',
+ 'AFN' => 'AFN',
+ 'ALL' => 'ALL',
+ 'AMD' => 'AMD',
+ 'ANG' => 'ANG',
+ 'AOA' => 'AOA',
+ 'ARS' => 'ARS',
+ 'AUD' => 'AU$',
+ 'AWG' => 'AWG',
+ 'AZN' => 'AZN',
+ 'BAM' => 'BAM',
+ 'BBD' => 'BBD',
+ 'BDT' => 'BDT',
+ 'BGN' => 'BGN',
+ 'BHD' => 'BHD',
+ 'BIF' => 'BIF',
+ 'BMD' => 'BMD',
+ 'BND' => 'BND',
+ 'BOB' => 'BOB',
+ 'BRL' => 'R$',
+ 'BSD' => 'BSD',
+ 'BTN' => 'BTN',
+ 'BWP' => 'BWP',
+ 'BYR' => 'BYR',
+ 'BZD' => 'BZD',
+ 'CAD' => 'CA$',
+ 'CDF' => 'CDF',
+ 'CHF' => 'CHF',
+ 'CLP' => 'CLP',
+ 'CNY' => 'CN¥',
+ 'COP' => 'COP',
+ 'CRC' => 'CRC',
+ 'CUC' => 'CUC',
+ 'CUP' => 'CUP',
+ 'CVE' => 'CVE',
+ 'CZK' => 'CZK',
+ 'DJF' => 'DJF',
+ 'DKK' => 'DKK',
+ 'DOP' => 'DOP',
+ 'DZD' => 'DZD',
+ 'EGP' => 'EGP',
+ 'ERN' => 'ERN',
+ 'ETB' => 'ETB',
+ 'EUR' => '€',
+ 'FJD' => 'FJD',
+ 'FKP' => 'FKP',
+ 'GBP' => '£',
+ 'GEL' => 'GEL',
+ 'GHS' => 'GHS',
+ 'GIP' => 'GIP',
+ 'GMD' => 'GMD',
+ 'GNF' => 'GNF',
+ 'GTQ' => 'GTQ',
+ 'GYD' => 'GYD',
+ 'HKD' => 'HK$',
+ 'HNL' => 'HNL',
+ 'HRK' => 'HRK',
+ 'HTG' => 'HTG',
+ 'HUF' => 'HUF',
+ 'IDR' => 'IDR',
+ 'ILS' => '₪',
+ 'INR' => '₹',
+ 'IQD' => 'IQD',
+ 'IRR' => 'IRR',
+ 'ISK' => 'ISK',
+ 'JMD' => 'JMD',
+ 'JOD' => 'JOD',
+ 'JPY' => 'JP¥',
+ 'KES' => 'KES',
+ 'KGS' => 'KGS',
+ 'KHR' => 'KHR',
+ 'KMF' => 'KMF',
+ 'KPW' => 'KPW',
+ 'KRW' => '₩',
+ 'KWD' => 'KWD',
+ 'KYD' => 'KYD',
+ 'KZT' => 'KZT',
+ 'LAK' => 'LAK',
+ 'LBP' => 'LBP',
+ 'LKR' => 'LKR',
+ 'LRD' => 'LRD',
+ 'LTL' => 'LTL',
+ 'LVL' => 'LVL',
+ 'LYD' => 'LYD',
+ 'MAD' => 'MAD',
+ 'MDL' => 'MDL',
+ 'MGA' => 'MGA',
+ 'MKD' => 'MKD',
+ 'MMK' => 'MMK',
+ 'MNT' => 'MNT',
+ 'MOP' => 'MOP',
+ 'MRO' => 'MRO',
+ 'MUR' => 'MUR',
+ 'MVR' => 'MVR',
+ 'MWK' => 'MWK',
+ 'MXN' => 'MX$',
+ 'MYR' => 'MYR',
+ 'MZN' => 'MZN',
+ 'NAD' => 'NAD',
+ 'NGN' => 'NGN',
+ 'NIO' => 'NIO',
+ 'NOK' => 'NOK',
+ 'NPR' => 'NPR',
+ 'NZD' => 'NZ$',
+ 'OMR' => 'OMR',
+ 'PAB' => 'PAB',
+ 'PEN' => 'PEN',
+ 'PGK' => 'PGK',
+ 'PHP' => 'PHP',
+ 'PKR' => 'PKR',
+ 'PLN' => 'PLN',
+ 'PTE' => 'Esc.',
+ 'PYG' => 'PYG',
+ 'QAR' => 'QAR',
+ 'RON' => 'RON',
+ 'RSD' => 'RSD',
+ 'RUB' => 'RUB',
+ 'RWF' => 'RWF',
+ 'SAR' => 'SAR',
+ 'SBD' => 'SBD',
+ 'SCR' => 'SCR',
+ 'SDG' => 'SDG',
+ 'SEK' => 'SEK',
+ 'SGD' => 'SGD',
+ 'SHP' => 'SHP',
+ 'SLL' => 'SLL',
+ 'SOS' => 'SOS',
+ 'SRD' => 'SRD',
+ 'SSP' => 'SSP',
+ 'STD' => 'STD',
+ 'SYP' => 'SYP',
+ 'SZL' => 'SZL',
+ 'THB' => '฿',
+ 'TJS' => 'TJS',
+ 'TMT' => 'TMT',
+ 'TND' => 'TND',
+ 'TOP' => 'TOP',
+ 'TRY' => 'TRY',
+ 'TTD' => 'TTD',
+ 'TWD' => 'NT$',
+ 'TZS' => 'TZS',
+ 'UAH' => 'UAH',
+ 'UGX' => 'UGX',
+ 'USD' => 'US$',
+ 'UYU' => 'UYU',
+ 'UZS' => 'UZS',
+ 'VEF' => 'VEF',
+ 'VND' => '₫',
+ 'VUV' => 'VUV',
+ 'WST' => 'WST',
+ 'XAF' => 'FCFA',
+ 'XCD' => 'EC$',
+ 'XOF' => 'CFA',
+ 'XPF' => 'CFPF',
+ 'YER' => 'YER',
+ 'ZAR' => 'ZAR',
+ 'ZMK' => 'ZMK',
+ 'ZMW' => 'ZMW',
+);
+
+$countryNames = array(
+ 'AC' => 'Ilha de Ascensão',
+ 'AD' => 'Andorra',
+ 'AE' => 'Emirados Árabes Unidos',
+ 'AF' => 'Afeganistão',
+ 'AG' => 'Antígua e Barbuda',
+ 'AI' => 'Anguilla',
+ 'AL' => 'Albânia',
+ 'AM' => 'Armênia',
+ 'AN' => 'Antilhas Holandesas',
+ 'AO' => 'Angola',
+ 'AQ' => 'Antártida',
+ 'AR' => 'Argentina',
+ 'AS' => 'Samoa Americana',
+ 'AT' => 'Áustria',
+ 'AU' => 'Austrália',
+ 'AW' => 'Aruba',
+ 'AX' => 'Ilhas Åland',
+ 'AZ' => 'Azerbaijão',
+ 'BA' => 'Bósnia e Herzegovina',
+ 'BB' => 'Barbados',
+ 'BD' => 'Bangladesh',
+ 'BE' => 'Bélgica',
+ 'BF' => 'Burquina Faso',
+ 'BG' => 'Bulgária',
+ 'BH' => 'Bahrein',
+ 'BI' => 'Burundi',
+ 'BJ' => 'Benin',
+ 'BL' => 'São Bartolomeu',
+ 'BM' => 'Bermudas',
+ 'BN' => 'Brunei',
+ 'BO' => 'Bolívia',
+ 'BQ' => 'Países Baixos Caribenhos',
+ 'BR' => 'Brasil',
+ 'BS' => 'Bahamas',
+ 'BT' => 'Butão',
+ 'BV' => 'Ilha Bouvet',
+ 'BW' => 'Botsuana',
+ 'BY' => 'Bielorrússia',
+ 'BZ' => 'Belize',
+ 'CA' => 'Canadá',
+ 'CC' => 'Ilhas Cocos (Keeling)',
+ 'CD' => 'Congo - Kinshasa',
+ 'CF' => 'República Centro-Africana',
+ 'CG' => 'Congo - Brazzaville',
+ 'CH' => 'Suíça',
+ 'CI' => 'Costa do Marfim',
+ 'CK' => 'Ilhas Cook',
+ 'CL' => 'Chile',
+ 'CM' => 'República dos Camarões',
+ 'CN' => 'China',
+ 'CO' => 'Colômbia',
+ 'CP' => 'Ilha de Clipperton',
+ 'CR' => 'Costa Rica',
+ 'CU' => 'Cuba',
+ 'CV' => 'Cabo Verde',
+ 'CW' => 'Curaçao',
+ 'CX' => 'Ilha Christmas',
+ 'CY' => 'Chipre',
+ 'CZ' => 'República Tcheca',
+ 'DE' => 'Alemanha',
+ 'DG' => 'Diego Garcia',
+ 'DJ' => 'Djibuti',
+ 'DK' => 'Dinamarca',
+ 'DM' => 'Dominica',
+ 'DO' => 'República Dominicana',
+ 'DZ' => 'Argélia',
+ 'EA' => 'Ceuta e Melilha',
+ 'EC' => 'Equador',
+ 'EE' => 'Estônia',
+ 'EG' => 'Egito',
+ 'EH' => 'Saara Ocidental',
+ 'ER' => 'Eritreia',
+ 'ES' => 'Espanha',
+ 'ET' => 'Etiópia',
+ 'EU' => 'União Europeia',
+ 'FI' => 'Finlândia',
+ 'FJ' => 'Fiji',
+ 'FK' => 'Ilhas Malvinas',
+ 'FM' => 'Micronésia',
+ 'FO' => 'Ilhas Faroe',
+ 'FR' => 'França',
+ 'GA' => 'Gabão',
+ 'GB' => 'Reino Unido',
+ 'GD' => 'Granada',
+ 'GE' => 'Geórgia',
+ 'GF' => 'Guiana Francesa',
+ 'GG' => 'Guernsey',
+ 'GH' => 'Gana',
+ 'GI' => 'Gibraltar',
+ 'GL' => 'Groenlândia',
+ 'GM' => 'Gâmbia',
+ 'GN' => 'Guiné',
+ 'GP' => 'Guadalupe',
+ 'GQ' => 'Guiné Equatorial',
+ 'GR' => 'Grécia',
+ 'GS' => 'Geórgia do Sul e Ilhas Sandwich do Sul',
+ 'GT' => 'Guatemala',
+ 'GU' => 'Guam',
+ 'GW' => 'Guiné Bissau',
+ 'GY' => 'Guiana',
+ 'HK' => 'Hong Kong',
+ 'HM' => 'Ilhas Heard e McDonald',
+ 'HN' => 'Honduras',
+ 'HR' => 'Croácia',
+ 'HT' => 'Haiti',
+ 'HU' => 'Hungria',
+ 'IC' => 'Ilhas Canárias',
+ 'ID' => 'Indonésia',
+ 'IE' => 'Irlanda',
+ 'IL' => 'Israel',
+ 'IM' => 'Ilha de Man',
+ 'IN' => 'Índia',
+ 'IO' => 'Território Britânico do Oceano Índico',
+ 'IQ' => 'Iraque',
+ 'IR' => 'Irã',
+ 'IS' => 'Islândia',
+ 'IT' => 'Itália',
+ 'JE' => 'Jersey',
+ 'JM' => 'Jamaica',
+ 'JO' => 'Jordânia',
+ 'JP' => 'Japão',
+ 'KE' => 'Quênia',
+ 'KG' => 'Quirguistão',
+ 'KH' => 'Camboja',
+ 'KI' => 'Quiribati',
+ 'KM' => 'Comores',
+ 'KN' => 'São Cristóvão e Nevis',
+ 'KP' => 'Coreia do Norte',
+ 'KR' => 'Coreia do Sul',
+ 'KW' => 'Kuwait',
+ 'KY' => 'Ilhas Caiman',
+ 'KZ' => 'Cazaquistão',
+ 'LA' => 'Laos',
+ 'LB' => 'Líbano',
+ 'LC' => 'Santa Lúcia',
+ 'LI' => 'Liechtenstein',
+ 'LK' => 'Sri Lanka',
+ 'LR' => 'Libéria',
+ 'LS' => 'Lesoto',
+ 'LT' => 'Lituânia',
+ 'LU' => 'Luxemburgo',
+ 'LV' => 'Letônia',
+ 'LY' => 'Líbia',
+ 'MA' => 'Marrocos',
+ 'MC' => 'Mônaco',
+ 'MD' => 'Moldávia',
+ 'ME' => 'Montenegro',
+ 'MF' => 'São Martinho',
+ 'MG' => 'Madagascar',
+ 'MH' => 'Ilhas Marshall',
+ 'MK' => 'Macedônia',
+ 'ML' => 'Mali',
+ 'MM' => 'Mianmar (Birmânia)',
+ 'MN' => 'Mongólia',
+ 'MO' => 'Macau',
+ 'MP' => 'Ilhas Marianas do Norte',
+ 'MQ' => 'Martinica',
+ 'MR' => 'Mauritânia',
+ 'MS' => 'Montserrat',
+ 'MT' => 'Malta',
+ 'MU' => 'Maurício',
+ 'MV' => 'Maldivas',
+ 'MW' => 'Malawi',
+ 'MX' => 'México',
+ 'MY' => 'Malásia',
+ 'MZ' => 'Moçambique',
+ 'NA' => 'Namíbia',
+ 'NC' => 'Nova Caledônia',
+ 'NE' => 'Níger',
+ 'NF' => 'Ilha Norfolk',
+ 'NG' => 'Nigéria',
+ 'NI' => 'Nicarágua',
+ 'NL' => 'Holanda',
+ 'NO' => 'Noruega',
+ 'NP' => 'Nepal',
+ 'NR' => 'Nauru',
+ 'NU' => 'Niue',
+ 'NZ' => 'Nova Zelândia',
+ 'OM' => 'Omã',
+ 'PA' => 'Panamá',
+ 'PE' => 'Peru',
+ 'PF' => 'Polinésia Francesa',
+ 'PG' => 'Papua-Nova Guiné',
+ 'PH' => 'Filipinas',
+ 'PK' => 'Paquistão',
+ 'PL' => 'Polônia',
+ 'PM' => 'Saint Pierre e Miquelon',
+ 'PN' => 'Ilhas Pitcairn',
+ 'PR' => 'Porto Rico',
+ 'PS' => 'Palestina',
+ 'PT' => 'Portugal',
+ 'PW' => 'Palau',
+ 'PY' => 'Paraguai',
+ 'QA' => 'Catar',
+ 'QO' => 'Oceania Remota',
+ 'RE' => 'Reunião',
+ 'RO' => 'Romênia',
+ 'RS' => 'Sérvia',
+ 'RU' => 'Rússia',
+ 'RW' => 'Ruanda',
+ 'SA' => 'Arábia Saudita',
+ 'SB' => 'Ilhas Salomão',
+ 'SC' => 'Seychelles',
+ 'SD' => 'Sudão',
+ 'SE' => 'Suécia',
+ 'SG' => 'Cingapura',
+ 'SH' => 'Santa Helena',
+ 'SI' => 'Eslovênia',
+ 'SJ' => 'Svalbard e Jan Mayen',
+ 'SK' => 'Eslováquia',
+ 'SL' => 'Serra Leoa',
+ 'SM' => 'San Marino',
+ 'SN' => 'Senegal',
+ 'SO' => 'Somália',
+ 'SR' => 'Suriname',
+ 'SS' => 'Sudão do Sul',
+ 'ST' => 'São Tomé e Príncipe',
+ 'SV' => 'El Salvador',
+ 'SX' => 'Sint Maarten',
+ 'SY' => 'Síria',
+ 'SZ' => 'Suazilândia',
+ 'TA' => 'Tristão da Cunha',
+ 'TC' => 'Ilhas Turks e Caicos',
+ 'TD' => 'Chade',
+ 'TF' => 'Territórios Franceses do Sul',
+ 'TG' => 'Togo',
+ 'TH' => 'Tailândia',
+ 'TJ' => 'Tajiquistão',
+ 'TK' => 'Tokelau',
+ 'TL' => 'Timor-Leste',
+ 'TM' => 'Turcomenistão',
+ 'TN' => 'Tunísia',
+ 'TO' => 'Tonga',
+ 'TR' => 'Turquia',
+ 'TT' => 'Trinidad e Tobago',
+ 'TV' => 'Tuvalu',
+ 'TW' => 'Taiwan',
+ 'TZ' => 'Tanzânia',
+ 'UA' => 'Ucrânia',
+ 'UG' => 'Uganda',
+ 'UM' => 'Ilhas Distantes dos EUA',
+ 'US' => 'EUA',
+ 'UY' => 'Uruguai',
+ 'UZ' => 'Uzbequistão',
+ 'VA' => 'Cidade do Vaticano',
+ 'VC' => 'São Vicente e Granadinas',
+ 'VE' => 'Venezuela',
+ 'VG' => 'Ilhas Virgens Britânicas',
+ 'VI' => 'Ilhas Virgens dos EUA',
+ 'VN' => 'Vietnã',
+ 'VU' => 'Vanuatu',
+ 'WF' => 'Wallis e Futuna',
+ 'WS' => 'Samoa',
+ 'XK' => 'Kosovo',
+ 'YE' => 'Iêmen',
+ 'YT' => 'Mayotte',
+ 'ZA' => 'África do Sul',
+ 'ZM' => 'Zâmbia',
+ 'ZW' => 'Zimbábue',
+);
+
+$timeUnits = array(
+ 'day-future-one' => 'Dentro de {0} dia',
+ 'day-future-other' => 'Dentro de {0} dias',
+ 'day-narrow-future-one' => '+{0} dia',
+ 'day-narrow-future-other' => '+{0} dias',
+ 'day-narrow-past-one' => '-{0} dia',
+ 'day-narrow-past-other' => '-{0} dias',
+ 'day-one' => '{0} dia',
+ 'day-other' => '{0} dias',
+ 'day-past-one' => 'Há {0} dia',
+ 'day-past-other' => 'Há {0} dias',
+ 'day-short-future-one' => 'Dentro de {0} dia',
+ 'day-short-future-other' => 'Dentro de {0} dias',
+ 'day-short-past-one' => 'Há {0} dia',
+ 'day-short-past-other' => 'Há {0} dias',
+ 'hour-future-one' => 'Dentro de {0} hora',
+ 'hour-future-other' => 'Dentro de {0} horas',
+ 'hour-narrow-future-one' => '+{0} h',
+ 'hour-narrow-future-other' => '+{0} h',
+ 'hour-narrow-past-one' => '-{0} h',
+ 'hour-narrow-past-other' => '-{0} h',
+ 'hour-one' => '{0} hora',
+ 'hour-other' => '{0} horas',
+ 'hour-past-one' => 'Há {0} hora',
+ 'hour-past-other' => 'Há {0} horas',
+ 'hour-short-future-one' => 'Dentro de {0} h',
+ 'hour-short-future-other' => 'Dentro de {0} h',
+ 'hour-short-past-one' => 'Há {0} h',
+ 'hour-short-past-other' => 'Há {0} h',
+ 'microsecond-one' => '{0} microssegundo',
+ 'microsecond-other' => '{0} microssegundos',
+ 'millisecond-one' => '{0} milissegundo',
+ 'millisecond-other' => '{0} milissegundos',
+ 'minute-future-one' => 'Dentro de {0} minuto',
+ 'minute-future-other' => 'Dentro de {0} minutos',
+ 'minute-narrow-future-one' => '+{0} m',
+ 'minute-narrow-future-other' => '+{0} m',
+ 'minute-narrow-past-one' => '-{0} m',
+ 'minute-narrow-past-other' => '-{0} m',
+ 'minute-one' => '{0} minuto',
+ 'minute-other' => '{0} minutos',
+ 'minute-past-one' => 'Há {0} minuto',
+ 'minute-past-other' => 'Há {0} minutos',
+ 'minute-short-future-one' => 'Dentro de {0} min.',
+ 'minute-short-future-other' => 'Dentro de {0} min',
+ 'minute-short-past-one' => 'Há {0} min.',
+ 'minute-short-past-other' => 'Há {0} min',
+ 'month-future-one' => 'Dentro de {0} mês',
+ 'month-future-other' => 'Dentro de {0} meses',
+ 'month-narrow-future-one' => '+{0} mês',
+ 'month-narrow-future-other' => '+{0} meses',
+ 'month-narrow-past-one' => '-{0} mês',
+ 'month-narrow-past-other' => '-{0} meses',
+ 'month-one' => '{0} mês',
+ 'month-other' => '{0} meses',
+ 'month-past-one' => 'Há {0} mês',
+ 'month-past-other' => 'Há {0} meses',
+ 'month-short-future-one' => 'Dentro de {0} mês',
+ 'month-short-future-other' => 'Dentro de {0} meses',
+ 'month-short-past-one' => 'Há {0} mês',
+ 'month-short-past-other' => 'Há {0} meses',
+ 'nanosecond-one' => '{0} nanossegundo',
+ 'nanosecond-other' => '{0} nanossegundos',
+ 'quarter-future-one' => 'Dentro de {0} trimestre',
+ 'quarter-future-other' => 'Dentro de {0} trimestres',
+ 'quarter-narrow-future-one' => '+{0} trim.',
+ 'quarter-narrow-future-other' => '+{0} trims.',
+ 'quarter-narrow-past-one' => '-{0} trim.',
+ 'quarter-narrow-past-other' => '-{0} trims.',
+ 'quarter-past-one' => 'Há {0} trimestre',
+ 'quarter-past-other' => 'Há {0} trimestres',
+ 'quarter-short-future-one' => 'Dentro de {0} trim.',
+ 'quarter-short-future-other' => 'Dentro de {0} trims.',
+ 'quarter-short-past-one' => 'Há {0} trim.',
+ 'quarter-short-past-other' => 'Há {0} trims.',
+ 'second-future-one' => 'Dentro de {0} segundo',
+ 'second-future-other' => 'Dentro de {0} segundos',
+ 'second-narrow-future-one' => '+{0} s',
+ 'second-narrow-future-other' => '+{0} s',
+ 'second-narrow-past-one' => '-{0} s',
+ 'second-narrow-past-other' => '-{0} s',
+ 'second-one' => '{0} segundo',
+ 'second-other' => '{0} segundos',
+ 'second-past-one' => 'Há {0} segundo',
+ 'second-past-other' => 'Há {0} segundos',
+ 'second-short-future-one' => 'Dentro de {0} seg.',
+ 'second-short-future-other' => 'Dentro de {0} seg.',
+ 'second-short-past-one' => 'Há {0} seg.',
+ 'second-short-past-other' => 'Há {0} seg.',
+ 'week-future-one' => 'Dentro de {0} semana',
+ 'week-future-other' => 'Dentro de {0} semanas',
+ 'week-narrow-future-one' => '+{0} sem.',
+ 'week-narrow-future-other' => '+{0} sem.',
+ 'week-narrow-past-one' => '-{0} sem.',
+ 'week-narrow-past-other' => '-{0} sem.',
+ 'week-one' => '{0} semana',
+ 'week-other' => '{0} semanas',
+ 'week-past-one' => 'Há {0} semana',
+ 'week-past-other' => 'Há {0} semanas',
+ 'week-short-future-one' => 'Dentro de {0} sem.',
+ 'week-short-future-other' => 'Dentro de {0} sem.',
+ 'week-short-past-one' => 'Há {0} sem.',
+ 'week-short-past-other' => 'Há {0} sem.',
+ 'year-future-one' => 'Dentro de {0} ano',
+ 'year-future-other' => 'Dentro de {0} anos',
+ 'year-narrow-future-one' => '+{0} ano',
+ 'year-narrow-future-other' => '+{0} anos',
+ 'year-narrow-past-one' => '-{0} ano',
+ 'year-narrow-past-other' => '-{0} anos',
+ 'year-one' => '{0} ano',
+ 'year-other' => '{0} anos',
+ 'year-past-one' => 'Há {0} ano',
+ 'year-past-other' => 'Há {0} anos',
+ 'year-short-future-one' => 'Dentro de {0} ano',
+ 'year-short-future-other' => 'Dentro de {0} anos',
+ 'year-short-past-one' => 'Há {0} ano',
+ 'year-short-past-other' => 'Há {0} anos',
+);
diff --git a/MLEB/cldr/CldrNames/CldrNamesQu.php b/MLEB/cldr/CldrNames/CldrNamesQu.php
new file mode 100644
index 00000000..0667f678
--- /dev/null
+++ b/MLEB/cldr/CldrNames/CldrNamesQu.php
@@ -0,0 +1,325 @@
+<?php
+
+$languageNames = array(
+ 'af' => 'Afrikaans Simi',
+ 'am' => 'Amarico Simi',
+ 'ar' => 'Arabe Simi',
+ 'arn' => 'Mapuche Simi',
+ 'as' => 'Asames Simi',
+ 'az' => 'Azerbaiyano Simi',
+ 'ba' => 'Baskir Simi',
+ 'be' => 'Bielorruso Simi',
+ 'bg' => 'Bulgaro Simi',
+ 'bn' => 'Bangla Simi',
+ 'bo' => 'Tibetano Simi',
+ 'br' => 'Breton Simi',
+ 'bs' => 'Bosnio Simi',
+ 'ca' => 'Catalan Simi',
+ 'chr' => 'Cheroqui Simi',
+ 'ckb' => 'Chawpi Kurdo Simi',
+ 'co' => 'Corso Simi',
+ 'cs' => 'Checo Simi',
+ 'cy' => 'Gales Simi',
+ 'da' => 'Danes Simi',
+ 'de' => 'Aleman Simi',
+ 'dsb' => 'Bajo Sorbio Simi',
+ 'dv' => 'Divehi Simi',
+ 'el' => 'Griego Simi',
+ 'en' => 'Ingles Simi',
+ 'es' => 'Español Simi',
+ 'et' => 'Estonio Simi',
+ 'eu' => 'Euskera Simi',
+ 'fa' => 'Persa Simi',
+ 'ff' => 'Fulah Simi',
+ 'fi' => 'Fines Simi',
+ 'fil' => 'Filipino Simi',
+ 'fo' => 'Feroes Simi',
+ 'fr' => 'Frances Simi',
+ 'fy' => 'Frison Simi',
+ 'ga' => 'Irlandes Simi',
+ 'gd' => 'Gaelico Escoces Simi',
+ 'gl' => 'Gallego Simi',
+ 'gsw' => 'Alsaciano Simi',
+ 'gu' => 'Gujarati Simi',
+ 'ha' => 'Hausa Simi',
+ 'he' => 'Hebreo Simi',
+ 'hi' => 'Hindi Simi',
+ 'hmn' => 'Hmong Daw Simi',
+ 'hr' => 'Croata Simi',
+ 'hsb' => 'Alto Sorbio Simi',
+ 'ht' => 'Haitiano Criollo Simi',
+ 'hu' => 'Hungaro Simi',
+ 'hy' => 'Armenio Simi',
+ 'id' => 'Indonesio Simi',
+ 'ig' => 'Igbo Simi',
+ 'ii' => 'Yi Simi',
+ 'is' => 'Islandes Simi',
+ 'it' => 'Italiano Simi',
+ 'iu' => 'Inuktitut Simi',
+ 'ja' => 'Japones Simi',
+ 'ka' => 'Georgiano Simi',
+ 'kk' => 'Kazajo Simi',
+ 'kl' => 'Groenlandes Simi',
+ 'km' => 'Khmer Simi',
+ 'kn' => 'Kannada Simi',
+ 'ko' => 'Coreano Simi',
+ 'kok' => 'Konkani Simi',
+ 'ky' => 'Kirghiz Simi',
+ 'lb' => 'Luxemburgues Simi',
+ 'lo' => 'Lao Simi',
+ 'lt' => 'Lituano Simi',
+ 'lv' => 'Leton Simi',
+ 'mi' => 'Maori Simi',
+ 'mk' => 'Macedonio Simi',
+ 'ml' => 'Malayalam Simi',
+ 'mn' => 'Mongol Simi',
+ 'moh' => 'Mohawk Simi',
+ 'mr' => 'Marathi Simi',
+ 'ms' => 'Malayo Simi',
+ 'mt' => 'Maltes Simi',
+ 'ne' => 'Nepali Simi',
+ 'nl' => 'Neerlandes Simi',
+ 'no' => 'Noruego Simi',
+ 'nso' => 'Sesotho Sa Leboa Simi',
+ 'oc' => 'Occitano Simi',
+ 'or' => 'Odia Simi',
+ 'pa' => 'Punyabi Simi',
+ 'pap' => 'Papiamento Simi',
+ 'pl' => 'Polaco Simi',
+ 'ps' => 'Pashto Simi',
+ 'pt' => 'Portugues Simi',
+ 'qu' => 'Runasimi',
+ 'quc' => 'Kʼicheʼ Simi',
+ 'rm' => 'Romanche Simi',
+ 'ro' => 'Rumano Simi',
+ 'ru' => 'Ruso Simi',
+ 'rw' => 'Kinyarwanda Simi',
+ 'sa' => 'Sanscrito Simi',
+ 'sah' => 'Sakha Simi',
+ 'sd' => 'Sindhi Simi',
+ 'se' => 'Chincha Sami Simi',
+ 'si' => 'Cingales Simi',
+ 'sk' => 'Eslovaco Simi',
+ 'sl' => 'Esloveno Simi',
+ 'sma' => 'Qulla Sami Simi',
+ 'smj' => 'Sami Lule Simi',
+ 'smn' => 'Sami Inari Simi',
+ 'sms' => 'Sami Skolt Simi',
+ 'sq' => 'Albanes Simi',
+ 'sr' => 'Serbio Simi',
+ 'sv' => 'Sueco Simi',
+ 'sw' => 'Suajili Simi',
+ 'syr' => 'Siriaco Simi',
+ 'ta' => 'Tamil Simi',
+ 'te' => 'Telugu Simi',
+ 'tg' => 'Tayiko Simi',
+ 'th' => 'Tailandes Simi',
+ 'ti' => 'Tigriña Simi',
+ 'tk' => 'Turcomano Simi',
+ 'tn' => 'Setsuana Simi',
+ 'tr' => 'Turco Simi',
+ 'tt' => 'Tartaro Simi',
+ 'ug' => 'Uigur Simi',
+ 'uk' => 'Ucraniano Simi',
+ 'ur' => 'Urdu Simi',
+ 'uz' => 'Uzbeko Simi',
+ 'vi' => 'Vietnamita Simi',
+ 'wo' => 'Wolof Simi',
+ 'xh' => 'Isixhosa Simi',
+ 'yo' => 'Yoruba Simi',
+ 'zh' => 'Chino Simi',
+ 'zu' => 'Isizulu Simi',
+);
+
+$countryNames = array(
+ 'AD' => 'Andorra',
+ 'AF' => 'Afganistán',
+ 'AL' => 'Albania',
+ 'AM' => 'Armenia',
+ 'AO' => 'Angola',
+ 'AR' => 'Argentina',
+ 'AS' => 'Samoa Americana',
+ 'AT' => 'Austria',
+ 'AU' => 'Australia',
+ 'AZ' => 'Azerbaiyán',
+ 'BD' => 'Bangladesh',
+ 'BE' => 'Bélgica',
+ 'BG' => 'Bulgaria',
+ 'BH' => 'Bahréin',
+ 'BI' => 'Burundi',
+ 'BJ' => 'Benín',
+ 'BN' => 'Brunéi',
+ 'BO' => 'Bolivia',
+ 'BQ' => 'Bonaire',
+ 'BR' => 'Brasil',
+ 'BS' => 'Bahamas',
+ 'BT' => 'Bután',
+ 'BW' => 'Botsuana',
+ 'BY' => 'Belarús',
+ 'CC' => 'Islas Cocos',
+ 'CD' => 'Congo (RDC)',
+ 'CG' => 'Congo',
+ 'CH' => 'Suiza',
+ 'CI' => 'Côte dʼIvoire',
+ 'CL' => 'Chile',
+ 'CM' => 'Camerún',
+ 'CN' => 'China',
+ 'CO' => 'Colombia',
+ 'CR' => 'Costa Rica',
+ 'CU' => 'Cuba',
+ 'CW' => 'Curazao',
+ 'CX' => 'Isla Christmas',
+ 'CY' => 'Chipre',
+ 'DE' => 'Alemania',
+ 'DJ' => 'Yibuti',
+ 'DK' => 'Dinamarca',
+ 'DM' => 'Dominica',
+ 'DZ' => 'Argelia',
+ 'EC' => 'Ecuador',
+ 'EE' => 'Estonia',
+ 'EG' => 'Egipto',
+ 'ER' => 'Eritrea',
+ 'ES' => 'España',
+ 'ET' => 'Etiopía',
+ 'FI' => 'Finlandia',
+ 'FJ' => 'Fiyi',
+ 'FM' => 'Micronesia',
+ 'FR' => 'Francia',
+ 'GA' => 'Gabón',
+ 'GB' => 'Reino Unido',
+ 'GG' => 'Guernsey',
+ 'GH' => 'Ghana',
+ 'GM' => 'Gambia',
+ 'GN' => 'Guinea',
+ 'GQ' => 'Guinea Ecuatorial',
+ 'GR' => 'Grecia',
+ 'GT' => 'Guatemala',
+ 'GU' => 'Guam',
+ 'GW' => 'Guinea-Bissau',
+ 'GY' => 'Guyana',
+ 'HK' => 'Hong Kong (RAE)',
+ 'HM' => 'Islas Heard y McDonald',
+ 'HN' => 'Honduras',
+ 'HR' => 'Croacia',
+ 'HT' => 'Haití',
+ 'ID' => 'Indonesia',
+ 'IL' => 'Israel',
+ 'IN' => 'India',
+ 'IQ' => 'Iraq',
+ 'IR' => 'Irán',
+ 'IS' => 'Islandia',
+ 'IT' => 'Italia',
+ 'JE' => 'Jersey',
+ 'JO' => 'Jordania',
+ 'KE' => 'Kenia',
+ 'KG' => 'Kirguistán',
+ 'KH' => 'Camboya',
+ 'KI' => 'Kiribati',
+ 'KM' => 'Comoras',
+ 'KN' => 'San Cristóbal y Nieves',
+ 'KP' => 'Corea del Norte',
+ 'KR' => 'Corea del Sur',
+ 'KW' => 'Kuwait',
+ 'KZ' => 'Kazajistan',
+ 'LA' => 'Laos',
+ 'LB' => 'Líbano',
+ 'LI' => 'Liechtenstein',
+ 'LK' => 'Sri Lanka',
+ 'LR' => 'Liberia',
+ 'LS' => 'Lesoto',
+ 'LT' => 'Lituania',
+ 'LU' => 'Luxemburgo',
+ 'LV' => 'Letonia',
+ 'MA' => 'Marruecos',
+ 'MC' => 'Mónaco',
+ 'MD' => 'Moldova',
+ 'MF' => 'San Martín',
+ 'MG' => 'Madagascar',
+ 'MH' => 'Islas Marshall',
+ 'MK' => 'ERY Macedonia',
+ 'ML' => 'Malí',
+ 'MM' => 'Myanmar',
+ 'MO' => 'Macao RAE',
+ 'MP' => 'Islas Marianas del Norte',
+ 'MR' => 'Mauritania',
+ 'MT' => 'Malta',
+ 'MU' => 'Mauricio',
+ 'MV' => 'Maldivas',
+ 'MW' => 'Malawi',
+ 'MX' => 'México',
+ 'MZ' => 'Mozambique',
+ 'NA' => 'Namibia',
+ 'NC' => 'Nueva Caledonia',
+ 'NE' => 'Níger',
+ 'NF' => 'Isla Norfolk',
+ 'NG' => 'Nigeria',
+ 'NI' => 'Nicaragua',
+ 'NL' => 'Países Bajos',
+ 'NO' => 'Noruega',
+ 'NP' => 'Nepal',
+ 'NR' => 'Nauru',
+ 'OM' => 'Omán',
+ 'PA' => 'Panamá',
+ 'PE' => 'Perú',
+ 'PF' => 'Polinesia Francesa',
+ 'PG' => 'Papúa Nueva Guinea',
+ 'PH' => 'Filipinas',
+ 'PK' => 'Pakistán',
+ 'PL' => 'Polonia',
+ 'PM' => 'San Pedro y Miquelón',
+ 'PN' => 'Islas Pitcairn',
+ 'PR' => 'Puerto Rico',
+ 'PS' => 'Palestina Kamachikuq',
+ 'PT' => 'Portugal',
+ 'PW' => 'Palaos',
+ 'PY' => 'Paraguay',
+ 'QA' => 'Qatar',
+ 'RS' => 'Serbia',
+ 'RU' => 'Rusia',
+ 'RW' => 'Ruanda',
+ 'SA' => 'Arabia Saudí',
+ 'SC' => 'Seychelles',
+ 'SD' => 'Sudán',
+ 'SE' => 'Suecia',
+ 'SG' => 'Singapur',
+ 'SI' => 'Eslovenia',
+ 'SK' => 'Eslovaquia',
+ 'SL' => 'Sierra Leona',
+ 'SM' => 'San Marino',
+ 'SN' => 'Senegal',
+ 'SO' => 'Somalia',
+ 'SR' => 'Surinam',
+ 'SS' => 'Sudán del Sur',
+ 'ST' => 'Santo Tomé y Príncipe',
+ 'SV' => 'El Salvador',
+ 'SX' => 'Sint Maarten',
+ 'SY' => 'Siria',
+ 'SZ' => 'Suazilandia',
+ 'TD' => 'Chad',
+ 'TF' => 'Tierras Australes y Antárticas Francesas',
+ 'TG' => 'Togo',
+ 'TH' => 'Tailandia',
+ 'TJ' => 'Tayikistán',
+ 'TL' => 'Timor-Leste',
+ 'TN' => 'Túnez',
+ 'TO' => 'Tonga',
+ 'TR' => 'Turquía',
+ 'TT' => 'Trinidad y Tobago',
+ 'TZ' => 'Tanzania',
+ 'UG' => 'Uganda',
+ 'UM' => 'Islas menores alejadas de los EE.UU.',
+ 'US' => 'Estados Unidos',
+ 'UY' => 'Uruguay',
+ 'UZ' => 'Uzbekistán',
+ 'VA' => 'Santa Sede (Ciudad del Vaticano)',
+ 'VE' => 'Venezuela',
+ 'VI' => 'EE.UU. Islas Vírgenes',
+ 'VN' => 'Vietnam',
+ 'VU' => 'Vanuatu',
+ 'WF' => 'Wallis, Futuna',
+ 'WS' => 'Samoa',
+ 'YE' => 'Yemen',
+ 'ZA' => 'Sudáfrica',
+ 'ZM' => 'Zambia',
+ 'ZW' => 'Zimbabue',
+);
diff --git a/MLEB/cldr/CldrNames/CldrNamesRm.php b/MLEB/cldr/CldrNames/CldrNamesRm.php
new file mode 100644
index 00000000..d0ef6105
--- /dev/null
+++ b/MLEB/cldr/CldrNames/CldrNamesRm.php
@@ -0,0 +1,1032 @@
+<?php
+
+$languageNames = array(
+ 'aa' => 'afar',
+ 'ab' => 'abchasian',
+ 'ace' => 'aceh',
+ 'ach' => 'acoli',
+ 'ada' => 'andangme',
+ 'ady' => 'adygai',
+ 'ae' => 'avestic',
+ 'af' => 'afrikaans',
+ 'afh' => 'afrihili',
+ 'ain' => 'ainu',
+ 'ak' => 'akan',
+ 'akk' => 'accadic',
+ 'ale' => 'aleutic',
+ 'alt' => 'altaic dal sid',
+ 'am' => 'amaric',
+ 'an' => 'aragonais',
+ 'ang' => 'englais vegl',
+ 'anp' => 'angika',
+ 'ar' => 'arab',
+ 'arc' => 'arameic',
+ 'arn' => 'araucanic',
+ 'arp' => 'arapaho',
+ 'arw' => 'arawak',
+ 'as' => 'assami',
+ 'ast' => 'asturian',
+ 'av' => 'avaric',
+ 'awa' => 'awadhi',
+ 'ay' => 'aymara',
+ 'az' => 'aserbeidschanic',
+ 'ba' => 'baschkir',
+ 'bal' => 'belutschi',
+ 'ban' => 'balinais',
+ 'bas' => 'basaa',
+ 'be' => 'bieloruss',
+ 'bej' => 'bedscha',
+ 'bem' => 'bemba',
+ 'bg' => 'bulgar',
+ 'bho' => 'bhojpuri',
+ 'bi' => 'bislama',
+ 'bik' => 'bikol',
+ 'bin' => 'bini',
+ 'bla' => 'siksika',
+ 'bm' => 'bambara',
+ 'bn' => 'bengal',
+ 'bo' => 'tibetan',
+ 'br' => 'breton',
+ 'bra' => 'braj',
+ 'bs' => 'bosniac',
+ 'bua' => 'buriat',
+ 'bug' => 'bugi',
+ 'byn' => 'blin',
+ 'ca' => 'catalan',
+ 'cad' => 'caddo',
+ 'car' => 'caribic',
+ 'cch' => 'atsam',
+ 'ce' => 'tschetschen',
+ 'ceb' => 'cebuano',
+ 'ch' => 'chamorro',
+ 'chb' => 'chibcha',
+ 'chg' => 'tschagataic',
+ 'chk' => 'chuukais',
+ 'chm' => 'mari',
+ 'chn' => 'patuà chinook',
+ 'cho' => 'choctaw',
+ 'chp' => 'chipewyan',
+ 'chr' => 'cherokee',
+ 'chy' => 'cheyenne',
+ 'co' => 'cors',
+ 'cop' => 'coptic',
+ 'cr' => 'cree',
+ 'crh' => 'tirc crimean',
+ 'cs' => 'tschec',
+ 'csb' => 'kaschubic',
+ 'cu' => 'slav da baselgia',
+ 'cv' => 'tschuvasch',
+ 'cy' => 'kimric',
+ 'da' => 'danais',
+ 'dak' => 'dakota',
+ 'dar' => 'dargwa',
+ 'de' => 'tudestg',
+ 'de-at' => 'tudestg austriac',
+ 'del' => 'delaware',
+ 'den' => 'slavey',
+ 'dgr' => 'dogrib',
+ 'din' => 'dinka',
+ 'doi' => 'dogri',
+ 'dsb' => 'bass sorb',
+ 'dua' => 'duala',
+ 'dum' => 'ollandais mesaun',
+ 'dv' => 'maledivic',
+ 'dyu' => 'diula',
+ 'dz' => 'dzongkha',
+ 'ee' => 'ewe',
+ 'efi' => 'efik',
+ 'egy' => 'egipzian vegl',
+ 'eka' => 'ekajuk',
+ 'el' => 'grec',
+ 'elx' => 'elamitic',
+ 'en' => 'englais',
+ 'en-au' => 'englais australian',
+ 'en-ca' => 'englais canadais',
+ 'en-gb' => 'englais britannic',
+ 'en-us' => 'englais american',
+ 'enm' => 'englais mesaun',
+ 'eo' => 'esperanto',
+ 'es' => 'spagnol',
+ 'es-419' => 'spagnol latinamerican',
+ 'es-es' => 'spagnol iberic',
+ 'es-mx' => 'spagnol mexican',
+ 'et' => 'eston',
+ 'eu' => 'basc',
+ 'ewo' => 'ewondo',
+ 'fa' => 'persian',
+ 'fan' => 'fang',
+ 'fat' => 'fanti',
+ 'ff' => 'fulah',
+ 'fi' => 'finlandais',
+ 'fil' => 'filippino',
+ 'fj' => 'fidschian',
+ 'fo' => 'ferrais',
+ 'fon' => 'fon',
+ 'fr' => 'franzos',
+ 'fr-ca' => 'franzos canadais',
+ 'fr-ch' => 'franzos svizzer',
+ 'frm' => 'franzos mesaun',
+ 'fro' => 'franzos vegl',
+ 'frr' => 'fris dal nord',
+ 'frs' => 'fris da l’ost',
+ 'fur' => 'friulan',
+ 'fy' => 'fris',
+ 'ga' => 'irlandais',
+ 'gaa' => 'ga',
+ 'gay' => 'gayo',
+ 'gba' => 'gbaya',
+ 'gd' => 'gaelic scot',
+ 'gez' => 'geez',
+ 'gil' => 'gilbertais',
+ 'gl' => 'galician',
+ 'gmh' => 'tudestg mesaun',
+ 'gn' => 'guarani',
+ 'goh' => 'vegl tudestg da scrittira',
+ 'gon' => 'gondi',
+ 'gor' => 'gorontalo',
+ 'got' => 'gotic',
+ 'grb' => 'grebo',
+ 'grc' => 'grec vegl',
+ 'gsw' => 'tudestg svizzer',
+ 'gu' => 'gujarati',
+ 'gv' => 'manx',
+ 'gwi' => 'gwichʼin',
+ 'ha' => 'haussa',
+ 'hai' => 'haida',
+ 'haw' => 'hawaian',
+ 'he' => 'ebraic',
+ 'hi' => 'hindi',
+ 'hil' => 'hiligaynon',
+ 'hit' => 'ettitic',
+ 'hmn' => 'hmong',
+ 'ho' => 'hiri motu',
+ 'hr' => 'croat',
+ 'hsb' => 'aut sorb',
+ 'ht' => 'haitian',
+ 'hu' => 'ungarais',
+ 'hup' => 'hupa',
+ 'hy' => 'armen',
+ 'hz' => 'herero',
+ 'ia' => 'interlingua',
+ 'iba' => 'iban',
+ 'id' => 'indonais',
+ 'ie' => 'interlingue',
+ 'ig' => 'igbo',
+ 'ii' => 'sichuan yi',
+ 'ik' => 'inupiak',
+ 'ilo' => 'ilocano',
+ 'inh' => 'ingush',
+ 'io' => 'ido',
+ 'is' => 'islandais',
+ 'it' => 'talian',
+ 'iu' => 'inuktitut',
+ 'ja' => 'giapunais',
+ 'jbo' => 'lojban',
+ 'jpr' => 'giudaic-persian',
+ 'jrb' => 'giudaic-arab',
+ 'jv' => 'javanais',
+ 'ka' => 'georgian',
+ 'kaa' => 'karakalpak',
+ 'kab' => 'kabyle',
+ 'kac' => 'kachin',
+ 'kaj' => 'jju',
+ 'kam' => 'kamba',
+ 'kaw' => 'kawi',
+ 'kbd' => 'kabardic',
+ 'kcg' => 'tyap',
+ 'kfo' => 'koro',
+ 'kg' => 'kongo',
+ 'kha' => 'khasi',
+ 'kho' => 'khotanais',
+ 'ki' => 'kikuyu',
+ 'kj' => 'kuanyama',
+ 'kk' => 'casac',
+ 'kl' => 'grönlandais',
+ 'km' => 'cambodschan',
+ 'kmb' => 'kimbundu',
+ 'kn' => 'kannada',
+ 'ko' => 'corean',
+ 'kok' => 'konkani',
+ 'kos' => 'kosraean',
+ 'kpe' => 'kpelle',
+ 'kr' => 'kanuri',
+ 'krc' => 'karachay-balkar',
+ 'krl' => 'carelian',
+ 'kru' => 'kurukh',
+ 'ks' => 'kashmiri',
+ 'ku' => 'curd',
+ 'kum' => 'kumuk',
+ 'kut' => 'kutenai',
+ 'kv' => 'komi',
+ 'kw' => 'cornic',
+ 'ky' => 'kirghis',
+ 'la' => 'latin',
+ 'lad' => 'ladino',
+ 'lah' => 'lahnda',
+ 'lam' => 'lamba',
+ 'lb' => 'luxemburgais',
+ 'lez' => 'lezghian',
+ 'lg' => 'ganda',
+ 'li' => 'limburgais',
+ 'ln' => 'lingala',
+ 'lo' => 'laot',
+ 'lol' => 'lomongo',
+ 'loz' => 'lozi',
+ 'lt' => 'lituan',
+ 'lu' => 'luba-katanga',
+ 'lua' => 'luba-lulua',
+ 'lui' => 'luiseno',
+ 'lun' => 'lunda',
+ 'luo' => 'luo',
+ 'lus' => 'lushai',
+ 'lv' => 'letton',
+ 'mad' => 'madurais',
+ 'mag' => 'magahi',
+ 'mai' => 'maithili',
+ 'mak' => 'makassar',
+ 'man' => 'mandingo',
+ 'mas' => 'masai',
+ 'mdf' => 'moksha',
+ 'mdr' => 'mandar',
+ 'men' => 'mende',
+ 'mg' => 'malagassi',
+ 'mga' => 'irlandais mesaun',
+ 'mh' => 'marschallais',
+ 'mi' => 'maori',
+ 'mic' => 'micmac',
+ 'min' => 'minangkabau',
+ 'mk' => 'macedon',
+ 'ml' => 'malayalam',
+ 'mn' => 'mongolic',
+ 'mnc' => 'manchu',
+ 'mni' => 'manipuri',
+ 'moh' => 'mohawk',
+ 'mos' => 'mossi',
+ 'mr' => 'marathi',
+ 'ms' => 'malaic',
+ 'mt' => 'maltais',
+ 'mul' => 'pluriling',
+ 'mus' => 'creek',
+ 'mwl' => 'mirandais',
+ 'mwr' => 'marwari',
+ 'my' => 'birman',
+ 'myv' => 'erzya',
+ 'na' => 'nauru',
+ 'nap' => 'neapolitan',
+ 'nb' => 'norvegais bokmål',
+ 'nd' => 'ndebele dal nord',
+ 'nds' => 'bass tudestg',
+ 'ne' => 'nepalais',
+ 'new' => 'newari',
+ 'ng' => 'ndonga',
+ 'nia' => 'nias',
+ 'niu' => 'niue',
+ 'nl' => 'ollandais',
+ 'nl-be' => 'flam',
+ 'nn' => 'norvegiais nynorsk',
+ 'no' => 'norvegiais',
+ 'nog' => 'nogai',
+ 'non' => 'nordic vegl',
+ 'nqo' => 'n’ko',
+ 'nr' => 'ndebele dal sid',
+ 'nso' => 'sotho dal nord',
+ 'nv' => 'navajo',
+ 'nwc' => 'newari classic',
+ 'ny' => 'nyanja',
+ 'nym' => 'nyamwezi',
+ 'nyn' => 'nyankole',
+ 'nyo' => 'nyoro',
+ 'nzi' => 'nzima',
+ 'oc' => 'occitan',
+ 'oj' => 'ojibwa',
+ 'om' => 'oromo',
+ 'or' => 'oriya',
+ 'os' => 'ossetic',
+ 'osa' => 'osage',
+ 'ota' => 'tirc ottoman',
+ 'pa' => 'punjabi',
+ 'pag' => 'pangasinan',
+ 'pal' => 'pahlavi',
+ 'pam' => 'pampanga',
+ 'pap' => 'papiamento',
+ 'pau' => 'palau',
+ 'peo' => 'persian vegl',
+ 'phn' => 'fenizian',
+ 'pi' => 'pali',
+ 'pl' => 'polac',
+ 'pon' => 'ponapean',
+ 'pro' => 'provenzal vegl',
+ 'ps' => 'paschto',
+ 'pt' => 'portugais',
+ 'pt-br' => 'portugais brasilian',
+ 'pt-pt' => 'portugais iberian',
+ 'qu' => 'quechua',
+ 'raj' => 'rajasthani',
+ 'rap' => 'rapanui',
+ 'rar' => 'rarotonga',
+ 'rm' => 'rumantsch',
+ 'rn' => 'rundi',
+ 'ro' => 'rumen',
+ 'ro-md' => 'moldav',
+ 'rom' => 'romani',
+ 'ru' => 'russ',
+ 'rup' => 'aromunic',
+ 'rw' => 'kinyarwanda',
+ 'sa' => 'sanscrit',
+ 'sad' => 'sandawe',
+ 'sah' => 'jakut',
+ 'sam' => 'arameic samaritan',
+ 'sas' => 'sasak',
+ 'sat' => 'santali',
+ 'sc' => 'sard',
+ 'scn' => 'sicilian',
+ 'sco' => 'scot',
+ 'sd' => 'sindhi',
+ 'se' => 'sami dal nord',
+ 'sel' => 'selkup',
+ 'sg' => 'sango',
+ 'sga' => 'irlandais vegl',
+ 'sh' => 'serbo-croat',
+ 'shn' => 'shan',
+ 'si' => 'singalais',
+ 'sid' => 'sidamo',
+ 'sk' => 'slovac',
+ 'sl' => 'sloven',
+ 'sm' => 'samoan',
+ 'sma' => 'sami dal sid',
+ 'smj' => 'sami lule',
+ 'smn' => 'sami inari',
+ 'sms' => 'sami skolt',
+ 'sn' => 'shona',
+ 'snk' => 'soninke',
+ 'so' => 'somali',
+ 'sog' => 'sogdian',
+ 'sq' => 'albanais',
+ 'sr' => 'serb',
+ 'srn' => 'sranan tongo',
+ 'srr' => 'serer',
+ 'ss' => 'swazi',
+ 'st' => 'sotho dal sid',
+ 'su' => 'sundanais',
+ 'suk' => 'sukuma',
+ 'sus' => 'susu',
+ 'sux' => 'sumeric',
+ 'sv' => 'svedais',
+ 'sw' => 'suahili',
+ 'syc' => 'siric classic',
+ 'syr' => 'siric',
+ 'ta' => 'tamil',
+ 'te' => 'telugu',
+ 'tem' => 'temne',
+ 'ter' => 'tereno',
+ 'tet' => 'tetum',
+ 'tg' => 'tadjik',
+ 'th' => 'tailandais',
+ 'ti' => 'tigrinya',
+ 'tig' => 'tigre',
+ 'tiv' => 'tiv',
+ 'tk' => 'turkmen',
+ 'tkl' => 'tokelau',
+ 'tl' => 'tagalog',
+ 'tlh' => 'klingonic',
+ 'tli' => 'tlingit',
+ 'tmh' => 'tamasheq',
+ 'tn' => 'tswana',
+ 'to' => 'tonga',
+ 'tog' => 'lingua tsonga',
+ 'tpi' => 'tok pisin',
+ 'tr' => 'tirc',
+ 'ts' => 'tsonga',
+ 'tsi' => 'tsimshian',
+ 'tt' => 'tatar',
+ 'tum' => 'tumbuka',
+ 'tvl' => 'tuvalu',
+ 'tw' => 'twi',
+ 'ty' => 'tahitian',
+ 'tyv' => 'tuvinian',
+ 'udm' => 'udmurt',
+ 'ug' => 'uiguric',
+ 'uga' => 'ugaritic',
+ 'uk' => 'ucranais',
+ 'umb' => 'mbundu',
+ 'und' => 'linguas betg determinadas',
+ 'ur' => 'urdu',
+ 'uz' => 'usbec',
+ 'vai' => 'vai',
+ 've' => 'venda',
+ 'vi' => 'vietnamais',
+ 'vo' => 'volapuk',
+ 'vot' => 'votic',
+ 'wa' => 'vallon',
+ 'wal' => 'walamo',
+ 'war' => 'waray',
+ 'was' => 'washo',
+ 'wo' => 'wolof',
+ 'xal' => 'kalmuk',
+ 'xh' => 'xhosa',
+ 'yao' => 'yao',
+ 'yap' => 'yapais',
+ 'yi' => 'jiddic',
+ 'yo' => 'yoruba',
+ 'za' => 'zhuang',
+ 'zap' => 'zapotec',
+ 'zbl' => 'simbols da Bliss',
+ 'zen' => 'zenaga',
+ 'zh' => 'chinais',
+ 'zh-hans' => 'chinais simplifitgà',
+ 'zh-hant' => 'chinais tradiziunal',
+ 'zu' => 'zulu',
+ 'zun' => 'zuni',
+ 'zxx' => 'nagins cuntegns linguistics',
+ 'zza' => 'zaza',
+);
+
+$currencyNames = array(
+ 'ADP' => 'peseta andorrana',
+ 'AED' => 'dirham dals Emirats Arabs Unids',
+ 'AFA' => 'afghani (1927–2002)',
+ 'AFN' => 'afghani',
+ 'ALK' => 'lek albanais (1947–1961)',
+ 'ALL' => 'lek',
+ 'AMD' => 'dram armen',
+ 'ANG' => 'flurin da las Antillas Olandaisas',
+ 'AOA' => 'kwanza angolan',
+ 'AOK' => 'kwanza angolan (1977–1990)',
+ 'AON' => 'nov kwanza angolan',
+ 'AOR' => 'kwanza angolan reajustado',
+ 'ARA' => 'austral argentin',
+ 'ARL' => 'peso argentin ley',
+ 'ARM' => 'peso argentin moneda nacional',
+ 'ARP' => 'peso argentin (1983–1985)',
+ 'ARS' => 'peso argentin',
+ 'ATS' => 'schilling austriac',
+ 'AUD' => 'dollar australian',
+ 'AWG' => 'flurin da l’Aruba',
+ 'AZM' => 'manat aserbaidschanic (1993–2006)',
+ 'AZN' => 'manat aserbaidschanic',
+ 'BAD' => 'dinar da la Bosnia ed Erzegovina',
+ 'BAM' => 'marc convertibel bosniac',
+ 'BAN' => 'nov dinar da la Bosnia ed Erzegovina',
+ 'BBD' => 'dollar da Barbados',
+ 'BDT' => 'taka bangladais',
+ 'BEC' => 'franc beltg (convertibel)',
+ 'BEF' => 'franc beltg',
+ 'BEL' => 'franc beltg (finanzial)',
+ 'BGL' => 'lev bulgar',
+ 'BGM' => 'lev bulgar socialistic',
+ 'BGN' => 'nov lev bulgar',
+ 'BGO' => 'vegl lev bulgar',
+ 'BHD' => 'dinar dal Bahrain',
+ 'BIF' => 'franc dal Burundi',
+ 'BMD' => 'dollar da las Bermudas',
+ 'BND' => 'dollar dal Brunei',
+ 'BOB' => 'boliviano',
+ 'BOL' => 'vegl boliviano',
+ 'BOP' => 'peso bolivian',
+ 'BOV' => 'mvdol bolivian',
+ 'BRB' => 'cruzeiro novo brasilian (1967–1986)',
+ 'BRC' => 'cruzado brasilian',
+ 'BRE' => 'cruzeiro brasilian (1990–1993)',
+ 'BRL' => 'real brasilian',
+ 'BRN' => 'cruzado novo brasilian',
+ 'BRR' => 'cruzeiro brasilian',
+ 'BRZ' => 'vegl cruzeiro brasilian',
+ 'BSD' => 'dollar da las Bahamas',
+ 'BTN' => 'ngultrum butanais',
+ 'BUK' => 'Kyat burmais',
+ 'BWP' => 'pula da la Botswana',
+ 'BYB' => 'nov rubel bieloruss (1994–1999)',
+ 'BYR' => 'rubel bieloruss',
+ 'BZD' => 'dollar dal Belize',
+ 'CAD' => 'dollar canadais',
+ 'CDF' => 'franc congolais',
+ 'CHE' => 'euro WIR',
+ 'CHF' => 'franc svizzer',
+ 'CHW' => 'franc WIR',
+ 'CLE' => 'escudo chilen',
+ 'CLF' => 'unidades de fomento chilenas',
+ 'CLP' => 'peso chilen',
+ 'CNY' => 'yuan renminbi chinais',
+ 'COP' => 'peso columbian',
+ 'COU' => 'unidad de valor real',
+ 'CRC' => 'colon da la Costa Rica',
+ 'CSD' => 'vegl dinar serb',
+ 'CSK' => 'cruna tschecoslovaca',
+ 'CUP' => 'peso cuban',
+ 'CVE' => 'escudo dal Cap Verd',
+ 'CYP' => 'glivra cipriota',
+ 'CZK' => 'cruna tscheca',
+ 'DDM' => 'marc da la Germania da l’Ost',
+ 'DEM' => 'marc tudestg',
+ 'DJF' => 'franc dal Dschibuti',
+ 'DKK' => 'cruna danaisa',
+ 'DOP' => 'peso dominican',
+ 'DZD' => 'dinar algerian',
+ 'ECS' => 'sucre equadorian',
+ 'ECV' => 'unitad da scuntrada da l’Ecuador',
+ 'EEK' => 'cruna estona',
+ 'EGP' => 'glivra egipziana',
+ 'ERN' => 'nakfa eritreic',
+ 'ESA' => 'peseta spagnola (conto A)',
+ 'ESB' => 'peseta spagnola (conto convertibel)',
+ 'ESP' => 'peseta spagnola',
+ 'ETB' => 'birr etiopic',
+ 'EUR' => 'euro',
+ 'FIM' => 'marc finlandais',
+ 'FJD' => 'dollar dal Fidschi',
+ 'FKP' => 'glivra dal Falkland',
+ 'FRF' => 'franc franzos',
+ 'GBP' => 'glivra sterlina',
+ 'GEK' => 'kupon larit georgian',
+ 'GEL' => 'lari georgian',
+ 'GHC' => 'cedi ghanais (1979–2007)',
+ 'GHS' => 'cedi ghanais',
+ 'GIP' => 'glivra da Gibraltar',
+ 'GMD' => 'dalasi gambic',
+ 'GNF' => 'franc da la Guinea',
+ 'GNS' => 'syli da la Guinea',
+ 'GQE' => 'ekwele da la Guinea Equatoriala',
+ 'GRD' => 'drachma greca',
+ 'GTQ' => 'quetzal da la Guatemala',
+ 'GWE' => 'escudo da la Guinea Portugaisa',
+ 'GWP' => 'peso da la Guinea-Bissau',
+ 'GYD' => 'dollar da la Guyana',
+ 'HKD' => 'dollar da Hongkong',
+ 'HNL' => 'lempira hondurian',
+ 'HRD' => 'dinar croat',
+ 'HRK' => 'kuna croata',
+ 'HTG' => 'gourde haitian',
+ 'HUF' => 'forint ungarais',
+ 'IDR' => 'rupia indonaisa',
+ 'IEP' => 'glivra indonaisa',
+ 'ILP' => 'glivra israeliana',
+ 'ILR' => 'vegl sheqel israelian',
+ 'ILS' => 'sheqel',
+ 'INR' => 'rupia indica',
+ 'IQD' => 'dinar iracais',
+ 'IRR' => 'rial iranais',
+ 'ISJ' => 'veglia cruna islandaisa',
+ 'ISK' => 'cruna islandaisa',
+ 'ITL' => 'lira taliana',
+ 'JMD' => 'dollar giamaican',
+ 'JOD' => 'dinar jordanic',
+ 'JPY' => 'yen giapunais',
+ 'KES' => 'schilling kenian',
+ 'KGS' => 'som kirghis',
+ 'KHR' => 'riel cambodschan',
+ 'KMF' => 'franc comorian',
+ 'KPW' => 'won da la Corea dal Nord',
+ 'KRH' => 'hwan da la Corea dal Sid',
+ 'KRO' => 'vegl won da la Corea dal Sid',
+ 'KRW' => 'won da la Corea dal Sid',
+ 'KWD' => 'dinar dal Kuwait',
+ 'KYD' => 'dollar da las Inslas Cayman',
+ 'KZT' => 'tenge casac',
+ 'LAK' => 'kip laot',
+ 'LBP' => 'glivra libanaisa',
+ 'LKR' => 'rupia da la Sri Lanka',
+ 'LRD' => 'dollar liberian',
+ 'LSL' => 'loti dal Lesotho',
+ 'LTL' => 'litas lituan',
+ 'LTT' => 'talonas lituan',
+ 'LUC' => 'franc convertibel luxemburgais',
+ 'LUF' => 'franc luxemburgais',
+ 'LUL' => 'franc finanzial luxemburgais',
+ 'LVL' => 'lats letton',
+ 'LVR' => 'rubel letton',
+ 'LYD' => 'dinar libic',
+ 'MAD' => 'dirham marocan',
+ 'MAF' => 'franc marocan',
+ 'MCF' => 'franc monegas',
+ 'MDC' => 'cupon moldav',
+ 'MDL' => 'leu moldav',
+ 'MGA' => 'ariary madagasc',
+ 'MGF' => 'franc madagasc',
+ 'MKD' => 'dinar da la Macedonia',
+ 'MKN' => 'vegl dinar macedon',
+ 'MLF' => 'franc dal Mali',
+ 'MMK' => 'Kyat dal Myanmar',
+ 'MNT' => 'tugrik mongolic',
+ 'MOP' => 'pataca dal Macao',
+ 'MRO' => 'ouguiya da la Mauretania',
+ 'MTL' => 'lira maltaisa',
+ 'MTP' => 'glivra maltaisa',
+ 'MUR' => 'rupia dal Mauritius',
+ 'MVP' => 'rupia da las Maledivas',
+ 'MVR' => 'rufiyaa da las Maledivas',
+ 'MWK' => 'kwacha dal Malawi',
+ 'MXN' => 'peso mexican',
+ 'MXP' => 'peso d’argient mexican (1861–1992)',
+ 'MXV' => 'unidad de inversion mexicana (UDI)',
+ 'MYR' => 'ringgit da la Malaisia',
+ 'MZE' => 'escudo dal mozambican',
+ 'MZM' => 'vegl metical mozambican',
+ 'MZN' => 'metical dal mozambican',
+ 'NAD' => 'dollar namibian',
+ 'NGN' => 'naira nigeriana',
+ 'NIC' => 'cordoba nicaraguan',
+ 'NIO' => 'cordoba oro nicaraguan',
+ 'NLG' => 'flurin ollandais',
+ 'NOK' => 'cruna norvegiaisa',
+ 'NPR' => 'rupia nepalaisa',
+ 'NZD' => 'dollar da la Nova Zelanda',
+ 'OMR' => 'rial da l’Oman',
+ 'PAB' => 'balboa dal Panama',
+ 'PEI' => 'inti peruan',
+ 'PEN' => 'nov sol peruan',
+ 'PES' => 'sol peruan',
+ 'PGK' => 'kina da la Papua Nova Guinea',
+ 'PHP' => 'peso filippin',
+ 'PKR' => 'rupia pakistana',
+ 'PLN' => 'zloty polac',
+ 'PLZ' => 'zloty polac (1950–1995)',
+ 'PTE' => 'escudo portugais',
+ 'PYG' => 'guarani paraguaian',
+ 'QAR' => 'riyal da Katar',
+ 'RHD' => 'dollar rodesian',
+ 'ROL' => 'vegl leu rumen',
+ 'RON' => 'leu rumen',
+ 'RSD' => 'dinar serb',
+ 'RUB' => 'rubel russ (nov)',
+ 'RUR' => 'rubel russ (vegl)',
+ 'RWF' => 'franc ruandais',
+ 'SAR' => 'riyal saudit',
+ 'SBD' => 'dollar da las Salomonas',
+ 'SCR' => 'rupia da las Seychellas',
+ 'SDD' => 'dinar sudanais',
+ 'SDG' => 'glivra sudanaisa',
+ 'SDP' => 'glivra sudanaisa (1956–2007)',
+ 'SEK' => 'cruna svedaisa',
+ 'SGD' => 'dollar dal Singapur',
+ 'SHP' => 'glivra da Sontg’Elena',
+ 'SIT' => 'tolar sloven',
+ 'SKK' => 'cruna slovaca',
+ 'SLL' => 'leone da la Sierra Leone',
+ 'SOS' => 'schilling somalian',
+ 'SRD' => 'dollar surinam',
+ 'SRG' => 'flurin surinam',
+ 'STD' => 'dobra da São Tomé e Principe',
+ 'SUR' => 'rubel sovietic',
+ 'SVC' => 'colon da l’El Salvador',
+ 'SYP' => 'glivra siriana',
+ 'SZL' => 'lilangeni dal Swaziland',
+ 'THB' => 'baht tailandais',
+ 'TJR' => 'rubel dal Tadschikistan',
+ 'TJS' => 'somoni dal Tadschikistan',
+ 'TMM' => 'manat turkmen',
+ 'TND' => 'dinar tunesian',
+ 'TOP' => 'pa’anga da Tonga',
+ 'TPE' => 'escudo da Timor',
+ 'TRL' => 'lira tirca',
+ 'TRY' => 'nova lira tirca',
+ 'TTD' => 'dollar da Trinidad e Tobago',
+ 'TWD' => 'nov dollar taiwanais',
+ 'TZS' => 'schilling tansanian',
+ 'UAH' => 'hryvnia ucranais',
+ 'UAK' => 'karbovanetz ucranais',
+ 'UGS' => 'schilling ucranais',
+ 'UGX' => 'schilling ugandais',
+ 'USD' => 'dollar dals Stadis Unids da l’America',
+ 'USN' => 'dollar dals Stadis Unids da l’America (proxim di)',
+ 'USS' => 'dollar dals Stadis Unids da l’America (medem di)',
+ 'UYI' => 'peso da l’Uruguay (unidades indexadas)',
+ 'UYP' => 'nov peso da l’Uruguay (1975–1993)',
+ 'UYU' => 'peso da l’Uruguay',
+ 'UZS' => 'sum usbec',
+ 'VEB' => 'bolivar venezuelan (1871–2008)',
+ 'VEF' => 'bolivar venezuelan',
+ 'VND' => 'dong vietnamais',
+ 'VNN' => 'vegl dong vietnamais',
+ 'VUV' => 'vatu dal Vanuatu',
+ 'WST' => 'tala da la Samoa',
+ 'XAF' => 'franc CFA BEAC',
+ 'XAG' => 'argient',
+ 'XAU' => 'aur',
+ 'XBA' => 'unitad europeica cumponida',
+ 'XBC' => 'unitad dal quint europeica (XBC)',
+ 'XBD' => 'unitad dal quint europeica (XBD)',
+ 'XCD' => 'dollar da la Caribica Orientala',
+ 'XDR' => 'dretgs da prelevaziun spezials',
+ 'XEU' => 'unitad monetara europeica',
+ 'XFO' => 'franc d’aur franzos',
+ 'XFU' => 'franc UIC franzos',
+ 'XOF' => 'franc CFA BCEAO',
+ 'XPD' => 'palladi',
+ 'XPF' => 'franc CFP',
+ 'XPT' => 'platin',
+ 'XRE' => 'fonds RINET',
+ 'XTS' => 'code per verifitgar la valuta',
+ 'XXX' => 'valuta nunenconuschenta',
+ 'YDD' => 'dinar dal Jemen',
+ 'YER' => 'rial dal Jemen',
+ 'YUD' => 'dinar jugoslav (1966–1990)',
+ 'YUM' => 'nov dinar jugoslav',
+ 'YUN' => 'dinar jugoslav convertibel',
+ 'YUR' => 'dinar jugoslav refurmà',
+ 'ZAL' => 'rand sidafrican (finanzial)',
+ 'ZAR' => 'rand sidafrican',
+ 'ZMK' => 'kwacha da la sambia (1968–2012)',
+ 'ZMW' => 'kwacha da la sambia',
+ 'ZRN' => 'nov zaire dal Zaire',
+ 'ZRZ' => 'zaire dal Zaire',
+ 'ZWD' => 'dollar dal Simbabwe',
+);
+
+$currencySymbols = array(
+ 'AUD' => 'A$',
+ 'CAD' => 'CA$',
+ 'CHF' => 'CHF',
+ 'DKK' => 'DKK',
+ 'EEK' => 'EEK',
+ 'EUR' => '€',
+ 'FIM' => 'FIM',
+ 'GBP' => '£',
+ 'HNL' => 'HNL',
+ 'IEP' => 'IEP',
+ 'ISJ' => 'ISJ',
+ 'ISK' => 'ISK',
+ 'JMD' => 'JMD',
+ 'KYD' => 'KYD',
+ 'MXN' => 'MX$',
+ 'NOK' => 'NOK',
+ 'PLN' => 'PLN',
+ 'RUB' => 'RUB',
+ 'RUR' => 'RUR',
+ 'SAR' => 'SAR',
+ 'SEK' => 'SEK',
+ 'TRY' => 'TRY',
+ 'USD' => '$',
+ 'XCD' => 'EC$',
+ 'XEU' => 'XEU',
+);
+
+$countryNames = array(
+ 'AD' => 'Andorra',
+ 'AE' => 'Emirats Arabs Unids',
+ 'AF' => 'Afghanistan',
+ 'AG' => 'Antigua e Barbuda',
+ 'AI' => 'Anguilla',
+ 'AL' => 'Albania',
+ 'AM' => 'Armenia',
+ 'AN' => 'Antillas Ollandaisas',
+ 'AO' => 'Angola',
+ 'AQ' => 'Antarctica',
+ 'AR' => 'Argentinia',
+ 'AS' => 'Samoa Americana',
+ 'AT' => 'Austria',
+ 'AU' => 'Australia',
+ 'AW' => 'Aruba',
+ 'AX' => 'Inslas Aland',
+ 'AZ' => 'Aserbaidschan',
+ 'BA' => 'Bosnia ed Erzegovina',
+ 'BB' => 'Barbados',
+ 'BD' => 'Bangladesch',
+ 'BE' => 'Belgia',
+ 'BF' => 'Burkina Faso',
+ 'BG' => 'Bulgaria',
+ 'BH' => 'Bahrain',
+ 'BI' => 'Burundi',
+ 'BJ' => 'Benin',
+ 'BL' => 'Son Barthélemy',
+ 'BM' => 'Bermudas',
+ 'BN' => 'Brunei',
+ 'BO' => 'Bolivia',
+ 'BR' => 'Brasila',
+ 'BS' => 'Bahamas',
+ 'BT' => 'Bhutan',
+ 'BV' => 'Insla Bouvet',
+ 'BW' => 'Botswana',
+ 'BY' => 'Bielorussia',
+ 'BZ' => 'Belize',
+ 'CA' => 'Canada',
+ 'CC' => 'Inslas Cocos',
+ 'CD' => 'Republica Democratica dal Congo',
+ 'CF' => 'Republica Centralafricana',
+ 'CG' => 'Congo',
+ 'CH' => 'Svizra',
+ 'CI' => 'Costa d’Ivur',
+ 'CK' => 'Inslas Cook',
+ 'CL' => 'Chile',
+ 'CM' => 'Camerun',
+ 'CN' => 'China',
+ 'CO' => 'Columbia',
+ 'CR' => 'Costa Rica',
+ 'CU' => 'Cuba',
+ 'CV' => 'Cap Verd',
+ 'CX' => 'Insla da Christmas',
+ 'CY' => 'Cipra',
+ 'CZ' => 'Republica Tscheca',
+ 'DE' => 'Germania',
+ 'DJ' => 'Dschibuti',
+ 'DK' => 'Danemarc',
+ 'DM' => 'Dominica',
+ 'DO' => 'Republica Dominicana',
+ 'DZ' => 'Algeria',
+ 'EC' => 'Ecuador',
+ 'EE' => 'Estonia',
+ 'EG' => 'Egipta',
+ 'EH' => 'Sahara Occidentala',
+ 'ER' => 'Eritrea',
+ 'ES' => 'Spagna',
+ 'ET' => 'Etiopia',
+ 'EU' => 'Uniun europeica',
+ 'FI' => 'Finlanda',
+ 'FJ' => 'Fidschi',
+ 'FK' => 'Inslas dal Falkland',
+ 'FM' => 'Micronesia',
+ 'FO' => 'Inslas Feroe',
+ 'FR' => 'Frantscha',
+ 'GA' => 'Gabun',
+ 'GB' => 'Reginavel Unì',
+ 'GD' => 'Grenada',
+ 'GE' => 'Georgia',
+ 'GF' => 'Guyana Franzosa',
+ 'GG' => 'Guernsey',
+ 'GH' => 'Ghana',
+ 'GI' => 'Gibraltar',
+ 'GL' => 'Grönlanda',
+ 'GM' => 'Gambia',
+ 'GN' => 'Guinea',
+ 'GP' => 'Guadeloupe',
+ 'GQ' => 'Guinea Equatoriala',
+ 'GR' => 'Grezia',
+ 'GS' => 'Georgia dal Sid e las Inslas Sandwich dal Sid',
+ 'GT' => 'Guatemala',
+ 'GU' => 'Guam',
+ 'GW' => 'Guinea-Bissau',
+ 'GY' => 'Guyana',
+ 'HK' => 'Regiun d’administraziun speziala da Hongkong, China',
+ 'HM' => 'Inslas da Heard e da McDonlad',
+ 'HN' => 'Honduras',
+ 'HR' => 'Croazia',
+ 'HT' => 'Haiti',
+ 'HU' => 'Ungaria',
+ 'ID' => 'Indonesia',
+ 'IE' => 'Irlanda',
+ 'IL' => 'Israel',
+ 'IM' => 'Insla da Man',
+ 'IN' => 'India',
+ 'IO' => 'Territori Britannic en l’Ocean Indic',
+ 'IQ' => 'Irac',
+ 'IR' => 'Iran',
+ 'IS' => 'Islanda',
+ 'IT' => 'Italia',
+ 'JE' => 'Jersey',
+ 'JM' => 'Giamaica',
+ 'JO' => 'Jordania',
+ 'JP' => 'Giapun',
+ 'KE' => 'Kenia',
+ 'KG' => 'Kirghisistan',
+ 'KH' => 'Cambodscha',
+ 'KI' => 'Kiribati',
+ 'KM' => 'Comoras',
+ 'KN' => 'Saint Kitts e Nevis',
+ 'KP' => 'Corea dal Nord',
+ 'KR' => 'Corea dal Sid',
+ 'KW' => 'Kuwait',
+ 'KY' => 'Inslas Cayman',
+ 'KZ' => 'Kasachstan',
+ 'LA' => 'Laos',
+ 'LB' => 'Libanon',
+ 'LC' => 'Saint Lucia',
+ 'LI' => 'Liechtenstein',
+ 'LK' => 'Sri Lanka',
+ 'LR' => 'Liberia',
+ 'LS' => 'Lesotho',
+ 'LT' => 'Lituania',
+ 'LU' => 'Luxemburg',
+ 'LV' => 'Lettonia',
+ 'LY' => 'Libia',
+ 'MA' => 'Maroc',
+ 'MC' => 'Monaco',
+ 'MD' => 'Moldavia',
+ 'ME' => 'Montenegro',
+ 'MF' => 'Saint Martin',
+ 'MG' => 'Madagascar',
+ 'MH' => 'Inslas da Marshall',
+ 'MK' => 'Macedonia',
+ 'ML' => 'Mali',
+ 'MM' => 'Myanmar',
+ 'MN' => 'Mongolia',
+ 'MO' => 'Regiun d’administraziun speziala Macao, China',
+ 'MP' => 'Inslas Mariannas dal Nord',
+ 'MQ' => 'Martinique',
+ 'MR' => 'Mauretania',
+ 'MS' => 'Montserrat',
+ 'MT' => 'Malta',
+ 'MU' => 'Mauritius',
+ 'MV' => 'Maldivas',
+ 'MW' => 'Malawi',
+ 'MX' => 'Mexico',
+ 'MY' => 'Malaisia',
+ 'MZ' => 'Mosambic',
+ 'NA' => 'Namibia',
+ 'NC' => 'Nova Caledonia',
+ 'NE' => 'Niger',
+ 'NF' => 'Insla Norfolk',
+ 'NG' => 'Nigeria',
+ 'NI' => 'Nicaragua',
+ 'NL' => 'Pajais Bass',
+ 'NO' => 'Norvegia',
+ 'NP' => 'Nepal',
+ 'NR' => 'Nauru',
+ 'NU' => 'Niue',
+ 'NZ' => 'Nova Zelanda',
+ 'OM' => 'Oman',
+ 'PA' => 'Panama',
+ 'PE' => 'Peru',
+ 'PF' => 'Polinesia Franzosa',
+ 'PG' => 'Papua Nova Guinea',
+ 'PH' => 'Filippinas',
+ 'PK' => 'Pakistan',
+ 'PL' => 'Pologna',
+ 'PM' => 'Saint Pierre e Miquelon',
+ 'PN' => 'Pitcairn',
+ 'PR' => 'Puerto Rico',
+ 'PS' => 'Territori Palestinais',
+ 'PT' => 'Portugal',
+ 'PW' => 'Palau',
+ 'PY' => 'Paraguai',
+ 'QA' => 'Katar',
+ 'QO' => 'Oceania Periferica',
+ 'RE' => 'Réunion',
+ 'RO' => 'Rumenia',
+ 'RS' => 'Serbia',
+ 'RU' => 'Russia',
+ 'RW' => 'Ruanda',
+ 'SA' => 'Arabia Saudita',
+ 'SB' => 'Salomonas',
+ 'SC' => 'Seychellas',
+ 'SD' => 'Sudan',
+ 'SE' => 'Svezia',
+ 'SG' => 'Singapur',
+ 'SH' => 'Sontg’Elena',
+ 'SI' => 'Slovenia',
+ 'SJ' => 'Svalbard e Jan Mayen',
+ 'SK' => 'Slovachia',
+ 'SL' => 'Sierra Leone',
+ 'SM' => 'San Marino',
+ 'SN' => 'Senegal',
+ 'SO' => 'Somalia',
+ 'SR' => 'Surinam',
+ 'SS' => 'Sudan dal Sid',
+ 'ST' => 'São Tomé e Principe',
+ 'SV' => 'El Salvador',
+ 'SY' => 'Siria',
+ 'SZ' => 'Swaziland',
+ 'TC' => 'Inslas Turks e Caicos',
+ 'TD' => 'Tschad',
+ 'TF' => 'Territoris Franzos Meridiunals',
+ 'TG' => 'Togo',
+ 'TH' => 'Tailanda',
+ 'TJ' => 'Tadschikistan',
+ 'TK' => 'Tokelau',
+ 'TL' => 'Timor da l’Ost',
+ 'TM' => 'Turkmenistan',
+ 'TN' => 'Tunesia',
+ 'TO' => 'Tonga',
+ 'TR' => 'Tirchia',
+ 'TT' => 'Trinidad e Tobago',
+ 'TV' => 'Tuvalu',
+ 'TW' => 'Taiwan',
+ 'TZ' => 'Tansania',
+ 'UA' => 'Ucraina',
+ 'UG' => 'Uganda',
+ 'UM' => 'Inslas pitschnas perifericas dals Stadis Unids da l’America',
+ 'US' => 'Stadis Unids da l’America',
+ 'UY' => 'Uruguay',
+ 'UZ' => 'Usbekistan',
+ 'VA' => 'Citad dal Vatican',
+ 'VC' => 'Saint Vincent e las Grenadinas',
+ 'VE' => 'Venezuela',
+ 'VG' => 'Inslas Verginas Britannicas',
+ 'VI' => 'Inslas Verginas Americanas',
+ 'VN' => 'Vietnam',
+ 'VU' => 'Vanuatu',
+ 'WF' => 'Wallis e Futuna',
+ 'WS' => 'Samoa',
+ 'YE' => 'Jemen',
+ 'YT' => 'Mayotte',
+ 'ZA' => 'Africa dal Sid',
+ 'ZM' => 'Sambia',
+ 'ZW' => 'Simbabwe',
+);
+
+$timeUnits = array(
+ 'day-one' => '{0} di',
+ 'day-other' => '{0} dis',
+ 'hour-one' => '{0} ura',
+ 'hour-other' => '{0} uras',
+ 'millisecond-one' => '{0} millisecunda',
+ 'millisecond-other' => '{0} millisecundas',
+ 'minute-one' => '{0} minuta',
+ 'minute-other' => '{0} minutas',
+ 'month-one' => '{0} mais',
+ 'month-other' => '{0} mais',
+ 'second-one' => '{0} secunda',
+ 'second-other' => '{0} secundas',
+ 'week-one' => '{0} emna',
+ 'week-other' => '{0} emnas',
+ 'year-one' => '{0} onn',
+ 'year-other' => '{0} onns',
+);
diff --git a/MLEB/cldr/CldrNames/CldrNamesRn.php b/MLEB/cldr/CldrNames/CldrNamesRn.php
new file mode 100644
index 00000000..ad7fac26
--- /dev/null
+++ b/MLEB/cldr/CldrNames/CldrNamesRn.php
@@ -0,0 +1,337 @@
+<?php
+
+$languageNames = array(
+ 'ak' => 'Igikani',
+ 'am' => 'Ikimuhariki',
+ 'ar' => 'Icarabu',
+ 'be' => 'Ikibelarusiya',
+ 'bg' => 'Ikinyabuligariya',
+ 'bn' => 'Ikibengali',
+ 'cs' => 'Igiceke',
+ 'de' => 'Ikidage',
+ 'el' => 'Ikigereki',
+ 'en' => 'Icongereza',
+ 'es' => 'Icesipanyolo',
+ 'fa' => 'Igiperisi',
+ 'fr' => 'Igifaransa',
+ 'ha' => 'Igihawusa',
+ 'hi' => 'Igihindi',
+ 'hu' => 'Ikinyahongiriya',
+ 'id' => 'Ikinyendoziya',
+ 'ig' => 'Ikigubo',
+ 'it' => 'Igitaliyani',
+ 'ja' => 'Ikiyapani',
+ 'jv' => 'Ikinyejava',
+ 'km' => 'Igikambodiya',
+ 'ko' => 'Ikinyakoreya',
+ 'ms' => 'Ikinyamaleziya',
+ 'my' => 'Ikinyabirimaniya',
+ 'ne' => 'Ikinepali',
+ 'nl' => 'Igiholandi',
+ 'pa' => 'Igipunjabi',
+ 'pl' => 'Ikinyapolonye',
+ 'pt' => 'Igiporutugari',
+ 'rn' => 'Ikirundi',
+ 'ro' => 'Ikinyarumaniya',
+ 'ru' => 'Ikirusiya',
+ 'rw' => 'Ikinyarwanda',
+ 'so' => 'Igisomali',
+ 'sv' => 'Igisuweduwa',
+ 'ta' => 'Igitamili',
+ 'th' => 'Ikinyatayilandi',
+ 'tr' => 'Igiturukiya',
+ 'uk' => 'Ikinyayukereni',
+ 'ur' => 'Inyeyurudu',
+ 'vi' => 'Ikinyaviyetinamu',
+ 'yo' => 'Ikiyoruba',
+ 'zh' => 'Igishinwa',
+ 'zu' => 'Ikizulu',
+);
+
+$currencyNames = array(
+ 'AED' => 'Idiramu ryo muri Leta Zunze Ubumwe z’Abarabu',
+ 'AOA' => 'Ikwanza ryo muri Angola',
+ 'AUD' => 'Idolari ryo muri Ositaraliya',
+ 'BHD' => 'Idinari ry’iribahireyini',
+ 'BIF' => 'Ifaranga ry’Uburundi',
+ 'BWP' => 'Ipula ryo muri Botswana',
+ 'CAD' => 'Idolari rya Kanada',
+ 'CDF' => 'Ifaranga rya Kongo',
+ 'CHF' => 'Ifaranga ry’Ubusuwisi',
+ 'CNY' => 'Iyuwani ryo mu Bushinwa',
+ 'CVE' => 'Irikaboveridiyano ryo muri Esikudo',
+ 'DJF' => 'Ifaranga ryo muri Jibuti',
+ 'DZD' => 'Idinari ryo muri Alijeriya',
+ 'EGP' => 'Ipawundi rya Misiri',
+ 'ERN' => 'Irinakufa ryo muri Eritereya',
+ 'ETB' => 'Ibiri ryo muri Etiyopiya',
+ 'EUR' => 'Iyero',
+ 'GBP' => 'Ipawundi ryo mu Bwongereza',
+ 'GHC' => 'Icedi ryo muri Gana',
+ 'GMD' => 'Idalasi ryo muri Gambiya',
+ 'GNS' => 'Ifaranga ryo muri Gineya',
+ 'INR' => 'Irupiya ryo mu Buhindi',
+ 'JPY' => 'Iyeni ry’Ubuyapani',
+ 'KES' => 'Ishilingi rya Kenya',
+ 'KMF' => 'Ifaranga rya Komore',
+ 'LRD' => 'Idolari rya Liberiya',
+ 'LSL' => 'Iloti ryo muro Lesoto',
+ 'LYD' => 'Idinari rya Libiya',
+ 'MAD' => 'Idiramu ryo muri Maroke',
+ 'MGA' => 'Iriyari ryo muri Madagasikari',
+ 'MRO' => 'Ugwiya ryo muri Moritaniya',
+ 'MUR' => 'Irupiya ryo mu birwa bya Morise',
+ 'MWK' => 'Ikwaca ryo muri Malawi',
+ 'MZM' => 'Irimetikali ryo muri Mozambike',
+ 'NAD' => 'Idolari rya Namibiya',
+ 'NGN' => 'Inayira ryo muri Nijeriya',
+ 'RWF' => 'Ifaranga ry’u Rwanda',
+ 'SAR' => 'Iriyari ryo muri Arabiya Sawudite',
+ 'SCR' => 'Irupiya ryo mu birwa bya Sayisheli',
+ 'SDG' => 'Ipawundi rya Sudani',
+ 'SHP' => 'Ipawundi rya Sente Helena',
+ 'SLL' => 'Ilewone',
+ 'SOS' => 'Ishilingi ryo muri Somaliya',
+ 'STD' => 'Idobura ryo muri Sawotome na Perensipe',
+ 'SZL' => 'Ililangeni',
+ 'TND' => 'Idinari ryo muri Tuniziya',
+ 'TZS' => 'Ishilingi rya Tanzaniya',
+ 'UGX' => 'Ishilingi ry’Ubugande',
+ 'USD' => 'Idolari ry’abanyamerika',
+ 'ZAR' => 'Irandi ryo muri Afurika y’Epfo',
+ 'ZMK' => 'Ikwaca ryo muri Zambiya (1968–2012)',
+ 'ZMW' => 'Ikwaca ryo muri Zambiya',
+ 'ZWD' => 'Idolari ryo muri Zimbabwe',
+);
+
+$currencySymbols = array(
+ 'BIF' => 'FBu',
+);
+
+$countryNames = array(
+ 'AD' => 'Andora',
+ 'AE' => 'Leta Zunze Ubumwe z’Abarabu',
+ 'AF' => 'Afuganisitani',
+ 'AG' => 'Antigwa na Baribuda',
+ 'AI' => 'Angwila',
+ 'AL' => 'Alubaniya',
+ 'AM' => 'Arumeniya',
+ 'AN' => 'Antiye y’Abaholandi',
+ 'AO' => 'Angola',
+ 'AR' => 'Arijantine',
+ 'AS' => 'Samowa nyamerika',
+ 'AT' => 'Otirishe',
+ 'AU' => 'Ositaraliya',
+ 'AW' => 'Aruba',
+ 'AZ' => 'Azerubayijani',
+ 'BA' => 'Bosiniya na Herigozevine',
+ 'BB' => 'Barubadosi',
+ 'BD' => 'Bangaladeshi',
+ 'BE' => 'Ububiligi',
+ 'BF' => 'Burukina Faso',
+ 'BG' => 'Buligariya',
+ 'BH' => 'Bahareyini',
+ 'BI' => 'Uburundi',
+ 'BJ' => 'Bene',
+ 'BM' => 'Berimuda',
+ 'BN' => 'Buruneyi',
+ 'BO' => 'Boliviya',
+ 'BR' => 'Burezili',
+ 'BS' => 'Bahamasi',
+ 'BT' => 'Butani',
+ 'BW' => 'Botswana',
+ 'BY' => 'Belausi',
+ 'BZ' => 'Belize',
+ 'CA' => 'Kanada',
+ 'CD' => 'Repubulika Iharanira Demokarasi ya Kongo',
+ 'CF' => 'Repubulika ya Santarafurika',
+ 'CG' => 'Kongo',
+ 'CH' => 'Ubusuwisi',
+ 'CI' => 'Kotedivuware',
+ 'CK' => 'Izinga rya Kuku',
+ 'CL' => 'Shili',
+ 'CM' => 'Kameruni',
+ 'CN' => 'Ubushinwa',
+ 'CO' => 'Kolombiya',
+ 'CR' => 'Kositarika',
+ 'CU' => 'Kiba',
+ 'CV' => 'Ibirwa bya Kapuveri',
+ 'CY' => 'Izinga rya Shipure',
+ 'CZ' => 'Repubulika ya Ceke',
+ 'DE' => 'Ubudage',
+ 'DJ' => 'Jibuti',
+ 'DK' => 'Danimariki',
+ 'DM' => 'Dominika',
+ 'DO' => 'Repubulika ya Dominika',
+ 'DZ' => 'Alijeriya',
+ 'EC' => 'Ekwateri',
+ 'EE' => 'Esitoniya',
+ 'EG' => 'Misiri',
+ 'ER' => 'Elitereya',
+ 'ES' => 'Hisipaniya',
+ 'ET' => 'Etiyopiya',
+ 'FI' => 'Finilandi',
+ 'FJ' => 'Fiji',
+ 'FK' => 'Izinga rya Filikilandi',
+ 'FM' => 'Mikoroniziya',
+ 'FR' => 'Ubufaransa',
+ 'GA' => 'Gabo',
+ 'GB' => 'Ubwongereza',
+ 'GD' => 'Gerenada',
+ 'GE' => 'Jeworujiya',
+ 'GF' => 'Gwayana y’Abafaransa',
+ 'GH' => 'Gana',
+ 'GI' => 'Juburalitari',
+ 'GL' => 'Gurunilandi',
+ 'GM' => 'Gambiya',
+ 'GN' => 'Guneya',
+ 'GP' => 'Gwadelupe',
+ 'GQ' => 'Gineya Ekwatoriyali',
+ 'GR' => 'Ubugereki',
+ 'GT' => 'Gwatemala',
+ 'GU' => 'Gwamu',
+ 'GW' => 'Gineya Bisawu',
+ 'GY' => 'Guyane',
+ 'HN' => 'Hondurasi',
+ 'HR' => 'Korowasiya',
+ 'HT' => 'Hayiti',
+ 'HU' => 'Hungariya',
+ 'ID' => 'Indoneziya',
+ 'IE' => 'Irilandi',
+ 'IL' => 'Isiraheli',
+ 'IN' => 'Ubuhindi',
+ 'IO' => 'Intara y’Ubwongereza yo mu birwa by’Abahindi',
+ 'IQ' => 'Iraki',
+ 'IR' => 'Irani',
+ 'IS' => 'Ayisilandi',
+ 'IT' => 'Ubutaliyani',
+ 'JM' => 'Jamayika',
+ 'JO' => 'Yorudaniya',
+ 'JP' => 'Ubuyapani',
+ 'KE' => 'Kenya',
+ 'KG' => 'Kirigisitani',
+ 'KH' => 'Kamboje',
+ 'KI' => 'Kiribati',
+ 'KM' => 'Izinga rya Komore',
+ 'KN' => 'Sekitsi na Nevisi',
+ 'KP' => 'Koreya y’amajaruguru',
+ 'KR' => 'Koreya y’amajepfo',
+ 'KW' => 'Koweti',
+ 'KY' => 'Ibirwa bya Keyimani',
+ 'KZ' => 'Kazakisitani',
+ 'LA' => 'Layosi',
+ 'LB' => 'Libani',
+ 'LC' => 'Selusiya',
+ 'LI' => 'Lishyitenshitayini',
+ 'LK' => 'Sirilanka',
+ 'LR' => 'Liberiya',
+ 'LS' => 'Lesoto',
+ 'LT' => 'Lituwaniya',
+ 'LU' => 'Lukusamburu',
+ 'LV' => 'Lativa',
+ 'LY' => 'Libiya',
+ 'MA' => 'Maroke',
+ 'MC' => 'Monako',
+ 'MD' => 'Moludavi',
+ 'MG' => 'Madagasikari',
+ 'MH' => 'Izinga rya Marishari',
+ 'MK' => 'Masedoniya',
+ 'ML' => 'Mali',
+ 'MM' => 'Birimaniya',
+ 'MN' => 'Mongoliya',
+ 'MP' => 'Amazinga ya Mariyana ryo mu majaruguru',
+ 'MQ' => 'Maritiniki',
+ 'MR' => 'Moritaniya',
+ 'MS' => 'Monteserati',
+ 'MT' => 'Malita',
+ 'MU' => 'Izinga rya Morise',
+ 'MV' => 'Moludave',
+ 'MW' => 'Malawi',
+ 'MX' => 'Migizike',
+ 'MY' => 'Maleziya',
+ 'MZ' => 'Mozambiki',
+ 'NA' => 'Namibiya',
+ 'NC' => 'Niyukaledoniya',
+ 'NE' => 'Nijeri',
+ 'NF' => 'izinga rya Norufoluke',
+ 'NG' => 'Nijeriya',
+ 'NI' => 'Nikaragwa',
+ 'NL' => 'Ubuholandi',
+ 'NO' => 'Noruveji',
+ 'NP' => 'Nepali',
+ 'NR' => 'Nawuru',
+ 'NU' => 'Niyuwe',
+ 'NZ' => 'Nuvelizelandi',
+ 'OM' => 'Omani',
+ 'PA' => 'Panama',
+ 'PE' => 'Peru',
+ 'PF' => 'Polineziya y’Abafaransa',
+ 'PG' => 'Papuwa Niyugineya',
+ 'PH' => 'Amazinga ya Filipine',
+ 'PK' => 'Pakisitani',
+ 'PL' => 'Polonye',
+ 'PM' => 'Sempiyeri na Mikeloni',
+ 'PN' => 'Pitikeyirini',
+ 'PR' => 'Puwetoriko',
+ 'PS' => 'Palesitina Wesitibanka na Gaza',
+ 'PT' => 'Porutugali',
+ 'PW' => 'Palawu',
+ 'PY' => 'Paragwe',
+ 'QA' => 'Katari',
+ 'RE' => 'Amazinga ya Reyiniyo',
+ 'RO' => 'Rumaniya',
+ 'RU' => 'Uburusiya',
+ 'RW' => 'u Rwanda',
+ 'SA' => 'Arabiya Sawudite',
+ 'SB' => 'Amazinga ya Salumoni',
+ 'SC' => 'Amazinga ya Seyisheli',
+ 'SD' => 'Sudani',
+ 'SE' => 'Suwedi',
+ 'SG' => 'Singapuru',
+ 'SH' => 'Sehelene',
+ 'SI' => 'Siloveniya',
+ 'SK' => 'Silovakiya',
+ 'SL' => 'Siyeralewone',
+ 'SM' => 'Sanimarino',
+ 'SN' => 'Senegali',
+ 'SO' => 'Somaliya',
+ 'SR' => 'Suriname',
+ 'ST' => 'Sawotome na Perensipe',
+ 'SV' => 'Eli Saluvatori',
+ 'SY' => 'Siriya',
+ 'SZ' => 'Suwazilandi',
+ 'TC' => 'Amazinga ya Turkisi na Cayikosi',
+ 'TD' => 'Cadi',
+ 'TG' => 'Togo',
+ 'TH' => 'Tayilandi',
+ 'TJ' => 'Tajikisitani',
+ 'TK' => 'Tokelawu',
+ 'TL' => 'Timoru y’iburasirazuba',
+ 'TM' => 'Turukumenisitani',
+ 'TN' => 'Tuniziya',
+ 'TO' => 'Tonga',
+ 'TR' => 'Turukiya',
+ 'TT' => 'Tirinidadi na Tobago',
+ 'TV' => 'Tuvalu',
+ 'TW' => 'Tayiwani',
+ 'TZ' => 'Tanzaniya',
+ 'UA' => 'Ikerene',
+ 'UG' => 'Ubugande',
+ 'US' => 'Leta Zunze Ubumwe za Amerika',
+ 'UY' => 'Irigwe',
+ 'UZ' => 'Uzubekisitani',
+ 'VA' => 'Umurwa wa Vatikani',
+ 'VC' => 'Sevensa na Gerenadine',
+ 'VE' => 'Venezuwela',
+ 'VG' => 'Ibirwa by’isugi by’Abongereza',
+ 'VI' => 'Amazinga y’Isugi y’Abanyamerika',
+ 'VN' => 'Viyetinamu',
+ 'VU' => 'Vanuwatu',
+ 'WF' => 'Walisi na Futuna',
+ 'WS' => 'Samowa',
+ 'YE' => 'Yemeni',
+ 'YT' => 'Mayote',
+ 'ZA' => 'Afurika y’Epfo',
+ 'ZM' => 'Zambiya',
+ 'ZW' => 'Zimbabwe',
+);
diff --git a/MLEB/cldr/CldrNames/CldrNamesRo.php b/MLEB/cldr/CldrNames/CldrNamesRo.php
new file mode 100644
index 00000000..95963720
--- /dev/null
+++ b/MLEB/cldr/CldrNames/CldrNamesRo.php
@@ -0,0 +1,1365 @@
+<?php
+
+$languageNames = array(
+ 'aa' => 'afar',
+ 'ab' => 'abhază',
+ 'ace' => 'aceh',
+ 'ach' => 'acoli',
+ 'ada' => 'adangme',
+ 'ady' => 'adyghe',
+ 'ae' => 'avestană',
+ 'af' => 'afrikaans',
+ 'afh' => 'afrihili',
+ 'agq' => 'aghem',
+ 'ain' => 'ainu',
+ 'ak' => 'akan',
+ 'akk' => 'akkadiană',
+ 'ale' => 'aleută',
+ 'alt' => 'altaică meridională',
+ 'am' => 'amharică',
+ 'an' => 'aragoneză',
+ 'ang' => 'engleză veche',
+ 'anp' => 'angika',
+ 'ar' => 'arabă',
+ 'ar-001' => 'arabă standard modernă',
+ 'arc' => 'aramaică',
+ 'arn' => 'araucaniană',
+ 'arp' => 'arapaho',
+ 'arw' => 'arawak',
+ 'as' => 'asameză',
+ 'asa' => 'asu',
+ 'ast' => 'asturiană',
+ 'av' => 'avară',
+ 'awa' => 'awadhi',
+ 'ay' => 'aymara',
+ 'az' => 'azeră',
+ 'ba' => 'bașkiră',
+ 'bal' => 'baluchi',
+ 'ban' => 'balineză',
+ 'bas' => 'basaa',
+ 'bax' => 'bamun',
+ 'bbj' => 'ghomala',
+ 'be' => 'bielorusă',
+ 'bej' => 'beja',
+ 'bem' => 'bemba',
+ 'bez' => 'bena',
+ 'bfd' => 'bafut',
+ 'bg' => 'bulgară',
+ 'bho' => 'bhojpuri',
+ 'bi' => 'bislama',
+ 'bik' => 'bikol',
+ 'bin' => 'bini',
+ 'bkm' => 'kom',
+ 'bla' => 'siksika',
+ 'bm' => 'bambara',
+ 'bn' => 'bengaleză',
+ 'bo' => 'tibetană',
+ 'br' => 'bretonă',
+ 'bra' => 'braj',
+ 'brx' => 'bodo',
+ 'bs' => 'bosniacă',
+ 'bss' => 'akoose',
+ 'bua' => 'buriat',
+ 'bug' => 'bugineză',
+ 'bum' => 'bulu',
+ 'byn' => 'blin',
+ 'byv' => 'medumba',
+ 'ca' => 'catalană',
+ 'cad' => 'caddo',
+ 'car' => 'carib',
+ 'cay' => 'cayuga',
+ 'cch' => 'atsam',
+ 'ce' => 'cecenă',
+ 'ceb' => 'cebuano',
+ 'cgg' => 'chiga',
+ 'ch' => 'chamorro',
+ 'chb' => 'chibcha',
+ 'chg' => 'chagatai',
+ 'chk' => 'chuukese',
+ 'chm' => 'mari',
+ 'chn' => 'jargon chinook',
+ 'cho' => 'choctaw',
+ 'chp' => 'chipewyan',
+ 'chr' => 'cherokee',
+ 'chy' => 'cheyenne',
+ 'ckb' => 'kurdă sorani',
+ 'co' => 'corsicană',
+ 'cop' => 'coptă',
+ 'cr' => 'cree',
+ 'crh' => 'turcă crimeeană',
+ 'cs' => 'cehă',
+ 'csb' => 'cașubiană',
+ 'cu' => 'slavonă',
+ 'cv' => 'ciuvașă',
+ 'cy' => 'galeză',
+ 'da' => 'daneză',
+ 'dak' => 'dakota',
+ 'dar' => 'dargwa',
+ 'dav' => 'taita',
+ 'de' => 'germană',
+ 'de-at' => 'germană austriacă',
+ 'de-ch' => 'germană standard elvețiană',
+ 'del' => 'delaware',
+ 'den' => 'slave',
+ 'dgr' => 'dogrib',
+ 'din' => 'dinka',
+ 'dje' => 'zarma',
+ 'doi' => 'dogri',
+ 'dsb' => 'sorabă de jos',
+ 'dua' => 'duala',
+ 'dum' => 'olandeză mijlocie',
+ 'dv' => 'divehi',
+ 'dyo' => 'jola-fonyi',
+ 'dyu' => 'dyula',
+ 'dz' => 'dzongkha',
+ 'dzg' => 'dazaga',
+ 'ebu' => 'embu',
+ 'ee' => 'ewe',
+ 'efi' => 'efik',
+ 'egy' => 'egipteană veche',
+ 'eka' => 'ekajuk',
+ 'el' => 'greacă',
+ 'elx' => 'elamită',
+ 'en' => 'engleză',
+ 'en-au' => 'engleză australiană',
+ 'en-ca' => 'engleză canadiană',
+ 'en-gb' => 'engleză britanică',
+ 'en-us' => 'engleză americană',
+ 'enm' => 'engleză mijlocie',
+ 'eo' => 'esperanto',
+ 'es' => 'spaniolă',
+ 'es-419' => 'spaniolă latino-americană',
+ 'es-es' => 'spaniolă europeană',
+ 'es-mx' => 'spaniolă mexicană',
+ 'et' => 'estoniană',
+ 'eu' => 'bască',
+ 'ewo' => 'ewondo',
+ 'fa' => 'persană',
+ 'fan' => 'fang',
+ 'fat' => 'fanti',
+ 'ff' => 'fulah',
+ 'fi' => 'finlandeză',
+ 'fil' => 'filipineză',
+ 'fj' => 'fijiană',
+ 'fo' => 'faroeză',
+ 'fon' => 'fon',
+ 'fr' => 'franceză',
+ 'fr-ca' => 'franceză canadiană',
+ 'fr-ch' => 'franceză elvețiană',
+ 'frm' => 'franceză mijlocie',
+ 'fro' => 'franceză veche',
+ 'frr' => 'frizonă nordică',
+ 'frs' => 'frizonă orientală',
+ 'fur' => 'friulană',
+ 'fy' => 'frizonă occidentală',
+ 'ga' => 'irlandeză',
+ 'gaa' => 'ga',
+ 'gag' => 'găgăuză',
+ 'gay' => 'gayo',
+ 'gba' => 'gbaya',
+ 'gd' => 'gaelică scoțiană',
+ 'gez' => 'geez',
+ 'gil' => 'gilbertină',
+ 'gl' => 'galiciană',
+ 'gmh' => 'germană mijlocie înaltă',
+ 'gn' => 'guarani',
+ 'goh' => 'germană veche înaltă',
+ 'gon' => 'gondi',
+ 'gor' => 'gorontalo',
+ 'got' => 'gotică',
+ 'grb' => 'grebo',
+ 'grc' => 'greacă veche',
+ 'gsw' => 'germană elvețiană',
+ 'gu' => 'gujarati',
+ 'guz' => 'gusii',
+ 'gv' => 'manx',
+ 'gwi' => 'gwichʼin',
+ 'ha' => 'hausa',
+ 'hai' => 'haida',
+ 'haw' => 'hawaiiană',
+ 'he' => 'ebraică',
+ 'hi' => 'hindi',
+ 'hil' => 'hiligaynon',
+ 'hit' => 'hitită',
+ 'hmn' => 'hmong',
+ 'ho' => 'hiri motu',
+ 'hr' => 'croată',
+ 'hsb' => 'sorabă de sus',
+ 'ht' => 'haitiană',
+ 'hu' => 'maghiară',
+ 'hup' => 'hupa',
+ 'hy' => 'armeană',
+ 'hz' => 'herero',
+ 'ia' => 'interlingua',
+ 'iba' => 'iban',
+ 'ibb' => 'ibibio',
+ 'id' => 'indoneziană',
+ 'ie' => 'interlingue',
+ 'ig' => 'igbo',
+ 'ii' => 'sichuan yi',
+ 'ik' => 'inupiak',
+ 'ilo' => 'iloko',
+ 'inh' => 'ingușă',
+ 'io' => 'ido',
+ 'is' => 'islandeză',
+ 'it' => 'italiană',
+ 'iu' => 'inuktitut',
+ 'ja' => 'japoneză',
+ 'jbo' => 'lojban',
+ 'jgo' => 'ngomba',
+ 'jmc' => 'machame',
+ 'jpr' => 'iudeo-persană',
+ 'jrb' => 'iudeo-arabă',
+ 'jv' => 'javaneză',
+ 'ka' => 'georgiană',
+ 'kaa' => 'karakalpak',
+ 'kab' => 'kabyle',
+ 'kac' => 'kachin',
+ 'kaj' => 'jju',
+ 'kam' => 'kamba',
+ 'kaw' => 'kawi',
+ 'kbd' => 'kabardian',
+ 'kbl' => 'kanembu',
+ 'kcg' => 'tyap',
+ 'kde' => 'makonde',
+ 'kea' => 'kabuverdianu',
+ 'kfo' => 'koro',
+ 'kg' => 'congoleză',
+ 'kha' => 'khasi',
+ 'kho' => 'limbp khotaneză',
+ 'khq' => 'koyra chiini',
+ 'ki' => 'kikuyu',
+ 'kj' => 'kuanyama',
+ 'kk' => 'kazahă',
+ 'kkj' => 'kako',
+ 'kl' => 'kalaallisut',
+ 'kln' => 'kalenjin',
+ 'km' => 'khmeră',
+ 'kmb' => 'kimbundu',
+ 'kn' => 'kannada',
+ 'ko' => 'coreeană',
+ 'koi' => 'komi-permiak',
+ 'kok' => 'konkani',
+ 'kos' => 'kosrae',
+ 'kpe' => 'kpelle',
+ 'kr' => 'kanuri',
+ 'krc' => 'karaceai-balkar',
+ 'krl' => 'kareliană',
+ 'kru' => 'kurukh',
+ 'ks' => 'cașmiră',
+ 'ksb' => 'shambala',
+ 'ksf' => 'bafia',
+ 'ksh' => 'kölsch',
+ 'ku' => 'kurdă',
+ 'kum' => 'kumyk',
+ 'kut' => 'kutenai',
+ 'kv' => 'komi',
+ 'kw' => 'cornică',
+ 'ky' => 'kârgâză',
+ 'la' => 'latină',
+ 'lad' => 'ladino',
+ 'lag' => 'langi',
+ 'lah' => 'lahnda',
+ 'lam' => 'lamba',
+ 'lb' => 'luxemburgheză',
+ 'lez' => 'lezghian',
+ 'lg' => 'ganda',
+ 'li' => 'limburgheză',
+ 'lkt' => 'lakota',
+ 'ln' => 'lingala',
+ 'lo' => 'laoțiană',
+ 'lol' => 'mongo',
+ 'loz' => 'lozi',
+ 'lt' => 'lituaniană',
+ 'lu' => 'luba-katanga',
+ 'lua' => 'luba-lulua',
+ 'lui' => 'luiseno',
+ 'lun' => 'lunda',
+ 'luo' => 'luo',
+ 'lus' => 'lusahi',
+ 'luy' => 'luyia',
+ 'lv' => 'letonă',
+ 'mad' => 'madureză',
+ 'maf' => 'mafa',
+ 'mag' => 'magahi',
+ 'mai' => 'maithili',
+ 'mak' => 'makasar',
+ 'man' => 'mandingo',
+ 'mas' => 'masai',
+ 'mde' => 'maba',
+ 'mdf' => 'moksha',
+ 'mdr' => 'mandar',
+ 'men' => 'mende',
+ 'mer' => 'meru',
+ 'mfe' => 'morisyen',
+ 'mg' => 'malgașă',
+ 'mga' => 'irlandeză mijlocie',
+ 'mgh' => 'makhuwa-meetto',
+ 'mgo' => 'meta’',
+ 'mh' => 'marshalleză',
+ 'mi' => 'maori',
+ 'mic' => 'micmac',
+ 'min' => 'minangkabau',
+ 'mk' => 'macedoneană',
+ 'ml' => 'malayalam',
+ 'mn' => 'mongolă',
+ 'mnc' => 'manciuriană',
+ 'mni' => 'manipur',
+ 'moh' => 'mohawk',
+ 'mos' => 'mossi',
+ 'mr' => 'marathi',
+ 'ms' => 'malaeză',
+ 'mt' => 'malteză',
+ 'mua' => 'mundang',
+ 'mul' => 'limbi multiple',
+ 'mus' => 'creek',
+ 'mwl' => 'mirandeză',
+ 'mwr' => 'marwari',
+ 'my' => 'birmaneză',
+ 'mye' => 'myene',
+ 'myv' => 'erzya',
+ 'na' => 'nauru',
+ 'nap' => 'napolitană',
+ 'naq' => 'nama',
+ 'nb' => 'norvegiană bokmål',
+ 'nd' => 'ndebele de nord',
+ 'nds' => 'germana de jos',
+ 'ne' => 'nepaleză',
+ 'new' => 'newari',
+ 'ng' => 'ndonga',
+ 'nia' => 'nias',
+ 'niu' => 'niueană',
+ 'nl' => 'olandeză',
+ 'nl-be' => 'flamandă',
+ 'nmg' => 'kwasio',
+ 'nn' => 'norvegiană nynorsk',
+ 'nnh' => 'ngiemboon',
+ 'no' => 'norvegiană',
+ 'nog' => 'nogai',
+ 'non' => 'nordică veche',
+ 'nqo' => 'n’ko',
+ 'nr' => 'ndebele de sud',
+ 'nso' => 'sotho de nord',
+ 'nus' => 'nuer',
+ 'nv' => 'navajo',
+ 'nwc' => 'newari clasică',
+ 'ny' => 'nyanja',
+ 'nym' => 'nyamwezi',
+ 'nyn' => 'nyankole',
+ 'nyo' => 'nyoro',
+ 'nzi' => 'nzima',
+ 'oc' => 'occitană',
+ 'oj' => 'ojibwa',
+ 'om' => 'oromo',
+ 'or' => 'oriya',
+ 'os' => 'osetă',
+ 'osa' => 'osage',
+ 'ota' => 'turcă otomană',
+ 'pa' => 'punjabi',
+ 'pag' => 'pangasinan',
+ 'pal' => 'pahlavi',
+ 'pam' => 'pampanga',
+ 'pap' => 'papiamento',
+ 'pau' => 'palauană',
+ 'peo' => 'persană veche',
+ 'phn' => 'feniciană',
+ 'pi' => 'pali',
+ 'pl' => 'poloneză',
+ 'pon' => 'pohnpeiană',
+ 'pro' => 'provensală veche',
+ 'ps' => 'paștună',
+ 'pt' => 'portugheză',
+ 'pt-br' => 'portugheză braziliană',
+ 'pt-pt' => 'portugheză europeană',
+ 'qu' => 'quechua',
+ 'quc' => 'kʼicheʼ',
+ 'raj' => 'rajasthani',
+ 'rap' => 'rapanui',
+ 'rar' => 'rarotongan',
+ 'rm' => 'romanșă',
+ 'rn' => 'kirundi',
+ 'ro' => 'română',
+ 'ro-md' => 'moldovenească',
+ 'rof' => 'rombo',
+ 'rom' => 'romani',
+ 'ru' => 'rusă',
+ 'rup' => 'aromână',
+ 'rw' => 'kinyarwanda',
+ 'rwk' => 'rwa',
+ 'sa' => 'sanscrită',
+ 'sad' => 'sandawe',
+ 'sah' => 'sakha',
+ 'sam' => 'aramaică samariteană',
+ 'saq' => 'samburu',
+ 'sas' => 'sasak',
+ 'sat' => 'santali',
+ 'sba' => 'ngambay',
+ 'sbp' => 'sangu',
+ 'sc' => 'sardiniană',
+ 'scn' => 'siciliană',
+ 'sco' => 'scots',
+ 'sd' => 'sindhi',
+ 'se' => 'sami de nord',
+ 'see' => 'seneca',
+ 'seh' => 'sena',
+ 'sel' => 'selkup',
+ 'ses' => 'koyraboro Senni',
+ 'sg' => 'sango',
+ 'sga' => 'irlandeză veche',
+ 'sh' => 'sârbo-croată',
+ 'shi' => 'tachelhit',
+ 'shn' => 'shan',
+ 'shu' => 'arabă ciadiană',
+ 'si' => 'singhaleză',
+ 'sid' => 'sidamo',
+ 'sk' => 'slovacă',
+ 'sl' => 'slovenă',
+ 'sm' => 'samoană',
+ 'sma' => 'sami de sud',
+ 'smj' => 'lule sami',
+ 'smn' => 'inari sami',
+ 'sms' => 'skolt sami',
+ 'sn' => 'shona',
+ 'snk' => 'soninke',
+ 'so' => 'somaleză',
+ 'sog' => 'sogdien',
+ 'sq' => 'albaneză',
+ 'sr' => 'sârbă',
+ 'srn' => 'sranan tongo',
+ 'srr' => 'serer',
+ 'ss' => 'swati',
+ 'ssy' => 'saho',
+ 'st' => 'sesotho',
+ 'su' => 'sundaneză',
+ 'suk' => 'sukuma',
+ 'sus' => 'susu',
+ 'sux' => 'sumeriană',
+ 'sv' => 'suedeză',
+ 'sw' => 'swahili',
+ 'swb' => 'comoreză',
+ 'swc' => 'swahili Congo',
+ 'syc' => 'siriacă clasică',
+ 'syr' => 'siriacă',
+ 'ta' => 'tamilă',
+ 'te' => 'telugu',
+ 'tem' => 'timne',
+ 'teo' => 'teso',
+ 'ter' => 'tereno',
+ 'tet' => 'tetum',
+ 'tg' => 'tadjică',
+ 'th' => 'thailandeză',
+ 'ti' => 'tigrină',
+ 'tig' => 'tigre',
+ 'tiv' => 'tiv',
+ 'tk' => 'turkmenă',
+ 'tkl' => 'tokelau',
+ 'tl' => 'tagalog',
+ 'tlh' => 'klingoniană',
+ 'tli' => 'tlingit',
+ 'tmh' => 'tamashek',
+ 'tn' => 'setswana',
+ 'to' => 'tonga',
+ 'tog' => 'nyasa tonga',
+ 'tpi' => 'tok pisin',
+ 'tr' => 'turcă',
+ 'trv' => 'taroko',
+ 'ts' => 'tsonga',
+ 'tsi' => 'tsimshian',
+ 'tt' => 'tătară',
+ 'tum' => 'tumbuka',
+ 'tvl' => 'tuvalu',
+ 'tw' => 'twi',
+ 'twq' => 'tasawaq',
+ 'ty' => 'tahitiană',
+ 'tyv' => 'tuvană',
+ 'tzm' => 'tamazight central marocană',
+ 'udm' => 'udmurt',
+ 'ug' => 'uigură',
+ 'uga' => 'ugaritică',
+ 'uk' => 'ucraineană',
+ 'umb' => 'umbundu',
+ 'und' => 'limbă necunoscută',
+ 'ur' => 'urdu',
+ 'uz' => 'uzbecă',
+ 'vai' => 'vai',
+ 've' => 'venda',
+ 'vi' => 'vietnameză',
+ 'vo' => 'volapuk',
+ 'vot' => 'votic',
+ 'vun' => 'vunjo',
+ 'wa' => 'valonă',
+ 'wae' => 'walser',
+ 'wal' => 'walamo',
+ 'war' => 'waray',
+ 'was' => 'washo',
+ 'wo' => 'wolof',
+ 'xal' => 'calmucă',
+ 'xh' => 'xhosa',
+ 'xog' => 'soga',
+ 'yao' => 'yao',
+ 'yap' => 'yapeză',
+ 'yav' => 'yangben',
+ 'ybb' => 'yemba',
+ 'yi' => 'idiș',
+ 'yo' => 'yoruba',
+ 'yue' => 'cantoneză',
+ 'za' => 'zhuang',
+ 'zap' => 'zapotecă',
+ 'zbl' => 'simboluri Bilss',
+ 'zen' => 'zenaga',
+ 'zgh' => 'tamazight standard marocană',
+ 'zh' => 'chineză',
+ 'zh-hans' => 'chineză simplificată',
+ 'zh-hant' => 'chineză tradițională',
+ 'zu' => 'zulu',
+ 'zun' => 'zuni',
+ 'zxx' => 'fară conținut lingvistic',
+ 'zza' => 'zaza',
+);
+
+$currencyNames = array(
+ 'ADP' => 'pesetă andorrană',
+ 'AED' => 'dirham din Emiratele Arabe Unite',
+ 'AFN' => 'afgani afgan',
+ 'ALL' => 'leka albaneză',
+ 'AMD' => 'dram armenesc',
+ 'ANG' => 'gulden din Antilele Olandeze',
+ 'AOA' => 'kwanza angoleză',
+ 'ARP' => 'peso argentinian (1983–1985)',
+ 'ARS' => 'peso argentinian',
+ 'ATS' => 'șiling austriac',
+ 'AUD' => 'dolar australian',
+ 'AWG' => 'florin aruban',
+ 'AZM' => 'manat azer (1993–2006)',
+ 'AZN' => 'manat azer',
+ 'BAD' => 'dinar Bosnia-Herțegovina (1992–1994)',
+ 'BAM' => 'marcă convertibilă din Bosnia și Herțegovina',
+ 'BBD' => 'dolar Barbados',
+ 'BDT' => 'taka din Bangladesh',
+ 'BEC' => 'franc belgian (convertibil)',
+ 'BEF' => 'franc belgian',
+ 'BEL' => 'franc belgian (financiar)',
+ 'BGN' => 'leva bulgărească',
+ 'BHD' => 'dinar din Bahrain',
+ 'BIF' => 'franc burundez',
+ 'BMD' => 'dolar din Bermuda',
+ 'BND' => 'dolar din Brunei',
+ 'BOB' => 'boliviano bolivian',
+ 'BOP' => 'peso bolivian',
+ 'BOV' => 'mvdol bolivian',
+ 'BRE' => 'cruzeiro brazilian (1990–1993)',
+ 'BRL' => 'real brazilian',
+ 'BRR' => 'cruzeiro brazilian (1993–1994)',
+ 'BSD' => 'dolar din Bahamas',
+ 'BTN' => 'ngultrum din Bhutan',
+ 'BUK' => 'kyat birman',
+ 'BWP' => 'pula Botswana',
+ 'BYR' => 'rublă belarusă',
+ 'BZD' => 'dolar din Belize',
+ 'CAD' => 'dolar canadian',
+ 'CDF' => 'franc congolez',
+ 'CHF' => 'franc elvețian',
+ 'CLP' => 'peso chilian',
+ 'CNY' => 'yuan chinezesc',
+ 'COP' => 'peso columbian',
+ 'CRC' => 'colon costarican',
+ 'CSD' => 'dinar Serbia și Muntenegru (2002–2006)',
+ 'CUC' => 'peso cubanez convertibil',
+ 'CUP' => 'peso cubanez',
+ 'CVE' => 'escudo din Capul Verde',
+ 'CYP' => 'liră cipriotă',
+ 'CZK' => 'coroană cehă',
+ 'DDM' => 'marcă est-germană',
+ 'DEM' => 'marcă germană',
+ 'DJF' => 'franc djiboutian',
+ 'DKK' => 'coroană daneză',
+ 'DOP' => 'peso dominican',
+ 'DZD' => 'dinar algerian',
+ 'ECS' => 'sucre Ecuador',
+ 'EEK' => 'coroană estoniană',
+ 'EGP' => 'liră egipteană',
+ 'ERN' => 'nakfa eritreeană',
+ 'ESA' => 'peseta spaniolă (cont A)',
+ 'ESB' => 'peseta spaniolă (cont convertibil)',
+ 'ESP' => 'pesetă spaniolă',
+ 'ETB' => 'birr etiopian',
+ 'EUR' => 'euro',
+ 'FIM' => 'marcă finlandeză',
+ 'FJD' => 'dolar fijian',
+ 'FKP' => 'liră din Insulele Falkland',
+ 'FRF' => 'franc francez',
+ 'GBP' => 'liră sterlină',
+ 'GEL' => 'lari georgian',
+ 'GHC' => 'cedi Ghana (1979–2007)',
+ 'GHS' => 'cedi ghanez',
+ 'GIP' => 'liră din Gibraltar',
+ 'GMD' => 'dalasi din Gambia',
+ 'GNF' => 'franc guineean',
+ 'GRD' => 'drahmă grecească',
+ 'GTQ' => 'quetzal guatemalez',
+ 'GWP' => 'peso Guineea-Bissau',
+ 'GYD' => 'dolar guyanez',
+ 'HKD' => 'dolar din Hong Kong',
+ 'HNL' => 'lempira honduriană',
+ 'HRD' => 'dinar croat',
+ 'HRK' => 'kuna croată',
+ 'HTG' => 'gourde din Haiti',
+ 'HUF' => 'forint maghiar',
+ 'IDR' => 'rupie indoneziană',
+ 'IEP' => 'liră irlandeză',
+ 'ILP' => 'liră israeliană',
+ 'ILS' => 'șechel israelian nou',
+ 'INR' => 'rupie indiană',
+ 'IQD' => 'dinar irakian',
+ 'IRR' => 'rial iranian',
+ 'ISK' => 'coroană islandeză',
+ 'ITL' => 'liră italiană',
+ 'JMD' => 'dolar jamaican',
+ 'JOD' => 'dinar iordanian',
+ 'JPY' => 'yen japonez',
+ 'KES' => 'șiling kenyan',
+ 'KGS' => 'som kârgâz',
+ 'KHR' => 'riel cambodgian',
+ 'KMF' => 'franc comorian',
+ 'KPW' => 'won nord-coreean',
+ 'KRW' => 'won sud-coreean',
+ 'KWD' => 'dinar kuweitian',
+ 'KYD' => 'dolar din Insulele Cayman',
+ 'KZT' => 'tenge kazahă',
+ 'LAK' => 'kip laoțian',
+ 'LBP' => 'liră libaneză',
+ 'LKR' => 'rupie din Sri Lanka',
+ 'LRD' => 'dolar liberian',
+ 'LSL' => 'loti lesothian',
+ 'LTL' => 'litu lituanian',
+ 'LUC' => 'franc convertibil luxemburghez',
+ 'LUF' => 'franc luxemburghez',
+ 'LUL' => 'franc financiar luxemburghez',
+ 'LVL' => 'lats letonian',
+ 'LVR' => 'rublă Letonia',
+ 'LYD' => 'dinar libian',
+ 'MAD' => 'dirham marocan',
+ 'MAF' => 'franc marocan',
+ 'MDL' => 'leu moldovenesc',
+ 'MGA' => 'ariary malgaș',
+ 'MGF' => 'franc Madagascar',
+ 'MKD' => 'dinar macedonean',
+ 'MLF' => 'franc Mali',
+ 'MMK' => 'kyat din Myanmar',
+ 'MNT' => 'tugrik mongol',
+ 'MOP' => 'pataca din Macao',
+ 'MRO' => 'ouguiya mauritană',
+ 'MTL' => 'liră malteză',
+ 'MUR' => 'rupie mauritiană',
+ 'MVR' => 'rufiyaa maldiviană',
+ 'MWK' => 'kwacha malawiană',
+ 'MXN' => 'peso mexican',
+ 'MXP' => 'peso mexican de argint (1861–1992)',
+ 'MYR' => 'ringgit malaiezian',
+ 'MZE' => 'escudo Mozambic',
+ 'MZM' => 'metical Mozambic vechi',
+ 'MZN' => 'metical mozambican',
+ 'NAD' => 'dolar namibian',
+ 'NGN' => 'naira nigeriană',
+ 'NIC' => 'cordoba nicaraguană (1988–1991)',
+ 'NIO' => 'cordoba nicaraguană',
+ 'NLG' => 'gulden olandez',
+ 'NOK' => 'coroană norvegiană',
+ 'NPR' => 'rupie nepaleză',
+ 'NZD' => 'dolar neozeelandez',
+ 'OMR' => 'rial omanez',
+ 'PAB' => 'balboa panameză',
+ 'PEI' => 'inti peruvian',
+ 'PEN' => 'sol nou peruvian',
+ 'PES' => 'sol peruvian (1863–1965)',
+ 'PGK' => 'kina din Papua-Noua Guinee',
+ 'PHP' => 'peso filipinez',
+ 'PKR' => 'rupie pakistaneză',
+ 'PLN' => 'zlot polonez',
+ 'PLZ' => 'zlot polonez (1950–1995)',
+ 'PYG' => 'guarani paraguayan',
+ 'QAR' => 'rial qatarian',
+ 'RHD' => 'dolar rhodesian',
+ 'ROL' => 'leu românesc (1952–2006)',
+ 'RON' => 'leu românesc',
+ 'RSD' => 'dinar sârbesc',
+ 'RUB' => 'rublă rusească',
+ 'RWF' => 'franc rwandez',
+ 'SAR' => 'rial saudit',
+ 'SBD' => 'dolar din Insulele Solomon',
+ 'SCR' => 'rupie din Seychelles',
+ 'SDD' => 'dinar sudanez',
+ 'SDG' => 'liră sudaneză',
+ 'SDP' => 'liră sudaneză (1957–1998)',
+ 'SEK' => 'coroană suedeză',
+ 'SGD' => 'dolar Singapore',
+ 'SHP' => 'liră Insula Sf. Elena',
+ 'SIT' => 'tolar sloven',
+ 'SKK' => 'coroană slovacă',
+ 'SLL' => 'leone din Sierra Leone',
+ 'SOS' => 'șiling somalez',
+ 'SRD' => 'dolar surinamez',
+ 'SRG' => 'gulden Surinam',
+ 'SSP' => 'liră sud-sudaneză',
+ 'STD' => 'dobra Sao Tome și Principe',
+ 'SUR' => 'rublă sovietică',
+ 'SVC' => 'colon El Salvador',
+ 'SYP' => 'liră siriană',
+ 'SZL' => 'lilangeni din Swaziland',
+ 'THB' => 'baht thailandez',
+ 'TJR' => 'rublă Tadjikistan',
+ 'TJS' => 'somoni tadjic',
+ 'TMM' => 'manat turkmen (1993–2009)',
+ 'TMT' => 'manat turkmen',
+ 'TND' => 'dinar tunisian',
+ 'TOP' => 'pa’anga tongană',
+ 'TRL' => 'liră turcească (1922–2005)',
+ 'TRY' => 'liră turcească',
+ 'TTD' => 'dolar din Trinidad-Tobago',
+ 'TWD' => 'dolar nou din Taiwan',
+ 'TZS' => 'șiling tanzanian',
+ 'UAH' => 'hryvna ucraineană',
+ 'UAK' => 'carboavă ucraineană',
+ 'UGS' => 'șiling ugandez (1966–1987)',
+ 'UGX' => 'șiling ugandez',
+ 'USD' => 'dolar american',
+ 'USN' => 'dolar american (ziua următoare)',
+ 'USS' => 'dolar american (aceeași zi)',
+ 'UYP' => 'peso Uruguay (1975–1993)',
+ 'UYU' => 'peso uruguayan',
+ 'UZS' => 'sum Uzbekistan',
+ 'VEB' => 'bolivar Venezuela (1871–2008)',
+ 'VEF' => 'bolivar venezuelean',
+ 'VND' => 'dong vietnamez',
+ 'VUV' => 'vatu din Vanuatu',
+ 'WST' => 'tala samoană',
+ 'XAF' => 'franc CFA BEAC',
+ 'XAG' => 'argint',
+ 'XAU' => 'aur',
+ 'XBA' => 'unitate compusă europeană',
+ 'XBB' => 'unitate monetară europeană',
+ 'XBC' => 'unitate de cont europeană (XBC)',
+ 'XBD' => 'unitate de cont europeană (XBD)',
+ 'XCD' => 'dolar din Caraibele de Est',
+ 'XDR' => 'drepturi speciale de tragere',
+ 'XEU' => 'unitate de monedă europeană',
+ 'XFO' => 'franc francez de aur',
+ 'XFU' => 'franc UIC francez',
+ 'XOF' => 'franc CFA BCEAO',
+ 'XPD' => 'paladiu',
+ 'XPF' => 'franc CFP',
+ 'XPT' => 'platină',
+ 'XTS' => 'cod monetar de test',
+ 'XXX' => 'monedă necunoscută',
+ 'YDD' => 'dinar Yemen',
+ 'YER' => 'rial yemenit',
+ 'YUD' => 'dinar iugoslav greu',
+ 'YUM' => 'dinar iugoslav nou',
+ 'YUN' => 'dinar iugoslav convertibil',
+ 'ZAL' => 'rand sud-african (financiar)',
+ 'ZAR' => 'rand sud-african',
+ 'ZMK' => 'kwacha zambian (1968–2012)',
+ 'ZMW' => 'kwacha zambian',
+ 'ZRN' => 'zair nou',
+ 'ZWD' => 'dolar Zimbabwe (1980–2008)',
+ 'ZWL' => 'dolar Zimbabwe (2009)',
+ 'ZWR' => 'dolar Zimbabwe (2008)',
+);
+
+$currencySymbols = array(
+ 'AED' => 'AED',
+ 'AFN' => 'AFN',
+ 'ALL' => 'ALL',
+ 'AMD' => 'AMD',
+ 'ANG' => 'ANG',
+ 'AOA' => 'AOA',
+ 'ARS' => 'ARS',
+ 'AUD' => 'AUD',
+ 'AWG' => 'AWG',
+ 'AZN' => 'AZN',
+ 'BAM' => 'BAM',
+ 'BBD' => 'BBD',
+ 'BDT' => 'BDT',
+ 'BGN' => 'BGN',
+ 'BHD' => 'BHD',
+ 'BIF' => 'BIF',
+ 'BMD' => 'BMD',
+ 'BND' => 'BND',
+ 'BOB' => 'BOB',
+ 'BRL' => 'BRL',
+ 'BSD' => 'BSD',
+ 'BTN' => 'BTN',
+ 'BWP' => 'BWP',
+ 'BYR' => 'BYR',
+ 'BZD' => 'BZD',
+ 'CAD' => 'CAD',
+ 'CDF' => 'CDF',
+ 'CHF' => 'CHF',
+ 'CLP' => 'CLP',
+ 'CNY' => 'CNY',
+ 'COP' => 'COP',
+ 'CRC' => 'CRC',
+ 'CUC' => 'CUC',
+ 'CUP' => 'CUP',
+ 'CVE' => 'CVE',
+ 'CZK' => 'CZK',
+ 'DJF' => 'DJF',
+ 'DKK' => 'DKK',
+ 'DOP' => 'DOP',
+ 'DZD' => 'DZD',
+ 'EGP' => 'EGP',
+ 'ERN' => 'ERN',
+ 'ETB' => 'ETB',
+ 'EUR' => 'EUR',
+ 'FJD' => 'FJD',
+ 'FKP' => 'FKP',
+ 'GBP' => 'GBP',
+ 'GEL' => 'GEL',
+ 'GHS' => 'GHS',
+ 'GIP' => 'GIP',
+ 'GMD' => 'GMD',
+ 'GNF' => 'GNF',
+ 'GTQ' => 'GTQ',
+ 'GYD' => 'GYD',
+ 'HKD' => 'HKD',
+ 'HNL' => 'HNL',
+ 'HRK' => 'HRK',
+ 'HTG' => 'HTG',
+ 'HUF' => 'HUF',
+ 'IDR' => 'IDR',
+ 'ILS' => 'ILS',
+ 'INR' => 'INR',
+ 'IQD' => 'IQD',
+ 'IRR' => 'IRR',
+ 'ISK' => 'ISK',
+ 'JMD' => 'JMD',
+ 'JOD' => 'JOD',
+ 'JPY' => 'JPY',
+ 'KES' => 'KES',
+ 'KGS' => 'KGS',
+ 'KHR' => 'KHR',
+ 'KMF' => 'KMF',
+ 'KPW' => 'KPW',
+ 'KRW' => 'KRW',
+ 'KWD' => 'KWD',
+ 'KYD' => 'KYD',
+ 'KZT' => 'KZT',
+ 'LAK' => 'LAK',
+ 'LBP' => 'LBP',
+ 'LKR' => 'LKR',
+ 'LRD' => 'LRD',
+ 'LTL' => 'LTL',
+ 'LVL' => 'LVL',
+ 'LYD' => 'LYD',
+ 'MAD' => 'MAD',
+ 'MDL' => 'MDL',
+ 'MGA' => 'MGA',
+ 'MKD' => 'MKD',
+ 'MMK' => 'MMK',
+ 'MNT' => 'MNT',
+ 'MOP' => 'MOP',
+ 'MRO' => 'MRO',
+ 'MUR' => 'MUR',
+ 'MVR' => 'MVR',
+ 'MWK' => 'MWK',
+ 'MXN' => 'MXN',
+ 'MYR' => 'MYR',
+ 'MZN' => 'MZN',
+ 'NAD' => 'NAD',
+ 'NGN' => 'NGN',
+ 'NIO' => 'NIO',
+ 'NOK' => 'NOK',
+ 'NPR' => 'NPR',
+ 'NZD' => 'NZD',
+ 'OMR' => 'OMR',
+ 'PAB' => 'PAB',
+ 'PEN' => 'PEN',
+ 'PGK' => 'PGK',
+ 'PHP' => 'PHP',
+ 'PKR' => 'PKR',
+ 'PLN' => 'PLN',
+ 'PYG' => 'PYG',
+ 'QAR' => 'QAR',
+ 'RON' => 'RON',
+ 'RSD' => 'RSD',
+ 'RUB' => 'RUB',
+ 'RWF' => 'RWF',
+ 'SAR' => 'SAR',
+ 'SBD' => 'SBD',
+ 'SCR' => 'SCR',
+ 'SDG' => 'SDG',
+ 'SEK' => 'SEK',
+ 'SGD' => 'SGD',
+ 'SHP' => 'SHP',
+ 'SLL' => 'SLL',
+ 'SOS' => 'SOS',
+ 'SRD' => 'SRD',
+ 'SSP' => 'SSP',
+ 'STD' => 'STD',
+ 'SYP' => 'SYP',
+ 'SZL' => 'SZL',
+ 'THB' => 'THB',
+ 'TJS' => 'TJS',
+ 'TMT' => 'TMT',
+ 'TND' => 'TND',
+ 'TOP' => 'TOP',
+ 'TRY' => 'TRY',
+ 'TTD' => 'TTD',
+ 'TWD' => 'TWD',
+ 'TZS' => 'TZS',
+ 'UAH' => 'UAH',
+ 'UGX' => 'UGX',
+ 'USD' => 'USD',
+ 'UYU' => 'UYU',
+ 'UZS' => 'UZS',
+ 'VEF' => 'VEF',
+ 'VND' => 'VND',
+ 'VUV' => 'VUV',
+ 'WST' => 'WST',
+ 'XAF' => 'FCFA',
+ 'XCD' => 'XCD',
+ 'XOF' => 'CFA',
+ 'XPF' => 'CFPF',
+ 'YER' => 'YER',
+ 'ZAR' => 'ZAR',
+ 'ZMW' => 'ZMW',
+);
+
+$countryNames = array(
+ 'AC' => 'Insula Ascension',
+ 'AD' => 'Andorra',
+ 'AE' => 'Emiratele Arabe Unite',
+ 'AF' => 'Afganistan',
+ 'AG' => 'Antigua și Barbuda',
+ 'AI' => 'Anguilla',
+ 'AL' => 'Albania',
+ 'AM' => 'Armenia',
+ 'AN' => 'Antilele Olandeze',
+ 'AO' => 'Angola',
+ 'AQ' => 'Antarctica',
+ 'AR' => 'Argentina',
+ 'AS' => 'Samoa Americană',
+ 'AT' => 'Austria',
+ 'AU' => 'Australia',
+ 'AW' => 'Aruba',
+ 'AX' => 'Insulele Åland',
+ 'AZ' => 'Azerbaidjan',
+ 'BA' => 'Bosnia și Herțegovina',
+ 'BB' => 'Barbados',
+ 'BD' => 'Bangladesh',
+ 'BE' => 'Belgia',
+ 'BF' => 'Burkina Faso',
+ 'BG' => 'Bulgaria',
+ 'BH' => 'Bahrain',
+ 'BI' => 'Burundi',
+ 'BJ' => 'Benin',
+ 'BL' => 'Sfântul Bartolomeu',
+ 'BM' => 'Bermuda',
+ 'BN' => 'Brunei',
+ 'BO' => 'Bolivia',
+ 'BQ' => 'Insulele Caraibe Olandeze',
+ 'BR' => 'Brazilia',
+ 'BS' => 'Bahamas',
+ 'BT' => 'Bhutan',
+ 'BV' => 'Insula Bouvet',
+ 'BW' => 'Botswana',
+ 'BY' => 'Belarus',
+ 'BZ' => 'Belize',
+ 'CA' => 'Canada',
+ 'CC' => 'Insulele Cocos (Keeling)',
+ 'CD' => 'Congo - Kinshasa',
+ 'CF' => 'Republica Centrafricană',
+ 'CG' => 'Congo - Brazzaville',
+ 'CH' => 'Elveția',
+ 'CI' => 'Côte d’Ivoire',
+ 'CK' => 'Insulele Cook',
+ 'CL' => 'Chile',
+ 'CM' => 'Camerun',
+ 'CN' => 'China',
+ 'CO' => 'Columbia',
+ 'CP' => 'Insula Clipperton',
+ 'CR' => 'Costa Rica',
+ 'CU' => 'Cuba',
+ 'CV' => 'Capul Verde',
+ 'CW' => 'Curaçao',
+ 'CX' => 'Insula Christmas',
+ 'CY' => 'Cipru',
+ 'CZ' => 'Republica Cehă',
+ 'DE' => 'Germania',
+ 'DG' => 'Diego Garcia',
+ 'DJ' => 'Djibouti',
+ 'DK' => 'Danemarca',
+ 'DM' => 'Dominica',
+ 'DO' => 'Republica Dominicană',
+ 'DZ' => 'Algeria',
+ 'EA' => 'Ceuta și Melilla',
+ 'EC' => 'Ecuador',
+ 'EE' => 'Estonia',
+ 'EG' => 'Egipt',
+ 'EH' => 'Sahara Occidentală',
+ 'ER' => 'Eritreea',
+ 'ES' => 'Spania',
+ 'ET' => 'Etiopia',
+ 'EU' => 'Uniunea Europeană',
+ 'FI' => 'Finlanda',
+ 'FJ' => 'Fiji',
+ 'FK' => 'Insulele Falkland',
+ 'FM' => 'Micronezia',
+ 'FO' => 'Insulele Feroe',
+ 'FR' => 'Franța',
+ 'GA' => 'Gabon',
+ 'GB' => 'Regatul Unit',
+ 'GD' => 'Grenada',
+ 'GE' => 'Georgia',
+ 'GF' => 'Guyana Franceză',
+ 'GG' => 'Guernsey',
+ 'GH' => 'Ghana',
+ 'GI' => 'Gibraltar',
+ 'GL' => 'Groenlanda',
+ 'GM' => 'Gambia',
+ 'GN' => 'Guineea',
+ 'GP' => 'Guadelupa',
+ 'GQ' => 'Guineea Ecuatorială',
+ 'GR' => 'Grecia',
+ 'GS' => 'Georgia de Sud și Insulele Sandwich de Sud',
+ 'GT' => 'Guatemala',
+ 'GU' => 'Guam',
+ 'GW' => 'Guineea-Bissau',
+ 'GY' => 'Guyana',
+ 'HK' => 'Hong Kong',
+ 'HM' => 'Insula Heard și Insulele McDonald',
+ 'HN' => 'Honduras',
+ 'HR' => 'Croația',
+ 'HT' => 'Haiti',
+ 'HU' => 'Ungaria',
+ 'IC' => 'Insulele Canare',
+ 'ID' => 'Indonezia',
+ 'IE' => 'Irlanda',
+ 'IL' => 'Israel',
+ 'IM' => 'Insula Man',
+ 'IN' => 'India',
+ 'IO' => 'Teritoriul Britanic din Oceanul Indian',
+ 'IQ' => 'Irak',
+ 'IR' => 'Iran',
+ 'IS' => 'Islanda',
+ 'IT' => 'Italia',
+ 'JE' => 'Jersey',
+ 'JM' => 'Jamaica',
+ 'JO' => 'Iordania',
+ 'JP' => 'Japonia',
+ 'KE' => 'Kenya',
+ 'KG' => 'Kârgâzstan',
+ 'KH' => 'Cambodgia',
+ 'KI' => 'Kiribati',
+ 'KM' => 'Comore',
+ 'KN' => 'Saint Kitts și Nevis',
+ 'KP' => 'Coreea de Nord',
+ 'KR' => 'Coreea de Sud',
+ 'KW' => 'Kuweit',
+ 'KY' => 'Insulele Cayman',
+ 'KZ' => 'Kazahstan',
+ 'LA' => 'Laos',
+ 'LB' => 'Liban',
+ 'LC' => 'Sfânta Lucia',
+ 'LI' => 'Liechtenstein',
+ 'LK' => 'Sri Lanka',
+ 'LR' => 'Liberia',
+ 'LS' => 'Lesotho',
+ 'LT' => 'Lituania',
+ 'LU' => 'Luxemburg',
+ 'LV' => 'Letonia',
+ 'LY' => 'Libia',
+ 'MA' => 'Maroc',
+ 'MC' => 'Monaco',
+ 'MD' => 'Republica Moldova',
+ 'ME' => 'Muntenegru',
+ 'MF' => 'Sfântul Martin',
+ 'MG' => 'Madagascar',
+ 'MH' => 'Insulele Marshall',
+ 'MK' => 'Macedonia',
+ 'ML' => 'Mali',
+ 'MM' => 'Myanmar (Birmania)',
+ 'MN' => 'Mongolia',
+ 'MO' => 'Macao',
+ 'MP' => 'Insulele Mariane de Nord',
+ 'MQ' => 'Martinica',
+ 'MR' => 'Mauritania',
+ 'MS' => 'Montserrat',
+ 'MT' => 'Malta',
+ 'MU' => 'Mauritius',
+ 'MV' => 'Maldive',
+ 'MW' => 'Malawi',
+ 'MX' => 'Mexic',
+ 'MY' => 'Malaezia',
+ 'MZ' => 'Mozambic',
+ 'NA' => 'Namibia',
+ 'NC' => 'Noua Caledonie',
+ 'NE' => 'Niger',
+ 'NF' => 'Insulele Norfolk',
+ 'NG' => 'Nigeria',
+ 'NI' => 'Nicaragua',
+ 'NL' => 'Țările de Jos',
+ 'NO' => 'Norvegia',
+ 'NP' => 'Nepal',
+ 'NR' => 'Nauru',
+ 'NU' => 'Niue',
+ 'NZ' => 'Noua Zeelandă',
+ 'OM' => 'Oman',
+ 'PA' => 'Panama',
+ 'PE' => 'Peru',
+ 'PF' => 'Polinezia Franceză',
+ 'PG' => 'Papua-Noua Guinee',
+ 'PH' => 'Filipine',
+ 'PK' => 'Pakistan',
+ 'PL' => 'Polonia',
+ 'PM' => 'Saint-Pierre și Miquelon',
+ 'PN' => 'Insulele Pitcairn',
+ 'PR' => 'Puerto Rico',
+ 'PS' => 'Palestina',
+ 'PT' => 'Portugalia',
+ 'PW' => 'Palau',
+ 'PY' => 'Paraguay',
+ 'QA' => 'Qatar',
+ 'QO' => 'Oceania Periferică',
+ 'RE' => 'Réunion',
+ 'RO' => 'România',
+ 'RS' => 'Serbia',
+ 'RU' => 'Rusia',
+ 'RW' => 'Rwanda',
+ 'SA' => 'Arabia Saudită',
+ 'SB' => 'Insulele Solomon',
+ 'SC' => 'Seychelles',
+ 'SD' => 'Sudan',
+ 'SE' => 'Suedia',
+ 'SG' => 'Singapore',
+ 'SH' => 'Sfânta Elena',
+ 'SI' => 'Slovenia',
+ 'SJ' => 'Svalbard și Jan Mayen',
+ 'SK' => 'Slovacia',
+ 'SL' => 'Sierra Leone',
+ 'SM' => 'San Marino',
+ 'SN' => 'Senegal',
+ 'SO' => 'Somalia',
+ 'SR' => 'Surinam',
+ 'SS' => 'Sudanul de Sud',
+ 'ST' => 'Sao Tome și Principe',
+ 'SV' => 'El Salvador',
+ 'SX' => 'Sint-Maarten',
+ 'SY' => 'Siria',
+ 'SZ' => 'Swaziland',
+ 'TA' => 'Tristan da Cunha',
+ 'TC' => 'Insulele Turks și Caicos',
+ 'TD' => 'Ciad',
+ 'TF' => 'Teritoriile Australe și Antarctice Franceze',
+ 'TG' => 'Togo',
+ 'TH' => 'Thailanda',
+ 'TJ' => 'Tadjikistan',
+ 'TK' => 'Tokelau',
+ 'TL' => 'Timorul de Est',
+ 'TM' => 'Turkmenistan',
+ 'TN' => 'Tunisia',
+ 'TO' => 'Tonga',
+ 'TR' => 'Turcia',
+ 'TT' => 'Trinidad și Tobago',
+ 'TV' => 'Tuvalu',
+ 'TW' => 'Taiwan',
+ 'TZ' => 'Tanzania',
+ 'UA' => 'Ucraina',
+ 'UG' => 'Uganda',
+ 'UM' => 'Insulele Îndepărtate ale S.U.A.',
+ 'US' => 'S.U.A.',
+ 'UY' => 'Uruguay',
+ 'UZ' => 'Uzbekistan',
+ 'VA' => 'Statul Cetății Vaticanului',
+ 'VC' => 'Saint Vincent și Grenadine',
+ 'VE' => 'Venezuela',
+ 'VG' => 'Insulele Virgine Britanice',
+ 'VI' => 'Insulele Virgine S.U.A.',
+ 'VN' => 'Vietnam',
+ 'VU' => 'Vanuatu',
+ 'WF' => 'Wallis și Futuna',
+ 'WS' => 'Samoa',
+ 'XK' => 'Kosovo',
+ 'YE' => 'Yemen',
+ 'YT' => 'Mayotte',
+ 'ZA' => 'Africa de Sud',
+ 'ZM' => 'Zambia',
+ 'ZW' => 'Zimbabwe',
+);
+
+$timeUnits = array(
+ 'day-few' => '{0} zile',
+ 'day-future-few' => 'peste {0} zile',
+ 'day-future-one' => 'peste {0} zi',
+ 'day-future-other' => 'peste {0} de zile',
+ 'day-narrow-future-few' => '+{0} zile',
+ 'day-narrow-future-one' => '+{0} zi',
+ 'day-narrow-future-other' => '+{0} zile',
+ 'day-narrow-past-few' => '-{0} zile',
+ 'day-narrow-past-one' => '-{0} zi',
+ 'day-narrow-past-other' => '-{0} zile',
+ 'day-one' => '{0} zi',
+ 'day-other' => '{0} de zile',
+ 'day-past-few' => 'acum {0} zile',
+ 'day-past-one' => 'acum {0} zi',
+ 'day-past-other' => 'acum {0} de zile',
+ 'day-short-future-few' => 'peste {0} zile',
+ 'day-short-future-one' => 'peste {0} zi',
+ 'day-short-future-other' => 'peste {0} zile',
+ 'day-short-past-few' => 'acum {0} zile',
+ 'day-short-past-one' => 'acum {0} zi',
+ 'day-short-past-other' => 'acum {0} zile',
+ 'hour-few' => '{0} ore',
+ 'hour-future-few' => 'peste {0} ore',
+ 'hour-future-one' => 'peste {0} oră',
+ 'hour-future-other' => 'peste {0} de ore',
+ 'hour-narrow-future-few' => '+{0} h',
+ 'hour-narrow-future-one' => '+{0} h',
+ 'hour-narrow-future-other' => '+{0} h',
+ 'hour-narrow-past-few' => '-{0} h',
+ 'hour-narrow-past-one' => '-{0} h',
+ 'hour-narrow-past-other' => '-{0} h',
+ 'hour-one' => '{0} oră',
+ 'hour-other' => '{0} de ore',
+ 'hour-past-few' => 'acum {0} ore',
+ 'hour-past-one' => 'acum {0} oră',
+ 'hour-past-other' => 'acum {0} de ore',
+ 'hour-short-future-few' => 'peste {0} h',
+ 'hour-short-future-one' => 'peste {0} h',
+ 'hour-short-future-other' => 'peste {0} h',
+ 'hour-short-past-few' => 'acum {0} h',
+ 'hour-short-past-one' => 'acum {0} h',
+ 'hour-short-past-other' => 'acum {0} h',
+ 'microsecond-few' => '{0} microsecunde',
+ 'microsecond-one' => '{0} microsecundă',
+ 'microsecond-other' => '{0} de microsecunde',
+ 'millisecond-few' => '{0} milisecunde',
+ 'millisecond-one' => '{0} milisecundă',
+ 'millisecond-other' => '{0} de milisecunde',
+ 'minute-few' => '{0} minute',
+ 'minute-future-few' => 'peste {0} minute',
+ 'minute-future-one' => 'peste {0} minut',
+ 'minute-future-other' => 'peste {0} de minute',
+ 'minute-narrow-future-few' => '+{0} m',
+ 'minute-narrow-future-one' => '+{0} m',
+ 'minute-narrow-future-other' => '+{0} m',
+ 'minute-narrow-past-few' => '-{0} m',
+ 'minute-narrow-past-one' => '-{0} m',
+ 'minute-narrow-past-other' => '-{0} m',
+ 'minute-one' => '{0} minut',
+ 'minute-other' => '{0} de minute',
+ 'minute-past-few' => 'acum {0} minute',
+ 'minute-past-one' => 'acum {0} minut',
+ 'minute-past-other' => 'acum {0} de minute',
+ 'minute-short-future-few' => 'peste {0} min.',
+ 'minute-short-future-one' => 'peste {0} min.',
+ 'minute-short-future-other' => 'peste {0} min.',
+ 'minute-short-past-few' => 'acum {0} min.',
+ 'minute-short-past-one' => 'acum {0} min.',
+ 'minute-short-past-other' => 'acum {0} min.',
+ 'month-few' => '{0} luni',
+ 'month-future-few' => 'peste {0} luni',
+ 'month-future-one' => 'peste {0} lună',
+ 'month-future-other' => 'peste {0} de luni',
+ 'month-narrow-future-few' => '+{0} luni',
+ 'month-narrow-future-one' => '+{0} lună',
+ 'month-narrow-future-other' => '+{0} luni',
+ 'month-narrow-past-few' => '-{0} luni',
+ 'month-narrow-past-one' => '-{0} lună',
+ 'month-narrow-past-other' => '-{0} luni',
+ 'month-one' => '{0} lună',
+ 'month-other' => '{0} de luni',
+ 'month-past-few' => 'acum {0} luni',
+ 'month-past-one' => 'acum {0} lună',
+ 'month-past-other' => 'acum {0} de luni',
+ 'month-short-future-few' => 'peste {0} luni',
+ 'month-short-future-one' => 'peste {0} lună',
+ 'month-short-future-other' => 'peste {0} luni',
+ 'month-short-past-few' => 'acum {0} luni',
+ 'month-short-past-one' => 'acum {0} lună',
+ 'month-short-past-other' => 'acum {0} luni',
+ 'nanosecond-few' => '{0} nanosecunde',
+ 'nanosecond-one' => '{0} nanosecundă',
+ 'nanosecond-other' => '{0} de nanosecunde',
+ 'quarter-future-few' => 'peste {0} trimestre',
+ 'quarter-future-one' => 'peste {0} trimestru',
+ 'quarter-future-other' => 'peste {0} de trimestre',
+ 'quarter-narrow-future-few' => '+{0} trim.',
+ 'quarter-narrow-future-one' => '+{0} trim.',
+ 'quarter-narrow-future-other' => '+{0} trim.',
+ 'quarter-narrow-past-few' => '+{0} trim.',
+ 'quarter-narrow-past-one' => '+{0} trim.',
+ 'quarter-narrow-past-other' => '+{0} trim.',
+ 'quarter-past-few' => 'acum {0} trimestre',
+ 'quarter-past-one' => 'acum {0} trimestru',
+ 'quarter-past-other' => 'acum {0} de trimestre',
+ 'quarter-short-future-few' => 'peste {0} trim.',
+ 'quarter-short-future-one' => 'peste {0} trim.',
+ 'quarter-short-future-other' => 'peste {0} trim.',
+ 'quarter-short-past-few' => 'acum {0} trim.',
+ 'quarter-short-past-one' => 'acum {0} trim.',
+ 'quarter-short-past-other' => 'acum {0} trim.',
+ 'second-few' => '{0} secunde',
+ 'second-future-few' => 'peste {0} secunde',
+ 'second-future-one' => 'peste {0} secundă',
+ 'second-future-other' => 'peste {0} de secunde',
+ 'second-narrow-future-few' => '+{0} s',
+ 'second-narrow-future-one' => '+{0} s',
+ 'second-narrow-future-other' => '+{0} s',
+ 'second-narrow-past-few' => '-{0} s',
+ 'second-narrow-past-one' => '-{0} s',
+ 'second-narrow-past-other' => '-{0} s',
+ 'second-one' => '{0} secundă',
+ 'second-other' => '{0} de secunde',
+ 'second-past-few' => 'acum {0} secunde',
+ 'second-past-one' => 'acum {0} secundă',
+ 'second-past-other' => 'acum {0} de secunde',
+ 'second-short-future-few' => 'peste {0} sec.',
+ 'second-short-future-one' => 'peste {0} sec.',
+ 'second-short-future-other' => 'peste {0} sec.',
+ 'second-short-past-few' => 'acum {0} sec.',
+ 'second-short-past-one' => 'acum {0} sec.',
+ 'second-short-past-other' => 'acum {0} sec.',
+ 'week-few' => '{0} săptămâni',
+ 'week-future-few' => 'peste {0} săptămâni',
+ 'week-future-one' => 'peste {0} săptămână',
+ 'week-future-other' => 'peste {0} de săptămâni',
+ 'week-narrow-future-few' => '+{0} săpt.',
+ 'week-narrow-future-one' => '+{0} săpt.',
+ 'week-narrow-future-other' => '+{0} săpt.',
+ 'week-narrow-past-few' => '-{0} săpt.',
+ 'week-narrow-past-one' => '-{0} săpt.',
+ 'week-narrow-past-other' => '-{0} săpt.',
+ 'week-one' => '{0} săptămână',
+ 'week-other' => '{0} de săptămâni',
+ 'week-past-few' => 'acum {0} săptămâni',
+ 'week-past-one' => 'acum {0} săptămână',
+ 'week-past-other' => 'acum {0} de săptămâni',
+ 'week-short-future-few' => 'peste {0} săpt.',
+ 'week-short-future-one' => 'peste {0} săpt.',
+ 'week-short-future-other' => 'peste {0} săpt.',
+ 'week-short-past-few' => 'acum {0} săpt.',
+ 'week-short-past-one' => 'acum {0} săpt.',
+ 'week-short-past-other' => 'acum {0} săpt.',
+ 'year-few' => '{0} ani',
+ 'year-future-few' => 'peste {0} ani',
+ 'year-future-one' => 'peste {0} an',
+ 'year-future-other' => 'peste {0} de ani',
+ 'year-narrow-future-few' => '+{0} ani',
+ 'year-narrow-future-one' => '+{0} an',
+ 'year-narrow-future-other' => '+{0} ani',
+ 'year-narrow-past-few' => '-{0} ani',
+ 'year-narrow-past-one' => '-{0} an',
+ 'year-narrow-past-other' => '-{0} ani',
+ 'year-one' => '{0} an',
+ 'year-other' => '{0} de ani',
+ 'year-past-few' => 'acum {0} ani',
+ 'year-past-one' => 'acum {0} an',
+ 'year-past-other' => 'acum {0} de ani',
+ 'year-short-future-few' => 'peste {0} ani',
+ 'year-short-future-one' => 'peste {0} an',
+ 'year-short-future-other' => 'peste {0} ani',
+ 'year-short-past-few' => 'acum {0} ani',
+ 'year-short-past-one' => 'acum {0} an',
+ 'year-short-past-other' => 'acum {0} de ani',
+);
diff --git a/MLEB/cldr/CldrNames/CldrNamesRu.php b/MLEB/cldr/CldrNames/CldrNamesRu.php
new file mode 100644
index 00000000..cae6672b
--- /dev/null
+++ b/MLEB/cldr/CldrNames/CldrNamesRu.php
@@ -0,0 +1,1453 @@
+<?php
+
+$languageNames = array(
+ 'aa' => 'афар',
+ 'ab' => 'абхазский',
+ 'ace' => 'ачехский',
+ 'ach' => 'ачоли',
+ 'ada' => 'адангме',
+ 'ady' => 'адыгейский',
+ 'ae' => 'авестийский',
+ 'af' => 'африкаанс',
+ 'afh' => 'африхили',
+ 'agq' => 'агхем',
+ 'ain' => 'айну',
+ 'ak' => 'акан',
+ 'akk' => 'аккадский',
+ 'ale' => 'алеутский',
+ 'alt' => 'южноалтайский',
+ 'am' => 'амхарский',
+ 'an' => 'арагонский',
+ 'ang' => 'староанглийский',
+ 'anp' => 'ангика',
+ 'ar' => 'арабский',
+ 'ar-001' => 'арабский литературный',
+ 'arc' => 'арамейский',
+ 'arn' => 'арауканский',
+ 'arp' => 'арапахо',
+ 'arw' => 'аравакский',
+ 'as' => 'ассамский',
+ 'asa' => 'аса',
+ 'ast' => 'астурийский',
+ 'av' => 'аварский',
+ 'awa' => 'авадхи',
+ 'ay' => 'аймара',
+ 'az' => 'азербайджанский',
+ 'ba' => 'башкирский',
+ 'bal' => 'белуджский',
+ 'ban' => 'балийский',
+ 'bas' => 'баса',
+ 'bax' => 'бамум',
+ 'bbj' => 'гхомала',
+ 'be' => 'белорусский',
+ 'bej' => 'беджа',
+ 'bem' => 'бемба',
+ 'bez' => 'бена',
+ 'bfd' => 'бафут',
+ 'bg' => 'болгарский',
+ 'bho' => 'бходжпури',
+ 'bi' => 'бислама',
+ 'bik' => 'бикольский',
+ 'bin' => 'бини',
+ 'bkm' => 'ком',
+ 'bla' => 'сиксика',
+ 'bm' => 'бамбарийский',
+ 'bn' => 'бенгальский',
+ 'bo' => 'тибетский',
+ 'br' => 'бретонский',
+ 'bra' => 'брауи',
+ 'brx' => 'бодо',
+ 'bs' => 'боснийский',
+ 'bss' => 'акоосе',
+ 'bua' => 'бурятский',
+ 'bug' => 'бугийский',
+ 'bum' => 'булу',
+ 'byn' => 'билин (блин)',
+ 'byv' => 'медумба',
+ 'ca' => 'каталанский',
+ 'cad' => 'каддо',
+ 'car' => 'кариб',
+ 'cay' => 'кайюга',
+ 'cch' => 'атсам',
+ 'ce' => 'чеченский',
+ 'ceb' => 'кебуано',
+ 'cgg' => 'чига',
+ 'ch' => 'чаморро',
+ 'chb' => 'чибча',
+ 'chg' => 'чагатайский',
+ 'chk' => 'чукотский',
+ 'chm' => 'марийский (черемисский)',
+ 'chn' => 'чинук жаргон',
+ 'cho' => 'чоктав',
+ 'chp' => 'чипевайян',
+ 'chr' => 'чероки',
+ 'chy' => 'чейенн',
+ 'ckb' => 'сорани курдский',
+ 'co' => 'корсиканский',
+ 'cop' => 'коптский',
+ 'cr' => 'криийский',
+ 'crh' => 'крымско-татарский',
+ 'cs' => 'чешский',
+ 'csb' => 'кашубианский',
+ 'cu' => 'церковнославянский',
+ 'cv' => 'чувашский',
+ 'cy' => 'валлийский',
+ 'da' => 'датский',
+ 'dak' => 'дакота',
+ 'dar' => 'даргва',
+ 'dav' => 'таита',
+ 'de' => 'немецкий',
+ 'de-at' => 'австрийский немецкий',
+ 'de-ch' => 'швейцарский верхненемецкий',
+ 'del' => 'делаварский',
+ 'den' => 'славянский',
+ 'dgr' => 'догриб',
+ 'din' => 'динка',
+ 'dje' => 'зарма',
+ 'doi' => 'догри',
+ 'dsb' => 'нижнелужицкий',
+ 'dua' => 'дуала',
+ 'dum' => 'средненидерландский',
+ 'dv' => 'мальдивский',
+ 'dyo' => 'дьола-фоньи',
+ 'dyu' => 'диула (дьюла)',
+ 'dz' => 'дзонг-кэ',
+ 'dzg' => 'дазагский',
+ 'ebu' => 'эмбу',
+ 'ee' => 'эве',
+ 'efi' => 'эфик',
+ 'egy' => 'древнеегипетский',
+ 'eka' => 'экаджук',
+ 'el' => 'греческий',
+ 'elx' => 'эламский',
+ 'en' => 'английский',
+ 'en-au' => 'австралийский английский',
+ 'en-ca' => 'канадский английский',
+ 'en-gb' => 'британский английский',
+ 'en-us' => 'американский английский',
+ 'enm' => 'среднеанглийский',
+ 'eo' => 'эсперанто',
+ 'es' => 'испанский',
+ 'es-419' => 'латиноамериканский испанский',
+ 'es-es' => 'европейский испанский',
+ 'et' => 'эстонский',
+ 'eu' => 'баскский',
+ 'ewo' => 'эвондо',
+ 'fa' => 'персидский',
+ 'fan' => 'фанг',
+ 'fat' => 'фанти',
+ 'ff' => 'фулах',
+ 'fi' => 'финский',
+ 'fil' => 'филиппинский',
+ 'fj' => 'фиджи',
+ 'fo' => 'фарерский',
+ 'fon' => 'фон',
+ 'fr' => 'французский',
+ 'fr-ca' => 'канадский французский',
+ 'fr-ch' => 'швейцарский французский',
+ 'frm' => 'среднефранцузский',
+ 'fro' => 'старофранцузский',
+ 'frr' => 'фризский северный',
+ 'frs' => 'восточный фризский',
+ 'fur' => 'фриульский',
+ 'fy' => 'западно-фризский',
+ 'ga' => 'ирландский',
+ 'gaa' => 'га',
+ 'gag' => 'гагаузский',
+ 'gay' => 'гайо',
+ 'gba' => 'гбая',
+ 'gd' => 'гэльский',
+ 'gez' => 'геэз',
+ 'gil' => 'гильбертский',
+ 'gl' => 'галисийский',
+ 'gmh' => 'средневерхненемецкий',
+ 'gn' => 'гуарани',
+ 'goh' => 'древневерхненемецкий',
+ 'gon' => 'гонди',
+ 'gor' => 'горонтало',
+ 'got' => 'готский',
+ 'grb' => 'гребо',
+ 'grc' => 'древнегреческий',
+ 'gsw' => 'швейцарский немецкий',
+ 'gu' => 'гуджарати',
+ 'guz' => 'гусии',
+ 'gv' => 'мэнский',
+ 'gwi' => 'гвичин',
+ 'ha' => 'хауса',
+ 'hai' => 'хайда',
+ 'haw' => 'гавайский',
+ 'he' => 'иврит',
+ 'hi' => 'хинди',
+ 'hil' => 'хилигайнон',
+ 'hit' => 'хеттский',
+ 'hmn' => 'хмонг',
+ 'ho' => 'хиримоту',
+ 'hr' => 'хорватский',
+ 'hsb' => 'верхнелужицкий',
+ 'ht' => 'гаитянский',
+ 'hu' => 'венгерский',
+ 'hup' => 'хупа',
+ 'hy' => 'армянский',
+ 'hz' => 'гереро',
+ 'ia' => 'интерлингва',
+ 'iba' => 'ибанский',
+ 'ibb' => 'ибибио',
+ 'id' => 'индонезийский',
+ 'ie' => 'интерлингве',
+ 'ig' => 'игбо',
+ 'ii' => 'сычуань',
+ 'ik' => 'инупиак',
+ 'ilo' => 'илоко',
+ 'inh' => 'ингушский',
+ 'io' => 'идо',
+ 'is' => 'исландский',
+ 'it' => 'итальянский',
+ 'iu' => 'инуктитут',
+ 'ja' => 'японский',
+ 'jbo' => 'ложбан',
+ 'jgo' => 'нгомба',
+ 'jmc' => 'мачаме',
+ 'jpr' => 'еврейско-персидский',
+ 'jrb' => 'еврейско-арабский',
+ 'jv' => 'яванский',
+ 'ka' => 'грузинский',
+ 'kaa' => 'каракалпакский',
+ 'kab' => 'кабильский',
+ 'kac' => 'качинский',
+ 'kaj' => 'каджи',
+ 'kam' => 'камба',
+ 'kaw' => 'кави',
+ 'kbd' => 'кабардинский',
+ 'kbl' => 'канембу',
+ 'kcg' => 'тьяп',
+ 'kde' => 'маконде',
+ 'kea' => 'кабувердьяну',
+ 'kfo' => 'коро',
+ 'kg' => 'конго',
+ 'kha' => 'кхаси',
+ 'kho' => 'хотанский',
+ 'khq' => 'койра чиини',
+ 'ki' => 'кикуйю',
+ 'kj' => 'кунама',
+ 'kk' => 'казахский',
+ 'kkj' => 'како',
+ 'kl' => 'гренландский',
+ 'kln' => 'календжин',
+ 'km' => 'кхмерский',
+ 'kmb' => 'кимбундийский',
+ 'kn' => 'каннада',
+ 'ko' => 'корейский',
+ 'koi' => 'коми-пермяцкий',
+ 'kok' => 'конкани',
+ 'kos' => 'косраенский',
+ 'kpe' => 'кпелле',
+ 'kr' => 'канури',
+ 'krc' => 'карачаево-балкарский',
+ 'krl' => 'карельский',
+ 'kru' => 'курух',
+ 'ks' => 'кашмири',
+ 'ksb' => 'шамбала',
+ 'ksf' => 'бафия',
+ 'ksh' => 'кёльш',
+ 'ku' => 'курдский',
+ 'kum' => 'кумыкский',
+ 'kut' => 'кутенаи',
+ 'kv' => 'коми',
+ 'kw' => 'корнийский',
+ 'ky' => 'киргизский',
+ 'la' => 'латинский',
+ 'lad' => 'ладино',
+ 'lag' => 'ланги',
+ 'lah' => 'лахнда',
+ 'lam' => 'ламба',
+ 'lb' => 'люксембургский',
+ 'lez' => 'лезгинский',
+ 'lg' => 'ганда',
+ 'li' => 'лимбургский',
+ 'lkt' => 'лакота',
+ 'ln' => 'лингала',
+ 'lo' => 'лаосский',
+ 'lol' => 'монго',
+ 'loz' => 'лози',
+ 'lt' => 'литовский',
+ 'lu' => 'луба-катанга',
+ 'lua' => 'луба-лулуа',
+ 'lui' => 'луисеньо',
+ 'lun' => 'лунда',
+ 'luo' => 'луо (Кения и Танзания)',
+ 'lus' => 'лушай',
+ 'luy' => 'лухья',
+ 'lv' => 'латышский',
+ 'mad' => 'мадурский',
+ 'maf' => 'мафа',
+ 'mag' => 'магахи',
+ 'mai' => 'майтхили',
+ 'mak' => 'макассарский',
+ 'man' => 'мандинго',
+ 'mas' => 'масаи',
+ 'mde' => 'мабанский',
+ 'mdf' => 'мокшанский',
+ 'mdr' => 'мандарский',
+ 'men' => 'менде',
+ 'mer' => 'меру',
+ 'mfe' => 'маврикийский креольский',
+ 'mg' => 'малагасийский',
+ 'mga' => 'среднеирландский',
+ 'mgh' => 'макуа-меетто',
+ 'mgo' => 'мета',
+ 'mh' => 'маршалльский',
+ 'mi' => 'маори',
+ 'mic' => 'микмак',
+ 'min' => 'минангкабау',
+ 'mk' => 'македонский',
+ 'ml' => 'малаялам',
+ 'mn' => 'монгольский',
+ 'mnc' => 'маньчжурский',
+ 'mni' => 'манипурский',
+ 'moh' => 'мохаук',
+ 'mos' => 'моси',
+ 'mr' => 'маратхи',
+ 'ms' => 'малайский',
+ 'mt' => 'мальтийский',
+ 'mua' => 'мунданг',
+ 'mul' => 'несколько языков',
+ 'mus' => 'крик',
+ 'mwl' => 'мирандийский',
+ 'mwr' => 'марвари',
+ 'my' => 'бирманский',
+ 'mye' => 'миене',
+ 'myv' => 'эрзя',
+ 'na' => 'науру',
+ 'nap' => 'неаполитанский',
+ 'naq' => 'нама',
+ 'nb' => 'норвежский букмол',
+ 'nd' => 'северный ндебели',
+ 'nds' => 'нижнегерманский',
+ 'ne' => 'непальский',
+ 'new' => 'неварский',
+ 'ng' => 'ндонга',
+ 'nia' => 'ниас',
+ 'niu' => 'ниуэ',
+ 'nl' => 'голландский',
+ 'nl-be' => 'фламандский',
+ 'nmg' => 'квасио',
+ 'nn' => 'норвежский нюнорск',
+ 'nnh' => 'нгиембунд',
+ 'no' => 'норвежский',
+ 'nog' => 'ногайский',
+ 'non' => 'старонорвежский',
+ 'nqo' => 'нко',
+ 'nr' => 'ндебели южный',
+ 'nso' => 'сото северный',
+ 'nus' => 'нуэр',
+ 'nv' => 'навахо',
+ 'nwc' => 'невари (классический)',
+ 'ny' => 'ньянджа',
+ 'nym' => 'ньямвези',
+ 'nyn' => 'ньянколе',
+ 'nyo' => 'ньоро',
+ 'nzi' => 'нзима',
+ 'oc' => 'окситанский',
+ 'oj' => 'оджибва',
+ 'om' => 'оромо',
+ 'or' => 'ория',
+ 'os' => 'осетинский',
+ 'osa' => 'оседжи',
+ 'ota' => 'старотурецкий',
+ 'pa' => 'панджаби',
+ 'pag' => 'пангасинан',
+ 'pal' => 'пехлевийский',
+ 'pam' => 'пампанга',
+ 'pap' => 'папьяменто',
+ 'pau' => 'палау',
+ 'peo' => 'староперсидский',
+ 'phn' => 'финикийский',
+ 'pi' => 'пали',
+ 'pl' => 'польский',
+ 'pon' => 'понапе',
+ 'pro' => 'старопровансальский',
+ 'ps' => 'пушту',
+ 'pt' => 'португальский',
+ 'pt-br' => 'бразильский португальский',
+ 'pt-pt' => 'европейский португальский',
+ 'qu' => 'кечуа',
+ 'quc' => 'киче',
+ 'raj' => 'раджастхани',
+ 'rap' => 'рапануи',
+ 'rar' => 'раротонганский',
+ 'rm' => 'романшский',
+ 'rn' => 'рунди',
+ 'ro' => 'румынский',
+ 'ro-md' => 'молдавский',
+ 'rof' => 'ромбо',
+ 'rom' => 'цыганский',
+ 'ru' => 'русский',
+ 'rup' => 'арумынский',
+ 'rw' => 'киньяруанда',
+ 'rwk' => 'руанда',
+ 'sa' => 'санскрит',
+ 'sad' => 'сандаве',
+ 'sah' => 'якутский',
+ 'sam' => 'самаритянский арамейский',
+ 'saq' => 'самбуру',
+ 'sas' => 'сасаки',
+ 'sat' => 'сантали',
+ 'sba' => 'нгамбайский',
+ 'sbp' => 'сангу',
+ 'sc' => 'сардинский',
+ 'scn' => 'сицилийский',
+ 'sco' => 'шотландский',
+ 'sd' => 'синдхи',
+ 'se' => 'северносаамский',
+ 'see' => 'сенека',
+ 'seh' => 'сена',
+ 'sel' => 'селькупский',
+ 'ses' => 'койраборо сенни',
+ 'sg' => 'санго',
+ 'sga' => 'староирландский',
+ 'sh' => 'сербскохорватский',
+ 'shi' => 'тахелхит',
+ 'shn' => 'шанский',
+ 'shu' => 'чадский арабс',
+ 'si' => 'сингальский',
+ 'sid' => 'сидама',
+ 'sk' => 'словацкий',
+ 'sl' => 'словенский',
+ 'sm' => 'самоанский',
+ 'sma' => 'саамский (южный)',
+ 'smj' => 'луле-саамский',
+ 'smn' => 'инари-саамский',
+ 'sms' => 'скольт-саамский',
+ 'sn' => 'шона',
+ 'snk' => 'сонинке',
+ 'so' => 'сомали',
+ 'sog' => 'согдийский',
+ 'sq' => 'албанский',
+ 'sr' => 'сербский',
+ 'srn' => 'сранан тонго',
+ 'srr' => 'серер',
+ 'ss' => 'свази',
+ 'ssy' => 'сахо',
+ 'st' => 'сото южный',
+ 'su' => 'сунданский',
+ 'suk' => 'сукума',
+ 'sus' => 'сусу',
+ 'sux' => 'шумерский',
+ 'sv' => 'шведский',
+ 'sw' => 'суахили',
+ 'swb' => 'коморский',
+ 'swc' => 'конголезский суахили',
+ 'syc' => 'классический сирийский',
+ 'syr' => 'сирийский',
+ 'ta' => 'тамильский',
+ 'te' => 'телугу',
+ 'tem' => 'темне',
+ 'teo' => 'тесо',
+ 'ter' => 'терено',
+ 'tet' => 'тетум',
+ 'tg' => 'таджикский',
+ 'th' => 'тайский',
+ 'ti' => 'тигринья',
+ 'tig' => 'тигре',
+ 'tiv' => 'тиви',
+ 'tk' => 'туркменский',
+ 'tkl' => 'токелайский',
+ 'tl' => 'тагалог',
+ 'tlh' => 'клингонский',
+ 'tli' => 'тлингит',
+ 'tmh' => 'тамашек',
+ 'tn' => 'тсвана',
+ 'to' => 'тонганский',
+ 'tog' => 'ньяса (тонга)',
+ 'tpi' => 'ток-писин',
+ 'tr' => 'турецкий',
+ 'tru' => 'туройо',
+ 'trv' => 'тароко',
+ 'ts' => 'тсонга',
+ 'tsi' => 'цимшиан',
+ 'tt' => 'татарский',
+ 'tum' => 'тумбука',
+ 'tvl' => 'тувалу',
+ 'tw' => 'тви',
+ 'twq' => 'тасавак',
+ 'ty' => 'таитянский',
+ 'tyv' => 'тувинский',
+ 'tzm' => 'среднеатласский тамазигхтский',
+ 'udm' => 'удмуртский',
+ 'ug' => 'уйгурский',
+ 'uga' => 'угаритский',
+ 'uk' => 'украинский',
+ 'umb' => 'умбунду',
+ 'und' => 'неизвестный язык',
+ 'ur' => 'урду',
+ 'uz' => 'узбекский',
+ 'vai' => 'ваи',
+ 've' => 'венда',
+ 'vi' => 'вьетнамский',
+ 'vo' => 'волапюк',
+ 'vot' => 'водский',
+ 'vun' => 'вунджо',
+ 'wa' => 'валлонский',
+ 'wae' => 'валисский',
+ 'wal' => 'воламо',
+ 'war' => 'варай',
+ 'was' => 'вашо',
+ 'wo' => 'волоф',
+ 'xal' => 'калмыцкий',
+ 'xh' => 'коса',
+ 'xog' => 'сога',
+ 'yao' => 'яо',
+ 'yap' => 'яп',
+ 'yav' => 'янбан',
+ 'ybb' => 'йемба',
+ 'yi' => 'идиш',
+ 'yo' => 'йоруба',
+ 'yue' => 'кантонский',
+ 'za' => 'чжуань',
+ 'zap' => 'сапотекский',
+ 'zbl' => 'блиссимволика',
+ 'zen' => 'зенагский',
+ 'zgh' => 'тамазигхтский',
+ 'zh' => 'китайский',
+ 'zh-hans' => 'упрощенный китайский',
+ 'zh-hant' => 'традиционный китайский',
+ 'zu' => 'зулу',
+ 'zun' => 'зуньи',
+ 'zxx' => 'без языкового содержания',
+ 'zza' => 'заза',
+);
+
+$currencyNames = array(
+ 'ADP' => 'Андоррская песета',
+ 'AED' => 'Дирхам ОАЭ',
+ 'AFA' => 'Афгани (1927–2002)',
+ 'AFN' => 'Афганский афгани',
+ 'ALL' => 'Албанский лек',
+ 'AMD' => 'Армянский драм',
+ 'ANG' => 'Нидерландский антильский гульден',
+ 'AOA' => 'Ангольская кванза',
+ 'AOK' => 'Ангольская кванза (1977–1990)',
+ 'AON' => 'Ангольская новая кванза (1990–2000)',
+ 'AOR' => 'Ангольская кванза реюстадо (1995–1999)',
+ 'ARA' => 'Аргентинский аустрал',
+ 'ARP' => 'Аргентинское песо (1983–1985)',
+ 'ARS' => 'Аргентинское песо',
+ 'ATS' => 'Австрийский шиллинг',
+ 'AUD' => 'Австралийский доллар',
+ 'AWG' => 'Арубанский флорин',
+ 'AZM' => 'Старый азербайджанский манат',
+ 'AZN' => 'Азербайджанский манат',
+ 'BAD' => 'Динар Боснии и Герцеговины',
+ 'BAM' => 'Конвертируемая марка Боснии и Герцеговины',
+ 'BBD' => 'Барбадосский доллар',
+ 'BDT' => 'Бангладешская така',
+ 'BEC' => 'Бельгийский франк (конвертируемый)',
+ 'BEF' => 'Бельгийский франк',
+ 'BEL' => 'Бельгийский франк (финансовый)',
+ 'BGL' => 'Лев',
+ 'BGN' => 'Болгарский лев',
+ 'BHD' => 'Бахрейнский динар',
+ 'BIF' => 'Бурундийский франк',
+ 'BMD' => 'Бермудский доллар',
+ 'BND' => 'Брунейский доллар',
+ 'BOB' => 'Боливийский боливиано',
+ 'BOP' => 'Боливийское песо',
+ 'BOV' => 'Боливийский мвдол',
+ 'BRB' => 'Бразильский новый крузейро (1967–1986)',
+ 'BRC' => 'Бразильское крузадо',
+ 'BRE' => 'Бразильский крузейро (1990–1993)',
+ 'BRL' => 'Бразильский реал',
+ 'BRN' => 'Бразильское новое крузадо',
+ 'BRR' => 'Бразильский крузейро',
+ 'BSD' => 'Багамский доллар',
+ 'BTN' => 'Бутанский нгултрум',
+ 'BUK' => 'Джа',
+ 'BWP' => 'Ботсванская пула',
+ 'BYB' => 'Белорусский рубль (1994–1999)',
+ 'BYR' => 'Белорусский рубль',
+ 'BZD' => 'Белизский доллар',
+ 'CAD' => 'Канадский доллар',
+ 'CDF' => 'Конголезский франк',
+ 'CHE' => 'WIR евро',
+ 'CHF' => 'Швейцарский франк',
+ 'CHW' => 'WIR франк',
+ 'CLF' => 'Условная расчетная единица Чили',
+ 'CLP' => 'Чилийское песо',
+ 'CNY' => 'Китайский юань',
+ 'COP' => 'Колумбийское песо',
+ 'COU' => 'Единица реальной стоимости Колумбии',
+ 'CRC' => 'Костариканский колон',
+ 'CSD' => 'Старый Сербский динар',
+ 'CSK' => 'Чехословацкая твердая крона',
+ 'CUC' => 'Кубинское конвертируемое песо',
+ 'CUP' => 'Кубинское песо',
+ 'CVE' => 'Эскудо Кабо-Верде',
+ 'CYP' => 'Кипрский фунт',
+ 'CZK' => 'Чешская крона',
+ 'DDM' => 'Восточногерманская марка',
+ 'DEM' => 'Немецкая марка',
+ 'DJF' => 'Франк Джибути',
+ 'DKK' => 'Датская крона',
+ 'DOP' => 'Доминиканское песо',
+ 'DZD' => 'Алжирский динар',
+ 'ECS' => 'Эквадорский сукре',
+ 'ECV' => 'Постоянная единица стоимости Эквадора',
+ 'EEK' => 'Эстонская крона',
+ 'EGP' => 'Египетский фунт',
+ 'ERN' => 'Накфа',
+ 'ESA' => 'Испанская песета (А)',
+ 'ESB' => 'Испанская песета (конвертируемая)',
+ 'ESP' => 'Испанская песета',
+ 'ETB' => 'Эфиопский быр',
+ 'EUR' => 'Евро',
+ 'FIM' => 'Финская марка',
+ 'FJD' => 'Доллар Фиджи',
+ 'FKP' => 'Фунт Фолклендских островов',
+ 'FRF' => 'Французский франк',
+ 'GBP' => 'Английский фунт стерлингов',
+ 'GEK' => 'Грузинский купон',
+ 'GEL' => 'Грузинский лари',
+ 'GHC' => 'Ганский седи (1979–2007)',
+ 'GHS' => 'Ганский седи',
+ 'GIP' => 'Гибралтарский фунт',
+ 'GMD' => 'Гамбийский даласи',
+ 'GNF' => 'Гвинейский франк',
+ 'GNS' => 'Гвинейская сили',
+ 'GQE' => 'Эквеле экваториальной Гвинеи',
+ 'GRD' => 'Греческая драхма',
+ 'GTQ' => 'Гватемальский кетсаль',
+ 'GWE' => 'Эскудо Португальской Гвинеи',
+ 'GWP' => 'Песо Гвинеи-Бисау',
+ 'GYD' => 'Гайанский доллар',
+ 'HKD' => 'Гонконгский доллар',
+ 'HNL' => 'Гондурасская лемпира',
+ 'HRD' => 'Хорватский динар',
+ 'HRK' => 'Хорватская куна',
+ 'HTG' => 'Гаитянский гурд',
+ 'HUF' => 'Венгерский форинт',
+ 'IDR' => 'Индонезийская рупия',
+ 'IEP' => 'Ирландский фунт',
+ 'ILP' => 'Израильский фунт',
+ 'ILS' => 'Новый израильский шекель',
+ 'INR' => 'Индийская рупия',
+ 'IQD' => 'Иракский динар',
+ 'IRR' => 'Иранский риал',
+ 'ISK' => 'Исландская крона',
+ 'ITL' => 'Итальянская лира',
+ 'JMD' => 'Ямайский доллар',
+ 'JOD' => 'Иорданский динар',
+ 'JPY' => 'Японская иена',
+ 'KES' => 'Кенийский шиллинг',
+ 'KGS' => 'Киргизский сом',
+ 'KHR' => 'Камбоджийский риель',
+ 'KMF' => 'Франк Коморских островов',
+ 'KPW' => 'Северокорейская вона',
+ 'KRW' => 'Южнокорейская вона',
+ 'KWD' => 'Кувейтский динар',
+ 'KYD' => 'Доллар Каймановых островов',
+ 'KZT' => 'Казахский тенге',
+ 'LAK' => 'Лаосский кип',
+ 'LBP' => 'Ливанский фунт',
+ 'LKR' => 'Шри-Ланкийская рупия',
+ 'LRD' => 'Либерийский доллар',
+ 'LSL' => 'Лоти',
+ 'LTL' => 'Литовский лит',
+ 'LTT' => 'Литовский талон',
+ 'LUC' => 'Конвертируемый франк Люксембурга',
+ 'LUF' => 'Люксембургский франк',
+ 'LUL' => 'Финансовый франк Люксембурга',
+ 'LVL' => 'Латвийский лат',
+ 'LVR' => 'Латвийский рубль',
+ 'LYD' => 'Ливийский динар',
+ 'MAD' => 'Марокканский дирхам',
+ 'MAF' => 'Марокканский франк',
+ 'MDL' => 'Молдавский лей',
+ 'MGA' => 'Малагасийский ариари',
+ 'MGF' => 'Малагасийский франк',
+ 'MKD' => 'Македонский динар',
+ 'MLF' => 'Малийский франк',
+ 'MMK' => 'Мьянманский кьят',
+ 'MNT' => 'Монгольский тугрик',
+ 'MOP' => 'Патака Макао',
+ 'MRO' => 'Мавританская угия',
+ 'MTL' => 'Мальтийская лира',
+ 'MTP' => 'Мальтийский фунт',
+ 'MUR' => 'Маврикийская рупия',
+ 'MVR' => 'Мальдивская руфия',
+ 'MWK' => 'Малавийская квача',
+ 'MXN' => 'Мексиканское песо',
+ 'MXP' => 'Мексиканское серебряное песо (1861–1992)',
+ 'MXV' => 'Мексиканская пересчетная единица (UDI)',
+ 'MYR' => 'Малайзийский ринггит',
+ 'MZE' => 'Мозамбикское эскудо',
+ 'MZM' => 'Старый мозамбикский метикал',
+ 'MZN' => 'Мозамбикский метикал',
+ 'NAD' => 'Доллар Намибии',
+ 'NGN' => 'Нигерийская найра',
+ 'NIC' => 'Никарагуанская кордоба (1988–1991)',
+ 'NIO' => 'Никарагуанская кордоба',
+ 'NLG' => 'Нидерландский гульден',
+ 'NOK' => 'Норвежская крона',
+ 'NPR' => 'Непальская рупия',
+ 'NZD' => 'Новозеландский доллар',
+ 'OMR' => 'Оманский риал',
+ 'PAB' => 'Панамское бальбоа',
+ 'PEI' => 'Перуанское инти',
+ 'PEN' => 'Перуанский новый соль',
+ 'PES' => 'Перуанский соль',
+ 'PGK' => 'Кина Папуа — Новой Гвинеи',
+ 'PHP' => 'Филиппинское песо',
+ 'PKR' => 'Пакистанская рупия',
+ 'PLN' => 'Польский злотый',
+ 'PLZ' => 'Злотый',
+ 'PTE' => 'Португальское эскудо',
+ 'PYG' => 'Парагвайский гуарани',
+ 'QAR' => 'Катарский риал',
+ 'RHD' => 'Родезийский доллар',
+ 'ROL' => 'Старый Румынский лей',
+ 'RON' => 'Румынский лей',
+ 'RSD' => 'Сербский динар',
+ 'RUB' => 'Российский рубль',
+ 'RUR' => 'Российский рубль (1991–1998)',
+ 'RWF' => 'Франк Руанды',
+ 'SAR' => 'Саудовский риал',
+ 'SBD' => 'Доллар Соломоновых островов',
+ 'SCR' => 'Сейшельская рупия',
+ 'SDD' => 'Суданский динар',
+ 'SDG' => 'Суданский фунт',
+ 'SDP' => 'Старый суданский фунт',
+ 'SEK' => 'Шведская крона',
+ 'SGD' => 'Сингапурский доллар',
+ 'SHP' => 'Фунт острова Святой Елены',
+ 'SIT' => 'Словенский толар',
+ 'SKK' => 'Словацкая крона',
+ 'SLL' => 'Леоне',
+ 'SOS' => 'Сомалийский шиллинг',
+ 'SRD' => 'Суринамский доллар',
+ 'SRG' => 'Суринамский гульден',
+ 'SSP' => 'Южносуданский фунт',
+ 'STD' => 'Добра Сант-Томе и Принсипи',
+ 'SUR' => 'Рубль СССР',
+ 'SVC' => 'Сальвадорский колон',
+ 'SYP' => 'Сирийский фунт',
+ 'SZL' => 'Свазилендский лилангени',
+ 'THB' => 'Таиландский бат',
+ 'TJR' => 'Таджикский рубль',
+ 'TJS' => 'Таджикский сомони',
+ 'TMM' => 'Туркменский манат',
+ 'TMT' => 'Туркменский новый манат',
+ 'TND' => 'Тунисский динар',
+ 'TOP' => 'Тонганская паанга',
+ 'TPE' => 'Тиморское эскудо',
+ 'TRL' => 'Турецкая лира (1922–2005)',
+ 'TRY' => 'Турецкая лира',
+ 'TTD' => 'Доллар Тринидада и Тобаго',
+ 'TWD' => 'Новый тайваньский доллар',
+ 'TZS' => 'Танзанийский шиллинг',
+ 'UAH' => 'Украинская гривна',
+ 'UAK' => 'Карбованец (украинский)',
+ 'UGS' => 'Старый угандийский шиллинг',
+ 'UGX' => 'Угандийский шиллинг',
+ 'USD' => 'Доллар США',
+ 'USN' => 'Доллар США следующего дня',
+ 'USS' => 'Доллар США текущего дня',
+ 'UYI' => 'Уругвайский песо (индекс инфляции)',
+ 'UYP' => 'Уругвайское старое песо (1975–1993)',
+ 'UYU' => 'Уругвайское песо',
+ 'UZS' => 'Узбекский сум',
+ 'VEB' => 'Венесуэльский боливар (1871–2008)',
+ 'VEF' => 'Венесуэльский боливар',
+ 'VND' => 'Вьетнамский донг',
+ 'VUV' => 'Вату Вануату',
+ 'WST' => 'Самоанская тала',
+ 'XAF' => 'Франк КФА ВЕАС',
+ 'XAG' => 'Серебро',
+ 'XAU' => 'Золото',
+ 'XBA' => 'Европейская составная единица',
+ 'XBB' => 'Европейская денежная единица',
+ 'XBC' => 'расчетная единица европейского валютного соглашения (XBC)',
+ 'XBD' => 'расчетная единица европейского валютного соглашения (XBD)',
+ 'XCD' => 'Восточно-карибский доллар',
+ 'XDR' => 'СДР (специальные права заимствования)',
+ 'XEU' => 'ЭКЮ (единица европейской валюты)',
+ 'XFO' => 'Французский золотой франк',
+ 'XFU' => 'Французский UIC-франк',
+ 'XOF' => 'Франк КФА ВСЕАО',
+ 'XPD' => 'Палладий',
+ 'XPF' => 'Французский тихоокеанский франк',
+ 'XPT' => 'Платина',
+ 'XRE' => 'единица RINET-фондов',
+ 'XTS' => 'тестовый валютный код',
+ 'XXX' => 'Неизвестная или недействительная валюта',
+ 'YDD' => 'Йеменский динар',
+ 'YER' => 'Йеменский риал',
+ 'YUD' => 'Югославский твердый динар',
+ 'YUM' => 'Югославский новый динар',
+ 'YUN' => 'Югославский динар',
+ 'ZAL' => 'Южноафриканский рэнд (финансовый)',
+ 'ZAR' => 'Южноафриканский рэнд',
+ 'ZMK' => 'Квача (замбийская) (1968–2012)',
+ 'ZMW' => 'Замбийская квача',
+ 'ZRN' => 'Новый заир',
+ 'ZRZ' => 'Заир',
+ 'ZWD' => 'Доллар Зимбабве',
+ 'ZWL' => 'Доллар Зимбабве (2009)',
+);
+
+$currencySymbols = array(
+ 'AED' => 'AED',
+ 'AFN' => 'AFN',
+ 'ALL' => 'ALL',
+ 'AMD' => 'AMD',
+ 'ANG' => 'ANG',
+ 'AOA' => 'AOA',
+ 'ARS' => 'ARS',
+ 'AUD' => 'A$',
+ 'AWG' => 'AWG',
+ 'AZN' => 'AZN',
+ 'BAM' => 'BAM',
+ 'BBD' => 'BBD',
+ 'BDT' => 'BDT',
+ 'BGN' => 'BGN',
+ 'BHD' => 'BHD',
+ 'BIF' => 'BIF',
+ 'BMD' => 'BMD',
+ 'BND' => 'BND',
+ 'BOB' => 'BOB',
+ 'BRL' => 'R$',
+ 'BSD' => 'BSD',
+ 'BTN' => 'BTN',
+ 'BWP' => 'BWP',
+ 'BYR' => 'BYR',
+ 'BZD' => 'BZD',
+ 'CAD' => 'CA$',
+ 'CDF' => 'CDF',
+ 'CHF' => 'CHF',
+ 'CLP' => 'CLP',
+ 'CNY' => 'CN¥',
+ 'COP' => 'COP',
+ 'CRC' => 'CRC',
+ 'CUC' => 'CUC',
+ 'CUP' => 'CUP',
+ 'CVE' => 'CVE',
+ 'CZK' => 'CZK',
+ 'DJF' => 'DJF',
+ 'DKK' => 'DKK',
+ 'DOP' => 'DOP',
+ 'DZD' => 'DZD',
+ 'EGP' => 'EGP',
+ 'ERN' => 'ERN',
+ 'ETB' => 'ETB',
+ 'EUR' => '€',
+ 'FJD' => 'FJD',
+ 'FKP' => 'FKP',
+ 'GBP' => '£',
+ 'GEL' => 'GEL',
+ 'GHS' => 'GHS',
+ 'GIP' => 'GIP',
+ 'GMD' => 'GMD',
+ 'GNF' => 'GNF',
+ 'GTQ' => 'GTQ',
+ 'GYD' => 'GYD',
+ 'HKD' => 'HK$',
+ 'HNL' => 'HNL',
+ 'HRK' => 'HRK',
+ 'HTG' => 'HTG',
+ 'HUF' => 'HUF',
+ 'IDR' => 'IDR',
+ 'ILS' => '₪',
+ 'INR' => '₹',
+ 'IQD' => 'IQD',
+ 'IRR' => 'IRR',
+ 'ISK' => 'ISK',
+ 'JMD' => 'JMD',
+ 'JOD' => 'JOD',
+ 'JPY' => '¥',
+ 'KES' => 'KES',
+ 'KGS' => 'KGS',
+ 'KHR' => 'KHR',
+ 'KMF' => 'KMF',
+ 'KPW' => 'KPW',
+ 'KRW' => '₩',
+ 'KWD' => 'KWD',
+ 'KYD' => 'KYD',
+ 'KZT' => 'KZT',
+ 'LAK' => 'LAK',
+ 'LBP' => 'LBP',
+ 'LKR' => 'LKR',
+ 'LRD' => 'LRD',
+ 'LTL' => 'LTL',
+ 'LVL' => 'LVL',
+ 'LYD' => 'LYD',
+ 'MAD' => 'MAD',
+ 'MDL' => 'MDL',
+ 'MGA' => 'MGA',
+ 'MKD' => 'MKD',
+ 'MMK' => 'MMK',
+ 'MNT' => 'MNT',
+ 'MOP' => 'MOP',
+ 'MRO' => 'MRO',
+ 'MUR' => 'MUR',
+ 'MVR' => 'MVR',
+ 'MWK' => 'MWK',
+ 'MXN' => 'MX$',
+ 'MYR' => 'MYR',
+ 'MZN' => 'MZN',
+ 'NAD' => 'NAD',
+ 'NGN' => 'NGN',
+ 'NIO' => 'NIO',
+ 'NOK' => 'NOK',
+ 'NPR' => 'NPR',
+ 'NZD' => 'NZ$',
+ 'OMR' => 'OMR',
+ 'PAB' => 'PAB',
+ 'PEN' => 'PEN',
+ 'PGK' => 'PGK',
+ 'PHP' => 'PHP',
+ 'PKR' => 'PKR',
+ 'PLN' => 'PLN',
+ 'PYG' => 'PYG',
+ 'QAR' => 'QAR',
+ 'RON' => 'RON',
+ 'RSD' => 'RSD',
+ 'RUB' => 'руб.',
+ 'RUR' => 'р.',
+ 'RWF' => 'RWF',
+ 'SAR' => 'SAR',
+ 'SBD' => 'SBD',
+ 'SCR' => 'SCR',
+ 'SDG' => 'SDG',
+ 'SEK' => 'SEK',
+ 'SGD' => 'SGD',
+ 'SHP' => 'SHP',
+ 'SLL' => 'SLL',
+ 'SOS' => 'SOS',
+ 'SRD' => 'SRD',
+ 'SSP' => 'SSP',
+ 'STD' => 'STD',
+ 'SYP' => 'SYP',
+ 'SZL' => 'SZL',
+ 'THB' => '฿',
+ 'TJS' => 'TJS',
+ 'TMT' => 'ТМТ',
+ 'TND' => 'TND',
+ 'TOP' => 'TOP',
+ 'TRY' => 'TRY',
+ 'TTD' => 'TTD',
+ 'TWD' => 'NT$',
+ 'TZS' => 'TZS',
+ 'UAH' => '₴',
+ 'UGX' => 'UGX',
+ 'USD' => '$',
+ 'UYU' => 'UYU',
+ 'UZS' => 'UZS',
+ 'VEF' => 'VEF',
+ 'VND' => '₫',
+ 'VUV' => 'VUV',
+ 'WST' => 'WST',
+ 'XAF' => 'FCFA',
+ 'XCD' => 'EC$',
+ 'XOF' => 'CFA',
+ 'XPF' => 'CFPF',
+ 'XXX' => 'XXXX',
+ 'YER' => 'YER',
+ 'ZAR' => 'ZAR',
+ 'ZMW' => 'ZMW',
+);
+
+$countryNames = array(
+ 'AC' => 'о-в Вознесения',
+ 'AD' => 'Андорра',
+ 'AE' => 'ОАЭ',
+ 'AF' => 'Афганистан',
+ 'AG' => 'Антигуа и Барбуда',
+ 'AI' => 'Ангилья',
+ 'AL' => 'Албания',
+ 'AM' => 'Армения',
+ 'AN' => 'Нидерландские Антильские о-ва',
+ 'AO' => 'Ангола',
+ 'AQ' => 'Антарктида',
+ 'AR' => 'Аргентина',
+ 'AS' => 'Американское Самоа',
+ 'AT' => 'Австрия',
+ 'AU' => 'Австралия',
+ 'AW' => 'Аруба',
+ 'AX' => 'Аландские о-ва',
+ 'AZ' => 'Азербайджан',
+ 'BA' => 'Босния и Герцеговина',
+ 'BB' => 'Барбадос',
+ 'BD' => 'Бангладеш',
+ 'BE' => 'Бельгия',
+ 'BF' => 'Буркина-Фасо',
+ 'BG' => 'Болгария',
+ 'BH' => 'Бахрейн',
+ 'BI' => 'Бурунди',
+ 'BJ' => 'Бенин',
+ 'BL' => 'Сен-Бартельми',
+ 'BM' => 'Бермудские о-ва',
+ 'BN' => 'Бруней-Даруссалам',
+ 'BO' => 'Боливия',
+ 'BQ' => 'Бонэйр, Синт-Эстатиус и Саба',
+ 'BR' => 'Бразилия',
+ 'BS' => 'Багамские о-ва',
+ 'BT' => 'Бутан',
+ 'BV' => 'о-в Буве',
+ 'BW' => 'Ботсвана',
+ 'BY' => 'Беларусь',
+ 'BZ' => 'Белиз',
+ 'CA' => 'Канада',
+ 'CC' => 'Кокосовые о-ва',
+ 'CD' => 'Конго - Киншаса',
+ 'CF' => 'ЦАР',
+ 'CG' => 'Конго - Браззавиль',
+ 'CH' => 'Швейцария',
+ 'CI' => 'Кот-д’Ивуар',
+ 'CK' => 'о-ва Кука',
+ 'CL' => 'Чили',
+ 'CM' => 'Камерун',
+ 'CN' => 'Китай',
+ 'CO' => 'Колумбия',
+ 'CP' => 'о-в Клиппертон',
+ 'CR' => 'Коста-Рика',
+ 'CU' => 'Куба',
+ 'CV' => 'Кабо-Верде',
+ 'CW' => 'Кюрасао',
+ 'CX' => 'о-в Рождества',
+ 'CY' => 'Кипр',
+ 'CZ' => 'Чехия',
+ 'DE' => 'Германия',
+ 'DG' => 'Диего-Гарсия',
+ 'DJ' => 'Джибути',
+ 'DK' => 'Дания',
+ 'DM' => 'Доминика',
+ 'DO' => 'Доминиканская Республика',
+ 'DZ' => 'Алжир',
+ 'EA' => 'Сеута и Мелилья',
+ 'EC' => 'Эквадор',
+ 'EE' => 'Эстония',
+ 'EG' => 'Египет',
+ 'EH' => 'Западная Сахара',
+ 'ER' => 'Эритрея',
+ 'ES' => 'Испания',
+ 'ET' => 'Эфиопия',
+ 'EU' => 'Европейский союз',
+ 'FI' => 'Финляндия',
+ 'FJ' => 'Фиджи',
+ 'FK' => 'Фолклендские о-ва',
+ 'FM' => 'Федеративные Штаты Микронезии',
+ 'FO' => 'Фарерские о-ва',
+ 'FR' => 'Франция',
+ 'GA' => 'Габон',
+ 'GB' => 'Британия',
+ 'GD' => 'Гренада',
+ 'GE' => 'Грузия',
+ 'GF' => 'Французская Гвиана',
+ 'GG' => 'Гернси',
+ 'GH' => 'Гана',
+ 'GI' => 'Гибралтар',
+ 'GL' => 'Гренландия',
+ 'GM' => 'Гамбия',
+ 'GN' => 'Гвинея',
+ 'GP' => 'Гваделупа',
+ 'GQ' => 'Экваториальная Гвинея',
+ 'GR' => 'Греция',
+ 'GS' => 'Южная Георгия и Южные Сандвичевы о-ва',
+ 'GT' => 'Гватемала',
+ 'GU' => 'Гуам',
+ 'GW' => 'Гвинея-Бисау',
+ 'GY' => 'Гайана',
+ 'HK' => 'Гонконг',
+ 'HM' => 'о-ва Херд и Макдональд',
+ 'HN' => 'Гондурас',
+ 'HR' => 'Хорватия',
+ 'HT' => 'Гаити',
+ 'HU' => 'Венгрия',
+ 'IC' => 'Канарские о-ва',
+ 'ID' => 'Индонезия',
+ 'IE' => 'Ирландия',
+ 'IL' => 'Израиль',
+ 'IM' => 'О-в Мэн',
+ 'IN' => 'Индия',
+ 'IO' => 'Британская территория в Индийском океане',
+ 'IQ' => 'Ирак',
+ 'IR' => 'Иран',
+ 'IS' => 'Исландия',
+ 'IT' => 'Италия',
+ 'JE' => 'Джерси',
+ 'JM' => 'Ямайка',
+ 'JO' => 'Иордания',
+ 'JP' => 'Япония',
+ 'KE' => 'Кения',
+ 'KG' => 'Киргизия',
+ 'KH' => 'Камбоджа',
+ 'KI' => 'Кирибати',
+ 'KM' => 'Коморские о-ва',
+ 'KN' => 'Сент-Китс и Невис',
+ 'KP' => 'КНДР',
+ 'KR' => 'Республика Корея',
+ 'KW' => 'Кувейт',
+ 'KY' => 'Каймановы о-ва',
+ 'KZ' => 'Казахстан',
+ 'LA' => 'Лаос',
+ 'LB' => 'Ливан',
+ 'LC' => 'Сент-Люсия',
+ 'LI' => 'Лихтенштейн',
+ 'LK' => 'Шри-Ланка',
+ 'LR' => 'Либерия',
+ 'LS' => 'Лесото',
+ 'LT' => 'Литва',
+ 'LU' => 'Люксембург',
+ 'LV' => 'Латвия',
+ 'LY' => 'Ливия',
+ 'MA' => 'Марокко',
+ 'MC' => 'Монако',
+ 'MD' => 'Молдова',
+ 'ME' => 'Черногория',
+ 'MF' => 'Сен-Мартен',
+ 'MG' => 'Мадагаскар',
+ 'MH' => 'Маршалловы о-ва',
+ 'MK' => 'Македония',
+ 'ML' => 'Мали',
+ 'MM' => 'Мьянма (Бирма)',
+ 'MN' => 'Монголия',
+ 'MO' => 'Макао',
+ 'MP' => 'Северные Марианские о-ва',
+ 'MQ' => 'Мартиника',
+ 'MR' => 'Мавритания',
+ 'MS' => 'Монтсеррат',
+ 'MT' => 'Мальта',
+ 'MU' => 'Маврикий',
+ 'MV' => 'Мальдивские о-ва',
+ 'MW' => 'Малави',
+ 'MX' => 'Мексика',
+ 'MY' => 'Малайзия',
+ 'MZ' => 'Мозамбик',
+ 'NA' => 'Намибия',
+ 'NC' => 'Новая Каледония',
+ 'NE' => 'Нигер',
+ 'NF' => 'о-в Норфолк',
+ 'NG' => 'Нигерия',
+ 'NI' => 'Никарагуа',
+ 'NL' => 'Нидерланды',
+ 'NO' => 'Норвегия',
+ 'NP' => 'Непал',
+ 'NR' => 'Науру',
+ 'NU' => 'Ниуэ',
+ 'NZ' => 'Новая Зеландия',
+ 'OM' => 'Оман',
+ 'PA' => 'Панама',
+ 'PE' => 'Перу',
+ 'PF' => 'Французская Полинезия',
+ 'PG' => 'Папуа – Новая Гвинея',
+ 'PH' => 'Филиппины',
+ 'PK' => 'Пакистан',
+ 'PL' => 'Польша',
+ 'PM' => 'Сен-Пьер и Микелон',
+ 'PN' => 'Питкэрн',
+ 'PR' => 'Пуэрто-Рико',
+ 'PS' => 'Палестина',
+ 'PT' => 'Португалия',
+ 'PW' => 'Палау',
+ 'PY' => 'Парагвай',
+ 'QA' => 'Катар',
+ 'QO' => 'Внешняя Океания',
+ 'RE' => 'Реюньон',
+ 'RO' => 'Румыния',
+ 'RS' => 'Сербия',
+ 'RU' => 'Россия',
+ 'RW' => 'Руанда',
+ 'SA' => 'Саудовская Аравия',
+ 'SB' => 'Соломоновы о-ва',
+ 'SC' => 'Сейшельские о-ва',
+ 'SD' => 'Судан',
+ 'SE' => 'Швеция',
+ 'SG' => 'Сингапур',
+ 'SH' => 'О-в Св. Елены',
+ 'SI' => 'Словения',
+ 'SJ' => 'Шпицберген и Ян-Майен',
+ 'SK' => 'Словакия',
+ 'SL' => 'Сьерра-Леоне',
+ 'SM' => 'Сан-Марино',
+ 'SN' => 'Сенегал',
+ 'SO' => 'Сомали',
+ 'SR' => 'Суринам',
+ 'SS' => 'Южный Судан',
+ 'ST' => 'Сан-Томе и Принсипи',
+ 'SV' => 'Сальвадор',
+ 'SX' => 'Синт-Мартен',
+ 'SY' => 'Сирия',
+ 'SZ' => 'Свазиленд',
+ 'TA' => 'Тристан-да-Кунья',
+ 'TC' => 'О-ва Тёркс и Кайкос',
+ 'TD' => 'Чад',
+ 'TF' => 'Французские Южные Территории',
+ 'TG' => 'Того',
+ 'TH' => 'Таиланд',
+ 'TJ' => 'Таджикистан',
+ 'TK' => 'Токелау',
+ 'TL' => 'Восточный Тимор',
+ 'TM' => 'Туркменистан',
+ 'TN' => 'Тунис',
+ 'TO' => 'Тонга',
+ 'TR' => 'Турция',
+ 'TT' => 'Тринидад и Тобаго',
+ 'TV' => 'Тувалу',
+ 'TW' => 'Тайвань',
+ 'TZ' => 'Танзания',
+ 'UA' => 'Украина',
+ 'UG' => 'Уганда',
+ 'UM' => 'Внешние малые о-ва (США)',
+ 'US' => 'США',
+ 'UY' => 'Уругвай',
+ 'UZ' => 'Узбекистан',
+ 'VA' => 'Ватикан',
+ 'VC' => 'Сент-Винсент и Гренадины',
+ 'VE' => 'Венесуэла',
+ 'VG' => 'Виргинские о-ва (Британские)',
+ 'VI' => 'Виргинские о-ва (США)',
+ 'VN' => 'Вьетнам',
+ 'VU' => 'Вануату',
+ 'WF' => 'Уоллис и Футуна',
+ 'WS' => 'Самоа',
+ 'XK' => 'Косово',
+ 'YE' => 'Йемен',
+ 'YT' => 'Майотта',
+ 'ZA' => 'ЮАР',
+ 'ZM' => 'Замбия',
+ 'ZW' => 'Зимбабве',
+);
+
+$timeUnits = array(
+ 'day-few' => '{0} дня',
+ 'day-future-few' => 'через {0} дня',
+ 'day-future-many' => 'через {0} дней',
+ 'day-future-one' => 'через {0} день',
+ 'day-future-other' => 'через {0} дней',
+ 'day-many' => '{0} дней',
+ 'day-narrow-future-few' => '+{0} д.',
+ 'day-narrow-future-many' => '+{0} д.',
+ 'day-narrow-future-one' => '+{0} д.',
+ 'day-narrow-future-other' => '+{0} д.',
+ 'day-narrow-past-few' => '-{0} д.',
+ 'day-narrow-past-many' => '-{0} д.',
+ 'day-narrow-past-one' => '-{0} д.',
+ 'day-narrow-past-other' => '-{0} д.',
+ 'day-one' => '{0} день',
+ 'day-other' => '{0} дня',
+ 'day-past-few' => '{0} дня назад',
+ 'day-past-many' => '{0} дней назад',
+ 'day-past-one' => '{0} день назад',
+ 'day-past-other' => '{0} дня назад',
+ 'day-short-future-few' => 'через {0} д.',
+ 'day-short-future-many' => 'через {0} д.',
+ 'day-short-future-one' => 'через {0} д.',
+ 'day-short-future-other' => 'через {0} д.',
+ 'day-short-past-few' => '{0} д. назад',
+ 'day-short-past-many' => '{0} д. назад',
+ 'day-short-past-one' => '{0} д. назад',
+ 'day-short-past-other' => '{0} д. назад',
+ 'hour-few' => '{0} часа',
+ 'hour-future-few' => 'через {0} часа',
+ 'hour-future-many' => 'через {0} часов',
+ 'hour-future-one' => 'через {0} час',
+ 'hour-future-other' => 'через {0} часа',
+ 'hour-many' => '{0} часов',
+ 'hour-narrow-future-few' => '+{0} ч.',
+ 'hour-narrow-future-many' => '+{0} ч.',
+ 'hour-narrow-future-one' => '+{0} ч.',
+ 'hour-narrow-future-other' => '+{0} ч.',
+ 'hour-narrow-past-few' => '-{0} ч.',
+ 'hour-narrow-past-many' => '-{0} ч.',
+ 'hour-narrow-past-one' => '-{0} ч.',
+ 'hour-narrow-past-other' => '-{0} ч.',
+ 'hour-one' => '{0} час',
+ 'hour-other' => '{0} часа',
+ 'hour-past-few' => '{0} часа назад',
+ 'hour-past-many' => '{0} часов назад',
+ 'hour-past-one' => '{0} час назад',
+ 'hour-past-other' => '{0} часа назад',
+ 'hour-short-future-few' => 'через {0} ч.',
+ 'hour-short-future-many' => 'через {0} ч.',
+ 'hour-short-future-one' => 'через {0} ч.',
+ 'hour-short-future-other' => 'через {0} ч.',
+ 'hour-short-past-few' => '{0} ч. назад',
+ 'hour-short-past-many' => '{0} ч. назад',
+ 'hour-short-past-one' => '{0} ч. назад',
+ 'hour-short-past-other' => '{0} ч. назад',
+ 'microsecond-few' => '{0} микросекунды',
+ 'microsecond-many' => '{0} микросекунд',
+ 'microsecond-one' => '{0} микросекунда',
+ 'microsecond-other' => '{0} микросекунды',
+ 'millisecond-few' => '{0} миллисекунды',
+ 'millisecond-many' => '{0} миллисекунд',
+ 'millisecond-one' => '{0} миллисекунда',
+ 'millisecond-other' => '{0} миллисекунды',
+ 'minute-few' => '{0} минуты',
+ 'minute-future-few' => 'через {0} минуты',
+ 'minute-future-many' => 'через {0} минут',
+ 'minute-future-one' => 'через {0} минуту',
+ 'minute-future-other' => 'через {0} минуты',
+ 'minute-many' => '{0} минут',
+ 'minute-narrow-future-few' => '+{0} мин.',
+ 'minute-narrow-future-many' => '+{0} мин.',
+ 'minute-narrow-future-one' => '+{0} мин.',
+ 'minute-narrow-future-other' => '+{0} мин.',
+ 'minute-narrow-past-few' => '-{0} мин.',
+ 'minute-narrow-past-many' => '-{0} мин.',
+ 'minute-narrow-past-one' => '-{0} мин.',
+ 'minute-narrow-past-other' => '-{0} мин.',
+ 'minute-one' => '{0} минута',
+ 'minute-other' => '{0} минуты',
+ 'minute-past-few' => '{0} минуты назад',
+ 'minute-past-many' => '{0} минут назад',
+ 'minute-past-one' => '{0} минуту назад',
+ 'minute-past-other' => '{0} минуты назад',
+ 'minute-short-future-few' => 'через {0} мин.',
+ 'minute-short-future-many' => 'через {0} мин.',
+ 'minute-short-future-one' => 'через {0} мин.',
+ 'minute-short-future-other' => 'через {0} мин.',
+ 'minute-short-past-few' => '{0} мин. назад',
+ 'minute-short-past-many' => '{0} мин. назад',
+ 'minute-short-past-one' => '{0} мин. назад',
+ 'minute-short-past-other' => '{0} мин. назад',
+ 'month-few' => '{0} месяца',
+ 'month-future-few' => 'через {0} месяца',
+ 'month-future-many' => 'через {0} месяцев',
+ 'month-future-one' => 'через {0} месяц',
+ 'month-future-other' => 'через {0} месяца',
+ 'month-many' => '{0} месяцев',
+ 'month-narrow-future-few' => '+{0} мес.',
+ 'month-narrow-future-many' => '+{0} мес.',
+ 'month-narrow-future-one' => '+{0} мес.',
+ 'month-narrow-future-other' => '+{0} мес.',
+ 'month-narrow-past-few' => '-{0} мес.',
+ 'month-narrow-past-many' => '-{0} мес.',
+ 'month-narrow-past-one' => '-{0} мес.',
+ 'month-narrow-past-other' => '-{0} мес.',
+ 'month-one' => '{0} месяц',
+ 'month-other' => '{0} месяца',
+ 'month-past-few' => '{0} месяца назад',
+ 'month-past-many' => '{0} месяцев назад',
+ 'month-past-one' => '{0} месяц назад',
+ 'month-past-other' => '{0} месяца назад',
+ 'month-short-future-few' => 'через {0} мес.',
+ 'month-short-future-many' => 'через {0} мес.',
+ 'month-short-future-one' => 'через {0} мес.',
+ 'month-short-future-other' => 'через {0} мес.',
+ 'month-short-past-few' => '{0} мес. назад',
+ 'month-short-past-many' => '{0} мес. назад',
+ 'month-short-past-one' => '{0} мес. назад',
+ 'month-short-past-other' => '{0} мес. назад',
+ 'nanosecond-few' => '{0} наносекунды',
+ 'nanosecond-many' => '{0} наносекунд',
+ 'nanosecond-one' => '{0} наносекунда',
+ 'nanosecond-other' => '{0} наносекунды',
+ 'quarter-future-few' => 'через {0} квартала',
+ 'quarter-future-many' => 'через {0} кварталов',
+ 'quarter-future-one' => 'через {0} квартал',
+ 'quarter-future-other' => 'через {0} квартала',
+ 'quarter-narrow-future-few' => '+{0} кв.',
+ 'quarter-narrow-future-many' => '+{0} кв.',
+ 'quarter-narrow-future-one' => '+{0} кв.',
+ 'quarter-narrow-future-other' => '+{0} кв.',
+ 'quarter-narrow-past-few' => '-{0} кв.',
+ 'quarter-narrow-past-many' => '-{0} кв.',
+ 'quarter-narrow-past-one' => '-{0} кв.',
+ 'quarter-narrow-past-other' => '-{0} кв.',
+ 'quarter-past-few' => '{0} квартала назад',
+ 'quarter-past-many' => '{0} кварталов назад',
+ 'quarter-past-one' => '{0} квартал назад',
+ 'quarter-past-other' => '{0} квартала назад',
+ 'quarter-short-future-few' => 'через {0} кв.',
+ 'quarter-short-future-many' => 'через {0} кв.',
+ 'quarter-short-future-one' => 'через {0} кв.',
+ 'quarter-short-future-other' => 'через {0} кв.',
+ 'quarter-short-past-few' => '{0} кв. назад',
+ 'quarter-short-past-many' => '{0} кв. назад',
+ 'quarter-short-past-one' => '{0} кв. назад',
+ 'quarter-short-past-other' => '{0} кв. назад',
+ 'second-few' => '{0} секунды',
+ 'second-future-few' => 'через {0} секунды',
+ 'second-future-many' => 'через {0} секунд',
+ 'second-future-one' => 'через {0} секунду',
+ 'second-future-other' => 'через {0} секунды',
+ 'second-many' => '{0} секунд',
+ 'second-narrow-future-few' => 'через {0} с',
+ 'second-narrow-future-many' => 'через {0} с',
+ 'second-narrow-future-one' => 'через {0} с',
+ 'second-narrow-future-other' => 'через {0} с',
+ 'second-narrow-past-few' => '{0} с назад',
+ 'second-narrow-past-many' => '{0} с назад',
+ 'second-narrow-past-one' => '{0} с назад',
+ 'second-narrow-past-other' => '{0} с назад',
+ 'second-one' => '{0} секунда',
+ 'second-other' => '{0} секунды',
+ 'second-past-few' => '{0} секунды назад',
+ 'second-past-many' => '{0} секунд назад',
+ 'second-past-one' => '{0} секунду назад',
+ 'second-past-other' => '{0} секунды назад',
+ 'second-short-future-few' => 'через {0} сек.',
+ 'second-short-future-many' => 'через {0} сек.',
+ 'second-short-future-one' => 'через {0} сек.',
+ 'second-short-future-other' => 'через {0} сек.',
+ 'second-short-past-few' => '{0} сек. назад',
+ 'second-short-past-many' => '{0} сек. назад',
+ 'second-short-past-one' => '{0} сек. назад',
+ 'second-short-past-other' => '{0} сек. назад',
+ 'week-few' => '{0} недели',
+ 'week-future-few' => 'через {0} недели',
+ 'week-future-many' => 'через {0} недель',
+ 'week-future-one' => 'через {0} неделю',
+ 'week-future-other' => 'через {0} недели',
+ 'week-many' => '{0} недель',
+ 'week-narrow-future-few' => '+{0} нед.',
+ 'week-narrow-future-many' => '+{0} нед.',
+ 'week-narrow-future-one' => '+{0} нед.',
+ 'week-narrow-future-other' => '+{0} нед.',
+ 'week-narrow-past-few' => '{0} нед. назад',
+ 'week-narrow-past-many' => '{0} нед. назад',
+ 'week-narrow-past-one' => '{0} нед. назад',
+ 'week-narrow-past-other' => '{0} нед. назад',
+ 'week-one' => '{0} неделя',
+ 'week-other' => '{0} недели',
+ 'week-past-few' => '{0} недели назад',
+ 'week-past-many' => '{0} недель назад',
+ 'week-past-one' => '{0} неделю назад',
+ 'week-past-other' => '{0} недели назад',
+ 'week-short-future-few' => 'через {0} нед.',
+ 'week-short-future-many' => 'через {0} нед.',
+ 'week-short-future-one' => 'через {0} нед.',
+ 'week-short-future-other' => 'через {0} нед.',
+ 'week-short-past-few' => '{0} нед. назад',
+ 'week-short-past-many' => '{0} нед. назад',
+ 'week-short-past-one' => '{0} нед. назад',
+ 'week-short-past-other' => '{0} нед. назад',
+ 'year-few' => '{0} года',
+ 'year-future-few' => 'через {0} года',
+ 'year-future-many' => 'через {0} лет',
+ 'year-future-one' => 'через {0} год',
+ 'year-future-other' => 'через {0} года',
+ 'year-many' => '{0} лет',
+ 'year-narrow-future-few' => '+{0} г.',
+ 'year-narrow-future-many' => '+{0} л.',
+ 'year-narrow-future-one' => '+{0} г.',
+ 'year-narrow-future-other' => '+{0} г.',
+ 'year-narrow-past-few' => '-{0} г.',
+ 'year-narrow-past-many' => '-{0} л.',
+ 'year-narrow-past-one' => '-{0} г.',
+ 'year-narrow-past-other' => '-{0} г.',
+ 'year-one' => '{0} год',
+ 'year-other' => '{0} года',
+ 'year-past-few' => '{0} года назад',
+ 'year-past-many' => '{0} лет назад',
+ 'year-past-one' => '{0} год назад',
+ 'year-past-other' => '{0} года назад',
+ 'year-short-future-few' => 'через {0} г.',
+ 'year-short-future-many' => 'через {0} л.',
+ 'year-short-future-one' => 'через {0} г.',
+ 'year-short-future-other' => 'через {0} г.',
+ 'year-short-past-few' => '{0} г. назад',
+ 'year-short-past-many' => '{0} л. назад',
+ 'year-short-past-one' => '{0} г. назад',
+ 'year-short-past-other' => '{0} г. назад',
+);
diff --git a/MLEB/cldr/CldrNames/CldrNamesRw.php b/MLEB/cldr/CldrNames/CldrNamesRw.php
new file mode 100644
index 00000000..1dac8554
--- /dev/null
+++ b/MLEB/cldr/CldrNames/CldrNamesRw.php
@@ -0,0 +1,114 @@
+<?php
+
+$languageNames = array(
+ 'af' => 'Ikinyafurikaneri',
+ 'am' => 'Inyamuhariki',
+ 'ar' => 'Icyarabu',
+ 'as' => 'Icyasamizi',
+ 'az' => 'Inyazeribayijani',
+ 'be' => 'Ikibelarusiya',
+ 'bg' => 'Urunyabuligariya',
+ 'bn' => 'Ikibengali',
+ 'br' => 'Inyebiritoni',
+ 'bs' => 'Inyebosiniya',
+ 'ca' => 'Igikatalani',
+ 'cs' => 'Igiceke',
+ 'cy' => 'Ikigaluwa',
+ 'da' => 'Ikidaninwa',
+ 'de' => 'Ikidage',
+ 'el' => 'Ikigereki',
+ 'en' => 'Icyongereza',
+ 'eo' => 'Icyesiperanto',
+ 'es' => 'Icyesipanyolo',
+ 'et' => 'Icyesitoniya',
+ 'eu' => 'Ikibasiki',
+ 'fa' => 'Inyeperisi',
+ 'fi' => 'Igifinilande',
+ 'fil' => 'Ikinyafilipine',
+ 'fo' => 'Inyefaroyizi',
+ 'fr' => 'Igifaransa',
+ 'fy' => 'Igifiriziyani',
+ 'ga' => 'Ikirilandi',
+ 'gd' => 'Ikigaluwa cy’Igisweduwa',
+ 'gl' => 'Ikigalisiya',
+ 'gn' => 'Inyaguwarani',
+ 'gu' => 'Inyegujarati',
+ 'he' => 'Igiheburayo',
+ 'hi' => 'Igihindi',
+ 'hr' => 'Igikorowasiya',
+ 'hu' => 'Igihongiriya',
+ 'hy' => 'Ikinyarumeniya',
+ 'ia' => 'Ururimi Gahuzamiryango',
+ 'id' => 'Ikinyendoziya',
+ 'ie' => 'Uruhuzandimi',
+ 'is' => 'Igisilande',
+ 'it' => 'Igitaliyani',
+ 'ja' => 'Ikiyapani',
+ 'jv' => 'Inyejava',
+ 'ka' => 'Inyejeworujiya',
+ 'km' => 'Igikambodiya',
+ 'kn' => 'Igikanada',
+ 'ko' => 'Igikoreya',
+ 'ku' => 'Inyekuridishi',
+ 'ky' => 'Inkerigizi',
+ 'la' => 'Ikilatini',
+ 'ln' => 'Ilingala',
+ 'lo' => 'Ikilawotiyani',
+ 'lt' => 'Ikilituwaniya',
+ 'lv' => 'Ikinyaletoviyani',
+ 'mk' => 'Ikimasedoniyani',
+ 'ml' => 'Ikimalayalami',
+ 'mn' => 'Ikimongoli',
+ 'mr' => 'Ikimarati',
+ 'ms' => 'Ikimalayi',
+ 'mt' => 'Ikimaliteze',
+ 'ne' => 'Ikinepali',
+ 'nl' => 'Ikinerilande',
+ 'nn' => 'Inyenoruveji (Nyonorusiki)',
+ 'no' => 'Ikinoruveji',
+ 'oc' => 'Inyogusitani',
+ 'or' => 'Inyoriya',
+ 'pa' => 'Igipunjabi',
+ 'pl' => 'Igipolone',
+ 'ps' => 'Impashito',
+ 'pt' => 'Igiporutugali',
+ 'pt-br' => 'Inyeporutigali (Brezili)',
+ 'pt-pt' => 'Inyeporutigali (Igiporutigali)',
+ 'ro' => 'Ikinyarumaniya',
+ 'ru' => 'Ikirusiya',
+ 'rw' => 'Kinyarwanda',
+ 'sa' => 'Igisansikiri',
+ 'sd' => 'Igisindi',
+ 'sh' => 'Inyeseribiya na Korowasiya',
+ 'si' => 'Inyesimpaleze',
+ 'sk' => 'Igisilovaki',
+ 'sl' => 'Ikinyasiloveniya',
+ 'so' => 'Igisomali',
+ 'sq' => 'Icyalubaniya',
+ 'sr' => 'Igiseribe',
+ 'st' => 'Inyesesoto',
+ 'su' => 'Inyesudani',
+ 'sv' => 'Igisuweduwa',
+ 'sw' => 'Igiswahili',
+ 'ta' => 'Igitamili',
+ 'te' => 'Igitelugu',
+ 'th' => 'Igitayi',
+ 'ti' => 'Inyatigirinya',
+ 'tk' => 'Inyeturukimeni',
+ 'tlh' => 'Inyekilingoni',
+ 'tr' => 'Igiturukiya',
+ 'tw' => 'Inyetuwi',
+ 'ug' => 'Ikiwiguri',
+ 'uk' => 'Ikinyayukereni',
+ 'ur' => 'Inyeyurudu',
+ 'uz' => 'Inyeyuzubeki',
+ 'vi' => 'Ikinyaviyetinamu',
+ 'xh' => 'Inyehawusa',
+ 'yi' => 'Inyeyidishi',
+ 'zu' => 'Inyezulu',
+);
+
+$countryNames = array(
+ 'RW' => 'Rwanda',
+ 'TO' => 'Igitonga',
+);
diff --git a/MLEB/cldr/CldrNames/CldrNamesSah.php b/MLEB/cldr/CldrNames/CldrNamesSah.php
new file mode 100644
index 00000000..340a3358
--- /dev/null
+++ b/MLEB/cldr/CldrNames/CldrNamesSah.php
@@ -0,0 +1,79 @@
+<?php
+
+$languageNames = array(
+ 'ab' => 'Абхаастыы',
+ 'af' => 'Аппырыкааныстыы',
+ 'ar' => 'Араабтыы',
+ 'az' => 'Адьырбайдьаанныы',
+ 'be' => 'Бөлөрүүстүү',
+ 'bg' => 'Булҕаардыы',
+ 'bn' => 'Бенгаллыы',
+ 'bo' => 'Тибиэттии',
+ 'bs' => 'Босныйалыы',
+ 'ca' => 'Каталаанныы',
+ 'cs' => 'Чиэскэйдии',
+ 'da' => 'Даатскайдыы',
+ 'de' => 'Ниэмэстии',
+ 'el' => 'Гириэктии',
+ 'en' => 'Аҥылычаанныы',
+ 'es' => 'Ыспаанныы',
+ 'et' => 'Эстиэнийэлии',
+ 'fa' => 'Пиэрсийэлии',
+ 'fi' => 'Пииннии',
+ 'fil' => 'Пилипииннии',
+ 'fr' => 'Пырансуустуу',
+ 'hu' => 'Бэҥгиэрдии',
+ 'hy' => 'Эрмээннии',
+ 'it' => 'Ытаалыйалыы',
+ 'ja' => 'Дьоппуоннуу',
+ 'ka' => 'Гурусууннуу',
+ 'kk' => 'Хаһаахтыы',
+ 'ko' => 'Кэриэйдии',
+ 'ky' => 'Кыргыстыы',
+ 'la' => 'Латыынныы',
+ 'mn' => 'Моҕуоллуу',
+ 'ne' => 'Ньыпааллыы',
+ 'pa' => 'Пандьаабтыы',
+ 'pt' => 'Португааллыы',
+ 'ro' => 'Румыынныы',
+ 'ru' => 'Нууччалыы',
+ 'sah' => 'саха тыла',
+ 'sk' => 'Словаактыы',
+ 'sq' => 'Албаанскайдыы',
+ 'ta' => 'Тамыллыы',
+ 'te' => 'Төлүгүлүү',
+ 'tg' => 'Тадьыыктыы',
+ 'ug' => 'Уйгуурдуу',
+ 'uk' => 'Украйыыньыстыы',
+ 'uz' => 'Үзбиэктии',
+ 'zh' => 'Кытайдыы',
+ 'zu' => 'Зуулулуу',
+);
+
+$countryNames = array(
+ 'CN' => 'Кытай',
+);
+
+$timeUnits = array(
+ 'day-future-other' => '{0} күнүнэн',
+ 'day-other' => '{0} күн',
+ 'day-past-other' => '{0} күн ынараа өттүгэр',
+ 'hour-future-other' => '{0} чааһынан',
+ 'hour-other' => '{0} чаас',
+ 'hour-past-other' => '{0} чаас ынараа өттүгэр',
+ 'minute-future-other' => '{0} мүнүүтэннэн',
+ 'minute-other' => '{0} мүнүүтэ',
+ 'minute-past-other' => '{0} мүнүүтэ ынараа өттүгэр',
+ 'month-future-other' => '{0} ыйынан',
+ 'month-other' => '{0} ый',
+ 'month-past-other' => '{0} ый ынараа өттүгэр',
+ 'second-future-other' => '{0} сөкүүндэннэн',
+ 'second-other' => '{0} сөкүүндэ',
+ 'second-past-other' => '{0} сөкүүндэ ынараа өттүгэр',
+ 'week-future-other' => '{0} нэдиэлэннэн',
+ 'week-other' => '{0} нэдиэлэ',
+ 'week-past-other' => '{0} нэдиэлэ ынараа өттүгэр',
+ 'year-future-other' => '{0} сылынан',
+ 'year-other' => '{0} сыл',
+ 'year-past-other' => '{0} сыл ынараа өттүгэр',
+);
diff --git a/MLEB/cldr/CldrNames/CldrNamesSe.php b/MLEB/cldr/CldrNames/CldrNamesSe.php
new file mode 100644
index 00000000..afe37701
--- /dev/null
+++ b/MLEB/cldr/CldrNames/CldrNamesSe.php
@@ -0,0 +1,452 @@
+<?php
+
+$languageNames = array(
+ 'ace' => 'acehgiella',
+ 'af' => 'afrikánsagiella',
+ 'an' => 'aragoniagiella',
+ 'ang' => 'boares eaŋgalasgiella',
+ 'ar' => 'arábagiella',
+ 'ast' => 'asturiagiella',
+ 'be' => 'vilges-ruoššagiella',
+ 'bg' => 'bulgáriagiella',
+ 'bn' => 'bengalgiella',
+ 'bo' => 'tibetagiella',
+ 'br' => 'bretonagiella',
+ 'bs' => 'bosniagiella',
+ 'ca' => 'katalánagiella',
+ 'chm' => 'marigiella',
+ 'co' => 'corsicagiella',
+ 'cs' => 'čeahkagiella',
+ 'cy' => 'kymragiella',
+ 'da' => 'dánskkagiella',
+ 'de' => 'duiskkagiella',
+ 'dv' => 'divehigiella',
+ 'dz' => 'dzongkhagiella',
+ 'el' => 'greikkagiella',
+ 'en' => 'eaŋgalsgiella',
+ 'es' => 'spánskkagiella',
+ 'et' => 'esttegiella',
+ 'fa' => 'persijagiella',
+ 'fi' => 'suomagiella',
+ 'fil' => 'filippiinnagiella',
+ 'fj' => 'fidjigiella',
+ 'fo' => 'fearagiella',
+ 'fr' => 'fránskkagiella',
+ 'fy' => 'oarjifriisagiella',
+ 'ga' => 'iirragiella',
+ 'gu' => 'gujaratagiella',
+ 'gv' => 'manksgiella',
+ 'ha' => 'haussagiella',
+ 'haw' => 'hawaiigiella',
+ 'hi' => 'hindigiella',
+ 'hr' => 'kroátiagiella',
+ 'ht' => 'haitigiella',
+ 'hu' => 'ungárgiella',
+ 'hy' => 'armeenagiella',
+ 'id' => 'indonesiagiella',
+ 'is' => 'islánddagiella',
+ 'it' => 'itáliagiella',
+ 'ja' => 'japánagiella',
+ 'jv' => 'javagiella',
+ 'ka' => 'georgiagiella',
+ 'kk' => 'kazakgiella',
+ 'km' => 'kambodiagiella',
+ 'ko' => 'koreagiella',
+ 'krl' => 'gárjilgiella',
+ 'ku' => 'kurdigiella',
+ 'kv' => 'komigiella',
+ 'kw' => 'kornagiella',
+ 'la' => 'láhtengiella',
+ 'lb' => 'luxemburggagiella',
+ 'lo' => 'laogiella',
+ 'lt' => 'liettuvagiella',
+ 'lv' => 'látviagiella',
+ 'mdf' => 'mokšagiella',
+ 'mi' => 'maorigiella',
+ 'mk' => 'makedoniagiella',
+ 'mn' => 'mongoliagiella',
+ 'mt' => 'maltagiella',
+ 'my' => 'burmagiella',
+ 'myv' => 'ersagiella',
+ 'nb' => 'girjedárogiella',
+ 'ne' => 'nepaligiella',
+ 'nl' => 'hollánddagiella',
+ 'nn' => 'ođđadárogiella',
+ 'no' => 'dárogiella',
+ 'oc' => 'oksitánagiella',
+ 'pa' => 'panjabigiella',
+ 'pl' => 'polskkagiella',
+ 'pt' => 'portugálagiella',
+ 'rm' => 'romanšgiella',
+ 'ro' => 'romániagiella',
+ 'ru' => 'ruoššagiella',
+ 'sc' => 'sardigiella',
+ 'scn' => 'sisiliagiella',
+ 'se' => 'davvisámegiella',
+ 'sel' => 'selkupagiella',
+ 'sh' => 'serbokroatiagiella',
+ 'sk' => 'slovákiagiella',
+ 'sl' => 'slovenagiella',
+ 'sm' => 'samoagiella',
+ 'sma' => 'lullisámegiella',
+ 'smj' => 'julevsámegiella',
+ 'smn' => 'anárašgiella',
+ 'sms' => 'nuortalašgiella',
+ 'sq' => 'albánagiella',
+ 'sr' => 'serbiagiella',
+ 'sv' => 'ruoŧagiella',
+ 'swb' => 'shimaorigiella',
+ 'th' => 'ŧaigiella',
+ 'tr' => 'durkagiella',
+ 'ty' => 'tahitigiella',
+ 'udm' => 'udmurtagiella',
+ 'uk' => 'ukrainagiella',
+ 'und' => 'dovdameahttun giella',
+ 'ur' => 'urdugiella',
+ 'vi' => 'vietnamgiella',
+ 'wa' => 'vallonagiella',
+ 'yue' => 'kantongiella',
+ 'zh' => 'kiinnágiella',
+ 'zh-hans' => 'álki kiinágiella',
+ 'zh-hant' => 'árbevirolaš kiinnágiella',
+);
+
+$currencyNames = array(
+ 'EUR' => 'euro',
+ 'FIM' => 'suoma márkki',
+ 'NOK' => 'norgga kruvdno',
+ 'SEK' => 'ruoŧŧa kruvdno',
+ 'XAG' => 'uns silba',
+ 'XAU' => 'uns golli',
+);
+
+$currencySymbols = array(
+ 'EUR' => '€',
+ 'NOK' => 'kr',
+ 'SEK' => 'Skr',
+);
+
+$countryNames = array(
+ 'AC' => 'Ascension',
+ 'AD' => 'Andorra',
+ 'AE' => 'Ovttastuvvan Arábaemiráhtat',
+ 'AF' => 'Afghanistan',
+ 'AG' => 'Antigua ja Barbuda',
+ 'AI' => 'Anguilla',
+ 'AL' => 'Albánia',
+ 'AM' => 'Armenia',
+ 'AO' => 'Angola',
+ 'AQ' => 'Antárktis',
+ 'AR' => 'Argentina',
+ 'AS' => 'Amerihká Samoa',
+ 'AT' => 'Nuortariika',
+ 'AU' => 'Austrália',
+ 'AW' => 'Aruba',
+ 'AX' => 'Ålánda',
+ 'AZ' => 'Aserbaižan',
+ 'BA' => 'Bosnia-Hercegovina',
+ 'BB' => 'Barbados',
+ 'BD' => 'Bangladesh',
+ 'BE' => 'Belgia',
+ 'BF' => 'Burkina Faso',
+ 'BG' => 'Bulgária',
+ 'BH' => 'Bahrain',
+ 'BI' => 'Burundi',
+ 'BJ' => 'Benin',
+ 'BL' => 'Saint Barthélemy',
+ 'BM' => 'Bermuda',
+ 'BN' => 'Brunei',
+ 'BO' => 'Bolivia',
+ 'BR' => 'Brasil',
+ 'BS' => 'Bahamas',
+ 'BT' => 'Bhutan',
+ 'BV' => 'Bouvet-sullot',
+ 'BW' => 'Botswana',
+ 'BY' => 'Vilges-Ruošša',
+ 'BZ' => 'Belize',
+ 'CA' => 'Kanáda',
+ 'CC' => 'Cocos-sullot',
+ 'CD' => 'Kongo-Kinshasa',
+ 'CF' => 'Gaska-Afrihká dásseváldi',
+ 'CG' => 'Kongo-Brazzaville',
+ 'CH' => 'Šveica',
+ 'CI' => 'Elfenbenariddu',
+ 'CK' => 'Cook-sullot',
+ 'CL' => 'Čiile',
+ 'CM' => 'Kamerun',
+ 'CN' => 'Kiinná',
+ 'CO' => 'Kolombia',
+ 'CP' => 'Clipperton-sullot',
+ 'CR' => 'Costa Rica',
+ 'CU' => 'Kuba',
+ 'CV' => 'Kap Verde',
+ 'CW' => 'Curaçao',
+ 'CX' => 'Juovllat-sullot',
+ 'CY' => 'Kypros',
+ 'CZ' => 'Čeahkka',
+ 'DE' => 'Duiska',
+ 'DG' => 'Diego Garcia',
+ 'DJ' => 'Djibouti',
+ 'DK' => 'Dánmárku',
+ 'DM' => 'Dominica',
+ 'DO' => 'Dominikána dásseváldi',
+ 'DZ' => 'Algeria',
+ 'EA' => 'Ceuta ja Melilla',
+ 'EC' => 'Ecuador',
+ 'EE' => 'Estlánda',
+ 'EG' => 'Egypta',
+ 'EH' => 'Oarje-Sahára',
+ 'ER' => 'Eritrea',
+ 'ES' => 'Spánia',
+ 'ET' => 'Etiopia',
+ 'EU' => 'Eurohpa Uniovdna',
+ 'FI' => 'Suopma',
+ 'FJ' => 'Fijisullot',
+ 'FK' => 'Falklandsullot',
+ 'FM' => 'Mikronesia',
+ 'FO' => 'Fearsullot',
+ 'FR' => 'Frankriika',
+ 'GA' => 'Gabon',
+ 'GB' => 'Stuorra-Británnia',
+ 'GD' => 'Grenada',
+ 'GE' => 'Georgia',
+ 'GF' => 'Frankriikka Guayana',
+ 'GG' => 'Guernsey',
+ 'GH' => 'Ghana',
+ 'GI' => 'Gibraltar',
+ 'GL' => 'Kalaallit Nunaat',
+ 'GM' => 'Gámbia',
+ 'GN' => 'Guinea',
+ 'GP' => 'Guadeloupe',
+ 'GQ' => 'Ekvatoriála Guinea',
+ 'GR' => 'Greika',
+ 'GS' => 'Lulli Georgia ja Lulli Sandwich-sullot',
+ 'GT' => 'Guatemala',
+ 'GU' => 'Guam',
+ 'GW' => 'Guinea-Bissau',
+ 'GY' => 'Guyana',
+ 'HK' => 'Hongkong',
+ 'HM' => 'Heard- ja McDonald-sullot',
+ 'HN' => 'Honduras',
+ 'HR' => 'Kroátia',
+ 'HT' => 'Haiti',
+ 'HU' => 'Ungár',
+ 'IC' => 'Kanáriasullot',
+ 'ID' => 'Indonesia',
+ 'IE' => 'Irlánda',
+ 'IL' => 'Israel',
+ 'IM' => 'Mann-sullot',
+ 'IN' => 'India',
+ 'IQ' => 'Irak',
+ 'IR' => 'Iran',
+ 'IS' => 'Islánda',
+ 'IT' => 'Itália',
+ 'JE' => 'Jersey',
+ 'JM' => 'Jamaica',
+ 'JO' => 'Jordánia',
+ 'JP' => 'Japána',
+ 'KE' => 'Kenia',
+ 'KG' => 'Kirgisistan',
+ 'KH' => 'Kambodža',
+ 'KI' => 'Kiribati',
+ 'KM' => 'Komoros',
+ 'KN' => 'Saint Kitts ja Nevis',
+ 'KP' => 'Davvi-Korea',
+ 'KR' => 'Mátta-Korea',
+ 'KW' => 'Kuwait',
+ 'KY' => 'Cayman-sullot',
+ 'KZ' => 'Kasakstan',
+ 'LA' => 'Laos',
+ 'LB' => 'Libanon',
+ 'LC' => 'Saint Lucia',
+ 'LI' => 'Liechtenstein',
+ 'LK' => 'Sri Lanka',
+ 'LR' => 'Liberia',
+ 'LS' => 'Lesotho',
+ 'LT' => 'Lietuva',
+ 'LU' => 'Luxembourg',
+ 'LV' => 'Látvia',
+ 'LY' => 'Libya',
+ 'MA' => 'Marokko',
+ 'MC' => 'Monaco',
+ 'MD' => 'Moldávia',
+ 'ME' => 'Montenegro',
+ 'MF' => 'Frankriikka Saint Martin',
+ 'MG' => 'Madagaskar',
+ 'MH' => 'Marshallsullot',
+ 'MK' => 'Makedonia',
+ 'ML' => 'Mali',
+ 'MM' => 'Burma',
+ 'MN' => 'Mongolia',
+ 'MO' => 'Makáo',
+ 'MP' => 'Davvi-Mariánat',
+ 'MQ' => 'Martinique',
+ 'MR' => 'Mauretánia',
+ 'MS' => 'Montserrat',
+ 'MT' => 'Málta',
+ 'MU' => 'Mauritius',
+ 'MV' => 'Malediivvat',
+ 'MW' => 'Malawi',
+ 'MX' => 'Meksiko',
+ 'MY' => 'Malesia',
+ 'MZ' => 'Mosambik',
+ 'NA' => 'Namibia',
+ 'NC' => 'Ođđa-Kaledonia',
+ 'NE' => 'Niger',
+ 'NF' => 'Norfolksullot',
+ 'NG' => 'Nigeria',
+ 'NI' => 'Nicaragua',
+ 'NL' => 'Vuolleeatnamat',
+ 'NO' => 'Norga',
+ 'NP' => 'Nepal',
+ 'NR' => 'Nauru',
+ 'NU' => 'Niue',
+ 'NZ' => 'Ođđa-Selánda',
+ 'OM' => 'Oman',
+ 'PA' => 'Panama',
+ 'PE' => 'Peru',
+ 'PF' => 'Frankriikka Polynesia',
+ 'PG' => 'Papua-Ođđa-Guinea',
+ 'PH' => 'Filippiinnat',
+ 'PK' => 'Pakistan',
+ 'PL' => 'Polen',
+ 'PM' => 'Saint Pierre ja Miquelon',
+ 'PN' => 'Pitcairn',
+ 'PR' => 'Puerto Rico',
+ 'PS' => 'Palestina',
+ 'PT' => 'Portugála',
+ 'PW' => 'Palau',
+ 'PY' => 'Paraguay',
+ 'QA' => 'Qatar',
+ 'RE' => 'Réunion',
+ 'RO' => 'Románia',
+ 'RS' => 'Serbia',
+ 'RU' => 'Ruošša',
+ 'RW' => 'Rwanda',
+ 'SA' => 'Saudi-Arábia',
+ 'SB' => 'Salomon-sullot',
+ 'SC' => 'Seychellsullot',
+ 'SD' => 'Davvisudan',
+ 'SE' => 'Ruoŧŧa',
+ 'SG' => 'Singapore',
+ 'SH' => 'Saint Helena',
+ 'SI' => 'Slovenia',
+ 'SJ' => 'Svalbárda ja Jan Mayen',
+ 'SK' => 'Slovákia',
+ 'SL' => 'Sierra Leone',
+ 'SM' => 'San Marino',
+ 'SN' => 'Senegal',
+ 'SO' => 'Somália',
+ 'SR' => 'Surinam',
+ 'SS' => 'Máttasudan',
+ 'ST' => 'São Tomé ja Príncipe',
+ 'SV' => 'El Salvador',
+ 'SX' => 'Vuolleeatnamat Saint Martin',
+ 'SY' => 'Syria',
+ 'SZ' => 'Svazieana',
+ 'TA' => 'Tristan da Cunha',
+ 'TC' => 'Turks ja Caicos-sullot',
+ 'TD' => 'Tčad',
+ 'TG' => 'Togo',
+ 'TH' => 'Thaieana',
+ 'TJ' => 'Tažikistan',
+ 'TK' => 'Tokelau',
+ 'TL' => 'Nuorta-Timor',
+ 'TM' => 'Turkmenistan',
+ 'TN' => 'Tunisia',
+ 'TO' => 'Tonga',
+ 'TR' => 'Durka',
+ 'TT' => 'Trinidad ja Tobago',
+ 'TV' => 'Tuvalu',
+ 'TW' => 'Taiwan',
+ 'TZ' => 'Tanzánia',
+ 'UA' => 'Ukraina',
+ 'UG' => 'Uganda',
+ 'US' => 'USA',
+ 'UY' => 'Uruguay',
+ 'UZ' => 'Usbekistan',
+ 'VA' => 'Vatikána',
+ 'VC' => 'Saint Vincent ja Grenadine',
+ 'VE' => 'Venezuela',
+ 'VG' => 'Brittania Virgin-sullot',
+ 'VI' => 'AOS Virgin-sullot',
+ 'VN' => 'Vietnam',
+ 'VU' => 'Vanuatu',
+ 'WF' => 'Wallis ja Futuna',
+ 'WS' => 'Samoa',
+ 'XK' => 'Kosovo',
+ 'YE' => 'Jemen',
+ 'YT' => 'Mayotte',
+ 'ZA' => 'Mátta-Afrihká',
+ 'ZM' => 'Zambia',
+ 'ZW' => 'Zimbabwe',
+);
+
+$timeUnits = array(
+ 'day-future-one' => '{0} jándor maŋŋilit',
+ 'day-future-other' => '{0} jándora maŋŋilit',
+ 'day-future-two' => '{0} jándor amaŋŋilit',
+ 'day-one' => '{0} jándor',
+ 'day-other' => '{0} jándora',
+ 'day-past-one' => '{0} jándor árat',
+ 'day-past-other' => '{0} jándora árat',
+ 'day-past-two' => '{0} jándora árat',
+ 'day-two' => '{0} jándora',
+ 'hour-future-one' => '{0} diibmu maŋŋilit',
+ 'hour-future-other' => '{0} diibmur maŋŋilit',
+ 'hour-future-two' => '{0} diibmur maŋŋilit',
+ 'hour-one' => '{0} diibmu',
+ 'hour-other' => '{0} diibmur',
+ 'hour-past-one' => '{0} diibmu árat',
+ 'hour-past-other' => '{0} diibmur árat',
+ 'hour-past-two' => '{0} diibmur árat',
+ 'hour-two' => '{0} diimmur',
+ 'millisecond-one' => '{0} millisekunda',
+ 'millisecond-other' => '{0} millisekundda',
+ 'millisecond-two' => '{0} millisekundda',
+ 'minute-future-one' => '{0} minuhta maŋŋilit',
+ 'minute-future-other' => '{0} minuhtta maŋŋilit',
+ 'minute-future-two' => '{0} minuhtta maŋŋilit',
+ 'minute-one' => '{0} minuhta',
+ 'minute-other' => '{0} minuhtta',
+ 'minute-past-one' => '{0} minuhta árat',
+ 'minute-past-other' => '{0} minuhtta árat',
+ 'minute-past-two' => '{0} minuhtta árat',
+ 'minute-two' => '{0} minuhtta',
+ 'month-future-one' => '{0} mánotbadji maŋŋilit',
+ 'month-future-other' => '{0} mánotbadji maŋŋilit',
+ 'month-future-two' => '{0} mánotbadji maŋŋilit',
+ 'month-one' => '{0} mánotbadji',
+ 'month-other' => '{0} mánotbadji',
+ 'month-past-one' => '{0} mánotbadji árat',
+ 'month-past-other' => '{0} mánotbadji árat',
+ 'month-past-two' => '{0} mánotbadji árat',
+ 'month-two' => '{0} mánotbaji',
+ 'second-future-one' => '{0} sekunda maŋŋilit',
+ 'second-future-other' => '{0} sekundda maŋŋilit',
+ 'second-future-two' => '{0} sekundda maŋŋilit',
+ 'second-one' => '{0} sekunda',
+ 'second-other' => '{0} sekundda',
+ 'second-past-one' => '{0} sekunda árat',
+ 'second-past-other' => '{0} sekundda árat',
+ 'second-past-two' => '{0} sekundda árat',
+ 'second-two' => '{0} sekundda',
+ 'week-future-one' => '{0} vahku maŋŋilit',
+ 'week-future-other' => '{0} vahkku maŋŋilit',
+ 'week-future-two' => '{0} vahkku maŋŋilit',
+ 'week-one' => '{0} váhku',
+ 'week-other' => '{0} váhkku',
+ 'week-past-one' => '{0} vahku árat',
+ 'week-past-other' => '{0} vahkku árat',
+ 'week-past-two' => '{0} vahkku árat',
+ 'week-two' => '{0} váhkku',
+ 'year-future-one' => '{0} jahki maŋŋilit',
+ 'year-future-other' => '{0} jahkki maŋŋilit',
+ 'year-future-two' => '{0} jahkki maŋŋilit',
+ 'year-one' => '{0} jahki',
+ 'year-other' => '{0} jahkki',
+ 'year-past-one' => '{0} jahki árat',
+ 'year-past-other' => '{0} jahkki árat',
+ 'year-past-two' => '{0} jahkki árat',
+ 'year-two' => '{0} jahkki',
+);
diff --git a/MLEB/cldr/CldrNames/CldrNamesSg.php b/MLEB/cldr/CldrNames/CldrNamesSg.php
new file mode 100644
index 00000000..c0ffe815
--- /dev/null
+++ b/MLEB/cldr/CldrNames/CldrNamesSg.php
@@ -0,0 +1,336 @@
+<?php
+
+$languageNames = array(
+ 'ak' => 'Akâan',
+ 'am' => 'Amarîki',
+ 'ar' => 'Arâbo',
+ 'be' => 'Bielörûsi',
+ 'bg' => 'Bulugäri',
+ 'bn' => 'Bengäli',
+ 'cs' => 'Tyêki',
+ 'de' => 'Zâmani',
+ 'el' => 'Gerêki',
+ 'en' => 'Anglëe',
+ 'es' => 'Espanyöl',
+ 'fa' => 'Farsî',
+ 'fr' => 'Farânzi',
+ 'ha' => 'Haüsä',
+ 'hi' => 'Hîndi',
+ 'hu' => 'Hongruäa',
+ 'id' => 'Enndonezïi',
+ 'ig' => 'Ïgbö',
+ 'it' => 'Ênnde',
+ 'ja' => 'Zaponëe',
+ 'jv' => 'Zavanëe',
+ 'km' => 'Kmêre',
+ 'ko' => 'Koreyëen',
+ 'ms' => 'Malëe',
+ 'my' => 'Miamära, Birimäni',
+ 'ne' => 'Nepalëe',
+ 'nl' => 'Holandëe',
+ 'pa' => 'Penzäbï',
+ 'pl' => 'Polonëe',
+ 'pt' => 'Portugëe, Pûra',
+ 'ro' => 'Rumëen',
+ 'ru' => 'Rûsi',
+ 'rw' => 'Ruandäa',
+ 'sg' => 'Sängö',
+ 'so' => 'Somalïi',
+ 'sv' => 'Sueduäa',
+ 'ta' => 'Tämûli',
+ 'th' => 'Thâi',
+ 'tr' => 'Tûrûku',
+ 'uk' => 'Ukrêni',
+ 'ur' => 'Ûrdu',
+ 'vi' => 'Vietnäm',
+ 'yo' => 'Yoruba',
+ 'zh' => 'Shinuäa',
+ 'zu' => 'Zûlu',
+);
+
+$currencyNames = array(
+ 'AED' => 'dirâm tî âEmirâti tî Arâbo Ôko',
+ 'AOA' => 'kwânza tî Angoläa',
+ 'AUD' => 'dolära tî Ostralïi',
+ 'BHD' => 'dolùara tî Bahrâina',
+ 'BIF' => 'farânga tî Burundïi',
+ 'BWP' => 'pûla tî Botswana',
+ 'CAD' => 'dolära tî kanadäa',
+ 'CDF' => 'farânga tî Kongöo',
+ 'CHF' => 'farânga tî Sûîsi',
+ 'CNY' => 'yuan renminbi tî Shîni',
+ 'CVE' => 'eskûêdo tî Kâpo-Vêre',
+ 'DJF' => 'farânga tî Dibutïi',
+ 'DZD' => 'dinäri tî Alzerïi',
+ 'EGP' => 'pôndo tî Kâmitâ',
+ 'ERN' => 'nakafa tî Eritrëe',
+ 'ETB' => 'bir tî Etiopïi',
+ 'EUR' => 'zoröo',
+ 'GBP' => 'pôndo tî Anglëe',
+ 'GHC' => 'sêdi tî Ganäa',
+ 'GMD' => 'dalasi tî gambïi',
+ 'GNS' => 'sili tî Ginëe',
+ 'INR' => 'rupïi tî Ênnde',
+ 'JPY' => 'yêni tî Zapön',
+ 'KES' => 'shilîngi tî Kenyäa',
+ 'KMF' => 'farânga tî Kömôro',
+ 'LRD' => 'dolära tî Liberïa',
+ 'LSL' => 'loti tî Lesôtho',
+ 'LYD' => 'dinäar tî Libïi',
+ 'MAD' => 'dirâm tî Marôko',
+ 'MGA' => 'ariâri tî Madagasikära',
+ 'MRO' => 'ugîya tî Moritanïi',
+ 'MUR' => 'rupïi tî Mörîsi',
+ 'MWK' => 'kwâtia tî Malawïi',
+ 'MZM' => 'metikala tî Mozambîka',
+ 'NAD' => 'dolära tî Namibïi',
+ 'NGN' => 'nâîra tî Nizerïa',
+ 'RWF' => 'farânga tî Ruandäa',
+ 'SAR' => 'riâli tî Saûdi Arabïi',
+ 'SCR' => 'rupïi tî Sëyshêle',
+ 'SDG' => 'pôndo tî Sudäan',
+ 'SHP' => 'pôndo tî Zûâ Sênt-Helêna',
+ 'SLL' => 'leône tî Sierâ-Leône',
+ 'SOS' => 'shilîngi tî Somalïi',
+ 'STD' => 'dôbra tî Sâô Tomë na Prinsîpe',
+ 'SZL' => 'lilangùeni tî Swazïlânde',
+ 'TND' => 'dinära tî Tunizïi',
+ 'TZS' => 'shilîngi tî Tanzanïi',
+ 'UGX' => 'shilîngi tî Ugandäa',
+ 'USD' => 'dol$ara ttî äLetäa-Ôko tî Amerîka',
+ 'XAF' => 'farânga CFA (BEAC)',
+ 'XOF' => 'farânga CFA (BCEAO)',
+ 'ZAR' => 'rânde tî Mbongo-Afrîka',
+ 'ZMK' => 'kwâtia tî Zambïi (1968–2012)',
+ 'ZMW' => 'kwâtia tî Zambïi',
+ 'ZWD' => 'dolära tî Zimbäbwe',
+);
+
+$countryNames = array(
+ 'AD' => 'Andôro',
+ 'AE' => 'Arâbo Emirâti Ôko',
+ 'AF' => 'Faganïta, Afganïstäan',
+ 'AG' => 'Antîgua na Barbûda',
+ 'AI' => 'Angûîla',
+ 'AL' => 'Albanïi',
+ 'AM' => 'Armenïi',
+ 'AN' => 'Antîyi tî Holânde',
+ 'AO' => 'Angoläa',
+ 'AR' => 'Arzantîna',
+ 'AS' => 'Samöa tî Amerîka',
+ 'AT' => 'Otrîsi',
+ 'AU' => 'Ostralïi, Sotralïi',
+ 'AW' => 'Arûba',
+ 'AZ' => 'Zerebaidyäan, Azerbaidyäan,',
+ 'BA' => 'Bosnïi na Herzegovînni',
+ 'BB' => 'Barabâda',
+ 'BD' => 'Bengladêshi',
+ 'BE' => 'Bêleze, Belezîki',
+ 'BF' => 'Burkina Faso',
+ 'BG' => 'Bulugarïi',
+ 'BH' => 'Bahrâina',
+ 'BI' => 'Burundïi',
+ 'BJ' => 'Benëen',
+ 'BM' => 'Beremûda',
+ 'BN' => 'Brunêi',
+ 'BO' => 'Bolivïi',
+ 'BR' => 'Brezîli',
+ 'BS' => 'Bahâmasa',
+ 'BT' => 'Butäan',
+ 'BW' => 'Botswana',
+ 'BY' => 'Belarüsi',
+ 'BZ' => 'Belîzi',
+ 'CA' => 'Kanadäa',
+ 'CD' => 'Ködörösêse tî Ngunuhalëzo tî kongö',
+ 'CF' => 'Ködörösêse tî Bêafrîka',
+ 'CG' => 'Kongö',
+ 'CH' => 'Sûîsi',
+ 'CI' => 'Kôdivüära',
+ 'CK' => 'âzûâ Kûku',
+ 'CL' => 'Shilïi',
+ 'CM' => 'Kamerûne',
+ 'CN' => 'Shîna',
+ 'CO' => 'Kolombïi',
+ 'CR' => 'Kôsta Rîka',
+ 'CU' => 'Kubäa',
+ 'CV' => 'Azûâ tî Kâpo-Vêre',
+ 'CY' => 'Sîpri',
+ 'CZ' => 'Ködörösêse tî Tyêki',
+ 'DE' => 'Zâmani',
+ 'DJ' => 'Dibutùii',
+ 'DK' => 'Danemêrke',
+ 'DM' => 'Dömïnîka',
+ 'DO' => 'Ködörösêse tî Dominîka',
+ 'DZ' => 'Alzerïi',
+ 'EC' => 'Ekuatëre',
+ 'EE' => 'Estonïi',
+ 'EG' => 'Kâmitâ',
+ 'ER' => 'Eritrëe',
+ 'ES' => 'Espânye',
+ 'ET' => 'Etiopïi',
+ 'FI' => 'Fëlânde',
+ 'FJ' => 'Fidyïi',
+ 'FK' => 'Âzûâ tî Mälüîni',
+ 'FM' => 'Mikronezïi',
+ 'FR' => 'Farânzi',
+ 'GA' => 'Gaböon',
+ 'GB' => 'Ködörögbïä--Ôko',
+ 'GD' => 'Grenâda',
+ 'GE' => 'Zorzïi',
+ 'GF' => 'Güyâni tî farânzi',
+ 'GH' => 'Ganäa',
+ 'GI' => 'Zibraltära, Zibaratära',
+ 'GL' => 'Gorolânde',
+ 'GM' => 'Gambïi',
+ 'GN' => 'Ginëe',
+ 'GP' => 'Guadelûpu',
+ 'GQ' => 'Ginëe tî Ekuatëre',
+ 'GR' => 'Gerêsi',
+ 'GT' => 'Guatêmälä',
+ 'GU' => 'Guâm',
+ 'GW' => 'Gninëe-Bisau',
+ 'GY' => 'Gayâna',
+ 'HN' => 'Honduräsi',
+ 'HR' => 'Kroasïi',
+ 'HT' => 'Haitïi',
+ 'HU' => 'Hongirùii',
+ 'ID' => 'Ênndonezïi',
+ 'IE' => 'Irlânde',
+ 'IL' => 'Israëli',
+ 'IN' => 'Ênnde',
+ 'IO' => 'Sêse tî Anglëe na Ngûyämä tî Ênnde',
+ 'IQ' => 'Irâki',
+ 'IR' => 'Iräan',
+ 'IS' => 'Islânde',
+ 'IT' => 'Italùii',
+ 'JM' => 'Zamaîka',
+ 'JO' => 'Zordanïi',
+ 'JP' => 'Zapöon',
+ 'KE' => 'Kenyäa',
+ 'KG' => 'Kirigizitùaan',
+ 'KH' => 'Kämbôzi',
+ 'KI' => 'Kiribati',
+ 'KM' => 'Kömôro',
+ 'KN' => 'Sên-Krïstôfo-na-Nevîsi',
+ 'KP' => 'Korëe tî Banga',
+ 'KR' => 'Korëe tî Mbongo',
+ 'KW' => 'Köwêti',
+ 'KY' => 'Âzûâ Ngundë, Kaimäni',
+ 'KZ' => 'Kazakisitäan',
+ 'LA' => 'Lùaôsi',
+ 'LB' => 'Libùaan',
+ 'LC' => 'Sênt-Lisïi',
+ 'LI' => 'Liechtenstein,',
+ 'LK' => 'Sirî-Lanka',
+ 'LR' => 'Liberïa',
+ 'LS' => 'Lesôtho',
+ 'LT' => 'Lituanïi',
+ 'LU' => 'Lugzambûru',
+ 'LV' => 'Letonùii',
+ 'LY' => 'Libïi',
+ 'MA' => 'Marôko',
+ 'MC' => 'Monaköo',
+ 'MD' => 'Moldavùii',
+ 'MG' => 'Madagaskära',
+ 'MH' => 'Âzûâ Märshâl',
+ 'MK' => 'Maseduäni',
+ 'ML' => 'Malïi',
+ 'MM' => 'Myämâra',
+ 'MN' => 'Mongolïi',
+ 'MP' => 'Âzûâ Märïâni tî Banga',
+ 'MQ' => 'Märtïnîki',
+ 'MR' => 'Moritanïi',
+ 'MS' => 'Monserâte',
+ 'MT' => 'Mâlta',
+ 'MU' => 'Mörîsi',
+ 'MV' => 'Maldîva',
+ 'MW' => 'Malawïi',
+ 'MX' => 'Mekisîki',
+ 'MY' => 'Malezïi',
+ 'MZ' => 'Mözämbîka',
+ 'NA' => 'Namibùii',
+ 'NC' => 'Finî Kaledonïi',
+ 'NE' => 'Nizëre',
+ 'NF' => 'Zûâ Nôrfôlko',
+ 'NG' => 'Nizerïa',
+ 'NI' => 'Nikaragua',
+ 'NL' => 'Holände',
+ 'NO' => 'Nörvêzi',
+ 'NP' => 'Nëpâli',
+ 'NR' => 'Nauru',
+ 'NU' => 'Niue',
+ 'NZ' => 'Finî Zelânde',
+ 'OM' => 'Omâni',
+ 'PA' => 'Panama',
+ 'PE' => 'Perüu',
+ 'PF' => 'Polinezïi tî farânzi',
+ 'PG' => 'Papû Finî Ginëe, Papuazïi',
+ 'PH' => 'Filipîni',
+ 'PK' => 'Pakistäan',
+ 'PL' => 'Pölôni',
+ 'PM' => 'Sên-Pyêre na Mikelöon',
+ 'PN' => 'Pitikêrni',
+ 'PR' => 'Porto Rîko',
+ 'PS' => 'Sêse tî Palestîni',
+ 'PT' => 'Pörtugäle, Ködörö Pûra',
+ 'PW' => 'Palau',
+ 'PY' => 'Paraguëe',
+ 'QA' => 'Katära',
+ 'RE' => 'Reinïon',
+ 'RO' => 'Rumanïi',
+ 'RU' => 'Rusïi',
+ 'RW' => 'Ruandäa',
+ 'SA' => 'Saûdi Arabïi',
+ 'SB' => 'Zûâ Salomöon',
+ 'SC' => 'Sëyshêle',
+ 'SD' => 'Sudäan',
+ 'SE' => 'Suêde',
+ 'SG' => 'Sïngäpûru',
+ 'SH' => 'Sênt-Helêna',
+ 'SI' => 'Solovenïi',
+ 'SK' => 'Solovakïi',
+ 'SL' => 'Sierä-Leône',
+ 'SM' => 'Sên-Marëen',
+ 'SN' => 'Senegäle',
+ 'SO' => 'Somalïi',
+ 'SR' => 'Surinäm',
+ 'SS' => 'Sudäan-Mbongo',
+ 'ST' => 'Sâô Tömê na Prinsîpe',
+ 'SV' => 'Salvadöro',
+ 'SY' => 'Sirïi',
+ 'SZ' => 'Swäzïlânde',
+ 'TC' => 'Âzûâ Turku na Kaîki',
+ 'TD' => 'Tyâde',
+ 'TG' => 'Togö',
+ 'TH' => 'Tailânde',
+ 'TJ' => 'Taazikiistäan',
+ 'TK' => 'Tokelau',
+ 'TL' => 'Timôro tî Tö',
+ 'TM' => 'Turkumenistäan',
+ 'TN' => 'Tunizïi',
+ 'TO' => 'Tonga',
+ 'TR' => 'Turukïi',
+ 'TT' => 'Trinitùee na Tobagö',
+ 'TV' => 'Tüvalü',
+ 'TW' => 'Tâiwâni',
+ 'TZ' => 'Tanzanïi',
+ 'UA' => 'Ukrêni',
+ 'UG' => 'Ugandäa',
+ 'US' => 'ÂLeaa-Ôko tî Amerika',
+ 'UY' => 'Uruguëe',
+ 'UZ' => 'Uzbekistäan',
+ 'VA' => 'Letëe tî Vatikäan',
+ 'VC' => 'Sên-Vensäan na âGrenadîni',
+ 'VE' => 'Venezueläa',
+ 'VG' => 'Âzôâ Viîrîggo tî Anglëe',
+ 'VI' => 'Âzûâ Virîgo tî Amerîka',
+ 'VN' => 'Vietnäm',
+ 'VU' => 'Vanuatü',
+ 'WF' => 'Walîsi na Futuna',
+ 'WS' => 'Samoäa',
+ 'YE' => 'Yëmêni',
+ 'YT' => 'Mäyôte',
+ 'ZA' => 'Mbongo-Afrîka',
+ 'ZM' => 'Zambïi',
+ 'ZW' => 'Zimbäbwe',
+);
diff --git a/MLEB/cldr/CldrNames/CldrNamesShi.php b/MLEB/cldr/CldrNames/CldrNamesShi.php
new file mode 100644
index 00000000..0c5604a5
--- /dev/null
+++ b/MLEB/cldr/CldrNames/CldrNamesShi.php
@@ -0,0 +1,336 @@
+<?php
+
+$languageNames = array(
+ 'ak' => 'ⵜⴰⴽⴰⵏⵜ',
+ 'am' => 'ⵜⴰⵎⵀⴰⵔⵉⵜ',
+ 'ar' => 'ⵜⴰⵄⵔⴰⴱⵜ',
+ 'be' => 'ⵜⴰⴱⵉⵍⴰⵔⵓⵙⵜ',
+ 'bg' => 'ⵜⴰⴱⵍⵖⴰⵔⵉⵜ',
+ 'bn' => 'ⵜⴰⴱⵏⵖⴰⵍⵉⵜ',
+ 'cs' => 'ⵜⴰⵜⵛⵉⴽⵉⵜ',
+ 'de' => 'ⵜⴰⵍⵉⵎⴰⵏⵜ',
+ 'el' => 'ⵜⴰⴳⵔⵉⴳⵉⵜ',
+ 'en' => 'ⵜⴰⵏⴳⵍⵉⵣⵜ',
+ 'es' => 'ⵜⴰⵙⴱⵏⵢⵓⵍⵉⵜ',
+ 'fa' => 'ⵜⴰⴼⵓⵔⵙⵉⵜ',
+ 'fr' => 'ⵜⴰⴼⵔⴰⵏⵙⵉⵙⵜ',
+ 'ha' => 'ⵜⴰⵀⴰⵡⵙⴰⵜ',
+ 'hi' => 'ⵜⴰⵀⵉⵏⴷⵉⵜ',
+ 'hu' => 'ⵜⴰⵀⵏⵖⴰⵔⵉⵜ',
+ 'id' => 'ⵜⴰⵏⴷⵓⵏⵉⵙⵉⵜ',
+ 'ig' => 'ⵜⵉⴳⴱⵓⵜ',
+ 'it' => 'ⵜⴰⵟⴰⵍⵢⴰⵏⵜ',
+ 'ja' => 'ⵜⴰⵊⴰⴱⴱⵓⵏⵉⵜ',
+ 'jv' => 'ⵜⴰⵊⴰⴼⴰⵏⵉⵜ',
+ 'km' => 'ⵜⴰⵅⵎⵉⵔⵜ',
+ 'ko' => 'ⵜⴰⴽⵓⵔⵉⵜ',
+ 'ms' => 'ⵜⴰⵎⴰⵍⴰⵡⵉⵜ',
+ 'my' => 'ⵜⴰⴱⵉⵔⵎⴰⵏⵉⵜ',
+ 'ne' => 'ⵜⴰⵏⵉⴱⴰⵍⵉⵜ',
+ 'nl' => 'ⵜⴰⵀⵓⵍⴰⵏⴷⵉⵜ',
+ 'pa' => 'ⵜⴰⴱⵏⵊⴰⴱⵉⵜ',
+ 'pl' => 'ⵜⴰⴱⵓⵍⵓⵏⵉⵜ',
+ 'pt' => 'ⵜⴰⴱⵕⵟⵇⵉⵣⵜ',
+ 'ro' => 'ⵜⴰⵔⵓⵎⴰⵏⵉⵜ',
+ 'ru' => 'ⵜⴰⵔⵓⵙⵉⵜ',
+ 'rw' => 'ⵜⴰⵔⵓⵡⴰⵏⴷⵉⵜ',
+ 'shi' => 'ⵜⴰⵎⴰⵣⵉⵖⵜ',
+ 'so' => 'ⵜⴰⵙⵓⵎⴰⵍⵉⵜ',
+ 'sv' => 'ⵜⴰⵙⵡⵉⴷⵉⵜ',
+ 'ta' => 'ⵜⴰⵜⴰⵎⵉⵍⵜ',
+ 'th' => 'ⵜⴰⵜⴰⵢⵍⴰⵏⴷⵉⵜ',
+ 'tr' => 'ⵜⴰⵜⵓⵔⴽⵉⵜ',
+ 'uk' => 'ⵜⵓⴽⵔⴰⵏⵉⵜ',
+ 'ur' => 'ⵜⵓⵔⴷⵓⵜ',
+ 'vi' => 'ⵜⴰⴼⵉⵜⵏⴰⵎⵉⵜ',
+ 'yo' => 'ⵜⴰⵢⵔⵓⴱⴰⵜ',
+ 'zh' => 'ⵜⴰⵛⵉⵏⵡⵉⵜ',
+ 'zu' => 'ⵜⴰⵣⵓⵍⵓⵜ',
+);
+
+$currencyNames = array(
+ 'AED' => 'ⴰⴷⵔⵉⵎ ⵏ ⵍⵉⵎⴰⵔⴰⵜ',
+ 'AOA' => 'ⴽⵡⴰⵏⵣⴰ ⵏ ⴰⵏⴳⵓⵍⴰ',
+ 'AUD' => 'ⴰⴷⵓⵍⴰⵔ ⵏ ⵓⵙⵜⵔⴰⵍⵢⴰ',
+ 'BHD' => 'ⴰⴷⵉⵏⴰⵔ ⵏ ⴱⵃⵔⴰⵢⵏ',
+ 'BIF' => 'ⴼⵔⴰⵏⴽ ⵏ ⴱⵓⵔⵓⵏⴷⵉ',
+ 'BWP' => 'ⴰⴱⵓⵍⴰ ⵏ ⴱⵓⵜⵙⵡⴰⵏⴰ',
+ 'CAD' => 'ⴰⴷⵓⵍⴰⵔ ⵏ ⴽⴰⵏⴰⴷⴰ',
+ 'CDF' => 'ⴼⵔⴰⵏⴽ ⵏ ⴽⵓⵏⴳⵓ',
+ 'CHF' => 'ⴰⴼⵔⴰⵏⴽ ⵏ ⵙⵡⵉⵙⵔⴰ',
+ 'CNY' => 'ⴰⵢⴰⵏ ⵏ ⵛⵛⵉⵏⵡⴰ',
+ 'CVE' => 'ⵉⵙⴽⵓⴷⵓ ⵏ ⴽⴰⴱⴱⵉⵔⴷⵉ',
+ 'DJF' => 'ⴼⵔⴰⵏⴽ ⵏ ⴷⵊⵉⴱⵓⵜⵉ',
+ 'DZD' => 'ⴰⴷⵉⵏⴰⵔ ⵏ ⴷⵣⴰⵢⵔ',
+ 'EGP' => 'ⴰⵊⵏⵉⵀ ⵏ ⵎⵉⵚⵕ',
+ 'ERN' => 'ⵏⴰⴼⴽⴰ ⵏ ⵉⵔⵉⵜⵉⵔⵢⴰ',
+ 'ETB' => 'ⴱⵉⵔ ⵏ ⵉⵜⵢⵓⴱⵢⴰ',
+ 'EUR' => 'ⵓⵔⵓ',
+ 'GBP' => 'ⴰⵊⵏⵉⵀ ⴰⵙⵜⵔⵍⵉⵏⵉ ⵏ ⵏⵏⴳⵍⵉⵣ',
+ 'GHC' => 'ⵙⵉⴷⵉ ⵏ ⵖⴰⵏⴰ',
+ 'GMD' => 'ⴷⴰⵍⴰⵙⵉ ⵏ ⴳⴰⵎⴱⵢⴰ',
+ 'GNS' => 'ⴼⵔⴰⵏⴽ ⵏ ⵖⵉⵏⵢⴰ',
+ 'INR' => 'ⴰⵔⵓⴱⵉ ⵏ ⵍⵀⵉⵏⴷ',
+ 'JPY' => 'ⴰⵢⴰⵏ ⵏ ⵍⵢⴰⴱⴰⵏ',
+ 'KES' => 'ⴰⵛⵉⵍⵉⵏ ⵏ ⴽⵉⵏⵢⴰ',
+ 'KMF' => 'ⴼⵔⴰⵏⴽ ⵏ ⵇⵓⵎⵓⵕ',
+ 'LRD' => 'ⴰⴷⵓⵍⴰⵔ ⵏ ⵍⵉⴱⵉⵔⵢⴰ',
+ 'LSL' => 'ⵍⵓⵜⵉ ⵏ ⵍⵉⵚⵓⵟⵓ',
+ 'LYD' => 'ⴰⴷⵉⵏⴰⵔ ⵏ ⵍⵉⴱⵢⴰ',
+ 'MAD' => 'ⴰⴷⵔⵉⵎ ⵏ ⵍⵎⵖⵔⵉⴱ',
+ 'MGA' => 'ⴼⵔⴰⵏⴽ ⵏ ⵎⴰⴷⴰⵖⴰⵛⵇⴰⵔ',
+ 'MRO' => 'ⵓⵇⵉⵢⵢⴰ ⵏ ⵎⵓⵕⵉⵟⴰⵏⵢⴰ',
+ 'MUR' => 'ⴰⵔⵓⴱⵉ ⵏ ⵎⵓⵔⵉⵙ',
+ 'MWK' => 'ⴽⵡⴰⵛⴰ ⵏ ⵎⴰⵍⴰⵡⵉ',
+ 'MZM' => 'ⴰⵎⵉⵜⵉⴽⵍ ⵏ ⵎⵓⵣⵏⴱⵉⵇ',
+ 'NAD' => 'ⴰⴷⵓⵍⴰⵔ ⵏ ⵏⴰⵎⵉⴱⵢⴰ',
+ 'NGN' => 'ⵏⴰⵢⵔⴰ ⵏ ⵏⵉⵊⵉⵔⵢⴰ',
+ 'RWF' => 'ⴰⴼⵔⴰⵏⴽ ⵏ ⵔⵡⴰⵏⴷⴰ',
+ 'SAR' => 'ⴰⵔⵢⴰⵍ ⵏ ⵙⵙⴰⵄⵓⴷⵉⵢⴰ',
+ 'SCR' => 'ⴰⵔⵓⴱⵉ ⵏ ⵙⵙⵉⵛⵉⵍ',
+ 'SDG' => 'ⴰⴷⵉⵏⴰⵔ ⵏ ⵙⵙⵓⴷⴰⵏ',
+ 'SDP' => 'ⴰⵊⵏⵉⵀ ⵏ ⵙⵙⵓⴷⴰⵏ',
+ 'SHP' => 'ⴰⵊⵏⵉⵀ ⵏ ⵙⴰⵏⵜⵉⵍⵉⵏ',
+ 'SLL' => 'ⵍⵉⵢⵓⵏ',
+ 'SOS' => 'ⴰⵛⵉⵍⵉⵏ ⵏ ⵚⵚⵓⵎⴰⵍ',
+ 'STD' => 'ⴰⴷⵓⴱⵔⴰ ⵏ ⵙⴰⵏⵟⵓⵎⵉ',
+ 'SZL' => 'ⵍⵉⵍⴰⵏⵊⵉⵏⵉ',
+ 'TND' => 'ⴰⴷⵉⵏⴰⵔ ⵏ ⵜⵓⵏⵙ',
+ 'TZS' => 'ⴰⵛⵉⵍⵉⵏ ⵏ ⵟⴰⵏⵥⴰⵏⵢⴰ',
+ 'UGX' => 'ⴰⵛⵉⵍⵉⵏ ⵏ ⵓⵖⴰⵏⴷⴰ',
+ 'USD' => 'ⴰⴷⵓⵍⴰⵔ ⵏ ⵉⵡⵓⵏⴰⴽ ⵉⵎⵓⵏⵏ',
+ 'XAF' => 'ⴼⵔⴰⵏⴽ ⵚⵉⴼⴰ',
+ 'XOF' => 'ⴼⵔⴰⵏⴽ ⵚⵉⴼⴰ ⴱⵉⵙⴰⵡ',
+ 'ZAR' => 'ⴰⵔⴰⵏⴷ ⵏ ⴰⴼⵔⵉⵇⵢⴰ ⵏ ⵉⴼⴼⵓⵙ',
+ 'ZMK' => 'ⴰⴽⵡⴰⵛⴰ ⵏ ⵣⴰⵎⴱⵢⴰ (1968–2012)',
+ 'ZMW' => 'ⴰⴽⵡⴰⵛⴰ ⵏ ⵣⴰⵎⴱⵢⴰ',
+ 'ZWD' => 'ⴰⴷⵓⵍⴰⵔ ⵏ ⵣⵉⵎⴱⴰⴱⵡⵉ',
+);
+
+$countryNames = array(
+ 'AD' => 'ⴰⵏⴷⵓⵔⴰ',
+ 'AE' => 'ⵍⵉⵎⴰⵔⴰⵜ',
+ 'AF' => 'ⴰⴼⵖⴰⵏⵉⵙⵜⴰⵏ',
+ 'AG' => 'ⴰⵏⵜⵉⴳⴰ ⴷ ⴱⵔⴱⵓⴷⴰ',
+ 'AI' => 'ⴰⵏⴳⵉⵍⴰ',
+ 'AL' => 'ⴰⵍⴱⴰⵏⵢⴰ',
+ 'AM' => 'ⴰⵔⵎⵉⵏⵢⴰ',
+ 'AN' => 'ⴰⵏⵜⵉⵢ ⵏ ⵀⵓⵍⴰⵏⴷⴰ',
+ 'AO' => 'ⴰⵏⴳⵓⵍⴰ',
+ 'AR' => 'ⴰⵔⵊⴰⵏⵜⵉⵏ',
+ 'AS' => 'ⵙⴰⵎⵡⴰ ⵜⴰⵎⵉⵔⵉⴽⴰⵏⵉⵜ',
+ 'AT' => 'ⵏⵏⵎⵙⴰ',
+ 'AU' => 'ⵓⵙⵜⵔⴰⵍⵢⴰ',
+ 'AW' => 'ⴰⵔⵓⴱⴰ',
+ 'AZ' => 'ⴰⴷⵔⴰⴱⵉⵊⴰⵏ',
+ 'BA' => 'ⴱⵓⵙⵏⴰ ⴷ ⵀⵉⵔⵙⵉⴽ',
+ 'BB' => 'ⴱⴰⵔⴱⴰⴷ',
+ 'BD' => 'ⴱⴰⵏⴳⵍⴰⴷⵉⵛ',
+ 'BE' => 'ⴱⵍⵊⵉⴽⴰ',
+ 'BF' => 'ⴱⵓⵔⴽⵉⵏⴰ ⴼⴰⵙⵓ',
+ 'BG' => 'ⴱⵍⵖⴰⵔⵢⴰ',
+ 'BH' => 'ⴱⵃⵔⴰⵢⵏ',
+ 'BI' => 'ⴱⵓⵔⵓⵏⴷⵉ',
+ 'BJ' => 'ⴱⵉⵏⵉⵏ',
+ 'BM' => 'ⴱⵔⵎⵓⴷⴰ',
+ 'BN' => 'ⴱⵔⵓⵏⵉ',
+ 'BO' => 'ⴱⵓⵍⵉⴼⵢⴰ',
+ 'BR' => 'ⴱⵔⴰⵣⵉⵍ',
+ 'BS' => 'ⴱⴰⵀⴰⵎⴰⵙ',
+ 'BT' => 'ⴱⵀⵓⵜⴰⵏ',
+ 'BW' => 'ⴱⵓⵜⵙⵡⴰⵏⴰ',
+ 'BY' => 'ⴱⵉⵍⴰⵔⵓⵙⵢⴰ',
+ 'BZ' => 'ⴱⵉⵍⵉⵣ',
+ 'CA' => 'ⴽⴰⵏⴰⴷⴰ',
+ 'CD' => 'ⵜⴰⴳⴷⵓⴷⴰⵏⵜ ⵜⴰⴷⵉⵎⵓⵇⵔⴰⵜⵉⵜ ⵏ ⴽⵓⵏⴳⵓ',
+ 'CF' => 'ⵜⴰⴳⴷⵓⴷⴰⵏⵜ ⵜⴰⵏⴰⵎⵎⴰⵙⵜ ⵏ ⵉⴼⵔⵉⵇⵢⴰ',
+ 'CG' => 'ⴽⵓⵏⴳⵓ',
+ 'CH' => 'ⵙⵡⵉⵙⵔⴰ',
+ 'CI' => 'ⴽⵓⵜ ⴷⵉⴼⵡⴰⵔ',
+ 'CK' => 'ⵜⵉⴳⵣⵉⵔⵉⵏ ⵏ ⴽⵓⴽ',
+ 'CL' => 'ⵛⵛⵉⵍⵉ',
+ 'CM' => 'ⴽⴰⵎⵉⵔⵓⵏ',
+ 'CN' => 'ⵛⵛⵉⵏⵡⴰ',
+ 'CO' => 'ⴽⵓⵍⵓⵎⴱⵢⴰ',
+ 'CR' => 'ⴽⵓⵙⵜⴰ ⵔⵉⴽⴰ',
+ 'CU' => 'ⴽⵓⴱⴰ',
+ 'CV' => 'ⵜⵉⴳⵣⵉⵔⵉⵏ ⵏ ⴽⴰⴱⴱⵉⵔⴷⵉ',
+ 'CY' => 'ⵇⵓⴱⵔⵓⵙ',
+ 'CZ' => 'ⵜⴰⴳⴷⵓⴷⴰⵏⵜ ⵜⴰⵜⵛⵉⴽⵉⵜ',
+ 'DE' => 'ⴰⵍⵎⴰⵏⵢⴰ',
+ 'DJ' => 'ⴷⵊⵉⴱⵓⵜⵉ',
+ 'DK' => 'ⴷⴰⵏⵎⴰⵔⴽ',
+ 'DM' => 'ⴷⵓⵎⵉⵏⵉⴽ',
+ 'DO' => 'ⵜⴰⴳⴷⵓⴷⴰⵏⵜ ⵜⴰⴷⵓⵎⵉⵏⵉⴽⵜ',
+ 'DZ' => 'ⴷⵣⴰⵢⵔ',
+ 'EC' => 'ⵉⴽⵡⴰⴷⵓⵔ',
+ 'EE' => 'ⵉⵙⵜⵓⵏⵢⴰ',
+ 'EG' => 'ⵎⵉⵚⵕ',
+ 'ER' => 'ⵉⵔⵉⵜⵉⵔⵢⴰ',
+ 'ES' => 'ⵙⴱⴰⵏⵢⴰ',
+ 'ET' => 'ⵉⵜⵢⵓⴱⵢⴰ',
+ 'FI' => 'ⴼⵉⵍⵍⴰⵏⴷⴰ',
+ 'FJ' => 'ⴼⵉⴷⵊⵉ',
+ 'FK' => 'ⵜⵉⴳⵣⵉⵔⵉⵏ ⵏ ⵎⴰⵍⴰⵡⵉ',
+ 'FM' => 'ⵎⵉⴽⵔⵓⵏⵉⵣⵢⴰ',
+ 'FR' => 'ⴼⵔⴰⵏⵙⴰ',
+ 'GA' => 'ⴳⴰⴱⵓⵏ',
+ 'GB' => 'ⵜⴰⴳⵍⴷⵉⵜ ⵉⵎⵓⵏⵏ',
+ 'GD' => 'ⵖⵔⵏⴰⵟⴰ',
+ 'GE' => 'ⵊⵓⵔⵊⵢⴰ',
+ 'GF' => 'ⴳⵡⵉⵢⴰⵏ ⵜⴰⴼⵔⴰⵏⵙⵉⵙⵜ',
+ 'GH' => 'ⵖⴰⵏⴰ',
+ 'GI' => 'ⴰⴷⵔⴰⵔ ⵏ ⵟⴰⵕⵉⵇ',
+ 'GL' => 'ⴳⵔⵉⵍⴰⵏⴷ',
+ 'GM' => 'ⴳⴰⵎⴱⵢⴰ',
+ 'GN' => 'ⵖⵉⵏⵢⴰ',
+ 'GP' => 'ⴳⵡⴰⴷⴰⵍⵓⴱ',
+ 'GQ' => 'ⵖⵉⵏⵢⴰ ⵏ ⵉⴽⵡⴰⴷⵓⵔ',
+ 'GR' => 'ⵍⵢⵓⵏⴰⵏ',
+ 'GT' => 'ⴳⵡⴰⵜⵉⵎⴰⵍⴰ',
+ 'GU' => 'ⴳⵡⴰⵎ',
+ 'GW' => 'ⵖⵉⵏⵢⴰ ⴱⵉⵙⴰⵡ',
+ 'GY' => 'ⴳⵡⵉⵢⴰⵏⴰ',
+ 'HN' => 'ⵀⵓⵏⴷⵓⵔⴰⵙ',
+ 'HR' => 'ⴽⵔⵡⴰⵜⵢⴰ',
+ 'HT' => 'ⵀⴰⵢⵜⵉ',
+ 'HU' => 'ⵀⵏⵖⴰⵔⵢⴰ',
+ 'ID' => 'ⴰⵏⴷⵓⵏⵉⵙⵢⴰ',
+ 'IE' => 'ⵉⵔⵍⴰⵏⴷⴰ',
+ 'IL' => 'ⵉⵙⵔⴰⵢⵉⵍ',
+ 'IN' => 'ⵍⵀⵉⵏⴷ',
+ 'IO' => 'ⵜⴰⵎⵏⴰⴹⵜ ⵜⴰⵏⴳⵍⵉⵣⵉⵜ ⵏ ⵓⴳⴰⵔⵓ ⴰⵀⵉⵏⴷⵉ',
+ 'IQ' => 'ⵍⵄⵉⵔⴰⵇ',
+ 'IR' => 'ⵉⵔⴰⵏ',
+ 'IS' => 'ⵉⵙⵍⴰⵏⴷ',
+ 'IT' => 'ⵉⵟⴰⵍⵢⴰ',
+ 'JM' => 'ⵊⴰⵎⴰⵢⴽⴰ',
+ 'JO' => 'ⵍⵓⵔⴷⵓⵏ',
+ 'JP' => 'ⵍⵢⴰⴱⴰⵏ',
+ 'KE' => 'ⴽⵉⵏⵢⴰ',
+ 'KG' => 'ⴽⵉⵔⵖⵉⵣⵉⵙⵜⴰⵏ',
+ 'KH' => 'ⴽⴰⵎⴱⵓⴷⵢⴰ',
+ 'KI' => 'ⴽⵉⵔⵉⴱⴰⵜⵉ',
+ 'KM' => 'ⵇⵓⵎⵓⵔ',
+ 'KN' => 'ⵙⴰⵏⴽⵔⵉⵙ ⴷ ⵏⵉⴼⵉⵙ',
+ 'KP' => 'ⴽⵓⵔⵢⴰ ⵏ ⵉⵥⵥⵍⵎⴹ',
+ 'KR' => 'ⴽⵓⵔⵢⴰ ⵏ ⵉⴼⴼⵓⵙ',
+ 'KW' => 'ⵍⴽⵡⵉⵜ',
+ 'KY' => 'ⵜⵉⴳⵣⵉⵔⵉⵏ ⵏ ⴽⴰⵢⵎⴰⵏ',
+ 'KZ' => 'ⴽⴰⵣⴰⵅⵙⵜⴰⵏ',
+ 'LA' => 'ⵍⴰⵡⵙ',
+ 'LB' => 'ⵍⵓⴱⵏⴰⵏ',
+ 'LC' => 'ⵙⴰⵏⵜⵍⵓⵙⵉ',
+ 'LI' => 'ⵍⵉⴽⵉⵏⵛⵜⴰⵢⵏ',
+ 'LK' => 'ⵙⵔⵉⵍⴰⵏⴽⴰ',
+ 'LR' => 'ⵍⵉⴱⵉⵔⵢⴰ',
+ 'LS' => 'ⵍⵉⵚⵓⵟⵓ',
+ 'LT' => 'ⵍⵉⵜⵡⴰⵏⵢⴰ',
+ 'LU' => 'ⵍⵓⴽⵙⴰⵏⴱⵓⵔⴳ',
+ 'LV' => 'ⵍⴰⵜⴼⵢⴰ',
+ 'LY' => 'ⵍⵉⴱⵢⴰ',
+ 'MA' => 'ⵍⵎⵖⵔⵉⴱ',
+ 'MC' => 'ⵎⵓⵏⴰⴽⵓ',
+ 'MD' => 'ⵎⵓⵍⴷⵓⴼⵢⴰ',
+ 'MG' => 'ⵎⴰⴷⴰⵖⴰⵛⵇⴰⵔ',
+ 'MH' => 'ⵜⵉⴳⵣⵉⵔⵉⵏ ⵏ ⵎⴰⵔⵛⴰⵍ',
+ 'MK' => 'ⵎⴰⵙⵉⴷⵓⵏⵢⴰ',
+ 'ML' => 'ⵎⴰⵍⵉ',
+ 'MM' => 'ⵎⵢⴰⵏⵎⴰⵔ',
+ 'MN' => 'ⵎⵏⵖⵓⵍⵢⴰ',
+ 'MP' => 'ⵜⵉⴳⵣⵉⵔⵉⵏ ⵏ ⵎⴰⵔⵢⴰⵏ ⵏ ⵉⵥⵥⵍⵎⴹ',
+ 'MQ' => 'ⵎⴰⵔⵜⵉⵏⵉⴽ',
+ 'MR' => 'ⵎⵓⵕⵉⵟⴰⵏⵢⴰ',
+ 'MS' => 'ⵎⵓⵏⵙⵉⵔⴰⵜ',
+ 'MT' => 'ⵎⴰⵍⵟⴰ',
+ 'MU' => 'ⵎⵓⵔⵉⵙ',
+ 'MV' => 'ⵎⴰⵍⴷⵉⴼ',
+ 'MW' => 'ⵎⴰⵍⴰⵡⵉ',
+ 'MX' => 'ⵎⵉⴽⵙⵉⴽ',
+ 'MY' => 'ⵎⴰⵍⵉⵣⵢⴰ',
+ 'MZ' => 'ⵎⵓⵣⵏⴱⵉⵇ',
+ 'NA' => 'ⵏⴰⵎⵉⴱⵢⴰ',
+ 'NC' => 'ⴽⴰⵍⵉⴷⵓⵏⵢⴰ ⵜⴰⵎⴰⵢⵏⵓⵜ',
+ 'NE' => 'ⵏⵏⵉⵊⵉⵔ',
+ 'NF' => 'ⵜⵉⴳⵣⵉⵔⵉⵏ ⵏ ⵏⵓⵔⴼⵓⵍⴽ',
+ 'NG' => 'ⵏⵉⵊⵉⵔⵢⴰ',
+ 'NI' => 'ⵏⵉⴽⴰⵔⴰⴳⵡⴰ',
+ 'NL' => 'ⵀⵓⵍⴰⵏⴷⴰ',
+ 'NO' => 'ⵏⵏⵔⵡⵉⵊ',
+ 'NP' => 'ⵏⵉⴱⴰⵍ',
+ 'NR' => 'ⵏⴰⵡⵔⵓ',
+ 'NU' => 'ⵏⵉⵡⵉ',
+ 'NZ' => 'ⵏⵢⵓⵣⵉⵍⴰⵏⴷⴰ',
+ 'OM' => 'ⵄⵓⵎⴰⵏ',
+ 'PA' => 'ⴱⴰⵏⴰⵎⴰ',
+ 'PE' => 'ⴱⵉⵔⵓ',
+ 'PF' => 'ⴱⵓⵍⵉⵏⵉⵣⵢⴰ ⵜⴰⴼⵔⴰⵏⵙⵉⵙⵜ',
+ 'PG' => 'ⴱⴰⴱⵡⴰ ⵖⵉⵏⵢⴰ ⵜⴰⵎⴰⵢⵏⵓⵜ',
+ 'PH' => 'ⴼⵉⵍⵉⴱⴱⵉⵏ',
+ 'PK' => 'ⴱⴰⴽⵉⵙⵜⴰⵏ',
+ 'PL' => 'ⴱⵓⵍⵓⵏⵢⴰ',
+ 'PM' => 'ⵙⴰⵏⴱⵢⵉⵔ ⴷ ⵎⵉⴽⵍⵓⵏ',
+ 'PN' => 'ⴱⵉⵜⴽⴰⵢⵔⵏ',
+ 'PR' => 'ⴱⵓⵔⵜⵓ ⵔⵉⴽⵓ',
+ 'PS' => 'ⴰⴳⵎⵎⴰⴹ ⵏ ⵜⴰⴳⵓⵜ ⴷ ⵖⵣⵣⴰ',
+ 'PT' => 'ⴱⵕⵟⵇⵉⵣ',
+ 'PW' => 'ⴱⴰⵍⴰⵡ',
+ 'PY' => 'ⴱⴰⵔⴰⴳⵡⴰⵢ',
+ 'QA' => 'ⵇⴰⵜⴰⵔ',
+ 'RE' => 'ⵔⵉⵢⵓⵏⵢⵓⵏ',
+ 'RO' => 'ⵔⵓⵎⴰⵏⵢⴰ',
+ 'RU' => 'ⵔⵓⵙⵢⴰ',
+ 'RW' => 'ⵔⵡⴰⵏⴷⴰ',
+ 'SA' => 'ⵙⵙⴰⵄⵓⴷⵉⵢⴰ',
+ 'SB' => 'ⵜⵉⴳⵣⵉⵔⵉⵏ ⵏ ⵙⴰⵍⵓⵎⴰⵏ',
+ 'SC' => 'ⵙⵙⵉⵛⵉⵍ',
+ 'SD' => 'ⵙⵙⵓⴷⴰⵏ',
+ 'SE' => 'ⵙⵙⵡⵉⴷ',
+ 'SG' => 'ⵙⵏⵖⴰⴼⵓⵔⴰ',
+ 'SH' => 'ⵙⴰⵏⵜⵉⵍⵉⵏ',
+ 'SI' => 'ⵙⵍⵓⴼⵉⵏⵢⴰ',
+ 'SK' => 'ⵙⵍⵓⴼⴰⴽⵢⴰ',
+ 'SL' => 'ⵙⵙⵉⵔⴰⵍⵢⵓⵏ',
+ 'SM' => 'ⵙⴰⵏⵎⴰⵔⵉⵏⵓ',
+ 'SN' => 'ⵙⵙⵉⵏⵉⴳⴰⵍ',
+ 'SO' => 'ⵚⵚⵓⵎⴰⵍ',
+ 'SR' => 'ⵙⵓⵔⵉⵏⴰⵎ',
+ 'ST' => 'ⵙⴰⵡⵟⵓⵎⵉ ⴷ ⴱⵔⴰⵏⵙⵉⴱ',
+ 'SV' => 'ⵙⴰⵍⴼⴰⴷⵓⵔ',
+ 'SY' => 'ⵙⵓⵔⵢⴰ',
+ 'SZ' => 'ⵙⵡⴰⵣⵉⵍⴰⵏⴷⴰ',
+ 'TC' => 'ⵜⵉⴳⵣⵉⵔⵉⵏ ⵏ ⵜⵓⵔⴽⵢⴰ ⴷ ⴽⴰⵢⴽ',
+ 'TD' => 'ⵜⵛⴰⴷ',
+ 'TG' => 'ⵟⵓⴳⵓ',
+ 'TH' => 'ⵟⴰⵢⵍⴰⵏⴷ',
+ 'TJ' => 'ⵜⴰⴷⵊⴰⴽⵉⵙⵜⴰⵏ',
+ 'TK' => 'ⵟⵓⴽⵍⴰⵡ',
+ 'TL' => 'ⵜⵉⵎⵓⵔ ⵏ ⵍⵇⴱⵍⵜ',
+ 'TM' => 'ⵜⵓⵔⴽⵎⴰⵏⵙⵜⴰⵏ',
+ 'TN' => 'ⵜⵓⵏⵙ',
+ 'TO' => 'ⵟⵓⵏⴳⴰ',
+ 'TR' => 'ⵜⵓⵔⴽⵢⴰ',
+ 'TT' => 'ⵜⵔⵉⵏⵉⴷⴰⴷ ⴷ ⵟⵓⴱⴰⴳⵓ',
+ 'TV' => 'ⵜⵓⴼⴰⵍⵓ',
+ 'TW' => 'ⵟⴰⵢⵡⴰⵏ',
+ 'TZ' => 'ⵟⴰⵏⵥⴰⵏⵢⴰ',
+ 'UA' => 'ⵓⴽⵔⴰⵏⵢⴰ',
+ 'UG' => 'ⵓⵖⴰⵏⴷⴰ',
+ 'US' => 'ⵉⵡⵓⵏⴰⴽ ⵎⵓⵏⵏⵉⵏ ⵏ ⵎⵉⵔⵉⴽⴰⵏ',
+ 'UY' => 'ⵓⵔⵓⴳⵡⴰⵢ',
+ 'UZ' => 'ⵓⵣⴱⴰⴽⵉⵙⵜⴰⵏ',
+ 'VA' => 'ⴰⵡⴰⵏⴽ ⵏ ⴼⴰⵜⵉⴽⴰⵏ',
+ 'VC' => 'ⵙⴰⵏⴼⴰⵏⵙⴰⵏ ⴷ ⴳⵔⵉⵏⴰⴷⵉⵏ',
+ 'VE' => 'ⴼⵉⵏⵣⵡⵉⵍⴰ',
+ 'VG' => 'ⵜⵉⴳⵣⵉⵔⵉⵏ ⵜⵉⵎⴳⴰⴷ ⵏ ⵏⵏⴳⵍⵉⵣ',
+ 'VI' => 'ⵜⵉⴳⵣⵉⵔⵉⵏ ⵜⵉⵎⴳⴰⴷ ⵏ ⵉⵡⵓⵏⴰⴽ ⵎⵓⵏⵏⵉⵏ',
+ 'VN' => 'ⴼⵉⵜⵏⴰⵎ',
+ 'VU' => 'ⴼⴰⵏⵡⴰⵟⵓ',
+ 'WF' => 'ⵡⴰⵍⵉⵙ ⴷ ⴼⵓⵜⵓⵏⴰ',
+ 'WS' => 'ⵙⴰⵎⵡⴰ',
+ 'YE' => 'ⵢⴰⵎⴰⵏ',
+ 'YT' => 'ⵎⴰⵢⵓⵟ',
+ 'ZA' => 'ⴰⴼⵔⵉⵇⵢⴰ ⵏ ⵉⴼⴼⵓⵙ',
+ 'ZM' => 'ⵣⴰⵎⴱⵢⴰ',
+ 'ZW' => 'ⵣⵉⵎⴱⴰⴱⵡⵉ',
+);
diff --git a/MLEB/cldr/CldrNames/CldrNamesShi_latn.php b/MLEB/cldr/CldrNames/CldrNamesShi_latn.php
new file mode 100644
index 00000000..8a87e2dc
--- /dev/null
+++ b/MLEB/cldr/CldrNames/CldrNamesShi_latn.php
@@ -0,0 +1,336 @@
+<?php
+
+$languageNames = array(
+ 'ak' => 'takant',
+ 'am' => 'tamharit',
+ 'ar' => 'taɛrabt',
+ 'be' => 'tabilarust',
+ 'bg' => 'tablɣarit',
+ 'bn' => 'tabnɣalit',
+ 'cs' => 'tatcikit',
+ 'de' => 'talimant',
+ 'el' => 'tagrigit',
+ 'en' => 'tanglizt',
+ 'es' => 'tasbnyulit',
+ 'fa' => 'tafursit',
+ 'fr' => 'tafransist',
+ 'ha' => 'tahawsat',
+ 'hi' => 'tahindit',
+ 'hu' => 'tahnɣarit',
+ 'id' => 'tandunisit',
+ 'ig' => 'tigbut',
+ 'it' => 'taṭalyant',
+ 'ja' => 'tajabbunit',
+ 'jv' => 'tajavanit',
+ 'km' => 'taxmirt',
+ 'ko' => 'takurit',
+ 'ms' => 'tamalawit',
+ 'my' => 'tabirmanit',
+ 'ne' => 'tanibalit',
+ 'nl' => 'tahulandit',
+ 'pa' => 'tabnjabit',
+ 'pl' => 'tabulunit',
+ 'pt' => 'tabṛṭqizt',
+ 'ro' => 'tarumanit',
+ 'ru' => 'tarusit',
+ 'rw' => 'taruwandit',
+ 'shi' => 'tamazight',
+ 'so' => 'tasumalit',
+ 'sv' => 'taswidit',
+ 'ta' => 'tatamilt',
+ 'th' => 'tataylandit',
+ 'tr' => 'taturkit',
+ 'uk' => 'tukranit',
+ 'ur' => 'turdut',
+ 'vi' => 'tafitnamit',
+ 'yo' => 'tayrubat',
+ 'zh' => 'tacinwit',
+ 'zu' => 'tazulut',
+);
+
+$currencyNames = array(
+ 'AED' => 'adrim n limarat',
+ 'AOA' => 'kwanza n angula',
+ 'AUD' => 'adular n ustralya',
+ 'BHD' => 'adinar n bḥrayn',
+ 'BIF' => 'frank n burundi',
+ 'BWP' => 'abula n butswana',
+ 'CAD' => 'adular n kanada',
+ 'CDF' => 'frank n kungu',
+ 'CHF' => 'afrank n swisra',
+ 'CNY' => 'ayan n ccinwa',
+ 'CVE' => 'iskudu n kabbirdi',
+ 'DJF' => 'frank n djibuti',
+ 'DZD' => 'adinar n dzayr',
+ 'EGP' => 'ajnih n miṣṛ',
+ 'ERN' => 'nafka n iritirya',
+ 'ETB' => 'bir n ityubya',
+ 'EUR' => 'uru',
+ 'GBP' => 'ajnih astrlini n nngliz',
+ 'GHC' => 'sidi n ɣana',
+ 'GMD' => 'dalasi n gambya',
+ 'GNS' => 'frank n ɣinya',
+ 'INR' => 'arubi n lhind',
+ 'JPY' => 'ayan n lyaban',
+ 'KES' => 'acilin n kinya',
+ 'KMF' => 'frank n qumuṛ',
+ 'LRD' => 'adular n libirya',
+ 'LSL' => 'luti n liṣuṭu',
+ 'LYD' => 'adinar n libya',
+ 'MAD' => 'adrim n lmɣrib',
+ 'MGA' => 'frank n madaɣacqar',
+ 'MRO' => 'uqiyya n muṛiṭanya',
+ 'MUR' => 'arubi n muris',
+ 'MWK' => 'kwaca n malawi',
+ 'MZM' => 'amitikl n muznbiq',
+ 'NAD' => 'adular n namibya',
+ 'NGN' => 'nayra n nijirya',
+ 'RWF' => 'afrank n rwanda',
+ 'SAR' => 'aryal n ssaɛudiya',
+ 'SCR' => 'arubi n ssicil',
+ 'SDG' => 'adinar n ssudan',
+ 'SDP' => 'ajnih n ssudan',
+ 'SHP' => 'ajnih n santilin',
+ 'SLL' => 'liyun',
+ 'SOS' => 'acilin n ṣṣumal',
+ 'STD' => 'adubra n sanṭumi',
+ 'SZL' => 'lilanjini',
+ 'TND' => 'adinar n tuns',
+ 'TZS' => 'acilin n ṭanẓanya',
+ 'UGX' => 'acilin n uɣanda',
+ 'USD' => 'adular n iwunak imunn',
+ 'XAF' => 'frank ṣifa',
+ 'XOF' => 'frank ṣifa bisaw',
+ 'ZAR' => 'arand n afriqya n iffus',
+ 'ZMK' => 'akwaca n zambya (1968–2012)',
+ 'ZMW' => 'akwaca n zambya',
+ 'ZWD' => 'adular n zimbabwi',
+);
+
+$countryNames = array(
+ 'AD' => 'andura',
+ 'AE' => 'limarat',
+ 'AF' => 'afɣanistan',
+ 'AG' => 'antiga d brbuda',
+ 'AI' => 'angila',
+ 'AL' => 'albanya',
+ 'AM' => 'arminya',
+ 'AN' => 'antiy n hulanda',
+ 'AO' => 'angula',
+ 'AR' => 'arjantin',
+ 'AS' => 'samwa tamirikanit',
+ 'AT' => 'nnmsa',
+ 'AU' => 'ustralya',
+ 'AW' => 'aruba',
+ 'AZ' => 'adrabijan',
+ 'BA' => 'busna d hirsik',
+ 'BB' => 'barbad',
+ 'BD' => 'bangladic',
+ 'BE' => 'bljika',
+ 'BF' => 'burkina fasu',
+ 'BG' => 'blɣara',
+ 'BH' => 'bḥrayn',
+ 'BI' => 'burundi',
+ 'BJ' => 'binin',
+ 'BM' => 'brmuda',
+ 'BN' => 'bruni',
+ 'BO' => 'bulibya',
+ 'BR' => 'brazil',
+ 'BS' => 'bahamas',
+ 'BT' => 'bhutan',
+ 'BW' => 'butswana',
+ 'BY' => 'bilarusya',
+ 'BZ' => 'biliz',
+ 'CA' => 'kanada',
+ 'CD' => 'tagdudant tadimukratit n Kongo',
+ 'CF' => 'tagdudant tanammast n ifriqya',
+ 'CG' => 'kungu',
+ 'CH' => 'swisra',
+ 'CI' => 'kut difwar',
+ 'CK' => 'tigzirin n kuk',
+ 'CL' => 'ccili',
+ 'CM' => 'kamirun',
+ 'CN' => 'ccinwa',
+ 'CO' => 'culumbya',
+ 'CR' => 'kusta rika',
+ 'CU' => 'kuba',
+ 'CV' => 'tigzirin n kabbirdi',
+ 'CY' => 'qubrus',
+ 'CZ' => 'tagdudant tatcikit',
+ 'DE' => 'almanya',
+ 'DJ' => 'djibuti',
+ 'DK' => 'danmark',
+ 'DM' => 'duminik',
+ 'DO' => 'tagdudant taduminikt',
+ 'DZ' => 'dzayr',
+ 'EC' => 'ikwadur',
+ 'EE' => 'istunya',
+ 'EG' => 'miṣṛ',
+ 'ER' => 'iritirya',
+ 'ES' => 'sbanya',
+ 'ET' => 'ityubya',
+ 'FI' => 'fillanda',
+ 'FJ' => 'fidji',
+ 'FK' => 'tigzirin n malawi',
+ 'FM' => 'mikrunizya',
+ 'FR' => 'fransa',
+ 'GA' => 'gabun',
+ 'GB' => 'tagldit imunn',
+ 'GD' => 'ɣrnaṭa',
+ 'GE' => 'jurjya',
+ 'GF' => 'gwiyan tafransist',
+ 'GH' => 'ɣana',
+ 'GI' => 'adrar n ṭaṛiq',
+ 'GL' => 'griland',
+ 'GM' => 'gambya',
+ 'GN' => 'ɣinya',
+ 'GP' => 'gwadalub',
+ 'GQ' => 'ɣinya n ikwadur',
+ 'GR' => 'lyunan',
+ 'GT' => 'gwatimala',
+ 'GU' => 'gwam',
+ 'GW' => 'ɣinya bisaw',
+ 'GY' => 'gwiyana',
+ 'HN' => 'hunduras',
+ 'HR' => 'krwatya',
+ 'HT' => 'hayti',
+ 'HU' => 'hnɣarya',
+ 'ID' => 'andunisya',
+ 'IE' => 'irlanda',
+ 'IL' => 'israyil',
+ 'IN' => 'lhind',
+ 'IO' => 'tamnaḍt tanglizit n ugaru ahindi',
+ 'IQ' => 'lɛiraq',
+ 'IR' => 'iran',
+ 'IS' => 'island',
+ 'IT' => 'iṭalya',
+ 'JM' => 'jamayka',
+ 'JO' => 'lurdun',
+ 'JP' => 'lyaban',
+ 'KE' => 'kinya',
+ 'KG' => 'kirɣizistan',
+ 'KH' => 'kambudya',
+ 'KI' => 'kiribati',
+ 'KM' => 'cumur',
+ 'KN' => 'sankris d nifis',
+ 'KP' => 'kurya n iẓẓlmḍ',
+ 'KR' => 'kurya n iffus',
+ 'KW' => 'lkwit',
+ 'KY' => 'tigzirin n kayman',
+ 'KZ' => 'kazaxstan',
+ 'LA' => 'laws',
+ 'LB' => 'lubnan',
+ 'LC' => 'santlusi',
+ 'LI' => 'likinctayn',
+ 'LK' => 'srilanka',
+ 'LR' => 'libirya',
+ 'LS' => 'liṣuṭu',
+ 'LT' => 'litwanya',
+ 'LU' => 'luksanburg',
+ 'LV' => 'latfya',
+ 'LY' => 'libya',
+ 'MA' => 'lmɣrib',
+ 'MC' => 'munaku',
+ 'MD' => 'muldufya',
+ 'MG' => 'madaɣacqar',
+ 'MH' => 'tigzirin n marcal',
+ 'MK' => 'masidunya',
+ 'ML' => 'mali',
+ 'MM' => 'myanmar',
+ 'MN' => 'mnɣulya',
+ 'MP' => 'tigzirin n maryan n iẓẓlmḍ',
+ 'MQ' => 'martinik',
+ 'MR' => 'muṛiṭanya',
+ 'MS' => 'munsirat',
+ 'MT' => 'malṭa',
+ 'MU' => 'muris',
+ 'MV' => 'maldif',
+ 'MW' => 'malawi',
+ 'MX' => 'miksik',
+ 'MY' => 'malizya',
+ 'MZ' => 'muznbiq',
+ 'NA' => 'namibya',
+ 'NC' => 'kalidunya tamaynut',
+ 'NE' => 'nnijir',
+ 'NF' => 'tigzirin n nurfulk',
+ 'NG' => 'nijirya',
+ 'NI' => 'nikaragwa',
+ 'NL' => 'hulanda',
+ 'NO' => 'nnrwij',
+ 'NP' => 'nibal',
+ 'NR' => 'nawru',
+ 'NU' => 'niwi',
+ 'NZ' => 'nyuzilanda',
+ 'OM' => 'ɛuman',
+ 'PA' => 'banama',
+ 'PE' => 'biru',
+ 'PF' => 'bulinizya tafransist',
+ 'PG' => 'babwa ɣinya tamaynut',
+ 'PH' => 'filibbin',
+ 'PK' => 'bakistan',
+ 'PL' => 'bulunya',
+ 'PM' => 'sanbyir d miklun',
+ 'PN' => 'bitkayrn',
+ 'PR' => 'burtu riku',
+ 'PS' => 'agmmaḍ n tagut d ɣzza',
+ 'PT' => 'bṛṭqiz',
+ 'PW' => 'balaw',
+ 'PY' => 'baragway',
+ 'QA' => 'qatar',
+ 'RE' => 'riyunyun',
+ 'RO' => 'rumanya',
+ 'RU' => 'rusya',
+ 'RW' => 'rwanda',
+ 'SA' => 'ssaɛudiya',
+ 'SB' => 'tigzirin n saluman',
+ 'SC' => 'ssicil',
+ 'SD' => 'ssudan',
+ 'SE' => 'sswid',
+ 'SG' => 'snɣafura',
+ 'SH' => 'santilin',
+ 'SI' => 'slufinya',
+ 'SK' => 'slufakya',
+ 'SL' => 'ssiralyun',
+ 'SM' => 'sanmarinu',
+ 'SN' => 'ssinigal',
+ 'SO' => 'ṣṣumal',
+ 'SR' => 'surinam',
+ 'ST' => 'sawṭumi d bransib',
+ 'SV' => 'salfadur',
+ 'SY' => 'surya',
+ 'SZ' => 'swazilanda',
+ 'TC' => 'tigzirin n turkya d kayk',
+ 'TD' => 'tcad',
+ 'TG' => 'ṭugu',
+ 'TH' => 'ṭayland',
+ 'TJ' => 'tadjakistan',
+ 'TK' => 'ṭuklaw',
+ 'TL' => 'timur n lqblt',
+ 'TM' => 'turkmanstan',
+ 'TN' => 'tuns',
+ 'TO' => 'ṭunga',
+ 'TR' => 'turkya',
+ 'TT' => 'trinidad d ṭubagu',
+ 'TV' => 'tufalu',
+ 'TW' => 'ṭaywan',
+ 'TZ' => 'ṭanẓanya',
+ 'UA' => 'ukranya',
+ 'UG' => 'uɣanda',
+ 'US' => 'iwunak munnin n mirikan',
+ 'UY' => 'urugway',
+ 'UZ' => 'uzbakistan',
+ 'VA' => 'awank n fatikan',
+ 'VC' => 'sanfansan d grinadin',
+ 'VE' => 'finzwila',
+ 'VG' => 'tigzirin timgad n nngliz',
+ 'VI' => 'tigzirin timgad n iwunak munnin',
+ 'VN' => 'fitnam',
+ 'VU' => 'fanwaṭu',
+ 'WF' => 'walis d futuna',
+ 'WS' => 'samwa',
+ 'YE' => 'yaman',
+ 'YT' => 'mayuṭ',
+ 'ZA' => 'afriqya n iffus',
+ 'ZM' => 'zambya',
+ 'ZW' => 'zimbabwi',
+);
diff --git a/MLEB/cldr/CldrNames/CldrNamesSi.php b/MLEB/cldr/CldrNames/CldrNamesSi.php
new file mode 100644
index 00000000..926a0a6c
--- /dev/null
+++ b/MLEB/cldr/CldrNames/CldrNamesSi.php
@@ -0,0 +1,927 @@
+<?php
+
+$languageNames = array(
+ 'ab' => 'ඇබ්කාසියානු',
+ 'aeb' => 'ටියුනිසියනු අරාබි',
+ 'af' => 'අප්‍රිකානු',
+ 'agq' => 'ඇගම්',
+ 'ak' => 'අකාන්',
+ 'am' => 'ඇම්හාරික්',
+ 'ar' => 'අරාබි',
+ 'ar-001' => 'නවීන සම්මත අරාබි',
+ 'arn' => 'මපුචෙ',
+ 'as' => 'ඇසමියානු',
+ 'asa' => 'අසු',
+ 'az' => 'අසර්බයිජාන්',
+ 'ba' => 'බාෂ්කිර්',
+ 'be' => 'බෙලරුසියානු',
+ 'bem' => 'බෙම්බා',
+ 'bez' => 'බෙනා',
+ 'bg' => 'බල්ගේරියානු',
+ 'bm' => 'බම්බරා',
+ 'bn' => 'බෙංගාලි',
+ 'bo' => 'ටිබෙට්',
+ 'br' => 'බ්‍රේටොන්',
+ 'brx' => 'බොඩො',
+ 'bs' => 'බොස්නියානු',
+ 'ca' => 'කැටලන්',
+ 'cgg' => 'චිගා',
+ 'chr' => 'චෙරොකී',
+ 'ckb' => 'සොරානි කුර්දිෂ්',
+ 'co' => 'ක්‍රොඑශියානු',
+ 'cs' => 'චෙත්',
+ 'cy' => 'වේල්ස්',
+ 'da' => 'ඩැනිශ්',
+ 'dav' => 'ටයිටා',
+ 'de' => 'ජර්මන්',
+ 'de-at' => 'ඔස්ට්‍රියානු ජර්මන්',
+ 'de-ch' => 'ස්විස් උසස් ජර්මන්',
+ 'dje' => 'ෆර්මා',
+ 'dsb' => 'පහළ සෝබියානු',
+ 'dua' => 'ඩුආලා',
+ 'dv' => 'දිවෙහි',
+ 'dyo' => 'ජොල-ෆෝනියි',
+ 'dz' => 'ඩිසොන්කා',
+ 'ebu' => 'එම්බු',
+ 'ee' => 'ඉව්',
+ 'el' => 'ග්‍රීක',
+ 'en' => 'ඉංග්‍රීසි',
+ 'en-au' => 'ඕස්ට්‍රේලියානු ඉංග්‍රීසි',
+ 'en-ca' => 'කැනේඩියානු ඉංග්‍රීසි',
+ 'en-gb' => 'බ්‍රිතාන්‍ය ඉංග්‍රීසි',
+ 'en-us' => 'ඇමෙරිකානු ඉංග්‍රීසි',
+ 'eo' => 'එස්පැරන්ටෝ',
+ 'es' => 'ස්පාඤ්ඤ',
+ 'es-419' => 'ලතින් ඇමරිකානු ස්පාඤ්ඤ',
+ 'es-es' => 'යුරෝපීය ස්පාඤ්ඤ',
+ 'es-mx' => 'මෙක්සිකානු ස්පාඤ්ඤ',
+ 'et' => 'එස්තෝනියානු',
+ 'eu' => 'බොස්කෝ',
+ 'fa' => 'පර්සියානු',
+ 'fi' => 'ෆින්ලන්ත',
+ 'fil' => 'පිලිපීන',
+ 'fj' => 'ෆීජි',
+ 'fo' => 'ෆාරෝස්',
+ 'fr' => 'ප්‍රංශ',
+ 'fr-ca' => 'කැනේඩියානු ප්‍රංශ',
+ 'fr-ch' => 'ස්විස් ප්‍රංශ',
+ 'fy' => 'බටහිර ෆ්‍රිසියානු',
+ 'ga' => 'අයර්ලන්ත',
+ 'gag' => 'ගගාස්',
+ 'gl' => 'ගැලීසියානු',
+ 'gn' => 'ගුවාරනි',
+ 'gsw' => 'ස්විස් ජර්මනි',
+ 'gu' => 'ගුජරාටි',
+ 'guz' => 'ගුසී',
+ 'gv' => 'මැන්ක්ස්',
+ 'ha' => 'හෝසා',
+ 'haw' => 'හවායි',
+ 'he' => 'හීබෲ',
+ 'hi' => 'හින්දි',
+ 'hr' => 'ක්‍රෝයේශියානු',
+ 'hsb' => 'ඉහළ සෝබියානු',
+ 'ht' => 'හයිටි',
+ 'hu' => 'හන්ගේරියානු',
+ 'hy' => 'ආර්මේනියානු',
+ 'id' => 'ඉන්දුනීසියානු',
+ 'ig' => 'ඉග්බෝ',
+ 'ii' => 'සිචුආන් යී',
+ 'is' => 'අයිස්ලන්ත',
+ 'it' => 'ඉතාලි',
+ 'iu' => 'ඉනුක්ටිටුට්',
+ 'ja' => 'ජපන්',
+ 'jgo' => 'නොම්බා',
+ 'jmc' => 'මැකාමී',
+ 'jv' => 'ජාවා',
+ 'ka' => 'ජෝර්ජියානු',
+ 'kab' => 'කැබලා',
+ 'kam' => 'කැම්බා',
+ 'kde' => 'මැකොන්ඩ්',
+ 'kea' => 'කබුවෙර්ඩියානෝ',
+ 'khq' => 'කොයිරා චිනි',
+ 'ki' => 'කිකුයු',
+ 'kk' => 'කසාඛ්',
+ 'kl' => 'කලාලිසට්',
+ 'kln' => 'කලෙන්ජන්',
+ 'km' => 'කමර්',
+ 'kn' => 'කණ්ණඩ',
+ 'ko' => 'කොරියානු',
+ 'koi' => 'කොමි-පර්මියාක්',
+ 'kok' => 'කොන්කනි',
+ 'ks' => 'කාෂ්මීර්',
+ 'ksb' => 'ශාම්බලා',
+ 'ksf' => 'බාෆියා',
+ 'ku' => 'කුර්දි',
+ 'kw' => 'කෝනීසියානු',
+ 'ky' => 'කිර්ගිස්',
+ 'la' => 'ලතින්',
+ 'lag' => 'ලංගි',
+ 'lb' => 'ලක්සැම්බර්ග්',
+ 'lg' => 'ගන්ඩා',
+ 'lkt' => 'ලකොට',
+ 'ln' => 'ලින්ගලා',
+ 'lo' => 'ලාඕ',
+ 'lt' => 'ලිතුවේනියානු',
+ 'lu' => 'ලු',
+ 'luo' => 'ලුඔ',
+ 'luy' => 'ලුයියා',
+ 'lv' => 'ලැට්වියානු',
+ 'mas' => 'මසායි',
+ 'mer' => 'මෙරු',
+ 'mfe' => 'මොරිස්යෙම්',
+ 'mg' => 'මලගාසි',
+ 'mgh' => 'මඛුවා-මීටෝ',
+ 'mgo' => 'මෙටා',
+ 'mi' => 'මාවොරි',
+ 'mk' => 'මැසිඩෝනියානු',
+ 'ml' => 'මලයාලම්',
+ 'mn' => 'මොංගෝලියානු',
+ 'moh' => 'මොහොව්ක්',
+ 'mr' => 'මරාති',
+ 'ms' => 'මැලේ',
+ 'mt' => 'මොල්ටිස්',
+ 'mua' => 'මුන්ඩන්',
+ 'my' => 'බුරුම',
+ 'naq' => 'නාමා',
+ 'nb' => 'නෝවේජියානු බොක්මාල්',
+ 'nd' => 'උතුරු එන්ඩිබෙලෙ',
+ 'ne' => 'නේපාල',
+ 'nl' => 'ලන්දේසි',
+ 'nl-be' => 'ෆ්ලෙමිශ්',
+ 'nmg' => 'කුවාසිඔ',
+ 'nn' => 'නොවේර්ජියානු නයිනෝර්ස්ක්',
+ 'nqo' => 'එන්‘කෝ',
+ 'nus' => 'නොයර්',
+ 'nyn' => 'නයන්කොළේ',
+ 'om' => 'ඔරොමෝ',
+ 'or' => 'ඔරියා',
+ 'pa' => 'ජන්ජාබි',
+ 'pl' => 'පෝලන්ත',
+ 'ps' => 'පෂ්ටො',
+ 'pt' => 'පෘතුගීසි',
+ 'pt-br' => 'බ්‍රසීල පෘතුගීසි',
+ 'pt-pt' => 'යුරෝපීය පෘතුගීසි',
+ 'qu' => 'ක්වීචුවා',
+ 'quc' => 'කියිචේ',
+ 'rm' => 'රොමෑන්ශ්',
+ 'rn' => 'රුන්ඩි',
+ 'ro' => 'රොමේනියානු',
+ 'rof' => 'රෝම්බෝ',
+ 'ru' => 'රුසියානු',
+ 'rw' => 'කින්යර්වන්ඩා',
+ 'rwk' => 'ර්වා',
+ 'sa' => 'සංස්කෘත',
+ 'saq' => 'සම්බුරු',
+ 'sbp' => 'සංගු',
+ 'sd' => 'සින්ධි',
+ 'se' => 'උතුරු සාමි',
+ 'seh' => 'සෙනා',
+ 'ses' => 'කෝයිරාබොරො සෙන්නි',
+ 'sg' => 'සන්ග්‍රෝ',
+ 'shi' => 'ටචේල්හිට්',
+ 'si' => 'සිංහල',
+ 'sk' => 'ස්ලෝවැක්',
+ 'sl' => 'ස්ලෝවේනියානු',
+ 'sma' => 'දකුණු සාමි',
+ 'smj' => 'ලුලේ සාමි',
+ 'smn' => 'ඉනාරි සාමි',
+ 'sms' => 'ස්කොල්ට් සාමි',
+ 'sn' => 'ශෝනා',
+ 'so' => 'සෝමාලි',
+ 'sq' => 'ඇල්බේනියානු',
+ 'sr' => 'සර්බියානු',
+ 'su' => 'සන්ඩනීසියානු',
+ 'sv' => 'ස්වීඩන්',
+ 'sw' => 'ස්වාහිලි',
+ 'swc' => 'කොන්ගෝ ස්වාහිලි',
+ 'ta' => 'දෙමළ',
+ 'te' => 'තෙළිඟු',
+ 'teo' => 'ටෙසෝ',
+ 'tg' => 'ටජික්',
+ 'th' => 'තායි',
+ 'ti' => 'ටිග්‍රින්යා',
+ 'tk' => 'ටර්ක්මෙන්',
+ 'to' => 'ටොංගා',
+ 'tr' => 'තුර්කි',
+ 'tt' => 'ටාටර්',
+ 'twq' => 'ටසවාක්',
+ 'tzm' => 'මධ්‍යම ඇට්ලස් ටමසිට්',
+ 'ug' => 'උයිගර්',
+ 'uk' => 'යුක්රේනියානු',
+ 'und' => 'නොදන්නා භාෂාව',
+ 'ur' => 'උර්දු',
+ 'uz' => 'උස්බෙක්',
+ 'vai' => 'වයි',
+ 'vi' => 'වියට්නාම්',
+ 'vun' => 'වුන්ජෝ',
+ 'wo' => 'වොලොෆ්',
+ 'xh' => 'ශෝසා',
+ 'xog' => 'සොගා',
+ 'yo' => 'යොරූබා',
+ 'zgh' => 'සම්මත මොරොක්කෝ ටමසිග්ත්',
+ 'zh' => 'චීන',
+ 'zh-hans' => 'සුළුකළ චීන',
+ 'zh-hant' => 'සාම්ප්‍රදායික චීන',
+ 'zu' => 'සුලු',
+ 'zxx' => 'වාග් විද්‍යා අන්තර්ගතයක් නැත',
+);
+
+$currencyNames = array(
+ 'AED' => 'එක්සත් අරාබි එමිරේට්ස් ඩිරාම්',
+ 'AFN' => 'ඇෆ්ගනිථාන ඇෆ්ගනි',
+ 'ALL' => 'ඇල්බේනියානු ලෙක්',
+ 'AMD' => 'ආර්මේනියානු ඩ්‍රෑම්',
+ 'ANG' => 'නෙදර්ලන්ත ඇන්ටිලියන් ගිල්ඩර්',
+ 'AOA' => 'ඇන්ගෝලානු ක්වන්සා',
+ 'ARS' => 'ආර්ජන්ටිනා පෙසෝ',
+ 'AUD' => 'ඔස්ට්‍රේලියානු ඩොලර්',
+ 'AWG' => 'අරූබානු ෆ්ලෝරින්',
+ 'AZN' => 'අසර්බයිජානු මනාට්',
+ 'BAM' => 'බොස්නියා හර්සගොවීනා පරිවර්ත්‍ය මාර්ක්',
+ 'BBD' => 'බාබේඩියානු ඩොලර්',
+ 'BDT' => 'බංග්ලාදේශ් ටකා',
+ 'BGN' => 'බල්ගේරියානු ලිව්',
+ 'BHD' => 'බහරේන් ඩිනාර්',
+ 'BIF' => 'බුරුන්දි ෆ්‍රෑන්ක්',
+ 'BMD' => 'බර්මියුඩානු ඩොලර්',
+ 'BND' => 'බෘනායි ඩොලර්',
+ 'BOB' => 'බොලිවියානු බොලිවියානෝ',
+ 'BRL' => 'බ්‍රසීල රියල්',
+ 'BSD' => 'බහමානු ඩොලර්',
+ 'BTN' => 'භූතාන නගුල්ට්‍රම්',
+ 'BWP' => 'බොට්ස්වානා පුලා',
+ 'BYR' => 'බෙලරූස් රූබල්',
+ 'BZD' => 'බෙලීස් ඩොලර්',
+ 'CAD' => 'කැනේඩියානු ඩොලර්',
+ 'CDF' => 'කොංගෝ ෆ්‍රෑන්ක්',
+ 'CHF' => 'ස්විස් ෆ්‍රෑන්ක්',
+ 'CLP' => 'චිලි පැසෝ',
+ 'CNY' => 'චීන යුආන්',
+ 'COP' => 'කොලොම්බියානු පෙසෝ',
+ 'CRC' => 'කොස්ට රිකා කොලෝන්',
+ 'CUC' => 'මාරුකළ හැකි කියුබානු පැසෝ',
+ 'CUP' => 'කියුබානු පැසෝ',
+ 'CVE' => 'කේප් වර්ඩ් එස්කියුඩෝ',
+ 'CZK' => 'චෙක් රිපබ්ලික් කොරූනා',
+ 'DJF' => 'ජිබූති ෆ්‍රෑන්ක්',
+ 'DKK' => 'ඩැනිෂ් ක්‍රෝන්',
+ 'DOP' => 'ඩොමිනිකානු පෙසෝ',
+ 'DZD' => 'ඇල්ගේරියානු ඩිනාර්',
+ 'EGP' => 'ඊජිප්තු පවුම්',
+ 'ERN' => 'එරිත්‍රියානු නැක්ෆා',
+ 'ETB' => 'ඉතියෝපියානු බීර්',
+ 'EUR' => 'යුරෝ',
+ 'FJD' => 'ෆිජියන් ඩොලර්',
+ 'FKP' => 'ෆෝක්ලන්ඩ් දූපත් පවුම්',
+ 'GBP' => 'බ්‍රිතාන්‍ය ස්ටර්ලින් පවුම්',
+ 'GEL' => 'ජෝජියානු ලැරී',
+ 'GHS' => 'ඝානා සෙඩි',
+ 'GIP' => 'ජිබ්‍රෝල්ටා පවුම්',
+ 'GMD' => 'ගැම්බියානු දලාසි',
+ 'GNF' => 'ගිනියානු ෆ්රෑන්ක්',
+ 'GTQ' => 'ගෝතමාලානු ක්වෙට්සල්',
+ 'GYD' => 'ගයනා ඩොලර්',
+ 'HKD' => 'හොංකොං ඩොලර්',
+ 'HNL' => 'හොන්ඩුරානු ලෙම්පිරා',
+ 'HRK' => 'ක්‍රොඒෂියානු කූනා',
+ 'HTG' => 'හයිටි ගෝර්ඩ්',
+ 'HUF' => 'හංගේරියානු ෆරින්ට්',
+ 'IDR' => 'ඉන්දුනීසියානු රුපියා',
+ 'ILS' => 'ඊශ්‍රායල නව ශෙකල්',
+ 'INR' => 'ඉන්දියානු රුපියල්',
+ 'IQD' => 'ඉරාක ඩිනාර්',
+ 'IRR' => 'ඉරාන රියාල්',
+ 'ISK' => 'අයිස්ලන්තික ක්‍රෝනා',
+ 'JMD' => 'ජැමෙයිකානු ඩොලර්',
+ 'JOD' => 'ජෝර්දාන් ඩිනාර්',
+ 'JPY' => 'ජපන් යෙන්',
+ 'KES' => 'කෙන්යානු ශිලිං',
+ 'KGS' => 'කිරිගිස්ථාන සම්',
+ 'KHR' => 'කාම්බෝජ රියේල්',
+ 'KMF' => 'කොමොරියානු ෆ්‍රෑන්ක්',
+ 'KPW' => 'උතුරු කොරියානු වොන්',
+ 'KRW' => 'දකුණු කොරියානු වොන්',
+ 'KWD' => 'කුවේට් ඩිනාර්',
+ 'KYD' => 'කේමන් දූපත් ඩොලර්',
+ 'KZT' => 'කසකස්ථාන ටෙන්ග',
+ 'LAK' => 'ලාඕස් කිප්',
+ 'LBP' => 'ලෙබනන පවුම්',
+ 'LKR' => 'ශ්‍රී ලංකා රුපියල',
+ 'LRD' => 'ලයිබේරියානු ඩොලර්',
+ 'LTL' => 'ලිතුවේනියානු',
+ 'LVL' => 'ලැට්වියානු ලැට්ස්',
+ 'LYD' => 'ලිබියානු ඩිනාර්',
+ 'MAD' => 'මොරොක්කෝ ඩිර්හැම්',
+ 'MDL' => 'මෝල්ඩෝවානු ලෙව්',
+ 'MGA' => 'මලගාසි අරියාරි',
+ 'MKD' => 'මැසඩෝනියානු ඩිනාර්',
+ 'MMK' => 'බුරුම ක්යාට්',
+ 'MNT' => 'මොන්ගෝලියානු ටග්‍රික්',
+ 'MOP' => 'මැකනීස් පටකා',
+ 'MRO' => 'මුරුසි ඔයිගුයියා',
+ 'MUR' => 'මුරිසියානු රුපියල්',
+ 'MVR' => 'මාලදිවයින් රුෆියා',
+ 'MWK' => 'මලාවි ක්වාචා',
+ 'MXN' => 'මෙක්සිකානු ඩොලර්',
+ 'MYR' => 'මැලේසියානු රින්ගිට්',
+ 'MZN' => 'මොසැම්බිකන් මෙටිකල්',
+ 'NAD' => 'නැමීබියානු ඩොලර්',
+ 'NGN' => 'නයිජීරියානු නයිරා',
+ 'NIO' => 'නිකරගුවානු කොඩෝබා',
+ 'NOK' => 'නොර්වීජියන් ක්‍රෝන්',
+ 'NPR' => 'නේපාල රුපියල්',
+ 'NZD' => 'නවසීලන්ත ඩොලර්',
+ 'OMR' => 'ඕමාන් රියාල්',
+ 'PAB' => 'පැනමා බැල්බෝ',
+ 'PEN' => 'පේරු නියුවෝ සොල්',
+ 'PGK' => 'පැපුවා නිව් ගිනියානු කිනා',
+ 'PHP' => 'පිලිපීන පෙසෝ',
+ 'PKR' => 'පාකිස්ථාන රුපියල්',
+ 'PLN' => 'පොලිෂ් ස්ලොටි',
+ 'PYG' => 'පැරගුවේ ගුවරානි',
+ 'QAR' => 'කටාර් රියාල්',
+ 'RON' => 'රොමේනියානු ලෙව්',
+ 'RSD' => 'සර්බියානු ඩිනාර්',
+ 'RUB' => 'රුසියන් රූබල්',
+ 'RWF' => 'රුවන්ඩා ෆ්‍රෑන්ක්',
+ 'SAR' => 'සවුදි රියාල්',
+ 'SBD' => 'සොලමන් දූපත් ඩොලර්',
+ 'SCR' => 'සීෂෙලියානු රුපියල',
+ 'SDG' => 'සුඩාන පවුම්',
+ 'SEK' => 'ස්වෙඩිෂ් ක්‍රෝනා',
+ 'SGD' => 'සිංගප්පූරු ඩොලර්',
+ 'SHP' => 'ශාන්ත හෙලේනා පවුම්',
+ 'SLL' => 'සියරා ලියොන් ලියොන්',
+ 'SOS' => 'සෝමාලියානු ශිලිං',
+ 'SRD' => 'සුරිනාම් ඩොලර්',
+ 'SSP' => 'දකුණු සුඩාන පවුම්',
+ 'STD' => 'සාඕ තෝම් සහ ප්‍රින්සිප් දොබ්‍රා',
+ 'SYP' => 'සිරියානු පවුම්',
+ 'SZL' => 'ස්වාසි ලිලන්ජනි',
+ 'THB' => 'තායි බාත්',
+ 'TJS' => 'තජිකිස්ථාන සමොනි',
+ 'TMT' => 'තක්මෙනිස්ථාන මනාට්',
+ 'TND' => 'ටියුනීසියානු ඩිනාර්',
+ 'TOP' => 'ටොංගානු පාන්ගා',
+ 'TRY' => 'තුර්කි ලිරා',
+ 'TTD' => 'ට්‍රිනිඩෑඩ් සහ ටොබෑගෝ ඩොලර්',
+ 'TWD' => 'නව තායිවාන ඩොලර්',
+ 'TZS' => 'ටැන්සානියානු ශිලිං',
+ 'UAH' => 'යුක්රේන හ්‍රිව්නියා',
+ 'UGX' => 'උගන්ඩා ශිලිං',
+ 'USD' => 'ඇමරිකානු ඩොලර්',
+ 'UYU' => 'උරුගුවේ පෙසෝ',
+ 'UZS' => 'උස්බෙකිස්ථාන සම්',
+ 'VEF' => 'වෙනිසියුලානු බොලිවර්',
+ 'VND' => 'වියට්නාම ඩොන්',
+ 'VUV' => 'වනුවාටු වාටු',
+ 'WST' => 'සැමෝවා ටාලා',
+ 'XAF' => 'සිෆ්එ ෆ්රෑන්ක් බිඊඑසි',
+ 'XCD' => 'නැගෙනහිර කැරිබියානු ඩොලර්',
+ 'XOF' => 'සිෆ්එ ෆ්රෑන්ක් බිසීඊඑඔ',
+ 'XPF' => 'ප්‍රංශ පොලිනීසියානු ෆ්‍රෑන්ක්',
+ 'XXX' => 'නොදත් මුදල්',
+ 'YER' => 'යේමන රියාල්',
+ 'ZAR' => 'දකුණු අප්‍රිකානු රැන්ඩ්',
+ 'ZMK' => 'සැම්බියානු ක්වාචා (1968–2012)',
+ 'ZMW' => 'සැම්බියානු ක්වාචා',
+);
+
+$currencySymbols = array(
+ 'AED' => 'AED',
+ 'AFN' => 'AFN',
+ 'ALL' => 'ALL',
+ 'AMD' => 'AMD',
+ 'ANG' => 'ANG',
+ 'AOA' => 'AOA',
+ 'ARS' => 'ARS',
+ 'AUD' => 'A$',
+ 'AWG' => 'AWG',
+ 'AZN' => 'AZN',
+ 'BAM' => 'BAM',
+ 'BBD' => 'BBD',
+ 'BDT' => 'BDT',
+ 'BGN' => 'BGN',
+ 'BHD' => 'BHD',
+ 'BIF' => 'BIF',
+ 'BMD' => 'BMD',
+ 'BND' => 'BND',
+ 'BOB' => 'BOB',
+ 'BRL' => 'R$',
+ 'BSD' => 'BSD',
+ 'BTN' => 'BTN',
+ 'BWP' => 'BWP',
+ 'BYR' => 'BYR',
+ 'BZD' => 'BZD',
+ 'CAD' => 'CA$',
+ 'CDF' => 'CDF',
+ 'CHF' => 'CHF',
+ 'CLP' => 'CLP',
+ 'CNY' => 'CN¥',
+ 'COP' => 'COP',
+ 'CRC' => 'CRC',
+ 'CUC' => 'CUC',
+ 'CUP' => 'CUP',
+ 'CVE' => 'CVE',
+ 'CZK' => 'CZK',
+ 'DJF' => 'DJF',
+ 'DKK' => 'DKK',
+ 'DOP' => 'DOP',
+ 'DZD' => 'DZD',
+ 'EGP' => 'EGP',
+ 'ERN' => 'ERN',
+ 'ETB' => 'ETB',
+ 'EUR' => '€',
+ 'FJD' => 'FJD',
+ 'FKP' => 'FKP',
+ 'GBP' => '£',
+ 'GEL' => 'GEL',
+ 'GHS' => 'GHS',
+ 'GIP' => 'GIP',
+ 'GMD' => 'GMD',
+ 'GNF' => 'GNF',
+ 'GTQ' => 'GTQ',
+ 'GYD' => 'GYD',
+ 'HKD' => 'HK$',
+ 'HNL' => 'HNL',
+ 'HRK' => 'HRK',
+ 'HTG' => 'HTG',
+ 'HUF' => 'HUF',
+ 'IDR' => 'IDR',
+ 'ILS' => '₪',
+ 'INR' => '₹',
+ 'IQD' => 'IQD',
+ 'IRR' => 'IRR',
+ 'ISK' => 'ISK',
+ 'JMD' => 'JMD',
+ 'JOD' => 'JOD',
+ 'JPY' => 'JP¥',
+ 'KES' => 'KES',
+ 'KGS' => 'KGS',
+ 'KHR' => 'KHR',
+ 'KMF' => 'KMF',
+ 'KPW' => 'KPW',
+ 'KRW' => '₩',
+ 'KWD' => 'KWD',
+ 'KYD' => 'KYD',
+ 'KZT' => 'KZT',
+ 'LAK' => 'LAK',
+ 'LBP' => 'LBP',
+ 'LKR' => 'රු.',
+ 'LRD' => 'LRD',
+ 'LTL' => 'LTL',
+ 'LYD' => 'LYD',
+ 'MAD' => 'MAD',
+ 'MDL' => 'MDL',
+ 'MGA' => 'MGA',
+ 'MKD' => 'MKD',
+ 'MMK' => 'MMK',
+ 'MNT' => 'MNT',
+ 'MOP' => 'MOP',
+ 'MRO' => 'MRO',
+ 'MUR' => 'MUR',
+ 'MVR' => 'MVR',
+ 'MWK' => 'MWK',
+ 'MXN' => 'MX$',
+ 'MYR' => 'MYR',
+ 'MZN' => 'MZN',
+ 'NAD' => 'NAD',
+ 'NGN' => 'NGN',
+ 'NIO' => 'NIO',
+ 'NOK' => 'NOK',
+ 'NPR' => 'NPR',
+ 'NZD' => 'NZ$',
+ 'OMR' => 'OMR',
+ 'PAB' => 'PAB',
+ 'PEN' => 'PEN',
+ 'PGK' => 'PGK',
+ 'PHP' => 'PHP',
+ 'PKR' => 'PKR',
+ 'PLN' => 'PLN',
+ 'PYG' => 'PYG',
+ 'QAR' => 'QAR',
+ 'RON' => 'RON',
+ 'RSD' => 'RSD',
+ 'RUB' => 'RUB',
+ 'RWF' => 'RWF',
+ 'SAR' => 'SAR',
+ 'SBD' => 'SBD',
+ 'SCR' => 'SCR',
+ 'SDG' => 'SDG',
+ 'SEK' => 'SEK',
+ 'SGD' => 'SGD',
+ 'SHP' => 'SHP',
+ 'SLL' => 'SLL',
+ 'SOS' => 'SOS',
+ 'SRD' => 'SRD',
+ 'SSP' => 'SSP',
+ 'STD' => 'STD',
+ 'SYP' => 'SYP',
+ 'SZL' => 'SZL',
+ 'THB' => '฿',
+ 'TJS' => 'TJS',
+ 'TMT' => 'TMT',
+ 'TND' => 'TND',
+ 'TOP' => 'TOP',
+ 'TRY' => 'TRY',
+ 'TTD' => 'TTD',
+ 'TWD' => 'NT$',
+ 'TZS' => 'TZS',
+ 'UAH' => 'UAH',
+ 'UGX' => 'UGX',
+ 'USD' => 'US$',
+ 'UYU' => 'UYU',
+ 'UZS' => 'UZS',
+ 'VEF' => 'VEF',
+ 'VND' => '₫',
+ 'VUV' => 'VUV',
+ 'WST' => 'WST',
+ 'XAF' => 'FCFA',
+ 'XCD' => 'EC$',
+ 'XOF' => 'සිෆ්එ',
+ 'XPF' => 'CFPF',
+ 'YER' => 'YER',
+ 'ZAR' => 'ZAR',
+ 'ZMW' => 'ZMW',
+);
+
+$countryNames = array(
+ 'AC' => 'ඇසෙන්ෂන් දිවයින',
+ 'AD' => 'ඇන්ඩෝරාව',
+ 'AE' => 'එක්සත් අරාබි එමිර් රාජ්‍යය',
+ 'AF' => 'ඇෆ්ගනිස්ථානය',
+ 'AG' => 'ඇන්ටිගුවා සහ බාබියුඩාව',
+ 'AI' => 'ඇන්ගුයිලාව',
+ 'AL' => 'ඇල්බේනියාව',
+ 'AM' => 'ආර්මේනියාව',
+ 'AN' => 'නෙදර්ලන්ත ඇන්ටිලීසිය',
+ 'AO' => 'ඇන්ගෝලාව',
+ 'AQ' => 'ඇන්ටාක්ටිකාව',
+ 'AR' => 'ආර්ජෙන්ටිනාව',
+ 'AS' => 'ඇමරිකානු සැමෝවාව',
+ 'AT' => 'ඔස්ට්‍රියාව',
+ 'AU' => 'ඕස්ට්‍රේලියාව',
+ 'AW' => 'අරුබාව',
+ 'AX' => 'ඕලන්ඩ් දූපත්',
+ 'AZ' => 'අසර්බයිජානය',
+ 'BA' => 'බොස්නියාව සහ හර්සගොවීනාව',
+ 'BB' => 'බාර්බඩෝස්',
+ 'BD' => 'බංග්ලාදේශය',
+ 'BE' => 'බෙල්ජියම',
+ 'BF' => 'බර්කිනා ෆාසෝ',
+ 'BG' => 'බල්ගේරියාව',
+ 'BH' => 'බහරේන්',
+ 'BI' => 'බුරුන්දි',
+ 'BJ' => 'බෙනින්',
+ 'BL' => 'ශාන්ත බර්තලෙමි',
+ 'BM' => 'බර්මියුඩා',
+ 'BN' => 'බෲනායි',
+ 'BO' => 'බොලීවියාව',
+ 'BQ' => 'කැරිබියානු නෙදර්ලන්තය',
+ 'BR' => 'බ්‍රසීලය',
+ 'BS' => 'බහමාස්',
+ 'BT' => 'භූතානය',
+ 'BV' => 'බුවට් දුපත්',
+ 'BW' => 'බොට්ස්වානා',
+ 'BY' => 'බෙලරුස්',
+ 'BZ' => 'බෙලීස්',
+ 'CA' => 'කැනඩාව',
+ 'CC' => 'කොකෝස් දූපත්',
+ 'CD' => 'කොංගො - කින්ශාසා',
+ 'CF' => 'මධ්‍යම අප්‍රිකානු ජනරජය',
+ 'CG' => 'කොංගො - බ්‍රසාවිල්',
+ 'CH' => 'ස්විස්ටර්ලන්තය',
+ 'CI' => 'කෝට් දි අයිවරි',
+ 'CK' => 'කුක් දූපත්',
+ 'CL' => 'චිලී',
+ 'CM' => 'කැමරූන්',
+ 'CN' => 'චීනය',
+ 'CO' => 'කොළොම්බියාව',
+ 'CP' => 'ක්ලීපර්ටන් දූපත',
+ 'CR' => 'කොස්ටරිකාව',
+ 'CU' => 'කියුබාව',
+ 'CV' => 'කේප් වර්ඩ්',
+ 'CW' => 'කුරකාවෝ',
+ 'CX' => 'ක්‍රිස්මස් දූපත',
+ 'CY' => 'සයිප්‍රසය',
+ 'CZ' => 'චෙක් ජනරජය',
+ 'DE' => 'ජර්මනිය',
+ 'DG' => 'දියාගෝ ගාර්සියා',
+ 'DJ' => 'ජිබුටි',
+ 'DK' => 'ඩෙන්මාර්කය',
+ 'DM' => 'ඩොමිනිකාව',
+ 'DO' => 'ඩොමිනිකා ජනරජය',
+ 'DZ' => 'ඇල්ජීරියාව',
+ 'EA' => 'සෙයුටා සහ මෙලිල්ලා',
+ 'EC' => 'ඉක්වදෝරය',
+ 'EE' => 'එස්තෝනියාව',
+ 'EG' => 'ඊජිප්තුව',
+ 'EH' => 'බටහිර සහරාව',
+ 'ER' => 'එරිත්‍රියාව',
+ 'ES' => 'ස්පාඤ්ඤය',
+ 'ET' => 'ඉතියෝපියාව',
+ 'EU' => 'යුරෝපා සංගමය',
+ 'FI' => 'ෆින්ලන්තය',
+ 'FJ' => 'ෆීජී',
+ 'FK' => 'ෆෝක්ලන්ත දූපත්',
+ 'FM' => 'මයික්‍රොනීසියාව',
+ 'FO' => 'ෆැරෝ දූපත්',
+ 'FR' => 'ප්‍රංශය',
+ 'GA' => 'ගැබොන්',
+ 'GB' => 'එ.රා',
+ 'GD' => 'ග්‍රැනඩාව',
+ 'GE' => 'ජෝර්ජියාව',
+ 'GF' => 'ප්‍රංශ ගයනාව',
+ 'GG' => 'ගර්න්සිය',
+ 'GH' => 'ඝානාව',
+ 'GI' => 'ජිබ්‍රෝල්ටාව',
+ 'GL' => 'ග්‍රීන්ලන්තය',
+ 'GM' => 'ගැම්බියාව',
+ 'GN' => 'ගිණියාව',
+ 'GP' => 'ග්වෝඩලෝප්',
+ 'GQ' => 'සමක ගිනියාව',
+ 'GR' => 'ග්‍රීසිය',
+ 'GS' => 'දකුණු ජෝර්ජියාව සහ දකුණු සැන්ඩ්විච් දූපත්',
+ 'GT' => 'ගෝතමාලාව',
+ 'GU' => 'ගුවාම්',
+ 'GW' => 'ගිනි බිසව්',
+ 'GY' => 'ගයනාව',
+ 'HK' => 'හොංකොං',
+ 'HM' => 'හර්ඩ් දූපත සහ මැක්ඩොනල්ඩ් දූපත්',
+ 'HN' => 'හොන්ඩුරාස්',
+ 'HR' => 'ක්‍රොඒෂියාව',
+ 'HT' => 'හයිටි',
+ 'HU' => 'හන්ගේරියාව',
+ 'IC' => 'කැනරි සූපත්',
+ 'ID' => 'ඉන්දුනීසියාව',
+ 'IE' => 'අයර්ලන්තය',
+ 'IL' => 'ඊශ්‍රායලය',
+ 'IM' => 'අයිල් ඔෆ් මෑන්',
+ 'IN' => 'ඉන්දියාව',
+ 'IO' => 'බ්‍රිතාන්‍ය ඉන්දීය සාගර බල ප්‍රදේශය',
+ 'IQ' => 'ඉරාකය',
+ 'IR' => 'ඉරානය',
+ 'IS' => 'අයිස්ලන්තය',
+ 'IT' => 'ඉතාලිය',
+ 'JE' => 'ජර්සි',
+ 'JM' => 'ජැමෙයිකාව',
+ 'JO' => 'ජෝර්දානය',
+ 'JP' => 'ජපානය',
+ 'KE' => 'කෙන්යාව',
+ 'KG' => 'කිර්ගිස්තානය',
+ 'KH' => 'කාම්බෝජය',
+ 'KI' => 'කිරිබති',
+ 'KM' => 'කොමොරෝස්',
+ 'KN' => 'ශාන්ත කිට්ස් සහ නේවිස්',
+ 'KP' => 'උතුරු කොරියාව',
+ 'KR' => 'දකුණු කොරියාව',
+ 'KW' => 'කුවේටය',
+ 'KY' => 'කේමන් දූපත්',
+ 'KZ' => 'කසකස්තානය',
+ 'LA' => 'ලාඕසය',
+ 'LB' => 'ලෙබනනය',
+ 'LC' => 'ශාන්ත ලුසියා',
+ 'LI' => 'ලික්ටන්ස්ටයින්',
+ 'LK' => 'ශ්‍රී ලංකාව',
+ 'LR' => 'ලයිබීරියාව',
+ 'LS' => 'ලෙසතෝ',
+ 'LT' => 'ලිතුවේනියාව',
+ 'LU' => 'ලක්ශම්බර්ග්',
+ 'LV' => 'ලැට්වියාව',
+ 'LY' => 'ලිබියාව',
+ 'MA' => 'මොරොක්කෝව',
+ 'MC' => 'මොනැකෝව',
+ 'MD' => 'මොල්ඩෝවාව',
+ 'ME' => 'මොන්ටෙනීග්‍රෝ',
+ 'MF' => 'ශාන්ත මාර්ටින්',
+ 'MG' => 'මැඩගස්කරය',
+ 'MH' => 'මාෂල් දූපත්',
+ 'MK' => 'මැසිඩෝනියාව',
+ 'ML' => 'මාලි',
+ 'MM' => 'මියන්මාරය (බුරුමය)',
+ 'MN' => 'මොන්ගෝලියාව',
+ 'MO' => 'මකාවු',
+ 'MP' => 'උතුරු මරියානා දූපත්',
+ 'MQ' => 'මර්ටිනික්',
+ 'MR' => 'මොරිටේනියාව',
+ 'MS' => 'මොන්සෙරාට්',
+ 'MT' => 'මෝල්ටාව',
+ 'MU' => 'මුරුසිය',
+ 'MV' => 'මාල දිවයින',
+ 'MW' => 'මලාවි',
+ 'MX' => 'මෙක්සිකෝව',
+ 'MY' => 'මැලේසියාව',
+ 'MZ' => 'මොසැම්බික්',
+ 'NA' => 'නැමීබියාව',
+ 'NC' => 'නව කැලිඩෝනියාව',
+ 'NE' => 'නයිජර්',
+ 'NF' => 'නෝෆෝක් දූපත',
+ 'NG' => 'නයිජීරියාව',
+ 'NI' => 'නිකරගුවාව',
+ 'NL' => 'නෙදර්ලන්තය',
+ 'NO' => 'නෝර්වේ',
+ 'NP' => 'නේපාලය',
+ 'NR' => 'නාවුරු',
+ 'NU' => 'නියූ',
+ 'NZ' => 'නවසීලන්තය',
+ 'OM' => 'ඕමානය',
+ 'PA' => 'පැනමාව',
+ 'PE' => 'පේරු',
+ 'PF' => 'ප්‍රංශ පොලිනීසියාව',
+ 'PG' => 'පැපුවා නිව් ගිනියාව',
+ 'PH' => 'පිලිපීනය',
+ 'PK' => 'පාකිස්තානය',
+ 'PL' => 'පෝලන්තය',
+ 'PM' => 'ශාන්ත පියරේ සහ මැකෝලන්',
+ 'PN' => 'පිට්කෙය්න් දූපත්',
+ 'PR' => 'පුවර්ටෝ රිකෝ',
+ 'PS' => 'පලස්තීනය',
+ 'PT' => 'පෘතුගාලය',
+ 'PW' => 'පලාවු',
+ 'PY' => 'පැරගුවේ',
+ 'QA' => 'කටාර්',
+ 'QO' => 'ඈත ඕෂනියාව',
+ 'RE' => 'රීයුනියන්',
+ 'RO' => 'රුමේනියාව',
+ 'RS' => 'සර්බියාව',
+ 'RU' => 'රුසියාව',
+ 'RW' => 'රුවන්ඩාව',
+ 'SA' => 'සෞදි අරාබිය',
+ 'SB' => 'සොලමන් දූපත්',
+ 'SC' => 'සීශෙල්ස්',
+ 'SD' => 'සූඩානය',
+ 'SE' => 'ස්වීඩනය',
+ 'SG' => 'සිංගප්පූරුව',
+ 'SH' => 'ශාන්ත හෙලේනා',
+ 'SI' => 'ස්ලෝවේනියාව',
+ 'SJ' => 'ස්වෙල්බර්ඩ් සහ ජේන් මයේන්',
+ 'SK' => 'ස්ලෝවැකියාව',
+ 'SL' => 'සියරාලියෝන්',
+ 'SM' => 'සැන් මැරිනෝ',
+ 'SN' => 'සෙනගාලය',
+ 'SO' => 'සෝමාලියාව',
+ 'SR' => 'සුරිනාමය',
+ 'SS' => 'දකුණු සුඩානය',
+ 'ST' => 'සාඕ තෝම් සහ ප්‍රින්සිප්',
+ 'SV' => 'එල් සැල්වදෝරය',
+ 'SX' => 'ශාන්ත මාර්ටෙන්',
+ 'SY' => 'සිරියාව',
+ 'SZ' => 'ස්වාසිලන්තය',
+ 'TA' => 'ට්‍රිස්ටන් ද කුන්හා',
+ 'TC' => 'ටර්ක්ස් සහ කයිකොස් දූපත්',
+ 'TD' => 'චැච්',
+ 'TF' => 'දකුණු ප්‍රංශ දූපත් සමූහය',
+ 'TG' => 'ටොගෝ',
+ 'TH' => 'තායිලන්තය',
+ 'TJ' => 'ටජිකිස්තානය',
+ 'TK' => 'ටොකලාවු',
+ 'TL' => 'ටිමෝර් - ලෙස්ත්',
+ 'TM' => 'ටර්ක්මෙනිස්ථානය',
+ 'TN' => 'ටියුනීසියාව',
+ 'TO' => 'ටොංගා',
+ 'TR' => 'තුර්කිය',
+ 'TT' => 'ට්‍රිනිඩෑඩ් සහ ටොබැගෝ',
+ 'TV' => 'ටුවාලූ',
+ 'TW' => 'තායිවානය',
+ 'TZ' => 'ටැන්සානියාව',
+ 'UA' => 'යුක්රේනය',
+ 'UG' => 'උගන්ඩාව',
+ 'UM' => 'එක්සත් ජනපද ඈත දූපත්',
+ 'US' => 'එ.ජ',
+ 'UY' => 'උරුගුවේ',
+ 'UZ' => 'උස්බෙකිස්ථානය',
+ 'VA' => 'වතිකානු නගරය',
+ 'VC' => 'ශාන්ත වින්සන්ට් සහ ග්‍රෙනඩින්ස්',
+ 'VE' => 'වෙනිසියුලාව',
+ 'VG' => 'බ්‍රිතාන්‍ය වර්ජින් දූපත්',
+ 'VI' => 'ඇමරිකානු වර්ජින් දූපත්',
+ 'VN' => 'වියට්නාමය',
+ 'VU' => 'වනුවාටු',
+ 'WF' => 'වැලිස් සහ ෆුටුනා',
+ 'WS' => 'සැමෝවා',
+ 'XK' => 'කොසෝවෝ',
+ 'YE' => 'යේමනය',
+ 'YT' => 'මයෝට්',
+ 'ZA' => 'දකුණු අප්‍රිකාව',
+ 'ZM' => 'සැම්බියාව',
+ 'ZW' => 'සිම්බාබ්වේ',
+);
+
+$timeUnits = array(
+ 'day-future-one' => 'දින {0}න්',
+ 'day-future-other' => 'දින {0}න්',
+ 'day-narrow-future-one' => 'දින {0}න්',
+ 'day-narrow-future-other' => 'දින {0}න්',
+ 'day-narrow-past-one' => 'දින {0} ට පෙර',
+ 'day-narrow-past-other' => 'දින {0} ට පෙර',
+ 'day-one' => 'දින {0}',
+ 'day-other' => 'දින {0}',
+ 'day-past-one' => 'දින {0} ට පෙර',
+ 'day-past-other' => 'දින {0} ට පෙර',
+ 'day-short-future-one' => 'දින {0}න්',
+ 'day-short-future-other' => 'දින {0}න්',
+ 'day-short-past-one' => 'දින {0} ට පෙර',
+ 'day-short-past-other' => 'දින {0} ට පෙර',
+ 'hour-future-one' => 'පැය {0} කින්',
+ 'hour-future-other' => 'පැය {0} කින්',
+ 'hour-narrow-future-one' => 'පැය {0} කින්',
+ 'hour-narrow-future-other' => 'පැය {0} කින්',
+ 'hour-narrow-past-one' => 'පැය {0}ට පෙර',
+ 'hour-narrow-past-other' => 'පැය {0}ට පෙර',
+ 'hour-one' => 'පැය {0}',
+ 'hour-other' => 'පැය {0}',
+ 'hour-past-one' => 'පැය {0}ට පෙර',
+ 'hour-past-other' => 'පැය {0}ට පෙර',
+ 'hour-short-future-one' => 'පැය {0} කින්',
+ 'hour-short-future-other' => 'පැය {0} කින්',
+ 'hour-short-past-one' => 'පැය {0}ට පෙර',
+ 'hour-short-past-other' => 'පැය {0}ට පෙර',
+ 'microsecond-one' => 'මයික්‍රෝ තත්පර {0}',
+ 'microsecond-other' => 'මයික්‍රෝ තත්පර {0}',
+ 'millisecond-one' => 'මිලිතත්පර {0}',
+ 'millisecond-other' => 'මිලිතත්පර {0}',
+ 'minute-future-one' => 'මිනිත්තු {0} කින්',
+ 'minute-future-other' => 'මිනිත්තු {0} කින්',
+ 'minute-narrow-future-one' => 'මිනිත්තු {0} කින්',
+ 'minute-narrow-future-other' => 'මිනිත්තු {0} කින්',
+ 'minute-narrow-past-one' => 'මිනිත්තු {0}ට පෙර',
+ 'minute-narrow-past-other' => 'මිනිත්තු {0}ට පෙර',
+ 'minute-one' => 'මිනිත්තු {0}',
+ 'minute-other' => 'මිනිත්තු {0}',
+ 'minute-past-one' => 'මිනිත්තු {0}ට පෙර',
+ 'minute-past-other' => 'මිනිත්තු {0}ට පෙර',
+ 'minute-short-future-one' => 'මිනිත්තු {0} කින්',
+ 'minute-short-future-other' => 'මිනිත්තු {0} කින්',
+ 'minute-short-past-one' => 'මිනිත්තු {0}ට පෙර',
+ 'minute-short-past-other' => 'මිනිත්තු {0}ට පෙර',
+ 'month-future-one' => 'මාස {0}කින්',
+ 'month-future-other' => 'මාස {0}කින්',
+ 'month-narrow-future-one' => 'මාස {0}කින්',
+ 'month-narrow-future-other' => 'මාස {0}කින්',
+ 'month-narrow-past-one' => 'මාස {0}කට පෙර',
+ 'month-narrow-past-other' => 'මාස {0}කට පෙර',
+ 'month-one' => 'මාස {0}',
+ 'month-other' => 'මාස {0}',
+ 'month-past-one' => 'මාස {0}කට පෙර',
+ 'month-past-other' => 'මාස {0}කට පෙර',
+ 'month-short-future-one' => 'මාස {0}කින්',
+ 'month-short-future-other' => 'මාස {0}කින්',
+ 'month-short-past-one' => 'මාස {0}කට පෙර',
+ 'month-short-past-other' => 'මාස {0}කට පෙර',
+ 'nanosecond-one' => 'නැනෝතත්පර {0}',
+ 'nanosecond-other' => 'නැනෝතත්පර {0}',
+ 'quarter-future-one' => 'කාර්තුව {0} කින්',
+ 'quarter-future-other' => 'කාර්තුව {0} කින්',
+ 'quarter-narrow-future-one' => 'කාර්. {0} කින්',
+ 'quarter-narrow-future-other' => 'කාර්. {0} කින්',
+ 'quarter-narrow-past-one' => 'කාර්. {0} ට පෙර',
+ 'quarter-narrow-past-other' => 'කාර්. {0} ට පෙර',
+ 'quarter-past-one' => 'කාර්තුව {0} ට පෙර',
+ 'quarter-past-other' => 'කාර්තුව {0} ට පෙර',
+ 'quarter-short-future-one' => 'කාර්. {0} කින්',
+ 'quarter-short-future-other' => 'කාර්. {0} කින්',
+ 'quarter-short-past-one' => 'කාර්. {0} ට පෙර',
+ 'quarter-short-past-other' => 'කාර්. {0} ට පෙර',
+ 'second-future-one' => 'තත්පර {0} කින්',
+ 'second-future-other' => 'තත්පර {0} කින්',
+ 'second-narrow-future-one' => 'තත්පර {0} කින්',
+ 'second-narrow-future-other' => 'තත්පර {0} කින්',
+ 'second-narrow-past-one' => 'තත්පර {0}කට පෙර',
+ 'second-narrow-past-other' => 'තත්පර {0}කට පෙර',
+ 'second-one' => 'තත්පර {0}',
+ 'second-other' => 'තත්පර {0}',
+ 'second-past-one' => 'තත්පර {0}කට පෙර',
+ 'second-past-other' => 'තත්පර {0}කට පෙර',
+ 'second-short-future-one' => 'තත්පර {0} කින්',
+ 'second-short-future-other' => 'තත්පර {0} කින්',
+ 'second-short-past-one' => 'තත්පර {0}කට පෙර',
+ 'second-short-past-other' => 'තත්පර {0}කට පෙර',
+ 'week-future-one' => 'සති {0} කින්',
+ 'week-future-other' => 'සති {0} කින්',
+ 'week-narrow-future-one' => 'සති {0} කින්',
+ 'week-narrow-future-other' => 'සති {0} කින්',
+ 'week-narrow-past-one' => 'සති {0}කට පෙර',
+ 'week-narrow-past-other' => 'සති {0}කට පෙර',
+ 'week-one' => 'සති {0}',
+ 'week-other' => 'සති {0}',
+ 'week-past-one' => 'සති {0}කට පෙර',
+ 'week-past-other' => 'සති {0}කට පෙර',
+ 'week-short-future-one' => 'සති {0} කින්',
+ 'week-short-future-other' => 'සති {0} කින්',
+ 'week-short-past-one' => 'සති {0}කට පෙර',
+ 'week-short-past-other' => 'සති {0}කට පෙර',
+ 'year-future-one' => 'වසර {0} කින්',
+ 'year-future-other' => 'වසර {0} කින්',
+ 'year-narrow-future-one' => 'වසර {0} කින්',
+ 'year-narrow-future-other' => 'වසර {0} කින්',
+ 'year-narrow-past-one' => 'වසර {0}ට පෙර',
+ 'year-narrow-past-other' => 'වසර {0}ට පෙර',
+ 'year-one' => 'වසර {0}',
+ 'year-other' => 'වසර {0}',
+ 'year-past-one' => 'වසර {0}ට පෙර',
+ 'year-past-other' => 'වසර {0}ට පෙර',
+ 'year-short-future-one' => 'වසර {0} කින්',
+ 'year-short-future-other' => 'වසර {0} කින්',
+ 'year-short-past-one' => 'වසර {0}ට පෙර',
+ 'year-short-past-other' => 'වසර {0}ට පෙර',
+);
diff --git a/MLEB/cldr/CldrNames/CldrNamesSk.php b/MLEB/cldr/CldrNames/CldrNamesSk.php
new file mode 100644
index 00000000..0cb04e94
--- /dev/null
+++ b/MLEB/cldr/CldrNames/CldrNamesSk.php
@@ -0,0 +1,1435 @@
+<?php
+
+$languageNames = array(
+ 'aa' => 'afarčina',
+ 'ab' => 'abcházčina',
+ 'ace' => 'acehčina',
+ 'ach' => 'ačoli',
+ 'ada' => 'adangme',
+ 'ady' => 'adygčina',
+ 'ae' => 'avestčina',
+ 'af' => 'afrikánčina',
+ 'afh' => 'afrihili',
+ 'agq' => 'aghem',
+ 'ain' => 'ainčina',
+ 'ak' => 'akančina',
+ 'akk' => 'akkadčina',
+ 'ale' => 'aleutčina',
+ 'alt' => 'južná altajčina',
+ 'am' => 'amharčina',
+ 'an' => 'aragónčina',
+ 'ang' => 'stará angličtina',
+ 'anp' => 'angika',
+ 'ar' => 'arabčina',
+ 'ar-001' => 'arabčina (moderná štandardná)',
+ 'arc' => 'aramejčina',
+ 'arn' => 'araukánčina',
+ 'arp' => 'arapaho',
+ 'arw' => 'arawačtina',
+ 'as' => 'ásamčina',
+ 'asa' => 'asu',
+ 'ast' => 'astúrčina',
+ 'av' => 'avarčina',
+ 'awa' => 'avadhčina',
+ 'ay' => 'aymarčina',
+ 'az' => 'azerbajdžančina',
+ 'ba' => 'baškirčina',
+ 'bal' => 'balúčtina',
+ 'ban' => 'balijčina',
+ 'bas' => 'basa',
+ 'bax' => 'bamun',
+ 'bbj' => 'ghomala',
+ 'be' => 'bieloruština',
+ 'bej' => 'bedža',
+ 'bem' => 'bemba',
+ 'bez' => 'bena',
+ 'bfd' => 'bafut',
+ 'bg' => 'bulharčina',
+ 'bho' => 'bhódžpurčina',
+ 'bi' => 'bislama',
+ 'bik' => 'bikol',
+ 'bin' => 'bini',
+ 'bkm' => 'kom',
+ 'bla' => 'siksika',
+ 'bm' => 'bambarčina',
+ 'bn' => 'bengálčina',
+ 'bo' => 'tibetčina',
+ 'br' => 'bretónčina',
+ 'bra' => 'bradžčina',
+ 'brx' => 'bodo',
+ 'bs' => 'bosniačtina',
+ 'bss' => 'akoose',
+ 'bua' => 'buriatčina',
+ 'bug' => 'bugiština',
+ 'bum' => 'bulu',
+ 'byn' => 'blin',
+ 'byv' => 'medumba',
+ 'ca' => 'katalánčina',
+ 'cad' => 'kaddo',
+ 'car' => 'karibský',
+ 'cay' => 'cayuga',
+ 'cch' => 'atsam',
+ 'ce' => 'čečenčina',
+ 'ceb' => 'cebuánčina',
+ 'cgg' => 'kiga',
+ 'ch' => 'čamorčina',
+ 'chb' => 'čibča',
+ 'chg' => 'čagatajčina',
+ 'chk' => 'truk',
+ 'chm' => 'marijčina',
+ 'chn' => 'činucký žargón',
+ 'cho' => 'čoktavčina',
+ 'chp' => 'čipevajčina',
+ 'chr' => 'čerokí',
+ 'chy' => 'čejenčina',
+ 'ckb' => 'kurdčina (sorání)',
+ 'co' => 'korzičtina',
+ 'cop' => 'koptčina',
+ 'cr' => 'krí',
+ 'crh' => 'krymská turečtina',
+ 'cs' => 'čeština',
+ 'csb' => 'kašubčina',
+ 'cu' => 'cirkevná slovančina',
+ 'cv' => 'čuvaština',
+ 'cy' => 'waleština',
+ 'da' => 'dánčina',
+ 'dak' => 'dakotčina',
+ 'dar' => 'darginčina',
+ 'dav' => 'taita',
+ 'de' => 'nemčina',
+ 'de-at' => 'nemčina (rakúska)',
+ 'de-ch' => 'nemčina (švajčiarska spisovná)',
+ 'del' => 'delawarčina',
+ 'den' => 'slovančina',
+ 'dgr' => 'dogribčina',
+ 'din' => 'dinka',
+ 'dje' => 'zarma',
+ 'doi' => 'dógrí',
+ 'dsb' => 'dolnolužická srbčina',
+ 'dua' => 'duala',
+ 'dum' => 'stredná holandčina',
+ 'dv' => 'divehi',
+ 'dyo' => 'jola-fonyi',
+ 'dyu' => 'ďula',
+ 'dz' => 'dzongkä',
+ 'dzg' => 'dazaga',
+ 'ebu' => 'embu',
+ 'ee' => 'ewe',
+ 'efi' => 'efik',
+ 'egy' => 'staroegyptský',
+ 'eka' => 'ekadžuk',
+ 'el' => 'gréčtina',
+ 'elx' => 'elamčina',
+ 'en' => 'angličtina',
+ 'en-au' => 'angličtina (austrálska)',
+ 'en-ca' => 'angličtina (kanadská)',
+ 'en-gb' => 'angličtina (britská)',
+ 'en-us' => 'angličtina (americká)',
+ 'enm' => 'stredná angličtina',
+ 'eo' => 'esperanto',
+ 'es' => 'španielčina',
+ 'es-419' => 'španielčina (latinskoamerická)',
+ 'es-es' => 'španielčina (európska)',
+ 'es-mx' => 'španielčina (mexická)',
+ 'et' => 'estónčina',
+ 'eu' => 'baskičtina',
+ 'ewo' => 'ewondo',
+ 'fa' => 'perzština',
+ 'fan' => 'fangčina',
+ 'fat' => 'fanti',
+ 'ff' => 'fulbčina',
+ 'fi' => 'fínčina',
+ 'fil' => 'filipínčina',
+ 'fj' => 'fidžijčina',
+ 'fo' => 'faerčina',
+ 'fon' => 'fončina',
+ 'fr' => 'francúzština',
+ 'fr-ca' => 'francúzština (kanadská)',
+ 'fr-ch' => 'francúzština (švajčiarska)',
+ 'frm' => 'stredná francúzština',
+ 'fro' => 'stará francúzština',
+ 'frr' => 'severná frízština',
+ 'frs' => 'východná frízština',
+ 'fur' => 'friulčina',
+ 'fy' => 'západná frízština',
+ 'ga' => 'írčina',
+ 'gaa' => 'ga',
+ 'gag' => 'gagauzština',
+ 'gay' => 'gayo',
+ 'gba' => 'gbaja',
+ 'gd' => 'škótska gaelčina',
+ 'gez' => 'etiópčina',
+ 'gil' => 'kiribatčina',
+ 'gl' => 'galícijčina',
+ 'gmh' => 'stredná horná nemčina',
+ 'gn' => 'guaraní',
+ 'goh' => 'stará horná nemčina',
+ 'gon' => 'góndčina',
+ 'gor' => 'gorontalo',
+ 'got' => 'gótčina',
+ 'grb' => 'grebo',
+ 'grc' => 'starogréčtina',
+ 'gsw' => 'nemčina (švajčiarska)',
+ 'gu' => 'gudžarátčina',
+ 'guz' => 'gusii',
+ 'gv' => 'mančina',
+ 'gwi' => 'gwichʼin',
+ 'ha' => 'hauština',
+ 'hai' => 'haida',
+ 'haw' => 'havajčina',
+ 'he' => 'hebrejčina',
+ 'hi' => 'hindčina',
+ 'hil' => 'hiligajnončina',
+ 'hit' => 'chetitčina',
+ 'hmn' => 'hmong',
+ 'ho' => 'hiri motu',
+ 'hr' => 'chorvátčina',
+ 'hsb' => 'hornolužická srbčina',
+ 'ht' => 'haitčina',
+ 'hu' => 'maďarčina',
+ 'hup' => 'hupčina',
+ 'hy' => 'arménčina',
+ 'hz' => 'herero',
+ 'ia' => 'interlingua',
+ 'iba' => 'ibančina',
+ 'ibb' => 'ibibio',
+ 'id' => 'indonézština',
+ 'ie' => 'interlingue',
+ 'ig' => 'igboština',
+ 'ii' => 's’čchuanská ioština',
+ 'ik' => 'inupiaq',
+ 'ilo' => 'ilokánčina',
+ 'inh' => 'inguština',
+ 'io' => 'ido',
+ 'is' => 'islandčina',
+ 'it' => 'taliančina',
+ 'iu' => 'inuktitut',
+ 'ja' => 'japončina',
+ 'jbo' => 'lojban',
+ 'jgo' => 'ngomba',
+ 'jmc' => 'mašame',
+ 'jpr' => 'židovská perzština',
+ 'jrb' => 'židovská arabčina',
+ 'jv' => 'jávčina',
+ 'ka' => 'gruzínčina',
+ 'kaa' => 'karakalpačtina',
+ 'kab' => 'kabylčina',
+ 'kac' => 'kačjinčina',
+ 'kaj' => 'jju',
+ 'kam' => 'kamba',
+ 'kaw' => 'kawi',
+ 'kbd' => 'kabardčina',
+ 'kbl' => 'kanembu',
+ 'kcg' => 'tyap',
+ 'kde' => 'makonde',
+ 'kea' => 'kapverdčina',
+ 'kfo' => 'koro',
+ 'kg' => 'kongčina',
+ 'kha' => 'khasijčina',
+ 'kho' => 'chotančina',
+ 'khq' => 'západná songhajčina',
+ 'ki' => 'kikujčina',
+ 'kj' => 'kuaňama',
+ 'kk' => 'kazaština',
+ 'kkj' => 'kako',
+ 'kl' => 'grónčina',
+ 'kln' => 'kalendžin',
+ 'km' => 'khmérčina',
+ 'kmb' => 'kimbundu',
+ 'kn' => 'kannadčina',
+ 'ko' => 'kórejčina',
+ 'koi' => 'komi-permiačtina',
+ 'kok' => 'konkánčina',
+ 'kos' => 'kusaie',
+ 'kpe' => 'kpelle',
+ 'kr' => 'kanurijčina',
+ 'krc' => 'karačajevsko-balkarský jazyk',
+ 'krl' => 'karelčina',
+ 'kru' => 'kurukhčina',
+ 'ks' => 'kašmírčina',
+ 'ksb' => 'šambala',
+ 'ksf' => 'bafia',
+ 'ksh' => 'kolínčina',
+ 'ku' => 'kurdčina',
+ 'kum' => 'kumyčtina',
+ 'kut' => 'kutenajčina',
+ 'kv' => 'komijčina',
+ 'kw' => 'kornčina',
+ 'ky' => 'kirgizština',
+ 'la' => 'latinčina',
+ 'lad' => 'židovská španielčina',
+ 'lag' => 'langi',
+ 'lah' => 'lahandčina',
+ 'lam' => 'lamba',
+ 'lb' => 'luxemburčina',
+ 'lez' => 'lezginčina',
+ 'lg' => 'gandčina',
+ 'li' => 'limburčina',
+ 'lkt' => 'lakotčina',
+ 'ln' => 'lingalčina',
+ 'lo' => 'laoština',
+ 'lol' => 'mongo',
+ 'loz' => 'lozi',
+ 'lt' => 'litovčina',
+ 'lu' => 'luba-katanga',
+ 'lua' => 'luba-luluánčina',
+ 'lui' => 'luiseňo',
+ 'lun' => 'lunda',
+ 'luo' => 'luo',
+ 'lus' => 'mizorámčina',
+ 'luy' => 'luhja',
+ 'lv' => 'lotyština',
+ 'mad' => 'madurčina',
+ 'maf' => 'mafa',
+ 'mag' => 'magadhčina',
+ 'mai' => 'maithilčina',
+ 'mak' => 'makasarčina',
+ 'man' => 'mandingo',
+ 'mas' => 'masajčina',
+ 'mde' => 'maba',
+ 'mdf' => 'mokšiančina',
+ 'mdr' => 'mandarčina',
+ 'men' => 'mendi',
+ 'mer' => 'meru',
+ 'mfe' => 'maurícijská kreolčina',
+ 'mg' => 'malgaština',
+ 'mga' => 'stredná írčina',
+ 'mgh' => 'makua-meetto',
+ 'mgo' => 'meta’',
+ 'mh' => 'kajin-majol',
+ 'mi' => 'maorijčina',
+ 'mic' => 'mikmakčina',
+ 'min' => 'minangkabaučina',
+ 'mk' => 'macedónčina',
+ 'ml' => 'malajálamčina',
+ 'mn' => 'mongolčina',
+ 'mnc' => 'mandžuština',
+ 'mni' => 'manípurčina',
+ 'moh' => 'mohawkčina',
+ 'mos' => 'mossi',
+ 'mr' => 'maráthčina',
+ 'ms' => 'malajčina',
+ 'mt' => 'maltčina',
+ 'mua' => 'mundang',
+ 'mul' => 'viaceré jazyky',
+ 'mus' => 'kríkčina',
+ 'mwl' => 'mirandčina',
+ 'mwr' => 'marawari',
+ 'my' => 'barmčina',
+ 'mye' => 'myene',
+ 'myv' => 'erzjančina',
+ 'na' => 'nauru',
+ 'nap' => 'neapolčina',
+ 'naq' => 'nama',
+ 'nb' => 'nórsky bokmål',
+ 'nd' => 'severné ndebele',
+ 'nds' => 'dolná nemčina',
+ 'ne' => 'nepálčina',
+ 'new' => 'nevárčina',
+ 'ng' => 'ndonga',
+ 'nia' => 'niasánčina',
+ 'niu' => 'niueština',
+ 'nl' => 'holandčina',
+ 'nl-be' => 'flámčina',
+ 'nmg' => 'kwasio',
+ 'nn' => 'nórsky nynorsk',
+ 'nnh' => 'ngiemboon',
+ 'no' => 'nórčina',
+ 'nog' => 'nogajčina',
+ 'non' => 'stará nórčina',
+ 'nqo' => 'n’ko',
+ 'nr' => 'južná ndebelčina',
+ 'nso' => 'severná sothčina',
+ 'nus' => 'nuer',
+ 'nv' => 'navajo',
+ 'nwc' => 'klasická nevárčina',
+ 'ny' => 'čewa',
+ 'nym' => 'ňamwezi',
+ 'nyn' => 'ňankole',
+ 'nyo' => 'ňoro',
+ 'nzi' => 'nzima',
+ 'oc' => 'okcitánčina',
+ 'oj' => 'odžibva',
+ 'om' => 'oromčina',
+ 'or' => 'uríjčina',
+ 'os' => 'osetčina',
+ 'osa' => 'osagčina',
+ 'ota' => 'osmanská turečtina',
+ 'pa' => 'pandžábčina',
+ 'pag' => 'pangasinančina',
+ 'pal' => 'pahlaví',
+ 'pam' => 'pampanga',
+ 'pap' => 'papiamento',
+ 'pau' => 'palaučina',
+ 'peo' => 'stará perzština',
+ 'phn' => 'feničtina',
+ 'pi' => 'pálí',
+ 'pl' => 'poľština',
+ 'pon' => 'pohnpeičina',
+ 'pro' => 'stará okcitánčina',
+ 'ps' => 'paštčina',
+ 'pt' => 'portugalčina',
+ 'pt-br' => 'portugalčina (brazílska)',
+ 'pt-pt' => 'portugalčina (európska)',
+ 'qu' => 'kečuánčina',
+ 'quc' => 'kʼicheʼ',
+ 'raj' => 'radžastančina',
+ 'rap' => 'rapanujčina',
+ 'rar' => 'rarotongan',
+ 'rm' => 'rétorománčina',
+ 'rn' => 'kirundčina',
+ 'ro' => 'rumunčina',
+ 'ro-md' => 'moldavčina',
+ 'rof' => 'rombo',
+ 'rom' => 'rómčina',
+ 'ru' => 'ruština',
+ 'rup' => 'arumunčina',
+ 'rw' => 'kiňarwanda',
+ 'rwk' => 'rwa',
+ 'sa' => 'sanskrit',
+ 'sad' => 'sandawe',
+ 'sah' => 'jakutčina',
+ 'sam' => 'samaritánska aramejčina',
+ 'saq' => 'samburu',
+ 'sas' => 'sasačtina',
+ 'sat' => 'santalčina',
+ 'sba' => 'ngambay',
+ 'sbp' => 'sangu',
+ 'sc' => 'sardínčina',
+ 'scn' => 'sicílčina',
+ 'sco' => 'škótčina',
+ 'sd' => 'sindhčina',
+ 'se' => 'severné sami',
+ 'see' => 'seneca',
+ 'seh' => 'sena',
+ 'sel' => 'selkupčina',
+ 'ses' => 'koyraboro senni',
+ 'sg' => 'sango',
+ 'sga' => 'stará írčina',
+ 'sh' => 'srbochorvátčina',
+ 'shi' => 'tachelhit',
+ 'shn' => 'šančina',
+ 'shu' => 'čadská arabčina',
+ 'si' => 'sinhalčina',
+ 'sid' => 'sidamo',
+ 'sk' => 'slovenčina',
+ 'sl' => 'slovinčina',
+ 'sm' => 'samojčina',
+ 'sma' => 'južné sami',
+ 'smj' => 'sami (lule)',
+ 'smn' => 'sami (inari)',
+ 'sms' => 'sami (skolt)',
+ 'sn' => 'šončina',
+ 'snk' => 'soninke',
+ 'so' => 'somálčina',
+ 'sog' => 'sogdijčina',
+ 'sq' => 'albánčina',
+ 'sr' => 'srbčina',
+ 'srn' => 'sranan',
+ 'srr' => 'serer',
+ 'ss' => 'svazijčina',
+ 'ssy' => 'saho',
+ 'st' => 'južná sothčina',
+ 'su' => 'sundčina',
+ 'suk' => 'sukuma',
+ 'sus' => 'susu',
+ 'sux' => 'sumerčina',
+ 'sv' => 'švédčina',
+ 'sw' => 'svahilčina',
+ 'swb' => 'komorčina',
+ 'swc' => 'svahilčina (konžská)',
+ 'syc' => 'klasická sýrčina',
+ 'syr' => 'sýrčina',
+ 'ta' => 'tamilčina',
+ 'te' => 'telugčina',
+ 'tem' => 'temne',
+ 'teo' => 'teso',
+ 'ter' => 'tereno',
+ 'tet' => 'tetum',
+ 'tg' => 'tadžičtina',
+ 'th' => 'thajčina',
+ 'ti' => 'tigriňa',
+ 'tig' => 'tigrejčina',
+ 'tiv' => 'tiv',
+ 'tk' => 'turkménčina',
+ 'tkl' => 'tokelaučina',
+ 'tl' => 'tagalčina',
+ 'tlh' => 'klingónčina',
+ 'tli' => 'tlingitčina',
+ 'tmh' => 'tamašek',
+ 'tn' => 'tswančina',
+ 'to' => 'tongčina',
+ 'tog' => 'ňasa tonga',
+ 'tpi' => 'tok pisin',
+ 'tr' => 'turečtina',
+ 'trv' => 'taroko',
+ 'ts' => 'tsonga',
+ 'tsi' => 'tsimshijské jazyky',
+ 'tt' => 'tatárčina',
+ 'tum' => 'tumbuka',
+ 'tvl' => 'tuvalčina',
+ 'tw' => 'twi',
+ 'twq' => 'tasawaq',
+ 'ty' => 'tahitčina',
+ 'tyv' => 'tuviančina',
+ 'tzm' => 'tamašek (stredomarocký)',
+ 'udm' => 'udmurtčina',
+ 'ug' => 'ujgurčina',
+ 'uga' => 'ugaritčina',
+ 'uk' => 'ukrajinčina',
+ 'umb' => 'umbundu',
+ 'und' => 'neznámy jazyk',
+ 'ur' => 'urdčina',
+ 'uz' => 'uzbečtina',
+ 'vai' => 'vai',
+ 've' => 'vendčina',
+ 'vi' => 'vietnamčina',
+ 'vo' => 'volapük',
+ 'vot' => 'vodčina',
+ 'vun' => 'vunjo',
+ 'wa' => 'valónčina',
+ 'wae' => 'walserčina',
+ 'wal' => 'walamo',
+ 'war' => 'waray',
+ 'was' => 'washo',
+ 'wo' => 'wolof',
+ 'xal' => 'kalmyčtina',
+ 'xh' => 'xhosa',
+ 'xog' => 'soga',
+ 'yao' => 'jao',
+ 'yap' => 'japčina',
+ 'yav' => 'jangben',
+ 'ybb' => 'yemba',
+ 'yi' => 'jidiš',
+ 'yo' => 'jorubčina',
+ 'yue' => 'kantončina',
+ 'za' => 'čuangčina',
+ 'zap' => 'zapotéčtina',
+ 'zbl' => 'systém Bliss',
+ 'zen' => 'zenaga',
+ 'zgh' => 'tamašek (štandardný marocký)',
+ 'zh' => 'čínština',
+ 'zh-hans' => 'čínština (zjednodušená)',
+ 'zh-hant' => 'čínština (tradičná)',
+ 'zu' => 'zuluština',
+ 'zun' => 'zuniština',
+ 'zxx' => 'bez jazykového obsahu',
+ 'zza' => 'zázá',
+);
+
+$currencyNames = array(
+ 'ADP' => 'Andorská peseta',
+ 'AED' => 'SAE dirham',
+ 'AFN' => 'afganský afgání',
+ 'ALL' => 'albánsky lek',
+ 'AMD' => 'arménsky dram',
+ 'ANG' => 'antilský gulden',
+ 'AOA' => 'angolská kwanza',
+ 'AOK' => 'Angolská kwanza (1977–1990)',
+ 'AON' => 'Angolská nová kwanza (1990–2000)',
+ 'AOR' => 'Angolská kwanza Reajustado (1995–1999)',
+ 'ARA' => 'Argentinský austral',
+ 'ARP' => 'Argentinské peso (1983–1985)',
+ 'ARS' => 'argentínske peso',
+ 'ATS' => 'Rakúsky šiling',
+ 'AUD' => 'austrálsky dolár',
+ 'AWG' => 'arubský gulden',
+ 'AZM' => 'Azerbajdžanský manat (1993–2006)',
+ 'AZN' => 'azerbajdžanský manat',
+ 'BAD' => 'Bosnianský dinár',
+ 'BAM' => 'konvertibilná marka',
+ 'BBD' => 'barbadoský dolár',
+ 'BDT' => 'bangladéšska taka',
+ 'BEC' => 'Belgický frank (konvertibilný)',
+ 'BEF' => 'Belgický frank',
+ 'BEL' => 'Belgický frank (finančný)',
+ 'BGL' => 'Bulharský leva',
+ 'BGN' => 'bulharský lev',
+ 'BHD' => 'bahrajnský dinár',
+ 'BIF' => 'burundský frank',
+ 'BMD' => 'bermudský dolár',
+ 'BND' => 'brunejský dolár',
+ 'BOB' => 'bolívijské boliviano',
+ 'BOP' => 'Bolivíjske peso',
+ 'BOV' => 'Bolivíjske mvdol',
+ 'BRB' => 'Bolivíjske Cruzeiro Novo (1967–1986)',
+ 'BRC' => 'Bolivíjske cruzado',
+ 'BRE' => 'Bolivíjske cruzeiro (1990–1993)',
+ 'BRL' => 'brazílsky real',
+ 'BRN' => 'Brazílske Cruzado Novo',
+ 'BRR' => 'Brazílske cruzeiro',
+ 'BSD' => 'bahamský dolár',
+ 'BTN' => 'bhutánsky ngultrum',
+ 'BUK' => 'Burmese Kyat',
+ 'BWP' => 'botswanská pula',
+ 'BYB' => 'Bieloruský nový rubeľ (1994–1999)',
+ 'BYR' => 'bieloruský rubeľ',
+ 'BZD' => 'belizský dolár',
+ 'CAD' => 'kanadský dolár',
+ 'CDF' => 'konžský frank',
+ 'CHF' => 'švajčiarsky frank',
+ 'CLF' => 'Čílske Unidades de Fomento',
+ 'CLP' => 'čilské peso',
+ 'CNY' => 'čínsky jüan',
+ 'COP' => 'kolumbijské peso',
+ 'CRC' => 'kostarický colón',
+ 'CSK' => 'Československá koruna',
+ 'CUC' => 'kubánske konvertibilné peso',
+ 'CUP' => 'kubánske peso',
+ 'CVE' => 'kapverdské escudo',
+ 'CYP' => 'Cypruská libra',
+ 'CZK' => 'česká koruna',
+ 'DDM' => 'Východonemecká marka',
+ 'DEM' => 'Nemecká marka',
+ 'DJF' => 'džibutský frank',
+ 'DKK' => 'dánska koruna',
+ 'DOP' => 'dominikánske peso',
+ 'DZD' => 'alžírsky dinár',
+ 'ECS' => 'Ekuadorský sucre',
+ 'ECV' => 'Ekuadorský Unidad de Valor Constante (UVC)',
+ 'EEK' => 'Estónska kroon',
+ 'EGP' => 'egyptská libra',
+ 'ERN' => 'eritrejská nakfa',
+ 'ESP' => 'Španielská peseta',
+ 'ETB' => 'etiópsky birr',
+ 'EUR' => 'euro',
+ 'FIM' => 'Finská marka',
+ 'FJD' => 'fidžijský dolár',
+ 'FKP' => 'falklandská libra',
+ 'FRF' => 'Francúzsky frank',
+ 'GBP' => 'britská libra',
+ 'GEK' => 'Gruzínsky Kupon Larit',
+ 'GEL' => 'gruzínske lari',
+ 'GHC' => 'Ghanský cedi (1979–2007)',
+ 'GHS' => 'ghanské cedi',
+ 'GIP' => 'gibraltárska libra',
+ 'GMD' => 'gambijské dalasi',
+ 'GNF' => 'guinejský frank',
+ 'GNS' => 'Guinejský syli',
+ 'GQE' => 'Rovníková Guinea Ekwele Guineana',
+ 'GRD' => 'Grécka drachma',
+ 'GTQ' => 'guatemalský quetzal',
+ 'GWE' => 'Portugalská Guinea eskudo',
+ 'GWP' => 'Guinejsko-bissauské peso',
+ 'GYD' => 'guyanský dolár',
+ 'HKD' => 'hongkonský dolár',
+ 'HNL' => 'honduraská lempira',
+ 'HRD' => 'Chorvátsky dinár',
+ 'HRK' => 'chorvátska kuna',
+ 'HTG' => 'haitské gourde',
+ 'HUF' => 'maďarský forint',
+ 'IDR' => 'indonézska rupia',
+ 'IEP' => 'Írska libra',
+ 'ILP' => 'Izraelská libra',
+ 'ILS' => 'izraelský šekel',
+ 'INR' => 'indická rupia',
+ 'IQD' => 'iracký dinár',
+ 'IRR' => 'iránsky rial',
+ 'ISK' => 'islandská koruna',
+ 'ITL' => 'Talianská lira',
+ 'JMD' => 'jamajský dolár',
+ 'JOD' => 'jordánsky dinár',
+ 'JPY' => 'japonský jen',
+ 'KES' => 'kenský šiling',
+ 'KGS' => 'kirgizský som',
+ 'KHR' => 'kambodžský riel',
+ 'KMF' => 'komorský frank',
+ 'KPW' => 'severokórejský won',
+ 'KRW' => 'juhokórejský won',
+ 'KWD' => 'kuvajtský dinár',
+ 'KYD' => 'kajmanský dolár',
+ 'KZT' => 'kazašské tenge',
+ 'LAK' => 'laoský kip',
+ 'LBP' => 'libanonská libra',
+ 'LKR' => 'srílanská rupia',
+ 'LRD' => 'libérijský dolár',
+ 'LSL' => 'Lesothský loti',
+ 'LTL' => 'litovský litas',
+ 'LTT' => 'Litevský talonas',
+ 'LUF' => 'Luxemburský frank',
+ 'LVL' => 'Lotyšský lat',
+ 'LVR' => 'Lotyšský rubeľ',
+ 'LYD' => 'líbyjský dinár',
+ 'MAD' => 'marocký dirham',
+ 'MAF' => 'Marocký frank',
+ 'MDL' => 'moldavský lei',
+ 'MGA' => 'malgašský ariary',
+ 'MGF' => 'Madagaskarský frank',
+ 'MKD' => 'macedónsky denár',
+ 'MLF' => 'Malský frank',
+ 'MMK' => 'mjanmarský kyat',
+ 'MNT' => 'mongolský tugrik',
+ 'MOP' => 'macajská pataca',
+ 'MRO' => 'mauritánska ukija',
+ 'MTL' => 'Maltská lira',
+ 'MTP' => 'Maltská libra',
+ 'MUR' => 'maurícijská rupia',
+ 'MVR' => 'maldivská rupia',
+ 'MWK' => 'malawijská kwacha',
+ 'MXN' => 'mexické peso',
+ 'MXP' => 'Mexické striborné peso (1861–1992)',
+ 'MXV' => 'Mexické Unidad de Inversion (UDI)',
+ 'MYR' => 'malajzijský ringgit',
+ 'MZE' => 'Mozambické escudo',
+ 'MZM' => 'Mozambický metical (1980–2006)',
+ 'MZN' => 'mozambický metical',
+ 'NAD' => 'namíbijský dolár',
+ 'NGN' => 'nigérijská naira',
+ 'NIC' => 'Nikaragujská Cordoba (1988–1991)',
+ 'NIO' => 'nikaragujská córdoba',
+ 'NLG' => 'Nizozemský guilder',
+ 'NOK' => 'nórska koruna',
+ 'NPR' => 'nepálska rupia',
+ 'NZD' => 'novozélandský dolár',
+ 'OMR' => 'ománsky rial',
+ 'PAB' => 'panamská balboa',
+ 'PEI' => 'Peruvský inti',
+ 'PEN' => 'peruánsky nový sol',
+ 'PES' => 'Peruvský sol',
+ 'PGK' => 'papuánska kina',
+ 'PHP' => 'filipínske peso',
+ 'PKR' => 'pakistanská rupia',
+ 'PLN' => 'poľský zlotý',
+ 'PLZ' => 'Polský zloty (1950–1995)',
+ 'PTE' => 'Portugalské eskudo',
+ 'PYG' => 'paraguajské guaraní',
+ 'QAR' => 'katarský rial',
+ 'ROL' => 'Rumunský leu (1952–2006)',
+ 'RON' => 'rumunský lei',
+ 'RSD' => 'srbský dinár',
+ 'RUB' => 'ruský rubeľ',
+ 'RUR' => 'Ruský rubeľ (1991–1998)',
+ 'RWF' => 'rwandský frank',
+ 'SAR' => 'saudskoarabský rial',
+ 'SBD' => 'šalamúnsky dolár',
+ 'SCR' => 'seychelská rupia',
+ 'SDD' => 'Sudánsky dinár',
+ 'SDG' => 'sudánska libra',
+ 'SDP' => 'Sudánska libra (1957–1998)',
+ 'SEK' => 'švédska koruna',
+ 'SGD' => 'singapurský dolár',
+ 'SHP' => 'svätohelenská libra',
+ 'SIT' => 'Slovinský Tolar',
+ 'SKK' => 'Slovenská koruna',
+ 'SLL' => 'sierraleonský leone',
+ 'SOS' => 'somálsky šiling',
+ 'SRD' => 'surinamský dolár',
+ 'SRG' => 'Surinamský guilder',
+ 'SSP' => 'juhosudánska libra',
+ 'STD' => 'svätotomášska dobra',
+ 'SUR' => 'Sovietsky rubeľ',
+ 'SVC' => 'Salvádorský colón',
+ 'SYP' => 'sýrska libra',
+ 'SZL' => 'svazijské lilangeni',
+ 'THB' => 'thajský baht',
+ 'TJR' => 'Tadžický rubeľ',
+ 'TJS' => 'tadžické somoni',
+ 'TMM' => 'Turkménsky manat (1993–2009)',
+ 'TMT' => 'turkménsky manat',
+ 'TND' => 'tuniský dinár',
+ 'TOP' => 'tongská paʻanga',
+ 'TPE' => 'Timorské eskudo',
+ 'TRL' => 'Turecká lira (1922–2005)',
+ 'TRY' => 'turecká líra',
+ 'TTD' => 'trinidadsko-tobažský dolár',
+ 'TWD' => 'nový taiwanský dolár',
+ 'TZS' => 'tanzánsky šiling',
+ 'UAH' => 'ukrajinská hrivna',
+ 'UAK' => 'Ukrainský karbovanetz',
+ 'UGS' => 'Ugandan šiling (1966–1987)',
+ 'UGX' => 'ugandský šiling',
+ 'USD' => 'americký dolár',
+ 'USN' => 'US dolár (Next day)',
+ 'USS' => 'US dolár (Same day)',
+ 'UYP' => 'Uruguajské peso (1975–1993)',
+ 'UYU' => 'uruguajské peso',
+ 'UZS' => 'uzbecký sum',
+ 'VEB' => 'Venezuelský bolívar (1871–2008)',
+ 'VEF' => 'venezuelský bolívar',
+ 'VND' => 'vietnamský dong',
+ 'VUV' => 'vanuatské vatu',
+ 'WST' => 'samojská tala',
+ 'XAF' => 'stredoafrický frank',
+ 'XAU' => 'Zlato',
+ 'XCD' => 'východokaribský dolár',
+ 'XDR' => 'Špeciálne práva čerpania',
+ 'XFO' => 'Francúzsky zlatý frank',
+ 'XFU' => 'Francúzsky UIC-frank',
+ 'XOF' => 'západoafrický frank',
+ 'XPF' => 'CFP frank',
+ 'XXX' => 'neznáma mena',
+ 'YDD' => 'Jemenský dinár',
+ 'YER' => 'jemenský rial',
+ 'YUD' => 'Juhoslávsky dinár [YUD]',
+ 'YUM' => 'Juhoslávsky Noviy dinár',
+ 'YUN' => 'Juhoslávsky dinár',
+ 'ZAL' => 'Juhoafrický rand (financial)',
+ 'ZAR' => 'juhoafrický rand',
+ 'ZMK' => 'Zambijská kwacha (1968–2012)',
+ 'ZMW' => 'zambijská kwacha',
+ 'ZRN' => 'Zairský nový zaire',
+ 'ZRZ' => 'Zairský Zaire',
+ 'ZWD' => 'Zimbabwiansky dolár (1980–2008)',
+ 'ZWL' => 'Zimbabwiansky dolár (2009)',
+ 'ZWR' => 'Zimbabwiansky dolár (2008)',
+);
+
+$currencySymbols = array(
+ 'AED' => 'AED',
+ 'AFN' => 'AFN',
+ 'ALL' => 'ALL',
+ 'AMD' => 'AMD',
+ 'ANG' => 'ANG',
+ 'AOA' => 'AOA',
+ 'ARS' => 'ARS',
+ 'AUD' => 'AUD',
+ 'AWG' => 'AWG',
+ 'AZN' => 'AZN',
+ 'BAM' => 'BAM',
+ 'BBD' => 'BBD',
+ 'BDT' => 'BDT',
+ 'BGN' => 'BGN',
+ 'BHD' => 'BHD',
+ 'BIF' => 'BIF',
+ 'BMD' => 'BMD',
+ 'BND' => 'BND',
+ 'BOB' => 'BOB',
+ 'BRL' => 'BRL',
+ 'BSD' => 'BSD',
+ 'BTN' => 'BTN',
+ 'BWP' => 'BWP',
+ 'BYR' => 'BYR',
+ 'BZD' => 'BZD',
+ 'CAD' => 'CAD',
+ 'CDF' => 'CDF',
+ 'CHF' => 'CHF',
+ 'CLP' => 'CLP',
+ 'CNY' => 'CNY',
+ 'COP' => 'COP',
+ 'CRC' => 'CRC',
+ 'CUC' => 'CUC',
+ 'CUP' => 'CUP',
+ 'CVE' => 'CVE',
+ 'CZK' => 'CZK',
+ 'DJF' => 'DJF',
+ 'DKK' => 'DKK',
+ 'DOP' => 'DOP',
+ 'DZD' => 'DZD',
+ 'EEK' => 'EEK',
+ 'EGP' => 'EGP',
+ 'ERN' => 'ERN',
+ 'ETB' => 'ETB',
+ 'FJD' => 'FJD',
+ 'FKP' => 'FKP',
+ 'GBP' => 'GBP',
+ 'GEL' => 'GEL',
+ 'GHS' => 'GHS',
+ 'GIP' => 'GIP',
+ 'GMD' => 'GMD',
+ 'GNF' => 'GNF',
+ 'GTQ' => 'GTQ',
+ 'GWP' => 'GWP',
+ 'GYD' => 'GYD',
+ 'HKD' => 'HKD',
+ 'HNL' => 'HNL',
+ 'HRK' => 'HRK',
+ 'HTG' => 'HTG',
+ 'HUF' => 'HUF',
+ 'IDR' => 'IDR',
+ 'ILS' => 'NIS',
+ 'INR' => 'INR',
+ 'IQD' => 'IQD',
+ 'IRR' => 'IRR',
+ 'ISK' => 'ISK',
+ 'JMD' => 'JMD',
+ 'JOD' => 'JOD',
+ 'JPY' => 'JPY',
+ 'KES' => 'KES',
+ 'KGS' => 'KGS',
+ 'KHR' => 'KHR',
+ 'KMF' => 'KMF',
+ 'KPW' => 'KPW',
+ 'KRW' => 'KRW',
+ 'KWD' => 'KWD',
+ 'KYD' => 'KYD',
+ 'KZT' => 'KZT',
+ 'LAK' => 'LAK',
+ 'LBP' => 'LBP',
+ 'LKR' => 'LKR',
+ 'LRD' => 'LRD',
+ 'LTL' => 'LTL',
+ 'LVL' => 'LVL',
+ 'LYD' => 'LYD',
+ 'MAD' => 'MAD',
+ 'MDL' => 'MDL',
+ 'MGA' => 'MGA',
+ 'MKD' => 'MKD',
+ 'MMK' => 'MMK',
+ 'MNT' => 'MNT',
+ 'MOP' => 'MOP',
+ 'MRO' => 'MRO',
+ 'MUR' => 'MUR',
+ 'MVR' => 'MVR',
+ 'MWK' => 'MWK',
+ 'MXN' => 'MX$',
+ 'MYR' => 'MYR',
+ 'MZE' => 'MZE',
+ 'MZN' => 'MZN',
+ 'NAD' => 'NAD',
+ 'NGN' => 'NGN',
+ 'NIO' => 'NIO',
+ 'NOK' => 'NOK',
+ 'NPR' => 'NPR',
+ 'NZD' => 'NZD',
+ 'OMR' => 'OMR',
+ 'PAB' => 'PAB',
+ 'PEN' => 'PEN',
+ 'PGK' => 'PGK',
+ 'PHP' => 'PHP',
+ 'PKR' => 'PKR',
+ 'PLN' => 'PLN',
+ 'PYG' => 'PYG',
+ 'QAR' => 'QAR',
+ 'RON' => 'RON',
+ 'RSD' => 'RSD',
+ 'RUB' => 'RUB',
+ 'RWF' => 'RWF',
+ 'SAR' => 'SAR',
+ 'SBD' => 'SBD',
+ 'SCR' => 'SCR',
+ 'SDG' => 'SDG',
+ 'SEK' => 'SEK',
+ 'SGD' => 'SGD',
+ 'SHP' => 'SHP',
+ 'SLL' => 'SLL',
+ 'SOS' => 'SOS',
+ 'SRD' => 'SRD',
+ 'SSP' => 'SSP',
+ 'STD' => 'STD',
+ 'SVC' => 'SVC',
+ 'SYP' => 'SYP',
+ 'SZL' => 'SZL',
+ 'THB' => 'THB',
+ 'TJS' => 'TJS',
+ 'TMT' => 'TMT',
+ 'TND' => 'TND',
+ 'TOP' => 'TOP',
+ 'TRY' => 'TRY',
+ 'TTD' => 'TTD',
+ 'TWD' => 'TWD',
+ 'TZS' => 'TZS',
+ 'UAH' => 'UAH',
+ 'UGX' => 'UGX',
+ 'USD' => 'USD',
+ 'UYU' => 'UYU',
+ 'UZS' => 'UZS',
+ 'VEF' => 'VEF',
+ 'VND' => 'VND',
+ 'VUV' => 'VUV',
+ 'WST' => 'WST',
+ 'XAF' => 'FCFA',
+ 'XCD' => 'EC$',
+ 'XOF' => 'CFA',
+ 'XPF' => 'CFPF',
+ 'YER' => 'YER',
+ 'ZAR' => 'ZAR',
+ 'ZMW' => 'ZMW',
+ 'ZWL' => 'ZWL',
+);
+
+$countryNames = array(
+ 'AC' => 'Ascensión',
+ 'AD' => 'Andorra',
+ 'AE' => 'Spojené arabské emiráty',
+ 'AF' => 'Afganistan',
+ 'AG' => 'Antigua a Barbuda',
+ 'AI' => 'Anguilla',
+ 'AL' => 'Albánsko',
+ 'AM' => 'Arménsko',
+ 'AN' => 'Holandské Antily',
+ 'AO' => 'Angola',
+ 'AQ' => 'Antarktída',
+ 'AR' => 'Argentína',
+ 'AS' => 'Americká Samoa',
+ 'AT' => 'Rakúsko',
+ 'AU' => 'Austrália',
+ 'AW' => 'Aruba',
+ 'AX' => 'Ålandy',
+ 'AZ' => 'Azerbajdžan',
+ 'BA' => 'Bosna a Hercegovina',
+ 'BB' => 'Barbados',
+ 'BD' => 'Bangladéš',
+ 'BE' => 'Belgicko',
+ 'BF' => 'Burkina Faso',
+ 'BG' => 'Bulharsko',
+ 'BH' => 'Bahrajn',
+ 'BI' => 'Burundi',
+ 'BJ' => 'Benin',
+ 'BL' => 'Svätý Bartolomej',
+ 'BM' => 'Bermudy',
+ 'BN' => 'Brunej',
+ 'BO' => 'Bolívia',
+ 'BQ' => 'Karibské Holandsko',
+ 'BR' => 'Brazília',
+ 'BS' => 'Bahamy',
+ 'BT' => 'Bhután',
+ 'BV' => 'Bouvetov ostrov',
+ 'BW' => 'Botswana',
+ 'BY' => 'Bielorusko',
+ 'BZ' => 'Belize',
+ 'CA' => 'Kanada',
+ 'CC' => 'Kokosové ostrovy',
+ 'CD' => 'Kongo - Kinshasa',
+ 'CF' => 'Stredoafrická republika',
+ 'CG' => 'Kongo - Brazzaville',
+ 'CH' => 'Švajčiarsko',
+ 'CI' => 'Pobrežie Slonoviny',
+ 'CK' => 'Cookove ostrovy',
+ 'CL' => 'Čile',
+ 'CM' => 'Kamerun',
+ 'CN' => 'Čína',
+ 'CO' => 'Kolumbia',
+ 'CP' => 'Clipperton',
+ 'CR' => 'Kostarika',
+ 'CU' => 'Kuba',
+ 'CV' => 'Kapverdy',
+ 'CW' => 'Curaçao',
+ 'CX' => 'Vianočný ostrov',
+ 'CY' => 'Cyprus',
+ 'CZ' => 'Česká republika',
+ 'DE' => 'Nemecko',
+ 'DG' => 'Diego García',
+ 'DJ' => 'Džibutsko',
+ 'DK' => 'Dánsko',
+ 'DM' => 'Dominika',
+ 'DO' => 'Dominikánska republika',
+ 'DZ' => 'Alžírsko',
+ 'EA' => 'Ceuta a Melilla',
+ 'EC' => 'Ekvádor',
+ 'EE' => 'Estónsko',
+ 'EG' => 'Egypt',
+ 'EH' => 'Západná Sahara',
+ 'ER' => 'Eritrea',
+ 'ES' => 'Španielsko',
+ 'ET' => 'Etiópia',
+ 'EU' => 'Európska únia',
+ 'FI' => 'Fínsko',
+ 'FJ' => 'Fidži',
+ 'FK' => 'Falklandy',
+ 'FM' => 'Mikronézia',
+ 'FO' => 'Faerské ostrovy',
+ 'FR' => 'Francúzsko',
+ 'GA' => 'Gabon',
+ 'GB' => 'UK',
+ 'GD' => 'Grenada',
+ 'GE' => 'Gruzínsko',
+ 'GF' => 'Francúzska Guayana',
+ 'GG' => 'Guernsey',
+ 'GH' => 'Ghana',
+ 'GI' => 'Gibraltár',
+ 'GL' => 'Grónsko',
+ 'GM' => 'Gambia',
+ 'GN' => 'Guinea',
+ 'GP' => 'Guadeloupe',
+ 'GQ' => 'Rovníková Guinea',
+ 'GR' => 'Grécko',
+ 'GS' => 'Južná Georgia a Južné Sandwichove ostrovy',
+ 'GT' => 'Guatemala',
+ 'GU' => 'Guam',
+ 'GW' => 'Guinea-Bissau',
+ 'GY' => 'Guayana',
+ 'HK' => 'Hongkong',
+ 'HM' => 'Heardov ostrov a McDonaldove ostrovy',
+ 'HN' => 'Honduras',
+ 'HR' => 'Chorvátsko',
+ 'HT' => 'Haiti',
+ 'HU' => 'Maďarsko',
+ 'IC' => 'Kanárske ostrovy',
+ 'ID' => 'Indonézia',
+ 'IE' => 'Írsko',
+ 'IL' => 'Izrael',
+ 'IM' => 'Ostrov Man',
+ 'IN' => 'India',
+ 'IO' => 'Britské indickooceánske územie',
+ 'IQ' => 'Irak',
+ 'IR' => 'Irán',
+ 'IS' => 'Island',
+ 'IT' => 'Taliansko',
+ 'JE' => 'Jersey',
+ 'JM' => 'Jamajka',
+ 'JO' => 'Jordánsko',
+ 'JP' => 'Japonsko',
+ 'KE' => 'Keňa',
+ 'KG' => 'Kirgizsko',
+ 'KH' => 'Kambodža',
+ 'KI' => 'Kiribati',
+ 'KM' => 'Komory',
+ 'KN' => 'Svätý Krištof a Nevis',
+ 'KP' => 'Severná Kórea',
+ 'KR' => 'Južná Kórea',
+ 'KW' => 'Kuvajt',
+ 'KY' => 'Kajmanie ostrovy',
+ 'KZ' => 'Kazachstan',
+ 'LA' => 'Laos',
+ 'LB' => 'Libanon',
+ 'LC' => 'Svätá Lucia',
+ 'LI' => 'Lichtenštajnsko',
+ 'LK' => 'Srí Lanka',
+ 'LR' => 'Libéria',
+ 'LS' => 'Lesotho',
+ 'LT' => 'Litva',
+ 'LU' => 'Luxembursko',
+ 'LV' => 'Lotyšsko',
+ 'LY' => 'Líbya',
+ 'MA' => 'Maroko',
+ 'MC' => 'Monako',
+ 'MD' => 'Moldavsko',
+ 'ME' => 'Čierna Hora',
+ 'MF' => 'Svätý Martin',
+ 'MG' => 'Madagaskar',
+ 'MH' => 'Marshallove ostrovy',
+ 'MK' => 'Macedónsko',
+ 'ML' => 'Mali',
+ 'MM' => 'Mjanmarsko',
+ 'MN' => 'Mongolsko',
+ 'MO' => 'Macao',
+ 'MP' => 'Severné Mariány',
+ 'MQ' => 'Martinik',
+ 'MR' => 'Mauritánia',
+ 'MS' => 'Montserrat',
+ 'MT' => 'Malta',
+ 'MU' => 'Maurícius',
+ 'MV' => 'Maldivy',
+ 'MW' => 'Malawi',
+ 'MX' => 'Mexiko',
+ 'MY' => 'Malajzia',
+ 'MZ' => 'Mozambik',
+ 'NA' => 'Namíbia',
+ 'NC' => 'Nová Kaledónia',
+ 'NE' => 'Niger',
+ 'NF' => 'Norfolk',
+ 'NG' => 'Nigéria',
+ 'NI' => 'Nikaragua',
+ 'NL' => 'Holandsko',
+ 'NO' => 'Nórsko',
+ 'NP' => 'Nepál',
+ 'NR' => 'Nauru',
+ 'NU' => 'Niue',
+ 'NZ' => 'Nový Zéland',
+ 'OM' => 'Omán',
+ 'PA' => 'Panama',
+ 'PE' => 'Peru',
+ 'PF' => 'Francúzska Polynézia',
+ 'PG' => 'Papua Nová Guinea',
+ 'PH' => 'Filipíny',
+ 'PK' => 'Pakistan',
+ 'PL' => 'Poľsko',
+ 'PM' => 'Saint Pierre a Miquelon',
+ 'PN' => 'Pitcairnove ostrovy',
+ 'PR' => 'Portoriko',
+ 'PS' => 'Palestína',
+ 'PT' => 'Portugalsko',
+ 'PW' => 'Palau',
+ 'PY' => 'Paraguaj',
+ 'QA' => 'Katar',
+ 'QO' => 'ostatné Tichomorie',
+ 'RE' => 'Réunion',
+ 'RO' => 'Rumunsko',
+ 'RS' => 'Srbsko',
+ 'RU' => 'Rusko',
+ 'RW' => 'Rwanda',
+ 'SA' => 'Saudská Arábia',
+ 'SB' => 'Šalamúnove ostrovy',
+ 'SC' => 'Seychely',
+ 'SD' => 'Sudán',
+ 'SE' => 'Švédsko',
+ 'SG' => 'Singapur',
+ 'SH' => 'Svätá Helena',
+ 'SI' => 'Slovinsko',
+ 'SJ' => 'Svalbard a Jan Mayen',
+ 'SK' => 'Slovensko',
+ 'SL' => 'Sierra Leone',
+ 'SM' => 'San Maríno',
+ 'SN' => 'Senegal',
+ 'SO' => 'Somálsko',
+ 'SR' => 'Surinam',
+ 'SS' => 'Južný Sudán',
+ 'ST' => 'Svätý Tomáš a Princov ostrov',
+ 'SV' => 'Salvádor',
+ 'SX' => 'Sint Maarten',
+ 'SY' => 'Sýria',
+ 'SZ' => 'Svazijsko',
+ 'TA' => 'Tristan da Cunha',
+ 'TC' => 'Turks a Caicos',
+ 'TD' => 'Čad',
+ 'TF' => 'Francúzske južné a antarktické územia',
+ 'TG' => 'Togo',
+ 'TH' => 'Thajsko',
+ 'TJ' => 'Tadžikistan',
+ 'TK' => 'Tokelau',
+ 'TL' => 'Východný Timor',
+ 'TM' => 'Turkménsko',
+ 'TN' => 'Tunisko',
+ 'TO' => 'Tonga',
+ 'TR' => 'Turecko',
+ 'TT' => 'Trinidad a Tobago',
+ 'TV' => 'Tuvalu',
+ 'TW' => 'Taiwan',
+ 'TZ' => 'Tanzánia',
+ 'UA' => 'Ukrajina',
+ 'UG' => 'Uganda',
+ 'UM' => 'Menšie odľahlé ostrovy USA',
+ 'US' => 'USA',
+ 'UY' => 'Uruguaj',
+ 'UZ' => 'Uzbekistan',
+ 'VA' => 'Vatikán',
+ 'VC' => 'Svätý Vincent a Grenadíny',
+ 'VE' => 'Venezuela',
+ 'VG' => 'Britské Panenské ostrovy',
+ 'VI' => 'Americké Panenské ostrovy',
+ 'VN' => 'Vietnam',
+ 'VU' => 'Vanuatu',
+ 'WF' => 'Wallis a Futuna',
+ 'WS' => 'Samoa',
+ 'XK' => 'Kosovo',
+ 'YE' => 'Jemen',
+ 'YT' => 'Mayotte',
+ 'ZA' => 'Južná Afrika',
+ 'ZM' => 'Zambia',
+ 'ZW' => 'Zimbabwe',
+);
+
+$timeUnits = array(
+ 'day-few' => '{0} dni',
+ 'day-future-few' => 'o {0} dni',
+ 'day-future-many' => 'o {0} dňa',
+ 'day-future-one' => 'o {0} deň',
+ 'day-future-other' => 'o {0} dní',
+ 'day-many' => '{0} dňa',
+ 'day-narrow-future-few' => 'o {0} d',
+ 'day-narrow-future-many' => 'o {0} d',
+ 'day-narrow-future-one' => 'o {0} d',
+ 'day-narrow-future-other' => 'o {0} d',
+ 'day-narrow-past-few' => 'pred {0} d',
+ 'day-narrow-past-many' => 'pred {0} d',
+ 'day-narrow-past-one' => 'pred {0} d',
+ 'day-narrow-past-other' => 'pred {0} d',
+ 'day-one' => '{0} deň',
+ 'day-other' => '{0} dní',
+ 'day-past-few' => 'pred {0} dňami',
+ 'day-past-many' => 'pred {0} dňom',
+ 'day-past-one' => 'pred {0} dňom',
+ 'day-past-other' => 'pred {0} dňami',
+ 'day-short-future-few' => 'o {0} d.',
+ 'day-short-future-many' => 'o {0} d.',
+ 'day-short-future-one' => 'o {0} d.',
+ 'day-short-future-other' => 'o {0} d.',
+ 'day-short-past-few' => 'pred {0} d.',
+ 'day-short-past-many' => 'pred {0} d.',
+ 'day-short-past-one' => 'pred {0} d.',
+ 'day-short-past-other' => 'pred {0} d.',
+ 'hour-few' => '{0} hodiny',
+ 'hour-future-few' => 'o {0} hodiny',
+ 'hour-future-many' => 'o {0} hodiny',
+ 'hour-future-one' => 'o {0} hodinu',
+ 'hour-future-other' => 'o {0} hodín',
+ 'hour-many' => '{0} hodiny',
+ 'hour-narrow-future-few' => 'o {0} h',
+ 'hour-narrow-future-many' => 'o {0} h',
+ 'hour-narrow-future-one' => 'o {0} h',
+ 'hour-narrow-future-other' => 'o {0} h',
+ 'hour-narrow-past-few' => 'pred {0} h',
+ 'hour-narrow-past-many' => 'pred {0} h',
+ 'hour-narrow-past-one' => 'pred {0} h',
+ 'hour-narrow-past-other' => 'pred {0} h',
+ 'hour-one' => '{0} hodina',
+ 'hour-other' => '{0} hodín',
+ 'hour-past-few' => 'pred {0} hodinami',
+ 'hour-past-many' => 'pred {0} hodinou',
+ 'hour-past-one' => 'pred {0} hodinou',
+ 'hour-past-other' => 'pred {0} hodinami',
+ 'hour-short-future-few' => 'o {0} h',
+ 'hour-short-future-many' => 'o {0} h',
+ 'hour-short-future-one' => 'o {0} h',
+ 'hour-short-future-other' => 'o {0} h',
+ 'hour-short-past-few' => 'pred {0} h',
+ 'hour-short-past-many' => 'pred {0} h',
+ 'hour-short-past-one' => 'pred {0} h',
+ 'hour-short-past-other' => 'pred {0} h',
+ 'microsecond-few' => '{0} mikrosekundy',
+ 'microsecond-many' => '{0} mikrosekundy',
+ 'microsecond-one' => '{0} mikrosekunda',
+ 'microsecond-other' => '{0} mikrosekúnd',
+ 'millisecond-few' => '{0} milisekundy',
+ 'millisecond-many' => '{0} milisekundy',
+ 'millisecond-one' => '{0} milisekunda',
+ 'millisecond-other' => '{0} milisekúnd',
+ 'minute-few' => '{0} minúty',
+ 'minute-future-few' => 'o {0} minúty',
+ 'minute-future-many' => 'o {0} minúty',
+ 'minute-future-one' => 'o {0} minútu',
+ 'minute-future-other' => 'o {0} minút',
+ 'minute-many' => '{0} minúty',
+ 'minute-narrow-future-few' => 'o {0} min',
+ 'minute-narrow-future-many' => 'o {0} min',
+ 'minute-narrow-future-one' => 'o {0} min',
+ 'minute-narrow-future-other' => 'o {0} min',
+ 'minute-narrow-past-few' => 'pred {0} min',
+ 'minute-narrow-past-many' => 'pred {0} min',
+ 'minute-narrow-past-one' => 'pred {0} min',
+ 'minute-narrow-past-other' => 'pred {0} min',
+ 'minute-one' => '{0} minúta',
+ 'minute-other' => '{0} minút',
+ 'minute-past-few' => 'pred {0} minútami',
+ 'minute-past-many' => 'pred {0} minútou',
+ 'minute-past-one' => 'pred {0} minútou',
+ 'minute-past-other' => 'pred {0} minútami',
+ 'minute-short-future-few' => 'o {0} min',
+ 'minute-short-future-many' => 'o {0} min',
+ 'minute-short-future-one' => 'o {0} min',
+ 'minute-short-future-other' => 'o {0} min',
+ 'minute-short-past-few' => 'pred {0} min',
+ 'minute-short-past-many' => 'pred {0} min',
+ 'minute-short-past-one' => 'pred {0} min',
+ 'minute-short-past-other' => 'pred {0} min',
+ 'month-few' => '{0} mesiace',
+ 'month-future-few' => 'o {0} mesiace',
+ 'month-future-many' => 'o {0} mesiaca',
+ 'month-future-one' => 'o {0} mesiac',
+ 'month-future-other' => 'o {0} mesiacov',
+ 'month-many' => '{0} mesiaca',
+ 'month-narrow-future-few' => 'o {0} mes.',
+ 'month-narrow-future-many' => 'o {0} mes.',
+ 'month-narrow-future-one' => 'o {0} mes.',
+ 'month-narrow-future-other' => 'o {0} mes.',
+ 'month-narrow-past-few' => 'pred {0} mes.',
+ 'month-narrow-past-many' => 'pred {0} mes.',
+ 'month-narrow-past-one' => 'pred {0} mes.',
+ 'month-narrow-past-other' => 'pred {0} mes.',
+ 'month-one' => '{0} mesiac',
+ 'month-other' => '{0} mesiacov',
+ 'month-past-few' => 'pred {0} mesiacmi',
+ 'month-past-many' => 'pred {0} mesiacom',
+ 'month-past-one' => 'pred {0} mesiacom',
+ 'month-past-other' => 'pred {0} mesiacmi',
+ 'month-short-future-few' => 'o {0} mes.',
+ 'month-short-future-many' => 'o {0} mes.',
+ 'month-short-future-one' => 'o {0} mes.',
+ 'month-short-future-other' => 'o {0} mes.',
+ 'month-short-past-few' => 'pred {0} mes.',
+ 'month-short-past-many' => 'pred {0} mes.',
+ 'month-short-past-one' => 'pred {0} mes.',
+ 'month-short-past-other' => 'pred {0} mes.',
+ 'nanosecond-few' => '{0} nanosekundy',
+ 'nanosecond-many' => '{0} nanosekundy',
+ 'nanosecond-one' => '{0} nanosekunda',
+ 'nanosecond-other' => '{0} nanosekúnd',
+ 'quarter-future-few' => 'o {0} štvrťroky',
+ 'quarter-future-many' => 'o {0} štvrťroka',
+ 'quarter-future-one' => 'o {0} štvrťrok',
+ 'quarter-future-other' => 'o {0} štvrťrokov',
+ 'quarter-narrow-future-few' => 'o {0} štvrťr.',
+ 'quarter-narrow-future-many' => 'o {0} štvrťr.',
+ 'quarter-narrow-future-one' => 'o {0} štvrťr.',
+ 'quarter-narrow-future-other' => 'o {0} štvrťr.',
+ 'quarter-narrow-past-few' => 'pred {0} štvrťr.',
+ 'quarter-narrow-past-many' => 'pred {0} štvrťr.',
+ 'quarter-narrow-past-one' => 'pred {0} štvrťr.',
+ 'quarter-narrow-past-other' => 'pred {0} štvrťr.',
+ 'quarter-past-few' => 'pred {0} štvrťrokmi',
+ 'quarter-past-many' => 'pred {0} štvrťrokom',
+ 'quarter-past-one' => 'pred {0} štvrťrokom',
+ 'quarter-past-other' => 'pred {0} štvrťrokmi',
+ 'quarter-short-future-few' => 'o {0} štvrťr.',
+ 'quarter-short-future-many' => 'o {0} štvrťr.',
+ 'quarter-short-future-one' => 'o {0} štvrťr.',
+ 'quarter-short-future-other' => 'o {0} štvrťr.',
+ 'quarter-short-past-few' => 'pred {0} štvrťr.',
+ 'quarter-short-past-many' => 'pred {0} štvrťr.',
+ 'quarter-short-past-one' => 'pred {0} štvrťr.',
+ 'quarter-short-past-other' => 'pred {0} štvrťr.',
+ 'second-few' => '{0} sekundy',
+ 'second-future-few' => 'o {0} sekundy',
+ 'second-future-many' => 'o {0} sekundy',
+ 'second-future-one' => 'o {0} sekundu',
+ 'second-future-other' => 'o {0} sekúnd',
+ 'second-many' => '{0} sekundy',
+ 'second-narrow-future-few' => 'o {0} s',
+ 'second-narrow-future-many' => 'o {0} s',
+ 'second-narrow-future-one' => 'o {0} s',
+ 'second-narrow-future-other' => 'o {0} s',
+ 'second-narrow-past-few' => 'pred {0} s',
+ 'second-narrow-past-many' => 'pred {0} s',
+ 'second-narrow-past-one' => 'pred {0} s',
+ 'second-narrow-past-other' => 'pred {0} s',
+ 'second-one' => '{0} sekunda',
+ 'second-other' => '{0} sekúnd',
+ 'second-past-few' => 'pred {0} sekundami',
+ 'second-past-many' => 'Pred {0} sekundami',
+ 'second-past-one' => 'pred {0} sekundou',
+ 'second-past-other' => 'pred {0} sekundami',
+ 'second-short-future-few' => 'o {0} s',
+ 'second-short-future-many' => 'o {0} s',
+ 'second-short-future-one' => 'o {0} s',
+ 'second-short-future-other' => 'o {0} s',
+ 'second-short-past-few' => 'pred {0} s',
+ 'second-short-past-many' => 'pred {0} s',
+ 'second-short-past-one' => 'pred {0} s',
+ 'second-short-past-other' => 'pred {0} s',
+ 'week-few' => '{0} týždne',
+ 'week-future-few' => 'o {0} týždne',
+ 'week-future-many' => 'o {0} týždňa',
+ 'week-future-one' => 'o {0} týždeň',
+ 'week-future-other' => 'o {0} týždňov',
+ 'week-many' => '{0} týždňa',
+ 'week-narrow-future-few' => 'o {0} týž.',
+ 'week-narrow-future-many' => 'o {0} týž.',
+ 'week-narrow-future-one' => 'o {0} týž.',
+ 'week-narrow-future-other' => 'o {0} týž.',
+ 'week-narrow-past-few' => 'pred {0} týž.',
+ 'week-narrow-past-many' => 'pred {0} týž.',
+ 'week-narrow-past-one' => 'pred {0} týž.',
+ 'week-narrow-past-other' => 'pred {0} týž.',
+ 'week-one' => '{0} týždeň',
+ 'week-other' => '{0} týždňov',
+ 'week-past-few' => 'pred {0} týždňami',
+ 'week-past-many' => 'pred {0} týždňom',
+ 'week-past-one' => 'pred {0} týždňom',
+ 'week-past-other' => 'pred {0} týždňami',
+ 'week-short-future-few' => 'o {0} týž.',
+ 'week-short-future-many' => 'o {0} týž.',
+ 'week-short-future-one' => 'o {0} týž.',
+ 'week-short-future-other' => 'o {0} týž.',
+ 'week-short-past-few' => 'pred {0} týž.',
+ 'week-short-past-many' => 'pred {0} týž.',
+ 'week-short-past-one' => 'pred {0} týž.',
+ 'week-short-past-other' => 'pred {0} týž.',
+ 'year-few' => '{0} roky',
+ 'year-future-few' => 'o {0} roky',
+ 'year-future-many' => 'o {0} roka',
+ 'year-future-one' => 'o {0} rok',
+ 'year-future-other' => 'o {0} rokov',
+ 'year-many' => '{0} roka',
+ 'year-narrow-future-few' => 'o {0} r.',
+ 'year-narrow-future-many' => 'o {0} r.',
+ 'year-narrow-future-one' => 'o {0} r.',
+ 'year-narrow-future-other' => 'o {0} r.',
+ 'year-narrow-past-few' => 'pred {0} r.',
+ 'year-narrow-past-many' => 'pred {0} r.',
+ 'year-narrow-past-one' => 'pred {0} r.',
+ 'year-narrow-past-other' => 'pred {0} r.',
+ 'year-one' => '{0} rok',
+ 'year-other' => '{0} rokov',
+ 'year-past-few' => 'pred {0} rokmi',
+ 'year-past-many' => 'pred {0} rokom',
+ 'year-past-one' => 'pred {0} rokom',
+ 'year-past-other' => 'pred {0} rokmi',
+ 'year-short-future-few' => 'o {0} r.',
+ 'year-short-future-many' => 'o {0} r.',
+ 'year-short-future-one' => 'o {0} r.',
+ 'year-short-future-other' => 'o {0} r.',
+ 'year-short-past-few' => 'pred {0} r.',
+ 'year-short-past-many' => 'pred {0} r.',
+ 'year-short-past-one' => 'pred {0} r.',
+ 'year-short-past-other' => 'pred {0} r.',
+);
diff --git a/MLEB/cldr/CldrNames/CldrNamesSl.php b/MLEB/cldr/CldrNames/CldrNamesSl.php
new file mode 100644
index 00000000..4e5adfd5
--- /dev/null
+++ b/MLEB/cldr/CldrNames/CldrNamesSl.php
@@ -0,0 +1,1411 @@
+<?php
+
+$languageNames = array(
+ 'aa' => 'afarščina',
+ 'ab' => 'abhaščina',
+ 'ace' => 'ačejščina',
+ 'ach' => 'ačolijščina',
+ 'ada' => 'adangmejščina',
+ 'ady' => 'adigejščina',
+ 'ae' => 'avestijščina',
+ 'af' => 'afrikanščina',
+ 'afh' => 'afrihili',
+ 'agq' => 'aghemščina',
+ 'ain' => 'ainujščina',
+ 'ak' => 'akanščina',
+ 'akk' => 'akadščina',
+ 'ale' => 'aleutščina',
+ 'alt' => 'južna altajščina',
+ 'am' => 'amharščina',
+ 'an' => 'aragonščina',
+ 'ang' => 'stara angleščina',
+ 'anp' => 'angikaščina',
+ 'ar' => 'arabščina',
+ 'ar-001' => 'sodobna standardna arabščina',
+ 'arc' => 'aramejščina',
+ 'arn' => 'aravkanščina',
+ 'arp' => 'arapaščina',
+ 'arw' => 'aravaščina',
+ 'as' => 'asamščina',
+ 'asa' => 'asujščina',
+ 'ast' => 'asturijščina',
+ 'av' => 'avarščina',
+ 'awa' => 'avadščina',
+ 'ay' => 'ajmarščina',
+ 'az' => 'azerbajdžanščina',
+ 'ba' => 'baškirščina',
+ 'bal' => 'beludžijščina',
+ 'ban' => 'balijščina',
+ 'bas' => 'basa',
+ 'be' => 'beloruščina',
+ 'bej' => 'bedža',
+ 'bem' => 'bemba',
+ 'bez' => 'benajščina',
+ 'bg' => 'bolgarščina',
+ 'bho' => 'bodžpuri',
+ 'bi' => 'bislamščina',
+ 'bik' => 'bikolski jezik',
+ 'bin' => 'edo',
+ 'bla' => 'siksika',
+ 'bm' => 'bambarščina',
+ 'bn' => 'bengalščina',
+ 'bo' => 'tibetanščina',
+ 'br' => 'bretonščina',
+ 'bra' => 'bradžbakanščina',
+ 'brx' => 'bodojščina',
+ 'bs' => 'bosanščina',
+ 'bua' => 'burjatščina',
+ 'bug' => 'buginščina',
+ 'byn' => 'blinščina',
+ 'ca' => 'katalonščina',
+ 'cad' => 'kadoščina',
+ 'car' => 'karibski jezik',
+ 'ce' => 'čečenščina',
+ 'ceb' => 'sebuanščina',
+ 'cgg' => 'čigajščina',
+ 'ch' => 'čamorščina',
+ 'chb' => 'čibčevščina',
+ 'chg' => 'čagatajščina',
+ 'chk' => 'trukeščina',
+ 'chm' => 'marijščina',
+ 'chn' => 'činuški žargon',
+ 'cho' => 'čoktavščina',
+ 'chp' => 'čipevščina',
+ 'chr' => 'čerokeščina',
+ 'chy' => 'čejenščina',
+ 'ckb' => 'soranska kurdščina',
+ 'co' => 'korziščina',
+ 'cop' => 'koptščina',
+ 'cr' => 'krijščina',
+ 'crh' => 'krimska tatarščina',
+ 'cs' => 'češčina',
+ 'csb' => 'kašubščina',
+ 'cu' => 'stara cerkvena slovanščina',
+ 'cv' => 'čuvaščina',
+ 'cy' => 'valižanščina',
+ 'da' => 'danščina',
+ 'dak' => 'dakotščina',
+ 'dar' => 'darginščina',
+ 'dav' => 'taitajščina',
+ 'de' => 'nemščina',
+ 'de-at' => 'avstrijska nemščina',
+ 'de-ch' => 'visoka nemščina (Švica)',
+ 'del' => 'delavarščina',
+ 'den' => 'slavejščina',
+ 'dgr' => 'dogrib',
+ 'din' => 'dinka',
+ 'dje' => 'zarmajščina',
+ 'doi' => 'dogri',
+ 'dsb' => 'dolnja lužiška srbščina',
+ 'dua' => 'duala',
+ 'dum' => 'srednja nizozemščina',
+ 'dv' => 'diveščina',
+ 'dyo' => 'jola-fonjiščina',
+ 'dyu' => 'diula',
+ 'dz' => 'dzonka',
+ 'ebu' => 'embujščina',
+ 'ee' => 'evenščina',
+ 'efi' => 'efiščina',
+ 'egy' => 'stara egipčanščina',
+ 'eka' => 'ekajuk',
+ 'el' => 'grščina',
+ 'elx' => 'elamščina',
+ 'en' => 'angleščina',
+ 'en-au' => 'avstralska angleščina',
+ 'en-ca' => 'kanadska angleščina',
+ 'en-gb' => 'angleščina (VB)',
+ 'en-us' => 'angleščina (ZDA)',
+ 'enm' => 'srednja angleščina',
+ 'eo' => 'esperanto',
+ 'es' => 'španščina',
+ 'es-419' => 'latinskoameriška španščina',
+ 'es-es' => 'iberska španščina',
+ 'et' => 'estonščina',
+ 'eu' => 'baskovščina',
+ 'ewo' => 'evondovščina',
+ 'fa' => 'perzijščina',
+ 'fan' => 'fangijščina',
+ 'fat' => 'fantijščina',
+ 'ff' => 'fulščina',
+ 'fi' => 'finščina',
+ 'fil' => 'filipinščina',
+ 'fj' => 'fidžijščina',
+ 'fo' => 'ferščina',
+ 'fon' => 'fonščina',
+ 'fr' => 'francoščina',
+ 'fr-ca' => 'kanadska francoščina',
+ 'fr-ch' => 'švicarska francoščina',
+ 'frm' => 'srednja francoščina',
+ 'fro' => 'stara francoščina',
+ 'frr' => 'severna frizijščina',
+ 'frs' => 'vzhodna frizijščina',
+ 'fur' => 'furlanščina',
+ 'fy' => 'frizijščina',
+ 'ga' => 'irščina',
+ 'gaa' => 'ga',
+ 'gag' => 'gagavščina',
+ 'gay' => 'gajščina',
+ 'gba' => 'gbajščina',
+ 'gd' => 'škotska gelščina',
+ 'gez' => 'etiopščina',
+ 'gil' => 'kiribatščina',
+ 'gl' => 'galicijščina',
+ 'gmh' => 'srednja visoka nemščina',
+ 'gn' => 'gvaranijščina',
+ 'goh' => 'stara visoka nemščina',
+ 'gon' => 'gondi',
+ 'gor' => 'gorontalščina',
+ 'got' => 'gotščina',
+ 'grb' => 'grebščina',
+ 'grc' => 'stara grščina',
+ 'gsw' => 'nemščina (Švica)',
+ 'gu' => 'gudžaratščina',
+ 'guz' => 'gusijščina',
+ 'gv' => 'manščina',
+ 'ha' => 'havščina',
+ 'hai' => 'haidščina',
+ 'haw' => 'havajščina',
+ 'he' => 'hebrejščina',
+ 'hi' => 'hindujščina',
+ 'hil' => 'hiligajnonščina',
+ 'hit' => 'hetitščina',
+ 'hmn' => 'hmonščina',
+ 'ho' => 'hiri motu',
+ 'hr' => 'hrvaščina',
+ 'hsb' => 'gornja lužiška srbščina',
+ 'ht' => 'haitijska kreolščina',
+ 'hu' => 'madžarščina',
+ 'hup' => 'hupa',
+ 'hy' => 'armenščina',
+ 'hz' => 'herero',
+ 'ia' => 'interlingva',
+ 'iba' => 'ibanščina',
+ 'id' => 'indonezijščina',
+ 'ie' => 'interlingve',
+ 'ig' => 'igboščina',
+ 'ii' => 'sečuanska jiščina',
+ 'ik' => 'inupiaščina',
+ 'ilo' => 'ilokanščina',
+ 'inh' => 'inguščina',
+ 'io' => 'ido',
+ 'is' => 'islandščina',
+ 'it' => 'italijanščina',
+ 'iu' => 'inuktitutščina',
+ 'ja' => 'japonščina',
+ 'jbo' => 'lojban',
+ 'jgo' => 'ngomba',
+ 'jmc' => 'mačamejščina',
+ 'jpr' => 'judovska perzijščina',
+ 'jrb' => 'judovska arabščina',
+ 'jv' => 'javanščina',
+ 'ka' => 'gruzinščina',
+ 'kaa' => 'karakalpaščina',
+ 'kab' => 'kabilščina',
+ 'kac' => 'kačinščina',
+ 'kam' => 'kambaščina',
+ 'kaw' => 'kavi',
+ 'kbd' => 'kabardinščina',
+ 'kcg' => 'tjapska nigerijščina',
+ 'kde' => 'makondščina',
+ 'kea' => 'zelenortskootoška kreolščina',
+ 'kg' => 'kongovščina',
+ 'kha' => 'kasi',
+ 'kho' => 'kotanščina',
+ 'khq' => 'koyra chiini',
+ 'ki' => 'kikujščina',
+ 'kj' => 'kvanjama',
+ 'kk' => 'kazaščina',
+ 'kl' => 'grenlandščina',
+ 'kln' => 'kalenjinščina',
+ 'km' => 'kmerščina',
+ 'kmb' => 'kimbundu',
+ 'kn' => 'kanada',
+ 'ko' => 'korejščina',
+ 'koi' => 'komi-permjaščina',
+ 'kok' => 'konkanščina',
+ 'kos' => 'kosrajščina',
+ 'kpe' => 'kpelejščina',
+ 'kr' => 'kanurščina',
+ 'krc' => 'karačaj-balkarščina',
+ 'krl' => 'karelščina',
+ 'kru' => 'kuruk',
+ 'ks' => 'kašmirščina',
+ 'ksb' => 'shambala',
+ 'ksf' => 'bafia',
+ 'ku' => 'kurdščina',
+ 'kum' => 'kumiščina',
+ 'kut' => 'kutenajščina',
+ 'kv' => 'komijščina',
+ 'kw' => 'kornijščina',
+ 'ky' => 'kirgiščina',
+ 'la' => 'latinščina',
+ 'lad' => 'ladinščina',
+ 'lag' => 'langijščina',
+ 'lah' => 'landa',
+ 'lam' => 'lamba',
+ 'lb' => 'luksemburščina',
+ 'lez' => 'lezginščina',
+ 'lg' => 'ganda',
+ 'li' => 'limburščina',
+ 'lkt' => 'lakotščina',
+ 'ln' => 'lingala',
+ 'lo' => 'laoščina',
+ 'lol' => 'mongo',
+ 'loz' => 'lozi',
+ 'lt' => 'litovščina',
+ 'lu' => 'luba-katanga',
+ 'lua' => 'luba-lulua',
+ 'lui' => 'luisenščina',
+ 'lun' => 'lunda',
+ 'luo' => 'luo',
+ 'lus' => 'lushai',
+ 'luy' => 'luhijščina',
+ 'lv' => 'latvijščina',
+ 'mad' => 'madurščina',
+ 'mag' => 'magadščina',
+ 'mai' => 'maitili',
+ 'mak' => 'makasarščina',
+ 'man' => 'mandingo',
+ 'mas' => 'masajščina',
+ 'mdf' => 'mokšavščina',
+ 'mdr' => 'mandarščina',
+ 'men' => 'mende',
+ 'mer' => 'meru',
+ 'mfe' => 'morisjenščina',
+ 'mg' => 'malagaščina',
+ 'mga' => 'srednja irščina',
+ 'mgh' => 'makuva-meto',
+ 'mgo' => 'meta',
+ 'mh' => 'marshallovščina',
+ 'mi' => 'maorščina',
+ 'mic' => 'mikmaščina',
+ 'min' => 'minangkabau',
+ 'mk' => 'makedonščina',
+ 'ml' => 'malajalamščina',
+ 'mn' => 'mongolščina',
+ 'mnc' => 'mandžurščina',
+ 'mni' => 'manipurščina',
+ 'moh' => 'mohoščina',
+ 'mos' => 'mosijščina',
+ 'mr' => 'maratščina',
+ 'ms' => 'malajščina',
+ 'mt' => 'malteščina',
+ 'mua' => 'mundang',
+ 'mul' => 'več jezikov',
+ 'mwl' => 'mirandeščina',
+ 'mwr' => 'marvarščina',
+ 'my' => 'burmanščina',
+ 'myv' => 'erzjanščina',
+ 'na' => 'naurujščina',
+ 'nap' => 'napolitanščina',
+ 'naq' => 'khoekhoe',
+ 'nb' => 'knjižna norveščina',
+ 'nd' => 'severna ndebelščina',
+ 'nds' => 'nizka nemščina',
+ 'ne' => 'nepalščina',
+ 'new' => 'nevarščina',
+ 'nia' => 'niaščina',
+ 'niu' => 'niuejščina',
+ 'nl' => 'nizozemščina',
+ 'nl-be' => 'flamščina',
+ 'nmg' => 'kwasio',
+ 'nn' => 'novonorveščina',
+ 'no' => 'norveščina',
+ 'nog' => 'nogajščina',
+ 'non' => 'stara nordijščina',
+ 'nqo' => 'n’ko',
+ 'nr' => 'južna ndebelščina',
+ 'nso' => 'severna sotščina',
+ 'nus' => 'nuerščina',
+ 'nv' => 'navajščina',
+ 'nwc' => 'klasična nevarščina',
+ 'ny' => 'njanščina',
+ 'nym' => 'njamveščina',
+ 'nyn' => 'njankole',
+ 'nyo' => 'njoro',
+ 'nzi' => 'nzima',
+ 'oc' => 'okcitanščina',
+ 'oj' => 'anašinabščina',
+ 'om' => 'oromo',
+ 'or' => 'orijščina',
+ 'os' => 'osetinščina',
+ 'osa' => 'osage',
+ 'ota' => 'otomanska turščina',
+ 'pa' => 'pandžabščina',
+ 'pag' => 'pangasinanščina',
+ 'pam' => 'pampanščina',
+ 'pap' => 'papiamentu',
+ 'pau' => 'palavanščina',
+ 'peo' => 'stara perzijščina',
+ 'phn' => 'feničanščina',
+ 'pi' => 'palijščina',
+ 'pl' => 'poljščina',
+ 'pon' => 'ponpejščina',
+ 'pro' => 'stara provansalščina',
+ 'ps' => 'paštunščina',
+ 'pt' => 'portugalščina',
+ 'pt-br' => 'brazilska portugalščina',
+ 'pt-pt' => 'iberska portugalščina',
+ 'qu' => 'kečuanščina',
+ 'quc' => 'quiche',
+ 'raj' => 'radžastanščina',
+ 'rap' => 'rapanujščina',
+ 'rar' => 'rarotongščina',
+ 'rm' => 'retoromanščina',
+ 'rn' => 'rundščina',
+ 'ro' => 'romunščina',
+ 'ro-md' => 'moldavščina',
+ 'rof' => 'rombo',
+ 'rom' => 'romščina',
+ 'ru' => 'ruščina',
+ 'rup' => 'aromunščina',
+ 'rw' => 'ruandščina',
+ 'rwk' => 'rwa',
+ 'sa' => 'sanskrt',
+ 'sah' => 'jakutščina',
+ 'sam' => 'samaritanska aramejščina',
+ 'saq' => 'samburščina',
+ 'sas' => 'sasaščina',
+ 'sat' => 'santalščina',
+ 'sbp' => 'sangujščina',
+ 'sc' => 'sardinščina',
+ 'scn' => 'sicilijanščina',
+ 'sco' => 'škotščina',
+ 'sd' => 'sindščina',
+ 'se' => 'severna samijščina',
+ 'seh' => 'sena',
+ 'sel' => 'selkupščina',
+ 'ses' => 'koyraboro senni',
+ 'sg' => 'sango',
+ 'sga' => 'stara irščina',
+ 'sh' => 'srbohrvaščina',
+ 'shi' => 'tahelitska berberščina',
+ 'shn' => 'šanščina',
+ 'si' => 'singalščina',
+ 'sid' => 'sidamščina',
+ 'sk' => 'slovaščina',
+ 'sl' => 'slovenščina',
+ 'sm' => 'samoanščina',
+ 'sma' => 'južna samijščina',
+ 'smj' => 'luleška samijščina',
+ 'smn' => 'inarska samijščina',
+ 'sms' => 'samijščina Skolt',
+ 'sn' => 'šonščina',
+ 'so' => 'somalščina',
+ 'sq' => 'albanščina',
+ 'sr' => 'srbščina',
+ 'srn' => 'surinamska kreolščina',
+ 'srr' => 'sererščina',
+ 'ss' => 'svazijščina',
+ 'st' => 'sesoto',
+ 'su' => 'sundanščina',
+ 'suk' => 'sukuma',
+ 'sus' => 'susujščina',
+ 'sux' => 'sumerščina',
+ 'sv' => 'švedščina',
+ 'sw' => 'svahili',
+ 'swb' => 'šikomor',
+ 'swc' => 'svahili (Kongo)',
+ 'syc' => 'klasična sirščina',
+ 'syr' => 'sirščina',
+ 'ta' => 'tamilščina',
+ 'te' => 'telugijščina',
+ 'tem' => 'temnejščina',
+ 'teo' => 'teso',
+ 'tet' => 'tetumščina',
+ 'tg' => 'tadžiščina',
+ 'th' => 'tajščina',
+ 'ti' => 'tigrajščina',
+ 'tig' => 'tigrejščina',
+ 'tiv' => 'tivščina',
+ 'tk' => 'turkmenščina',
+ 'tkl' => 'tokelavščina',
+ 'tl' => 'tagalogščina',
+ 'tlh' => 'klingonščina',
+ 'tli' => 'tlingitščina',
+ 'tmh' => 'tamajaščina',
+ 'tn' => 'cvanščina',
+ 'to' => 'tongščina',
+ 'tog' => 'malavijska tongščina',
+ 'tpi' => 'tok pisin',
+ 'tr' => 'turščina',
+ 'ts' => 'tsonga',
+ 'tsi' => 'tsimščina',
+ 'tt' => 'tatarščina',
+ 'tum' => 'tumbukščina',
+ 'tvl' => 'tuvalujščina',
+ 'tw' => 'tvi',
+ 'twq' => 'tasawaq',
+ 'ty' => 'tahitščina',
+ 'tyv' => 'tuvinščina',
+ 'tzm' => 'tamašek (srednji atlas)',
+ 'udm' => 'udmurtščina',
+ 'ug' => 'ujgurščina',
+ 'uga' => 'ugaritski jezik',
+ 'uk' => 'ukrajinščina',
+ 'umb' => 'umbundščina',
+ 'und' => 'neznan ali neveljaven jezik',
+ 'ur' => 'urdujščina',
+ 'uz' => 'uzbeščina',
+ 'vai' => 'vajščina',
+ 've' => 'venda',
+ 'vi' => 'vietnamščina',
+ 'vo' => 'volapuk',
+ 'vot' => 'votjaščina',
+ 'vun' => 'vunjo',
+ 'wa' => 'valonščina',
+ 'wal' => 'valamščina',
+ 'war' => 'varajščina',
+ 'was' => 'vašajščina',
+ 'wo' => 'volofščina',
+ 'xal' => 'kalmiščina',
+ 'xh' => 'xhosa',
+ 'xog' => 'sogščina',
+ 'yao' => 'jaojščina',
+ 'yap' => 'japščina',
+ 'yi' => 'jidiš',
+ 'yo' => 'jorubščina',
+ 'yue' => 'kantonščina',
+ 'zap' => 'zapoteščina',
+ 'zbl' => 'znakovni jezik Bliss',
+ 'zen' => 'zenaščina',
+ 'zgh' => 'standardni maroški tamazig',
+ 'zh' => 'kitajščina',
+ 'zh-hans' => 'poenostavljena kitajščina',
+ 'zh-hant' => 'tradicionalna kitajščina',
+ 'zu' => 'zulujščina',
+ 'zun' => 'zunijščina',
+ 'zxx' => 'brez jezikoslovne vsebine',
+ 'zza' => 'zazajščina',
+);
+
+$currencyNames = array(
+ 'ADP' => 'andorska peseta',
+ 'AED' => 'dirham Združenih arabskih emiratov',
+ 'AFA' => 'stari afganistanski afgani (1927–2002)',
+ 'AFN' => 'afgani',
+ 'ALL' => 'albanski lek',
+ 'AMD' => 'armenski dram',
+ 'ANG' => 'nizozemsko-antilski gulden',
+ 'AOA' => 'angolska kvanza',
+ 'AOK' => 'stara angolska kvanza (1977–1990)',
+ 'AON' => 'angolska nova kvanza (1990–2000)',
+ 'AOR' => 'konvertibilna angolska kvanza (1995–1999)',
+ 'ARA' => 'argentinski avstral',
+ 'ARP' => 'argentinski peso (1983–1985)',
+ 'ARS' => 'argentinski peso',
+ 'ATS' => 'avstrijski šiling',
+ 'AUD' => 'avstralski dolar',
+ 'AWG' => 'arubski florin',
+ 'AZM' => 'stari azerbajdžanski manat (1993–2006)',
+ 'AZN' => 'azerbajdžanski manat',
+ 'BAD' => 'bosansko-hercegovski dinar',
+ 'BAM' => 'bosansko-hercegovska konvertibilna marka',
+ 'BBD' => 'barbadoški dolar',
+ 'BDT' => 'bangladeška taka',
+ 'BEC' => 'belgijski konvertibilni frank',
+ 'BEF' => 'belgijski frank',
+ 'BEL' => 'belgijski finančni frank',
+ 'BGL' => 'stari bolgarski lev',
+ 'BGN' => 'bolgarski lev',
+ 'BHD' => 'bahranski dinar',
+ 'BIF' => 'burundski frank',
+ 'BMD' => 'bermudski dolar',
+ 'BND' => 'brunejski dolar',
+ 'BOB' => 'bolivijski boliviano',
+ 'BOP' => 'bolivijski peso',
+ 'BOV' => 'bolivijski mvdol',
+ 'BRB' => 'brazilski novi kruzeiro (1967–1986)',
+ 'BRC' => 'brazilski kruzado',
+ 'BRE' => 'stari brazilski kruzeiro (1990–1993)',
+ 'BRL' => 'brazilski real',
+ 'BRN' => 'novi brazilski kruzado',
+ 'BRR' => 'brazilski kruzeiro',
+ 'BSD' => 'bahamski dolar',
+ 'BTN' => 'butanski ngultrum',
+ 'BUK' => 'burmanski kjat',
+ 'BWP' => 'bocvanska pula',
+ 'BYB' => 'beloruski novi rubelj (1994–1999)',
+ 'BYR' => 'beloruski rubelj',
+ 'BZD' => 'belizejski dolar',
+ 'CAD' => 'kanadski dolar',
+ 'CDF' => 'kongoški frank',
+ 'CHE' => 'evro WIR',
+ 'CHF' => 'švicarski frank',
+ 'CHW' => 'frank WIR',
+ 'CLF' => 'čilski unidades de fomento',
+ 'CLP' => 'čilski peso',
+ 'CNY' => 'kitajski juan renminbi',
+ 'COP' => 'kolumbijski peso',
+ 'COU' => 'kolumbijska enota realne vrednosti',
+ 'CRC' => 'kostariški kolon',
+ 'CSD' => 'stari srbski dinar',
+ 'CSK' => 'češkoslovaška krona',
+ 'CUC' => 'kubanski konvertibilni peso',
+ 'CUP' => 'kubanski peso',
+ 'CVE' => 'zelenortski eskudo',
+ 'CYP' => 'ciprski funt',
+ 'CZK' => 'češka krona',
+ 'DDM' => 'vzhodnonemška marka',
+ 'DEM' => 'nemška marka',
+ 'DJF' => 'džibutski frank',
+ 'DKK' => 'danska krona',
+ 'DOP' => 'dominikanski peso',
+ 'DZD' => 'alžirski dinar',
+ 'ECS' => 'ekvadorski sukre',
+ 'ECV' => 'ekvadorska enota realne vrednosti (UVC)',
+ 'EEK' => 'estonska krona',
+ 'EGP' => 'egiptovski funt',
+ 'ERN' => 'eritrejska nakfa',
+ 'ESA' => 'španska pezeta (račun A)',
+ 'ESB' => 'španska pezeta (račun B)',
+ 'ESP' => 'španska pezeta',
+ 'ETB' => 'etiopski bir',
+ 'EUR' => 'evro',
+ 'FIM' => 'finska marka',
+ 'FJD' => 'fidžijski dolar',
+ 'FKP' => 'falklandski funt',
+ 'FRF' => 'francoski frank',
+ 'GBP' => 'britanski funt',
+ 'GEK' => 'gruzijski bon lari',
+ 'GEL' => 'gruzijski lari',
+ 'GHC' => 'stari ganski cedi (1979–2007)',
+ 'GHS' => 'ganski cedi',
+ 'GIP' => 'gibraltarski funt',
+ 'GMD' => 'gambijski dalasi',
+ 'GNF' => 'gvinejski frank',
+ 'GNS' => 'gvinejski sili',
+ 'GQE' => 'ekwele Ekvatorialne Gvineje',
+ 'GRD' => 'grška drahma',
+ 'GTQ' => 'gvatemalski kecal',
+ 'GWE' => 'eskudo Portugalske Gvineje',
+ 'GWP' => 'peso Gvineje Bissau',
+ 'GYD' => 'gvajanski dolar',
+ 'HKD' => 'hongkonški dolar',
+ 'HNL' => 'honduraška lempira',
+ 'HRD' => 'hrvaški dinar',
+ 'HRK' => 'hrvaška kuna',
+ 'HTG' => 'haitski gurd',
+ 'HUF' => 'madžarski forint',
+ 'IDR' => 'indonezijska rupija',
+ 'IEP' => 'irski funt',
+ 'ILP' => 'izraelski funt',
+ 'ILS' => 'izraelski šekel',
+ 'INR' => 'indijska rupija',
+ 'IQD' => 'iraški dinar',
+ 'IRR' => 'iranski rial',
+ 'ISK' => 'islandska krona',
+ 'ITL' => 'italijanska lira',
+ 'JMD' => 'jamajški dolar',
+ 'JOD' => 'jordanski dinar',
+ 'JPY' => 'japonski jen',
+ 'KES' => 'kenijski šiling',
+ 'KGS' => 'kirgiški som',
+ 'KHR' => 'kamboški riel',
+ 'KMF' => 'komorski frank',
+ 'KPW' => 'severnokorejski von',
+ 'KRW' => 'južnokorejski von',
+ 'KWD' => 'kuvajtski dinar',
+ 'KYD' => 'kajmanski dolar',
+ 'KZT' => 'kazahstanski tenge',
+ 'LAK' => 'laoški kip',
+ 'LBP' => 'libanonski funt',
+ 'LKR' => 'šrilanška rupija',
+ 'LRD' => 'liberijski dolar',
+ 'LSL' => 'lesoški loti',
+ 'LTL' => 'litovski litas',
+ 'LTT' => 'litvanski litas',
+ 'LUC' => 'luksemburški konvertibilni frank',
+ 'LUF' => 'luksemburški frank',
+ 'LUL' => 'luksemburški finančni frank',
+ 'LVL' => 'latvijski lats',
+ 'LVR' => 'latvijski rubelj',
+ 'LYD' => 'libijski dinar',
+ 'MAD' => 'maroški dirham',
+ 'MAF' => 'maroški frank',
+ 'MDL' => 'moldavijski leu',
+ 'MGA' => 'malgaški ariarij',
+ 'MGF' => 'malgaški frank',
+ 'MKD' => 'makedonski denar',
+ 'MLF' => 'malijski frank',
+ 'MMK' => 'mjanmarski kjat',
+ 'MNT' => 'mongolski tugrik',
+ 'MOP' => 'makavska pataka',
+ 'MRO' => 'mavretanska uguija',
+ 'MTL' => 'malteška lira',
+ 'MTP' => 'malteški funt',
+ 'MUR' => 'mavricijska rupija',
+ 'MVR' => 'maldivska rufija',
+ 'MWK' => 'malavijska kvača',
+ 'MXN' => 'mehiški peso',
+ 'MXP' => 'mehiški srebrni peso (1861–1992)',
+ 'MXV' => 'mehiška inverzna enota (UDI)',
+ 'MYR' => 'malezijski ringit',
+ 'MZE' => 'mozambiški eskudo',
+ 'MZM' => 'stari mozambiški metikal',
+ 'MZN' => 'mozambiški metikal',
+ 'NAD' => 'namibijski dolar',
+ 'NGN' => 'nigerijska naira',
+ 'NIC' => 'nikaraška kordova',
+ 'NIO' => 'nikaraška zlata kordova',
+ 'NLG' => 'nizozemski gulden',
+ 'NOK' => 'norveška krona',
+ 'NPR' => 'nepalska rupija',
+ 'NZD' => 'novozelandski dolar',
+ 'OMR' => 'omanski rial',
+ 'PAB' => 'panamska balboa',
+ 'PEI' => 'perujski inti',
+ 'PEN' => 'perujski novi sol',
+ 'PES' => 'perujski sol',
+ 'PGK' => 'kina Papue Nove Gvineje',
+ 'PHP' => 'filipinski peso',
+ 'PKR' => 'pakistanska rupija',
+ 'PLN' => 'poljski novi zlot',
+ 'PLZ' => 'stari poljski zlot (1950–1995)',
+ 'PTE' => 'portugalski eskudo',
+ 'PYG' => 'paragvajski gvarani',
+ 'QAR' => 'katarski rial',
+ 'RHD' => 'rodezijski dolar',
+ 'ROL' => 'stari romunski leu',
+ 'RON' => 'romunski leu',
+ 'RSD' => 'srbski dinar',
+ 'RUB' => 'ruski rubelj',
+ 'RUR' => 'ruski rubelj (1991–1998)',
+ 'RWF' => 'ruandski frank',
+ 'SAR' => 'saudski rial',
+ 'SBD' => 'solomonski dolar',
+ 'SCR' => 'sejšelska rupija',
+ 'SDD' => 'stari sudanski dinar',
+ 'SDG' => 'sudanski funt',
+ 'SDP' => 'stari sudanski funt',
+ 'SEK' => 'švedska krona',
+ 'SGD' => 'singapurski dolar',
+ 'SHP' => 'funt Sv. Helene',
+ 'SIT' => 'slovenski tolar',
+ 'SKK' => 'slovaška krona',
+ 'SLL' => 'sieraleonski leone',
+ 'SOS' => 'somalski šiling',
+ 'SRD' => 'surinamski dolar',
+ 'SRG' => 'surinamski gulden',
+ 'SSP' => 'južnosudanski funt',
+ 'STD' => 'saotomejska dobra',
+ 'SUR' => 'sovjetski rubelj',
+ 'SVC' => 'salvadorski kolon',
+ 'SYP' => 'sirijski funt',
+ 'SZL' => 'svazijski lilangeni',
+ 'THB' => 'tajski baht',
+ 'TJR' => 'tadžikistanski rubelj',
+ 'TJS' => 'tadžikistanski somoni',
+ 'TMM' => 'turkmenski manat',
+ 'TMT' => 'turkmenistanski novi manat',
+ 'TND' => 'tunizijski dinar',
+ 'TOP' => 'tongovska paanga',
+ 'TPE' => 'timorski eskudo',
+ 'TRL' => 'stara turška lira',
+ 'TRY' => 'nova turška lira',
+ 'TTD' => 'dolar Trinidada in Tobaga',
+ 'TWD' => 'novi tajvanski dolar',
+ 'TZS' => 'tanzanijski šiling',
+ 'UAH' => 'ukrajinska grivna',
+ 'UAK' => 'ukrajinski karbovanci',
+ 'UGS' => 'stari ugandski šiling (1966–1987)',
+ 'UGX' => 'ugandski šiling',
+ 'USD' => 'ameriški dolar',
+ 'USN' => 'ameriški dolar, naslednji dan',
+ 'USS' => 'ameriški dolar, isti dan',
+ 'UYP' => 'stari urugvajski peso (1975–1993)',
+ 'UYU' => 'urugvajski peso',
+ 'UZS' => 'uzbeški sum',
+ 'VEB' => 'venezuelski bolivar (1871–2008)',
+ 'VEF' => 'venezuelski bolivar',
+ 'VND' => 'vientnamski dong',
+ 'VUV' => 'vanuatujski vatu',
+ 'WST' => 'samoanska tala',
+ 'XAF' => 'CFA frank BEAC',
+ 'XAG' => 'srebro',
+ 'XAU' => 'zlato',
+ 'XBA' => 'evropska sestavljena enota',
+ 'XBB' => 'evropska monetarna enota',
+ 'XBC' => 'evropska obračunska enota (XBC)',
+ 'XBD' => 'evropska obračunska enota (XBD)',
+ 'XCD' => 'vzhodnokaribski dolar',
+ 'XDR' => 'posebne pravice črpanja',
+ 'XEU' => 'evropska denarna enota',
+ 'XFO' => 'zlati frank',
+ 'XFU' => 'frank UIC',
+ 'XOF' => 'CFA frank BCEAO',
+ 'XPD' => 'paladij',
+ 'XPF' => 'CFP frank',
+ 'XPT' => 'platina',
+ 'XTS' => 'koda za potrebe testiranja',
+ 'XXX' => 'neznana ali neveljavna valuta',
+ 'YDD' => 'jemenski dinar',
+ 'YER' => 'jemenski rial',
+ 'YUD' => 'stari jugoslovanski dinar',
+ 'YUM' => 'novi jugoslovanski dinar',
+ 'YUN' => 'jugoslovanski konvertibilni dinar',
+ 'ZAL' => 'južnoafriški finančni rand',
+ 'ZAR' => 'južnoafriški rand',
+ 'ZMK' => 'zambijska kvača (1968–2012)',
+ 'ZMW' => 'zambijska kvača',
+ 'ZRN' => 'zairski novi zaire',
+ 'ZRZ' => 'zairski zaire',
+ 'ZWD' => 'zimbabvejski dolar',
+ 'ZWL' => 'zimbabvejski dolar (2009)',
+);
+
+$currencySymbols = array(
+ 'AED' => 'AED',
+ 'AFN' => 'AFN',
+ 'ALL' => 'ALL',
+ 'AMD' => 'AMD',
+ 'ANG' => 'ANG',
+ 'AOA' => 'AOA',
+ 'ARS' => 'ARS',
+ 'AUD' => 'A$',
+ 'AWG' => 'AWG',
+ 'AZN' => 'AZN',
+ 'BAM' => 'BAM',
+ 'BBD' => 'BBD',
+ 'BDT' => 'BDT',
+ 'BGN' => 'BGN',
+ 'BHD' => 'BHD',
+ 'BIF' => 'BIF',
+ 'BMD' => 'BMD',
+ 'BND' => 'BND',
+ 'BOB' => 'BOB',
+ 'BRL' => 'R$',
+ 'BSD' => 'BSD',
+ 'BTN' => 'BTN',
+ 'BWP' => 'BWP',
+ 'BYR' => 'BYR',
+ 'BZD' => 'BZD',
+ 'CAD' => 'CAD',
+ 'CDF' => 'CDF',
+ 'CHF' => 'CHF',
+ 'CLP' => 'CLP',
+ 'CNY' => 'CN¥',
+ 'COP' => 'COP',
+ 'CRC' => 'CRC',
+ 'CUC' => 'CUC',
+ 'CUP' => 'CUP',
+ 'CVE' => 'CVE',
+ 'CZK' => 'CZK',
+ 'DJF' => 'DJF',
+ 'DKK' => 'DKK',
+ 'DOP' => 'DOP',
+ 'DZD' => 'DZD',
+ 'EGP' => 'EGP',
+ 'ERN' => 'ERN',
+ 'ETB' => 'ETB',
+ 'EUR' => '€',
+ 'FJD' => 'FJD',
+ 'FKP' => 'FKP',
+ 'GBP' => '£',
+ 'GEL' => 'GEL',
+ 'GHS' => 'GHS',
+ 'GIP' => 'GIP',
+ 'GMD' => 'GMD',
+ 'GNF' => 'GNF',
+ 'GTQ' => 'GTQ',
+ 'GYD' => 'GYD',
+ 'HKD' => 'HK$',
+ 'HNL' => 'HNL',
+ 'HRK' => 'HRK',
+ 'HTG' => 'HTG',
+ 'HUF' => 'HUF',
+ 'IDR' => 'IDR',
+ 'ILS' => '₪',
+ 'INR' => '₹',
+ 'IQD' => 'IQD',
+ 'IRR' => 'IRR',
+ 'ISK' => 'ISK',
+ 'JMD' => 'JMD',
+ 'JOD' => 'JOD',
+ 'JPY' => '¥',
+ 'KES' => 'KES',
+ 'KGS' => 'KGS',
+ 'KHR' => 'KHR',
+ 'KMF' => 'KMF',
+ 'KPW' => 'KPW',
+ 'KRW' => '₩',
+ 'KWD' => 'KWD',
+ 'KYD' => 'KYD',
+ 'KZT' => 'KZT',
+ 'LAK' => 'LAK',
+ 'LBP' => 'LBP',
+ 'LKR' => 'LKR',
+ 'LRD' => 'LRD',
+ 'LTL' => 'LTL',
+ 'LVL' => 'LVL',
+ 'LYD' => 'LYD',
+ 'MAD' => 'MAD',
+ 'MDL' => 'MDL',
+ 'MGA' => 'MGA',
+ 'MKD' => 'MKD',
+ 'MMK' => 'MMK',
+ 'MNT' => 'MNT',
+ 'MOP' => 'MOP',
+ 'MRO' => 'MRO',
+ 'MUR' => 'MUR',
+ 'MVR' => 'MVR',
+ 'MWK' => 'MWK',
+ 'MXN' => 'MX$',
+ 'MYR' => 'MYR',
+ 'MZN' => 'MZN',
+ 'NAD' => 'NAD',
+ 'NGN' => 'NGN',
+ 'NIO' => 'NIO',
+ 'NOK' => 'NOK',
+ 'NPR' => 'NPR',
+ 'NZD' => 'NZ$',
+ 'OMR' => 'OMR',
+ 'PAB' => 'PAB',
+ 'PEN' => 'PEN',
+ 'PGK' => 'PGK',
+ 'PHP' => 'PHP',
+ 'PKR' => 'PKR',
+ 'PLN' => 'PLN',
+ 'PYG' => 'PYG',
+ 'QAR' => 'QAR',
+ 'RON' => 'RON',
+ 'RSD' => 'RSD',
+ 'RUB' => 'RUB',
+ 'RWF' => 'RWF',
+ 'SAR' => 'SAR',
+ 'SBD' => 'SBD',
+ 'SCR' => 'SCR',
+ 'SDG' => 'SDG',
+ 'SEK' => 'SEK',
+ 'SGD' => 'SGD',
+ 'SHP' => 'SHP',
+ 'SLL' => 'SLL',
+ 'SOS' => 'SOS',
+ 'SRD' => 'SRD',
+ 'SSP' => 'SSP',
+ 'STD' => 'STD',
+ 'SYP' => 'SYP',
+ 'SZL' => 'SZL',
+ 'THB' => '฿',
+ 'TJS' => 'TJS',
+ 'TMT' => 'TMT',
+ 'TND' => 'TND',
+ 'TOP' => 'TOP',
+ 'TRY' => 'TRY',
+ 'TTD' => 'TTD',
+ 'TWD' => 'NT$',
+ 'TZS' => 'TZS',
+ 'UAH' => 'UAH',
+ 'UGX' => 'UGX',
+ 'USD' => '$',
+ 'UYU' => 'UYU',
+ 'UZS' => 'UZS',
+ 'VEF' => 'VEF',
+ 'VND' => '₫',
+ 'VUV' => 'VUV',
+ 'WST' => 'WST',
+ 'XAF' => 'FCFA',
+ 'XCD' => 'EC$',
+ 'XOF' => 'CFA',
+ 'XPF' => 'CFPF',
+ 'YER' => 'YER',
+ 'ZAR' => 'ZAR',
+ 'ZMW' => 'ZMW',
+);
+
+$countryNames = array(
+ 'AC' => 'Otok Ascension',
+ 'AD' => 'Andora',
+ 'AE' => 'Združeni arabski emirati',
+ 'AF' => 'Afganistan',
+ 'AG' => 'Antigva in Barbuda',
+ 'AI' => 'Angvila',
+ 'AL' => 'Albanija',
+ 'AM' => 'Armenija',
+ 'AN' => 'Nizozemski Antili',
+ 'AO' => 'Angola',
+ 'AQ' => 'Antarktika',
+ 'AR' => 'Argentina',
+ 'AS' => 'Ameriška Samoa',
+ 'AT' => 'Avstrija',
+ 'AU' => 'Avstralija',
+ 'AW' => 'Aruba',
+ 'AX' => 'Ålandski otoki',
+ 'AZ' => 'Azerbajdžan',
+ 'BA' => 'Bosna in Hercegovina',
+ 'BB' => 'Barbados',
+ 'BD' => 'Bangladeš',
+ 'BE' => 'Belgija',
+ 'BF' => 'Burkina Faso',
+ 'BG' => 'Bolgarija',
+ 'BH' => 'Bahrajn',
+ 'BI' => 'Burundi',
+ 'BJ' => 'Benin',
+ 'BL' => 'Saint Barthélemy',
+ 'BM' => 'Bermudi',
+ 'BN' => 'Brunej',
+ 'BO' => 'Bolivija',
+ 'BQ' => 'Nizozemski Karibi',
+ 'BR' => 'Brazilija',
+ 'BS' => 'Bahami',
+ 'BT' => 'Butan',
+ 'BV' => 'Bouvetov otok',
+ 'BW' => 'Bocvana',
+ 'BY' => 'Belorusija',
+ 'BZ' => 'Belize',
+ 'CA' => 'Kanada',
+ 'CC' => 'Kokosovi otoki',
+ 'CD' => 'Demokratična republika Kongo',
+ 'CF' => 'Centralnoafriška republika',
+ 'CG' => 'Kongo - Brazzaville',
+ 'CH' => 'Švica',
+ 'CI' => 'Slonokoščena obala',
+ 'CK' => 'Cookovi otoki',
+ 'CL' => 'Čile',
+ 'CM' => 'Kamerun',
+ 'CN' => 'Kitajska',
+ 'CO' => 'Kolumbija',
+ 'CP' => 'Otok Clipperton',
+ 'CR' => 'Kostarika',
+ 'CU' => 'Kuba',
+ 'CV' => 'Zelenortski otoki',
+ 'CW' => 'Curaçao',
+ 'CX' => 'Božični otok',
+ 'CY' => 'Ciper',
+ 'CZ' => 'Češka',
+ 'DE' => 'Nemčija',
+ 'DG' => 'Diego Garcia',
+ 'DJ' => 'Džibuti',
+ 'DK' => 'Danska',
+ 'DM' => 'Dominika',
+ 'DO' => 'Dominikanska republika',
+ 'DZ' => 'Alžirija',
+ 'EA' => 'Ceuta in Melilla',
+ 'EC' => 'Ekvador',
+ 'EE' => 'Estonija',
+ 'EG' => 'Egipt',
+ 'EH' => 'Zahodna Sahara',
+ 'ER' => 'Eritreja',
+ 'ES' => 'Španija',
+ 'ET' => 'Etiopija',
+ 'EU' => 'Evropska unija',
+ 'FI' => 'Finska',
+ 'FJ' => 'Fidži',
+ 'FK' => 'Falklandski otoki',
+ 'FM' => 'Mikronezija',
+ 'FO' => 'Ferski otoki',
+ 'FR' => 'Francija',
+ 'GA' => 'Gabon',
+ 'GB' => 'ZK',
+ 'GD' => 'Grenada',
+ 'GE' => 'Gruzija',
+ 'GF' => 'Francoska Gvajana',
+ 'GG' => 'Guernsey',
+ 'GH' => 'Gana',
+ 'GI' => 'Gibraltar',
+ 'GL' => 'Grenlandija',
+ 'GM' => 'Gambija',
+ 'GN' => 'Gvineja',
+ 'GP' => 'Gvadalupe',
+ 'GQ' => 'Ekvatorialna Gvineja',
+ 'GR' => 'Grčija',
+ 'GS' => 'Južna Georgia in Južni Sandwichevi otoki',
+ 'GT' => 'Gvatemala',
+ 'GU' => 'Guam',
+ 'GW' => 'Gvineja Bissau',
+ 'GY' => 'Gvajana',
+ 'HK' => 'Hongkong',
+ 'HM' => 'Heardov otok in McDonaldovi otoki',
+ 'HN' => 'Honduras',
+ 'HR' => 'Hrvaška',
+ 'HT' => 'Haiti',
+ 'HU' => 'Madžarska',
+ 'IC' => 'Kanarski otoki',
+ 'ID' => 'Indonezija',
+ 'IE' => 'Irska',
+ 'IL' => 'Izrael',
+ 'IM' => 'Otok Man',
+ 'IN' => 'Indija',
+ 'IO' => 'Britansko ozemlje v Indijskem oceanu',
+ 'IQ' => 'Irak',
+ 'IR' => 'Iran',
+ 'IS' => 'Islandija',
+ 'IT' => 'Italija',
+ 'JE' => 'Jersey',
+ 'JM' => 'Jamajka',
+ 'JO' => 'Jordanija',
+ 'JP' => 'Japonska',
+ 'KE' => 'Kenija',
+ 'KG' => 'Kirgizistan',
+ 'KH' => 'Kambodža',
+ 'KI' => 'Kiribati',
+ 'KM' => 'Komori',
+ 'KN' => 'Saint Kitts in Nevis',
+ 'KP' => 'Severna Koreja',
+ 'KR' => 'Južna Koreja',
+ 'KW' => 'Kuvajt',
+ 'KY' => 'Kajmanski otoki',
+ 'KZ' => 'Kazahstan',
+ 'LA' => 'Laos',
+ 'LB' => 'Libanon',
+ 'LC' => 'Saint Lucia',
+ 'LI' => 'Lihtenštajn',
+ 'LK' => 'Šrilanka',
+ 'LR' => 'Liberija',
+ 'LS' => 'Lesoto',
+ 'LT' => 'Litva',
+ 'LU' => 'Luksemburg',
+ 'LV' => 'Latvija',
+ 'LY' => 'Libija',
+ 'MA' => 'Maroko',
+ 'MC' => 'Monako',
+ 'MD' => 'Moldavija',
+ 'ME' => 'Črna gora',
+ 'MF' => 'Saint Martin',
+ 'MG' => 'Madagaskar',
+ 'MH' => 'Marshallovi otoki',
+ 'MK' => 'Makedonija',
+ 'ML' => 'Mali',
+ 'MM' => 'Mjanmar (Burma)',
+ 'MN' => 'Mongolija',
+ 'MO' => 'Macao',
+ 'MP' => 'Severni Marianski otoki',
+ 'MQ' => 'Martinik',
+ 'MR' => 'Mavretanija',
+ 'MS' => 'Montserrat',
+ 'MT' => 'Malta',
+ 'MU' => 'Mauritius',
+ 'MV' => 'Maldivi',
+ 'MW' => 'Malavi',
+ 'MX' => 'Mehika',
+ 'MY' => 'Malezija',
+ 'MZ' => 'Mozambik',
+ 'NA' => 'Namibija',
+ 'NC' => 'Nova Kaledonija',
+ 'NE' => 'Niger',
+ 'NF' => 'Norfolški otok',
+ 'NG' => 'Nigerija',
+ 'NI' => 'Nikaragva',
+ 'NL' => 'Nizozemska',
+ 'NO' => 'Norveška',
+ 'NP' => 'Nepal',
+ 'NR' => 'Nauru',
+ 'NU' => 'Niue',
+ 'NZ' => 'Nova Zelandija',
+ 'OM' => 'Oman',
+ 'PA' => 'Panama',
+ 'PE' => 'Peru',
+ 'PF' => 'Francoska Polinezija',
+ 'PG' => 'Papua Nova Gvineja',
+ 'PH' => 'Filipini',
+ 'PK' => 'Pakistan',
+ 'PL' => 'Poljska',
+ 'PM' => 'Saint Pierre in Miquelon',
+ 'PN' => 'Pitcairn',
+ 'PR' => 'Portoriko',
+ 'PS' => 'Palestina',
+ 'PT' => 'Portugalska',
+ 'PW' => 'Palau',
+ 'PY' => 'Paragvaj',
+ 'QA' => 'Katar',
+ 'QO' => 'Ostala oceanija',
+ 'RE' => 'Reunion',
+ 'RO' => 'Romunija',
+ 'RS' => 'Srbija',
+ 'RU' => 'Rusija',
+ 'RW' => 'Ruanda',
+ 'SA' => 'Saudova Arabija',
+ 'SB' => 'Salomonovi otoki',
+ 'SC' => 'Sejšeli',
+ 'SD' => 'Sudan',
+ 'SE' => 'Švedska',
+ 'SG' => 'Singapur',
+ 'SH' => 'Sveta Helena',
+ 'SI' => 'Slovenija',
+ 'SJ' => 'Svalbard in Jan Mayen',
+ 'SK' => 'Slovaška',
+ 'SL' => 'Sierra Leone',
+ 'SM' => 'San Marino',
+ 'SN' => 'Senegal',
+ 'SO' => 'Somalija',
+ 'SR' => 'Surinam',
+ 'SS' => 'Južni Sudan',
+ 'ST' => 'Sao Tome in Principe',
+ 'SV' => 'Salvador',
+ 'SX' => 'Sint Maarten',
+ 'SY' => 'Sirija',
+ 'SZ' => 'Svazi',
+ 'TA' => 'Tristan da Cunha',
+ 'TC' => 'Otočji Turks in Caicos',
+ 'TD' => 'Čad',
+ 'TF' => 'Francosko južno ozemlje',
+ 'TG' => 'Togo',
+ 'TH' => 'Tajska',
+ 'TJ' => 'Tadžikistan',
+ 'TK' => 'Tokelau',
+ 'TL' => 'Vzhodni Timor',
+ 'TM' => 'Turkmenistan',
+ 'TN' => 'Tunizija',
+ 'TO' => 'Tonga',
+ 'TR' => 'Turčija',
+ 'TT' => 'Trinidad in Tobago',
+ 'TV' => 'Tuvalu',
+ 'TW' => 'Tajvan',
+ 'TZ' => 'Tanzanija',
+ 'UA' => 'Ukrajina',
+ 'UG' => 'Uganda',
+ 'UM' => 'Druga ameriška ozemlja v Tihem oceanu',
+ 'US' => 'ZDA',
+ 'UY' => 'Urugvaj',
+ 'UZ' => 'Uzbekistan',
+ 'VA' => 'Vatikan',
+ 'VC' => 'Saint Vincent in Grenadine',
+ 'VE' => 'Venezuela',
+ 'VG' => 'Britanski Deviški otoki',
+ 'VI' => 'Ameriški Deviški otoki',
+ 'VN' => 'Vietnam',
+ 'VU' => 'Vanuatu',
+ 'WF' => 'Wallis in Futuna',
+ 'WS' => 'Samoa',
+ 'XK' => 'Kosovo',
+ 'YE' => 'Jemen',
+ 'YT' => 'Mayotte',
+ 'ZA' => 'Južnoafriška republika',
+ 'ZM' => 'Zambija',
+ 'ZW' => 'Zimbabve',
+);
+
+$timeUnits = array(
+ 'day-few' => '{0} dnevi',
+ 'day-future-few' => 'čez {0} dni',
+ 'day-future-one' => 'čez {0} dan',
+ 'day-future-other' => 'čez {0} dni',
+ 'day-future-two' => 'čez {0} dneva',
+ 'day-narrow-future-few' => 'čez {0} d',
+ 'day-narrow-future-one' => 'čez {0} dan',
+ 'day-narrow-future-other' => 'čez {0} d',
+ 'day-narrow-future-two' => 'čez {0} d',
+ 'day-narrow-past-few' => 'pred {0} d',
+ 'day-narrow-past-one' => 'pred {0} d',
+ 'day-narrow-past-other' => 'pred {0} d',
+ 'day-narrow-past-two' => 'pred {0} d',
+ 'day-one' => '{0} dan',
+ 'day-other' => '{0} dni',
+ 'day-past-few' => 'pred {0} dnevi',
+ 'day-past-one' => 'pred {0} dnevom',
+ 'day-past-other' => 'pred {0} dnevi',
+ 'day-past-two' => 'pred {0} dnevoma',
+ 'day-short-future-few' => 'čez {0} d',
+ 'day-short-future-one' => 'čez {0} d',
+ 'day-short-future-other' => 'čez {0} d',
+ 'day-short-future-two' => 'čez {0} d',
+ 'day-short-past-few' => 'pred {0} d',
+ 'day-short-past-one' => 'pred {0} d',
+ 'day-short-past-other' => 'pred {0} d',
+ 'day-short-past-two' => 'pred {0} d',
+ 'day-two' => '{0} dni',
+ 'hour-few' => '{0} ure',
+ 'hour-future-few' => 'čez {0} h',
+ 'hour-future-one' => 'čez {0} h',
+ 'hour-future-other' => 'čez {0} h',
+ 'hour-future-two' => 'čez {0} h',
+ 'hour-narrow-future-few' => 'čez {0} h',
+ 'hour-narrow-future-one' => 'čez {0} h',
+ 'hour-narrow-future-other' => 'čez {0} h',
+ 'hour-narrow-future-two' => 'čez {0} h',
+ 'hour-narrow-past-few' => 'pred {0} h',
+ 'hour-narrow-past-one' => 'pred {0} h',
+ 'hour-narrow-past-other' => 'pred {0} h',
+ 'hour-narrow-past-two' => 'pred {0} h',
+ 'hour-one' => '{0} ura',
+ 'hour-other' => '{0} ur',
+ 'hour-past-few' => 'pred {0} h',
+ 'hour-past-one' => 'pred {0} h',
+ 'hour-past-other' => 'pred {0} h',
+ 'hour-past-two' => 'pred {0} h',
+ 'hour-short-future-few' => 'čez {0} h',
+ 'hour-short-future-one' => 'čez {0} h',
+ 'hour-short-future-other' => 'čez {0} h',
+ 'hour-short-future-two' => 'čez {0} h',
+ 'hour-short-past-few' => 'pred {0} h',
+ 'hour-short-past-one' => 'pred {0} h',
+ 'hour-short-past-other' => 'pred {0} h',
+ 'hour-short-past-two' => 'pred {0} h',
+ 'hour-two' => '{0} uri',
+ 'microsecond-few' => '{0} μs',
+ 'microsecond-one' => '{0} μs',
+ 'microsecond-other' => '{0} μs',
+ 'microsecond-two' => '{0} μs',
+ 'millisecond-few' => '{0} ms',
+ 'millisecond-one' => '{0} ms',
+ 'millisecond-other' => '{0} ms',
+ 'millisecond-two' => '{0} ms',
+ 'minute-few' => '{0} minute',
+ 'minute-future-few' => 'čez {0} min.',
+ 'minute-future-one' => 'čez {0} min.',
+ 'minute-future-other' => 'čez {0} min.',
+ 'minute-future-two' => 'čez {0} min.',
+ 'minute-narrow-future-few' => 'čez {0} min',
+ 'minute-narrow-future-one' => 'čez {0} min',
+ 'minute-narrow-future-other' => 'čez {0} min',
+ 'minute-narrow-future-two' => 'čez {0} min',
+ 'minute-narrow-past-few' => 'pred {0} min',
+ 'minute-narrow-past-one' => 'pred {0} min',
+ 'minute-narrow-past-other' => 'pred {0} min',
+ 'minute-narrow-past-two' => 'pred {0} min',
+ 'minute-one' => '{0} minuta',
+ 'minute-other' => '{0} minut',
+ 'minute-past-few' => 'pred {0} min.',
+ 'minute-past-one' => 'pred {0} min.',
+ 'minute-past-other' => 'pred {0} min.',
+ 'minute-past-two' => 'pred {0} min.',
+ 'minute-short-future-few' => 'čez {0} min',
+ 'minute-short-future-one' => 'čez {0} min',
+ 'minute-short-future-other' => 'čez {0} min',
+ 'minute-short-future-two' => 'čez {0} min',
+ 'minute-short-past-few' => 'pred {0} min',
+ 'minute-short-past-one' => 'pred {0} min',
+ 'minute-short-past-other' => 'pred {0} min',
+ 'minute-short-past-two' => 'pred {0} min',
+ 'minute-two' => '{0} minuti',
+ 'month-few' => '{0} meseci',
+ 'month-future-few' => 'čez {0} mesece',
+ 'month-future-one' => 'čez {0} mesec',
+ 'month-future-other' => 'čez {0} mesecev',
+ 'month-future-two' => 'čez {0} meseca',
+ 'month-narrow-future-few' => 'čez {0} mes.',
+ 'month-narrow-future-one' => 'čez {0} mes.',
+ 'month-narrow-future-other' => 'čez {0} mes.',
+ 'month-narrow-future-two' => 'čez {0} mes.',
+ 'month-narrow-past-few' => 'pred {0} mes.',
+ 'month-narrow-past-one' => 'pred {0} mes.',
+ 'month-narrow-past-other' => 'pred {0} mes.',
+ 'month-narrow-past-two' => 'pred {0} mes.',
+ 'month-one' => '{0} mesec',
+ 'month-other' => '{0} mesecev',
+ 'month-past-few' => 'pred {0} meseci',
+ 'month-past-one' => 'pred {0} mesecem',
+ 'month-past-other' => 'pred {0} meseci',
+ 'month-past-two' => 'pred {0} mesecema',
+ 'month-short-future-few' => 'čez {0} mesece',
+ 'month-short-future-one' => 'čez {0} mesec',
+ 'month-short-future-other' => 'čez {0} mesece',
+ 'month-short-future-two' => 'čez {0} meseca',
+ 'month-short-past-few' => 'pred {0} meseci',
+ 'month-short-past-one' => 'pred {0} mesecem',
+ 'month-short-past-other' => 'pred {0} meseci',
+ 'month-short-past-two' => 'pred {0} mesecema',
+ 'month-two' => '{0} meseca',
+ 'nanosecond-few' => '{0} ns',
+ 'nanosecond-one' => '{0} ns',
+ 'nanosecond-other' => '{0} ns',
+ 'nanosecond-two' => '{0} ns',
+ 'quarter-future-few' => 'čez {0} četrtletja',
+ 'quarter-future-one' => 'čez {0} četrtletje',
+ 'quarter-future-other' => 'čez {0} četrtletij',
+ 'quarter-future-two' => 'čez {0} četrtletji',
+ 'quarter-narrow-future-few' => 'čez {0} četrtletja',
+ 'quarter-narrow-future-one' => 'čez {0} četrtletje',
+ 'quarter-narrow-future-other' => 'čez {0} četrtletij',
+ 'quarter-narrow-future-two' => 'čez {0} četrtletji',
+ 'quarter-narrow-past-few' => 'pred {0} četrtletji',
+ 'quarter-narrow-past-one' => 'pred {0} četrtletjem',
+ 'quarter-narrow-past-other' => 'pred {0} četrtletji',
+ 'quarter-narrow-past-two' => 'pred {0} četrtletjema',
+ 'quarter-past-few' => 'pred {0} četrtletji',
+ 'quarter-past-one' => 'pred {0} četrtletjem',
+ 'quarter-past-other' => 'pred {0} četrtletji',
+ 'quarter-past-two' => 'pred {0} četrtletjema',
+ 'quarter-short-future-few' => 'čez {0} četrtletja',
+ 'quarter-short-future-one' => 'čez {0} četrtletje',
+ 'quarter-short-future-other' => 'čez {0} četrtletja',
+ 'quarter-short-future-two' => 'čez {0} četrtletji',
+ 'quarter-short-past-few' => 'pred {0} četrtletji',
+ 'quarter-short-past-one' => 'pred {0} četrtletjem',
+ 'quarter-short-past-other' => 'pred {0} četrtletji',
+ 'quarter-short-past-two' => 'pred {0} četrtletjema',
+ 'second-few' => '{0} sekunde',
+ 'second-future-few' => 'čez {0} sekunde',
+ 'second-future-one' => 'čez {0} sekundo',
+ 'second-future-other' => 'čez {0} sekund',
+ 'second-future-two' => 'čez {0} sekundi',
+ 'second-narrow-future-few' => 'čez {0} s',
+ 'second-narrow-future-one' => 'čez {0} s',
+ 'second-narrow-future-other' => 'čez {0} s',
+ 'second-narrow-future-two' => 'čez {0} s',
+ 'second-narrow-past-few' => 'pred {0} s',
+ 'second-narrow-past-one' => 'pred {0} s',
+ 'second-narrow-past-other' => 'pred {0} s',
+ 'second-narrow-past-two' => 'pred {0} s',
+ 'second-one' => '{0} sekunda',
+ 'second-other' => '{0} sekund',
+ 'second-past-few' => 'pred {0} sekundami',
+ 'second-past-one' => 'pred {0} sekundo',
+ 'second-past-other' => 'pred {0} sekundami',
+ 'second-past-two' => 'pred {0} sekundama',
+ 'second-short-future-few' => 'čez {0} s',
+ 'second-short-future-one' => 'čez {0} s',
+ 'second-short-future-other' => 'čez {0} s',
+ 'second-short-future-two' => 'čez {0} s',
+ 'second-short-past-few' => 'pred {0} s',
+ 'second-short-past-one' => 'pred {0} s',
+ 'second-short-past-other' => 'pred {0} s',
+ 'second-short-past-two' => 'pred {0} s',
+ 'second-two' => '{0} sekundi',
+ 'week-few' => '{0} tedni',
+ 'week-future-few' => 'čez {0} tedne',
+ 'week-future-one' => 'čez {0} teden',
+ 'week-future-other' => 'čez {0} tednov',
+ 'week-future-two' => 'čez {0} tedna',
+ 'week-narrow-future-few' => 'čez {0} tedne',
+ 'week-narrow-future-one' => 'čez {0} teden',
+ 'week-narrow-future-other' => 'čez {0} tednov',
+ 'week-narrow-future-two' => 'čez {0} tedna',
+ 'week-narrow-past-few' => 'pred {0} tedni',
+ 'week-narrow-past-one' => 'pred {0} tednom',
+ 'week-narrow-past-other' => 'pred {0} tedni',
+ 'week-narrow-past-two' => 'pred {0} tednoma',
+ 'week-one' => '{0} teden',
+ 'week-other' => '{0} tednov',
+ 'week-past-few' => 'pred {0} tedni',
+ 'week-past-one' => 'pred {0} tednom',
+ 'week-past-other' => 'pred {0} tedni',
+ 'week-past-two' => 'pred {0} tednoma',
+ 'week-short-future-few' => 'čez {0} tedne',
+ 'week-short-future-one' => 'čez {0} teden',
+ 'week-short-future-other' => 'čez {0} tednov',
+ 'week-short-future-two' => 'čez {0} tedna',
+ 'week-short-past-few' => 'pred {0} tedni',
+ 'week-short-past-one' => 'pred {0} tednom',
+ 'week-short-past-other' => 'pred {0} tedni',
+ 'week-short-past-two' => 'pred {0} tednoma',
+ 'week-two' => '{0} tedna',
+ 'year-few' => '{0} leta',
+ 'year-future-few' => 'čez {0} leta',
+ 'year-future-one' => 'čez {0} leto',
+ 'year-future-other' => 'čez {0} let',
+ 'year-future-two' => 'čez {0} leti',
+ 'year-narrow-future-few' => 'čez {0} leta',
+ 'year-narrow-future-one' => 'čez {0} leto',
+ 'year-narrow-future-other' => 'čez {0} let',
+ 'year-narrow-future-two' => 'čez {0} leti',
+ 'year-narrow-past-few' => 'pred {0} leti',
+ 'year-narrow-past-one' => 'pred {0} letom',
+ 'year-narrow-past-other' => 'pred {0} leti',
+ 'year-narrow-past-two' => 'pred {0} letoma',
+ 'year-one' => '{0} leto',
+ 'year-other' => '{0} let',
+ 'year-past-few' => 'pred {0} leti',
+ 'year-past-one' => 'pred {0} letom',
+ 'year-past-other' => 'pred {0} leti',
+ 'year-past-two' => 'pred {0} letoma',
+ 'year-short-future-few' => 'čez {0} leta',
+ 'year-short-future-one' => 'čez {0} leto',
+ 'year-short-future-other' => 'čez {0} let',
+ 'year-short-future-two' => 'čez {0} leti',
+ 'year-short-past-few' => 'pred {0} leti',
+ 'year-short-past-one' => 'pred {0} letom',
+ 'year-short-past-other' => 'pred {0} leti',
+ 'year-short-past-two' => 'pred {0} letoma',
+ 'year-two' => '{0} leti',
+);
diff --git a/MLEB/cldr/CldrNames/CldrNamesSn.php b/MLEB/cldr/CldrNames/CldrNamesSn.php
new file mode 100644
index 00000000..167d76fc
--- /dev/null
+++ b/MLEB/cldr/CldrNames/CldrNamesSn.php
@@ -0,0 +1,335 @@
+<?php
+
+$languageNames = array(
+ 'ak' => 'chiAkani',
+ 'am' => 'chiAmaric',
+ 'ar' => 'chiArabu',
+ 'be' => 'chiBelarusi',
+ 'bg' => 'chiBulgarian',
+ 'bn' => 'chiBengali',
+ 'cs' => 'chiCzech',
+ 'de' => 'chiJerimani',
+ 'el' => 'chiGreek',
+ 'en' => 'Chirungu',
+ 'es' => 'chiSpanish',
+ 'fa' => 'chiPeshiya',
+ 'fr' => 'chiFurenchi',
+ 'ha' => 'chiHausa',
+ 'hi' => 'chiHindi',
+ 'hu' => 'chiHungari',
+ 'id' => 'chiIndonesia',
+ 'ig' => 'chiIgbo',
+ 'it' => 'chiTariana',
+ 'ja' => 'chiJapani',
+ 'jv' => 'chiJava',
+ 'km' => 'chiKhema',
+ 'ko' => 'chiKoria',
+ 'ms' => 'chiMalay',
+ 'my' => 'chiBurma',
+ 'ne' => 'chiNepali',
+ 'nl' => 'chiDutch',
+ 'pa' => 'chiPunjabi',
+ 'pl' => 'chiPolish',
+ 'pt' => 'chiPutukezi',
+ 'ro' => 'chiRomanian',
+ 'ru' => 'chiRashiya',
+ 'rw' => 'chiRwanda',
+ 'sn' => 'chiShona',
+ 'so' => 'chiSomali',
+ 'sv' => 'chiSwedish',
+ 'ta' => 'chiTamil',
+ 'th' => 'chiThai',
+ 'tr' => 'chiTurkish',
+ 'uk' => 'chiUkrenia',
+ 'ur' => 'chiUrdu',
+ 'vi' => 'chiVietnam',
+ 'yo' => 'chiYoruba',
+ 'zh' => 'chiChinese',
+ 'zu' => 'chiZulu',
+);
+
+$currencyNames = array(
+ 'AED' => 'Diramu re United Arab Emirates',
+ 'AOA' => 'Kwanza ye Angola',
+ 'AUD' => 'Dora re Australia',
+ 'BHD' => 'Dhinari re Bhahareni',
+ 'BIF' => 'Furenki re Bhurundi',
+ 'BWP' => 'Pura re Botswana',
+ 'CAD' => 'Dora re Kanada',
+ 'CDF' => 'Furenki re Kongo',
+ 'CHF' => 'Furenki re Swisi',
+ 'CNY' => 'Yuan Renminbi ye China',
+ 'CVE' => 'Dhora re Escudo',
+ 'DJF' => 'Furenki re Jibhuti',
+ 'DZD' => 'Dhinari re Aljeria',
+ 'EGP' => 'Paundi re Ijipita',
+ 'ERN' => 'Nakfa re Eritrea',
+ 'ETB' => 'Dhora re Etiopia',
+ 'EUR' => 'Yuro',
+ 'GBP' => 'Paundi ye Bhiriteni',
+ 'GHC' => 'Sedi ye Ghana',
+ 'GMD' => 'Dalasi ye Gambia',
+ 'GNS' => 'Furenki re Gine',
+ 'INR' => 'Rupe re India',
+ 'JPY' => 'Yeni ye Japani',
+ 'KES' => 'Shiringi ye Kenya',
+ 'KMF' => 'Furenki re Komoro',
+ 'LRD' => 'Dora re Liberia',
+ 'LSL' => 'Loti ye Lesoto',
+ 'LYD' => 'Dinari re Libya',
+ 'MAD' => 'Dirham ye Moroko',
+ 'MGA' => 'Furenki re Malagasi',
+ 'MRO' => 'Ugwiya ye Moritania',
+ 'MUR' => 'Rupi ye Morishasi',
+ 'MWK' => 'Kwacha ye Malawi',
+ 'MZM' => 'Metika ye Mozambiki',
+ 'NAD' => 'Dora re Namibia',
+ 'NGN' => 'Naira ye Nijeria',
+ 'RWF' => 'Furenki re Ruwanda',
+ 'SAR' => 'Riyali re Saudi',
+ 'SCR' => 'Rupi re Seyisheri',
+ 'SDG' => 'Dinari re Sudani',
+ 'SDP' => 'Paundi re Sudani',
+ 'SHP' => 'Paundi re Senti Helena',
+ 'SLL' => 'Leoni',
+ 'SOS' => 'Shiringi re Somalia',
+ 'STD' => 'Dobra re Sao Tome ne Principe',
+ 'SZL' => 'Lilangeni',
+ 'TND' => 'Dinari re Tunisia',
+ 'TZS' => 'Shiringi re Tanzania',
+ 'UGX' => 'Shiringi re Uganda',
+ 'USD' => 'Dora re Amerika',
+ 'XAF' => 'Furenki CFA BEAC',
+ 'XOF' => 'Furenki CFA BCEAO',
+ 'ZAR' => 'Randi',
+ 'ZMK' => 'Kwacha ye Zambia (1968–2012)',
+ 'ZMW' => 'Kwacha ye Zambia',
+ 'ZWD' => 'Dora re Zimbabwe',
+);
+
+$countryNames = array(
+ 'AD' => 'Andora',
+ 'AE' => 'United Arab Emirates',
+ 'AF' => 'Afuganistani',
+ 'AG' => 'Antigua ne Barbuda',
+ 'AI' => 'Anguila',
+ 'AL' => 'Albania',
+ 'AM' => 'Armenia',
+ 'AN' => 'Netherlands Antilles',
+ 'AO' => 'Angola',
+ 'AR' => 'Ajentina',
+ 'AS' => 'Samoa ye Amerika',
+ 'AT' => 'Austria',
+ 'AU' => 'Australia',
+ 'AW' => 'Arubha',
+ 'AZ' => 'Azabajani',
+ 'BA' => 'Boznia ne Herzegovina',
+ 'BB' => 'Barbados',
+ 'BD' => 'Bangladeshi',
+ 'BE' => 'Beljium',
+ 'BF' => 'Bukinafaso',
+ 'BG' => 'Bulgaria',
+ 'BH' => 'Bahareni',
+ 'BI' => 'Burundi',
+ 'BJ' => 'Benini',
+ 'BM' => 'Bermuda',
+ 'BN' => 'Burunei',
+ 'BO' => 'Bolivia',
+ 'BR' => 'Brazil',
+ 'BS' => 'Bahama',
+ 'BT' => 'Bhutani',
+ 'BW' => 'Botswana',
+ 'BY' => 'Belarusi',
+ 'BZ' => 'Belize',
+ 'CA' => 'Kanada',
+ 'CD' => 'Democratic Republic of the Congo',
+ 'CF' => 'Central African Republic',
+ 'CG' => 'Kongo',
+ 'CH' => 'Switzerland',
+ 'CI' => 'Ivory Coast',
+ 'CK' => 'Zvitsuwa zveCook',
+ 'CL' => 'Chile',
+ 'CM' => 'Kameruni',
+ 'CN' => 'China',
+ 'CO' => 'Kolombia',
+ 'CR' => 'Kostarika',
+ 'CU' => 'Cuba',
+ 'CV' => 'Zvitsuwa zveCape Verde',
+ 'CY' => 'Cyprus',
+ 'CZ' => 'Czech Republic',
+ 'DE' => 'Germany',
+ 'DJ' => 'Djibouti',
+ 'DK' => 'Denmark',
+ 'DM' => 'Dominica',
+ 'DO' => 'Dominican Republic',
+ 'DZ' => 'Aljeria',
+ 'EC' => 'Ecuador',
+ 'EE' => 'Estonia',
+ 'EG' => 'Egypt',
+ 'ER' => 'Eritrea',
+ 'ES' => 'Spain',
+ 'ET' => 'Etiopia',
+ 'FI' => 'Finland',
+ 'FJ' => 'Fiji',
+ 'FK' => 'Zvitsuwa zveFalklands',
+ 'FM' => 'Micronesia',
+ 'FR' => 'France',
+ 'GA' => 'Gabon',
+ 'GB' => 'United Kingdom',
+ 'GD' => 'Grenada',
+ 'GE' => 'Georgia',
+ 'GF' => 'French Guiana',
+ 'GH' => 'Ghana',
+ 'GI' => 'Gibraltar',
+ 'GL' => 'Greenland',
+ 'GM' => 'Gambia',
+ 'GN' => 'Guinea',
+ 'GP' => 'Guadeloupe',
+ 'GQ' => 'Equatorial Guinea',
+ 'GR' => 'Greece',
+ 'GT' => 'Guatemala',
+ 'GU' => 'Guam',
+ 'GW' => 'Guinea-Bissau',
+ 'GY' => 'Guyana',
+ 'HN' => 'Honduras',
+ 'HR' => 'Korasia',
+ 'HT' => 'Haiti',
+ 'HU' => 'Hungary',
+ 'ID' => 'Indonesia',
+ 'IE' => 'Ireland',
+ 'IL' => 'Izuraeri',
+ 'IN' => 'India',
+ 'IO' => 'British Indian Ocean Territory',
+ 'IQ' => 'Iraq',
+ 'IR' => 'Iran',
+ 'IS' => 'Iceland',
+ 'IT' => 'Italy',
+ 'JM' => 'Jamaica',
+ 'JO' => 'Jordan',
+ 'JP' => 'Japan',
+ 'KE' => 'Kenya',
+ 'KG' => 'Kyrgyzstan',
+ 'KH' => 'Kambodia',
+ 'KI' => 'Kiribati',
+ 'KM' => 'Komoro',
+ 'KN' => 'Saint Kitts and Nevis',
+ 'KP' => 'Korea, North',
+ 'KR' => 'Korea, South',
+ 'KW' => 'Kuwait',
+ 'KY' => 'Zvitsuwa zveCayman',
+ 'KZ' => 'Kazakhstan',
+ 'LA' => 'Laos',
+ 'LB' => 'Lebanon',
+ 'LC' => 'Saint Lucia',
+ 'LI' => 'Liechtenstein',
+ 'LK' => 'Sri Lanka',
+ 'LR' => 'Liberia',
+ 'LS' => 'Lesotho',
+ 'LT' => 'Lithuania',
+ 'LU' => 'Luxembourg',
+ 'LV' => 'Latvia',
+ 'LY' => 'Libya',
+ 'MA' => 'Morocco',
+ 'MC' => 'Monaco',
+ 'MD' => 'Moldova',
+ 'MG' => 'Madagascar',
+ 'MH' => 'Zvitsuwa zveMarshall',
+ 'MK' => 'Macedonia',
+ 'ML' => 'Mali',
+ 'MM' => 'Myanmar',
+ 'MN' => 'Mongolia',
+ 'MP' => 'Zvitsuwa zvekumaodzanyemba eMariana',
+ 'MQ' => 'Martinique',
+ 'MR' => 'Mauritania',
+ 'MS' => 'Montserrat',
+ 'MT' => 'Malta',
+ 'MU' => 'Mauritius',
+ 'MV' => 'Maldives',
+ 'MW' => 'Malawi',
+ 'MX' => 'Mexico',
+ 'MY' => 'Malaysia',
+ 'MZ' => 'Mozambique',
+ 'NA' => 'Namibia',
+ 'NC' => 'New Caledonia',
+ 'NE' => 'Niger',
+ 'NF' => 'Chitsuwa cheNorfolk',
+ 'NG' => 'Nigeria',
+ 'NI' => 'Nicaragua',
+ 'NL' => 'Netherlands',
+ 'NO' => 'Norway',
+ 'NP' => 'Nepal',
+ 'NR' => 'Nauru',
+ 'NU' => 'Niue',
+ 'NZ' => 'New Zealand',
+ 'OM' => 'Oman',
+ 'PA' => 'Panama',
+ 'PE' => 'Peru',
+ 'PF' => 'French Polynesia',
+ 'PG' => 'Papua New Guinea',
+ 'PH' => 'Philippines',
+ 'PK' => 'Pakistan',
+ 'PL' => 'Poland',
+ 'PM' => 'Saint Pierre and Miquelon',
+ 'PN' => 'Pitcairn',
+ 'PR' => 'Puerto Rico',
+ 'PT' => 'Portugal',
+ 'PW' => 'Palau',
+ 'PY' => 'Paraguay',
+ 'QA' => 'Qatar',
+ 'RE' => 'Réunion',
+ 'RO' => 'Romania',
+ 'RU' => 'Russia',
+ 'RW' => 'Rwanda',
+ 'SA' => 'Saudi Arabia',
+ 'SB' => 'Zvitsuwa zvaSolomon',
+ 'SC' => 'Seychelles',
+ 'SD' => 'Sudan',
+ 'SE' => 'Sweden',
+ 'SG' => 'Singapore',
+ 'SH' => 'Saint Helena',
+ 'SI' => 'Slovenia',
+ 'SK' => 'Slovakia',
+ 'SL' => 'Sierra Leone',
+ 'SM' => 'San Marino',
+ 'SN' => 'Senegal',
+ 'SO' => 'Somalia',
+ 'SR' => 'Suriname',
+ 'ST' => 'São Tomé and Príncipe',
+ 'SV' => 'El Salvador',
+ 'SY' => 'Syria',
+ 'SZ' => 'Swaziland',
+ 'TC' => 'Zvitsuwa zveTurk neCaico',
+ 'TD' => 'Chadi',
+ 'TG' => 'Togo',
+ 'TH' => 'Thailand',
+ 'TJ' => 'Tajikistan',
+ 'TK' => 'Tokelau',
+ 'TL' => 'East Timor',
+ 'TM' => 'Turkmenistan',
+ 'TN' => 'Tunisia',
+ 'TO' => 'Tonga',
+ 'TR' => 'Turkey',
+ 'TT' => 'Trinidad and Tobago',
+ 'TV' => 'Tuvalu',
+ 'TW' => 'Taiwan',
+ 'TZ' => 'Tanzania',
+ 'UA' => 'Ukraine',
+ 'UG' => 'Uganda',
+ 'US' => 'Amerika',
+ 'UY' => 'Uruguay',
+ 'UZ' => 'Uzbekistan',
+ 'VA' => 'Vatican State',
+ 'VC' => 'Saint Vincent and the Grenadines',
+ 'VE' => 'Venezuela',
+ 'VG' => 'Zvitsuwa zveHingirandi',
+ 'VI' => 'Zvitsuwa zveAmerika',
+ 'VN' => 'Vietnam',
+ 'VU' => 'Vanuatu',
+ 'WF' => 'Wallis and Futuna',
+ 'WS' => 'Samoa',
+ 'YE' => 'Yemen',
+ 'YT' => 'Mayotte',
+ 'ZA' => 'South Africa',
+ 'ZM' => 'Zambia',
+ 'ZW' => 'Zimbabwe',
+);
diff --git a/MLEB/cldr/CldrNames/CldrNamesSo.php b/MLEB/cldr/CldrNames/CldrNamesSo.php
new file mode 100644
index 00000000..c38f87af
--- /dev/null
+++ b/MLEB/cldr/CldrNames/CldrNamesSo.php
@@ -0,0 +1,366 @@
+<?php
+
+$languageNames = array(
+ 'af' => 'Afrikaanays',
+ 'ak' => 'Akan',
+ 'am' => 'Axmaari',
+ 'ar' => 'Carabi',
+ 'as' => 'Asaamiis',
+ 'az' => 'Azerbaijan',
+ 'be' => 'Beleruusiyaan',
+ 'bg' => 'Bulgeeriyaan',
+ 'bn' => 'Bangaali',
+ 'br' => 'Bereton',
+ 'bs' => 'Boosniya',
+ 'ca' => 'Katalaan',
+ 'cs' => 'Jeeg',
+ 'cy' => 'Welsh',
+ 'da' => 'Danmarkays',
+ 'de' => 'Jarmal',
+ 'de-ch' => 'Jarmal (Iswiiserlaand)',
+ 'el' => 'Giriik',
+ 'en' => 'Ingiriisi',
+ 'en-gb' => 'Ingiriisi (Boqortooyada Midowday)',
+ 'en-us' => 'Ingiriisi (Maraykan)',
+ 'eo' => 'Isberento',
+ 'es' => 'Isbaanish',
+ 'es-419' => 'Isbaanishka Laatiin Ameerika',
+ 'es-es' => 'Isbaanish (Isbayn)',
+ 'et' => 'Istooniyaan',
+ 'eu' => 'Basquu',
+ 'fa' => 'Faarisi',
+ 'fi' => 'Fiinlaandees',
+ 'fil' => 'Tagalog',
+ 'fo' => 'Farowsi',
+ 'fr' => 'Faransiis',
+ 'fr-ch' => 'Faransiis (Iswiiserlaand)',
+ 'fy' => 'Firiisiyan Galbeed',
+ 'ga' => 'Ayrish',
+ 'gd' => 'Iskot Giilik',
+ 'gl' => 'Galiisiyaan',
+ 'gn' => 'Guraani',
+ 'gu' => 'Gujaraati',
+ 'ha' => 'Hawsa',
+ 'he' => 'Cibri',
+ 'hi' => 'Hindi',
+ 'hr' => 'Koro’eeshiyaan',
+ 'hu' => 'Hangariyaan',
+ 'hy' => 'Armeeniyaan',
+ 'ia' => 'Interlinguwa',
+ 'id' => 'Indunuusiyaan',
+ 'ie' => 'Interlingue',
+ 'ig' => 'Igbo',
+ 'is' => 'Ayslandays',
+ 'it' => 'Talyaani',
+ 'ja' => 'Jabbaaniis',
+ 'jv' => 'Jafaaniis',
+ 'ka' => 'Joorijiyaan',
+ 'km' => 'Kamboodhian',
+ 'kn' => 'Kannadays',
+ 'ko' => 'Kuuriyaan',
+ 'ku' => 'Kurdishka',
+ 'ky' => 'Kirgiis',
+ 'la' => 'Laatiin',
+ 'ln' => 'Lingala',
+ 'lo' => 'Laothian',
+ 'lt' => 'Lituwaanays',
+ 'lv' => 'Laatfiyaan',
+ 'mk' => 'Masadooniyaan',
+ 'ml' => 'Malayalam',
+ 'mn' => 'Mangooli',
+ 'mr' => 'Maarati',
+ 'ms' => 'Malaay',
+ 'mt' => 'Maltiis',
+ 'my' => 'Burmese',
+ 'ne' => 'Nebaali',
+ 'nl' => 'Holandays',
+ 'nn' => 'Nowrwejiyan (naynoroski)',
+ 'no' => 'Af Noorwiijiyaan',
+ 'oc' => 'Okitaan',
+ 'or' => 'Oriya',
+ 'pa' => 'Bunjaabi',
+ 'pl' => 'Boolish',
+ 'ps' => 'Bashtuu',
+ 'pt' => 'Boortaqiis',
+ 'pt-br' => 'Boortaqiiska Baraasiil',
+ 'pt-pt' => 'Boortaqiis (Boortuqaal)',
+ 'ro' => 'Romanka',
+ 'ru' => 'Ruush',
+ 'rw' => 'Rwanda',
+ 'sa' => 'Sanskrit',
+ 'sd' => 'SINDHI',
+ 'sh' => 'Serbiyaan',
+ 'si' => 'Sinhaleys',
+ 'sk' => 'Isloofaak',
+ 'sl' => 'Islofeeniyaan',
+ 'so' => 'Soomaali',
+ 'sq' => 'Albaaniyaan',
+ 'sr' => 'Seerbiyaan',
+ 'st' => 'Sesooto',
+ 'su' => 'Suudaaniis',
+ 'sv' => 'Swiidhis',
+ 'sw' => 'Sawaaxili',
+ 'ta' => 'Tamiil',
+ 'te' => 'Teluugu',
+ 'th' => 'Taaylandays',
+ 'ti' => 'Tigrinya',
+ 'tk' => 'Turkumaanish',
+ 'tlh' => 'Kiligoon',
+ 'tr' => 'Turkish',
+ 'tw' => 'Tiwiyan',
+ 'ug' => 'UIGHUR',
+ 'uk' => 'Yukreeniyaan',
+ 'und' => 'Af aan la aqoon ama aan sax ahayn',
+ 'ur' => 'Urduu',
+ 'uz' => 'Usbakis',
+ 'vi' => 'Fiitnaamays',
+ 'xh' => 'Hoosta',
+ 'yi' => 'Yadhish',
+ 'yo' => 'Yoruuba',
+ 'zh' => 'Jayniis',
+ 'zu' => 'Zuulu',
+);
+
+$currencyNames = array(
+ 'DJF' => 'Faran Jabbuuti',
+ 'ETB' => 'Birta Itoobbiya',
+ 'EUR' => 'Yuuroo',
+ 'SAR' => 'Riyaalka Sacuudiga',
+ 'SOS' => 'Shilin soomaali',
+ 'TZS' => 'Shilin Tansaani',
+ 'USD' => 'Doollar maraykan',
+ 'XXX' => 'Lacag aan la qoon ama aan saxnayn',
+);
+
+$currencySymbols = array(
+ 'SOS' => 'S',
+);
+
+$countryNames = array(
+ 'AD' => 'Andora',
+ 'AE' => 'Imaaraadka Carabta ee Midoobay',
+ 'AF' => 'Afgaanistaan',
+ 'AG' => 'Antigua iyo Barbuda',
+ 'AI' => 'Anguilla',
+ 'AL' => 'Albaaniya',
+ 'AM' => 'Armeeniya',
+ 'AN' => 'Netherlands Antilles',
+ 'AO' => 'Angoola',
+ 'AR' => 'Arjantiin',
+ 'AS' => 'Samowa Ameerika',
+ 'AT' => 'Awsteriya',
+ 'AU' => 'Awstaraaliya',
+ 'AW' => 'Aruba',
+ 'AZ' => 'Azerbajaan',
+ 'BA' => 'Bosniya Hersigoviina',
+ 'BB' => 'Baarbadoos',
+ 'BD' => 'Bangaaladheesh',
+ 'BE' => 'Biljam',
+ 'BF' => 'Burkiina Faaso',
+ 'BG' => 'Bulgaariya',
+ 'BH' => 'Baxreyn',
+ 'BI' => 'Burundi',
+ 'BJ' => 'Biniin',
+ 'BM' => 'Bermuuda',
+ 'BN' => 'Buruneeya',
+ 'BO' => 'Boliifiya',
+ 'BR' => 'Braasiil',
+ 'BS' => 'Bahaamas',
+ 'BT' => 'Bhutan',
+ 'BW' => 'Botuswaana',
+ 'BY' => 'Belarus',
+ 'BZ' => 'Belize',
+ 'CA' => 'Kanada',
+ 'CD' => 'Jamhuuriyadda Dimuquraadiga Kongo',
+ 'CF' => 'Jamhuuriyadda Afrikada Dhexe',
+ 'CG' => 'Kongo',
+ 'CH' => 'Swiiserlaand',
+ 'CI' => 'Ivory coast',
+ 'CK' => 'Jaziiradda Cook',
+ 'CL' => 'Jili',
+ 'CM' => 'Kaameruun',
+ 'CN' => 'Shiinaha',
+ 'CO' => 'Kolombiya',
+ 'CR' => 'Kosta Riika',
+ 'CU' => 'Kuuba',
+ 'CV' => 'Cape Verde Islands',
+ 'CY' => 'Qubrus',
+ 'CZ' => 'Jamhuuriyadda Jek',
+ 'DE' => 'Jarmal',
+ 'DJ' => 'Jabuuti',
+ 'DK' => 'Denmark',
+ 'DM' => 'Domeenika',
+ 'DO' => 'Jamhuuriyadda Domeenika',
+ 'DZ' => 'Aljeeriya',
+ 'EC' => 'Ikuwadoor',
+ 'EE' => 'Estooniya',
+ 'EG' => 'Masar',
+ 'ER' => 'Eretereeya',
+ 'ES' => 'Isbeyn',
+ 'ET' => 'Itoobiya',
+ 'FI' => 'Finland',
+ 'FJ' => 'Fiji',
+ 'FK' => 'Jaziiradaha Fooklaan',
+ 'FM' => 'Micronesia',
+ 'FR' => 'Faransiis',
+ 'GA' => 'Gaaboon',
+ 'GB' => 'United Kingdom',
+ 'GD' => 'Giriinaada',
+ 'GE' => 'Joorjiya',
+ 'GF' => 'French Guiana',
+ 'GH' => 'Gaana',
+ 'GI' => 'Gibraltar',
+ 'GL' => 'Greenland',
+ 'GM' => 'Gambiya',
+ 'GN' => 'Gini',
+ 'GP' => 'Guadeloupe',
+ 'GQ' => 'Equatorial Guinea',
+ 'GR' => 'Giriig',
+ 'GT' => 'Guwaatamaala',
+ 'GU' => 'Guam',
+ 'GW' => 'Gini-Bisaaw',
+ 'GY' => 'Guyana',
+ 'HN' => 'Honduras',
+ 'HR' => 'Korweeshiya',
+ 'HT' => 'Hayti',
+ 'HU' => 'Hangeri',
+ 'ID' => 'Indoneesiya',
+ 'IE' => 'Ayrlaand',
+ 'IL' => 'Israaʼiil',
+ 'IN' => 'Hindiya',
+ 'IO' => 'British Indian Ocean Territory',
+ 'IQ' => 'Ciraaq',
+ 'IR' => 'Iiraan',
+ 'IS' => 'Iislaand',
+ 'IT' => 'Talyaani',
+ 'JM' => 'Jameyka',
+ 'JO' => 'Urdun',
+ 'JP' => 'Jabaan',
+ 'KE' => 'Kiiniya',
+ 'KG' => 'Kirgistaan',
+ 'KH' => 'Kamboodiya',
+ 'KI' => 'Kiribati',
+ 'KM' => 'Komooros',
+ 'KN' => 'Saint Kitts and Nevis',
+ 'KP' => 'Kuuriyada Waqooyi',
+ 'KR' => 'Kuuriyada Koonfureed',
+ 'KW' => 'Kuwayt',
+ 'KY' => 'Cayman Islands',
+ 'KZ' => 'Kasaakhistaan',
+ 'LA' => 'Laos',
+ 'LB' => 'Lubnaan',
+ 'LC' => 'Saint Lucia',
+ 'LI' => 'Liechtenstein',
+ 'LK' => 'Sirilaanka',
+ 'LR' => 'Laybeeriya',
+ 'LS' => 'Losooto',
+ 'LT' => 'Lituweeniya',
+ 'LU' => 'Luksemboorg',
+ 'LV' => 'Latfiya',
+ 'LY' => 'Liibiya',
+ 'MA' => 'Marooko',
+ 'MC' => 'Moonako',
+ 'MD' => 'Moldofa',
+ 'MG' => 'Madagaskar',
+ 'MH' => 'Marshall Islands',
+ 'MK' => 'Makadooniya',
+ 'ML' => 'Maali',
+ 'MM' => 'Myanmar',
+ 'MN' => 'Mongooliya',
+ 'MP' => 'Northern Mariana Islands',
+ 'MQ' => 'Martinique',
+ 'MR' => 'Muritaaniya',
+ 'MS' => 'Montserrat',
+ 'MT' => 'Maalda',
+ 'MU' => 'Murishiyoos',
+ 'MV' => 'Maaldiqeen',
+ 'MW' => 'Malaawi',
+ 'MX' => 'Meksiko',
+ 'MY' => 'Malaysia',
+ 'MZ' => 'Musambiig',
+ 'NA' => 'Namiibiya',
+ 'NC' => 'New Caledonia',
+ 'NE' => 'Nayjer',
+ 'NF' => 'Norfolk Island',
+ 'NG' => 'Nayjeeriya',
+ 'NI' => 'Nikaraaguwa',
+ 'NL' => 'Netherlands',
+ 'NO' => 'Noorweey',
+ 'NP' => 'Nebaal',
+ 'NR' => 'Nauru',
+ 'NU' => 'Niue',
+ 'NZ' => 'Neyuusilaand',
+ 'OM' => 'Cumaan',
+ 'PA' => 'Panama',
+ 'PE' => 'Peru',
+ 'PF' => 'French Polynesia',
+ 'PG' => 'Papua New Guinea',
+ 'PH' => 'Filibiin',
+ 'PK' => 'Bakistaan',
+ 'PL' => 'Booland',
+ 'PM' => 'Saint Pierre and Miquelon',
+ 'PN' => 'Pitcairn',
+ 'PR' => 'Puerto Rico',
+ 'PS' => 'Falastiin Daanka galbeed iyo Qasa',
+ 'PT' => 'Bortuqaal',
+ 'PW' => 'Palau',
+ 'PY' => 'Paraguay',
+ 'QA' => 'Qadar',
+ 'RE' => 'Réunion',
+ 'RO' => 'Rumaaniya',
+ 'RU' => 'Ruush',
+ 'RW' => 'Ruwanda',
+ 'SA' => 'Sacuudi Carabiya',
+ 'SB' => 'Solomon Islands',
+ 'SC' => 'Sishelis',
+ 'SD' => 'Suudaan',
+ 'SE' => 'Iswidhan',
+ 'SG' => 'Singaboor',
+ 'SH' => 'Saint Helena',
+ 'SI' => 'Slovenia',
+ 'SK' => 'Slovakia',
+ 'SL' => 'Siraaliyoon',
+ 'SM' => 'San Marino',
+ 'SN' => 'Sinigaal',
+ 'SO' => 'Soomaaliya',
+ 'SR' => 'Suriname',
+ 'SS' => 'Koonfur Suudaan',
+ 'ST' => 'São Tomé and Príncipe',
+ 'SV' => 'El Salvador',
+ 'SY' => 'Suuriya',
+ 'SZ' => 'Iswaasilaand',
+ 'TC' => 'Turks and Caicos Islands',
+ 'TD' => 'Jaad',
+ 'TG' => 'Toogo',
+ 'TH' => 'Taylaand',
+ 'TJ' => 'Tajikistan',
+ 'TK' => 'Tokelau',
+ 'TL' => 'Timorka bari',
+ 'TM' => 'Turkmenistan',
+ 'TN' => 'Tuniisiya',
+ 'TO' => 'Tonga',
+ 'TR' => 'Turki',
+ 'TT' => 'Trinidad and Tobago',
+ 'TV' => 'Tuvalu',
+ 'TW' => 'Taywaan',
+ 'TZ' => 'Tansaaniya',
+ 'UA' => 'Ukrayn',
+ 'UG' => 'Ugaanda',
+ 'US' => 'Maraykanka',
+ 'UY' => 'Uruguwaay',
+ 'UZ' => 'Uusbakistaan',
+ 'VA' => 'Faatikaan',
+ 'VC' => 'Saint Vincent and the Grenadines',
+ 'VE' => 'Fenisuweela',
+ 'VG' => 'British Virgin Islands',
+ 'VI' => 'U.S. Virgin Islands',
+ 'VN' => 'Fiyetnaam',
+ 'VU' => 'Vanuatu',
+ 'WF' => 'Wallis and Futuna',
+ 'WS' => 'Samoa',
+ 'YE' => 'Yaman',
+ 'YT' => 'Mayotte',
+ 'ZA' => 'Koonfur Afrika',
+ 'ZM' => 'Saambiya',
+ 'ZW' => 'Simbaabwe',
+);
diff --git a/MLEB/cldr/CldrNames/CldrNamesSq.php b/MLEB/cldr/CldrNames/CldrNamesSq.php
new file mode 100644
index 00000000..9790fdb0
--- /dev/null
+++ b/MLEB/cldr/CldrNames/CldrNamesSq.php
@@ -0,0 +1,801 @@
+<?php
+
+$languageNames = array(
+ 'ab' => 'abkazisht',
+ 'af' => 'afrikanisht',
+ 'agq' => 'agemisht',
+ 'ak' => 'akanisht',
+ 'am' => 'amarike',
+ 'ar' => 'arabisht',
+ 'ar-001' => 'arabishte standarde moderne',
+ 'arn' => 'mapuçisht',
+ 'as' => 'asamezisht',
+ 'asa' => 'asuisht',
+ 'az' => 'azere',
+ 'ba' => 'bashkirisht',
+ 'be' => 'bjellorusisht',
+ 'bem' => 'bemba',
+ 'bez' => 'bena',
+ 'bg' => 'bullgarisht',
+ 'bm' => 'bambara',
+ 'bn' => 'bengalisht',
+ 'bo' => 'tibetisht',
+ 'br' => 'bretone',
+ 'brx' => 'bodo',
+ 'bs' => 'boshnjakisht',
+ 'ca' => 'katalonisht',
+ 'cgg' => 'çigisht',
+ 'chr' => 'çeroki',
+ 'ckb' => 'kurdishte sorani',
+ 'co' => 'korsikanisht',
+ 'cs' => 'çekisht',
+ 'cy' => 'uellsisht',
+ 'da' => 'danisht',
+ 'dav' => 'taitisht',
+ 'de' => 'gjermanisht',
+ 'de-at' => 'gjermanishte austriake',
+ 'de-ch' => 'gjermanishte zvicerane (dialekti i Alpeve)',
+ 'dje' => 'zarmisht',
+ 'dsb' => 'sorbishte e poshtme',
+ 'dua' => 'dualisht',
+ 'dyo' => 'xhula-fonji',
+ 'dz' => 'xongka',
+ 'ebu' => 'embuisht',
+ 'ee' => 'juisht',
+ 'el' => 'greqisht',
+ 'en' => 'anglisht',
+ 'en-au' => 'anglishte australiane',
+ 'en-ca' => 'anglishte kanadeze',
+ 'en-gb' => 'anglishte britanike',
+ 'en-us' => 'anglishte amerikane',
+ 'eo' => 'esperanto',
+ 'es' => 'spanjisht',
+ 'es-419' => 'spanjishte amerikano-latine',
+ 'es-es' => 'spanjishte evropiane',
+ 'es-mx' => 'spanjishte meksikane',
+ 'et' => 'estonisht',
+ 'eu' => 'baskisht',
+ 'fa' => 'persisht',
+ 'fi' => 'finlandisht',
+ 'fil' => 'filipinase',
+ 'fj' => 'fixhiane',
+ 'fo' => 'faroisht',
+ 'fr' => 'frëngjisht',
+ 'fr-ca' => 'frëngjishte kanadeze',
+ 'fr-ch' => 'frëngjishte zvicerane',
+ 'fy' => 'frizianisht',
+ 'ga' => 'irlandezçe',
+ 'gag' => 'gagauzisht',
+ 'gd' => 'Galisht',
+ 'gl' => 'galike',
+ 'gn' => 'guaranisht',
+ 'gsw' => 'gjermanishte zvicerane',
+ 'gu' => 'guxharatisht',
+ 'guz' => 'gusisht',
+ 'gv' => 'mankse',
+ 'ha' => 'hausisht',
+ 'haw' => 'hauajane',
+ 'he' => 'hebraisht',
+ 'hi' => 'indishte',
+ 'hr' => 'kroatisht',
+ 'hsb' => 'sorbiane e sipërme',
+ 'ht' => 'haitiançe',
+ 'hu' => 'hungarisht',
+ 'hy' => 'armenisht',
+ 'ia' => 'Interlingua',
+ 'id' => 'indonezisht',
+ 'ie' => 'Gjuha nderkombtare',
+ 'ig' => 'igbe',
+ 'ii' => 'sishuanisht',
+ 'is' => 'islandisht',
+ 'it' => 'italisht',
+ 'iu' => 'inuktitut',
+ 'ja' => 'japonisht',
+ 'jgo' => 'ngombisht',
+ 'jmc' => 'maçamisht',
+ 'jv' => 'javanisht',
+ 'ka' => 'gjeorgjisht',
+ 'kab' => 'kabilisht',
+ 'kam' => 'kambishte',
+ 'kde' => 'makondisht',
+ 'kea' => 'kabuverdianisht',
+ 'khq' => 'kojraçinisht',
+ 'ki' => 'kikujuisht',
+ 'kk' => 'kazakisht',
+ 'kl' => 'kalalisute',
+ 'kln' => 'kalenjinisht',
+ 'km' => 'kmere',
+ 'kn' => 'kanade',
+ 'ko' => 'koreanisht',
+ 'koi' => 'komishte permiake',
+ 'kok' => 'konkanisht',
+ 'ks' => 'kashmire',
+ 'ksb' => 'shambalisht',
+ 'ksf' => 'bafianisht',
+ 'ku' => 'kurde',
+ 'kw' => 'kornisht',
+ 'ky' => 'kirgizisht',
+ 'la' => 'latinisht',
+ 'lag' => 'langisht',
+ 'lb' => 'luksemburgase',
+ 'lg' => 'gandisht',
+ 'lkt' => 'lakotisht',
+ 'ln' => 'lingalisht',
+ 'lo' => 'laosisht',
+ 'lt' => 'lituanisht',
+ 'lu' => 'Lubakatange',
+ 'luo' => 'luoisht',
+ 'luy' => 'lujaisht',
+ 'lv' => 'letonisht',
+ 'mas' => 'masaisht',
+ 'mer' => 'meruisht',
+ 'mfe' => 'norisjene',
+ 'mg' => 'malageze',
+ 'mgh' => 'makuamito',
+ 'mgo' => 'metaisht',
+ 'mi' => 'maorisht',
+ 'mk' => 'maqedonisht',
+ 'ml' => 'malajalame',
+ 'mn' => 'mongolisht',
+ 'moh' => 'mohaukisht',
+ 'mr' => 'maratisht',
+ 'ms' => 'malajisht',
+ 'mt' => 'maltisht',
+ 'mua' => 'mundagishte',
+ 'my' => 'birmanisht',
+ 'naq' => 'namaishte',
+ 'nb' => 'bokmalishte norvegjeze',
+ 'nd' => 'ndebelishte veriore',
+ 'ne' => 'nepalisht',
+ 'nl' => 'holandisht',
+ 'nl-be' => 'flamande',
+ 'nmg' => 'kuasisht',
+ 'nn' => 'ninorske norvegjeze',
+ 'no' => 'Norvegjisht',
+ 'nqo' => 'nkoisht',
+ 'nus' => 'nuerisht',
+ 'nyn' => 'niankolisht',
+ 'oc' => 'Oksitanisht',
+ 'om' => 'oromoisht',
+ 'or' => 'orije',
+ 'pa' => 'panxhabe',
+ 'pl' => 'polonisht',
+ 'ps' => 'pashto',
+ 'pt' => 'portugalisht',
+ 'pt-br' => 'portugalishte braziliane',
+ 'pt-pt' => 'portugalishte evropiane',
+ 'qu' => 'keçua',
+ 'quc' => 'kiçeisht',
+ 'rm' => 'rome',
+ 'rn' => 'rundisht',
+ 'ro' => 'rumanisht',
+ 'ro-md' => 'moldavishte',
+ 'rof' => 'romboishte',
+ 'ru' => 'rusisht',
+ 'rw' => 'kiniaruandisht',
+ 'rwk' => 'ruaisht',
+ 'sa' => 'sanskritisht',
+ 'saq' => 'samburisht',
+ 'sbp' => 'sanguisht',
+ 'sd' => 'sindi',
+ 'se' => 'samishte veriore',
+ 'seh' => 'senaishte',
+ 'ses' => 'senishte kojrabore',
+ 'sg' => 'sangoisht',
+ 'sh' => 'Serbo-Kroatisht',
+ 'shi' => 'taçelit',
+ 'si' => 'sinhale',
+ 'sk' => 'sllovakisht',
+ 'sl' => 'sllovenisht',
+ 'sma' => 'samishte jugore',
+ 'smj' => 'samishte luleje',
+ 'smn' => 'samishte inarie',
+ 'sms' => 'samishte skolte',
+ 'sn' => 'shonisht',
+ 'so' => 'somalisht',
+ 'sq' => 'shqip',
+ 'sr' => 'serbisht',
+ 'st' => 'Sesotho',
+ 'su' => 'sundanisht',
+ 'sv' => 'suedisht',
+ 'sw' => 'suahilisht',
+ 'swc' => 'suahilishte kongoje',
+ 'ta' => 'tamile',
+ 'te' => 'teluge',
+ 'teo' => 'tezoisht',
+ 'tg' => 'taxhikisht',
+ 'th' => 'tajlandisht',
+ 'ti' => 'tigrinje',
+ 'tk' => 'turkmenisht',
+ 'tlh' => 'Klingon',
+ 'to' => 'tonganisht',
+ 'tr' => 'turqisht',
+ 'tt' => 'tatarisht',
+ 'tw' => 'Twi',
+ 'twq' => 'tasaukisht',
+ 'tzm' => 'tamaziatishte atlase qendrore',
+ 'ug' => 'ujgure',
+ 'uk' => 'ukrainisht',
+ 'und' => 'e panjohur',
+ 'ur' => 'urdu',
+ 'uz' => 'uzbeke',
+ 'vai' => 'vaisht',
+ 'vi' => 'vietnamisht',
+ 'vun' => 'vunjisht',
+ 'wo' => 'ulufisht',
+ 'xh' => 'xhose',
+ 'xog' => 'sogisht',
+ 'yi' => 'Jiden',
+ 'yo' => 'jorubisht',
+ 'zgh' => 'tamazishte standarde marokene',
+ 'zh' => 'kinezisht',
+ 'zh-hans' => 'kinezishte e thjeshtuar',
+ 'zh-hant' => 'kinezishte tradicionale',
+ 'zu' => 'zulu',
+ 'zxx' => 'nuk ka përmbajtje gjuhësore',
+);
+
+$currencyNames = array(
+ 'AED' => 'Dirhami i Emirateve të Bashkuara Arabe',
+ 'AFN' => 'Afgani afgan',
+ 'ALL' => 'Leku shqiptar',
+ 'AMD' => 'Dramia armene',
+ 'ANG' => 'Gilderi antilian holandez',
+ 'AOA' => 'Kuanza e Angolës',
+ 'ARS' => 'Pezoja argjentinase',
+ 'AUD' => 'Dollari australian',
+ 'AWG' => 'Florini aruban',
+ 'AZN' => 'Manata e Azerbajxhanit',
+ 'BAM' => 'Marka e Bosnjë-Hercegovinës [e shkëmbyeshme]',
+ 'BBD' => 'Dollari barbadian',
+ 'BDT' => 'Taka e Bangladeshit',
+ 'BGN' => 'Leva bullgare',
+ 'BHD' => 'Dinari i Bahreinit',
+ 'BIF' => 'Franga burundiane',
+ 'BMD' => 'Dollari e Bermudeve',
+ 'BND' => 'Dollari i Bruneit',
+ 'BOB' => 'Boliviani i Bolivisë',
+ 'BRL' => 'Reali brazilian',
+ 'BSD' => 'Dollari i Bahamasit',
+ 'BTN' => 'Ngultrumi butanez',
+ 'BWP' => 'Pula botsvane',
+ 'BYR' => 'Rubla bjelloruse',
+ 'BZD' => 'Dollari i Ishujve Belize',
+ 'CAD' => 'Dollari kanadez',
+ 'CDF' => 'Franga kongole',
+ 'CHF' => 'Franga zvicerane',
+ 'CLP' => 'Pezoja kiliane',
+ 'CNY' => 'Juani kinez',
+ 'COP' => 'Pezoja kolumbiane',
+ 'CRC' => 'Koloni kostarikan',
+ 'CUC' => 'Pezoja kubane e shkëmbyeshme',
+ 'CUP' => 'Pezoja kubane',
+ 'CVE' => 'Eskudoja e Kepit të Gjelbër',
+ 'CZK' => 'Koruna e Republikës Çeke',
+ 'DJF' => 'Franga xhibutiane',
+ 'DKK' => 'Korona daneze',
+ 'DOP' => 'Pezoja dominikane',
+ 'DZD' => 'Dinari algjerian',
+ 'EGP' => 'Stërlina egjiptiane',
+ 'ERN' => 'Nakfa e Eritresë',
+ 'ETB' => 'Bira etiopiane',
+ 'EUR' => 'Euroja',
+ 'FJD' => 'Dollari i Fixhit',
+ 'FKP' => 'Stërlina e Ishujve Folkland',
+ 'GBP' => 'Sterlina britanike',
+ 'GEL' => 'Laria gjeorgjiane',
+ 'GHS' => 'Sejda ganeze',
+ 'GIP' => 'Sterlina e Gjibraltarit',
+ 'GMD' => 'Dalasi gambian',
+ 'GNF' => 'Franga guinease',
+ 'GTQ' => 'Kuecali i Guatemalës',
+ 'GYD' => 'Dollari guajanez',
+ 'HKD' => 'Dollari i Hong Kongut',
+ 'HNL' => 'Lempira hondurase',
+ 'HRK' => 'Kuna kroate',
+ 'HTG' => 'Gurdi haitian',
+ 'HUF' => 'Forinta hungareze',
+ 'IDR' => 'Rupia indoneziane',
+ 'ILS' => 'Shekeli izrealit',
+ 'INR' => 'Rupia indiane',
+ 'IQD' => 'Dinari irakian',
+ 'IRR' => 'Riali iranian',
+ 'ISK' => 'Korona islandeze',
+ 'JMD' => 'Dollari xhamajkan',
+ 'JOD' => 'Dinari jordanez',
+ 'JPY' => 'Jeni japonez',
+ 'KES' => 'Shilinga keniane',
+ 'KGS' => 'Soma kirgize',
+ 'KHR' => 'Riali kamboxhian',
+ 'KMF' => 'Franga komore',
+ 'KPW' => 'Uoni koreano-verior',
+ 'KRW' => 'Uoni koreano-jugor',
+ 'KWD' => 'Dinari kuvajtian',
+ 'KYD' => 'Dollari i Ishujve Kajman',
+ 'KZT' => 'Tenga kazake',
+ 'LAK' => 'Kipa e Laosit',
+ 'LBP' => 'Sterlina libaneze',
+ 'LKR' => 'Rupia e Sri Lankës',
+ 'LRD' => 'Dollari liberian',
+ 'LTL' => 'Lita lituaneze',
+ 'LVL' => 'Lata letoneze',
+ 'LYD' => 'Dinari libian',
+ 'MAD' => 'Dirhami maroken',
+ 'MDL' => 'Leu moldav',
+ 'MGA' => 'Arieri malagez',
+ 'MKD' => 'Denari maqedonas',
+ 'MMK' => 'Kiata e Mianmarit',
+ 'MNT' => 'Tugrika mongole',
+ 'MOP' => 'Pataka e Makaos',
+ 'MRO' => 'Ugija mauritane',
+ 'MUR' => 'Rupia mauritiane',
+ 'MVR' => 'Rufiu i Maldivit',
+ 'MWK' => 'Kuaça malaviane',
+ 'MXN' => 'Pezoja meksikane',
+ 'MYR' => 'Ringiti malajzian',
+ 'MZN' => 'Metikali i Mozambikut',
+ 'NAD' => 'Dollari i Namibisë',
+ 'NGN' => 'Naira nigeriane',
+ 'NIO' => 'Kordoba nikaraguane',
+ 'NOK' => 'Korona norvegjeze',
+ 'NPR' => 'Rupia nepaleze',
+ 'NZD' => 'Dollari i Zelandës së Re',
+ 'OMR' => 'Riali i Omanit',
+ 'PAB' => 'Balboa panameze',
+ 'PEN' => 'Sola nuevo-peruane',
+ 'PGK' => 'Kina e Papua-Guineas së Re',
+ 'PHP' => 'Pezoja filipinase',
+ 'PKR' => 'Rupia pakistaneze',
+ 'PLN' => 'Zllota polake',
+ 'PYG' => 'Guarani paraguaian',
+ 'QAR' => 'Riali i Katarit',
+ 'RON' => 'Leu rumun',
+ 'RSD' => 'Dinari serb',
+ 'RUB' => 'Rubla ruse',
+ 'RWF' => 'Franga ruandeze',
+ 'SAR' => 'Riali saudit',
+ 'SBD' => 'Dollari i Ishujve Solomon',
+ 'SCR' => 'Rupia e Ishujve Sejçelë',
+ 'SDG' => 'Stërlina sudaneze',
+ 'SEK' => 'Korona suedeze',
+ 'SGD' => 'Dollari i Singaporit',
+ 'SHP' => 'Stërlina e Ishullit të Shën Helenës',
+ 'SLL' => 'Leoni i Sierra Leones',
+ 'SOS' => 'Shilinga somaleze',
+ 'SRD' => 'Dollari surinamez',
+ 'SSP' => 'Stërlina e Sudanit të Jugut',
+ 'STD' => 'Dobra e Sao Tomes dhe Prinsipes',
+ 'SYP' => 'Sterlina siriane',
+ 'SZL' => 'Lilangeni i Svazilandit',
+ 'THB' => 'Bata tajlandeze',
+ 'TJS' => 'Somona taxhike',
+ 'TMT' => 'Manata turkmene',
+ 'TND' => 'Dinari tunizian',
+ 'TOP' => 'Panga tongane',
+ 'TRY' => 'Lira turke',
+ 'TTD' => 'Dollari i Trinidadit dhe Tobagos',
+ 'TWD' => 'Dollari tajvanez',
+ 'TZS' => 'Shilinga e Tanzanisë',
+ 'UAH' => 'Rivnia ukrainase',
+ 'UGX' => 'Shilinga ugandeze',
+ 'USD' => 'Dollari amerikan',
+ 'UYU' => 'Pezoja uruguaiane',
+ 'UZS' => 'Soma uzbeke',
+ 'VEF' => 'Bolivari venezuelian',
+ 'VND' => 'Donga vietnameze',
+ 'VUV' => 'Vatuja e Vanuatusë',
+ 'WST' => 'Tala samoane',
+ 'XAF' => 'Franga kamerunase',
+ 'XCD' => 'Dollari i Karaibeve Lindore',
+ 'XOF' => 'Franga e Bregut të Fildishtë',
+ 'XPF' => 'Franga franceze e Polinezisë',
+ 'XXX' => 'Valutë e panjohur',
+ 'YER' => 'Riali i Jemenit',
+ 'ZAR' => 'Randa afrikano-jugore',
+ 'ZMW' => 'Kuaça e Zambikut',
+);
+
+$currencySymbols = array(
+ 'ALL' => 'Lekë',
+ 'AUD' => 'A$',
+ 'BRL' => 'R$',
+ 'CAD' => 'CA$',
+ 'CNY' => 'CN¥',
+ 'EUR' => '€',
+ 'GBP' => '£',
+ 'HKD' => 'HK$',
+ 'ILS' => '₪',
+ 'INR' => '₹',
+ 'JPY' => 'JP¥',
+ 'KRW' => '₩',
+ 'MXN' => 'MX$',
+ 'NZD' => 'NZ$',
+ 'THB' => '฿',
+ 'TWD' => 'NT$',
+ 'USD' => 'US$',
+ 'VND' => '₫',
+ 'XAF' => 'FCFA',
+ 'XCD' => 'EC$',
+ 'XOF' => 'CFA',
+ 'XPF' => 'CFPF',
+);
+
+$countryNames = array(
+ 'AC' => 'Ishulli Asenshion',
+ 'AD' => 'Andorrë',
+ 'AE' => 'Emiratet e Bashkuara Arabe',
+ 'AF' => 'Afganistan',
+ 'AG' => 'Antigua e Barbuda',
+ 'AI' => 'Anguilë',
+ 'AL' => 'Shqipëri',
+ 'AM' => 'Armeni',
+ 'AO' => 'Angolë',
+ 'AQ' => 'Antarktikë',
+ 'AR' => 'Argjentinë',
+ 'AS' => 'Samoa Amerikane',
+ 'AT' => 'Austri',
+ 'AU' => 'Australi',
+ 'AW' => 'Arubë',
+ 'AX' => 'Ishujt Alandë',
+ 'AZ' => 'Azerbajxhan',
+ 'BA' => 'Bosnjë-Hercegovinë',
+ 'BB' => 'Barbados',
+ 'BD' => 'Bangladesh',
+ 'BE' => 'Belgjikë',
+ 'BF' => 'Burkina Faso',
+ 'BG' => 'Bullgari',
+ 'BH' => 'Bahrein',
+ 'BI' => 'Burund',
+ 'BJ' => 'Benin',
+ 'BL' => 'Shën Bartolemeo',
+ 'BM' => 'Bermudë',
+ 'BN' => 'Brunej',
+ 'BO' => 'Bolivi',
+ 'BQ' => 'Karaibet holandeze',
+ 'BR' => 'Brazil',
+ 'BS' => 'Bahamas',
+ 'BT' => 'Butan',
+ 'BV' => 'Ishujt Bove',
+ 'BW' => 'Botsvanë',
+ 'BY' => 'Bjellorusi',
+ 'BZ' => 'Belizë',
+ 'CA' => 'Kanada',
+ 'CC' => 'Ishujt Kokos',
+ 'CD' => 'Kongo-Kinshasa',
+ 'CF' => 'Republika Afrikano-Qendrore',
+ 'CG' => 'Kongo-Brazavilë',
+ 'CH' => 'Zvicër',
+ 'CI' => 'Bregu i Fildishtë',
+ 'CK' => 'Ishujt Kukë',
+ 'CL' => 'Kili',
+ 'CM' => 'Kamerun',
+ 'CN' => 'Kinë',
+ 'CO' => 'Kolumbi',
+ 'CP' => 'Ishulli Klipërton',
+ 'CR' => 'Kosta Rikë',
+ 'CU' => 'Kubë',
+ 'CV' => 'Kepi i Gjelbër',
+ 'CW' => 'Kuraçao',
+ 'CX' => 'Ishulli i Krishtlindjes',
+ 'CY' => 'Qipro',
+ 'CZ' => 'Republika Çeke',
+ 'DE' => 'Gjermani',
+ 'DG' => 'Diego Garsia',
+ 'DJ' => 'Xhibut',
+ 'DK' => 'Danimarkë',
+ 'DM' => 'Dominikë',
+ 'DO' => 'Republika Dominikane',
+ 'DZ' => 'Algjeri',
+ 'EA' => 'Theuta e Melila',
+ 'EC' => 'Ekuador',
+ 'EE' => 'Estoni',
+ 'EG' => 'Egjipt',
+ 'EH' => 'Saharaja Perëndimore',
+ 'ER' => 'Eritre',
+ 'ES' => 'Spanjë',
+ 'ET' => 'Etiopi',
+ 'EU' => 'Bashkimi Europian',
+ 'FI' => 'Finlandë',
+ 'FJ' => 'Fixhi',
+ 'FK' => 'Ishujt Folklandë',
+ 'FM' => 'Mikronezi',
+ 'FO' => 'Ishujt Faroe',
+ 'FR' => 'Francë',
+ 'GA' => 'Gabon',
+ 'GB' => 'Mbretëria e Bashkuar',
+ 'GD' => 'Grenadë',
+ 'GE' => 'Gjeorgji',
+ 'GF' => 'Guajana Franceze',
+ 'GG' => 'Guernsej',
+ 'GH' => 'Ganë',
+ 'GI' => 'Gjibraltar',
+ 'GL' => 'Grenlandë',
+ 'GM' => 'Gambi',
+ 'GN' => 'Guine',
+ 'GP' => 'Guadalupe',
+ 'GQ' => 'Guineja Ekuatoriale',
+ 'GR' => 'Greqi',
+ 'GS' => 'Xhorxha Jugore dhe Ishujt Senduiç të Jugut',
+ 'GT' => 'Guatemalë',
+ 'GU' => 'Guam',
+ 'GW' => 'Guine-Bisau',
+ 'GY' => 'Guajanë',
+ 'HK' => 'Hong Kong',
+ 'HM' => 'Ishulli Hërd dhe Ishujt Mekdonald',
+ 'HN' => 'Honduras',
+ 'HR' => 'Kroaci',
+ 'HT' => 'Haiti',
+ 'HU' => 'Hungari',
+ 'IC' => 'Ishujt Kanarie',
+ 'ID' => 'Indonezi',
+ 'IE' => 'Irlandë',
+ 'IL' => 'Izrael',
+ 'IM' => 'Ishulli i Manit',
+ 'IN' => 'Indi',
+ 'IO' => 'Territori Britanik i Oqeanit Indian',
+ 'IQ' => 'Irak',
+ 'IR' => 'Iran',
+ 'IS' => 'Islandë',
+ 'IT' => 'Itali',
+ 'JE' => 'Xhersej',
+ 'JM' => 'Xhamajkë',
+ 'JO' => 'Jordani',
+ 'JP' => 'Japoni',
+ 'KE' => 'Kenia',
+ 'KG' => 'Kirgistan',
+ 'KH' => 'Kamboxhia',
+ 'KI' => 'Qiribati',
+ 'KM' => 'Komore',
+ 'KN' => 'Shën Kits e Nevis',
+ 'KP' => 'Koreja e Veriut',
+ 'KR' => 'Koreja e Jugut',
+ 'KW' => 'Kuvajt',
+ 'KY' => 'Ishujt Kajmanë',
+ 'KZ' => 'Kazakistan',
+ 'LA' => 'Laos',
+ 'LB' => 'Liban',
+ 'LC' => 'Shën Luçia',
+ 'LI' => 'Lihtënshtajn',
+ 'LK' => 'Sri Lankë',
+ 'LR' => 'Liberi',
+ 'LS' => 'Lesoto',
+ 'LT' => 'Lituani',
+ 'LU' => 'Luksemburg',
+ 'LV' => 'Letoni',
+ 'LY' => 'Libi',
+ 'MA' => 'Marok',
+ 'MC' => 'Monako',
+ 'MD' => 'Moldavi',
+ 'ME' => 'Mali i Zi',
+ 'MF' => 'Shën Martin',
+ 'MG' => 'Madagaskar',
+ 'MH' => 'Ishujt Marshallë',
+ 'MK' => 'Maqedoni',
+ 'ML' => 'Mali',
+ 'MM' => 'Mianmar (Burma)',
+ 'MN' => 'Mongoli',
+ 'MO' => 'Makao',
+ 'MP' => 'Ishujt e Marianës Veriore',
+ 'MQ' => 'Martinik',
+ 'MR' => 'Mauritani',
+ 'MS' => 'Montserat',
+ 'MT' => 'Maltë',
+ 'MU' => 'Mauritius',
+ 'MV' => 'Maldive',
+ 'MW' => 'Malavi',
+ 'MX' => 'Meksikë',
+ 'MY' => 'Malajzi',
+ 'MZ' => 'Mozambik',
+ 'NA' => 'Namibi',
+ 'NC' => 'Kaledonia e Re',
+ 'NE' => 'Niger',
+ 'NF' => 'Ishujt Norfolkë',
+ 'NG' => 'Nigeri',
+ 'NI' => 'Nikaragua',
+ 'NL' => 'Holandë',
+ 'NO' => 'Norvegji',
+ 'NP' => 'Nepal',
+ 'NR' => 'Nauru',
+ 'NU' => 'Niue',
+ 'NZ' => 'Zelanda e Re',
+ 'OM' => 'Oman',
+ 'PA' => 'Panama',
+ 'PE' => 'Peru',
+ 'PF' => 'Polinezia Franceze',
+ 'PG' => 'Papua Guineja e Re',
+ 'PH' => 'Filipine',
+ 'PK' => 'Pakistan',
+ 'PL' => 'Poloni',
+ 'PM' => 'Shën Peir dhe Mikuelon',
+ 'PN' => 'Ishujt Pitkernë',
+ 'PR' => 'Porto Riko',
+ 'PS' => 'Palestinë',
+ 'PT' => 'Portugali',
+ 'PW' => 'Palau',
+ 'PY' => 'Paraguai',
+ 'QA' => 'Katar',
+ 'QO' => 'Oqeania e Largët (Lindja e Largët)',
+ 'RE' => 'Reunion',
+ 'RO' => 'Rumani',
+ 'RS' => 'Serbi',
+ 'RU' => 'Rusi',
+ 'RW' => 'Ruandë',
+ 'SA' => 'Arabia Saudite',
+ 'SB' => 'Ishujt Solomonë',
+ 'SC' => 'Sishel',
+ 'SD' => 'Sudan',
+ 'SE' => 'Suedi',
+ 'SG' => 'Singapor',
+ 'SH' => 'Shën Helena',
+ 'SI' => 'Slloveni',
+ 'SJ' => 'Svalbard e Zhan Majen',
+ 'SK' => 'Sllovaki',
+ 'SL' => 'Siera Leone',
+ 'SM' => 'San Marino',
+ 'SN' => 'Senegali',
+ 'SO' => 'Somali',
+ 'SR' => 'Surinami',
+ 'SS' => 'Sudani i Jugut',
+ 'ST' => 'Sao Tome e Prinsipe',
+ 'SV' => 'El Salvador',
+ 'SX' => 'Shën Martin (Sint Maarten-pjesa e Mbretërisë së Holandës)',
+ 'SY' => 'Siri',
+ 'SZ' => 'Svazilandë',
+ 'TA' => 'Tristan da Kuna',
+ 'TC' => 'Ishujt Turke dhe Kaike',
+ 'TD' => 'Çad',
+ 'TF' => 'Territoret Australiane Franceze',
+ 'TG' => 'Togo',
+ 'TH' => 'Tajlandë',
+ 'TJ' => 'Taxhikistan',
+ 'TK' => 'Tokelau',
+ 'TL' => 'Timori Lindor',
+ 'TM' => 'Turkmenistan',
+ 'TN' => 'Tunizi',
+ 'TO' => 'Tonga',
+ 'TR' => 'Turqi',
+ 'TT' => 'Trinidad e Tobago',
+ 'TV' => 'Tuvalu',
+ 'TW' => 'Tajvan',
+ 'TZ' => 'Tanzani',
+ 'UA' => 'Ukrainë',
+ 'UG' => 'Ugandë',
+ 'UM' => 'Ishujt periferikë të SHBA-së',
+ 'US' => 'SHBA',
+ 'UY' => 'Uruguai',
+ 'UZ' => 'Uzbekistan',
+ 'VA' => 'Vatikan',
+ 'VC' => 'Shën Vinsent dhe Grenadinet',
+ 'VE' => 'Venezuelë',
+ 'VG' => 'Ishujt e Virgjër Britanikë',
+ 'VI' => 'Ishujt e Virgjër Amerikanë',
+ 'VN' => 'Vietnam',
+ 'VU' => 'Vanuatu',
+ 'WF' => 'Uollis e Futina',
+ 'WS' => 'Samoa',
+ 'XK' => 'Kosovë',
+ 'YE' => 'Jemen',
+ 'YT' => 'Majotë',
+ 'ZA' => 'Afrika e Jugut',
+ 'ZM' => 'Zambi',
+ 'ZW' => 'Zimbabve',
+);
+
+$timeUnits = array(
+ 'day-future-one' => 'pas {0} dite',
+ 'day-future-other' => 'pas {0} ditësh',
+ 'day-narrow-future-one' => 'pas {0} dite',
+ 'day-narrow-future-other' => 'pas {0} ditësh',
+ 'day-narrow-past-one' => 'para {0} dite',
+ 'day-narrow-past-other' => 'para {0} ditësh',
+ 'day-one' => '{0} ditë',
+ 'day-other' => '{0} ditë',
+ 'day-past-one' => 'para {0} dite',
+ 'day-past-other' => 'para {0} ditësh',
+ 'day-short-future-one' => 'pas {0} dite',
+ 'day-short-future-other' => 'pas {0} ditësh',
+ 'day-short-past-one' => 'para {0} dite',
+ 'day-short-past-other' => 'para {0} ditësh',
+ 'hour-future-one' => 'pas {0} ore',
+ 'hour-future-other' => 'pas {0} orësh',
+ 'hour-narrow-future-one' => 'pas {0} ore',
+ 'hour-narrow-future-other' => 'pas {0} orësh',
+ 'hour-narrow-past-one' => 'para {0} ore',
+ 'hour-narrow-past-other' => 'para {0} orësh',
+ 'hour-one' => '{0} orë',
+ 'hour-other' => '{0} orë',
+ 'hour-past-one' => 'para {0} ore',
+ 'hour-past-other' => 'para {0} orësh',
+ 'hour-short-future-one' => 'pas {0} ore',
+ 'hour-short-future-other' => 'pas {0} orësh',
+ 'hour-short-past-one' => 'para {0} ore',
+ 'hour-short-past-other' => 'para {0} orësh',
+ 'microsecond-one' => '{0} mikrosekondë',
+ 'microsecond-other' => '{0} mikrosekonda',
+ 'millisecond-one' => '{0} milisekondë',
+ 'millisecond-other' => '{0} milisekonda',
+ 'minute-future-one' => 'pas {0} minute',
+ 'minute-future-other' => 'pas {0} minutash',
+ 'minute-narrow-future-one' => 'pas {0} min.',
+ 'minute-narrow-future-other' => 'pas {0} min.',
+ 'minute-narrow-past-one' => 'para {0} min.',
+ 'minute-narrow-past-other' => 'para {0} min.',
+ 'minute-one' => '{0} minutë',
+ 'minute-other' => '{0} minuta',
+ 'minute-past-one' => 'para {0} minute',
+ 'minute-past-other' => 'para {0} minutash',
+ 'minute-short-future-one' => 'pas {0} min.',
+ 'minute-short-future-other' => 'pas {0} min.',
+ 'minute-short-past-one' => 'para {0} min.',
+ 'minute-short-past-other' => 'para {0} min.',
+ 'month-future-one' => 'pas {0} muaji',
+ 'month-future-other' => 'pas {0} muajsh',
+ 'month-narrow-future-one' => 'pas {0} muaji',
+ 'month-narrow-future-other' => 'pas {0} muajsh',
+ 'month-narrow-past-one' => 'para {0} muaji',
+ 'month-narrow-past-other' => 'para {0} muajsh',
+ 'month-one' => '{0} muaj',
+ 'month-other' => '{0} muaj',
+ 'month-past-one' => 'para {0} muaji',
+ 'month-past-other' => 'para {0} muajsh',
+ 'month-short-future-one' => 'pas {0} muaji',
+ 'month-short-future-other' => 'pas {0} muajsh',
+ 'month-short-past-one' => 'para {0} muaji',
+ 'month-short-past-other' => 'para {0} muajsh',
+ 'nanosecond-one' => '{0} nanosekondë',
+ 'nanosecond-other' => '{0} nanosekonda',
+ 'quarter-future-one' => 'pas {0} tremujori',
+ 'quarter-future-other' => 'pas {0} tremujorësh',
+ 'quarter-narrow-future-one' => 'pas {0} tremujori',
+ 'quarter-narrow-future-other' => 'pas {0} tremujorësh',
+ 'quarter-narrow-past-one' => 'para {0} tremujori',
+ 'quarter-narrow-past-other' => 'para {0} tremujorësh',
+ 'quarter-past-one' => 'para {0} tremujori',
+ 'quarter-past-other' => 'para {0} tremujorësh',
+ 'quarter-short-future-one' => 'pas {0} tremujori',
+ 'quarter-short-future-other' => 'pas {0} tremujorësh',
+ 'quarter-short-past-one' => 'para {0} tremujori',
+ 'quarter-short-past-other' => 'para {0} tremujorësh',
+ 'second-future-one' => 'pas {0} sekonde',
+ 'second-future-other' => 'pas {0} sekondash',
+ 'second-narrow-future-one' => 'pas {0} sek.',
+ 'second-narrow-future-other' => 'pas {0} sek.',
+ 'second-narrow-past-one' => 'para {0} sek.',
+ 'second-narrow-past-other' => 'para {0} sek.',
+ 'second-one' => '{0} sekondë',
+ 'second-other' => '{0} sekonda',
+ 'second-past-one' => 'para {0} sekonde',
+ 'second-past-other' => 'para {0} sekondash',
+ 'second-short-future-one' => 'pas {0} sek.',
+ 'second-short-future-other' => 'pas {0} sek.',
+ 'second-short-past-one' => 'para {0} sek.',
+ 'second-short-past-other' => 'para {0} sek.',
+ 'week-future-one' => 'pas {0} jave',
+ 'week-future-other' => 'pas {0} javësh',
+ 'week-narrow-future-one' => 'pas {0} jave',
+ 'week-narrow-future-other' => 'pas {0} javësh',
+ 'week-narrow-past-one' => 'para {0} jave',
+ 'week-narrow-past-other' => 'para {0} javësh',
+ 'week-one' => '{0} javë',
+ 'week-other' => '{0} javë',
+ 'week-past-one' => 'para {0} jave',
+ 'week-past-other' => 'para {0} javësh',
+ 'week-short-future-one' => 'pas {0} jave',
+ 'week-short-future-other' => 'pas {0} javësh',
+ 'week-short-past-one' => 'para {0} jave',
+ 'week-short-past-other' => 'para {0} javësh',
+ 'year-future-one' => 'pas {0} viti',
+ 'year-future-other' => 'pas {0} vjetësh',
+ 'year-narrow-future-one' => 'pas {0} viti',
+ 'year-narrow-future-other' => 'pas {0} vjetësh',
+ 'year-narrow-past-one' => 'para {0} viti',
+ 'year-narrow-past-other' => 'para {0} vjetësh',
+ 'year-one' => '{0} vit',
+ 'year-other' => '{0} vjet',
+ 'year-past-one' => 'para {0} viti',
+ 'year-past-other' => 'para {0} vjetësh',
+ 'year-short-future-one' => 'pas {0} viti',
+ 'year-short-future-other' => 'pas {0} vjetësh',
+ 'year-short-past-one' => 'para {0} viti',
+ 'year-short-past-other' => 'para {0} vjetësh',
+);
diff --git a/MLEB/cldr/CldrNames/CldrNamesSr_ec.php b/MLEB/cldr/CldrNames/CldrNamesSr_ec.php
new file mode 100644
index 00000000..bf47c200
--- /dev/null
+++ b/MLEB/cldr/CldrNames/CldrNamesSr_ec.php
@@ -0,0 +1,1377 @@
+<?php
+
+$languageNames = array(
+ 'aa' => 'Афарски',
+ 'ab' => 'абхаски',
+ 'ace' => 'Ачинески',
+ 'ach' => 'Аколи',
+ 'ada' => 'Адангмејски',
+ 'ady' => 'Адигејски',
+ 'ae' => 'Авестански',
+ 'af' => 'африканс',
+ 'afh' => 'Африхили',
+ 'agq' => 'агем',
+ 'ain' => 'Аину',
+ 'ak' => 'акан',
+ 'akk' => 'Акадијски',
+ 'ale' => 'Аљут',
+ 'alt' => 'Јужни алтаи',
+ 'am' => 'амхарски',
+ 'an' => 'Арагонежански',
+ 'ang' => 'Староенглески',
+ 'anp' => 'Ангика',
+ 'ar' => 'арапски',
+ 'ar-001' => 'модеран стандардни арапски',
+ 'arc' => 'Армајски',
+ 'arn' => 'мапуче',
+ 'arp' => 'Арапахо',
+ 'arw' => 'Аравак',
+ 'as' => 'асамски',
+ 'asa' => 'асу',
+ 'ast' => 'Астуријски',
+ 'av' => 'Аварски',
+ 'awa' => 'Авадхи',
+ 'ay' => 'Ајмара',
+ 'az' => 'азербејџански',
+ 'ba' => 'башкирски',
+ 'bal' => 'Балучи',
+ 'ban' => 'Балинезијски',
+ 'bas' => 'Баса',
+ 'be' => 'белоруски',
+ 'bej' => 'Беја',
+ 'bem' => 'бемба',
+ 'bez' => 'бена',
+ 'bg' => 'бугарски',
+ 'bho' => 'Бојпури',
+ 'bi' => 'Бислама',
+ 'bik' => 'Бикол',
+ 'bin' => 'Бини',
+ 'bla' => 'Сисика',
+ 'bm' => 'бамбара',
+ 'bn' => 'бенгалски',
+ 'bo' => 'тибетански',
+ 'br' => 'бретонски',
+ 'bra' => 'Брај',
+ 'brx' => 'бодо',
+ 'bs' => 'босански',
+ 'bua' => 'Буриат',
+ 'bug' => 'Бугинежански',
+ 'byn' => 'Блин',
+ 'ca' => 'каталонски',
+ 'cad' => 'Кадо',
+ 'car' => 'Карипски',
+ 'cch' => 'Атсамски',
+ 'ce' => 'Чеченски',
+ 'ceb' => 'Цебуано',
+ 'cgg' => 'чига',
+ 'ch' => 'Чаморо',
+ 'chb' => 'Чибча',
+ 'chg' => 'Чагатаи',
+ 'chk' => 'Чукески',
+ 'chm' => 'Мари',
+ 'chn' => 'Чинукски',
+ 'cho' => 'Чоктавски',
+ 'chp' => 'Чипвијански',
+ 'chr' => 'чероки',
+ 'chy' => 'Чејенски',
+ 'ckb' => 'сорани курдски',
+ 'co' => 'корзикански',
+ 'cop' => 'Коптски',
+ 'cr' => 'Кри',
+ 'crh' => 'Кримеански турски',
+ 'cs' => 'чешки',
+ 'csb' => 'Кашубијански',
+ 'cu' => 'Старословенски',
+ 'cv' => 'Чувашки',
+ 'cy' => 'велшки',
+ 'da' => 'дански',
+ 'dak' => 'Дакота',
+ 'dar' => 'Даргва',
+ 'dav' => 'таита',
+ 'de' => 'немачки',
+ 'de-ch' => 'швајцарски високи немачки',
+ 'del' => 'Делавер',
+ 'den' => 'Славски',
+ 'dgr' => 'Догриб',
+ 'din' => 'Динка',
+ 'dje' => 'зарма',
+ 'doi' => 'Догри',
+ 'dsb' => 'доњи лужичкосрпски',
+ 'dua' => 'дуала',
+ 'dum' => 'Средњи холандски',
+ 'dv' => 'Дивехијски',
+ 'dyo' => 'џола фоњи',
+ 'dyu' => 'Ђула',
+ 'dz' => 'џонга',
+ 'ebu' => 'ембу',
+ 'ee' => 'еве',
+ 'efi' => 'Ефикски',
+ 'egy' => 'Староегипатски',
+ 'eka' => 'Екајук',
+ 'el' => 'грчки',
+ 'elx' => 'Еламитски',
+ 'en' => 'енглески',
+ 'enm' => 'Средњи енглески',
+ 'eo' => 'есперанто',
+ 'es' => 'шпански',
+ 'et' => 'естонски',
+ 'eu' => 'баскијски',
+ 'ewo' => 'Евондо',
+ 'fa' => 'персијски',
+ 'fan' => 'Фанг',
+ 'fat' => 'Фанти',
+ 'ff' => 'Фулах',
+ 'fi' => 'фински',
+ 'fil' => 'филипински',
+ 'fj' => 'фиџијски',
+ 'fo' => 'фарски',
+ 'fon' => 'Фон',
+ 'fr' => 'француски',
+ 'frm' => 'Средњи француски',
+ 'fro' => 'Старофранцуски',
+ 'frr' => 'Северно-фризијски',
+ 'frs' => 'Источни фризијски',
+ 'fur' => 'Фриулијски',
+ 'fy' => 'западни фризијски',
+ 'ga' => 'ирски',
+ 'gaa' => 'Га',
+ 'gag' => 'гагауз',
+ 'gay' => 'Гајо',
+ 'gba' => 'Гбаја',
+ 'gd' => 'Шкотски Галски',
+ 'gez' => 'Џиз',
+ 'gil' => 'Гилбертшки',
+ 'gl' => 'галицијски',
+ 'gmh' => 'Средњи високи немачки',
+ 'gn' => 'гварани',
+ 'goh' => 'Старонемачки',
+ 'gon' => 'Гонди',
+ 'gor' => 'Горонтало',
+ 'got' => 'Готски',
+ 'grb' => 'Гребо',
+ 'grc' => 'Старогрчки',
+ 'gsw' => 'Швајцарски немачки',
+ 'gu' => 'гуџарати',
+ 'guz' => 'гуси',
+ 'gv' => 'Манкс',
+ 'gwi' => 'Гвич’ин',
+ 'ha' => 'хауса',
+ 'hai' => 'Хаида',
+ 'haw' => 'хавајски',
+ 'he' => 'хебрејски',
+ 'hi' => 'хинди',
+ 'hil' => 'Хилигајнон',
+ 'hit' => 'Хитите',
+ 'hmn' => 'Хмонг',
+ 'ho' => 'Хири Моту',
+ 'hr' => 'хрватски',
+ 'hsb' => 'горњи лужичкосрпски',
+ 'ht' => 'Хаитски',
+ 'hu' => 'мађарски',
+ 'hup' => 'Хупа',
+ 'hy' => 'јерменски',
+ 'hz' => 'Хереро',
+ 'ia' => 'Интерлингва',
+ 'iba' => 'Ибан',
+ 'id' => 'индонежански',
+ 'ie' => 'Међујезички',
+ 'ig' => 'игбо',
+ 'ii' => 'сечуан ји',
+ 'ik' => 'Унупиак',
+ 'ilo' => 'Илоко',
+ 'inh' => 'Ингвишки',
+ 'io' => 'Идо',
+ 'is' => 'исландски',
+ 'it' => 'италијански',
+ 'iu' => 'инуктитут',
+ 'ja' => 'јапански',
+ 'jbo' => 'Лојбан',
+ 'jgo' => 'нгомба',
+ 'jmc' => 'мачаме',
+ 'jpr' => 'Јудео-персијски',
+ 'jrb' => 'Јудео-арапски',
+ 'jv' => 'јавански',
+ 'ka' => 'грузијски',
+ 'kaa' => 'Кара-калпашки',
+ 'kab' => 'кабиле',
+ 'kac' => 'Качин',
+ 'kaj' => 'Ђу',
+ 'kam' => 'камба',
+ 'kaw' => 'Кави',
+ 'kbd' => 'Кабардијски',
+ 'kcg' => 'Тјап',
+ 'kde' => 'маконде',
+ 'kea' => 'зеленортски креолски',
+ 'kfo' => 'Коро',
+ 'kg' => 'Конго',
+ 'kha' => 'Каси',
+ 'kho' => 'Котанешки',
+ 'khq' => 'којра чиини',
+ 'ki' => 'кикују',
+ 'kj' => 'Куањама',
+ 'kk' => 'казашки',
+ 'kl' => 'калалисут',
+ 'kln' => 'каленџин',
+ 'km' => 'кмерски',
+ 'kmb' => 'Кимбунду',
+ 'kn' => 'канада',
+ 'ko' => 'корејски',
+ 'koi' => 'коми-пермски',
+ 'kok' => 'конкани',
+ 'kos' => 'Косреански',
+ 'kpe' => 'Кпеле',
+ 'kr' => 'Канури',
+ 'krc' => 'Карачај-балкар',
+ 'kri' => 'Крио',
+ 'krl' => 'Карелијски',
+ 'kru' => 'Курукх',
+ 'ks' => 'кашмирски',
+ 'ksb' => 'шамбала',
+ 'ksf' => 'бафија',
+ 'ku' => 'курдски',
+ 'kum' => 'Кумик',
+ 'kut' => 'Кутенаи',
+ 'kv' => 'Коми',
+ 'kw' => 'корнволски',
+ 'ky' => 'киргиски',
+ 'la' => 'латински',
+ 'lad' => 'Ладино',
+ 'lag' => 'ланги',
+ 'lah' => 'Ланда',
+ 'lam' => 'Ламба',
+ 'lb' => 'луксембуршки',
+ 'lez' => 'Лезгиан',
+ 'lg' => 'ганда',
+ 'li' => 'Лимбургиш',
+ 'lkt' => 'лакота',
+ 'ln' => 'лингала',
+ 'lo' => 'лаошки',
+ 'lol' => 'Монго',
+ 'loz' => 'Лози',
+ 'lt' => 'литвански',
+ 'lu' => 'луба-катанга',
+ 'lua' => 'Луба-лулуа',
+ 'lui' => 'Луисено',
+ 'lun' => 'Лунда',
+ 'luo' => 'луо',
+ 'lus' => 'Лушаи',
+ 'luy' => 'лујиа',
+ 'lv' => 'летонски',
+ 'mad' => 'Мадурешки',
+ 'mag' => 'Магахи',
+ 'mai' => 'Маитили',
+ 'mak' => 'Макасар',
+ 'man' => 'Мандинго',
+ 'mas' => 'масаи',
+ 'mdf' => 'Мокша',
+ 'mdr' => 'Мандар',
+ 'men' => 'Менде',
+ 'mer' => 'меру',
+ 'mfe' => 'морисјен',
+ 'mg' => 'малгашки',
+ 'mga' => 'Средњи ирски',
+ 'mgh' => 'макува-меето',
+ 'mgo' => 'мета',
+ 'mh' => 'Маршалски',
+ 'mi' => 'маорски',
+ 'mic' => 'Микмак',
+ 'min' => 'Минангкабау',
+ 'mk' => 'македонски',
+ 'ml' => 'малајалам',
+ 'mn' => 'монголски',
+ 'mnc' => 'Манчу',
+ 'mni' => 'Манипури',
+ 'moh' => 'мохок',
+ 'mos' => 'Моси',
+ 'mr' => 'марати',
+ 'ms' => 'малајски',
+ 'mt' => 'малтешки',
+ 'mua' => 'мунданг',
+ 'mul' => 'Више језика',
+ 'mus' => 'Кришки',
+ 'mwl' => 'Мирандешки',
+ 'mwr' => 'Марвари',
+ 'my' => 'бурмански',
+ 'myv' => 'Ерзија',
+ 'na' => 'Науру',
+ 'nap' => 'Неаполитански',
+ 'naq' => 'нама',
+ 'nb' => 'норвешки бокмал',
+ 'nd' => 'северни ндебеле',
+ 'nds' => 'Ниски немачки',
+ 'ne' => 'непалски',
+ 'new' => 'Невари',
+ 'ng' => 'Ндонга',
+ 'nia' => 'Ниас',
+ 'niu' => 'Ниуеан',
+ 'nl' => 'холандски',
+ 'nl-be' => 'фламански',
+ 'nmg' => 'квасио',
+ 'nn' => 'норвешки нинорск',
+ 'no' => 'Норвешки',
+ 'nog' => 'Ногаи',
+ 'non' => 'Стари норски',
+ 'nqo' => 'Н’ко',
+ 'nr' => 'Јужни ндебеле',
+ 'nso' => 'Северни сото',
+ 'nus' => 'нуер',
+ 'nv' => 'Навахо',
+ 'nwc' => 'Класични невари',
+ 'ny' => 'Њања',
+ 'nym' => 'Њамвези',
+ 'nyn' => 'нјанколе',
+ 'nyo' => 'Њоро',
+ 'nzi' => 'Нзима',
+ 'oc' => 'Провансалски',
+ 'oj' => 'Ојибва',
+ 'om' => 'оромо',
+ 'or' => 'орија',
+ 'os' => 'Осетски',
+ 'osa' => 'Осаге',
+ 'ota' => 'Отомански турски',
+ 'pa' => 'панџаби',
+ 'pag' => 'Пангасински',
+ 'pal' => 'Пахлави',
+ 'pam' => 'Пампанга',
+ 'pap' => 'Папиаменто',
+ 'pau' => 'Палауански',
+ 'peo' => 'Староперсијски',
+ 'phn' => 'Феничански',
+ 'pi' => 'Пали',
+ 'pl' => 'пољски',
+ 'pon' => 'Понпејски',
+ 'pro' => 'Старопровансалски',
+ 'ps' => 'паштунски',
+ 'pt' => 'португалски',
+ 'pt-br' => 'Бразилски португалски',
+ 'pt-pt' => 'Иберијски португалски',
+ 'qu' => 'кечуа',
+ 'quc' => 'к’иче',
+ 'raj' => 'Рађастани',
+ 'rap' => 'Рапануи',
+ 'rar' => 'Раротонган',
+ 'rm' => 'рето-романски',
+ 'rn' => 'рунди',
+ 'ro' => 'румунски',
+ 'ro-md' => 'молдавски',
+ 'rof' => 'ромбо',
+ 'rom' => 'Романи',
+ 'ru' => 'руски',
+ 'rup' => 'Ароманијски',
+ 'rw' => 'кинјаруанда',
+ 'rwk' => 'руа',
+ 'sa' => 'санскрит',
+ 'sad' => 'Сандаве',
+ 'sah' => 'Јакут',
+ 'sam' => 'Самаритански арамејски',
+ 'saq' => 'самбуру',
+ 'sas' => 'Сасак',
+ 'sat' => 'Сантали',
+ 'sbp' => 'сангу',
+ 'sc' => 'Сардињаски',
+ 'scn' => 'Сицилијански',
+ 'sco' => 'Шкотски',
+ 'sd' => 'синди',
+ 'se' => 'северни сами',
+ 'seh' => 'сена',
+ 'sel' => 'Селкап',
+ 'ses' => 'којраборо сени',
+ 'sg' => 'санго',
+ 'sga' => 'Староирски',
+ 'sh' => 'Српскохрватски',
+ 'shi' => 'ташелхит',
+ 'shn' => 'Шан',
+ 'si' => 'синхалски',
+ 'sid' => 'Сидамо',
+ 'sk' => 'словачки',
+ 'sl' => 'словеначки',
+ 'sm' => 'Самоански',
+ 'sma' => 'јужни сами',
+ 'smj' => 'луле сами',
+ 'smn' => 'инари сами',
+ 'sms' => 'сколт сами',
+ 'sn' => 'шона',
+ 'snk' => 'Сонинке',
+ 'so' => 'сомалски',
+ 'sog' => 'Соџијенски',
+ 'sq' => 'албански',
+ 'sr' => 'српски',
+ 'srn' => 'Сранански тонго',
+ 'srr' => 'Серер',
+ 'ss' => 'Свати',
+ 'st' => 'Сесото',
+ 'su' => 'судански',
+ 'suk' => 'Сукума',
+ 'sus' => 'Сусу',
+ 'sux' => 'Сумерски',
+ 'sv' => 'шведски',
+ 'sw' => 'свахили',
+ 'swb' => 'Коморски',
+ 'swc' => 'конго свахили',
+ 'syc' => 'Класични сиријски',
+ 'syr' => 'Сиријски',
+ 'ta' => 'тамилски',
+ 'te' => 'телугу',
+ 'tem' => 'Тимне',
+ 'teo' => 'тесо',
+ 'ter' => 'Терено',
+ 'tet' => 'Тетум',
+ 'tg' => 'Тађик',
+ 'th' => 'тајландски',
+ 'ti' => 'тигриња',
+ 'tig' => 'Тигре',
+ 'tiv' => 'Тив',
+ 'tk' => 'туркменски',
+ 'tkl' => 'Токелау',
+ 'tl' => 'Тагалски',
+ 'tlh' => 'Клингонски',
+ 'tli' => 'Тлингит',
+ 'tmh' => 'Тамашек',
+ 'tn' => 'Тсвана',
+ 'to' => 'тонга',
+ 'tog' => 'Њаса тонга',
+ 'tpi' => 'Ток Писин',
+ 'tr' => 'турски',
+ 'ts' => 'Тсонга',
+ 'tsi' => 'Тсимшиан',
+ 'tt' => 'татарски',
+ 'tum' => 'Тумбука',
+ 'tvl' => 'Тувалу',
+ 'tw' => 'Тви',
+ 'twq' => 'тасавак',
+ 'ty' => 'Тахићански',
+ 'tyv' => 'Тувинијски',
+ 'tzm' => 'централноатласки тамазигт',
+ 'udm' => 'Удмурт',
+ 'ug' => 'ујгурски',
+ 'uga' => 'Угаритски',
+ 'uk' => 'украјински',
+ 'umb' => 'Умбунду',
+ 'und' => 'непознат језик',
+ 'ur' => 'урду',
+ 'uz' => 'узбечки',
+ 'vai' => 'ваи',
+ 've' => 'Венда',
+ 'vi' => 'вијетнамски',
+ 'vo' => 'Волапук',
+ 'vot' => 'Вотски',
+ 'vun' => 'вунџо',
+ 'wa' => 'Валун',
+ 'wal' => 'Валамо',
+ 'war' => 'Варај',
+ 'was' => 'Вашо',
+ 'wo' => 'волоф',
+ 'xal' => 'Калмик',
+ 'xh' => 'коса',
+ 'xog' => 'сога',
+ 'yao' => 'Јао',
+ 'yap' => 'Јапешки',
+ 'yi' => 'Јидиш',
+ 'yo' => 'јоруба',
+ 'yue' => 'Кантонски',
+ 'za' => 'Жуанг',
+ 'zap' => 'Запотечки',
+ 'zbl' => 'Блисимболи',
+ 'zen' => 'Зенага',
+ 'zgh' => 'стандардни марокански тамазигт',
+ 'zh' => 'кинески',
+ 'zu' => 'зулу',
+ 'zun' => 'Зуни',
+ 'zxx' => 'без лингвистичког садржаја',
+ 'zza' => 'Заза',
+);
+
+$currencyNames = array(
+ 'ADP' => 'Андорска пезета',
+ 'AED' => 'УАЕ дирхам',
+ 'AFA' => 'Авганистански авгани (1927–2002)',
+ 'AFN' => 'Авганистански авгани',
+ 'ALK' => 'стари албански лек',
+ 'ALL' => 'Албански лек',
+ 'AMD' => 'Јерменски драм',
+ 'ANG' => 'Холандскоантилски гулден',
+ 'AOA' => 'Анголска кванза',
+ 'AOK' => 'Анголијска кванза (1977–1990)',
+ 'AON' => 'Анголијска нова кванза (1990–2000)',
+ 'AOR' => 'Анголијска кванза реађустадо (1995–1999)',
+ 'ARA' => 'Аргентински аустрал',
+ 'ARL' => 'Аргентински пезос леј',
+ 'ARM' => 'Аргентински пезос монедо национал',
+ 'ARP' => 'Аргентински пезо (1983–1985)',
+ 'ARS' => 'Аргентински пезос',
+ 'ATS' => 'Аустријски шилинг',
+ 'AUD' => 'Аустралијски долар',
+ 'AWG' => 'Арубански флорин',
+ 'AZM' => 'Азербејџански манат (1993–2006)',
+ 'AZN' => 'Азербејџански манат',
+ 'BAD' => 'Босанско-Херцеговачки динар',
+ 'BAM' => 'Босанско-херцеговачка конвертибилна марка',
+ 'BAN' => 'Босанско-херцеговачки нови динар',
+ 'BBD' => 'Барбадошки долар',
+ 'BDT' => 'Бангладешка така',
+ 'BEC' => 'Белгијски франак (конвертибилни)',
+ 'BEF' => 'Белгијски франак',
+ 'BEL' => 'Белгијски франак (финансијски)',
+ 'BGL' => 'Бугарски тврди лев',
+ 'BGM' => 'Бугарски социјалистички лев',
+ 'BGN' => 'Бугарски лев',
+ 'BGO' => 'Стари бугарски лев',
+ 'BHD' => 'Бахреински динар',
+ 'BIF' => 'Бурундски франак',
+ 'BMD' => 'Бермудски долар',
+ 'BND' => 'Брунејски долар',
+ 'BOB' => 'Боливијски Боливиано',
+ 'BOL' => 'Стари боливијски боливијано',
+ 'BOP' => 'Боливијски пезо',
+ 'BOV' => 'Боливијски мвдол',
+ 'BRB' => 'Бразилски нови крузеиро (1967–1986)',
+ 'BRC' => 'Бразилијски крузадо',
+ 'BRE' => 'Бразилски крузеиро (1990–1993)',
+ 'BRL' => 'Бразилски реал',
+ 'BRN' => 'Бразилијски нови крузадо',
+ 'BRR' => 'Бразилски крузеиро',
+ 'BRZ' => 'Стари бразилски крузеиро',
+ 'BSD' => 'Бахамски долар',
+ 'BTN' => 'Бутански нгултрум',
+ 'BUK' => 'Бурмански кјат',
+ 'BWP' => 'Боцванска пула',
+ 'BYB' => 'Белоруска нова рубља (1994–1999)',
+ 'BYR' => 'Белоруска рубља',
+ 'BZD' => 'Белиски долар',
+ 'CAD' => 'Канадски долар',
+ 'CDF' => 'Конгоански франак',
+ 'CHE' => 'WIR евро',
+ 'CHF' => 'Швајцарски франак',
+ 'CHW' => 'WIR франак',
+ 'CLE' => 'Чилеански ескудо',
+ 'CLF' => 'Чилеовски унидадес се фоменто',
+ 'CLP' => 'Чилеански пезос',
+ 'CNX' => 'Долар кинеске народне банке',
+ 'CNY' => 'Кинески јуан',
+ 'COP' => 'Колумбијски пезос',
+ 'COU' => 'Унидад де валоршки реал',
+ 'CRC' => 'Костарикански колон',
+ 'CSD' => 'Стари српски динар',
+ 'CSK' => 'Чехословачка тврда круна',
+ 'CUC' => 'Кубански конвертибилни пезос',
+ 'CUP' => 'Кубански пезос',
+ 'CVE' => 'Зеленортски ескудо',
+ 'CYP' => 'Кипарска фунта',
+ 'CZK' => 'Чешка круна',
+ 'DDM' => 'Источно-немачка марка',
+ 'DEM' => 'Немачка марка',
+ 'DJF' => 'Џибутански франак',
+ 'DKK' => 'Данска круна',
+ 'DOP' => 'Доминикански пезос',
+ 'DZD' => 'Алжирски динар',
+ 'ECS' => 'Еквадорски сакр',
+ 'ECV' => 'Еквадорски унидад де валор константе',
+ 'EEK' => 'Естонска кроон',
+ 'EGP' => 'Египатска фунта',
+ 'ERN' => 'Eритрејска накфa',
+ 'ESA' => 'Шпанска пезета (рачун)',
+ 'ESB' => 'Шпанска пезета (конвертибилнирачун)',
+ 'ESP' => 'Шпанска пезета',
+ 'ETB' => 'Етиопијски бир',
+ 'EUR' => 'Евро',
+ 'FIM' => 'Финска марка',
+ 'FJD' => 'Фиџијски долар',
+ 'FKP' => 'Фокландска фунта',
+ 'FRF' => 'Француски франак',
+ 'GBP' => 'Британска фунта стерлинга',
+ 'GEK' => 'Грузијски купон ларит',
+ 'GEL' => 'Грузијски лари',
+ 'GHC' => 'Гански цеди (1979–2007)',
+ 'GHS' => 'Гански седи',
+ 'GIP' => 'Гибралтарска фунта',
+ 'GMD' => 'Гамбијски даласи',
+ 'GNF' => 'Гвинејски франак',
+ 'GNS' => 'Гвинејски сили',
+ 'GQE' => 'Екваторијално-гвинејски еквеле',
+ 'GRD' => 'Грчка драхма',
+ 'GTQ' => 'Гватемалски кецал',
+ 'GWE' => 'Португалска гвинеја ескудо',
+ 'GWP' => 'Гвинеја Бисао Пезо',
+ 'GYD' => 'Гвајански долар',
+ 'HKD' => 'Хонгконшки долар',
+ 'HNL' => 'Хондурашка лемпира',
+ 'HRD' => 'Хрватски динар',
+ 'HRK' => 'Хрватска куна',
+ 'HTG' => 'Хаићански гурд',
+ 'HUF' => 'Мађарска форинта',
+ 'IDR' => 'Индонежанска рупија',
+ 'IEP' => 'Ирска фунта',
+ 'ILP' => 'Израелска фунта',
+ 'ILR' => 'Стари израелски шекели',
+ 'ILS' => 'Израелски нови шекел',
+ 'INR' => 'Индијска рупија',
+ 'IQD' => 'Ирачки динар',
+ 'IRR' => 'Ирански риjал',
+ 'ISJ' => 'Стара исландска круна',
+ 'ISK' => 'Исландска круна',
+ 'ITL' => 'Италијанска лира',
+ 'JMD' => 'Јамајчански долар',
+ 'JOD' => 'Јордански динар',
+ 'JPY' => 'Јапански јен',
+ 'KES' => 'Кенијски шилинг',
+ 'KGS' => 'Киргистански сом',
+ 'KHR' => 'Kамбоџански ријел',
+ 'KMF' => 'Коморски франак',
+ 'KPW' => 'Севернокорејски вон',
+ 'KRH' => 'Јужнокорејски хван',
+ 'KRO' => 'Стари јужнокорејски вон',
+ 'KRW' => 'Јужнокорејски Вон',
+ 'KWD' => 'Кувајтски динар',
+ 'KYD' => 'Кајмански долар',
+ 'KZT' => 'Казахстански тенге',
+ 'LAK' => 'Лаошки кип',
+ 'LBP' => 'Либанска фунта',
+ 'LKR' => 'Шриланканскa рупиja',
+ 'LRD' => 'Либеријски долар',
+ 'LSL' => 'Лесото лоти',
+ 'LTL' => 'Литвански литас',
+ 'LTT' => 'Литвански талонас',
+ 'LUC' => 'Луксембуршки конвертибилни франак',
+ 'LUF' => 'Луксембуршки франак',
+ 'LUL' => 'Луксембуршки финансијски франак',
+ 'LVL' => 'Латвијски лати',
+ 'LVR' => 'Латвијска рубља',
+ 'LYD' => 'Либијски динар',
+ 'MAD' => 'Марокански дирхам',
+ 'MAF' => 'Марокански франак',
+ 'MCF' => 'Монегаскански франак',
+ 'MDC' => 'Молдовански купон',
+ 'MDL' => 'Молдавски леј',
+ 'MGA' => 'Малагасијски ариари',
+ 'MGF' => 'Малагасијски франак',
+ 'MKD' => 'Македонски денар',
+ 'MKN' => 'Стари македонски денар',
+ 'MLF' => 'Малијански франак',
+ 'MMK' => 'Мјанмарски кјат',
+ 'MNT' => 'Монголски тугрик',
+ 'MOP' => 'Маканишка патака',
+ 'MRO' => 'Мауританијска oгија',
+ 'MTL' => 'Малтешка лира',
+ 'MTP' => 'Малтешка фунта',
+ 'MUR' => 'Маурицијска рупија',
+ 'MVR' => 'Малдивска руфија',
+ 'MWK' => 'Малавијска квача',
+ 'MXN' => 'Мексички пезос',
+ 'MXP' => 'Мексички сребрни пезо (1861–1992)',
+ 'MXV' => 'Мексички унидад де инверсион (UDI)',
+ 'MYR' => 'Малезијски ринггит',
+ 'MZE' => 'Мозамбијски ескудо',
+ 'MZM' => 'Стари мозамбијски метикал',
+ 'MZN' => 'Мозамбијски метикал',
+ 'NAD' => 'Намибијски долар',
+ 'NGN' => 'Нигеријска наира',
+ 'NIC' => 'Никарагванска кордоба',
+ 'NIO' => 'Никарагванска златна кордоба',
+ 'NLG' => 'Холандски гулден',
+ 'NOK' => 'Норвешка круна',
+ 'NPR' => 'Непалскa рупиja',
+ 'NZD' => 'Новозеландски долар',
+ 'OMR' => 'Омански ријал',
+ 'PAB' => 'Панамска балбоа',
+ 'PEI' => 'Перуански инти',
+ 'PEN' => 'Перуански нуево сол',
+ 'PES' => 'Перуански сол',
+ 'PGK' => 'Папуанска кина',
+ 'PHP' => 'Филипински пезос',
+ 'PKR' => 'Пакистанскa рупиja',
+ 'PLN' => 'Пољски злот',
+ 'PLZ' => 'Пољски злоти (1950–1995)',
+ 'PTE' => 'Португалски ескудо',
+ 'PYG' => 'Парагвајски гварани',
+ 'QAR' => 'Катарски ријал',
+ 'RHD' => 'Родејскидолар',
+ 'ROL' => 'Румунски леј',
+ 'RON' => 'Румунски леј (1952–2006)',
+ 'RSD' => 'Српски динар',
+ 'RUB' => 'Руска рубља',
+ 'RUR' => 'Руска рубља (1991–1998)',
+ 'RWF' => 'Руандски франак',
+ 'SAR' => 'Саудијски ријал',
+ 'SBD' => 'Соломонски долар',
+ 'SCR' => 'Сејшелска рупија',
+ 'SDD' => 'Стари судански динар',
+ 'SDG' => 'Суданска фунта',
+ 'SDP' => 'Стара суданска фунта',
+ 'SEK' => 'Шведска круна',
+ 'SGD' => 'Сингапурски долар',
+ 'SHP' => 'Св. јеленска фунта',
+ 'SIT' => 'Словеначки толар',
+ 'SKK' => 'Словачка круна',
+ 'SLL' => 'Сијера-леоншки леоне',
+ 'SOS' => 'Сомалијски шилинг',
+ 'SRD' => 'Суринамски долар',
+ 'SRG' => 'Суринамски гилдер',
+ 'SSP' => 'Јужносуданска фунта',
+ 'STD' => 'Сао Томе и Принципе добра',
+ 'SUR' => 'Совјетска рубља',
+ 'SVC' => 'Салвадорски колон',
+ 'SYP' => 'Сиријска фунта',
+ 'SZL' => 'Свази лилангени',
+ 'THB' => 'Тајландски бат',
+ 'TJR' => 'Таџихистанска рубља',
+ 'TJS' => 'Tаџихистански сомон',
+ 'TMM' => 'Туркменистански манат (1993–2009)',
+ 'TMT' => 'Туркменистански манат',
+ 'TND' => 'Туниски динар',
+ 'TOP' => 'Тонгоншка Панга',
+ 'TPE' => 'Тиморшки ескудо',
+ 'TRL' => 'Турска лира (1922–2005)',
+ 'TRY' => 'Турска лира',
+ 'TTD' => 'Тринидад-тобагошки долар',
+ 'TWD' => 'Нови тајвански долар',
+ 'TZS' => 'Танзанијски шилинг',
+ 'UAH' => 'Украјинска гривна',
+ 'UAK' => 'Украјински карбованети',
+ 'UGS' => 'Угандски шилинг (1966–1987)',
+ 'UGX' => 'Угандски шилинг',
+ 'USD' => 'Амерички долар',
+ 'USN' => 'САД долар (следећи дан)',
+ 'USS' => 'САД долар (исти дан)',
+ 'UYI' => 'Уругвајски пезо ен унидадес индексадас',
+ 'UYP' => 'Уругвајски пезо (1975–1993)',
+ 'UYU' => 'Уругвајски пезос',
+ 'UZS' => 'Узбекистански сом',
+ 'VEB' => 'Венецуелански боливар (1871–2008)',
+ 'VEF' => 'Венецуелански боливар',
+ 'VND' => 'Вијетнамски донг',
+ 'VNN' => 'Вијетнамски донг (1978–1985)',
+ 'VUV' => 'Вануатски вату',
+ 'WST' => 'Самоанска тала',
+ 'XAF' => 'CFA франак BEAC',
+ 'XAG' => 'Сребро',
+ 'XAU' => 'Злато',
+ 'XBA' => 'Европска композитна јединица',
+ 'XBB' => 'Европска новчана јединица',
+ 'XBC' => 'Европска јединица рачуна (XBC)',
+ 'XBD' => 'Европска јединица рачуна (XBD)',
+ 'XCD' => 'Источнокарипски долар',
+ 'XDR' => 'Посебна цртаћа права',
+ 'XEU' => 'Европска валутна јединица',
+ 'XFO' => 'Француски златни франак',
+ 'XFU' => 'Француски UIC-франак',
+ 'XOF' => 'ЦФА франак БЦЕАО',
+ 'XPD' => 'Паладијум',
+ 'XPF' => 'CFP франак',
+ 'XPT' => 'Платина',
+ 'XRE' => 'RINET фонд',
+ 'XTS' => 'Код тестиране валуте',
+ 'XXX' => 'Непозната или неважећа валута',
+ 'YDD' => 'Јеменски динар',
+ 'YER' => 'Јеменски риjал',
+ 'YUD' => 'Југословенски тврди динар',
+ 'YUM' => 'Југословенски нови динар',
+ 'YUN' => 'Југословенски конвертибилни динар',
+ 'YUR' => 'Југословенски реформирани динар',
+ 'ZAL' => 'Јужно-афрички ранд (финансијски)',
+ 'ZAR' => 'Јужно-афрички ранд',
+ 'ZMK' => 'Замбијска квача (1968–2012)',
+ 'ZMW' => 'Замбијска квача',
+ 'ZRN' => 'Заирски нови заир',
+ 'ZRZ' => 'Заирски заир',
+ 'ZWD' => 'Зимбабвеански долар (1980–2008)',
+ 'ZWL' => 'Зимбабвеански долар (2009)',
+ 'ZWR' => 'Зимбабвеански долар (2008)',
+);
+
+$currencySymbols = array(
+ 'AED' => 'AED',
+ 'AFN' => 'AFN',
+ 'ALL' => 'ALL',
+ 'AMD' => 'AMD',
+ 'ANG' => 'ANG',
+ 'AOA' => 'AOA',
+ 'ARS' => 'ARS',
+ 'AUD' => 'AUD',
+ 'AWG' => 'AWG',
+ 'AZN' => 'AZN',
+ 'BAM' => 'КМ',
+ 'BBD' => 'BBD',
+ 'BDT' => 'BDT',
+ 'BGN' => '[BGN]',
+ 'BHD' => 'BHD',
+ 'BIF' => 'BIF',
+ 'BMD' => 'BMD',
+ 'BND' => 'BND',
+ 'BOB' => 'BOB',
+ 'BRL' => 'R$',
+ 'BSD' => 'BSD',
+ 'BTN' => 'BTN',
+ 'BWP' => 'BWP',
+ 'BYR' => '[BYR]',
+ 'BZD' => 'BZD',
+ 'CAD' => 'CA$',
+ 'CDF' => 'CDF',
+ 'CHF' => 'CHF',
+ 'CLP' => 'CLP',
+ 'CNY' => 'CN¥',
+ 'COP' => 'COP',
+ 'CRC' => 'CRC',
+ 'CUC' => 'CUC',
+ 'CUP' => 'CUP',
+ 'CVE' => 'CVE',
+ 'CZK' => 'CZK',
+ 'DJF' => 'DJF',
+ 'DKK' => 'DKK',
+ 'DOP' => 'DOP',
+ 'DZD' => 'DZD',
+ 'EGP' => 'EGP',
+ 'ERN' => 'ERN',
+ 'ETB' => 'ETB',
+ 'EUR' => '€',
+ 'FJD' => 'FJD',
+ 'FKP' => 'FKP',
+ 'GBP' => '£',
+ 'GEL' => 'GEL',
+ 'GHS' => 'GHS',
+ 'GIP' => 'GIP',
+ 'GMD' => 'GMD',
+ 'GNF' => 'GNF',
+ 'GTQ' => 'GTQ',
+ 'GYD' => 'GYD',
+ 'HKD' => 'HK$',
+ 'HNL' => 'HNL',
+ 'HRK' => 'HRK',
+ 'HTG' => 'HTG',
+ 'HUF' => 'HUF',
+ 'IDR' => 'IDR',
+ 'ILS' => '₪',
+ 'INR' => '₹',
+ 'IQD' => 'IQD',
+ 'IRR' => 'IRR',
+ 'ISK' => 'ISK',
+ 'JMD' => 'JMD',
+ 'JOD' => 'JOD',
+ 'JPY' => '¥',
+ 'KES' => 'KES',
+ 'KGS' => 'KGS',
+ 'KHR' => 'KHR',
+ 'KMF' => 'KMF',
+ 'KPW' => 'KPW',
+ 'KRW' => 'KRW',
+ 'KWD' => 'KWD',
+ 'KYD' => 'KYD',
+ 'KZT' => 'KZT',
+ 'LAK' => 'LAK',
+ 'LBP' => 'LBP',
+ 'LKR' => 'LKR',
+ 'LRD' => 'LRD',
+ 'LTL' => 'LTL',
+ 'LVL' => 'LVL',
+ 'LYD' => 'LYD',
+ 'MAD' => 'MAD',
+ 'MDL' => 'MDL',
+ 'MGA' => 'MGA',
+ 'MKD' => 'MKD',
+ 'MMK' => 'MMK',
+ 'MNT' => 'MNT',
+ 'MOP' => 'MOP',
+ 'MRO' => 'MRO',
+ 'MUR' => 'MUR',
+ 'MVR' => 'MVR',
+ 'MWK' => 'MWK',
+ 'MXN' => 'MX$',
+ 'MYR' => 'MYR',
+ 'MZN' => 'MZN',
+ 'NAD' => 'NAD',
+ 'NGN' => 'NGN',
+ 'NIO' => 'NIO',
+ 'NOK' => 'NOK',
+ 'NPR' => 'NPR',
+ 'NZD' => 'NZD',
+ 'OMR' => 'OMR',
+ 'PAB' => 'PAB',
+ 'PEN' => 'PEN',
+ 'PGK' => 'PGK',
+ 'PHP' => 'PHP',
+ 'PKR' => 'PKR',
+ 'PLN' => 'PLN',
+ 'PYG' => 'PYG',
+ 'QAR' => 'QAR',
+ 'RON' => 'RON',
+ 'RSD' => 'RSD',
+ 'RUB' => 'RUB',
+ 'RWF' => 'RWF',
+ 'SAR' => 'SAR',
+ 'SBD' => 'SBD',
+ 'SCR' => 'SCR',
+ 'SDG' => 'SDG',
+ 'SEK' => 'SEK',
+ 'SGD' => 'SGD',
+ 'SHP' => 'SHP',
+ 'SLL' => 'SLL',
+ 'SOS' => 'SOS',
+ 'SRD' => 'SRD',
+ 'SSP' => 'SSP',
+ 'STD' => 'STD',
+ 'SYP' => 'SYP',
+ 'SZL' => 'SZL',
+ 'THB' => 'THB',
+ 'TJS' => 'TJS',
+ 'TMT' => 'TMT',
+ 'TND' => 'TND',
+ 'TOP' => 'TOP',
+ 'TRY' => 'TRY',
+ 'TTD' => 'TTD',
+ 'TWD' => 'NT$',
+ 'TZS' => 'TZS',
+ 'UAH' => 'UAH',
+ 'UGX' => 'UGX',
+ 'USD' => 'US$',
+ 'UYU' => 'UYU',
+ 'UZS' => 'UZS',
+ 'VEF' => 'VEF',
+ 'VND' => 'VND',
+ 'VUV' => 'VUV',
+ 'WST' => 'WST',
+ 'XAF' => 'FCFA',
+ 'XCD' => 'EC$',
+ 'XOF' => 'CFA',
+ 'XPF' => 'CFPF',
+ 'YER' => 'YER',
+ 'ZAR' => 'ZAR',
+ 'ZMW' => 'ZMW',
+);
+
+$countryNames = array(
+ 'AC' => 'Острво Асенсион',
+ 'AD' => 'Андора',
+ 'AE' => 'Уједињени Арапски Емирати',
+ 'AF' => 'Авганистан',
+ 'AG' => 'Антигва и Барбуда',
+ 'AI' => 'Ангвила',
+ 'AL' => 'Албанија',
+ 'AM' => 'Јерменија',
+ 'AN' => 'Холандски Антили',
+ 'AO' => 'Ангола',
+ 'AQ' => 'Антарктик',
+ 'AR' => 'Аргентина',
+ 'AS' => 'Америчка Самоа',
+ 'AT' => 'Аустрија',
+ 'AU' => 'Аустралија',
+ 'AW' => 'Аруба',
+ 'AX' => 'Оландска острва',
+ 'AZ' => 'Азербејџан',
+ 'BA' => 'Босна и Херцеговина',
+ 'BB' => 'Барбадос',
+ 'BD' => 'Бангладеш',
+ 'BE' => 'Белгија',
+ 'BF' => 'Буркина Фасо',
+ 'BG' => 'Бугарска',
+ 'BH' => 'Бахреин',
+ 'BI' => 'Бурунди',
+ 'BJ' => 'Бенин',
+ 'BL' => 'Свети Бартоломеј',
+ 'BM' => 'Бермуда',
+ 'BN' => 'Брунеј',
+ 'BO' => 'Боливија',
+ 'BQ' => 'Карипска Холандија',
+ 'BR' => 'Бразил',
+ 'BS' => 'Бахами',
+ 'BT' => 'Бутан',
+ 'BV' => 'Острво Буве',
+ 'BW' => 'Боцвана',
+ 'BY' => 'Белорусија',
+ 'BZ' => 'Белизе',
+ 'CA' => 'Канада',
+ 'CC' => 'Кокос (Келинг) Острва',
+ 'CD' => 'Конго - Киншаса',
+ 'CF' => 'Централноафричка Република',
+ 'CG' => 'Конго - Бразавил',
+ 'CH' => 'Швајцарска',
+ 'CI' => 'Обала Слоноваче',
+ 'CK' => 'Кукова Острва',
+ 'CL' => 'Чиле',
+ 'CM' => 'Камерун',
+ 'CN' => 'Кина',
+ 'CO' => 'Колумбија',
+ 'CP' => 'Острво Клипертон',
+ 'CR' => 'Костарика',
+ 'CU' => 'Куба',
+ 'CV' => 'Зеленортска Острва',
+ 'CW' => 'Курасао',
+ 'CX' => 'Божићно острво',
+ 'CY' => 'Кипар',
+ 'CZ' => 'Чешка',
+ 'DE' => 'Немачка',
+ 'DG' => 'Дијего Гарсија',
+ 'DJ' => 'Џибути',
+ 'DK' => 'Данска',
+ 'DM' => 'Доминика',
+ 'DO' => 'Доминиканска Република',
+ 'DZ' => 'Алжир',
+ 'EA' => 'Сеута и Мелиља',
+ 'EC' => 'Еквадор',
+ 'EE' => 'Естонија',
+ 'EG' => 'Египат',
+ 'EH' => 'Западна Сахара',
+ 'ER' => 'Еритреја',
+ 'ES' => 'Шпанија',
+ 'ET' => 'Етиопија',
+ 'EU' => 'Европска Унија',
+ 'FI' => 'Финска',
+ 'FJ' => 'Фиџи',
+ 'FK' => 'Фокландска острва',
+ 'FM' => 'Микронезија',
+ 'FO' => 'Фарска Острва',
+ 'FR' => 'Француска',
+ 'GA' => 'Габон',
+ 'GB' => 'УК',
+ 'GD' => 'Гренада',
+ 'GE' => 'Грузија',
+ 'GF' => 'Француска Гвајана',
+ 'GG' => 'Гурнси',
+ 'GH' => 'Гана',
+ 'GI' => 'Гибралтар',
+ 'GL' => 'Гренланд',
+ 'GM' => 'Гамбија',
+ 'GN' => 'Гвинеја',
+ 'GP' => 'Гваделупе',
+ 'GQ' => 'Екваторијална Гвинеја',
+ 'GR' => 'Грчка',
+ 'GS' => 'Јужна Џорџија и Јужна Сендвич Острва',
+ 'GT' => 'Гватемала',
+ 'GU' => 'Гуам',
+ 'GW' => 'Гвинеја-Бисао',
+ 'GY' => 'Гвајана',
+ 'HK' => 'Хонг Конг',
+ 'HM' => 'Острва Херд и Мекдоналд',
+ 'HN' => 'Хондурас',
+ 'HR' => 'Хрватска',
+ 'HT' => 'Хаити',
+ 'HU' => 'Мађарска',
+ 'IC' => 'Канарска острва',
+ 'ID' => 'Индонезија',
+ 'IE' => 'Ирска',
+ 'IL' => 'Израел',
+ 'IM' => 'Острво Ман',
+ 'IN' => 'Индија',
+ 'IO' => 'Британска територија у Индијском океану',
+ 'IQ' => 'Ирак',
+ 'IR' => 'Иран',
+ 'IS' => 'Исланд',
+ 'IT' => 'Италија',
+ 'JE' => 'Џерси',
+ 'JM' => 'Јамајка',
+ 'JO' => 'Јордан',
+ 'JP' => 'Јапан',
+ 'KE' => 'Кенија',
+ 'KG' => 'Киргистан',
+ 'KH' => 'Камбоџа',
+ 'KI' => 'Кирибати',
+ 'KM' => 'Коморска Острва',
+ 'KN' => 'Сент Китс и Невис',
+ 'KP' => 'Северна Кореја',
+ 'KR' => 'Јужна Кореја',
+ 'KW' => 'Кувајт',
+ 'KY' => 'Кајманска Острва',
+ 'KZ' => 'Казахстан',
+ 'LA' => 'Лаос',
+ 'LB' => 'Либан',
+ 'LC' => 'Света Луција',
+ 'LI' => 'Лихтенштајн',
+ 'LK' => 'Шри Ланка',
+ 'LR' => 'Либерија',
+ 'LS' => 'Лесото',
+ 'LT' => 'Литванија',
+ 'LU' => 'Луксембург',
+ 'LV' => 'Летонија',
+ 'LY' => 'Либија',
+ 'MA' => 'Мароко',
+ 'MC' => 'Монако',
+ 'MD' => 'Молдавија',
+ 'ME' => 'Црна Гора',
+ 'MF' => 'Сент Мартин',
+ 'MG' => 'Мадагаскар',
+ 'MH' => 'Маршалска Острва',
+ 'MK' => 'Македонија',
+ 'ML' => 'Мали',
+ 'MM' => 'Мијанмар (Бурма)',
+ 'MN' => 'Монголија',
+ 'MO' => 'Макао',
+ 'MP' => 'Северна Маријанска Острва',
+ 'MQ' => 'Мартиник',
+ 'MR' => 'Мауританија',
+ 'MS' => 'Монсерат',
+ 'MT' => 'Малта',
+ 'MU' => 'Маурицијус',
+ 'MV' => 'Малдиви',
+ 'MW' => 'Малави',
+ 'MX' => 'Мексико',
+ 'MY' => 'Малезија',
+ 'MZ' => 'Мозамбик',
+ 'NA' => 'Намибија',
+ 'NC' => 'Нова Каледонија',
+ 'NE' => 'Нигер',
+ 'NF' => 'Норфолк Острво',
+ 'NG' => 'Нигерија',
+ 'NI' => 'Никарагва',
+ 'NL' => 'Холандија',
+ 'NO' => 'Норвешка',
+ 'NP' => 'Непал',
+ 'NR' => 'Науру',
+ 'NU' => 'Ниуе',
+ 'NZ' => 'Нови Зеланд',
+ 'OM' => 'Оман',
+ 'PA' => 'Панама',
+ 'PE' => 'Перу',
+ 'PF' => 'Француска Полинезија',
+ 'PG' => 'Папуа Нова Гвинеја',
+ 'PH' => 'Филипини',
+ 'PK' => 'Пакистан',
+ 'PL' => 'Пољска',
+ 'PM' => 'Сен Пјер и Микелон',
+ 'PN' => 'Питкерн',
+ 'PR' => 'Порторико',
+ 'PS' => 'Палестина',
+ 'PT' => 'Португал',
+ 'PW' => 'Палау',
+ 'PY' => 'Парагвај',
+ 'QA' => 'Катар',
+ 'QO' => 'Океанија (удаљена острва)',
+ 'RE' => 'Реинион',
+ 'RO' => 'Румунија',
+ 'RS' => 'Србија',
+ 'RU' => 'Русија',
+ 'RW' => 'Руанда',
+ 'SA' => 'Саудијска Арабија',
+ 'SB' => 'Соломонска Острва',
+ 'SC' => 'Сејшели',
+ 'SD' => 'Судан',
+ 'SE' => 'Шведска',
+ 'SG' => 'Сингапур',
+ 'SH' => 'Света Јелена',
+ 'SI' => 'Словенија',
+ 'SJ' => 'Свалбард и Јан Мајен',
+ 'SK' => 'Словачка',
+ 'SL' => 'Сијера Леоне',
+ 'SM' => 'Сан Марино',
+ 'SN' => 'Сенегал',
+ 'SO' => 'Сомалија',
+ 'SR' => 'Суринам',
+ 'SS' => 'Јужни Судан',
+ 'ST' => 'Сао Томе и Принципе',
+ 'SV' => 'Салвадор',
+ 'SX' => 'Свети Мартин',
+ 'SY' => 'Сирија',
+ 'SZ' => 'Свазиленд',
+ 'TA' => 'Тристан да Куња',
+ 'TC' => 'Острва Туркс и Каикос',
+ 'TD' => 'Чад',
+ 'TF' => 'Француске Јужне Територије',
+ 'TG' => 'Того',
+ 'TH' => 'Тајланд',
+ 'TJ' => 'Таџикистан',
+ 'TK' => 'Токелау',
+ 'TL' => 'Источни Тимор',
+ 'TM' => 'Туркменистан',
+ 'TN' => 'Тунис',
+ 'TO' => 'Тонга',
+ 'TR' => 'Турска',
+ 'TT' => 'Тринидад и Тобаго',
+ 'TV' => 'Тувалу',
+ 'TW' => 'Тајван',
+ 'TZ' => 'Танзанија',
+ 'UA' => 'Украјина',
+ 'UG' => 'Уганда',
+ 'UM' => 'Удаљена острва САД',
+ 'US' => 'САД',
+ 'UY' => 'Уругвај',
+ 'UZ' => 'Узбекистан',
+ 'VA' => 'Ватикан',
+ 'VC' => 'Сент Винсент и Гренадини',
+ 'VE' => 'Венецуела',
+ 'VG' => 'Британска Девичанска Острва',
+ 'VI' => 'Америчка Девичанска Острва',
+ 'VN' => 'Вијетнам',
+ 'VU' => 'Вануату',
+ 'WF' => 'Валис и Футуна',
+ 'WS' => 'Самоа',
+ 'XK' => 'Косово',
+ 'YE' => 'Јемен',
+ 'YT' => 'Мајот',
+ 'ZA' => 'Јужноафричка Република',
+ 'ZM' => 'Замбија',
+ 'ZW' => 'Зимбабве',
+);
+
+$timeUnits = array(
+ 'day-few' => '{0} дана',
+ 'day-future-few' => 'за {0} дана',
+ 'day-future-one' => 'за {0} дан',
+ 'day-future-other' => 'за {0} дана',
+ 'day-narrow-future-few' => 'за {0} д.',
+ 'day-narrow-future-one' => 'за {0} д.',
+ 'day-narrow-future-other' => 'за {0} д.',
+ 'day-narrow-past-few' => 'пре {0} д.',
+ 'day-narrow-past-one' => 'пре {0} д.',
+ 'day-narrow-past-other' => 'пре {0} д.',
+ 'day-one' => '{0} дан',
+ 'day-other' => '{0} дана',
+ 'day-past-few' => 'пре {0} дана',
+ 'day-past-one' => 'пре {0} дана',
+ 'day-past-other' => 'пре {0} дана',
+ 'day-short-future-few' => 'за {0} д.',
+ 'day-short-future-one' => 'за {0} д.',
+ 'day-short-future-other' => 'за {0} д.',
+ 'day-short-past-few' => 'пре {0} д.',
+ 'day-short-past-one' => 'пре {0} д.',
+ 'day-short-past-other' => 'пре {0} д.',
+ 'hour-few' => '{0} сата',
+ 'hour-future-few' => 'за {0} сата',
+ 'hour-future-one' => 'за {0} сат',
+ 'hour-future-other' => 'за {0} сати',
+ 'hour-narrow-future-few' => 'за {0} ч.',
+ 'hour-narrow-future-one' => 'за {0} ч.',
+ 'hour-narrow-future-other' => 'за {0} ч.',
+ 'hour-narrow-past-few' => 'пре {0} ч.',
+ 'hour-narrow-past-one' => 'пре {0} ч.',
+ 'hour-narrow-past-other' => 'пре {0} ч.',
+ 'hour-one' => '{0} сат',
+ 'hour-other' => '{0} сати',
+ 'hour-past-few' => 'пре {0} сата',
+ 'hour-past-one' => 'пре {0} сата',
+ 'hour-past-other' => 'пре {0} сати',
+ 'hour-short-future-few' => 'за {0} ч.',
+ 'hour-short-future-one' => 'за {0} ч.',
+ 'hour-short-future-other' => 'за {0} ч.',
+ 'hour-short-past-few' => 'пре {0} ч.',
+ 'hour-short-past-one' => 'пре {0} ч.',
+ 'hour-short-past-other' => 'пре {0} ч.',
+ 'microsecond-few' => '{0} микросекунде',
+ 'microsecond-one' => '{0} микросекунда',
+ 'microsecond-other' => '{0} микросекунди',
+ 'millisecond-few' => '{0} милисекунде',
+ 'millisecond-one' => '{0} милисекунда',
+ 'millisecond-other' => '{0} милисекунди',
+ 'minute-few' => '{0} минута',
+ 'minute-future-few' => 'за {0} минута',
+ 'minute-future-one' => 'за {0} минут',
+ 'minute-future-other' => 'за {0} минута',
+ 'minute-narrow-future-few' => 'за {0} мин.',
+ 'minute-narrow-future-one' => 'за {0} мин.',
+ 'minute-narrow-future-other' => 'за {0} мин.',
+ 'minute-narrow-past-few' => 'пре {0} мин.',
+ 'minute-narrow-past-one' => 'пре {0} мин.',
+ 'minute-narrow-past-other' => 'пре {0} мин.',
+ 'minute-one' => '{0} минут',
+ 'minute-other' => '{0} минута',
+ 'minute-past-few' => 'пре {0} минута',
+ 'minute-past-one' => 'пре {0} минута',
+ 'minute-past-other' => 'пре {0} минута',
+ 'minute-short-future-few' => 'за {0} мин.',
+ 'minute-short-future-one' => 'за {0} мин.',
+ 'minute-short-future-other' => 'за {0} мин.',
+ 'minute-short-past-few' => 'пре {0} мин.',
+ 'minute-short-past-one' => 'пре {0} мин.',
+ 'minute-short-past-other' => 'пре {0} мин.',
+ 'month-few' => '{0} месеца',
+ 'month-future-few' => 'за {0} месеца',
+ 'month-future-one' => 'за {0} месец',
+ 'month-future-other' => 'за {0} месеци',
+ 'month-narrow-future-few' => 'за {0} м.',
+ 'month-narrow-future-one' => 'за {0} м.',
+ 'month-narrow-future-other' => 'за {0} м.',
+ 'month-narrow-past-few' => 'пре {0} м.',
+ 'month-narrow-past-one' => 'пре {0} м.',
+ 'month-narrow-past-other' => 'пре {0} м.',
+ 'month-one' => '{0} месец',
+ 'month-other' => '{0} месеци',
+ 'month-past-few' => 'пре {0} месеца',
+ 'month-past-one' => 'пре {0} месеца',
+ 'month-past-other' => 'пре {0} месеци',
+ 'month-short-future-few' => 'за {0} мес.',
+ 'month-short-future-one' => 'за {0} мес.',
+ 'month-short-future-other' => 'за {0} мес.',
+ 'month-short-past-few' => 'пре {0} мес.',
+ 'month-short-past-one' => 'пре {0} мес.',
+ 'month-short-past-other' => 'пре {0} мес.',
+ 'nanosecond-few' => '{0} наносекунде',
+ 'nanosecond-one' => '{0} наносекунда',
+ 'nanosecond-other' => '{0} наносекунди',
+ 'quarter-future-few' => 'за {0} квартала',
+ 'quarter-future-one' => 'за {0} квартал',
+ 'quarter-future-other' => 'за {0} квартала',
+ 'quarter-narrow-future-few' => 'за {0} квартала',
+ 'quarter-narrow-future-one' => 'за {0} квартала',
+ 'quarter-narrow-future-other' => 'за {0} квартала',
+ 'quarter-narrow-past-few' => 'пре {0} квартала',
+ 'quarter-narrow-past-one' => 'пре {0} квартала',
+ 'quarter-narrow-past-other' => 'пре {0} квартала',
+ 'quarter-past-few' => 'пре {0} квартала',
+ 'quarter-past-one' => 'пре {0} квартала',
+ 'quarter-past-other' => 'пре {0} квартала',
+ 'quarter-short-future-few' => 'за {0} квартала',
+ 'quarter-short-future-one' => 'за {0} квартала',
+ 'quarter-short-future-other' => 'за {0} квартала',
+ 'quarter-short-past-few' => 'пре {0} квартала',
+ 'quarter-short-past-one' => 'пре {0} квартала',
+ 'quarter-short-past-other' => 'пре {0} квартала',
+ 'second-few' => '{0} секунде',
+ 'second-future-few' => 'за {0} секунде',
+ 'second-future-one' => 'за {0} секунду',
+ 'second-future-other' => 'за {0} секунди',
+ 'second-narrow-future-few' => 'за {0} с.',
+ 'second-narrow-future-one' => 'за {0} с.',
+ 'second-narrow-future-other' => 'за {0} с.',
+ 'second-narrow-past-few' => 'пре {0} с.',
+ 'second-narrow-past-one' => 'пре {0} с.',
+ 'second-narrow-past-other' => 'пре {0} с.',
+ 'second-one' => '{0} секунда',
+ 'second-other' => '{0} секунди',
+ 'second-past-few' => 'пре {0} секунде',
+ 'second-past-one' => 'пре {0} секунде',
+ 'second-past-other' => 'пре {0} секунди',
+ 'second-short-future-few' => 'за {0} сек.',
+ 'second-short-future-one' => 'за {0} сек.',
+ 'second-short-future-other' => 'за {0} сек.',
+ 'second-short-past-few' => 'пре {0} сек.',
+ 'second-short-past-one' => 'пре {0} сек.',
+ 'second-short-past-other' => 'пре {0} сек.',
+ 'week-few' => '{0} недеље',
+ 'week-future-few' => 'за {0} недеље',
+ 'week-future-one' => 'за {0} недељу',
+ 'week-future-other' => 'за {0} недеља',
+ 'week-narrow-future-few' => 'за {0} н.',
+ 'week-narrow-future-one' => 'за {0} н.',
+ 'week-narrow-future-other' => 'за {0} н.',
+ 'week-narrow-past-few' => 'пре {0} н.',
+ 'week-narrow-past-one' => 'пре {0} н.',
+ 'week-narrow-past-other' => 'пре {0} н.',
+ 'week-one' => '{0} недеља',
+ 'week-other' => '{0} недеља',
+ 'week-past-few' => 'пре {0} недеље',
+ 'week-past-one' => 'пре {0} недеље',
+ 'week-past-other' => 'пре {0} недеља',
+ 'week-short-future-few' => 'за {0} нед.',
+ 'week-short-future-one' => 'за {0} нед.',
+ 'week-short-future-other' => 'за {0} нед.',
+ 'week-short-past-few' => 'пре {0} нед.',
+ 'week-short-past-one' => 'пре {0} нед.',
+ 'week-short-past-other' => 'пре {0} нед.',
+ 'year-few' => '{0} године',
+ 'year-future-few' => 'за {0} године',
+ 'year-future-one' => 'за {0} годину',
+ 'year-future-other' => 'за {0} година',
+ 'year-narrow-future-few' => 'за {0} г.',
+ 'year-narrow-future-one' => 'за {0} г.',
+ 'year-narrow-future-other' => 'за {0} г.',
+ 'year-narrow-past-few' => 'пре {0} г.',
+ 'year-narrow-past-one' => 'пре {0} г.',
+ 'year-narrow-past-other' => 'пре {0} г.',
+ 'year-one' => '{0} година',
+ 'year-other' => '{0} година',
+ 'year-past-few' => 'пре {0} године',
+ 'year-past-one' => 'пре {0} године',
+ 'year-past-other' => 'пре {0} година',
+ 'year-short-future-few' => 'за {0} год.',
+ 'year-short-future-one' => 'за {0} год.',
+ 'year-short-future-other' => 'за {0} год.',
+ 'year-short-past-few' => 'пре {0} год.',
+ 'year-short-past-one' => 'пре {0} год.',
+ 'year-short-past-other' => 'пре {0} год.',
+);
diff --git a/MLEB/cldr/CldrNames/CldrNamesSs.php b/MLEB/cldr/CldrNames/CldrNamesSs.php
new file mode 100644
index 00000000..57e2f5c4
--- /dev/null
+++ b/MLEB/cldr/CldrNames/CldrNamesSs.php
@@ -0,0 +1,5 @@
+<?php
+
+$languageNames = array(
+ 'ss' => 'Siswati',
+);
diff --git a/MLEB/cldr/CldrNames/CldrNamesSt.php b/MLEB/cldr/CldrNames/CldrNamesSt.php
new file mode 100644
index 00000000..d7860e01
--- /dev/null
+++ b/MLEB/cldr/CldrNames/CldrNamesSt.php
@@ -0,0 +1,97 @@
+<?php
+
+$languageNames = array(
+ 'af' => 'Seburu',
+ 'am' => 'Se-amhari',
+ 'ar' => 'Se-arab',
+ 'az' => 'Se-azerbaijani',
+ 'be' => 'Se-belarusia',
+ 'bg' => 'Se-bulgaria',
+ 'bh' => 'Se-bihari',
+ 'bn' => 'Se-bengali',
+ 'br' => 'Breton',
+ 'bs' => 'Se-bosnia',
+ 'ca' => 'Se-catalia',
+ 'cs' => 'Se-czech',
+ 'cy' => 'Se-welsh',
+ 'da' => 'Se-dutch',
+ 'de' => 'Se-jeremane',
+ 'el' => 'Se-greek',
+ 'en' => 'Senyesemane',
+ 'eo' => 'Se-esperanto',
+ 'es' => 'Sespain',
+ 'et' => 'Se-estonia',
+ 'eu' => 'Se-basque',
+ 'fa' => 'Se-persia',
+ 'fi' => 'Se-finnish',
+ 'fil' => 'Se-tagalog',
+ 'fo' => 'Se-foroese',
+ 'fr' => 'Se-french',
+ 'fy' => 'Se-frisia',
+ 'ga' => 'Se-irish',
+ 'gd' => 'Se-scots gaelic',
+ 'gl' => 'Se-galicia',
+ 'gn' => 'Guarani',
+ 'gu' => 'Se-gujarati',
+ 'he' => 'Se-hebrew',
+ 'hi' => 'Se-hindi',
+ 'hr' => 'Se-croatia',
+ 'hu' => 'Se-hungaria',
+ 'ia' => 'Se-interlingua',
+ 'id' => 'Se-indonesia',
+ 'is' => 'Se-iceland',
+ 'it' => 'Se-tariana',
+ 'ja' => 'Se-japane',
+ 'jv' => 'Se-javane',
+ 'ka' => 'Se-geogia',
+ 'kn' => 'Se-kannada',
+ 'ko' => 'Se-korea',
+ 'ku' => 'Kurdish',
+ 'ky' => 'Kyrgyz',
+ 'la' => 'Se-latino',
+ 'lt' => 'Se-Lithuano',
+ 'mk' => 'Se-masedonia',
+ 'ml' => 'Se-malayalam',
+ 'mr' => 'Se-marathi',
+ 'ms' => 'Se-malay',
+ 'mt' => 'Se-maltese',
+ 'ne' => 'Se-nepali',
+ 'nl' => 'Dutch',
+ 'nn' => 'Se-norway (Nynorsk)',
+ 'no' => 'Se-norway',
+ 'oc' => 'Se-occitan',
+ 'or' => 'Oriya',
+ 'pa' => 'Se-punjabi',
+ 'pl' => 'Se-polish',
+ 'ps' => 'Pashto',
+ 'pt' => 'Se-portugal',
+ 'pt-br' => 'Seputukesi (sa Brazil)',
+ 'pt-pt' => 'Se-portugal (Portugal)',
+ 'ro' => 'Se-romania',
+ 'ru' => 'Se-rushia',
+ 'sh' => 'Serbo-Croatian',
+ 'si' => 'Se-sinhali',
+ 'sk' => 'Se-slovak',
+ 'sl' => 'Se-slovania',
+ 'sq' => 'Se-albanian',
+ 'sr' => 'Se-serbian',
+ 'st' => 'Sesotho',
+ 'su' => 'Se-sundanese',
+ 'sv' => 'Se-sweden',
+ 'sw' => 'Se-swahili',
+ 'ta' => 'Se-tamil',
+ 'te' => 'Se-telegu',
+ 'th' => 'Se-thai',
+ 'ti' => 'Se-tigrinya',
+ 'tk' => 'Turkmen',
+ 'tlh' => 'Se-klingon',
+ 'tr' => 'Se-theki',
+ 'tw' => 'Twi',
+ 'uk' => 'Se-ukrania',
+ 'ur' => 'Se-urdu',
+ 'uz' => 'Se-uzbek',
+ 'vi' => 'Se-vietnam',
+ 'xh' => 'se Xhosa',
+ 'yi' => 'Yiddish',
+ 'zu' => 'se Zulu',
+);
diff --git a/MLEB/cldr/CldrNames/CldrNamesSv.php b/MLEB/cldr/CldrNames/CldrNamesSv.php
new file mode 100644
index 00000000..bc96e45c
--- /dev/null
+++ b/MLEB/cldr/CldrNames/CldrNamesSv.php
@@ -0,0 +1,1442 @@
+<?php
+
+$languageNames = array(
+ 'aa' => 'afar',
+ 'ab' => 'abchaziska',
+ 'ace' => 'acehnesiska',
+ 'ach' => 'acholi',
+ 'ada' => 'adangme',
+ 'ady' => 'adygeiska',
+ 'ae' => 'avestiska',
+ 'aeb' => 'tunisisk arabiska',
+ 'af' => 'afrikaans',
+ 'afh' => 'afrihili',
+ 'agq' => 'aghem',
+ 'ain' => 'ainu',
+ 'ak' => 'akan',
+ 'akk' => 'akkadiska',
+ 'ale' => 'aleutiska',
+ 'aln' => 'gegiska',
+ 'alt' => 'sydaltaiska',
+ 'am' => 'amhariska',
+ 'an' => 'aragonesiska',
+ 'ang' => 'fornengelska',
+ 'anp' => 'angika',
+ 'ar' => 'arabiska',
+ 'ar-001' => 'modern standardarabiska',
+ 'arc' => 'arameiska',
+ 'arn' => 'araukanska',
+ 'aro' => 'araoniska',
+ 'arp' => 'arapaho',
+ 'arq' => 'algerisk arabiska',
+ 'arw' => 'arawakiska',
+ 'ary' => 'marockansk arabiska',
+ 'arz' => 'egyptisk arabiska',
+ 'as' => 'assamesiska',
+ 'asa' => 'asu',
+ 'ase' => 'amerikanskt teckenspråk',
+ 'ast' => 'asturiska',
+ 'av' => 'avariska',
+ 'avk' => 'kotava',
+ 'awa' => 'awadhi',
+ 'ay' => 'aymara',
+ 'az' => 'azerbajdzjanska',
+ 'azb' => 'sydazerbadjanska',
+ 'ba' => 'basjkiriska',
+ 'bal' => 'baluchiska',
+ 'ban' => 'balinesiska',
+ 'bar' => 'bayerska',
+ 'bas' => 'basa',
+ 'bax' => 'bamunska',
+ 'bbj' => 'ghomala',
+ 'be' => 'vitryska',
+ 'bej' => 'beja',
+ 'bem' => 'bemba',
+ 'bew' => 'betawiska',
+ 'bez' => 'bena',
+ 'bfd' => 'bafut',
+ 'bfq' => 'bagada',
+ 'bg' => 'bulgariska',
+ 'bho' => 'bhojpuri',
+ 'bi' => 'bislama',
+ 'bik' => 'bikol',
+ 'bin' => 'bini',
+ 'bjn' => 'banjariska',
+ 'bkm' => 'bamekon',
+ 'bla' => 'siksika',
+ 'bm' => 'bambara',
+ 'bn' => 'bengali',
+ 'bo' => 'tibetanska',
+ 'bpy' => 'bishnupriya',
+ 'bqi' => 'bakhtiari',
+ 'br' => 'bretonska',
+ 'bra' => 'braj',
+ 'brh' => 'brahuiska',
+ 'brx' => 'bodo',
+ 'bs' => 'bosniska',
+ 'bss' => 'bakossi',
+ 'bua' => 'burjätiska',
+ 'bug' => 'buginesiska',
+ 'bum' => 'boulou',
+ 'byn' => 'blin',
+ 'byv' => 'bagangte',
+ 'ca' => 'katalanska',
+ 'cad' => 'caddo',
+ 'car' => 'karibiska',
+ 'cay' => 'cayuga',
+ 'cch' => 'atsam',
+ 'ce' => 'tjetjenska',
+ 'ceb' => 'cebuano',
+ 'cgg' => 'chiga',
+ 'ch' => 'chamorro',
+ 'chb' => 'chibcha',
+ 'chg' => 'chagatai',
+ 'chk' => 'chuukesiska',
+ 'chm' => 'mariska',
+ 'chn' => 'chinook',
+ 'cho' => 'choctaw',
+ 'chp' => 'chipewyan',
+ 'chr' => 'cherokesiska',
+ 'chy' => 'cheyenne',
+ 'ckb' => 'soranisk kurdiska',
+ 'co' => 'korsikanska',
+ 'cop' => 'koptiska',
+ 'cr' => 'cree',
+ 'crh' => 'krimtatariska',
+ 'cs' => 'tjeckiska',
+ 'csb' => 'kasjubiska',
+ 'cu' => 'kyrkslaviska',
+ 'cv' => 'tjuvasjiska',
+ 'cy' => 'walesiska',
+ 'da' => 'danska',
+ 'dak' => 'dakota',
+ 'dar' => 'darginska',
+ 'dav' => 'taita',
+ 'de' => 'tyska',
+ 'de-at' => 'österrikisk tyska',
+ 'de-ch' => 'schweizisk högtyska',
+ 'del' => 'delaware',
+ 'den' => 'slavej',
+ 'dgr' => 'dogrib',
+ 'din' => 'dinka',
+ 'dje' => 'zarma',
+ 'doi' => 'dogri',
+ 'dsb' => 'lågsorbiska',
+ 'dua' => 'duala',
+ 'dum' => 'medelnederländska',
+ 'dv' => 'divehi',
+ 'dyo' => 'jola-fonyi',
+ 'dyu' => 'dyula',
+ 'dz' => 'bhutanesiska',
+ 'dzg' => 'dazaga',
+ 'ebu' => 'embu',
+ 'ee' => 'ewe',
+ 'efi' => 'efik',
+ 'egl' => 'emiliska',
+ 'egy' => 'fornegyptiska',
+ 'eka' => 'ekajuk',
+ 'el' => 'grekiska',
+ 'elx' => 'elamitiska',
+ 'en' => 'engelska',
+ 'en-au' => 'australisk engelska',
+ 'en-ca' => 'kanadensisk engelska',
+ 'en-gb' => 'brittisk engelska',
+ 'en-us' => 'amerikansk engelska',
+ 'enm' => 'medelengelska',
+ 'eo' => 'esperanto',
+ 'es' => 'spanska',
+ 'es-419' => 'latinamerikansk spanska',
+ 'es-es' => 'europeisk spanska',
+ 'es-mx' => 'mexikansk spanska',
+ 'et' => 'estniska',
+ 'eu' => 'baskiska',
+ 'ewo' => 'ewondo',
+ 'fa' => 'persiska',
+ 'fan' => 'fang',
+ 'fat' => 'fanti',
+ 'ff' => 'fulani',
+ 'fi' => 'finska',
+ 'fil' => 'filippinska',
+ 'fit' => 'meänkieli',
+ 'fj' => 'fijianska',
+ 'fo' => 'färöiska',
+ 'fon' => 'fonspråket',
+ 'fr' => 'franska',
+ 'fr-ca' => 'kanadensisk franska',
+ 'fr-ch' => 'schweizisk franska',
+ 'frc' => 'cajun-franska',
+ 'frm' => 'medelfranska',
+ 'fro' => 'fornfranska',
+ 'frp' => 'frankoprovensalska',
+ 'frr' => 'nordfrisiska',
+ 'frs' => 'östfrisiska',
+ 'fur' => 'friulianska',
+ 'fy' => 'västfrisiska',
+ 'ga' => 'iriska',
+ 'gaa' => 'gã',
+ 'gag' => 'gagauziska',
+ 'gan' => 'gan',
+ 'gay' => 'gayo',
+ 'gba' => 'gbaya',
+ 'gbz' => 'zoroastrisk dari',
+ 'gd' => 'höglandsskotska',
+ 'gez' => 'etiopiska',
+ 'gil' => 'gilbertiska',
+ 'gl' => 'galiciska',
+ 'glk' => 'gilaki',
+ 'gmh' => 'medelhögtyska',
+ 'gn' => 'guaraní',
+ 'goh' => 'fornhögtyska',
+ 'gom' => 'Goa-konkani',
+ 'gon' => 'gondi',
+ 'gor' => 'gorontalo',
+ 'got' => 'gotiska',
+ 'grb' => 'grebo',
+ 'grc' => 'forngrekiska',
+ 'gsw' => 'schweizertyska',
+ 'gu' => 'gujarati',
+ 'guz' => 'gusii',
+ 'gv' => 'manx',
+ 'gwi' => 'gwichin',
+ 'ha' => 'hausa',
+ 'hai' => 'haida',
+ 'hak' => 'hakka',
+ 'haw' => 'hawaiiska',
+ 'he' => 'hebreiska',
+ 'hi' => 'hindi',
+ 'hif' => 'Fiji-hindi',
+ 'hil' => 'hiligaynon',
+ 'hit' => 'hettitiska',
+ 'hmn' => 'hmongspråk',
+ 'ho' => 'hirimotu',
+ 'hr' => 'kroatiska',
+ 'hsb' => 'högsorbiska',
+ 'hsn' => 'xiang',
+ 'ht' => 'haitiska',
+ 'hu' => 'ungerska',
+ 'hup' => 'hupa',
+ 'hy' => 'armeniska',
+ 'hz' => 'herero',
+ 'ia' => 'interlingua',
+ 'iba' => 'ibanska',
+ 'ibb' => 'ibibio',
+ 'id' => 'indonesiska',
+ 'ie' => 'interlingue',
+ 'ig' => 'igbo',
+ 'ii' => 'szezuan i',
+ 'ik' => 'inupiak',
+ 'ilo' => 'iloko',
+ 'inh' => 'ingusjiska',
+ 'io' => 'ido',
+ 'is' => 'isländska',
+ 'it' => 'italienska',
+ 'iu' => 'inuktitut',
+ 'izh' => 'ingriska',
+ 'ja' => 'japanska',
+ 'jam' => 'jamaikansk engelsk kreol',
+ 'jbo' => 'lojban',
+ 'jgo' => 'ngomba',
+ 'jmc' => 'kimashami',
+ 'jpr' => 'judisk persiska',
+ 'jrb' => 'judisk arabiska',
+ 'jut' => 'jylländska',
+ 'jv' => 'javanesiska',
+ 'ka' => 'georgiska',
+ 'kaa' => 'karakalpakiska',
+ 'kab' => 'kabyliska',
+ 'kac' => 'kachin',
+ 'kaj' => 'jju',
+ 'kam' => 'kamba',
+ 'kaw' => 'kawi',
+ 'kbd' => 'kabardinska',
+ 'kbl' => 'kanembu',
+ 'kcg' => 'tyap',
+ 'kde' => 'makonde',
+ 'kea' => 'kapverdiska',
+ 'kfo' => 'koro',
+ 'kg' => 'kikongo',
+ 'kha' => 'khasi',
+ 'kho' => 'khotanesiska',
+ 'khq' => 'Timbuktu-songhoy',
+ 'khw' => 'khowar',
+ 'ki' => 'kikuyu',
+ 'kj' => 'kuanyama',
+ 'kk' => 'kazakiska',
+ 'kkj' => 'mkako',
+ 'kl' => 'grönländska',
+ 'kln' => 'kalenjin',
+ 'km' => 'kambodjanska',
+ 'kmb' => 'kimbundu',
+ 'kn' => 'kannada',
+ 'ko' => 'koreanska',
+ 'koi' => 'komi-permjakiska',
+ 'kok' => 'konkani',
+ 'kos' => 'kosreanska',
+ 'kpe' => 'kpelle',
+ 'kr' => 'kanuri',
+ 'krc' => 'karachay-balkar',
+ 'krl' => 'karelska',
+ 'kru' => 'kurukh',
+ 'ks' => 'kashmiriska',
+ 'ksb' => 'kisambaa',
+ 'ksf' => 'bafia',
+ 'ksh' => 'kölniska',
+ 'ku' => 'kurdiska',
+ 'kum' => 'kumykiska',
+ 'kut' => 'kutenaj',
+ 'kv' => 'kome',
+ 'kw' => 'korniska',
+ 'ky' => 'kirgisiska',
+ 'la' => 'latin',
+ 'lad' => 'ladino',
+ 'lag' => 'langi',
+ 'lah' => 'lahnda',
+ 'lam' => 'lamba',
+ 'lb' => 'luxemburgiska',
+ 'lez' => 'lezghien',
+ 'lg' => 'luganda',
+ 'li' => 'limburgiska',
+ 'lij' => 'liguriska',
+ 'liv' => 'livoniska',
+ 'lkt' => 'lakota',
+ 'lmo' => 'lombardiska',
+ 'ln' => 'lingala',
+ 'lo' => 'laotiska',
+ 'lol' => 'mongo',
+ 'loz' => 'lozi',
+ 'lt' => 'litauiska',
+ 'ltg' => 'lettgalliska',
+ 'lu' => 'luba-katanga',
+ 'lua' => 'luba-lulua',
+ 'lui' => 'luiseño',
+ 'lun' => 'lunda',
+ 'luo' => 'luo',
+ 'lus' => 'lushai',
+ 'luy' => 'luhya',
+ 'lv' => 'lettiska',
+ 'mad' => 'maduresiska',
+ 'maf' => 'mafa',
+ 'mag' => 'magahi',
+ 'mai' => 'maithili',
+ 'mak' => 'makasar',
+ 'man' => 'mande',
+ 'mas' => 'massajiska',
+ 'mde' => 'maba',
+ 'mdf' => 'moksja',
+ 'mdr' => 'mandar',
+ 'men' => 'mende',
+ 'mer' => 'meru',
+ 'mfe' => 'mauritansk kreol',
+ 'mg' => 'malagassiska',
+ 'mga' => 'medeliriska',
+ 'mgh' => 'makhuwa-meetto',
+ 'mgo' => 'meta’',
+ 'mh' => 'marshalliska',
+ 'mi' => 'maori',
+ 'mic' => 'mi’kmaq',
+ 'min' => 'minangkabau',
+ 'mk' => 'makedonska',
+ 'ml' => 'malayalam',
+ 'mn' => 'mongoliska',
+ 'mnc' => 'manchuriska',
+ 'mni' => 'manipuri',
+ 'moh' => 'mohawk',
+ 'mos' => 'mossi',
+ 'mr' => 'marathi',
+ 'mrj' => 'västmariska',
+ 'ms' => 'malajiska',
+ 'mt' => 'maltesiska',
+ 'mua' => 'mundang',
+ 'mul' => 'flera språk',
+ 'mus' => 'muskogee',
+ 'mwl' => 'mirandesiska',
+ 'mwr' => 'marwari',
+ 'my' => 'burmesiska',
+ 'mye' => 'myene',
+ 'myv' => 'erjya',
+ 'mzn' => 'mazanderani',
+ 'na' => 'nauru',
+ 'nan' => 'min nan',
+ 'nap' => 'napolitanska',
+ 'naq' => 'nama',
+ 'nb' => 'norskt bokmål',
+ 'nd' => 'nordndebele',
+ 'nds' => 'lågtyska',
+ 'ne' => 'nepalesiska',
+ 'new' => 'newariska',
+ 'ng' => 'ndonga',
+ 'nia' => 'nias',
+ 'niu' => 'niueanska',
+ 'nl' => 'nederländska',
+ 'nl-be' => 'flamländska',
+ 'nmg' => 'kwasio',
+ 'nn' => 'nynorska',
+ 'nnh' => 'bamileké-ngiemboon',
+ 'no' => 'norska',
+ 'nog' => 'nogai',
+ 'non' => 'fornnordiska',
+ 'nqo' => 'n-kå',
+ 'nr' => 'sydndebele',
+ 'nso' => 'nordsotho',
+ 'nus' => 'nuer',
+ 'nv' => 'navaho',
+ 'nwc' => 'klassisk newariska',
+ 'ny' => 'nyanja',
+ 'nym' => 'nyamwezi',
+ 'nyn' => 'nyankole',
+ 'nyo' => 'nyoro',
+ 'nzi' => 'nzima',
+ 'oc' => 'occitanska',
+ 'oj' => 'odjibwa',
+ 'om' => 'oromo',
+ 'or' => 'oriya',
+ 'os' => 'ossetiska',
+ 'osa' => 'osage',
+ 'ota' => 'ottomanska',
+ 'pa' => 'punjabi',
+ 'pag' => 'pangasinan',
+ 'pal' => 'medelpersiska',
+ 'pam' => 'pampanga',
+ 'pap' => 'papiamento',
+ 'pau' => 'palau',
+ 'pcd' => 'pikardiska',
+ 'pdc' => 'Pennsylvaniatyska',
+ 'pdt' => 'mennonitisk lågtyska',
+ 'peo' => 'fornpersiska',
+ 'pfl' => 'Pfalz-tyska',
+ 'phn' => 'feniciska',
+ 'pi' => 'pali',
+ 'pl' => 'polska',
+ 'pms' => 'piemontesiska',
+ 'pnt' => 'pontiska',
+ 'pon' => 'ponape',
+ 'prg' => 'fornpreussiska',
+ 'pro' => 'fornprovensalska',
+ 'ps' => 'afghanska',
+ 'pt' => 'portugisiska',
+ 'pt-br' => 'brasiliansk portugisiska',
+ 'pt-pt' => 'europeisk portugisiska',
+ 'qu' => 'quechua',
+ 'quc' => 'kʼicheʼ',
+ 'qug' => 'Chimborazo-höglandskichwa',
+ 'raj' => 'rajasthani',
+ 'rap' => 'rapanui',
+ 'rar' => 'rarotonganska',
+ 'rgn' => 'romagnol',
+ 'rif' => 'riffianska',
+ 'rm' => 'rätoromanska',
+ 'rn' => 'rundi',
+ 'ro' => 'rumänska',
+ 'ro-md' => 'moldaviska',
+ 'rof' => 'rombo',
+ 'rom' => 'romani',
+ 'rtm' => 'rotumänska',
+ 'ru' => 'ryska',
+ 'rue' => 'rusyn',
+ 'rug' => 'rovianska',
+ 'rup' => 'arumänska',
+ 'rw' => 'kinjarwanda',
+ 'rwk' => 'rwa',
+ 'sa' => 'sanskrit',
+ 'sad' => 'sandawe',
+ 'sah' => 'jakutiska',
+ 'sam' => 'samaritanska',
+ 'saq' => 'samburu',
+ 'sas' => 'sasak',
+ 'sat' => 'santali',
+ 'saz' => 'saurashtra',
+ 'sba' => 'ngambay',
+ 'sbp' => 'sangu',
+ 'sc' => 'sardiska',
+ 'scn' => 'sicilianska',
+ 'sco' => 'skotska',
+ 'sd' => 'sindhi',
+ 'sdc' => 'sassaresisk sardiska',
+ 'se' => 'nordsamiska',
+ 'see' => 'seneca',
+ 'seh' => 'sena',
+ 'sel' => 'selkup',
+ 'ses' => 'Gao-songhay',
+ 'sg' => 'sango',
+ 'sga' => 'forniriska',
+ 'sgs' => 'samogitiska',
+ 'sh' => 'serbokroatiska',
+ 'shi' => 'tachelhit',
+ 'shn' => 'shan',
+ 'shu' => 'Chad-arabiska',
+ 'si' => 'singalesiska',
+ 'sid' => 'sidamo',
+ 'sk' => 'slovakiska',
+ 'sl' => 'slovenska',
+ 'sli' => 'lågsilesiska',
+ 'sm' => 'samoanska',
+ 'sma' => 'sydsamiska',
+ 'smj' => 'lulesamiska',
+ 'smn' => 'enaresamiska',
+ 'sms' => 'skoltsamiska',
+ 'sn' => 'shona',
+ 'snk' => 'soninke',
+ 'so' => 'somaliska',
+ 'sog' => 'sogdiska',
+ 'sq' => 'albanska',
+ 'sr' => 'serbiska',
+ 'srn' => 'sranan tongo',
+ 'srr' => 'serer',
+ 'ss' => 'swati',
+ 'ssy' => 'saho',
+ 'st' => 'sydsotho',
+ 'stq' => 'saterfrisiska',
+ 'su' => 'sundanesiska',
+ 'suk' => 'sukuma',
+ 'sus' => 'susu',
+ 'sux' => 'sumeriska',
+ 'sv' => 'svenska',
+ 'sw' => 'swahili',
+ 'swb' => 'shimaoré',
+ 'swc' => 'Kongo-swahili',
+ 'syc' => 'klassisk syriska',
+ 'syr' => 'syriska',
+ 'szl' => 'silesiska',
+ 'ta' => 'tamil',
+ 'tcy' => 'tulu',
+ 'te' => 'telugiska',
+ 'tem' => 'temne',
+ 'teo' => 'teso',
+ 'ter' => 'tereno',
+ 'tet' => 'tetum',
+ 'tg' => 'tadzjikiska',
+ 'th' => 'thailändska',
+ 'ti' => 'tigrinja',
+ 'tig' => 'tigré',
+ 'tiv' => 'tivi',
+ 'tk' => 'turkmeniska',
+ 'tkl' => 'tokelauiska',
+ 'tl' => 'tagalog',
+ 'tlh' => 'klingonska',
+ 'tli' => 'tlingit',
+ 'tly' => 'talysh',
+ 'tmh' => 'tamashek',
+ 'tn' => 'tswana',
+ 'to' => 'tonganska',
+ 'tog' => 'nyasatonganska',
+ 'tpi' => 'tok pisin',
+ 'tr' => 'turkiska',
+ 'trv' => 'taroko',
+ 'ts' => 'tsonga',
+ 'tsd' => 'tsakodiska',
+ 'tsi' => 'tsimshian',
+ 'tt' => 'tatariska',
+ 'tum' => 'tumbuka',
+ 'tvl' => 'tuvaluanska',
+ 'tw' => 'twi',
+ 'twq' => 'tasawaq',
+ 'ty' => 'tahitiska',
+ 'tyv' => 'tuviniska',
+ 'tzm' => 'centralmarockansk tamazight',
+ 'udm' => 'udmurtiska',
+ 'ug' => 'uiguriska',
+ 'uga' => 'ugaritiska',
+ 'uk' => 'ukrainska',
+ 'umb' => 'umbundu',
+ 'und' => 'obestämt språk',
+ 'ur' => 'urdu',
+ 'uz' => 'uzbekiska',
+ 'vai' => 'vaj',
+ 've' => 'venda',
+ 'vec' => 'venetianska',
+ 'vep' => 'veps',
+ 'vi' => 'vietnamesiska',
+ 'vls' => 'västflamländska',
+ 'vmf' => 'Main-frankiska',
+ 'vo' => 'volapük',
+ 'vot' => 'votiska',
+ 'vro' => 'võru',
+ 'vun' => 'vunjo',
+ 'wa' => 'vallonska',
+ 'wae' => 'walsertyska',
+ 'wal' => 'walamo',
+ 'war' => 'waray',
+ 'was' => 'washo',
+ 'wo' => 'wolof',
+ 'wuu' => 'wu',
+ 'xal' => 'kalmuckiska',
+ 'xh' => 'xhosa',
+ 'xog' => 'lusoga',
+ 'yao' => 'kiyao',
+ 'yap' => 'japetiska',
+ 'yav' => 'yangben',
+ 'ybb' => 'bamileké-jemba',
+ 'yi' => 'jiddisch',
+ 'yo' => 'yoruba',
+ 'yue' => 'kantonesiska',
+ 'za' => 'zhuang',
+ 'zap' => 'zapotek',
+ 'zbl' => 'blissymboler',
+ 'zea' => 'zeeländska',
+ 'zen' => 'zenaga',
+ 'zgh' => 'marockansk standard-tamazight',
+ 'zh' => 'kinesiska',
+ 'zh-hans' => 'förenklad kinesiska',
+ 'zh-hant' => 'traditionell kinesiska',
+ 'zu' => 'zulu',
+ 'zun' => 'zuni',
+ 'zxx' => 'inget språkligt innehåll',
+ 'zza' => 'zazaiska',
+);
+
+$currencyNames = array(
+ 'ADP' => 'andorransk peseta',
+ 'AED' => 'Förenade Arabemiratens dirham',
+ 'AFA' => 'afghani (1927–2002)',
+ 'AFN' => 'afghansk afghani',
+ 'ALK' => 'albansk lek (1946–1965)',
+ 'ALL' => 'albansk lek',
+ 'AMD' => 'armenisk dram',
+ 'ANG' => 'Nederländska Antillernas gulden',
+ 'AOA' => 'angolansk kwanza',
+ 'AOK' => 'angolansk kwanza (1977–1990)',
+ 'AON' => 'angolansk ny kwanza (1990–2000)',
+ 'AOR' => 'angolansk kwanza reajustado (1995–1999)',
+ 'ARA' => 'argentinsk austral',
+ 'ARL' => 'argentisk peso (1970–1983)',
+ 'ARM' => 'argentisk peso (1881–1969)',
+ 'ARP' => 'argentinsk peso (1983–1985)',
+ 'ARS' => 'argentinsk peso',
+ 'ATS' => 'österrikisk schilling',
+ 'AUD' => 'australisk dollar',
+ 'AWG' => 'arubansk florin',
+ 'AZM' => 'azerbajdzjansk manat (1993–2006)',
+ 'AZN' => 'azerbajdzjansk manat',
+ 'BAD' => 'bosnisk-hercegovinsk dinar (1992–1994)',
+ 'BAM' => 'bosnisk-hercegovinsk mark (konvertibel)',
+ 'BAN' => 'bosnisk-hercegovinsk dinar (1994–1998)',
+ 'BBD' => 'Barbados-dollar',
+ 'BDT' => 'bangladeshisk taka',
+ 'BEC' => 'belgisk franc (konvertibel)',
+ 'BEF' => 'belgisk franc',
+ 'BEL' => 'belgisk franc (finansiell)',
+ 'BGL' => 'bulgarisk hård lev (1962–1999)',
+ 'BGM' => 'bulgarisk lev (1952–1962)',
+ 'BGN' => 'bulgarisk lev',
+ 'BGO' => 'bulgarisk lev (1881–1952)',
+ 'BHD' => 'bahrainsk dinar',
+ 'BIF' => 'burundisk franc',
+ 'BMD' => 'Bermuda-dollar',
+ 'BND' => 'bruneisk dollar',
+ 'BOB' => 'boliviansk boliviano',
+ 'BOL' => 'boliviansk boliviano (1864–1963)',
+ 'BOP' => 'boliviansk peso',
+ 'BOV' => 'boliviansk mvdol',
+ 'BRB' => 'brasiliansk cruzeiro novo (1967–1986)',
+ 'BRC' => 'brasiliansk cruzado',
+ 'BRE' => 'brasiliansk cruzeiro (1990–1993)',
+ 'BRL' => 'brasiliansk real',
+ 'BRN' => 'brasiliansk cruzado novo',
+ 'BRR' => 'brasiliansk cruzeiro',
+ 'BRZ' => 'brasiliansk cruzeiro (1942–1967)',
+ 'BSD' => 'bahamansk dollar',
+ 'BTN' => 'bhutanesisk ngultrum',
+ 'BUK' => 'burmesisk kyat',
+ 'BWP' => 'botswansk pula',
+ 'BYB' => 'vitrysk ny rubel (1994–1999)',
+ 'BYR' => 'vitrysk rubel',
+ 'BZD' => 'belizisk dollar',
+ 'CAD' => 'kanadensisk dollar',
+ 'CDF' => 'kongolesisk franc',
+ 'CHE' => 'euro (konvertibelt konto, WIR Bank, Schweiz)',
+ 'CHF' => 'schweizisk franc',
+ 'CHW' => 'franc (konvertibelt konto, WIR Bank, Schweiz)',
+ 'CLE' => 'chilensk escudo (1960–1975)',
+ 'CLF' => 'chilensk unidad de fomento',
+ 'CLP' => 'chilensk peso',
+ 'CNX' => 'kinesisk dollar',
+ 'CNY' => 'kinesisk yuan',
+ 'COP' => 'colombiansk peso',
+ 'COU' => 'colombiansk unidad de valor real',
+ 'CRC' => 'costarikansk colón',
+ 'CSD' => 'serbisk dinar (2002–2006)',
+ 'CSK' => 'tjeckoslovakisk krona (–1993)',
+ 'CUC' => 'kubansk peso (konvertibel)',
+ 'CUP' => 'kubansk peso',
+ 'CVE' => 'kapverdisk escudo',
+ 'CYP' => 'cypriotiskt pund',
+ 'CZK' => 'tjeckisk koruna',
+ 'DDM' => 'östtysk mark',
+ 'DEM' => 'tysk mark',
+ 'DJF' => 'djiboutisk franc',
+ 'DKK' => 'dansk krona',
+ 'DOP' => 'dominikansk peso',
+ 'DZD' => 'algerisk dinar',
+ 'ECS' => 'ecuadoriansk sucre',
+ 'ECV' => 'ecuadoriansk unidad de valor constante',
+ 'EEK' => 'estnisk krona',
+ 'EGP' => 'egyptiskt pund',
+ 'ERN' => 'eritreansk nakfa',
+ 'ESA' => 'spansk peseta (konto)',
+ 'ESB' => 'spansk peseta (konvertibelt konto)',
+ 'ESP' => 'spansk peseta',
+ 'ETB' => 'etiopisk birr',
+ 'EUR' => 'euro',
+ 'FIM' => 'finsk mark',
+ 'FJD' => 'Fijidollar',
+ 'FKP' => 'Falklandspund',
+ 'FRF' => 'fransk franc',
+ 'GBP' => 'brittiskt pund',
+ 'GEK' => 'georgisk kupon larit',
+ 'GEL' => 'georgisk lari',
+ 'GHC' => 'ghanansk cedi (1979–2007)',
+ 'GHS' => 'ghanansk cedi',
+ 'GIP' => 'gibraltiskt pund',
+ 'GMD' => 'gambisk dalasi',
+ 'GNF' => 'guineansk franc',
+ 'GNS' => 'guineansk syli',
+ 'GQE' => 'ekvatorialguineansk ekwele',
+ 'GRD' => 'grekisk drachma',
+ 'GTQ' => 'guatemalansk quetzal',
+ 'GWE' => 'Portugisiska Guinea-escudo',
+ 'GWP' => 'Guinea-Bissau-peso',
+ 'GYD' => 'guyanansk dollar',
+ 'HKD' => 'Hongkongdollar',
+ 'HNL' => 'honduransk lempira',
+ 'HRD' => 'kroatisk dinar',
+ 'HRK' => 'kroatisk kuna',
+ 'HTG' => 'haitisk gourde',
+ 'HUF' => 'ungersk forint',
+ 'IDR' => 'indonesisk rupiah',
+ 'IEP' => 'irländskt pund',
+ 'ILP' => 'israeliskt pund',
+ 'ILR' => 'israelisk shekel (1980–1985)',
+ 'ILS' => 'israelisk ny shekel',
+ 'INR' => 'indisk rupie',
+ 'IQD' => 'irakisk dinar',
+ 'IRR' => 'iransk rial',
+ 'ISJ' => 'isländsk gammal krona',
+ 'ISK' => 'isländsk krona',
+ 'ITL' => 'italiensk lire',
+ 'JMD' => 'Jamaica-dollar',
+ 'JOD' => 'jordansk dinar',
+ 'JPY' => 'japansk yen',
+ 'KES' => 'kenyansk shilling',
+ 'KGS' => 'kirgizisk som',
+ 'KHR' => 'kambodjansk riel',
+ 'KMF' => 'komorisk franc',
+ 'KPW' => 'nordkoreansk won',
+ 'KRH' => 'sydkoreansk hwan (1953–1962)',
+ 'KRO' => 'sydkoreansk won (1945–1953)',
+ 'KRW' => 'sydkoreansk won',
+ 'KWD' => 'kuwaitisk dinar',
+ 'KYD' => 'Cayman-dollar',
+ 'KZT' => 'kazakisk tenge',
+ 'LAK' => 'laotisk kip',
+ 'LBP' => 'libanesiskt pund',
+ 'LKR' => 'srilankesisk rupie',
+ 'LRD' => 'liberiansk dollar',
+ 'LSL' => 'lesothisk loti',
+ 'LTL' => 'litauisk litas',
+ 'LTT' => 'litauisk talonas',
+ 'LUC' => 'luxemburgsk franc (konvertibel)',
+ 'LUF' => 'luxemburgsk franc',
+ 'LUL' => 'luxemburgsk franc (finansiell)',
+ 'LVL' => 'lettisk lats',
+ 'LVR' => 'lettisk rubel',
+ 'LYD' => 'libysk dinar',
+ 'MAD' => 'marockansk dirham',
+ 'MAF' => 'marockansk franc',
+ 'MCF' => 'monegaskisk franc (–2001)',
+ 'MDC' => 'moldavisk cupon (1992–1993)',
+ 'MDL' => 'moldavisk leu',
+ 'MGA' => 'madagaskisk ariary',
+ 'MGF' => 'madagaskisk franc',
+ 'MKD' => 'makedonisk denar',
+ 'MKN' => 'makedonisk denar (1992–1993)',
+ 'MLF' => 'malisk franc',
+ 'MMK' => 'myanmarisk kyat',
+ 'MNT' => 'mongolisk tögrög',
+ 'MOP' => 'macaosk pataca',
+ 'MRO' => 'mauretansk ouquiya',
+ 'MTL' => 'maltesisk lire',
+ 'MTP' => 'maltesiskt pund',
+ 'MUR' => 'mauritisk rupie',
+ 'MVP' => 'maldivisk rupie',
+ 'MVR' => 'maldivisk rufiyaa',
+ 'MWK' => 'malawisk kwacha',
+ 'MXN' => 'mexikansk peso',
+ 'MXP' => 'mexikansk silverpeso (1861–1992)',
+ 'MXV' => 'mexikansk unidad de inversion',
+ 'MYR' => 'malaysisk ringgit',
+ 'MZE' => 'moçambikisk escudo',
+ 'MZM' => 'gammal moçambikisk metical',
+ 'MZN' => 'moçambikisk metical',
+ 'NAD' => 'namibisk dollar',
+ 'NGN' => 'nigeriansk naira',
+ 'NIC' => 'nicaraguansk córdoba (1998–1991)',
+ 'NIO' => 'nicaraguansk córdoba',
+ 'NLG' => 'nederländsk gulden',
+ 'NOK' => 'norsk krona',
+ 'NPR' => 'nepalesisk rupie',
+ 'NZD' => 'nyzeeländsk dollar',
+ 'OMR' => 'omansk rial',
+ 'PAB' => 'panamansk balboa',
+ 'PEI' => 'peruansk inti',
+ 'PEN' => 'peruansk nuevo sol',
+ 'PES' => 'peruansk sol (1863–1965)',
+ 'PGK' => 'papuansk kina',
+ 'PHP' => 'filippinsk peso',
+ 'PKR' => 'pakistansk rupie',
+ 'PLN' => 'polsk zloty',
+ 'PLZ' => 'polsk zloty (1950–1995)',
+ 'PTE' => 'portugisisk escudo',
+ 'PYG' => 'paraguayansk guarani',
+ 'QAR' => 'qatarisk rial',
+ 'RHD' => 'rhodesisk dollar',
+ 'ROL' => 'rumänsk leu (1952–2005)',
+ 'RON' => 'rumänsk leu',
+ 'RSD' => 'serbisk dinar',
+ 'RUB' => 'rysk rubel',
+ 'RUR' => 'rysk rubel (1991–1998)',
+ 'RWF' => 'rwandisk franc',
+ 'SAR' => 'saudisk riyal',
+ 'SBD' => 'Salomondollar',
+ 'SCR' => 'seychellisk rupie',
+ 'SDD' => 'sudansk dinar (1992–2007)',
+ 'SDG' => 'sudanesiskt pund',
+ 'SDP' => 'sudanskt pund (1916–1992)',
+ 'SEK' => 'svensk krona',
+ 'SGD' => 'singaporiansk dollar',
+ 'SHP' => 'S:t Helena-pund',
+ 'SIT' => 'slovensk tolar',
+ 'SKK' => 'slovakisk koruna',
+ 'SLL' => 'sierraleonsk leone',
+ 'SOS' => 'somalisk shilling',
+ 'SRD' => 'surinamesisk dollar',
+ 'SRG' => 'surinamesisk gulden',
+ 'SSP' => 'sydsudanesiskt pund',
+ 'STD' => 'saotomeansk dobra',
+ 'SUR' => 'sovjetisk rubel',
+ 'SVC' => 'salvadoransk colón',
+ 'SYP' => 'syriskt pund',
+ 'SZL' => 'swaziländsk lilangeni',
+ 'THB' => 'thailändsk baht',
+ 'TJR' => 'tadzjikisk rubel',
+ 'TJS' => 'tadzjikisk somoni',
+ 'TMM' => 'turkmenistansk manat (1993–2009)',
+ 'TMT' => 'turkmenistansk manat',
+ 'TND' => 'tunisisk dinar',
+ 'TOP' => 'tongansk paʻanga',
+ 'TPE' => 'timoriansk escudo',
+ 'TRL' => 'turkisk lire (1922–2005)',
+ 'TRY' => 'turkisk lira',
+ 'TTD' => 'Trinidad och Tobago-dollar',
+ 'TWD' => 'Taiwandollar',
+ 'TZS' => 'tanzanisk shilling',
+ 'UAH' => 'ukrainsk hryvnia',
+ 'UAK' => 'ukrainsk karbovanetz',
+ 'UGS' => 'ugandisk shilling (1966–1987)',
+ 'UGX' => 'ugandisk shilling',
+ 'USD' => 'US-dollar',
+ 'USN' => 'US-dollar (nästa dag)',
+ 'USS' => 'US-dollar (samma dag)',
+ 'UYI' => 'uruguayansk peso en unidades indexadas',
+ 'UYP' => 'uruguayansk peso (1975–1993)',
+ 'UYU' => 'uruguayansk peso',
+ 'UZS' => 'uzbekisk sum',
+ 'VEB' => 'venezuelansk bolivar (1871–2008)',
+ 'VEF' => 'venezuelansk bolívar',
+ 'VND' => 'vietnamesisk dong',
+ 'VNN' => 'vietnamesisk dong (1978–1985)',
+ 'VUV' => 'vanuatisk vatu',
+ 'WST' => 'västsamoansk tala',
+ 'XAF' => 'centralafrikansk franc',
+ 'XAG' => 'silver',
+ 'XAU' => 'guld',
+ 'XBA' => 'europeisk kompositenhet',
+ 'XBB' => 'europeisk monetär enhet',
+ 'XBC' => 'europeisk kontoenhet (XBC)',
+ 'XBD' => 'europeisk kontoenhet (XBD)',
+ 'XCD' => 'östkaribisk dollar',
+ 'XDR' => 'IMF särskild dragningsrätt',
+ 'XEU' => 'europeisk valutaenhet',
+ 'XFO' => 'fransk guldfranc',
+ 'XFU' => 'French UIC-Franc',
+ 'XOF' => 'västafrikansk franc',
+ 'XPD' => 'palladium',
+ 'XPF' => 'CFP-franc',
+ 'XPT' => 'platina',
+ 'XRE' => 'RINET-fond',
+ 'XSU' => 'latinamerikansk sucre',
+ 'XTS' => 'test-valutakod',
+ 'XUA' => 'afrikansk kontoenhet',
+ 'XXX' => 'okänd eller ogiltig valuta',
+ 'YDD' => 'jemenitisk dinar',
+ 'YER' => 'jemenitisk rial',
+ 'YUD' => 'jugoslavisk dinar (1966–1990)',
+ 'YUM' => 'jugoslavisk dinar (1994–2002)',
+ 'YUN' => 'jugoslavisk dinar (1990–1992)',
+ 'YUR' => 'jugoslavisk dinar (1992–1993)',
+ 'ZAL' => 'sydafrikansk rand (finansiell)',
+ 'ZAR' => 'sydafrikansk rand',
+ 'ZMK' => 'zambisk kwacha (1968–2012)',
+ 'ZMW' => 'zambisk kwacha',
+ 'ZRN' => 'zairisk ny zaire',
+ 'ZRZ' => 'zairisk zaire',
+ 'ZWD' => 'Zimbabwe-dollar',
+ 'ZWL' => 'Zimbabwe-dollar (2009)',
+ 'ZWR' => 'Zimbabwe-dollar (2008)',
+);
+
+$currencySymbols = array(
+ 'AED' => 'AED',
+ 'AFN' => 'AFN',
+ 'ALL' => 'ALL',
+ 'AMD' => 'AMD',
+ 'ANG' => 'ANG',
+ 'AOA' => 'AOA',
+ 'ARS' => 'ARS',
+ 'AUD' => 'AUD',
+ 'AWG' => 'AWG',
+ 'AZN' => 'AZN',
+ 'BAD' => 'BAD',
+ 'BAM' => 'BAM',
+ 'BBD' => 'Bds$',
+ 'BDT' => 'BDT',
+ 'BGN' => 'BGN',
+ 'BHD' => 'BHD',
+ 'BIF' => 'BIF',
+ 'BMD' => 'BM$',
+ 'BND' => 'BND',
+ 'BOB' => 'BOB',
+ 'BRL' => 'BR$',
+ 'BSD' => 'BS$',
+ 'BTN' => 'BTN',
+ 'BWP' => 'BWP',
+ 'BYR' => 'BYR',
+ 'BZD' => 'BZ$',
+ 'CAD' => 'CAN$',
+ 'CDF' => 'CDF',
+ 'CHF' => 'CHF',
+ 'CLP' => 'CLP',
+ 'CNX' => 'CNX',
+ 'CNY' => 'CNY',
+ 'COP' => 'COP',
+ 'CRC' => 'CRC',
+ 'CUC' => 'CUC',
+ 'CUP' => 'CUP',
+ 'CVE' => 'CVE',
+ 'CYP' => 'CYP',
+ 'CZK' => 'CZK',
+ 'DJF' => 'DJF',
+ 'DKK' => 'Dkr',
+ 'DOP' => 'RD$',
+ 'DZD' => 'DZD',
+ 'EEK' => 'Ekr',
+ 'EGP' => 'EG£',
+ 'ERN' => 'ERN',
+ 'ESP' => 'ESP',
+ 'ETB' => 'ETB',
+ 'EUR' => '€',
+ 'FJD' => 'FJD',
+ 'FKP' => 'FKP',
+ 'GBP' => 'GBP',
+ 'GEL' => 'GEL',
+ 'GHS' => 'GHS',
+ 'GIP' => 'GIP',
+ 'GMD' => 'GMD',
+ 'GNF' => 'GNF',
+ 'GTQ' => 'GTQ',
+ 'GYD' => 'GYD',
+ 'HKD' => 'HKD',
+ 'HNL' => 'HNL',
+ 'HRK' => 'HRK',
+ 'HTG' => 'HTG',
+ 'HUF' => 'HUF',
+ 'IDR' => 'IDR',
+ 'ILS' => '₪',
+ 'INR' => 'INR',
+ 'IQD' => 'IQD',
+ 'IRR' => 'IRR',
+ 'ISJ' => 'ISJ',
+ 'ISK' => 'Ikr',
+ 'ITL' => 'ITL',
+ 'JMD' => 'JM$',
+ 'JOD' => 'JOD',
+ 'JPY' => 'JPY',
+ 'KES' => 'KES',
+ 'KGS' => 'KGS',
+ 'KHR' => 'KHR',
+ 'KMF' => 'KMF',
+ 'KPW' => 'KPW',
+ 'KRW' => 'KRW',
+ 'KWD' => 'KWD',
+ 'KYD' => 'KYD',
+ 'KZT' => 'KZT',
+ 'LAK' => 'LAK',
+ 'LBP' => 'LBP',
+ 'LKR' => 'LKR',
+ 'LRD' => 'LRD',
+ 'LTL' => 'LTL',
+ 'LVL' => 'LVL',
+ 'LYD' => 'LYD',
+ 'MAD' => 'MAD',
+ 'MDL' => 'MDL',
+ 'MGA' => 'MGA',
+ 'MKD' => 'MKD',
+ 'MKN' => 'MKN',
+ 'MMK' => 'MMK',
+ 'MNT' => 'MNT',
+ 'MOP' => 'MOP',
+ 'MRO' => 'MRO',
+ 'MTL' => 'MTL',
+ 'MUR' => 'MUR',
+ 'MVP' => 'MVP',
+ 'MVR' => 'MVR',
+ 'MWK' => 'MWK',
+ 'MXN' => 'MX$',
+ 'MYR' => 'MYR',
+ 'MZN' => 'MZN',
+ 'NAD' => 'NAD',
+ 'NGN' => 'NGN',
+ 'NIC' => 'NIC',
+ 'NIO' => 'NIO',
+ 'NOK' => 'Nkr',
+ 'NPR' => 'NPR',
+ 'NZD' => 'NZD',
+ 'OMR' => 'OMR',
+ 'PAB' => 'PAB',
+ 'PEN' => 'PEN',
+ 'PGK' => 'PGK',
+ 'PHP' => 'PHP',
+ 'PKR' => 'PKR',
+ 'PLN' => 'PLN',
+ 'PYG' => 'PYG',
+ 'QAR' => 'QAR',
+ 'RON' => 'RON',
+ 'RSD' => 'RSD',
+ 'RUB' => 'RUB',
+ 'RWF' => 'RWF',
+ 'SAR' => 'SAR',
+ 'SBD' => 'SBD',
+ 'SCR' => 'SCR',
+ 'SDG' => 'SDG',
+ 'SEK' => 'kr',
+ 'SGD' => 'SGD',
+ 'SHP' => 'SHP',
+ 'SIT' => 'SIT',
+ 'SLL' => 'SLL',
+ 'SOS' => 'SOS',
+ 'SRD' => 'SRD',
+ 'SSP' => 'SSP',
+ 'STD' => 'STD',
+ 'SYP' => 'SYP',
+ 'SZL' => 'SZL',
+ 'THB' => 'THB',
+ 'TJS' => 'TJS',
+ 'TMT' => 'TMT',
+ 'TND' => 'TND',
+ 'TOP' => 'TOP',
+ 'TRL' => 'TRL',
+ 'TRY' => 'TRY',
+ 'TTD' => 'TTD',
+ 'TWD' => 'TWD',
+ 'TZS' => 'TZS',
+ 'UAH' => 'UAH',
+ 'UGX' => 'UGX',
+ 'USD' => 'US$',
+ 'UYU' => 'UYU',
+ 'UZS' => 'UZS',
+ 'VEF' => 'VEF',
+ 'VND' => 'VND',
+ 'VUV' => 'VUV',
+ 'WST' => 'WST',
+ 'XAF' => 'FCFA',
+ 'XCD' => 'EC$',
+ 'XOF' => 'CFA',
+ 'XPF' => 'CFPF',
+ 'XTS' => 'XTS',
+ 'YER' => 'YER',
+ 'YUD' => 'YUD',
+ 'YUM' => 'YUM',
+ 'YUN' => 'YUN',
+ 'ZAR' => 'ZAR',
+ 'ZMW' => 'ZMW',
+);
+
+$countryNames = array(
+ 'AC' => 'Ascension',
+ 'AD' => 'Andorra',
+ 'AE' => 'Förenade Arabemiraten',
+ 'AF' => 'Afghanistan',
+ 'AG' => 'Antigua och Barbuda',
+ 'AI' => 'Anguilla',
+ 'AL' => 'Albanien',
+ 'AM' => 'Armenien',
+ 'AN' => 'Nederländska Antillerna',
+ 'AO' => 'Angola',
+ 'AQ' => 'Antarktis',
+ 'AR' => 'Argentina',
+ 'AS' => 'Amerikanska Samoa',
+ 'AT' => 'Österrike',
+ 'AU' => 'Australien',
+ 'AW' => 'Aruba',
+ 'AX' => 'Åland',
+ 'AZ' => 'Azerbajdzjan',
+ 'BA' => 'Bosnien och Hercegovina',
+ 'BB' => 'Barbados',
+ 'BD' => 'Bangladesh',
+ 'BE' => 'Belgien',
+ 'BF' => 'Burkina Faso',
+ 'BG' => 'Bulgarien',
+ 'BH' => 'Bahrain',
+ 'BI' => 'Burundi',
+ 'BJ' => 'Benin',
+ 'BL' => 'S:t Barthélemy',
+ 'BM' => 'Bermuda',
+ 'BN' => 'Brunei',
+ 'BO' => 'Bolivia',
+ 'BQ' => 'Karibiska Nederländerna',
+ 'BR' => 'Brasilien',
+ 'BS' => 'Bahamas',
+ 'BT' => 'Bhutan',
+ 'BV' => 'Bouvetön',
+ 'BW' => 'Botswana',
+ 'BY' => 'Vitryssland',
+ 'BZ' => 'Belize',
+ 'CA' => 'Kanada',
+ 'CC' => 'Kokosöarna',
+ 'CD' => 'Kongo-Kinshasa',
+ 'CF' => 'Centralafrikanska republiken',
+ 'CG' => 'Kongo-Brazzaville',
+ 'CH' => 'Schweiz',
+ 'CI' => 'Elfenbenskusten',
+ 'CK' => 'Cooköarna',
+ 'CL' => 'Chile',
+ 'CM' => 'Kamerun',
+ 'CN' => 'Kina',
+ 'CO' => 'Colombia',
+ 'CP' => 'Clippertonön',
+ 'CR' => 'Costa Rica',
+ 'CU' => 'Kuba',
+ 'CV' => 'Kap Verde',
+ 'CW' => 'Curaçao',
+ 'CX' => 'Julön',
+ 'CY' => 'Cypern',
+ 'CZ' => 'Tjeckien',
+ 'DE' => 'Tyskland',
+ 'DG' => 'Diego Garcia',
+ 'DJ' => 'Djibouti',
+ 'DK' => 'Danmark',
+ 'DM' => 'Dominica',
+ 'DO' => 'Dominikanska republiken',
+ 'DZ' => 'Algeriet',
+ 'EA' => 'Ceuta och Melilla',
+ 'EC' => 'Ecuador',
+ 'EE' => 'Estland',
+ 'EG' => 'Egypten',
+ 'EH' => 'Västsahara',
+ 'ER' => 'Eritrea',
+ 'ES' => 'Spanien',
+ 'ET' => 'Etiopien',
+ 'EU' => 'Europeiska unionen',
+ 'FI' => 'Finland',
+ 'FJ' => 'Fiji',
+ 'FK' => 'Falklandsöarna',
+ 'FM' => 'Mikronesien',
+ 'FO' => 'Färöarna',
+ 'FR' => 'Frankrike',
+ 'GA' => 'Gabon',
+ 'GB' => 'Storbritannien',
+ 'GD' => 'Grenada',
+ 'GE' => 'Georgien',
+ 'GF' => 'Franska Guyana',
+ 'GG' => 'Guernsey',
+ 'GH' => 'Ghana',
+ 'GI' => 'Gibraltar',
+ 'GL' => 'Grönland',
+ 'GM' => 'Gambia',
+ 'GN' => 'Guinea',
+ 'GP' => 'Guadeloupe',
+ 'GQ' => 'Ekvatorialguinea',
+ 'GR' => 'Grekland',
+ 'GS' => 'Sydgeorgien och Sydsandwichöarna',
+ 'GT' => 'Guatemala',
+ 'GU' => 'Guam',
+ 'GW' => 'Guinea-Bissau',
+ 'GY' => 'Guyana',
+ 'HK' => 'Hongkong',
+ 'HM' => 'Heardön och McDonaldöarna',
+ 'HN' => 'Honduras',
+ 'HR' => 'Kroatien',
+ 'HT' => 'Haiti',
+ 'HU' => 'Ungern',
+ 'IC' => 'Kanarieöarna',
+ 'ID' => 'Indonesien',
+ 'IE' => 'Irland',
+ 'IL' => 'Israel',
+ 'IM' => 'Isle of Man',
+ 'IN' => 'Indien',
+ 'IO' => 'Brittiska territoriet i Indiska oceanen',
+ 'IQ' => 'Irak',
+ 'IR' => 'Iran',
+ 'IS' => 'Island',
+ 'IT' => 'Italien',
+ 'JE' => 'Jersey',
+ 'JM' => 'Jamaica',
+ 'JO' => 'Jordanien',
+ 'JP' => 'Japan',
+ 'KE' => 'Kenya',
+ 'KG' => 'Kirgizistan',
+ 'KH' => 'Kambodja',
+ 'KI' => 'Kiribati',
+ 'KM' => 'Komorerna',
+ 'KN' => 'S:t Kitts och Nevis',
+ 'KP' => 'Nordkorea',
+ 'KR' => 'Sydkorea',
+ 'KW' => 'Kuwait',
+ 'KY' => 'Caymanöarna',
+ 'KZ' => 'Kazakstan',
+ 'LA' => 'Laos',
+ 'LB' => 'Libanon',
+ 'LC' => 'S:t Lucia',
+ 'LI' => 'Liechtenstein',
+ 'LK' => 'Sri Lanka',
+ 'LR' => 'Liberia',
+ 'LS' => 'Lesotho',
+ 'LT' => 'Litauen',
+ 'LU' => 'Luxemburg',
+ 'LV' => 'Lettland',
+ 'LY' => 'Libyen',
+ 'MA' => 'Marocko',
+ 'MC' => 'Monaco',
+ 'MD' => 'Moldavien',
+ 'ME' => 'Montenegro',
+ 'MF' => 'S:t Martin',
+ 'MG' => 'Madagaskar',
+ 'MH' => 'Marshallöarna',
+ 'MK' => 'Makedonien',
+ 'ML' => 'Mali',
+ 'MM' => 'Myanmar (Burma)',
+ 'MN' => 'Mongoliet',
+ 'MO' => 'Macao',
+ 'MP' => 'Nordmarianerna',
+ 'MQ' => 'Martinique',
+ 'MR' => 'Mauretanien',
+ 'MS' => 'Montserrat',
+ 'MT' => 'Malta',
+ 'MU' => 'Mauritius',
+ 'MV' => 'Maldiverna',
+ 'MW' => 'Malawi',
+ 'MX' => 'Mexiko',
+ 'MY' => 'Malaysia',
+ 'MZ' => 'Moçambique',
+ 'NA' => 'Namibia',
+ 'NC' => 'Nya Kaledonien',
+ 'NE' => 'Niger',
+ 'NF' => 'Norfolkön',
+ 'NG' => 'Nigeria',
+ 'NI' => 'Nicaragua',
+ 'NL' => 'Nederländerna',
+ 'NO' => 'Norge',
+ 'NP' => 'Nepal',
+ 'NR' => 'Nauru',
+ 'NU' => 'Niue',
+ 'NZ' => 'Nya Zeeland',
+ 'OM' => 'Oman',
+ 'PA' => 'Panama',
+ 'PE' => 'Peru',
+ 'PF' => 'Franska Polynesien',
+ 'PG' => 'Papua Nya Guinea',
+ 'PH' => 'Filippinerna',
+ 'PK' => 'Pakistan',
+ 'PL' => 'Polen',
+ 'PM' => 'S:t Pierre och Miquelon',
+ 'PN' => 'Pitcairnöarna',
+ 'PR' => 'Puerto Rico',
+ 'PS' => 'Palestina',
+ 'PT' => 'Portugal',
+ 'PW' => 'Palau',
+ 'PY' => 'Paraguay',
+ 'QA' => 'Qatar',
+ 'QO' => 'yttre öar i Oceanien',
+ 'RE' => 'Réunion',
+ 'RO' => 'Rumänien',
+ 'RS' => 'Serbien',
+ 'RU' => 'Ryssland',
+ 'RW' => 'Rwanda',
+ 'SA' => 'Saudiarabien',
+ 'SB' => 'Salomonöarna',
+ 'SC' => 'Seychellerna',
+ 'SD' => 'Sudan',
+ 'SE' => 'Sverige',
+ 'SG' => 'Singapore',
+ 'SH' => 'S:t Helena',
+ 'SI' => 'Slovenien',
+ 'SJ' => 'Svalbard och Jan Mayen',
+ 'SK' => 'Slovakien',
+ 'SL' => 'Sierra Leone',
+ 'SM' => 'San Marino',
+ 'SN' => 'Senegal',
+ 'SO' => 'Somalia',
+ 'SR' => 'Surinam',
+ 'SS' => 'Sydsudan',
+ 'ST' => 'São Tomé och Príncipe',
+ 'SV' => 'El Salvador',
+ 'SX' => 'Sint Maarten',
+ 'SY' => 'Syrien',
+ 'SZ' => 'Swaziland',
+ 'TA' => 'Tristan da Cunha',
+ 'TC' => 'Turks- och Caicosöarna',
+ 'TD' => 'Tchad',
+ 'TF' => 'Franska sydterritorierna',
+ 'TG' => 'Togo',
+ 'TH' => 'Thailand',
+ 'TJ' => 'Tadzjikistan',
+ 'TK' => 'Tokelau',
+ 'TL' => 'Östtimor',
+ 'TM' => 'Turkmenistan',
+ 'TN' => 'Tunisien',
+ 'TO' => 'Tonga',
+ 'TR' => 'Turkiet',
+ 'TT' => 'Trinidad och Tobago',
+ 'TV' => 'Tuvalu',
+ 'TW' => 'Taiwan',
+ 'TZ' => 'Tanzania',
+ 'UA' => 'Ukraina',
+ 'UG' => 'Uganda',
+ 'UM' => 'USA:s yttre öar',
+ 'US' => 'USA',
+ 'UY' => 'Uruguay',
+ 'UZ' => 'Uzbekistan',
+ 'VA' => 'Vatikanstaten',
+ 'VC' => 'S:t Vincent och Grenadinerna',
+ 'VE' => 'Venezuela',
+ 'VG' => 'Brittiska Jungfruöarna',
+ 'VI' => 'Amerikanska Jungfruöarna',
+ 'VN' => 'Vietnam',
+ 'VU' => 'Vanuatu',
+ 'WF' => 'Wallis- och Futunaöarna',
+ 'WS' => 'Samoa',
+ 'XK' => 'Kosovo',
+ 'YE' => 'Jemen',
+ 'YT' => 'Mayotte',
+ 'ZA' => 'Sydafrika',
+ 'ZM' => 'Zambia',
+ 'ZW' => 'Zimbabwe',
+);
+
+$timeUnits = array(
+ 'day-future-one' => 'om {0} dag',
+ 'day-future-other' => 'om {0} dagar',
+ 'day-narrow-future-one' => '+{0} d',
+ 'day-narrow-future-other' => '+{0} d',
+ 'day-narrow-past-one' => '−{0} d',
+ 'day-narrow-past-other' => '−{0} d',
+ 'day-one' => '{0} dygn',
+ 'day-other' => '{0} dygn',
+ 'day-past-one' => 'för {0} dag sedan',
+ 'day-past-other' => 'för {0} dagar sedan',
+ 'day-short-future-one' => 'om {0} d',
+ 'day-short-future-other' => 'om {0} d',
+ 'day-short-past-one' => 'för {0} d sedan',
+ 'day-short-past-other' => 'för {0} d sedan',
+ 'hour-future-one' => 'om {0} timme',
+ 'hour-future-other' => 'om {0} timmar',
+ 'hour-narrow-future-one' => '+{0} h',
+ 'hour-narrow-future-other' => '+{0} h',
+ 'hour-narrow-past-one' => '−{0} h',
+ 'hour-narrow-past-other' => '−{0} h',
+ 'hour-one' => '{0} timme',
+ 'hour-other' => '{0} timmar',
+ 'hour-past-one' => 'för {0} timme sedan',
+ 'hour-past-other' => 'för {0} timmar sedan',
+ 'hour-short-future-one' => 'om {0} tim',
+ 'hour-short-future-other' => 'om {0} tim',
+ 'hour-short-past-one' => 'för {0} tim sedan',
+ 'hour-short-past-other' => 'för {0} tim sedan',
+ 'microsecond-one' => '{0} mikrosekund',
+ 'microsecond-other' => '{0} mikrosekunder',
+ 'millisecond-one' => '{0} millisekund',
+ 'millisecond-other' => '{0} millisekunder',
+ 'minute-future-one' => 'om {0} minut',
+ 'minute-future-other' => 'om {0} minuter',
+ 'minute-narrow-future-one' => '+{0} m',
+ 'minute-narrow-future-other' => '+{0} m',
+ 'minute-narrow-past-one' => '−{0} min',
+ 'minute-narrow-past-other' => '−{0} min',
+ 'minute-one' => '{0} minut',
+ 'minute-other' => '{0} minuter',
+ 'minute-past-one' => 'för {0} minut sedan',
+ 'minute-past-other' => 'för {0} minuter sedan',
+ 'minute-short-future-one' => 'om {0} min',
+ 'minute-short-future-other' => 'om {0} min',
+ 'minute-short-past-one' => 'för {0} min sedan',
+ 'minute-short-past-other' => 'för {0} min sedan',
+ 'month-future-one' => 'om {0} månad',
+ 'month-future-other' => 'om {0} månader',
+ 'month-narrow-future-one' => '+{0} mån.',
+ 'month-narrow-future-other' => '+{0} mån.',
+ 'month-narrow-past-one' => '-{0} mån.',
+ 'month-narrow-past-other' => '-{0} mån.',
+ 'month-one' => '{0} månad',
+ 'month-other' => '{0} månader',
+ 'month-past-one' => 'för {0} månad sedan',
+ 'month-past-other' => 'för {0} månader sedan',
+ 'month-short-future-one' => 'om {0} mån.',
+ 'month-short-future-other' => 'om {0} mån.',
+ 'month-short-past-one' => 'för {0} mån. sedan',
+ 'month-short-past-other' => 'för {0} mån. sedan',
+ 'nanosecond-one' => '{0} nanosekund',
+ 'nanosecond-other' => '{0} nanosekunder',
+ 'quarter-future-one' => 'om {0} kvartal',
+ 'quarter-future-other' => 'om {0} kvartal',
+ 'quarter-narrow-future-one' => '+{0} kv.',
+ 'quarter-narrow-future-other' => '+{0} kv.',
+ 'quarter-narrow-past-one' => '-{0} kv.',
+ 'quarter-narrow-past-other' => '-{0} kv.',
+ 'quarter-past-one' => 'för {0} kvartal sedan',
+ 'quarter-past-other' => 'för {0} kvartal sedan',
+ 'quarter-short-future-one' => 'om {0} kv.',
+ 'quarter-short-future-other' => 'om {0} kv.',
+ 'quarter-short-past-one' => 'för {0} kv. sedan',
+ 'quarter-short-past-other' => 'för {0} kv. sedan',
+ 'second-future-one' => 'om {0} sekund',
+ 'second-future-other' => 'om {0} sekunder',
+ 'second-narrow-future-one' => '+{0} s',
+ 'second-narrow-future-other' => '+{0} s',
+ 'second-narrow-past-one' => '−{0} s',
+ 'second-narrow-past-other' => '−{0} s',
+ 'second-one' => '{0} sekund',
+ 'second-other' => '{0} sekunder',
+ 'second-past-one' => 'för {0} sekund sedan',
+ 'second-past-other' => 'för {0} sekunder sedan',
+ 'second-short-future-one' => 'om {0} sek',
+ 'second-short-future-other' => 'om {0} sek',
+ 'second-short-past-one' => 'för {0} sek sedan',
+ 'second-short-past-other' => 'för {0} sek sedan',
+ 'week-future-one' => 'om {0} vecka',
+ 'week-future-other' => 'om {0} veckor',
+ 'week-narrow-future-one' => '+{0} v.',
+ 'week-narrow-future-other' => '+{0} v.',
+ 'week-narrow-past-one' => '-{0} v.',
+ 'week-narrow-past-other' => '-{0} v.',
+ 'week-one' => '{0} vecka',
+ 'week-other' => '{0} veckor',
+ 'week-past-one' => 'för {0} vecka sedan',
+ 'week-past-other' => 'för {0} veckor sedan',
+ 'week-short-future-one' => 'om {0} v.',
+ 'week-short-future-other' => 'om {0} v.',
+ 'week-short-past-one' => 'för {0} v. sedan',
+ 'week-short-past-other' => 'för {0} v. sedan',
+ 'year-future-one' => 'om {0} år',
+ 'year-future-other' => 'om {0} år',
+ 'year-narrow-future-one' => '+{0} år',
+ 'year-narrow-future-other' => '+{0} år',
+ 'year-narrow-past-one' => '-{0} år',
+ 'year-narrow-past-other' => '-{0} år',
+ 'year-one' => '{0} år',
+ 'year-other' => '{0} år',
+ 'year-past-one' => 'för {0} år sedan',
+ 'year-past-other' => 'för {0} år sedan',
+ 'year-short-future-one' => 'om {0} år',
+ 'year-short-future-other' => 'om {0} år',
+ 'year-short-past-one' => 'för {0} år sedan',
+ 'year-short-past-other' => 'för {0} år sedan',
+);
diff --git a/MLEB/cldr/CldrNames/CldrNamesSw.php b/MLEB/cldr/CldrNames/CldrNamesSw.php
new file mode 100644
index 00000000..cb2cc353
--- /dev/null
+++ b/MLEB/cldr/CldrNames/CldrNamesSw.php
@@ -0,0 +1,1013 @@
+<?php
+
+$languageNames = array(
+ 'ab' => 'Kiabkhazi',
+ 'ach' => 'Kiakoli',
+ 'af' => 'Kiafrikana',
+ 'agq' => 'Kiaghem',
+ 'ak' => 'Kiakani',
+ 'am' => 'Kiamhari',
+ 'ang' => 'Kiingereza cha Kale',
+ 'ar' => 'Kiarabu',
+ 'ar-001' => 'Kiarabu Sanifu cha Kisasa',
+ 'arc' => 'Kiaramu',
+ 'arn' => 'Kimapuche',
+ 'arq' => 'Kiarabu cha Kialjeria',
+ 'arz' => 'Kiarabu cha Misri',
+ 'as' => 'Kiassam',
+ 'asa' => 'Kiasu',
+ 'ay' => 'Kiaimara',
+ 'az' => 'Kiazabajani',
+ 'ba' => 'Kibashkir',
+ 'bas' => 'Kibasaa',
+ 'bax' => 'Kibamun',
+ 'bbj' => 'Kighomala',
+ 'be' => 'Kibelarusi',
+ 'bej' => 'Kibeja',
+ 'bem' => 'Kibemba',
+ 'bez' => 'Kibena',
+ 'bfd' => 'Kibafut',
+ 'bg' => 'Kibulgaria',
+ 'bkm' => 'Kikom',
+ 'bm' => 'Kibambara',
+ 'bn' => 'Kibengali',
+ 'bo' => 'Kitibeti',
+ 'br' => 'Kibretoni',
+ 'brx' => 'brx',
+ 'bs' => 'Kibosnia',
+ 'bum' => 'Kibulu',
+ 'byv' => 'Kimedumba',
+ 'ca' => 'Kikatalani',
+ 'cgg' => 'Kichiga',
+ 'chr' => 'Kicherokee',
+ 'ckb' => 'Kikurdi cha Sorani',
+ 'co' => 'Kikosikani',
+ 'cop' => 'Kikhufti',
+ 'cs' => 'Kicheki',
+ 'cy' => 'Kiwelisi',
+ 'da' => 'Kidenmaki',
+ 'dav' => 'Kitaita',
+ 'de' => 'Kijerumani',
+ 'dje' => 'Kizarma',
+ 'dsb' => 'Kidolnoserbski',
+ 'dua' => 'Kiduala',
+ 'dv' => 'Kidivehi',
+ 'dyo' => 'Kijola-Fonyi',
+ 'dyu' => 'Kijula',
+ 'dz' => 'Kizongkha',
+ 'ebu' => 'Kiembu',
+ 'ee' => 'Kiewe',
+ 'efi' => 'Kiefiki',
+ 'egy' => 'Kimisri',
+ 'eka' => 'Kiekajuk',
+ 'el' => 'Kigiriki',
+ 'en' => 'Kiingereza',
+ 'eo' => 'Kiesperanto',
+ 'es' => 'Kihispania',
+ 'es-es' => 'Kihispania cha Ulaya',
+ 'et' => 'Kiestonia',
+ 'eu' => 'Kibasque',
+ 'ewo' => 'Kiewondo',
+ 'fa' => 'Kiajemi',
+ 'ff' => 'Kifulfulde',
+ 'fi' => 'Kifinlandi',
+ 'fil' => 'Kifilipino',
+ 'fj' => 'Kifiji',
+ 'fo' => 'Kifaroe',
+ 'fon' => 'Kifon',
+ 'fr' => 'Kifaransa',
+ 'fro' => 'Kifaransa cha Kale',
+ 'frr' => 'Kifrisia cha Kaskazini',
+ 'frs' => 'Kifrisia cha Mashariki',
+ 'fy' => 'Kifrisia cha Magharibi',
+ 'ga' => 'Kiayalandi',
+ 'gaa' => 'Kiga',
+ 'gag' => 'Kigagauzi',
+ 'gba' => 'Kigbaya',
+ 'gd' => 'Kigaeli cha Uskoti',
+ 'gez' => 'Kige’ez',
+ 'gl' => 'Kigalisi',
+ 'gn' => 'Kiguarani',
+ 'grc' => 'Kiyunani',
+ 'gsw' => 'Kijerumani cha Uswisi',
+ 'gu' => 'Kigujarati',
+ 'guz' => 'Kikisii',
+ 'gv' => 'Kimanx',
+ 'ha' => 'Kihausa',
+ 'haw' => 'Kihawai',
+ 'he' => 'Kiebrania',
+ 'hi' => 'Kihindi',
+ 'hit' => 'Kihiti',
+ 'hr' => 'Kroeshia',
+ 'hsb' => 'hsb',
+ 'ht' => 'Kihaiti',
+ 'hu' => 'Kihungari',
+ 'hy' => 'Kiarmenia',
+ 'hz' => 'Kiherero',
+ 'ia' => 'Kiintalingua',
+ 'ibb' => 'Kiibibio',
+ 'id' => 'Kiindonesia',
+ 'ie' => 'lugha ya kisayansi',
+ 'ig' => 'Kiigbo',
+ 'ii' => 'Sichuan Yi',
+ 'is' => 'Kiaisilandi',
+ 'it' => 'Kiitaliano',
+ 'iu' => 'iu',
+ 'ja' => 'Kijapani',
+ 'jgo' => 'Kingomba',
+ 'jmc' => 'Kimachame',
+ 'jv' => 'Kijava',
+ 'ka' => 'Kijojia',
+ 'kab' => 'Kikabylia',
+ 'kam' => 'Kikamba',
+ 'kbl' => 'Kikanembu',
+ 'kde' => 'Kimakonde',
+ 'kea' => 'Kikabuverdianu',
+ 'kfo' => 'Kikoro',
+ 'kg' => 'Kikongo',
+ 'khq' => 'Kikoyra Chiini',
+ 'ki' => 'Kikikuyu',
+ 'kj' => 'Kikwanyama',
+ 'kk' => 'Kikazaki',
+ 'kkj' => 'Kikako',
+ 'kl' => 'Kikalaallisut',
+ 'kln' => 'Kikalenjin',
+ 'km' => 'Kikambodia',
+ 'kmb' => 'Kimbundu',
+ 'kn' => 'Kikannada',
+ 'ko' => 'Kikorea',
+ 'koi' => 'Kikomipermyak',
+ 'kok' => 'kok',
+ 'kr' => 'Kikanuri',
+ 'ks' => 'Kikashmiri',
+ 'ksb' => 'Kisambaa',
+ 'ksf' => 'Kibafia',
+ 'ku' => 'Kikurdi',
+ 'kv' => 'Kikomi',
+ 'kw' => 'Kikorni',
+ 'ky' => 'Kikirigizi',
+ 'la' => 'Kilatini',
+ 'lag' => 'Kirangi',
+ 'lam' => 'Chilamba',
+ 'lb' => 'Kilasembagi',
+ 'lg' => 'Kiganda',
+ 'lkt' => 'Kilakota',
+ 'ln' => 'Kilingala',
+ 'lo' => 'Kilaosi',
+ 'lol' => 'Kimongo',
+ 'loz' => 'Kilozi',
+ 'lt' => 'Kilithuania',
+ 'lu' => 'Kiluba-Katanga',
+ 'lua' => 'Kiluba-Lulua',
+ 'lun' => 'Kilunda',
+ 'luo' => 'Kijaluo',
+ 'luy' => 'Kiluhya',
+ 'lv' => 'Kilatvia',
+ 'maf' => 'Kimafa',
+ 'mag' => 'Kimagahi',
+ 'mas' => 'Kimaasai',
+ 'mde' => 'Kimaba',
+ 'men' => 'Kimende',
+ 'mer' => 'Kimeru',
+ 'mfe' => 'Kimoriseni',
+ 'mg' => 'Malagasi',
+ 'mgh' => 'Kimakhuwa-Meetto',
+ 'mgo' => 'Kimeta',
+ 'mi' => 'Kimaori',
+ 'mk' => 'Kimasedonia',
+ 'ml' => 'Kimalayalam',
+ 'mn' => 'Kimongolia',
+ 'moh' => 'Kimohoki',
+ 'mos' => 'Kimoore',
+ 'mr' => 'Kimarathi',
+ 'ms' => 'Kimalesia',
+ 'mt' => 'Kimalta',
+ 'mua' => 'Kimundang',
+ 'mul' => 'Lugha Nyingi',
+ 'my' => 'Kiburma',
+ 'naq' => 'Kinama',
+ 'nb' => 'Kibokmal cha Norwe',
+ 'nd' => 'Kindebele cha Kaskazini',
+ 'ne' => 'Kinepali',
+ 'new' => 'Kinewari',
+ 'ng' => 'Kindonga',
+ 'nl' => 'Kiholanzi',
+ 'nmg' => 'Kikwasio',
+ 'nn' => 'Kinorwe Kipya',
+ 'no' => 'Kinorwe',
+ 'nqo' => 'N’Ko',
+ 'nr' => 'Kindebele',
+ 'nso' => 'Kisotho cha Kaskazini',
+ 'nus' => 'Kinuer',
+ 'nwc' => 'Kinewari cha kale',
+ 'ny' => 'Kinyanja',
+ 'nym' => 'Kinyamwezi',
+ 'nyn' => 'Kinyankole',
+ 'nyo' => 'Kinyoro',
+ 'nzi' => 'Kinzema',
+ 'oc' => 'Kiokitani',
+ 'om' => 'Kioromo',
+ 'or' => 'Kioriya',
+ 'os' => 'Kiosetia',
+ 'pa' => 'Kipunjabi',
+ 'peo' => 'Kiajemi cha Kale',
+ 'pl' => 'Kipolandi',
+ 'ps' => 'Kipashto',
+ 'pt' => 'Kireno',
+ 'qu' => 'Kiquechua',
+ 'quc' => 'Kʼicheʼ',
+ 'rap' => 'Kirapanui',
+ 'rar' => 'Kiraratonga',
+ 'rm' => 'Kiromanshi',
+ 'rn' => 'Kirundi',
+ 'ro' => 'Kiromania',
+ 'rof' => 'Kirombo',
+ 'ru' => 'Kirusi',
+ 'rw' => 'Kinyarwanda',
+ 'rwk' => 'Kirwo',
+ 'sa' => 'Kisanskriti',
+ 'sad' => 'Kisandawe',
+ 'sam' => 'Kiaramu cha Wasamaria',
+ 'saq' => 'Kisamburu',
+ 'sbp' => 'Kisangu',
+ 'sd' => 'Kisindhi',
+ 'se' => 'Kisami cha Kaskazini',
+ 'seh' => 'Kisena',
+ 'ses' => 'Koyraboro Senni',
+ 'sg' => 'Kisango',
+ 'sh' => 'Kiserbia-kroeshia',
+ 'shi' => 'Tachelhit',
+ 'shu' => 'Kiarabu cha Chadi',
+ 'si' => 'Kisinhala',
+ 'sk' => 'Kislovakia',
+ 'sl' => 'Kislovenia',
+ 'sm' => 'Kisamoa',
+ 'sma' => 'Kisami cha Kusini',
+ 'smj' => 'Kisami cha Lule',
+ 'smn' => 'Kisami cha Inari',
+ 'sms' => 'Kisami cha Skolt',
+ 'sn' => 'Kishona',
+ 'snk' => 'Kisoninke',
+ 'so' => 'Kisomali',
+ 'sq' => 'Kialbania',
+ 'sr' => 'Kiserbia',
+ 'ss' => 'Kiswati',
+ 'ssy' => 'Kisaho',
+ 'st' => 'Kisotho cha Kusini',
+ 'su' => 'Kisunda',
+ 'suk' => 'Kisukuma',
+ 'sus' => 'Kisusu',
+ 'sv' => 'Kiswidi',
+ 'sw' => 'Kiswahili',
+ 'swb' => 'Shikomor',
+ 'swc' => 'Kingwana',
+ 'ta' => 'Kitamil',
+ 'te' => 'Kitelugu',
+ 'tem' => 'Kitemne',
+ 'teo' => 'Kiteso',
+ 'tet' => 'Kitetum',
+ 'tg' => 'Kitajiki',
+ 'th' => 'Kitailandi',
+ 'ti' => 'Kitigrinya',
+ 'tk' => 'Kiturukimeni',
+ 'tlh' => 'Kiklingoni',
+ 'tn' => 'Kitswana',
+ 'to' => 'Kitonga',
+ 'tpi' => 'Kitokpisin',
+ 'tr' => 'Kituruki',
+ 'ts' => 'Kitsonga',
+ 'tt' => 'Kitatari',
+ 'tum' => 'Kitumbuka',
+ 'tw' => 'Kitwi',
+ 'twq' => 'Kitasawaq',
+ 'ty' => 'Kitahiti',
+ 'tzm' => 'Central Atlas Tamazight',
+ 'ug' => 'Kiuiguri',
+ 'uk' => 'Kiukrania',
+ 'und' => 'Lugha Isiyojulikana',
+ 'ur' => 'Kiurdu',
+ 'uz' => 'Kiuzbeki',
+ 'vai' => 'Kivai',
+ 've' => 'Kivenda',
+ 'vi' => 'Kivietinamu',
+ 'vun' => 'Kivunjo',
+ 'wo' => 'Kiwolofu',
+ 'xh' => 'Kixhosa',
+ 'xog' => 'Kisoga',
+ 'yao' => 'Kiyao',
+ 'ybb' => 'Kiyemba',
+ 'yi' => 'Kiyidi',
+ 'yo' => 'Kiyoruba',
+ 'zgh' => 'Tamaziti Msingi ya Kimoroko',
+ 'zh' => 'Kichina',
+ 'zh-hant' => 'Kichina cha Jadi',
+ 'zu' => 'Kizulu',
+ 'zxx' => 'Hakuna maudhui ya lugha',
+);
+
+$currencyNames = array(
+ 'AED' => 'dirham ya Falme za Kiarabu',
+ 'AFN' => 'Afghani ya Afuganistani',
+ 'ALL' => 'Lek ya Albania',
+ 'AMD' => 'Dram ya Armenia',
+ 'ANG' => 'Guilder ya Antili za Kiholanzi',
+ 'AOA' => 'kwanza ya Angola',
+ 'ARS' => 'Peso ya Ajentina',
+ 'AUD' => 'dola ya Australia',
+ 'AWG' => 'Florin ya Aruba',
+ 'AZN' => 'Manat ya Azebaijani',
+ 'BAM' => 'Convertible Mark ya Bosnia na Hezegovina',
+ 'BBD' => 'Dola ya Barbados',
+ 'BDT' => 'Taka ya Bangladeshi',
+ 'BGN' => 'Lev ya Bulgaria',
+ 'BHD' => 'dinari ya Bahareni',
+ 'BIF' => 'faranga ya Burundi',
+ 'BMD' => 'Dola ya Bermuda',
+ 'BND' => 'Dola ya Brunei',
+ 'BOB' => 'Boliviano ya Bolivia',
+ 'BRL' => 'Real ya Brazil',
+ 'BSD' => 'Dola ya Bahamas',
+ 'BTN' => 'Ngultrum ya Bhutan',
+ 'BWP' => 'pula ya Botswana',
+ 'BYR' => 'Ruble ya Belarusi',
+ 'BZD' => 'Dola ya Belize',
+ 'CAD' => 'dola ya Kanada',
+ 'CDF' => 'faranga ya Kongo',
+ 'CHF' => 'faranga ya Uswisi',
+ 'CLP' => 'Peso ya Chile',
+ 'CNY' => 'yuan ya Uchina',
+ 'COP' => 'Peso ya Kolombia',
+ 'CRC' => 'Colon ya Kostarika',
+ 'CUC' => 'Peso ya Cuba Inayoweza Kubadilishwa',
+ 'CUP' => 'Peso ya Cuba',
+ 'CVE' => 'eskudo ya Kepuvede',
+ 'CZK' => 'Koruna ya Jamhuri ya Cheki',
+ 'DJF' => 'faranga ya Jibuti',
+ 'DKK' => 'Krone ya Denmaki',
+ 'DOP' => 'Peso ya Dominika',
+ 'DZD' => 'dinari ya Aljeria',
+ 'EGP' => 'pauni ya Misri',
+ 'ERN' => 'nakfa ya Eritrea',
+ 'ETB' => 'birr ya Uhabeshi',
+ 'EUR' => 'yuro',
+ 'FJD' => 'Dola ya Fiji',
+ 'FKP' => 'Pauni ya Visiwa vya Falkland',
+ 'GBP' => 'pauni ya Uingereza',
+ 'GEL' => 'Lari ya Georgia',
+ 'GHC' => 'sedi ya Ghana',
+ 'GHS' => 'Cedi ya Ghana',
+ 'GIP' => 'Pauni ya Gibraltar',
+ 'GMD' => 'dalasi ya Gambia',
+ 'GNF' => 'faranga ya Guinea',
+ 'GNS' => 'faranga ya Gine',
+ 'GTQ' => 'Quetzal ya Guatemala',
+ 'GYD' => 'Dola ya Guyana',
+ 'HKD' => 'Dola ya Hong Kong',
+ 'HNL' => 'Lempira ya Hondurasi',
+ 'HRK' => 'Kuna ya Kroeshia',
+ 'HTG' => 'Gourde ya Haiti',
+ 'HUF' => 'Forint ya Hungaria',
+ 'IDR' => 'Rupiah ya Indonesia',
+ 'ILS' => 'Sheqel Mpya ya Israeli',
+ 'INR' => 'rupia ya India',
+ 'IQD' => 'Dinari ya Iraki',
+ 'IRR' => 'Rial ya Iran',
+ 'ISK' => 'Krona ya Isilandi',
+ 'JMD' => 'Dola ya Jamaica',
+ 'JOD' => 'Dinari ya Yordani',
+ 'JPY' => 'Yen ya Japani',
+ 'KES' => 'shilingi ya Kenya',
+ 'KGS' => 'Som ya Kirigistani',
+ 'KHR' => 'Riel ya Kambodia',
+ 'KMF' => 'faranga ya Komoro',
+ 'KPW' => 'Won ya Korea Kaskazini',
+ 'KRW' => 'Won ya Korea Kusini',
+ 'KWD' => 'Dinari ya Kuwaiti',
+ 'KYD' => 'Dola ya Visiwa vya Cayman',
+ 'KZT' => 'Tenge ya Kazakistani',
+ 'LAK' => 'Kip ya Laosi',
+ 'LBP' => 'Pauni ya Lebanon',
+ 'LKR' => 'Rupia ya Sirilanka',
+ 'LRD' => 'dola ya Liberia',
+ 'LSL' => 'loti ya Lesoto',
+ 'LTL' => 'Litas ya Lithuania',
+ 'LVL' => 'Lats ya Lativia',
+ 'LYD' => 'dinari ya Libya',
+ 'MAD' => 'dirham ya Moroko',
+ 'MDL' => 'Leu ya Moldova',
+ 'MGA' => 'Ariari ya Madagaska',
+ 'MKD' => 'Denar ya Masedonia',
+ 'MMK' => 'Kyat ya Myama',
+ 'MNT' => 'Tugrik ya Mongolia',
+ 'MOP' => 'Pataca ya Macau',
+ 'MRO' => 'Ouguiya ya Moritania',
+ 'MUR' => 'rupia ya Morisi',
+ 'MVR' => 'Rufiyaa ya Maldivi',
+ 'MWK' => 'kwacha ya Malawi',
+ 'MXN' => 'Peso ya Meksiko',
+ 'MYR' => 'Ringgit ya Malaysia',
+ 'MZM' => 'metikali ya Msumbiji (1980–2006)',
+ 'MZN' => 'Metikali ya Msumbiji',
+ 'NAD' => 'dola ya Namibia',
+ 'NGN' => 'naira ya Nijeria',
+ 'NIO' => 'Cordoba ya Nikaragua',
+ 'NOK' => 'Krone ya Norwe',
+ 'NPR' => 'Rupia ya Nepali',
+ 'NZD' => 'Dola ya Nyuzilandi',
+ 'OMR' => 'Rial ya Omani',
+ 'PAB' => 'Balboa ya Panama',
+ 'PEN' => 'Nuevo Sol ya Peru',
+ 'PGK' => 'Kina ya Papua New Guinea',
+ 'PHP' => 'Peso ya Ufilipino',
+ 'PKR' => 'Rupia ya Pakistani',
+ 'PLN' => 'Zloty ya Polandi',
+ 'PYG' => 'Guarani ya Paragwai',
+ 'QAR' => 'Rial ya Katari',
+ 'RON' => 'Leu ya Romania',
+ 'RSD' => 'Dinar ya Serbia',
+ 'RUB' => 'Ruble ya Urusi',
+ 'RWF' => 'faranga ya Rwanda',
+ 'SAR' => 'riyal ya Saudia',
+ 'SBD' => 'Dola ya Visiwa vya Solomon',
+ 'SCR' => 'rupia ya Ushelisheli',
+ 'SDG' => 'pauni ya Sudani',
+ 'SDP' => 'pauni ya Sudani (1957–1998)',
+ 'SEK' => 'Krona ya Uswidi',
+ 'SGD' => 'Dola ya Singapore',
+ 'SHP' => 'pauni ya Santahelena',
+ 'SLL' => 'leoni',
+ 'SOS' => 'shilingi ya Somalia',
+ 'SRD' => 'Dola ya Suriname',
+ 'SSP' => 'pauni ya Sudani Kusini',
+ 'STD' => 'dobra ya Sao Tome na Principe',
+ 'SYP' => 'Pauni ya Syria',
+ 'SZL' => 'lilangeni',
+ 'THB' => 'Baht ya Tailandi',
+ 'TJS' => 'Somoni ya Tajikistani',
+ 'TMT' => 'Manat ya Turukimenistani',
+ 'TND' => 'dinari ya Tunisia',
+ 'TOP' => 'Paʻanga ya Tonga',
+ 'TRY' => 'Lira ya Uturuki',
+ 'TTD' => 'Dola ya Trinidad na Tobago',
+ 'TWD' => 'Dola ya Taiwan',
+ 'TZS' => 'shilingi ya Tanzania',
+ 'UAH' => 'Hryvnia ya Ukrania',
+ 'UGX' => 'shilingi ya Uganda',
+ 'USD' => 'dola ya Marekani',
+ 'UYU' => 'Peso ya Urugwai',
+ 'UZS' => 'Som ya Uzibekistani',
+ 'VEF' => 'Bolivar ya Venezuela',
+ 'VND' => 'Dong ya Vietinamu',
+ 'VUV' => 'Vatu ya Vanuatu',
+ 'WST' => 'Tala ya Samoa',
+ 'XAF' => 'CFA faranga ya BEAC',
+ 'XCD' => 'Dola ya Karibea ya Mashariki',
+ 'XOF' => 'CFA faranga za BCEAO',
+ 'XPF' => 'Faranga ya CFP',
+ 'XXX' => 'Fedha Zisizojulikana',
+ 'YER' => 'Rial ya Yemeni',
+ 'ZAR' => 'randi ya Afrika Kusini',
+ 'ZMK' => 'kwacha ya Zambia (1968–2012)',
+ 'ZMW' => 'kwacha ya Zambia',
+ 'ZWD' => 'dola ya Zimbabwe',
+);
+
+$currencySymbols = array(
+ 'AED' => 'AED',
+ 'AFN' => 'AFN',
+ 'ALL' => 'ALL',
+ 'AMD' => 'AMD',
+ 'ANG' => 'ANG',
+ 'AOA' => 'AOA',
+ 'ARS' => 'ARS',
+ 'AUD' => 'A$',
+ 'AWG' => 'AWG',
+ 'AZN' => 'AZN',
+ 'BAM' => 'BAM',
+ 'BBD' => 'BBD',
+ 'BDT' => 'BDT',
+ 'BGN' => 'BGN',
+ 'BHD' => 'BHD',
+ 'BIF' => 'BIF',
+ 'BMD' => 'BMD',
+ 'BND' => 'BND',
+ 'BOB' => 'BOB',
+ 'BRL' => 'R$',
+ 'BSD' => 'BSD',
+ 'BTN' => 'BTN',
+ 'BWP' => 'BWP',
+ 'BYR' => 'BYR',
+ 'BZD' => 'BZD',
+ 'CAD' => 'CA$',
+ 'CDF' => 'CDF',
+ 'CHF' => 'CHF',
+ 'CLP' => 'CLP',
+ 'CNY' => 'CN¥',
+ 'COP' => 'COP',
+ 'CRC' => 'CRC',
+ 'CUC' => 'CUC',
+ 'CUP' => 'CUP',
+ 'CVE' => 'CVE',
+ 'CZK' => 'CZK',
+ 'DJF' => 'DJF',
+ 'DKK' => 'DKK',
+ 'DOP' => 'DOP',
+ 'DZD' => 'DZD',
+ 'EGP' => 'EGP',
+ 'ERN' => 'ERN',
+ 'ETB' => 'ETB',
+ 'EUR' => '€',
+ 'FJD' => 'FJD',
+ 'FKP' => 'FKP',
+ 'GBP' => '£',
+ 'GEL' => 'GEL',
+ 'GHS' => 'GHS',
+ 'GIP' => 'GIP',
+ 'GMD' => 'GMD',
+ 'GNF' => 'GNF',
+ 'GTQ' => 'GTQ',
+ 'GYD' => 'GYD',
+ 'HKD' => 'HK$',
+ 'HNL' => 'HNL',
+ 'HRK' => 'HRK',
+ 'HTG' => 'HTG',
+ 'HUF' => 'HUF',
+ 'IDR' => 'IDR',
+ 'ILS' => '₪',
+ 'INR' => '₹',
+ 'IQD' => 'IQD',
+ 'IRR' => 'IRR',
+ 'ISK' => 'ISK',
+ 'JMD' => 'JMD',
+ 'JOD' => 'JOD',
+ 'JPY' => 'JP¥',
+ 'KES' => 'Ksh',
+ 'KGS' => 'KGS',
+ 'KHR' => 'KHR',
+ 'KMF' => 'KMF',
+ 'KPW' => 'KPW',
+ 'KRW' => '₩',
+ 'KWD' => 'KWD',
+ 'KYD' => 'KYD',
+ 'KZT' => 'KZT',
+ 'LAK' => 'LAK',
+ 'LBP' => 'LBP',
+ 'LKR' => 'LKR',
+ 'LRD' => 'LRD',
+ 'LTL' => 'LTL',
+ 'LVL' => 'LVL',
+ 'LYD' => 'LYD',
+ 'MAD' => 'MAD',
+ 'MDL' => 'MDL',
+ 'MGA' => 'MGA',
+ 'MKD' => 'MKD',
+ 'MMK' => 'MMK',
+ 'MNT' => 'MNT',
+ 'MOP' => 'MOP',
+ 'MRO' => 'MRO',
+ 'MUR' => 'MUR',
+ 'MVR' => 'MVR',
+ 'MWK' => 'MWK',
+ 'MXN' => 'MX$',
+ 'MYR' => 'MYR',
+ 'MZN' => 'MZN',
+ 'NAD' => 'NAD',
+ 'NGN' => 'NGN',
+ 'NIO' => 'NIO',
+ 'NOK' => 'NOK',
+ 'NPR' => 'NPR',
+ 'NZD' => 'NZ$',
+ 'OMR' => 'OMR',
+ 'PAB' => 'PAB',
+ 'PEN' => 'PEN',
+ 'PGK' => 'PGK',
+ 'PHP' => 'PHP',
+ 'PKR' => 'PKR',
+ 'PLN' => 'PLN',
+ 'PYG' => 'PYG',
+ 'QAR' => 'QAR',
+ 'RON' => 'RON',
+ 'RSD' => 'RSD',
+ 'RUB' => 'RUB',
+ 'RWF' => 'RWF',
+ 'SAR' => 'SAR',
+ 'SBD' => 'SBD',
+ 'SCR' => 'SCR',
+ 'SDG' => 'SDG',
+ 'SEK' => 'SEK',
+ 'SGD' => 'SGD',
+ 'SHP' => 'SHP',
+ 'SLL' => 'SLL',
+ 'SOS' => 'SOS',
+ 'SRD' => 'SRD',
+ 'SSP' => 'SSP',
+ 'STD' => 'STD',
+ 'SYP' => 'SYP',
+ 'SZL' => 'SZL',
+ 'THB' => '฿',
+ 'TJS' => 'TJS',
+ 'TMT' => 'TMT',
+ 'TND' => 'TND',
+ 'TOP' => 'TOP',
+ 'TRY' => 'TRY',
+ 'TTD' => 'TTD',
+ 'TWD' => 'NT$',
+ 'TZS' => 'TSh',
+ 'UAH' => 'UAH',
+ 'UGX' => 'UGX',
+ 'USD' => 'US$',
+ 'UYU' => 'UYU',
+ 'UZS' => 'UZS',
+ 'VEF' => 'VEF',
+ 'VND' => '₫',
+ 'VUV' => 'VUV',
+ 'WST' => 'WST',
+ 'XAF' => 'FCFA',
+ 'XCD' => 'EC$',
+ 'XOF' => 'CFA',
+ 'XPF' => 'CFPF',
+ 'YER' => 'YER',
+ 'ZAR' => 'ZAR',
+ 'ZMW' => 'ZMW',
+);
+
+$countryNames = array(
+ 'AC' => 'Kisiwa cha Ascension',
+ 'AD' => 'Andora',
+ 'AE' => 'Falme za Kiarabu',
+ 'AF' => 'Afghanistan',
+ 'AG' => 'Antigua na Barbuda',
+ 'AI' => 'Anguilla',
+ 'AL' => 'Albania',
+ 'AM' => 'Armenia',
+ 'AN' => 'Antili za Uholanzi',
+ 'AO' => 'Angola',
+ 'AQ' => 'Antaktika',
+ 'AR' => 'Ajentina',
+ 'AS' => 'Samoa ya Marekani',
+ 'AT' => 'Austria',
+ 'AU' => 'Australia',
+ 'AW' => 'Aruba',
+ 'AX' => 'Visiwa vya Alandi',
+ 'AZ' => 'Azabajani',
+ 'BA' => 'Bosnia na Hezegovina',
+ 'BB' => 'Babadosi',
+ 'BD' => 'Bangladeshi',
+ 'BE' => 'Ubelgiji',
+ 'BF' => 'Bukinafaso',
+ 'BG' => 'Bulgaria',
+ 'BH' => 'Bahareni',
+ 'BI' => 'Burundi',
+ 'BJ' => 'Benin',
+ 'BL' => 'Santabathelemi',
+ 'BM' => 'Bermuda',
+ 'BN' => 'Brunei',
+ 'BO' => 'Bolivia',
+ 'BQ' => 'Uholanzi ya Karibiani',
+ 'BR' => 'Brazili',
+ 'BS' => 'Bahama',
+ 'BT' => 'Butani',
+ 'BV' => 'Kisiwa cha Bouvet',
+ 'BW' => 'Botswana',
+ 'BY' => 'Belarusi',
+ 'BZ' => 'Belize',
+ 'CA' => 'Kanada',
+ 'CC' => 'Visiwa vya Cocos (Keeling)',
+ 'CD' => 'Jamhuri ya Kidemokrasia ya Kongo',
+ 'CF' => 'Jamhuri ya Afrika ya Kati',
+ 'CG' => 'Kongo - Brazzaville',
+ 'CH' => 'Uswisi',
+ 'CI' => 'Côte d’Ivoire',
+ 'CK' => 'Visiwa vya Cook',
+ 'CL' => 'Chile',
+ 'CM' => 'Kameruni',
+ 'CN' => 'China',
+ 'CO' => 'Kolombia',
+ 'CP' => 'Kisiwa cha Clipperton',
+ 'CR' => 'Kostarika',
+ 'CU' => 'Kuba',
+ 'CV' => 'Kepuvede',
+ 'CW' => 'Kurakao',
+ 'CX' => 'Kisiwa cha Krismasi',
+ 'CY' => 'Saiprasi',
+ 'CZ' => 'Jamhuri ya Cheki',
+ 'DE' => 'Ujerumani',
+ 'DG' => 'Diego Garcia',
+ 'DJ' => 'Jibuti',
+ 'DK' => 'Denmaki',
+ 'DM' => 'Dominika',
+ 'DO' => 'Jamhuri ya Dominika',
+ 'DZ' => 'Aljeria',
+ 'EA' => 'Ceuta na Melilla',
+ 'EC' => 'Ekwado',
+ 'EE' => 'Estonia',
+ 'EG' => 'Misri',
+ 'EH' => 'Sahara Magharibi',
+ 'ER' => 'Eritrea',
+ 'ES' => 'Hispania',
+ 'ET' => 'Uhabeshi',
+ 'EU' => 'Umoja wa Ulaya',
+ 'FI' => 'Ufini',
+ 'FJ' => 'Fiji',
+ 'FK' => 'Visiwa vya Falkland',
+ 'FM' => 'Mikronesia',
+ 'FO' => 'Visiwa vya Faroe',
+ 'FR' => 'Ufaransa',
+ 'GA' => 'Gaboni',
+ 'GB' => 'Uingereza',
+ 'GD' => 'Grenada',
+ 'GE' => 'Jojia',
+ 'GF' => 'Gwiyana ya Ufaransa',
+ 'GG' => 'Guernsey',
+ 'GH' => 'Ghana',
+ 'GI' => 'Jibralta',
+ 'GL' => 'Grinlandi',
+ 'GM' => 'Gambia',
+ 'GN' => 'Gine',
+ 'GP' => 'Gwadelupe',
+ 'GQ' => 'Ginekweta',
+ 'GR' => 'Ugiriki',
+ 'GS' => 'Jojia Kusini na Visiwa vya Sandwich Kusini',
+ 'GT' => 'Gwatemala',
+ 'GU' => 'Gwam',
+ 'GW' => 'Ginebisau',
+ 'GY' => 'Guyana',
+ 'HK' => 'Hong Kong',
+ 'HM' => 'Kisiwa cha Heard na Visiwa vya McDonald',
+ 'HN' => 'Hondurasi',
+ 'HR' => 'Korasia',
+ 'HT' => 'Haiti',
+ 'HU' => 'Hungaria',
+ 'IC' => 'Visiwa vya Kanari',
+ 'ID' => 'Indonesia',
+ 'IE' => 'Ayalandi',
+ 'IL' => 'Israeli',
+ 'IM' => 'Isle of Man',
+ 'IN' => 'India',
+ 'IO' => 'Eneo la Uingereza katika Bahari Hindi',
+ 'IQ' => 'Iraki',
+ 'IR' => 'Iran',
+ 'IS' => 'Aislandi',
+ 'IT' => 'Italia',
+ 'JE' => 'Jersey',
+ 'JM' => 'Jamaika',
+ 'JO' => 'Yordani',
+ 'JP' => 'Japani',
+ 'KE' => 'Kenya',
+ 'KG' => 'Kirigizistani',
+ 'KH' => 'Kambodia',
+ 'KI' => 'Kiribati',
+ 'KM' => 'Komoro',
+ 'KN' => 'Santakitzi na Nevis',
+ 'KP' => 'Korea Kaskazini',
+ 'KR' => 'Korea Kusini',
+ 'KW' => 'Kuwaiti',
+ 'KY' => 'Visiwa vya Kayman',
+ 'KZ' => 'Kazakistani',
+ 'LA' => 'Laosi',
+ 'LB' => 'Lebanoni',
+ 'LC' => 'Santalusia',
+ 'LI' => 'Liechtenstein',
+ 'LK' => 'Sirilanka',
+ 'LR' => 'Liberia',
+ 'LS' => 'Lesoto',
+ 'LT' => 'Litwania',
+ 'LU' => 'Lasembagi',
+ 'LV' => 'Lativia',
+ 'LY' => 'Libya',
+ 'MA' => 'Moroko',
+ 'MC' => 'Monako',
+ 'MD' => 'Moldova',
+ 'ME' => 'Montenegro',
+ 'MF' => 'Saint Martin',
+ 'MG' => 'Madagaska',
+ 'MH' => 'Visiwa vya Marshal',
+ 'MK' => 'Masedonia',
+ 'ML' => 'Mali',
+ 'MM' => 'Myanmar (Burma)',
+ 'MN' => 'Mongolia',
+ 'MO' => 'Macau',
+ 'MP' => 'Visiwa vya Mariana vya Kaskazini',
+ 'MQ' => 'Martiniki',
+ 'MR' => 'Moritania',
+ 'MS' => 'Montserrati',
+ 'MT' => 'Malta',
+ 'MU' => 'Morisi',
+ 'MV' => 'Modivu',
+ 'MW' => 'Malawi',
+ 'MX' => 'Meksiko',
+ 'MY' => 'Malesia',
+ 'MZ' => 'Msumbiji',
+ 'NA' => 'Namibia',
+ 'NC' => 'Nyukaledonia',
+ 'NE' => 'Nijeri',
+ 'NF' => 'Kisiwa cha Norfolk',
+ 'NG' => 'Nigeria',
+ 'NI' => 'Nikaragwa',
+ 'NL' => 'Uholanzi',
+ 'NO' => 'Norwe',
+ 'NP' => 'Nepali',
+ 'NR' => 'Nauru',
+ 'NU' => 'Niue',
+ 'NZ' => 'Nyuzilandi',
+ 'OM' => 'Omani',
+ 'PA' => 'Panama',
+ 'PE' => 'Peru',
+ 'PF' => 'Polinesia ya Ufaransa',
+ 'PG' => 'Papua',
+ 'PH' => 'Filipino',
+ 'PK' => 'Pakistani',
+ 'PL' => 'Polandi',
+ 'PM' => 'Santapieri na Mikeloni',
+ 'PN' => 'Pitkairni',
+ 'PR' => 'Pwetoriko',
+ 'PS' => 'Palestina',
+ 'PT' => 'Ureno',
+ 'PW' => 'Palau',
+ 'PY' => 'Paragwai',
+ 'QA' => 'Katari',
+ 'QO' => 'Oceania ya Nje',
+ 'RE' => 'Riyunioni',
+ 'RO' => 'Romania',
+ 'RS' => 'Serbia',
+ 'RU' => 'Urusi',
+ 'RW' => 'Rwanda',
+ 'SA' => 'Saudi',
+ 'SB' => 'Visiwa vya Solomon',
+ 'SC' => 'Shelisheli',
+ 'SD' => 'Sudani',
+ 'SE' => 'Uswidi',
+ 'SG' => 'Singapoo',
+ 'SH' => 'Santahelena',
+ 'SI' => 'Slovenia',
+ 'SJ' => 'Svalbard na Jan Mayen',
+ 'SK' => 'Slovakia',
+ 'SL' => 'Siera Leoni',
+ 'SM' => 'Samarino',
+ 'SN' => 'Senegali',
+ 'SO' => 'Somalia',
+ 'SR' => 'Surinamu',
+ 'SS' => 'Sudani Kusini',
+ 'ST' => 'São Tomé na Príncipe',
+ 'SV' => 'Elsavado',
+ 'SX' => 'Santamatini',
+ 'SY' => 'Siria',
+ 'SZ' => 'Uswazi',
+ 'TA' => 'Tristan da Cunha',
+ 'TC' => 'Visiwa vya Turki na Kaiko',
+ 'TD' => 'Chadi',
+ 'TF' => 'Maeneo ya Kusini ya Ufaransa',
+ 'TG' => 'Togo',
+ 'TH' => 'Tailandi',
+ 'TJ' => 'Tajikistani',
+ 'TK' => 'Tokelau',
+ 'TL' => 'Timor ya Mashariki',
+ 'TM' => 'Turukimenistani',
+ 'TN' => 'Tunisia',
+ 'TO' => 'Tonga',
+ 'TR' => 'Uturuki',
+ 'TT' => 'Trinidad na Tobago',
+ 'TV' => 'Tuvalu',
+ 'TW' => 'Taiwani',
+ 'TZ' => 'Tanzania',
+ 'UA' => 'Ukraini',
+ 'UG' => 'Uganda',
+ 'UM' => 'Visiwa Vidogo vya Nje vya Marekani',
+ 'US' => 'US',
+ 'UY' => 'Urugwai',
+ 'UZ' => 'Uzibekistani',
+ 'VA' => 'Vatikani',
+ 'VC' => 'Santavisenti na Grenadini',
+ 'VE' => 'Venezuela',
+ 'VG' => 'Visiwa vya Virgin vya Uingereza',
+ 'VI' => 'Visiwa vya Virgin vya Marekani',
+ 'VN' => 'Vietinamu',
+ 'VU' => 'Vanuatu',
+ 'WF' => 'Walis na Futuna',
+ 'WS' => 'Samoa',
+ 'XK' => 'Kosovo',
+ 'YE' => 'Yemeni',
+ 'YT' => 'Mayotte',
+ 'ZA' => 'Afrika Kusini',
+ 'ZM' => 'Zambia',
+ 'ZW' => 'Zimbabwe',
+);
+
+$timeUnits = array(
+ 'day-future-one' => 'baada ya siku {0}',
+ 'day-future-other' => 'baada ya siku {0}',
+ 'day-narrow-future-one' => 'baada ya siku {0}',
+ 'day-narrow-future-other' => 'baada ya siku {0}',
+ 'day-narrow-past-one' => 'siku {0} iliyopita',
+ 'day-narrow-past-other' => 'siku {0} zilizopita',
+ 'day-one' => 'siku {0}',
+ 'day-other' => 'siku {0}',
+ 'day-past-one' => 'siku {0} iliyopita',
+ 'day-past-other' => 'siku {0} zilizopita',
+ 'day-short-future-one' => 'baada ya siku {0}',
+ 'day-short-future-other' => 'baada ya siku {0}',
+ 'day-short-past-one' => 'siku {0} iliyopita',
+ 'day-short-past-other' => 'siku {0} zilizopita',
+ 'hour-future-one' => 'baada ya saa {0}',
+ 'hour-future-other' => 'baada ya saa {0}',
+ 'hour-narrow-future-one' => 'baada ya saa {0}',
+ 'hour-narrow-future-other' => 'baada ya saa {0}',
+ 'hour-narrow-past-one' => 'Saa {0} iliyopita',
+ 'hour-narrow-past-other' => 'Saa {0} zilizopita',
+ 'hour-one' => 'saa {0}',
+ 'hour-other' => 'saa {0}',
+ 'hour-past-one' => 'saa {0} iliyopita',
+ 'hour-past-other' => 'saa {0} zilizopita',
+ 'hour-short-future-one' => 'baada ya saa {0}',
+ 'hour-short-future-other' => 'baada ya saa {0}',
+ 'hour-short-past-one' => 'Saa {0} iliyopita',
+ 'hour-short-past-other' => 'Saa {0} zilizopita',
+ 'microsecond-one' => 'mikrosekunde {0}',
+ 'microsecond-other' => 'mikrosekunde {0}',
+ 'millisecond-one' => 'millisekunde {0}',
+ 'millisecond-other' => 'millisekunde {0}',
+ 'minute-future-one' => 'baada ya dakika {0}',
+ 'minute-future-other' => 'baada ya dakika {0}',
+ 'minute-narrow-future-one' => 'baada ya dakika {0}',
+ 'minute-narrow-future-other' => 'baada ya dakika {0}',
+ 'minute-narrow-past-one' => 'Dakika {0} iliyopita',
+ 'minute-narrow-past-other' => 'Dakika {0} zilizopita',
+ 'minute-one' => 'dakika {0}',
+ 'minute-other' => 'dakika {0}',
+ 'minute-past-one' => 'dakika {0} iliyopita',
+ 'minute-past-other' => 'dakika {0} zilizopita',
+ 'minute-short-future-one' => 'baada ya dakika {0}',
+ 'minute-short-future-other' => 'baada ya dakika {0}',
+ 'minute-short-past-one' => 'Dakika {0} iliyopita',
+ 'minute-short-past-other' => 'Dakika {0} zilizopita',
+ 'month-future-one' => 'baada ya mwezi {0}',
+ 'month-future-other' => 'baada ya miezi {0}',
+ 'month-narrow-future-one' => 'baada ya mwezi {0}',
+ 'month-narrow-future-other' => 'baada ya miezi {0}',
+ 'month-narrow-past-one' => 'mwezi {0} uliopita',
+ 'month-narrow-past-other' => 'miezi {0} iliyopita',
+ 'month-one' => 'mwezi {0}',
+ 'month-other' => 'miezi {0}',
+ 'month-past-one' => 'mwezi {0} uliopita',
+ 'month-past-other' => 'miezi {0} iliyopita',
+ 'month-short-future-one' => 'baada ya mwezi {0}',
+ 'month-short-future-other' => 'baada ya miezi {0}',
+ 'month-short-past-one' => 'mwezi {0} uliopita',
+ 'month-short-past-other' => 'miezi {0} iliyopita',
+ 'nanosecond-one' => 'nanosekunde {0}',
+ 'nanosecond-other' => 'nanosekunde {0}',
+ 'quarter-future-one' => 'baada ya robo {0}',
+ 'quarter-future-other' => 'baada ya robo {0}',
+ 'quarter-narrow-future-one' => 'baada ya robo {0}',
+ 'quarter-narrow-future-other' => 'baada ya robo {0}',
+ 'quarter-narrow-past-one' => 'robo {0} iliyopita',
+ 'quarter-narrow-past-other' => 'robo {0} zilizopita',
+ 'quarter-past-one' => 'robo {0} iliyopita',
+ 'quarter-past-other' => 'robo {0} zilizopita',
+ 'quarter-short-future-one' => 'baada ya robo {0}',
+ 'quarter-short-future-other' => 'baada ya robo {0}',
+ 'quarter-short-past-one' => 'robo {0} iliyopita',
+ 'quarter-short-past-other' => 'robo {0} zilizopita',
+ 'second-future-one' => 'baada ya sekunde {0}',
+ 'second-future-other' => 'baada ya sekunde {0}',
+ 'second-narrow-future-one' => 'baada ya sekunde {0}',
+ 'second-narrow-future-other' => 'baada ya sekunde {0}',
+ 'second-narrow-past-one' => 'Sekunde {0} iliyopita',
+ 'second-narrow-past-other' => 'Sekunde {0} zilizopita',
+ 'second-one' => 'sekunde {0}',
+ 'second-other' => 'sekunde {0}',
+ 'second-past-one' => 'Sekunde {0} iliyopita',
+ 'second-past-other' => 'Sekunde {0} zilizopita',
+ 'second-short-future-one' => 'baada ya sekunde {0}',
+ 'second-short-future-other' => 'baada ya sekunde {0}',
+ 'second-short-past-one' => 'Sekunde {0} iliyopita',
+ 'second-short-past-other' => 'Sekunde {0} zilizopita',
+ 'week-future-one' => 'baada ya wiki {0}',
+ 'week-future-other' => 'baada ya wiki {0}',
+ 'week-narrow-future-one' => 'baada ya wiki {0}',
+ 'week-narrow-future-other' => 'baada ya wiki {0}',
+ 'week-narrow-past-one' => 'wiki {0} iliyopita',
+ 'week-narrow-past-other' => 'wiki {0} zilizopita',
+ 'week-one' => 'wiki {0}',
+ 'week-other' => 'wiki {0}',
+ 'week-past-one' => 'wiki {0} iliyopita',
+ 'week-past-other' => 'wiki {0} zilizopita',
+ 'week-short-future-one' => 'baada ya wiki {0}',
+ 'week-short-future-other' => 'baada ya wiki {0}',
+ 'week-short-past-one' => 'wiki {0} iliyopita',
+ 'week-short-past-other' => 'wiki {0} zilizopita',
+ 'year-future-one' => 'baada ya mwaka {0}',
+ 'year-future-other' => 'baada ya miaka {0}',
+ 'year-narrow-future-one' => 'baada ya mwaka {0}',
+ 'year-narrow-future-other' => 'baada ya miaka {0}',
+ 'year-narrow-past-one' => 'mwaka {0} uliopita',
+ 'year-narrow-past-other' => 'miaka {0} iliyopita',
+ 'year-one' => 'mwaka {0}',
+ 'year-other' => 'miaka {0}',
+ 'year-past-one' => 'mwaka {0} uliopita',
+ 'year-past-other' => 'miaka {0} iliyopita',
+ 'year-short-future-one' => 'baada ya mwaka {0}',
+ 'year-short-future-other' => 'baada ya miaka {0}',
+ 'year-short-past-one' => 'mwaka {0} uliopita',
+ 'year-short-past-other' => 'miaka {0} iliyopita',
+);
diff --git a/MLEB/cldr/CldrNames/CldrNamesTa.php b/MLEB/cldr/CldrNames/CldrNamesTa.php
new file mode 100644
index 00000000..d430e238
--- /dev/null
+++ b/MLEB/cldr/CldrNames/CldrNamesTa.php
@@ -0,0 +1,1201 @@
+<?php
+
+$languageNames = array(
+ 'aa' => 'அஃபார்',
+ 'ab' => 'அப்காஜியான்',
+ 'ace' => 'ஆச்சினீஸ்',
+ 'ach' => 'அகோலி',
+ 'ada' => 'அதாங்மே',
+ 'ady' => 'அதகே',
+ 'ae' => 'அவெஸ்தான்',
+ 'aeb' => 'துனிசிய அரபு',
+ 'af' => 'ஆஃப்ரிகான்ஸ்',
+ 'afh' => 'அஃப்ரிஹிலி',
+ 'agq' => 'அகெம்',
+ 'ain' => 'ஐனு',
+ 'ak' => 'அகான்',
+ 'akk' => 'அக்கேதியன்',
+ 'ale' => 'அலூட்',
+ 'alt' => 'தெற்கு அல்தை',
+ 'am' => 'அம்ஹாரிக்',
+ 'an' => 'ஆர்கோனீஸ்',
+ 'ang' => 'பழைய ஆங்கிலம்',
+ 'anp' => 'அங்கிகா',
+ 'ar' => 'அரபிக்',
+ 'ar-001' => 'மாடர்ன் ஸ்டாண்டர்ட் அரபிக்',
+ 'arc' => 'அராமைக்',
+ 'arn' => 'மபுசே',
+ 'arp' => 'அரபஹோ',
+ 'arw' => 'அராவாக்',
+ 'as' => 'அஸ்ஸாமி',
+ 'asa' => 'அசு',
+ 'ast' => 'அஸ்துரியன்',
+ 'av' => 'அவேரிக்',
+ 'awa' => 'அவதி',
+ 'ay' => 'அய்மரா',
+ 'az' => 'அஸர்பைஜானி',
+ 'ba' => 'பாஷ்கிர்',
+ 'bal' => 'பெலுசி',
+ 'ban' => 'பலினீஸ்',
+ 'bas' => 'பாஸா',
+ 'be' => 'பெலாருஷியன்',
+ 'bej' => 'பேஜா',
+ 'bem' => 'பெம்பா',
+ 'bez' => 'பெனா',
+ 'bfq' => 'படகா',
+ 'bg' => 'பல்கேரியன்',
+ 'bho' => 'போஜ்பூரி',
+ 'bi' => 'பிஸ்லாமா',
+ 'bik' => 'பிகோல்',
+ 'bin' => 'பினி',
+ 'bla' => 'சிக்சிகா',
+ 'bm' => 'பம்பாரா',
+ 'bn' => 'வங்காளம்',
+ 'bo' => 'திபெத்தியன்',
+ 'bpy' => 'பிஷ்ணுப்பிரியா',
+ 'br' => 'பிரெட்டன்',
+ 'bra' => 'ப்ராஜ்',
+ 'brx' => 'போடோ',
+ 'bs' => 'போஸ்னியன்',
+ 'bua' => 'புரியாத்',
+ 'bug' => 'புகினீஸ்',
+ 'byn' => 'ப்லின்',
+ 'ca' => 'கேட்டலான்',
+ 'cad' => 'கேடோ',
+ 'car' => 'கரீப்',
+ 'cch' => 'ஆட்சம்',
+ 'ce' => 'செசென்',
+ 'ceb' => 'செபுவானோ',
+ 'cgg' => 'சிகா',
+ 'ch' => 'சாமோரோ',
+ 'chb' => 'சிப்சா',
+ 'chg' => 'ஷகதை',
+ 'chk' => 'சூகிசே',
+ 'chm' => 'மாரி',
+ 'chn' => 'சினூக் ஜார்கான்',
+ 'cho' => 'சோக்தௌ',
+ 'chp' => 'சிபெவ்யான்',
+ 'chr' => 'செரொகி',
+ 'chy' => 'செயேனி',
+ 'ckb' => 'சொரானி குர்திஷ்',
+ 'co' => 'கோர்சிகன்',
+ 'cop' => 'காப்டிக்',
+ 'cr' => 'க்ரீ',
+ 'crh' => 'கிரிமியன் துர்க்கி',
+ 'cs' => 'செக்',
+ 'csb' => 'கஷுபியன்',
+ 'cu' => 'சர்ச் ஸ்லாவிக்',
+ 'cv' => 'சுவாஷ்',
+ 'cy' => 'வெல்ஷ்',
+ 'da' => 'டேனிஷ்',
+ 'dak' => 'தகோடா',
+ 'dar' => 'தார்குவா',
+ 'dav' => 'டைடா',
+ 'de' => 'ஜெர்மன்',
+ 'de-at' => 'ஆஸ்திரிய ஜெர்மன்',
+ 'de-ch' => 'ஸ்விஸ் ஹை ஜெர்மன்',
+ 'del' => 'தெலாவேர்',
+ 'den' => 'ஸ்லாவ்',
+ 'dgr' => 'டோக்ரிப்',
+ 'din' => 'டின்கா',
+ 'dje' => 'சார்மா',
+ 'doi' => 'டோக்ரி',
+ 'dsb' => 'லோயர் சோர்பியன்',
+ 'dua' => 'டுவாலா',
+ 'dum' => 'மத்திய டச்சு',
+ 'dv' => 'திவேஹி',
+ 'dyo' => 'ஜோலா-ஃபோன்யி',
+ 'dyu' => 'ட்யூலா',
+ 'dz' => 'பூடானி',
+ 'ebu' => 'எம்பு',
+ 'ee' => 'ஈவ்',
+ 'efi' => 'எஃபிக்',
+ 'egy' => 'பண்டைய எகிப்தியன்',
+ 'eka' => 'ஈகாஜுக்',
+ 'el' => 'கிரேக்கம்',
+ 'elx' => 'எலமைட்',
+ 'en' => 'ஆங்கிலம்',
+ 'en-au' => 'ஆஸ்திரேலியன் ஆங்கிலம்',
+ 'en-ca' => 'கனடியன் ஆங்கிலம்',
+ 'en-gb' => 'பிரிட்டிஷ் ஆங்கிலம்',
+ 'en-us' => 'அமெரிக்க ஆங்கிலம்',
+ 'enm' => 'மத்திய ஆங்கிலம்',
+ 'eo' => 'எஸ்பரேன்டோ',
+ 'es' => 'ஸ்பானிஷ்',
+ 'es-419' => 'லத்தின் அமெரிக்க ஸ்பானிஷ்',
+ 'es-es' => 'ஐரோப்பிய ஸ்பானிஷ்',
+ 'es-mx' => 'மெக்சிகன் ஸ்பானிஷ்',
+ 'et' => 'எஸ்டோனியன்',
+ 'eu' => 'பஸ்க்',
+ 'ewo' => 'எவோன்டோ',
+ 'fa' => 'பெர்ஷியன்',
+ 'fan' => 'ஃபங்க்',
+ 'fat' => 'ஃபான்டி',
+ 'ff' => 'ஃபுலா',
+ 'fi' => 'ஃபின்னிஷ்',
+ 'fil' => 'ஃபிலிபினோ',
+ 'fj' => 'ஃபிஜியன்',
+ 'fo' => 'ஃபரோயிஸ்',
+ 'fon' => 'ஃபான்',
+ 'fr' => 'பிரெஞ்சு',
+ 'fr-ca' => 'கனடிய பிரெஞ்சு',
+ 'fr-ch' => 'ஸ்விஸ் பிரஞ்சு',
+ 'frm' => 'மத்திய ஃப்ரென்ச்',
+ 'fro' => 'பழைய ஃப்ரென்ச்',
+ 'frr' => 'வடக்கு ஃப்ரிஸியான்',
+ 'frs' => 'கிழக்கு ஃப்ரிஸியான்',
+ 'fur' => 'ஃப்ரியூலியன்',
+ 'fy' => 'மேற்கத்திய ஃப்ரிஷியன்',
+ 'ga' => 'ஐரிஷ்',
+ 'gaa' => 'கா',
+ 'gag' => 'காகௌஸ்',
+ 'gay' => 'கயோ',
+ 'gba' => 'பயா',
+ 'gd' => 'ஸ்காட்ஸ் கேலிக்',
+ 'gez' => 'கீஜ்',
+ 'gil' => 'கில்பெர்டீஸ்',
+ 'gl' => 'காலிஸியன்',
+ 'gmh' => 'மத்திய ஹை ஜெர்மன்',
+ 'gn' => 'குரானி',
+ 'goh' => 'பழைய ஹை ஜெர்மன்',
+ 'gon' => 'கோன்டி',
+ 'gor' => 'கோரோன்டலோ',
+ 'got' => 'கோதிக்',
+ 'grb' => 'க்ரேபோ',
+ 'grc' => 'பண்டைய கிரேக்கம்',
+ 'gsw' => 'ஸ்விஸ் ஜெர்மன்',
+ 'gu' => 'குஜராத்தி',
+ 'guz' => 'குஸி',
+ 'gv' => 'மேங்க்ஸ்',
+ 'gwi' => 'குவிசின்',
+ 'ha' => 'ஹௌஸா',
+ 'hai' => 'ஹைடா',
+ 'haw' => 'ஹவாயியன்',
+ 'he' => 'ஹீப்ரூ',
+ 'hi' => 'இந்தி',
+ 'hif' => 'பிஜி இந்தி',
+ 'hil' => 'ஹிலிகாய்னான்',
+ 'hit' => 'ஹிட்டைட்',
+ 'hmn' => 'மாங்க்',
+ 'ho' => 'ஹிரி மோட்டு',
+ 'hr' => 'குரோஷியன்',
+ 'hsb' => 'அப்பர் சோர்பியான்',
+ 'ht' => 'ஹைத்தியன்',
+ 'hu' => 'ஹங்கேரியன்',
+ 'hup' => 'ஹுபா',
+ 'hy' => 'ஆர்மேனியன்',
+ 'hz' => 'ஹெரேரோ',
+ 'ia' => 'இண்டர்லிங்வா',
+ 'iba' => 'இபான்',
+ 'id' => 'இந்தோனேஷியன்',
+ 'ie' => 'இன்டர்லிங்',
+ 'ig' => 'இக்போ',
+ 'ii' => 'சிசுவான் ஈ',
+ 'ik' => 'இனுபியாக்',
+ 'ilo' => 'இலோகோ',
+ 'inh' => 'இங்குஷ்',
+ 'io' => 'இடோ',
+ 'is' => 'ஐஸ்லென்டிக்',
+ 'it' => 'இத்தாலியன்',
+ 'iu' => 'இனுகிடூட்',
+ 'ja' => 'ஜப்பானியம்',
+ 'jbo' => 'லோஜ்பன்',
+ 'jgo' => 'நகொம்பா',
+ 'jmc' => 'மாசெம்',
+ 'jpr' => 'ஜூதேயோ-பெர்ஷியன்',
+ 'jrb' => 'ஜூதேயோ-அராபிக்',
+ 'jv' => 'ஜாவானீஸ்',
+ 'ka' => 'ஜார்ஜியன்',
+ 'kaa' => 'காரா-கல்பாக்',
+ 'kab' => 'கபாய்ல்',
+ 'kac' => 'காசின்',
+ 'kaj' => 'ஜ்ஜூ',
+ 'kam' => 'கம்பா',
+ 'kaw' => 'காவி',
+ 'kbd' => 'கபார்டியன்',
+ 'kcg' => 'தையாப்',
+ 'kde' => 'மகொண்டே',
+ 'kea' => 'கபுவெர்தியானு',
+ 'kfo' => 'கோரோ',
+ 'kg' => 'காங்கோ',
+ 'kha' => 'காஸி',
+ 'kho' => 'கோதானீஸ்',
+ 'khq' => 'கொய்ரா சீனீ',
+ 'ki' => 'கிகுயூ',
+ 'kj' => 'குவான்யாமா',
+ 'kk' => 'கசாக்',
+ 'kl' => 'கலாலிசூட்',
+ 'kln' => 'கலின்ஜின்',
+ 'km' => 'கெமெர்',
+ 'kmb' => 'கிம்புன்து',
+ 'kn' => 'கன்னடம்',
+ 'ko' => 'கொரியன்',
+ 'koi' => 'கொமி-பெர்ம்யாக்',
+ 'kok' => 'கொங்கணி',
+ 'kos' => 'கோஸ்ரைன்',
+ 'kpe' => 'க்பெல்லே',
+ 'kr' => 'கனுரி',
+ 'krc' => 'கராசே-பல்கார்',
+ 'krl' => 'கரேலியன்',
+ 'kru' => 'குருக்',
+ 'ks' => 'காஷ்மிரி',
+ 'ksb' => 'ஷம்பாலா',
+ 'ksf' => 'பாஃபியா',
+ 'ku' => 'குர்திஷ்',
+ 'kum' => 'கும்இக்',
+ 'kut' => 'குடேனை',
+ 'kv' => 'கோமி',
+ 'kw' => 'கார்னிஷ்',
+ 'ky' => 'கிர்கிஸ்',
+ 'la' => 'லத்தின்',
+ 'lad' => 'லடினோ',
+ 'lag' => 'லங்கி',
+ 'lah' => 'லஹன்டா',
+ 'lam' => 'லம்பா',
+ 'lb' => 'லக்ஸம்போர்கிஷ்',
+ 'lez' => 'லெஜ்ஜியன்',
+ 'lg' => 'கான்டா',
+ 'li' => 'லிம்பர்கிஷ்',
+ 'lkt' => 'லகோடா',
+ 'ln' => 'லிங்காலா',
+ 'lo' => 'லாவோ',
+ 'lol' => 'மோங்கோ',
+ 'loz' => 'லோசி',
+ 'lt' => 'லிதுவேனியன்',
+ 'lu' => 'லுபா-கடாங்கா',
+ 'lua' => 'லுபா-லுலுலா',
+ 'lui' => 'லுய்சேனோ',
+ 'lun' => 'லூன்டா',
+ 'luo' => 'லுயோ',
+ 'lus' => 'லுஷய்',
+ 'luy' => 'லுயியா',
+ 'lv' => 'லாட்வியன்',
+ 'mad' => 'மதுரீஸ்',
+ 'mag' => 'மகாஹி',
+ 'mai' => 'மைதிலி',
+ 'mak' => 'மகாசார்',
+ 'man' => 'மான்டிங்கோ',
+ 'mas' => 'மாசாய்',
+ 'mdf' => 'மோக்க்ஷா',
+ 'mdr' => 'மான்டார்',
+ 'men' => 'மென்டீ',
+ 'mer' => 'மெரு',
+ 'mfe' => 'மொரிசியன்',
+ 'mg' => 'மலகாஸி',
+ 'mga' => 'மத்திய ஐரிஷ்',
+ 'mgh' => 'மகுவா-மீட்டோ',
+ 'mgo' => 'மேடா',
+ 'mh' => 'மார்ஷெலிஷ்',
+ 'mi' => 'மௌரி',
+ 'mic' => 'மிக்மாக்',
+ 'min' => 'மின்னாங்கபௌ',
+ 'mk' => 'மாஸிடோனியன்',
+ 'ml' => 'மலையாளம்',
+ 'mn' => 'மங்கோலியன்',
+ 'mnc' => 'மன்சு',
+ 'mni' => 'மனிபூரி',
+ 'moh' => 'மோஹாவ்க்',
+ 'mos' => 'மோஸ்ஸி',
+ 'mr' => 'மராத்தி',
+ 'ms' => 'மலாய்',
+ 'mt' => 'மால்டிஸ்',
+ 'mua' => 'முன்டாங்',
+ 'mul' => 'பல மொழிகள்',
+ 'mus' => 'க்ரீக்',
+ 'mwl' => 'மிரான்டீஸ்',
+ 'mwr' => 'மார்வாரி',
+ 'my' => 'பர்மிஸ்',
+ 'myv' => 'ஏர்ஜியா',
+ 'na' => 'நவ்ரூ',
+ 'nap' => 'நியோபோலிடன்',
+ 'naq' => 'நாமா',
+ 'nb' => 'நார்வேஜியன் பொக்மால்',
+ 'nd' => 'வடக்கு தெபெலே',
+ 'nds' => 'லோ ஜெர்மன்',
+ 'ne' => 'நேபாளி',
+ 'new' => 'நெவாரி',
+ 'ng' => 'தோங்கா',
+ 'nia' => 'நியாஸ்',
+ 'niu' => 'நியூவான்',
+ 'nl' => 'டச்சு',
+ 'nl-be' => 'பிலெமிஷ்',
+ 'nmg' => 'க்வாசியோ',
+ 'nn' => 'நார்வேஜியன் நியூநார்ஸ்க்',
+ 'no' => 'நார்வே',
+ 'nog' => 'நோகை',
+ 'non' => 'பழைய நோர்ஸ்',
+ 'nqo' => 'என்‘கோ',
+ 'nr' => 'தெற்கு தெபெலே',
+ 'nso' => 'வடக்கு சோதோ',
+ 'nus' => 'நியூர்',
+ 'nv' => 'நவாஜோ',
+ 'nwc' => 'பாரம்பரிய நேவாரி',
+ 'ny' => 'நயன்ஜா',
+ 'nym' => 'நியாம்வேஜி',
+ 'nyn' => 'நியான்கோலே',
+ 'nyo' => 'நியோரோ',
+ 'nzi' => 'நிஜ்மா',
+ 'oc' => 'ஒக்கிடன்',
+ 'oj' => 'ஓஜிபவா',
+ 'om' => 'ஒரோமோ',
+ 'or' => 'ஒரியா',
+ 'os' => 'ஒசெட்டிக்',
+ 'osa' => 'ஓசேஜ்',
+ 'ota' => 'ஒட்டோமன் துர்க்கி',
+ 'pa' => 'பஞ்சாபி',
+ 'pag' => 'பன்காசினன்',
+ 'pal' => 'பாஹ்லவி',
+ 'pam' => 'பம்பாங்கா',
+ 'pap' => 'பபியேமென்டோ',
+ 'pau' => 'பலௌவ்ன்',
+ 'pdc' => 'பென்சில்வேனிய ஜெர்மன்',
+ 'peo' => 'பழைய பெர்ஷியன்',
+ 'phn' => 'ஃபொனிஷியன்',
+ 'pi' => 'பாலி',
+ 'pl' => 'போலிஷ்',
+ 'pon' => 'ஃபோன்பெயென்',
+ 'pro' => 'பழைய ப்ரோவென்சால்',
+ 'ps' => 'பஷ்தோ',
+ 'pt' => 'போர்ச்சுக்கீஸ்',
+ 'pt-br' => 'போர்ச்சுகீஸ் (பிரேசில்)',
+ 'pt-pt' => 'ஐரோப்பிய போர்ச்சுகீஸ்',
+ 'qu' => 'கிவேசுவா',
+ 'quc' => 'கீசீ',
+ 'raj' => 'ராஜஸ்தானி',
+ 'rap' => 'ரபனுய்',
+ 'rar' => 'ரரோடோங்கன்',
+ 'rm' => 'ரோமான்ஷ்',
+ 'rn' => 'ருண்டி',
+ 'ro' => 'ரோமேனியன்',
+ 'ro-md' => 'மோல்டாவியன்',
+ 'rof' => 'ரோம்போ',
+ 'rom' => 'ரோமானி',
+ 'ru' => 'ரஷியன்',
+ 'rup' => 'அரோமானியன்',
+ 'rw' => 'கின்யாருவான்டா',
+ 'rwk' => 'ருவா',
+ 'sa' => 'சமஸ்கிருதம்',
+ 'sad' => 'சான்டாவே',
+ 'sah' => 'யாகுட்',
+ 'sam' => 'சமாரிடன் அராமைக்',
+ 'saq' => 'சம்புரு',
+ 'sas' => 'சாசாக்',
+ 'sat' => 'சான்டாலி',
+ 'saz' => 'சௌராஷ்டிரம்',
+ 'sbp' => 'சங்கு',
+ 'sc' => 'சாடினியன்',
+ 'scn' => 'சிசிலியன்',
+ 'sco' => 'ஸ்காட்ஸ்',
+ 'sd' => 'சிந்தி',
+ 'se' => 'வடக்கு சமி',
+ 'seh' => 'செனா',
+ 'sel' => 'செல்குப்',
+ 'ses' => 'கொய்ராபோரோ சென்னி',
+ 'sg' => 'சாங்கோ',
+ 'sga' => 'பழைய ஐரிஷ்',
+ 'sh' => 'செர்போ-க்ரோஷியன்',
+ 'shi' => 'தசேஹித்',
+ 'shn' => 'ஷான்',
+ 'si' => 'சிங்களம்',
+ 'sid' => 'சிடாமோ',
+ 'sk' => 'ஸ்லோவாக்',
+ 'sl' => 'ஸ்லோவேனியன்',
+ 'sm' => 'ஸாமோவான்',
+ 'sma' => 'தெற்கு சமி',
+ 'smj' => 'லுலே சமி',
+ 'smn' => 'இனாரி சமி',
+ 'sms' => 'ஸ்கோல்ட் சமி',
+ 'sn' => 'ஷோனா',
+ 'snk' => 'சோனின்கே',
+ 'so' => 'சோமாலி',
+ 'sog' => 'சோக்தியன்',
+ 'sq' => 'அல்பேனியன்',
+ 'sr' => 'செர்பியன்',
+ 'srn' => 'ஸ்ரானன் டோங்கோ',
+ 'srr' => 'செரெர்',
+ 'ss' => 'ஸ்வாடீ',
+ 'st' => 'தெற்கு ஸோதோ',
+ 'su' => 'சுண்டானீஸ்',
+ 'suk' => 'சுகுமா',
+ 'sus' => 'சுசு',
+ 'sux' => 'சுமேரியன்',
+ 'sv' => 'ஸ்வீடிஷ்',
+ 'sw' => 'சுவாஹிலி',
+ 'swb' => 'கொமோரியன்',
+ 'swc' => 'காங்கோ சுவாஹிலி',
+ 'syc' => 'பாரம்பரிய சிரியாக்',
+ 'syr' => 'சிரியாக்',
+ 'ta' => 'தமிழ்',
+ 'te' => 'தெலுங்கு',
+ 'tem' => 'டிம்னே',
+ 'teo' => 'டெசோ',
+ 'ter' => 'டெரெனோ',
+ 'tet' => 'டெடும்',
+ 'tg' => 'தாஜிக்',
+ 'th' => 'தாய்',
+ 'ti' => 'டிக்ரின்யா',
+ 'tig' => 'டைக்ரே',
+ 'tiv' => 'டிவ்',
+ 'tk' => 'டர்க்மென்',
+ 'tkl' => 'டோகேலௌ',
+ 'tl' => 'டாகாலோக்',
+ 'tlh' => 'க்ளிங்கோன்',
+ 'tli' => 'டிலிங்கிட்',
+ 'tmh' => 'டாமாஷேக்',
+ 'tn' => 'ஸ்வானா',
+ 'to' => 'டோங்கான்',
+ 'tog' => 'நயாசா டோங்கா',
+ 'tpi' => 'டோக் பிஸின்',
+ 'tr' => 'டர்கிஷ்',
+ 'ts' => 'ஸோங்கா',
+ 'tsi' => 'ட்ஸிம்ஷியன்',
+ 'tt' => 'டாடர்',
+ 'tum' => 'தும்புகா',
+ 'tvl' => 'டுவாலு',
+ 'tw' => 'ட்வி',
+ 'twq' => 'டசவாக்',
+ 'ty' => 'டஹிதியான்',
+ 'tyv' => 'டுவினியன்',
+ 'tzm' => 'மத்திய அட்லஸ் தமசைட்',
+ 'udm' => 'உட்முர்ட்',
+ 'ug' => 'உய்குர்',
+ 'uga' => 'உகாரிட்க்',
+ 'uk' => 'உக்ரைனியன்',
+ 'umb' => 'அம்பொண்டு',
+ 'und' => 'அறியப்படாத மொழி',
+ 'ur' => 'உருது',
+ 'uz' => 'உஸ்பெக்',
+ 'vai' => 'வை',
+ 've' => 'வென்டா',
+ 'vi' => 'வியட்நாமிஸ்',
+ 'vo' => 'ஒலாபூக்',
+ 'vot' => 'வோட்க்',
+ 'vun' => 'வுன்ஜோ',
+ 'wa' => 'ஒவாலூன்',
+ 'wal' => 'வாலாமோ',
+ 'war' => 'வாரே',
+ 'was' => 'வாஷோ',
+ 'wo' => 'ஒலூஃப்',
+ 'xal' => 'கல்மிக்',
+ 'xh' => 'ஹோசா',
+ 'xog' => 'சோகா',
+ 'yao' => 'யாவ்',
+ 'yap' => 'யாபேசி',
+ 'yi' => 'இத்திஷ்',
+ 'yo' => 'யோருபா',
+ 'yue' => 'காண்டோனீஸ்',
+ 'za' => 'ஜுவாங்',
+ 'zap' => 'ஜாபோடெக்',
+ 'zbl' => 'ப்லிஸ்ஸிம்பால்ஸ்',
+ 'zen' => 'ஜெனகா',
+ 'zgh' => 'ஸ்டாண்டர்ட் மொராக்கன் தமாசைட்',
+ 'zh' => 'சீனம்',
+ 'zh-hans' => 'எளிதாக்கப்பட்ட சீனம்',
+ 'zh-hant' => 'பாரம்பரிய சீனம்',
+ 'zu' => 'ஜுலு',
+ 'zun' => 'ஜூனி',
+ 'zxx' => 'மொழி உள்ளடக்கம் ஏதுமில்லை',
+ 'zza' => 'ஜாஜா',
+);
+
+$currencyNames = array(
+ 'AED' => 'ஐக்கிய அரபு எமிரேட்ஸ் திர்ஹம்',
+ 'AFN' => 'ஆஃப்கான் ஆஃப்கானி',
+ 'ALL' => 'அல்பேனியன் லெக்',
+ 'AMD' => 'ஆர்மேனியன் ட்ராம்',
+ 'ANG' => 'நெதர்லேண்ட்ஸ் அன்டிலியன் கில்டர்',
+ 'AOA' => 'அங்கோலன் க்வான்ஸா',
+ 'ARS' => 'அர்ஜென்டினா பேசோ',
+ 'AUD' => 'ஆஸ்திரேலிய டாலர்',
+ 'AWG' => 'அருபன் ஃப்ளோரின்',
+ 'AZN' => 'அசர்பைஜானி மனத்',
+ 'BAM' => 'போஸ்னியா-ஹெர்ஸேகோவினா கன்வெர்டிபில் மார்க்',
+ 'BBD' => 'பார்பேடியன் டாலர்',
+ 'BDT' => 'பங்களாதேஷி டாகா',
+ 'BGN' => 'புல்கேரியன் லெவ்',
+ 'BHD' => 'பஹ்ரைனி தினார்',
+ 'BIF' => 'புருண்டியன் ஃப்ராங்க்',
+ 'BMD' => 'பெர்முடன் டாலர்',
+ 'BND' => 'புரூனே டாலர்',
+ 'BOB' => 'பொலிவியன் பொலிவியானோ',
+ 'BRL' => 'பிரேசிலியன் ரியால்',
+ 'BSD' => 'பஹாமியன் டாலர்',
+ 'BTN' => 'பூட்டானிஷ் நிகுல்ட்ரம்',
+ 'BWP' => 'போட்ஸ்வானா புலா',
+ 'BYR' => 'பெலருசியன் ரூபில்',
+ 'BZD' => 'பெலீஷ் டாலர்',
+ 'CAD' => 'கனடியன் டாலர்',
+ 'CDF' => 'காங்கோலீஸ் ஃப்ராங்க்',
+ 'CHF' => 'சுவிஸ் ஃப்ராங்க்',
+ 'CLP' => 'சிலியன் பெசோ',
+ 'CNY' => 'சீன யுவான்',
+ 'COP' => 'கொலம்பியன் பெசோ',
+ 'CRC' => 'கோஸ்டா ரிகன் கொலோன்',
+ 'CUC' => 'கியூபன் கன்வெர்டிபில் பேசோ',
+ 'CUP' => 'கியூபன் பெசோ',
+ 'CVE' => 'கேப் வெர்டியன் எஸ்குடோ',
+ 'CZK' => 'செக் குடியரசு கொருனா',
+ 'DJF' => 'ஜிபவ்டியென் ஃப்ராங்க்',
+ 'DKK' => 'டானிஷ் க்ரோன்',
+ 'DOP' => 'டொமினிக்கன் பேசோ',
+ 'DZD' => 'அல்ஜீரியன் தினார்',
+ 'EGP' => 'எகிப்திய பவுண்டு',
+ 'ERN' => 'இரிடிரியன் நக்ஃபா',
+ 'ETB' => 'எத்தியோப்பியன் பிர்',
+ 'EUR' => 'யூரோ',
+ 'FJD' => 'ஃபிஜியன் டாலர்',
+ 'FKP' => 'ஃபாக்லாந்து தீவுகள் பவுண்டு',
+ 'GBP' => 'பிரிட்டிஷ் பவுண்ட் ஸ்டெர்லிங்',
+ 'GEL' => 'ஜியார்ஜியன் லாரி',
+ 'GHS' => 'கானயன் சேடி',
+ 'GIP' => 'கிப்ரால்டர் பவுண்ட்',
+ 'GMD' => 'கேம்பியன் தலாசி',
+ 'GNF' => 'கினியன் ஃப்ராங்க்',
+ 'GTQ' => 'குவாடெமெலன் குயூட்ஸல்',
+ 'GYD' => 'கயானீஸ் டாலர்',
+ 'HKD' => 'ஹாங்காங் டாலர்',
+ 'HNL' => 'ஹோன்டூரன் லெம்பீரா',
+ 'HRK' => 'குரோஷியன் குனா',
+ 'HTG' => 'ஹயேத்தியன் கோர்டே',
+ 'HUF' => 'ஹங்கேரியன் ஃபோரின்ட்',
+ 'IDR' => 'இந்தோனேஷியன் ருபியா',
+ 'ILS' => 'இஸ்ரேலி நியூ ஷிகேல்',
+ 'INR' => 'இந்திய ரூபாய்',
+ 'IQD' => 'ஈராக்கி தினார்',
+ 'IRR' => 'இரானியன் ரியால்',
+ 'ISK' => 'ஐஸ்லாண்டிக் க்ரோனா',
+ 'JMD' => 'ஜமைக்கான் டாலர்',
+ 'JOD' => 'ஜோர்டானியன் டைனர்',
+ 'JPY' => 'ஜப்பானிய யென்',
+ 'KES' => 'கென்யன் ஷில்லிங்',
+ 'KGS' => 'கிர்கிஸ்தானி சோம்',
+ 'KHR' => 'கம்போடியன் ரியெல்',
+ 'KMF' => 'கமோரியன் ஃப்ராங்க்',
+ 'KPW' => 'வட கொரிய வான்',
+ 'KRW' => 'தென் கொரிய வான்',
+ 'KWD' => 'குவைத்தி தினார்',
+ 'KYD' => 'கேமன் தீவுகள் டாலர்',
+ 'KZT' => 'கஸகஸ்தானி டென்கே',
+ 'LAK' => 'லவுட்டியன் கிப்',
+ 'LBP' => 'லெபனீஸ் பவுண்ட்',
+ 'LKR' => 'இலங்கை ரூபாய்',
+ 'LRD' => 'லைபீரியன் டாலர்',
+ 'LSL' => 'லெசோதோ லோட்டி',
+ 'LTL' => 'லிதுவேனியன் லிடஸ்',
+ 'LVL' => 'லத்வியன் லாட்ஸ்',
+ 'LYD' => 'லிபியன் தினார்',
+ 'MAD' => 'மொராக்கோ திர்ஹாம்',
+ 'MDL' => 'மால்டோவன் லியூ',
+ 'MGA' => 'மலகாசி ஏரியரி',
+ 'MKD' => 'மெசிடோனியன் தினார்',
+ 'MMK' => 'மியான்மர் கியாத்',
+ 'MNT' => 'மங்கோலியன் டுக்ரிக்',
+ 'MOP' => 'மெகனீஸ் படாகா',
+ 'MRO' => 'மொரிஷியனியன் ஒகுய்யா',
+ 'MUR' => 'மொரீஷியன் ருபீ',
+ 'MVR' => 'மாலத்தீவு ருஃபியா',
+ 'MWK' => 'மலாவியன் குவாச்சா',
+ 'MXN' => 'மெக்ஸிகன் பெசோ',
+ 'MYR' => 'மலேஷியன் ரிங்கித்',
+ 'MZN' => 'மொசாம்பிகேன் மெடிகல்',
+ 'NAD' => 'நமீபியன் டாலர்',
+ 'NGN' => 'நைஜீரியன் நைரா',
+ 'NIO' => 'நிகாராகுவான் கோர்டோபா',
+ 'NOK' => 'நார்வேஜியன் க்ரோன்',
+ 'NPR' => 'நேபாளீஸ் ரூபாய்',
+ 'NZD' => 'நியூசிலாந்து டாலர்',
+ 'OMR' => 'ஓமானி ரியால்',
+ 'PAB' => 'பனாமானியன் பால்போபா',
+ 'PEN' => 'பெருவியன் நியூவோ சோல்',
+ 'PGK' => 'பபுவா நியூ கினியன் கினா',
+ 'PHP' => 'பிலிப்பைன் பெசோ',
+ 'PKR' => 'பாகிஸ்தானி ரூபாய்',
+ 'PLN' => 'போலிஷ் ஸ்லாட்டி',
+ 'PYG' => 'பராகுவன் குவாரானி',
+ 'QAR' => 'கத்தாரி ரியால்',
+ 'RON' => 'ரோமானியன் லியூ',
+ 'RSD' => 'செர்பியன் தினார்',
+ 'RUB' => 'ரஷியன் ரூபிள்',
+ 'RWF' => 'ருவாண்டா ஃப்ராங்க்',
+ 'SAR' => 'சவுதி ரியால்',
+ 'SBD' => 'சாலமன் தீவுகள் டாலர்',
+ 'SCR' => 'சிசீலோயிஸ் ருபீ',
+ 'SDG' => 'சூடானீஸ் பவுண்டு',
+ 'SEK' => 'ஸ்வேதிஷ் க்ரோனா',
+ 'SGD' => 'சிங்கப்பூர் டாலர்',
+ 'SHP' => 'செயின்ட் ஹெலேனா பவுண்டு',
+ 'SLL' => 'சியாரா லியோனியன் லியோன்',
+ 'SOS' => 'சோமாலி ஷில்லிங்',
+ 'SRD' => 'சுரினாமீஸ் டாலர்',
+ 'SSP' => 'தெற்கு சூடானீஸ் பவுண்டு',
+ 'STD' => 'சாவ் டோமி மற்றும் பிரின்ஸ்பி டோப்ரா',
+ 'SYP' => 'சிரியன் பவுண்ட்',
+ 'SZL' => 'சுவாஸி லிலாங்கனி',
+ 'THB' => 'தாய் பாட்',
+ 'TJS' => 'தஜிகிஸ்தானி சோமோனி',
+ 'TMT' => 'துர்க்மேனிஸ்தானி மனத்',
+ 'TND' => 'துனிஷியன் தினார்',
+ 'TOP' => 'தொங்கான் பங்கா',
+ 'TRY' => 'துருக்கிஷ் லீரா',
+ 'TTD' => 'டிரினாட் மற்றும் டோபாகோ டாலர்',
+ 'TWD' => 'புதிய தைவான் டாலர்',
+ 'TZS' => 'தன்ஸானியன் ஷில்லிங்',
+ 'UAH' => 'உக்ரைனியன் ஹிரைவ்னியா',
+ 'UGX' => 'உகாண்டன் ஷில்லிங்',
+ 'USD' => 'அமெரிக்க டாலர்',
+ 'UYU' => 'உருகுவேயன் பேசோ',
+ 'UZS' => 'உஸ்பெக்கிஸ்தான் சோம்',
+ 'VEF' => 'வெனிசுலியன் போலிவர்',
+ 'VND' => 'வியட்நாமீஸ் டாங்',
+ 'VUV' => 'வனுவாட்டு வாட்டு',
+ 'WST' => 'சமோவான் தாலா',
+ 'XAF' => 'ஃப்ராங்க் (CFA BEAC)',
+ 'XCD' => 'கிழக்கு கரீபியன் டாலர்',
+ 'XOF' => 'CFA ஃப்ராங்க் BCEAO',
+ 'XPF' => 'ஃப்ராங்க் (CFP)',
+ 'XXX' => 'தெரியாத நாணயம்',
+ 'YER' => 'ஏமனி ரியால்',
+ 'ZAR' => 'தென் ஆப்ரிக்க ராண்ட்',
+ 'ZMK' => 'ஸாம்பியன் குவாசா (1968–2012)',
+ 'ZMW' => 'ஸாம்பியன் குவாசா',
+);
+
+$currencySymbols = array(
+ 'AED' => 'AED',
+ 'AFN' => 'AFN',
+ 'ALL' => 'ALL',
+ 'AMD' => 'AMD',
+ 'ANG' => 'ANG',
+ 'AOA' => 'AOA',
+ 'ARS' => 'ARS',
+ 'AUD' => 'A$',
+ 'AWG' => 'AWG',
+ 'AZN' => 'AZN',
+ 'BAM' => 'BAM',
+ 'BBD' => 'BBD',
+ 'BDT' => 'BDT',
+ 'BGN' => 'BGN',
+ 'BHD' => 'BHD',
+ 'BIF' => 'BIF',
+ 'BMD' => 'BMD',
+ 'BND' => 'BND',
+ 'BOB' => 'BOB',
+ 'BRL' => 'R$',
+ 'BSD' => 'BSD',
+ 'BTN' => 'BTN',
+ 'BWP' => 'BWP',
+ 'BYR' => 'BYR',
+ 'BZD' => 'BZD',
+ 'CAD' => 'CA$',
+ 'CDF' => 'CDF',
+ 'CHF' => 'CHF',
+ 'CLP' => 'CLP',
+ 'CNY' => 'CN¥',
+ 'COP' => 'COP',
+ 'CRC' => 'CRC',
+ 'CUC' => 'CUC',
+ 'CUP' => 'CUP',
+ 'CVE' => 'CVE',
+ 'CZK' => 'CZK',
+ 'DJF' => 'DJF',
+ 'DKK' => 'DKK',
+ 'DOP' => 'DOP',
+ 'DZD' => 'DZD',
+ 'EGP' => 'EGP',
+ 'ERN' => 'ERN',
+ 'ETB' => 'ETB',
+ 'EUR' => '€',
+ 'FJD' => 'FJD',
+ 'FKP' => 'FKP',
+ 'GBP' => '£',
+ 'GEL' => 'GEL',
+ 'GHS' => 'GHS',
+ 'GIP' => 'GIP',
+ 'GMD' => 'GMD',
+ 'GNF' => 'GNF',
+ 'GTQ' => 'GTQ',
+ 'GYD' => 'GYD',
+ 'HKD' => 'HK$',
+ 'HNL' => 'HNL',
+ 'HRK' => 'HRK',
+ 'HTG' => 'HTG',
+ 'HUF' => 'HUF',
+ 'IDR' => 'IDR',
+ 'ILS' => '₪',
+ 'INR' => '₹',
+ 'IQD' => 'IQD',
+ 'IRR' => 'IRR',
+ 'ISK' => 'ISK',
+ 'JMD' => 'JMD',
+ 'JOD' => 'JOD',
+ 'JPY' => '¥',
+ 'KES' => 'KES',
+ 'KGS' => 'KGS',
+ 'KHR' => 'KHR',
+ 'KMF' => 'KMF',
+ 'KPW' => 'KPW',
+ 'KRW' => '₩',
+ 'KWD' => 'KWD',
+ 'KYD' => 'KYD',
+ 'KZT' => 'KZT',
+ 'LAK' => 'LAK',
+ 'LBP' => 'LBP',
+ 'LKR' => 'LKR',
+ 'LRD' => 'LRD',
+ 'LTL' => 'LTL',
+ 'LVL' => 'LVL',
+ 'LYD' => 'LYD',
+ 'MAD' => 'MAD',
+ 'MDL' => 'MDL',
+ 'MGA' => 'MGA',
+ 'MKD' => 'MKD',
+ 'MMK' => 'MMK',
+ 'MNT' => 'MNT',
+ 'MOP' => 'MOP',
+ 'MRO' => 'MRO',
+ 'MUR' => 'MUR',
+ 'MVR' => 'MVR',
+ 'MWK' => 'MWK',
+ 'MXN' => 'MX$',
+ 'MYR' => 'MYR',
+ 'MZN' => 'MZN',
+ 'NAD' => 'NAD',
+ 'NGN' => 'NGN',
+ 'NIO' => 'NIO',
+ 'NOK' => 'NOK',
+ 'NPR' => 'NPR',
+ 'NZD' => 'NZ$',
+ 'OMR' => 'OMR',
+ 'PAB' => 'PAB',
+ 'PEN' => 'PEN',
+ 'PGK' => 'PGK',
+ 'PHP' => 'PHP',
+ 'PKR' => 'PKR',
+ 'PLN' => 'PLN',
+ 'PYG' => 'PYG',
+ 'QAR' => 'QAR',
+ 'RON' => 'RON',
+ 'RSD' => 'RSD',
+ 'RUB' => 'RUB',
+ 'RWF' => 'RWF',
+ 'SAR' => 'SAR',
+ 'SBD' => 'SBD',
+ 'SCR' => 'SCR',
+ 'SDG' => 'SDG',
+ 'SEK' => 'SEK',
+ 'SGD' => 'SGD',
+ 'SHP' => 'SHP',
+ 'SLL' => 'SLL',
+ 'SOS' => 'SOS',
+ 'SRD' => 'SRD',
+ 'SSP' => 'SSP',
+ 'STD' => 'STD',
+ 'SYP' => 'SYP',
+ 'SZL' => 'SZL',
+ 'THB' => '฿',
+ 'TJS' => 'TJS',
+ 'TMT' => 'TMT',
+ 'TND' => 'TND',
+ 'TOP' => 'TOP',
+ 'TRY' => 'TRY',
+ 'TTD' => 'TTD',
+ 'TWD' => 'NT$',
+ 'TZS' => 'TZS',
+ 'UAH' => 'UAH',
+ 'UGX' => 'UGX',
+ 'USD' => '$',
+ 'UYU' => 'UYU',
+ 'UZS' => 'UZS',
+ 'VEF' => 'VEF',
+ 'VND' => '₫',
+ 'VUV' => 'VUV',
+ 'WST' => 'WST',
+ 'XAF' => 'FCFA',
+ 'XCD' => 'EC$',
+ 'XOF' => 'CFA',
+ 'XPF' => 'CFPF',
+ 'YER' => 'YER',
+ 'ZAR' => 'ZAR',
+ 'ZMW' => 'ZMW',
+);
+
+$countryNames = array(
+ 'AC' => 'அஷன்ஷியன் தீவு',
+ 'AD' => 'அன்டோரா',
+ 'AE' => 'ஐக்கிய அரபு எமிரேட்ஸ்',
+ 'AF' => 'ஆப்கானிஸ்தான்',
+ 'AG' => 'ஆண்டிகுவா மற்றும் பார்புடா',
+ 'AI' => 'அங்குய்லா',
+ 'AL' => 'அல்பேனியா',
+ 'AM' => 'ஆர்மேனியா',
+ 'AN' => 'நெதர்லாந்து ஆண்டில்லெஸ்',
+ 'AO' => 'அங்கோலா',
+ 'AQ' => 'அண்டார்டிகா',
+ 'AR' => 'அர்ஜென்டினா',
+ 'AS' => 'அமெரிக்க சமோவா',
+ 'AT' => 'ஆஸ்திரியா',
+ 'AU' => 'ஆஸ்திரேலியா',
+ 'AW' => 'அரூபா',
+ 'AX' => 'ஆலந்து தீவுகள்',
+ 'AZ' => 'அசர்பைஜான்',
+ 'BA' => 'போஸ்னியா மற்றும் ஹெர்ஸிகோவினா',
+ 'BB' => 'பார்படோஸ்',
+ 'BD' => 'பங்களாதேஷ்',
+ 'BE' => 'பெல்ஜியம்',
+ 'BF' => 'புர்கினா ஃபாஸோ',
+ 'BG' => 'பல்கேரியா',
+ 'BH' => 'பஹ்ரைன்',
+ 'BI' => 'புருண்டி',
+ 'BJ' => 'பெனின்',
+ 'BL' => 'செயின்ட் பார்தேலெமி',
+ 'BM' => 'பெர்முடா',
+ 'BN' => 'புரூனேய்',
+ 'BO' => 'பொலிவியா',
+ 'BQ' => 'கரீபியன் நெதர்லாந்து',
+ 'BR' => 'பிரேசில்',
+ 'BS' => 'பஹாமாஸ்',
+ 'BT' => 'பூடான்',
+ 'BV' => 'பொவேட் தீவுகள்',
+ 'BW' => 'போட்ஸ்வானா',
+ 'BY' => 'பெலாரூஸ்',
+ 'BZ' => 'பெலிஸ்',
+ 'CA' => 'கனடா',
+ 'CC' => 'கோகோஸ் (கீலிங்) தீவுகள்',
+ 'CD' => 'காங்கோ - கின்ஷாசா',
+ 'CF' => 'மத்திய ஆப்ரிக்கக் குடியரசு',
+ 'CG' => 'காங்கோ - ப்ராஸாவில்லே',
+ 'CH' => 'ஸ்விட்சர்லாந்து',
+ 'CI' => 'கோட் தி’வாயர்',
+ 'CK' => 'குக் தீவுகள்',
+ 'CL' => 'சிலி',
+ 'CM' => 'கேமரூன்',
+ 'CN' => 'சீனா',
+ 'CO' => 'கொலம்பியா',
+ 'CP' => 'கிலிப்பர்டன் தீவு',
+ 'CR' => 'கோஸ்டாரிகா',
+ 'CU' => 'கியூபா',
+ 'CV' => 'கேப் வெர்டே',
+ 'CW' => 'குராகவ்',
+ 'CX' => 'கிறிஸ்துமஸ் தீவு',
+ 'CY' => 'சைப்ரஸ்',
+ 'CZ' => 'செக் குடியரசு',
+ 'DE' => 'ஜெர்மனி',
+ 'DG' => 'டியகோ கார்ஷியா',
+ 'DJ' => 'ஜிபௌட்டி',
+ 'DK' => 'டென்மார்க்',
+ 'DM' => 'டொமினிகா',
+ 'DO' => 'டொமினிகன் குடியரசு',
+ 'DZ' => 'அல்ஜீரியா',
+ 'EA' => 'சியூடா மற்றும் மெலில்லா',
+ 'EC' => 'ஈக்வடார்',
+ 'EE' => 'எஸ்டோனியா',
+ 'EG' => 'எகிப்து',
+ 'EH' => 'மேற்கு சஹாரா',
+ 'ER' => 'எரிட்ரியா',
+ 'ES' => 'ஸ்பெயின்',
+ 'ET' => 'எதியோப்பியா',
+ 'EU' => 'ஐரோப்பியன் யூனியன்',
+ 'FI' => 'பின்லாந்து',
+ 'FJ' => 'ஃபிஜி',
+ 'FK' => 'ஃபாக்லாந்து தீவுகள்',
+ 'FM' => 'மைக்ரோனேஷியா',
+ 'FO' => 'ஃபாரோ தீவுகள்',
+ 'FR' => 'பிரான்ஸ்',
+ 'GA' => 'கேபான்',
+ 'GB' => 'யூ.கே.',
+ 'GD' => 'கிரனெடா',
+ 'GE' => 'ஜார்ஜியா',
+ 'GF' => 'பிரெஞ்சு கயானா',
+ 'GG' => 'கெர்ன்சி',
+ 'GH' => 'கானா',
+ 'GI' => 'ஜிப்ரால்டர்',
+ 'GL' => 'கிரீன்லாந்து',
+ 'GM' => 'காம்பியா',
+ 'GN' => 'கினியா',
+ 'GP' => 'க்வாதேலோப்',
+ 'GQ' => 'ஈக்குவாடோரியல் கினியா',
+ 'GR' => 'கிரீஸ்',
+ 'GS' => 'தென் ஜியார்ஜியா மற்றும் தென் சான்ட்விச் தீவுகள்',
+ 'GT' => 'கவுதமாலா',
+ 'GU' => 'குவாம்',
+ 'GW' => 'கினி-பிஸ்ஸாவ்',
+ 'GY' => 'கயானா',
+ 'HK' => 'ஹாங்காங்',
+ 'HM' => 'ஹேர்ட் மற்றும் மெக்டொனால்டு தீவுகள்',
+ 'HN' => 'ஹோண்டூராஸ்',
+ 'HR' => 'குரோசியா',
+ 'HT' => 'ஹெய்தி',
+ 'HU' => 'ஹங்கேரி',
+ 'IC' => 'கேனரி தீவுகள்',
+ 'ID' => 'இந்தோனேஷியா',
+ 'IE' => 'அயர்லாந்து',
+ 'IL' => 'இஸ்ரேல்',
+ 'IM' => 'ஐல் ஆஃப் மேன்',
+ 'IN' => 'இந்தியா',
+ 'IO' => 'பிரிட்டிஷ் இந்தியப் பெருங்கடல் பிரதேசம்',
+ 'IQ' => 'ஈராக்',
+ 'IR' => 'ஈரான்',
+ 'IS' => 'ஐஸ்லாந்து',
+ 'IT' => 'இத்தாலி',
+ 'JE' => 'ஜெர்சி',
+ 'JM' => 'ஜமைகா',
+ 'JO' => 'ஜோர்டான்',
+ 'JP' => 'ஜப்பான்',
+ 'KE' => 'கென்யா',
+ 'KG' => 'கிர்கிஸ்தான்',
+ 'KH' => 'கம்போடியா',
+ 'KI' => 'கிரிபடி',
+ 'KM' => 'கோமரோஸ்',
+ 'KN' => 'செயின்ட் கிட்ஸ் மற்றும் நெவிஸ்',
+ 'KP' => 'வட கொரியா',
+ 'KR' => 'தென் கொரியா',
+ 'KW' => 'குவைத்',
+ 'KY' => 'கேமென் தீவுகள்',
+ 'KZ' => 'கஸகஸ்தான்',
+ 'LA' => 'லாவோஸ்',
+ 'LB' => 'லெபனான்',
+ 'LC' => 'செயின்ட் லூசியா',
+ 'LI' => 'லிச்செண்ஸ்டெய்ன்',
+ 'LK' => 'இலங்கை',
+ 'LR' => 'லைபீரியா',
+ 'LS' => 'லெசோதோ',
+ 'LT' => 'லிதுவேனியா',
+ 'LU' => 'லக்ஸ்சம்பர்க்',
+ 'LV' => 'லாட்வியா',
+ 'LY' => 'லிபியா',
+ 'MA' => 'மொராக்கோ',
+ 'MC' => 'மொனாக்கோ',
+ 'MD' => 'மால்டோவா',
+ 'ME' => 'மான்டேனெக்ரோ',
+ 'MF' => 'செயின்ட் மார்ட்டீன்',
+ 'MG' => 'மடகாஸ்கர்',
+ 'MH' => 'மார்ஷல் தீவுகள்',
+ 'MK' => 'மாசிடோனியா',
+ 'ML' => 'மாலி',
+ 'MM' => 'மியான்மார் (பர்மா)',
+ 'MN' => 'மங்கோலியா',
+ 'MO' => 'மகாவோ',
+ 'MP' => 'வடக்கு மரியானா தீவுகள்',
+ 'MQ' => 'மார்டினிக்',
+ 'MR' => 'மௌரிடானியா',
+ 'MS' => 'மௌன்ட்செராட்',
+ 'MT' => 'மால்டா',
+ 'MU' => 'மொரிசியஸ்',
+ 'MV' => 'மாலத்தீவு',
+ 'MW' => 'மாலவி',
+ 'MX' => 'மெக்சிகோ',
+ 'MY' => 'மலேஷியா',
+ 'MZ' => 'மொசாம்பிக்',
+ 'NA' => 'நமீபியா',
+ 'NC' => 'நியூ கேலிடோனியா',
+ 'NE' => 'நைஜர்',
+ 'NF' => 'நார்ஃபாக் தீவுகள்',
+ 'NG' => 'நைஜீரியா',
+ 'NI' => 'நிகரகுவா',
+ 'NL' => 'நெதர்லாந்து',
+ 'NO' => 'நார்வே',
+ 'NP' => 'நேபாளம்',
+ 'NR' => 'நௌரு',
+ 'NU' => 'நியூ',
+ 'NZ' => 'நியூசிலாந்து',
+ 'OM' => 'ஓமன்',
+ 'PA' => 'பனாமா',
+ 'PE' => 'பெரு',
+ 'PF' => 'பிரெஞ்சு பாலினேஷியா',
+ 'PG' => 'பாப்புவா நியூ கினி',
+ 'PH' => 'பிலிப்பைன்ஸ்',
+ 'PK' => 'பாகிஸ்தான்',
+ 'PL' => 'போலந்து',
+ 'PM' => 'செயின்ட் பியர் மற்றும் மிக்வேலான்',
+ 'PN' => 'பிட்கெய்ர்ன் தீவுகள்',
+ 'PR' => 'பியூர்டோ ரிகோ',
+ 'PS' => 'பாலஸ்தீனம்',
+ 'PT' => 'போர்ச்சுக்கல்',
+ 'PW' => 'பாலோ',
+ 'PY' => 'பராகுவே',
+ 'QA' => 'கத்தார்',
+ 'QO' => 'ஔட்லையிங் ஓசானியா',
+ 'RE' => 'ரீயூனியன்',
+ 'RO' => 'ருமேனியா',
+ 'RS' => 'செர்பியா',
+ 'RU' => 'ரஷ்யா',
+ 'RW' => 'ருவான்டா',
+ 'SA' => 'சவூதி அரேபியா',
+ 'SB' => 'சாலமன் தீவுகள்',
+ 'SC' => 'ஸேசேல்ஸ்',
+ 'SD' => 'சூடான்',
+ 'SE' => 'ஸ்வீடன்',
+ 'SG' => 'சிங்கப்பூர்',
+ 'SH' => 'செயின்ட் ஹெலெனா',
+ 'SI' => 'ஸ்லோவேனியா',
+ 'SJ' => 'ஸ்வல்பார்டு மற்றும் ஜான் மேயன்',
+ 'SK' => 'ஸ்லோவாகியா',
+ 'SL' => 'சியர்ரா லியோன்',
+ 'SM' => 'சான் மெரினோ',
+ 'SN' => 'செனெகல்',
+ 'SO' => 'சோமாலியா',
+ 'SR' => 'சுரினாம்',
+ 'SS' => 'தெற்கு சூடான்',
+ 'ST' => 'சாவ் தோம் மற்றும் ப்ரின்சிபி',
+ 'SV' => 'எல் சால்வடார்',
+ 'SX' => 'சின்ட் மார்டென்',
+ 'SY' => 'சிரியா',
+ 'SZ' => 'ஸ்வாஸிலாந்து',
+ 'TA' => 'டிரிஸ்டன் டா குன்ஹா',
+ 'TC' => 'டர்க்ஸ் மற்றும் கைகோஸ் தீவுகள்',
+ 'TD' => 'சாட்',
+ 'TF' => 'பிரெஞ்சு தெற்கு பிரதேசங்கள்',
+ 'TG' => 'டோகோ',
+ 'TH' => 'தாய்லாந்து',
+ 'TJ' => 'தாஜிகிஸ்தான்',
+ 'TK' => 'டோகேலோ',
+ 'TL' => 'தைமூர்-லெஸ்தே',
+ 'TM' => 'துர்க்மெனிஸ்தான்',
+ 'TN' => 'டுனிசியா',
+ 'TO' => 'டோங்கா',
+ 'TR' => 'துருக்கி',
+ 'TT' => 'ட்ரினிடாட் மற்றும் டுபாகோ',
+ 'TV' => 'துவாலூ',
+ 'TW' => 'தைவான்',
+ 'TZ' => 'தான்சானியா',
+ 'UA' => 'உக்ரைன்',
+ 'UG' => 'உகாண்டா',
+ 'UM' => 'யூஎஸ் அவுட்லேயிங் தீவுகள்',
+ 'US' => 'யூஎஸ்',
+ 'UY' => 'உருகுவே',
+ 'UZ' => 'உஸ்பெகிஸ்தான்',
+ 'VA' => 'வாடிகன் நகரம்',
+ 'VC' => 'செயின்ட் வின்சென்ட் மற்றும் கிரெனடைன்ஸ்',
+ 'VE' => 'வெனிசுலா',
+ 'VG' => 'பிரிட்டீஷ் கன்னித் தீவுகள்',
+ 'VI' => 'யூ.எஸ். கன்னித் தீவுகள்',
+ 'VN' => 'வியட்நாம்',
+ 'VU' => 'வனுவாட்டு',
+ 'WF' => 'வாலிஸ் மற்றும் ஃபுடுனா',
+ 'WS' => 'சமோவா',
+ 'XK' => 'கொசோவோ',
+ 'YE' => 'ஏமன்',
+ 'YT' => 'மயோத்',
+ 'ZA' => 'தென் ஆப்பிரிக்கா',
+ 'ZM' => 'ஜாம்பியா',
+ 'ZW' => 'ஜிம்பாப்வே',
+);
+
+$timeUnits = array(
+ 'day-future-one' => '{0} நாளில்',
+ 'day-future-other' => '{0} நாட்களில்',
+ 'day-narrow-future-one' => '{0} நாளில்',
+ 'day-narrow-future-other' => '{0} நாட்களில்',
+ 'day-narrow-past-one' => '{0} நாளைக்கு முன்',
+ 'day-narrow-past-other' => '{0} நாட்களுக்கு முன்',
+ 'day-one' => '{0} நாள்',
+ 'day-other' => '{0} நாட்கள்',
+ 'day-past-one' => '{0} நாளைக்கு முன்',
+ 'day-past-other' => '{0} நாட்களுக்கு முன்',
+ 'day-short-future-one' => '{0} நாளில்',
+ 'day-short-future-other' => '{0} நாட்களில்',
+ 'day-short-past-one' => '0} நாளுக்கு முன்',
+ 'day-short-past-other' => '{0} நாட்களுக்கு முன்',
+ 'hour-future-one' => '{0} மணிநேரத்தில்',
+ 'hour-future-other' => '{0} மணிநேரத்தில்',
+ 'hour-narrow-future-one' => '{0} மணிநேரத்தில்',
+ 'hour-narrow-future-other' => '{0} மணிநேரத்தில்',
+ 'hour-narrow-past-one' => '{0} மணிநேரம் முன்',
+ 'hour-narrow-past-other' => '{0} மணிநேரம் முன்',
+ 'hour-one' => '{0} மணிநேரம்',
+ 'hour-other' => '{0} மணிநேரங்கள்',
+ 'hour-past-one' => '{0} மணிநேரம் முன்',
+ 'hour-past-other' => '{0} மணிநேரம் முன்',
+ 'hour-short-future-one' => '{0} மணிநேரத்தில்',
+ 'hour-short-future-other' => '{0} மணிநேரத்தில்',
+ 'hour-short-past-one' => '{0} மணிநேரம் முன்',
+ 'hour-short-past-other' => '{0} மணிநேரம் முன்',
+ 'microsecond-one' => '{0} மைக்ரோவிநாடி',
+ 'microsecond-other' => '{0} மைக்ரோவிநாடிகள்',
+ 'millisecond-one' => '{0} மில்லிவிநாடி',
+ 'millisecond-other' => '{0} மில்லிவிநாடிகள்',
+ 'minute-future-one' => '{0} நிமிடத்தில்',
+ 'minute-future-other' => '{0} நிமிடங்களில்',
+ 'minute-narrow-future-one' => '{0} நிமிடங்களில்',
+ 'minute-narrow-future-other' => '{0} நிமிடங்களில்',
+ 'minute-narrow-past-one' => '{0} நிமிடத்திற்கு முன்',
+ 'minute-narrow-past-other' => '{0} நிமிடங்களுக்கு முன்',
+ 'minute-one' => '{0} நிமிடம்',
+ 'minute-other' => '{0} நிமிடங்கள்',
+ 'minute-past-one' => '{0} நிமிடத்திற்கு முன்',
+ 'minute-past-other' => '{0} நிமிடங்களுக்கு முன்',
+ 'minute-short-future-one' => '{0} நிமிடங்களில்',
+ 'minute-short-future-other' => '{0} நிமிடங்களில்',
+ 'minute-short-past-one' => '{0} நிமிடத்திற்கு முன்',
+ 'minute-short-past-other' => '{0} நிமிடங்களுக்கு முன்',
+ 'month-future-one' => '{0} மாதத்தில்',
+ 'month-future-other' => '{0} மாதங்களில்',
+ 'month-narrow-future-one' => '{0} மாதத்தில்',
+ 'month-narrow-future-other' => '{0} மாதங்களில்',
+ 'month-narrow-past-one' => '{0} மாதத்திற்கு முன்',
+ 'month-narrow-past-other' => '{0} மாதங்களுக்கு முன்',
+ 'month-one' => '{0} மாதம்',
+ 'month-other' => '{0} மாதங்கள்',
+ 'month-past-one' => '{0} மாதத்துக்கு முன்',
+ 'month-past-other' => '{0} மாதங்களுக்கு முன்',
+ 'month-short-future-one' => '{0} மாதத்தில்',
+ 'month-short-future-other' => '{0} மாதங்களில்',
+ 'month-short-past-one' => '{0} மாதத்திற்கு முன்',
+ 'month-short-past-other' => '{0} மாதங்களுக்கு முன்',
+ 'nanosecond-one' => '{0} நானோசெகண்டு',
+ 'nanosecond-other' => '{0} நானோசெகண்டுகள்',
+ 'quarter-future-one' => '+{0} காலாண்டில்',
+ 'quarter-future-other' => '{0} காலாண்டுகளில்',
+ 'quarter-narrow-future-one' => '{0} காலாண்டில்',
+ 'quarter-narrow-future-other' => '{0} காலாண்டுகளில்',
+ 'quarter-narrow-past-one' => '-{0} கா.',
+ 'quarter-narrow-past-other' => '-{0} கா.',
+ 'quarter-past-one' => '{0} காலாண்டுக்கு முன்',
+ 'quarter-past-other' => '{0} காலாண்டுகளுக்கு முன்',
+ 'quarter-short-future-one' => '{0} காலா.',
+ 'quarter-short-future-other' => '{0} காலாண்டுகளில்',
+ 'quarter-short-past-one' => '{0} காலா. முன்',
+ 'quarter-short-past-other' => '{0} காலா. முன்',
+ 'second-future-one' => '{0} விநாடியில்',
+ 'second-future-other' => '{0} விநாடிகளில்',
+ 'second-narrow-future-one' => '{0} விநாடியில்',
+ 'second-narrow-future-other' => '{0} விநாடிகளில்',
+ 'second-narrow-past-one' => '{0} விநாடிக்கு முன்',
+ 'second-narrow-past-other' => '{0} விநாடிகளுக்கு முன்',
+ 'second-one' => '{0} விநாடி',
+ 'second-other' => '{0} விநாடிகள்',
+ 'second-past-one' => '{0} விநாடிக்கு முன்',
+ 'second-past-other' => '{0} விநாடிகளுக்கு முன்',
+ 'second-short-future-one' => '{0} விநாடியில்',
+ 'second-short-future-other' => '{0} விநாடிகளில்',
+ 'second-short-past-one' => '{0} விநாடிக்கு முன்',
+ 'second-short-past-other' => '{0} விநாடிகளுக்கு முன்',
+ 'week-future-one' => '{0} வாரத்தில்',
+ 'week-future-other' => '{0} வாரங்களில்',
+ 'week-narrow-future-one' => '{0} வாரத்தில்',
+ 'week-narrow-future-other' => '{0} வாரங்களில்',
+ 'week-narrow-past-one' => '{0} வாரத்திற்கு முன்',
+ 'week-narrow-past-other' => '{0} வாரங்களுக்கு முன்',
+ 'week-one' => '{0} வாரம்',
+ 'week-other' => '{0} வாரங்கள்',
+ 'week-past-one' => '{0} வாரத்திற்கு முன்பு',
+ 'week-past-other' => '{0} வாரங்களுக்கு முன்',
+ 'week-short-future-one' => '{0} வாரத்தில்',
+ 'week-short-future-other' => '{0} வாரங்களில்',
+ 'week-short-past-one' => '{0} வாரத்திற்கு முன்',
+ 'week-short-past-other' => '{0} வாரங்களுக்கு முன்',
+ 'year-future-one' => '{0} ஆண்டில்',
+ 'year-future-other' => '{0} ஆண்டுகளில்',
+ 'year-narrow-future-one' => '{0} ஆண்டில்',
+ 'year-narrow-future-other' => '{0} ஆண்டுகளில்',
+ 'year-narrow-past-one' => '{0} ஆண்டிற்கு முன்',
+ 'year-narrow-past-other' => '{0} ஆண்டுகளுக்கு முன்',
+ 'year-one' => '{0} ஆண்டு',
+ 'year-other' => '{0} ஆண்டுகள்',
+ 'year-past-one' => '{0} ஆண்டிற்கு முன்',
+ 'year-past-other' => '{0} ஆண்டுகளுக்கு முன்',
+ 'year-short-future-one' => '{0} ஆண்டில்',
+ 'year-short-future-other' => '{0} ஆண்டுகளில்',
+ 'year-short-past-one' => '{0} ஆண்டிற்கு முன்',
+ 'year-short-past-other' => '{0} ஆண்டுகளுக்கு முன்',
+);
diff --git a/MLEB/cldr/CldrNames/CldrNamesTe.php b/MLEB/cldr/CldrNames/CldrNamesTe.php
new file mode 100644
index 00000000..b9f5eba7
--- /dev/null
+++ b/MLEB/cldr/CldrNames/CldrNamesTe.php
@@ -0,0 +1,1204 @@
+<?php
+
+$languageNames = array(
+ 'aa' => 'అఫార్',
+ 'ab' => 'అబ్ఖాజియన్',
+ 'ace' => 'ఆఖినీస్',
+ 'ach' => 'అకోలి',
+ 'ada' => 'అడాంగ్మే',
+ 'ady' => 'అడిగాబ్జే',
+ 'ae' => 'అవేస్టాన్',
+ 'aeb' => 'టునీషియా అరబిక్',
+ 'af' => 'ఆఫ్రికాన్స్',
+ 'afh' => 'అఫ్రిహిలి',
+ 'agq' => 'అగేమ్',
+ 'ain' => 'ఐను',
+ 'ak' => 'అకాన్',
+ 'akk' => 'అక్కాడియాన్',
+ 'ale' => 'అలియుట్',
+ 'alt' => 'దక్షిణ ఆల్టై',
+ 'am' => 'అమ్హారిక్',
+ 'an' => 'అరగోనిస్',
+ 'ang' => 'ప్రాచీన ఆగ్లం',
+ 'anp' => 'ఆంగిక',
+ 'ar' => 'అరబిక్',
+ 'ar-001' => 'ఆధునిక ప్రామాణిక అరబిక్',
+ 'arc' => 'అరామేక్',
+ 'arn' => 'అరౌకేనియన్',
+ 'arp' => 'అరాపాహో',
+ 'arw' => 'అరావాక్',
+ 'arz' => 'ఈజిప్ట్ అరబిక్',
+ 'as' => 'అస్సామీ',
+ 'asa' => 'అసు',
+ 'ast' => 'అస్టురియాన్',
+ 'av' => 'అవారిక్',
+ 'awa' => 'అవధి',
+ 'ay' => 'ఐమారా',
+ 'az' => 'అజర్బైజాని',
+ 'ba' => 'బష్కిర్',
+ 'bal' => 'బాలుచి',
+ 'ban' => 'బాలినీస్',
+ 'bas' => 'బసా',
+ 'be' => 'బెలరుశియన్',
+ 'bej' => 'బేజా',
+ 'bem' => 'బెంబా',
+ 'bez' => 'బీనా',
+ 'bg' => 'బల్గేరియన్',
+ 'bho' => 'భోజ్ పూరి',
+ 'bi' => 'బిస్లామా',
+ 'bik' => 'బికోల్',
+ 'bin' => 'బిని',
+ 'bla' => 'సిక్ సికా',
+ 'bm' => 'బంబారా',
+ 'bn' => 'బెంగాలీ',
+ 'bo' => 'టిబెటన్',
+ 'bpy' => 'బిష్ణుప్రియ',
+ 'br' => 'బ్రెటన్',
+ 'bra' => 'బ్రాజ్',
+ 'brx' => 'బోడో',
+ 'bs' => 'బోస్నియన్',
+ 'bua' => 'బురియట్',
+ 'bug' => 'బ్యుగినిస్',
+ 'byn' => 'బ్లిన్',
+ 'ca' => 'కెటలాన్',
+ 'cad' => 'కేడ్డో',
+ 'car' => 'కేరిబ్',
+ 'cch' => 'అట్సామ్',
+ 'ce' => 'చెచెన్',
+ 'ceb' => 'సేబుఆనో',
+ 'cgg' => 'ఛిగా',
+ 'ch' => 'చమర్రో',
+ 'chb' => 'చిబ్చా',
+ 'chg' => 'చాగటై',
+ 'chk' => 'చూకిస్',
+ 'chm' => 'మారి',
+ 'chn' => 'చినూక్ జార్గన్',
+ 'cho' => 'చొచ్కతావ్',
+ 'chp' => 'చిపెవ్యాన్',
+ 'chr' => 'చెరోకీ',
+ 'chy' => 'చేయేన్',
+ 'ckb' => 'సొరాని కుర్దిష్',
+ 'co' => 'కోర్సికన్',
+ 'cop' => 'కోప్టిక్',
+ 'cr' => 'క్రి',
+ 'crh' => 'క్రిమియన్ టర్కిష్',
+ 'cs' => 'చెక్',
+ 'csb' => 'కషుబియన్',
+ 'cu' => 'చర్చ స్లావిక్',
+ 'cv' => 'చువాష్',
+ 'cy' => 'వెల్ష్',
+ 'da' => 'డేనిష్',
+ 'dak' => 'డకోటా',
+ 'dar' => 'డార్గ్వా',
+ 'dav' => 'టైటా',
+ 'de' => 'జర్మన్',
+ 'de-at' => 'ఆస్ట్రేలియన్ జర్మన్',
+ 'de-ch' => 'స్విస్ హై జర్మన్',
+ 'del' => 'డెలావేర్',
+ 'den' => 'స్లేవ్',
+ 'dgr' => 'డోగ్రిబ్',
+ 'din' => 'డింకా',
+ 'dje' => 'జార్మా',
+ 'doi' => 'డోగ్రి',
+ 'dsb' => 'లోవర్ సోర్బియన్',
+ 'dua' => 'దుఆలా',
+ 'dum' => 'మధ్యమ డచ్',
+ 'dv' => 'దివేహి',
+ 'dyo' => 'జోలా-ఫోనయి',
+ 'dyu' => 'డ్యులా',
+ 'dz' => 'జొన్ఖా',
+ 'ebu' => 'ఇంబు',
+ 'ee' => 'ఈవీ',
+ 'efi' => 'ఎఫిక్',
+ 'egy' => 'ప్రాచీన ఇజిప్షియన్',
+ 'eka' => 'ఏకాజక్',
+ 'el' => 'గ్రీక్',
+ 'elx' => 'ఎలామైట్',
+ 'en' => 'ఆంగ్లం',
+ 'en-au' => 'ఆస్ట్రేలియన్ ఇంగ్లీష్',
+ 'en-ca' => 'కెనడియన్ ఇంగ్లీష్',
+ 'en-gb' => 'బ్రిటిష్ ఇంగ్లీష్',
+ 'en-us' => 'అమెరికన్ ఇంగ్లీష్',
+ 'enm' => 'మధ్యమ ఆంగ్లం',
+ 'eo' => 'ఎస్పరెన్టొ',
+ 'es' => 'స్పానిష్',
+ 'es-419' => 'లాటిన్ అమెరికెన్ స్పానిష్',
+ 'es-es' => 'యూరోపియన్ స్పానిష్',
+ 'es-mx' => 'మెక్సికన్ స్పానిష్',
+ 'et' => 'ఈస్టొనియన్',
+ 'eu' => 'బాస్క్',
+ 'ewo' => 'ఎవోండొ',
+ 'fa' => 'పర్షియన్',
+ 'fan' => 'ఫాంగ్',
+ 'fat' => 'ఫాంటి',
+ 'ff' => 'ఫ్యుల',
+ 'fi' => 'ఫిన్నిష్',
+ 'fil' => 'ఫిలిపినో',
+ 'fj' => 'ఫిజియన్',
+ 'fo' => 'ఫారోయీజ్',
+ 'fon' => 'ఫాన్',
+ 'fr' => 'ఫ్రెంచ్',
+ 'fr-ca' => 'కెనడియెన్ ఫ్రెంచ్',
+ 'fr-ch' => 'స్విస్ ఫ్రెంచ్',
+ 'frm' => 'మధ్యమ ప్రెంచ్',
+ 'fro' => 'ప్రాచీన ప్రెంచ్',
+ 'frr' => 'ఉత్తర ఫ్రిసియన్',
+ 'frs' => 'తూర్పు ఫ్రిసియన్',
+ 'fur' => 'ఫ్రియులియన్',
+ 'fy' => 'పశ్చిమ ఫ్రిసియన్',
+ 'ga' => 'ఐరిష్',
+ 'gaa' => 'గా',
+ 'gag' => 'గాగౌజ్',
+ 'gay' => 'గాయో',
+ 'gba' => 'గ్బాయా',
+ 'gd' => 'స్కాటిష్ గేలిక్',
+ 'gez' => 'జీజ్',
+ 'gil' => 'గిల్బర్టీస్',
+ 'gl' => 'గెలిషియన్',
+ 'gmh' => 'మధ్యమ హై జర్మన్',
+ 'gn' => 'గురాని',
+ 'goh' => 'ప్రాచీన హై జర్మన్',
+ 'gon' => 'గోండి',
+ 'gor' => 'గోరోంటలా',
+ 'got' => 'గోథిక్',
+ 'grb' => 'గ్రేబో',
+ 'grc' => 'ప్రాచీన గ్రీక్',
+ 'gsw' => 'స్విస్ జర్మన్',
+ 'gu' => 'గుజరాతి',
+ 'guz' => 'గుస్సీ',
+ 'gv' => 'మంకస్',
+ 'gwi' => 'గ్విచిన్',
+ 'ha' => 'హౌసా',
+ 'hai' => 'హైడా',
+ 'haw' => 'హవాయియన్',
+ 'he' => 'హీబ్రు',
+ 'hi' => 'హిందీ',
+ 'hil' => 'హిలి గేయినోన్',
+ 'hit' => 'హిట్టిటే',
+ 'hmn' => 'మోంగ్',
+ 'ho' => 'హిరి మోటు',
+ 'hr' => 'క్రొయెషియన్',
+ 'hsb' => 'అప్పర్ సోర్బియన్',
+ 'ht' => 'హైతియన్',
+ 'hu' => 'హన్గేరియన్',
+ 'hup' => 'హుపా',
+ 'hy' => 'ఆర్మేనియన్',
+ 'hz' => 'హిరేరో',
+ 'ia' => 'ఇంటర్లింగ్వా',
+ 'iba' => 'ఐబాన్',
+ 'ibb' => 'ఇబిబియో',
+ 'id' => 'ఇండోనేషియన్',
+ 'ie' => 'ఇంటర్ లింగ్',
+ 'ig' => 'ఇగ్బో',
+ 'ii' => 'శిషువన్ ఈ',
+ 'ik' => 'ఇనూపైఏక్',
+ 'ilo' => 'ఐయోకో',
+ 'inh' => 'ఇంగుష్',
+ 'io' => 'ఈడౌ',
+ 'is' => 'ఐస్లాండిక్',
+ 'it' => 'ఇటాలియన్',
+ 'iu' => 'ఇనుక్టిటుట్',
+ 'ja' => 'జాపనీస్',
+ 'jbo' => 'లోజ్బాన్',
+ 'jgo' => 'గోంబా',
+ 'jmc' => 'మకొమ్',
+ 'jpr' => 'జ్యుడియో-పర్షియన్',
+ 'jrb' => 'జ్యుడియో-అరబిక్',
+ 'jv' => 'జావనీస్',
+ 'ka' => 'జార్జియన్',
+ 'kaa' => 'కారా-కల్పాక్',
+ 'kab' => 'కాబిల్',
+ 'kac' => 'కాచిన్',
+ 'kaj' => 'జ్యూ',
+ 'kam' => 'కంబా',
+ 'kaw' => 'కావి',
+ 'kbd' => 'కబార్డియన్',
+ 'kcg' => 'ట్యాప్',
+ 'kde' => 'మకొండే',
+ 'kea' => 'కాబువేర్దియను',
+ 'kfo' => 'కోరో',
+ 'kg' => 'కోంగో',
+ 'kha' => 'ఖాసి',
+ 'kho' => 'ఖటోనీస్',
+ 'khq' => 'కొయరా చీన్నీ',
+ 'ki' => 'కికుయు',
+ 'kj' => 'క్వాన్యామ',
+ 'kk' => 'కజఖ్',
+ 'kl' => 'కలాల్లిసూట్',
+ 'kln' => 'కలెంజిన్',
+ 'km' => 'ఖ్మేర్',
+ 'kmb' => 'కిమ్బుండు',
+ 'kn' => 'కన్నడ',
+ 'ko' => 'కొరియన్',
+ 'koi' => 'కోమి-పర్మాక్',
+ 'kok' => 'కొంకణి',
+ 'kos' => 'కోస్రేయన్',
+ 'kpe' => 'పెల్లే',
+ 'kr' => 'కానురి',
+ 'krc' => 'కరచే-బల్కార్',
+ 'krl' => 'కరేలియన్',
+ 'kru' => 'కూరుఖ్',
+ 'ks' => 'కాశ్మీరి',
+ 'ksb' => 'శంబాలా',
+ 'ksf' => 'బాఫియ',
+ 'ku' => 'కర్డిష్',
+ 'kum' => 'కుమ్యిక్',
+ 'kut' => 'కుటేనై',
+ 'kv' => 'కోమి',
+ 'kw' => 'కోర్నిష్',
+ 'ky' => 'కిర్గిజ్',
+ 'la' => 'లాటిన్',
+ 'lad' => 'లాడినో',
+ 'lag' => 'లాంగీ',
+ 'lah' => 'లాహండా',
+ 'lam' => 'లాంబా',
+ 'lb' => 'లుక్సంబర్గిష్',
+ 'lez' => 'లేజ్ఘియన్',
+ 'lg' => 'గాండా',
+ 'li' => 'లిమ్బర్గిష్',
+ 'lkt' => 'లకొటా',
+ 'ln' => 'లింగాల',
+ 'lo' => 'లావో',
+ 'lol' => 'మొంగో',
+ 'loz' => 'లోజి',
+ 'lt' => 'లిథుయేనియన్',
+ 'lu' => 'లూబ-కటాంగ',
+ 'lua' => 'లుబా-లులువ',
+ 'lui' => 'లుఇసేనో',
+ 'lun' => 'లుండా',
+ 'luo' => 'లువో',
+ 'lus' => 'లుషై',
+ 'luy' => 'లుయియ',
+ 'lv' => 'లాట్వియన్',
+ 'mad' => 'మాదురీస్',
+ 'mag' => 'మగాహి',
+ 'mai' => 'మైథిలి',
+ 'mak' => 'మకాసార్',
+ 'man' => 'మండింగో',
+ 'mas' => 'మాసాయి',
+ 'mdf' => 'మొక్షా',
+ 'mdr' => 'మండార్',
+ 'men' => 'మెండే',
+ 'mer' => 'మెరు',
+ 'mfe' => 'మొరిస్యేన్',
+ 'mg' => 'మాలాగసి',
+ 'mga' => 'మధ్యమ ఐరిష్',
+ 'mgh' => 'మక్వా-మిట్టో',
+ 'mgo' => 'మెటా',
+ 'mh' => 'మార్షలీస్',
+ 'mi' => 'మయోరి',
+ 'mic' => 'మికమాక్',
+ 'min' => 'మినాంగ్కాబో',
+ 'mk' => 'మసడోనియన్',
+ 'ml' => 'మలయాళం',
+ 'mn' => 'మంగోలియన్',
+ 'mnc' => 'మంచు',
+ 'mni' => 'మణిపూరి',
+ 'moh' => 'మోహుక్',
+ 'mos' => 'మోస్సి',
+ 'mr' => 'మరాఠీ',
+ 'ms' => 'మలేయ్',
+ 'mt' => 'మాల్టీస్',
+ 'mua' => 'ముదాంగ్',
+ 'mul' => 'బహుళ భాషలు',
+ 'mus' => 'క్రీక్',
+ 'mwl' => 'మిరాండిస్',
+ 'mwr' => 'మార్వాడి',
+ 'my' => 'బర్మీస్',
+ 'myv' => 'ఎర్జియా',
+ 'na' => 'నౌరు',
+ 'nap' => 'నియాపోలిటన్',
+ 'naq' => 'నమ',
+ 'nb' => 'నార్వీజియన్ బొక్మాల్',
+ 'nd' => 'ఉత్తర దెబెలె',
+ 'nds' => 'లో జర్మన్',
+ 'ne' => 'నేపాలి',
+ 'new' => 'నెవారి',
+ 'ng' => 'దోంగా',
+ 'nia' => 'నియాస్',
+ 'niu' => 'నియూఇయాన్',
+ 'nl' => 'డచ్',
+ 'nl-be' => 'ఫ్లెమిష్',
+ 'nmg' => 'క్వాసియె',
+ 'nn' => 'నార్విజియాన్ న్యోర్స్క్',
+ 'no' => 'నార్విజియాన్',
+ 'nog' => 'నోగై',
+ 'non' => 'ప్రాచిన నోర్స్',
+ 'nqo' => 'న్కో',
+ 'nr' => 'దక్షిణ దెబెలె',
+ 'nso' => 'ఉత్తర సోతో',
+ 'nus' => 'న్యుర్',
+ 'nv' => 'నవాహో',
+ 'nwc' => 'సాంప్రదాయ న్యుఆరి',
+ 'ny' => 'న్యాన్జా',
+ 'nym' => 'న్యంవేజి',
+ 'nyn' => 'న్యాన్కోలె',
+ 'nyo' => 'నిఓరో',
+ 'nzi' => 'జీమా',
+ 'oc' => 'ఆక్సిటన్',
+ 'oj' => 'చేవా',
+ 'om' => 'ఒరోమో',
+ 'or' => 'ఒరియా',
+ 'os' => 'ఒసేటిక్',
+ 'osa' => 'ఒసాజ్',
+ 'ota' => 'ఒట్టోమన్ టర్కిష్',
+ 'pa' => 'పంజాబీ',
+ 'pag' => 'పంగా సినాన్',
+ 'pal' => 'పహ్లావి',
+ 'pam' => 'పంపగ్న',
+ 'pap' => 'పపియమేంటో',
+ 'pau' => 'పాలుఆన్',
+ 'peo' => 'ప్రాచీన పర్షియన్',
+ 'phn' => 'ఫోనికన్',
+ 'pi' => 'పాలీ',
+ 'pl' => 'పోలిష్',
+ 'pon' => 'పోహ్న్పెయన్',
+ 'pro' => 'ప్రాచీన ప్రోవెంసాల్',
+ 'ps' => 'పాష్టో',
+ 'pt' => 'పోర్చుగీస్',
+ 'pt-br' => 'బ్రెజీలియన్ పోర్చుగీస్',
+ 'pt-pt' => 'యూరోపియన్ పోర్చుగీస్',
+ 'qu' => 'కెషుయా',
+ 'quc' => 'కిచే',
+ 'raj' => 'రాజస్తాని',
+ 'rap' => 'రాపన్యుయి',
+ 'rar' => 'రారోటొంగాన్',
+ 'rm' => 'రోమన్ష్',
+ 'rn' => 'రండి',
+ 'ro' => 'రోమానియన్',
+ 'ro-md' => 'మొల్డావియన్',
+ 'rof' => 'రోంబో',
+ 'rom' => 'రోమానీ',
+ 'ru' => 'రష్యన్',
+ 'rup' => 'ఆరోమేనియన్',
+ 'rw' => 'కిన్యర్వాండా',
+ 'rwk' => 'ర్వా',
+ 'sa' => 'సంస్కృతం',
+ 'sad' => 'సండావి',
+ 'sah' => 'యాకుట్',
+ 'sam' => 'సమారిటన్ అరమేక్',
+ 'saq' => 'సంబురు',
+ 'sas' => 'ససక్',
+ 'sat' => 'సంటాలి',
+ 'sbp' => 'సాంగు',
+ 'sc' => 'సార్డీనియన్',
+ 'scn' => 'సిసిలియన్',
+ 'sco' => 'స్కాట్స్',
+ 'sd' => 'సింధీ',
+ 'se' => 'ఉత్తర సామి',
+ 'seh' => 'సెనా',
+ 'sel' => 'సేల్కప్',
+ 'ses' => 'కోయోరాబోరో సెన్నీ',
+ 'sg' => 'సాంగో',
+ 'sga' => 'ప్రాచీన ఐరిష్',
+ 'sh' => 'సేర్బో-క్రొయేషియన్',
+ 'shi' => 'టాచెల్‌హిట్',
+ 'shn' => 'షాన్',
+ 'si' => 'సింహళం',
+ 'sid' => 'సిడామో',
+ 'sk' => 'స్లోవాక్',
+ 'sl' => 'స్లోవేనియాన్',
+ 'sm' => 'సమోవన్',
+ 'sma' => 'దక్షిణ సామి',
+ 'smj' => 'లులే సామి',
+ 'smn' => 'ఇనారి సామి',
+ 'sms' => 'స్కోల్ట్ సామి',
+ 'sn' => 'షోన',
+ 'snk' => 'సోనింకి',
+ 'so' => 'సోమాలి',
+ 'sog' => 'సోగ్డియన్',
+ 'sq' => 'అల్బేనియన్',
+ 'sr' => 'సెర్బియన్',
+ 'srn' => 'స్రానన్ టోనగో',
+ 'srr' => 'సెరేర్',
+ 'ss' => 'స్వాతి',
+ 'st' => 'దక్షిణ సోతో',
+ 'su' => 'సుడానీస్',
+ 'suk' => 'సుకుమా',
+ 'sus' => 'సుసు',
+ 'sux' => 'సుమేరియాన్',
+ 'sv' => 'స్వీడిష్',
+ 'sw' => 'స్వాహిలి',
+ 'swb' => 'కొమొరియన్',
+ 'swc' => 'కాంగో స్వాహిలి',
+ 'syc' => 'సాంప్రదాయ సిరియాక్',
+ 'syr' => 'సిరియాక్',
+ 'ta' => 'తమిళము',
+ 'tcy' => 'తుళు',
+ 'te' => 'తెలుగు',
+ 'tem' => 'టింనే',
+ 'teo' => 'టెసో',
+ 'ter' => 'టెరెనో',
+ 'tet' => 'టేటం',
+ 'tg' => 'తజిక్',
+ 'th' => 'థాయ్',
+ 'ti' => 'తిగ్రిన్యా',
+ 'tig' => 'టీగ్రె',
+ 'tiv' => 'టివ్',
+ 'tk' => 'తుర్కమెన్',
+ 'tkl' => 'టోకెలావ్',
+ 'tl' => 'తగలోగ్',
+ 'tlh' => 'క్లింగాన్',
+ 'tli' => 'లింగిట్',
+ 'tmh' => 'టామషేక్',
+ 'tn' => 'సెటస్వానా',
+ 'to' => 'టాంగాన్',
+ 'tog' => 'న్యాసా టోన్గా',
+ 'tpi' => 'టోక్ పిసిన్',
+ 'tr' => 'టర్కిష్',
+ 'ts' => 'సోంగా',
+ 'tsi' => 'శింషీయన్',
+ 'tt' => 'టాటర్',
+ 'tum' => 'టుంబుకా',
+ 'tvl' => 'టువాలు',
+ 'tw' => 'ట్వి',
+ 'twq' => 'టసావాఖ్',
+ 'ty' => 'తహితియన్',
+ 'tyv' => 'టువినియన్',
+ 'tzm' => 'సెంట్రల్ అట్లాస్ టామాజైట్',
+ 'udm' => 'ఉడ్ముర్ట్',
+ 'ug' => 'ఉయ్‌ఘర్',
+ 'uga' => 'ఉగారిటిక్',
+ 'uk' => 'ఉక్రేనియన్',
+ 'umb' => 'ఉమ్బుండు',
+ 'und' => 'తెలియని భాష',
+ 'ur' => 'ఉర్దూ',
+ 'uz' => 'ఉజ్బెక్',
+ 'vai' => 'వాయి',
+ 've' => 'వెండా',
+ 'vi' => 'వియత్నామీస్',
+ 'vo' => 'వోలాపుక్',
+ 'vot' => 'వోటిక్',
+ 'vun' => 'వుంజొ',
+ 'wa' => 'వాలూన్',
+ 'wal' => 'వాలామో',
+ 'war' => 'వారే',
+ 'was' => 'వాషో',
+ 'wo' => 'వొలాఫ్',
+ 'xal' => 'కల్మిక్',
+ 'xh' => 'షోసా',
+ 'xog' => 'సొగా',
+ 'yao' => 'యాఒ',
+ 'yap' => 'యాపిస్',
+ 'yi' => 'ఇడ్డిష్',
+ 'yo' => 'యోరుబా',
+ 'yue' => 'కాంటనీస్',
+ 'za' => 'జువాన్',
+ 'zap' => 'జపోటెక్',
+ 'zbl' => 'బ్లిసింబల్స్',
+ 'zen' => 'జెనాగా',
+ 'zgh' => 'ప్రామాణిక మొరొకన్ తమజియట్',
+ 'zh' => 'చైనీస్',
+ 'zh-hans' => 'సరళీకృత చైనీస్',
+ 'zh-hant' => 'సాంప్రదాయక చైనీస్',
+ 'zu' => 'జూలూ',
+ 'zun' => 'జుని',
+ 'zxx' => 'లిపి లేదు',
+ 'zza' => 'జాజా',
+);
+
+$currencyNames = array(
+ 'AED' => 'యునైటెడ్ ఆరబ్ ఎమిరేట్స్ దిరామ్',
+ 'AFN' => 'ఆఫ్ఘాన్ ఆఫ్ఘాని',
+ 'ALL' => 'ఆల్బేనియన్ లేక్',
+ 'AMD' => 'అమెరికన్ డ్రామ్',
+ 'ANG' => 'నెదర్లాండ్స్ యాంటిల్లియన్ గిల్‌డర్',
+ 'AOA' => 'అంగోలాన్ క్వాన్‌జా',
+ 'ARS' => 'అర్జెంటీనా పెసో',
+ 'AUD' => 'ఆస్ట్రేలియన్ డాలర్',
+ 'AWG' => 'అరుబన్ ఫ్లోరిన్',
+ 'AZN' => 'అజర్బైజాన్ మానట్',
+ 'BAM' => 'బోస్నియా-హెర్జగోవినా మార్పిడి చెయ్యగలిగే మార్క్',
+ 'BBD' => 'బర్బాడియన్ డాలర్',
+ 'BDT' => 'బాంగ్లాదేశ్ టాకా',
+ 'BGN' => 'బల్గేరియన్ లేవ్',
+ 'BHD' => 'బహ్రైని దీనార్',
+ 'BIF' => 'బురిండియన్ ఫ్రాంక్',
+ 'BMD' => 'బెర్ముడన్ డాలర్',
+ 'BND' => 'బ్రూనై డాలర్',
+ 'BOB' => 'బొలీవియన్ బొలీవియానో',
+ 'BRL' => 'బ్రెజిలియన్ రియల్',
+ 'BSD' => 'బహామియన్ డాలర్',
+ 'BTN' => 'భూటానీయుల గుల్‌ట్రుమ్',
+ 'BWP' => 'బోట్స్‌వానా పులా',
+ 'BYR' => 'బెలరూసియన్ రూబల్',
+ 'BZD' => 'బెలీజ్ డాలర్',
+ 'CAD' => 'కెనడియన్ డాలర్',
+ 'CDF' => 'కొంగోలిస్ ఫ్రాంక్',
+ 'CHF' => 'స్విస్ ఫ్రాంక్',
+ 'CLP' => 'చిలియన్ పెసో',
+ 'CNY' => 'చైనా దేశ యువాన్',
+ 'COP' => 'కొలంబియన్ పెసో',
+ 'CRC' => 'కోస్టా రికన్ కోలోన్',
+ 'CUC' => 'క్యూబన్ కన్వర్టబుల్ పెసో',
+ 'CUP' => 'క్యూబన్ పెసో',
+ 'CVE' => 'కేప్ వెర్డియన్ ఎస్కుడో',
+ 'CZK' => 'చెక్ రిపబ్లిక్ కోరునా',
+ 'DJF' => 'జిబోటియన్ ఫ్రాంక్',
+ 'DKK' => 'డానిష్ క్రోన్',
+ 'DOP' => 'డోమినికన్ పెసో',
+ 'DZD' => 'అల్జీరియన్ దీనార్',
+ 'EGP' => 'ఈజిప్షియన్ పౌండ్',
+ 'ERN' => 'ఎరిట్రీన్ నక్ఫా',
+ 'ETB' => 'ఇథియోపియన్ బర్',
+ 'EUR' => 'యురొ',
+ 'FJD' => 'ఫీజియన్ డాలర్',
+ 'FKP' => 'ఫాక్‌ల్యాండ్ దీవులు పౌండ్',
+ 'GBP' => 'బ్రిటిష్ పౌండ్ స్టెర్లింగ్',
+ 'GEL' => 'జార్జియన్ లారి',
+ 'GHS' => 'గానెయన్ సెడి',
+ 'GIP' => 'జిబ్రల్‌టూర్ పౌండ్',
+ 'GMD' => 'గాంబియన్ దలాసి',
+ 'GNF' => 'గ్వినియన్ ఫ్రాంక్',
+ 'GTQ' => 'గ్యుటెమాలన్ క్వెట్‌జల్',
+ 'GYD' => 'గుయనియాస్ డాలర్',
+ 'HKD' => 'హాంకాంగ్ డాలర్',
+ 'HNL' => 'హోండురన్ లెమిపిరా',
+ 'HRK' => 'క్రొయేషియన్ క్యూన',
+ 'HTG' => 'హైటియన్ గ్వోర్డే',
+ 'HUF' => 'హంగేరియన్ ఫోరిన్ట్',
+ 'IDR' => 'ఇండోనేషియా రూపాయి',
+ 'ILS' => 'ఐరాయిలి న్యూ షెక్యెల్',
+ 'INR' => 'రూపాయి',
+ 'IQD' => 'ఇరాకీ దీనార్',
+ 'IRR' => 'ఇరానియన్ రీయల్',
+ 'ISK' => 'ఐస్లాండిక్ క్రోనా',
+ 'JMD' => 'జమైకన్ డాలర్',
+ 'JOD' => 'జోర్‌డానియన్ దీనార్',
+ 'JPY' => 'జపాను దేశ యెస్',
+ 'KES' => 'కెన్యాన్ షిల్లింగ్',
+ 'KGS' => 'కిర్గిస్థాని సౌమ్',
+ 'KHR' => 'కాంబోడియన్ రీల్',
+ 'KMF' => 'కొమోరియన్ ఫ్రాంక్',
+ 'KPW' => 'ఉత్తర కొరియా వోన్',
+ 'KRW' => 'దక్షిణ కొరియా వోన్',
+ 'KWD' => 'కువైట్ దీనార్',
+ 'KYD' => 'కేమాన్ దీవుల డాలర్',
+ 'KZT' => 'ఖజికిస్థాన్ టెంగే',
+ 'LAK' => 'లాటియన్ కిప్',
+ 'LBP' => 'లెబనీస్ పౌండ్',
+ 'LKR' => 'శ్రీలంక రూపాయి',
+ 'LRD' => 'లిబేరియన్ డాలర్',
+ 'LSL' => 'లెసోధో లోటి',
+ 'LTL' => 'లిథోనియన్ లీటాస్',
+ 'LVL' => 'లాత్వియన్ లాట్స్',
+ 'LYD' => 'లిబియన్ దీనార్',
+ 'MAD' => 'మోరోకన్ దిర్హుమ్',
+ 'MDL' => 'మోల్‌డోవన్ ల్యూ',
+ 'MGA' => 'మలగసీ అరియరీ',
+ 'MKD' => 'మెసిడోనియన్ దినార్',
+ 'MMK' => 'మయన్మార్ క్యాట్',
+ 'MNT' => 'మంగోలియన్ టుగ్రిక్',
+ 'MOP' => 'మకనీస్ పటాక',
+ 'MRO' => 'మౌరిటానియన్ ఒగ్యియా',
+ 'MUR' => 'మారిషన్ రూపాయి',
+ 'MVP' => 'మాల్దీవుల రూపాయి',
+ 'MVR' => 'మాల్దీవియన్ రుఫియా',
+ 'MWK' => 'మలావియన్ క్వాచా',
+ 'MXN' => 'మెక్సికన్ పెసో',
+ 'MYR' => 'మలేషియా రింగ్గిట్',
+ 'MZN' => 'మొజాంబికన్ మెటికల్',
+ 'NAD' => 'నమిబియన్ డాలర్',
+ 'NGN' => 'నైజీరియన్ నైరా',
+ 'NIO' => 'నికరగ్యుయన్ కొర్‌డుబు',
+ 'NOK' => 'నార్వేజీయన్ క్రోన్',
+ 'NPR' => 'నేపాలీయుల రూపాయి',
+ 'NZD' => 'న్యూజిలాండ్ డాలర్',
+ 'OMR' => 'ఒమాని రీయల్',
+ 'PAB' => 'పనామనియన్ బల్బోవ',
+ 'PEN' => 'పెరువియన్ న్యూవో సోల్',
+ 'PGK' => 'పప్యూ న్యూ గ్యినియన్ కినా',
+ 'PHP' => 'ఫిలిప్పిన్ పెసో',
+ 'PKR' => 'పాకిస్థాన్ రూపాయి',
+ 'PLN' => 'పోలిష్ జ్లోటీ',
+ 'PYG' => 'పరగ్వాయన్ గ్వారని',
+ 'QAR' => 'క్వాటరి రీయల్',
+ 'RON' => 'రోమానియాన్ లెయు',
+ 'RSD' => 'సెర్బియన్ దీనార్',
+ 'RUB' => 'రష్యన్ రూబల్',
+ 'RWF' => 'ర్వానడాన్ ఫ్రాంక్',
+ 'SAR' => 'సౌది రియల్',
+ 'SBD' => 'సోలోమన్ దీవుల డాలర్',
+ 'SCR' => 'సెయిచెల్లోయిస్ రూపాయి',
+ 'SDG' => 'సుడానీస్ పౌండ్',
+ 'SEK' => 'స్వీడిష్ క్రోనా',
+ 'SGD' => 'సింగపూర్ డాలర్',
+ 'SHP' => 'సెయింట్ హెలెనా పౌండ్',
+ 'SLL' => 'సీయిరు లియోనియన్ లీయోన్',
+ 'SOS' => 'సొమాలి షిల్లింగ్',
+ 'SRD' => 'సురినామీయుల డాలర్',
+ 'SSP' => 'దక్షిణ సుడానీస్ పౌండ్',
+ 'STD' => 'సావో టోమ్ మరియు ప్రిన్సిపి డోబ్రా',
+ 'SYP' => 'సిరీయన్ పౌండ్',
+ 'SZL' => 'స్వాజి లిలాన్గేని',
+ 'THB' => 'థాయ్ బాట్',
+ 'TJS' => 'తజికిస్థాన్ సమోని',
+ 'TMT' => 'తుర్క్‌మెనిస్థాని మనాట్',
+ 'TND' => 'తునీషియన్ దీనార్',
+ 'TOP' => 'టోంగాన్ పాంʻగా',
+ 'TRY' => 'తుర్కిష్ లిరా',
+ 'TTD' => 'ట్రినిడాడ్ మరియు టొబాగో డాలర్',
+ 'TWD' => 'క్రొత్త తైవాన్ డాలర్',
+ 'TZS' => 'టాంజానియన్ షిల్లింగ్',
+ 'UAH' => 'ఉక్రయినియన్ హ్రివ్‌నియా',
+ 'UGX' => 'యుగండన్ షిల్లింగ్',
+ 'USD' => 'అమెరికా డాలర్',
+ 'UYU' => 'ఉరుగ్వెయన్ పెసో',
+ 'UZS' => 'ఉజ్‌బెకిస్తాన్ సౌమ్',
+ 'VEF' => 'వెనుజులా బోలివర్',
+ 'VND' => 'వియత్నామీయుల డాంగ్',
+ 'VUV' => 'వనాటు వటు',
+ 'WST' => 'సమోయన్ తాలా',
+ 'XAF' => 'సిఎఫ్‌ఎ ఫ్రాంక్ బిఇఏసి',
+ 'XAG' => 'వెండి',
+ 'XAU' => 'బంగారం',
+ 'XCD' => 'తూర్పు కరీబియన్ డాలర్',
+ 'XOF' => 'సిఎఫ్‌ఎ ఫ్రాంక్ బిసిఈఏఓ',
+ 'XPF' => 'సిఎఫ్‌పి ఫ్రాంక్',
+ 'XPT' => 'ప్లాటినం',
+ 'XXX' => 'తెలియని కరెన్సీ',
+ 'YER' => 'ఎమునీ రీయల్',
+ 'ZAR' => 'దక్షిణ ఆఫ్రికా ర్యాండ్',
+ 'ZMK' => 'జాంబియన్ క్వాచా (1968–2012)',
+ 'ZMW' => 'జాంబియన్ క్వాచా',
+);
+
+$currencySymbols = array(
+ 'AED' => 'AED',
+ 'AFN' => 'AFN',
+ 'ALL' => 'ALL',
+ 'AMD' => 'AMD',
+ 'ANG' => 'ANG',
+ 'AOA' => 'AOA',
+ 'ARS' => 'ARS',
+ 'AUD' => 'A$',
+ 'AWG' => 'AWG',
+ 'AZN' => 'AZN',
+ 'BAM' => 'BAM',
+ 'BBD' => 'BBD',
+ 'BDT' => 'BDT',
+ 'BGN' => 'BGN',
+ 'BHD' => 'BHD',
+ 'BIF' => 'BIF',
+ 'BMD' => 'BMD',
+ 'BND' => 'BND',
+ 'BOB' => 'BOB',
+ 'BRL' => 'R$',
+ 'BSD' => 'BSD',
+ 'BTN' => 'BTN',
+ 'BWP' => 'BWP',
+ 'BYR' => 'BYR',
+ 'BZD' => 'BZD',
+ 'CAD' => 'CA$',
+ 'CDF' => 'CDF',
+ 'CHF' => 'CHF',
+ 'CLP' => 'CLP',
+ 'CNY' => 'CN¥',
+ 'COP' => 'COP',
+ 'CRC' => 'CRC',
+ 'CUC' => 'CUC',
+ 'CUP' => 'CUP',
+ 'CVE' => 'CVE',
+ 'CZK' => 'CZK',
+ 'DJF' => 'DJF',
+ 'DKK' => 'DKK',
+ 'DOP' => 'DOP',
+ 'DZD' => 'DZD',
+ 'EGP' => 'EGP',
+ 'ERN' => 'ERN',
+ 'ETB' => 'ETB',
+ 'EUR' => '€',
+ 'FJD' => 'FJD',
+ 'FKP' => 'FKP',
+ 'GBP' => '£',
+ 'GEL' => 'GEL',
+ 'GHS' => 'GHS',
+ 'GIP' => 'GIP',
+ 'GMD' => 'GMD',
+ 'GNF' => 'GNF',
+ 'GTQ' => 'GTQ',
+ 'GYD' => 'GYD',
+ 'HKD' => 'HK$',
+ 'HNL' => 'HNL',
+ 'HRK' => 'HRK',
+ 'HTG' => 'HTG',
+ 'HUF' => 'HUF',
+ 'IDR' => 'IDR',
+ 'ILS' => '₪',
+ 'INR' => '₹',
+ 'IQD' => 'IQD',
+ 'IRR' => 'IRR',
+ 'ISK' => 'ISK',
+ 'JMD' => 'JMD',
+ 'JOD' => 'JOD',
+ 'JPY' => 'JP¥',
+ 'KES' => 'KES',
+ 'KGS' => 'KGS',
+ 'KHR' => 'KHR',
+ 'KMF' => 'KMF',
+ 'KPW' => 'KPW',
+ 'KRW' => '₩',
+ 'KWD' => 'KWD',
+ 'KYD' => 'KYD',
+ 'KZT' => 'KZT',
+ 'LAK' => 'LAK',
+ 'LBP' => 'LBP',
+ 'LKR' => 'LKR',
+ 'LRD' => 'LRD',
+ 'LTL' => 'LTL',
+ 'LVL' => 'LVL',
+ 'LYD' => 'LYD',
+ 'MAD' => 'MAD',
+ 'MDL' => 'MDL',
+ 'MGA' => 'MGA',
+ 'MKD' => 'MKD',
+ 'MMK' => 'MMK',
+ 'MNT' => 'MNT',
+ 'MOP' => 'MOP',
+ 'MRO' => 'MRO',
+ 'MUR' => 'MUR',
+ 'MVR' => 'MVR',
+ 'MWK' => 'MWK',
+ 'MXN' => 'MX$',
+ 'MYR' => 'MYR',
+ 'MZN' => 'MZN',
+ 'NAD' => 'NAD',
+ 'NGN' => 'NGN',
+ 'NIO' => 'NIO',
+ 'NOK' => 'NOK',
+ 'NPR' => 'NPR',
+ 'NZD' => 'NZ$',
+ 'OMR' => 'OMR',
+ 'PAB' => 'PAB',
+ 'PEN' => 'PEN',
+ 'PGK' => 'PGK',
+ 'PHP' => 'PHP',
+ 'PKR' => 'PKR',
+ 'PLN' => 'PLN',
+ 'PYG' => 'PYG',
+ 'QAR' => 'QAR',
+ 'RON' => 'RON',
+ 'RSD' => 'RSD',
+ 'RUB' => 'RUB',
+ 'RWF' => 'RWF',
+ 'SAR' => 'SAR',
+ 'SBD' => 'SBD',
+ 'SCR' => 'SCR',
+ 'SDG' => 'SDG',
+ 'SEK' => 'SEK',
+ 'SGD' => 'SGD',
+ 'SHP' => 'SHP',
+ 'SLL' => 'SLL',
+ 'SOS' => 'SOS',
+ 'SRD' => 'SRD',
+ 'SSP' => 'SSP',
+ 'STD' => 'STD',
+ 'SYP' => 'SYP',
+ 'SZL' => 'SZL',
+ 'THB' => '฿',
+ 'TJS' => 'TJS',
+ 'TMT' => 'TMT',
+ 'TND' => 'TND',
+ 'TOP' => 'TOP',
+ 'TRY' => 'TRY',
+ 'TTD' => 'TTD',
+ 'TWD' => 'NT$',
+ 'TZS' => 'TZS',
+ 'UAH' => 'UAH',
+ 'UGX' => 'UGX',
+ 'USD' => '$',
+ 'UYU' => 'UYU',
+ 'UZS' => 'UZS',
+ 'VEF' => 'VEF',
+ 'VND' => '₫',
+ 'VUV' => 'VUV',
+ 'WST' => 'WST',
+ 'XAF' => 'FCFA',
+ 'XCD' => 'EC$',
+ 'XOF' => 'CFA',
+ 'XPF' => 'CFPF',
+ 'YER' => 'YER',
+ 'ZAR' => 'ZAR',
+ 'ZMW' => 'ZMW',
+);
+
+$countryNames = array(
+ 'AC' => 'ఎసెషన్ దీవి',
+ 'AD' => 'అండొర్రా',
+ 'AE' => 'యునైటెడ్ అరబ్ ఎమిరేట్స్',
+ 'AF' => 'ఆఫ్ఘనిస్తాన్',
+ 'AG' => 'ఆంటిగ్వా మరియు బార్బుడా',
+ 'AI' => 'ఆంగవిల్లా',
+ 'AL' => 'అల్బేనియా',
+ 'AM' => 'ఆర్మేనియా',
+ 'AN' => 'నేదేర్లేండ్స్ అంటిల్లిస్',
+ 'AO' => 'అంగోలా',
+ 'AQ' => 'అంటార్కటికా',
+ 'AR' => 'అర్జెంటీనా',
+ 'AS' => 'అమెరికన్ సమోవా',
+ 'AT' => 'ఆస్ట్రియా',
+ 'AU' => 'ఆస్ట్రేలియా',
+ 'AW' => 'అరుబా',
+ 'AX' => 'ఆలేండ్ దీవులు',
+ 'AZ' => 'అజర్బైజాన్',
+ 'BA' => 'బోస్నియా మరియు హెర్జెగొవీనా',
+ 'BB' => 'బార్బడోస్',
+ 'BD' => 'బంగ్లాదేశ్',
+ 'BE' => 'బెల్జియం',
+ 'BF' => 'బుర్కినా ఫాసో',
+ 'BG' => 'బల్గేరియా',
+ 'BH' => 'బహ్రెయిన్',
+ 'BI' => 'బురుండి',
+ 'BJ' => 'బెనిన్',
+ 'BL' => 'సెంట్ బర్తేలెమీ',
+ 'BM' => 'బెర్ముడా',
+ 'BN' => 'బ్రూనై',
+ 'BO' => 'బొలీవియా',
+ 'BQ' => 'కరీబియన్ నెదర్లాండ్స్',
+ 'BR' => 'బ్రెజిల్',
+ 'BS' => 'బహామాస్',
+ 'BT' => 'భూటాన్',
+ 'BV' => 'బొవెట్ దీవి',
+ 'BW' => 'బోట్స్వానా',
+ 'BY' => 'బెలారస్',
+ 'BZ' => 'బెలిజ్',
+ 'CA' => 'కెనడా',
+ 'CC' => 'కోకోస్ (కీలింగ్) దీవులు',
+ 'CD' => 'కాంగో- కిన్షాసా',
+ 'CF' => 'సెంట్రల్ ఆఫ్రికన్ రిపబ్లిక్',
+ 'CG' => 'కాంగో- బ్రాజావిల్లి',
+ 'CH' => 'స్విట్జర్లాండ్',
+ 'CI' => 'ఐవరీ కోస్ట్',
+ 'CK' => 'కుక్ దీవులు',
+ 'CL' => 'చిలీ',
+ 'CM' => 'కామెరూన్',
+ 'CN' => 'చైనా',
+ 'CO' => 'కొలంబియా',
+ 'CP' => 'క్లిప్పర్టన్ దీవి',
+ 'CR' => 'కోస్టా రికా',
+ 'CU' => 'క్యూబా',
+ 'CV' => 'కేప్ వెర్డే',
+ 'CW' => 'కురాకవో',
+ 'CX' => 'క్రిస్మస్ దీవి',
+ 'CY' => 'సైప్రస్',
+ 'CZ' => 'చెక్ రిపబ్లిక్',
+ 'DE' => 'జర్మనీ',
+ 'DG' => 'డియాగో గార్సియా',
+ 'DJ' => 'జిబౌటి',
+ 'DK' => 'డెన్మార్క్',
+ 'DM' => 'డోమెనిక',
+ 'DO' => 'డొమెనికన్ రిపబ్లిక్',
+ 'DZ' => 'అల్జీరియా',
+ 'EA' => 'స్యూటా మరియు మెలిల్లా',
+ 'EC' => 'ఈక్వడార్',
+ 'EE' => 'ఎస్టోనియా',
+ 'EG' => 'ఈజిప్ట్',
+ 'EH' => 'పడమటి సహారా',
+ 'ER' => 'ఎరిట్రియా',
+ 'ES' => 'స్పెయిన్',
+ 'ET' => 'ఇథియోపియా',
+ 'EU' => 'యురోపియన్ యునియన్',
+ 'FI' => 'ఫిన్లాండ్',
+ 'FJ' => 'ఫిజీ',
+ 'FK' => 'ఫాక్‌ల్యాండ్ దీవులు',
+ 'FM' => 'మైక్రోనేశియ',
+ 'FO' => 'ఫారో దీవులు',
+ 'FR' => 'ఫ్రాన్స్‌',
+ 'GA' => 'గాబన్',
+ 'GB' => 'యు.కె.',
+ 'GD' => 'గ్రెనెడా',
+ 'GE' => 'జార్జియా',
+ 'GF' => 'ఫ్రెంచ్ గియానా',
+ 'GG' => 'గ్వేర్నసే',
+ 'GH' => 'ఘనా',
+ 'GI' => 'జిబ్రాల్టార్',
+ 'GL' => 'గ్రీన్‌లాండ్',
+ 'GM' => 'గాంబియా',
+ 'GN' => 'గినియా',
+ 'GP' => 'గ్వాడేలోప్',
+ 'GQ' => 'ఈక్వటోరియల్ గినియా',
+ 'GR' => 'గ్రీస్',
+ 'GS' => 'దక్షిణ జార్జియా & దక్షిణ శాండ్విచ్ దీవులు',
+ 'GT' => 'గ్వాటిమాల',
+ 'GU' => 'గ్వామ్',
+ 'GW' => 'గినియా-బిస్సావ్',
+ 'GY' => 'గయానా',
+ 'HK' => 'హాంకాంగ్',
+ 'HM' => 'హెర్డ్ & మెక్ డొనాల్డ్ దీవులు',
+ 'HN' => 'హోండురాస్',
+ 'HR' => 'క్రోయేషియా',
+ 'HT' => 'హైటి',
+ 'HU' => 'హంగేరీ',
+ 'IC' => 'కేనరీ దీవులు',
+ 'ID' => 'ఇండోనేషియా',
+ 'IE' => 'ఐర్లాండ్',
+ 'IL' => 'ఇజ్రాయిల్',
+ 'IM' => 'ఐల్ ఆఫ్ మాన్',
+ 'IN' => 'భారత దేశం',
+ 'IO' => 'బ్రిటీష్ భారతీయ సముద్రపు ప్రాంతం',
+ 'IQ' => 'ఇరాక్',
+ 'IR' => 'ఇరాన్',
+ 'IS' => 'ఐస్లాండ్',
+ 'IT' => 'ఇటలీ',
+ 'JE' => 'జెర్సీ',
+ 'JM' => 'జమైకా',
+ 'JO' => 'జోర్డాన్',
+ 'JP' => 'జపాన్',
+ 'KE' => 'కెన్యా',
+ 'KG' => 'కిర్గిజిస్తాన్',
+ 'KH' => 'కంబోడియా',
+ 'KI' => 'కిరిబాటి',
+ 'KM' => 'కొమొరోస్',
+ 'KN' => 'సెంట్ కిట్ట్స్ మరియు నెవిస్',
+ 'KP' => 'ఉత్తర కొరియా',
+ 'KR' => 'దక్షిణ కొరియా',
+ 'KW' => 'కువైట్',
+ 'KY' => 'కేమాన్ దీవులు',
+ 'KZ' => 'కజకస్తాన్',
+ 'LA' => 'లావోస్',
+ 'LB' => 'లెబనాన్',
+ 'LC' => 'సెంట్ లూసియా',
+ 'LI' => 'లిక్టెస్టేన్',
+ 'LK' => 'శ్రీలంక',
+ 'LR' => 'లైబీరియా',
+ 'LS' => 'లెసోతో',
+ 'LT' => 'లిథువేనియా',
+ 'LU' => 'లక్సంబర్గ్',
+ 'LV' => 'లాత్వియా',
+ 'LY' => 'లిబియా',
+ 'MA' => 'మొరాక్కో',
+ 'MC' => 'మొనాకో',
+ 'MD' => 'మోల్డోవా',
+ 'ME' => 'మోంటేనేగ్రో',
+ 'MF' => 'సెంట్ మార్టిన్',
+ 'MG' => 'మడగాస్కర్',
+ 'MH' => 'మార్షల్ దీవులు',
+ 'MK' => 'మేసిడోనియా',
+ 'ML' => 'మాలి',
+ 'MM' => 'మయన్మార్ (బర్మా)',
+ 'MN' => 'మంగోలియా',
+ 'MO' => 'మకావు',
+ 'MP' => 'ఉత్తర మరియానా దీవులు',
+ 'MQ' => 'మార్టినిక్',
+ 'MR' => 'మౌరిటేనియా',
+ 'MS' => 'మోంట్సేర్రాట్',
+ 'MT' => 'మాల్టా',
+ 'MU' => 'మారిషస్',
+ 'MV' => 'మాల్దీవులు',
+ 'MW' => 'మాలావి',
+ 'MX' => 'మెక్సికో',
+ 'MY' => 'మలేషియా',
+ 'MZ' => 'మొజాంబిక్',
+ 'NA' => 'నమీబియా',
+ 'NC' => 'క్రొత్త కాలెడోనియా',
+ 'NE' => 'నైజర్',
+ 'NF' => 'నార్ఫాక్ దీవి',
+ 'NG' => 'నైజీరియా',
+ 'NI' => 'నికరాగువా',
+ 'NL' => 'నెదర్లాండ్స్',
+ 'NO' => 'నార్వే',
+ 'NP' => 'నేపాల్',
+ 'NR' => 'నౌరు',
+ 'NU' => 'నియు',
+ 'NZ' => 'న్యూజిలాండ్',
+ 'OM' => 'ఒమన్',
+ 'PA' => 'పనామా',
+ 'PE' => 'పెరూ',
+ 'PF' => 'ఫ్రెంచ్ పోలినిషియా',
+ 'PG' => 'పాపువా న్యు గినియా',
+ 'PH' => 'ఫిలిప్పీన్స్',
+ 'PK' => 'పాకిస్తాన్',
+ 'PL' => 'పోలాండ్',
+ 'PM' => 'సెంట్ పియెర్ మరియు మికెలాన్',
+ 'PN' => 'పిట్‌కెయిర్న్ దీవులు',
+ 'PR' => 'ఫ్యూర్టో రికో',
+ 'PS' => 'పాలస్తీనా',
+ 'PT' => 'పోర్చుగల్',
+ 'PW' => 'పలావు',
+ 'PY' => 'పరాగ్వే',
+ 'QA' => 'కతర్',
+ 'QO' => 'ఒషీనియా బయటున్నవి',
+ 'RE' => 'రియూనియన్',
+ 'RO' => 'రోమానియా',
+ 'RS' => 'సెర్బియా',
+ 'RU' => 'రష్యా',
+ 'RW' => 'రువాండా',
+ 'SA' => 'సౌదీ అరేబియా',
+ 'SB' => 'సోలమన్ దీవులు',
+ 'SC' => 'సీషెల్స్',
+ 'SD' => 'సూడాన్',
+ 'SE' => 'స్వీడన్',
+ 'SG' => 'సింగపూర్',
+ 'SH' => 'సెంట్ హెలినా',
+ 'SI' => 'స్లోవేనియా',
+ 'SJ' => 'స్వాల్బార్డ్ మరియు యాన్ మాయేన్',
+ 'SK' => 'స్లోవేకియా',
+ 'SL' => 'సియెర్రా లియాన్',
+ 'SM' => 'సాన్ మారినో',
+ 'SN' => 'సెనెగల్',
+ 'SO' => 'సోమాలియా',
+ 'SR' => 'సురినామ్',
+ 'SS' => 'దక్షిణ సూడాన్',
+ 'ST' => 'సావోటోమ్ మరియు ప్రిన్సిపే',
+ 'SV' => 'ఎల్ సాల్వడోర్',
+ 'SX' => 'సింట్ మార్టెన్',
+ 'SY' => 'సిరియా',
+ 'SZ' => 'స్వాజిల్యాండ్',
+ 'TA' => 'ట్రిస్టన్ డ కన్హా',
+ 'TC' => 'తుర్క్ మరియు కాలికోస్ దీవులు',
+ 'TD' => 'చాద్',
+ 'TF' => 'ఫ్రెంచ్ దక్షిణ ప్రాంతాలు',
+ 'TG' => 'టోగో',
+ 'TH' => 'థాయిలాండ్',
+ 'TJ' => 'తజికిస్తాన్',
+ 'TK' => 'టోకేలావ్',
+ 'TL' => 'టిమోర్-లెస్టె',
+ 'TM' => 'తుర్కమేనిస్తాన్',
+ 'TN' => 'ట్యునీషియా',
+ 'TO' => 'టోంగా',
+ 'TR' => 'టర్కీ',
+ 'TT' => 'ట్రినిడాడ్ మరియు టొబాగో',
+ 'TV' => 'టువాలు',
+ 'TW' => 'తైవాన్',
+ 'TZ' => 'టాంజానియా',
+ 'UA' => 'ఉక్రెయిన్',
+ 'UG' => 'ఉగాండా',
+ 'UM' => 'సంయుక్త రాజ్య అమెరికా బయట ఉన్న దీవులు',
+ 'US' => 'యు.ఎస్.',
+ 'UY' => 'ఉరుగువే',
+ 'UZ' => 'ఉజ్బెకిస్తాన్',
+ 'VA' => 'వాటికన్ నగరం',
+ 'VC' => 'సెంట్ విన్సెంట్ మరియు గ్రెనడీన్స్',
+ 'VE' => 'వెనుజువేలా',
+ 'VG' => 'బ్రిటిష్ వర్జిన్ దీవులు',
+ 'VI' => 'యు.ఎస్. వర్జిన్ దీవులు',
+ 'VN' => 'వియత్నాం',
+ 'VU' => 'వనాటు',
+ 'WF' => 'వాలిస్ మరియు ఫ్యుత్యునా',
+ 'WS' => 'సమోవా',
+ 'XK' => 'కొసోవో',
+ 'YE' => 'యెమెన్',
+ 'YT' => 'మాయొట్టి',
+ 'ZA' => 'దక్షిణ ఆఫ్రికా',
+ 'ZM' => 'జాంబియా',
+ 'ZW' => 'జింబాబ్వే',
+);
+
+$timeUnits = array(
+ 'day-future-one' => '{0} రోజులో',
+ 'day-future-other' => '{0} రోజుల్లో',
+ 'day-narrow-future-one' => '+{0} రోజు',
+ 'day-narrow-future-other' => '+{0} రోజులు',
+ 'day-narrow-past-one' => '-{0} రోజు',
+ 'day-narrow-past-other' => '-{0} రోజులు',
+ 'day-one' => '{0} రోజు',
+ 'day-other' => '{0} రోజులు',
+ 'day-past-one' => '{0} రోజు క్రితం',
+ 'day-past-other' => '{0} రోజుల క్రితం',
+ 'day-short-future-one' => '{0} రోజులో',
+ 'day-short-future-other' => '{0} రోజుల్లో',
+ 'day-short-past-one' => '{0} రోజు క్రితం',
+ 'day-short-past-other' => '{0} రోజుల క్రితం',
+ 'hour-future-one' => '{0} గంటలో',
+ 'hour-future-other' => '{0} గంటల్లో',
+ 'hour-narrow-future-one' => '+{0} గం',
+ 'hour-narrow-future-other' => '+{0} గం',
+ 'hour-narrow-past-one' => '-{0} గం',
+ 'hour-narrow-past-other' => '-{0} గం',
+ 'hour-one' => '{0} గంట',
+ 'hour-other' => '{0} గంటలు',
+ 'hour-past-one' => '{0} గంట క్రితం',
+ 'hour-past-other' => '{0} గంటల క్రితం',
+ 'hour-short-future-one' => '{0} గం.లో',
+ 'hour-short-future-other' => '{0} గం.లో',
+ 'hour-short-past-one' => '{0} గం. క్రితం',
+ 'hour-short-past-other' => '{0} గం. క్రితం',
+ 'microsecond-one' => '{0} మైక్రోసెకను',
+ 'microsecond-other' => '{0} మైక్రోసెకన్లు',
+ 'millisecond-one' => '{0} మిల్లీసెకను',
+ 'millisecond-other' => '{0} మిల్లీసెకన్లు',
+ 'minute-future-one' => '{0} నిమిషంలో',
+ 'minute-future-other' => '{0} నిమిషాల్లో',
+ 'minute-narrow-future-one' => '+{0} ని',
+ 'minute-narrow-future-other' => '+{0} ని',
+ 'minute-narrow-past-one' => '-{0} ని',
+ 'minute-narrow-past-other' => '-{0} ని',
+ 'minute-one' => '{0} నిమిషం',
+ 'minute-other' => '{0} నిమిషాలు',
+ 'minute-past-one' => '{0} నిమిషం క్రితం',
+ 'minute-past-other' => '{0} నిమిషాల క్రితం',
+ 'minute-short-future-one' => '{0} నిమి.లో',
+ 'minute-short-future-other' => '{0} నిమి.లో',
+ 'minute-short-past-one' => '{0} నిమి. క్రితం',
+ 'minute-short-past-other' => '{0} నిమి. క్రితం',
+ 'month-future-one' => '{0} నెలలో',
+ 'month-future-other' => '{0} నెలల్లో',
+ 'month-narrow-future-one' => '+{0} నెల',
+ 'month-narrow-future-other' => '+{0} నెలలు',
+ 'month-narrow-past-one' => '-{0} నెల',
+ 'month-narrow-past-other' => '-{0} నెలలు',
+ 'month-one' => '{0} నెల',
+ 'month-other' => '{0} నెలలు',
+ 'month-past-one' => '{0} నెల క్రితం',
+ 'month-past-other' => '{0} నెలల క్రితం',
+ 'month-short-future-one' => '{0} నెలలో',
+ 'month-short-future-other' => '{0} నెలల్లో',
+ 'month-short-past-one' => '{0} నెల క్రితం',
+ 'month-short-past-other' => '{0} నెలల క్రితం',
+ 'nanosecond-one' => '{0} నానోసెకను',
+ 'nanosecond-other' => '{0} నానోసెకన్లు',
+ 'quarter-future-one' => '{0} త్రైమాసికంలో',
+ 'quarter-future-other' => '{0} త్రైమాసికాల్లో',
+ 'quarter-narrow-future-one' => '+{0} త్రై',
+ 'quarter-narrow-future-other' => '+{0} త్రై',
+ 'quarter-narrow-past-one' => '-{0} త్రై',
+ 'quarter-narrow-past-other' => '-{0} త్రై',
+ 'quarter-past-one' => '{0} త్రైమాసికం క్రితం',
+ 'quarter-past-other' => '{0} త్రైమాసికాల క్రితం',
+ 'quarter-short-future-one' => '{0} త్రైమా.లో',
+ 'quarter-short-future-other' => '{0} త్రైమా.ల్లో',
+ 'quarter-short-past-one' => '{0} త్రైమా. క్రితం',
+ 'quarter-short-past-other' => '{0} త్రైమా. క్రితం',
+ 'second-future-one' => '{0} సెకన్‌లో',
+ 'second-future-other' => '{0} సెకన్లలో',
+ 'second-narrow-future-one' => '+{0} సె',
+ 'second-narrow-future-other' => '+{0} సె',
+ 'second-narrow-past-one' => '-{0} సె క్రితం',
+ 'second-narrow-past-other' => '-{0} సె క్రితం',
+ 'second-one' => '{0} సెకను',
+ 'second-other' => '{0} సెకన్లు',
+ 'second-past-one' => '{0} సెకను క్రితం',
+ 'second-past-other' => '{0} సెకన్ల క్రితం',
+ 'second-short-future-one' => '{0} సెక. లో',
+ 'second-short-future-other' => '{0} సెక. లో',
+ 'second-short-past-one' => '{0} సెక. క్రితం',
+ 'second-short-past-other' => '{0} సెక. క్రితం',
+ 'week-future-one' => '{0} వారంలో',
+ 'week-future-other' => '{0} వారాల్లో',
+ 'week-narrow-future-one' => '+{0} వా.',
+ 'week-narrow-future-other' => '+{0} వా.',
+ 'week-narrow-past-one' => '-{0} వా.',
+ 'week-narrow-past-other' => '-{0} వా.',
+ 'week-one' => '{0} వారం',
+ 'week-other' => '{0} వారాలు',
+ 'week-past-one' => '{0} వారం క్రితం',
+ 'week-past-other' => '{0} వారాల క్రితం',
+ 'week-short-future-one' => '{0} వారంలో',
+ 'week-short-future-other' => '{0} వారాల్లో',
+ 'week-short-past-one' => '{0} వారం క్రితం',
+ 'week-short-past-other' => '{0} వారాల క్రితం',
+ 'year-future-one' => '{0} సంవత్సరంలో',
+ 'year-future-other' => '{0} సంవత్సరాల్లో',
+ 'year-narrow-future-one' => '+{0} సం.',
+ 'year-narrow-future-other' => '+{0} సం.',
+ 'year-narrow-past-one' => '-{0} సం.',
+ 'year-narrow-past-other' => '-{0} సం.',
+ 'year-one' => '{0} సంవత్సరం',
+ 'year-other' => '{0} సంవత్సరాలు',
+ 'year-past-one' => '{0} సంవత్సరం క్రితం',
+ 'year-past-other' => '{0} సంవత్సరాల క్రితం',
+ 'year-short-future-one' => '{0} సం.లో',
+ 'year-short-future-other' => '{0} సం.లో',
+ 'year-short-past-one' => '{0} సం. క్రితం',
+ 'year-short-past-other' => '{0} సం. క్రితం',
+);
diff --git a/MLEB/cldr/CldrNames/CldrNamesTg_cyrl.php b/MLEB/cldr/CldrNames/CldrNamesTg_cyrl.php
new file mode 100644
index 00000000..48466581
--- /dev/null
+++ b/MLEB/cldr/CldrNames/CldrNamesTg_cyrl.php
@@ -0,0 +1,76 @@
+<?php
+
+$languageNames = array(
+ 'be' => 'Белорусӣ',
+ 'bg' => 'Булғорӣ',
+ 'bh' => 'Биҳарӣ',
+ 'bn' => 'Бенгалӣ',
+ 'br' => 'Бретонӣ',
+ 'bs' => 'Босниягӣ',
+ 'ca' => 'Каталанӣ',
+ 'cs' => 'Чехӣ',
+ 'da' => 'Даниягӣ',
+ 'de' => 'Немисӣ',
+ 'el' => 'Юнонӣ',
+ 'en' => 'Англисӣ',
+ 'eo' => 'Эсперанто',
+ 'es' => 'Испанӣ',
+ 'et' => 'Эстонӣ',
+ 'eu' => 'Баскӣ',
+ 'fa' => 'Форсӣ',
+ 'fi' => 'Финнӣ',
+ 'fil' => 'Филиппинӣ',
+ 'fo' => 'Фарозӣ',
+ 'fr' => 'Фаронсавӣ',
+ 'fy' => 'Фрисианӣ',
+ 'ga' => 'Ирландӣ',
+ 'gd' => 'Шотландӣ-Галикӣ',
+ 'gl' => 'Галисианӣ',
+ 'gn' => 'Горанӣ',
+ 'gu' => 'Гуҷаратӣ',
+ 'he' => 'Яҳудӣ',
+ 'hi' => 'Ҳиндӣ',
+ 'hu' => 'Маҷорӣ',
+ 'ia' => 'Байни забонӣ',
+ 'id' => 'Индонезӣ',
+ 'is' => 'Исландӣ',
+ 'ja' => 'Ҷопонӣ',
+ 'jv' => 'Ҷаванизӣ',
+ 'ka' => 'Гурҷӣ',
+ 'ky' => 'Қирғизӣ',
+ 'la' => 'Лотинӣ',
+ 'lo' => 'Лаосӣ',
+ 'lt' => 'Литвонӣ',
+ 'lv' => 'Латвиягӣ',
+ 'nl' => 'Ҳолландӣ',
+ 'no' => 'Норвегӣ',
+ 'or' => 'Урисоӣ',
+ 'pl' => 'Лаҳистонӣ',
+ 'pt' => 'Португалӣ',
+ 'pt-br' => 'Португалӣ (Бразилия)',
+ 'ro' => 'Руминӣ',
+ 'ru' => 'Русӣ',
+ 'sv' => 'Шведӣ',
+ 'tg' => 'Тоҷикӣ',
+ 'ug' => 'Ӯйғурӣ',
+ 'uk' => 'Украинӣ',
+ 'ur' => 'Урду',
+ 'uz' => 'Ӯзбекӣ',
+ 'yi' => 'Яҳудии Аврупои шарқӣ',
+ 'zh' => 'Чинӣ',
+ 'zu' => 'Зулу',
+);
+
+$currencyNames = array(
+ 'TJS' => 'Сомонӣ',
+);
+
+$currencySymbols = array(
+ 'TJS' => 'сом',
+);
+
+$countryNames = array(
+ 'AF' => 'Афғонистан',
+ 'TJ' => 'Тоҷикистон',
+ 'TO' => 'Тонга',
+);
diff --git a/MLEB/cldr/CldrNames/CldrNamesTh.php b/MLEB/cldr/CldrNames/CldrNamesTh.php
new file mode 100644
index 00000000..903d9bc8
--- /dev/null
+++ b/MLEB/cldr/CldrNames/CldrNamesTh.php
@@ -0,0 +1,1521 @@
+<?php
+
+$languageNames = array(
+ 'aa' => 'อะฟาร์',
+ 'ab' => 'อับคาซ',
+ 'ace' => 'อาเจะห์',
+ 'ach' => 'อาโคลิ',
+ 'ada' => 'อาแดงมี',
+ 'ady' => 'อะดืยเก',
+ 'ae' => 'อเวสตะ',
+ 'aeb' => 'อาหรับตูนิเซีย',
+ 'af' => 'แอฟริกานส์',
+ 'afh' => 'แอฟริฮีลี',
+ 'agq' => 'อักเฮม',
+ 'ain' => 'ไอนุ',
+ 'ak' => 'อาคัน',
+ 'akk' => 'อักกาด',
+ 'akz' => 'แอละแบมา',
+ 'ale' => 'อาลิวต์',
+ 'aln' => 'เกกแอลเบเนีย',
+ 'alt' => 'อัลไตใต้',
+ 'am' => 'อัมฮารา',
+ 'an' => 'อารากอน',
+ 'ang' => 'อังกฤษโบราณ',
+ 'anp' => 'อังคิกา',
+ 'ar' => 'อาหรับ',
+ 'ar-001' => 'อาหรับมาตรฐานสมัยใหม่',
+ 'arc' => 'อราเมอิก',
+ 'arn' => 'อาเราคาเนียน',
+ 'aro' => 'อาเรานา',
+ 'arp' => 'อาราปาโฮ',
+ 'arq' => 'อาหรับแอลจีเรีย',
+ 'arw' => 'อาราวัก',
+ 'ary' => 'อาหรับโมร็อกโก',
+ 'arz' => 'อาหรับพื้นเมืองอียิปต์',
+ 'as' => 'อัสสัม',
+ 'asa' => 'อาซู',
+ 'ase' => 'ภาษามืออเมริกัน',
+ 'ast' => 'อัสตูเรียส',
+ 'av' => 'อาวาร์',
+ 'avk' => 'โคตาวา',
+ 'awa' => 'อวธี',
+ 'ay' => 'ไอย์มารา',
+ 'az' => 'อาเซอร์ไบจาน',
+ 'azb' => 'อาเซอร์ไบจานใต้',
+ 'ba' => 'บัชคีร์',
+ 'bal' => 'บาลูชิ',
+ 'ban' => 'บาหลี',
+ 'bar' => 'บาวาเรีย',
+ 'bas' => 'บาสา',
+ 'bax' => 'บามัน',
+ 'bbc' => 'บาตักโทบา',
+ 'bbj' => 'โคมาลา',
+ 'be' => 'เบลารุส',
+ 'bej' => 'เบจา',
+ 'bem' => 'เบมบา',
+ 'bew' => 'เบตาวี',
+ 'bez' => 'เบนา',
+ 'bfd' => 'บาฟัต',
+ 'bfq' => 'พทคะ',
+ 'bg' => 'บัลแกเรีย',
+ 'bho' => 'โภชปุรี',
+ 'bi' => 'บิสลามา',
+ 'bik' => 'บิกอล',
+ 'bin' => 'บินี',
+ 'bjn' => 'บันจาร์',
+ 'bkm' => 'กม',
+ 'bla' => 'สิกสิกา',
+ 'bm' => 'บัมบารา',
+ 'bn' => 'เบงกาลี',
+ 'bo' => 'ทิเบต',
+ 'bpy' => 'พิศนุปริยะ',
+ 'bqi' => 'บักติยารี',
+ 'br' => 'เบรตัน',
+ 'bra' => 'พัรช',
+ 'brh' => 'บราฮุย',
+ 'brx' => 'โพโฑ',
+ 'bs' => 'บอสเนีย',
+ 'bss' => 'อาโคซี',
+ 'bua' => 'บูเรียต',
+ 'bug' => 'บูกิส',
+ 'bum' => 'บูลู',
+ 'byn' => 'บลิน',
+ 'byv' => 'เมดุมบา',
+ 'ca' => 'กาตาลัง',
+ 'cad' => 'คัดโด',
+ 'car' => 'คาริบ',
+ 'cay' => 'คายูกา',
+ 'cch' => 'แอตแซม',
+ 'ce' => 'เชเชน',
+ 'ceb' => 'เซบู',
+ 'cgg' => 'คีกา',
+ 'ch' => 'ชามอร์โร',
+ 'chb' => 'ชิบชา',
+ 'chg' => 'ชะกะไต',
+ 'chk' => 'ชูก',
+ 'chm' => 'มารี',
+ 'chn' => 'ชินุกจาร์กอน',
+ 'cho' => 'ช็อกทอว์',
+ 'chp' => 'ชิพิวยัน',
+ 'chr' => 'เชอโรกี',
+ 'chy' => 'เชเยนเน',
+ 'ckb' => 'เคิร์ดโซรานี',
+ 'co' => 'คอร์ซิกา',
+ 'cop' => 'คอปติก',
+ 'cps' => 'กาปิซนอน',
+ 'cr' => 'ครี',
+ 'crh' => 'ตุรกีไครเมีย',
+ 'cs' => 'เช็ก',
+ 'csb' => 'คาซูเบียน',
+ 'cu' => 'เชอร์ชสลาวิก',
+ 'cv' => 'ชูวัช',
+ 'cy' => 'เวลส์',
+ 'da' => 'เดนมาร์ก',
+ 'dak' => 'ดาโกทา',
+ 'dar' => 'ดาร์กิน',
+ 'dav' => 'ไททา',
+ 'de' => 'เยอรมัน',
+ 'de-at' => 'เยอรมัน - ออสเตรีย',
+ 'de-ch' => 'เยอรมันสูง (สวิส)',
+ 'del' => 'เดลาแวร์',
+ 'den' => 'สเลวี',
+ 'dgr' => 'โดกริบ',
+ 'din' => 'ดิงกา',
+ 'dje' => 'ซาร์มา',
+ 'doi' => 'โฑครี',
+ 'dsb' => 'ซอร์บส์ตอนล่าง',
+ 'dtp' => 'ดูซุนกลาง',
+ 'dua' => 'ดัวลา',
+ 'dum' => 'ดัตช์กลาง',
+ 'dv' => 'ธิเวหิ',
+ 'dyo' => 'โจลา-ฟอนยี',
+ 'dyu' => 'ดิวลา',
+ 'dz' => 'ซองคา',
+ 'dzg' => 'ดาซากา',
+ 'ebu' => 'เอ็มบู',
+ 'ee' => 'เอเว',
+ 'efi' => 'อีฟิก',
+ 'egl' => 'เอมีเลีย',
+ 'egy' => 'อียิปต์โบราณ',
+ 'eka' => 'อีกาจุก',
+ 'el' => 'กรีก',
+ 'elx' => 'อีลาไมต์',
+ 'en' => 'อังกฤษ',
+ 'en-au' => 'อังกฤษ - ออสเตรเลีย',
+ 'en-ca' => 'อังกฤษ - แคนาดา',
+ 'en-gb' => 'อังกฤษ - สหราชอาณาจักร',
+ 'en-us' => 'อังกฤษ - อเมริกัน',
+ 'enm' => 'อังกฤษกลาง',
+ 'eo' => 'เอสเปอรันโต',
+ 'es' => 'สเปน',
+ 'es-es' => 'สเปน (ยุโรป)',
+ 'esu' => 'ยูพิกกลาง',
+ 'et' => 'เอสโตเนีย',
+ 'eu' => 'บัสเก',
+ 'ewo' => 'อีวันโด',
+ 'ext' => 'เอกซ์เตรมาดูรา',
+ 'fa' => 'เปอร์เซีย',
+ 'fan' => 'ฟอง',
+ 'fat' => 'ฟันติ',
+ 'ff' => 'ฟูลาฮ์',
+ 'fi' => 'ฟินแลนด์',
+ 'fil' => 'ฟิลิปปินส์',
+ 'fit' => 'ฟินแลนด์ทอร์เนดาเล็น',
+ 'fj' => 'ฟิจิ',
+ 'fo' => 'แฟโร',
+ 'fon' => 'ฟอน',
+ 'fr' => 'ฝรั่งเศส',
+ 'fr-ch' => 'ฝรั่งเศส (สวิส)',
+ 'frc' => 'ฝรั่งเศสกาฌ็อง',
+ 'frm' => 'ฝรั่งเศสกลาง',
+ 'fro' => 'ฝรั่งเศสโบราณ',
+ 'frp' => 'อาร์พิตา',
+ 'frr' => 'ฟริเซียนเหนือ',
+ 'frs' => 'ฟริเซียนตะวันออก',
+ 'fur' => 'ฟรูลี',
+ 'fy' => 'ฟริเซียนตะวันตก',
+ 'ga' => 'ไอริช',
+ 'gaa' => 'กา',
+ 'gag' => 'กากาอุซ',
+ 'gan' => 'จีนกาน',
+ 'gay' => 'กาโย',
+ 'gba' => 'กบายา',
+ 'gbz' => 'ดารีโซโรอัสเตอร์',
+ 'gd' => 'สกอตส์กาลิก',
+ 'gez' => 'กีซ',
+ 'gil' => 'กิลเบอร์ต',
+ 'gl' => 'กาลิเซีย',
+ 'glk' => 'กิลากี',
+ 'gmh' => 'เยอรมันสูงกลาง',
+ 'gn' => 'กวารานี',
+ 'goh' => 'เยอรมันสูงโบราณ',
+ 'gom' => 'กอนกานีของกัว',
+ 'gon' => 'กอนดิ',
+ 'gor' => 'กอรอนทาโล',
+ 'got' => 'โกธิก',
+ 'grb' => 'เกรโบ',
+ 'grc' => 'กรีกโบราณ',
+ 'gsw' => 'เยอรมันสวิส',
+ 'gu' => 'คุชราต',
+ 'guc' => 'วายู',
+ 'gur' => 'ฟราฟรา',
+ 'guz' => 'กุซซี',
+ 'gv' => 'มานซ์',
+ 'gwi' => 'กวิชอิน',
+ 'ha' => 'เฮาชา',
+ 'hai' => 'ไฮดา',
+ 'hak' => 'จีนแคะ',
+ 'haw' => 'ฮาวาย',
+ 'he' => 'ฮิบรู',
+ 'hi' => 'ฮินดี',
+ 'hif' => 'ฮินดีฟิจิ',
+ 'hil' => 'ฮีลีกัยนน',
+ 'hit' => 'ฮิตไตต์',
+ 'hmn' => 'ม้ง',
+ 'ho' => 'ฮีรีโมตู',
+ 'hr' => 'โครเอเชีย',
+ 'hsb' => 'ซอร์บส์ตอนบน',
+ 'hsn' => 'จีนเซียง',
+ 'ht' => 'เฮติ',
+ 'hu' => 'ฮังการี',
+ 'hup' => 'ฮูปา',
+ 'hy' => 'อาร์เมเนีย',
+ 'hz' => 'เฮเรโร',
+ 'ia' => 'อินเตอร์ลิงกัว',
+ 'iba' => 'อิบาน',
+ 'ibb' => 'อิบิบิโอ',
+ 'id' => 'อินโดนีเชีย',
+ 'ie' => 'อินเตอร์ลิงกิว',
+ 'ig' => 'อิกโบ',
+ 'ii' => 'เสฉวนยิ',
+ 'ik' => 'อีนูเปียก',
+ 'ilo' => 'อีโลโก',
+ 'inh' => 'อินกุช',
+ 'io' => 'อีโด',
+ 'is' => 'ไอซ์แลนด์',
+ 'it' => 'อิตาลี',
+ 'iu' => 'อินุกติตุต',
+ 'izh' => 'อินเกรียน',
+ 'ja' => 'ญี่ปุ่น',
+ 'jam' => 'อังกฤษคลีโอลจาเมกา',
+ 'jbo' => 'โลชบัน',
+ 'jgo' => 'อึนกอมบา',
+ 'jmc' => 'มาชาเม',
+ 'jpr' => 'ยิว-เปอร์เซีย',
+ 'jrb' => 'ยิว-อาหรับ',
+ 'jut' => 'จัท',
+ 'jv' => 'ชวา',
+ 'ka' => 'จอร์เจีย',
+ 'kaa' => 'การา-กาลพาก',
+ 'kab' => 'กาไบล',
+ 'kac' => 'กะฉิ่น',
+ 'kaj' => 'คจู',
+ 'kam' => 'คัมบา',
+ 'kaw' => 'กวี',
+ 'kbd' => 'คาร์บาเดีย',
+ 'kbl' => 'คาเนมบู',
+ 'kcg' => 'ทีแยป',
+ 'kde' => 'มาคอนเด',
+ 'kea' => 'คาบูเวอร์เดียนู',
+ 'ken' => 'เกินยาง',
+ 'kfo' => 'โคโร',
+ 'kg' => 'คองโก',
+ 'kgp' => 'เคนก่าง',
+ 'kha' => 'กาสี',
+ 'kho' => 'โคตัน',
+ 'khq' => 'โคย์ราชีนี',
+ 'khw' => 'โควาร์',
+ 'ki' => 'กีกูยู',
+ 'kiu' => 'เคอร์มานิกิ',
+ 'kj' => 'กวนยามา',
+ 'kk' => 'คาซัค',
+ 'kkj' => 'คาโก',
+ 'kl' => 'กรีนแลนด์',
+ 'kln' => 'คาเลนจิน',
+ 'km' => 'เขมร',
+ 'kmb' => 'คิมบุนดู',
+ 'kn' => 'กันนาดา',
+ 'ko' => 'เกาหลี',
+ 'koi' => 'โคมิ-เปียร์เมียค',
+ 'kok' => 'กอนกานี',
+ 'kos' => 'คูสไร',
+ 'kpe' => 'กาแปล',
+ 'kr' => 'คานูรี',
+ 'krc' => 'คาราไช-บัลคาร์',
+ 'kri' => 'คริโอ',
+ 'krj' => 'กินารายอา',
+ 'krl' => 'แกรเลียน',
+ 'kru' => 'กุรุข',
+ 'ks' => 'กัศมีร์',
+ 'ksb' => 'ชัมบาลา',
+ 'ksf' => 'บาเฟีย',
+ 'ksh' => 'โคโลญ',
+ 'ku' => 'เคิร์ด',
+ 'kum' => 'คูมืยค์',
+ 'kut' => 'คูเทไน',
+ 'kv' => 'โกมิ',
+ 'kw' => 'คอร์นิช',
+ 'ky' => 'คีร์กีซ',
+ 'la' => 'ละติน',
+ 'lad' => 'ลาดิโน',
+ 'lag' => 'แลนจี',
+ 'lah' => 'ลาฮ์นดา',
+ 'lam' => 'แลมบา',
+ 'lb' => 'ลักเซมเบิร์ก',
+ 'lez' => 'เลซเกียน',
+ 'lfn' => 'ลิงกัวฟรังกาโนวา',
+ 'lg' => 'ยูกันดา',
+ 'li' => 'ลิมเบิร์ก',
+ 'lij' => 'ลิกูเรีย',
+ 'liv' => 'ลิโวเนีย',
+ 'lkt' => 'ลาโกตา',
+ 'lmo' => 'ลอมบาร์ด',
+ 'ln' => 'ลิงกาลา',
+ 'lo' => 'ลาว',
+ 'lol' => 'มองโก',
+ 'loz' => 'โลซิ',
+ 'lt' => 'ลิทัวเนีย',
+ 'ltg' => 'ลัตเกล',
+ 'lu' => 'ลูบา-กาตองกา',
+ 'lua' => 'ลูบา-ลูลัว',
+ 'lui' => 'ลุยเซโน',
+ 'lun' => 'ลันดา',
+ 'luo' => 'ลัว',
+ 'lus' => 'ลูไช',
+ 'luy' => 'ลูเยีย',
+ 'lv' => 'ลัตเวีย',
+ 'lzh' => 'จีนคลาสสิก',
+ 'lzz' => 'แลซ',
+ 'mad' => 'มาดูรา',
+ 'maf' => 'มาฟา',
+ 'mag' => 'มคหี',
+ 'mai' => 'ไมถิลี',
+ 'mak' => 'มากาซาร์',
+ 'man' => 'มันดิงกา',
+ 'mas' => 'มาไซ',
+ 'mde' => 'มาบา',
+ 'mdf' => 'มอคชา',
+ 'mdr' => 'มานดาร์',
+ 'men' => 'เมนเด',
+ 'mer' => 'เมรู',
+ 'mfe' => 'มอริสเยน',
+ 'mg' => 'มาลากาซี',
+ 'mga' => 'ไอริชกลาง',
+ 'mgh' => 'มากัววา-มีทโท',
+ 'mgo' => 'เมตา',
+ 'mh' => 'มาร์แชลลิส',
+ 'mi' => 'เมารี',
+ 'mic' => 'มิกแมก',
+ 'min' => 'มีนังกาเบา',
+ 'mk' => 'มาซิโดเนีย',
+ 'ml' => 'มาลายาลัม',
+ 'mn' => 'มองโกเลีย',
+ 'mnc' => 'แมนจู',
+ 'mni' => 'มณีปุระ',
+ 'moh' => 'โมฮอว์ก',
+ 'mos' => 'โมซี',
+ 'mr' => 'มราฐี',
+ 'mrj' => 'มารีตะวันตก',
+ 'ms' => 'มาเลย์',
+ 'mt' => 'มอลตา',
+ 'mua' => 'มันดัง',
+ 'mul' => 'หลายภาษา',
+ 'mus' => 'ครีก',
+ 'mwl' => 'มีรันดา',
+ 'mwr' => 'มารวาฑี',
+ 'mwv' => 'เม็นตาไว',
+ 'my' => 'พม่า',
+ 'mye' => 'มยีน',
+ 'myv' => 'เอียร์ซยา',
+ 'mzn' => 'มาซันดารานี',
+ 'na' => 'นาอูรู',
+ 'nan' => 'จีนมินหนาน',
+ 'nap' => 'นาโปลี',
+ 'naq' => 'นามา',
+ 'nb' => 'นอร์เวย์บุคมอล',
+ 'nd' => 'เอ็นเดเบเลเหนือ',
+ 'nds' => 'เยอรมันต่ำ - แซกซอนต่ำ',
+ 'ne' => 'เนปาล',
+ 'new' => 'เนวาร์',
+ 'ng' => 'ดองกา',
+ 'nia' => 'นีอัส',
+ 'niu' => 'นีอู',
+ 'njo' => 'อ๋าวนากา',
+ 'nl' => 'ดัตช์',
+ 'nl-be' => 'เฟลมิช',
+ 'nmg' => 'กวาซิโอ',
+ 'nn' => 'นอร์เวย์นีนอสก์',
+ 'nnh' => 'จีมบูน',
+ 'no' => 'นอร์เวย์',
+ 'nog' => 'โนไก',
+ 'non' => 'นอร์สโบราณ',
+ 'nov' => 'โนเวียล',
+ 'nqo' => 'เอ็นโก',
+ 'nr' => 'เอ็นเดเบเลใต้',
+ 'nso' => 'โซโทเหนือ',
+ 'nus' => 'เนือร์',
+ 'nv' => 'นาวาโฮ',
+ 'nwc' => 'เนวาร์ดั้งเดิม',
+ 'ny' => 'เนียนจา',
+ 'nym' => 'เนียมเวซี',
+ 'nyn' => 'เนียนโกเล',
+ 'nyo' => 'นิโอโร',
+ 'nzi' => 'นซิมา',
+ 'oc' => 'อ็อกซิตัน',
+ 'oj' => 'โอจิบวา',
+ 'om' => 'โอโรโม',
+ 'or' => 'โอริยา',
+ 'os' => 'ออสเซเตีย',
+ 'osa' => 'โอซากี',
+ 'ota' => 'ตุรกีออตโตมัน',
+ 'pa' => 'ปัญจาบ',
+ 'pag' => 'ปางาซีนัน',
+ 'pal' => 'ปะห์ลาวี',
+ 'pam' => 'ปัมปางา',
+ 'pap' => 'ปาเปียเมนโต',
+ 'pau' => 'ปาเลา',
+ 'pcd' => 'ปิการ์',
+ 'pdc' => 'เยอรมันเพนซิลเวเนีย',
+ 'pdt' => 'เพลาท์ดิช',
+ 'peo' => 'เปอร์เซียโบราณ',
+ 'pfl' => 'เยอรมันพาลาทิเนต',
+ 'phn' => 'ฟินิเชีย',
+ 'pi' => 'บาลี',
+ 'pl' => 'โปแลนด์',
+ 'pms' => 'พีดมอนต์',
+ 'pnt' => 'พอนติก',
+ 'pon' => 'พอห์นเพ',
+ 'prg' => 'ปรัสเซีย',
+ 'pro' => 'โปรวองซาลโบราณ',
+ 'ps' => 'พาชตู',
+ 'pt' => 'โปรตุเกส',
+ 'pt-br' => 'โปรตุเกส - บราซิล',
+ 'pt-pt' => 'โปรตุเกส - ยุโรป',
+ 'qu' => 'ควิชัว',
+ 'quc' => 'กีเช',
+ 'qug' => 'ควิชัวไฮแลนด์ชิมโบราโซ',
+ 'raj' => 'ราชสถาน',
+ 'rap' => 'ราปานู',
+ 'rar' => 'ราโรทองกา',
+ 'rgn' => 'โรมัณโญ',
+ 'rif' => 'ริฟฟิอัน',
+ 'rm' => 'โรแมนซ์',
+ 'rn' => 'บุรุนดี',
+ 'ro' => 'โรมาเนีย',
+ 'ro-md' => 'มอลโดวา',
+ 'rof' => 'รอมโบ',
+ 'rom' => 'โรมานี',
+ 'rtm' => 'โรทูมัน',
+ 'ru' => 'รัสเซีย',
+ 'rue' => 'รูซิน',
+ 'rug' => 'โรเวียนา',
+ 'rup' => 'อาโรมาเนียน',
+ 'rw' => 'รวันดา',
+ 'rwk' => 'รวา',
+ 'sa' => 'สันสกฤต',
+ 'sad' => 'ซันดาเว',
+ 'sah' => 'ซาฮา',
+ 'sam' => 'อราเมอิกซามาเรีย',
+ 'saq' => 'แซมบูรู',
+ 'sas' => 'ซาซัก',
+ 'sat' => 'สันตาลี',
+ 'saz' => 'เสาราษฏร์',
+ 'sba' => 'กัมเบ',
+ 'sbp' => 'แซงกู',
+ 'sc' => 'ซาร์เดญา',
+ 'scn' => 'ซิซิลี',
+ 'sco' => 'สกอตส์',
+ 'sd' => 'สินธุ',
+ 'sdc' => 'ซาร์ดิเนียซาสซารี',
+ 'se' => 'ซามิเหนือ',
+ 'see' => 'เซนิกา',
+ 'seh' => 'เซนา',
+ 'sei' => 'เซรี',
+ 'sel' => 'เซลคุป',
+ 'ses' => 'โคย์ราโบโรเซนนี',
+ 'sg' => 'แซงโก',
+ 'sga' => 'ไอริชโบราณ',
+ 'sgs' => 'ซาโมจิเตียน',
+ 'sh' => 'เซอร์โบ-โครเอเชีย',
+ 'shi' => 'ทาเชลีห์ท',
+ 'shn' => 'ไทใหญ่',
+ 'shu' => 'อาหรับ-ชาด',
+ 'si' => 'สิงหล',
+ 'sid' => 'ซิดาโม',
+ 'sk' => 'สโลวัก',
+ 'sl' => 'สโลวีเนีย',
+ 'sli' => 'ไซลีเซียตอนล่าง',
+ 'sly' => 'เซลายาร์',
+ 'sm' => 'ซามัว',
+ 'sma' => 'ซามิใต้',
+ 'smj' => 'ซามิลูเล',
+ 'smn' => 'ซามิอีนารี',
+ 'sms' => 'ซามิสคอลต์',
+ 'sn' => 'โชนา',
+ 'snk' => 'โซนีนเก',
+ 'so' => 'โซมาลี',
+ 'sog' => 'ซอกดีน',
+ 'sq' => 'แอลเบเนีย',
+ 'sr' => 'เซอร์เบีย',
+ 'srn' => 'ซูรินาเม',
+ 'srr' => 'เซแรร์',
+ 'ss' => 'สวาติ',
+ 'ssy' => 'ซาโฮ',
+ 'st' => 'โซโทใต้',
+ 'stq' => 'ฟรีเซียนซัทเธอร์แลนด์',
+ 'su' => 'ซุนดา',
+ 'suk' => 'ซูคูมา',
+ 'sus' => 'ซูซู',
+ 'sux' => 'ซูเมอ',
+ 'sv' => 'สวีเดน',
+ 'sw' => 'สวาฮีลี',
+ 'swb' => 'โคเมอเรียน',
+ 'swc' => 'สวาฮีลี-คองโก',
+ 'syc' => 'ซีเรียแบบดั้งเดิม',
+ 'syr' => 'ซีเรีย',
+ 'szl' => 'ไซลีเซีย',
+ 'ta' => 'ทมิฬ',
+ 'tcy' => 'ตูลู',
+ 'te' => 'เตลูกู',
+ 'tem' => 'ทิมเน',
+ 'teo' => 'เตโซ',
+ 'ter' => 'เทเรโน',
+ 'tet' => 'เตตุม',
+ 'tg' => 'ทาจิก',
+ 'th' => 'ไทย',
+ 'ti' => 'ติกริญญา',
+ 'tig' => 'ตีเกร',
+ 'tiv' => 'ทิฟ',
+ 'tk' => 'เติร์กเมนิสถาน',
+ 'tkl' => 'โตเกเลา',
+ 'tkr' => 'แซคเซอร์',
+ 'tl' => 'ตากาล็อก',
+ 'tlh' => 'คลิงกอน',
+ 'tli' => 'ทลิงกิต',
+ 'tly' => 'ทาลิช',
+ 'tmh' => 'ทามาเชก',
+ 'tn' => 'บอตสวานา',
+ 'to' => 'ตองกา',
+ 'tog' => 'ไนอะซาตองกา',
+ 'tpi' => 'ท็อกพิซิน',
+ 'tr' => 'ตุรกี',
+ 'tru' => 'ตูโรโย',
+ 'trv' => 'ทาโรโก',
+ 'ts' => 'ซิิตซองกา',
+ 'tsd' => 'ซาโคเนีย',
+ 'tsi' => 'ซิมชีแอน',
+ 'tt' => 'ตาตาร์',
+ 'ttt' => 'ตัตมุสลิม',
+ 'tum' => 'ทุมบูกา',
+ 'tvl' => 'ตูวาลู',
+ 'tw' => 'ทวิ',
+ 'twq' => 'ตัสซาวัค',
+ 'ty' => 'ตาฮิตี',
+ 'tyv' => 'ตูวา',
+ 'tzm' => 'ทามาไซต์แอตลาสกลาง',
+ 'udm' => 'อุดมูร์ต',
+ 'ug' => 'อุยกัว',
+ 'uga' => 'ยูการิต',
+ 'uk' => 'ยูเครน',
+ 'umb' => 'อุมบุนดู',
+ 'und' => 'ภาษาที่ไม่รู้จัก',
+ 'ur' => 'อูรดู',
+ 'uz' => 'อุซเบก',
+ 'vai' => 'ไว',
+ 've' => 'เวนดา',
+ 'vec' => 'เวเนโต้',
+ 'vep' => 'เวปส์',
+ 'vi' => 'เวียดนาม',
+ 'vls' => 'เฟลมิชตะวันตก',
+ 'vmf' => 'เมน-ฟรานโกเนีย',
+ 'vo' => 'โวลาพึค',
+ 'vot' => 'โวทิก',
+ 'vro' => 'โวโร',
+ 'vun' => 'วุนจู',
+ 'wa' => 'วาโลนี',
+ 'wae' => 'วัลเซอร์',
+ 'wal' => 'วาลาโม',
+ 'war' => 'วาเรย์',
+ 'was' => 'วาโช',
+ 'wo' => 'โวลอฟ',
+ 'wuu' => 'จีนอู๋',
+ 'xal' => 'คัลมืยค์',
+ 'xh' => 'คะห์โอซา',
+ 'xmf' => 'เมเกรเลีย',
+ 'xog' => 'โซกา',
+ 'yao' => 'เย้า',
+ 'yap' => 'ยัป',
+ 'yav' => 'แยงเบน',
+ 'ybb' => 'เยมบา',
+ 'yi' => 'ยิว',
+ 'yo' => 'โยรูบา',
+ 'yrl' => 'เหงงกาตุ',
+ 'yue' => 'กวางตุ้ง',
+ 'za' => 'จ้วง',
+ 'zap' => 'ซาโปเตก',
+ 'zbl' => 'บลิสซิมโบลส์',
+ 'zea' => 'เซแลนด์',
+ 'zen' => 'เซนากา',
+ 'zgh' => 'ทามาไซต์โมร็อกโกมาตรฐาน',
+ 'zh' => 'จีน',
+ 'zh-hans' => 'จีนตัวย่อ',
+ 'zh-hant' => 'จีนตัวเต็ม',
+ 'zu' => 'ซูลู',
+ 'zun' => 'ซูนิ',
+ 'zxx' => 'ไม่มีข้อมูลภาษา',
+ 'zza' => 'ซาซา',
+);
+
+$currencyNames = array(
+ 'ADP' => 'เปเซตาอันดอร์รา',
+ 'AED' => 'เดอร์แฮมสหรัฐอาหรับเอมิเรตส์',
+ 'AFA' => 'อัฟกานีอัฟกานิสถาน (1927–2002)',
+ 'AFN' => 'อัฟกานิอัฟกานิสถาน',
+ 'ALL' => 'เลกแอลเบเนีย',
+ 'AMD' => 'แดรมอาร์เมเนีย',
+ 'ANG' => 'กิลเดอร์เนเธอร์แลนด์แอนทิลลิส',
+ 'AOA' => 'กวานซาแองโกลา',
+ 'AOK' => 'กวานซาแองโกลา (1977–1990)',
+ 'AON' => 'นิวกวานซาแองโกลา (1990–2000)',
+ 'AOR' => 'กวานซารีจัสทาโดแองโกลา (1995–1999)',
+ 'ARA' => 'ออสตรัลอาร์เจนตินา',
+ 'ARL' => 'เปโซเลย์อาร์เจนตินา (1970–1983)',
+ 'ARM' => 'เปโซอาร์เจนตินา (1881–1970)',
+ 'ARP' => 'เปโซอาร์เจนตินา (1983–1985)',
+ 'ARS' => 'เปโซอาร์เจนตินา',
+ 'ATS' => 'ชิลลิงออสเตรีย',
+ 'AUD' => 'ดอลลาร์ออสเตรเลีย',
+ 'AWG' => 'ฟลอรินอารูบา',
+ 'AZM' => 'มานัตอาเซอร์ไบจาน (1993–2006)',
+ 'AZN' => 'มานัตอาเซอร์ไบจาน',
+ 'BAD' => 'ดีนาร์บอสเนีย-เฮอร์เซโกวีนา',
+ 'BAM' => 'มาร์กบอสเนีย-เฮอร์เซโกวีนา',
+ 'BAN' => 'ดีนาร์ใหม่บอสเนีย-เฮอร์เซโกวีนา (1994–1997)',
+ 'BBD' => 'ดอลลาร์บาร์เบโดส',
+ 'BDT' => 'ตากาบังกลาเทศ',
+ 'BEC' => 'ฟรังก์เบลเยียม (เปลี่ยนแปลงได้)',
+ 'BEF' => 'ฟรังก์เบลเยียม',
+ 'BEL' => 'ฟรังก์เบลเยียม (การเงิน)',
+ 'BGL' => 'ฮาร์ดเลฟบัลแกเรีย',
+ 'BGM' => 'โซเชียลลิสต์เลฟบัลแกเรีย',
+ 'BGN' => 'เลฟบัลแกเรีย',
+ 'BGO' => 'เลฟบัลเกเรีย (1879–1952)',
+ 'BHD' => 'ดีนาร์บาห์เรน',
+ 'BIF' => 'ฟรังก์บุรุนดี',
+ 'BMD' => 'ดอลลาร์เบอร์มิวดา',
+ 'BND' => 'ดอลลาร์บรูไน',
+ 'BOB' => 'โบลิเวียโนโบลิเวีย',
+ 'BOL' => 'โบลิเวียโนโบลิเวีย (1863–1963)',
+ 'BOP' => 'เปโซโบลิเวีย',
+ 'BOV' => 'มฟดอลโบลิเวีย',
+ 'BRB' => 'ครูเซโรโนโวบราซิล (1967–1986)',
+ 'BRC' => 'ครูซาโดบราซิล',
+ 'BRE' => 'ครูเซโรบราซิล (1990–1993)',
+ 'BRL' => 'เรียลบราซิล',
+ 'BRN' => 'ครูซาโดโนโวบราซิล',
+ 'BRR' => 'ครูเซโรบราซิล',
+ 'BRZ' => 'ครูเซโรบราซิล (1942–1967)',
+ 'BSD' => 'ดอลลาร์บาฮามาส',
+ 'BTN' => 'เอ็งกุลตรัมภูฏาน',
+ 'BUK' => 'จ๊าดพม่า',
+ 'BWP' => 'ปูลาบอตสวานา',
+ 'BYB' => 'นิวรูเบิลเบลารุส (1994–1999)',
+ 'BYR' => 'รูเบิลเบลารุส',
+ 'BZD' => 'ดอลลาร์เบลีซ',
+ 'CAD' => 'ดอลลาร์แคนาดา',
+ 'CDF' => 'ฟรังก์คองโก',
+ 'CHE' => 'ยูโรดับเบิลยูไออาร์',
+ 'CHF' => 'ฟรังก์สวิส',
+ 'CHW' => 'ฟรังก์ดับเบิลยูไออาร์',
+ 'CLE' => 'เอสคูโดชิลี',
+ 'CLF' => 'ฟูเมนโตชิลี',
+ 'CLP' => 'เปโซชิลี',
+ 'CNY' => 'หยวนจีน',
+ 'COP' => 'เปโซโคลอมเบีย',
+ 'COU' => 'วาเลอร์เรียลโคลอมเบีย',
+ 'CRC' => 'โกลองคอสตาริกา',
+ 'CSD' => 'ดีนาร์เซอร์เบียเก่า',
+ 'CSK' => 'ฮาร์ดโครูนาเช็กโกสโลวัก',
+ 'CUC' => 'เปโซคิวบา (แปลงสภาพ)',
+ 'CUP' => 'เปโซคิวบา',
+ 'CVE' => 'เอสคูโดเคปเวิร์ด',
+ 'CYP' => 'ปอนด์ไซปรัส',
+ 'CZK' => 'โครูนาสาธารณรัฐเช็ก',
+ 'DDM' => 'มาร์กเยอรมันตะวันออก',
+ 'DEM' => 'มาร์กเยอรมัน',
+ 'DJF' => 'ฟรังก์จิบูตี',
+ 'DKK' => 'โครนเดนมาร์ก',
+ 'DOP' => 'เปโซโดมินิกัน',
+ 'DZD' => 'ดีนาร์แอลจีเรีย',
+ 'ECS' => 'ซูเกรเอกวาดอร์',
+ 'ECV' => 'วาเลอร์คอนสแตนต์เอกวาดอร์',
+ 'EEK' => 'ครูนเอสโตเนีย',
+ 'EGP' => 'ปอนด์อียิปต์',
+ 'ERN' => 'แนกฟาเอริเทรีย',
+ 'ESA' => 'เปเซตาสเปน (บัญชีเอ)',
+ 'ESB' => 'เปเซตาสเปน (บัญชีที่เปลี่ยนแปลงได้)',
+ 'ESP' => 'เปเซตาสเปน',
+ 'ETB' => 'เบอรร์เอธิโอเปีย',
+ 'EUR' => 'ยูโร',
+ 'FIM' => 'มาร์กกาฟินแลนด์',
+ 'FJD' => 'ดอลลาร์ฟิจิ',
+ 'FKP' => 'ปอนด์หมู่เกาะฟอล์กแลนด์',
+ 'FRF' => 'ฟรังก์ฝรั่งเศส',
+ 'GBP' => 'ปอนด์สเตอร์ลิง (สหราชอาณาจักร)',
+ 'GEK' => 'คูปอนลาริตจอร์เจีย',
+ 'GEL' => 'ลารีจอร์เจีย',
+ 'GHC' => 'เซดีกานา (1979–2007)',
+ 'GHS' => 'เซดีกานา',
+ 'GIP' => 'ปอนด์ยิบรอลตาร์',
+ 'GMD' => 'ดาลาซีแกมเบีย',
+ 'GNF' => 'ฟรังก์กินี',
+ 'GNS' => 'ไซลีกินี',
+ 'GQE' => 'เอ็กเวเลอิเควทอเรียลกินี',
+ 'GRD' => 'ดรัชมากรีก',
+ 'GTQ' => 'เควตซัลกัวเตมาลา',
+ 'GWE' => 'เอสคูโดกินีโปรตุเกส',
+ 'GWP' => 'เปโซกินี-บิสเซา',
+ 'GYD' => 'ดอลลาร์กายอานา',
+ 'HKD' => 'ดอลลาร์ฮ่องกง',
+ 'HNL' => 'เลมปิราฮอนดูรัส',
+ 'HRD' => 'ดีนาร์โครเอเชีย',
+ 'HRK' => 'คูนาโครเอเชีย',
+ 'HTG' => 'กูร์ดเฮติ',
+ 'HUF' => 'ฟอรินต์ฮังการี',
+ 'IDR' => 'รูเปียห์อินโดนีเซีย',
+ 'IEP' => 'ปอนด์ไอริช',
+ 'ILP' => 'ปอนด์อิสราเอล',
+ 'ILS' => 'นิวเชเกลอิสราเอล',
+ 'INR' => 'รูปีอินเดีย',
+ 'IQD' => 'ดีนาร์อิรัก',
+ 'IRR' => 'เรียลอิหร่าน',
+ 'ISK' => 'โครนาไอซ์แลนด์',
+ 'ITL' => 'ลีราอิตาลี',
+ 'JMD' => 'ดอลลาร์จาเมกา',
+ 'JOD' => 'ดีนาร์จอร์แดน',
+ 'JPY' => 'เยนญี่ปุ่น',
+ 'KES' => 'ชิลลิ่งเคนยา',
+ 'KGS' => 'ซอมคีร์กีซสถาน',
+ 'KHR' => 'เรียลกัมพูชา',
+ 'KMF' => 'ฟรังก์คอโมโรส',
+ 'KPW' => 'วอนเกาหลีเหนือ',
+ 'KRH' => 'ฮวานเกาหลีใต้ (1953–1962)',
+ 'KRO' => 'วอนเกาหลีใต้ (1945–1953)',
+ 'KRW' => 'วอนเกาหลีใต้',
+ 'KWD' => 'ดีนาร์คูเวต',
+ 'KYD' => 'ดอลลาร์หมู่เกาะเคย์แมน',
+ 'KZT' => 'เทงเจคาซัคสถาน',
+ 'LAK' => 'กีบลาว',
+ 'LBP' => 'ปอนด์เลบานอน',
+ 'LKR' => 'รูปีศรีลังกา',
+ 'LRD' => 'ดอลลาร์ไลบีเรีย',
+ 'LSL' => 'โลตีเลโซโท',
+ 'LTL' => 'ลีตัสลิทัวเนีย',
+ 'LTT' => 'ทาโลนัสลิทัวเนีย',
+ 'LUC' => 'คอนเวอร์ทิเบิลฟรังก์ลักเซมเบิร์ก',
+ 'LUF' => 'ฟรังก์ลักเซมเบิร์ก',
+ 'LUL' => 'ไฟแนลเชียลฟรังก์ลักเซมเบิร์ก',
+ 'LVL' => 'ลัตส์ลัตเวีย',
+ 'LVR' => 'รูเบิลลัตเวีย',
+ 'LYD' => 'ดีนาร์ลิเบีย',
+ 'MAD' => 'ดีแรห์มโมร็อกโก',
+ 'MAF' => 'ฟรังก์โมร็อกโก',
+ 'MCF' => 'ฟรังก์โมนาโก',
+ 'MDC' => 'บัตรปันส่วนมอลโดวา',
+ 'MDL' => 'ลิวมอลโดวา',
+ 'MGA' => 'อาเรียรีมาลากาซี',
+ 'MGF' => 'ฟรังก์มาดากัสการ์',
+ 'MKD' => 'ดีนาร์มาซิโดเนีย',
+ 'MKN' => 'ดีนาร์มาซิโดเนีย (1992–1993)',
+ 'MLF' => 'ฟรังก์มาลี',
+ 'MMK' => 'จ๊าตพม่า',
+ 'MNT' => 'ทูกริกมองโกเลีย',
+ 'MOP' => 'ปาตากามาเก๊า',
+ 'MRO' => 'อูกียามอริเตเนีย',
+ 'MTL' => 'ลีรามอลตา',
+ 'MTP' => 'ปอนด์มอลตา',
+ 'MUR' => 'รูปีมอริเชียส',
+ 'MVR' => 'รูฟิยามัลดีฟส์',
+ 'MWK' => 'ควาชามาลาวี',
+ 'MXN' => 'เปโซเม็กซิโก',
+ 'MXP' => 'เงินเปโซเม็กซิโก (1861–1992)',
+ 'MXV' => 'ยูนิแดด ดี อินเวอร์ชั่น เม็กซิโก',
+ 'MYR' => 'ริงกิตมาเลเซีย',
+ 'MZE' => 'เอสคูโดโมซัมบิก',
+ 'MZM' => 'เมติคัลโมซัมบิกเก่า',
+ 'MZN' => 'เมติคัลโมซัมบิก',
+ 'NAD' => 'ดอลลาร์นามิเบีย',
+ 'NGN' => 'ไนราไนจีเรีย',
+ 'NIC' => 'คอร์โดบานิการากัว',
+ 'NIO' => 'กอร์โดบานิการากัว',
+ 'NLG' => 'กิลเดอร์เนเธอร์แลนด์',
+ 'NOK' => 'โครนนอร์เวย์',
+ 'NPR' => 'รูปีเนปาล',
+ 'NZD' => 'ดอลลาร์นิวซีแลนด์',
+ 'OMR' => 'เรียลโอมาน',
+ 'PAB' => 'บัลบัวปานามา',
+ 'PEI' => 'อินตีเปรู',
+ 'PEN' => 'นูโวซอลเปรู',
+ 'PES' => 'ซอลเปรู',
+ 'PGK' => 'กีนาปาปัวนิวกินี',
+ 'PHP' => 'เปโซฟิลิปปินส์',
+ 'PKR' => 'รูปีปากีสถาน',
+ 'PLN' => 'ซลอตีโปแลนด์',
+ 'PLZ' => 'ซลอตีโปแลนด์ (1950–1995)',
+ 'PTE' => 'เอสคูโดโปรตุเกส',
+ 'PYG' => 'กวารานีปารากวัย',
+ 'QAR' => 'เรียลกาตาร์',
+ 'RHD' => 'ดอลลาร์โรดีเซีย',
+ 'ROL' => 'ลิวโรมาเนียเก่า',
+ 'RON' => 'ลิวโรมาเนีย',
+ 'RSD' => 'ดีนาร์เซอร์เบีย',
+ 'RUB' => 'รูเบิลรัสเซีย',
+ 'RUR' => 'รูเบิลรัสเซีย (1991–1998)',
+ 'RWF' => 'ฟรังก์รวันดา',
+ 'SAR' => 'ริยัลซาอุดีอาระเบีย',
+ 'SBD' => 'ดอลลาร์หมู่เกาะโซโลมอน',
+ 'SCR' => 'รูปีเซเชลส์',
+ 'SDD' => 'ดีนาร์ซูดานเก่า',
+ 'SDG' => 'ปอนด์ซูดาน',
+ 'SDP' => 'ปอนด์ซูดานเก่า',
+ 'SEK' => 'โครนาสวีเดน',
+ 'SGD' => 'ดอลลาร์สิงคโปร์',
+ 'SHP' => 'ปอนด์เซนต์เฮเลนา',
+ 'SIT' => 'ทอลาร์สโลวีเนีย',
+ 'SKK' => 'โครูนาสโลวัก',
+ 'SLL' => 'ลีโอนเซียร์ราลีโอน',
+ 'SOS' => 'ชิลลิงโซมาเลีย',
+ 'SRD' => 'ดอลลาร์ซูรินาเม',
+ 'SRG' => 'กิลเดอร์ซูรินาเม',
+ 'SSP' => 'ปอนด์ซูดานใต้',
+ 'STD' => 'ดอบราเซาตูเมและปรินซิปี',
+ 'SUR' => 'รูเบิลโซเวียต',
+ 'SVC' => 'โคลอนเอลซัลวาดอร์',
+ 'SYP' => 'ปอนด์ซีเรีย',
+ 'SZL' => 'ลิลันเจนีสวาซิ',
+ 'THB' => 'บาทไทย',
+ 'TJR' => 'รูเบิลทาจิกิสถาน',
+ 'TJS' => 'โซโมนิทาจิกิสถาน',
+ 'TMM' => 'มานัตเติร์กเมนิสถาน (1993–2009)',
+ 'TMT' => 'มานัตเติร์กเมนิสถาน',
+ 'TND' => 'ดีนาร์ตูนิเซีย',
+ 'TOP' => 'พาแองกาตองกา',
+ 'TPE' => 'เอสคูโดติมอร์',
+ 'TRL' => 'ลีราตุรกีเก่า',
+ 'TRY' => 'ลีราตุรกี',
+ 'TTD' => 'ดอลลาร์ตรินิแดดและโตเบโก',
+ 'TWD' => 'ดอลลาร์ไต้หวันใหม่',
+ 'TZS' => 'ชิลลิงแทนซาเนีย',
+ 'UAH' => 'ฮรีฟเนียยูเครน',
+ 'UAK' => 'คาร์โบวาเนตซ์ยูเครน',
+ 'UGS' => 'ชิลลิงยูกันดา (1966–1987)',
+ 'UGX' => 'ชิลลิงยูกันดา',
+ 'USD' => 'ดอลลาร์สหรัฐ',
+ 'USN' => 'ดอลลาร์สหรัฐ (วันถัดไป)',
+ 'USS' => 'ดอลลาร์สหรัฐ (วันเดียวกัน)',
+ 'UYI' => 'เปโซเอนยูนิแดดเซสอินเด็กซาแดสอุรุกวัย',
+ 'UYP' => 'เปโซอุรุกวัย (1975–1993)',
+ 'UYU' => 'เปโซอุรุกวัย',
+ 'UZS' => 'ซอมอุซเบกิสถาน',
+ 'VEB' => 'โบลิวาร์เวเนซุเอลา (1871–2008)',
+ 'VEF' => 'โบลิวาร์เวเนซุเอลา',
+ 'VND' => 'ดองเวียดนาม',
+ 'VNN' => 'ดองเวียดนาม (1978–1985)',
+ 'VUV' => 'วาตูวานูอาตู',
+ 'WST' => 'ทาลาซามัว',
+ 'XAF' => 'ฟรังก์เซฟาธนาคารรัฐแอฟริกากลาง',
+ 'XAG' => 'เงิน',
+ 'XAU' => 'ทอง',
+ 'XBA' => 'หน่วยคอมโพสิตยุโรป',
+ 'XBB' => 'หน่วยโมเนทารียุโรป',
+ 'XBC' => 'หน่วยบัญชียุโรป [XBC]',
+ 'XBD' => 'หน่วยบัญชียุโรป [XBD]',
+ 'XCD' => 'ดอลลาร์แคริบเบียนตะวันออก',
+ 'XDR' => 'สิทธิถอนเงินพิเศษ',
+ 'XEU' => 'หน่วยสกุลเงินยุโรป',
+ 'XFO' => 'ฟรังก์ทองฝรั่งเศส',
+ 'XFU' => 'ฟรังก์ยูไอซีฝรั่งเศส',
+ 'XOF' => 'ฟรังก์เซฟาธนาคารกลางรัฐแอฟริกาตะวันตก',
+ 'XPD' => 'พัลเลเดียม',
+ 'XPF' => 'ฟรังก์ซีเอฟพี',
+ 'XPT' => 'แพลตินัม',
+ 'XRE' => 'กองทุนไรเน็ต',
+ 'XSU' => 'ซูเกร',
+ 'XTS' => 'รหัสทดสอบสกุลเงิน',
+ 'XUA' => 'หน่วยบัญชี เอดีบี',
+ 'XXX' => 'สกุลเงินที่ไม่รู้จัก',
+ 'YDD' => 'ดีนาร์เยเมน',
+ 'YER' => 'เรียลเยเมน',
+ 'YUD' => 'ฮาร์ดดีนาร์ยูโกสลาเวีย',
+ 'YUM' => 'โนวิย์ดีนาร์ยูโกสลาเวีย',
+ 'YUN' => 'คอนเวอร์ทิเบิลดีนาร์ยูโกสลาเวีย',
+ 'YUR' => 'ดีนาร์ปฏิรูปยูโกสลาเวีย (1992–1993)',
+ 'ZAL' => 'แรนด์แอฟริกาใต้ (การเงิน)',
+ 'ZAR' => 'แรนด์แอฟริกาใต้',
+ 'ZMK' => 'ควาชาแซมเบีย (1968–2012)',
+ 'ZMW' => 'ควาชาแซมเบีย',
+ 'ZRN' => 'นิวแซร์คองโก',
+ 'ZRZ' => 'แซร์คองโก',
+ 'ZWD' => 'ดอลลาร์ซิมบับเว',
+ 'ZWL' => 'ดอลลาร์ซิมบับเว (2009)',
+ 'ZWR' => 'ดอลลาร์ซิมบับเว (2008)',
+);
+
+$currencySymbols = array(
+ 'ADP' => 'ADP',
+ 'AED' => 'AED',
+ 'AFA' => 'AFA',
+ 'AFN' => 'AFN',
+ 'ALL' => 'ALL',
+ 'AMD' => 'AMD',
+ 'ANG' => 'ANG',
+ 'AOA' => 'AOA',
+ 'AOK' => 'AOK',
+ 'AON' => 'AON',
+ 'AOR' => 'AOR',
+ 'ARA' => 'ARA',
+ 'ARL' => 'ARL',
+ 'ARM' => 'ARM',
+ 'ARP' => 'ARP',
+ 'ARS' => 'ARS',
+ 'ATS' => 'ATS',
+ 'AUD' => 'AU$',
+ 'AWG' => 'AWG',
+ 'AZM' => 'AZM',
+ 'AZN' => 'AZN',
+ 'BAD' => 'BAD',
+ 'BAM' => 'BAM',
+ 'BAN' => 'BAN',
+ 'BBD' => 'BBD',
+ 'BDT' => 'BDT',
+ 'BEC' => 'BEC',
+ 'BEF' => 'BEF',
+ 'BEL' => 'BEL',
+ 'BGL' => 'BGL',
+ 'BGM' => 'BGM',
+ 'BGN' => 'BGN',
+ 'BGO' => 'BGO',
+ 'BHD' => 'BHD',
+ 'BIF' => 'BIF',
+ 'BMD' => 'BMD',
+ 'BND' => 'BND',
+ 'BOB' => 'BOB',
+ 'BOL' => 'BOL',
+ 'BOP' => 'BOP',
+ 'BOV' => 'BOV',
+ 'BRB' => 'BRB',
+ 'BRC' => 'BRC',
+ 'BRE' => 'BRE',
+ 'BRL' => 'R$',
+ 'BRN' => 'BRN',
+ 'BRR' => 'BRR',
+ 'BRZ' => 'BRZ',
+ 'BSD' => 'BSD',
+ 'BTN' => 'BTN',
+ 'BUK' => 'BUK',
+ 'BWP' => 'BWP',
+ 'BYB' => 'BYB',
+ 'BYR' => 'BYR',
+ 'BZD' => 'BZD',
+ 'CAD' => 'CA$',
+ 'CDF' => 'CDF',
+ 'CHE' => 'CHE',
+ 'CHF' => 'CHF',
+ 'CHW' => 'CHW',
+ 'CLE' => 'CLE',
+ 'CLF' => 'CLF',
+ 'CLP' => 'CLP',
+ 'CNY' => 'CN¥',
+ 'COP' => 'COP',
+ 'COU' => 'COU',
+ 'CRC' => 'CRC',
+ 'CSD' => 'CSD',
+ 'CSK' => 'CSK',
+ 'CUC' => 'CUC',
+ 'CUP' => 'CUP',
+ 'CVE' => 'CVE',
+ 'CYP' => 'CYP',
+ 'CZK' => 'CZK',
+ 'DDM' => 'DDM',
+ 'DEM' => 'DEM',
+ 'DJF' => 'DJF',
+ 'DKK' => 'DKK',
+ 'DOP' => 'DOP',
+ 'DZD' => 'DZD',
+ 'ECS' => 'ECS',
+ 'ECV' => 'ECV',
+ 'EEK' => 'EEK',
+ 'EGP' => 'EGP',
+ 'ERN' => 'ERN',
+ 'ESA' => 'ESA',
+ 'ESB' => 'ESB',
+ 'ESP' => 'ESP',
+ 'ETB' => 'ETB',
+ 'EUR' => '€',
+ 'FIM' => 'FIM',
+ 'FJD' => 'FJD',
+ 'FKP' => 'FKP',
+ 'FRF' => 'FRF',
+ 'GBP' => '£',
+ 'GEK' => 'GEK',
+ 'GEL' => 'GEL',
+ 'GHC' => 'GHC',
+ 'GHS' => 'GHS',
+ 'GIP' => 'GIP',
+ 'GMD' => 'GMD',
+ 'GNF' => 'GNF',
+ 'GNS' => 'GNS',
+ 'GQE' => 'GQE',
+ 'GRD' => 'GRD',
+ 'GTQ' => 'GTQ',
+ 'GWE' => 'GWE',
+ 'GWP' => 'GWP',
+ 'GYD' => 'GYD',
+ 'HKD' => 'HK$',
+ 'HNL' => 'HNL',
+ 'HRD' => 'HRD',
+ 'HRK' => 'HRK',
+ 'HTG' => 'HTG',
+ 'HUF' => 'HUF',
+ 'IDR' => 'IDR',
+ 'IEP' => 'IEP',
+ 'ILP' => 'ILP',
+ 'ILS' => '₪',
+ 'INR' => '₹',
+ 'IQD' => 'IQD',
+ 'IRR' => 'IRR',
+ 'ISK' => 'ISK',
+ 'ITL' => 'ITL',
+ 'JMD' => 'JMD',
+ 'JOD' => 'JOD',
+ 'JPY' => '¥',
+ 'KES' => 'KES',
+ 'KGS' => 'KGS',
+ 'KHR' => 'KHR',
+ 'KMF' => 'KMF',
+ 'KPW' => 'KPW',
+ 'KRH' => 'KRH',
+ 'KRO' => 'KRO',
+ 'KRW' => '₩',
+ 'KWD' => 'KWD',
+ 'KYD' => 'KYD',
+ 'KZT' => 'KZT',
+ 'LAK' => 'LAK',
+ 'LBP' => 'LBP',
+ 'LKR' => 'LKR',
+ 'LRD' => 'LRD',
+ 'LSL' => 'LSL',
+ 'LTL' => 'LTL',
+ 'LTT' => 'LTT',
+ 'LUC' => 'LUC',
+ 'LUF' => 'LUF',
+ 'LUL' => 'LUL',
+ 'LVL' => 'LVL',
+ 'LVR' => 'LVR',
+ 'LYD' => 'LYD',
+ 'MAD' => 'MAD',
+ 'MAF' => 'MAF',
+ 'MCF' => 'MCF',
+ 'MDC' => 'MDC',
+ 'MDL' => 'MDL',
+ 'MGA' => 'MGA',
+ 'MGF' => 'MGF',
+ 'MKD' => 'MKD',
+ 'MKN' => 'MKN',
+ 'MLF' => 'MLF',
+ 'MMK' => 'MMK',
+ 'MNT' => 'MNT',
+ 'MOP' => 'MOP',
+ 'MRO' => 'MRO',
+ 'MTL' => 'MTL',
+ 'MTP' => 'MTP',
+ 'MUR' => 'MUR',
+ 'MVR' => 'MVR',
+ 'MWK' => 'MWK',
+ 'MXN' => 'MX$',
+ 'MXP' => 'MXP',
+ 'MXV' => 'MXV',
+ 'MYR' => 'MYR',
+ 'MZE' => 'MZE',
+ 'MZM' => 'MZM',
+ 'MZN' => 'MZN',
+ 'NAD' => 'NAD',
+ 'NGN' => 'NGN',
+ 'NIC' => 'NIC',
+ 'NIO' => 'NIO',
+ 'NLG' => 'NLG',
+ 'NOK' => 'NOK',
+ 'NPR' => 'NPR',
+ 'NZD' => 'NZ$',
+ 'OMR' => 'OMR',
+ 'PAB' => 'PAB',
+ 'PEI' => 'PEI',
+ 'PEN' => 'PEN',
+ 'PES' => 'PES',
+ 'PGK' => 'PGK',
+ 'PHP' => 'PHP',
+ 'PKR' => 'PKR',
+ 'PLN' => 'PLN',
+ 'PLZ' => 'PLZ',
+ 'PTE' => 'PTE',
+ 'PYG' => 'PYG',
+ 'QAR' => 'QAR',
+ 'RHD' => 'RHD',
+ 'ROL' => 'ROL',
+ 'RON' => 'RON',
+ 'RSD' => 'RSD',
+ 'RUB' => 'RUB',
+ 'RUR' => 'RUR',
+ 'RWF' => 'RWF',
+ 'SAR' => 'SAR',
+ 'SBD' => 'SBD',
+ 'SCR' => 'SCR',
+ 'SDD' => 'SDD',
+ 'SDG' => 'SDG',
+ 'SDP' => 'SDP',
+ 'SEK' => 'SEK',
+ 'SGD' => 'SGD',
+ 'SHP' => 'SHP',
+ 'SIT' => 'SIT',
+ 'SKK' => 'SKK',
+ 'SLL' => 'SLL',
+ 'SOS' => 'SOS',
+ 'SRD' => 'SRD',
+ 'SRG' => 'SRG',
+ 'SSP' => 'SSP',
+ 'STD' => 'STD',
+ 'SUR' => 'SUR',
+ 'SVC' => 'SVC',
+ 'SYP' => 'SYP',
+ 'SZL' => 'SZL',
+ 'THB' => 'THB',
+ 'TJR' => 'TJR',
+ 'TJS' => 'TJS',
+ 'TMM' => 'TMM',
+ 'TMT' => 'TMT',
+ 'TND' => 'TND',
+ 'TOP' => 'TOP',
+ 'TPE' => 'TPE',
+ 'TRL' => 'TRL',
+ 'TRY' => 'TRY',
+ 'TTD' => 'TTD',
+ 'TWD' => 'NT$',
+ 'TZS' => 'TZS',
+ 'UAH' => 'UAH',
+ 'UAK' => 'UAK',
+ 'UGS' => 'UGS',
+ 'UGX' => 'UGX',
+ 'USD' => 'US$',
+ 'USN' => 'USN',
+ 'USS' => 'USS',
+ 'UYI' => 'UYI',
+ 'UYP' => 'UYP',
+ 'UYU' => 'UYU',
+ 'UZS' => 'UZS',
+ 'VEB' => 'VEB',
+ 'VEF' => 'VEF',
+ 'VND' => '₫',
+ 'VNN' => 'VNN',
+ 'VUV' => 'VUV',
+ 'WST' => 'WST',
+ 'XAF' => 'FCFA',
+ 'XAG' => 'XAG',
+ 'XAU' => 'XAU',
+ 'XBA' => 'XBA',
+ 'XBB' => 'XBB',
+ 'XBC' => 'XBC',
+ 'XBD' => 'XBD',
+ 'XCD' => 'EC$',
+ 'XDR' => 'XDR',
+ 'XEU' => 'XEU',
+ 'XFO' => 'XFO',
+ 'XFU' => 'XFU',
+ 'XOF' => 'CFA',
+ 'XPD' => 'XPD',
+ 'XPF' => 'CFPF',
+ 'XPT' => 'XPT',
+ 'XRE' => 'XRE',
+ 'XSU' => 'XSU',
+ 'XTS' => 'XTS',
+ 'XUA' => 'XUA',
+ 'XXX' => 'XXX',
+ 'YDD' => 'YDD',
+ 'YER' => 'YER',
+ 'YUD' => 'YUD',
+ 'YUM' => 'YUM',
+ 'YUN' => 'YUN',
+ 'YUR' => 'YUR',
+ 'ZAL' => 'ZAL',
+ 'ZAR' => 'ZAR',
+ 'ZMK' => 'ZMK',
+ 'ZMW' => 'ZMW',
+ 'ZRN' => 'ZRN',
+ 'ZRZ' => 'ZRZ',
+ 'ZWD' => 'ZWD',
+ 'ZWL' => 'ZWL',
+ 'ZWR' => 'ZWR',
+);
+
+$countryNames = array(
+ 'AC' => 'เกาะแอสเซนชัน',
+ 'AD' => 'อันดอร์รา',
+ 'AE' => 'สหรัฐอาหรับเอมิเรตส์',
+ 'AF' => 'อัฟกานิสถาน',
+ 'AG' => 'แอนติกาและบาร์บูดา',
+ 'AI' => 'แองกวิลลา',
+ 'AL' => 'แอลเบเนีย',
+ 'AM' => 'อาร์เมเนีย',
+ 'AN' => 'เนเธอร์แลนด์แอนทิลลิส',
+ 'AO' => 'แองโกลา',
+ 'AQ' => 'แอนตาร์กติกา',
+ 'AR' => 'อาร์เจนตินา',
+ 'AS' => 'อเมริกันซามัว',
+ 'AT' => 'ออสเตรีย',
+ 'AU' => 'ออสเตรเลีย',
+ 'AW' => 'อารูบา',
+ 'AX' => 'หมู่เกาะโอลันด์',
+ 'AZ' => 'อาเซอร์ไบจาน',
+ 'BA' => 'บอสเนียและเฮอร์เซโกวีนา',
+ 'BB' => 'บาร์เบโดส',
+ 'BD' => 'บังกลาเทศ',
+ 'BE' => 'เบลเยียม',
+ 'BF' => 'บูร์กินาฟาโซ',
+ 'BG' => 'บัลแกเรีย',
+ 'BH' => 'บาห์เรน',
+ 'BI' => 'บุรุนดี',
+ 'BJ' => 'เบนิน',
+ 'BL' => 'เซนต์บาร์เธเลมี',
+ 'BM' => 'เบอร์มิวดา',
+ 'BN' => 'บรูไน',
+ 'BO' => 'โบลิเวีย',
+ 'BQ' => 'เนเธอร์แลนด์แคริบเบียน',
+ 'BR' => 'บราซิล',
+ 'BS' => 'บาฮามาส',
+ 'BT' => 'ภูฏาน',
+ 'BV' => 'เกาะบูเวต',
+ 'BW' => 'บอตสวานา',
+ 'BY' => 'เบลารุส',
+ 'BZ' => 'เบลีซ',
+ 'CA' => 'แคนาดา',
+ 'CC' => 'หมู่เกาะโคโคส (คีลิง)',
+ 'CD' => 'คองโก-กินชาซา',
+ 'CF' => 'สาธารณรัฐแอฟริกากลาง',
+ 'CG' => 'คองโก-บราซซาวิล',
+ 'CH' => 'สวิตเซอร์แลนด์',
+ 'CI' => 'ไอวอรี่โคสต์',
+ 'CK' => 'หมู่เกาะคุก',
+ 'CL' => 'ชิลี',
+ 'CM' => 'แคเมอรูน',
+ 'CN' => 'จีน',
+ 'CO' => 'โคลอมเบีย',
+ 'CP' => 'เกาะคลิปเปอร์ตัน',
+ 'CR' => 'คอสตาริกา',
+ 'CU' => 'คิวบา',
+ 'CV' => 'เคปเวิร์ด',
+ 'CW' => 'คูราเซา',
+ 'CX' => 'เกาะคริสต์มาส',
+ 'CY' => 'ไซปรัส',
+ 'CZ' => 'สาธารณรัฐเช็ก',
+ 'DE' => 'เยอรมนี',
+ 'DG' => 'ดิเอโกการ์เซีย',
+ 'DJ' => 'จิบูตี',
+ 'DK' => 'เดนมาร์ก',
+ 'DM' => 'โดมินิกา',
+ 'DO' => 'สาธารณรัฐโดมินิกัน',
+ 'DZ' => 'แอลจีเรีย',
+ 'EA' => 'ซีโอตาและเมลิลลา',
+ 'EC' => 'เอกวาดอร์',
+ 'EE' => 'เอสโตเนีย',
+ 'EG' => 'อียิปต์',
+ 'EH' => 'ซาฮาราตะวันตก',
+ 'ER' => 'เอริเทรีย',
+ 'ES' => 'สเปน',
+ 'ET' => 'เอธิโอเปีย',
+ 'EU' => 'สหภาพยุโรป',
+ 'FI' => 'ฟินแลนด์',
+ 'FJ' => 'ฟิจิ',
+ 'FK' => 'หมู่เกาะฟอล์กแลนด์',
+ 'FM' => 'ไมโครนีเซีย',
+ 'FO' => 'หมู่เกาะแฟโร',
+ 'FR' => 'ฝรั่งเศส',
+ 'GA' => 'กาบอง',
+ 'GB' => 'อังกฤษ',
+ 'GD' => 'เกรเนดา',
+ 'GE' => 'จอร์เจีย',
+ 'GF' => 'เฟรนช์เกียนา',
+ 'GG' => 'เกิร์นซีย์',
+ 'GH' => 'กานา',
+ 'GI' => 'ยิบรอลตาร์',
+ 'GL' => 'กรีนแลนด์',
+ 'GM' => 'แกมเบีย',
+ 'GN' => 'กินี',
+ 'GP' => 'กวาเดอลูป',
+ 'GQ' => 'อิเควทอเรียลกินี',
+ 'GR' => 'กรีซ',
+ 'GS' => 'เกาะเซาท์จอร์เจียและหมู่เกาะเซาท์แซนด์วิช',
+ 'GT' => 'กัวเตมาลา',
+ 'GU' => 'กวม',
+ 'GW' => 'กินี-บิสเซา',
+ 'GY' => 'กายอานา',
+ 'HK' => 'ฮ่องกง',
+ 'HM' => 'เกาะเฮิร์ดและหมู่เกาะแมกดอนัลด์',
+ 'HN' => 'ฮอนดูรัส',
+ 'HR' => 'โครเอเชีย',
+ 'HT' => 'เฮติ',
+ 'HU' => 'ฮังการี',
+ 'IC' => 'หมู่เกาะคานารี',
+ 'ID' => 'อินโดนีเซีย',
+ 'IE' => 'ไอร์แลนด์',
+ 'IL' => 'อิสราเอล',
+ 'IM' => 'เกาะแมน',
+ 'IN' => 'อินเดีย',
+ 'IO' => 'บริติชอินเดียนโอเชียนเทร์ริทอรี',
+ 'IQ' => 'อิรัก',
+ 'IR' => 'อิหร่าน',
+ 'IS' => 'ไอซ์แลนด์',
+ 'IT' => 'อิตาลี',
+ 'JE' => 'เจอร์ซีย์',
+ 'JM' => 'จาเมกา',
+ 'JO' => 'จอร์แดน',
+ 'JP' => 'ญี่ปุ่น',
+ 'KE' => 'เคนยา',
+ 'KG' => 'คีร์กีซสถาน',
+ 'KH' => 'กัมพูชา',
+ 'KI' => 'คิริบาส',
+ 'KM' => 'คอโมโรส',
+ 'KN' => 'เซนต์คิตส์และเนวิส',
+ 'KP' => 'เกาหลีเหนือ',
+ 'KR' => 'เกาหลีใต้',
+ 'KW' => 'คูเวต',
+ 'KY' => 'หมู่เกาะเคย์แมน',
+ 'KZ' => 'คาซัคสถาน',
+ 'LA' => 'ลาว',
+ 'LB' => 'เลบานอน',
+ 'LC' => 'เซนต์ลูเซีย',
+ 'LI' => 'ลิกเตนสไตน์',
+ 'LK' => 'ศรีลังกา',
+ 'LR' => 'ไลบีเรีย',
+ 'LS' => 'เลโซโท',
+ 'LT' => 'ลิทัวเนีย',
+ 'LU' => 'ลักเซมเบิร์ก',
+ 'LV' => 'ลัตเวีย',
+ 'LY' => 'ลิเบีย',
+ 'MA' => 'โมร็อกโก',
+ 'MC' => 'โมนาโก',
+ 'MD' => 'มอลโดวา',
+ 'ME' => 'มอนเตเนโกร',
+ 'MF' => 'เซนต์มาติน',
+ 'MG' => 'มาดากัสการ์',
+ 'MH' => 'หมู่เกาะมาร์แชลล์',
+ 'MK' => 'มาซิโดเนีย',
+ 'ML' => 'มาลี',
+ 'MM' => 'เมียนม่าร์ (พม่า)',
+ 'MN' => 'มองโกเลีย',
+ 'MO' => 'มาเก๊า',
+ 'MP' => 'หมู่เกาะนอร์เทิร์นมาเรียนา',
+ 'MQ' => 'มาร์ตินีก',
+ 'MR' => 'มอริเตเนีย',
+ 'MS' => 'มอนต์เซอร์รัต',
+ 'MT' => 'มอลตา',
+ 'MU' => 'มอริเชียส',
+ 'MV' => 'มัลดีฟส์',
+ 'MW' => 'มาลาวี',
+ 'MX' => 'เม็กซิโก',
+ 'MY' => 'มาเลเซีย',
+ 'MZ' => 'โมซัมบิก',
+ 'NA' => 'นามิเบีย',
+ 'NC' => 'นิวแคลิโดเนีย',
+ 'NE' => 'ไนเจอร์',
+ 'NF' => 'เกาะนอร์ฟอล์ก',
+ 'NG' => 'ไนจีเรีย',
+ 'NI' => 'นิการากัว',
+ 'NL' => 'เนเธอร์แลนด์',
+ 'NO' => 'นอร์เวย์',
+ 'NP' => 'เนปาล',
+ 'NR' => 'นาอูรู',
+ 'NU' => 'นีอูเอ',
+ 'NZ' => 'นิวซีแลนด์',
+ 'OM' => 'โอมาน',
+ 'PA' => 'ปานามา',
+ 'PE' => 'เปรู',
+ 'PF' => 'เฟรนช์โปลินีเซีย',
+ 'PG' => 'ปาปัวนิวกินี',
+ 'PH' => 'ฟิลิปปินส์',
+ 'PK' => 'ปากีสถาน',
+ 'PL' => 'โปแลนด์',
+ 'PM' => 'แซงปีแยร์และมีเกอลง',
+ 'PN' => 'หมู่เกาะพิตแคร์น',
+ 'PR' => 'เปอร์โตริโก',
+ 'PS' => 'ปาเลสไตน์',
+ 'PT' => 'โปรตุเกส',
+ 'PW' => 'ปาเลา',
+ 'PY' => 'ปารากวัย',
+ 'QA' => 'กาตาร์',
+ 'QO' => 'เอาต์ไลอิงโอเชียเนีย',
+ 'RE' => 'เรอูนียง',
+ 'RO' => 'โรมาเนีย',
+ 'RS' => 'เซอร์เบีย',
+ 'RU' => 'รัสเซีย',
+ 'RW' => 'รวันดา',
+ 'SA' => 'ซาอุดีอาระเบีย',
+ 'SB' => 'หมู่เกาะโซโลมอน',
+ 'SC' => 'เซเชลส์',
+ 'SD' => 'ซูดาน',
+ 'SE' => 'สวีเดน',
+ 'SG' => 'สิงคโปร์',
+ 'SH' => 'เซนต์เฮเลนา',
+ 'SI' => 'สโลวีเนีย',
+ 'SJ' => 'สฟาลบาร์และยานไมเอน',
+ 'SK' => 'สโลวะเกีย',
+ 'SL' => 'เซียร์ราลีโอน',
+ 'SM' => 'ซานมารีโน',
+ 'SN' => 'เซเนกัล',
+ 'SO' => 'โซมาเลีย',
+ 'SR' => 'ซูรินาเม',
+ 'SS' => 'ซูดานใต้',
+ 'ST' => 'เซาตูเมและปรินซิปี',
+ 'SV' => 'เอลซัลวาดอร์',
+ 'SX' => 'เซนต์มาร์ติน',
+ 'SY' => 'ซีเรีย',
+ 'SZ' => 'สวาซิแลนด์',
+ 'TA' => 'ทริสตัน เดอ คูนา',
+ 'TC' => 'หมู่เกาะเติกส์และหมู่เกาะเคคอส',
+ 'TD' => 'ชาด',
+ 'TF' => 'เฟรนช์เซาเทิร์นเทร์ริทอรีส์',
+ 'TG' => 'โตโก',
+ 'TH' => 'ไทย',
+ 'TJ' => 'ทาจิกิสถาน',
+ 'TK' => 'โตเกเลา',
+ 'TL' => 'ติมอร์-เลสเต',
+ 'TM' => 'เติร์กเมนิสถาน',
+ 'TN' => 'ตูนิเซีย',
+ 'TO' => 'ตองกา',
+ 'TR' => 'ตุรกี',
+ 'TT' => 'ตรินิแดดและโตเบโก',
+ 'TV' => 'ตูวาลู',
+ 'TW' => 'ไต้หวัน',
+ 'TZ' => 'แทนซาเนีย',
+ 'UA' => 'ยูเครน',
+ 'UG' => 'ยูกันดา',
+ 'UM' => 'หมู่เกาะรอบนอกของสหรัฐอเมริกา',
+ 'US' => 'สหรัฐฯ',
+ 'UY' => 'อุรุกวัย',
+ 'UZ' => 'อุซเบกิสถาน',
+ 'VA' => 'นครวาติกัน',
+ 'VC' => 'เซนต์วินเซนต์และเกรนาดีนส์',
+ 'VE' => 'เวเนซุเอลา',
+ 'VG' => 'หมู่เกาะบริติชเวอร์จิน',
+ 'VI' => 'หมู่เกาะยูเอสเวอร์จิน',
+ 'VN' => 'เวียดนาม',
+ 'VU' => 'วานูอาตู',
+ 'WF' => 'วาลลิสและฟุตูนา',
+ 'WS' => 'ซามัว',
+ 'XK' => 'โคโซโว',
+ 'YE' => 'เยเมน',
+ 'YT' => 'มายอต',
+ 'ZA' => 'แอฟริกาใต้',
+ 'ZM' => 'แซมเบีย',
+ 'ZW' => 'ซิมบับเว',
+);
+
+$timeUnits = array(
+ 'day-future-other' => 'ในอีก {0} วัน',
+ 'day-narrow-future-other' => 'ใน {0} วัน',
+ 'day-narrow-past-other' => '{0} วันที่แล้ว',
+ 'day-other' => '{0} วัน',
+ 'day-past-other' => '{0} วันที่ผ่านมา',
+ 'day-short-future-other' => 'ใน {0} วัน',
+ 'day-short-past-other' => '{0} วันที่แล้ว',
+ 'hour-future-other' => 'ในอีก {0} ชั่วโมง',
+ 'hour-narrow-future-other' => 'ใน {0} ชม.',
+ 'hour-narrow-past-other' => '{0} ชม. ที่แล้ว',
+ 'hour-other' => '{0} ชั่วโมง',
+ 'hour-past-other' => '{0} ชั่วโมงที่ผ่านมา',
+ 'hour-short-future-other' => 'ใน {0} ชม.',
+ 'hour-short-past-other' => '{0} ชม. ที่แล้ว',
+ 'microsecond-other' => '{0} ไมโครวินาที',
+ 'millisecond-other' => '{0} มิลลิวินาที',
+ 'minute-future-other' => 'ในอีก {0} นาที',
+ 'minute-narrow-future-other' => 'ใน {0} นาที',
+ 'minute-narrow-past-other' => '{0} นาทีที่แล้ว',
+ 'minute-other' => '{0} นาที',
+ 'minute-past-other' => '{0} นาทีที่ผ่านมา',
+ 'minute-short-future-other' => 'ใน {0} นาที',
+ 'minute-short-past-other' => '{0} นาทีที่แล้ว',
+ 'month-future-other' => 'ในอีก {0} เดือน',
+ 'month-narrow-future-other' => 'ใน {0} เดือน',
+ 'month-narrow-past-other' => '{0} เดือนที่แล้ว',
+ 'month-other' => '{0} เดือน',
+ 'month-past-other' => '{0} เดือนที่ผ่านมา',
+ 'month-short-future-other' => 'ใน {0} เดือน',
+ 'month-short-past-other' => '{0} เดือนที่แล้ว',
+ 'nanosecond-other' => '{0} นาโนวินาที',
+ 'quarter-future-other' => 'ในอีก {0} ไตรมาส',
+ 'quarter-narrow-future-other' => 'ใน {0} ไตรมาส',
+ 'quarter-narrow-past-other' => '{0} ไตรมาสที่แล้ว',
+ 'quarter-past-other' => '{0} ไตรมาสที่แล้ว',
+ 'quarter-short-future-other' => 'ใน {0} ไตรมาส',
+ 'quarter-short-past-other' => '{0} ไตรมาสที่แล้ว',
+ 'second-future-other' => 'ในอีก {0} วินาที',
+ 'second-narrow-future-other' => 'ใน {0} วินาที',
+ 'second-narrow-past-other' => '{0} วินาทีที่แล้ว',
+ 'second-other' => '{0} วินาที',
+ 'second-past-other' => '{0} วินาทีที่ผ่านมา',
+ 'second-short-future-other' => 'ใน {0} วินาที',
+ 'second-short-past-other' => '{0} วินาทีที่แล้ว',
+ 'week-future-other' => 'ในอีก {0} สัปดาห์',
+ 'week-narrow-future-other' => 'ใน {0} สัปดาห์',
+ 'week-narrow-past-other' => '{0} สัปดาห์ที่แล้ว',
+ 'week-other' => '{0} สัปดาห์',
+ 'week-past-other' => '{0} สัปดาห์ที่ผ่านมา',
+ 'week-short-future-other' => 'ใน {0} สัปดาห์',
+ 'week-short-past-other' => '{0} สัปดาห์ที่แล้ว',
+ 'year-future-other' => 'ในอีก {0} ปี',
+ 'year-narrow-future-other' => 'ใน {0} ปี',
+ 'year-narrow-past-other' => '{0} ปีที่แล้ว',
+ 'year-other' => '{0} ปี',
+ 'year-past-other' => '{0} ปีที่แล้ว',
+ 'year-short-future-other' => 'ใน {0} ปี',
+ 'year-short-past-other' => '{0} ปีที่แล้ว',
+);
diff --git a/MLEB/cldr/CldrNames/CldrNamesTi.php b/MLEB/cldr/CldrNames/CldrNamesTi.php
new file mode 100644
index 00000000..6465a56d
--- /dev/null
+++ b/MLEB/cldr/CldrNames/CldrNamesTi.php
@@ -0,0 +1,354 @@
+<?php
+
+$languageNames = array(
+ 'af' => 'አፍሪቃንሰኛ',
+ 'am' => 'አምሐረኛ',
+ 'ar' => 'ዓረበኛ',
+ 'az' => 'አዜርባይጃንኛ',
+ 'be' => 'ቤላራሻኛ',
+ 'bg' => 'ቡልጋሪኛ',
+ 'bn' => 'በንጋሊኛ',
+ 'br' => 'ብሬቶን',
+ 'bs' => 'ቦስኒያን',
+ 'ca' => 'ካታላን',
+ 'cs' => 'ቼክኛ',
+ 'cy' => 'ወልሽ',
+ 'da' => 'ዴኒሽ',
+ 'de' => 'ጀርመን',
+ 'el' => 'ግሪከኛ',
+ 'en' => 'እንግሊዝኛ',
+ 'eo' => 'ኤስፐራንቶ',
+ 'es' => 'ስፓኒሽ',
+ 'et' => 'ኤስቶኒአን',
+ 'eu' => 'ባስክኛ',
+ 'fa' => 'ፐርሲያኛ',
+ 'fi' => 'ፊኒሽ',
+ 'fil' => 'ታጋሎገኛ',
+ 'fo' => 'ፋሮኛ',
+ 'fr' => 'ፈረንሳይኛ',
+ 'fy' => 'ፍሪሰኛ',
+ 'ga' => 'አይሪሽ',
+ 'gd' => 'እስኮትስ ጌልክኛ',
+ 'gl' => 'ጋለቪኛ',
+ 'gn' => 'ጓራኒ',
+ 'gu' => 'ጉጃራቲኛ',
+ 'he' => 'ዕብራስጥ',
+ 'hi' => 'ሕንደኛ',
+ 'hr' => 'ክሮሽያንኛ',
+ 'hu' => 'ሀንጋሪኛ',
+ 'ia' => 'ኢንቴር ቋንቋ',
+ 'id' => 'እንዶኑሲኛ',
+ 'is' => 'አይስላንደኛ',
+ 'it' => 'ጣሊያንኛ',
+ 'ja' => 'ጃፓንኛ',
+ 'jv' => 'ጃቫንኛ',
+ 'ka' => 'ጊዮርጊያኛ',
+ 'kn' => 'ካማደኛ',
+ 'ko' => 'ኮሪያኛ',
+ 'ku' => 'ኩርድሽ',
+ 'ky' => 'ኪሩጋዚ',
+ 'la' => 'ላቲንኛ',
+ 'lt' => 'ሊቱአኒየን',
+ 'lv' => 'ላቲቪያን',
+ 'mk' => 'ማክዶኒኛ',
+ 'ml' => 'ማላያላምኛ',
+ 'mr' => 'ማራቲኛ',
+ 'ms' => 'ማላይኛ',
+ 'mt' => 'ማልቲስኛ',
+ 'ne' => 'ኔፖሊኛ',
+ 'nl' => 'ደች',
+ 'nn' => 'ኖርዌይኛ (ናይ ኝኖርስክ)',
+ 'no' => 'ኖርዌጂያን',
+ 'oc' => 'ኦኪታንኛ',
+ 'or' => 'ኦሪያ',
+ 'pa' => 'ፑንጃቢኛ',
+ 'pl' => 'ፖሊሽ',
+ 'ps' => 'ፓሽቶ',
+ 'pt' => 'ፖርቱጋሊኛ',
+ 'pt-br' => 'ፖርቱጋልኛ (ናይ ብራዚል)',
+ 'pt-pt' => 'ፖርቱጋልኛ (ናይ ፖርቱጋል)',
+ 'ro' => 'ሮማኒያን',
+ 'ru' => 'ራሽኛ',
+ 'sh' => 'ሰርቦ- ክሮዊታን',
+ 'si' => 'ስንሃልኛ',
+ 'sk' => 'ስሎቨክኛ',
+ 'sl' => 'ስቁቪኛ',
+ 'sq' => 'አልቤኒኛ',
+ 'sr' => 'ሰርቢኛ',
+ 'st' => 'ሰሴቶ',
+ 'su' => 'ሱዳንኛ',
+ 'sv' => 'ስዊድንኛ',
+ 'sw' => 'ሰዋሂሊኛ',
+ 'ta' => 'ታሚልኛ',
+ 'te' => 'ተሉጉኛ',
+ 'th' => 'ታይኛ',
+ 'ti' => 'ትግርኛ',
+ 'tk' => 'ናይ ቱርኪ ሰብዓይ (ቱርካዊ)',
+ 'tlh' => 'ክሊንግኦንኛ',
+ 'tr' => 'ቱርከኛ',
+ 'tw' => 'ትዊ',
+ 'uk' => 'ዩክረኒኛ',
+ 'ur' => 'ኡርዱኛ',
+ 'uz' => 'ኡዝበክኛ',
+ 'vi' => 'ቪትናምኛ',
+ 'xh' => 'ዞሳኛ',
+ 'yi' => 'ዪዲሽ',
+ 'zu' => 'ዙሉኛ',
+);
+
+$currencyNames = array(
+ 'BRL' => 'የብራዚል ሪል',
+ 'CNY' => 'የቻይና ዩአን ረንሚንቢ',
+ 'ETB' => 'የኢትዮጵያ ብር',
+ 'EUR' => 'አውሮ',
+ 'GBP' => 'የእንግሊዝ ፓውንድ ስተርሊንግ',
+ 'INR' => 'የሕንድ ሩፒ',
+ 'JPY' => 'የጃፓን የን',
+ 'RUB' => 'የራሻ ሩብል',
+ 'USD' => 'የአሜሪካን ዶላር',
+);
+
+$currencySymbols = array(
+ 'ETB' => 'Br',
+);
+
+$countryNames = array(
+ 'AD' => 'አንዶራ',
+ 'AE' => 'የተባበሩት አረብ ኤምሬትስ',
+ 'AF' => 'አፍጋኒስታን',
+ 'AG' => 'አንቲጓ እና ባሩዳ',
+ 'AI' => 'አንጉኢላ',
+ 'AL' => 'አልባኒያ',
+ 'AM' => 'አርሜኒያ',
+ 'AN' => 'ኔዘርላንድስ አንቲልስ',
+ 'AO' => 'አንጐላ',
+ 'AQ' => 'አንታርክቲካ',
+ 'AR' => 'አርጀንቲና',
+ 'AS' => 'የአሜሪካ ሳሞአ',
+ 'AT' => 'ኦስትሪያ',
+ 'AU' => 'አውስትሬሊያ',
+ 'AW' => 'አሩባ',
+ 'AX' => 'የአላንድ ደሴቶች',
+ 'AZ' => 'አዘርባጃን',
+ 'BA' => 'ቦስኒያ እና ሄርዞጎቪኒያ',
+ 'BB' => 'ባርቤዶስ',
+ 'BD' => 'ባንግላዲሽ',
+ 'BE' => 'ቤልጄም',
+ 'BF' => 'ቡርኪና ፋሶ',
+ 'BG' => 'ቡልጌሪያ',
+ 'BH' => 'ባህሬን',
+ 'BI' => 'ብሩንዲ',
+ 'BJ' => 'ቤኒን',
+ 'BM' => 'ቤርሙዳ',
+ 'BN' => 'ብሩኒ',
+ 'BO' => 'ቦሊቪያ',
+ 'BR' => 'ብራዚል',
+ 'BS' => 'ባሃማስ',
+ 'BT' => 'ቡህታን',
+ 'BV' => 'የቦውቬት ደሴት',
+ 'BW' => 'ቦትስዋና',
+ 'BY' => 'ቤላሩስ',
+ 'BZ' => 'ቤሊዘ',
+ 'CA' => 'ካናዳ',
+ 'CC' => 'ኮኮስ ኬሊንግ ደሴቶች',
+ 'CD' => 'ኮንጎ',
+ 'CF' => 'የመካከለኛው አፍሪካ ሪፐብሊክ',
+ 'CG' => 'ኮንጐ',
+ 'CH' => 'ስዊዘርላንድ',
+ 'CI' => 'ኮት ዲቯር',
+ 'CK' => 'ኩክ ደሴቶች',
+ 'CL' => 'ቺሊ',
+ 'CM' => 'ካሜሩን',
+ 'CN' => 'ቻይና',
+ 'CO' => 'ኮሎምቢያ',
+ 'CR' => 'ኮስታ ሪካ',
+ 'CU' => 'ኩባ',
+ 'CV' => 'ኬፕ ቬርዴ',
+ 'CX' => 'የገና ደሴቶች',
+ 'CY' => 'ሳይፕረስ',
+ 'CZ' => 'ቼክ ሪፑብሊክ',
+ 'DE' => 'ጀርመን',
+ 'DJ' => 'ጂቡቲ',
+ 'DK' => 'ዴንማርክ',
+ 'DM' => 'ዶሚኒካ',
+ 'DO' => 'ዶሚኒክ ሪፑብሊክ',
+ 'DZ' => 'አልጄሪያ',
+ 'EC' => 'ኢኳዶር',
+ 'EE' => 'ኤስቶኒያ',
+ 'EG' => 'ግብጽ',
+ 'EH' => 'ምዕራባዊ ሳህራ',
+ 'ER' => 'ኤርትራ',
+ 'ES' => 'ስፔን',
+ 'ET' => 'ኢትዮጵያ',
+ 'FI' => 'ፊንላንድ',
+ 'FJ' => 'ፊጂ',
+ 'FK' => 'የፎልክላንድ ደሴቶች',
+ 'FM' => 'ሚክሮኔዢያ',
+ 'FO' => 'የፋሮይ ደሴቶች',
+ 'FR' => 'ፈረንሳይ',
+ 'GA' => 'ጋቦን',
+ 'GB' => 'እንግሊዝ',
+ 'GD' => 'ግሬናዳ',
+ 'GE' => 'ጆርጂያ',
+ 'GF' => 'የፈረንሳይ ጉዊአና',
+ 'GH' => 'ጋና',
+ 'GI' => 'ጊብራልታር',
+ 'GL' => 'ግሪንላንድ',
+ 'GM' => 'ጋምቢያ',
+ 'GN' => 'ጊኒ',
+ 'GP' => 'ጉዋደሉፕ',
+ 'GQ' => 'ኢኳቶሪያል ጊኒ',
+ 'GR' => 'ግሪክ',
+ 'GS' => 'ደቡብ ጆርጂያ እና የደቡድ ሳንድዊች ደሴቶች',
+ 'GT' => 'ጉዋቲማላ',
+ 'GU' => 'ጉዋም',
+ 'GW' => 'ቢሳዎ',
+ 'GY' => 'ጉያና',
+ 'HK' => 'ሆንግ ኮንግ',
+ 'HM' => 'የኧርድ እና የማክዶናልድ ደሴቶች',
+ 'HN' => 'ሆንዱራስ',
+ 'HR' => 'ክሮኤሽያ',
+ 'HT' => 'ሀይቲ',
+ 'HU' => 'ሀንጋሪ',
+ 'ID' => 'ኢንዶኔዢያ',
+ 'IE' => 'አየርላንድ',
+ 'IL' => 'እስራኤል',
+ 'IN' => 'ህንድ',
+ 'IO' => 'የብሪታኒያ ህንድ ውቂያኖስ ግዛት',
+ 'IQ' => 'ኢራቅ',
+ 'IR' => 'ኢራን',
+ 'IS' => 'አይስላንድ',
+ 'IT' => 'ጣሊያን',
+ 'JM' => 'ጃማይካ',
+ 'JO' => 'ጆርዳን',
+ 'JP' => 'ጃፓን',
+ 'KE' => 'ኬንያ',
+ 'KH' => 'ካምቦዲያ',
+ 'KI' => 'ኪሪባቲ',
+ 'KM' => 'ኮሞሮስ',
+ 'KN' => 'ቅዱስ ኪትስ እና ኔቪስ',
+ 'KP' => 'ሰሜን ኮሪያ',
+ 'KR' => 'ደቡብ ኮሪያ',
+ 'KW' => 'ክዌት',
+ 'KY' => 'ካይማን ደሴቶች',
+ 'LA' => 'ላኦስ',
+ 'LB' => 'ሊባኖስ',
+ 'LC' => 'ሴንት ሉቺያ',
+ 'LI' => 'ሊችተንስታይን',
+ 'LK' => 'ሲሪላንካ',
+ 'LR' => 'ላይቤሪያ',
+ 'LS' => 'ሌሶቶ',
+ 'LT' => 'ሊቱዌኒያ',
+ 'LU' => 'ሉክሰምበርግ',
+ 'LV' => 'ላትቪያ',
+ 'LY' => 'ሊቢያ',
+ 'MA' => 'ሞሮኮ',
+ 'MC' => 'ሞናኮ',
+ 'MD' => 'ሞልዶቫ',
+ 'MG' => 'ማዳጋስካር',
+ 'MH' => 'ማርሻል አይላንድ',
+ 'MK' => 'ማከዶኒያ',
+ 'ML' => 'ማሊ',
+ 'MM' => 'ማያንማር',
+ 'MN' => 'ሞንጎሊያ',
+ 'MO' => 'ማካዎ',
+ 'MP' => 'የሰሜናዊ ማሪያና ደሴቶች',
+ 'MQ' => 'ማርቲኒክ',
+ 'MR' => 'ሞሪቴኒያ',
+ 'MS' => 'ሞንትሴራት',
+ 'MT' => 'ማልታ',
+ 'MU' => 'ማሩሸስ',
+ 'MV' => 'ማልዲቭስ',
+ 'MW' => 'ማላዊ',
+ 'MX' => 'ሜክሲኮ',
+ 'MY' => 'ማሌዢያ',
+ 'MZ' => 'ሞዛምቢክ',
+ 'NA' => 'ናሚቢያ',
+ 'NC' => 'ኒው ካሌዶኒያ',
+ 'NE' => 'ኒጀር',
+ 'NF' => 'ኖርፎልክ ደሴት',
+ 'NG' => 'ናይጄሪያ',
+ 'NI' => 'ኒካራጓ',
+ 'NL' => 'ኔዘርላንድ',
+ 'NO' => 'ኖርዌ',
+ 'NP' => 'ኔፓል',
+ 'NR' => 'ናኡሩ',
+ 'NU' => 'ኒኡይ',
+ 'NZ' => 'ኒው ዚላንድ',
+ 'OM' => 'ኦማን',
+ 'PA' => 'ፓናማ',
+ 'PE' => 'ፔሩ',
+ 'PF' => 'የፈረንሳይ ፖሊኔዢያ',
+ 'PG' => 'ፓፑዋ ኒው ጊኒ',
+ 'PH' => 'ፊሊፒንስ',
+ 'PK' => 'ፓኪስታን',
+ 'PL' => 'ፖላንድ',
+ 'PM' => 'ቅዱስ ፒዬር እና ሚኩኤሎን',
+ 'PN' => 'ፒትካኢርን',
+ 'PR' => 'ፖርታ ሪኮ',
+ 'PS' => 'የፍልስጤም ግዛት',
+ 'PT' => 'ፖርቱጋል',
+ 'PW' => 'ፓላው',
+ 'PY' => 'ፓራጓይ',
+ 'QA' => 'ኳታር',
+ 'QO' => 'ወጣ ያለ ኦሽኒያ',
+ 'RE' => 'ሪዩኒየን',
+ 'RO' => 'ሮሜኒያ',
+ 'RU' => 'ራሺያ',
+ 'RW' => 'ሩዋንዳ',
+ 'SA' => 'ሳውድአረቢያ',
+ 'SB' => 'ሰሎሞን ደሴት',
+ 'SC' => 'ሲሼልስ',
+ 'SD' => 'ሱዳን',
+ 'SE' => 'ስዊድን',
+ 'SG' => 'ሲንጋፖር',
+ 'SH' => 'ሴንት ሄለና',
+ 'SI' => 'ስሎቬኒያ',
+ 'SJ' => 'የስቫልባርድ እና ዣን ማየን ደሴቶች',
+ 'SK' => 'ስሎቫኪያ',
+ 'SL' => 'ሴራሊዮን',
+ 'SM' => 'ሳን ማሪኖ',
+ 'SN' => 'ሴኔጋል',
+ 'SO' => 'ሱማሌ',
+ 'SR' => 'ሱሪናም',
+ 'ST' => 'ሳኦ ቶሜ እና ፕሪንሲፔ',
+ 'SV' => 'ኤል ሳልቫዶር',
+ 'SY' => 'ሲሪያ',
+ 'SZ' => 'ሱዋዚላንድ',
+ 'TC' => 'የቱርኮችና የካኢኮስ ደሴቶች',
+ 'TD' => 'ቻድ',
+ 'TF' => 'የፈረንሳይ ደቡባዊ ግዛቶች',
+ 'TG' => 'ቶጐ',
+ 'TH' => 'ታይላንድ',
+ 'TJ' => 'ታጃኪስታን',
+ 'TK' => 'ቶክላው',
+ 'TL' => 'ምስራቅ ቲሞር',
+ 'TM' => 'ቱርክሜኒስታን',
+ 'TN' => 'ቱኒዚያ',
+ 'TO' => 'ቶንጋ',
+ 'TR' => 'ቱርክ',
+ 'TT' => 'ትሪኒዳድ እና ቶባጎ',
+ 'TV' => 'ቱቫሉ',
+ 'TW' => 'ታይዋን',
+ 'TZ' => 'ታንዛኒያ',
+ 'UA' => 'ዩክሬን',
+ 'UG' => 'ዩጋንዳ',
+ 'UM' => 'የአሜሪካ ራቅ ያሉ አናሳ ደሴቶች',
+ 'US' => 'አሜሪካ',
+ 'UY' => 'ኡራጓይ',
+ 'UZ' => 'ዩዝበኪስታን',
+ 'VA' => 'ቫቲካን',
+ 'VC' => 'ቅዱስ ቪንሴንት እና ግሬናዲንስ',
+ 'VE' => 'ቬንዙዌላ',
+ 'VG' => 'የእንግሊዝ ድንግል ደሴቶች',
+ 'VI' => 'የአሜሪካ ቨርጂን ደሴቶች',
+ 'VN' => 'ቬትናም',
+ 'VU' => 'ቫኑአቱ',
+ 'WF' => 'ዋሊስ እና ፉቱና ደሴቶች',
+ 'WS' => 'ሳሞአ',
+ 'YE' => 'የመን',
+ 'YT' => 'ሜይኦቴ',
+ 'ZA' => 'ደቡብ አፍሪካ',
+ 'ZM' => 'ዛምቢያ',
+ 'ZW' => 'ዚምቧቤ',
+);
diff --git a/MLEB/cldr/CldrNames/CldrNamesTn.php b/MLEB/cldr/CldrNames/CldrNamesTn.php
new file mode 100644
index 00000000..9355a5f8
--- /dev/null
+++ b/MLEB/cldr/CldrNames/CldrNamesTn.php
@@ -0,0 +1,83 @@
+<?php
+
+$languageNames = array(
+ 'af' => 'Seburu',
+ 'am' => 'Amhariki',
+ 'ar' => 'Arabic',
+ 'az' => 'Azerbaijani',
+ 'be' => 'Belarusian',
+ 'bg' => 'Bulgarian',
+ 'bn' => 'Bengali',
+ 'bs' => 'SeBosnia',
+ 'ca' => 'Catalan',
+ 'cs' => 'Se Czeck',
+ 'cy' => 'Welsh',
+ 'da' => 'Danish',
+ 'de' => 'German',
+ 'el' => 'SeGerika',
+ 'en' => 'Sekgoa',
+ 'eo' => 'Esperanto',
+ 'es' => 'Spanish',
+ 'et' => 'Estonian',
+ 'eu' => 'Basque',
+ 'fa' => 'Mo/SePerishia',
+ 'fi' => 'Se-Finland',
+ 'fil' => 'Tagalog',
+ 'fo' => 'Faroese',
+ 'fr' => 'Se Fora',
+ 'fy' => 'Frisian',
+ 'ga' => 'Irish',
+ 'gd' => 'Scots Gaelic',
+ 'gl' => 'Galician',
+ 'gu' => 'Gujarati',
+ 'he' => 'Se heberu',
+ 'hi' => 'Hindi',
+ 'hr' => 'Croatian',
+ 'hu' => 'Hungarian',
+ 'ia' => 'Interlingua',
+ 'id' => 'Indonesian',
+ 'is' => 'Icelandic',
+ 'it' => 'Se Italiano',
+ 'ja' => 'Se Japan',
+ 'jv' => 'Javanese',
+ 'ka' => 'Mo/SeJojia',
+ 'kn' => 'Kannada',
+ 'ko' => 'Se Korea',
+ 'la' => 'Latin',
+ 'lt' => 'Lithuanian',
+ 'lv' => 'Latvian',
+ 'mk' => 'Macedonian',
+ 'ml' => 'Malayalam',
+ 'mr' => 'Marathi',
+ 'ms' => 'Malay',
+ 'mt' => 'Maltese',
+ 'ne' => 'Nepali',
+ 'nl' => 'Se Dutch',
+ 'no' => 'Puo ya kwa Norway',
+ 'oc' => 'Occitan',
+ 'pa' => 'Punjabi',
+ 'pl' => 'Se Poland',
+ 'pt' => 'Se Potoketsi',
+ 'ro' => 'Se Roma',
+ 'ru' => 'Russian',
+ 'sk' => 'Slovak',
+ 'sl' => 'Slovenian',
+ 'sq' => 'Albanian',
+ 'sr' => 'Serbian',
+ 'su' => 'Mo/SeSundane',
+ 'sv' => 'Swedish',
+ 'sw' => 'Swahili',
+ 'ta' => 'Tamil',
+ 'te' => 'Telugu',
+ 'th' => 'Thai',
+ 'ti' => 'Tigrinya',
+ 'tlh' => 'Klingon',
+ 'tn' => 'Setswana',
+ 'tr' => 'Turkish',
+ 'uk' => 'Ukrainian',
+ 'ur' => 'Urdu',
+ 'uz' => 'Uzbek',
+ 'vi' => 'Vietnamese',
+ 'xh' => 'IsiXhosa',
+ 'zu' => 'IsiZulu',
+);
diff --git a/MLEB/cldr/CldrNames/CldrNamesTo.php b/MLEB/cldr/CldrNames/CldrNamesTo.php
new file mode 100644
index 00000000..1576c4a5
--- /dev/null
+++ b/MLEB/cldr/CldrNames/CldrNamesTo.php
@@ -0,0 +1,944 @@
+<?php
+
+$languageNames = array(
+ 'aa' => 'lea fakaʻafāla',
+ 'ab' => 'lea fakaʻapakasia',
+ 'ace' => 'lea fakaʻatisē',
+ 'ach' => 'lea fakaʻakoli',
+ 'ada' => 'lea fakaʻatangimē',
+ 'ady' => 'lea fakaʻatikē',
+ 'ae' => 'lea fakaʻavesitani',
+ 'aeb' => 'lea fakaʻalepea-tunīsia',
+ 'af' => 'lea fakaʻafilikana',
+ 'afh' => 'lea fakaʻafilihili',
+ 'agq' => 'lea fakaʻakihemi',
+ 'ain' => 'lea fakaʻainu',
+ 'ak' => 'lea fakaʻakani',
+ 'akk' => 'lea fakaʻakatia',
+ 'akz' => 'lea fakaʻalapama',
+ 'ale' => 'lea fakaʻaleuti',
+ 'aln' => 'lea fakaʻalapēnia-keki',
+ 'alt' => 'lea fakaʻalitai-tonga',
+ 'am' => 'lea fakaʻameliki',
+ 'an' => 'lea fakaʻalakoni',
+ 'ang' => 'lea fakapālangi-motuʻa',
+ 'anp' => 'lea fakaʻangika',
+ 'ar' => 'lea fakaʻalepea',
+ 'ar-001' => 'lea fakaʻalepea (māmani)',
+ 'arc' => 'lea fakaʻalāmiti',
+ 'arn' => 'lea fakamapuse',
+ 'aro' => 'lea fakaʻalaona',
+ 'arp' => 'lea fakaʻalapaho',
+ 'arq' => 'lea fakaʻalepea-ʻaisilia',
+ 'arw' => 'lea fakaʻalauaki',
+ 'ary' => 'lea fakaʻalepea-moloko',
+ 'arz' => 'lea fakaʻalepea-ʻisipite',
+ 'as' => 'lea fakaʻasamia',
+ 'asa' => 'lea fakaʻasu',
+ 'ase' => 'lea fakaʻilonga-ʻamelika',
+ 'ast' => 'lea fakaʻasitūlia',
+ 'av' => 'lea fakaʻavaliki',
+ 'avk' => 'lea fakakotava',
+ 'awa' => 'lea fakaʻauati',
+ 'ay' => 'lea fakaʻaimala',
+ 'az' => 'lea fakaʻasapaisani',
+ 'azb' => 'lea fakaʻasapaisani-tonga',
+ 'ba' => 'lea fakapasikili',
+ 'bal' => 'lea fakapalusi',
+ 'ban' => 'lea fakapali',
+ 'bar' => 'lea fakapavālia',
+ 'bas' => 'lea fakapasaʻa',
+ 'bax' => 'lea fakapamuni',
+ 'bbc' => 'lea fakatōpe-pēteki',
+ 'bbj' => 'lea fakakomala',
+ 'be' => 'lea fakapelalusi',
+ 'bej' => 'lea fakapesa',
+ 'bem' => 'lea fakapēmipa',
+ 'bew' => 'lea fakapetavi',
+ 'bez' => 'lea fakapena',
+ 'bfd' => 'lea fakapafuti',
+ 'bfq' => 'lea fakapataka',
+ 'bg' => 'lea fakapulukalia',
+ 'bho' => 'lea fakaposipuli',
+ 'bi' => 'lea fakapisilama',
+ 'bik' => 'lea fakapikoli',
+ 'bin' => 'lea fakapini',
+ 'bjn' => 'lea fakapanisali',
+ 'bkm' => 'lea fakakome',
+ 'bla' => 'lea fakasikesikā',
+ 'bm' => 'lea fakapamipala',
+ 'bn' => 'lea fakapengikali',
+ 'bo' => 'lea fakatipeti',
+ 'bpy' => 'lea fakapisinupilia',
+ 'bqi' => 'lea fakapakitiāli',
+ 'br' => 'lea fakapeletoni',
+ 'bra' => 'lea fakapalai',
+ 'brh' => 'lea fakapalahui',
+ 'brx' => 'lea fakapōto',
+ 'bs' => 'lea fakaposinia',
+ 'bss' => 'lea fakaʻakōse',
+ 'bua' => 'lea fakapuliati',
+ 'bug' => 'lea fakapukisi',
+ 'bum' => 'lea fakapulu',
+ 'byn' => 'lea fakapilini',
+ 'byv' => 'lea fakametūmipa',
+ 'ca' => 'lea fakakatalani',
+ 'cad' => 'lea fakakato',
+ 'car' => 'lea fakakalipa',
+ 'cay' => 'lea fakakaiuka',
+ 'cch' => 'lea fakaʻatisami',
+ 'ce' => 'lea fakasese',
+ 'ceb' => 'lea fakasepuano',
+ 'cgg' => 'lea fakakika',
+ 'ch' => 'lea fakakamolo',
+ 'chb' => 'lea fakasīpisa',
+ 'chg' => 'lea fakasakatāi',
+ 'chk' => 'lea fakatūke',
+ 'chm' => 'lea fakamalī',
+ 'chn' => 'lea fakasinuki-takote',
+ 'cho' => 'lea fakasokitau',
+ 'chp' => 'lea fakasipeuiani',
+ 'chr' => 'lea fakaselokī',
+ 'chy' => 'lea fakaseiene',
+ 'ckb' => 'lea fakakūtisi-solani',
+ 'co' => 'lea fakakōsika',
+ 'cop' => 'lea fakakopitika',
+ 'cps' => 'lea fakakapiseno',
+ 'cr' => 'lea fakakelī',
+ 'crh' => 'lea fakatoake-kilimea',
+ 'cs' => 'lea fakaseki',
+ 'csb' => 'lea fakakasiupia',
+ 'cu' => 'lea fakasilavia-fakasiasi',
+ 'cv' => 'lea fakasuvasa',
+ 'cy' => 'lea fakauēlesi',
+ 'da' => 'lea fakatenimaʻake',
+ 'dak' => 'lea fakatakota',
+ 'dar' => 'lea fakatalakuā',
+ 'dav' => 'lea fakataita',
+ 'de' => 'lea fakasiamane',
+ 'de-at' => 'lea fakasiamane-ʻaositulia',
+ 'de-ch' => 'lea fakasiamane-hake-suisilani',
+ 'del' => 'lea fakatelauale',
+ 'den' => 'lea fakasilave',
+ 'dgr' => 'lea fakatōkelipi',
+ 'din' => 'lea fakatingikā',
+ 'dje' => 'lea fakatisāma',
+ 'doi' => 'lea fakatokili',
+ 'dsb' => 'lea fakasōpia-hifo',
+ 'dtp' => 'lea fakatusuni-loloto',
+ 'dua' => 'lea fakatuala',
+ 'dum' => 'lea fakahōlani-lotoloto',
+ 'dv' => 'lea fakativehi',
+ 'dyo' => 'lea fakaiola-fonī',
+ 'dyu' => 'lea fakatiula',
+ 'dz' => 'lea fakaputeni',
+ 'dzg' => 'lea fakatasaka',
+ 'ebu' => 'lea fakaʻemipū',
+ 'ee' => 'lea fakaʻeue',
+ 'efi' => 'lea fakaʻefiki',
+ 'egl' => 'lea fakaʻemilia',
+ 'egy' => 'lea fakaʻisipitemuʻa',
+ 'eka' => 'lea fakaʻekaiuki',
+ 'el' => 'lea fakakalisi',
+ 'elx' => 'lea fakaʻelamite',
+ 'en' => 'lea fakapālangi',
+ 'en-au' => 'lea fakapālangi-ʻaositelēlia',
+ 'en-ca' => 'lea fakapālangi-kānata',
+ 'en-gb' => 'lea fakapilitānia',
+ 'en-us' => 'lea fakapālangi-ʻamelika',
+ 'enm' => 'lea fakapālangi-lotoloto',
+ 'eo' => 'lea fakaʻesipulanito',
+ 'es' => 'lea fakasipēnisi',
+ 'es-419' => 'lea fakasipēnisi lātini-ʻamelika',
+ 'es-es' => 'lea fakasipēnisi-‘iulope',
+ 'es-mx' => 'lea fakasipēnisi-mekisikou',
+ 'esu' => 'lea fakaiūpiki-loloto',
+ 'et' => 'lea fakaʻesitōnia',
+ 'eu' => 'lea fakapāsiki',
+ 'ewo' => 'lea fakaʻeuōnito',
+ 'ext' => 'lea fakaʻekisitematula',
+ 'fa' => 'lea fakapēsia',
+ 'fan' => 'lea fakafangi',
+ 'fat' => 'lea fakafanitē',
+ 'ff' => 'lea fakafulā',
+ 'fi' => 'lea fakafinilani',
+ 'fil' => 'lea fakafilipaini',
+ 'fit' => 'lea fakafinilani-tōnetale',
+ 'fj' => 'lea fakafisi',
+ 'fo' => 'lea fakafaloe',
+ 'fon' => 'lea fakafōngi',
+ 'fr' => 'lea fakafalanisē',
+ 'fr-ca' => 'lea fakafalanisē-kānata',
+ 'fr-ch' => 'lea fakafalanisē-suisilani',
+ 'frc' => 'lea fakafalanisē-kasuni',
+ 'frm' => 'lea fakafalanisē-lotoloto',
+ 'fro' => 'lea fakafalanisē-motuʻa',
+ 'frp' => 'lea fakaʻāpitano',
+ 'frr' => 'lea fakafilisia-tokelau',
+ 'frs' => 'lea fakafilisia-hahake',
+ 'fur' => 'lea fakafulilāni',
+ 'fy' => 'lea fakafilisia-hihifo',
+ 'ga' => 'lea fakaʻaelani',
+ 'gaa' => 'lea fakakā',
+ 'gag' => 'lea fakakakausi',
+ 'gan' => 'lea fakasiaina-kani',
+ 'gay' => 'lea fakakaio',
+ 'gba' => 'lea fakakapaia',
+ 'gbz' => 'lea fakateli-soloasitelia',
+ 'gd' => 'lea fakakaeliki',
+ 'gez' => 'lea fakasiʻisi',
+ 'gil' => 'lea fakakilipasi',
+ 'gl' => 'lea fakakalisia',
+ 'glk' => 'lea fakakilaki',
+ 'gmh' => 'lea fakasiamane-hake-lotoloto',
+ 'gn' => 'lea fakakualani',
+ 'goh' => 'lea fakasiamane-hake-motuʻa',
+ 'gom' => 'lea fakakonikanī-koani',
+ 'gon' => 'lea fakakonitī',
+ 'gor' => 'lea fakakolonitalo',
+ 'got' => 'lea fakakotika',
+ 'grb' => 'lea fakakēpo',
+ 'grc' => 'lea fakakalisimuʻa',
+ 'gsw' => 'lea fakasiamane-suisilani',
+ 'gu' => 'lea fakakutalati',
+ 'guc' => 'lea fakaʻuaiū',
+ 'gur' => 'lea fakafalefale',
+ 'guz' => 'lea fakakusī',
+ 'gv' => 'lea fakamangikī',
+ 'gwi' => 'lea fakaʻuīsini',
+ 'ha' => 'lea fakahausa',
+ 'hai' => 'lea fakahaita',
+ 'hak' => 'lea fakasiaina-haka',
+ 'haw' => 'lea fakahauaiʻi',
+ 'he' => 'lea fakahepelū',
+ 'hi' => 'lea fakahinitī',
+ 'hif' => 'lea fakahihitī-fisi',
+ 'hil' => 'lea fakahilikainoni',
+ 'hit' => 'lea fakahitite',
+ 'hmn' => 'lea fakamōngi',
+ 'ho' => 'lea fakahili-motu',
+ 'hr' => 'lea fakakuloisia',
+ 'hsb' => 'lea fakasōpia-hake',
+ 'hsn' => 'lea fakasiaina-siangi',
+ 'ht' => 'lea fakahaiti',
+ 'hu' => 'lea fakahungakalia',
+ 'hup' => 'lea fakahupa',
+ 'hy' => 'lea fakaʻāmenia',
+ 'hz' => 'lea fakahelelo',
+ 'ia' => 'lea fakavahaʻalea',
+ 'iba' => 'lea fakaʻipani',
+ 'ibb' => 'lea fakaʻipipio',
+ 'id' => 'lea fakaʻinitōnesia',
+ 'ie' => 'lea fakavahaʻalingikē',
+ 'ig' => 'lea fakaʻikipō',
+ 'ii' => 'lea fakasisiuani-ī',
+ 'ik' => 'lea fakaʻinupiaki',
+ 'ilo' => 'lea fakaʻiloko',
+ 'inh' => 'lea fakaʻingusi',
+ 'io' => 'lea fakaʻito',
+ 'is' => 'lea fakaʻaisilani',
+ 'it' => 'lea fakaʻītali',
+ 'iu' => 'lea fakaʻinuketituti',
+ 'izh' => 'lea fakaʻingiliani',
+ 'ja' => 'lea fakasiapani',
+ 'jam' => 'lea fakapālangi-samaika',
+ 'jbo' => 'lea fakalosipani',
+ 'jgo' => 'lea fakanikōmipa',
+ 'jmc' => 'lea fakamasame',
+ 'jpr' => 'lea fakaʻiuteo-pēsia',
+ 'jrb' => 'lea fakaʻiuteo-ʻalepea',
+ 'jut' => 'lea fakaʻiutilani',
+ 'jv' => 'lea fakasava',
+ 'ka' => 'lea fakaseōsia',
+ 'kaa' => 'lea fakakala-kalipaki',
+ 'kab' => 'lea fakakapile',
+ 'kac' => 'lea fakakasini',
+ 'kaj' => 'lea fakasisū',
+ 'kam' => 'lea fakakamipa',
+ 'kaw' => 'lea fakakavi',
+ 'kbd' => 'lea fakakapālitia',
+ 'kbl' => 'lea fakakanēmipu',
+ 'kcg' => 'lea fakatiapi',
+ 'kde' => 'lea fakamakōnite',
+ 'kea' => 'lea fakakapuvelitianu',
+ 'ken' => 'lea fakakeniangi',
+ 'kfo' => 'lea fakakolo',
+ 'kg' => 'lea fakakongikō',
+ 'kgp' => 'lea fakakaingangi',
+ 'kha' => 'lea fakakāsi',
+ 'kho' => 'lea fakakōtani',
+ 'khq' => 'lea fakakoila-sīni',
+ 'khw' => 'lea fakakouali',
+ 'ki' => 'lea fakakikuiu',
+ 'kiu' => 'lea fakakilimanisikī',
+ 'kj' => 'lea fakakuaniama',
+ 'kk' => 'lea fakakasaki',
+ 'kkj' => 'lea fakakako',
+ 'kl' => 'lea fakakalaʻalisuti',
+ 'kln' => 'lea fakakalenisini',
+ 'km' => 'lea fakakamipōtia',
+ 'kmb' => 'lea fakakimipūnitu',
+ 'kn' => 'lea fakakanata',
+ 'ko' => 'lea fakakōlea',
+ 'koi' => 'lea fakakomi-pelemiaki',
+ 'kok' => 'lea fakakonikanī',
+ 'kos' => 'lea fakakosilae',
+ 'kpe' => 'lea fakakepele',
+ 'kr' => 'lea fakakanuli',
+ 'krc' => 'lea fakakalate-palakili',
+ 'kri' => 'lea fakakilio',
+ 'krj' => 'lea fakakinaraiā',
+ 'krl' => 'lea fakakalelia',
+ 'kru' => 'lea fakakuluki',
+ 'ks' => 'lea fakakāsimila',
+ 'ksb' => 'lea fakasiamipala',
+ 'ksf' => 'lea fakapafia',
+ 'ksh' => 'lea fakakolongia',
+ 'ku' => 'lea fakakulitī',
+ 'kum' => 'lea fakakumiki',
+ 'kut' => 'lea fakakutenai',
+ 'kv' => 'lea fakakomi',
+ 'kw' => 'lea fakakoniuali',
+ 'ky' => 'lea fakakīsisi',
+ 'la' => 'lea fakalatina',
+ 'lad' => 'lea fakalatino',
+ 'lag' => 'lea fakalangi',
+ 'lah' => 'lea fakalānita',
+ 'lam' => 'lea fakalamipā',
+ 'lb' => 'lea fakalakisimipeki',
+ 'lez' => 'lea fakalesikia',
+ 'lfn' => 'lea fakakavakava-foʻou',
+ 'lg' => 'lea fakakanita',
+ 'li' => 'lea fakalimipūliki',
+ 'lij' => 'lea fakalikulia',
+ 'liv' => 'lea fakalivonia',
+ 'lkt' => 'lea fakalakota',
+ 'lmo' => 'lea fakalomipāti',
+ 'ln' => 'lea lingikala',
+ 'lo' => 'lea fakalau',
+ 'lol' => 'lea fakamongikō',
+ 'loz' => 'lea fakalosi',
+ 'lt' => 'lea fakalituania',
+ 'ltg' => 'lea fakalatakale',
+ 'lu' => 'lea fakalupa-katanga',
+ 'lua' => 'lea fakalupa-lulua',
+ 'lui' => 'lea fakaluiseno',
+ 'lun' => 'lea fakalunitā',
+ 'luo' => 'lea fakaluo',
+ 'lus' => 'lea fakamiso',
+ 'luy' => 'lea fakaluīa',
+ 'lv' => 'lea fakalativia',
+ 'lzh' => 'lea fakasiaina-faʻutohi',
+ 'lzz' => 'lea fakalasu',
+ 'mad' => 'lea fakamatula',
+ 'maf' => 'lea fakamafa',
+ 'mag' => 'lea fakamakahi',
+ 'mai' => 'lea fakamaitili',
+ 'mak' => 'lea fakamakasali',
+ 'man' => 'lea fakamanitīngiko',
+ 'mas' => 'lea fakamasai',
+ 'mde' => 'lea fakamapa',
+ 'mdf' => 'lea fakamokisiā',
+ 'mdr' => 'lea fakamanetali',
+ 'men' => 'lea fakamenetī',
+ 'mer' => 'lea fakamelu',
+ 'mfe' => 'lea fakamolisieni',
+ 'mg' => 'lea fakamalakasi',
+ 'mga' => 'lea fakaʻaelani-lotoloto',
+ 'mgh' => 'lea fakamakūa-meʻeto',
+ 'mgo' => 'lea fakameta',
+ 'mh' => 'lea fakamāsolo',
+ 'mi' => 'lea fakamauli',
+ 'mic' => 'lea fakamikemaki',
+ 'min' => 'lea fakaminangikapau',
+ 'mk' => 'lea fakamasitōnia',
+ 'ml' => 'lea fakaʻinitia-malāialami',
+ 'mn' => 'lea fakamongokōlia',
+ 'mnc' => 'lea fakamanisū',
+ 'mni' => 'lea fakamanipuli',
+ 'moh' => 'lea fakamohauki',
+ 'mos' => 'lea fakamosi',
+ 'mr' => 'lea fakamalati',
+ 'mrj' => 'lea fakamali-hihifo',
+ 'ms' => 'lea fakamalei',
+ 'mt' => 'lea fakamolota',
+ 'mua' => 'lea fakamunitangi',
+ 'mul' => 'lea tuifio',
+ 'mus' => 'lea fakakileki',
+ 'mwl' => 'lea fakamilanitēsi',
+ 'mwr' => 'lea fakamaliwali',
+ 'mwv' => 'lea fakamenitauai',
+ 'my' => 'lea fakapema',
+ 'mye' => 'lea fakamiene',
+ 'myv' => 'lea fakaʻelisia',
+ 'mzn' => 'lea fakamasanitelani',
+ 'na' => 'lea fakanaulu',
+ 'nan' => 'lea fakasiaina-mininani',
+ 'nap' => 'lea fakanapoletano',
+ 'naq' => 'lea fakanama',
+ 'nb' => 'lea fakanouaē-pokimali',
+ 'nd' => 'lea fakanetepele-tokelau',
+ 'nds' => 'lea fakasiamane-hifo',
+ 'ne' => 'lea fakanepali',
+ 'new' => 'lea fakaneuali',
+ 'ng' => 'lea fakanetongikā',
+ 'nia' => 'lea fakaniasi',
+ 'niu' => 'lea fakaniuē',
+ 'njo' => 'lea fakaʻaonasa',
+ 'nl' => 'lea fakahōlani',
+ 'nl-be' => 'lea fakahōlani-pelesiume',
+ 'nmg' => 'lea fakakuasio',
+ 'nn' => 'lea fakanoauē-ninosiki',
+ 'nnh' => 'lea fakangiemipōni',
+ 'no' => 'lea fakanouē',
+ 'nog' => 'lea fakanokai',
+ 'non' => 'lea fakanoauē-motuʻa',
+ 'nov' => 'lea fakanoviale',
+ 'nqo' => 'lea fakanikō',
+ 'nr' => 'lea fakanetepele-tonga',
+ 'nso' => 'lea fakasoto-tokelau',
+ 'nus' => 'lea fakanueli',
+ 'nv' => 'lea fakanavaho',
+ 'nwc' => 'lea fakaneuali-motuʻa',
+ 'ny' => 'lea fakanianisa',
+ 'nym' => 'lea fakaniamiuesi',
+ 'nyn' => 'lea fakanianikole',
+ 'nyo' => 'lea fakaniolo',
+ 'nzi' => 'lea fakanesima',
+ 'oc' => 'lea fakaʻokitane',
+ 'oj' => 'lea fakaʻosipiuā',
+ 'om' => 'lea fakaʻolomo',
+ 'or' => 'lea fakaʻinitia-ʻolāea',
+ 'os' => 'lea fakaʻosetiki',
+ 'osa' => 'lea fakaʻosēse',
+ 'ota' => 'lea fakatoake-ʻotomani',
+ 'pa' => 'lea fakapūnusapi',
+ 'pag' => 'lea fakapangasinani',
+ 'pal' => 'lea fakapālavi',
+ 'pam' => 'lea fakapamipanga',
+ 'pap' => 'lea fakapapiamēnito',
+ 'pau' => 'lea fakapalau',
+ 'pcd' => 'lea fakapikāti',
+ 'pdc' => 'lea fakasiamane-penisilivania',
+ 'pdt' => 'lea fakasiamane-lafalafa',
+ 'peo' => 'lea fakapēsia-motuʻa',
+ 'pfl' => 'lea fakasiamane-palatine',
+ 'phn' => 'lea fakafoinikia',
+ 'pi' => 'lea fakapāli',
+ 'pl' => 'lea fakapōlani',
+ 'pms' => 'lea fakapiemonite',
+ 'pnt' => 'lea fakaponitiki',
+ 'pon' => 'lea fakaponapē',
+ 'prg' => 'lea fakapulūsia',
+ 'pro' => 'lea fakapolovenisi-motuʻa',
+ 'ps' => 'lea fakapasitō',
+ 'pt' => 'lea fakapotukali',
+ 'pt-br' => 'lea fakapotukali-palāsili',
+ 'pt-pt' => 'lea fakapotukali-ʻiulope',
+ 'qu' => 'lea fakakuetisa',
+ 'quc' => 'lea fakakīsē',
+ 'qug' => 'lea fakakuitisa-simipolaso',
+ 'raj' => 'lea fakalasasitani',
+ 'rap' => 'lea fakalapanui',
+ 'rar' => 'lea fakalalotonga',
+ 'rgn' => 'lea fakaromaniolo',
+ 'rif' => 'lea fakalifi',
+ 'rm' => 'lea fakalaito-lomēnia',
+ 'rn' => 'lea fakaluaniti',
+ 'ro' => 'lea fakalōmenia',
+ 'ro-md' => 'lea fakamolitāvia',
+ 'rof' => 'lea fakalomipō',
+ 'rom' => 'lea fakalomani',
+ 'rtm' => 'lea fakalotuma',
+ 'ru' => 'lea fakalūsia',
+ 'rue' => 'lea fakalusini',
+ 'rug' => 'lea fakaloviana',
+ 'rup' => 'lea fakaʻalomania',
+ 'rw' => 'lea fakakiniāuanita',
+ 'rwk' => 'lea fakaluā',
+ 'sa' => 'lea fakasanisukuliti',
+ 'sad' => 'lea fakasanitaue',
+ 'sah' => 'lea fakasaka',
+ 'sam' => 'lea fakasamalitani-ʻalāmiti',
+ 'saq' => 'lea fakasamipulu',
+ 'sas' => 'lea fakasasaki',
+ 'sat' => 'lea fakasanitali',
+ 'saz' => 'lea fakasaulasitilā',
+ 'sba' => 'lea fakangāmipai',
+ 'sbp' => 'lea fakasangu',
+ 'sc' => 'lea fakasaletīnia',
+ 'scn' => 'lea fakasisīlia',
+ 'sco' => 'lea fakasikotilani',
+ 'sd' => 'lea fakasīniti',
+ 'sdc' => 'lea fakasaletīnia-sasalesu',
+ 'se' => 'lea fakasami-tokelau',
+ 'see' => 'lea fakaseneka',
+ 'seh' => 'lea fakasena',
+ 'sei' => 'lea fakaseli',
+ 'sel' => 'lea fakaselikupi',
+ 'ses' => 'lea fakakoilapolo-seni',
+ 'sg' => 'lea fakasangikō',
+ 'sga' => 'lea fakaʻaelani-motuʻa',
+ 'sgs' => 'lea fakasamositia',
+ 'sh' => 'lea fakakuloisia-sēpia',
+ 'shi' => 'lea fakataselihiti',
+ 'shn' => 'lea fakasiani',
+ 'shu' => 'lea fakaʻalepea-sāti',
+ 'si' => 'lea fakasingihala',
+ 'sid' => 'lea fakasitamo',
+ 'sk' => 'lea fakasolāvaki',
+ 'sl' => 'lea fakasolovenia',
+ 'sli' => 'lea fakasilesia-hifo',
+ 'sly' => 'lea fakaselaiā',
+ 'sm' => 'lea fakahaʻamoa',
+ 'sma' => 'lea fakasami-tonga',
+ 'smj' => 'lea fakasami-lule',
+ 'smn' => 'lea fakasami-ʻinali',
+ 'sms' => 'lea fakasami-sikolita',
+ 'sn' => 'lea fakasiona',
+ 'snk' => 'lea fakasoninekē',
+ 'so' => 'lea fakasomali',
+ 'sog' => 'lea fakasokitiana',
+ 'sq' => 'lea fakaʻalapēnia',
+ 'sr' => 'lea fakasēpia',
+ 'srn' => 'lea fakasuranane-tongikō',
+ 'srr' => 'lea fakasēlēle',
+ 'ss' => 'lea fakasuasilani',
+ 'ssy' => 'lea fakasaho',
+ 'st' => 'lea fakasoto-tonga',
+ 'stq' => 'lea fakafilisia-satēlani',
+ 'su' => 'lea fakasunitā',
+ 'suk' => 'lea fakasukuma',
+ 'sus' => 'lea fakasusū',
+ 'sux' => 'lea fakasumelia',
+ 'sv' => 'lea fakasuēteni',
+ 'sw' => 'lea fakasuahili',
+ 'swb' => 'lea fakakomolo',
+ 'swc' => 'lea fakasuahili-kongikō',
+ 'syc' => 'lea fakasuliāiā-muʻa',
+ 'syr' => 'lea fakasuliāiā',
+ 'szl' => 'lea fakasilesia',
+ 'ta' => 'lea fakatamili',
+ 'tcy' => 'lea fakatulu',
+ 'te' => 'lea fakaʻinitia-teluku',
+ 'tem' => 'lea fakatimenē',
+ 'teo' => 'lea fakateso',
+ 'ter' => 'lea fakateleno',
+ 'tet' => 'lea fakatetumu',
+ 'tg' => 'lea fakatāsiki',
+ 'th' => 'lea fakatailani',
+ 'ti' => 'lea fakatikilinia',
+ 'tig' => 'lea fakatikilīnia',
+ 'tiv' => 'lea fakativi',
+ 'tk' => 'lea fakatēkimeni',
+ 'tkl' => 'lea fakatokelau',
+ 'tkr' => 'lea fakasākuli',
+ 'tl' => 'lea fakatakāloka',
+ 'tlh' => 'lea fakakilingoni',
+ 'tli' => 'lea fakatilingikīte',
+ 'tly' => 'lea fakatalisi',
+ 'tmh' => 'lea fakatamasieki',
+ 'tn' => 'lea suana',
+ 'to' => 'lea fakatonga',
+ 'tog' => 'lea fakaniasa-tonga',
+ 'tpi' => 'lea fakatoki-pisini',
+ 'tr' => 'lea fakatoake',
+ 'tru' => 'lea fakatuloio',
+ 'trv' => 'lea fakataloko',
+ 'ts' => 'lea fakatisonga',
+ 'tsd' => 'lea fakasakōnia',
+ 'tsi' => 'lea fakatisīmisiani',
+ 'tt' => 'lea fakatatale',
+ 'ttt' => 'lea fakatati-moselemi',
+ 'tum' => 'lea fakatumepuka',
+ 'tvl' => 'lea fakatūvalu',
+ 'tw' => 'lea fakatusuī',
+ 'twq' => 'lea fakatasauaki',
+ 'ty' => 'lea fakatahiti',
+ 'tyv' => 'lea fakatuvīnia',
+ 'tzm' => 'lea fakatamasaiti-ʻatilasi-loloto',
+ 'udm' => 'lea fakaʻutimuliti',
+ 'ug' => 'lea fakaʻuikūli',
+ 'uga' => 'lea fakaʻūkaliti',
+ 'uk' => 'lea fakaʻūkalaʻine',
+ 'umb' => 'lea fakaʻumipūnitu',
+ 'und' => 'lea taʻeʻiloa',
+ 'ur' => 'lea fakaʻūtū',
+ 'uz' => 'lea fakaʻusipeki',
+ 'vai' => 'lea fakavai',
+ 've' => 'lea fakavenitā',
+ 'vec' => 'lea fakavenēsia',
+ 'vep' => 'lea fakavepisi',
+ 'vi' => 'lea fakavietinami',
+ 'vls' => 'lea fakavelamingi-hihifo',
+ 'vmf' => 'lea fakafalanikoni-loloto',
+ 'vo' => 'lea fakavolapiki',
+ 'vot' => 'lea fakavotiki',
+ 'vro' => 'lea fakavōlo',
+ 'vun' => 'lea fakavūniso',
+ 'wa' => 'lea fakaʻualonia',
+ 'wae' => 'lea fakaʻualiseli',
+ 'wal' => 'lea fakaʻuolaita',
+ 'war' => 'lea fakaʻualai',
+ 'was' => 'lea fakaʻuasiō',
+ 'wo' => 'lea fakaʻuolofo',
+ 'wuu' => 'lea fakasiaina-uū',
+ 'xal' => 'lea fakakalimiki',
+ 'xh' => 'lea fakatōsa',
+ 'xmf' => 'lea fakamingilelia',
+ 'xog' => 'lea fakasoka',
+ 'yao' => 'lea fakaʻiao',
+ 'yap' => 'lea fakaʻiapi',
+ 'yav' => 'lea fakaʻiangipeni',
+ 'ybb' => 'lea fakaʻiēmipa',
+ 'yi' => 'lea fakaītisi',
+ 'yo' => 'lea fakaʻiōlupa',
+ 'yrl' => 'lea fakaneʻēngatū',
+ 'yue' => 'lea fakakuangitongi',
+ 'za' => 'lea fakasuangi',
+ 'zap' => 'lea fakasapoteki',
+ 'zbl' => 'lea fakaʻilonga-pilisi',
+ 'zea' => 'lea fakasēlani',
+ 'zen' => 'lea fakasenaka',
+ 'zgh' => 'lea fakatamasaiti-moloko',
+ 'zh' => 'lea fakasiaina',
+ 'zh-hans' => 'lea fakasiaina-fakafaingofua',
+ 'zh-hant' => 'lea fakasiaina-tukufakaholo',
+ 'zu' => 'lea fakasulu',
+ 'zun' => 'lea fakasuni',
+ 'zxx' => 'ʻikai ha lea',
+ 'zza' => 'lea fakasāsā',
+);
+
+$currencyNames = array(
+ 'TOP' => 'Paʻanga fakatonga',
+ 'WST' => 'Tala fakahaʻamoa',
+);
+
+$currencySymbols = array(
+ 'TOP' => 'T$',
+ 'WST' => 'WST',
+);
+
+$countryNames = array(
+ 'AC' => 'Motu ʻAsenisini',
+ 'AD' => 'ʻAnitola',
+ 'AE' => 'ʻAlepea Fakatahataha',
+ 'AF' => 'ʻAfikānisitani',
+ 'AG' => 'Anitikua mo Palaputa',
+ 'AI' => 'Anikuila',
+ 'AL' => 'ʻAlipania',
+ 'AM' => 'ʻĀmenia',
+ 'AN' => 'Anitila fakahōlani',
+ 'AO' => 'ʻAngikola',
+ 'AQ' => 'ʻAnitātika',
+ 'AR' => 'ʻAsenitina',
+ 'AS' => 'Haʻamoa ʻAmelika',
+ 'AT' => 'ʻAositulia',
+ 'AU' => 'ʻAositelēlia',
+ 'AW' => 'ʻAlupa',
+ 'AX' => 'ʻOtumotu ʻAlani',
+ 'AZ' => 'ʻAsapaisani',
+ 'BA' => 'Posinia mo Hesikōvina',
+ 'BB' => 'Pāpeitosi',
+ 'BD' => 'Pengilātesi',
+ 'BE' => 'Pelesiume',
+ 'BF' => 'Pekano Faso',
+ 'BG' => 'Pulukalia',
+ 'BH' => 'Paleini',
+ 'BI' => 'Puluniti',
+ 'BJ' => 'Penini',
+ 'BL' => 'Sā Patēlemi',
+ 'BM' => 'Pēmuta',
+ 'BN' => 'Pulunei',
+ 'BO' => 'Polīvia',
+ 'BQ' => 'Kalipiane fakahōlani',
+ 'BR' => 'Palāsili',
+ 'BS' => 'Pahama',
+ 'BT' => 'Pūtani',
+ 'BV' => 'Motu Puveti',
+ 'BW' => 'Potisiuana',
+ 'BY' => 'Pelalusi',
+ 'BZ' => 'Pelise',
+ 'CA' => 'Kānata',
+ 'CC' => 'ʻOtumotu Koko',
+ 'CD' => 'Kongo - Kinisasa',
+ 'CF' => 'Lipapilika ʻAfilika Lotoloto',
+ 'CG' => 'Kongo - Palasavila',
+ 'CH' => 'Suisilani',
+ 'CI' => 'Matafonua ʻAivolī',
+ 'CK' => 'ʻOtumotu Kuki',
+ 'CL' => 'Sili',
+ 'CM' => 'Kameluni',
+ 'CN' => 'Siaina',
+ 'CO' => 'Kolomipia',
+ 'CP' => 'Motu Kilipatoni',
+ 'CR' => 'Kosita Lika',
+ 'CU' => 'Kiupa',
+ 'CV' => 'Muiʻi Vēte',
+ 'CW' => 'Kulasao',
+ 'CX' => 'Motu Kilisimasi',
+ 'CY' => 'Saipalesi',
+ 'CZ' => 'Lipapilika Seki',
+ 'DE' => 'Siamane',
+ 'DG' => 'Tieko Kāsia',
+ 'DJ' => 'Siputi',
+ 'DK' => 'Tenimaʻake',
+ 'DM' => 'Tominika',
+ 'DO' => 'Lipapilika Tominika',
+ 'DZ' => 'ʻAisilia',
+ 'EA' => 'Siuta mo Melila',
+ 'EC' => 'ʻEkuetoa',
+ 'EE' => 'ʻEsitōnia',
+ 'EG' => 'ʻIsipite',
+ 'EH' => 'Sahala fakahihifo',
+ 'ER' => 'ʻElitulia',
+ 'ES' => 'Sipeini',
+ 'ET' => 'ʻĪtiōpia',
+ 'EU' => 'ʻIulope fakatahataha',
+ 'FI' => 'Finilani',
+ 'FJ' => 'Fisi',
+ 'FK' => 'ʻOtumotu Fokulani',
+ 'FM' => 'Mikolonīsia',
+ 'FO' => 'ʻOtumotu Faloe',
+ 'FR' => 'Falanisē',
+ 'GA' => 'Kaponi',
+ 'GB' => 'Pilitānia',
+ 'GD' => 'Kelenatā',
+ 'GE' => 'Seōsia',
+ 'GF' => 'Kuiana fakafalanisē',
+ 'GG' => 'Kuenisī',
+ 'GH' => 'Kana',
+ 'GI' => 'Sipalālitā',
+ 'GL' => 'Kulinilani',
+ 'GM' => 'Kamipia',
+ 'GN' => 'Kini',
+ 'GP' => 'Kuatalupe',
+ 'GQ' => 'ʻEkueta Kini',
+ 'GR' => 'Kalisi',
+ 'GS' => 'ʻOtumotu Seōsia-tonga mo Saniuisi-tonga',
+ 'GT' => 'Kuatamala',
+ 'GU' => 'Kuamu',
+ 'GW' => 'Kini-Pisau',
+ 'GY' => 'Kuiana',
+ 'HK' => 'Hongi Kongi',
+ 'HM' => 'ʻOtumotu Heati mo Makitonali',
+ 'HN' => 'Honitulasi',
+ 'HR' => 'Kuloisia',
+ 'HT' => 'Haiti',
+ 'HU' => 'Hungakalia',
+ 'IC' => 'ʻOtumotu Kaneli',
+ 'ID' => 'ʻInitonēsia',
+ 'IE' => 'ʻAealani',
+ 'IL' => 'ʻIsileli',
+ 'IM' => 'Motu Mani',
+ 'IN' => 'ʻInitia',
+ 'IO' => 'Potu fonua moana ʻInitia fakapilitānia',
+ 'IQ' => 'ʻIlaaki',
+ 'IR' => 'ʻIlaani',
+ 'IS' => 'ʻAisilani',
+ 'IT' => 'ʻĪtali',
+ 'JE' => 'Selusī',
+ 'JM' => 'Samaika',
+ 'JO' => 'Soatane',
+ 'JP' => 'Siapani',
+ 'KE' => 'Keniā',
+ 'KG' => 'Kīkisitani',
+ 'KH' => 'Kamipōtia',
+ 'KI' => 'Kilipasi',
+ 'KM' => 'Komolosi',
+ 'KN' => 'Sā Kitisi mo Nevisi',
+ 'KP' => 'Kōlea tokelau',
+ 'KR' => 'Kōlea tonga',
+ 'KW' => 'Kueiti',
+ 'KY' => 'ʻOtumotu Keimeni',
+ 'KZ' => 'Kasakitani',
+ 'LA' => 'Lau',
+ 'LB' => 'Lepanoni',
+ 'LC' => 'Sā Lūsia',
+ 'LI' => 'Likitenisiteini',
+ 'LK' => 'Sīlangikā',
+ 'LR' => 'Laipelia',
+ 'LS' => 'Lesoto',
+ 'LT' => 'Lituania',
+ 'LU' => 'Lakisimipeki',
+ 'LV' => 'Lativia',
+ 'LY' => 'Līpia',
+ 'MA' => 'Moloko',
+ 'MC' => 'Monako',
+ 'MD' => 'Molotova',
+ 'ME' => 'Monitenikalo',
+ 'MF' => 'Sā Mātini (fakafalanisē)',
+ 'MG' => 'Matakasika',
+ 'MH' => 'ʻOtumotu Māsolo',
+ 'MK' => 'Masetōnia',
+ 'ML' => 'Māli',
+ 'MM' => 'Pema',
+ 'MN' => 'Mongokōlia',
+ 'MO' => 'Makau',
+ 'MP' => 'ʻOtumotu Maliana tokelau',
+ 'MQ' => 'Māteniki',
+ 'MR' => 'Maulitenia',
+ 'MS' => 'Moʻungaselati',
+ 'MT' => 'Malita',
+ 'MU' => 'Maulitiusi',
+ 'MV' => 'Malativisi',
+ 'MW' => 'Malaui',
+ 'MX' => 'Mekisikou',
+ 'MY' => 'Malēsia',
+ 'MZ' => 'Mosēmipiki',
+ 'NA' => 'Namipia',
+ 'NC' => 'Niu Kaletōnia',
+ 'NE' => 'Nisia',
+ 'NF' => 'Motu Nōfoliki',
+ 'NG' => 'Naisilia',
+ 'NI' => 'Nikalakua',
+ 'NL' => 'Hōlani',
+ 'NO' => 'Noauē',
+ 'NP' => 'Nepali',
+ 'NR' => 'Naulu',
+ 'NU' => 'Niuē',
+ 'NZ' => 'Nuʻusila',
+ 'OM' => 'ʻOmani',
+ 'PA' => 'Panamā',
+ 'PE' => 'Pelū',
+ 'PF' => 'Polinisia fakafalanisē',
+ 'PG' => 'Papuaniukini',
+ 'PH' => 'Filipaini',
+ 'PK' => 'Pākisitani',
+ 'PL' => 'Polani',
+ 'PM' => 'Sā Piea mo Mikeloni',
+ 'PN' => 'ʻOtumotu Pitikeni',
+ 'PR' => 'Pueto Liko',
+ 'PS' => 'Palesitaine',
+ 'PT' => 'Potukali',
+ 'PW' => 'Palau',
+ 'PY' => 'Palakuai',
+ 'QA' => 'Katā',
+ 'QO' => 'ʻOsēnia mamaʻo',
+ 'RE' => 'Lēunioni',
+ 'RO' => 'Lomēnia',
+ 'RS' => 'Sēpia',
+ 'RU' => 'Lūsia',
+ 'RW' => 'Luanitā',
+ 'SA' => 'Saute ʻAlepea',
+ 'SB' => 'ʻOtumotu Solomone',
+ 'SC' => 'ʻOtumotu Seiseli',
+ 'SD' => 'Sūteni',
+ 'SE' => 'Suēteni',
+ 'SG' => 'Singapoa',
+ 'SH' => 'Sā Helena',
+ 'SI' => 'Silōvenia',
+ 'SJ' => 'Sivolopāti mo Sani Maieni',
+ 'SK' => 'Silōvakia',
+ 'SL' => 'Siela Leone',
+ 'SM' => 'Sā Malino',
+ 'SN' => 'Senekalo',
+ 'SO' => 'Sōmalia',
+ 'SR' => 'Suliname',
+ 'SS' => 'Sūtani fakatonga',
+ 'ST' => 'Sao Tomē mo Pilinisipe',
+ 'SV' => 'ʻEle Salavatoa',
+ 'SX' => 'Sā Mātini (fakahōlani)',
+ 'SY' => 'Sīlia',
+ 'SZ' => 'Suasilani',
+ 'TA' => 'Tulisiteni ta Kunuha',
+ 'TC' => 'ʻOtumotu Tuki mo Kaikosi',
+ 'TD' => 'Sāti',
+ 'TF' => 'Potu fonua tonga fakafalanisē',
+ 'TG' => 'Toko',
+ 'TH' => 'Tailani',
+ 'TJ' => 'Tasikitani',
+ 'TK' => 'Tokelau',
+ 'TL' => 'Timoa Hahake',
+ 'TM' => 'Tūkimenisitani',
+ 'TN' => 'Tunīsia',
+ 'TO' => 'Tonga',
+ 'TR' => 'Toake',
+ 'TT' => 'Tilinitati mo Topako',
+ 'TV' => 'Tūvalu',
+ 'TW' => 'Taiuani',
+ 'TZ' => 'Tenisānia',
+ 'UA' => 'ʻŪkalaʻine',
+ 'UG' => 'ʻIukanitā',
+ 'UM' => 'ʻOtumotu siʻi ʻo ʻAmelika',
+ 'US' => 'ʻAmelika',
+ 'UY' => 'ʻUlukuai',
+ 'UZ' => 'ʻUsipekitani',
+ 'VA' => 'Kolo Vatikani',
+ 'VC' => 'Sā Viniseni mo Kulenatini',
+ 'VE' => 'Venesuela',
+ 'VG' => 'ʻOtumotu Vilikini fakapilitānia',
+ 'VI' => 'ʻOtumotu Vilikini fakaʻamelika',
+ 'VN' => 'Vietinami',
+ 'VU' => 'Vanuatu',
+ 'WF' => 'ʻUvea mo Futuna',
+ 'WS' => 'Haʻamoa',
+ 'XK' => 'Kōsovo',
+ 'YE' => 'Iemeni',
+ 'YT' => 'Maiote',
+ 'ZA' => 'ʻAfilika tonga',
+ 'ZM' => 'Semipia',
+ 'ZW' => 'Simipapuei',
+);
+
+$timeUnits = array(
+ 'day-future-other' => 'ʻi he ʻaho ʻe {0}',
+ 'day-narrow-future-other' => 'ʻi he ʻaho ʻe {0}',
+ 'day-narrow-past-other' => 'ʻaho ʻe {0} kuoʻosi',
+ 'day-other' => 'ʻaho ʻe {0}',
+ 'day-past-other' => 'ʻaho ʻe {0} kuoʻosi',
+ 'day-short-future-other' => 'ʻi he ʻaho ʻe {0}',
+ 'day-short-past-other' => 'ʻaho ʻe {0} kuoʻosi',
+ 'hour-future-other' => 'ʻi he houa ʻe {0}',
+ 'hour-narrow-future-other' => 'ʻi he houa ʻe {0}',
+ 'hour-narrow-past-other' => 'houa ʻe {0} kuoʻosi',
+ 'hour-other' => 'houa ʻe {0}',
+ 'hour-past-other' => 'houa ʻe {0} kuoʻosi',
+ 'hour-short-future-other' => 'ʻi he houa ʻe {0}',
+ 'hour-short-past-other' => 'houa ʻe {0} kuoʻosi',
+ 'microsecond-other' => 'mikolosekoni ʻe {0}',
+ 'millisecond-other' => 'milisekoni ʻe {0}',
+ 'minute-future-other' => 'ʻi he miniti ʻe {0}',
+ 'minute-narrow-future-other' => 'ʻi he miniti ʻe {0}',
+ 'minute-narrow-past-other' => 'miniti ʻe {0} kuoʻosi',
+ 'minute-other' => 'miniti ʻe {0}',
+ 'minute-past-other' => 'miniti ʻe {0} kuoʻosi',
+ 'minute-short-future-other' => 'ʻi he miniti ʻe {0}',
+ 'minute-short-past-other' => 'miniti ʻe {0} kuoʻosi',
+ 'month-future-other' => 'ʻi he māhina ʻe {0}',
+ 'month-narrow-future-other' => 'ʻi he māhina ʻe {0}',
+ 'month-narrow-past-other' => 'māhina ʻe {0} kuoʻosi',
+ 'month-other' => 'māhina ʻe {0}',
+ 'month-past-other' => 'māhina ʻe {0} kuoʻosi',
+ 'month-short-future-other' => 'ʻi he māhina ʻe {0}',
+ 'month-short-past-other' => 'māhina ʻe {0} kuoʻosi',
+ 'nanosecond-other' => 'nanosekoni ʻe {0}',
+ 'quarter-future-other' => 'ʻi he kuata ʻe {0}',
+ 'quarter-narrow-future-other' => 'ʻi he kuata ʻe {0}',
+ 'quarter-narrow-past-other' => 'kuata ʻe {0} kuoʻosi',
+ 'quarter-past-other' => 'kuata ʻe {0} kuoʻosi',
+ 'quarter-short-future-other' => 'ʻi he kuata ʻe {0}',
+ 'quarter-short-past-other' => 'kuata ʻe {0} kuoʻosi',
+ 'second-future-other' => 'ʻi he sekoni ʻe {0}',
+ 'second-narrow-future-other' => 'ʻi he sekoni ʻe {0}',
+ 'second-narrow-past-other' => 'sekoni ʻe {0} kuoʻosi',
+ 'second-other' => 'sekoni ʻe {0}',
+ 'second-past-other' => 'sekoni ʻe {0} kuoʻosi',
+ 'second-short-future-other' => 'ʻi he sekoni ʻe {0}',
+ 'second-short-past-other' => 'sekoni ʻe {0} kuoʻosi',
+ 'week-future-other' => 'ʻi he uike ʻe {0}',
+ 'week-narrow-future-other' => 'ʻi he uike ʻe {0}',
+ 'week-narrow-past-other' => 'uike ʻe {0} kuoʻosi',
+ 'week-other' => 'uike ʻe {0}',
+ 'week-past-other' => 'uike ʻe {0} kuoʻosi',
+ 'week-short-future-other' => 'ʻi he uike ʻe {0}',
+ 'week-short-past-other' => 'uike ʻe {0} kuoʻosi',
+ 'year-future-other' => 'ʻi he taʻu ʻe {0}',
+ 'year-narrow-future-other' => 'ʻi he taʻu ʻe {0}',
+ 'year-narrow-past-other' => 'taʻu ʻe {0} kuoʻosi',
+ 'year-other' => 'taʻu ʻe {0}',
+ 'year-past-other' => 'taʻu ʻe {0} kuoʻosi',
+ 'year-short-future-other' => 'ʻi he taʻu ʻe {0}',
+ 'year-short-past-other' => 'taʻu ʻe {0} kuoʻosi',
+);
diff --git a/MLEB/cldr/CldrNames/CldrNamesTr.php b/MLEB/cldr/CldrNames/CldrNamesTr.php
new file mode 100644
index 00000000..99bb63df
--- /dev/null
+++ b/MLEB/cldr/CldrNames/CldrNamesTr.php
@@ -0,0 +1,1553 @@
+<?php
+
+$languageNames = array(
+ 'aa' => 'Afar',
+ 'ab' => 'Abhazca',
+ 'ace' => 'Achinese',
+ 'ach' => 'Acoli',
+ 'ada' => 'Adangme',
+ 'ady' => 'Adigece',
+ 'ae' => 'Avestçe',
+ 'aeb' => 'Tunus Arapçası',
+ 'af' => 'Afrikaanca',
+ 'afh' => 'Afrihili',
+ 'agq' => 'Aghem',
+ 'ain' => 'Ayni Dili',
+ 'ak' => 'Akan',
+ 'akk' => 'Akad Dili',
+ 'akz' => 'Alabamaca',
+ 'ale' => 'Aleut',
+ 'aln' => 'Gheg Arnavutçası',
+ 'alt' => 'Güney Altayca',
+ 'am' => 'Amharca',
+ 'an' => 'Aragonca',
+ 'ang' => 'Eski İngilizce',
+ 'anp' => 'Angika',
+ 'ar' => 'Arapça',
+ 'ar-001' => 'Modern Standart Arapça',
+ 'arc' => 'Aramice',
+ 'arn' => 'Araukanya Dili',
+ 'aro' => 'Araona',
+ 'arp' => 'Arapaho Dili',
+ 'arq' => 'Cezayir Arapçası',
+ 'arw' => 'Arawak Dili',
+ 'ary' => 'Fas Arapçası',
+ 'arz' => 'Mısır Arapçası',
+ 'as' => 'Assamca',
+ 'asa' => 'Asu',
+ 'ase' => 'Amerikan İşaret Dili',
+ 'ast' => 'Asturyasca',
+ 'av' => 'Avar Dili',
+ 'avk' => 'Kotava',
+ 'awa' => 'Awadhi',
+ 'ay' => 'Aymara',
+ 'az' => 'Azerice',
+ 'azb' => 'Güney Azerice',
+ 'ba' => 'Başkırtça',
+ 'bal' => 'Baluchi',
+ 'ban' => 'Bali Dili',
+ 'bar' => 'Bavyera Dili',
+ 'bas' => 'Basa Dili',
+ 'bax' => 'Bamun',
+ 'bbc' => 'Batak Toba',
+ 'bbj' => 'Ghomala',
+ 'be' => 'Beyaz Rusça',
+ 'bej' => 'Beja Dili',
+ 'bem' => 'Bemba',
+ 'bew' => 'Betawi',
+ 'bez' => 'Bena',
+ 'bfd' => 'Bafut',
+ 'bfq' => 'Badaga',
+ 'bg' => 'Bulgarca',
+ 'bho' => 'Arayanice',
+ 'bi' => 'Bislama',
+ 'bik' => 'Bikol',
+ 'bin' => 'Bini',
+ 'bjn' => 'Banjar Dili',
+ 'bkm' => 'Kom',
+ 'bla' => 'Siksika',
+ 'bm' => 'Bambara',
+ 'bn' => 'Bengalce',
+ 'bo' => 'Tibetçe',
+ 'bpy' => 'Bishnupriya',
+ 'bqi' => 'Bahtiyari',
+ 'br' => 'Bretonca',
+ 'bra' => 'Braj',
+ 'brh' => 'Brohice',
+ 'brx' => 'Bodo',
+ 'bs' => 'Boşnakça',
+ 'bss' => 'Akoose',
+ 'bua' => 'Buryat',
+ 'bug' => 'Bugis',
+ 'bum' => 'Bulu',
+ 'byn' => 'Blin',
+ 'byv' => 'Medumba',
+ 'ca' => 'Katalanca',
+ 'cad' => 'Caddo',
+ 'car' => 'Carib',
+ 'cay' => 'Cayuga',
+ 'cch' => 'Atsam',
+ 'ce' => 'Çeçence',
+ 'ceb' => 'Cebuano',
+ 'cgg' => 'Kigaca',
+ 'ch' => 'Chamorro',
+ 'chb' => 'Chibcha',
+ 'chg' => 'Çağatay Dili',
+ 'chk' => 'Chuukese',
+ 'chm' => 'Mari',
+ 'chn' => 'Chinook Jargon',
+ 'cho' => 'Choctaw',
+ 'chp' => 'Chipewyan',
+ 'chr' => 'Çerokice',
+ 'chy' => 'Şayen Dili',
+ 'ckb' => 'Orta Kürtçe',
+ 'co' => 'Korsikaca',
+ 'cop' => 'Kıptice',
+ 'cps' => 'Capiznon',
+ 'cr' => 'Cree',
+ 'crh' => 'Kırım Türkçesi',
+ 'cs' => 'Çekçe',
+ 'csb' => 'Kashubian',
+ 'cu' => 'Kilise Slavcası',
+ 'cv' => 'Çuvaşça',
+ 'cy' => 'Galce',
+ 'da' => 'Danca',
+ 'dak' => 'Dakota',
+ 'dar' => 'Dargince',
+ 'dav' => 'Taita',
+ 'de' => 'Almanca',
+ 'de-at' => 'Avusturya Almancası',
+ 'de-ch' => 'İsviçre Yüksek Almancası',
+ 'del' => 'Delaware',
+ 'den' => 'Slavey',
+ 'dgr' => 'Dogrib',
+ 'din' => 'Dinka',
+ 'dje' => 'Zarma',
+ 'doi' => 'Dogri',
+ 'dsb' => 'Aşağı Sorbça',
+ 'dtp' => 'Orta Kadazan',
+ 'dua' => 'Duala',
+ 'dum' => 'Ortaçağ Felemenkçesi',
+ 'dv' => 'Divehi',
+ 'dyo' => 'Jola-Fonyi',
+ 'dyu' => 'Dyula',
+ 'dz' => 'Butan Dili',
+ 'dzg' => 'Dazaga',
+ 'ebu' => 'Embu',
+ 'ee' => 'Ewe',
+ 'efi' => 'Efik',
+ 'egl' => 'Emilia Dili',
+ 'egy' => 'Eski Mısır Dili',
+ 'eka' => 'Ekajuk',
+ 'el' => 'Yunanca',
+ 'elx' => 'Elam',
+ 'en' => 'İngilizce',
+ 'en-au' => 'Avustralya İngilizcesi',
+ 'en-ca' => 'Kanada İngilizcesi',
+ 'en-gb' => 'İngiliz İngilizcesi',
+ 'en-us' => 'Amerikan İngilizcesi',
+ 'enm' => 'Ortaçağ İngilizcesi',
+ 'eo' => 'Esperanto',
+ 'es' => 'İspanyolca',
+ 'es-419' => 'Latin Amerika İspanyolcası',
+ 'es-es' => 'Avrupa İspanyolcası',
+ 'es-mx' => 'Meksika İspanyolcası',
+ 'esu' => 'Merkezi Yupikçe',
+ 'et' => 'Estonca',
+ 'eu' => 'Baskça',
+ 'ewo' => 'Ewondo',
+ 'ext' => 'Ekstremadura Dili',
+ 'fa' => 'Farsça',
+ 'fan' => 'Fang',
+ 'fat' => 'Fanti',
+ 'ff' => 'Fulah',
+ 'fi' => 'Fince',
+ 'fil' => 'Filipince',
+ 'fit' => 'Tornedalin Fincesi',
+ 'fj' => 'Fiji Dili',
+ 'fo' => 'Faroe Dili',
+ 'fon' => 'Fon',
+ 'fr' => 'Fransızca',
+ 'fr-ca' => 'Kanada Fransızcası',
+ 'fr-ch' => 'İsviçre Fransızcası',
+ 'frc' => 'Cajun Fransızcası',
+ 'frm' => 'Ortaçağ Fransızcası',
+ 'fro' => 'Eski Fransızca',
+ 'frp' => 'Arpitanca',
+ 'frr' => 'Kuzey Frizce',
+ 'frs' => 'Doğu Frizcesi',
+ 'fur' => 'Friulian',
+ 'fy' => 'Batı Frizcesi',
+ 'ga' => 'İrlandaca',
+ 'gaa' => 'Ga',
+ 'gag' => 'Gagavuzca',
+ 'gan' => 'Gan Çincesi',
+ 'gay' => 'Gayo',
+ 'gba' => 'Gbaya',
+ 'gbz' => 'Zerdüşt Daricesi',
+ 'gd' => 'İskoç Gal Dili',
+ 'gez' => 'Geez',
+ 'gil' => 'Kiribati Dili',
+ 'gl' => 'Galiçyaca',
+ 'glk' => 'Gilanice',
+ 'gmh' => 'Ortaçağ Yüksek Almancası',
+ 'gn' => 'Guarani Dili',
+ 'goh' => 'Eski Yüksek Almanca',
+ 'gom' => 'Goa Konkanicesi',
+ 'gon' => 'Gondi',
+ 'gor' => 'Gorontalo',
+ 'got' => 'Gotça',
+ 'grb' => 'Grebo',
+ 'grc' => 'Antik Yunanca',
+ 'gsw' => 'İsviçre Almancası',
+ 'gu' => 'Güceratça',
+ 'guc' => 'Wayuu',
+ 'gur' => 'Frafra',
+ 'guz' => 'Gusii',
+ 'gv' => 'Manks',
+ 'gwi' => 'Gwichʼin',
+ 'ha' => 'Hausa',
+ 'hai' => 'Haida',
+ 'hak' => 'Hakka Çincesi',
+ 'haw' => 'Hawaii Dili',
+ 'he' => 'İbranice',
+ 'hi' => 'Hintçe',
+ 'hif' => 'Fiji Hintçesi',
+ 'hil' => 'Hiligaynon',
+ 'hit' => 'Hititçe',
+ 'hmn' => 'Hmong',
+ 'ho' => 'Hiri Motu',
+ 'hr' => 'Hırvatça',
+ 'hsb' => 'Yukarı Sorbça',
+ 'hsn' => 'Xiang Çincesi',
+ 'ht' => 'Haiti Dili',
+ 'hu' => 'Macarca',
+ 'hup' => 'Hupa',
+ 'hy' => 'Ermenice',
+ 'hz' => 'Herero',
+ 'ia' => 'Interlingua',
+ 'iba' => 'Iban',
+ 'ibb' => 'Ibibio',
+ 'id' => 'Endonezce',
+ 'ie' => 'Interlingue',
+ 'ig' => 'İbo Dili',
+ 'ii' => 'Sichuan Yi',
+ 'ik' => 'Inupiak',
+ 'ilo' => 'Iloko',
+ 'inh' => 'İnguşça',
+ 'io' => 'Ido',
+ 'is' => 'İzlandaca',
+ 'it' => 'İtalyanca',
+ 'iu' => 'Inuktitut',
+ 'izh' => 'İngriya Dili',
+ 'ja' => 'Japonca',
+ 'jam' => 'Jamaika Patois Dili',
+ 'jbo' => 'Lojban',
+ 'jgo' => 'Ngomba',
+ 'jmc' => 'Machame',
+ 'jpr' => 'Yahudi Farsçası',
+ 'jrb' => 'Yahudi Arapçası',
+ 'jut' => 'Yutland Dili',
+ 'jv' => 'Cava Dili',
+ 'ka' => 'Gürcüce',
+ 'kaa' => 'Karakalpakça',
+ 'kab' => 'Kabiliyece',
+ 'kac' => 'Kaçin',
+ 'kaj' => 'Jju',
+ 'kam' => 'Kamba',
+ 'kaw' => 'Kawi',
+ 'kbd' => 'Kabardeyce',
+ 'kbl' => 'Kanembu',
+ 'kcg' => 'Tyap',
+ 'kde' => 'Makonde',
+ 'kea' => 'Kabuverdianu',
+ 'ken' => 'Kenyang',
+ 'kfo' => 'Koro',
+ 'kg' => 'Kongo',
+ 'kgp' => 'Kaingang',
+ 'kha' => 'Khasi',
+ 'kho' => 'Hotanca',
+ 'khq' => 'Koyra Chiini',
+ 'khw' => 'Çitral Dili',
+ 'ki' => 'Kikuyu',
+ 'kiu' => 'Kırmançça',
+ 'kj' => 'Kuanyama',
+ 'kk' => 'Kazakça',
+ 'kkj' => 'Kako',
+ 'kl' => 'Grönland Dili',
+ 'kln' => 'Kalenjin',
+ 'km' => 'Kmerce',
+ 'kmb' => 'Kimbundu',
+ 'kn' => 'Kannada',
+ 'ko' => 'Korece',
+ 'koi' => 'Komi-Permyak',
+ 'kok' => 'Konkani',
+ 'kos' => 'Kosraean',
+ 'kpe' => 'Kpelle',
+ 'kr' => 'Kanuri',
+ 'krc' => 'Karaçay-Balkarca',
+ 'kri' => 'Krio',
+ 'krj' => 'Kinaray-a',
+ 'krl' => 'Karelyaca',
+ 'kru' => 'Kurukh',
+ 'ks' => 'Keşmirce',
+ 'ksb' => 'Shambala',
+ 'ksf' => 'Bafia',
+ 'ksh' => 'Köln Diyalekti',
+ 'ku' => 'Kürtçe',
+ 'kum' => 'Kumukça',
+ 'kut' => 'Kutenai',
+ 'kv' => 'Komi',
+ 'kw' => 'Kernevekçe',
+ 'ky' => 'Kırgızca',
+ 'la' => 'Latince',
+ 'lad' => 'Ladino',
+ 'lag' => 'Langi',
+ 'lah' => 'Lahnda',
+ 'lam' => 'Lamba',
+ 'lb' => 'Lüksemburgca',
+ 'lez' => 'Lezgice',
+ 'lfn' => 'Lingua Franca Nova',
+ 'lg' => 'Ganda',
+ 'li' => 'Limburgca',
+ 'lij' => 'Ligurca',
+ 'liv' => 'Livonca',
+ 'lkt' => 'Lakotaca',
+ 'lmo' => 'Lombardça',
+ 'ln' => 'Lingala',
+ 'lo' => 'Laoca',
+ 'lol' => 'Mongo',
+ 'loz' => 'Lozi',
+ 'lt' => 'Litvanyaca',
+ 'ltg' => 'Latgalian',
+ 'lu' => 'Luba-Katanga',
+ 'lua' => 'Luba-Lulua',
+ 'lui' => 'Luiseno',
+ 'lun' => 'Lunda',
+ 'luo' => 'Luo',
+ 'lus' => 'Lushai',
+ 'luy' => 'Luyia',
+ 'lv' => 'Letonca',
+ 'lzh' => 'Edebi Çince',
+ 'lzz' => 'Lazca',
+ 'mad' => 'Madura Dili',
+ 'maf' => 'Mafa',
+ 'mag' => 'Magahi',
+ 'mai' => 'Maithili',
+ 'mak' => 'Makasar',
+ 'man' => 'Mandingo',
+ 'mas' => 'Masai',
+ 'mde' => 'Maba',
+ 'mdf' => 'Mokşa Dili',
+ 'mdr' => 'Mandar',
+ 'men' => 'Mende',
+ 'mer' => 'Meru',
+ 'mfe' => 'Morisyen',
+ 'mg' => 'Malgaşça',
+ 'mga' => 'Ortaçağ İrlandacası',
+ 'mgh' => 'Makhuwa-Meetto',
+ 'mgo' => 'Meta’',
+ 'mh' => 'Marshall Adaları Dili',
+ 'mi' => 'Maori Dili',
+ 'mic' => 'Micmac',
+ 'min' => 'Minangkabau',
+ 'mk' => 'Makedonca',
+ 'ml' => 'Malayalam',
+ 'mn' => 'Moğolca',
+ 'mnc' => 'Mançurya Dili',
+ 'mni' => 'Manipuri',
+ 'moh' => 'Mohavk Dili',
+ 'mos' => 'Mossi',
+ 'mr' => 'Marathi',
+ 'mrj' => 'Ova Çirmişçesi',
+ 'ms' => 'Malayca',
+ 'mt' => 'Maltaca',
+ 'mua' => 'Mundang',
+ 'mul' => 'Birden Fazla Dil',
+ 'mus' => 'Creek',
+ 'mwl' => 'Miranda Dili',
+ 'mwr' => 'Marvari',
+ 'mwv' => 'Mentawai',
+ 'my' => 'Burmaca',
+ 'mye' => 'Myene',
+ 'myv' => 'Erzya',
+ 'mzn' => 'Mazenderanca',
+ 'na' => 'Nauru Dili',
+ 'nan' => 'Min Nan Çincesi',
+ 'nap' => 'Napolice',
+ 'naq' => 'Nama',
+ 'nb' => 'Norveççe Bokmål',
+ 'nd' => 'Kuzey Ndebele',
+ 'nds' => 'Aşağı Almanca',
+ 'ne' => 'Nepalce',
+ 'new' => 'Nevari',
+ 'ng' => 'Ndonga',
+ 'nia' => 'Nias',
+ 'niu' => 'Niuean',
+ 'njo' => 'Ao Naga',
+ 'nl' => 'Hollandaca',
+ 'nl-be' => 'Flamanca',
+ 'nmg' => 'Kwasio',
+ 'nn' => 'Norveççe Nynorsk',
+ 'nnh' => 'Ngiemboon',
+ 'no' => 'Norveççe',
+ 'nog' => 'Nogayca',
+ 'non' => 'Eski Norse',
+ 'nov' => 'Novial',
+ 'nqo' => 'N’Ko',
+ 'nr' => 'Güney Ndebele',
+ 'nso' => 'Kuzey Sotho',
+ 'nus' => 'Nuer',
+ 'nv' => 'Navaho Dili',
+ 'nwc' => 'Klasik Nevari',
+ 'ny' => 'Nyanja',
+ 'nym' => 'Nyamvezi',
+ 'nyn' => 'Nyankole',
+ 'nyo' => 'Nyoro',
+ 'nzi' => 'Nzima',
+ 'oc' => 'Occitan',
+ 'oj' => 'Ojibva Dili',
+ 'om' => 'Oromo',
+ 'or' => 'Oriya Dili',
+ 'os' => 'Osetçe',
+ 'osa' => 'Osage',
+ 'ota' => 'Osmanlı Türkçesi',
+ 'pa' => 'Pencapça',
+ 'pag' => 'Pangasinan',
+ 'pal' => 'Pehlevi Dili',
+ 'pam' => 'Pampanga',
+ 'pap' => 'Papiamento',
+ 'pau' => 'Palau Dili',
+ 'pcd' => 'Picard Dili',
+ 'pdc' => 'Pensilvanya Almancası',
+ 'pdt' => 'Plautdietsch',
+ 'peo' => 'Eski Farsça',
+ 'pfl' => 'Palatin Almancası',
+ 'phn' => 'Fenike Dili',
+ 'pi' => 'Pali',
+ 'pl' => 'Lehçe',
+ 'pms' => 'Piyemontece',
+ 'pnt' => 'Kuzeybatı Kafkasya',
+ 'pon' => 'Pohnpeian',
+ 'prg' => 'Prusyaca',
+ 'pro' => 'Eski Provensal',
+ 'ps' => 'Peştuca',
+ 'pt' => 'Portekizce',
+ 'pt-br' => 'Brezilya Portekizcesi',
+ 'pt-pt' => 'Avrupa Portekizcesi',
+ 'qu' => 'Keçuvaca',
+ 'quc' => 'Kiçece',
+ 'qug' => 'Chimborazo Highland Quichua',
+ 'raj' => 'Rajasthani',
+ 'rap' => 'Rapanui',
+ 'rar' => 'Rarotongan',
+ 'rgn' => 'Romanyolca',
+ 'rif' => 'Rif Berbericesi',
+ 'rm' => 'Romanşça',
+ 'rn' => 'Kirundi',
+ 'ro' => 'Romence',
+ 'ro-md' => 'Moldovaca',
+ 'rof' => 'Rombo',
+ 'rom' => 'Romanca',
+ 'rtm' => 'Rotuman',
+ 'ru' => 'Rusça',
+ 'rue' => 'Rusince',
+ 'rug' => 'Roviana',
+ 'rup' => 'Ulahça',
+ 'rw' => 'Kinyarwanda',
+ 'rwk' => 'Rwa',
+ 'sa' => 'Sanskritçe',
+ 'sad' => 'Sandave',
+ 'sah' => 'Yakutça',
+ 'sam' => 'Samarit Aramcası',
+ 'saq' => 'Samburu',
+ 'sas' => 'Sasak',
+ 'sat' => 'Santali',
+ 'saz' => 'Saurashtra',
+ 'sba' => 'Ngambay',
+ 'sbp' => 'Sangu',
+ 'sc' => 'Sardunya Dili',
+ 'scn' => 'Sicilyaca',
+ 'sco' => 'Scots',
+ 'sd' => 'Sindhi',
+ 'sdc' => 'Sassari Sarduca',
+ 'se' => 'Kuzey Sami',
+ 'see' => 'Seneca',
+ 'seh' => 'Sena',
+ 'sei' => 'Seri',
+ 'sel' => 'Selkup',
+ 'ses' => 'Koyraboro Senni',
+ 'sg' => 'Sango',
+ 'sga' => 'Eski İrlandaca',
+ 'sgs' => 'Samogitçe',
+ 'sh' => 'Sırp-Hırvat Dili',
+ 'shi' => 'Taşelhit',
+ 'shn' => 'Shan Dili',
+ 'shu' => 'Çad Arapçası',
+ 'si' => 'Seylanca',
+ 'sid' => 'Sidamo',
+ 'sk' => 'Slovakça',
+ 'sl' => 'Slovence',
+ 'sli' => 'Aşağı Silezyaca',
+ 'sly' => 'Selayar',
+ 'sm' => 'Samoa Dili',
+ 'sma' => 'Güney Sami',
+ 'smj' => 'Lule Sami',
+ 'smn' => 'Inari Sami',
+ 'sms' => 'Skolt Sami',
+ 'sn' => 'Shona',
+ 'snk' => 'Soninke',
+ 'so' => 'Somalice',
+ 'sog' => 'Sogdiana Dili',
+ 'sq' => 'Arnavutça',
+ 'sr' => 'Sırpça',
+ 'srn' => 'Sranan Tongo',
+ 'srr' => 'Serer',
+ 'ss' => 'Sisvati',
+ 'ssy' => 'Saho',
+ 'st' => 'Güney Sotho',
+ 'stq' => 'Saterland Frizcesi',
+ 'su' => 'Sunda Dili',
+ 'suk' => 'Sukuma',
+ 'sus' => 'Susu',
+ 'sux' => 'Sümerce',
+ 'sv' => 'İsveççe',
+ 'sw' => 'Svahili',
+ 'swb' => 'Komorca',
+ 'swc' => 'Kongo Svahili',
+ 'syc' => 'Klasik Süryanice',
+ 'syr' => 'Süryanice',
+ 'szl' => 'Silezyaca',
+ 'ta' => 'Tamilce',
+ 'tcy' => 'Tuluca',
+ 'te' => 'Telugu Dili',
+ 'tem' => 'Timne',
+ 'teo' => 'Teso',
+ 'ter' => 'Tereno',
+ 'tet' => 'Tetum',
+ 'tg' => 'Tacikçe',
+ 'th' => 'Tayca',
+ 'ti' => 'Tigrinya',
+ 'tig' => 'Tigre',
+ 'tiv' => 'Tiv',
+ 'tk' => 'Türkmence',
+ 'tkl' => 'Tokelau',
+ 'tkr' => 'Sahurca',
+ 'tl' => 'Takalotça',
+ 'tlh' => 'Klingonca',
+ 'tli' => 'Tlingit',
+ 'tly' => 'Talışça',
+ 'tmh' => 'Tamaşek',
+ 'tn' => 'Setsvana',
+ 'to' => 'Tongaca',
+ 'tog' => 'Nyasa Tonga',
+ 'tpi' => 'Tok Pisin',
+ 'tr' => 'Türkçe',
+ 'tru' => 'Turoyo',
+ 'trv' => 'Taroko',
+ 'ts' => 'Tsonga',
+ 'tsd' => 'Tsakonca',
+ 'tsi' => 'Tsimshian',
+ 'tt' => 'Tatarca',
+ 'ttt' => 'Tatça',
+ 'tum' => 'Tumbuka',
+ 'tvl' => 'Tuvalu',
+ 'tw' => 'Tvi',
+ 'twq' => 'Tasawaq',
+ 'ty' => 'Tahiti Dili',
+ 'tyv' => 'Tuvaca',
+ 'tzm' => 'Orta Fas Tamazigti',
+ 'udm' => 'Udmurtça',
+ 'ug' => 'Uygurca',
+ 'uga' => 'Ugarit Dili',
+ 'uk' => 'Ukraynaca',
+ 'umb' => 'Umbundu',
+ 'und' => 'Bilinmeyen Dil',
+ 'ur' => 'Urduca',
+ 'uz' => 'Özbekçe',
+ 'vai' => 'Vai',
+ 've' => 'Venda',
+ 'vec' => 'Venedikçe',
+ 'vep' => 'Veps',
+ 'vi' => 'Vietnamca',
+ 'vls' => 'Batı Flamanca',
+ 'vmf' => 'Main Frankonya Dili',
+ 'vo' => 'Volapük',
+ 'vot' => 'Votic',
+ 'vro' => 'Võro',
+ 'vun' => 'Vunjo',
+ 'wa' => 'Valonca',
+ 'wae' => 'Walser',
+ 'wal' => 'Valamo',
+ 'war' => 'Varay',
+ 'was' => 'Vaşo',
+ 'wo' => 'Volofça',
+ 'wuu' => 'Wu Çincesi',
+ 'xal' => 'Kalmıkça',
+ 'xh' => 'Zosa',
+ 'xmf' => 'Megrelce',
+ 'xog' => 'Soga',
+ 'yao' => 'Yao',
+ 'yap' => 'Yapça',
+ 'yav' => 'Yangben',
+ 'ybb' => 'Yemba',
+ 'yi' => 'Yidiş',
+ 'yo' => 'Yorubaca',
+ 'yrl' => 'Nheengatu',
+ 'yue' => 'Kantonca',
+ 'za' => 'Zhuang',
+ 'zap' => 'Zapotek Dili',
+ 'zbl' => 'Blis Sembolleri',
+ 'zea' => 'Zelandaca',
+ 'zen' => 'Zenaga',
+ 'zgh' => 'Standart Berberi Dili Tamazight',
+ 'zh' => 'Çince',
+ 'zh-hans' => 'Basitleştirilmiş Çince',
+ 'zh-hant' => 'Geleneksel Çince',
+ 'zu' => 'Zuluca',
+ 'zun' => 'Zuni',
+ 'zxx' => 'Dilbilim içeriği yok',
+ 'zza' => 'Zazaca',
+);
+
+$currencyNames = array(
+ 'ADP' => 'Andorra Pezetası',
+ 'AED' => 'Birleşik Arap Emirlikleri Dirhemi',
+ 'AFA' => 'Afganistan Afganisi (1927–2002)',
+ 'AFN' => 'Afganistan Afganisi',
+ 'ALK' => 'Arnavutluk Leki (1946–1965)',
+ 'ALL' => 'Arnavutluk Leki',
+ 'AMD' => 'Ermenistan Dramı',
+ 'ANG' => 'Hollanda Antilleri Guldeni',
+ 'AOA' => 'Angola Kvanzası',
+ 'AOK' => 'Angola Kvanzası (1977–1990)',
+ 'AON' => 'Yeni Angola Kvanzası (1990–2000)',
+ 'AOR' => 'Angola Kvanzası Reajustado (1995–1999)',
+ 'ARA' => 'Arjantin Australi',
+ 'ARL' => 'Arjantin Peso Leyi (1970–1983)',
+ 'ARM' => 'Arjantin Pesosu (1881–1970)',
+ 'ARP' => 'Arjantin Pezosu (1983–1985)',
+ 'ARS' => 'Arjantin Pesosu',
+ 'ATS' => 'Avusturya Şilini',
+ 'AUD' => 'Avustralya Doları',
+ 'AWG' => 'Aruba Florini',
+ 'AZM' => 'Azerbaycan Manatı (1993–2006)',
+ 'AZN' => 'Azerbaycan Manatı',
+ 'BAD' => 'Bosna Hersek Dinarı',
+ 'BAM' => 'Konvertibl Bosna Hersek Markı',
+ 'BAN' => 'Yeni Bosna Hersek Dinarı (1994–1997)',
+ 'BBD' => 'Barbados Doları',
+ 'BDT' => 'Bangladeş Takası',
+ 'BEC' => 'Belçika Frangı (konvertibl)',
+ 'BEF' => 'Belçika Frangı',
+ 'BEL' => 'Belçika Frangı (finansal)',
+ 'BGL' => 'Bulgar Levası (Hard)',
+ 'BGM' => 'Sosyalist Bulgaristan Levası',
+ 'BGN' => 'Bulgar Levası',
+ 'BGO' => 'Bulgar Levası (1879–1952)',
+ 'BHD' => 'Bahreyn Dinarı',
+ 'BIF' => 'Burundi Frangı',
+ 'BMD' => 'Bermuda Doları',
+ 'BND' => 'Brunei Doları',
+ 'BOB' => 'Bolivya Bolivyanosu',
+ 'BOL' => 'Bolivya Bolivyanosu (1863–1963)',
+ 'BOP' => 'Bolivya Pezosu',
+ 'BOV' => 'Bolivya Mvdolu',
+ 'BRB' => 'Yeni Brezilya Kruzeirosu (1967–1986)',
+ 'BRC' => 'Brezilya Kruzadosu',
+ 'BRE' => 'Brezilya Kruzeirosu (1990–1993)',
+ 'BRL' => 'Brezilya Reali',
+ 'BRN' => 'Yeni Brezilya Kruzadosu',
+ 'BRR' => 'Brezilya Kruzeirosu',
+ 'BRZ' => 'Brezilya Kruzeirosu (1942–1967)',
+ 'BSD' => 'Bahama Doları',
+ 'BTN' => 'Bhutan Ngultrumu',
+ 'BUK' => 'Burma Kyatı',
+ 'BWP' => 'Botsvana Pulası',
+ 'BYB' => 'Yeni Beyaz Rusya Rublesi (1994–1999)',
+ 'BYR' => 'Beyaz Rusya Rublesi',
+ 'BZD' => 'Belize Doları',
+ 'CAD' => 'Kanada Doları',
+ 'CDF' => 'Kongo Frangı',
+ 'CHE' => 'WIR Avrosu',
+ 'CHF' => 'İsviçre Frangı',
+ 'CHW' => 'WIR Frangı',
+ 'CLE' => 'Şili Esküdosu',
+ 'CLF' => 'Şili Unidades de Fomento',
+ 'CLP' => 'Şili Pesosu',
+ 'CNX' => 'Çin Halk Cumhuriyeti Merkez Bankası Doları',
+ 'CNY' => 'Çin Yuanı',
+ 'COP' => 'Kolombiya Pesosu',
+ 'COU' => 'Unidad de Valor Real',
+ 'CRC' => 'Kosta Rika Kolonu',
+ 'CSD' => 'Eski Sırbistan Dinarı',
+ 'CSK' => 'Çekoslavak Korunası (Hard)',
+ 'CUC' => 'Konvertibl Küba Pesosu',
+ 'CUP' => 'Küba Pesosu',
+ 'CVE' => 'Cape Verde Esküdosu',
+ 'CYP' => 'Güney Kıbrıs Lirası',
+ 'CZK' => 'Çek Cumhuriyeti Korunası',
+ 'DDM' => 'Doğu Alman Markı',
+ 'DEM' => 'Alman Markı',
+ 'DJF' => 'Cibuti Frangı',
+ 'DKK' => 'Danimarka Kronu',
+ 'DOP' => 'Dominik Pesosu',
+ 'DZD' => 'Cezayir Dinarı',
+ 'ECS' => 'Ekvador Sukresi',
+ 'ECV' => 'Ekvador Unidad de Valor Constante (UVC)',
+ 'EEK' => 'Estonya Krunu',
+ 'EGP' => 'Mısır Lirası',
+ 'ERN' => 'Eritre Nakfası',
+ 'ESA' => 'İspanyol Pezetası (A hesabı)',
+ 'ESB' => 'İspanyol Pezetası (konvertibl hesap)',
+ 'ESP' => 'İspanyol Pezetası',
+ 'ETB' => 'Etiyopya Birri',
+ 'EUR' => 'Euro',
+ 'FIM' => 'Fin Markkası',
+ 'FJD' => 'Fiji Doları',
+ 'FKP' => 'Falkland Adaları Lirası',
+ 'FRF' => 'Fransız Frangı',
+ 'GBP' => 'İngiliz Sterlini',
+ 'GEK' => 'Gürcistan Kupon Larisi',
+ 'GEL' => 'Gürcistan Larisi',
+ 'GHC' => 'Gana Sedisi (1979–2007)',
+ 'GHS' => 'Gana Sedisi',
+ 'GIP' => 'Cebelitarık Lirası',
+ 'GMD' => 'Gambiya Dalasisi',
+ 'GNF' => 'Gine Frangı',
+ 'GNS' => 'Gine Sylisi',
+ 'GQE' => 'Ekvator Ginesi Ekuelesi',
+ 'GRD' => 'Yunan Drahmisi',
+ 'GTQ' => 'Guatemala Quetzalı',
+ 'GWE' => 'Portekiz Ginesi Esküdosu',
+ 'GWP' => 'Gine-Bissau Pezosu',
+ 'GYD' => 'Guyana Doları',
+ 'HKD' => 'Hong Kong Doları',
+ 'HNL' => 'Honduras Lempirası',
+ 'HRD' => 'Hırvatistan Dinarı',
+ 'HRK' => 'Hırvatistan Kunası',
+ 'HTG' => 'Haiti Gurdu',
+ 'HUF' => 'Macar Forinti',
+ 'IDR' => 'Endonezya Rupiahı',
+ 'IEP' => 'İrlanda Lirası',
+ 'ILP' => 'İsrail Lirası',
+ 'ILR' => 'İsrail Şekeli (1980–1985)',
+ 'ILS' => 'Yeni İsrail Şekeli',
+ 'INR' => 'Hindistan Rupisi',
+ 'IQD' => 'Irak Dinarı',
+ 'IRR' => 'İran Riyali',
+ 'ISJ' => 'İzlanda Kronu (1918–1981)',
+ 'ISK' => 'İzlanda Kronu',
+ 'ITL' => 'İtalyan Lireti',
+ 'JMD' => 'Jamaika Doları',
+ 'JOD' => 'Ürdün Dinarı',
+ 'JPY' => 'Japon Yeni',
+ 'KES' => 'Kenya Şilini',
+ 'KGS' => 'Kırgızistan Somu',
+ 'KHR' => 'Kamboçya Rieli',
+ 'KMF' => 'Komorlar Frangı',
+ 'KPW' => 'Kuzey Kore Wonu',
+ 'KRH' => 'Güney Kore Hwanı (1953–1962)',
+ 'KRO' => 'Güney Kore Wonu (1945–1953)',
+ 'KRW' => 'Güney Kore Wonu',
+ 'KWD' => 'Kuveyt Dinarı',
+ 'KYD' => 'Cayman Adaları Doları',
+ 'KZT' => 'Kazakistan Tengesi',
+ 'LAK' => 'Laos Kipi',
+ 'LBP' => 'Lübnan Lirası',
+ 'LKR' => 'Sri Lanka Rupisi',
+ 'LRD' => 'Liberya Doları',
+ 'LSL' => 'Lesotho Lotisi',
+ 'LTL' => 'Litvanya Litası',
+ 'LTT' => 'Litvanya Talonu',
+ 'LUC' => 'Konvertibl Lüksemburg Frangı',
+ 'LUF' => 'Lüksemburg Frangı',
+ 'LUL' => 'Finansal Lüksemburg Frangı',
+ 'LVL' => 'Letonya Latı',
+ 'LVR' => 'Letonya Rublesi',
+ 'LYD' => 'Libya Dinarı',
+ 'MAD' => 'Fas Dirhemi',
+ 'MAF' => 'Fas Frangı',
+ 'MCF' => 'Monako Frangı',
+ 'MDC' => 'Moldova Kuponu',
+ 'MDL' => 'Moldova Leyi',
+ 'MGA' => 'Madagaskar Ariarisi',
+ 'MGF' => 'Madagaskar Frangı',
+ 'MKD' => 'Makedonya Dinarı',
+ 'MKN' => 'Makedonya Dinarı (1992–1993)',
+ 'MLF' => 'Mali Frangı',
+ 'MMK' => 'Myanmar Kyatı',
+ 'MNT' => 'Moğolistan Tugriki',
+ 'MOP' => 'Makao Patakası',
+ 'MRO' => 'Moritanya Ouguiyası',
+ 'MTL' => 'Malta Lirası',
+ 'MTP' => 'Malta Sterlini',
+ 'MUR' => 'Mauritius Rupisi',
+ 'MVP' => 'Maldiv Rupisi',
+ 'MVR' => 'Maldiv Rufiyaası',
+ 'MWK' => 'Malavi Kvaçası',
+ 'MXN' => 'Meksika Pesosu',
+ 'MXP' => 'Gümüş Meksika Pezosu (1861–1992)',
+ 'MXV' => 'Meksika Unidad de Inversion (UDI)',
+ 'MYR' => 'Malezya Ringgiti',
+ 'MZE' => 'Mozambik Esküdosu',
+ 'MZM' => 'Eski Mozambik Metikali',
+ 'MZN' => 'Mozambik Metikali',
+ 'NAD' => 'Namibya Doları',
+ 'NGN' => 'Nijerya Nairası',
+ 'NIC' => 'Nikaragua Kordobası (1988–1991)',
+ 'NIO' => 'Nikaragua Kordobası',
+ 'NLG' => 'Hollanda Florini',
+ 'NOK' => 'Norveç Kronu',
+ 'NPR' => 'Nepal Rupisi',
+ 'NZD' => 'Yeni Zelanda Doları',
+ 'OMR' => 'Umman Riyali',
+ 'PAB' => 'Panama Balboası',
+ 'PEI' => 'Peru İnti',
+ 'PEN' => 'Peru Nuevo Solü',
+ 'PES' => 'Peru Solu',
+ 'PGK' => 'Papua Yeni Gine Kinası',
+ 'PHP' => 'Filipinler Pesosu',
+ 'PKR' => 'Pakistan Rupisi',
+ 'PLN' => 'Polonya Zlotisi',
+ 'PLZ' => 'Polonya Zlotisi (1950–1995)',
+ 'PTE' => 'Portekiz Esküdosu',
+ 'PYG' => 'Paraguay Guaranisi',
+ 'QAR' => 'Katar Riyali',
+ 'RHD' => 'Rodezya Doları',
+ 'ROL' => 'Eski Romen Leyi',
+ 'RON' => 'Romen Leyi',
+ 'RSD' => 'Sırp Dinarı',
+ 'RUB' => 'Rus Rublesi',
+ 'RUR' => 'Rus Rublesi (1991–1998)',
+ 'RWF' => 'Ruanda Frangı',
+ 'SAR' => 'Suudi Arabistan Riyali',
+ 'SBD' => 'Solomon Adaları Doları',
+ 'SCR' => 'Seyşeller Rupisi',
+ 'SDD' => 'Eski Sudan Dinarı',
+ 'SDG' => 'Sudan Lirası',
+ 'SDP' => 'Eski Sudan Lirası',
+ 'SEK' => 'İsveç Kronu',
+ 'SGD' => 'Singapur Doları',
+ 'SHP' => 'Saint Helena Lirası',
+ 'SIT' => 'Slovenya Toları',
+ 'SKK' => 'Slovak Korunası',
+ 'SLL' => 'Sierra Leone Leonesi',
+ 'SOS' => 'Somali Şilini',
+ 'SRD' => 'Surinam Doları',
+ 'SRG' => 'Surinam Guldeni',
+ 'SSP' => 'Güney Sudan Lirası',
+ 'STD' => 'São Tomé ve Príncipe Dobrası',
+ 'SUR' => 'Sovyet Rublesi',
+ 'SVC' => 'El Salvador Kolonu',
+ 'SYP' => 'Suriye Lirası',
+ 'SZL' => 'Svaziland Lilangenisi',
+ 'THB' => 'Tayland Bahtı',
+ 'TJR' => 'Tacikistan Rublesi',
+ 'TJS' => 'Tacikistan Somonisi',
+ 'TMM' => 'Türkmenistan Manatı (1993–2009)',
+ 'TMT' => 'Türkmenistan Manatı',
+ 'TND' => 'Tunus Dinarı',
+ 'TOP' => 'Tonga Paʻangası',
+ 'TPE' => 'Timor Esküdosu',
+ 'TRL' => 'Eski Türk Lirası',
+ 'TRY' => 'Türk Lirası',
+ 'TTD' => 'Trinidad ve Tobago Doları',
+ 'TWD' => 'Yeni Tayvan Doları',
+ 'TZS' => 'Tanzanya Şilini',
+ 'UAH' => 'Ukrayna Grivnası',
+ 'UAK' => 'Ukrayna Karbovanetz',
+ 'UGS' => 'Uganda Şilini (1966–1987)',
+ 'UGX' => 'Uganda Şilini',
+ 'USD' => 'ABD Doları',
+ 'USN' => 'ABD Doları (Ertesi gün)',
+ 'USS' => 'ABD Doları (Aynı gün)',
+ 'UYI' => 'Uruguay Peso en Unidades Indexadas',
+ 'UYP' => 'Uruguay Pezosu (1975–1993)',
+ 'UYU' => 'Uruguay Pesosu',
+ 'UZS' => 'Özbekistan Somu',
+ 'VEB' => 'Venezuela Bolivarı (1871–2008)',
+ 'VEF' => 'Venezuela Bolivarı',
+ 'VND' => 'Vietnam Dongu',
+ 'VNN' => 'Vietnam Dongu (1978–1985)',
+ 'VUV' => 'Vanuatu Vatusu',
+ 'WST' => 'Samoa Talası',
+ 'XAF' => 'CFA Frangı BEAC',
+ 'XAG' => 'Gümüş',
+ 'XAU' => 'Altın',
+ 'XBA' => 'Birleşik Avrupa Birimi',
+ 'XBB' => 'Avrupa Para Birimi (EMU)',
+ 'XBC' => 'Avrupa Hesap Birimi (XBC)',
+ 'XBD' => 'Avrupa Hesap Birimi (XBD)',
+ 'XCD' => 'Doğu Karayip Doları',
+ 'XDR' => 'Özel Çekme Hakkı (SDR)',
+ 'XEU' => 'Avrupa Para Birimi',
+ 'XFO' => 'Fransız Altın Frangı',
+ 'XFU' => 'Fransız UIC-Frangı',
+ 'XOF' => 'CFA Frangı BCEAO',
+ 'XPD' => 'Paladyum',
+ 'XPF' => 'CFP Frangı',
+ 'XPT' => 'Platin',
+ 'XRE' => 'RINET Fonları',
+ 'XSU' => 'Sucre',
+ 'XTS' => 'Test Para Birimi Kodu',
+ 'XUA' => 'ADB Hesap Birimi',
+ 'XXX' => 'Bilinmeyen Para Birimi',
+ 'YDD' => 'Yemen Dinarı',
+ 'YER' => 'Yemen Riyali',
+ 'YUD' => 'Yugoslav Dinarı (Hard)',
+ 'YUM' => 'Yeni Yugoslav Dinarı',
+ 'YUN' => 'Konvertibl Yugoslav Dinarı',
+ 'YUR' => 'İyileştirilmiş Yugoslav Dinarı (1992–1993)',
+ 'ZAL' => 'Güney Afrika Randı (finansal)',
+ 'ZAR' => 'Güney Afrika Randı',
+ 'ZMK' => 'Zambiya Kvaçası (1968–2012)',
+ 'ZMW' => 'Zambiya Kvaçası',
+ 'ZRN' => 'Yeni Zaire Zairesi',
+ 'ZRZ' => 'Zaire Zairesi',
+ 'ZWD' => 'Zimbabve Doları',
+ 'ZWL' => 'Zimbabve Doları (2009)',
+ 'ZWR' => 'Zimbabve Doları (2008)',
+);
+
+$currencySymbols = array(
+ 'ADP' => 'ADP',
+ 'AED' => 'AED',
+ 'AFN' => 'AFN',
+ 'ALL' => 'ALL',
+ 'AMD' => 'AMD',
+ 'ANG' => 'ANG',
+ 'AOA' => 'AOA',
+ 'ARA' => 'ARA',
+ 'ARL' => 'ARL',
+ 'ARM' => 'ARM',
+ 'ARP' => 'ARP',
+ 'ARS' => 'ARS',
+ 'ATS' => 'ATS',
+ 'AUD' => 'AU$',
+ 'AWG' => 'AWG',
+ 'AZM' => 'AZM',
+ 'AZN' => 'AZN',
+ 'BAD' => 'BAD',
+ 'BAM' => 'BAM',
+ 'BAN' => 'BAN',
+ 'BBD' => 'BBD',
+ 'BDT' => 'BDT',
+ 'BEC' => 'BEC',
+ 'BEF' => 'BEF',
+ 'BEL' => 'BEL',
+ 'BGL' => 'BGL',
+ 'BGM' => 'BGM',
+ 'BGN' => 'BGN',
+ 'BGO' => 'BGO',
+ 'BHD' => 'BHD',
+ 'BIF' => 'BIF',
+ 'BMD' => 'BMD',
+ 'BND' => 'BND',
+ 'BOB' => 'BOB',
+ 'BOL' => 'BOL',
+ 'BOP' => 'BOP',
+ 'BOV' => 'BOV',
+ 'BRB' => 'BRB',
+ 'BRC' => 'BRC',
+ 'BRE' => 'BRE',
+ 'BRL' => 'R$',
+ 'BRN' => 'BRN',
+ 'BRR' => 'BRR',
+ 'BRZ' => 'BRZ',
+ 'BSD' => 'BSD',
+ 'BTN' => 'BTN',
+ 'BUK' => 'BUK',
+ 'BWP' => 'BWP',
+ 'BYB' => 'BYB',
+ 'BYR' => 'BYR',
+ 'BZD' => 'BZD',
+ 'CAD' => 'CA$',
+ 'CDF' => 'CDF',
+ 'CHE' => 'CHE',
+ 'CHF' => 'CHF',
+ 'CHW' => 'CHW',
+ 'CLE' => 'CLE',
+ 'CLF' => 'CLF',
+ 'CLP' => 'CLP',
+ 'CNY' => 'CN¥',
+ 'COP' => 'COP',
+ 'COU' => 'COU',
+ 'CRC' => 'CRC',
+ 'CSD' => 'CSD',
+ 'CSK' => 'CSK',
+ 'CUC' => 'CUC',
+ 'CUP' => 'CUP',
+ 'CVE' => 'CVE',
+ 'CYP' => 'CYP',
+ 'CZK' => 'CZK',
+ 'DDM' => 'DDM',
+ 'DEM' => 'DEM',
+ 'DJF' => 'DJF',
+ 'DKK' => 'DKK',
+ 'DOP' => 'DOP',
+ 'DZD' => 'DZD',
+ 'ECS' => 'ECS',
+ 'ECV' => 'ECV',
+ 'EEK' => 'EEK',
+ 'EGP' => 'EGP',
+ 'ERN' => 'ERN',
+ 'ESA' => 'ESA',
+ 'ESB' => 'ESB',
+ 'ESP' => 'ESP',
+ 'ETB' => 'ETB',
+ 'EUR' => '€',
+ 'FIM' => 'FIM',
+ 'FJD' => 'FJD',
+ 'FKP' => 'FKP',
+ 'FRF' => 'FRF',
+ 'GBP' => '£',
+ 'GEK' => 'GEK',
+ 'GEL' => 'GEL',
+ 'GHS' => 'GHS',
+ 'GIP' => 'GIP',
+ 'GMD' => 'GMD',
+ 'GNF' => 'GNF',
+ 'GRD' => 'GRD',
+ 'GTQ' => 'GTQ',
+ 'GYD' => 'GYD',
+ 'HKD' => 'HK$',
+ 'HNL' => 'HNL',
+ 'HRD' => 'HRD',
+ 'HRK' => 'HRK',
+ 'HTG' => 'HTG',
+ 'HUF' => 'HUF',
+ 'IDR' => 'IDR',
+ 'IEP' => 'IEP',
+ 'ILP' => 'ILP',
+ 'ILS' => '₪',
+ 'INR' => '₹',
+ 'IQD' => 'IQD',
+ 'IRR' => 'IRR',
+ 'ISK' => 'ISK',
+ 'ITL' => 'ITL',
+ 'JMD' => 'JMD',
+ 'JOD' => 'JOD',
+ 'JPY' => '¥',
+ 'KES' => 'KES',
+ 'KGS' => 'KGS',
+ 'KHR' => 'KHR',
+ 'KMF' => 'KMF',
+ 'KPW' => 'KPW',
+ 'KRH' => 'KRH',
+ 'KRO' => 'KRO',
+ 'KRW' => '₩',
+ 'KWD' => 'KWD',
+ 'KYD' => 'KYD',
+ 'KZT' => 'KZT',
+ 'LAK' => 'LAK',
+ 'LBP' => 'LBP',
+ 'LKR' => 'LKR',
+ 'LRD' => 'LRD',
+ 'LTL' => 'LTL',
+ 'LTT' => 'LTT',
+ 'LUC' => 'LUC',
+ 'LUF' => 'LUF',
+ 'LUL' => 'LUL',
+ 'LVL' => 'LVL',
+ 'LVR' => 'LVR',
+ 'LYD' => 'LYD',
+ 'MAD' => 'MAD',
+ 'MCF' => 'MCF',
+ 'MDC' => 'MDC',
+ 'MDL' => 'MDL',
+ 'MGA' => 'MGA',
+ 'MKD' => 'MKD',
+ 'MKN' => 'MKN',
+ 'MMK' => 'MMK',
+ 'MNT' => 'MNT',
+ 'MOP' => 'MOP',
+ 'MRO' => 'MRO',
+ 'MTL' => 'MTL',
+ 'MTP' => 'MTP',
+ 'MUR' => 'MUR',
+ 'MVR' => 'MVR',
+ 'MWK' => 'MWK',
+ 'MXN' => 'MX$',
+ 'MXP' => 'MXP',
+ 'MXV' => 'MXV',
+ 'MYR' => 'MYR',
+ 'MZN' => 'MZN',
+ 'NAD' => 'NAD',
+ 'NGN' => 'NGN',
+ 'NIC' => 'NIC',
+ 'NIO' => 'NIO',
+ 'NLG' => 'NLG',
+ 'NOK' => 'NOK',
+ 'NPR' => 'NPR',
+ 'NZD' => 'NZ$',
+ 'OMR' => 'OMR',
+ 'PAB' => 'PAB',
+ 'PEI' => 'PEI',
+ 'PEN' => 'PEN',
+ 'PES' => 'PES',
+ 'PGK' => 'PGK',
+ 'PHP' => 'PHP',
+ 'PKR' => 'PKR',
+ 'PLN' => 'PLN',
+ 'PLZ' => 'PLZ',
+ 'PTE' => 'PTE',
+ 'PYG' => 'PYG',
+ 'QAR' => 'QAR',
+ 'ROL' => 'ROL',
+ 'RON' => 'RON',
+ 'RSD' => 'RSD',
+ 'RUB' => 'RUB',
+ 'RUR' => 'RUR',
+ 'RWF' => 'RWF',
+ 'SAR' => 'SAR',
+ 'SBD' => 'SBD',
+ 'SCR' => 'SCR',
+ 'SDG' => 'SDG',
+ 'SEK' => 'SEK',
+ 'SGD' => 'SGD',
+ 'SHP' => 'SHP',
+ 'SIT' => 'SIT',
+ 'SKK' => 'SKK',
+ 'SLL' => 'SLL',
+ 'SOS' => 'SOS',
+ 'SRD' => 'SRD',
+ 'SRG' => 'SRG',
+ 'SSP' => 'SSP',
+ 'STD' => 'STD',
+ 'SUR' => 'SUR',
+ 'SVC' => 'SVC',
+ 'SYP' => 'SYP',
+ 'SZL' => 'SZL',
+ 'THB' => '฿',
+ 'TJR' => 'TJR',
+ 'TJS' => 'TJS',
+ 'TMM' => 'TMM',
+ 'TMT' => 'TMT',
+ 'TND' => 'TND',
+ 'TOP' => 'TOP',
+ 'TPE' => 'TPE',
+ 'TRL' => 'TRL',
+ 'TRY' => '₺',
+ 'TTD' => 'TTD',
+ 'TWD' => 'NT$',
+ 'TZS' => 'TZS',
+ 'UAH' => 'UAH',
+ 'UAK' => 'UAK',
+ 'UGX' => 'UGX',
+ 'USD' => '$',
+ 'USN' => 'USN',
+ 'USS' => 'USS',
+ 'UYI' => 'UYI',
+ 'UYP' => 'UYP',
+ 'UYU' => 'UYU',
+ 'UZS' => 'UZS',
+ 'VEB' => 'VEB',
+ 'VEF' => 'VEF',
+ 'VND' => '₫',
+ 'VNN' => 'VNN',
+ 'VUV' => 'VUV',
+ 'WST' => 'WST',
+ 'XAF' => 'FCFA',
+ 'XAG' => 'XAG',
+ 'XAU' => 'XAU',
+ 'XCD' => 'EC$',
+ 'XEU' => 'XEU',
+ 'XOF' => 'CFA',
+ 'XPF' => 'CFPF',
+ 'XPT' => 'XPT',
+ 'XRE' => 'XRE',
+ 'XSU' => 'XSU',
+ 'XTS' => 'XTS',
+ 'XUA' => 'XUA',
+ 'YDD' => 'YDD',
+ 'YER' => 'YER',
+ 'YUD' => 'YUD',
+ 'YUM' => 'YUM',
+ 'YUN' => 'YUN',
+ 'YUR' => 'YUR',
+ 'ZAR' => 'ZAR',
+ 'ZMW' => 'ZMW',
+ 'ZWR' => 'ZWR',
+);
+
+$countryNames = array(
+ 'AC' => 'Ascension Adası',
+ 'AD' => 'Andorra',
+ 'AE' => 'Birleşik Arap Emirlikleri',
+ 'AF' => 'Afganistan',
+ 'AG' => 'Antigua ve Barbuda',
+ 'AI' => 'Anguilla',
+ 'AL' => 'Arnavutluk',
+ 'AM' => 'Ermenistan',
+ 'AN' => 'Hollanda Antilleri',
+ 'AO' => 'Angola',
+ 'AQ' => 'Antarktika',
+ 'AR' => 'Arjantin',
+ 'AS' => 'Amerikan Samoası',
+ 'AT' => 'Avusturya',
+ 'AU' => 'Avustralya',
+ 'AW' => 'Aruba',
+ 'AX' => 'Åland Adaları',
+ 'AZ' => 'Azerbaycan',
+ 'BA' => 'Bosna Hersek',
+ 'BB' => 'Barbados',
+ 'BD' => 'Bangladeş',
+ 'BE' => 'Belçika',
+ 'BF' => 'Burkina Faso',
+ 'BG' => 'Bulgaristan',
+ 'BH' => 'Bahreyn',
+ 'BI' => 'Burundi',
+ 'BJ' => 'Benin',
+ 'BL' => 'Saint Barthelemy',
+ 'BM' => 'Bermuda',
+ 'BN' => 'Brunei',
+ 'BO' => 'Bolivya',
+ 'BQ' => 'Karayip Hollanda',
+ 'BR' => 'Brezilya',
+ 'BS' => 'Bahamalar',
+ 'BT' => 'Butan',
+ 'BV' => 'Bouvet Adası',
+ 'BW' => 'Botsvana',
+ 'BY' => 'Beyaz Rusya',
+ 'BZ' => 'Belize',
+ 'CA' => 'Kanada',
+ 'CC' => 'Cocos (Keeling) Adaları',
+ 'CD' => 'Kongo - Kinşasa',
+ 'CF' => 'Orta Afrika Cumhuriyeti',
+ 'CG' => 'Kongo - Brazavil',
+ 'CH' => 'İsviçre',
+ 'CI' => 'Fildişi Sahili',
+ 'CK' => 'Cook Adaları',
+ 'CL' => 'Şili',
+ 'CM' => 'Kamerun',
+ 'CN' => 'Çin',
+ 'CO' => 'Kolombiya',
+ 'CP' => 'Clipperton Adası',
+ 'CR' => 'Kosta Rika',
+ 'CU' => 'Küba',
+ 'CV' => 'Cape Verde',
+ 'CW' => 'Curaçao',
+ 'CX' => 'Christmas Adası',
+ 'CY' => 'Güney Kıbrıs Rum Kesimi',
+ 'CZ' => 'Çek Cumhuriyeti',
+ 'DE' => 'Almanya',
+ 'DG' => 'Diego Garcia',
+ 'DJ' => 'Cibuti',
+ 'DK' => 'Danimarka',
+ 'DM' => 'Dominika',
+ 'DO' => 'Dominik Cumhuriyeti',
+ 'DZ' => 'Cezayir',
+ 'EA' => 'Septe ve Melilla',
+ 'EC' => 'Ekvador',
+ 'EE' => 'Estonya',
+ 'EG' => 'Mısır',
+ 'EH' => 'Batı Sahara',
+ 'ER' => 'Eritre',
+ 'ES' => 'İspanya',
+ 'ET' => 'Etiyopya',
+ 'EU' => 'Avrupa Birliği',
+ 'FI' => 'Finlandiya',
+ 'FJ' => 'Fiji',
+ 'FK' => 'Falkland Adaları',
+ 'FM' => 'Mikronezya',
+ 'FO' => 'Faroe Adaları',
+ 'FR' => 'Fransa',
+ 'GA' => 'Gabon',
+ 'GB' => 'BK',
+ 'GD' => 'Grenada',
+ 'GE' => 'Gürcistan',
+ 'GF' => 'Fransız Guyanası',
+ 'GG' => 'Guernsey',
+ 'GH' => 'Gana',
+ 'GI' => 'Cebelitarık',
+ 'GL' => 'Grönland',
+ 'GM' => 'Gambiya',
+ 'GN' => 'Gine',
+ 'GP' => 'Guadalupe',
+ 'GQ' => 'Ekvator Ginesi',
+ 'GR' => 'Yunanistan',
+ 'GS' => 'Güney Georgia ve Güney Sandwich Adaları',
+ 'GT' => 'Guatemala',
+ 'GU' => 'Guam',
+ 'GW' => 'Gine-Bissau',
+ 'GY' => 'Guyana',
+ 'HK' => 'Hong Kong',
+ 'HM' => 'Heard Adası ve McDonald Adaları',
+ 'HN' => 'Honduras',
+ 'HR' => 'Hırvatistan',
+ 'HT' => 'Haiti',
+ 'HU' => 'Macaristan',
+ 'IC' => 'Kanarya Adaları',
+ 'ID' => 'Endonezya',
+ 'IE' => 'İrlanda',
+ 'IL' => 'İsrail',
+ 'IM' => 'Man Adası',
+ 'IN' => 'Hindistan',
+ 'IO' => 'Britanya Hint Okyanusu Toprakları',
+ 'IQ' => 'Irak',
+ 'IR' => 'İran',
+ 'IS' => 'İzlanda',
+ 'IT' => 'İtalya',
+ 'JE' => 'Jersey',
+ 'JM' => 'Jamaika',
+ 'JO' => 'Ürdün',
+ 'JP' => 'Japonya',
+ 'KE' => 'Kenya',
+ 'KG' => 'Kırgızistan',
+ 'KH' => 'Kamboçya',
+ 'KI' => 'Kiribati',
+ 'KM' => 'Komorlar',
+ 'KN' => 'Saint Kitts ve Nevis',
+ 'KP' => 'Kuzey Kore',
+ 'KR' => 'Güney Kore',
+ 'KW' => 'Kuveyt',
+ 'KY' => 'Cayman Adaları',
+ 'KZ' => 'Kazakistan',
+ 'LA' => 'Laos',
+ 'LB' => 'Lübnan',
+ 'LC' => 'Saint Lucia',
+ 'LI' => 'Liechtenstein',
+ 'LK' => 'Sri Lanka',
+ 'LR' => 'Liberya',
+ 'LS' => 'Lesoto',
+ 'LT' => 'Litvanya',
+ 'LU' => 'Lüksemburg',
+ 'LV' => 'Letonya',
+ 'LY' => 'Libya',
+ 'MA' => 'Fas',
+ 'MC' => 'Monako',
+ 'MD' => 'Moldova',
+ 'ME' => 'Karadağ',
+ 'MF' => 'Saint Martin',
+ 'MG' => 'Madagaskar',
+ 'MH' => 'Marshall Adaları',
+ 'MK' => 'Makedonya',
+ 'ML' => 'Mali',
+ 'MM' => 'Myanmar (Burma)',
+ 'MN' => 'Moğolistan',
+ 'MO' => 'Makao',
+ 'MP' => 'Kuzey Mariana Adaları',
+ 'MQ' => 'Martinik',
+ 'MR' => 'Moritanya',
+ 'MS' => 'Montserrat',
+ 'MT' => 'Malta',
+ 'MU' => 'Mauritius',
+ 'MV' => 'Maldivler',
+ 'MW' => 'Malavi',
+ 'MX' => 'Meksika',
+ 'MY' => 'Malezya',
+ 'MZ' => 'Mozambik',
+ 'NA' => 'Namibya',
+ 'NC' => 'Yeni Kaledonya',
+ 'NE' => 'Nijer',
+ 'NF' => 'Norfolk Adası',
+ 'NG' => 'Nijerya',
+ 'NI' => 'Nikaragua',
+ 'NL' => 'Hollanda',
+ 'NO' => 'Norveç',
+ 'NP' => 'Nepal',
+ 'NR' => 'Nauru',
+ 'NU' => 'Niue',
+ 'NZ' => 'Yeni Zelanda',
+ 'OM' => 'Umman',
+ 'PA' => 'Panama',
+ 'PE' => 'Peru',
+ 'PF' => 'Fransız Polinezyası',
+ 'PG' => 'Papua Yeni Gine',
+ 'PH' => 'Filipinler',
+ 'PK' => 'Pakistan',
+ 'PL' => 'Polonya',
+ 'PM' => 'Saint Pierre ve Miquelon',
+ 'PN' => 'Pitcairn Adaları',
+ 'PR' => 'Porto Riko',
+ 'PS' => 'Filistin',
+ 'PT' => 'Portekiz',
+ 'PW' => 'Palau',
+ 'PY' => 'Paraguay',
+ 'QA' => 'Katar',
+ 'QO' => 'Uzak Okyanusya',
+ 'RE' => 'Réunion',
+ 'RO' => 'Romanya',
+ 'RS' => 'Sırbistan',
+ 'RU' => 'Rusya',
+ 'RW' => 'Ruanda',
+ 'SA' => 'Suudi Arabistan',
+ 'SB' => 'Solomon Adaları',
+ 'SC' => 'Seyşeller',
+ 'SD' => 'Sudan',
+ 'SE' => 'İsveç',
+ 'SG' => 'Singapur',
+ 'SH' => 'Saint Helena',
+ 'SI' => 'Slovenya',
+ 'SJ' => 'Svalbard ve Jan Mayen Adaları',
+ 'SK' => 'Slovakya',
+ 'SL' => 'Sierra Leone',
+ 'SM' => 'San Marino',
+ 'SN' => 'Senegal',
+ 'SO' => 'Somali',
+ 'SR' => 'Surinam',
+ 'SS' => 'Güney Sudan',
+ 'ST' => 'São Tomé ve Príncipe',
+ 'SV' => 'El Salvador',
+ 'SX' => 'Sint Maarten',
+ 'SY' => 'Suriye',
+ 'SZ' => 'Svaziland',
+ 'TA' => 'Tristan da Cunha',
+ 'TC' => 'Turks ve Caicos Adaları',
+ 'TD' => 'Çad',
+ 'TF' => 'Fransız Güney Toprakları',
+ 'TG' => 'Togo',
+ 'TH' => 'Tayland',
+ 'TJ' => 'Tacikistan',
+ 'TK' => 'Tokelau',
+ 'TL' => 'Timor-Leste',
+ 'TM' => 'Türkmenistan',
+ 'TN' => 'Tunus',
+ 'TO' => 'Tonga',
+ 'TR' => 'Türkiye',
+ 'TT' => 'Trinidad ve Tobago',
+ 'TV' => 'Tuvalu',
+ 'TW' => 'Tayvan',
+ 'TZ' => 'Tanzanya',
+ 'UA' => 'Ukrayna',
+ 'UG' => 'Uganda',
+ 'UM' => 'ABD Uzak Adaları',
+ 'US' => 'ABD',
+ 'UY' => 'Uruguay',
+ 'UZ' => 'Özbekistan',
+ 'VA' => 'Vatikan',
+ 'VC' => 'Saint Vincent ve Grenadinler',
+ 'VE' => 'Venezuela',
+ 'VG' => 'Britanya Virjin Adaları',
+ 'VI' => 'ABD Virjin Adaları',
+ 'VN' => 'Vietnam',
+ 'VU' => 'Vanuatu',
+ 'WF' => 'Wallis ve Futuna Adaları',
+ 'WS' => 'Samoa',
+ 'XK' => 'Kosova',
+ 'YE' => 'Yemen',
+ 'YT' => 'Mayotte',
+ 'ZA' => 'Güney Afrika',
+ 'ZM' => 'Zambiya',
+ 'ZW' => 'Zimbabve',
+);
+
+$timeUnits = array(
+ 'day-future-one' => '{0} gün sonra',
+ 'day-future-other' => '{0} gün sonra',
+ 'day-narrow-future-one' => '{0} gün sonra',
+ 'day-narrow-future-other' => '{0} gün sonra',
+ 'day-narrow-past-one' => '{0} gün önce',
+ 'day-narrow-past-other' => '{0} gün önce',
+ 'day-one' => '{0} gün',
+ 'day-other' => '{0} gün',
+ 'day-past-one' => '{0} gün önce',
+ 'day-past-other' => '{0} gün önce',
+ 'day-short-future-one' => '{0} gün sonra',
+ 'day-short-future-other' => '{0} gün sonra',
+ 'day-short-past-one' => '{0} gün önce',
+ 'day-short-past-other' => '{0} gün önce',
+ 'hour-future-one' => '{0} saat sonra',
+ 'hour-future-other' => '{0} saat sonra',
+ 'hour-narrow-future-one' => '{0} sa. sonra',
+ 'hour-narrow-future-other' => '{0} sa. sonra',
+ 'hour-narrow-past-one' => '{0} sa. önce',
+ 'hour-narrow-past-other' => '{0} sa. önce',
+ 'hour-one' => '{0} saat',
+ 'hour-other' => '{0} saat',
+ 'hour-past-one' => '{0} saat önce',
+ 'hour-past-other' => '{0} saat önce',
+ 'hour-short-future-one' => '{0} sa. sonra',
+ 'hour-short-future-other' => '{0} sa. sonra',
+ 'hour-short-past-one' => '{0} sa. önce',
+ 'hour-short-past-other' => '{0} sa. önce',
+ 'microsecond-one' => '{0} mikrosaniye',
+ 'microsecond-other' => '{0} mikrosaniye',
+ 'millisecond-one' => '{0} milisaniye',
+ 'millisecond-other' => '{0} milisaniye',
+ 'minute-future-one' => '{0} dakika sonra',
+ 'minute-future-other' => '{0} dakika sonra',
+ 'minute-narrow-future-one' => '{0} dk. sonra',
+ 'minute-narrow-future-other' => '{0} dk. sonra',
+ 'minute-narrow-past-one' => '{0} dk. önce',
+ 'minute-narrow-past-other' => '{0} dk. önce',
+ 'minute-one' => '{0} dakika',
+ 'minute-other' => '{0} dakika',
+ 'minute-past-one' => '{0} dakika önce',
+ 'minute-past-other' => '{0} dakika önce',
+ 'minute-short-future-one' => '{0} dk. sonra',
+ 'minute-short-future-other' => '{0} dk. sonra',
+ 'minute-short-past-one' => '{0} dk. önce',
+ 'minute-short-past-other' => '{0} dk. önce',
+ 'month-future-one' => '{0} ay sonra',
+ 'month-future-other' => '{0} ay sonra',
+ 'month-narrow-future-one' => '{0} ay sonra',
+ 'month-narrow-future-other' => '{0} ay sonra',
+ 'month-narrow-past-one' => '{0} ay önce',
+ 'month-narrow-past-other' => '{0} ay önce',
+ 'month-one' => '{0} ay',
+ 'month-other' => '{0} ay',
+ 'month-past-one' => '{0} ay önce',
+ 'month-past-other' => '{0} ay önce',
+ 'month-short-future-one' => '{0} ay sonra',
+ 'month-short-future-other' => '{0} ay sonra',
+ 'month-short-past-one' => '{0} ay önce',
+ 'month-short-past-other' => '{0} ay önce',
+ 'nanosecond-one' => '{0} nanosaniye',
+ 'nanosecond-other' => '{0} nanosaniye',
+ 'quarter-future-one' => '{0} çeyrek sonra',
+ 'quarter-future-other' => '{0} çeyrek sonra',
+ 'quarter-narrow-future-one' => '{0} çyr. sonra',
+ 'quarter-narrow-future-other' => '{0} çyr. sonra',
+ 'quarter-narrow-past-one' => '{0} çyr. önce',
+ 'quarter-narrow-past-other' => '{0} çyr. önce',
+ 'quarter-past-one' => '{0} çeyrek önce',
+ 'quarter-past-other' => '{0} çeyrek önce',
+ 'quarter-short-future-one' => '{0} çyr. sonra',
+ 'quarter-short-future-other' => '{0} çyr. sonra',
+ 'quarter-short-past-one' => '{0} çyr. önce',
+ 'quarter-short-past-other' => '{0} çyr. önce',
+ 'second-future-one' => '{0} saniye sonra',
+ 'second-future-other' => '{0} saniye sonra',
+ 'second-narrow-future-one' => '{0} sn. sonra',
+ 'second-narrow-future-other' => '{0} sn. sonra',
+ 'second-narrow-past-one' => '{0} sn. önce',
+ 'second-narrow-past-other' => '{0} sn. önce',
+ 'second-one' => '{0} saniye',
+ 'second-other' => '{0} saniye',
+ 'second-past-one' => '{0} saniye önce',
+ 'second-past-other' => '{0} saniye önce',
+ 'second-short-future-one' => '{0} sn. sonra',
+ 'second-short-future-other' => '{0} sn. sonra',
+ 'second-short-past-one' => '{0} sn. önce',
+ 'second-short-past-other' => '{0} sn. önce',
+ 'week-future-one' => '{0} hafta sonra',
+ 'week-future-other' => '{0} hafta sonra',
+ 'week-narrow-future-one' => '{0} hf. sonra',
+ 'week-narrow-future-other' => '{0} hf. sonra',
+ 'week-narrow-past-one' => '{0} hf. önce',
+ 'week-narrow-past-other' => '{0} hf. önce',
+ 'week-one' => '{0} hafta',
+ 'week-other' => '{0} hafta',
+ 'week-past-one' => '{0} hafta önce',
+ 'week-past-other' => '{0} hafta önce',
+ 'week-short-future-one' => '{0} hf. sonra',
+ 'week-short-future-other' => '{0} hf. sonra',
+ 'week-short-past-one' => '{0} hf. önce',
+ 'week-short-past-other' => '{0} hf. önce',
+ 'year-future-one' => '{0} yıl sonra',
+ 'year-future-other' => '{0} yıl sonra',
+ 'year-narrow-future-one' => '{0} yıl sonra',
+ 'year-narrow-future-other' => '{0} yıl sonra',
+ 'year-narrow-past-one' => '{0} yıl önce',
+ 'year-narrow-past-other' => '{0} yıl önce',
+ 'year-one' => '{0} yıl',
+ 'year-other' => '{0} yıl',
+ 'year-past-one' => '{0} yıl önce',
+ 'year-past-other' => '{0} yıl önce',
+ 'year-short-future-one' => '{0} yıl sonra',
+ 'year-short-future-other' => '{0} yıl sonra',
+ 'year-short-past-one' => '{0} yıl önce',
+ 'year-short-past-other' => '{0} yıl önce',
+);
diff --git a/MLEB/cldr/CldrNames/CldrNamesTs.php b/MLEB/cldr/CldrNames/CldrNamesTs.php
new file mode 100644
index 00000000..297efdef
--- /dev/null
+++ b/MLEB/cldr/CldrNames/CldrNamesTs.php
@@ -0,0 +1,29 @@
+<?php
+
+$languageNames = array(
+ 'cs' => 'Xi Czech',
+ 'da' => 'Xi Danish',
+ 'de' => 'Xi Jarimani',
+ 'el' => 'Xi Giriki',
+ 'en' => 'Xi Nghezi',
+ 'es' => 'Xi spain',
+ 'et' => 'hi xi Estonia',
+ 'fi' => 'Xi Finnish',
+ 'fr' => 'Xi Furwa',
+ 'he' => 'XiHeberu',
+ 'hu' => 'hi xi Hungary',
+ 'is' => 'hi xi Iceland',
+ 'it' => 'Xi Ithali',
+ 'ja' => 'Xi Japani',
+ 'ko' => 'Xikorea',
+ 'lt' => 'hi xi Lithuania',
+ 'lv' => 'hi xi Latvia',
+ 'nl' => 'Xi bunu',
+ 'no' => 'Xi Norway',
+ 'pl' => 'Xi Polixi',
+ 'pt' => 'Putukezi',
+ 'ro' => 'hi xi Romania',
+ 'ru' => 'Xi Rhaxiya',
+ 'sv' => 'Xi Swiden',
+ 'ts' => 'Xitsonga',
+);
diff --git a/MLEB/cldr/CldrNames/CldrNamesTzm.php b/MLEB/cldr/CldrNames/CldrNamesTzm.php
new file mode 100644
index 00000000..493a9ac7
--- /dev/null
+++ b/MLEB/cldr/CldrNames/CldrNamesTzm.php
@@ -0,0 +1,336 @@
+<?php
+
+$languageNames = array(
+ 'ak' => 'Takanit',
+ 'am' => 'Tamharit',
+ 'ar' => 'Taεrabt',
+ 'be' => 'Tabilarusit',
+ 'bg' => 'Tabelɣarit',
+ 'bn' => 'Tabinɣalit',
+ 'cs' => 'Tačikt',
+ 'de' => 'Talmanit',
+ 'el' => 'Tayunanit',
+ 'en' => 'Tanglizt',
+ 'es' => 'tasbelyunit',
+ 'fa' => 'Tafarisit',
+ 'fr' => 'Tafṛansist',
+ 'ha' => 'Tahawsat',
+ 'hi' => 'Tahindit',
+ 'hu' => 'Tahenɣarit',
+ 'id' => 'Tindunisit',
+ 'ig' => 'Tigbut',
+ 'it' => 'Taṭalyant',
+ 'ja' => 'Tajappunit',
+ 'jv' => 'Tajavanit',
+ 'km' => 'Taxmert ,Talammast',
+ 'ko' => 'Takurit',
+ 'ms' => 'Tamalizit',
+ 'my' => 'Taburmanit',
+ 'ne' => 'Tanippalit',
+ 'nl' => 'Tahulanḍit',
+ 'pa' => 'Tabenjabit',
+ 'pl' => 'Tappulunit',
+ 'pt' => 'Taburtuɣalit',
+ 'ro' => 'Taṛumanit',
+ 'ru' => 'Tarusit',
+ 'rw' => 'Tarwandit',
+ 'so' => 'Taṣumalit',
+ 'sv' => 'Taswidit',
+ 'ta' => 'Tatamilt',
+ 'th' => 'Taṭayt',
+ 'tr' => 'Taturkit',
+ 'tzm' => 'Tamaziɣt',
+ 'uk' => 'Tukranit',
+ 'ur' => 'Turdut',
+ 'vi' => 'Taviṭnamit',
+ 'yo' => 'Tayurubat',
+ 'zh' => 'Tacinwit,Mandarin',
+ 'zu' => 'tazulut',
+);
+
+$currencyNames = array(
+ 'AED' => 'Derhem Uymarati',
+ 'AOA' => 'Kwanza Unguli',
+ 'AUD' => 'Ḍular Usṭrali',
+ 'BHD' => 'Ḍinar Ubaḥrayni',
+ 'BIF' => 'Frank Uburundi',
+ 'BWP' => 'Pula Ubutswani',
+ 'CAD' => 'Ḍular Ukanadi',
+ 'CDF' => 'Frank Ukunguli',
+ 'CHF' => 'Frank Uswisri',
+ 'CNY' => 'Ywan Renminbi Ucinwi',
+ 'CVE' => 'Iskudu Ukabuvirdyani',
+ 'DJF' => 'Frank Uğibuti',
+ 'DZD' => 'Ḍinar Udzayri',
+ 'EGP' => 'Junih Umiṣṛi',
+ 'ERN' => 'Nakfa Uyritri',
+ 'ETB' => 'Birr Uyityuppi',
+ 'EUR' => 'Uṛu',
+ 'GBP' => 'Junih Usterlini Ubriṭani',
+ 'GHC' => 'Sidi Uɣani',
+ 'GMD' => 'Dalasi Agambi',
+ 'GNS' => 'Frank Uɣini',
+ 'INR' => 'Rupi Uḥindi',
+ 'JPY' => 'Yann Ujappuni',
+ 'KES' => 'Cillin Ukini',
+ 'KMF' => 'Frank Uqumuri',
+ 'LRD' => 'Ḍular Ulibiri',
+ 'LSL' => 'Luti Ulusuṭi',
+ 'LYD' => 'Ḍinar Ulibi',
+ 'MAD' => 'Derhem Umeṛṛuki',
+ 'MGA' => 'Aryari Umalɣaci',
+ 'MRO' => 'Uqiyya Umuritani',
+ 'MUR' => 'Rupi Umurisi',
+ 'MWK' => 'Kwača Umalawi',
+ 'MZM' => 'Mitikal Umuzambiqi',
+ 'NAD' => 'Ḍular Unamibi',
+ 'NGN' => 'Nayra Unijiri',
+ 'RWF' => 'Frank Urwandi',
+ 'SAR' => 'Ryal Usaεudi',
+ 'SCR' => 'Rupi Usicili',
+ 'SDG' => 'Junih Usudani',
+ 'SDP' => 'Junih Usudani (1956–2007)',
+ 'SHP' => 'Junih Usantehilini',
+ 'SLL' => 'Lyun Usirralyuni',
+ 'SOS' => 'Cilin Uṣumali',
+ 'STD' => 'Dubra Usawṭumi',
+ 'SZL' => 'Lilanjini Uswazi',
+ 'TND' => 'Ḍinar Utunsi',
+ 'TZS' => 'Cilin Uṭanzani',
+ 'UGX' => 'Cilin Uɣandi (1966–1987)',
+ 'USD' => 'Ḍular Umirikani',
+ 'XAF' => 'Frank CFA (BEAC)',
+ 'XOF' => 'Frank CFA (BCEAO)',
+ 'ZAR' => 'Rand Ufriki Unzul',
+ 'ZMK' => 'Kwača Uzambi (1968–2012)',
+ 'ZMW' => 'Kwača Uzambi',
+ 'ZWD' => 'Ḍular Uzimbabwi',
+);
+
+$countryNames = array(
+ 'AD' => 'Anḍurra',
+ 'AE' => 'Imarat Tiεrabin Tidduklin',
+ 'AF' => 'Afɣanistan',
+ 'AG' => 'Antigwa d Barbuda',
+ 'AI' => 'Angwilla',
+ 'AL' => 'Albanya',
+ 'AM' => 'Arminya',
+ 'AN' => 'Antil Tihulanḍiyyin',
+ 'AO' => 'Angula',
+ 'AR' => 'Arjuntin',
+ 'AS' => 'Samwa Imirikaniyyin',
+ 'AT' => 'Ustriyya',
+ 'AU' => 'Usṭralya',
+ 'AW' => 'Aruba',
+ 'AZ' => 'Azerbiǧan',
+ 'BA' => 'Busna-d-Hirsik',
+ 'BB' => 'Barbadus',
+ 'BD' => 'Bangladic',
+ 'BE' => 'Beljika',
+ 'BF' => 'Burkina Fasu',
+ 'BG' => 'Belɣarya',
+ 'BH' => 'Baḥrayn',
+ 'BI' => 'Burundi',
+ 'BJ' => 'Binin',
+ 'BM' => 'Birmuda',
+ 'BN' => 'Brunay',
+ 'BO' => 'Bulivya',
+ 'BR' => 'Bṛazil',
+ 'BS' => 'Bahamas',
+ 'BT' => 'Buṭan',
+ 'BW' => 'Butswana',
+ 'BY' => 'Bilarusya',
+ 'BZ' => 'Biliz',
+ 'CA' => 'Kanada',
+ 'CD' => 'Tagduda Tadimuqraṭit n Kungu',
+ 'CF' => 'Tagduda n Afrika Wammas',
+ 'CG' => 'Kungu',
+ 'CH' => 'Swisra',
+ 'CI' => 'Taɣazut n Uszer',
+ 'CK' => 'Tigzirin n Kuk',
+ 'CL' => 'Ccili',
+ 'CM' => 'Kamerun',
+ 'CN' => 'Ṣṣin',
+ 'CO' => 'Kulumbya',
+ 'CR' => 'Kusṭa Rika',
+ 'CU' => 'kuba',
+ 'CV' => 'Tigzirin n Iɣf Uzegzaw',
+ 'CY' => 'Qubrus',
+ 'CZ' => 'Tagduda n Čik',
+ 'DE' => 'Almanya',
+ 'DJ' => 'Ǧibuti',
+ 'DK' => 'Danmark',
+ 'DM' => 'Ḍuminika',
+ 'DO' => 'Tagduda n Ḍuminikan',
+ 'DZ' => 'Dzayer',
+ 'EC' => 'Ikwaḍur',
+ 'EE' => 'Isṭunya',
+ 'EG' => 'Miṣr',
+ 'ER' => 'Iritrya',
+ 'ES' => 'Sbanya',
+ 'ET' => 'Ityupya',
+ 'FI' => 'Finlanḍa',
+ 'FJ' => 'Fiji',
+ 'FK' => 'Tigzirin n Falkland',
+ 'FM' => 'Mikrunizya',
+ 'FR' => 'Fṛansa',
+ 'GA' => 'Gabun',
+ 'GB' => 'Tagelda Taddukelt',
+ 'GD' => 'Grinada',
+ 'GE' => 'Jyurjya',
+ 'GF' => 'Guyana Tafransist',
+ 'GH' => 'Ɣana',
+ 'GI' => 'Jibralṭar',
+ 'GL' => 'Grinlanḍa',
+ 'GM' => 'Gambya',
+ 'GN' => 'Ɣinya',
+ 'GP' => 'Gwadalup',
+ 'GQ' => 'Ɣinya Tikwaṭur it',
+ 'GR' => 'Yunan',
+ 'GT' => 'Gwatimala',
+ 'GU' => 'Gwam',
+ 'GW' => 'Ɣinya-Bissaw',
+ 'GY' => 'Guyana',
+ 'HN' => 'Hinduras',
+ 'HR' => 'Krwatya',
+ 'HT' => 'Hayti',
+ 'HU' => 'Henɣarya',
+ 'ID' => 'Indunizya',
+ 'IE' => 'Irlanḍa',
+ 'IL' => 'Israeil',
+ 'IN' => 'Hind',
+ 'IO' => 'Amur n Agaraw Uhindi Ubṛiṭani',
+ 'IQ' => 'Ɛiraq',
+ 'IR' => 'Iran',
+ 'IS' => 'Islanḍa',
+ 'IT' => 'Iṭalya',
+ 'JM' => 'Jamayka',
+ 'JO' => 'Urḍun',
+ 'JP' => 'Jjappun',
+ 'KE' => 'Kinya',
+ 'KG' => 'Kirɣistan',
+ 'KH' => 'Kambudj',
+ 'KI' => 'Kiribati',
+ 'KM' => 'Qumur',
+ 'KN' => 'Santekits d Nivis',
+ 'KP' => 'Kurya Tugafat',
+ 'KR' => 'Kurya Tunẓult',
+ 'KW' => 'Kuwwayt',
+ 'KY' => 'Tigzirin n Kayman',
+ 'KZ' => 'Kazaxistan',
+ 'LA' => 'Laws',
+ 'LB' => 'Lubnan',
+ 'LC' => 'Santelusya',
+ 'LI' => 'Lictencṭayn',
+ 'LK' => 'Srilanka',
+ 'LR' => 'Libirya',
+ 'LS' => 'Lisuṭu',
+ 'LT' => 'Litwanya',
+ 'LU' => 'Liksumburg',
+ 'LV' => 'Liṭṭunya',
+ 'LY' => 'Libya',
+ 'MA' => 'Meṛṛuk',
+ 'MC' => 'Munaku',
+ 'MD' => 'Mulḍavya',
+ 'MG' => 'Madaɣacqar',
+ 'MH' => 'Tigzirin n Marcal',
+ 'MK' => 'Maqdunya',
+ 'ML' => 'Mali',
+ 'MM' => 'Myanmar',
+ 'MN' => 'Manɣulya',
+ 'MP' => 'Tigzirin n Maryana Tugafat',
+ 'MQ' => 'Martinik',
+ 'MR' => 'Muritanya',
+ 'MS' => 'Muntsirra',
+ 'MT' => 'Malṭa',
+ 'MU' => 'Muris',
+ 'MV' => 'Maldiv',
+ 'MW' => 'Malawi',
+ 'MX' => 'Miksik',
+ 'MY' => 'Malizya',
+ 'MZ' => 'Muzambiq',
+ 'NA' => 'Namibya',
+ 'NC' => 'kalidunya Tamaynut',
+ 'NE' => 'Nnijer',
+ 'NF' => 'Tigzirt Nurfulk',
+ 'NG' => 'Nijiria',
+ 'NI' => 'Nikaragwa',
+ 'NL' => 'Hulanḍa',
+ 'NO' => 'Nnurwij',
+ 'NP' => 'Nippal',
+ 'NR' => 'Nawru',
+ 'NU' => 'Niwi',
+ 'NZ' => 'Zilanḍa Tamaynut',
+ 'OM' => 'Ɛumman',
+ 'PA' => 'Panama',
+ 'PE' => 'Piru',
+ 'PF' => 'Pulinizya Tafransist',
+ 'PG' => 'Papwa Ɣinya Tamaynut',
+ 'PH' => 'Filippin',
+ 'PK' => 'Pakistan',
+ 'PL' => 'Pulunya',
+ 'PM' => 'Santepyir d Mikelun',
+ 'PN' => 'Pitkirn',
+ 'PR' => 'Purturiku',
+ 'PS' => 'Agemmaḍ Ugut d Ɣazza Ifilisṭiniyen',
+ 'PT' => 'Purtuɣal',
+ 'PW' => 'Palu',
+ 'PY' => 'Paragway',
+ 'QA' => 'Qaṭar',
+ 'RE' => 'Riyyunyun',
+ 'RO' => 'Ṛumanya',
+ 'RU' => 'Rusya',
+ 'RW' => 'Ruwwanḍa',
+ 'SA' => 'Ssaεudiyya Taεrabt',
+ 'SB' => 'Tigzirin n Salumun',
+ 'SC' => 'Ssicil',
+ 'SD' => 'Ssudan',
+ 'SE' => 'Ssewwid',
+ 'SG' => 'Sanɣafura',
+ 'SH' => 'Santehilin',
+ 'SI' => 'Sluvinya',
+ 'SK' => 'Sluvakya',
+ 'SL' => 'Siralyun',
+ 'SM' => 'Sanmarinu',
+ 'SN' => 'Ssiniɣal',
+ 'SO' => 'Ṣṣumal',
+ 'SR' => 'Surinam',
+ 'ST' => 'Sawṭumi d Prinsip',
+ 'SV' => 'Salvaḍur',
+ 'SY' => 'Surya',
+ 'SZ' => 'Swazilanḍa',
+ 'TC' => 'Tigzirin Turkiyyin d Tikaykusin',
+ 'TD' => 'Tcad',
+ 'TG' => 'Ṭṭugu',
+ 'TH' => 'Ṭaylanḍa',
+ 'TJ' => 'Ṭaǧikistan',
+ 'TK' => 'Tuklu',
+ 'TL' => 'Timur Tagmuṭ',
+ 'TM' => 'Turkmanistan',
+ 'TN' => 'Tunes',
+ 'TO' => 'Ṭunga',
+ 'TR' => 'Turkya',
+ 'TT' => 'Trinidad d Ṭubagu',
+ 'TV' => 'Ṭuvalu',
+ 'TW' => 'Ṭaywan',
+ 'TZ' => 'Ṭanzanya',
+ 'UA' => 'Ukranya',
+ 'UG' => 'Uɣanda',
+ 'US' => 'Iwunak Idduklen n Amirika',
+ 'UY' => 'Urugway',
+ 'UZ' => 'Uzbakistan',
+ 'VA' => 'Awank iɣrem n Vatikan',
+ 'VC' => 'Santevinsent d Grinadin',
+ 'VE' => 'Vinzwilla',
+ 'VG' => 'Tigzirin (Virgin) Tibṛiṭaniyin',
+ 'VI' => 'Tigzirin n Virjin n Iwunak Yedduklen',
+ 'VN' => 'Viṭnam',
+ 'VU' => 'Vanwatu',
+ 'WF' => 'Walis d Futuna',
+ 'WS' => 'Samwa',
+ 'YE' => 'Yaman',
+ 'YT' => 'Mayuṭ',
+ 'ZA' => 'Tafrikt Tunẓul',
+ 'ZM' => 'Zambya',
+ 'ZW' => 'Zimbabwi',
+);
diff --git a/MLEB/cldr/CldrNames/CldrNamesUg.php b/MLEB/cldr/CldrNames/CldrNamesUg.php
new file mode 100644
index 00000000..17144d3c
--- /dev/null
+++ b/MLEB/cldr/CldrNames/CldrNamesUg.php
@@ -0,0 +1,1124 @@
+<?php
+
+$languageNames = array(
+ 'aa' => 'ئافارچە',
+ 'ab' => 'ئابخازچە',
+ 'ace' => 'ئاتجېچە',
+ 'ach' => 'ئاچولىچە',
+ 'ada' => 'ئاداڭمېچە',
+ 'ady' => 'ئادىگېيچە',
+ 'ae' => 'ئاۋېستاچە',
+ 'af' => 'ئافرىكانچە',
+ 'afh' => 'ئافرىخىلىچە',
+ 'agq' => 'ئاگەمچە',
+ 'ain' => 'ئاينۇچە',
+ 'ak' => 'ئاكانچە',
+ 'akk' => 'ئاككادچە',
+ 'ale' => 'ئالېيۇتچە',
+ 'alt' => 'جەنۇبى ئالتاي تىللىرى',
+ 'am' => 'ئامخاراچە',
+ 'an' => 'ئاراگونچە',
+ 'ang' => 'قەدىمكى ئىنگلىزچە',
+ 'anp' => 'ئانگىكاچە',
+ 'ar' => 'ئەرەبچە',
+ 'ar-001' => 'ھازىرقى زامان ئۆلچەملىك ئەرەبچە',
+ 'arc' => 'ئارامۇچە',
+ 'arn' => 'ماپۇچە',
+ 'arp' => 'ئاراپاخوچە',
+ 'arw' => 'ئاراۋاكچە',
+ 'as' => 'ئاسسامچە',
+ 'asa' => 'ئاسۇچە',
+ 'ast' => 'ئاستۇرىيەچە',
+ 'av' => 'ئاۋارچە',
+ 'awa' => 'ئاۋادىچە',
+ 'ay' => 'ئايماراچە',
+ 'az' => 'ئەزەرىچە',
+ 'ba' => 'باشقىرتچە',
+ 'bal' => 'بېلۇجىچە',
+ 'ban' => 'بالىچە',
+ 'bas' => 'باساچە',
+ 'bax' => 'بامۇنچە',
+ 'bbj' => 'گومالاچە',
+ 'be' => 'بېلارۇسچە',
+ 'bej' => 'بېجاچە',
+ 'bem' => 'بېمباچە',
+ 'bez' => 'بېناچە',
+ 'bfd' => 'بافۇتچە',
+ 'bg' => 'بۇلغارچە',
+ 'bho' => 'بوجپۇرىچە',
+ 'bi' => 'بىسلاماچە',
+ 'bik' => 'بىكولچە',
+ 'bin' => 'بىنىچە',
+ 'bkm' => 'كومچە',
+ 'bla' => 'سىكسىكاچە',
+ 'bm' => 'بامباراچە',
+ 'bn' => 'بېنگالچە',
+ 'bo' => 'تىبەتچە',
+ 'br' => 'بىرېتونچە',
+ 'bra' => 'بىراجچە',
+ 'brx' => 'بودوچە',
+ 'bs' => 'بوسنىيەچە',
+ 'bss' => 'ئاكۇسچە',
+ 'bua' => 'بۇرىياتچە',
+ 'bug' => 'بۇگىچە',
+ 'bum' => 'بۇلۇچە',
+ 'byn' => 'بىلىنچە',
+ 'byv' => 'مېدۇمباچە',
+ 'ca' => 'كاتالانچە',
+ 'cad' => 'كاددوچە',
+ 'car' => 'كارىبچە',
+ 'cay' => 'كايۇگاچە',
+ 'cch' => 'ئاتسامچە',
+ 'ce' => 'چېچىنچە',
+ 'ceb' => 'سېبۇچە',
+ 'cgg' => 'چىگاچە',
+ 'ch' => 'چامورروچە',
+ 'chb' => 'چىبچاچە',
+ 'chg' => 'چاغاتايچە',
+ 'chk' => 'چۇكچە',
+ 'chm' => 'مارىچە',
+ 'chn' => 'چىنۇك-ژارگونچە',
+ 'cho' => 'چوكتاۋچە',
+ 'chp' => 'چىپېۋيانچە',
+ 'chr' => 'چېروكىچە',
+ 'chy' => 'چېيېنچە',
+ 'ckb' => 'سورانى كۇردچە',
+ 'co' => 'كورساچە',
+ 'cop' => 'كوپتىكچە',
+ 'cr' => 'كرىچە',
+ 'crh' => 'قىرىم تۈركچە',
+ 'cs' => 'چېخچە',
+ 'csb' => 'كاسزۇبىچە',
+ 'cu' => 'قەدىمكى سلاۋيانچە',
+ 'cv' => 'چۇۋاشچە',
+ 'cy' => 'ۋېلشچە',
+ 'da' => 'دانىشچە',
+ 'dak' => 'داكوتاچە',
+ 'dar' => 'دارگىۋاچە',
+ 'dav' => 'تايتاچە',
+ 'de' => 'گېرمانچە',
+ 'de-at' => 'ئاۋستىرىيە گېرمانچە',
+ 'de-ch' => 'شىۋىتسارىيە ئېگىزلىك گېرمانچە',
+ 'del' => 'دېلاۋارېچە',
+ 'den' => 'سلاۋچە',
+ 'dgr' => 'دوگرىبچە',
+ 'din' => 'دىنكاچە',
+ 'dje' => 'زارماچە',
+ 'doi' => 'دوگرىچە',
+ 'dsb' => 'توۋەن سېربچە',
+ 'dua' => 'دۇئالاچە',
+ 'dum' => 'ئوتتۇرا گوللاندىيەچە',
+ 'dv' => 'دىۋەخىچە',
+ 'dyo' => 'جولاچە',
+ 'dyu' => 'دىيۇلاچە',
+ 'dz' => 'بۇتانچە',
+ 'dzg' => 'دازاگاچە',
+ 'ebu' => 'ئېمبۇچە',
+ 'ee' => 'ئېۋېچە',
+ 'efi' => 'ئېفىكچە',
+ 'egy' => 'قەدىمكى مىسىرچە',
+ 'eka' => 'ئېكاجۇكچە',
+ 'el' => 'گىرېكچە',
+ 'elx' => 'ئېلامىتچە',
+ 'en' => 'ئىنگلىزچە',
+ 'en-au' => 'ئاۋسترالىيە ئىنگلىزچە',
+ 'en-ca' => 'كانادا ئىنگلىزچە',
+ 'en-gb' => 'ئەنگلىيە ئىنگلىزچە',
+ 'en-us' => 'ئامېرىكا ئىنگلىزچە',
+ 'enm' => 'ئوتتۇرا ئەسىر ئىنگلىزچە',
+ 'eo' => 'دۇنيا تىلى',
+ 'es' => 'ئىسپانچە',
+ 'es-419' => 'لاتىن ئامېرىكا ئىسپانچە',
+ 'es-es' => 'ياۋروپا ئىسپانچە',
+ 'es-mx' => 'مېكسىكا ئىسپانچە',
+ 'et' => 'ئېستونچە',
+ 'eu' => 'باسكىچە',
+ 'ewo' => 'ئېۋوندوچە',
+ 'fa' => 'پارسچە',
+ 'fan' => 'فاڭچە',
+ 'fat' => 'فانتىچە',
+ 'ff' => 'فۇلاچە',
+ 'fi' => 'فىنچە',
+ 'fil' => 'فىلىپپىنچە',
+ 'fj' => 'فىجىچە',
+ 'fo' => 'فائېروچە',
+ 'fon' => 'فونچە',
+ 'fr' => 'فىرانسۇزچە',
+ 'fr-ca' => 'كانادا فىرانسۇزچە',
+ 'fr-ch' => 'شىۋىتسارىيە فىرانسۇزچە',
+ 'frm' => 'ئوتتۇرا ئەسىر فىرانسۇزچە',
+ 'fro' => 'قەدىمكى فىرانسۇزچە',
+ 'frr' => 'شىمالى فىرىزيەچە',
+ 'frs' => 'شەرقى فىرىزيەچە',
+ 'fur' => 'فىرىئۇلىچە',
+ 'fy' => 'غەربى فىرىزيەچە',
+ 'ga' => 'ئىرېلاندچە',
+ 'gaa' => 'گاچە',
+ 'gay' => 'گايوچە',
+ 'gba' => 'گىباياچە',
+ 'gd' => 'سكوتچە',
+ 'gez' => 'گىزچە',
+ 'gil' => 'گىلبېرتچە',
+ 'gl' => 'گالىتسىيانچە',
+ 'gmh' => 'ئوتتۇرا ئەسىر ئېگىزلىك گېرمانچە',
+ 'gn' => 'گۇئارانىچە',
+ 'goh' => 'قەدىمكى ئېگىزلىك گېرمانچە',
+ 'gon' => 'گوندىچە',
+ 'gor' => 'گورونتالوچە',
+ 'got' => 'گوتچە',
+ 'grb' => 'گرېبوچە',
+ 'grc' => 'قەدىمكى گىرېكچە',
+ 'gsw' => 'گېرمانچە شىۋىتسارىيە',
+ 'gu' => 'گۇجاراتچە',
+ 'guz' => 'گۇسىچە',
+ 'gv' => 'مانچە',
+ 'gwi' => 'گىۋىچىنچە',
+ 'ha' => 'خائۇساچە',
+ 'hai' => 'ھەيدەچە',
+ 'haw' => 'ھاۋايچە',
+ 'he' => 'ئىبرانىچە',
+ 'hi' => 'ھىندىچە',
+ 'hil' => 'خىلىگاينونچە',
+ 'hit' => 'خىتتىتچە',
+ 'hmn' => 'مۆڭچە',
+ 'ho' => 'ھىرى موتۇچە',
+ 'hr' => 'خورۋاتچە',
+ 'hsb' => 'يۇقىرىقى سېربچە',
+ 'ht' => 'ھايتىچە',
+ 'hu' => 'ماجارچە',
+ 'hup' => 'خۇپاچە',
+ 'hy' => 'ئەرمەنچە',
+ 'hz' => 'خېرېروچە',
+ 'ia' => 'ئارىلىق تىل',
+ 'iba' => 'ئىبانچە',
+ 'ibb' => 'ئىبىبىئوچە',
+ 'id' => 'ھىندونېزىيەچە',
+ 'ie' => 'ئىنتىرلىڭچە',
+ 'ig' => 'ئىبوچە',
+ 'ii' => 'يىچە (سىچۈەن)',
+ 'ik' => 'ئىنۇپىكچە',
+ 'ilo' => 'ئىلوكانوچە',
+ 'inh' => 'ئىنگۇشچە',
+ 'io' => 'ئىدوچە',
+ 'is' => 'ئىسلاندچە',
+ 'it' => 'ئىتاليانچە',
+ 'iu' => 'ئىنۇكتىتۇتچە',
+ 'ja' => 'ياپونچە',
+ 'jbo' => 'لوجبانچە',
+ 'jgo' => 'نگومباچە',
+ 'jmc' => 'ماچامچە',
+ 'jpr' => 'ئىبرانى پارسچە',
+ 'jrb' => 'ئىبرانى ئەرەبچە',
+ 'jv' => 'ياۋاچە',
+ 'ka' => 'گىرۇزىنچە',
+ 'kaa' => 'قارا-قالپاقچە',
+ 'kab' => 'كابىلېچە',
+ 'kac' => 'كاچىنچە',
+ 'kaj' => 'جۇچە',
+ 'kam' => 'كامباچە',
+ 'kaw' => 'كاۋىچە',
+ 'kbd' => 'كاباردەيچە',
+ 'kbl' => 'كانېمبۇچە',
+ 'kcg' => 'تياپچە',
+ 'kde' => 'ماكوندېچە',
+ 'kea' => 'كابۇۋېردىيانچە',
+ 'kfo' => 'كوروچە',
+ 'kg' => 'كونگوچە',
+ 'kha' => 'كاسىچە',
+ 'kho' => 'خوتەنچە',
+ 'khq' => 'كويرا چىنىچە',
+ 'ki' => 'كىكۇيۇچە',
+ 'kj' => 'كىۋانياماچە',
+ 'kk' => 'قازاقچە',
+ 'kkj' => 'كاكوچە',
+ 'kl' => 'گىرېنلاندچە',
+ 'kln' => 'كالېنجىنچە',
+ 'km' => 'كىخمېرچە',
+ 'kmb' => 'كىمبۇندۇچە',
+ 'kn' => 'كانناداچە',
+ 'ko' => 'كورېيەچە',
+ 'kok' => 'كونكانىچە',
+ 'kos' => 'كوسرايېچە',
+ 'kpe' => 'كىپەللېچە',
+ 'kr' => 'كانۇرىچە',
+ 'krc' => 'قاراچاي-بالقارچە',
+ 'krl' => 'كارەلچە',
+ 'kru' => 'كۇرۇكچە',
+ 'ks' => 'كەشمىرچە',
+ 'ksb' => 'شامبالاچە',
+ 'ksf' => 'بافىياچە',
+ 'ksh' => 'كولىشچە',
+ 'ku' => 'كۇردچە',
+ 'kum' => 'قۇمۇقچە',
+ 'kut' => 'كۇتەنايچە',
+ 'kv' => 'كومىچە',
+ 'kw' => 'كورنىشچە',
+ 'ky' => 'قىرغىزچە',
+ 'la' => 'لاتىنچە',
+ 'lad' => 'لادىنوچە',
+ 'lag' => 'لانگىچە',
+ 'lah' => 'لانداچە',
+ 'lam' => 'لامباچە',
+ 'lb' => 'لىيۇكسېمبۇرگچە',
+ 'lez' => 'لېزگىنچە',
+ 'lg' => 'گانداچە',
+ 'li' => 'لىمبۇرگچە',
+ 'ln' => 'لىنگالاچە',
+ 'lo' => 'لائوسچە',
+ 'lol' => 'مونگوچە',
+ 'loz' => 'لوزىچە',
+ 'lt' => 'لىتۋاچە',
+ 'lu' => 'لۇبا-كاتانگاچە',
+ 'lua' => 'لۇبا-لۇئاچە',
+ 'lui' => 'لۇيسېنگوچە',
+ 'lun' => 'لۇنداچە',
+ 'luo' => 'لۇئوچە',
+ 'lus' => 'مىزوچە',
+ 'luy' => 'لۇياچە',
+ 'lv' => 'لاتۋىيەچە',
+ 'mad' => 'مادۇرېسچە',
+ 'maf' => 'مافاچە',
+ 'mag' => 'ماگاخىچە',
+ 'mai' => 'مايتىلىچە',
+ 'mak' => 'ماكاسارچە',
+ 'man' => 'ماندىنگوچە',
+ 'mas' => 'ماسايچە',
+ 'mde' => 'ماباچە',
+ 'mdf' => 'موكشاچە',
+ 'mdr' => 'ماندارچە',
+ 'men' => 'مېندېچە',
+ 'mer' => 'مېرۇچە',
+ 'mfe' => 'مورىسيېنچە',
+ 'mg' => 'ماداغاسقارچە',
+ 'mga' => 'ئوتتۇرا ئەسىر ئىرېلاندچە',
+ 'mgh' => 'ماكۇۋاچە',
+ 'mgo' => 'مېتاچە’',
+ 'mh' => 'مارشالچە',
+ 'mi' => 'ماۋرىچە',
+ 'mic' => 'مىكماكچە',
+ 'min' => 'مىناڭكابائۇچە',
+ 'mk' => 'ماكېدونچە',
+ 'ml' => 'مالايامچە',
+ 'mn' => 'موڭغۇلچە',
+ 'mnc' => 'مانجۇچە',
+ 'mni' => 'مانىپۇرىچە',
+ 'moh' => 'موخوكچە',
+ 'mos' => 'موسسىچە',
+ 'mr' => 'ماراتچە',
+ 'ms' => 'مالايچە',
+ 'mt' => 'مالتاچە',
+ 'mua' => 'مۇنداڭچە',
+ 'mul' => 'كۆپ تىللار',
+ 'mus' => 'كىرىكچە',
+ 'mwl' => 'مىراندېسچە',
+ 'mwr' => 'مارۋارىچە',
+ 'my' => 'بىرماچە',
+ 'mye' => 'ميېنېچە',
+ 'myv' => 'ئېرزاچە',
+ 'na' => 'ناۋرۇچە',
+ 'nap' => 'ناپولىچە',
+ 'naq' => 'ناماچە',
+ 'nb' => 'نورۋىگىيە بوكمالچە',
+ 'nd' => 'شىمالى ندەبەلەچە',
+ 'nds' => 'تۆۋەن گېرمانچە',
+ 'ne' => 'نېپالچە',
+ 'new' => 'نېۋارىچە',
+ 'ng' => 'ندونگاچە',
+ 'nia' => 'نىئاسچە',
+ 'niu' => 'نيۇئېچە',
+ 'nl' => 'گوللاندىيەچە',
+ 'nmg' => 'كۋاسىيوچە',
+ 'nn' => 'يېڭى نورۋېگچە',
+ 'nnh' => 'نگېمبۇنچە',
+ 'no' => 'نورۋېگچە',
+ 'nog' => 'نوغايچە',
+ 'non' => 'قەدىمكى نورۋېگچە',
+ 'nqo' => 'نىكوچە',
+ 'nr' => 'جەنۇبى ندەبەلەچە',
+ 'nso' => 'شىمالى سوتوچە',
+ 'nus' => 'مۇئېرچە',
+ 'nv' => 'ناۋاخوچە',
+ 'nwc' => 'نېۋارچە',
+ 'ny' => 'نيانجاچە',
+ 'nym' => 'نيامۋېزىچە',
+ 'nyn' => 'نىيانكولېچە',
+ 'nyo' => 'نىئوروچە',
+ 'nzi' => 'نىزەماچە',
+ 'oc' => 'ئوكسىتانچە',
+ 'oj' => 'ئوجىبۋاچە',
+ 'om' => 'ئوروموچە',
+ 'or' => 'ئورىياچە',
+ 'os' => 'ئوسسېتچەچە',
+ 'osa' => 'ئوساگېلارچە',
+ 'ota' => 'ئوسمان تۈركچە',
+ 'pa' => 'پەنجابچە',
+ 'pag' => 'پانگاسىنانچە',
+ 'pal' => 'پەھلەۋىچە',
+ 'pam' => 'پامپانگاچە',
+ 'pap' => 'پاپىيامەنتۇچە',
+ 'pau' => 'پالاۋچە',
+ 'peo' => 'قەدىمكى پارىسچە',
+ 'phn' => 'فىنىكىيەچە',
+ 'pi' => 'پالىچە',
+ 'pl' => 'پولەكچە',
+ 'pon' => 'پوناپېئانچە',
+ 'pro' => 'قەدىمكى پروۋېنچالچە',
+ 'ps' => 'پۇشتۇچە',
+ 'pt' => 'پورتۇگالچە',
+ 'pt-br' => 'بىرازىلىيە پورتۇگالچە',
+ 'pt-pt' => 'ياۋروپا پورتۇگالچە',
+ 'qu' => 'كېچياچە',
+ 'raj' => 'راجاستانچە',
+ 'rap' => 'راپانىيچە',
+ 'rm' => 'رومانىشچە',
+ 'rn' => 'رۇندىچە',
+ 'ro' => 'رۇمىنىيەچە',
+ 'rof' => 'رومبوچە',
+ 'rom' => 'سىگانچە',
+ 'ru' => 'رۇسچە',
+ 'rup' => 'ئارومانچە',
+ 'rw' => 'رىۋانداچە',
+ 'rwk' => 'رىۋاچە',
+ 'sa' => 'سانسكرىتچە',
+ 'sad' => 'سانداۋېچە',
+ 'sah' => 'ياقۇتچە',
+ 'sam' => 'سامارىتانچە',
+ 'saq' => 'سامبۇرۇچە',
+ 'sas' => 'ساساكچە',
+ 'sat' => 'سانتالىچە',
+ 'sba' => 'نگامبايچە',
+ 'sbp' => 'سانگۇچە',
+ 'sc' => 'ساردىنىيەچە',
+ 'scn' => 'سىتسىلىيەچە',
+ 'sco' => 'شوتلاندىيەچە',
+ 'sd' => 'سىندىچە',
+ 'se' => 'شىمالى سامىچە',
+ 'see' => 'سېكنېكاچە',
+ 'seh' => 'سېناچە',
+ 'sel' => 'سېلكاپچە',
+ 'ses' => 'شەرقىي سوڭخايچە',
+ 'sg' => 'سانگوچە',
+ 'sga' => 'قەدىمكى ئىرېلاندچە',
+ 'sh' => 'سېرب-كرودىيەچە',
+ 'shi' => 'شىلخاچە',
+ 'shn' => 'شانچە',
+ 'shu' => 'چاد ئەرەبچە',
+ 'si' => 'سىنگالچە',
+ 'sid' => 'سىداموچە',
+ 'sk' => 'سىلوۋاكچە',
+ 'sl' => 'سىلوۋېنىيەچە',
+ 'sm' => 'ساموئاچە',
+ 'sma' => 'جەنۇبى سامى تىللىرى',
+ 'smj' => 'لۇلې سامىچە',
+ 'smn' => 'ئىنارى سامىچە',
+ 'sms' => 'سىكولت سامىچە',
+ 'sn' => 'شوناچە',
+ 'snk' => 'سونىنكەچە',
+ 'so' => 'سومالىچە',
+ 'sog' => 'سوغدىچە',
+ 'sq' => 'ئالبانچە',
+ 'sr' => 'سېربچە',
+ 'srn' => 'سىرانان-توڭوچە',
+ 'srr' => 'سېرېرچە',
+ 'ss' => 'سىۋاتىچە',
+ 'ssy' => 'ساخوچە',
+ 'st' => 'جەنۇبى سوتوچە',
+ 'su' => 'سۇنداچە',
+ 'suk' => 'سۇكۇماچە',
+ 'sus' => 'سۇسۇچە',
+ 'sux' => 'سۈمەرچە',
+ 'sv' => 'شۋېدچە',
+ 'sw' => 'سىۋالىچە',
+ 'swb' => 'كومورىچە',
+ 'swc' => 'كونگو سىۋالىچە',
+ 'syc' => 'كلاسسىك سۈرىيەچە',
+ 'syr' => 'سۈرىيەچە',
+ 'ta' => 'تامىلچە',
+ 'te' => 'تېلۇگۇچە',
+ 'tem' => 'تېمنېچە',
+ 'teo' => 'تېسوچە',
+ 'ter' => 'تېرېناچە',
+ 'tet' => 'تېتۇمچە',
+ 'tg' => 'تاجىكچە',
+ 'th' => 'تايلاندچە',
+ 'ti' => 'تىگرىنياچە',
+ 'tig' => 'تىگرېچە',
+ 'tiv' => 'تىۋچە',
+ 'tk' => 'تۈركمەنچە',
+ 'tkl' => 'توكېلاۋچە',
+ 'tl' => 'تاگالوگچە',
+ 'tlh' => 'كىلىنگونچە',
+ 'tli' => 'تىلىنگىتچە',
+ 'tmh' => 'تاماشېكچە',
+ 'tn' => 'سىۋاناچە',
+ 'to' => 'توڭانچە',
+ 'tog' => 'نياسا توڭانچە',
+ 'tpi' => 'توك-پىسىنچە',
+ 'tr' => 'تۈركچە',
+ 'trv' => 'توروكوچە',
+ 'ts' => 'سونگاچە',
+ 'tsi' => 'سىمشيانچە',
+ 'tt' => 'تاتارچە',
+ 'tum' => 'تۇمبۇكاچە',
+ 'tvl' => 'تۇۋالۇچە',
+ 'tw' => 'تىۋىچە',
+ 'twq' => 'شىمالىي سوڭخايچە',
+ 'ty' => 'تاختىچە',
+ 'tyv' => 'توۋاچە',
+ 'tzm' => 'مەركىزى ئاتلاس تاماچاگىت',
+ 'udm' => 'ئۇدمۇرتچە',
+ 'ug' => 'ئۇيغۇرچە',
+ 'uga' => 'ئۇگارىتىكچە',
+ 'uk' => 'ئۇكرائىنچە',
+ 'umb' => 'ئۇمبۇندۇچە',
+ 'und' => 'يوچۇن تىل',
+ 'ur' => 'ئوردوچە',
+ 'uz' => 'ئۆزبېكچە',
+ 'vai' => 'ۋايچە',
+ 've' => 'ۋېنداچە',
+ 'vi' => 'ۋىيېتنامچە',
+ 'vo' => 'ۋولاپۇكچە',
+ 'vot' => 'ۋوتېچە',
+ 'vun' => 'ۋۇنجوچە',
+ 'wa' => 'ۋاللۇنچە',
+ 'wae' => 'ۋالسېرچە',
+ 'wal' => 'ۋولايتاچە',
+ 'war' => 'ۋارايچە',
+ 'was' => 'ۋاشوچە',
+ 'wo' => 'ۋولوفچە',
+ 'xal' => 'قالماقچە',
+ 'xh' => 'خوساچە',
+ 'xog' => 'سوگاچە',
+ 'yao' => 'ياۋچە',
+ 'yap' => 'ياپچە',
+ 'yav' => 'ياڭبەنچە',
+ 'ybb' => 'يېمباچە',
+ 'yi' => 'يىددىشچە',
+ 'yo' => 'يورۇباچە',
+ 'yue' => 'گۇاڭدوڭچە',
+ 'za' => 'جۇاڭچە',
+ 'zap' => 'زاپوتېكچە',
+ 'zbl' => 'بىلىس بەلگىلىرى',
+ 'zen' => 'زېناگاچە',
+ 'zgh' => 'ئۆلچەملىك ماراكەش تامازىتچە',
+ 'zh' => 'خەنچە',
+ 'zh-hans' => 'ئاددىي خەنچە',
+ 'zh-hant' => 'مۇرەككەپ خەنچە',
+ 'zu' => 'زۇلۇچە',
+ 'zun' => 'زۇنىچە',
+ 'zxx' => 'تىل مەزمۇنى يوق',
+ 'zza' => 'زازاچە',
+);
+
+$currencyNames = array(
+ 'ADP' => 'ئاندورران پېسېتاسى',
+ 'AED' => 'ئەرەب بىرلەشمە خەلىپىلىكى دەرھەمى',
+ 'AFA' => 'ئافغان ئافغانى (1927–2002)',
+ 'AFN' => 'ئافغان ئافغانى',
+ 'ALK' => 'ئالبانىيە لېكى (1946–1965)',
+ 'ALL' => 'ئالبانىيە لېكى',
+ 'AMD' => 'ئەرمېنىيە دىرامى',
+ 'ANG' => 'گوللاندىيەگە قاراشلىق ئانتىللېن گۇلدېنى',
+ 'AOA' => 'ئانگولا كۇۋانزاسى',
+ 'AOK' => 'ئانگولا كۇۋانزاسى (1977–1991)',
+ 'AON' => 'ئانگولا يېڭى كۇۋانزاسى (1990–2000)',
+ 'AOR' => 'ئانگولا قايتا تەڭشەلگەن كۇۋانزاسى (1995–1999)',
+ 'ARA' => 'ئارگېنتىنا ئاۋسترالى',
+ 'ARL' => 'ئارگېنتىنا پېسو لېيى (1970–1983)',
+ 'ARM' => 'ئارگېنتىنا پېسوسى (1881–1970)',
+ 'ARP' => 'ئارگېنتىنا پېسوسى (1983–1985)',
+ 'ARS' => 'ئارگېنتىنا پېسوسى',
+ 'ATS' => 'ئاۋسترىيە شىللىڭى',
+ 'AUD' => 'ئاۋسترالىيە دوللىرى',
+ 'AWG' => 'ئارۇبان فىلورۇنى',
+ 'AZM' => 'ئەزەربەيجان ماناتى (1993–2006)',
+ 'AZN' => 'ئەزەربەيجان ماناتى',
+ 'BAD' => 'بوسنىيە-خېرتسېگوۋىنا دىنارى (1992–1994)',
+ 'BAM' => 'بوسنىيە-خېرتسېگوۋىنا ئالماشتۇرۇشچان ماركى',
+ 'BAN' => 'بوسنىيە-خېرتسېگوۋىنا يېڭى دىنارى (1994–1997)',
+ 'BBD' => 'باربادوس دوللىرى',
+ 'BDT' => 'باڭلادىش تاكاسى',
+ 'BEC' => 'بېلگىيە فرانكى (ئالماشتۇرۇشچان)',
+ 'BEF' => 'بېلگىيە فرانكى',
+ 'BEL' => 'بېلگىيە فرانكى (پۇل–مۇئامىلە)',
+ 'BGL' => 'بۇلغارىيە قاتتىق لېۋاسى',
+ 'BGM' => 'بۇلغارىيە ئىجتىمائىي لېۋاسى',
+ 'BGN' => 'بۇلغارىيە لېۋاسى',
+ 'BGO' => 'بۇلغارىيە لېۋاسى (1879–1952)',
+ 'BHD' => 'بەھرەين دىنارى',
+ 'BIF' => 'بۇرۇندى فرانكى',
+ 'BMD' => 'بېرمۇدا دوللىرى',
+ 'BND' => 'بىرۇنېي دوللىرى',
+ 'BOB' => 'بولىۋىيە بولىۋىيانوسى',
+ 'BOL' => 'بولىۋىيە بولىۋىيانوسى (1863–1963)',
+ 'BOP' => 'بولىۋىيە پىسوسى',
+ 'BOV' => 'بولىۋىيە مۇدولى',
+ 'BRB' => 'بىرازىلىيە يېڭى كرۇزېروسى (1967–1986)',
+ 'BRC' => 'بىرازىلىيە كرۇزادوسى (1986–1989)',
+ 'BRE' => 'بىرازىلىيە يېڭى كرۇزېروسى (1990–1993)',
+ 'BRL' => 'بىرازىلىيە رىيالى',
+ 'BRN' => 'بىرازىلىيە يېڭى كرۇزادوسى (1989–1990)',
+ 'BRR' => 'بىرازىلىيە كرۇزېروسى (1993–1994)',
+ 'BRZ' => 'بىرازىلىيە كرۇزېروسى (1942–1967)',
+ 'BSD' => 'باھاما دوللىرى',
+ 'BTN' => 'بۇتان نگۇلترۇمى',
+ 'BUK' => 'بىرما كىياتى',
+ 'BWP' => 'بوتسۋانا پۇلاسى',
+ 'BYB' => 'بېلارۇسىيە يېڭى رۇبلىسى (1994–1999)',
+ 'BYR' => 'بېلارۇسىيە رۇبلىسى',
+ 'BZD' => 'بېلىز دوللىرى',
+ 'CAD' => 'كانادا دوللىرى',
+ 'CDF' => 'كونگو فرانكى',
+ 'CHE' => 'WIR ياۋرو',
+ 'CHF' => 'شىۋېتسىيە فرانكى',
+ 'CHW' => 'WIR فرانكى',
+ 'CLE' => 'چىلى ئېسكۇدوسى',
+ 'CLF' => 'چىلى ھېسابات بىرلىكى (UF)',
+ 'CLP' => 'چىلى پېسوسى',
+ 'CNX' => 'جۇڭگو خەلق بانكىسى دوللىرى',
+ 'CNY' => 'جۇڭگو يۈەنى',
+ 'COP' => 'كولومبىيە پېسوسى',
+ 'COU' => 'كولومبىيە ھەقىقىي قىممەت بىرلىكى',
+ 'CRC' => 'كوستارىكا كولونى',
+ 'CSD' => 'سېربىيە دىنارى (2002–2006)',
+ 'CSK' => 'چېخسىلوۋاكىيە قاتتىق كورۇناسى',
+ 'CUC' => 'كۇبا ئالماشتۇرۇشچان پېسوسى',
+ 'CUP' => 'كۇبا پېسوسى',
+ 'CVE' => 'يېشىل تۇمشۇق ئېسكۇدوسى',
+ 'CYP' => 'سىپرۇس فوند ستېرلىڭى',
+ 'CZK' => 'چېخ جۇمھۇرىيىتى كورۇناسى',
+ 'DDM' => 'شەرقىي گېرمانىيە ماركى',
+ 'DEM' => 'گېرمانىيە ماركى',
+ 'DJF' => 'جىبۇتى فرانكى',
+ 'DKK' => 'دانىيە كرونى',
+ 'DOP' => 'دومىنىكا پېسوسى',
+ 'DZD' => 'ئالجىرىيە دىنارى',
+ 'ECS' => 'ئېكۋادور سۇكرېسى',
+ 'ECV' => 'ئېكۋادور تۇراقلىق قىممەت بىرلىكى',
+ 'EEK' => 'ئېستونىيە كرۇنى',
+ 'EGP' => 'مىسىر فوند سىتېرلىڭى',
+ 'ERN' => 'ئېرىترېيە ناكفاسى',
+ 'ESA' => 'ئىسپانىيە پېسېتاسى (A ھېسابات)',
+ 'ESB' => 'ئىسپانىيە پېسېتاسى (ئالماشتۇرۇش ھېساباتى)',
+ 'ESP' => 'ئىسپانىيە پېسېتاسى',
+ 'ETB' => 'ئېفىيوپىيە بىررى',
+ 'EUR' => 'ياۋرو',
+ 'FIM' => 'فىنلاندىيە مارككاسى',
+ 'FJD' => 'فىجى دوللىرى',
+ 'FKP' => 'فالكلاند ئاراللىرى فوند سىتېرلىڭى',
+ 'FRF' => 'فىرانسىيە فرانكى',
+ 'GBP' => 'ئەنگلىيە فوند سىتېرلىڭى',
+ 'GEK' => 'گىرۇزىيە كۇپون لارىتى',
+ 'GEL' => 'گىرۇزىيە لارىسى',
+ 'GHC' => 'گانا سېدىسى (1979–2007)',
+ 'GHS' => 'گانا سېدىسى',
+ 'GIP' => 'جەبىلتارىق فوند سىتېرلىڭى',
+ 'GMD' => 'گامبىيە دالاسى',
+ 'GNF' => 'گىۋىنېيە فرانكى',
+ 'GNS' => 'گىۋىنېيە سىلىسى',
+ 'GQE' => 'ئېكۋاتور گىۋىنېيە ئېكۋېلېسى',
+ 'GRD' => 'گىرېتسىيە دراخماسى',
+ 'GTQ' => 'گىۋاتېمالا كۇۋېتزالى',
+ 'GWE' => 'پورتۇگالىيە گىۋىنېيە ئېسكۇدوسى',
+ 'GWP' => 'گىۋىنېيە-بىسسائۇ پېسوسى',
+ 'GYD' => 'گىۋىئانا دوللىرى',
+ 'HKD' => 'شياڭگاڭ دوللىرى',
+ 'HNL' => 'ھوندۇراس لېمپىراسى',
+ 'HRD' => 'كىرودىيە دىنارى',
+ 'HRK' => 'كىرودىيە كۇناسى',
+ 'HTG' => 'ھايتى گۇردېسى',
+ 'HUF' => 'ۋېنگىرىيە فورېنتى',
+ 'IDR' => 'ھىندونېزىيە رۇپىيەسى',
+ 'IEP' => 'ئىرېلاندىيە فوندستېرلىڭى',
+ 'ILP' => 'ئىسرائىلىيە فوندستېرلىڭى',
+ 'ILR' => 'ئىسرائىل شېكېلى (1980–1985)',
+ 'ILS' => 'ئىسرائىل يېڭى شېكېلى',
+ 'INR' => 'ھىندىستان رۇپىسى',
+ 'IQD' => 'ئىراق دىنارى',
+ 'IRR' => 'ئىران رىيالى',
+ 'ISJ' => 'ئىسلاندىيە كروناسى (1918–1981)',
+ 'ISK' => 'ئىسلاندىيە كروناسى',
+ 'ITL' => 'ئىتالىيە لىراسى',
+ 'JMD' => 'يامايكا دوللىرى',
+ 'JOD' => 'ئىيوردانىيە دىنارى',
+ 'JPY' => 'ياپونىيە يېنى',
+ 'KES' => 'كېنىيە شىللىڭى',
+ 'KGS' => 'قىرغىزىستان سومى',
+ 'KHR' => 'كامبودژا رىئېلى',
+ 'KMF' => 'كومورو فرانكى',
+ 'KPW' => 'شىمالىي كورېيە ۋونى',
+ 'KRH' => 'جەنۇبىي كورېيە خۋانى (1953–1962)',
+ 'KRO' => 'جەنۇبىي كورېيە ۋونى (1945–1953)',
+ 'KRW' => 'جەنۇبىي كورېيە ۋونى',
+ 'KWD' => 'كۇۋەيت دىنارى',
+ 'KYD' => 'كايمان ئاراللىرى دوللىرى',
+ 'KZT' => 'قازاقىستان تەڭگىسى',
+ 'LAK' => 'لائوس كىپى',
+ 'LBP' => 'لىۋان فوند سىتېرلىڭى',
+ 'LKR' => 'سىرىلانكا رۇپىسى',
+ 'LRD' => 'لىبېرىيە دوللىرى',
+ 'LSL' => 'لېسوتو لوتىسى',
+ 'LTL' => 'لىتۋا لىتاسى',
+ 'LTT' => 'لىتۋا تالوناسى',
+ 'LUC' => 'ليۇكسېمبۇرگ ئالماشتۇرۇشچان پېسوسى',
+ 'LUF' => 'ليۇكسېمبۇرگ فرانكى',
+ 'LUL' => 'لىيۇكسېمبۇرگ پۇل-مۇئامىلە فرانكى',
+ 'LVL' => 'لاتۋىيە لاتى',
+ 'LVR' => 'لاتۋىيە رۇبلىسى',
+ 'LYD' => 'لىۋىيە دىنارى',
+ 'MAD' => 'ماراكەش دىرھەمى',
+ 'MAF' => 'ماراكەش فرانكى',
+ 'MCF' => 'موناكو فرانكى',
+ 'MDC' => 'مولدوۋا كۇپونى',
+ 'MDL' => 'مولدوۋا لېۋى',
+ 'MGA' => 'ماداغاسقار ئارىئارىسى',
+ 'MGF' => 'ماداغاسقار فرانكى',
+ 'MKD' => 'ماكېدونىيە دىنارى',
+ 'MKN' => 'ماكېدونىيە دىنارى (1992–1993)',
+ 'MLF' => 'مالى فرانكى',
+ 'MMK' => 'مىيانمار كىياتى',
+ 'MNT' => 'موڭغۇلىيە تۈگرىكى',
+ 'MOP' => 'ئاۋمېن پاتاكاسى',
+ 'MRO' => 'ماۋرىتانىيە ئۇگىيەسى',
+ 'MTL' => 'مالتا لىراسى',
+ 'MTP' => 'مالتا فوندستېرلىڭى',
+ 'MUR' => 'ماۋرىتىئۇس رۇپىسى',
+ 'MVP' => 'مالدىۋى رۇپىسى',
+ 'MVR' => 'مالدىۋى رۇفىياسى',
+ 'MWK' => 'مالاۋى كۋاچاسى',
+ 'MXN' => 'مېكسىكا پېسوسى',
+ 'MXP' => 'مېكسىكا كۈمۈش پېسوسى (1861–1992)',
+ 'MXV' => 'مېكسىكا مەبلەغ بىرلىكى',
+ 'MYR' => 'مالايشىيا رىڭگىتى',
+ 'MZE' => 'موزامبىك ئېسكۇدوسى',
+ 'MZM' => 'موزامبىك مېتىكالى (1980–2006)',
+ 'MZN' => 'موزامبىك مېتىكالى',
+ 'NAD' => 'نامىبىيە دوللىرى',
+ 'NGN' => 'نىگېرىيە نايراسى',
+ 'NIC' => 'نىگېرىيە كوردوباسى (1988–1991)',
+ 'NIO' => 'نىگېرىيە كوردوباسى',
+ 'NLG' => 'گوللاندىيە گۈلدىنى',
+ 'NOK' => 'نورۋېگىيە كرونى',
+ 'NPR' => 'نېپال رۇپىسى',
+ 'NZD' => 'يېڭى زېلاندىيە دوللىرى',
+ 'OMR' => 'ئومان رىيالى',
+ 'PAB' => 'پاناما بالبوئاسى',
+ 'PEI' => 'پېرۇ ئىنتىسى',
+ 'PEN' => 'پېرۇ يېڭى سولى',
+ 'PES' => 'پېرۇ سولى (1863–1965)',
+ 'PGK' => 'پاپۇئا يېڭى گىۋىنېيە كىناسى',
+ 'PHP' => 'فىلىپپىن پېسوسى',
+ 'PKR' => 'پاكىستان رۇپىسى',
+ 'PLN' => 'پولشا زىلوتى',
+ 'PLZ' => 'پولشا زىلوتى (1950–1995)',
+ 'PTE' => 'پورتۇگالىيە ئېسكۇدوسى',
+ 'PYG' => 'پاراگۋاي گۇئارانىسى',
+ 'QAR' => 'قاتار رىيالى',
+ 'RHD' => 'رودېزىيە دوللىرى',
+ 'ROL' => 'رۇمىنىيە لېيى (1952–2006)',
+ 'RON' => 'رۇمىنىيە لېيى',
+ 'RSD' => 'سېربىيە دىنارى',
+ 'RUB' => 'رۇسىيە رۇبلىسى',
+ 'RUR' => 'رۇسىيە رۇبلىسى (1991–1998)',
+ 'RWF' => 'رۋاندا فرانكى',
+ 'SAR' => 'سەئۇدى رىيالى',
+ 'SBD' => 'سولومون ئاراللىرى دوللىرى',
+ 'SCR' => 'سېيشېل رۇپىسى',
+ 'SDD' => 'سۇدان دىنارى (1992–2007)',
+ 'SDG' => 'سۇدان فوندستېرلىڭى',
+ 'SDP' => 'سۇدان فوندستېرلىڭى (1957–1998)',
+ 'SEK' => 'شىۋېتسىيە كروناسى',
+ 'SGD' => 'سىنگاپور دوللىرى',
+ 'SHP' => 'ساينىت-ھېلېنا فوندستېرلىڭى',
+ 'SIT' => 'سىلوۋېنىيە تولارى',
+ 'SKK' => 'سىلوۋاكىيە كورۇناسى',
+ 'SLL' => 'سېررالېئون لېئونېسى',
+ 'SOS' => 'سومالى شىللىڭى',
+ 'SRD' => 'سۇرىنام دوللىرى',
+ 'SRG' => 'سۇرىنام گۈلدىنى',
+ 'SSP' => 'جەنۇبىي سۇدان فوندستېرلىڭى',
+ 'STD' => 'سان-تومې ۋە پىرىنسىپى دوبراسى',
+ 'SUR' => 'سوۋىت رۇبلىسى',
+ 'SVC' => 'سالۋادور كولونى',
+ 'SYP' => 'سۈرىيە فوندستېرلىڭى',
+ 'SZL' => 'سىۋېزىلاند لىلانگېنى',
+ 'THB' => 'تايلاند باختى',
+ 'TJR' => 'تاجىكىستان رۇبلىسى',
+ 'TJS' => 'تاجىكىستان سومونىسى',
+ 'TMM' => 'تۈركمەنىستان ماناتى (1993–2009)',
+ 'TMT' => 'تۈركمەنىستان ماناتى',
+ 'TND' => 'تۇنىس دىنارى',
+ 'TOP' => 'تونگا پائانگاسى',
+ 'TPE' => 'تىمور ئېسكۇدوسى',
+ 'TRL' => 'تۈركىيە لىراسى (1922–2005)',
+ 'TRY' => 'تۈركىيە لىراسى',
+ 'TTD' => 'تىرىنىداد ۋە توباگو دوللىرى',
+ 'TWD' => 'يېڭى تەيۋەن دوللىرى',
+ 'TZS' => 'تانزانىيە شىللىڭى',
+ 'UAH' => 'ئۇكرائىنا خرىۋناسى',
+ 'UAK' => 'ئۇكرائىنا كاربوۋانېتسى',
+ 'UGS' => 'ئۇگاندا شىللىڭى (1966–1987)',
+ 'UGX' => 'ئۇگاندا شىللىڭى',
+ 'USD' => 'ئامېرىكا دوللىرى',
+ 'USN' => 'ئامېرىكا دوللىرى (كېيىنكى كۈن)',
+ 'USS' => 'ئامېرىكا دوللىرى (ئوخشاش كۈن)',
+ 'UYI' => 'ئۇرۇگۋاي پېسوسى (ئىندېكىسلاش بىرلىكى)',
+ 'UYP' => 'ئۇرۇگۋاي پېسوسى (1975–1993)',
+ 'UYU' => 'ئۇرۇگۋاي پېسوسى',
+ 'UZS' => 'ئۆزبېكىستان سومى',
+ 'VEB' => 'ۋېنېزۇئېلا بولىۋارى (1871–2008)',
+ 'VEF' => 'ۋېنېزۇئېلا بولىۋارى',
+ 'VND' => 'ۋىيېتنام دوڭى',
+ 'VNN' => 'ۋىيېتنام دوڭى (1978–1985)',
+ 'VUV' => 'ۋانۇئاتۇ ۋاتۇسى',
+ 'WST' => 'ساموئا تالاسى',
+ 'XAF' => 'ئافرىقا قىتئەسى پۇل-مۇئامىلە ئىتتىپاقى فرانكى',
+ 'XAG' => 'كۈمۈش',
+ 'XAU' => 'ئالتۇن',
+ 'XBA' => 'ياۋروپا مۇرەككەپ بىرلىكى',
+ 'XBB' => 'ياۋروپا پۇل بىرلىكى (XBB)',
+ 'XBC' => 'ياۋروپا ھېسابات بىرلىكى (XBC)',
+ 'XBD' => 'ياۋروپا ھېسابات بىرلىكى (XBD)',
+ 'XCD' => 'شەرقىي كارىب دوللىرى',
+ 'XDR' => 'ئالاھىدە پۇل ئېلىش ھوقۇقى',
+ 'XEU' => 'ياۋروپا پۇل بىرلىكى',
+ 'XFO' => 'فىرانسىيە ئالتۇن فرانكى',
+ 'XFU' => 'فىرانسىيە UIC فرانكى',
+ 'XOF' => 'ئافرىقا قىتئەسى پۇل-مۇئامىلە ئىتتىپاقى فرانكى (BCEAO)',
+ 'XPD' => 'پاللادىي',
+ 'XPF' => 'تىنچ ئوكيان پۇل-مۇئامىلە ئورتاق گەۋدىسى فرانكى',
+ 'XPT' => 'پىلاتىنا',
+ 'XRE' => 'RINET فوندى',
+ 'XSU' => 'سۇكرې',
+ 'XTS' => 'پۇل سىناش بىرلىكى',
+ 'XUA' => 'ئاسىيا تەرەققىيات بانكىسى ھېسابات بىرلىكى',
+ 'XXX' => 'يوچۇن پۇل',
+ 'YDD' => 'يەمەن دىنارى',
+ 'YER' => 'يەمەن رىيالى',
+ 'YUD' => 'يۇگوسلاۋىيە قاتتىق دىنارى (1966–1990)',
+ 'YUM' => 'يۇگوسلاۋىيە يېڭى دىنارى (1994–2002)',
+ 'YUN' => 'يۇگوسلاۋىيە ئالماشتۇرۇشچان دىنارى (1990–1992)',
+ 'YUR' => 'يۇگوسلاۋىيە ئىسلاھات دىنارى (1992–1993)',
+ 'ZAL' => 'جەنۇبىي ئافرىقا راندى (پۇل–مۇئامىلە)',
+ 'ZAR' => 'جەنۇبىي ئافرىقا راندى',
+ 'ZMK' => 'زامبىيە كۋاچاسى (1968–2012)',
+ 'ZMW' => 'زامبىيە كۋاچاسى',
+ 'ZRN' => 'زايىر يېڭى زايىرى (1993–1998)',
+ 'ZRZ' => 'زايىر زايىرى (1971–1993)',
+ 'ZWD' => 'زىمبابۋې دوللىرى (1980–2008)',
+ 'ZWL' => 'زىمبابۋې دوللىرى (2009)',
+ 'ZWR' => 'زىمبابۋې دوللىرى (2008)',
+);
+
+$currencySymbols = array(
+ 'CNY' => '¥',
+ 'USD' => '$',
+);
+
+$countryNames = array(
+ 'AC' => 'ئاسسېنسىيون ئارىلى',
+ 'AD' => 'ئاندوررا',
+ 'AE' => 'ئەرەب بىرلەشمە خەلىپىلىكى',
+ 'AF' => 'ئافغانىستان',
+ 'AG' => 'ئانتىگۋا ۋە باربۇدا',
+ 'AI' => 'ئانگۋىللا',
+ 'AL' => 'ئالبانىيە',
+ 'AM' => 'ئەرمېنىيە',
+ 'AO' => 'ئانگولا',
+ 'AQ' => 'ئانتاركتىكا',
+ 'AR' => 'ئارگېنتىنا',
+ 'AS' => 'ئامېرىكا تەۋەلىكىدىكى ساموئا',
+ 'AT' => 'ئاۋسترىيە',
+ 'AU' => 'ئاۋسترالىيە',
+ 'AW' => 'ئارۇبا',
+ 'AX' => 'ئالاند ئاراللىرى',
+ 'AZ' => 'ئەزەربەيجان',
+ 'BA' => 'بوسنىيە-گېرتسېگوۋىنا',
+ 'BB' => 'باربادوس',
+ 'BD' => 'باڭلادىش',
+ 'BE' => 'بېلگىيە',
+ 'BF' => 'بۇركىنا-فاسو',
+ 'BG' => 'بۇلغارىيە',
+ 'BH' => 'بەھرەين',
+ 'BI' => 'بۇرۇندى',
+ 'BJ' => 'بېنىن',
+ 'BL' => 'ساينىت-بارتھېلەمي ئاراللىرى',
+ 'BM' => 'بېرمۇدا',
+ 'BN' => 'بىرۇنېي',
+ 'BO' => 'بولىۋىيە',
+ 'BQ' => 'كارىب دېڭىزى گوللاندىيە',
+ 'BR' => 'بىرازىلىيە',
+ 'BS' => 'باھاما',
+ 'BT' => 'بۇتان',
+ 'BV' => 'بۇۋېت ئاراللىرى',
+ 'BW' => 'بوتسۋانا',
+ 'BY' => 'بېلارۇسىيە',
+ 'BZ' => 'بېلىز',
+ 'CA' => 'كانادا',
+ 'CC' => 'كەئەلىڭ كوكۇس ئاراللىرى',
+ 'CD' => 'كونگو - كىنشاسا',
+ 'CF' => 'ئوتتۇرا ئافرىقا جۇمھۇرىيىتى',
+ 'CG' => 'كونگو - بىراززاۋىل',
+ 'CH' => 'شىۋىتسارىيە',
+ 'CI' => 'كوتې دې ئىۋوئىر',
+ 'CK' => 'كۇك ئاراللىرى',
+ 'CL' => 'چىلى',
+ 'CM' => 'كامېرون',
+ 'CN' => 'جۇڭگو',
+ 'CO' => 'كولومبىيە',
+ 'CP' => 'كىلىپپېرتون ئاراللىرى',
+ 'CR' => 'كوستارىكا',
+ 'CU' => 'كۇبا',
+ 'CV' => 'يېشىل تۇمشۇق',
+ 'CW' => 'كۇراسو',
+ 'CX' => 'روژدېستۋو ئارىلى',
+ 'CY' => 'سىپرۇس',
+ 'CZ' => 'چېخ جۇمھۇرىيىتى',
+ 'DE' => 'گېرمانىيە',
+ 'DG' => 'دېگو-گارشىيا',
+ 'DJ' => 'جىبۇتى',
+ 'DK' => 'دانىيە',
+ 'DM' => 'دومىنىكا',
+ 'DO' => 'دومىنىكا جۇمھۇرىيىتى',
+ 'DZ' => 'ئالجىرىيە',
+ 'EA' => 'سېيتا ۋە مېلىلا',
+ 'EC' => 'ئېكۋادور',
+ 'EE' => 'ئېستونىيە',
+ 'EG' => 'مىسىر',
+ 'EH' => 'غەربىي ساخارا',
+ 'ER' => 'ئېرىترېيە',
+ 'ES' => 'ئىسپانىيە',
+ 'ET' => 'ئېفىيوپىيە',
+ 'EU' => 'ياۋروپا ئىتتىپاقى',
+ 'FI' => 'فىنلاندىيە',
+ 'FJ' => 'فىجى',
+ 'FK' => 'فالكلاند ئاراللىرى',
+ 'FM' => 'مىكرونېزىيە',
+ 'FO' => 'فائېرو ئاراللىرى',
+ 'FR' => 'فىرانسىيە',
+ 'GA' => 'گابون',
+ 'GB' => 'ئەنگلىيە',
+ 'GD' => 'گىرېنادا',
+ 'GE' => 'گىروزىيە',
+ 'GF' => 'فىرانسىيەگە قاراشلىق گىۋىيانا',
+ 'GG' => 'گېرىنسى',
+ 'GH' => 'گانا',
+ 'GI' => 'جەبىلتارىق',
+ 'GL' => 'گىرېنلاند',
+ 'GM' => 'گامبىيە',
+ 'GN' => 'گىۋىنېيە',
+ 'GP' => 'گىۋادېلۇپ',
+ 'GQ' => 'ئېكۋاتور گىۋىنېيەسى',
+ 'GR' => 'گىرېتسىيە',
+ 'GS' => 'جەنۇبىي جورجىيە ۋە جەنۇبىي ساندىۋىچ ئاراللىرى',
+ 'GT' => 'گىۋاتېمالا',
+ 'GU' => 'گۇئام',
+ 'GW' => 'گىۋىنېيە-بىسسائۇ',
+ 'GY' => 'گىۋىيانا',
+ 'HK' => 'شياڭگاڭ',
+ 'HM' => 'خېرد ۋە ماك-دونالد ئارىلى',
+ 'HN' => 'ھوندۇراس',
+ 'HR' => 'كىرودىيە',
+ 'HT' => 'ھايتى',
+ 'HU' => 'ۋېنگىرىيە',
+ 'IC' => 'كانارى ئاراللىرى',
+ 'ID' => 'ھىندونېزىيە',
+ 'IE' => 'ئىرېلاندىيە',
+ 'IL' => 'ئىسرائىلىيە',
+ 'IM' => 'مېن ئارىلى',
+ 'IN' => 'ھىندىستان',
+ 'IO' => 'ئەنگلىيەنىڭ ھىندى ئوكياندىكى تەۋەلىكى',
+ 'IQ' => 'ئىراق',
+ 'IR' => 'ئىران',
+ 'IS' => 'ئىسلاندىيە',
+ 'IT' => 'ئىتالىيە',
+ 'JE' => 'جېرسېي',
+ 'JM' => 'يامايكا',
+ 'JO' => 'ئىيوردانىيە',
+ 'JP' => 'ياپونىيە',
+ 'KE' => 'كېنىيە',
+ 'KG' => 'قىرغىزىستان',
+ 'KH' => 'كامبودژا',
+ 'KI' => 'كىرىباتى',
+ 'KM' => 'كومورو',
+ 'KN' => 'ساينىت-كىرىستوفېر ۋە نېۋىس',
+ 'KP' => 'شىمالىي كورىيە',
+ 'KR' => 'جەنۇبىي كورىيە',
+ 'KW' => 'كۇۋەيت',
+ 'KY' => 'كايمان ئاراللىرى',
+ 'KZ' => 'قازاقىستان',
+ 'LA' => 'لائوس',
+ 'LB' => 'لىۋان',
+ 'LC' => 'ساينىت-لۇسىيە',
+ 'LI' => 'لىچتېنشتېين بەگلىكى',
+ 'LK' => 'سىرىلانكا',
+ 'LR' => 'لىبېرىيە',
+ 'LS' => 'لېسوتو',
+ 'LT' => 'لىتۋانىيە',
+ 'LU' => 'لىيۇكسېمبۇرگ',
+ 'LV' => 'لاتۋىيە',
+ 'LY' => 'لىۋىيە',
+ 'MA' => 'ماراكەش',
+ 'MC' => 'موناكو',
+ 'MD' => 'مولدوۋا',
+ 'ME' => 'مونتېنېگرو',
+ 'MF' => 'ساينىت-مارتېن',
+ 'MG' => 'ماداغاسقار',
+ 'MH' => 'مارشال ئاراللىرى',
+ 'MK' => 'ماكېدونىيە',
+ 'ML' => 'مالى',
+ 'MM' => 'بىرما',
+ 'MN' => 'موڭغۇلىيە',
+ 'MO' => 'ئاۋمېن',
+ 'MP' => 'شىمالىي مارىيانا ئاراللىرى',
+ 'MQ' => 'مارتىنىكا',
+ 'MR' => 'ماۋرىتانىيە',
+ 'MS' => 'مونتسېررات',
+ 'MT' => 'مالتا',
+ 'MU' => 'ماۋرىتىئۇس',
+ 'MV' => 'مالدىۋې',
+ 'MW' => 'مالاۋى',
+ 'MX' => 'مېكسىكا',
+ 'MY' => 'مالايشىيا',
+ 'MZ' => 'موزامبىك',
+ 'NA' => 'نامىبىيە',
+ 'NC' => 'يېڭى كالېدونىيە',
+ 'NE' => 'نېگىر',
+ 'NF' => 'نورفولك ئارىلى',
+ 'NG' => 'نىگېرىيە',
+ 'NI' => 'نىكاراگۇئا',
+ 'NL' => 'گوللاندىيە',
+ 'NO' => 'نورۋېگىيە',
+ 'NP' => 'نېپال',
+ 'NR' => 'ناۋرۇ',
+ 'NU' => 'نىيۇئې',
+ 'NZ' => 'يېڭى زېلاندىيە',
+ 'OM' => 'ئومان',
+ 'PA' => 'پاناما',
+ 'PE' => 'پېرۇ',
+ 'PF' => 'فىرانسىيەگە قاراشلىق پولىنېزىيە',
+ 'PG' => 'پاپۇئا يېڭى گىۋىنېيەسى',
+ 'PH' => 'فىلىپپىن',
+ 'PK' => 'پاكىستان',
+ 'PL' => 'پولشا',
+ 'PM' => 'ساينىت-پىئېر ۋە مىكېلون ئاراللىرى',
+ 'PN' => 'پىتكاير ئاراللىرى',
+ 'PR' => 'پۇئېرتو-رىكو',
+ 'PS' => 'پەلەستىن',
+ 'PT' => 'پورتۇگالىيە',
+ 'PW' => 'پالاۋ',
+ 'PY' => 'پاراگۋاي',
+ 'QA' => 'قاتار',
+ 'QO' => 'ئوكيانىيە ئەتراپىدىكى ئاراللار',
+ 'RE' => 'رېئونىيون',
+ 'RO' => 'رۇمىنىيە',
+ 'RS' => 'سېربىيە',
+ 'RU' => 'رۇسىيە',
+ 'RW' => 'رىۋاندا',
+ 'SA' => 'سەئۇدى ئەرەبىستان',
+ 'SB' => 'سولومون ئاراللىرى',
+ 'SC' => 'سېيشېل',
+ 'SD' => 'سۇدان',
+ 'SE' => 'شىۋېتسىيە',
+ 'SG' => 'سىنگاپور',
+ 'SH' => 'ساينىت ھېلېنا',
+ 'SI' => 'سىلوۋېنىيە',
+ 'SJ' => 'سىۋالبارد ۋە يان-مايېن ئارىلى',
+ 'SK' => 'سىلوۋاكىيە',
+ 'SL' => 'سېررالېئون',
+ 'SM' => 'سان-مارىنو',
+ 'SN' => 'سېنېگال',
+ 'SO' => 'سومالى',
+ 'SR' => 'سۇرىنام',
+ 'SS' => 'جەنۇبىي سۇدان',
+ 'ST' => 'سان تومې ۋە پرىنسىپې',
+ 'SV' => 'ئەل سالۋادور',
+ 'SX' => 'سىنت مارتېن',
+ 'SY' => 'سۈرىيە',
+ 'SZ' => 'سىۋېزىلاند',
+ 'TA' => 'ترىستان داكۇنھا',
+ 'TC' => 'تۇركس ۋە كايكوس ئاراللىرى',
+ 'TD' => 'چاد',
+ 'TF' => 'فىرانسىيەگە قاراشلىق جەنۇبتىكى زېمىنلىرى',
+ 'TG' => 'توگو',
+ 'TH' => 'تايلاند',
+ 'TJ' => 'تاجىكىستان',
+ 'TK' => 'توكېلاۋ',
+ 'TL' => 'شەرقىي تىمور',
+ 'TM' => 'تۈركمەنىستان',
+ 'TN' => 'تۇنىس',
+ 'TO' => 'تونگا',
+ 'TR' => 'تۈركىيە',
+ 'TT' => 'تىرىنىداد ۋە توباگو',
+ 'TV' => 'تۇۋالۇ',
+ 'TW' => 'تەيۋەن',
+ 'TZ' => 'تانزانىيە',
+ 'UA' => 'ئۇكرائىنا',
+ 'UG' => 'ئۇگاندا',
+ 'UM' => 'ئامېرىكا تەۋەلىكىدىكى سىرتقى كىچىك ئاراللار',
+ 'US' => 'ئا ق ش',
+ 'UY' => 'ئۇرۇگۋاي',
+ 'UZ' => 'ئۆزبېكىستان',
+ 'VA' => 'ۋاتىكان شەھىرى',
+ 'VC' => 'ساينىت-ۋىنسېنت ۋە گىرېنادىنېس',
+ 'VE' => 'ۋېنېزۇئېلا',
+ 'VG' => 'ئەنگلىيەگە قاراشلىق ۋىرجىن ئارىلى',
+ 'VI' => 'ئامېرىكا تەۋەلىكىدىكى ۋىرجىن تاقىم ئاراللىرى',
+ 'VN' => 'ۋىيېتنام',
+ 'VU' => 'ۋانۇئاتۇ',
+ 'WF' => 'ۋالىس ۋە فۇتۇنا',
+ 'WS' => 'ساموئا',
+ 'XK' => 'كوسوۋو',
+ 'YE' => 'يەمەن',
+ 'YT' => 'مايوتتې',
+ 'ZA' => 'جەنۇبىي ئافرىقا',
+ 'ZM' => 'زامبىيە',
+ 'ZW' => 'زىمبابۋې',
+);
+
+$timeUnits = array(
+ 'day-future-one' => '{0} كۈندىن كېيىن',
+ 'day-future-other' => '{0} كۈندىن كېيىن',
+ 'day-one' => '{0} كۈن',
+ 'day-other' => '{0} كۈن',
+ 'day-past-one' => '{0} كۈن ئىلگىرى',
+ 'day-past-other' => '{0} كۈن ئىلگىرى',
+ 'hour-future-one' => '{0} سائەتتىن كېيىن',
+ 'hour-future-other' => '{0} سائەتتىن كېيىن',
+ 'hour-one' => '{0} سائەت',
+ 'hour-other' => '{0} سائەت',
+ 'hour-past-one' => '{0} سائەت ئىلگىرى',
+ 'hour-past-other' => '{0} سائەت ئىلگىرى',
+ 'millisecond-one' => '{0} مىللى سېكۇنت',
+ 'millisecond-other' => '{0} مىللى سېكۇنت',
+ 'minute-future-one' => '{0} مىنۇتتىن كېيىن',
+ 'minute-future-other' => '{0} مىنۇتتىن كېيىن',
+ 'minute-one' => '{0} مىنۇت',
+ 'minute-other' => '{0} مىنۇت',
+ 'minute-past-one' => '{0} مىنۇت ئىلگىرى',
+ 'minute-past-other' => '{0} مىنۇت ئىلگىرى',
+ 'month-future-one' => '{0} ئايدىن كېيىن',
+ 'month-future-other' => '{0} ئايدىن كېيىن',
+ 'month-one' => '{0} ئاي',
+ 'month-other' => '{0} ئاي',
+ 'month-past-one' => '{0} ئاي ئىلگىرى',
+ 'month-past-other' => '{0} ئاي ئىلگىرى',
+ 'second-future-one' => '{0} سېكۇنتتىن كېيىن',
+ 'second-future-other' => '{0} سېكۇنتتىن كېيىن',
+ 'second-one' => '{0} سېكۇنت',
+ 'second-other' => '{0} سېكۇنت',
+ 'second-past-one' => '{0} سېكۇنت ئىلگىرى',
+ 'second-past-other' => '{0} سېكۇنت ئىلگىرى',
+ 'week-future-one' => '{0} ھەپتىدىن كېيىن',
+ 'week-future-other' => '{0} ھەپتىدىن كېيىن',
+ 'week-one' => '{0} ھەپتە',
+ 'week-other' => '{0} ھەپتە',
+ 'week-past-one' => '{0} ھەپتە ئىلگىرى',
+ 'week-past-other' => '{0} ھەپتە ئىلگىرى',
+ 'year-future-one' => '{0} يىلدىن كېيىن',
+ 'year-future-other' => '{0} يىلدىن كېيىن',
+ 'year-one' => '{0} يىل',
+ 'year-other' => '{0} يىل',
+ 'year-past-one' => '{0} يىل ئىلگىرى',
+ 'year-past-other' => '{0} يىل ئىلگىرى',
+);
diff --git a/MLEB/cldr/CldrNames/CldrNamesUk.php b/MLEB/cldr/CldrNames/CldrNamesUk.php
new file mode 100644
index 00000000..8c3a450d
--- /dev/null
+++ b/MLEB/cldr/CldrNames/CldrNamesUk.php
@@ -0,0 +1,1442 @@
+<?php
+
+$languageNames = array(
+ 'aa' => 'афарська',
+ 'ab' => 'абхазька',
+ 'ace' => 'ачехська',
+ 'ach' => 'ачолі',
+ 'ada' => 'адангме',
+ 'ady' => 'адигейська',
+ 'ae' => 'авестійська',
+ 'af' => 'африкаанс',
+ 'afh' => 'африхілі',
+ 'agq' => 'агем',
+ 'ain' => 'айнська',
+ 'ak' => 'акан',
+ 'akk' => 'аккадська',
+ 'ale' => 'алеутська',
+ 'alt' => 'південноалтайська',
+ 'am' => 'амхарська',
+ 'an' => 'арагонська',
+ 'ang' => 'давньоанглійська',
+ 'anp' => 'ангіка',
+ 'ar' => 'арабська',
+ 'ar-001' => 'сучасна стандартна арабська',
+ 'arc' => 'арамейська',
+ 'arn' => 'арауканська',
+ 'arp' => 'арапахо',
+ 'arw' => 'аравакська',
+ 'as' => 'ассамська',
+ 'asa' => 'асу',
+ 'ast' => 'астурська',
+ 'av' => 'аварська',
+ 'awa' => 'авадхі',
+ 'ay' => 'аймара',
+ 'az' => 'азербайджанська',
+ 'ba' => 'башкирська',
+ 'bal' => 'балучі',
+ 'ban' => 'балійська',
+ 'bas' => 'баса',
+ 'bax' => 'бамум',
+ 'bbj' => 'гомала',
+ 'be' => 'білоруська',
+ 'bej' => 'беджа',
+ 'bem' => 'бемба',
+ 'bez' => 'бена',
+ 'bfd' => 'бафут',
+ 'bg' => 'болгарська',
+ 'bho' => 'бходжпурі',
+ 'bi' => 'біслама',
+ 'bik' => 'бікольська',
+ 'bin' => 'біні',
+ 'bkm' => 'ком',
+ 'bla' => 'сіксіка',
+ 'bm' => 'бамбара',
+ 'bn' => 'бенгальська',
+ 'bo' => 'тибетська',
+ 'br' => 'бретонська',
+ 'bra' => 'брадж',
+ 'brx' => 'бодо',
+ 'bs' => 'боснійська',
+ 'bss' => 'акус',
+ 'bua' => 'бурятська',
+ 'bug' => 'бугійська',
+ 'bum' => 'булу',
+ 'byn' => 'блін',
+ 'byv' => 'медумба',
+ 'ca' => 'каталонська',
+ 'cad' => 'каддо',
+ 'car' => 'карібська',
+ 'cay' => 'кайюга',
+ 'cch' => 'атсам',
+ 'ce' => 'чеченська',
+ 'ceb' => 'себуанська',
+ 'cgg' => 'кіга',
+ 'ch' => 'чаморро',
+ 'chb' => 'чібча',
+ 'chg' => 'чагатайська',
+ 'chk' => 'чуукська',
+ 'chm' => 'марійська',
+ 'chn' => 'чинук жаргон',
+ 'cho' => 'чокто',
+ 'chp' => 'чіпев’ян',
+ 'chr' => 'черокі',
+ 'chy' => 'чейєнн',
+ 'ckb' => 'курдська (сорані)',
+ 'co' => 'корсиканська',
+ 'cop' => 'коптська',
+ 'cr' => 'крі',
+ 'crh' => 'кримськотатарська',
+ 'cs' => 'чеська',
+ 'csb' => 'кашубська',
+ 'cu' => 'церковнослов’янська',
+ 'cv' => 'чуваська',
+ 'cy' => 'валлійська',
+ 'da' => 'данська',
+ 'dak' => 'дакота',
+ 'dar' => 'даргінська',
+ 'dav' => 'таіта',
+ 'de' => 'німецька',
+ 'de-ch' => 'верхньонімецька (Швейцарія)',
+ 'del' => 'делаварська',
+ 'den' => 'слейв',
+ 'dgr' => 'догрибська',
+ 'din' => 'дінка',
+ 'dje' => 'джерма',
+ 'doi' => 'догрі',
+ 'dsb' => 'нижньолужицька',
+ 'dua' => 'дуала',
+ 'dum' => 'середньонідерландська',
+ 'dv' => 'дівехі',
+ 'dyo' => 'дьола-фоні',
+ 'dyu' => 'діула',
+ 'dz' => 'дзонг-ке',
+ 'dzg' => 'дазага',
+ 'ebu' => 'ембу',
+ 'ee' => 'еве',
+ 'efi' => 'ефік',
+ 'egy' => 'давньоєгипетська',
+ 'eka' => 'екаджук',
+ 'el' => 'грецька',
+ 'elx' => 'еламська',
+ 'en' => 'англійська',
+ 'en-gb' => 'англійська британська',
+ 'enm' => 'середньоанглійська',
+ 'eo' => 'есперанто',
+ 'es' => 'іспанська',
+ 'es-es' => 'іспанська (Європа)',
+ 'et' => 'естонська',
+ 'eu' => 'баскська',
+ 'ewo' => 'евондо',
+ 'fa' => 'перська',
+ 'fan' => 'фанг',
+ 'fat' => 'фанті',
+ 'ff' => 'фула',
+ 'fi' => 'фінська',
+ 'fil' => 'філіппінська',
+ 'fj' => 'фіджі',
+ 'fo' => 'фарерська',
+ 'fon' => 'фон',
+ 'fr' => 'французька',
+ 'frm' => 'середньофранцузька',
+ 'fro' => 'давньофранцузька',
+ 'frr' => 'фризька північна',
+ 'frs' => 'фризька східна',
+ 'fur' => 'фріульська',
+ 'fy' => 'західно-фризька',
+ 'ga' => 'ірландська',
+ 'gaa' => 'га',
+ 'gag' => 'гагаузька',
+ 'gay' => 'гайо',
+ 'gba' => 'гбайя',
+ 'gd' => 'гаельська',
+ 'gez' => 'гєез',
+ 'gil' => 'гільбертська',
+ 'gl' => 'галісійська',
+ 'gmh' => 'середньоверхньонімецька',
+ 'gn' => 'гуарані',
+ 'goh' => 'давньоверхньонімецька',
+ 'gon' => 'гонді',
+ 'gor' => 'горонтало',
+ 'got' => 'готська',
+ 'grb' => 'гребо',
+ 'grc' => 'давньогрецька',
+ 'gsw' => 'німецька швейцарська',
+ 'gu' => 'гуджараті',
+ 'guz' => 'гусії',
+ 'gv' => 'менкська',
+ 'gwi' => 'кучін',
+ 'ha' => 'хауса',
+ 'hai' => 'хайда',
+ 'haw' => 'гавайська',
+ 'he' => 'іврит',
+ 'hi' => 'гінді',
+ 'hil' => 'хілігайнон',
+ 'hit' => 'хітіті',
+ 'hmn' => 'хмонг',
+ 'ho' => 'хірі-моту',
+ 'hr' => 'хорватська',
+ 'hsb' => 'верхньолужицька',
+ 'ht' => 'гаїтянська',
+ 'hu' => 'угорська',
+ 'hup' => 'хупа',
+ 'hy' => 'вірменська',
+ 'hz' => 'гереро',
+ 'ia' => 'інтерлінгва',
+ 'iba' => 'ібанська',
+ 'ibb' => 'ібібіо',
+ 'id' => 'індонезійська',
+ 'ie' => 'інтерлінгве',
+ 'ig' => 'ігбо',
+ 'ii' => 'сичуань',
+ 'ik' => 'інупіак',
+ 'ilo' => 'ілоканська',
+ 'inh' => 'інгуська',
+ 'io' => 'ідо',
+ 'is' => 'ісландська',
+ 'it' => 'італійська',
+ 'iu' => 'інуктітут',
+ 'ja' => 'японська',
+ 'jbo' => 'ложбан',
+ 'jgo' => 'нгомба',
+ 'jmc' => 'мачаме',
+ 'jpr' => 'іудео-перська',
+ 'jrb' => 'іудео-арабська',
+ 'jv' => 'яванська',
+ 'ka' => 'грузинська',
+ 'kaa' => 'каракалпацька',
+ 'kab' => 'кабільська',
+ 'kac' => 'качін',
+ 'kaj' => 'йю',
+ 'kam' => 'камба',
+ 'kaw' => 'каві',
+ 'kbd' => 'кабардинська',
+ 'kbl' => 'канембу',
+ 'kcg' => 'тіап',
+ 'kde' => 'маконде',
+ 'kea' => 'кабувердіану',
+ 'kfo' => 'коро',
+ 'kg' => 'конґолезька',
+ 'kha' => 'кхасі',
+ 'kho' => 'хотаносакська',
+ 'khq' => 'койра чіїні',
+ 'ki' => 'кікуйю',
+ 'kj' => 'кунама',
+ 'kk' => 'казахська',
+ 'kkj' => 'како',
+ 'kl' => 'калааллісут',
+ 'kln' => 'календжин',
+ 'km' => 'кхмерська',
+ 'kmb' => 'кімбунду',
+ 'kn' => 'каннада',
+ 'ko' => 'корейська',
+ 'koi' => 'комі-перм’яцька',
+ 'kok' => 'конкані',
+ 'kos' => 'косрае',
+ 'kpe' => 'кпеллє',
+ 'kr' => 'канурі',
+ 'krc' => 'карачаєво-балкарська',
+ 'krl' => 'карельська',
+ 'kru' => 'курукх',
+ 'ks' => 'кашмірська',
+ 'ksb' => 'шамбала',
+ 'ksf' => 'бафіа',
+ 'ksh' => 'колоніан',
+ 'ku' => 'курдська',
+ 'kum' => 'кумицька',
+ 'kut' => 'кутенаї',
+ 'kv' => 'комі',
+ 'kw' => 'корнійська',
+ 'ky' => 'киргизька',
+ 'la' => 'латинська',
+ 'lad' => 'ладіно',
+ 'lag' => 'лангі',
+ 'lah' => 'ланда',
+ 'lam' => 'ламба',
+ 'lb' => 'люксембурзька',
+ 'lez' => 'лезгінська',
+ 'lg' => 'ганда',
+ 'li' => 'лімбургійська',
+ 'lkt' => 'лакота',
+ 'ln' => 'лінгала',
+ 'lo' => 'лаоська',
+ 'lol' => 'монго',
+ 'loz' => 'лозі',
+ 'lt' => 'литовська',
+ 'lu' => 'луба-катанга',
+ 'lua' => 'луба-лулуа',
+ 'lui' => 'луїсеньо',
+ 'lun' => 'лунда',
+ 'luo' => 'луо',
+ 'lus' => 'лушей',
+ 'luy' => 'луйя',
+ 'lv' => 'латвійська',
+ 'mad' => 'мадурська',
+ 'maf' => 'мафа',
+ 'mag' => 'магадхі',
+ 'mai' => 'майтхілі',
+ 'mak' => 'макасарська',
+ 'man' => 'мандінго',
+ 'mas' => 'масаї',
+ 'mde' => 'маба',
+ 'mdf' => 'мокша',
+ 'mdr' => 'мандарська',
+ 'men' => 'менде',
+ 'mer' => 'меру',
+ 'mfe' => 'маврикійська креольська',
+ 'mg' => 'малагасійська',
+ 'mga' => 'середньоірландська',
+ 'mgh' => 'макува-меето',
+ 'mgo' => 'мета',
+ 'mh' => 'маршалльська',
+ 'mi' => 'маорі',
+ 'mic' => 'мікмак',
+ 'min' => 'мінангкабау',
+ 'mk' => 'македонська',
+ 'ml' => 'малаялам',
+ 'mn' => 'монгольська',
+ 'mnc' => 'манчжурська',
+ 'mni' => 'маніпурі',
+ 'moh' => 'магавк',
+ 'mos' => 'моссі',
+ 'mr' => 'маратхі',
+ 'ms' => 'малайська',
+ 'mt' => 'мальтійська',
+ 'mua' => 'мунданг',
+ 'mul' => 'декілька мов',
+ 'mus' => 'крік',
+ 'mwl' => 'мірандська',
+ 'mwr' => 'марварі',
+ 'my' => 'бірманська',
+ 'mye' => 'миін',
+ 'myv' => 'ерзя',
+ 'na' => 'науру',
+ 'nap' => 'неаполітанська',
+ 'naq' => 'нама',
+ 'nb' => 'букмол (Норвегія)',
+ 'nd' => 'ндебелє північна',
+ 'nds' => 'нижньонімецька',
+ 'ne' => 'непальська',
+ 'new' => 'неварі',
+ 'ng' => 'ндонга',
+ 'nia' => 'ніаська',
+ 'niu' => 'ніуе',
+ 'nl' => 'голландська',
+ 'nl-be' => 'фламандська',
+ 'nmg' => 'квазіо',
+ 'nn' => 'нюношк (Норвегія)',
+ 'nnh' => 'нгємбун',
+ 'no' => 'норвезька',
+ 'nog' => 'ногайська',
+ 'non' => 'давньонорвезька',
+ 'nqo' => 'нко',
+ 'nr' => 'ндебелє південна',
+ 'nso' => 'сото північна',
+ 'nus' => 'нуер',
+ 'nv' => 'навахо',
+ 'nwc' => 'неварі класична',
+ 'ny' => 'ньянджа',
+ 'nym' => 'ньямвезі',
+ 'nyn' => 'ньянколе',
+ 'nyo' => 'ньоро',
+ 'nzi' => 'нзіма',
+ 'oc' => 'окитан',
+ 'oj' => 'оджібва',
+ 'om' => 'оромо',
+ 'or' => 'орія',
+ 'os' => 'осетинська',
+ 'osa' => 'осейдж',
+ 'ota' => 'османська',
+ 'pa' => 'панджабі',
+ 'pag' => 'пангасінанська',
+ 'pal' => 'пехлеві',
+ 'pam' => 'пампанга',
+ 'pap' => 'пап’яменто',
+ 'pau' => 'палауанська',
+ 'peo' => 'давньоперська',
+ 'phn' => 'фінікійсько-пунічна',
+ 'pi' => 'палі',
+ 'pl' => 'польська',
+ 'pon' => 'понапе',
+ 'pro' => 'давньопровансальська',
+ 'ps' => 'пушту',
+ 'pt' => 'португальська',
+ 'pt-pt' => 'португальська (Європа)',
+ 'qu' => 'кечуа',
+ 'quc' => 'кіче',
+ 'raj' => 'раджастхані',
+ 'rap' => 'рапануї',
+ 'rar' => 'раротонга',
+ 'rm' => 'ретороманська',
+ 'rn' => 'рунді',
+ 'ro' => 'румунська',
+ 'ro-md' => 'молдавська',
+ 'rof' => 'ромбо',
+ 'rom' => 'циганська',
+ 'ru' => 'російська',
+ 'rup' => 'арумунська',
+ 'rw' => 'кіньяруанда',
+ 'rwk' => 'Рва',
+ 'sa' => 'санскрит',
+ 'sad' => 'сандаве',
+ 'sah' => 'якутська',
+ 'sam' => 'самаритянська арамейська',
+ 'saq' => 'самбуру',
+ 'sas' => 'сасакська',
+ 'sat' => 'сантальська',
+ 'sba' => 'нгамбай',
+ 'sbp' => 'сангу',
+ 'sc' => 'сардинська',
+ 'scn' => 'сицилійська',
+ 'sco' => 'шотландська',
+ 'sd' => 'сіндхі',
+ 'se' => 'саамська північна',
+ 'see' => 'сенека',
+ 'seh' => 'сена',
+ 'sel' => 'селькупська',
+ 'ses' => 'койраборо сені',
+ 'sg' => 'санго',
+ 'sga' => 'давньоірландська',
+ 'sh' => 'сербсько-хорватська',
+ 'shi' => 'тачеліт',
+ 'shn' => 'шанська',
+ 'shu' => 'чадійська арабська',
+ 'si' => 'сингальська',
+ 'sid' => 'сідамо',
+ 'sk' => 'словацька',
+ 'sl' => 'словенська',
+ 'sm' => 'самоанська',
+ 'sma' => 'саамська південна',
+ 'smj' => 'саамська луле',
+ 'smn' => 'саамська інарі',
+ 'sms' => 'саамська скольт',
+ 'sn' => 'шона',
+ 'snk' => 'сонінке',
+ 'so' => 'сомалі',
+ 'sog' => 'согдійська',
+ 'sq' => 'албанська',
+ 'sr' => 'сербська',
+ 'srn' => 'сранан тонго',
+ 'srr' => 'серер',
+ 'ss' => 'сісваті',
+ 'ssy' => 'сахо',
+ 'st' => 'сото південна',
+ 'su' => 'сунданська',
+ 'suk' => 'сукума',
+ 'sus' => 'сусу',
+ 'sux' => 'шумерська',
+ 'sv' => 'шведська',
+ 'sw' => 'суахілі',
+ 'swb' => 'коморська',
+ 'swc' => 'конгійське суахілі',
+ 'syc' => 'сирійська класична',
+ 'syr' => 'сирійська',
+ 'ta' => 'тамільська',
+ 'te' => 'телугу',
+ 'tem' => 'темне',
+ 'teo' => 'тесо',
+ 'ter' => 'терено',
+ 'tet' => 'тетум',
+ 'tg' => 'таджицька',
+ 'th' => 'тайська',
+ 'ti' => 'тигринья',
+ 'tig' => 'тигре',
+ 'tiv' => 'тів',
+ 'tk' => 'туркменська',
+ 'tkl' => 'токелау',
+ 'tl' => 'тагальська',
+ 'tlh' => 'клінгон',
+ 'tli' => 'тлінгіт',
+ 'tmh' => 'тамашек',
+ 'tn' => 'тсвана',
+ 'to' => 'тонганська',
+ 'tog' => 'ньяса тонга',
+ 'tpi' => 'ток-пісін',
+ 'tr' => 'турецька',
+ 'trv' => 'тароко',
+ 'ts' => 'тсонга',
+ 'tsi' => 'цимшиан',
+ 'tt' => 'татарська',
+ 'tum' => 'тумбука',
+ 'tvl' => 'тувалу',
+ 'tw' => 'тві',
+ 'twq' => 'тасавак',
+ 'ty' => 'таїтянська',
+ 'tyv' => 'тувинська',
+ 'tzm' => 'центральномароканська тамазіт',
+ 'udm' => 'удмуртська',
+ 'ug' => 'уйгурська',
+ 'uga' => 'угаритська',
+ 'uk' => 'українська',
+ 'umb' => 'умбунду',
+ 'und' => 'невідома мова',
+ 'ur' => 'урду',
+ 'uz' => 'узбецька',
+ 'vai' => 'ваї',
+ 've' => 'венда',
+ 'vi' => 'вʼєтнамська',
+ 'vo' => 'волап’юк',
+ 'vot' => 'водська',
+ 'vun' => 'вуньо',
+ 'wa' => 'валлонська',
+ 'wae' => 'Валзерська',
+ 'wal' => 'валамо',
+ 'war' => 'варай',
+ 'was' => 'вашо',
+ 'wo' => 'волоф',
+ 'xal' => 'калмицька',
+ 'xh' => 'кхоса',
+ 'xog' => 'сога',
+ 'yao' => 'яо',
+ 'yap' => 'яп',
+ 'yav' => 'янгбен',
+ 'ybb' => 'ємба',
+ 'yi' => 'ідиш',
+ 'yo' => 'йоруба',
+ 'yue' => 'кантонська',
+ 'za' => 'чжуан',
+ 'zap' => 'сапотекська',
+ 'zbl' => 'блісса мова',
+ 'zen' => 'зенага',
+ 'zgh' => 'стандартна марокканська берберська',
+ 'zh' => 'китайська',
+ 'zu' => 'зулуська',
+ 'zun' => 'зуньї',
+ 'zxx' => 'немає мовного вмісту',
+ 'zza' => 'зазакі',
+);
+
+$currencyNames = array(
+ 'ADP' => 'андоррська песета',
+ 'AED' => 'дирхам ОАЕ',
+ 'AFA' => 'афгані (1927–2002)',
+ 'AFN' => 'афганський афгані',
+ 'ALL' => 'албанський лек',
+ 'AMD' => 'вірменський драм',
+ 'ANG' => 'нідерландський антильський гульден',
+ 'AOA' => 'ангольська кванза',
+ 'AOK' => 'ангольська кванза (1977–1990)',
+ 'AON' => 'ангольська нова кванза (1990–2000)',
+ 'AOR' => 'ангольська кванза реаджастадо (1995–1999)',
+ 'ARA' => 'аргентинський австрал',
+ 'ARP' => 'аргентинський песо (1983–1985)',
+ 'ARS' => 'аргентинський песо',
+ 'ATS' => 'австрійський шилінг',
+ 'AUD' => 'австралійський долар',
+ 'AWG' => 'арубський флорин',
+ 'AZM' => 'азербайджанський манат (1993–2006)',
+ 'AZN' => 'азербайджанський манат',
+ 'BAD' => 'динар (Боснія і Герцеговина)',
+ 'BAM' => 'конвертована марка Боснії і Герцеговини',
+ 'BBD' => 'барбадоський долар',
+ 'BDT' => 'бангладеська така',
+ 'BEC' => 'бельгійський франк (конвертований)',
+ 'BEF' => 'бельгійський франк',
+ 'BEL' => 'бельгійський франк (фінансовий)',
+ 'BGL' => 'болгарський твердий лев',
+ 'BGN' => 'болгарський лев',
+ 'BHD' => 'бахрейнський динар',
+ 'BIF' => 'бурундійський франк',
+ 'BMD' => 'бермудський долар',
+ 'BND' => 'брунейський долар',
+ 'BOB' => 'болівійський болівіано',
+ 'BOP' => 'болівійське песо',
+ 'BOV' => 'болівійський мвдол',
+ 'BRB' => 'бразильське нове крузейро (1967–1986)',
+ 'BRC' => 'бразильське крузадо',
+ 'BRE' => 'бразильське крузейро (1990–1993)',
+ 'BRL' => 'бразильський реал',
+ 'BRN' => 'бразильське нове крузадо',
+ 'BRR' => 'бразильське крузейро',
+ 'BSD' => 'багамський долар',
+ 'BTN' => 'бутанський нгултрум',
+ 'BUK' => 'бірманський кіат',
+ 'BWP' => 'ботсванська пула',
+ 'BYB' => 'білоруський новий рубль (1994–1999)',
+ 'BYR' => 'білоруський рубль',
+ 'BZD' => 'белізький долар',
+ 'CAD' => 'канадський долар',
+ 'CDF' => 'конголезький франк',
+ 'CHE' => 'євро WIR',
+ 'CHF' => 'швейцарський франк',
+ 'CHW' => 'франк WIR',
+ 'CLF' => 'чилійський юнідадес де фоменто',
+ 'CLP' => 'чилійський песо',
+ 'CNY' => 'китайський юань',
+ 'COP' => 'колумбійський песо',
+ 'COU' => 'одиниця реальної вартості',
+ 'CRC' => 'костариканський колон',
+ 'CSD' => 'старий сербський динар',
+ 'CSK' => 'чехословацька тверда крона',
+ 'CUC' => 'кубинський конвертований песо',
+ 'CUP' => 'кубинський песо',
+ 'CVE' => 'ескудо Кабо-Верде',
+ 'CYP' => 'кіпрський фунт',
+ 'CZK' => 'чеська крона',
+ 'DDM' => 'марка НДР',
+ 'DEM' => 'німецька марка',
+ 'DJF' => 'джибутійський франк',
+ 'DKK' => 'данська крона',
+ 'DOP' => 'домініканський песо',
+ 'DZD' => 'алжирський динар',
+ 'ECS' => 'еквадорський сукре',
+ 'ECV' => 'еквадорський юнідад де валор константе',
+ 'EEK' => 'естонська крона',
+ 'EGP' => 'єгипетський фунт',
+ 'ERN' => 'еритрейська накфа',
+ 'ESA' => 'іспанська песета ("А" рахунок)',
+ 'ESB' => 'іспанська песета (конвертовані рахунки)',
+ 'ESP' => 'іспанська песета',
+ 'ETB' => 'ефіопський бир',
+ 'EUR' => 'євро',
+ 'FIM' => 'фінляндська марка',
+ 'FJD' => 'фіджійський долар',
+ 'FKP' => 'фунт Фолклендських островів',
+ 'FRF' => 'французький франк',
+ 'GBP' => 'англійський фунт стерлінгів',
+ 'GEK' => 'грузинський купон',
+ 'GEL' => 'грузинський ларі',
+ 'GHC' => 'ганський седі (1979–2007)',
+ 'GHS' => 'ганський седі',
+ 'GIP' => 'гібралтарський фунт',
+ 'GMD' => 'гамбійський даласі',
+ 'GNF' => 'гвінейський франк',
+ 'GNS' => 'гвінейське сілі',
+ 'GQE' => 'еквеле (Екваторіальна Ґвінея)',
+ 'GRD' => 'грецька драхма',
+ 'GTQ' => 'гватемальський кетсаль',
+ 'GWE' => 'ескудо португальської гвінеї',
+ 'GWP' => 'песо Гвінеї-Бісау',
+ 'GYD' => 'гаянський долар',
+ 'HKD' => 'гонконгський долар',
+ 'HNL' => 'гондураська лемпіра',
+ 'HRD' => 'хорватський динар',
+ 'HRK' => 'хорватська куна',
+ 'HTG' => 'гаїтянський гурд',
+ 'HUF' => 'угорський форинт',
+ 'IDR' => 'індонезійська рупія',
+ 'IEP' => 'ірландський фунт',
+ 'ILP' => 'ізраїльський фунт',
+ 'ILS' => 'ізраїльський новий шекель',
+ 'INR' => 'індійська рупія',
+ 'IQD' => 'іракський динар',
+ 'IRR' => 'іранський ріал',
+ 'ISK' => 'ісландська крона',
+ 'ITL' => 'італійська ліра',
+ 'JMD' => 'ямайський долар',
+ 'JOD' => 'йорданський динар',
+ 'JPY' => 'японська єна',
+ 'KES' => 'кенійський шилінг',
+ 'KGS' => 'киргизький сом',
+ 'KHR' => 'камбоджійський рієль',
+ 'KMF' => 'коморський франк',
+ 'KPW' => 'північнокорейський вон',
+ 'KRW' => 'південнокорейський вон',
+ 'KWD' => 'кувейтський динар',
+ 'KYD' => 'долар Кайманових островів',
+ 'KZT' => 'казахстанський тенге',
+ 'LAK' => 'лаоський кіп',
+ 'LBP' => 'ліванський фунт',
+ 'LKR' => 'шрі-ланкійська рупія',
+ 'LRD' => 'ліберійський долар',
+ 'LSL' => 'лесотський лоті',
+ 'LTL' => 'литовський літ',
+ 'LTT' => 'литовський талон',
+ 'LUC' => 'люксембурґський франк (конвертований)',
+ 'LUF' => 'люксембурзький франк',
+ 'LUL' => 'люксембурґський франк (фінансовий)',
+ 'LVL' => 'латвійський лат',
+ 'LVR' => 'латвійський рубль',
+ 'LYD' => 'лівійський динар',
+ 'MAD' => 'марокканський дирхам',
+ 'MAF' => 'марокканський франк',
+ 'MDL' => 'молдовський лей',
+ 'MGA' => 'малагасійський аріарі',
+ 'MGF' => 'мадагаскарський франк',
+ 'MKD' => 'македонський денар',
+ 'MLF' => 'малійський франк',
+ 'MMK' => 'кʼят Мʼянми',
+ 'MNT' => 'монгольський тугрик',
+ 'MOP' => 'патака Макао',
+ 'MRO' => 'мавританська угія',
+ 'MTL' => 'мальтійська ліра',
+ 'MTP' => 'мальтійський фунт',
+ 'MUR' => 'маврикійська рупія',
+ 'MVR' => 'мальдівська руфія',
+ 'MWK' => 'малавійська квача',
+ 'MXN' => 'мексиканський песо',
+ 'MXP' => 'мексиканське срібне песо (1861–1992)',
+ 'MXV' => 'мексиканський юнідад де інверсіон',
+ 'MYR' => 'малайзійський рингіт',
+ 'MZE' => 'мозамбіцький ескудо',
+ 'MZM' => 'старий мозамбіцький метикал',
+ 'MZN' => 'мозамбіцький метикал',
+ 'NAD' => 'намібійський долар',
+ 'NGN' => 'нігерійська найра',
+ 'NIC' => 'нікарагуанська кордоба',
+ 'NIO' => 'нікарагуанська кордоба оро',
+ 'NLG' => 'нідерландський гульден',
+ 'NOK' => 'норвезька крона',
+ 'NPR' => 'непальська рупія',
+ 'NZD' => 'новозеландський долар',
+ 'OMR' => 'оманський ріал',
+ 'PAB' => 'панамська бальбоа',
+ 'PEI' => 'перуанський інті',
+ 'PEN' => 'перуанський новий сол',
+ 'PES' => 'перуанський сол',
+ 'PGK' => 'кіна Папуа Нової Гвінеї',
+ 'PHP' => 'філіппінський песо',
+ 'PKR' => 'пакистанська рупія',
+ 'PLN' => 'польський злотий',
+ 'PLZ' => 'польський злотий (1950–1995)',
+ 'PTE' => 'португальський ескудо',
+ 'PYG' => 'парагвайський гуарані',
+ 'QAR' => 'катарський ріал',
+ 'RHD' => 'родезійський долар',
+ 'ROL' => 'старий румунський лей',
+ 'RON' => 'румунський лей',
+ 'RSD' => 'сербський динар',
+ 'RUB' => 'російський рубль',
+ 'RUR' => 'російський рубль (1991–1998)',
+ 'RWF' => 'руандійський франк',
+ 'SAR' => 'саудівський ріал',
+ 'SBD' => 'долар Соломонових Островів',
+ 'SCR' => 'сейшельська рупія',
+ 'SDD' => 'суданський динар',
+ 'SDG' => 'суданський фунт',
+ 'SDP' => 'старий суданський фунт',
+ 'SEK' => 'шведська крона',
+ 'SGD' => 'сінгапурський долар',
+ 'SHP' => 'фунт острова Святої Єлени',
+ 'SIT' => 'словенський толар',
+ 'SKK' => 'словацька крона',
+ 'SLL' => 'леоне Сьєрра-Леоне',
+ 'SOS' => 'сомалійський шилінг',
+ 'SRD' => 'суринамський долар',
+ 'SRG' => 'суринамський гульден',
+ 'SSP' => 'південносуданський фунт',
+ 'STD' => 'добра Сан-Томе і Принсіпі',
+ 'SUR' => 'радянський рубль',
+ 'SVC' => 'сальвадорський колон',
+ 'SYP' => 'сирійський фунт',
+ 'SZL' => 'свазілендський лілангені',
+ 'THB' => 'таїландський бат',
+ 'TJR' => 'таджицький рубль',
+ 'TJS' => 'таджицький сомоні',
+ 'TMM' => 'туркменський манат (1993–2009)',
+ 'TMT' => 'туркменський манат',
+ 'TND' => 'туніський динар',
+ 'TOP' => 'тонганська паанга',
+ 'TPE' => 'тіморський ескудо',
+ 'TRL' => 'турецька ліра (1922–2005)',
+ 'TRY' => 'турецька ліра',
+ 'TTD' => 'долар Тринідаду і Тобаго',
+ 'TWD' => 'новий тайванський долар',
+ 'TZS' => 'танзанійський шилінг',
+ 'UAH' => 'українська гривня',
+ 'UAK' => 'український карбованець',
+ 'UGS' => 'угандійський шилінг (1966–1987)',
+ 'UGX' => 'угандійський шилінг',
+ 'USD' => 'долар США',
+ 'USN' => 'долар США (наступного дня)',
+ 'USS' => 'долар США (цього дня)',
+ 'UYI' => 'уругвайський песо в індексованих одиницях',
+ 'UYP' => 'уругвайське песо (1975–1993)',
+ 'UYU' => 'уругвайський песо',
+ 'UZS' => 'узбецький сум',
+ 'VEB' => 'венесуельський болівар (1871–2008)',
+ 'VEF' => 'венесуельський болівар',
+ 'VND' => 'вʼєтнамський донг',
+ 'VUV' => 'вануатський вату',
+ 'WST' => 'самоанська тала',
+ 'XAF' => 'центральноафриканський франк',
+ 'XAG' => 'срібло',
+ 'XAU' => 'золото',
+ 'XBA' => 'європейська складена валютна одиниця',
+ 'XBB' => 'одиниця європейського валютного фонду',
+ 'XBC' => 'європейська розрахункова одиниця XBC',
+ 'XBD' => 'європейська розрахункова одиниця XBD',
+ 'XCD' => 'східнокарибський долар',
+ 'XDR' => 'спеціальні права запозичення',
+ 'XEU' => 'європейська валютна одиниця',
+ 'XFO' => 'французький золотий франк',
+ 'XFU' => 'французький франк UIC',
+ 'XOF' => 'західноафриканський франк BCEAO',
+ 'XPD' => 'паладій',
+ 'XPF' => 'французький тихоокеанський франк',
+ 'XPT' => 'платина',
+ 'XRE' => 'фонди RINET',
+ 'XTS' => 'код тестування валюти',
+ 'XXX' => 'невідома грошова одиниця',
+ 'YDD' => 'єменський динар',
+ 'YER' => 'єменський ріал',
+ 'YUD' => 'югославський твердий динар',
+ 'YUM' => 'югославський новий динар',
+ 'YUN' => 'югославський конвертований динар',
+ 'ZAL' => 'південноафриканський фінансовий ранд',
+ 'ZAR' => 'південноафриканський ранд',
+ 'ZMK' => 'замбійська квача (1968–2012)',
+ 'ZMW' => 'замбійська квача',
+ 'ZRN' => 'заїрський новий заїр',
+ 'ZRZ' => 'заїрський заїр',
+ 'ZWD' => 'зімбабвійський долар',
+ 'ZWL' => 'зімбабвійський долар (2009)',
+ 'ZWR' => 'зімбабвійський долар (2008)',
+);
+
+$currencySymbols = array(
+ 'AED' => 'AED',
+ 'AFN' => 'AFN',
+ 'ALL' => 'ALL',
+ 'AMD' => 'AMD',
+ 'ANG' => 'ANG',
+ 'AOA' => 'AOA',
+ 'ARS' => 'ARS',
+ 'AUD' => 'AUD',
+ 'AWG' => 'AWG',
+ 'AZN' => 'AZN',
+ 'BAM' => 'BAM',
+ 'BBD' => 'BBD',
+ 'BDT' => 'BDT',
+ 'BGN' => 'BGN',
+ 'BHD' => 'BHD',
+ 'BIF' => 'BIF',
+ 'BMD' => 'BMD',
+ 'BND' => 'BND',
+ 'BOB' => 'BOB',
+ 'BRL' => 'BRL',
+ 'BSD' => 'BSD',
+ 'BTN' => 'BTN',
+ 'BWP' => 'BWP',
+ 'BYR' => 'BYR',
+ 'BZD' => 'BZD',
+ 'CAD' => 'CAD',
+ 'CDF' => 'CDF',
+ 'CHF' => 'CHF',
+ 'CLP' => 'CLP',
+ 'CNY' => 'CNY',
+ 'COP' => 'COP',
+ 'CRC' => 'CRC',
+ 'CUC' => 'CUC',
+ 'CUP' => 'CUP',
+ 'CVE' => 'CVE',
+ 'CZK' => 'CZK',
+ 'DJF' => 'DJF',
+ 'DKK' => 'DKK',
+ 'DOP' => 'DOP',
+ 'DZD' => 'DZD',
+ 'EGP' => 'EGP',
+ 'ERN' => 'ERN',
+ 'ETB' => 'ETB',
+ 'EUR' => 'EUR',
+ 'FJD' => 'FJD',
+ 'FKP' => 'FKP',
+ 'GBP' => 'GBP',
+ 'GEL' => 'GEL',
+ 'GHS' => 'GHS',
+ 'GIP' => 'GIP',
+ 'GMD' => 'GMD',
+ 'GNF' => 'GNF',
+ 'GTQ' => 'GTQ',
+ 'GYD' => 'GYD',
+ 'HKD' => 'HKD',
+ 'HNL' => 'HNL',
+ 'HRK' => 'HRK',
+ 'HTG' => 'HTG',
+ 'HUF' => 'HUF',
+ 'IDR' => 'IDR',
+ 'ILS' => 'ILS',
+ 'INR' => 'INR',
+ 'IQD' => 'IQD',
+ 'IRR' => 'IRR',
+ 'ISK' => 'ISK',
+ 'JMD' => 'JMD',
+ 'JOD' => 'JOD',
+ 'JPY' => '¥',
+ 'KES' => 'KES',
+ 'KGS' => 'KGS',
+ 'KHR' => 'KHR',
+ 'KMF' => 'KMF',
+ 'KPW' => 'KPW',
+ 'KRW' => 'KRW',
+ 'KWD' => 'KWD',
+ 'KYD' => 'KYD',
+ 'KZT' => 'KZT',
+ 'LAK' => 'LAK',
+ 'LBP' => 'LBP',
+ 'LKR' => 'LKR',
+ 'LRD' => 'LRD',
+ 'LTL' => 'LTL',
+ 'LVL' => 'LVL',
+ 'LYD' => 'LYD',
+ 'MAD' => 'MAD',
+ 'MDL' => 'MDL',
+ 'MGA' => 'MGA',
+ 'MKD' => 'MKD',
+ 'MMK' => 'MMK',
+ 'MNT' => 'MNT',
+ 'MOP' => 'MOP',
+ 'MRO' => 'MRO',
+ 'MUR' => 'MUR',
+ 'MVR' => 'MVR',
+ 'MWK' => 'MWK',
+ 'MXN' => 'MXN',
+ 'MYR' => 'MYR',
+ 'MZN' => 'MZN',
+ 'NAD' => 'NAD',
+ 'NGN' => 'NGN',
+ 'NIO' => 'NIO',
+ 'NOK' => 'NOK',
+ 'NPR' => 'NPR',
+ 'NZD' => 'NZD',
+ 'OMR' => 'OMR',
+ 'PAB' => 'PAB',
+ 'PEN' => 'PEN',
+ 'PGK' => 'PGK',
+ 'PHP' => 'PHP',
+ 'PKR' => 'PKR',
+ 'PLN' => 'PLN',
+ 'PYG' => 'PYG',
+ 'QAR' => 'QAR',
+ 'RON' => 'RON',
+ 'RSD' => 'RSD',
+ 'RUB' => 'RUB',
+ 'RWF' => 'RWF',
+ 'SAR' => 'SAR',
+ 'SBD' => 'SBD',
+ 'SCR' => 'SCR',
+ 'SDG' => 'SDG',
+ 'SEK' => 'SEK',
+ 'SGD' => 'SGD',
+ 'SHP' => 'SHP',
+ 'SLL' => 'SLL',
+ 'SOS' => 'SOS',
+ 'SRD' => 'SRD',
+ 'SSP' => 'SSP',
+ 'STD' => 'STD',
+ 'SYP' => 'SYP',
+ 'SZL' => 'SZL',
+ 'THB' => 'THB',
+ 'TJS' => 'TJS',
+ 'TMT' => 'TMT',
+ 'TND' => 'TND',
+ 'TOP' => 'TOP',
+ 'TRY' => 'TRY',
+ 'TTD' => 'TTD',
+ 'TWD' => 'TWD',
+ 'TZS' => 'TZS',
+ 'UAH' => '₴',
+ 'UAK' => 'крб.',
+ 'UGX' => 'UGX',
+ 'USD' => 'USD',
+ 'UYU' => 'UYU',
+ 'UZS' => 'UZS',
+ 'VEF' => 'VEF',
+ 'VND' => 'VND',
+ 'VUV' => 'VUV',
+ 'WST' => 'WST',
+ 'XAF' => 'FCFA',
+ 'XCD' => 'XCD',
+ 'XOF' => 'CFA',
+ 'XPF' => 'CFPF',
+ 'YER' => 'YER',
+ 'ZAR' => 'ZAR',
+ 'ZMW' => 'ZMW',
+);
+
+$countryNames = array(
+ 'AC' => 'Острів Вознесіння',
+ 'AD' => 'Андорра',
+ 'AE' => 'Обʼєднані Арабські Емірати',
+ 'AF' => 'Афганістан',
+ 'AG' => 'Антигуа і Барбуда',
+ 'AI' => 'Ангілья',
+ 'AL' => 'Албанія',
+ 'AM' => 'Вірменія',
+ 'AN' => 'Нідерландські Антильські Острови',
+ 'AO' => 'Ангола',
+ 'AQ' => 'Антарктика',
+ 'AR' => 'Аргентина',
+ 'AS' => 'Американське Самоа',
+ 'AT' => 'Австрія',
+ 'AU' => 'Австралія',
+ 'AW' => 'Аруба',
+ 'AX' => 'Аландські острови',
+ 'AZ' => 'Азербайджан',
+ 'BA' => 'Боснія і Герцоговина',
+ 'BB' => 'Барбадос',
+ 'BD' => 'Бангладеш',
+ 'BE' => 'Бельгія',
+ 'BF' => 'Буркіна-Фасо',
+ 'BG' => 'Болгарія',
+ 'BH' => 'Бахрейн',
+ 'BI' => 'Бурунді',
+ 'BJ' => 'Бенін',
+ 'BL' => 'Сен-Бартельмі',
+ 'BM' => 'Бермуди',
+ 'BN' => 'Бруней',
+ 'BO' => 'Болівія',
+ 'BQ' => 'Нідерландські Карибські острови',
+ 'BR' => 'Бразилія',
+ 'BS' => 'Багами',
+ 'BT' => 'Бутан',
+ 'BV' => 'Острів Буве',
+ 'BW' => 'Ботсвана',
+ 'BY' => 'Білорусь',
+ 'BZ' => 'Беліз',
+ 'CA' => 'Канада',
+ 'CC' => 'Кокосові (Кілінгові) острови',
+ 'CD' => 'Конго – Кіншаса',
+ 'CF' => 'Центральноафриканська Республіка',
+ 'CG' => 'Конго – Браззавіль',
+ 'CH' => 'Швейцарія',
+ 'CI' => 'Кот-д’Івуар',
+ 'CK' => 'Острови Кука',
+ 'CL' => 'Чилі',
+ 'CM' => 'Камерун',
+ 'CN' => 'Китай',
+ 'CO' => 'Колумбія',
+ 'CP' => 'Острів Кліппертон',
+ 'CR' => 'Коста-Рика',
+ 'CU' => 'Куба',
+ 'CV' => 'Кабо Верде',
+ 'CW' => 'Кюрасао',
+ 'CX' => 'Острів Різдва',
+ 'CY' => 'Кіпр',
+ 'CZ' => 'Чехія',
+ 'DE' => 'Німеччина',
+ 'DG' => 'Дієго-Гарсія',
+ 'DJ' => 'Джибуті',
+ 'DK' => 'Данія',
+ 'DM' => 'Домініка',
+ 'DO' => 'Домініканська Республіка',
+ 'DZ' => 'Алжир',
+ 'EA' => 'Сеута і Мелілья',
+ 'EC' => 'Еквадор',
+ 'EE' => 'Естонія',
+ 'EG' => 'Єгипет',
+ 'EH' => 'Західна Сахара',
+ 'ER' => 'Еритрея',
+ 'ES' => 'Іспанія',
+ 'ET' => 'Ефіопія',
+ 'EU' => 'Європейський Союз',
+ 'FI' => 'Фінляндія',
+ 'FJ' => 'Фіджі',
+ 'FK' => 'Фолклендські острови',
+ 'FM' => 'Мікронезія',
+ 'FO' => 'Фарерські острови',
+ 'FR' => 'Франція',
+ 'GA' => 'Габон',
+ 'GB' => 'Велика Британія',
+ 'GD' => 'Гренада',
+ 'GE' => 'Грузія',
+ 'GF' => 'Французька Гвіана',
+ 'GG' => 'Гернсі',
+ 'GH' => 'Гана',
+ 'GI' => 'Гібралтар',
+ 'GL' => 'Гренландія',
+ 'GM' => 'Гамбія',
+ 'GN' => 'Гвінея',
+ 'GP' => 'Гваделупа',
+ 'GQ' => 'Екваторіальна Гвінея',
+ 'GR' => 'Греція',
+ 'GS' => 'Південна Джорджія та Південні Сандвічеві острови',
+ 'GT' => 'Гватемала',
+ 'GU' => 'Гуам',
+ 'GW' => 'Гвінея-Бісау',
+ 'GY' => 'Гаяна',
+ 'HK' => 'Гонконг',
+ 'HM' => 'Острови Херд і Мак-Дональд',
+ 'HN' => 'Гондурас',
+ 'HR' => 'Хорватія',
+ 'HT' => 'Гаїті',
+ 'HU' => 'Угорщина',
+ 'IC' => 'Канарські острови',
+ 'ID' => 'Індонезія',
+ 'IE' => 'Ірландія',
+ 'IL' => 'Ізраїль',
+ 'IM' => 'Острів Мен',
+ 'IN' => 'Індія',
+ 'IO' => 'Британські території в Індійському океані',
+ 'IQ' => 'Ірак',
+ 'IR' => 'Іран',
+ 'IS' => 'Ісландія',
+ 'IT' => 'Італія',
+ 'JE' => 'Джерсі',
+ 'JM' => 'Ямайка',
+ 'JO' => 'Йорданія',
+ 'JP' => 'Японія',
+ 'KE' => 'Кенія',
+ 'KG' => 'Киргизстан',
+ 'KH' => 'Камбоджа',
+ 'KI' => 'Кірибаті',
+ 'KM' => 'Коморські острови',
+ 'KN' => 'Сент-Кітс і Невіс',
+ 'KP' => 'Північна Корея',
+ 'KR' => 'Південна Корея',
+ 'KW' => 'Кувейт',
+ 'KY' => 'Кайманові острови',
+ 'KZ' => 'Казахстан',
+ 'LA' => 'Лаос',
+ 'LB' => 'Ліван',
+ 'LC' => 'Сент-Люсія',
+ 'LI' => 'Ліхтенштейн',
+ 'LK' => 'Шрі-Ланка',
+ 'LR' => 'Ліберія',
+ 'LS' => 'Лесото',
+ 'LT' => 'Литва',
+ 'LU' => 'Люксембург',
+ 'LV' => 'Латвія',
+ 'LY' => 'Лівія',
+ 'MA' => 'Марокко',
+ 'MC' => 'Монако',
+ 'MD' => 'Молдова',
+ 'ME' => 'Чорногорія',
+ 'MF' => 'Сен-Мартен',
+ 'MG' => 'Мадагаскар',
+ 'MH' => 'Маршаллові Острови',
+ 'MK' => 'Македонія',
+ 'ML' => 'Малі',
+ 'MM' => 'Мʼянма (Бірма)',
+ 'MN' => 'Монголія',
+ 'MO' => 'Макао',
+ 'MP' => 'Північні Маріанські острови',
+ 'MQ' => 'Мартиніка',
+ 'MR' => 'Мавританія',
+ 'MS' => 'Монтсеррат',
+ 'MT' => 'Мальта',
+ 'MU' => 'Маврикій',
+ 'MV' => 'Мальдіви',
+ 'MW' => 'Малаві',
+ 'MX' => 'Мексика',
+ 'MY' => 'Малайзія',
+ 'MZ' => 'Мозамбік',
+ 'NA' => 'Намібія',
+ 'NC' => 'Нова Каледонія',
+ 'NE' => 'Нігер',
+ 'NF' => 'Острів Норфолк',
+ 'NG' => 'Нігерія',
+ 'NI' => 'Нікарагуа',
+ 'NL' => 'Нідерланди',
+ 'NO' => 'Норвегія',
+ 'NP' => 'Непал',
+ 'NR' => 'Науру',
+ 'NU' => 'Ніуе',
+ 'NZ' => 'Нова Зеландія',
+ 'OM' => 'Оман',
+ 'PA' => 'Панама',
+ 'PE' => 'Перу',
+ 'PF' => 'Французька Полінезія',
+ 'PG' => 'Папуа Нова Гвінея',
+ 'PH' => 'Філіппіни',
+ 'PK' => 'Пакистан',
+ 'PL' => 'Польща',
+ 'PM' => 'Сен-Пʼєр і Мікелон',
+ 'PN' => 'Острови Піткерн',
+ 'PR' => 'Пуерто-Рико',
+ 'PS' => 'Палестина',
+ 'PT' => 'Португалія',
+ 'PW' => 'Палау',
+ 'PY' => 'Парагвай',
+ 'QA' => 'Катар',
+ 'QO' => 'Віддалені острови Океанії',
+ 'RE' => 'Реюньйон',
+ 'RO' => 'Румунія',
+ 'RS' => 'Сербія',
+ 'RU' => 'Росія',
+ 'RW' => 'Руанда',
+ 'SA' => 'Саудівська Аравія',
+ 'SB' => 'Соломонові Острови',
+ 'SC' => 'Сейшельські острови',
+ 'SD' => 'Судан',
+ 'SE' => 'Швеція',
+ 'SG' => 'Сінгапур',
+ 'SH' => 'Острів Святої Єлени',
+ 'SI' => 'Словенія',
+ 'SJ' => 'Острови Свальбард і Ян-Маєн',
+ 'SK' => 'Словаччина',
+ 'SL' => 'Сьєрра-Леоне',
+ 'SM' => 'Сан-Марино',
+ 'SN' => 'Сенегал',
+ 'SO' => 'Сомалі',
+ 'SR' => 'Суринам',
+ 'SS' => 'Південний Судан',
+ 'ST' => 'Сан-Томе і Прінсіпі',
+ 'SV' => 'Сальвадор',
+ 'SX' => 'Сінт-Мартен',
+ 'SY' => 'Сирія',
+ 'SZ' => 'Свазіленд',
+ 'TA' => 'Трістан-да-Кунья',
+ 'TC' => 'Острови Теркс і Кайкос',
+ 'TD' => 'Чад',
+ 'TF' => 'Французькі Південні Території',
+ 'TG' => 'Того',
+ 'TH' => 'Таїланд',
+ 'TJ' => 'Таджикистан',
+ 'TK' => 'Токелау',
+ 'TL' => 'Східний Тимор',
+ 'TM' => 'Туркменістан',
+ 'TN' => 'Туніс',
+ 'TO' => 'Тонга',
+ 'TR' => 'Туреччина',
+ 'TT' => 'Тринідад і Тобаго',
+ 'TV' => 'Тувалу',
+ 'TW' => 'Тайвань',
+ 'TZ' => 'Танзанія',
+ 'UA' => 'Україна',
+ 'UG' => 'Уганда',
+ 'UM' => 'Віддалені острови США',
+ 'US' => 'США',
+ 'UY' => 'Уругвай',
+ 'UZ' => 'Узбекистан',
+ 'VA' => 'Ватикан',
+ 'VC' => 'Сент-Вінсент і Гренадини',
+ 'VE' => 'Венесуела',
+ 'VG' => 'Британські Віргінські острови',
+ 'VI' => 'Віргінські острови, США',
+ 'VN' => 'Вʼєтнам',
+ 'VU' => 'Вануату',
+ 'WF' => 'Волліс і Футуна',
+ 'WS' => 'Самоа',
+ 'XK' => 'Косово',
+ 'YE' => 'Ємен',
+ 'YT' => 'Майотта',
+ 'ZA' => 'ПАР',
+ 'ZM' => 'Замбія',
+ 'ZW' => 'Зімбабве',
+);
+
+$timeUnits = array(
+ 'day-few' => '{0} дні',
+ 'day-future-few' => 'через {0} дні',
+ 'day-future-many' => 'через {0} днів',
+ 'day-future-one' => 'через {0} день',
+ 'day-future-other' => 'через {0} дня',
+ 'day-many' => '{0} днів',
+ 'day-narrow-future-few' => '+{0} дн.',
+ 'day-narrow-future-many' => '+{0} дн.',
+ 'day-narrow-future-one' => '+{0} день',
+ 'day-narrow-future-other' => '+{0} дн.',
+ 'day-narrow-past-few' => '-{0} дн.',
+ 'day-narrow-past-many' => '-{0} дн.',
+ 'day-narrow-past-one' => '-{0} день',
+ 'day-narrow-past-other' => '-{0} дн.',
+ 'day-one' => '{0} день',
+ 'day-other' => '{0} дня',
+ 'day-past-few' => '{0} дні тому',
+ 'day-past-many' => '{0} днів тому',
+ 'day-past-one' => '{0} день тому',
+ 'day-past-other' => '{0} дня тому',
+ 'day-short-future-few' => 'через {0} дн.',
+ 'day-short-future-many' => 'через {0} дн.',
+ 'day-short-future-one' => 'через {0} д.',
+ 'day-short-future-other' => 'через {0} дн.',
+ 'day-short-past-few' => '{0} дн. тому',
+ 'day-short-past-many' => '{0} дн. тому',
+ 'day-short-past-one' => '{0} д. тому',
+ 'day-short-past-other' => '{0} дн. тому',
+ 'hour-few' => '{0} години',
+ 'hour-future-few' => 'через {0} години',
+ 'hour-future-many' => 'через {0} годин',
+ 'hour-future-one' => 'через {0} годину',
+ 'hour-future-other' => 'через {0} години',
+ 'hour-many' => '{0} годин',
+ 'hour-narrow-future-few' => '+{0} год',
+ 'hour-narrow-future-many' => '+{0} год',
+ 'hour-narrow-future-one' => '+{0} год',
+ 'hour-narrow-future-other' => '+{0} год',
+ 'hour-narrow-past-few' => '-{0} год',
+ 'hour-narrow-past-many' => '-{0} год',
+ 'hour-narrow-past-one' => '-{0} год',
+ 'hour-narrow-past-other' => '-{0} год',
+ 'hour-one' => '{0} година',
+ 'hour-other' => '{0} години',
+ 'hour-past-few' => '{0} години тому',
+ 'hour-past-many' => '{0} годин тому',
+ 'hour-past-one' => '{0} годину тому',
+ 'hour-past-other' => '{0} години тому',
+ 'hour-short-future-few' => 'через {0} год',
+ 'hour-short-future-many' => 'через {0} год',
+ 'hour-short-future-one' => 'через {0} год',
+ 'hour-short-future-other' => 'через {0} год',
+ 'hour-short-past-few' => '{0} год тому',
+ 'hour-short-past-many' => '{0} год тому',
+ 'hour-short-past-one' => '{0} год тому',
+ 'hour-short-past-other' => '{0} год тому',
+ 'microsecond-few' => '{0} мікросекунди',
+ 'microsecond-many' => '{0} мікросекунд',
+ 'microsecond-one' => '{0} мікросекунда',
+ 'microsecond-other' => '{0} мікросекунди',
+ 'millisecond-few' => '{0} мілісекунди',
+ 'millisecond-many' => '{0} мілісекунд',
+ 'millisecond-one' => '{0} мілісекунда',
+ 'millisecond-other' => '{0} мілісекунди',
+ 'minute-few' => '{0} хвилини',
+ 'minute-future-few' => 'через {0} хвилини',
+ 'minute-future-many' => 'через {0} хвилин',
+ 'minute-future-one' => 'через {0} хвилину',
+ 'minute-future-other' => 'через {0} хвилини',
+ 'minute-many' => '{0} хвилин',
+ 'minute-narrow-future-few' => '+{0} хв',
+ 'minute-narrow-future-many' => '+{0} хв',
+ 'minute-narrow-future-one' => '+{0} хв',
+ 'minute-narrow-future-other' => '+{0} хв',
+ 'minute-narrow-past-few' => '-{0} хв',
+ 'minute-narrow-past-many' => '-{0} хв',
+ 'minute-narrow-past-one' => '-{0} хв',
+ 'minute-narrow-past-other' => '-{0} хв',
+ 'minute-one' => '{0} хвилина',
+ 'minute-other' => '{0} хвилини',
+ 'minute-past-few' => '{0} хвилини тому',
+ 'minute-past-many' => '{0} хвилин тому',
+ 'minute-past-one' => '{0} хвилину тому',
+ 'minute-past-other' => '{0} хвилини тому',
+ 'minute-short-future-few' => 'через {0} хв',
+ 'minute-short-future-many' => 'через {0} хв',
+ 'minute-short-future-one' => 'через {0} хв',
+ 'minute-short-future-other' => 'через {0} хв',
+ 'minute-short-past-few' => '{0} хв тому',
+ 'minute-short-past-many' => '{0} хв тому',
+ 'minute-short-past-one' => '{0} хв тому',
+ 'minute-short-past-other' => '{0} хв тому',
+ 'month-few' => '{0} місяці',
+ 'month-future-few' => 'через {0} місяці',
+ 'month-future-many' => 'через {0} місяців',
+ 'month-future-one' => 'через {0} місяць',
+ 'month-future-other' => 'через {0} місяця',
+ 'month-many' => '{0} місяців',
+ 'month-narrow-future-few' => '+{0} міс.',
+ 'month-narrow-future-many' => '+{0} міс.',
+ 'month-narrow-future-one' => '+{0} міс.',
+ 'month-narrow-future-other' => '+{0} міс.',
+ 'month-narrow-past-few' => '-{0} міс.',
+ 'month-narrow-past-many' => '-{0} міс.',
+ 'month-narrow-past-one' => '-{0} міс.',
+ 'month-narrow-past-other' => '-{0} міс.',
+ 'month-one' => '{0} місяць',
+ 'month-other' => '{0} місяця',
+ 'month-past-few' => '{0} місяці тому',
+ 'month-past-many' => '{0} місяців тому',
+ 'month-past-one' => '{0} місяць тому',
+ 'month-past-other' => '{0} місяця тому',
+ 'month-short-future-few' => 'через {0} міс.',
+ 'month-short-future-many' => 'через {0} міс.',
+ 'month-short-future-one' => 'через {0} міс.',
+ 'month-short-future-other' => 'через {0} міс.',
+ 'month-short-past-few' => '{0} міс. тому',
+ 'month-short-past-many' => '{0} міс. тому',
+ 'month-short-past-one' => '{0} міс. тому',
+ 'month-short-past-other' => '{0} міс. тому',
+ 'nanosecond-few' => '{0} наносекунди',
+ 'nanosecond-many' => '{0} наносекунд',
+ 'nanosecond-one' => '{0} наносекунда',
+ 'nanosecond-other' => '{0} наносекунди',
+ 'quarter-future-few' => 'через {0} квартали',
+ 'quarter-future-many' => 'через {0} кварталів',
+ 'quarter-future-one' => 'через {0} квартал',
+ 'quarter-future-other' => 'через {0} кварталу',
+ 'quarter-narrow-future-few' => '+{0} кв.',
+ 'quarter-narrow-future-many' => '+{0} кв.',
+ 'quarter-narrow-future-one' => '+{0} кв.',
+ 'quarter-narrow-future-other' => '+{0} кв.',
+ 'quarter-narrow-past-few' => '-{0} кв.',
+ 'quarter-narrow-past-many' => '-{0} кв.',
+ 'quarter-narrow-past-one' => '-{0} кв.',
+ 'quarter-narrow-past-other' => '-{0} кв.',
+ 'quarter-past-few' => '{0} квартали тому',
+ 'quarter-past-many' => '{0} кварталів тому',
+ 'quarter-past-one' => '{0} квартал тому',
+ 'quarter-past-other' => '{0} кварталу тому',
+ 'quarter-short-future-few' => 'через {0} кв.',
+ 'quarter-short-future-many' => 'через {0} кв.',
+ 'quarter-short-future-one' => 'через {0} кв.',
+ 'quarter-short-future-other' => 'через {0} кв.',
+ 'quarter-short-past-few' => '{0} кв. тому',
+ 'quarter-short-past-many' => '{0} кв. тому',
+ 'quarter-short-past-one' => '{0} кв. тому',
+ 'quarter-short-past-other' => '{0} кв. тому',
+ 'second-few' => '{0} секунди',
+ 'second-future-few' => 'через {0} секунди',
+ 'second-future-many' => 'через {0} секунд',
+ 'second-future-one' => 'через {0} секунду',
+ 'second-future-other' => 'через {0} секунди',
+ 'second-many' => '{0} секунд',
+ 'second-narrow-future-few' => '+{0} с',
+ 'second-narrow-future-many' => '+{0} с',
+ 'second-narrow-future-one' => '+{0} с',
+ 'second-narrow-future-other' => '+{0} с',
+ 'second-narrow-past-few' => '-{0} с',
+ 'second-narrow-past-many' => '-{0} с',
+ 'second-narrow-past-one' => '-{0} с',
+ 'second-narrow-past-other' => '-{0} с',
+ 'second-one' => '{0} секунда',
+ 'second-other' => '{0} секунди',
+ 'second-past-few' => '{0} секунди тому',
+ 'second-past-many' => '{0} секунд тому',
+ 'second-past-one' => '{0} секунду тому',
+ 'second-past-other' => '{0} секунди тому',
+ 'second-short-future-few' => 'через {0} с',
+ 'second-short-future-many' => 'через {0} с',
+ 'second-short-future-one' => 'через {0} с',
+ 'second-short-future-other' => 'через {0} с',
+ 'second-short-past-few' => '{0} с тому',
+ 'second-short-past-many' => '{0} с тому',
+ 'second-short-past-one' => '{0} с тому',
+ 'second-short-past-other' => '{0} с тому',
+ 'week-few' => '{0} тижні',
+ 'week-future-few' => 'через {0} тижні',
+ 'week-future-many' => 'через {0} тижнів',
+ 'week-future-one' => 'через {0} тиждень',
+ 'week-future-other' => 'через {0} тижня',
+ 'week-many' => '{0} тижнів',
+ 'week-narrow-future-few' => '+{0} тиж.',
+ 'week-narrow-future-many' => '+{0} тиж.',
+ 'week-narrow-future-one' => '+{0} тиж.',
+ 'week-narrow-future-other' => '+{0} тиж.',
+ 'week-narrow-past-few' => '-{0} тиж.',
+ 'week-narrow-past-many' => '-{0} тиж.',
+ 'week-narrow-past-one' => '-{0} тиж.',
+ 'week-narrow-past-other' => '-{0} тиж.',
+ 'week-one' => '{0} тиждень',
+ 'week-other' => '{0} тижня',
+ 'week-past-few' => '{0} тижні тому',
+ 'week-past-many' => '{0} тижнів тому',
+ 'week-past-one' => '{0} тиждень тому',
+ 'week-past-other' => '{0} тижня тому',
+ 'week-short-future-few' => 'через {0} тиж.',
+ 'week-short-future-many' => 'через {0} тиж.',
+ 'week-short-future-one' => 'через {0} тиж.',
+ 'week-short-future-other' => 'через {0} тиж.',
+ 'week-short-past-few' => '{0} тиж. тому',
+ 'week-short-past-many' => '{0} тиж. тому',
+ 'week-short-past-one' => '{0} тиж. тому',
+ 'week-short-past-other' => '{0} тиж. тому',
+ 'year-few' => '{0} роки',
+ 'year-future-few' => 'через {0} роки',
+ 'year-future-many' => 'через {0} років',
+ 'year-future-one' => 'через {0} рік',
+ 'year-future-other' => 'через {0} року',
+ 'year-many' => '{0} років',
+ 'year-narrow-future-few' => '+{0} р.',
+ 'year-narrow-future-many' => '+{0} р.',
+ 'year-narrow-future-one' => '+{0} р.',
+ 'year-narrow-future-other' => '+{0} р.',
+ 'year-narrow-past-few' => '-{0} р.',
+ 'year-narrow-past-many' => '-{0} р.',
+ 'year-narrow-past-one' => '-{0} р.',
+ 'year-narrow-past-other' => '-{0} р.',
+ 'year-one' => '{0} рік',
+ 'year-other' => '{0} року',
+ 'year-past-few' => '{0} роки тому',
+ 'year-past-many' => '{0} років тому',
+ 'year-past-one' => '{0} рік тому',
+ 'year-past-other' => '{0} року тому',
+ 'year-short-future-few' => 'через {0} р.',
+ 'year-short-future-many' => 'через {0} р.',
+ 'year-short-future-one' => 'через {0} р.',
+ 'year-short-future-other' => 'через {0} р.',
+ 'year-short-past-few' => '{0} р. тому',
+ 'year-short-past-many' => '{0} р. тому',
+ 'year-short-past-one' => '{0} р. тому',
+ 'year-short-past-other' => '{0} р. тому',
+);
diff --git a/MLEB/cldr/CldrNames/CldrNamesUr.php b/MLEB/cldr/CldrNames/CldrNamesUr.php
new file mode 100644
index 00000000..284a791d
--- /dev/null
+++ b/MLEB/cldr/CldrNames/CldrNamesUr.php
@@ -0,0 +1,964 @@
+<?php
+
+$languageNames = array(
+ 'ab' => 'ابقازیان',
+ 'ach' => 'اکولی',
+ 'af' => 'ایفریکانز',
+ 'agq' => 'اغم',
+ 'ak' => 'اکان',
+ 'am' => 'امہاری',
+ 'ar' => 'عربی',
+ 'ar-001' => 'ماڈرن اسٹینڈرڈ عربی',
+ 'arn' => 'ماپوچے',
+ 'as' => 'آسامی',
+ 'asa' => 'آسو',
+ 'ay' => 'ایمارا',
+ 'az' => 'آزربائیجانی',
+ 'ba' => 'باشکیر',
+ 'be' => 'بیلاروسی',
+ 'bem' => 'بیمبا',
+ 'bez' => 'بینا',
+ 'bg' => 'بلغاری',
+ 'bm' => 'بمبارا',
+ 'bn' => 'بنگالی',
+ 'bo' => 'تبتی',
+ 'br' => 'بریٹن',
+ 'brx' => 'بوڈو',
+ 'bs' => 'بوسنی',
+ 'ca' => 'کاٹالانین',
+ 'cgg' => 'چیگا',
+ 'chr' => 'چیروکی',
+ 'ckb' => 'سورانی کردش',
+ 'co' => 'کوراسیکن',
+ 'cs' => 'چیک',
+ 'cy' => 'ویلش',
+ 'da' => 'ڈینش',
+ 'dav' => 'تائتا',
+ 'de' => 'جرمن',
+ 'de-at' => 'آسٹریائی جرمن',
+ 'de-ch' => 'سوئس ہائی جرمن',
+ 'dje' => 'زرما',
+ 'dsb' => 'ذیلی سربیائی',
+ 'dua' => 'دوالا',
+ 'dv' => 'ڈیویہی',
+ 'dyo' => 'جولا فونيا',
+ 'dz' => 'ژونگکھا',
+ 'ebu' => 'امبو',
+ 'ee' => 'ایو',
+ 'efi' => 'ایفِک',
+ 'el' => 'یونانی',
+ 'en' => 'انگریزی',
+ 'en-au' => 'آسٹریلیائی انگریزی',
+ 'en-ca' => 'کینیڈین انگریزی',
+ 'en-gb' => 'برطانوی انگریزی',
+ 'en-us' => 'امریکی انگریزی',
+ 'eo' => 'ایسپرانٹو',
+ 'es' => 'ہسپانوی',
+ 'es-419' => 'لاطینی امریکی ہسپانوی',
+ 'es-es' => 'یورپی ہسپانوی',
+ 'es-mx' => 'میکسیکن ہسپانوی',
+ 'et' => 'اسٹونین',
+ 'eu' => 'باسکی',
+ 'fa' => 'فارسی',
+ 'fi' => 'فینیش',
+ 'fil' => 'فلیپینو',
+ 'fj' => 'فجی',
+ 'fo' => 'فیروئیز',
+ 'fr' => 'فرانسیسی',
+ 'fr-ca' => 'کینیڈین فرانسیسی',
+ 'fr-ch' => 'سوئس فرینچ',
+ 'fy' => 'مغربی فریسیئن',
+ 'ga' => 'آئیرِش',
+ 'gaa' => 'گا',
+ 'gag' => 'غاغاوز',
+ 'gd' => 'سکاٹ گیلِک',
+ 'gl' => 'گالیشیائی',
+ 'gn' => 'گُارانی',
+ 'gsw' => 'سوئس جرمن',
+ 'gu' => 'گجراتی',
+ 'guz' => 'گسی',
+ 'gv' => 'مینکس',
+ 'ha' => 'ہؤسا',
+ 'haw' => 'ہوائی',
+ 'he' => 'عبرانی',
+ 'hi' => 'ہندی',
+ 'hr' => 'کراتی',
+ 'hsb' => 'اپر سربیائی',
+ 'ht' => 'ہیتی',
+ 'hu' => 'ہنگیرین',
+ 'hy' => 'ارمینی',
+ 'ia' => 'بین لسانیات',
+ 'id' => 'انڈونیثیائی',
+ 'ig' => 'اِگبو',
+ 'ii' => 'سچوان ای',
+ 'is' => 'آئس لینڈک',
+ 'it' => 'اطالوی',
+ 'iu' => 'انیوکتیتت',
+ 'ja' => 'جاپانی',
+ 'jgo' => 'گومبا',
+ 'jmc' => 'ماشیم',
+ 'jv' => 'جاوی',
+ 'ka' => 'جارجی',
+ 'kab' => 'قبائلی',
+ 'kam' => 'کامبا',
+ 'kde' => 'ماكونده',
+ 'kea' => 'كابويرديانو',
+ 'kg' => 'کانگو',
+ 'khq' => 'كويرا شيني',
+ 'ki' => 'کیکو',
+ 'kk' => 'قزاخ',
+ 'kl' => 'كالاليست',
+ 'kln' => 'كالينجين',
+ 'km' => 'خمیر',
+ 'kn' => 'کنّاڈا',
+ 'ko' => 'کوریائی',
+ 'koi' => 'کومی پرمیاک',
+ 'kok' => 'کونکنی',
+ 'ks' => 'کشمیری',
+ 'ksb' => 'شامبالا',
+ 'ksf' => 'بافيا',
+ 'ku' => 'کردش',
+ 'kw' => 'کورنش',
+ 'ky' => 'کرغیزی',
+ 'la' => 'لاطینی',
+ 'lag' => 'لانگی',
+ 'lb' => 'لگژمبرگ کا باشندہ',
+ 'lg' => 'گینڈا',
+ 'lkt' => 'لاکوٹا',
+ 'ln' => 'لِنگَلا',
+ 'lo' => 'لاؤ',
+ 'loz' => 'لوزی',
+ 'lt' => 'لتھُواینین',
+ 'lu' => 'لبا-كاتانجا',
+ 'lua' => 'لیوبا لولوآ',
+ 'luo' => 'لو',
+ 'luy' => 'لویا',
+ 'lv' => 'لیٹوین',
+ 'mas' => 'ماسای',
+ 'mer' => 'میرو',
+ 'mfe' => 'موریسیین',
+ 'mg' => 'ملاگاسی',
+ 'mgh' => 'ماخاوا-ميتو',
+ 'mgo' => 'میٹا',
+ 'mi' => 'ماؤری',
+ 'mk' => 'مقدونیائی',
+ 'ml' => 'مالایالم',
+ 'mn' => 'منگؤلی',
+ 'moh' => 'موہاوک',
+ 'mr' => 'مراٹهی',
+ 'ms' => 'مالائی',
+ 'mt' => 'مالٹی',
+ 'mua' => 'منڈانگ',
+ 'my' => 'برمی',
+ 'naq' => 'ناما',
+ 'nb' => 'نارویجین بوکمل',
+ 'nd' => 'شمالی دبیل',
+ 'ne' => 'نیپالی',
+ 'nl' => 'ڈچ',
+ 'nl-be' => 'فلیمِش',
+ 'nmg' => 'كوايسو',
+ 'nn' => 'نورویجینی نینورسک',
+ 'no' => 'نارویجین',
+ 'nqo' => 'اینکو',
+ 'nso' => 'شمالی سوتھو',
+ 'nus' => 'نویر',
+ 'ny' => 'نیانجا',
+ 'nyn' => 'نینکول',
+ 'oc' => 'آكسیٹان',
+ 'om' => 'اورومو',
+ 'or' => 'اورِیا',
+ 'os' => 'اوسیٹک',
+ 'pa' => 'پنجابی',
+ 'pl' => 'پولستانی',
+ 'ps' => 'پشتو',
+ 'pt' => 'پُرتگالی',
+ 'pt-br' => 'برازیلی پرتگالی',
+ 'pt-pt' => 'یورپی پرتگالی',
+ 'qu' => 'کویچوآ',
+ 'quc' => 'كيشی',
+ 'rm' => 'رومانش',
+ 'rn' => 'رونڈی',
+ 'ro' => 'رومنی',
+ 'ro-md' => 'مالدووا',
+ 'rof' => 'رومبو',
+ 'ru' => 'روسی',
+ 'rw' => 'کینیاروانڈا',
+ 'rwk' => 'rwk',
+ 'sa' => 'سَنسکرِت',
+ 'saq' => 'سامبورو',
+ 'sbp' => 'سانگو',
+ 'sd' => 'سندھی',
+ 'se' => 'شمالی سامی',
+ 'seh' => 'سینا',
+ 'ses' => 'كويرابورو سينی',
+ 'sg' => 'سانغو',
+ 'sh' => 'سربو-کروئیشین',
+ 'shi' => 'تشلحيت',
+ 'si' => 'سنہالا',
+ 'sk' => 'سلوواک',
+ 'sl' => 'سلووینیائی',
+ 'sm' => 'ساموآن',
+ 'sma' => 'جنوبی سامی',
+ 'smj' => 'لول سامی',
+ 'smn' => 'اناری سامی',
+ 'sms' => 'اسکولٹ سامی',
+ 'sn' => 'شونا',
+ 'so' => 'صومالی',
+ 'sq' => 'البانی',
+ 'sr' => 'صربی',
+ 'ss' => 'سواتی',
+ 'st' => 'جنوبی سوتھو',
+ 'su' => 'سنڈانیز',
+ 'sv' => 'سویڈش',
+ 'sw' => 'سواحلی',
+ 'swc' => 'کانگو سواحلی',
+ 'ta' => 'تمل',
+ 'te' => 'تیلگو',
+ 'teo' => 'تیسو',
+ 'tet' => 'ٹیٹم',
+ 'tg' => 'تاجک',
+ 'th' => 'تھائی',
+ 'ti' => 'ٹگرینیا',
+ 'tk' => 'ترکمان',
+ 'tl' => 'ٹیگا لوگ',
+ 'tlh' => 'کلنگن',
+ 'tn' => 'سوانا',
+ 'to' => 'ٹونگن',
+ 'tpi' => 'ٹوک پِسِن',
+ 'tr' => 'ترکی',
+ 'ts' => 'زونگا',
+ 'tt' => 'تاتار',
+ 'tum' => 'ٹمبوکا',
+ 'tw' => 'توی',
+ 'twq' => 'تاساواق',
+ 'ty' => 'تاہیتی',
+ 'tzm' => 'سینٹرل ایٹلس ٹمازائٹ',
+ 'ug' => 'یوئگہر',
+ 'uk' => 'یوکرینیائی',
+ 'und' => 'نامعلوم زبان',
+ 'ur' => 'اردو',
+ 'uz' => 'ازبیک',
+ 'vai' => 'وائی',
+ 've' => 'وینڈا',
+ 'vi' => 'ویتنامی',
+ 'vun' => 'اونجو',
+ 'wo' => 'وولوف',
+ 'xh' => 'ژوسا',
+ 'xog' => 'سوگا',
+ 'yi' => 'یدش',
+ 'yo' => 'یوروبا',
+ 'zgh' => 'اسٹینڈرڈ مغربی امازیقی',
+ 'zh' => 'چینی',
+ 'zh-hans' => 'چینی (آسان کردہ)',
+ 'zh-hant' => 'روایتی چینی',
+ 'zu' => 'زولو',
+ 'zxx' => 'کوئی لسانی مواد نہیں',
+);
+
+$currencyNames = array(
+ 'AED' => 'متحدہ عرب اماراتی درہم',
+ 'AFN' => 'افغان افغانی',
+ 'ALL' => 'البانیا کا لیک',
+ 'AMD' => 'آرمینیائی ڈرم',
+ 'ANG' => 'نیدر لینڈز انٹیلیئن گلڈر',
+ 'AOA' => 'انگولا کا کوانزا',
+ 'ARS' => 'ارجنٹائن پیسہ',
+ 'AUD' => 'آسٹریلین ڈالر',
+ 'AWG' => 'اروبن فلورِن',
+ 'AZN' => 'آذربائجانی منات',
+ 'BAM' => 'بوسنیا ہرزیگووینا کا قابل منتقلی نشان',
+ 'BBD' => 'باربیڈین ڈالر',
+ 'BDT' => 'بنگلہ دیشی ٹکا',
+ 'BGN' => 'بلغارین لیو',
+ 'BHD' => 'بحرینی دینار',
+ 'BIF' => 'برونڈیئن فرانک',
+ 'BMD' => 'برموڈا ڈالر',
+ 'BND' => 'برونئی ڈالر',
+ 'BOB' => 'بولیوین بولیویانو',
+ 'BRL' => 'برازیلی ریئل',
+ 'BSD' => 'بہامانی ڈالر',
+ 'BTN' => 'بھوٹانی گُلٹرم',
+ 'BWP' => 'بوتسوانا کا پولا',
+ 'BYR' => 'بیلاروسی روبل',
+ 'BZD' => 'بیلائز ڈالر',
+ 'CAD' => 'کنیڈین ڈالر',
+ 'CDF' => 'کانگولیز فرانک',
+ 'CHF' => 'سوئس فرانکس',
+ 'CLP' => 'چلّین پیسہ',
+ 'CNY' => 'چینی یوآن',
+ 'COP' => 'کولمبین پیسہ',
+ 'CRC' => 'کوسٹا ریکا کا کولن',
+ 'CUC' => 'کیوبا کا قابل منتقلی پیسو',
+ 'CUP' => 'کیوبا کا پیسو',
+ 'CVE' => 'کیپ ورڈی کا اسکیوڈو',
+ 'CZK' => 'جمہوریہ چیک کرونا',
+ 'DEM' => 'ڈچ مارکس',
+ 'DJF' => 'جبوتی فرانک',
+ 'DKK' => 'ڈنمارک کرونر',
+ 'DOP' => 'ڈومنیکن پیسو',
+ 'DZD' => 'الجیریائی دینار',
+ 'EEK' => 'ایسٹونین کرون',
+ 'EGP' => 'مصری پاؤنڈ',
+ 'ERN' => 'اریٹیریا کا نافکا',
+ 'ETB' => 'ایتھوپیائی بِرّ',
+ 'EUR' => 'یورو',
+ 'FJD' => 'فجی کا ڈالر',
+ 'FKP' => 'فاکلینڈ آئلینڈز پونڈ',
+ 'FRF' => 'فرانسیسی فرانک',
+ 'GBP' => 'انگلستانی پاونڈ سٹرلنگ',
+ 'GEL' => 'جارجیائی لاری',
+ 'GHS' => 'گھانا کا سیڈی',
+ 'GIP' => 'جبل الطارق پونڈ',
+ 'GMD' => 'گامبیا کا ڈلاسی',
+ 'GNF' => 'گنی فرانک',
+ 'GTQ' => 'گواٹے مالا کا کوئٹزل',
+ 'GYD' => 'گویانیز ڈالر',
+ 'HKD' => 'ھانگ کانگ ڈالر',
+ 'HNL' => 'ہونڈوران لیمپیرا',
+ 'HRK' => 'کروشین کونا',
+ 'HTG' => 'ہیتی کا گؤرڈی',
+ 'HUF' => 'ہنگرین فورنٹ',
+ 'IDR' => 'انڈونیشین روپیہ',
+ 'ILS' => 'اسرائیلی نیا شیکل',
+ 'INR' => 'بھارتی روپیہ',
+ 'IQD' => 'عراقی دینار',
+ 'IRR' => 'ایرانی ریال',
+ 'ISK' => 'آئس لينڈی کرونا',
+ 'JMD' => 'جمائیکن ڈالر',
+ 'JOD' => 'اردنی دینار',
+ 'JPY' => 'جاپانی ین',
+ 'KES' => 'کینیائی شلنگ',
+ 'KGS' => 'کرغستانی سوم',
+ 'KHR' => 'کمبوڈیائی ریئل',
+ 'KMF' => 'کوموریئن فرانک',
+ 'KPW' => 'شمالی کوریائی وون',
+ 'KRW' => 'جنوبی کوریائی وون',
+ 'KWD' => 'کویتی دینار',
+ 'KYD' => 'کیمین آئلینڈز ڈالر',
+ 'KZT' => 'قزاخستانی ٹینگ',
+ 'LAK' => 'لاؤشیائی کِپ',
+ 'LBP' => 'لبنانی پونڈ',
+ 'LKR' => 'سری لنکائی روپیہ',
+ 'LRD' => 'لائبریائی ڈالر',
+ 'LSL' => 'لیسوتھو لوٹی',
+ 'LTL' => 'لیتھوینیائی لیٹاس',
+ 'LVL' => 'لاتویائی لیٹس',
+ 'LYD' => 'لیبیائی دینار',
+ 'MAD' => 'مراکشی درہم',
+ 'MDL' => 'مالدووی لیو',
+ 'MGA' => 'ملاگاسی اریاری',
+ 'MKD' => 'مقدونیائی دینار',
+ 'MMK' => 'میانما کیاٹ',
+ 'MNT' => 'منگولیائی ٹگرِ',
+ 'MOP' => 'میکانیز پٹاکا',
+ 'MRO' => 'موریطانیائی اوگوئیا',
+ 'MUR' => 'ماریشس کا روپیہ',
+ 'MVR' => 'مالدیپ کا روفیہ',
+ 'MWK' => 'ملاوی کواچا',
+ 'MXN' => 'میکسیکی پیسہ',
+ 'MYR' => 'ملیشیائی رنگِٹ',
+ 'MZN' => 'موزامبیقی میٹیکل',
+ 'NAD' => 'نامیبیائی ڈالر',
+ 'NGN' => 'نائیجیریائی نائرا',
+ 'NIO' => 'نکارا گوا کا کورڈوبا',
+ 'NOK' => 'ناروے کرونر',
+ 'NPR' => 'نیپالی روپیہ',
+ 'NZD' => 'نیوزی لینڈ ڈالر',
+ 'OMR' => 'عمانی ریال',
+ 'PAB' => 'پنامہ کا بالبوآ',
+ 'PEN' => 'پیروین نیووسول',
+ 'PGK' => 'پاپوآ نیو گنی کا کینا',
+ 'PHP' => 'فلپائینی پیسہ',
+ 'PKR' => 'پاکستانی روپیہ',
+ 'PLN' => 'پولش زلوٹی',
+ 'PYG' => 'پیراگوئے کا گوآرنی',
+ 'QAR' => 'قطری ریال',
+ 'RON' => 'رومانیائی لیو',
+ 'RSD' => 'سربین دینار',
+ 'RUB' => 'روسی روبل',
+ 'RWF' => 'روانڈا کا فرانک',
+ 'SAR' => 'سعودی ریال',
+ 'SBD' => 'سولومن آئلینڈز ڈالر',
+ 'SCR' => 'سشلی کا روپیہ',
+ 'SDG' => 'سوڈانی پاؤنڈ',
+ 'SEK' => 'سویڈن کرونا',
+ 'SGD' => 'سنگا پور ڈالر',
+ 'SHP' => 'سینٹ ہیلینا پاؤنڈ',
+ 'SIT' => 'سلوانین ٹولر',
+ 'SKK' => 'سلووک کرونا',
+ 'SLL' => 'سیئرا لیون لیون',
+ 'SOS' => 'صومالی شلنگ',
+ 'SRD' => 'سورینامی ڈالر',
+ 'SSP' => 'جنوبی سوڈانی پاؤنڈ',
+ 'STD' => 'ساؤ ٹوم اور پرنسپے ڈوبرا',
+ 'SYP' => 'شامی پونڈ',
+ 'SZL' => 'سوازی لیلانجینی',
+ 'THB' => 'تھائی باہت',
+ 'TJS' => 'تاجکستانی سومونی',
+ 'TMT' => 'ترکمانستانی منات',
+ 'TND' => 'تیونیسیائی دینار',
+ 'TOP' => 'ٹونگن پانگا',
+ 'TRY' => 'ترکی لیرا',
+ 'TTD' => 'ترینیداد اور ٹوباگو کا ڈالر',
+ 'TWD' => 'نیو تائیوان ڈالر',
+ 'TZS' => 'تنزانیائی شلنگ',
+ 'UAH' => 'یوکرینیائی ہریونیا',
+ 'UGX' => 'یوگانڈا شلنگ',
+ 'USD' => 'امریکی ڈالر',
+ 'UYU' => 'یوروگویان پیسو',
+ 'UZS' => 'ازبکستان سوم',
+ 'VEB' => 'وینزویلا بولیور (1871–2008)',
+ 'VEF' => 'وینزویلا بولیور',
+ 'VND' => 'ویتنامی ڈانگ',
+ 'VUV' => 'وینوواتو واتو',
+ 'WST' => 'ساموآ کا ٹالا',
+ 'XAF' => 'CFA فرانک BEAC',
+ 'XCD' => 'مشرقی کریبیا کا ڈالر',
+ 'XOF' => 'CFA فرانک BCEAO',
+ 'XPF' => 'CFP فرانک',
+ 'XXX' => 'نامعلوم کرنسی',
+ 'YER' => 'یمنی ریال',
+ 'ZAR' => 'جنوبی افریقی رانڈ',
+ 'ZMK' => 'زامبیائی کواچا (1968–2012)',
+ 'ZMW' => 'زامبیائی کواچا',
+);
+
+$currencySymbols = array(
+ 'AED' => 'AED',
+ 'AFN' => 'AFN',
+ 'ALL' => 'ALL',
+ 'AMD' => 'AMD',
+ 'ANG' => 'ANG',
+ 'AOA' => 'AOA',
+ 'ARS' => 'ARS',
+ 'AUD' => 'A$',
+ 'AWG' => 'AWG',
+ 'AZN' => 'AZN',
+ 'BAM' => 'BAM',
+ 'BBD' => 'BBD',
+ 'BDT' => 'BDT',
+ 'BGN' => 'BGN',
+ 'BHD' => 'BHD',
+ 'BIF' => 'BIF',
+ 'BMD' => 'BMD',
+ 'BND' => 'BND',
+ 'BOB' => 'BOB',
+ 'BRL' => 'R$',
+ 'BSD' => 'BSD',
+ 'BTN' => 'BTN',
+ 'BWP' => 'BWP',
+ 'BYR' => 'BYR',
+ 'BZD' => 'BZD',
+ 'CAD' => 'CA$',
+ 'CDF' => 'CDF',
+ 'CHF' => 'CHF',
+ 'CLP' => 'CLP',
+ 'CNY' => 'CN¥',
+ 'COP' => 'COP',
+ 'CRC' => 'CRC',
+ 'CUC' => 'CUC',
+ 'CUP' => 'CUP',
+ 'CVE' => 'CVE',
+ 'CZK' => 'CZK',
+ 'DJF' => 'DJF',
+ 'DKK' => 'DKK',
+ 'DOP' => 'DOP',
+ 'DZD' => 'DZD',
+ 'EGP' => 'EGP',
+ 'ERN' => 'ERN',
+ 'ETB' => 'ETB',
+ 'EUR' => '€',
+ 'FJD' => 'FJD',
+ 'FKP' => 'FKP',
+ 'GBP' => '£',
+ 'GEL' => 'GEL',
+ 'GHS' => 'GHS',
+ 'GIP' => 'GIP',
+ 'GMD' => 'GMD',
+ 'GNF' => 'GNF',
+ 'GTQ' => 'GTQ',
+ 'GYD' => 'GYD',
+ 'HKD' => 'HK$',
+ 'HNL' => 'HNL',
+ 'HRK' => 'HRK',
+ 'HTG' => 'HTG',
+ 'HUF' => 'HUF',
+ 'IDR' => 'IDR',
+ 'ILS' => '₪',
+ 'INR' => '₹',
+ 'IQD' => 'IQD',
+ 'IRR' => 'IRR',
+ 'ISK' => 'ISK',
+ 'JMD' => 'JMD',
+ 'JOD' => 'JOD',
+ 'JPY' => 'JP¥',
+ 'KES' => 'KES',
+ 'KGS' => 'KGS',
+ 'KHR' => 'KHR',
+ 'KMF' => 'KMF',
+ 'KPW' => 'KPW',
+ 'KRW' => '₩',
+ 'KWD' => 'KWD',
+ 'KYD' => 'KYD',
+ 'KZT' => 'KZT',
+ 'LAK' => 'LAK',
+ 'LBP' => 'LBP',
+ 'LKR' => 'LKR',
+ 'LRD' => 'LRD',
+ 'LTL' => 'LTL',
+ 'LVL' => 'LVL',
+ 'LYD' => 'LYD',
+ 'MAD' => 'MAD',
+ 'MDL' => 'MDL',
+ 'MGA' => 'MGA',
+ 'MKD' => 'MKD',
+ 'MMK' => 'MMK',
+ 'MNT' => 'MNT',
+ 'MOP' => 'MOP',
+ 'MRO' => 'MRO',
+ 'MUR' => 'MUR',
+ 'MVR' => 'MVR',
+ 'MWK' => 'MWK',
+ 'MXN' => 'MX$',
+ 'MYR' => 'MYR',
+ 'MZN' => 'MZN',
+ 'NAD' => 'NAD',
+ 'NGN' => 'NGN',
+ 'NIO' => 'NIO',
+ 'NOK' => 'NOK',
+ 'NPR' => 'NPR',
+ 'NZD' => 'NZ$',
+ 'OMR' => 'OMR',
+ 'PAB' => 'PAB',
+ 'PEN' => 'PEN',
+ 'PGK' => 'PGK',
+ 'PHP' => 'PHP',
+ 'PKR' => 'Rs',
+ 'PLN' => 'PLN',
+ 'PYG' => 'PYG',
+ 'QAR' => 'QAR',
+ 'RON' => 'RON',
+ 'RSD' => 'RSD',
+ 'RUB' => 'RUB',
+ 'RWF' => 'RWF',
+ 'SAR' => 'SAR',
+ 'SBD' => 'SBD',
+ 'SCR' => 'SCR',
+ 'SDG' => 'SDG',
+ 'SEK' => 'SEK',
+ 'SGD' => 'SGD',
+ 'SHP' => 'SHP',
+ 'SLL' => 'SLL',
+ 'SOS' => 'SOS',
+ 'SRD' => 'SRD',
+ 'SSP' => 'SSP',
+ 'STD' => 'STD',
+ 'SYP' => 'SYP',
+ 'SZL' => 'SZL',
+ 'THB' => '฿',
+ 'TJS' => 'TJS',
+ 'TMT' => 'TMT',
+ 'TND' => 'TND',
+ 'TOP' => 'TOP',
+ 'TRY' => 'TRY',
+ 'TTD' => 'TTD',
+ 'TWD' => 'NT$',
+ 'TZS' => 'TZS',
+ 'UAH' => 'UAH',
+ 'UGX' => 'UGX',
+ 'USD' => '$',
+ 'UYU' => 'UYU',
+ 'UZS' => 'UZS',
+ 'VEF' => 'VEF',
+ 'VND' => '₫',
+ 'VUV' => 'VUV',
+ 'WST' => 'WST',
+ 'XAF' => 'FCFA',
+ 'XCD' => 'EC$',
+ 'XOF' => 'CFA',
+ 'XPF' => 'CFPF',
+ 'YER' => 'YER',
+ 'ZAR' => 'ZAR',
+ 'ZMW' => 'ZMW',
+);
+
+$countryNames = array(
+ 'AC' => 'اسکینسیئن آئلینڈ',
+ 'AD' => 'انڈورا',
+ 'AE' => 'متحدہ عرب امارات',
+ 'AF' => 'افغانستان',
+ 'AG' => 'انٹیگوا اور باربودا',
+ 'AI' => 'انگوئیلا',
+ 'AL' => 'البانیہ',
+ 'AM' => 'آرمینیا',
+ 'AN' => 'نیدرلینڈز انٹیلیز',
+ 'AO' => 'انگولا',
+ 'AQ' => 'انٹارکٹیکا',
+ 'AR' => 'ارجنٹینا',
+ 'AS' => 'امریکی ساموآ',
+ 'AT' => 'آسٹریا',
+ 'AU' => 'آسٹریلیا',
+ 'AW' => 'اروبا',
+ 'AX' => 'آلینڈ آئلینڈز',
+ 'AZ' => 'آذربائجان',
+ 'BA' => 'بوسنیا اور ہرزیگووینا',
+ 'BB' => 'باربادوس',
+ 'BD' => 'بنگلہ دیش',
+ 'BE' => 'بیلجیم',
+ 'BF' => 'برکینا فاسو',
+ 'BG' => 'بلغاریہ',
+ 'BH' => 'بحرین',
+ 'BI' => 'برونڈی',
+ 'BJ' => 'بینن',
+ 'BL' => 'سینٹ برتھلیمی',
+ 'BM' => 'برمودا',
+ 'BN' => 'برونئی',
+ 'BO' => 'بولیویا',
+ 'BQ' => 'کریبیائی نیدرلینڈز',
+ 'BR' => 'برازیلی',
+ 'BS' => 'بہاماس',
+ 'BT' => 'بھوٹان',
+ 'BV' => 'بؤویٹ آئلینڈ',
+ 'BW' => 'بوتسوانا',
+ 'BY' => 'بیلاروس',
+ 'BZ' => 'بیلائز',
+ 'CA' => 'کینیڈا',
+ 'CC' => 'کوکوس (کیلنگ) جزائر',
+ 'CD' => 'کانگو - کنشاسا',
+ 'CF' => 'وسط افریقی جمہوریہ',
+ 'CG' => 'کانگو - برازاویلے',
+ 'CH' => 'سوئٹزر لینڈ',
+ 'CI' => 'کوٹ ڈی آئیوری',
+ 'CK' => 'کک آئلینڈز',
+ 'CL' => 'چلی',
+ 'CM' => 'کیمرون',
+ 'CN' => 'چین',
+ 'CO' => 'کولمبیا',
+ 'CP' => 'کلپّرٹن آئلینڈ',
+ 'CR' => 'کوسٹا ریکا',
+ 'CU' => 'کیوبا',
+ 'CV' => 'کیپ ورڈی',
+ 'CW' => 'کیوراکاؤ',
+ 'CX' => 'کرسمس آئلینڈ',
+ 'CY' => 'قبرص',
+ 'CZ' => 'چیک جمہوریہ',
+ 'DE' => 'جرمنی',
+ 'DG' => 'ڈائجو گارسیا',
+ 'DJ' => 'جبوتی',
+ 'DK' => 'ڈنمارک',
+ 'DM' => 'ڈومنیکا',
+ 'DO' => 'ڈومنیکن جمہوریہ',
+ 'DZ' => 'الجیریا',
+ 'EA' => 'سیئوٹا اور میلیلا',
+ 'EC' => 'ایکواڈور',
+ 'EE' => 'اسٹونیا',
+ 'EG' => 'مصر',
+ 'EH' => 'مغربی صحارا',
+ 'ER' => 'اریٹیریا',
+ 'ES' => 'ہسپانیہ',
+ 'ET' => 'ایتھوپیا',
+ 'EU' => 'یوروپی یونین',
+ 'FI' => 'فن لینڈ',
+ 'FJ' => 'فجی',
+ 'FK' => 'فاکلینڈ جزائر',
+ 'FM' => 'مائکرونیشیا',
+ 'FO' => 'فروئی آئلینڈز',
+ 'FR' => 'فرانس',
+ 'GA' => 'گیبون',
+ 'GB' => 'یو کے',
+ 'GD' => 'غرناطہ',
+ 'GE' => 'جارجیا',
+ 'GF' => 'فرینچ گیانا',
+ 'GG' => 'گوئرنسی',
+ 'GH' => 'گھانا',
+ 'GI' => 'جبل الطارق',
+ 'GL' => 'گرین لینڈ',
+ 'GM' => 'گامبیا',
+ 'GN' => 'گنی',
+ 'GP' => 'گواڈیلوپ',
+ 'GQ' => 'استوائی گیانا',
+ 'GR' => 'یونان',
+ 'GS' => 'جنوبی جارجیا اور جنوبی سینڈوچ جزائر',
+ 'GT' => 'گواٹے مالا',
+ 'GU' => 'گوآم',
+ 'GW' => 'گنی بساؤ',
+ 'GY' => 'گیانا',
+ 'HK' => 'ہانگ کانگ',
+ 'HM' => 'ہیئرڈ آئلینڈ اور میکڈونالڈ آئلینڈز',
+ 'HN' => 'ہونڈاروس',
+ 'HR' => 'کروشیا',
+ 'HT' => 'ہیتی',
+ 'HU' => 'ہنگری',
+ 'IC' => 'کینری آئلینڈز',
+ 'ID' => 'انڈونیشیا',
+ 'IE' => 'آئرلینڈ',
+ 'IL' => 'اسرائیل',
+ 'IM' => 'آئل آف مین',
+ 'IN' => 'بھارت',
+ 'IO' => 'برطانوی ہندوستانی سمندری خطہ',
+ 'IQ' => 'عراق',
+ 'IR' => 'ایران',
+ 'IS' => 'آئس لینڈ',
+ 'IT' => 'اٹلی',
+ 'JE' => 'جرسی',
+ 'JM' => 'جمائیکا',
+ 'JO' => 'اردن',
+ 'JP' => 'جاپان',
+ 'KE' => 'کینیا',
+ 'KG' => 'کرغزستان',
+ 'KH' => 'کمبوڈیا',
+ 'KI' => 'کریباتی',
+ 'KM' => 'کوموروس',
+ 'KN' => 'سینٹ کٹس اور نیویس',
+ 'KP' => 'شمالی کوریا',
+ 'KR' => 'جنوبی کوریا',
+ 'KW' => 'کویت',
+ 'KY' => 'کیمین آئلینڈز',
+ 'KZ' => 'قزاخستان',
+ 'LA' => 'لاؤس',
+ 'LB' => 'لبنان',
+ 'LC' => 'سینٹ لوسیا',
+ 'LI' => 'لیشٹنسٹائن',
+ 'LK' => 'سری لنکا',
+ 'LR' => 'لائبیریا',
+ 'LS' => 'لیسوتھو',
+ 'LT' => 'لتھوانیا',
+ 'LU' => 'لگژمبرگ',
+ 'LV' => 'لٹویا',
+ 'LY' => 'لیبیا',
+ 'MA' => 'مراقش',
+ 'MC' => 'موناکو',
+ 'MD' => 'مالدووا',
+ 'ME' => 'مونٹے نیگرو',
+ 'MF' => 'سینٹ مارٹن',
+ 'MG' => 'مڈغاسکر',
+ 'MH' => 'مارشل آئلینڈز',
+ 'MK' => 'مقدونیہ',
+ 'ML' => 'مالی',
+ 'MM' => 'میانمار (برما)',
+ 'MN' => 'منگولیا',
+ 'MO' => 'مکاؤ',
+ 'MP' => 'شمالی ماریانا آئلینڈز',
+ 'MQ' => 'مارٹینک',
+ 'MR' => 'موریطانیہ',
+ 'MS' => 'مونٹسیراٹ',
+ 'MT' => 'مالٹا',
+ 'MU' => 'ماریشس',
+ 'MV' => 'مالدیپ',
+ 'MW' => 'ملاوی',
+ 'MX' => 'میکسیکو',
+ 'MY' => 'ملیشیا',
+ 'MZ' => 'موزمبیق',
+ 'NA' => 'نامیبیا',
+ 'NC' => 'نیو کلیڈونیا',
+ 'NE' => 'نائجر',
+ 'NF' => 'نار فاک آئلینڈ',
+ 'NG' => 'نائجیریا',
+ 'NI' => 'نکاراگووا',
+ 'NL' => 'نیدر لینڈز',
+ 'NO' => 'ناروے',
+ 'NP' => 'نیپال',
+ 'NR' => 'نؤرو',
+ 'NU' => 'نیئو',
+ 'NZ' => 'نیوزی ینڈ',
+ 'OM' => 'عمان',
+ 'PA' => 'پنامہ',
+ 'PE' => 'پیرو',
+ 'PF' => 'فرانسیسی پولینیشیا',
+ 'PG' => 'پاپوآ نیو گنی',
+ 'PH' => 'فلپائنی',
+ 'PK' => 'پاکستان',
+ 'PL' => 'پولینڈ',
+ 'PM' => 'سینٹ پیئر اور میکلیئون',
+ 'PN' => 'پٹکائرن جزائر',
+ 'PR' => 'پیورٹو ریکو',
+ 'PS' => 'فلسطین',
+ 'PT' => 'پرتگال',
+ 'PW' => 'پلاؤ',
+ 'PY' => 'پیراگوئے',
+ 'QA' => 'قطر',
+ 'QO' => 'بیرونی اوشیانیا',
+ 'RE' => 'ری یونین',
+ 'RO' => 'رومانیا',
+ 'RS' => 'سربیا',
+ 'RU' => 'روسی',
+ 'RW' => 'روانڈا',
+ 'SA' => 'سعودی عرب',
+ 'SB' => 'سولومن آئلینڈز',
+ 'SC' => 'سشلیز',
+ 'SD' => 'سوڈان',
+ 'SE' => 'سویڈن',
+ 'SG' => 'سنگاپور',
+ 'SH' => 'سینٹ ہیلینا',
+ 'SI' => 'سلووینیا',
+ 'SJ' => 'سوالبرڈ اور جان ماین',
+ 'SK' => 'سلوواکیہ',
+ 'SL' => 'سیئر لیون',
+ 'SM' => 'سان مارینو',
+ 'SN' => 'سینیگل',
+ 'SO' => 'صومالیہ',
+ 'SR' => 'سورینام',
+ 'SS' => 'جنوبی سوڈان',
+ 'ST' => 'ساؤ ٹوم اور پرنسپے',
+ 'SV' => 'ال سلواڈور',
+ 'SX' => 'سنٹ مارٹن',
+ 'SY' => 'شام',
+ 'SZ' => 'سوازی لینڈ',
+ 'TA' => 'ٹرسٹن ڈا کیونہا',
+ 'TC' => 'ترکس اور کیکاؤس جزائر',
+ 'TD' => 'چاڈ',
+ 'TF' => 'فرانسیسی جنوبی خطے',
+ 'TG' => 'ٹوگو',
+ 'TH' => 'تھائی لینڈ',
+ 'TJ' => 'تاجکستان',
+ 'TK' => 'ٹوکیلاؤ',
+ 'TL' => 'تیمور لیسٹ',
+ 'TM' => 'ترکمانستان',
+ 'TN' => 'تیونیسیا',
+ 'TO' => 'ٹونگا',
+ 'TR' => 'ترکی',
+ 'TT' => 'ترینیداد اور ٹوباگو',
+ 'TV' => 'ٹووالو',
+ 'TW' => 'تائیوان',
+ 'TZ' => 'تنزانیہ',
+ 'UA' => 'یوکرین',
+ 'UG' => 'یوگانڈا',
+ 'UM' => 'امریکہ سے باہر کے چھوٹے جزائز',
+ 'US' => 'امریکا',
+ 'UY' => 'یوروگوئے',
+ 'UZ' => 'ازبکستان',
+ 'VA' => 'واٹیکن سٹی',
+ 'VC' => 'سینٹ ونسنٹ اور گرینیڈائنز',
+ 'VE' => 'وینزوئیلا',
+ 'VG' => 'برٹش ورجن آئلینڈز',
+ 'VI' => 'امریکی ورجن آئلینڈز',
+ 'VN' => 'ویتنام',
+ 'VU' => 'وینوآٹو',
+ 'WF' => 'ویلیز اور فیوٹیونا',
+ 'WS' => 'ساموآ',
+ 'XK' => 'کوسووو',
+ 'YE' => 'یمن',
+ 'YT' => 'مایوٹ',
+ 'ZA' => 'جنوبی افریقہ',
+ 'ZM' => 'زامبیا',
+ 'ZW' => 'زمبابوے',
+);
+
+$timeUnits = array(
+ 'day-future-one' => '{0} دن میں',
+ 'day-future-other' => '{0} دنوں میں',
+ 'day-narrow-future-one' => '{0} دنوں میں',
+ 'day-narrow-future-other' => '{0} دنوں میں',
+ 'day-narrow-past-one' => '-{0} دن',
+ 'day-narrow-past-other' => '-{0} دن',
+ 'day-one' => '{0} دن',
+ 'day-other' => '{0} دن',
+ 'day-past-one' => '{0} دن پہلے',
+ 'day-past-other' => '{0} دنوں پہلے',
+ 'day-short-future-one' => '{0} دن میں',
+ 'day-short-future-other' => '{0} دنوں میں',
+ 'day-short-past-one' => '{0} دن پہلے',
+ 'day-short-past-other' => '{0} دنوں پہلے',
+ 'hour-future-one' => '{0} گھنٹہ میں',
+ 'hour-future-other' => '{0} گھنٹے میں',
+ 'hour-narrow-future-one' => '{0} گھنٹہ میں',
+ 'hour-narrow-future-other' => '{0} گھنٹوں میں',
+ 'hour-narrow-past-one' => '-{0} گھنٹہ',
+ 'hour-narrow-past-other' => '-{0} گھنٹے',
+ 'hour-one' => '{0} گھنٹہ',
+ 'hour-other' => '{0} گھنٹے',
+ 'hour-past-one' => '{0} گھنٹہ پہلے',
+ 'hour-past-other' => '{0} گھنٹے پہلے',
+ 'hour-short-future-one' => '{0} گھنٹے میں',
+ 'hour-short-future-other' => '{0} گھنٹے میں',
+ 'hour-short-past-one' => '{0} گھنٹے پہلے',
+ 'hour-short-past-other' => '{0} گھنٹے پہلے',
+ 'microsecond-one' => '{0} مائیکرو سیکنڈ',
+ 'microsecond-other' => '{0} مائیکرو سیکنڈز',
+ 'millisecond-one' => '{0} ملی سیکنڈ',
+ 'millisecond-other' => '{0} میل سیکنڈ',
+ 'minute-future-one' => '{0} منٹ میں',
+ 'minute-future-other' => '{0} منٹ میں',
+ 'minute-narrow-future-one' => '{0} منٹ میں',
+ 'minute-narrow-future-other' => '{0} منٹ میں',
+ 'minute-narrow-past-one' => '{0} منٹ پہلے',
+ 'minute-narrow-past-other' => '{0} منٹ پہلے',
+ 'minute-one' => '{0} منٹ',
+ 'minute-other' => '{0} منٹ',
+ 'minute-past-one' => '{0} منٹ پہلے',
+ 'minute-past-other' => '{0} منٹ پہلے',
+ 'minute-short-future-one' => '{0} منٹ میں',
+ 'minute-short-future-other' => '{0} منٹ میں',
+ 'minute-short-past-one' => '{0} منٹ پہلے',
+ 'minute-short-past-other' => '{0} منٹ پہلے',
+ 'month-future-one' => '{0} مہینہ میں',
+ 'month-future-other' => '{0} مہینے میں',
+ 'month-narrow-future-one' => '+{0} ماہ میں',
+ 'month-narrow-future-other' => '+{0} ماہ میں',
+ 'month-narrow-past-one' => '-{0} ماہ میں',
+ 'month-narrow-past-other' => '-{0} ماہ میں',
+ 'month-one' => '{0} مہینہ',
+ 'month-other' => '{0} مہینے',
+ 'month-past-one' => '{0} مہینہ پہلے',
+ 'month-past-other' => '{0} مہینے پہلے',
+ 'month-short-future-one' => '{0} ماہ میں',
+ 'month-short-future-other' => '{0} ماہ میں',
+ 'month-short-past-one' => '{0} ماہ قبل',
+ 'month-short-past-other' => '{0} ماہ قبل',
+ 'nanosecond-one' => '{0} نینو سیکنڈ',
+ 'nanosecond-other' => '{0} نینو سیکنڈ',
+ 'quarter-future-one' => '+{0} سہ ماہی',
+ 'quarter-future-other' => '+{0} سہ ماہی',
+ 'quarter-narrow-future-one' => '{0} سہ ماہی میں',
+ 'quarter-narrow-future-other' => '{0} سہ ماہی میں',
+ 'quarter-narrow-past-one' => '-{0}سہ ماہی',
+ 'quarter-narrow-past-other' => '-{0}سہ ماہی',
+ 'quarter-past-one' => '-{0} سہ ماہی',
+ 'quarter-past-other' => '-{0} سہ ماہی',
+ 'quarter-short-future-one' => '{0} سہ ماہی میں',
+ 'quarter-short-future-other' => '{0} سہ ماہی میں',
+ 'quarter-short-past-one' => '{0} سہ ماہی قبل',
+ 'quarter-short-past-other' => '{0} سہ ماہی قبل',
+ 'second-future-one' => '{0} سیکنڈ میں',
+ 'second-future-other' => '{0} سیکنڈ میں',
+ 'second-narrow-future-one' => '{0} سیکنڈ میں',
+ 'second-narrow-future-other' => '{0} سیکنڈ میں',
+ 'second-narrow-past-one' => '-{0} سیکنڈ',
+ 'second-narrow-past-other' => '-{0} سیکنڈ',
+ 'second-one' => '{0} سیکنڈ',
+ 'second-other' => '{0} سیکنڈ',
+ 'second-past-one' => '{0} سیکنڈ پہلے',
+ 'second-past-other' => '{0} سیکنڈ پہلے',
+ 'second-short-future-one' => '{0} سیکنڈ میں',
+ 'second-short-future-other' => '{0} سیکنڈ میں',
+ 'second-short-past-one' => '{0} سیکنڈ پہلے',
+ 'second-short-past-other' => '{0} سیکنڈ پہلے',
+ 'week-future-one' => '{0} ہفتہ میں',
+ 'week-future-other' => '{0} ہفتے میں',
+ 'week-narrow-future-one' => '{0} ہفتہ میں',
+ 'week-narrow-future-other' => '{0} ہفتے میں',
+ 'week-narrow-past-one' => '-{0} ہفتہ',
+ 'week-narrow-past-other' => '-{0} ہفتے',
+ 'week-one' => '{0} ہفتہ',
+ 'week-other' => '{0} ہفتے',
+ 'week-past-one' => '{0} ہفتہ پہلے',
+ 'week-past-other' => '{0} ہفتے پہلے',
+ 'week-short-future-one' => '{0} ہفتے میں',
+ 'week-short-future-other' => '{0} ہفتے میں',
+ 'week-short-past-one' => '{0} ہفتے پہلے',
+ 'week-short-past-other' => '{0} ہفتے پہلے',
+ 'year-future-one' => '{0} سال میں',
+ 'year-future-other' => '{0} سال میں',
+ 'year-narrow-future-one' => '+{0} سال میں',
+ 'year-narrow-future-other' => '+{0} سال میں',
+ 'year-narrow-past-one' => '-{0} سال پہلے',
+ 'year-narrow-past-other' => '-{0} سال پہلے',
+ 'year-one' => '{0} سال',
+ 'year-other' => '{0} سال',
+ 'year-past-one' => '{0} سال پہلے',
+ 'year-past-other' => '{0} سال پہلے',
+ 'year-short-future-one' => '{0} سال میں',
+ 'year-short-future-other' => '{0} سال میں',
+ 'year-short-past-one' => '{0} سال پہلے',
+ 'year-short-past-other' => '{0} سال پہلے',
+);
diff --git a/MLEB/cldr/CldrNames/CldrNamesUz.php b/MLEB/cldr/CldrNames/CldrNamesUz.php
new file mode 100644
index 00000000..970d57c8
--- /dev/null
+++ b/MLEB/cldr/CldrNames/CldrNamesUz.php
@@ -0,0 +1,875 @@
+<?php
+
+$languageNames = array(
+ 'ab' => 'abxazcha',
+ 'af' => 'afrikancha',
+ 'agq' => 'ag‘emcha',
+ 'ak' => 'akancha',
+ 'am' => 'amxarcha',
+ 'ar' => 'arabcha',
+ 'ar-001' => 'zamonavij standart arabcha',
+ 'arn' => 'mapuchiycha',
+ 'as' => 'assamcha',
+ 'asa' => 'asucha',
+ 'az' => 'ozarbayjoncha',
+ 'ba' => 'boshqircha',
+ 'be' => 'belaruscha',
+ 'bem' => 'bembacha',
+ 'bez' => 'benacha',
+ 'bg' => 'bolgarcha',
+ 'bm' => 'bambarcha',
+ 'bn' => 'bengalcha',
+ 'bo' => 'tibetcha',
+ 'br' => 'bretoncha',
+ 'brx' => 'bodocha',
+ 'bs' => 'bosniycha',
+ 'ca' => 'katalancha',
+ 'cgg' => 'chigcha',
+ 'chr' => 'cherokcha',
+ 'ckb' => 'sorani kurd tili',
+ 'co' => 'korsiancha',
+ 'cs' => 'chexcha',
+ 'cy' => 'uelscha',
+ 'da' => 'datcha',
+ 'dav' => 'taitcha',
+ 'de' => 'nemischa',
+ 'de-at' => 'Avstriya olmonchasi',
+ 'de-ch' => 'Shvesariya olmonchasi',
+ 'dje' => 'zarmacha',
+ 'dsb' => 'quyi sorbcha',
+ 'dua' => 'dualcha',
+ 'dyo' => 'yola-fonyicha',
+ 'dz' => 'yovoncha',
+ 'ebu' => 'embucha',
+ 'ee' => 'ivicha',
+ 'el' => 'yunoncha',
+ 'en' => 'inglizcha',
+ 'en-au' => 'Avstraliya inglizchasi',
+ 'en-ca' => 'Kanada inglizchasi',
+ 'en-gb' => 'Britaniya inglizchasi',
+ 'eo' => 'esperantocha',
+ 'es' => 'ispancha',
+ 'es-419' => 'Lotin Amerika ispanchasi',
+ 'es-es' => 'Yevropa ispanchasi',
+ 'es-mx' => 'Meksika ispanchasi',
+ 'et' => 'estoncha',
+ 'eu' => 'baskcha',
+ 'fa' => 'forscha',
+ 'fi' => 'fincha',
+ 'fil' => 'filipincha',
+ 'fj' => 'fijcha',
+ 'fo' => 'farercha',
+ 'fr' => 'fransuzcha',
+ 'fr-ca' => 'Kanada fransuzchasi',
+ 'fr-ch' => 'Shvesariya fransuzchasi',
+ 'fy' => 'gʻarbiy friziancha',
+ 'ga' => 'irlandcha',
+ 'gag' => 'gagozcha',
+ 'gl' => 'galitsiycha',
+ 'gn' => 'gorancha',
+ 'gsw' => 'shveysariya nemischasi',
+ 'gu' => 'gujoratcha',
+ 'guz' => 'guzcha',
+ 'gv' => 'mencha',
+ 'ha' => 'xauscha',
+ 'haw' => 'gavaycha',
+ 'he' => 'ibroniy',
+ 'hi' => 'hindcha',
+ 'hr' => 'xorvatcha',
+ 'hsb' => 'yuqori sorbcha',
+ 'ht' => 'gaitcha',
+ 'hu' => 'vengrcha',
+ 'hy' => 'armancha',
+ 'id' => 'indoneyzcha',
+ 'ig' => 'igbocha',
+ 'ii' => 'zichuan yicha',
+ 'is' => 'islandcha',
+ 'it' => 'italyancha',
+ 'iu' => 'inuktitutcha',
+ 'ja' => 'yaponcha',
+ 'jgo' => 'ngombcha',
+ 'jmc' => 'machamcha',
+ 'jv' => 'yavancha',
+ 'ka' => 'gruzincha',
+ 'kab' => 'qobilcha',
+ 'kam' => 'kambcha',
+ 'kde' => 'maqondiy',
+ 'kea' => 'kabuverdiancha',
+ 'khq' => 'qoyra-chincha',
+ 'ki' => 'kikuycha',
+ 'kk' => 'qozoqcha',
+ 'kl' => 'kalallisutcha',
+ 'kln' => 'kalenjincha',
+ 'km' => 'xmercha',
+ 'kn' => 'kannadcha',
+ 'ko' => 'koreyscha',
+ 'koi' => 'komi-permyakcha',
+ 'kok' => 'konkancha',
+ 'ks' => 'kashmircha',
+ 'ksb' => 'shambalacha',
+ 'ksf' => 'bafiycha',
+ 'ku' => 'kurdcha',
+ 'kw' => 'kornishcha',
+ 'ky' => 'qirgʻizcha',
+ 'la' => 'lotincha',
+ 'lag' => 'langcha',
+ 'lb' => 'lyuksemburgcha',
+ 'lg' => 'gandcha',
+ 'lkt' => 'lakotcha',
+ 'ln' => 'lingalcha',
+ 'lo' => 'laoscha',
+ 'lt' => 'litovcha',
+ 'lu' => 'luba-katangcha',
+ 'luo' => 'luocha',
+ 'luy' => 'luycha',
+ 'lv' => 'latishcha',
+ 'mas' => 'masaycha',
+ 'mer' => 'merucha',
+ 'mfe' => 'morisyencha',
+ 'mg' => 'malagasiycha',
+ 'mgh' => 'makuva-mittocha',
+ 'mgo' => 'metacha',
+ 'mi' => 'maoriycha',
+ 'mk' => 'makedoncha',
+ 'ml' => 'malayamcha',
+ 'mn' => 'mo‘g‘ulcha',
+ 'moh' => 'mohaukcha',
+ 'mr' => 'maratcha',
+ 'ms' => 'malaycha',
+ 'mt' => 'maltacha',
+ 'mua' => 'mundangcha',
+ 'my' => 'birmancha',
+ 'naq' => 'namacha',
+ 'nb' => 'norvegcha bokmal',
+ 'nd' => 'shimoliy ndebelcha',
+ 'ne' => 'nepalcha',
+ 'nl' => 'gollandcha',
+ 'nl-be' => 'flamandcha',
+ 'nmg' => 'kvaziycha',
+ 'nn' => 'norvegcha ninorsk',
+ 'nqo' => 'nqoancha',
+ 'nus' => 'noyrcha',
+ 'nyn' => 'nyankolcha',
+ 'om' => 'oromocha',
+ 'or' => 'oriycha',
+ 'pa' => 'panjobcha',
+ 'pl' => 'polyakcha',
+ 'ps' => 'pushtu tili',
+ 'pt' => 'portugalcha',
+ 'pt-br' => 'Braziliya portugalchasi',
+ 'pt-pt' => 'Yevropa portugalchasi',
+ 'qu' => 'qvechuancha',
+ 'quc' => 'qichiancha',
+ 'rm' => 'romancha',
+ 'rn' => 'rundcha',
+ 'ro' => 'rumincha',
+ 'ro-md' => 'moldovan rumincha',
+ 'rof' => 'rombacha',
+ 'ru' => 'ruscha',
+ 'rw' => 'kinyarvandcha',
+ 'rwk' => 'ruandcha',
+ 'sa' => 'sanskritcha',
+ 'saq' => 'samburcha',
+ 'sbp' => 'sanguancha',
+ 'sd' => 'sindxiycha',
+ 'se' => 'shimoliy semiycha',
+ 'seh' => 'seniycha',
+ 'ses' => 'koryaboro senniycha',
+ 'sg' => 'sangoancha',
+ 'shi' => 'tachilgitcha',
+ 'si' => 'sinholcha',
+ 'sk' => 'slovakcha',
+ 'sl' => 'slovencha',
+ 'sma' => 'janubiy semiycha',
+ 'smj' => 'luli semiycha',
+ 'smn' => 'inari semiycha',
+ 'sms' => 'shkolt semiycha',
+ 'sn' => 'shoniycha',
+ 'so' => 'somalicha',
+ 'sq' => 'albancha',
+ 'sr' => 'serbcha',
+ 'su' => 'sundancha',
+ 'sv' => 'shvedcha',
+ 'sw' => 'svahilcha',
+ 'swc' => 'kongo svahiliycha',
+ 'ta' => 'tamilcha',
+ 'te' => 'telugvancha',
+ 'teo' => 'tesoancha',
+ 'tg' => 'tojikcha',
+ 'th' => 'taycha',
+ 'ti' => 'tigrincha',
+ 'tk' => 'turkmancha',
+ 'to' => 'tongocha',
+ 'tr' => 'turkcha',
+ 'tt' => 'tatarcha',
+ 'twq' => 'tosovoqcha',
+ 'tzm' => 'markaziy atlas vaqt zonasi',
+ 'ug' => 'uygʻurcha',
+ 'uk' => 'ukraincha',
+ 'und' => 'nomaʼlum til',
+ 'ur' => 'urducha',
+ 'uz' => 'oʻzbekcha',
+ 'vai' => 'vayancha',
+ 'vi' => 'vyetnamcha',
+ 'vun' => 'vunjoancha',
+ 'wo' => 'volofcha',
+ 'xh' => 'xosancha',
+ 'xog' => 'sogancha',
+ 'yo' => 'yorubcha',
+ 'zgh' => 'standart marokash tamazit',
+ 'zh' => 'xitoycha',
+ 'zh-hans' => 'soddalashtirilgan xitoycha',
+ 'zh-hant' => 'anʼanaviy xitoycha',
+ 'zu' => 'zuluancha',
+ 'zxx' => 'til tarkibi yoʻq',
+);
+
+$currencyNames = array(
+ 'AED' => 'AED',
+ 'AFN' => 'AFN',
+ 'ALL' => 'Alban leki',
+ 'AMD' => 'AMD',
+ 'ANG' => 'Golland Antil guldeni',
+ 'AOA' => 'AOA',
+ 'ARS' => 'Argentina pesosi',
+ 'AUD' => 'Avstraliya dollari',
+ 'AWG' => 'Aruba florini',
+ 'AZN' => 'AZN',
+ 'BAM' => 'Bosniya va Gertsogovina ayriboshlash markasi',
+ 'BBD' => 'Barbados dollari',
+ 'BDT' => 'BDT',
+ 'BGN' => 'Bolgariya levi',
+ 'BHD' => 'BHD',
+ 'BIF' => 'BIF',
+ 'BMD' => 'Bermuda dollari',
+ 'BND' => 'BND',
+ 'BOB' => 'Boliviya bolivyani',
+ 'BRL' => 'Brazil reali',
+ 'BSD' => 'Bagama dollari',
+ 'BTN' => 'BTN',
+ 'BWP' => 'BWP',
+ 'BYR' => 'Belarus rubli',
+ 'BZD' => 'Beliz dollari',
+ 'CAD' => 'Kanada dollari',
+ 'CDF' => 'CDF',
+ 'CHF' => 'Shvetsariya franki',
+ 'CLP' => 'Chili pesosi',
+ 'CNY' => 'Xitoy yuani',
+ 'COP' => 'Kolumbiya pesosi',
+ 'CRC' => 'Kosta-Rika koloni',
+ 'CUC' => 'Kuba Ayirboshlash pesosi',
+ 'CUP' => 'Kuba pesosi',
+ 'CVE' => 'CVE',
+ 'CZK' => 'Chex kronasi',
+ 'DJF' => 'DJF',
+ 'DKK' => 'Daniya kronasi',
+ 'DOP' => 'Dominikan pesosi',
+ 'DZD' => 'Jazoir dinori',
+ 'EGP' => 'Misr funti',
+ 'ERN' => 'ERN',
+ 'ETB' => 'ETB',
+ 'EUR' => 'Yevro',
+ 'FJD' => 'FJD',
+ 'FKP' => 'Folklend oroli funti',
+ 'GBP' => 'Ingliz funt sterlingi',
+ 'GEL' => 'GEL',
+ 'GHS' => 'GHS',
+ 'GIP' => 'Gibraltar funti',
+ 'GMD' => 'GMD',
+ 'GNF' => 'GNF',
+ 'GTQ' => 'Gvatemala kvetzali',
+ 'GYD' => 'Gayana dollari',
+ 'HKD' => 'Gonkong dollari',
+ 'HNL' => 'Gonduras lempirasi',
+ 'HRK' => 'Horvat kunasi',
+ 'HTG' => 'Gaiti gurdasi',
+ 'HUF' => 'Vengriya forinti',
+ 'IDR' => 'Indoneziya rupiyasi',
+ 'ILS' => 'ILS',
+ 'INR' => 'Hind rupiyasi',
+ 'IQD' => 'IQD',
+ 'IRR' => 'IRR',
+ 'ISK' => 'Islandiya kronasi',
+ 'JMD' => 'Yamayka dollari',
+ 'JOD' => 'JOD',
+ 'JPY' => 'Yapon yenasi',
+ 'KES' => 'KES',
+ 'KGS' => 'KGS',
+ 'KHR' => 'KHR',
+ 'KMF' => 'KMF',
+ 'KPW' => 'KPW',
+ 'KRW' => 'Janubiy Koreya voni',
+ 'KWD' => 'KWD',
+ 'KYD' => 'Kayman Orollari Dollari',
+ 'KZT' => 'KZT',
+ 'LAK' => 'LAK',
+ 'LBP' => 'LBP',
+ 'LKR' => 'LKR',
+ 'LRD' => 'LRD',
+ 'LTL' => 'Litva liti',
+ 'LVL' => 'Latviya lati',
+ 'LYD' => 'Liviya dinori',
+ 'MAD' => 'Marokash dirhami',
+ 'MDL' => 'Moldova leusi',
+ 'MGA' => 'MGA',
+ 'MKD' => 'Makedoniya dinori',
+ 'MMK' => 'MMK',
+ 'MNT' => 'MNT',
+ 'MOP' => 'MOP',
+ 'MRO' => 'MRO',
+ 'MUR' => 'MUR',
+ 'MVR' => 'MVR',
+ 'MWK' => 'MWK',
+ 'MXN' => 'Meksika pesosi',
+ 'MYR' => 'MYR',
+ 'MZN' => 'MZN',
+ 'NAD' => 'NAD',
+ 'NGN' => 'NGN',
+ 'NIO' => 'Nikaragua kordobasi',
+ 'NOK' => 'Norvegiya kronasi',
+ 'NPR' => 'NPR',
+ 'NZD' => 'NZD',
+ 'OMR' => 'OMR',
+ 'PAB' => 'Panama balboasi',
+ 'PEN' => 'Peru noyvo soli',
+ 'PGK' => 'PGK',
+ 'PHP' => 'PHP',
+ 'PKR' => 'PKR',
+ 'PLN' => 'Polsha zlotiyi',
+ 'PYG' => 'Paragvay guarani',
+ 'QAR' => 'QAR',
+ 'RON' => 'Rumin leusi',
+ 'RSD' => 'Serbiya dinori',
+ 'RUB' => 'Rus rubli',
+ 'RWF' => 'RWF',
+ 'SAR' => 'Saudiya Arabistoni riyoli',
+ 'SBD' => 'SBD',
+ 'SCR' => 'SCR',
+ 'SDG' => 'Sudan funti',
+ 'SEK' => 'Shvetsiya kronasi',
+ 'SGD' => 'SGD',
+ 'SHP' => 'SHP',
+ 'SLL' => 'SLL',
+ 'SOS' => 'SOS',
+ 'SRD' => 'Surinam dollari',
+ 'SSP' => 'Janubiy Sudan funti',
+ 'STD' => 'STD',
+ 'SYP' => 'SYP',
+ 'SZL' => 'SZL',
+ 'THB' => 'Tayland bahti',
+ 'TJS' => 'TJS',
+ 'TMT' => 'TMT',
+ 'TND' => 'Tunis dinori',
+ 'TOP' => 'TOP',
+ 'TRY' => 'Turk lirasi',
+ 'TTD' => 'Trinidad va Tobago dollari',
+ 'TWD' => 'Yangi Tayvan dollari',
+ 'TZS' => 'TZS',
+ 'UAH' => 'Ukrain grivnasi',
+ 'UGX' => 'UGX',
+ 'USD' => 'AQSH dollari',
+ 'UYU' => 'Urugvay pesosi',
+ 'UZS' => 'Oʻzbekiston soʻm',
+ 'VEF' => 'Venesuela bolivari',
+ 'VND' => 'VND',
+ 'VUV' => 'VUV',
+ 'WST' => 'WST',
+ 'XAF' => 'XAF',
+ 'XCD' => 'Sharqiy Karib dollari',
+ 'XOF' => 'XOF',
+ 'XPF' => 'XPF',
+ 'XXX' => 'Nomaʼlum valyuta',
+ 'YER' => 'YER',
+ 'ZAR' => 'Janubiy Afrika randi',
+ 'ZMW' => 'ZMW',
+);
+
+$currencySymbols = array(
+ 'AED' => 'AED',
+ 'AFN' => 'AFN',
+ 'ALL' => 'ALL',
+ 'AMD' => 'AMD',
+ 'ANG' => 'ANG',
+ 'AOA' => 'AOA',
+ 'ARS' => 'ARS',
+ 'AUD' => 'A$',
+ 'AWG' => 'AWG',
+ 'AZN' => 'AZN',
+ 'BAM' => 'BAM',
+ 'BBD' => 'BBD',
+ 'BDT' => 'BDT',
+ 'BGN' => 'BGN',
+ 'BHD' => 'BHD',
+ 'BIF' => 'BIF',
+ 'BMD' => 'BMD',
+ 'BND' => 'BND',
+ 'BOB' => 'BOB',
+ 'BRL' => 'R$',
+ 'BSD' => 'BSD',
+ 'BTN' => 'BTN',
+ 'BWP' => 'BWP',
+ 'BYR' => 'BYR',
+ 'BZD' => 'BZD',
+ 'CAD' => 'CA$',
+ 'CDF' => 'CDF',
+ 'CHF' => 'CHF',
+ 'CLP' => 'CLP',
+ 'CNY' => 'CN¥',
+ 'COP' => 'COP',
+ 'CRC' => 'CRC',
+ 'CUC' => 'CUC',
+ 'CUP' => 'CUP',
+ 'CVE' => 'CVE',
+ 'CZK' => 'CZK',
+ 'DJF' => 'DJF',
+ 'DKK' => 'DKK',
+ 'DOP' => 'DOP',
+ 'DZD' => 'DZD',
+ 'EGP' => 'EGP',
+ 'ERN' => 'ERN',
+ 'ETB' => 'ETB',
+ 'EUR' => '€',
+ 'FJD' => 'FJD',
+ 'FKP' => 'FKP',
+ 'GBP' => '£',
+ 'GEL' => 'GEL',
+ 'GHS' => 'GHS',
+ 'GIP' => 'GIP',
+ 'GMD' => 'GMD',
+ 'GNF' => 'GNF',
+ 'GTQ' => 'GTQ',
+ 'GYD' => 'GYD',
+ 'HKD' => 'HK$',
+ 'HNL' => 'HNL',
+ 'HRK' => 'HRK',
+ 'HTG' => 'HTG',
+ 'HUF' => 'HUF',
+ 'IDR' => 'IDR',
+ 'ILS' => '₪',
+ 'INR' => '₹',
+ 'IQD' => 'IQD',
+ 'IRR' => 'IRR',
+ 'ISK' => 'ISK',
+ 'JMD' => 'JMD',
+ 'JOD' => 'JOD',
+ 'JPY' => 'JP¥',
+ 'KES' => 'KES',
+ 'KGS' => 'KGS',
+ 'KHR' => 'KHR',
+ 'KMF' => 'KMF',
+ 'KPW' => 'KPW',
+ 'KRW' => '₩',
+ 'KWD' => 'KWD',
+ 'KYD' => 'KYD',
+ 'KZT' => 'KZT',
+ 'LAK' => 'LAK',
+ 'LBP' => 'LBP',
+ 'LKR' => 'LKR',
+ 'LRD' => 'LRD',
+ 'LTL' => 'LTL',
+ 'LVL' => 'LVL',
+ 'LYD' => 'LYD',
+ 'MAD' => 'MAD',
+ 'MDL' => 'MDL',
+ 'MGA' => 'MGA',
+ 'MKD' => 'MKD',
+ 'MMK' => 'MMK',
+ 'MNT' => 'MNT',
+ 'MOP' => 'MOP',
+ 'MRO' => 'MRO',
+ 'MUR' => 'MUR',
+ 'MVR' => 'MVR',
+ 'MWK' => 'MWK',
+ 'MXN' => 'MX$',
+ 'MYR' => 'MYR',
+ 'MZN' => 'MZN',
+ 'NAD' => 'NAD',
+ 'NGN' => 'NGN',
+ 'NIO' => 'NIO',
+ 'NOK' => 'NOK',
+ 'NPR' => 'NPR',
+ 'NZD' => 'NZ$',
+ 'OMR' => 'OMR',
+ 'PAB' => 'PAB',
+ 'PEN' => 'PEN',
+ 'PGK' => 'PGK',
+ 'PHP' => 'PHP',
+ 'PKR' => 'PKR',
+ 'PLN' => 'PLN',
+ 'PYG' => 'PYG',
+ 'QAR' => 'QAR',
+ 'RON' => 'RON',
+ 'RSD' => 'RSD',
+ 'RUB' => 'RUB',
+ 'RWF' => 'RWF',
+ 'SAR' => 'SAR',
+ 'SBD' => 'SBD',
+ 'SCR' => 'SCR',
+ 'SDG' => 'SDG',
+ 'SEK' => 'SEK',
+ 'SGD' => 'SGD',
+ 'SHP' => 'SHP',
+ 'SLL' => 'SLL',
+ 'SOS' => 'SOS',
+ 'SRD' => 'SRD',
+ 'SSP' => 'SSP',
+ 'STD' => 'STD',
+ 'SYP' => 'SYP',
+ 'SZL' => 'SZL',
+ 'THB' => '฿',
+ 'TJS' => 'TJS',
+ 'TMT' => 'TMT',
+ 'TND' => 'TND',
+ 'TOP' => 'TOP',
+ 'TRY' => 'TRY',
+ 'TTD' => 'TTD',
+ 'TWD' => 'NT$',
+ 'TZS' => 'TZS',
+ 'UAH' => 'UAH',
+ 'UGX' => 'UGX',
+ 'USD' => 'US$',
+ 'UYU' => 'UYU',
+ 'UZS' => 'soʻm',
+ 'VEF' => 'VEF',
+ 'VND' => '₫',
+ 'VUV' => 'VUV',
+ 'WST' => 'WST',
+ 'XAF' => 'FCFA',
+ 'XCD' => 'EC$',
+ 'XOF' => 'CFA',
+ 'XPF' => 'CFPF',
+ 'YER' => 'YER',
+ 'ZMW' => 'ZMW',
+);
+
+$countryNames = array(
+ 'AC' => 'Vozneseniye oroli',
+ 'AD' => 'Andorra',
+ 'AE' => 'Birlashgan Arab Amirliklari',
+ 'AF' => 'Afgʻoniston',
+ 'AG' => 'Antigua va Barbados',
+ 'AI' => 'Angila',
+ 'AL' => 'Albaniya',
+ 'AM' => 'Armaniston',
+ 'AO' => 'Angola',
+ 'AQ' => 'Antarktika',
+ 'AR' => 'Argentina',
+ 'AS' => 'Amerika Samoasi',
+ 'AT' => 'Avstriya',
+ 'AU' => 'Avstraliya',
+ 'AW' => 'Aruba',
+ 'AX' => 'Aland orollari',
+ 'AZ' => 'Ozarbayjon',
+ 'BA' => 'Bosniya va Gertsegovina',
+ 'BB' => 'Barbados',
+ 'BD' => 'Bangladesh',
+ 'BE' => 'Belgiya',
+ 'BF' => 'Burkina-Faso',
+ 'BG' => 'Bolgariya',
+ 'BH' => 'Bahrayn',
+ 'BI' => 'Burundi',
+ 'BJ' => 'Benin',
+ 'BL' => 'Avliyo Varfolomey',
+ 'BM' => 'Bermuda',
+ 'BN' => 'Bruney',
+ 'BO' => 'Boliviya',
+ 'BQ' => 'Karib Niderlandiyasi',
+ 'BR' => 'Braziliya',
+ 'BS' => 'Bagama orollari',
+ 'BT' => 'Butan',
+ 'BV' => 'Buvet oroli',
+ 'BW' => 'Botsvanna',
+ 'BY' => 'Belorusiya',
+ 'BZ' => 'Beliz',
+ 'CA' => 'Kanada',
+ 'CC' => 'Kokos (Kiling) orollari',
+ 'CD' => 'Kongo-Kinshasa',
+ 'CF' => 'Markaziy Afrika Respublikasi',
+ 'CG' => 'Kongo Brazzavil',
+ 'CH' => 'Shveysariya',
+ 'CI' => 'Kot-d-Ivuar',
+ 'CK' => 'Kuk orollari',
+ 'CL' => 'Chili',
+ 'CM' => 'Kamerun',
+ 'CN' => 'Xitoy',
+ 'CO' => 'Kolumbiya',
+ 'CP' => 'Klipperton oroli',
+ 'CR' => 'Kosta-Rika',
+ 'CU' => 'Kuba',
+ 'CV' => 'Kabo-Verde',
+ 'CW' => 'Kurasao',
+ 'CX' => 'Rojdestvo oroli',
+ 'CY' => 'Kipr',
+ 'CZ' => 'Chexiya Respublikasi',
+ 'DE' => 'Germaniya',
+ 'DG' => 'Diyego Garsiya',
+ 'DJ' => 'Djibuti',
+ 'DK' => 'Daniya',
+ 'DM' => 'Dominika',
+ 'DO' => 'Dominikan Respublikasi',
+ 'DZ' => 'Jazoir',
+ 'EA' => 'Seyta va Melilla',
+ 'EC' => 'Ekvador',
+ 'EE' => 'Estoniya',
+ 'EG' => 'Misr',
+ 'EH' => 'Gʻarbiy Sahroi Kabir',
+ 'ER' => 'Eritreya',
+ 'ES' => 'Ispaniya',
+ 'ET' => 'Efiopiya',
+ 'EU' => 'Yevropa Ittifoqi',
+ 'FI' => 'Finlyandiya',
+ 'FJ' => 'Fiji orollari',
+ 'FK' => 'Folklend orollari',
+ 'FM' => 'Mikroneziya',
+ 'FO' => 'Farer orollari',
+ 'FR' => 'Fransiya',
+ 'GA' => 'Gabon',
+ 'GB' => 'B.Q.',
+ 'GD' => 'Grenada',
+ 'GE' => 'Gruziya',
+ 'GF' => 'Frantsuz Gvianasi',
+ 'GG' => 'Gernsi',
+ 'GH' => 'Gana',
+ 'GI' => 'Gibraltar',
+ 'GL' => 'Grenlandiya',
+ 'GM' => 'Gambiya',
+ 'GN' => 'Gvineya',
+ 'GP' => 'Gvadelupe',
+ 'GQ' => 'Ekvatorial Gvineya',
+ 'GR' => 'Gretsiya',
+ 'GS' => 'Janubiy Djordjiya va Janubiy Sendvich orollari',
+ 'GT' => 'Gvatemala',
+ 'GU' => 'Guam',
+ 'GW' => 'Gvineya-Bisau',
+ 'GY' => 'Gayana',
+ 'HK' => 'Gonkong',
+ 'HM' => 'Gerd oroli va MakDonald orollari',
+ 'HN' => 'Gonduras',
+ 'HR' => 'Xorvatiya',
+ 'HT' => 'Gaiti',
+ 'HU' => 'Vengriya',
+ 'IC' => 'Kanar orollari',
+ 'ID' => 'Indoneziya',
+ 'IE' => 'Irlandiya',
+ 'IL' => 'Isroil',
+ 'IM' => 'Men oroli',
+ 'IN' => 'Hindiston',
+ 'IO' => 'Britaniya Hind okeani hududi',
+ 'IQ' => 'Iroq',
+ 'IR' => 'Eron',
+ 'IS' => 'Islandiya',
+ 'IT' => 'Italiya',
+ 'JE' => 'Djersi',
+ 'JM' => 'Yamayka',
+ 'JO' => 'Iordaniya',
+ 'JP' => 'Yaponiya',
+ 'KE' => 'Keniya',
+ 'KG' => 'Qirgʻiziston',
+ 'KH' => 'Kambodja',
+ 'KI' => 'Kiribati',
+ 'KM' => 'Komor orollari',
+ 'KN' => 'Sent-Kits va Nevis',
+ 'KP' => 'Shimoliy Koreya',
+ 'KR' => 'Janubiy Koreya',
+ 'KW' => 'Quveyt',
+ 'KY' => 'Kayman orollari',
+ 'KZ' => 'Qozogʻiston',
+ 'LA' => 'Laos',
+ 'LB' => 'Livan',
+ 'LC' => 'Sent-Lyusiya',
+ 'LI' => 'Lixtenshteyn',
+ 'LK' => 'Shri-Lanka',
+ 'LR' => 'Liberiya',
+ 'LS' => 'Lesoto',
+ 'LT' => 'Litva',
+ 'LU' => 'Lyuksemburg',
+ 'LV' => 'Latviya',
+ 'LY' => 'Liviya',
+ 'MA' => 'Marokash',
+ 'MC' => 'Monako',
+ 'MD' => 'Moldova',
+ 'ME' => 'Chernogoriya',
+ 'MF' => 'Sent-Martin',
+ 'MG' => 'Madagaskar',
+ 'MH' => 'Marshal orollari',
+ 'MK' => 'Makedoniya',
+ 'ML' => 'Mali',
+ 'MM' => 'Myanma (Birma)',
+ 'MN' => 'Mo‘g‘uliston',
+ 'MO' => 'Makao',
+ 'MP' => 'Shimoliy Marianna orollari',
+ 'MQ' => 'Martinika',
+ 'MR' => 'Mavritaniya',
+ 'MS' => 'Montserrat',
+ 'MT' => 'Malta',
+ 'MU' => 'Mavrikiy',
+ 'MV' => 'Maldiv orollari',
+ 'MW' => 'Malavi',
+ 'MX' => 'Meksika',
+ 'MY' => 'Malayziya',
+ 'MZ' => 'Mozambik',
+ 'NA' => 'Namibiya',
+ 'NC' => 'Yangi Kaledoniya',
+ 'NE' => 'Niger',
+ 'NF' => 'Norfolk orollari',
+ 'NG' => 'Nigeriya',
+ 'NI' => 'Nikaragua',
+ 'NL' => 'Niderlandiya',
+ 'NO' => 'Norvegiya',
+ 'NP' => 'Nepal',
+ 'NR' => 'Nauru',
+ 'NU' => 'Niuye',
+ 'NZ' => 'Yangi Zelandiya',
+ 'OM' => 'Omon',
+ 'PA' => 'Panama',
+ 'PE' => 'Peru',
+ 'PF' => 'Frantsuz Polineziyasi',
+ 'PG' => 'Papua Yangi Gvineya',
+ 'PH' => 'Filippin',
+ 'PK' => 'Pokiston',
+ 'PL' => 'Polsha',
+ 'PM' => 'Sent-Pyer va Mikelon',
+ 'PN' => 'Pitkarin orollari',
+ 'PR' => 'Puerto-Riko',
+ 'PS' => 'Falastin',
+ 'PT' => 'Portugaliya',
+ 'PW' => 'Palau',
+ 'PY' => 'Paragvay',
+ 'QA' => 'Qatar',
+ 'QO' => 'Yondosh Okeaniya',
+ 'RE' => 'Reyunon',
+ 'RO' => 'Ruminiya',
+ 'RS' => 'Serbiya',
+ 'RU' => 'Rossiya',
+ 'RW' => 'Ruanda',
+ 'SA' => 'Saudiya Arabistoni',
+ 'SB' => 'Solomon orollari',
+ 'SC' => 'Seyshel orollari',
+ 'SD' => 'Sudan',
+ 'SE' => 'Shvetsiya',
+ 'SG' => 'Singapur',
+ 'SH' => 'Muqaddas Yelena orollari',
+ 'SI' => 'Sloveniya',
+ 'SJ' => 'Savlbard va Jan Mayen',
+ 'SK' => 'Slovakiya',
+ 'SL' => 'Syerra-Leone',
+ 'SM' => 'San-Marino',
+ 'SN' => 'Senegal',
+ 'SO' => 'Somali',
+ 'SR' => 'Surinam',
+ 'SS' => 'Janubiy Sudan',
+ 'ST' => 'San-Tome va Prinsipi',
+ 'SV' => 'Salvador',
+ 'SX' => 'Sint Martin',
+ 'SY' => 'Suriya',
+ 'SZ' => 'Svazilend',
+ 'TA' => 'Tristan de Kuna',
+ 'TC' => 'Turks va Kaykos orollari',
+ 'TD' => 'Chad',
+ 'TF' => 'Frantsiya janubiy xududlari',
+ 'TG' => 'Togo',
+ 'TH' => 'Tayland',
+ 'TJ' => 'Tojikiston',
+ 'TK' => 'Tokelau',
+ 'TL' => 'Sharqiy-Timor',
+ 'TM' => 'Turkmaniston',
+ 'TN' => 'Tunis',
+ 'TO' => 'Tonga',
+ 'TR' => 'Turkiya',
+ 'TT' => 'Trinidad va Tobago',
+ 'TV' => 'Tuvalu',
+ 'TW' => 'Tayvan',
+ 'TZ' => 'Tanzaniya',
+ 'UA' => 'Ukraina',
+ 'UG' => 'Uganda',
+ 'UM' => 'AQSH yondosh orollari',
+ 'US' => 'AQSH',
+ 'UY' => 'Urugvay',
+ 'UZ' => 'Oʻzbekiston',
+ 'VA' => 'Vatikan',
+ 'VC' => 'Sent-Vinsent va Grenadin',
+ 'VE' => 'Venesuela',
+ 'VG' => 'Britaniya Virdjiniya orollari',
+ 'VI' => 'AQSH Virdjiniya orollari',
+ 'VN' => 'Vyetnam',
+ 'VU' => 'Vanuatu',
+ 'WF' => 'Uellis va Futuna',
+ 'WS' => 'Samoa',
+ 'XK' => 'Kosovo',
+ 'YE' => 'Yaman',
+ 'YT' => 'Mayotta',
+ 'ZA' => 'Janubi-Afrika',
+ 'ZM' => 'Zambiya',
+ 'ZW' => 'Zimbabve',
+);
+
+$timeUnits = array(
+ 'day-future-one' => '{0} kundan soʻng',
+ 'day-future-other' => '{0} kundan soʻng',
+ 'day-one' => '{0} kun',
+ 'day-other' => '{0} kun',
+ 'day-past-one' => '{0} kun oldin',
+ 'day-past-other' => '{0} kun oldin',
+ 'day-short-future-one' => '{0} kundan soʻng',
+ 'day-short-future-other' => '{0} kundan soʻng',
+ 'day-short-past-one' => '{0} kun oldin',
+ 'day-short-past-other' => '{0} kun oldin',
+ 'hour-future-one' => '{0} soatdan soʻng',
+ 'hour-future-other' => '{0} soatdan soʻng',
+ 'hour-one' => '{0} soat',
+ 'hour-other' => '{0} soat',
+ 'hour-past-one' => '{0} soat oldin',
+ 'hour-past-other' => '{0} soat oldin',
+ 'microsecond-one' => '{0} mikrosoniya',
+ 'microsecond-other' => '{0} mikrosoniya',
+ 'millisecond-one' => '{0} millisoniya',
+ 'millisecond-other' => '{0} millisoniya',
+ 'minute-future-one' => '{0} daqiqadan soʻng',
+ 'minute-future-other' => '{0} daqiqadan soʻng',
+ 'minute-narrow-future-one' => '{0} daqiqadan soʻng',
+ 'minute-narrow-future-other' => '{0} daqiqadan soʻng',
+ 'minute-narrow-past-one' => '{0} daqiqa oldin',
+ 'minute-narrow-past-other' => '{0} daqiqa oldin',
+ 'minute-one' => '{0} daqiqa',
+ 'minute-other' => '{0} daqiqa',
+ 'minute-past-one' => '{0} daqiqa oldin',
+ 'minute-past-other' => '{0} daqiqa oldin',
+ 'month-future-one' => '{0} oydan soʻng',
+ 'month-future-other' => '{0} oydan soʻng',
+ 'month-one' => '{0} oy',
+ 'month-other' => '{0} oy',
+ 'month-past-one' => '{0} oy avval',
+ 'month-past-other' => '{0} oy avval',
+ 'nanosecond-one' => '{0} nanosoniya',
+ 'nanosecond-other' => '{0} nanosoniya',
+ 'quarter-future-one' => '{0} chorakda',
+ 'quarter-future-other' => '{0} chorakda',
+ 'quarter-narrow-future-one' => '{0} chorakda',
+ 'quarter-narrow-future-other' => '{0} chorakda',
+ 'quarter-narrow-past-one' => '{0} chorak avval',
+ 'quarter-narrow-past-other' => '{0} chorak avval',
+ 'quarter-past-one' => '{0} chorak avval',
+ 'quarter-past-other' => '{0} chorak avval',
+ 'second-future-one' => '{0} soniyadan soʻng',
+ 'second-future-other' => '{0} soniyadan soʻng',
+ 'second-one' => '{0} soniya',
+ 'second-other' => '{0} soniya',
+ 'second-past-one' => '{0} soniya oldin',
+ 'second-past-other' => '{0} soniya oldin',
+ 'week-future-one' => '{0} haftadan soʻng',
+ 'week-future-other' => '{0} haftadan soʻng',
+ 'week-one' => '{0} hafta',
+ 'week-other' => '{0} hafta',
+ 'week-past-one' => '{0} hafta oldin',
+ 'week-past-other' => '{0} hafta oldin',
+ 'year-future-one' => '{0} yildan soʻng',
+ 'year-future-other' => '{0} yildan soʻng',
+ 'year-one' => '{0} yil',
+ 'year-other' => '{0} yil',
+ 'year-past-one' => '{0} yil avval',
+ 'year-past-other' => '{0} yil avval',
+ 'year-short-future-one' => '{0} yildan soʻng',
+ 'year-short-future-other' => '{0} yildan soʻng',
+ 'year-short-past-one' => '{0} yil avval',
+ 'year-short-past-other' => '{0} yil avval',
+);
diff --git a/MLEB/cldr/CldrNames/CldrNamesVe.php b/MLEB/cldr/CldrNames/CldrNamesVe.php
new file mode 100644
index 00000000..edd86fbb
--- /dev/null
+++ b/MLEB/cldr/CldrNames/CldrNamesVe.php
@@ -0,0 +1,5 @@
+<?php
+
+$languageNames = array(
+ 've' => 'Tshivenḓa',
+);
diff --git a/MLEB/cldr/CldrNames/CldrNamesVi.php b/MLEB/cldr/CldrNames/CldrNamesVi.php
new file mode 100644
index 00000000..5945790b
--- /dev/null
+++ b/MLEB/cldr/CldrNames/CldrNamesVi.php
@@ -0,0 +1,1417 @@
+<?php
+
+$languageNames = array(
+ 'aa' => 'Tiếng Afar',
+ 'ab' => 'Tiếng Abkhazia',
+ 'ace' => 'Tiếng Achinese',
+ 'ach' => 'Tiếng Acoli',
+ 'ada' => 'Tiếng Adangme',
+ 'ady' => 'Tiếng Adyghe',
+ 'ae' => 'Tiếng Avestan',
+ 'af' => 'Tiếng Nam Phi',
+ 'afh' => 'Tiếng Afrihili',
+ 'agq' => 'Tiếng Aghem',
+ 'ain' => 'Tiếng Ainu',
+ 'ak' => 'Tiếng Akan',
+ 'akk' => 'Tiếng Akkadia',
+ 'ale' => 'Tiếng Aleut',
+ 'alt' => 'Tiếng Altai Miền Nam',
+ 'am' => 'Tiếng Amharic',
+ 'an' => 'Tiếng Aragon',
+ 'ang' => 'Tiếng Anh cổ',
+ 'anp' => 'Tiếng Angika',
+ 'ar' => 'Tiếng Ả Rập',
+ 'ar-001' => 'Tiếng Ả Rập Hiện đại',
+ 'arc' => 'Tiếng Aramaic',
+ 'arn' => 'Tiếng Araucanian',
+ 'arp' => 'Tiếng Arapaho',
+ 'arw' => 'Tiếng Arawak',
+ 'as' => 'Tiếng Assam',
+ 'asa' => 'Tiếng Asu',
+ 'ast' => 'Tiếng Asturias',
+ 'av' => 'Tiếng Avaric',
+ 'awa' => 'Tiếng Awadhi',
+ 'ay' => 'Tiếng Aymara',
+ 'az' => 'Tiếng Azerbaijan',
+ 'ba' => 'Tiếng Bashkir',
+ 'bal' => 'Tiếng Baluchi',
+ 'ban' => 'Tiếng Bali',
+ 'bas' => 'Tiếng Basaa',
+ 'bax' => 'Tiếng Bamun',
+ 'bbj' => 'Tiếng Ghomala',
+ 'be' => 'Tiếng Belarus',
+ 'bej' => 'Tiếng Beja',
+ 'bem' => 'Tiếng Bemba',
+ 'bez' => 'Tiếng Bena',
+ 'bfd' => 'Tiếng Bafut',
+ 'bg' => 'Tiếng Bulgaria',
+ 'bho' => 'Tiếng Bhojpuri',
+ 'bi' => 'Tiếng Bislama',
+ 'bik' => 'Tiếng Bikol',
+ 'bin' => 'Tiếng Bini',
+ 'bkm' => 'Tiếng Kom',
+ 'bla' => 'Tiếng Siksika',
+ 'bm' => 'Tiếng Bambara',
+ 'bn' => 'Tiếng Bengali',
+ 'bo' => 'Tiếng Tây Tạng',
+ 'br' => 'Tiếng Breton',
+ 'bra' => 'Tiếng Braj',
+ 'brx' => 'Tiếng Bodo',
+ 'bs' => 'Tiếng Nam Tư',
+ 'bss' => 'Tiếng Akoose',
+ 'bua' => 'Tiếng Buriat',
+ 'bug' => 'Tiếng Bugin',
+ 'bum' => 'Tiếng Bulu',
+ 'byn' => 'Tiếng Blin',
+ 'byv' => 'Tiếng Medumba',
+ 'ca' => 'Tiếng Catalan',
+ 'cad' => 'Tiếng Caddo',
+ 'car' => 'Tiếng Carib',
+ 'cay' => 'Tiếng Cayuga',
+ 'cch' => 'Tiếng Atsam',
+ 'ce' => 'Tiếng Chechen',
+ 'ceb' => 'Tiếng Cebuano',
+ 'cgg' => 'Tiếng Chiga',
+ 'ch' => 'Tiếng Chamorro',
+ 'chb' => 'Tiếng Chibcha',
+ 'chg' => 'Tiếng Chagatai',
+ 'chk' => 'Tiếng Chuuk',
+ 'chm' => 'Tiếng Mari',
+ 'chn' => 'Biệt ngữ Chinook',
+ 'cho' => 'Tiếng Choctaw',
+ 'chp' => 'Tiếng Chipewyan',
+ 'chr' => 'Tiếng Cherokee',
+ 'chy' => 'Tiếng Cheyenne',
+ 'ckb' => 'Tiếng Kurd Sorani',
+ 'co' => 'Tiếng Corsica',
+ 'cop' => 'Tiếng Coptic',
+ 'cr' => 'Tiếng Cree',
+ 'crh' => 'Tiếng Thổ Nhĩ Kỳ Crimean',
+ 'cs' => 'Tiếng Séc',
+ 'csb' => 'Tiếng Kashubia',
+ 'cu' => 'Tiếng Slavơ Nhà thờ',
+ 'cv' => 'Tiếng Chuvash',
+ 'cy' => 'Tiếng Wales',
+ 'da' => 'Tiếng Đan Mạch',
+ 'dak' => 'Tiếng Dakota',
+ 'dar' => 'Tiếng Dargwa',
+ 'dav' => 'Tiếng Taita',
+ 'de' => 'Tiếng Đức',
+ 'de-ch' => 'Tiếng Thượng Giéc-man (Thụy Sĩ)',
+ 'del' => 'Tiếng Delaware',
+ 'den' => 'Tiếng Slave',
+ 'dgr' => 'Tiếng Dogrib',
+ 'din' => 'Tiếng Dinka',
+ 'dje' => 'Tiếng Zarma',
+ 'doi' => 'Tiếng Dogri',
+ 'dsb' => 'Tiếng Hạ Sorbia',
+ 'dua' => 'Tiếng Duala',
+ 'dum' => 'Tiếng Hà Lan Trung cổ',
+ 'dv' => 'Tiếng Divehi',
+ 'dyo' => 'Tiếng Jola-Fonyi',
+ 'dyu' => 'Tiếng Dyula',
+ 'dz' => 'Tiếng Dzongkha',
+ 'dzg' => 'Tiếng Dazaga',
+ 'ebu' => 'Tiếng Embu',
+ 'ee' => 'Tiếng Ewe',
+ 'efi' => 'Tiếng Efik',
+ 'egy' => 'Tiếng Ai Cập cổ',
+ 'eka' => 'Tiếng Ekajuk',
+ 'el' => 'Tiếng Hy Lạp',
+ 'elx' => 'Tiếng Elamite',
+ 'en' => 'Tiếng Anh',
+ 'en-gb' => 'Tiếng Anh (Anh)',
+ 'en-us' => 'Tiếng Anh (Mỹ)',
+ 'enm' => 'Tiếng Anh Trung cổ',
+ 'eo' => 'Tiếng Quốc Tế Ngữ',
+ 'es' => 'Tiếng Tây Ban Nha',
+ 'es-419' => 'Tiếng Tây Ban Nha (Mỹ La tinh)',
+ 'et' => 'Tiếng Estonia',
+ 'eu' => 'Tiếng Basque',
+ 'ewo' => 'Tiếng Ewondo',
+ 'fa' => 'Tiếng Ba Tư',
+ 'fan' => 'Tiếng Fang',
+ 'fat' => 'Tiếng Fanti',
+ 'ff' => 'Tiếng Fulah',
+ 'fi' => 'Tiếng Phần Lan',
+ 'fil' => 'Tiếng Philipin',
+ 'fj' => 'Tiếng Fiji',
+ 'fo' => 'Tiếng Faore',
+ 'fon' => 'Tiếng Fon',
+ 'fr' => 'Tiếng Pháp',
+ 'frm' => 'Tiếng Pháp Trung cổ',
+ 'fro' => 'Tiếng Pháp cổ',
+ 'frr' => 'Tiếng Frisian Miền Bắc',
+ 'frs' => 'Tiếng Frisian Miền Đông',
+ 'fur' => 'Tiếng Friulian',
+ 'fy' => 'Tiếng Frisia',
+ 'ga' => 'Tiếng Ai-len',
+ 'gaa' => 'Tiếng Ga',
+ 'gag' => 'Tiếng Gagauz',
+ 'gay' => 'Tiếng Gayo',
+ 'gba' => 'Tiếng Gbaya',
+ 'gd' => 'Tiếng Xentơ (Xcốt len)',
+ 'gez' => 'Tiếng Geez',
+ 'gil' => 'Tiếng Gilbert',
+ 'gl' => 'Tiếng Galician',
+ 'gmh' => 'Tiếng Thượng Giéc-man Trung cổ',
+ 'gn' => 'Tiếng Guarani',
+ 'goh' => 'Tiếng Thượng Giéc-man cổ',
+ 'gon' => 'Tiếng Gondi',
+ 'gor' => 'Tiếng Gorontalo',
+ 'got' => 'Tiếng Gô-tích',
+ 'grb' => 'Tiếng Grebo',
+ 'grc' => 'Tiếng Hy Lạp cổ',
+ 'gsw' => 'Tiếng Đức (Thụy Sĩ)',
+ 'gu' => 'Tiếng Gujarati',
+ 'guz' => 'Tiếng Gusii',
+ 'gv' => 'Tiếng Manx',
+ 'gwi' => 'Tiếng Gwichʼin',
+ 'ha' => 'Tiếng Hausa',
+ 'hai' => 'Tiếng Haida',
+ 'haw' => 'Tiếng Hawaii',
+ 'he' => 'Tiếng Do Thái',
+ 'hi' => 'Tiếng Hindi',
+ 'hil' => 'Tiếng Hiligaynon',
+ 'hit' => 'Tiếng Hittite',
+ 'hmn' => 'Tiếng Hmông',
+ 'ho' => 'Tiếng Hiri Motu',
+ 'hr' => 'Tiếng Croatia',
+ 'hsb' => 'Tiếng Thượng Sorbia',
+ 'ht' => 'Tiếng Haiti',
+ 'hu' => 'Tiếng Hungary',
+ 'hup' => 'Tiếng Hupa',
+ 'hy' => 'Tiếng Armenia',
+ 'hz' => 'Tiếng Herero',
+ 'ia' => 'Tiếng Khoa Học Quốc Tế',
+ 'iba' => 'Tiếng Iban',
+ 'ibb' => 'Tiếng Ibibio',
+ 'id' => 'Tiếng Indonesia',
+ 'ie' => 'Tiếng Interlingue',
+ 'ig' => 'Tiếng Igbo',
+ 'ii' => 'Tiếng Di Tứ Xuyên',
+ 'ik' => 'Tiếng Inupiaq',
+ 'ilo' => 'Tiếng Iloko',
+ 'inh' => 'Tiếng Ingush',
+ 'io' => 'Tiếng Ido',
+ 'is' => 'Tiếng Iceland',
+ 'it' => 'Tiếng Ý',
+ 'iu' => 'Tiếng Inuktitut',
+ 'ja' => 'Tiếng Nhật',
+ 'jbo' => 'Tiếng Lojban',
+ 'jgo' => 'Tiếng Ngomba',
+ 'jmc' => 'Tiếng Machame',
+ 'jpr' => 'Tiếng Judeo-Ba Tư',
+ 'jrb' => 'Tiếng Judeo-Ả Rập',
+ 'jv' => 'Tiếng Java',
+ 'ka' => 'Tiếng Gruzia',
+ 'kaa' => 'Tiếng Kara-Kalpak',
+ 'kab' => 'Tiếng Kabyle',
+ 'kac' => 'Tiếng Kachin',
+ 'kaj' => 'Tiếng Jju',
+ 'kam' => 'Tiếng Kamba',
+ 'kaw' => 'Tiếng Kawi',
+ 'kbd' => 'Tiếng Kabardian',
+ 'kbl' => 'Tiếng Kanembu',
+ 'kcg' => 'Tiếng Tyap',
+ 'kde' => 'Tiếng Makonde',
+ 'kea' => 'Tiếng Kabuverdianu',
+ 'kfo' => 'Tiếng Koro',
+ 'kg' => 'Tiếng Kongo',
+ 'kha' => 'Tiếng Khasi',
+ 'kho' => 'Tiếng Khotan',
+ 'khq' => 'Tiếng Koyra Chiini',
+ 'ki' => 'Tiếng Kikuyu',
+ 'kj' => 'Tiếng Kuanyama',
+ 'kk' => 'Tiếng Kazakh',
+ 'kkj' => 'Tiếng Kako',
+ 'kl' => 'Tiếng Kalaallisut',
+ 'kln' => 'Tiếng Kalenjin',
+ 'km' => 'Tiếng Khơ-me',
+ 'kmb' => 'Tiếng Kimbundu',
+ 'kn' => 'Tiếng Kannada',
+ 'ko' => 'Tiếng Hàn',
+ 'koi' => 'Tiếng Komi-Permyak',
+ 'kok' => 'Tiếng Konkani',
+ 'kos' => 'Tiếng Kosrae',
+ 'kpe' => 'Tiếng Kpelle',
+ 'kr' => 'Tiếng Kanuri',
+ 'krc' => 'Tiếng Karachay-Balkar',
+ 'krl' => 'Tiếng Karelian',
+ 'kru' => 'Tiếng Kurukh',
+ 'ks' => 'Tiếng Kashmiri',
+ 'ksb' => 'Tiếng Shambala',
+ 'ksf' => 'Tiếng Bafia',
+ 'ksh' => 'Tiếng Cologne',
+ 'ku' => 'Tiếng Kurd',
+ 'kum' => 'Tiếng Kumyk',
+ 'kut' => 'Tiếng Kutenai',
+ 'kv' => 'Tiếng Komi',
+ 'kw' => 'Tiếng Cornwall',
+ 'ky' => 'Tiếng Kyrgyz',
+ 'la' => 'Tiếng La-tinh',
+ 'lad' => 'Tiếng Ladino',
+ 'lag' => 'Tiếng Langi',
+ 'lah' => 'Tiếng Lahnda',
+ 'lam' => 'Tiếng Lamba',
+ 'lb' => 'Tiếng Luxembourg',
+ 'lez' => 'Tiếng Lezghian',
+ 'lg' => 'Tiếng Ganda',
+ 'li' => 'Tiếng Limburg',
+ 'lkt' => 'Tiếng Lakota',
+ 'ln' => 'Tiếng Lingala',
+ 'lo' => 'Tiếng Lào',
+ 'lol' => 'Tiếng Mongo',
+ 'loz' => 'Tiếng Lozi',
+ 'lt' => 'Tiếng Lít-va',
+ 'lu' => 'Tiếng Luba-Katanga',
+ 'lua' => 'Tiếng Luba-Lulua',
+ 'lui' => 'Tiếng Luiseno',
+ 'lun' => 'Tiếng Lunda',
+ 'luo' => 'Tiếng Luo',
+ 'lus' => 'Tiếng Lushai',
+ 'luy' => 'Tiếng Luyia',
+ 'lv' => 'Tiếng Latvia',
+ 'mad' => 'Tiếng Madura',
+ 'maf' => 'Tiếng Mafa',
+ 'mag' => 'Tiếng Magahi',
+ 'mai' => 'Tiếng Maithili',
+ 'mak' => 'Tiếng Makasar',
+ 'man' => 'Tiếng Mandingo',
+ 'mas' => 'Tiếng Masai',
+ 'mde' => 'Tiếng Maba',
+ 'mdf' => 'Tiếng Moksha',
+ 'mdr' => 'Tiếng Mandar',
+ 'men' => 'Tiếng Mende',
+ 'mer' => 'Tiếng Meru',
+ 'mfe' => 'Tiếng Morisyen',
+ 'mg' => 'Tiếng Malagasy',
+ 'mga' => 'Tiếng Ai-len Trung cổ',
+ 'mgh' => 'Tiếng Makhuwa-Meetto',
+ 'mgo' => 'Tiếng Meta’',
+ 'mh' => 'Tiếng Marshall',
+ 'mi' => 'Tiếng Maori',
+ 'mic' => 'Tiếng Micmac',
+ 'min' => 'Tiếng Minangkabau',
+ 'mk' => 'Tiếng Macedonia',
+ 'ml' => 'Tiếng Malayalam',
+ 'mn' => 'Tiếng Mông Cổ',
+ 'mnc' => 'Tiếng Manchu',
+ 'mni' => 'Tiếng Manipuri',
+ 'moh' => 'Tiếng Mohawk',
+ 'mos' => 'Tiếng Mossi',
+ 'mr' => 'Tiếng Marathi',
+ 'ms' => 'Tiếng Malaysia',
+ 'mt' => 'Tiếng Malt',
+ 'mua' => 'Tiếng Mundang',
+ 'mul' => 'Nhiều Ngôn ngữ',
+ 'mus' => 'Tiếng Creek',
+ 'mwl' => 'Tiếng Miranda',
+ 'mwr' => 'Tiếng Marwari',
+ 'my' => 'Tiếng Miến Điện',
+ 'mye' => 'Tiếng Myene',
+ 'myv' => 'Tiếng Erzya',
+ 'na' => 'Tiếng Nauru',
+ 'nap' => 'Tiếng Napoli',
+ 'naq' => 'Tiếng Nama',
+ 'nb' => 'Tiếng Na Uy (Bokmål)',
+ 'nd' => 'Tiếng Ndebele Miền Bắc',
+ 'nds' => 'Tiếng Hạ Giéc-man',
+ 'ne' => 'Tiếng Nepal',
+ 'new' => 'Tiếng Newari',
+ 'ng' => 'Tiếng Ndonga',
+ 'nia' => 'Tiếng Nias',
+ 'niu' => 'Tiếng Niuean',
+ 'nl' => 'Tiếng Hà Lan',
+ 'nl-be' => 'Tiếng Flemish',
+ 'nmg' => 'Tiếng Kwasio',
+ 'nn' => 'Tiếng Na Uy (Nynorsk)',
+ 'nnh' => 'Tiếng Ngiemboon',
+ 'no' => 'Tiếng Na Uy',
+ 'nog' => 'Tiếng Nogai',
+ 'non' => 'Tiếng Na Uy cổ',
+ 'nqo' => 'Tiếng N’Ko',
+ 'nr' => 'Tiếng Ndebele Miền Nam',
+ 'nso' => 'Bắc Sotho',
+ 'nus' => 'Tiếng Nuer',
+ 'nv' => 'Tiếng Navajo',
+ 'nwc' => 'Tiếng Newari Cổ điển',
+ 'ny' => 'Tiếng Nyanja',
+ 'nym' => 'Tiếng Nyamwezi',
+ 'nyn' => 'Tiếng Nyankole',
+ 'nyo' => 'Tiếng Nyoro',
+ 'nzi' => 'Tiếng Nzima',
+ 'oc' => 'Tiếng Occitan',
+ 'oj' => 'Tiếng Ojibwa',
+ 'om' => 'Tiếng Oromo',
+ 'or' => 'Tiếng Oriya',
+ 'os' => 'Tiếng Ossetic',
+ 'osa' => 'Tiếng Osage',
+ 'ota' => 'Tiếng Thổ Nhĩ Kỳ Ottoman',
+ 'pa' => 'Tiếng Punjab',
+ 'pag' => 'Tiếng Pangasinan',
+ 'pal' => 'Tiếng Pahlavi',
+ 'pam' => 'Tiếng Pampanga',
+ 'pap' => 'Tiếng Papiamento',
+ 'pau' => 'Tiếng Palauan',
+ 'peo' => 'Tiếng Ba Tư cổ',
+ 'phn' => 'Tiếng Phoenicia',
+ 'pi' => 'Tiếng Pali',
+ 'pl' => 'Tiếng Ba Lan',
+ 'pon' => 'Tiếng Pohnpeian',
+ 'pro' => 'Tiếng Provençal cổ',
+ 'ps' => 'Tiếng Pashto',
+ 'pt' => 'Tiếng Bồ Đào Nha',
+ 'pt-br' => 'Tiếng Bồ Đào Nha (Braxin)',
+ 'qu' => 'Tiếng Quechua',
+ 'quc' => 'Tiếng Kʼicheʼ',
+ 'raj' => 'Tiếng Rajasthani',
+ 'rap' => 'Tiếng Rapanui',
+ 'rar' => 'Tiếng Rarotongan',
+ 'rm' => 'Tiếng Romansh',
+ 'rn' => 'Tiếng Rundi',
+ 'ro' => 'Tiếng Rumani',
+ 'ro-md' => 'Tiếng Moldova',
+ 'rof' => 'Tiếng Rombo',
+ 'rom' => 'Tiếng Romany',
+ 'ru' => 'Tiếng Nga',
+ 'rup' => 'Tiếng Aromania',
+ 'rw' => 'Tiếng Kinyarwanda',
+ 'rwk' => 'Tiếng Rwa',
+ 'sa' => 'Tiếng Phạn',
+ 'sad' => 'Tiếng Sandawe',
+ 'sah' => 'Tiếng Sakha',
+ 'sam' => 'Tiếng Samaritan Aramaic',
+ 'saq' => 'Tiếng Samburu',
+ 'sas' => 'Tiếng Sasak',
+ 'sat' => 'Tiếng Santali',
+ 'sba' => 'Tiếng Ngambay',
+ 'sbp' => 'Tiếng Sangu',
+ 'sc' => 'Tiếng Sardinia',
+ 'scn' => 'Tiếng Sicilia',
+ 'sco' => 'Tiếng Scots',
+ 'sd' => 'Tiếng Sindhi',
+ 'se' => 'Tiếng Sami Miền Bắc',
+ 'see' => 'Tiếng Seneca',
+ 'seh' => 'Tiếng Sena',
+ 'sel' => 'Tiếng Selkup',
+ 'ses' => 'Tiếng Koyraboro Senni',
+ 'sg' => 'Tiếng Sango',
+ 'sga' => 'Tiếng Ai-len cổ',
+ 'sh' => 'Tiếng Xéc bi - Croatia',
+ 'shi' => 'Tiếng Tachelhit',
+ 'shn' => 'Tiếng Shan',
+ 'shu' => 'Tiếng Ả-Rập Chad',
+ 'si' => 'Tiếng Sinhala',
+ 'sid' => 'Tiếng Sidamo',
+ 'sk' => 'Tiếng Slovak',
+ 'sl' => 'Tiếng Slovenia',
+ 'sm' => 'Tiếng Samoa',
+ 'sma' => 'TIếng Sami Miền Nam',
+ 'smj' => 'Tiếng Lule Sami',
+ 'smn' => 'Tiếng Inari Sami',
+ 'sms' => 'Tiếng Skolt Sami',
+ 'sn' => 'Tiếng Shona',
+ 'snk' => 'Tiếng Soninke',
+ 'so' => 'Tiếng Somali',
+ 'sog' => 'Tiếng Sogdien',
+ 'sq' => 'Tiếng An-ba-ni',
+ 'sr' => 'Tiếng Serbia',
+ 'srn' => 'Tiếng Sranan Tongo',
+ 'srr' => 'Tiếng Serer',
+ 'ss' => 'Tiếng Swati',
+ 'ssy' => 'Tiếng Saho',
+ 'st' => 'Tiếng Sesotho',
+ 'su' => 'Tiếng Sudan',
+ 'suk' => 'Tiếng Sukuma',
+ 'sus' => 'Tiếng Susu',
+ 'sux' => 'Tiếng Sumeria',
+ 'sv' => 'Tiếng Thụy Điển',
+ 'sw' => 'Tiếng Swahili',
+ 'swb' => 'Tiếng Cômo',
+ 'swc' => 'Tiếng Swahili Congo',
+ 'syc' => 'Tiếng Syria Cổ điển',
+ 'syr' => 'Tiếng Syriac',
+ 'ta' => 'Tiếng Tamil',
+ 'te' => 'Tiếng Telugu',
+ 'tem' => 'Tiếng Timne',
+ 'teo' => 'Tiếng Teso',
+ 'ter' => 'Tiếng Tereno',
+ 'tet' => 'Tetum',
+ 'tg' => 'Tiếng Tajik',
+ 'th' => 'Tiếng Thái',
+ 'ti' => 'Tiếng Tigrigya',
+ 'tig' => 'Tiếng Tigre',
+ 'tiv' => 'Tiếng Tiv',
+ 'tk' => 'Tiếng Turk',
+ 'tkl' => 'Tiếng Tokelau',
+ 'tl' => 'Tiếng Tagalog',
+ 'tlh' => 'Tiếng Klingon',
+ 'tli' => 'Tiếng Tlingit',
+ 'tmh' => 'Tiếng Tamashek',
+ 'tn' => 'Tiếng Tswana',
+ 'to' => 'Tiếng Tonga',
+ 'tog' => 'Tiếng Nyasa Tonga',
+ 'tpi' => 'Tiếng Tok Pisin',
+ 'tr' => 'Tiếng Thổ Nhĩ Kỳ',
+ 'trv' => 'Tiếng Taroko',
+ 'ts' => 'Tiếng Tsonga',
+ 'tsi' => 'Tiếng Tsimshian',
+ 'tt' => 'Tiếng Tatar',
+ 'tum' => 'Tiếng Tumbuka',
+ 'tvl' => 'Tiếng Tuvalu',
+ 'tw' => 'Tiếng Twi',
+ 'twq' => 'Tiếng Tasawaq',
+ 'ty' => 'Tiếng Tahiti',
+ 'tyv' => 'Tiếng Tuvinian',
+ 'tzm' => 'Tiếng Tamazight Miền Trung Ma-rốc',
+ 'udm' => 'Tiếng Udmurt',
+ 'ug' => 'Tiếng Uyghur',
+ 'uga' => 'Tiếng Ugaritic',
+ 'uk' => 'Tiếng Ucraina',
+ 'umb' => 'Tiếng Umbundu',
+ 'und' => 'Ngôn ngữ không xác định',
+ 'ur' => 'Tiếng Uđu',
+ 'uz' => 'Tiếng Uzbek',
+ 'vai' => 'Tiếng Vai',
+ 've' => 'Tiếng Venda',
+ 'vi' => 'Tiếng Việt',
+ 'vo' => 'Tiếng Volapük',
+ 'vot' => 'Tiếng Votic',
+ 'vun' => 'Tiếng Vunjo',
+ 'wa' => 'Tiếng Walloon',
+ 'wae' => 'Tiếng Walser',
+ 'wal' => 'Tiếng Walamo',
+ 'war' => 'Tiếng Waray',
+ 'was' => 'Tiếng Washo',
+ 'wo' => 'Tiếng Wolof',
+ 'xal' => 'Tiếng Kalmyk',
+ 'xh' => 'Tiếng Xhosa',
+ 'xog' => 'Tiếng Soga',
+ 'yao' => 'Tiếng Yao',
+ 'yap' => 'Tiếng Yap',
+ 'yav' => 'Tiếng Yangben',
+ 'ybb' => 'Tiếng Yemba',
+ 'yi' => 'Tiếng Y-đit',
+ 'yo' => 'Tiếng Yoruba',
+ 'yue' => 'Tiếng Quảng Đông',
+ 'za' => 'Tiếng Zhuang',
+ 'zap' => 'Tiếng Zapotec',
+ 'zbl' => 'Ký hiệu Blissymbols',
+ 'zen' => 'Tiếng Zenaga',
+ 'zgh' => 'Tiếng Tamazight Chuẩn của Ma-rốc',
+ 'zh' => 'Tiếng Trung',
+ 'zu' => 'Tiếng Zulu',
+ 'zun' => 'Tiếng Zuni',
+ 'zxx' => 'Không có nội dung ngôn ngữ',
+ 'zza' => 'Tiếng Zaza',
+);
+
+$currencyNames = array(
+ 'ADP' => 'Đồng Peseta của Andora',
+ 'AED' => 'Dirham UAE',
+ 'AFA' => 'Đồng Afghani của Afghanistan (1927–2002)',
+ 'AFN' => 'Afghani Afghanistan',
+ 'ALL' => 'Lek Albania',
+ 'AMD' => 'Dram Armenia',
+ 'ANG' => 'Guilder Tây Ấn Hà Lan',
+ 'AOA' => 'Kwanza Angola',
+ 'AOK' => 'Đồng Kwanza của Angola (1977–1991)',
+ 'AON' => 'Đồng Kwanza Mới của Angola (1990–2000)',
+ 'AOR' => 'Đồng Kwanza Điều chỉnh lại của Angola (1995–1999)',
+ 'ARA' => 'Đồng Austral của Argentina',
+ 'ARL' => 'Đồng Peso Ley của Argentina (1970–1983)',
+ 'ARM' => 'Đồng Peso Argentina (1881–1970)',
+ 'ARP' => 'Đồng Peso Argentina (1983–1985)',
+ 'ARS' => 'Peso Argentina',
+ 'ATS' => 'Đồng Schiling Áo',
+ 'AUD' => 'Đô la Australia',
+ 'AWG' => 'Florin Aruba',
+ 'AZM' => 'Đồng Manat của Azerbaijan (1993–2006)',
+ 'AZN' => 'Manat Azerbaijan',
+ 'BAD' => 'Đồng Dinar của Bosnia-Herzegovina (1992–1994)',
+ 'BAM' => 'Mark Bosnia-Herzegovina có thể chuyển đổi',
+ 'BAN' => 'Đồng Dinar Mới của Bosnia-Herzegovina (1994–1997)',
+ 'BBD' => 'Đô la Barbados',
+ 'BDT' => 'Taka Bangladesh',
+ 'BEC' => 'Đồng Franc Bỉ (có thể chuyển đổi)',
+ 'BEF' => 'Đồng Franc Bỉ',
+ 'BEL' => 'Đồng Franc Bỉ (tài chính)',
+ 'BGL' => 'Đồng Lev Xu của Bun-ga-ri',
+ 'BGM' => 'Đồng Lev Xã hội chủ nghĩa của Bun-ga-ri',
+ 'BGN' => 'Lev Bulgaria',
+ 'BGO' => 'Đồng Lev của Bun-ga-ri (1879–1952)',
+ 'BHD' => 'Dinar Bahrain',
+ 'BIF' => 'Franc Burundi',
+ 'BMD' => 'Đô la Bermuda',
+ 'BND' => 'Đô la Brunei',
+ 'BOB' => 'Boliviano Bolivia',
+ 'BOL' => 'Đồng Boliviano của Bolivia (1863–1963)',
+ 'BOP' => 'Đồng Peso Bolivia',
+ 'BOV' => 'Đồng Mvdol Bolivia',
+ 'BRB' => 'Đồng Cruzerio Mới của Braxin (1967–1986)',
+ 'BRC' => 'Đồng Cruzado của Braxin (1986–1989)',
+ 'BRE' => 'Đồng Cruzerio của Braxin (1990–1993)',
+ 'BRL' => 'Real Braxin',
+ 'BRN' => 'Đồng Cruzado Mới của Braxin (1989–1990)',
+ 'BRR' => 'Đồng Cruzeiro của Braxin (1993–1994)',
+ 'BRZ' => 'Đồng Cruzeiro của Braxin (1942–1967)',
+ 'BSD' => 'Đô la Bahamas',
+ 'BTN' => 'Ngultrum Bhutan',
+ 'BUK' => 'Đồng Kyat Miến Điện',
+ 'BWP' => 'Pula Botswana',
+ 'BYB' => 'Đồng Rúp Mới của Belarus (1994–1999)',
+ 'BYR' => 'Rúp Belarus',
+ 'BZD' => 'Đô la Belize',
+ 'CAD' => 'Đô la Canada',
+ 'CDF' => 'Franc Congo',
+ 'CHE' => 'Đồng Euro WIR',
+ 'CHF' => 'Franc Thụy sĩ',
+ 'CHW' => 'Đồng France WIR',
+ 'CLE' => 'Đồng Escudo của Chile',
+ 'CLF' => 'Đơn vị Kế toán của Chile (UF)',
+ 'CLP' => 'Peso Chile',
+ 'CNY' => 'Nhân dân tệ',
+ 'COP' => 'Peso Colombia',
+ 'COU' => 'Đơn vị Giá trị Thực của Colombia',
+ 'CRC' => 'Colón Costa Rica',
+ 'CSD' => 'Đồng Dinar của Serbia (2002–2006)',
+ 'CSK' => 'Đồng Koruna Xu của Czechoslovakia',
+ 'CUC' => 'Peso Cuba có thể chuyển đổi',
+ 'CUP' => 'Peso Cuba',
+ 'CVE' => 'Escudo Cape Verde',
+ 'CYP' => 'Đồng Bảng Síp',
+ 'CZK' => 'Koruna Cộng hòa Séc',
+ 'DDM' => 'Đồng Mark Đông Đức',
+ 'DEM' => 'Đồng Mark Đức',
+ 'DJF' => 'Franc Djibouti',
+ 'DKK' => 'Krone Đan Mạch',
+ 'DOP' => 'Peso Dominica',
+ 'DZD' => 'Dinar Algeria',
+ 'ECS' => 'Đồng Scure Ecuador',
+ 'ECV' => 'Đơn vị Giá trị Không đổi của Ecuador',
+ 'EEK' => 'Crun Extônia',
+ 'EGP' => 'Bảng Ai Cập',
+ 'ERN' => 'Nakfa Eritrea',
+ 'ESA' => 'Đồng Peseta Tây Ban Nha (Tài khoản)',
+ 'ESB' => 'Đồng Peseta Tây Ban Nha (tài khoản có thể chuyển đổi)',
+ 'ESP' => 'Đồng Peseta Tây Ban Nha',
+ 'ETB' => 'Birr Ethiopia',
+ 'EUR' => 'Euro',
+ 'FIM' => 'Đồng Markka Phần Lan',
+ 'FJD' => 'Đô la Fiji',
+ 'FKP' => 'Bảng Quần đảo Falkland',
+ 'FRF' => 'Franc Pháp',
+ 'GBP' => 'Bảng Anh',
+ 'GEK' => 'Đồng Kupon Larit của Georgia',
+ 'GEL' => 'Lari Gruzia',
+ 'GHC' => 'Cedi Ghana (1979–2007)',
+ 'GHS' => 'Cedi Ghana',
+ 'GIP' => 'Bảng Gibraltar',
+ 'GMD' => 'Dalasi Gambia',
+ 'GNF' => 'Franc Guinea',
+ 'GNS' => 'Syli Guinea',
+ 'GQE' => 'Đồng Ekwele của Guinea Xích Đạo',
+ 'GRD' => 'Drachma Hy Lạp',
+ 'GTQ' => 'Quetzal Guatemala',
+ 'GWE' => 'Đồng Guinea Escudo Bồ Đào Nha',
+ 'GWP' => 'Peso Guinea-Bissau',
+ 'GYD' => 'Đô la Guyana',
+ 'HKD' => 'Đô la Hồng Kông',
+ 'HNL' => 'Lempira Honduras',
+ 'HRD' => 'Đồng Dinar Croatia',
+ 'HRK' => 'Kuna Croatia',
+ 'HTG' => 'Gourde Haiti',
+ 'HUF' => 'Forint Hungaria',
+ 'IDR' => 'Rupiah Indonesia',
+ 'IEP' => 'Pao Ai-len',
+ 'ILP' => 'Pao Ixraen',
+ 'ILS' => 'Sheqel Israel mới',
+ 'INR' => 'Rupee Ấn Độ',
+ 'IQD' => 'Dinar I-rắc',
+ 'IRR' => 'Rial Iran',
+ 'ISK' => 'Króna Iceland',
+ 'ITL' => 'Lia Ý',
+ 'JMD' => 'Đô la Jamaica',
+ 'JOD' => 'Dinar Jordan',
+ 'JPY' => 'Yên Nhật',
+ 'KES' => 'Shilling Kenya',
+ 'KGS' => 'Som Kyrgyzstan',
+ 'KHR' => 'Riel Campuchia',
+ 'KMF' => 'Franc Comoros',
+ 'KPW' => 'Won Triều Tiên',
+ 'KRH' => 'Đồng Hwan Hàn Quốc (1953–1962)',
+ 'KRO' => 'Đồng Won Hàn Quốc (1945–1953)',
+ 'KRW' => 'Won Hàn Quốc',
+ 'KWD' => 'Dinar Kuwait',
+ 'KYD' => 'Đô la Quần đảo Cayman',
+ 'KZT' => 'Tenge Kazakhstan',
+ 'LAK' => 'Kip Lào',
+ 'LBP' => 'Bảng Li-băng',
+ 'LKR' => 'Rupee Sri Lanka',
+ 'LRD' => 'Đô la Liberia',
+ 'LSL' => 'Đồng loti của Lesotho',
+ 'LTL' => 'Litas Lít-va',
+ 'LTT' => 'Đồng Talonas Litva',
+ 'LUC' => 'Đồng Franc Luxembourg có thể chuyển đổi',
+ 'LUF' => 'Đồng Franc Luxembourg',
+ 'LUL' => 'Đồng Franc Luxembourg tài chính',
+ 'LVL' => 'Lats Latvia',
+ 'LVR' => 'Đồng Rúp Latvia',
+ 'LYD' => 'Dinar Libi',
+ 'MAD' => 'Dirham Ma-rốc',
+ 'MAF' => 'Đồng Franc Ma-rốc',
+ 'MCF' => 'Đồng Franc Monegasque',
+ 'MDC' => 'Đồng Cupon Moldova',
+ 'MDL' => 'Leu Moldova',
+ 'MGA' => 'Ariary Malagasy',
+ 'MGF' => 'Đồng Franc Magalasy',
+ 'MKD' => 'Denar Macedonia',
+ 'MKN' => 'Đồng Denar Macedonia (1992–1993)',
+ 'MLF' => 'Đồng Franc Mali',
+ 'MMK' => 'Kyat Myanma',
+ 'MNT' => 'Tugrik Mông Cổ',
+ 'MOP' => 'Pataca Ma Cao',
+ 'MRO' => 'Ouguiya Mauritania',
+ 'MTL' => 'Lia xứ Man-tơ',
+ 'MTP' => 'Đồng Bảng Malta',
+ 'MUR' => 'Rupee Mauritius',
+ 'MVR' => 'Rufiyaa Maldives',
+ 'MWK' => 'Kwacha Malawi',
+ 'MXN' => 'Peso Mexico',
+ 'MXP' => 'Đồng Peso Bạc Mê-hi-cô (1861–1992)',
+ 'MXV' => 'Đơn vị Đầu tư Mê-hi-cô',
+ 'MYR' => 'Ringgit Malaysia',
+ 'MZE' => 'Đồng Escudo Mozambique',
+ 'MZM' => 'Đồng Metical Mozambique (1980–2006)',
+ 'MZN' => 'Metical Mozambique',
+ 'NAD' => 'Đô la Namibia',
+ 'NGN' => 'Naira Nigeria',
+ 'NIC' => 'Đồng Córdoba Nicaragua (1988–1991)',
+ 'NIO' => 'Córdoba Nicaragua',
+ 'NLG' => 'Đồng Guilder Hà Lan',
+ 'NOK' => 'Krone Na Uy',
+ 'NPR' => 'Rupee Nepal',
+ 'NZD' => 'Đô la New Zealand',
+ 'OMR' => 'Rial Oman',
+ 'PAB' => 'Balboa Panama',
+ 'PEI' => 'Đồng Inti Peru',
+ 'PEN' => 'Nuevo Sol Peru',
+ 'PES' => 'Đồng Sol Peru (1863–1965)',
+ 'PGK' => 'Kina Papua New Guinean',
+ 'PHP' => 'Peso Philipin',
+ 'PKR' => 'Rupee Pakistan',
+ 'PLN' => 'Zloty Ba Lan',
+ 'PLZ' => 'Đồng Zloty Ba Lan (1950–1995)',
+ 'PTE' => 'Đồng Escudo Bồ Đào Nha',
+ 'PYG' => 'Guarani Paraguay',
+ 'QAR' => 'Rial Qatar',
+ 'RHD' => 'Đồng Đô la Rhode',
+ 'ROL' => 'Đồng Leu Rumani (1952–2006)',
+ 'RON' => 'Leu Romania',
+ 'RSD' => 'Dinar Serbia',
+ 'RUB' => 'Rúp Nga',
+ 'RUR' => 'Đồng Rúp Nga (1991–1998)',
+ 'RWF' => 'Franc Rwanda',
+ 'SAR' => 'Riyal Ả Rập Xê-út',
+ 'SBD' => 'Đô la quần đảo Solomon',
+ 'SCR' => 'Rupee Seychelles',
+ 'SDD' => 'Đồng Dinar Sudan (1992–2007)',
+ 'SDG' => 'Bảng Sudan',
+ 'SDP' => 'Đồng Bảng Sudan (1957–1998)',
+ 'SEK' => 'Krona Thụy Điển',
+ 'SGD' => 'Đô la Singapore',
+ 'SHP' => 'Bảng Saint Helena',
+ 'SIT' => 'Tôla Xlôvênia',
+ 'SKK' => 'Cuaron Xlôvác',
+ 'SLL' => 'Leone Sierra Leone',
+ 'SOS' => 'Schilling Somali',
+ 'SRD' => 'Đô la Suriname',
+ 'SRG' => 'Đồng Guilder Surinam',
+ 'SSP' => 'Bảng Nam Sudan',
+ 'STD' => 'Dobra São Tomé và Príncipe',
+ 'SUR' => 'Đồng Rúp Sô viết',
+ 'SVC' => 'Đồng Colón Salvador',
+ 'SYP' => 'Bảng Syria',
+ 'SZL' => 'Lilangeni Swaziland',
+ 'THB' => 'Bạt Thái Lan',
+ 'TJR' => 'Đồng Rúp Tajikistan',
+ 'TJS' => 'Somoni Tajikistan',
+ 'TMM' => 'Đồng Manat Turkmenistan (1993–2009)',
+ 'TMT' => 'Manat Turkmenistan',
+ 'TND' => 'Dinar Tunisia',
+ 'TOP' => 'Paʻanga Tonga',
+ 'TPE' => 'Đồng Escudo Timor',
+ 'TRL' => 'Lia Thổ Nhĩ Kỳ (1922–2005)',
+ 'TRY' => 'Lia Thổ Nhĩ Kỳ',
+ 'TTD' => 'Đô la Trinidad và Tobago',
+ 'TWD' => 'Đô la Đài Loan mới',
+ 'TZS' => 'Shilling Tanzania',
+ 'UAH' => 'Hryvnia Ucraina',
+ 'UAK' => 'Đồng Karbovanets Ucraina',
+ 'UGS' => 'Đồng Shilling Uganda (1966–1987)',
+ 'UGX' => 'Shilling Uganda',
+ 'USD' => 'Đô la Mỹ',
+ 'USN' => 'Đô la Mỹ (Ngày tiếp theo)',
+ 'USS' => 'Đô la Mỹ (Cùng ngày)',
+ 'UYI' => 'Đồng Peso Uruguay (Đơn vị Theo chỉ số)',
+ 'UYP' => 'Đồng Peso Uruguay (1975–1993)',
+ 'UYU' => 'Peso Uruguay',
+ 'UZS' => 'Som Uzbekistan',
+ 'VEB' => 'Đồng bolívar của Venezuela (1871–2008)',
+ 'VEF' => 'Bolívar Venezuela',
+ 'VND' => 'Đồng Việt Nam',
+ 'VNN' => 'Đồng Việt Nam (1978–1985)',
+ 'VUV' => 'Vatu Vanuatu',
+ 'WST' => 'Tala Samoa',
+ 'XAF' => 'CFA Franc BEAC',
+ 'XAG' => 'Bạc',
+ 'XAU' => 'Vàng',
+ 'XBA' => 'Đơn vị Tổng hợp Châu Âu',
+ 'XBB' => 'Đơn vị Tiền tệ Châu Âu',
+ 'XBC' => 'Đơn vị Kế toán Châu Âu (XBC)',
+ 'XBD' => 'Đơn vị Kế toán Châu Âu (XBD)',
+ 'XCD' => 'Đô la Đông Caribê',
+ 'XDR' => 'Quyền Rút vốn Đặc biệt',
+ 'XEU' => 'Đơn vị Tiền Châu Âu',
+ 'XFO' => 'Đồng France Pháp Vàng',
+ 'XFU' => 'Đồng UIC-Franc Pháp',
+ 'XOF' => 'Franc CFA BCEAO',
+ 'XPD' => 'Paladi',
+ 'XPF' => 'Franc CFP',
+ 'XPT' => 'Bạch kim',
+ 'XRE' => 'Quỹ RINET',
+ 'XTS' => 'Mã Tiền tệ Kiểm tra',
+ 'XXX' => 'Tiền tệ chưa biết',
+ 'YDD' => 'Đồng Dinar Yemen',
+ 'YER' => 'Rial Yemen',
+ 'YUD' => 'Đồng Dinar Nam Tư Xu (1966–1990)',
+ 'YUM' => 'Đồng Dinar Nam Tư Mới (1994–2002)',
+ 'YUN' => 'Đồng Dinar Nam Tư Có thể chuyển đổi (1990–1992)',
+ 'YUR' => 'Đồng Dinar Nam Tư Tái cơ cấu (1992–1993)',
+ 'ZAL' => 'Đồng Rand Nam Phi (tài chính)',
+ 'ZAR' => 'Rand Nam Phi',
+ 'ZMK' => 'Đồng kwacha của Zambia (1968–2012)',
+ 'ZMW' => 'Kwacha Zambia',
+ 'ZRN' => 'Đồng Zaire Mới (1993–1998)',
+ 'ZRZ' => 'Đồng Zaire (1971–1993)',
+ 'ZWD' => 'Đồng Đô la Zimbabwe (1980–2008)',
+ 'ZWL' => 'Đồng Đô la Zimbabwe (2009)',
+ 'ZWR' => 'Đồng Đô la Zimbabwe (2008)',
+);
+
+$currencySymbols = array(
+ 'ADP' => 'ADP',
+ 'AED' => 'AED',
+ 'AFA' => 'AFA',
+ 'AFN' => 'AFN',
+ 'ALL' => 'ALL',
+ 'AMD' => 'AMD',
+ 'ANG' => 'ANG',
+ 'AOA' => 'AOA',
+ 'AOK' => 'AOK',
+ 'AON' => 'AON',
+ 'AOR' => 'AOR',
+ 'ARA' => 'ARA',
+ 'ARL' => 'ARL',
+ 'ARM' => 'ARM',
+ 'ARP' => 'ARP',
+ 'ARS' => 'ARS',
+ 'ATS' => 'ATS',
+ 'AUD' => 'AU$',
+ 'AWG' => 'AWG',
+ 'AZM' => 'AZM',
+ 'AZN' => 'AZN',
+ 'BAD' => 'BAD',
+ 'BAM' => 'BAM',
+ 'BAN' => 'BAN',
+ 'BBD' => 'BBD',
+ 'BDT' => 'BDT',
+ 'BEC' => 'BEC',
+ 'BEF' => 'BEF',
+ 'BEL' => 'BEL',
+ 'BGL' => 'BGL',
+ 'BGM' => 'BGM',
+ 'BGN' => 'BGN',
+ 'BGO' => 'BGO',
+ 'BHD' => 'BHD',
+ 'BIF' => 'BIF',
+ 'BMD' => 'BMD',
+ 'BND' => 'BND',
+ 'BOB' => 'BOB',
+ 'BOL' => 'BOL',
+ 'BOP' => 'BOP',
+ 'BOV' => 'BOV',
+ 'BRB' => 'BRB',
+ 'BRC' => 'BRC',
+ 'BRE' => 'BRE',
+ 'BRL' => 'R$',
+ 'BRN' => 'BRN',
+ 'BRR' => 'BRR',
+ 'BRZ' => 'BRZ',
+ 'BSD' => 'BSD',
+ 'BTN' => 'BTN',
+ 'BUK' => 'BUK',
+ 'BWP' => 'BWP',
+ 'BYB' => 'BYB',
+ 'BYR' => 'BYR',
+ 'BZD' => 'BZD',
+ 'CAD' => 'CA$',
+ 'CDF' => 'CDF',
+ 'CHE' => 'CHE',
+ 'CHF' => 'CHF',
+ 'CHW' => 'CHW',
+ 'CLE' => 'CLE',
+ 'CLF' => 'CLF',
+ 'CLP' => 'CLP',
+ 'CNY' => 'CN¥',
+ 'COP' => 'COP',
+ 'COU' => 'COU',
+ 'CRC' => 'CRC',
+ 'CSD' => 'CSD',
+ 'CSK' => 'CSK',
+ 'CUC' => 'CUC',
+ 'CUP' => 'CUP',
+ 'CVE' => 'CVE',
+ 'CYP' => 'CYP',
+ 'CZK' => 'CZK',
+ 'DDM' => 'DDM',
+ 'DEM' => 'DEM',
+ 'DJF' => 'DJF',
+ 'DKK' => 'DKK',
+ 'DOP' => 'DOP',
+ 'DZD' => 'DZD',
+ 'ECS' => 'ECS',
+ 'ECV' => 'ECV',
+ 'EEK' => 'EEK',
+ 'EGP' => 'EGP',
+ 'ERN' => 'ERN',
+ 'ESA' => 'ESA',
+ 'ESB' => 'ESB',
+ 'ESP' => 'ESP',
+ 'ETB' => 'ETB',
+ 'EUR' => '€',
+ 'FIM' => 'FIM',
+ 'FJD' => 'FJD',
+ 'FKP' => 'FKP',
+ 'FRF' => 'FRF',
+ 'GBP' => '£',
+ 'GEK' => 'GEK',
+ 'GEL' => 'GEL',
+ 'GHC' => 'GHC',
+ 'GHS' => 'GHS',
+ 'GIP' => 'GIP',
+ 'GMD' => 'GMD',
+ 'GNF' => 'GNF',
+ 'GNS' => 'GNS',
+ 'GQE' => 'GQE',
+ 'GRD' => 'GRD',
+ 'GTQ' => 'GTQ',
+ 'GWE' => 'GWE',
+ 'GWP' => 'GWP',
+ 'GYD' => 'GYD',
+ 'HKD' => 'HK$',
+ 'HNL' => 'HNL',
+ 'HRD' => 'HRD',
+ 'HRK' => 'HRK',
+ 'HTG' => 'HTG',
+ 'HUF' => 'HUF',
+ 'IDR' => 'IDR',
+ 'IEP' => 'IEP',
+ 'ILP' => 'ILP',
+ 'ILS' => '₪',
+ 'INR' => '₹',
+ 'IQD' => 'IQD',
+ 'IRR' => 'IRR',
+ 'ISK' => 'ISK',
+ 'ITL' => 'ITL',
+ 'JMD' => 'JMD',
+ 'JOD' => 'JOD',
+ 'JPY' => 'JP¥',
+ 'KES' => 'KES',
+ 'KGS' => 'KGS',
+ 'KHR' => 'KHR',
+ 'KMF' => 'KMF',
+ 'KPW' => 'KPW',
+ 'KRH' => 'KRH',
+ 'KRO' => 'KRO',
+ 'KRW' => '₩',
+ 'KWD' => 'KWD',
+ 'KYD' => 'KYD',
+ 'KZT' => 'KZT',
+ 'LAK' => 'LAK',
+ 'LBP' => 'LBP',
+ 'LKR' => 'LKR',
+ 'LRD' => 'LRD',
+ 'LSL' => 'LSL',
+ 'LTL' => 'LTL',
+ 'LTT' => 'LTT',
+ 'LUC' => 'LUC',
+ 'LUF' => 'LUF',
+ 'LUL' => 'LUL',
+ 'LVL' => 'LVL',
+ 'LVR' => 'LVR',
+ 'LYD' => 'LYD',
+ 'MAD' => 'MAD',
+ 'MAF' => 'MAF',
+ 'MCF' => 'MCF',
+ 'MDC' => 'MDC',
+ 'MDL' => 'MDL',
+ 'MGA' => 'MGA',
+ 'MGF' => 'MGF',
+ 'MKD' => 'MKD',
+ 'MKN' => 'MKN',
+ 'MLF' => 'MLF',
+ 'MMK' => 'MMK',
+ 'MNT' => 'MNT',
+ 'MOP' => 'MOP',
+ 'MRO' => 'MRO',
+ 'MTL' => 'MTL',
+ 'MTP' => 'MTP',
+ 'MUR' => 'MUR',
+ 'MVR' => 'MVR',
+ 'MWK' => 'MWK',
+ 'MXN' => 'MX$',
+ 'MXP' => 'MXP',
+ 'MXV' => 'MXV',
+ 'MYR' => 'MYR',
+ 'MZE' => 'MZE',
+ 'MZM' => 'MZM',
+ 'MZN' => 'MZN',
+ 'NAD' => 'NAD',
+ 'NGN' => 'NGN',
+ 'NIC' => 'NIC',
+ 'NIO' => 'NIO',
+ 'NLG' => 'NLG',
+ 'NOK' => 'NOK',
+ 'NPR' => 'NPR',
+ 'NZD' => 'NZ$',
+ 'OMR' => 'OMR',
+ 'PAB' => 'PAB',
+ 'PEI' => 'PEI',
+ 'PEN' => 'PEN',
+ 'PES' => 'PES',
+ 'PGK' => 'PGK',
+ 'PHP' => 'PHP',
+ 'PKR' => 'PKR',
+ 'PLN' => 'PLN',
+ 'PLZ' => 'PLZ',
+ 'PTE' => 'PTE',
+ 'PYG' => 'PYG',
+ 'QAR' => 'QAR',
+ 'RHD' => 'RHD',
+ 'ROL' => 'ROL',
+ 'RON' => 'RON',
+ 'RSD' => 'RSD',
+ 'RUB' => 'RUB',
+ 'RUR' => 'RUR',
+ 'RWF' => 'RWF',
+ 'SAR' => 'SAR',
+ 'SBD' => 'SBD',
+ 'SCR' => 'SCR',
+ 'SDD' => 'SDD',
+ 'SDG' => 'SDG',
+ 'SDP' => 'SDP',
+ 'SEK' => 'SEK',
+ 'SGD' => 'SGD',
+ 'SHP' => 'SHP',
+ 'SIT' => 'SIT',
+ 'SKK' => 'SKK',
+ 'SLL' => 'SLL',
+ 'SOS' => 'SOS',
+ 'SRD' => 'SRD',
+ 'SRG' => 'SRG',
+ 'SSP' => 'SSP',
+ 'STD' => 'STD',
+ 'SUR' => 'SUR',
+ 'SVC' => 'SVC',
+ 'SYP' => 'SYP',
+ 'SZL' => 'SZL',
+ 'THB' => '฿',
+ 'TJR' => 'TJR',
+ 'TJS' => 'TJS',
+ 'TMM' => 'TMM',
+ 'TMT' => 'TMT',
+ 'TND' => 'TND',
+ 'TOP' => 'TOP',
+ 'TPE' => 'TPE',
+ 'TRL' => 'TRL',
+ 'TRY' => 'TRY',
+ 'TTD' => 'TTD',
+ 'TWD' => 'NT$',
+ 'TZS' => 'TZS',
+ 'UAH' => 'UAH',
+ 'UAK' => 'UAK',
+ 'UGS' => 'UGS',
+ 'UGX' => 'UGX',
+ 'USD' => 'US$',
+ 'USN' => 'USN',
+ 'USS' => 'USS',
+ 'UYI' => 'UYI',
+ 'UYP' => 'UYP',
+ 'UYU' => 'UYU',
+ 'UZS' => 'UZS',
+ 'VEB' => 'VEB',
+ 'VEF' => 'VEF',
+ 'VND' => '₫',
+ 'VNN' => 'VNN',
+ 'VUV' => 'VUV',
+ 'WST' => 'WST',
+ 'XAF' => 'FCFA',
+ 'XAG' => 'XAG',
+ 'XAU' => 'XAU',
+ 'XBA' => 'XBA',
+ 'XBB' => 'XBB',
+ 'XBC' => 'XBC',
+ 'XBD' => 'XBD',
+ 'XCD' => 'EC$',
+ 'XDR' => 'XDR',
+ 'XEU' => 'XEU',
+ 'XFO' => 'XFO',
+ 'XFU' => 'XFU',
+ 'XOF' => 'CFA',
+ 'XPD' => 'XPD',
+ 'XPF' => 'CFPF',
+ 'XPT' => 'XPT',
+ 'XRE' => 'XRE',
+ 'XTS' => 'XTS',
+ 'XXX' => 'XXX',
+ 'YDD' => 'YDD',
+ 'YER' => 'YER',
+ 'YUD' => 'YUD',
+ 'YUM' => 'YUM',
+ 'YUN' => 'YUN',
+ 'YUR' => 'YUR',
+ 'ZAL' => 'ZAL',
+ 'ZAR' => 'ZAR',
+ 'ZMK' => 'ZMK',
+ 'ZMW' => 'ZMW',
+ 'ZRN' => 'ZRN',
+ 'ZRZ' => 'ZRZ',
+ 'ZWD' => 'ZWD',
+ 'ZWL' => 'ZWL',
+ 'ZWR' => 'ZWR',
+);
+
+$countryNames = array(
+ 'AC' => 'Đảo Ascension',
+ 'AD' => 'Andorra',
+ 'AE' => 'Các Tiểu V.quốc Ả Rập T.nhất',
+ 'AF' => 'Afghanistan',
+ 'AG' => 'Antigua và Barbuda',
+ 'AI' => 'Anguilla',
+ 'AL' => 'Albani',
+ 'AM' => 'Armenia',
+ 'AN' => 'Tây Ấn Hà Lan',
+ 'AO' => 'Angola',
+ 'AQ' => 'Nam Cực',
+ 'AR' => 'Argentina',
+ 'AS' => 'Đảo Somoa thuộc Mỹ',
+ 'AT' => 'Áo',
+ 'AU' => 'Úc',
+ 'AW' => 'Aruba',
+ 'AX' => 'Quần đảo Åland',
+ 'AZ' => 'Azerbaijan',
+ 'BA' => 'Bosnia và Herzegovina',
+ 'BB' => 'Barbados',
+ 'BD' => 'Bangladesh',
+ 'BE' => 'Bỉ',
+ 'BF' => 'Burkina Faso',
+ 'BG' => 'Bungari',
+ 'BH' => 'Bahrain',
+ 'BI' => 'Burundi',
+ 'BJ' => 'Benin',
+ 'BL' => 'Saint Barthélemy',
+ 'BM' => 'Bermuda',
+ 'BN' => 'Brunei',
+ 'BO' => 'Bolivia',
+ 'BQ' => 'Ca-ri-bê Hà Lan',
+ 'BR' => 'Brazil',
+ 'BS' => 'Bahamas',
+ 'BT' => 'Bhutan',
+ 'BV' => 'Đảo Bouvet',
+ 'BW' => 'Botswana',
+ 'BY' => 'Belarus',
+ 'BZ' => 'Belize',
+ 'CA' => 'Canada',
+ 'CC' => 'Quần đảo Cocos (Keeling)',
+ 'CD' => 'Congo - Kinshasa',
+ 'CF' => 'Cộng hòa Trung Phi',
+ 'CG' => 'Congo - Brazzaville',
+ 'CH' => 'Thụy Sĩ',
+ 'CI' => 'Bờ Biển Ngà',
+ 'CK' => 'Quần đảo Cook',
+ 'CL' => 'Chile',
+ 'CM' => 'Cameroon',
+ 'CN' => 'Trung Quốc',
+ 'CO' => 'Colombia',
+ 'CP' => 'Đảo Clipperton',
+ 'CR' => 'Costa Rica',
+ 'CU' => 'Cuba',
+ 'CV' => 'Cape Verde',
+ 'CW' => 'Curaçao',
+ 'CX' => 'Đảo Giáng Sinh',
+ 'CY' => 'Síp',
+ 'CZ' => 'Cộng hòa Séc',
+ 'DE' => 'Đức',
+ 'DG' => 'Diego Garcia',
+ 'DJ' => 'Djibouti',
+ 'DK' => 'Đan Mạch',
+ 'DM' => 'Dominica',
+ 'DO' => 'Cộng hòa Dominica',
+ 'DZ' => 'Algeria',
+ 'EA' => 'Ceuta và Melilla',
+ 'EC' => 'Ecuador',
+ 'EE' => 'Estonia',
+ 'EG' => 'Ai Cập',
+ 'EH' => 'Tây Sahara',
+ 'ER' => 'Eritrea',
+ 'ES' => 'Tây Ban Nha',
+ 'ET' => 'Ethiopia',
+ 'EU' => 'Liên Minh Châu Âu',
+ 'FI' => 'Phần Lan',
+ 'FJ' => 'Fiji',
+ 'FK' => 'Quần đảo Falkland',
+ 'FM' => 'Micronesia',
+ 'FO' => 'Quần đảo Faroe',
+ 'FR' => 'Pháp',
+ 'GA' => 'Gabon',
+ 'GB' => 'Vương quốc Anh',
+ 'GD' => 'Grenada',
+ 'GE' => 'Georgia',
+ 'GF' => 'Guiana thuộc Pháp',
+ 'GG' => 'Guernsey',
+ 'GH' => 'Ghana',
+ 'GI' => 'Gibraltar',
+ 'GL' => 'Greenland',
+ 'GM' => 'Gambia',
+ 'GN' => 'Guinea',
+ 'GP' => 'Guadeloupe',
+ 'GQ' => 'Guinea Xích Đạo',
+ 'GR' => 'Hy Lạp',
+ 'GS' => 'Quần đảo Nam Georgia và Nam Sandwich',
+ 'GT' => 'Guatemala',
+ 'GU' => 'Guam',
+ 'GW' => 'Guinea-Bissau',
+ 'GY' => 'Guyana',
+ 'HK' => 'Hồng Kông',
+ 'HM' => 'Đảo Heard và Quần đảo McDonald',
+ 'HN' => 'Honduras',
+ 'HR' => 'Croatia',
+ 'HT' => 'Haiti',
+ 'HU' => 'Hungari',
+ 'IC' => 'Quần đảo Canary',
+ 'ID' => 'Indonesia',
+ 'IE' => 'Ai-len',
+ 'IL' => 'Israel',
+ 'IM' => 'Đảo Man',
+ 'IN' => 'Ấn Độ',
+ 'IO' => 'Thuộc địa Anh tại Ấn Độ Dương',
+ 'IQ' => 'I-rắc',
+ 'IR' => 'Iran',
+ 'IS' => 'Iceland',
+ 'IT' => 'Ý',
+ 'JE' => 'Jersey',
+ 'JM' => 'Jamaica',
+ 'JO' => 'Jordan',
+ 'JP' => 'Nhật Bản',
+ 'KE' => 'Kenya',
+ 'KG' => 'Kyrgyzstan',
+ 'KH' => 'Campuchia',
+ 'KI' => 'Kiribati',
+ 'KM' => 'Comoros',
+ 'KN' => 'Saint Kitts và Nevis',
+ 'KP' => 'Triều Tiên',
+ 'KR' => 'Hàn Quốc',
+ 'KW' => 'Cô-oét',
+ 'KY' => 'Quần đảo Cayman',
+ 'KZ' => 'Kazakhstan',
+ 'LA' => 'Lào',
+ 'LB' => 'Li-băng',
+ 'LC' => 'Saint Lucia',
+ 'LI' => 'Liechtenstein',
+ 'LK' => 'Sri Lanka',
+ 'LR' => 'Liberia',
+ 'LS' => 'Lesotho',
+ 'LT' => 'Lít-va',
+ 'LU' => 'Luxembourg',
+ 'LV' => 'Latvia',
+ 'LY' => 'Li-bi',
+ 'MA' => 'Ma-rốc',
+ 'MC' => 'Monaco',
+ 'MD' => 'Moldova',
+ 'ME' => 'Montenegro',
+ 'MF' => 'Saint Martin',
+ 'MG' => 'Madagascar',
+ 'MH' => 'Quần đảo Marshall',
+ 'MK' => 'Macedonia',
+ 'ML' => 'Mali',
+ 'MM' => 'Myanmar (Miến Điện)',
+ 'MN' => 'Mông Cổ',
+ 'MO' => 'Macao',
+ 'MP' => 'Quần đảo Bắc Mariana',
+ 'MQ' => 'Martinique',
+ 'MR' => 'Mauritania',
+ 'MS' => 'Montserrat',
+ 'MT' => 'Malta',
+ 'MU' => 'Mauritius',
+ 'MV' => 'Maldives',
+ 'MW' => 'Malawi',
+ 'MX' => 'Mexico',
+ 'MY' => 'Malaysia',
+ 'MZ' => 'Mozambique',
+ 'NA' => 'Namibia',
+ 'NC' => 'New Caledonia',
+ 'NE' => 'Niger',
+ 'NF' => 'Đảo Norfolk',
+ 'NG' => 'Nigeria',
+ 'NI' => 'Nicaragua',
+ 'NL' => 'Hà Lan',
+ 'NO' => 'Na Uy',
+ 'NP' => 'Nepal',
+ 'NR' => 'Nauru',
+ 'NU' => 'Niue',
+ 'NZ' => 'New Zealand',
+ 'OM' => 'Oman',
+ 'PA' => 'Panama',
+ 'PE' => 'Peru',
+ 'PF' => 'Polynesia thuộc Pháp',
+ 'PG' => 'Papua New Guinea',
+ 'PH' => 'Philippin',
+ 'PK' => 'Pakistan',
+ 'PL' => 'Ba Lan',
+ 'PM' => 'Saint Pierre và Miquelon',
+ 'PN' => 'Quần đảo Pitcairn',
+ 'PR' => 'Puerto Rico',
+ 'PS' => 'Palestine',
+ 'PT' => 'Bồ Đào Nha',
+ 'PW' => 'Palau',
+ 'PY' => 'Paraguay',
+ 'QA' => 'Qatar',
+ 'QO' => 'Vùng xa xôi thuộc Châu Đại Dương',
+ 'RE' => 'Réunion',
+ 'RO' => 'Romania',
+ 'RS' => 'Serbia',
+ 'RU' => 'Nga',
+ 'RW' => 'Rwanda',
+ 'SA' => 'Ả Rập Xê-út',
+ 'SB' => 'Quần đảo Solomon',
+ 'SC' => 'Seychelles',
+ 'SD' => 'Sudan',
+ 'SE' => 'Thụy Điển',
+ 'SG' => 'Singapore',
+ 'SH' => 'Saint Helena',
+ 'SI' => 'Slovenia',
+ 'SJ' => 'Svalbard và Jan Mayen',
+ 'SK' => 'Slovakia',
+ 'SL' => 'Sierra Leone',
+ 'SM' => 'San Marino',
+ 'SN' => 'Senegal',
+ 'SO' => 'Somali',
+ 'SR' => 'Suriname',
+ 'SS' => 'Nam Sudan',
+ 'ST' => 'São Tomé và Príncipe',
+ 'SV' => 'El Salvador',
+ 'SX' => 'Sint Maarten',
+ 'SY' => 'Syria',
+ 'SZ' => 'Swaziland',
+ 'TA' => 'Tristan da Cunha',
+ 'TC' => 'Quần đảo Turk và Caicos',
+ 'TD' => 'Chad',
+ 'TF' => 'Lãnh thổ miền nam nước Pháp',
+ 'TG' => 'Togo',
+ 'TH' => 'Thái Lan',
+ 'TJ' => 'Tajikistan',
+ 'TK' => 'Tokelau',
+ 'TL' => 'Đông Timor',
+ 'TM' => 'Turkmenistan',
+ 'TN' => 'Tunisia',
+ 'TO' => 'Tonga',
+ 'TR' => 'Thổ Nhĩ Kỳ',
+ 'TT' => 'Trinidad và Tobago',
+ 'TV' => 'Tuvalu',
+ 'TW' => 'Đài Loan',
+ 'TZ' => 'Tanzania',
+ 'UA' => 'Ukraina',
+ 'UG' => 'Uganda',
+ 'UM' => 'Các đảo nhỏ xa t.tâm thuộc Mỹ',
+ 'US' => 'Hoa Kỳ',
+ 'UY' => 'Uruguay',
+ 'UZ' => 'Uzbekistan',
+ 'VA' => 'Thành Vatican',
+ 'VC' => 'Saint Vincent và Grenadines',
+ 'VE' => 'Venezuela',
+ 'VG' => 'Quần đảo Virgin thuộc Anh',
+ 'VI' => 'Quần đảo Virgin thuộc Mỹ',
+ 'VN' => 'Việt Nam',
+ 'VU' => 'Vanuatu',
+ 'WF' => 'Wallis và Futuna',
+ 'WS' => 'Samoa',
+ 'XK' => 'Kosovo',
+ 'YE' => 'Yemen',
+ 'YT' => 'Mayotte',
+ 'ZA' => 'Nam Phi',
+ 'ZM' => 'Zambia',
+ 'ZW' => 'Zimbabwe',
+);
+
+$timeUnits = array(
+ 'day-future-other' => 'trong {0} ngày nữa',
+ 'day-narrow-future-other' => 'trong {0} ngày',
+ 'day-narrow-past-other' => '{0} ngày trước',
+ 'day-other' => '{0} ngày',
+ 'day-past-other' => '{0} ngày trước',
+ 'day-short-future-other' => 'trong {0} ngày nữa',
+ 'day-short-past-other' => '{0} ngày trước',
+ 'hour-future-other' => 'trong {0} giờ nữa',
+ 'hour-narrow-future-other' => 'trong {0} giờ',
+ 'hour-narrow-past-other' => '{0} giờ trước',
+ 'hour-other' => '{0} giờ',
+ 'hour-past-other' => '{0} giờ trước',
+ 'hour-short-future-other' => 'trong {0} giờ nữa',
+ 'hour-short-past-other' => '{0} giờ trước',
+ 'microsecond-other' => '{0} micrô giây',
+ 'millisecond-other' => '{0} mili giây',
+ 'minute-future-other' => 'trong {0} phút nữa',
+ 'minute-narrow-future-other' => 'trong {0} phút',
+ 'minute-narrow-past-other' => '{0} phút trước',
+ 'minute-other' => '{0} phút',
+ 'minute-past-other' => '{0} phút trước',
+ 'minute-short-future-other' => 'trong {0} phút nữa',
+ 'minute-short-past-other' => '{0} phút trước',
+ 'month-future-other' => 'trong {0} tháng nữa',
+ 'month-narrow-future-other' => 'trong {0} tháng nữa',
+ 'month-narrow-past-other' => '{0} tháng trước',
+ 'month-other' => '{0} tháng',
+ 'month-past-other' => '{0} tháng trước',
+ 'month-short-future-other' => 'trong {0} tháng nữa',
+ 'month-short-past-other' => '{0} tháng trước',
+ 'nanosecond-other' => '{0} nano giây',
+ 'quarter-future-other' => 'trong {0} quý nữa',
+ 'quarter-narrow-future-other' => 'trong {0} quý nữa',
+ 'quarter-narrow-past-other' => '{0} quý trước',
+ 'quarter-past-other' => '{0} quý trước',
+ 'quarter-short-future-other' => 'trong {0} quý nữa',
+ 'quarter-short-past-other' => '{0} quý trước',
+ 'second-future-other' => 'trong {0} giây nữa',
+ 'second-narrow-future-other' => 'trong {0} giây',
+ 'second-narrow-past-other' => '{0} giây trước',
+ 'second-other' => '{0} giây',
+ 'second-past-other' => '{0} giây trước',
+ 'second-short-future-other' => 'trong {0} giây nữa',
+ 'second-short-past-other' => '{0} giây trước',
+ 'week-future-other' => 'trong {0} tuần nữa',
+ 'week-narrow-future-other' => 'trong {0} tuần nữa',
+ 'week-narrow-past-other' => '{0} tuần trước',
+ 'week-other' => '{0} tuần',
+ 'week-past-other' => '{0} tuần trước',
+ 'week-short-future-other' => 'trong {0} tuần nữa',
+ 'week-short-past-other' => '{0} tuần trước',
+ 'year-future-other' => 'trong {0} năm nữa',
+ 'year-narrow-future-other' => 'trong {0} năm nữa',
+ 'year-narrow-past-other' => '{0} năm trước',
+ 'year-other' => '{0} năm',
+ 'year-past-other' => '{0} năm trước',
+ 'year-short-future-other' => 'trong {0} năm nữa',
+ 'year-short-past-other' => '{0} năm trước',
+);
diff --git a/MLEB/cldr/CldrNames/CldrNamesVo.php b/MLEB/cldr/CldrNames/CldrNamesVo.php
new file mode 100644
index 00000000..5a03aef1
--- /dev/null
+++ b/MLEB/cldr/CldrNames/CldrNamesVo.php
@@ -0,0 +1,23 @@
+<?php
+
+$languageNames = array(
+ 'en' => 'Linglänapük',
+ 'eo' => 'Sperantapük',
+ 'es' => 'Spanyänapük',
+ 'pt' => 'Portugänapük',
+ 'ru' => 'Rusänapük',
+ 'vo' => 'Volapük',
+);
+
+$countryNames = array(
+ 'DE' => 'Deutän',
+ 'ES' => 'Spanyän',
+ 'FR' => 'Fransän',
+ 'GE' => 'Grusiyän',
+ 'GR' => 'Grikän',
+ 'IT' => 'Litaliyän',
+ 'MX' => 'Mäxikän',
+ 'NR' => 'Naureän',
+ 'PT' => 'Portugän',
+ 'PW' => 'Palauäns',
+);
diff --git a/MLEB/cldr/CldrNames/CldrNamesXh.php b/MLEB/cldr/CldrNames/CldrNamesXh.php
new file mode 100644
index 00000000..839f1d0c
--- /dev/null
+++ b/MLEB/cldr/CldrNames/CldrNamesXh.php
@@ -0,0 +1,109 @@
+<?php
+
+$languageNames = array(
+ 'af' => 'isiBhulu',
+ 'am' => 'Isi-Amharic',
+ 'ar' => 'Isi-Arabic',
+ 'as' => 'isiAssamese',
+ 'az' => 'Isi-Azerbaijani',
+ 'be' => 'Isi-Belarusian',
+ 'bg' => 'Isi-Bulgaria',
+ 'bh' => 'Isi-Bihari',
+ 'bn' => 'Isi-Bengali',
+ 'br' => 'Breton',
+ 'bs' => 'Isi-Bosnia',
+ 'ca' => 'Isi-Calatan',
+ 'cs' => 'Isi-Czech',
+ 'cy' => 'Isi-Welsh',
+ 'da' => 'Isi-Danish',
+ 'de' => 'Isi-German',
+ 'el' => 'Isi-Greek',
+ 'en' => 'isiNgesi',
+ 'eo' => 'Isi-Esperanto',
+ 'es' => 'Isi-Spanish',
+ 'et' => 'Isi-Estonian',
+ 'eu' => 'Isi-Basque',
+ 'fa' => 'Isi-Persia',
+ 'fi' => 'Isi-Finnish',
+ 'fil' => 'Isi-Taglog',
+ 'fo' => 'Isi-Faroese',
+ 'fr' => 'Isi-French',
+ 'fy' => 'Isi-Frisian',
+ 'ga' => 'Isi-Irish',
+ 'gd' => 'Scots Gaelic',
+ 'gl' => 'Isi-Galician',
+ 'gn' => 'Guarani',
+ 'gu' => 'Isi-Gujarati',
+ 'he' => 'Isi-Hebrew',
+ 'hi' => 'Isi-Hindi',
+ 'hr' => 'Isi-Croatia',
+ 'hu' => 'Isi-Hungarian',
+ 'hy' => 'isiArmenian',
+ 'ia' => 'Interlingua',
+ 'id' => 'Isi-Indonesian',
+ 'ie' => 'isiInterlingue',
+ 'is' => 'Isi-Icelandic',
+ 'it' => 'Isi-Italian',
+ 'ja' => 'Isi-Japanese',
+ 'jv' => 'Isi-Javanese',
+ 'ka' => 'Isi-Georgia',
+ 'km' => 'isiCambodia',
+ 'kn' => 'Isi-Kannada',
+ 'ko' => 'Isi-Korean',
+ 'ku' => 'Kurdish',
+ 'ky' => 'Kyrgyz',
+ 'la' => 'Isi-Latin',
+ 'ln' => 'Iilwimi',
+ 'lo' => 'IsiLoathian',
+ 'lt' => 'Isi-Lithuanian',
+ 'lv' => 'Isi-Latvian',
+ 'mk' => 'Isi-Macedonian',
+ 'ml' => 'Isi-Malayalam',
+ 'mn' => 'IsiMongolian',
+ 'mr' => 'Isi-Marathi',
+ 'ms' => 'Isi-Malay',
+ 'mt' => 'Isi-Maltese',
+ 'ne' => 'Isi-Nepali',
+ 'nl' => 'Isi-Dutch',
+ 'nn' => 'Isi-Norwegia (Nynorsk)',
+ 'no' => 'Isi-Norwegian',
+ 'oc' => 'Iso-Occitan',
+ 'or' => 'Oriya',
+ 'pa' => 'Isi-Punjabi',
+ 'pl' => 'Isi-Polish',
+ 'ps' => 'Pashto',
+ 'pt' => 'Isi-Portuguese',
+ 'pt-br' => 'portokugusseee',
+ 'pt-pt' => 'Isi-Portuguese (Portugal)',
+ 'ro' => 'Isi-Romanian',
+ 'ru' => 'Isi-Russian',
+ 'sa' => 'iSanskrit',
+ 'sd' => 'isiSindhi',
+ 'sh' => 'Serbo-Croatian',
+ 'si' => 'Isi-Sinhalese',
+ 'sk' => 'Isi-Slovak',
+ 'sl' => 'Isi-Slovenian',
+ 'so' => 'IsiSomaliya',
+ 'sq' => 'Isi-Albania',
+ 'sr' => 'Isi-Serbia',
+ 'st' => 'Sesotho',
+ 'su' => 'Isi-Sudanese',
+ 'sv' => 'Isi-Swedish',
+ 'sw' => 'Isi-Swahili',
+ 'ta' => 'Isi-Tamil',
+ 'te' => 'Isi-Telegu',
+ 'th' => 'Isi-Thai',
+ 'ti' => 'Isi-Tigrinya',
+ 'tk' => 'Turkmen',
+ 'tlh' => 'Klingon',
+ 'tr' => 'Isi-Turkish',
+ 'tw' => 'Twi',
+ 'ug' => 'Isi Uighur',
+ 'uk' => 'Isi-Ukranian',
+ 'ur' => 'Urdu',
+ 'uz' => 'Isi-Uzbek',
+ 'vi' => 'Isi-Vietnamese',
+ 'xh' => 'isiXhosa',
+ 'yi' => 'Yiddish',
+ 'zu' => 'isiZulu',
+);
diff --git a/MLEB/cldr/CldrNames/CldrNamesYi.php b/MLEB/cldr/CldrNames/CldrNamesYi.php
new file mode 100644
index 00000000..57318407
--- /dev/null
+++ b/MLEB/cldr/CldrNames/CldrNamesYi.php
@@ -0,0 +1,394 @@
+<?php
+
+$languageNames = array(
+ 'aa' => 'אַפֿאַר',
+ 'af' => 'אַפֿריקאַנס',
+ 'akk' => 'אַקאַדיש',
+ 'am' => 'אַמהאַריש',
+ 'an' => 'אַראַגאניש',
+ 'ang' => 'אַלט ענגליש',
+ 'ar' => 'אַראַביש',
+ 'arc' => 'אַראַמיש',
+ 'as' => 'אַסאַמיש',
+ 'az' => 'אַזערביידזשאַניש',
+ 'azb' => 'דרום אַזערביידזשאַניש',
+ 'ban' => 'באַלינעזיש',
+ 'bar' => 'בײַעריש',
+ 'be' => 'בעלאַרוסיש',
+ 'bg' => 'בולגאַריש',
+ 'bn' => 'בענגאַליש',
+ 'bo' => 'טיבעטיש',
+ 'br' => 'ברעטאניש',
+ 'bs' => 'באסניש',
+ 'ca' => 'קאַטאַלאניש',
+ 'ceb' => 'סעבואַניש',
+ 'crh' => 'קרים־טערקיש',
+ 'cs' => 'טשעכיש',
+ 'csb' => 'קאַשוביש',
+ 'cu' => 'קלויסטער־סלאַוויש',
+ 'cy' => 'וועלשיש',
+ 'da' => 'דעניש',
+ 'de' => 'דײַטש',
+ 'dsb' => 'אונטער־סארביש',
+ 'dyo' => 'זשאלא־פֿאני',
+ 'el' => 'גריכיש',
+ 'en' => 'ענגליש',
+ 'enm' => 'מיטל ענגליש',
+ 'eo' => 'עספּעראַנטא',
+ 'es' => 'שפּאַניש',
+ 'es-es' => 'שפּאַניש (ES)',
+ 'et' => 'עסטיש',
+ 'eu' => 'באַסקיש',
+ 'fa' => 'פּערסיש',
+ 'fi' => 'פֿיניש',
+ 'fil' => 'פֿיליפּינא',
+ 'fj' => 'פֿידזשי',
+ 'fo' => 'פֿאַראיש',
+ 'fr' => 'פֿראַנצויזיש',
+ 'fro' => 'אַלט־פֿראַנצויזיש',
+ 'frr' => 'דרום־פֿריזיש',
+ 'frs' => 'מזרח־פֿריזיש',
+ 'fy' => 'מערב־פֿריזיש',
+ 'ga' => 'איריש',
+ 'gd' => 'סקאטיש געליש',
+ 'gl' => 'גאַלישיש',
+ 'gmh' => 'מיטל הויכדויטש',
+ 'goh' => 'אַלט־ הויכדויטש',
+ 'got' => 'גאטיש',
+ 'grc' => 'אוראַלט־גריכיש',
+ 'gv' => 'מאַנקס',
+ 'ha' => 'האַוסאַ',
+ 'he' => 'העברעאיש',
+ 'hi' => 'הינדי',
+ 'hif' => 'פידזשי הינדי',
+ 'hr' => 'קראאַטיש',
+ 'hsb' => 'אייבער־סארביש',
+ 'hu' => 'אונגעריש',
+ 'hy' => 'אַרמעניש',
+ 'id' => 'אינדאנעזיש',
+ 'io' => 'אידא',
+ 'is' => 'איסלאַנדיש',
+ 'it' => 'איטאַליעניש',
+ 'ja' => 'יאַפּאַניש',
+ 'jbo' => 'לאזשבאָן',
+ 'jpr' => 'יידיש־פערסיש',
+ 'jv' => 'יאַוואַנעזיש',
+ 'ka' => 'גרוזיניש',
+ 'kk' => 'קאַזאַכיש',
+ 'km' => 'כמער',
+ 'kn' => 'קאַנאַדאַ',
+ 'ko' => 'קארעאיש',
+ 'ku' => 'קורדיש',
+ 'kw' => 'קארניש',
+ 'ky' => 'קירגיזיש',
+ 'la' => 'לאטייניש',
+ 'lad' => 'לאַדינא',
+ 'lb' => 'לוקסעמבורגיש',
+ 'liv' => 'ליוויש',
+ 'lo' => 'לאַא',
+ 'lt' => 'ליטוויש',
+ 'lus' => 'מיזא',
+ 'lv' => 'לעטיש',
+ 'mi' => 'מאַאריש',
+ 'mk' => 'מאַקעדאניש',
+ 'ml' => 'מאַלאַיאַלאַם',
+ 'mn' => 'מאנגאליש',
+ 'mt' => 'מאַלטעזיש',
+ 'my' => 'בירמאַניש',
+ 'nap' => 'נאַפּאליטַניש',
+ 'nds' => 'נידערדײַטש',
+ 'ne' => 'נעפּאַליש',
+ 'nl' => 'האלענדיש',
+ 'nl-be' => 'פֿלעמיש',
+ 'nn' => 'נײַ־נארוועגיש',
+ 'no' => 'נארוועגיש',
+ 'oc' => 'אקסיטאַניש',
+ 'os' => 'אסעטיש',
+ 'peo' => 'אַלט פּערסיש',
+ 'pl' => 'פּויליש',
+ 'prg' => 'פּרייסיש',
+ 'ps' => 'פּאַשטאָ',
+ 'pt' => 'פּארטוגעזיש',
+ 'ro' => 'רומעניש',
+ 'ru' => 'רוסיש',
+ 'rue' => 'רוסיניש',
+ 'sa' => 'סאַנסקריט',
+ 'sc' => 'סאַרדיש',
+ 'scn' => 'סיציליאַניש',
+ 'sco' => 'סקאטס',
+ 'sd' => 'סינדהי',
+ 'se' => 'נארדסאַמיש',
+ 'sga' => 'אַלט־איריש',
+ 'sh' => 'סערבא־קראאַטיש',
+ 'si' => 'סינהאַליש',
+ 'sk' => 'סלאוואַקיש',
+ 'sl' => 'סלאוועניש',
+ 'sli' => 'אונטער שלעזיש',
+ 'sly' => 'sly',
+ 'sm' => 'סאַמאאַניש',
+ 'sn' => 'שאנאַ',
+ 'so' => 'סאמאַליש',
+ 'sq' => 'אַלבאַניש',
+ 'sr' => 'סערביש',
+ 'sux' => 'סומעריש',
+ 'sv' => 'שוועדיש',
+ 'sw' => 'סוואַהיליש',
+ 'swb' => 'קאמאריש',
+ 'swc' => 'קאנגא־סוואַהיליש',
+ 'szl' => 'שלעזיש',
+ 'ta' => 'טאַמיל',
+ 'tig' => 'טיגרע',
+ 'tk' => 'טורקמעניש',
+ 'tl' => 'טאַגאַלאג',
+ 'tt' => 'טאָטעריש',
+ 'uk' => 'אוקראַאיניש',
+ 'und' => 'אומבאַוואוסטע שפּראַך',
+ 'ur' => 'אורדו',
+ 'uz' => 'אוזבעקיש',
+ 'vi' => 'וויעטנאַמעזיש',
+ 'vls' => 'מערב פֿלעמיש',
+ 'vo' => 'וואלאַפּוק',
+ 'yi' => 'ייִדיש',
+ 'zh' => 'כינעזיש',
+ 'zu' => 'זולו',
+);
+
+$currencyNames = array(
+ 'BZD' => 'בעליז דאלאַר',
+ 'CHF' => 'שווייצער פֿראַנק',
+ 'EUR' => 'איירא',
+ 'SEK' => 'שוועדישע קראנע',
+ 'XAG' => 'זילבער',
+ 'XAU' => 'גאלד',
+);
+
+$countryNames = array(
+ 'AD' => 'אַנדארע',
+ 'AF' => 'אַפֿגהאַניסטאַן',
+ 'AG' => 'אַנטיגוע און באַרבודע',
+ 'AL' => 'אַלבאַניע',
+ 'AM' => 'אַרמעניע',
+ 'AO' => 'אַנגאלע',
+ 'AQ' => 'אַנטאַרקטיקע',
+ 'AR' => 'אַרגענטינע',
+ 'AT' => 'עסטרייך',
+ 'AU' => 'אויסטראַליע',
+ 'AW' => 'אַרובאַ',
+ 'BA' => 'באסניע הערצעגאווינע',
+ 'BB' => 'באַרבאַדאס',
+ 'BD' => 'באַנגלאַדעש',
+ 'BE' => 'בעלגיע',
+ 'BF' => 'בורקינע פֿאַסא',
+ 'BG' => 'בולגאַריע',
+ 'BI' => 'בורונדי',
+ 'BJ' => 'בענין',
+ 'BM' => 'בערמודע',
+ 'BN' => 'ברוניי',
+ 'BO' => 'באליוויע',
+ 'BR' => 'בראַזיל',
+ 'BS' => 'באַהאַמאַס',
+ 'BT' => 'בהוטאַן',
+ 'BW' => 'באצוואַנע',
+ 'BY' => 'בעלאַרוס',
+ 'BZ' => 'בעליז',
+ 'CA' => 'קאַנאַדע',
+ 'CD' => 'קאנגא־קינשאַזע',
+ 'CF' => 'צענטראַל־אַפֿריקאַנישע רעפּובליק',
+ 'CH' => 'שווייץ',
+ 'CI' => 'העלפֿאַ נדביין בארטן',
+ 'CK' => 'קוק אינזלען',
+ 'CL' => 'טשילע',
+ 'CM' => 'קאַמערון',
+ 'CN' => 'כינע',
+ 'CO' => 'קאלאמביע',
+ 'CR' => 'קאסטאַ ריקאַ',
+ 'CU' => 'קובאַ',
+ 'CV' => 'קאַפּווערדישע אינזלען',
+ 'CW' => 'קוראַסאַא',
+ 'CZ' => 'טשעכיי',
+ 'DE' => 'דייטשלאַנד',
+ 'DJ' => 'דזשיבוטי',
+ 'DK' => 'דענמאַרק',
+ 'DM' => 'דאמיניקע',
+ 'DO' => 'דאמיניקאַנישע רעפּובליק',
+ 'EC' => 'עקוואַדאר',
+ 'EE' => 'עסטלאַנד',
+ 'EG' => 'עגיפּטן',
+ 'ER' => 'עריטרעע',
+ 'ES' => 'שפּאַניע',
+ 'ET' => 'עטיאפּיע',
+ 'EU' => 'אייראפּעישער פֿאַרבאַנד',
+ 'FI' => 'פֿינלאַנד',
+ 'FJ' => 'פֿידזשי',
+ 'FK' => 'פֿאַלקלאַנד אינזלען',
+ 'FM' => 'מיקראנעזיע',
+ 'FO' => 'פֿאַרא אינזלען',
+ 'FR' => 'פֿראַנקרייך',
+ 'GA' => 'גאַבאן',
+ 'GB' => 'פֿאַראייניגטע קעניגרייך',
+ 'GD' => 'גרענאַדאַ',
+ 'GE' => 'גרוזיע',
+ 'GF' => 'פֿראַנצויזישע גויאַנע',
+ 'GG' => 'גערנזי',
+ 'GH' => 'גהאַנע',
+ 'GI' => 'גיבראַלטאַר',
+ 'GL' => 'גרינלאַנד',
+ 'GM' => 'גאַמביע',
+ 'GN' => 'גינע',
+ 'GP' => 'גוואַדעלופ',
+ 'GQ' => 'עקוואַטארישע גינע',
+ 'GR' => 'גריכנלאַנד',
+ 'GT' => 'גוואַטעמאַלע',
+ 'GU' => 'גוואַם',
+ 'GW' => 'גינע־ביסאַו',
+ 'GY' => 'גויאַנע',
+ 'HN' => 'האנדוראַס',
+ 'HR' => 'קראאַטיע',
+ 'HT' => 'האַיטי',
+ 'HU' => 'אונגערן',
+ 'IC' => 'קאַנאַרישע אינזלען',
+ 'ID' => 'אינדאנעזיע',
+ 'IE' => 'אירלאַנד',
+ 'IL' => 'ישראל',
+ 'IN' => 'אינדיע',
+ 'IR' => 'איראַן',
+ 'IS' => 'איסלאַנד',
+ 'IT' => 'איטאַליע',
+ 'JE' => 'דזשערזי',
+ 'JM' => 'דזשאַמייקע',
+ 'JP' => 'יאַפּאַן',
+ 'KE' => 'קעניע',
+ 'KH' => 'קאַמבאדיע',
+ 'KI' => 'קיריבאַטי',
+ 'KM' => 'קאמאראס',
+ 'KY' => 'קיימאַן אינזלען',
+ 'LA' => 'לאַאס',
+ 'LB' => 'לבנון',
+ 'LI' => 'ליכטנשטיין',
+ 'LK' => 'סרי־לאַנקאַ',
+ 'LR' => 'ליבעריע',
+ 'LS' => 'לעסאטא',
+ 'LT' => 'ליטע',
+ 'LU' => 'לוקסעמבורג',
+ 'LV' => 'לעטלאַנד',
+ 'LY' => 'ליביע',
+ 'MA' => 'מאַראקא',
+ 'MC' => 'מאנאַקא',
+ 'MD' => 'מאלדאווע',
+ 'ME' => 'מאנטענעגרא',
+ 'MG' => 'מאַדאַגאַסקאַר',
+ 'MH' => 'מאַרשאַל אינזלען',
+ 'MK' => 'מאַקעדאניע',
+ 'ML' => 'מאַלי',
+ 'MM' => 'מיאַנמאַר',
+ 'MN' => 'מאנגאליי',
+ 'MQ' => 'מאַרטיניק',
+ 'MR' => 'מאַריטאַניע',
+ 'MS' => 'מאנטסעראַט',
+ 'MT' => 'מאַלטאַ',
+ 'MU' => 'מאריציוס',
+ 'MV' => 'מאַלדיוון',
+ 'MW' => 'מאַלאַווי',
+ 'MX' => 'מעקסיקע',
+ 'MY' => 'מאַלייזיע',
+ 'MZ' => 'מאזאַמביק',
+ 'NA' => 'נאַמיביע',
+ 'NC' => 'נײַ קאַלעדאניע',
+ 'NE' => 'ניזשער',
+ 'NF' => 'נארפֿאלק אינזל',
+ 'NG' => 'ניגעריע',
+ 'NI' => 'ניקאַראַגוע',
+ 'NL' => 'האלאַנד',
+ 'NO' => 'נארוועגיע',
+ 'NP' => 'נעפּאַל',
+ 'NZ' => 'ניו זילאַנד',
+ 'PA' => 'פּאַנאַמאַ',
+ 'PE' => 'פּערו',
+ 'PF' => 'פֿראַנצויזישע פּאלינעזיע',
+ 'PG' => 'פּאַפּואַ נײַ גינע',
+ 'PH' => 'פֿיליפּינען',
+ 'PK' => 'פּאַקיסטאַן',
+ 'PL' => 'פּוילן',
+ 'PN' => 'פּיטקערן אינזלען',
+ 'PR' => 'פּארטא־ריקא',
+ 'PT' => 'פּארטוגאַל',
+ 'PY' => 'פּאַראַגווײַ',
+ 'QA' => 'קאַטאַר',
+ 'RE' => 'רעאוניאן',
+ 'RO' => 'רומעניע',
+ 'RS' => 'סערביע',
+ 'RU' => 'רוסלאַנד',
+ 'RW' => 'רוואַנדע',
+ 'SB' => 'סאלאמאן אינזלען',
+ 'SC' => 'סיישעל',
+ 'SD' => 'סודאַן',
+ 'SE' => 'שוועדן',
+ 'SG' => 'סינגאַפּור',
+ 'SH' => 'סט העלענע',
+ 'SI' => 'סלאוועניע',
+ 'SK' => 'סלאוואַקיי',
+ 'SL' => 'סיערע לעאנע',
+ 'SM' => 'סאַן מאַרינא',
+ 'SN' => 'סענעגאַל',
+ 'SO' => 'סאמאַליע',
+ 'SR' => 'סורינאַם',
+ 'SS' => 'דרום־סודאַן',
+ 'ST' => 'סאַא טאמע און פּרינסיפּע',
+ 'SV' => 'על סאַלוואַדאר',
+ 'SY' => 'סיריע',
+ 'SZ' => 'סוואַזילאַנד',
+ 'TD' => 'טשאַד',
+ 'TG' => 'טאגא',
+ 'TH' => 'טיילאַנד',
+ 'TM' => 'טורקמעניסטאַן',
+ 'TN' => 'טוניסיע',
+ 'TO' => 'טאנגאַ',
+ 'TR' => 'טערקיי',
+ 'TT' => 'טרינידאַד און טאבאַגא',
+ 'TV' => 'טואוואַלו',
+ 'TZ' => 'טאַנזאַניע',
+ 'UA' => 'אוקראַינע',
+ 'UG' => 'אוגאַנדע',
+ 'US' => 'פֿ"ש',
+ 'UY' => 'אורוגוויי',
+ 'VA' => 'וואַטיקאַן שטאָט',
+ 'VE' => 'ווענעזועלע',
+ 'VN' => 'וויעטנאַם',
+ 'VU' => 'וואַנואַטו',
+ 'WS' => 'סאַמאאַ',
+ 'XK' => 'קאסאווא',
+ 'YE' => 'תימן',
+ 'YT' => 'מאַיאט',
+ 'ZA' => 'דרום־אַפֿריקע',
+ 'ZM' => 'זאַמביע',
+ 'ZW' => 'זימבאַבווע',
+);
+
+$timeUnits = array(
+ 'day-future-one' => 'אין {0} טאָג אַרום',
+ 'day-future-other' => 'אין {0} טעג אַרום',
+ 'month-future-one' => 'איבער {0} חודש',
+ 'month-future-other' => 'איבער {0} חדשים',
+ 'month-narrow-future-one' => 'איבער {0} חודש',
+ 'month-narrow-future-other' => 'איבער {0} חדשים',
+ 'month-narrow-past-one' => 'פֿאַר {0} חודש',
+ 'month-narrow-past-other' => 'פֿאַר {0} חדשים',
+ 'month-past-one' => 'פֿאַר {0} חודש',
+ 'month-past-other' => 'פֿאַר {0} חדשים',
+ 'month-short-future-one' => 'איבער {0} חודש',
+ 'month-short-future-other' => 'איבער {0} חדשים',
+ 'month-short-past-one' => 'פֿאַר {0} חודש',
+ 'month-short-past-other' => 'פֿאַר {0} חדשים',
+ 'year-future-one' => 'איבער {0} יאָר',
+ 'year-future-other' => 'איבער {0} יאָר',
+ 'year-narrow-future-one' => 'איבער {0} יאָר',
+ 'year-narrow-future-other' => 'איבער {0} יאָר',
+ 'year-narrow-past-one' => 'פֿאַר {0} יאָר',
+ 'year-narrow-past-other' => 'פֿאַר {0} יאָר',
+ 'year-past-one' => 'פֿאַר {0} יאָר',
+ 'year-past-other' => 'פֿאַר {0} יאָר',
+ 'year-short-future-one' => 'איבער א יאָר',
+ 'year-short-future-other' => 'איבער {0} יאָר',
+ 'year-short-past-one' => 'פֿאַר {0} יאָר',
+ 'year-short-past-other' => 'פֿאַר {0} יאָר',
+);
diff --git a/MLEB/cldr/CldrNames/CldrNamesYo.php b/MLEB/cldr/CldrNames/CldrNamesYo.php
new file mode 100644
index 00000000..da31b891
--- /dev/null
+++ b/MLEB/cldr/CldrNames/CldrNamesYo.php
@@ -0,0 +1,394 @@
+<?php
+
+$languageNames = array(
+ 'af' => 'Èdè Afrikani',
+ 'ak' => 'Èdè Akani',
+ 'am' => 'Èdè Amariki',
+ 'ar' => 'Èdè Arabiki',
+ 'as' => 'Ti Assam',
+ 'az' => 'Èdè Azerbaijani',
+ 'be' => 'Èdè Belarusi',
+ 'bg' => 'Èdè Bugaria',
+ 'bn' => 'Èdè Bengali',
+ 'br' => 'Èdè Bretoni',
+ 'bs' => 'Èdè Bosnia',
+ 'ca' => 'Èdè Catala',
+ 'cs' => 'Èdè seeki',
+ 'cy' => 'Èdè Welshi',
+ 'da' => 'Èdè Ilẹ̀ Denmark',
+ 'de' => 'Èdè Ilẹ̀ Gemani',
+ 'el' => 'Èdè Giriki',
+ 'en' => 'Èdè Gẹ̀ẹ́sì',
+ 'eo' => 'Èdè Esperanto',
+ 'es' => 'Èdè Sipanisi',
+ 'et' => 'Èdè Estonia',
+ 'eu' => 'Èdè Baski',
+ 'fa' => 'Èdè Pasia',
+ 'fi' => 'Èdè Finisi',
+ 'fil' => 'Èdè Tagalogi',
+ 'fo' => 'Èdè Faroesi',
+ 'fr' => 'Èdè Faransé',
+ 'fy' => 'Èdè Frisia',
+ 'ga' => 'Èdè Ireland',
+ 'gd' => 'Èdè Gaelik ti Ilu Scotland',
+ 'gl' => 'Èdè Galicia',
+ 'gn' => 'Èdè Guarani',
+ 'gu' => 'Èdè Gujarati',
+ 'ha' => 'Èdè Hausa',
+ 'he' => 'Èdè Heberu',
+ 'hi' => 'Èdè Hindi',
+ 'hr' => 'Èdè Kroatia',
+ 'hu' => 'Èdè Hungaria',
+ 'hy' => 'Èdè Ile Armenia',
+ 'ia' => 'Èdè pipo',
+ 'id' => 'Èdè Indonasia',
+ 'ie' => 'Iru Èdè',
+ 'ig' => 'Èdè Ibo',
+ 'is' => 'Èdè Icelandic',
+ 'it' => 'Èdè Italiani',
+ 'ja' => 'Èdè Japanisi',
+ 'jv' => 'Èdè Javanasi',
+ 'ka' => 'Èdè Georgia',
+ 'km' => 'Èdè kameri',
+ 'kn' => 'Èdè Kannada',
+ 'ko' => 'Èdè Koria',
+ 'la' => 'Èdè Latini',
+ 'lt' => 'Èdè Lithuania',
+ 'lv' => 'Èdè Latvianu',
+ 'mk' => 'Èdè Macedonia',
+ 'mr' => 'Èdè marathi',
+ 'ms' => 'Èdè Malaya',
+ 'mt' => 'Èdè Malta',
+ 'my' => 'Èdè Bumiisi',
+ 'ne' => 'Èdè Nepali',
+ 'nl' => 'Èdè Duki',
+ 'no' => 'Èdè Norway',
+ 'oc' => 'Èdè Occitani',
+ 'pa' => 'Èdè Punjabi',
+ 'pl' => 'Èdè Ilẹ̀ Polandi',
+ 'pt' => 'Èdè Pọtugi',
+ 'ro' => 'Èdè Romania',
+ 'ru' => 'Èdè ̣Rọọsia',
+ 'rw' => 'Èdè Ruwanda',
+ 'sa' => 'Èdè awon ara Indo',
+ 'sd' => 'Èdè Sindhi',
+ 'sh' => 'Èdè Serbo-Croatiani',
+ 'si' => 'Èdè Sinhalese',
+ 'sk' => 'Èdè Slovaki',
+ 'sl' => 'Èdè Slovenia',
+ 'so' => 'Èdè ara Somalia',
+ 'sq' => 'Èdè Albania',
+ 'sr' => 'Èdè Serbia',
+ 'st' => 'Èdè Sesoto',
+ 'su' => 'Èdè Sudani',
+ 'sv' => 'Èdè Suwidiisi',
+ 'sw' => 'Èdè Swahili',
+ 'ta' => 'Èdè Tamili',
+ 'te' => 'Èdè Telugu',
+ 'th' => 'Èdè Tai',
+ 'ti' => 'Èdè Tigrinya',
+ 'tk' => 'Èdè Turkmen',
+ 'tlh' => 'Èdè Klingoni',
+ 'tr' => 'Èdè Tọọkisi',
+ 'uk' => 'Èdè Ukania',
+ 'ur' => 'Èdè Udu',
+ 'uz' => 'Èdè Uzbek',
+ 'vi' => 'Èdè Jetinamu',
+ 'xh' => 'Èdè Xhosa',
+ 'yi' => 'Èdè Yiddishi',
+ 'yo' => 'Èdè Yorùbá',
+ 'zh' => 'Èdè Mandari',
+ 'zu' => 'Èdè Ṣulu',
+);
+
+$currencyNames = array(
+ 'AED' => 'Diami ti Awon Orílẹ́ède Arabu',
+ 'AOA' => 'Wansa ti Orílẹ́ède Àngólà',
+ 'AUD' => 'Dọla ti Orílẹ́ède Ástràlìá',
+ 'BHD' => 'Dina ti Orílẹ́ède Báránì',
+ 'BIF' => 'Faransi ti Orílẹ́ède Bùùrúndì',
+ 'BWP' => 'Pula ti Orílẹ́ède Bọ̀tìsúwánà',
+ 'CAD' => 'Dọla ti Orílẹ́ède Kánádà',
+ 'CDF' => 'Faransi ti Orílẹ́ède Kóngò',
+ 'CHF' => 'Faransi ti Orílẹ́ède Siwisi',
+ 'CNY' => 'Reminibi ti Orílẹ́ède ṣáínà',
+ 'CVE' => 'Kabofediano ti Orílẹ́ède Esuodo',
+ 'DJF' => 'Faransi ti Orílẹ́ède Dibouti',
+ 'DZD' => 'Dina ti Orílẹ́ède Àlùgèríánì',
+ 'EGP' => 'pọọn ti Orílẹ́ède Egipiti',
+ 'ERN' => 'Nakifa ti Orílẹ́ède Eriteriani',
+ 'ETB' => 'Biri ti Orílẹ́ède Eutopia',
+ 'EUR' => 'Uro',
+ 'GBP' => 'Pọọn ti Orílẹ́ède Bírítísì',
+ 'GHC' => 'ṣidi ti Orílẹ́ède Gana',
+ 'GMD' => 'Dalasi ti Orílẹ́ède Gamibia',
+ 'GNS' => 'Faransi ti Orílẹ́ède Gini',
+ 'INR' => 'Rupi ti Orílẹ́ède Indina',
+ 'JPY' => 'Yeni ti Orílẹ́ède Japani',
+ 'KES' => 'ṣiili ti Orílẹ́ède Kenya',
+ 'KMF' => 'Faransi ti Orílẹ́ède ṣomoriani',
+ 'LRD' => 'Dọla ti Orílẹ́ède Liberia',
+ 'LSL' => 'Loti ti Orílẹ́ède Lesoto',
+ 'LYD' => 'Dina ti Orílẹ́ède Libiya',
+ 'MAD' => 'Dirami ti Orílẹ́ède Moroko',
+ 'MGA' => 'Faransi ti Orílẹ́ède Malagasi',
+ 'MRO' => 'Ouguiya ti Orílẹ́ède Maritania',
+ 'MUR' => 'Rupi ti Orílẹ́ède Maritiusi',
+ 'MWK' => 'Kaṣa ti Orílẹ́ède Malawi',
+ 'MZM' => 'Metika ti Orílẹ́ède Mosamibiki',
+ 'NAD' => 'Dọla ti Orílẹ́ède Namibia',
+ 'NGN' => 'Naira ti Orílẹ́ède Nàìjíríà',
+ 'RWF' => 'Faransi ti Orílẹ́ède Ruwanda',
+ 'SAR' => 'Riya ti Orílẹ́ède Saudi',
+ 'SCR' => 'Rupi ti Orílẹ́ède Sayiselesi',
+ 'SDG' => 'Dina ti Orílẹ́ède Sudani',
+ 'SDP' => 'Pọọun ti Orílẹ́ède Sudani',
+ 'SHP' => 'Pọọun ti Orílẹ́ède ̣Elena',
+ 'SLL' => 'Lioni',
+ 'SOS' => 'Sile ti Orílẹ́ède Somali',
+ 'STD' => 'Dobira ti Orílẹ́ède Sao tome Ati Pirisipe',
+ 'SZL' => 'Lilangeni',
+ 'TND' => 'Dina ti Orílẹ́ède Tunisia',
+ 'TZS' => 'Sile ti Orílẹ́ède Tansania',
+ 'UGX' => 'Siile ti Orílẹ́ède Uganda',
+ 'USD' => 'Dọla ti Orílẹ́ède Amerika',
+ 'XAF' => 'Faransi ti Orílẹ́ède BEKA',
+ 'XOF' => 'Faransi ti Orílẹ́ède BIKEAO',
+ 'ZAR' => 'Randi ti Orílẹ́ède Ariwa Afirika',
+ 'ZMK' => 'Kawaṣa ti Orílẹ́ède Saabia (1968–2012)',
+ 'ZMW' => 'Kawaṣa ti Orílẹ́ède Saabia',
+ 'ZWD' => 'Dọla ti Orílẹ́ède Siibabuwe',
+);
+
+$currencySymbols = array(
+ 'NGN' => '₦',
+);
+
+$countryNames = array(
+ 'AD' => 'Orílẹ́ède Ààndórà',
+ 'AE' => 'Orílẹ́ède Ẹmirate ti Awọn Arabu',
+ 'AF' => 'Orílẹ́ède Àfùgànístánì',
+ 'AG' => 'Orílẹ́ède Ààntígúà àti Báríbúdà',
+ 'AI' => 'Orílẹ́ède Ààngúlílà',
+ 'AL' => 'Orílẹ́ède Àlùbàníánì',
+ 'AM' => 'Orílẹ́ède Améníà',
+ 'AN' => 'Orílẹ́ède Nedalandi ti Antelisi',
+ 'AO' => 'Orílẹ́ède Ààngólà',
+ 'AR' => 'Orílẹ́ède Agentínà',
+ 'AS' => 'Sámóánì ti Orílẹ́ède Àméríkà',
+ 'AT' => 'Orílẹ́ède Asítíríà',
+ 'AU' => 'Orílẹ́ède Ástràlìá',
+ 'AW' => 'Orílẹ́ède Árúbà',
+ 'AZ' => 'Orílẹ́ède Asẹ́bájánì',
+ 'BA' => 'Orílẹ́ède Bọ̀síníà àti Ẹtisẹgófínà',
+ 'BB' => 'Orílẹ́ède Bábádósì',
+ 'BD' => 'Orílẹ́ède Bángáládésì',
+ 'BE' => 'Orílẹ́ède Bégíọ́mù',
+ 'BF' => 'Orílẹ́ède Bùùkíná Fasò',
+ 'BG' => 'Orílẹ́ède Bùùgáríà',
+ 'BH' => 'Orílẹ́ède Báránì',
+ 'BI' => 'Orílẹ́ède Bùùrúndì',
+ 'BJ' => 'Orílẹ́ède Bẹ̀nẹ̀',
+ 'BM' => 'Orílẹ́ède Bémúdà',
+ 'BN' => 'Orílẹ́ède Búrúnẹ́lì',
+ 'BO' => 'Orílẹ́ède Bọ̀lífíyà',
+ 'BR' => 'Orílẹ́ède Bàràsílì',
+ 'BS' => 'Orílẹ́ède Bàhámásì',
+ 'BT' => 'Orílẹ́ède Bútánì',
+ 'BW' => 'Orílẹ́ède Bọ̀tìsúwánà',
+ 'BY' => 'Orílẹ́ède Bélárúsì',
+ 'BZ' => 'Orílẹ́ède Bèlísẹ̀',
+ 'CA' => 'Orílẹ́ède Kánádà',
+ 'CD' => 'Orilẹ́ède Kóngò',
+ 'CF' => 'Orílẹ́ède Àrin gùngun Áfíríkà',
+ 'CG' => 'Orílẹ́ède Kóngò',
+ 'CH' => 'Orílẹ́ède switiṣilandi',
+ 'CI' => 'Orílẹ́ède Kóútè forà',
+ 'CK' => 'Orílẹ́ède Etíokun Kùúkù',
+ 'CL' => 'Orílẹ́ède ṣílè',
+ 'CM' => 'Orílẹ́ède Kamerúúnì',
+ 'CN' => 'Orílẹ́ède ṣáínà',
+ 'CO' => 'Orílẹ́ède Kòlómíbìa',
+ 'CR' => 'Orílẹ́ède Kuusita Ríkà',
+ 'CU' => 'Orílẹ́ède Kúbà',
+ 'CV' => 'Orílẹ́ède Etíokun Kápé féndè',
+ 'CY' => 'Orílẹ́ède Kúrúsì',
+ 'CZ' => 'Orílẹ́ède ṣẹ́ẹ́kì',
+ 'DE' => 'Orílẹ́ède Gemani',
+ 'DJ' => 'Orílẹ́ède Díbọ́ótì',
+ 'DK' => 'Orílẹ́ède Dẹ́mákì',
+ 'DM' => 'Orílẹ́ède Dòmíníkà',
+ 'DO' => 'Orilẹ́ède Dòmíníkánì',
+ 'DZ' => 'Orílẹ́ède Àlùgèríánì',
+ 'EC' => 'Orílẹ́ède Ekuádò',
+ 'EE' => 'Orílẹ́ède Esitonia',
+ 'EG' => 'Orílẹ́ède Égípítì',
+ 'ER' => 'Orílẹ́ède Eritira',
+ 'ES' => 'Orílẹ́ède Sipani',
+ 'ET' => 'Orílẹ́ède Etopia',
+ 'FI' => 'Orílẹ́ède Filandi',
+ 'FJ' => 'Orílẹ́ède Fiji',
+ 'FK' => 'Orílẹ́ède Etikun Fakalandi',
+ 'FM' => 'Orílẹ́ède Makoronesia',
+ 'FR' => 'Orílẹ́ède Faranse',
+ 'GA' => 'Orílẹ́ède Gabon',
+ 'GB' => 'Orílẹ́ède Omobabirin',
+ 'GD' => 'Orílẹ́ède Genada',
+ 'GE' => 'Orílẹ́ède Gọgia',
+ 'GF' => 'Orílẹ́ède Firenṣi Guana',
+ 'GH' => 'Orílẹ́ède Gana',
+ 'GI' => 'Orílẹ́ède Gibaratara',
+ 'GL' => 'Orílẹ́ède Gerelandi',
+ 'GM' => 'Orílẹ́ède Gambia',
+ 'GN' => 'Orílẹ́ède Gene',
+ 'GP' => 'Orílẹ́ède Gadelope',
+ 'GQ' => 'Orílẹ́ède Ekutoria Gini',
+ 'GR' => 'Orílẹ́ède Geriisi',
+ 'GT' => 'Orílẹ́ède Guatemala',
+ 'GU' => 'Orílẹ́ède Guamu',
+ 'GW' => 'Orílẹ́ède Gene-Busau',
+ 'GY' => 'Orílẹ́ède Guyana',
+ 'HN' => 'Orílẹ́ède Hondurasi',
+ 'HR' => 'Orílẹ́ède Kòróátíà',
+ 'HT' => 'Orílẹ́ède Haati',
+ 'HU' => 'Orílẹ́ède Hungari',
+ 'ID' => 'Orílẹ́ède Indonesia',
+ 'IE' => 'Orílẹ́ède Ailandi',
+ 'IL' => 'Orílẹ́ède Iserẹli',
+ 'IN' => 'Orílẹ́ède India',
+ 'IO' => 'Orílẹ́ède Etíkun Índíánì ti Ìlú Bírítísì',
+ 'IQ' => 'Orílẹ́ède Iraki',
+ 'IR' => 'Orílẹ́ède Irani',
+ 'IS' => 'Orílẹ́ède Aṣilandi',
+ 'IT' => 'Orílẹ́ède Italiyi',
+ 'JM' => 'Orílẹ́ède Jamaika',
+ 'JO' => 'Orílẹ́ède Jọdani',
+ 'JP' => 'Orílẹ́ède Japani',
+ 'KE' => 'Orílẹ́ède Kenya',
+ 'KG' => 'Orílẹ́ède Kuriṣisitani',
+ 'KH' => 'Orílẹ́ède Kàmùbódíà',
+ 'KI' => 'Orílẹ́ède Kiribati',
+ 'KM' => 'Orílẹ́ède Kòmòrósì',
+ 'KN' => 'Orílẹ́ède Kiiti ati Neefi',
+ 'KP' => 'Orílẹ́ède Guusu Kọria',
+ 'KR' => 'Orílẹ́ède Ariwa Kọria',
+ 'KW' => 'Orílẹ́ède Kuweti',
+ 'KY' => 'Orílẹ́ède Etíokun Kámánì',
+ 'KZ' => 'Orílẹ́ède Kaṣaṣatani',
+ 'LA' => 'Orílẹ́ède Laosi',
+ 'LB' => 'Orílẹ́ède Lebanoni',
+ 'LC' => 'Orílẹ́ède Luṣia',
+ 'LI' => 'Orílẹ́ède Lẹṣitẹnisiteni',
+ 'LK' => 'Orílẹ́ède Siri Lanka',
+ 'LR' => 'Orílẹ́ède Laberia',
+ 'LS' => 'Orílẹ́ède Lesoto',
+ 'LT' => 'Orílẹ́ède Lituania',
+ 'LU' => 'Orílẹ́ède Lusemogi',
+ 'LV' => 'Orílẹ́ède Latifia',
+ 'LY' => 'Orílẹ́ède Libiya',
+ 'MA' => 'Orílẹ́ède Moroko',
+ 'MC' => 'Orílẹ́ède Monako',
+ 'MD' => 'Orílẹ́ède Modofia',
+ 'MG' => 'Orílẹ́ède Madasika',
+ 'MH' => 'Orílẹ́ède Etikun Máṣali',
+ 'MK' => 'Orílẹ́ède Masidonia',
+ 'ML' => 'Orílẹ́ède Mali',
+ 'MM' => 'Orílẹ́ède Manamari',
+ 'MN' => 'Orílẹ́ède Mogolia',
+ 'MP' => 'Orílẹ́ède Etikun Guusu Mariana',
+ 'MQ' => 'Orílẹ́ède Matinikuwi',
+ 'MR' => 'Orílẹ́ède Maritania',
+ 'MS' => 'Orílẹ́ède Motserati',
+ 'MT' => 'Orílẹ́ède Malata',
+ 'MU' => 'Orílẹ́ède Maritiusi',
+ 'MV' => 'Orílẹ́ède Maladifi',
+ 'MW' => 'Orílẹ́ède Malawi',
+ 'MX' => 'Orílẹ́ède Mesiko',
+ 'MY' => 'Orílẹ́ède Malasia',
+ 'MZ' => 'Orílẹ́ède Moṣamibiku',
+ 'NA' => 'Orílẹ́ède Namibia',
+ 'NC' => 'Orílẹ́ède Kaledonia Titun',
+ 'NE' => 'Orílẹ́ède Nàìjá',
+ 'NF' => 'Orílẹ́ède Etikun Nọ́úfókì',
+ 'NG' => 'Orílẹ́ède Nàìjíríà',
+ 'NI' => 'Orílẹ́ède NIkaragua',
+ 'NL' => 'Orílẹ́ède Nedalandi',
+ 'NO' => 'Orílẹ́ède Nọọwii',
+ 'NP' => 'Orílẹ́ède Nepa',
+ 'NR' => 'Orílẹ́ède Nauru',
+ 'NU' => 'Orílẹ́ède Niue',
+ 'NZ' => 'Orílẹ́ède ṣilandi Titun',
+ 'OM' => 'Orílẹ́ède Ọọma',
+ 'PA' => 'Orílẹ́ède Panama',
+ 'PE' => 'Orílẹ́ède Peru',
+ 'PF' => 'Orílẹ́ède Firenṣi Polinesia',
+ 'PG' => 'Orílẹ́ède Paapu ti Giini',
+ 'PH' => 'Orílẹ́ède filipini',
+ 'PK' => 'Orílẹ́ède Pakisitan',
+ 'PL' => 'Orílẹ́ède Polandi',
+ 'PM' => 'Orílẹ́ède Pẹẹri ati mikuloni',
+ 'PN' => 'Orílẹ́ède Pikarini',
+ 'PR' => 'Orílẹ́ède Pọto Riko',
+ 'PS' => 'Orílẹ́ède Iwọorun Pakisitian ati Gaṣa',
+ 'PT' => 'Orílẹ́ède Pọtugi',
+ 'PW' => 'Orílẹ́ède Paalu',
+ 'PY' => 'Orílẹ́ède Paraguye',
+ 'QA' => 'Orílẹ́ède Kota',
+ 'RE' => 'Orílẹ́ède Riuniyan',
+ 'RO' => 'Orílẹ́ède Romaniya',
+ 'RU' => 'Orílẹ́ède Rọṣia',
+ 'RW' => 'Orílẹ́ède Ruwanda',
+ 'SA' => 'Orílẹ́ède Saudi Arabia',
+ 'SB' => 'Orílẹ́ède Etikun Solomoni',
+ 'SC' => 'Orílẹ́ède seṣẹlẹsi',
+ 'SD' => 'Orílẹ́ède Sudani',
+ 'SE' => 'Orílẹ́ède Swidini',
+ 'SG' => 'Orílẹ́ède Singapo',
+ 'SH' => 'Orílẹ́ède Hẹlena',
+ 'SI' => 'Orílẹ́ède Silofania',
+ 'SK' => 'Orílẹ́ède Silofakia',
+ 'SL' => 'Orílẹ́ède Siria looni',
+ 'SM' => 'Orílẹ́ède Sani Marino',
+ 'SN' => 'Orílẹ́ède Sẹnẹga',
+ 'SO' => 'Orílẹ́ède Somalia',
+ 'SR' => 'Orílẹ́ède Surinami',
+ 'SS' => 'Gúúsù Sudan',
+ 'ST' => 'Orílẹ́ède Sao tomi ati piriiṣipi',
+ 'SV' => 'Orílẹ́ède Ẹẹsáfádò',
+ 'SY' => 'Orílẹ́ède Siria',
+ 'SZ' => 'Orílẹ́ède Saṣiland',
+ 'TC' => 'Orílẹ́ède Tọọki ati Etikun Kakọsi',
+ 'TD' => 'Orílẹ́ède ṣààdì',
+ 'TG' => 'Orílẹ́ède Togo',
+ 'TH' => 'Orílẹ́ède Tailandi',
+ 'TJ' => 'Orílẹ́ède Takisitani',
+ 'TK' => 'Orílẹ́ède Tokelau',
+ 'TL' => 'Orílẹ́ède ÌlàOòrùn Tímọ̀',
+ 'TM' => 'Orílẹ́ède Tọọkimenisita',
+ 'TN' => 'Orílẹ́ède Tuniṣia',
+ 'TO' => 'Orílẹ́ède Tonga',
+ 'TR' => 'Orílẹ́ède Tọọki',
+ 'TT' => 'Orílẹ́ède Tirinida ati Tobaga',
+ 'TV' => 'Orílẹ́ède Tufalu',
+ 'TW' => 'Orílẹ́ède Taiwani',
+ 'TZ' => 'Orílẹ́ède Tanṣania',
+ 'UA' => 'Orílẹ́ède Ukarini',
+ 'UG' => 'Orílẹ́ède Uganda',
+ 'US' => 'Orílẹ́ède Orilẹede Amerika',
+ 'UY' => 'Orílẹ́ède Nruguayi',
+ 'UZ' => 'Orílẹ́ède Nṣibẹkisitani',
+ 'VA' => 'Orílẹ́ède Fatikani',
+ 'VC' => 'Orílẹ́ède Fisẹnnti ati Genadina',
+ 'VE' => 'Orílẹ́ède Fẹnẹṣuẹla',
+ 'VG' => 'Orílẹ́ède Etíkun Fágínì ti ìlú Bírítísì',
+ 'VI' => 'Orílẹ́ède Etikun Fagini ti Amẹrika',
+ 'VN' => 'Orílẹ́ède Fẹtinami',
+ 'VU' => 'Orílẹ́ède Faniatu',
+ 'WF' => 'Orílẹ́ède Wali ati futuna',
+ 'WS' => 'Orílẹ́ède Samọ',
+ 'YE' => 'Orílẹ́ède yemeni',
+ 'YT' => 'Orílẹ́ède Mayote',
+ 'ZA' => 'Orílẹ́ède Ariwa Afirika',
+ 'ZM' => 'Orílẹ́ède ṣamibia',
+ 'ZW' => 'Orílẹ́ède ṣimibabe',
+);
diff --git a/MLEB/cldr/CldrNames/CldrNamesZh_hans.php b/MLEB/cldr/CldrNames/CldrNamesZh_hans.php
new file mode 100644
index 00000000..c6d2ac85
--- /dev/null
+++ b/MLEB/cldr/CldrNames/CldrNamesZh_hans.php
@@ -0,0 +1,1413 @@
+<?php
+
+$languageNames = array(
+ 'aa' => '阿法文',
+ 'ab' => '阿布哈西亚文',
+ 'ace' => '亚齐文',
+ 'ach' => '阿乔利文',
+ 'ada' => '阿当梅文',
+ 'ady' => '阿迪何文',
+ 'ae' => '阿维斯塔文',
+ 'af' => '南非荷兰文',
+ 'afh' => '阿弗里希利文',
+ 'agq' => '亚罕文',
+ 'ain' => '阿伊努文',
+ 'ak' => '阿肯文',
+ 'akk' => '阿卡德文',
+ 'ale' => '阿留申文',
+ 'alt' => '南阿尔泰文',
+ 'am' => '阿姆哈拉文',
+ 'an' => '阿拉贡文',
+ 'ang' => '古英文',
+ 'anp' => '昂加文',
+ 'ar' => '阿拉伯文',
+ 'ar-001' => '现代标准阿拉伯文',
+ 'arc' => '阿拉米文',
+ 'arn' => '马普切文',
+ 'arp' => '阿拉帕霍文',
+ 'arw' => '阿拉瓦克文',
+ 'as' => '阿萨姆文',
+ 'asa' => '阿苏文',
+ 'ast' => '阿斯图里亚思特文',
+ 'av' => '阿瓦尔文',
+ 'awa' => '阿瓦乔文',
+ 'ay' => '艾马拉文',
+ 'az' => '阿塞拜疆文',
+ 'ba' => '巴什客尔文',
+ 'bal' => '俾路支文',
+ 'ban' => '巴里文',
+ 'bas' => '巴萨文',
+ 'bax' => '巴姆穆文',
+ 'bbj' => '戈马拉文',
+ 'be' => '白俄罗斯文',
+ 'bej' => '别札文',
+ 'bem' => '别姆巴文',
+ 'bez' => '贝纳文',
+ 'bfd' => '巴非特文',
+ 'bg' => '保加利亚文',
+ 'bho' => '博杰普尔文',
+ 'bi' => '比斯拉马文',
+ 'bik' => '毕库尔文',
+ 'bin' => '比尼文',
+ 'bkm' => '科姆文',
+ 'bla' => '司克司卡文',
+ 'bm' => '班巴拉文',
+ 'bn' => '孟加拉文',
+ 'bo' => '藏文',
+ 'br' => '布里多尼文',
+ 'bra' => '布拉杰文',
+ 'brx' => '博多文',
+ 'bs' => '波斯尼亚文',
+ 'bss' => '阿库色文',
+ 'bua' => '布里亚特文',
+ 'bug' => '布吉文',
+ 'bum' => '布鲁文',
+ 'byn' => '布林文',
+ 'byv' => '梅敦巴文',
+ 'ca' => '加泰罗尼亚文',
+ 'cad' => '卡多文',
+ 'car' => '巴勒比文',
+ 'cay' => '卡尤加文',
+ 'cch' => '阿灿文',
+ 'ce' => '车臣文',
+ 'ceb' => '宿务文',
+ 'cgg' => '奇加文',
+ 'ch' => '查莫罗文',
+ 'chb' => '契布卡文',
+ 'chg' => '查加文',
+ 'chk' => '楚吾克文',
+ 'chm' => '马里文',
+ 'chn' => '契努克文',
+ 'cho' => '乔克托文',
+ 'chp' => '佩瓦扬文',
+ 'chr' => '彻罗基文',
+ 'chy' => '夏延文',
+ 'ckb' => '索拉尼库尔德文',
+ 'co' => '科西嘉文',
+ 'cop' => '科普特文',
+ 'cr' => '克里族文',
+ 'crh' => '克里米亚土耳其文',
+ 'cs' => '捷克文',
+ 'csb' => '卡舒文',
+ 'cu' => '宗教斯拉夫文',
+ 'cv' => '楚瓦什文',
+ 'cy' => '威尔士文',
+ 'da' => '丹麦文',
+ 'dak' => '达科他文',
+ 'dar' => '达尔格瓦文',
+ 'dav' => '台塔文',
+ 'de' => '德文',
+ 'de-at' => '奥地利德文',
+ 'de-ch' => '瑞士高地德文',
+ 'del' => '特拉华文',
+ 'den' => '司雷夫文',
+ 'dgr' => '多格里布文',
+ 'din' => '丁卡文',
+ 'dje' => '哲尔马文',
+ 'doi' => '多格拉文',
+ 'dsb' => '下索布文',
+ 'dua' => '都阿拉文',
+ 'dum' => '中古荷兰文',
+ 'dv' => '迪维希文',
+ 'dyo' => '朱拉文',
+ 'dyu' => '迪尤拉文',
+ 'dz' => '不丹文',
+ 'dzg' => '达扎葛文',
+ 'ebu' => '恩布文',
+ 'ee' => '埃维文',
+ 'efi' => '埃菲克文',
+ 'egy' => '古埃及文',
+ 'eka' => '埃克丘克文',
+ 'el' => '希腊文',
+ 'elx' => '艾拉米特文',
+ 'en' => '英文',
+ 'en-au' => '澳大利亚英文',
+ 'en-ca' => '加拿大英文',
+ 'en-gb' => '英式英文',
+ 'en-us' => '美式英文',
+ 'enm' => '中古英文',
+ 'eo' => '世界文',
+ 'es' => '西班牙文',
+ 'es-419' => '拉丁美洲西班牙文',
+ 'es-es' => '欧洲西班牙文',
+ 'es-mx' => '墨西哥西班牙文',
+ 'et' => '爱沙尼亚文',
+ 'eu' => '巴斯克文',
+ 'ewo' => '旺杜文',
+ 'fa' => '波斯文',
+ 'fan' => '芳格文',
+ 'fat' => '芳蒂文',
+ 'ff' => '夫拉文',
+ 'fi' => '芬兰文',
+ 'fil' => '菲律宾文',
+ 'fj' => '斐济文',
+ 'fo' => '法罗文',
+ 'fon' => '丰文',
+ 'fr' => '法文',
+ 'fr-ca' => '加拿大法文',
+ 'fr-ch' => '瑞士法文',
+ 'frm' => '中古法文',
+ 'fro' => '古法文',
+ 'frr' => '北弗里西亚文',
+ 'frs' => '东弗里西亚文',
+ 'fur' => '弗留利文',
+ 'fy' => '西弗里西亚文',
+ 'ga' => '爱尔兰文',
+ 'gaa' => '加文',
+ 'gag' => '加告兹文',
+ 'gay' => '迦约文',
+ 'gba' => '葛巴亚文',
+ 'gd' => '苏格兰盖尔文',
+ 'gez' => '吉兹文',
+ 'gil' => '吉尔伯特斯文',
+ 'gl' => '加利西亚文',
+ 'gmh' => '中古高地德文',
+ 'gn' => '瓜拉尼文',
+ 'goh' => '古高地德文',
+ 'gon' => '岗德文',
+ 'gor' => '科洛涅达罗文',
+ 'got' => '哥特文',
+ 'grb' => '格列博文',
+ 'grc' => '古希腊文',
+ 'gsw' => '瑞士德文',
+ 'gu' => '古吉拉特文',
+ 'guz' => '古西文',
+ 'gv' => '马恩岛文',
+ 'gwi' => '吉维克琴文',
+ 'ha' => '豪萨文',
+ 'hai' => '海达文',
+ 'haw' => '夏威夷文',
+ 'he' => '希伯来文',
+ 'hi' => '印地文',
+ 'hil' => '希利盖农文',
+ 'hit' => '赫梯文',
+ 'hmn' => '赫蒙文',
+ 'ho' => '希里莫图文',
+ 'hr' => '克罗地亚文',
+ 'hsb' => '上索布文',
+ 'ht' => '海地文',
+ 'hu' => '匈牙利文',
+ 'hup' => '胡帕文',
+ 'hy' => '亚美尼亚文',
+ 'hz' => '赫雷罗文',
+ 'ia' => '国际文字',
+ 'iba' => '伊班文',
+ 'ibb' => '伊比比奥文',
+ 'id' => '印度尼西亚文',
+ 'ie' => '国际文字(E)',
+ 'ig' => '伊布文',
+ 'ii' => '四川彝文',
+ 'ik' => '依奴皮维克文',
+ 'ilo' => '伊洛干诺文',
+ 'inh' => '印古什文',
+ 'io' => '伊多文',
+ 'is' => '冰岛文',
+ 'it' => '意大利文',
+ 'iu' => '因纽特文',
+ 'ja' => '日文',
+ 'jbo' => '逻辑文',
+ 'jgo' => '恩艮巴',
+ 'jmc' => '马切姆文',
+ 'jpr' => '犹太波斯文',
+ 'jrb' => '犹太阿拉伯文',
+ 'jv' => '爪哇文',
+ 'ka' => '格鲁吉亚文',
+ 'kaa' => '卡拉卡尔帕克文',
+ 'kab' => '卡比尔文',
+ 'kac' => '卡琴文',
+ 'kaj' => '卡捷文',
+ 'kam' => '卡姆巴文',
+ 'kaw' => '卡威文',
+ 'kbd' => '卡巴尔达文',
+ 'kbl' => '加涅姆布文',
+ 'kcg' => '卡塔布文',
+ 'kde' => '马孔德文',
+ 'kea' => '卡布佛得鲁文',
+ 'kfo' => '科罗文',
+ 'kg' => '刚果文',
+ 'kha' => '卡西文',
+ 'kho' => '和田文',
+ 'khq' => '西桑海文',
+ 'ki' => '吉库尤文',
+ 'kj' => '宽亚玛文',
+ 'kk' => '哈萨克文',
+ 'kkj' => '卡库文',
+ 'kl' => '格陵兰文',
+ 'kln' => '卡伦金文',
+ 'km' => '高棉文',
+ 'kmb' => '金邦杜文',
+ 'kn' => '卡纳达文',
+ 'ko' => '韩文',
+ 'koi' => '科米-彼尔米亚克文',
+ 'kok' => '刚卡尼文',
+ 'kos' => '科斯拉伊文',
+ 'kpe' => '克佩列文',
+ 'kr' => '卡努里文',
+ 'krc' => '卡拉恰伊巴尔卡尔文',
+ 'krl' => '卡累利阿文',
+ 'kru' => '库鲁克文',
+ 'ks' => '克什米尔文',
+ 'ksb' => '香巴拉文',
+ 'ksf' => '巴菲亚文',
+ 'ksh' => '科隆文',
+ 'ku' => '库尔德文',
+ 'kum' => '库梅克文',
+ 'kut' => '库特内文',
+ 'kv' => '科米文',
+ 'kw' => '凯尔特文',
+ 'ky' => '吉尔吉斯文',
+ 'la' => '拉丁文',
+ 'lad' => '拉迪诺文',
+ 'lag' => '朗吉文',
+ 'lah' => '拉亨达文',
+ 'lam' => '兰巴文',
+ 'lb' => '卢森堡文',
+ 'lez' => '莱兹依昂文',
+ 'lg' => '卢干达文',
+ 'li' => '淋布尔吉文',
+ 'lkt' => '拉科塔文',
+ 'ln' => '林加拉文',
+ 'lo' => '老挝文',
+ 'lol' => '芒戈文',
+ 'loz' => '洛兹文',
+ 'lt' => '立陶宛文',
+ 'lu' => '鲁巴加丹加文',
+ 'lua' => '鲁巴鲁瓦文',
+ 'lui' => '路易塞诺文',
+ 'lun' => '隆达文',
+ 'luo' => '卢奥文',
+ 'lus' => '卢晒文',
+ 'luy' => '卢雅文',
+ 'lv' => '拉脱维亚文',
+ 'mad' => '马都拉文',
+ 'maf' => '马法文',
+ 'mag' => '马加伊文',
+ 'mai' => '迈蒂利文',
+ 'mak' => '望加锡文',
+ 'man' => '曼丁哥文',
+ 'mas' => '萨伊文',
+ 'mde' => '马坝文',
+ 'mdf' => '莫克沙文',
+ 'mdr' => '曼达尔文',
+ 'men' => '门迪文',
+ 'mer' => '梅鲁文',
+ 'mfe' => '毛里求斯克里奥尔文',
+ 'mg' => '马尔加什文',
+ 'mga' => '中古爱尔兰文',
+ 'mgh' => '马夸文',
+ 'mgo' => '梅塔',
+ 'mh' => '马绍尔文',
+ 'mi' => '毛利文',
+ 'mic' => '米克马克文',
+ 'min' => '米南卡保文',
+ 'mk' => '马其顿文',
+ 'ml' => '马拉雅拉姆文',
+ 'mn' => '蒙古文',
+ 'mnc' => '满文',
+ 'mni' => '曼尼普里文',
+ 'moh' => '摩霍克文',
+ 'mos' => '莫西文',
+ 'mr' => '马拉地文',
+ 'ms' => '马来文',
+ 'mt' => '马耳他文',
+ 'mua' => '蒙当文',
+ 'mul' => '多种语系',
+ 'mus' => '克里克文',
+ 'mwl' => '米兰德斯文',
+ 'mwr' => '马尔瓦利文',
+ 'my' => '缅甸文',
+ 'mye' => '姆耶内文',
+ 'myv' => '俄日亚文',
+ 'na' => '瑙鲁文',
+ 'nap' => '拿波里文',
+ 'naq' => '纳马文',
+ 'nb' => '挪威博克马尔文',
+ 'nd' => '北恩德贝勒文',
+ 'nds' => '低地德文',
+ 'ne' => '尼泊尔文',
+ 'new' => '尼瓦尔文',
+ 'ng' => '恩东加文',
+ 'nia' => '尼亚斯文',
+ 'niu' => '纽埃文',
+ 'nl' => '荷兰文',
+ 'nl-be' => '佛兰芒文',
+ 'nmg' => '夸西奥文',
+ 'nn' => '挪威尼诺斯克文',
+ 'nnh' => '恩甘澎文',
+ 'no' => '挪威文',
+ 'nog' => '诺盖文',
+ 'non' => '古诺尔斯文',
+ 'nqo' => '西非书面文字',
+ 'nr' => '南恩德贝勒文',
+ 'nso' => '北索托文',
+ 'nus' => '努埃尔文',
+ 'nv' => '纳瓦霍文',
+ 'nwc' => '经典尼瓦尔文',
+ 'ny' => '尼扬扎文',
+ 'nym' => '尼亚姆韦齐文',
+ 'nyn' => '尼昂科勒文',
+ 'nyo' => '尼约罗文',
+ 'nzi' => '恩济马文',
+ 'oc' => '奥克西唐文',
+ 'oj' => '奥吉布瓦文',
+ 'om' => '奥洛莫文',
+ 'or' => '奥里亚文',
+ 'os' => '奥塞梯文',
+ 'osa' => '奥萨格文',
+ 'ota' => '奥托曼土耳其文',
+ 'pa' => '旁遮普文',
+ 'pag' => '邦阿西楠文',
+ 'pal' => '帕拉维文',
+ 'pam' => '邦板牙文',
+ 'pap' => '帕皮亚门托文',
+ 'pau' => '帕劳文',
+ 'peo' => '古老波斯文',
+ 'phn' => '腓尼基文',
+ 'pi' => '巴利文',
+ 'pl' => '波兰文',
+ 'pon' => '波纳佩文',
+ 'pro' => '普罗文斯文',
+ 'ps' => '普什图文',
+ 'pt' => '葡萄牙文',
+ 'pt-br' => '巴西葡萄牙文',
+ 'pt-pt' => '欧洲葡萄牙文',
+ 'qu' => '盖丘亚文',
+ 'quc' => '基切文',
+ 'raj' => '拉贾斯坦文',
+ 'rap' => '拉帕努伊文',
+ 'rar' => '拉罗汤加文',
+ 'rm' => '罗曼什文',
+ 'rn' => '基隆迪文',
+ 'ro' => '罗马尼亚文',
+ 'ro-md' => '摩尔多瓦文',
+ 'rof' => '兰博文',
+ 'rom' => '吉普赛文',
+ 'ru' => '俄文',
+ 'rup' => '阿罗马尼亚文',
+ 'rw' => '卢旺达文',
+ 'rwk' => '罗瓦文',
+ 'sa' => '梵文',
+ 'sad' => '散达维文',
+ 'sah' => '雅库特文',
+ 'sam' => '萨玛利亚文',
+ 'saq' => '桑布鲁文',
+ 'sas' => '萨萨克文',
+ 'sat' => '桑塔利文',
+ 'sba' => '甘拜文',
+ 'sbp' => '桑古文',
+ 'sc' => '萨丁文',
+ 'scn' => '西西里文',
+ 'sco' => '苏格兰文',
+ 'sd' => '信德文',
+ 'se' => '北萨米文',
+ 'see' => '塞内卡文',
+ 'seh' => '塞纳文',
+ 'sel' => '塞尔库普文',
+ 'ses' => '东桑海文',
+ 'sg' => '桑戈文',
+ 'sga' => '古爱尔兰文',
+ 'sh' => '塞尔维亚-克罗地亚文',
+ 'shi' => '希尔哈文',
+ 'shn' => '掸文',
+ 'shu' => '乍得阿拉伯文',
+ 'si' => '僧伽罗文',
+ 'sid' => '悉达摩文',
+ 'sk' => '斯洛伐克文',
+ 'sl' => '斯洛文尼亚文',
+ 'sm' => '萨摩亚文',
+ 'sma' => '南萨米文',
+ 'smj' => '律勒欧萨米文',
+ 'smn' => '伊纳里萨米文',
+ 'sms' => '斯科特萨米文',
+ 'sn' => '绍纳文',
+ 'snk' => '索尼基文',
+ 'so' => '索马里文',
+ 'sog' => '古粟特文',
+ 'sq' => '阿尔巴尼亚文',
+ 'sr' => '塞尔维亚文',
+ 'srn' => '苏里南汤加文',
+ 'srr' => '谢列尔文',
+ 'ss' => '斯瓦特文',
+ 'ssy' => '萨霍文',
+ 'st' => '南索托文',
+ 'su' => '巽他文',
+ 'suk' => '苏库马文',
+ 'sus' => '苏苏文',
+ 'sux' => '苏马文',
+ 'sv' => '瑞典文',
+ 'sw' => '斯瓦希里文',
+ 'swb' => '科摩罗文',
+ 'swc' => '刚果斯瓦希里文',
+ 'syc' => '经典叙利亚文',
+ 'syr' => '叙利亚文',
+ 'ta' => '泰米尔文',
+ 'te' => '泰卢固文',
+ 'tem' => '滕内文',
+ 'teo' => '特索文',
+ 'ter' => '特列纳文',
+ 'tet' => '特塔姆文',
+ 'tg' => '塔吉克文',
+ 'th' => '泰文',
+ 'ti' => '提格里尼亚文',
+ 'tig' => '提格雷文',
+ 'tiv' => '蒂夫文',
+ 'tk' => '土库曼文',
+ 'tkl' => '托克劳文',
+ 'tl' => '塔加洛文',
+ 'tlh' => '克林贡文',
+ 'tli' => '特林吉特文',
+ 'tmh' => '塔马奇克文',
+ 'tn' => '塞茨瓦纳文',
+ 'to' => '汤加文',
+ 'tog' => '汤加文(尼亚萨地区)',
+ 'tpi' => '托克皮辛文',
+ 'tr' => '土耳其文',
+ 'trv' => '太鲁阁文',
+ 'ts' => '宗加文',
+ 'tsi' => '蒂姆西亚文',
+ 'tt' => '塔塔尔文',
+ 'tum' => '通布卡文',
+ 'tvl' => '图瓦卢文',
+ 'tw' => '特威文',
+ 'twq' => '北桑海文',
+ 'ty' => '塔西提文',
+ 'tyv' => '图瓦文',
+ 'tzm' => '塔马齐格特文',
+ 'udm' => '乌德穆尔特文',
+ 'ug' => '维吾尔文',
+ 'uga' => '乌加里特文',
+ 'uk' => '乌克兰文',
+ 'umb' => '翁本杜文',
+ 'und' => '未知语言',
+ 'ur' => '乌尔都文',
+ 'uz' => '乌兹别克文',
+ 'vai' => '瓦伊文',
+ 've' => '文达文',
+ 'vi' => '越南文',
+ 'vo' => '沃拉普克文',
+ 'vot' => '沃提克文',
+ 'vun' => '温旧文',
+ 'wa' => '瓦隆文',
+ 'wae' => '瓦尔瑟文',
+ 'wal' => '瓦拉莫文',
+ 'war' => '瓦赖文',
+ 'was' => '瓦绍文',
+ 'wo' => '沃洛夫文',
+ 'xal' => '卡尔梅克文',
+ 'xh' => '科萨文',
+ 'xog' => '索加文',
+ 'yao' => '瑶族文',
+ 'yap' => '雅浦文',
+ 'yav' => '洋卞文',
+ 'ybb' => '耶姆巴文',
+ 'yi' => '依地文',
+ 'yo' => '约鲁巴文',
+ 'yue' => '粤语',
+ 'za' => '壮文',
+ 'zap' => '萨波蒂克文',
+ 'zbl' => '布利斯符号',
+ 'zen' => '泽纳加文',
+ 'zgh' => '标准摩洛哥塔马塞特文',
+ 'zh' => '中文',
+ 'zh-hans' => '简体中文',
+ 'zh-hant' => '繁体中文',
+ 'zu' => '祖鲁文',
+ 'zun' => '祖尼文',
+ 'zxx' => '无语言内容',
+ 'zza' => '扎扎文',
+);
+
+$currencyNames = array(
+ 'ADP' => '安道尔比塞塔',
+ 'AED' => '阿联酋迪拉姆',
+ 'AFA' => '阿富汗尼 (1927–2002)',
+ 'AFN' => '阿富汗尼',
+ 'ALK' => '阿尔巴尼亚列克(1946–1965)',
+ 'ALL' => '阿尔巴尼亚列克',
+ 'AMD' => '亚美尼亚德拉姆',
+ 'ANG' => '荷属安的列斯盾',
+ 'AOA' => '安哥拉宽扎',
+ 'AOK' => '安哥拉宽扎 (1977–1990)',
+ 'AON' => '安哥拉新宽扎 (1990–2000)',
+ 'AOR' => '安哥拉重新调整宽扎 (1995–1999)',
+ 'ARA' => '阿根廷奥斯特拉尔',
+ 'ARL' => '阿根廷法定比索 (1970–1983)',
+ 'ARM' => '阿根廷比索 (1881–1970)',
+ 'ARP' => '阿根廷比索 (1983–1985)',
+ 'ARS' => '阿根廷比索',
+ 'ATS' => '奥地利先令',
+ 'AUD' => '澳大利亚元',
+ 'AWG' => '阿鲁巴基尔德元',
+ 'AZM' => '阿塞拜疆马纳特 (1993–2006)',
+ 'AZN' => '阿塞拜疆马纳特',
+ 'BAD' => '波士尼亚-赫塞哥维纳第纳尔 (1992–1994)',
+ 'BAM' => '波斯尼亚-黑塞哥维那可兑换马克',
+ 'BAN' => '波士尼亚-赫塞哥维纳新第纳尔 (1994–1997)',
+ 'BBD' => '巴巴多斯元',
+ 'BDT' => '孟加拉塔卡',
+ 'BEC' => '比利时法郎(可兑换)',
+ 'BEF' => '比利时法郎',
+ 'BEL' => '比利时法郎(金融)',
+ 'BGL' => '保加利亚硬列弗',
+ 'BGM' => '保加利亚社会党列弗',
+ 'BGN' => '保加利亚新列弗',
+ 'BGO' => '保加利亚列弗 (1879–1952)',
+ 'BHD' => '巴林第纳尔',
+ 'BIF' => '布隆迪法郎',
+ 'BMD' => '百慕大元',
+ 'BND' => '文莱元',
+ 'BOB' => '玻利维亚诺',
+ 'BOL' => '玻利维亚诺 (1863–1963)',
+ 'BOP' => '玻利维亚比索',
+ 'BOV' => '玻利维亚 Mvdol(资金)',
+ 'BRB' => '巴西新克鲁赛罗 (1967–1986)',
+ 'BRC' => '巴西克鲁扎多 (1986–1989)',
+ 'BRE' => '巴西克鲁塞罗 (1990–1993)',
+ 'BRL' => '巴西雷亚尔',
+ 'BRN' => '巴西新克鲁扎多 (1989–1990)',
+ 'BRR' => '巴西克鲁塞罗 (1993–1994)',
+ 'BRZ' => '巴西克鲁塞罗 (1942–1967)',
+ 'BSD' => '巴哈马元',
+ 'BTN' => '不丹努尔特鲁姆',
+ 'BUK' => '缅元',
+ 'BWP' => '博茨瓦纳普拉',
+ 'BYB' => '白俄罗斯新卢布 (1994–1999)',
+ 'BYR' => '白俄罗斯卢布',
+ 'BZD' => '伯利兹元',
+ 'CAD' => '加拿大元',
+ 'CDF' => '刚果法郎',
+ 'CHE' => '欧元 (WIR)',
+ 'CHF' => '瑞士法郎',
+ 'CHW' => '法郎 (WIR)',
+ 'CLE' => '智利埃斯库多',
+ 'CLF' => '智利(资金)',
+ 'CLP' => '智利比索',
+ 'CNY' => '人民币',
+ 'COP' => '哥伦比亚比索',
+ 'COU' => '哥伦比亚币',
+ 'CRC' => '哥斯达黎加科朗',
+ 'CSD' => '旧塞尔维亚第纳尔',
+ 'CSK' => '捷克硬克郎',
+ 'CUC' => '古巴可兑换比索',
+ 'CUP' => '古巴比索',
+ 'CVE' => '佛得角埃斯库多',
+ 'CYP' => '塞浦路斯镑',
+ 'CZK' => '捷克克郎',
+ 'DDM' => '东德奥斯特马克',
+ 'DEM' => '德国马克',
+ 'DJF' => '吉布提法郎',
+ 'DKK' => '丹麦克朗',
+ 'DOP' => '多米尼加比索',
+ 'DZD' => '阿尔及利亚第纳尔',
+ 'ECS' => '厄瓜多尔苏克雷',
+ 'ECV' => '厄瓜多尔 (UVC)',
+ 'EEK' => '爱沙尼亚克朗',
+ 'EGP' => '埃及镑',
+ 'ERN' => '厄立特里亚纳克法',
+ 'ESA' => '西班牙比塞塔(帐户 A)',
+ 'ESB' => '西班牙比塞塔(兑换帐户)',
+ 'ESP' => '西班牙比塞塔',
+ 'ETB' => '埃塞俄比亚比尔',
+ 'EUR' => '欧元',
+ 'FIM' => '芬兰马克',
+ 'FJD' => '斐济元',
+ 'FKP' => '福克兰群岛镑',
+ 'FRF' => '法国法郎',
+ 'GBP' => '英镑',
+ 'GEK' => '乔治亚库蓬拉瑞特',
+ 'GEL' => '格鲁吉亚拉里',
+ 'GHC' => '加纳塞第',
+ 'GHS' => '加纳塞地',
+ 'GIP' => '直布罗陀镑',
+ 'GMD' => '冈比亚达拉西',
+ 'GNF' => '几内亚法郎',
+ 'GNS' => '几内亚西里',
+ 'GQE' => '赤道几内亚埃奎勒',
+ 'GRD' => '希腊德拉克马',
+ 'GTQ' => '危地马拉格查尔',
+ 'GWE' => '葡萄牙几内亚埃斯库多',
+ 'GWP' => '几内亚比绍比索',
+ 'GYD' => '圭亚那元',
+ 'HKD' => '港元',
+ 'HNL' => '洪都拉斯伦皮拉',
+ 'HRD' => '克罗地亚第纳尔',
+ 'HRK' => '克罗地亚库纳',
+ 'HTG' => '海地古德',
+ 'HUF' => '匈牙利福林',
+ 'IDR' => '印度尼西亚盾',
+ 'IEP' => '爱尔兰镑',
+ 'ILP' => '以色列镑',
+ 'ILR' => '以色列谢克尔(1980–1985)',
+ 'ILS' => '以色列新谢克尔',
+ 'INR' => '印度卢比',
+ 'IQD' => '伊拉克第纳尔',
+ 'IRR' => '伊朗里亚尔',
+ 'ISJ' => '冰岛克朗(1918–1981)',
+ 'ISK' => '冰岛克朗',
+ 'ITL' => '意大利里拉',
+ 'JMD' => '牙买加元',
+ 'JOD' => '约旦第纳尔',
+ 'JPY' => '日元',
+ 'KES' => '肯尼亚先令',
+ 'KGS' => '吉尔吉斯斯坦索姆',
+ 'KHR' => '柬埔寨瑞尔',
+ 'KMF' => '科摩罗法郎',
+ 'KPW' => '朝鲜元',
+ 'KRH' => '韩元 (1953–1962)',
+ 'KRO' => '韩元 (1945–1953)',
+ 'KRW' => '韩元',
+ 'KWD' => '科威特第纳尔',
+ 'KYD' => '开曼元',
+ 'KZT' => '哈萨克斯坦坚戈',
+ 'LAK' => '老挝基普',
+ 'LBP' => '黎巴嫩镑',
+ 'LKR' => '斯里兰卡卢比',
+ 'LRD' => '利比里亚元',
+ 'LSL' => '莱索托洛蒂',
+ 'LTL' => '立陶宛立特',
+ 'LTT' => '立陶宛塔咯呐司',
+ 'LUC' => '卢森堡可兑换法郎',
+ 'LUF' => '卢森堡法郎',
+ 'LUL' => '卢森堡金融法郎',
+ 'LVL' => '拉脱维亚拉特',
+ 'LVR' => '拉脱维亚卢布',
+ 'LYD' => '利比亚第纳尔',
+ 'MAD' => '摩洛哥迪拉姆',
+ 'MAF' => '摩洛哥法郎',
+ 'MCF' => '摩纳哥法郎',
+ 'MDC' => '摩尔多瓦库邦',
+ 'MDL' => '摩尔多瓦列伊',
+ 'MGA' => '马达加斯加阿里亚里',
+ 'MGF' => '马达加斯加法郎',
+ 'MKD' => '马其顿第纳尔',
+ 'MKN' => '马其顿第纳尔 (1992–1993)',
+ 'MLF' => '马里法郎',
+ 'MMK' => '缅甸元',
+ 'MNT' => '蒙古图格里克',
+ 'MOP' => '澳门元',
+ 'MRO' => '毛里塔尼亚乌吉亚',
+ 'MTL' => '马耳他里拉',
+ 'MTP' => '马耳他镑',
+ 'MUR' => '毛里求斯卢比',
+ 'MVR' => '马尔代夫卢菲亚',
+ 'MWK' => '马拉维克瓦查',
+ 'MXN' => '墨西哥比索',
+ 'MXP' => '墨西哥银比索 (1861–1992)',
+ 'MXV' => '墨西哥(资金)',
+ 'MYR' => '马来西亚林吉特',
+ 'MZE' => '莫桑比克埃斯库多',
+ 'MZM' => '旧莫桑比克美提卡',
+ 'MZN' => '莫桑比克美提卡',
+ 'NAD' => '纳米比亚元',
+ 'NGN' => '尼日利亚奈拉',
+ 'NIC' => '尼加拉瓜科多巴 (1988–1991)',
+ 'NIO' => '尼加拉瓜金科多巴',
+ 'NLG' => '荷兰盾',
+ 'NOK' => '挪威克朗',
+ 'NPR' => '尼泊尔卢比',
+ 'NZD' => '新西兰元',
+ 'OMR' => '阿曼里亚尔',
+ 'PAB' => '巴拿马巴波亚',
+ 'PEI' => '秘鲁印第',
+ 'PEN' => '秘鲁新索尔',
+ 'PES' => '秘鲁索尔 (1863–1965)',
+ 'PGK' => '巴布亚新几内亚基那',
+ 'PHP' => '菲律宾比索',
+ 'PKR' => '巴基斯坦卢比',
+ 'PLN' => '波兰兹罗提',
+ 'PLZ' => '波兰兹罗提 (1950–1995)',
+ 'PTE' => '葡萄牙埃斯库多',
+ 'PYG' => '巴拉圭瓜拉尼',
+ 'QAR' => '卡塔尔里亚尔',
+ 'RHD' => '罗得西亚元',
+ 'ROL' => '旧罗马尼亚列伊',
+ 'RON' => '罗马尼亚列伊',
+ 'RSD' => '塞尔维亚第纳尔',
+ 'RUB' => '俄罗斯卢布',
+ 'RUR' => '俄国卢布 (1991–1998)',
+ 'RWF' => '卢旺达法郎',
+ 'SAR' => '沙特里亚尔',
+ 'SBD' => '所罗门群岛元',
+ 'SCR' => '塞舌尔卢比',
+ 'SDD' => '苏丹第纳尔 (1992–2007)',
+ 'SDG' => '苏丹镑',
+ 'SDP' => '旧苏丹镑',
+ 'SEK' => '瑞典克朗',
+ 'SGD' => '新加坡元',
+ 'SHP' => '圣赫勒拿群岛磅',
+ 'SIT' => '斯洛文尼亚托拉尔',
+ 'SKK' => '斯洛伐克克朗',
+ 'SLL' => '塞拉利昂利昂',
+ 'SOS' => '索马里先令',
+ 'SRD' => '苏里南元',
+ 'SRG' => '苏里南盾',
+ 'SSP' => '南苏丹镑',
+ 'STD' => '圣多美和普林西比多布拉',
+ 'SUR' => '苏联卢布',
+ 'SVC' => '萨尔瓦多科朗',
+ 'SYP' => '叙利亚镑',
+ 'SZL' => '斯威士兰里兰吉尼',
+ 'THB' => '泰铢',
+ 'TJR' => '塔吉克斯坦卢布',
+ 'TJS' => '塔吉克斯坦索莫尼',
+ 'TMM' => '土库曼斯坦马纳特 (1993–2009)',
+ 'TMT' => '土库曼斯坦马纳特',
+ 'TND' => '突尼斯第纳尔',
+ 'TOP' => '汤加潘加',
+ 'TPE' => '帝汶埃斯库多',
+ 'TRL' => '土耳其里拉 (1922–2005)',
+ 'TRY' => '土耳其里拉',
+ 'TTD' => '特立尼达和多巴哥元',
+ 'TWD' => '新台币',
+ 'TZS' => '坦桑尼亚先令',
+ 'UAH' => '乌克兰格里夫纳',
+ 'UAK' => '乌克兰币',
+ 'UGS' => '乌干达先令 (1966–1987)',
+ 'UGX' => '乌干达先令',
+ 'USD' => '美元',
+ 'USN' => '美元(次日)',
+ 'USS' => '美元(当日)',
+ 'UYI' => '乌拉圭比索(索引单位)',
+ 'UYP' => '乌拉圭比索 (1975–1993)',
+ 'UYU' => '乌拉圭比索',
+ 'UZS' => '乌兹别克斯坦苏姆',
+ 'VEB' => '委内瑞拉玻利瓦尔 (1871–2008)',
+ 'VEF' => '委内瑞拉玻利瓦尔',
+ 'VND' => '越南盾',
+ 'VNN' => '越南盾 (1978–1985)',
+ 'VUV' => '瓦努阿图瓦图',
+ 'WST' => '萨摩亚塔拉',
+ 'XAF' => '中非金融合作法郎',
+ 'XAG' => '银',
+ 'XAU' => '黄金',
+ 'XBA' => '欧洲复合单位',
+ 'XBB' => '欧洲货币联盟',
+ 'XBC' => '欧洲计算单位 (XBC)',
+ 'XBD' => '欧洲计算单位 (XBD)',
+ 'XCD' => '东加勒比元',
+ 'XDR' => '特别提款权',
+ 'XEU' => '欧洲货币单位',
+ 'XFO' => '法国金法郎',
+ 'XFU' => '法国法郎 (UIC)',
+ 'XOF' => '非洲金融共同体法郎',
+ 'XPD' => '钯',
+ 'XPF' => '太平洋法郎',
+ 'XPT' => '铂',
+ 'XRE' => 'RINET 基金',
+ 'XTS' => '测试货币代码',
+ 'XXX' => '未知货币',
+ 'YDD' => '也门第纳尔',
+ 'YER' => '也门里亚尔',
+ 'YUD' => '南斯拉夫硬第纳尔 (1966–1990)',
+ 'YUM' => '南斯拉夫新第纳尔 (1994–2002)',
+ 'YUN' => '南斯拉夫可兑换第纳尔 (1990–1992)',
+ 'YUR' => '南斯拉夫改良第纳尔 (1992–1993)',
+ 'ZAL' => '南非兰特 (金融)',
+ 'ZAR' => '南非兰特',
+ 'ZMK' => '赞比亚克瓦查 (1968–2012)',
+ 'ZMW' => '赞比亚克瓦查',
+ 'ZRN' => '新扎伊尔 (1993–1998)',
+ 'ZRZ' => '扎伊尔 (1971–1993)',
+ 'ZWD' => '津巴布韦元 (1980–2008)',
+ 'ZWL' => '津巴布韦元 (2009)',
+ 'ZWR' => '津巴布韦元 (2008)',
+);
+
+$currencySymbols = array(
+ 'ADP' => 'ADP',
+ 'AED' => 'AED',
+ 'AFN' => 'AFN',
+ 'ALK' => 'ALK',
+ 'ALL' => 'ALL',
+ 'AMD' => 'AMD',
+ 'ANG' => 'ANG',
+ 'AOA' => 'AOA',
+ 'AOK' => 'AOK',
+ 'AON' => 'AON',
+ 'AOR' => 'AOR',
+ 'ARA' => 'ARA',
+ 'ARL' => 'ARL',
+ 'ARM' => 'ARM',
+ 'ARP' => 'ARP',
+ 'ARS' => 'ARS',
+ 'ATS' => 'ATS',
+ 'AUD' => 'AU$',
+ 'AWG' => 'AWG',
+ 'AZM' => 'AZM',
+ 'AZN' => 'AZN',
+ 'BAD' => 'BAD',
+ 'BAM' => 'BAM',
+ 'BAN' => 'BAN',
+ 'BBD' => 'BBD',
+ 'BDT' => 'BDT',
+ 'BEC' => 'BEC',
+ 'BEF' => 'BEF',
+ 'BEL' => 'BEL',
+ 'BGL' => 'BGL',
+ 'BGM' => 'BGM',
+ 'BGN' => 'BGN',
+ 'BGO' => 'BGO',
+ 'BHD' => 'BHD',
+ 'BIF' => 'BIF',
+ 'BMD' => 'BMD',
+ 'BND' => 'BND',
+ 'BOB' => 'BOB',
+ 'BOL' => 'BOL',
+ 'BOP' => 'BOP',
+ 'BOV' => 'BOV',
+ 'BRB' => 'BRB',
+ 'BRC' => 'BRC',
+ 'BRE' => 'BRE',
+ 'BRL' => 'R$',
+ 'BRN' => 'BRN',
+ 'BRR' => 'BRR',
+ 'BRZ' => 'BRZ',
+ 'BSD' => 'BSD',
+ 'BTN' => 'BTN',
+ 'BWP' => 'BWP',
+ 'BYB' => 'BYB',
+ 'BYR' => 'BYR',
+ 'BZD' => 'BZD',
+ 'CAD' => 'CA$',
+ 'CDF' => 'CDF',
+ 'CHE' => 'CHE',
+ 'CHF' => 'CHF',
+ 'CHW' => 'CHW',
+ 'CLE' => 'CLE',
+ 'CLF' => 'CLF',
+ 'CLP' => 'CLP',
+ 'CNY' => '¥',
+ 'COP' => 'COP',
+ 'COU' => 'COU',
+ 'CRC' => 'CRC',
+ 'CSD' => 'CSD',
+ 'CSK' => 'CSK',
+ 'CUC' => 'CUC',
+ 'CUP' => 'CUP',
+ 'CVE' => 'CVE',
+ 'CYP' => 'CYP',
+ 'CZK' => 'CZK',
+ 'DDM' => 'DDM',
+ 'DEM' => 'DEM',
+ 'DJF' => 'DJF',
+ 'DKK' => 'DKK',
+ 'DOP' => 'DOP',
+ 'DZD' => 'DZD',
+ 'ECS' => 'ECS',
+ 'ECV' => 'ECV',
+ 'EEK' => 'EEK',
+ 'EGP' => 'EGP',
+ 'ERN' => 'ERN',
+ 'ESA' => 'ESA',
+ 'ESB' => 'ESB',
+ 'ESP' => 'ESP',
+ 'ETB' => 'ETB',
+ 'EUR' => '€',
+ 'FIM' => 'FIM',
+ 'FJD' => 'FJD',
+ 'FKP' => 'FKP',
+ 'FRF' => 'FRF',
+ 'GBP' => '£',
+ 'GEK' => 'GEK',
+ 'GEL' => 'GEL',
+ 'GHC' => 'GHC',
+ 'GHS' => 'GHS',
+ 'GIP' => 'GIP',
+ 'GMD' => 'GMD',
+ 'GNF' => 'GNF',
+ 'GNS' => 'GNS',
+ 'GQE' => 'GQE',
+ 'GRD' => 'GRD',
+ 'GTQ' => 'GTQ',
+ 'GWE' => 'GWE',
+ 'GWP' => 'GWP',
+ 'GYD' => 'GYD',
+ 'HKD' => 'HK$',
+ 'HNL' => 'HNL',
+ 'HRD' => 'HRD',
+ 'HRK' => 'HRK',
+ 'HTG' => 'HTG',
+ 'HUF' => 'HUF',
+ 'IDR' => 'IDR',
+ 'IEP' => 'IEP',
+ 'ILP' => 'ILP',
+ 'ILR' => 'ILS',
+ 'ILS' => '₪',
+ 'INR' => '₹',
+ 'IQD' => 'IQD',
+ 'IRR' => 'IRR',
+ 'ISJ' => 'ISJ',
+ 'ISK' => 'ISK',
+ 'ITL' => 'ITL',
+ 'JMD' => 'JMD',
+ 'JOD' => 'JOD',
+ 'JPY' => 'JP¥',
+ 'KES' => 'KES',
+ 'KGS' => 'KGS',
+ 'KHR' => 'KHR',
+ 'KMF' => 'KMF',
+ 'KPW' => 'KPW',
+ 'KRW' => '₩',
+ 'KWD' => 'KWD',
+ 'KYD' => 'KYD',
+ 'KZT' => 'KZT',
+ 'LAK' => 'LAK',
+ 'LBP' => 'LBP',
+ 'LKR' => 'LKR',
+ 'LRD' => 'LRD',
+ 'LSL' => 'LSL',
+ 'LTL' => 'LTL',
+ 'LTT' => 'LTT',
+ 'LUC' => 'LUC',
+ 'LUF' => 'LUF',
+ 'LUL' => 'LUL',
+ 'LVL' => 'LVL',
+ 'LVR' => 'LVR',
+ 'LYD' => 'LYD',
+ 'MAD' => 'MAD',
+ 'MAF' => 'MAF',
+ 'MCF' => 'MCF',
+ 'MDC' => 'MDC',
+ 'MDL' => 'MDL',
+ 'MGA' => 'MGA',
+ 'MGF' => 'MGF',
+ 'MKD' => 'MKD',
+ 'MKN' => 'MKN',
+ 'MLF' => 'MLF',
+ 'MMK' => 'MMK',
+ 'MNT' => 'MNT',
+ 'MOP' => 'MOP',
+ 'MRO' => 'MRO',
+ 'MTL' => 'MTL',
+ 'MTP' => 'MTP',
+ 'MUR' => 'MUR',
+ 'MVR' => 'MVR',
+ 'MWK' => 'MWK',
+ 'MXN' => 'MX$',
+ 'MXP' => 'MXP',
+ 'MXV' => 'MXV',
+ 'MYR' => 'MYR',
+ 'MZE' => 'MZE',
+ 'MZM' => 'MZM',
+ 'MZN' => 'MZN',
+ 'NAD' => 'NAD',
+ 'NGN' => 'NGN',
+ 'NIC' => 'NIC',
+ 'NIO' => 'NIO',
+ 'NLG' => 'NLG',
+ 'NOK' => 'NOK',
+ 'NPR' => 'NPR',
+ 'NZD' => 'NZ$',
+ 'OMR' => 'OMR',
+ 'PAB' => 'PAB',
+ 'PEI' => 'PEI',
+ 'PEN' => 'PEN',
+ 'PES' => 'PES',
+ 'PGK' => 'PGK',
+ 'PHP' => 'PHP',
+ 'PKR' => 'PKR',
+ 'PLN' => 'PLN',
+ 'PLZ' => 'PLZ',
+ 'PTE' => 'PTE',
+ 'PYG' => 'PYG',
+ 'QAR' => 'QAR',
+ 'RHD' => 'RHD',
+ 'ROL' => 'ROL',
+ 'RON' => 'RON',
+ 'RSD' => 'RSD',
+ 'RUB' => 'RUB',
+ 'RUR' => 'RUR',
+ 'RWF' => 'RWF',
+ 'SAR' => 'SAR',
+ 'SBD' => 'SBD',
+ 'SCR' => 'SCR',
+ 'SDD' => 'SDD',
+ 'SDG' => 'SDG',
+ 'SDP' => 'SDP',
+ 'SEK' => 'SEK',
+ 'SGD' => 'SGD',
+ 'SHP' => 'SHP',
+ 'SIT' => 'SIT',
+ 'SKK' => 'SKK',
+ 'SLL' => 'SLL',
+ 'SOS' => 'SOS',
+ 'SRD' => 'SRD',
+ 'SRG' => 'SRG',
+ 'SSP' => 'SSP',
+ 'STD' => 'STD',
+ 'SUR' => 'SUR',
+ 'SVC' => 'SVC',
+ 'SYP' => 'SYP',
+ 'SZL' => 'SZL',
+ 'THB' => '฿',
+ 'TJR' => 'TJR',
+ 'TJS' => 'TJS',
+ 'TMM' => 'TMM',
+ 'TMT' => 'TMT',
+ 'TND' => 'TND',
+ 'TOP' => 'TOP',
+ 'TRL' => 'TRL',
+ 'TRY' => 'TRY',
+ 'TTD' => 'TTD',
+ 'TWD' => 'NT$',
+ 'TZS' => 'TZS',
+ 'UAH' => 'UAH',
+ 'UAK' => 'UAK',
+ 'UGS' => 'UGS',
+ 'UGX' => 'UGX',
+ 'USD' => 'US$',
+ 'USN' => 'USN',
+ 'USS' => 'USS',
+ 'UYI' => 'UYI',
+ 'UYP' => 'UYP',
+ 'UYU' => 'UYU',
+ 'UZS' => 'UZS',
+ 'VEB' => 'VEB',
+ 'VEF' => 'VEF',
+ 'VND' => '₫',
+ 'VUV' => 'VUV',
+ 'WST' => 'WST',
+ 'XAF' => 'FCFA',
+ 'XCD' => 'EC$',
+ 'XEU' => 'XEU',
+ 'XOF' => 'CFA',
+ 'XPF' => 'CFPF',
+ 'YDD' => 'YDD',
+ 'YER' => 'YER',
+ 'YUD' => 'YUD',
+ 'YUM' => 'YUM',
+ 'YUN' => 'YUN',
+ 'YUR' => 'YUR',
+ 'ZAL' => 'ZAL',
+ 'ZAR' => 'ZAR',
+ 'ZMK' => 'ZMK',
+ 'ZMW' => 'ZMW',
+ 'ZRN' => 'ZRN',
+ 'ZRZ' => 'ZRZ',
+ 'ZWD' => 'ZWD',
+ 'ZWL' => 'ZWL',
+ 'ZWR' => 'ZWR',
+);
+
+$countryNames = array(
+ 'AC' => '阿森松岛',
+ 'AD' => '安道尔',
+ 'AE' => '阿拉伯联合酋长国',
+ 'AF' => '阿富汗',
+ 'AG' => '安提瓜和巴布达',
+ 'AI' => '安圭拉',
+ 'AL' => '阿尔巴尼亚',
+ 'AM' => '亚美尼亚',
+ 'AN' => '荷属安的列斯群岛',
+ 'AO' => '安哥拉',
+ 'AQ' => '南极洲',
+ 'AR' => '阿根廷',
+ 'AS' => '美属萨摩亚',
+ 'AT' => '奥地利',
+ 'AU' => '澳大利亚',
+ 'AW' => '阿鲁巴',
+ 'AX' => '奥兰群岛',
+ 'AZ' => '阿塞拜疆',
+ 'BA' => '波斯尼亚和黑塞哥维那',
+ 'BB' => '巴巴多斯',
+ 'BD' => '孟加拉国',
+ 'BE' => '比利时',
+ 'BF' => '布基纳法索',
+ 'BG' => '保加利亚',
+ 'BH' => '巴林',
+ 'BI' => '布隆迪',
+ 'BJ' => '贝宁',
+ 'BL' => '圣巴泰勒米',
+ 'BM' => '百慕大',
+ 'BN' => '文莱',
+ 'BO' => '玻利维亚',
+ 'BQ' => '荷兰加勒比区',
+ 'BR' => '巴西',
+ 'BS' => '巴哈马',
+ 'BT' => '不丹',
+ 'BV' => '布维特岛',
+ 'BW' => '博茨瓦纳',
+ 'BY' => '白俄罗斯',
+ 'BZ' => '伯利兹',
+ 'CA' => '加拿大',
+ 'CC' => '科科斯(基林)群岛',
+ 'CD' => '刚果(金)',
+ 'CF' => '中非共和国',
+ 'CG' => '刚果(布)',
+ 'CH' => '瑞士',
+ 'CI' => '科特迪瓦',
+ 'CK' => '库克群岛',
+ 'CL' => '智利',
+ 'CM' => '喀麦隆',
+ 'CN' => '中国',
+ 'CO' => '哥伦比亚',
+ 'CP' => '克利珀顿岛',
+ 'CR' => '哥斯达黎加',
+ 'CU' => '古巴',
+ 'CV' => '佛得角',
+ 'CW' => '库拉索',
+ 'CX' => '圣诞岛',
+ 'CY' => '塞浦路斯',
+ 'CZ' => '捷克共和国',
+ 'DE' => '德国',
+ 'DG' => '迪戈加西亚岛',
+ 'DJ' => '吉布提',
+ 'DK' => '丹麦',
+ 'DM' => '多米尼克',
+ 'DO' => '多米尼加共和国',
+ 'DZ' => '阿尔及利亚',
+ 'EA' => '休达及梅利利亚',
+ 'EC' => '厄瓜多尔',
+ 'EE' => '爱沙尼亚',
+ 'EG' => '埃及',
+ 'EH' => '西撒哈拉',
+ 'ER' => '厄立特里亚',
+ 'ES' => '西班牙',
+ 'ET' => '埃塞俄比亚',
+ 'EU' => '欧盟',
+ 'FI' => '芬兰',
+ 'FJ' => '斐济',
+ 'FK' => '福克兰群岛',
+ 'FM' => '密克罗尼西亚',
+ 'FO' => '法罗群岛',
+ 'FR' => '法国',
+ 'GA' => '加蓬',
+ 'GB' => '英国',
+ 'GD' => '格林纳达',
+ 'GE' => '格鲁吉亚',
+ 'GF' => '法属圭亚那',
+ 'GG' => '根西岛',
+ 'GH' => '加纳',
+ 'GI' => '直布罗陀',
+ 'GL' => '格陵兰',
+ 'GM' => '冈比亚',
+ 'GN' => '几内亚',
+ 'GP' => '瓜德罗普',
+ 'GQ' => '赤道几内亚',
+ 'GR' => '希腊',
+ 'GS' => '南乔治亚岛和南桑威齐群岛',
+ 'GT' => '危地马拉',
+ 'GU' => '关岛',
+ 'GW' => '几内亚比绍',
+ 'GY' => '圭亚那',
+ 'HK' => '香港',
+ 'HM' => '赫德岛和麦克唐纳群岛',
+ 'HN' => '洪都拉斯',
+ 'HR' => '克罗地亚',
+ 'HT' => '海地',
+ 'HU' => '匈牙利',
+ 'IC' => '加纳利群岛',
+ 'ID' => '印度尼西亚',
+ 'IE' => '爱尔兰',
+ 'IL' => '以色列',
+ 'IM' => '曼岛',
+ 'IN' => '印度',
+ 'IO' => '英属印度洋领地',
+ 'IQ' => '伊拉克',
+ 'IR' => '伊朗',
+ 'IS' => '冰岛',
+ 'IT' => '意大利',
+ 'JE' => '泽西岛',
+ 'JM' => '牙买加',
+ 'JO' => '约旦',
+ 'JP' => '日本',
+ 'KE' => '肯尼亚',
+ 'KG' => '吉尔吉斯斯坦',
+ 'KH' => '柬埔寨',
+ 'KI' => '基里巴斯',
+ 'KM' => '科摩罗',
+ 'KN' => '圣基茨和尼维斯',
+ 'KP' => '朝鲜',
+ 'KR' => '韩国',
+ 'KW' => '科威特',
+ 'KY' => '开曼群岛',
+ 'KZ' => '哈萨克斯坦',
+ 'LA' => '老挝',
+ 'LB' => '黎巴嫩',
+ 'LC' => '圣卢西亚',
+ 'LI' => '列支敦士登',
+ 'LK' => '斯里兰卡',
+ 'LR' => '利比里亚',
+ 'LS' => '莱索托',
+ 'LT' => '立陶宛',
+ 'LU' => '卢森堡',
+ 'LV' => '拉脱维亚',
+ 'LY' => '利比亚',
+ 'MA' => '摩洛哥',
+ 'MC' => '摩纳哥',
+ 'MD' => '摩尔多瓦',
+ 'ME' => '黑山共和国',
+ 'MF' => '法属圣马丁',
+ 'MG' => '马达加斯加',
+ 'MH' => '马绍尔群岛',
+ 'MK' => '马其顿',
+ 'ML' => '马里',
+ 'MM' => '缅甸',
+ 'MN' => '蒙古',
+ 'MO' => '澳门',
+ 'MP' => '北马里亚纳群岛',
+ 'MQ' => '马提尼克',
+ 'MR' => '毛里塔尼亚',
+ 'MS' => '蒙特塞拉特',
+ 'MT' => '马耳他',
+ 'MU' => '毛里求斯',
+ 'MV' => '马尔代夫',
+ 'MW' => '马拉维',
+ 'MX' => '墨西哥',
+ 'MY' => '马来西亚',
+ 'MZ' => '莫桑比克',
+ 'NA' => '纳米比亚',
+ 'NC' => '新喀里多尼亚',
+ 'NE' => '尼日尔',
+ 'NF' => '诺福克岛',
+ 'NG' => '尼日利亚',
+ 'NI' => '尼加拉瓜',
+ 'NL' => '荷兰',
+ 'NO' => '挪威',
+ 'NP' => '尼泊尔',
+ 'NR' => '瑙鲁',
+ 'NU' => '纽埃',
+ 'NZ' => '新西兰',
+ 'OM' => '阿曼',
+ 'PA' => '巴拿马',
+ 'PE' => '秘鲁',
+ 'PF' => '法属波利尼西亚',
+ 'PG' => '巴布亚新几内亚',
+ 'PH' => '菲律宾',
+ 'PK' => '巴基斯坦',
+ 'PL' => '波兰',
+ 'PM' => '圣皮埃尔和密克隆群岛',
+ 'PN' => '皮特凯恩群岛',
+ 'PR' => '波多黎各',
+ 'PS' => '巴勒斯坦',
+ 'PT' => '葡萄牙',
+ 'PW' => '帕劳',
+ 'PY' => '巴拉圭',
+ 'QA' => '卡塔尔',
+ 'QO' => '大洋洲边远群岛',
+ 'RE' => '留尼汪',
+ 'RO' => '罗马尼亚',
+ 'RS' => '塞尔维亚',
+ 'RU' => '俄罗斯',
+ 'RW' => '卢旺达',
+ 'SA' => '沙特阿拉伯',
+ 'SB' => '所罗门群岛',
+ 'SC' => '塞舌尔',
+ 'SD' => '苏丹',
+ 'SE' => '瑞典',
+ 'SG' => '新加坡',
+ 'SH' => '圣赫勒拿',
+ 'SI' => '斯洛文尼亚',
+ 'SJ' => '斯瓦尔巴特和扬马延',
+ 'SK' => '斯洛伐克',
+ 'SL' => '塞拉利昂',
+ 'SM' => '圣马力诺',
+ 'SN' => '塞内加尔',
+ 'SO' => '索马里',
+ 'SR' => '苏里南',
+ 'SS' => '南苏丹',
+ 'ST' => '圣多美和普林西比',
+ 'SV' => '萨尔瓦多',
+ 'SX' => '荷属圣马丁',
+ 'SY' => '叙利亚',
+ 'SZ' => '斯威士兰',
+ 'TA' => '特里斯坦-达库尼亚群岛',
+ 'TC' => '特克斯和凯科斯群岛',
+ 'TD' => '乍得',
+ 'TF' => '法属南部领地',
+ 'TG' => '多哥',
+ 'TH' => '泰国',
+ 'TJ' => '塔吉克斯坦',
+ 'TK' => '托克劳',
+ 'TL' => '东帝汶',
+ 'TM' => '土库曼斯坦',
+ 'TN' => '突尼斯',
+ 'TO' => '汤加',
+ 'TR' => '土耳其',
+ 'TT' => '特立尼达和多巴哥',
+ 'TV' => '图瓦卢',
+ 'TW' => '台湾',
+ 'TZ' => '坦桑尼亚',
+ 'UA' => '乌克兰',
+ 'UG' => '乌干达',
+ 'UM' => '美国本土外小岛屿',
+ 'US' => '美国',
+ 'UY' => '乌拉圭',
+ 'UZ' => '乌兹别克斯坦',
+ 'VA' => '梵蒂冈',
+ 'VC' => '圣文森特和格林纳丁斯',
+ 'VE' => '委内瑞拉',
+ 'VG' => '英属维京群岛',
+ 'VI' => '美属维京群岛',
+ 'VN' => '越南',
+ 'VU' => '瓦努阿图',
+ 'WF' => '瓦利斯和富图纳',
+ 'WS' => '萨摩亚',
+ 'XK' => '科索沃',
+ 'YE' => '也门',
+ 'YT' => '马约特',
+ 'ZA' => '南非',
+ 'ZM' => '赞比亚',
+ 'ZW' => '津巴布韦',
+);
+
+$timeUnits = array(
+ 'day-future-other' => '{0}天后',
+ 'day-narrow-future-other' => '{0}天后',
+ 'day-narrow-past-other' => '{0}天前',
+ 'day-other' => '{0}天',
+ 'day-past-other' => '{0}天前',
+ 'day-short-future-other' => '{0}天后',
+ 'day-short-past-other' => '{0}天前',
+ 'hour-future-other' => '{0}小时后',
+ 'hour-narrow-future-other' => '{0}小时后',
+ 'hour-narrow-past-other' => '{0}小时前',
+ 'hour-other' => '{0}小时',
+ 'hour-past-other' => '{0}小时前',
+ 'hour-short-future-other' => '{0}小时后',
+ 'hour-short-past-other' => '{0}小时前',
+ 'microsecond-other' => '{0}微秒',
+ 'millisecond-other' => '{0}毫秒',
+ 'minute-future-other' => '{0}分钟后',
+ 'minute-narrow-future-other' => '{0}分钟后',
+ 'minute-narrow-past-other' => '{0}分钟前',
+ 'minute-other' => '{0}分钟',
+ 'minute-past-other' => '{0}分钟前',
+ 'minute-short-future-other' => '{0}分钟后',
+ 'minute-short-past-other' => '{0}分钟前',
+ 'month-future-other' => '{0}个月后',
+ 'month-narrow-future-other' => '{0}个月后',
+ 'month-narrow-past-other' => '{0}个月前',
+ 'month-other' => '{0}个月',
+ 'month-past-other' => '{0}个月前',
+ 'month-short-future-other' => '{0}个月后',
+ 'month-short-past-other' => '{0}个月前',
+ 'nanosecond-other' => '{0}纳秒',
+ 'quarter-future-other' => '{0}季度后',
+ 'quarter-narrow-future-other' => '{0}季度后',
+ 'quarter-narrow-past-other' => '{0}季度前',
+ 'quarter-past-other' => '{0}季度前',
+ 'quarter-short-future-other' => '{0}季度后',
+ 'quarter-short-past-other' => '{0}季度前',
+ 'second-future-other' => '{0}秒钟后',
+ 'second-narrow-future-other' => '{0}秒后',
+ 'second-narrow-past-other' => '{0}秒前',
+ 'second-other' => '{0}秒钟',
+ 'second-past-other' => '{0}秒钟前',
+ 'second-short-future-other' => '{0}秒后',
+ 'second-short-past-other' => '{0}秒前',
+ 'week-future-other' => '{0}周后',
+ 'week-narrow-future-other' => '{0}周后',
+ 'week-narrow-past-other' => '{0}周前',
+ 'week-other' => '{0}周',
+ 'week-past-other' => '{0}周前',
+ 'week-short-future-other' => '{0}周后',
+ 'week-short-past-other' => '{0}周前',
+ 'year-future-other' => '{0}年后',
+ 'year-narrow-future-other' => '{0}年后',
+ 'year-narrow-past-other' => '{0}年前',
+ 'year-other' => '{0}年',
+ 'year-past-other' => '{0}年前',
+ 'year-short-future-other' => '{0}年后',
+ 'year-short-past-other' => '{0}年前',
+);
diff --git a/MLEB/cldr/CldrNames/CldrNamesZh_hant.php b/MLEB/cldr/CldrNames/CldrNamesZh_hant.php
new file mode 100644
index 00000000..7a093409
--- /dev/null
+++ b/MLEB/cldr/CldrNames/CldrNamesZh_hant.php
@@ -0,0 +1,1522 @@
+<?php
+
+$languageNames = array(
+ 'aa' => '阿法文',
+ 'ab' => '阿布哈茲文',
+ 'ace' => '亞齊文',
+ 'ach' => '阿僑利文',
+ 'ada' => '阿當莫文',
+ 'ady' => '阿迪各文',
+ 'ae' => '阿緯斯陀文',
+ 'aeb' => '突尼斯阿拉伯文',
+ 'af' => '南非荷蘭文',
+ 'afh' => '阿弗里希利文',
+ 'agq' => '亞罕文',
+ 'ain' => '阿伊努文',
+ 'ak' => '阿坎文',
+ 'akk' => '阿卡德文',
+ 'akz' => '阿拉巴馬文',
+ 'ale' => '阿留申文',
+ 'aln' => '蓋格阿爾巴尼亞文',
+ 'alt' => '南阿爾泰文',
+ 'am' => '阿姆哈拉文',
+ 'an' => '阿拉貢文',
+ 'ang' => '古英文',
+ 'anp' => '昂加文',
+ 'ar' => '阿拉伯文',
+ 'ar-001' => '現代標準阿拉伯文',
+ 'arc' => '阿拉米文',
+ 'arn' => '馬普切文',
+ 'aro' => '阿拉奧納文',
+ 'arp' => '阿拉帕霍文',
+ 'arq' => '阿爾及利亞阿拉伯文',
+ 'arw' => '阿拉瓦克文',
+ 'ary' => '摩洛哥阿拉伯文',
+ 'arz' => '埃及阿拉伯文',
+ 'as' => '阿薩姆文',
+ 'asa' => '阿蘇文',
+ 'ase' => '美國手語',
+ 'ast' => '阿斯圖里亞文',
+ 'av' => '阿瓦爾文',
+ 'avk' => '科塔瓦文',
+ 'awa' => '阿瓦文',
+ 'ay' => '艾馬拉文',
+ 'az' => '亞塞拜然文',
+ 'azb' => '南亞塞拜然文',
+ 'ba' => '巴什客爾文',
+ 'bal' => '俾路支文',
+ 'ban' => '峇里文',
+ 'bar' => '巴伐利亞文',
+ 'bas' => '巴薩文',
+ 'bax' => '巴姆穆文',
+ 'bbc' => '巴塔克托巴文',
+ 'bbj' => '戈馬拉文',
+ 'be' => '白俄羅斯文',
+ 'bej' => '貝扎文',
+ 'bem' => '別姆巴文',
+ 'bew' => '貝塔維文',
+ 'bez' => '貝納文',
+ 'bfd' => '富特文',
+ 'bfq' => '巴達加文',
+ 'bg' => '保加利亞文',
+ 'bho' => '博傑普爾文',
+ 'bi' => '比斯拉馬文',
+ 'bik' => '比科爾文',
+ 'bin' => '比尼文',
+ 'bjn' => '班亞爾文',
+ 'bkm' => '康姆文',
+ 'bla' => '錫克錫卡文',
+ 'bm' => '班巴拉文',
+ 'bn' => '孟加拉文',
+ 'bo' => '藏文',
+ 'bpy' => '比什奴普萊利亞文',
+ 'bqi' => '巴赫蒂亞里文',
+ 'br' => '布列塔尼文',
+ 'bra' => '布拉杰文',
+ 'brh' => '布拉維文',
+ 'brx' => '博多文',
+ 'bs' => '波士尼亞文',
+ 'bss' => '阿庫色文',
+ 'bua' => '布里阿特文',
+ 'bug' => '布吉斯文',
+ 'bum' => '布魯文',
+ 'byn' => '比林文',
+ 'byv' => '梅敦巴文',
+ 'ca' => '加泰羅尼亞文',
+ 'cad' => '卡多文',
+ 'car' => '加勒比文',
+ 'cay' => '卡尤加文',
+ 'cch' => '阿燦文',
+ 'ce' => '車臣文',
+ 'ceb' => '宿霧文',
+ 'cgg' => '奇加文',
+ 'ch' => '查莫洛文',
+ 'chb' => '奇布查文',
+ 'chg' => '查加文',
+ 'chk' => '處奇斯文',
+ 'chm' => '馬里文',
+ 'chn' => '契奴克文',
+ 'cho' => '喬克托文',
+ 'chp' => '奇佩瓦揚文',
+ 'chr' => '柴羅基文',
+ 'chy' => '沙伊安文',
+ 'ckb' => '索拉尼庫爾德文',
+ 'co' => '科西嘉文',
+ 'cop' => '科普特文',
+ 'cps' => '卡皮茲文',
+ 'cr' => '克裡文',
+ 'crh' => '克里米亞半島的土耳其文;克里米亞半島的塔塔爾文',
+ 'cs' => '捷克文',
+ 'csb' => '卡舒布文',
+ 'cu' => '宗教斯拉夫文',
+ 'cv' => '楚瓦什文',
+ 'cy' => '威爾斯文',
+ 'da' => '丹麥文',
+ 'dak' => '達科他文',
+ 'dar' => '達爾格瓦文',
+ 'dav' => '台塔文',
+ 'de' => '德文',
+ 'de-ch' => '高地德文(瑞士)',
+ 'del' => '德拉瓦文',
+ 'den' => '斯拉夫',
+ 'dgr' => '多格里布文',
+ 'din' => '丁卡文',
+ 'dje' => '扎爾馬文',
+ 'doi' => '多格來文',
+ 'dsb' => '下索布文',
+ 'dtp' => '中部杜順文',
+ 'dua' => '杜亞拉文',
+ 'dum' => '中古荷蘭文',
+ 'dv' => '迪維西文',
+ 'dyo' => '朱拉文',
+ 'dyu' => '迪尤拉文',
+ 'dz' => '宗卡文',
+ 'dzg' => '達薩文',
+ 'ebu' => '恩布文',
+ 'ee' => '埃維文',
+ 'efi' => '埃菲克文',
+ 'egl' => '埃米利安文',
+ 'egy' => '古埃及文',
+ 'eka' => '艾卡朱克文',
+ 'el' => '希臘文',
+ 'elx' => '埃蘭文',
+ 'en' => '英文',
+ 'enm' => '中古英文',
+ 'eo' => '世界文',
+ 'es' => '西班牙文',
+ 'es-es' => '西班牙文(歐洲)',
+ 'esu' => '中尤皮克文',
+ 'et' => '愛沙尼亞文',
+ 'eu' => '巴斯克文',
+ 'ewo' => '依汪都文',
+ 'ext' => '埃斯特雷馬杜拉文',
+ 'fa' => '波斯文',
+ 'fan' => '芳族文',
+ 'fat' => '芳蒂文',
+ 'ff' => '富拉文',
+ 'fi' => '芬蘭文',
+ 'fil' => '菲律賓文',
+ 'fit' => '托爾訥芬蘭文',
+ 'fj' => '斐濟文',
+ 'fo' => '法羅文',
+ 'fon' => '豐文',
+ 'fr' => '法文',
+ 'frc' => '卡真法文',
+ 'frm' => '中古法文',
+ 'fro' => '古法文',
+ 'frp' => '法蘭克-普羅旺斯文',
+ 'frr' => '北弗里西亞文',
+ 'frs' => '東弗里西亞文',
+ 'fur' => '弗留利文',
+ 'fy' => '西弗里西亞文',
+ 'ga' => '愛爾蘭文',
+ 'gaa' => '加族文',
+ 'gag' => '加告茲文',
+ 'gan' => '贛語',
+ 'gay' => '加約文',
+ 'gba' => '葛巴亞文',
+ 'gbz' => '索羅亞斯德教達里文',
+ 'gd' => '蘇格蘭蓋爾文',
+ 'gez' => '吉茲文',
+ 'gil' => '吉爾伯特群島文',
+ 'gl' => '加利西亞文',
+ 'glk' => '吉拉基文',
+ 'gmh' => '中古高地德文',
+ 'gn' => '瓜拉尼文',
+ 'goh' => '古高地日耳曼文',
+ 'gom' => '孔卡尼文',
+ 'gon' => '岡德文',
+ 'gor' => '科隆達羅文',
+ 'got' => '哥德文',
+ 'grb' => '格列博文',
+ 'grc' => '古希臘文',
+ 'gsw' => '德文(瑞士)',
+ 'gu' => '古吉拉特文',
+ 'guc' => '瓦尤文',
+ 'gur' => '弗拉弗拉文',
+ 'guz' => '古西文',
+ 'gv' => '曼島文',
+ 'gwi' => '圭契文',
+ 'ha' => '豪撒文',
+ 'hai' => '海達文',
+ 'hak' => '客家話',
+ 'haw' => '夏威夷文',
+ 'he' => '希伯來文',
+ 'hi' => '北印度文',
+ 'hif' => '斐濟印地文',
+ 'hil' => '希利蓋農文',
+ 'hit' => '赫梯文',
+ 'hmn' => '孟文',
+ 'ho' => '西里莫圖土文',
+ 'hr' => '克羅埃西亞文',
+ 'hsb' => '上索布文',
+ 'hsn' => '湘語',
+ 'ht' => '海地文',
+ 'hu' => '匈牙利文',
+ 'hup' => '胡帕文',
+ 'hy' => '亞美尼亞文',
+ 'hz' => '赫雷羅文',
+ 'ia' => '國際文',
+ 'iba' => '伊班文',
+ 'ibb' => '伊比比奧文',
+ 'id' => '印尼文',
+ 'ie' => '國際文(E)',
+ 'ig' => '伊布文',
+ 'ii' => '四川彝文',
+ 'ik' => '依奴皮維克文',
+ 'ilo' => '伊洛闊文',
+ 'inh' => '印古什文',
+ 'io' => '伊多文',
+ 'is' => '冰島文',
+ 'it' => '義大利文',
+ 'iu' => '因紐特文',
+ 'izh' => '英格裏亞文',
+ 'ja' => '日文',
+ 'jam' => '牙買加克裏奧爾英文',
+ 'jbo' => '邏輯文',
+ 'jgo' => '恩格姆巴文',
+ 'jmc' => '馬恰美文',
+ 'jpr' => '猶太教-波斯文',
+ 'jrb' => '猶太阿拉伯文',
+ 'jut' => '日德蘭文',
+ 'jv' => '爪哇文',
+ 'ka' => '喬治亞文',
+ 'kaa' => '卡拉卡爾帕克文',
+ 'kab' => '卡比爾文',
+ 'kac' => '卡琴文',
+ 'kaj' => '卡捷文',
+ 'kam' => '卡姆巴文',
+ 'kaw' => '卡威文',
+ 'kbd' => '卡巴爾達文',
+ 'kbl' => '卡念布文',
+ 'kcg' => '卡塔布文',
+ 'kde' => '馬孔德文',
+ 'kea' => '卡布威爾第文',
+ 'ken' => '肯揚文',
+ 'kfo' => '科羅文',
+ 'kg' => '剛果文',
+ 'kgp' => '坎剛文',
+ 'kha' => '卡西文',
+ 'kho' => '和闐文',
+ 'khq' => '西桑海文',
+ 'khw' => '科瓦文',
+ 'ki' => '吉庫尤文',
+ 'kiu' => '北紮紮其文',
+ 'kj' => '廣亞馬文',
+ 'kk' => '哈薩克文',
+ 'kkj' => '卡庫文',
+ 'kl' => '格陵蘭文',
+ 'kln' => '卡倫金文',
+ 'km' => '高棉文',
+ 'kmb' => '金邦杜文',
+ 'kn' => '坎那達文',
+ 'ko' => '韓文',
+ 'koi' => '科米-彼爾米亞克文',
+ 'kok' => '貢根文',
+ 'kos' => '科斯雷恩文',
+ 'kpe' => '克佩列文',
+ 'kr' => '卡努裡文',
+ 'krc' => '卡拉柴-包爾卡爾文',
+ 'kri' => '塞拉利昂克裏奧爾文',
+ 'krj' => '基那來阿文',
+ 'krl' => '卡累利阿文',
+ 'kru' => '庫魯科文',
+ 'ks' => '喀什米爾文',
+ 'ksb' => '尚巴拉文',
+ 'ksf' => '巴菲亞文',
+ 'ksh' => '科隆文',
+ 'ku' => '庫爾德文',
+ 'kum' => '庫密克文',
+ 'kut' => '庫特奈文',
+ 'kv' => '科米文',
+ 'kw' => '康瓦耳文',
+ 'ky' => '吉爾吉斯文',
+ 'la' => '拉丁文',
+ 'lad' => '拉迪諾文',
+ 'lag' => '朗吉文',
+ 'lah' => '拉亨達文',
+ 'lam' => '蘭巴文',
+ 'lb' => '盧森堡文',
+ 'lez' => '列茲干文',
+ 'lfn' => '新共同語言',
+ 'lg' => '干達文',
+ 'li' => '林堡文',
+ 'lij' => '利古里亞文',
+ 'liv' => '利伏尼亞文',
+ 'lkt' => '拉科塔文',
+ 'lmo' => '倫巴底文',
+ 'ln' => '林加拉文',
+ 'lo' => '寮文',
+ 'lol' => '芒戈文',
+ 'loz' => '洛齊文',
+ 'lt' => '立陶宛文',
+ 'ltg' => '拉特加萊文',
+ 'lu' => '魯巴加丹加文',
+ 'lua' => '魯巴魯魯亞文',
+ 'lui' => '路易塞諾文',
+ 'lun' => '盧恩達文',
+ 'luo' => '盧奧文',
+ 'lus' => '盧晒文',
+ 'luy' => '盧雅文',
+ 'lv' => '拉脫維亞文',
+ 'lzh' => '文言文',
+ 'lzz' => '拉茲文',
+ 'mad' => '馬都拉文',
+ 'maf' => '馬法文',
+ 'mag' => '馬加伊文',
+ 'mai' => '邁蒂利文',
+ 'mak' => '望加錫文',
+ 'man' => '曼丁哥文',
+ 'mas' => '馬賽文',
+ 'mde' => '馬巴文',
+ 'mdf' => '莫克沙文',
+ 'mdr' => '曼達文',
+ 'men' => '門德文',
+ 'mer' => '梅魯文',
+ 'mfe' => '克里奧文(模里西斯)',
+ 'mg' => '馬拉加什文',
+ 'mga' => '中古愛爾蘭文',
+ 'mgh' => '馬夸文',
+ 'mgo' => '美塔文',
+ 'mh' => '馬紹爾文',
+ 'mi' => '毛利文',
+ 'mic' => '米克馬克文',
+ 'min' => '米南卡堡文',
+ 'mk' => '馬其頓文',
+ 'ml' => '馬來亞拉姆文',
+ 'mn' => '蒙古文',
+ 'mnc' => '滿族文',
+ 'mni' => '曼尼普裡文',
+ 'moh' => '莫霍克文',
+ 'mos' => '莫西文',
+ 'mr' => '馬拉地文',
+ 'mrj' => '西馬裏文',
+ 'ms' => '馬來文',
+ 'mt' => '馬爾他文',
+ 'mua' => '蒙當文',
+ 'mul' => '多種語言',
+ 'mus' => '克里克文',
+ 'mwl' => '米蘭德斯文',
+ 'mwr' => '馬爾尼裡文',
+ 'mwv' => '明打威文',
+ 'my' => '緬甸文',
+ 'mye' => '姆耶內文',
+ 'myv' => '厄爾茲亞文',
+ 'mzn' => '瑪詹德拉尼文',
+ 'na' => '諾魯文',
+ 'nan' => '閩南語',
+ 'nap' => '拿波里文',
+ 'naq' => '納馬文',
+ 'nb' => '巴克摩挪威文',
+ 'nd' => '北地畢列文',
+ 'nds' => '低地德文',
+ 'ne' => '尼泊爾文',
+ 'new' => '尼瓦爾文',
+ 'ng' => '恩東加文',
+ 'nia' => '尼亞斯文',
+ 'niu' => '紐埃文',
+ 'njo' => '阿沃那加文',
+ 'nl' => '荷蘭文',
+ 'nl-be' => '佛蘭芒文',
+ 'nmg' => '夸西奧文',
+ 'nn' => '耐諾斯克挪威文',
+ 'nnh' => '恩甘澎文',
+ 'no' => '挪威文',
+ 'nog' => '諾蓋文',
+ 'non' => '古諾爾斯文',
+ 'nov' => '諾維亞文',
+ 'nqo' => '曼德文字 (N’Ko)',
+ 'nr' => '南地畢列文',
+ 'nso' => '北索托文',
+ 'nus' => '努埃爾文',
+ 'nv' => '納瓦霍文',
+ 'nwc' => '古尼瓦爾文',
+ 'ny' => '尼揚賈文',
+ 'nym' => '尼揚韋齊文',
+ 'nyn' => '尼揚科萊文',
+ 'nyo' => '尼奧囉文',
+ 'nzi' => '尼茲馬文',
+ 'oc' => '奧克西坦文',
+ 'oj' => '奧杰布瓦文',
+ 'om' => '奧羅莫文',
+ 'or' => '歐利亞文',
+ 'os' => '奧塞提文',
+ 'osa' => '歐塞奇文',
+ 'ota' => '鄂圖曼土耳其文',
+ 'pa' => '旁遮普文',
+ 'pag' => '潘加辛文',
+ 'pal' => '巴列維文',
+ 'pam' => '潘帕嘉文',
+ 'pap' => '帕皮阿門托文',
+ 'pau' => '帛琉文',
+ 'pcd' => '庇卡底文',
+ 'pdc' => '賓夕法尼亞德文',
+ 'pdt' => '門諾低地德文',
+ 'peo' => '古波斯文',
+ 'pfl' => '普法爾茨德文',
+ 'phn' => '腓尼基文',
+ 'pi' => '巴利文',
+ 'pl' => '波蘭文',
+ 'pms' => '皮埃蒙特文',
+ 'pnt' => '旁狄希臘文',
+ 'pon' => '波那貝文',
+ 'prg' => '普魯士文',
+ 'pro' => '古普羅旺斯文',
+ 'ps' => '普什圖文',
+ 'pt' => '葡萄牙文',
+ 'pt-pt' => '葡萄牙文(歐洲)',
+ 'qu' => '蓋楚瓦文',
+ 'quc' => '基切文',
+ 'qug' => '欽博拉索海蘭蓋丘亞文',
+ 'raj' => '拉賈斯坦諸文',
+ 'rap' => '復活島文',
+ 'rar' => '拉羅通加文',
+ 'rgn' => '羅馬格諾里文',
+ 'rif' => '里菲亞諾文',
+ 'rm' => '羅曼斯文',
+ 'rn' => '隆迪文',
+ 'ro' => '羅馬尼亞文',
+ 'ro-md' => '摩爾多瓦文',
+ 'rof' => '蘭博文',
+ 'rom' => '吉普賽文',
+ 'rtm' => '羅圖馬島文',
+ 'ru' => '俄文',
+ 'rue' => '盧森尼亞文',
+ 'rug' => '羅維阿納文',
+ 'rup' => '羅馬尼亞語系',
+ 'rw' => '盧安達文',
+ 'rwk' => '羅瓦文',
+ 'sa' => '梵文',
+ 'sad' => '桑達韋文',
+ 'sah' => '雅庫特文',
+ 'sam' => '薩瑪利亞阿拉姆文',
+ 'saq' => '薩布魯文',
+ 'sas' => '撒撒克文',
+ 'sat' => '散塔利文',
+ 'saz' => '索拉什特拉文',
+ 'sba' => '甘拜文',
+ 'sbp' => '桑古文',
+ 'sc' => '撒丁文',
+ 'scn' => '西西里文',
+ 'sco' => '蘇格蘭文',
+ 'sd' => '信德文',
+ 'sdc' => '薩丁尼亞-薩薩里文',
+ 'se' => '北方薩米文',
+ 'see' => '塞訥卡文',
+ 'seh' => '賽納文',
+ 'sei' => '瑟里文',
+ 'sel' => '瑟爾卡普文',
+ 'ses' => '東桑海文',
+ 'sg' => '桑戈文',
+ 'sga' => '古愛爾蘭文',
+ 'sgs' => '薩莫吉希亞文',
+ 'sh' => '塞爾維亞克羅埃西亞文',
+ 'shi' => '希爾哈文',
+ 'shn' => '撣文',
+ 'shu' => '阿拉伯文(查德)',
+ 'si' => '僧伽羅文',
+ 'sid' => '希達摩文',
+ 'sk' => '斯洛伐克文',
+ 'sl' => '斯洛維尼亞文',
+ 'sli' => '下西利西亞文',
+ 'sly' => '塞拉亞文',
+ 'sm' => '薩摩亞文',
+ 'sma' => '南薩米文',
+ 'smj' => '魯勒薩米文',
+ 'smn' => '伊納裡薩米文',
+ 'sms' => '斯科特薩米文',
+ 'sn' => '塞內加爾文',
+ 'snk' => '索尼基文',
+ 'so' => '索馬利文',
+ 'sog' => '索格底亞納文',
+ 'sq' => '阿爾巴尼亞文',
+ 'sr' => '塞爾維亞文',
+ 'srn' => '蘇拉南東墎文',
+ 'srr' => '塞雷爾文',
+ 'ss' => '斯瓦特文',
+ 'ssy' => '薩霍文',
+ 'st' => '塞索托文',
+ 'stq' => '沙特菲士蘭文',
+ 'su' => '巽他文',
+ 'suk' => '蘇庫馬文',
+ 'sus' => '蘇蘇文',
+ 'sux' => '蘇美文',
+ 'sv' => '瑞典文',
+ 'sw' => '史瓦希里文',
+ 'swb' => '葛摩文',
+ 'swc' => '史瓦希里文(剛果)',
+ 'syc' => '古敘利亞文',
+ 'syr' => '敘利亞文',
+ 'szl' => '西利西亞文',
+ 'ta' => '坦米爾文',
+ 'tcy' => '圖盧文',
+ 'te' => '泰盧固文',
+ 'tem' => '提姆文',
+ 'teo' => '特索文',
+ 'ter' => '泰雷諾文',
+ 'tet' => '泰頓文',
+ 'tg' => '塔吉克文',
+ 'th' => '泰文',
+ 'ti' => '提格利尼亞文',
+ 'tig' => '蒂格雷文',
+ 'tiv' => '提夫文',
+ 'tk' => '土庫曼文',
+ 'tkl' => '托克勞文',
+ 'tkr' => '查庫爾文',
+ 'tl' => '塔加路族文',
+ 'tlh' => '克林貢文',
+ 'tli' => '特林基特文',
+ 'tly' => '塔里什文',
+ 'tmh' => '塔馬奇克文',
+ 'tn' => '突尼西亞文',
+ 'to' => '東加文',
+ 'tog' => '東加文(尼亞薩)',
+ 'tpi' => '托比辛文',
+ 'tr' => '土耳其文',
+ 'tru' => '圖羅尤文',
+ 'trv' => '太魯閣文',
+ 'ts' => '特松加文',
+ 'tsd' => '特薩克尼恩文',
+ 'tsi' => '欽西安文',
+ 'tt' => '韃靼文',
+ 'ttt' => '穆斯林塔特文',
+ 'tum' => '圖姆布卡文',
+ 'tvl' => '吐瓦魯文',
+ 'tw' => '特威文',
+ 'twq' => '北桑海文',
+ 'ty' => '大溪地文',
+ 'tyv' => '土凡文',
+ 'tzm' => '塔馬齊格特文',
+ 'udm' => '沃蒂艾克文',
+ 'ug' => '維吾爾文',
+ 'uga' => '烏加列文',
+ 'uk' => '烏克蘭文',
+ 'umb' => '姆本杜文',
+ 'und' => '未知語言',
+ 'ur' => '烏都文',
+ 'uz' => '烏茲別克文',
+ 'vai' => '瓦伊文',
+ 've' => '溫達文',
+ 'vec' => '威尼斯文',
+ 'vep' => '維普森文',
+ 'vi' => '越南文',
+ 'vls' => '西佛蘭德文',
+ 'vmf' => '美茵-法蘭克尼亞文',
+ 'vo' => '沃拉普克文',
+ 'vot' => '沃提克文',
+ 'vro' => '佛羅文',
+ 'vun' => '溫舊文',
+ 'wa' => '瓦隆文',
+ 'wae' => '瓦瑟文',
+ 'wal' => '瓦拉莫文',
+ 'war' => '瓦瑞文',
+ 'was' => '瓦紹文',
+ 'wo' => '沃洛夫文',
+ 'wuu' => '吳語',
+ 'xal' => '卡爾梅克文',
+ 'xh' => '科薩文',
+ 'xmf' => '明格列爾文',
+ 'xog' => '索加文',
+ 'yao' => '瑤文',
+ 'yap' => '雅浦文',
+ 'yav' => '洋卞文',
+ 'ybb' => '耶姆巴文',
+ 'yi' => '意第緒文',
+ 'yo' => '約魯巴文',
+ 'yrl' => '奈恩加圖文',
+ 'yue' => '粵語',
+ 'za' => '壯文',
+ 'zap' => '薩波特克文',
+ 'zbl' => '布列斯符號',
+ 'zea' => '西蘭文',
+ 'zen' => '澤納加文',
+ 'zgh' => '標準摩洛哥塔馬塞特文',
+ 'zh' => '中文',
+ 'zh-hans' => '簡體中文',
+ 'zh-hant' => '繁體中文',
+ 'zu' => '祖魯文',
+ 'zun' => '祖尼文',
+ 'zxx' => '無語言內容',
+ 'zza' => '扎扎文',
+);
+
+$currencyNames = array(
+ 'ADP' => '安道爾陪士特',
+ 'AED' => '阿拉伯聯合大公國迪爾汗',
+ 'AFA' => '阿富汗尼 (1927–2002)',
+ 'AFN' => '阿富汗尼',
+ 'ALK' => '阿爾巴尼亞列克 (1946–1965)',
+ 'ALL' => '阿爾巴尼亞列克',
+ 'AMD' => '亞美尼亞德拉姆',
+ 'ANG' => '荷屬安地列斯盾',
+ 'AOA' => '安哥拉寬扎',
+ 'AOK' => '安哥拉寬扎 (1977–1990)',
+ 'AON' => '安哥拉新寬扎 (1990–2000)',
+ 'AOR' => '安哥拉新調寬扎 (1995–1999)',
+ 'ARA' => '阿根廷奧斯特納爾',
+ 'ARL' => '阿根廷披索 (1970–1983)',
+ 'ARM' => '阿根廷披索 (1881–1970)',
+ 'ARP' => '阿根廷披索 (1983–1985)',
+ 'ARS' => '阿根廷披索',
+ 'ATS' => '奧地利先令',
+ 'AUD' => '澳幣',
+ 'AWG' => '阿路巴盾',
+ 'AZM' => '亞塞拜然馬納特 (1993–2006)',
+ 'AZN' => '亞塞拜然馬納特',
+ 'BAD' => '波士尼亞-赫塞哥維納第納爾',
+ 'BAM' => '波士尼亞-赫塞哥維納可轉換馬克',
+ 'BAN' => '波士尼亞-赫塞哥維納新第納爾',
+ 'BBD' => '巴貝多元',
+ 'BDT' => '孟加拉塔卡',
+ 'BEC' => '比利時法郎(可轉換)',
+ 'BEF' => '比利時法郎',
+ 'BEL' => '比利時法郎(金融)',
+ 'BGL' => '保加利亞硬列弗',
+ 'BGM' => '保加利亞社會黨列弗',
+ 'BGN' => '保加利亞新列弗',
+ 'BGO' => '保加利亞列弗 (1879–1952)',
+ 'BHD' => '巴林第納爾',
+ 'BIF' => '蒲隆地法郎',
+ 'BMD' => '百慕達幣',
+ 'BND' => '汶萊元',
+ 'BOB' => '玻利維亞諾',
+ 'BOL' => '玻利維亞玻利維亞諾 (1863–1963)',
+ 'BOP' => '玻利維亞披索',
+ 'BOV' => '玻利維亞幕多',
+ 'BRB' => '巴西克魯薩多農瓦 (1967–1986)',
+ 'BRC' => '巴西克魯賽羅 (1986–1989)',
+ 'BRE' => '巴西克魯賽羅 (1990–1993)',
+ 'BRL' => '巴西里拉',
+ 'BRN' => '巴西克如爾達農瓦',
+ 'BRR' => '巴西克魯賽羅 (1993–1994)',
+ 'BRZ' => '巴西克魯賽羅 (1942 –1967)',
+ 'BSD' => '巴哈馬元',
+ 'BTN' => '不丹那特倫',
+ 'BUK' => '緬甸基雅特',
+ 'BWP' => '波札那普拉',
+ 'BYB' => '白俄羅斯新盧布 (1994–1999)',
+ 'BYR' => '白俄羅斯盧布',
+ 'BZD' => '貝里斯元',
+ 'CAD' => '加幣',
+ 'CDF' => '剛果法郎',
+ 'CHE' => '歐元 (WIR)',
+ 'CHF' => '瑞士法郎',
+ 'CHW' => '法郎 (WIR)',
+ 'CLE' => '智利埃斯庫多',
+ 'CLF' => '卡林油達佛曼跎',
+ 'CLP' => '智利披索',
+ 'CNY' => '人民幣',
+ 'COP' => '哥倫比亞披索',
+ 'COU' => '哥倫比亞幣 (COU)',
+ 'CRC' => '哥斯大黎加科朗',
+ 'CSD' => '舊塞爾維亞第納爾',
+ 'CSK' => '捷克斯洛伐克硬克朗',
+ 'CUC' => '古巴可轉換披索',
+ 'CUP' => '古巴披索',
+ 'CVE' => '維德角埃斯庫多',
+ 'CYP' => '賽普勒斯鎊',
+ 'CZK' => '捷克克朗',
+ 'DDM' => '東德奧斯特馬克',
+ 'DEM' => '德國馬克',
+ 'DJF' => '吉布地法郎',
+ 'DKK' => '丹麥克朗',
+ 'DOP' => '多明尼加披索',
+ 'DZD' => '阿爾及利亞第納爾',
+ 'ECS' => '厄瓜多蘇克雷',
+ 'ECV' => '厄瓜多爾由里達瓦康斯坦 (UVC)',
+ 'EEK' => '愛沙尼亞克朗',
+ 'EGP' => '埃及鎊',
+ 'ERN' => '厄立特里亞納克法',
+ 'ESA' => '西班牙比塞塔(會計單位)',
+ 'ESB' => '西班牙比塞塔(可轉換會計單位)',
+ 'ESP' => '西班牙陪士特',
+ 'ETB' => '衣索比亞比爾',
+ 'EUR' => '歐元',
+ 'FIM' => '芬蘭馬克',
+ 'FJD' => '斐濟元',
+ 'FKP' => '福克蘭群島鎊',
+ 'FRF' => '法國法郎',
+ 'GBP' => '英鎊',
+ 'GEK' => '喬治亞庫旁拉里',
+ 'GEL' => '喬治亞拉里',
+ 'GHC' => '迦納賽地 (1979–2007)',
+ 'GHS' => '迦納塞地',
+ 'GIP' => '直布羅陀鎊',
+ 'GMD' => '甘比亞達拉西',
+ 'GNF' => '幾內亞法郎',
+ 'GNS' => '幾內亞西里',
+ 'GQE' => '赤道幾內亞埃奎勒',
+ 'GRD' => '希臘德拉克馬',
+ 'GTQ' => '瓜地馬拉格查爾',
+ 'GWE' => '葡屬幾內亞埃斯庫多',
+ 'GWP' => '幾內亞比索披索',
+ 'GYD' => '圭亞那元',
+ 'HKD' => '港幣',
+ 'HNL' => '洪都拉斯倫皮拉',
+ 'HRD' => '克羅埃西亞第納爾',
+ 'HRK' => '克羅埃西亞庫納',
+ 'HTG' => '海地古德',
+ 'HUF' => '匈牙利福林',
+ 'IDR' => '印尼盾',
+ 'IEP' => '愛爾蘭鎊',
+ 'ILP' => '以色列鎊',
+ 'ILR' => '以色列謝克爾 (1980–1985)',
+ 'ILS' => '以色列新謝克爾',
+ 'INR' => '印度盧比',
+ 'IQD' => '伊拉克第納爾',
+ 'IRR' => '伊朗里亞爾',
+ 'ISJ' => '冰島克朗 (1918–1981)',
+ 'ISK' => '冰島克朗',
+ 'ITL' => '義大利里拉',
+ 'JMD' => '牙買加元',
+ 'JOD' => '約旦第納爾',
+ 'JPY' => '日圓',
+ 'KES' => '肯尼亞先令',
+ 'KGS' => '吉爾吉斯索姆',
+ 'KHR' => '柬埔寨瑞爾',
+ 'KMF' => '科摩羅法郎',
+ 'KPW' => '北韓圓',
+ 'KRH' => '南韓圜',
+ 'KRO' => '南韓圓',
+ 'KRW' => '韓圓',
+ 'KWD' => '科威特第納爾',
+ 'KYD' => '開曼群島元',
+ 'KZT' => '卡扎克斯坦坦吉',
+ 'LAK' => '寮國基普',
+ 'LBP' => '黎巴嫩鎊',
+ 'LKR' => '斯里蘭卡盧比',
+ 'LRD' => '賴比瑞亞元',
+ 'LSL' => '賴索托洛蒂',
+ 'LTL' => '立陶宛立特',
+ 'LTT' => '立陶宛特羅',
+ 'LUC' => '盧森堡可兌換法郎',
+ 'LUF' => '盧森堡法郎',
+ 'LUL' => '盧森堡金融法郎',
+ 'LVL' => '拉脫維亞拉特銀幣',
+ 'LVR' => '拉脫維亞盧布',
+ 'LYD' => '利比亞第納爾',
+ 'MAD' => '摩洛哥迪拉姆',
+ 'MAF' => '摩洛哥法郎',
+ 'MCF' => '摩納哥法郎',
+ 'MDC' => '摩爾多瓦券',
+ 'MDL' => '摩杜雲列伊',
+ 'MGA' => '馬達加斯加阿里亞里',
+ 'MGF' => '馬達加斯加法郎',
+ 'MKD' => '馬其頓第納爾',
+ 'MKN' => '馬其頓第納爾 (1992–1993)',
+ 'MLF' => '馬里法郎',
+ 'MMK' => '緬甸元',
+ 'MNT' => '蒙古圖格里克',
+ 'MOP' => '澳門元',
+ 'MRO' => '茅利塔尼亞烏吉亞',
+ 'MTL' => '馬爾他里拉',
+ 'MTP' => '馬爾他鎊',
+ 'MUR' => '模里西斯盧布',
+ 'MVP' => '馬爾地夫盧比',
+ 'MVR' => '馬爾地夫盧非亞',
+ 'MWK' => '馬拉維克瓦查',
+ 'MXN' => '墨西哥披索',
+ 'MXP' => '墨西哥銀披索 (1861–1992)',
+ 'MXV' => '墨西哥轉換單位 (UDI)',
+ 'MYR' => '馬來西亞令吉',
+ 'MZE' => '莫三比克埃斯庫多',
+ 'MZM' => '莫三比克梅蒂卡爾 (1980–2006)',
+ 'MZN' => '莫三比克梅蒂卡爾',
+ 'NAD' => '納米比亞元',
+ 'NGN' => '奈及利亞奈拉',
+ 'NIC' => '尼加拉瓜科多巴',
+ 'NIO' => '尼加拉瓜金科多巴',
+ 'NLG' => '荷蘭盾',
+ 'NOK' => '挪威克朗',
+ 'NPR' => '尼泊爾盧比',
+ 'NZD' => '紐西蘭幣',
+ 'OMR' => '阿曼里奧',
+ 'PAB' => '巴拿馬巴波亞',
+ 'PEI' => '祕魯因蒂',
+ 'PEN' => '秘魯新太陽幣',
+ 'PES' => '秘魯索爾 (1863–1965)',
+ 'PGK' => '巴布亞紐幾內亞基那',
+ 'PHP' => '菲律賓披索',
+ 'PKR' => '巴基斯坦盧比',
+ 'PLN' => '波蘭茲羅提',
+ 'PLZ' => '波蘭茲羅提 (1950–1995)',
+ 'PTE' => '葡萄牙埃斯庫多',
+ 'PYG' => '巴拉圭瓜拉尼',
+ 'QAR' => '卡達爾里亞爾',
+ 'RHD' => '羅德西亞元',
+ 'ROL' => '舊羅馬尼亞列伊',
+ 'RON' => '羅馬尼亞列伊',
+ 'RSD' => '塞爾維亞戴納',
+ 'RUB' => '俄羅斯盧布',
+ 'RUR' => '俄羅斯盧布 (1991–1998)',
+ 'RWF' => '盧安達法郎',
+ 'SAR' => '沙烏地里雅',
+ 'SBD' => '索羅門群島元',
+ 'SCR' => '塞席爾盧比',
+ 'SDD' => '蘇丹第納爾',
+ 'SDG' => '蘇丹鎊',
+ 'SDP' => '舊蘇丹鎊',
+ 'SEK' => '瑞典克朗',
+ 'SGD' => '新加坡幣',
+ 'SHP' => '聖赫勒拿鎊',
+ 'SIT' => '斯洛維尼亞托勒',
+ 'SKK' => '斯洛伐克克朗',
+ 'SLL' => '獅子山利昂',
+ 'SOS' => '索馬利亞先令',
+ 'SRD' => '蘇利南元',
+ 'SRG' => '蘇利南基爾',
+ 'SSP' => '南蘇丹鎊',
+ 'STD' => '聖多美島和普林西比島多布拉',
+ 'SUR' => '蘇聯盧布',
+ 'SVC' => '薩爾瓦多科郎',
+ 'SYP' => '敘利亞鎊',
+ 'SZL' => '史瓦濟蘭里朗吉尼',
+ 'THB' => '泰銖',
+ 'TJR' => '塔吉克盧布',
+ 'TJS' => '塔吉克索莫尼',
+ 'TMM' => '土庫曼馬納特 (1993–2009)',
+ 'TMT' => '土庫曼馬納特',
+ 'TND' => '突尼西亞第納爾',
+ 'TOP' => '東加潘加',
+ 'TPE' => '帝汶埃斯庫多',
+ 'TRL' => '土耳其里拉',
+ 'TRY' => '新土耳其里拉',
+ 'TTD' => '千里達及托巴哥元',
+ 'TWD' => '新臺幣',
+ 'TZS' => '坦尚尼亞先令',
+ 'UAH' => '烏克蘭格里夫納',
+ 'UAK' => '烏克蘭卡本瓦那茲',
+ 'UGS' => '烏干達先令 (1966–1987)',
+ 'UGX' => '烏干達先令',
+ 'USD' => '美元',
+ 'USN' => '美元(次日)',
+ 'USS' => '美元(當日)',
+ 'UYI' => '烏拉圭披索(指數單位)',
+ 'UYP' => '烏拉圭披索 (1975–1993)',
+ 'UYU' => '烏拉圭披索',
+ 'UZS' => '烏茲別克索姆',
+ 'VEB' => '委內瑞拉玻利瓦 (1871–2008)',
+ 'VEF' => '委內瑞拉玻利瓦',
+ 'VND' => '越南盾',
+ 'VNN' => '越南盾 (1978–1985)',
+ 'VUV' => '萬那杜瓦圖',
+ 'WST' => '西薩摩亞塔拉',
+ 'XAF' => '法郎 (CFA–BEAC)',
+ 'XAG' => '白銀',
+ 'XAU' => '黃金',
+ 'XBA' => '歐洲綜合單位',
+ 'XBB' => '歐洲貨幣單位 (XBB)',
+ 'XBC' => '歐洲會計單位 (XBC)',
+ 'XBD' => '歐洲會計單位 (XBD)',
+ 'XCD' => '格瑞那達元',
+ 'XDR' => '特殊提款權',
+ 'XEU' => '歐洲貨幣單位 (XEU)',
+ 'XFO' => '法國金法郎',
+ 'XFU' => '法國法郎 (UIC)',
+ 'XOF' => '法郎 (CFA–BCEAO)',
+ 'XPD' => '帕拉狄昂',
+ 'XPF' => '法郎 (CFP)',
+ 'XPT' => '白金',
+ 'XRE' => 'RINET 基金',
+ 'XSU' => '蘇克雷貨幣',
+ 'XTS' => '測試用貨幣代碼',
+ 'XUA' => '亞洲開發銀行計價單位',
+ 'XXX' => '未知貨幣',
+ 'YDD' => '葉門第納爾',
+ 'YER' => '葉門里雅',
+ 'YUD' => '南斯拉夫第納爾硬幣',
+ 'YUM' => '南斯拉夫挪威亞第納爾',
+ 'YUN' => '南斯拉夫可轉換第納爾',
+ 'YUR' => '南斯拉夫改革第納爾 (1992–1993)',
+ 'ZAL' => '南非蘭特(金融)',
+ 'ZAR' => '南非蘭特',
+ 'ZMK' => '尚比亞克瓦查 (1968–2012)',
+ 'ZMW' => '尚比亞克瓦查',
+ 'ZRN' => '薩伊新扎伊爾',
+ 'ZRZ' => '薩伊扎伊爾',
+ 'ZWD' => '辛巴威元 (1980–2008)',
+ 'ZWL' => '辛巴威元 (2009)',
+ 'ZWR' => '辛巴威元 (2008)',
+);
+
+$currencySymbols = array(
+ 'ADP' => 'ADP',
+ 'AED' => 'AED',
+ 'AFA' => 'AFA',
+ 'AFN' => 'AFN',
+ 'ALK' => 'ALK',
+ 'ALL' => 'ALL',
+ 'AMD' => 'AMD',
+ 'ANG' => 'ANG',
+ 'AOA' => 'AOA',
+ 'AOK' => 'AOK',
+ 'AON' => 'AON',
+ 'AOR' => 'AOR',
+ 'ARA' => 'ARA',
+ 'ARL' => 'ARL',
+ 'ARM' => 'ARM',
+ 'ARP' => 'ARP',
+ 'ARS' => 'ARS',
+ 'ATS' => 'ATS',
+ 'AUD' => 'AU$',
+ 'AWG' => 'AWG',
+ 'AZM' => 'AZM',
+ 'AZN' => 'AZN',
+ 'BAD' => 'BAD',
+ 'BAM' => 'BAM',
+ 'BAN' => 'BAN',
+ 'BBD' => 'BBD',
+ 'BDT' => 'BDT',
+ 'BEC' => 'BEC',
+ 'BEF' => 'BEF',
+ 'BEL' => 'BEL',
+ 'BGL' => 'BGL',
+ 'BGM' => 'BGM',
+ 'BGN' => 'BGN',
+ 'BGO' => 'BGO',
+ 'BHD' => 'BHD',
+ 'BIF' => 'BIF',
+ 'BMD' => 'BMD',
+ 'BND' => 'BND',
+ 'BOB' => 'BOB',
+ 'BOL' => 'BOL',
+ 'BOP' => 'BOP',
+ 'BOV' => 'BOV',
+ 'BRB' => 'BRB',
+ 'BRC' => 'BRC',
+ 'BRE' => 'BRE',
+ 'BRL' => 'R$',
+ 'BRN' => 'BRN',
+ 'BRR' => 'BRR',
+ 'BRZ' => 'BRZ',
+ 'BSD' => 'BSD',
+ 'BTN' => 'BTN',
+ 'BUK' => 'BUK',
+ 'BWP' => 'BWP',
+ 'BYB' => 'BYB',
+ 'BYR' => 'BYR',
+ 'BZD' => 'BZD',
+ 'CAD' => 'CA$',
+ 'CDF' => 'CDF',
+ 'CHE' => 'CHE',
+ 'CHF' => 'CHF',
+ 'CHW' => 'CHW',
+ 'CLE' => 'CLE',
+ 'CLF' => 'CLF',
+ 'CLP' => 'CLP',
+ 'CNY' => 'CN¥',
+ 'COP' => 'COP',
+ 'COU' => 'COU',
+ 'CRC' => 'CRC',
+ 'CSD' => 'CSD',
+ 'CSK' => 'CSK',
+ 'CUC' => 'CUC',
+ 'CUP' => 'CUP',
+ 'CVE' => 'CVE',
+ 'CYP' => 'CYP',
+ 'CZK' => 'CZK',
+ 'DDM' => 'DDM',
+ 'DEM' => 'DEM',
+ 'DJF' => 'DJF',
+ 'DKK' => 'DKK',
+ 'DOP' => 'DOP',
+ 'DZD' => 'DZD',
+ 'ECS' => 'ECS',
+ 'ECV' => 'ECV',
+ 'EEK' => 'EEK',
+ 'EGP' => 'EGP',
+ 'ERN' => 'ERN',
+ 'ESA' => 'ESA',
+ 'ESB' => 'ESB',
+ 'ESP' => 'ESP',
+ 'ETB' => 'ETB',
+ 'EUR' => '€',
+ 'FIM' => 'FIM',
+ 'FJD' => 'FJD',
+ 'FKP' => 'FKP',
+ 'FRF' => 'FRF',
+ 'GBP' => '£',
+ 'GEK' => 'GEK',
+ 'GEL' => 'GEL',
+ 'GHC' => 'GHC',
+ 'GHS' => 'GHS',
+ 'GIP' => 'GIP',
+ 'GMD' => 'GMD',
+ 'GNF' => 'GNF',
+ 'GNS' => 'GNS',
+ 'GQE' => 'GQE',
+ 'GRD' => 'GRD',
+ 'GTQ' => 'GTQ',
+ 'GWE' => 'GWE',
+ 'GWP' => 'GWP',
+ 'GYD' => 'GYD',
+ 'HKD' => 'HK$',
+ 'HNL' => 'HNL',
+ 'HRD' => 'HRD',
+ 'HRK' => 'HRK',
+ 'HTG' => 'HTG',
+ 'HUF' => 'HUF',
+ 'IDR' => 'IDR',
+ 'IEP' => 'IEP',
+ 'ILP' => 'ILP',
+ 'ILR' => 'ILR',
+ 'ILS' => '₪',
+ 'INR' => '₹',
+ 'IQD' => 'IQD',
+ 'IRR' => 'IRR',
+ 'ISJ' => 'ISJ',
+ 'ISK' => 'ISK',
+ 'ITL' => 'ITL',
+ 'JMD' => 'JMD',
+ 'JOD' => 'JOD',
+ 'JPY' => '¥',
+ 'KES' => 'KES',
+ 'KGS' => 'KGS',
+ 'KHR' => 'KHR',
+ 'KMF' => 'KMF',
+ 'KPW' => 'KPW',
+ 'KRH' => 'KRH',
+ 'KRO' => 'KRO',
+ 'KRW' => '₩',
+ 'KWD' => 'KWD',
+ 'KYD' => 'KYD',
+ 'KZT' => 'KZT',
+ 'LAK' => 'LAK',
+ 'LBP' => 'LBP',
+ 'LKR' => 'LKR',
+ 'LRD' => 'LRD',
+ 'LSL' => 'LSL',
+ 'LTL' => 'LTL',
+ 'LTT' => 'LTT',
+ 'LUC' => 'LUC',
+ 'LUF' => 'LUF',
+ 'LUL' => 'LUL',
+ 'LVL' => 'LVL',
+ 'LVR' => 'LVR',
+ 'LYD' => 'LYD',
+ 'MAD' => 'MAD',
+ 'MAF' => 'MAF',
+ 'MCF' => 'MCF',
+ 'MDC' => 'MDC',
+ 'MDL' => 'MDL',
+ 'MGA' => 'MGA',
+ 'MGF' => 'MGF',
+ 'MKD' => 'MKD',
+ 'MKN' => 'MKN',
+ 'MLF' => 'MLF',
+ 'MMK' => 'MMK',
+ 'MNT' => 'MNT',
+ 'MOP' => 'MOP',
+ 'MRO' => 'MRO',
+ 'MTL' => 'MTL',
+ 'MTP' => 'MTP',
+ 'MUR' => 'MUR',
+ 'MVP' => 'MVP',
+ 'MVR' => 'MVR',
+ 'MWK' => 'MWK',
+ 'MXN' => 'MX$',
+ 'MXP' => 'MXP',
+ 'MXV' => 'MXV',
+ 'MYR' => 'MYR',
+ 'MZE' => 'MZE',
+ 'MZM' => 'MZM',
+ 'MZN' => 'MZN',
+ 'NAD' => 'NAD',
+ 'NGN' => 'NGN',
+ 'NIC' => 'NIC',
+ 'NIO' => 'NIO',
+ 'NLG' => 'NLG',
+ 'NOK' => 'NOK',
+ 'NPR' => 'NPR',
+ 'NZD' => 'NZ$',
+ 'OMR' => 'OMR',
+ 'PAB' => 'PAB',
+ 'PEI' => 'PEI',
+ 'PEN' => 'PEN',
+ 'PES' => 'PES',
+ 'PGK' => 'PGK',
+ 'PHP' => 'PHP',
+ 'PKR' => 'PKR',
+ 'PLN' => 'PLN',
+ 'PLZ' => 'PLZ',
+ 'PTE' => 'PTE',
+ 'PYG' => 'PYG',
+ 'QAR' => 'QAR',
+ 'RHD' => 'RHD',
+ 'ROL' => 'ROL',
+ 'RON' => 'RON',
+ 'RSD' => 'RSD',
+ 'RUB' => 'RUB',
+ 'RUR' => 'RUR',
+ 'RWF' => 'RWF',
+ 'SAR' => 'SAR',
+ 'SBD' => 'SBD',
+ 'SCR' => 'SCR',
+ 'SDD' => 'SDD',
+ 'SDG' => 'SDG',
+ 'SDP' => 'SDP',
+ 'SEK' => 'SEK',
+ 'SGD' => 'SGD',
+ 'SHP' => 'SHP',
+ 'SIT' => 'SIT',
+ 'SKK' => 'SKK',
+ 'SLL' => 'SLL',
+ 'SOS' => 'SOS',
+ 'SRD' => 'SRD',
+ 'SRG' => 'SRG',
+ 'SSP' => 'SSP',
+ 'STD' => 'STD',
+ 'SUR' => 'SUR',
+ 'SVC' => 'SVC',
+ 'SYP' => 'SYP',
+ 'SZL' => 'SZL',
+ 'THB' => '฿',
+ 'TJR' => 'TJR',
+ 'TJS' => 'TJS',
+ 'TMM' => 'TMM',
+ 'TMT' => 'TMT',
+ 'TND' => 'TND',
+ 'TOP' => 'TOP',
+ 'TPE' => 'TPE',
+ 'TRL' => 'TRL',
+ 'TRY' => 'TRY',
+ 'TTD' => 'TTD',
+ 'TWD' => 'NT$',
+ 'TZS' => 'TZS',
+ 'UAH' => 'UAH',
+ 'UAK' => 'UAK',
+ 'UGS' => 'UGS',
+ 'UGX' => 'UGX',
+ 'USD' => '$',
+ 'USN' => 'USN',
+ 'USS' => 'USS',
+ 'UYI' => 'UYI',
+ 'UYP' => 'UYP',
+ 'UYU' => 'UYU',
+ 'UZS' => 'UZS',
+ 'VEB' => 'VEB',
+ 'VEF' => 'VEF',
+ 'VND' => '₫',
+ 'VNN' => 'VNN',
+ 'VUV' => 'VUV',
+ 'WST' => 'WST',
+ 'XAF' => 'FCFA',
+ 'XAG' => 'XAG',
+ 'XAU' => 'XAU',
+ 'XBA' => 'XBA',
+ 'XBB' => 'XBB',
+ 'XBC' => 'XBC',
+ 'XBD' => 'XBD',
+ 'XCD' => 'EC$',
+ 'XDR' => 'XDR',
+ 'XEU' => 'XEU',
+ 'XFO' => 'XFO',
+ 'XFU' => 'XFU',
+ 'XOF' => 'CFA',
+ 'XPD' => 'XPD',
+ 'XPF' => 'CFPF',
+ 'XPT' => 'XPT',
+ 'XRE' => 'XRE',
+ 'XSU' => 'XSU',
+ 'XTS' => 'XTS',
+ 'XUA' => 'XUA',
+ 'XXX' => 'XXX',
+ 'YDD' => 'YDD',
+ 'YER' => 'YER',
+ 'YUD' => 'YUD',
+ 'YUM' => 'YUM',
+ 'YUN' => 'YUN',
+ 'YUR' => 'YUR',
+ 'ZAL' => 'ZAL',
+ 'ZAR' => 'ZAR',
+ 'ZMK' => 'ZMK',
+ 'ZMW' => 'ZMW',
+ 'ZRN' => 'ZRN',
+ 'ZRZ' => 'ZRZ',
+ 'ZWD' => 'ZWD',
+ 'ZWL' => 'ZWL',
+ 'ZWR' => 'ZWR',
+);
+
+$countryNames = array(
+ 'AC' => '阿森松島',
+ 'AD' => '安道爾',
+ 'AE' => '阿拉伯聯合大公國',
+ 'AF' => '阿富汗',
+ 'AG' => '安地卡及巴布達',
+ 'AI' => '安圭拉島',
+ 'AL' => '阿爾巴尼亞',
+ 'AM' => '亞美尼亞',
+ 'AN' => '荷屬安地列斯',
+ 'AO' => '安哥拉',
+ 'AQ' => '南極洲',
+ 'AR' => '阿根廷',
+ 'AS' => '美屬薩摩亞群島',
+ 'AT' => '奧地利',
+ 'AU' => '澳洲',
+ 'AW' => '阿路巴',
+ 'AX' => '奧蘭群島',
+ 'AZ' => '亞塞拜然',
+ 'BA' => '波士尼亞與赫塞格維納',
+ 'BB' => '巴貝多',
+ 'BD' => '孟加拉',
+ 'BE' => '比利時',
+ 'BF' => '布吉納法索',
+ 'BG' => '保加利亞',
+ 'BH' => '巴林',
+ 'BI' => '蒲隆地',
+ 'BJ' => '貝南',
+ 'BL' => '聖巴瑟米',
+ 'BM' => '百慕達',
+ 'BN' => '汶萊',
+ 'BO' => '玻利維亞',
+ 'BQ' => '荷蘭加勒比區',
+ 'BR' => '巴西',
+ 'BS' => '巴哈馬',
+ 'BT' => '不丹',
+ 'BV' => '布威島',
+ 'BW' => '波札那',
+ 'BY' => '白俄羅斯',
+ 'BZ' => '貝里斯',
+ 'CA' => '加拿大',
+ 'CC' => '可可斯群島',
+ 'CD' => '剛果(金夏沙)',
+ 'CF' => '中非共和國',
+ 'CG' => '剛果(布拉薩)',
+ 'CH' => '瑞士',
+ 'CI' => '象牙海岸',
+ 'CK' => '庫克群島',
+ 'CL' => '智利',
+ 'CM' => '喀麥隆',
+ 'CN' => '中華人民共和國',
+ 'CO' => '哥倫比亞',
+ 'CP' => '克里派頓島',
+ 'CR' => '哥斯大黎加',
+ 'CU' => '古巴',
+ 'CV' => '維德角',
+ 'CW' => '庫拉索',
+ 'CX' => '聖誕島',
+ 'CY' => '賽普勒斯',
+ 'CZ' => '捷克共和國',
+ 'DE' => '德國',
+ 'DG' => '迪亞哥加西亞島',
+ 'DJ' => '吉布地',
+ 'DK' => '丹麥',
+ 'DM' => '多米尼克',
+ 'DO' => '多明尼加共和國',
+ 'DZ' => '阿爾及利亞',
+ 'EA' => '休達與梅利利亞',
+ 'EC' => '厄瓜多',
+ 'EE' => '愛沙尼亞',
+ 'EG' => '埃及',
+ 'EH' => '西撒哈拉',
+ 'ER' => '厄利垂亞',
+ 'ES' => '西班牙',
+ 'ET' => '衣索比亞',
+ 'EU' => '歐盟',
+ 'FI' => '芬蘭',
+ 'FJ' => '斐濟',
+ 'FK' => '福克蘭群島',
+ 'FM' => '密克羅尼西亞群島',
+ 'FO' => '法羅群島',
+ 'FR' => '法國',
+ 'GA' => '加彭',
+ 'GB' => '英國',
+ 'GD' => '格瑞那達',
+ 'GE' => '喬治亞共和國',
+ 'GF' => '法屬圭亞那',
+ 'GG' => '根西島',
+ 'GH' => '迦納',
+ 'GI' => '直布羅陀',
+ 'GL' => '格陵蘭',
+ 'GM' => '甘比亞',
+ 'GN' => '幾內亞',
+ 'GP' => '瓜地洛普',
+ 'GQ' => '赤道幾內亞',
+ 'GR' => '希臘',
+ 'GS' => '南喬治亞與南三明治群島',
+ 'GT' => '瓜地馬拉',
+ 'GU' => '關島',
+ 'GW' => '幾內亞比紹',
+ 'GY' => '蓋亞那',
+ 'HK' => '香港',
+ 'HM' => '赫德島和麥克唐納群島',
+ 'HN' => '宏都拉斯',
+ 'HR' => '克羅埃西亞',
+ 'HT' => '海地',
+ 'HU' => '匈牙利',
+ 'IC' => '加那利群島',
+ 'ID' => '印尼',
+ 'IE' => '愛爾蘭',
+ 'IL' => '以色列',
+ 'IM' => '曼島',
+ 'IN' => '印度',
+ 'IO' => '英屬印度洋領土',
+ 'IQ' => '伊拉克',
+ 'IR' => '伊朗',
+ 'IS' => '冰島',
+ 'IT' => '義大利',
+ 'JE' => '澤西島',
+ 'JM' => '牙買加',
+ 'JO' => '約旦',
+ 'JP' => '日本',
+ 'KE' => '肯亞',
+ 'KG' => '吉爾吉斯',
+ 'KH' => '柬埔寨',
+ 'KI' => '吉里巴斯',
+ 'KM' => '葛摩',
+ 'KN' => '聖克里斯多福及尼維斯',
+ 'KP' => '北韓',
+ 'KR' => '南韓',
+ 'KW' => '科威特',
+ 'KY' => '開曼群島',
+ 'KZ' => '哈薩克',
+ 'LA' => '寮國',
+ 'LB' => '黎巴嫩',
+ 'LC' => '聖露西亞',
+ 'LI' => '列支敦斯登',
+ 'LK' => '斯里蘭卡',
+ 'LR' => '賴比瑞亞',
+ 'LS' => '賴索托',
+ 'LT' => '立陶宛',
+ 'LU' => '盧森堡',
+ 'LV' => '拉脫維亞',
+ 'LY' => '利比亞',
+ 'MA' => '摩洛哥',
+ 'MC' => '摩納哥',
+ 'MD' => '摩爾多瓦',
+ 'ME' => '蒙特內哥羅',
+ 'MF' => '法屬聖馬丁',
+ 'MG' => '馬達加斯加',
+ 'MH' => '馬紹爾群島',
+ 'MK' => '馬其頓',
+ 'ML' => '馬利',
+ 'MM' => '緬甸',
+ 'MN' => '蒙古',
+ 'MO' => '澳門',
+ 'MP' => '北馬里亞納群島',
+ 'MQ' => '馬丁尼克島',
+ 'MR' => '茅利塔尼亞',
+ 'MS' => '蒙哲臘',
+ 'MT' => '馬爾他',
+ 'MU' => '模里西斯',
+ 'MV' => '馬爾地夫',
+ 'MW' => '馬拉威',
+ 'MX' => '墨西哥',
+ 'MY' => '馬來西亞',
+ 'MZ' => '莫三比克',
+ 'NA' => '納米比亞',
+ 'NC' => '新喀里多尼亞群島',
+ 'NE' => '尼日',
+ 'NF' => '諾福克島',
+ 'NG' => '奈及利亞',
+ 'NI' => '尼加拉瓜',
+ 'NL' => '荷蘭',
+ 'NO' => '挪威',
+ 'NP' => '尼泊爾',
+ 'NR' => '諾魯',
+ 'NU' => '紐埃島',
+ 'NZ' => '紐西蘭',
+ 'OM' => '阿曼王國',
+ 'PA' => '巴拿馬',
+ 'PE' => '秘魯',
+ 'PF' => '法屬玻里尼西亞',
+ 'PG' => '巴布亞紐幾內亞',
+ 'PH' => '菲律賓',
+ 'PK' => '巴基斯坦',
+ 'PL' => '波蘭',
+ 'PM' => '聖皮埃爾和密克隆群島',
+ 'PN' => '皮特肯群島',
+ 'PR' => '波多黎各',
+ 'PS' => '巴勒斯坦',
+ 'PT' => '葡萄牙',
+ 'PW' => '帛琉',
+ 'PY' => '巴拉圭',
+ 'QA' => '卡達',
+ 'QO' => '大洋洲邊疆群島',
+ 'RE' => '留尼旺',
+ 'RO' => '羅馬尼亞',
+ 'RS' => '塞爾維亞',
+ 'RU' => '俄羅斯',
+ 'RW' => '盧安達',
+ 'SA' => '沙烏地阿拉伯',
+ 'SB' => '索羅門群島',
+ 'SC' => '塞席爾',
+ 'SD' => '蘇丹',
+ 'SE' => '瑞典',
+ 'SG' => '新加坡',
+ 'SH' => '聖赫勒拿島',
+ 'SI' => '斯洛維尼亞',
+ 'SJ' => '冷岸及央麥恩群島',
+ 'SK' => '斯洛伐克',
+ 'SL' => '獅子山',
+ 'SM' => '聖馬利諾',
+ 'SN' => '塞內加爾',
+ 'SO' => '索馬利亞',
+ 'SR' => '蘇利南',
+ 'SS' => '南蘇丹',
+ 'ST' => '聖多美及普林西比',
+ 'SV' => '薩爾瓦多',
+ 'SX' => '荷屬聖馬丁',
+ 'SY' => '敘利亞',
+ 'SZ' => '史瓦濟蘭',
+ 'TA' => '特里斯坦達庫尼亞群島',
+ 'TC' => '土克斯及開科斯群島',
+ 'TD' => '查德',
+ 'TF' => '法屬南方屬地',
+ 'TG' => '多哥共和國',
+ 'TH' => '泰國',
+ 'TJ' => '塔吉克',
+ 'TK' => '托克勞群島',
+ 'TL' => '東帝汶',
+ 'TM' => '土庫曼',
+ 'TN' => '突尼西亞',
+ 'TO' => '東加',
+ 'TR' => '土耳其',
+ 'TT' => '千里達及托巴哥',
+ 'TV' => '吐瓦魯',
+ 'TW' => '台灣',
+ 'TZ' => '坦尚尼亞',
+ 'UA' => '烏克蘭',
+ 'UG' => '烏干達',
+ 'UM' => '美國本土外小島嶼',
+ 'US' => '美國',
+ 'UY' => '烏拉圭',
+ 'UZ' => '烏茲別克',
+ 'VA' => '梵蒂岡',
+ 'VC' => '聖文森及格瑞那丁',
+ 'VE' => '委內瑞拉',
+ 'VG' => '英屬維京群島',
+ 'VI' => '美屬維京群島',
+ 'VN' => '越南',
+ 'VU' => '萬那杜',
+ 'WF' => '瓦利斯和富圖納群島',
+ 'WS' => '薩摩亞群島',
+ 'XK' => '科索沃',
+ 'YE' => '葉門',
+ 'YT' => '馬約特',
+ 'ZA' => '南非',
+ 'ZM' => '尚比亞',
+ 'ZW' => '辛巴威',
+);
+
+$timeUnits = array(
+ 'day-future-other' => '{0} 天後',
+ 'day-narrow-future-other' => '{0} 天後',
+ 'day-narrow-past-other' => '{0} 天前',
+ 'day-other' => '{0} 天',
+ 'day-past-other' => '{0} 天前',
+ 'day-short-future-other' => '{0} 天後',
+ 'day-short-past-other' => '{0} 天前',
+ 'hour-future-other' => '{0} 小時後',
+ 'hour-narrow-future-other' => '{0} 小時後',
+ 'hour-narrow-past-other' => '{0} 小時前',
+ 'hour-other' => '{0} 小時',
+ 'hour-past-other' => '{0} 小時前',
+ 'hour-short-future-other' => '{0} 小時後',
+ 'hour-short-past-other' => '{0} 小時前',
+ 'microsecond-other' => '{0} 微秒',
+ 'millisecond-other' => '{0} 毫秒',
+ 'minute-future-other' => '{0} 分鐘後',
+ 'minute-narrow-future-other' => '{0} 分鐘後',
+ 'minute-narrow-past-other' => '{0} 分鐘前',
+ 'minute-other' => '{0} 分鐘',
+ 'minute-past-other' => '{0} 分鐘前',
+ 'minute-short-future-other' => '{0} 分鐘後',
+ 'minute-short-past-other' => '{0} 分鐘前',
+ 'month-future-other' => '{0} 個月後',
+ 'month-narrow-future-other' => '{0} 個月後',
+ 'month-narrow-past-other' => '{0} 個月前',
+ 'month-other' => '{0} 個月',
+ 'month-past-other' => '{0} 個月前',
+ 'month-short-future-other' => '{0} 個月後',
+ 'month-short-past-other' => '{0} 個月前',
+ 'nanosecond-other' => '{0} 奈秒',
+ 'quarter-future-other' => '{0} 季後',
+ 'quarter-narrow-future-other' => '{0} 季後',
+ 'quarter-narrow-past-other' => '{0} 季前',
+ 'quarter-past-other' => '{0} 季前',
+ 'quarter-short-future-other' => '{0} 季後',
+ 'quarter-short-past-other' => '{0} 季前',
+ 'second-future-other' => '{0} 秒後',
+ 'second-narrow-future-other' => '{0} 秒後',
+ 'second-narrow-past-other' => '{0} 秒前',
+ 'second-other' => '{0} 秒',
+ 'second-past-other' => '{0} 秒前',
+ 'second-short-future-other' => '{0} 秒後',
+ 'second-short-past-other' => '{0} 秒前',
+ 'week-future-other' => '{0} 週後',
+ 'week-narrow-future-other' => '{0} 週後',
+ 'week-narrow-past-other' => '{0} 週前',
+ 'week-other' => '{0} 週',
+ 'week-past-other' => '{0} 週前',
+ 'week-short-future-other' => '{0} 週後',
+ 'week-short-past-other' => '{0} 週前',
+ 'year-future-other' => '{0} 年後',
+ 'year-narrow-future-other' => '{0} 年後',
+ 'year-narrow-past-other' => '{0} 年前',
+ 'year-other' => '{0} 年',
+ 'year-past-other' => '{0} 年前',
+ 'year-short-future-other' => '{0} 年後',
+ 'year-short-past-other' => '{0} 年前',
+);
diff --git a/MLEB/cldr/CldrNames/CldrNamesZu.php b/MLEB/cldr/CldrNames/CldrNamesZu.php
new file mode 100644
index 00000000..8a05d24f
--- /dev/null
+++ b/MLEB/cldr/CldrNames/CldrNamesZu.php
@@ -0,0 +1,822 @@
+<?php
+
+$languageNames = array(
+ 'ab' => 'isi-Abkhazian',
+ 'ach' => 'Isi-Acoli',
+ 'af' => 'isi-Afrikaans',
+ 'agq' => 'isi-Aghem',
+ 'ak' => 'isi-Akan',
+ 'am' => 'isi-Amharic',
+ 'ar' => 'isi-Arabic',
+ 'ar-001' => 'Isi-Arabic Esijwayelekile Samanje',
+ 'arn' => 'isi-Mapuche',
+ 'as' => 'isi-Assamese',
+ 'asa' => 'asa',
+ 'ay' => 'isi-Aymara',
+ 'az' => 'isi-Azerbaijani',
+ 'ba' => 'isi-Bashkir',
+ 'be' => 'isi-Belarusian',
+ 'bem' => 'Isi-Bemba',
+ 'bez' => 'isi-Bena',
+ 'bg' => 'isi-Bulgari',
+ 'bm' => 'isi-Bambara',
+ 'bn' => 'isi-Bengali',
+ 'bo' => 'isi-Tibetan',
+ 'br' => 'Isi-Breton',
+ 'brx' => 'isi-Bodo',
+ 'bs' => 'isi-Bosnian',
+ 'ca' => 'isi-Catalan',
+ 'cgg' => 'isi-Chiga',
+ 'chr' => 'Isi-Cherokee',
+ 'ckb' => 'Isi-Sorani Kurdish',
+ 'co' => 'isi-Corsican',
+ 'cs' => 'isi-Czech',
+ 'cy' => 'isi-Welsh',
+ 'da' => 'isi-Danish',
+ 'dav' => 'isi-Taita',
+ 'de' => 'isi-German',
+ 'de-at' => 'isi-Austrian German',
+ 'de-ch' => 'isi-Swiss High German',
+ 'dje' => 'isi-Zarma',
+ 'dsb' => 'isi-Lower Sorbian',
+ 'dua' => 'isi-Duala',
+ 'dv' => 'isi-Divehi',
+ 'dyo' => 'isi-Jola-Fonyl',
+ 'dz' => 'isi-Dzongkha',
+ 'ebu' => 'isi-Embu',
+ 'ee' => 'Isi-Ewe',
+ 'efi' => 'isi-Efik',
+ 'el' => 'isi-Greek',
+ 'en' => 'i-English',
+ 'en-au' => 'isi-Austrillian English',
+ 'en-ca' => 'i-Canadian English',
+ 'en-gb' => 'i-British English',
+ 'en-us' => 'i-American English',
+ 'eo' => 'isi-Esperanto',
+ 'es' => 'isi-Spanish',
+ 'es-419' => 'isi-Latin American Spanish',
+ 'es-mx' => 'isi-Mexican Spanish',
+ 'et' => 'isi-Estonia',
+ 'eu' => 'isi-Basque',
+ 'fa' => 'isi-Persian',
+ 'fi' => 'isi-Finnish',
+ 'fil' => 'isi-Filipino',
+ 'fj' => 'isi-Fijian',
+ 'fo' => 'isi-Faroese',
+ 'fr' => 'isi-French',
+ 'fr-ca' => 'isi-Canadian French',
+ 'fr-ch' => 'isi-Swiss French',
+ 'fy' => 'isi-Western Frisian',
+ 'ga' => 'isi-Irish',
+ 'gaa' => 'Isi-Ga',
+ 'gag' => 'isi-Gagauz',
+ 'gd' => 'i-Scottish Gaelic',
+ 'gl' => 'isi-Galicia',
+ 'gn' => 'isi-Guarani',
+ 'gsw' => 'isi-Swiss German',
+ 'gu' => 'isi-Gujarati',
+ 'guz' => 'isi-Gusli',
+ 'gv' => 'isi-Manx',
+ 'ha' => 'isi-Hausa',
+ 'haw' => 'isi-Hawaiian',
+ 'he' => 'isi-Hebrew',
+ 'hi' => 'isi-Hindi',
+ 'hr' => 'isi-Croatian',
+ 'hsb' => 'isi-Upper Sorbian',
+ 'ht' => 'isi-Haitian',
+ 'hu' => 'isi-Hungarian',
+ 'hy' => 'isi-Armenia',
+ 'ia' => 'Izilimi ezihlangene',
+ 'id' => 'isi-Indonesian',
+ 'ie' => 'Izilimu',
+ 'ig' => 'isi-Igbo',
+ 'ii' => 'isi-Sichuan Yi',
+ 'is' => 'isi-Icelandic',
+ 'it' => 'isi-Italian',
+ 'iu' => 'isi-Inuktitut',
+ 'ja' => 'isi-Japanese',
+ 'jgo' => 'isi-Ngomba',
+ 'jmc' => 'isi-Machame',
+ 'jv' => 'isi-Javanese',
+ 'ka' => 'isi-Georgian',
+ 'kab' => 'isi-Kabyle',
+ 'kam' => 'isi-Kamba',
+ 'kde' => 'isi-Makonde',
+ 'kea' => 'isi-Kabuverdianu',
+ 'kg' => 'Isi-Kongo',
+ 'khq' => 'isi-Koyra Chiini',
+ 'ki' => 'isi-Kikuyu',
+ 'kk' => 'isi-Kazakh',
+ 'kl' => 'isi-Kalaallisut',
+ 'kln' => 'isi-Kalenjin',
+ 'km' => 'isi-Khmer',
+ 'kn' => 'isi-Kannada',
+ 'ko' => 'isi-Korean',
+ 'koi' => 'isi-Komi-Permyak',
+ 'kok' => 'isi-Konkani',
+ 'ks' => 'isi-Kashmiri',
+ 'ksb' => 'isi-Shambala',
+ 'ksf' => 'isi-Bafia',
+ 'ku' => 'isi-Kurdish',
+ 'kw' => 'isi-Cornish',
+ 'ky' => 'isi-Kyrgyz',
+ 'la' => 'isi-Latin',
+ 'lag' => 'isi-Langi',
+ 'lb' => 'isi-Luxembourgish',
+ 'lg' => 'Isi-Ganda',
+ 'lkt' => 'isi-Lakota',
+ 'ln' => 'isi-Lingala',
+ 'lo' => 'i-Lao',
+ 'loz' => 'Isi-Lozi',
+ 'lt' => 'isi-Lithuanian',
+ 'lu' => 'isi-Luba-Katanga',
+ 'lua' => 'Isi-Luba-Lulua',
+ 'luo' => 'isi-Luo',
+ 'luy' => 'isi-Luyia',
+ 'lv' => 'isi-Latvian',
+ 'mas' => 'isi-Masai',
+ 'mer' => 'isi-Meru',
+ 'mfe' => 'Isi-Morisyen',
+ 'mg' => 'isi-Malagasy',
+ 'mgh' => 'isi-Makhuwa-Meetto',
+ 'mgo' => 'isi-Meta’',
+ 'mi' => 'isi-Maori',
+ 'mk' => 'isi-Macedonian',
+ 'ml' => 'isi-Malayalam',
+ 'mn' => 'isi-Mongolian',
+ 'moh' => 'isi-Mohawk',
+ 'mr' => 'isi-Marathi',
+ 'ms' => 'isi-Malay',
+ 'mt' => 'isi-Maltese',
+ 'mua' => 'isi-Mundang',
+ 'my' => 'isi-Burmese',
+ 'naq' => 'isi-Nama',
+ 'nb' => 'isi-Norwegian Bokmål',
+ 'nd' => 'isi-North Ndebele',
+ 'ne' => 'isi-Nepali',
+ 'nl' => 'isi-Dutch',
+ 'nl-be' => 'isi-Flemish',
+ 'nmg' => 'isi-Kwasio',
+ 'nn' => 'i-Norwegian Nynorsk',
+ 'no' => 'IsiNoweyi',
+ 'nqo' => 'isi-N’Ko',
+ 'nso' => 'isi-Northern Sotho',
+ 'nus' => 'isi-Nuer',
+ 'ny' => 'isi-Nyanja',
+ 'nyn' => 'Isi-Nyankole',
+ 'oc' => 'Isi-Osithani',
+ 'om' => 'Isi-Oromo',
+ 'or' => 'isi-Oriya',
+ 'os' => 'isi-Ossetic',
+ 'pa' => 'isi-Punjabi',
+ 'pl' => 'isi-Polish',
+ 'ps' => 'isi-Pashto',
+ 'pt' => 'isi-Portuguese',
+ 'pt-br' => 'isi-Brazillian Portuguese',
+ 'pt-pt' => 'isi-European Portuguese',
+ 'qu' => 'isi-Quechua',
+ 'quc' => 'isi-Kʼicheʼ',
+ 'rm' => 'isi-Romansh',
+ 'rn' => 'isi-Rundi',
+ 'ro' => 'isi-Romanian',
+ 'ro-md' => 'isi-Moldavian',
+ 'rof' => 'isi-Rombo',
+ 'ru' => 'isi-Russian',
+ 'rw' => 'isi-Kinyarwanda',
+ 'rwk' => 'isi-Rwa',
+ 'sa' => 'isi-Sanskrit',
+ 'saq' => 'isi-Samburu',
+ 'sbp' => 'isi-Sangu',
+ 'sd' => 'isi-Sindhi',
+ 'se' => 'isi-Northern Sami',
+ 'seh' => 'isi-Sena',
+ 'ses' => 'isi-Koyraboro Senni',
+ 'sg' => 'isi-Sango',
+ 'sh' => 'Serbo-Croatian',
+ 'shi' => 'isi-Tachelhit',
+ 'si' => 'i-Sinhala',
+ 'sk' => 'isi-Slovak',
+ 'sl' => 'isi-Slovenian',
+ 'sm' => 'isi-Samoan',
+ 'sma' => 'isi-Southern Sami',
+ 'smj' => 'isi-Lule Sami',
+ 'smn' => 'isi-Inari Sami',
+ 'sms' => 'isi-Skolt Sami',
+ 'sn' => 'isi-Shona',
+ 'so' => 'isi-Somali',
+ 'sq' => 'isi-Albania',
+ 'sr' => 'isi-Serbian',
+ 'ss' => 'isiSwati',
+ 'st' => 'isiSuthu',
+ 'su' => 'isi-Sundanese',
+ 'sv' => 'isi-Swedish',
+ 'sw' => 'isi-Swahili',
+ 'swc' => 'isi-Congo Swahili',
+ 'ta' => 'isi-Tamil',
+ 'te' => 'isi-Telugu',
+ 'teo' => 'isi-Teso',
+ 'tet' => 'isi-Tetum',
+ 'tg' => 'isi-Tajik',
+ 'th' => 'isi-Thai',
+ 'ti' => 'isi-Tigrinya',
+ 'tk' => 'isi-Turkmen',
+ 'tlh' => 'Isi-Klingon',
+ 'tn' => 'isi-Tswana',
+ 'to' => 'Isi-Tongan',
+ 'tpi' => 'isi-Tok Pisin',
+ 'tr' => 'isi-Turkish',
+ 'ts' => 'isi-Tsonga',
+ 'tt' => 'isi-Tatar',
+ 'tum' => 'Isi-Tumbuka',
+ 'tw' => 'Twi',
+ 'twq' => 'isi-Tasawaq',
+ 'ty' => 'isi-Tahitian',
+ 'tzm' => 'isi-Central Atlas Tamazight',
+ 'ug' => 'isi-Uighur',
+ 'uk' => 'isi-Ukrainian',
+ 'und' => 'Ulimi olungaziwa',
+ 'ur' => 'isi-Urdu',
+ 'uz' => 'isi-Uzbek',
+ 'vai' => 'isi-Vai',
+ 've' => 'isi-Venda',
+ 'vi' => 'isi-Vietnamese',
+ 'vun' => 'isi-Vunjo',
+ 'wo' => 'isi-Wolof',
+ 'xh' => 'isiXhosa',
+ 'xog' => 'isi-Soga',
+ 'yi' => 'Isi-Yidish',
+ 'yo' => 'isi-Yoruba',
+ 'zgh' => 'isi-Standard Moroccan Tamazight',
+ 'zh' => 'isi-Chinese',
+ 'zh-hans' => 'isi-Sipmlified Chinese',
+ 'zh-hant' => 'isi-Traditional Chinese',
+ 'zu' => 'isiZulu',
+ 'zxx' => 'Akukho okuqukethwe kolimi',
+);
+
+$currencyNames = array(
+ 'AED' => 'i-Dirham yase-United Arab Emirates',
+ 'AFN' => 'i-Afghan Afghani',
+ 'ALL' => 'i-Albanian Lek',
+ 'AMD' => 'i-Armenian Dram',
+ 'ANG' => 'i-Netherlands Antillean Guilder',
+ 'AOA' => 'i-Angolan Kwanza',
+ 'ARS' => 'i-Argentina Peso',
+ 'AUD' => 'i-Austrilian Dollar',
+ 'AWG' => 'i-Aruban Florin',
+ 'AZN' => 'i-Azerbaijani Manat',
+ 'BAM' => 'i-Bosnia-Herzegovina Convertible Mark',
+ 'BBD' => 'i-Barbadian Dollar',
+ 'BDT' => 'i-Bangladeshi Taka',
+ 'BGN' => 'i-Bulgarian Lev',
+ 'BHD' => 'i-Bahraini Dinar',
+ 'BIF' => 'i-Burundian Franc',
+ 'BMD' => 'i-Bermudan Dollar',
+ 'BND' => 'i-Brunei Dollar',
+ 'BOB' => 'i-Bolivian Boliviano',
+ 'BRL' => 'i-Brazilian Real',
+ 'BSD' => 'i-Bahamian Dollar',
+ 'BTN' => 'i-Bhutanese Ngultrum',
+ 'BWP' => 'i-Botswana Pula',
+ 'BYR' => 'i-Belarusian Ruble',
+ 'BZD' => 'i-Belize Dollar',
+ 'CAD' => 'i-Candian Dollar',
+ 'CDF' => 'i-Congolese Franc',
+ 'CHF' => 'i-Swiss Franc',
+ 'CLP' => 'i-Chilean Peso',
+ 'CNY' => 'i-Chinese Yuan',
+ 'COP' => 'i-Colombian Peso',
+ 'CRC' => 'i-Costa Rican Colón',
+ 'CUC' => 'i-Cuban Convertable Peso',
+ 'CUP' => 'I-Cuban Peso',
+ 'CVE' => 'i-Cape Verdean Escudo',
+ 'CZK' => 'i-Czech Republic Koruna',
+ 'DJF' => 'i-Djiboutian Franc',
+ 'DKK' => 'i-Danish Krone',
+ 'DOP' => 'i-Dominican Peso',
+ 'DZD' => 'i-Algerian Dinar',
+ 'EGP' => 'i-Egyptian Pound',
+ 'ERN' => 'i-Eritrean Nakfa',
+ 'ETB' => 'i-Ethopian Birr',
+ 'EUR' => 'i-Euro',
+ 'FJD' => 'i-Fijian Dollar',
+ 'FKP' => 'i-Falkland Islands Pound',
+ 'GBP' => 'i-British Pound Sterling',
+ 'GEL' => 'i-Georgian Lari',
+ 'GHS' => 'i-Ghanaian Cedi',
+ 'GIP' => 'i-Gibraltar Pound',
+ 'GMD' => 'i-Gambian Dalasi',
+ 'GNF' => 'i-Gunean Franc',
+ 'GTQ' => 'i-Guatemalan Quetzal',
+ 'GYD' => 'i-Guyanaese Dollar',
+ 'HKD' => 'i-Hong Kong Dollar',
+ 'HNL' => 'i-Honduran Lempira',
+ 'HRK' => 'i-Croatian Kuna',
+ 'HTG' => 'i-Haitian Gourde',
+ 'HUF' => 'i-Hungarian Forint',
+ 'IDR' => 'i-Indonesian Rupiah',
+ 'ILS' => 'i-Israeli New Sheqel',
+ 'INR' => 'i-Indian Rupee',
+ 'IQD' => 'i-Iraqi Dinar',
+ 'IRR' => 'i-Iranian Rial',
+ 'ISK' => 'i-Icelandic Króna',
+ 'JMD' => 'i-Jamaican Dollar',
+ 'JOD' => 'i-Jordanian Dinar',
+ 'JPY' => 'i-Japanese Yen',
+ 'KES' => 'i-Kenyan Shilling',
+ 'KGS' => 'i-Kyrgystani Som',
+ 'KHR' => 'i-Cambodian Riel',
+ 'KMF' => 'i-Comorian Franc',
+ 'KPW' => 'i-North Korean Won',
+ 'KRW' => 'i-South Korean Won',
+ 'KWD' => 'i-Kuwaiti Dinar',
+ 'KYD' => 'i-Cayman Islands Dollar',
+ 'KZT' => 'i-Kazakhstani Tenge',
+ 'LAK' => 'i-Laotian Kip',
+ 'LBP' => 'i-Lebanese Pound',
+ 'LKR' => 'i-Sri Lankan Rupee',
+ 'LRD' => 'i-Liberian Dollar',
+ 'LSL' => 'i-Lesotho Loti',
+ 'LTL' => 'i-Lithuanian Litas',
+ 'LVL' => 'i-Latvian Lats',
+ 'LYD' => 'i-Libyan Dinar',
+ 'MAD' => 'i-Moroccan Dirham',
+ 'MDL' => 'i-Moldovan Leu',
+ 'MGA' => 'i-Malagasy Ariary',
+ 'MKD' => 'i-Macedonian Denar',
+ 'MMK' => 'i-Myanma Kyat',
+ 'MNT' => 'i-Mongolian Tugrik',
+ 'MOP' => 'i-Macanese Pataca',
+ 'MRO' => 'i-Mauritanian Ouguiya',
+ 'MUR' => 'i-Mauritian Rupee',
+ 'MVR' => 'i-Maldivian Rufiyana',
+ 'MWK' => 'i-Malawian Kwacha',
+ 'MXN' => 'i-Mexican Peso',
+ 'MYR' => 'i-Malaysian Ringgit',
+ 'MZN' => 'I-Metical yase-Mozambicque',
+ 'NAD' => 'i-Namibian Dollar',
+ 'NGN' => 'i-Nigerian Naira',
+ 'NIO' => 'i-Nicaraguan Córdoba',
+ 'NOK' => 'i-Norwegian Krone',
+ 'NPR' => 'i-Nepalese Rupee',
+ 'NZD' => 'i-New Zealand Dollar',
+ 'OMR' => 'i-Omani Rial',
+ 'PAB' => 'i-Panamanian Balboa',
+ 'PEN' => 'i-Peruvian Nuevo Sol',
+ 'PGK' => 'i-Papua New Guinean Kina',
+ 'PHP' => 'i-Philippine Peso',
+ 'PKR' => 'i-Pakistani Rupee',
+ 'PLN' => 'i-Polish Zloty',
+ 'PYG' => 'i-Paraguayan Guarani',
+ 'QAR' => 'i-Qatari Rial',
+ 'RON' => 'I-Romanian Leu',
+ 'RSD' => 'i-Serbian Dinar',
+ 'RUB' => 'i-Russian Ruble',
+ 'RWF' => 'i-Rwandan Franc',
+ 'SAR' => 'i-Saudi Riyal',
+ 'SBD' => 'i-Solomon Islands Dollar',
+ 'SCR' => 'i-Seychellois Rupee',
+ 'SDG' => 'i-Sudanese Pound',
+ 'SEK' => 'i-Swedish Krona',
+ 'SGD' => 'i-Singapore Dollar',
+ 'SHP' => 'i-Saint Helena Pound',
+ 'SLL' => 'i-Sierra Leonean Leone',
+ 'SOS' => 'i-Somali Shilling',
+ 'SRD' => 'i-Surinamese Dollar',
+ 'SSP' => 'Upondo waseNingizimu Sudan',
+ 'STD' => 'i-São Tomé kanye ne-Príncipe Dobra',
+ 'SYP' => 'i-Syrian Pound',
+ 'SZL' => 'i-Swazi Lilangeni',
+ 'THB' => 'i-Thai Baht',
+ 'TJS' => 'i-Tajikistani Somoni',
+ 'TMT' => 'i-Turkmenistani Manat',
+ 'TND' => 'i-Tunisian Dinar',
+ 'TOP' => 'i-Tongan Paʻanga',
+ 'TRY' => 'i-Turkish Lira',
+ 'TTD' => 'i-Trinidad and Tobago Dollar',
+ 'TWD' => 'i-New Taiwan Dollar',
+ 'TZS' => 'i-Tanzanian Shilling',
+ 'UAH' => 'i-Ukrainian Hryvnia',
+ 'UGX' => 'i-Ugandan Shilling',
+ 'USD' => 'i-US Dollar',
+ 'UYU' => 'i-Uruguayan Peso',
+ 'UZS' => 'i-Uzbekistan Som',
+ 'VEF' => 'i-Venezuelan Bolívar',
+ 'VND' => 'i-Vietnamese Dong',
+ 'VUV' => 'i-Vanuatu Vatu',
+ 'WST' => 'i-Samoan Tala',
+ 'XAF' => 'i-CFA Franc BCEA',
+ 'XCD' => 'i-East Caribbean Dollar',
+ 'XOF' => 'i-CFA Franc BCEAO',
+ 'XPF' => 'i-CFP Franc',
+ 'XXX' => 'Imali engaziwa',
+ 'YER' => 'i-Yemeni Rial',
+ 'ZAR' => 'i-South African Rand',
+ 'ZMK' => 'i-Zambian Kwacha (1968–2012)',
+ 'ZMW' => 'i-Zambian Kwacha',
+);
+
+$currencySymbols = array(
+ 'ANG' => 'ANG',
+ 'AUD' => 'A$',
+ 'AWG' => 'AWG',
+ 'BBD' => 'BBD',
+ 'BMD' => 'BMD',
+ 'BRL' => 'R$',
+ 'BSD' => 'BSD',
+ 'BZD' => 'BZD',
+ 'CAD' => 'CA$',
+ 'CHF' => 'CHF',
+ 'CNY' => 'CN¥',
+ 'CRC' => 'CRC',
+ 'CUC' => 'CUC',
+ 'CUP' => 'CUP',
+ 'DKK' => 'DKK',
+ 'DOP' => 'DOP',
+ 'EUR' => '€',
+ 'GBP' => '£',
+ 'GTQ' => 'GTQ',
+ 'HKD' => 'HK$',
+ 'HNL' => 'HNL',
+ 'HTG' => 'HTG',
+ 'IDR' => 'IDR',
+ 'INR' => '₹',
+ 'JMD' => 'JMD',
+ 'JPY' => 'JP¥',
+ 'KRW' => '₩',
+ 'KYD' => 'KYD',
+ 'MXN' => 'MX$',
+ 'NIO' => 'NIO',
+ 'NOK' => 'NOK',
+ 'PAB' => 'PAB',
+ 'PLN' => 'PLN',
+ 'RUB' => 'RUB',
+ 'SAR' => 'SAR',
+ 'SEK' => 'SEK',
+ 'THB' => '฿',
+ 'TRY' => 'TRY',
+ 'TTD' => 'TTD',
+ 'TWD' => 'NT$',
+ 'USD' => 'US$',
+ 'XCD' => 'EC$',
+ 'ZAR' => 'R',
+);
+
+$countryNames = array(
+ 'AC' => 'i-Ascension Island',
+ 'AD' => 'i-Andorra',
+ 'AE' => 'i-United Arab Emirates',
+ 'AF' => 'i-Afghanistan',
+ 'AG' => 'i-Antigua and Barbuda',
+ 'AI' => 'i-Anguilla',
+ 'AL' => 'i-Albania',
+ 'AM' => 'i-Armenia',
+ 'AN' => 'i-Netherlands Antilles',
+ 'AO' => 'i-Angola',
+ 'AQ' => 'i-Antarctica',
+ 'AR' => 'i-Argentina',
+ 'AS' => 'i-American Samoa',
+ 'AT' => 'i-Austria',
+ 'AU' => 'i-Australia',
+ 'AW' => 'i-Aruba',
+ 'AX' => 'i-Åland Islands',
+ 'AZ' => 'i-Azerbaijan',
+ 'BA' => 'i-Bosnia ne-Herzegovina',
+ 'BB' => 'i-Barbados',
+ 'BD' => 'i-Bangladesh',
+ 'BE' => 'i-Belgium',
+ 'BF' => 'i-Burkina Faso',
+ 'BG' => 'i-Bulgaria',
+ 'BH' => 'i-Bahrain',
+ 'BI' => 'i-Burundi',
+ 'BJ' => 'i-Benin',
+ 'BL' => 'i-Saint Barthélemy',
+ 'BM' => 'i-Bermuda',
+ 'BN' => 'i-Brunei',
+ 'BO' => 'i-Bolivia',
+ 'BQ' => 'i-Caribbean Netherlands',
+ 'BR' => 'i-Brazil',
+ 'BS' => 'i-Bahamas',
+ 'BT' => 'i-Bhutan',
+ 'BV' => 'i-Bouvet Island',
+ 'BW' => 'i-Botswana',
+ 'BY' => 'i-Belarus',
+ 'BZ' => 'i-Belize',
+ 'CA' => 'i-Canada',
+ 'CC' => 'i-Cocos (Keeling) Islands',
+ 'CD' => 'i-Congo - Kinshasa',
+ 'CF' => 'i-Central African Republic',
+ 'CG' => 'i-Congo - Brazzaville',
+ 'CH' => 'i-Switzerland',
+ 'CI' => 'i-Côte d’Ivoire',
+ 'CK' => 'i-Cook Islands',
+ 'CL' => 'i-Chile',
+ 'CM' => 'i-Cameroon',
+ 'CN' => 'i-China',
+ 'CO' => 'i-Colombia',
+ 'CP' => 'i-Clipperton Island',
+ 'CR' => 'i-Costa Rica',
+ 'CU' => 'i-Cuba',
+ 'CV' => 'i-Cape Verde',
+ 'CW' => 'i-Curaçao',
+ 'CX' => 'i-Christmas Island',
+ 'CY' => 'i-Cyprus',
+ 'CZ' => 'i-Czech Republic',
+ 'DE' => 'i-Germany',
+ 'DG' => 'i-Diego Garcia',
+ 'DJ' => 'i-Djibouti',
+ 'DK' => 'i-Denmark',
+ 'DM' => 'i-Dominica',
+ 'DO' => 'i-Dominican Republic',
+ 'DZ' => 'i-Algeria',
+ 'EA' => 'i-Cueta ne-Melilla',
+ 'EC' => 'i-Ecuador',
+ 'EE' => 'i-Estonia',
+ 'EG' => 'i-Egypt',
+ 'EH' => 'i-Western Sahara',
+ 'ER' => 'i-Eritrea',
+ 'ES' => 'i-Spain',
+ 'ET' => 'i-Ethiopia',
+ 'EU' => 'i-European Union',
+ 'FI' => 'i-Finland',
+ 'FJ' => 'i-Fiji',
+ 'FK' => 'i-Falkland Islands',
+ 'FM' => 'i-Micronesia',
+ 'FO' => 'i-Faroe Islands',
+ 'FR' => 'i-France',
+ 'GA' => 'i-Gabon',
+ 'GB' => 'i-U.K.',
+ 'GD' => 'i-Grenada',
+ 'GE' => 'i-Georgia',
+ 'GF' => 'isi-French Guiana',
+ 'GG' => 'i-Guernsey',
+ 'GH' => 'i-Ghana',
+ 'GI' => 'i-Gibraltar',
+ 'GL' => 'i-Greenland',
+ 'GM' => 'i-Gambia',
+ 'GN' => 'i-Guinea',
+ 'GP' => 'i-Guadeloupe',
+ 'GQ' => 'i-Equatorial Guinea',
+ 'GR' => 'i-Greece',
+ 'GS' => 'i-South Georgia ne-South Sandwich Islands',
+ 'GT' => 'i-Guatemala',
+ 'GU' => 'i-Guam',
+ 'GW' => 'i-Guinea-Bissau',
+ 'GY' => 'i-Guyana',
+ 'HK' => 'i-Hong Kong',
+ 'HM' => 'i-Heard Island ne-McDonald Islands',
+ 'HN' => 'i-Honduras',
+ 'HR' => 'i-Croatia',
+ 'HT' => 'i-Haiti',
+ 'HU' => 'i-Hungary',
+ 'IC' => 'i-Canary Islands',
+ 'ID' => 'i-Indonesia',
+ 'IE' => 'i-Ireland',
+ 'IL' => 'i-Israel',
+ 'IM' => 'i-Isle of Man',
+ 'IN' => 'i-India',
+ 'IO' => 'i-British Indian Ocean Territory',
+ 'IQ' => 'i-Iraq',
+ 'IR' => 'i-Iran',
+ 'IS' => 'i-Iceland',
+ 'IT' => 'i-Italy',
+ 'JE' => 'i-Jersey',
+ 'JM' => 'i-Jamaica',
+ 'JO' => 'i-Jordan',
+ 'JP' => 'i-Japan',
+ 'KE' => 'i-Kenya',
+ 'KG' => 'i-Kyrgyzstan',
+ 'KH' => 'i-Cambodia',
+ 'KI' => 'i-Kiribati',
+ 'KM' => 'i-Comoros',
+ 'KN' => 'i-Saint Kitts ne-Nevis',
+ 'KP' => 'i-North Korea',
+ 'KR' => 'i-South Korea',
+ 'KW' => 'i-Kuwait',
+ 'KY' => 'i-Cayman Islands',
+ 'KZ' => 'i-Kazakhstan',
+ 'LA' => 'i-Laos',
+ 'LB' => 'i-Lebanon',
+ 'LC' => 'i-Saint Lucia',
+ 'LI' => 'i-Liechtenstein',
+ 'LK' => 'i-Sri Lanka',
+ 'LR' => 'i-Liberia',
+ 'LS' => 'i-Lesotho',
+ 'LT' => 'i-Lithuania',
+ 'LU' => 'i-Luxembourg',
+ 'LV' => 'i-Latvia',
+ 'LY' => 'i-Libya',
+ 'MA' => 'i-Morocco',
+ 'MC' => 'i-Monaco',
+ 'MD' => 'i-Moldova',
+ 'ME' => 'i-Montenegro',
+ 'MF' => 'i-Saint Martin',
+ 'MG' => 'i-Madagascar',
+ 'MH' => 'i-Marshall Islands',
+ 'MK' => 'i-Macedonia',
+ 'ML' => 'i-Mali',
+ 'MM' => 'i-Myanmar (Burma)',
+ 'MN' => 'i-Mongolia',
+ 'MO' => 'i-Macau',
+ 'MP' => 'i-Northern Mariana Islands',
+ 'MQ' => 'i-Martinique',
+ 'MR' => 'i-Mauritania',
+ 'MS' => 'i-Montserrat',
+ 'MT' => 'i-Malta',
+ 'MU' => 'i-Mauritius',
+ 'MV' => 'i-Maldives',
+ 'MW' => 'i-Malawi',
+ 'MX' => 'i-Mexico',
+ 'MY' => 'i-Malaysia',
+ 'MZ' => 'i-Mozambique',
+ 'NA' => 'i-Namibia',
+ 'NC' => 'i-New Caledonia',
+ 'NE' => 'i-Niger',
+ 'NF' => 'i-Norfolk Island',
+ 'NG' => 'i-Nigeria',
+ 'NI' => 'i-Nicaragua',
+ 'NL' => 'i-Netherlands',
+ 'NO' => 'i-Norway',
+ 'NP' => 'i-Nepal',
+ 'NR' => 'i-Nauru',
+ 'NU' => 'i-Niue',
+ 'NZ' => 'i-New Zealand',
+ 'OM' => 'i-Oman',
+ 'PA' => 'i-Panama',
+ 'PE' => 'i-Peru',
+ 'PF' => 'i-French Polynesia',
+ 'PG' => 'i-Papua New Guinea',
+ 'PH' => 'i-Philippines',
+ 'PK' => 'i-Pakistan',
+ 'PL' => 'i-Poland',
+ 'PM' => 'i-Saint Pierre kanye ne-Miquelon',
+ 'PN' => 'i-Pitcairn Islands',
+ 'PR' => 'i-Puerto Rico',
+ 'PS' => 'i-Phalestine',
+ 'PT' => 'i-Portugal',
+ 'PW' => 'i-Palau',
+ 'PY' => 'i-Paraguay',
+ 'QA' => 'i-Qatar',
+ 'QO' => 'i-Outlying Oceania',
+ 'RE' => 'i-Réunion',
+ 'RO' => 'i-Romania',
+ 'RS' => 'i-Serbia',
+ 'RU' => 'i-Russia',
+ 'RW' => 'i-Rwanda',
+ 'SA' => 'i-Saudi Arabia',
+ 'SB' => 'i-Solomon Islands',
+ 'SC' => 'i-Seychelles',
+ 'SD' => 'i-Sudan',
+ 'SE' => 'i-Sweden',
+ 'SG' => 'i-Singapore',
+ 'SH' => 'i-Saint Helena',
+ 'SI' => 'i-Slovenia',
+ 'SJ' => 'i-Svalbard ne-Jan Mayen',
+ 'SK' => 'i-Slovakia',
+ 'SL' => 'i-Sierra Leone',
+ 'SM' => 'i-San Marino',
+ 'SN' => 'i-Senegal',
+ 'SO' => 'i-Somalia',
+ 'SR' => 'i-Suriname',
+ 'SS' => 'i-South Sudan',
+ 'ST' => 'i-São Tomé kanye ne-Príncipe',
+ 'SV' => 'i-El Salvador',
+ 'SX' => 'I-Sint Maarten',
+ 'SY' => 'i-Syria',
+ 'SZ' => 'i-Swaziland',
+ 'TA' => 'i-Tristan da Cunha',
+ 'TC' => 'i-Turks and Caicos Islands',
+ 'TD' => 'i-Chad',
+ 'TF' => 'i-French Southern Territories',
+ 'TG' => 'i-Togo',
+ 'TH' => 'i-Thailand',
+ 'TJ' => 'i-Tajikistan',
+ 'TK' => 'i-Tokelau',
+ 'TL' => 'i-Timor-Leste',
+ 'TM' => 'i-Turkmenistan',
+ 'TN' => 'i-Tunisia',
+ 'TO' => 'i-Tonga',
+ 'TR' => 'i-Turkey',
+ 'TT' => 'i-Trinidad ne-Tobago',
+ 'TV' => 'i-Tuvalu',
+ 'TW' => 'i-Taiwan',
+ 'TZ' => 'i-Tanzania',
+ 'UA' => 'i-Ukraine',
+ 'UG' => 'i-Uganda',
+ 'UM' => 'i-U.S. Minor Outlying Islands',
+ 'US' => 'i-U.S',
+ 'UY' => 'i-Uruguay',
+ 'UZ' => 'i-Uzbekistan',
+ 'VA' => 'i-Vatican City',
+ 'VC' => 'i-Saint Vincent ne-Grenadines',
+ 'VE' => 'i-Venezuela',
+ 'VG' => 'i-British Virgin Islands',
+ 'VI' => 'i-U.S. Virgin Islands',
+ 'VN' => 'i-Vietnam',
+ 'VU' => 'i-Vanuatu',
+ 'WF' => 'i-Wallis ne-Futuna',
+ 'WS' => 'i-Samoa',
+ 'XK' => 'i-Kosovo',
+ 'YE' => 'i-Yemen',
+ 'YT' => 'i-Mayotte',
+ 'ZA' => 'i-South Africa',
+ 'ZM' => 'i-Zambia',
+ 'ZW' => 'i-Zimbabwe',
+);
+
+$timeUnits = array(
+ 'day-future-one' => 'Osukwini olungu-{0}',
+ 'day-future-other' => 'Ezinsukwini ezingu-{0}',
+ 'day-narrow-future-one' => 'osukwini olungu{0}',
+ 'day-narrow-future-other' => 'ezinsukwini ezingu{0}',
+ 'day-narrow-past-one' => '{0} usuku olwedlule',
+ 'day-narrow-past-other' => '{0} izinsuku ezedlule',
+ 'day-one' => '{0} usuku',
+ 'day-other' => '{0} izinsuku',
+ 'day-past-one' => 'osukwini olungu-{0} olwedlule',
+ 'day-past-other' => 'ezinsukwini ezingu-{0} ezedlule.',
+ 'day-short-future-one' => 'osukwini olungu{0}',
+ 'day-short-future-other' => 'ezinsukwini ezingu{0}',
+ 'day-short-past-one' => '{0} usuku olwedlule',
+ 'day-short-past-other' => '{0} izinsuku ezedlule',
+ 'hour-future-one' => 'Ehoreni elingu-{0}',
+ 'hour-future-other' => 'Emahoreni angu-{0}',
+ 'hour-narrow-future-one' => 'ehoreni elingu{0}',
+ 'hour-narrow-future-other' => 'emahoreni angu{0}',
+ 'hour-narrow-past-one' => '{0} ihora eledlule',
+ 'hour-narrow-past-other' => '{0} amahora adlule',
+ 'hour-one' => '{0} ihora',
+ 'hour-other' => '{0} amahora',
+ 'hour-past-one' => 'ehoreni eligu-{0} eledluli',
+ 'hour-past-other' => 'emahoreni angu-{0} edlule',
+ 'hour-short-future-one' => 'ehoreni elingu{0}',
+ 'hour-short-future-other' => 'emahoreni angu{0}',
+ 'hour-short-past-one' => '{0} ihora eledlule',
+ 'hour-short-past-other' => '{0} amahora adlule',
+ 'microsecond-one' => '{0} ama-microsecond',
+ 'microsecond-other' => '{0} microseconds',
+ 'millisecond-one' => '{0} ms',
+ 'millisecond-other' => '{0} ms',
+ 'minute-future-one' => 'Kumunithi engu-{0}',
+ 'minute-future-other' => 'Emaminithini angu-{0}',
+ 'minute-narrow-future-one' => 'eminithini engu{0}',
+ 'minute-narrow-future-other' => 'emaminithini angu{0}',
+ 'minute-narrow-past-one' => '{0} iminithi eledlule',
+ 'minute-narrow-past-other' => '{0} amaminithi adlule',
+ 'minute-one' => '{0} iminithi',
+ 'minute-other' => '{0} amaminithi',
+ 'minute-past-one' => 'eminithini elingu-{0} eledlule',
+ 'minute-past-other' => 'amaminithi angu-{0} adlule',
+ 'minute-short-future-one' => 'eminithini engu{0}',
+ 'minute-short-future-other' => 'emaminithini angu{0}',
+ 'minute-short-past-one' => '{0} iminithi eledlule',
+ 'minute-short-past-other' => '{0} amaminithi adlule',
+ 'month-future-one' => 'Enyangeni engu-{0}',
+ 'month-future-other' => 'Ezinyangeni ezingu-{0}',
+ 'month-one' => '{0} inyanga',
+ 'month-other' => '{0} izinyanga',
+ 'month-past-one' => '{0} inyanga edlule',
+ 'month-past-other' => '{0} izinyanga ezedlule',
+ 'nanosecond-one' => '{0} ns',
+ 'nanosecond-other' => '{0} ns',
+ 'quarter-future-one' => 'kwikota engu-{0}',
+ 'quarter-future-other' => 'kumakota angu-{0}',
+ 'quarter-narrow-future-one' => 'kumakota angu-{0}',
+ 'quarter-narrow-future-other' => 'kumakota angu-{0}',
+ 'quarter-narrow-past-one' => '{0} amakota adlule',
+ 'quarter-narrow-past-other' => '{0} amakota adlule',
+ 'quarter-past-one' => '{0} ikota edlule',
+ 'quarter-past-other' => '{0} amakota adlule',
+ 'quarter-short-future-one' => 'kumakota angu-{0}',
+ 'quarter-short-future-other' => 'kumakota angu-{0}',
+ 'quarter-short-past-one' => '{0} amakota adlule',
+ 'quarter-short-past-other' => '{0} amakota adlule',
+ 'second-future-one' => 'Kusekhondi elingu-{0}',
+ 'second-future-other' => 'Kumasekhondi angu-{0}',
+ 'second-narrow-future-one' => 'esekhondini elingu{0}',
+ 'second-narrow-future-other' => 'emasekhondini angu{0}',
+ 'second-narrow-past-one' => '{0} isekhondi eledlule',
+ 'second-narrow-past-other' => '{0} amasekhondi adlule',
+ 'second-one' => '{0} isekhondi',
+ 'second-other' => '{0} amasekhondi',
+ 'second-past-one' => 'isekhondi elingu-{0} eledlule',
+ 'second-past-other' => 'amasekhondi angu-{0} adlule',
+ 'second-short-future-one' => 'esekhondini elingu{0}',
+ 'second-short-future-other' => 'emasekhondini angu{0}',
+ 'second-short-past-one' => '{0} isekhondi eledlule',
+ 'second-short-past-other' => '{0} amasekhondi adlule',
+ 'week-future-one' => 'Evikini elingu-{0}',
+ 'week-future-other' => 'Emavikini angu-{0}',
+ 'week-one' => '{0} iviki',
+ 'week-other' => '{0} amaviki',
+ 'week-past-one' => 'evikini elingu-{0} eledlule',
+ 'week-past-other' => 'amaviki angu-{0} adlule',
+ 'year-future-one' => 'onyakeni ongu-{0}',
+ 'year-future-other' => 'Eminyakeni engu-{0}',
+ 'year-one' => '{0} y',
+ 'year-other' => '{0} y',
+ 'year-past-one' => '{0} unyaka odlule',
+ 'year-past-other' => '{0} iminyaka edlule',
+ 'year-short-past-one' => '{0} unyaka odlule',
+ 'year-short-past-other' => '{0} unyaka odlule',
+);
diff --git a/MLEB/cldr/CldrSupplemental/Supplemental.php b/MLEB/cldr/CldrSupplemental/Supplemental.php
new file mode 100644
index 00000000..83392fb3
--- /dev/null
+++ b/MLEB/cldr/CldrSupplemental/Supplemental.php
@@ -0,0 +1,1051 @@
+<?php
+
+$currencyFractions = array(
+ 'ADP' => array(
+ 'digits' => '0',
+ 'rounding' => '0',
+ ),
+ 'AFN' => array(
+ 'digits' => '0',
+ 'rounding' => '0',
+ ),
+ 'ALL' => array(
+ 'digits' => '0',
+ 'rounding' => '0',
+ ),
+ 'AMD' => array(
+ 'digits' => '0',
+ 'rounding' => '0',
+ ),
+ 'BHD' => array(
+ 'digits' => '3',
+ 'rounding' => '0',
+ ),
+ 'BIF' => array(
+ 'digits' => '0',
+ 'rounding' => '0',
+ ),
+ 'BYR' => array(
+ 'digits' => '0',
+ 'rounding' => '0',
+ ),
+ 'CAD' => array(
+ 'digits' => '2',
+ 'rounding' => '0',
+ 'cashRounding' => '5',
+ ),
+ 'CHF' => array(
+ 'digits' => '2',
+ 'rounding' => '0',
+ 'cashRounding' => '5',
+ ),
+ 'CLF' => array(
+ 'digits' => '4',
+ 'rounding' => '0',
+ ),
+ 'CLP' => array(
+ 'digits' => '0',
+ 'rounding' => '0',
+ ),
+ 'COP' => array(
+ 'digits' => '0',
+ 'rounding' => '0',
+ ),
+ 'CRC' => array(
+ 'digits' => '0',
+ 'rounding' => '0',
+ ),
+ 'CZK' => array(
+ 'digits' => '2',
+ 'rounding' => '0',
+ 'cashRounding' => '0',
+ ),
+ 'DEFAULT' => array(
+ 'digits' => '2',
+ 'rounding' => '0',
+ ),
+ 'DJF' => array(
+ 'digits' => '0',
+ 'rounding' => '0',
+ ),
+ 'ESP' => array(
+ 'digits' => '0',
+ 'rounding' => '0',
+ ),
+ 'GNF' => array(
+ 'digits' => '0',
+ 'rounding' => '0',
+ ),
+ 'GYD' => array(
+ 'digits' => '0',
+ 'rounding' => '0',
+ ),
+ 'HUF' => array(
+ 'digits' => '2',
+ 'rounding' => '0',
+ 'cashRounding' => '0',
+ ),
+ 'IDR' => array(
+ 'digits' => '0',
+ 'rounding' => '0',
+ ),
+ 'IQD' => array(
+ 'digits' => '0',
+ 'rounding' => '0',
+ ),
+ 'IRR' => array(
+ 'digits' => '0',
+ 'rounding' => '0',
+ ),
+ 'ISK' => array(
+ 'digits' => '0',
+ 'rounding' => '0',
+ ),
+ 'ITL' => array(
+ 'digits' => '0',
+ 'rounding' => '0',
+ ),
+ 'JOD' => array(
+ 'digits' => '3',
+ 'rounding' => '0',
+ ),
+ 'JPY' => array(
+ 'digits' => '0',
+ 'rounding' => '0',
+ ),
+ 'KMF' => array(
+ 'digits' => '0',
+ 'rounding' => '0',
+ ),
+ 'KPW' => array(
+ 'digits' => '0',
+ 'rounding' => '0',
+ ),
+ 'KRW' => array(
+ 'digits' => '0',
+ 'rounding' => '0',
+ ),
+ 'KWD' => array(
+ 'digits' => '3',
+ 'rounding' => '0',
+ ),
+ 'LAK' => array(
+ 'digits' => '0',
+ 'rounding' => '0',
+ ),
+ 'LBP' => array(
+ 'digits' => '0',
+ 'rounding' => '0',
+ ),
+ 'LUF' => array(
+ 'digits' => '0',
+ 'rounding' => '0',
+ ),
+ 'LYD' => array(
+ 'digits' => '3',
+ 'rounding' => '0',
+ ),
+ 'MGA' => array(
+ 'digits' => '0',
+ 'rounding' => '0',
+ ),
+ 'MGF' => array(
+ 'digits' => '0',
+ 'rounding' => '0',
+ ),
+ 'MMK' => array(
+ 'digits' => '0',
+ 'rounding' => '0',
+ ),
+ 'MNT' => array(
+ 'digits' => '0',
+ 'rounding' => '0',
+ ),
+ 'MRO' => array(
+ 'digits' => '0',
+ 'rounding' => '0',
+ ),
+ 'MUR' => array(
+ 'digits' => '0',
+ 'rounding' => '0',
+ ),
+ 'OMR' => array(
+ 'digits' => '3',
+ 'rounding' => '0',
+ ),
+ 'PKR' => array(
+ 'digits' => '0',
+ 'rounding' => '0',
+ ),
+ 'PYG' => array(
+ 'digits' => '0',
+ 'rounding' => '0',
+ ),
+ 'RSD' => array(
+ 'digits' => '0',
+ 'rounding' => '0',
+ ),
+ 'RWF' => array(
+ 'digits' => '0',
+ 'rounding' => '0',
+ ),
+ 'SLL' => array(
+ 'digits' => '0',
+ 'rounding' => '0',
+ ),
+ 'SOS' => array(
+ 'digits' => '0',
+ 'rounding' => '0',
+ ),
+ 'STD' => array(
+ 'digits' => '0',
+ 'rounding' => '0',
+ ),
+ 'SYP' => array(
+ 'digits' => '0',
+ 'rounding' => '0',
+ ),
+ 'TMM' => array(
+ 'digits' => '0',
+ 'rounding' => '0',
+ ),
+ 'TND' => array(
+ 'digits' => '3',
+ 'rounding' => '0',
+ ),
+ 'TRL' => array(
+ 'digits' => '0',
+ 'rounding' => '0',
+ ),
+ 'TZS' => array(
+ 'digits' => '0',
+ 'rounding' => '0',
+ ),
+ 'TWD' => array(
+ 'digits' => '2',
+ 'rounding' => '0',
+ 'cashRounding' => '0',
+ ),
+ 'UGX' => array(
+ 'digits' => '0',
+ 'rounding' => '0',
+ ),
+ 'UZS' => array(
+ 'digits' => '0',
+ 'rounding' => '0',
+ ),
+ 'UYI' => array(
+ 'digits' => '0',
+ 'rounding' => '0',
+ ),
+ 'VND' => array(
+ 'digits' => '0',
+ 'rounding' => '0',
+ ),
+ 'VUV' => array(
+ 'digits' => '0',
+ 'rounding' => '0',
+ ),
+ 'XAF' => array(
+ 'digits' => '0',
+ 'rounding' => '0',
+ ),
+ 'XOF' => array(
+ 'digits' => '0',
+ 'rounding' => '0',
+ ),
+ 'XPF' => array(
+ 'digits' => '0',
+ 'rounding' => '0',
+ ),
+ 'YER' => array(
+ 'digits' => '0',
+ 'rounding' => '0',
+ ),
+ 'ZMK' => array(
+ 'digits' => '0',
+ 'rounding' => '0',
+ ),
+ 'ZWD' => array(
+ 'digits' => '0',
+ 'rounding' => '0',
+ ),
+);
+
+$localeCurrencies = array(
+ 150 => array(
+ 0 => 'EUR',
+ ),
+ 'AC' => array(
+ 0 => 'SHP',
+ ),
+ 'AD' => array(
+ 0 => 'EUR',
+ ),
+ 'AE' => array(
+ 0 => 'AED',
+ ),
+ 'AF' => array(
+ 0 => 'AFN',
+ ),
+ 'AG' => array(
+ 0 => 'XCD',
+ ),
+ 'AI' => array(
+ 0 => 'XCD',
+ ),
+ 'AL' => array(
+ 0 => 'ALL',
+ ),
+ 'AM' => array(
+ 0 => 'AMD',
+ ),
+ 'AO' => array(
+ 0 => 'AOA',
+ ),
+ 'AR' => array(
+ 0 => 'ARS',
+ ),
+ 'AS' => array(
+ 0 => 'USD',
+ ),
+ 'AT' => array(
+ 0 => 'EUR',
+ ),
+ 'AU' => array(
+ 0 => 'AUD',
+ ),
+ 'AW' => array(
+ 0 => 'AWG',
+ ),
+ 'AX' => array(
+ 0 => 'EUR',
+ ),
+ 'AZ' => array(
+ 0 => 'AZN',
+ ),
+ 'BA' => array(
+ 0 => 'BAM',
+ ),
+ 'BB' => array(
+ 0 => 'BBD',
+ ),
+ 'BD' => array(
+ 0 => 'BDT',
+ ),
+ 'BE' => array(
+ 0 => 'EUR',
+ ),
+ 'BF' => array(
+ 0 => 'XOF',
+ ),
+ 'BG' => array(
+ 0 => 'BGN',
+ ),
+ 'BH' => array(
+ 0 => 'BHD',
+ ),
+ 'BI' => array(
+ 0 => 'BIF',
+ ),
+ 'BJ' => array(
+ 0 => 'XOF',
+ ),
+ 'BL' => array(
+ 0 => 'EUR',
+ ),
+ 'BM' => array(
+ 0 => 'BMD',
+ ),
+ 'BN' => array(
+ 0 => 'BND',
+ ),
+ 'BO' => array(
+ 0 => 'BOB',
+ ),
+ 'BQ' => array(
+ 0 => 'USD',
+ ),
+ 'BR' => array(
+ 0 => 'BRL',
+ ),
+ 'BS' => array(
+ 0 => 'BSD',
+ ),
+ 'BT' => array(
+ 0 => 'BTN',
+ 1 => 'INR',
+ ),
+ 'BV' => array(
+ 0 => 'NOK',
+ ),
+ 'BW' => array(
+ 0 => 'BWP',
+ ),
+ 'BY' => array(
+ 0 => 'BYR',
+ ),
+ 'BZ' => array(
+ 0 => 'BZD',
+ ),
+ 'CA' => array(
+ 0 => 'CAD',
+ ),
+ 'CC' => array(
+ 0 => 'AUD',
+ ),
+ 'CD' => array(
+ 0 => 'CDF',
+ ),
+ 'CF' => array(
+ 0 => 'XAF',
+ ),
+ 'CG' => array(
+ 0 => 'XAF',
+ ),
+ 'CH' => array(
+ 0 => 'CHF',
+ ),
+ 'CI' => array(
+ 0 => 'XOF',
+ ),
+ 'CK' => array(
+ 0 => 'NZD',
+ ),
+ 'CL' => array(
+ 0 => 'CLP',
+ ),
+ 'CM' => array(
+ 0 => 'XAF',
+ ),
+ 'CN' => array(
+ 0 => 'CNY',
+ ),
+ 'CO' => array(
+ 0 => 'COP',
+ ),
+ 'CR' => array(
+ 0 => 'CRC',
+ ),
+ 'CU' => array(
+ 0 => 'CUP',
+ 1 => 'CUC',
+ ),
+ 'CV' => array(
+ 0 => 'CVE',
+ ),
+ 'CW' => array(
+ 0 => 'ANG',
+ ),
+ 'CX' => array(
+ 0 => 'AUD',
+ ),
+ 'CY' => array(
+ 0 => 'EUR',
+ ),
+ 'CZ' => array(
+ 0 => 'CZK',
+ ),
+ 'DE' => array(
+ 0 => 'EUR',
+ ),
+ 'DG' => array(
+ 0 => 'USD',
+ ),
+ 'DJ' => array(
+ 0 => 'DJF',
+ ),
+ 'DK' => array(
+ 0 => 'DKK',
+ ),
+ 'DM' => array(
+ 0 => 'XCD',
+ ),
+ 'DO' => array(
+ 0 => 'DOP',
+ ),
+ 'DZ' => array(
+ 0 => 'DZD',
+ ),
+ 'EA' => array(
+ 0 => 'EUR',
+ ),
+ 'EC' => array(
+ 0 => 'USD',
+ ),
+ 'EE' => array(
+ 0 => 'EUR',
+ ),
+ 'EG' => array(
+ 0 => 'EGP',
+ ),
+ 'EH' => array(
+ 0 => 'MAD',
+ ),
+ 'ER' => array(
+ 0 => 'ERN',
+ ),
+ 'ES' => array(
+ 0 => 'EUR',
+ ),
+ 'ET' => array(
+ 0 => 'ETB',
+ ),
+ 'EU' => array(
+ 0 => 'EUR',
+ ),
+ 'FI' => array(
+ 0 => 'EUR',
+ ),
+ 'FJ' => array(
+ 0 => 'FJD',
+ ),
+ 'FK' => array(
+ 0 => 'FKP',
+ ),
+ 'FM' => array(
+ 0 => 'USD',
+ ),
+ 'FO' => array(
+ 0 => 'DKK',
+ ),
+ 'FR' => array(
+ 0 => 'EUR',
+ ),
+ 'GA' => array(
+ 0 => 'XAF',
+ ),
+ 'GB' => array(
+ 0 => 'GBP',
+ ),
+ 'GD' => array(
+ 0 => 'XCD',
+ ),
+ 'GE' => array(
+ 0 => 'GEL',
+ ),
+ 'GF' => array(
+ 0 => 'EUR',
+ ),
+ 'GG' => array(
+ 0 => 'GBP',
+ ),
+ 'GH' => array(
+ 0 => 'GHS',
+ ),
+ 'GI' => array(
+ 0 => 'GIP',
+ ),
+ 'GL' => array(
+ 0 => 'DKK',
+ ),
+ 'GM' => array(
+ 0 => 'GMD',
+ ),
+ 'GN' => array(
+ 0 => 'GNF',
+ ),
+ 'GP' => array(
+ 0 => 'EUR',
+ ),
+ 'GQ' => array(
+ 0 => 'XAF',
+ ),
+ 'GR' => array(
+ 0 => 'EUR',
+ ),
+ 'GS' => array(
+ 0 => 'GBP',
+ ),
+ 'GT' => array(
+ 0 => 'GTQ',
+ ),
+ 'GU' => array(
+ 0 => 'USD',
+ ),
+ 'GW' => array(
+ 0 => 'XOF',
+ ),
+ 'GY' => array(
+ 0 => 'GYD',
+ ),
+ 'HK' => array(
+ 0 => 'HKD',
+ ),
+ 'HM' => array(
+ 0 => 'AUD',
+ ),
+ 'HN' => array(
+ 0 => 'HNL',
+ ),
+ 'HR' => array(
+ 0 => 'HRK',
+ ),
+ 'HT' => array(
+ 0 => 'HTG',
+ 1 => 'USD',
+ ),
+ 'HU' => array(
+ 0 => 'HUF',
+ ),
+ 'IC' => array(
+ 0 => 'EUR',
+ ),
+ 'ID' => array(
+ 0 => 'IDR',
+ ),
+ 'IE' => array(
+ 0 => 'EUR',
+ ),
+ 'IL' => array(
+ 0 => 'ILS',
+ ),
+ 'IM' => array(
+ 0 => 'GBP',
+ ),
+ 'IN' => array(
+ 0 => 'INR',
+ ),
+ 'IO' => array(
+ 0 => 'USD',
+ ),
+ 'IQ' => array(
+ 0 => 'IQD',
+ ),
+ 'IR' => array(
+ 0 => 'IRR',
+ ),
+ 'IS' => array(
+ 0 => 'ISK',
+ ),
+ 'IT' => array(
+ 0 => 'EUR',
+ ),
+ 'JE' => array(
+ 0 => 'GBP',
+ ),
+ 'JM' => array(
+ 0 => 'JMD',
+ ),
+ 'JO' => array(
+ 0 => 'JOD',
+ ),
+ 'JP' => array(
+ 0 => 'JPY',
+ ),
+ 'KE' => array(
+ 0 => 'KES',
+ ),
+ 'KG' => array(
+ 0 => 'KGS',
+ ),
+ 'KH' => array(
+ 0 => 'KHR',
+ ),
+ 'KI' => array(
+ 0 => 'AUD',
+ ),
+ 'KM' => array(
+ 0 => 'KMF',
+ ),
+ 'KN' => array(
+ 0 => 'XCD',
+ ),
+ 'KP' => array(
+ 0 => 'KPW',
+ ),
+ 'KR' => array(
+ 0 => 'KRW',
+ ),
+ 'KW' => array(
+ 0 => 'KWD',
+ ),
+ 'KY' => array(
+ 0 => 'KYD',
+ ),
+ 'KZ' => array(
+ 0 => 'KZT',
+ ),
+ 'LA' => array(
+ 0 => 'LAK',
+ ),
+ 'LB' => array(
+ 0 => 'LBP',
+ ),
+ 'LC' => array(
+ 0 => 'XCD',
+ ),
+ 'LI' => array(
+ 0 => 'CHF',
+ ),
+ 'LK' => array(
+ 0 => 'LKR',
+ ),
+ 'LR' => array(
+ 0 => 'LRD',
+ ),
+ 'LS' => array(
+ 0 => 'ZAR',
+ 1 => 'LSL',
+ ),
+ 'LT' => array(
+ 0 => 'LTL',
+ ),
+ 'LU' => array(
+ 0 => 'EUR',
+ ),
+ 'LV' => array(
+ 0 => 'EUR',
+ ),
+ 'LY' => array(
+ 0 => 'LYD',
+ ),
+ 'MA' => array(
+ 0 => 'MAD',
+ ),
+ 'MC' => array(
+ 0 => 'EUR',
+ ),
+ 'MD' => array(
+ 0 => 'MDL',
+ ),
+ 'ME' => array(
+ 0 => 'EUR',
+ ),
+ 'MF' => array(
+ 0 => 'EUR',
+ ),
+ 'MG' => array(
+ 0 => 'MGA',
+ ),
+ 'MH' => array(
+ 0 => 'USD',
+ ),
+ 'MK' => array(
+ 0 => 'MKD',
+ ),
+ 'ML' => array(
+ 0 => 'XOF',
+ ),
+ 'MM' => array(
+ 0 => 'MMK',
+ ),
+ 'MN' => array(
+ 0 => 'MNT',
+ ),
+ 'MO' => array(
+ 0 => 'MOP',
+ ),
+ 'MP' => array(
+ 0 => 'USD',
+ ),
+ 'MQ' => array(
+ 0 => 'EUR',
+ ),
+ 'MR' => array(
+ 0 => 'MRO',
+ ),
+ 'MS' => array(
+ 0 => 'XCD',
+ ),
+ 'MT' => array(
+ 0 => 'EUR',
+ ),
+ 'MU' => array(
+ 0 => 'MUR',
+ ),
+ 'MV' => array(
+ 0 => 'MVR',
+ ),
+ 'MW' => array(
+ 0 => 'MWK',
+ ),
+ 'MX' => array(
+ 0 => 'MXN',
+ ),
+ 'MY' => array(
+ 0 => 'MYR',
+ ),
+ 'MZ' => array(
+ 0 => 'MZN',
+ ),
+ 'NA' => array(
+ 0 => 'NAD',
+ 1 => 'ZAR',
+ ),
+ 'NC' => array(
+ 0 => 'XPF',
+ ),
+ 'NE' => array(
+ 0 => 'XOF',
+ ),
+ 'NF' => array(
+ 0 => 'AUD',
+ ),
+ 'NG' => array(
+ 0 => 'NGN',
+ ),
+ 'NI' => array(
+ 0 => 'NIO',
+ ),
+ 'NL' => array(
+ 0 => 'EUR',
+ ),
+ 'NO' => array(
+ 0 => 'NOK',
+ ),
+ 'NP' => array(
+ 0 => 'NPR',
+ ),
+ 'NR' => array(
+ 0 => 'AUD',
+ ),
+ 'NU' => array(
+ 0 => 'NZD',
+ ),
+ 'NZ' => array(
+ 0 => 'NZD',
+ ),
+ 'OM' => array(
+ 0 => 'OMR',
+ ),
+ 'PA' => array(
+ 0 => 'PAB',
+ 1 => 'USD',
+ ),
+ 'PE' => array(
+ 0 => 'PEN',
+ ),
+ 'PF' => array(
+ 0 => 'XPF',
+ ),
+ 'PG' => array(
+ 0 => 'PGK',
+ ),
+ 'PH' => array(
+ 0 => 'PHP',
+ ),
+ 'PK' => array(
+ 0 => 'PKR',
+ ),
+ 'PL' => array(
+ 0 => 'PLN',
+ ),
+ 'PM' => array(
+ 0 => 'EUR',
+ ),
+ 'PN' => array(
+ 0 => 'NZD',
+ ),
+ 'PR' => array(
+ 0 => 'USD',
+ ),
+ 'PS' => array(
+ 0 => 'ILS',
+ 1 => 'JOD',
+ ),
+ 'PT' => array(
+ 0 => 'EUR',
+ ),
+ 'PW' => array(
+ 0 => 'USD',
+ ),
+ 'PY' => array(
+ 0 => 'PYG',
+ ),
+ 'QA' => array(
+ 0 => 'QAR',
+ ),
+ 'RE' => array(
+ 0 => 'EUR',
+ ),
+ 'RO' => array(
+ 0 => 'RON',
+ ),
+ 'RS' => array(
+ 0 => 'RSD',
+ ),
+ 'RU' => array(
+ 0 => 'RUB',
+ ),
+ 'RW' => array(
+ 0 => 'RWF',
+ ),
+ 'SA' => array(
+ 0 => 'SAR',
+ ),
+ 'SB' => array(
+ 0 => 'SBD',
+ ),
+ 'SC' => array(
+ 0 => 'SCR',
+ ),
+ 'SD' => array(
+ 0 => 'SDG',
+ ),
+ 'SE' => array(
+ 0 => 'SEK',
+ ),
+ 'SG' => array(
+ 0 => 'SGD',
+ ),
+ 'SH' => array(
+ 0 => 'SHP',
+ ),
+ 'SI' => array(
+ 0 => 'EUR',
+ ),
+ 'SJ' => array(
+ 0 => 'NOK',
+ ),
+ 'SK' => array(
+ 0 => 'EUR',
+ ),
+ 'SL' => array(
+ 0 => 'SLL',
+ ),
+ 'SM' => array(
+ 0 => 'EUR',
+ ),
+ 'SN' => array(
+ 0 => 'XOF',
+ ),
+ 'SO' => array(
+ 0 => 'SOS',
+ ),
+ 'SR' => array(
+ 0 => 'SRD',
+ ),
+ 'SS' => array(
+ 0 => 'SSP',
+ ),
+ 'ST' => array(
+ 0 => 'STD',
+ ),
+ 'SV' => array(
+ 0 => 'USD',
+ ),
+ 'SX' => array(
+ 0 => 'ANG',
+ ),
+ 'SY' => array(
+ 0 => 'SYP',
+ ),
+ 'SZ' => array(
+ 0 => 'SZL',
+ ),
+ 'TA' => array(
+ 0 => 'GBP',
+ ),
+ 'TC' => array(
+ 0 => 'USD',
+ ),
+ 'TD' => array(
+ 0 => 'XAF',
+ ),
+ 'TF' => array(
+ 0 => 'EUR',
+ ),
+ 'TG' => array(
+ 0 => 'XOF',
+ ),
+ 'TH' => array(
+ 0 => 'THB',
+ ),
+ 'TJ' => array(
+ 0 => 'TJS',
+ ),
+ 'TK' => array(
+ 0 => 'NZD',
+ ),
+ 'TL' => array(
+ 0 => 'USD',
+ ),
+ 'TM' => array(
+ 0 => 'TMT',
+ ),
+ 'TN' => array(
+ 0 => 'TND',
+ ),
+ 'TO' => array(
+ 0 => 'TOP',
+ ),
+ 'TR' => array(
+ 0 => 'TRY',
+ ),
+ 'TT' => array(
+ 0 => 'TTD',
+ ),
+ 'TV' => array(
+ 0 => 'AUD',
+ ),
+ 'TW' => array(
+ 0 => 'TWD',
+ ),
+ 'TZ' => array(
+ 0 => 'TZS',
+ ),
+ 'UA' => array(
+ 0 => 'UAH',
+ ),
+ 'UG' => array(
+ 0 => 'UGX',
+ ),
+ 'UM' => array(
+ 0 => 'USD',
+ ),
+ 'US' => array(
+ 0 => 'USD',
+ ),
+ 'UY' => array(
+ 0 => 'UYU',
+ ),
+ 'UZ' => array(
+ 0 => 'UZS',
+ ),
+ 'VA' => array(
+ 0 => 'EUR',
+ ),
+ 'VC' => array(
+ 0 => 'XCD',
+ ),
+ 'VE' => array(
+ 0 => 'VEF',
+ ),
+ 'VG' => array(
+ 0 => 'USD',
+ ),
+ 'VI' => array(
+ 0 => 'USD',
+ ),
+ 'VN' => array(
+ 0 => 'VND',
+ ),
+ 'VU' => array(
+ 0 => 'VUV',
+ ),
+ 'WF' => array(
+ 0 => 'XPF',
+ ),
+ 'WS' => array(
+ 0 => 'WST',
+ ),
+ 'XK' => array(
+ 0 => 'EUR',
+ ),
+ 'YE' => array(
+ 0 => 'YER',
+ ),
+ 'YT' => array(
+ 0 => 'EUR',
+ ),
+ 'ZA' => array(
+ 0 => 'ZAR',
+ ),
+ 'ZM' => array(
+ 0 => 'ZMW',
+ ),
+ 'ZW' => array(
+ 0 => 'USD',
+ ),
+);
diff --git a/MLEB/cldr/CountryNames.body.php b/MLEB/cldr/CountryNames.body.php
new file mode 100644
index 00000000..ed7a7f37
--- /dev/null
+++ b/MLEB/cldr/CountryNames.body.php
@@ -0,0 +1,87 @@
+<?php
+
+/**
+ * A class for querying translated country names from CLDR data.
+ *
+ * @author Niklas Laxström
+ * @author Ryan Kaldari
+ * @copyright Copyright © 2007-2011
+ * @license http://www.gnu.org/copyleft/gpl.html GNU General Public License 2.0 or later
+ */
+class CountryNames extends CldrNames {
+
+ private static $cache = array();
+
+ /**
+ * Get localized country names for a particular language, using fallback languages for missing
+ * items.
+ *
+ * @param string $code The language to return the list in
+ * @return array an associative array of country codes and localized country names
+ */
+ public static function getNames( $code ) {
+ // Load country names localized for the requested language
+ $names = self::loadLanguage( $code );
+
+ // Load missing country names from fallback languages
+ if ( is_callable( array( 'Language', 'getFallbacksFor' ) ) ) {
+ // MediaWiki 1.19
+ $fallbacks = Language::getFallbacksFor( $code );
+ foreach ( $fallbacks as $fallback ) {
+ // Overwrite the things in fallback with what we have already
+ $names = array_merge( self::loadLanguage( $fallback ), $names );
+ }
+ } else {
+ // MediaWiki 1.18 or earlier
+ $fallback = $code;
+ while ( $fallback = Language::getFallbackFor( $fallback ) ) {
+ // Overwrite the things in fallback with what we have already
+ $names = array_merge( self::loadLanguage( $fallback ), $names );
+ }
+ }
+
+ return $names;
+ }
+
+ /**
+ * Load country names localized for a particular language. Helper function for getNames.
+ *
+ * @param string $code The language to return the list in
+ * @return array an associative array of country codes and localized country names
+ */
+ private static function loadLanguage( $code ) {
+ if ( !isset( self::$cache[$code] ) ) {
+ wfProfileIn( __METHOD__ . '-recache' );
+
+ /* Load override for wrong or missing entries in cldr */
+ $override = dirname( __FILE__ ) . '/LocalNames/' . self::getOverrideFileName( $code );
+ if ( Language::isValidBuiltInCode( $code ) && file_exists( $override ) ) {
+ $countryNames = false;
+ require $override;
+ if ( is_array( $countryNames ) ) {
+ self::$cache[$code] = $countryNames;
+ }
+ }
+
+ $filename = dirname( __FILE__ ) . '/CldrNames/' . self::getFileName( $code );
+ if ( Language::isValidBuiltInCode( $code ) && file_exists( $filename ) ) {
+ $countryNames = false;
+ require $filename;
+ if ( is_array( $countryNames ) ) {
+ if ( isset( self::$cache[$code] ) ) {
+ // Add to existing list of localized country names
+ self::$cache[$code] = self::$cache[$code] + $countryNames;
+ } else {
+ // No list exists, so create it
+ self::$cache[$code] = $countryNames;
+ }
+ }
+ } else {
+ wfDebug( __METHOD__ . ": Unable to load country names for $filename\n" );
+ }
+ wfProfileOut( __METHOD__ . '-recache' );
+ }
+
+ return isset( self::$cache[$code] ) ? self::$cache[$code] : array();
+ }
+}
diff --git a/MLEB/cldr/CurrencyNames.body.php b/MLEB/cldr/CurrencyNames.body.php
new file mode 100644
index 00000000..a7fd38fa
--- /dev/null
+++ b/MLEB/cldr/CurrencyNames.body.php
@@ -0,0 +1,87 @@
+<?php
+
+/**
+ * A class for querying translated currency names from CLDR data.
+ *
+ * @author Niklas Laxström
+ * @author Ryan Kaldari
+ * @copyright Copyright © 2007-2012
+ * @license http://www.gnu.org/copyleft/gpl.html GNU General Public License 2.0 or later
+ */
+class CurrencyNames extends CldrNames {
+
+ private static $cache = array();
+
+ /**
+ * Get localized currency names for a particular language, using fallback languages for missing
+ * items.
+ *
+ * @param string $code The language to return the list in
+ * @return array an associative array of currency codes and localized currency names
+ */
+ public static function getNames( $code ) {
+ // Load currency names localized for the requested language
+ $names = self::loadLanguage( $code );
+
+ // Load missing currency names from fallback languages
+ if ( is_callable( array( 'Language', 'getFallbacksFor' ) ) ) {
+ // MediaWiki 1.19
+ $fallbacks = Language::getFallbacksFor( $code );
+ foreach ( $fallbacks as $fallback ) {
+ // Overwrite the things in fallback with what we have already
+ $names = array_merge( self::loadLanguage( $fallback ), $names );
+ }
+ } else {
+ // MediaWiki 1.18 or earlier
+ $fallback = $code;
+ while ( $fallback = Language::getFallbackFor( $fallback ) ) {
+ // Overwrite the things in fallback with what we have already
+ $names = array_merge( self::loadLanguage( $fallback ), $names );
+ }
+ }
+
+ return $names;
+ }
+
+ /**
+ * Load currency names localized for a particular language. Helper function for getNames.
+ *
+ * @param string $code The language to return the list in
+ * @return array an associative array of currency codes and localized currency names
+ */
+ private static function loadLanguage( $code ) {
+ if ( !isset( self::$cache[$code] ) ) {
+ wfProfileIn( __METHOD__ . '-recache' );
+
+ /* Load override for wrong or missing entries in cldr */
+ $override = dirname( __FILE__ ) . '/LocalNames/' . self::getOverrideFileName( $code );
+ if ( Language::isValidBuiltInCode( $code ) && file_exists( $override ) ) {
+ $currencyNames = false;
+ require $override;
+ if ( is_array( $currencyNames ) ) {
+ self::$cache[$code] = $currencyNames;
+ }
+ }
+
+ $filename = dirname( __FILE__ ) . '/CldrNames/' . self::getFileName( $code );
+ if ( Language::isValidBuiltInCode( $code ) && file_exists( $filename ) ) {
+ $currencyNames = false;
+ require $filename;
+ if ( is_array( $currencyNames ) ) {
+ if ( isset( self::$cache[$code] ) ) {
+ // Add to existing list of localized currency names
+ self::$cache[$code] = self::$cache[$code] + $currencyNames;
+ } else {
+ // No list exists, so create it
+ self::$cache[$code] = $currencyNames;
+ }
+ }
+ } else {
+ wfDebug( __METHOD__ . ": Unable to load currency names for $filename\n" );
+ }
+ wfProfileOut( __METHOD__ . '-recache' );
+ }
+
+ return isset( self::$cache[$code] ) ? self::$cache[$code] : array();
+ }
+}
diff --git a/MLEB/cldr/LICENSE b/MLEB/cldr/LICENSE
new file mode 100644
index 00000000..2de27108
--- /dev/null
+++ b/MLEB/cldr/LICENSE
@@ -0,0 +1,37 @@
+NOTICE TO USER: Carefully read the following legal agreement. BY DOWNLOADING,
+INSTALLING, COPYING OR OTHERWISE USING UNICODE INC.'S DATA FILES ("DATA FILES"),
+AND/OR SOFTWARE ("SOFTWARE"), YOU UNEQUIVOCALLY ACCEPT, AND AGREE TO BE BOUND
+BY, ALL OF THE TERMS AND CONDITIONS OF THIS AGREEMENT. IF YOU DO NOT AGREE,
+DO NOT DOWNLOAD, INSTALL, COPY, DISTRIBUTE OR USE THE DATA FILES OR SOFTWARE.
+
+COPYRIGHT AND PERMISSION NOTICE
+
+Copyright © 1991-2009 Unicode, Inc. All rights reserved. Distributed under the
+Terms of Use in http://www.unicode.org/copyright.html.
+
+Permission is hereby granted, free of charge, to any person obtaining a copy of
+the Unicode data files and any associated documentation (the "Data Files") or
+Unicode software and any associated documentation (the "Software") to deal in
+the Data Files or Software without restriction, including without limitation
+the rights to use, copy, modify, merge, publish, distribute, and/or sell copies
+of the Data Files or Software, and to permit persons to whom the Data Files or
+Software are furnished to do so, provided that (a) the above copyright notice(s)
+and this permission notice appear with all copies of the Data Files or Software,
+(b) both the above copyright notice(s) and this permission notice appear in
+associated documentation, and (c) there is clear notice in each modified Data
+File or in the Software as well as in the documentation associated with the
+Data File(s) or Software that the data or software has been modified.
+
+THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF THIRD PARTY RIGHTS. IN
+NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE BE LIABLE
+FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, OR ANY DAMAGES
+WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF
+CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION
+WITH THE USE OR PERFORMANCE OF THE DATA FILES OR SOFTWARE.
+
+Except as contained in this notice, the name of a copyright holder shall not be
+used in advertising or otherwise to promote the sale, use or other dealings in
+these Data Files or Software without prior written authorization of the
+copyright holder.
diff --git a/MLEB/cldr/LanguageNames.body.php b/MLEB/cldr/LanguageNames.body.php
new file mode 100644
index 00000000..06643704
--- /dev/null
+++ b/MLEB/cldr/LanguageNames.body.php
@@ -0,0 +1,145 @@
+<?php
+
+/**
+ * A class for querying translated language names from CLDR data.
+ *
+ * @author Niklas Laxström
+ * @author Ryan Kaldari
+ * @copyright Copyright © 2007-2011
+ * @license http://www.gnu.org/copyleft/gpl.html GNU General Public License 2.0 or later
+ */
+class LanguageNames extends CldrNames {
+
+ private static $cache = array();
+
+ const FALLBACK_NATIVE = 0; // Missing entries fallback to native name
+ const FALLBACK_NORMAL = 1; // Missing entries fallback through the fallback chain
+ const LIST_MW_SUPPORTED = 0; // Only names that have localisation in MediaWiki
+ const LIST_MW = 1; // All names that are in Names.php
+ const LIST_MW_AND_CLDR = 2; // Combination of Names.php and what is in cldr
+
+ /**
+ * Get localized language names for a particular language, using fallback languages for missing
+ * items.
+ *
+ * @param $code string
+ * @param $fbMethod int
+ * @param $list int
+ * @throws MWException
+ * @return array an associative array of language codes and localized language names
+ */
+ public static function getNames( $code, $fbMethod = self::FALLBACK_NATIVE,
+ $list = self::LIST_MW
+ ) {
+ $xx = self::loadLanguage( $code );
+ $native = Language::fetchLanguageNames(
+ null,
+ $list === self::LIST_MW_SUPPORTED ? 'mwfile' : 'mw'
+ );
+
+ if ( $fbMethod === self::FALLBACK_NATIVE ) {
+ $names = array_merge( $native, $xx );
+ } elseif ( $fbMethod === self::FALLBACK_NORMAL ) {
+ // Load missing language names from fallback languages
+ $fb = $xx;
+ if ( is_callable( array( 'Language', 'getFallbacksFor' ) ) ) {
+ // MediaWiki 1.19
+ $fallbacks = Language::getFallbacksFor( $code );
+ foreach ( $fallbacks as $fallback ) {
+ // Overwrite the things in fallback with what we have already
+ $fb = array_merge( self::loadLanguage( $fallback ), $fb );
+ }
+ } else {
+ // MediaWiki 1.18 or earlier
+ $fallback = $code;
+ while ( $fallback = Language::getFallbackFor( $fallback ) ) {
+ // Overwrite the things in fallback with what we have already
+ $fb = array_merge( self::loadLanguage( $fallback ), $fb );
+ }
+ }
+
+ /* Add native names for codes that are not in cldr */
+ $names = array_merge( $native, $fb );
+
+ /* As a last resort, try the native name in Names.php */
+ if ( !isset( $names[$code] ) && isset( $native[$code] ) ) {
+ $names[$code] = $native[$code];
+ }
+ } else {
+ throw new MWException( "Invalid value for 2:\$fallback in " . __METHOD__ );
+ }
+
+ switch ( $list ) {
+ case self::LIST_MW:
+ case self::LIST_MW_SUPPORTED:
+ /* Remove entries that are not in fb */
+ $names = array_intersect_key( $names, $native );
+ /* And fall to the return */
+ case self::LIST_MW_AND_CLDR:
+ return $names;
+ default:
+ throw new MWException( "Invalid value for 3:\$list in " . __METHOD__ );
+ }
+ }
+
+ /**
+ * Load currency names localized for a particular language. Helper function for getNames.
+ *
+ * @param $code string The language to return the list in
+ * @return array an associative array of language codes and localized language names
+ */
+ private static function loadLanguage( $code ) {
+ if ( isset( self::$cache[$code] ) ) {
+ return self::$cache[$code];
+ }
+
+ self::$cache[$code] = array();
+
+ if ( !Language::isValidBuiltInCode( $code ) ) {
+ return array();
+ }
+
+ wfProfileIn( __METHOD__ . '-recache' );
+
+ /* Load override for wrong or missing entries in cldr */
+ $override = dirname( __FILE__ ) . '/LocalNames/' . self::getOverrideFileName( $code );
+ if ( file_exists( $override ) ) {
+ $languageNames = false;
+ require $override;
+ if ( is_array( $languageNames ) ) {
+ self::$cache[$code] = $languageNames;
+ }
+ }
+
+ $filename = dirname( __FILE__ ) . '/CldrNames/' . self::getFileName( $code );
+ if ( file_exists( $filename ) ) {
+ $languageNames = false;
+ require $filename;
+ if ( is_array( $languageNames ) ) {
+ if ( isset( self::$cache[$code] ) ) {
+ // Add to existing list of localized language names
+ self::$cache[$code] = self::$cache[$code] + $languageNames;
+ } else {
+ // No list exists, so create it
+ self::$cache[$code] = $languageNames;
+ }
+ }
+ } else {
+ wfDebug( __METHOD__ . ": Unable to load language names for $filename\n" );
+ }
+ wfProfileOut( __METHOD__ . '-recache' );
+
+ return self::$cache[$code];
+ }
+
+ /**
+ * @param $names array
+ * @param $code string
+ * @return bool
+ */
+ public static function coreHook( &$names, $code ) {
+ $names += self::getNames( $code, self::FALLBACK_NORMAL, self::LIST_MW_AND_CLDR );
+
+ return true;
+ }
+}
diff --git a/MLEB/cldr/LocalNames/LocalNamesBe_tarask.php b/MLEB/cldr/LocalNames/LocalNamesBe_tarask.php
new file mode 100644
index 00000000..30f7a9bf
--- /dev/null
+++ b/MLEB/cldr/LocalNames/LocalNamesBe_tarask.php
@@ -0,0 +1,506 @@
+<?php
+$languageNames = array(
+ 'ab' => 'абхаская',
+ 'af' => 'афрыкаанс',
+ 'an' => 'арагонская',
+ 'ang' => 'стараангельская',
+ 'ar' => 'арабская',
+ 'art' => 'штучная мова',
+ 'arz' => 'эгіпецкая арабская',
+ 'ast' => 'астурыйская',
+ 'az' => 'азэрбайджанская',
+ 'ba' => 'башкірская',
+ 'bar' => 'баварская',
+ 'be' => 'беларуская',
+ 'be-tarask' => 'беларуская (тарашкевіца)',
+ 'be-x-old' => 'беларуская (тарашкевіца)',
+ 'bg' => 'баўгарская',
+ 'bn' => 'бэнгальская',
+ 'bo' => 'тыбэцкая',
+ 'br' => 'брэтонская',
+ 'bs' => 'басьнійская',
+ 'bxr' => 'бурацкая',
+ 'ca' => 'каталёнская',
+ 'crh' => 'крымска-татарская',
+ 'crh-cyrl' => 'крымска-татарская (кірыліца)',
+ 'crh-latn' => 'крымска-татарская (лацініца)',
+ 'cs' => 'чэская',
+ 'cv' => 'чуваская',
+ 'cy' => 'валійская',
+ 'da' => 'дацкая',
+ 'de' => 'нямецкая',
+ 'de-at' => 'аўстрыйская нямецкая',
+ 'de-ch' => 'швайцарская нямецкая',
+ 'de-formal' => 'афіцыйная нямецкая',
+ 'el' => 'грэцкая',
+ 'en' => 'ангельская',
+ 'en-au' => 'аўстралійская ангельская',
+ 'en-ca' => 'канадзкая ангельская',
+ 'en-gb' => 'брытанская ангельская',
+ 'en-us' => 'амэрыканская ангельская',
+ 'eo' => 'эспэранта',
+ 'es' => 'гішпанская',
+ 'et' => 'эстонская',
+ 'eu' => 'баскаўская',
+ 'fa' => 'пэрсыдзкая',
+ 'fi' => 'фінская',
+ 'fj' => 'фіджыйская',
+ 'fr' => 'француская',
+ 'fr-ca' => 'канадзкая француская',
+ 'fr-ch' => 'швайцарская француская',
+ 'ga' => 'ірляндзкая',
+ 'gd' => 'шатляндзкая гэльская',
+ 'gl' => 'галіцыйская',
+ 'grc' => 'старажытнагрэцкая',
+ 'he' => 'іўрыт',
+ 'hi' => 'гіндзі',
+ 'hif' => 'фіджыйская гіндзі',
+ 'hif-deva' => 'фіджыйская гіндзі (дэванагары)',
+ 'hif-latn' => 'фіджыйская гіндзі (лацініца)',
+ 'hr' => 'харвацкая',
+ 'hu' => 'вугорская',
+ 'hy' => 'армянская',
+ 'ia' => 'інтэрлінгва',
+ 'id' => 'інданэзійская',
+ 'inh' => 'інгуская',
+ 'is' => 'ісьляндзкая',
+ 'it' => 'італьянская',
+ 'ja' => 'японская',
+ 'ka' => 'грузінская',
+ 'kea' => 'крэольская (Капа-Вэрдэ)',
+ 'kk' => 'казаская',
+ 'kk-arab' => 'казаская (арабская)',
+ 'kl' => 'грэнляндзкая',
+ 'ko' => 'карэйская',
+ 'ko-kp' => 'карэйская (КНДР)',
+ 'ky' => 'кыргыская',
+ 'la' => 'лацінская',
+ 'lt' => 'летувіская',
+ 'lv' => 'латыская',
+ 'mn' => 'мангольская',
+ 'mo' => 'малдаўская',
+ 'nap' => 'нэапалітанская',
+ 'nb' => 'нарвэская (букмал)',
+ 'nl' => 'нідэрляндзкая',
+ 'nn' => 'нарвэская (нюнашк)',
+ 'no' => 'нарвэская (букмол)',
+ 'non' => 'старанарвэская',
+ 'os' => 'асэтынская',
+ 'peo' => 'старапэрсыдзкая',
+ 'pl' => 'польская',
+ 'prg' => 'пруская',
+ 'pt' => 'партугальская',
+ 'pt-br' => 'бразыльская партугальская',
+ 'qu' => 'кечуа',
+ 'ro' => 'румынская',
+ 'ru' => 'расейская',
+ 'sa' => 'санскрыт',
+ 'sah' => 'якуцкая',
+ 'sco' => 'шатляндзкая',
+ 'sem' => 'сэміцкая мова',
+ 'sh' => 'сэрбскахарвацкая',
+ 'simple' => 'спрошчаная ангельская',
+ 'sk' => 'славацкая',
+ 'sl' => 'славенская',
+ 'so' => 'самалійская',
+ 'sq' => 'альбанская',
+ 'sr' => 'сэрбская',
+ 'sr-ec' => 'сэрбская (кірыліца)',
+ 'sr-el' => 'сэрбская (лацініца)',
+ 'sv' => 'швэдзкая',
+ 'sw' => 'суахілі',
+ 'tg' => 'таджыцкая',
+ 'tg-cyrl' => 'таджыцкая (кірыліца)',
+ 'tg-latn' => 'таджыцкая (лацініца)',
+ 'th' => 'тайская',
+ 'tk' => 'туркмэнская',
+ 'tr' => 'турэцкая',
+ 'tt' => 'татарская',
+ 'tt-cyrl' => 'татарская (кірыліца)',
+ 'tt-latn' => 'татарская (лацініца)',
+ 'tyv' => 'тувінская',
+ 'udm' => 'удмурцкая',
+ 'ug' => 'уйгурская',
+ 'uk' => 'украінская',
+ 'uz' => 'узбэцкая',
+ 'vi' => 'віетнамская',
+ 'vo' => 'валапюк',
+ 'und' => 'невядомая',
+ 'yi' => 'ідыш',
+ 'zh' => 'кітайская',
+);
+
+$currencyNames = array(
+ 'ALL' => 'альбанскі лек',
+ 'AMD' => 'армянскі драм',
+ 'ATS' => 'аўстрыйскі шылінг',
+ 'AUD' => 'аўстралійскі даляр',
+ 'AZN' => 'азэрбайджанскі манат',
+ 'BGN' => 'баўгарскі леў',
+ 'BND' => 'брунэйскі даляр',
+ 'BOP' => 'балівійскі пэса',
+ 'BRL' => 'бразыльскі рэал',
+ 'BSD' => 'багамскі даляр',
+ 'BUK' => 'Burmese Kyat',
+ 'BWP' => 'Botswanan Pula',
+ 'BYB' => 'новы беларускі рубель (1994-1999)',
+ 'BYR' => 'беларускі рубель',
+ 'BZD' => 'бэліскі даляр',
+ 'CAD' => 'канадзкі даляр',
+ 'CHF' => 'швайцарскі франк',
+ 'CLE' => 'чылійскі эскуда',
+ 'CLP' => 'чылійскі пэса',
+ 'CNX' => 'даляр Банка КНР',
+ 'CNY' => 'кітайскі юань',
+ 'COP' => 'калюмбійскі пэса',
+ 'CUP' => 'кубінскі пэса',
+ 'DDM' => 'усходне-нямецкая марка',
+ 'DEM' => 'нямецкая марка',
+ 'DOP' => 'дамініканскі пэса',
+ 'DZD' => 'альжырскі дынар',
+ 'EEK' => 'эстонская крона',
+ 'EGP' => 'эгіпецкі фунт',
+ 'EUR' => 'эўра',
+ 'FJD' => 'фіджыйскі даляр',
+ 'FKP' => 'фунт Фолклэндзкіх астравоў',
+ 'FRF' => 'францускі франк',
+ 'GBP' => 'фунт стэрлінгаў',
+ 'GEL' => 'грузінскі лары',
+ 'GRD' => 'грэцкая драхма',
+ 'HKD' => 'ганконскі даляр',
+ 'HRD' => 'харвацкі дынар',
+ 'HRK' => 'харвацкая куна',
+ 'IEP' => 'ірляндзкі фунт',
+ 'ILP' => 'ізраільскі фунт',
+ 'ILR' => 'ізраільскі шэкель (1980-1985)',
+ 'ILS' => 'новы ізраільскі шэкель',
+ 'INR' => 'індыйская рупія',
+ 'IQD' => 'ірацкі дынар',
+ 'IRR' => 'іранскі рыял',
+ 'ISK' => 'ісьляндзкая крона',
+ 'ITL' => 'італьянская ліра',
+ 'JMD' => 'ямайскі даляр',
+ 'JOD' => 'ярданскі дынар',
+ 'JPY' => 'японская ена',
+ 'KES' => 'кенійскі шылінг',
+ 'KGS' => 'кыргыскі сом',
+ 'KPW' => 'паўночнакарэйскі вон',
+ 'KRH' => 'South Korean Hwan (1953-1962)',
+ 'KRO' => 'South Korean Won (1945-1953)',
+ 'KRW' => 'паўднёвакарэйскі вон',
+ 'KWD' => 'кувэйцкі дынар',
+ 'KZT' => 'казаскі тэнге',
+ 'LBP' => 'лібанскі фунт',
+ 'LRD' => 'лібэрйскі даляр',
+ 'LTL' => 'летувіскі літ',
+ 'LVL' => 'латыскі лат',
+ 'LVR' => 'латыскі рубель',
+ 'LYD' => 'лібійскі дынар',
+ 'MDL' => 'малдаўскі леў',
+ 'MNT' => 'мангольскі тугрык',
+ 'MXN' => 'мэксыканскі пэса',
+ 'NAD' => 'намібійскі даляр',
+ 'NOK' => 'нарэвская крона',
+ 'NPR' => 'нэпальская рупія',
+ 'NZD' => 'новазэляндзкі даляр',
+ 'PKR' => 'пакістанская рупія',
+ 'PLN' => 'польскі злоты',
+ 'QAR' => 'катарскі рыял',
+ 'RON' => 'румынскі леў',
+ 'RSD' => 'сэрбскі дынар',
+ 'RUB' => 'расейскі рубель',
+ 'RUR' => 'расейскі рубель (1991-1998)',
+ 'SEK' => 'швэдзкая крона',
+ 'SGD' => 'сынгапурскі даляр',
+ 'SUR' => 'савецкі рубель',
+ 'SYP' => 'сырыйскі фунт',
+ 'SZL' => 'Swazi Lilangeni',
+ 'THB' => 'Thai Baht',
+ 'TJR' => 'таджыцкі рубель',
+ 'TJS' => 'таджыцкі сомані',
+ 'TMT' => 'туркмэнскі манат',
+ 'TND' => 'туніскі дынар',
+ 'TRY' => 'турэцкая ліра',
+ 'TWD' => 'новы тайванскі даляр',
+ 'TZS' => 'Tanzanian Shilling',
+ 'UAH' => 'украінская грыўня',
+ 'USD' => 'даляр ЗША',
+ 'UZS' => 'узбэцкі сом',
+ 'VEF' => 'вэнэсуэльскі балівар',
+ 'VND' => 'віетнамскі донг',
+ 'XAG' => 'срэбра',
+ 'XAU' => 'золата',
+ 'XBA' => 'European Composite Unit',
+ 'XBB' => 'European Monetary Unit',
+ 'XBC' => 'European Unit of Account (XBC)',
+ 'XBD' => 'European Unit of Account (XBD)',
+ 'XCD' => 'East Caribbean Dollar',
+ 'XDR' => 'спэцыяльныя правы пазычаньня',
+ 'XPD' => 'палядый',
+ 'XPT' => 'плятына',
+ 'XTS' => 'тэставы код валюты',
+ 'XXX' => 'невядомая валюта',
+ 'YDD' => 'еменскі дынар',
+ 'YER' => 'еменскі рыял',
+);
+
+$countryNames = array(
+ 'AC' => 'Востраў Ушэсьця',
+ 'AD' => 'Андора',
+ 'AE' => 'Аб’яднаныя Арабскія Эміраты',
+ 'AF' => 'Афганістан',
+ 'AG' => 'Антыгуа і Барбудаa',
+ 'AI' => 'Ангілья',
+ 'AL' => 'Альбанія',
+ 'AM' => 'Армэнія',
+ 'AN' => 'Нідэрляндзкія Антылы',
+ 'AO' => 'Ангола',
+ 'AQ' => 'Антарктыда',
+ 'AR' => 'Аргентына',
+ 'AS' => 'Амэрыканскае Самоа',
+ 'AT' => 'Аўстрыя',
+ 'AU' => 'Аўстралія',
+ 'AW' => 'Аруба',
+ 'AX' => 'Аляндзкія астравы',
+ 'AZ' => 'Азэрбайджан',
+ 'BA' => 'Босьнія і Герцагавіна',
+ 'BB' => 'Барбадас',
+ 'BD' => 'Банглядэш',
+ 'BE' => 'Бэльгія',
+ 'BF' => 'Буркіна-Фасо',
+ 'BG' => 'Баўгарыя',
+ 'BH' => 'Бахрэйн',
+ 'BI' => 'Бурундзі',
+ 'BJ' => 'Бэнін',
+ 'BL' => 'Сэн-Бартэльмі',
+ 'BM' => 'Бэрмудзкія астравы',
+ 'BN' => 'Брунэй',
+ 'BO' => 'Балівія',
+ 'BQ' => 'Карыбскія Нідэрлянды',
+ 'BR' => 'Бразылія',
+ 'BS' => 'Багамы',
+ 'BT' => 'Бутан',
+ 'BV' => 'Бувэ',
+ 'BW' => 'Батсвана',
+ 'BY' => 'Беларусь',
+ 'BZ' => 'Бэліз',
+ 'CA' => 'Канада',
+ 'CC' => 'Какосавыя астравы (Кілінг)',
+ 'CD' => 'Дэмакратычная Рэспубліка Конга',
+ 'CF' => 'Цэнтральна-Афрыканская Рэспубліка',
+ 'CG' => 'Рэспубліка Конга',
+ 'CH' => 'Швайцарыя',
+ 'CI' => 'Кот д’Івуар',
+ 'CK' => 'Астравы Кука',
+ 'CL' => 'Чылі',
+ 'CM' => 'Камэрун',
+ 'CN' => 'Кітай',
+ 'CO' => 'Калюмбія',
+ 'CP' => 'Кліпэртан',
+ 'CR' => 'Коста-Рыка',
+ 'CU' => 'Куба',
+ 'CV' => 'Каба-Вэрдэ',
+ 'CW' => 'Кюрасао',
+ 'CX' => 'Востраў Раства',
+ 'CY' => 'Кіпр',
+ 'CZ' => 'Чэхія',
+ 'DE' => 'Нямеччына',
+ 'DG' => 'Дыега Гарсія',
+ 'DJ' => 'Джыбуці',
+ 'DK' => 'Данія',
+ 'DM' => 'Дамініка',
+ 'DO' => 'Дамініканская Рэспубліка',
+ 'DZ' => 'Альжыр',
+ 'EA' => 'Сэўта і Мэлілья',
+ 'EC' => 'Эквадор',
+ 'EE' => 'Эстонія',
+ 'EG' => 'Эгіпет',
+ 'EH' => 'Заходняя Сахара',
+ 'ER' => 'Эрытрэя',
+ 'ES' => 'Гішпанія',
+ 'ET' => 'Этыёпія',
+ 'EU' => 'Эўрапейскі Зьвяз',
+ 'FI' => 'Фінляндыя',
+ 'FJ' => 'Фіджы',
+ 'FK' => 'Фолклэндзкія астравы',
+ 'FM' => 'Мікранэзія',
+ 'FO' => 'Фарэрскія астравы',
+ 'FR' => 'Францыя',
+ 'GA' => 'Габон',
+ 'GB' => 'Вялікабрытанія',
+ 'GD' => 'Грэнада',
+ 'GE' => 'Грузія',
+ 'GF' => 'Француская Гвінэя',
+ 'GG' => 'Гернсі',
+ 'GH' => 'Гана',
+ 'GI' => 'Гібральтар',
+ 'GL' => 'Грынляндыя',
+ 'GM' => 'Гамбія',
+ 'GN' => 'Гвінэя',
+ 'GP' => 'Гвадэлюпа',
+ 'GQ' => 'Экватарыяльная Гвінэя',
+ 'GR' => 'Грэцыя',
+ 'GS' => 'Паўднёвая Георгія і Паўднёвыя Сэндвічавыя астравы',
+ 'GT' => 'Гватэмала',
+ 'GU' => 'Гуам',
+ 'GW' => 'Гвінэя-Бісаў',
+ 'GY' => 'Гаяна',
+ 'HK' => 'Ганконг',
+ 'HM' => 'Востраў Херд і Астравы Макдоналд',
+ 'HN' => 'Гандурас',
+ 'HR' => 'Харватыя',
+ 'HT' => 'Гаіці',
+ 'HU' => 'Вугоршчына',
+ 'IC' => 'Канарскія астравы',
+ 'ID' => 'Інданэзія',
+ 'IE' => 'Ірляндыя',
+ 'IL' => 'Ізраіль',
+ 'IM' => 'Востраў Мэн',
+ 'IN' => 'Індыя',
+ 'IO' => 'Брытанская тэрыторыя ў Індыйскім акіяне',
+ 'IQ' => 'Ірак',
+ 'IR' => 'Іран',
+ 'IS' => 'Ісьляндыя',
+ 'IT' => 'Італія',
+ 'JE' => 'Джэрсі',
+ 'JM' => 'Ямайка',
+ 'JO' => 'Ярданія',
+ 'JP' => 'Японія',
+ 'KE' => 'Кенія',
+ 'KG' => 'Кыргыстан',
+ 'KH' => 'Камбоджа',
+ 'KI' => 'Кірыбаці',
+ 'KM' => 'Каморскія астравы',
+ 'KN' => 'Сьвяты Кітс і Нэвіс',
+ 'KP' => 'Паўночная Карэя',
+ 'KR' => 'Паўднёвая Карэя',
+ 'KW' => 'Кувэйт',
+ 'KY' => 'Кайманавы астравы',
+ 'KZ' => 'Казахстан',
+ 'LA' => 'Лаос',
+ 'LB' => 'Лібан',
+ 'LC' => 'Сьвятая Люсія',
+ 'LI' => 'Ліхтэнштайн',
+ 'LK' => 'Шры-Ланка',
+ 'LR' => 'Лібэрыя',
+ 'LS' => 'Лесота',
+ 'LT' => 'Летува',
+ 'LU' => 'Люксэмбург',
+ 'LV' => 'Латвія',
+ 'LY' => 'Лібія',
+ 'MA' => 'Марока',
+ 'MC' => 'Манака',
+ 'MD' => 'Малдова',
+ 'ME' => 'Чарнагорыя',
+ 'MF' => 'Востраў Сьвятога Марціна',
+ 'MG' => 'Мадагаскар',
+ 'MH' => 'Маршалавы астравы',
+ 'MK' => 'Македонія',
+ 'ML' => 'Малі',
+ 'MM' => 'М’янма',
+ 'MN' => 'Манголія',
+ 'MO' => 'Макао',
+ 'MP' => 'Паўночныя Марыянскія астравы',
+ 'MQ' => 'Мартыніка',
+ 'MR' => 'Маўрытанія',
+ 'MS' => 'Мансэрат',
+ 'MT' => 'Мальта',
+ 'MU' => 'Маўрыцы',
+ 'MV' => 'Мальдывы',
+ 'MW' => 'Малаві',
+ 'MX' => 'Мэксыка',
+ 'MY' => 'Малайзія',
+ 'MZ' => 'Мазамбік',
+ 'NA' => 'Намібія',
+ 'NC' => 'Новая Каледонія',
+ 'NE' => 'Нігер',
+ 'NF' => 'Востраў Норфалк',
+ 'NG' => 'Нігерыя',
+ 'NI' => 'Нікарагуа',
+ 'NL' => 'Нідэрлянды',
+ 'NO' => 'Нарвэгія',
+ 'NP' => 'Нэпал',
+ 'NR' => 'Науру',
+ 'NU' => 'Ніуе',
+ 'NZ' => 'Новая Зэляндыя',
+ 'OM' => 'Аман',
+ 'PA' => 'Панама',
+ 'PE' => 'Пэру',
+ 'PF' => 'Француская Палінэзія',
+ 'PG' => 'Папуа-Новая Гвінэя',
+ 'PH' => 'Філіпіны',
+ 'PK' => 'Пакістан',
+ 'PL' => 'Польшча',
+ 'PM' => 'Сэн-П’ер і Мікелён',
+ 'PN' => 'Астравы Піткейрна',
+ 'PR' => 'Пуэрта-Рыка',
+ 'PS' => 'Палестынскія тэрыторыі',
+ 'PT' => 'Партугалія',
+ 'PW' => 'Палаў',
+ 'PY' => 'Парагвай',
+ 'QA' => 'Катар',
+ 'QO' => 'Зьнешняя Акіянія',
+ 'RE' => 'Рэюньён',
+ 'RO' => 'Румынія',
+ 'RS' => 'Сэрбія',
+ 'RU' => 'Расія',
+ 'RW' => 'Руанда',
+ 'SA' => 'Саудаўская Арабія',
+ 'SB' => 'Саламонавы астравы',
+ 'SC' => 'Сэйшэлы',
+ 'SD' => 'Судан',
+ 'SE' => 'Швэцыя',
+ 'SG' => 'Сынгапур',
+ 'SH' => 'Востраў Сьвятая Гэлена',
+ 'SI' => 'Славенія',
+ 'SJ' => 'Шпіцбэрген і Ян-Маен',
+ 'SK' => 'Славакія',
+ 'SL' => 'Сьера-Леонэ',
+ 'SM' => 'Сан-Марына',
+ 'SN' => 'Сэнэгал',
+ 'SO' => 'Самалі',
+ 'SR' => 'Сурынам',
+ 'SS' => 'Паўднёвы Судан',
+ 'ST' => 'Сан-Тамэ і Прынсыпі',
+ 'SV' => 'Сальвадор',
+ 'SX' => 'Сынт-Мартэн',
+ 'SY' => 'Сырыя',
+ 'SZ' => 'Сўазілэнд',
+ 'TA' => 'Трыстан-да-Кунья',
+ 'TC' => 'Тэркс і Кэйкас',
+ 'TD' => 'Чад',
+ 'TF' => 'Францускія Паўднёвыя Тэрыторыі',
+ 'TG' => 'Тога',
+ 'TH' => 'Тайлянд',
+ 'TJ' => 'Таджыкістан',
+ 'TK' => 'Такелаў',
+ 'TL' => 'Усходні Тымор',
+ 'TM' => 'Туркмэністан',
+ 'TN' => 'Туніс',
+ 'TO' => 'Тонга',
+ 'TR' => 'Турцыя',
+ 'TT' => 'Трынідад і Табага',
+ 'TV' => 'Тувалу',
+ 'TW' => 'Тайвань',
+ 'TZ' => 'Танзанія',
+ 'UA' => 'Украіна',
+ 'UG' => 'Уганда',
+ 'UM' => 'Зьнешнія астравы ЗША',
+ 'US' => 'Злучаныя Штаты Амэрыкі',
+ 'UY' => 'Уругвай',
+ 'UZ' => 'Узбэкістан',
+ 'VA' => 'Ватыкан',
+ 'VC' => 'Сьвяты Вінцэнт і Грэнадзіны',
+ 'VE' => 'Вэнэсуэла',
+ 'VG' => 'Брытанскія Віргінскія астравы',
+ 'VI' => 'Амэрыканскія Віргінскія астравы',
+ 'VN' => 'Віетнам',
+ 'VU' => 'Вануату',
+ 'WF' => 'Астравы Ўоліс і Футуна',
+ 'WS' => 'Самоа',
+ 'YE' => 'Емэн',
+ 'YT' => 'Маёта',
+ 'ZA' => 'Паўднёва-Афрыканская Рэспубліка',
+ 'ZM' => 'Замбія',
+ 'ZW' => 'Зымбабвэ',
+);
diff --git a/MLEB/cldr/LocalNames/LocalNamesEn.php b/MLEB/cldr/LocalNames/LocalNamesEn.php
new file mode 100644
index 00000000..f5460b8f
--- /dev/null
+++ b/MLEB/cldr/LocalNames/LocalNamesEn.php
@@ -0,0 +1,171 @@
+<?php
+$languageNames = array(
+ /* Not in CLDR 21.0.1. Name "Arabic, Tunisian Spoken" used by Ethnologue:
+ * http://www.ethnologue.com/show_language.asp?code=aeb
+ * Added 2012-11-13.
+ */
+ 'aeb' => 'Tunisian Spoken Arabic',
+
+ /* Not in CLDR 21.0.1. Arabic language
+ * http://www.ethnologue.com/show_language.asp?code=arq
+ * Added 2009-08-27.
+ */
+ 'arq' => 'Algerian Spoken Arabic',
+
+ /* Not in CLDR 21.0.1. Arabic language
+ * http://www.ethnologue.com/show_language.asp?code=ary
+ * Added 2008-04-12.
+ */
+ 'ary' => 'Moroccan Spoken Arabic',
+
+ /* Not in CLDR 21.0.1. Arabic language
+ * http://www.ethnologue.com/show_language.asp?code=arz
+ * Added 2009-08-23.
+ */
+ 'arz' => 'Egyptian Spoken Arabic',
+
+ /* Not in CLDR 21.0.1. Balochi language
+ * http://www.ethnologue.org/show_language.asp?code=bcc
+ * Added 2008-07-02.
+ */
+ 'bcc' => 'Southern Balochi',
+
+ /* Not in CLDR 21.0.1. Name Bishnupriya used by Ethnologue:
+ * http://www.ethnologue.org/show_language.asp?code=bpy
+ * Added 2007-11-10.
+ */
+ 'bpy' => 'Bishnupuriya Manipuri',
+
+ /* Not in CLDR 21.0.1. Swedish language
+ * http://www.ethnologue.org/show_language.asp?code=dlc
+ * Added 2008-02-16.
+ */
+ 'dlc' => 'Dalecarlian',
+
+ /* Not in CLDR 21.0.1. Romance language.
+ * http://www.ethnologue.org/show_language.asp?code=eml
+ * Added 2008-01-17.
+ */
+ 'eml' => 'Emiliano-Romagnolo',
+
+ /* Not in CLDR 21.0.1. Romance language.
+ * http://www.ethnologue.org/show_language.asp?code=frp
+ * Added 2007-12-02.
+ */
+ 'frp' => 'Franco-Provençal',
+
+ /* Not in CLDR 21.0.1. Chinese language.
+ * http://www.ethnologue.org/show_language.asp?code=hak
+ * Added 2007-12-02.
+ */
+ 'hak' => 'Hakka',
+
+ /* Not in CLDR 21.0.1. Chinese language.
+ * http://www.ethnologue.org/show_language.asp?code=gan
+ * Added 2007-12-02.
+ */
+ 'gan' => 'Gan',
+
+ /* Not in CLDR 21.0.1. Konkani language
+ * http://www.ethnologue.org/show_language.asp?code=gom
+ * Added 2008-09-02.
+ */
+ 'gom-deva' => 'Goan Konkani (Devanagari script)',
+ 'gom-latn' => 'Goan Konkani (Latin script)',
+ 'gom-knda' => 'Goan Konkani (Kannada script)',
+ 'gom-mlym' => 'Goan Konkani (Malayalam script)',
+ 'gom-arab' => 'Goan Konkani (Arabic script)',
+
+ /* Not in CLDR 21.0.1. Mari language
+ * http://www.ethnologue.org/show_language.asp?code=mhr
+ * Added 2008-05-22.
+ */
+ 'mhr' => 'Eastern Mari',
+
+ /* Not in CLDR 21.0.1. Mari language
+ * http://www.ethnologue.org/show_language.asp?code=mrj
+ * Added 2009-11-22.
+ */
+ 'mrj' => 'Hill Mari',
+
+ /* Not in CLDR 21.0.1. Malay language
+ * http://www.ethnologue.org/show_language.asp?code=mui
+ * Added 2010-02-11.
+ */
+ 'mui' => 'Musi',
+
+ /* Not in CLDR 21.0.1. Lahnda language.
+ * http://www.ethnologue.org/show_language.asp?code=pnb
+ * Added 2008-10-29.
+ */
+ 'pnb' => 'Western Punjabi',
+
+ /* Not in CLDR 21.0.1. Eastern Romance language.
+ * http://www.ethnologue.org/show_language.asp?code=ruq
+ * Added 2008-02-04.
+ */
+ 'ruq' => 'Megleno-Romanian',
+ 'ruq-cyrl' => 'Megleno-Romanian (Cyrillic script)',
+ 'ruq-grek' => 'Megleno-Romanian (Greek script)',
+ 'ruq-latn' => 'Megleno-Romanian (Latin script)',
+
+ /* Not in CLDR 21.0.1. West Middle German language.
+ * http://www.sil.org/iso639-3/documentation.asp?id=vmf
+ * Added 2010-01-31.
+ */
+ 'vmf' => 'Upper Franconian',
+
+ /* Not in CLDR 21.0.1. Chinese language.
+ * http://www.ethnologue.org/show_language.asp?code=wuu
+ * Added 2007-12-02.
+ */
+ 'wuu' => 'Wu',
+
+ /* Not in CLDR 21.0.1. Low Franconian language.
+ * http://www.ethnologue.org/show_language.asp?code=zea
+ * Added 2008-01-17.
+ */
+ 'zea' => 'Zeeuws',
+
+ /* Not in CLDR. Used for MediaWiki localisation
+ */
+ 'bat-smg' => 'Samogitian',
+ 'be-tarask' => 'Belarusian (Taraškievica orthography)',
+ 'cdo' => 'Min Dong Chinese',
+ 'crh-cyrl' => 'Crimean Turkish (Cyrillic script)',
+ 'crh-latn' => 'Crimean Turkish (Latin script)',
+ 'de-formal' => 'German (formal address)',
+ 'gan-hans' => 'Simplified Gan script',
+ 'gan-hant' => 'Traditional Gan script',
+ 'hif-latn' => 'Fiji Hindi (Latin script)',
+ 'ike-cans' => 'Eastern Canadian (Aboriginal syllabics)',
+ 'ike-latn' => 'Eastern Canadian (Latin script)',
+ 'kk-cn' => 'Kazakh (China)',
+ 'kk-kz' => 'Kazakh (Kazakhstan)',
+ 'kk-tr' => 'Kazakh (Turkey)',
+ 'kk-arab' => 'Kazakh (Arabic script)',
+ 'kk-cyrl' => 'Kazakh (Cyrillic script)',
+ 'kk-latn' => 'Kazakh (Latin script)',
+ 'ks-arab' => 'Kashmiri (Arabic script)',
+ 'ks-deva' => 'Kashmiri (Devanagari script)',
+ 'ku-latn' => 'Kurdish (Latin script)',
+ 'nds-nl' => 'Low Saxon (Netherlands)',
+ 'no' => 'Norwegian (bokmål)',
+ 'roa-rup' => 'Aromanian',
+ 'sr-ec' => 'Serbian (Cyrillic script)',
+ 'sr-el' => 'Serbian (Latin script)',
+ 'tg-cyrl' => 'Tajik (Cyrillic script)',
+ 'tg-latn' => 'Tajik (Latin script)',
+ 'tt-cyrl' => 'Tatar (Cyrillic script)',
+ 'tt-latn' => 'Tatar (Latin script)',
+ 'ug-arab' => 'Uyghur (Arabic script)',
+ 'ug-latn' => 'Uyghur (Latin script)',
+ 'ydd' => 'Eastern Yiddish',
+ 'zh-classical' => 'Classical Chinese',
+ 'zh-cn' => 'Chinese (China)',
+ 'zh-hk' => 'Chinese (Hong Kong)',
+ 'zh-min-nan' => 'Chinese (Min Nan)',
+ 'zh-sg' => 'Chinese (Singapore)',
+ 'zh-tw' => 'Chinese (Taiwan)',
+ 'zh-yue' => 'Cantonese', # language redirect
+);
diff --git a/MLEB/cldr/LocalNames/LocalNamesFa.php b/MLEB/cldr/LocalNames/LocalNamesFa.php
new file mode 100644
index 00000000..9f7387f9
--- /dev/null
+++ b/MLEB/cldr/LocalNames/LocalNamesFa.php
@@ -0,0 +1,387 @@
+<?php
+$languageNames = array(
+ /* Not in CLDR 21.0.1. Name "Arabic, Tunisian Spoken" used by Ethnologue:
+ * http://www.ethnologue.com/show_language.asp?code=aeb
+ * Added 2012-11-13.
+ */
+ 'aeb' => 'عربی تونسی',
+
+ /* Not in CLDR 21.0.1. Name Gheg Albanian used by Ethnologue:
+ * http://www.ethnologue.com/show_language.asp?code=aln
+ * Added 2008-01-04.
+ */
+ // 'aln' => 'Gheg Albanian',
+
+ /* Not in CLDR 21.0.1. Arabic language
+ * http://www.ethnologue.com/show_language.asp?code=arq
+ * Added 2009-08-27.
+ */
+ 'arq' => 'عربی الجزائری',
+
+ /* Not in CLDR 21.0.1. Arabic language
+ * http://www.ethnologue.com/show_language.asp?code=ary
+ * Added 2008-04-12.
+ */
+ 'ary' => 'عربی مراکشی',
+
+ /* Not in CLDR 21.0.1. Arabic language
+ * http://www.ethnologue.com/show_language.asp?code=arz
+ * Added 2009-08-23.
+ */
+ 'arz' => 'عربی مصری',
+
+ /* Not in CLDR 21.0.1. Southern Turkic
+ * http://www.ethnologue.com/show_language.asp?code=azb
+ * Added 2012-11-28.
+ */
+ 'azb' => 'ترکی آذری جنوبی',
+
+ /* Not in CLDR 21.0.1. Name Bavarian used by Ethnologue:
+ * http://www.ethnologue.com/show_language.asp?code=bar
+ * Added 2007-11-10.
+ */
+ 'bar' => 'بایرنی',
+
+ /* Not in CLDR 21.0.1. Balochi language
+ * http://www.ethnologue.org/show_language.asp?code=bcc
+ * Added 2008-07-02.
+ */
+ 'bcc' => 'بلوچی جنوبی',
+
+ /* Not in CLDR 21.0.1. Betawi language.
+ * http://www.ethnologue.com/show_language.asp?code=bew
+ * Added 2011-11-10.
+ */
+ // 'bew' => 'Betawi',
+
+ /* Not in CLDR 21.0.1. Malay language.
+ * http://www.ethnologue.org/show_language.asp?code=bjn
+ * Added 2011-09-10.
+ */
+ 'bjn' => 'بانجاری',
+
+ /* Not in CLDR 21.0.1. Name Bishnupriya used by Ethnologue:
+ * http://www.ethnologue.org/show_language.asp?code=bpy
+ * Added 2007-11-10.
+ */
+ // 'bpy' => 'Bishnupriya Manipuri',
+
+ /* Not in CLDR 21.0.1. Luri language
+ * http://www.ethnologue.org/show_language.asp?code=bqi
+ * Added 2007-11-10.
+ */
+ 'bqi' => 'بختیاری',
+
+ /* Not in CLDR 21.0.1. Bihari language
+ * http://www.ethnologue.org/show_language.asp?code=brh
+ * Added 2011-04-16.
+ */
+ 'brh' => 'براهوئی',
+
+ /* Not in CLDR 21.0.1. Bisayan language
+ * http://www.ethnologue.org/show_language.asp?code=cps
+ * Added 2010-01-11.
+ */
+ // 'cps' => 'Capiznon',
+
+ /* Not in CLDR 21.0.1. Swedish language
+ * http://www.ethnologue.org/show_language.asp?code=dlc
+ * Added 2008-02-16.
+ */
+ // 'dlc' => 'Dalecarlian',
+
+ /* Not in CLDR 21.0.1. Central Dusun language
+ * http://www.ethnologue.org/show_language.asp?code=dtp
+ * Added 2011-04-16.
+ */
+ // 'dtp' => 'Central Dusun',
+
+ /* Not in CLDR 21.0.1. Romance language.
+ * http://www.ethnologue.org/show_language.asp?code=eml
+ * Added 2008-01-17.
+ */
+ 'eml' => 'امیلیانو-روما',
+
+ /* Not in CLDR 21.0.1. Romance language.
+ * http://www.ethnologue.org/show_language.asp?code=ext
+ * Added 2007-12-02.
+ */
+ 'ext' => 'اکسترامادورایی',
+
+ /* Not in CLDR 21.0.1. Variety of French.
+ * http://www.ethnologue.org/show_language.asp?code=frc
+ * Added 2007-12-02.
+ */
+ 'frc' => 'فرانسوی کاژون',
+
+ /* Not in CLDR 21.0.1. Romance language.
+ * http://www.ethnologue.org/show_language.asp?code=frp
+ * Added 2007-12-02.
+ */
+ 'frp' => 'آرپیتان',
+
+ /* Not in CLDR 21.0.1. Chinese language.
+ * http://www.ethnologue.org/show_language.asp?code=hak
+ * Added 2007-12-02.
+ */
+ // 'hak' => 'Hakka',
+
+ /* Not in CLDR 21.0.1. Turkic language.
+ * Added 2008-01-14.
+ */
+ 'gag' => 'گاگائوز',
+
+ /* Not in CLDR 21.0.1. Chinese language.
+ * http://www.ethnologue.org/show_language.asp?code=gan
+ * Added 2007-12-02.
+ */
+ 'gan' => 'گن',
+
+ /* Not in CLDR 21.0.1. Konkani language
+ * http://www.ethnologue.org/show_language.asp?code=gom
+ * Added 2008-09-02.
+ */
+ 'gom' => 'کونکانی گن',
+ 'gom-deva' => 'کونکانی گن (خط دیواناگری)',
+ 'gom-latn' => 'کونکانی گن (خط لاتین)',
+ 'gom-knda' => 'کونکانی گن (خط کانادا)',
+ 'gom-mlym' => 'کونکانی گن (خط مالایالمی)',
+ 'gom-arab' => 'کونکانی گن (خط عربی)',
+
+ /* Not in CLDR 21.0.1. Western Atlantic Creole language
+ * http://www.ethnologue.org/show_language.asp?code=dtp
+ * Added 2011-04-16.
+ */
+ // 'jam' => 'Jamaican Creole English',
+
+ /* Not in CLDR 21.0.1. Danish language.
+ * http://www.ethnologue.org/show_language.asp?code=jut
+ * Added 2008-02-06.
+ */
+ // 'jut' => 'Jutish',
+
+ /* Not in CLDR 21.0.1. Chitral language
+ * http://www.ethnologue.org/show_language.asp?code=khw
+ * Added 2011-04-16.
+ */
+ 'khw' => 'کهوار',
+
+ /* Not in CLDR 21.0.1. Zaza-Gorani language.
+ * http://www.ethnologue.org/show_language.asp?code=kiu
+ * Added 2009-10-08.
+ */
+ 'kiu' => 'کرمانجکی',
+
+ /* Not in CLDR 21.0.1. Komi language.
+ * http://www.ethnologue.org/show_language.asp?code=koi
+ * Added 2010-01-02.
+ */
+ // 'koi' => 'Komi-Permyak',
+
+ /* Not in CLDR 21.0.1. Artificial language.
+ * http://www.ethnologue.org/show_language.asp?code=lfn
+ * Added 2008-01-18.
+ */
+ // 'lfn' => 'Lingua Franca Nova',
+
+ /* Not in CLDR 21.0.1. Latvian language
+ * http://www.sil.org/iso639-3/documentation.asp?id=ltg
+ * Added 2010-04-03.
+ */
+ 'ltg' => 'لاتگالی',
+
+ /* Not in CLDR 21.0.1. Literary Chinese language
+ * http://www.sil.org/iso639-3/documentation.asp?id=lzh
+ * Added 2009-01-22.
+ */
+ 'lzh' => 'چینی ادبی',
+
+ /* Not in CLDR 21.0.1. Mari language
+ * http://www.ethnologue.org/show_language.asp?code=mhr
+ * Added 2008-05-22.
+ */
+ 'mhr' => 'ماری',
+
+ /* Not in CLDR 21.0.1. Mari language
+ * http://www.ethnologue.org/show_language.asp?code=mrj
+ * Added 2009-11-22.
+ */
+ 'mrj' => 'هیل ماری',
+
+ /* Not in CLDR 21.0.1. Malay language
+ * http://www.ethnologue.org/show_language.asp?code=mui
+ * Added 2010-02-11.
+ */
+ // 'mui' => 'Musi',
+
+ /* Not in CLDR 21.0.1. Caspian language
+ * http://www.ethnologue.org/show_language.asp?code=mzn
+ * Added 2008-03-01.
+ */
+ 'mzn' => 'مازندرانی',
+
+ /* Not in CLDR 21.0.1. Chinese language
+ * http://www.ethnologue.org/show_language.asp?code=nan
+ * Added 2008-03-01.
+ */
+ 'nan' => 'مین نان',
+
+ /* Not in CLDR 21.0.1. Tibeto-Burman family language.
+ * http://www.ethnologue.org/show_language.asp?code=njo
+ * Added 2008-01-14.
+ */
+ // 'njo' => 'Ao Naga',
+
+ /* Not in CLDR 21.0.1. Gallo-Italian language.
+ * http://www.ethnologue.org/show_language.asp?code=pms
+ * Added 2008-07-09.
+ */
+ 'pms' => 'پیدمونتی',
+
+ /* Not in CLDR 21.0.1. Lahnda language.
+ * http://www.ethnologue.org/show_language.asp?code=pnb
+ * Added 2008-10-29.
+ */
+ 'pnb' => 'پنجابی',
+
+ /* Not in CLDR 21.0.1. Attic language.
+ * http://www.ethnologue.org/show_language.asp?code=pnt
+ * Added 2008-01-18.
+ */
+ // 'pnt' => 'Pontic',
+
+ /* Not in CLDR 21.0.1. Western Baltic language.
+ * http://www.ethnologue.org/show_language.asp?code=prg
+ * Added 2009-11-22.
+ */
+ 'prg' => 'پروس',
+
+ /* Not in CLDR 21.0.1. Gallo-Italic language.
+ * http://www.sil.org/iso639-3/documentation.asp?id=rgn
+ * Added 2009-11-15.
+ */
+ 'rgn' => 'رومانیولو',
+
+ /* Not in CLDR 21.0.1. East Slavic language.
+ * http://www.ethnologue.com/show_language.asp?code=rue
+ * Added 2010-04-03.
+ */
+ // 'rue' => 'Rusyn',
+
+ /* Not in CLDR 21.0.1. Eastern Romance language.
+ * http://www.ethnologue.org/show_language.asp?code=ruq
+ * Added 2008-02-04.
+ */
+ 'ruq' => 'مگلنو رومانی',
+ 'ruq-cyrl' => 'مگلنو رومانی (خط سرلیک)',
+ 'ruq-grek' => 'مگلنو رومانی (خط یونانی)',
+ 'ruq-latn' => 'مگلنو رومانی (خط لاتین)',
+
+ /* Not in CLDR 21.0.1.
+ * http://www.sil.org/iso639-3/documentation.asp?id=sgs
+ * Added 2010-10-14.
+ */
+ 'sgs' => 'ساموگیتی',
+
+ /* Not in CLDR 21.0.1.
+ * http://www.sil.org/iso639-3/documentation.asp?id=sli
+ * Added 2008-09-02.
+ */
+ 'sli' => 'سیلزیایی پایین',
+
+ /* Not in CLDR 21.0.1.
+ * http://www.sil.org/iso639-3/documentation.asp?id=szl
+ * Added 2008-03-29.
+ */
+ 'szl' => 'سیلزیایی',
+
+ /* Not in CLDR 21.0.1. Tulu language
+ * http://www.sil.org/iso639-3/documentation.asp?id=tcy
+ * Added 2008-08-23.
+ */
+ 'tcy' => 'تولو',
+
+ /* Not in CLDR 21.0.1. Turoyo language
+ * http://www.sil.org/iso639-3/documentation.asp?id=tru
+ * Added 2012-07-26.
+ */
+ // 'tru' => 'Turoyo',
+
+ /* Not in CLDR 21.0.1. Finnic Uralic language.
+ * http://www.ethnologue.org/show_language.asp?code=vep
+ * Added 2009-01-24.
+ */
+ 'vep' => 'وپس',
+
+ /* Not in CLDR 21.0.1. West Middle German language.
+ * http://www.sil.org/iso639-3/documentation.asp?id=vmf
+ * Added 2010-01-31.
+ */
+ // 'vmf' => 'Upper Franconian',
+
+ /* Not in CLDR 21.0.1. Estonian language.
+ * http://www.sil.org/iso639-3/documentation.asp?id=vro
+ * Added 2009-01-24.
+ */
+ // 'vro' => 'Võro',
+
+ /* Not in CLDR 21.0.1. Chinese language.
+ * http://www.ethnologue.org/show_language.asp?code=wuu
+ * Added 2007-12-02.
+ */
+ 'wuu' => 'وو',
+
+ /* Not in CLDR 21.0.1. Low Franconian language.
+ * http://www.ethnologue.org/show_language.asp?code=zea
+ * Added 2008-01-17.
+ */
+ 'zea' => 'زیلاندی',
+
+ /* Not in CLDR. Used for MediaWiki localisation
+ */
+ 'bat-smg' => 'ساموگیتی',
+ 'be-tarask' => 'بلاروسی (دستورخط کلاسیک)',
+ 'cdo' => 'چینی مین شرقی',
+ 'crh-cyrl' => 'ترکی کریمه (خط سرلیک)',
+ 'crh-latn' => 'ترکی کریمه (خط لاتین)',
+ // 'de-formal' => 'German (formal address)',
+ 'gan-hans' => 'خط گن ساده‌شده',
+ 'gan-hant' => 'خط گن سنتی',
+ 'glk' => 'گیلکی',
+ 'got' => 'گوتیک',
+ 'hif-latn' => 'هندی فیجی (خط لاتینی)',
+ 'ike-cans' => 'کانادایی شرقی (هجاهای بومی)',
+ 'ike-latn' => 'کانادایی شرقی (خط لاتینی)',
+ 'kk-cn' => 'قزافی(چینی)',
+ 'kk-kz' => 'قزاقی (قزاقستان)',
+ 'kk-tr' => 'قزاقی (ترکیە)',
+ 'kk-arab' => 'قزاقی (خط عربی)',
+ 'kk-cyrl' => 'قزاقی (خط سریلیک)',
+ 'kk-latn' => 'قزاقی (خط لاتینی)',
+ 'ks-arab' => 'کشمیری (خط عربی)',
+ 'ks-deva' => 'کشمیری (خط دیواناگری)',
+ 'ku-latn' => 'کردی (خط لاتین)',
+ // 'nds-nl' => 'Low Saxon (Netherlands)',
+ 'no' => 'نروژی (بوکمال)',
+ 'roa-rup' => 'آرومانی',
+ 'sr-ec' => 'صربی (خط سرلیک)',
+ 'sr-el' => 'صربی (خط لاتین)',
+ 'tg-cyrl' => 'تاجیکی (خط سرلیک)',
+ 'tg-latn' => 'تاجیکی (خط لاتین)',
+ 'tt-cyrl' => 'تاتاری (خط سرلیک)',
+ 'tt-latn' => 'تاتاری (خط لاتین)',
+ 'ug-arab' => 'اویغوری (خط عربی)',
+ 'ug-latn' => 'اویغوری (خط لاتین)',
+ // 'xmf' => 'Mingrelian',
+ 'ydd' => 'ییدیشی شرقی',
+ 'zh-classical' => 'چینی کلاسیک',
+ 'zh-cn' => 'چینی (چین)',
+ 'zh-hk' => 'چینی (هنگ کنگ)',
+ 'zh-min-nan' => 'چینی (مین نان)',
+ 'zh-sg' => 'چینی (سنگاپور)',
+ 'zh-tw' => 'چینی (تایوان)',
+ 'zh-yue' => 'کانتونی', # language redirect
+
+ /* additional list from Persian Wikipedia */
+ 'simple' => 'انگلیسی ساده',
+);
diff --git a/MLEB/cldr/LocalNames/LocalNamesJa.php b/MLEB/cldr/LocalNames/LocalNamesJa.php
new file mode 100644
index 00000000..2d3327e8
--- /dev/null
+++ b/MLEB/cldr/LocalNames/LocalNamesJa.php
@@ -0,0 +1,409 @@
+<?php
+$languageNames = array(
+ /* Not in CLDR 21.0.1. Name "Arabic, Tunisian Spoken" used by Ethnologue:
+ * http://www.ethnologue.com/show_language.asp?code=aeb
+ * Added 2012-11-13.
+ */
+ 'aeb' => 'アラビア語チュニジア方言',
+
+ /* Not in CLDR 21.0.1. Name Gheg Albanian used by Ethnologue:
+ * http://www.ethnologue.com/show_language.asp?code=aln
+ * Added 2008-01-04.
+ */
+ // 'aln' => 'Gheg Albanian',
+
+ /* Not in CLDR 21.0.1. Arabic language
+ * http://www.ethnologue.com/show_language.asp?code=arq
+ * Added 2009-08-27.
+ */
+ 'arq' => 'アラビア語アルジェリア方言',
+
+ /* Not in CLDR 21.0.1. Arabic language
+ * http://www.ethnologue.com/show_language.asp?code=ary
+ * Added 2008-04-12.
+ */
+ 'ary' => 'アラビア語モロッコ方言',
+
+ /* Not in CLDR 21.0.1. Arabic language
+ * http://www.ethnologue.com/show_language.asp?code=arz
+ * Added 2009-08-23.
+ */
+ 'arz' => 'アラビア語エジプト方言',
+
+ /* Not in CLDR 21.0.1. Southern Turkic
+ * http://www.ethnologue.com/show_language.asp?code=azb
+ * Added 2012-11-28.
+ */
+ 'azb' => '南部アゼルバイジャン語',
+
+ /* Not in CLDR 21.0.1. Name Bavarian used by Ethnologue:
+ * http://www.ethnologue.com/show_language.asp?code=bar
+ * Added 2007-11-10.
+ */
+ 'bar' => 'バイエルン・オーストリア語',
+
+ /* Not in CLDR 21.0.1. Balochi language
+ * http://www.ethnologue.org/show_language.asp?code=bcc
+ * Added 2008-07-02.
+ */
+ 'bcc' => '南部バローチー語',
+
+ /* Not in CLDR 21.0.1. Betawi language.
+ * http://www.ethnologue.com/show_language.asp?code=bew
+ * Added 2011-11-10.
+ */
+ 'bew' => 'ベタウィ語',
+
+ /* Not in CLDR 21.0.1. Malay language.
+ * http://www.ethnologue.org/show_language.asp?code=bjn
+ * Added 2011-09-10.
+ */
+ // 'bjn' => 'Banjar',
+
+ /* Not in CLDR 21.0.1. Name Bishnupriya used by Ethnologue:
+ * http://www.ethnologue.org/show_language.asp?code=bpy
+ * Added 2007-11-10.
+ */
+ 'bpy' => 'ビシュヌプリヤ・マニプリ語',
+
+ /* Not in CLDR 21.0.1. Luri language
+ * http://www.ethnologue.org/show_language.asp?code=bqi
+ * Added 2007-11-10.
+ */
+ // 'bqi' => 'Bakhtiari',
+
+ /* Not in CLDR 21.0.1. Bihari language
+ * http://www.ethnologue.org/show_language.asp?code=brh
+ * Added 2011-04-16.
+ */
+ 'brh' => 'ブラーフーイー語',
+
+ /* Not in CLDR 21.0.1. Bisayan language
+ * http://www.ethnologue.org/show_language.asp?code=cps
+ * Added 2010-01-11.
+ */
+ // 'cps' => 'Capiznon',
+
+ /* Not in CLDR 21.0.1. Swedish language
+ * http://www.ethnologue.org/show_language.asp?code=dlc
+ * Added 2008-02-16.
+ */
+ // 'dlc' => 'Dalecarlian',
+
+ /* Not in CLDR 21.0.1. Central Dusun language
+ * http://www.ethnologue.org/show_language.asp?code=dtp
+ * Added 2011-04-16.
+ */
+ // 'dtp' => 'Central Dusun',
+
+ /* Not in CLDR 21.0.1. Romance language.
+ * http://www.ethnologue.org/show_language.asp?code=eml
+ * Added 2008-01-17.
+ */
+ 'eml' => 'エミリア・ロマーニャ語',
+
+ /* Not in CLDR 21.0.1. Romance language.
+ * http://www.ethnologue.org/show_language.asp?code=ext
+ * Added 2007-12-02.
+ */
+ 'ext' => 'エストレマドゥーラ語',
+
+ /* Not in CLDR 21.0.1. Variety of French.
+ * http://www.ethnologue.org/show_language.asp?code=frc
+ * Added 2007-12-02.
+ */
+ // 'frc' => 'Cajun French',
+
+ /* Not in CLDR 21.0.1. Romance language.
+ * http://www.ethnologue.org/show_language.asp?code=frp
+ * Added 2007-12-02.
+ */
+ 'frp' => 'アルピタン語',
+
+ /* Not in CLDR 21.0.1. Chinese language.
+ * http://www.ethnologue.org/show_language.asp?code=hak
+ * Added 2007-12-02.
+ */
+ 'hak' => '客家語',
+
+ /* Not in CLDR 21.0.1. Turkic language.
+ * Added 2008-01-14.
+ */
+ // 'gag' => 'Gagauz',
+
+ /* Not in CLDR 21.0.1. Chinese language.
+ * http://www.ethnologue.org/show_language.asp?code=gan
+ * Added 2007-12-02.
+ */
+ //'gan' => 'Gan',
+
+ /* Not in CLDR 21.0.1. Konkani language
+ * http://www.ethnologue.org/show_language.asp?code=gom
+ * Added 2008-09-02.
+ */
+ // 'gom' => 'Goan Konkani',
+ // 'gom-deva' => 'Goan Konkani (Devanagari script)',
+ // 'gom-latn' => 'Goan Konkani (Latin script)',
+ // 'gom-knda' => 'Goan Konkani (Kannada script)',
+ // 'gom-mlym' => 'Goan Konkani (Malayalam script)',
+ // 'gom-arab' => 'Goan Konkani (Arabic script)',
+
+ /* Not in CLDR 21.0.1. Western Atlantic Creole language
+ * http://www.ethnologue.org/show_language.asp?code=dtp
+ * Added 2011-04-16.
+ */
+ 'jam' => 'ジャマイカ・クレオール語',
+
+ /* Not in CLDR 21.0.1. Danish language.
+ * http://www.ethnologue.org/show_language.asp?code=jut
+ * Added 2008-02-06.
+ */
+ // 'jut' => 'Jutish',
+
+ /* Not in CLDR 21.0.1. Chitral language
+ * http://www.ethnologue.org/show_language.asp?code=khw
+ * Added 2011-04-16.
+ */
+ 'khw' => 'コワール語',
+
+ /* Not in CLDR 21.0.1. Zaza-Gorani language.
+ * http://www.ethnologue.org/show_language.asp?code=kiu
+ * Added 2009-10-08.
+ */
+ // 'kiu' => 'Kirmanjki',
+
+ /* Not in CLDR 21.0.1. Komi language.
+ * http://www.ethnologue.org/show_language.asp?code=koi
+ * Added 2010-01-02.
+ */
+ // 'koi' => 'Komi-Permyak',
+
+ /* Not in CLDR 21.0.1. Artificial language.
+ * http://www.ethnologue.org/show_language.asp?code=lfn
+ * Added 2008-01-18.
+ */
+ // 'lfn' => 'Lingua Franca Nova',
+
+ /* Not in CLDR 21.0.1. Latvian language
+ * http://www.sil.org/iso639-3/documentation.asp?id=ltg
+ * Added 2010-04-03.
+ */
+ // 'ltg' => 'Latgalian',
+
+ /* Not in CLDR 21.0.1. Literary Chinese language
+ * http://www.sil.org/iso639-3/documentation.asp?id=lzh
+ * Added 2009-01-22.
+ */
+ // 'lzh' => 'Literary Chinese',
+
+ /* Not in CLDR 21.0.1. Mari language
+ * http://www.ethnologue.org/show_language.asp?code=mhr
+ * Added 2008-05-22.
+ */
+ 'mhr' => '東部マリ語',
+
+ /* Not in CLDR 21.0.1. Mari language
+ * http://www.ethnologue.org/show_language.asp?code=mrj
+ * Added 2009-11-22.
+ */
+ 'mrj' => '山地マリ語',
+
+ /* Not in CLDR 21.0.1. Malay language
+ * http://www.ethnologue.org/show_language.asp?code=mui
+ * Added 2010-02-11.
+ */
+ // 'mui' => 'Musi',
+
+ /* Not in CLDR 21.0.1. Caspian language
+ * http://www.ethnologue.org/show_language.asp?code=mzn
+ * Added 2008-03-01.
+ */
+ 'mzn' => 'マーザンダラーン語',
+
+ /* Not in CLDR 21.0.1. Chinese language
+ * http://www.ethnologue.org/show_language.asp?code=nan
+ * Added 2008-03-01.
+ */
+ 'nan' => '閩南語',
+
+ /* Not in CLDR 21.0.1. Tibeto-Burman family language.
+ * http://www.ethnologue.org/show_language.asp?code=njo
+ * Added 2008-01-14.
+ */
+ // 'njo' => 'Ao Naga',
+
+ /* Not in CLDR 21.0.1. Gallo-Italian language.
+ * http://www.ethnologue.org/show_language.asp?code=pms
+ * Added 2008-07-09.
+ */
+ 'pms' => 'ピエモンテ語',
+
+ /* Not in CLDR 21.0.1. Lahnda language.
+ * http://www.ethnologue.org/show_language.asp?code=pnb
+ * Added 2008-10-29.
+ */
+ // 'pnb' => 'Western Punjabi',
+
+ /* Not in CLDR 21.0.1. Attic language.
+ * http://www.ethnologue.org/show_language.asp?code=pnt
+ * Added 2008-01-18.
+ */
+ // 'pnt' => 'Pontic',
+
+ /* Not in CLDR 21.0.1. Western Baltic language.
+ * http://www.ethnologue.org/show_language.asp?code=prg
+ * Added 2009-11-22.
+ */
+ // 'prg' => 'Prussian',
+
+ /* Not in CLDR 21.0.1. Gallo-Italic language.
+ * http://www.sil.org/iso639-3/documentation.asp?id=rgn
+ * Added 2009-11-15.
+ */
+ // 'rgn' => 'Romagnol',
+
+ /* Not in CLDR 21.0.1. East Slavic language.
+ * http://www.ethnologue.com/show_language.asp?code=rue
+ * Added 2010-04-03.
+ */
+ // 'rue' => 'Rusyn',
+
+ /* Not in CLDR 21.0.1. Eastern Romance language.
+ * http://www.ethnologue.org/show_language.asp?code=ruq
+ * Added 2008-02-04.
+ */
+ // 'ruq' => 'Megleno-Romanian',
+ // 'ruq-cyrl' => 'Megleno-Romanian (Cyrillic script)',
+ // 'ruq-grek' => 'Megleno-Romanian (Greek script)',
+ // 'ruq-latn' => 'Megleno-Romanian (Latin script)',
+
+ /* Not in CLDR 21.0.1.
+ * http://www.sil.org/iso639-3/documentation.asp?id=sgs
+ * Added 2010-10-14.
+ */
+ // 'sgs' => 'Samogitian',
+
+ /* Not in CLDR 21.0.1.
+ * http://www.sil.org/iso639-3/documentation.asp?id=sli
+ * Added 2008-09-02.
+ */
+ // 'sli' => 'Lower Silesian',
+
+ /* Not in CLDR 21.0.1.
+ * http://www.sil.org/iso639-3/documentation.asp?id=szl
+ * Added 2008-03-29.
+ */
+ 'szl' => 'シレジア語',
+
+ /* Not in CLDR 21.0.1. Tulu language
+ * http://www.sil.org/iso639-3/documentation.asp?id=tcy
+ * Added 2008-08-23.
+ */
+ // 'tcy' => 'Tulu',
+
+ /* Not in CLDR 21.0.1. Turoyo language
+ * http://www.sil.org/iso639-3/documentation.asp?id=tru
+ * Added 2012-07-26.
+ */
+ // 'tru' => 'Turoyo',
+
+ /* Not in CLDR 21.0.1. Finnic Uralic language.
+ * http://www.ethnologue.org/show_language.asp?code=vep
+ * Added 2009-01-24.
+ */
+ // 'vep' => 'Veps',
+
+ /* Not in CLDR 21.0.1. West Middle German language.
+ * http://www.sil.org/iso639-3/documentation.asp?id=vmf
+ * Added 2010-01-31.
+ */
+ // 'vmf' => 'Upper Franconian',
+
+ /* Not in CLDR 21.0.1. Estonian language.
+ * http://www.sil.org/iso639-3/documentation.asp?id=vro
+ * Added 2009-01-24.
+ */
+ 'vro' => 'ヴォロ語',
+
+ /* Not in CLDR 21.0.1. Chinese language.
+ * http://www.ethnologue.org/show_language.asp?code=wuu
+ * Added 2007-12-02.
+ */
+ 'wuu' => '呉語',
+
+ /* Not in CLDR 21.0.1. Low Franconian language.
+ * http://www.ethnologue.org/show_language.asp?code=zea
+ * Added 2008-01-17.
+ */
+ 'zea' => 'ゼーランド語',
+
+ /* Not in CLDR. Used for MediaWiki localisation
+ */
+ 'bat-smg' => 'サモギティア語',
+ // 'be-tarask' => 'Belarusian (Taraškievica orthography)',
+ 'cdo' => '閩東語',
+ // 'crh-cyrl' => 'Crimean Turkish (Cyrillic script)',
+ // 'crh-latn' => 'Crimean Turkish (Latin script)',
+ // 'de-formal' => 'German (formal address)',
+ // 'gan-hans' => 'Simplified Gan script',
+ // 'gan-hant' => 'Traditional Gan script',
+ 'glk' => 'ギラキ語',
+ 'got' => 'ゴート語',
+ // 'hif-latn' => 'Fiji Hindi (Latin script)',
+ // 'ike-cans' => 'Eastern Canadian (Aboriginal syllabics)',
+ // 'ike-latn' => 'Eastern Canadian (Latin script)',
+ // 'kk-cn' => 'Kazakh (China)',
+ // 'kk-kz' => 'Kazakh (Kazakhstan)',
+ // 'kk-tr' => 'Kazakh (Turkey)',
+ // 'kk-arab' => 'Kazakh (Arabic script)',
+ // 'kk-cyrl' => 'Kazakh (Cyrillic script)',
+ // 'kk-latn' => 'Kazakh (Latin script)',
+ // 'ks-arab' => 'Kashmiri (Arabic script)',
+ // 'ks-deva' => 'Kashmiri (Devanagari script)',
+ // 'ku-latn' => 'Kurdish (Latin script)',
+ 'nds-nl' => 'オランダ低ザクセン語',
+ 'no' => 'ノルウェー語(ブークモール)',
+ 'roa-rup' => 'アルーマニア語',
+ 'roa-tara' => 'タラント語',
+ // 'sr-ec' => 'Serbian (Cyrillic script)',
+ // 'sr-el' => 'Serbian (Latin script)',
+ // 'tg-cyrl' => 'Tajik (Cyrillic script)',
+ // 'tg-latn' => 'Tajik (Latin script)',
+ // 'tt-cyrl' => 'Tatar (Cyrillic script)',
+ // 'tt-latn' => 'Tatar (Latin script)',
+ // 'ug-arab' => 'Uyghur (Arabic script)',
+ // 'ug-latn' => 'Uyghur (Latin script)',
+ 'xmf' => 'メグレル語',
+ // 'ydd' => 'Eastern Yiddish',
+ 'zh-classical' => '漢文',
+ 'zh-cn' => '中国語(中国)',
+ 'zh-hk' => '中国語(香港)',
+ 'zh-min-nan' => '閩南語',
+ 'zh-sg' => '中国語(シンガポール)',
+ 'zh-tw' => '中国語(台湾)',
+ 'zh-yue' => '広東語', # language redirect
+
+ /* additional list from Japanese Wikipedia */
+ 'als' => 'アレマン語',
+ 'be-x-old' => 'ベラルーシ語(タラシケヴィツァ)',
+ 'cbk-zam' => 'チャバカノ語',
+ 'bcl' => 'ビコール語',
+ 'bxr' => 'ブリヤート語',
+ 'diq' => 'ザザキ語',
+ 'fiu-vro' => 'ヴォロ語',
+ 'hif' => 'フィジー・ヒンディー語',
+ 'lbe' => 'ラク語',
+ 'lij' => 'リグリア語',
+ 'lmo' => 'ロンバルド語',
+ 'map-bms' => 'バニュマス語',
+ 'nov' => 'ノヴィアル',
+ 'nrm' => 'ノルマン語',
+ 'pdc' => 'ペンシルバニアドイツ語',
+ 'pih' => 'ノーフォーク語・ピトケアン語',
+ 'rmy' => 'ロマ語',
+ 'simple' => 'シンプル英語',
+ 'stq' => 'ザーターフリジア語',
+ 'tokipona' => 'トキポナ',
+ 'vec' => 'ヴェネツィア語',
+ 'vls' => '西フラマン語',
+);
diff --git a/MLEB/cldr/LocalNames/LocalNamesKk.php b/MLEB/cldr/LocalNames/LocalNamesKk.php
new file mode 100644
index 00000000..f390907a
--- /dev/null
+++ b/MLEB/cldr/LocalNames/LocalNamesKk.php
@@ -0,0 +1,4 @@
+<?php
+
+/* Kazakh default, fallback to kk-cyrl */
+require_once __DIR__ . '/../CldrNames/CldrNamesKk_cyrl.php';
diff --git a/MLEB/cldr/LocalNames/LocalNamesNds.php b/MLEB/cldr/LocalNames/LocalNamesNds.php
new file mode 100644
index 00000000..9c101177
--- /dev/null
+++ b/MLEB/cldr/LocalNames/LocalNamesNds.php
@@ -0,0 +1,508 @@
+<?php
+$languageNames = array(
+ 'aa' => 'Afar',
+ 'ab' => 'Abchaasch',
+ 'ace' => 'Aceh',
+ 'ach' => 'Acholi',
+ 'ada' => 'Adangme',
+ 'ady' => 'Adygeisch',
+ 'ae' => 'Avestsch',
+ 'af' => 'Afrikaansch',
+ 'afa' => 'Afro-Asiaatsche Spraken',
+ 'afh' => 'Afrihili',
+ 'ain' => 'Ainu',
+ 'ak' => 'Akan',
+ 'akk' => 'Akkadsch',
+ 'ale' => 'Aleutsch',
+ 'alg' => 'Algonkin-Spraken',
+ 'alt' => 'Süüd-Altaisch',
+ 'am' => 'Amhaarsch',
+ 'an' => 'Aragoneesch',
+ 'ang' => 'Ooldengelsch',
+ 'anp' => 'Angika',
+ 'apa' => 'Apache',
+ 'ar' => 'Araabsch',
+ 'arc' => 'Aramääsch',
+ 'arn' => 'Araukaansch',
+ 'arp' => 'Arapaho',
+ 'art' => 'Kunstspraken',
+ 'arw' => 'Arawak-Spraken',
+ 'as' => 'Assameesch',
+ 'ast' => 'Asturiaansch',
+ 'ath' => 'Athabasksche Spraken',
+ 'aus' => 'Austraalsche Spraken',
+ 'av' => 'Awaarsch',
+ 'awa' => 'Awadhi',
+ 'ay' => 'Aymara',
+ 'az' => 'Aserbaidschaansch',
+ 'ba' => 'Baschkiersch',
+ 'bad' => 'Banda',
+ 'bai' => 'Bamileke',
+ 'bal' => 'Belutschisch',
+ 'ban' => 'Balineesch',
+ 'bas' => 'Basaa',
+ 'bat' => 'Baltsche Spraken',
+ 'be' => 'Wittruss’sch',
+ 'bej' => 'Bedscha',
+ 'bem' => 'Bemba',
+ 'ber' => 'Berberspraken',
+ 'bg' => 'Bulgaarsch',
+ 'bh' => 'Bihaarsch',
+ 'bho' => 'Bhodschpuri',
+ 'bi' => 'Bislama',
+ 'bik' => 'Bikol',
+ 'bin' => 'Bini',
+ 'bla' => 'Siksika',
+ 'bm' => 'Bambara',
+ 'bn' => 'Bengaalsch',
+ 'bnt' => 'Bantuspraken',
+ 'bo' => 'Tibeetsch',
+ 'br' => 'Bretoonsch',
+ 'bra' => 'Braj-Bhakha',
+ 'bs' => 'Bosnisch',
+ 'btk' => 'Batak',
+ 'bua' => 'Burjaatsch',
+ 'bug' => 'Bugineesch',
+ 'byn' => 'Blin',
+ 'ca' => 'Katalaansch',
+ 'cad' => 'Caddo',
+ 'cai' => 'Indianerspraken in Zentralamerika',
+ 'car' => 'Kariebsche Spraken',
+ 'cau' => 'Kaukaasche Spraken',
+ 'cch' => 'Atsam',
+ 'ce' => 'Tschetscheensch',
+ 'ceb' => 'Cebuano',
+ 'cel' => 'Keltsche Spraken',
+ 'ch' => 'Chamorro',
+ 'chb' => 'Chibcha-Spraken',
+ 'chg' => 'Tschagataisch',
+ 'chk' => 'Trukeesch',
+ 'chm' => 'Mari',
+ 'chn' => 'Chinook',
+ 'cho' => 'Choctaw',
+ 'chp' => 'Chipewyan',
+ 'chr' => 'Cherokee',
+ 'chy' => 'Cheyenne',
+ 'cmc' => 'Cham-Spraken',
+ 'co' => 'Koorsch',
+ 'cop' => 'Koptsch',
+ 'cpe' => 'Kreoolsch-Engelsche Spraken',
+ 'cpf' => 'Kreoolsch-Franzöösche Spraken',
+ 'cpp' => 'Kreoolsch-Portugeesche Spraken',
+ 'cr' => 'Cree',
+ 'crh' => 'Krimtataarsch',
+ 'crp' => 'Kreoolsche Spraken',
+ 'cs' => 'Tschech’sch',
+ 'csb' => 'Kaschuubsch',
+ 'cu' => 'Karkenslaavsch',
+ 'cus' => 'Kuschietsche Spraken',
+ 'cv' => 'Tschuwasch’sch',
+ 'cy' => 'Waliesch',
+ 'da' => 'Däänsch',
+ 'dak' => 'Dakota',
+ 'dar' => 'Dargiensch',
+ 'day' => 'Dajak',
+ 'de' => 'Düütsch',
+ 'de-at' => 'Öösterrieksch Hoochdüütsch',
+ 'de-ch' => 'Swiezer Hoochdüütsch',
+ 'del' => 'Delaware',
+ 'den' => 'Slave',
+ 'dgr' => 'Dogrib',
+ 'din' => 'Dinka',
+ 'doi' => 'Dogri',
+ 'dra' => 'Drawiedsche Spraken',
+ 'dsb' => 'Neddersorbsch',
+ 'dua' => 'Duala',
+ 'dum' => 'Middelnedderlandsch',
+ 'dv' => 'Maledievsch',
+ 'dyu' => 'Dyula',
+ 'dz' => 'Bhutaansch',
+ 'ee' => 'Ewe',
+ 'efi' => 'Efik',
+ 'egy' => 'Ägyptsch',
+ 'eka' => 'Ekajuk',
+ 'el' => 'Greeksch',
+ 'elx' => 'Elaamsch',
+ 'en' => 'Engelsch',
+ 'en-au' => 'Austraalsch Engelsch',
+ 'en-ca' => 'Kanaadsch Engelsch',
+ 'en-gb' => 'Brietsch Engelsch',
+ 'en-us' => 'Amerikaansch Engelsch',
+ 'enm' => 'Middelengelsch',
+ 'eo' => 'Esperanto',
+ 'es' => 'Spaansch',
+ 'es-419' => 'Latienamerikaansch Spaansch',
+ 'es-es' => 'Ibeersch Spaansch',
+ 'et' => 'Eestnisch',
+ 'eu' => 'Basksch',
+ 'ewo' => 'Ewondo',
+ 'fa' => 'Pers’sch',
+ 'fan' => 'Pangwe',
+ 'fat' => 'Fanti',
+ 'ff' => 'Ful',
+ 'fi' => 'Finnsch',
+ 'fil' => 'Philippiensch',
+ 'fiu' => 'Finnougrische Spraken',
+ 'fj' => 'Fidschiaansch',
+ 'fo' => 'Färöösch',
+ 'fon' => 'Fon',
+ 'fr' => 'Franzöösch',
+ 'fr-ca' => 'Kanaadsch Franzöösch',
+ 'fr-ch' => 'Swiezer Franzöösch',
+ 'frm' => 'Middelfranzöösch',
+ 'fro' => 'Ooldfranzöösch',
+ 'frr' => 'Noordfreesch',
+ 'frs' => 'Saterfreesch',
+ 'fur' => 'Friuulsch',
+ 'fy' => 'Westfreesch',
+ 'ga' => 'Iersch',
+ 'gaa' => 'Ga',
+ 'gay' => 'Gayo',
+ 'gba' => 'Gbaya',
+ 'gd' => 'Schottsch Gäälsch',
+ 'gem' => 'Germaansche Spraken',
+ 'gez' => 'Geez',
+ 'gil' => 'Gilberteesch',
+ 'gl' => 'Galizisch',
+ 'gmh' => 'Middelhoochdüütsch',
+ 'gn' => 'Guarani',
+ 'goh' => 'Ooldhoochdüütsch',
+ 'gon' => 'Gondi',
+ 'gor' => 'Gorontalo',
+ 'got' => 'Gootsch',
+ 'grb' => 'Grebo',
+ 'grc' => 'Ooldgreeksch',
+ 'gsw' => 'Swiezerdüütsch',
+ 'gu' => 'Gujarati',
+ 'gv' => 'Manx',
+ 'gwi' => 'Kutchin',
+ 'ha' => 'Haussa',
+ 'hai' => 'Haida',
+ 'haw' => 'Hawaiiaansch',
+ 'he' => 'Hebrääsch',
+ 'hi' => 'Hindi',
+ 'hil' => 'Hiligaynon',
+ 'him' => 'Himachali',
+ 'hit' => 'Hethitsch',
+ 'hmn' => 'Miao-Spraken',
+ 'ho' => 'Hiri-Motu',
+ 'hr' => 'Kroaatsch',
+ 'hsb' => 'Böversorbsch',
+ 'ht' => 'Haitiaansch-Kreoolsch',
+ 'hu' => 'Ungaarsch',
+ 'hup' => 'Hupa',
+ 'hy' => 'Armeensch',
+ 'hz' => 'Herero',
+ 'ia' => 'Interlingua',
+ 'iba' => 'Iban',
+ 'id' => 'Indoneesch',
+ 'ie' => 'Interlingue',
+ 'ig' => 'Igbo',
+ 'ii' => 'Sichuan Yi',
+ 'ijo' => 'Ijo',
+ 'ik' => 'Inupiak',
+ 'ilo' => 'Ilokano',
+ 'inc' => 'Indoarische Spraken',
+ 'ine' => 'Indogermaansche Spraken',
+ 'inh' => 'Ingusch’sch',
+ 'io' => 'Ido',
+ 'ira' => 'Iraansche Spraken',
+ 'iro' => 'Irokeesche Spraken',
+ 'is' => 'Ieslandsch',
+ 'it' => 'Italieensch',
+ 'iu' => 'Inuktitut',
+ 'ja' => 'Japaansch',
+ 'jbo' => 'Lojban',
+ 'jpr' => 'Jöödsch-Pers’sch',
+ 'jrb' => 'Jöödsch-Araabsch',
+ 'jv' => 'Javaansch',
+ 'ka' => 'Georgsch',
+ 'kaa' => 'Karakalpaksch',
+ 'kab' => 'Kabyylsch',
+ 'kac' => 'Kachin',
+ 'kaj' => 'Jju',
+ 'kam' => 'Kamba',
+ 'kar' => 'Kareensch',
+ 'kaw' => 'Kawi',
+ 'kbd' => 'Kabardiensch',
+ 'kcg' => 'Tyap',
+ 'kfo' => 'Koro',
+ 'kg' => 'Kongo',
+ 'kha' => 'Khasi',
+ 'khi' => 'Khoisan-Spraken',
+ 'kho' => 'Saaksch',
+ 'ki' => 'Kikuyu',
+ 'kj' => 'Kwanyama',
+ 'kk' => 'Kasach’sch',
+ 'kl' => 'Gröönlandsch',
+ 'km' => 'Kambodschaansch',
+ 'kmb' => 'Kimbundu',
+ 'kn' => 'Kannada',
+ 'ko' => 'Koreaansch',
+ 'kok' => 'Konkani',
+ 'kos' => 'Kosraeaansch',
+ 'kpe' => 'Kpelle',
+ 'kr' => 'Kanuursch',
+ 'krc' => 'Karatschaisch-Balkaarsch',
+ 'krl' => 'Kareelsch',
+ 'kro' => 'Kru-Spraken',
+ 'kru' => 'Oraon',
+ 'ks' => 'Kaschmiersch',
+ 'ku' => 'Kurdsch',
+ 'kum' => 'Kumücksch',
+ 'kut' => 'Kutenai',
+ 'kv' => 'Komi',
+ 'kw' => 'Koornsch',
+ 'ky' => 'Kirgiesch',
+ 'la' => 'Latiensch',
+ 'lad' => 'Ladiensch',
+ 'lah' => 'Lahnda',
+ 'lam' => 'Lamba',
+ 'lb' => 'Luxemborgsch',
+ 'lez' => 'Lesgisch',
+ 'lg' => 'Ganda',
+ 'li' => 'Limborgsch',
+ 'ln' => 'Lingala',
+ 'lo' => 'Laootsch',
+ 'lol' => 'Mongo',
+ 'loz' => 'Rotse',
+ 'lt' => 'Litausch',
+ 'lu' => 'Luba',
+ 'lua' => 'Luba-Lulua',
+ 'lui' => 'Luiseno',
+ 'lun' => 'Lunda',
+ 'luo' => 'Luo',
+ 'lus' => 'Lushai',
+ 'lv' => 'Lettsch',
+ 'mad' => 'Madureesch',
+ 'mag' => 'Magahi',
+ 'mai' => 'Maithili',
+ 'mak' => 'Makassarsch',
+ 'man' => 'Manding',
+ 'map' => 'Austroneesche Spraken',
+ 'mas' => 'Massai',
+ 'mdf' => 'Mokscha',
+ 'mdr' => 'Mandareesch',
+ 'men' => 'Mende',
+ 'mg' => 'Madagassisch',
+ 'mga' => 'Middeliersch',
+ 'mh' => 'Marschalleesch',
+ 'mi' => 'Maori',
+ 'mic' => 'Micmac',
+ 'min' => 'Minangkabau',
+ 'mis' => 'Verschedene Spraken',
+ 'mk' => 'Mazedoonsch',
+ 'mkh' => 'Mon-Khmer-Spraken',
+ 'ml' => 'Malayalam',
+ 'mn' => 'Mongoolsch',
+ 'mnc' => 'Mandschuursch',
+ 'mni' => 'Manipuri',
+ 'mno' => 'Manobo',
+ 'mo' => 'Moldaawsch',
+ 'moh' => 'Mohawk',
+ 'mos' => 'Mossi',
+ 'mr' => 'Marathi',
+ 'ms' => 'Malaisch',
+ 'mt' => 'Malteesch',
+ 'mul' => 'Mehrsprakig',
+ 'mun' => 'Munda-Spraken',
+ 'mus' => 'Muskogee-Spraken',
+ 'mwl' => 'Mirandeesch',
+ 'mwr' => 'Marwari',
+ 'my' => 'Birmaansch',
+ 'myn' => 'Maya-Spraken',
+ 'myv' => 'Erzya',
+ 'na' => 'Nauruusch',
+ 'nah' => 'Nahuatl',
+ 'nai' => 'Indianerspraken in Noordamerika',
+ 'nap' => 'Neapolitaansch',
+ 'nb' => 'Norweegsch Bokmål',
+ 'nd' => 'Noord-Ndebele',
+ 'nds' => 'Plattdüütsch',
+ 'ne' => 'Nepaleesch',
+ 'new' => 'Newari',
+ 'ng' => 'Ndonga',
+ 'nia' => 'Nias',
+ 'nic' => 'Nigerkordofaansche Spraken',
+ 'niu' => 'Niue',
+ 'nl' => 'Nedderlandsch',
+ 'nl-be' => 'Fläämsch',
+ 'nn' => 'Norweegsch Nynorsk',
+ 'no' => 'Norweegsch',
+ 'nog' => 'Nogai',
+ 'non' => 'Ooldnoorsch',
+ 'nqo' => 'N’Ko',
+ 'nr' => 'Süüd-Ndebele',
+ 'nso' => 'Noord-Sotho',
+ 'nub' => 'Nuubsche Spraken',
+ 'nv' => 'Navajo',
+ 'nwc' => 'Oold-Newari',
+ 'ny' => 'Nyanja',
+ 'nym' => 'Nyamwezi',
+ 'nyn' => 'Nyankole',
+ 'nyo' => 'Nyoro',
+ 'nzi' => 'Nzima',
+ 'oc' => 'Okzitaansch',
+ 'oj' => 'Ojibwa',
+ 'om' => 'Oromo',
+ 'or' => 'Orija',
+ 'os' => 'Ossetsch',
+ 'osa' => 'Osage',
+ 'ota' => 'Osmaansch',
+ 'oto' => 'Otomangue-Spraken',
+ 'pa' => 'Pandschabsch',
+ 'paa' => 'Papuaspraken',
+ 'pag' => 'Pangasinan',
+ 'pal' => 'Middelpers’sch',
+ 'pam' => 'Pampanggan',
+ 'pap' => 'Papiamento',
+ 'pau' => 'Palausch',
+ 'peo' => 'Ooldpers’sch',
+ 'phi' => 'Philippinen-Austroneesche Spraken',
+ 'phn' => 'Phönieksch',
+ 'pi' => 'Pali',
+ 'pl' => 'Poolsch',
+ 'pon' => 'Ponapeaansch',
+ 'pra' => 'Prakrit',
+ 'pro' => 'Ooldprovenzaalsch',
+ 'ps' => 'Paschtu',
+ 'pt' => 'Portugeesch',
+ 'pt-br' => 'Brasiliaansch Portugeesch',
+ 'pt-pt' => 'Ibeersch Portugeesch',
+ 'qu' => 'Quechua',
+ 'raj' => 'Rajasthani',
+ 'rap' => 'Oosterinsel-Spraak',
+ 'rar' => 'Rarotongaansch',
+ 'rm' => 'Rätoromaansch',
+ 'rn' => 'Rundi',
+ 'ro' => 'Rumäänsch',
+ 'roa' => 'Romaansche Spraken',
+ 'rom' => 'Romani',
+ 'root' => 'Wortel',
+ 'ru' => 'Russ’sch',
+ 'rup' => 'Aromuunsch',
+ 'rw' => 'Ruandsch',
+ 'sa' => 'Sanskrit',
+ 'sad' => 'Sandawe',
+ 'sah' => 'Jakuutsch',
+ 'sai' => 'Indianerspraken in Süüdamerika',
+ 'sal' => 'Salish',
+ 'sam' => 'Samaritaansch',
+ 'sas' => 'Sasak',
+ 'sat' => 'Santali',
+ 'sc' => 'Sardsch',
+ 'scn' => 'Siziliaansch',
+ 'sco' => 'Schottsch',
+ 'sd' => 'Sindhi',
+ 'se' => 'Noord-Saamsch',
+ 'sel' => 'Selkupsch',
+ 'sem' => 'Semietsche Spraken',
+ 'sg' => 'Sango',
+ 'sga' => 'Oold-Iersch',
+ 'sgn' => 'Tekenspraken',
+ 'shn' => 'Schan',
+ 'si' => 'Singhaleesch',
+ 'sid' => 'Sidamo',
+ 'sio' => 'Sioux-Spraken',
+ 'sit' => 'Sinotibeetsche Spraken',
+ 'sk' => 'Slowaaksch',
+ 'sl' => 'Sloweensch',
+ 'sla' => 'Slaavsche Spraken',
+ 'sm' => 'Samoaansch',
+ 'sma' => 'Süüd-Lappsch',
+ 'smi' => 'Lappsch',
+ 'smj' => 'Lule-Lappsch',
+ 'smn' => 'Inari-Lappsch',
+ 'sms' => 'Skolt-Lappsch',
+ 'sn' => 'Schona',
+ 'snk' => 'Soninke',
+ 'so' => 'Somaalsch',
+ 'sog' => 'Sogdisch',
+ 'son' => 'Songhai',
+ 'sq' => 'Albaansch',
+ 'sr' => 'Serbsch',
+ 'srn' => 'Surinaamsch',
+ 'srr' => 'Serer',
+ 'ss' => 'Swazi',
+ 'ssa' => 'Nilosaharaansche Spraken',
+ 'st' => 'Süüd-Sotho',
+ 'su' => 'Sundaneesch',
+ 'suk' => 'Sukuma',
+ 'sus' => 'Susu',
+ 'sux' => 'Sumersch',
+ 'sv' => 'Sweedsch',
+ 'sw' => 'Suaheli',
+ 'syc' => 'Oold-Syyrsch',
+ 'syr' => 'Syyrsch',
+ 'ta' => 'Tamilsch',
+ 'tai' => 'Thaispraken',
+ 'te' => 'Telugu',
+ 'tem' => 'Temne',
+ 'ter' => 'Tereno',
+ 'tet' => 'Tetum',
+ 'tg' => 'Tadschiksch',
+ 'th' => 'Thai',
+ 'ti' => 'Tigrinja',
+ 'tig' => 'Tigre',
+ 'tiv' => 'Tiv',
+ 'tk' => 'Turkmeensch',
+ 'tkl' => 'Tokelausch',
+ 'tl' => 'Tagalog',
+ 'tlh' => 'Klingoonsch',
+ 'tli' => 'Tlingit',
+ 'tmh' => 'Tamaschek',
+ 'tn' => 'Tswana',
+ 'to' => 'Tongaasch',
+ 'tog' => 'Tonga (Nyasa)',
+ 'tpi' => 'Tok Pisin',
+ 'tr' => 'Törksch',
+ 'ts' => 'Tsonga',
+ 'tsi' => 'Tsimshian',
+ 'tt' => 'Tataarsch',
+ 'tum' => 'Tumbuka',
+ 'tup' => 'Tupi-Spraken',
+ 'tut' => 'Altaische Spraken',
+ 'tvl' => 'Elliceaansch',
+ 'tw' => 'Twi',
+ 'ty' => 'Tahitsch',
+ 'tyv' => 'Tuwinsch',
+ 'udm' => 'Udmurtsch',
+ 'ug' => 'Uiguursch',
+ 'uga' => 'Ugaritsch',
+ 'uk' => 'Ukrainsch',
+ 'umb' => 'Mbundu',
+ 'und' => 'Unbestimmte Spraak',
+ 'ur' => 'Urdu',
+ 'uz' => 'Usbeeksch',
+ 'vai' => 'Vai',
+ 've' => 'Venda',
+ 'vi' => 'Vietnameesch',
+ 'vo' => 'Volapük',
+ 'vot' => 'Wootsch',
+ 'wa' => 'Walloonsch',
+ 'wak' => 'Wakashaansch',
+ 'wal' => 'Walamo',
+ 'war' => 'Waray',
+ 'was' => 'Washo',
+ 'wen' => 'Sorbsch',
+ 'wo' => 'Wolof',
+ 'xal' => 'Kalmücksch',
+ 'xh' => 'Xhosa',
+ 'yao' => 'Yao',
+ 'yap' => 'Yapeesch',
+ 'yi' => 'Jiddisch',
+ 'yo' => 'Yoruba',
+ 'ypk' => 'Yupik',
+ 'za' => 'Zhuang',
+ 'zap' => 'Zapoteeksch',
+ 'zbl' => 'Bliss-Symbolen',
+ 'zen' => 'Zenaga',
+ 'zh' => 'Chineesch',
+ 'zh-hans' => 'Vereenfacht Chineesch',
+ 'zh-hant' => 'Traditschonell Chineesch',
+ 'znd' => 'Zande',
+ 'zu' => 'Zulu',
+ 'zun' => 'Zuni',
+ 'zxx' => 'Keen Spraakinhold',
+ 'zza' => 'Zaza',
+);
diff --git a/MLEB/cldr/LocalNames/LocalNamesNo.php b/MLEB/cldr/LocalNames/LocalNamesNo.php
new file mode 100644
index 00000000..2a22a977
--- /dev/null
+++ b/MLEB/cldr/LocalNames/LocalNamesNo.php
@@ -0,0 +1,4 @@
+<?php
+
+/* Norwegian default, fallback to nb */
+require_once __DIR__ . '/../CldrNames/CldrNamesNb.php';
diff --git a/MLEB/cldr/LocalNames/LocalNamesSh.php b/MLEB/cldr/LocalNames/LocalNamesSh.php
new file mode 100644
index 00000000..3c36ef8f
--- /dev/null
+++ b/MLEB/cldr/LocalNames/LocalNamesSh.php
@@ -0,0 +1,509 @@
+<?php
+$languageNames = array(
+ 'aa' => 'Afarski',
+ 'ab' => 'Abkazijski',
+ 'ace' => 'Ačineski',
+ 'ach' => 'Akoli',
+ 'ada' => 'Adangmejski',
+ 'ady' => 'Adigejski',
+ 'ae' => 'Avestanski',
+ 'af' => 'Afrikanerski',
+ 'afa' => 'Afro-azijatski',
+ 'afh' => 'Afrihili',
+ 'ain' => 'Ainu',
+ 'ak' => 'Akan',
+ 'akk' => 'Akadijski',
+ 'ale' => 'Aljut',
+ 'alg' => 'Algonkvijanski jezik',
+ 'alt' => 'Južni altai',
+ 'am' => 'Amharski',
+ 'an' => 'Aragonežanski',
+ 'ang' => 'Staroengleski',
+ 'anp' => 'Angika',
+ 'apa' => 'Apački jezik',
+ 'ar' => 'Arapski',
+ 'arc' => 'Armajski',
+ 'arn' => 'Arokanijski',
+ 'arp' => 'Arapaho',
+ 'art' => 'Veštački',
+ 'arw' => 'Aravak',
+ 'as' => 'Asemijski',
+ 'ast' => 'Asturijski',
+ 'ath' => 'Atapaskan',
+ 'aus' => 'Australijski jezik',
+ 'av' => 'Avarski',
+ 'awa' => 'Avadhi',
+ 'ay' => 'Ajmara',
+ 'az' => 'Azerbejdžanski',
+ 'ba' => 'Baškir',
+ 'bad' => 'Banda',
+ 'bai' => 'Bamileke',
+ 'bal' => 'Baluči',
+ 'ban' => 'Balinezijski',
+ 'bas' => 'Basa',
+ 'bat' => 'Baltički jezik',
+ 'be' => 'Beloruski',
+ 'bej' => 'Beja',
+ 'bem' => 'Bemba',
+ 'ber' => 'Berber',
+ 'bg' => 'Bugarski',
+ 'bh' => 'Biharski',
+ 'bho' => 'Bojpuri',
+ 'bi' => 'Bislama',
+ 'bik' => 'Bikol',
+ 'bin' => 'Bini',
+ 'bla' => 'Siksika',
+ 'bm' => 'Bambara',
+ 'bn' => 'Bengalski',
+ 'bnt' => 'Bantu',
+ 'bo' => 'Tibetanski',
+ 'br' => 'Bretonski',
+ 'bra' => 'Braj',
+ 'bs' => 'Bosanski',
+ 'btk' => 'Batak',
+ 'bua' => 'Buriat',
+ 'bug' => 'Buginežanskii',
+ 'byn' => 'Blin',
+ 'ca' => 'Katalonski',
+ 'cad' => 'Kado',
+ 'cai' => 'Jezik centralno-američkih Indijanaca',
+ 'car' => 'Karipski',
+ 'cau' => 'Kavkaski',
+ 'cch' => 'Atsam',
+ 'ce' => 'Čečenski',
+ 'ceb' => 'Cebuano',
+ 'cel' => 'Keltski jezik',
+ 'ch' => 'Čamoro',
+ 'chb' => 'Čibča',
+ 'chg' => 'Čagatai',
+ 'chk' => 'Čukeski',
+ 'chm' => 'Mari',
+ 'chn' => 'Činukski',
+ 'cho' => 'Čoktavski',
+ 'chp' => 'Čipvijanski',
+ 'chr' => 'Čeroki',
+ 'chy' => 'Čejenski',
+ 'cmc' => 'Čamski jezik',
+ 'co' => 'Korzikanski',
+ 'cop' => 'Koptski',
+ 'cpe' => 'Kreolski ili pidžin zasnovan na engleskom',
+ 'cpf' => 'Kreolski ili pidžin zasnovan na francuskom',
+ 'cpp' => 'Kreolski ili pidžin baziran na portugalskom',
+ 'cr' => 'Kri',
+ 'crh' => 'Krimeanski turski',
+ 'crp' => 'kreolski ili pidžin',
+ 'cs' => 'Češki',
+ 'csb' => 'Kašubijanski',
+ 'cu' => 'Staroslovenski',
+ 'cus' => 'Kušitički jezik',
+ 'cv' => 'Čuvaški',
+ 'cy' => 'Velški',
+ 'da' => 'Danski',
+ 'dak' => 'Dakota',
+ 'dar' => 'Dargva',
+ 'day' => 'Dajaški',
+ 'de' => 'Nemački',
+ 'de-at' => 'Austrijski nemački',
+ 'de-ch' => 'Švajcarski visoki nemački',
+ 'del' => 'Delaver',
+ 'den' => 'Slavski',
+ 'dgr' => 'Dogrib',
+ 'din' => 'Dinka',
+ 'doi' => 'Dogri',
+ 'dra' => 'Dravidijski jezik',
+ 'dsb' => 'Niski Sorbijanski',
+ 'dua' => 'Duala',
+ 'dum' => 'Srednji holandski',
+ 'dv' => 'Divehijski',
+ 'dyu' => 'Đula',
+ 'dz' => 'Džonga',
+ 'ee' => 'Eve',
+ 'efi' => 'Efikski',
+ 'egy' => 'Staroegipatski',
+ 'eka' => 'Ekajuk',
+ 'el' => 'Grčki',
+ 'elx' => 'Elamitski',
+ 'en' => 'Engleski',
+ 'en-au' => 'Australijski engleski',
+ 'en-ca' => 'Kanadski engleski',
+ 'en-gb' => 'Britanski engleski',
+ 'en-us' => 'Engleski (SAD)',
+ 'enm' => 'Srednji engleski',
+ 'eo' => 'Esperanto',
+ 'es' => 'Španski',
+ 'es-419' => 'Latino-američki španski',
+ 'es-es' => 'Iberijskišpanski',
+ 'et' => 'Estonski',
+ 'eu' => 'Baskijski',
+ 'ewo' => 'Evondo',
+ 'fa' => 'Persijski',
+ 'fan' => 'Fang',
+ 'fat' => 'Fanti',
+ 'ff' => 'Fulah',
+ 'fi' => 'Finski',
+ 'fil' => 'Filipinski',
+ 'fiu' => 'Ugro-finski jezik',
+ 'fj' => 'Fidžijski',
+ 'fo' => 'Farski',
+ 'fon' => 'Fon',
+ 'fr' => 'Francuski',
+ 'fr-ca' => 'Kanadski francuski',
+ 'fr-ch' => 'Švajcarski francuski',
+ 'frm' => 'Srednji francuski',
+ 'fro' => 'Starofrancuski',
+ 'frr' => 'Severno-frizijski',
+ 'frs' => 'Istočni frizijski',
+ 'fur' => 'Friulijski',
+ 'fy' => 'Frizijski',
+ 'ga' => 'Irski',
+ 'gaa' => 'Ga',
+ 'gay' => 'Gajo',
+ 'gba' => 'Gbaja',
+ 'gd' => 'Škotski Galski',
+ 'gem' => 'Germanski jezik',
+ 'gez' => 'Džiz',
+ 'gil' => 'Gilbertški',
+ 'gl' => 'Galski',
+ 'gmh' => 'Srednji visoki nemački',
+ 'gn' => 'Gvarani',
+ 'goh' => 'Staronemački',
+ 'gon' => 'Gondi',
+ 'gor' => 'Gorontalo',
+ 'got' => 'Gotski',
+ 'grb' => 'Grebo',
+ 'grc' => 'Starogrčki',
+ 'gsw' => 'Švajcarsko nemački',
+ 'gu' => 'Gudžarati',
+ 'gv' => 'Manks',
+ 'gwi' => 'Gvich\'in',
+ 'ha' => 'Hausa',
+ 'hai' => 'Haida',
+ 'haw' => 'Havajski',
+ 'he' => 'Hebrejski',
+ 'hi' => 'Hindi',
+ 'hil' => 'Hiligajnon',
+ 'him' => 'Himačali',
+ 'hit' => 'Hitite',
+ 'hmn' => 'Hmong',
+ 'ho' => 'Hiri Motu',
+ 'hr' => 'Hrvatski',
+ 'hsb' => 'Gornji sorbijski',
+ 'ht' => 'Haićanski',
+ 'hu' => 'Mađarski',
+ 'hup' => 'Hupa',
+ 'hy' => 'Jermenski',
+ 'hz' => 'Herero',
+ 'ia' => 'Interlingva',
+ 'iba' => 'Iban',
+ 'id' => 'Indonezijski',
+ 'ie' => 'Interlingve',
+ 'ig' => 'Igbo',
+ 'ii' => 'Sičuan ji',
+ 'ijo' => 'Ijo',
+ 'ik' => 'Inupiak',
+ 'ilo' => 'Iloko',
+ 'inc' => 'Indik',
+ 'ine' => 'Indo-evropski jezik',
+ 'inh' => 'Ingušetski',
+ 'io' => 'Ido',
+ 'ira' => 'Iranski jezik',
+ 'iro' => 'Irokvojanski',
+ 'is' => 'Islandski',
+ 'it' => 'Italijanski',
+ 'iu' => 'Inuktitut',
+ 'ja' => 'Japanski',
+ 'jbo' => 'Lojban',
+ 'jpr' => 'Judeo-persijski',
+ 'jrb' => 'Judeo-arapski',
+ 'jv' => 'Javanski',
+ 'ka' => 'Gruzijski',
+ 'kaa' => 'Kara-kalpaški',
+ 'kab' => 'Kabile',
+ 'kac' => 'Kačin',
+ 'kaj' => 'Žju',
+ 'kam' => 'Kamba',
+ 'kar' => 'Karenski',
+ 'kaw' => 'Kavi',
+ 'kbd' => 'Kabardijski',
+ 'kcg' => 'Tjap',
+ 'kfo' => 'Koro',
+ 'kg' => 'Kongo',
+ 'kha' => 'Kasi',
+ 'khi' => 'Koisanski jezik',
+ 'kho' => 'Kotanizijski',
+ 'ki' => 'Kikuju',
+ 'kj' => 'Kuanjama',
+ 'kk' => 'Kozački',
+ 'kl' => 'Kalalisutski',
+ 'km' => 'Kmerski',
+ 'kmb' => 'Kimbundu',
+ 'kn' => 'Kanada',
+ 'ko' => 'Korejski',
+ 'kok' => 'Konkani',
+ 'kos' => 'Kosreanski',
+ 'kpe' => 'Kpele',
+ 'kr' => 'Kanuri',
+ 'krc' => 'Karačaj-balkar',
+ 'krl' => 'Karelijski',
+ 'kro' => 'Kru',
+ 'kru' => 'Kurukh',
+ 'ks' => 'Kašmiri',
+ 'ku' => 'Kurdski',
+ 'kum' => 'Kumik',
+ 'kut' => 'Kutenai',
+ 'kv' => 'Komi',
+ 'kw' => 'Korniški',
+ 'ky' => 'Kirgiski',
+ 'la' => 'Latinski',
+ 'lad' => 'Ladino',
+ 'lah' => 'Landa',
+ 'lam' => 'Lamba',
+ 'lb' => 'Luksemburški',
+ 'lez' => 'Lezgian',
+ 'lg' => 'Ganda',
+ 'li' => 'Limburgiš',
+ 'ln' => 'Lingala',
+ 'lo' => 'Laoški',
+ 'lol' => 'Mongo',
+ 'loz' => 'Lozi',
+ 'lt' => 'Litvanski',
+ 'lu' => 'Luba-katanga',
+ 'lua' => 'Luba-lulua',
+ 'lui' => 'Luiseno',
+ 'lun' => 'Lunda',
+ 'luo' => 'Luo',
+ 'lus' => 'Lušai',
+ 'lv' => 'Letonski',
+ 'mad' => 'Madureški',
+ 'mag' => 'Magahi',
+ 'mai' => 'Maitili',
+ 'mak' => 'Makasar',
+ 'man' => 'Mandingo',
+ 'map' => 'Austronežanski',
+ 'mas' => 'Masai',
+ 'mdf' => 'Mokša',
+ 'mdr' => 'Mandar',
+ 'men' => 'Mende',
+ 'mg' => 'Malagazijski',
+ 'mga' => 'Srednji irski',
+ 'mh' => 'Maršalski',
+ 'mi' => 'Maorski',
+ 'mic' => 'Mikmak',
+ 'min' => 'Minangkabau',
+ 'mis' => 'Razni jezici',
+ 'mk' => 'Makedonski',
+ 'mkh' => 'Mon-kmerski jezik',
+ 'ml' => 'Malajalam',
+ 'mn' => 'Mongolski',
+ 'mnc' => 'Manču',
+ 'mni' => 'Manipuri',
+ 'mno' => 'Manobo jezik',
+ 'mo' => 'Moldavski',
+ 'moh' => 'Mahavski',
+ 'mos' => 'Mosi',
+ 'mr' => 'Marati',
+ 'ms' => 'Malajski',
+ 'mt' => 'Melteški',
+ 'mul' => 'Više jezika',
+ 'mun' => 'Munda jezik',
+ 'mus' => 'Kriški',
+ 'mwl' => 'Mirandeški',
+ 'mwr' => 'Marvari',
+ 'my' => 'Burmanski',
+ 'myn' => 'Majanski jezik',
+ 'myv' => 'Erzija',
+ 'na' => 'Nauru',
+ 'nah' => 'Nahuatl',
+ 'nai' => 'Jezik severno-američkih Indijanaca',
+ 'nap' => 'Neapolitanski',
+ 'nb' => 'Norveški bokmål',
+ 'nd' => 'Severni ndebele',
+ 'nds' => 'Niski nemački',
+ 'ne' => 'Nepalski',
+ 'new' => 'Nevari',
+ 'ng' => 'Ndonga',
+ 'nia' => 'Nias',
+ 'nic' => 'Niger-kordofanijski jezik',
+ 'niu' => 'Niuean',
+ 'nl' => 'Holandski',
+ 'nl-be' => 'Flamanski',
+ 'nn' => 'Norveški njorsk',
+ 'no' => 'Norveški',
+ 'nog' => 'Nogai',
+ 'non' => 'Stari norski',
+ 'nqo' => 'N’ko',
+ 'nr' => 'Južni ndebele',
+ 'nso' => 'Severni soto',
+ 'nub' => 'Nubijski jezik',
+ 'nv' => 'Navaho',
+ 'nwc' => 'Klasični nevari',
+ 'ny' => 'Njanja',
+ 'nym' => 'Njamvezi',
+ 'nyn' => 'Njankole',
+ 'nyo' => 'Njoro',
+ 'nzi' => 'Nzima',
+ 'oc' => 'Provansalski',
+ 'oj' => 'Ojibva',
+ 'om' => 'Oromo',
+ 'or' => 'Orijski',
+ 'os' => 'Osetski',
+ 'osa' => 'Osage',
+ 'ota' => 'Otomanski turski',
+ 'oto' => 'Otomanski jezik',
+ 'pa' => 'Pandžabski',
+ 'paa' => 'Papuanski jezik',
+ 'pag' => 'Pangasinski',
+ 'pal' => 'Pahlavi',
+ 'pam' => 'Pampanga',
+ 'pap' => 'Papiamento',
+ 'pau' => 'Palauanski',
+ 'peo' => 'Staropersijski',
+ 'phi' => 'Filipinski jezik',
+ 'phn' => 'Feničanski',
+ 'pi' => 'Pali',
+ 'pl' => 'Poljski',
+ 'pon' => 'Ponpejski',
+ 'pra' => 'Prakritski jezik',
+ 'pro' => 'Staroprovansalski',
+ 'ps' => 'Paštunski',
+ 'pt' => 'Portugalski',
+ 'pt-br' => 'Brazilski portugalski',
+ 'pt-pt' => 'Iberijski portugalski',
+ 'qu' => 'Kvenča',
+ 'raj' => 'Rađastani',
+ 'rap' => 'Rapanui',
+ 'rar' => 'Rarotongan',
+ 'rm' => 'Reto-Romanski',
+ 'rn' => 'Rundi',
+ 'ro' => 'Rumunski',
+ 'roa' => 'Romanski jezik',
+ 'rom' => 'Romani',
+ 'root' => 'Run',
+ 'ru' => 'Ruski',
+ 'rup' => 'Aromanijski',
+ 'rw' => 'Kinjarvanda',
+ 'sa' => 'Sanskrit',
+ 'sad' => 'Sandave',
+ 'sah' => 'Jakut',
+ 'sai' => 'Jezik južno-američkih Indijanaca',
+ 'sal' => 'Sališanski jezik',
+ 'sam' => 'Samaritanski aramejski',
+ 'sas' => 'Sasak',
+ 'sat' => 'Santali',
+ 'sc' => 'Sardinijski',
+ 'scn' => 'Sicilijanski',
+ 'sco' => 'Škotski',
+ 'sd' => 'Sindi',
+ 'se' => 'Severni sami',
+ 'sel' => 'Selkap',
+ 'sem' => 'Semitski jezik',
+ 'sg' => 'Sango',
+ 'sga' => 'Staroirski',
+ 'sgn' => 'Jezik znakova',
+ 'sh' => 'Srpskohrvatski',
+ 'shn' => 'Šan',
+ 'si' => 'Singaleski',
+ 'sid' => 'Sidamo',
+ 'sio' => 'Siuanski jezik',
+ 'sit' => 'Sino-tibetanski jezik',
+ 'sk' => 'Slovački',
+ 'sl' => 'Slovenački',
+ 'sla' => 'Slovenski jezik',
+ 'sm' => 'Samoanski',
+ 'sma' => 'Južni sami',
+ 'smi' => 'Sami jezik',
+ 'smj' => 'Lule sami',
+ 'smn' => 'Inari sami',
+ 'sms' => 'Skoltski jezik',
+ 'sn' => 'Šona',
+ 'snk' => 'Soninke',
+ 'so' => 'Somalski',
+ 'sog' => 'Sodžijenski',
+ 'son' => 'Songai',
+ 'sq' => 'Albanski',
+ 'sr' => 'Srpski',
+ 'srn' => 'Srananski tongo',
+ 'srr' => 'Serer',
+ 'ss' => 'Svati',
+ 'ssa' => 'Nilo-saharski jezik',
+ 'st' => 'Sesoto',
+ 'su' => 'Sudanski',
+ 'suk' => 'Sukuma',
+ 'sus' => 'Susu',
+ 'sux' => 'Sumerski',
+ 'sv' => 'Švedski',
+ 'sw' => 'Svahili',
+ 'syc' => 'Klasični sirijski',
+ 'syr' => 'Sirijski',
+ 'ta' => 'Tamilski',
+ 'tai' => 'Tai jezik',
+ 'te' => 'Telugu',
+ 'tem' => 'Timne',
+ 'ter' => 'Tereno',
+ 'tet' => 'Tetum',
+ 'tg' => 'Tađik',
+ 'th' => 'Tajlandski',
+ 'ti' => 'Tigrinja',
+ 'tig' => 'Tigre',
+ 'tiv' => 'Tiv',
+ 'tk' => 'Turkmenski',
+ 'tkl' => 'Tokelau',
+ 'tl' => 'Tagalski',
+ 'tlh' => 'Klingonski',
+ 'tli' => 'Tlingit',
+ 'tmh' => 'Tamašek',
+ 'tn' => 'Tsvana',
+ 'to' => 'Tonga',
+ 'tog' => 'Njasa tonga',
+ 'tpi' => 'Tok pisin',
+ 'tr' => 'Turski',
+ 'ts' => 'Tsonga',
+ 'tsi' => 'Tsimšian',
+ 'tt' => 'Tatarski',
+ 'tum' => 'Tumbuka',
+ 'tup' => 'Tupi jezik',
+ 'tut' => 'Altaički jezik',
+ 'tvl' => 'Tuvalu',
+ 'tw' => 'Tvi',
+ 'ty' => 'Tahićanski',
+ 'tyv' => 'Tuvinijski',
+ 'udm' => 'Udmurt',
+ 'ug' => 'Ujgurski',
+ 'uga' => 'Ugaritski',
+ 'uk' => 'Ukrajinski',
+ 'umb' => 'Umbundu',
+ 'und' => 'Nepoznat ili nevažeći jezik',
+ 'ur' => 'Urdu',
+ 'uz' => 'Uzbečki',
+ 'vai' => 'Vai',
+ 've' => 'Venda',
+ 'vi' => 'Vijetnamski',
+ 'vo' => 'Volapük',
+ 'vot' => 'Votski',
+ 'wa' => 'Valun',
+ 'wak' => 'Vakašanski jezik',
+ 'wal' => 'Valamo',
+ 'war' => 'Varej',
+ 'was' => 'Vašo',
+ 'wen' => 'Sorbijanski jezik',
+ 'wo' => 'Volof',
+ 'xal' => 'Kalmik',
+ 'xh' => 'Khosa',
+ 'yao' => 'Jao',
+ 'yap' => 'Japeški',
+ 'yi' => 'Jidiš',
+ 'yo' => 'Jorubanski',
+ 'ypk' => 'Jupik',
+ 'za' => 'Zuang',
+ 'zap' => 'Zapotečki',
+ 'zbl' => 'Blisimboli',
+ 'zen' => 'Zenaga',
+ 'zh' => 'Kineski',
+ 'zh-hans' => 'Kineski (pojednostavljen)',
+ 'zh-hant' => 'Kineski (tradicionalni)',
+ 'znd' => 'Zande',
+ 'zu' => 'Zulu',
+ 'zun' => 'Zuni',
+ 'zxx' => 'Bez lingvističkog sadržaja',
+ 'zza' => 'Zaza',
+);
diff --git a/MLEB/cldr/Makefile b/MLEB/cldr/Makefile
new file mode 100644
index 00000000..b0fe3601
--- /dev/null
+++ b/MLEB/cldr/Makefile
@@ -0,0 +1,30 @@
+.PHONY: help all clean test
+
+CORE=http://www.unicode.org/Public/cldr/25/core.zip
+
+help:
+ @echo "'make all' to download CLDR data and rebuild files."
+ @echo "'make test' to run the phpunit tests"
+ @echo "'make clean' to delete the generated LanguageNames*.php files."
+ @echo "'make distclean' to delete the CLDR data."
+
+all: LanguageNames.php
+
+distclean:
+ rm -f core.zip
+ rm -rf core
+
+clean:
+ rm -f CldrNames/CldrNames[A-Z]*.php
+
+test:
+ php ${MW_INSTALL_PATH}/tests/phpunit/phpunit.php tests
+
+LanguageNames.php: core/
+ php rebuild.php
+
+core/: core.zip
+ unzip core.zip -d core
+
+core.zip:
+ curl -C - -O $(CORE) || wget $(CORE) || fetch $(CORE)
diff --git a/MLEB/cldr/README b/MLEB/cldr/README
new file mode 100644
index 00000000..5258dcd4
--- /dev/null
+++ b/MLEB/cldr/README
@@ -0,0 +1,40 @@
+This extension contains local language names for different languages extracted
+from CLDR data.
+
+== Installation ==
+Include it in LocalSettings.php:
+ include("$IP/extensions/cldr/cldr.php");
+
+== Updating data ==
+
+Download newest data from CLDR site:
+ http://www.unicode.org/cldr/repository_access.html
+
+Example:
+ wget http://unicode.org/Public/cldr/26/core.zip
+ unzip core.zip -d core
+ php rebuild.php
+
+== Usage ==
+<source lang=php>
+ if ( is_callable( array( 'LanguageNames', 'getNames' ) ) ) {
+ $languages = LanguageNames::getNames( 'en' ,
+ LanguageNames::FALLBACK_NORMAL,
+ LanguageNames::LIST_MW_AND_CLDR
+ );
+ } else {
+ // If need to display something, use this as fallback
+ $languages = Language::getLanguageNames( false );
+ }
+</source>
+
+=== Parameters ===
+
+For fallback:
+* '''FALLBACK_NATIVE''': Go straight to MediaWiki's name entries
+* '''FALLBACK_NORMAL''': Go trough the fallback chain
+
+For which languages to return:
+* '''LIST_MW_SUPPORTED''': Only languages that has localisation in MediaWiki
+* '''LIST_MW''': All languages that are in Names.php
+* '''LIST_MW_AND_CLDR''': All languages that are either in MediaWiki or in cldr
diff --git a/MLEB/cldr/RELEASE-NOTES b/MLEB/cldr/RELEASE-NOTES
new file mode 100644
index 00000000..49ab9bae
--- /dev/null
+++ b/MLEB/cldr/RELEASE-NOTES
@@ -0,0 +1,5 @@
+== cldr 2014.11 ==
+Released at 2014-11-29.
+
+=== Noteworthy changes ===
+* Fixed some time displays if CLDR had only partial localisation of time units.
diff --git a/MLEB/cldr/TimeUnits.body.php b/MLEB/cldr/TimeUnits.body.php
new file mode 100644
index 00000000..df7f2a61
--- /dev/null
+++ b/MLEB/cldr/TimeUnits.body.php
@@ -0,0 +1,184 @@
+<?php
+
+/**
+ * A class for querying translated time units from CLDR data.
+ *
+ * @author Niklas Laxström
+ * @author Ryan Kaldari
+ * @copyright Copyright © 2007-2013
+ * @license http://www.gnu.org/copyleft/gpl.html GNU General Public License 2.0 or later
+ */
+class TimeUnits extends CldrNames {
+
+ private static $cache = array();
+
+ /**
+ * Get localized time units for a particular language, using fallback languages for missing
+ * items. The time units are returned as an associative array. The keys are of the form:
+ * <unit>-<tense>-<ordinality> (for example, 'hour-future-two'). The values include a placeholder
+ * for the number (for example, '{0} months ago').
+ *
+ * @param string $code The language to return the list in
+ * @return array an associative array of time unit codes and localized time units
+ */
+ public static function getUnits( $code ) {
+ // Load time units localized for the requested language
+ $units = self::loadLanguage( $code );
+
+ if ( $units ) {
+ return $units;
+ }
+ // Load missing time units from fallback languages
+ if ( is_callable( array( 'Language', 'getFallbacksFor' ) ) ) {
+ // MediaWiki 1.19
+ $fallbacks = Language::getFallbacksFor( $code );
+ foreach ( $fallbacks as $fallback ) {
+ if ( $units ) {
+ break;
+ }
+ // Get time units from a fallback language
+ $units = self::loadLanguage( $fallback );
+ }
+ } else {
+ // MediaWiki 1.18 or earlier
+ $fallback = $code;
+ while ( $fallback = Language::getFallbackFor( $fallback ) ) {
+ if ( $units ) {
+ break;
+ }
+ // Get time units from a fallback language
+ $units = self::loadLanguage( $fallback );
+ }
+ }
+
+ return $units;
+ }
+
+ /**
+ * Load time units localized for a particular language. Helper function for getUnits.
+ *
+ * @param string $code The language to return the list in
+ * @return array an associative array of time unit codes and localized time units
+ */
+ private static function loadLanguage( $code ) {
+ if ( !isset( self::$cache[$code] ) ) {
+ wfProfileIn( __METHOD__ . '-recache' );
+
+ /* Load override for wrong or missing entries in cldr */
+ $override = dirname( __FILE__ ) . '/LocalNames/' . self::getOverrideFileName( $code );
+ if ( Language::isValidBuiltInCode( $code ) && file_exists( $override ) ) {
+ $timeUnits = false;
+
+ require $override;
+
+ if ( is_array( $timeUnits ) ) {
+ self::$cache[$code] = $timeUnits;
+ }
+ }
+
+ $filename = dirname( __FILE__ ) . '/CldrNames/' . self::getFileName( $code );
+ if ( Language::isValidBuiltInCode( $code ) && file_exists( $filename ) ) {
+ $timeUnits = false;
+ require $filename;
+ if ( is_array( $timeUnits ) ) {
+ if ( isset( self::$cache[$code] ) ) {
+ // Add to existing list of localized time units
+ self::$cache[$code] = self::$cache[$code] + $timeUnits;
+ } else {
+ // No list exists, so create it
+ self::$cache[$code] = $timeUnits;
+ }
+ }
+ } else {
+ wfDebug( __METHOD__ . ": Unable to load time units for $filename\n" );
+ }
+ if ( !isset( self::$cache[$code] ) ) {
+ self::$cache[$code] = array();
+ }
+ wfProfileOut( __METHOD__ . '-recache' );
+ }
+
+ return self::$cache[$code];
+ }
+
+ /**
+ * Handler for GetHumanTimestamp hook.
+ * Converts the given time into a human-friendly relative format, for
+ * example, '6 days ago', 'In 10 months'.
+ *
+ * @param string &$output The output timestamp
+ * @param MWTimestamp $timestamp The current (user-adjusted) timestamp
+ * @param MWTimestamp $relativeTo The relative (user-adjusted) timestamp
+ * @param User $user User whose preferences are being used to make timestamp
+ * @param Language $lang Language that will be used to render the timestamp
+ * @return bool False means the timestamp was overridden so stop further
+ * processing. True means the timestamp was not overridden.
+ */
+ public static function onGetHumanTimestamp( &$output, $timestamp, $relativeTo, $user, $lang ) {
+
+ // Map PHP's DateInterval property codes to CLDR unit names.
+ $units = array(
+ 's' => 'second',
+ 'i' => 'minute',
+ 'h' => 'hour',
+ 'd' => 'day',
+ 'm' => 'month',
+ 'y' => 'year',
+ );
+
+ // Get the difference between the two timestamps (as a DateInterval object).
+ $timeDifference = $timestamp->diff( $relativeTo );
+
+ // Figure out if the timestamp is in the future or the past.
+ if ( $timeDifference->invert ) {
+ $tense = 'future';
+ } else {
+ $tense = 'past';
+ }
+
+ // Figure out which unit (days, months, etc.) it makes sense to display
+ // the timestamp in, and get the number of that unit to use.
+ $unit = null;
+ foreach ( $units as $code => $testUnit ) {
+ $testNumber = $timeDifference->format( '%' . $code );
+ if ( intval( $testNumber ) > 0 ) {
+ $unit = $testUnit;
+ $number = $testNumber;
+ }
+ }
+
+ // If it occurred less than 1 second ago, output 'just now' message.
+ if ( !$unit ) {
+ $output = wfMessage( 'just-now' )->inLanguage( $lang )->text();
+
+ return false;
+ }
+
+ // Get the CLDR time unit strings for the user's language.
+ // If no strings are returned, abandon the timestamp override.
+ $timeUnits = TimeUnits::getUnits( $lang->getCode() );
+ if ( !$timeUnits ) {
+ return true;
+ }
+
+ // Figure out which grammatical number to use.
+ // If the template doesn't exist, fall back to 'other' as the default.
+ $grammaticalNumber = $lang->getPluralRuleType( $number );
+ $timeUnitKey = "{$unit}-{$tense}-{$grammaticalNumber}";
+ if ( !isset( $timeUnits[$timeUnitKey] ) ) {
+ $timeUnitKey = "{$unit}-{$tense}-other";
+ }
+
+ // Not all languages have translations for everything
+ if ( !isset( $timeUnits[$timeUnitKey] ) ) {
+ return true;
+ }
+
+ // Select the appropriate template for the timestamp.
+ $timeUnit = $timeUnits[$timeUnitKey];
+ // Replace the placeholder with the number.
+ $output = str_replace( '{0}', $lang->formatNum( $number ), $timeUnit );
+
+ return false;
+ }
+}
diff --git a/MLEB/cldr/cldr.i18n.php b/MLEB/cldr/cldr.i18n.php
new file mode 100644
index 00000000..5d35d7e2
--- /dev/null
+++ b/MLEB/cldr/cldr.i18n.php
@@ -0,0 +1,35 @@
+<?php
+/**
+ * This is a backwards-compatibility shim, generated by:
+ * https://git.wikimedia.org/blob/mediawiki%2Fcore.git/HEAD/maintenance%2FgenerateJsonI18n.php
+ *
+ * Beginning with MediaWiki 1.23, translation strings are stored in json files,
+ * and the EXTENSION.i18n.php file only exists to provide compatibility with
+ * older releases of MediaWiki. For more information about this migration, see:
+ * https://www.mediawiki.org/wiki/Requests_for_comment/Localisation_format
+ *
+ * This shim maintains compatibility back to MediaWiki 1.17.
+ */
+$messages = array();
+if ( !function_exists( 'wfJsonI18nShima81b5029bff0d492' ) ) {
+ function wfJsonI18nShima81b5029bff0d492( $cache, $code, &$cachedData ) {
+ $codeSequence = array_merge( array( $code ), $cachedData['fallbackSequence'] );
+ foreach ( $codeSequence as $csCode ) {
+ $fileName = dirname( __FILE__ ) . "/i18n/$csCode.json";
+ if ( is_readable( $fileName ) ) {
+ $data = FormatJson::decode( file_get_contents( $fileName ), true );
+ foreach ( array_keys( $data ) as $key ) {
+ if ( $key === '' || $key[0] === '@' ) {
+ unset( $data[$key] );
+ }
+ }
+ $cachedData['messages'] = array_merge( $data, $cachedData['messages'] );
+ }
+
+ $cachedData['deps'][] = new FileDependency( $fileName );
+ }
+ return true;
+ }
+
+ $GLOBALS['wgHooks']['LocalisationCacheRecache'][] = 'wfJsonI18nShima81b5029bff0d492';
+}
diff --git a/MLEB/cldr/cldr.php b/MLEB/cldr/cldr.php
new file mode 100644
index 00000000..016fd1bb
--- /dev/null
+++ b/MLEB/cldr/cldr.php
@@ -0,0 +1,32 @@
+<?php
+if ( !defined( 'MEDIAWIKI' ) ) die();
+/**
+ * An extension which provides localised language names for other extensions.
+ *
+ * @file
+ * @ingroup Extensions
+ * @author Niklas Laxström
+ * @copyright Copyright © 2007-2014, Niklas Laxström
+ * @license http://www.gnu.org/copyleft/gpl.html GNU General Public License 2.0 or later
+ */
+define( 'CLDR_VERSION', '4.1.0 (CLDR 25)' );
+
+$wgExtensionCredits['other'][] = array(
+ 'path' => __FILE__,
+ 'name' => 'Language Names',
+ 'version' => '[https://www.mediawiki.org/wiki/MLEB MLEB 2014.11]',
+ 'author' => array( 'Niklas Laxström', 'Siebrand Mazeland', 'Ryan Kaldari', 'Sam Reed' ),
+ 'url' => 'https://www.mediawiki.org/wiki/Extension:CLDR',
+ 'descriptionmsg' => 'cldr-desc',
+);
+
+$dir = dirname( __FILE__ ) . '/';
+$wgMessagesDirs['cldr'] = __DIR__ . '/i18n';
+$wgExtensionMessagesFiles['cldr'] = $dir . 'cldr.i18n.php';
+$wgAutoloadClasses['CldrNames'] = $dir . 'CldrNames.php';
+$wgAutoloadClasses['LanguageNames'] = $dir . 'LanguageNames.body.php';
+$wgAutoloadClasses['CountryNames'] = $dir . 'CountryNames.body.php';
+$wgAutoloadClasses['CurrencyNames'] = $dir . 'CurrencyNames.body.php';
+$wgAutoloadClasses['TimeUnits'] = $dir . 'TimeUnits.body.php';
+$wgHooks['LanguageGetTranslatedLanguageNames'][] = 'LanguageNames::coreHook';
+$wgHooks['GetHumanTimestamp'][] = 'TimeUnits::onGetHumanTimestamp';
diff --git a/MLEB/cldr/composer.json b/MLEB/cldr/composer.json
new file mode 100644
index 00000000..50fd9a4e
--- /dev/null
+++ b/MLEB/cldr/composer.json
@@ -0,0 +1,11 @@
+{
+ "name": "mediawiki/cldr",
+ "type": "mediawiki-extension",
+ "description": "CLDR extension contains local language names for different languages, countries, and currencies extracted from CLDR data",
+ "homepage": "http://www.mediawiki.org/wiki/Extension:CLDR",
+ "license": "GPL-2.0",
+
+ "require": {
+ "composer/installers": "*"
+ }
+}
diff --git a/MLEB/cldr/i18n/af.json b/MLEB/cldr/i18n/af.json
new file mode 100644
index 00000000..aa6be6be
--- /dev/null
+++ b/MLEB/cldr/i18n/af.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Naudefj"
+ ]
+ },
+ "cldr-desc": "Uitbreiding om die vertaalde name van tale bied"
+}
diff --git a/MLEB/cldr/i18n/ar.json b/MLEB/cldr/i18n/ar.json
new file mode 100644
index 00000000..a8e63d69
--- /dev/null
+++ b/MLEB/cldr/i18n/ar.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Meno25"
+ ]
+ },
+ "cldr-desc": "امتداد يوفر أسماء لغات مترجمة بالاعتماد على [http://cldr.unicode.org/index/downloads بيانات CLDR]"
+}
diff --git a/MLEB/cldr/i18n/arz.json b/MLEB/cldr/i18n/arz.json
new file mode 100644
index 00000000..61d8cf7e
--- /dev/null
+++ b/MLEB/cldr/i18n/arz.json
@@ -0,0 +1,9 @@
+{
+ "@metadata": {
+ "authors": [
+ "Dudi",
+ "Meno25"
+ ]
+ },
+ "cldr-desc": "Extension ببيّن الاسامى المحليه بتاعة اللغات"
+}
diff --git a/MLEB/cldr/i18n/ast.json b/MLEB/cldr/i18n/ast.json
new file mode 100644
index 00000000..a7eaa0ca
--- /dev/null
+++ b/MLEB/cldr/i18n/ast.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Xuacu"
+ ]
+ },
+ "cldr-desc": "Estensión qu'ufre nomes d'idioma llocalizaos basaos nos [http://cldr.unicode.org/index/downloads datos de CLDR]"
+}
diff --git a/MLEB/cldr/i18n/azb.json b/MLEB/cldr/i18n/azb.json
new file mode 100644
index 00000000..fe4b9a3f
--- /dev/null
+++ b/MLEB/cldr/i18n/azb.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Mousa"
+ ]
+ },
+ "cldr-desc": "[http://cldr.unicode.org/index/downloads CLDR بیلگیلری]نه دایاناراق، یئرلیلشدیریلمیش دیل آدلارینی حاضیرلایان بیر اوزانتی"
+}
diff --git a/MLEB/cldr/i18n/ba.json b/MLEB/cldr/i18n/ba.json
new file mode 100644
index 00000000..3e08c099
--- /dev/null
+++ b/MLEB/cldr/i18n/ba.json
@@ -0,0 +1,9 @@
+{
+ "@metadata": {
+ "authors": [
+ "Assele",
+ "Рустам Нурыев"
+ ]
+ },
+ "cldr-desc": "[http://cldr.unicode.org/index/downloads CLDR мәғлүмәте] нигеҙендә тел исемдәренең тәржемәһе менән тәьмин итеүсе киңәйтеү"
+}
diff --git a/MLEB/cldr/i18n/bar.json b/MLEB/cldr/i18n/bar.json
new file mode 100644
index 00000000..077a979b
--- /dev/null
+++ b/MLEB/cldr/i18n/bar.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Man77"
+ ]
+ },
+ "cldr-desc": "Untastützung fia lokalisiate Språchnnãmen"
+}
diff --git a/MLEB/cldr/i18n/bcc.json b/MLEB/cldr/i18n/bcc.json
new file mode 100644
index 00000000..870eb79d
--- /dev/null
+++ b/MLEB/cldr/i18n/bcc.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Mostafadaneshvar"
+ ]
+ },
+ "cldr-desc": "برنامه الحاقی که نام دگه زبانانء ترجمه اش کنت"
+}
diff --git a/MLEB/cldr/i18n/bcl.json b/MLEB/cldr/i18n/bcl.json
new file mode 100644
index 00000000..8a8861a0
--- /dev/null
+++ b/MLEB/cldr/i18n/bcl.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Geopoet"
+ ]
+ },
+ "cldr-desc": "Ekstensyon na minatao nin lokalisadong pangaran kan lengguwahe na nakabase sa [http://cldr.unicode.org/index/downloads datos nin CLDR]"
+}
diff --git a/MLEB/cldr/i18n/be-tarask.json b/MLEB/cldr/i18n/be-tarask.json
new file mode 100644
index 00000000..ad801e57
--- /dev/null
+++ b/MLEB/cldr/i18n/be-tarask.json
@@ -0,0 +1,9 @@
+{
+ "@metadata": {
+ "authors": [
+ "EugeneZelenko",
+ "Jim-by"
+ ]
+ },
+ "cldr-desc": "Пашырэньне, якое дадае пераклады назваў моў на аснове [http://cldr.unicode.org/index/downloads зьвестак CLDR]"
+}
diff --git a/MLEB/cldr/i18n/bg.json b/MLEB/cldr/i18n/bg.json
new file mode 100644
index 00000000..b996462a
--- /dev/null
+++ b/MLEB/cldr/i18n/bg.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "DCLXVI"
+ ]
+ },
+ "cldr-desc": "Разширение, което предоставя локализирани имена на езиците от [http://cldr.unicode.org/index/downloads CLDR данните]"
+}
diff --git a/MLEB/cldr/i18n/bn.json b/MLEB/cldr/i18n/bn.json
new file mode 100644
index 00000000..3b24838a
--- /dev/null
+++ b/MLEB/cldr/i18n/bn.json
@@ -0,0 +1,9 @@
+{
+ "@metadata": {
+ "authors": [
+ "Nasir8891",
+ "Zaheen"
+ ]
+ },
+ "cldr-desc": "এই এক্সটেনশনটি [http://cldr.unicode.org/index/downloads CLDR data] ভাষাগুলির স্থানীয়কৃত নাম প্রদান করে"
+}
diff --git a/MLEB/cldr/i18n/br.json b/MLEB/cldr/i18n/br.json
new file mode 100644
index 00000000..d22fb42f
--- /dev/null
+++ b/MLEB/cldr/i18n/br.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Fulup"
+ ]
+ },
+ "cldr-desc": "Astenn a bourchas roll lec'helaet anvioù ar yezhoù diazezet war [http://cldr.unicode.org/index/downloads roadennoù CLDR]"
+}
diff --git a/MLEB/cldr/i18n/bs.json b/MLEB/cldr/i18n/bs.json
new file mode 100644
index 00000000..b5448919
--- /dev/null
+++ b/MLEB/cldr/i18n/bs.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "CERminator"
+ ]
+ },
+ "cldr-desc": "Ekstenzija koja pruža lokalizirane nazive jezika zasnovane na [http://cldr.unicode.org/index/downloads podacima CLDR]"
+}
diff --git a/MLEB/cldr/i18n/ca.json b/MLEB/cldr/i18n/ca.json
new file mode 100644
index 00000000..b1fdc521
--- /dev/null
+++ b/MLEB/cldr/i18n/ca.json
@@ -0,0 +1,9 @@
+{
+ "@metadata": {
+ "authors": [
+ "Martorell",
+ "Solde"
+ ]
+ },
+ "cldr-desc": "Extensió que proporciona noms localitzats de les llengües, basat en [http://cldr.unicode.org/index/downloads dades CLDR]"
+}
diff --git a/MLEB/cldr/i18n/ce.json b/MLEB/cldr/i18n/ce.json
new file mode 100644
index 00000000..b9bc1535
--- /dev/null
+++ b/MLEB/cldr/i18n/ce.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Умар"
+ ]
+ },
+ "cldr-desc": "[http://cldr.unicode.org/index/downloads CLDR хаамашца] меттанийн цӀераш гочян таро хуьлуьйту"
+}
diff --git a/MLEB/cldr/i18n/cs.json b/MLEB/cldr/i18n/cs.json
new file mode 100644
index 00000000..6aaeac27
--- /dev/null
+++ b/MLEB/cldr/i18n/cs.json
@@ -0,0 +1,10 @@
+{
+ "@metadata": {
+ "authors": [
+ "Danny B.",
+ "Matěj Grabovský",
+ "Mormegil"
+ ]
+ },
+ "cldr-desc": "Rozšíření poskytující lokalizované názvy jazyků s využitím [http://cldr.unicode.org/index/downloads dat CLDR]"
+}
diff --git a/MLEB/cldr/i18n/cy.json b/MLEB/cldr/i18n/cy.json
new file mode 100644
index 00000000..e295170a
--- /dev/null
+++ b/MLEB/cldr/i18n/cy.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Lloffiwr"
+ ]
+ },
+ "cldr-desc": "Estyniad sy'n defnyddio [http://cldr.unicode.org/index/downloads data CLDR] i ddarparu enwau ieithoedd yn iaith y wici"
+}
diff --git a/MLEB/cldr/i18n/da.json b/MLEB/cldr/i18n/da.json
new file mode 100644
index 00000000..59606a70
--- /dev/null
+++ b/MLEB/cldr/i18n/da.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Peter Alberti"
+ ]
+ },
+ "cldr-desc": "Udvidelse, som giver lokaliserede sprognavne baseret på [http://cldr.unicode.org/index/downloads CLDR-data]"
+}
diff --git a/MLEB/cldr/i18n/de.json b/MLEB/cldr/i18n/de.json
new file mode 100644
index 00000000..65595f4e
--- /dev/null
+++ b/MLEB/cldr/i18n/de.json
@@ -0,0 +1,9 @@
+{
+ "@metadata": {
+ "authors": [
+ "Kghbln",
+ "Raimond Spekking"
+ ]
+ },
+ "cldr-desc": "Ermöglicht die Unterstützung für internationalisierte Sprachennamen aus dem [http://cldr.unicode.org/index „Common Locale Data Repository“ (CLDR)]"
+}
diff --git a/MLEB/cldr/i18n/dsb.json b/MLEB/cldr/i18n/dsb.json
new file mode 100644
index 00000000..46b15886
--- /dev/null
+++ b/MLEB/cldr/i18n/dsb.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Michawiki"
+ ]
+ },
+ "cldr-desc": "Rozšyrjenje, kótarež pódawa lokalizěrowane rěcne mjenja na zakłaźe [http://cldr.unicode.org/index/downloads CLDR data]"
+}
diff --git a/MLEB/cldr/i18n/el.json b/MLEB/cldr/i18n/el.json
new file mode 100644
index 00000000..dcd557fc
--- /dev/null
+++ b/MLEB/cldr/i18n/el.json
@@ -0,0 +1,9 @@
+{
+ "@metadata": {
+ "authors": [
+ "Omnipaedista",
+ "ZaDiak"
+ ]
+ },
+ "cldr-desc": "Επέκταση που παρέχει εντοπιωμένα ονόματα γλωσσών βασισμένα σε [http://cldr.unicode.org/index/downloads δεδομένα CLDR]"
+}
diff --git a/MLEB/cldr/i18n/en.json b/MLEB/cldr/i18n/en.json
new file mode 100644
index 00000000..d402934d
--- /dev/null
+++ b/MLEB/cldr/i18n/en.json
@@ -0,0 +1,6 @@
+{
+ "@metadata": {
+ "authors": []
+ },
+ "cldr-desc": "Extension which provides localised language names based on [http://cldr.unicode.org/index/downloads CLDR data]"
+} \ No newline at end of file
diff --git a/MLEB/cldr/i18n/eo.json b/MLEB/cldr/i18n/eo.json
new file mode 100644
index 00000000..0cf94c6e
--- /dev/null
+++ b/MLEB/cldr/i18n/eo.json
@@ -0,0 +1,9 @@
+{
+ "@metadata": {
+ "authors": [
+ "Eliovir",
+ "Yekrats"
+ ]
+ },
+ "cldr-desc": "Kromaĵo kiu provizas tradukitajn nomojn de lingvoj bazitajn sur [http://cldr.unicode.org/index/downloads datumoj de CLDR]"
+}
diff --git a/MLEB/cldr/i18n/es.json b/MLEB/cldr/i18n/es.json
new file mode 100644
index 00000000..41dc04af
--- /dev/null
+++ b/MLEB/cldr/i18n/es.json
@@ -0,0 +1,9 @@
+{
+ "@metadata": {
+ "authors": [
+ "Locos epraix",
+ "Sanbec"
+ ]
+ },
+ "cldr-desc": "Extensión que provee nombres de idioma traducidos basados en [http://cldr.unicode.org/index/downloads datos CLDR]"
+}
diff --git a/MLEB/cldr/i18n/et.json b/MLEB/cldr/i18n/et.json
new file mode 100644
index 00000000..bd38085d
--- /dev/null
+++ b/MLEB/cldr/i18n/et.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Pikne"
+ ]
+ },
+ "cldr-desc": "[http://cldr.unicode.org/index/downloads CLDR-andmetel] põhinevaid lokaliseeritud keelenimetusi kasutada võimaldav lisa"
+}
diff --git a/MLEB/cldr/i18n/eu.json b/MLEB/cldr/i18n/eu.json
new file mode 100644
index 00000000..bd478f82
--- /dev/null
+++ b/MLEB/cldr/i18n/eu.json
@@ -0,0 +1,9 @@
+{
+ "@metadata": {
+ "authors": [
+ "An13sa",
+ "Theklan"
+ ]
+ },
+ "cldr-desc": "Lokalizatutako hizkuntza izenak eskaintzen dituen luzapena [http://cldr.unicode.org/index/downloads CLDR datuetan] oinarrituta"
+}
diff --git a/MLEB/cldr/i18n/fa.json b/MLEB/cldr/i18n/fa.json
new file mode 100644
index 00000000..505b5632
--- /dev/null
+++ b/MLEB/cldr/i18n/fa.json
@@ -0,0 +1,9 @@
+{
+ "@metadata": {
+ "authors": [
+ "Ebraminio",
+ "ZxxZxxZ"
+ ]
+ },
+ "cldr-desc": "افزونه‌ای که نام محلی زبان‌ها را بر پایهٔ [http://cldr.unicode.org/index/downloads داده‌های CLDR] ارائه می‌کند."
+}
diff --git a/MLEB/cldr/i18n/fi.json b/MLEB/cldr/i18n/fi.json
new file mode 100644
index 00000000..ede60f23
--- /dev/null
+++ b/MLEB/cldr/i18n/fi.json
@@ -0,0 +1,10 @@
+{
+ "@metadata": {
+ "authors": [
+ "Crt",
+ "Mobe",
+ "Nike"
+ ]
+ },
+ "cldr-desc": "Laajennus, joka tarjoaa kotoistetut kielten nimet pohjautuen [http://cldr.unicode.org/index/downloads CLDR-tietovarastoon]."
+}
diff --git a/MLEB/cldr/i18n/fr.json b/MLEB/cldr/i18n/fr.json
new file mode 100644
index 00000000..6cbda7cc
--- /dev/null
+++ b/MLEB/cldr/i18n/fr.json
@@ -0,0 +1,9 @@
+{
+ "@metadata": {
+ "authors": [
+ "Peter17",
+ "Verdy p"
+ ]
+ },
+ "cldr-desc": "Extension qui fournit les noms traduits des langues, sur la base des [http://cldr.unicode.org/index/downloads données CLDR]"
+}
diff --git a/MLEB/cldr/i18n/frp.json b/MLEB/cldr/i18n/frp.json
new file mode 100644
index 00000000..646df3be
--- /dev/null
+++ b/MLEB/cldr/i18n/frp.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "ChrisPtDe"
+ ]
+ },
+ "cldr-desc": "Èxtension que balye los noms traduits de les lengoues, sur la bâsa de les [http://cldr.unicode.org/index/downloads balyês CLDR]."
+}
diff --git a/MLEB/cldr/i18n/fy.json b/MLEB/cldr/i18n/fy.json
new file mode 100644
index 00000000..edeca94c
--- /dev/null
+++ b/MLEB/cldr/i18n/fy.json
@@ -0,0 +1,9 @@
+{
+ "@metadata": {
+ "authors": [
+ "SK-luuut",
+ "Robin0van0der0vliet"
+ ]
+ },
+ "cldr-desc": "Taheaksel dy't fertaalde taalnammen oanbiedt basearre op [http://cldr.unicode.org/index/downloads CLDR-gegevens ]"
+}
diff --git a/MLEB/cldr/i18n/gd.json b/MLEB/cldr/i18n/gd.json
new file mode 100644
index 00000000..fe17d0d0
--- /dev/null
+++ b/MLEB/cldr/i18n/gd.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "GunChleoc"
+ ]
+ },
+ "cldr-desc": "Leudachan a bheir seachad ainmean chànan air ionadaileadh stèidhichte air [http://cldr.unicode.org/index/downloads dàta CLDR]"
+}
diff --git a/MLEB/cldr/i18n/gl.json b/MLEB/cldr/i18n/gl.json
new file mode 100644
index 00000000..f74814cb
--- /dev/null
+++ b/MLEB/cldr/i18n/gl.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Toliño"
+ ]
+ },
+ "cldr-desc": "Extensión que proporciona os nomes localizados das linguas, mediante os [http://cldr.unicode.org/index/downloads datos CLDR]"
+}
diff --git a/MLEB/cldr/i18n/grc.json b/MLEB/cldr/i18n/grc.json
new file mode 100644
index 00000000..e1cb2c4f
--- /dev/null
+++ b/MLEB/cldr/i18n/grc.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Omnipaedista"
+ ]
+ },
+ "cldr-desc": "Ἔκτασίς τις παρέχουσα ἐντοπιωμένα γλωττώνυμα"
+}
diff --git a/MLEB/cldr/i18n/gsw.json b/MLEB/cldr/i18n/gsw.json
new file mode 100644
index 00000000..00b87e36
--- /dev/null
+++ b/MLEB/cldr/i18n/gsw.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Als-Holder"
+ ]
+ },
+ "cldr-desc": "Unterstitzig fir lokalisierti Sprochenäme us em [http://cldr.unicode.org/index „Common Locale Data Repository“ (CLDR)]"
+}
diff --git a/MLEB/cldr/i18n/gv.json b/MLEB/cldr/i18n/gv.json
new file mode 100644
index 00000000..f54bfa01
--- /dev/null
+++ b/MLEB/cldr/i18n/gv.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "MacTire02"
+ ]
+ },
+ "cldr-desc": "Sheeyntagh ta kiarail enmyn çhengey ynnydit, bunnit er [http://cldr.unicode.org/index/downloads fysseree CLDR]"
+}
diff --git a/MLEB/cldr/i18n/he.json b/MLEB/cldr/i18n/he.json
new file mode 100644
index 00000000..dae3f629
--- /dev/null
+++ b/MLEB/cldr/i18n/he.json
@@ -0,0 +1,9 @@
+{
+ "@metadata": {
+ "authors": [
+ "Rotemliss",
+ "YaronSh"
+ ]
+ },
+ "cldr-desc": "הרחבה המספקת שמות מתורגמים לשפות בהתבסס על [http://cldr.unicode.org/index/downloads נתוני ה־CLDR]"
+}
diff --git a/MLEB/cldr/i18n/hi.json b/MLEB/cldr/i18n/hi.json
new file mode 100644
index 00000000..bd743404
--- /dev/null
+++ b/MLEB/cldr/i18n/hi.json
@@ -0,0 +1,9 @@
+{
+ "@metadata": {
+ "authors": [
+ "Kaustubh",
+ "Siddhartha Ghai"
+ ]
+ },
+ "cldr-desc": "एक्सटेंशन जो [http://cldr.unicode.org/index/downloads CLDR डाटा] के अनुसार भाषाओं के स्थानीय नाम प्रदान करता है"
+}
diff --git a/MLEB/cldr/i18n/hil.json b/MLEB/cldr/i18n/hil.json
new file mode 100644
index 00000000..34421367
--- /dev/null
+++ b/MLEB/cldr/i18n/hil.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Tagimata"
+ ]
+ },
+ "cldr-desc": "Ekstensiyon nga gahatag ngalan lengwahe nga nangin lokal"
+}
diff --git a/MLEB/cldr/i18n/hsb.json b/MLEB/cldr/i18n/hsb.json
new file mode 100644
index 00000000..3bac10ec
--- /dev/null
+++ b/MLEB/cldr/i18n/hsb.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Michawiki"
+ ]
+ },
+ "cldr-desc": "Rožšěrjenje, kotrež lokalizowane mjena rěčow na zakładźe [http://cldr.unicode.org/index/downloads CLDR-datow] k dispoziciji staja."
+}
diff --git a/MLEB/cldr/i18n/hu.json b/MLEB/cldr/i18n/hu.json
new file mode 100644
index 00000000..4e665313
--- /dev/null
+++ b/MLEB/cldr/i18n/hu.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Dani"
+ ]
+ },
+ "cldr-desc": "Lokalizált nyelvneveket szolgáltat a [http://cldr.unicode.org/index/downloads CLDR adatai] alapján"
+}
diff --git a/MLEB/cldr/i18n/ia.json b/MLEB/cldr/i18n/ia.json
new file mode 100644
index 00000000..ce2e61b8
--- /dev/null
+++ b/MLEB/cldr/i18n/ia.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "McDutchie"
+ ]
+ },
+ "cldr-desc": "Extension que forni nomines traducite de linguas a base del [http://cldr.unicode.org/index/downloads datos de CLDR]"
+}
diff --git a/MLEB/cldr/i18n/id.json b/MLEB/cldr/i18n/id.json
new file mode 100644
index 00000000..62d6048e
--- /dev/null
+++ b/MLEB/cldr/i18n/id.json
@@ -0,0 +1,9 @@
+{
+ "@metadata": {
+ "authors": [
+ "IvanLanin",
+ "Rex"
+ ]
+ },
+ "cldr-desc": "Ekstensi yang menyediakan nama bahasa dalam bahasa lokal berdasarkan [http://cldr.unicode.org/index/downloads data CLDR]"
+}
diff --git a/MLEB/cldr/i18n/ig.json b/MLEB/cldr/i18n/ig.json
new file mode 100644
index 00000000..0a2f8a8e
--- /dev/null
+++ b/MLEB/cldr/i18n/ig.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Ukabia"
+ ]
+ },
+ "cldr-desc": "Ogologo né nyé áhà asụsụ nke bi nsó"
+}
diff --git a/MLEB/cldr/i18n/ilo.json b/MLEB/cldr/i18n/ilo.json
new file mode 100644
index 00000000..01d0cdd6
--- /dev/null
+++ b/MLEB/cldr/i18n/ilo.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Lam-ang"
+ ]
+ },
+ "cldr-desc": "Dagiti pagpa-atiddog nga agited lokal a pagsasao a nag-nagan a naibantay iti [http://cldr.unicode.org/index/downloads CLDR data]"
+}
diff --git a/MLEB/cldr/i18n/it.json b/MLEB/cldr/i18n/it.json
new file mode 100644
index 00000000..1db8a142
--- /dev/null
+++ b/MLEB/cldr/i18n/it.json
@@ -0,0 +1,9 @@
+{
+ "@metadata": {
+ "authors": [
+ "Beta16",
+ "Pietrodn"
+ ]
+ },
+ "cldr-desc": "Estensione che fornisce i nomi localizzati delle lingue sulla base dei [http://cldr.unicode.org/index/downloads dati CLDR]"
+}
diff --git a/MLEB/cldr/i18n/ja.json b/MLEB/cldr/i18n/ja.json
new file mode 100644
index 00000000..34b5f1c8
--- /dev/null
+++ b/MLEB/cldr/i18n/ja.json
@@ -0,0 +1,11 @@
+{
+ "@metadata": {
+ "authors": [
+ "Aotake",
+ "JtFuruhata",
+ "Shirayuki",
+ "青子守歌"
+ ]
+ },
+ "cldr-desc": "[http://cldr.unicode.org/index/downloads CLDR データ]に基づいて地域化された言語名を提供する拡張機能"
+}
diff --git a/MLEB/cldr/i18n/jv.json b/MLEB/cldr/i18n/jv.json
new file mode 100644
index 00000000..2ab72812
--- /dev/null
+++ b/MLEB/cldr/i18n/jv.json
@@ -0,0 +1,9 @@
+{
+ "@metadata": {
+ "authors": [
+ "Meursault2004",
+ "NoiX180"
+ ]
+ },
+ "cldr-desc": "Èkstènsi sing nyumadhiyakaké jeneng basa sing dilokalaké adhasar [http://cldr.unicode.org/index/downloads data CLDR]"
+}
diff --git a/MLEB/cldr/i18n/kea.json b/MLEB/cldr/i18n/kea.json
new file mode 100644
index 00000000..45acaef7
--- /dev/null
+++ b/MLEB/cldr/i18n/kea.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Waldir"
+ ]
+ },
+ "cldr-desc": "Extensãu ki ta fornesi nomis di línguas lokalizadu, a partir di [http://cldr.unicode.org/index/downloads dadus di CLDR]"
+}
diff --git a/MLEB/cldr/i18n/km.json b/MLEB/cldr/i18n/km.json
new file mode 100644
index 00000000..86b9d526
--- /dev/null
+++ b/MLEB/cldr/i18n/km.json
@@ -0,0 +1,9 @@
+{
+ "@metadata": {
+ "authors": [
+ "គីមស៊្រុន",
+ "វ័ណថារិទ្ធ"
+ ]
+ },
+ "cldr-desc": "Extension ដែលផ្តល់នូវ​ឈ្មោះ​ជាភាសា​ក្នុងស្រុក​តាម[http://cldr.unicode.org/index/downloads ទិន្នន័យCLDR]"
+}
diff --git a/MLEB/cldr/i18n/ko.json b/MLEB/cldr/i18n/ko.json
new file mode 100644
index 00000000..80ca3a36
--- /dev/null
+++ b/MLEB/cldr/i18n/ko.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Kwj2772"
+ ]
+ },
+ "cldr-desc": "[http://cldr.unicode.org/index/downloads CLDR 데이터]에 따라 한 언어로 번역된 언어 이름을 제공하는 확장 기능"
+}
diff --git a/MLEB/cldr/i18n/ksh.json b/MLEB/cldr/i18n/ksh.json
new file mode 100644
index 00000000..800fb066
--- /dev/null
+++ b/MLEB/cldr/i18n/ksh.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Purodha"
+ ]
+ },
+ "cldr-desc": "Brengk ettlijje Name för Shprooche op ettlijje Shprooche en et Wiki, opjebout op dem [http://cldr.unicode.org/index/downloads CLDR sing Daate]."
+}
diff --git a/MLEB/cldr/i18n/lb.json b/MLEB/cldr/i18n/lb.json
new file mode 100644
index 00000000..cd98d186
--- /dev/null
+++ b/MLEB/cldr/i18n/lb.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Robby"
+ ]
+ },
+ "cldr-desc": "Erweiderung déi iwwersate Sproochennimm op der Basis vun [http://cldr.unicode.org/index/downloads CLDR data] zur Verfügung stellt"
+}
diff --git a/MLEB/cldr/i18n/lg.json b/MLEB/cldr/i18n/lg.json
new file mode 100644
index 00000000..81795959
--- /dev/null
+++ b/MLEB/cldr/i18n/lg.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Kizito"
+ ]
+ },
+ "cldr-desc": "Kino kyongezebwako ekireetamu amannya agavvuunulidwa mu nnimi nnansi"
+}
diff --git a/MLEB/cldr/i18n/li.json b/MLEB/cldr/i18n/li.json
new file mode 100644
index 00000000..e4b2ba19
--- /dev/null
+++ b/MLEB/cldr/i18n/li.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Pahles"
+ ]
+ },
+ "cldr-desc": "Oetbreiding die euverzatte name van tale beejt"
+}
diff --git a/MLEB/cldr/i18n/lt.json b/MLEB/cldr/i18n/lt.json
new file mode 100644
index 00000000..6efd0c4c
--- /dev/null
+++ b/MLEB/cldr/i18n/lt.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Matasg"
+ ]
+ },
+ "cldr-desc": "Priedas leidžiantis rodyti lokalizuotus kalbų pavadinimus"
+}
diff --git a/MLEB/cldr/i18n/lv.json b/MLEB/cldr/i18n/lv.json
new file mode 100644
index 00000000..3158759e
--- /dev/null
+++ b/MLEB/cldr/i18n/lv.json
@@ -0,0 +1,9 @@
+{
+ "@metadata": {
+ "authors": [
+ "Papuass",
+ "Xil"
+ ]
+ },
+ "cldr-desc": "Paplašinājums, kurš piedāvā lokalizētus valodu nosaukumus, izmantojot [http://cldr.unicode.org/index/downloads CLDR datus]"
+}
diff --git a/MLEB/cldr/i18n/mg.json b/MLEB/cldr/i18n/mg.json
new file mode 100644
index 00000000..4dd737a2
--- /dev/null
+++ b/MLEB/cldr/i18n/mg.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Jagwar"
+ ]
+ },
+ "cldr-desc": "Fanitarana manome ny anaram-piteny voadika, mifototra amin'ny [http://cldr.unicode.org/index/downloads fampahalalàna omen'ny CLDR]"
+}
diff --git a/MLEB/cldr/i18n/mk.json b/MLEB/cldr/i18n/mk.json
new file mode 100644
index 00000000..fc1fc467
--- /dev/null
+++ b/MLEB/cldr/i18n/mk.json
@@ -0,0 +1,9 @@
+{
+ "@metadata": {
+ "authors": [
+ "Bjankuloski06",
+ "Brest"
+ ]
+ },
+ "cldr-desc": "Додаток кој дава преведени имиња на јазиците, врз онснова на [http://cldr.unicode.org/index/downloads податоците од CLDR]"
+}
diff --git a/MLEB/cldr/i18n/ml.json b/MLEB/cldr/i18n/ml.json
new file mode 100644
index 00000000..f86fe24e
--- /dev/null
+++ b/MLEB/cldr/i18n/ml.json
@@ -0,0 +1,9 @@
+{
+ "@metadata": {
+ "authors": [
+ "Praveenp",
+ "Shijualex"
+ ]
+ },
+ "cldr-desc": "പ്രാദേശികവൽക്കരിക്കപ്പെട്ട നാമങ്ങൾ ഉപയോഗിക്കുവാൻ സഹായിക്കുന്ന [http://cldr.unicode.org/index/downloads സി.എൽ.ഡി.ആർ. ഡേറ്റ] അടിസ്ഥാനമാക്കിയ എക്സ്റ്റെൻഷൻ"
+}
diff --git a/MLEB/cldr/i18n/mr.json b/MLEB/cldr/i18n/mr.json
new file mode 100644
index 00000000..5c948230
--- /dev/null
+++ b/MLEB/cldr/i18n/mr.json
@@ -0,0 +1,10 @@
+{
+ "@metadata": {
+ "authors": [
+ "Htt",
+ "Mahitgar",
+ "V.narsikar"
+ ]
+ },
+ "cldr-desc": "[http://cldr.unicode.org/index/downloads CLDR data यावर] \nआधारीत स्थानिकीकरण झालेल्या भाषेचे नाव देणारा विस्तारक"
+}
diff --git a/MLEB/cldr/i18n/ms.json b/MLEB/cldr/i18n/ms.json
new file mode 100644
index 00000000..b316883c
--- /dev/null
+++ b/MLEB/cldr/i18n/ms.json
@@ -0,0 +1,9 @@
+{
+ "@metadata": {
+ "authors": [
+ "Anakmalaysia",
+ "Zamwan"
+ ]
+ },
+ "cldr-desc": "ambungan yang menyediakan nama-nama bahasa setempat berasaskan [http://cldr.unicode.org/index/downloads data CLDR]"
+}
diff --git a/MLEB/cldr/i18n/mt.json b/MLEB/cldr/i18n/mt.json
new file mode 100644
index 00000000..431ffbab
--- /dev/null
+++ b/MLEB/cldr/i18n/mt.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Chrisportelli"
+ ]
+ },
+ "cldr-desc": "Estensjoni li tipprovdi l-ismijiet lokalizzati tal-lingwi abbażi tad-[http://cldr.unicode.org/index/downloads dejta CLDR]"
+}
diff --git a/MLEB/cldr/i18n/nb.json b/MLEB/cldr/i18n/nb.json
new file mode 100644
index 00000000..b43fae7d
--- /dev/null
+++ b/MLEB/cldr/i18n/nb.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Nghtwlkr"
+ ]
+ },
+ "cldr-desc": "Utvidelse som gir lokaliserte språknavn basert på [http://cldr.unicode.org/index/downloads CLDR-data]"
+}
diff --git a/MLEB/cldr/i18n/nds-nl.json b/MLEB/cldr/i18n/nds-nl.json
new file mode 100644
index 00000000..99d063b5
--- /dev/null
+++ b/MLEB/cldr/i18n/nds-nl.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Servien"
+ ]
+ },
+ "cldr-desc": "Uutbreiding die vertaalden namen van talen biejt ebaseerd op [http://cldr.unicode.org/index/downloads CLDR-gegevens]"
+}
diff --git a/MLEB/cldr/i18n/nds.json b/MLEB/cldr/i18n/nds.json
new file mode 100644
index 00000000..a1f199aa
--- /dev/null
+++ b/MLEB/cldr/i18n/nds.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Slomox"
+ ]
+ },
+ "cldr-desc": "Verlöövt dat Bruken vun översett Naams vun Spraken"
+}
diff --git a/MLEB/cldr/i18n/ne.json b/MLEB/cldr/i18n/ne.json
new file mode 100644
index 00000000..5ab05621
--- /dev/null
+++ b/MLEB/cldr/i18n/ne.json
@@ -0,0 +1,10 @@
+{
+ "@metadata": {
+ "authors": [
+ "Bhawani Gautam",
+ "Bhawani Gautam Rhk",
+ "सरोज कुमार ढकाल"
+ ]
+ },
+ "cldr-desc": "विस्तार जसले [http://cldr.unicode.org/index/downloads CLDR data] आधारमा स्थानीयकृत भाषा-नामहरु प्रदान गर्दछ"
+}
diff --git a/MLEB/cldr/i18n/nl.json b/MLEB/cldr/i18n/nl.json
new file mode 100644
index 00000000..a080e6d4
--- /dev/null
+++ b/MLEB/cldr/i18n/nl.json
@@ -0,0 +1,9 @@
+{
+ "@metadata": {
+ "authors": [
+ "SPQRobin",
+ "Siebrand"
+ ]
+ },
+ "cldr-desc": "Uitbreiding die vertaalde namen van talen biedt gebaseerd op [http://cldr.unicode.org/index/downloads CLDR-gegevens]"
+}
diff --git a/MLEB/cldr/i18n/nn.json b/MLEB/cldr/i18n/nn.json
new file mode 100644
index 00000000..cc178082
--- /dev/null
+++ b/MLEB/cldr/i18n/nn.json
@@ -0,0 +1,9 @@
+{
+ "@metadata": {
+ "authors": [
+ "Harald Khan",
+ "Jeblad"
+ ]
+ },
+ "cldr-desc": "Utviding som gjev omsette språknamn basert på [http://cldr.unicode.org/index/downloads CLDR-data]"
+}
diff --git a/MLEB/cldr/i18n/oc.json b/MLEB/cldr/i18n/oc.json
new file mode 100644
index 00000000..4dfbc954
--- /dev/null
+++ b/MLEB/cldr/i18n/oc.json
@@ -0,0 +1,9 @@
+{
+ "@metadata": {
+ "authors": [
+ "Boulaur",
+ "Cedric31"
+ ]
+ },
+ "cldr-desc": "Extension que provesís lo nom de las lengas disponiblas"
+}
diff --git a/MLEB/cldr/i18n/or.json b/MLEB/cldr/i18n/or.json
new file mode 100644
index 00000000..9b136f2e
--- /dev/null
+++ b/MLEB/cldr/i18n/or.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Psubhashish"
+ ]
+ },
+ "cldr-desc": "[http://cldr.unicode.org/index/downloads CLDR ତଥ୍ୟ] ଅନୁସାରେ ଯେଉଁ ଏକ୍ସଟେନସନ ଆଞ୍ଚଳିକ ଭାଷାର ନାମ ସବୁ ଦେଇଥାଏ"
+}
diff --git a/MLEB/cldr/i18n/pl.json b/MLEB/cldr/i18n/pl.json
new file mode 100644
index 00000000..f2afb21a
--- /dev/null
+++ b/MLEB/cldr/i18n/pl.json
@@ -0,0 +1,9 @@
+{
+ "@metadata": {
+ "authors": [
+ "Masti",
+ "Sp5uhe"
+ ]
+ },
+ "cldr-desc": "Rozszerzenie dodające zlokalizowane nazwy języków w oparciu o [http://cldr.unicode.org/index/downloads dane CLDR]"
+}
diff --git a/MLEB/cldr/i18n/pms.json b/MLEB/cldr/i18n/pms.json
new file mode 100644
index 00000000..f70e9c2b
--- /dev/null
+++ b/MLEB/cldr/i18n/pms.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Dragonòt"
+ ]
+ },
+ "cldr-desc": "Estension che a dà ij nòm localisà dle lenghe basà an sij [http://cldr.unicode.org/index/downloads dat CLDR]"
+}
diff --git a/MLEB/cldr/i18n/pt-br.json b/MLEB/cldr/i18n/pt-br.json
new file mode 100644
index 00000000..1814d9e3
--- /dev/null
+++ b/MLEB/cldr/i18n/pt-br.json
@@ -0,0 +1,9 @@
+{
+ "@metadata": {
+ "authors": [
+ "Eduardo.mps",
+ "Waldir"
+ ]
+ },
+ "cldr-desc": "Extensão que provê nomes de línguas localizados, com base em [http://cldr.unicode.org/index/downloads dados do CLDR]"
+}
diff --git a/MLEB/cldr/i18n/pt.json b/MLEB/cldr/i18n/pt.json
new file mode 100644
index 00000000..b26bf73c
--- /dev/null
+++ b/MLEB/cldr/i18n/pt.json
@@ -0,0 +1,10 @@
+{
+ "@metadata": {
+ "authors": [
+ "Hamilton Abreu",
+ "Malafaya",
+ "Waldir"
+ ]
+ },
+ "cldr-desc": "Extensão que fornece nomes de língua localizados, com base em [http://cldr.unicode.org/index/downloads dados do CLDR]"
+}
diff --git a/MLEB/cldr/i18n/qqq.json b/MLEB/cldr/i18n/qqq.json
new file mode 100644
index 00000000..d8e52cee
--- /dev/null
+++ b/MLEB/cldr/i18n/qqq.json
@@ -0,0 +1,10 @@
+{
+ "@metadata": {
+ "authors": [
+ "Purodha",
+ "Shirayuki",
+ "The Evil IP address"
+ ]
+ },
+ "cldr-desc": "{{desc|name=cldr|url=http://www.mediawiki.org/wiki/Extension:CLDR}}"
+}
diff --git a/MLEB/cldr/i18n/ro.json b/MLEB/cldr/i18n/ro.json
new file mode 100644
index 00000000..595cadf4
--- /dev/null
+++ b/MLEB/cldr/i18n/ro.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "KlaudiuMihaila"
+ ]
+ },
+ "cldr-desc": "Extensie care oferă nume de limbi localizate pe baza [http://cldr.unicode.org/index/downloads datelor CLDR]"
+}
diff --git a/MLEB/cldr/i18n/roa-tara.json b/MLEB/cldr/i18n/roa-tara.json
new file mode 100644
index 00000000..8aca4bb1
--- /dev/null
+++ b/MLEB/cldr/i18n/roa-tara.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Joetaras"
+ ]
+ },
+ "cldr-desc": "Estenzione ca dè le nome de lenghe localizzate conzideranne [http://cldr.unicode.org/index/le scaricaminde de date CLDR]"
+}
diff --git a/MLEB/cldr/i18n/ru.json b/MLEB/cldr/i18n/ru.json
new file mode 100644
index 00000000..f79f8613
--- /dev/null
+++ b/MLEB/cldr/i18n/ru.json
@@ -0,0 +1,9 @@
+{
+ "@metadata": {
+ "authors": [
+ "Eleferen",
+ "Александр Сигачёв"
+ ]
+ },
+ "cldr-desc": "Расширение, предоставляющее переводы названий языков на основе [http://cldr.unicode.org/index/downloads данных CLDR]"
+}
diff --git a/MLEB/cldr/i18n/rue.json b/MLEB/cldr/i18n/rue.json
new file mode 100644
index 00000000..d6dcb8e3
--- /dev/null
+++ b/MLEB/cldr/i18n/rue.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Gazeb"
+ ]
+ },
+ "cldr-desc": "Росшырїня забезпечуюче локалізованы назвы языків з поужытём [http://cldr.unicode.org/index/downloads дат CLDR]"
+}
diff --git a/MLEB/cldr/i18n/sah.json b/MLEB/cldr/i18n/sah.json
new file mode 100644
index 00000000..a01ce0b6
--- /dev/null
+++ b/MLEB/cldr/i18n/sah.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "HalanTul"
+ ]
+ },
+ "cldr-desc": "[http://cldr.unicode.org/index/downloads CLDR-га] олоҕуран тыллар ааттарын тылбааһын көрдөрөр тупсарыы"
+}
diff --git a/MLEB/cldr/i18n/sco.json b/MLEB/cldr/i18n/sco.json
new file mode 100644
index 00000000..2ddefac9
--- /dev/null
+++ b/MLEB/cldr/i18n/sco.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "John Reid"
+ ]
+ },
+ "cldr-desc": "Extension that provides localised leid names based oan [http://cldr.unicode.org/index/downloads CLDR data]"
+}
diff --git a/MLEB/cldr/i18n/sk.json b/MLEB/cldr/i18n/sk.json
new file mode 100644
index 00000000..44519ba2
--- /dev/null
+++ b/MLEB/cldr/i18n/sk.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Helix84"
+ ]
+ },
+ "cldr-desc": "Rozšírenie, ktoré poskytuje lokalizované názvy jazykov na základe [http://cldr.unicode.org/index/downloads údajov CLDR]"
+}
diff --git a/MLEB/cldr/i18n/sl.json b/MLEB/cldr/i18n/sl.json
new file mode 100644
index 00000000..7e73fad0
--- /dev/null
+++ b/MLEB/cldr/i18n/sl.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Dbc334"
+ ]
+ },
+ "cldr-desc": "Razširitev, ki nudi domača imena jezikov, temelječa na [http://cldr.unicode.org/index/downloads podatkih CLDR]"
+}
diff --git a/MLEB/cldr/i18n/sli.json b/MLEB/cldr/i18n/sli.json
new file mode 100644
index 00000000..87afaa86
--- /dev/null
+++ b/MLEB/cldr/i18n/sli.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Jonny84"
+ ]
+ },
+ "cldr-desc": "Unterstützung fier lokalisierte Sproachanoama"
+}
diff --git a/MLEB/cldr/i18n/sq.json b/MLEB/cldr/i18n/sq.json
new file mode 100644
index 00000000..0f5f9ef7
--- /dev/null
+++ b/MLEB/cldr/i18n/sq.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Puntori"
+ ]
+ },
+ "cldr-desc": "Shtesë që paraqet emrat lokal të gjuhëve"
+}
diff --git a/MLEB/cldr/i18n/sr-ec.json b/MLEB/cldr/i18n/sr-ec.json
new file mode 100644
index 00000000..51e021bc
--- /dev/null
+++ b/MLEB/cldr/i18n/sr-ec.json
@@ -0,0 +1,9 @@
+{
+ "@metadata": {
+ "authors": [
+ "Rancher",
+ "Михајло Анђелковић"
+ ]
+ },
+ "cldr-desc": "Проширење које омогућава преведене називе језика засновано је на [http://cldr.unicode.org/index/downloads CLDR подацима]"
+}
diff --git a/MLEB/cldr/i18n/sr-el.json b/MLEB/cldr/i18n/sr-el.json
new file mode 100644
index 00000000..5bda0fda
--- /dev/null
+++ b/MLEB/cldr/i18n/sr-el.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Michaello"
+ ]
+ },
+ "cldr-desc": "Proširenje koje omogućava prevedene nazive jezika zasnovano je na [http://cldr.unicode.org/index/downloads CLDR podacima]"
+}
diff --git a/MLEB/cldr/i18n/stq.json b/MLEB/cldr/i18n/stq.json
new file mode 100644
index 00000000..55eab156
--- /dev/null
+++ b/MLEB/cldr/i18n/stq.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Pyt"
+ ]
+ },
+ "cldr-desc": "Moaket ju Unnerstutsenge muugelk fon internationalisierde Sproakennoomen uut dät [http://cldr.unicode.org/index „Common Locale Data Repository“ (CLDR)]"
+}
diff --git a/MLEB/cldr/i18n/su.json b/MLEB/cldr/i18n/su.json
new file mode 100644
index 00000000..fcd23f96
--- /dev/null
+++ b/MLEB/cldr/i18n/su.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Irwangatot"
+ ]
+ },
+ "cldr-desc": "Éksténsi anu nyadiakeun lokalisasi ngaran basa"
+}
diff --git a/MLEB/cldr/i18n/sv.json b/MLEB/cldr/i18n/sv.json
new file mode 100644
index 00000000..2f9f7742
--- /dev/null
+++ b/MLEB/cldr/i18n/sv.json
@@ -0,0 +1,11 @@
+{
+ "@metadata": {
+ "authors": [
+ "Ainali",
+ "Lejonel",
+ "M.M.S.",
+ "Rotsee"
+ ]
+ },
+ "cldr-desc": "Tillägg som ger översatta språknamn baserade på [http://cldr.unicode.org/index/downloads CLDR-data]"
+}
diff --git a/MLEB/cldr/i18n/te.json b/MLEB/cldr/i18n/te.json
new file mode 100644
index 00000000..a01a3cf7
--- /dev/null
+++ b/MLEB/cldr/i18n/te.json
@@ -0,0 +1,9 @@
+{
+ "@metadata": {
+ "authors": [
+ "Veeven",
+ "Kiranmayee"
+ ]
+ },
+ "cldr-desc": "[http://cldr.unicode.org/index/downloads CLDR డాటా] ఆధారంగా స్థానికీకరించిన భాషల పేర్లను అందించే పొడగింత"
+}
diff --git a/MLEB/cldr/i18n/tg-cyrl.json b/MLEB/cldr/i18n/tg-cyrl.json
new file mode 100644
index 00000000..583c8ffe
--- /dev/null
+++ b/MLEB/cldr/i18n/tg-cyrl.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Ibrahim"
+ ]
+ },
+ "cldr-desc": "Афзунае, ки номҳои маҳалликунонидашудаи забонҳоро пешкаш мекунад"
+}
diff --git a/MLEB/cldr/i18n/tg-latn.json b/MLEB/cldr/i18n/tg-latn.json
new file mode 100644
index 00000000..1c0b0892
--- /dev/null
+++ b/MLEB/cldr/i18n/tg-latn.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Liangent"
+ ]
+ },
+ "cldr-desc": "Afzunae, ki nomhoi mahallikunonidaşudai zabonhoro peşkaş mekunad"
+}
diff --git a/MLEB/cldr/i18n/tl.json b/MLEB/cldr/i18n/tl.json
new file mode 100644
index 00000000..d6c28269
--- /dev/null
+++ b/MLEB/cldr/i18n/tl.json
@@ -0,0 +1,9 @@
+{
+ "@metadata": {
+ "authors": [
+ "AnakngAraw",
+ "Sky Harbor"
+ ]
+ },
+ "cldr-desc": "Dugtong na nagbibigay ng mga lokalisadong pangalan ng wika batay sa [http://cldr.unicode.org/index/downloads datos ng CLDR]"
+}
diff --git a/MLEB/cldr/i18n/tr.json b/MLEB/cldr/i18n/tr.json
new file mode 100644
index 00000000..6f399982
--- /dev/null
+++ b/MLEB/cldr/i18n/tr.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Joseph"
+ ]
+ },
+ "cldr-desc": "[http://cldr.unicode.org/index/downloads CLDR verisi] tabanlı yerelleştirilmiş dil isimlerini sağlayan eklenti"
+}
diff --git a/MLEB/cldr/i18n/ug-arab.json b/MLEB/cldr/i18n/ug-arab.json
new file mode 100644
index 00000000..88598873
--- /dev/null
+++ b/MLEB/cldr/i18n/ug-arab.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Sahran"
+ ]
+ },
+ "cldr-desc": "[http://cldr.unicode.org/index/downloads CLDR سانلىق مەلۇماتى] ئاساسىدا يەرلىكلەشتۈرۈلگەن تىل ئاتى كېڭەيتىلمىسى."
+}
diff --git a/MLEB/cldr/i18n/ug.json b/MLEB/cldr/i18n/ug.json
new file mode 100644
index 00000000..6c015395
--- /dev/null
+++ b/MLEB/cldr/i18n/ug.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Sahran"
+ ]
+ },
+ "cldr-desc": "يەرلىكلەشتۈرۈلگەن تىل ئاتى كېينرەك تەمىنلىنىدۇ"
+} \ No newline at end of file
diff --git a/MLEB/cldr/i18n/uk.json b/MLEB/cldr/i18n/uk.json
new file mode 100644
index 00000000..6f9b6c60
--- /dev/null
+++ b/MLEB/cldr/i18n/uk.json
@@ -0,0 +1,9 @@
+{
+ "@metadata": {
+ "authors": [
+ "Ahonc",
+ "Тест"
+ ]
+ },
+ "cldr-desc": "Розширення, яке забезпечує локалізовані назви мов на основі [http://cldr.unicode.org/index/downloads даних CLDR]"
+}
diff --git a/MLEB/cldr/i18n/vec.json b/MLEB/cldr/i18n/vec.json
new file mode 100644
index 00000000..ea1052ea
--- /dev/null
+++ b/MLEB/cldr/i18n/vec.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Candalua"
+ ]
+ },
+ "cldr-desc": "Estension che fornisse i nomi localizà de le varie lengue"
+}
diff --git a/MLEB/cldr/i18n/vep.json b/MLEB/cldr/i18n/vep.json
new file mode 100644
index 00000000..150bcd7f
--- /dev/null
+++ b/MLEB/cldr/i18n/vep.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Игорь Бродский"
+ ]
+ },
+ "cldr-desc": "Liža, kudamb andab keliden nimiden kändused [http://cldr.unicode.org/index/downloads CLDR-andmusiden] pohjal."
+}
diff --git a/MLEB/cldr/i18n/vi.json b/MLEB/cldr/i18n/vi.json
new file mode 100644
index 00000000..6551b5bb
--- /dev/null
+++ b/MLEB/cldr/i18n/vi.json
@@ -0,0 +1,9 @@
+{
+ "@metadata": {
+ "authors": [
+ "Minh Nguyen",
+ "Vinhtantran"
+ ]
+ },
+ "cldr-desc": "Phần mở rộng cung cấp các tên ngôn ngữ bản ngữ dựa trên [http://cldr.unicode.org/index/downloads dữ liệu CLDR]"
+}
diff --git a/MLEB/cldr/i18n/vo.json b/MLEB/cldr/i18n/vo.json
new file mode 100644
index 00000000..81dc2354
--- /dev/null
+++ b/MLEB/cldr/i18n/vo.json
@@ -0,0 +1,9 @@
+{
+ "@metadata": {
+ "authors": [
+ "Malafaya",
+ "Smeira"
+ ]
+ },
+ "cldr-desc": "Veitükumam, kel gevon pükanemis topik bai [http://cldr.unicode.org/index/downloads nüns ela CLDR]"
+}
diff --git a/MLEB/cldr/i18n/yi.json b/MLEB/cldr/i18n/yi.json
new file mode 100644
index 00000000..e750ea96
--- /dev/null
+++ b/MLEB/cldr/i18n/yi.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "פוילישער"
+ ]
+ },
+ "cldr-desc": "פארברייטערונג וואס פארזארגט שפראכן נעמען באזירט אויף [http://cldr.unicode.org/index/downloads CLDR דאטן]"
+}
diff --git a/MLEB/cldr/i18n/yue.json b/MLEB/cldr/i18n/yue.json
new file mode 100644
index 00000000..e1f585c0
--- /dev/null
+++ b/MLEB/cldr/i18n/yue.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Shinjiman"
+ ]
+ },
+ "cldr-desc": "提供本地化名嘅擴展"
+}
diff --git a/MLEB/cldr/i18n/zh-hans.json b/MLEB/cldr/i18n/zh-hans.json
new file mode 100644
index 00000000..9b401e36
--- /dev/null
+++ b/MLEB/cldr/i18n/zh-hans.json
@@ -0,0 +1,9 @@
+{
+ "@metadata": {
+ "authors": [
+ "Alex S.H. Lin",
+ "PhiLiP"
+ ]
+ },
+ "cldr-desc": "基于[http://cldr.unicode.org/index/downloads CLDR数据]提供本地化语言名称的扩展。"
+}
diff --git a/MLEB/cldr/i18n/zh-hant.json b/MLEB/cldr/i18n/zh-hant.json
new file mode 100644
index 00000000..5b4423d3
--- /dev/null
+++ b/MLEB/cldr/i18n/zh-hant.json
@@ -0,0 +1,10 @@
+{
+ "@metadata": {
+ "authors": [
+ "Alex S.H. Lin",
+ "Anakmalaysia",
+ "Cwlin0416"
+ ]
+ },
+ "cldr-desc": "可依據 [http://cldr.unicode.org/index/downloads CLDR 資料] 來辨識當地語言名稱的擴充套件"
+}
diff --git a/MLEB/cldr/rebuild.php b/MLEB/cldr/rebuild.php
new file mode 100644
index 00000000..51c37afb
--- /dev/null
+++ b/MLEB/cldr/rebuild.php
@@ -0,0 +1,456 @@
+<?php
+
+/**
+ * Extract data from cldr XML.
+ *
+ * @author Niklas Laxström
+ * @author Ryan Kaldari
+ * @author Santhosh Thottingal
+ * @author Sam Reed
+ * @copyright Copyright © 2007-2013
+ * @license http://www.gnu.org/copyleft/gpl.html GNU General Public License 2.0 or later
+ */
+
+// Standard boilerplate to define $IP
+if ( getenv( 'MW_INSTALL_PATH' ) !== false ) {
+ $IP = getenv( 'MW_INSTALL_PATH' );
+} else {
+ $dir = __DIR__;
+ $IP = "$dir/../..";
+}
+require_once "$IP/maintenance/Maintenance.php";
+
+class CLDRRebuild extends Maintenance {
+
+ public function __construct() {
+ parent::__construct();
+ $this->addDescription( 'Extract data from CLDR XML' );
+ $this->addOption(
+ 'datadir', 'Directory containing CLDR data. Default is core/common/main',
+ /* required */ false,
+ /* param */ true
+ );
+ $this->addOption(
+ 'outputdir', 'Output directory. Default is current directory',
+ /* required */ false,
+ /* param */ true
+ );
+ }
+
+ public function execute() {
+ $dir = __DIR__;
+ require_once "$dir/cldr.php";
+
+ $DATA = $this->getOption( 'datadir', "$dir/core/common/main" );
+ $OUTPUT = $this->getOption( 'outputdir', $dir );
+
+ if ( !file_exists( $DATA ) ) {
+ $this->error( "CLDR data not found at $DATA\n", 1 );
+ }
+
+ // Get an array of all MediaWiki languages ( $wgLanguageNames + $wgExtraLanguageNames )
+ $languages = Language::fetchLanguageNames();
+ # hack to get pt-pt too
+ $languages['pt-pt'] = 'Foo';
+ ksort( $languages );
+
+ foreach ( $languages as $code => $name ) {
+
+ // Construct the correct name for the input file
+ unset( $codeParts );
+ $codeParts = explode( '-', $code );
+ if ( count( $codeParts ) > 1 ) {
+
+ // ISO 15924 alpha-4 script code
+ if ( strlen( $codeParts[1] ) == 4 ) {
+ $codeParts[1] = ucfirst( $codeParts[1] );
+ }
+
+ // ISO 3166-1 alpha-2 country code
+ if ( strlen( $codeParts[1] ) == 2 ) {
+ $codeParts[2] = $codeParts[1];
+ unset( $codeParts[1] );
+ }
+ if ( isset( $codeParts[2] ) && strlen( $codeParts[2] ) == 2 ) {
+ $codeParts[2] = strtoupper( $codeParts[2] );
+ }
+ $codeCLDR = implode( '_', $codeParts );
+ } else {
+ $codeCLDR = $code;
+ }
+ $input = "$DATA/$codeCLDR.xml";
+
+ // If the file exists, parse it, otherwise display an error
+ if ( file_exists( $input ) ) {
+ $outputFileName = Language::getFileName( "CldrNames", getRealCode( $code ), '.php' );
+ $p = new CLDRParser();
+ $p->parse( $input, "$OUTPUT/CldrNames/$outputFileName" );
+ } else {
+ $this->output( "File $input not found\n" );
+ }
+ }
+
+ // Now parse out what we want form the supplemental file
+ $this->output( "Parsing Supplemental Data...\n" );
+ // argh! If $DATA defaulted to something slightly more general in the
+ // CLDR dump, this wouldn't have to be this way.
+ $input = "$DATA/../supplemental/supplementalData.xml";
+ if ( file_exists( $input ) ) {
+ $p = new CLDRParser();
+ $p->parse_supplemental( $input, "$OUTPUT/CldrSupplemental/Supplemental.php" );
+ } else {
+ $this->output( "File $input not found\n" );
+ }
+ $this->output( "Done parsing supplemental data.\n" );
+
+ $this->output( "Parsing Currency Symbol Data...\n" );
+ $p = new CLDRParser();
+ $p->parse_currency_symbols( $DATA, "$OUTPUT/CldrCurrency/Symbols.php" );
+ $this->output( "Done parsing currency symbols.\n" );
+ }
+}
+
+class CLDRParser {
+
+ /**
+ * @param string $inputFile filename
+ * @param string $outputFile filename
+ */
+ function parse( $inputFile, $outputFile ) {
+ // Open the input file for reading
+
+ $contents = file_get_contents( $inputFile );
+ $doc = new SimpleXMLElement( $contents );
+
+ $data = array(
+ 'languageNames' => array(),
+ 'currencyNames' => array(),
+ 'currencySymbols' => array(),
+ 'countryNames' => array(),
+ 'timeUnits' => array(),
+ );
+
+ foreach ( $doc->xpath( '//languages/language' ) as $elem ) {
+ if ( (string)$elem['alt'] !== '' ) {
+ continue;
+ }
+
+ if ( (string)$elem['type'] === 'root' ) {
+ continue;
+ }
+
+ $key = str_replace( '_', '-', strtolower( $elem['type'] ) );
+
+ $data['languageNames'][$key] = (string)$elem;
+ }
+
+ foreach ( $doc->xpath( '//currencies/currency' ) as $elem ) {
+ if ( (string)$elem->displayName[0] === '' ) {
+ continue;
+ }
+
+ $data['currencyNames'][(string)$elem['type']] = (string)$elem->displayName[0];
+ if ( (string)$elem->symbol[0] !== '' ) {
+ $data['currencySymbols'][(string)$elem['type']] = (string)$elem->symbol[0];
+ }
+ }
+
+ foreach ( $doc->xpath( '//territories/territory' ) as $elem ) {
+ if ( (string)$elem['alt'] !== '' && (string)$elem['alt'] !== 'short' ) {
+ continue;
+ }
+
+ if ( (string)$elem['type'] === 'ZZ' ||
+ !preg_match( '/^[A-Z][A-Z]$/', $elem['type'] )
+ ) {
+ continue;
+ }
+
+ $data['countryNames'][(string)$elem['type']] = (string)$elem;
+ }
+ foreach ( $doc->xpath( '//units/unitLength' ) as $unitLength ) {
+ if ( (string)$unitLength['type'] !== 'long' ) {
+ continue;
+ }
+ foreach ( $unitLength->unit as $elem ) {
+ $type = (string)$elem['type'];
+ $pos = strpos( $type, 'duration' );
+ if ( $pos === false ) {
+ continue;
+ }
+ $type = substr( $type, strlen( 'duration-' ) );
+ foreach ( $elem->unitPattern as $pattern ) {
+ $data['timeUnits'][$type . '-' . (string)$pattern['count']] = (string)$pattern;
+ }
+ }
+ }
+ foreach ( $doc->xpath( '//fields/field' ) as $field ) {
+ $fieldType = (string)$field['type'];
+
+ foreach ( $field->relativeTime as $relative ) {
+ $type = (string)$relative['type'];
+ foreach ( $relative->relativeTimePattern as $pattern ) {
+ $data['timeUnits'][$fieldType . '-' . $type
+ . '-' . (string)$pattern['count']] = (string)$pattern;
+ }
+ }
+ }
+ ksort( $data['timeUnits'] );
+
+ $this->savephp( $data, $outputFile );
+ }
+
+ /**
+ * Parse method for the file structure found in common/supplemental/supplementalData.xml
+ * @param string $inputFile
+ * @param string $outputFile
+ */
+ function parse_supplemental( $inputFile, $outputFile ) {
+ // Open the input file for reading
+
+ $contents = file_get_contents( $inputFile );
+ $doc = new SimpleXMLElement( $contents );
+
+ $data = array(
+ 'currencyFractions' => array(),
+ 'localeCurrencies' => array(),
+ );
+
+ // Pull currency attributes - digits, rounding, and cashRounding.
+ // This will tell us how many decmal places make sense to use with any currency,
+ // or if the currency is totally non-fractional
+ foreach ( $doc->xpath( '//currencyData/fractions/info' ) as $elem ) {
+ if ( (string)$elem['iso4217'] === '' ) {
+ continue;
+ }
+
+ $attributes = array( 'digits', 'rounding', 'cashRounding' );
+ foreach ( $attributes as $att ) {
+ if ( (string)$elem[$att] !== '' ) {
+ $data['currencyFractions'][(string)$elem['iso4217']][$att] = (string)$elem[$att];
+ }
+ }
+ }
+
+ // Pull a map of regions to currencies in order of perference.
+ foreach ( $doc->xpath( '//currencyData/region' ) as $elem ) {
+ if ( (string)$elem['iso3166'] === '' ) {
+ continue;
+ }
+
+ $region = (string)$elem['iso3166'];
+
+ foreach ( $elem->currency as $currencynode ) {
+ if ( (string)$currencynode['to'] === '' && (string)$currencynode['tender'] !== 'false' ) {
+ $data['localeCurrencies'][$region][] = (string)$currencynode['iso4217'];
+ }
+ }
+ }
+
+ $this->savephp( $data, $outputFile );
+ }
+
+ /**
+ * Parse method for the currency section in the names files.
+ * This is separate from the regular parse function, because we need all of
+ * the currency locale information, even if mediawiki doesn't support the language.
+ * (For instance: en_AU uses '$' for AUD, not USD, but it's not a supported mediawiki locality)
+ * @param string $inputDir - the directory, in which we will parse everything.
+ * @param string $outputFile
+ */
+ function parse_currency_symbols( $inputDir, $outputFile ) {
+ if ( !file_exists( $inputDir ) ) {
+ return;
+ }
+ $files = scandir( $inputDir );
+
+ $data = array(
+ 'currencySymbols' => array(),
+ );
+
+ // Foreach files!
+ foreach ( $files as $inputFile ) {
+ if ( strpos( $inputFile, '.xml' ) < 1 ) {
+ continue;
+ }
+
+ $contents = file_get_contents( $inputDir . '/' . $inputFile );
+ $doc = new SimpleXMLElement( $contents );
+
+ foreach ( $doc->xpath( '//identity' ) as $elem ) {
+ $language = (string)$elem->language['type'];
+ if ( $language === '' ) {
+ continue;
+ }
+
+ $territory = (string)$elem->territory['type'];
+ if ( $territory === '' ) {
+ $territory = 'DEFAULT';
+ }
+ }
+
+ foreach ( $doc->xpath( '//currencies/currency' ) as $elem ) {
+ if ( (string)$elem->symbol[0] !== '' ) {
+ $data['currencySymbols'][(string)$elem['type']][$language][$territory] =
+ (string)$elem->symbol[0];
+ }
+ }
+ }
+
+ // now massage the data somewhat. It's pretty blown up at this point.
+
+ /**
+ * Part 1: Stop blowing up on defaults.
+ * Defaults apparently come in many forms. Listed below in order of scope
+ * (widest to narrowest)
+ * 1) The ISO code itself, in the absense of any other defaults
+ * 2) The 'root' language file definition
+ * 3) Language with no locality - locality will come in as 'DEFAULT'
+ *
+ * Intended behavior:
+ * From narrowest scope to widest, collapse the defaults
+ */
+ foreach ( $data['currencySymbols'] as $currency => $language ) {
+ // get the currency default symbol. This will either be defined in the
+ // 'root' language file, or taken from the ISO code.
+ $default = $currency;
+ if ( array_key_exists( 'root', $language ) ) {
+ $default = $language['root']['DEFAULT'];
+ }
+
+ foreach ( $language as $lang => $territories ) {
+ // Collapse a language (no locality) array if it's just the default. One value will do fine.
+ if ( is_array( $territories ) ) {
+ if ( count( $territories ) === 1 && array_key_exists( 'DEFAULT', $territories ) ) {
+ $data['currencySymbols'][$currency][$lang] = $territories['DEFAULT'];
+ if ( $territories['DEFAULT'] == $default && $lang != 'root' ) {
+ unset( $data['currencySymbols'][$currency][$lang] );
+ }
+ } else {
+ ksort( $data['currencySymbols'][$currency][$lang] );
+ }
+ }
+ }
+
+ ksort( $data['currencySymbols'][$currency] );
+ }
+
+ ksort( $data['currencySymbols'] );
+
+ $this->savephp( $data, $outputFile );
+ }
+
+ /**
+ * savephp will build and return a string containing properly formatted php
+ * output of all the vars we've just parsed out of the xml.
+ * @param array $data The variable names and values we want defined in the php output
+ * @param string $location File location to write
+ */
+ function savephp( $data, $location ) {
+ $hasData = false;
+ foreach ( $data as $v ) {
+ if ( count( $v ) ) {
+ $hasData = true;
+ break;
+ }
+ }
+
+ if ( !$hasData ) {
+ return;
+ }
+
+ // Yes, I am aware I could have simply used var_export.
+ // ...the spacing was ugly.
+ $output = "<?php\n";
+ foreach ( $data as $varname => $values ) {
+ if ( !count( $values ) ) {
+ // Don't output empty arrays
+ continue;
+ }
+ $output .= "\n\$$varname = array(\n";
+ foreach ( $values as $key => $value ) {
+ if ( is_array( $value ) ) {
+ $output .= $this->makePrettyArrayOuts( $key, $value, 1 );
+ } else {
+ $key = addcslashes( $key, "'" );
+ $value = addcslashes( $value, "'" );
+ if ( !is_numeric( $key ) ) {
+ $key = "'$key'";
+ }
+ $output .= "\t$key => '$value',\n";
+ }
+ }
+ $output .= ");\n";
+ }
+
+ file_put_contents( $location, $output );
+ }
+
+ /**
+ * It makes pretty array vals. Dur.
+ * @param string $key
+ * @param array $value
+ * @param int $level
+ * @return string
+ */
+ function makePrettyArrayOuts( $key, $value, $level = 1 ) {
+ $tabs = str_repeat( "\t", $level );
+
+ $key = addcslashes( $key, "'" );
+ if ( !is_numeric( $key ) ) {
+ $key = "'$key'";
+ }
+
+ $subKeys = '';
+ foreach ( $value as $subkey => $subvalue ) {
+ if ( is_array( $subvalue ) ) {
+ $subKeys .= $this->makePrettyArrayOuts( $subkey, $subvalue, $level + 1 );
+ } else {
+ $subkey = addcslashes( $subkey, "'" );
+ $subvalue = addcslashes( $subvalue, "'" );
+ if ( !is_numeric( $subkey ) ) {
+ $subkey = "'$subkey'";
+ }
+ $subKeys .= "$tabs\t$subkey => '$subvalue',\n";
+ }
+ }
+
+ if ( $subKeys === '' ) {
+ $ret = '';
+ } else {
+ $ret = "$tabs$key => array(\n$subKeys$tabs),\n";
+ }
+
+ return $ret;
+ }
+}
+
+/**
+ * Get the code for the MediaWiki localisation,
+ * these are same as the fallback.
+ *
+ * @param $code string
+ * @return string
+ */
+function getRealCode( $code ) {
+ $realCode = $code;
+ if ( !strcmp( $code, 'kk' ) )
+ $realCode = 'kk-cyrl';
+ elseif ( !strcmp( $code, 'ku' ) )
+ $realCode = 'ku-arab';
+ elseif ( !strcmp( $code, 'sr' ) )
+ $realCode = 'sr-ec';
+ elseif ( !strcmp( $code, 'tg' ) )
+ $realCode = 'tg-cyrl';
+ elseif ( !strcmp( $code, 'zh' ) )
+ $realCode = 'zh-hans';
+ elseif ( !strcmp( $code, 'pt' ) )
+ $realCode = 'pt-br';
+ elseif ( !strcmp( $code, 'pt-pt' ) )
+ $realCode = 'pt';
+
+ return $realCode;
+}
+
+$maintClass = 'CLDRRebuild';
+require_once RUN_MAINTENANCE_IF_MAIN;
diff --git a/MLEB/cldr/tests/TimeUnitsTest.php b/MLEB/cldr/tests/TimeUnitsTest.php
new file mode 100644
index 00000000..f5d1add3
--- /dev/null
+++ b/MLEB/cldr/tests/TimeUnitsTest.php
@@ -0,0 +1,158 @@
+<?php
+/**
+ * Tests for TimeUnits
+ * @author Santhosh Thottingal
+ * @copyright Copyright © 2007-2013
+ * @license http://www.gnu.org/copyleft/gpl.html GNU General Public License 2.0 or later
+ */
+class TimeUnitsTest extends MediaWikiTestCase {
+
+ /** @dataProvider providerTimeUnit */
+ function testTimeUnit(
+ $language,
+ $tsTime, // The timestamp to format
+ $currentTime, // The time to consider "now"
+ $expectedOutput, // The expected output
+ $desc // Description
+ ) {
+ $tsTime = new MWTimestamp( $tsTime );
+ $currentTime = new MWTimestamp( $currentTime );
+ $this->assertEquals(
+ $expectedOutput,
+ $tsTime->getHumanTimestamp( $currentTime, null, Language::factory( $language ) ),
+ $desc
+ );
+ }
+
+ public static function providerTimeUnit() {
+ return array(
+ array(
+ 'en',
+ '20111231170000',
+ '20120101000000',
+ '7 hours ago',
+ '"Yesterday" across years',
+ ),
+ array(
+ 'en',
+ '20120717190900',
+ '20120717190929',
+ '29 seconds ago',
+ '"Just now"',
+ ),
+ array(
+ 'en',
+ '20120717190900',
+ '20120717191530',
+ '6 minutes ago',
+ 'X minutes ago',
+ ),
+ array(
+ 'en',
+ '20121006173100',
+ '20121006173200',
+ '1 minute ago',
+ '"1 minute ago"',
+ ),
+ array(
+ 'en',
+ '20120617190900',
+ '20120717190900',
+ '1 month ago',
+ 'Month difference'
+ ),
+ array(
+ 'en',
+ '19910130151500',
+ '20120716193700',
+ '21 years ago',
+ 'Different year',
+ ),
+ array(
+ 'en',
+ '20120714184300',
+ '20120715040000',
+ '9 hours ago',
+ 'Today at another time',
+ ),
+ array(
+ 'en',
+ '20120617190900',
+ '20120717190900',
+ '1 month ago',
+ 'Another month'
+ ),
+ array(
+ 'en',
+ '19910130151500',
+ '20120716193700',
+ '21 years ago',
+ 'Different year',
+ ),
+ array(
+ 'ml',
+ '20111231170000',
+ '20120101000000',
+ '7 മണിക്കൂർ മുമ്പ്',
+ '"Yesterday" across years',
+ ),
+ array(
+ 'ml',
+ '20120717190900',
+ '20120717190929',
+ '29 സെക്കൻഡ് മുമ്പ്',
+ '"Just now"',
+ ),
+ array(
+ 'ml',
+ '20120717190900',
+ '20120717191530',
+ '6 മിനിറ്റ് മുമ്പ്',
+ 'X minutes ago',
+ ),
+ array(
+ 'ml',
+ '20121006173100',
+ '20121006173200',
+ '1 മിനിറ്റ് മുമ്പ്',
+ '"1 minute ago"',
+ ),
+ array(
+ 'ml',
+ '20120617190900',
+ '20120717190900',
+ '1 മാസം മുമ്പ്',
+ 'Month difference'
+ ),
+ array(
+ 'ml',
+ '19910130151500',
+ '20120716193700',
+ '21 വർഷം മുമ്പ്',
+ 'Different year',
+ ),
+ array(
+ 'ml',
+ '20120714184300',
+ '20120715040000',
+ '9 മണിക്കൂർ മുമ്പ്',
+ 'Today at another time',
+ ),
+ array(
+ 'ml',
+ '20120617190900',
+ '20120717190900',
+ '1 മാസം മുമ്പ്',
+ 'Another month'
+ ),
+ array(
+ 'ml',
+ '19910130151500',
+ '20120716193700',
+ '21 വർഷം മുമ്പ്',
+ 'Different year',
+ ),
+ );
+ }
+}
+